From 1feed59d0efd8deaa21a71cfafbe813e7b61356c Mon Sep 17 00:00:00 2001 From: wz84888 Date: Fri, 4 Mar 2022 19:48:01 +0800 Subject: [PATCH 001/122] feat: add transition condition --- packages/core/src/animation/Animator.ts | 75 ++++++++++++++++++- .../core/src/animation/AnimatorController.ts | 69 +++++++++++++++++ .../core/src/animation/AnimatorTransition.ts | 53 +++++++++++++ packages/math/package.json | 5 +- 4 files changed, 194 insertions(+), 8 deletions(-) diff --git a/packages/core/src/animation/Animator.ts b/packages/core/src/animation/Animator.ts index d85700ba56..51f1137893 100644 --- a/packages/core/src/animation/Animator.ts +++ b/packages/core/src/animation/Animator.ts @@ -23,6 +23,8 @@ import { AnimatorStateInfo } from "./internal/AnimatorStateInfo"; import { AnimatorStatePlayData } from "./internal/AnimatorStatePlayData"; import { CrossCurveData } from "./internal/CrossCurveData"; import { InterpolableValue, UnionInterpolableKeyframe } from "./KeyFrame"; +import { AnimatorCondition } from "./AnimatorCondition"; +import { AnimatorConditionMode } from "./enums/AnimatorConditionMode"; /** * The controller of the animation system. @@ -433,7 +435,7 @@ export class Animator extends Component { const { srcPlayData, destPlayData, crossFadeTransition: crossFadeTransitionInfo } = animLayerData; const layerAdditive = blendingMode === AnimatorLayerBlendingMode.Additive; const layerWeight = firstLayer ? 1.0 : weight; - this._checkTransition(srcPlayData, crossFadeTransitionInfo, layerIndex); + this._checkTransitions(srcPlayData, crossFadeTransitionInfo, layerIndex); switch (animLayerData.layerState) { case LayerState.Playing: this._updatePlayingState(srcPlayData, animLayerData, layerIndex, layerWeight, deltaTime, layerAdditive); @@ -774,7 +776,7 @@ export class Animator extends Component { } } - private _checkTransition( + private _checkTransitions( stateData: AnimatorStatePlayData, crossFadeTransition: AnimatorStateTransition, layerIndex: number @@ -782,12 +784,77 @@ export class Animator extends Component { const { state, clipTime } = stateData; const duration = state._getDuration(); const { transitions } = state; + + let runTransition: AnimatorStateTransition; + let hasSolo: boolean; for (let i = 0, n = transitions.length; i < n; ++i) { const transition = transitions[i]; - if (duration * transition.exitTime <= clipTime) { - crossFadeTransition !== transition && this._crossFadeByTransition(transition, layerIndex); + const { mute, conditions, solo } = transition; + if (solo) { + hasSolo = true; + runTransition = null; + } + if ( + !mute && + (solo || !hasSolo) && + duration * transition.exitTime <= clipTime && + this._checkConditions(conditions) + ) { + if (crossFadeTransition !== transition) { + runTransition = transition; + if (solo) { + break; + } + } + } + } + runTransition && this._crossFadeByTransition(runTransition, layerIndex); + } + + private _checkConditions(conditions: Readonly) { + let allPass = true; + for (let i = 0, n = conditions.length; i < n; ++i) { + let pass = false; + const { mode, parameter: name, threshold } = conditions[i]; + const parameter = this._animatorController.getParameter(name); + switch (mode) { + case AnimatorConditionMode.Equals: + if (parameter.value === threshold) { + pass = true; + } + break; + case AnimatorConditionMode.Greater: + if (parameter.value > threshold) { + pass = true; + } + break; + case AnimatorConditionMode.Less: + if (parameter.value < threshold) { + pass = true; + } + break; + case AnimatorConditionMode.NotEquals: + if (parameter.value !== threshold) { + pass = true; + } + break; + case AnimatorConditionMode.If: + if (parameter.value === true) { + pass = true; + } + break; + case AnimatorConditionMode.IfNot: + if (parameter.value === false) { + pass = true; + } + break; + } + if (!pass) { + allPass = false; + break; } } + return allPass; } private _crossFadeByTransition(transition: AnimatorStateTransition, layerIndex: number): void { diff --git a/packages/core/src/animation/AnimatorController.ts b/packages/core/src/animation/AnimatorController.ts index b4a0a40a3c..eb93d93eaf 100644 --- a/packages/core/src/animation/AnimatorController.ts +++ b/packages/core/src/animation/AnimatorController.ts @@ -1,3 +1,4 @@ +import { AnimatorControllerParameter, AnimatorControllerParameterValue } from './AnimatorControllerParameter'; import { UpdateFlag } from "../UpdateFlag"; import { UpdateFlagManager } from "../UpdateFlagManager"; import { AnimatorControllerLayer } from "./AnimatorControllerLayer"; @@ -9,6 +10,8 @@ export class AnimatorController { private _updateFlagManager: UpdateFlagManager = new UpdateFlagManager(); private _layers: AnimatorControllerLayer[] = []; private _layersMap: Record = {}; + private _parameters : AnimatorControllerParameter[] = []; + private _parametersMap : Record = {}; /** * The layers in the controller. @@ -17,6 +20,72 @@ export class AnimatorController { return this._layers; } + /** + * The parameters in the controller. + */ + get parameters(): Readonly { + return this._parameters; + } + + /** + * Add a parameter to the controller. + * @param name - The name of the parameter + * @param defaultValue - The defaultValue of the parameter + */ + addParameter(name: string, defaultValue?: AnimatorControllerParameterValue): AnimatorControllerParameter; + + /** + * Add a parameter to the controller. + * @param parameter - The parameter + */ + addParameter(parameter: AnimatorControllerParameter): AnimatorControllerParameter; + + addParameter(param: AnimatorControllerParameter | string, defaultValue?: AnimatorControllerParameterValue) { + if (typeof param === 'string') { + const parameter = new AnimatorControllerParameter(); + parameter.name = param; + parameter.value = defaultValue; + this._parametersMap[param] = parameter; + this._parameters.push(parameter); + return parameter; + } else { + this._parametersMap[param.name] = param; + this._parameters.push(param); + return param; + } + } + + /** + * Remove a parameter from the controller. + * @param parameter - The parameter + */ + removeParameter(parameter: AnimatorControllerParameter) { + const index = this._parameters.indexOf(parameter); + if (index !== -1) { + this._parameters.splice(index, 1); + delete this._parametersMap[parameter.name] + } + } + + /** + * Get the parameter by name. + * @param name - The name of the parameter + */ + getParameter(name: string): AnimatorControllerParameter { + return this._parametersMap[name] || null; + } + + /** + * Set the value of the given parameter. + * @param name - The name of the parameter + */ + setParameter(name: string, value: AnimatorControllerParameterValue) { + const parameter = this._parametersMap[name]; + if (parameter) { + parameter.value = value; + } + } + /** * Get the layer by name. * @param name - The layer's name. diff --git a/packages/core/src/animation/AnimatorTransition.ts b/packages/core/src/animation/AnimatorTransition.ts index 9c6aede836..8b17f22ae2 100644 --- a/packages/core/src/animation/AnimatorTransition.ts +++ b/packages/core/src/animation/AnimatorTransition.ts @@ -1,3 +1,6 @@ +import { AnimatorControllerParameterValue } from './AnimatorControllerParameter'; +import { AnimatorConditionMode } from './enums/AnimatorConditionMode'; +import { AnimatorCondition } from './AnimatorCondition'; import { AnimatorState } from "./AnimatorState"; /** @@ -12,4 +15,54 @@ export class AnimatorStateTransition { exitTime: number = 1; /** The destination state of the transition. */ destinationState: AnimatorState; + /** Mutes the transition. The transition will never occur. */ + mute: boolean = false; + /** Mutes all other transitions in the source state. */ + solo: boolean = false; + + private _conditions: AnimatorCondition[] = []; + + /** + * The conditions in the transition. + */ + get conditions(): Readonly { + return this._conditions; + } + + /** + * Add a condition to a transition. + * @param mode - The AnimatorCondition mode of the condition + * @param parameter - The name of the parameter + * @param threshold - The threshold value of the condition + */ + addCondition(mode: AnimatorConditionMode, parameter: string, threshold?: AnimatorControllerParameterValue): AnimatorCondition; + + /** + * Add a condition to a transition. + * @param animatorCondition - The condition to add + */ + addCondition(animatorCondition: AnimatorCondition): AnimatorCondition; + + addCondition(param: AnimatorConditionMode | AnimatorCondition, parameter?: string, threshold?: AnimatorControllerParameterValue) { + if (typeof param === 'object') { + this._conditions.push(param); + return param; + } else { + const condition = new AnimatorCondition(); + condition.mode = param; + condition.parameter = parameter; + condition.threshold = threshold; + this._conditions.push(condition); + return condition; + } + } + + /** + * Remove a condition from the transition. + * @param condition - The condition to remove + */ + removeCondition(condition: AnimatorCondition) { + const index = this._conditions.indexOf(condition); + index !== -1 && this._conditions.splice(index, 1); + } } diff --git a/packages/math/package.json b/packages/math/package.json index 9ac1dc026b..e0652964be 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -13,8 +13,5 @@ "files": [ "dist/**/*", "types/**/*" - ], - "devDependencies": { - "@oasis-engine/design": "0.6.7" - } + ] } From 1c77e2cd0d769765f2affaa04afd848096620a22 Mon Sep 17 00:00:00 2001 From: wz84888 Date: Fri, 4 Mar 2022 19:48:10 +0800 Subject: [PATCH 002/122] feat: add transition condition --- packages/core/src/animation/AnimatorCondition.ts | 14 ++++++++++++++ .../src/animation/AnimatorControllerParameter.ts | 11 +++++++++++ 2 files changed, 25 insertions(+) create mode 100644 packages/core/src/animation/AnimatorCondition.ts create mode 100644 packages/core/src/animation/AnimatorControllerParameter.ts diff --git a/packages/core/src/animation/AnimatorCondition.ts b/packages/core/src/animation/AnimatorCondition.ts new file mode 100644 index 0000000000..650f51bd90 --- /dev/null +++ b/packages/core/src/animation/AnimatorCondition.ts @@ -0,0 +1,14 @@ +import { AnimatorControllerParameterValue } from './AnimatorControllerParameter'; +import { AnimatorConditionMode } from './enums/AnimatorConditionMode'; + +/** + * Condition that is used to determine if a transition must be taken. + */ +export class AnimatorCondition { + /** The mode of the condition. */ + mode: AnimatorConditionMode; + /** The name of the parameter used in the condition. */ + parameter: string; + /** The AnimatorParameter's threshold value for the condition to be true. */ + threshold: AnimatorControllerParameterValue; +} diff --git a/packages/core/src/animation/AnimatorControllerParameter.ts b/packages/core/src/animation/AnimatorControllerParameter.ts new file mode 100644 index 0000000000..b26fb74246 --- /dev/null +++ b/packages/core/src/animation/AnimatorControllerParameter.ts @@ -0,0 +1,11 @@ +export type AnimatorControllerParameterValue = number | boolean; + +/** + * Used to communicate between scripting and the controller, parameters can be set in scripting and used by the controller. + */ +export class AnimatorControllerParameter { + /** The name of the parameter. */ + name: string; + /** The value of the parameter. */ + value: AnimatorControllerParameterValue; +} From c49b5769745242d7f9a55136a5284bae70c282d1 Mon Sep 17 00:00:00 2001 From: ChenMo Date: Tue, 2 Aug 2022 13:54:34 +0800 Subject: [PATCH 003/122] Fix `AmbientLight` share bug (#910) * fix: ambientLight share bug --- packages/core/src/Scene.ts | 4 +- packages/core/src/lighting/AmbientLight.ts | 115 +++++++++++++-------- 2 files changed, 73 insertions(+), 46 deletions(-) diff --git a/packages/core/src/Scene.ts b/packages/core/src/Scene.ts index 6904c69311..62b8a3dd75 100644 --- a/packages/core/src/Scene.ts +++ b/packages/core/src/Scene.ts @@ -51,8 +51,8 @@ export class Scene extends EngineObject { const lastAmbientLight = this._ambientLight; if (lastAmbientLight !== value) { - lastAmbientLight && lastAmbientLight._setScene(null); - value._setScene(this); + lastAmbientLight && lastAmbientLight._removeFromScene(this); + value._addToScene(this); this._ambientLight = value; } } diff --git a/packages/core/src/lighting/AmbientLight.ts b/packages/core/src/lighting/AmbientLight.ts index d6ab55236a..5dbcb7aa3c 100644 --- a/packages/core/src/lighting/AmbientLight.ts +++ b/packages/core/src/lighting/AmbientLight.ts @@ -1,6 +1,6 @@ import { Color, SphericalHarmonics3 } from "@oasis-engine/math"; import { Scene } from "../Scene"; -import { Shader } from "../shader"; +import { Shader, ShaderData } from "../shader"; import { ShaderMacro } from "../shader/ShaderMacro"; import { ShaderProperty } from "../shader/ShaderProperty"; import { TextureCube } from "../texture"; @@ -26,11 +26,11 @@ export class AmbientLight { private _diffuseSphericalHarmonics: SphericalHarmonics3; private _diffuseSolidColor: Color = new Color(0.212, 0.227, 0.259); private _diffuseIntensity: number = 1.0; - private _specularReflection: TextureCube; + private _specularTexture: TextureCube; private _specularIntensity: number = 1.0; private _diffuseMode: DiffuseMode = DiffuseMode.SolidColor; private _shArray: Float32Array = new Float32Array(27); - private _scene: Scene; + private _scenes: Scene[] = []; private _specularTextureDecodeRGBM: boolean = false; /** @@ -42,12 +42,10 @@ export class AmbientLight { set specularTextureDecodeRGBM(value: boolean) { this._specularTextureDecodeRGBM = value; - if (!this._scene) return; - if (value) { - this._scene.shaderData.enableMacro(AmbientLight._decodeRGBMMacro); - } else { - this._scene.shaderData.disableMacro(AmbientLight._decodeRGBMMacro); + const scenes = this._scenes; + for (let i = 0, n = scenes.length; i < n; i++) { + this._setSpecularTextureDecodeRGBM(scenes[i].shaderData); } } @@ -60,12 +58,10 @@ export class AmbientLight { set diffuseMode(value: DiffuseMode) { this._diffuseMode = value; - if (!this._scene) return; - if (value === DiffuseMode.SphericalHarmonics) { - this._scene.shaderData.enableMacro(AmbientLight._shMacro); - } else { - this._scene.shaderData.disableMacro(AmbientLight._shMacro); + const scenes = this._scenes; + for (let i = 0, n = scenes.length; i < n; i++) { + this._setDiffuseMode(scenes[i].shaderData); } } @@ -93,10 +89,12 @@ export class AmbientLight { set diffuseSphericalHarmonics(value: SphericalHarmonics3) { this._diffuseSphericalHarmonics = value; - if (!this._scene) return; - if (value) { - this._scene.shaderData.setFloatArray(AmbientLight._diffuseSHProperty, this._preComputeSH(value, this._shArray)); + this._preComputeSH(value, this._shArray); + const scenes = this._scenes; + for (let i = 0, n = scenes.length; i < n; i++) { + scenes[i].shaderData.setFloatArray(AmbientLight._diffuseSHProperty, this._shArray); + } } } @@ -109,9 +107,11 @@ export class AmbientLight { set diffuseIntensity(value: number) { this._diffuseIntensity = value; - if (!this._scene) return; - this._scene.shaderData.setFloat(AmbientLight._diffuseIntensityProperty, value); + const scenes = this._scenes; + for (let i = 0, n = scenes.length; i < n; i++) { + scenes[i].shaderData.setFloat(AmbientLight._diffuseIntensityProperty, value); + } } /** @@ -119,21 +119,15 @@ export class AmbientLight { * @remarks This texture must be baked from @oasis-engine/baker */ get specularTexture(): TextureCube { - return this._specularReflection; + return this._specularTexture; } set specularTexture(value: TextureCube) { - this._specularReflection = value; - if (!this._scene) return; - - const shaderData = this._scene.shaderData; + this._specularTexture = value; - if (value) { - shaderData.setTexture(AmbientLight._specularTextureProperty, value); - shaderData.setFloat(AmbientLight._mipLevelProperty, this._specularReflection.mipmapCount - 1); - shaderData.enableMacro(AmbientLight._specularMacro); - } else { - shaderData.disableMacro(AmbientLight._specularMacro); + const scenes = this._scenes; + for (let i = 0, n = scenes.length; i < n; i++) { + this._setSpecularTexture(scenes[i].shaderData); } } @@ -146,30 +140,65 @@ export class AmbientLight { set specularIntensity(value: number) { this._specularIntensity = value; - if (!this._scene) return; - this._scene.shaderData.setFloat(AmbientLight._specularIntensityProperty, value); + for (let i = 0, n = this._scenes.length; i < n; i++) { + this._scenes[i].shaderData.setFloat(AmbientLight._specularIntensityProperty, value); + } } /** * @internal */ - _setScene(value: Scene) { - this._scene = value; - if (!value) return; + _addToScene(scene: Scene): void { + this._scenes.push(scene); - const { shaderData } = value; + const shaderData = scene.shaderData; shaderData.setColor(AmbientLight._diffuseColorProperty, this._diffuseSolidColor); + shaderData.setFloat(AmbientLight._diffuseIntensityProperty, this._diffuseIntensity); + shaderData.setFloat(AmbientLight._specularIntensityProperty, this._specularIntensity); + shaderData.setFloatArray(AmbientLight._diffuseSHProperty, this._shArray); + + this._setDiffuseMode(shaderData); + this._setSpecularTextureDecodeRGBM(shaderData); + this._setSpecularTexture(shaderData); + } - this.diffuseMode = this._diffuseMode; - this.diffuseSphericalHarmonics = this._diffuseSphericalHarmonics; - this.diffuseIntensity = this._diffuseIntensity; - this.specularTexture = this._specularReflection; - this.specularIntensity = this._specularIntensity; - this.specularTextureDecodeRGBM = this._specularTextureDecodeRGBM; + /** + * @internal + */ + _removeFromScene(scene: Scene): void { + const scenes = this._scenes; + const index = scenes.indexOf(scene); + scenes.splice(index, 1); } - private _preComputeSH(sh: SphericalHarmonics3, out: Float32Array): Float32Array { + private _setDiffuseMode(sceneShaderData: ShaderData): void { + if (this._diffuseMode === DiffuseMode.SphericalHarmonics) { + sceneShaderData.enableMacro(AmbientLight._shMacro); + } else { + sceneShaderData.disableMacro(AmbientLight._shMacro); + } + } + + private _setSpecularTexture(sceneShaderData: ShaderData): void { + if (this._specularTexture) { + sceneShaderData.setTexture(AmbientLight._specularTextureProperty, this._specularTexture); + sceneShaderData.setFloat(AmbientLight._mipLevelProperty, this._specularTexture.mipmapCount - 1); + sceneShaderData.enableMacro(AmbientLight._specularMacro); + } else { + sceneShaderData.disableMacro(AmbientLight._specularMacro); + } + } + + private _setSpecularTextureDecodeRGBM(sceneShaderData: ShaderData): void { + if (this._specularTextureDecodeRGBM) { + sceneShaderData.enableMacro(AmbientLight._decodeRGBMMacro); + } else { + sceneShaderData.disableMacro(AmbientLight._decodeRGBMMacro); + } + } + + private _preComputeSH(sh: SphericalHarmonics3, out: Float32Array): void { /** * Basis constants * @@ -228,7 +257,5 @@ export class AmbientLight { out[24] = src[24] * 0.429042; // kernel2 * basis8 = 0.429042 out[25] = src[25] * 0.429042; out[26] = src[26] * 0.429042; - - return out; } } From cbd271bb137ca41e7dc0aefa13b407216ce38316 Mon Sep 17 00:00:00 2001 From: zhuxudong Date: Tue, 2 Aug 2022 13:57:13 +0800 Subject: [PATCH 004/122] fix: miniprogram adapter (#913) --- .../loader/src/resource-deserialize/utils/BufferReader.ts | 5 ++--- .../loader/src/resource-deserialize/utils/FileHeader.ts | 6 +++--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/packages/loader/src/resource-deserialize/utils/BufferReader.ts b/packages/loader/src/resource-deserialize/utils/BufferReader.ts index 585057080d..4064afe1e2 100644 --- a/packages/loader/src/resource-deserialize/utils/BufferReader.ts +++ b/packages/loader/src/resource-deserialize/utils/BufferReader.ts @@ -1,3 +1,4 @@ +import { GLTFUtil } from "../../gltf/GLTFUtil"; import { ab2str } from "./Utils"; class ImageData { @@ -5,8 +6,6 @@ class ImageData { buffer: ArrayBuffer; } -const textDecode = new TextDecoder(); - export class BufferReader { private _dataView: DataView; private _littleEndian: boolean; @@ -96,7 +95,7 @@ export class BufferReader { const strByteLength = this.nextUint16(); const uint8Array = new Uint8Array(this.buffer, this._offset, strByteLength); this._offset += strByteLength; - return textDecode.decode(uint8Array); + return GLTFUtil.decodeText(uint8Array); } /** diff --git a/packages/loader/src/resource-deserialize/utils/FileHeader.ts b/packages/loader/src/resource-deserialize/utils/FileHeader.ts index ba535f87d1..94edeb3d79 100644 --- a/packages/loader/src/resource-deserialize/utils/FileHeader.ts +++ b/packages/loader/src/resource-deserialize/utils/FileHeader.ts @@ -1,4 +1,4 @@ -const textDecode = new TextDecoder(); +import { GLTFUtil } from "../../gltf/GLTFUtil"; export class FileHeader { totalLength: number = 0; @@ -16,8 +16,8 @@ export class FileHeader { const nameLen = dataView.getUint16(7 + typeLen, true); const nameUint8Array = new Uint8Array(arrayBuffer, 9 + typeLen, nameLen); - const name = textDecode.decode(nameUint8Array); - const type = textDecode.decode(typeUint8Array); + const name = GLTFUtil.decodeText(nameUint8Array); + const type = GLTFUtil.decodeText(typeUint8Array); const header = new FileHeader(); header.totalLength = totalLen; header.name = name; From 1c144ea78b3958a4a4dd6d6cd372542b51add7bd Mon Sep 17 00:00:00 2001 From: AZhan Date: Tue, 2 Aug 2022 15:16:47 +0800 Subject: [PATCH 005/122] fix: miniprogram cannot recognize htmlcanvaselement (#914) * fix: miniprogram cannot recognize htmlcanvaselement --- packages/core/src/input/InputManager.ts | 2 +- packages/rhi-webgl/src/WebCanvas.ts | 6 +++--- packages/rhi-webgl/src/WebGLRenderer.ts | 4 ++-- rollup.miniprogram.plugin.js | 3 ++- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/packages/core/src/input/InputManager.ts b/packages/core/src/input/InputManager.ts index 0a1268e32d..15491bc2d1 100644 --- a/packages/core/src/input/InputManager.ts +++ b/packages/core/src/input/InputManager.ts @@ -170,7 +170,7 @@ export class InputManager { constructor(engine: Engine) { // @ts-ignore const canvas = engine._canvas._webCanvas; - if (canvas instanceof HTMLCanvasElement) { + if (!(canvas instanceof OffscreenCanvas)) { this._wheelManager = new WheelManager(canvas); this._pointerManager = new PointerManager(engine, canvas); this._keyboardManager = new KeyboardManager(); diff --git a/packages/rhi-webgl/src/WebCanvas.ts b/packages/rhi-webgl/src/WebCanvas.ts index 01e545e12d..4d81966e09 100644 --- a/packages/rhi-webgl/src/WebCanvas.ts +++ b/packages/rhi-webgl/src/WebCanvas.ts @@ -47,7 +47,7 @@ export class WebCanvas implements Canvas { */ get scale(): Vector2 { const webCanvas = this._webCanvas; - if (webCanvas instanceof HTMLCanvasElement) { + if (!(webCanvas instanceof OffscreenCanvas)) { this._scale.set( (webCanvas.clientWidth * devicePixelRatio) / webCanvas.width, (webCanvas.clientHeight * devicePixelRatio) / webCanvas.height @@ -58,7 +58,7 @@ export class WebCanvas implements Canvas { set scale(value: Vector2) { const webCanvas = this._webCanvas; - if (webCanvas instanceof HTMLCanvasElement) { + if (!(webCanvas instanceof OffscreenCanvas)) { webCanvas.style.transformOrigin = `left top`; webCanvas.style.transform = `scale(${value.x}, ${value.y})`; } @@ -70,7 +70,7 @@ export class WebCanvas implements Canvas { */ resizeByClientSize(pixelRatio: number = window.devicePixelRatio): void { const webCanvas = this._webCanvas; - if (webCanvas instanceof HTMLCanvasElement) { + if (!(webCanvas instanceof OffscreenCanvas)) { this.width = webCanvas.clientWidth * pixelRatio; this.height = webCanvas.clientHeight * pixelRatio; } diff --git a/packages/rhi-webgl/src/WebGLRenderer.ts b/packages/rhi-webgl/src/WebGLRenderer.ts index b6ce70250e..70ab081d9e 100644 --- a/packages/rhi-webgl/src/WebGLRenderer.ts +++ b/packages/rhi-webgl/src/WebGLRenderer.ts @@ -114,7 +114,7 @@ export class WebGLRenderer implements IHardwareRenderer { if (webGLMode == WebGLMode.Auto || webGLMode == WebGLMode.WebGL2) { gl = webCanvas.getContext("webgl2", option); - if (!gl && webCanvas instanceof HTMLCanvasElement) { + if (!gl && !(webCanvas instanceof OffscreenCanvas)) { gl = webCanvas.getContext("experimental-webgl2", option); } this._isWebGL2 = true; @@ -128,7 +128,7 @@ export class WebGLRenderer implements IHardwareRenderer { if (!gl) { if (webGLMode == WebGLMode.Auto || webGLMode == WebGLMode.WebGL1) { gl = webCanvas.getContext("webgl", option); - if (!gl && webCanvas instanceof HTMLCanvasElement) { + if (!gl && !(webCanvas instanceof OffscreenCanvas)) { gl = webCanvas.getContext("experimental-webgl", option); } this._isWebGL2 = false; diff --git a/rollup.miniprogram.plugin.js b/rollup.miniprogram.plugin.js index 92cdf8e478..009fb45384 100644 --- a/rollup.miniprogram.plugin.js +++ b/rollup.miniprogram.plugin.js @@ -35,7 +35,8 @@ const adapterArray = [ "WebGLRenderingContext", "WebGL2RenderingContext", "ImageData", - "location" + "location", + "OffscreenCanvas" ]; const adapterVars = {}; From 3f83b69da56a129f1c9d1b5cfd84acbdcbc63ccd Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Tue, 2 Aug 2022 15:31:36 +0800 Subject: [PATCH 006/122] v0.8.0-beta.3 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 6 +++--- packages/physics-physx/package.json | 6 +++--- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lerna.json b/lerna.json index c9d7d78034..3f26d80da2 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.2", + "version": "0.8.0-beta.3", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index af82c731e9..f9a8a2fb42 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.2", + "version": "0.8.0-beta.3", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.2" + "@oasis-engine/math": "0.8.0-beta.3" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.2" + "@oasis-engine/design": "0.8.0-beta.3" } } diff --git a/packages/design/package.json b/packages/design/package.json index c4a043e626..4181fa8315 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.2", + "version": "0.8.0-beta.3", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.2" + "@oasis-engine/math": "0.8.0-beta.3" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index d5ef397c37..87a9294b6f 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.2", + "version": "0.8.0-beta.3", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.2" + "@oasis-engine/core": "0.8.0-beta.3" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index cbf8c61e0e..23c0f8c16c 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.2", + "version": "0.8.0-beta.3", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.2", - "@oasis-engine/draco": "0.8.0-beta.2", - "@oasis-engine/math": "0.8.0-beta.2", - "@oasis-engine/rhi-webgl": "0.8.0-beta.2" + "@oasis-engine/core": "0.8.0-beta.3", + "@oasis-engine/draco": "0.8.0-beta.3", + "@oasis-engine/math": "0.8.0-beta.3", + "@oasis-engine/rhi-webgl": "0.8.0-beta.3" } } diff --git a/packages/math/package.json b/packages/math/package.json index 36cde2b8dd..4dfbf07c32 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.2", + "version": "0.8.0-beta.3", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index 14c8caa32f..188657989e 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.2", + "version": "0.8.0-beta.3", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.2", - "@oasis-engine/loader": "0.8.0-beta.2", - "@oasis-engine/math": "0.8.0-beta.2", - "@oasis-engine/rhi-webgl": "0.8.0-beta.2" + "@oasis-engine/core": "0.8.0-beta.3", + "@oasis-engine/loader": "0.8.0-beta.3", + "@oasis-engine/math": "0.8.0-beta.3", + "@oasis-engine/rhi-webgl": "0.8.0-beta.3" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 69ef8bd2c9..08178e7dd3 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.2", + "version": "0.8.0-beta.3", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,7 +19,7 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/design": "0.8.0-beta.2", - "oasis-engine": "0.8.0-beta.2" + "@oasis-engine/design": "0.8.0-beta.3", + "oasis-engine": "0.8.0-beta.3" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index ab271c4850..62367c3ded 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.2", + "version": "0.8.0-beta.3", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,7 +20,7 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/design": "0.8.0-beta.2", - "oasis-engine": "0.8.0-beta.2" + "@oasis-engine/design": "0.8.0-beta.3", + "oasis-engine": "0.8.0-beta.3" } } diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index be34cb6e89..5ae037bd41 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.2", + "version": "0.8.0-beta.3", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.2", - "@oasis-engine/math": "0.8.0-beta.2" + "@oasis-engine/core": "0.8.0-beta.3", + "@oasis-engine/math": "0.8.0-beta.3" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.2" + "@oasis-engine/design": "0.8.0-beta.3" } } diff --git a/tests/package.json b/tests/package.json index f3e88c9007..a452ca82b3 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.2", + "version": "0.8.0-beta.3", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.2", - "@oasis-engine/design": "0.8.0-beta.2", - "@oasis-engine/math": "0.8.0-beta.2", - "@oasis-engine/rhi-webgl": "0.8.0-beta.2" + "@oasis-engine/core": "0.8.0-beta.3", + "@oasis-engine/design": "0.8.0-beta.3", + "@oasis-engine/math": "0.8.0-beta.3", + "@oasis-engine/rhi-webgl": "0.8.0-beta.3" } } From 5003e7533a460ef93595b56c266659cf29b78884 Mon Sep 17 00:00:00 2001 From: AZhan Date: Tue, 2 Aug 2022 18:05:13 +0800 Subject: [PATCH 007/122] fix: miniprogram cannot recognize htmlcanvaselement (#915) --- packages/core/src/input/InputManager.ts | 2 +- packages/physics-lite/package.json | 2 +- packages/physics-physx/package.json | 2 +- packages/rhi-webgl/src/WebCanvas.ts | 6 +++--- packages/rhi-webgl/src/WebGLRenderer.ts | 4 ++-- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/core/src/input/InputManager.ts b/packages/core/src/input/InputManager.ts index 15491bc2d1..d7b72d0873 100644 --- a/packages/core/src/input/InputManager.ts +++ b/packages/core/src/input/InputManager.ts @@ -170,7 +170,7 @@ export class InputManager { constructor(engine: Engine) { // @ts-ignore const canvas = engine._canvas._webCanvas; - if (!(canvas instanceof OffscreenCanvas)) { + if (typeof OffscreenCanvas === "undefined" || !(canvas instanceof OffscreenCanvas)) { this._wheelManager = new WheelManager(canvas); this._pointerManager = new PointerManager(engine, canvas); this._keyboardManager = new KeyboardManager(); diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 08178e7dd3..6fbf5ccf90 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -18,7 +18,7 @@ "dist/**/*", "types/**/*" ], - "dependencies": { + "peerDependencies": { "@oasis-engine/design": "0.8.0-beta.3", "oasis-engine": "0.8.0-beta.3" } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index 62367c3ded..2dfc91e854 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -19,7 +19,7 @@ "libs/**/*", "types/**/*" ], - "dependencies": { + "peerDependencies": { "@oasis-engine/design": "0.8.0-beta.3", "oasis-engine": "0.8.0-beta.3" } diff --git a/packages/rhi-webgl/src/WebCanvas.ts b/packages/rhi-webgl/src/WebCanvas.ts index 4d81966e09..9cc2fabc03 100644 --- a/packages/rhi-webgl/src/WebCanvas.ts +++ b/packages/rhi-webgl/src/WebCanvas.ts @@ -47,7 +47,7 @@ export class WebCanvas implements Canvas { */ get scale(): Vector2 { const webCanvas = this._webCanvas; - if (!(webCanvas instanceof OffscreenCanvas)) { + if (typeof OffscreenCanvas === "undefined" || !(webCanvas instanceof OffscreenCanvas)) { this._scale.set( (webCanvas.clientWidth * devicePixelRatio) / webCanvas.width, (webCanvas.clientHeight * devicePixelRatio) / webCanvas.height @@ -58,7 +58,7 @@ export class WebCanvas implements Canvas { set scale(value: Vector2) { const webCanvas = this._webCanvas; - if (!(webCanvas instanceof OffscreenCanvas)) { + if (typeof OffscreenCanvas === "undefined" || !(webCanvas instanceof OffscreenCanvas)) { webCanvas.style.transformOrigin = `left top`; webCanvas.style.transform = `scale(${value.x}, ${value.y})`; } @@ -70,7 +70,7 @@ export class WebCanvas implements Canvas { */ resizeByClientSize(pixelRatio: number = window.devicePixelRatio): void { const webCanvas = this._webCanvas; - if (!(webCanvas instanceof OffscreenCanvas)) { + if (typeof OffscreenCanvas === "undefined" || !(webCanvas instanceof OffscreenCanvas)) { this.width = webCanvas.clientWidth * pixelRatio; this.height = webCanvas.clientHeight * pixelRatio; } diff --git a/packages/rhi-webgl/src/WebGLRenderer.ts b/packages/rhi-webgl/src/WebGLRenderer.ts index 70ab081d9e..afb03bad8f 100644 --- a/packages/rhi-webgl/src/WebGLRenderer.ts +++ b/packages/rhi-webgl/src/WebGLRenderer.ts @@ -114,7 +114,7 @@ export class WebGLRenderer implements IHardwareRenderer { if (webGLMode == WebGLMode.Auto || webGLMode == WebGLMode.WebGL2) { gl = webCanvas.getContext("webgl2", option); - if (!gl && !(webCanvas instanceof OffscreenCanvas)) { + if (!gl && (typeof OffscreenCanvas === "undefined" || !(webCanvas instanceof OffscreenCanvas))) { gl = webCanvas.getContext("experimental-webgl2", option); } this._isWebGL2 = true; @@ -128,7 +128,7 @@ export class WebGLRenderer implements IHardwareRenderer { if (!gl) { if (webGLMode == WebGLMode.Auto || webGLMode == WebGLMode.WebGL1) { gl = webCanvas.getContext("webgl", option); - if (!gl && !(webCanvas instanceof OffscreenCanvas)) { + if (!gl && (typeof OffscreenCanvas === "undefined" || !(webCanvas instanceof OffscreenCanvas))) { gl = webCanvas.getContext("experimental-webgl", option); } this._isWebGL2 = false; From 0ca84a389cad8e6a0e834cd39da1594406dc781b Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Tue, 2 Aug 2022 18:06:58 +0800 Subject: [PATCH 008/122] v0.8.0-beta.4 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 2 +- packages/physics-physx/package.json | 2 +- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 30 insertions(+), 30 deletions(-) diff --git a/lerna.json b/lerna.json index 3f26d80da2..1358ec1303 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.3", + "version": "0.8.0-beta.4", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index f9a8a2fb42..e07cc074e3 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.3", + "version": "0.8.0-beta.4", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.3" + "@oasis-engine/math": "0.8.0-beta.4" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.3" + "@oasis-engine/design": "0.8.0-beta.4" } } diff --git a/packages/design/package.json b/packages/design/package.json index 4181fa8315..dd57ce3b6b 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.3", + "version": "0.8.0-beta.4", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.3" + "@oasis-engine/math": "0.8.0-beta.4" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index 87a9294b6f..bd5d2041b1 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.3", + "version": "0.8.0-beta.4", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.3" + "@oasis-engine/core": "0.8.0-beta.4" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 23c0f8c16c..0e7128bae8 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.3", + "version": "0.8.0-beta.4", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.3", - "@oasis-engine/draco": "0.8.0-beta.3", - "@oasis-engine/math": "0.8.0-beta.3", - "@oasis-engine/rhi-webgl": "0.8.0-beta.3" + "@oasis-engine/core": "0.8.0-beta.4", + "@oasis-engine/draco": "0.8.0-beta.4", + "@oasis-engine/math": "0.8.0-beta.4", + "@oasis-engine/rhi-webgl": "0.8.0-beta.4" } } diff --git a/packages/math/package.json b/packages/math/package.json index 4dfbf07c32..3d17bbcdef 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.3", + "version": "0.8.0-beta.4", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index 188657989e..2795fc5deb 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.3", + "version": "0.8.0-beta.4", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.3", - "@oasis-engine/loader": "0.8.0-beta.3", - "@oasis-engine/math": "0.8.0-beta.3", - "@oasis-engine/rhi-webgl": "0.8.0-beta.3" + "@oasis-engine/core": "0.8.0-beta.4", + "@oasis-engine/loader": "0.8.0-beta.4", + "@oasis-engine/math": "0.8.0-beta.4", + "@oasis-engine/rhi-webgl": "0.8.0-beta.4" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 6fbf5ccf90..02b6d83707 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.3", + "version": "0.8.0-beta.4", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index 2dfc91e854..fdddc163a0 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.3", + "version": "0.8.0-beta.4", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 5ae037bd41..1b66e78300 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.3", + "version": "0.8.0-beta.4", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.3", - "@oasis-engine/math": "0.8.0-beta.3" + "@oasis-engine/core": "0.8.0-beta.4", + "@oasis-engine/math": "0.8.0-beta.4" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.3" + "@oasis-engine/design": "0.8.0-beta.4" } } diff --git a/tests/package.json b/tests/package.json index a452ca82b3..c2c0356952 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.3", + "version": "0.8.0-beta.4", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.3", - "@oasis-engine/design": "0.8.0-beta.3", - "@oasis-engine/math": "0.8.0-beta.3", - "@oasis-engine/rhi-webgl": "0.8.0-beta.3" + "@oasis-engine/core": "0.8.0-beta.4", + "@oasis-engine/design": "0.8.0-beta.4", + "@oasis-engine/math": "0.8.0-beta.4", + "@oasis-engine/rhi-webgl": "0.8.0-beta.4" } } From 2d11e00e36339b43e67fcb84e156dd4fec6a7d6f Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Tue, 2 Aug 2022 18:09:38 +0800 Subject: [PATCH 009/122] v0.8.0-beta.5 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 2 +- packages/physics-physx/package.json | 2 +- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 30 insertions(+), 30 deletions(-) diff --git a/lerna.json b/lerna.json index 1358ec1303..f3764fd714 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.4", + "version": "0.8.0-beta.5", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index e07cc074e3..b21bc8c129 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.4", + "version": "0.8.0-beta.5", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.4" + "@oasis-engine/math": "0.8.0-beta.5" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.4" + "@oasis-engine/design": "0.8.0-beta.5" } } diff --git a/packages/design/package.json b/packages/design/package.json index dd57ce3b6b..14bbbb024e 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.4", + "version": "0.8.0-beta.5", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.4" + "@oasis-engine/math": "0.8.0-beta.5" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index bd5d2041b1..7bae618e8e 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.4", + "version": "0.8.0-beta.5", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.4" + "@oasis-engine/core": "0.8.0-beta.5" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 0e7128bae8..54d35dce90 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.4", + "version": "0.8.0-beta.5", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.4", - "@oasis-engine/draco": "0.8.0-beta.4", - "@oasis-engine/math": "0.8.0-beta.4", - "@oasis-engine/rhi-webgl": "0.8.0-beta.4" + "@oasis-engine/core": "0.8.0-beta.5", + "@oasis-engine/draco": "0.8.0-beta.5", + "@oasis-engine/math": "0.8.0-beta.5", + "@oasis-engine/rhi-webgl": "0.8.0-beta.5" } } diff --git a/packages/math/package.json b/packages/math/package.json index 3d17bbcdef..64caab9198 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.4", + "version": "0.8.0-beta.5", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index 2795fc5deb..f7beae1355 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.4", + "version": "0.8.0-beta.5", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.4", - "@oasis-engine/loader": "0.8.0-beta.4", - "@oasis-engine/math": "0.8.0-beta.4", - "@oasis-engine/rhi-webgl": "0.8.0-beta.4" + "@oasis-engine/core": "0.8.0-beta.5", + "@oasis-engine/loader": "0.8.0-beta.5", + "@oasis-engine/math": "0.8.0-beta.5", + "@oasis-engine/rhi-webgl": "0.8.0-beta.5" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 02b6d83707..388f483f51 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.4", + "version": "0.8.0-beta.5", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index fdddc163a0..7151af94ae 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.4", + "version": "0.8.0-beta.5", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 1b66e78300..7fea19677c 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.4", + "version": "0.8.0-beta.5", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.4", - "@oasis-engine/math": "0.8.0-beta.4" + "@oasis-engine/core": "0.8.0-beta.5", + "@oasis-engine/math": "0.8.0-beta.5" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.4" + "@oasis-engine/design": "0.8.0-beta.5" } } diff --git a/tests/package.json b/tests/package.json index c2c0356952..c65b0fec3f 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.4", + "version": "0.8.0-beta.5", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.4", - "@oasis-engine/design": "0.8.0-beta.4", - "@oasis-engine/math": "0.8.0-beta.4", - "@oasis-engine/rhi-webgl": "0.8.0-beta.4" + "@oasis-engine/core": "0.8.0-beta.5", + "@oasis-engine/design": "0.8.0-beta.5", + "@oasis-engine/math": "0.8.0-beta.5", + "@oasis-engine/rhi-webgl": "0.8.0-beta.5" } } From cf2380861b77941e6ce53c2f1cf16f99b3f8beb2 Mon Sep 17 00:00:00 2001 From: ChenMo Date: Wed, 3 Aug 2022 23:15:40 -0700 Subject: [PATCH 010/122] fix: build error cause by physics package (#921) --- packages/physics-lite/package.json | 6 ++++-- packages/physics-physx/package.json | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 388f483f51..2b8201a795 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -18,8 +18,10 @@ "dist/**/*", "types/**/*" ], + "devDependencies": { + "@oasis-engine/design": "0.8.0-beta.5" + }, "peerDependencies": { - "@oasis-engine/design": "0.8.0-beta.3", - "oasis-engine": "0.8.0-beta.3" + "oasis-engine": "0.8.0-beta.5" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index 7151af94ae..c29ab8cf65 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -19,8 +19,10 @@ "libs/**/*", "types/**/*" ], + "devDependencies": { + "@oasis-engine/design": "0.8.0-beta.5" + }, "peerDependencies": { - "@oasis-engine/design": "0.8.0-beta.3", - "oasis-engine": "0.8.0-beta.3" + "oasis-engine": "0.8.0-beta.5" } } From d2f1f94de0cfa0f2a2a3eeae7a6f87d0ba13f31c Mon Sep 17 00:00:00 2001 From: AZhan Date: Thu, 4 Aug 2022 14:17:22 +0800 Subject: [PATCH 011/122] Fix use canvas as the main body to listen for keyboard events (#917) * fix: use canvas as the main body to listen for keyboard events --- packages/core/src/input/InputManager.ts | 2 +- .../src/input/keyboard/KeyboardManager.ts | 22 +++++++++++-------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/packages/core/src/input/InputManager.ts b/packages/core/src/input/InputManager.ts index d7b72d0873..73dbdc884c 100644 --- a/packages/core/src/input/InputManager.ts +++ b/packages/core/src/input/InputManager.ts @@ -173,7 +173,7 @@ export class InputManager { if (typeof OffscreenCanvas === "undefined" || !(canvas instanceof OffscreenCanvas)) { this._wheelManager = new WheelManager(canvas); this._pointerManager = new PointerManager(engine, canvas); - this._keyboardManager = new KeyboardManager(); + this._keyboardManager = new KeyboardManager(canvas); this._onBlur = this._onBlur.bind(this); window.addEventListener("blur", this._onBlur); this._onFocus = this._onFocus.bind(this); diff --git a/packages/core/src/input/keyboard/KeyboardManager.ts b/packages/core/src/input/keyboard/KeyboardManager.ts index c1cbd90c0f..a068bd7986 100644 --- a/packages/core/src/input/keyboard/KeyboardManager.ts +++ b/packages/core/src/input/keyboard/KeyboardManager.ts @@ -21,16 +21,20 @@ export class KeyboardManager implements IInput { /** @internal */ _curFrameUpList: DisorderedArray = new DisorderedArray(); + private _htmlCanvas: HTMLCanvasElement; private _nativeEvents: KeyboardEvent[] = []; private _hadListener: boolean = false; /** * Create a KeyboardManager. */ - constructor() { + constructor(htmlCanvas: HTMLCanvasElement) { + this._htmlCanvas = htmlCanvas; + // Need to set tabIndex to make the canvas focus. + htmlCanvas.tabIndex = htmlCanvas.tabIndex; this._onKeyEvent = this._onKeyEvent.bind(this); - window.addEventListener("keydown", this._onKeyEvent); - window.addEventListener("keyup", this._onKeyEvent); + htmlCanvas.addEventListener("keydown", this._onKeyEvent); + htmlCanvas.addEventListener("keyup", this._onKeyEvent); this._hadListener = true; } @@ -84,8 +88,8 @@ export class KeyboardManager implements IInput { */ _onFocus(): void { if (!this._hadListener) { - window.addEventListener("keydown", this._onKeyEvent); - window.addEventListener("keyup", this._onKeyEvent); + this._htmlCanvas.addEventListener("keydown", this._onKeyEvent); + this._htmlCanvas.addEventListener("keyup", this._onKeyEvent); this._hadListener = true; } } @@ -95,8 +99,8 @@ export class KeyboardManager implements IInput { */ _onBlur(): void { if (this._hadListener) { - window.removeEventListener("keydown", this._onKeyEvent); - window.removeEventListener("keyup", this._onKeyEvent); + this._htmlCanvas.removeEventListener("keydown", this._onKeyEvent); + this._htmlCanvas.removeEventListener("keyup", this._onKeyEvent); this._curHeldDownKeyToIndexMap.length = 0; this._curFrameHeldDownList.length = 0; this._curFrameDownList.length = 0; @@ -111,8 +115,8 @@ export class KeyboardManager implements IInput { */ _destroy(): void { if (this._hadListener) { - window.removeEventListener("keydown", this._onKeyEvent); - window.removeEventListener("keyup", this._onKeyEvent); + this._htmlCanvas.removeEventListener("keydown", this._onKeyEvent); + this._htmlCanvas.removeEventListener("keyup", this._onKeyEvent); this._hadListener = false; } this._curHeldDownKeyToIndexMap = null; From 1228a9c49cc4cd0f4a61b74c3af053fcf4c1bb78 Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Thu, 4 Aug 2022 14:24:05 +0800 Subject: [PATCH 012/122] v0.8.0-beta.6 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 4 ++-- packages/physics-physx/package.json | 4 ++-- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 32 insertions(+), 32 deletions(-) diff --git a/lerna.json b/lerna.json index f3764fd714..a2051e396d 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.5", + "version": "0.8.0-beta.6", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index b21bc8c129..6a34aa04d1 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.5", + "version": "0.8.0-beta.6", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.5" + "@oasis-engine/math": "0.8.0-beta.6" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.5" + "@oasis-engine/design": "0.8.0-beta.6" } } diff --git a/packages/design/package.json b/packages/design/package.json index 14bbbb024e..8045a5d23a 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.5", + "version": "0.8.0-beta.6", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.5" + "@oasis-engine/math": "0.8.0-beta.6" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index 7bae618e8e..b4447e71a1 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.5", + "version": "0.8.0-beta.6", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.5" + "@oasis-engine/core": "0.8.0-beta.6" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 54d35dce90..c5f1f5cdf8 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.5", + "version": "0.8.0-beta.6", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.5", - "@oasis-engine/draco": "0.8.0-beta.5", - "@oasis-engine/math": "0.8.0-beta.5", - "@oasis-engine/rhi-webgl": "0.8.0-beta.5" + "@oasis-engine/core": "0.8.0-beta.6", + "@oasis-engine/draco": "0.8.0-beta.6", + "@oasis-engine/math": "0.8.0-beta.6", + "@oasis-engine/rhi-webgl": "0.8.0-beta.6" } } diff --git a/packages/math/package.json b/packages/math/package.json index 64caab9198..c231e04afb 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.5", + "version": "0.8.0-beta.6", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index f7beae1355..bcc781e868 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.5", + "version": "0.8.0-beta.6", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.5", - "@oasis-engine/loader": "0.8.0-beta.5", - "@oasis-engine/math": "0.8.0-beta.5", - "@oasis-engine/rhi-webgl": "0.8.0-beta.5" + "@oasis-engine/core": "0.8.0-beta.6", + "@oasis-engine/loader": "0.8.0-beta.6", + "@oasis-engine/math": "0.8.0-beta.6", + "@oasis-engine/rhi-webgl": "0.8.0-beta.6" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 2b8201a795..8a2e0ea28a 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.5", + "version": "0.8.0-beta.6", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,7 +19,7 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.5" + "@oasis-engine/design": "0.8.0-beta.6" }, "peerDependencies": { "oasis-engine": "0.8.0-beta.5" diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index c29ab8cf65..d5e5035c08 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.5", + "version": "0.8.0-beta.6", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,7 +20,7 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.5" + "@oasis-engine/design": "0.8.0-beta.6" }, "peerDependencies": { "oasis-engine": "0.8.0-beta.5" diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 7fea19677c..b8835485ba 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.5", + "version": "0.8.0-beta.6", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.5", - "@oasis-engine/math": "0.8.0-beta.5" + "@oasis-engine/core": "0.8.0-beta.6", + "@oasis-engine/math": "0.8.0-beta.6" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.5" + "@oasis-engine/design": "0.8.0-beta.6" } } diff --git a/tests/package.json b/tests/package.json index c65b0fec3f..3be53376cf 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.5", + "version": "0.8.0-beta.6", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.5", - "@oasis-engine/design": "0.8.0-beta.5", - "@oasis-engine/math": "0.8.0-beta.5", - "@oasis-engine/rhi-webgl": "0.8.0-beta.5" + "@oasis-engine/core": "0.8.0-beta.6", + "@oasis-engine/design": "0.8.0-beta.6", + "@oasis-engine/math": "0.8.0-beta.6", + "@oasis-engine/rhi-webgl": "0.8.0-beta.6" } } From ee6d11a18ef69e954eb1da0d4c0cfce51ac6351b Mon Sep 17 00:00:00 2001 From: yangfengzzz Date: Thu, 4 Aug 2022 15:12:41 +0800 Subject: [PATCH 013/122] fix test missmatch bug (#922) * fix: test update --- tests/src/core/material/BlinnPhongMaterial.test.ts | 8 ++++---- tests/src/core/material/PBRBaseMaterial.test.ts | 6 +++--- tests/src/core/material/PBRSpecularMaterial.test.ts | 2 +- tests/src/core/material/UnlitMaterial.test.ts | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/tests/src/core/material/BlinnPhongMaterial.test.ts b/tests/src/core/material/BlinnPhongMaterial.test.ts index 713db502c7..b230598f90 100644 --- a/tests/src/core/material/BlinnPhongMaterial.test.ts +++ b/tests/src/core/material/BlinnPhongMaterial.test.ts @@ -22,16 +22,16 @@ describe("BlinnPhongMaterial", () => { expect(material.shininess).to.eq(16); expect(material.tilingOffset).to.deep.eq(new Vector4(1, 1, 0, 0)); - material.baseColor.setValue(1, 0, 0, 1); - material.specularColor.setValue(1, 0, 0, 1); - material.emissiveColor.setValue(1, 0, 0, 1); + material.baseColor.set(1, 0, 0, 1); + material.specularColor.set(1, 0, 0, 1); + material.emissiveColor.set(1, 0, 0, 1); material.baseTexture = texture; material.specularTexture = texture; material.emissiveTexture = texture; material.normalTexture = texture; material.normalIntensity = 2; material.shininess = 32; - material.tilingOffset.setValue(1, 1, 1, 1); + material.tilingOffset.set(1, 1, 1, 1); expect(material.baseColor).to.deep.eq(new Color(1, 0, 0, 1)); expect(material.specularColor).to.deep.eq(new Color(1, 0, 0, 1)); diff --git a/tests/src/core/material/PBRBaseMaterial.test.ts b/tests/src/core/material/PBRBaseMaterial.test.ts index c913b47a93..c6066f84e0 100644 --- a/tests/src/core/material/PBRBaseMaterial.test.ts +++ b/tests/src/core/material/PBRBaseMaterial.test.ts @@ -22,9 +22,9 @@ describe("PBRBaseMaterial", () => { expect(material.normalTexture).to.be.undefined; expect(material.occlusionTexture).to.be.undefined; - material.baseColor.setValue(1, 0, 0, 1); - material.emissiveColor.setValue(1, 0, 0, 1); - material.tilingOffset.setValue(1, 1, 1, 1); + material.baseColor.set(1, 0, 0, 1); + material.emissiveColor.set(1, 0, 0, 1); + material.tilingOffset.set(1, 1, 1, 1); material.normalTextureIntensity = 2; material.occlusionTextureIntensity = 2; material.baseTexture = texture; diff --git a/tests/src/core/material/PBRSpecularMaterial.test.ts b/tests/src/core/material/PBRSpecularMaterial.test.ts index 2046f33246..4b39ef5678 100644 --- a/tests/src/core/material/PBRSpecularMaterial.test.ts +++ b/tests/src/core/material/PBRSpecularMaterial.test.ts @@ -15,7 +15,7 @@ describe("PBRSpecularMaterial", () => { expect(material.glossiness).to.eq(1); expect(material.specularGlossinessTexture).to.be.undefined; - material.specularColor.setValue(1, 0, 0, 1); + material.specularColor.set(1, 0, 0, 1); material.glossiness = 2; material.specularGlossinessTexture = texture; diff --git a/tests/src/core/material/UnlitMaterial.test.ts b/tests/src/core/material/UnlitMaterial.test.ts index b0f30ac545..a84671b27c 100644 --- a/tests/src/core/material/UnlitMaterial.test.ts +++ b/tests/src/core/material/UnlitMaterial.test.ts @@ -15,8 +15,8 @@ describe("UnlitMaterial", () => { expect(material.tilingOffset).to.deep.eq(new Vector4(1, 1, 0, 0)); expect(material.baseTexture).to.be.undefined; - material.baseColor.setValue(1, 0, 0, 1); - material.tilingOffset.setValue(1, 1, 1, 1); + material.baseColor.set(1, 0, 0, 1); + material.tilingOffset.set(1, 1, 1, 1); material.baseTexture = texture; expect(material.baseColor).to.deep.eq(new Color(1, 0, 0, 1)); From 7124e03144fbdd23fcea3d68adefb589533c57de Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Thu, 4 Aug 2022 15:41:20 +0800 Subject: [PATCH 014/122] v0.8.0-beta.7 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 6 +++--- packages/physics-physx/package.json | 6 +++--- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lerna.json b/lerna.json index a2051e396d..5f155c0e02 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.6", + "version": "0.8.0-beta.7", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index 6a34aa04d1..65b4e3a81b 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.6", + "version": "0.8.0-beta.7", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.6" + "@oasis-engine/math": "0.8.0-beta.7" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.6" + "@oasis-engine/design": "0.8.0-beta.7" } } diff --git a/packages/design/package.json b/packages/design/package.json index 8045a5d23a..3d4a6b9435 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.6", + "version": "0.8.0-beta.7", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.6" + "@oasis-engine/math": "0.8.0-beta.7" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index b4447e71a1..ea2fdba78f 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.6", + "version": "0.8.0-beta.7", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.6" + "@oasis-engine/core": "0.8.0-beta.7" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index c5f1f5cdf8..aabdc41e9c 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.6", + "version": "0.8.0-beta.7", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.6", - "@oasis-engine/draco": "0.8.0-beta.6", - "@oasis-engine/math": "0.8.0-beta.6", - "@oasis-engine/rhi-webgl": "0.8.0-beta.6" + "@oasis-engine/core": "0.8.0-beta.7", + "@oasis-engine/draco": "0.8.0-beta.7", + "@oasis-engine/math": "0.8.0-beta.7", + "@oasis-engine/rhi-webgl": "0.8.0-beta.7" } } diff --git a/packages/math/package.json b/packages/math/package.json index c231e04afb..fd3769c279 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.6", + "version": "0.8.0-beta.7", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index bcc781e868..70a5683a1c 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.6", + "version": "0.8.0-beta.7", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.6", - "@oasis-engine/loader": "0.8.0-beta.6", - "@oasis-engine/math": "0.8.0-beta.6", - "@oasis-engine/rhi-webgl": "0.8.0-beta.6" + "@oasis-engine/core": "0.8.0-beta.7", + "@oasis-engine/loader": "0.8.0-beta.7", + "@oasis-engine/math": "0.8.0-beta.7", + "@oasis-engine/rhi-webgl": "0.8.0-beta.7" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 8a2e0ea28a..30a137900c 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.6", + "version": "0.8.0-beta.7", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,9 +19,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.6" + "@oasis-engine/design": "0.8.0-beta.7" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.5" + "oasis-engine": "0.8.0-beta.7" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index d5e5035c08..3e89962c1e 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.6", + "version": "0.8.0-beta.7", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,9 +20,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.6" + "@oasis-engine/design": "0.8.0-beta.7" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.5" + "oasis-engine": "0.8.0-beta.7" } } diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index b8835485ba..f4964f21f9 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.6", + "version": "0.8.0-beta.7", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.6", - "@oasis-engine/math": "0.8.0-beta.6" + "@oasis-engine/core": "0.8.0-beta.7", + "@oasis-engine/math": "0.8.0-beta.7" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.6" + "@oasis-engine/design": "0.8.0-beta.7" } } diff --git a/tests/package.json b/tests/package.json index 3be53376cf..e334779bb8 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.6", + "version": "0.8.0-beta.7", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.6", - "@oasis-engine/design": "0.8.0-beta.6", - "@oasis-engine/math": "0.8.0-beta.6", - "@oasis-engine/rhi-webgl": "0.8.0-beta.6" + "@oasis-engine/core": "0.8.0-beta.7", + "@oasis-engine/design": "0.8.0-beta.7", + "@oasis-engine/math": "0.8.0-beta.7", + "@oasis-engine/rhi-webgl": "0.8.0-beta.7" } } From c3a97a8e4323f54eef8abf662e82de5fccad9f9b Mon Sep 17 00:00:00 2001 From: Hu Song Date: Thu, 4 Aug 2022 16:51:29 +0800 Subject: [PATCH 015/122] Fix `ResourceManager.cancelNotLoaded` Error when load env (#923) * fix: `ResourceManager.cancelNotLoaded` Error when load env --- packages/core/src/asset/ResourceManager.ts | 10 +++++++--- packages/loader/src/EnvLoader.ts | 6 +----- packages/loader/src/HDRLoader.ts | 6 +----- packages/rhi-webgl/src/GLTexture.ts | 2 +- 4 files changed, 10 insertions(+), 14 deletions(-) diff --git a/packages/core/src/asset/ResourceManager.ts b/packages/core/src/asset/ResourceManager.ts index 8e18052e92..3d0cd8a22b 100644 --- a/packages/core/src/asset/ResourceManager.ts +++ b/packages/core/src/asset/ResourceManager.ts @@ -156,7 +156,7 @@ export class ResourceManager { return promise.then((res) => (key ? res[key] : res)).then((item) => (isClone ? item.clone() : item)); } - /** + /** * @internal * @beta Just for internal editor, not recommended for developers. */ @@ -250,11 +250,15 @@ export class ResourceManager { promise .then((res: EngineObject) => { if (loader.useCache) this._addAsset(url, res); - delete this._loadingPromises[url]; + if (this._loadingPromises) { + delete this._loadingPromises[url]; + } }) .catch((err: Error) => { Promise.reject(err); - delete this._loadingPromises[url]; + if (this._loadingPromises) { + delete this._loadingPromises[url]; + } }); return promise; } diff --git a/packages/loader/src/EnvLoader.ts b/packages/loader/src/EnvLoader.ts index e1352bc172..d376b79e43 100644 --- a/packages/loader/src/EnvLoader.ts +++ b/packages/loader/src/EnvLoader.ts @@ -17,11 +17,7 @@ import { SphericalHarmonics3 } from "@oasis-engine/math"; class EnvLoader extends Loader { load(item: LoadItem, resourceManager: ResourceManager): AssetPromise { return new AssetPromise((resolve, reject) => { - resourceManager - .load({ - type: AssetType.Buffer, - url: item.url - }) + this.request(item.url, { type: "arraybuffer" }) .then((arraybuffer) => { const shArray = new Float32Array(arraybuffer, 0, 27); const shByteLength = 27 * 4; diff --git a/packages/loader/src/HDRLoader.ts b/packages/loader/src/HDRLoader.ts index 97630533ac..689f39e90b 100644 --- a/packages/loader/src/HDRLoader.ts +++ b/packages/loader/src/HDRLoader.ts @@ -374,11 +374,7 @@ class HDRLoader extends Loader { return new AssetPromise((resolve, reject) => { const engine = resourceManager.engine; - resourceManager - .load({ - url: item.url, - type: AssetType.Buffer - }) + this.request(item.url, { type: "arraybuffer" }) .then((buffer) => { const uint8Array = new Uint8Array(buffer); const { width, height, dataPosition } = HDRLoader._parseHeader(uint8Array); diff --git a/packages/rhi-webgl/src/GLTexture.ts b/packages/rhi-webgl/src/GLTexture.ts index bfce115bb8..9ba3a44bcb 100644 --- a/packages/rhi-webgl/src/GLTexture.ts +++ b/packages/rhi-webgl/src/GLTexture.ts @@ -584,4 +584,4 @@ export class GLTexture implements IPlatformTexture { } return frameBuffer; } -} \ No newline at end of file +} From 5bd95b942c2c38df5753d834d40227cfb971f0b5 Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Thu, 4 Aug 2022 18:18:54 +0800 Subject: [PATCH 016/122] v0.8.0-beta.8 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 8 ++++---- packages/physics-physx/package.json | 8 ++++---- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 36 insertions(+), 36 deletions(-) diff --git a/lerna.json b/lerna.json index 5f155c0e02..a35829d1cb 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.7", + "version": "0.8.0-beta.8", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index 65b4e3a81b..18ce521723 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.7", + "version": "0.8.0-beta.8", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.7" + "@oasis-engine/math": "0.8.0-beta.8" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.7" + "@oasis-engine/design": "0.8.0-beta.8" } } diff --git a/packages/design/package.json b/packages/design/package.json index 3d4a6b9435..a683116bf4 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.7", + "version": "0.8.0-beta.8", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.7" + "@oasis-engine/math": "0.8.0-beta.8" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index ea2fdba78f..e8d9b65cf6 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.7", + "version": "0.8.0-beta.8", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.7" + "@oasis-engine/core": "0.8.0-beta.8" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index aabdc41e9c..184b40bf3a 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.7", + "version": "0.8.0-beta.8", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.7", - "@oasis-engine/draco": "0.8.0-beta.7", - "@oasis-engine/math": "0.8.0-beta.7", - "@oasis-engine/rhi-webgl": "0.8.0-beta.7" + "@oasis-engine/core": "0.8.0-beta.8", + "@oasis-engine/draco": "0.8.0-beta.8", + "@oasis-engine/math": "0.8.0-beta.8", + "@oasis-engine/rhi-webgl": "0.8.0-beta.8" } } diff --git a/packages/math/package.json b/packages/math/package.json index fd3769c279..03a4b88366 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.7", + "version": "0.8.0-beta.8", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index 70a5683a1c..a3b4afbb22 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.7", + "version": "0.8.0-beta.8", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.7", - "@oasis-engine/loader": "0.8.0-beta.7", - "@oasis-engine/math": "0.8.0-beta.7", - "@oasis-engine/rhi-webgl": "0.8.0-beta.7" + "@oasis-engine/core": "0.8.0-beta.8", + "@oasis-engine/loader": "0.8.0-beta.8", + "@oasis-engine/math": "0.8.0-beta.8", + "@oasis-engine/rhi-webgl": "0.8.0-beta.8" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 30a137900c..d5bb238d3d 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.7", + "version": "0.8.0-beta.8", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,9 +19,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.7" + "@oasis-engine/design": "0.8.0-beta.8" }, - "peerDependencies": { - "oasis-engine": "0.8.0-beta.7" + "dependencies": { + "oasis-engine": "0.8.0-beta.8" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index 3e89962c1e..d10b497387 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.7", + "version": "0.8.0-beta.8", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,9 +20,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.7" + "@oasis-engine/design": "0.8.0-beta.8" }, - "peerDependencies": { - "oasis-engine": "0.8.0-beta.7" + "dependencies": { + "oasis-engine": "0.8.0-beta.8" } } diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index f4964f21f9..7b7171ba9f 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.7", + "version": "0.8.0-beta.8", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.7", - "@oasis-engine/math": "0.8.0-beta.7" + "@oasis-engine/core": "0.8.0-beta.8", + "@oasis-engine/math": "0.8.0-beta.8" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.7" + "@oasis-engine/design": "0.8.0-beta.8" } } diff --git a/tests/package.json b/tests/package.json index e334779bb8..e62eff271f 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.7", + "version": "0.8.0-beta.8", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.7", - "@oasis-engine/design": "0.8.0-beta.7", - "@oasis-engine/math": "0.8.0-beta.7", - "@oasis-engine/rhi-webgl": "0.8.0-beta.7" + "@oasis-engine/core": "0.8.0-beta.8", + "@oasis-engine/design": "0.8.0-beta.8", + "@oasis-engine/math": "0.8.0-beta.8", + "@oasis-engine/rhi-webgl": "0.8.0-beta.8" } } From 314cefa5f252c93fe7436135847a0cd6eb4f9329 Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Thu, 4 Aug 2022 18:21:49 +0800 Subject: [PATCH 017/122] v0.8.0-beta.9 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 6 +++--- packages/physics-physx/package.json | 6 +++--- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lerna.json b/lerna.json index a35829d1cb..b07027b3bd 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.8", + "version": "0.8.0-beta.9", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index 18ce521723..3c139ad381 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.8", + "version": "0.8.0-beta.9", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.8" + "@oasis-engine/math": "0.8.0-beta.9" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.8" + "@oasis-engine/design": "0.8.0-beta.9" } } diff --git a/packages/design/package.json b/packages/design/package.json index a683116bf4..c7ae438595 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.8", + "version": "0.8.0-beta.9", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.8" + "@oasis-engine/math": "0.8.0-beta.9" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index e8d9b65cf6..46d86ca433 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.8", + "version": "0.8.0-beta.9", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.8" + "@oasis-engine/core": "0.8.0-beta.9" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 184b40bf3a..54619ed332 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.8", + "version": "0.8.0-beta.9", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.8", - "@oasis-engine/draco": "0.8.0-beta.8", - "@oasis-engine/math": "0.8.0-beta.8", - "@oasis-engine/rhi-webgl": "0.8.0-beta.8" + "@oasis-engine/core": "0.8.0-beta.9", + "@oasis-engine/draco": "0.8.0-beta.9", + "@oasis-engine/math": "0.8.0-beta.9", + "@oasis-engine/rhi-webgl": "0.8.0-beta.9" } } diff --git a/packages/math/package.json b/packages/math/package.json index 03a4b88366..9e3e7fe018 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.8", + "version": "0.8.0-beta.9", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index a3b4afbb22..06a552ac00 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.8", + "version": "0.8.0-beta.9", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.8", - "@oasis-engine/loader": "0.8.0-beta.8", - "@oasis-engine/math": "0.8.0-beta.8", - "@oasis-engine/rhi-webgl": "0.8.0-beta.8" + "@oasis-engine/core": "0.8.0-beta.9", + "@oasis-engine/loader": "0.8.0-beta.9", + "@oasis-engine/math": "0.8.0-beta.9", + "@oasis-engine/rhi-webgl": "0.8.0-beta.9" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index d5bb238d3d..e82dbf778a 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.8", + "version": "0.8.0-beta.9", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,9 +19,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.8" + "@oasis-engine/design": "0.8.0-beta.9" }, "dependencies": { - "oasis-engine": "0.8.0-beta.8" + "oasis-engine": "0.8.0-beta.9" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index d10b497387..c8d66e2369 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.8", + "version": "0.8.0-beta.9", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,9 +20,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.8" + "@oasis-engine/design": "0.8.0-beta.9" }, "dependencies": { - "oasis-engine": "0.8.0-beta.8" + "oasis-engine": "0.8.0-beta.9" } } diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 7b7171ba9f..81ed49a23e 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.8", + "version": "0.8.0-beta.9", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.8", - "@oasis-engine/math": "0.8.0-beta.8" + "@oasis-engine/core": "0.8.0-beta.9", + "@oasis-engine/math": "0.8.0-beta.9" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.8" + "@oasis-engine/design": "0.8.0-beta.9" } } diff --git a/tests/package.json b/tests/package.json index e62eff271f..f391cf3c04 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.8", + "version": "0.8.0-beta.9", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.8", - "@oasis-engine/design": "0.8.0-beta.8", - "@oasis-engine/math": "0.8.0-beta.8", - "@oasis-engine/rhi-webgl": "0.8.0-beta.8" + "@oasis-engine/core": "0.8.0-beta.9", + "@oasis-engine/design": "0.8.0-beta.9", + "@oasis-engine/math": "0.8.0-beta.9", + "@oasis-engine/rhi-webgl": "0.8.0-beta.9" } } From 04926faddab6c52e7594e98d74e7bc23e5884902 Mon Sep 17 00:00:00 2001 From: Hu Song Date: Thu, 4 Aug 2022 22:54:47 +0800 Subject: [PATCH 018/122] fix: peer dependencies bunble (#926) * fix: peer dependencies bunble * build: refactor to peer dependencies --- packages/physics-lite/package.json | 2 +- packages/physics-physx/package.json | 2 +- rollup.config.js | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index e82dbf778a..8ef70cffad 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -21,7 +21,7 @@ "devDependencies": { "@oasis-engine/design": "0.8.0-beta.9" }, - "dependencies": { + "peerDependencies": { "oasis-engine": "0.8.0-beta.9" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index c8d66e2369..c4ee562618 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -22,7 +22,7 @@ "devDependencies": { "@oasis-engine/design": "0.8.0-beta.9" }, - "dependencies": { + "peerDependencies": { "oasis-engine": "0.8.0-beta.9" } } diff --git a/rollup.config.js b/rollup.config.js index 5100b7dd63..4d899ca925 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -56,7 +56,8 @@ const commonPlugins = [ function config({ location, pkgJson }) { const input = path.join(location, "src", "index.ts"); - const external = Object.keys(pkgJson.dependencies || {}); + const dependencies = Object.assign({}, pkgJson.dependencies ?? {}, pkgJson.peerDependencies ?? {}); + const external = Object.keys(dependencies); const name = pkgJson.name; commonPlugins.push( replace({ From 7d1a61d934c04627e07add1210ecd5574c9206a7 Mon Sep 17 00:00:00 2001 From: ChenMo Date: Sat, 6 Aug 2022 23:34:17 +0800 Subject: [PATCH 019/122] Delete jest.config.js --- jest.config.js | 195 ------------------------------------------------- 1 file changed, 195 deletions(-) delete mode 100644 jest.config.js diff --git a/jest.config.js b/jest.config.js deleted file mode 100644 index b670c2e2cf..0000000000 --- a/jest.config.js +++ /dev/null @@ -1,195 +0,0 @@ -// For a detailed explanation regarding each configuration property, visit: -// https://jestjs.io/docs/en/configuration.html - -module.exports = { - // All imported modules in your tests should be mocked automatically - // automock: false, - - // Stop running tests after `n` failures - // bail: 0, - - // Respect "browser" field in package.json when resolving modules - // browser: false, - - // The directory where Jest should store its cached dependency information - // cacheDirectory: "/private/var/folders/cq/g37nccf93rx3nvqzbflwfq180000gp/T/jest_dy", - - // Automatically clear mock calls and instances between every test - clearMocks: true, - - // Indicates whether the coverage information should be collected while executing the test - // collectCoverage: false, - - // An array of glob patterns indicating a set of files for which coverage information should be collected - // collectCoverageFrom: null, - - // The directory where Jest should output its coverage files - coverageDirectory: "coverage", - collectCoverageFrom: ["packages/**/src/**/*.ts"], - - // An array of regexp pattern strings used to skip coverage collection - coveragePathIgnorePatterns: ["/node_modules/"], - - // A list of reporter names that Jest uses when writing coverage reports - // coverageReporters: [ - // "json", - // "text", - // "lcov", - // "clover" - // ], - - // An object that configures minimum threshold enforcement for coverage results - // coverageThreshold: null, - - // A path to a custom dependency extractor - // dependencyExtractor: null, - - // Make calling deprecated APIs throw helpful error messages - // errorOnDeprecated: false, - - // Force coverage collection from ignored files using an array of glob patterns - // forceCoverageMatch: [], - - // A path to a module which exports an async function that is triggered once before all test suites - // globalSetup: null, - - // A path to a module which exports an async function that is triggered once after all test suites - // globalTeardown: null, - - // A set of global variables that need to be available in all test environments - // globals: {}, - - // The maximum amount of workers used to run your tests. Can be specified as % or a number. E.g. maxWorkers: 10% will use 10% of your CPU amount + 1 as the maximum worker number. maxWorkers: 2 will use a maximum of 2 workers. - // maxWorkers: "50%", - - // An array of directory names to be searched recursively up from the requiring module's location - // moduleDirectories: [ - // "node_modules" - // ], - - // An array of file extensions your modules use - // moduleFileExtensions: [ - // "js", - // "json", - // "jsx", - // "ts", - // "tsx", - // "node" - // ], - - // A map from regular expressions to module names that allow to stub out resources with a single module - // moduleNameMapper: {}, - - // An array of regexp pattern strings, matched against all module paths before considered 'visible' to the module loader - // modulePathIgnorePatterns: [], - - // Activates notifications for test results - // notify: false, - - // An enum that specifies notification mode. Requires { notify: true } - // notifyMode: "failure-change", - - // A preset that is used as a base for Jest's configuration - // preset: null, - - // Run tests from one or more projects - // projects: null, - - // Use this configuration option to add custom reporters to Jest - // reporters: undefined, - - // Automatically reset mock state between every test - // resetMocks: false, - - // Reset the module registry before running each individual test - // resetModules: false, - - // A path to a custom resolver - // resolver: null, - - // Automatically restore mock state between every test - // restoreMocks: false, - - // The root directory that Jest should scan for tests and modules within - // rootDir: null, - - // A list of paths to directories that Jest should use to search for files in - // roots: [ - // "" - // ], - - // Allows you to use a custom runner instead of Jest's default test runner - runner: "jest-runner", - runner: "jest-electron/runner", - testEnvironment: "jest-electron/environment", - - // The paths to modules that run some code to configure or set up the testing environment before each test - // setupFiles: [], - - // A list of paths to modules that run some code to configure or set up the testing framework before each test - // setupFilesAfterEnv: [], - - // A list of paths to snapshot serializer modules Jest should use for snapshot testing - // snapshotSerializers: [], - - // The test environment that will be used for testing - // testEnvironment: "jest-environment-jsdom", - - // Options that will be passed to the testEnvironment - // testEnvironmentOptions: {}, - - // Adds a location field to test results - // testLocationInResults: false, - - // The glob patterns Jest uses to detect test files - transform: { - "\\.(glsl)$": "/tools/jest/jest.transform.glsl.js", - "\\.(ts)$": "/tools/jest/jest.transform.ts.js" - // "\\.(ts)$": "babel-jest" - }, - testMatch: [ - // "**/__tests__/**/*.[jt]s?(x)", - // "**/?(*.)+(spec|test).[tj]s?(x)" - "**/?(*.)+(spec|test).ts" - ], - - // An array of regexp pattern strings that are matched against all test paths, matched tests are skipped - // testPathIgnorePatterns: [ - // "/node_modules/" - // ], - - // The regexp pattern or array of patterns that Jest uses to detect test files - // testRegex: [], - - // This option allows the use of a custom results processor - // testResultsProcessor: null, - - // This option allows use of a custom test runner - // testRunner: "jasmine2", - - // This option sets the URL for the jsdom environment. It is reflected in properties such as location.href - // testURL: "http://localhost", - - // Setting this value to "fake" allows the use of fake timers for functions such as "setTimeout" - // timers: "real", - - // A map from regular expressions to paths to transformers - // transform: null, - - // An array of regexp pattern strings that are matched against all source file paths, matched files will skip transformation - // transformIgnorePatterns: [ - // "/node_modules/" - // ], - - // An array of regexp pattern strings that are matched against all modules before the module loader will automatically return a mock for them - // unmockedModulePathPatterns: undefined, - - // Indicates whether each individual test should be reported during the run - // verbose: null, - - // An array of regexp patterns that are matched against all source file paths before re-running tests in watch mode - // watchPathIgnorePatterns: [], - - // Whether to use watchman for file crawling - // watchman: true, -}; From c4fc1e7fe9658f106a40691e10474bf8aad95c1d Mon Sep 17 00:00:00 2001 From: AZhan Date: Mon, 8 Aug 2022 18:24:14 +0800 Subject: [PATCH 020/122] Fix InputManager need to stop the default touch behavior of canvas (#936) * fix: need to stop the default touch behavior of canvas --- packages/core/src/input/pointer/PointerManager.ts | 2 +- packages/core/src/input/wheel/WheelManager.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/core/src/input/pointer/PointerManager.ts b/packages/core/src/input/pointer/PointerManager.ts index 122a09795e..483bafbbe3 100644 --- a/packages/core/src/input/pointer/PointerManager.ts +++ b/packages/core/src/input/pointer/PointerManager.ts @@ -64,7 +64,6 @@ export class PointerManager implements IInput { this._engine = engine; this._canvas = engine.canvas; this._htmlCanvas = htmlCanvas; - htmlCanvas.style.touchAction = "none"; htmlCanvas.oncontextmenu = (event: UIEvent) => { return false; }; @@ -170,6 +169,7 @@ export class PointerManager implements IInput { } private _onPointerEvent(evt: PointerEvent) { + evt.cancelable && evt.preventDefault(); this._nativeEvents.push(evt); } diff --git a/packages/core/src/input/wheel/WheelManager.ts b/packages/core/src/input/wheel/WheelManager.ts index 363f936604..7f9967b76b 100644 --- a/packages/core/src/input/wheel/WheelManager.ts +++ b/packages/core/src/input/wheel/WheelManager.ts @@ -75,6 +75,7 @@ export class WheelManager implements IInput { } private _onWheelEvent(evt: WheelEvent): void { + evt.cancelable && evt.preventDefault(); this._nativeEvents.push(evt); } } From c35585607be3acab3d7ca5ab2d8c48feb3c71c66 Mon Sep 17 00:00:00 2001 From: ChenMo Date: Tue, 9 Aug 2022 23:16:06 +0800 Subject: [PATCH 021/122] Create package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 4cc7650f48..8a0a0f82eb 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "oasis-root", + "name": "oasis-engine", "version": "1.0.0", "private": true, "workspaces": [ From c9b883b05b159301615ff745b9bb51588ea607a4 Mon Sep 17 00:00:00 2001 From: ChenMo Date: Wed, 10 Aug 2022 00:13:46 +0800 Subject: [PATCH 022/122] Update package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 8a0a0f82eb..a0ea0285d1 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "oasis-engine", + "name": "oasis-engine-root", "version": "1.0.0", "private": true, "workspaces": [ From e15f2f8f80d6f75fe7153cca78dd6a0c0ca2a0cf Mon Sep 17 00:00:00 2001 From: ChenMo Date: Thu, 11 Aug 2022 20:10:43 +0800 Subject: [PATCH 023/122] fix: `blendShapeWeights` is never set (#941) Co-authored-by: chenmo.gl --- packages/core/src/mesh/BlendShapeManager.ts | 5 +++-- packages/core/src/mesh/SkinnedMeshRenderer.ts | 5 ++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/core/src/mesh/BlendShapeManager.ts b/packages/core/src/mesh/BlendShapeManager.ts index 13a145fc60..c1b879beb7 100644 --- a/packages/core/src/mesh/BlendShapeManager.ts +++ b/packages/core/src/mesh/BlendShapeManager.ts @@ -99,10 +99,9 @@ export class BlendShapeManager { * @internal */ _updateShaderData(shaderData: ShaderData, skinnedMeshRenderer: SkinnedMeshRenderer): void { - const blendShapeCount = this._blendShapeCount; + let blendShapeCount = this._blendShapeCount; if (blendShapeCount > 0) { shaderData.enableMacro(BlendShapeManager._blendShapeMacro); - shaderData.enableMacro("OASIS_BLENDSHAPE_COUNT", blendShapeCount.toString()); if (this._useTextureMode()) { shaderData.enableMacro(BlendShapeManager._blendShapeTextureMacro); shaderData.setTexture(BlendShapeManager._blendShapeTextureProperty, this._vertexTexture); @@ -119,6 +118,7 @@ export class BlendShapeManager { this._filterCondensedBlendShapeWeights(skinnedMeshRenderer._blendShapeWeights, condensedBlendShapeWeights); shaderData.setFloatArray(BlendShapeManager._blendShapeWeightsProperty, condensedBlendShapeWeights); this._modelMesh._enableVAO = false; + blendShapeCount = maxBlendCount; } else { shaderData.setFloatArray( BlendShapeManager._blendShapeWeightsProperty, @@ -128,6 +128,7 @@ export class BlendShapeManager { } shaderData.disableMacro(BlendShapeManager._blendShapeTextureMacro); } + shaderData.enableMacro("OASIS_BLENDSHAPE_COUNT", blendShapeCount.toString()); if (this._useBlendNormal) { shaderData.enableMacro(BlendShapeManager._blendShapeNormalMacro); diff --git a/packages/core/src/mesh/SkinnedMeshRenderer.ts b/packages/core/src/mesh/SkinnedMeshRenderer.ts index cce31dee0c..217f84a324 100644 --- a/packages/core/src/mesh/SkinnedMeshRenderer.ts +++ b/packages/core/src/mesh/SkinnedMeshRenderer.ts @@ -36,7 +36,10 @@ export class SkinnedMeshRenderer extends MeshRenderer { /** Whether to use joint texture. Automatically used when the device can't support the maximum number of bones. */ private _useJointTexture: boolean = false; private _skin: Skin; - _blendShapeWeights: Float32Array; + + /** @internal */ + _blendShapeWeights: Float32Array = new Float32Array(0); + /** @internal */ _condensedBlendShapeWeights: Float32Array; /** From 2d4ea292d7dbb74b430ce30fb65b7b0f8caf67f1 Mon Sep 17 00:00:00 2001 From: yangfengzzz Date: Fri, 12 Aug 2022 14:23:59 +0800 Subject: [PATCH 024/122] fix: model mesh missing tangent w (#944) --- packages/core/src/mesh/ModelMesh.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/core/src/mesh/ModelMesh.ts b/packages/core/src/mesh/ModelMesh.ts index 98975f2605..fdaf924dee 100644 --- a/packages/core/src/mesh/ModelMesh.ts +++ b/packages/core/src/mesh/ModelMesh.ts @@ -688,6 +688,7 @@ export class ModelMesh extends Mesh { vertices[start] = tangent.x; vertices[start + 1] = tangent.y; vertices[start + 2] = tangent.z; + vertices[start + 3] = tangent.w; } } } From 6cf91ca253e4532277ed25c1256bcfd6818e6c4d Mon Sep 17 00:00:00 2001 From: zhuxudong Date: Fri, 12 Aug 2022 16:17:07 +0800 Subject: [PATCH 025/122] fix: scene parser error (#946) --- packages/loader/src/SceneLoader.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/loader/src/SceneLoader.ts b/packages/loader/src/SceneLoader.ts index 79b6e79905..5cc91ff035 100644 --- a/packages/loader/src/SceneLoader.ts +++ b/packages/loader/src/SceneLoader.ts @@ -25,10 +25,10 @@ class SceneLoader extends Loader { if (ambient.ambientLight) { resourceManager.getResourceByRef(data.scene.ambient.ambientLight).then((light) => { scene.ambientLight = light; + scene.ambientLight.diffuseIntensity = ambient.diffuseIntensity; + scene.ambientLight.specularIntensity = ambient.specularIntensity; }); } - scene.ambientLight.diffuseIntensity = ambient.diffuseIntensity; - scene.ambientLight.specularIntensity = ambient.specularIntensity; const background = data.scene.background; scene.background.mode = background.mode; From 88cd5210026140c8a8652880c5c69bbea1f4ff97 Mon Sep 17 00:00:00 2001 From: yangfengzzz Date: Tue, 16 Aug 2022 16:22:17 +0800 Subject: [PATCH 026/122] physx missing collision callback (#950) * fix: physx collision callback bug --- .../physics-physx/libs/physx.release.js.js | 60 +++++++++--------- .../physics-physx/libs/physx.release.wasm | Bin 2467931 -> 2467965 bytes packages/physics-physx/src/PhysXPhysics.ts | 4 +- 3 files changed, 32 insertions(+), 32 deletions(-) diff --git a/packages/physics-physx/libs/physx.release.js.js b/packages/physics-physx/libs/physx.release.js.js index 857b68326d..bba4a81945 100644 --- a/packages/physics-physx/libs/physx.release.js.js +++ b/packages/physics-physx/libs/physx.release.js.js @@ -10,37 +10,37 @@ var Module=typeof PHYSX!="undefined"?PHYSX:{};var readyPromiseResolve,readyPromi // EMSCRIPTEN_START_ASM function instantiate(La){function c(d){d.set=function(a,b){this[a]=b};d.get=function(a){return this[a]};return d}var e;var f=new ArrayBuffer(16);var g=new Int32Array(f);var h=new Float32Array(f);var i=new Float64Array(f);function j(k){return g[k]}function l(k,m){g[k]=m}function n(){return i[0]}function o(m){i[0]=m}function p(m){h[2]=m}function q(){return h[2]}function Ja(Ka){var r=Ka.memory;var s=r.buffer;r.grow=Ha;var t=new Int8Array(s);var u=new Int16Array(s);var v=new Int32Array(s);var w=new Uint8Array(s);var x=new Uint16Array(s);var y=new Uint32Array(s);var z=new Float32Array(s);var A=new Float64Array(s);var B=Math.imul;var C=Math.fround;var D=Math.abs;var E=Math.clz32;var F=Math.min;var G=Math.max;var H=Math.floor;var I=Math.ceil;var J=Math.trunc;var K=Math.sqrt;var L=Ka.abort;var M=NaN;var N=Infinity;var O=Ka._embind_register_class;var P=Ka._embind_register_class_function;var Q=Ka._embind_register_constant;var R=Ka._embind_register_function;var S=Ka._embind_register_class_class_function;var T=Ka._embind_register_class_constructor;var U=Ka._embind_register_class_property;var V=Ka._embind_register_value_object;var W=Ka._embind_register_value_object_field;var X=Ka._embind_finalize_value_object;var Y=Ka._embind_register_enum;var Z=Ka._embind_register_enum_value;var _=Ka._embind_create_inheriting_constructor;var $=Ka._emval_decref;var aa=Ka._emval_get_method_caller;var ba=Ka._emval_call_void_method;var ca=Ka._emval_incref;var da=Ka.abort;var ea=Ka._emval_take_value;var fa=Ka._emval_call_method;var ga=Ka._emval_run_destructors;var ha=Ka._embind_register_void;var ia=Ka._embind_register_bool;var ja=Ka._embind_register_integer;var ka=Ka._embind_register_float;var la=Ka._embind_register_std_string;var ma=Ka._embind_register_std_wstring;var na=Ka._embind_register_emval;var oa=Ka._embind_register_memory_view;var pa=Ka.emscripten_memcpy_big;var qa=Ka._emscripten_date_now;var ra=Ka.emscripten_get_now;var sa=Ka.fd_write;var ta=Ka.exit;var ua=Ka.emscripten_resize_heap;var va=Ka.setTempRet0;var wa=Ka._embind_register_bigint;var xa=5396048;var ya=0;var za=0;var Aa=0; // EMSCRIPTEN_START_FUNCS -function jN(a){a=a|0;var b=C(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=C(0),q=0,r=0,s=0,A=0,D=C(0),E=C(0),F=C(0),G=0,H=0,I=0,J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=0,R=0,S=C(0),T=0,U=0,V=C(0),W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0,da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=0,ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=0,ua=C(0),va=0,wa=0,ya=0,za=0,Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=0,Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=0,Oa=0,Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=0,Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=0,gb=0,hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=0,ub=C(0),vb=C(0),wb=0,xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=0,Fb=0,Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=C(0),Tb=0,Ub=0,Vb=C(0),Wb=C(0),Xb=C(0),Yb=0,Zb=C(0),_b=0,$b=0,ac=0,bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=C(0),rc=C(0),sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=C(0),Ac=C(0),Bc=C(0),Cc=C(0),Dc=C(0),Ec=C(0),Fc=C(0),Gc=C(0),Hc=C(0),Ic=C(0),Jc=C(0),Kc=C(0),Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=C(0),Sc=C(0),Tc=C(0),Uc=C(0),Vc=C(0),Wc=C(0),Xc=C(0),Yc=C(0),Zc=C(0),_c=C(0),$c=C(0),ad=C(0),bd=C(0),cd=C(0),dd=0,ed=C(0),fd=C(0),gd=C(0),hd=C(0),id=C(0),jd=C(0),kd=C(0),ld=C(0),md=C(0),nd=C(0),od=C(0),pd=C(0),qd=C(0),rd=C(0),sd=C(0),td=C(0),ud=C(0),vd=C(0),wd=C(0),xd=C(0),yd=C(0),zd=0,Ad=C(0),Bd=C(0),Cd=C(0),Dd=C(0),Ed=C(0),Fd=C(0),Gd=C(0),Hd=C(0),Id=C(0),Jd=C(0),Kd=C(0),Ld=C(0),Md=0,Nd=0,Od=0,Pd=C(0),Qd=C(0),Rd=C(0),Sd=C(0),Td=C(0),Ud=C(0),Vd=C(0),Wd=C(0),Xd=C(0),Yd=C(0),Zd=C(0),_d=C(0),$d=C(0),ae=C(0),be=C(0),ce=C(0),de=C(0),ee=C(0),fe=C(0),ge=C(0),he=C(0),ie=C(0),je=C(0),ke=C(0),le=C(0),me=0,ne=C(0),oe=C(0),pe=C(0),qe=C(0),re=C(0),se=C(0),te=C(0),ue=C(0),ve=C(0),we=C(0),xe=C(0),ye=0,ze=0,Ae=0,Be=0,Ce=C(0),De=C(0),Ee=C(0),Fe=C(0),Ge=C(0),He=C(0),Ie=C(0),Je=C(0),Ke=C(0),Le=C(0),Me=C(0),Ne=C(0),Oe=C(0),Pe=0,Qe=0,Re=0,Se=0,Te=C(0),Ue=C(0),Ve=C(0),We=C(0),Xe=C(0),Ye=C(0),Ze=C(0),_e=C(0),$e=C(0),af=C(0),bf=C(0),cf=C(0),df=C(0),ef=C(0),ff=C(0),gf=C(0),hf=C(0),jf=C(0),kf=C(0),lf=C(0),mf=C(0),nf=C(0),of=C(0),pf=C(0),qf=C(0),rf=C(0),sf=C(0),tf=C(0),uf=C(0),vf=C(0),wf=C(0),xf=C(0),yf=C(0),zf=C(0),Af=C(0),Bf=C(0),Cf=C(0),Df=C(0),Ef=C(0),Ff=C(0),Gf=C(0),Hf=C(0),If=C(0),Jf=C(0),Kf=C(0),Lf=C(0),Mf=C(0),Nf=C(0),Of=C(0),Pf=C(0),Qf=C(0),Rf=C(0),Sf=C(0),Tf=C(0),Uf=0,Vf=C(0),Wf=C(0),Xf=C(0),Yf=C(0),Zf=C(0),_f=C(0),$f=C(0),ag=C(0),bg=C(0),cg=C(0),dg=C(0),eg=C(0),fg=C(0),gg=C(0),hg=C(0),ig=C(0),jg=C(0),kg=C(0),lg=C(0),mg=C(0),ng=C(0),og=C(0),pg=C(0),qg=C(0),rg=C(0),sg=C(0),tg=C(0),ug=C(0),vg=C(0),wg=C(0),xg=C(0),yg=C(0),zg=C(0),Ag=C(0),Bg=C(0),Cg=C(0),Dg=C(0),Eg=C(0),Fg=C(0),Gg=C(0),Hg=C(0),Ig=C(0),Jg=C(0),Kg=C(0),Lg=C(0),Mg=C(0),Ng=C(0),Og=C(0),Pg=C(0),Qg=C(0),Rg=C(0),Sg=C(0),Tg=C(0),Ug=C(0),Vg=C(0),Wg=C(0),Xg=C(0),Yg=C(0),Zg=C(0),_g=C(0),$g=C(0),ah=C(0),bh=C(0),ch=C(0),dh=C(0),eh=C(0),fh=C(0),gh=C(0),hh=C(0),ih=C(0),jh=C(0),kh=C(0),lh=C(0),mh=C(0),nh=C(0),oh=C(0),ph=C(0),qh=C(0),rh=C(0),sh=C(0),th=C(0),uh=C(0),vh=C(0),wh=C(0),xh=C(0),yh=C(0),zh=C(0),Ah=C(0),Bh=C(0),Ch=C(0),Dh=C(0),Eh=C(0),Fh=C(0),Gh=C(0),Hh=C(0),Ih=C(0),Jh=C(0),Kh=C(0),Lh=C(0),Mh=C(0),Nh=C(0),Oh=C(0),Ph=C(0),Qh=C(0),Rh=C(0),Sh=C(0),Th=C(0),Uh=C(0),Vh=C(0),Wh=C(0),Xh=C(0),Yh=C(0),Zh=C(0),_h=C(0),$h=C(0),ai=C(0),bi=0,ci=0,di=0;d=v[a+64>>2];c=v[d+368>>2];e=v[c>>2];if(e){v[c>>2]=v[e>>2]}if(!e){c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?26947:63804;e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,12195,e,19395,82)|0;c=e+19&-16;v[c-4>>2]=c-e;e=gB(c,v[d+372>>2])}c=e+11856|0;v[c>>2]=0;v[c+4>>2]=0;Kb=v[a+64>>2];Pe=v[a+28>>2];di=v[a+32>>2];bi=v[a+36>>2];ci=v[a+40>>2];c=v[a+68>>2];le=z[a+44>>2];eb=z[a+48>>2];pb=z[a+52>>2];Q=xa-832|0;xa=Q;Oc=e;v[Q+824>>2]=e+12088;v[Q+820>>2]=e+11824;v[Q+816>>2]=e+11852;v[Q+812>>2]=c+11836;v[Q+808>>2]=128228;if(bi){Sb=C(C(1)/eb);Qe=v[Kb+496>>2];Re=v[Kb+484>>2];while(1){Yb=(Uf<<3)+di|0;T=v[Yb>>2];Pc=x[Yb+4>>1];c=T+Pc|0;a:{b:{c:{d:{switch(x[((T<<5)+Pe|0)+22>>1]-1|0){case 0:Qc=c>>>0<=T>>>0;e=Pc;if(Qc){break b}m=v[ci+32>>2];l=0;e=T;while(1){c=l<<2;o=(e<<5)+Pe|0;q=v[o+24>>2];v[c+Q>>2]=q;d=c+(Q+32|0)|0;c=v[q+68>>2];c=m+(v[((c&7)<<2)+ci>>2]+(c>>>3|0)<<4)|0;v[d>>2]=c;h=v[o+4>>2];d=v[o>>2];G=v[o+12>>2];j=v[o+16>>2];g=v[q+20>>2];r=(Q+96|0)+B(l,176)|0;k=v[q+16>>2];z[r+44>>2]=z[k>>2];z[r+48>>2]=z[k+4>>2];z[r+52>>2]=z[k+8>>2];z[r+56>>2]=z[k+12>>2];z[r+60>>2]=z[k+16>>2];z[r- -64>>2]=z[k+20>>2];z[r+68>>2]=z[k+24>>2];z[r+72>>2]=z[g>>2];z[r+76>>2]=z[g+4>>2];z[r+80>>2]=z[g+8>>2];z[r+84>>2]=z[g+12>>2];z[r+88>>2]=z[g+16>>2];z[r+92>>2]=z[g+20>>2];z[r+96>>2]=z[g+24>>2];v[r+108>>2]=v[q+12>>2];c=v[c+8>>2];g=B(j,48)+Qe|0;v[r+40>>2]=g;k=B(G,48)+Qe|0;v[r+36>>2]=k;v[r+32>>2]=(j<<6)+Re;v[r+28>>2]=(G<<6)+Re;v[r+20>>2]=d;v[r+24>>2]=h;v[r+16>>2]=o;v[r+140>>2]=c;h=x[q+40>>1];t[r+121|0]=h>>>2&1;t[r+122|0]=h>>>8&1;d=h&8;v[r+100>>2]=d?8:1;c=h&16;e:{if(c){if(x[o+10>>1]==65535){v[r+104>>2]=2;break e}v[r+104>>2]=8;break e}v[r+104>>2]=h&1024?4:h&64?1:2}J=z[(c?v[q+20>>2]+128|0:g+12|0)>>2];N=z[(d?v[q+16>>2]+128|0:k+12|0)>>2];c=w[q+44|0];E=w[q+45|0]?C(1):C(0);z[r+12>>2]=E;b=c?C(1):C(0);z[r>>2]=b;z[r+4>>2]=b;z[r+8>>2]=E;z[r+124>>2]=z[q+52>>2];v[r+132>>2]=v[q+36>>2];c=w[q+42|0];z[r+160>>2]=J>N?N:J;v[r+128>>2]=2139095039;t[r+136|0]=c;z[r+164>>2]=z[q+72>>2];z[r+168>>2]=z[q+76>>2];e=e+1|0;l=l+1|0;if((Pc|0)!=(l|0)){continue}break};break c;case 1:break d;default:break a}}Na=c>>>0<=T>>>0;if(!Na){l=v[Kb+168>>2];e=0;while(1){v[Q+24>>2]=0;v[Q+16>>2]=0;v[Q+20>>2]=0;v[Q+8>>2]=0;v[Q+12>>2]=1065353216;v[Q>>2]=0;v[Q+4>>2]=0;c=Q;H=c;q=(T<<5)+Pe|0;r=v[q+24>>2];d=v[r+24>>2];if(d){H=v[d+36>>2]}m=x[r+8>>1];h=v[r+20>>2];g=v[r+12>>2];d=v[r+28>>2];if(d){c=v[d+36>>2]}k=v[q+4>>2];G=v[q+12>>2];j=v[q+16>>2];d=v[q>>2];o=(Q+32|0)+(e<<4)|0;v[o+12>>2]=m;v[o+8>>2]=h;v[o>>2]=r;v[o+4>>2]=g;g=(Q+96|0)+B(e,176)|0;v[g+16>>2]=q;z[g+44>>2]=z[H>>2];z[g+48>>2]=z[H+4>>2];z[g+52>>2]=z[H+8>>2];z[g+56>>2]=z[H+12>>2];z[g+60>>2]=z[H+16>>2];z[g- -64>>2]=z[H+20>>2];z[g+68>>2]=z[H+24>>2];z[g+72>>2]=z[c>>2];z[g+76>>2]=z[c+4>>2];z[g+80>>2]=z[c+8>>2];z[g+84>>2]=z[c+12>>2];z[g+88>>2]=z[c+16>>2];z[g+92>>2]=z[c+20>>2];b=z[c+24>>2];v[g+40>>2]=B(j,48)+Qe;v[g+36>>2]=B(G,48)+Qe;v[g+32>>2]=(j<<6)+Re;v[g+28>>2]=(G<<6)+Re;v[g+24>>2]=k;v[g+20>>2]=d;z[g+96>>2]=b;z[g+116>>2]=z[r>>2];z[g+120>>2]=z[r+4>>2];v[g+128>>2]=l+(v[r+40>>2]<<5);d=x[r+10>>1];t[g+135|0]=d>>>9&1;c=d&255;t[g+133|0]=c>>>7;t[g+132|0]=d>>>8&1;t[g+134|0]=c>>>5&1;z[g+124>>2]=z[r+44>>2];v[g+100>>2]=x[q+8>>1]==65535?1:8;v[g+104>>2]=x[q+10>>1]==65535?1:8;T=T+1|0;e=e+1|0;if((Pc|0)!=(e|0)){continue}break}}if((Pc|0)==4){f=Q+96|0;m=Q+808|0;Zb=z[Kb+612>>2];H=0;va=0;Wa=0;Lb=0;Mb=0;me=xa-3840|0;xa=me;v[Q>>2]=0;e=1;c=v[Q+36>>2];f:{if(!c){break f}q=I9(me,0,960);v[q+940>>2]=2139095039;v[q+924>>2]=-8388609;v[q+860>>2]=2139095039;v[q+844>>2]=-8388609;v[q+780>>2]=2139095039;v[q+764>>2]=-8388609;v[q+700>>2]=2139095039;v[q+684>>2]=-8388609;v[q+620>>2]=2139095039;v[q+604>>2]=-8388609;v[q+540>>2]=2139095039;v[q+524>>2]=-8388609;v[q+460>>2]=2139095039;v[q+444>>2]=-8388609;v[q+380>>2]=2139095039;v[q+364>>2]=-8388609;v[q+300>>2]=2139095039;v[q+284>>2]=-8388609;v[q+220>>2]=2139095039;v[q+204>>2]=-8388609;v[q+140>>2]=2139095039;v[q+124>>2]=-8388609;v[q+60>>2]=2139095039;v[q+44>>2]=-8388609;v[f+4>>2]=1065353216;v[f+8>>2]=1065353216;v[f+12>>2]=1065353216;v[f+144>>2]=0;v[f+136>>2]=0;v[f+140>>2]=0;v[f>>2]=1065353216;o=Ba[c|0](q,f+136|0,12,f,v[Q+40>>2],f+44|0,f+72|0,w[f+135|0],f+148|0,f+160|0)|0;if(!o){break f}v[f+112>>2]=o;v[f+108>>2]=q;if(w[v[f+20>>2]+62|0]){v[f+4>>2]=0}if(w[v[f+24>>2]+62|0]){v[f+12>>2]=0}g=v[Q+52>>2];if(!g){break f}k=f+176|0;h=q+B(o,80)|0;I9(q+960|0,0,960);g:{if(o>>>0>12){break g}A=12-o|0;d=o&3;if(d){while(1){c=h+B(A,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;A=A+1|0;H=H+1|0;if((d|0)!=(H|0)){continue}break}}if(o-1>>>0<3){break g}while(1){c=h+B(A,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;v[c+140>>2]=2139095039;v[c+124>>2]=-8388609;v[c+204>>2]=-8388609;v[c+220>>2]=2139095039;v[c+284>>2]=-8388609;v[c+300>>2]=2139095039;A=A+4|0;if((A|0)!=12){continue}break}}v[f+176>>2]=1065353216;v[f+180>>2]=1065353216;v[f+184>>2]=1065353216;v[f+188>>2]=1065353216;v[f+320>>2]=0;c=f+312|0;v[c>>2]=0;v[c+4>>2]=0;G=Ba[g|0](h,c,12,k,v[Q+56>>2],f+220|0,f+248|0,w[f+311|0],f+324|0,f+336|0)|0;if(!G){break f}v[f+288>>2]=G;v[f+284>>2]=h;if(w[v[f+196>>2]+62|0]){v[f+180>>2]=0}if(w[v[f+200>>2]+62|0]){v[f+188>>2]=0}h=v[Q+68>>2];if(!h){break f}k=f+352|0;g=o+G|0;l=q+B(g,80)|0;A=12-G|0;I9(l+B(A,80)|0,0,960);h:{if(G>>>0>12){break h}d=G&3;if(d){H=0;while(1){c=l+B(A,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;A=A+1|0;H=H+1|0;if((d|0)!=(H|0)){continue}break}}if(G-1>>>0<3){break h}while(1){c=l+B(A,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;v[c+140>>2]=2139095039;v[c+124>>2]=-8388609;v[c+204>>2]=-8388609;v[c+220>>2]=2139095039;v[c+284>>2]=-8388609;v[c+300>>2]=2139095039;A=A+4|0;if((A|0)!=12){continue}break}}v[f+352>>2]=1065353216;v[f+356>>2]=1065353216;v[f+360>>2]=1065353216;v[f+364>>2]=1065353216;v[f+496>>2]=0;c=f+488|0;v[c>>2]=0;v[c+4>>2]=0;j=Ba[h|0](l,c,12,k,v[Q+72>>2],f+396|0,f+424|0,w[f+487|0],f+500|0,f+512|0)|0;if(!j){break f}v[f+464>>2]=j;v[f+460>>2]=l;if(w[v[f+372>>2]+62|0]){v[f+356>>2]=0}if(w[v[f+376>>2]+62|0]){v[f+364>>2]=0}h=v[Q+84>>2];if(!h){break f}k=f+528|0;l=q+B(g+j|0,80)|0;H=12-j|0;I9(l+B(H,80)|0,0,960);i:{if(j>>>0>12){break i}d=j&3;if(d){g=0;while(1){c=l+B(H,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;H=H+1|0;g=g+1|0;if((d|0)!=(g|0)){continue}break}}if(j-1>>>0<3){break i}while(1){c=l+B(H,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;v[c+140>>2]=2139095039;v[c+124>>2]=-8388609;v[c+204>>2]=-8388609;v[c+220>>2]=2139095039;v[c+284>>2]=-8388609;v[c+300>>2]=2139095039;H=H+4|0;if((H|0)!=12){continue}break}}v[f+528>>2]=1065353216;v[f+532>>2]=1065353216;v[f+536>>2]=1065353216;v[f+540>>2]=1065353216;v[f+672>>2]=0;c=f+664|0;v[c>>2]=0;v[c+4>>2]=0;d=Ba[h|0](l,c,12,k,v[Q+88>>2],f+572|0,f+600|0,w[f+663|0],f+676|0,f+688|0)|0;if(!d){break f}e=o>>>0>>0?G:o;c=e>>>0>>0?j:e;e=c>>>0>>0;v[f+640>>2]=d;v[f+636>>2]=l;if(w[v[f+548>>2]+62|0]){v[f+532>>2]=0}if(w[v[f+552>>2]+62|0]){v[f+540>>2]=0}Yb=e?d:c;c=0;A=0;W=xa-1744|0;xa=W;g=v[f+108>>2];k=v[f+112>>2];j:{if(!k){break j}if((k|0)!=1){e=k&-2;while(1){d=g+B(c,80)|0;k:{if(!(w[d+76|0]&64)){break k}H=1024;l:{switch(x[d+78>>1]-2048|0){case 1:H=1025;break;case 0:break l;default:break k}}u[d+78>>1]=H}d=g+B(c|1,80)|0;m:{if(!(w[d+76|0]&64)){break m}H=1024;n:{switch(x[d+78>>1]-2048|0){case 1:H=1025;break;case 0:break n;default:break m}}u[d+78>>1]=H}c=c+2|0;A=A+2|0;if((e|0)!=(A|0)){continue}break}}if(!(k&1)){break j}e=g+B(c,80)|0;if(!(w[e+76|0]&64)){break j}A=1024;o:{switch(x[e+78>>1]-2048|0){case 1:A=1025;break;case 0:break o;default:break j}}u[e+78>>1]=A}c=0;e=W+1552|0;oy(e,g,W+784|0,W+16|0,k,v[f+28>>2]+28|0,v[f+32>>2]+28|0,z[v[f+36>>2]+32>>2],z[v[f+40>>2]+32>>2],f,w[f+132|0],w[f+133|0],0);k=f+176|0;l=v[f+284>>2];Eb=v[f+112>>2];d=e+(Eb<<2)|0;h=v[f+288>>2];p:{if(!h){break p}if((h|0)!=1){e=h&-2;A=0;while(1){g=l+B(c,80)|0;q:{if(!(w[g+76|0]&64)){break q}H=1025;r:{switch(x[g+78>>1]-2048|0){case 0:H=1024;break;case 1:break r;default:break q}}u[g+78>>1]=H}g=l+B(c|1,80)|0;s:{if(!(w[g+76|0]&64)){break s}H=1025;t:{switch(x[g+78>>1]-2048|0){case 0:H=1024;break;case 1:break t;default:break s}}u[g+78>>1]=H}c=c+2|0;A=A+2|0;if((e|0)!=(A|0)){continue}break}}if(!(h&1)){break p}e=l+B(c,80)|0;if(!(w[e+76|0]&64)){break p}A=1025;u:{switch(x[e+78>>1]-2048|0){case 0:A=1024;break;case 1:break u;default:break p}}u[e+78>>1]=A}c=0;e=Eb<<4;oy(d,l,e+(W+784|0)|0,e+(W+16|0)|0,h,v[f+204>>2]+28|0,v[f+208>>2]+28|0,z[v[f+212>>2]+32>>2],z[v[f+216>>2]+32>>2],k,w[f+308|0],w[f+309|0],0);k=f+352|0;l=v[f+460>>2];Fb=v[f+288>>2]+Eb|0;d=(W+1552|0)+(Fb<<2)|0;h=v[f+464>>2];v:{if(!h){break v}if((h|0)!=1){e=h&-2;A=0;while(1){g=l+B(c,80)|0;w:{if(!(w[g+76|0]&64)){break w}H=1025;x:{switch(x[g+78>>1]-2048|0){case 0:H=1024;break;case 1:break x;default:break w}}u[g+78>>1]=H}g=l+B(c|1,80)|0;y:{if(!(w[g+76|0]&64)){break y}H=1025;z:{switch(x[g+78>>1]-2048|0){case 0:H=1024;break;case 1:break z;default:break y}}u[g+78>>1]=H}c=c+2|0;A=A+2|0;if((e|0)!=(A|0)){continue}break}}if(!(h&1)){break v}e=l+B(c,80)|0;if(!(w[e+76|0]&64)){break v}A=1025;A:{switch(x[e+78>>1]-2048|0){case 0:A=1024;break;case 1:break A;default:break v}}u[e+78>>1]=A}c=0;e=Fb<<4;oy(d,l,e+(W+784|0)|0,e+(W+16|0)|0,h,v[f+380>>2]+28|0,v[f+384>>2]+28|0,z[v[f+388>>2]+32>>2],z[v[f+392>>2]+32>>2],k,w[f+484|0],w[f+485|0],0);g=f+528|0;j=v[f+636>>2];e=v[f+464>>2]+Fb|0;k=(W+1552|0)+(e<<2)|0;l=v[f+640>>2];B:{if(!l){break B}if((l|0)!=1){d=l&-2;A=0;while(1){h=j+B(c,80)|0;C:{if(!(w[h+76|0]&64)){break C}H=1025;D:{switch(x[h+78>>1]-2048|0){case 0:H=1024;break;case 1:break D;default:break C}}u[h+78>>1]=H}h=j+B(c|1,80)|0;E:{if(!(w[h+76|0]&64)){break E}H=1025;F:{switch(x[h+78>>1]-2048|0){case 0:H=1024;break;case 1:break F;default:break E}}u[h+78>>1]=H}c=c+2|0;A=A+2|0;if((d|0)!=(A|0)){continue}break}}if(!(l&1)){break B}c=j+B(c,80)|0;if(!(w[c+76|0]&64)){break B}A=1025;G:{switch(x[c+78>>1]-2048|0){case 0:A=1024;break;case 1:break G;default:break B}}u[c+78>>1]=A}c=0;d=e<<4;oy(k,j,d+(W+784|0)|0,d+(W+16|0)|0,l,v[f+556>>2]+28|0,v[f+560>>2]+28|0,z[v[f+564>>2]+32>>2],z[v[f+568>>2]+32>>2],g,w[f+660|0],w[f+661|0],0);g=v[f+640>>2];A=1;k=B(Yb,368);d=Ba[v[v[m>>2]>>2]](m,k+656|0)|0;H:{if(d+1>>>0<2){e=v[f+16>>2];u[e+22>>1]=0;v[e+24>>2]=0;v[e+28>>2]=v[f+128>>2];e=v[f+192>>2];u[e+22>>1]=0;v[e+24>>2]=0;v[e+28>>2]=v[f+304>>2];e=v[f+368>>2];u[e+22>>1]=0;v[e+24>>2]=0;v[e+28>>2]=v[f+480>>2];e=v[f+544>>2];u[e+22>>1]=0;v[e+24>>2]=0;v[e+28>>2]=v[f+656>>2];break H}v[Q>>2]=e+g;fb=w[v[f+552>>2]+62|0];s=w[v[f+548>>2]+62|0];ca=w[v[f+376>>2]+62|0];ta=w[v[f+372>>2]+62|0];H=w[v[f+200>>2]+62|0];ia=w[v[f+196>>2]+62|0];U=w[v[f+24>>2]+62|0];R=w[v[f+20>>2]+62|0];c=v[f+16>>2];k=k+640>>>4|0;u[c+22>>1]=k;v[c+24>>2]=d;v[c+28>>2]=v[f+128>>2];c=v[f+192>>2];u[c+22>>1]=k;v[c+24>>2]=d;v[c+28>>2]=v[f+304>>2];c=v[f+368>>2];u[c+22>>1]=k;v[c+24>>2]=d;v[c+28>>2]=v[f+480>>2];c=v[f+544>>2];u[c+22>>1]=k;v[c+24>>2]=d;v[c+28>>2]=v[f+656>>2];ne=z[f+648>>2];oe=z[f+472>>2];pe=z[f+296>>2];qe=z[f+644>>2];re=z[f+468>>2];se=z[f+292>>2];te=z[f+672>>2];ue=z[f+668>>2];ve=z[f+664>>2];Xa=z[f+496>>2];Ya=z[f+492>>2];Za=z[f+488>>2];_a=z[f+320>>2];qa=z[f+316>>2];Aa=z[f+312>>2];da=z[f+144>>2];V=z[f+140>>2];ea=z[f+540>>2];fa=z[f+364>>2];ga=z[f+188>>2];ja=z[f+532>>2];X=z[f+356>>2];Y=z[f+180>>2];qb=z[v[f+212>>2]+32>>2];Ja=z[v[f+388>>2]+32>>2];rb=z[v[f+564>>2]+32>>2];$a=z[f+184>>2];ab=z[v[f+216>>2]+32>>2];bb=z[f+360>>2];cb=z[v[f+392>>2]+32>>2];db=z[f+536>>2];ka=z[v[f+568>>2]+32>>2];la=z[f+136>>2];ma=z[f+12>>2];Z=z[f+4>>2];S=z[f>>2];L=z[v[f+36>>2]+32>>2];p=z[f+176>>2];D=z[f+352>>2];O=z[f+528>>2];J=z[f+8>>2];N=z[v[f+40>>2]+32>>2];E=z[f+116>>2];b=z[f+120>>2];t[d+12|0]=E!=C(34028234663852886e22)|b!=C(34028234663852886e22);t[d+13|0]=z[f+292>>2]==C(34028234663852886e22)?z[f+296>>2]!=C(34028234663852886e22):1;t[d+14|0]=z[f+468>>2]==C(34028234663852886e22)?z[f+472>>2]!=C(34028234663852886e22):1;A=z[f+644>>2]==C(34028234663852886e22)?z[f+648>>2]!=C(34028234663852886e22):A;c=d+640|0;z[d+112>>2]=la;z[d+96>>2]=ma;z[d+80>>2]=Z;we=C(J*N);z[d+64>>2]=we;xe=C(S*L);z[d+48>>2]=xe;z[d+156>>2]=te;z[d+152>>2]=Xa;z[d+148>>2]=_a;z[d+144>>2]=da;z[d+140>>2]=ue;z[d+136>>2]=Ya;z[d+132>>2]=qa;z[d+128>>2]=V;z[d+124>>2]=ve;z[d+120>>2]=Za;z[d+116>>2]=Aa;z[d+108>>2]=ea;z[d+104>>2]=fa;z[d+100>>2]=ga;z[d+92>>2]=ja;z[d+88>>2]=X;z[d+84>>2]=Y;sb=C(db*ka);z[d+76>>2]=sb;yc=C(bb*cb);z[d+72>>2]=yc;zc=C($a*ab);z[d+68>>2]=zc;Ac=C(O*rb);z[d+60>>2]=Ac;Bc=C(D*Ja);z[d+56>>2]=Bc;Cc=C(p*qb);z[d+52>>2]=Cc;t[d+15|0]=A;z[d+16>>2]=E*eb;v[d+4>>2]=Yb;z[d+20>>2]=se*eb;z[d+24>>2]=re*eb;z[d+28>>2]=qe*eb;z[d+32>>2]=b*eb;z[d+36>>2]=pe*eb;z[d+40>>2]=oe*eb;z[d+44>>2]=ne*eb;t[d|0]=9;t[d+8|0]=v[f+112>>2];t[d+9|0]=v[f+288>>2];t[d+10|0]=v[f+464>>2];t[d+11|0]=v[f+640>>2];Nb=v[f+568>>2];Rc=z[Nb+24>>2];Sc=z[Nb+20>>2];Oa=v[f+564>>2];Tc=z[Oa+24>>2];Dc=z[Oa+20>>2];Ga=v[f+392>>2];Ec=z[Ga+24>>2];Fc=z[Ga+20>>2];n=v[f+388>>2];Gc=z[n+24>>2];Hc=z[n+20>>2];T=v[f+216>>2];Ic=z[T+24>>2];Jc=z[T+20>>2];M=v[f+212>>2];Kc=z[M+24>>2];Gb=z[M+20>>2];r=v[f+40>>2];Hb=z[r+24>>2];Ib=z[r+20>>2];q=v[f+36>>2];Jb=z[q+24>>2];Ha=z[q+20>>2];ra=z[f+152>>2];o=v[f+28>>2];sa=z[o+20>>2];ua=z[f+328>>2];G=v[f+204>>2];Uc=z[G+20>>2];Vc=z[f+504>>2];j=v[f+380>>2];Wc=z[j+20>>2];Xc=z[f+680>>2];l=v[f+556>>2];Yc=z[l+20>>2];Zc=z[f+156>>2];_c=z[o+24>>2];$c=z[f+332>>2];ad=z[G+24>>2];bd=z[f+508>>2];cd=z[j+24>>2];Ad=z[f+684>>2];Bd=z[l+24>>2];Cd=z[f+164>>2];m=v[f+32>>2];Dd=z[m+20>>2];Ed=z[f+340>>2];h=v[f+208>>2];Fd=z[h+20>>2];Gd=z[f+516>>2];g=v[f+384>>2];Hd=z[g+20>>2];Id=z[f+692>>2];k=v[f+560>>2];Jd=z[k+20>>2];Kd=z[f+168>>2];Ld=z[m+24>>2];V=z[f+344>>2];qb=z[h+24>>2];Ja=z[f+520>>2];rb=z[g+24>>2];$a=z[f+696>>2];ab=z[k+24>>2];bb=z[f+324>>2];cb=z[G+16>>2];db=z[f+500>>2];ka=z[j+16>>2];la=z[f+676>>2];S=z[l+16>>2];L=z[f+336>>2];p=z[h+16>>2];D=z[f+512>>2];O=z[g+16>>2];Vf=z[Nb+16>>2];Wf=z[Oa+16>>2];Xf=z[Nb+8>>2];Yf=z[Nb+4>>2];Zf=z[Nb>>2];_f=z[Oa+8>>2];$f=z[Oa+4>>2];ag=z[Oa>>2];bg=z[Ga+16>>2];cg=z[n+16>>2];dg=z[Ga+8>>2];eg=z[Ga+4>>2];fg=z[Ga>>2];gg=z[n+8>>2];hg=z[n+4>>2];ig=z[n>>2];ne=z[T+16>>2];oe=z[M+16>>2];pe=z[T+8>>2];qe=z[T+4>>2];re=z[T>>2];se=z[M+8>>2];te=z[M+4>>2];ue=z[M>>2];ve=z[r+16>>2];Xa=z[q+16>>2];Ya=z[r+8>>2];Za=z[r+4>>2];_a=z[r>>2];qa=z[q+8>>2];Aa=z[q+4>>2];da=z[q>>2];J=z[f+148>>2];N=z[o+16>>2];E=z[f+160>>2];b=z[m+16>>2];z[d+220>>2]=z[f+688>>2]-z[k+16>>2];z[d+216>>2]=D-O;z[d+212>>2]=L-p;z[d+208>>2]=E-b;z[d+172>>2]=la-S;z[d+168>>2]=db-ka;z[d+164>>2]=bb-cb;z[d+160>>2]=J-N;z[d+252>>2]=$a-ab;z[d+248>>2]=Ja-rb;z[d+244>>2]=V-qb;z[d+240>>2]=Kd-Ld;z[d+236>>2]=Id-Jd;z[d+232>>2]=Gd-Hd;z[d+228>>2]=Ed-Fd;z[d+224>>2]=Cd-Dd;z[d+204>>2]=Ad-Bd;z[d+200>>2]=bd-cd;z[d+196>>2]=$c-ad;z[d+192>>2]=Zc-_c;z[d+188>>2]=Xc-Yc;z[d+184>>2]=Vc-Wc;z[d+180>>2]=ua-Uc;z[d+176>>2]=ra-sa;m=v[f+288>>2];h=v[f+464>>2];g=v[f+640>>2];k=v[f+112>>2];v[d+264>>2]=0;v[d+268>>2]=0;v[d+256>>2]=0;v[d+260>>2]=0;v[d+304>>2]=0;v[d+308>>2]=0;v[d+312>>2]=0;v[d+316>>2]=0;v[d+352>>2]=0;v[d+356>>2]=0;v[d+360>>2]=0;v[d+364>>2]=0;v[d+400>>2]=0;v[d+404>>2]=0;v[d+408>>2]=0;v[d+412>>2]=0;v[d+448>>2]=0;v[d+452>>2]=0;v[d+456>>2]=0;v[d+460>>2]=0;v[d+496>>2]=0;v[d+500>>2]=0;v[d+504>>2]=0;v[d+508>>2]=0;v[d+544>>2]=0;v[d+548>>2]=0;v[d+552>>2]=0;v[d+556>>2]=0;v[d+600>>2]=0;v[d+604>>2]=0;v[d+592>>2]=0;v[d+596>>2]=0;v[d+280>>2]=0;v[d+284>>2]=0;v[d+272>>2]=0;v[d+276>>2]=0;v[d+328>>2]=0;v[d+332>>2]=0;v[d+320>>2]=0;v[d+324>>2]=0;v[d+368>>2]=0;v[d+372>>2]=0;v[d+376>>2]=0;v[d+380>>2]=0;v[d+416>>2]=0;v[d+420>>2]=0;v[d+424>>2]=0;v[d+428>>2]=0;v[d+464>>2]=0;v[d+468>>2]=0;v[d+472>>2]=0;v[d+476>>2]=0;v[d+512>>2]=0;v[d+516>>2]=0;v[d+520>>2]=0;v[d+524>>2]=0;v[d+560>>2]=0;v[d+564>>2]=0;v[d+568>>2]=0;v[d+572>>2]=0;v[d+608>>2]=0;v[d+612>>2]=0;v[d+616>>2]=0;v[d+620>>2]=0;v[d+296>>2]=0;v[d+300>>2]=0;v[d+288>>2]=0;v[d+292>>2]=0;v[d+344>>2]=0;v[d+348>>2]=0;v[d+336>>2]=0;v[d+340>>2]=0;v[d+392>>2]=0;v[d+396>>2]=0;v[d+384>>2]=0;v[d+388>>2]=0;v[d+440>>2]=0;v[d+444>>2]=0;v[d+432>>2]=0;v[d+436>>2]=0;v[d+488>>2]=0;v[d+492>>2]=0;v[d+480>>2]=0;v[d+484>>2]=0;v[d+536>>2]=0;v[d+540>>2]=0;v[d+528>>2]=0;v[d+532>>2]=0;v[d+584>>2]=0;v[d+588>>2]=0;v[d+576>>2]=0;v[d+580>>2]=0;v[d+632>>2]=0;v[d+636>>2]=0;v[d+624>>2]=0;v[d+628>>2]=0;if(Yb){Lc=d+592|0;_b=d+544|0;tb=d+496|0;wb=d+448|0;Tb=d+400|0;Qb=d+352|0;Qc=d+304|0;dd=d+256|0;M=k-1|0;r=(e+g|0)-1|0;q=(h+Fb|0)-1|0;o=(m+Eb|0)-1|0;_=eb>2];ya=v[d+(Eb<<2)>>2];Se=x[ya+76>>1];Pa=C(1);ha=v[d+($b<<2)>>2];m=x[ha+76>>1];Pa=m&32?w[f+134|0]?_:C(1):Pa;za=v[(W+1552|0)+(e<<2)>>2];ye=x[wa+76>>1];Qa=C(1);Ra=C(1);Ra=Se&32?w[f+310|0]?_:C(1):Ra;Ob=x[za+76>>1];Qa=ye&32?w[f+486|0]?_:C(1):Qa;ze=v[f+640>>2];Nb=v[f+464>>2];Oa=v[f+288>>2];Ga=v[f+112>>2];ub=C(1);ub=Ob&32?w[f+662|0]?_:C(1):ub;g=e<<4;Md=W+16|0;n=g+Md|0;oa=z[n+4>>2];pa=z[n>>2];k=Fb<<4;T=k+Md|0;$=z[T+4>>2];aa=z[T>>2];d=Eb<<4;h=d+Md|0;ba=z[h+4>>2];P=z[h>>2];Nd=W+784|0;g=Nd+g|0;ua=z[g+4>>2];Uc=z[g>>2];k=k+Nd|0;Vc=z[k+4>>2];Wc=z[k>>2];d=d+Nd|0;Xc=z[d+4>>2];Yc=z[d>>2];ed=z[n+8>>2];fd=z[T+8>>2];gd=z[h+8>>2];Zc=z[g+8>>2];_c=z[k+8>>2];$c=z[d+8>>2];d=$b<<4;k=d+Md|0;hd=z[k+8>>2];id=z[k+4>>2];jd=z[k>>2];d=d+Nd|0;ad=z[d+8>>2];bd=z[d+4>>2];cd=z[d>>2];V=z[ha+52>>2];qb=z[ya+52>>2];Ja=z[wa+52>>2];rb=z[za+52>>2];$a=z[ha+56>>2];ab=z[ya+56>>2];bb=z[wa+56>>2];cb=z[za+56>>2];Ad=z[ha+20>>2];Bd=z[ya+20>>2];Cd=z[wa+20>>2];Dd=z[za+20>>2];Ed=z[ha+24>>2];Fd=z[ya+24>>2];Gd=z[wa+24>>2];Hd=z[za+24>>2];db=z[ha+48>>2];ka=z[ya+48>>2];la=z[wa+48>>2];S=z[za+48>>2];L=z[ha+44>>2];p=z[ya+44>>2];D=z[wa+44>>2];O=z[za+44>>2];J=z[ha+60>>2];N=z[ya+60>>2];E=z[wa+60>>2];b=z[za+60>>2];Id=z[ha+16>>2];Jd=z[ya+16>>2];Kd=z[wa+16>>2];Ld=z[za+16>>2];kd=z[ha>>2];ld=z[ya>>2];md=z[wa>>2];nd=z[za>>2];od=z[ha+4>>2];pd=z[ya+4>>2];qd=z[wa+4>>2];rd=z[za+4>>2];sd=z[ha+8>>2];td=z[ya+8>>2];ud=z[wa+8>>2];vd=z[za+8>>2];v[c+360>>2]=0;v[c+364>>2]=0;v[c+352>>2]=0;v[c+356>>2]=0;h=Ob&64;z[c+348>>2]=h?C(1):C(0);g=ye&64;z[c+344>>2]=g?C(1):C(0);k=Se&64;z[c+340>>2]=k?C(1):C(0);d=m&64;z[c+336>>2]=d?C(1):C(0);Ob=A>>>0>>0;z[c+44>>2]=Ob?vd:C(0);n=A>>>0>>0;z[c+40>>2]=n?ud:C(0);T=A>>>0>>0;z[c+36>>2]=T?td:C(0);m=A>>>0>>0;z[c+32>>2]=m?sd:C(0);z[c+28>>2]=Ob?rd:C(0);z[c+24>>2]=n?qd:C(0);z[c+20>>2]=T?pd:C(0);z[c+16>>2]=m?od:C(0);z[c+12>>2]=Ob?nd:C(0);z[c+8>>2]=n?md:C(0);z[c+4>>2]=T?ld:C(0);z[c>>2]=m?kd:C(0);h=!h|A>>>0>=ze>>>0;z[c+172>>2]=h?C(0):Hd;g=!g|A>>>0>=Nb>>>0;z[c+168>>2]=g?C(0):Gd;k=!k|A>>>0>=Oa>>>0;z[c+164>>2]=k?C(0):Fd;d=!d|A>>>0>=Ga>>>0;z[c+160>>2]=d?C(0):Ed;z[c+156>>2]=h?C(0):Dd;z[c+152>>2]=g?C(0):Cd;z[c+148>>2]=k?C(0):Bd;z[c+144>>2]=d?C(0):Ad;z[c+140>>2]=h?C(0):Ld;z[c+136>>2]=g?C(0):Kd;z[c+132>>2]=k?C(0):Jd;z[c+128>>2]=d?C(0):Id;z[c+300>>2]=ub*b;z[c+296>>2]=Qa*E;z[c+292>>2]=Ra*N;z[c+288>>2]=Pa*J;z[c+284>>2]=ub*O;z[c+280>>2]=Qa*D;z[c+276>>2]=Ra*p;z[c+272>>2]=Pa*L;v[c+304>>2]=0;v[c+308>>2]=0;v[c+312>>2]=0;v[c+316>>2]=0;wd=z[ha+36>>2];xd=z[ya+36>>2];yd=z[wa+36>>2];Zb=z[za+36>>2];ra=z[ha+40>>2];sa=z[ya+40>>2];L=z[wa+40>>2];p=z[za+40>>2];D=z[ha+32>>2];O=z[ya+32>>2];J=z[wa+32>>2];N=z[za+32>>2];z[c+236>>2]=h?C(0):cb;z[c+232>>2]=g?C(0):bb;z[c+228>>2]=k?C(0):ab;z[c+224>>2]=d?C(0):$a;z[c+220>>2]=h?C(0):rb;z[c+216>>2]=g?C(0):Ja;z[c+212>>2]=k?C(0):qb;z[c+208>>2]=d?C(0):V;z[c+204>>2]=h?C(0):S;z[c+200>>2]=g?C(0):la;z[c+196>>2]=k?C(0):ka;z[c+192>>2]=d?C(0):db;z[c+108>>2]=Ob?p:C(0);z[c+104>>2]=n?L:C(0);z[c+100>>2]=T?sa:C(0);z[c+96>>2]=m?ra:C(0);z[c+92>>2]=Ob?Zb:C(0);z[c+88>>2]=n?yd:C(0);z[c+84>>2]=T?xd:C(0);z[c+80>>2]=m?wd:C(0);z[c+76>>2]=Ob?N:C(0);z[c+72>>2]=n?J:C(0);z[c+68>>2]=T?O:C(0);z[c+64>>2]=m?D:C(0);m=c+240|0;h=c+176|0;g=c+320|0;n=c+48|0;k=c+112|0;d=c+256|0;I:{J:{if(y[f+112>>2]<=A>>>0){v[n>>2]=0;v[k>>2]=0;v[g>>2]=0;v[h>>2]=0;v[m>>2]=0;v[W>>2]=0;b=C(0);break J}E=C(C(C(da*kd)+C(C(Aa*od)+C(qa*sd)))+C(C(Xa*Id)+C(C(Ha*Ad)+C(Jb*Ed))));b=C(C(C(ve*jd)+C(C(Ib*id)+C(Hb*hd)))+C(C(_a*D)+C(C(Za*wd)+C(Ya*ra))));nB(n,k,d,g,h,m,W,ha,C(E-b),C(C(C(Z*C(C(ad*ad)+C(C(cd*cd)+C(bd*bd))))+C(xe*C(C(sd*sd)+C(C(kd*kd)+C(od*od)))))+C(C(ma*C(C(hd*hd)+C(C(jd*jd)+C(id*id))))+C(we*C(C(ra*ra)+C(C(D*D)+C(wd*wd)))))),z[f+124>>2],C(1),le,eb,x[ha+76>>1]&64?C(100):na,pb,Sb);if(R){z[d>>2]=z[d>>2]-E}if(!U){break I}b=C(b+z[d>>2])}z[d>>2]=b}T=c+244|0;m=c+180|0;h=c+324|0;g=c+116|0;k=c+52|0;d=c+260|0;K:{L:{if(y[f+288>>2]<=A>>>0){v[k>>2]=0;v[g>>2]=0;v[h>>2]=0;v[m>>2]=0;v[T>>2]=0;v[W+4>>2]=0;b=C(0);break L}E=C(C(C(ue*ld)+C(C(te*pd)+C(se*td)))+C(C(oe*Jd)+C(C(Gb*Bd)+C(Kc*Fd))));b=C(C(C(ne*P)+C(C(Jc*ba)+C(Ic*gd)))+C(C(re*O)+C(C(qe*xd)+C(pe*sa))));nB(k,g,d,h,m,T,l,ya,C(E-b),C(C(C(Y*C(C($c*$c)+C(C(Yc*Yc)+C(Xc*Xc))))+C(Cc*C(C(td*td)+C(C(ld*ld)+C(pd*pd)))))+C(C(ga*C(C(gd*gd)+C(C(P*P)+C(ba*ba))))+C(zc*C(C(sa*sa)+C(C(O*O)+C(xd*xd)))))),z[f+300>>2],C(1),le,eb,x[ya+76>>1]&64?C(100):na,pb,Sb);if(ia){z[d>>2]=z[d>>2]-E}if(!H){break K}b=C(b+z[d>>2])}z[d>>2]=b}T=c+248|0;m=c+184|0;h=c+328|0;g=c+120|0;k=c+56|0;d=c+264|0;M:{N:{if(y[f+464>>2]<=A>>>0){v[k>>2]=0;v[g>>2]=0;v[h>>2]=0;v[m>>2]=0;v[T>>2]=0;v[W+8>>2]=0;b=C(0);break N}E=C(C(C(ig*md)+C(C(hg*qd)+C(gg*ud)))+C(C(cg*Kd)+C(C(Hc*Cd)+C(Gc*Gd))));b=C(C(C(bg*aa)+C(C(Fc*$)+C(Ec*fd)))+C(C(fg*J)+C(C(eg*yd)+C(dg*L))));nB(k,g,d,h,m,T,j,wa,C(E-b),C(C(C(X*C(C(_c*_c)+C(C(Wc*Wc)+C(Vc*Vc))))+C(Bc*C(C(ud*ud)+C(C(md*md)+C(qd*qd)))))+C(C(fa*C(C(fd*fd)+C(C(aa*aa)+C($*$))))+C(yc*C(C(L*L)+C(C(J*J)+C(yd*yd)))))),z[f+476>>2],C(1),le,eb,x[wa+76>>1]&64?C(100):na,pb,Sb);if(ta){z[d>>2]=z[d>>2]-E}if(!ca){break M}b=C(b+z[d>>2])}z[d>>2]=b}T=c+252|0;m=c+188|0;h=c+332|0;g=c+124|0;k=c+60|0;d=c+268|0;O:{P:{if(y[f+640>>2]<=A>>>0){v[k>>2]=0;v[g>>2]=0;v[h>>2]=0;v[m>>2]=0;v[T>>2]=0;v[W+12>>2]=0;b=C(0);break P}E=C(C(C(ag*nd)+C(C($f*rd)+C(_f*vd)))+C(C(Wf*Ld)+C(C(Dc*Dd)+C(Tc*Hd))));b=C(C(C(Vf*pa)+C(C(Sc*oa)+C(Rc*ed)))+C(C(Zf*N)+C(C(Yf*Zb)+C(Xf*p))));nB(k,g,d,h,m,T,G,za,C(E-b),C(C(C(ja*C(C(Zc*Zc)+C(C(Uc*Uc)+C(ua*ua))))+C(Ac*C(C(vd*vd)+C(C(nd*nd)+C(rd*rd)))))+C(C(ea*C(C(ed*ed)+C(C(pa*pa)+C(oa*oa))))+C(sb*C(C(p*p)+C(C(N*N)+C(Zb*Zb)))))),z[f+652>>2],C(1),le,eb,x[za+76>>1]&64?C(100):na,pb,Sb);if(s){z[d>>2]=z[d>>2]-E}if(!fb){break O}b=C(b+z[d>>2])}z[d>>2]=b}Ga=x[ha+78>>1];Q:{if(w[f+132|0]|y[f+112>>2]<=A>>>0){break Q}if((Ga|0)==1024){v[c+352>>2]=v[c+352>>2]|8;d=va<<4;z[d+dd>>2]=Z*cd;z[d+Qc>>2]=Z*bd;z[d+Qb>>2]=Z*ad;z[d+Tb>>2]=ma*jd;z[d+wb>>2]=ma*id;z[d+tb>>2]=ma*hd;z[d+_b>>2]=z[W>>2];z[d+Lc>>2]=z[n>>2];va=va+1|0;break Q}if(!(Ga&2048)){break Q}v[c+352>>2]=v[c+352>>2]|16}n=x[ya+78>>1];R:{if(w[f+308|0]|y[f+288>>2]<=A>>>0){break R}if((n|0)==1024){v[c+356>>2]=v[c+356>>2]|8;d=Wa<<4;z[(d+dd|0)+4>>2]=Y*Yc;z[(d+Qc|0)+4>>2]=Y*Xc;z[(d+Qb|0)+4>>2]=Y*$c;z[(d+Tb|0)+4>>2]=ga*P;z[(d+wb|0)+4>>2]=ga*ba;z[(d+tb|0)+4>>2]=ga*gd;z[(d+_b|0)+4>>2]=z[W+4>>2];z[(d+Lc|0)+4>>2]=z[c+52>>2];Wa=Wa+1|0;break R}if(!(n&2048)){break R}v[c+356>>2]=v[c+356>>2]|16}T=x[wa+78>>1];S:{if(w[f+484|0]|y[f+464>>2]<=A>>>0){break S}if((T|0)==1024){v[c+360>>2]=v[c+360>>2]|8;d=Lb<<4;z[(d+dd|0)+8>>2]=X*Wc;z[(d+Qc|0)+8>>2]=X*Vc;z[(d+Qb|0)+8>>2]=X*_c;z[(d+Tb|0)+8>>2]=fa*aa;z[(d+wb|0)+8>>2]=fa*$;z[(d+tb|0)+8>>2]=fa*fd;z[(d+_b|0)+8>>2]=z[W+8>>2];z[(d+Lc|0)+8>>2]=z[c+56>>2];Lb=Lb+1|0;break S}if(!(T&2048)){break S}v[c+360>>2]=v[c+360>>2]|16}m=x[za+78>>1];T:{if(w[f+660|0]|y[f+640>>2]<=A>>>0){break T}if((m|0)==1024){v[c+364>>2]=v[c+364>>2]|8;d=Mb<<4;z[(d+dd|0)+12>>2]=ja*Uc;z[(d+Qc|0)+12>>2]=ja*ua;z[(d+Qb|0)+12>>2]=ja*Zc;z[(d+Tb|0)+12>>2]=ea*pa;z[(d+wb|0)+12>>2]=ea*oa;z[(d+tb|0)+12>>2]=ea*ed;z[(d+_b|0)+12>>2]=z[W+12>>2];z[(d+Lc|0)+12>>2]=z[c+60>>2];Mb=Mb+1|0;break T}if(!(m&2048)){break T}v[c+364>>2]=v[c+364>>2]|16}h=x[ha+76>>1];if(h&16){v[c+352>>2]=v[c+352>>2]|2}g=x[ya+76>>1];if(g&16){v[c+356>>2]=v[c+356>>2]|2}k=x[wa+76>>1];if(k&16){v[c+360>>2]=v[c+360>>2]|2}d=x[za+76>>1];if(d&16){v[c+364>>2]=v[c+364>>2]|2}if(h&8){v[c+352>>2]=v[c+352>>2]|4}if(g&8){v[c+356>>2]=v[c+356>>2]|4}if(k&8){v[c+360>>2]=v[c+360>>2]|4}if(d&8){v[c+364>>2]=v[c+364>>2]|4}if(Ga&1){v[c+352>>2]=v[c+352>>2]|64}if(n&1){v[c+356>>2]=v[c+356>>2]|64}if(T&1){v[c+360>>2]=v[c+360>>2]|64}if(m&1){v[c+364>>2]=v[c+364>>2]|64}c=c+368|0;e=((e|0)!=(r|0))+e|0;Fb=((q|0)!=(Fb|0))+Fb|0;Eb=((o|0)!=(Eb|0))+Eb|0;$b=((M|0)!=($b|0))+$b|0;A=A+1|0;if((Yb|0)!=(A|0)){continue}break}}v[c>>2]=0;v[c+4>>2]=0;c=2}xa=W+1744|0;e=c}xa=me+3840|0}else{e=1}if((e|0)==2){break a}e=0;if(Na){break a}while(1){oB((Q+32|0)+(e<<4)|0,(Q+96|0)+B(e,176)|0,Q+808|0,le,eb,pb,Sb,z[Kb+612>>2]);e=e+1|0;if((Pc|0)!=(e|0)){continue}break}break a}e=x[Yb+4>>1]}if((e&65535)==4){d=Q+32|0;Te=z[Kb+84>>2];N=z[Kb+88>>2];J=z[Kb+100>>2];F=z[Kb+92>>2];Wa=Q+808|0;G=0;gb=xa-32|0;xa=gb;i=Q+96|0;u[v[i+16>>2]+22>>1]=0;u[v[i+192>>2]+22>>1]=0;u[v[i+368>>2]+22>>1]=0;u[v[i+544>>2]+22>>1]=0;v[Oc+4112>>2]=0;n=Oc+4128|0;g=Oc+16|0;k=1;U:{while(1){h=i+B(G,176)|0;c=v[Oc+4112>>2];v[h+112>>2]=g+(c<<6);e=v[d+(G<<2)>>2];if(c+w[e+12|0]>>>0>64|z[h+164>>2]!=C(0)|z[h+168>>2]!=C(0)){break U}t[gb+31|0]=0;t[gb+30|0]=0;E=z[v[h+36>>2]+12>>2];b=z[v[h+40>>2]+12>>2];e=ty(g,e,gb+31|0,gb+30|0,gb+24|0,gb+20|0,gb+16|0,gb+12|0,b>E?E:b);if(!e|w[gb+30|0]){break U}v[h+116>>2]=e;t[h+120|0]=w[gb+31|0];z[h>>2]=z[gb+24>>2]*z[h>>2];z[h+8>>2]=z[gb+20>>2]*z[h+8>>2];z[h+4>>2]=z[h+4>>2]*(w[v[h+20>>2]+62|0]?C(0):z[gb+16>>2]);z[h+12>>2]=z[h+12>>2]*(w[v[h+24>>2]+62|0]?C(0):z[gb+12>>2]);G=G+1|0;if((G|0)!=4){continue}break}m=0;ia=0;j=0;U=0;H=0;r=0;Na=0;q=0;Pb=0;Od=0;Ae=0;Be=0;f=0;Eb=0;Fb=0;$b=0;Lc=0;I=xa-160|0;xa=I;v[n+7684>>2]=0;v[n+7688>>2]=0;l=n+7296|0;V:{while(1){e=U<<2;o=i+B(U,176)|0;z[e+(I+144|0)>>2]=z[o>>2];z[e+(I+128|0)>>2]=z[o+8>>2];z[e+(I+112|0)>>2]=z[o+4>>2];z[e+(I+96|0)>>2]=z[o+12>>2];v[o+144>>2]=m;W:{if(w[o+121|0]){break W}if(uy(n,v[o+132>>2],w[o+136|0],o+44|0,o+72|0,J)){break W}g=1;break V}v[o+152>>2]=v[n+7684>>2];g=1;if(!$z(n,v[o+112>>2],v[o+116>>2])){break V}d=v[o+152>>2];u[o+156>>1]=v[n+7684>>2]-d;c=o+44|0;e=o+72|0;if(aA(n,v[o+112>>2],c,e,d,v[o+144>>2])){break V}bA(n,v[o+112>>2],c,e,J,v[o+144>>2],C(z[o+124>>2]+N));m=v[n+7688>>2];h=m;G=v[o+144>>2];if(h>>>0>G>>>0){while(1){e=h-1|0;if(v[(n+(e<<2)|0)+7424>>2]==65535){if(h>>>0>>0){while(1){d=n+7424|0;k=h<<2;c=k-4|0;v[d+c>>2]=v[d+k>>2];v[c+l>>2]=v[k+l>>2];h=h+1|0;m=v[n+7688>>2];if(h>>>0>>0){continue}break}G=v[o+144>>2]}m=m-1|0;v[n+7688>>2]=m}h=e;if(e>>>0>G>>>0){continue}break}}v[o+148>>2]=m-G;U=U+1|0;if((U|0)!=4){continue}break}U=0;m=0;h=v[i+144>>2];d=v[i+148>>2];X:{if(h>>>0>=d+h>>>0){break X}G=0;if(d-1>>>0>=3){e=d&-4;while(1){c=n+(h<<2)|0;m=((((v[c+7424>>2]!=65535)+m|0)+(v[c+7428>>2]!=65535)|0)+(v[c+7432>>2]!=65535)|0)+(v[c+7436>>2]!=65535)|0;h=h+4|0;ia=ia+4|0;if((e|0)!=(ia|0)){continue}break}}e=d&3;if(e){while(1){m=(v[(n+(h<<2)|0)+7424>>2]!=65535)+m|0;h=h+1|0;G=G+1|0;if((e|0)!=(G|0)){continue}break}}e=B(m,104)+15&-16;if(!e){break X}g=0;U=Ba[v[v[Wa>>2]+4>>2]](Wa,e)|0;if(U+1>>>0<2){break V}}h=v[i+320>>2];d=v[i+324>>2];Y:{if(h>>>0>=d+h>>>0){break Y}ia=0;if(d-1>>>0>=3){e=d&-4;g=0;while(1){c=n+(h<<2)|0;r=((((v[c+7424>>2]!=65535)+r|0)+(v[c+7428>>2]!=65535)|0)+(v[c+7432>>2]!=65535)|0)+(v[c+7436>>2]!=65535)|0;h=h+4|0;g=g+4|0;if((e|0)!=(g|0)){continue}break}}e=d&3;if(e){while(1){r=(v[(n+(h<<2)|0)+7424>>2]!=65535)+r|0;h=h+1|0;ia=ia+1|0;if((e|0)!=(ia|0)){continue}break}}e=B(r,104)+15&-16;if(!e){break Y}g=0;H=Ba[v[v[Wa>>2]+4>>2]](Wa,e)|0;if(H+1>>>0<2){break V}}G=0;h=v[i+496>>2];d=v[i+500>>2];Z:{if(h>>>0>=d+h>>>0){break Z}g=0;if(d-1>>>0>=3){e=d&-4;while(1){c=n+(h<<2)|0;G=((((v[c+7424>>2]!=65535)+G|0)+(v[c+7428>>2]!=65535)|0)+(v[c+7432>>2]!=65535)|0)+(v[c+7436>>2]!=65535)|0;h=h+4|0;Na=Na+4|0;if((e|0)!=(Na|0)){continue}break}}e=d&3;if(e){while(1){G=(v[(n+(h<<2)|0)+7424>>2]!=65535)+G|0;h=h+1|0;g=g+1|0;if((e|0)!=(g|0)){continue}break}}e=B(G,104)+15&-16;if(!e){break Z}g=0;q=Ba[v[v[Wa>>2]+4>>2]](Wa,e)|0;if(q+1>>>0<2){break V}}ia=0;h=v[i+672>>2];d=v[i+676>>2];_:{if(h>>>0>=d+h>>>0){break _}Na=0;if(d-1>>>0>=3){e=d&-4;k=0;while(1){c=n+(h<<2)|0;ia=((((v[c+7424>>2]!=65535)+ia|0)+(v[c+7428>>2]!=65535)|0)+(v[c+7432>>2]!=65535)|0)+(v[c+7436>>2]!=65535)|0;h=h+4|0;k=k+4|0;if((e|0)!=(k|0)){continue}break}}e=d&3;if(e){while(1){ia=(v[(n+(h<<2)|0)+7424>>2]!=65535)+ia|0;h=h+1|0;Na=Na+1|0;if((e|0)!=(Na|0)){continue}break}}e=B(ia,104)+15&-16;if(!e){break _}g=0;j=Ba[v[v[Wa>>2]+4>>2]](Wa,e)|0;if(j+1>>>0<2){break V}}Na=0;v[I+92>>2]=0;h=0;g=0;e=xa-256|0;xa=e;I9(e+128|0,0,128);va=I9(e,0,128);l=w[i+120|0];Lb=v[i+148>>2];if(Lb){d=v[i+144>>2];while(1){k=0;e=d+g|0;M=n+B(e,104)|0;if(!(t[M+2817|0]&1)){k=x[M+2818>>1]!=0}R=v[(n+(e<<2)|0)+7296>>2];$:{if(!R){break $}c=g<<2;e=c+(va+128|0)|0;o=v[e>>2];v[e>>2]=o>>>0>>0?R:o;h=h+R|0;if(!k){break $}e=c+va|0;c=v[e>>2];k=e;e=x[M+2818>>1]<<1;v[k>>2]=c>>>0>>0?e:c;h=e+h|0}g=g+1|0;if((Lb|0)!=(g|0)){continue}break}}Mb=I- -64|0;v[Mb>>2]=h;o=1;o=l?o:w[i+296|0]!=0;fb=v[i+324>>2];aa:{if(!fb){h=0;break aa}d=v[i+320>>2];g=0;h=0;while(1){k=0;e=d+g|0;M=n+B(e,104)|0;if(!(t[M+2817|0]&1)){k=x[M+2818>>1]!=0}R=v[(n+(e<<2)|0)+7296>>2];ba:{if(!R){break ba}c=g<<2;e=c+(va+128|0)|0;l=v[e>>2];v[e>>2]=l>>>0>>0?R:l;h=h+R|0;if(!k){break ba}e=c+va|0;c=v[e>>2];l=e;e=x[M+2818>>1]<<1;v[l>>2]=c>>>0>>0?e:c;h=e+h|0}g=g+1|0;if((fb|0)!=(g|0)){continue}break}}v[Mb+4>>2]=h;ca=1;ca=o?ca:w[i+472|0]!=0;s=v[i+500>>2];ca:{if(!s){h=0;break ca}d=v[i+496>>2];g=0;h=0;while(1){k=0;e=d+g|0;o=n+B(e,104)|0;if(!(t[o+2817|0]&1)){k=x[o+2818>>1]!=0}M=v[(n+(e<<2)|0)+7296>>2];da:{if(!M){break da}c=g<<2;e=c+(va+128|0)|0;l=v[e>>2];v[e>>2]=l>>>0>>0?M:l;h=h+M|0;if(!k){break da}e=c+va|0;c=v[e>>2];l=e;e=x[o+2818>>1]<<1;v[l>>2]=c>>>0>>0?e:c;h=e+h|0}g=g+1|0;if((s|0)!=(g|0)){continue}break}}v[Mb+8>>2]=h;o=1;o=ca?o:w[i+648|0]!=0;k=0;R=0;ca=v[i+676>>2];if(ca){d=v[i+672>>2];g=0;while(1){h=0;e=d+g|0;M=n+B(e,104)|0;if(!(t[M+2817|0]&1)){h=x[M+2818>>1]!=0}ta=v[(n+(e<<2)|0)+7296>>2];ea:{if(!ta){break ea}c=g<<2;e=c+(va+128|0)|0;l=v[e>>2];v[e>>2]=l>>>0>>0?ta:l;R=R+ta|0;if(!h){break ea}e=c+va|0;c=v[e>>2];l=e;e=x[M+2818>>1]<<1;v[l>>2]=c>>>0>>0?e:c;R=e+R|0}g=g+1|0;if((ca|0)!=(g|0)){continue}break}}v[Mb+12>>2]=R;g=0;e=Lb>>>0>>0?fb:Lb;e=e>>>0>>0?s:e;ca=e>>>0>>0?ca:e;fa:{if(!ca){break fa}h=0;M=0;if(ca-1>>>0>=3){l=ca&-4;R=0;while(1){ta=M<<2;d=ta|12;c=ta|8;e=ta|4;g=v[d+va>>2]+(v[c+va>>2]+(v[e+va>>2]+(v[va+ta>>2]+g|0)|0)|0)|0;s=d;d=va+128|0;k=v[s+d>>2]+(v[c+d>>2]+(v[d+e>>2]+(v[d+ta>>2]+k|0)|0)|0)|0;M=M+4|0;R=R+4|0;if((l|0)!=(R|0)){continue}break}}c=ca&3;if(!c){break fa}while(1){e=M<<2;g=v[e+va>>2]+g|0;k=v[e+(va+128|0)>>2]+k|0;M=M+1|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}v[I+92>>2]=(((B(k,160)+B(ca,240)|0)+B(g,208)|0)+(o?k<<4:0)|0)+(g+k<<4);xa=va+256|0;_b=v[I+92>>2];if(_b){g=1;e=_b+16|0;if(e>>>0>16384){break V}g=0;Na=Ba[v[v[Wa>>2]>>2]](Wa,e)|0;if(Na+1>>>0<2){break V}}t[i+136|0]=m;v[i+132>>2]=U;d=_b>>>4|0;c=v[i+16>>2];ga:{if(!U){break ga}m=v[i+148>>2];if(!m){break ga}h=0;while(1){e=v[i+144>>2]+h|0;if(v[(n+(e<<2)|0)+7424>>2]!=65535){U=H9(U,(n+B(e,104)|0)+2816|0,104)+104|0;m=v[i+148>>2]}h=h+1|0;if(m>>>0>h>>>0){continue}break}}u[i+158>>1]=x[i+158>>1]+x[I+64>>1];u[c+22>>1]=d;v[c+24>>2]=Na;u[c+20>>1]=v[i+116>>2];v[c+28>>2]=v[i+140>>2];t[i+312|0]=r;v[i+308>>2]=H;c=v[i+192>>2];ha:{if(!H){break ha}m=v[i+324>>2];if(!m){break ha}h=0;while(1){e=v[i+320>>2]+h|0;if(v[(n+(e<<2)|0)+7424>>2]!=65535){H=H9(H,(n+B(e,104)|0)+2816|0,104)+104|0;m=v[i+324>>2]}h=h+1|0;if(m>>>0>h>>>0){continue}break}}u[i+334>>1]=x[i+334>>1]+x[I+68>>1];u[c+22>>1]=d;v[c+24>>2]=Na;u[c+20>>1]=v[i+292>>2];v[c+28>>2]=v[i+316>>2];t[i+488|0]=G;v[i+484>>2]=q;c=v[i+368>>2];ia:{if(!q){break ia}m=v[i+500>>2];if(!m){break ia}h=0;while(1){e=v[i+496>>2]+h|0;if(v[(n+(e<<2)|0)+7424>>2]!=65535){q=H9(q,(n+B(e,104)|0)+2816|0,104)+104|0;m=v[i+500>>2]}h=h+1|0;if(m>>>0>h>>>0){continue}break}}u[i+510>>1]=x[i+510>>1]+x[I+72>>1];u[c+22>>1]=d;v[c+24>>2]=Na;u[c+20>>1]=v[i+468>>2];v[c+28>>2]=v[i+492>>2];t[i+664|0]=ia;v[i+660>>2]=j;c=v[i+544>>2];ja:{if(!j){break ja}m=v[i+676>>2];if(!m){break ja}h=0;while(1){e=v[i+672>>2]+h|0;if(v[(n+(e<<2)|0)+7424>>2]!=65535){j=H9(j,(n+B(e,104)|0)+2816|0,104)+104|0;m=v[i+676>>2]}h=h+1|0;if(m>>>0>h>>>0){continue}break}}u[i+686>>1]=x[i+686>>1]+x[I+76>>1];u[c+22>>1]=d;v[c+24>>2]=Na;u[c+20>>1]=v[i+644>>2];v[c+28>>2]=v[i+668>>2];e=v[I+156>>2];v[I+56>>2]=v[I+152>>2];v[I+60>>2]=e;e=v[I+148>>2];v[I+48>>2]=v[I+144>>2];v[I+52>>2]=e;e=v[I+124>>2];v[I+40>>2]=v[I+120>>2];v[I+44>>2]=e;e=v[I+116>>2];v[I+32>>2]=v[I+112>>2];v[I+36>>2]=e;e=v[I+140>>2];v[I+24>>2]=v[I+136>>2];v[I+28>>2]=e;e=v[I+132>>2];v[I+16>>2]=v[I+128>>2];v[I+20>>2]=e;e=v[I+108>>2];v[I+8>>2]=v[I+104>>2];v[I+12>>2]=e;e=v[I+100>>2];v[I>>2]=v[I+96>>2];v[I+4>>2]=e;s=Na;va=0;Wa=0;Lb=0;Mb=0;Ub=xa-16|0;xa=Ub;v[Ub+8>>2]=0;v[Ub+12>>2]=0;v[Ub>>2]=0;v[Ub+4>>2]=0;l=1;fb=1;ka:{if(w[i+120|0]){break ka}fb=1;if(w[i+296|0]){break ka}fb=1;if(w[i+472|0]){break ka}fb=w[i+648|0]!=0}d=v[i+104>>2];l=(d|0)!=1?v[i+280>>2]==1:l;e=1;c=1;c=(d|0)!=4?v[i+280>>2]==4:c;e=l?e:v[i+456>>2]==1;W=1;l=1;l=c?l:v[i+456>>2]==4;W=e?W:v[i+632>>2]==1;A=1;A=l?A:v[i+632>>2]==4;k=v[i+148>>2];d=v[i+324>>2];c=v[i+500>>2];e=v[i+676>>2];e=c>>>0>e>>>0?c:e;e=d>>>0>e>>>0?d:e;dd=e>>>0>>0?k:e;if(dd){Md=w[i+650|0];Nd=w[i+474|0];me=w[i+298|0];Se=w[i+122|0];jg=w[v[i+24>>2]+62|0]?C(1):C(0);kg=w[v[i+20>>2]+62|0]?C(1):C(0);lg=w[v[i+200>>2]+62|0]?C(1):C(0);mg=w[v[i+196>>2]+62|0]?C(1):C(0);ng=w[v[i+376>>2]+62|0]?C(1):C(0);og=w[v[i+372>>2]+62|0]?C(1):C(0);ed=z[i+624>>2];fd=z[i+620>>2];gd=z[i+616>>2];hd=z[i+448>>2];id=z[i+444>>2];jd=z[i+440>>2];kd=z[i+272>>2];ld=z[i+268>>2];md=z[i+264>>2];nd=z[i+96>>2];od=z[i+92>>2];pd=z[i+88>>2];qd=z[i+596>>2];rd=z[i+592>>2];sd=z[i+588>>2];td=z[i+420>>2];ud=z[i+416>>2];vd=z[i+412>>2];wd=z[i+244>>2];xd=z[i+240>>2];yd=z[i+236>>2];Zb=z[i+68>>2];we=z[i- -64>>2];xe=z[i+60>>2];Uc=z[i+652>>2];Vc=z[i+476>>2];Wc=z[i+300>>2];U=v[i+560>>2];pg=z[U+28>>2];R=v[i+384>>2];qg=z[R+28>>2];M=v[i+208>>2];rg=z[M+28>>2];r=v[i+32>>2];sg=z[r+60>>2];tg=z[r+56>>2];ug=z[r+52>>2];vg=z[r+48>>2];wg=z[r+44>>2];xg=z[r+40>>2];yg=z[r+36>>2];zg=z[r+32>>2];q=v[i+556>>2];Ag=z[q+28>>2];o=v[i+380>>2];Bg=z[o+28>>2];G=v[i+204>>2];Cg=z[G+28>>2];j=v[i+28>>2];Dg=z[j+60>>2];Eg=z[j+56>>2];Fg=z[j+52>>2];Gg=z[j+48>>2];Hg=z[j+44>>2];Ig=z[j+40>>2];Jg=z[j+36>>2];Kg=z[j+32>>2];l=v[i+568>>2];Pd=z[l+16>>2];m=v[i+392>>2];Qd=z[m+16>>2];h=v[i+216>>2];Rd=z[h+16>>2];g=v[i+40>>2];Sd=z[g+24>>2];Td=z[g+20>>2];k=v[i+564>>2];Lg=z[k+16>>2];d=v[i+388>>2];Mg=z[d+16>>2];c=v[i+212>>2];Ng=z[c+16>>2];e=v[i+36>>2];Og=z[e+24>>2];Pg=z[e+20>>2];Qg=z[U+60>>2];Rg=z[U+56>>2];Sg=z[U+52>>2];Tg=z[U+48>>2];Ug=z[U+44>>2];Vg=z[U+40>>2];Wg=z[U+36>>2];Xg=z[U+32>>2];Yg=z[R+60>>2];Zg=z[R+56>>2];_g=z[R+52>>2];$g=z[R+48>>2];ah=z[R+44>>2];bh=z[R+40>>2];ch=z[R+36>>2];dh=z[R+32>>2];eh=z[M+60>>2];fh=z[M+56>>2];gh=z[M+52>>2];hh=z[M+48>>2];ih=z[M+44>>2];jh=z[M+40>>2];kh=z[M+36>>2];lh=z[M+32>>2];mh=z[q+60>>2];nh=z[q+56>>2];oh=z[q+52>>2];ph=z[q+48>>2];qh=z[q+44>>2];rh=z[q+40>>2];sh=z[q+36>>2];th=z[q+32>>2];uh=z[o+60>>2];vh=z[o+56>>2];wh=z[o+52>>2];xh=z[o+48>>2];yh=z[o+44>>2];zh=z[o+40>>2];Ah=z[o+36>>2];Bh=z[o+32>>2];Ch=z[G+60>>2];Dh=z[G+56>>2];Eh=z[G+52>>2];Fh=z[G+48>>2];Gh=z[G+44>>2];Hh=z[G+40>>2];Ih=z[G+36>>2];Jh=z[G+32>>2];Ud=z[l+24>>2];Vd=z[l+20>>2];Wd=z[m+24>>2];Xd=z[m+20>>2];Yd=z[h+24>>2];Zd=z[h+20>>2];Kh=z[k+24>>2];Lh=z[k+20>>2];Mh=z[d+24>>2];Nh=z[d+20>>2];Oh=z[c+24>>2];Ph=z[c+20>>2];Xc=z[i+124>>2];Ue=z[I+12>>2];Ve=z[I+8>>2];We=z[I+4>>2];Xe=z[I>>2];Qh=z[r+28>>2];Rh=z[j+28>>2];_d=z[g+16>>2];Sh=z[e+16>>2];E=z[k+28>>2];b=z[l+28>>2];Yc=b>2];b=z[m+28>>2];Zc=b>2];b=z[h+28>>2];_c=b>2];$d=z[l+8>>2];$c=C(Ye-$d);Ze=z[d+8>>2];ae=z[m+8>>2];ad=C(Ze-ae);_e=z[c+8>>2];be=z[h+8>>2];bd=C(_e-be);$e=z[k+4>>2];ce=z[l+4>>2];cd=C($e-ce);af=z[d+4>>2];de=z[m+4>>2];Ad=C(af-de);bf=z[c+4>>2];ee=z[h+4>>2];Bd=C(bf-ee);cf=z[k>>2];fe=z[l>>2];Cd=C(cf-fe);df=z[d>>2];ge=z[m>>2];Dd=C(df-ge);ef=z[c>>2];he=z[h>>2];Ed=C(ef-he);E=z[e+28>>2];b=z[g+28>>2];Fd=b>2]+62|0]?C(1):C(0);Uh=w[v[i+548>>2]+62|0]?C(1):C(0);ff=C(z[I+16>>2]*z[g+32>>2]);gf=z[e+8>>2];ie=z[g+8>>2];Gd=C(gf-ie);hf=z[e+4>>2];je=z[g+4>>2];Hd=C(hf-je);jf=z[e>>2];ke=z[g>>2];Id=C(jf-ke);kf=C(z[I+28>>2]*z[l+32>>2]);lf=C(z[I+24>>2]*z[m+32>>2]);mf=C(z[I+20>>2]*z[h+32>>2]);nf=C(pb*C(-.800000011920929));of=z[I+44>>2];pf=C(z[I+60>>2]*z[k+32>>2]);Jd=C(of*pf);qf=z[I+40>>2];rf=C(z[I+56>>2]*z[d+32>>2]);Kd=C(qf*rf);sf=z[I+36>>2];tf=C(z[I+52>>2]*z[c+32>>2]);Ld=C(sf*tf);uf=z[I+32>>2];vf=C(z[I+48>>2]*z[e+32>>2]);Vf=C(uf*vf);Ce=z[i+612>>2];Vh=C(C(Ce*Ce)+C(-.5));De=z[i+436>>2];Wh=C(C(De*De)+C(-.5));Ee=z[i+260>>2];Xh=C(C(Ee*Ee)+C(-.5));Fe=z[i+84>>2];Yh=C(C(Fe*Fe)+C(-.5));Ge=z[i+584>>2];Zh=C(C(Ge*Ge)+C(-.5));He=z[i+408>>2];_h=C(C(He*He)+C(-.5));Ie=z[i+232>>2];$h=C(C(Ie*Ie)+C(-.5));Je=z[i+56>>2];ai=C(C(Je*Je)+C(-.5));wf=z[i+604>>2];Wf=C(-wf);xf=z[i+600>>2];Xf=C(-xf);yf=z[i+608>>2];Yf=C(-yf);zf=z[i+428>>2];Zf=C(-zf);Af=z[i+424>>2];_f=C(-Af);Bf=z[i+432>>2];$f=C(-Bf);Cf=z[i+252>>2];ag=C(-Cf);Df=z[i+248>>2];bg=C(-Df);Ef=z[i+256>>2];cg=C(-Ef);Ff=z[i+76>>2];dg=C(-Ff);Gf=z[i+72>>2];eg=C(-Gf);Hf=z[i+80>>2];fg=C(-Hf);If=z[i+576>>2];gg=C(-If);Jf=z[i+572>>2];hg=C(-Jf);Kf=z[i+580>>2];ig=C(-Kf);Lf=z[i+400>>2];ne=C(-Lf);Mf=z[i+396>>2];oe=C(-Mf);Nf=z[i+404>>2];pe=C(-Nf);Of=z[i+224>>2];qe=C(-Of);Pf=z[i+220>>2];re=C(-Pf);Qf=z[i+228>>2];se=C(-Qf);Rf=z[i+48>>2];te=C(-Rf);Sf=z[i+44>>2];ue=C(-Sf);Tf=z[i+52>>2];ve=C(-Tf);wa=n+7424|0;za=n+2816|0;ya=n+7556|0;H=0;r=0;q=0;o=0;while(1){c=v[i+324>>2];ha=y[i+148>>2]<=Pb>>>0;Od=ha?Od:v[i+144>>2]+Pb|0;e=v[i+500>>2];tb=c>>>0<=Pb>>>0;Ae=tb?Ae:v[i+320>>2]+Pb|0;Tb=v[i+676>>2];wb=e>>>0<=Pb>>>0;Be=wb?Be:v[i+496>>2]+Pb|0;Oa=Pb>>>0>=Tb>>>0;f=Oa?f:v[i+672>>2]+Pb|0;g=0;m=0;m=ha?m:v[(n+(Od<<2)|0)+7296>>2];g=tb?g:v[(n+(Ae<<2)|0)+7296>>2];d=0;h=0;h=wb?h:v[(n+(Be<<2)|0)+7296>>2];M=8;if(!Oa){M=0;d=v[(n+(f<<2)|0)+7296>>2]}ye=Od<<2;l=v[wa+ye>>2];ac=v[i+112>>2]+(x[n+B(l,44)>>1]<<6)|0;yc=z[ac+60>>2];Ob=Ae<<2;e=v[wa+Ob>>2];Mc=v[i+288>>2]+(x[n+B(e,44)>>1]<<6)|0;zc=z[Mc+60>>2];ze=Be<<2;c=v[wa+ze>>2];Nc=v[i+464>>2]+(x[n+B(c,44)>>1]<<6)|0;Ac=z[Nc+60>>2];Nb=f<<2;R=v[wa+Nb>>2];zd=v[i+640>>2]+(x[n+B(R,44)>>1]<<6)|0;Bc=z[zd+60>>2];t[s+7|0]=Md;t[s+6|0]=Nd;t[s+5|0]=me;t[s+4|0]=Se;t[s+3|0]=fb;k=d>>>0>>0?h:d;k=g>>>0>k>>>0?g:k;Ga=k>>>0>>0?m:k;Qb=Ga<<4;ta=I9(s+240|0,0,Qb);z[s+124>>2]=Ue;z[s+120>>2]=Ve;z[s+116>>2]=We;z[s+112>>2]=Xe;z[s+108>>2]=of;z[s+104>>2]=qf;z[s+100>>2]=sf;z[s+96>>2]=uf;z[s+92>>2]=kf;z[s+88>>2]=lf;z[s+84>>2]=mf;z[s+80>>2]=ff;z[s+76>>2]=pf;z[s+72>>2]=rf;z[s+68>>2]=tf;z[s+64>>2]=vf;t[s+11|0]=d;t[s+10|0]=h;t[s+9|0]=g;t[s+8|0]=m;t[s+1|0]=Ga;v[s+192>>2]=v[i+108>>2];v[s+196>>2]=v[i+284>>2];v[s+200>>2]=v[i+460>>2];d=v[i+636>>2];Xa=C(-Bc);z[s+28>>2]=Xa;Ya=C(-Ac);z[s+24>>2]=Ya;Za=C(-zc);z[s+20>>2]=Za;_a=C(-yc);z[s+16>>2]=_a;v[s+204>>2]=d;Ca=z[ac>>2];Da=z[Mc>>2];Ea=z[Nc>>2];Fa=z[zd>>2];ea=z[ac+4>>2];fa=z[Mc+4>>2];ga=z[Nc+4>>2];ja=z[zd+4>>2];X=z[ac+8>>2];Y=z[Mc+8>>2];Z=z[Nc+8>>2];_=z[zd+8>>2];z[s+188>>2]=Yc;z[s+184>>2]=Zc;z[s+180>>2]=_c;z[s+176>>2]=Fd;z[s+172>>2]=_;z[s+168>>2]=Z;z[s+164>>2]=Y;z[s+160>>2]=X;z[s+156>>2]=ja;z[s+152>>2]=ga;z[s+148>>2]=fa;z[s+144>>2]=ea;z[s+140>>2]=Fa;z[s+136>>2]=Ea;z[s+132>>2]=Da;z[s+128>>2]=Ca;g=65535;m=65535;la:{if((l|0)==65535){break la}while(1){m=l;d=n+B(l,44)|0;if(w[d+5|0]){break la}m=65535;l=x[d+2>>1];if((l|0)!=65535){continue}break}}ma:{if((e|0)==65535){break ma}while(1){g=e;e=n+B(e,44)|0;if(w[e+5|0]){break ma}g=65535;e=x[e+2>>1];if((e|0)!=65535){continue}break}}l=65535;e=65535;na:{if((c|0)==65535){break na}while(1){e=c;c=n+B(c,44)|0;if(w[c+5|0]){break na}e=65535;c=x[c+2>>1];if((c|0)!=65535){continue}break}}oa:{if((R|0)==65535){break oa}while(1){l=R;c=n+B(l,44)|0;if(w[c+5|0]){break oa}l=65535;R=x[c+2>>1];if((R|0)!=65535){continue}break}}ia=0;pa:{if(ha){h=m;j=0;break pa}H=65535;va=0;j=1;h=m;if((h|0)==65535){h=65535;break pa}while(1){c=n+B(h,44)|0;if(w[c+5|0]!=(j|0)){H=m;break pa}j=0;h=x[c+2>>1];if((h|0)!=65535){continue}break}h=65535;H=m}qa:{if(tb){d=g;break qa}r=65535;Wa=0;ia=1;d=g;if((d|0)==65535){d=65535;break qa}while(1){c=n+B(d,44)|0;if(w[c+5|0]!=(ia|0)){r=g;break qa}ia=0;d=x[c+2>>1];if((d|0)!=65535){continue}break}d=65535;r=g}ca=0;ra:{if(wb){k=e;U=0;break ra}q=65535;Lb=0;U=1;k=e;if((e|0)==65535){k=65535;break ra}while(1){c=n+B(k,44)|0;if(w[c+5|0]!=(U|0)){q=e;break ra}U=0;k=x[c+2>>1];if((k|0)!=65535){continue}break}k=65535;q=e}sa:{if(Oa){G=l;break sa}o=65535;Mb=0;ca=1;G=l;if((l|0)==65535){G=65535;break sa}while(1){e=n+B(G,44)|0;if(w[e+5|0]!=(ca|0)){o=l;break sa}ca=0;G=x[e+2>>1];if((G|0)!=65535){continue}break}G=65535;o=l}e=1;e=ha?e:!((h|0)!=65535&w[(n+B(h,44)|0)+5|0]>j>>>0);g=ha|tb<<1;c=wb<<2;ta:{if(!((d|0)==65535|tb)){m=0;if(w[(n+B(d,44)|0)+5|0]>ia>>>0){break ta}}m=2}$a=C(ce*ja);O=C(fe*Fa);ab=C($e*ja);bb=C(cf*Fa);cb=C(de*ga);J=C(ge*Ea);db=C(af*ga);ka=C(df*Ea);la=C(ee*fa);N=C(he*Da);S=C(bf*fa);L=C(ef*Da);p=C(je*ea);E=C(ke*Ca);D=C(hf*ea);b=C(jf*Ca);c=c|g;ua:{if(!((k|0)==65535|wb)){g=0;if(w[(n+B(k,44)|0)+5|0]>U>>>0){break ua}}g=4}$a=C(O+$a);O=C($d*_);ab=C(bb+ab);bb=C(Ye*_);cb=C(J+cb);J=C(ae*Z);db=C(ka+db);ka=C(Ze*Z);la=C(N+la);N=C(be*Y);S=C(L+S);L=C(_e*Y);p=C(E+p);E=C(ie*X);D=C(b+D);b=C(gf*X);M=c|M;va:{if(!((G|0)==65535|Oa)){c=0;if(w[(n+B(G,44)|0)+5|0]>ca>>>0){break va}}c=8}l=ta+Qb|0;O=C(O+$a);Cc=C(bb+ab);J=C(J+cb);Rc=C(ka+db);N=C(N+la);Sc=C(L+S);E=C(E+p);Tc=C(b+D);if((M|0)!=15){Oa=B(Ga,160)+l|0;ta=c|(g|(e|m));Rb=0;while(1){m=v[i+640>>2]+(x[n+B(o,44)>>1]+Mb<<6)|0;qa=z[m+16>>2];p=C(qa-sd);Aa=z[m+20>>2];D=C(Aa-rd);b=C(C(ja*p)-C(Fa*D));P=F>(b>C(0)?b:C(-b))?C(0):b;da=z[m+24>>2];b=C(da-qd);p=C(C(Fa*b)-C(_*p));sb=F>(p>C(0)?p:C(-p))?C(0):p;b=C(C(_*D)-C(ja*b));Ha=F>(b>C(0)?b:C(-b))?C(0):b;Dc=C(C(sh*P)+C(C(th*sb)+C(Ag*Ha)));Ec=C(C(ph*P)+C(C(qh*sb)+C(rh*Ha)));Fc=C(C(mh*P)+C(C(nh*sb)+C(oh*Ha)));Sa=C(Jd+C(C(Dc*Dc)+C(C(Ec*Ec)+C(Fc*Fc))));g=v[i+464>>2]+(x[n+B(q,44)>>1]+Lb<<6)|0;V=z[g+16>>2];p=C(V-vd);qb=z[g+20>>2];D=C(qb-ud);b=C(C(ga*p)-C(Ea*D));ra=F>(b>C(0)?b:C(-b))?C(0):b;Ja=z[g+24>>2];b=C(Ja-td);p=C(C(Ea*b)-C(Z*p));sa=F>(p>C(0)?p:C(-p))?C(0):p;b=C(C(Z*D)-C(ga*b));ua=F>(b>C(0)?b:C(-b))?C(0):b;Gc=C(C(Ah*ra)+C(C(Bh*sa)+C(Bg*ua)));Hc=C(C(xh*ra)+C(C(yh*sa)+C(zh*ua)));Ic=C(C(uh*ra)+C(C(vh*sa)+C(wh*ua)));Ta=C(Kd+C(C(Gc*Gc)+C(C(Hc*Hc)+C(Ic*Ic))));c=v[i+288>>2]+(x[n+B(r,44)>>1]+Wa<<6)|0;rb=z[c+16>>2];p=C(rb-yd);db=z[c+20>>2];D=C(db-xd);b=C(C(fa*p)-C(Da*D));$a=F>(b>C(0)?b:C(-b))?C(0):b;ka=z[c+24>>2];b=C(ka-wd);p=C(C(Da*b)-C(Y*p));ab=F>(p>C(0)?p:C(-p))?C(0):p;b=C(C(Y*D)-C(fa*b));bb=F>(b>C(0)?b:C(-b))?C(0):b;Jc=C(C(Ih*$a)+C(C(Jh*ab)+C(Cg*bb)));Kc=C(C(Fh*$a)+C(C(Gh*ab)+C(Hh*bb)));Gb=C(C(Ch*$a)+C(C(Dh*ab)+C(Eh*bb)));Ua=C(Ld+C(C(Jc*Jc)+C(C(Kc*Kc)+C(Gb*Gb))));e=v[i+112>>2]+(x[n+B(H,44)>>1]+va<<6)|0;la=z[e+16>>2];S=C(la-xe);L=z[e+20>>2];p=C(L-we);b=C(C(ea*S)-C(Ca*p));cb=F>(b>C(0)?b:C(-b))?C(0):b;D=z[e+24>>2];b=C(D-Zb);S=C(C(Ca*b)-C(X*S));S=F>(S>C(0)?S:C(-S))?C(0):S;b=C(C(X*p)-C(ea*b));b=F>(b>C(0)?b:C(-b))?C(0):b;Hb=C(C(Jg*cb)+C(C(Kg*S)+C(Rh*b)));Ib=C(C(Gg*cb)+C(C(Hg*S)+C(Ig*b)));Jb=C(C(Dg*cb)+C(C(Eg*S)+C(Fg*b)));Va=C(Vf+C(C(Hb*Hb)+C(C(Ib*Ib)+C(Jb*Jb))));Ha=C(Cc+C(C(Kh*P)+C(C(Lh*sb)+C(Lg*Ha))));ra=C(Rc+C(C(Mh*ra)+C(C(Nh*sa)+C(Mg*ua))));sa=C(Sc+C(C(Oh*$a)+C(C(Ph*ab)+C(Ng*bb))));ua=C(Tc+C(C(Og*cb)+C(C(Pg*S)+C(Sh*b))));$a=C(C(Fa*z[m+32>>2])+C(C(ja*z[m+36>>2])+C(_*z[m+40>>2])));ab=C(C(Ea*z[g+32>>2])+C(C(ga*z[g+36>>2])+C(Z*z[g+40>>2])));bb=C(C(Da*z[c+32>>2])+C(C(fa*z[c+36>>2])+C(Y*z[c+40>>2])));cb=C(C(Ca*z[e+32>>2])+C(C(ea*z[e+36>>2])+C(X*z[e+40>>2])));qa=C(qa-gd);na=C(V-jd);oa=C(rb-md);pa=C(la-pd);da=C(da-ed);V=C(Ja-hd);$=C(ka-kd);aa=C(D-nd);p=C(Aa-fd);Ja=C(qb-id);D=C(db-ld);ba=C(L-od);S=z[m+12>>2];db=z[g+12>>2];ka=z[c+12>>2];la=z[e+12>>2];wa:{if(W){b=C(C(ja*qa)-C(Fa*p));P=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Fa*da)-C(_*qa));sb=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(_*p)-C(ja*da));L=F>(b>C(0)?b:C(-b))?C(0):b;Ia=C(C(Wg*P)+C(C(Xg*sb)+C(pg*L)));Ka=C(C(Tg*P)+C(C(Ug*sb)+C(Vg*L)));La=C(C(Qg*P)+C(C(Rg*sb)+C(Sg*L)));Sa=C(Sa+C(kf+C(Ue*C(C(Ia*Ia)+C(C(Ka*Ka)+C(La*La))))));b=C(C(ga*na)-C(Ea*Ja));qa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ea*V)-C(Z*na));Aa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Z*Ja)-C(ga*V));da=F>(b>C(0)?b:C(-b))?C(0):b;Ma=C(C(ch*qa)+C(C(dh*Aa)+C(qg*da)));vb=C(C($g*qa)+C(C(ah*Aa)+C(bh*da)));xb=C(C(Yg*qa)+C(C(Zg*Aa)+C(_g*da)));Ta=C(Ta+C(lf+C(Ve*C(C(Ma*Ma)+C(C(vb*vb)+C(xb*xb))))));b=C(C(fa*oa)-C(Da*D));V=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Da*$)-C(Y*oa));qb=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Y*D)-C(fa*$));p=F>(b>C(0)?b:C(-b))?C(0):b;yb=C(C(kh*V)+C(C(lh*qb)+C(rg*p)));Pa=C(C(hh*V)+C(C(ih*qb)+C(jh*p)));ma=C(C(eh*V)+C(C(fh*qb)+C(gh*p)));Ua=C(Ua+C(mf+C(We*C(C(yb*yb)+C(C(Pa*Pa)+C(ma*ma))))));b=C(C(ea*pa)-C(Ca*ba));Ja=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ca*aa)-C(X*pa));D=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(X*ba)-C(ea*aa));b=F>(b>C(0)?b:C(-b))?C(0):b;Qa=C(C(yg*Ja)+C(C(zg*D)+C(Qh*b)));Ra=C(C(vg*Ja)+C(C(wg*D)+C(xg*b)));rb=C(C(sg*Ja)+C(C(tg*D)+C(ug*b)));Va=C(Va+C(ff+C(Xe*C(C(Qa*Qa)+C(C(Ra*Ra)+C(rb*rb))))));L=C(O+C(C(Ud*P)+C(C(Vd*sb)+C(Pd*L))));p=C(N+C(C(Yd*V)+C(C(Zd*qb)+C(Rd*p))));D=C(E+C(C(Sd*Ja)+C(C(Td*D)+C(_d*b))));b=C(J+C(C(Wd*qa)+C(C(Xd*Aa)+C(Qd*da))));break wa}rb=C(0);if(!A){ma=C(0);xb=C(0);La=C(0);Ra=C(0);Pa=C(0);vb=C(0);Ka=C(0);Qa=C(0);yb=C(0);Ma=C(0);Ia=C(0);D=E;p=N;L=O;b=J;break wa}L=C(O+C(C(Ud*C(C(ja*qa)-C(Fa*p)))+C(C(Vd*C(C(Fa*da)-C(_*qa)))+C(Pd*C(C(_*p)-C(ja*da))))));p=C(N+C(C(Yd*C(C(fa*oa)-C(Da*D)))+C(C(Zd*C(C(Da*$)-C(Y*oa)))+C(Rd*C(C(Y*D)-C(fa*$))))));D=C(E+C(C(Sd*C(C(ea*pa)-C(Ca*ba)))+C(C(Td*C(C(Ca*aa)-C(X*pa)))+C(_d*C(C(X*ba)-C(ea*aa))))));ma=C(0);xb=C(0);La=C(0);Ra=C(0);Pa=C(0);vb=C(0);Ka=C(0);Qa=C(0);yb=C(0);Ma=C(0);Ia=C(0);b=C(J+C(C(Wd*C(C(ga*na)-C(Ea*Ja)))+C(C(Xd*C(C(Ea*V)-C(Z*na)))+C(Qd*C(C(Z*Ja)-C(ga*V))))))}z[l+48>>2]=Qa;z[l+32>>2]=Jb;z[l+16>>2]=Ib;z[l+12>>2]=Dc;z[l+8>>2]=Gc;z[l+4>>2]=Jc;z[l>>2]=Hb;z[l+92>>2]=La;z[l+88>>2]=xb;z[l+84>>2]=ma;z[l+80>>2]=rb;z[l+76>>2]=Ka;z[l+72>>2]=vb;z[l+68>>2]=Pa;z[l- -64>>2]=Ra;z[l+60>>2]=Ia;z[l+56>>2]=Ma;z[l+52>>2]=yb;z[l+44>>2]=Fc;z[l+40>>2]=Ic;z[l+36>>2]=Gb;z[l+28>>2]=Ec;z[l+24>>2]=Hc;z[l+20>>2]=Kc;z[l+124>>2]=Sa>C(0)?C(C(1)/Sa):C(0);z[l+120>>2]=Ta>C(0)?C(C(1)/Ta):C(0);z[l+116>>2]=Ua>C(0)?C(C(1)/Ua):C(0);z[l+112>>2]=Va>C(0)?C(C(1)/Va):C(0);P=C(Th*L);L=C(Ha-L);S=C(S-Uc);z[l+140>>2]=$a+C(C(P+(Bc>C(0)?LC(S*Sb)?C(L*Xa):C(0):C(0):C(0)))-C(Uh*Ha));P=C(ng*b);b=C(ra-b);L=C(db-Vc);z[l+136>>2]=ab+C(C(P+(Ac>C(0)?bC(L*Sb)?C(b*Ya):C(0):C(0):C(0)))-C(og*ra));P=C(lg*p);b=C(sa-p);p=C(ka-Wc);z[l+132>>2]=bb+C(C(P+(zc>C(0)?bC(p*Sb)?C(b*Za):C(0):C(0):C(0)))-C(mg*sa));P=C(jg*D);D=C(ua-D);b=C(la-Xc);z[l+128>>2]=cb+C(C(P+(yc>C(0)?DC(b*Sb)?C(D*_a):C(0):C(0):C(0)))-C(kg*ua));z[l+156>>2]=nf;z[l+152>>2]=nf;z[l+148>>2]=nf;z[l+144>>2]=nf;z[l+108>>2]=S;z[l+104>>2]=L;z[l+100>>2]=p;z[l+96>>2]=b;if(fb){p=z[e+28>>2];D=z[c+28>>2];b=z[g+28>>2];e=Oa+(Rb<<4)|0;z[e+12>>2]=z[m+28>>2];z[e+8>>2]=b;z[e+4>>2]=D;z[e>>2]=p}xa:{if(ta&1){M=h;R=j;j=ta;break xa}R=j+1|0;M=65535;g=0;e=h;ya:{if((e|0)==65535){break ya}while(1){m=n+B(e,44)|0;c=w[m+5|0];if((c|0)==(R|0)){R=0;e=x[m+2>>1];if((e|0)!=65535){continue}break ya}break}if((e|0)==65535){break ya}g=c>>>0>R>>>0;M=e}va=j;H=h;j=g^1|ta}za:{if(ta&2){e=d;g=ia;break za}g=ia+1|0;h=2;e=d;Aa:{if((d|0)==65535){e=65535;break Aa}Ba:{while(1){m=n+B(e,44)|0;c=w[m+5|0];if((c|0)!=(g|0)){break Ba}g=0;e=x[m+2>>1];if((e|0)!=65535){continue}break}e=65535;break Aa}if((e|0)==65535){e=65535;break Aa}h=c>>>0>g>>>0?0:2}j=h|j;Wa=ia;r=d}Ca:{if(ta&4){c=k;m=U;break Ca}m=U+1|0;ia=4;c=k;Da:{if((c|0)==65535){c=65535;break Da}Ea:{while(1){h=n+B(c,44)|0;d=w[h+5|0];if((d|0)!=(m|0)){break Ea}m=0;c=x[h+2>>1];if((c|0)!=65535){continue}break}c=65535;break Da}if((c|0)==65535){c=65535;break Da}ia=d>>>0>m>>>0?0:4}j=j|ia;Lb=U;q=k}l=l+160|0;Rb=Rb+1|0;Ga=(ta|0)!=15;if(!(ta&8)){h=ca+1|0;U=8;d=G;Fa:{if((d|0)==65535){d=65535;break Fa}Ga:{while(1){o=n+B(d,44)|0;k=w[o+5|0];if((k|0)!=(h|0)){break Ga}h=0;d=x[o+2>>1];if((d|0)!=65535){continue}break}d=65535;break Fa}if((d|0)==65535){d=65535;break Fa}U=h>>>0>>0?0:8}Mb=ca;o=G;ca=h;G=d;j=j|U}ta=j;j=R;h=M;ia=g;d=e;U=m;k=c;if(Ga){continue}break}}Oa=za+B(f,104)|0;m=x[Oa+2>>1];Ga=za+B(Be,104)|0;c=x[Ga+2>>1];ta=za+B(Ae,104)|0;e=x[ta+2>>1];Rb=0;Rb=ha?Rb:t[ac+48|0]&1?0:x[(n+B(Od,104)|0)+2818>>1];ca=0;ca=tb?ca:t[Mc+48|0]&1?0:e;k=0;V=z[zd+44>>2];db=z[zd+56>>2];ka=z[ac+44>>2];la=z[ac+56>>2];h=w[ac+48|0];S=z[Mc+44>>2];L=z[Mc+56>>2];g=w[Mc+48|0];p=z[Nc+44>>2];D=z[Nc+56>>2];d=w[Nc+48|0];G=w[zd+48|0];k=wb?k:t[Nc+48|0]&1?0:c;c=(fb?Qb:0)+l|0;t[s+14|0]=k<<1;t[s+13|0]=ca<<1;t[s+12|0]=Rb<<1;t[s|0]=7;ha=Pb>>>0>>0?G&1?0:m:0;t[s+15|0]=ha<<1;e=k>>>0>ha>>>0?k:ha;e=e>>>0>>0?ca:e;tb=e>>>0>>0?Rb:e;j=tb<<1;t[s+2|0]=j;if(tb){b=(d&4)>>>2|0?(k|0)==2?C(.5):C(1):C(1);qb=C(b*D);Ja=C(b*p);b=(g&4)>>>2|0?(ca|0)==2?C(.5):C(1):C(1);rb=C(b*L);$a=C(b*S);b=(h&4)>>>2|0?(Rb|0)==2?C(.5):C(1):C(1);ab=C(b*la);bb=C(ka*b);b=(ha|0)==2?(G&4)>>>2|0?C(.5):C(1):C(1);cb=C(b*db);db=C(b*V);m=v[i+660>>2];h=v[i+484>>2];g=v[i+308>>2];d=v[i+132>>2];e=v[Ub+12>>2];v[s+216>>2]=v[Ub+8>>2];v[s+220>>2]=e;e=v[Ub+4>>2];v[s+208>>2]=v[Ub>>2];v[s+212>>2]=e;v[s+224>>2]=d+B(Eb,104);v[s+228>>2]=g+B(Fb,104);v[s+232>>2]=h+B($b,104);v[s+236>>2]=m+B(Lc,104);e=0;ub=C(1);O=C(Cc-O);b=C(cd-C(ja*O));g=(Fa>C(0)?Fa:C(-Fa))C(9999999747378752e-20);b=d?b:g?C(-_):Fa;p=b;da=d?O:g?ja:C(0);L=C(b*b);b=d?D:g?C(0):C(-ja);V=C(C(1)/C(K(C(C(da*da)+C(L+C(b*b))))));hb=C(p*V);ib=C(b*V);Ka=C(C(Fa*hb)-C(ja*ib));J=C(Rc-J);b=C(Ad-C(ga*J));g=(Ea>C(0)?Ea:C(-Ea))C(9999999747378752e-20);b=d?b:g?C(-Z):Ea;p=b;ka=d?J:g?ga:C(0);D=C(b*b);b=d?O:g?C(0):C(-ga);la=C(C(1)/C(K(C(C(ka*ka)+C(D+C(b*b))))));jb=C(p*la);kb=C(b*la);La=C(C(Ea*jb)-C(ga*kb));N=C(Sc-N);b=C(Bd-C(fa*N));g=(Da>C(0)?Da:C(-Da))C(9999999747378752e-20);b=d?b:g?C(-Y):Da;p=b;S=d?N:g?fa:C(0);D=C(b*b);b=d?J:g?C(0):C(-fa);O=C(C(1)/C(K(C(C(S*S)+C(D+C(b*b))))));L=C(p*O);lb=C(b*O);Ma=C(C(Da*L)-C(fa*lb));E=C(Tc-E);b=C(Hd-C(ea*E));g=(Ca>C(0)?Ca:C(-Ca))C(9999999747378752e-20);b=d?b:g?C(-X):Ca;p=b;N=d?E:g?ea:C(0);E=d?J:g?C(0):C(-ea);b=C(C(1)/C(K(C(C(N*N)+C(C(b*b)+C(E*E))))));p=C(p*b);D=C(E*b);Sa=C(C(Ca*p)-C(ea*D));Ia=C(da*V);Ta=C(C(_*ib)-C(Fa*Ia));mb=C(ka*la);Ua=C(C(Z*kb)-C(Ea*mb));nb=C(S*O);Va=C(C(Y*lb)-C(Da*nb));ob=C(N*b);zb=C(C(X*D)-C(Ca*ob));Ab=C(C(ja*Ia)-C(_*hb));Bb=C(C(ga*mb)-C(Z*jb));Cb=C(C(fa*nb)-C(Y*L));Db=C(C(ea*ob)-C(X*p));l=ac+32|0;d=c;c=j<<4&4080;c=I9(d,0,c)+c|0;g=0;m=0;d=0;h=0;Vb=C(1);Wb=C(1);Xb=C(1);while(1){j=c;ia=e>>>0>>0;g=ia?e:g;c=Oa+B(g,12)|0;ea=z[c+72>>2];fa=z[c- -64>>2];ga=z[c+68>>2];Xa=C(C(yf*ea)+C(C(xf*fa)+C(wf*ga)));ka=C(yf*Xa);ja=z[c+48>>2];X=z[c+40>>2];Gb=z[c+44>>2];Ya=C(C(Kf*ja)+C(C(Jf*X)+C(If*Gb)));b=C(Kf*Ya);U=e>>>0>>0;m=U?e:m;c=Ga+B(m,12)|0;Y=z[c+72>>2];ma=z[c- -64>>2];Z=z[c+68>>2];Za=C(C(Bf*Y)+C(C(Af*ma)+C(zf*Z)));la=C(Bf*Za);_=z[c+48>>2];na=z[c+40>>2];Hb=z[c+44>>2];_a=C(C(Nf*_)+C(C(Mf*na)+C(Lf*Hb)));S=C(Nf*_a);R=e>>>0>>0;d=R?e:d;c=ta+B(d,12)|0;oa=z[c+72>>2];pa=z[c- -64>>2];$=z[c+68>>2];qa=C(C(Ef*oa)+C(C(Df*pa)+C(Cf*$)));O=C(Ef*qa);aa=z[c+48>>2];ba=z[c+40>>2];Ib=z[c+44>>2];Aa=C(C(Qf*aa)+C(C(Pf*ba)+C(Of*Ib)));J=C(Qf*Aa);M=e>>>0>>0;h=M?e:h;c=(za+B(Od,104)|0)+B(h,12)|0;P=z[c+72>>2];Jb=z[c- -64>>2];Ha=z[c+68>>2];da=C(C(Hf*P)+C(C(Gf*Jb)+C(Ff*Ha)));N=C(Hf*da);ra=z[c+48>>2];sa=z[c+40>>2];ua=z[c+44>>2];V=C(C(Tf*ra)+C(C(Sf*sa)+C(Rf*ua)));E=C(Tf*V);wb=x[(ya+Nb|0)+(g<<1)>>1];Tb=x[(ya+ze|0)+(m<<1)>>1];Qb=x[(ya+Ob|0)+(d<<1)>>1];c=l;G=x[(ya+ye|0)+(h<<1)>>1];if((G|0)!=65535){c=(v[i+112>>2]+(G<<6)|0)+32|0}sb=z[c+8>>2];yc=z[c+4>>2];zc=z[c>>2];c=l;ub=ia?ub:C(0);Vb=U?Vb:C(0);Wb=R?Wb:C(0);Xb=M?Xb:C(0);c=(Qb|0)!=65535?(v[i+288>>2]+(Qb<<6)|0)+32|0:c;Ac=z[c+8>>2];Bc=z[c+4>>2];Cc=z[c>>2];c=l;Ia=C(Ia*ub);mb=C(mb*Vb);nb=C(nb*Wb);ob=C(ob*Xb);hb=C(hb*ub);jb=C(jb*Vb);L=C(L*Wb);p=C(p*Xb);ib=C(ib*ub);kb=C(kb*Vb);lb=C(lb*Wb);D=C(D*Xb);c=(Tb|0)!=65535?(v[i+464>>2]+(Tb<<6)|0)+32|0:c;Rc=z[c+8>>2];Sc=z[c+4>>2];Tc=z[c>>2];c=l;b=C(C(C(Ge*C(C(Jf*Gb)+C(X*gg)))+C(Zh*ja))+b);Ke=C(b+b);b=C(C(C(Ce*C(C(xf*ga)+C(fa*Wf)))+C(Vh*ea))+ka);bc=C(b+b);Dc=C(C(qd+Ke)-C(ed+bc));b=C(C(C(He*C(C(Mf*Hb)+C(na*ne)))+C(_h*_))+S);Le=C(b+b);b=C(C(C(De*C(C(Af*Z)+C(ma*Zf)))+C(Wh*Y))+la);cc=C(b+b);Ec=C(C(td+Le)-C(hd+cc));b=C(C(C(Ie*C(C(Pf*Ib)+C(ba*qe)))+C($h*aa))+J);Me=C(b+b);b=C(C(C(Ee*C(C(Df*$)+C(pa*ag)))+C(Xh*oa))+O);dc=C(b+b);Fc=C(C(wd+Me)-C(kd+dc));b=C(C(C(Je*C(C(Sf*ua)+C(sa*te)))+C(ai*ra))+E);Ne=C(b+b);b=C(C(C(Fe*C(C(Gf*Ha)+C(Jb*dg)))+C(Yh*P))+N);ec=C(b+b);Gc=C(C(Zb+Ne)-C(nd+ec));b=C(C(If*Ya)+C(C(Zh*Gb)+C(Ge*C(C(Kf*X)+C(ja*hg)))));Oe=C(b+b);b=C(C(wf*Xa)+C(C(Vh*ga)+C(Ce*C(C(yf*fa)+C(ea*Xf)))));fc=C(b+b);Hc=C(C(rd+Oe)-C(fd+fc));b=C(C(Lf*_a)+C(C(_h*Hb)+C(He*C(C(Nf*na)+C(_*oe)))));Ca=C(b+b);b=C(C(zf*Za)+C(C(Wh*Z)+C(De*C(C(Bf*ma)+C(Y*_f)))));gc=C(b+b);Ic=C(C(ud+Ca)-C(id+gc));b=C(C(Of*Aa)+C(C($h*Ib)+C(Ie*C(C(Qf*ba)+C(aa*re)))));Da=C(b+b);b=C(C(Cf*qa)+C(C(Xh*$)+C(Ee*C(C(Ef*pa)+C(oa*bg)))));hc=C(b+b);Jc=C(C(xd+Da)-C(ld+hc));b=C(C(Rf*V)+C(C(ai*ua)+C(Je*C(C(Tf*sa)+C(ra*ue)))));Ea=C(b+b);b=C(C(Ff*da)+C(C(Yh*Ha)+C(Fe*C(C(Hf*Jb)+C(P*eg)))));ic=C(b+b);Kc=C(C(we+Ea)-C(od+ic));b=C(C(Jf*Ya)+C(C(Zh*X)+C(Ge*C(C(If*ja)+C(Gb*ig)))));Fa=C(b+b);b=C(C(xf*Xa)+C(C(Vh*fa)+C(Ce*C(C(wf*ea)+C(ga*Yf)))));jc=C(b+b);Gb=C(C(sd+Fa)-C(gd+jc));b=C(C(Mf*_a)+C(C(_h*na)+C(He*C(C(Lf*_)+C(Hb*pe)))));ea=C(b+b);b=C(C(Af*Za)+C(C(Wh*ma)+C(De*C(C(zf*Y)+C(Z*$f)))));kc=C(b+b);Hb=C(C(vd+ea)-C(jd+kc));b=C(C(Pf*Aa)+C(C($h*ba)+C(Ie*C(C(Of*aa)+C(Ib*se)))));fa=C(b+b);b=C(C(Df*qa)+C(C(Xh*pa)+C(Ee*C(C(Cf*oa)+C($*cg)))));lc=C(b+b);Ib=C(C(yd+fa)-C(md+lc));b=C(C(Sf*V)+C(C(ai*sa)+C(Je*C(C(Rf*ra)+C(ua*ve)))));ga=C(b+b);b=C(C(Gf*da)+C(C(Yh*Jb)+C(Fe*C(C(Ff*P)+C(Ha*fg)))));mc=C(b+b);Jb=C(C(xe+ga)-C(pd+mc));Ka=C(Ka*ub);La=C(La*Vb);Ma=C(Ma*Wb);Sa=C(Sa*Xb);Ta=C(Ta*ub);Ua=C(Ua*Vb);Va=C(Va*Wb);zb=C(zb*Xb);Ab=C(Ab*ub);Bb=C(Bb*Vb);Cb=C(Cb*Wb);Db=C(Db*Xb);b=C(C(hb*Fa)-C(ib*Oe));$=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(ib*Ke)-C(Ia*Fa));aa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ia*Oe)-C(hb*Ke));O=F>(b>C(0)?b:C(-b))?C(0):b;ua=C(C(mh*$)+C(C(nh*aa)+C(oh*O)));Xa=C(C(ph*$)+C(C(qh*aa)+C(rh*O)));Ya=C(C(sh*$)+C(C(th*aa)+C(Ag*O)));vb=C(pf+C(of*C(C(ua*ua)+C(C(Xa*Xa)+C(Ya*Ya)))));b=C(C(jb*ea)-C(kb*Ca));ba=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(kb*Le)-C(mb*ea));P=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(mb*Ca)-C(jb*Le));J=F>(b>C(0)?b:C(-b))?C(0):b;Za=C(C(uh*ba)+C(C(vh*P)+C(wh*J)));_a=C(C(xh*ba)+C(C(yh*P)+C(zh*J)));qa=C(C(Ah*ba)+C(C(Bh*P)+C(Bg*J)));nc=C(rf+C(qf*C(C(Za*Za)+C(C(_a*_a)+C(qa*qa)))));b=C(C(L*fa)-C(lb*Da));Ha=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(lb*Me)-C(nb*fa));ra=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(nb*Da)-C(L*Me));N=F>(b>C(0)?b:C(-b))?C(0):b;Aa=C(C(Ch*Ha)+C(C(Dh*ra)+C(Eh*N)));da=C(C(Fh*Ha)+C(C(Gh*ra)+C(Hh*N)));V=C(C(Ih*Ha)+C(C(Jh*ra)+C(Cg*N)));ja=C(tf+C(sf*C(C(Aa*Aa)+C(C(da*da)+C(V*V)))));b=C(C(p*ga)-C(D*Ea));sa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(D*Ne)-C(ob*ga));E=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(ob*Ea)-C(p*Ne));b=F>(b>C(0)?b:C(-b))?C(0):b;ka=C(C(Dg*sa)+C(C(Eg*E)+C(Fg*b)));la=C(C(Gg*sa)+C(C(Hg*E)+C(Ig*b)));S=C(C(Jg*sa)+C(C(Kg*E)+C(Rh*b)));X=C(vf+C(uf*C(C(ka*ka)+C(C(la*la)+C(S*S)))));O=C(C(Kh*$)+C(C(Lh*aa)+C(C(C(Ye*Ia)+C(C($e*hb)+C(cf*ib)))+C(Lg*O))));J=C(C(Mh*ba)+C(C(Nh*P)+C(C(C(Ze*mb)+C(C(af*jb)+C(df*kb)))+C(Mg*J))));N=C(C(Oh*Ha)+C(C(Ph*ra)+C(C(C(_e*nb)+C(C(bf*L)+C(ef*lb)))+C(Ng*N))));E=C(C(Og*sa)+C(C(Pg*E)+C(C(C(gf*ob)+C(C(hf*p)+C(jf*D)))+C(Sh*b))));c=(wb|0)!=65535?(v[i+640>>2]+(wb<<6)|0)+32|0:c;Ha=z[c+8>>2];ra=z[c+4>>2];sa=z[c>>2];Ha:{if(W){b=C(C(hb*jc)-C(ib*fc));Y=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(ib*bc)-C(Ia*jc));ma=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ia*fc)-C(hb*bc));Z=F>(b>C(0)?b:C(-b))?C(0):b;oc=C(C(Qg*Y)+C(C(Rg*ma)+C(Sg*Z)));pc=C(C(Tg*Y)+C(C(Ug*ma)+C(Vg*Z)));qc=C(C(Wg*Y)+C(C(Xg*ma)+C(pg*Z)));vb=C(vb+C(kf+C(Ue*C(C(oc*oc)+C(C(pc*pc)+C(qc*qc))))));b=C(C(jb*kc)-C(kb*gc));_=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(kb*cc)-C(mb*kc));na=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(mb*gc)-C(jb*cc));oa=F>(b>C(0)?b:C(-b))?C(0):b;rc=C(C(Yg*_)+C(C(Zg*na)+C(_g*oa)));sc=C(C($g*_)+C(C(ah*na)+C(bh*oa)));xb=C(C(ch*_)+C(C(dh*na)+C(qg*oa)));nc=C(nc+C(lf+C(Ve*C(C(rc*rc)+C(C(sc*sc)+C(xb*xb))))));b=C(C(L*lc)-C(lb*hc));pa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(lb*dc)-C(nb*lc));$=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(nb*hc)-C(L*dc));aa=F>(b>C(0)?b:C(-b))?C(0):b;tc=C(C(eh*pa)+C(C(fh*$)+C(gh*aa)));yb=C(C(hh*pa)+C(C(ih*$)+C(jh*aa)));uc=C(C(kh*pa)+C(C(lh*$)+C(rg*aa)));ja=C(ja+C(mf+C(We*C(C(tc*tc)+C(C(yb*yb)+C(uc*uc))))));b=C(C(p*mc)-C(D*ic));ba=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(D*ec)-C(ob*mc));P=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(ob*ic)-C(p*ec));b=F>(b>C(0)?b:C(-b))?C(0):b;vc=C(C(sg*ba)+C(C(tg*P)+C(ug*b)));wc=C(C(vg*ba)+C(C(wg*P)+C(xg*b)));xc=C(C(yg*ba)+C(C(zg*P)+C(Qh*b)));X=C(X+C(ff+C(Xe*C(C(vc*vc)+C(C(wc*wc)+C(xc*xc))))));Pa=C(C(Ud*Y)+C(C(Vd*ma)+C(C(C($d*Ia)+C(C(ce*hb)+C(fe*ib)))+C(Pd*Z))));Qa=C(C(Wd*_)+C(C(Xd*na)+C(C(C(ae*mb)+C(C(de*jb)+C(ge*kb)))+C(Qd*oa))));Ra=C(C(Yd*pa)+C(C(Zd*$)+C(C(C(be*nb)+C(C(ee*L)+C(he*lb)))+C(Rd*aa))));b=C(C(Sd*ba)+C(C(Td*P)+C(C(C(ie*ob)+C(C(je*p)+C(ke*D)))+C(_d*b))));break Ha}vc=C(0);tc=C(0);rc=C(0);oc=C(0);wc=C(0);yb=C(0);sc=C(0);pc=C(0);xc=C(0);uc=C(0);xb=C(0);qc=C(0);Ia:{if(!A){Ra=C(0);Qa=C(0);Pa=C(0);b=C(0);break Ia}Pa=C(C(Ud*C(C(hb*jc)-C(ib*fc)))+C(C(Vd*C(C(ib*bc)-C(Ia*jc)))+C(C(C($d*Ia)+C(C(ce*hb)+C(fe*ib)))+C(Pd*C(C(Ia*fc)-C(hb*bc))))));Qa=C(C(Wd*C(C(jb*kc)-C(kb*gc)))+C(C(Xd*C(C(kb*cc)-C(mb*kc)))+C(C(C(ae*mb)+C(C(de*jb)+C(ge*kb)))+C(Qd*C(C(mb*gc)-C(jb*cc))))));Ra=C(C(Yd*C(C(L*lc)-C(lb*hc)))+C(C(Zd*C(C(lb*dc)-C(nb*lc)))+C(C(C(be*nb)+C(C(ee*L)+C(he*lb)))+C(Rd*C(C(nb*hc)-C(L*dc))))));b=C(C(Sd*C(C(p*mc)-C(D*ic)))+C(C(Td*C(C(D*ec)-C(ob*mc)))+C(C(C(ie*ob)+C(C(je*p)+C(ke*D)))+C(_d*C(C(ob*ic)-C(p*ec))))))}}z[j+96>>2]=xc;z[j+192>>2]=pb;z[j+48>>2]=S;z[j+32>>2]=ob;z[j+16>>2]=p;z[j+12>>2]=ib;z[j+8>>2]=kb;z[j+4>>2]=lb;z[j>>2]=D;z[j+140>>2]=oc;z[j+136>>2]=rc;z[j+132>>2]=tc;z[j+128>>2]=vc;z[j+124>>2]=pc;z[j+120>>2]=sc;z[j+116>>2]=yb;z[j+112>>2]=wc;z[j+108>>2]=qc;z[j+104>>2]=xb;z[j+100>>2]=uc;z[j+204>>2]=pb;z[j+200>>2]=pb;z[j+196>>2]=pb;z[j+92>>2]=ua;z[j+88>>2]=Za;z[j+84>>2]=Aa;z[j+80>>2]=ka;z[j+76>>2]=Xa;z[j+72>>2]=_a;z[j+68>>2]=da;z[j- -64>>2]=la;z[j+60>>2]=Ya;z[j+56>>2]=qa;z[j+52>>2]=V;z[j+44>>2]=Ia;z[j+40>>2]=mb;z[j+36>>2]=nb;z[j+28>>2]=hb;z[j+24>>2]=jb;z[j+20>>2]=L;z[j+172>>2]=ub*(vb>C(0)?C(C(.800000011920929)/vb):C(0));z[j+168>>2]=Vb*(nc>C(0)?C(C(.800000011920929)/nc):C(0));z[j+164>>2]=Wb*(ja>C(0)?C(C(.800000011920929)/ja):C(0));z[j+160>>2]=Xb*(X>C(0)?C(C(.800000011920929)/X):C(0));z[j+156>>2]=C(Ia*Dc)+C(C(ib*Gb)+C(hb*Hc));z[j+152>>2]=C(mb*Ec)+C(C(kb*Hb)+C(jb*Ic));z[j+148>>2]=C(nb*Fc)+C(C(lb*Ib)+C(L*Jc));z[j+144>>2]=C(ob*Gc)+C(C(D*Jb)+C(p*Kc));z[j+188>>2]=C(C(C(Ia*Ha)+C(C(ib*sa)+C(hb*ra)))+C(Th*Pa))-C(Uh*O);z[j+184>>2]=C(C(C(mb*Rc)+C(C(kb*Tc)+C(jb*Sc)))+C(ng*Qa))-C(og*J);z[j+180>>2]=C(C(C(nb*Ac)+C(C(lb*Cc)+C(L*Bc)))+C(lg*Ra))-C(mg*N);z[j+176>>2]=C(C(C(ob*sb)+C(C(D*zc)+C(p*yc)))+C(jg*b))-C(kg*E);b=C(C(Ta*Fa)-C(Ab*Oe));na=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ab*Ke)-C(Ka*Fa));oa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ka*Oe)-C(Ta*Ke));O=F>(b>C(0)?b:C(-b))?C(0):b;ua=C(C(mh*na)+C(C(nh*oa)+C(oh*O)));Xa=C(C(ph*na)+C(C(qh*oa)+C(rh*O)));Ya=C(C(sh*na)+C(C(th*oa)+C(Ag*O)));pc=C(pf+C(of*C(C(ua*ua)+C(C(Xa*Xa)+C(Ya*Ya)))));b=C(C(Ua*ea)-C(Bb*Ca));pa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Bb*Le)-C(La*ea));$=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(La*Ca)-C(Ua*Le));J=F>(b>C(0)?b:C(-b))?C(0):b;Za=C(C(uh*pa)+C(C(vh*$)+C(wh*J)));_a=C(C(xh*pa)+C(C(yh*$)+C(zh*J)));qa=C(C(Ah*pa)+C(C(Bh*$)+C(Bg*J)));qc=C(rf+C(qf*C(C(Za*Za)+C(C(_a*_a)+C(qa*qa)))));b=C(C(Va*fa)-C(Cb*Da));aa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Cb*Me)-C(Ma*fa));ba=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ma*Da)-C(Va*Me));N=F>(b>C(0)?b:C(-b))?C(0):b;Aa=C(C(Ch*aa)+C(C(Dh*ba)+C(Eh*N)));da=C(C(Fh*aa)+C(C(Gh*ba)+C(Hh*N)));V=C(C(Ih*aa)+C(C(Jh*ba)+C(Cg*N)));rc=C(tf+C(sf*C(C(Aa*Aa)+C(C(da*da)+C(V*V)))));b=C(C(zb*ga)-C(Db*Ea));P=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Db*Ne)-C(Sa*ga));E=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Sa*Ea)-C(zb*Ne));b=F>(b>C(0)?b:C(-b))?C(0):b;ka=C(C(Dg*P)+C(C(Eg*E)+C(Fg*b)));la=C(C(Gg*P)+C(C(Hg*E)+C(Ig*b)));S=C(C(Jg*P)+C(C(Kg*E)+C(Rh*b)));nc=C(vf+C(uf*C(C(ka*ka)+C(C(la*la)+C(S*S)))));O=C(C(Kh*na)+C(C(Lh*oa)+C(C(C(Ye*Ka)+C(C($e*Ta)+C(cf*Ab)))+C(Lg*O))));J=C(C(Mh*pa)+C(C(Nh*$)+C(C(C(Ze*La)+C(C(af*Ua)+C(df*Bb)))+C(Mg*J))));N=C(C(Oh*aa)+C(C(Ph*ba)+C(C(C(_e*Ma)+C(C(bf*Va)+C(ef*Cb)))+C(Ng*N))));E=C(C(Og*P)+C(C(Pg*E)+C(C(C(gf*Sa)+C(C(hf*zb)+C(jf*Db)))+C(Sh*b))));Ja:{if(W){b=C(C(Ta*jc)-C(Ab*fc));X=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ab*bc)-C(Ka*jc));Y=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ka*fc)-C(Ta*bc));ma=F>(b>C(0)?b:C(-b))?C(0):b;Qa=C(C(Qg*X)+C(C(Rg*Y)+C(Sg*ma)));oc=C(C(Tg*X)+C(C(Ug*Y)+C(Vg*ma)));Pa=C(C(Wg*X)+C(C(Xg*Y)+C(pg*ma)));pc=C(pc+C(kf+C(Ue*C(C(Qa*Qa)+C(C(oc*oc)+C(Pa*Pa))))));b=C(C(Ua*kc)-C(Bb*gc));Z=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Bb*cc)-C(La*kc));_=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(La*gc)-C(Ua*cc));na=F>(b>C(0)?b:C(-b))?C(0):b;sc=C(C(Yg*Z)+C(C(Zg*_)+C(_g*na)));oa=C(C($g*Z)+C(C(ah*_)+C(bh*na)));tc=C(C(ch*Z)+C(C(dh*_)+C(qg*na)));qc=C(qc+C(lf+C(Ve*C(C(sc*sc)+C(C(oa*oa)+C(tc*tc))))));b=C(C(Va*lc)-C(Cb*hc));pa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Cb*dc)-C(Ma*lc));$=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ma*hc)-C(Va*dc));aa=F>(b>C(0)?b:C(-b))?C(0):b;uc=C(C(eh*pa)+C(C(fh*$)+C(gh*aa)));vc=C(C(hh*pa)+C(C(ih*$)+C(jh*aa)));wc=C(C(kh*pa)+C(C(lh*$)+C(rg*aa)));rc=C(rc+C(mf+C(We*C(C(uc*uc)+C(C(vc*vc)+C(wc*wc))))));b=C(C(zb*mc)-C(Db*ic));ba=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Db*ec)-C(Sa*mc));P=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Sa*ic)-C(zb*ec));b=F>(b>C(0)?b:C(-b))?C(0):b;Ra=C(C(sg*ba)+C(C(tg*P)+C(ug*b)));xc=C(C(vg*ba)+C(C(wg*P)+C(xg*b)));vb=C(C(yg*ba)+C(C(zg*P)+C(Qh*b)));nc=C(nc+C(ff+C(Xe*C(C(Ra*Ra)+C(C(xc*xc)+C(vb*vb))))));ma=C(C(Ud*X)+C(C(Vd*Y)+C(C(C($d*Ka)+C(C(ce*Ta)+C(fe*Ab)))+C(Pd*ma))));xb=C(C(Wd*Z)+C(C(Xd*_)+C(C(C(ae*La)+C(C(de*Ua)+C(ge*Bb)))+C(Qd*na))));yb=C(C(Yd*pa)+C(C(Zd*$)+C(C(C(be*Ma)+C(C(ee*Va)+C(he*Cb)))+C(Rd*aa))));b=C(C(Sd*ba)+C(C(Td*P)+C(C(C(ie*Sa)+C(C(je*zb)+C(ke*Db)))+C(_d*b))));break Ja}Ra=C(0);uc=C(0);sc=C(0);Qa=C(0);xc=C(0);vc=C(0);oa=C(0);oc=C(0);vb=C(0);wc=C(0);tc=C(0);Pa=C(0);Ka:{if(!A){yb=C(0);xb=C(0);ma=C(0);b=C(0);break Ka}ma=C(C(Ud*C(C(Ta*jc)-C(Ab*fc)))+C(C(Vd*C(C(Ab*bc)-C(Ka*jc)))+C(C(C($d*Ka)+C(C(ce*Ta)+C(fe*Ab)))+C(Pd*C(C(Ka*fc)-C(Ta*bc))))));xb=C(C(Wd*C(C(Ua*kc)-C(Bb*gc)))+C(C(Xd*C(C(Bb*cc)-C(La*kc)))+C(C(C(ae*La)+C(C(de*Ua)+C(ge*Bb)))+C(Qd*C(C(La*gc)-C(Ua*cc))))));yb=C(C(Yd*C(C(Va*lc)-C(Cb*hc)))+C(C(Zd*C(C(Cb*dc)-C(Ma*lc)))+C(C(C(be*Ma)+C(C(ee*Va)+C(he*Cb)))+C(Rd*C(C(Ma*hc)-C(Va*dc))))));b=C(C(Sd*C(C(zb*mc)-C(Db*ic)))+C(C(Td*C(C(Db*ec)-C(Sa*mc)))+C(C(C(ie*Sa)+C(C(je*zb)+C(ke*Db)))+C(_d*C(C(Sa*ic)-C(zb*ec))))))}}c=j+416|0;z[j+348>>2]=Qa;z[j+344>>2]=sc;z[j+340>>2]=uc;z[j+336>>2]=Ra;z[j+332>>2]=oc;z[j+328>>2]=oa;z[j+324>>2]=vc;z[j+320>>2]=xc;z[j+316>>2]=Pa;z[j+312>>2]=tc;z[j+308>>2]=wc;z[j+304>>2]=vb;z[j+412>>2]=pb;z[j+408>>2]=pb;z[j+404>>2]=pb;z[j+400>>2]=pb;z[j+300>>2]=ua;z[j+296>>2]=Za;z[j+292>>2]=Aa;z[j+288>>2]=ka;z[j+284>>2]=Xa;z[j+280>>2]=_a;z[j+276>>2]=da;z[j+272>>2]=la;z[j+268>>2]=Ya;z[j+264>>2]=qa;z[j+260>>2]=V;z[j+256>>2]=S;z[j+252>>2]=Ka;z[j+248>>2]=La;z[j+244>>2]=Ma;z[j+240>>2]=Sa;z[j+236>>2]=Ta;z[j+232>>2]=Ua;z[j+228>>2]=Va;z[j+224>>2]=zb;z[j+220>>2]=Ab;z[j+216>>2]=Bb;z[j+212>>2]=Cb;z[j+208>>2]=Db;z[j+380>>2]=ub*(pc>C(0)?C(C(.800000011920929)/pc):C(0));z[j+376>>2]=Vb*(qc>C(0)?C(C(.800000011920929)/qc):C(0));z[j+372>>2]=Wb*(rc>C(0)?C(C(.800000011920929)/rc):C(0));z[j+368>>2]=Xb*(nc>C(0)?C(C(.800000011920929)/nc):C(0));z[j+364>>2]=C(Ka*Dc)+C(C(Ab*Gb)+C(Ta*Hc));z[j+360>>2]=C(La*Ec)+C(C(Bb*Hb)+C(Ua*Ic));z[j+356>>2]=C(Ma*Fc)+C(C(Cb*Ib)+C(Va*Jc));z[j+352>>2]=C(Sa*Gc)+C(C(Db*Jb)+C(zb*Kc));z[j+396>>2]=C(C(C(Ka*Ha)+C(C(Ab*sa)+C(Ta*ra)))+C(Th*ma))-C(Uh*O);z[j+392>>2]=C(C(C(La*Rc)+C(C(Bb*Tc)+C(Ua*Sc)))+C(ng*xb))-C(og*J);z[j+388>>2]=C(C(C(Ma*Ac)+C(C(Cb*Cc)+C(Va*Bc)))+C(lg*yb))-C(mg*N);z[j+384>>2]=C(C(C(Sa*sb)+C(C(Db*zc)+C(zb*yc)))+C(jg*b))-C(kg*E);e=e+1|0;if((tb|0)!=(e|0)){continue}break}z[s+48>>2]=ab;z[s+32>>2]=bb;z[s+60>>2]=cb;z[s+56>>2]=qb;z[s+52>>2]=rb;z[s+44>>2]=db;z[s+40>>2]=Ja;z[s+36>>2]=$a;$b=$b+1|0;Fb=Fb+1|0;Eb=Eb+1|0;Lc=Lc+1|0}s=c;Pb=Pb+1|0;if((dd|0)!=(Pb|0)){continue}break}}xa=Ub+16|0;v[Na+_b>>2]=0;g=2}xa=I+160|0;k=g}xa=gb+32|0}else{k=1}La:{if((k|0)==2){break La}e=0;if(Qc){break La}while(1){c=v[(Q+32|0)+(e<<2)>>2];lB((Q+96|0)+B(e,176)|0,c,Oc,pb,Sb,z[Kb+84>>2],z[Kb+88>>2],z[Kb+100>>2],Q+808|0);d=(T<<5)+Pe|0;u[d+20>>1]=w[c+12|0];v[d+28>>2]=v[c+8>>2];T=T+1|0;e=e+1|0;if((Pc|0)!=(e|0)){continue}break}}m=x[Yb+4>>1];if(!m){break a}e=0;if((m|0)!=1){h=m&65534;c=0;while(1){k=v[(e<<2)+Q>>2];g=Q+96|0;d=g+B(e,176)|0;v[k+36>>2]=v[d+132>>2];t[k+42|0]=w[d+136|0];d=e|1;k=v[(d<<2)+Q>>2];d=g+B(d,176)|0;v[k+36>>2]=v[d+132>>2];t[k+42|0]=w[d+136|0];e=e+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(m&1)){break a}c=v[(e<<2)+Q>>2];e=(Q+96|0)+B(e,176)|0;v[c+36>>2]=v[e+132>>2];t[c+42|0]=w[e+136|0]}Uf=Uf+1|0;if((bi|0)!=(Uf|0)){continue}break}}xa=Q+832|0;a=v[v[a+64>>2]+368>>2];v[Oc>>2]=v[a>>2];v[a>>2]=Oc}function rn(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=C(0),p=0,q=0,r=0,s=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;q=xa-16|0;xa=q;d=v[37696];h=Ba[v[v[d>>2]+20>>2]](d)|0?42579:63804;h=Ba[v[v[d+12>>2]+8>>2]](d+12|0,6368,h,7621,269)|0;v[h+4>>2]=0;v[h>>2]=124876;l=xa-16|0;xa=l;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,4115,24422,17657,51)|0;if(d){c=d+19&-16;v[c-4>>2]=c-d}j=h+16|0;d=j+16|0;v[d+4>>2]=128;v[d>>2]=c;while(1){f=e<<5;u[(f+c|0)+20>>1]=65535;u[((f|32)+c|0)+20>>1]=65535;u[((f|64)+c|0)+20>>1]=65535;u[((f|96)+c|0)+20>>1]=65535;u[((f|128)+c|0)+20>>1]=65535;u[((f|160)+c|0)+20>>1]=65535;u[((f|192)+c|0)+20>>1]=65535;u[((f|224)+c|0)+20>>1]=65535;e=e+8|0;if((e|0)!=128){continue}break}v[d+16>>2]=h;v[d+20>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+368>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;c=d- -64|0;v[c>>2]=0;v[c+4>>2]=0;v[d+72>>2]=0;v[d+76>>2]=0;v[d+80>>2]=0;v[d+84>>2]=0;v[d+660>>2]=0;v[d+388>>2]=0;v[d+380>>2]=0;v[d+384>>2]=1024;v[d+372>>2]=64;v[d+376>>2]=32;v[d+364>>2]=d+104;t[d+360|0]=1;t[d+652|0]=1;v[d+656>>2]=d+396;v[d+680>>2]=0;v[d+952>>2]=0;v[d+664>>2]=64;v[d+668>>2]=32;v[d+672>>2]=0;v[d+676>>2]=2048;v[d+972>>2]=0;v[d+976>>2]=0;v[d+964>>2]=0;v[d+968>>2]=4096;v[d+956>>2]=64;v[d+960>>2]=32;v[d+948>>2]=d+688;t[d+944|0]=1;v[d+1020>>2]=0;v[d+1024>>2]=0;c=d+1028|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1036|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1044|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1068>>2]=0;v[d+1072>>2]=0;v[d+1064>>2]=1;c=d+1076|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1092>>2]=0;v[d+1096>>2]=0;c=d+1084|0;v[c>>2]=0;v[c+4>>2]=1;c=d+1100|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1108|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1116>>2]=0;c=d+1128|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1120|0;v[c>>2]=1061158912;v[c+4>>2]=-1;wh(d+1096|0,64);v[d+1188>>2]=0;c=d+1180|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1172|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1164|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1156>>2]=0;v[d+1160>>2]=0;v[d+1196>>2]=0;v[d+1200>>2]=0;c=d+1204|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1212|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1220>>2]=0;c=d+1232|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1224|0;v[c>>2]=1061158912;v[c+4>>2]=-1;wh(d+1200|0,64);c=d+1264|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1256|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1248|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1240>>2]=0;v[d+1244>>2]=0;v[d+1288>>2]=0;c=d+1280|0;v[c>>2]=-1;v[c+4>>2]=0;c=d+1272|0;v[c>>2]=0;v[c+4>>2]=1061158912;wh(d+1252|0,64);v[d+1852>>2]=0;c=d+1576|0;v[c>>2]=8192;v[c+4>>2]=0;c=d+1568|0;v[c>>2]=64;v[c+4>>2]=0;v[d+1556>>2]=d+1296;t[d+1552|0]=1;c=d+1560|0;v[c>>2]=0;v[c+4>>2]=64;v[d+2144>>2]=0;v[d+1872>>2]=0;c=d+1864|0;v[c>>2]=0;v[c+4>>2]=8192;c=d+1856|0;v[c>>2]=64;v[c+4>>2]=32;v[d+1848>>2]=d+1588;t[d+1844|0]=1;c=d+2164|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2156|0;v[c>>2]=0;v[c+4>>2]=8192;c=d+2148|0;v[c>>2]=64;v[c+4>>2]=21;v[d+2140>>2]=d+1880;t[d+2136|0]=1;v[d+2192>>2]=v[b+40>>2];c=v[b+44>>2];v[d+2200>>2]=0;v[d+2204>>2]=0;v[d+2196>>2]=c;c=d+2208|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2216|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2232|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2224|0;v[c>>2]=1061158912;v[c+4>>2]=-1;wh(d+2200|0,64);c=d+2256|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2248|0;v[c>>2]=0;v[c+4>>2]=0;v[d+2240>>2]=0;v[d+2244>>2]=0;c=d+2272|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2264|0;v[c>>2]=1061158912;v[c+4>>2]=-1;wh(d+2240|0,64);c=v[b+112>>2];v[d+2356>>2]=0;t[d+2282|0]=c>>>10&1;f=I9(d+2284|0,0,68);e=d+2728|0;v[e>>2]=0;v[e+4>>2]=0;v[d+2672>>2]=0;v[d+2664>>2]=0;v[d+2668>>2]=0;t[d+2660|0]=0;v[d+2656>>2]=0;v[d+2444>>2]=0;v[d+2448>>2]=0;v[d+2380>>2]=0;v[d+2360>>2]=c;v[d+2416>>2]=0;v[d+2420>>2]=0;c=d+2424|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2432|0;v[c>>2]=0;v[c+4>>2]=0;I9(d+2456|0,0,68);v[d+2752>>2]=0;v[d+2756>>2]=0;v[d+2736>>2]=0;c=d+2720|0;v[c>>2]=h;v[c+4>>2]=0;v[d+2744>>2]=21610;v[d+2740>>2]=d;v[d+2712>>2]=135620;e=d+2760|0;c=e;v[c>>2]=0;v[c+4>>2]=0;v[d+2768>>2]=0;v[d+2776>>2]=21586;c=d+2804|0;v[c>>2]=0;v[c+4>>2]=4;v[d+2800>>2]=d+2780;t[d+2796|0]=1;t[d+2844|0]=0;c=d+2836|0;v[c>>2]=0;v[c+4>>2]=4;v[d+2832>>2]=d+2812;t[d+2828|0]=1;v[d+2752>>2]=126184;v[d+2772>>2]=0;c=v[37696];g=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804;D=d+2848|0,E=Ba[v[v[c+12>>2]+8>>2]](c+12|0,28,g,16755,113)|0,v[D>>2]=E;c=xa-16|0;xa=c;xa=c+16|0;v[d+2856>>2]=0;v[d+2860>>2]=0;v[d+2852>>2]=d;v[d+2752>>2]=135696;v[e>>2]=h;v[e+4>>2]=0;c=d+2864|0;v[c>>2]=0;v[c+4>>2]=0;v[d+2872>>2]=0;v[d+2876>>2]=0;v[d+2880>>2]=21667;e=d+2908|0;v[e>>2]=0;v[e+4>>2]=4;v[d+2904>>2]=d+2884;t[d+2900|0]=1;t[d+2948|0]=0;e=d+2940|0;v[e>>2]=0;v[e+4>>2]=4;v[d+2936>>2]=d+2916;t[d+2932|0]=1;v[d+2856>>2]=126184;e=v[37696];g=v[37696];D=d+2952|0,E=(G=e+12|0,H=28,I=Ba[v[v[g>>2]+20>>2]](g)|0?37931:63804,J=16755,K=113,F=v[v[e+12>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0),v[D>>2]=E;e=xa-16|0;xa=e;xa=e+16|0;v[d+2984>>2]=0;e=d+2976|0;v[e>>2]=0;v[e+4>>2]=0;v[d+2956>>2]=d;v[d+2856>>2]=135772;v[c>>2]=h;v[c+4>>2]=0;c=d+2968|0;v[c>>2]=h;v[c+4>>2]=0;c=d+3096|0;v[c>>2]=0;v[c+4>>2]=0;v[d+2992>>2]=3341;v[d+2988>>2]=d;v[d+2960>>2]=135848;I9(d+3e3|0,0,72);v[d+3104>>2]=0;v[d+3144>>2]=0;v[d+3184>>2]=0;v[d+3224>>2]=0;c=d+3088|0;v[c>>2]=h;v[c+4>>2]=0;c=d+3136|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3112>>2]=14478;v[d+3108>>2]=d;v[d+3080>>2]=135924;c=d+3128|0;v[c>>2]=h;v[c+4>>2]=0;c=d+3176|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3152>>2]=14440;v[d+3148>>2]=d;v[d+3120>>2]=136e3;c=d+3168|0;v[c>>2]=h;v[c+4>>2]=0;c=d+3216|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3192>>2]=4829;v[d+3188>>2]=d;v[d+3160>>2]=136076;v[d+3264>>2]=0;v[d+3200>>2]=136152;c=d+3208|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3228>>2]=d;v[d+3232>>2]=4805;c=d+3256|0;v[c>>2]=0;v[c+4>>2]=0;c=d+3248|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3240>>2]=136228;v[d+3268>>2]=d;v[d+3272>>2]=4415;c=d+3296|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3304>>2]=0;c=d+3288|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3344>>2]=0;c=d+3336|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3312>>2]=5113;v[d+3308>>2]=d;v[d+3280>>2]=136304;c=d+3328|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3384>>2]=0;c=d+3376|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3352>>2]=4574;v[d+3348>>2]=d;v[d+3320>>2]=136380;c=d+3368|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3424>>2]=0;c=d+3416|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3392>>2]=3035;v[d+3388>>2]=d;v[d+3360>>2]=136456;c=d+3408|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3464>>2]=0;c=d+3456|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3432>>2]=63980;v[d+3428>>2]=d;v[d+3400>>2]=136532;c=d+3448|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3504>>2]=0;c=d+3496|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3472>>2]=63832;v[d+3468>>2]=d;v[d+3440>>2]=136608;c=d+3488|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3544>>2]=0;c=d+3536|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3512>>2]=3495;v[d+3508>>2]=d;v[d+3480>>2]=136684;c=d+3528|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3584>>2]=0;c=d+3576|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3552>>2]=3101;v[d+3548>>2]=d;v[d+3520>>2]=136760;c=d+3568|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3624>>2]=0;c=d+3616|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3592>>2]=3817;v[d+3588>>2]=d;v[d+3560>>2]=136836;c=d+3608|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3664>>2]=0;c=d+3656|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3632>>2]=15502;v[d+3628>>2]=d;v[d+3600>>2]=136912;c=d+3648|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3704>>2]=0;c=d+3696|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3672>>2]=3195;v[d+3668>>2]=d;v[d+3640>>2]=136988;c=d+3688|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3744>>2]=0;c=d+3736|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3712>>2]=15407;v[d+3708>>2]=d;v[d+3680>>2]=137064;c=d+3728|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3784>>2]=0;c=d+3776|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3752>>2]=14729;v[d+3748>>2]=d;v[d+3720>>2]=137140;c=d+3768|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3824>>2]=0;c=d+3816|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3792>>2]=14711;v[d+3788>>2]=d;v[d+3760>>2]=137216;c=d+3808|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3864>>2]=0;c=d+3856|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3832>>2]=21554;v[d+3828>>2]=d;v[d+3800>>2]=137292;c=d+3848|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3904>>2]=0;c=d+3896|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3872>>2]=15891;v[d+3868>>2]=d;v[d+3840>>2]=137368;c=d+3888|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3944>>2]=0;c=d+3936|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3912>>2]=15059;v[d+3908>>2]=d;v[d+3880>>2]=137444;c=d+3928|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3984>>2]=0;c=d+3976|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3952>>2]=15128;v[d+3948>>2]=d;v[d+3920>>2]=137520;c=d+3968|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4024>>2]=0;c=d+4016|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3992>>2]=21525;v[d+3988>>2]=d;v[d+3960>>2]=137596;c=d+4008|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4064>>2]=0;c=d+4056|0;v[c>>2]=0;v[c+4>>2]=0;v[d+4032>>2]=21640;v[d+4028>>2]=d;v[d+4e3>>2]=137672;c=d+4048|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4104>>2]=0;c=d+4096|0;v[c>>2]=0;v[c+4>>2]=0;v[d+4072>>2]=21712;v[d+4068>>2]=d;v[d+4040>>2]=137748;c=d+4088|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4144>>2]=0;v[d+4140>>2]=0;v[d+4136>>2]=0;v[d+4112>>2]=2169;v[d+4108>>2]=d;v[d+4080>>2]=137824;c=d+4128|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4152>>2]=64008;v[d+4148>>2]=d;v[d+4120>>2]=137900;v[d+4176>>2]=0;c=d+4168|0;v[c>>2]=0;v[c+4>>2]=0;v[d+4160>>2]=0;v[d+4164>>2]=0;v[d+4180>>2]=0;v[d+4160>>2]=126184;v[d+4212>>2]=0;v[d+4184>>2]=63860;v[d+4244>>2]=0;v[d+4216>>2]=4;v[d+4208>>2]=d+4188;t[d+4204|0]=1;t[d+4252|0]=0;v[d+4248>>2]=4;v[d+4240>>2]=d+4220;t[d+4236|0]=1;e=v[37696];g=v[37696];D=d+4256|0,E=(K=e+12|0,J=28,I=Ba[v[v[g>>2]+20>>2]](g)|0?37931:63804,H=16755,G=113,F=v[v[e+12>>2]+8>>2],Ba[F](K|0,J|0,I|0,H|0,G|0)|0),v[D>>2]=E;e=xa-16|0;xa=e;xa=e+16|0;v[d+4288>>2]=0;v[d+4328>>2]=0;v[d+4368>>2]=0;v[d+4284>>2]=0;v[d+4280>>2]=0;v[d+4260>>2]=d;v[d+4160>>2]=137976;v[c>>2]=h;v[c+4>>2]=0;c=d+4272|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4324>>2]=0;v[d+4320>>2]=0;v[d+4296>>2]=3551;v[d+4292>>2]=d;v[d+4264>>2]=138052;c=d+4312|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4364>>2]=0;v[d+4360>>2]=0;v[d+4336>>2]=14199;v[d+4332>>2]=d;v[d+4304>>2]=138128;v[d+4408>>2]=0;v[d+4344>>2]=138204;c=d+4352|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4372>>2]=d;v[d+4376>>2]=3519;c=d+4400|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4392|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4384>>2]=138280;v[d+4412>>2]=d;v[d+4416>>2]=3848;c=d+4440|0;v[c>>2]=0;v[c+4>>2]=0;v[d+4448>>2]=0;c=d+4432|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4488>>2]=0;v[d+4484>>2]=0;v[d+4480>>2]=0;v[d+4456>>2]=3944;v[d+4452>>2]=d;v[d+4424>>2]=138356;c=d+4472|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4528>>2]=0;v[d+4524>>2]=0;v[d+4520>>2]=0;v[d+4496>>2]=21693;v[d+4492>>2]=d;v[d+4464>>2]=138432;c=d+4512|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4568>>2]=0;v[d+4564>>2]=0;v[d+4560>>2]=0;v[d+4536>>2]=13911;v[d+4532>>2]=d;v[d+4504>>2]=138508;c=d+4552|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4576>>2]=13891;v[d+4572>>2]=d;v[d+4544>>2]=138584;g=uu(d+4584|0);v[d+4624>>2]=0;v[d+4628>>2]=0;t[d+4621|0]=0;t[d+4620|0]=0;c=d+4632|0;v[c>>2]=0;v[c+4>>2]=0;e=d+4640|0;v[e>>2]=0;v[e+4>>2]=0;e=d+4648|0;v[e>>2]=0;v[e+4>>2]=0;v[d+4668>>2]=0;v[d+4664>>2]=0;v[d+4660>>2]=-1;v[d+4656>>2]=1061158912;wh(c,64);v[d+4740>>2]=0;v[d+4736>>2]=0;v[d+996>>2]=0;v[d+88>>2]=0;v[d+92>>2]=0;v[d+96>>2]=0;v[d+4672>>2]=0;v[d+4676>>2]=0;c=d+4680|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4688|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4696|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4704|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4712|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4720|0;v[c>>2]=0;v[c+4>>2]=0;v[d+4728>>2]=0;c=v[37696];e=v[37696];D=d,E=I9((G=c+12|0,H=156,I=Ba[v[v[e>>2]+20>>2]](e)|0?30025:63804,J=11777,K=645,F=v[v[c+12>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0),0,156),v[D+2352>>2]=E;c=v[37696];e=v[37696];c=(E=c+12|0,F=44,K=Ba[v[v[e>>2]+20>>2]](e)|0?33035:63804,J=11777,I=646,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c+32>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+40>>2]=0;v[c+36>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[d+2364>>2]=c;c=v[37696];e=v[37696];c=(I=c+12|0,J=44,K=Ba[v[v[e>>2]+20>>2]](e)|0?33035:63804,F=11777,E=647,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,K|0,F|0,E|0)|0);v[c+32>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+40>>2]=0;v[c+36>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[d+2368>>2]=c;c=v[37696];e=v[37696];c=(E=c+12|0,F=44,K=Ba[v[v[e>>2]+20>>2]](e)|0?33035:63804,J=11777,I=648,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c+32>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+40>>2]=0;v[c+36>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[d+2372>>2]=c;c=v[37696];e=v[37696];c=(I=c+12|0,J=44,K=Ba[v[v[e>>2]+20>>2]](e)|0?33035:63804,F=11777,E=649,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,K|0,F|0,E|0)|0);v[c+32>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+40>>2]=0;v[c+36>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[d+2376>>2]=c;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,12,24422,11777,651)|0;v[d+1192>>2]=c;v[c+8>>2]=0;v[c+4>>2]=0;v[c>>2]=0;c=v[37696];e=v[37696];c=(E=c+12|0,F=32,K=Ba[v[v[e>>2]+20>>2]](e)|0?50635:63804,J=11777,I=654,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c+8>>2]=0;v[c+12>>2]=0;v[c+4>>2]=52;v[c>>2]=64;v[c+28>>2]=14784;t[c+24|0]=1;v[c+16>>2]=0;v[c+20>>2]=0;v[l+8>>2]=0;v[l>>2]=0;v[l+4>>2]=0;e=v[37696];i=Ba[v[v[e+12>>2]+8>>2]](e+12|0,3328,24422,18584,60)|0;e=v[c+16>>2];m=v[c+20>>2];v[l>>2]=i;a:{if(e>>>0>=(m&2147483647)>>>0){KO(c+12|0,l);break a}i=v[l+4>>2];e=v[c+12>>2]+B(e,12)|0;v[e>>2]=v[l>>2];v[e+4>>2]=i;v[e+8>>2]=v[l+8>>2];v[c+16>>2]=v[c+16>>2]+1}v[d+2388>>2]=c;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?50293:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,32,e,11777,655)|0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=64;v[c+4>>2]=176;v[c+28>>2]=14767;t[c+24|0]=1;v[c+16>>2]=0;v[c+20>>2]=0;v[l+8>>2]=0;v[l>>2]=0;v[l+4>>2]=0;e=v[37696];i=Ba[v[v[e+12>>2]+8>>2]](e+12|0,11264,24422,18584,60)|0;e=v[c+16>>2];m=v[c+20>>2];v[l>>2]=i;b:{if(e>>>0>=(m&2147483647)>>>0){KO(c+12|0,l);break b}i=v[l+4>>2];e=v[c+12>>2]+B(e,12)|0;v[e>>2]=v[l>>2];v[e+4>>2]=i;v[e+8>>2]=v[l+8>>2];v[c+16>>2]=v[c+16>>2]+1}v[d+2392>>2]=c;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?50463:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,32,e,11777,656)|0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=64;v[c+4>>2]=40;v[c+28>>2]=14775;t[c+24|0]=1;v[c+16>>2]=0;v[c+20>>2]=0;v[l+8>>2]=0;v[l>>2]=0;v[l+4>>2]=0;e=v[37696];i=Ba[v[v[e+12>>2]+8>>2]](e+12|0,2560,24422,18584,60)|0;e=v[c+16>>2];m=v[c+20>>2];v[l>>2]=i;c:{if(e>>>0>=(m&2147483647)>>>0){KO(c+12|0,l);break c}i=v[l+4>>2];e=v[c+12>>2]+B(e,12)|0;v[e>>2]=v[l>>2];v[e+4>>2]=i;v[e+8>>2]=v[l+8>>2];v[c+16>>2]=v[c+16>>2]+1}v[d+2384>>2]=c;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?51759:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,292,e,11777,657)|0;v[c+284>>2]=2560;v[c+288>>2]=0;v[c+276>>2]=32;v[c+280>>2]=0;v[c+264>>2]=c+4;t[c+260|0]=1;v[c+268>>2]=0;v[c+272>>2]=64;v[d+2396>>2]=c;c=v[37696];e=v[37696];c=(I=c+12|0,J=292,K=Ba[v[v[e>>2]+20>>2]](e)|0?51439:63804,F=11777,E=658,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,K|0,F|0,E|0)|0);v[c+284>>2]=1024;v[c+288>>2]=0;v[c+276>>2]=32;v[c+280>>2]=0;v[c+264>>2]=c+4;t[c+260|0]=1;v[c+268>>2]=0;v[c+272>>2]=64;v[d+2408>>2]=c;c=v[37696];e=v[37696];c=(E=c+12|0,F=292,K=Ba[v[v[e>>2]+20>>2]](e)|0?38601:63804,J=11777,I=659,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c+284>>2]=6144;v[c+288>>2]=0;v[c+276>>2]=32;v[c+280>>2]=0;v[c+264>>2]=c+4;t[c+260|0]=1;v[c+268>>2]=0;v[c+272>>2]=64;v[d+2400>>2]=c;c=v[37696];e=v[37696];c=(I=c+12|0,J=292,K=Ba[v[v[e>>2]+20>>2]](e)|0?38733:63804,F=11777,E=660,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,K|0,F|0,E|0)|0);v[c+284>>2]=22528;v[c+288>>2]=0;v[c+276>>2]=32;v[c+280>>2]=0;v[c+264>>2]=c+4;t[c+260|0]=1;v[c+268>>2]=0;v[c+272>>2]=64;v[d+2404>>2]=c;c=v[37696];e=v[37696];c=(E=c+12|0,F=292,K=Ba[v[v[e>>2]+20>>2]](e)|0?52047:63804,J=11777,I=662,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c+284>>2]=2048;v[c+288>>2]=0;v[c+276>>2]=32;v[c+280>>2]=0;v[c+264>>2]=c+4;t[c+260|0]=1;v[c+268>>2]=0;v[c+272>>2]=64;v[d+2412>>2]=c;c=v[37696];e=v[37696];e=(I=c+12|0,J=1,K=Ba[v[v[e>>2]+20>>2]](e)|0?29519:63804,F=11777,E=664,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,K|0,F|0,E|0)|0);v[l>>2]=e;c=v[d+2288>>2];d:{if(c>>>0>=(v[d+2292>>2]&2147483647)>>>0){LO(f,l);break d}v[v[d+2284>>2]+(c<<2)>>2]=e;v[d+2288>>2]=c+1}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?34103:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,376,e,11777,665)|0;v[c+292>>2]=0;v[c+296>>2]=0;v[c+288>>2]=1536;v[c+280>>2]=32;v[c+284>>2]=0;v[c+268>>2]=c+8;t[c+264|0]=1;v[c+272>>2]=0;v[c+276>>2]=64;v[c+300>>2]=0;v[c+304>>2]=0;v[c+308>>2]=0;v[c+312>>2]=0;v[c+316>>2]=0;v[c+328>>2]=0;v[c+332>>2]=0;v[c+320>>2]=1061158912;v[c+324>>2]=-1;wh(c+296|0,64);v[c+352>>2]=0;v[c+356>>2]=0;v[c+344>>2]=0;v[c+348>>2]=0;v[c+336>>2]=0;v[c+340>>2]=0;v[c+368>>2]=0;v[c+372>>2]=0;v[c+360>>2]=1061158912;v[c+364>>2]=-1;wh(c+336|0,64);v[d+1136>>2]=c;c=v[37696];e=v[37696];c=(E=c+12|0,F=48,K=Ba[v[v[e>>2]+20>>2]](e)|0?33697:63804,J=11777,I=667,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c>>2]=0;v[c+4>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[d+1152>>2]=c;c=v[37696];e=Ba[v[v[c>>2]+4>>2]](c)|0;f=v[b+116>>2];c=v[37696];i=Ba[v[v[c>>2]+20>>2]](c)|0?32163:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,96,i,8741,144)|0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+8>>2]=f;v[c+4>>2]=e;v[c>>2]=131412;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+36>>2]=1061158912;v[c+40>>2]=-1;XJ(c+12|0,64);v[c+52>>2]=0;e=v[37696];f=v[37696];D=c,I=(K=e+12|0,F=28,E=Ba[v[v[f>>2]+20>>2]](f)|0?37931:63804,H=16755,G=113,J=v[v[e+12>>2]+8>>2],Ba[J](K|0,F|0,E|0,H|0,G|0)|0),v[D+56>>2]=I;e=xa-16|0;xa=e;xa=e+16|0;v[c+92>>2]=0;v[c+84>>2]=0;v[c+88>>2]=0;v[c+76>>2]=0;v[c+80>>2]=0;v[c+68>>2]=0;v[c+72>>2]=0;v[c+60>>2]=0;v[c+64>>2]=0;v[d+4612>>2]=c;c=v[b+120>>2];e=d+2676|0;v[e>>2]=0;v[e+4>>2]=0;v[d+4616>>2]=c;c=d+2684|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2692|0;v[c>>2]=0;v[c+4>>2]=0;v[d+2700>>2]=0;t[d+4621|0]=0;c=v[37696];e=v[37696];c=(I=c+12|0,J=1840,G=Ba[v[v[e>>2]+20>>2]](e)|0?26587:63804,H=11777,E=710,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,G|0,H|0,E|0)|0);i=v[d+4612>>2];m=v[d+4616>>2];e=yG(c);c=e+24|0;f=v[37696];k=Ba[v[v[f>>2]+20>>2]](f)|0?37931:63804;D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,28,k,16755,113)|0,v[D>>2]=E;f=xa-16|0;xa=f;xa=f+16|0;I9(c+4|0,0,144);v[c+160>>2]=0;v[c+164>>2]=0;v[c+152>>2]=0;v[c+156>>2]=0;v[c+172>>2]=0;v[c+176>>2]=0;v[c+168>>2]=e;v[e+296>>2]=0;v[e+288>>2]=0;v[e+280>>2]=0;v[e+284>>2]=0;v[e+212>>2]=125980;v[e+204>>2]=0;v[e+208>>2]=0;v[e+216>>2]=0;v[e+220>>2]=0;v[e+224>>2]=0;v[e+228>>2]=0;v[e+232>>2]=0;v[e+236>>2]=0;v[e+240>>2]=0;v[e+244>>2]=0;v[e+248>>2]=0;v[e+252>>2]=0;v[e+256>>2]=0;v[e+260>>2]=0;v[e+264>>2]=0;v[e+268>>2]=0;t[e+269|0]=0;t[e+270|0]=0;t[e+271|0]=0;t[e+272|0]=0;t[e+273|0]=0;t[e+274|0]=0;t[e+275|0]=0;t[e+276|0]=0;f=v[37696];k=Ba[v[v[f>>2]+20>>2]](f)|0?38053:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,28,k,16913,103)|0;v[e+304>>2]=f;v[f>>2]=0;v[e+340>>2]=0;v[e+344>>2]=0;v[e+336>>2]=e;v[e+328>>2]=0;v[e+332>>2]=0;v[e+312>>2]=256;v[e+316>>2]=0;v[e+308>>2]=e;v[e+620>>2]=0;v[e+320>>2]=8;v[e+324>>2]=0;v[e+912>>2]=0;v[e+640>>2]=0;v[e+632>>2]=0;v[e+636>>2]=69632;v[e+624>>2]=64;v[e+628>>2]=256;v[e+616>>2]=e+356;t[e+612|0]=1;t[e+904|0]=1;v[e+908>>2]=e+648;v[e+940>>2]=0;v[e+916>>2]=64;v[e+920>>2]=256;v[e+924>>2]=0;v[e+928>>2]=32768;v[e+932>>2]=0;v[e+936>>2]=0;v[e+948>>2]=0;v[e+952>>2]=0;v[e+960>>2]=0;v[e+964>>2]=0;v[e+972>>2]=0;v[e+976>>2]=0;v[e+984>>2]=0;v[e+988>>2]=0;f=v[37696];k=v[37696];D=e,E=(G=f+12|0,J=28,I=Ba[v[v[k>>2]+20>>2]](k)|0?37931:63804,F=16755,K=113,H=v[v[f+12>>2]+8>>2],Ba[H](G|0,J|0,I|0,F|0,K|0)|0),v[D+1016>>2]=E;f=xa-16|0;xa=f;xa=f+16|0;v[e+1160>>2]=m;v[e+1156>>2]=g;v[e+1152>>2]=i;v[e+1028>>2]=0;v[e+1020>>2]=0;v[e+1024>>2]=0;I9(e+1164|0,0,648);f=v[b+112>>2];v[e+1832>>2]=h;v[e+1836>>2]=0;t[e+1813|0]=0;t[e+1814|0]=f>>>11&1;t[e+1812|0]=f>>>6&1;I9(v[e+972>>2],0,v[e+976>>2]<<2);I9(v[e+984>>2],0,v[e+988>>2]<<2);v[e+1012>>2]=0;v[e+1004>>2]=0;v[e+1008>>2]=0;v[e+996>>2]=0;v[e+1e3>>2]=0;f=e+1144|0;v[f>>2]=2122317823;v[f+4>>2]=2122317823;f=e+1136|0;v[f>>2]=-25165825;v[f+4>>2]=2122317823;v[e+1128>>2]=-25165825;v[e+1132>>2]=-25165825;I9(e+1032|0,0,96);f=v[b+156>>2];g=v[b+152>>2];v[c+148>>2]=g;v[c+144>>2]=f;f=g>>>0>64?g:64;if(f>>>0>(v[c+12>>2]&2147483647)>>>0){zy(c+4|0,f)}if(!(v[c+108>>2]&2147483632)){Ay(c+100|0,16)}if(f>>>0>(v[c+48>>2]&2147483647)>>>0){zy(c+40|0,f)}if(f>>>0>(v[c+60>>2]&2147483647)>>>0){zy(c+52|0,f)}if(f>>>0>(v[c+72>>2]&2147483647)>>>0){zy(c- -64|0,f)}if(f>>>0>(v[c+84>>2]&2147483647)>>>0){zy(c+76|0,f)}if(f>>>0>(v[c+120>>2]&2147483647)>>>0){zy(c+112|0,f)}By(c,g);v[d+976>>2]=e;v[e+296>>2]=d;v[d+1008>>2]=0;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,16,24422,8452,71)|0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=131596;v[c+12>>2]=0;v[d+1008>>2]=c;f=v[b+80>>2];m=v[b+84>>2];k=v[b- -64>>2];n=v[b+68>>2];e:{f:{g:{h:{c=v[b+48>>2];switch(((c|0)==3?2:c)-1|0){case 0:break g;case 1:break h;default:break f}}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?49271:63804;e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,40,e,13489,3401)|0;c=e;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=131688;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;c=v[37696];f=Ba[v[v[c>>2]+20>>2]](c)|0?49393:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,388,f,13489,3102)|0;v[c>>2]=0;NK(c+4|0,0);NK(c+96|0,2);RU(c+188|0);NK(c+224|0,1);v[c+316>>2]=0;v[c+320>>2]=0;v[c+324>>2]=0;v[c+328>>2]=0;v[c+332>>2]=0;v[c+336>>2]=0;v[c+340>>2]=0;v[c+344>>2]=0;v[c+364>>2]=0;v[c+356>>2]=0;v[c+360>>2]=0;v[c+348>>2]=0;v[c+352>>2]=0;v[c+368>>2]=0;v[c+372>>2]=0;v[c+384>>2]=0;v[c+376>>2]=0;v[c+380>>2]=0;v[e+4>>2]=c;f=k+n|0;if(f){g=v[c+316>>2];if(g){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,g)}v[c+316>>2]=0;i=f<<2;k=(f|0)!=(f&1073741823)?-1:i;if(k){g=v[37696];n=Ba[v[v[g>>2]+20>>2]](g)|0?29721:63804;g=Ba[v[v[g+12>>2]+8>>2]](g+12|0,k,n,13489,2858)|0}else{g=0}g=I9(g,255,i);v[c+320>>2]=f;v[c+316>>2]=g}YH(c+340|0,m);if(!(v[e+16>>2]&2147482624)){bL(e+8|0,1024)}if(!(v[e+28>>2]&2147482624)){bL(e+20|0,1024)}c=e;break e}g=0;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?49069:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,136,e,11138,66)|0;v[c+32>>2]=0;v[c+92>>2]=0;v[c+96>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c>>2]=131836;v[c+36>>2]=0;v[c+40>>2]=0;v[c+16>>2]=h;v[c+20>>2]=0;e=c- -64|0;v[e>>2]=0;v[e+4>>2]=0;v[c+8>>2]=131932;v[c+76>>2]=0;v[c+80>>2]=0;v[c+56>>2]=h;v[c+60>>2]=0;v[c+48>>2]=132020;p=c+100|0;e=p;v[e>>2]=0;v[e+4>>2]=0;v[c+108>>2]=0;v[c+112>>2]=0;v[c+116>>2]=0;v[c+120>>2]=0;v[c+124>>2]=0;v[c+128>>2]=0;v[c+72>>2]=0;e=v[37696];i=Ba[v[v[e>>2]+20>>2]](e)|0?49191:63804;i=Ba[v[v[e+12>>2]+8>>2]](e+12|0,4224,i,13406,2956)|0;e=i;v[e+12>>2]=0;v[e+16>>2]=0;v[e+8>>2]=-1;v[e>>2]=0;v[e+4>>2]=-1;v[e+20>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+40>>2]=0;v[e+60>>2]=0;v[e+52>>2]=0;v[e+56>>2]=0;v[e+44>>2]=0;v[e+48>>2]=0;v[e+72>>2]=0;v[e+64>>2]=0;v[e+68>>2]=0;v[e+76>>2]=0;v[e+80>>2]=0;v[e+84>>2]=0;v[e+88>>2]=0;I9(e+92|0,0,3084);v[e+4212>>2]=0;v[e+4204>>2]=0;v[e+4208>>2]=0;e=e+4216|0;v[e>>2]=0;v[e+4>>2]=0;I9(i+3176|0,255,1028);v[c+88>>2]=i;e=k+n|0;i:{if(!f){break i}v[i+16>>2]=0;if(f>>>0<=(v[i+20>>2]&2147483647)>>>0){break i}sL(i+12|0,f)}if(e){v[i+28>>2]=0;if(e>>>0>(v[i+32>>2]&2147483647)>>>0){tL(i+24|0,e)}f=(e>>>5|0)+((e&31)!=0)|0;v[i+4220>>2]=f;k=v[i+4216>>2];if(k){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,k);v[i+4216>>2]=0;f=v[i+4220>>2]}f=f<<2;j:{if(!f){f=0;k=0;break j}k=v[37696];f=Ba[v[v[k+12>>2]+8>>2]](k+12|0,f,24422,13406,254)|0;k=v[i+4220>>2]<<2}v[i+4216>>2]=f;I9(f,0,k);I9(v[i+4216>>2],0,v[i+4220>>2]<<2)}YH(i+36|0,m);if(e){i=e<<2;if(i){f=v[37696];g=Ba[v[v[f+12>>2]+8>>2]](f+12|0,i,24422,13406,2977)|0}f=v[c+96>>2];if(f){H9(g,v[c+92>>2],f<<2);f=v[c+96>>2]}else{f=0}if(f>>>0>>0){f=f<<2;I9(f+g|0,255,i-f|0)}f=v[c+92>>2];if(f){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,f)}v[c+96>>2]=e;v[c+92>>2]=g}if(!(v[c+108>>2]&2147482624)){bL(p,1024)}if(!(v[c+120>>2]&2147482624)){bL(c+112|0,1024)}break e}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?35571:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,440,e,11138,68)|0;v[c+32>>2]=0;v[c+4>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c>>2]=132220;v[c+16>>2]=h;v[c+20>>2]=0;e=c- -64|0;v[e>>2]=0;v[e+4>>2]=0;v[c+8>>2]=132108;v[c+56>>2]=h;v[c+60>>2]=0;v[c+48>>2]=132164;v[c+72>>2]=0;v[c+216>>2]=0;v[c+220>>2]=0;v[c+248>>2]=0;v[c+252>>2]=0;v[c+240>>2]=0;v[c+244>>2]=0;v[c+232>>2]=0;v[c+236>>2]=0;v[c+224>>2]=0;v[c+228>>2]=0;v[c+312>>2]=0;v[c+360>>2]=0;v[c+304>>2]=0;v[c+308>>2]=0;v[c+352>>2]=0;v[c+356>>2]=0;v[c+332>>2]=0;v[c+324>>2]=0;v[c+328>>2]=0;v[c+316>>2]=0;v[c+320>>2]=-1;v[c+288>>2]=132316;v[c+400>>2]=0;v[c+404>>2]=0;v[c+380>>2]=0;v[c+372>>2]=0;v[c+376>>2]=0;v[c+364>>2]=0;v[c+368>>2]=-1;v[c+336>>2]=132316;v[c+420>>2]=0;v[c+424>>2]=0;v[c+412>>2]=0;v[c+416>>2]=-1;v[c+432>>2]=h;v[c+436>>2]=0;v[c+428>>2]=0;v[c+384>>2]=132316;v[c+408>>2]=0;v[c+392>>2]=h;v[c+396>>2]=0;v[c+344>>2]=h;v[c+348>>2]=0;v[c+296>>2]=h;v[c+300>>2]=0;v[c+188>>2]=0;v[c+192>>2]=0;f=(k+n|0)+31&-32;v[c+128>>2]=f;k:{l:{e=f<<3;m:{if(!e){v[c+132>>2]=0;g=c+132|0;break m}f=v[37696];D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,69)|0,v[D+132>>2]=E;g=c+132|0;f=v[c+128>>2];e=(f<<3)+15&-16;if(e){break l}}e=0;i=c+136|0;v[i>>2]=0;break k}i=c+136|0;f=v[37696];D=i,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,70)|0,v[D>>2]=E;f=v[c+128>>2];e=(f<<3)+15&-16;if(!e){e=0;break k}f=v[37696];e=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,71)|0;f=v[c+128>>2]}v[c+140>>2]=e;n:{o:{if(!f){v[c+168>>2]=0;v[c+196>>2]=2;i=c+196|0;g=16;break o}i=v[i>>2];n=v[g>>2];f=0;while(1){g=f<<3;k=g+n|0;v[k>>2]=1073741823;v[k+4>>2]=1073741823;k=g+i|0;v[k>>2]=1073741823;v[k+4>>2]=1073741823;g=e+g|0;v[g>>2]=1073741823;v[g+4>>2]=1073741823;f=f+1|0;k=v[c+128>>2];if(f>>>0>>0){continue}break}f=(k<<1)+2|0;v[c+196>>2]=f;i=c+196|0;e=0;g=0;k=k+15&-16;if(k){f=v[37696];g=Ba[v[v[f+12>>2]+8>>2]](f+12|0,k,24422,9522,85)|0;f=v[c+196>>2]}v[c+168>>2]=g;g=(f<<2)+15&-16;if(!g){break n}}e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,g,24422,9522,86)|0;f=v[i>>2]}v[c+172>>2]=e;e=(f<<3)+15&-16;p:{if(!e){g=0;break p}f=v[37696];g=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,87)|0;f=v[i>>2]}v[c+176>>2]=g;q:{r:{s:{t:{u:{v:{e=(f<<2)+15&-16;w:{if(!e){v[c+144>>2]=0;break w}f=v[37696];D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,89)|0,v[D+144>>2]=E;e=(v[c+196>>2]<<2)+15&-16;if(e){break v}}v[c+148>>2]=0;break u}f=v[37696];D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,90)|0,v[D+148>>2]=E;e=(v[c+196>>2]<<2)+15&-16;if(e){break t}}v[c+152>>2]=0;break s}f=v[37696];D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,91)|0,v[D+152>>2]=E;e=(v[c+196>>2]<<2)+15&-16;if(e){break r}}v[c+156>>2]=0;f=0;e=0;break q}f=v[37696];D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,92)|0,v[D+156>>2]=E;e=(v[c+196>>2]<<2)+15&-16;if(!e){f=0;e=0;break q}f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,93)|0;e=(v[i>>2]<<2)+15&-16}v[c+160>>2]=f;f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,94)|0;v[c+164>>2]=f;g=v[c+156>>2];e=0;k=v[c+144>>2];v[k>>2]=0;v[g>>2]=1073741822;v[k+4>>2]=-1;v[g+4>>2]=1073741823;g=v[c+160>>2];k=v[c+148>>2];v[k>>2]=0;v[g>>2]=1073741822;v[k+4>>2]=-1;v[g+4>>2]=1073741823;g=v[c+152>>2];v[g>>2]=0;v[f>>2]=1073741822;v[g+4>>2]=-1;v[f+4>>2]=1073741823;g=v[c+196>>2];f=(g<<2)+15&-16;x:{if(!f){v[c+180>>2]=0;break x}g=v[37696];D=c,E=Ba[v[v[g+12>>2]+8>>2]](g+12|0,f,24422,9522,104)|0,v[D+180>>2]=E;g=v[c+196>>2];f=(g<<2)+15&-16;if(!f){break x}e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,24422,9522,105)|0;g=v[i>>2]}v[c+184>>2]=e;f=1;k=v[c+180>>2];if(g>>>0>1){while(1){g=f-1|0;v[k+(g<<2)>>2]=f;v[(f<<2)+e>>2]=g;f=f+1|0;g=v[i>>2];if(f>>>0>>0){continue}break}}f=g-1|0;v[k+(f<<2)>>2]=f;v[e>>2]=0;e=m>>>0>64?m:64;v[c+200>>2]=e;f=(e<<2)+15&-16;y:{if(!f){v[c+216>>2]=0;f=0;break y}g=v[37696];D=c,E=Ba[v[v[g+12>>2]+8>>2]](g+12|0,f,24422,5684,103)|0,v[D+216>>2]=E;g=v[37696];f=Ba[v[v[g+12>>2]+8>>2]](g+12|0,f,24422,5684,104)|0}v[c+220>>2]=f;f=0;g=(e<<3)+15&-16;if(g){i=v[37696];g=Ba[v[v[i+12>>2]+8>>2]](i+12|0,g,24422,5684,105)|0}else{g=0}v[c+236>>2]=g;g=e+15&-16;if(g){f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,g,24422,5684,106)|0}v[c+248>>2]=e;v[c+232>>2]=e;v[c+228>>2]=e;v[c+240>>2]=f;v[c+412>>2]=c;v[c+364>>2]=c;v[c+428>>2]=0;v[c+416>>2]=2;v[c+420>>2]=0;v[c+316>>2]=c;v[c+380>>2]=0;v[c+368>>2]=1;v[c+372>>2]=0;v[c+332>>2]=0;v[c+320>>2]=0;v[c+324>>2]=0;v[c+212>>2]=0;v[c+204>>2]=0;v[c+208>>2]=0;v[c+256>>2]=0;v[c+260>>2]=0;v[c+120>>2]=0;v[c+264>>2]=0;v[c+268>>2]=0;v[c+272>>2]=0;v[c+276>>2]=0;v[c+280>>2]=0}v[d+984>>2]=c;c=v[d+1008>>2];f=Ba[v[v[c>>2]+8>>2]](c,v[b+240>>2])|0;v[l>>2]=f;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?25471:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,20,e,11777,774)|0;v[c+12>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=f;v[d+1140>>2]=c;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,16,24422,11777,776)|0;e=v[l>>2];v[c+12>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=e;t[d+1148|0]=0;v[d+1144>>2]=c;i=v[d+2360>>2];c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,1240,24422,11777,782)|0;g=xa-16|0;xa=g;v[c>>2]=0;v[c+4>>2]=0;v[c+68>>2]=0;v[c+72>>2]=0;v[c+56>>2]=0;v[c+60>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c- -64>>2]=2048;v[c+76>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;v[c+88>>2]=0;e=c+92|0;v[e>>2]=0;v[e+4>>2]=0;v[c+100>>2]=0;v[c+104>>2]=0;v[c+108>>2]=0;v[c+112>>2]=0;v[c+116>>2]=0;v[c+120>>2]=0;v[c+124>>2]=2048;v[c+144>>2]=0;v[c+136>>2]=0;v[c+140>>2]=0;v[c+128>>2]=0;v[c+132>>2]=0;v[c+156>>2]=0;v[c+148>>2]=2048;v[c+152>>2]=0;m=c+168|0;k=c+80|0;n=c+104|0;p=nF(m,k,n,e,h);n=nF(c+640|0,0,n,0,h);e=c+1112|0;v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=h;v[e+12>>2]=0;v[e+32>>2]=n;v[e+28>>2]=c;v[e>>2]=130432;e=c+1152|0;v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=h;v[e+12>>2]=0;v[e+32>>2]=p;v[e+28>>2]=c;v[e>>2]=130432;e=c+1192|0;v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=h;v[e+12>>2]=0;v[e+28>>2]=c;v[e>>2]=130476;v[c+1232>>2]=h;v[c+1236>>2]=0;v[g+12>>2]=0;VF(k,1024,g+12|0);k=i&16384;v[c+1224>>2]=k>>>14|0?-1:1e3;xa=g+16|0;v[d+1e3>>2]=c;c=i&8;e=v[d+976>>2];g=e+1164|0;i=e+24|0;n=w[d+2282|0];p=v[e+1152>>2];r=v[e+1156>>2];z:{if(!v[b+92>>2]){n=(n|0)!=0;k=(k|0)!=0;s=(c|0)!=0;o=z[b+160>>2];A=(v[b+112>>2]&32768)>>>15|0;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,608,24422,7691,134)|0;if(c){v[c+4>>2]=0;v[c+8>>2]=0;v[c+180>>2]=g;v[c+164>>2]=f;v[c+104>>2]=32;v[c+84>>2]=-1073741824;t[c+66|0]=s;t[c+65|0]=k;t[c+64|0]=n;z[c+60>>2]=o;v[c+52>>2]=1065353216;v[c+56>>2]=1065353216;v[c+44>>2]=m;v[c+36>>2]=0;v[c+40>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+176>>2]=0;v[c+168>>2]=0;v[c+172>>2]=0;v[c+192>>2]=0;v[c+196>>2]=0;v[c>>2]=128184;v[c+200>>2]=0;v[c+204>>2]=0;v[c+208>>2]=0;v[c+212>>2]=0;v[c+216>>2]=0;v[c+220>>2]=0;g=v[37696];m=Ba[v[v[g>>2]+20>>2]](g)|0?38053:63804;g=Ba[v[v[g+12>>2]+8>>2]](g+12|0,28,m,16913,103)|0;v[c+336>>2]=g;v[g>>2]=0;v[c+480>>2]=0;v[c+472>>2]=0;v[c+476>>2]=0;v[c+340>>2]=i;I9(c+344|0,0,120);v[c+528>>2]=0;v[c+520>>2]=0;v[c+524>>2]=0;v[c+512>>2]=0;v[c+516>>2]=0;v[c+504>>2]=0;v[c+508>>2]=0;v[c+496>>2]=0;v[c+500>>2]=0;v[c+600>>2]=h;v[c+604>>2]=0;v[c+588>>2]=p;v[c+584>>2]=r;v[c+580>>2]=e;v[c+576>>2]=0;v[c+540>>2]=d;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,16830,262)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+4>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,16830,264)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+8>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,7691,190)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+464>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,7691,191)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+592>>2]=0;v[c+536>>2]=0;v[c+468>>2]=e;v[c+256>>2]=0;v[c+260>>2]=0;v[c+232>>2]=0;v[c+236>>2]=0;v[c+208>>2]=0;v[c+212>>2]=0;v[c+192>>2]=0;v[c+196>>2]=0;v[c+264>>2]=0;v[c+268>>2]=0;v[c+272>>2]=0;v[c+276>>2]=0;v[c+280>>2]=0;v[c+284>>2]=0;v[c+288>>2]=0;v[c+300>>2]=2139095039;v[c+292>>2]=-8388609;v[c+296>>2]=33554431;v[c+248>>2]=0;v[c+252>>2]=2139095039;v[c+216>>2]=0;v[c+220>>2]=65535;v[c+200>>2]=0;v[c+204>>2]=-1;v[c+240>>2]=0;v[c+244>>2]=0;v[c+224>>2]=0;v[c+228>>2]=0;v[c+304>>2]=0;v[c+308>>2]=0;v[c+312>>2]=0;v[c+316>>2]=1065353216;u[c+326>>1]=0;u[c+328>>1]=0;u[c+330>>1]=0;u[c+332>>1]=0;v[c+320>>2]=0;v[c+324>>2]=0;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,8,24422,10146,174)|0;if(e){t[e+4|0]=A;v[e>>2]=129264}v[c+484>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,4,24422,13572,200)|0;if(e){v[e>>2]=129508}v[c+488>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,4,24422,13572,200)|0;if(e){v[e>>2]=129508}v[c+492>>2]=e}break z}n=(n|0)!=0;k=(k|0)!=0;s=(c|0)!=0;o=z[b+244>>2];c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,640,24422,7773,108)|0;if(c){v[c+4>>2]=0;v[c+8>>2]=0;v[c+180>>2]=g;v[c+164>>2]=f;v[c+104>>2]=32;v[c+84>>2]=-1073741824;t[c+66|0]=s;t[c+65|0]=k;t[c+64|0]=n;v[c+60>>2]=2139095039;v[c+52>>2]=1065353216;v[c+56>>2]=1065353216;v[c+44>>2]=m;v[c+36>>2]=0;v[c+40>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+176>>2]=0;v[c+168>>2]=0;v[c+172>>2]=0;v[c>>2]=132404;g=v[37696];m=Ba[v[v[g>>2]+20>>2]](g)|0?38053:63804;g=Ba[v[v[g+12>>2]+8>>2]](g+12|0,28,m,16913,103)|0;v[c+368>>2]=g;v[g>>2]=0;v[c+372>>2]=i;I9(c+376|0,0,132);v[c+556>>2]=0;v[c+560>>2]=0;v[c+548>>2]=0;v[c+552>>2]=0;v[c+540>>2]=0;v[c+544>>2]=0;v[c+532>>2]=0;v[c+536>>2]=0;v[c+524>>2]=0;v[c+528>>2]=0;v[c+516>>2]=0;v[c+520>>2]=0;v[c+632>>2]=h;v[c+636>>2]=0;v[c+624>>2]=p;v[c+620>>2]=r;v[c+616>>2]=e;z[c+612>>2]=o;v[c+608>>2]=0;v[c+572>>2]=d;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,16830,262)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+4>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,16830,264)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+8>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,7773,274)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+508>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,7773,275)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+628>>2]=0;v[c+568>>2]=0;v[c+512>>2]=e;I9(c+192|0,0,76);v[c+316>>2]=0;v[c+308>>2]=0;v[c+312>>2]=0;v[c+300>>2]=0;v[c+304>>2]=0;v[c+292>>2]=0;v[c+296>>2]=0;v[c+284>>2]=0;v[c+288>>2]=0;v[c+276>>2]=0;v[c+280>>2]=0;v[c+268>>2]=1065353216;v[c+272>>2]=0;v[c+360>>2]=2139095039;v[c+352>>2]=0;v[c+356>>2]=33554431;v[c+344>>2]=0;v[c+348>>2]=-8388609;v[c+336>>2]=0;v[c+340>>2]=0;v[c+328>>2]=0;v[c+332>>2]=2139095039;v[c+320>>2]=0;v[c+324>>2]=0}}v[d+1004>>2]=c;e=v[d+976>>2];g=e;i=v[d+1e3>>2]+168|0;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,116,24422,6023,604)|0;if(c){v[c+4>>2]=e;v[c+8>>2]=134112;v[c>>2]=133964;I9(c+12|0,0,96);v[c+108>>2]=i;e=v[37696];i=Ba[v[v[e>>2]+20>>2]](e)|0?37931:63804;D=c,E=Ba[v[v[e+12>>2]+8>>2]](e+12|0,28,i,16755,113)|0,v[D+112>>2]=E;e=xa-16|0;xa=e;xa=e+16|0}v[g+1024>>2]=c;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,8,24422,11777,805)|0;v[c+4>>2]=d;v[c>>2]=134640;v[d+1016>>2]=c;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,8,24422,8260,37)|0;v[e>>2]=139176;v[e+4>>2]=c;v[d+1012>>2]=e;c=v[37696];e=v[37696];c=(E=c+12|0,H=568,K=Ba[v[v[e>>2]+20>>2]](e)|0?34389:63804,F=11777,I=808,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,H|0,K|0,F|0,I|0)|0);i=v[d+984>>2];m=v[d+1140>>2];k=v[d+1144>>2];g=v[b+68>>2]+v[b+64>>2]|0;n=v[b+40>>2];p=v[b+44>>2];e=v[37696];r=Ba[v[v[e>>2]+20>>2]](e)|0?37931:63804;D=c,I=Ba[v[v[e+12>>2]+8>>2]](e+12|0,28,r,16755,113)|0,v[D>>2]=I;e=xa-16|0;xa=e;xa=e+16|0;v[c+32>>2]=0;v[c+72>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=h;v[c+20>>2]=0;e=c- -64|0;v[e>>2]=0;v[e+4>>2]=0;v[c+40>>2]=c;v[c+36>>2]=0;v[c+8>>2]=130800;v[c+56>>2]=h;v[c+60>>2]=0;v[c+104>>2]=0;v[c+108>>2]=0;v[c+80>>2]=63918;v[c+76>>2]=c;v[c+48>>2]=131108;v[c+96>>2]=h;v[c+100>>2]=0;v[c+88>>2]=130724;v[c+124>>2]=0;v[c+128>>2]=0;v[c+116>>2]=0;v[c+120>>2]=0;v[c+112>>2]=0;v[c+160>>2]=0;v[c+164>>2]=0;v[c+148>>2]=0;v[c+152>>2]=0;v[c+136>>2]=0;v[c+140>>2]=0;v[c+168>>2]=v[l>>2];e=v[l>>2];v[c+204>>2]=0;v[c+196>>2]=0;v[c+200>>2]=0;v[c+192>>2]=k;v[c+188>>2]=0;v[c+180>>2]=0;v[c+184>>2]=0;v[c+176>>2]=e;e=v[l>>2];v[c+236>>2]=0;v[c+228>>2]=0;v[c+232>>2]=0;v[c+224>>2]=e;e=v[l>>2];v[c+252>>2]=0;v[c+244>>2]=0;v[c+248>>2]=0;v[c+240>>2]=e;e=v[l>>2];v[c+276>>2]=m;v[c+272>>2]=i;v[c+268>>2]=0;v[c+260>>2]=0;v[c+264>>2]=0;v[c+256>>2]=e;I9(c+280|0,0,85);v[c+376>>2]=0;v[c+380>>2]=0;v[c+368>>2]=0;v[c+372>>2]=-1;t[c+365|0]=1;v[c+384>>2]=0;v[c+388>>2]=0;v[c+392>>2]=0;v[c+396>>2]=0;v[c+400>>2]=0;v[c+404>>2]=0;v[c+408>>2]=0;v[c+412>>2]=0;v[c+416>>2]=0;v[c+420>>2]=0;v[c+424>>2]=0;v[c+436>>2]=0;v[c+440>>2]=0;v[c+428>>2]=1061158912;v[c+432>>2]=-1;jI(c+404|0,64);v[c+460>>2]=0;v[c+464>>2]=0;v[c+452>>2]=0;v[c+456>>2]=0;v[c+444>>2]=0;v[c+448>>2]=0;v[c+476>>2]=0;v[c+480>>2]=0;v[c+468>>2]=1061158912;v[c+472>>2]=-1;jI(c+444|0,64);v[c+500>>2]=0;v[c+504>>2]=0;v[c+492>>2]=0;v[c+496>>2]=-2;v[c+484>>2]=0;v[c+488>>2]=0;v[c+508>>2]=0;v[c+512>>2]=0;v[c+516>>2]=0;v[c+520>>2]=0;v[c+524>>2]=0;v[c+528>>2]=0;v[c+532>>2]=0;v[c+544>>2]=0;v[c+548>>2]=0;v[c+536>>2]=1061158912;v[c+540>>2]=-1;kI(c+512|0,64);v[c+552>>2]=h;v[c+556>>2]=0;e=v[37696];i=v[37696];e=(I=e+12|0,F=28,K=Ba[v[v[i>>2]+20>>2]](i)|0?38053:63804,H=16913,E=103,D=v[v[e+12>>2]+8>>2],Ba[D](I|0,F|0,K|0,H|0,E|0)|0);v[c+560>>2]=e;v[e>>2]=0;gI(c,g>>>0>1?g:1);v[c+208>>2]=0;v[c+212>>2]=0;t[c+217|0]=1;t[c+218|0]=1;t[c+219|0]=1;t[c+220|0]=1;t[c+221|0]=1;t[c+222|0]=1;t[c+223|0]=1;e=(p|0)!=2;t[c+212|0]=e;t[c+214|0]=1;t[c+209|0]=e;t[c+213|0]=(n|0)!=2;t[c+215|0]=1;t[c+216|0]=1;u[c+210>>1]=257;v[d+980>>2]=c;e=v[b+60>>2];A:{if(!e){break A}e=(e<<1)+256>>>5&134217720;if(e>>>0<=(v[c+164>>2]&2147483647)>>>0){break A}g=v[c+168>>2];g=Ba[v[v[g>>2]+8>>2]](g,e<<2,17999,438)|0;i=v[c+160>>2];B:{if(!i){break B}H9(g,i,v[c+164>>2]<<2);if(v[c+164>>2]<0){break B}i=v[c+160>>2];if(!i){break B}m=v[c+168>>2];Ba[v[v[m>>2]+12>>2]](m,i)}i=v[c+164>>2];I9(g+(i<<2)|0,0,e-i<<2);v[c+164>>2]=e;v[c+160>>2]=g}e=v[d+976>>2];c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,24,24422,5940,186)|0;t[c+20|0]=1;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=f;v[c+12>>2]=0;v[c+16>>2]=0;v[e+1816>>2]=c;v[v[d+976>>2]+1820>>2]=v[d+1144>>2];m=v[v[d+1004>>2]+4>>2];i=v[d+976>>2];k=v[i+1024>>2];o=z[b+172>>2];c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,336,24422,13661,266)|0;if(c){e=xa-16|0;xa=e;f=v[i+1832>>2];g=v[i+1836>>2];v[c+24>>2]=0;v[c- -64>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=f;v[c+12>>2]=g;v[c+56>>2]=0;v[c+60>>2]=0;v[c+32>>2]=13998;v[c>>2]=134412;v[c+48>>2]=f;v[c+52>>2]=g;v[c+96>>2]=0;v[c+100>>2]=0;v[c+72>>2]=22914;v[c+68>>2]=c;v[c+40>>2]=134488;v[c+88>>2]=f;v[c+92>>2]=g;t[c+124|0]=0;v[c+112>>2]=20769;v[c+108>>2]=c;v[c+80>>2]=134564;v[c+104>>2]=0;v[c+28>>2]=c;v[c+144>>2]=0;v[c+148>>2]=0;g=c+136|0;f=g;v[f>>2]=0;v[f+4>>2]=0;v[c+128>>2]=0;v[c+132>>2]=0;f=v[37696];n=Ba[v[v[f>>2]+20>>2]](f)|0?39783:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,8192,n,19811,210)|0;v[e+12>>2]=0;v[e+8>>2]=f;f=v[c+140>>2];C:{if(f>>>0>=(v[c+144>>2]&2147483647)>>>0){iO(g,e+8|0);break C}g=v[e+12>>2];f=v[c+136>>2]+(f<<3)|0;v[f>>2]=v[e+8>>2];v[f+4>>2]=g;v[c+140>>2]=v[c+140>>2]+1}v[c+152>>2]=0;v[c+156>>2]=0;v[c+160>>2]=0;v[c+164>>2]=0;f=v[37696];g=Ba[v[v[f>>2]+20>>2]](f)|0?40147:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,1024,g,19811,210)|0;v[e+12>>2]=0;v[e+8>>2]=f;f=v[c+156>>2];D:{if(f>>>0>=(v[c+160>>2]&2147483647)>>>0){jO(c+152|0,e+8|0);break D}g=v[e+12>>2];f=v[c+152>>2]+(f<<3)|0;v[f>>2]=v[e+8>>2];v[f+4>>2]=g;v[c+156>>2]=v[c+156>>2]+1}v[c+168>>2]=0;v[c+172>>2]=0;v[c+176>>2]=0;v[c+180>>2]=0;n=c+168|0;g=0;f=v[37696];p=Ba[v[v[f>>2]+20>>2]](f)|0?40335:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,13312,p,19811,210)|0;while(1){v[(f+B(g,104)|0)+100>>2]=-128;v[(f+B(g|1,104)|0)+100>>2]=-128;v[(f+B(g|2,104)|0)+100>>2]=-128;v[(f+B(g|3,104)|0)+100>>2]=-128;v[(f+B(g|4,104)|0)+100>>2]=-128;v[(f+B(g|5,104)|0)+100>>2]=-128;v[(f+B(g|6,104)|0)+100>>2]=-128;v[(f+B(g|7,104)|0)+100>>2]=-128;g=g+8|0;if((g|0)!=128){continue}break}v[e+12>>2]=0;v[e+8>>2]=f;f=v[c+172>>2];E:{if(f>>>0>=(v[c+176>>2]&2147483647)>>>0){kO(n,e+8|0);break E}g=v[e+12>>2];f=v[c+168>>2]+(f<<3)|0;v[f>>2]=v[e+8>>2];v[f+4>>2]=g;v[c+172>>2]=v[c+172>>2]+1}v[c+184>>2]=0;v[c+188>>2]=0;v[c+232>>2]=0;v[c+236>>2]=0;v[c+224>>2]=0;v[c+228>>2]=0;v[c+216>>2]=0;v[c+220>>2]=0;v[c+208>>2]=0;v[c+212>>2]=0;v[c+200>>2]=0;v[c+204>>2]=0;v[c+192>>2]=0;v[c+196>>2]=0;v[c+256>>2]=0;v[c+248>>2]=-1;v[c+252>>2]=0;v[c+240>>2]=0;v[c+244>>2]=1061158912;lO(c+220|0,64);v[c+268>>2]=0;v[c+272>>2]=0;v[c+260>>2]=0;v[c+264>>2]=0;f=v[37696];g=Ba[v[v[f>>2]+20>>2]](f)|0?39965:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,14336,g,19811,210)|0;v[e+12>>2]=0;v[e+8>>2]=f;f=v[c+264>>2];F:{if(f>>>0>=(v[c+268>>2]&2147483647)>>>0){mO(c+260|0,e+8|0);break F}g=v[e+12>>2];f=v[c+260>>2]+(f<<3)|0;v[f>>2]=v[e+8>>2];v[f+4>>2]=g;v[c+264>>2]=v[c+264>>2]+1}v[c+276>>2]=0;v[c+280>>2]=0;v[c+320>>2]=k;v[c+316>>2]=m;v[c+312>>2]=i;v[c+308>>2]=1;v[c+300>>2]=0;v[c+304>>2]=0;v[c+292>>2]=0;v[c+296>>2]=0;v[c+284>>2]=0;v[c+288>>2]=0;f=v[37696];g=Ba[v[v[f>>2]+20>>2]](f)|0?37931:63804;D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,28,g,16755,113)|0,v[D+324>>2]=E;f=xa-16|0;xa=f;xa=f+16|0;z[c+328>>2]=o;xa=e+16|0}v[d+988>>2]=c;c=v[d+1004>>2];v[c+104>>2]=v[b+144>>2];v[c+108>>2]=v[b+148>>2];z[c+88>>2]=z[b+100>>2];z[c+96>>2]=z[b+104>>2];z[c+92>>2]=z[b+108>>2];o=z[v[37415]>>2];z[c+100>>2]=o*C(.02500000037252903);e=v[d+976>>2];z[e+208>>2]=o;z[e+204>>2]=o*C(.009999999776482582);z[c+84>>2]=-z[b+96>>2];c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?42129:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,48,e,11777,887)|0;t[c+10|0]=0;t[c+9|0]=0;t[c+8|0]=1;v[c>>2]=0;v[c+4>>2]=16777215;v[c+16>>2]=0;v[c+20>>2]=0;u[c+46>>1]=0;t[c+45|0]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=1065353216;t[c+37|0]=0;t[c+38|0]=0;t[c+39|0]=0;t[c+40|0]=0;t[c+41|0]=0;t[c+42|0]=0;t[c+43|0]=0;t[c+44|0]=0;G:{H:{f=v[d+2388>>2];g=v[f+12>>2]+B(v[f+8>>2],12)|0;e=v[g+4>>2];if(e){v[g+4>>2]=v[e>>2];break H}I:{J:{e=v[g+8>>2];if((e|0)==v[f>>2]){break J}i=v[f+4>>2];v[g+8>>2]=e+1;g=v[g>>2];if(!g){break J}e=g+B(e,i)|0;break I}e=MO(f)}if(e){break H}c=0;break G}c=TJ(e,d,c);v[c>>2]=138660}v[d+2380>>2]=c;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?42013:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,2008,e,11777,891)|0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=d;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;f=w[b+112|0];e=v[b+164>>2];v[c+60>>2]=0;v[c+56>>2]=e;v[c+52>>2]=e;v[c+44>>2]=0;v[c+48>>2]=0;t[c- -64|0]=f>>>7;f=0;if(e){f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,17904,169)|0}g=h+5584|0;v[c+68>>2]=0;v[c+72>>2]=0;v[c+44>>2]=f;v[c+76>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;v[c+88>>2]=0;v[c+100>>2]=0;v[c+104>>2]=0;v[c+92>>2]=1061158912;v[c+96>>2]=-1;wh(c+68|0,64);v[c+672>>2]=0;v[c+396>>2]=256;v[c+400>>2]=0;v[c+388>>2]=32;v[c+392>>2]=0;v[c+376>>2]=c+116;t[c+372|0]=1;v[c+380>>2]=0;v[c+384>>2]=64;v[c+964>>2]=0;v[c+692>>2]=0;v[c+684>>2]=0;v[c+688>>2]=640;v[c+676>>2]=64;v[c+680>>2]=32;v[c+668>>2]=c+408;t[c+664|0]=1;v[c+1256>>2]=0;v[c+984>>2]=0;v[c+976>>2]=0;v[c+980>>2]=17408;v[c+968>>2]=64;v[c+972>>2]=256;v[c+960>>2]=c+700;t[c+956|0]=1;v[c+1548>>2]=0;v[c+1276>>2]=0;e=c+1268|0;v[e>>2]=0;v[e+4>>2]=1920;e=c+1260|0;v[e>>2]=64;v[e+4>>2]=32;v[c+1252>>2]=c+992;t[c+1248|0]=1;v[c+1544>>2]=c+1284;v[c+1568>>2]=0;v[c+1840>>2]=0;e=c+1552|0;v[e>>2]=64;v[e+4>>2]=32;e=c+1560|0;v[e>>2]=0;v[e+4>>2]=1024;t[c+1540|0]=1;v[c+1836>>2]=c+1576;v[c+1860>>2]=0;e=c+1844|0;v[e>>2]=64;v[e+4>>2]=32;e=c+1852|0;v[e>>2]=0;v[e+4>>2]=1280;t[c+1832|0]=1;e=v[d+16>>2];f=v[d+20>>2];v[c+1888>>2]=0;i=c+1880|0;v[i>>2]=0;v[i+4>>2]=0;i=c+1872|0;v[i>>2]=e;v[i+4>>2]=f;v[c+1904>>2]=0;v[c+1896>>2]=3877;v[c+1892>>2]=c;v[c+1864>>2]=131304;e=v[37696];f=Ba[v[v[e>>2]+20>>2]](e)|0?37931:63804;D=c,E=Ba[v[v[e+12>>2]+8>>2]](e+12|0,28,f,16755,113)|0,v[D+1908>>2]=E;e=xa-16|0;xa=e;xa=e+16|0;v[c+1916>>2]=0;v[c+1920>>2]=0;v[c+1912>>2]=0;e=c+1924|0;v[e>>2]=0;v[e+4>>2]=0;e=c+1932|0;v[e>>2]=0;v[e+4>>2]=0;e=c+1948|0;v[e>>2]=0;v[e+4>>2]=0;e=c+1940|0;v[e>>2]=1061158912;v[e+4>>2]=-1;jI(c+1916|0,64);e=c+1972|0;v[e>>2]=0;v[e+4>>2]=0;e=c+1964|0;v[e>>2]=0;v[e+4>>2]=0;v[c+1956>>2]=0;v[c+1960>>2]=0;e=c+1988|0;v[e>>2]=0;v[e+4>>2]=0;e=c+1980|0;v[e>>2]=1061158912;v[e+4>>2]=-1;cJ(c+1956|0,64);e=v[37696];f=v[37696];D=c,E=(K=e+12|0,F=28,I=Ba[v[v[f>>2]+20>>2]](f)|0?37931:63804,J=16755,G=113,H=v[v[e+12>>2]+8>>2],Ba[H](K|0,F|0,I|0,J|0,G|0)|0),v[D+1996>>2]=E;e=xa-16|0;xa=e;xa=e+16|0;e=v[37696];f=v[37696];D=c,E=(G=e+12|0,J=28,I=Ba[v[v[f>>2]+20>>2]](f)|0?37931:63804,F=16755,K=113,H=v[v[e+12>>2]+8>>2],Ba[H](G|0,J|0,I|0,F|0,K|0)|0),v[D+2e3>>2]=E;e=xa-16|0;xa=e;xa=e+16|0;e=v[37696];f=v[37696];e=(E=e+12|0,H=16,K=Ba[v[v[f>>2]+20>>2]](f)|0?33823:63804,F=11474,I=651,D=v[v[e+12>>2]+8>>2],Ba[D](E|0,H|0,K|0,F|0,I|0)|0);v[e+8>>2]=0;v[e+12>>2]=-1;v[e>>2]=0;v[e+4>>2]=0;v[c+108>>2]=e;e=d+2648|0;v[e>>2]=2147483647;v[e+4>>2]=-1;e=d+2640|0;v[e>>2]=536870911;v[e+4>>2]=1073741823;e=d+2632|0;v[e>>2]=134217727;v[e+4>>2]=268435455;e=d+2624|0;v[e>>2]=33554431;v[e+4>>2]=67108863;e=d+2616|0;v[e>>2]=8388607;v[e+4>>2]=16777215;e=d+2608|0;v[e>>2]=2097151;v[e+4>>2]=4194303;e=d+2600|0;v[e>>2]=524287;v[e+4>>2]=1048575;e=d+2592|0;v[e>>2]=131071;v[e+4>>2]=262143;e=d+2584|0;v[e>>2]=32767;v[e+4>>2]=65535;e=d+2576|0;v[e>>2]=8191;v[e+4>>2]=16383;e=d+2568|0;v[e>>2]=2047;v[e+4>>2]=4095;e=d+2560|0;v[e>>2]=511;v[e+4>>2]=1023;e=d+2552|0;v[e>>2]=127;v[e+4>>2]=255;e=d+2544|0;v[e>>2]=31;v[e+4>>2]=63;e=d+2536|0;v[e>>2]=7;v[e+4>>2]=15;v[d+2528>>2]=1;v[d+2532>>2]=3;v[d+2168>>2]=c;u[d+2280>>1]=257;e=v[b+84>>2];c=d+1020|0;v[c+24>>2]=v[b+80>>2];v[c+28>>2]=e;e=v[b+76>>2];v[c+16>>2]=v[b+72>>2];v[c+20>>2]=e;e=v[b+68>>2];v[c+8>>2]=v[b+64>>2];v[c+12>>2]=e;c=v[b+60>>2];v[d+1020>>2]=v[b+56>>2];v[d+1024>>2]=c;v[d+2348>>2]=v[b+52>>2];z[d+1052>>2]=z[b>>2];z[d+1056>>2]=z[b+4>>2];o=z[b+8>>2];v[d+1064>>2]=1;z[d+1060>>2]=o;v[v[d+1004>>2]+112>>2]=v[b+88>>2];c=v[d+976>>2];e=v[b+112>>2];t[c+1812|0]=e>>>6&1;t[c+1813|0]=(e>>>8^-1)&1;e=v[b+12>>2];if(!(!v[d+2236>>2]|(v[d+2344>>2]|!e))){f=v[d+2204>>2];c=0;while(1){i=v[v[f+(c<<2)>>2]>>2];u[i+148>>1]=x[i+148>>1]|64;c=c+1|0;if(c>>>0>2]){continue}break}c=v[d+976>>2]}v[d+2344>>2]=e;e=v[b+16>>2];v[c+1020>>2]=e;c=v[c+1024>>2];Ba[v[v[c>>2]+88>>2]](c,e);c=v[d+988>>2];v[c+120>>2]=v[b+20>>2];v[c+308>>2]=v[b+168>>2];c=v[b+24>>2];K:{if(c){e=v[b+28>>2];L:{if(!e){e=0;f=0;break L}c=v[37696];e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,11777,923)|0;c=v[b+24>>2];f=v[b+28>>2]}v[d+2172>>2]=e;H9(e,c,f);c=v[b+28>>2];break K}v[d+2172>>2]=0;c=0}v[d+2180>>2]=c;v[d+2176>>2]=c;v[d+2184>>2]=v[b+32>>2];v[d+2188>>2]=v[b+36>>2];xa=l+16|0;v[j+4776>>2]=0;v[j+4768>>2]=0;v[j+4772>>2]=0;d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?37931:63804;D=j,I=Ba[v[v[d+12>>2]+8>>2]](d+12|0,28,c,16755,113)|0,v[D+4780>>2]=I;d=xa-16|0;xa=d;xa=d+16|0;u[j+4784>>1]=0;uu(j+4788|0);d=j+4832|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4824|0;v[d>>2]=0;v[d+4>>2]=0;v[j+4816>>2]=0;v[j+4820>>2]=0;d=j+4848|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4840|0;v[d>>2]=1061158912;v[d+4>>2]=-1;wh(j+4816|0,64);d=j+4904|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4896|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4888|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4880|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4872|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4864|0;v[d>>2]=0;v[d+4>>2]=0;v[j+4856>>2]=0;v[j+4860>>2]=0;v[j+4928>>2]=0;d=j+4920|0;v[d>>2]=-1;v[d+4>>2]=0;d=j+4912|0;v[d>>2]=0;v[d+4>>2]=1061158912;wh(j+4892|0,64);d=j+4948|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4940|0;v[d>>2]=0;v[d+4>>2]=0;v[j+4932>>2]=0;v[j+4936>>2]=0;d=j+4964|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4956|0;v[d>>2]=1061158912;v[d+4>>2]=-1;wh(j+4932|0,64);d=j+4988|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4980|0;v[d>>2]=0;v[d+4>>2]=0;v[j+4972>>2]=0;v[j+4976>>2]=0;d=j+5004|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4996|0;v[d>>2]=1061158912;v[d+4>>2]=-1;wh(j+4972|0,64);d=j+5028|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5020|0;v[d>>2]=0;v[d+4>>2]=0;v[j+5012>>2]=0;v[j+5016>>2]=0;d=j+5044|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5036|0;v[d>>2]=1061158912;v[d+4>>2]=-1;wh(j+5012|0,64);d=j+5068|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5060|0;v[d>>2]=0;v[d+4>>2]=0;v[j+5052>>2]=0;v[j+5056>>2]=0;d=j+5084|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5076|0;v[d>>2]=1061158912;v[d+4>>2]=-1;wh(j+5052|0,64);d=j+5108|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5100|0;v[d>>2]=0;v[d+4>>2]=0;v[j+5092>>2]=0;v[j+5096>>2]=0;d=j+5124|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5116|0;v[d>>2]=1061158912;v[d+4>>2]=-1;wh(j+5092|0,64);o=z[b+176>>2];v[j+5560>>2]=0;v[j+5548>>2]=0;z[j+5132>>2]=o;I9(j+5280|0,0,124);d=j+5248|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5240|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5232|0;v[d>>2]=0;v[d+4>>2]=0;v[j+5564>>2]=0;f=v[b+124>>2];l=v[b+128>>2];c=v[b+132>>2];v[g+32>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g>>2]=0;v[g+4>>2]=0;v[g+24>>2]=0;v[g+28>>2]=3;v[g+8>>2]=0;e=g+36|0;d=e;v[d+32>>2]=-1;v[d+16>>2]=0;v[d+20>>2]=0;v[d>>2]=0;v[d+4>>2]=0;v[d+24>>2]=0;v[d+28>>2]=3;v[d+8>>2]=0;d=g+72|0;v[d>>2]=0;v[d+4>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d+40>>2]=0;v[d+32>>2]=-1;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=1061158912;DE(d+4|0,64);v[g+120>>2]=j;d=v[37696];i=Ba[v[v[d>>2]+20>>2]](d)|0?37931:63804;D=g,I=Ba[v[v[d+12>>2]+8>>2]](d+12|0,28,i,16755,113)|0,v[D+124>>2]=I;d=xa-16|0;xa=d;xa=d+16|0;v[g+128>>2]=130360;BE(g,f,v[j+32>>2],v[j+36>>2]);BE(e,l,v[j+32>>2],v[j+36>>2]);v[g+116>>2]=c;d=v[g>>2];if(!(!d|v[g+28>>2]!=1)){Ba[v[v[d>>2]+68>>2]](d,c)}d=v[g+36>>2];if(!(!d|v[g- -64>>2]!=1)){Ba[v[v[d>>2]+68>>2]](d,c)}d=v[b+68>>2];CE(g,v[b+64>>2]);CE(e,d);v[g+136>>2]=g+68;v[g+132>>2]=v[g+36>>2];d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?32389:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,712,c,8548,268)|0;v[d>>2]=130076;EC(d+4|0);v[d+628>>2]=0;v[d+620>>2]=0;v[d+624>>2]=0;c=d+632|0;v[c>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[d+664>>2]=0;v[d+668>>2]=0;v[d+656>>2]=0;v[d+660>>2]=0;v[d+648>>2]=0;v[d+652>>2]=0;v[d+680>>2]=0;v[d+684>>2]=0;v[d+672>>2]=1061158912;v[d+676>>2]=-1;YC(d+648|0,64);v[d+704>>2]=0;v[d+708>>2]=0;v[d+696>>2]=0;v[d+700>>2]=0;v[d+688>>2]=0;v[d+692>>2]=0;if(y[c+4>>2]<32){cE(c,32)}dE(d+620|0,32);c=d+688|0;if((v[c+8>>2]&2147483647)>>>0<32){zw(c,32)}v[c+4>>2]=32;if(!(v[d+708>>2]&2147483616)){ZC(d+700|0,32)}v[g+72>>2]=d;if(!(y[g+112>>2]>31|y[g+96>>2]>31)){DE(g+76|0,32)}t[g+140|0]=0;v[h+5728>>2]=141568;v[h+5732>>2]=141660;v[h+5768>>2]=0;d=h+5760|0;v[d>>2]=0;v[d+4>>2]=0;v[h+5736>>2]=141264;d=h+5752|0;v[d>>2]=h;v[d+4>>2]=0;d=h+5800|0;v[d>>2]=0;v[d+4>>2]=0;v[h+5776>>2]=21305;v[h+5744>>2]=126292;d=h+5792|0;v[d>>2]=h;v[d+4>>2]=0;v[h+5816>>2]=21351;v[h+5784>>2]=126368;v[h+5808>>2]=0;d=v[b+136>>2];v[h+5812>>2]=h;v[h+5772>>2]=h;v[h+5824>>2]=d;v[h+5828>>2]=125980;v[h>>2]=125360;I9(h+5832|0,0,84);d=h+5924|0;v[d>>2]=0;v[d+4>>2]=0;d=h+5916|0;v[d>>2]=1061158912;v[d+4>>2]=-1;wh(h+5892|0,64);d=h+5956|0;v[d>>2]=0;v[d+4>>2]=0;d=h+5948|0;v[d>>2]=0;v[d+4>>2]=0;d=h+5940|0;v[d>>2]=0;v[d+4>>2]=0;v[h+5932>>2]=0;v[h+5936>>2]=0;v[h+5980>>2]=0;d=h+5972|0;v[d>>2]=-1;v[d+4>>2]=0;d=h+5964|0;v[d>>2]=0;v[d+4>>2]=1061158912;wh(h+5944|0,64);d=h+6e3|0;v[d>>2]=0;v[d+4>>2]=0;d=h+5992|0;v[d>>2]=0;v[d+4>>2]=0;v[h+5984>>2]=0;v[h+5988>>2]=0;d=h+6016|0;v[d>>2]=0;v[d+4>>2]=0;d=h+6008|0;v[d>>2]=1061158912;v[d+4>>2]=-1;wh(h+5984|0,64);v[h+6032>>2]=0;v[h+6024>>2]=0;v[h+6028>>2]=0;z[h+6036>>2]=z[b+180>>2];z[h+6040>>2]=z[b+184>>2];z[h+6044>>2]=z[b+188>>2];z[h+6048>>2]=z[b+192>>2];z[h+6052>>2]=z[b+196>>2];z[h+6056>>2]=z[b+200>>2];d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?38399:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,80,c,19659,95)|0;v[h+6060>>2]=d;t[d+76|0]=0;v[d+72>>2]=0;d=v[37696];c=v[37696];d=(I=d+12|0,F=80,K=Ba[v[v[c>>2]+20>>2]](c)|0?38399:63804,H=19659,E=95,D=v[v[d+12>>2]+8>>2],Ba[D](I|0,F|0,K|0,H|0,E|0)|0);v[h+6064>>2]=d;t[d+76|0]=0;v[d+72>>2]=0;d=v[37696];c=v[37696];d=(E=d+12|0,H=80,K=Ba[v[v[c>>2]+20>>2]](c)|0?38399:63804,F=19659,I=95,D=v[v[d+12>>2]+8>>2],Ba[D](E|0,H|0,K|0,F|0,I|0)|0);v[h+6068>>2]=d;t[d+76|0]=0;v[d+72>>2]=0;v[h+6128>>2]=0;v[h+6160>>2]=0;v[h+6192>>2]=0;d=h+6120|0;v[d>>2]=0;v[d+4>>2]=0;d=h+6084|0;v[d>>2]=0;v[d+4>>2]=0;v[h+6076>>2]=1;v[h+6080>>2]=0;d=h+6112|0;v[d>>2]=h;v[d+4>>2]=0;d=h+6152|0;v[d>>2]=0;v[d+4>>2]=0;v[h+6132>>2]=h+6060;v[h+6104>>2]=126076;d=h+6144|0;v[d>>2]=h;v[d+4>>2]=0;d=h+6184|0;v[d>>2]=0;v[d+4>>2]=0;v[h+6164>>2]=h+6064;v[h+6136>>2]=126076;d=h+6176|0;v[d>>2]=h;v[d+4>>2]=0;v[h+6168>>2]=126076;v[h+6196>>2]=h+6068;d=h+6216|0;v[d>>2]=0;v[d+4>>2]=0;v[h+6224>>2]=0;d=h+6208|0;v[d>>2]=h;v[d+4>>2]=0;v[h+6264>>2]=0;d=h+6256|0;v[d>>2]=0;v[d+4>>2]=0;v[h+6232>>2]=14181;d=h+6228|0;v[d>>2]=0;v[h+6200>>2]=126444;c=h+6248|0;v[c>>2]=h;v[c+4>>2]=0;v[h+6304>>2]=0;c=h+6296|0;v[c>>2]=0;v[c+4>>2]=0;v[h+6272>>2]=22819;c=h+6268|0;v[c>>2]=0;v[h+6240>>2]=126520;v[h+6328>>2]=0;e=h+6288|0;v[e>>2]=h;v[e+4>>2]=0;v[h+6332>>2]=0;v[h+6324>>2]=0;t[h+6320|0]=0;v[h+6312>>2]=20640;e=h+6308|0;v[e>>2]=0;v[h+6280>>2]=126596;v[h+6336>>2]=0;v[h+6344>>2]=0;f=h+6348|0;j=v[37696];j=Ba[v[v[j+12>>2]+8>>2]](j+12|0,8,24422,5858,130)|0;v[f>>2]=j;g=j;j=v[37696];l=v[37696];D=g,I=(K=j+12|0,H=28,E=Ba[v[v[l>>2]+20>>2]](l)|0?37931:63804,J=16755,G=113,F=v[v[j+12>>2]+8>>2],Ba[F](K|0,H|0,E|0,J|0,G|0)|0),v[D>>2]=I;j=xa-16|0;xa=j;xa=j+16|0;v[v[f>>2]+4>>2]=0;v[e>>2]=h;v[c>>2]=h;v[d>>2]=h;v[h+6352>>2]=0;d=h+4644|0;c=v[d+4>>2];v[h+6092>>2]=v[d>>2];v[h+6096>>2]=c;f=0;d=xa-16|0;xa=d;M:{if((d|0)==-12){break M}while(1){if(!w[f+150864|0]){t[f+150864|0]=1;v[(f<<2)+150992>>2]=0;v[d+12>>2]=f;break M}f=f+1|0;if((f|0)!=128){continue}break}}xa=d+16|0;v[h+6340>>2]=v[d+12>>2];v[q+12>>2]=h;N:{if(!(Ba[v[v[h>>2]+484>>2]](h)|0)){a9(v[37696],32,7621,277,69816,0);a=0;break N}f=v[b+56>>2];O:{if(!f){f=0;break O}if((v[h+5940>>2]&2147483647)>>>0>=f>>>0){break O}Mp(h+5932|0,f);f=v[b+56>>2]}PO(h+32|0,f,v[b+60>>2],v[b- -64>>2],v[b+68>>2]);v[h+4>>2]=v[b+140>>2];c=v[a+44>>2];P:{if(!c){break P}b=0;while(1){e=v[a+40>>2];while(1){Q:{d=b+1|0;b=v[e+(b<<2)>>2];if(b){break Q}b=d;if((d|0)!=(c|0)){continue}break P}break}Fr(h,b);c=v[a+44>>2];b=d;if(c>>>0>d>>>0){continue}break}}if(!v[h+1008>>2]){Ba[v[v[h>>2]+4>>2]](h);a9(v[37696],16,7621,294,66966,0);a=0;break N}b=v[a+8>>2];R:{if(b>>>0>=(v[a+12>>2]&2147483647)>>>0){f=0;b=v[a+12>>2];d=b&2147483647?b<<1:1;S:{if(!d){break S}c=d<<2;if(!c){break S}b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?60139:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,h,16608,553)|0}e=v[a+8>>2];h=(e<<2)+f|0;if((e|0)>0){c=v[a+4>>2];b=f;while(1){v[b>>2]=v[c>>2];c=c+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}v[h>>2]=v[q+12>>2];T:{if(v[a+12>>2]<0){break T}b=v[a+4>>2];if(!b){break T}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);e=v[a+8>>2]}v[a+12>>2]=d;v[a+4>>2]=f;v[a+8>>2]=e+1;break R}v[v[a+4>>2]+(b<<2)>>2]=h;v[a+8>>2]=b+1}a=v[q+12>>2]}xa=q+16|0;return a|0}function Ip(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;v[a>>2]=125360;b=v[a+6020>>2];c=b;a:{if(!c){break a}if(b&1){c=b-1|0;Ba[v[v[a>>2]+68>>2]](a,v[v[a+5988>>2]+(c<<2)>>2],0)}if((b|0)==1){break a}while(1){Ba[v[v[a>>2]+68>>2]](a,v[(v[a+5988>>2]+(c<<2)|0)-4>>2],0);c=c-2|0;Ba[v[v[a>>2]+68>>2]](a,v[v[a+5988>>2]+(c<<2)>>2],0);if(c){continue}break}}b=v[a+5936>>2];b:{if(!b){break b}c=b;if(c&1){c=b-1|0;Ba[v[v[a>>2]+56>>2]](a,v[v[a+5932>>2]+(c<<2)>>2],0)}if((b|0)==1){break b}while(1){Ba[v[v[a>>2]+56>>2]](a,v[(v[a+5932>>2]+(c<<2)|0)-4>>2],0);c=c-2|0;Ba[v[v[a>>2]+56>>2]](a,v[v[a+5932>>2]+(c<<2)>>2],0);if(c){continue}break}}b=v[a+5980>>2];c:{if(!b){break c}c=b;if(c&1){c=b-1|0;Ba[v[v[a>>2]+40>>2]](a,v[v[a+5948>>2]+(c<<2)>>2],0)}if((b|0)==1){break c}while(1){Ba[v[v[a>>2]+40>>2]](a,v[(v[a+5948>>2]+(c<<2)|0)-4>>2],0);c=c-2|0;Ba[v[v[a>>2]+40>>2]](a,v[v[a+5948>>2]+(c<<2)>>2],0);if(c){continue}break}}m=a+16|0;p=v[(w[a+5580|0]&4?5564:2392)+a>>2]&512;b=v[a+6028>>2];d:{if(!b){break d}c=b;e:{if(!(c&1)){break e}c=b-1|0;d=v[v[a+6024>>2]+(c<<2)>>2];if(!d){break e}Ba[v[v[d>>2]+48>>2]](d)}if((b|0)==1){break d}while(1){b=v[(v[a+6024>>2]+(c<<2)|0)-4>>2];if(b){Ba[v[v[b>>2]+48>>2]](b)}c=c-2|0;b=v[v[a+6024>>2]+(c<<2)>>2];if(b){Ba[v[v[b>>2]+48>>2]](b)}if(c){continue}break}}v[a+6028>>2]=0;o=xa-16|0;xa=o;i=m+16|0;v[i+1244>>2]=0;v[i+1088>>2]=v[i+1088>>2]+1;d=v[i+2168>>2];if(d){k=xa-16|0;xa=k;c=v[d+8>>2];if(c){f=d+1916|0;while(1){b=v[v[d+4>>2]+(e<<2)>>2];g=x[b+4>>1];u[b+4>>1]=g-1;f:{if(g>>>0>=2){u[b>>1]=x[b>>1]&65533;break f}g=v[b+16>>2];c=v[g+16>>2];g=v[g+20>>2];v[k+12>>2]=c>>>0>g>>>0?c:g;v[k+8>>2]=c>>>0>>0?c:g;EI(f,k+8|0);c=v[b+16>>2];if(c){v[d+1560>>2]=v[d+1560>>2]-1;v[c>>2]=v[d+1568>>2];v[d+1568>>2]=c;v[b+16>>2]=0}v[d+684>>2]=v[d+684>>2]-1;v[b>>2]=v[d+692>>2];v[d+692>>2]=b;c=v[d+8>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}v[d+8>>2]=0;c=v[d+108>>2];if(c){b=v[c+8>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[c>>2];if(!b){break g}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+2e3>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+1996>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+1956>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+1916>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+1908>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[d+1880>>2]=0;v[d+1864>>2]=126144;if(v[d+1852>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;h=d+1572|0;c=v[h+288>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];h:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];j=b&2147483647?b<<1:1;i:{if(!j){break i}b=j<<2;if(!b){break i}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?32891:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];l=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(l>>>0>b>>>0){continue}break}}v[l>>2]=v[f+8>>2];j:{if(v[f+24>>2]<0){break j}b=v[f+16>>2];if(!b){break j}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=j;v[f+16>>2]=c;v[f+20>>2]=e+1;break h}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[h+288>>2]>>2];v[h+288>>2]=c;if(c){continue}break}e=v[f+20>>2];b=v[f+16>>2]}else{b=0}c=f+8|0;JJ(b,e,c);JJ(v[h+264>>2],v[h+268>>2],c);c=v[h+268>>2];if(c){g=v[h+264>>2];l=g+(c<<2)|0;e=v[f+16>>2];while(1){j=v[h+276>>2];k:{if(!j){break k}b=v[g>>2];n=j-1&536870911;if(j&1){l:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break l}Ba[v[v[b>>2]>>2]](b)|0}c=b+40|0}else{c=b}if(!n){break k}j=b+B(j,40)|0;while(1){m:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(c|0))){e=e+4|0;break m}Ba[v[v[c>>2]>>2]](c)|0}b=c+40|0;n:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break n}Ba[v[v[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=v[f+24>>2];o:{if((c|0)<0|!(c&2147483647)){break o}c=v[f+16>>2];if(!c){break o}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+1836>>2];b=v[d+1840>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+1836>>2]}b=v[d+1844>>2];p:{if((b|0)<0|!(b&2147483647)){break p}if((d+1576|0)==(c|0)){t[d+1832|0]=0;break p}if(!c){break p}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+1560>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;h=d+1280|0;b=v[h+288>>2];if(b){while(1){v[f+8>>2]=b;c=v[f+20>>2];q:{if(c>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];j=b&2147483647?b<<1:1;r:{if(!j){break r}b=j<<2;if(!b){break r}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?46887:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];l=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(l>>>0>b>>>0){continue}break}}v[l>>2]=v[f+8>>2];s:{if(v[f+24>>2]<0){break s}b=v[f+16>>2];if(!b){break s}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=j;v[f+16>>2]=c;v[f+20>>2]=e+1;break q}v[v[f+16>>2]+(c<<2)>>2]=b;v[f+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[f+16>>2];b=v[f+20>>2]}else{b=0}c=f+8|0;KJ(e,b,c);KJ(v[h+264>>2],v[h+268>>2],c);c=v[f+24>>2];t:{if((c|0)<0|!(c&2147483647)){break t}c=v[f+16>>2];if(!c){break t}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+1544>>2];b=v[d+1548>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+1544>>2]}b=v[d+1552>>2];u:{if((b|0)<0|!(b&2147483647)){break u}if((d+1284|0)==(c|0)){t[d+1540|0]=0;break u}if(!c){break u}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+1268>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;h=d+988|0;c=v[h+288>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];v:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];j=b&2147483647?b<<1:1;w:{if(!j){break w}b=j<<2;if(!b){break w}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?36711:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];l=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(l>>>0>b>>>0){continue}break}}v[l>>2]=v[f+8>>2];x:{if(v[f+24>>2]<0){break x}b=v[f+16>>2];if(!b){break x}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=j;v[f+16>>2]=c;v[f+20>>2]=e+1;break v}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[h+288>>2]>>2];v[h+288>>2]=c;if(c){continue}break}e=v[f+20>>2];b=v[f+16>>2]}else{b=0}c=f+8|0;LJ(b,e,c);LJ(v[h+264>>2],v[h+268>>2],c);c=v[h+268>>2];if(c){g=v[h+264>>2];l=g+(c<<2)|0;e=v[f+16>>2];while(1){j=v[h+276>>2];y:{if(!j){break y}b=v[g>>2];n=j-1&1073741823;if(j&1){z:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break z}Ba[v[v[b>>2]>>2]](b)|0}c=b+60|0}else{c=b}if(!n){break y}j=b+B(j,60)|0;while(1){A:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(c|0))){e=e+4|0;break A}Ba[v[v[c>>2]>>2]](c)|0}b=c+60|0;B:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break B}Ba[v[v[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=v[f+24>>2];C:{if((c|0)<0|!(c&2147483647)){break C}c=v[f+16>>2];if(!c){break C}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+1252>>2];b=v[d+1256>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+1252>>2]}b=v[d+1260>>2];D:{if((b|0)<0|!(b&2147483647)){break D}if((d+992|0)==(c|0)){t[d+1248|0]=0;break D}if(!c){break D}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+976>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+984>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];E:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;F:{if(!h){break F}b=h<<2;if(!b){break F}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?36843:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];j=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}v[j>>2]=v[f+8>>2];G:{if(v[f+24>>2]<0){break G}b=v[f+16>>2];if(!b){break G}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break E}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+984>>2]>>2];v[d+984>>2]=c;if(c){continue}break}e=v[f+20>>2];b=v[f+16>>2]}else{b=0}c=f+8|0;MJ(b,e,c);MJ(v[d+960>>2],v[d+964>>2],c);c=v[d+964>>2];if(c){g=v[d+960>>2];j=g+(c<<2)|0;e=v[f+16>>2];while(1){h=v[d+972>>2];H:{if(!h){break H}b=v[g>>2];l=h-1&1073741823;if(h&1){I:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break I}Ba[v[v[b>>2]>>2]](b)|0}c=b+68|0}else{c=b}if(!l){break H}h=b+B(h,68)|0;while(1){J:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(c|0))){e=e+4|0;break J}Ba[v[v[c>>2]>>2]](c)|0}b=c+68|0;K:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break K}Ba[v[v[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=v[f+24>>2];L:{if((c|0)<0|!(c&2147483647)){break L}c=v[f+16>>2];if(!c){break L}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+960>>2];b=v[d+964>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+960>>2]}b=v[d+968>>2];M:{if((b|0)<0|!(b&2147483647)){break M}if((d+700|0)==(c|0)){t[d+956|0]=0;break M}if(!c){break M}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+684>>2]){b=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+692>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];N:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;O:{if(!h){break O}b=h<<2;if(!b){break O}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?27313:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];j=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}v[j>>2]=v[f+8>>2];P:{if(v[f+24>>2]<0){break P}b=v[f+16>>2];if(!b){break P}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break N}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+692>>2]>>2];v[d+692>>2]=c;if(c){continue}break}b=v[f+16>>2];e=v[f+20>>2]}else{e=0}c=f+8|0;NJ(b,e,c);NJ(v[d+668>>2],v[d+672>>2],c);c=v[f+24>>2];Q:{if((c|0)<0|!(c&2147483647)){break Q}c=v[f+16>>2];if(!c){break Q}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+668>>2];b=v[d+672>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+668>>2]}b=v[d+676>>2];R:{if((b|0)<0|!(b&2147483647)){break R}if((d+408|0)==(c|0)){t[d+664|0]=0;break R}if(!c){break R}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+392>>2]){b=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+400>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];S:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;T:{if(!h){break T}b=h<<2;if(!b){break T}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?31157:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];j=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}v[j>>2]=v[f+8>>2];U:{if(v[f+24>>2]<0){break U}b=v[f+16>>2];if(!b){break U}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break S}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+400>>2]>>2];v[d+400>>2]=c;if(c){continue}break}b=v[f+16>>2];e=v[f+20>>2]}else{e=0}c=f+8|0;OJ(b,e,c);OJ(v[d+376>>2],v[d+380>>2],c);c=v[f+24>>2];V:{if((c|0)<0|!(c&2147483647)){break V}c=v[f+16>>2];if(!c){break V}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+376>>2];b=v[d+380>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+376>>2]}b=v[d+384>>2];W:{if((b|0)<0|!(b&2147483647)){break W}if((d+116|0)==(c|0)){t[d+372|0]=0;break W}if(!c){break W}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+68>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+44>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+40>>2];X:{if((c|0)<0|!(c&2147483647)){break X}c=v[d+32>>2];if(!c){break X}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+24>>2];Y:{if((c|0)<0|!(c&2147483647)){break Y}c=v[d+16>>2];if(!c){break Y}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+12>>2];Z:{if((c|0)<0|!(c&2147483647)){break Z}c=v[d+4>>2];if(!c){break Z}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=k+16|0;c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}v[i+2168>>2]=0;c=v[i+2172>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[i+2172>>2]=0;e=v[i+2380>>2];if(e){k=v[e+44>>2];d=v[i+2388>>2];Ba[v[v[e>>2]>>2]](e)|0;if(w[d+24|0]){NO(v[d+12>>2],v[d+16>>2])}c=0;b=v[d+16>>2]-1|0;_:{if((b|0)<0){break _}j=B(v[d+4>>2],v[d>>2]);f=v[d+12>>2];while(1){g=c+b>>1;h=v[f+B(g,12)>>2];if(!(h>>>0>e>>>0|e>>>0>=h+j>>>0)){c=f+B(g,12)|0;v[e>>2]=v[c+4>>2];v[c+4>>2]=e;if(w[d+24|0]){v[d+8>>2]=g}t[d+24|0]=0;break _}h=e>>>0>h>>>0;c=h?g+1|0:c;b=h?b:g-1|0;if((c|0)<=(b|0)){continue}break}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,k)}OO(i);c=v[i+976>>2];$:{if(!c){break $}b=v[c+1028>>2];if(b){Ba[v[v[b>>2]+8>>2]](b);c=v[i+976>>2];v[c+1028>>2]=0}c=v[c+1024>>2];if(!c){break $}Ba[v[v[c>>2]+8>>2]](c);v[v[i+976>>2]+1024>>2]=0}d=v[i+1136>>2];if(d){c=v[d+336>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+296>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+284>>2]){b=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+292>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];aa:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;ba:{if(!h){break ba}b=h<<2;if(!b){break ba}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?44393:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[f+8>>2];ca:{if(v[f+24>>2]<0){break ca}b=v[f+16>>2];if(!b){break ca}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break aa}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+292>>2]>>2];v[d+292>>2]=c;if(c){continue}break}b=v[f+16>>2];e=v[f+20>>2]}else{e=0}c=f+8|0;aQ(b,e,c);aQ(v[d+268>>2],v[d+272>>2],c);c=v[f+24>>2];da:{if((c|0)<0|!(c&2147483647)){break da}c=v[f+16>>2];if(!c){break da}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+268>>2];b=v[d+272>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+268>>2]}b=v[d+276>>2];ea:{if((b|0)<0|!(b&2147483647)){break ea}if((d+8|0)==(c|0)){t[d+264|0]=0;break ea}if(!c){break ea}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}v[i+1136>>2]=0;c=v[i+1152>>2];if(c){b=v[c+44>>2];fa:{if((b|0)<0|!(b&2147483647)){break fa}b=v[c+36>>2];if(!b){break fa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+32>>2];ga:{if((b|0)<0|!(b&2147483647)){break ga}b=v[c+24>>2];if(!b){break ga}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];ha:{if((b|0)<0|!(b&2147483647)){break ha}b=v[c+12>>2];if(!b){break ha}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+8>>2];ia:{if((b|0)<0|!(b&2147483647)){break ia}b=v[c>>2];if(!b){break ia}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[i+1152>>2]=0;c=v[i+1140>>2];if(c){b=v[c+12>>2];ja:{if((b|0)<0|!(b&2147483647)){break ja}b=v[c+4>>2];if(!b){break ja}d=v[c>>2];Ba[v[v[d>>2]+12>>2]](d,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=0;v[i+1140>>2]=0;b=v[i+2288>>2];if(b){while(1){d=v[i+2284>>2];e=c<<2;g=v[d+e>>2];if(g){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);b=v[i+2288>>2];d=v[i+2284>>2]}v[d+e>>2]=0;c=c+1|0;if(b>>>0>c>>>0){continue}break}}f=v[i+2408>>2];if(f){if(v[f+280>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[f+288>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];ka:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;la:{if(!h){break la}b=h<<2;if(!b){break la}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?36573:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[d+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[d+8>>2];ma:{if(v[d+24>>2]<0){break ma}b=v[d+16>>2];if(!b){break ma}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=c;v[d+20>>2]=e+1;break ka}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[f+288>>2]>>2];v[f+288>>2]=c;if(c){continue}break}b=v[d+20>>2];e=v[d+16>>2]}else{e=0}c=d+8|0;bQ(e,b,c);bQ(v[f+264>>2],v[f+268>>2],c);c=v[f+268>>2];if(c){e=v[f+264>>2];g=e+(c<<2)|0;b=v[d+16>>2];while(1){h=v[f+276>>2];if(h){c=v[e>>2];h=c+(h<<5)|0;while(1){b=(v[d+16>>2]+(v[d+20>>2]<<2)|0)==(b|0)|v[b>>2]!=(c|0)?b:b+4|0;c=c+32|0;if((h|0)!=(c|0)){continue}break}}e=e+4|0;if((g|0)!=(e|0)){continue}break}}c=v[d+24>>2];na:{if((c|0)<0|!(c&2147483647)){break na}c=v[d+16>>2];if(!c){break na}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=d+32|0}c=v[f+264>>2];b=v[f+268>>2];if(b){b=(b<<2)+c|0;while(1){d=v[c>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[f+264>>2]}b=v[f+272>>2];oa:{if((b|0)<0|!(b&2147483647)){break oa}if((f+4|0)==(c|0)){t[f+260|0]=0;break oa}if(!c){break oa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}f=v[i+2396>>2];if(f){if(v[f+280>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[f+288>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];pa:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;qa:{if(!h){break qa}b=h<<2;if(!b){break qa}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?37683:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[d+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[d+8>>2];ra:{if(v[d+24>>2]<0){break ra}b=v[d+16>>2];if(!b){break ra}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=c;v[d+20>>2]=e+1;break pa}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[f+288>>2]>>2];v[f+288>>2]=c;if(c){continue}break}b=v[d+20>>2];e=v[d+16>>2]}else{e=0}c=d+8|0;cQ(e,b,c);cQ(v[f+264>>2],v[f+268>>2],c);c=v[f+268>>2];if(c){e=v[f+264>>2];g=e+(c<<2)|0;b=v[d+16>>2];while(1){h=v[f+276>>2];if(h){c=v[e>>2];h=c+B(h,80)|0;while(1){sa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(b|0)|v[b>>2]!=(c|0))){b=b+4|0;break sa}QH(c)}c=c+80|0;if((h|0)!=(c|0)){continue}break}}e=e+4|0;if((g|0)!=(e|0)){continue}break}}c=v[d+24>>2];ta:{if((c|0)<0|!(c&2147483647)){break ta}c=v[d+16>>2];if(!c){break ta}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=d+32|0}c=v[f+264>>2];b=v[f+268>>2];if(b){b=(b<<2)+c|0;while(1){d=v[c>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[f+264>>2]}b=v[f+272>>2];ua:{if((b|0)<0|!(b&2147483647)){break ua}if((f+4|0)==(c|0)){t[f+260|0]=0;break ua}if(!c){break ua}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}f=v[i+2412>>2];if(f){if(v[f+280>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[f+288>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];va:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;wa:{if(!h){break wa}b=h<<2;if(!b){break wa}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?47129:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[d+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[d+8>>2];xa:{if(v[d+24>>2]<0){break xa}b=v[d+16>>2];if(!b){break xa}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=c;v[d+20>>2]=e+1;break va}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[f+288>>2]>>2];v[f+288>>2]=c;if(c){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}c=d+8|0;dQ(b,e,c);dQ(v[f+264>>2],v[f+268>>2],c);c=v[d+24>>2];ya:{if((c|0)<0|!(c&2147483647)){break ya}c=v[d+16>>2];if(!c){break ya}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=d+32|0}c=v[f+264>>2];b=v[f+268>>2];if(b){b=(b<<2)+c|0;while(1){d=v[c>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[f+264>>2]}b=v[f+272>>2];za:{if((b|0)<0|!(b&2147483647)){break za}if((f+4|0)==(c|0)){t[f+260|0]=0;break za}if(!c){break za}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}b=v[i+2388>>2];if(b){d=v[b+16>>2];if(d){c=0;while(1){e=v[b+12>>2]+B(c,12)|0;g=v[e>>2];if(g){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,g)}v[e>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}c=v[b+20>>2];Aa:{if((c|0)<0|!(c&2147483647)){break Aa}c=v[b+12>>2];if(!c){break Aa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[i+2384>>2];if(b){d=v[b+16>>2];if(d){c=0;while(1){e=v[b+12>>2]+B(c,12)|0;g=v[e>>2];if(g){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,g)}v[e>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}c=v[b+20>>2];Ba:{if((c|0)<0|!(c&2147483647)){break Ba}c=v[b+12>>2];if(!c){break Ba}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[i+2392>>2];if(b){d=v[b+16>>2];if(d){c=0;while(1){e=v[b+12>>2]+B(c,12)|0;g=v[e>>2];if(g){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,g)}v[e>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}c=v[b+20>>2];Ca:{if((c|0)<0|!(c&2147483647)){break Ca}c=v[b+12>>2];if(!c){break Ca}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[i+2400>>2];if(b){if(v[b+280>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[b+288>>2];if(c){while(1){v[f+8>>2]=c;d=v[f+20>>2];Da:{if(d>>>0>=(v[f+24>>2]&2147483647)>>>0){eQ(f+16|0,f+8|0);break Da}v[v[f+16>>2]+(d<<2)>>2]=c;v[f+20>>2]=d+1}c=v[v[b+288>>2]>>2];v[b+288>>2]=c;if(c){continue}break}e=v[f+20>>2];d=v[f+16>>2]}else{d=0}c=f+8|0;fQ(d,e,c);fQ(v[b+264>>2],v[b+268>>2],c);c=v[b+268>>2];if(c){g=v[b+264>>2];k=g+(c<<2)|0;e=v[f+16>>2];while(1){h=v[b+276>>2];Ea:{if(!h){break Ea}d=v[g>>2];j=h-1&67108863;if(h&1){Fa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(d|0)!=v[e>>2])){e=e+4|0;break Fa}Ba[v[v[d>>2]>>2]](d)|0}c=d+192|0}else{c=d}if(!j){break Ea}h=d+B(h,192)|0;while(1){Ga:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(c|0))){e=e+4|0;break Ga}Ba[v[v[c>>2]>>2]](c)|0}d=c+192|0;Ha:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(d|0)!=v[e>>2])){e=e+4|0;break Ha}Ba[v[v[d>>2]>>2]](d)|0}c=c+384|0;if((h|0)!=(c|0)){continue}break}}g=g+4|0;if((k|0)!=(g|0)){continue}break}}c=v[f+24>>2];Ia:{if((c|0)<0|!(c&2147483647)){break Ia}c=v[f+16>>2];if(!c){break Ia}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c-v[c-4>>2]|0)}xa=f+32|0}c=v[b+264>>2];d=v[b+268>>2];if(d){e=(d<<2)+c|0;while(1){d=v[c>>2];if(d){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d-v[d-4>>2]|0)}c=c+4|0;if((e|0)!=(c|0)){continue}break}c=v[b+264>>2]}d=v[b+272>>2];Ja:{if((d|0)<0|!(d&2147483647)){break Ja}if((b+4|0)==(c|0)){t[b+260|0]=0;break Ja}if(!c){break Ja}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c-v[c-4>>2]|0)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[i+2404>>2];if(b){if(v[b+280>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[b+288>>2];if(c){while(1){v[f+8>>2]=c;d=v[f+20>>2];Ka:{if(d>>>0>=(v[f+24>>2]&2147483647)>>>0){eQ(f+16|0,f+8|0);break Ka}v[v[f+16>>2]+(d<<2)>>2]=c;v[f+20>>2]=d+1}c=v[v[b+288>>2]>>2];v[b+288>>2]=c;if(c){continue}break}e=v[f+20>>2];d=v[f+16>>2]}else{d=0}c=f+8|0;fQ(d,e,c);fQ(v[b+264>>2],v[b+268>>2],c);c=v[b+268>>2];if(c){g=v[b+264>>2];k=g+(c<<2)|0;e=v[f+16>>2];while(1){h=v[b+276>>2];La:{if(!h){break La}d=v[g>>2];j=h-1&67108863;if(h&1){Ma:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(d|0)!=v[e>>2])){e=e+4|0;break Ma}Ba[v[v[d>>2]>>2]](d)|0}c=d+704|0}else{c=d}if(!j){break La}h=d+B(h,704)|0;while(1){Na:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(c|0))){e=e+4|0;break Na}Ba[v[v[c>>2]>>2]](c)|0}d=c+704|0;Oa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(d|0)!=v[e>>2])){e=e+4|0;break Oa}Ba[v[v[d>>2]>>2]](d)|0}c=c+1408|0;if((h|0)!=(c|0)){continue}break}}g=g+4|0;if((k|0)!=(g|0)){continue}break}}c=v[f+24>>2];Pa:{if((c|0)<0|!(c&2147483647)){break Pa}c=v[f+16>>2];if(!c){break Pa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c-v[c-4>>2]|0)}xa=f+32|0}c=v[b+264>>2];d=v[b+268>>2];if(d){e=(d<<2)+c|0;while(1){d=v[c>>2];if(d){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d-v[d-4>>2]|0)}c=c+4|0;if((e|0)!=(c|0)){continue}break}c=v[b+264>>2]}d=v[b+272>>2];Qa:{if((d|0)<0|!(d&2147483647)){break Qa}if((b+4|0)==(c|0)){t[b+260|0]=0;break Qa}if(!c){break Qa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c-v[c-4>>2]|0)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[i+1192>>2];b=v[c+8>>2];Ra:{Sa:{if((b|0)<0|!(b&2147483647)){break Sa}b=v[c>>2];if(!b){break Sa}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);c=v[i+1192>>2];if(!c){break Ra}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+2376>>2];if(c){b=v[c+40>>2];Ta:{if((b|0)<0|!(b&2147483647)){break Ta}b=v[c+32>>2];if(!b){break Ta}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];if(!(!b|v[c+24>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+20>>2]=0;b=v[c+16>>2];Ua:{if((b|0)<0|!(b&2147483647)){break Ua}b=v[c+8>>2];if(!b){break Ua}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+2372>>2];if(c){b=v[c+40>>2];Va:{if((b|0)<0|!(b&2147483647)){break Va}b=v[c+32>>2];if(!b){break Va}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];if(!(!b|v[c+24>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+20>>2]=0;b=v[c+16>>2];Wa:{if((b|0)<0|!(b&2147483647)){break Wa}b=v[c+8>>2];if(!b){break Wa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+2368>>2];if(c){b=v[c+40>>2];Xa:{if((b|0)<0|!(b&2147483647)){break Xa}b=v[c+32>>2];if(!b){break Xa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];if(!(!b|v[c+24>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+20>>2]=0;b=v[c+16>>2];Ya:{if((b|0)<0|!(b&2147483647)){break Ya}b=v[c+8>>2];if(!b){break Ya}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+2364>>2];if(c){b=v[c+40>>2];Za:{if((b|0)<0|!(b&2147483647)){break Za}b=v[c+32>>2];if(!b){break Za}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];if(!(!b|v[c+24>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+20>>2]=0;b=v[c+16>>2];_a:{if((b|0)<0|!(b&2147483647)){break _a}b=v[c+8>>2];if(!b){break _a}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+2352>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}d=0;$a:{c=v[i+980>>2];if(!v[c+420>>2]){break $a}e=v[c+416>>2];b=v[e>>2];if((b|0)==-1){g=v[c+424>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break $a}b=v[e+(d<<2)>>2];if((b|0)==-1){continue}break}}while(1){e=v[(v[c+408>>2]+B(b,12)|0)+8>>2];if(e){Ba[v[v[e>>2]+4>>2]](e)}b=v[v[c+412>>2]+(b<<2)>>2];if((b|0)!=-1){continue}e=v[c+416>>2];g=v[c+424>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break $a}b=v[e+(d<<2)>>2];if((b|0)==-1){continue}break}continue}}ab:{if(!v[c+460>>2]){break ab}d=0;e=v[c+456>>2];b=v[e>>2];if((b|0)==-1){g=v[c+464>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break ab}b=v[e+(d<<2)>>2];if((b|0)==-1){continue}break}}while(1){e=v[(v[c+448>>2]+B(b,12)|0)+8>>2];if(e){Ba[v[v[e>>2]+4>>2]](e)}b=v[v[c+452>>2]+(b<<2)>>2];if((b|0)!=-1){continue}e=v[c+456>>2];g=v[c+464>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break ab}b=v[e+(d<<2)>>2];if((b|0)==-1){continue}break}continue}}g=v[c+380>>2];if(g){d=0;while(1){e=v[c+376>>2];b=v[c+372>>2];bb:{if((b|0)!=-1){while(1){if((b|0)==(d|0)){break bb}b=v[e+(b<<2)>>2];if((b|0)!=-1){continue}break}}b=v[e+(d<<2)>>2];if(!b){break bb}cI(b);e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}d=d+1|0;if((g|0)!=(d|0)){continue}break}}d=v[c+560>>2];b=v[d>>2];if(b){v[d>>2]=v[b>>2]}if(b){while(1){d=v[b+48>>2];cb:{if((d|0)<0|!(d&2147483647)){break cb}d=v[b+40>>2];if(!d){break cb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[b+36>>2];db:{if((d|0)<0|!(d&2147483647)){break db}d=v[b+28>>2];if(!d){break db}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[b+24>>2];eb:{if((d|0)<0|!(d&2147483647)){break eb}d=v[b+16>>2];if(!d){break eb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[b+12>>2];fb:{if((d|0)<0|!(d&2147483647)){break fb}d=v[b+4>>2];if(!d){break fb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b);d=v[c+560>>2];b=v[d>>2];if(b){v[d>>2]=v[b>>2]}if(b){continue}break}}b=v[c+560>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+512>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+508>>2];gb:{if((b|0)<0|!(b&2147483647)){break gb}b=v[c+500>>2];if(!b){break gb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+492>>2];hb:{if((b|0)<0|!(b&2147483647)){break hb}b=v[c+484>>2];if(!b){break hb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+444>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+404>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+396>>2];ib:{if((b|0)<0|!(b&2147483647)){break ib}b=v[c+388>>2];if(!b){break ib}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+384>>2];jb:{if((b|0)<0|!(b&2147483647)){break jb}b=v[c+376>>2];if(!b){break jb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+348>>2];kb:{if((b|0)<0|!(b&2147483647)){break kb}b=v[c+340>>2];if(!b){break kb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+336>>2];lb:{if((b|0)<0|!(b&2147483647)){break lb}b=v[c+328>>2];if(!b){break lb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+324>>2];mb:{if((b|0)<0|!(b&2147483647)){break mb}b=v[c+316>>2];if(!b){break mb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+312>>2];nb:{if((b|0)<0|!(b&2147483647)){break nb}b=v[c+304>>2];if(!b){break nb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+300>>2];ob:{if((b|0)<0|!(b&2147483647)){break ob}b=v[c+292>>2];if(!b){break ob}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+288>>2];pb:{if((b|0)<0|!(b&2147483647)){break pb}b=v[c+280>>2];if(!b){break pb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+268>>2];qb:{if((b|0)<0|!(b&2147483647)){break qb}b=v[c+260>>2];if(!b){break qb}d=v[c+256>>2];Ba[v[v[d>>2]+12>>2]](d,b)}b=v[c+252>>2];rb:{if((b|0)<0|!(b&2147483647)){break rb}b=v[c+244>>2];if(!b){break rb}d=v[c+240>>2];Ba[v[v[d>>2]+12>>2]](d,b)}b=v[c+236>>2];sb:{if((b|0)<0|!(b&2147483647)){break sb}b=v[c+228>>2];if(!b){break sb}d=v[c+224>>2];Ba[v[v[d>>2]+12>>2]](d,b)}b=v[c+204>>2];tb:{if((b|0)<0|!(b&2147483647)){break tb}b=v[c+196>>2];if(!b){break tb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+188>>2];ub:{if((b|0)<0|!(b&2147483647)){break ub}b=v[c+180>>2];if(!b){break ub}d=v[c+176>>2];Ba[v[v[d>>2]+12>>2]](d,b)}b=v[c+160>>2];if(!(!b|v[c+164>>2]<0)){d=v[c+168>>2];Ba[v[v[d>>2]+12>>2]](d,b)}v[c+160>>2]=0;b=v[c+148>>2];if(!(!b|v[c+152>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+148>>2]=0;b=v[c+136>>2];if(!(!b|v[c+140>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+136>>2]=0;v[c+104>>2]=0;v[c+88>>2]=126144;v[c- -64>>2]=0;v[c+48>>2]=126144;v[c+24>>2]=0;v[c+8>>2]=126144;b=v[c>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c);c=v[i+984>>2];Ba[v[v[c>>2]+40>>2]](c);c=v[i+1016>>2];Ba[v[v[c>>2]+8>>2]](c)|0;c=v[i+1016>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+1012>>2];Ba[v[v[c>>2]>>2]](c)|0;c=v[i+1012>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+1004>>2];Ba[v[v[c>>2]>>2]](c);c=v[i+988>>2];b=v[c+324>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+296>>2];vb:{if((b|0)<0|!(b&2147483647)){break vb}b=v[c+288>>2];if(!b){break vb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+284>>2];wb:{if((b|0)<0|!(b&2147483647)){break wb}b=v[c+276>>2];if(!b){break wb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}d=v[c+264>>2];if(d){b=0;while(1){e=v[v[c+260>>2]+(b<<3)>>2];if(e){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);d=v[c+264>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}v[c+272>>2]=0;b=v[c+268>>2];xb:{if((b|0)<0|!(b&2147483647)){break xb}b=v[c+260>>2];if(!b){break xb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+220>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+216>>2];yb:{if((b|0)<0|!(b&2147483647)){break yb}b=v[c+208>>2];if(!b){break yb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+204>>2];zb:{if((b|0)<0|!(b&2147483647)){break zb}b=v[c+196>>2];if(!b){break zb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=0;d=v[c+192>>2];Ab:{if((d|0)<0|!(d&2147483647)){break Ab}d=v[c+184>>2];if(!d){break Ab}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[c+172>>2];if(d){while(1){e=v[v[c+168>>2]+(b<<3)>>2];if(e){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);d=v[c+172>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}b=0;v[c+180>>2]=0;d=v[c+176>>2];Bb:{if((d|0)<0|!(d&2147483647)){break Bb}d=v[c+168>>2];if(!d){break Bb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[c+156>>2];if(d){while(1){e=v[v[c+152>>2]+(b<<3)>>2];if(e){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);d=v[c+156>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}b=0;v[c+164>>2]=0;d=v[c+160>>2];Cb:{if((d|0)<0|!(d&2147483647)){break Cb}d=v[c+152>>2];if(!d){break Cb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[c+140>>2];if(d){while(1){e=v[v[c+136>>2]+(b<<3)>>2];if(e){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);d=v[c+140>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}v[c+148>>2]=0;b=v[c+144>>2];Db:{if((b|0)<0|!(b&2147483647)){break Db}b=v[c+136>>2];if(!b){break Db}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+16>>2]=0;v[c+96>>2]=0;v[c+80>>2]=126144;v[c+56>>2]=0;v[c+40>>2]=126144;v[c>>2]=126144;b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c);b=0;e=xa-16|0;xa=e;c=v[i+1e3>>2];v[c+1208>>2]=0;v[c+1192>>2]=126144;v[c+1168>>2]=0;v[c+1152>>2]=126144;v[c+1128>>2]=0;v[c+1112>>2]=126144;WF(c+640|0);WF(c+168|0);d=v[c+152>>2];if(!(!d|v[c+156>>2]<0)){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d)}v[c+152>>2]=0;d=v[c+132>>2];if(d){while(1){g=v[v[c+128>>2]+(b<<2)>>2];if(g){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g);d=v[c+132>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}b=0;v[e+4>>2]=0;d=v[c+132>>2];if((d|0)<0){g=v[c+128>>2];d=g+(d<<2)|0;while(1){v[d>>2]=v[e+4>>2];d=d+4|0;if(g>>>0>d>>>0){continue}break}}v[c+132>>2]=0;d=v[c+136>>2];Eb:{if((d|0)<0|!(d&2147483647)){break Eb}d=v[c+128>>2];if(!d){break Eb}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d)}d=v[c+108>>2];if(d){while(1){g=v[v[c+104>>2]+(b<<2)>>2];if(g){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g);d=v[c+108>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}v[e+8>>2]=0;b=v[c+108>>2];if((b|0)<0){d=v[c+104>>2];b=d+(b<<2)|0;while(1){v[b>>2]=v[e+8>>2];b=b+4|0;if(d>>>0>b>>>0){continue}break}}v[c+108>>2]=0;b=v[c+112>>2];Fb:{if((b|0)<0|!(b&2147483647)){break Fb}b=v[c+104>>2];if(!b){break Fb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+100>>2];Gb:{if((b|0)<0|!(b&2147483647)){break Gb}b=v[c+92>>2];if(!b){break Gb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+88>>2];Hb:{if((b|0)<0|!(b&2147483647)){break Hb}b=v[c+80>>2];if(!b){break Hb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+76>>2];Ib:{if((b|0)<0|!(b&2147483647)){break Ib}b=v[c+68>>2];if(!b){break Ib}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}d=v[c+48>>2];if(d){b=0;while(1){g=v[v[c+44>>2]+(b<<2)>>2];if(g){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g);d=v[c+48>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}v[e+12>>2]=0;b=v[c+48>>2];if((b|0)<0){d=v[c+44>>2];b=d+(b<<2)|0;while(1){v[b>>2]=v[e+12>>2];b=b+4|0;if(d>>>0>b>>>0){continue}break}}v[c+48>>2]=0;b=v[c+52>>2];Jb:{if((b|0)<0|!(b&2147483647)){break Jb}b=v[c+44>>2];if(!b){break Jb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+40>>2];Kb:{if((b|0)<0|!(b&2147483647)){break Kb}b=v[c+32>>2];if(!b){break Kb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+24>>2];Lb:{if((b|0)<0|!(b&2147483647)){break Lb}b=v[c+16>>2];if(!b){break Lb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+8>>2];Mb:{if((b|0)<0|!(b&2147483647)){break Mb}c=v[c>>2];if(!c){break Mb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=e+16|0;c=v[i+1e3>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+4612>>2];if(c){Ba[v[v[c>>2]+40>>2]](c)}d=v[i+976>>2];if(d){b=0;c=v[d+1816>>2];Nb:{if(!c){break Nb}e=v[c+12>>2];Ob:{if((e|0)<0|!(e&2147483647)){break Ob}e=v[c+4>>2];if(!e){break Ob}c=v[c>>2];Ba[v[v[c>>2]+12>>2]](c,e);c=v[d+1816>>2];if(!c){break Nb}}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+1816>>2]=0;j=d+312|0;uK(j);c=v[d+1016>>2];if(c){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}c=v[d+984>>2];if(!(!c|v[d+988>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+984>>2]=0;c=v[d+972>>2];if(!(!c|v[d+976>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+972>>2]=0;c=v[d+960>>2];if(!(!c|v[d+964>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+960>>2]=0;c=v[d+948>>2];if(!(!c|v[d+952>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+948>>2]=0;c=v[d+936>>2];if(!(!c|v[d+940>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+936>>2]=0;if(v[d+924>>2]){f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+932>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];Pb:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;Qb:{if(!h){break Qb}b=h<<2;if(!b){break Qb}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?45213:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[f+8>>2];Rb:{if(v[f+24>>2]<0){break Rb}b=v[f+16>>2];if(!b){break Rb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break Pb}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+932>>2]>>2];v[d+932>>2]=c;if(c){continue}break}b=v[f+16>>2];e=v[f+20>>2]}else{e=0}c=f+8|0;BK(b,e,c);BK(v[d+908>>2],v[d+912>>2],c);c=v[f+24>>2];Sb:{if((c|0)<0|!(c&2147483647)){break Sb}c=v[f+16>>2];if(!c){break Sb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+908>>2];b=v[d+912>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+908>>2]}b=v[d+916>>2];Tb:{if((b|0)<0|!(b&2147483647)){break Tb}if((d+648|0)==(c|0)){t[d+904|0]=0;break Tb}if(!c){break Tb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+632>>2]){b=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+640>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];Ub:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;Vb:{if(!h){break Vb}b=h<<2;if(!b){break Vb}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?45371:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[f+8>>2];Wb:{if(v[f+24>>2]<0){break Wb}b=v[f+16>>2];if(!b){break Wb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break Ub}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+640>>2]>>2];v[d+640>>2]=c;if(c){continue}break}b=v[f+16>>2];e=v[f+20>>2]}else{e=0}c=f+8|0;CK(b,e,c);CK(v[d+616>>2],v[d+620>>2],c);c=v[f+24>>2];Xb:{if((c|0)<0|!(c&2147483647)){break Xb}c=v[f+16>>2];if(!c){break Xb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+616>>2];b=v[d+620>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+616>>2]}b=v[d+624>>2];Yb:{if((b|0)<0|!(b&2147483647)){break Yb}if((d+356|0)==(c|0)){t[d+612|0]=0;break Yb}if(!c){break Yb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}uK(j);c=v[d+340>>2];if(!(!c|v[d+344>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[d+340>>2]=0;b=v[d+304>>2];c=v[b>>2];if(c){v[b>>2]=v[c>>2]}if(c){while(1){b=v[c+7204>>2];if(!(!b|v[c+7208>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}v[c+7204>>2]=0;b=v[c+7192>>2];if(!(!b|v[c+7196>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}v[c+7192>>2]=0;b=v[c+7124>>2];Zb:{if((b|0)<0|!(b&2147483647)){break Zb}b=v[c+7116>>2];if(!b){break Zb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c-v[c-4>>2]|0);b=v[d+304>>2];c=v[b>>2];if(c){v[b>>2]=v[c>>2]}if(c){continue}break}}c=v[d+304>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}Jp(d+212|0);c=d+24|0;Dy(c);Dy(c);Ey(c);Ey(c);Fy(c);Gy(c);Gy(c);b=v[c+116>>2];if(b){while(1){b=b-1|0;e=v[v[c+112>>2]+(b<<2)>>2];v[c+116>>2]=b;if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);b=v[c+116>>2]}if(b){continue}break}}b=v[c+120>>2];_b:{if((b|0)<0|!(b&2147483647)){break _b}b=v[c+112>>2];if(!b){break _b}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+108>>2];$b:{if((b|0)<0|!(b&2147483647)){break $b}b=v[c+100>>2];if(!b){break $b}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+96>>2];ac:{if((b|0)<0|!(b&2147483647)){break ac}b=v[c+88>>2];if(!b){break ac}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+84>>2];bc:{if((b|0)<0|!(b&2147483647)){break bc}b=v[c+76>>2];if(!b){break bc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+72>>2];cc:{if((b|0)<0|!(b&2147483647)){break cc}b=v[c- -64>>2];if(!b){break cc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+60>>2];dc:{if((b|0)<0|!(b&2147483647)){break dc}b=v[c+52>>2];if(!b){break dc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+48>>2];ec:{if((b|0)<0|!(b&2147483647)){break ec}b=v[c+40>>2];if(!b){break ec}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+36>>2];fc:{if((b|0)<0|!(b&2147483647)){break fc}b=v[c+28>>2];if(!b){break fc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+24>>2];gc:{if((b|0)<0|!(b&2147483647)){break gc}b=v[c+16>>2];if(!b){break gc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+12>>2];hc:{if((b|0)<0|!(b&2147483647)){break hc}b=v[c+4>>2];if(!b){break hc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}c=v[c>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+12>>2];ic:{if((c|0)<0|!(c&2147483647)){break ic}c=v[d+4>>2];if(!c){break ic}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d);v[i+976>>2]=0}c=v[i+1144>>2];b=v[c+12>>2];jc:{kc:{if((b|0)<0|!(b&2147483647)){break kc}b=v[c+4>>2];if(!b){break kc}c=v[c>>2];Ba[v[v[c>>2]+12>>2]](c,b);c=v[i+1144>>2];if(!c){break jc}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+1008>>2];if(c){Ba[v[v[c>>2]>>2]](c)|0;c=v[i+1008>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[i+1008>>2]=0}xa=o+16|0;v[m+4884>>2]=0;v[m+4872>>2]=0;v[m+4860>>2]=0;c=v[m+4796>>2];d=v[m+4804>>2]+2|0;if(c>>>0>d>>>0){while(1){c=c-1|0;b=v[v[m+4792>>2]+(c<<2)>>2];v[m+4796>>2]=c;if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);c=v[m+4796>>2]}if(c>>>0>d>>>0){continue}break}}v[m+4804>>2]=0;v[m+4808>>2]=0;if(p){Ba[v[v[a>>2]+404>>2]](a)}c=v[a+6340>>2];lc:{if(c>>>0>127){break lc}b=c+150864|0;if(!w[b|0]){break lc}t[b|0]=0;v[(c<<2)+150992>>2]=0}c=a+6348|0;b=v[v[c>>2]>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}c=v[c>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[a+6296>>2]=0;v[a+6280>>2]=126144;v[a+6256>>2]=0;v[a+6240>>2]=126144;v[a+6216>>2]=0;v[a+6200>>2]=126144;v[a+6184>>2]=0;v[a+6168>>2]=126144;v[a+6152>>2]=0;v[a+6136>>2]=126144;v[a+6120>>2]=0;v[a+6104>>2]=126144;c=v[a+6088>>2];mc:{if((c|0)<0|!(c&2147483647)){break mc}c=v[a+6080>>2];if(!c){break mc}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+6068>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+6064>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+6060>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+6032>>2];nc:{if((c|0)<0|!(c&2147483647)){break nc}c=v[a+6024>>2];if(!c){break nc}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+5984>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+5944>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+5940>>2];oc:{if((c|0)<0|!(c&2147483647)){break oc}c=v[a+5932>>2];if(!c){break oc}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+5892>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}Jp(a+5828|0);v[a+5800>>2]=0;v[a+5784>>2]=126144;v[a>>2]=124876;v[a+5760>>2]=0;v[a+5744>>2]=126144;EE(a+5584|0);Gp(m);return a|0}function Ty(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;var j=C(0),k=0,l=0,m=0,n=0,o=0,p=C(0),q=0,r=0,s=0,A=C(0),D=0,E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=0,R=0,S=0,T=0,U=C(0),V=0,W=C(0),X=0,Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=0,Fa=0,Ga=0,Ha=C(0),Ia=C(0),Ja=C(0),Ka=0,La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=0,Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=0,Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=0,mb=0,nb=0,ob=0,pb=0,qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=0,zb=0,Ab=0,Bb=C(0),Cb=C(0),Db=C(0),Eb=0,Fb=0,Gb=0,Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=C(0),rc=C(0),sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=0,Ac=C(0),Bc=C(0),Cc=C(0),Dc=C(0),Ec=C(0),Fc=0,Gc=C(0),Hc=C(0),Ic=C(0),Jc=C(0),Kc=C(0),Lc=C(0),Mc=C(0),Nc=C(0),Oc=0,Pc=C(0),Qc=C(0),Rc=C(0),Sc=C(0),Tc=C(0),Uc=C(0),Vc=C(0),Wc=C(0),Xc=C(0),Yc=C(0),Zc=C(0),_c=C(0),$c=0,ad=C(0),bd=C(0),cd=C(0),dd=C(0),ed=0,fd=C(0),gd=C(0),hd=C(0),id=C(0),jd=C(0),kd=C(0),ld=C(0),md=C(0),nd=C(0),od=C(0),pd=C(0),qd=C(0),rd=C(0),sd=C(0),td=C(0),ud=C(0),vd=C(0),wd=C(0),xd=C(0),yd=C(0),zd=C(0),Ad=C(0),Bd=C(0),Cd=C(0),Dd=C(0),Ed=C(0),Fd=C(0),Gd=C(0),Hd=C(0),Id=C(0),Jd=C(0),Kd=C(0),Ld=C(0),Md=C(0),Nd=C(0),Od=C(0),Pd=C(0),Qd=C(0),Rd=C(0),Sd=C(0),Td=C(0),Ud=C(0),Vd=C(0),Wd=C(0),Xd=C(0),Yd=C(0),Zd=C(0),_d=C(0),$d=C(0),ae=0,be=0,ce=0,de=0,ee=0,fe=0,ge=0,he=C(0),ie=C(0),je=C(0),ke=C(0),le=C(0),me=C(0),ne=C(0),oe=C(0),pe=C(0),qe=C(0),re=C(0),se=C(0),te=C(0),ue=C(0),ve=C(0),we=C(0),xe=C(0),ye=C(0),ze=C(0),Ae=C(0),Be=C(0),Ce=C(0),De=C(0),Ee=C(0),Fe=C(0),Ge=C(0),He=C(0),Ie=C(0),Je=C(0),Ke=C(0),Le=C(0),Me=C(0),Ne=C(0),Oe=C(0),Pe=C(0),Qe=C(0),Re=C(0),Se=C(0),Te=C(0),Ue=C(0),Ve=C(0),We=C(0),Xe=C(0),Ye=C(0),Ze=C(0),_e=C(0),$e=C(0),af=C(0),bf=C(0),cf=C(0),df=C(0),ef=C(0),ff=C(0),gf=C(0),hf=C(0),jf=C(0),kf=C(0),lf=C(0),mf=C(0),nf=C(0),of=C(0),pf=C(0),qf=C(0),rf=C(0),sf=C(0),tf=C(0),uf=C(0),vf=C(0),wf=C(0),xf=C(0),yf=C(0),zf=C(0),Af=C(0),Bf=C(0),Cf=C(0),Df=C(0),Ef=C(0),Ff=C(0),Gf=C(0),Hf=C(0),If=C(0),Jf=C(0),Kf=C(0),Lf=C(0),Mf=C(0),Nf=C(0),Of=C(0),Pf=C(0),Qf=C(0),Rf=C(0),Sf=C(0),Tf=C(0),Uf=0,Vf=C(0),Wf=C(0),Xf=C(0),Yf=C(0),Zf=C(0),_f=C(0),$f=C(0),ag=C(0),bg=C(0),cg=C(0),dg=C(0),eg=C(0),fg=C(0),gg=C(0),hg=C(0),ig=C(0),jg=C(0),kg=C(0),lg=C(0),mg=C(0),ng=C(0),og=C(0),pg=C(0),qg=C(0),rg=C(0),sg=C(0),tg=C(0),ug=C(0),vg=0,wg=0,xg=0,yg=0,zg=0,Ag=0,Bg=0,Cg=0,Dg=C(0),Eg=C(0),Fg=C(0),Gg=C(0),Hg=0,Ig=0,Jg=0,Kg=0,Lg=C(0),Mg=C(0),Ng=C(0),Og=C(0),Pg=C(0),Qg=C(0),Rg=C(0),Sg=C(0),Tg=C(0),Ug=C(0),Vg=C(0),Wg=C(0),Xg=C(0),Yg=C(0),Zg=C(0),_g=C(0),$g=0,ah=C(0),bh=C(0),ch=C(0),dh=C(0),eh=C(0),fh=C(0),gh=C(0),hh=C(0),ih=C(0),jh=C(0),kh=C(0),lh=C(0),mh=C(0),nh=C(0),oh=C(0),ph=C(0),qh=C(0),rh=C(0),sh=C(0),th=C(0),uh=C(0),vh=C(0),wh=C(0),xh=C(0),yh=C(0),zh=C(0),Ah=C(0),Bh=C(0);Ka=xa-32|0;xa=Ka;u[v[c+16>>2]+22>>1]=0;u[v[c+192>>2]+22>>1]=0;u[v[c+368>>2]+22>>1]=0;u[v[c+544>>2]+22>>1]=0;v[b+4112>>2]=0;k=b+4128|0;s=b+16|0;r=1;a:{while(1){Q=B(X,176)+c|0;q=v[b+4112>>2];v[Q+116>>2]=s+(q<<6);l=v[(X<<2)+a>>2];if(q+w[l+12|0]>>>0>64){break a}t[Ka+31|0]=0;t[Ka+30|0]=0;A=z[v[Q+28>>2]+76>>2];j=z[v[Q+32>>2]+76>>2];l=ty(s,l,Ka+31|0,Ka+30|0,Ka+24|0,Ka+20|0,Ka+16|0,Ka+12|0,j>A?A:j);if(!l){break a}v[Q+120>>2]=l;t[Q+124|0]=w[Ka+31|0];t[Q+125|0]=w[Q+125|0]|t[Ka+30|0]&1;z[Q>>2]=z[Ka+24>>2]*z[Q>>2];z[Q+8>>2]=z[Ka+20>>2]*z[Q+8>>2];z[Q+4>>2]=z[Ka+16>>2]*z[Q+4>>2];z[Q+12>>2]=z[Ka+12>>2]*z[Q+12>>2];X=X+1|0;if((X|0)!=4){continue}break}D=xa-160|0;xa=D;v[k+7684>>2]=0;v[k+7688>>2]=0;q=k+7296|0;b:{while(1){a=G<<2;s=B(G,176)+c|0;z[a+(D+144|0)>>2]=z[s>>2];z[a+(D+128|0)>>2]=z[s+8>>2];z[a+(D+112|0)>>2]=z[s+4>>2];z[a+(D+96|0)>>2]=z[s+12>>2];v[s+148>>2]=o;c:{if(w[s+125|0]){break c}if(uy(k,v[s+136>>2],w[s+140|0],s+36|0,s- -64|0,g)){break c}r=1;break b}v[s+156>>2]=v[k+7684>>2];r=1;if(!$z(k,v[s+116>>2],v[s+120>>2])){break b}o=v[s+156>>2];u[s+160>>1]=v[k+7684>>2]-o;b=s+36|0;a=s- -64|0;if(aA(k,v[s+116>>2],b,a,o,v[s+148>>2])){break b}bA(k,v[s+116>>2],b,a,g,v[s+148>>2],C(z[s+128>>2]+f));o=v[k+7688>>2];b=o;P=v[s+148>>2];if(b>>>0>P>>>0){while(1){a=b-1|0;if(v[(k+(a<<2)|0)+7424>>2]==65535){if(b>>>0>>0){while(1){l=k+7424|0;r=b<<2;o=r-4|0;v[l+o>>2]=v[l+r>>2];v[o+q>>2]=v[r+q>>2];b=b+1|0;o=v[k+7688>>2];if(b>>>0>>0){continue}break}P=v[s+148>>2]}o=o-1|0;v[k+7688>>2]=o}b=a;if(P>>>0>>0){continue}break}}v[s+152>>2]=o-P;G=G+1|0;if((G|0)!=4){continue}break}X=0;G=0;o=0;b=v[c+148>>2];l=v[c+152>>2];d:{if(b>>>0>=l+b>>>0){break d}P=0;if(l-1>>>0>=3){a=l&-4;while(1){q=o;o=k+(b<<2)|0;o=(((q+(v[o+7424>>2]!=65535)|0)+(v[o+7428>>2]!=65535)|0)+(v[o+7432>>2]!=65535)|0)+(v[o+7436>>2]!=65535)|0;b=b+4|0;V=V+4|0;if((a|0)!=(V|0)){continue}break}}a=l&3;if(a){while(1){o=(v[(k+(b<<2)|0)+7424>>2]!=65535)+o|0;b=b+1|0;P=P+1|0;if((a|0)!=(P|0)){continue}break}}a=B(o,104)+15&-16;if(!a){break d}r=0;G=Ba[v[v[i>>2]+4>>2]](i,a)|0;if(G+1>>>0<2){break b}}b=v[c+324>>2];q=v[c+328>>2];e:{if(b>>>0>=q+b>>>0){break e}V=0;if(q-1>>>0>=3){a=q&-4;r=0;while(1){l=k+(b<<2)|0;lb=((((v[l+7424>>2]!=65535)+lb|0)+(v[l+7428>>2]!=65535)|0)+(v[l+7432>>2]!=65535)|0)+(v[l+7436>>2]!=65535)|0;b=b+4|0;r=r+4|0;if((a|0)!=(r|0)){continue}break}}a=q&3;if(a){while(1){lb=(v[(k+(b<<2)|0)+7424>>2]!=65535)+lb|0;b=b+1|0;V=V+1|0;if((a|0)!=(V|0)){continue}break}}a=B(lb,104)+15&-16;if(!a){break e}r=0;X=Ba[v[v[i>>2]+4>>2]](i,a)|0;if(X+1>>>0<2){break b}}P=0;b=v[c+500>>2];q=v[c+504>>2];f:{if(b>>>0>=q+b>>>0){break f}r=0;if(q-1>>>0>=3){a=q&-4;while(1){l=k+(b<<2)|0;P=((((v[l+7424>>2]!=65535)+P|0)+(v[l+7428>>2]!=65535)|0)+(v[l+7432>>2]!=65535)|0)+(v[l+7436>>2]!=65535)|0;b=b+4|0;Ta=Ta+4|0;if((a|0)!=(Ta|0)){continue}break}}a=q&3;if(a){while(1){P=(v[(k+(b<<2)|0)+7424>>2]!=65535)+P|0;b=b+1|0;r=r+1|0;if((a|0)!=(r|0)){continue}break}}a=B(P,104)+15&-16;if(!a){break f}r=0;mb=Ba[v[v[i>>2]+4>>2]](i,a)|0;if(mb+1>>>0<2){break b}}V=0;b=v[c+676>>2];q=v[c+680>>2];g:{if(b>>>0>=q+b>>>0){break g}Ta=0;if(q-1>>>0>=3){a=q&-4;r=0;while(1){l=k+(b<<2)|0;V=((((v[l+7424>>2]!=65535)+V|0)+(v[l+7428>>2]!=65535)|0)+(v[l+7432>>2]!=65535)|0)+(v[l+7436>>2]!=65535)|0;b=b+4|0;r=r+4|0;if((a|0)!=(r|0)){continue}break}}a=q&3;if(a){while(1){V=(v[(k+(b<<2)|0)+7424>>2]!=65535)+V|0;b=b+1|0;Ta=Ta+1|0;if((a|0)!=(Ta|0)){continue}break}}a=B(V,104)+15&-16;if(!a){break g}r=0;nb=Ba[v[v[i>>2]+4>>2]](i,a)|0;if(nb+1>>>0<2){break b}}Ta=0;v[D+92>>2]=0;R=D- -64|0;a=k;k=0;b=xa-256|0;xa=b;I9(b+128|0,0,128);m=I9(b,0,128);S=w[c+124|0];Tb=v[c+152>>2];if(Tb){s=v[c+148>>2];b=0;while(1){r=0;l=b+s|0;T=a+B(l,104)|0;if(!(t[T+2817|0]&1)){r=x[T+2818>>1]!=0}n=v[(a+(l<<2)|0)+7296>>2];h:{if(!n){break h}q=b<<2;l=q+(m+128|0)|0;Q=v[l>>2];v[l>>2]=n>>>0>Q>>>0?n:Q;k=k+n|0;if(!r){break h}l=m+q|0;r=v[l>>2];q=l;l=x[T+2818>>1]<<1;v[q>>2]=l>>>0>r>>>0?l:r;k=k+l|0}b=b+1|0;if((Tb|0)!=(b|0)){continue}break}}v[R>>2]=k;Q=1;Q=S?Q:w[c+300|0]!=0;Ub=v[c+328>>2];i:{if(!Ub){k=0;break i}s=v[c+324>>2];k=0;b=0;while(1){r=0;l=b+s|0;T=a+B(l,104)|0;if(!(t[T+2817|0]&1)){r=x[T+2818>>1]!=0}n=v[(a+(l<<2)|0)+7296>>2];j:{if(!n){break j}q=b<<2;l=q+(m+128|0)|0;S=v[l>>2];v[l>>2]=n>>>0>S>>>0?n:S;k=k+n|0;if(!r){break j}l=m+q|0;r=v[l>>2];q=l;l=x[T+2818>>1]<<1;v[q>>2]=l>>>0>r>>>0?l:r;k=k+l|0}b=b+1|0;if((Ub|0)!=(b|0)){continue}break}}v[R+4>>2]=k;n=1;n=Q?n:w[c+476|0]!=0;Fa=v[c+504>>2];k:{if(!Fa){k=0;break k}s=v[c+500>>2];k=0;b=0;while(1){r=0;l=b+s|0;S=a+B(l,104)|0;if(!(t[S+2817|0]&1)){r=x[S+2818>>1]!=0}T=v[(a+(l<<2)|0)+7296>>2];l:{if(!T){break l}q=b<<2;l=q+(m+128|0)|0;Q=v[l>>2];v[l>>2]=Q>>>0>>0?T:Q;k=k+T|0;if(!r){break l}l=m+q|0;r=v[l>>2];q=l;l=x[S+2818>>1]<<1;v[q>>2]=l>>>0>r>>>0?l:r;k=k+l|0}b=b+1|0;if((Fa|0)!=(b|0)){continue}break}}v[R+8>>2]=k;Q=1;Q=n?Q:w[c+652|0]!=0;n=0;k=0;Ya=v[c+680>>2];if(Ya){s=v[c+676>>2];b=0;while(1){r=0;l=b+s|0;T=a+B(l,104)|0;if(!(t[T+2817|0]&1)){r=x[T+2818>>1]!=0}Ea=v[(a+(l<<2)|0)+7296>>2];m:{if(!Ea){break m}q=b<<2;l=q+(m+128|0)|0;S=v[l>>2];v[l>>2]=S>>>0>>0?Ea:S;k=k+Ea|0;if(!r){break m}l=m+q|0;r=v[l>>2];q=l;l=x[T+2818>>1]<<1;v[q>>2]=l>>>0>r>>>0?l:r;k=k+l|0}b=b+1|0;if((Ya|0)!=(b|0)){continue}break}}v[R+12>>2]=k;b=0;r=0;k=Tb>>>0>>0?Ub:Tb;k=k>>>0>>0?Fa:k;Fa=k>>>0>>0?Ya:k;n:{if(!Fa){break n}q=0;s=Fa-1|0;if(s>>>0>=3){l=Fa&-4;k=0;while(1){S=b;b=q<<2;b=(((S+(v[b+m>>2]!=0)|0)+(v[m+(b|4)>>2]!=0)|0)+(v[m+(b|8)>>2]!=0)|0)+(v[m+(b|12)>>2]!=0)|0;q=q+4|0;k=k+4|0;if((l|0)!=(k|0)){continue}break}}k=Fa&3;if(k){while(1){b=(v[m+(q<<2)>>2]!=0)+b|0;q=q+1|0;r=r+1|0;if((k|0)!=(r|0)){continue}break}}n=b<<7;if(!Fa){b=0;r=0;break n}k=0;q=0;r=0;b=0;if(s>>>0>=3){T=Fa&-4;Ea=0;while(1){Ya=q<<2;S=Ya|12;s=Ya|8;l=Ya|4;r=v[S+m>>2]+(v[s+m>>2]+(v[l+m>>2]+(v[m+Ya>>2]+r|0)|0)|0)|0;R=S;S=m+128|0;b=v[R+S>>2]+(v[s+S>>2]+(v[l+S>>2]+(v[S+Ya>>2]+b|0)|0)|0)|0;q=q+4|0;Ea=Ea+4|0;if((T|0)!=(Ea|0)){continue}break}}s=Fa&3;if(!s){break n}while(1){l=q<<2;r=v[l+m>>2]+r|0;b=v[l+(m+128|0)>>2]+b|0;q=q+1|0;k=k+1|0;if((s|0)!=(k|0)){continue}break}}q=160;if(!(v[c+96>>2]==1|v[c+272>>2]==1|v[c+448>>2]==1)){q=v[c+624>>2]==1?160:112}v[D+92>>2]=((B(Fa,192)+n|0)+(Q?b<<4:0)|0)+B(b+r|0,q);xa=m+256|0;$c=v[D+92>>2];if($c){r=1;b=$c+16|0;if(b>>>0>16384){break b}r=0;Ta=Ba[v[v[i>>2]>>2]](i,b)|0;if(Ta+1>>>0<2){break b}}t[c+140|0]=o;v[c+136>>2]=G;l=$c>>>4|0;k=v[c+16>>2];o:{if(!G){break o}o=v[c+152>>2];if(!o){break o}b=0;while(1){i=v[c+148>>2]+b|0;if(v[(a+(i<<2)|0)+7424>>2]!=65535){G=H9(G,(a+B(i,104)|0)+2816|0,104)+104|0;o=v[c+152>>2]}b=b+1|0;if(o>>>0>b>>>0){continue}break}}u[c+162>>1]=x[c+162>>1]+x[D+64>>1];u[k+22>>1]=l;v[k+24>>2]=Ta;u[k+20>>1]=v[c+120>>2];v[k+28>>2]=v[c+144>>2];t[c+316|0]=lb;v[c+312>>2]=X;k=v[c+192>>2];p:{if(!X){break p}o=v[c+328>>2];if(!o){break p}b=0;while(1){i=v[c+324>>2]+b|0;if(v[(a+(i<<2)|0)+7424>>2]!=65535){X=H9(X,(a+B(i,104)|0)+2816|0,104)+104|0;o=v[c+328>>2]}b=b+1|0;if(o>>>0>b>>>0){continue}break}}u[c+338>>1]=x[c+338>>1]+x[D+68>>1];u[k+22>>1]=l;v[k+24>>2]=Ta;u[k+20>>1]=v[c+296>>2];v[k+28>>2]=v[c+320>>2];t[c+492|0]=P;v[c+488>>2]=mb;k=v[c+368>>2];q:{if(!mb){break q}o=v[c+504>>2];if(!o){break q}b=0;while(1){i=v[c+500>>2]+b|0;if(v[(a+(i<<2)|0)+7424>>2]!=65535){mb=H9(mb,(a+B(i,104)|0)+2816|0,104)+104|0;o=v[c+504>>2]}b=b+1|0;if(o>>>0>b>>>0){continue}break}}u[c+514>>1]=x[c+514>>1]+x[D+72>>1];u[k+22>>1]=l;v[k+24>>2]=Ta;u[k+20>>1]=v[c+472>>2];v[k+28>>2]=v[c+496>>2];t[c+668|0]=V;v[c+664>>2]=nb;k=v[c+544>>2];r:{if(!nb){break r}o=v[c+680>>2];if(!o){break r}b=0;while(1){i=v[c+676>>2]+b|0;if(v[(a+(i<<2)|0)+7424>>2]!=65535){nb=H9(nb,(a+B(i,104)|0)+2816|0,104)+104|0;o=v[c+680>>2]}b=b+1|0;if(o>>>0>b>>>0){continue}break}}u[c+690>>1]=x[c+690>>1]+x[D+76>>1];u[k+22>>1]=l;v[k+24>>2]=Ta;u[k+20>>1]=v[c+648>>2];v[k+28>>2]=v[c+672>>2];b=v[D+156>>2];v[D+56>>2]=v[D+152>>2];v[D+60>>2]=b;b=v[D+148>>2];v[D+48>>2]=v[D+144>>2];v[D+52>>2]=b;b=v[D+124>>2];v[D+40>>2]=v[D+120>>2];v[D+44>>2]=b;b=v[D+116>>2];v[D+32>>2]=v[D+112>>2];v[D+36>>2]=b;b=v[D+140>>2];v[D+24>>2]=v[D+136>>2];v[D+28>>2]=b;b=v[D+132>>2];v[D+16>>2]=v[D+128>>2];v[D+20>>2]=b;b=v[D+108>>2];v[D+8>>2]=v[D+104>>2];v[D+12>>2]=b;b=v[D+100>>2];v[D>>2]=v[D+96>>2];v[D+4>>2]=b;R=a;n=Ta;lb=0;nb=0;mb=0;Q=0;Tb=0;Ub=0;Fa=0;Ya=0;yb=xa-16|0;xa=yb;m=c;Dg=z[m+660>>2];Eg=z[m+484>>2];Fg=z[m+308>>2];Gg=z[m+132>>2];v[yb+8>>2]=0;v[yb+12>>2]=0;v[yb>>2]=0;v[yb+4>>2]=0;b=1;Ea=1;s:{if(w[m+124|0]){break s}Ea=1;if(w[m+300|0]){break s}Ea=1;if(w[m+476|0]){break s}Ea=w[m+652|0]!=0}c=v[m+96>>2];b=(c|0)!=1?v[m+272>>2]==1:b;a=1;q=1;q=(c|0)!=4?v[m+272>>2]==4:q;a=b?a:v[m+448>>2]==1;Yb=1;b=1;b=q?b:v[m+448>>2]==4;Yb=a?Yb:v[m+624>>2]==1;Fc=1;Fc=b?Fc:v[m+624>>2]==4;i=v[m+152>>2];c=v[m+328>>2];b=v[m+504>>2];a=v[m+680>>2];a=a>>>0>>0?b:a;a=a>>>0>>0?c:a;Uf=a>>>0>>0?i:a;if(Uf){Hg=w[m+654|0];Ig=w[m+478|0];Jg=w[m+302|0];Kg=w[m+126|0];Vf=z[m+616>>2];Wf=z[m+612>>2];Xf=z[m+608>>2];Yf=z[m+440>>2];Zf=z[m+436>>2];_f=z[m+432>>2];$f=z[m+264>>2];ag=z[m+260>>2];bg=z[m+256>>2];cg=z[m+88>>2];dg=z[m+84>>2];eg=z[m+80>>2];fg=z[m+588>>2];gg=z[m+584>>2];hg=z[m+580>>2];ig=z[m+412>>2];jg=z[m+408>>2];kg=z[m+404>>2];lg=z[m+236>>2];mg=z[m+232>>2];ng=z[m+228>>2];og=z[m+60>>2];pg=z[m+56>>2];qg=z[m+52>>2];Lg=z[m+656>>2];Mg=z[m+480>>2];Ng=z[m+304>>2];G=v[m+560>>2];he=z[G+32>>2];l=v[m+384>>2];ie=z[l+32>>2];k=v[m+208>>2];je=z[k+32>>2];o=v[m+32>>2];ke=z[o- -64>>2];le=z[o+60>>2];me=z[o+56>>2];ne=z[o+52>>2];oe=z[o+48>>2];pe=z[o+44>>2];qe=z[o+40>>2];re=z[o+36>>2];i=v[m+556>>2];se=z[i+32>>2];c=v[m+380>>2];te=z[c+32>>2];b=v[m+204>>2];ue=z[b+32>>2];a=v[m+28>>2];ve=z[a- -64>>2];we=z[a+60>>2];xe=z[a+56>>2];ye=z[a+52>>2];ze=z[a+48>>2];Ae=z[a+44>>2];Be=z[a+40>>2];Ce=z[a+36>>2];bc=z[G+16>>2];cc=z[l+16>>2];dc=z[k+16>>2];ec=z[o+24>>2];fc=z[o+20>>2];De=z[i+16>>2];Ee=z[c+16>>2];Fe=z[b+16>>2];Ge=z[a+24>>2];He=z[a+20>>2];Ie=z[G- -64>>2];Je=z[G+60>>2];Ke=z[G+56>>2];Le=z[G+52>>2];Me=z[G+48>>2];Ne=z[G+44>>2];Oe=z[G+40>>2];Pe=z[G+36>>2];Qe=z[l- -64>>2];Re=z[l+60>>2];Se=z[l+56>>2];Te=z[l+52>>2];Ue=z[l+48>>2];Ve=z[l+44>>2];We=z[l+40>>2];Xe=z[l+36>>2];Ye=z[k- -64>>2];Ze=z[k+60>>2];_e=z[k+56>>2];$e=z[k+52>>2];af=z[k+48>>2];bf=z[k+44>>2];cf=z[k+40>>2];df=z[k+36>>2];ef=z[i- -64>>2];ff=z[i+60>>2];gf=z[i+56>>2];hf=z[i+52>>2];jf=z[i+48>>2];kf=z[i+44>>2];lf=z[i+40>>2];mf=z[i+36>>2];nf=z[c- -64>>2];of=z[c+60>>2];pf=z[c+56>>2];qf=z[c+52>>2];rf=z[c+48>>2];sf=z[c+44>>2];tf=z[c+40>>2];uf=z[c+36>>2];vf=z[b- -64>>2];wf=z[b+60>>2];xf=z[b+56>>2];yf=z[b+52>>2];zf=z[b+48>>2];Af=z[b+44>>2];Bf=z[b+40>>2];Cf=z[b+36>>2];gc=z[G+24>>2];hc=z[G+20>>2];ic=z[l+24>>2];jc=z[l+20>>2];kc=z[k+24>>2];lc=z[k+20>>2];Df=z[i+24>>2];Ef=z[i+20>>2];Ff=z[c+24>>2];Gf=z[c+20>>2];Hf=z[b+24>>2];If=z[b+20>>2];Og=z[m+128>>2];ad=z[D+12>>2];bd=z[D+8>>2];cd=z[D+4>>2];dd=z[D>>2];Jf=z[o+32>>2];Kf=z[a+32>>2];mc=z[o+16>>2];Lf=z[a+16>>2];ed=Yb?144:96;g=z[i+68>>2];f=z[G+68>>2];rg=f>2];f=z[l+68>>2];sg=f>2];f=z[k+68>>2];tg=f>2];nc=z[G+8>>2];Pg=C(fd-nc);gd=z[c+8>>2];oc=z[l+8>>2];Qg=C(gd-oc);hd=z[b+8>>2];pc=z[k+8>>2];Rg=C(hd-pc);id=z[i+4>>2];qc=z[G+4>>2];Sg=C(id-qc);jd=z[c+4>>2];rc=z[l+4>>2];Tg=C(jd-rc);kd=z[b+4>>2];sc=z[k+4>>2];Ug=C(kd-sc);ld=z[i>>2];tc=z[G>>2];Vg=C(ld-tc);md=z[c>>2];uc=z[l>>2];Wg=C(md-uc);nd=z[b>>2];vc=z[k>>2];Xg=C(nd-vc);g=z[a+68>>2];f=z[o+68>>2];ug=f>2]*z[o+12>>2]);qd=z[a+8>>2];wc=z[o+8>>2];Yg=C(qd-wc);rd=z[a+4>>2];xc=z[o+4>>2];Zg=C(rd-xc);sd=z[a>>2];yc=z[o>>2];_g=C(sd-yc);td=C(z[D+28>>2]*z[G+12>>2]);ud=C(z[D+24>>2]*z[l+12>>2]);vd=C(z[D+20>>2]*z[k+12>>2]);$g=Yb?7:8;wd=z[D+44>>2];xd=C(z[D+60>>2]*z[i+12>>2]);ah=C(wd*xd);yd=z[D+40>>2];zd=C(z[D+56>>2]*z[c+12>>2]);bh=C(yd*zd);Ad=z[D+36>>2];Bd=C(z[D+52>>2]*z[b+12>>2]);ch=C(Ad*Bd);Cd=z[D+32>>2];Dd=C(z[D+48>>2]*z[a+12>>2]);dh=C(Cd*Dd);Gc=z[m+604>>2];Mf=C(C(Gc*Gc)+C(-.5));Hc=z[m+428>>2];Nf=C(C(Hc*Hc)+C(-.5));Ic=z[m+252>>2];Of=C(C(Ic*Ic)+C(-.5));Jc=z[m+76>>2];Pf=C(C(Jc*Jc)+C(-.5));Kc=z[m+576>>2];Qf=C(C(Kc*Kc)+C(-.5));Lc=z[m+400>>2];Rf=C(C(Lc*Lc)+C(-.5));Mc=z[m+224>>2];Sf=C(C(Mc*Mc)+C(-.5));Nc=z[m+48>>2];Tf=C(C(Nc*Nc)+C(-.5));Ed=z[m+596>>2];eh=C(-Ed);Fd=z[m+592>>2];fh=C(-Fd);Gd=z[m+600>>2];gh=C(-Gd);Hd=z[m+420>>2];hh=C(-Hd);Id=z[m+416>>2];ih=C(-Id);Jd=z[m+424>>2];jh=C(-Jd);Kd=z[m+244>>2];kh=C(-Kd);Ld=z[m+240>>2];lh=C(-Ld);Md=z[m+248>>2];mh=C(-Md);Nd=z[m+68>>2];nh=C(-Nd);Od=z[m+64>>2];oh=C(-Od);Pd=z[m+72>>2];ph=C(-Pd);Qd=z[m+568>>2];qh=C(-Qd);Rd=z[m+564>>2];rh=C(-Rd);Sd=z[m+572>>2];sh=C(-Sd);Td=z[m+392>>2];th=C(-Td);Ud=z[m+388>>2];uh=C(-Ud);Vd=z[m+396>>2];vh=C(-Vd);Wd=z[m+216>>2];wh=C(-Wd);Xd=z[m+212>>2];xh=C(-Xd);Yd=z[m+220>>2];yh=C(-Yd);Zd=z[m+40>>2];zh=C(-Zd);_d=z[m+36>>2];Ah=C(-_d);$d=z[m+44>>2];Bh=C(-$d);ae=R+7424|0;be=R+2816|0;ce=R+7556|0;while(1){b=v[m+328>>2];pb=y[m+152>>2]<=ob>>>0;de=pb?de:v[m+148>>2]+ob|0;a=v[m+504>>2];zb=b>>>0<=ob>>>0;ee=zb?ee:v[m+324>>2]+ob|0;Oc=v[m+680>>2];Eb=a>>>0<=ob>>>0;fe=Eb?fe:v[m+500>>2]+ob|0;Fb=ob>>>0>=Oc>>>0;ge=Fb?ge:v[m+676>>2]+ob|0;i=0;o=0;o=pb?o:v[(R+(de<<2)|0)+7296>>2];i=zb?i:v[(R+(ee<<2)|0)+7296>>2];c=0;k=0;k=Eb?k:v[(R+(fe<<2)|0)+7296>>2];s=8;if(!Fb){s=0;c=v[(R+(ge<<2)|0)+7296>>2]}vg=de<<2;b=v[vg+ae>>2];Gb=v[m+116>>2]+(x[R+B(b,44)>>1]<<6)|0;Pc=z[Gb+60>>2];wg=ee<<2;a=v[wg+ae>>2];Vb=v[m+292>>2]+(x[R+B(a,44)>>1]<<6)|0;Qc=z[Vb+60>>2];xg=fe<<2;q=v[xg+ae>>2];Wb=v[m+468>>2]+(x[R+B(q,44)>>1]<<6)|0;Rc=z[Wb+60>>2];yg=ge<<2;P=v[yg+ae>>2];Zb=v[m+644>>2]+(x[R+B(P,44)>>1]<<6)|0;Sc=z[Zb+60>>2];t[n+7|0]=Hg;t[n+6|0]=Ig;t[n+5|0]=Jg;t[n+4|0]=Kg;t[n+3|0]=Ea;l=c>>>0>>0?k:c;l=i>>>0>l>>>0?i:l;Ga=l>>>0>>0?o:l;zc=Ga<<4;T=I9(n+192|0,0,zc);z[n+124>>2]=ad;z[n+120>>2]=bd;z[n+116>>2]=cd;z[n+112>>2]=dd;z[n+108>>2]=wd;z[n+104>>2]=yd;z[n+100>>2]=Ad;z[n+96>>2]=Cd;z[n+92>>2]=td;z[n+88>>2]=ud;z[n+84>>2]=vd;z[n+80>>2]=pd;z[n+76>>2]=xd;z[n+72>>2]=zd;z[n+68>>2]=Bd;z[n+64>>2]=Dd;t[n+11|0]=c;t[n+10|0]=k;t[n+9|0]=i;t[n+8|0]=o;t[n+1|0]=Ga;v[n+176>>2]=v[m+112>>2];v[n+180>>2]=v[m+288>>2];v[n+184>>2]=v[m+464>>2];c=v[m+640>>2];Ua=C(-Sc);z[n+28>>2]=Ua;Va=C(-Rc);z[n+24>>2]=Va;Wa=C(-Qc);z[n+20>>2]=Wa;Xa=C(-Pc);z[n+16>>2]=Xa;v[n+188>>2]=c;ga=z[Gb>>2];ha=z[Vb>>2];ia=z[Wb>>2];ja=z[Zb>>2];Y=z[Gb+4>>2];Z=z[Vb+4>>2];_=z[Wb+4>>2];ba=z[Zb+4>>2];ca=z[Gb+8>>2];da=z[Vb+8>>2];ea=z[Wb+8>>2];U=z[Zb+8>>2];z[n+172>>2]=U;z[n+168>>2]=ea;z[n+164>>2]=da;z[n+160>>2]=ca;z[n+156>>2]=ba;z[n+152>>2]=_;z[n+148>>2]=Z;z[n+144>>2]=Y;z[n+140>>2]=ja;z[n+136>>2]=ia;z[n+132>>2]=ha;z[n+128>>2]=ga;i=65535;o=65535;t:{if((b|0)==65535){break t}while(1){o=b;b=R+B(b,44)|0;if(w[b+5|0]){break t}o=65535;b=x[b+2>>1];if((b|0)!=65535){continue}break}}u:{if((a|0)==65535){break u}while(1){i=a;a=R+B(a,44)|0;if(w[a+5|0]){break u}i=65535;a=x[a+2>>1];if((a|0)!=65535){continue}break}}b=65535;a=65535;v:{if((q|0)==65535){break v}while(1){a=q;c=R+B(a,44)|0;if(w[c+5|0]){break v}a=65535;q=x[c+2>>1];if((q|0)!=65535){continue}break}}w:{if((P|0)==65535){break w}while(1){b=P;c=R+B(b,44)|0;if(w[c+5|0]){break w}b=65535;P=x[c+2>>1];if((P|0)!=65535){continue}break}}V=0;x:{if(pb){k=o;G=0;break x}lb=65535;Tb=0;G=1;k=o;if((k|0)==65535){k=65535;break x}while(1){c=R+B(k,44)|0;if(w[c+5|0]!=(G|0)){lb=o;break x}G=0;k=x[c+2>>1];if((k|0)!=65535){continue}break}k=65535;lb=o}y:{if(zb){c=i;break y}nb=65535;Ub=0;V=1;c=i;if((c|0)==65535){c=65535;break y}while(1){o=R+B(c,44)|0;if(w[o+5|0]!=(V|0)){nb=i;break y}V=0;c=x[o+2>>1];if((c|0)!=65535){continue}break}c=65535;nb=i}S=0;z:{if(Eb){l=a;X=0;break z}mb=65535;Fa=0;X=1;l=a;if((a|0)==65535){l=65535;break z}while(1){i=R+B(l,44)|0;if(w[i+5|0]!=(X|0)){mb=a;break z}X=0;l=x[i+2>>1];if((l|0)!=65535){continue}break}l=65535;mb=a}A:{if(Fb){r=b;break A}Q=65535;Ya=0;S=1;r=b;if((b|0)==65535){r=65535;break A}while(1){a=R+B(r,44)|0;if(w[a+5|0]!=(S|0)){Q=b;break A}S=0;r=x[a+2>>1];if((r|0)!=65535){continue}break}r=65535;Q=b}a=1;a=pb?a:!((k|0)!=65535&w[(R+B(k,44)|0)+5|0]>G>>>0);ma=C(qc*ba);I=C(tc*ja);W=C(id*ba);F=C(ld*ja);O=C(rc*_);H=C(uc*ia);J=C(jd*_);E=C(md*ia);L=C(sc*Z);A=C(vc*ha);p=C(kd*Z);j=C(nd*ha);M=C(xc*Y);g=C(yc*ga);N=C(rd*Y);f=C(sd*ga);i=pb|zb<<1;b=Eb<<2;B:{if(!((c|0)==65535|zb)){q=0;if(w[(R+B(c,44)|0)+5|0]>V>>>0){break B}}q=2}ma=C(I+ma);I=C(nc*U);W=C(F+W);F=C(fd*U);O=C(H+O);H=C(oc*ea);J=C(E+J);E=C(gd*ea);L=C(A+L);A=C(pc*da);p=C(j+p);j=C(hd*da);M=C(g+M);g=C(wc*ca);N=C(f+N);f=C(qd*ca);b=b|i;C:{if(!((l|0)==65535|Eb)){o=0;if(w[(R+B(l,44)|0)+5|0]>X>>>0){break C}}o=4}I=C(I+ma);F=C(F+W);H=C(H+O);E=C(E+J);A=C(A+L);j=C(j+p);g=C(g+M);f=C(f+N);s=b|s;D:{if(!((r|0)==65535|Fb)){i=0;if(w[(R+B(r,44)|0)+5|0]>S>>>0){break D}}i=8}b=T+zc|0;pa=C(F-I);qa=C(E-H);ra=C(j-A);sa=C(f-g);if((s|0)!=15){Fb=B(Ga,ed)+b|0;T=i|(o|(a|q));Ab=0;while(1){Xb=v[m+644>>2]+(x[R+B(Q,44)>>1]+Ya<<6)|0;fa=z[Xb+16>>2];j=C(fa-hg);ta=z[Xb+20>>2];g=C(ta-gg);f=C(C(ba*j)-C(ja*g));jb=(f>C(0)?f:C(-f))>2];f=C(ka-fg);j=C(C(ja*f)-C(U*j));kb=(j>C(0)?j:C(-j))C(0)?f:C(-f))>2]+(x[R+B(mb,44)>>1]+Fa<<6)|0;la=z[Ga+16>>2];A=C(la-kg);ma=z[Ga+20>>2];j=C(ma-jg);g=C(C(_*A)-C(ia*j));Ia=(g>C(0)?g:C(-g))>2];g=C(W-ig);A=C(C(ia*g)-C(ea*A));Ja=(A>C(0)?A:C(-A))C(0)?g:C(-g))>2]+(x[R+B(nb,44)>>1]+Ub<<6)|0;O=z[P+16>>2];E=C(O-ng);J=z[P+20>>2];A=C(J-mg);j=C(C(Z*E)-C(ha*A));aa=(j>C(0)?j:C(-j))>2];j=C(L-lg);E=C(C(ha*j)-C(da*E));M=(E>C(0)?E:C(-E))C(0)?j:C(-j))>2]+(x[R+B(lb,44)>>1]+Tb<<6)|0;p=z[s+16>>2];F=C(p-qg);H=z[s+20>>2];E=C(H-pg);j=C(C(Y*F)-C(ga*E));I=(j>C(0)?j:C(-j))>2];j=C(A-og);F=C(C(ga*j)-C(ca*F));F=(F>C(0)?F:C(-F))C(0)?j:C(-j))>2])+C(C(ba*z[Xb+36>>2])+C(U*z[Xb+40>>2])));N=C(C(ia*z[Ga+32>>2])+C(C(_*z[Ga+36>>2])+C(ea*z[Ga+40>>2])));I=C(C(ha*z[P+32>>2])+C(C(Z*z[P+36>>2])+C(da*z[P+40>>2])));F=C(C(ga*z[s+32>>2])+C(C(Y*z[s+36>>2])+C(ca*z[s+40>>2])));$=C(fa-Xf);Ha=C(la-_f);Ia=C(O-bg);Ja=C(p-eg);aa=C(ka-Vf);fa=C(W-Yf);ka=C(L-$f);la=C(A-cg);W=C(ta-Wf);O=C(ma-Zf);J=C(J-ag);L=C(H-dg);H=z[Xb+12>>2];E=z[Ga+12>>2];A=z[P+12>>2];j=z[s+12>>2];E:{if(Yb){p=C(C(ba*$)-C(ja*W));za=(p>C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))>2]=$;p=C(C(_*Ha)-C(ia*O));Da=(p>C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))>2]=aa;p=C(C(Z*Ia)-C(ha*J));ac=(p>C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))>2]=fa;p=C(C(Y*Ja)-C(ga*L));Ha=(p>C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))>2]=ta;ka=C(C(Le*za)+C(C(Me*Aa)+C(Ne*Ca)));z[b+124>>2]=ka;la=C(C(Te*Da)+C(C(Ue*_b)+C(Ve*$b)));z[b+120>>2]=la;ma=C(C($e*ac)+C(C(af*jb)+C(bf*kb)));z[b+116>>2]=ma;W=C(C(ne*Ha)+C(C(oe*Ia)+C(pe*Ja)));z[b+112>>2]=W;O=C(C(Oe*za)+C(C(Pe*Aa)+C(he*Ca)));z[b+108>>2]=O;J=C(C(We*Da)+C(C(Xe*_b)+C(ie*$b)));z[b+104>>2]=J;L=C(C(cf*ac)+C(C(df*jb)+C(je*kb)));z[b+100>>2]=L;p=C(C(qe*Ha)+C(C(re*Ia)+C(Jf*Ja)));z[b+96>>2]=p;f=C(f+C(td+C(ad*C(C(O*O)+C(C(ka*ka)+C($*$))))));g=C(g+C(ud+C(bd*C(C(J*J)+C(C(la*la)+C(aa*aa))))));na=C(na+C(vd+C(cd*C(C(L*L)+C(C(ma*ma)+C(fa*fa))))));oa=C(oa+C(pd+C(dd*C(C(p*p)+C(C(W*W)+C(ta*ta))))));ua=C(ua-C(C(gc*za)+C(C(hc*Aa)+C(bc*Ca))));va=C(va-C(C(ic*Da)+C(C(jc*_b)+C(cc*$b))));wa=C(wa-C(C(kc*ac)+C(C(lc*jb)+C(dc*kb))));ya=C(ya-C(C(ec*Ha)+C(C(fc*Ia)+C(mc*Ja))));break E}if(!Fc){break E}ua=C(ua-C(C(gc*C(C(ba*$)-C(ja*W)))+C(C(hc*C(C(ja*aa)-C(U*$)))+C(bc*C(C(U*W)-C(ba*aa))))));va=C(va-C(C(ic*C(C(_*Ha)-C(ia*O)))+C(C(jc*C(C(ia*fa)-C(ea*Ha)))+C(cc*C(C(ea*O)-C(_*fa))))));wa=C(wa-C(C(kc*C(C(Z*Ia)-C(ha*J)))+C(C(lc*C(C(ha*ka)-C(da*Ia)))+C(dc*C(C(da*J)-C(Z*ka))))));ya=C(ya-C(C(ec*C(C(Y*Ja)-C(ga*L)))+C(C(fc*C(C(ga*la)-C(ca*Ja)))+C(mc*C(C(ca*L)-C(Y*la))))))}z[b+32>>2]=wb;z[b+16>>2]=vb;z[b+12>>2]=Ac;z[b+8>>2]=Dc;z[b+4>>2]=rb;z[b>>2]=ub;z[b+44>>2]=Cc;z[b+40>>2]=qb;z[b+36>>2]=tb;z[b+28>>2]=Bc;z[b+24>>2]=Ec;z[b+20>>2]=sb;O=f>C(0)?C(C(1)/f):C(0);z[b+60>>2]=O;J=g>C(0)?C(C(1)/g):C(0);z[b+56>>2]=J;L=na>C(0)?C(C(1)/na):C(0);z[b+52>>2]=L;p=oa>C(0)?C(C(1)/oa):C(0);z[b+48>>2]=p;g=C(H-Lg);q=Sc>C(0)&e>ua&C(-ua)>C(g*d);f=C(od*g);f=C(O*C(-(f>2]=C((q?C(C(ua*Ua)*O):C(0))+H)-C(C(ua-M)*O);g=C(E-Mg);o=Rc>C(0)&e>va&C(-va)>C(g*d);f=C(od*g);f=C(J*C(-(f>2]=C((o?C(C(va*Va)*J):C(0))+E)-C(C(va-N)*J);g=C(A-Ng);i=Qc>C(0)&e>wa&C(-wa)>C(g*d);f=C(od*g);f=C(L*C(-(f>2]=C((i?C(C(wa*Wa)*L):C(0))+A)-C(C(wa-I)*L);g=C(j-Og);a=Pc>C(0)&e>ya&C(-ya)>C(g*d);f=C(od*g);f=C(p*C(-(f>2]=C((a?C(C(ya*Xa)*p):C(0))+f)-C(C(ya-F)*p);z[b+76>>2]=q?H:H>2]=o?E:E>2]=i?A:A>2]=a?f:f>2];g=z[P+28>>2];f=z[Ga+28>>2];a=(Ab<<4)+Fb|0;z[a+12>>2]=z[Xb+28>>2];z[a+8>>2]=f;z[a+4>>2]=g;z[a>>2]=j}F:{if(T&1){s=k;P=G;G=T;break F}P=G+1|0;s=65535;i=0;a=k;G:{if((a|0)==65535){break G}while(1){o=R+B(a,44)|0;i=w[o+5|0];if((i|0)==(P|0)){P=0;i=0;a=x[o+2>>1];if((a|0)!=65535){continue}break G}break}if((a|0)==65535){i=0;break G}i=i>>>0>P>>>0;s=a}Tb=G;lb=k;G=i^1|T}H:{if(T&2){a=c;i=V;break H}i=V+1|0;k=2;a=c;I:{if((c|0)==65535){a=65535;break I}J:{while(1){q=R+B(a,44)|0;o=w[q+5|0];if((o|0)!=(i|0)){break J}i=0;a=x[q+2>>1];if((a|0)!=65535){continue}break}a=65535;break I}if((a|0)==65535){a=65535;break I}k=i>>>0>>0?0:2}G=k|G;Ub=V;nb=c}K:{if(T&4){q=l;o=X;break K}o=X+1|0;V=4;q=l;L:{if((l|0)==65535){q=65535;break L}M:{while(1){k=R+B(q,44)|0;c=w[k+5|0];if((c|0)!=(o|0)){break M}o=0;q=x[k+2>>1];if((q|0)!=65535){continue}break}q=65535;break L}if((q|0)==65535){q=65535;break L}V=c>>>0>o>>>0?0:4}G=G|V;Fa=X;mb=l}b=b+ed|0;Ab=Ab+1|0;Ga=(T|0)!=15;if(!(T&8)){k=S+1|0;X=8;c=r;N:{if((c|0)==65535){c=65535;break N}O:{while(1){Q=R+B(c,44)|0;l=w[Q+5|0];if((l|0)!=(k|0)){break O}k=0;c=x[Q+2>>1];if((c|0)!=65535){continue}break}c=65535;break N}if((c|0)==65535){c=65535;break N}X=k>>>0>>0?0:8}Ya=S;Q=r;S=k;r=c;G=G|X}T=G;G=P;k=s;V=i;c=a;X=o;l=q;if(Ga){continue}break}}Fb=B(ge,104)+be|0;s=x[Fb+2>>1];Ga=B(fe,104)+be|0;q=x[Ga+2>>1];T=B(ee,104)+be|0;G=x[T+2>>1];S=B(de,104)+be|0;k=x[S+2>>1];l=0;l=pb?l:t[Gb+48|0]&1?0:k;r=0;r=zb?r:t[Vb+48|0]&1?0:G;Ab=0;M=z[Gb+44>>2];N=z[Vb+44>>2];I=z[Wb+44>>2];F=z[Zb+44>>2];H=z[Gb+56>>2];i=w[Gb+48|0];E=z[Vb+56>>2];c=w[Vb+48|0];g=z[Wb+56>>2];a=w[Wb+48|0];f=z[Zb+56>>2];o=w[Zb+48|0];b=(Ea?zc:0)+b|0;Ab=Eb?Ab:t[Wb+48|0]&1?0:q;t[n+14|0]=Ab<<1;t[n+13|0]=r<<1;t[n+12|0]=l<<1;t[n|0]=$g;A=(o&4)>>>2|0?(s|0)==2?C(.5):C(1):C(1);z[n+60>>2]=f*A;j=(a&4)>>>2|0?(q|0)==2?C(.5):C(1):C(1);z[n+56>>2]=g*j;g=(c&4)>>>2|0?(G|0)==2?C(.5):C(1):C(1);z[n+52>>2]=E*g;f=(i&4)>>>2|0?(k|0)==2?C(.5):C(1):C(1);z[n+48>>2]=H*f;z[n+44>>2]=F*A;z[n+40>>2]=I*j;z[n+36>>2]=N*g;z[n+32>>2]=M*f;pb=ob>>>0>>0?o&1?0:s:0;t[n+15|0]=pb<<1;a=pb>>>0>>0?Ab:pb;a=a>>>0>>0?r:a;zb=a>>>0>>0?l:a;t[n+2|0]=zb<<1;P:{if(!zb){n=b;break P}k=v[m+664>>2];o=v[m+488>>2];i=v[m+312>>2];c=v[m+136>>2];a=v[yb+12>>2];v[b+8>>2]=v[yb+8>>2];v[b+12>>2]=a;a=v[yb+4>>2];v[b>>2]=v[yb>>2];v[b+4>>2]=a;v[b+16>>2]=c+B(zg,104);v[b+20>>2]=i+B(Ag,104);v[b+24>>2]=o+B(Bg,104);v[b+28>>2]=k+B(Cg,104);ua=C(1);f=C(_g-C(ga*sa));j=C(Zg-C(Y*sa));g=C(Yg-C(ca*sa));c=C(C(f*f)+C(C(j*j)+C(g*g)))>C(9999999747378752e-20);a=(ga>C(0)?ga:C(-ga))>2]=La;f=C(Xg-C(ha*ra));j=C(Ug-C(Z*ra));g=C(Rg-C(da*ra));c=C(C(f*f)+C(C(j*j)+C(g*g)))>C(9999999747378752e-20);a=(ha>C(0)?ha:C(-ha))>2]=Ma;f=C(Wg-C(ia*qa));j=C(Tg-C(_*qa));g=C(Qg-C(ea*qa));c=C(C(f*f)+C(C(j*j)+C(g*g)))>C(9999999747378752e-20);a=(ia>C(0)?ia:C(-ia))>2]=Na;g=C(Vg-C(ja*pa));j=C(Sg-C(ba*pa));f=C(Pg-C(U*pa));c=C(C(g*g)+C(C(j*j)+C(f*f)))>C(9999999747378752e-20);a=(ja>C(0)?ja:C(-ja))>2]=Oa;Pa=C(L*p);z[b+64>>2]=Pa;Qa=C(N*I);z[b+68>>2]=Qa;Ra=C(H*E);z[b+72>>2]=Ra;Sa=C(f*j);z[b+76>>2]=Sa;f=C(J*p);z[b+96>>2]=f;g=C(M*I);z[b+100>>2]=g;na=C(F*E);z[b+104>>2]=na;oa=C(A*j);z[b+108>>2]=oa;Za=C(C(ja*Sa)-C(ba*Oa));z[b+124>>2]=Za;_a=C(C(ia*Ra)-C(_*Na));z[b+120>>2]=_a;$a=C(C(ha*Qa)-C(Z*Ma));z[b+116>>2]=$a;ab=C(C(ga*Pa)-C(Y*La));z[b+112>>2]=ab;bb=C(C(U*Oa)-C(ja*oa));z[b+92>>2]=bb;cb=C(C(ea*Na)-C(ia*na));z[b+88>>2]=cb;db=C(C(da*Ma)-C(ha*g));z[b+84>>2]=db;eb=C(C(ca*La)-C(ga*f));z[b+80>>2]=eb;fb=C(C(ba*oa)-C(U*Sa));z[b+60>>2]=fb;gb=C(C(_*na)-C(ea*Ra));z[b+56>>2]=gb;hb=C(C(Z*g)-C(da*Qa));z[b+52>>2]=hb;ib=C(C(Y*f)-C(ca*Pa));z[b+48>>2]=ib;a=0;c=b+128|0;b=w[n+2|0]<<4;n=I9(c,0,b)+b|0;k=Gb+32|0;P=0;i=0;o=0;c=0;va=C(1);wa=C(1);ya=C(1);while(1){V=a>>>0>>0;P=V?a:P;b=Fb+B(P,12)|0;U=z[b+72>>2];pa=z[b- -64>>2];qa=z[b+68>>2];ka=C(C(Gd*U)+C(C(Fd*pa)+C(Ed*qa)));M=C(Gd*ka);ra=z[b+48>>2];sa=z[b+40>>2];qb=z[b+44>>2];la=C(C(Sd*ra)+C(C(Rd*sa)+C(Qd*qb)));j=C(Sd*la);X=a>>>0>>0;i=X?a:i;b=Ga+B(i,12)|0;za=z[b+72>>2];Aa=z[b- -64>>2];Ca=z[b+68>>2];ma=C(C(Jd*za)+C(C(Id*Aa)+C(Hd*Ca)));N=C(Jd*ma);Da=z[b+48>>2];rb=z[b+40>>2];sb=z[b+44>>2];W=C(C(Vd*Da)+C(C(Ud*rb)+C(Td*sb)));I=C(Vd*W);s=a>>>0>>0;o=s?a:o;b=T+B(o,12)|0;tb=z[b+72>>2];ub=z[b- -64>>2];vb=z[b+68>>2];O=C(C(Md*tb)+C(C(Ld*ub)+C(Kd*vb)));F=C(Md*O);wb=z[b+48>>2];$=z[b+40>>2];aa=z[b+44>>2];J=C(C(Yd*wb)+C(C(Xd*$)+C(Wd*aa)));H=C(Yd*J);q=a>>>0>>0;c=q?a:c;b=S+B(c,12)|0;Ua=z[b+72>>2];Va=z[b- -64>>2];Wa=z[b+68>>2];L=C(C(Pd*Ua)+C(C(Od*Va)+C(Nd*Wa)));E=C(Pd*L);Xa=z[b+48>>2];fa=z[b+40>>2];ta=z[b+44>>2];p=C(C($d*Xa)+C(C(_d*fa)+C(Zd*ta)));A=C($d*p);Eb=x[(ce+yg|0)+(P<<1)>>1];Oc=x[(ce+xg|0)+(i<<1)>>1];zc=x[(ce+wg|0)+(o<<1)>>1];b=k;G=x[(ce+vg|0)+(c<<1)>>1];if((G|0)!=65535){b=(v[m+116>>2]+(G<<6)|0)+32|0}_b=z[b+8>>2];$b=z[b+4>>2];ac=z[b>>2];b=k;ua=V?ua:C(0);va=X?va:C(0);wa=s?wa:C(0);ya=q?ya:C(0);b=(zc|0)!=65535?(v[m+292>>2]+(zc<<6)|0)+32|0:b;jb=z[b+8>>2];kb=z[b+4>>2];Ha=z[b>>2];b=k;oa=C(oa*ua);na=C(na*va);g=C(g*wa);f=C(f*ya);Sa=C(Sa*ua);Ra=C(Ra*va);Qa=C(Qa*wa);Pa=C(Pa*ya);Oa=C(Oa*ua);Na=C(Na*va);Ma=C(Ma*wa);La=C(La*ya);b=(Oc|0)!=65535?(v[m+468>>2]+(Oc<<6)|0)+32|0:b;Ia=z[b+8>>2];Ja=z[b+4>>2];Pc=z[b>>2];b=k;j=C(C(C(Kc*C(C(Rd*qb)+C(sa*qh)))+C(Qf*ra))+j);Tc=C(j+j);j=C(C(C(Gc*C(C(Fd*qa)+C(pa*eh)))+C(Mf*U))+M);Hb=C(j+j);Qc=C(C(fg+Tc)-C(Vf+Hb));j=C(C(C(Lc*C(C(Ud*sb)+C(rb*th)))+C(Rf*Da))+I);Uc=C(j+j);j=C(C(C(Hc*C(C(Id*Ca)+C(Aa*hh)))+C(Nf*za))+N);Ib=C(j+j);Rc=C(C(ig+Uc)-C(Yf+Ib));j=C(C(C(Mc*C(C(Xd*aa)+C($*wh)))+C(Sf*wb))+H);Vc=C(j+j);j=C(C(C(Ic*C(C(Ld*vb)+C(ub*kh)))+C(Of*tb))+F);Jb=C(j+j);Sc=C(C(lg+Vc)-C($f+Jb));j=C(C(C(Nc*C(C(_d*ta)+C(fa*zh)))+C(Tf*Xa))+A);Wc=C(j+j);j=C(C(C(Jc*C(C(Od*Wa)+C(Va*nh)))+C(Pf*Ua))+E);Kb=C(j+j);Ac=C(C(og+Wc)-C(cg+Kb));j=C(C(Qd*la)+C(C(Qf*qb)+C(Kc*C(C(Sd*sa)+C(ra*rh)))));Xc=C(j+j);j=C(C(Ed*ka)+C(C(Mf*qa)+C(Gc*C(C(Gd*pa)+C(U*fh)))));Lb=C(j+j);Bc=C(C(gg+Xc)-C(Wf+Lb));j=C(C(Td*W)+C(C(Rf*sb)+C(Lc*C(C(Vd*rb)+C(Da*uh)))));Yc=C(j+j);j=C(C(Hd*ma)+C(C(Nf*Ca)+C(Hc*C(C(Jd*Aa)+C(za*ih)))));Mb=C(j+j);Cc=C(C(jg+Yc)-C(Zf+Mb));j=C(C(Wd*J)+C(C(Sf*aa)+C(Mc*C(C(Yd*$)+C(wb*xh)))));Zc=C(j+j);j=C(C(Kd*O)+C(C(Of*vb)+C(Ic*C(C(Md*ub)+C(tb*lh)))));Nb=C(j+j);Dc=C(C(mg+Zc)-C(ag+Nb));j=C(C(Zd*p)+C(C(Tf*ta)+C(Nc*C(C($d*fa)+C(Xa*Ah)))));_c=C(j+j);j=C(C(Nd*L)+C(C(Pf*Wa)+C(Jc*C(C(Pd*Va)+C(Ua*oh)))));Ob=C(j+j);Ec=C(C(pg+_c)-C(dg+Ob));j=C(C(Rd*la)+C(C(Qf*sa)+C(Kc*C(C(Qd*ra)+C(qb*sh)))));ga=C(j+j);j=C(C(Fd*ka)+C(C(Mf*pa)+C(Gc*C(C(Ed*U)+C(qa*gh)))));Pb=C(j+j);qb=C(C(hg+ga)-C(Xf+Pb));j=C(C(Ud*W)+C(C(Rf*rb)+C(Lc*C(C(Td*Da)+C(sb*vh)))));ha=C(j+j);j=C(C(Id*ma)+C(C(Nf*Aa)+C(Hc*C(C(Hd*za)+C(Ca*jh)))));Qb=C(j+j);rb=C(C(kg+ha)-C(_f+Qb));j=C(C(Xd*J)+C(C(Sf*$)+C(Mc*C(C(Wd*wb)+C(aa*yh)))));ia=C(j+j);j=C(C(Ld*O)+C(C(Of*ub)+C(Ic*C(C(Kd*tb)+C(vb*mh)))));Rb=C(j+j);sb=C(C(ng+ia)-C(bg+Rb));j=C(C(_d*p)+C(C(Tf*fa)+C(Nc*C(C(Zd*Xa)+C(ta*Bh)))));ja=C(j+j);j=C(C(Od*L)+C(C(Pf*Va)+C(Jc*C(C(Nd*Ua)+C(Wa*ph)))));Sb=C(j+j);tb=C(C(qg+ja)-C(eg+Sb));Za=C(Za*ua);_a=C(_a*va);$a=C($a*wa);ab=C(ab*ya);bb=C(bb*ua);cb=C(cb*va);db=C(db*wa);eb=C(eb*ya);fb=C(fb*ua);gb=C(gb*va);hb=C(hb*wa);ib=C(ib*ya);j=C(C(Sa*ga)-C(Oa*Xc));O=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]+(Eb<<6)|0)+32|0:b;ub=z[b+8>>2];vb=z[b+4>>2];wb=z[b>>2];Q:{if(Yb){j=C(C(Sa*Pb)-C(Oa*Lb));ca=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=O;j=C(C(Ra*Qb)-C(Na*Mb));U=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=J;j=C(C(Qa*Rb)-C(Ma*Nb));ra=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=L;j=C(C(Pa*Sb)-C(La*Ob));Aa=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=p;M=C(C(Le*ca)+C(C(Me*da)+C(Ne*ea)));z[n+124>>2]=M;N=C(C(Te*U)+C(C(Ue*pa)+C(Ve*qa)));z[n+120>>2]=N;I=C(C($e*ra)+C(C(af*sa)+C(bf*za)));z[n+116>>2]=I;F=C(C(ne*Aa)+C(C(oe*Ca)+C(pe*Da)));z[n+112>>2]=F;H=C(C(Oe*ca)+C(C(Pe*da)+C(he*ea)));z[n+108>>2]=H;E=C(C(We*U)+C(C(Xe*pa)+C(ie*qa)));z[n+104>>2]=E;A=C(C(cf*ra)+C(C(df*sa)+C(je*za)));z[n+100>>2]=A;j=C(C(qe*Aa)+C(C(re*Ca)+C(Jf*Da)));z[n+96>>2]=j;Y=C(Y+C(td+C(ad*C(C(O*O)+C(C(M*M)+C(H*H))))));Z=C(Z+C(ud+C(bd*C(C(J*J)+C(C(N*N)+C(E*E))))));_=C(_+C(vd+C(cd*C(C(L*L)+C(C(I*I)+C(A*A))))));ba=C(ba+C(pd+C(dd*C(C(p*p)+C(C(F*F)+C(j*j))))));xb=C(xb-C(C(gc*ca)+C(C(hc*da)+C(C(C(nc*oa)+C(C(qc*Sa)+C(tc*Oa)))+C(bc*ea)))));Bb=C(Bb-C(C(ic*U)+C(C(jc*pa)+C(C(C(oc*na)+C(C(rc*Ra)+C(uc*Na)))+C(cc*qa)))));Cb=C(Cb-C(C(kc*ra)+C(C(lc*sa)+C(C(C(pc*g)+C(C(sc*Qa)+C(vc*Ma)))+C(dc*za)))));Db=C(Db-C(C(ec*Aa)+C(C(fc*Ca)+C(C(C(wc*f)+C(C(xc*Pa)+C(yc*La)))+C(mc*Da)))));break Q}if(!Fc){break Q}xb=C(xb-C(C(gc*C(C(Sa*Pb)-C(Oa*Lb)))+C(C(hc*C(C(Oa*Hb)-C(oa*Pb)))+C(C(C(nc*oa)+C(C(qc*Sa)+C(tc*Oa)))+C(bc*C(C(oa*Lb)-C(Sa*Hb)))))));Bb=C(Bb-C(C(ic*C(C(Ra*Qb)-C(Na*Mb)))+C(C(jc*C(C(Na*Ib)-C(na*Qb)))+C(C(C(oc*na)+C(C(rc*Ra)+C(uc*Na)))+C(cc*C(C(na*Mb)-C(Ra*Ib)))))));Cb=C(Cb-C(C(kc*C(C(Qa*Rb)-C(Ma*Nb)))+C(C(lc*C(C(Ma*Jb)-C(g*Rb)))+C(C(C(pc*g)+C(C(sc*Qa)+C(vc*Ma)))+C(dc*C(C(g*Nb)-C(Qa*Jb)))))));Db=C(Db-C(C(ec*C(C(Pa*Sb)-C(La*Ob)))+C(C(fc*C(C(La*Kb)-C(f*Sb)))+C(C(C(wc*f)+C(C(xc*Pa)+C(yc*La)))+C(mc*C(C(f*Ob)-C(Pa*Kb)))))))}b=n+ed|0;z[n+32>>2]=la;z[n+16>>2]=ma;z[n+12>>2]=Ua;z[n+8>>2]=Xa;z[n+4>>2]=ka;z[n>>2]=W;z[n+44>>2]=$;z[n+40>>2]=Va;z[n+36>>2]=fa;z[n+28>>2]=aa;z[n+24>>2]=Wa;z[n+20>>2]=ta;M=C(ua*(Y>C(0)?C(C(.800000011920929)/Y):C(0)));z[n+76>>2]=M;N=C(va*(Z>C(0)?C(C(.800000011920929)/Z):C(0)));z[n+72>>2]=N;I=C(wa*(_>C(0)?C(C(.800000011920929)/_):C(0)));z[n+68>>2]=I;F=C(ya*(ba>C(0)?C(C(.800000011920929)/ba):C(0)));z[n+64>>2]=F;H=C(C(C(oa*ub)+C(C(Oa*wb)+C(Sa*vb)))-xb);z[n+92>>2]=M*C(-H);E=C(C(C(na*Ia)+C(C(Na*Pc)+C(Ra*Ja)))-Bb);z[n+88>>2]=N*C(-E);A=C(C(C(g*jb)+C(C(Ma*Ha)+C(Qa*kb)))-Cb);z[n+84>>2]=I*C(-A);j=C(C(C(f*_b)+C(C(La*ac)+C(Pa*$b)))-Db);z[n+80>>2]=F*C(-j);z[n+60>>2]=C(C(C(C(oa*Qc)+C(C(Oa*qb)+C(Sa*Bc)))*d)-H)*M;z[n+56>>2]=C(C(C(C(na*Rc)+C(C(Na*rb)+C(Ra*Cc)))*d)-E)*N;z[n+52>>2]=C(C(C(C(g*Sc)+C(C(Ma*sb)+C(Qa*Dc)))*d)-A)*I;z[n+48>>2]=C(C(C(C(f*Ac)+C(C(La*tb)+C(Pa*Ec)))*d)-j)*F;j=C(C(bb*ga)-C(fb*Xc));O=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=O;j=C(C(cb*Qb)-C(gb*Mb));U=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=J;j=C(C(db*Rb)-C(hb*Nb));ra=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=L;j=C(C(eb*Sb)-C(ib*Ob));Aa=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=p;M=C(C(Le*ca)+C(C(Me*da)+C(Ne*ea)));z[b+124>>2]=M;N=C(C(Te*U)+C(C(Ue*pa)+C(Ve*qa)));z[b+120>>2]=N;I=C(C($e*ra)+C(C(af*sa)+C(bf*za)));z[b+116>>2]=I;F=C(C(ne*Aa)+C(C(oe*Ca)+C(pe*Da)));z[b+112>>2]=F;H=C(C(Oe*ca)+C(C(Pe*da)+C(he*ea)));z[b+108>>2]=H;E=C(C(We*U)+C(C(Xe*pa)+C(ie*qa)));z[b+104>>2]=E;A=C(C(cf*ra)+C(C(df*sa)+C(je*za)));z[b+100>>2]=A;j=C(C(qe*Aa)+C(C(re*Ca)+C(Jf*Da)));z[b+96>>2]=j;Bb=C(Bb+C(td+C(ad*C(C(O*O)+C(C(M*M)+C(H*H))))));Cb=C(Cb+C(ud+C(bd*C(C(J*J)+C(C(N*N)+C(E*E))))));Db=C(Db+C(vd+C(cd*C(C(L*L)+C(C(I*I)+C(A*A))))));ba=C(ba+C(pd+C(dd*C(C(p*p)+C(C(F*F)+C(j*j))))));xb=C(xb-C(C(gc*ca)+C(C(hc*da)+C(C(C(nc*Za)+C(C(qc*bb)+C(tc*fb)))+C(bc*ea)))));Y=C(Y-C(C(ic*U)+C(C(jc*pa)+C(C(C(oc*_a)+C(C(rc*cb)+C(uc*gb)))+C(cc*qa)))));Z=C(Z-C(C(kc*ra)+C(C(lc*sa)+C(C(C(pc*$a)+C(C(sc*db)+C(vc*hb)))+C(dc*za)))));_=C(_-C(C(ec*Aa)+C(C(fc*Ca)+C(C(C(wc*ab)+C(C(xc*eb)+C(yc*ib)))+C(mc*Da)))));break R}if(!Fc){break R}xb=C(xb-C(C(gc*C(C(bb*Pb)-C(fb*Lb)))+C(C(hc*C(C(fb*Hb)-C(Za*Pb)))+C(C(C(nc*Za)+C(C(qc*bb)+C(tc*fb)))+C(bc*C(C(Za*Lb)-C(bb*Hb)))))));Y=C(Y-C(C(ic*C(C(cb*Qb)-C(gb*Mb)))+C(C(jc*C(C(gb*Ib)-C(_a*Qb)))+C(C(C(oc*_a)+C(C(rc*cb)+C(uc*gb)))+C(cc*C(C(_a*Mb)-C(cb*Ib)))))));Z=C(Z-C(C(kc*C(C(db*Rb)-C(hb*Nb)))+C(C(lc*C(C(hb*Jb)-C($a*Rb)))+C(C(C(pc*$a)+C(C(sc*db)+C(vc*hb)))+C(dc*C(C($a*Nb)-C(db*Jb)))))));_=C(_-C(C(ec*C(C(eb*Sb)-C(ib*Ob)))+C(C(fc*C(C(ib*Kb)-C(ab*Sb)))+C(C(C(wc*ab)+C(C(xc*eb)+C(yc*ib)))+C(mc*C(C(ab*Ob)-C(eb*Kb)))))))}n=b+ed|0;z[b+32>>2]=la;z[b+16>>2]=ma;z[b+12>>2]=Ua;z[b+8>>2]=Xa;z[b+4>>2]=ka;z[b>>2]=W;z[b+44>>2]=$;z[b+40>>2]=Va;z[b+36>>2]=fa;z[b+28>>2]=aa;z[b+24>>2]=Wa;z[b+20>>2]=ta;M=C(ua*(Bb>C(0)?C(C(.800000011920929)/Bb):C(0)));z[b+76>>2]=M;N=C(va*(Cb>C(0)?C(C(.800000011920929)/Cb):C(0)));z[b+72>>2]=N;I=C(wa*(Db>C(0)?C(C(.800000011920929)/Db):C(0)));z[b+68>>2]=I;F=C(ya*(ba>C(0)?C(C(.800000011920929)/ba):C(0)));z[b+64>>2]=F;H=C(C(C(Za*ub)+C(C(fb*wb)+C(bb*vb)))-xb);z[b+92>>2]=M*C(-H);E=C(C(C(_a*Ia)+C(C(gb*Pc)+C(cb*Ja)))-Y);z[b+88>>2]=N*C(-E);A=C(C(C($a*jb)+C(C(hb*Ha)+C(db*kb)))-Z);z[b+84>>2]=I*C(-A);j=C(C(C(ab*_b)+C(C(ib*ac)+C(eb*$b)))-_);z[b+80>>2]=F*C(-j);z[b+60>>2]=C(C(C(C(Za*Qc)+C(C(fb*qb)+C(bb*Bc)))*d)-H)*M;z[b+56>>2]=C(C(C(C(_a*Rc)+C(C(gb*rb)+C(cb*Cc)))*d)-E)*N;z[b+52>>2]=C(C(C(C($a*Sc)+C(C(hb*sb)+C(db*Dc)))*d)-A)*I;z[b+48>>2]=C(C(C(C(ab*Ac)+C(C(ib*tb)+C(eb*Ec)))*d)-j)*F;a=a+1|0;if((zb|0)!=(a|0)){continue}break}Cg=Cg+1|0;Bg=Bg+1|0;Ag=Ag+1|0;zg=zg+1|0}ob=ob+1|0;if((Uf|0)!=(ob|0)){continue}break}}xa=yb+16|0;v[Ta+$c>>2]=0;r=2}xa=D+160|0}xa=Ka+32|0;return r|0}function Z2(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,A=0,D=0,E=0,F=0,G=0,H=C(0),I=C(0),J=0,L=0,M=0,N=C(0),O=C(0),P=0,Q=0,R=C(0),S=0,T=0,U=C(0),V=0,W=0,X=0,Y=C(0),Z=C(0),_=0,$=0,aa=0,ba=0,ca=C(0),da=C(0),ea=C(0),fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=C(0),qa=C(0),ra=0,sa=0,ta=0,ua=0,va=C(0),wa=0,ya=0,za=0,Ca=0,Da=C(0),Ea=C(0),Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0;j=xa-160|0;wa=j;xa=j;q=v[b+8>>2];k=j-(B(q,12)+15&-16)|0;xa=k;a:{if(!q){break a}l=v[b>>2];m=q-1|0;s=v[b+4>>2];r=q&3;b:{if(!r){n=k;break b}n=k;while(1){j=w[s+4|0]|w[s+5|0]<<8|(w[s+6|0]<<16|w[s+7|0]<<24);o=w[s|0]|w[s+1|0]<<8|(w[s+2|0]<<16|w[s+3|0]<<24);t[n|0]=o;t[n+1|0]=o>>>8;t[n+2|0]=o>>>16;t[n+3|0]=o>>>24;t[n+4|0]=j;t[n+5|0]=j>>>8;t[n+6|0]=j>>>16;t[n+7|0]=j>>>24;j=w[s+8|0]|w[s+9|0]<<8|(w[s+10|0]<<16|w[s+11|0]<<24);t[n+8|0]=j;t[n+9|0]=j>>>8;t[n+10|0]=j>>>16;t[n+11|0]=j>>>24;s=l+s|0;n=n+12|0;q=q-1|0;L=L+1|0;if((r|0)!=(L|0)){continue}break}}if(m>>>0<3){break a}while(1){j=w[s+4|0]|w[s+5|0]<<8|(w[s+6|0]<<16|w[s+7|0]<<24);o=w[s|0]|w[s+1|0]<<8|(w[s+2|0]<<16|w[s+3|0]<<24);t[n|0]=o;t[n+1|0]=o>>>8;t[n+2|0]=o>>>16;t[n+3|0]=o>>>24;t[n+4|0]=j;t[n+5|0]=j>>>8;t[n+6|0]=j>>>16;t[n+7|0]=j>>>24;j=w[s+8|0]|w[s+9|0]<<8|(w[s+10|0]<<16|w[s+11|0]<<24);t[n+8|0]=j;t[n+9|0]=j>>>8;t[n+10|0]=j>>>16;t[n+11|0]=j>>>24;j=l+s|0;o=w[j+8|0]|w[j+9|0]<<8|(w[j+10|0]<<16|w[j+11|0]<<24);t[n+20|0]=o;t[n+21|0]=o>>>8;t[n+22|0]=o>>>16;t[n+23|0]=o>>>24;o=w[j+4|0]|w[j+5|0]<<8|(w[j+6|0]<<16|w[j+7|0]<<24);m=w[j|0]|w[j+1|0]<<8|(w[j+2|0]<<16|w[j+3|0]<<24);t[n+12|0]=m;t[n+13|0]=m>>>8;t[n+14|0]=m>>>16;t[n+15|0]=m>>>24;t[n+16|0]=o;t[n+17|0]=o>>>8;t[n+18|0]=o>>>16;t[n+19|0]=o>>>24;j=j+l|0;o=w[j+8|0]|w[j+9|0]<<8|(w[j+10|0]<<16|w[j+11|0]<<24);t[n+32|0]=o;t[n+33|0]=o>>>8;t[n+34|0]=o>>>16;t[n+35|0]=o>>>24;o=w[j+4|0]|w[j+5|0]<<8|(w[j+6|0]<<16|w[j+7|0]<<24);m=w[j|0]|w[j+1|0]<<8|(w[j+2|0]<<16|w[j+3|0]<<24);t[n+24|0]=m;t[n+25|0]=m>>>8;t[n+26|0]=m>>>16;t[n+27|0]=m>>>24;t[n+28|0]=o;t[n+29|0]=o>>>8;t[n+30|0]=o>>>16;t[n+31|0]=o>>>24;j=j+l|0;o=w[j+4|0]|w[j+5|0]<<8|(w[j+6|0]<<16|w[j+7|0]<<24);m=w[j|0]|w[j+1|0]<<8|(w[j+2|0]<<16|w[j+3|0]<<24);t[n+36|0]=m;t[n+37|0]=m>>>8;t[n+38|0]=m>>>16;t[n+39|0]=m>>>24;t[n+40|0]=o;t[n+41|0]=o>>>8;t[n+42|0]=o>>>16;t[n+43|0]=o>>>24;o=w[j+8|0]|w[j+9|0]<<8|(w[j+10|0]<<16|w[j+11|0]<<24);t[n+44|0]=o;t[n+45|0]=o>>>8;t[n+46|0]=o>>>16;t[n+47|0]=o>>>24;n=n+48|0;s=j+l|0;q=q-4|0;if(q){continue}break}}q=v[b+20>>2];j=k-(B(q,12)+15&-16)|0;xa=j;c:{if(w[b+24|0]&2){n=B(q,3);if((n|0)<=0){break c}q=j+(n<<2)|0;n=v[b+16>>2];l=v[b+12>>2];s=j;while(1){v[s>>2]=x[n>>1];v[s+4>>2]=x[n+2>>1];v[s+8>>2]=x[n+4>>1];n=n+l|0;s=s+12|0;if(q>>>0>s>>>0){continue}break}break c}if(!q){break c}o=v[b+12>>2];r=q-1|0;s=v[b+16>>2];A=q&3;d:{if(!A){n=j;break d}L=0;n=j;while(1){l=w[s+4|0]|w[s+5|0]<<8|(w[s+6|0]<<16|w[s+7|0]<<24);m=w[s|0]|w[s+1|0]<<8|(w[s+2|0]<<16|w[s+3|0]<<24);t[n|0]=m;t[n+1|0]=m>>>8;t[n+2|0]=m>>>16;t[n+3|0]=m>>>24;t[n+4|0]=l;t[n+5|0]=l>>>8;t[n+6|0]=l>>>16;t[n+7|0]=l>>>24;l=w[s+8|0]|w[s+9|0]<<8|(w[s+10|0]<<16|w[s+11|0]<<24);t[n+8|0]=l;t[n+9|0]=l>>>8;t[n+10|0]=l>>>16;t[n+11|0]=l>>>24;s=o+s|0;n=n+12|0;q=q-1|0;L=L+1|0;if((A|0)!=(L|0)){continue}break}}if(r>>>0<3){break c}while(1){l=w[s+4|0]|w[s+5|0]<<8|(w[s+6|0]<<16|w[s+7|0]<<24);m=w[s|0]|w[s+1|0]<<8|(w[s+2|0]<<16|w[s+3|0]<<24);t[n|0]=m;t[n+1|0]=m>>>8;t[n+2|0]=m>>>16;t[n+3|0]=m>>>24;t[n+4|0]=l;t[n+5|0]=l>>>8;t[n+6|0]=l>>>16;t[n+7|0]=l>>>24;l=w[s+8|0]|w[s+9|0]<<8|(w[s+10|0]<<16|w[s+11|0]<<24);t[n+8|0]=l;t[n+9|0]=l>>>8;t[n+10|0]=l>>>16;t[n+11|0]=l>>>24;l=o+s|0;m=w[l+8|0]|w[l+9|0]<<8|(w[l+10|0]<<16|w[l+11|0]<<24);t[n+20|0]=m;t[n+21|0]=m>>>8;t[n+22|0]=m>>>16;t[n+23|0]=m>>>24;m=w[l+4|0]|w[l+5|0]<<8|(w[l+6|0]<<16|w[l+7|0]<<24);r=w[l|0]|w[l+1|0]<<8|(w[l+2|0]<<16|w[l+3|0]<<24);t[n+12|0]=r;t[n+13|0]=r>>>8;t[n+14|0]=r>>>16;t[n+15|0]=r>>>24;t[n+16|0]=m;t[n+17|0]=m>>>8;t[n+18|0]=m>>>16;t[n+19|0]=m>>>24;l=l+o|0;m=w[l+8|0]|w[l+9|0]<<8|(w[l+10|0]<<16|w[l+11|0]<<24);t[n+32|0]=m;t[n+33|0]=m>>>8;t[n+34|0]=m>>>16;t[n+35|0]=m>>>24;m=w[l+4|0]|w[l+5|0]<<8|(w[l+6|0]<<16|w[l+7|0]<<24);r=w[l|0]|w[l+1|0]<<8|(w[l+2|0]<<16|w[l+3|0]<<24);t[n+24|0]=r;t[n+25|0]=r>>>8;t[n+26|0]=r>>>16;t[n+27|0]=r>>>24;t[n+28|0]=m;t[n+29|0]=m>>>8;t[n+30|0]=m>>>16;t[n+31|0]=m>>>24;l=l+o|0;m=w[l+4|0]|w[l+5|0]<<8|(w[l+6|0]<<16|w[l+7|0]<<24);r=w[l|0]|w[l+1|0]<<8|(w[l+2|0]<<16|w[l+3|0]<<24);t[n+36|0]=r;t[n+37|0]=r>>>8;t[n+38|0]=r>>>16;t[n+39|0]=r>>>24;t[n+40|0]=m;t[n+41|0]=m>>>8;t[n+42|0]=m>>>16;t[n+43|0]=m>>>24;m=w[l+8|0]|w[l+9|0]<<8|(w[l+10|0]<<16|w[l+11|0]<<24);t[n+44|0]=m;t[n+45|0]=m>>>8;t[n+46|0]=m>>>16;t[n+47|0]=m>>>24;n=n+48|0;s=l+o|0;q=q-4|0;if(q){continue}break}}D=d4(wa+8|0,w[a+18|0]);la=xa-32|0;xa=la;v[D>>2]=0;v[D+4>>2]=0;v[D+16>>2]=0;v[D+8>>2]=0;v[D+12>>2]=0;v[D+36>>2]=v[b+20>>2];a=v[b+8>>2];t[v[D+28>>2]+38|0]=a;b=v[37696];a=Ba[v[v[b+12>>2]+8>>2]](b+12|0,B(a&255,12)|1,24422,8968,995)|0;v[D>>2]=a;H9(a,k,B(w[v[D+28>>2]+38|0],12));b=D+36|0;n=0;s=v[D+36>>2];k=(Fa=-1,Ga=Raa(s,0,12,0),Ha=Aa,Ha?Fa:Ga);if(k){a=v[37696];n=Ba[v[v[a>>2]+20>>2]](a)|0?47365:63804;n=Ba[v[v[a+12>>2]+8>>2]](a+12|0,k,n,8968,998)|0;s=v[b>>2]}v[D+40>>2]=n;e:{if(!s){s=0;break e}while(1){k=B(aa,12);a=k+n|0;k=j+k|0;v[a>>2]=v[k>>2];v[a+4>>2]=v[k+4>>2];v[a+8>>2]=v[k+8>>2];s=v[b>>2];aa=aa+1|0;if(s>>>0>aa>>>0){continue}break}}k=w[v[D+28>>2]+38|0];q=v[D>>2];a=i3(la+8|0,k,q,s,n,C(0));j=v[a+4>>2];if(j){k=v[a>>2];v[b>>2]=j;l=H9(q,v[a+8>>2],B(k,12));q=v[a+12>>2];aa=0;if((j|0)!=1){r=j&-2;while(1){o=B(aa,12);m=o+n|0;A=o+q|0;v[m>>2]=v[A>>2];v[m+4>>2]=v[q+(o|4)>>2];v[m+8>>2]=v[A+8>>2];m=B(aa|1,12);o=m+n|0;m=m+q|0;v[o>>2]=v[m>>2];v[o+4>>2]=v[m+4>>2];v[o+8>>2]=v[m+8>>2];aa=aa+2|0;ka=ka+2|0;if((r|0)!=(ka|0)){continue}break}}if(j&1){o=B(aa,12);j=o+n|0;q=o+q|0;v[j>>2]=v[q>>2];v[j+4>>2]=v[q+4>>2];v[j+8>>2]=v[q+8>>2]}h4(b,n,1);i4(k,l,v[b>>2],n,1);i4(k,l,v[b>>2],n,1);h4(b,n,1)}j3(a);t[v[D+28>>2]+38|0]=k;a=v[D>>2];v[la+8>>2]=v[D+36>>2];aa=0;f:{if(!h4(la+8|0,n,0)){break f}if(!i4(k&255,a,v[la+8>>2],n,0)){break f}n=0;s=0;L=0;ka=0;J=xa+-64|0;xa=J;t[v[D+28>>2]+39|0]=0;a=v[D+8>>2];if(a){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}v[D+8>>2]=0;a=v[D+16>>2];if(a){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}v[D+16>>2]=0;a=v[D+4>>2];if(a){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}v[D+4>>2]=0;v[J+56>>2]=0;v[J+48>>2]=0;v[J+52>>2]=0;v[J+40>>2]=0;v[J+32>>2]=0;v[J+36>>2]=0;v[J+24>>2]=0;v[J+16>>2]=0;v[J+20>>2]=0;ha=J+12|0;V=J+48|0;S=J+32|0;M=J+16|0;b=0;j=0;q=0;m=0;p=xa-112|0;xa=p;W=v[D+40>>2];ra=w[v[D+28>>2]+38|0];ma=v[D+36>>2];a=v[D>>2];v[p+72>>2]=1000593162;v[p+68>>2]=a;v[p+64>>2]=0;v[p+60>>2]=W;v[p+56>>2]=ma;v[p+48>>2]=0;v[p+52>>2]=0;F=xa+-64|0;xa=F;g:{h:{i:{k=v[p+56>>2];if(k){v[p+48>>2]=k;l=v[37696];a=Raa(k,0,12,0);A=a+4|0;a=(Ga=l+12|0,Ha=Aa?-1:a>>>0>A>>>0?-1:A,Ia=Ba[v[v[l>>2]+20>>2]](l)|0?43013:63804,Ja=7469,Ka=625,Fa=v[v[l+12>>2]+8>>2],Ba[Fa](Ga|0,Ha|0,Ia|0,Ja|0,Ka|0)|0);v[a>>2]=k;v[p+52>>2]=a+4;k=B(v[p+48>>2],3);a=Raa(k,0,12,0);o=a+4|0;l=Aa?-1:a>>>0>o>>>0?-1:o;if(l){a=v[37696];o=Ba[v[v[a>>2]+20>>2]](a)|0?43819:63804;o=Ba[v[v[a+12>>2]+8>>2]](a+12|0,l,o,7469,627)|0}else{o=0}v[o>>2]=k;X=o+4|0;j:{if(!v[p+48>>2]){na=v[p+52>>2];k=0;break j}na=v[p+52>>2];A=v[p+64>>2];E=v[p+60>>2];k=0;while(1){k:{l:{if(!E){if(A){break l}a=0;G=1;l=2;break k}l=E+B(q,12)|0;a=v[l>>2];G=v[l+4>>2];l=v[l+8>>2];break k}l=A+B(q,6)|0;a=x[l>>1];G=x[l+2>>1];l=x[l+4>>1]}r=B(q,12)+na|0;v[r+8>>2]=-1;v[r>>2]=-1;v[r+4>>2]=-1;r=X+B(k,12)|0;v[r+12>>2]=a>>>0>>0?a:l;v[r+8>>2]=q;v[r+4>>2]=a>>>0>G>>>0?a:G;v[r>>2]=a>>>0>>0?a:G;v[r+20>>2]=q;v[r+16>>2]=a>>>0>l>>>0?a:l;v[r+32>>2]=q;v[r+28>>2]=l>>>0>>0?G:l;v[r+24>>2]=l>>>0>G>>>0?G:l;k=k+3|0;q=q+1|0;if(q>>>0>2]){continue}break}}ba=RU(F+24|0);q=(k&1073741823)!=(k|0)?-1:k<<2;if(q){a=v[37696];l=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804;q=Ba[v[v[a+12>>2]+8>>2]](a+12|0,q,l,7469,536)|0}else{q=0}m:{if(k){a=0;l=k-1|0;if(l>>>0>=3){r=k&-4;G=0;while(1){v[q+(m<<2)>>2]=v[X+B(m,12)>>2];A=m|1;v[q+(A<<2)>>2]=v[X+B(A,12)>>2];A=m|2;v[q+(A<<2)>>2]=v[X+B(A,12)>>2];A=m|3;v[q+(A<<2)>>2]=v[X+B(A,12)>>2];m=m+4|0;G=G+4|0;if((r|0)!=(G|0)){continue}break}}r=k&3;if(r){while(1){v[q+(m<<2)>>2]=v[X+B(m,12)>>2];m=m+1|0;a=a+1|0;if((r|0)!=(a|0)){continue}break}}a=0;VU(ba,q,k,0);m=0;if(l>>>0>=3){l=k&-4;G=0;while(1){v[q+(m<<2)>>2]=v[(X+B(m,12)|0)+4>>2];r=m|1;v[q+(r<<2)>>2]=v[(X+B(r,12)|0)+4>>2];r=m|2;v[q+(r<<2)>>2]=v[(X+B(r,12)|0)+4>>2];r=m|3;v[q+(r<<2)>>2]=v[(X+B(r,12)|0)+4>>2];m=m+4|0;G=G+4|0;if((l|0)!=(G|0)){continue}break}}l=k&3;if(l){while(1){v[q+(m<<2)>>2]=v[(X+B(m,12)|0)+4>>2];m=m+1|0;a=a+1|0;if((l|0)!=(a|0)){continue}break}}VU(ba,q,k,0);break m}VU(ba,q,0,0);VU(ba,q,0,0);if(q){break m}break i}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,q);if(!k){break i}m=v[ba+8>>2];a=X+B(v[m>>2],12)|0;r=v[a+4>>2];q=v[a>>2];a=0;_=1;n:{while(1){l=m+4|0;T=k-1|0;A=X+B(v[m>>2],12)|0;E=v[A+4>>2];G=v[A+8>>2];A=v[A>>2];o:{if(!((A|0)!=(q|0)|(r|0)!=(E|0))){v[F+(a<<2)>>2]=G;p:{l=a+1|0;if((l|0)==3){break p}q:{r:{s:{if(!T){break s}fa=m+8|0;T=k-2|0;A=X+B(v[m+4>>2],12)|0;E=v[A+4>>2];G=v[A+8>>2];A=v[A>>2];if((A|0)!=(q|0)|(r|0)!=(E|0)){break q}v[F+(l<<2)>>2]=G;l=a|2;if((l|0)==3){break p}if(!T){break s}T=m+12|0;k=k-3|0;m=X+B(v[m+8>>2],12)|0;E=v[m+4>>2];G=v[m+8>>2];A=v[m>>2];if((A|0)!=(q|0)|(r|0)!=(E|0)){break r}v[F+(l<<2)>>2]=G;if(_){break p}l=a+3|0}if((l|0)==2){a=g4(v[F>>2],v[F+4>>2],q,r,na,v[p+60>>2],v[p+64>>2]);SU(ba);k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,o);m=0;if(a){break h}break g}break i}a=l;l=T;break o}a=l;k=T;l=fa;break o}m=0;a9(v[37696],8,7469,570,65654,0);SU(ba);a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,o);break g}k=T}m=l;if((a|0)==2){if(!g4(v[F>>2],v[F+4>>2],q,r,na,v[p+60>>2],v[p+64>>2])){break n}}v[F>>2]=G;a=1;_=0;r=E;q=A;if(k){continue}break}break i}SU(ba);a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,o)}m=0;break g}SU(ba);a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,o)}a=v[p+68>>2];if(!a){m=1;break g}u[F+36>>1]=0;v[F+24>>2]=v[p+56>>2];v[F+28>>2]=v[p+60>>2];k=v[p+64>>2];v[F+40>>2]=a;m=1;t[F+36|0]=1;v[F+32>>2]=k;z[F+44>>2]=z[p+72>>2];v[F+12>>2]=0;v[F>>2]=0;v[F+4>>2]=0;v[F+16>>2]=0;v[F+20>>2]=0;if(!(!g3(F,F+24|0)|!v[p+48>>2])){q=v[p+52>>2];l=v[F+12>>2];E=0;while(1){k=B(E,12);a=k+q|0;k=l+k|0;v[a>>2]=v[a>>2]&-536870913|v[k>>2]>>>2&536870912;v[a+4>>2]=v[a+4>>2]&-536870913|v[k+8>>2]>>>2&536870912;v[a+8>>2]=v[a+8>>2]&-536870913|v[k+4>>2]>>>2&536870912;E=E+1|0;if(E>>>0>2]){continue}break}}f3(F)}xa=F- -64|0;t:{if(!m){break t}a=0;q=v[p+52>>2];k=0;u:{if(!q){break u}l=v[p+48>>2];k=0;if(!l){break u}while(1){r=j;j=q+B(a,12)|0;k=(v[j>>2]&536870911)==536870911;j=(r+((v[j+4>>2]&536870911)==536870911?k?2:1:k)|0)+((v[j+8>>2]&536870911)==536870911)|0;a=a+1|0;if((l|0)!=(a|0)){continue}break}k=j}if(k){break t}a=p-(ma+15&-16)|0;xa=a;sa=I9(a,0,ma);a=a-(ra+15&496)|0;xa=a;ya=I9(a,0,ra);v[ha>>2]=0;while(1){b=0;X=0;v:{w:{x:{if(!ma){break x}while(1){if(!w[b+sa|0]){X=b;break x}b=b+1|0;if((ma|0)!=(b|0)){continue}break}break w}if((X|0)==(ma|0)){break w}v[p+40>>2]=0;v[p+32>>2]=0;v[p+36>>2]=0;q=v[p+52>>2];y:{while(1){j4(p+32|0,q,X,sa);q=v[p+52>>2];ba=0;oa=v[p+32>>2];_=v[p+36>>2];z:{A:{B:{C:{D:{if(!W){A=0;if(!_){break z}while(1){k=A+1|0;if(k>>>0<_>>>0){l=v[(A<<2)+oa>>2];a=1;b=k;while(1){o=B(v[(b<<2)+oa>>2],12)+q|0;j=v[o>>2];j=(l|0)!=(j&536870911)|!(j&536870912);m=v[o+4>>2];if((l|0)==(m&536870911)){j=!(m&536870912)&j}o=v[o+8>>2];E:{F:{if((l|0)!=(o&536870911)){if(!j){break E}break F}if(!(!(o&536870912)&j)){break E}}b=b+1|0;a=_>>>0>b>>>0;if((b|0)!=(_|0)){continue}}break}if(a&1){break D}}A=k;if((k|0)!=(_|0)){continue}break}v[p+24>>2]=0;v[p+16>>2]=0;v[p+20>>2]=0;break B}while(1){A=ba;if((_|0)==(A|0)){break C}k=1;E=v[(A<<2)+oa>>2];G=0;m=0;ba=A+1|0;o=ba;G:{if(_>>>0<=o>>>0){break G}while(1){a=B(v[(o<<2)+oa>>2],12)+q|0;b=v[a>>2];j=(E|0)!=(b&536870911)|!(b&536870912);b=v[a+4>>2];if((E|0)==(b&536870911)){j=!(b&536870912)&j}a=v[a+8>>2];H:{if((E|0)==(a&536870911)){m=k;if(!(a&536870912)&j){break H}break G}m=k;if(!j){break G}}o=o+1|0;k=_>>>0>o>>>0;m=k;if((o|0)!=(_|0)){continue}break}}a=B(E,12);ta=a+q|0;a=a+W|0;T=v[a>>2];na=v[a+8>>2];fa=v[a+4>>2];za=1;while(1){I:{J:{if(w[((G<<2)+ta|0)+3|0]&32){break J}o=1;ia=2;j=T;k=fa;K:{L:{M:{switch(G|0){case 1:o=0;j=T;break L;case 0:break K;default:break M}}ia=1;o=0;j=fa}k=na}F=v[(o<<2)+ta>>2]&536870911;b=E;a=b;N:{O:{while(1){l=b;Q=B(a,12)+q|0;b=a;a=B(a,3);P:{if(v[(a<<2)+W>>2]==(j|0)){r=1;a=0;break P}r=2;a=v[((a<<2)+W|0)+4>>2]!=(j|0)}o=v[Q+(r<<2)>>2];r=o&536870912;a=v[Q+(a<<2)>>2];if(a&536870912){Q=0;if(!r){break O}break N}if(!r){Q=0;if((b|0)==(E|0)){break N}a=a&536870911;if((l|0)!=(E|0)){if((a|0)==(E|0)){break N}if((a|0)!=(l|0)){continue}a=o&536870911;if((a|0)==(E|0)){break N}o=(a|0)==(l|0);a=o?b:a;b=o?l:b;continue}if((a|0)!=(E|0)){continue}a=o&536870911;l=(a|0)==(E|0);a=l?b:a;b=l?E:b;continue}break}o=a}a=o&536870911;r=(a|0)==(E|0);o=o&536870912;a=o?b:r?b:a;b=o?l:r?l:b;while(1){Q=B(a,12)+q|0;l=a;a=B(a,3);Q:{if(v[(a<<2)+W>>2]==(j|0)){r=0;a=1;break Q}r=v[((a<<2)+W|0)+4>>2]!=(j|0);a=2}o=v[Q+(a<<2)>>2];ja=o&536870912;R:{a=v[Q+(r<<2)>>2];S:{if(a&536870912){Q=0;if(!ja){break S}break N}if(!ja){break R}a=o}ua=a&536870911;Q=1;ga=l;break N}Q=0;if((l|0)==(E|0)){break N}a=a&536870911;r=b;if((b|0)!=(E|0)){if((a|0)==(E|0)){break N}b=l;if((a|0)!=(r|0)){continue}a=o&536870911;if((a|0)==(E|0)){break N}l=(a|0)==(r|0);a=l?b:a;b=l?r:b;continue}b=l;if((a|0)!=(E|0)){continue}a=o&536870911;l=(a|0)==(E|0);a=l?b:a;b=l?E:b;continue}}b=F;a=b;T:{U:{while(1){l=b;ja=B(a,12)+q|0;b=a;a=B(a,3);V:{if(v[(a<<2)+W>>2]==(j|0)){r=1;a=0;break V}r=2;a=v[((a<<2)+W|0)+4>>2]!=(j|0)}o=v[ja+(r<<2)>>2];r=o&536870912;a=v[ja+(a<<2)>>2];if(a&536870912){if(!r){break U}break T}if(!r){if((b|0)==(F|0)){break T}a=a&536870911;if((l|0)!=(F|0)){if((a|0)==(F|0)){break T}if((a|0)!=(l|0)){continue}a=o&536870911;if((a|0)==(F|0)){break T}o=(a|0)==(l|0);a=o?b:a;b=o?l:b;continue}if((a|0)!=(F|0)){continue}a=o&536870911;l=(a|0)==(F|0);a=l?b:a;b=l?F:b;continue}break}o=a}a=o&536870911;r=(a|0)==(F|0);o=o&536870912;a=o?b:r?b:a;b=o?l:r?l:b;while(1){l=b;Ca=B(a,12)+q|0;b=a;a=B(a,3);W:{if(v[(a<<2)+W>>2]==(j|0)){r=0;a=1;break W}r=v[((a<<2)+W|0)+4>>2]!=(j|0);a=2}o=v[Ca+(a<<2)>>2];ja=o&536870912;X:{a=v[Ca+(r<<2)>>2];if(a&536870912){if(ja){break T}break X}if(ja){a=o;break X}if((b|0)==(F|0)){break T}a=a&536870911;if((l|0)!=(F|0)){if((a|0)==(F|0)){break T}if((a|0)!=(l|0)){continue}a=o&536870911;if((a|0)==(F|0)){break T}o=(a|0)==(l|0);a=o?b:a;b=o?l:b;continue}if((a|0)!=(F|0)){continue}a=o&536870911;l=(a|0)==(F|0);a=l?b:a;b=l?F:b;continue}break}if(!((b|0)==(ua|0)&Q)){break T}if((a&536870911)==(ga|0)){break I}}F=v[(ia<<2)+ta>>2]&536870911;a=E;j=a;Y:{Z:{while(1){l=a;a=j;j=B(a,12)+q|0;o=B(a,3);_:{if(v[(o<<2)+W>>2]==(k|0)){o=0;b=1;break _}o=v[((o<<2)+W|0)+4>>2]!=(k|0);b=2}r=v[j+(b<<2)>>2];Q=r&536870912;b=v[j+(o<<2)>>2];if(b&536870912){o=0;if(!Q){break Z}break Y}if(!Q){o=0;if((a|0)==(E|0)){break Y}j=b&536870911;if((l|0)!=(E|0)){if((j|0)==(E|0)){break Y}if((j|0)!=(l|0)){continue}b=r&536870911;if((b|0)==(E|0)){break Y}j=b;b=(b|0)==(l|0);j=b?a:j;a=b?l:a;continue}if((j|0)!=(E|0)){continue}j=r&536870911;b=(j|0)==(E|0);j=b?a:j;a=b?E:a;continue}break}r=b}j=r&536870911;b=(j|0)==(E|0);o=r&536870912;j=o?a:b?a:j;a=o?l:b?l:a;while(1){o=B(j,12)+q|0;l=j;b=B(j,3);$:{if(v[(b<<2)+W>>2]==(k|0)){j=1;b=0;break $}j=2;b=v[((b<<2)+W|0)+4>>2]!=(k|0)}r=v[(j<<2)+o>>2];Q=r&536870912;aa:{j=v[o+(b<<2)>>2];ba:{if(j&536870912){o=0;if(!Q){break ba}break Y}if(!Q){break aa}j=r}ua=j&536870911;o=1;ga=l;break Y}o=0;if((l|0)==(E|0)){break Y}j=j&536870911;b=a;if((a|0)!=(E|0)){if((j|0)==(E|0)){break Y}a=l;if((b|0)!=(j|0)){continue}j=r&536870911;if((j|0)==(E|0)){break Y}l=(b|0)==(j|0);j=l?a:j;a=l?b:a;continue}a=l;if((j|0)!=(E|0)){continue}j=r&536870911;b=(j|0)==(E|0);j=b?a:j;a=b?E:a;continue}}a=F;j=a;ca:{while(1){l=a;a=j;j=B(a,12)+q|0;r=B(a,3);da:{if(v[(r<<2)+W>>2]==(k|0)){Q=0;b=1;break da}Q=v[((r<<2)+W|0)+4>>2]!=(k|0);b=2}r=v[j+(b<<2)>>2];ia=r&536870912;b=v[j+(Q<<2)>>2];if(b&536870912){if(!ia){break ca}break J}if(!ia){if((a|0)==(F|0)){break J}j=b&536870911;if((l|0)!=(F|0)){if((j|0)==(F|0)){break J}if((j|0)!=(l|0)){continue}b=r&536870911;if((b|0)==(F|0)){break J}j=b;b=(b|0)==(l|0);j=b?a:j;a=b?l:a;continue}if((j|0)!=(F|0)){continue}j=r&536870911;b=(j|0)==(F|0);j=b?a:j;a=b?F:a;continue}break}r=b}j=r&536870911;b=(j|0)==(F|0);r=r&536870912;j=r?a:b?a:j;a=r?l:b?l:a;while(1){l=a;a=j;ia=B(a,12)+q|0;r=ia;b=B(a,3);ea:{if(v[(b<<2)+W>>2]==(k|0)){j=1;b=0;break ea}j=2;b=v[((b<<2)+W|0)+4>>2]!=(k|0)}r=v[(j<<2)+r>>2];Q=r&536870912;fa:{j=v[ia+(b<<2)>>2];if(j&536870912){if(Q){break J}break fa}if(Q){j=r;break fa}if((a|0)==(F|0)){break J}j=j&536870911;if((l|0)!=(F|0)){if((j|0)==(F|0)){break J}if((j|0)!=(l|0)){continue}b=r&536870911;if((b|0)==(F|0)){break J}j=b;b=(b|0)==(l|0);j=b?a:j;a=b?l:a;continue}if((j|0)!=(F|0)){continue}j=r&536870911;b=(j|0)==(F|0);j=b?a:j;a=b?F:a;continue}break}if(!((a|0)==(ua|0)&o)){break J}if((j&536870911)==(ga|0)){break I}}za=G>>>0<2;G=G+1|0;if((G|0)!=3){continue}}break}if(!((m|za)&1)){continue}break}}o=0;if(!_){break A}while(1){b=(o<<2)+oa|0;a=B(v[b>>2],12)+q|0;v[a>>2]=v[a>>2]|536870912;v[a+4>>2]=v[a+4>>2]|536870912;v[a+8>>2]=v[a+8>>2]|536870912;t[v[b>>2]+sa|0]=0;o=o+1|0;if(o>>>0>2]){continue}break}break A}v[p+24>>2]=0;v[p+16>>2]=0;v[p+20>>2]=0;if(!_){break y}}o=0;while(1){a=B(v[v[p+32>>2]+(o<<2)>>2],12);b=a+W|0;j=v[b>>2];k=v[b+8>>2];b=v[b+4>>2];q=v[p+52>>2];if(w[(a+q|0)+3|0]&32){v[p+100>>2]=b;v[p+96>>2]=j;q=v[p+20>>2];ga:{if(q>>>0>=(v[p+24>>2]&2147483647)>>>0){k4(p+16|0,p+96|0);break ga}l=v[p+100>>2];q=v[p+16>>2]+(q<<3)|0;v[q>>2]=v[p+96>>2];v[q+4>>2]=l;v[p+20>>2]=v[p+20>>2]+1}q=v[p+52>>2]}if(w[(a+q|0)+7|0]&32){v[p+100>>2]=k;v[p+96>>2]=j;j=v[p+20>>2];ha:{if(j>>>0>=(v[p+24>>2]&2147483647)>>>0){k4(p+16|0,p+96|0);break ha}q=v[p+100>>2];j=v[p+16>>2]+(j<<3)|0;v[j>>2]=v[p+96>>2];v[j+4>>2]=q;v[p+20>>2]=v[p+20>>2]+1}q=v[p+52>>2]}ia:{if(!(w[(a+q|0)+11|0]&32)){break ia}v[p+100>>2]=k;v[p+96>>2]=b;a=v[p+20>>2];if(a>>>0>=(v[p+24>>2]&2147483647)>>>0){k4(p+16|0,p+96|0);break ia}b=v[p+100>>2];a=v[p+16>>2]+(a<<3)|0;v[a>>2]=v[p+96>>2];v[a+4>>2]=b;v[p+20>>2]=v[p+20>>2]+1}o=o+1|0;if(o>>>0>2]){continue}break}break y}v[p+36>>2]=0}if(A>>>0<_>>>0){continue}break}v[p+24>>2]=0;v[p+16>>2]=0;v[p+20>>2]=0}v[p+8>>2]=0;v[p>>2]=0;v[p+4>>2]=0;a=v[p+20>>2];ja:{if(a){v[p+100>>2]=a;v[p+104>>2]=a;b=a<<3;ka:{if(!b){b=0;break ka}a=v[37696];j=Ba[v[v[a>>2]+20>>2]](a)|0?32081:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,j,16608,553)|0;a=v[p+100>>2]}v[p+96>>2]=b;if((a|0)<=0){break ja}j=(a<<3)+b|0;a=v[p+16>>2];while(1){k=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=k;a=a+8|0;b=b+8|0;if(j>>>0>b>>>0){continue}break}break ja}v[p+104>>2]=0;v[p+96>>2]=0;v[p+100>>2]=0}o=v[p+100>>2];la:{ma:while(1){if(!o){break la}j=o;a=0;while(1){b=a;a=a+1|0;na:{if(j>>>0<=a>>>0){break na}m=v[p+96>>2];G=b<<3;q=m+G|0;k=v[q+4>>2];b=m+(a<<3)|0;A=v[b+4>>2];r=1;E=v[b>>2];l=v[q>>2];oa:{if(!((E|0)!=(l|0)|(k|0)!=(A|0))){q=a;break oa}q=a;if((l|0)==(A|0)&(k|0)==(E|0)){break oa}while(1){q=q+1|0;if((j|0)==(q|0)){break na}b=m+(q<<3)|0;r=v[b+4>>2];A=v[b>>2];if(!((A|0)==(l|0)&(k|0)==(r|0))&((l|0)!=(r|0)|(k|0)!=(A|0))){continue}break}r=j>>>0>q>>>0}q=q+1|0;if(q>>>0>>0){while(1){k=v[p+96>>2]+(q<<3)|0;l=v[k+4>>2];v[b>>2]=v[k>>2];v[b+4>>2]=l;b=b+8|0;o=v[p+100>>2];q=q+1|0;if(o>>>0>q>>>0){continue}break}}o=o-1|0;v[p+100>>2]=o;if(a>>>0>>0){b=G+v[p+96>>2]|0;q=a;while(1){k=v[p+96>>2]+(q<<3)|0;l=v[k+4>>2];v[b>>2]=v[k>>2];v[b+4>>2]=l;b=b+8|0;o=v[p+100>>2];q=q+1|0;if(o>>>0>q>>>0){continue}break}}o=o-1|0;v[p+100>>2]=o;if(r){continue ma}}if((a|0)!=(j|0)){continue}break}break}v[p+92>>2]=-1;v[p+88>>2]=-1;m=1;if(!o){break v}a=v[p+96>>2];if(a){b=v[a>>2];v[p+92>>2]=b;v[p+88>>2]=v[a+4>>2];a=v[p+4>>2];pa:{if(a>>>0>=(v[p+8>>2]&2147483647)>>>0){on(p,p+92|0);b=v[p+4>>2];break pa}v[v[p>>2]+(a<<2)>>2]=b;b=v[p+4>>2]+1|0;v[p+4>>2]=b}qa:{if((v[p+8>>2]&2147483647)>>>0<=b>>>0){on(p,p+88|0);break qa}v[v[p>>2]+(b<<2)>>2]=v[p+88>>2];v[p+4>>2]=v[p+4>>2]+1}o=v[p+100>>2];if(o>>>0>=2){b=1;q=v[p+96>>2];while(1){a=v[p+96>>2]+(b<<3)|0;j=v[a+4>>2];v[q>>2]=v[a>>2];v[q+4>>2]=j;q=q+8|0;b=b+1|0;o=v[p+100>>2];if(b>>>0>>0){continue}break}}o=o-1|0;v[p+100>>2]=o;if(!o){break v}q=v[p+88>>2]}else{q=-1}while(1){b=0;l=v[p+96>>2];ra:{while(1){j=b<<3;k=j+l|0;a=v[k>>2];v[p+84>>2]=a;k=v[k+4>>2];v[p+80>>2]=k;if((a|0)==(q|0)){a=v[p+4>>2];sa:{if(a>>>0>=(v[p+8>>2]&2147483647)>>>0){on(p,p+80|0);break sa}v[v[p>>2]+(a<<2)>>2]=k;v[p+4>>2]=v[p+4>>2]+1}v[p+92>>2]=v[p+84>>2];q=v[p+80>>2];v[p+88>>2]=q;a=v[p+100>>2];b=b+1|0;if(a>>>0<=b>>>0){break ra}o=j+v[p+96>>2]|0;while(1){a=v[p+96>>2]+(b<<3)|0;j=v[a+4>>2];v[o>>2]=v[a>>2];v[o+4>>2]=j;o=o+8|0;a=v[p+100>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break ra}if((k|0)==(q|0)){k=v[p+4>>2];ta:{if(k>>>0>=(v[p+8>>2]&2147483647)>>>0){on(p,p+84|0);break ta}v[v[p>>2]+(k<<2)>>2]=a;v[p+4>>2]=v[p+4>>2]+1}v[p+92>>2]=v[p+80>>2];q=v[p+84>>2];v[p+88>>2]=q;a=v[p+100>>2];b=b+1|0;if(a>>>0<=b>>>0){break ra}o=j+v[p+96>>2]|0;while(1){a=v[p+96>>2]+(b<<3)|0;j=v[a+4>>2];v[o>>2]=v[a>>2];v[o+4>>2]=j;o=o+8|0;a=v[p+100>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break ra}b=b+1|0;if((o|0)!=(b|0)){continue}break}m=0;break v}o=a-1|0;v[p+100>>2]=o;if(o){continue}break}break v}m=1;break v}j=0;v[p+96>>2]=0;if(ra){while(1){ua:{if(w[j+ya|0]>2){break ua}k=v[M>>2];b=0;va:{wa:{a=v[M+4>>2];if(!a){break wa}while(1){if(v[k+(b<<2)>>2]==(j|0)){break wa}b=b+1|0;if((a|0)!=(b|0)){continue}break}break va}if((a|0)!=(b|0)){break ua}}if(a>>>0>=(v[M+8>>2]&2147483647)>>>0){on(M,p+96|0);break ua}v[k+(a<<2)>>2]=j;v[M+4>>2]=v[M+4>>2]+1}j=v[p+96>>2]+1|0;v[p+96>>2]=j;if(j>>>0>>0){continue}break}}b=1;if(!S|!v[M+4>>2]){break t}ga=v[D+40>>2];A=0;m=xa+-64|0;xa=m;j=v[ha>>2];a=m-(j+15&-16)|0;xa=a;r=I9(a,0,j);q=v[M+4>>2];a=a-(q+15&-16)|0;xa=a;T=I9(a,0,q);v[m+56>>2]=0;v[m+48>>2]=0;v[m+52>>2]=0;xa:{if(!q){break xa}ya:{za:while(1){a=j;while(1){o=0;v[m+52>>2]=0;k=v[V>>2];v[m+32>>2]=0;q=q-1|0;Aa:{Ba:{if(a){E=0;while(1){a=v[k>>2];v[m+16>>2]=a;l=k+4|0;Ca:{if(!a){a=0;break Ca}G=v[v[M>>2]+(q<<2)>>2];k=0;while(1){if((G|0)!=v[l+(k<<2)>>2]){k=k+1|0;if((k|0)!=(a|0)){continue}break Ca}break}a=v[m+52>>2];Da:{if(a>>>0>=(v[m+56>>2]&2147483647)>>>0){on(m+48|0,m+32|0);k=v[m+52>>2];break Da}v[v[m+48>>2]+(a<<2)>>2]=E;k=v[m+52>>2]+1|0;v[m+52>>2]=k}Ea:{if((v[m+56>>2]&2147483647)>>>0<=k>>>0){on(m+48|0,m+16|0);break Ea}v[v[m+48>>2]+(k<<2)>>2]=v[m+16>>2];v[m+52>>2]=v[m+52>>2]+1}o=o+1|0;j=v[ha>>2];E=v[m+32>>2];a=v[m+16>>2]}E=E+1|0;v[m+32>>2]=E;k=l+(a<<2)|0;if(j>>>0>E>>>0){continue}break}break Ba}a=0;break Aa}if(!o){a=j;break Aa}E=0;a=v[m+48>>2];k=0;l=0;if(o-1>>>0>=3){fa=o&-4;G=0;while(1){F=l;l=k<<3;l=F|(v[a+(l|28)>>2]==3|v[a+(l|20)>>2]==3|v[a+(l|12)>>2]==3|v[(a+l|0)+4>>2]==3);k=k+4|0;G=G+4|0;if((fa|0)!=(G|0)){continue}break}}G=o&3;if(G){while(1){l=v[(a+(k<<3)|0)+4>>2]==3|l;k=k+1|0;E=E+1|0;if((G|0)!=(E|0)){continue}break}}if(!(l&1)){a=j;break Aa}t[q+T|0]=1;k=0;if((o|0)!=1){G=o&-2;l=0;while(1){A=k<<1;E=k<<3;if(v[(E+a|0)+4>>2]!=3){t[r+v[a+(A<<2)>>2]|0]=1}if(v[a+(E|12)>>2]!=3){t[r+v[a+(A<<2|8)>>2]|0]=1}k=k+2|0;l=l+2|0;if((G|0)!=(l|0)){continue}break}}if(!(!(o&1)|v[(a+(k<<3)|0)+4>>2]==3)){t[r+v[a+(k<<3)>>2]|0]=1}A=1;if(q){continue za}break ya}if(q){continue}break}break}if(!A){break xa}}l=v[M+4>>2];if(l){q=v[M>>2];k=l;while(1){j=k-1|0;if(w[j+T|0]){if(l>>>0>k>>>0){a=q+(j<<2)|0;while(1){v[a>>2]=v[q+(k<<2)>>2];a=a+4|0;k=k+1|0;l=v[M+4>>2];if(k>>>0>>0){continue}break}}l=l-1|0;v[M+4>>2]=l}k=j;if(j){continue}break}j=v[ha>>2]}v[m+40>>2]=0;v[m+32>>2]=0;v[m+36>>2]=0;v[m+24>>2]=0;v[m+16>>2]=0;v[m+20>>2]=0;l=0;if(j){k=v[V>>2];a=v[S>>2];q=0;while(1){j=v[k>>2];v[m+12>>2]=j;G=v[a>>2];v[m+8>>2]=G;o=a+4|0;A=k+4|0;Fa:{if(w[q+r|0]){k=0;a=0;if(!G){break Fa}while(1){v[m+4>>2]=v[o+(k<<2)>>2];v[m>>2]=3;a=v[m+36>>2];Ga:{if(a>>>0>=(v[m+40>>2]&2147483647)>>>0){on(m+32|0,m);a=v[m+36>>2];break Ga}v[v[m+32>>2]+(a<<2)>>2]=3;a=v[m+36>>2]+1|0;v[m+36>>2]=a}j=ga+B(v[m+4>>2],12)|0;Ha:{if((v[m+40>>2]&2147483647)>>>0<=a>>>0){on(m+32|0,j);a=v[m+36>>2];break Ha}v[v[m+32>>2]+(a<<2)>>2]=v[j>>2];a=v[m+36>>2]+1|0;v[m+36>>2]=a}j=(ga+B(v[m+4>>2],12)|0)+4|0;Ia:{if((v[m+40>>2]&2147483647)>>>0<=a>>>0){on(m+32|0,j);a=v[m+36>>2];break Ia}v[v[m+32>>2]+(a<<2)>>2]=v[j>>2];a=v[m+36>>2]+1|0;v[m+36>>2]=a}j=(ga+B(v[m+4>>2],12)|0)+8|0;Ja:{if((v[m+40>>2]&2147483647)>>>0<=a>>>0){on(m+32|0,j);break Ja}v[v[m+32>>2]+(a<<2)>>2]=v[j>>2];v[m+36>>2]=v[m+36>>2]+1}v[m>>2]=1;a=v[m+20>>2];Ka:{if(a>>>0>=(v[m+24>>2]&2147483647)>>>0){on(m+16|0,m);a=v[m+20>>2];break Ka}v[v[m+16>>2]+(a<<2)>>2]=1;a=v[m+20>>2]+1|0;v[m+20>>2]=a}La:{if((v[m+24>>2]&2147483647)>>>0<=a>>>0){on(m+16|0,m+4|0);break La}v[v[m+16>>2]+(a<<2)>>2]=v[m+4>>2];v[m+20>>2]=v[m+20>>2]+1}l=l+1|0;a=v[m+8>>2];k=k+1|0;if(a>>>0>k>>>0){continue}break}break Fa}a=v[m+36>>2];Ma:{if(a>>>0>=(v[m+40>>2]&2147483647)>>>0){on(m+32|0,m+12|0);break Ma}v[v[m+32>>2]+(a<<2)>>2]=j;v[m+36>>2]=v[m+36>>2]+1}k=0;if(v[m+12>>2]){while(1){a=A+(k<<2)|0;j=v[m+36>>2];Na:{if(j>>>0>=(v[m+40>>2]&2147483647)>>>0){on(m+32|0,a);break Na}v[v[m+32>>2]+(j<<2)>>2]=v[a>>2];v[m+36>>2]=v[m+36>>2]+1}k=k+1|0;if(k>>>0>2]){continue}break}}a=v[m+20>>2];Oa:{if(a>>>0>=(v[m+24>>2]&2147483647)>>>0){on(m+16|0,m+8|0);break Oa}v[v[m+16>>2]+(a<<2)>>2]=v[m+8>>2];v[m+20>>2]=v[m+20>>2]+1}l=l+1|0;a=0;if(!v[m+8>>2]){break Fa}while(1){j=o+(a<<2)|0;k=v[m+20>>2];Pa:{if(k>>>0>=(v[m+24>>2]&2147483647)>>>0){on(m+16|0,j);break Pa}v[v[m+16>>2]+(k<<2)>>2]=v[j>>2];v[m+20>>2]=v[m+20>>2]+1}a=a+1|0;j=v[m+8>>2];if(a>>>0>>0){continue}break}a=j}a=o+(a<<2)|0;k=A+(v[m+12>>2]<<2)|0;q=q+1|0;if(q>>>0>2]){continue}break}}v[V+4>>2]=0;v[S+4>>2]=0;if((V|0)!=(m+32|0)){v[V+4>>2]=0;a=v[m+36>>2];if(a>>>0>(v[V+8>>2]&2147483647)>>>0){zw(V,a);a=v[m+36>>2]}if((a|0)>0){k=v[V>>2];j=k+(a<<2)|0;a=v[m+32>>2];while(1){v[k>>2]=v[a>>2];a=a+4|0;k=k+4|0;if(j>>>0>k>>>0){continue}break}a=v[m+36>>2]}v[V+4>>2]=a}if((S|0)!=(m+16|0)){v[S+4>>2]=0;a=v[m+20>>2];if(a>>>0>(v[S+8>>2]&2147483647)>>>0){zw(S,a);a=v[m+20>>2]}if((a|0)>0){k=v[S>>2];j=k+(a<<2)|0;a=v[m+16>>2];while(1){v[k>>2]=v[a>>2];a=a+4|0;k=k+4|0;if(j>>>0>k>>>0){continue}break}a=v[m+20>>2]}v[S+4>>2]=a}v[ha>>2]=l;a=v[m+24>>2];Qa:{if((a|0)<0|!(a&2147483647)){break Qa}a=v[m+16>>2];if(!a){break Qa}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,a)}a=v[m+40>>2];if((a|0)<0|!(a&2147483647)){break xa}a=v[m+32>>2];if(!a){break xa}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,a)}a=v[m+56>>2];Ra:{if((a|0)<0|!(a&2147483647)){break Ra}a=v[m+48>>2];if(!a){break Ra}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,a)}xa=m- -64|0;break t}a=v[p+104>>2];Sa:{if((a|0)<0|!(a&2147483647)){break Sa}a=v[p+96>>2];if(!a){break Sa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}Ta:{if(!m){a9(v[37696],8,8968,943,23755,0);break Ta}l=v[p>>2];Ua:{a=v[p+4>>2];if(a){k=a-1|0;v[p+96>>2]=k;a=v[V+4>>2];Va:{if(a>>>0>=(v[V+8>>2]&2147483647)>>>0){on(V,p+96|0);break Va}v[v[V>>2]+(a<<2)>>2]=k;v[V+4>>2]=v[V+4>>2]+1}b=0;if(!k){break Ua}while(1){a=l+(b<<2)|0;j=v[a>>2];q=j+ya|0;t[q|0]=w[q|0]+1;q=v[V+4>>2];Wa:{if(q>>>0>=(v[V+8>>2]&2147483647)>>>0){on(V,a);break Wa}v[v[V>>2]+(q<<2)>>2]=j;v[V+4>>2]=v[V+4>>2]+1}b=b+1|0;if((k|0)!=(b|0)){continue}break}break Ua}a=v[p+8>>2];if(!(!l|((a|0)<0|!(a&2147483647)))){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,l)}a=v[p+24>>2];Xa:{if((a|0)<0|!(a&2147483647)){break Xa}a=v[p+16>>2];if(!a){break Xa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[p+40>>2];if((a|0)<0|!(a&2147483647)){continue}a=v[p+32>>2];if(!a){continue}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);continue}v[ha>>2]=v[ha>>2]+1;Ya:{if(!v[p+36>>2]){b=0;break Ya}Q=0;while(1){a=B(v[v[p+32>>2]+(Q<<2)>>2],12)+W|0;q=v[a>>2];v[p+96>>2]=q;A=v[a+4>>2];v[p+92>>2]=A;E=v[a+8>>2];v[p+88>>2]=E;b=0;a=0;j=0;o=0;G=0;Za:{_a:{$a:{ab:{bb:{cb:{db:{eb:{fb:{if(k){while(1){r=v[l+(b<<2)>>2];j=(r|0)==(q|0)|j;o=(r|0)==(E|0)|o;a=(r|0)==(A|0)|a;if(!(o&(j&a)&1)){b=b+1|0;if(k>>>0>b>>>0){continue}}break}G=a;if(j&1){break fb}}j=v[M>>2];b=0;gb:{a=v[M+4>>2];if(!a){break gb}while(1){if((q|0)==v[j+(b<<2)>>2]){break gb}b=b+1|0;if((a|0)!=(b|0)){continue}break}break eb}if((a|0)==(b|0)){break eb}a=G}if(a&1){break ab}break db}if(a>>>0<(v[M+8>>2]&2147483647)>>>0){break cb}on(M,p+96|0);if(G&1){break ab}}q=v[M+4>>2];break bb}v[j+(a<<2)>>2]=q;q=v[M+4>>2]+1|0;v[M+4>>2]=q;if(G&1){break ab}}a=v[M>>2];b=0;hb:{ib:{if(!q){break ib}j=v[p+92>>2];while(1){if((j|0)==v[a+(b<<2)>>2]){break ib}b=b+1|0;if((q|0)!=(b|0)){continue}break}break hb}if((b|0)==(q|0)){break hb}break ab}if((v[M+8>>2]&2147483647)>>>0<=q>>>0){on(M,p+92|0);if(!(o&1)){break $a}break Za}v[a+(q<<2)>>2]=v[p+92>>2];q=v[M+4>>2]+1|0;v[M+4>>2]=q;if(!(o&1)){break _a}break Za}if(o&1){break Za}}q=v[M+4>>2]}a=v[M>>2];b=0;jb:{kb:{if(!q){break kb}j=v[p+88>>2];while(1){if((j|0)==v[a+(b<<2)>>2]){break kb}b=b+1|0;if((q|0)!=(b|0)){continue}break}break jb}if((b|0)!=(q|0)){break Za}}if((v[M+8>>2]&2147483647)>>>0<=q>>>0){on(M,p+88|0);break Za}v[a+(q<<2)>>2]=v[p+88>>2];v[M+4>>2]=v[M+4>>2]+1}b=v[p+36>>2];Q=Q+1|0;if(b>>>0>Q>>>0){continue}break}}if(!S){break Ta}v[p+96>>2]=b;a=v[S+4>>2];lb:{if(a>>>0>=(v[S+8>>2]&2147483647)>>>0){on(S,p+96|0);break lb}v[v[S>>2]+(a<<2)>>2]=b;v[S+4>>2]=v[S+4>>2]+1}b=0;if(!v[p+36>>2]){break Ta}while(1){a=v[p+32>>2]+(b<<2)|0;j=v[S+4>>2];mb:{if(j>>>0>=(v[S+8>>2]&2147483647)>>>0){on(S,a);break mb}v[v[S>>2]+(j<<2)>>2]=v[a>>2];v[S+4>>2]=v[S+4>>2]+1}b=b+1|0;if(b>>>0>2]){continue}break}}a=v[p+8>>2];nb:{if((a|0)<0|!(a&2147483647)){break nb}a=v[p>>2];if(!a){break nb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[p+24>>2];ob:{if((a|0)<0|!(a&2147483647)){break ob}a=v[p+16>>2];if(!a){break ob}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[p+40>>2];pb:{if((a|0)<0|!(a&2147483647)){break pb}a=v[p+32>>2];if(!a){break pb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=0;if(m){continue}break}}a=v[p+52>>2];if(a){j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,a-4|0)}v[p+52>>2]=0;xa=p+112|0;qb:{if(!b){break qb}a=w[v[D+28>>2]+38|0];b=v[J+20>>2];rb:{if(!b){$=v[D>>2];q=v[J+12>>2];break rb}j=a-b|0;b=j&255;if(b){a=v[37696]+12|0;$=Ba[v[v[a>>2]+8>>2]](a,B(b,12),24422,8968,1056)|0;a=w[v[D+28>>2]+38|0]}sb:{if(!(a&255)){break sb}b=v[37696];k=b+12|0;s=(Ka=k,Ja=a&255,Ia=Ba[v[v[b>>2]+20>>2]](b)|0?35013:63804,Ha=8968,Ga=1057,Fa=v[v[k>>2]+8>>2],Ba[Fa](Ka|0,Ja|0,Ia|0,Ha|0,Ga|0)|0);if(!w[v[D+28>>2]+38|0]){break sb}a=0;while(1){n=0;tb:{ub:{vb:{k=v[J+20>>2];if(!k){break vb}b=v[J+16>>2];while(1){if(v[b+(n<<2)>>2]==(L|0)){break vb}n=n+1|0;if((k|0)!=(n|0)){continue}break}break ub}b=255;if((n|0)!=(k|0)){break tb}}b=B(a&255,12)+$|0;k=v[D>>2]+B(L,12)|0;z[b>>2]=z[k>>2];z[b+4>>2]=z[k+4>>2];z[b+8>>2]=z[k+8>>2];b=a;a=a+1|0}t[s+L|0]=b;L=L+1|0;if(L>>>0>2]+38|0]){continue}break}}q=v[J+12>>2];if(q){n=v[J+48>>2];while(1){k=n+4|0;l=v[n>>2];wb:{if(!l){break wb}b=0;n=0;if(l-1>>>0>=3){m=l&-4;a=0;while(1){o=n<<2;r=o+k|0;v[r>>2]=w[v[r>>2]+s|0];r=k+(o|4)|0;v[r>>2]=w[v[r>>2]+s|0];r=k+(o|8)|0;v[r>>2]=w[v[r>>2]+s|0];o=k+(o|12)|0;v[o>>2]=w[v[o>>2]+s|0];n=n+4|0;a=a+4|0;if((m|0)!=(a|0)){continue}break}}a=l&3;if(!a){break wb}while(1){o=k+(n<<2)|0;v[o>>2]=w[v[o>>2]+s|0];n=n+1|0;b=b+1|0;if((a|0)!=(b|0)){continue}break}}n=k+(l<<2)|0;P=P+1|0;if((P|0)!=(q|0)){continue}break}}if(s){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,s)}a=j}if(q>>>0>=256){n=0;a9(v[37696],32,8968,1095,72559,0);break qb}t[v[D+28>>2]+39|0]=q;s=0;xb:{if(!q){n=0;b=0;break xb}b=v[37696]+12|0;n=Ba[v[v[b>>2]+8>>2]](b,B(q,20),24422,8968,1101)|0;b=B(w[v[D+28>>2]+39|0],20)}v[D+4>>2]=n;I9(n,0,b);c4(D,J,v[D+36>>2],v[D+40>>2]);j=v[J+52>>2];if((j|0)!=(q|0)){b=v[37696];k=b+12|0;s=(Ga=k,Ha=j-q|0,Ia=Ba[v[v[b>>2]+20>>2]](b)|0?35013:63804,Ja=8968,Ka=1112,Fa=v[v[k>>2]+8>>2],Ba[Fa](Ga|0,Ha|0,Ia|0,Ja|0,Ka|0)|0)}v[D+8>>2]=s;if(q){P=v[D+4>>2];n=v[J+48>>2];b=v[J+32>>2];while(1){l=B(ka,20);k=l+P|0;u[k+16>>1]=s-v[D+8>>2];o=v[n>>2];t[k+18|0]=o;m=n+4|0;n=0;L=0;yb:{if(!o){P=0;break yb}while(1){j=v[m+(n<<2)>>2];zb:{if((j|0)!=255){t[s+L|0]=j;L=L+1|0;break zb}j=l+v[D+4>>2]|0;t[j+18|0]=w[j+18|0]-1}n=n+1|0;if((o|0)!=(n|0)){continue}break}k=l+v[D+4>>2]|0;P=w[k+18|0];if(!P|(!$|!s)){break yb}j=B(w[(s+P|0)-1|0],12)+$|0;N=z[j>>2];H=z[j+8>>2];I=z[j+4>>2];Y=C(0);n=0;ca=C(0);ea=C(0);U=C(0);Z=C(0);pa=C(0);while(1){j=B(w[n+s|0],12)+$|0;O=z[j>>2];R=z[j+4>>2];ea=C(C(C(N-O)*C(I+R))+ea);da=z[j+8>>2];ca=C(C(C(H-da)*C(N+O))+ca);Y=C(C(C(I-R)*C(H+da))+Y);pa=C(pa+da);Z=C(Z+R);U=C(U+O);N=O;H=da;I=R;n=n+1|0;if((P|0)!=(n|0)){continue}break}z[k+8>>2]=ea;z[k+4>>2]=ca;z[k>>2]=Y;I=C(K(C(C(ea*ea)+C(C(Y*Y)+C(ca*ca)))));if(I>C(0)){I=C(C(1)/I);ea=C(ea*I);z[k+8>>2]=ea;ca=C(ca*I);z[k+4>>2]=ca;Y=C(Y*I);z[k>>2]=Y}z[k+12>>2]=C(-C(C(pa*ea)+C(C(U*Y)+C(Z*ca))))/C(P>>>0)}j=b+4|0;G=v[b>>2];Ab:{if(!G){b=j;break Ab}U=C(0);I=C(0);Z=C(0);n=v[D>>2];b=v[D+40>>2]+B(v[j>>2],12)|0;r=n+B(v[b+4>>2],12)|0;A=n+B(v[b>>2],12)|0;N=z[A>>2];O=C(z[r>>2]-N);b=n+B(v[b+8>>2],12)|0;H=z[A+4>>2];R=C(z[b+4>>2]-H);da=C(z[b>>2]-N);H=C(z[r+4>>2]-H);N=C(C(O*R)-C(da*H));va=H;H=z[A+8>>2];Y=C(z[b+8>>2]-H);ca=R;R=C(z[r+8>>2]-H);H=C(C(va*Y)-C(ca*R));O=C(C(R*da)-C(Y*O));R=C(C(N*N)+C(C(H*H)+C(O*O)));if(R>C(0)){I=C(C(1)/C(K(R)));Z=C(N*I);U=C(H*I);I=C(O*I)}b=j+(G<<2)|0;if(!(C(C(Z*z[k+8>>2])+C(C(U*z[k>>2])+C(I*z[k+4>>2])))>2]=-z[k+8>>2];z[k+4>>2]=-z[k+4>>2];z[k>>2]=-z[k>>2];z[k+12>>2]=-z[k+12>>2];if(!s|P>>>0<2){break Ab}n=0;j=P>>>1|0;if((j|0)!=1){j=j&126;L=0;while(1){k=n+s|0;r=w[k|0];T=k;k=((n^-1)+P|0)+s|0;t[T|0]=w[k|0];t[k|0]=r;k=(n|1)+s|0;r=w[k|0];T=k;k=((P-n|0)+s|0)-2|0;t[T|0]=w[k|0];t[k|0]=r;n=n+2|0;L=L+2|0;if((j|0)!=(L|0)){continue}break}}if(!(P&2)){break Ab}j=n+s|0;k=w[j|0];r=j;j=((n^-1)+P|0)+s|0;t[r|0]=w[j|0];t[j|0]=k}P=v[D+4>>2];j=l+P|0;r=w[v[D+28>>2]+38|0];Bb:{if(!r){Z=z[j+8>>2];N=z[j+4>>2];H=z[j>>2];break Bb}I=z[j+12>>2];Z=z[j+8>>2];N=z[j+4>>2];H=z[j>>2];A=v[D>>2];n=0;while(1){k=A+B(n,12)|0;O=C(-C(C(Z*z[k+8>>2])+C(C(H*z[k>>2])+C(N*z[k+4>>2]))));if(O>2]=O;I=O}n=n+1|0;if((r|0)!=(n|0)){continue}break}}U=z[j+12>>2];if(C(C(C(z[J+8>>2]*Z)+C(C(z[J>>2]*H)+C(z[J+4>>2]*N)))+U)>C(0)){Cb:{if(!s){break Cb}j=w[j+18|0];if(j>>>0<2){break Cb}n=0;k=j>>>1|0;if((k|0)!=1){k=k&126;P=0;while(1){r=n+s|0;A=w[r|0];T=r;r=(j+(n^-1)|0)+s|0;t[T|0]=w[r|0];t[r|0]=A;r=(n|1)+s|0;A=w[r|0];T=r;r=((j-n|0)+s|0)-2|0;t[T|0]=w[r|0];t[r|0]=A;n=n+2|0;P=P+2|0;if((k|0)!=(P|0)){continue}break}}if(j&2){k=n+s|0;r=w[k|0];j=(j+(n^-1)|0)+s|0;t[k|0]=w[j|0];t[j|0]=r}P=v[D+4>>2];j=l+P|0;U=z[j+12>>2];Z=z[j+8>>2];N=z[j+4>>2];H=z[j>>2]}j=l+P|0;z[j+12>>2]=-U;z[j+8>>2]=-Z;z[j+4>>2]=-N;z[j>>2]=-H}n=m+(o<<2)|0;s=w[(l+P|0)+18|0]+s|0;ka=ka+1|0;if((ka|0)!=(q|0)){continue}break}}b=v[D>>2];if((b|0)!=($|0)){H9(b,$,B(a&255,12));if($){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,$)}t[v[D+28>>2]+38|0]=a}n=0;if(!a4(D,q,0)){break qb}Db:{if(!q){break Db}j=v[D+4>>2];k=w[v[D+28>>2]+38|0];if(k){b=v[D>>2];m=k&254;r=k&1;$=0;while(1){a=j+B($,20)|0;I=z[a+8>>2];N=z[a+4>>2];H=z[a>>2];U=C(34028234663852886e22);L=0;s=255;n=b;P=0;if((k|0)!=1){while(1){O=C(C(z[n+8>>2]*I)+C(C(z[n>>2]*H)+C(z[n+4>>2]*N)));l=O>2]*I)+C(C(z[n+12>>2]*H)+C(z[n+16>>2]*N)));O=l?O:U;o=R>2]*I)+C(C(z[n>>2]*H)+C(z[n+4>>2]*N)))>>0>=7){a=q&-8;s=0;while(1){t[(j+B(n,20)|0)+19|0]=255;t[(j+B(n|1,20)|0)+19|0]=255;t[(j+B(n|2,20)|0)+19|0]=255;t[(j+B(n|3,20)|0)+19|0]=255;t[(j+B(n|4,20)|0)+19|0]=255;t[(j+B(n|5,20)|0)+19|0]=255;t[(j+B(n|6,20)|0)+19|0]=255;t[(j+B(n|7,20)|0)+19|0]=255;n=n+8|0;s=s+8|0;if((a|0)!=(s|0)){continue}break}}a=q&7;if(!a){break Db}while(1){t[(j+B(n,20)|0)+19|0]=255;n=n+1|0;L=L+1|0;if((a|0)!=(L|0)){continue}break}}a=0;n=0;o=0;r=0;l=xa-16|0;xa=l;A=w[v[D+28>>2]+39|0];Eb:{if(!A){break Eb}b=v[D+4>>2];if(!b){break Eb}while(1){j=w[(b+B(a,20)|0)+18|0];if(j>>>0<=2){a=0;a9(v[37696],32,8968,1231,72696,0);break Eb}o=(j+o|0)-2|0;a=a+1|0;if((A|0)!=(a|0)){continue}break}Fb:{Gb:{b=(Fa=-1,Ka=Raa(o,0,12,0),Ja=Aa,Ja?Fa:Ka);if(!b){q=v[D>>2];b=0;break Gb}a=v[37696];j=Ba[v[v[a>>2]+20>>2]](a)|0?47365:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,j,8968,1237)|0;q=v[D>>2];A=w[v[D+28>>2]+39|0];if(A){break Gb}break Fb}E=v[D+4>>2];ga=v[D+8>>2];a=b;while(1){j=E+B(r,20)|0;s=w[j+18|0];T=s-2|0;if(T){m=ga+x[j+16>>1]|0;j=0;while(1){G=w[m|0];v[a>>2]=G;k=j+1|0;fa=w[m+((k>>>0)%(s>>>0)|0)|0];v[a+4>>2]=fa;S=w[m+((j+2>>>0)%(s>>>0)|0)|0];v[a+8>>2]=S;F=n;j=B(fa,12)+q|0;n=B(G,12)+q|0;I=z[n>>2];N=C(z[j>>2]-I);G=B(S,12)+q|0;H=z[n+4>>2];O=C(z[G+4>>2]-H);I=C(z[G>>2]-I);H=C(z[j+4>>2]-H);R=C(C(N*O)-C(I*H));da=C(R*R);U=H;H=z[n+8>>2];R=C(z[G+8>>2]-H);H=C(z[j+8>>2]-H);O=C(C(U*R)-C(O*H));I=C(C(H*I)-C(R*N));j=C(da+C(C(O*O)+C(I*I)))!=C(0);n=F+j|0;a=B(j,12)+a|0;j=k;if((T|0)!=(j|0)){continue}break}}r=r+1|0;if((A|0)!=(r|0)){continue}break}}a=v[D+40>>2];if(a){j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,a)}v[D+40>>2]=0;Hb:{if((n|0)==(o|0)){a=b;break Hb}Ib:{j=(Fa=-1,Ka=Raa(n,0,12,0),Ja=Aa,Ja?Fa:Ka);if(j){a=v[37696];k=Ba[v[v[a>>2]+20>>2]](a)|0?47365:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,j,k,8968,1298)|0;if(a){break Ib}}a=0;if(!b){break Eb}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,b);break Eb}H9(a,b,B(n,12));if(!b){break Hb}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,b)}v[D+36>>2]=n;v[D+40>>2]=a;c4(D,l,n,a);j=v[D+36>>2];if(j){m=v[D+40>>2];b=0;ca=z[l+8>>2];ea=z[l+4>>2];pa=z[l>>2];while(1){I=C(0);N=C(0);H=C(0);a=m+B(b,12)|0;r=v[a+4>>2];k=B(r,12)+q|0;n=B(v[a>>2],12)+q|0;O=z[n>>2];Y=C(z[k>>2]-O);A=v[a+8>>2];o=B(A,12)+q|0;R=z[n+4>>2];Z=C(z[o+4>>2]-R);qa=C(z[o>>2]-O);U=C(z[k+4>>2]-R);da=C(C(Y*Z)-C(qa*U));va=U;U=z[n+8>>2];Da=C(z[o+8>>2]-U);Ea=C(z[k+8>>2]-U);Z=C(C(va*Da)-C(Z*Ea));Y=C(C(Ea*qa)-C(Da*Y));qa=C(C(da*da)+C(C(Z*Z)+C(Y*Y)));if(qa>C(0)){N=C(C(1)/C(K(qa)));H=C(da*N);I=C(Z*N);N=C(Y*N)}if(C(C(C(ca*H)+C(C(pa*I)+C(N*ea)))-C(C(U*H)+C(C(O*I)+C(R*N))))>C(0)){v[a+4>>2]=A;v[a+8>>2]=r;j=v[D+36>>2]}b=b+1|0;if(j>>>0>b>>>0){continue}break}}a=1}xa=l+16|0;n=a}a=v[J+24>>2];Jb:{if((a|0)<0|!(a&2147483647)){break Jb}a=v[J+16>>2];if(!a){break Jb}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[J+40>>2];Kb:{if((a|0)<0|!(a&2147483647)){break Kb}a=v[J+32>>2];if(!a){break Kb}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[J+56>>2];Lb:{if((a|0)<0|!(a&2147483647)){break Lb}a=v[J+48>>2];if(!a){break Lb}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=J- -64|0;if(!n){break f}aa=b4(D)}xa=la+32|0;Mb:{if(!aa){a9(v[37696],32,9156,331,66591,0);break Mb}a=v[D+28>>2];v[d>>2]=w[a+38|0];v[h>>2]=w[a+39|0];a=Ba[v[v[c>>2]+8>>2]](c,B(v[d>>2],12),63958,9156,338)|0;v[e>>2]=a;H9(a,v[D>>2],B(v[d>>2],12));a=0;v[f>>2]=0;if(v[h>>2]){d=v[D+4>>2];b=0;while(1){b=w[(d+B(a,20)|0)+18|0]+b|0;v[f>>2]=b;a=a+1|0;if(a>>>0>2]){continue}break}a=b<<2}else{a=0}b=Ba[v[v[c>>2]+8>>2]](c,a,64072,9156,347)|0;v[g>>2]=b;if(v[f>>2]){d=v[D+8>>2];a=0;while(1){v[b+(a<<2)>>2]=w[a+d|0];a=a+1|0;if(a>>>0>2]){continue}break}}d=Ba[v[v[c>>2]+8>>2]](c,B(v[h>>2],20),14655,9156,353)|0;v[i>>2]=d;e=v[h>>2];if(e){f=v[D+4>>2];b=0;while(1){c=B(b,20);a=c+d|0;c=c+f|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+12>>2]=z[c+12>>2];u[a+16>>1]=w[c+18|0];u[a+18>>1]=x[c+16>>1];b=b+1|0;if((e|0)!=(b|0)){continue}break}}}e4(D);xa=wa+160|0;return aa|0}function Fv(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=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=0,u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=0,G=C(0),H=C(0),I=0,J=C(0),L=0,M=0,N=C(0),O=0,P=0,Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0);h=xa-944|0;xa=h;E=v[f>>2];p=a;R=v[a+40>>2];f=v[b+40>>2];Y=v[a+12>>2];x=v[a+8>>2];H=z[a+4>>2];v[h+812>>2]=0;v[h+804>>2]=x;v[h+808>>2]=Y;z[h+800>>2]=H;x=v[b+12>>2];a=v[b+8>>2];A=z[b+4>>2];v[h+796>>2]=0;v[h+788>>2]=a;v[h+792>>2]=x;z[h+784>>2]=A;z[h+768>>2]=z[e>>2];D=z[c+20>>2];y=z[c+24>>2];S=z[c>>2];Q=z[c+4>>2];N=z[c+8>>2];u=z[c+12>>2];o=z[c+16>>2];v[h+764>>2]=0;z[h+760>>2]=y;z[h+756>>2]=D;z[h+752>>2]=o;z[h+748>>2]=u;z[h+744>>2]=N;z[h+740>>2]=Q;z[h+736>>2]=S;n=z[d+20>>2];m=z[d+24>>2];J=z[d>>2];V=z[d+4>>2];T=z[d+8>>2];U=z[d+12>>2];j=z[d+16>>2];v[h+732>>2]=0;z[h+728>>2]=m;z[h+724>>2]=n;z[h+720>>2]=j;z[h+716>>2]=U;z[h+712>>2]=T;z[h+708>>2]=V;z[h+704>>2]=J;v[h+700>>2]=0;l=C(-J);G=C(o-j);D=C(D-n);o=C(y-m);n=C(C(C(l*G)-C(D*V))-C(T*o));m=C(C(U*U)+C(-.5));j=C(C(C(m*D)+C(U*C(C(J*o)-C(T*G))))-C(V*n));z[h+692>>2]=j+j;j=C(C(C(U*C(C(V*G)-C(J*D)))+C(m*o))-C(T*n));z[h+696>>2]=j+j;j=C(C(C(m*G)+C(U*C(C(T*D)-C(V*o))))-C(J*n));z[h+688>>2]=j+j;n=C(C(C(S*V)-C(J*Q))+C(C(N*U)-C(u*T)));z[h+680>>2]=n;j=C(C(C(Q*T)-C(V*N))+C(C(S*U)-C(u*J)));z[h+672>>2]=j;J=C(C(C(N*J)-C(T*S))+C(C(Q*U)-C(u*V)));z[h+676>>2]=J;u=C(C(u*U)-C(C(C(l*S)-C(Q*V))-C(T*N)));z[h+684>>2]=u;a=v[h+700>>2];v[h+664>>2]=v[h+696>>2];v[h+668>>2]=a;v[h+652>>2]=0;G=C(j+j);m=C(C(1)-C(j*G));D=C(J+J);y=C(J*D);z[h+648>>2]=m-y;l=C(n*D);j=C(u*G);z[h+644>>2]=l-j;v[h+636>>2]=0;z[h+632>>2]=l+j;j=C(n+n);o=C(n*j);z[h+628>>2]=m-o;a=v[h+692>>2];v[h+656>>2]=v[h+688>>2];v[h+660>>2]=a;n=C(n*G);m=C(u*D);z[h+640>>2]=n+m;l=C(J*G);j=C(u*j);z[h+624>>2]=l-j;v[h+620>>2]=0;z[h+616>>2]=n-m;z[h+612>>2]=l+j;z[h+608>>2]=C(C(1)-y)-o;d=w[E+64|0];ja=z[e+8>>2];J=C(ja*C(.05000000074505806));l=C(A*z[f+52>>2]);u=z[h+788>>2];j=C(z[f+56>>2]*u);l=j>=l?l:j;G=z[h+792>>2];j=C(z[f+60>>2]*G);j=C((j>=l?l:j)*C(.25));D=j>J?J:j;o=H;H=z[R+52>>2];j=C(o*H);A=z[R+56>>2];n=z[h+804>>2];l=C(A*n);o=j<=l?j:l;m=z[R+60>>2];y=z[h+808>>2];j=C(m*y);o=C((j>=o?o:j)*C(.25));o=o>J?J:o;o=o>D?D:o;z[h+592>>2]=o;if(d){j=C(o*C(.800000011920929));G=C(j*j);a=d;while(1){e=v[E+76>>2];a=a-1|0;r=e+B(a,48)|0;u=z[r+24>>2];A=z[r+40>>2];n=z[r+8>>2];m=z[r>>2];l=z[r+4>>2];j=C(z[h+664>>2]+C(C(z[h+648>>2]*n)+C(C(z[h+616>>2]*m)+C(l*z[h+632>>2]))));D=C(z[h+656>>2]+C(C(z[h+640>>2]*n)+C(C(z[h+608>>2]*m)+C(l*z[h+624>>2]))));y=z[r+16>>2];o=z[r+32>>2];n=C(z[h+660>>2]+C(C(z[h+644>>2]*n)+C(C(z[h+612>>2]*m)+C(l*z[h+628>>2]))));m=z[r+20>>2];l=z[r+36>>2];H=C(C(A*C(j-u))+C(C(C(D-y)*o)+C(C(n-m)*l)));j=C(u-C(j-C(A*H)));A=C(j*j);j=C(y-C(D-C(o*H)));o=C(j*j);j=C(m-C(n-C(l*H)));a:{if(G>2];v[r>>2]=v[e>>2];v[r+4>>2]=c;c=v[e+44>>2];v[r+40>>2]=v[e+40>>2];v[r+44>>2]=c;c=v[e+36>>2];v[r+32>>2]=v[e+32>>2];v[r+36>>2]=c;c=v[e+28>>2];v[r+24>>2]=v[e+24>>2];v[r+28>>2]=c;c=v[e+20>>2];v[r+16>>2]=v[e+16>>2];v[r+20>>2]=c;c=v[e+12>>2];v[r+8>>2]=v[e+8>>2];v[r+12>>2]=c;break a}z[r+44>>2]=H}if(a){continue}break}H=z[R+52>>2];r=w[E+64|0];G=z[h+792>>2];u=z[h+788>>2];A=z[R+56>>2];n=z[h+804>>2];l=C(A*n);m=z[R+60>>2];y=z[h+808>>2];j=C(m*y)}D=z[h+784>>2];ka=C(j*j);o=z[h+800>>2];j=C(H*o);z[h+576>>2]=K(C(ka+C(C(j*j)+C(l*l))));j=C(m*G);l=C(j*j);j=C(H*D);m=C(j*j);j=C(A*u);z[h+560>>2]=K(C(l+C(m+C(j*j))));b:{c:{if((d|0)==(r|0)){if(!n1(E,h+672|0,h+736|0,h+704|0,h+592|0,h+576|0,h+560|0)){break c}}a=v[h+748>>2];v[h+216>>2]=v[h+744>>2];v[h+220>>2]=a;a=v[h+716>>2];v[h+376>>2]=v[h+712>>2];v[h+380>>2]=a;a=v[h+700>>2];v[E+24>>2]=v[h+696>>2];v[E+28>>2]=a;a=v[h+740>>2];v[h+208>>2]=v[h+736>>2];v[h+212>>2]=a;a=v[h+708>>2];v[h+368>>2]=v[h+704>>2];v[h+372>>2]=a;a=v[h+692>>2];v[E+16>>2]=v[h+688>>2];v[E+20>>2]=a;a=v[h+684>>2];v[E+8>>2]=v[h+680>>2];v[E+12>>2]=a;a=v[h+676>>2];v[E>>2]=v[h+672>>2];v[E+4>>2]=a;a=v[h+220>>2];v[E+40>>2]=v[h+216>>2];v[E+44>>2]=a;a=v[h+212>>2];v[E+32>>2]=v[h+208>>2];v[E+36>>2]=a;a=v[h+372>>2];v[E+48>>2]=v[h+368>>2];v[E+52>>2]=a;a=v[h+380>>2];v[E+56>>2]=v[h+376>>2];v[E+60>>2]=a;a=0;c=0;d:{if(z[p+4>>2]!=C(1)){break d}c=0;if(z[p+8>>2]!=C(1)){break d}c=z[p+12>>2]==C(1)}a=z[b+4>>2]!=C(1)|z[b+8>>2]!=C(1)?a:z[b+12>>2]==C(1);P=h+656|0;x=v[p+16>>2];r=v[p+20>>2];e=v[p+28>>2];v[h+552>>2]=v[p+24>>2];v[h+556>>2]=e;v[h+544>>2]=x;v[h+548>>2]=r;r=v[b+16>>2];p=v[b+20>>2];e=v[b+28>>2];v[h+536>>2]=v[b+24>>2];v[h+540>>2]=e;v[h+528>>2]=r;v[h+532>>2]=p;j=z[R+32>>2];e=v[R+28>>2];b=v[R+24>>2];t[h+400|0]=0;v[h+396>>2]=0;v[h+512>>2]=R;v[h+380>>2]=0;z[h+376>>2]=j;v[h+368>>2]=b;v[h+372>>2]=e;v[h+520>>2]=v[R+40>>2]+B(w[R+39|0],20);t[h+524|0]=w[R+38|0];l=C(z[R+52>>2]*o);j=C(z[R+56>>2]*n);l=j>=l?l:j;j=C(z[R+60>>2]*y);j=j>=l?l:j;z[h+392>>2]=j*C(.02500000037252903);z[h+388>>2]=j*C(.05000000074505806);z[h+384>>2]=j*C(.10000000149011612);FV(h+800|0,h+544|0,h+416|0,h+464|0,h+368|0,c);v[h+516>>2]=v[R+44>>2];j=z[f+32>>2];e=v[f+28>>2];b=v[f+24>>2];t[h+240|0]=0;v[h+236>>2]=0;v[h+352>>2]=f;v[h+220>>2]=0;z[h+216>>2]=j;v[h+208>>2]=b;v[h+212>>2]=e;v[h+360>>2]=v[f+40>>2]+B(w[f+39|0],20);t[h+364|0]=w[f+38|0];l=C(z[f+52>>2]*z[h+784>>2]);j=C(z[f+56>>2]*z[h+788>>2]);l=j>=l?l:j;j=C(z[f+60>>2]*z[h+792>>2]);j=j>=l?l:j;z[h+232>>2]=j*C(.02500000037252903);z[h+228>>2]=j*C(.05000000074505806);z[h+224>>2]=j*C(.10000000149011612);FV(h+784|0,h+528|0,h+256|0,h+304|0,h+208|0,a);v[h+356>>2]=v[f+44>>2];v[h+168>>2]=0;v[h+172>>2]=0;v[h+160>>2]=0;v[h+164>>2]=0;v[h+152>>2]=0;v[h+156>>2]=0;v[h+144>>2]=0;v[h+148>>2]=0;v[h+136>>2]=0;v[h+140>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+192>>2]=0;if(c){b=v[h+596>>2];v[h+816>>2]=v[h+592>>2];v[h+820>>2]=b;b=v[h+604>>2];v[h+824>>2]=v[h+600>>2];v[h+828>>2]=b;b=v[h+780>>2];v[h+840>>2]=v[h+776>>2];v[h+844>>2]=b;b=v[h+772>>2];v[h+832>>2]=v[h+768>>2];v[h+836>>2]=b;b=v[h+628>>2];v[h+896>>2]=v[h+624>>2];v[h+900>>2]=b;b=v[h+620>>2];v[h+888>>2]=v[h+616>>2];v[h+892>>2]=b;b=v[h+636>>2];v[h+904>>2]=v[h+632>>2];v[h+908>>2]=b;b=v[h+644>>2];v[h+912>>2]=v[h+640>>2];v[h+916>>2]=b;b=v[h+652>>2];v[h+920>>2]=v[h+648>>2];v[h+924>>2]=b;b=v[h+660>>2];v[h+928>>2]=v[h+656>>2];v[h+932>>2]=b;b=v[h+668>>2];v[h+936>>2]=v[h+664>>2];v[h+940>>2]=b;b=v[h+612>>2];v[h+880>>2]=v[h+608>>2];v[h+884>>2]=b;m=z[h+884>>2];z[h+884>>2]=z[h+896>>2];v[h+864>>2]=144544;v[h+872>>2]=h+608;v[h+868>>2]=h+368;l=z[h+888>>2];j=z[h+904>>2];z[h+896>>2]=m;z[h+888>>2]=z[h+912>>2];z[h+904>>2]=z[h+916>>2];z[h+916>>2]=j;z[h+912>>2]=l;if(a){v[h+856>>2]=144404;v[h+860>>2]=h+208;I=E+67|0;L=E+71|0;k=h+128|0;i=xa-320|0;xa=i;R=h+856|0;s=v[R+4>>2];l=z[s+20>>2];M=h+864|0;Y=v[M+4>>2];j=z[Y+20>>2];S=z[h+832>>2];p=w[Y+32|0];Q=z[Y+16>>2];f=w[s+32|0];N=z[s+16>>2];v[i+28>>2]=0;ea=C((j>l?l:j)*C(.10000000149011612));e:{f:{g:{h:{i:{j:{e=w[E+66|0];if(e){P=v[M+8>>2];b=0;while(1){a=q<<2;c=w[q+I|0];v[a+(i+48|0)>>2]=c;x=a+(i+32|0)|0;a=w[q+L|0];v[x>>2]=a;c=v[Y+152>>2]+B(c,12)|0;_=z[c+8>>2];W=z[c>>2];X=z[c+4>>2];a=v[s+152>>2]+B(a,12)|0;U=z[a>>2];V=z[a+4>>2];T=z[a+8>>2];J=z[P+48>>2];H=z[P+32>>2];u=z[P>>2];G=z[P+16>>2];A=z[P+52>>2];D=z[P+36>>2];y=z[P+4>>2];o=z[P+20>>2];n=z[P+56>>2];m=z[P+40>>2];l=z[P+8>>2];j=z[P+24>>2];a=b;c=a<<4;x=c+(i+128|0)|0;v[x+12>>2]=0;r=c+(i- -64|0)|0;v[r+12>>2]=0;z[r+8>>2]=T;z[r+4>>2]=V;z[r>>2]=U;c=c+(i+192|0)|0;v[c+12>>2]=0;m=C(n+C(C(m*_)+C(C(l*W)+C(X*j))));z[x+8>>2]=m;l=C(A+C(C(D*_)+C(C(y*W)+C(X*o))));z[x+4>>2]=l;j=C(J+C(C(H*_)+C(C(u*W)+C(X*G))));z[x>>2]=j;m=C(m-T);z[c+8>>2]=m;l=C(l-V);z[c+4>>2]=l;j=C(j-U);z[c>>2]=j;b=a+1|0;q=q+1|0;if((e|0)!=(q|0)){continue}break}v[i+28>>2]=b;k:{l:{switch(a-1|0){case 0:n=z[i+200>>2];D=C(z[i+216>>2]-n);m=z[i+192>>2];y=C(z[i+208>>2]-m);l=z[i+196>>2];o=C(z[i+212>>2]-l);j=C(C(D*D)+C(C(y*y)+C(o*o)));if(!(j<=C(1.1920928955078125e-7))){break k}v[i+28>>2]=1;a=v[i+196>>2];v[i+304>>2]=v[i+192>>2];v[i+308>>2]=a;a=v[i+204>>2];v[i+312>>2]=v[i+200>>2];v[i+316>>2]=a;break i;case 1:iY(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}}P_(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break i}v[i+316>>2]=0;j=C(F(C(C(C(C(C(-m)*y)-C(o*l))-C(n*D))/j),C(1)));j=j>C(0)?j:C(0);z[i+312>>2]=n+C(D*j);z[i+308>>2]=l+C(o*j);z[i+304>>2]=m+C(y*j);break i}m=z[P+8>>2];l=z[P>>2];j=z[P+4>>2];v[i+268>>2]=0;a=C(C(m*m)+C(C(l*l)+C(j*j)))>C(0);n=a?m:C(0);z[i+264>>2]=n;m=a?j:C(0);z[i+260>>2]=m;l=a?l:C(1);z[i+256>>2]=l;o=C(C(1)/C(K(C(C(n*n)+C(C(l*l)+C(m*m))))));Z=C(n*o);$=C(l*o);j=C(34028234663852886e22);A=C(m*o);break h}v[i+316>>2]=0;z[i+312>>2]=m;z[i+308>>2]=l;z[i+304>>2]=j}a=v[i+308>>2];v[i+256>>2]=v[i+304>>2];v[i+260>>2]=a;a=v[i+316>>2];v[i+264>>2]=v[i+312>>2];v[i+268>>2]=a;n=z[i+264>>2];l=z[i+256>>2];m=z[i+260>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));if(!(ea>2]=v[i+296>>2];a=v[i+292>>2];v[i+272>>2]=v[i+288>>2];v[i+276>>2]=a;c=v[M+8>>2];b=v[M+4>>2];U=z[i+268>>2];a=v[i+28>>2];T=z[M+48>>2];S=z[M+16>>2];Q=z[M+32>>2];N=z[M+52>>2];J=z[M+20>>2];H=z[M+36>>2];u=z[M+56>>2];o=z[M+24>>2];j=z[M+40>>2];v[i+316>>2]=0;D=l;l=C(-l);y=m;j=C(C(o*l)-C(j*m));o=n;z[i+312>>2]=j-C(u*n);z[i+308>>2]=C(C(J*l)-C(H*m))-C(N*n);z[i+304>>2]=C(C(S*l)-C(Q*m))-C(T*n);e=(i+48|0)+(a<<2)|0;a=HV(b,i+304|0);v[e>>2]=a;V=z[c+52>>2];T=z[c+20>>2];S=z[c+36>>2];Q=z[c+56>>2];a=v[b+152>>2]+B(a,12)|0;aa=z[a>>2];J=z[c+24>>2];ba=z[a+4>>2];H=z[c+40>>2];_=z[a+8>>2];N=z[c+48>>2];u=z[c+32>>2];n=z[c>>2];m=z[c+16>>2];l=z[c+4>>2];j=z[c+8>>2];c=(i+32|0)+(v[i+28>>2]<<2)|0;b=v[R+4>>2];a=HV(b,i+256|0);v[c>>2]=a;J=C(Q+C(C(H*_)+C(C(j*aa)+C(ba*J))));a=v[b+152>>2]+B(a,12)|0;H=z[a+8>>2];W=C(J-H);u=C(N+C(C(u*_)+C(C(n*aa)+C(ba*m))));n=z[a>>2];Q=C(u-n);m=C(V+C(C(S*_)+C(C(l*aa)+C(ba*T))));l=z[a+4>>2];N=C(m-l);j=C(C(Z*W)+C(C($*Q)+C(A*N)));if(j>X){x=0;if(!I){break e}r=v[i+28>>2];t[E+66|0]=r;if(!r){break e}b=0;if((r|0)!=1){e=r&-2;while(1){a=b<<2;c=i+48|0;t[b+I|0]=v[a+c>>2];f=a;a=i+32|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(r&1)){break e}a=b<<2;t[b+I|0]=v[a+(i+48|0)>>2];t[b+L|0]=v[a+(i+32|0)>>2];break e}p=v[i+28>>2];if(j>C(G*C(.9997749924659729))){m:{if(!I){break m}t[E+66|0]=p;if(!p){break m}q=0;if((p|0)!=1){c=p&-2;while(1){a=q<<2;b=i+48|0;t[q+I|0]=v[a+b>>2];e=a;a=i+32|0;t[q+L|0]=v[e+a>>2];f=q|1;e=f<<2;t[f+I|0]=v[b+e>>2];t[f+L|0]=v[a+e>>2];q=q+2|0;O=O+2|0;if((c|0)!=(O|0)){continue}break}}if(!(p&1)){break m}a=q<<2;t[q+I|0]=v[a+(i+48|0)>>2];t[q+L|0]=v[a+(i+32|0)>>2]}z[k+32>>2]=$;v[k+44>>2]=0;z[k+40>>2]=Z;z[k+36>>2]=A;IV(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,p);a=v[i+308>>2];v[k>>2]=v[i+304>>2];v[k+4>>2]=a;a=v[i+316>>2];v[k+8>>2]=v[i+312>>2];v[k+12>>2]=a;a=v[i+4>>2];v[k+16>>2]=v[i>>2];v[k+20>>2]=a;a=v[i+12>>2];v[k+24>>2]=v[i+8>>2];v[k+28>>2]=a;a=v[i+292>>2];v[k+68>>2]=v[i+288>>2];v[k+72>>2]=a;v[k+76>>2]=v[i+296>>2];z[k+64>>2]=G;x=2;break e}a=p<<4;b=a+(i+128|0)|0;v[b+12>>2]=0;z[b+8>>2]=J;z[b+4>>2]=m;z[b>>2]=u;b=a+(i- -64|0)|0;v[b+12>>2]=0;z[b+8>>2]=H;z[b+4>>2]=l;z[b>>2]=n;a=a+(i+192|0)|0;v[a+12>>2]=0;z[a+8>>2]=W;z[a+4>>2]=N;z[a>>2]=Q;v[i+28>>2]=p+1;n:{o:{switch(p-1|0){case 0:n=z[i+200>>2];H=C(z[i+216>>2]-n);m=z[i+192>>2];u=C(z[i+208>>2]-m);l=z[i+196>>2];A=C(z[i+212>>2]-l);j=C(C(H*H)+C(C(u*u)+C(A*A)));if(j<=C(1.1920928955078125e-7)){v[i+28>>2]=1;a=v[i+196>>2];v[i+304>>2]=v[i+192>>2];v[i+308>>2]=a;a=v[i+204>>2];v[i+312>>2]=v[i+200>>2];v[i+316>>2]=a;break n}v[i+316>>2]=0;j=C(F(C(C(C(C(C(-m)*u)-C(A*l))-C(n*H))/j),C(1)));j=j>C(0)?j:C(0);z[i+312>>2]=n+C(H*j);z[i+308>>2]=l+C(A*j);z[i+304>>2]=m+C(u*j);break n;case 1:iY(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:P_(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}}v[i+316>>2]=0;z[i+312>>2]=W;z[i+308>>2]=N;z[i+304>>2]=Q}a=v[i+308>>2];v[i+256>>2]=v[i+304>>2];v[i+260>>2]=a;a=v[i+316>>2];v[i+264>>2]=v[i+312>>2];v[i+268>>2]=a;n=z[i+264>>2];l=z[i+256>>2];m=z[i+260>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));u=C(C(1)/j);Z=C(n*u);A=C(m*u);$=C(l*u);if(jea){continue}break}q=v[i+28>>2];if(!(j>2];f=a;a=i+32|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(r&1)){break p}a=b<<2;t[b+I|0]=v[a+(i+48|0)>>2];t[b+L|0]=v[a+(i+32|0)>>2]}v[i+296>>2]=v[i+280>>2];a=v[i+276>>2];v[i+288>>2]=v[i+272>>2];v[i+292>>2]=a;z[i+268>>2]=U;z[i+256>>2]=D;z[i+260>>2]=y;z[i+264>>2]=o;IV(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,q);v[k+60>>2]=0;z[k+56>>2]=Z;z[k+52>>2]=A;z[k+48>>2]=$;v[k+44>>2]=0;j=C(C(1)/G);z[k+40>>2]=o*j;z[k+36>>2]=y*j;z[k+32>>2]=D*j;a=v[i+308>>2];v[k>>2]=v[i+304>>2];v[k+4>>2]=a;a=v[i+316>>2];v[k+8>>2]=v[i+312>>2];v[k+12>>2]=a;a=v[i+4>>2];v[k+16>>2]=v[i>>2];v[k+20>>2]=a;a=v[i+12>>2];v[k+24>>2]=v[i+8>>2];v[k+28>>2]=a;z[k+64>>2]=G;a=v[i+276>>2];v[k+68>>2]=v[i+272>>2];v[k+72>>2]=a;v[k+76>>2]=v[i+280>>2];x=4;break e}if(I){break f}x=5;break e}q=v[i+28>>2]}t[E+66|0]=q;x=5;if(!q){break e}b=0;if((q|0)!=1){e=q&-2;while(1){a=b<<2;c=i+48|0;t[b+I|0]=v[a+c>>2];f=a;a=i+32|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(q&1)){break e}a=b<<2;t[b+I|0]=v[a+(i+48|0)>>2];t[b+L|0]=v[a+(i+32|0)>>2]}xa=i+320|0;a=v[h+828>>2];v[h+24>>2]=v[h+824>>2];v[h+28>>2]=a;a=v[h+820>>2];v[h+16>>2]=v[h+816>>2];v[h+20>>2]=a;a=v[h+836>>2];v[h>>2]=v[h+832>>2];v[h+4>>2]=a;a=v[h+844>>2];v[h+8>>2]=v[h+840>>2];v[h+12>>2]=a;a=O1(M,R,h+736|0,h+704|0,h+608|0,x,k,E,g,d,h+16|0,h,1,1,ja);break b}v[h+856>>2]=141216;v[h+860>>2]=h+208;q=E+67|0;I=E+71|0;k=h+128|0;b=0;i=xa-320|0;xa=i;R=h+856|0;M=v[R+4>>2];l=z[M+20>>2];L=h+864|0;Y=v[L+4>>2];j=z[Y+20>>2];$=z[h+832>>2];p=w[Y+32|0];aa=z[Y+16>>2];f=w[M+32|0];ba=z[M+16>>2];v[i+28>>2]=0;ia=C((j>l?l:j)*C(.10000000149011612));q:{r:{s:{t:{u:{v:{e=w[E+66|0];if(e){s=v[L+8>>2];while(1){a=O<<2;c=w[q+O|0];v[a+(i+48|0)>>2]=c;x=a+(i+32|0)|0;a=w[I+O|0];v[x>>2]=a;c=v[Y+152>>2]+B(c,12)|0;ha=z[c+8>>2];ca=z[c>>2];da=z[c+4>>2];a=v[M+152>>2]+B(a,12)|0;fa=z[a+8>>2];ga=z[a>>2];Z=z[a+4>>2];_=z[s+48>>2];ea=z[s+32>>2];W=z[s>>2];X=z[s+16>>2];U=z[s+52>>2];V=z[s+36>>2];T=z[s+4>>2];S=z[s+20>>2];Q=z[s+56>>2];N=z[s+40>>2];J=z[s+8>>2];H=z[s+24>>2];u=z[M+80>>2];G=z[M+48>>2];A=z[M+64>>2];D=z[M+84>>2];o=z[M+52>>2];n=z[M+68>>2];m=z[M+88>>2];l=z[M+56>>2];j=z[M+72>>2];a=b;c=a<<4;x=c+(i+128|0)|0;v[x+12>>2]=0;r=c+(i- -64|0)|0;v[r+12>>2]=0;c=c+(i+192|0)|0;v[c+12>>2]=0;y=C(C(m*fa)+C(C(l*ga)+C(Z*j)));z[r+8>>2]=y;o=C(C(D*fa)+C(C(o*ga)+C(Z*n)));z[r+4>>2]=o;n=C(C(u*fa)+C(C(G*ga)+C(Z*A)));z[r>>2]=n;m=C(Q+C(C(N*ha)+C(C(J*ca)+C(da*H))));z[x+8>>2]=m;l=C(U+C(C(V*ha)+C(C(T*ca)+C(da*S))));z[x+4>>2]=l;j=C(_+C(C(ea*ha)+C(C(W*ca)+C(da*X))));z[x>>2]=j;m=C(m-y);z[c+8>>2]=m;l=C(l-o);z[c+4>>2]=l;j=C(j-n);z[c>>2]=j;b=a+1|0;O=O+1|0;if((e|0)!=(O|0)){continue}break}v[i+28>>2]=b;w:{x:{switch(a-1|0){case 0:n=z[i+200>>2];D=C(z[i+216>>2]-n);m=z[i+192>>2];y=C(z[i+208>>2]-m);l=z[i+196>>2];o=C(z[i+212>>2]-l);j=C(C(D*D)+C(C(y*y)+C(o*o)));if(!(j<=C(1.1920928955078125e-7))){break w}v[i+28>>2]=1;a=v[i+196>>2];v[i+304>>2]=v[i+192>>2];v[i+308>>2]=a;a=v[i+204>>2];v[i+312>>2]=v[i+200>>2];v[i+316>>2]=a;break u;case 1:iY(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}}P_(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break u}v[i+316>>2]=0;j=C(F(C(C(C(C(C(-m)*y)-C(o*l))-C(n*D))/j),C(1)));j=j>C(0)?j:C(0);z[i+312>>2]=n+C(D*j);z[i+308>>2]=l+C(o*j);z[i+304>>2]=m+C(y*j);break u}m=z[P+8>>2];l=z[P>>2];j=z[P+4>>2];v[i+268>>2]=0;a=C(C(m*m)+C(C(l*l)+C(j*j)))>C(0);n=a?m:C(0);z[i+264>>2]=n;m=a?j:C(0);z[i+260>>2]=m;l=a?l:C(1);z[i+256>>2]=l;o=C(C(1)/C(K(C(C(n*n)+C(C(l*l)+C(m*m))))));la=C(n*o);ma=C(l*o);j=C(34028234663852886e22);A=C(m*o);break t}v[i+316>>2]=0;z[i+312>>2]=m;z[i+308>>2]=l;z[i+304>>2]=j}a=v[i+308>>2];v[i+256>>2]=v[i+304>>2];v[i+260>>2]=a;a=v[i+316>>2];v[i+264>>2]=v[i+312>>2];v[i+268>>2]=a;n=z[i+264>>2];l=z[i+256>>2];m=z[i+260>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));if(!(ia>2]=v[i+296>>2];a=v[i+292>>2];v[i+272>>2]=v[i+288>>2];v[i+276>>2]=a;e=v[L+8>>2];b=v[L+4>>2];da=z[i+268>>2];a=v[i+28>>2];S=z[L+48>>2];Q=z[L+16>>2];N=z[L+32>>2];J=z[L+52>>2];H=z[L+20>>2];u=z[L+36>>2];y=z[L+56>>2];o=z[L+24>>2];j=z[L+40>>2];v[i+316>>2]=0;na=o;o=C(-l);D=m;ka=y;y=n;z[i+312>>2]=C(C(na*o)-C(j*m))-C(ka*n);z[i+308>>2]=C(C(H*o)-C(u*m))-C(J*n);z[i+304>>2]=C(C(Q*o)-C(N*m))-C(S*n);f=(i+48|0)+(a<<2)|0;c=i+304|0;a=HV(b,c);v[f>>2]=a;fa=z[e+52>>2];ga=z[e+20>>2];Z=z[e+36>>2];$=z[e+56>>2];a=v[b+152>>2]+B(a,12)|0;oa=z[a>>2];aa=z[e+24>>2];na=z[a+4>>2];ba=z[e+40>>2];ha=z[a+8>>2];_=z[e+48>>2];ea=z[e+32>>2];W=z[e>>2];X=z[e+16>>2];U=z[e+4>>2];V=z[e+8>>2];a=v[i+28>>2];e=v[R+4>>2];T=z[e+56>>2];S=z[e+52>>2];Q=z[e+72>>2];b=e- -64|0;N=z[b>>2];J=z[e+68>>2];H=z[e+88>>2];o=z[e+80>>2];u=z[e+84>>2];j=z[e+48>>2];v[i+316>>2]=0;ka=o;o=l;z[i+312>>2]=C(H*n)+C(C(ka*l)+C(m*u));z[i+308>>2]=C(Q*n)+C(C(N*l)+C(m*J));z[i+304>>2]=C(T*n)+C(C(j*l)+C(m*S));f=(i+32|0)+(a<<2)|0;a=HV(e,c);v[f>>2]=a;J=C($+C(C(ba*ha)+C(C(V*oa)+C(na*aa))));a=v[e+152>>2]+B(a,12)|0;N=z[a+8>>2];l=z[a>>2];j=z[a+4>>2];H=C(C(z[e+88>>2]*N)+C(C(z[e+56>>2]*l)+C(j*z[e+72>>2])));S=C(J-H);u=C(_+C(C(ea*ha)+C(C(W*oa)+C(na*X))));n=C(C(z[e+80>>2]*N)+C(C(z[e+48>>2]*l)+C(j*z[b>>2])));Q=C(u-n);m=C(fa+C(C(Z*ha)+C(C(U*oa)+C(na*ga))));l=C(C(z[e+84>>2]*N)+C(C(z[e+52>>2]*l)+C(j*z[e+68>>2])));N=C(m-l);j=C(C(la*S)+C(C(ma*Q)+C(A*N)));if(j>ca){b=0;if(!q){break q}r=v[i+28>>2];t[E+66|0]=r;if(!r){break q}s=0;if((r|0)!=1){e=r&-2;O=0;while(1){a=s<<2;c=i+48|0;t[q+s|0]=v[a+c>>2];f=a;a=i+32|0;t[s+I|0]=v[f+a>>2];p=s|1;f=p<<2;t[q+p|0]=v[c+f>>2];t[p+I|0]=v[a+f>>2];s=s+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(r&1)){break q}a=s<<2;t[q+s|0]=v[a+(i+48|0)>>2];t[s+I|0]=v[a+(i+32|0)>>2];break q}p=v[i+28>>2];if(j>C(G*C(.9997749924659729))){y:{if(!q){break y}t[E+66|0]=p;if(!p){break y}x=0;if((p|0)!=1){c=p&-2;r=0;while(1){a=x<<2;b=i+48|0;t[q+x|0]=v[a+b>>2];e=a;a=i+32|0;t[x+I|0]=v[e+a>>2];f=x|1;e=f<<2;t[f+q|0]=v[b+e>>2];t[f+I|0]=v[a+e>>2];x=x+2|0;r=r+2|0;if((c|0)!=(r|0)){continue}break}}if(!(p&1)){break y}a=x<<2;t[q+x|0]=v[a+(i+48|0)>>2];t[x+I|0]=v[a+(i+32|0)>>2]}z[k+32>>2]=ma;v[k+44>>2]=0;z[k+40>>2]=la;z[k+36>>2]=A;IV(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,p);a=v[i+308>>2];v[k>>2]=v[i+304>>2];v[k+4>>2]=a;a=v[i+316>>2];v[k+8>>2]=v[i+312>>2];v[k+12>>2]=a;a=v[i+4>>2];v[k+16>>2]=v[i>>2];v[k+20>>2]=a;a=v[i+12>>2];v[k+24>>2]=v[i+8>>2];v[k+28>>2]=a;a=v[i+292>>2];v[k+68>>2]=v[i+288>>2];v[k+72>>2]=a;v[k+76>>2]=v[i+296>>2];z[k+64>>2]=G;b=2;break q}a=p<<4;b=a+(i+128|0)|0;v[b+12>>2]=0;z[b+8>>2]=J;z[b+4>>2]=m;z[b>>2]=u;b=a+(i- -64|0)|0;v[b+12>>2]=0;z[b+8>>2]=H;z[b+4>>2]=l;z[b>>2]=n;a=a+(i+192|0)|0;v[a+12>>2]=0;z[a+8>>2]=S;z[a+4>>2]=N;z[a>>2]=Q;v[i+28>>2]=p+1;z:{A:{switch(p-1|0){case 0:n=z[i+200>>2];H=C(z[i+216>>2]-n);m=z[i+192>>2];u=C(z[i+208>>2]-m);l=z[i+196>>2];A=C(z[i+212>>2]-l);j=C(C(H*H)+C(C(u*u)+C(A*A)));if(j<=C(1.1920928955078125e-7)){v[i+28>>2]=1;a=v[i+196>>2];v[i+304>>2]=v[i+192>>2];v[i+308>>2]=a;a=v[i+204>>2];v[i+312>>2]=v[i+200>>2];v[i+316>>2]=a;break z}v[i+316>>2]=0;j=C(F(C(C(C(C(C(-m)*u)-C(A*l))-C(n*H))/j),C(1)));j=j>C(0)?j:C(0);z[i+312>>2]=n+C(H*j);z[i+308>>2]=l+C(A*j);z[i+304>>2]=m+C(u*j);break z;case 1:iY(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:P_(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}}v[i+316>>2]=0;z[i+312>>2]=S;z[i+308>>2]=N;z[i+304>>2]=Q}a=v[i+308>>2];v[i+256>>2]=v[i+304>>2];v[i+260>>2]=a;a=v[i+316>>2];v[i+264>>2]=v[i+312>>2];v[i+268>>2]=a;n=z[i+264>>2];l=z[i+256>>2];m=z[i+260>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));u=C(C(1)/j);la=C(n*u);A=C(m*u);ma=C(l*u);if(jia){continue}break}x=v[i+28>>2];if(!(j>2];e=a;a=i+32|0;t[s+I|0]=v[e+a>>2];f=s|1;e=f<<2;t[f+q|0]=v[b+e>>2];t[f+I|0]=v[a+e>>2];s=s+2|0;r=r+2|0;if((c|0)!=(r|0)){continue}break}}if(!(p&1)){break B}a=s<<2;t[q+s|0]=v[a+(i+48|0)>>2];t[s+I|0]=v[a+(i+32|0)>>2]}v[i+296>>2]=v[i+280>>2];a=v[i+276>>2];v[i+288>>2]=v[i+272>>2];v[i+292>>2]=a;z[i+268>>2]=da;z[i+256>>2]=o;z[i+260>>2]=D;z[i+264>>2]=y;IV(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,x);v[k+60>>2]=0;z[k+56>>2]=la;z[k+52>>2]=A;z[k+48>>2]=ma;v[k+44>>2]=0;j=C(C(1)/G);z[k+40>>2]=y*j;z[k+36>>2]=D*j;z[k+32>>2]=o*j;a=v[i+308>>2];v[k>>2]=v[i+304>>2];v[k+4>>2]=a;a=v[i+316>>2];v[k+8>>2]=v[i+312>>2];v[k+12>>2]=a;a=v[i+4>>2];v[k+16>>2]=v[i>>2];v[k+20>>2]=a;a=v[i+12>>2];v[k+24>>2]=v[i+8>>2];v[k+28>>2]=a;z[k+64>>2]=G;a=v[i+276>>2];v[k+68>>2]=v[i+272>>2];v[k+72>>2]=a;v[k+76>>2]=v[i+280>>2];b=4;break q}if(q){break r}b=5;break q}x=v[i+28>>2]}t[E+66|0]=x;b=5;if(!x){break q}s=0;if((x|0)!=1){e=x&-2;O=0;while(1){a=s<<2;c=i+48|0;t[q+s|0]=v[a+c>>2];f=a;a=i+32|0;t[s+I|0]=v[f+a>>2];p=s|1;f=p<<2;t[q+p|0]=v[c+f>>2];t[p+I|0]=v[a+f>>2];s=s+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(x&1)){break q}a=s<<2;t[q+s|0]=v[a+(i+48|0)>>2];t[s+I|0]=v[a+(i+32|0)>>2]}xa=i+320|0;a=v[h+828>>2];v[h+56>>2]=v[h+824>>2];v[h+60>>2]=a;a=v[h+820>>2];v[h+48>>2]=v[h+816>>2];v[h+52>>2]=a;a=v[h+836>>2];v[h+32>>2]=v[h+832>>2];v[h+36>>2]=a;a=v[h+844>>2];v[h+40>>2]=v[h+840>>2];v[h+44>>2]=a;a=O1(L,R,h+736|0,h+704|0,h+608|0,b,k,E,g,d,h+48|0,h+32|0,1,0,ja);break b}b=v[h+596>>2];v[h+816>>2]=v[h+592>>2];v[h+820>>2]=b;b=v[h+604>>2];v[h+824>>2]=v[h+600>>2];v[h+828>>2]=b;b=v[h+780>>2];v[h+840>>2]=v[h+776>>2];v[h+844>>2]=b;b=v[h+772>>2];v[h+832>>2]=v[h+768>>2];v[h+836>>2]=b;b=v[h+628>>2];v[h+896>>2]=v[h+624>>2];v[h+900>>2]=b;b=v[h+620>>2];v[h+888>>2]=v[h+616>>2];v[h+892>>2]=b;b=v[h+636>>2];v[h+904>>2]=v[h+632>>2];v[h+908>>2]=b;b=v[h+644>>2];v[h+912>>2]=v[h+640>>2];v[h+916>>2]=b;b=v[h+652>>2];v[h+920>>2]=v[h+648>>2];v[h+924>>2]=b;b=v[h+660>>2];v[h+928>>2]=v[h+656>>2];v[h+932>>2]=b;b=v[h+668>>2];v[h+936>>2]=v[h+664>>2];v[h+940>>2]=b;b=v[h+612>>2];v[h+880>>2]=v[h+608>>2];v[h+884>>2]=b;m=z[h+884>>2];z[h+884>>2]=z[h+896>>2];v[h+864>>2]=141516;v[h+872>>2]=h+608;v[h+868>>2]=h+368;l=z[h+888>>2];j=z[h+904>>2];z[h+896>>2]=m;z[h+888>>2]=z[h+912>>2];z[h+904>>2]=z[h+916>>2];z[h+916>>2]=j;z[h+912>>2]=l;if(a){v[h+856>>2]=144404;v[h+860>>2]=h+208;I=E+67|0;L=E+71|0;q=h+128|0;k=xa-320|0;xa=k;R=h+856|0;s=v[R+4>>2];l=z[s+20>>2];Y=h+864|0;M=v[Y+4>>2];j=z[M+20>>2];aa=z[h+832>>2];p=w[M+32|0];ba=z[M+16>>2];f=w[s+32|0];_=z[s+16>>2];v[k+44>>2]=0;fa=C((j>l?l:j)*C(.10000000149011612));C:{D:{E:{F:{G:{H:{e=w[E+66|0];if(e){P=v[Y+8>>2];b=0;while(1){a=O<<2;c=w[I+O|0];v[a+(k- -64|0)>>2]=c;x=a+(k+48|0)|0;a=w[L+O|0];v[x>>2]=a;c=v[M+152>>2]+B(c,12)|0;ia=z[c+8>>2];ca=z[c>>2];da=z[c+4>>2];a=v[s+152>>2]+B(a,12)|0;ga=z[a>>2];Z=z[a+4>>2];$=z[a+8>>2];ea=z[P+48>>2];W=z[P+32>>2];X=z[P>>2];U=z[P+16>>2];V=z[P+52>>2];T=z[P+36>>2];S=z[P+4>>2];Q=z[P+20>>2];N=z[P+56>>2];J=z[P+40>>2];H=z[M+88>>2];u=z[M+56>>2];G=z[M+72>>2];A=z[P+8>>2];D=z[M+80>>2];y=z[M+48>>2];o=z[M+64>>2];n=z[P+24>>2];m=z[M+84>>2];l=z[M+52>>2];j=z[M+68>>2];a=b;c=a<<4;x=c+(k+144|0)|0;v[x+12>>2]=0;r=c+(k+80|0)|0;v[r+12>>2]=0;z[r+8>>2]=$;z[r+4>>2]=Z;z[r>>2]=ga;c=c+(k+208|0)|0;v[c+12>>2]=0;G=C(C(H*ia)+C(C(u*ca)+C(da*G)));o=C(C(D*ia)+C(C(y*ca)+C(da*o)));j=C(C(m*ia)+C(C(l*ca)+C(da*j)));m=C(N+C(C(J*G)+C(C(A*o)+C(n*j))));z[x+8>>2]=m;l=C(V+C(C(T*G)+C(C(S*o)+C(j*Q))));z[x+4>>2]=l;j=C(ea+C(C(W*G)+C(C(X*o)+C(j*U))));z[x>>2]=j;m=C(m-$);z[c+8>>2]=m;l=C(l-Z);z[c+4>>2]=l;j=C(j-ga);z[c>>2]=j;b=a+1|0;O=O+1|0;if((e|0)!=(O|0)){continue}break}v[k+44>>2]=b;I:{J:{switch(a-1|0){case 0:n=z[k+216>>2];D=C(z[k+232>>2]-n);m=z[k+208>>2];y=C(z[k+224>>2]-m);l=z[k+212>>2];o=C(z[k+228>>2]-l);j=C(C(D*D)+C(C(y*y)+C(o*o)));if(!(j<=C(1.1920928955078125e-7))){break I}v[k+44>>2]=1;a=v[k+212>>2];v[k+16>>2]=v[k+208>>2];v[k+20>>2]=a;a=v[k+220>>2];v[k+24>>2]=v[k+216>>2];v[k+28>>2]=a;break G;case 1:iY(k+16|0,k+208|0,k+144|0,k+80|0,k- -64|0,k+48|0,k+44|0);break G;case 2:break J;default:break H}}P_(k+16|0,k+208|0,k+144|0,k+80|0,k- -64|0,k+48|0,k+44|0);break G}v[k+28>>2]=0;j=C(F(C(C(C(C(C(-m)*y)-C(o*l))-C(n*D))/j),C(1)));j=j>C(0)?j:C(0);z[k+24>>2]=n+C(D*j);z[k+20>>2]=l+C(o*j);z[k+16>>2]=m+C(y*j);break G}m=z[P+8>>2];l=z[P>>2];j=z[P+4>>2];v[k+284>>2]=0;a=C(C(m*m)+C(C(l*l)+C(j*j)))>C(0);n=a?m:C(0);z[k+280>>2]=n;m=a?j:C(0);z[k+276>>2]=m;l=a?l:C(1);z[k+272>>2]=l;o=C(C(1)/C(K(C(C(n*n)+C(C(l*l)+C(m*m))))));W=C(n*o);X=C(l*o);j=C(34028234663852886e22);A=C(m*o);break F}v[k+28>>2]=0;z[k+24>>2]=m;z[k+20>>2]=l;z[k+16>>2]=j}a=v[k+20>>2];v[k+272>>2]=v[k+16>>2];v[k+276>>2]=a;a=v[k+28>>2];v[k+280>>2]=v[k+24>>2];v[k+284>>2]=a;n=z[k+280>>2];l=z[k+272>>2];m=z[k+276>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));if(!(fa>2]=v[k+312>>2];a=v[k+308>>2];v[k+288>>2]=v[k+304>>2];v[k+292>>2]=a;H=z[k+284>>2];v[k+12>>2]=0;D=n;z[k+8>>2]=-n;y=m;z[k+4>>2]=-m;o=l;z[k>>2]=-l;VW(k+16|0,Y,k,(k- -64|0)+(v[k+44>>2]<<2)|0);u=z[k+28>>2];U=z[k+24>>2];V=z[k+16>>2];T=z[k+20>>2];c=(k+48|0)+(v[k+44>>2]<<2)|0;b=v[R+4>>2];a=HV(b,k+272|0);v[c>>2]=a;a=v[b+152>>2]+B(a,12)|0;n=z[a+8>>2];S=C(U-n);m=z[a>>2];Q=C(V-m);l=z[a+4>>2];N=C(T-l);j=C(C(W*S)+C(C(X*Q)+C(A*N)));if(j>J){x=0;if(!I){break C}r=v[k+44>>2];t[E+66|0]=r;if(!r){break C}b=0;if((r|0)!=1){e=r&-2;O=0;while(1){a=b<<2;c=k- -64|0;t[b+I|0]=v[a+c>>2];f=a;a=k+48|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(r&1)){break C}a=b<<2;t[b+I|0]=v[a+(k- -64|0)>>2];t[b+L|0]=v[a+(k+48|0)>>2];break C}p=v[k+44>>2];if(j>C(G*C(.9997749924659729))){K:{if(!I){break K}t[E+66|0]=p;if(!p){break K}s=0;if((p|0)!=1){c=p&-2;x=0;while(1){a=s<<2;b=k- -64|0;t[s+I|0]=v[a+b>>2];e=a;a=k+48|0;t[s+L|0]=v[e+a>>2];f=s|1;e=f<<2;t[f+I|0]=v[b+e>>2];t[f+L|0]=v[a+e>>2];s=s+2|0;x=x+2|0;if((c|0)!=(x|0)){continue}break}}if(!(p&1)){break K}a=s<<2;t[s+I|0]=v[a+(k- -64|0)>>2];t[s+L|0]=v[a+(k+48|0)>>2]}z[q+32>>2]=X;v[q+44>>2]=0;z[q+40>>2]=W;z[q+36>>2]=A;IV(k+208|0,k+144|0,k+80|0,k+272|0,k+16|0,k,p);a=v[k+20>>2];v[q>>2]=v[k+16>>2];v[q+4>>2]=a;a=v[k+28>>2];v[q+8>>2]=v[k+24>>2];v[q+12>>2]=a;a=v[k+4>>2];v[q+16>>2]=v[k>>2];v[q+20>>2]=a;a=v[k+12>>2];v[q+24>>2]=v[k+8>>2];v[q+28>>2]=a;a=v[k+308>>2];v[q+68>>2]=v[k+304>>2];v[q+72>>2]=a;v[q+76>>2]=v[k+312>>2];z[q+64>>2]=G;x=2;break C}a=p<<4;b=a+(k+144|0)|0;z[b+12>>2]=u;z[b+8>>2]=U;z[b+4>>2]=T;z[b>>2]=V;b=a+(k+80|0)|0;v[b+12>>2]=0;z[b+8>>2]=n;z[b+4>>2]=l;z[b>>2]=m;a=a+(k+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=S;z[a+4>>2]=N;z[a>>2]=Q;v[k+44>>2]=p+1;L:{M:{switch(p-1|0){case 0:n=z[k+216>>2];N=C(z[k+232>>2]-n);m=z[k+208>>2];u=C(z[k+224>>2]-m);l=z[k+212>>2];A=C(z[k+228>>2]-l);j=C(C(N*N)+C(C(u*u)+C(A*A)));if(j<=C(1.1920928955078125e-7)){v[k+44>>2]=1;a=v[k+212>>2];v[k+16>>2]=v[k+208>>2];v[k+20>>2]=a;a=v[k+220>>2];v[k+24>>2]=v[k+216>>2];v[k+28>>2]=a;break L}v[k+28>>2]=0;j=C(F(C(C(C(C(C(-m)*u)-C(A*l))-C(n*N))/j),C(1)));j=j>C(0)?j:C(0);z[k+24>>2]=n+C(N*j);z[k+20>>2]=l+C(A*j);z[k+16>>2]=m+C(u*j);break L;case 1:iY(k+16|0,k+208|0,k+144|0,k+80|0,k- -64|0,k+48|0,k+44|0);break L;case 2:P_(k+16|0,k+208|0,k+144|0,k+80|0,k- -64|0,k+48|0,k+44|0);break L;default:break M}}v[k+28>>2]=0;z[k+24>>2]=S;z[k+20>>2]=N;z[k+16>>2]=Q}a=v[k+20>>2];v[k+272>>2]=v[k+16>>2];v[k+276>>2]=a;a=v[k+28>>2];v[k+280>>2]=v[k+24>>2];v[k+284>>2]=a;n=z[k+280>>2];l=z[k+272>>2];m=z[k+276>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));u=C(C(1)/j);W=C(n*u);A=C(m*u);X=C(l*u);if(jfa){continue}break}s=v[k+44>>2];if(!(j>2];f=a;a=k+48|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;x=x+2|0;if((e|0)!=(x|0)){continue}break}}if(!(r&1)){break N}a=b<<2;t[b+I|0]=v[a+(k- -64|0)>>2];t[b+L|0]=v[a+(k+48|0)>>2]}v[k+312>>2]=v[k+296>>2];a=v[k+292>>2];v[k+304>>2]=v[k+288>>2];v[k+308>>2]=a;z[k+284>>2]=H;z[k+272>>2]=o;z[k+276>>2]=y;z[k+280>>2]=D;IV(k+208|0,k+144|0,k+80|0,k+272|0,k+16|0,k,s);v[q+60>>2]=0;z[q+56>>2]=W;z[q+52>>2]=A;z[q+48>>2]=X;v[q+44>>2]=0;j=C(C(1)/G);z[q+40>>2]=D*j;z[q+36>>2]=y*j;z[q+32>>2]=o*j;a=v[k+20>>2];v[q>>2]=v[k+16>>2];v[q+4>>2]=a;a=v[k+28>>2];v[q+8>>2]=v[k+24>>2];v[q+12>>2]=a;a=v[k+4>>2];v[q+16>>2]=v[k>>2];v[q+20>>2]=a;a=v[k+12>>2];v[q+24>>2]=v[k+8>>2];v[q+28>>2]=a;z[q+64>>2]=G;a=v[k+292>>2];v[q+68>>2]=v[k+288>>2];v[q+72>>2]=a;v[q+76>>2]=v[k+296>>2];x=4;break C}if(I){break D}x=5;break C}s=v[k+44>>2]}t[E+66|0]=s;x=5;if(!s){break C}b=0;if((s|0)!=1){e=s&-2;O=0;while(1){a=b<<2;c=k- -64|0;t[b+I|0]=v[a+c>>2];f=a;a=k+48|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(s&1)){break C}a=b<<2;t[b+I|0]=v[a+(k- -64|0)>>2];t[b+L|0]=v[a+(k+48|0)>>2]}xa=k+320|0;a=v[h+828>>2];v[h+88>>2]=v[h+824>>2];v[h+92>>2]=a;a=v[h+820>>2];v[h+80>>2]=v[h+816>>2];v[h+84>>2]=a;a=v[h+836>>2];v[h+64>>2]=v[h+832>>2];v[h+68>>2]=a;a=v[h+844>>2];v[h+72>>2]=v[h+840>>2];v[h+76>>2]=a;a=O1(Y,R,h+736|0,h+704|0,h+608|0,x,q,E,g,d,h+80|0,h- -64|0,0,1,ja);break b}v[h+856>>2]=141216;v[h+860>>2]=h+208;f=h+864|0;e=h+856|0;c=h+128|0;b=UX(f,e,P,h+832|0,1,E+67|0,E+71|0,E+66|0,c);a=v[h+828>>2];v[h+120>>2]=v[h+824>>2];v[h+124>>2]=a;a=v[h+820>>2];v[h+112>>2]=v[h+816>>2];v[h+116>>2]=a;a=v[h+836>>2];v[h+96>>2]=v[h+832>>2];v[h+100>>2]=a;a=v[h+844>>2];v[h+104>>2]=v[h+840>>2];v[h+108>>2]=a;a=O1(f,e,h+736|0,h+704|0,h+608|0,b,c,E,g,d,h+112|0,h+96|0,0,0,ja);break b}d=w[E+64|0];a=0;if(!d){break b}a=1;e=v[E+76>>2];o=z[e+32>>2];l=o;n=z[e+36>>2];j=n;m=z[e+40>>2];y=m;O:{if((d|0)==1){break O}b=d-1|0;c=b&1;y=m;j=n;l=o;if((d|0)!=2){b=b&-2;d=0;while(1){f=e+B(a,48)|0;l=C(C(l+z[f+32>>2])+z[f+80>>2]);y=C(C(y+z[f+40>>2])+z[f+88>>2]);j=C(C(j+z[f+36>>2])+z[f+84>>2]);a=a+2|0;d=d+2|0;if((b|0)!=(d|0)){continue}break}}if(!c){break O}a=e+B(a,48)|0;l=C(l+z[a+32>>2]);y=C(y+z[a+40>>2]);j=C(j+z[a+36>>2])}v[h+380>>2]=0;H=z[h+712>>2];a=C(C(y*y)+C(C(l*l)+C(j*j)))>C(1.1920928955078125e-7);u=a?y:m;G=z[h+704>>2];A=a?l:o;D=z[h+708>>2];y=a?j:n;o=C(C(H*u)+C(C(G*A)+C(D*y)));J=z[h+716>>2];n=C(C(J*J)+C(-.5));j=C(C(H*o)+C(C(J*C(C(G*y)-C(A*D)))+C(u*n)));m=C(j+j);j=C(C(G*o)+C(C(J*C(C(D*u)-C(y*H)))+C(A*n)));l=C(j+j);j=C(C(D*o)+C(C(J*C(C(H*A)-C(u*G)))+C(y*n)));j=C(j+j);n=C(C(1)/C(K(C(C(m*m)+C(C(l*l)+C(j*j))))));z[h+376>>2]=m*n;z[h+372>>2]=j*n;z[h+368>>2]=l*n;q2(E,g,h+368|0,h+704|0,h+768|0);a=1}xa=h+944|0;return a|0}function Ma(){var a=0,b=0;za=5396048;ya=153168;O(110760,110772,110788,0,77863,3,77866,0,77866,0,23193,77868,2);a=laa(8);v[a>>2]=16;v[a+4>>2]=1;P(110760,3027,4,110816,77951,4,a|0,0);Q(62581,110280,67174656);R(14621,4,110848,77951,6,5);R(3978,3,110904,78079,8,7);R(21276,3,110924,78079,10,9);R(4558,6,110976,78225,12,11);R(20234,4,111024,77951,14,13);R(22500,4,111072,77951,16,15);R(24402,4,111168,77951,18,17);R(5336,8,111232,78666,19,1);O(111208,111216,111288,0,77863,21,77866,0,77866,0,16287,77868,20);O(111344,111356,111372,111208,77863,25,77863,24,77863,23,4990,77868,22);a=laa(4);v[a>>2]=26;P(111344,14356,2,111388,78919,27,a|0,0);S(111208,2491,2,111396,78942,29,28);S(111208,23199,3,111536,78079,31,30);O(111556,111568,111584,0,77863,33,77866,0,77866,0,2196,77868,32);a=laa(8);v[a>>2]=24;v[a+4>>2]=1;P(111556,3432,4,111600,79122,34,a|0,0);a=laa(4);v[a>>2]=35;P(111556,21466,5,111632,79160,36,a|0,0);a=laa(8);v[a>>2]=52;v[a+4>>2]=1;P(111556,22835,4,111680,79167,37,a|0,0);a=laa(4);v[a>>2]=38;P(111556,20425,4,111696,79122,39,a|0,0);a=laa(8);v[a>>2]=72;v[a+4>>2]=1;P(111556,64219,3,111712,79173,40,a|0,0);a=laa(8);v[a>>2]=80;v[a+4>>2]=1;P(111556,64236,3,111712,79173,40,a|0,0);a=laa(8);v[a>>2]=88;v[a+4>>2]=1;P(111556,64078,3,111712,79173,40,a|0,0);a=laa(8);v[a>>2]=96;v[a+4>>2]=1;P(111556,64095,3,111712,79173,40,a|0,0);a=laa(8);v[a>>2]=0;v[a+4>>2]=1;P(111556,21820,2,111724,78919,41,a|0,0);O(111732,111744,111760,111556,77863,45,77863,44,77863,43,2334,77868,42);a=laa(8);v[a>>2]=120;v[a+4>>2]=1;P(111732,23044,3,111776,79173,46,a|0,0);a=laa(8);v[a>>2]=128;v[a+4>>2]=1;P(111732,23014,3,111776,79173,46,a|0,0);O(111788,111800,111816,111556,77863,50,77863,49,77863,48,2224,77868,47);a=laa(4);v[a>>2]=51;P(111788,22026,5,111840,79334,52,a|0,0);a=laa(4);v[a>>2]=53;P(111788,22009,6,111872,79341,54,a|0,0);a=laa(4);v[a>>2]=55;P(111788,20339,4,111904,79349,56,a|0,0);a=laa(8);v[a>>2]=148;v[a+4>>2]=1;P(111788,23044,3,111920,79173,57,a|0,0);O(111932,111944,111960,111556,77863,61,77863,60,77863,59,2262,77868,58);a=laa(4);v[a>>2]=62;P(111932,2791,5,111984,79334,63,a|0,0);a=laa(4);v[a>>2]=64;P(111932,2568,6,112016,79341,65,a|0,0);a=laa(8);v[a>>2]=136;v[a+4>>2]=1;P(111932,1249,4,112048,79349,66,a|0,0);a=laa(8);v[a>>2]=144;v[a+4>>2]=1;P(111932,2730,3,112064,79173,67,a|0,0);a=laa(8);v[a>>2]=152;v[a+4>>2]=1;P(111932,14143,3,112064,79173,67,a|0,0);a=laa(4);v[a>>2]=68;P(111932,20361,4,112080,79349,69,a|0,0);a=laa(8);v[a>>2]=172;v[a+4>>2]=1;P(111932,23044,3,112064,79173,67,a|0,0);a=laa(8);v[a>>2]=180;v[a+4>>2]=1;P(111932,23014,3,112064,79173,67,a|0,0);O(112096,112108,112124,111556,77863,73,77863,72,77863,71,2298,77868,70);a=laa(8);v[a>>2]=124;v[a+4>>2]=1;P(112096,22986,3,112140,79173,74,a|0,0);a=laa(8);v[a>>2]=132;v[a+4>>2]=1;P(112096,22971,3,112140,79173,74,a|0,0);a=laa(8);v[a>>2]=140;v[a+4>>2]=1;P(112096,23001,3,112140,79173,74,a|0,0);a=laa(8);v[a>>2]=148;v[a+4>>2]=1;P(112096,3288,3,112140,79173,74,a|0,0);a=laa(8);v[a>>2]=156;v[a+4>>2]=1;P(112096,20072,3,112140,79173,74,a|0,0);a=laa(4);v[a>>2]=75;P(112096,20382,4,112160,79349,76,a|0,0);O(112176,112188,112204,111556,77863,80,77863,79,77863,78,2364,77868,77);a=laa(4);v[a>>2]=81;P(112176,2791,6,112224,79601,82,a|0,0);a=laa(4);v[a>>2]=83;P(112176,2568,6,112256,79341,84,a|0,0);a=laa(4);v[a>>2]=85;P(112176,20403,4,112288,79349,86,a|0,0);a=laa(8);v[a>>2]=148;v[a+4>>2]=1;P(112176,23044,3,112304,79173,87,a|0,0);a=laa(8);v[a>>2]=156;v[a+4>>2]=1;P(112176,23014,3,112304,79173,87,a|0,0);O(112316,112328,112344,111556,77863,91,77863,90,77863,89,2402,77868,88);a=laa(4);v[a>>2]=92;P(112316,14223,4,112368,79122,93,a|0,0);a=laa(4);v[a>>2]=94;P(112316,2770,5,112384,79669,95,a|0,0);a=laa(4);v[a>>2]=96;P(112316,2749,5,112416,79334,97,a|0,0);a=laa(4);v[a>>2]=98;P(112316,2600,7,112448,79676,99,a|0,0);a=laa(4);v[a>>2]=100;P(112316,2581,7,112480,79685,101,a|0,0);a=laa(4);v[a>>2]=102;P(112316,2550,5,112416,79334,97,a|0,0);a=laa(4);v[a>>2]=103;P(112316,2532,6,112512,79341,104,a|0,0);a=laa(4);v[a>>2]=105;P(112316,2637,5,112416,79334,97,a|0,0);a=laa(4);v[a>>2]=106;P(112316,2619,6,112512,79341,104,a|0,0);a=laa(4);v[a>>2]=107;P(112316,2680,7,112544,79694,108,a|0,0);a=laa(4);v[a>>2]=109;P(112316,2655,8,112576,79703,110,a|0,0);a=laa(4);v[a>>2]=111;P(112316,20683,6,112608,79601,112,a|0,0);a=laa(4);v[a>>2]=113;P(112316,14320,4,112640,79122,114,a|0,0);a=laa(8);v[a>>2]=196;v[a+4>>2]=1;P(112316,1249,5,112656,79160,115,a|0,0);a=laa(8);v[a>>2]=204;v[a+4>>2]=1;P(112316,23044,3,112676,79173,116,a|0,0);a=laa(8);v[a>>2]=212;v[a+4>>2]=1;P(112316,23014,3,112676,79173,116,a|0,0);O(110888,112688,112704,0,77863,118,77866,0,77866,0,16313,77868,117);O(112720,112732,112748,110888,77863,122,77863,121,77863,120,4722,77868,119);T(112720,1,112764,77863,124,123);O(111016,112792,112808,0,77863,126,77866,0,77866,0,22603,77868,125);T(111016,1,112824,77863,128,127);a=laa(4);v[a>>2]=4;b=laa(4);v[b>>2]=4;U(111016,24115,110372,79925,130,a|0,110372,79173,129,b|0);V(111652,63958,79929,132,77868,131);a=laa(4);v[a>>2]=0;b=laa(4);v[b>>2]=0;W(111652,2095,110372,79925,134,a|0,110372,79173,133,b|0);a=laa(4);v[a>>2]=4;b=laa(4);v[b>>2]=4;W(111652,1594,110372,79925,134,a|0,110372,79173,133,b|0);a=laa(4);v[a>>2]=8;b=laa(4);v[b>>2]=8;W(111652,1024,110372,79925,134,a|0,110372,79173,133,b|0);X(111652);O(112828,112836,112852,0,77863,592,77866,0,77866,0,4597,77868,591);T(112828,1,112868,77863,594,593);a=laa(8);v[a+4>>2]=0;v[a>>2]=595;P(112828,16410,3,112872,80090,596,a|0,0);a=laa(8);v[a+4>>2]=0;v[a>>2]=597;P(112828,20628,4,112896,79122,598,a|0,0);a=laa(8);v[a+4>>2]=0;v[a>>2]=599;P(112828,20630,2,112912,78942,600,a|0,0);a=laa(4);v[a>>2]=601;P(112828,3006,3,112920,78079,602,a|0,0);a=laa(4);v[a>>2]=603;P(112828,2987,4,112944,77951,604,a|0,0);V(111660,3062,79929,136,77868,135);a=laa(4);v[a>>2]=0;b=laa(4);v[b>>2]=0;W(111660,2095,110372,79925,138,a|0,110372,79173,137,b|0);a=laa(4);v[a>>2]=4;b=laa(4);v[b>>2]=4;W(111660,1594,110372,79925,138,a|0,110372,79173,137,b|0);a=laa(4);v[a>>2]=8;b=laa(4);v[b>>2]=8;W(111660,1024,110372,79925,138,a|0,110372,79173,137,b|0);a=laa(4);v[a>>2]=12;b=laa(4);v[b>>2]=12;W(111660,2097,110372,79925,138,a|0,110372,79173,137,b|0);X(111660);V(112960,14755,79929,140,77868,139);a=laa(4);v[a>>2]=16;b=laa(4);v[b>>2]=16;W(112960,14580,111652,78942,142,a|0,111652,80090,141,b|0);a=laa(4);v[a>>2]=0;b=laa(4);v[b>>2]=0;W(112960,14469,111660,78942,144,a|0,111660,80090,143,b|0);X(112960);V(112968,63965,79929,146,77868,145);a=laa(4);v[a>>2]=0;b=laa(4);v[b>>2]=0;W(112968,2095,110384,80142,148,a|0,110384,80146,147,b|0);a=laa(4);v[a>>2]=8;b=laa(4);v[b>>2]=8;W(112968,1594,110384,80142,148,a|0,110384,80146,147,b|0);a=laa(4);v[a>>2]=16;b=laa(4);v[b>>2]=16;W(112968,1024,110384,80142,148,a|0,110384,80146,147,b|0);X(112968);Y(112976,62172,4,0);Z(112976,1056,0);Y(112984,22807,4,0);Z(112984,62959,0);Z(112984,62787,1);Z(112984,62933,2);Z(112984,62567,3);O(111184,111192,112992,0,77863,150,77866,0,77866,0,24390,77868,149);T(111184,2,113008,78942,152,151);a=laa(4);v[a>>2]=0;b=laa(4);v[b>>2]=0;U(111184,1026,111652,78942,154,a|0,111652,80090,153,b|0);O(110864,110872,113016,0,77863,156,77866,0,77866,0,14608,77868,155);a=laa(8);v[a>>2]=0;v[a+4>>2]=1;P(110864,21820,2,113032,78919,157,a|0,0);O(113040,113048,113064,0,77863,159,77866,0,77866,0,4244,77868,158);Y(113080,20601,4,0);Z(113080,77673,1);Z(113080,63020,2);Z(113080,62439,4);Z(113080,62966,8);Z(113080,62638,64);Z(113080,62749,128);Z(113080,62910,256);Z(113080,62650,512);Z(113080,62497,1024);Z(113080,62236,2048);Z(113080,62276,4096);Z(113080,62609,16384);Z(113080,62534,32768);O(113088,113096,113112,0,77863,161,77866,0,77866,0,22472,77868,160);a=laa(8);v[a>>2]=240;v[a+4>>2]=1;P(113088,1034,3,113128,80090,162,a|0,0);a=laa(8);v[a>>2]=244;v[a+4>>2]=1;P(113088,1045,2,113140,78942,163,a|0,0);a=laa(8);v[a>>2]=44;v[a+4>>2]=1;P(113088,4652,4,113152,79122,164,a|0,0);a=laa(8);v[a>>2]=56;v[a+4>>2]=1;P(113088,4627,4,113200,79122,165,a|0,0);a=laa(8);v[a>>2]=448;v[a+4>>2]=1;P(113088,2501,2,113216,78942,166,a|0,0);a=laa(8);v[a>>2]=80;v[a+4>>2]=1;P(113088,3442,6,113248,78225,167,a|0,0);a=laa(8);v[a>>2]=284;v[a+4>>2]=1;P(113088,1596,3,113312,80090,168,a|0,0);a=laa(4);v[a>>2]=169;P(113088,22827,3,113332,79173,170,a|0,0);a=laa(8);v[a>>2]=216;v[a+4>>2]=1;P(113088,14640,3,113344,78079,171,a|0,0);a=laa(4);v[a>>2]=172;P(113088,22906,2,113356,78919,173,a|0,0);a=laa(4);v[a>>2]=174;P(113088,3240,3,113364,78079,175,a|0,0);a=laa(4);v[a>>2]=176;P(113088,20893,4,113376,79349,177,a|0,0);a=laa(8);v[a>>2]=348;v[a+4>>2]=1;P(113088,2116,10,113392,80891,178,a|0,0);a=laa(4);v[a>>2]=179;P(113088,1564,5,113504,80903,180,a|0,0);a=laa(4);v[a>>2]=181;P(113088,22570,7,113536,81001,182,a|0,0);a=laa(8);v[a>>2]=352;v[a+4>>2]=1;P(113088,13992,12,113616,81073,183,a|0,0);a=laa(4);v[a>>2]=184;P(113088,1575,7,113680,81087,185,a|0,0);a=laa(4);v[a>>2]=186;P(113088,22584,8,113712,81117,187,a|0,0);a=laa(4);v[a>>2]=188;P(113088,5182,3,113756,80090,189,a|0,0);a=laa(4);v[a>>2]=190;P(113088,5148,3,113756,80090,189,a|0,0);a=laa(4);v[a>>2]=191;P(113088,5255,2,113776,78942,192,a|0,0);O(113584,113808,113824,0,77863,194,77866,0,77866,0,2828,77868,193);a=laa(4);v[a>>2]=16;b=laa(4);v[b>>2]=16;U(113584,14271,111652,78942,196,a|0,111652,80090,195,b|0);a=laa(4);v[a>>2]=28;b=laa(4);v[b>>2]=28;U(113584,14922,111652,78942,196,a|0,111652,80090,195,b|0);a=laa(4);v[a>>2]=40;b=laa(4);v[b>>2]=40;U(113584,22962,110372,79925,198,a|0,110372,79173,197,b|0);O(113596,113840,113856,113584,77863,202,77863,201,77863,200,2804,77868,199);T(113596,1,113872,77863,204,203);a=laa(4);v[a>>2]=205;P(113596,21964,2,113876,78942,206,a|0,0);O(113432,113884,113900,0,77863,208,77866,0,77866,0,16269,77868,207);a=laa(4);v[a>>2]=4;b=laa(4);v[b>>2]=4;U(113432,16254,113596,78942,210,a|0,113596,80090,209,b|0);a=laa(4);v[a>>2]=68;b=laa(4);v[b>>2]=68;U(113432,16260,110208,78942,212,a|0,110208,80090,211,b|0);O(113948,113960,113976,113432,77863,216,77863,215,77863,214,4965,77868,213);a=laa(4);v[a>>2]=217;P(113948,14356,2,113992,78919,218,a|0,0);S(113432,2491,4,114e3,77951,220,219);S(113432,23199,3,111536,78079,31,221);O(114072,114084,114100,113432,77863,225,77863,224,77863,223,5279,77868,222);T(114072,1,114116,77863,227,226);R(3586,2,114144,78942,229,228);O(113744,114152,114168,113584,77863,233,77863,232,77863,231,2817,77868,230);T(113744,1,114184,77863,235,234);a=laa(4);v[a>>2]=236;P(113744,21964,2,114188,78942,237,a|0,0);a=laa(4);v[a>>2]=238;P(113744,4618,2,114196,78942,239,a|0,0);O(113672,114204,114220,0,77863,241,77866,0,77866,0,16394,77868,240);a=laa(4);v[a>>2]=4;b=laa(4);v[b>>2]=4;U(113672,16254,113744,78942,243,a|0,113744,80090,242,b|0);a=laa(4);v[a>>2]=52;b=laa(4);v[b>>2]=52;U(113672,16260,110208,78942,245,a|0,110208,80090,244,b|0);O(114268,114280,114296,113672,77863,249,77863,248,77863,247,5052,77868,246);a=laa(4);v[a>>2]=250;P(114268,14356,2,114312,78919,251,a|0,0);S(113672,2491,4,114320,77951,253,252);S(113672,23199,3,111536,78079,31,254);O(114392,114404,114420,113672,77863,258,77863,257,77863,256,5295,77868,255);T(114392,1,114436,77863,260,259);R(3612,2,114464,78942,262,261);O(113440,114472,114488,0,77863,264,77866,0,77866,0,4124,77868,263);T(113440,2,114504,78942,266,265);Y(114512,20443,4,0);Z(114512,62258,1027);Z(114512,62394,128);Z(114512,62895,32);O(113448,114520,114536,0,77863,268,77866,0,77866,0,24605,77868,267);T(113448,1,114552,77863,270,269);a=laa(4);v[a>>2]=16;b=laa(4);v[b>>2]=16;U(113448,4024,114556,78942,272,a|0,114556,80090,271,b|0);O(114556,114564,114580,0,77863,274,77866,0,77866,0,4076,77868,273);T(114556,2,114596,78942,276,275);Y(114604,20294,4,0);Z(114604,62267,16);Z(114604,63051,2);Z(114604,63032,1);Z(114604,62674,32);Y(114612,21911,4,0);Z(114612,62880,0);Z(114612,62667,2);Z(114612,62684,1);O(113456,113464,114620,0,77863,278,77866,0,77866,0,16372,77868,277);O(114668,114680,114696,113456,77863,282,77863,281,77863,280,5023,77868,279);a=laa(4);v[a>>2]=283;P(114668,14356,2,114712,78919,284,a|0,0);S(113456,2491,2,114720,78942,286,285);S(113456,23199,3,111536,78079,31,287);O(113480,114844,113488,0,77863,289,77866,0,77866,0,22652,77868,288);Y(114860,22697,4,0);Z(114860,62950,0);Z(114860,62600,1);Z(114860,62198,3);Z(114860,62183,2);O(111156,114868,114884,0,77863,291,77866,0,77866,0,14935,77868,290);a=laa(8);v[a+4>>2]=1;v[a>>2]=0;P(111156,21820,2,114900,78919,292,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=32;P(111156,14394,3,114908,79173,293,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=40;P(111156,14376,3,114908,79173,293,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=48;P(111156,14166,3,114908,79173,293,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=68;P(111156,22737,3,114920,80090,294,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=76;P(111156,22711,3,114920,80090,294,a|0,0);O(114932,114940,114956,0,77863,606,77866,0,77866,0,14929,77868,605);T(114932,1,114972,77863,608,607);a=laa(8);v[a+4>>2]=0;v[a>>2]=609;P(114932,16410,3,114976,80090,610,a|0,0);a=laa(8);v[a+4>>2]=0;v[a>>2]=611;P(114932,20628,4,114992,79122,612,a|0,0);a=laa(8);v[a+4>>2]=0;v[a>>2]=613;P(114932,20630,2,115008,78942,614,a|0,0);a=laa(4);v[a>>2]=615;P(114932,3006,3,115016,78079,616,a|0,0);a=laa(4);v[a>>2]=617;P(114932,2987,4,115040,77951,618,a|0,0);O(111508,111520,114800,0,77863,296,77866,0,77866,0,21956,77868,295);a=laa(8);v[a+4>>2]=1;v[a>>2]=0;P(111508,21820,2,115056,78919,297,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=116;P(111508,2932,3,115064,79173,298,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=120;P(111508,2949,2,115076,79925,299,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=156;P(111508,4144,2,115084,78942,300,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=148;P(111508,20453,4,115104,79122,301,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=152;P(111508,4135,3,115128,80090,302,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=76;P(111508,21466,3,115140,80090,303,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=36;P(111508,1306,3,115152,80090,304,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=44;P(111508,1280,3,115164,78079,305,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=48;P(111508,1379,3,115188,78079,306,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=56;P(111508,1413,3,115212,78079,307,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=52;P(111508,1448,3,115236,78079,308,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=84;P(111508,24674,3,115260,80090,309,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=92;P(111508,24623,3,115260,80090,309,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=96;P(111508,24642,2,115272,78942,310,a|0,0);a=laa(4);v[a>>2]=311;P(111508,4011,3,115280,80090,312,a|0,0);O(110916,111e3,115292,0,77863,314,77866,0,77866,0,4548,77868,313);a=laa(8);v[a+4>>2]=1;v[a>>2]=8;P(110916,21820,2,115308,78919,315,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=20;P(110916,22621,2,115316,78942,316,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=72;P(110916,22480,3,115324,78079,317,a|0,0);a=laa(8);v[a+4>>2]=0;v[a>>2]=318;P(110916,21997,6,115344,78225,319,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=120;P(110916,14958,5,115376,83134,320,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=88;P(110916,24485,3,115396,78079,321,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=84;P(110916,24452,3,115448,78079,322,a|0,0);a=laa(4);v[a>>2]=323;P(110916,2347,8,115472,78666,324,a|0,0);a=laa(4);v[a>>2]=325;P(110916,2278,8,115504,78666,326,a|0,0);a=laa(4);v[a>>2]=327;P(110916,2241,8,115536,78666,328,a|0,0);a=laa(4);v[a>>2]=329;P(110916,2314,8,115568,78666,330,a|0,0);a=laa(4);v[a>>2]=331;P(110916,2381,8,115600,78666,332,a|0,0);a=laa(4);v[a>>2]=333;P(110916,2412,8,115632,78666,334,a|0,0);O(115092,115664,115680,0,77863,336,77866,0,77866,0,4231,77868,335);T(115092,2,115696,78942,338,337);a=laa(8);v[a+4>>2]=0;v[a>>2]=339;P(115092,3010,3,115704,78079,340,a|0,0);Y(115120,20589,4,0);Z(115120,62862,1);Z(115120,62828,2);Z(115120,62847,4);Z(115120,62519,8);Y(115716,20461,4,0);Z(115716,62155,2);O(110896,115724,115740,0,77863,342,77866,0,77866,0,16333,77868,341);O(146064,115756,115772,110896,77863,346,77863,345,77863,344,16349,77868,343);T(146064,1,115788,77863,348,347);O(111040,111048,115792,0,77863,350,77866,0,77866,0,20224,77868,349);a=laa(4);v[a>>2]=351;P(111040,16446,4,115808,77951,352,a|0,0);a=laa(4);v[a>>2]=353;P(111040,5309,5,115856,83520,354,a|0,0);a=laa(4);v[a>>2]=355;P(111040,16463,8,115888,78666,356,a|0,0);O(111064,115948,115964,0,77863,358,77866,0,77866,0,3995,77868,357);T(111064,2,115980,78942,360,359);O(110936,115988,116004,0,77863,362,77866,0,77866,0,5196,77868,361);O(113168,116020,113180,0,77863,364,77866,0,77866,0,21878,77868,363);O(116036,116044,116060,0,77863,366,77866,0,77866,0,15834,77868,365);O(110944,110956,116076,110936,77863,370,77863,369,77863,368,5212,77868,367);O(111272,116092,116108,0,77863,372,77866,0,77866,0,24661,77868,371);T(111272,5,116128,83520,374,373);a=laa(4);v[a>>2]=0;b=laa(4);v[b>>2]=0;U(111272,64256,110292,78942,376,a|0,110292,80090,375,b|0);a=laa(4);v[a>>2]=4;b=laa(4);v[b>>2]=4;U(111272,64115,110292,78942,376,a|0,110292,80090,375,b|0);a=laa(4);v[a>>2]=8;b=laa(4);v[b>>2]=8;U(111272,64066,110292,78942,376,a|0,110292,80090,375,b|0);a=laa(4);v[a>>2]=12;b=laa(4);v[b>>2]=12;U(111272,63952,110292,78942,376,a|0,110292,80090,375,b|0);O(111280,116148,116164,0,77863,378,77866,0,77866,0,4153,77868,377);O(111264,116180,116196,0,77863,380,77866,0,77866,0,4165,77868,379);Y(116212,20486,4,0);Y(116220,20497,4,0);O(111096,113280,116228,0,77863,382,77866,0,77866,0,4610,77868,381);a=laa(8);v[a+4>>2]=1;v[a>>2]=44;P(111096,20473,4,116256,79122,383,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=0;P(111096,21820,2,116272,78919,384,a|0,0);O(111108,111616,114816,111096,77863,388,77863,387,77863,386,4639,77868,385);a=laa(8);v[a+4>>2]=1;v[a>>2]=84;P(111108,21973,3,116280,78079,389,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=88;P(111108,21985,4,116304,79122,390,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=76;P(111108,21511,2,116320,78942,391,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=80;P(111108,21497,4,116336,79122,392,a|0,0);a=laa(4);v[a>>2]=393;P(111108,21964,2,116352,78942,394,a|0,0);a=laa(4);v[a>>2]=395;P(111108,24623,3,116360,80090,396,a|0,0);a=laa(4);v[a>>2]=397;P(111108,24642,3,116372,78079,398,a|0,0);O(111120,111132,116384,111108,77863,402,77863,401,77863,400,24438,77868,399);O(115408,116400,116416,111108,77863,406,77863,405,77863,404,1584,77868,403);a=laa(8);v[a+4>>2]=1;v[a>>2]=148;P(115408,20083,3,116432,79173,407,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=152;P(115408,20101,2,116444,79925,408,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=140;P(115408,20119,3,116432,79173,407,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=144;P(115408,20136,2,116444,79925,408,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=168;P(115408,1119,4,116464,79122,409,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=164;P(115408,1138,2,116480,78942,410,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=160;P(115408,1157,4,116464,79122,409,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=156;P(115408,1175,2,116480,78942,410,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=172;P(115408,1075,3,116432,79173,407,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=176;P(115408,1097,2,116444,79925,408,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=228;P(115408,1193,3,116432,79173,407,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=232;P(115408,1221,2,116444,79925,408,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=116;P(115408,3416,3,116432,79173,407,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=120;P(115408,3424,2,116444,79925,408,a|0,0);a=laa(4);v[a>>2]=411;P(115408,21479,3,116488,80090,412,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=128;P(115408,4741,3,116500,80090,413,a|0,0);a=laa(4);v[a>>2]=414;P(115408,20692,3,116488,80090,412,a|0,0);a=laa(4);v[a>>2]=415;P(115408,22849,3,116488,80090,412,a|0,0);a=laa(4);v[a>>2]=416;P(115408,3686,4,116512,79122,417,a|0,0);a=laa(4);v[a>>2]=418;P(115408,3798,4,116512,79122,417,a|0,0);a=laa(4);v[a>>2]=419;P(115408,3774,4,116512,79122,417,a|0,0);a=laa(4);v[a>>2]=420;P(115408,3670,4,116512,79122,417,a|0,0);a=laa(4);v[a>>2]=421;P(115408,3753,4,116512,79122,417,a|0,0);a=laa(4);v[a>>2]=422;P(115408,3727,4,116512,79122,417,a|0,0);a=laa(4);v[a>>2]=423;P(115408,3653,3,116528,78079,424,a|0,0);a=laa(4);v[a>>2]=425;P(115408,3700,3,116528,78079,424,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=208;P(115408,20322,4,116544,79122,426,a|0,0);a=laa(4);v[a>>2]=427;P(115408,4106,2,116568,78942,428,a|0,0);a=laa(4);v[a>>2]=429;P(115408,24714,3,116576,84215,430,a|0,0);O(115420,115432,116588,115408,77863,434,77863,433,77863,432,24470,77868,431);a=laa(8);v[a+4>>2]=1;v[a>>2]=260;P(115420,23254,3,116604,79173,435,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=264;P(115420,23272,2,116616,79925,436,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=304;P(115420,3126,4,116624,79122,437,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=296;P(115420,14053,2,116640,78919,438,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=288;P(115420,4896,3,116604,79173,435,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=256;P(115420,20153,2,116648,78942,439,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=300;P(115420,14042,2,116640,78919,438,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=292;P(115420,4911,2,116616,79925,436,a|0,0);a=laa(4);v[a>>2]=440;P(115420,2991,4,116656,79122,441,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=280;P(115420,20565,4,116672,79122,442,a|0,0);a=laa(4);v[a>>2]=443;P(115420,4206,3,116696,80090,444,a|0,0);O(116708,116716,116732,0,77863,446,77866,0,77866,0,4089,77868,445);Y(116560,20306,4,0);Z(116560,63040,1);Z(116560,62337,2);Z(116560,63020,4);Z(116560,62476,8);Z(116560,62203,16);Z(116560,62996,32);Z(116560,62796,64);Z(116560,62315,128);O(113664,116748,116764,0,77863,448,77866,0,77866,0,1295,77868,447);O(115176,116780,116796,113664,77863,452,77863,451,77863,450,1266,77868,449);T(115176,1,116812,77863,454,453);T(115176,4,116816,84522,456,455);a=laa(8);v[a+4>>2]=0;v[a>>2]=457;P(115176,23309,2,116832,78942,458,a|0,0);a=laa(4);v[a>>2]=4;b=laa(4);v[b>>2]=4;U(115176,3228,111652,78942,460,a|0,111652,80090,459,b|0);O(115200,116840,116856,113664,77863,464,77863,463,77863,462,1362,77868,461);T(115200,1,116872,77863,466,465);T(115200,2,116876,84585,468,467);a=laa(4);v[a>>2]=4;b=laa(4);v[b>>2]=4;U(115200,3084,110372,79925,470,a|0,110372,79173,469,b|0);a=laa(8);v[a+4>>2]=0;v[a>>2]=471;P(115200,23309,2,116884,78942,472,a|0,0);O(115248,116892,116908,113664,77863,476,77863,475,77863,474,1430,77868,473);T(115248,3,116924,84648,478,477);a=laa(4);v[a>>2]=4;b=laa(4);v[b>>2]=4;U(115248,3084,110372,79925,480,a|0,110372,79173,479,b|0);a=laa(4);v[a>>2]=8;b=laa(4);v[b>>2]=8;U(115248,2893,110372,79925,480,a|0,110372,79173,479,b|0);a=laa(8);v[a+4>>2]=0;v[a>>2]=481;P(115248,23309,2,116936,78942,482,a|0,0);O(115224,116944,116960,113664,77863,486,77863,485,77863,484,1397,77868,483);T(115224,1,116976,77863,488,487);O(115920,115932,116980,0,77863,490,77866,0,77866,0,16477,77868,489);a=laa(8);v[a+4>>2]=1;v[a>>2]=0;P(115920,21820,2,116996,78919,491,a|0,0);O(117004,117016,117032,113664,77863,495,77863,494,77863,493,1339,77868,492);T(117004,4,117056,77951,497,496);O(117080,117088,117104,0,77863,499,77866,0,77866,0,4056,77868,498);T(117080,2,117120,78942,501,500);Y(117128,20275,4,0);Z(117128,62982,2);O(115824,115836,117136,0,77863,503,77866,0,77866,0,16433,77868,502);a=laa(8);v[a+4>>2]=1;v[a>>2]=0;P(115824,21820,2,117152,78919,504,a|0,0);O(117160,117172,117188,113664,77863,508,77863,507,77863,506,1318,77868,505);T(117160,4,117216,77951,510,509);O(117072,117240,117256,0,77863,512,77866,0,77866,0,22640,77868,511);T(117072,3,117272,78079,514,513);O(117232,117284,117300,0,77863,516,77866,0,77866,0,4030,77868,515);T(117232,2,117316,78942,518,517);Y(117324,20250,4,0);Z(117324,62411,1);O(111148,117332,117348,0,77863,520,77866,0,77866,0,22492,77868,519);T(111148,5,117376,85456,522,521);Y(117396,21934,4,0);Z(117396,62193,0);Z(117396,62886,1);Y(117404,22779,4,0);Z(117404,62727,0);Z(117404,62691,1);Y(117412,20510,4,0);Z(117412,62377,1);Z(117412,62425,2);Z(117412,62460,4);O(117420,117428,117444,0,77863,524,77866,0,77866,0,4179,77868,523);T(117420,2,117460,78942,526,525);a=laa(8);v[a+4>>2]=0;v[a>>2]=527;P(117420,3010,3,117468,78079,528,a|0,0);O(113784,113792,117480,0,77863,530,77866,0,77866,0,5235,77868,529);a=laa(8);v[a+4>>2]=1;v[a>>2]=20;P(113784,3478,2,117496,78919,531,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=16;P(113784,5165,3,117504,78079,532,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=44;P(113784,3924,4,117552,79349,533,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=48;P(113784,14592,4,117600,85913,534,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=52;P(113784,22545,3,117616,80090,535,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=56;P(113784,3636,3,117616,80090,535,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=60;P(113784,20184,3,117616,80090,535,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=64;P(113784,14669,3,117628,80090,536,a|0,0);O(117532,117640,117656,0,77863,538,77866,0,77866,0,24349,77868,537);a=laa(8);v[a+4>>2]=1;v[a>>2]=0;P(117532,23309,2,117672,78942,539,a|0,0);a=laa(8);v[a+4>>2]=0;v[a>>2]=540;P(117532,21926,2,117680,78942,541,a|0,0);a=laa(4);v[a>>2]=8;b=laa(4);v[b>>2]=8;U(117532,14271,112968,78942,543,a|0,112968,80090,542,b|0);a=laa(4);v[a>>2]=32;b=laa(4);v[b>>2]=32;U(117532,14413,111652,78942,545,a|0,111652,80090,544,b|0);a=laa(4);v[a>>2]=44;b=laa(4);v[b>>2]=44;U(117532,2705,110372,79925,547,a|0,110372,79173,546,b|0);a=laa(4);v[a>>2]=48;b=laa(4);v[b>>2]=48;U(117532,2873,110372,79925,547,a|0,110372,79173,546,b|0);a=laa(4);v[a>>2]=52;b=laa(4);v[b>>2]=52;U(117532,2859,110372,79925,547,a|0,110372,79173,546,b|0);a=laa(4);v[a>>2]=56;b=laa(4);v[b>>2]=56;U(117532,2918,110372,79925,547,a|0,110372,79173,546,b|0);a=laa(4);v[a>>2]=60;b=laa(4);v[b>>2]=60;U(117532,2966,110372,79925,547,a|0,110372,79173,546,b|0);a=laa(4);v[a>>2]=64;b=laa(4);v[b>>2]=64;U(117532,1067,110372,79925,547,a|0,110372,79173,546,b|0);a=laa(4);v[a>>2]=68;b=laa(4);v[b>>2]=68;U(117532,20617,110372,79925,547,a|0,110372,79173,546,b|0);a=laa(4);v[a>>2]=72;b=laa(4);v[b>>2]=72;U(117532,16420,110372,79925,547,a|0,110372,79173,546,b|0);a=laa(4);v[a>>2]=548;P(117532,22760,3,117688,78079,549,a|0,0);a=laa(4);v[a>>2]=550;P(117532,14946,3,117700,78079,551,a|0,0);a=laa(4);v[a>>2]=92;b=laa(4);v[b>>2]=92;U(117532,5075,110208,78942,553,a|0,110208,80090,552,b|0);O(117712,117724,117740,117532,77863,557,77863,556,77863,555,24366,77868,554);T(117712,1,117756,77863,559,558);a=laa(8);v[a+4>>2]=1;v[a>>2]=0;P(117712,23309,2,117784,78942,560,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=12;P(117712,2519,2,117792,78919,561,a|0,0);a=laa(4);v[a>>2]=104;b=laa(4);v[b>>2]=104;U(117712,3084,110372,79925,563,a|0,110372,79173,562,b|0);a=laa(4);v[a>>2]=108;b=laa(4);v[b>>2]=108;U(117712,2842,110372,79925,563,a|0,110372,79173,562,b|0);a=laa(4);v[a>>2]=564;P(117712,22681,3,117800,78079,565,a|0,0);O(113768,117516,117820,0,77863,567,77866,0,77866,0,5100,77868,566);a=laa(8);v[a+4>>2]=1;v[a>>2]=4;P(113768,21820,2,117836,78919,568,a|0,0);a=laa(4);v[a>>2]=569;P(113768,20536,4,117856,77951,570,a|0,0);a=laa(4);v[a>>2]=571;P(113768,20635,5,117872,86143,572,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=12;P(113768,14296,3,117892,78079,573,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=16;P(113768,14308,2,117904,78942,574,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=20;P(113768,14280,3,117892,78079,573,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=32;P(113768,2977,3,117912,79173,575,a|0,0);a=laa(4);v[a>>2]=576;P(113768,22760,3,117924,80090,577,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=52;P(113768,2932,3,117912,79173,575,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=60;P(113768,14425,3,117936,80090,578,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=68;P(113768,2716,3,117912,79173,575,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=72;P(113768,22665,2,117836,78919,568,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=96;P(113768,20628,3,117912,79173,575,a|0,0);a=laa(8);v[a+4>>2]=1;v[a>>2]=72;P(113768,22665,2,117836,78919,568,a|0,0);a=laa(4);v[a>>2]=579;P(113768,24623,3,117948,80090,580,a|0,0);a=laa(4);v[a>>2]=581;P(113768,24642,3,117960,78079,582,a|0,0);a=laa(4);v[a>>2]=583;P(113768,3091,3,117972,79173,584,a|0,0);a=laa(4);v[a>>2]=585;P(113768,2849,3,117972,79173,584,a|0,0);a=laa(4);v[a>>2]=586;P(113768,22681,3,117984,78079,587,a|0,0);a=laa(4);v[a>>2]=588;P(113768,2904,3,117972,79173,584,a|0,0);a=laa(4);v[a>>2]=589;P(113768,2452,3,117972,79173,584,a|0,0);a=laa(4);v[a>>2]=590;P(113768,2470,3,117972,79173,584,a|0,0);I9(149728,1,1024);v[37690]=0;v[37691]=0;v[37688]=0;v[37689]=0;y9();v[37900]=150840;v[37882]=42}function Q4(a){var b=0,c=0,d=0,e=0,f=C(0),g=0,h=C(0),i=C(0),j=0,k=0,l=0,m=0,n=C(0),o=0,p=0,q=C(0),r=C(0),s=C(0),D=C(0),E=0,F=C(0),G=0,H=0,I=C(0),J=C(0),L=0,M=C(0),N=0,O=C(0),P=0,Q=0,R=C(0),S=0,T=C(0),U=C(0),V=0,W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=C(0),ca=C(0),da=0,ea=0,fa=C(0),ga=C(0),ha=0,ia=0,ja=0,ka=C(0),la=0,ma=C(0),na=C(0),oa=C(0);E=xa-128|0;xa=E;v[E+120>>2]=0;v[E+112>>2]=0;v[E+116>>2]=0;c=v[v[a+32>>2]+92>>2];a:{if(!c){break a}R4(E+112|0,c);W=v[a+32>>2];if(!v[W+92>>2]){break a}while(1){c=v[v[W+88>>2]+(b<<2)>>2];b:{if(v[c+48>>2]){break b}q=z[c+12>>2];z[E+16>>2]=q;i=z[c+16>>2];z[E+20>>2]=i;f=z[c+20>>2];z[E+24>>2]=f;r=C(-z[c+40>>2]);z[E+28>>2]=r;h=z[c+44>>2];if(h>C(0)){r=C(r-h);z[E+28>>2]=r}c=v[E+116>>2];if(c>>>0>=(v[E+120>>2]&2147483647)>>>0){S4(E+112|0,E+16|0);W=v[a+32>>2];break b}d=v[E+112>>2]+(c<<4)|0;z[d+12>>2]=r;z[d+8>>2]=f;z[d+4>>2]=i;z[d>>2]=q;v[E+116>>2]=c+1}b=b+1|0;if(b>>>0>2]){continue}break}}v[E+48>>2]=0;v[E+40>>2]=0;v[E+44>>2]=0;v[E+32>>2]=0;v[E+36>>2]=0;v[E+24>>2]=0;v[E+28>>2]=0;v[E+16>>2]=0;v[E+20>>2]=0;u[E+54>>1]=255;u[E+56>>1]=255;H=E+16|0;T4(a,H);u[E+52>>1]=x[v[a+4>>2]+36>>1];p=E- -64|0;c=0;h=C(0);r=C(0);k=xa-336|0;xa=k;N=v[H+4>>2];l=v[H+8>>2];c:{if(!l){break c}if((l|0)!=1){b=l&-2;while(1){g=N+B(c|1,12)|0;d=N+B(c,12)|0;h=C(z[g+8>>2]+C(z[d+8>>2]+h));r=C(z[g+4>>2]+C(z[d+4>>2]+r));I=C(z[g>>2]+C(z[d>>2]+I));c=c+2|0;G=G+2|0;if((b|0)!=(G|0)){continue}break}}if(!(l&1)){break c}c=N+B(c,12)|0;h=C(z[c+8>>2]+h);r=C(z[c+4>>2]+r);I=C(z[c>>2]+I)}o=v[H+16>>2];d=v[H+28>>2];f=C(C(1)/C(l>>>0));z[k+160>>2]=f*h;z[k+156>>2]=f*r;z[k+152>>2]=f*I;l=0;b=v[H+32>>2];d:{if(!b){break d}c=v[37696];j=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,7224,837)|0;if(!v[H+32>>2]){break d}c=0;while(1){t[c+j|0]=v[d+(c<<2)>>2];c=c+1|0;if(c>>>0>2]){continue}break}}G=v[H+20>>2];b=B(G,20);if(b){c=v[37696];l=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,7224,843)|0;G=v[H+20>>2]}if(G){c=0;while(1){b=B(c,20);L=b+o|0;g=v[L>>2];d=v[L+4>>2];e=b+l|0;b=v[L+12>>2];v[e+8>>2]=v[L+8>>2];v[e+12>>2]=b;v[e>>2]=g;v[e+4>>2]=d;t[e+18|0]=w[L+16|0];u[e+16>>1]=x[L+18>>1];c=c+1|0;if((c|0)!=(G|0)){continue}break}}u[k+134>>1]=0;u[k+136>>1]=0;u[k+138>>1]=0;u[k+140>>1]=0;v[k+128>>2]=0;v[k+132>>2]=0;v[k+120>>2]=0;v[k+124>>2]=0;v[k+112>>2]=0;v[k+116>>2]=0;v[k+104>>2]=0;v[k+108>>2]=0;u[k+142>>1]=255;u[k+144>>1]=255;v[k+108>>2]=v[H+4>>2];c=v[H+8>>2];v[k+132>>2]=j;v[k+124>>2]=G;v[k+120>>2]=l;v[k+112>>2]=c;v[k+136>>2]=v[H+32>>2];e:{f:{g:{h:{if(w[H+36|0]&64){if(X4(k+104|0,k+168|0,k+152|0)){break h}break g}if(!W4(k+104|0,k+168|0,k+152|0)){break g}}c=0;G=0;b=v[H+8>>2];d=b<<4;if(d){b=v[37696];G=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,24422,7224,866)|0;b=v[H+8>>2]}if(b){while(1){e=N+B(c,12)|0;g=v[e>>2];d=v[e+4>>2];b=v[e+12>>2];o=(c<<4)+G|0;v[o+8>>2]=v[e+8>>2];v[o+12>>2]=b;v[o>>2]=g;v[o+4>>2]=d;c=c+1|0;if(c>>>0>2]){continue}break}}z[k+80>>2]=A[k+224>>3];z[k+84>>2]=A[k+248>>3];z[k+92>>2]=A[k+232>>3];z[k+96>>2]=A[k+256>>3];z[k+64>>2]=A[k+192>>3];z[k+68>>2]=A[k+216>>3];z[k+72>>2]=A[k+240>>3];z[k+76>>2]=A[k+200>>3];z[k+88>>2]=A[k+208>>3];p9(k+8|0,k- -64|0,k+48|0);M=z[k+52>>2];J=C(M+M);q=z[k+56>>2];f=C(J*q);i=z[k+48>>2];s=C(i+i);F=z[k+60>>2];h=C(s*F);z[k+36>>2]=f-h;z[k+28>>2]=f+h;h=C(C(1)-C(i*s));D=C(M*J);z[k+40>>2]=h-D;f=h;h=C(q+q);n=C(q*h);z[k+24>>2]=f-n;q=C(s*q);i=C(J*F);z[k+32>>2]=q+i;f=C(s*M);h=C(h*F);z[k+20>>2]=f-h;z[k+16>>2]=q-i;z[k+12>>2]=f+h;z[k+8>>2]=C(C(1)-D)-n;g=v[H+8>>2];h=C(1e9);d=0;ma=z[k+176>>2];na=z[k+172>>2];oa=z[k+168>>2];while(1){c=(k+8|0)+B(d,12)|0;M=z[c+8>>2];s=z[c+4>>2];J=z[c>>2];o=0;while(1){f=C(C(C(o>>>0)*C(.3141592741012573))*C(.5));i=Q9(f);T=C(i*M);X=C(i*s);_=C(i*J);Y=G9(f);i:{if(!g){r=C(34028234663852886e22);ba=C(11754943508222875e-54);R=C(11754943508222875e-54);ca=C(11754943508222875e-54);fa=C(34028234663852886e22);ga=C(34028234663852886e22);break i}ka=C(C(Y*Y)+C(-.5));n=C(-X);q=C(-_);i=C(-T);ca=C(11754943508222875e-54);ga=C(34028234663852886e22);c=0;fa=C(34028234663852886e22);r=C(34028234663852886e22);R=C(11754943508222875e-54);ba=C(11754943508222875e-54);while(1){b=(c<<4)+G|0;Z=C(z[b+8>>2]-ma);O=C(z[b>>2]-oa);U=C(z[b+4>>2]-na);I=C(C(T*Z)+C(C(_*O)+C(X*U)));f=C(C(C(ka*Z)-C(Y*C(C(_*U)+C(O*n))))+C(T*I));F=C(f+f);ca=Fga?ga:F;fa=D>fa?fa:D;r=f>r?r:f;c=c+1|0;if((g|0)!=(c|0)){continue}break}}I=C(ba-r);D=C(R-fa);i=C(ca-ga);f=C(C(I*D)*i);if(f<=h){z[p+8>>2]=i;z[p+4>>2]=D;z[p>>2]=I;z[E+92>>2]=Y;z[E+88>>2]=T;z[E+84>>2]=X;z[E+80>>2]=_;Z=C(_+_);q=C(C(1)-C(_*Z));n=C(X+X);F=C(X*n);O=C(ca-C(i*C(.5)));i=C(Y*Z);h=C(n*T);U=C(R-C(D*C(.5)));D=C(Z*T);n=C(Y*n);I=C(ba-C(I*C(.5)));z[E+104>>2]=C(C(q-F)*O)+C(C(C(i+h)*U)+C(ma+C(C(D-n)*I)));R=C(C(h-i)*O);r=q;h=C(T+T);q=C(T*h);i=C(Z*X);h=C(Y*h);z[E+100>>2]=R+C(C(C(r-q)*U)+C(na+C(C(i+h)*I)));z[E+96>>2]=C(C(D+n)*O)+C(C(C(i-h)*U)+C(oa+C(C(C(C(1)-F)-q)*I)));h=f}o=o+1|0;if((o|0)!=20){continue}break}d=d+1|0;if((d|0)!=3){continue}break}if(G){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,G)}if(j){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,j)}if(l){break f}break e}if(j){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,j)}if(!l){break e}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,l)}xa=k+336|0;b=v[a+40>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+40>>2]=0;v[a+44>>2]=0;o=v[E+116>>2];b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?38869:63804;d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,40,c,13134,2254)|0;z[E+8>>2]=z[E+72>>2]*C(.5);z[E+4>>2]=z[E+68>>2]*C(.5);z[E>>2]=z[E+64>>2]*C(.5);e=xa-160|0;xa=e;v[d>>2]=0;v[d+4>>2]=0;v[d+36>>2]=E+112;v[d+32>>2]=0;l=d+24|0;v[l>>2]=0;v[l+4>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;c=E+80|0;M=z[c+4>>2];J=C(M+M);q=z[c+8>>2];f=C(J*q);i=z[c>>2];s=C(i+i);F=z[c+12>>2];h=C(s*F);z[e+52>>2]=f-h;z[e+44>>2]=f+h;h=C(C(1)-C(i*s));D=C(M*J);z[e+56>>2]=h-D;f=h;h=C(q+q);n=C(q*h);z[e+40>>2]=f-n;q=C(s*q);i=C(J*F);z[e+48>>2]=q+i;f=C(s*M);h=C(h*F);z[e+36>>2]=f-h;z[e+32>>2]=q-i;z[e+28>>2]=f+h;z[e+24>>2]=C(C(1)-D)-n;EV(e- -64|0,c+16|0,E,e+24|0,e+36|0,e+48|0);i=z[e+72>>2];z[e+16>>2]=i;f=z[e+68>>2];z[e+12>>2]=f;h=z[e+64>>2];z[e+8>>2]=h;c=v[d+8>>2]&2147483647;g=v[d+4>>2];j:{if(c>>>0<=g>>>0){I3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break j}b=v[d>>2]+B(g,12)|0;z[b+8>>2]=i;z[b+4>>2]=f;z[b>>2]=h;b=g+1|0;v[d+4>>2]=b}i=z[e+112>>2];z[e+8>>2]=i;f=z[e+120>>2];z[e+16>>2]=f;h=z[e+116>>2];z[e+12>>2]=h;k:{if(b>>>0>=c>>>0){I3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break k}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+100>>2];z[e+8>>2]=i;f=z[e+108>>2];z[e+16>>2]=f;h=z[e+104>>2];z[e+12>>2]=h;l:{if(b>>>0>=c>>>0){I3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break l}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+148>>2];z[e+8>>2]=i;f=z[e+156>>2];z[e+16>>2]=f;h=z[e+152>>2];z[e+12>>2]=h;m:{if(b>>>0>=c>>>0){I3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break m}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+76>>2];z[e+8>>2]=i;f=z[e+84>>2];z[e+16>>2]=f;h=z[e+80>>2];z[e+12>>2]=h;n:{if(b>>>0>=c>>>0){I3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break n}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+124>>2];z[e+8>>2]=i;f=z[e+132>>2];z[e+16>>2]=f;h=z[e+128>>2];z[e+12>>2]=h;o:{if(b>>>0>=c>>>0){I3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break o}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+88>>2];z[e+8>>2]=i;f=z[e+96>>2];z[e+16>>2]=f;h=z[e+92>>2];z[e+12>>2]=h;p:{if(b>>>0>=c>>>0){I3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break p}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+136>>2];z[e+8>>2]=i;f=z[e+144>>2];z[e+16>>2]=f;h=z[e+140>>2];z[e+12>>2]=h;q:{if(b>>>0>=c>>>0){I3(d,e+8|0);break q}c=v[d>>2]+B(b,12)|0;z[c+8>>2]=f;z[c+4>>2]=h;z[c>>2]=i;v[d+4>>2]=b+1}r=C(0);h=C(0);I=C(0);M=z[e+64>>2];D=C(z[e+112>>2]-M);s=z[e+68>>2];n=C(z[e+152>>2]-s);q=C(z[e+148>>2]-M);f=C(z[e+116>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+72>>2];i=C(z[e+156>>2]-F);O=C(f*i);f=C(z[e+120>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];r:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){S4(l,e+8|0);break r}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}r=C(0);h=C(0);I=C(0);M=z[e+88>>2];D=C(z[e+136>>2]-M);s=z[e+92>>2];n=C(z[e+128>>2]-s);q=C(z[e+124>>2]-M);f=C(z[e+140>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+96>>2];i=C(z[e+132>>2]-F);O=C(f*i);f=C(z[e+144>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];s:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){S4(l,e+8|0);break s}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}r=C(0);h=C(0);I=C(0);M=z[e+64>>2];D=C(z[e+76>>2]-M);s=z[e+68>>2];n=C(z[e+128>>2]-s);q=C(z[e+124>>2]-M);f=C(z[e+80>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+72>>2];i=C(z[e+132>>2]-F);O=C(f*i);f=C(z[e+84>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];t:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){S4(l,e+8|0);break t}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}r=C(0);h=C(0);I=C(0);M=z[e+148>>2];D=C(z[e+136>>2]-M);s=z[e+152>>2];n=C(z[e+92>>2]-s);q=C(z[e+88>>2]-M);f=C(z[e+140>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+156>>2];i=C(z[e+96>>2]-F);O=C(f*i);f=C(z[e+144>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];u:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){S4(l,e+8|0);break u}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}r=C(0);h=C(0);I=C(0);M=z[e+64>>2];D=C(z[e+100>>2]-M);s=z[e+68>>2];n=C(z[e+92>>2]-s);q=C(z[e+88>>2]-M);f=C(z[e+104>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+72>>2];i=C(z[e+96>>2]-F);O=C(f*i);f=C(z[e+108>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];v:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){S4(l,e+8|0);break v}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}r=C(0);h=C(0);I=C(0);M=z[e+112>>2];D=C(z[e+124>>2]-M);s=z[e+116>>2];n=C(z[e+140>>2]-s);q=C(z[e+136>>2]-M);f=C(z[e+128>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+120>>2];i=C(z[e+144>>2]-F);O=C(f*i);f=C(z[e+132>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];w:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){S4(l,e+8|0);break w}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}g=d+12|0;v[e+8>>2]=11;c=v[d+16>>2];x:{if(c>>>0>=(v[d+20>>2]&2147483647)>>>0){s4(g,e+8|0);b=v[d+16>>2];break x}b=v[g>>2]+(c<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=65559;y:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break y}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=196623;z:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break z}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=131088;A:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break A}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=17170445;B:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break B}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=17235989;C:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break C}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=17104905;D:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break D}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=17039378;E:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break E}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=33554451;F:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break F}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=33816582;G:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break G}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=33882132;H:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break H}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=33619968;I:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break I}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=50528278;J:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break J}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=50790404;K:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break K}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=50724881;L:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break L}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=50462722;M:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break M}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=67108867;N:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break N}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=67239950;O:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break O}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=67502087;P:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break P}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=67371016;Q:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break Q}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=83951626;R:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break R}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=84213765;S:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break S}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=84344844;T:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);b=v[d+16>>2];break T}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=84082689;U:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){s4(g,e+8|0);break U}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;v[d+16>>2]=v[d+16>>2]+1}xa=e+160|0;W=o>>>0<256?o:256;V:{if(!W){break V}c=v[a+32>>2];U=z[c+252>>2];O=z[c+256>>2];W:{while(1){b=0;J=C(0);j=0;X:{Y:{e=d;H=v[d+36>>2];L=v[H+4>>2];if(!L){break Y}G=v[e>>2];k=v[e+4>>2];p=v[e+28>>2];if(p){N=v[e+16>>2];l=v[e+12>>2];o=v[e+24>>2];c=-1;while(1){Z:{if(!k){h=C(0);s=C(0);break Z}b=v[H>>2]+(j<<4)|0;n=z[b+12>>2];q=z[b+8>>2];i=z[b+4>>2];f=z[b>>2];d=0;s=C(0);h=C(0);while(1){b=G+B(d,12)|0;D=C(C(C(z[b+8>>2]*q)+C(C(z[b>>2]*f)+C(z[b+4>>2]*i)))+n);s=sD?h:D;d=d+1|0;if((k|0)!=(d|0)){continue}break}}f=h;h=C(h-s);h=C(f/(h=h)){Q=v[H>>2]+(j<<4)|0;F=z[Q+4>>2];D=z[Q>>2];b=0;while(1){f=h;d=o+(b<<4)|0;n=z[d+4>>2];q=z[d>>2];_:{$:{if(!(q==D&n==F)){h=z[d+8>>2];s=z[Q+8>>2];R=z[Q+12>>2];break $}R=z[Q+12>>2];h=z[d+8>>2];s=z[Q+8>>2];if(h!=s){break $}r=C(0);if(z[d+12>>2]==R){break _}}aa:{if(!(C(C(s*h)+C(C(D*q)+C(F*n)))>C(.9986295104026794))){break aa}d=0;if(!N){break aa}while(1){g=l+(d<<2)|0;if(w[g+3|0]==(b|0)){g=G+B(w[g+2|0],12)|0;r=C(0);if(C(R+C(C(z[g+8>>2]*s)+C(C(z[g>>2]*D)+C(F*z[g+4>>2]))))J;J=b?h:J;c=b?j:c}j=j+1|0;if((L|0)!=(j|0)){continue}break}break X}if(!k){break Y}g=v[H>>2];c=-1;while(1){d=g+(b<<4)|0;n=z[d+12>>2];q=z[d+8>>2];i=z[d+4>>2];f=z[d>>2];s=C(0);h=C(0);d=0;while(1){o=G+B(d,12)|0;D=C(C(C(z[o+8>>2]*q)+C(C(z[o>>2]*f)+C(z[o+4>>2]*i)))+n);s=sD?h:D;d=d+1|0;if((k|0)!=(d|0)){continue}break}f=h;h=C(h-s);h=C(f/(hJ;J=d?h:J;c=d?b:c;b=b+1|0;if((L|0)!=(b|0)){continue}break}break X}c=-1}c=J>U?c:-1;if((c|0)<0){break W}V=v[E+112>>2]+(c<<4)|0;d=0;H=0;c=0;S=0;G=0;N=0;ha=0;m=xa-7968|0;xa=m;v[m+24>>2]=0;v[m+16>>2]=0;v[m+20>>2]=0;ba:{ca:{da:{ea:{fa:{o=v[e+4>>2];if(!o){break fa}D=C(-O);n=z[V+12>>2];q=z[V+8>>2];i=z[V+4>>2];f=z[V>>2];g=v[e>>2];while(1){l=255;ga:{ha:{ia:{b=g+B(d,12)|0;h=C(C(C(z[b+8>>2]*q)+C(C(z[b>>2]*f)+C(z[b+4>>2]*i)))+n);j=h>O?2:h>2]){break ea}$=-1;l=0;o=1;break da}b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?38869:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,40,c,7224,466)|0;v[b>>2]=0;v[b+4>>2]=0;v[b+32>>2]=0;o=b+24|0;v[o>>2]=0;v[o+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b+36>>2]=v[e+36>>2];l=v[e+4>>2];if(l>>>0>(v[b+8>>2]&2147483647)>>>0){H3(b,l)}p=m+4128|0;g=v[b+4>>2];if((g|0)<(l|0)){d=v[b>>2];c=d+B(l,12)|0;j=d+B(g,12)|0;while(1){z[j>>2]=z[p>>2];z[j+4>>2]=z[p+4>>2];z[j+8>>2]=z[p+8>>2];j=j+12|0;if(c>>>0>j>>>0){continue}break}}v[b+4>>2]=l;t4(b+12|0,v[e+16>>2],p);u4(o,v[e+28>>2],p);H9(v[b>>2],v[e>>2],B(v[e+4>>2],12));H9(v[b+12>>2],v[e+12>>2],v[e+16>>2]<<2);H9(v[o>>2],v[e+24>>2],v[e+28>>2]<<4);break ba}l=0;o=0;while(1){g=o;o=-1;H=255;d=255;da=255;$=0;b=g;while(1){L=b;b=b+1|0;ia=v[e+12>>2];if(!(b>>>0>2]&w[(ia+(b<<2)|0)+3|0]==(ha|0))){o=b;b=g}ea=ia+(L<<2)|0;aa=u[ea>>1];j=m+6176|0;k=ia+(b<<2)|0;ja=w[k+2|0];p=j+B(ja,3)|0;la=w[p|0];ja:{ka:{la:{ma:{P=w[ea+2|0];j=j+B(P,3)|0;Q=w[j|0];if((Q|0)==1){u[(m+6944|0)+(L<<1)>>1]=l;j=w[j+1|0];P=(m+4128|0)+((l&65535)<<2)|0;t[P+3|0]=S;t[P+2|0]=j;if((la|0)==1){break ma}na:{if(L>>>0>aa>>>0){j=u[(m+6944|0)+(aa<<1)>>1];u[P>>1]=j;j=(m+4128|0)+(j<<2)|0;u[j>>1]=l;H=w[j+2|0];break na}oa:{if(!la){H=w[p+1|0];if((H|0)!=255){break na}L=v[e>>2]+B(ja,12)|0;p=v[m+20>>2];pa:{if(p>>>0>=(v[m+24>>2]&2147483647)>>>0){I3(m+16|0,L);ja=w[k+2|0];break pa}j=v[m+16>>2]+B(p,12)|0;z[j>>2]=z[L>>2];z[j+4>>2]=z[L+4>>2];z[j+8>>2]=z[L+8>>2];v[m+20>>2]=p+1}t[((m+6176|0)+B(ja,3)|0)+1|0]=c;break oa}j=v[e+24>>2];v4(m,j+(w[ea+3|0]<<4)|0,j+(w[(ia+(aa<<2)|0)+3|0]<<4)|0,V);p=v[m+20>>2];if(p>>>0>=(v[m+24>>2]&2147483647)>>>0){I3(m+16|0,m);break oa}j=v[m+16>>2]+B(p,12)|0;z[j>>2]=z[m>>2];z[j+4>>2]=z[m+4>>2];z[j+8>>2]=z[m+8>>2];v[m+20>>2]=p+1}H=c;c=c+1|0}j=l+1|0;p=d&255;if((p|0)==255|(p|0)==(H&255)){break ka}da=j&65535;j=(m+4128|0)+(da<<2)|0;t[j+3|0]=S;t[j+2|0]=H;u[j>>1]=255;l=l+2|0;break ja}if((la|0)!=1){break ja}qa:{if(L>>>0>aa>>>0){j=m+4128|0;p=u[(m+6944|0)+(aa<<1)>>1];k=w[(j+(p<<2)|0)+3|0];d=p+1|0;ra:{if((d|0)<(l&65535)&(k|0)==w[((d<<2)+j|0)+3|0]){break ra}j=((p|0)<=0?p:1)-1|0;d=p;while(1){if((d|0)<2){d=j;break ra}p=d<<2;d=d-1|0;if((k|0)==w[(m+p|0)+4123|0]){continue}break}}d=w[((m+4128|0)+(d<<2)|0)+2|0];break qa}if(!Q){d=w[j+1|0];if((d|0)!=255){break qa}p=v[e>>2]+B(P,12)|0;j=v[m+20>>2];sa:{if(j>>>0>=(v[m+24>>2]&2147483647)>>>0){I3(m+16|0,p);P=w[ea+2|0];break sa}d=v[m+16>>2]+B(j,12)|0;z[d>>2]=z[p>>2];z[d+4>>2]=z[p+4>>2];z[d+8>>2]=z[p+8>>2];v[m+20>>2]=j+1}t[((m+6176|0)+B(P,3)|0)+1|0]=c;d=c;c=d+1|0;break qa}d=v[e+24>>2];v4(m,d+(w[ea+3|0]<<4)|0,d+(w[(ia+(aa<<2)|0)+3|0]<<4)|0,V);j=v[m+20>>2];ta:{if(j>>>0>=(v[m+24>>2]&2147483647)>>>0){I3(m+16|0,m);break ta}d=v[m+16>>2]+B(j,12)|0;z[d>>2]=z[m>>2];z[d+4>>2]=z[m+4>>2];z[d+8>>2]=z[m+8>>2];v[m+20>>2]=j+1}d=c;c=d+1|0}j=H&255;if(!((j|0)==255|(j|0)==(d&255))){da=l&65535;j=(m+4128|0)+(da<<2)|0;t[j+3|0]=S;t[j+2|0]=H;u[j>>1]=255;l=l+1|0}u[(m+6944|0)+(L<<1)>>1]=l;p=(m+4128|0)+((l&65535)<<2)|0;t[p+3|0]=S;t[p+2|0]=d;j=u[ea>>1];if(j>>>0>=L>>>0){break la}j=u[(m+6944|0)+(j<<1)>>1];u[p>>1]=j;u[(m+4128|0)+(j<<2)>>1]=l;break la}if(L>>>0<=aa>>>0){break la}j=u[(m+6944|0)+(aa<<1)>>1];u[P>>1]=j;u[(m+4128|0)+(j<<2)>>1]=l}l=l+1|0;break ja}l=j}$=Q|$;if((b|0)!=(g|0)){continue}break}if($&1){g=(m+2080|0)+((S&65535)<<4)|0;b=v[e+24>>2]+(ha<<4)|0;z[g>>2]=z[b>>2];z[g+4>>2]=z[b+4>>2];z[g+8>>2]=z[b+8>>2];z[g+12>>2]=z[b+12>>2];S=S+1|0}if((da|0)!=255){b=(m+32|0)+(G<<2)|0;t[b+3|0]=H;t[b+2|0]=d;u[b>>1]=da&255;G=G+1|0}ha=ha+1|0;if(ha>>>0>2]){continue}break}if(!G){o=1;G=0;$=-1;break da}b=(m+2080|0)+((S&65535)<<4)|0;z[b>>2]=z[V>>2];z[b+4>>2]=z[V+4>>2];z[b+8>>2]=z[V+8>>2];z[b+12>>2]=z[V+12>>2];S=S+1|0;o=0;$=G-1|0;g=1;if(!$){break ca}}while(1){b=m+32|0;L=w[(b+(N<<2)|0)+3|0];ua:{g=N+1|0;p=b+(g<<2)|0;if((L|0)==w[p+2|0]){break ua}b=0;d=N+2|0;if(G>>>0<=d>>>0){break ba}while(1){j=(m+32|0)+(d<<2)|0;if((L|0)==w[j+2|0]){b=v[p>>2];v[p>>2]=v[j>>2];v[j>>2]=b;break ua}d=d+1|0;if((G|0)!=(d|0)){continue}break}break ba}N=g;if((g|0)!=($|0)){continue}break}g=G}if(!c){b=0;break ba}d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?38869:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,40,b,7224,780)|0;d=v[e+36>>2];j=0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+36>>2]=d;H=v[e+4>>2];if(H){d=0;while(1){if(w[(m+6176|0)+B(d,3)|0]==1){L=v[e>>2]+B(d,12)|0;N=v[b+4>>2];va:{if(N>>>0>=(v[b+8>>2]&2147483647)>>>0){I3(b,L);break va}p=v[b>>2]+B(N,12)|0;z[p>>2]=z[L>>2];z[p+4>>2]=z[L+4>>2];z[p+8>>2]=z[L+8>>2];v[b+4>>2]=N+1}H=v[e+4>>2];j=j+1|0}d=d+1|0;if(H>>>0>d>>>0){continue}break}}if(c>>>0>j>>>0){j=c-j|0;d=0;while(1){c=d+1|0;N=v[m+16>>2]+B(d,12)|0;p=v[b+4>>2];wa:{if(p>>>0>=(v[b+8>>2]&2147483647)>>>0){I3(b,N);break wa}d=v[b>>2]+B(p,12)|0;z[d>>2]=z[N>>2];z[d+4>>2]=z[N+4>>2];z[d+8>>2]=z[N+8>>2];v[b+4>>2]=p+1}d=c;if((j|0)!=(d|0)){continue}break}}P=l&65535;t4(b+12|0,P+g|0,m);H=S&65535;u4(b+24|0,H,m);xa:{if(o){j=v[b+12>>2];break xa}Q=S-1|0;j=v[b+12>>2];d=0;if((g|0)!=1){G=g&-2;o=0;while(1){p=d+P|0;k=(p<<2)+j|0;t[k+3|0]=Q;L=m+32|0;l=L+(d<<2)|0;c=x[l>>1];u[k>>1]=c;N=m+4128|0;u[N+(c<<2)>>1]=p;t[k+2|0]=w[l+2|0];c=d|1;p=c+P|0;k=(p<<2)+j|0;t[k+3|0]=Q;l=L+(c<<2)|0;c=x[l>>1];u[k>>1]=c;u[N+(c<<2)>>1]=p;t[k+2|0]=w[l+2|0];d=d+2|0;o=o+2|0;if((G|0)!=(o|0)){continue}break}}if(!(g&1)){break xa}g=d+P|0;o=(g<<2)+j|0;t[o+3|0]=Q;d=(m+32|0)+(d<<2)|0;c=x[d>>1];u[o>>1]=c;u[(m+4128|0)+(c<<2)>>1]=g;t[o+2|0]=w[d+2|0]}H9(j,m+4128|0,P<<2);H9(v[b+24>>2],m+2080|0,H<<4)}c=v[m+24>>2];ya:{if((c|0)<0|!(c&2147483647)){break ya}d=v[m+16>>2];if(!d){break ya}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}xa=m+7968|0;d=b;if(!b){break W}za:{b=0;c=0;l=v[d+16>>2];G=v[d+12>>2];Aa:{while(1){Ba:{if((b|0)==(l|0)){if(l){I=C(-O);L=v[d>>2];p=v[d+24>>2];b=0;while(1){g=G+(b<<2)|0;o=L+B(w[g+2|0],12)|0;M=z[o+8>>2];N=w[g+3|0];g=p+(N<<4)|0;s=z[g+8>>2];i=z[o>>2];J=z[g>>2];F=z[o+4>>2];D=z[g+4>>2];h=C(C(C(M*s)+C(C(i*J)+C(F*D)))+z[g+12>>2]);if(h>O|h>>0>>0){g=o;if((N|0)==w[(G+(g<<2)|0)+3|0]){break Ca}}g=c}j=g+1|0;if(!(l>>>0>j>>>0&(N|0)==w[(G+(j<<2)|0)+3|0])){j=c}if((b|0)!=(j|0)){g=L+B(w[(G+(g<<2)|0)+2|0],12)|0;f=z[g>>2];n=C(f-i);b=L+B(w[(G+(j<<2)|0)+2|0],12)|0;h=z[g+4>>2];q=C(z[b+4>>2]-h);i=C(z[b>>2]-f);h=C(h-F);F=C(C(n*q)-C(i*h));r=h;h=z[g+8>>2];f=C(z[b+8>>2]-h);h=C(h-M);q=C(C(r*f)-C(q*h));i=C(C(h*i)-C(f*n));h=C(K(C(C(F*F)+C(C(q*q)+C(i*i)))));f=C(C(1)/h);b=h==C(0);if(C(C(C(f*(b?C(0):F))*s)+C(C(C(f*(b?C(1):q))*J)+C(D*C(f*(b?C(0):i)))))<=C(0)){break Ba}}b=o;if((l|0)!=(b|0)){continue}break}}g=1;break Aa}j=G+(b<<2)|0;o=w[j+3|0];c=(o|0)==w[(G+(c<<2)|0)+3|0]?c:b;b=b+1|0;Da:{if(l>>>0>b>>>0){g=b;if((o|0)==w[(G+(b<<2)|0)+3|0]){break Da}}g=c}o=x[j>>1];if((o|0)==255|(o|0)==65535){break Ba}if(w[(G+(o<<16>>16<<2)|0)+2|0]==w[(G+(g<<2)|0)+2|0]){continue}}break}g=0}if(!g){c=v[d+32>>2];Ea:{if((c|0)<0|!(c&2147483647)){break Ea}b=v[d+24>>2];if(!b){break Ea}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+20>>2];Fa:{if((c|0)<0|!(c&2147483647)){break Fa}b=v[d+12>>2];if(!b){break Fa}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+8>>2];if((c|0)<0|!(c&2147483647)){break za}b=v[d>>2];if(!b){break za}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);break za}c=v[a+4>>2];if(y[d+4>>2]>x[c+38>>1]){c=v[d+32>>2];Ga:{if((c|0)<0|!(c&2147483647)){break Ga}b=v[d+24>>2];if(!b){break Ga}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+20>>2];Ha:{if((c|0)<0|!(c&2147483647)){break Ha}b=v[d+12>>2];if(!b){break Ha}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+8>>2];if((c|0)<0|!(c&2147483647)){break za}b=v[d>>2];if(!b){break za}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);break za}Ia:{if(!(w[c+36|0]&128)){break Ia}l=0;o=0;H=0;b=0;c=v[d+16>>2];if(c){p=c&1;G=v[d+12>>2];Ja:{if((c|0)==1){c=0;break Ja}j=c&-2;c=0;while(1){g=l+1|0;L=w[(G+(o<<2)|0)+3|0]==w[(G+(c<<2)|0)+3|0];N=L?b:b>>>0>>0?g:b;k=N;b=L?g:0;l=b+1|0;b=b>>>0>N>>>0?l:N;o=L?o:c;g=c|1;N=w[(G+(o<<2)|0)+3|0]==w[(G+(g<<2)|0)+3|0];b=N?k:b;o=N?o:g;l=N?l:0;c=c+2|0;H=H+2|0;if((j|0)!=(H|0)){continue}break}}if(p){b=w[(G+(o<<2)|0)+3|0]==w[(G+(c<<2)|0)+3|0]?b:b>>>0>>0?l+1|0:b}}if(b>>>0<33){break Ia}c=v[d+32>>2];Ka:{if((c|0)<0|!(c&2147483647)){break Ka}b=v[d+24>>2];if(!b){break Ka}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+20>>2];La:{if((c|0)<0|!(c&2147483647)){break La}b=v[d+12>>2];if(!b){break La}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+8>>2];if((c|0)<0|!(c&2147483647)){break za}b=v[d>>2];if(!b){break za}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);break za}c=v[e+32>>2];Ma:{if((c|0)<0|!(c&2147483647)){break Ma}b=v[e+24>>2];if(!b){break Ma}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[e+20>>2];Na:{if((c|0)<0|!(c&2147483647)){break Na}b=v[e+12>>2];if(!b){break Na}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}W=W-1|0;c=v[e+8>>2];Oa:{if((c|0)<0|!(c&2147483647)){break Oa}b=v[e>>2];if(!b){break Oa}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e);if(W){continue}break V}break}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}d=e}v[a+36>>2]=d;a=v[E+120>>2];Pa:{if((a|0)<0|!(a&2147483647)){break Pa}c=v[E+112>>2];if(!c){break Pa}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,c)}xa=E+128|0}function sS(a,b,c,d,e,f,g,h){var i=0,j=0,k=C(0),l=0,m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=0,s=C(0),E=0,F=C(0),G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=0,R=C(0),S=0,T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=C(0),ja=C(0),ka=C(0),la=0,ma=0,na=0,oa=0,pa=0,qa=C(0),ra=C(0),sa=C(0),ta=0,ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=0,Da=0,Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=0,Oa=0,Pa=0,Qa=0,Ra=0;i=xa-2960|0;xa=i;r=v[a>>2];na=A[b+32>>3];ta=A[b+24>>3];oa=A[b>>3];fa=A[b+8>>3];ba=A[b+16>>3];ga=A[b+40>>3];A[i+1736>>3]=(ba+ga)*.5;A[i+1728>>3]=(fa+na)*.5;A[i+1720>>3]=(oa+ta)*.5;b=w[f+8|0];o=w[f+9|0]?b|2:b;l=v[f+4>>2];if(l){b=w[f+10|0]?o|4:o;o=w[f+11|0]?b|8:b}n=C(ga);z[i+1716>>2]=n;N=C(na);z[i+1712>>2]=N;L=C(ta);z[i+1708>>2]=L;I=C(fa);z[i+1700>>2]=I;q=C(oa);z[i+1696>>2]=q;s=C(C(N-I)*C(.5));m=C(ba);z[i+1704>>2]=m;k=C(n-m);J=C(C(q+L)*C(.5));p=C(C(m+n)*C(.5));while(1){b=(i+96|0)+(j<<4)|0;v[b+8>>2]=-1;v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=-1;v[b+16>>2]=0;v[b+20>>2]=0;v[b+40>>2]=-1;v[b+32>>2]=0;v[b+36>>2]=0;v[b+56>>2]=-1;v[b+48>>2]=0;v[b+52>>2]=0;v[b+72>>2]=-1;b=b- -64|0;v[b>>2]=0;v[b+4>>2]=0;j=j+5|0;if((j|0)!=100){continue}break}n=C(k*C(.5));m=C(C(L-q)*C(.5));k=C(C(I+N)*C(.5));b=v[f>>2];a:{if(b){v[i+72>>2]=v[b>>2];v[i+76>>2]=v[b+4>>2];v[i+80>>2]=v[b+8>>2];v[i+84>>2]=v[b+12>>2];break a}v[i+80>>2]=0;v[i+84>>2]=0;v[i+72>>2]=0;v[i+76>>2]=0}v[i+44>>2]=-1;v[i+60>>2]=100;v[i+64>>2]=0;t[i+52|0]=0;v[i+36>>2]=0;v[i+40>>2]=0;v[i+32>>2]=139372;u[i+88>>1]=o|32;v[i+56>>2]=i+96;z[i+2924>>2]=n;z[i+2920>>2]=s;z[i+2916>>2]=m;v[i+2912>>2]=3;z[i+1880>>2]=p;z[i+1876>>2]=k;z[i+1872>>2]=J;v[i+1864>>2]=0;v[i+1868>>2]=1065353216;v[i+1856>>2]=0;v[i+1860>>2]=0;Ba[v[v[r>>2]+356>>2]](r,i+2912|0,i+1856|0,i+32|0,i+72|0,l)|0;Na=v[i+64>>2]+w[i+52|0]|0;if(Na){Qa=i+40|0;Ra=i+32|4;Ca=i+1840|0;Da=i+1828|0;Oa=i+1768|0;Pa=i+1756|0;ca=i+1728|0;da=i+1736|0;f=0;while(1){j=v[i+56>>2]+(f<<4)|0;b=y[i+64>>2]>f>>>0;Q=v[(b?j+4|0:Qa)>>2];b:{if(!Q){break b}r=v[(b?j:Ra)>>2];if(!r){break b}l=v[a+8>>2];c:{if(!v[l+36>>2]){break c}b=(Q<<15^-1)+Q|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;j=v[v[l+12>>2]+((v[l+20>>2]-1&(b>>>16^b))<<2)>>2];if((j|0)==-1){break c}G=v[l+8>>2];l=v[l+4>>2];while(1){b=j<<2;if(v[b+l>>2]==(Q|0)){break b}j=v[b+G>>2];if((j|0)!=-1){continue}break}}Ba[v[v[Q>>2]+156>>2]](i+1856|0,Q);if(w[i+1856|0]&4){break b}Ba[v[v[r>>2]+76>>2]](i+1856|0,r);Ba[v[v[Q>>2]+80>>2]](i+2912|0,Q);L=z[i+1868>>2];p=z[i+2924>>2];n=z[i+2912>>2];I=z[i+1856>>2];q=z[i+1860>>2];m=z[i+2916>>2];s=z[i+1864>>2];k=z[i+2920>>2];z[i+12>>2]=C(C(C(L*p)-C(n*I))-C(q*m))-C(s*k);z[i+8>>2]=C(C(I*m)+C(C(L*k)+C(s*p)))-C(n*q);z[i+4>>2]=C(C(s*n)+C(C(L*m)+C(q*p)))-C(k*I);z[i>>2]=C(C(q*k)+C(C(L*n)+C(I*p)))-C(m*s);k=z[i+2936>>2];J=C(k+k);k=z[i+2928>>2];p=C(k+k);k=z[i+2932>>2];n=C(k+k);m=C(C(s*J)+C(C(I*p)+C(q*n)));k=C(C(L*L)+C(-.5));z[i+24>>2]=z[i+1880>>2]+C(C(s*m)+C(C(J*k)+C(L*C(C(I*n)-C(p*q)))));z[i+20>>2]=z[i+1876>>2]+C(C(q*m)+C(C(n*k)+C(L*C(C(s*p)-C(J*I)))));z[i+16>>2]=z[i+1872>>2]+C(C(I*m)+C(C(p*k)+C(L*C(C(q*J)-C(n*s)))));d:{e:{switch(Ba[v[v[Q>>2]+32>>2]](Q)|0){case 0:v[i+1856>>2]=0;v[i+1860>>2]=0;Ba[v[v[Q>>2]+48>>2]](Q,i+1856|0)|0;p=z[i+24>>2];n=z[i+20>>2];m=z[i+16>>2];k=z[i+1860>>2];j=v[e+4>>2];l=j+13|0;b=v[e+8>>2]&2147483647;f:{if(l>>>0<=b>>>0){break f}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break f}zw(e,b);j=v[e+4>>2]}v[e+4>>2]=l;j=v[e>>2]+(j<<2)|0;v[j+8>>2]=r;v[j+4>>2]=Q;v[j>>2]=4;b=v[i+1724>>2];v[j+12>>2]=v[i+1720>>2];v[j+16>>2]=b;b=v[ca+4>>2];v[j+20>>2]=v[ca>>2];v[j+24>>2]=b;b=v[da+4>>2];v[j+28>>2]=v[da>>2];v[j+32>>2]=b;z[j+48>>2]=k;z[j+36>>2]=+m-A[i+1720>>3];z[j+40>>2]=+n-A[ca>>3];z[j+44>>2]=+p-A[da>>3];break b;case 2:v[i+1860>>2]=0;v[i+1864>>2]=0;v[i+1856>>2]=2;Ba[v[v[Q>>2]+52>>2]](Q,i+1856|0)|0;k=z[i+1860>>2];L=z[i+24>>2];I=z[i+20>>2];q=z[i+16>>2];s=z[i+4>>2];J=z[i+8>>2];n=z[i+12>>2];m=z[i>>2];N=z[i+1864>>2];j=v[e+4>>2];l=j+16|0;b=v[e+8>>2]&2147483647;g:{if(l>>>0<=b>>>0){break g}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break g}zw(e,b);j=v[e+4>>2]}v[e+4>>2]=l;j=v[e>>2]+(j<<2)|0;v[j+8>>2]=r;v[j+4>>2]=Q;v[j>>2]=5;b=v[i+1724>>2];v[j+12>>2]=v[i+1720>>2];v[j+16>>2]=b;b=v[ca+4>>2];v[j+20>>2]=v[ca>>2];v[j+24>>2]=b;b=v[da+4>>2];v[j+28>>2]=v[da>>2];v[j+32>>2]=b;z[j+60>>2]=k;p=C(m+m);k=n;n=C(n+n);m=C(N*C(C(m*p)+C(C(k*n)+C(-1))));ba=A[i+1720>>3];z[j+36>>2]=+C(q+m)-ba;k=C(N*C(C(J*n)+C(p*s)));ga=A[ca>>3];z[j+40>>2]=+C(I+k)-ga;fa=A[da>>3];z[j+52>>2]=+C(I-k)-ga;z[j+48>>2]=+C(q-m)-ba;k=C(N*C(C(p*J)-C(s*n)));z[j+56>>2]=+C(L-k)-fa;z[j+44>>2]=+C(k+L)-fa;break b;case 3:o=0;v[i+1756>>2]=0;v[i+1748>>2]=0;v[i+1752>>2]=0;v[i+1744>>2]=3;Ba[v[v[Q>>2]+44>>2]](Q,i+1744|0)|0;J=z[i+1748>>2];p=z[i+1752>>2];k=z[i+1756>>2];z[i+1948>>2]=k;z[i+1944>>2]=p;n=C(-J);z[i+1940>>2]=n;z[i+1936>>2]=k;z[i+1932>>2]=p;z[i+1928>>2]=J;z[i+1924>>2]=k;m=C(-p);z[i+1920>>2]=m;z[i+1916>>2]=J;z[i+1912>>2]=k;z[i+1908>>2]=m;z[i+1904>>2]=n;k=C(-k);z[i+1900>>2]=k;z[i+1896>>2]=p;z[i+1892>>2]=n;z[i+1888>>2]=k;z[i+1884>>2]=p;z[i+1880>>2]=J;z[i+1876>>2]=k;z[i+1872>>2]=m;z[i+1868>>2]=J;z[i+1864>>2]=k;z[i+1860>>2]=m;z[i+1856>>2]=n;T=z[i+12>>2];Y=C(C(T*T)+C(-.5));R=z[i+4>>2];q=C(-R);U=z[i>>2];s=C(-U);F=z[i+8>>2];J=C(-F);L=C(A[i+1736>>3]);I=C(A[i+1728>>3]);M=C(A[i+1720>>3]);p=z[i+24>>2];n=z[i+20>>2];m=z[i+16>>2];while(1){b=(i+1856|0)+B(o,12)|0;k=z[b+8>>2];W=C(k+k);k=z[b>>2];H=C(k+k);k=z[b+4>>2];N=C(k+k);k=C(C(F*W)+C(C(U*H)+C(R*N)));z[b+8>>2]=C(p+C(C(F*k)+C(C(W*Y)+C(T*C(C(U*N)+C(H*q))))))-L;z[b+4>>2]=C(n+C(C(R*k)+C(C(N*Y)+C(T*C(C(F*H)+C(W*s))))))-I;z[b>>2]=C(m+C(C(U*k)+C(C(H*Y)+C(T*C(C(R*W)+C(N*J))))))-M;o=o+1|0;if((o|0)!=8){continue}break};break d;case 5:v[i+1848>>2]=0;v[i+1852>>2]=0;v[i+1844>>2]=1065353216;v[i+1836>>2]=0;v[i+1840>>2]=0;v[i+1828>>2]=1065353216;v[i+1832>>2]=0;v[i+1820>>2]=1065353216;v[i+1824>>2]=1065353216;v[i+1816>>2]=5;V=i+1816|0;Ba[v[v[Q>>2]+64>>2]](Q,V)|0;v[i+2896>>2]=3;s=z[i+1716>>2];J=z[i+1704>>2];z[i+2908>>2]=C(s-J)*C(.5);p=z[i+1712>>2];n=z[i+1700>>2];z[i+2904>>2]=C(p-n)*C(.5);m=z[i+1708>>2];k=z[i+1696>>2];z[i+2900>>2]=C(m-k)*C(.5);z[i+1808>>2]=C(s+J)*C(.5);z[i+1804>>2]=C(p+n)*C(.5);z[i+1800>>2]=C(m+k)*C(.5);v[i+1792>>2]=0;v[i+1796>>2]=1065353216;v[i+1784>>2]=0;v[i+1788>>2]=0;O=i+1856|0;b=O;v[b+1028>>2]=0;v[b+1032>>2]=256;v[b>>2]=b+4;P=xa-16|0;xa=P;o=i+2896|0;G=i+1784|0;l=C$(o,G,V,i,v[b>>2],v[b+1032>>2],P+15|0);h:{if(!w[P+15|0]){break h}l=0;b=v[V+36>>2];j=Ba[v[v[b>>2]+40>>2]](b)|0;if(!j){break h}l=v[O>>2];b=v[O+1032>>2];i:{if(b>>>0>=j>>>0){j=b;break i}if(!(!l|(O+4|0)==(l|0))){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,l)}l=j<<2;if(l){b=v[37696]+12|0;l=Ba[v[v[b>>2]+8>>2]](b,l,24422,6309,72)|0}else{l=0}v[O+1032>>2]=j;v[O>>2]=l}l=C$(o,G,V,i,l,j,P+15|0)}v[O+1028>>2]=l;xa=P+16|0;G=l;fa=A[i+1736>>3];ba=A[i+1728>>3];ga=A[i+1720>>3];j=v[e+4>>2];l=j+11|0;b=v[e+8>>2]&2147483647;j:{if(l>>>0<=b>>>0){break j}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break j}zw(e,b);j=v[e+4>>2]}F=C(fa);H=C(ba);M=C(ga);v[e+4>>2]=l;S=v[e>>2]+(j<<2)|0;v[S+8>>2]=r;v[S+4>>2]=Q;v[S>>2]=2;b=v[i+1724>>2];v[S+12>>2]=v[i+1720>>2];v[S+16>>2]=b;b=v[ca+4>>2];v[S+20>>2]=v[ca>>2];v[S+24>>2]=b;b=v[da+4>>2];v[S+28>>2]=v[da>>2];v[S+32>>2]=b;v[S+36>>2]=G;j=v[c+4>>2];v[S+40>>2]=j;b=w[g+56|0];P=v[O>>2];k:{l:{if(z[g+32>>2]!=C(0)){if(!b){b=0;l=0;if(!G){break l}while(1){j=v[P+(l<<2)>>2];v[i+1744>>2]=j;r=j;j=i+2912|0;A$(i+1816|0,i,r,j);z[i+2912>>2]=z[i+2912>>2]-M;z[i+2916>>2]=z[i+2916>>2]-H;z[i+2920>>2]=z[i+2920>>2]-F;z[i+2924>>2]=z[i+2924>>2]-M;z[i+2928>>2]=z[i+2928>>2]-H;z[i+2932>>2]=z[i+2932>>2]-F;z[i+2936>>2]=z[i+2936>>2]-M;z[i+2940>>2]=z[i+2940>>2]-H;z[i+2944>>2]=z[i+2944>>2]-F;j=tS(g,j,c,d);b=j+b|0;if(!j){r=v[c+4>>2];j=r;V=j+2|0;o=v[c+8>>2]&2147483647;m:{if(V>>>0<=o>>>0){break m}j=r;ha=o;o=o?o<<1:2;o=o>>>0>>0?V:o;if(ha>>>0>=o>>>0){break m}uS(c,o);j=v[c+4>>2]}v[c+4>>2]=r+1;j=v[c>>2]+B(j,36)|0;z[j>>2]=z[i+2912>>2];z[j+4>>2]=z[i+2916>>2];z[j+8>>2]=z[i+2920>>2];z[j+12>>2]=z[i+2924>>2];z[j+16>>2]=z[i+2928>>2];z[j+20>>2]=z[i+2932>>2];z[j+24>>2]=z[i+2936>>2];z[j+28>>2]=z[i+2940>>2];z[j+32>>2]=z[i+2944>>2];j=v[d+4>>2];n:{if(j>>>0>=(v[d+8>>2]&2147483647)>>>0){on(d,i+1744|0);break n}v[v[d>>2]+(j<<2)>>2]=v[i+1744>>2];v[d+4>>2]=v[d+4>>2]+1}b=b+1|0}l=l+1|0;if((G|0)!=(l|0)){continue}break}break l}if(!G){b=0;break l}m=C(z[i+1808>>2]-F);k=z[i+2908>>2];N=C(m+k);p=C(m-k);L=C(C(N-p)*C(.5));m=C(z[i+1804>>2]-H);k=z[i+2904>>2];I=C(m+k);q=C(m-k);s=C(C(I-q)*C(.5));n=C(z[i+1800>>2]-M);k=z[i+2900>>2];m=C(n+k);k=C(n-k);J=C(C(m-k)*C(.5));p=C(C(p+N)*C(.5));n=C(C(q+I)*C(.5));m=C(C(k+m)*C(.5));b=0;j=0;while(1){r=v[P+(j<<2)>>2];l=i+1744|0;A$(i+1816|0,i,r,l);z[i+1744>>2]=z[i+1744>>2]-M;z[i+1748>>2]=z[i+1748>>2]-H;z[i+1752>>2]=z[i+1752>>2]-F;z[i+1756>>2]=z[i+1756>>2]-M;z[i+1760>>2]=z[i+1760>>2]-H;z[i+1764>>2]=z[i+1764>>2]-F;z[i+1768>>2]=z[i+1768>>2]-M;z[i+1772>>2]=z[i+1772>>2]-H;z[i+1776>>2]=z[i+1776>>2]-F;l=tS(g,l,c,d);b=l+b|0;if(!l){k=z[g+52>>2];u[i+2956>>1]=0;z[i+2952>>2]=k;z[i+2948>>2]=L;z[i+2944>>2]=s;z[i+2940>>2]=J;z[i+2936>>2]=p;z[i+2932>>2]=n;z[i+2928>>2]=m;v[i+2924>>2]=d;v[i+2920>>2]=c;v[i+2916>>2]=r;v[i+2912>>2]=0;vS(i+2912|0,i+1744|0,Pa,Oa);l=v[i+2912>>2];u[h>>1]=x[h>>1]+x[i+2956>>1];b=b+l|0}j=j+1|0;if((G|0)!=(j|0)){continue}break}break l}if(!b){l=j+G|0;r=l+1|0;b=v[c+8>>2]&2147483647;o:{if(r>>>0<=b>>>0){break o}o=b;b=b?b<<1:2;b=b>>>0>>0?r:b;if(o>>>0>=b>>>0){break o}uS(c,b);j=v[c+4>>2]}v[c+4>>2]=l;if(!G){break k}b=v[c>>2]+B(j,36)|0;j=0;while(1){l=v[P+(j<<2)>>2];v[i+2912>>2]=l;A$(i+1816|0,i,l,b);z[b>>2]=z[b>>2]-M;z[b+4>>2]=z[b+4>>2]-H;z[b+8>>2]=z[b+8>>2]-F;z[b+12>>2]=z[b+12>>2]-M;z[b+16>>2]=z[b+16>>2]-H;z[b+20>>2]=z[b+20>>2]-F;z[b+24>>2]=z[b+24>>2]-M;z[b+28>>2]=z[b+28>>2]-H;z[b+32>>2]=z[b+32>>2]-F;l=v[d+4>>2];p:{if(l>>>0>=(v[d+8>>2]&2147483647)>>>0){on(d,i+2912|0);break p}v[v[d>>2]+(l<<2)>>2]=v[i+2912>>2];v[d+4>>2]=v[d+4>>2]+1}b=b+36|0;j=j+1|0;if((G|0)!=(j|0)){continue}break}break k}if(!G){b=0;break l}m=C(z[i+1808>>2]-F);k=z[i+2908>>2];N=C(m+k);p=C(m-k);L=C(C(N-p)*C(.5));m=C(z[i+1804>>2]-H);k=z[i+2904>>2];I=C(m+k);q=C(m-k);s=C(C(I-q)*C(.5));n=C(z[i+1800>>2]-M);k=z[i+2900>>2];m=C(n+k);k=C(n-k);J=C(C(m-k)*C(.5));p=C(C(p+N)*C(.5));n=C(C(q+I)*C(.5));m=C(C(k+m)*C(.5));j=0;b=0;while(1){r=v[P+(j<<2)>>2];l=i+1744|0;A$(i+1816|0,i,r,l);z[i+1744>>2]=z[i+1744>>2]-M;z[i+1748>>2]=z[i+1748>>2]-H;z[i+1752>>2]=z[i+1752>>2]-F;z[i+1756>>2]=z[i+1756>>2]-M;z[i+1760>>2]=z[i+1760>>2]-H;z[i+1764>>2]=z[i+1764>>2]-F;z[i+1768>>2]=z[i+1768>>2]-M;z[i+1772>>2]=z[i+1772>>2]-H;z[i+1776>>2]=z[i+1776>>2]-F;k=z[g+52>>2];u[i+2956>>1]=0;z[i+2952>>2]=k;z[i+2948>>2]=L;z[i+2944>>2]=s;z[i+2940>>2]=J;z[i+2936>>2]=p;z[i+2932>>2]=n;z[i+2928>>2]=m;v[i+2924>>2]=d;v[i+2920>>2]=c;v[i+2916>>2]=r;v[i+2912>>2]=0;vS(i+2912|0,l,Pa,Oa);l=v[i+2912>>2];u[h>>1]=x[h>>1]+x[i+2956>>1];b=b+l|0;j=j+1|0;if((G|0)!=(j|0)){continue}break}}v[S+36>>2]=b}V8(O);break b;case 6:v[i+1800>>2]=1065353216;v[i+1804>>2]=0;v[i+1792>>2]=1065353216;v[i+1796>>2]=1065353216;v[i+1784>>2]=6;v[i+1788>>2]=0;P=i+1784|0;Ba[v[v[Q>>2]+68>>2]](Q,P)|0;v[i+2896>>2]=3;s=z[i+1716>>2];J=z[i+1704>>2];z[i+2908>>2]=C(s-J)*C(.5);p=z[i+1712>>2];n=z[i+1700>>2];z[i+2904>>2]=C(p-n)*C(.5);m=z[i+1708>>2];k=z[i+1696>>2];z[i+2900>>2]=C(m-k)*C(.5);z[i+1768>>2]=C(s+J)*C(.5);z[i+1764>>2]=C(p+n)*C(.5);z[i+1760>>2]=C(m+k)*C(.5);v[i+1752>>2]=0;v[i+1756>>2]=1065353216;v[i+1744>>2]=0;v[i+1748>>2]=0;S=i+1856|0;b=S;v[b+1028>>2]=0;v[b+1032>>2]=256;v[b>>2]=b+4;O=xa-16|0;xa=O;t[O+15|0]=1;V=i+2896|0;o=i+1744|0;l=D$(V,o,P,i,v[b>>2],v[b+1032>>2],O+15|0);q:{if(!w[O+15|0]){break q}l=0;b=v[P+4>>2];j=Ba[v[v[b>>2]+32>>2]](b)|0;b=v[P+4>>2];G=B(j,Ba[v[v[b>>2]+36>>2]](b)|0);j=G<<1;if(!j){break q}l=v[S>>2];b=v[S+1032>>2];r:{if(b>>>0>=j>>>0){j=b;break r}if(!(!l|(S+4|0)==(l|0))){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,l)}l=G<<3;if(l){b=v[37696]+12|0;l=Ba[v[v[b>>2]+8>>2]](b,l,24422,6309,102)|0}else{l=0}v[S+1032>>2]=j;v[S>>2]=l}l=D$(V,o,P,i,l,j,O+15|0)}v[S+1028>>2]=l;xa=O+16|0;G=l;fa=A[i+1736>>3];ba=A[i+1728>>3];ga=A[i+1720>>3];j=v[e+4>>2];l=j+11|0;b=v[e+8>>2]&2147483647;s:{if(l>>>0<=b>>>0){break s}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break s}zw(e,b);j=v[e+4>>2]}F=C(fa);H=C(ba);M=C(ga);v[e+4>>2]=l;O=v[e>>2]+(j<<2)|0;v[O+8>>2]=r;v[O+4>>2]=Q;v[O>>2]=2;b=v[i+1724>>2];v[O+12>>2]=v[i+1720>>2];v[O+16>>2]=b;b=v[ca+4>>2];v[O+20>>2]=v[ca>>2];v[O+24>>2]=b;b=v[da+4>>2];v[O+28>>2]=v[da>>2];v[O+32>>2]=b;v[O+36>>2]=G;j=v[c+4>>2];v[O+40>>2]=j;b=w[g+56|0];P=v[S>>2];t:{u:{if(z[g+32>>2]!=C(0)){if(!b){b=0;l=0;if(!G){break u}while(1){j=v[P+(l<<2)>>2];v[i+1816>>2]=j;r=j;j=i+2912|0;B$(i+1784|0,i,r,j);z[i+2912>>2]=z[i+2912>>2]-M;z[i+2916>>2]=z[i+2916>>2]-H;z[i+2920>>2]=z[i+2920>>2]-F;z[i+2924>>2]=z[i+2924>>2]-M;z[i+2928>>2]=z[i+2928>>2]-H;z[i+2932>>2]=z[i+2932>>2]-F;z[i+2936>>2]=z[i+2936>>2]-M;z[i+2940>>2]=z[i+2940>>2]-H;z[i+2944>>2]=z[i+2944>>2]-F;j=tS(g,j,c,d);b=j+b|0;if(!j){r=v[c+4>>2];j=r;V=j+2|0;o=v[c+8>>2]&2147483647;v:{if(V>>>0<=o>>>0){break v}j=r;ha=o;o=o?o<<1:2;o=o>>>0>>0?V:o;if(ha>>>0>=o>>>0){break v}uS(c,o);j=v[c+4>>2]}v[c+4>>2]=r+1;j=v[c>>2]+B(j,36)|0;z[j>>2]=z[i+2912>>2];z[j+4>>2]=z[i+2916>>2];z[j+8>>2]=z[i+2920>>2];z[j+12>>2]=z[i+2924>>2];z[j+16>>2]=z[i+2928>>2];z[j+20>>2]=z[i+2932>>2];z[j+24>>2]=z[i+2936>>2];z[j+28>>2]=z[i+2940>>2];z[j+32>>2]=z[i+2944>>2];j=v[d+4>>2];w:{if(j>>>0>=(v[d+8>>2]&2147483647)>>>0){on(d,i+1816|0);break w}v[v[d>>2]+(j<<2)>>2]=v[i+1816>>2];v[d+4>>2]=v[d+4>>2]+1}b=b+1|0}l=l+1|0;if((G|0)!=(l|0)){continue}break}break u}if(!G){b=0;break u}m=C(z[i+1768>>2]-F);k=z[i+2908>>2];N=C(m+k);p=C(m-k);L=C(C(N-p)*C(.5));m=C(z[i+1764>>2]-H);k=z[i+2904>>2];I=C(m+k);q=C(m-k);s=C(C(I-q)*C(.5));n=C(z[i+1760>>2]-M);k=z[i+2900>>2];m=C(n+k);k=C(n-k);J=C(C(m-k)*C(.5));p=C(C(p+N)*C(.5));n=C(C(q+I)*C(.5));m=C(C(k+m)*C(.5));b=0;j=0;while(1){r=v[P+(j<<2)>>2];l=i+1816|0;B$(i+1784|0,i,r,l);z[i+1816>>2]=z[i+1816>>2]-M;z[i+1820>>2]=z[i+1820>>2]-H;z[i+1824>>2]=z[i+1824>>2]-F;z[i+1828>>2]=z[i+1828>>2]-M;z[i+1832>>2]=z[i+1832>>2]-H;z[i+1836>>2]=z[i+1836>>2]-F;z[i+1840>>2]=z[i+1840>>2]-M;z[i+1844>>2]=z[i+1844>>2]-H;z[i+1848>>2]=z[i+1848>>2]-F;l=tS(g,l,c,d);b=l+b|0;if(!l){k=z[g+52>>2];u[i+2956>>1]=0;z[i+2952>>2]=k;z[i+2948>>2]=L;z[i+2944>>2]=s;z[i+2940>>2]=J;z[i+2936>>2]=p;z[i+2932>>2]=n;z[i+2928>>2]=m;v[i+2924>>2]=d;v[i+2920>>2]=c;v[i+2916>>2]=r;v[i+2912>>2]=0;vS(i+2912|0,i+1816|0,Da,Ca);l=v[i+2912>>2];u[h>>1]=x[h>>1]+x[i+2956>>1];b=b+l|0}j=j+1|0;if((G|0)!=(j|0)){continue}break}break u}if(!b){l=j+G|0;r=l+1|0;b=v[c+8>>2]&2147483647;x:{if(r>>>0<=b>>>0){break x}o=b;b=b?b<<1:2;b=b>>>0>>0?r:b;if(o>>>0>=b>>>0){break x}uS(c,b);j=v[c+4>>2]}v[c+4>>2]=l;if(!G){break t}b=v[c>>2]+B(j,36)|0;j=0;while(1){l=v[P+(j<<2)>>2];v[i+2912>>2]=l;B$(i+1784|0,i,l,b);z[b>>2]=z[b>>2]-M;z[b+4>>2]=z[b+4>>2]-H;z[b+8>>2]=z[b+8>>2]-F;z[b+12>>2]=z[b+12>>2]-M;z[b+16>>2]=z[b+16>>2]-H;z[b+20>>2]=z[b+20>>2]-F;z[b+24>>2]=z[b+24>>2]-M;z[b+28>>2]=z[b+28>>2]-H;z[b+32>>2]=z[b+32>>2]-F;l=v[d+4>>2];y:{if(l>>>0>=(v[d+8>>2]&2147483647)>>>0){on(d,i+2912|0);break y}v[v[d>>2]+(l<<2)>>2]=v[i+2912>>2];v[d+4>>2]=v[d+4>>2]+1}b=b+36|0;j=j+1|0;if((G|0)!=(j|0)){continue}break}break t}if(!G){b=0;break u}m=C(z[i+1768>>2]-F);k=z[i+2908>>2];N=C(m+k);p=C(m-k);L=C(C(N-p)*C(.5));m=C(z[i+1764>>2]-H);k=z[i+2904>>2];I=C(m+k);q=C(m-k);s=C(C(I-q)*C(.5));n=C(z[i+1760>>2]-M);k=z[i+2900>>2];m=C(n+k);k=C(n-k);J=C(C(m-k)*C(.5));p=C(C(p+N)*C(.5));n=C(C(q+I)*C(.5));m=C(C(k+m)*C(.5));j=0;b=0;while(1){r=v[P+(j<<2)>>2];l=i+1816|0;B$(i+1784|0,i,r,l);z[i+1816>>2]=z[i+1816>>2]-M;z[i+1820>>2]=z[i+1820>>2]-H;z[i+1824>>2]=z[i+1824>>2]-F;z[i+1828>>2]=z[i+1828>>2]-M;z[i+1832>>2]=z[i+1832>>2]-H;z[i+1836>>2]=z[i+1836>>2]-F;z[i+1840>>2]=z[i+1840>>2]-M;z[i+1844>>2]=z[i+1844>>2]-H;z[i+1848>>2]=z[i+1848>>2]-F;k=z[g+52>>2];u[i+2956>>1]=0;z[i+2952>>2]=k;z[i+2948>>2]=L;z[i+2944>>2]=s;z[i+2940>>2]=J;z[i+2936>>2]=p;z[i+2932>>2]=n;z[i+2928>>2]=m;v[i+2924>>2]=d;v[i+2920>>2]=c;v[i+2916>>2]=r;v[i+2912>>2]=0;vS(i+2912|0,l,Da,Ca);l=v[i+2912>>2];u[h>>1]=x[h>>1]+x[i+2956>>1];b=b+l|0;j=j+1|0;if((G|0)!=(j|0)){continue}break}}v[O+36>>2]=b}V8(S);break b;case 4:G=i+1720|0;la=i+1696|0;b=0;aa=0;o=0;E=xa-144|0;xa=E;j=E- -64|0;v[j>>2]=0;v[j+4>>2]=1065353216;v[E+56>>2]=0;v[E+60>>2]=0;v[E+48>>2]=1065353216;v[E+52>>2]=1065353216;t[E+79|0]=0;t[E+77|0]=0;t[E+78|0]=0;t[E+76|0]=1;v[E+72>>2]=0;v[E+40>>2]=4;v[E+44>>2]=1065353216;Ba[v[v[Q>>2]+60>>2]](Q,E+40|0)|0;ea=v[E+72>>2];ma=Ba[v[v[ea>>2]+36>>2]](ea)|0;pa=Ba[v[v[ea>>2]+32>>2]](ea)|0;z:{if(!ma){j=E+128|0;break z}P=ma&1;if((ma|0)==1){j=-2}else{V=ma&-2;while(1){l=E+80|0;Ba[v[v[ea>>2]+40>>2]](ea,b,l)|0;j=x[E+96>>1];Ba[v[v[ea>>2]+40>>2]](ea,b|1,l)|0;b=b+2|0;aa=(x[E+96>>1]+(j+aa|0)|0)-4|0;o=o+2|0;if((V|0)!=(o|0)){continue}break}j=aa-2|0}if(P){Ba[v[v[ea>>2]+40>>2]](ea,b,E+80|0)|0;aa=j+x[E+96>>1]|0}j=E-(B(aa,12)+15&-16)|0;xa=j;if(!ma){break z}ha=0;b=j;while(1){Ba[v[v[ea>>2]+40>>2]](ea,ha,E+80|0)|0;S=x[E+96>>1];O=S-2|0;if(O){P=w[pa|0];o=0;while(1){l=o+1|0;V=w[((l>>>0)%(S>>>0)|0)+pa|0];v[b+8>>2]=w[((o+2>>>0)%(S>>>0)|0)+pa|0];v[b+4>>2]=V;v[b>>2]=P;b=b+12|0;o=l;if((l|0)!=(O|0)){continue}break}}pa=S+pa|0;ha=ha+1|0;if((ma|0)!=(ha|0)){continue}break}}Z=z[i>>2];ia=C(Z+Z);qa=z[i+8>>2];M=C(ia*qa);ja=z[i+4>>2];W=C(ja+ja);Y=z[i+12>>2];N=C(W*Y);Ea=C(M-N);H=z[E+56>>2];T=C(H+H);p=z[E+64>>2];L=C(T*p);F=z[E+60>>2];n=C(F+F);m=z[E+68>>2];q=C(n*m);ka=C(L+q);R=z[E+44>>2];s=C(F*n);k=C(p+p);I=C(p*k);ua=C(C(C(1)-s)-I);Fa=C(R*ua);J=C(n*p);p=C(T*m);$=C(J-p);n=C(T*F);m=C(k*m);va=C(n+m);U=z[E+48>>2];Ga=C(va*U);k=C(C(1)-C(H*T));X=C(k-s);wa=C(L-q);F=z[E+52>>2];_=C(wa*F);H=C(C(C(ka*Fa)+C($*Ga))+C(X*_));q=C(W*qa);s=C(ia*Y);Ha=C(q+s);ya=C(n-m);Ia=C(R*ya);za=C(k-I);Ja=C(za*U);Aa=C(J+p);Ka=C(Aa*F);L=C(C(C(ka*Ia)+C($*Ja))+C(X*Ka));T=C(C(Ea*H)+C(Ha*L));J=C(C(1)-C(Z*ia));p=C(ja*W);La=C(J-p);Ma=C(R*ka);ra=C($*U);sa=C(X*F);I=C(C(C(ka*Ma)+C($*ra))+C(X*sa));W=C(La*I);n=C(ia*ja);k=C(qa+qa);m=C(k*Y);ia=C(n+m);k=C(qa*k);ja=C(J-k);Y=C(C(ia*H)+C(ja*L));ka=C(q-s);R=C(ka*I);$=C(C(C(1)-p)-k);X=C(n-m);U=C(C($*H)+C(X*L));Z=C(M+N);F=C(Z*I);n=C(C(C(ya*Fa)+C(za*Ga))+C(Aa*_));m=C(C(C(ya*Ia)+C(za*Ja))+C(Aa*Ka));H=C(C(Ea*n)+C(Ha*m));k=C(C(C(ya*Ma)+C(za*ra))+C(Aa*sa));M=C(La*k);N=C(C(ia*n)+C(ja*m));L=C(ka*k);I=C(C($*n)+C(X*m));q=C(Z*k);_=C(C(C(ua*Fa)+C(va*Ga))+C(wa*_));m=C(C(C(ua*Ia)+C(va*Ja))+C(wa*Ka));s=C(C(Ea*_)+C(Ha*m));k=C(C(C(ua*Ma)+C(va*ra))+C(wa*sa));J=C(La*k);p=C(C(ia*_)+C(ja*m));n=C(ka*k);m=C(C($*_)+C(X*m));k=C(Z*k);na=A[G>>3];ta=+z[i+16>>2]-na;oa=A[G+16>>3];fa=+z[i+24>>2]-oa;ba=A[G+8>>3];ga=+z[i+20>>2]-ba;b=v[e+4>>2];o=b+11|0;l=v[e+8>>2]&2147483647;A:{if(o>>>0<=l>>>0){break A}ha=l;l=l?l<<1:2;l=l>>>0>>0?o:l;if(ha>>>0>=l>>>0){break A}zw(e,l);b=v[e+4>>2]}X=C(W+T);Z=C(R+Y);_=C(F+U);T=C(M+H);W=C(L+N);Y=C(q+I);R=C(J+s);U=C(n+p);F=C(k+m);H=C(ta);M=C(fa);N=C(ga);v[e+4>>2]=o;O=v[e>>2]+(b<<2)|0;v[O+8>>2]=r;v[O+4>>2]=Q;v[O>>2]=2;b=v[G+4>>2];v[O+12>>2]=v[G>>2];v[O+16>>2]=b;b=v[G+12>>2];v[O+20>>2]=v[G+8>>2];v[O+24>>2]=b;b=v[G+20>>2];v[O+28>>2]=v[G+16>>2];v[O+32>>2]=b;v[O+40>>2]=v[c+4>>2];P=Ba[v[v[ea>>2]+28>>2]](ea)|0;B:{if(w[g+56|0]){if(!aa){v[O+36>>2]=0;break B}m=z[la+12>>2];k=z[la>>2];n=C(C(m-k)*C(.5));k=C(C(C(m+k)*C(.5))-C(na));m=C(n+k);k=C(k-n);L=C(C(m-k)*C(.5));I=C(C(k+m)*C(.5));n=z[la+20>>2];k=z[la+8>>2];m=C(C(n-k)*C(.5));k=C(C(C(n+k)*C(.5))-C(oa));q=C(m+k);s=C(k-m);J=C(C(q-s)*C(.5));m=z[la+16>>2];k=z[la+4>>2];n=C(C(m-k)*C(.5));k=C(C(C(m+k)*C(.5))-C(ba));m=C(n+k);k=C(k-n);p=C(C(m-k)*C(.5));n=C(C(s+q)*C(.5));m=C(C(k+m)*C(.5));o=E+24|0;G=E+12|0;b=0;while(1){r=v[j+8>>2];l=v[j+4>>2];V=P+B(v[j>>2],12)|0;q=z[V>>2];s=z[V+4>>2];k=z[V+8>>2];z[E+8>>2]=C(C(C(R*q)+C(T*s))+C(X*k))+M;z[E+4>>2]=C(C(C(U*q)+C(W*s))+C(Z*k))+N;z[E>>2]=C(C(C(F*q)+C(Y*s))+C(_*k))+H;l=P+B(l,12)|0;q=z[l>>2];s=z[l+4>>2];k=z[l+8>>2];z[E+20>>2]=C(C(C(R*q)+C(T*s))+C(X*k))+M;z[E+16>>2]=C(C(C(U*q)+C(W*s))+C(Z*k))+N;z[E+12>>2]=C(C(C(F*q)+C(Y*s))+C(_*k))+H;l=P+B(r,12)|0;q=z[l>>2];s=z[l+4>>2];k=z[l+8>>2];z[E+32>>2]=C(C(C(R*q)+C(T*s))+C(X*k))+M;z[E+28>>2]=C(C(C(U*q)+C(W*s))+C(Z*k))+N;z[E+24>>2]=C(C(C(F*q)+C(Y*s))+C(_*k))+H;k=z[g+52>>2];u[E+124>>1]=0;z[E+120>>2]=k;z[E+116>>2]=J;z[E+112>>2]=p;z[E+108>>2]=L;z[E+104>>2]=n;z[E+100>>2]=m;z[E+96>>2]=I;v[E+92>>2]=d;v[E+88>>2]=c;v[E+80>>2]=0;v[E+84>>2]=-1;vS(E+80|0,E,G,o);l=v[E+80>>2];u[h>>1]=x[h>>1]+x[E+124>>1];j=j+12|0;b=b+l|0;aa=aa-1|0;if(aa){continue}break}v[O+36>>2]=b;break B}G=v[c+4>>2];l=aa+G|0;r=l+1|0;b=v[c+8>>2]&2147483647;C:{if(r>>>0<=b>>>0){break C}o=b;b=b?b<<1:2;b=b>>>0>>0?r:b;if(o>>>0>=b>>>0){break C}uS(c,b);G=v[c+4>>2]}v[c+4>>2]=l;b=v[c>>2];v[O+36>>2]=aa;if(!aa){break B}b=b+B(G,36)|0;while(1){r=v[j+8>>2];l=v[j+4>>2];G=P+B(v[j>>2],12)|0;n=z[G>>2];m=z[G+4>>2];k=z[G+8>>2];z[b+8>>2]=C(C(C(R*n)+C(T*m))+C(X*k))+M;z[b+4>>2]=C(C(C(U*n)+C(W*m))+C(Z*k))+N;z[b>>2]=C(C(C(F*n)+C(Y*m))+C(_*k))+H;l=P+B(l,12)|0;n=z[l>>2];m=z[l+4>>2];k=z[l+8>>2];z[b+20>>2]=C(C(C(R*n)+C(T*m))+C(X*k))+M;z[b+16>>2]=C(C(C(U*n)+C(W*m))+C(Z*k))+N;z[b+12>>2]=C(C(C(F*n)+C(Y*m))+C(_*k))+H;l=P+B(r,12)|0;n=z[l>>2];m=z[l+4>>2];k=z[l+8>>2];z[b+32>>2]=C(C(C(R*n)+C(T*m))+C(X*k))+M;z[b+28>>2]=C(C(C(U*n)+C(W*m))+C(Z*k))+N;z[b+24>>2]=C(C(C(F*n)+C(Y*m))+C(_*k))+H;v[E+80>>2]=-1;aa=aa-1|0;l=v[d+4>>2];D:{if(l>>>0>=(v[d+8>>2]&2147483647)>>>0){on(d,E+80|0);break D}v[v[d>>2]+(l<<2)>>2]=-1;v[d+4>>2]=v[d+4>>2]+1}j=j+12|0;b=b+36|0;if(aa){continue}break}}xa=E+144|0;break b;case 1:break e;default:break b}}L=z[i+8>>2];I=z[i>>2];s=z[i+4>>2];n=C(s*C(0));J=C(C(L*C(0))+C(C(I+I)+n));q=z[i+12>>2];p=C(C(q*q)+C(-.5));k=C(p*C(0));m=C(C(L*J)+C(k+C(q*C(C(I*C(0))-C(s+s)))));X=C(C(I*J)+C(C(p+p)+C(q*C(n+C(L*C(-0))))));$=C(C(s*J)+C(k+C(q*C(C(L+L)+C(I*C(-0))))));E:{if(C(D($))<=C(.9998999834060669)){W=C(0);p=C(-X);R=p;n=m;k=C(K(C(C(X*X)+C(C(m*m)+C(0)))));if(k>C(0)){k=C(C(1)/k);R=C(k*p);W=C(k*C(0));n=C(m*k)}U=C($*R);F=C(n*C(-$));k=C(C(m*n)+C(R*p));break E}U=C(0);F=C(-$);n=C(1);R=C(0);k=C(K(C(C($*$)+C(C(m*m)+C(0)))));F:{if(!(k>C(0))){W=C(0);k=m;break F}k=C(C(1)/k);F=C(k*F);W=C(0);U=C(k*C(0));k=C(m*k)}}H=z[i+24>>2];M=z[i+20>>2];N=z[i+16>>2];fa=A[i+1736>>3];ba=A[i+1728>>3];ga=A[i+1720>>3];L=z[i+1704>>2];p=z[i+1716>>2];I=z[i+1700>>2];q=z[i+1712>>2];s=z[i+1696>>2];J=z[i+1708>>2];j=v[e+4>>2];l=j+11|0;b=v[e+8>>2]&2147483647;G:{if(l>>>0<=b>>>0){break G}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break G}zw(e,b);j=v[e+4>>2]}v[e+4>>2]=l;j=v[e>>2]+(j<<2)|0;v[j+8>>2]=r;v[j+4>>2]=Q;v[j>>2]=2;b=v[i+1724>>2];v[j+12>>2]=v[i+1720>>2];v[j+16>>2]=b;b=v[ca+4>>2];v[j+20>>2]=v[ca>>2];v[j+24>>2]=b;b=v[da+4>>2];v[j+28>>2]=v[da>>2];v[j+32>>2]=b;v[j+36>>2]=2;b=v[c+4>>2];v[j+40>>2]=b;l=b+2|0;r=b+3|0;j=v[c+8>>2]&2147483647;H:{if(r>>>0<=j>>>0){break H}o=j;j=j?j<<1:2;j=j>>>0>>0?r:j;if(o>>>0>=j>>>0){break H}uS(c,j);b=v[c+4>>2]}v[c+4>>2]=l;l=v[c>>2];v[i+1856>>2]=0;j=v[d+4>>2];I:{if(j>>>0>=(v[d+8>>2]&2147483647)>>>0){on(d,i+1856|0);j=v[d+4>>2];break I}v[v[d>>2]+(j<<2)>>2]=0;j=v[d+4>>2]+1|0;v[d+4>>2]=j}v[i+1856>>2]=1;J:{if((v[d+8>>2]&2147483647)>>>0<=j>>>0){on(d,i+1856|0);break J}v[v[d>>2]+(j<<2)>>2]=1;v[d+4>>2]=v[d+4>>2]+1}Z=C(fa);_=C(ga);T=C(ba);N=C(C(C(Z*m)+C(C(_*X)+C($*T)))+C(C(0)-C(C(H*m)+C(C(N*X)+C(M*$)))));b=l+B(b,36)|0;p=C(p-L);ra=C(p*p);p=C(J-s);sa=C(p*p);p=C(q-I);q=C(K(C(ra+C(sa+C(p*p)))));Y=C(q*F);F=C(Z-C(m*N));s=C(q*R);J=C(F+s);z[b+68>>2]=C(Y+J)-Z;R=C(q*k);H=C(T-C($*N));M=C(q*W);p=C(H+M);z[b- -64>>2]=C(R+p)-T;U=C(q*U);N=C(_-C(X*N));m=C(q*n);k=C(N+m);z[b+60>>2]=C(U+k)-_;L=C(C(J-Y)-Z);z[b+56>>2]=L;I=C(C(p-R)-T);z[b+52>>2]=I;q=C(C(k-U)-_);z[b+48>>2]=q;s=C(F-s);J=C(C(Y+s)-Z);z[b+44>>2]=J;p=C(H-M);n=C(C(R+p)-T);z[b+40>>2]=n;m=C(N-m);k=C(C(U+m)-_);z[b+36>>2]=k;z[b+32>>2]=L;z[b+28>>2]=I;z[b+24>>2]=q;z[b+20>>2]=C(s-Y)-Z;z[b+16>>2]=C(p-R)-T;z[b+12>>2]=C(m-U)-_;z[b+8>>2]=J;z[b+4>>2]=n;z[b>>2]=k;break b}j=v[e+4>>2];l=j+11|0;b=v[e+8>>2]&2147483647;K:{if(l>>>0<=b>>>0){break K}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break K}zw(e,b);j=v[e+4>>2]}v[e+4>>2]=l;o=v[e>>2]+(j<<2)|0;v[o+8>>2]=r;v[o+4>>2]=Q;v[o>>2]=2;b=v[i+1724>>2];v[o+12>>2]=v[i+1720>>2];v[o+16>>2]=b;b=v[ca+4>>2];v[o+20>>2]=v[ca>>2];v[o+24>>2]=b;b=v[da+4>>2];v[o+28>>2]=v[da>>2];v[o+32>>2]=b;b=v[c+4>>2];v[o+40>>2]=b;if(w[g+56|0]){n=z[i+1716>>2];k=z[i+1704>>2];m=C(C(n-k)*C(.5));k=C(C(C(n+k)*C(.5))-L);N=C(m+k);p=C(k-m);L=C(C(N-p)*C(.5));n=z[i+1712>>2];k=z[i+1700>>2];m=C(C(n-k)*C(.5));k=C(C(C(n+k)*C(.5))-I);I=C(m+k);q=C(k-m);s=C(C(I-q)*C(.5));m=z[i+1708>>2];k=z[i+1696>>2];n=C(C(m-k)*C(.5));k=C(C(C(m+k)*C(.5))-M);m=C(n+k);k=C(k-n);J=C(C(m-k)*C(.5));p=C(C(p+N)*C(.5));n=C(C(q+I)*C(.5));m=C(C(k+m)*C(.5));j=0;b=0;while(1){r=i+1856|0;G=B(b,12)+98800|0;l=r+B(v[G>>2],12)|0;z[i+1816>>2]=z[l>>2];z[i+1820>>2]=z[l+4>>2];z[i+1824>>2]=z[l+8>>2];l=r+B(v[G+4>>2],12)|0;z[i+1828>>2]=z[l>>2];z[i+1832>>2]=z[l+4>>2];z[i+1836>>2]=z[l+8>>2];l=r+B(v[G+8>>2],12)|0;z[i+1840>>2]=z[l>>2];z[i+1844>>2]=z[l+4>>2];z[i+1848>>2]=z[l+8>>2];k=z[g+52>>2];u[i+2956>>1]=0;z[i+2952>>2]=k;z[i+2948>>2]=L;z[i+2944>>2]=s;z[i+2940>>2]=J;z[i+2936>>2]=p;z[i+2932>>2]=n;z[i+2928>>2]=m;v[i+2924>>2]=d;v[i+2920>>2]=c;v[i+2912>>2]=0;v[i+2916>>2]=-1;vS(i+2912|0,i+1816|0,Da,Ca);l=v[i+2912>>2];u[h>>1]=x[h>>1]+x[i+2956>>1];j=j+l|0;b=b+1|0;if((b|0)!=12){continue}break}v[o+36>>2]=j;break b}v[o+36>>2]=12;l=b+12|0;r=b+13|0;j=v[c+8>>2]&2147483647;L:{if(r>>>0<=j>>>0){break L}o=j;j=j?j<<1:2;j=j>>>0>>0?r:j;if(o>>>0>=j>>>0){break L}uS(c,j);b=v[c+4>>2]}v[c+4>>2]=l;l=v[c>>2]+B(b,36)|0;j=0;while(1){o=l+B(j,36)|0;r=i+1856|0;G=B(j,12)+98800|0;b=r+B(v[G>>2],12)|0;z[o>>2]=z[b>>2];z[o+4>>2]=z[b+4>>2];z[o+8>>2]=z[b+8>>2];b=r+B(v[G+4>>2],12)|0;z[o+12>>2]=z[b>>2];z[o+16>>2]=z[b+4>>2];z[o+20>>2]=z[b+8>>2];b=r+B(v[G+8>>2],12)|0;z[o+24>>2]=z[b>>2];z[o+28>>2]=z[b+4>>2];z[o+32>>2]=z[b+8>>2];v[i+2912>>2]=-1;b=v[d+4>>2];M:{if(b>>>0>=(v[d+8>>2]&2147483647)>>>0){on(d,i+2912|0);break M}v[v[d>>2]+(b<<2)>>2]=-1;v[d+4>>2]=v[d+4>>2]+1}j=j+1|0;if((j|0)!=12){continue}break}}f=f+1|0;if((Na|0)!=(f|0)){continue}break}}xa=i+2960|0}function Ry(a,b,c,d,e,f,g,h){var i=C(0),j=0,k=0,l=0,m=C(0),n=0,o=0,p=C(0),q=0,r=0,s=0,A=0,D=0,E=0,F=0,G=0,H=C(0),I=0,J=C(0),L=0,M=C(0),N=C(0),O=0,P=0,Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=0,qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=0,Ea=C(0),Fa=0,Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=0,La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=0,ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=0,Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=0,_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=C(0),rc=C(0),sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=C(0),Ac=0,Bc=0,Cc=0,Dc=0,Ec=C(0),Fc=C(0),Gc=C(0),Hc=C(0),Ic=C(0),Jc=C(0),Kc=C(0),Lc=C(0),Mc=C(0),Nc=C(0),Oc=C(0),Pc=C(0),Qc=C(0),Rc=C(0),Sc=C(0),Tc=C(0),Uc=C(0),Vc=C(0),Wc=C(0),Xc=C(0),Yc=C(0),Zc=C(0),_c=C(0),$c=C(0),ad=C(0),bd=C(0),cd=C(0),dd=C(0),ed=C(0),fd=C(0),gd=C(0),hd=C(0),id=C(0),jd=C(0),kd=C(0),ld=C(0),md=C(0),nd=C(0),od=C(0),pd=C(0),qd=C(0),rd=C(0),sd=C(0),td=C(0),ud=C(0),vd=C(0),wd=C(0),xd=C(0),yd=C(0),zd=C(0),Ad=C(0),Bd=C(0),Cd=C(0),Dd=C(0),Ed=C(0),Fd=C(0),Gd=C(0),Hd=C(0),Id=C(0),Jd=C(0),Kd=C(0),Ld=C(0),Md=C(0),Nd=C(0),Od=C(0),Pd=C(0),Qd=C(0),Rd=C(0),Sd=C(0),Td=C(0),Ud=C(0),Vd=C(0),Wd=C(0),Xd=C(0),Yd=C(0),Zd=C(0),_d=C(0),$d=C(0),ae=C(0),be=C(0),ce=C(0),de=C(0),ee=C(0),fe=C(0),ge=C(0),he=C(0),ie=C(0),je=C(0),ke=C(0),le=C(0),me=C(0),ne=C(0),oe=C(0),pe=C(0),qe=C(0),re=C(0),se=C(0),te=C(0),ue=C(0),ve=C(0),we=C(0),xe=C(0),ye=C(0),ze=C(0),Ae=C(0),Be=C(0),Ce=C(0),De=C(0),Ee=C(0),Fe=C(0),Ge=C(0),He=C(0),Ie=C(0),Je=C(0),Ke=C(0),Le=C(0),Me=C(0),Ne=C(0),Oe=C(0),Pe=C(0),Qe=C(0),Re=C(0),Se=C(0),Te=C(0),Ue=0,Ve=C(0),We=C(0),Xe=C(0),Ye=C(0),Ze=C(0),_e=C(0),$e=C(0),af=C(0),bf=C(0),cf=C(0),df=C(0),ef=C(0),ff=C(0),gf=C(0),hf=C(0),jf=C(0),kf=C(0),lf=C(0),mf=C(0),nf=C(0),of=C(0),pf=C(0),qf=C(0),rf=C(0),sf=C(0),tf=C(0),uf=C(0),vf=C(0),wf=C(0),xf=C(0),yf=C(0),zf=C(0),Af=C(0),Bf=C(0),Cf=0,Df=0,Ef=0,Ff=C(0),Gf=C(0),Hf=C(0),If=C(0),Jf=0,Kf=C(0),Lf=0,Mf=0,Nf=0,Of=0,Pf=C(0),Qf=C(0),Rf=C(0),Sf=C(0),Tf=C(0),Uf=C(0),Vf=C(0),Wf=C(0),Xf=C(0),Yf=C(0),Zf=C(0),_f=C(0),$f=0,ag=0,bg=0;r=xa-208|0;xa=r;u[v[c+16>>2]+22>>1]=0;u[v[c+192>>2]+22>>1]=0;u[v[c+368>>2]+22>>1]=0;u[v[c+544>>2]+22>>1]=0;v[b+4112>>2]=0;j=b+11812|0;v[j>>2]=0;v[j+4>>2]=0;A=1;Fa=(h|0)==1?1:2;G=b+4128|0;T=b+16|0;a:{while(1){D=B(l,176)+c|0;v[D+116>>2]=T+(q<<6);I=l<<2;j=v[I+a>>2];if(w[j+12|0]+q>>>0>64){break a}E=j;L=I+(r+96|0)|0;s=I+(r+80|0)|0;o=I+(r- -64|0)|0;j=I+(r+48|0)|0;m=z[v[D+28>>2]+76>>2];i=z[v[D+32>>2]+76>>2];I=ty(T,E,r+176|0,r+144|0,L,s,o,j,i>m?m:i);if(!I){break a}v[D+120>>2]=I;t[D+124|0]=w[r+176|0];v[D+148>>2]=v[b+11816>>2];v[D+156>>2]=v[b+11812>>2];$z(G,v[D+116>>2],I);if(aA(G,v[D+116>>2],D+36|0,D- -64|0,v[D+156>>2],v[D+148>>2])){break a}u[D+160>>1]=v[b+11812>>2]-v[D+156>>2];v[D+152>>2]=v[b+11816>>2]-v[D+148>>2];z[L>>2]=z[D>>2]*z[L>>2];z[s>>2]=z[D+8>>2]*z[s>>2];z[o>>2]=z[D+4>>2]*z[o>>2];z[j>>2]=z[D+12>>2]*z[j>>2];q=q+I|0;l=l+1|0;if((l|0)!=4){continue}break}v[r+44>>2]=0;v[r+12>>2]=0;j=xa-256|0;xa=j;I9(j+128|0,0,128);O=I9(j,0,128);k=c;I=v[c+152>>2];if(I){s=v[k+148>>2];while(1){c=s+F|0;q=v[((c<<2)+G|0)+7296>>2];b:{if(!q){break b}o=w[(B(c,104)+G|0)+2817|0];j=F<<2;c=j+(O+128|0)|0;l=v[c>>2];v[c>>2]=l>>>0>>0?q:l;P=q+P|0;if(o&1){break b}c=j+O|0;j=v[c>>2];o=c;c=B(q,Fa);v[o>>2]=c>>>0>j>>>0?c:j;P=c+P|0}F=F+1|0;if((I|0)!=(F|0)){continue}break}}v[r+16>>2]=P;T=v[k+328>>2];if(T){s=v[k+324>>2];F=0;while(1){c=s+F|0;q=v[((c<<2)+G|0)+7296>>2];c:{if(!q){break c}o=w[(B(c,104)+G|0)+2817|0];j=F<<2;c=j+(O+128|0)|0;l=v[c>>2];v[c>>2]=l>>>0>>0?q:l;n=n+q|0;if(o&1){break c}c=j+O|0;j=v[c>>2];o=c;c=B(q,Fa);v[o>>2]=c>>>0>j>>>0?c:j;n=c+n|0}F=F+1|0;if((T|0)!=(F|0)){continue}break}}v[r+20>>2]=n;n=0;P=0;L=v[k+504>>2];if(L){s=v[k+500>>2];F=0;while(1){c=s+F|0;q=v[((c<<2)+G|0)+7296>>2];d:{if(!q){break d}o=w[(B(c,104)+G|0)+2817|0];j=F<<2;c=j+(O+128|0)|0;l=v[c>>2];v[c>>2]=l>>>0>>0?q:l;P=q+P|0;if(o&1){break d}c=j+O|0;j=v[c>>2];o=c;c=B(q,Fa);v[o>>2]=c>>>0>j>>>0?c:j;P=c+P|0}F=F+1|0;if((L|0)!=(F|0)){continue}break}}v[r+24>>2]=P;q=v[k+680>>2];if(q){s=v[k+676>>2];F=0;while(1){c=s+F|0;D=v[((c<<2)+G|0)+7296>>2];e:{if(!D){break e}o=w[(B(c,104)+G|0)+2817|0];j=F<<2;c=j+(O+128|0)|0;l=v[c>>2];v[c>>2]=l>>>0>>0?D:l;n=n+D|0;if(o&1){break e}c=j+O|0;j=v[c>>2];o=c;c=B(D,Fa);v[o>>2]=c>>>0>j>>>0?c:j;n=c+n|0}F=F+1|0;if((q|0)!=(F|0)){continue}break}}v[r+28>>2]=n;c=I>>>0>>0?T:I;c=c>>>0>>0?L:c;L=c>>>0>>0?q:c;f:{if(!L){F=0;n=0;break f}P=0;D=0;n=0;F=0;if(L-1>>>0>=3){s=L&-4;q=0;while(1){l=D<<2;o=l|12;j=l|8;c=l|4;n=v[o+O>>2]+(v[j+O>>2]+(v[c+O>>2]+(v[l+O>>2]+n|0)|0)|0)|0;I=o;o=O+128|0;F=v[I+o>>2]+(v[j+o>>2]+(v[c+o>>2]+(v[l+o>>2]+F|0)|0)|0)|0;D=D+4|0;q=q+4|0;if((s|0)!=(q|0)){continue}break}}j=L&3;if(!j){break f}while(1){c=D<<2;n=v[c+O>>2]+n|0;F=v[c+(O+128|0)>>2]+F|0;D=D+1|0;P=P+1|0;if((j|0)!=(P|0)){continue}break}}v[r+12>>2]=F;v[r+44>>2]=B(n+F|0,(v[k+624>>2]|(v[k+448>>2]|(v[k+272>>2]|v[k+96>>2])))&1?192:144)+(L<<8);xa=O+256|0;j=v[r+44>>2];if(j){c=j+16|0;if(c>>>0>16384){break a}A=0;Ka=Ba[v[v[g>>2]>>2]](g,c)|0;if(Ka+1>>>0<2){break a}}o=v[k+16>>2];v[o+24>>2]=Ka;u[k+162>>1]=x[k+162>>1]+x[r+16>>1];A=j>>>4|0;u[o+22>>1]=A;g=v[a>>2];c=v[g+8>>2];u[o+20>>1]=w[g+12|0];v[o+28>>2]=c;j=v[k+192>>2];v[j+24>>2]=Ka;u[k+338>>1]=x[k+338>>1]+x[r+20>>1];u[j+22>>1]=A;g=v[a+4>>2];c=v[g+8>>2];u[j+20>>1]=w[g+12|0];v[j+28>>2]=c;j=v[k+368>>2];v[j+24>>2]=Ka;u[k+514>>1]=x[k+514>>1]+x[r+24>>1];u[j+22>>1]=A;g=v[a+8>>2];c=v[g+8>>2];u[j+20>>1]=w[g+12|0];v[j+28>>2]=c;g=v[k+544>>2];v[g+24>>2]=Ka;u[k+690>>1]=x[k+690>>1]+x[r+28>>1];u[g+22>>1]=A;c=v[a+12>>2];a=v[c+8>>2];u[g+20>>1]=w[c+12|0];v[g+28>>2]=a;j=v[k+152>>2];g=v[k+328>>2];c=v[k+504>>2];a=v[k+680>>2];a=a>>>0>>0?c:a;a=a>>>0>>0?g:a;Zb=a>>>0>>0?j:a;if(Zb){af=z[k+616>>2];bf=z[k+612>>2];cf=z[k+608>>2];df=z[k+440>>2];ef=z[k+436>>2];ff=z[k+432>>2];gf=z[k+264>>2];hf=z[k+260>>2];jf=z[k+256>>2];kf=z[k+88>>2];lf=z[k+84>>2];mf=z[k+80>>2];nf=z[k+588>>2];of=z[k+584>>2];pf=z[k+580>>2];qf=z[k+412>>2];rf=z[k+408>>2];sf=z[k+404>>2];tf=z[k+236>>2];uf=z[k+232>>2];vf=z[k+228>>2];wf=z[k+60>>2];xf=z[k+56>>2];yf=z[k+52>>2];zf=z[k+656>>2];Af=z[k+480>>2];Bf=z[k+304>>2];Cf=w[k+654|0];Df=w[k+478|0];Ef=w[k+302|0];Ff=z[k+660>>2];Gf=z[k+484>>2];Hf=z[k+308>>2];l=v[k+560>>2];Ic=z[l+32>>2];s=v[k+384>>2];Jc=z[s+32>>2];o=v[k+208>>2];Kc=z[o+32>>2];A=v[k+556>>2];Lc=z[A+32>>2];j=v[k+380>>2];Mc=z[j+32>>2];g=v[k+204>>2];Nc=z[g+32>>2];Oc=z[l+16>>2];Pc=z[s+16>>2];Qc=z[o+16>>2];Rc=z[A+16>>2];Sc=z[j+16>>2];Tc=z[g+16>>2];Uc=z[l- -64>>2];Vc=z[l+60>>2];Wc=z[l+56>>2];Xc=z[l+52>>2];Yc=z[l+48>>2];Zc=z[l+44>>2];_c=z[l+40>>2];$c=z[l+36>>2];ad=z[s- -64>>2];bd=z[s+60>>2];cd=z[s+56>>2];dd=z[s+52>>2];ed=z[s+48>>2];fd=z[s+44>>2];gd=z[s+40>>2];hd=z[s+36>>2];id=z[o- -64>>2];jd=z[o+60>>2];kd=z[o+56>>2];ld=z[o+52>>2];md=z[o+48>>2];nd=z[o+44>>2];od=z[o+40>>2];pd=z[o+36>>2];c=v[k+32>>2];qd=z[c- -64>>2];rd=z[c+60>>2];sd=z[c+56>>2];td=z[c+52>>2];ud=z[c+48>>2];vd=z[c+44>>2];wd=z[c+40>>2];xd=z[c+36>>2];yd=z[A- -64>>2];zd=z[A+60>>2];Ad=z[A+56>>2];Bd=z[A+52>>2];Cd=z[A+48>>2];Dd=z[A+44>>2];Ed=z[A+40>>2];Fd=z[A+36>>2];Gd=z[j- -64>>2];Hd=z[j+60>>2];Id=z[j+56>>2];Jd=z[j+52>>2];Kd=z[j+48>>2];Ld=z[j+44>>2];Md=z[j+40>>2];Nd=z[j+36>>2];Od=z[g- -64>>2];Pd=z[g+60>>2];Qd=z[g+56>>2];Rd=z[g+52>>2];Sd=z[g+48>>2];Td=z[g+44>>2];Ud=z[g+40>>2];Vd=z[g+36>>2];a=v[k+28>>2];Wd=z[a- -64>>2];Xd=z[a+60>>2];Yd=z[a+56>>2];Zd=z[a+52>>2];_d=z[a+48>>2];$d=z[a+44>>2];ae=z[a+40>>2];be=z[a+36>>2];ce=z[l+24>>2];de=z[l+20>>2];ee=z[s+24>>2];fe=z[s+20>>2];ge=z[o+24>>2];he=z[o+20>>2];ie=z[c+24>>2];je=z[c+20>>2];ke=z[A+24>>2];le=z[A+20>>2];me=z[j+24>>2];ne=z[j+20>>2];oe=z[g+24>>2];pe=z[g+20>>2];qe=z[a+24>>2];re=z[a+20>>2];If=z[k+128>>2];Jf=w[k+126|0];Kf=z[k+132>>2];se=z[c+32>>2];te=z[a+32>>2];ue=z[c+16>>2];ve=z[a+16>>2];we=z[r+60>>2];xe=z[r+56>>2];ye=z[r+52>>2];ze=z[r+48>>2];Ae=z[r+76>>2];Be=z[r+72>>2];Ce=z[r+68>>2];De=z[r+64>>2];m=z[A+68>>2];i=z[l+68>>2];Ee=i>2];i=z[s+68>>2];Fe=i>2];i=z[o+68>>2];Ge=i>2]|(v[k+448>>2]|(v[k+272>>2]|v[k+96>>2])))&1;Lf=ob?192:144;_b=z[A+8>>2];$b=z[l+8>>2];He=C(_b-$b);ac=z[j+8>>2];bc=z[s+8>>2];Ie=C(ac-bc);cc=z[g+8>>2];dc=z[o+8>>2];Je=C(cc-dc);ec=z[A+4>>2];fc=z[l+4>>2];Ke=C(ec-fc);gc=z[j+4>>2];hc=z[s+4>>2];Le=C(gc-hc);ic=z[g+4>>2];jc=z[o+4>>2];Me=C(ic-jc);kc=z[A>>2];lc=z[l>>2];Ne=C(kc-lc);mc=z[j>>2];nc=z[s>>2];Oe=C(mc-nc);oc=z[g>>2];pc=z[o>>2];Pe=C(oc-pc);m=z[a+68>>2];i=z[c+68>>2];Qe=i>2]*z[l+12>>2]);rc=C(z[r+88>>2]*z[s+12>>2]);sc=C(z[r+84>>2]*z[o+12>>2]);tc=C(z[r+80>>2]*z[c+12>>2]);wb=C(z[r+108>>2]*z[A+12>>2]);xb=C(z[r+104>>2]*z[j+12>>2]);yb=C(z[r+100>>2]*z[g+12>>2]);zb=C(z[r+96>>2]*z[a+12>>2]);uc=z[a+8>>2];vc=z[c+8>>2];Re=C(uc-vc);wc=z[a+4>>2];xc=z[c+4>>2];Se=C(wc-xc);yc=z[a>>2];zc=z[c>>2];Te=C(yc-zc);Mf=ob?13:14;Nf=ob?7:8;Ue=ob?176:128;E=(B(Zb,160)+B(Ue,v[r+12>>2])|0)+Ka|0;Of=(h|0)!=1;Ab=b+11552|0;n=Ka;while(1){a=v[k+328>>2];pb=y[k+152>>2]<=Da>>>0;Ac=pb?Ac:v[k+148>>2]+Da|0;c=v[k+504>>2];qb=a>>>0<=Da>>>0;Bc=qb?Bc:v[k+324>>2]+Da|0;a=v[k+680>>2];$a=c>>>0<=Da>>>0;Cc=$a?Cc:v[k+500>>2]+Da|0;rb=a>>>0<=Da>>>0;Dc=rb?Dc:v[k+676>>2]+Da|0;Z=0;aa=0;aa=pb?aa:v[((Ac<<2)+b|0)+11424>>2];Z=qb?Z:v[((Bc<<2)+b|0)+11424>>2];fa=0;a=0;a=$a?a:v[((Cc<<2)+b|0)+11424>>2];tb=8;c=v[(Dc<<2)+Ab>>2];T=v[k+644>>2]+(x[B(c,44)+G>>1]<<6)|0;H=z[T+44>>2];q=v[(Cc<<2)+Ab>>2];L=v[k+468>>2]+(x[B(q,44)+G>>1]<<6)|0;p=z[L+44>>2];l=v[(Bc<<2)+Ab>>2];s=v[k+292>>2]+(x[B(l,44)+G>>1]<<6)|0;m=z[s+44>>2];pa=v[(Ac<<2)+Ab>>2];o=v[k+116>>2]+(x[B(pa,44)+G>>1]<<6)|0;i=z[o+44>>2];Ec=z[o+60>>2];Fc=z[s+60>>2];Gc=z[L+60>>2];Hc=z[T+60>>2];if(!rb){tb=0;fa=v[((Dc<<2)+b|0)+11424>>2]}t[n+7|0]=fa;t[n+6|0]=a;t[n+5|0]=Z;t[n+4|0]=aa;u[n+2>>1]=E-n;z[n+140>>2]=we;z[n+136>>2]=xe;z[n+132>>2]=ye;z[n+128>>2]=ze;z[n+124>>2]=Ae;z[n+120>>2]=Be;z[n+116>>2]=Ce;z[n+112>>2]=De;z[n+108>>2]=qc;z[n+104>>2]=rc;z[n+100>>2]=sc;z[n+96>>2]=tc;z[n+92>>2]=wb;z[n+88>>2]=xb;z[n+84>>2]=yb;z[n+80>>2]=zb;g=a>>>0>fa>>>0?a:fa;g=g>>>0>>0?Z:g;sb=g>>>0>>0?aa:g;t[n+1|0]=sb;z[n+28>>2]=Hc;z[n+24>>2]=Gc;z[n+20>>2]=Fc;z[n+16>>2]=Ec;t[n+11|0]=Cf;t[n+10|0]=Df;t[n+9|0]=Ef;t[n+8|0]=Jf;t[n|0]=Nf;v[n+144>>2]=v[k+112>>2];v[n+148>>2]=v[k+288>>2];v[n+152>>2]=v[k+464>>2];v[n+156>>2]=v[k+640>>2];z[E+92>>2]=we;z[E+88>>2]=xe;z[E+84>>2]=ye;z[E+80>>2]=ze;z[E+76>>2]=Ae;z[E+72>>2]=Be;z[E+68>>2]=Ce;z[E+64>>2]=De;z[E+60>>2]=qc;z[E+56>>2]=rc;z[E+52>>2]=sc;z[E+48>>2]=tc;z[E+44>>2]=wb;z[E+40>>2]=xb;z[E+36>>2]=yb;z[E+32>>2]=zb;A=B(fa,Fa);t[E+10|0]=A;j=B(a,Fa);t[E+9|0]=j;h=B(Z,Fa);t[E+8|0]=h;g=B(aa,Fa);t[E+7|0]=g;t[E+6|0]=fa;t[E+5|0]=a;t[E+4|0]=Z;t[E+3|0]=aa;t[E+1|0]=sb;z[E+16>>2]=i;z[E+20>>2]=m;z[E+24>>2]=p;z[E+28>>2]=H;t[E|0]=Mf;v[E+12>>2]=Of;a=j>>>0>A>>>0?j:A;a=a>>>0>>0?h:a;t[E+2|0]=a>>>0>>0?g:a;V=z[o>>2];W=z[s>>2];X=z[L>>2];Y=z[T>>2];ba=z[o+4>>2];ca=z[s+4>>2];da=z[L+4>>2];ea=z[T+4>>2];ga=z[o+8>>2];ha=z[s+8>>2];ia=z[L+8>>2];ja=z[T+8>>2];z[n+76>>2]=ja;z[n+72>>2]=ia;z[n+68>>2]=ha;z[n+64>>2]=ga;z[n+60>>2]=ea;z[n+56>>2]=da;z[n+52>>2]=ca;z[n+48>>2]=ba;z[n+44>>2]=Y;z[n+40>>2]=X;z[n+36>>2]=W;z[n+32>>2]=V;i=C(C(He*ja)+C(C(Ne*Y)+C(Ke*ea)));m=C(He-C(ja*i));g=(Y>C(0)?Y:C(-Y))C(.10000000149011612);m=a?m:g?ea:C(0);ka=a?p:g?C(0):C(-ea);i=a?i:g?C(-ja):Y;H=C(C(1)/C(K(C(C(ka*ka)+C(C(i*i)+C(m*m))))));za=C(m*H);Aa=C(i*H);z[r+204>>2]=C(ea*za)-C(ja*Aa);i=C(C(Ie*ia)+C(C(Oe*X)+C(Le*da)));m=C(Ie-C(ia*i));g=(X>C(0)?X:C(-X))C(.10000000149011612);m=a?m:g?da:C(0);Ca=a?p:g?C(0):C(-da);i=a?i:g?C(-ia):X;U=C(C(1)/C(K(C(C(Ca*Ca)+C(C(i*i)+C(m*m))))));Q=C(m*U);_=C(i*U);z[r+200>>2]=C(da*Q)-C(ia*_);i=C(C(Je*ha)+C(C(Pe*W)+C(Me*ca)));m=C(Je-C(ha*i));g=(W>C(0)?W:C(-W))C(.10000000149011612);m=a?m:g?ca:C(0);$=a?p:g?C(0):C(-ca);i=a?i:g?C(-ha):W;M=C(C(1)/C(K(C(C($*$)+C(C(i*i)+C(m*m))))));R=C(m*M);S=C(i*M);z[r+196>>2]=C(ca*R)-C(ha*S);m=C(C(Re*ga)+C(C(Te*V)+C(Se*ba)));i=C(Re-C(ga*m));g=(V>C(0)?V:C(-V))C(.10000000149011612);i=a?i:g?ba:C(0);J=i;p=a?p:g?C(0):C(-ba);m=a?m:g?C(-ga):V;i=C(C(1)/C(K(C(C(p*p)+C(C(m*m)+C(i*i))))));J=C(J*i);N=C(m*i);z[r+192>>2]=C(ba*J)-C(ga*N);H=C(ka*H);z[r+188>>2]=H;p=C(p*i);z[r+176>>2]=p;m=C($*M);z[r+180>>2]=m;i=C(Ca*U);z[r+184>>2]=i;z[r+172>>2]=C(ja*H)-C(Y*za);z[r+168>>2]=C(ia*i)-C(X*Q);z[r+164>>2]=C(ha*m)-C(W*R);z[r+160>>2]=C(ga*p)-C(V*J);z[r+156>>2]=Aa;z[r+152>>2]=_;z[r+148>>2]=S;z[r+144>>2]=N;z[r+140>>2]=C(Y*Aa)-C(ea*H);z[r+136>>2]=C(X*_)-C(da*i);z[r+132>>2]=C(W*S)-C(ca*m);z[r+128>>2]=C(V*N)-C(ba*p);z[r+124>>2]=za;z[r+120>>2]=Q;z[r+116>>2]=R;z[r+112>>2]=J;F=65535;D=65535;g:{if((pa|0)==65535){break g}while(1){D=pa;a=B(D,44)+G|0;if(w[a+5|0]){break g}D=65535;pa=x[a+2>>1];if((pa|0)!=65535){continue}break}}h:{if((l|0)==65535){break h}while(1){F=l;a=B(l,44)+G|0;if(w[a+5|0]){break h}F=65535;l=x[a+2>>1];if((l|0)!=65535){continue}break}}T=65535;L=65535;i:{if((q|0)==65535){break i}while(1){L=q;a=B(q,44)+G|0;if(w[a+5|0]){break i}L=65535;q=x[a+2>>1];if((q|0)!=65535){continue}break}}j:{if((c|0)==65535){break j}while(1){T=c;a=B(c,44)+G|0;if(w[a+5|0]){break j}T=65535;c=x[a+2>>1];if((c|0)!=65535){continue}break}}a=65535;I=1;o=1;j=65535;c=D;k:{if((c|0)==65535){break k}while(1){j=c;c=B(c,44)+G|0;if(w[c+5|0]!=(o|0)){break k}j=65535;o=0;c=x[c+2>>1];if((c|0)!=65535){continue}break}}c=F;l:{if((c|0)==65535){break l}while(1){a=c;c=B(c,44)+G|0;if(w[c+5|0]!=(I|0)){break l}a=65535;I=0;c=x[c+2>>1];if((c|0)!=65535){continue}break}}s=65535;O=1;P=1;A=65535;c=L;m:{if((c|0)==65535){break m}while(1){A=c;c=B(c,44)+G|0;if(w[c+5|0]!=(P|0)){break m}A=65535;P=0;c=x[c+2>>1];if((c|0)!=65535){continue}break}}c=T;n:{if((c|0)==65535){break n}while(1){s=c;c=B(c,44)+G|0;if(w[c+5|0]!=(O|0)){break n}s=65535;O=0;c=x[c+2>>1];if((c|0)!=65535){continue}break}}pa=1;pa=pb?pa:!((j|0)!=65535&w[(B(j,44)+G|0)+5|0]>o>>>0);h=pb|qb<<1;g=$a<<2;o:{if(!((a|0)==65535|qb)){l=0;if(w[(B(a,44)+G|0)+5|0]>I>>>0){break o}}l=2}c=sb<<4;g=g|h;p:{if(!((A|0)==65535|$a)){h=0;if(w[(B(A,44)+G|0)+5|0]>P>>>0){break p}}h=4}c=c+E|0;q=g|tb;q:{if(!((s|0)==65535|rb)){g=0;if(w[(B(s,44)+G|0)+5|0]>O>>>0){break q}}g=8}E=c+96|0;c=n+160|0;r:{if((q|0)==15){n=c;break r}Pf=C(C($b*ja)+C(C(lc*Y)+C(fc*ea)));Qf=C(C(bc*ia)+C(C(nc*X)+C(hc*da)));Rf=C(C(dc*ha)+C(C(pc*W)+C(jc*ca)));Sf=C(C(vc*ga)+C(C(zc*V)+C(xc*ba)));Tf=C(C(_b*ja)+C(C(kc*Y)+C(ec*ea)));Uf=C(C(ac*ia)+C(C(mc*X)+C(gc*da)));Vf=C(C(cc*ha)+C(C(oc*W)+C(ic*ca)));Wf=C(C(uc*ga)+C(C(yc*V)+C(wc*ba)));H=C(C(ja*ja)+C(C(Y*Y)+C(ea*ea)));Ve=C(qc*H);p=C(C(ia*ia)+C(C(X*X)+C(da*da)));We=C(rc*p);m=C(C(ha*ha)+C(C(W*W)+C(ca*ca)));Xe=C(sc*m);i=C(C(ga*ga)+C(C(V*V)+C(ba*ba)));Ye=C(tc*i);Xf=C(wb*H);Yf=C(xb*p);Zf=C(yb*m);_f=C(zb*i);h=g|(h|(l|pa));$f=v[k+644>>2];ag=v[k+468>>2];bg=v[k+292>>2];pb=v[k+116>>2];pa=0;$a=0;rb=0;sb=0;tb=0;while(1){n=(x[B(T,44)+G>>1]+tb<<6)+$f|0;Q=z[n+16>>2];i=C(Q-pf);Bb=(i>C(0)?i:C(-i))>2];i=C(_-of);Cb=(i>C(0)?i:C(-i))>2];i=C($-nf);Db=(i>C(0)?i:C(-i))>1]+sb<<6)+ag|0;M=z[q+16>>2];i=C(M-sf);Eb=(i>C(0)?i:C(-i))>2];i=C(R-rf);Fb=(i>C(0)?i:C(-i))>2];i=C(S-qf);Gb=(i>C(0)?i:C(-i))>1]+rb<<6)+bg|0;J=z[l+16>>2];i=C(J-vf);Hb=(i>C(0)?i:C(-i))>2];i=C(N-uf);Ib=(i>C(0)?i:C(-i))>2];i=C(H-tf);Jb=(i>C(0)?i:C(-i))>1]+$a<<6)|0;p=z[g+16>>2];i=C(p-yf);Kb=(i>C(0)?i:C(-i))>2];i=C(m-xf);Lb=(i>C(0)?i:C(-i))>2];U=C(i-wf);Mb=(U>C(0)?U:C(-U))C(0)?Q:C(-Q))C(0)?M:C(-M))C(0)?J:C(-J))C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))C(0)?i:C(-i))C(0)?i:C(-i))C(0)?i:C(-i))C(0)?i:C(-i))C(0)?i:C(-i))>2];_e=z[n+36>>2];$e=z[n+40>>2];ub=C(C(Y*Ze)+C(C(ea*_e)+C(ja*$e)));ab=z[q+32>>2];bb=z[q+36>>2];cb=z[q+40>>2];Ea=C(C(X*ab)+C(C(da*bb)+C(ia*cb)));db=z[l+32>>2];eb=z[l+36>>2];fb=z[l+40>>2];ka=C(C(W*db)+C(C(ca*eb)+C(ha*fb)));za=z[g+32>>2];Aa=z[g+36>>2];Ca=z[g+40>>2];U=C(C(V*za)+C(C(ba*Aa)+C(ga*Ca)));Q=z[n+28>>2];_=z[q+28>>2];$=z[l+28>>2];M=z[g+28>>2];i=z[n+12>>2];R=z[q+12>>2];S=z[l+12>>2];J=z[g+12>>2];if(ob){qa=C(C(ea*Nb)-C(Y*Vb));ra=C(C(Y*Rb)-C(ja*Nb));sa=C(C(ja*Vb)-C(ea*Rb));gb=C(C(Uc*qa)+C(C(Vc*ra)+C(Wc*sa)));z[c+172>>2]=gb;ta=C(C(da*Ob)-C(X*Wb));ua=C(C(X*Sb)-C(ia*Ob));va=C(C(ia*Wb)-C(da*Sb));hb=C(C(ad*ta)+C(C(bd*ua)+C(cd*va)));z[c+168>>2]=hb;wa=C(C(ca*Pb)-C(W*Xb));ya=C(C(W*Tb)-C(ha*Pb));Ga=C(C(ha*Xb)-C(ca*Tb));ib=C(C(id*wa)+C(C(jd*ya)+C(kd*Ga)));z[c+164>>2]=ib;Ha=C(C(ba*Qb)-C(V*Yb));Ia=C(C(V*Ub)-C(ga*Qb));Ja=C(C(ga*Yb)-C(ba*Ub));jb=C(C(qd*Ha)+C(C(rd*Ia)+C(sd*Ja)));z[c+160>>2]=jb;kb=C(C(Xc*qa)+C(C(Yc*ra)+C(Zc*sa)));z[c+156>>2]=kb;lb=C(C(dd*ta)+C(C(ed*ua)+C(fd*va)));z[c+152>>2]=lb;mb=C(C(ld*wa)+C(C(md*ya)+C(nd*Ga)));z[c+148>>2]=mb;nb=C(C(td*Ha)+C(C(ud*Ia)+C(vd*Ja)));z[c+144>>2]=nb;N=C(C(_c*qa)+C(C($c*ra)+C(Ic*sa)));z[c+140>>2]=N;H=C(C(gd*ta)+C(C(hd*ua)+C(Jc*va)));z[c+136>>2]=H;p=C(C(od*wa)+C(C(pd*ya)+C(Kc*Ga)));z[c+132>>2]=p;m=C(C(wd*Ha)+C(C(xd*Ia)+C(se*Ja)));z[c+128>>2]=m;Sa=C(Sa+C(We+C(C(hb*hb)+C(C(lb*lb)+C(H*H)))));Wa=C(Wa+C(Xe+C(C(ib*ib)+C(C(mb*mb)+C(p*p)))));_a=C(_a+C(Ye+C(C(jb*jb)+C(C(nb*nb)+C(m*m)))));la=C(la-C(Pf+C(C(ce*qa)+C(C(de*ra)+C(Oc*sa)))));ma=C(ma-C(Qf+C(C(ee*ta)+C(C(fe*ua)+C(Pc*va)))));na=C(na-C(Rf+C(C(ge*wa)+C(C(he*ya)+C(Qc*Ga)))));Oa=C(Oa+C(Ve+C(C(gb*gb)+C(C(kb*kb)+C(N*N)))));oa=C(oa-C(Sf+C(C(ie*Ha)+C(C(je*Ia)+C(ue*Ja)))))}n=c+Ue|0;z[c+32>>2]=Xa;z[c+16>>2]=Ya;z[c+12>>2]=Na;z[c+8>>2]=Ra;z[c+4>>2]=Va;z[c>>2]=Za;v[c+48>>2]=0;v[c+52>>2]=0;z[c+44>>2]=La;z[c+40>>2]=Pa;z[c+36>>2]=Ta;z[c+28>>2]=Ma;z[c+24>>2]=Qa;z[c+20>>2]=Ua;v[c+56>>2]=0;v[c+60>>2]=0;N=Oa>C(0)?C(C(1)/Oa):C(0);z[c+76>>2]=N;H=Sa>C(0)?C(C(1)/Sa):C(0);z[c+72>>2]=H;p=Wa>C(0)?C(C(1)/Wa):C(0);z[c+68>>2]=p;m=_a>C(0)?C(C(1)/_a):C(0);z[c+64>>2]=m;z[c+112>>2]=M;z[c+116>>2]=$;z[c+120>>2]=_;z[c+124>>2]=Q;M=C(i-zf);i=C(vb*M);i=C((iC(0)&e>la&N>C(M*d);z[c+108>>2]=M<=Ff?aa?C(0):i:i;R=C(R-Af);i=C(vb*R);i=C((iC(0)&e>ma&H>C(R*d);z[c+104>>2]=R<=Gf?q?C(0):i:i;S=C(S-Bf);i=C(vb*S);i=C((iC(0)&e>na&p>C(S*d);z[c+100>>2]=S<=Hf?l?C(0):i:i;J=C(J-If);i=C(vb*J);m=C((iC(0)&e>oa&i>C(J*d);z[c+96>>2]=J<=Kf?g?C(0):m:m;z[c+80>>2]=C(U+(g?C(Ec*i):C(0)))-oa;z[c+84>>2]=C(ka+(l?C(Fc*p):C(0)))-na;z[c+88>>2]=C(Ea+(q?C(Gc*H):C(0)))-ma;z[c+92>>2]=C(ub+(aa?C(Hc*N):C(0)))-la;Z=0;c=E;while(1){g=pa<<4;q=g+(r+144|0)|0;la=z[q+12>>2];l=g+(r+176|0)|0;ma=z[l+12>>2];Q=C(C(Bb*la)-C(Cb*ma));g=g+(r+112|0)|0;na=z[g+12>>2];_=C(C(Db*ma)-C(Bb*na));$=C(C(Cb*na)-C(Db*la));gb=C(C(yd*Q)+C(C(zd*_)+C(Ad*$)));hb=C(C(Bd*Q)+C(C(Cd*_)+C(Dd*$)));ib=C(C(Ed*Q)+C(C(Fd*_)+C(Lc*$)));Ga=C(wb+C(C(gb*gb)+C(C(hb*hb)+C(ib*ib))));oa=z[q+8>>2];qa=z[l+8>>2];M=C(C(Eb*oa)-C(Fb*qa));ra=z[g+8>>2];R=C(C(Gb*qa)-C(Eb*ra));S=C(C(Fb*ra)-C(Gb*oa));jb=C(C(Gd*M)+C(C(Hd*R)+C(Id*S)));kb=C(C(Jd*M)+C(C(Kd*R)+C(Ld*S)));lb=C(C(Md*M)+C(C(Nd*R)+C(Mc*S)));Ha=C(xb+C(C(jb*jb)+C(C(kb*kb)+C(lb*lb))));sa=z[q+4>>2];ta=z[l+4>>2];J=C(C(Hb*sa)-C(Ib*ta));ua=z[g+4>>2];N=C(C(Jb*ta)-C(Hb*ua));H=C(C(Ib*ua)-C(Jb*sa));mb=C(C(Od*J)+C(C(Pd*N)+C(Qd*H)));nb=C(C(Rd*J)+C(C(Sd*N)+C(Td*H)));ub=C(C(Ud*J)+C(C(Vd*N)+C(Nc*H)));Ia=C(yb+C(C(mb*mb)+C(C(nb*nb)+C(ub*ub))));va=z[q>>2];wa=z[l>>2];p=C(C(Kb*va)-C(Lb*wa));ya=z[g>>2];m=C(C(Mb*wa)-C(Kb*ya));i=C(C(Lb*ya)-C(Mb*va));Ea=C(C(Wd*p)+C(C(Xd*m)+C(Yd*i)));ka=C(C(Zd*p)+C(C(_d*m)+C($d*i)));U=C(C(ae*p)+C(C(be*m)+C(te*i)));Ja=C(zb+C(C(Ea*Ea)+C(C(ka*ka)+C(U*U))));Oa=C(C(C(kc*ma)+C(C(ec*la)+C(_b*na)))+C(C(ke*Q)+C(C(le*_)+C(Rc*$))));Sa=C(C(C(mc*qa)+C(C(gc*oa)+C(ac*ra)))+C(C(me*M)+C(C(ne*R)+C(Sc*S))));Wa=C(C(C(oc*ta)+C(C(ic*sa)+C(cc*ua)))+C(C(oe*J)+C(C(pe*N)+C(Tc*H))));_a=C(C(C(yc*wa)+C(C(wc*va)+C(uc*ya)))+C(C(qe*p)+C(C(re*m)+C(ve*i))));if(ob){La=C(C(Nb*la)-C(Vb*ma));Ma=C(C(Rb*ma)-C(Nb*na));Na=C(C(Vb*na)-C(Rb*la));Q=C(C(Uc*La)+C(C(Vc*Ma)+C(Wc*Na)));z[c+188>>2]=Q;Pa=C(C(Ob*oa)-C(Wb*qa));Qa=C(C(Sb*qa)-C(Ob*ra));Ra=C(C(Wb*ra)-C(Sb*oa));_=C(C(ad*Pa)+C(C(bd*Qa)+C(cd*Ra)));z[c+184>>2]=_;Ta=C(C(Pb*sa)-C(Xb*ta));Ua=C(C(Tb*ta)-C(Pb*ua));Va=C(C(Xb*ua)-C(Tb*sa));$=C(C(id*Ta)+C(C(jd*Ua)+C(kd*Va)));z[c+180>>2]=$;Xa=C(C(Qb*va)-C(Yb*wa));Ya=C(C(Ub*wa)-C(Qb*ya));Za=C(C(Yb*ya)-C(Ub*va));M=C(C(qd*Xa)+C(C(rd*Ya)+C(sd*Za)));z[c+176>>2]=M;R=C(C(Xc*La)+C(C(Yc*Ma)+C(Zc*Na)));z[c+172>>2]=R;S=C(C(dd*Pa)+C(C(ed*Qa)+C(fd*Ra)));z[c+168>>2]=S;J=C(C(ld*Ta)+C(C(md*Ua)+C(nd*Va)));z[c+164>>2]=J;N=C(C(td*Xa)+C(C(ud*Ya)+C(vd*Za)));z[c+160>>2]=N;H=C(C(_c*La)+C(C($c*Ma)+C(Ic*Na)));z[c+156>>2]=H;p=C(C(gd*Pa)+C(C(hd*Qa)+C(Jc*Ra)));z[c+152>>2]=p;m=C(C(od*Ta)+C(C(pd*Ua)+C(Kc*Va)));z[c+148>>2]=m;i=C(C(wd*Xa)+C(C(xd*Ya)+C(se*Za)));z[c+144>>2]=i;Ga=C(Ga+C(Ve+C(C(Q*Q)+C(C(R*R)+C(H*H)))));Ha=C(Ha+C(We+C(C(_*_)+C(C(S*S)+C(p*p)))));Ia=C(Ia+C(Xe+C(C($*$)+C(C(J*J)+C(m*m)))));Sa=C(Sa-C(C(C(nc*qa)+C(C(hc*oa)+C(bc*ra)))+C(C(ee*Pa)+C(C(fe*Qa)+C(Pc*Ra)))));Wa=C(Wa-C(C(C(pc*ta)+C(C(jc*sa)+C(dc*ua)))+C(C(ge*Ta)+C(C(he*Ua)+C(Qc*Va)))));_a=C(_a-C(C(C(zc*wa)+C(C(xc*va)+C(vc*ya)))+C(C(ie*Xa)+C(C(je*Ya)+C(ue*Za)))));Oa=C(Oa-C(C(C(lc*ma)+C(C(fc*la)+C($b*na)))+C(C(ce*La)+C(C(de*Ma)+C(Oc*Na)))));Ja=C(Ja+C(Ye+C(C(M*M)+C(C(N*N)+C(i*i)))))}pa=1-pa|0;v[c+96>>2]=0;v[c+100>>2]=0;z[c+80>>2]=Ea;z[c+64>>2]=ka;z[c+48>>2]=U;v[c+104>>2]=0;v[c+108>>2]=0;z[c+92>>2]=gb;z[c+88>>2]=jb;z[c+84>>2]=mb;z[c+76>>2]=hb;z[c+72>>2]=kb;z[c+68>>2]=nb;z[c+60>>2]=ib;z[c+56>>2]=lb;z[c+52>>2]=ub;z[c+124>>2]=-(Ga>C(0)?C(C(1)/Ga):C(0));z[c+120>>2]=-(Ha>C(0)?C(C(1)/Ha):C(0));z[c+116>>2]=-(Ia>C(0)?C(C(1)/Ia):C(0));z[c+112>>2]=-(Ja>C(0)?C(C(1)/Ja):C(0));z[c+140>>2]=C(C(C(Ze*ma)+C(_e*la))+C($e*na))-Oa;z[c+136>>2]=C(C(C(ab*qa)+C(bb*oa))+C(cb*ra))-Sa;z[c+132>>2]=C(C(C(db*ta)+C(eb*sa))+C(fb*ua))-Wa;z[c+128>>2]=C(C(C(za*wa)+C(Aa*va))+C(Ca*ya))-_a;z[c+44>>2]=na;z[c+40>>2]=ra;z[c+36>>2]=ua;z[c+32>>2]=ya;z[c+28>>2]=la;z[c+24>>2]=oa;z[c+20>>2]=sa;z[c+16>>2]=va;z[c+12>>2]=ma;z[c+8>>2]=qa;z[c+4>>2]=ta;z[c>>2]=wa;E=c+Lf|0;c=E;Z=Z+1|0;if((Fa|0)!=(Z|0)){continue}break}s:{if(h&1){g=j;Z=o;o=h;break s}Z=o+1|0;g=65535;l=0;c=j;t:{if((c|0)==65535){break t}while(1){q=B(c,44)+G|0;g=w[q+5|0];if((g|0)==(Z|0)){g=65535;Z=0;c=x[q+2>>1];if((c|0)!=65535){continue}break t}break}l=(c|0)!=65535&g>>>0>Z>>>0;g=c}D=j;$a=o;o=l^1|h}u:{if(h&2){q=a;aa=I;break u}aa=I+1|0;fa=2;q=a;v:{if((a|0)==65535){q=65535;break v}w:{while(1){j=B(q,44)+G|0;c=w[j+5|0];if((c|0)!=(aa|0)){break w}aa=0;q=x[j+2>>1];if((q|0)!=65535){continue}break}q=65535;break v}if((q|0)==65535){q=65535;break v}fa=c>>>0>aa>>>0?0:2}o=o|fa;F=a;rb=I}x:{if(h&4){l=A;fa=P;break x}fa=P+1|0;j=4;l=A;y:{if((l|0)==65535){l=65535;break y}z:{while(1){c=B(l,44)+G|0;a=w[c+5|0];if((a|0)!=(fa|0)){break z}fa=0;l=x[c+2>>1];if((l|0)!=65535){continue}break}l=65535;break y}if((l|0)==65535){l=65535;break y}j=a>>>0>fa>>>0?0:4}o=j|o;L=A;sb=P}qb=(h|0)!=15;if(h&8){h=o}else{a=O+1|0;I=8;c=s;A:{if((c|0)==65535){c=65535;break A}B:{while(1){A=B(c,44)+G|0;j=w[A+5|0];if((j|0)!=(a|0)){break B}a=0;c=x[A+2>>1];if((c|0)!=65535){continue}break}c=65535;break A}if((c|0)==65535){c=65535;break A}I=a>>>0>>0?0:8}T=s;tb=O;O=a;s=c;h=o|I}c=n;o=Z;j=g;I=aa;a=q;P=fa;A=l;if(qb){continue}break}}Da=Da+1|0;if((Zb|0)!=(Da|0)){continue}break}}a=v[r+44>>2]+Ka|0;v[a>>2]=0;v[a+4>>2]=-1;A=2}xa=r+208|0;return A}function f4(a,b,c,d,e){var f=0,g=0,h=0,i=0,k=0,l=0,m=C(0),n=0,o=C(0),q=C(0),r=C(0),s=0,E=0,F=C(0),G=0,H=0,I=0,J=C(0),L=0,M=0,N=0,O=0,P=C(0),Q=0,R=0,S=0,T=C(0),U=0,V=0,W=C(0),X=0,Y=0,Z=0,_=0,$=C(0),aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=C(0),ja=0;X=xa-32|0;xa=X;a:{b:{f=v[b+8>>2];c:{if(f>>>0<3){break c}d:{if(f>>>0>=65536){if(t[b+36|0]&1){break c}if(v[b+4>>2]){break d}break c}if(!v[b+4>>2]){break c}}if(y[b>>2]<12|x[b+40>>1]<4){break c}e:{if(v[b+16>>2]){if(!v[b+28>>2]|y[b+20>>2]<4){break c}g=x[b+36>>1];if(y[b+24>>2]<(g&1?2:4)>>>0){break c}if(y[b+12>>2]>19){break e}break c}g=x[b+36>>1];if(!(g&2)){break c}}f=x[b+38>>1];if(g&32){if((f-4&65535)>>>0>=253){break c}break b}if((f-8&65535)>>>0<249){break b}}a9(v[37696],4,9156,73,76068,0);b=0;break a}S=e;e=xa-32|0;R=e;xa=e;N=b;E=v[b+8>>2];s=e-(B(E,12)+15&-16)|0;G=s;xa=s;f:{if(!E){break f}h=v[N>>2];L=E-1|0;g=v[N+4>>2];M=E&3;g:{if(!M){b=s;e=E;break g}b=s;e=E;while(1){f=w[g+4|0]|w[g+5|0]<<8|(w[g+6|0]<<16|w[g+7|0]<<24);l=w[g|0]|w[g+1|0]<<8|(w[g+2|0]<<16|w[g+3|0]<<24);t[b|0]=l;t[b+1|0]=l>>>8;t[b+2|0]=l>>>16;t[b+3|0]=l>>>24;t[b+4|0]=f;t[b+5|0]=f>>>8;t[b+6|0]=f>>>16;t[b+7|0]=f>>>24;f=w[g+8|0]|w[g+9|0]<<8|(w[g+10|0]<<16|w[g+11|0]<<24);t[b+8|0]=f;t[b+9|0]=f>>>8;t[b+10|0]=f>>>16;t[b+11|0]=f>>>24;g=g+h|0;b=b+12|0;e=e-1|0;n=n+1|0;if((M|0)!=(n|0)){continue}break}}if(L>>>0<3){break f}while(1){f=w[g+4|0]|w[g+5|0]<<8|(w[g+6|0]<<16|w[g+7|0]<<24);l=w[g|0]|w[g+1|0]<<8|(w[g+2|0]<<16|w[g+3|0]<<24);t[b|0]=l;t[b+1|0]=l>>>8;t[b+2|0]=l>>>16;t[b+3|0]=l>>>24;t[b+4|0]=f;t[b+5|0]=f>>>8;t[b+6|0]=f>>>16;t[b+7|0]=f>>>24;f=w[g+8|0]|w[g+9|0]<<8|(w[g+10|0]<<16|w[g+11|0]<<24);t[b+8|0]=f;t[b+9|0]=f>>>8;t[b+10|0]=f>>>16;t[b+11|0]=f>>>24;f=g+h|0;g=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+20|0]=g;t[b+21|0]=g>>>8;t[b+22|0]=g>>>16;t[b+23|0]=g>>>24;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);l=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+12|0]=l;t[b+13|0]=l>>>8;t[b+14|0]=l>>>16;t[b+15|0]=l>>>24;t[b+16|0]=g;t[b+17|0]=g>>>8;t[b+18|0]=g>>>16;t[b+19|0]=g>>>24;f=f+h|0;g=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+32|0]=g;t[b+33|0]=g>>>8;t[b+34|0]=g>>>16;t[b+35|0]=g>>>24;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);l=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+24|0]=l;t[b+25|0]=l>>>8;t[b+26|0]=l>>>16;t[b+27|0]=l>>>24;t[b+28|0]=g;t[b+29|0]=g>>>8;t[b+30|0]=g>>>16;t[b+31|0]=g>>>24;f=f+h|0;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);l=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+36|0]=l;t[b+37|0]=l>>>8;t[b+38|0]=l>>>16;t[b+39|0]=l>>>24;t[b+40|0]=g;t[b+41|0]=g>>>8;t[b+42|0]=g>>>16;t[b+43|0]=g>>>24;g=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+44|0]=g;t[b+45|0]=g>>>8;t[b+46|0]=g>>>16;t[b+47|0]=g>>>24;b=b+48|0;g=f+h|0;e=e-4|0;if(e){continue}break}}b=v[N+28>>2];h:{if(!b){l=0;break h}e=v[N+32>>2];f=e<<2;l=G-(f+15&-16)|0;G=l;xa=l;if(t[N+36|0]&1){if((e|0)<=0){break h}e=f+l|0;f=v[N+24>>2];g=l;while(1){v[g>>2]=x[b>>1];b=b+f|0;g=g+4|0;if(e>>>0>g>>>0){continue}break}break h}if(!e){break h}f=v[N+24>>2];L=e-1|0;M=e&3;i:{if(!M){g=l;break i}n=0;g=l;while(1){h=w[b|0]|w[b+1|0]<<8|(w[b+2|0]<<16|w[b+3|0]<<24);t[g|0]=h;t[g+1|0]=h>>>8;t[g+2|0]=h>>>16;t[g+3|0]=h>>>24;b=b+f|0;g=g+4|0;e=e-1|0;n=n+1|0;if((M|0)!=(n|0)){continue}break}}if(L>>>0<3){break h}while(1){h=w[b|0]|w[b+1|0]<<8|(w[b+2|0]<<16|w[b+3|0]<<24);t[g|0]=h;t[g+1|0]=h>>>8;t[g+2|0]=h>>>16;t[g+3|0]=h>>>24;b=b+f|0;h=w[b|0]|w[b+1|0]<<8|(w[b+2|0]<<16|w[b+3|0]<<24);t[g+4|0]=h;t[g+5|0]=h>>>8;t[g+6|0]=h>>>16;t[g+7|0]=h>>>24;b=b+f|0;h=w[b|0]|w[b+1|0]<<8|(w[b+2|0]<<16|w[b+3|0]<<24);t[g+8|0]=h;t[g+9|0]=h>>>8;t[g+10|0]=h>>>16;t[g+11|0]=h>>>24;b=b+f|0;h=w[b|0]|w[b+1|0]<<8|(w[b+2|0]<<16|w[b+3|0]<<24);t[g+12|0]=h;t[g+13|0]=h>>>8;t[g+14|0]=h>>>16;t[g+15|0]=h>>>24;g=g+16|0;b=b+f|0;e=e-4|0;if(e){continue}break}}g=v[N+16>>2];j:{if(!g){h=v[N+20>>2];n=0;break j}h=v[N+20>>2];n=G-(B(h,20)+15&-16)|0;xa=n;if(!h){h=0;break j}G=v[N+12>>2];L=h-1|0;O=h&3;k:{if(!O){b=n;e=h;break k}b=n;e=h;while(1){f=w[g+4|0]|w[g+5|0]<<8|(w[g+6|0]<<16|w[g+7|0]<<24);M=w[g|0]|w[g+1|0]<<8|(w[g+2|0]<<16|w[g+3|0]<<24);t[b|0]=M;t[b+1|0]=M>>>8;t[b+2|0]=M>>>16;t[b+3|0]=M>>>24;t[b+4|0]=f;t[b+5|0]=f>>>8;t[b+6|0]=f>>>16;t[b+7|0]=f>>>24;f=w[g+16|0]|w[g+17|0]<<8|(w[g+18|0]<<16|w[g+19|0]<<24);t[b+16|0]=f;t[b+17|0]=f>>>8;t[b+18|0]=f>>>16;t[b+19|0]=f>>>24;f=w[g+12|0]|w[g+13|0]<<8|(w[g+14|0]<<16|w[g+15|0]<<24);M=w[g+8|0]|w[g+9|0]<<8|(w[g+10|0]<<16|w[g+11|0]<<24);t[b+8|0]=M;t[b+9|0]=M>>>8;t[b+10|0]=M>>>16;t[b+11|0]=M>>>24;t[b+12|0]=f;t[b+13|0]=f>>>8;t[b+14|0]=f>>>16;t[b+15|0]=f>>>24;g=g+G|0;b=b+20|0;e=e-1|0;i=i+1|0;if((O|0)!=(i|0)){continue}break}}if(L>>>0>=3){while(1){f=w[g+4|0]|w[g+5|0]<<8|(w[g+6|0]<<16|w[g+7|0]<<24);i=w[g|0]|w[g+1|0]<<8|(w[g+2|0]<<16|w[g+3|0]<<24);t[b|0]=i;t[b+1|0]=i>>>8;t[b+2|0]=i>>>16;t[b+3|0]=i>>>24;t[b+4|0]=f;t[b+5|0]=f>>>8;t[b+6|0]=f>>>16;t[b+7|0]=f>>>24;f=w[g+16|0]|w[g+17|0]<<8|(w[g+18|0]<<16|w[g+19|0]<<24);t[b+16|0]=f;t[b+17|0]=f>>>8;t[b+18|0]=f>>>16;t[b+19|0]=f>>>24;f=w[g+12|0]|w[g+13|0]<<8|(w[g+14|0]<<16|w[g+15|0]<<24);i=w[g+8|0]|w[g+9|0]<<8|(w[g+10|0]<<16|w[g+11|0]<<24);t[b+8|0]=i;t[b+9|0]=i>>>8;t[b+10|0]=i>>>16;t[b+11|0]=i>>>24;t[b+12|0]=f;t[b+13|0]=f>>>8;t[b+14|0]=f>>>16;t[b+15|0]=f>>>24;f=g+G|0;g=w[f+16|0]|w[f+17|0]<<8|(w[f+18|0]<<16|w[f+19|0]<<24);t[b+36|0]=g;t[b+37|0]=g>>>8;t[b+38|0]=g>>>16;t[b+39|0]=g>>>24;g=w[f+12|0]|w[f+13|0]<<8|(w[f+14|0]<<16|w[f+15|0]<<24);i=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+28|0]=i;t[b+29|0]=i>>>8;t[b+30|0]=i>>>16;t[b+31|0]=i>>>24;t[b+32|0]=g;t[b+33|0]=g>>>8;t[b+34|0]=g>>>16;t[b+35|0]=g>>>24;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);i=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+20|0]=i;t[b+21|0]=i>>>8;t[b+22|0]=i>>>16;t[b+23|0]=i>>>24;t[b+24|0]=g;t[b+25|0]=g>>>8;t[b+26|0]=g>>>16;t[b+27|0]=g>>>24;f=f+G|0;g=w[f+16|0]|w[f+17|0]<<8|(w[f+18|0]<<16|w[f+19|0]<<24);t[b+56|0]=g;t[b+57|0]=g>>>8;t[b+58|0]=g>>>16;t[b+59|0]=g>>>24;g=w[f+12|0]|w[f+13|0]<<8|(w[f+14|0]<<16|w[f+15|0]<<24);i=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+48|0]=i;t[b+49|0]=i>>>8;t[b+50|0]=i>>>16;t[b+51|0]=i>>>24;t[b+52|0]=g;t[b+53|0]=g>>>8;t[b+54|0]=g>>>16;t[b+55|0]=g>>>24;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);i=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+40|0]=i;t[b+41|0]=i>>>8;t[b+42|0]=i>>>16;t[b+43|0]=i>>>24;t[b+44|0]=g;t[b+45|0]=g>>>8;t[b+46|0]=g>>>16;t[b+47|0]=g>>>24;f=f+G|0;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);i=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+60|0]=i;t[b+61|0]=i>>>8;t[b+62|0]=i>>>16;t[b+63|0]=i>>>24;t[b+64|0]=g;t[b+65|0]=g>>>8;t[b+66|0]=g>>>16;t[b+67|0]=g>>>24;g=w[f+12|0]|w[f+13|0]<<8|(w[f+14|0]<<16|w[f+15|0]<<24);i=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+68|0]=i;t[b+69|0]=i>>>8;t[b+70|0]=i>>>16;t[b+71|0]=i>>>24;t[b+72|0]=g;t[b+73|0]=g>>>8;t[b+74|0]=g>>>16;t[b+75|0]=g>>>24;g=w[f+16|0]|w[f+17|0]<<8|(w[f+18|0]<<16|w[f+19|0]<<24);t[b+76|0]=g;t[b+77|0]=g>>>8;t[b+78|0]=g>>>16;t[b+79|0]=g>>>24;b=b+80|0;g=f+G|0;e=e-4|0;if(e){continue}break}}if(h>>>0<2|S){break j}G=L&3;e=0;l:{if(h-2>>>0<3){b=1;g=0;break l}L=L&-4;g=0;b=1;i=0;while(1){f=B(b,20)+n|0;g=x[f+16>>1]>x[(B(g,20)+n|0)+16>>1]?b:g;g=x[f+36>>1]>x[(B(g,20)+n|0)+16>>1]?b+1|0:g;g=x[f+56>>1]>x[(B(g,20)+n|0)+16>>1]?b+2|0:g;g=x[f+76>>1]>x[(B(g,20)+n|0)+16>>1]?b+3|0:g;b=b+4|0;i=i+4|0;if((L|0)!=(i|0)){continue}break}}if(G){while(1){g=x[(B(b,20)+n|0)+16>>1]>x[(B(g,20)+n|0)+16>>1]?b:g;b=b+1|0;e=e+1|0;if((G|0)!=(e|0)){continue}break}}if(!g){break j}v[R+24>>2]=v[n+16>>2];b=v[n+12>>2];v[R+16>>2]=v[n+8>>2];v[R+20>>2]=b;b=v[n+4>>2];v[R+8>>2]=v[n>>2];v[R+12>>2]=b;b=B(g,20)+n|0;v[n+16>>2]=v[b+16>>2];e=v[b+12>>2];v[n+8>>2]=v[b+8>>2];v[n+12>>2]=e;e=v[b+4>>2];v[n>>2]=v[b>>2];v[n+4>>2]=e;v[b+16>>2]=v[R+24>>2];e=v[R+20>>2];v[b+8>>2]=v[R+16>>2];v[b+12>>2]=e;e=v[R+12>>2];v[b>>2]=v[R+8>>2];v[b+4>>2]=e}I=v[N+32>>2];i=h;ga=!(x[N+36>>1]&16);G=0;v[a>>2]=0;v[a+4>>2]=0;L=a+24|0;v[L>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;t[v[a+28>>2]+38|0]=E;f=a;a=v[37696];a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,B(E&255,12)|1,24422,9064,118)|0;v[f>>2]=a;H9(a,s,B(w[v[f+28>>2]+38|0],12));t[v[f+28>>2]+39|0]=0;a=v[f+8>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[f+8>>2]=0;a=v[f+4>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[f+4>>2]=0;m:{if(i>>>0>=256){a9(v[37696],32,9064,128,72494,0);e=0;break m}t[v[f+28>>2]+39|0]=i;if(i){a=v[37696];a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,B(i,20),24422,9064,134)|0}else{a=0}v[f+4>>2]=a;if(I){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?35013:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,I,b,9064,136)|0}else{b=0}v[f+8>>2]=b;if(i){e=v[f+4>>2];while(1){s=B(G,20);a=s+e|0;u[a+16>>1]=b-v[f+8>>2];h=a;a=n+s|0;E=x[a+16>>1];t[h+18|0]=E;if(E){g=0;e=0;if(E-1>>>0>=3){M=E&65532;h=0;while(1){t[b+e|0]=v[(x[a+18>>1]+e<<2)+l>>2];O=e|1;t[O+b|0]=v[(O+x[a+18>>1]<<2)+l>>2];O=e|2;t[O+b|0]=v[(O+x[a+18>>1]<<2)+l>>2];O=e|3;t[O+b|0]=v[(O+x[a+18>>1]<<2)+l>>2];e=e+4|0;h=h+4|0;if((M|0)!=(h|0)){continue}break}}h=E&3;if(h){while(1){t[b+e|0]=v[(x[a+18>>1]+e<<2)+l>>2];e=e+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}e=v[f+4>>2]}g=v[a>>2];M=v[a+4>>2];h=e+s|0;s=v[a+12>>2];v[h+8>>2]=v[a+8>>2];v[h+12>>2]=s;v[h>>2]=g;v[h+4>>2]=M;b=b+E|0;G=G+1|0;if((i|0)!=(G|0)){continue}break}}e=0;n:{if(!a4(f,i,!S)){break n}o:{p:{if(S){if(Ba[v[v[S>>2]+16>>2]](S,I,v[f+8>>2],f+12|0,f+20|0,L)|0){break p}}b=0;n=0;da=xa-48|0;xa=da;q:{if(I&1){a9(v[37696],32,9064,566,73287,0);break q}Y=w[v[f+28>>2]+39|0];a=v[f+12>>2];if(a){h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,a)}v[f+12>>2]=0;if(I){a=v[37696];h=Ba[v[v[a>>2]+20>>2]](a)|0?35013:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,I,h,9064,574)|0}else{a=0}v[f+12>>2]=a;a=I<<3;h=(a&1073741816)!=(a|0)?-1:I<<5;if(h){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,h,b,9064,576)|0}a=I<<2;S=a+b|0;M=a+S|0;O=M+a|0;ea=O+a|0;fa=a+ea|0;U=a+fa|0;if(I){h=v[37696];g=Ba[v[v[h>>2]+20>>2]](h)|0?38519:63804;l=Ba[v[v[h+12>>2]+8>>2]](h+12|0,I,g,9064,588)|0}else{l=0}Q=a+U|0;if(Y){aa=v[f+8>>2];ba=v[f+4>>2];G=b;h=S;E=M;s=l;g=O;while(1){a=ba+B(n,20)|0;ca=w[a+18|0];if(ca){Z=aa+x[a+16>>1]|0;k=0;while(1){a=k+1|0;_=(a|0)==(ca|0);L=w[k+Z|0];V=w[Z+(_?0:a)|0];v[G>>2]=L>>>0>>0?L:V;ja=L;L=L>>>0>V>>>0;v[h>>2]=L?ja:V;v[E>>2]=n;v[g>>2]=k;t[s|0]=L;v[(H<<2)+Q>>2]=H;H=H+1|0;s=s+1|0;g=g+4|0;E=E+4|0;h=h+4|0;G=G+4|0;k=a;if(!_){continue}break}}n=n+1|0;if((Y|0)!=(n|0)){continue}break}}_=RU(da+8|0);ca=v[VU(VU(_,S,I,1),b,I,1)+8>>2];a=v[f+24>>2];if(a){h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,a)}v[f+24>>2]=0;a=I+I|0;a=a>>>0>>0?-1:a;if(a){h=v[37696];g=Ba[v[v[h>>2]+20>>2]](h)|0?27439:63804;h=Ba[v[v[h+12>>2]+8>>2]](h+12|0,a,g,9064,634)|0}else{h=0}v[f+24>>2]=h;h=v[f+20>>2];if(h){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,h)}V=0;v[f+20>>2]=0;Y=0;if(a){h=v[37696];g=Ba[v[v[h>>2]+20>>2]](h)|0?27439:63804;Y=Ba[v[v[h+12>>2]+8>>2]](h+12|0,a,g,9064,638)|0}v[f+20>>2]=Y;a=v[f+28>>2];u[a+36>>1]=0;r:{if(I){E=v[f+24>>2];k=0;H=-1;n=-1;a=-1;g=0;while(1){Z=k<<2;h=v[Z+ca>>2];aa=w[h+l|0];s=h<<2;h=v[s+S>>2];ba=v[s+O>>2];G=v[s+M>>2];L=v[b+s>>2];s:{if(!((L|0)==(a|0)&(h|0)==(n|0))){if(!((g|0)!=1?k:0)){u[E+2>>1]=aa?L:h;u[E>>1]=aa?h:L;E=E+4|0;V=V+1|0;s=V&65535;a=L;n=h;H=G;g=0;break s}k=0;a9(v[37696],32,9064,674,73287,0);break r}s=V&65535;h=s<<1;t[(h+v[f+12>>2]|0)-2|0]=H;t[(h+v[f+12>>2]|0)-1|0]=G;Y=v[f+20>>2];g=g+1|0}u[(ba+x[(v[f+4>>2]+B(G,20)|0)+16>>1]<<1)+Y>>1]=k>>>1;v[Z+ea>>2]=G;v[Z+fa>>2]=ba;v[U+Z>>2]=s-1;k=k+1|0;if((I|0)!=(k|0)){continue}break}a=v[f+28>>2]}u[a+36>>1]=V;t:{if(!ga){break t}a=VU(VU(_,fa,I,1),ea,I,1);u:{if(!I){break u}a=v[a+8>>2];g=0;k=0;if(I-1>>>0>=3){n=I&-4;G=0;while(1){h=k<<2;v[h+Q>>2]=v[(v[a+h>>2]<<2)+U>>2];E=h|4;v[E+Q>>2]=v[(v[a+E>>2]<<2)+U>>2];E=h|8;v[E+Q>>2]=v[(v[a+E>>2]<<2)+U>>2];h=h|12;v[h+Q>>2]=v[(v[a+h>>2]<<2)+U>>2];k=k+4|0;G=G+4|0;if((n|0)!=(G|0)){continue}break}}h=I&3;if(!h){break u}while(1){n=k<<2;v[n+Q>>2]=v[(v[a+n>>2]<<2)+U>>2];k=k+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}h=x[v[f+28>>2]+36>>1]&32767;v:{if(!h){H=0;a=0;break v}a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?47981:63804;H=Ba[v[v[a+12>>2]+8>>2]](a+12|0,h<<3,g,9064,724)|0;a=(x[v[f+28>>2]+36>>1]&32767)<<3}a=I9(H,0,a);w:{if(!I){break w}if(I-1>>>0>=3){h=I&-4;H=0;while(1){g=a+(v[Q>>2]<<3)|0;u[g+2>>1]=x[g+2>>1]+1;g=a+(v[Q+4>>2]<<3)|0;u[g+2>>1]=x[g+2>>1]+1;g=a+(v[Q+8>>2]<<3)|0;u[g+2>>1]=x[g+2>>1]+1;g=a+(v[Q+12>>2]<<3)|0;u[g+2>>1]=x[g+2>>1]+1;Q=Q+16|0;H=H+4|0;if((h|0)!=(H|0)){continue}break}}h=I&3;if(!h){break w}H=0;while(1){g=a+(v[Q>>2]<<3)|0;u[g+2>>1]=x[g+2>>1]+1;Q=Q+4|0;H=H+1|0;if((h|0)!=(H|0)){continue}break}}h=x[v[f+28>>2]+36>>1]&32767;x:{if(h){H=0;while(1){if(x[(a+(H<<3)|0)+2>>1]==2){H=H+1|0;if((h|0)!=(H|0)){continue}break x}break}k=0;a9(v[37696],32,9064,738,73287,0);break r}if(!a){break t}}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,a)}if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}k=1;if(!l){break r}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,l)}SU(_)}xa=da+48|0;if(k){break o}break n}u[v[f+28>>2]+36>>1]=I>>>1}y:{if(!i){break y}g=v[f+4>>2];l=w[v[f+28>>2]+38|0];if(l){h=v[f>>2];G=l&254;S=l&1;n=0;while(1){a=g+B(n,20)|0;q=z[a+8>>2];P=z[a+4>>2];T=z[a>>2];o=C(34028234663852886e22);b=0;k=255;e=h;H=0;if((l|0)!=1){while(1){W=C(C(z[e+8>>2]*q)+C(C(z[e>>2]*T)+C(z[e+4>>2]*P)));E=W>2]*q)+C(C(z[e+12>>2]*T)+C(z[e+16>>2]*P)));o=E?W:o;s=J>2]*q)+C(C(z[e>>2]*T)+C(z[e+4>>2]*P)))>>0>=7){a=i&-8;k=0;while(1){t[(g+B(e,20)|0)+19|0]=255;t[(g+B(e|1,20)|0)+19|0]=255;t[(g+B(e|2,20)|0)+19|0]=255;t[(g+B(e|3,20)|0)+19|0]=255;t[(g+B(e|4,20)|0)+19|0]=255;t[(g+B(e|5,20)|0)+19|0]=255;t[(g+B(e|6,20)|0)+19|0]=255;t[(g+B(e|7,20)|0)+19|0]=255;e=e+8|0;k=k+8|0;if((a|0)!=(k|0)){continue}break}}a=i&7;if(!a){break y}while(1){t[(g+B(e,20)|0)+19|0]=255;e=e+1|0;b=b+1|0;if((a|0)!=(b|0)){continue}break}}e=1;if(!ga){break n}e=b4(f)}}a=e;z:{if(!a){a9(v[37696],32,9156,312,75930,0);break z}E=(x[N+36>>1]&64)>>>6|0;e=0;n=0;b=xa-272|0;xa=b;A:{if(!(z[f+112>>2]<=C(0))){break A}u[b+86>>1]=0;u[b+88>>1]=0;u[b+90>>1]=0;u[b+92>>1]=0;v[b+80>>2]=0;v[b+84>>2]=0;u[b+94>>1]=255;u[b+96>>1]=255;h=w[f+82|0];v[b+64>>2]=h;g=v[f>>2];v[b+56>>2]=12;v[b+60>>2]=g;v[b+72>>2]=v[f+4>>2];v[b+68>>2]=20;v[b+76>>2]=w[v[f+28>>2]+39|0];v[b+84>>2]=v[f+8>>2];B:{if(!h){break B}if((h|0)!=1){s=h&254;while(1){l=g+B(e|1,12)|0;k=g+B(e,12)|0;m=C(z[l+8>>2]+C(z[k+8>>2]+m));F=C(z[l+4>>2]+C(z[k+4>>2]+F));r=C(z[l>>2]+C(z[k>>2]+r));e=e+2|0;n=n+2|0;if((s|0)!=(n|0)){continue}break}}if(!(h&1)){break B}e=g+B(e,12)|0;m=C(z[e+8>>2]+m);F=C(z[e+4>>2]+F);r=C(z[e>>2]+r)}o=C(C(1)/C(h>>>0));z[b+48>>2]=o*m;z[b+44>>2]=o*F;z[b+40>>2]=o*r;C:{D:{if(E){if(X4(b+56|0,b+104|0,b+40|0)){break D}break C}if(!W4(b+56|0,b+104|0,b+40|0)){break C}}m=C(A[b+128>>3]);z[f+116>>2]=m;o=C(A[b+152>>3]);z[f+120>>2]=o;r=C(A[b+176>>3]);z[f+124>>2]=r;F=C(A[b+136>>3]);z[f+128>>2]=F;q=C(A[b+160>>3]);z[f+132>>2]=q;P=C(A[b+184>>3]);z[f+136>>2]=P;T=C(A[b+144>>3]);z[f+140>>2]=T;W=C(A[b+168>>3]);z[f+144>>2]=W;J=C(A[b+192>>3]);z[f+148>>2]=J;e=v[b+104>>2];z[f+68>>2]=z[b+104>>2];h=v[b+108>>2];z[f+72>>2]=z[b+108>>2];g=v[b+112>>2];z[f+76>>2]=z[b+112>>2];if(((p(m),j(2))&2139095040)==2139095040|((p(o),j(2))&2139095040)==2139095040|(((p(r),j(2))&2139095040)==2139095040|((p(F),j(2))&2139095040)==2139095040)){break C}if(((p(q),j(2))&2139095040)==2139095040|((p(P),j(2))&2139095040)==2139095040|(((p(T),j(2))&2139095040)==2139095040|((p(W),j(2))&2139095040)==2139095040)){break C}if(((p(J),j(2))&2139095040)==2139095040|(e&2139095040)==2139095040|((h&2139095040)==2139095040|(g&2139095040)==2139095040)){break C}ha=A[b+120>>3];m=C(ha);if(((p(m),j(2))&2139095040)==2139095040){break C}if(ha<0){a9(v[37696],2,9156,233,71091,0);A[b+120>>3]=-A[b+120>>3];m=z[f+132>>2];o=z[f+136>>2];r=z[f+144>>2];F=z[f+148>>2];q=z[f+116>>2];P=z[f+120>>2];T=z[f+124>>2];W=z[f+128>>2];z[b+24>>2]=-z[f+140>>2];z[b+12>>2]=-W;z[b+8>>2]=-T;z[b+4>>2]=-P;z[b>>2]=-q;z[b+32>>2]=-F;z[b+28>>2]=-r;z[b+20>>2]=-o;z[b+16>>2]=-m;z[f+116>>2]=z[b>>2];z[f+120>>2]=z[b+4>>2];z[f+124>>2]=z[b+8>>2];z[f+128>>2]=z[b+12>>2];z[f+132>>2]=z[b+16>>2];z[f+136>>2]=z[b+20>>2];z[f+140>>2]=z[b+24>>2];z[f+144>>2]=z[b+28>>2];z[f+148>>2]=z[b+32>>2];m=C(A[b+120>>3])}z[f+112>>2]=m;break A}a9(v[37696],32,9156,242,77731,0)}xa=b+272|0}xa=R+32|0;b=0;if(!a){break a}BV(X+8|0,w[f+82|0],v[f>>2]);m=z[X+24>>2];o=z[X+20>>2];r=z[X+8>>2];F=z[X+12>>2];q=z[X+28>>2];P=z[X+16>>2];z[f- -64>>2]=C(q-P)*C(.5);z[f+60>>2]=C(m-F)*C(.5);z[f+56>>2]=C(o-r)*C(.5);z[f+52>>2]=C(P+q)*C(.5);z[f+48>>2]=C(F+m)*C(.5);z[f+44>>2]=C(r+o)*C(.5);if(w[f+82|0]>c>>>0){n=xa-16|0;xa=n;a=v[f+108>>2];if(a){a=XZ(a);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?46773:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,b,9156,388)|0;v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[f+108>>2]=a;b=v[f>>2];v[n+4>>2]=a;v[n+8>>2]=b;v[n>>2]=f+44;b=0;h=xa-256|0;xa=h;a=n;c=v[a+4>>2];g=v[f+28>>2];e=w[g+38|0];v[c+8>>2]=e;G=x[g+36>>1]<<1&65534;g=e<<2;l=g+12&2032;k=G+l|0;if(k){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,k,24422,9427,118)|0;c=v[a+4>>2]}v[c+16>>2]=b;v[c+24>>2]=b;v[c+20>>2]=b+l;I9(b,0,g);S=I9(h,0,e);l=w[v[f+28>>2]+39|0];if(l){k=v[a+4>>2];E=v[f+8>>2];H=v[f+4>>2];s=0;while(1){b=H+B(s,20)|0;g=w[b+18|0];E:{if(!g){break E}c=E+x[b+16>>1]|0;e=v[k+16>>2];h=0;b=0;if(g-1>>>0>=3){G=g&252;N=0;while(1){i=e+(w[b+c|0]<<2)|0;u[i>>1]=x[i>>1]+1;i=e+(w[c+(b|1)|0]<<2)|0;u[i>>1]=x[i>>1]+1;i=e+(w[c+(b|2)|0]<<2)|0;u[i>>1]=x[i>>1]+1;i=e+(w[c+(b|3)|0]<<2)|0;u[i>>1]=x[i>>1]+1;b=b+4|0;N=N+4|0;if((G|0)!=(N|0)){continue}break}}g=g&3;if(!g){break E}while(1){N=e+(w[b+c|0]<<2)|0;u[N>>1]=x[N>>1]+1;b=b+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}s=s+1|0;if((l|0)!=(s|0)){continue}break}}YZ(v[a+4>>2]);b=v[a+4>>2];c=(v[b+16>>2]+(v[b+8>>2]<<2)|0)-4|0;v[b+12>>2]=x[c>>1]+x[c+2>>1];b=v[f+28>>2];if(w[b+39|0]){N=v[f+4>>2];H=0;while(1){I=B(H,20);c=I+N|0;L=w[c+18|0];if(L){M=v[f+8>>2]+x[c+16>>1]|0;b=0;while(1){c=b+1|0;O=w[b+M|0];Q=O+S|0;if(!w[Q|0]){h=w[M+((c|0)==(L|0)?0:c)|0];e=1;g=v[a+4>>2];l=v[g+20>>2];R=O<<2;k=R+v[g+16>>2]|0;g=x[k+2>>1];u[k+2>>1]=g+1;t[g+l|0]=h;s=v[f+12>>2];l=v[f+20>>2];N=v[f+4>>2];g=s+(x[l+(x[(I+N|0)+16>>1]+b<<1)>>1]<<1&65534)|0;b=w[g|0];g=(b|0)==(H|0)?w[g+1|0]:b;b=g&255;if((H|0)!=(b|0)){while(1){U=B(b,20);b=U+N|0;k=x[b+16>>1];G=w[b+18|0];F:{if(G){i=v[f+8>>2]+k|0;b=0;while(1){E=b+1|0;if((O|0)==w[b+i|0]){l=h;h=w[i+((E>>>0)%(G>>>0)|0)|0];if((l|0)==(h|0)){b=(b?b:G)-1|0;h=w[i+b|0]}l=v[a+4>>2];k=v[l+20>>2];E=R+v[l+16>>2]|0;l=x[E+2>>1];u[E+2>>1]=l+1;t[k+l|0]=h;e=e+1|0;N=v[f+4>>2];k=x[(U+N|0)+16>>1];s=v[f+12>>2];l=v[f+20>>2];break F}b=E;if((G|0)!=(b|0)){continue}break}}b=0}k=(x[(b+k<<1)+l>>1]<<1&65534)+s|0;b=w[k|0];g=(b|0)==(g&255)?w[k+1|0]:b;b=g&255;if((H|0)!=(b|0)){continue}break}}t[Q|0]=e}b=c;if((L|0)!=(b|0)){continue}break}b=v[f+28>>2]}H=H+1|0;if(H>>>0>2]);xa=S+256|0;g=0;h=xa-208|0;xa=h;b=v[a+4>>2];u[b>>1]=16;u[b+2>>1]=1536;b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?35013:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,3072,c,9427,69)|0;c=a;v[v[a+4>>2]+4>>2]=b;v[h+168>>2]=0;v[h+160>>2]=0;v[h+164>>2]=0;v[h+152>>2]=0;v[h+144>>2]=0;v[h+148>>2]=0;while(1){S=g<<4;o=C(C(1)-C(C(g>>>0)/C(7.5)));l=g;while(1){F=C(1);r=C(C(1)-C(C(l>>>0)/C(7.5)));m=C(K(C(C(o*o)+C(C(r*r)+C(1)))));G:{if(!(m>C(0))){m=o;break G}F=C(C(1)/m);m=C(o*F);r=C(r*F)}z[h+140>>2]=F;z[h+136>>2]=r;z[h+132>>2]=m;z[h+124>>2]=r;z[h+120>>2]=m;z[h+116>>2]=m;z[h+112>>2]=F;z[h+108>>2]=r;z[h+104>>2]=m;z[h+96>>2]=r;z[h+92>>2]=r;z[h+88>>2]=m;z[h+84>>2]=F;z[h+80>>2]=r;z[h+76>>2]=m;z[h+68>>2]=F;z[h+64>>2]=m;z[h+60>>2]=r;z[h+52>>2]=m;z[h+48>>2]=r;z[h+44>>2]=r;z[h+40>>2]=F;z[h+36>>2]=m;z[h+32>>2]=r;z[h+24>>2]=m;z[h+20>>2]=m;z[h+16>>2]=r;z[h+12>>2]=F;z[h+8>>2]=m;z[h+4>>2]=r;m=C(-F);z[h+128>>2]=m;z[h+100>>2]=m;z[h+72>>2]=m;z[h+56>>2]=m;z[h+28>>2]=m;z[h>>2]=m;k=v[c+8>>2];E=v[c+4>>2];N=v[E+20>>2];G=v[E+16>>2];H=0;while(1){L=(h+160|0)+H|0;b=w[L|0];v[h+200>>2]=0;v[h+204>>2]=0;v[h+192>>2]=0;v[h+196>>2]=0;v[h+184>>2]=0;v[h+188>>2]=0;v[h+176>>2]=0;v[h+180>>2]=0;a=k+B(b,12)|0;e=h+B(H,12)|0;F=z[e+8>>2];q=z[e>>2];P=z[e+4>>2];m=C(C(z[a+8>>2]*F)+C(C(z[a>>2]*q)+C(z[a+4>>2]*P)));while(1){a=b;M=b&255;b=G+(M<<2)|0;O=x[b>>1];if(O){I=x[b+2>>1];s=0;b=a;while(1){e=w[N+(s+I|0)|0];i=k+B(e,12)|0;r=C(C(z[i+8>>2]*F)+C(C(z[i>>2]*q)+C(P*z[i+4>>2])));H:{if(!(r>>3&28)|0;Q=v[i>>2];R=1<>2]=Q|R;m=r;b=e}s=s+1|0;if((O|0)!=(s|0)){continue}break}if((M|0)!=(b&255)){continue}}break}t[L|0]=a;L=(h+144|0)+H|0;b=w[L|0];v[h+200>>2]=0;v[h+204>>2]=0;v[h+192>>2]=0;v[h+196>>2]=0;v[h+184>>2]=0;v[h+188>>2]=0;v[h+176>>2]=0;v[h+180>>2]=0;a=k+B(b,12)|0;m=C(-C(C(z[a+8>>2]*F)+C(C(z[a>>2]*q)+C(P*z[a+4>>2]))));while(1){a=b;M=b&255;b=G+(M<<2)|0;O=x[b>>1];if(O){I=x[b+2>>1];s=0;b=a;while(1){e=w[N+(s+I|0)|0];i=k+B(e,12)|0;r=C(-C(C(z[i+8>>2]*F)+C(C(z[i>>2]*q)+C(P*z[i+4>>2]))));I:{if(!(r>>3&28)|0;Q=v[i>>2];R=1<>2]=Q|R;m=r;b=e}s=s+1|0;if((O|0)!=(s|0)){continue}break}if((M|0)!=(b&255)){continue}}break}t[L|0]=a;H=H+1|0;if((H|0)!=12){continue}break}a=(l<<4)+g|0;t[a+v[E+4>>2]|0]=w[h+160|0];b=v[c+4>>2];t[v[b+4>>2]+(a+x[b+2>>1]|0)|0]=w[h+144|0];b=l+S|0;t[b+v[v[c+4>>2]+4>>2]|0]=w[h+166|0];e=v[c+4>>2];t[v[e+4>>2]+(b+x[e+2>>1]|0)|0]=w[h+150|0];e=a+256|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+161|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+145|0];e=b+256|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+167|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+151|0];e=a+512|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+162|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+146|0];e=b+512|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+168|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+152|0];e=a+768|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+163|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+147|0];e=b+768|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+169|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+153|0];e=a+1024|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+164|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+148|0];e=b+1024|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+170|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+154|0];a=a+1280|0;t[a+v[v[c+4>>2]+4>>2]|0]=w[h+165|0];e=v[c+4>>2];t[v[e+4>>2]+(a+x[e+2>>1]|0)|0]=w[h+149|0];a=b+1280|0;t[a+v[v[c+4>>2]+4>>2]|0]=w[h+171|0];b=v[c+4>>2];t[v[b+4>>2]+(a+x[b+2>>1]|0)|0]=w[h+155|0];l=l+1|0;if((l|0)!=16){continue}break}g=g+1|0;if((g|0)!=16){continue}break}xa=h+208|0;xa=n+16|0}if(!d){b=0;a=xa-16|0;v[f+92>>2]=2139095039;e=v[f+4>>2];c=w[f+83|0];J:{if(!c){m=C(34028234663852886e22);break J}r=z[f+76>>2];F=z[f+72>>2];q=z[f+68>>2];m=C(34028234663852886e22);while(1){d=e+B(b,20)|0;o=C(D(C(C(C(r*z[d+8>>2])+C(C(q*z[d>>2])+C(F*z[d+4>>2])))+z[d+12>>2])));if(o>2]=o;m=o}b=b+1|0;if((c|0)!=(b|0)){continue}break}}o=z[f+56>>2];r=z[f+60>>2];F=z[f+48>>2];q=z[f+44>>2];P=z[f+52>>2];T=z[f- -64>>2];P=C(C(P+T)-C(P-T));z[a+8>>2]=P;r=C(C(F+r)-C(F-r));z[a+4>>2]=r;o=C(C(q+o)-C(q-o));z[a>>2]=o;b=oz[(a|b<<2)>>2]?2:b;d=((h>>>1|0)+h|0)+1|0;b=d&3;d=((b>>>1|0)+d|0)+1&3;o=z[a+(d<<2)>>2];r=z[a+(b<<2)>>2];v[f+104>>2]=2139095039;g=f+96|0;v[g>>2]=2139095039;v[g+4>>2]=2139095039;a=o>r;l=a?b:d;k=a?d:b;if(c){m=C(m/C(1.7320507764816284));s=h<<2;n=s+f|0;P=z[f+76>>2];T=z[f+72>>2];W=z[f+68>>2];b=0;while(1){a=e+B(b,20)|0;o=z[a+s>>2];K:{if(o>C(-1.0000000116860974e-7)&o>2]);q=C(m*z[a+(k<<2)>>2]);J=C(C(-z[a+12>>2])-C(C(z[a+8>>2]*P)+C(C(z[a>>2]*W)+C(T*z[a+4>>2]))));$=C(q+J);F=C(D(C(o*C(r+$))));F=m>2];a=Jq;q=d?q:J;E=q>F;F=E?F:q;o=C(D(C(o*C($-r))));o=m>2]=o>2];J=z[a+(l<<2)>>2];o=C(q-J);r=C(z[n+96>>2]*z[a+(h<<2)>>2]);F=C(C(-z[a+12>>2])-C(C(z[a+8>>2]*P)+C(C(z[a>>2]*W)+C(T*z[a+4>>2]))));q=C(q+J);L:{if(q>C(-1.0000000116860974e-7)&q>2];a=J<$;J=a?J:$;q=C(D(C(C(F+r)/q)));q=mq)){break L}z[d+96>>2]=qC(-1.0000000116860974e-7)){break M}q=C(D(C(C(F-r)/o)));q=m>2];a=qo)){break M}z[d+96>>2]=o>2]=z[g+(k<<2)>>2]}b=1}xa=X+32|0;return b}function Im(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;v[a>>2]=121880;b=v[a+476>>2];if(b){Ba[v[v[b>>2]+16>>2]](b)}b=v[a+3932>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+3920>>2]){d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+3640|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];a:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;b:{if(!g){break b}c=g<<2;if(!c){break b}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?41231:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];c:{if(v[d+24>>2]<0){break c}c=v[d+16>>2];if(!c){break c}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break a}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;$m(c,e,b);$m(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];d:{if(!g){break d}c=v[f>>2];j=g-1&268435455;if(g&1){e:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break e}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+400|0}else{b=c}if(!j){break d}g=c+B(g,400)|0;while(1){f:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break f}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+400|0;g:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break g}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+800|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[d+16>>2];if(!b){break h}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+3904>>2];c=v[a+3908>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+3904>>2]}c=v[a+3912>>2];i:{if((c|0)<0|!(c&2147483647)){break i}if((a+3644|0)==(b|0)){t[a+3900|0]=0;break i}if(!b){break i}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+3636>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+3624>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+3344|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];j:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;k:{if(!g){break k}c=g<<2;if(!c){break k}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?27763:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];l:{if(v[d+24>>2]<0){break l}c=v[d+16>>2];if(!c){break l}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break j}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;an(c,e,b);an(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];m:{if(!g){break m}c=v[f>>2];j=g-1&268435455;if(g&1){n:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break n}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+400|0}else{b=c}if(!j){break m}g=c+B(g,400)|0;while(1){o:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break o}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+400|0;p:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break p}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+800|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=v[d+16>>2];if(!b){break q}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+3608>>2];c=v[a+3612>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+3608>>2]}c=v[a+3616>>2];r:{if((c|0)<0|!(c&2147483647)){break r}if((a+3348|0)==(b|0)){t[a+3604|0]=0;break r}if(!b){break r}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+3340>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+3328>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+3048|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];s:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;t:{if(!g){break t}c=g<<2;if(!c){break t}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?39419:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];u:{if(v[d+24>>2]<0){break u}c=v[d+16>>2];if(!c){break u}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break s}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;bn(c,e,b);bn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];v:{if(!g){break v}c=v[f>>2];j=g-1&33554431;if(g&1){w:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break w}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+384|0}else{b=c}if(!j){break v}g=c+B(g,384)|0;while(1){x:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break x}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+384|0;y:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break y}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+768|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];z:{if((b|0)<0|!(b&2147483647)){break z}b=v[d+16>>2];if(!b){break z}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+3312>>2];c=v[a+3316>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+3312>>2]}c=v[a+3320>>2];A:{if((c|0)<0|!(c&2147483647)){break A}if((a+3052|0)==(b|0)){t[a+3308|0]=0;break A}if(!b){break A}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+3044>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+3032>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+2752|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];B:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;C:{if(!g){break C}c=g<<2;if(!c){break C}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?41391:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];D:{if(v[d+24>>2]<0){break D}c=v[d+16>>2];if(!c){break D}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break B}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;cn(c,e,b);cn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];E:{if(!g){break E}c=v[f>>2];j=g-1&1073741823;if(g&1){F:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break F}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+132|0}else{b=c}if(!j){break E}g=c+B(g,132)|0;while(1){G:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break G}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+132|0;H:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break H}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+264|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];I:{if((b|0)<0|!(b&2147483647)){break I}b=v[d+16>>2];if(!b){break I}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+3016>>2];c=v[a+3020>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+3016>>2]}c=v[a+3024>>2];J:{if((c|0)<0|!(c&2147483647)){break J}if((a+2756|0)==(b|0)){t[a+3012|0]=0;break J}if(!b){break J}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+2748>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+2736>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+2456|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];K:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;L:{if(!g){break L}c=g<<2;if(!c){break L}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?36971:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];M:{if(v[d+24>>2]<0){break M}c=v[d+16>>2];if(!c){break M}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break K}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;dn(c,e,b);dn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];N:{if(!g){break N}c=v[f>>2];j=g-1&536870911;if(g&1){O:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break O}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+120|0}else{b=c}if(!j){break N}g=c+B(g,120)|0;while(1){P:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break P}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+120|0;Q:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Q}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+240|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];R:{if((b|0)<0|!(b&2147483647)){break R}b=v[d+16>>2];if(!b){break R}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+2720>>2];c=v[a+2724>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+2720>>2]}c=v[a+2728>>2];S:{if((c|0)<0|!(c&2147483647)){break S}if((a+2460|0)==(b|0)){t[a+2716|0]=0;break S}if(!b){break S}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+2452>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+2440>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+2160|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];T:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;U:{if(!g){break U}c=g<<2;if(!c){break U}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?39311:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];V:{if(v[d+24>>2]<0){break V}c=v[d+16>>2];if(!c){break V}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break T}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;en(c,e,b);en(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];W:{if(!g){break W}c=v[f>>2];j=g-1&67108863;if(g&1){X:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break X}Ba[v[v[c>>2]+12>>2]](c)|0}b=c- -64|0}else{b=c}if(!j){break W}g=c+(g<<6)|0;while(1){Y:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break Y}Ba[v[v[b>>2]+12>>2]](b)|0}c=b- -64|0;Z:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Z}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+128|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];_:{if((b|0)<0|!(b&2147483647)){break _}b=v[d+16>>2];if(!b){break _}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+2424>>2];c=v[a+2428>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+2424>>2]}c=v[a+2432>>2];$:{if((c|0)<0|!(c&2147483647)){break $}if((a+2164|0)==(b|0)){t[a+2420|0]=0;break $}if(!b){break $}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+2156>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+2144>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+1864|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];aa:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;ba:{if(!g){break ba}c=g<<2;if(!c){break ba}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?28767:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];ca:{if(v[d+24>>2]<0){break ca}c=v[d+16>>2];if(!c){break ca}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break aa}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;fn(c,e,b);fn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];da:{if(!g){break da}c=v[f>>2];j=g-1&1073741823;if(g&1){ea:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break ea}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+124|0}else{b=c}if(!j){break da}g=c+B(g,124)|0;while(1){fa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break fa}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+124|0;ga:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break ga}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+248|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];ha:{if((b|0)<0|!(b&2147483647)){break ha}b=v[d+16>>2];if(!b){break ha}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+2128>>2];c=v[a+2132>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+2128>>2]}c=v[a+2136>>2];ia:{if((c|0)<0|!(c&2147483647)){break ia}if((a+1868|0)==(b|0)){t[a+2124|0]=0;break ia}if(!b){break ia}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+1860>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+1848>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+1568|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];ja:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;ka:{if(!g){break ka}c=g<<2;if(!c){break ka}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?41541:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];la:{if(v[d+24>>2]<0){break la}c=v[d+16>>2];if(!c){break la}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break ja}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;gn(c,e,b);gn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];ma:{if(!g){break ma}c=v[f>>2];j=g-1&1073741823;if(g&1){na:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break na}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+44|0}else{b=c}if(!j){break ma}g=c+B(g,44)|0;while(1){oa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break oa}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+44|0;pa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break pa}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+88|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];qa:{if((b|0)<0|!(b&2147483647)){break qa}b=v[d+16>>2];if(!b){break qa}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+1832>>2];c=v[a+1836>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+1832>>2]}c=v[a+1840>>2];ra:{if((c|0)<0|!(c&2147483647)){break ra}if((a+1572|0)==(b|0)){t[a+1828|0]=0;break ra}if(!b){break ra}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+1564>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+1552>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+1272|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];sa:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;ta:{if(!g){break ta}c=g<<2;if(!c){break ta}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?42245:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];ua:{if(v[d+24>>2]<0){break ua}c=v[d+16>>2];if(!c){break ua}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break sa}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;hn(c,e,b);hn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];va:{if(!g){break va}c=v[f>>2];j=g-1&268435455;if(g&1){wa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break wa}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+208|0}else{b=c}if(!j){break va}g=c+B(g,208)|0;while(1){xa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break xa}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+208|0;ya:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break ya}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+416|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];za:{if((b|0)<0|!(b&2147483647)){break za}b=v[d+16>>2];if(!b){break za}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+1536>>2];c=v[a+1540>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+1536>>2]}c=v[a+1544>>2];Aa:{if((c|0)<0|!(c&2147483647)){break Aa}if((a+1276|0)==(b|0)){t[a+1532|0]=0;break Aa}if(!b){break Aa}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+1268>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+1256>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+976|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];Ba:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;Ca:{if(!g){break Ca}c=g<<2;if(!c){break Ca}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?45917:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];Da:{if(v[d+24>>2]<0){break Da}c=v[d+16>>2];if(!c){break Da}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break Ba}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;jn(c,e,b);jn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];Ea:{if(!g){break Ea}c=v[f>>2];j=g-1&268435455;if(g&1){Fa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Fa}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+112|0}else{b=c}if(!j){break Ea}g=c+B(g,112)|0;while(1){Ga:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break Ga}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+112|0;Ha:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Ha}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+224|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];Ia:{if((b|0)<0|!(b&2147483647)){break Ia}b=v[d+16>>2];if(!b){break Ia}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+1240>>2];c=v[a+1244>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+1240>>2]}c=v[a+1248>>2];Ja:{if((c|0)<0|!(c&2147483647)){break Ja}if((a+980|0)==(b|0)){t[a+1236|0]=0;break Ja}if(!b){break Ja}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+972>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+960>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;b=v[a+968>>2];if(b){while(1){v[f+8>>2]=b;c=v[f+20>>2];Ka:{if(c>>>0>=(v[f+24>>2]&2147483647)>>>0){b=0;c=v[f+24>>2];h=c&2147483647?c<<1:1;La:{if(!h){break La}c=h<<2;if(!c){break La}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?46031:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[f+20>>2];g=(e<<2)+b|0;if((e|0)>0){d=v[f+16>>2];c=b;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}v[g>>2]=v[f+8>>2];Ma:{if(v[f+24>>2]<0){break Ma}c=v[f+16>>2];if(!c){break Ma}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=b;v[f+20>>2]=e+1;break Ka}v[v[f+16>>2]+(c<<2)>>2]=b;v[f+20>>2]=c+1}b=v[v[a+968>>2]>>2];v[a+968>>2]=b;if(b){continue}break}e=v[f+20>>2];c=v[f+16>>2]}else{c=0}b=f+8|0;kn(c,e,b);kn(v[a+944>>2],v[a+948>>2],b);b=v[a+948>>2];if(b){d=v[a+944>>2];g=d+(b<<2)|0;e=v[f+16>>2];while(1){h=v[a+956>>2];Na:{if(!h){break Na}c=v[d>>2];i=h-1&67108863;if(h&1){Oa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Oa}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+320|0}else{b=c}if(!i){break Na}h=c+B(h,320)|0;while(1){Pa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break Pa}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+320|0;Qa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Qa}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+640|0;if((h|0)!=(b|0)){continue}break}}d=d+4|0;if((g|0)!=(d|0)){continue}break}}b=v[f+24>>2];Ra:{if((b|0)<0|!(b&2147483647)){break Ra}b=v[f+16>>2];if(!b){break Ra}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=f+32|0}b=v[a+944>>2];c=v[a+948>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+944>>2]}c=v[a+952>>2];Sa:{if((c|0)<0|!(c&2147483647)){break Sa}if((a+684|0)==(b|0)){t[a+940|0]=0;break Sa}if(!b){break Sa}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+640>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+600>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+560>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+520>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+480>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+472>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+460>>2]){c=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;b=v[a+468>>2];if(b){while(1){v[f+8>>2]=b;c=v[f+20>>2];Ta:{if(c>>>0>=(v[f+24>>2]&2147483647)>>>0){b=0;c=v[f+24>>2];h=c&2147483647?c<<1:1;Ua:{if(!h){break Ua}c=h<<2;if(!c){break Ua}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?25589:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[f+20>>2];g=(e<<2)+b|0;if((e|0)>0){d=v[f+16>>2];c=b;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}v[g>>2]=v[f+8>>2];Va:{if(v[f+24>>2]<0){break Va}c=v[f+16>>2];if(!c){break Va}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=b;v[f+20>>2]=e+1;break Ta}v[v[f+16>>2]+(c<<2)>>2]=b;v[f+20>>2]=c+1}b=v[v[a+468>>2]>>2];v[a+468>>2]=b;if(b){continue}break}c=v[f+20>>2];j=v[f+16>>2]}else{j=0}b=f+8|0;ln(j,c,b);ln(v[a+444>>2],v[a+448>>2],b);b=v[a+448>>2];if(b){e=v[a+444>>2];h=e+(b<<2)|0;c=v[f+16>>2];while(1){d=v[a+456>>2];if(d){b=v[e>>2];g=b+B(d,48)|0;while(1){Wa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(c|0)|v[c>>2]!=(b|0))){c=c+4|0;break Wa}d=v[b+44>>2];if((d|0)<0|!(d&2147483647)){break Wa}d=v[b+36>>2];if((d|0)==(b|0)){t[b+32|0]=0;break Wa}if(!d){break Wa}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,d)}b=b+48|0;if((g|0)!=(b|0)){continue}break}}e=e+4|0;if((h|0)!=(e|0)){continue}break}}b=v[f+24>>2];Xa:{if((b|0)<0|!(b&2147483647)){break Xa}b=v[f+16>>2];if(!b){break Xa}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=f+32|0}b=v[a+444>>2];c=v[a+448>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+444>>2]}c=v[a+452>>2];Ya:{if((c|0)<0|!(c&2147483647)){break Ya}if((a+184|0)==(b|0)){t[a+440|0]=0;return lV(a)|0}if(!b){break Ya}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return lV(a)|0}function lB(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=0,s=C(0),y=C(0),A=C(0),E=C(0),F=C(0),H=C(0),I=0,J=C(0),L=0,M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=0,S=0,T=0,U=0,V=C(0),W=0,X=0,Y=0,Z=C(0),_=C(0),$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=0,ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=0,qa=0,ra=0,sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=0,za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=0,Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=0,Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=0,ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=0,hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=0,Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=0,Tb=0;W=xa-32|0;xa=W;v[c+4112>>2]=0;v[W+28>>2]=1065353216;v[W+24>>2]=1065353216;v[W+20>>2]=1065353216;v[W+16>>2]=1065353216;a:{if(v[a+100>>2]!=8){k=C(0);if(w[v[a+20>>2]+62|0]){break a}}k=z[a+4>>2]}z[a+4>>2]=k;b:{if(v[a+104>>2]!=8){k=C(0);if(w[v[a+24>>2]+62|0]){break b}}k=z[a+12>>2]}z[a+12>>2]=k;t[W+15|0]=0;t[W+14|0]=0;j=c+16|0;Sb=a,Tb=ty(j,b,W+15|0,W+14|0,W+28|0,W+24|0,W+20|0,W+16|0,z[a+160>>2]),v[Sb+116>>2]=Tb;v[a+112>>2]=j;t[a+121|0]=w[a+121|0]|t[W+14|0]&1;t[a+120|0]=w[W+15|0];z[a>>2]=z[W+28>>2]*z[a>>2];z[a+8>>2]=z[W+24>>2]*z[a+8>>2];z[a+4>>2]=z[W+20>>2]*z[a+4>>2];z[a+12>>2]=z[W+16>>2]*z[a+12>>2];O=xa-32|0;xa=O;L=c+4128|0;b=L;v[b+7684>>2]=0;v[b+7688>>2]=0;ha=w[a+121|0];R=w[a+122|0];c=v[a+100>>2];U=v[a+104>>2];j=v[a+16>>2];u[j+22>>1]=0;b=v[a+116>>2];c:{if(!b){t[a+136|0]=0;v[a+132>>2]=0;v[j+24>>2]=0;break c}if(!ha){uy(L,v[a+132>>2],w[a+136|0],a+44|0,a+72|0,h);b=v[a+116>>2]}aa=(c|U)&8;$z(L,v[a+112>>2],b);S=a+44|0;T=a+72|0;aA(L,v[a+112>>2],S,T,0,0);bA(L,v[a+112>>2],S,T,h,0,C(z[a+124>>2]+g));Y=v[L+7688>>2];d:{if(!Y){i=0;break d}pa=aa?7:6;ra=aa?112:48;g=z[a+164>>2];h=z[a+168>>2];g=g>h?g:h;b=0;while(1){c=L+(b<<2)|0;qa=v[c+7424>>2]!=65535;c=v[c+7296>>2];e:{if(!c){break e}I=((B(c,ra)+I|0)+((c<<2)+12&-16)|0)+80|0;c=L+B(b,104)|0;if(t[c+2817|0]&1){break e}c=x[c+2818>>1];I=((c<<1|(c|0)==1&g>C(0))<>2]>>2]](i,ra+16|0)|0;b=(b|0)==-1?0:b}I=B(p,104)+15&-16;c=!ra|(b|0)!=0;if(!(!I|!c)){i=Ba[v[v[i>>2]+4>>2]](i,I)|0;pa=(i|0)==-1?0:i}if(!c){t[a+136|0]=0;v[a+132>>2]=0;u[j+22>>1]=0;v[j+24>>2]=0;break c}t[a+136|0]=0;v[a+132>>2]=0;u[j+22>>1]=0;v[j+24>>2]=0;i=ra?b:0;if(!I){break d}if(!pa){break c}}v[a+132>>2]=pa;v[j+24>>2]=i;t[a+136|0]=p;u[j+22>>1]=ra>>>4;b=v[a+140>>2];v[j+28>>2]=b;p=0;u[j+20>>1]=b?x[a+116>>1]:0;f:{if(!pa){break f}I=v[L+7688>>2];if(!I){break f}b=pa;while(1){if(v[(L+(p<<2)|0)+7296>>2]){c=L+B(p,104)|0;t[b|0]=w[c+2816|0];t[b+1|0]=w[c+2817|0];u[b+2>>1]=x[c+2818>>1];z[b+16>>2]=z[c+2832>>2];z[b+20>>2]=z[c+2836>>2];z[b+24>>2]=z[c+2840>>2];z[b+28>>2]=z[c+2844>>2];z[b+32>>2]=z[c+2848>>2];z[b+36>>2]=z[c+2852>>2];z[b+40>>2]=z[c+2856>>2];z[b+44>>2]=z[c+2860>>2];z[b+48>>2]=z[c+2864>>2];z[b+52>>2]=z[c+2868>>2];z[b+56>>2]=z[c+2872>>2];z[b+60>>2]=z[c+2876>>2];z[b+64>>2]=z[c+2880>>2];z[b+68>>2]=z[c+2884>>2];z[b+72>>2]=z[c+2888>>2];z[b+76>>2]=z[c+2892>>2];z[b+80>>2]=z[c+2896>>2];z[b+84>>2]=z[c+2900>>2];z[b+88>>2]=z[c+2904>>2];z[b+92>>2]=z[c+2908>>2];z[b+96>>2]=z[c+2912>>2];z[b+100>>2]=z[c+2916>>2];z[b+4>>2]=z[c+2820>>2];z[b+8>>2]=z[c+2824>>2];z[b+12>>2]=z[c+2828>>2];b=b+104|0}p=p+1|0;if((I|0)!=(p|0)){continue}break}}if(!i){break c}g:{if(aa){b=v[a+20>>2];c=v[a+28>>2];p=v[a+36>>2];u[O+28>>1]=x[j+8>>1];v[O+24>>2]=p;v[O+20>>2]=c;v[O+16>>2]=b;b=v[a+24>>2];c=v[a+32>>2];p=v[a+40>>2];u[O+12>>1]=x[j+10>>1];v[O+8>>2]=p;v[O+4>>2]=c;v[O>>2]=b;U=v[a+112>>2];c=i;sa=z[a>>2];ta=z[a+4>>2];ua=z[a+8>>2];va=z[a+12>>2];Pa=z[a+124>>2];Ea=z[a+164>>2];wa=z[a+168>>2];I=0;ha=0;j=xa-272|0;xa=j;p=O+16|0;b=x[p+12>>1];if((b|0)==65535){Fa=w[v[p>>2]+62|0]!=0}a=x[O+12>>1];ya=(a|0)==65535?w[v[O>>2]+62|0]!=0:ya;s=d;q=e;y=f;h:{if((b|0)==65535){e=z[v[p+8>>2]+28>>2];break h}a=v[p>>2];e=C(Ba[v[v[a>>2]+124>>2]](a,b));a=x[O+12>>1]}a=a&65535;if((a|0)==65535){d=z[v[O+8>>2]+28>>2]}else{b=v[O>>2];d=C(Ba[v[v[b>>2]+124>>2]](b,a))}a=x[p+12>>1];i:{if((a|0)==65535){a=v[p+8>>2];f=z[a+24>>2];g=z[a+8>>2];b=v[a>>2];r=v[a+4>>2];X=v[a+20>>2];a=v[a+16>>2];v[j+124>>2]=0;z[j+120>>2]=f;v[j+108>>2]=0;v[j+112>>2]=a;v[j+116>>2]=X;v[j+96>>2]=b;v[j+100>>2]=r;z[j+104>>2]=g;break i}b=v[p>>2];Ba[v[v[b>>2]+116>>2]](j+96|0,b,a)}a=x[O+12>>1];j:{if((a|0)==65535){a=v[O+8>>2];f=z[a+24>>2];g=z[a+8>>2];b=v[a>>2];r=v[a+4>>2];X=v[a+20>>2];a=v[a+16>>2];v[j+92>>2]=0;z[j+88>>2]=f;v[j+76>>2]=0;v[j+80>>2]=a;v[j+84>>2]=X;v[j+64>>2]=b;v[j+68>>2]=r;z[j+72>>2]=g;break j}b=v[O>>2];Ba[v[v[b>>2]+116>>2]](j- -64|0,b,a)}z[j+48>>2]=sa;z[j+32>>2]=ua;z[j+16>>2]=ta;z[j>>2]=va;b=v[L+7688>>2];if(b){gb=Ea>C(0)|wa>C(0);Ga=d>2];Ia=z[T+20>>2];Ja=z[S+24>>2];Ka=z[S+20>>2];La=z[T+16>>2];Ma=z[S+16>>2];za=C(s*C(.800000011920929));Qa=C(-za);while(1){a=L+(I<<2)|0;Y=v[a+7296>>2];if(Y){e=C(1);aa=a+7424|0;a=U+(x[L+B(v[aa>>2],44)>>1]<<6)|0;r=w[a+48|0];e=r&4?C(C(1)/C(x[(L+B(I,104)|0)+2818>>1])):e;ca=z[a+60>>2];d=z[a+44>>2];f=z[a+56>>2];t[c+2|0]=Y;b=0;R=r&1;b=R?b:w[(L+B(I,104)|0)+2818|0]<<1;a=c+80|0;z[c+16>>2]=e*d;u[c>>1]=3;t[c+3|0]=b;z[c+8>>2]=va;z[c+4>>2]=ta;z[c+28>>2]=ua;z[c+24>>2]=sa;z[c+20>>2]=e*f;b=v[aa>>2];r=U+(x[L+B(b,44)>>1]<<6)|0;k=z[r>>2];l=z[r+4>>2];o=z[r+8>>2];z[c+44>>2]=Ga;z[c+40>>2]=o;z[c+36>>2]=l;z[c+32>>2]=k;e=C(0);k:{if((b|0)==65535){ja=C(0);break k}ga=C(-l);_=C(-o);ka=C(-k);ja=C(0);while(1){qa=L+B(b,44)|0;$a=w[qa+5|0];if($a){Na=U+(x[qa>>1]<<6)|0;X=0;b=a;while(1){r=Na+(X<<6)|0;d=z[r+16>>2];f=C(d-La);g=z[r+20>>2];m=C(g-Ia);Z=C(C(f*l)-C(k*m));h=z[r+24>>2];n=C(h-Ha);da=C(C(n*k)-C(o*f));g=C(g-Ka);f=C(h-Ja);M=C(C(g*o)-C(l*f));A=M;d=C(d-Ma);N=C(C(f*k)-C(o*d));f=N;V=C(C(d*l)-C(k*g));F=V;if(x[p+12>>1]==65535){a=v[p+4>>2];F=C(C(z[a+60>>2]*V)+C(C(z[a+36>>2]*M)+C(N*z[a+48>>2])));A=C(C(z[a+52>>2]*V)+C(C(z[a+28>>2]*M)+C(N*z[a+40>>2])));f=C(C(z[a+56>>2]*V)+C(C(z[a+32>>2]*M)+C(N*z[a+44>>2])))}ea=z[r+12>>2];v[j+204>>2]=0;z[j+200>>2]=F;z[j+196>>2]=f;z[j+192>>2]=A;v[j+188>>2]=0;z[j+184>>2]=o;z[j+180>>2]=l;z[j+176>>2]=k;g=C(-Z);h=C(-da);H=C(C(m*o)-C(l*n));n=C(-H);l:{if(x[O+12>>1]!=65535){m=h;d=g;break l}a=v[O+4>>2];d=C(C(z[a+60>>2]*g)+C(C(z[a+36>>2]*n)+C(z[a+48>>2]*h)));m=C(C(z[a+56>>2]*g)+C(C(z[a+32>>2]*n)+C(z[a+44>>2]*h)));n=C(C(z[a+52>>2]*g)+C(C(z[a+28>>2]*n)+C(z[a+40>>2]*h)))}v[j+172>>2]=0;v[j+156>>2]=0;z[j+152>>2]=_;z[j+148>>2]=ga;z[j+144>>2]=ka;z[j+160>>2]=n;z[j+164>>2]=m;z[j+168>>2]=d;kB(j+128|0,p,j+176|0,j+240|0,j+48|0,j+16|0,O,j+144|0,j+208|0,j+32|0,j);P=z[r+40>>2];Q=z[r+36>>2];E=z[r+32>>2];h=z[j+104>>2];J=z[j+120>>2];Oa=z[j+72>>2];la=z[j+88>>2];ia=z[j+96>>2];Aa=z[j+112>>2];Ra=z[j+64>>2];Sa=z[j+80>>2];Ta=z[j+100>>2];Ua=z[j+116>>2];Za=z[j+68>>2];_a=z[j+84>>2];g=z[j+128>>2];z[b+36>>2]=Qa;z[b+24>>2]=-d;z[b+20>>2]=-m;z[b+16>>2]=-n;d=C(ea-Pa);z[b+12>>2]=d;z[b+8>>2]=F;z[b+4>>2]=f;z[b>>2]=A;f=g>C(1.1920928955078125e-7)?C(C(1)/C(g+C(9999999747378752e-20))):C(0);z[b+28>>2]=f;m=C(C(k*ia)+C(M*Aa));n=C(C(k*Ra)+C(H*Sa));A=C(C(l*Ta)+C(N*Ua));F=C(C(l*Za)+C(da*_a));M=C(C(o*h)+C(V*J));N=C(C(o*Oa)+C(Z*la));g=C(C(C(m-n)+C(A-F))+C(M-N));h=C(-g);h=C((ya?C(C(n+F)+N):C(-0))+C(C(C(C(P*o)+C(C(E*k)+C(l*Q)))+(ca>C(0)?gC(d*q)?C(ca*h):C(0):C(0):C(0)))-(Fa?C(C(m+A)+M):C(0))));z[b+32>>2]=h;a=v[j+244>>2];v[b+48>>2]=v[j+240>>2];v[b+52>>2]=a;a=v[j+252>>2];v[b+56>>2]=v[j+248>>2];v[b+60>>2]=a;a=v[j+260>>2];v[b+80>>2]=v[j+256>>2];v[b+84>>2]=a;a=v[j+268>>2];v[b+88>>2]=v[j+264>>2];v[b+92>>2]=a;a=v[j+212>>2];v[b+64>>2]=v[j+208>>2];v[b+68>>2]=a;a=v[j+220>>2];v[b+72>>2]=v[j+216>>2];v[b+76>>2]=a;a=v[j+228>>2];v[b+96>>2]=v[j+224>>2];v[b+100>>2]=a;a=v[j+236>>2];v[b+104>>2]=v[j+232>>2];v[b+108>>2]=a;d=C(C(f*C(h-C(za*d)))-C(g*f));e=C(e+(d>C(0)?d:C(0)));d=z[r+12>>2];ja=d>ja?ja:d;a=b+112|0;b=a;X=X+1|0;if(($a|0)!=(X|0)){continue}break}}b=x[qa+2>>1];if((b|0)!=65535){continue}break}}z[c+52>>2]=e/C(Y>>>0);b=a;a=Y<<2;b=I9(b,0,a);v[c+56>>2]=0;a=b+(a+12&-16)|0;m:{if(R){break m}d=z[j+72>>2];e=z[j+104>>2];f=z[j+64>>2];g=z[j+96>>2];h=z[j+68>>2];m=z[j+100>>2];v[c+60>>2]=B(ha,104)+pa;X=L+B(I,104)|0;Y=X+2818|0;if(!x[Y>>1]){break m}ka=R?C(0):s;e=C(e-d);f=C(g-f);g=C(m-h);d=C(C(o*e)+C(C(k*f)+C(l*g)));e=C(e-C(o*d));f=C(f-C(k*d));d=C(g-C(l*d));b=C(C(e*e)+C(C(f*f)+C(d*d)))>C(9999999747378752e-20);r=C(D(k))>2];a=X+B(r,12)|0;d=z[a+2888>>2];f=C(d+d);g=z[T>>2];d=z[a+2880>>2];h=C(d+d);d=z[a+2884>>2];m=C(d+d);k=z[T+4>>2];l=C(C(e*f)+C(C(g*h)+C(m*k)));d=z[T+12>>2];Z=C(C(d*d)+C(-.5));V=C(C(g*l)+C(C(h*Z)+C(d*C(C(k*f)-C(m*e)))));ca=C(C(k*l)+C(C(m*Z)+C(d*C(C(e*h)-C(f*g)))));la=C(C(V*n)-C(A*ca));Z=C(C(e*l)+C(C(f*Z)+C(d*C(C(g*m)-C(h*k)))));ia=C(C(Z*A)-C(F*V));Aa=C(C(ca*F)-C(n*Z));f=z[S+8>>2];d=z[a+2864>>2];g=C(d+d);h=z[S>>2];d=z[a+2856>>2];m=C(d+d);d=z[a+2860>>2];k=C(d+d);l=z[S+4>>2];_=C(C(f*g)+C(C(h*m)+C(k*l)));e=z[S+12>>2];ea=C(C(e*e)+C(-.5));da=C(C(h*_)+C(C(m*ea)+C(e*C(C(l*g)-C(k*f)))));ga=C(C(l*_)+C(C(k*ea)+C(e*C(C(f*m)-C(g*h)))));d=C(C(da*n)-C(A*ga));_=C(C(f*_)+C(C(g*ea)+C(e*C(C(h*k)-C(m*l)))));f=C(C(_*A)-C(F*da));l=C(C(ga*F)-C(n*_));n:{if(x[p+12>>1]!=65535){h=f;e=d;break n}a=v[p+4>>2];e=C(C(z[a+60>>2]*d)+C(C(z[a+36>>2]*l)+C(f*z[a+48>>2])));h=C(C(z[a+56>>2]*d)+C(C(z[a+32>>2]*l)+C(f*z[a+44>>2])));l=C(C(z[a+52>>2]*d)+C(C(z[a+28>>2]*l)+C(f*z[a+40>>2])))}v[j+204>>2]=0;z[j+200>>2]=e;z[j+196>>2]=h;z[j+192>>2]=l;v[j+188>>2]=0;z[j+184>>2]=F;z[j+180>>2]=n;z[j+176>>2]=A;f=C(-la);k=C(-ia);m=C(-Aa);o:{if(x[O+12>>1]!=65535){d=k;g=f;break o}a=v[O+4>>2];g=C(C(z[a+60>>2]*f)+C(C(z[a+36>>2]*m)+C(z[a+48>>2]*k)));d=C(C(z[a+56>>2]*f)+C(C(z[a+32>>2]*m)+C(z[a+44>>2]*k)));m=C(C(z[a+52>>2]*f)+C(C(z[a+28>>2]*m)+C(z[a+40>>2]*k)))}v[j+172>>2]=0;z[j+168>>2]=g;z[j+164>>2]=d;z[j+160>>2]=m;v[j+156>>2]=0;z[j+152>>2]=E;z[j+148>>2]=J;z[j+144>>2]=Oa;kB(j+128|0,p,j+176|0,j+240|0,j+48|0,j+16|0,O,j+144|0,j+208|0,j+32|0,j);k=z[j+128>>2];R=k>C(1.1920928955078125e-7);a=U+(x[L+B(v[aa>>2],44)>>1]<<6)|0;f=C(C(z[a+40>>2]*F)+C(C(z[a+32>>2]*A)+C(n*z[a+36>>2])));f=Fa?C(f-C(C(C(C(z[j+96>>2]*A)+C(z[j+112>>2]*l))+C(C(z[j+100>>2]*n)+C(z[j+116>>2]*h)))+C(C(z[j+104>>2]*F)+C(z[j+120>>2]*e)))):f;f=ya?C(f-C(C(C(C(z[j+80>>2]*m)-C(A*z[j+64>>2]))+C(C(z[j+84>>2]*d)-C(n*z[j+68>>2])))+C(C(z[j+88>>2]*g)-C(F*z[j+72>>2])))):f;z[b+8>>2]=F;z[b+4>>2]=n;z[b>>2]=A;ea=C(C(Ja+_)-C(Ha+Z));la=C(C(Ma+da)-C(La+V));ia=C(C(Ka+ga)-C(Ia+ca));z[b+12>>2]=C(ea*F)+C(C(la*A)+C(n*ia));a=v[j+192>>2];qa=v[j+196>>2];d=z[j+200>>2];z[b+28>>2]=f;z[b+24>>2]=d;v[b+16>>2]=a;v[b+20>>2]=qa;d=z[j+160>>2];e=z[j+168>>2];f=z[j+164>>2];z[b+48>>2]=ka;z[b+44>>2]=R?C(C(.800000011920929)/C(k+C(9999999747378752e-20))):C(0);v[b+52>>2]=0;z[b+36>>2]=-f;z[b+40>>2]=-e;z[b+32>>2]=-d;a=v[j+252>>2];v[b+72>>2]=v[j+248>>2];v[b+76>>2]=a;a=v[j+244>>2];v[b+64>>2]=v[j+240>>2];v[b+68>>2]=a;a=v[j+220>>2];v[b+88>>2]=v[j+216>>2];v[b+92>>2]=a;a=v[j+212>>2];v[b+80>>2]=v[j+208>>2];v[b+84>>2]=a;a=v[j+268>>2];v[b+104>>2]=v[j+264>>2];v[b+108>>2]=a;a=v[j+260>>2];v[b+96>>2]=v[j+256>>2];v[b+100>>2]=a;a=v[j+236>>2];v[b+120>>2]=v[j+232>>2];v[b+124>>2]=a;a=v[j+228>>2];v[b+112>>2]=v[j+224>>2];v[b+116>>2]=a;m=C(C(V*N)+C(o*C(-ca)));k=C(C(Z*o)+C(M*C(-V)));l=C(C(ca*M)+C(N*C(-Z)));d=C(C(da*N)+C(o*C(-ga)));f=C(C(_*o)+C(M*C(-da)));g=C(C(ga*M)+C(N*C(-_)));p:{if(x[p+12>>1]!=65535){e=f;h=d;break p}a=v[p+4>>2];h=C(C(z[a+60>>2]*d)+C(C(z[a+36>>2]*g)+C(f*z[a+48>>2])));e=C(C(z[a+56>>2]*d)+C(C(z[a+32>>2]*g)+C(f*z[a+44>>2])));g=C(C(z[a+52>>2]*d)+C(C(z[a+28>>2]*g)+C(f*z[a+40>>2])))}v[j+204>>2]=0;z[j+200>>2]=h;z[j+196>>2]=e;z[j+192>>2]=g;v[j+188>>2]=0;z[j+184>>2]=M;z[j+180>>2]=N;z[j+176>>2]=o;m=C(-m);k=C(-k);l=C(-l);q:{if(x[O+12>>1]!=65535){d=k;f=m;break q}a=v[O+4>>2];f=C(C(z[a+60>>2]*m)+C(C(z[a+36>>2]*l)+C(z[a+48>>2]*k)));d=C(C(z[a+56>>2]*m)+C(C(z[a+32>>2]*l)+C(z[a+44>>2]*k)));l=C(C(z[a+52>>2]*m)+C(C(z[a+28>>2]*l)+C(z[a+40>>2]*k)))}v[j+172>>2]=0;z[j+168>>2]=f;z[j+164>>2]=d;z[j+160>>2]=l;v[j+156>>2]=0;z[j+152>>2]=H;z[j+148>>2]=P;z[j+144>>2]=Q;kB(j+128|0,p,j+176|0,j+240|0,j+48|0,j+16|0,O,j+144|0,j+208|0,j+32|0,j);k=z[j+128>>2];R=k>C(1.1920928955078125e-7);a=U+(x[L+B(v[aa>>2],44)>>1]<<6)|0;m=C(C(z[a+40>>2]*M)+C(C(z[a+32>>2]*o)+C(N*z[a+36>>2])));m=Fa?C(m-C(C(C(C(z[j+96>>2]*o)+C(z[j+112>>2]*g))+C(C(z[j+100>>2]*N)+C(z[j+116>>2]*e)))+C(C(z[j+104>>2]*M)+C(z[j+120>>2]*h)))):m;m=ya?C(m-C(C(C(C(z[j+80>>2]*l)-C(o*z[j+64>>2]))+C(C(z[j+84>>2]*d)-C(N*z[j+68>>2])))+C(C(z[j+88>>2]*f)-C(M*z[j+72>>2])))):m;a=b+256|0;v[b+180>>2]=0;z[b+172>>2]=R?C(C(.800000011920929)/C(k+C(9999999747378752e-20))):C(0);z[b+156>>2]=m;z[b+152>>2]=h;z[b+148>>2]=e;z[b+144>>2]=g;z[b+136>>2]=M;z[b+132>>2]=N;z[b+128>>2]=o;z[b+176>>2]=ka;z[b+168>>2]=-f;z[b+164>>2]=-d;z[b+160>>2]=-l;z[b+140>>2]=C(ea*M)+C(C(la*o)+C(N*ia));R=v[j+244>>2];v[b+192>>2]=v[j+240>>2];v[b+196>>2]=R;R=v[j+252>>2];v[b+200>>2]=v[j+248>>2];v[b+204>>2]=R;R=v[j+212>>2];v[b+208>>2]=v[j+208>>2];v[b+212>>2]=R;R=v[j+220>>2];v[b+216>>2]=v[j+216>>2];v[b+220>>2]=R;R=v[j+260>>2];v[b+224>>2]=v[j+256>>2];v[b+228>>2]=R;R=v[j+268>>2];v[b+232>>2]=v[j+264>>2];v[b+236>>2]=R;R=v[j+228>>2];v[b+240>>2]=v[j+224>>2];v[b+244>>2]=R;R=v[j+236>>2];v[b+248>>2]=v[j+232>>2];v[b+252>>2]=R;r=r+1|0;R=x[Y>>1];if(r>>>0>>0){continue}break}if(!(gb&(R|0)==1)){break m}t[c+3|0]=w[c+3|0]+1;d=z[S>>2];e=z[X+2908>>2];f=z[S+12>>2];g=z[X+2912>>2];h=z[X+2916>>2];m=z[S+8>>2];k=z[X+2904>>2];l=z[S+4>>2];o=C(C(C(d*e)+C(C(f*g)+C(h*m)))-C(k*l));n=z[T+8>>2];A=C(C(C(m*k)+C(C(f*e)+C(h*l)))-C(g*d));F=z[T+4>>2];M=C(C(C(C(f*h)-C(k*d))-C(l*e))-C(m*g));N=z[T+12>>2];V=z[T>>2];d=C(C(C(l*g)+C(C(f*k)+C(h*d)))-C(e*m));e=C(C(o*n)+C(C(A*F)+C(C(M*N)+C(V*d))));a=U+(x[L+B(v[aa>>2],44)>>1]<<6)|0;m=z[a+8>>2];h=C(C(C(V*A)+C(C(C(M*n)-C(N*o))-C(d*F)))*m);k=z[a>>2];g=C(C(C(F*o)+C(C(C(M*V)-C(N*d))-C(A*n)))*k);l=z[a+4>>2];n=C(C(C(n*d)+C(C(C(M*F)-C(N*A))-C(o*V)))*l);f=C(K(C(C(e*e)+C(C(h*h)+C(C(g*g)+C(n*n))))));if(f!=C(0)){d=C(C(1)/f);e=C(e*d);n=C(n*d);h=C(h*d);g=C(g*d)}o=C(K(C(C(G(C(-ja),C(0)))*Ea)));r=o=C(0)?C(C(C(e*C(0))+C(C(h*m)+C(C(g*k)+C(l*n))))/e):C(0));r:{if(x[p+12>>1]==65535){a=v[p+4>>2];d=z[a+52>>2];f=z[a+40>>2];k=z[a+56>>2];l=z[a+32>>2];n=z[a+44>>2];A=z[a+60>>2];F=z[a+36>>2];M=z[a+48>>2];N=z[a+28>>2];e=z[c+40>>2];h=z[c+32>>2];g=z[c+36>>2];v[j+240>>2]=0;A=C(C(C(h*F)+C(g*M))+C(e*A));F=C(C(C(h*N)+C(g*f))+C(e*d));d=C(C(C(h*l)+C(g*n))+C(e*k));break r}v[j+240>>2]=0;h=z[c+32>>2];F=h;e=z[c+40>>2];A=e;g=z[c+36>>2];d=g}k=r?wa:o;v[j+268>>2]=0;z[j+264>>2]=A;z[j+260>>2]=d;z[j+256>>2]=F;v[j+252>>2]=0;v[j+244>>2]=0;v[j+248>>2]=0;d=C(-g);s:{if(x[O+12>>1]==65535){a=v[O+4>>2];A=C(C(C(z[a+48>>2]*d)-C(h*z[a+36>>2]))-C(e*z[a+60>>2]));f=C(C(C(z[a+44>>2]*d)-C(h*z[a+32>>2]))-C(e*z[a+56>>2]));d=C(C(C(z[a+40>>2]*d)-C(h*z[a+28>>2]))-C(e*z[a+52>>2]));break s}A=C(-e);f=d;d=C(-h)}a=b+384|0;v[j+216>>2]=0;v[j+220>>2]=0;v[j+208>>2]=0;v[j+212>>2]=0;v[j+236>>2]=0;z[j+232>>2]=A;z[j+228>>2]=f;z[j+224>>2]=d;d=jB(p,j+240|0,j+176|0,sa,ta,O,j+208|0,j+144|0,ua,va);z[b+268>>2]=-m;v[b+264>>2]=0;v[b+256>>2]=0;v[b+260>>2]=0;c=v[j+256>>2];r=v[j+260>>2];e=z[j+264>>2];v[b+284>>2]=0;z[b+280>>2]=e;v[b+272>>2]=c;v[b+276>>2]=r;e=z[j+224>>2];f=z[j+232>>2];g=z[j+228>>2];z[b+300>>2]=d>C(1.1920928955078125e-7)?C(C(.800000011920929)/C(d+C(9999999747378752e-20))):C(0);z[b+304>>2]=ka;z[b+312>>2]=k;v[b+308>>2]=0;z[b+292>>2]=-g;z[b+296>>2]=-f;z[b+288>>2]=-e;c=v[j+176>>2];r=v[j+180>>2];d=z[j+184>>2];v[b+332>>2]=0;z[b+328>>2]=d;v[b+320>>2]=c;v[b+324>>2]=r;c=v[j+144>>2];r=v[j+148>>2];d=z[j+152>>2];v[b+348>>2]=0;z[b+344>>2]=d;v[b+336>>2]=c;v[b+340>>2]=r;c=v[j+192>>2];r=v[j+196>>2];d=z[j+200>>2];v[b+364>>2]=0;z[b+360>>2]=d;v[b+352>>2]=c;v[b+356>>2]=r;c=v[j+160>>2];r=v[j+164>>2];d=z[j+168>>2];v[b+380>>2]=0;z[b+376>>2]=d;v[b+368>>2]=c;v[b+372>>2]=r}ha=ha+1|0;c=a;b=v[L+7688>>2]}I=I+1|0;if(I>>>0>>0){continue}break}}xa=j+272|0;break g}b=v[L+7688>>2];if(!b){break g}qa=(U|0)==4|(U|0)==2?5:1;lb=z[a+164>>2];hb=z[a+168>>2];gb=lb>C(0)|hb>C(0);Oa=ha?C(0):d;c=v[a+36>>2];g=z[c+28>>2];p=v[a+40>>2];h=z[p+28>>2];Ab=g>h?g:h;la=C(z[a>>2]*z[c+32>>2]);aa=w[v[a+24>>2]+62|0];Bb=z[a+124>>2];A=z[a+12>>2];F=z[a+4>>2];j=v[a+112>>2];$a=v[a+108>>2];S=v[a+32>>2];M=z[S+60>>2];N=z[S+56>>2];ja=z[S+52>>2];V=z[S+48>>2];ca=z[S+44>>2];Z=z[S+40>>2];da=z[S+36>>2];ga=z[S+32>>2];T=v[a+28>>2];_=z[T+60>>2];sa=z[T+56>>2];ta=z[T+52>>2];ua=z[T+48>>2];va=z[T+44>>2];wa=z[T+40>>2];ka=z[T+36>>2];Ea=z[T+32>>2];Ha=z[p+24>>2];Ia=z[p+20>>2];Ja=z[c+24>>2];Ka=z[c+20>>2];La=z[S+28>>2];Ma=z[T+28>>2];ea=z[p+16>>2];Pa=z[c+16>>2];mb=z[a+68>>2];nb=z[a+96>>2];Cb=C(mb-nb);ob=z[a- -64>>2];pb=z[a+92>>2];Db=C(ob-pb);qb=z[a+60>>2];rb=z[a+88>>2];Eb=C(qb-rb);ia=z[c+8>>2];Aa=z[p+8>>2];sb=C(ia-Aa);Ra=z[c+4>>2];Sa=z[p+4>>2];tb=C(Ra-Sa);Ta=z[c>>2];Ua=z[p>>2];ub=C(Ta-Ua);Fb=C(d*C(-.800000011920929));Ga=z[a+84>>2];Za=C(C(Ga*Ga)+C(-.5));za=z[a+56>>2];_a=C(C(za*za)+C(-.5));ab=z[a+76>>2];Gb=C(-ab);bb=z[a+72>>2];Hb=C(-bb);cb=z[a+80>>2];Ib=C(-cb);db=z[a+48>>2];Jb=C(-db);eb=z[a+44>>2];Kb=C(-eb);fb=z[a+52>>2];Lb=C(-fb);ib=C(z[p+32>>2]*C(-z[a+8>>2]));Mb=C(-ib);ha=w[v[a+20>>2]+62|0];a=i;while(1){Fa=L+(r<<2)|0;I=v[Fa+7296>>2];if(I){ya=Fa+7424|0;c=v[ya>>2];U=j+(x[L+B(c,44)>>1]<<6)|0;n=z[U+60>>2];z[a+48>>2]=Mb;z[a+12>>2]=la;v[a+64>>2]=$a;t[a+1|0]=R;g=z[U>>2];m=z[U+4>>2];k=z[U+8>>2];z[a+44>>2]=Ab;z[a+40>>2]=k;z[a+36>>2]=m;z[a+32>>2]=g;d=C(C(k*k)+C(C(g*g)+C(m*m)));Ca=C(ib*d);Da=C(la*d);b=a+80|0;Qa=C(34028234663852886e22);if((c|0)!=65535){ma=C(C(Aa*k)+C(C(Ua*g)+C(Sa*m)));na=C(C(ia*k)+C(C(Ta*g)+C(Ra*m)));while(1){Y=L+B(c,44)|0;Na=w[Y+5|0];if(Na){Nb=j+(x[Y>>1]<<6)|0;p=0;while(1){c=(p<<6)+Nb|0;$=z[c+40>>2];oa=z[c+36>>2];ba=z[c+32>>2];y=z[c+20>>2];l=z[c+24>>2];o=z[c+16>>2];d=z[c+12>>2];z[b+36>>2]=Fb;d=C(d-Bb);z[b+12>>2]=d;q=C(o-rb);s=C(y-pb);h=C(C(q*m)-C(g*s));H=C(l-nb);s=C(C(s*k)-C(m*H));q=C(C(H*g)-C(k*q));H=C(C(M*h)+C(C(da*s)+C(V*q)));z[b+24>>2]=H;P=C(C(N*h)+C(C(ga*s)+C(ca*q)));z[b+20>>2]=P;Q=C(C(ja*h)+C(C(La*s)+C(Z*q)));z[b+16>>2]=Q;o=C(o-qb);E=C(y-ob);y=C(C(o*m)-C(g*E));J=C(E*k);E=C(l-mb);l=C(J-C(m*E));o=C(C(E*g)-C(k*o));E=C(C(_*y)+C(C(ka*l)+C(ua*o)));z[b+8>>2]=E;J=C(C(sa*y)+C(C(Ea*l)+C(va*o)));z[b+4>>2]=J;fa=C(C(ta*y)+C(C(Ma*l)+C(wa*o)));z[b>>2]=fa;H=C(C(Da+C(F*C(C(E*E)+C(C(fa*fa)+C(J*J)))))+C(C(A*C(C(H*H)+C(C(Q*Q)+C(P*P))))-Ca));z[b+28>>2]=H>C(0)?C(C(1)/H):C(0);y=C(na+C(C(y*Ja)+C(C(l*Pa)+C(Ka*o))));s=C(ma+C(C(h*Ha)+C(C(s*ea)+C(Ia*q))));q=C(y-s);h=C(-q);z[b+32>>2]=(aa?s:C(-0))+C(C(C(C(k*$)+C(C(g*ba)+C(m*oa)))+(n>C(0)?f>q?h>C(d*e)?C(n*h):C(0):C(0):C(0)))-(ha?y:C(0)));Qa=d>1];if((c|0)!=65535){continue}break}}c=b;b=I<<2;c=I9(c,0,b);p=b+12&-16;d=z[U+56>>2];h=z[U+44>>2];t:{u:{v:{if(t[U+48|0]&1){t[a+2|0]=I;break v}b=x[(L+B(r,104)|0)+2818>>1];t[a+2|0]=I;if(b){break u}}I=0;b=0;break t}I=b<<1;b=1}c=c+p|0;z[a+16>>2]=h;t[a|0]=qa;t[a+3|0]=I;v[a+56>>2]=0;z[a+8>>2]=A;z[a+4>>2]=F;z[a+28>>2]=ib;z[a+24>>2]=la;z[a+20>>2]=d;w:{if(!b){break w}v[a+60>>2]=B(X,104)+pa;I=L+B(r,104)|0;Y=I+2818|0;Na=x[Y>>1];if(!Na){break w}d=C(C(k*sb)+C(C(g*ub)+C(tb*m)));h=C(tb-C(m*d));b=C(D(g))C(9999999747378752e-20);h=p?h:b?C(-k):g;q=h;y=p?s:b?m:C(0);d=p?d:b?C(0):C(-m);h=C(C(1)/C(K(C(C(y*y)+C(C(d*d)+C(h*h))))));s=C(q*h);q=C(d*h);d=C(C(g*s)-C(q*m));l=d;n=C(d*d);y=C(y*h);d=C(C(m*y)-C(s*k));h=C(C(k*q)-C(y*g));n=C(C(1)/C(K(C(n+C(C(d*d)+C(h*h))))));l=C(l*n);o=C(d*n);n=C(h*n);Ob=C(C(Aa*l)+C(C(Ua*o)+C(Sa*n)));Pb=C(C(ia*l)+C(C(Ta*o)+C(Ra*n)));Qb=C(C(Aa*y)+C(C(Ua*q)+C(Sa*s)));Rb=C(C(ia*y)+C(C(Ta*q)+C(Ra*s)));vb=w[U+48|0]&4?(Na|0)==2?C(.5):C(1):C(1);p=0;while(1){b=c;c=I+B(p,12)|0;d=z[c+2884>>2];P=z[c+2864>>2];Q=z[c+2856>>2];E=z[c+2860>>2];J=C(C(fb*P)+C(C(eb*Q)+C(db*E)));h=C(C(eb*J)+C(C(_a*Q)+C(za*C(C(db*P)+C(E*Lb)))));h=C(h+h);H=C(C(db*J)+C(C(_a*E)+C(za*C(C(fb*Q)+C(P*Kb)))));H=C(H+H);fa=C(C(h*s)-C(q*H));P=C(C(C(za*C(C(eb*E)+C(Q*Jb)))+C(_a*P))+C(fb*J));P=C(P+P);ma=C(C(H*y)-C(s*P));na=C(C(P*q)-C(y*h));Va=C(C(_*fa)+C(C(ka*ma)+C(ua*na)));Wa=C(C(ta*fa)+C(C(Ma*ma)+C(wa*na)));Xa=C(C(sa*fa)+C(C(Ea*ma)+C(va*na)));J=z[c+2888>>2];$=z[c+2880>>2];ba=C(C(cb*J)+C(C(bb*$)+C(ab*d)));Q=C(C(bb*ba)+C(C(Za*$)+C(Ga*C(C(ab*J)+C(d*Ib)))));Q=C(Q+Q);E=C(C(ab*ba)+C(C(Za*d)+C(Ga*C(C(cb*$)+C(J*Hb)))));E=C(E+E);oa=C(C(Q*s)-C(q*E));d=C(C(C(Ga*C(C(bb*d)+C($*Gb)))+C(Za*J))+C(cb*ba));J=C(d+d);$=C(C(E*y)-C(s*J));ba=C(C(J*q)-C(y*Q));Ya=C(C(M*oa)+C(C(da*$)+C(V*ba)));jb=C(C(ja*oa)+C(C(La*$)+C(Z*ba)));kb=C(C(N*oa)+C(C(ga*$)+C(ca*ba)));wb=C(C(Da+C(F*C(C(Va*Va)+C(C(Wa*Wa)+C(Xa*Xa)))))+C(C(A*C(C(Ya*Ya)+C(C(jb*jb)+C(kb*kb))))-Ca));U=wb>C(0);c=x[(Fa+(p<<1)|0)+7556>>1];if((c|0)==65535){c=x[L+B(v[ya>>2],44)>>1]}c=((c&65535)<<6)+j|0;xb=z[c+40>>2];yb=z[c+32>>2];zb=z[c+36>>2];d=C(C(xb*y)+C(C(yb*q)+C(s*zb)));d=ha?C(d-C(Rb+C(C(fa*Ja)+C(C(ma*Pa)+C(Ka*na))))):d;z[b+56>>2]=vb;v[b+52>>2]=0;z[b+32>>2]=jb;z[b+16>>2]=Wa;z[b+8>>2]=y;z[b+4>>2]=s;z[b>>2]=q;z[b+48>>2]=Oa;z[b+44>>2]=U?C(C(.800000011920929)/wb):C(0);z[b+40>>2]=Ya;z[b+36>>2]=kb;if(aa){d=C(C(Qb+C(C(oa*Ha)+C(C($*ea)+C(Ia*ba))))+d)}z[b+28>>2]=d;z[b+24>>2]=Va;z[b+20>>2]=Xa;Va=C(Cb+C(P-J));Wa=C(Eb+C(h-Q));Xa=C(Db+C(H-E));z[b+12>>2]=C(Va*y)+C(C(Wa*q)+C(s*Xa));d=C(C(h*n)+C(o*C(-H)));H=C(C(H*l)+C(n*C(-P)));P=C(C(P*o)+C(l*C(-h)));ma=C(C(_*d)+C(C(ka*H)+C(ua*P)));na=C(C(ta*d)+C(C(Ma*H)+C(wa*P)));$=C(C(sa*d)+C(C(Ea*H)+C(va*P)));fa=C(C(Q*n)+C(o*C(-E)));E=C(C(E*l)+C(n*C(-J)));Q=C(C(J*o)+C(l*C(-Q)));J=C(C(M*fa)+C(C(da*E)+C(V*Q)));oa=C(C(ja*fa)+C(C(La*E)+C(Z*Q)));ba=C(C(N*fa)+C(C(ga*E)+C(ca*Q)));Ya=C(C(Da+C(F*C(C(ma*ma)+C(C(na*na)+C($*$)))))+C(C(A*C(C(J*J)+C(C(oa*oa)+C(ba*ba))))-Ca));U=Ya>C(0);h=C(C(xb*l)+C(C(yb*o)+C(n*zb)));h=ha?C(h-C(Pb+C(C(d*Ja)+C(C(H*Pa)+C(Ka*P))))):h;c=b+128|0;z[b+120>>2]=vb;v[b+116>>2]=0;z[b+108>>2]=U?C(C(.800000011920929)/Ya):C(0);z[b+104>>2]=J;z[b+100>>2]=ba;z[b+96>>2]=oa;if(aa){h=C(C(Ob+C(C(fa*Ha)+C(C(E*ea)+C(Ia*Q))))+h)}z[b+92>>2]=h;z[b+88>>2]=ma;z[b+84>>2]=$;z[b+80>>2]=na;z[b+72>>2]=l;z[b+68>>2]=n;z[b+64>>2]=o;z[b+112>>2]=Oa;z[b+76>>2]=C(Va*l)+C(C(Wa*o)+C(n*Xa));p=p+1|0;U=x[Y>>1];if(p>>>0>>0){continue}break}if(!(gb&(U|0)==1)){break w}t[a+3|0]=w[a+3|0]+1;d=z[T>>2];h=z[I+2908>>2];s=z[T+12>>2];q=z[I+2912>>2];y=z[I+2916>>2];l=z[T+8>>2];o=z[I+2904>>2];n=z[T+4>>2];H=C(C(C(d*h)+C(C(s*q)+C(y*l)))-C(o*n));P=z[S+8>>2];Q=C(C(C(l*o)+C(C(s*h)+C(y*n)))-C(q*d));E=z[S+4>>2];J=C(C(C(C(s*y)-C(o*d))-C(n*h))-C(l*q));Ca=z[S+12>>2];Da=z[S>>2];q=C(C(C(n*q)+C(C(s*o)+C(y*d)))-C(h*l));h=C(C(H*P)+C(C(Q*E)+C(C(J*Ca)+C(Da*q))));a=j+(x[L+B(v[ya>>2],44)>>1]<<6)|0;o=z[a+8>>2];d=C(C(C(Da*Q)+C(C(C(J*P)-C(Ca*H))-C(q*E)))*o);n=z[a>>2];s=C(C(C(E*H)+C(C(C(J*Da)-C(Ca*q))-C(Q*P)))*n);q=C(C(P*q)+C(C(C(J*E)-C(Ca*Q))-C(H*Da)));H=z[a+4>>2];q=C(q*H);l=C(K(C(C(h*h)+C(C(d*d)+C(C(s*s)+C(q*q))))));if(l!=C(0)){y=C(C(1)/l);h=C(h*y);s=C(s*y);q=C(q*y);d=C(d*y)}o=C9(C(l+C(-9.999999974752427e-7))>=C(0)?C(C(C(h*C(0))+C(C(d*o)+C(C(s*n)+C(H*q))))/h):C(0));c=b+192|0;d=C(K(C(lb*C(G(C(-Qa),C(0))))));z[b+184>>2]=d>2]=0;z[b+176>>2]=Oa;d=C(C(_*k)+C(C(ka*g)+C(ua*m)));h=C(C(ta*k)+C(C(Ma*g)+C(wa*m)));s=C(C(sa*k)+C(C(Ea*g)+C(va*m)));q=C(C(M*k)+C(C(da*g)+C(V*m)));y=C(C(ja*k)+C(C(La*g)+C(Z*m)));l=C(C(N*k)+C(C(ga*g)+C(ca*m)));n=C(C(F*C(C(d*d)+C(C(h*h)+C(s*s))))+C(A*C(C(q*q)+C(C(y*y)+C(l*l)))));z[b+172>>2]=n>C(0)?C(C(.800000011920929)/n):C(0);z[b+168>>2]=q;z[b+164>>2]=l;z[b+160>>2]=y;z[b+156>>2]=aa?C(C(k*Ha)+C(C(g*ea)+C(Ia*m))):ha?C(C(k*Ja)+C(C(g*Pa)+C(Ka*m))):C(0);z[b+152>>2]=d;z[b+148>>2]=s;z[b+144>>2]=h;v[b+136>>2]=0;v[b+128>>2]=0;v[b+132>>2]=0;z[b+140>>2]=-o}X=X+1|0;b=v[L+7688>>2];a=c}r=r+1|0;if(r>>>0>>0){continue}break}}v[i+ra>>2]=0}xa=O+32|0;xa=W+32|0}function Zx(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=0,p=C(0),q=0,r=C(0),s=0,A=C(0),E=C(0),F=0,G=C(0),H=0,I=0,J=0,L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=0,R=C(0),S=0,T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=0,Z=C(0),_=0,$=0,aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=0,ha=C(0),ia=C(0),ja=C(0),ka=0,la=C(0),ma=C(0),na=0,oa=0,pa=0,qa=0,ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=0,Da=C(0),Ea=0,Fa=C(0),Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=0,Ua=0,Va=0;J=xa-560|0;xa=J;fa=v[a+468>>2];Da=z[a+464>>2];k=v[a+448>>2];i=J;v[i+488>>2]=0;v[i+492>>2]=0;v[i+496>>2]=0;v[i+500>>2]=0;v[i+504>>2]=0;v[i+512>>2]=0;v[i+516>>2]=0;v[i+520>>2]=0;v[i+524>>2]=0;v[i+528>>2]=0;v[i+536>>2]=0;v[i+540>>2]=0;v[i+532>>2]=128132;v[i+544>>2]=0;v[i+548>>2]=0;v[i+552>>2]=0;v[i+556>>2]=0;v[i+484>>2]=128132;v[i+480>>2]=128088;v[i+508>>2]=128132;Ca=1;s=v[d+52>>2];Ea=k<<5;ga=Cx(s,Ea,1);O=Cx(s,Ea,1);Y=Cx(s,c<<3,1);Ka=v[d+40>>2];Ga=v[d+44>>2];v[i+472>>2]=0;v[i+476>>2]=0;v[i+464>>2]=0;v[i+468>>2]=0;v[i+456>>2]=0;v[i+460>>2]=0;v[i+448>>2]=0;v[i+452>>2]=0;pa=i+336|0;I9(pa,0,112);v[i+436>>2]=0;v[i+428>>2]=1065353216;v[i+420>>2]=0;v[i+404>>2]=-8388609;v[i+412>>2]=2139095039;v[i+332>>2]=O;v[i+328>>2]=ga;t[i+296|0]=0;$=Cx(s,c<<5,1);qa=Cx(s,(v[a+448>>2]<<5)-1|0,1);v[i+240>>2]=a;v[i+236>>2]=0;La=i+480|0;l=v[i+240>>2];z[l+464>>2]=Da;q=xa-48|0;xa=q;v[l+660>>2]=0;I9(v[l+408>>2],0,v[l+412>>2]<<2);Ha=v[l+448>>2]<<5;I9(v[l+312>>2],0,Ha);I9(v[l+168>>2],0,v[l+468>>2]<<2);t[l+489|0]=0;n=l+112|0;px(l,n,0);i=q;v[i+36>>2]=0;v[i+40>>2]=0;v[i+28>>2]=0;v[i+32>>2]=0;v[i+20>>2]=0;v[i+24>>2]=0;v[i>>2]=v[l+228>>2];v[i+4>>2]=v[l+240>>2];v[i+8>>2]=v[l+252>>2];v[i+12>>2]=v[l+264>>2];v[i+28>>2]=v[l+144>>2];v[i+24>>2]=v[l+156>>2];v[i+36>>2]=v[l+180>>2];v[i+32>>2]=v[l+192>>2];v[i+16>>2]=v[l+480>>2];tx(n);vx(n,i);qx(n);rx(n,g,i);if(y[n+336>>2]>=2){H9(v[l+276>>2],v[l+264>>2],v[l+448>>2]<<5)}Dx(l,n);i=xa-176|0;xa=i;j=v[n+224>>2];Q=v[n+336>>2];S=v[n+332>>2];a:{if(t[v[n+364>>2]]&1){I9(j,0,192);break a}F=i+160|0;while(1){v[i+168>>2]=0;v[i+172>>2]=0;v[F>>2]=0;v[F+4>>2]=0;v[i+152>>2]=0;v[i+156>>2]=0;v[i+144>>2]=0;v[i+148>>2]=0;k=H<<2;v[(H>>>0<3?k+(i+144|0)|0:(k+F|0)-12|0)>>2]=1065353216;R=z[n+472>>2];Z=z[n+448>>2];aa=z[n+460>>2];X=z[n+476>>2];ba=z[n+452>>2];ha=z[n+464>>2];ia=z[n+480>>2];ja=z[n+456>>2];la=z[n+468>>2];T=z[n+420>>2];L=z[n+412>>2];P=z[n+416>>2];ma=z[n+508>>2];ra=z[n+484>>2];sa=z[n+496>>2];U=z[n+432>>2];W=z[n+424>>2];ca=z[n+428>>2];ta=z[n+512>>2];ua=z[n+488>>2];va=z[n+500>>2];E=z[i+168>>2];da=z[n+444>>2];p=z[F>>2];ea=z[n+436>>2];N=z[n+440>>2];wa=z[n+516>>2];ya=z[n+492>>2];za=z[n+504>>2];G=z[i+164>>2];r=z[i+152>>2];A=z[i+144>>2];M=z[i+148>>2];k=j+(H<<5)|0;v[k+28>>2]=0;v[k+12>>2]=0;z[k+24>>2]=C(C(da*E)+C(C(ea*p)+C(N*G)))+C(C(C(A*ya)+C(M*za))+C(r*wa));z[k+20>>2]=C(C(U*E)+C(C(W*p)+C(ca*G)))+C(C(C(A*ua)+C(M*va))+C(r*ta));z[k+16>>2]=C(C(T*E)+C(C(L*p)+C(P*G)))+C(C(C(A*ra)+C(M*sa))+C(r*ma));z[k+8>>2]=C(C(C(A*T)+C(M*U))+C(r*da))+C(C(C(p*ja)+C(G*la))+C(E*ia));z[k+4>>2]=C(C(C(A*P)+C(M*ca))+C(r*N))+C(C(C(p*ba)+C(G*ha))+C(E*X));z[k>>2]=C(C(C(A*L)+C(M*W))+C(r*ea))+C(C(C(p*Z)+C(G*aa))+C(E*R));H=H+1|0;if((H|0)!=6){continue}break}}if(Q>>>0>=2){I=i+160|0;F=1;while(1){k=v[n+340>>2]+B(F,160)|0;z[i+128>>2]=z[k+120>>2];z[i+132>>2]=z[k+124>>2];z[i+136>>2]=z[k+128>>2];na=j+B(F,192)|0;oa=S+(F<<5)|0;H=0;while(1){v[i+168>>2]=0;v[i+172>>2]=0;v[I>>2]=0;v[I+4>>2]=0;v[i+152>>2]=0;v[i+156>>2]=0;v[i+144>>2]=0;v[i+148>>2]=0;k=H<<2;v[(H>>>0<3?k+(i+144|0)|0:(k+I|0)-12|0)>>2]=1065353216;v[i+124>>2]=0;v[i+108>>2]=0;z[i+120>>2]=-z[i+168>>2];z[i+116>>2]=-z[i+164>>2];z[i+112>>2]=-z[I>>2];z[i+104>>2]=-z[i+152>>2];z[i+100>>2]=-z[i+148>>2];z[i+96>>2]=-z[i+144>>2];V=i+128|0;ka=B(F,76);Ia=i+96|0;cx(i- -64|0,v[n+284>>2]+B(F,96)|0,V,ka+v[n+272>>2]|0,Ia);k=j+B(v[oa+24>>2],192)|0;T=z[k+164>>2];L=z[k+132>>2];P=z[k+100>>2];U=z[k+68>>2];W=z[k+36>>2];ca=z[k+4>>2];da=z[k+168>>2];ea=z[k+136>>2];N=z[k+104>>2];R=z[k+72>>2];Z=z[k+40>>2];aa=z[k+8>>2];X=z[k+176>>2];ba=z[k+144>>2];ha=z[k+112>>2];ia=z[k+80>>2];ja=z[k+48>>2];la=z[k+16>>2];ma=z[k+180>>2];ra=z[k+148>>2];sa=z[k+116>>2];ta=z[k+84>>2];ua=z[k+20>>2];va=z[k+52>>2];wa=z[k+184>>2];ya=z[k+152>>2];za=z[k+120>>2];Fa=z[k+88>>2];Aa=z[k+24>>2];Ma=z[k+56>>2];Na=z[k+160>>2];Oa=z[k+128>>2];Pa=z[k+96>>2];Qa=z[k+64>>2];Ra=z[k>>2];Sa=z[k+32>>2];E=z[i+88>>2];p=z[i+84>>2];G=z[i+80>>2];r=z[i+72>>2];A=z[i+64>>2];M=z[i+68>>2];v[i+60>>2]=0;v[i+44>>2]=0;z[i+32>>2]=-C(C(C(C(C(C(Ra*A)+C(Sa*M))+C(Qa*r))+C(Pa*G))+C(Oa*p))+C(Na*E));z[i+56>>2]=-C(C(C(C(C(C(Aa*A)+C(Ma*M))+C(Fa*r))+C(za*G))+C(ya*p))+C(wa*E));z[i+52>>2]=-C(C(C(C(C(C(ua*A)+C(va*M))+C(ta*r))+C(sa*G))+C(ra*p))+C(ma*E));z[i+48>>2]=-C(C(C(C(C(C(la*A)+C(ja*M))+C(ia*r))+C(ha*G))+C(ba*p))+C(X*E));z[i+40>>2]=-C(C(C(C(C(C(aa*A)+C(Z*M))+C(R*r))+C(N*G))+C(ea*p))+C(da*E));z[i+36>>2]=-C(C(C(C(C(C(ca*A)+C(W*M))+C(U*r))+C(P*G))+C(L*p))+C(T*E));_w(i,V,v[n+236>>2]+B(F,112)|0,v[n+248>>2]+B(F,36)|0,ka+v[n+272>>2]|0,Ia,i+32|0);k=na+(H<<5)|0;z[k>>2]=z[i>>2];z[k+4>>2]=z[i+4>>2];E=z[i+8>>2];v[k+12>>2]=0;z[k+8>>2]=E;z[k+16>>2]=z[i+16>>2];z[k+20>>2]=z[i+20>>2];E=z[i+24>>2];v[k+28>>2]=0;z[k+24>>2]=E;H=H+1|0;if((H|0)!=6){continue}break}F=F+1|0;if((Q|0)!=(F|0)){continue}break}}xa=i+176|0;F=0;k=0;na=v[q+12>>2];oa=v[q>>2];H=I9(ga,0,v[n+336>>2]<<5);S=v[n+336>>2];b:{if(!S){break b}E=z[n+352>>2];V=v[n+332>>2];while(1){Q=k<<5;j=v[(Q+V|0)+16>>2];p=z[j+124>>2];M=p==C(0)?C(0):C(C(1)/p);i=H+Q|0;ha=C(C(1)/z[j+112>>2]);ia=C(C(1)/z[j+120>>2]);ja=C(C(1)/z[j+116>>2]);I=Q+oa|0;ca=z[I+16>>2];T=z[I+8>>2];L=z[I+4>>2];P=z[I>>2];da=z[I+24>>2];ea=z[I+20>>2];p=z[j+104>>2];A=z[j+108>>2];if(p>C(0)|A>C(0)){F=Q+na|0;G=z[F+8>>2];r=z[F+4>>2];p=C(E*p);p=p>2]=C(C(M*C(ca*p))-C(p*C(E*z[F>>2])))+z[i>>2];z[i+4>>2]=C(C(M*C(ea*p))-C(p*C(E*r)))+z[i+4>>2];z[i+8>>2]=C(C(M*C(da*p))-C(p*C(E*G)))+z[i+8>>2];la=z[F+24>>2];ma=z[F+20>>2];p=z[j+8>>2];N=C(T+T);G=z[j>>2];R=C(P+P);Z=C(L+L);r=z[j+4>>2];aa=C(C(p*N)+C(C(G*R)+C(Z*r)));A=C(E*A);U=A>2];W=C(C(A*A)+C(-.5));X=C(ia*C(U*C(C(p*aa)+C(C(N*W)-C(A*C(C(G*Z)-C(R*r)))))));X=C(X+X);ba=C(ha*C(U*C(C(G*aa)+C(C(R*W)-C(A*C(C(r*N)-C(Z*p)))))));ba=C(ba+ba);N=C(ja*C(U*C(C(r*aa)+C(C(Z*W)-C(A*C(C(p*R)-C(N*G)))))));N=C(N+N);R=C(C(p*X)+C(C(G*ba)+C(r*N)));z[i+16>>2]=z[i+16>>2]+C(C(C(G*R)+C(C(ba*W)+C(A*C(C(r*X)-C(N*p)))))-C(U*C(E*z[F+16>>2])));z[i+20>>2]=z[i+20>>2]+C(C(C(r*R)+C(C(N*W)+C(A*C(C(p*ba)-C(X*G)))))-C(U*C(E*ma)));z[i+24>>2]=z[i+24>>2]+C(C(C(p*R)+C(C(X*W)+C(A*C(C(G*N)-C(ba*r)))))-C(U*C(E*la)));F=1}c:{d:{A=C(C(T*T)+C(C(P*P)+C(L*L)));N=z[j+96>>2];I=A>N;Z=C(C(da*da)+C(C(ca*ca)+C(ea*ea)));aa=z[j+100>>2];if(I|Z>aa){if(I){p=z[j+8>>2];U=C(T+T);G=z[j>>2];P=C(P+P);L=C(L+L);r=z[j+4>>2];W=C(C(p*U)+C(C(G*P)+C(L*r)));X=C(C(1)-C(C(K(N))/C(K(A))));A=z[j+12>>2];T=C(C(A*A)+C(-.5));N=C(X*C(ia*C(C(p*W)+C(C(U*T)-C(A*C(C(G*L)-C(P*r)))))));N=C(N+N);R=C(X*C(ha*C(C(G*W)+C(C(P*T)-C(A*C(C(r*U)-C(L*p)))))));R=C(R+R);L=C(X*C(ja*C(C(r*W)+C(C(L*T)-C(A*C(C(p*P)-C(U*G)))))));L=C(L+L);P=C(C(p*N)+C(C(G*R)+C(r*L)));z[i+16>>2]=z[i+16>>2]+C(C(G*P)+C(C(R*T)+C(A*C(C(r*N)-C(L*p)))));z[i+20>>2]=z[i+20>>2]+C(C(r*P)+C(C(L*T)+C(A*C(C(p*R)-C(N*G)))));z[i+24>>2]=z[i+24>>2]+C(C(p*P)+C(C(N*T)+C(A*C(C(G*L)-C(R*r)))));F=1}if(Z>aa){break d}}k=k+1|0;if((S|0)!=(k|0)){continue}if(F){break c}break b}p=C(C(1)-C(C(K(aa))/C(K(Z))));z[i>>2]=C(C(M*ca)*p)+z[i>>2];z[i+4>>2]=C(C(M*ea)*p)+z[i+4>>2];z[i+8>>2]=C(C(M*da)*p)+z[i+8>>2];F=1;k=k+1|0;if((S|0)!=(k|0)){continue}}break}F=xa-32|0;xa=F;k=v[l+448>>2]-1|0;if(k){j=v[l+444>>2];while(1){i=k<<5;cx(F,v[l+396>>2]+B(k,96)|0,(v[l+452>>2]+B(k,160)|0)+120|0,v[l+384>>2]+B(k,76)|0,i+H|0);i=H+(v[(i+j|0)+24>>2]<<5)|0;z[i>>2]=z[F>>2]+z[i>>2];z[i+4>>2]=z[F+4>>2]+z[i+4>>2];z[i+8>>2]=z[F+8>>2]+z[i+8>>2];z[i+16>>2]=z[F+16>>2]+z[i+16>>2];z[i+20>>2]=z[F+20>>2]+z[i+20>>2];z[i+24>>2]=z[F+24>>2]+z[i+24>>2];k=k-1|0;if(k){continue}break}}I=xa-32|0;xa=I;S=v[l+168>>2];na=v[l+456>>2];oa=v[l+444>>2];i=v[l+228>>2];e:{if(t[v[l+476>>2]]&1){v[O>>2]=0;v[O+4>>2]=0;v[O+24>>2]=0;v[O+16>>2]=0;v[O+20>>2]=0;v[O+8>>2]=0;v[O+12>>2]=0;break e}Z=z[l+560>>2];aa=z[l+572>>2];X=z[l+584>>2];ba=z[l+564>>2];ha=z[l+576>>2];ia=z[l+588>>2];ja=z[l+568>>2];la=z[l+580>>2];ma=z[l+592>>2];ra=z[l+620>>2];sa=z[l+608>>2];ta=z[l+596>>2];T=z[l+524>>2];L=z[l+528>>2];P=z[l+532>>2];ua=z[l+624>>2];va=z[l+612>>2];wa=z[l+600>>2];U=z[l+536>>2];W=z[l+540>>2];ca=z[l+544>>2];ya=z[l+628>>2];r=z[l+616>>2];za=z[l+604>>2];da=z[l+548>>2];ea=z[l+552>>2];A=z[H+20>>2];N=z[l+556>>2];E=z[H+24>>2];p=z[H+8>>2];Fa=z[H+4>>2];G=z[H>>2];M=z[H+16>>2];v[O+12>>2]=0;R=C(-M);Aa=r;r=C(-Fa);z[O+24>>2]=C(C(C(da*R)-C(ea*A))-C(N*E))+C(C(C(Aa*r)-C(G*za))-C(p*ya));z[O+20>>2]=C(C(C(U*R)-C(W*A))-C(ca*E))+C(C(C(va*r)-C(G*wa))-C(p*ua));z[O+16>>2]=C(C(C(T*R)-C(L*A))-C(P*E))+C(C(C(sa*r)-C(G*ta))-C(p*ra));A=C(-A);P=C(C(C(C(ca*r)-C(G*P))-C(p*N))+C(C(C(la*A)-C(M*ja))-C(E*ma)));z[O+8>>2]=P;L=C(C(C(C(W*r)-C(G*L))-C(p*ea))+C(C(C(ha*A)-C(M*ba))-C(E*ia)));z[O+4>>2]=L;E=C(C(C(C(U*r)-C(G*T))-C(p*da))+C(C(C(aa*A)-C(M*Z))-C(E*X)));z[O>>2]=E;z[i>>2]=E+z[i>>2];z[i+4>>2]=L+z[i+4>>2];z[i+8>>2]=P+z[i+8>>2];z[i+16>>2]=z[O+16>>2]+z[i+16>>2];z[i+20>>2]=z[O+20>>2]+z[i+20>>2];z[i+24>>2]=z[O+24>>2]+z[i+24>>2]}v[O+28>>2]=0;V=v[l+448>>2];if(V>>>0>=2){k=1;while(1){Q=k<<5;Yw(I,(v[l+452>>2]+B(k,160)|0)+120|0,v[l+348>>2]+B(k,112)|0,v[l+360>>2]+B(k,36)|0,v[l+384>>2]+B(k,76)|0,Q+H|0,S+(v[(na+B(k,80)|0)+72>>2]<<2)|0,(v[(Q+oa|0)+24>>2]<<5)+O|0);j=O+Q|0;G=z[I>>2];z[j>>2]=G;r=z[I+4>>2];z[j+4>>2]=r;E=z[I+8>>2];v[j+12>>2]=0;z[j+8>>2]=E;A=z[I+16>>2];z[j+16>>2]=A;M=z[I+20>>2];z[j+20>>2]=M;p=z[I+24>>2];v[j+28>>2]=0;z[j+24>>2]=p;j=i+Q|0;z[j>>2]=G+z[j>>2];z[j+4>>2]=r+z[j+4>>2];z[j+8>>2]=E+z[j+8>>2];z[j+16>>2]=A+z[j+16>>2];z[j+20>>2]=M+z[j+20>>2];z[j+24>>2]=p+z[j+24>>2];k=k+1|0;if((V|0)!=(k|0)){continue}break}}xa=I+32|0;xa=F+32|0;S=v[n+336>>2];if(S>>>0<2){break b}i=v[n+44>>2];F=v[n+56>>2];na=v[n+344>>2];H=1;while(1){k=na+B(H,80)|0;I=w[k+76|0];f:{if(!I){break f}Q=v[k+72>>2];j=0;if((I|0)!=1){oa=I&254;k=0;while(1){V=j+Q<<2;ka=V+i|0;V=F+V|0;z[ka>>2]=z[V>>2]+z[ka>>2];v[V>>2]=0;V=Q+(j|1)<<2;ka=V+i|0;V=F+V|0;z[ka>>2]=z[V>>2]+z[ka>>2];v[V>>2]=0;j=j+2|0;k=k+2|0;if((oa|0)!=(k|0)){continue}break}}if(!(I&1)){break f}k=j+Q<<2;j=k+i|0;k=k+F|0;z[j>>2]=z[k>>2]+z[j>>2];v[k>>2]=0}H=H+1|0;if((S|0)!=(H|0)){continue}break}}sx(n,q);Ex(l+112|0,q);Fx(l,n,q);if(y[l+448>>2]>=2){v[q+12>>2]=v[l+276>>2];Jx(n,q);k=v[q+12>>2];H=v[n+336>>2]-1|0;if(H>>>0>=2){while(1){F=H<<5;j=F+k|0;T=z[j+24>>2];L=z[j+20>>2];i=v[n+340>>2]+B(H,160)|0;G=z[i+120>>2];P=z[j+16>>2];r=z[i+124>>2];A=z[i+128>>2];E=z[j+8>>2];p=z[j+4>>2];i=k+(v[(F+v[n+332>>2]|0)+24>>2]<<5)|0;M=z[j>>2];z[i>>2]=M+z[i>>2];z[i+4>>2]=p+z[i+4>>2];z[i+8>>2]=E+z[i+8>>2];z[i+16>>2]=C(P+C(C(r*E)-C(p*A)))+z[i+16>>2];z[i+20>>2]=C(L+C(C(A*M)-C(E*G)))+z[i+20>>2];z[i+24>>2]=C(T+C(C(G*p)-C(M*r)))+z[i+24>>2];H=H-1|0;if(H>>>0>1){continue}break}}v[k>>2]=0;v[k+4>>2]=0;v[k+24>>2]=0;v[k+28>>2]=0;v[k+16>>2]=0;v[k+20>>2]=0;v[k+8>>2]=0;v[k+12>>2]=0}t[l+488|0]=1;I9(v[l+264>>2],0,Ha);t[l+12|0]=0;v[l+4>>2]=0;v[l+8>>2]=0;n=v[l+448>>2];if(n){H=v[l+508>>2];F=v[l+324>>2];I=v[l+496>>2];Q=v[l+444>>2];j=0;while(1){S=B(j,28);k=S+I|0;i=v[(Q+(j<<5)|0)+16>>2];z[k>>2]=z[i>>2];z[k+4>>2]=z[i+4>>2];z[k+8>>2]=z[i+8>>2];z[k+12>>2]=z[i+12>>2];z[k+16>>2]=z[i+16>>2];z[k+20>>2]=z[i+20>>2];z[k+24>>2]=z[i+24>>2];k=F+S|0;z[k>>2]=z[i>>2];z[k+4>>2]=z[i+4>>2];z[k+8>>2]=z[i+8>>2];z[k+12>>2]=z[i+12>>2];z[k+16>>2]=z[i+16>>2];z[k+20>>2]=z[i+20>>2];z[k+24>>2]=z[i+24>>2];i=H+(j<<4)|0;v[i+8>>2]=0;v[i+12>>2]=1065353216;v[i>>2]=0;v[i+4>>2]=0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}xa=q+48|0;H=v[l+444>>2];F=v[l+448>>2];I=t[v[l+476>>2]]&1;v[J+236>>2]=0;n=l+112|0;v[n+180>>2]=0;E=z[n+352>>2];q=v[n+356>>2];if(q>>>0>(v[n+184>>2]&2147483647)>>>0){k=0;g:{if(!q){break g}j=B(q,176);if(!j){break g}i=v[37696];k=Ba[v[v[i>>2]+20>>2]](i)|0?28879:63804;k=Ba[v[v[i+12>>2]+8>>2]](i+12|0,j,k,16608,553)|0}j=v[n+176>>2];i=v[n+180>>2];if((i|0)>0){Q=B(i,176)+k|0;i=k;while(1){z[i>>2]=z[j>>2];z[i+4>>2]=z[j+4>>2];z[i+8>>2]=z[j+8>>2];z[i+12>>2]=z[j+12>>2];z[i+16>>2]=z[j+16>>2];z[i+20>>2]=z[j+20>>2];z[i+24>>2]=z[j+24>>2];z[i+28>>2]=z[j+28>>2];z[i+32>>2]=z[j+32>>2];z[i+36>>2]=z[j+36>>2];z[i+40>>2]=z[j+40>>2];z[i+44>>2]=z[j+44>>2];z[i+48>>2]=z[j+48>>2];z[i+52>>2]=z[j+52>>2];z[i+56>>2]=z[j+56>>2];z[i+60>>2]=z[j+60>>2];z[i- -64>>2]=z[j- -64>>2];z[i+68>>2]=z[j+68>>2];z[i+72>>2]=z[j+72>>2];z[i+76>>2]=z[j+76>>2];z[i+80>>2]=z[j+80>>2];z[i+84>>2]=z[j+84>>2];z[i+88>>2]=z[j+88>>2];z[i+92>>2]=z[j+92>>2];H9(i+96|0,j+96|0,80);j=j+176|0;i=i+176|0;if(Q>>>0>i>>>0){continue}break}j=v[n+176>>2]}if(!(!j|v[n+184>>2]<0)){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,j)}v[n+184>>2]=q;v[n+176>>2]=k}v[n+192>>2]=0;q=v[n+360>>2];if(q>>>0>(v[n+196>>2]&2147483647)>>>0){k=0;h:{if(!q){break h}j=B(q,80);if(!j){break h}i=v[37696];k=Ba[v[v[i>>2]+20>>2]](i)|0?30289:63804;k=Ba[v[v[i+12>>2]+8>>2]](i+12|0,j,k,16608,553)|0}j=v[n+188>>2];i=v[n+192>>2];if((i|0)>0){Q=B(i,80)+k|0;i=k;while(1){z[i>>2]=z[j>>2];z[i+4>>2]=z[j+4>>2];z[i+8>>2]=z[j+8>>2];z[i+12>>2]=z[j+12>>2];z[i+16>>2]=z[j+16>>2];z[i+20>>2]=z[j+20>>2];z[i+24>>2]=z[j+24>>2];z[i+28>>2]=z[j+28>>2];z[i+32>>2]=z[j+32>>2];z[i+36>>2]=z[j+36>>2];z[i+40>>2]=z[j+40>>2];z[i+44>>2]=z[j+44>>2];z[i+48>>2]=z[j+48>>2];z[i+52>>2]=z[j+52>>2];z[i+56>>2]=z[j+56>>2];S=v[j+64>>2];v[i+60>>2]=v[j+60>>2];v[i+64>>2]=S;S=v[j+72>>2];v[i+68>>2]=v[j+68>>2];v[i+72>>2]=S;v[i+76>>2]=v[j+76>>2];j=j+80|0;i=i+80|0;if(Q>>>0>i>>>0){continue}break}j=v[n+188>>2]}if(!(!j|v[n+196>>2]<0)){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,j)}v[n+196>>2]=q;v[n+188>>2]=k}i=v[H>>2];k=v[H+4>>2];if(i|k){p=C(C(1)/E);G=w[v[n+364>>2]]&2?E:C(1);while(1){q=i;xw(l,H,F,I,n,ga,E,E,p,C(1),C(9999999747378752e-20),0,(Ta=Qaa(i),Ua=Qaa(k)+32|0,Va=i,Va?Ta:Ua),G);i=i&i-1;k=k&k-!q;if(i|k){continue}break}}v[J+228>>2]=0;v[J+232>>2]=0;v[J+220>>2]=0;v[J+224>>2]=0;v[J+212>>2]=0;v[J+216>>2]=0;v[J+192>>2]=v[a+228>>2];v[J+196>>2]=v[a+240>>2];v[J+200>>2]=v[a+252>>2];v[J+204>>2]=v[a+264>>2];v[J+220>>2]=v[a+144>>2];v[J+216>>2]=v[a+156>>2];v[J+228>>2]=v[a+180>>2];v[J+224>>2]=v[a+192>>2];v[J+208>>2]=v[a+480>>2];i=a;k=b;q=J+32|0;n=J+448|0;a=xa-1088|0;xa=a;if(c){p=z[i+464>>2];G=C(C(1)/p);while(1){H=k+B(_,12)|0;b=v[H+8>>2];l=(_<<5)+$|0;v[q+16>>2]=l;z[q+120>>2]=z[b>>2];z[q+124>>2]=z[b+4>>2];v[q+132>>2]=v[v[i+20>>2]+168>>2]+(v[b+40>>2]<<5);j=x[b+10>>1];t[q+139|0]=j>>>9&1;F=j&255;t[q+137|0]=F>>>7;t[q+136|0]=j>>>8&1;t[q+138|0]=F>>>5&1;z[q+128>>2]=z[b+44>>2];I9(a+128|0,0,960);v[a+1068>>2]=2139095039;v[a+1052>>2]=-8388609;v[a+988>>2]=2139095039;v[a+972>>2]=-8388609;v[a+908>>2]=2139095039;v[a+892>>2]=-8388609;v[a+828>>2]=2139095039;v[a+812>>2]=-8388609;v[a+748>>2]=2139095039;v[a+732>>2]=-8388609;v[a+668>>2]=2139095039;v[a+652>>2]=-8388609;v[a+588>>2]=2139095039;v[a+572>>2]=-8388609;v[a+508>>2]=2139095039;v[a+492>>2]=-8388609;v[a+428>>2]=2139095039;v[a+412>>2]=-8388609;v[a+348>>2]=2139095039;v[a+332>>2]=-8388609;v[a+268>>2]=2139095039;v[a+252>>2]=-8388609;v[a+188>>2]=2139095039;v[a+172>>2]=-8388609;v[q+4>>2]=1065353216;v[q+8>>2]=1065353216;v[q+12>>2]=1065353216;v[q>>2]=1065353216;i:{if(v[b+24>>2]){j=v[b+32>>2];z[a+96>>2]=z[j>>2];z[a+100>>2]=z[j+4>>2];z[a+104>>2]=z[j+8>>2];z[a+108>>2]=z[j+12>>2];z[a+112>>2]=z[j+16>>2];z[a+116>>2]=z[j+20>>2];r=z[j+24>>2];break i}v[a+112>>2]=0;v[a+116>>2]=0;v[a+104>>2]=0;v[a+108>>2]=1065353216;v[a+96>>2]=0;v[a+100>>2]=0;r=C(0)}z[a+120>>2]=r;j:{if(v[b+28>>2]){j=v[b+36>>2];z[a+64>>2]=z[j>>2];z[a+68>>2]=z[j+4>>2];z[a+72>>2]=z[j+8>>2];z[a+76>>2]=z[j+12>>2];z[a+80>>2]=z[j+16>>2];z[a+84>>2]=z[j+20>>2];r=z[j+24>>2];break j}v[a+80>>2]=0;v[a+84>>2]=0;v[a+72>>2]=0;v[a+76>>2]=1065353216;v[a+64>>2]=0;v[a+68>>2]=0;r=C(0)}z[a+88>>2]=r;v[a+56>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;j=a+128|0;b=Ba[v[b+12>>2]](j,a+48|0,12,a,v[b+20>>2],a+96|0,a- -64|0,(x[b+10>>1]&512)>>>9|0,a+32|0,a+16|0)|0;z[q+140>>2]=z[a+48>>2];z[q+144>>2]=z[a+52>>2];z[q+148>>2]=z[a+56>>2];z[q+36>>2]=z[a+96>>2];z[q+40>>2]=z[a+100>>2];z[q+44>>2]=z[a+104>>2];z[q+48>>2]=z[a+108>>2];z[q+52>>2]=z[a+112>>2];z[q+56>>2]=z[a+116>>2];z[q+60>>2]=z[a+120>>2];z[q+64>>2]=z[a+64>>2];z[q+68>>2]=z[a+68>>2];z[q+72>>2]=z[a+72>>2];z[q+76>>2]=z[a+76>>2];z[q+80>>2]=z[a+80>>2];z[q+84>>2]=z[a+84>>2];E=z[a+88>>2];v[q+116>>2]=b;z[q+88>>2]=E;v[q+112>>2]=j;j=v[H>>2];b=v[H+4>>2];k:{l:{if(!((j|0)==-2147483648|(b|0)==-2147483648)){u[l+10>>1]=b;u[l+8>>1]=j;v[l>>2]=i;v[l+4>>2]=i;j=8;b=8;break l}if((j|0)==-2147483648){u[l+10>>1]=b;u[l+8>>1]=65535;v[l>>2]=n;v[l+4>>2]=i;j=2;b=8;break l}if((b|0)!=-2147483648){break k}u[l+10>>1]=65535;u[l+8>>1]=j;v[l>>2]=i;v[l+4>>2]=n;j=8;b=2}v[q+96>>2]=b;v[q+92>>2]=j}v[q+20>>2]=v[l>>2];b=v[l+4>>2];v[q+32>>2]=pa;v[q+28>>2]=pa;v[q+24>>2]=b;qy(q,La,p,G,ga);_=_+1|0;if((_|0)!=(c|0)){continue}break}}xa=a+1088|0;m:{if(!c){break m}if(c-1>>>0>=7){q=c&-8;a=0;while(1){b=o<<2;v[b+Y>>2]=2139095039;v[(b|4)+Y>>2]=2139095039;v[(b|8)+Y>>2]=2139095039;v[(b|12)+Y>>2]=2139095039;v[(b|16)+Y>>2]=2139095039;v[(b|20)+Y>>2]=2139095039;v[(b|24)+Y>>2]=2139095039;v[(b|28)+Y>>2]=2139095039;o=o+8|0;a=a+8|0;if((q|0)!=(a|0)){continue}break}}a=c&7;if(!a){break m}while(1){v[(o<<2)+Y>>2]=2139095039;o=o+1|0;m=m+1|0;if((a|0)!=(m|0)){continue}break}}if(h){q=i+112|0;E=C(C(1)/Da);F=fa&-4;n=fa&3;I=fa&-2;Q=fa&1;H=fa-1|0;Ca=fa<<2;n:{o:{while(1){m=0;p:{q:{if(!c){break q}while(1){b=0;a=v[((m<<5)+$|0)+24>>2];o=w[a+1|0];r:{if(!o){break r}a=a+48|0;if(o-1>>>0>=7){l=o&248;while(1){v[a+88>>2]=0;v[a+1208>>2]=0;v[a+1048>>2]=0;v[a+888>>2]=0;v[a+728>>2]=0;v[a+568>>2]=0;v[a+408>>2]=0;v[a+248>>2]=0;a=a+1280|0;b=b+8|0;if((l|0)!=(b|0)){continue}break}}o=o&7;if(!o){break r}b=0;while(1){v[a+88>>2]=0;a=a+160|0;b=b+1|0;if((o|0)!=(b|0)){continue}break}}m=m+1|0;if((m|0)!=(c|0)){continue}break}o=0;m=0;if(!c){break q}while(1){sA((m<<5)+$|0,J+296|0);m=m+1|0;if((m|0)!=(c|0)){continue}break}while(1){sA((o<<5)+$|0,J+296|0);m=0;o=o+1|0;if((o|0)!=(c|0)){continue}break}o=0;while(1){sA((o<<5)+$|0,J+296|0);o=o+1|0;if((o|0)!=(c|0)){continue}break}while(1){sA((m<<5)+$|0,J+296|0);m=m+1|0;if((m|0)!=(c|0)){continue}break}m=0;if(c){break p}}ww(i,O);break o}while(1){b=0;a=v[((m<<5)+$|0)+24>>2];s:{if(!a){break s}l=w[a+1|0];if(!l){break s}o=w[a|0]==4?160:96;a=a+48|0;if(l-1>>>0>=3){j=l&252;while(1){z[a+12>>2]=z[a+28>>2];a=a+o|0;z[a+12>>2]=z[a+28>>2];a=a+o|0;z[a+12>>2]=z[a+28>>2];a=a+o|0;z[a+12>>2]=z[a+28>>2];a=a+o|0;b=b+4|0;if((j|0)!=(b|0)){continue}break}}l=l&3;if(!l){break s}b=0;while(1){z[a+12>>2]=z[a+28>>2];a=a+o|0;b=b+1|0;if((l|0)!=(b|0)){continue}break}}m=m+1|0;if((m|0)!=(c|0)){continue}break}ww(i,O);m=0;a=0;if(!c){break n}while(1){a=(m<<5)+$|0;sA(a,J+296|0);hA(a);m=m+1|0;if((m|0)!=(c|0)){continue}break}if(!c){break o}b=v[v[i+20>>2]+168>>2]+(v[v[k+8>>2]+40>>2]<<5)|0;o=0;a=1;while(1){l=o<<2;p=C(E*z[b+8>>2]);r=C(p*p);p=C(E*z[b>>2]);Aa=C(p*p);p=C(E*z[b+4>>2]);p=C(Da*C(K(C(r+C(Aa+C(p*p))))));z[l+Ga>>2]=p;l=l+Y|0;G=z[l>>2];z[l>>2]=p;a=C(D(C(G-p)))>C(9999999747378752e-21)?0:a;o=o+1|0;if((o|0)!=(c|0)){continue}break}pa=a&1;if(pa){break o}o=I9(v[d+24>>2],0,Ca);t:{if(c){a=0;if(!fa){break t}while(1){b=(a<<2)+Ga|0;l=(B(a,fa)<<2)+Ka|0;m=0;_=0;if(H){while(1){j=m<<2;S=j+o|0;z[S>>2]=C(z[j+l>>2]*z[b>>2])+z[S>>2];j=j|4;S=j+o|0;z[S>>2]=C(z[j+l>>2]*z[b>>2])+z[S>>2];m=m+2|0;_=_+2|0;if((I|0)!=(_|0)){continue}break}}if(Q){m=m<<2;j=m+o|0;z[j>>2]=C(z[l+m>>2]*z[b>>2])+z[j>>2]}a=a+1|0;if((c|0)!=(a|0)){continue}break}}if(!fa){break t}b=0;m=0;j=0;if(H>>>0>=3){while(1){a=m<<2;l=a+o|0;z[l>>2]=z[a+f>>2]-z[l>>2];l=a|4;_=l+o|0;z[_>>2]=z[f+l>>2]-z[_>>2];l=a|8;_=l+o|0;z[_>>2]=z[f+l>>2]-z[_>>2];a=a|12;l=a+o|0;z[l>>2]=z[a+f>>2]-z[l>>2];m=m+4|0;j=j+4|0;if((F|0)!=(j|0)){continue}break}}if(!n){break t}while(1){a=m<<2;l=a+o|0;z[l>>2]=z[a+f>>2]-z[l>>2];m=m+1|0;b=b+1|0;if((n|0)!=(b|0)){continue}break}}t[J+24|0]=119;Ba[v[v[i>>2]+36>>2]](i,e,J+24|0)|0;t[J+16|0]=8;Ba[v[v[i>>2]+36>>2]](i,d,J+16|0)|0;I9(v[i+312>>2],0,v[i+448>>2]<<5);I9(v[i+168>>2],0,v[i+468>>2]<<2);t[i+489|0]=0;a=J+192|0;vx(q,a);rx(q,g,a);Ex(q,a);Fx(i,q,a);I9(v[i+264>>2],0,Ea);Ja=Ja+1|0;if((Ja|0)!=(h|0)){continue}break}a=!pa;break n}a=0}Ca=!a}a=v[s+16>>2];u:{if(!(a>>>0<=qa>>>0&a+v[s+20>>2]>>>0>qa>>>0)){if(!qa){break u}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,qa);break u}f=v[s+4>>2];a=0;d=v[s+8>>2];b=d;while(1){c=a;a=a+1|0;o=b;b=b-1|0;m=f+(b<<2)|0;if(y[m>>2]>>0){continue}break}v:{if(d>>>0<=o>>>0){break v}b=c&3;if(b){a=0;while(1){v[m>>2]=v[v[s+4>>2]+(o<<2)>>2];o=o+1|0;m=m+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break v}while(1){a=o<<2;v[m>>2]=v[a+v[s+4>>2]>>2];v[m+4>>2]=v[(a+v[s+4>>2]|0)+4>>2];v[m+8>>2]=v[(a+v[s+4>>2]|0)+8>>2];v[m+12>>2]=v[(a+v[s+4>>2]|0)+12>>2];m=m+16|0;o=o+4|0;if((d|0)!=(o|0)){continue}break}}v[s+8>>2]=d-1}a=v[s+16>>2];w:{if(!(a>>>0<=Y>>>0&a+v[s+20>>2]>>>0>Y>>>0)){if(!Y){break w}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,Y);break w}f=v[s+4>>2];a=0;d=v[s+8>>2];b=d;while(1){c=a;a=a+1|0;o=b;b=b-1|0;m=f+(b<<2)|0;if(y[m>>2]>>0){continue}break}x:{if(d>>>0<=o>>>0){break x}b=c&3;if(b){a=0;while(1){v[m>>2]=v[v[s+4>>2]+(o<<2)>>2];o=o+1|0;m=m+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break x}while(1){a=o<<2;v[m>>2]=v[a+v[s+4>>2]>>2];v[m+4>>2]=v[(a+v[s+4>>2]|0)+4>>2];v[m+8>>2]=v[(a+v[s+4>>2]|0)+8>>2];v[m+12>>2]=v[(a+v[s+4>>2]|0)+12>>2];m=m+16|0;o=o+4|0;if((d|0)!=(o|0)){continue}break}}v[s+8>>2]=d-1}a=v[s+16>>2];y:{if(!(a>>>0<=ga>>>0&a+v[s+20>>2]>>>0>ga>>>0)){if(!ga){break y}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,ga);break y}f=v[s+4>>2];a=0;d=v[s+8>>2];b=d;while(1){c=a;a=a+1|0;o=b;b=b-1|0;m=f+(b<<2)|0;if(y[m>>2]>>0){continue}break}z:{if(d>>>0<=o>>>0){break z}b=c&3;if(b){a=0;while(1){v[m>>2]=v[v[s+4>>2]+(o<<2)>>2];o=o+1|0;m=m+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break z}while(1){a=o<<2;v[m>>2]=v[a+v[s+4>>2]>>2];v[m+4>>2]=v[(a+v[s+4>>2]|0)+4>>2];v[m+8>>2]=v[(a+v[s+4>>2]|0)+8>>2];v[m+12>>2]=v[(a+v[s+4>>2]|0)+12>>2];m=m+16|0;o=o+4|0;if((d|0)!=(o|0)){continue}break}}v[s+8>>2]=d-1}a=v[s+16>>2];A:{if(!(a>>>0<=O>>>0&a+v[s+20>>2]>>>0>O>>>0)){if(!O){break A}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,O);break A}f=v[s+4>>2];a=0;d=v[s+8>>2];b=d;while(1){c=a;a=a+1|0;o=b;b=b-1|0;m=f+(b<<2)|0;if(y[m>>2]>>0){continue}break}B:{if(d>>>0<=o>>>0){break B}b=c&3;if(b){a=0;while(1){v[m>>2]=v[v[s+4>>2]+(o<<2)>>2];o=o+1|0;m=m+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break B}while(1){a=o<<2;v[m>>2]=v[a+v[s+4>>2]>>2];v[m+4>>2]=v[(a+v[s+4>>2]|0)+4>>2];v[m+8>>2]=v[(a+v[s+4>>2]|0)+8>>2];v[m+12>>2]=v[(a+v[s+4>>2]|0)+12>>2];m=m+16|0;o=o+4|0;if((d|0)!=(o|0)){continue}break}}v[s+8>>2]=d-1}a=v[s+16>>2];C:{if(!(a>>>0<=$>>>0&a+v[s+20>>2]>>>0>$>>>0)){if(!$){break C}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,$);break C}f=v[s+4>>2];a=0;d=v[s+8>>2];b=d;while(1){c=a;a=a+1|0;o=b;b=b-1|0;m=f+(b<<2)|0;if(y[m>>2]<$>>>0){continue}break}D:{if(d>>>0<=o>>>0){break D}b=c&3;if(b){a=0;while(1){v[m>>2]=v[v[s+4>>2]+(o<<2)>>2];o=o+1|0;m=m+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break D}while(1){a=o<<2;v[m>>2]=v[a+v[s+4>>2]>>2];v[m+4>>2]=v[(a+v[s+4>>2]|0)+4>>2];v[m+8>>2]=v[(a+v[s+4>>2]|0)+8>>2];v[m+12>>2]=v[(a+v[s+4>>2]|0)+12>>2];m=m+16|0;o=o+4|0;if((d|0)!=(o|0)){continue}break}}v[s+8>>2]=d-1}b=0;a=J+480|0;c=1-v[a+76>>2]|0;v[a+76>>2]=c;d=v[a+16>>2];if(d){while(1){c=v[v[a+12>>2]+(b<<2)>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);d=v[a+16>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}c=v[a+76>>2]}b=0;v[a+16>>2]=0;v[a+24>>2]=0;v[a+8>>2]=0;d=a+B(c,24)|0;c=v[d+40>>2];if(c){while(1){f=v[v[d+36>>2]+(b<<2)>>2];if(f){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f);c=v[d+40>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[d+40>>2]=0;v[d+48>>2]=0;v[d+32>>2]=0;t[J+8|0]=119;Ba[v[v[i>>2]+36>>2]](i,e,J+8|0)|0;_x(a);xa=J+560|0;return Ca|0}function iw(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=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=0,O=0,P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=0,da=0,ea=C(0),fa=0,ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=0,oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=0,La=0,Ma=C(0),Na=C(0);N=xa-320|0;xa=N;ca=B(b,240)+f|0;n=B(b,272)+f|0;Ka=B(b,144)+f|0;o=xa-32|0;xa=o;da=b<<5;j=((da+B(b,80)|0)+((b<<2)+60&524224)|0)+128|0;h=I9(a,0,j);l=j+da|0;u[h+18>>1]=l;u[h+6>>1]=j;u[h+4>>1]=b;u[h+16>>1]=(l+B(b,160)|0)+144;a:{if(b>>>0<2){break a}l=b-1|0;k=l&3;i=1;if(b-2>>>0>=3){j=l&-4;D=h- -64|0;while(1){t[i+D|0]=v[((i<<5)+c|0)+24>>2];l=i+1|0;t[l+D|0]=v[((l<<5)+c|0)+24>>2];l=i+2|0;t[l+D|0]=v[((l<<5)+c|0)+24>>2];l=i+3|0;t[l+D|0]=v[((l<<5)+c|0)+24>>2];i=i+4|0;K=K+4|0;if((j|0)!=(K|0)){continue}break}}if(!k){break a}K=0;while(1){t[(h+i|0)- -64|0]=v[((i<<5)+c|0)+24>>2];i=i+1|0;K=K+1|0;if((k|0)!=(K|0)){continue}break}}v[o+16>>2]=0;v[o+20>>2]=0;v[o+24>>2]=0;v[o+28>>2]=0;v[o>>2]=0;v[o+4>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0;v[o+8>>2]=0;v[o+12>>2]=0;v[h+40>>2]=0;v[h+44>>2]=0;l=v[o+20>>2];v[h+48>>2]=v[o+16>>2];v[h+52>>2]=l;l=v[o+28>>2];v[h+56>>2]=v[o+24>>2];v[h+60>>2]=l;m=I9(f,0,B(b,144));b:{if(!b){break b}i=x[h+4>>1];O=v[c+16>>2];z[ca>>2]=z[O>>2];z[ca+4>>2]=z[O+4>>2];z[ca+8>>2]=z[O+8>>2];z[ca+12>>2]=z[O+12>>2];z[ca+16>>2]=z[O+16>>2];z[ca+20>>2]=z[O+20>>2];z[ca+24>>2]=z[O+24>>2];v[n+8>>2]=0;v[n+12>>2]=1065353216;v[n>>2]=0;v[n+4>>2]=0;s=z[O+72>>2];p=z[O+88>>2];D=v[O+64>>2];k=v[O+68>>2];j=v[O+84>>2];l=v[O+80>>2];v[h+156>>2]=0;z[h+152>>2]=p;v[h+140>>2]=0;z[h+136>>2]=s;v[h+144>>2]=l;v[h+148>>2]=j;v[h+128>>2]=D;v[h+132>>2]=k;La=h+128|0;ba=da+(La+da|0)|0;l=ba;v[l+24>>2]=0;v[l+28>>2]=0;v[l+16>>2]=0;v[l+20>>2]=0;v[l+8>>2]=0;v[l+12>>2]=0;v[l>>2]=0;v[l+4>>2]=0;Tv(m,O,O);l=i<<5;da=(((l+La|0)+l|0)+l|0)+(i<<4)|0;z[da>>2]=z[O+76>>2];K=1;if((b|0)==1){break b}while(1){j=ca+B(K,28)|0;S=K<<5;O=S+c|0;l=v[O+16>>2];z[j>>2]=z[l>>2];z[j+4>>2]=z[l+4>>2];z[j+8>>2]=z[l+8>>2];z[j+12>>2]=z[l+12>>2];z[j+16>>2]=z[l+16>>2];z[j+20>>2]=z[l+20>>2];z[j+24>>2]=z[l+24>>2];j=n+(K<<4)|0;v[j+8>>2]=0;v[j+12>>2]=1065353216;v[j>>2]=0;v[j+4>>2]=0;i=v[l+64>>2];D=v[l+68>>2];k=v[l+84>>2];j=v[l+80>>2];s=z[l+72>>2];p=z[l+88>>2];fa=S+La|0;v[fa+28>>2]=0;z[fa+24>>2]=p;v[fa+12>>2]=0;z[fa+8>>2]=s;v[fa+16>>2]=j;v[fa+20>>2]=k;v[fa>>2]=i;v[fa+4>>2]=D;j=S+ba|0;v[j+24>>2]=0;v[j+28>>2]=0;v[j+16>>2]=0;v[j+20>>2]=0;v[j+8>>2]=0;v[j+12>>2]=0;v[j>>2]=0;v[j+4>>2]=0;Tv(m+B(K,144)|0,l,l);z[da+(K<<2)>>2]=z[l+76>>2];j=ca+B(v[O+24>>2],28)|0;L=z[j+20>>2];s=z[j+24>>2];k=v[O+20>>2];E=z[k+20>>2];q=z[k+24>>2];p=z[j+16>>2];F=z[k+16>>2];D=Ka+B(K,84)|0;I=z[j+12>>2];y=z[k+12>>2];H=z[k>>2];J=z[j>>2];G=z[j+4>>2];M=z[k+4>>2];r=z[j+8>>2];A=z[k+8>>2];T=C(C(C(C(I*y)-C(H*J))-C(G*M))-C(r*A));z[D+12>>2]=T;V=C(C(C(J*M)+C(C(I*A)+C(r*y)))-C(H*G));z[D+8>>2]=V;W=C(C(C(r*H)+C(C(I*M)+C(G*y)))-C(A*J));z[D+4>>2]=W;X=C(C(C(G*A)+C(C(I*H)+C(J*y)))-C(M*r));z[D>>2]=X;ea=s;y=C(q+q);A=C(F+F);q=C(E+E);F=C(C(r*y)+C(C(J*A)+C(G*q)));s=C(C(I*I)+C(-.5));H=C(ea+C(C(r*F)+C(C(y*s)+C(I*C(C(J*q)-C(A*G))))));z[D+24>>2]=H;M=C(L+C(C(G*F)+C(C(q*s)+C(I*C(C(r*A)-C(y*J))))));z[D+20>>2]=M;A=C(p+C(C(J*F)+C(C(A*s)+C(I*C(C(G*y)-C(q*r))))));z[D+16>>2]=A;L=z[l+20>>2];s=z[l+24>>2];E=z[k+48>>2];q=z[k+44>>2];F=z[k+52>>2];p=z[l+16>>2];Y=z[l+12>>2];J=z[k+40>>2];G=z[k+28>>2];Q=z[l>>2];R=z[l+4>>2];r=z[k+32>>2];U=z[l+8>>2];y=z[k+36>>2];Z=C(C(C(C(Y*J)-C(G*Q))-C(R*r))-C(U*y));z[D+40>>2]=Z;P=C(C(C(Q*r)+C(C(Y*y)+C(U*J)))-C(G*R));z[D+36>>2]=P;I=C(C(C(U*G)+C(C(Y*r)+C(R*J)))-C(y*Q));z[D+32>>2]=I;J=C(C(C(R*y)+C(C(Y*G)+C(Q*J)))-C(r*U));z[D+28>>2]=J;ea=s;G=C(F+F);r=C(q+q);y=C(E+E);F=C(C(U*G)+C(C(Q*r)+C(R*y)));s=C(C(Y*Y)+C(-.5));E=C(ea+C(C(U*F)+C(C(G*s)+C(Y*C(C(Q*y)-C(r*R))))));z[D+52>>2]=E;q=C(L+C(C(R*F)+C(C(y*s)+C(Y*C(C(U*r)-C(G*Q))))));z[D+48>>2]=q;p=C(p+C(C(Q*F)+C(C(r*s)+C(Y*C(C(R*G)-C(y*U))))));z[D+44>>2]=p;y=C(C(V*P)+C(C(W*I)+C(C(T*Z)+C(X*J))));z[D+68>>2]=y;F=C(C(J*W)+C(C(C(T*P)-C(Z*V))-C(X*I)));z[D- -64>>2]=F;L=C(C(P*X)+C(C(C(T*I)-C(Z*W))-C(V*J)));z[D+60>>2]=L;s=C(C(I*V)+C(C(C(T*J)-C(Z*X))-C(W*P)));z[D+56>>2]=s;p=C(p-A);r=C(p+p);p=C(q-M);A=C(p+p);p=C(E-H);E=C(p+p);q=C(C(C(C(-X)*r)-C(A*W))-C(V*E));p=C(C(T*T)+C(-.5));z[D+80>>2]=C(C(E*p)+C(T*C(C(W*r)-C(X*A))))-C(V*q);z[D+76>>2]=C(C(A*p)+C(T*C(C(X*E)-C(V*r))))-C(W*q);z[D+72>>2]=C(C(r*p)+C(T*C(C(V*A)-C(W*E))))-C(X*q);if(y>2]=-y;z[D+64>>2]=-F;z[D+60>>2]=-L;z[D+56>>2]=-s;z[D+40>>2]=-Z;z[D+36>>2]=-P;z[D+32>>2]=-I;z[D+28>>2]=-J}K=K+1|0;if((K|0)!=(b|0)){continue}break}}K=1;if(b>>>0>1){n=h+x[h+6>>1]|0;while(1){l=ca+B(w[(h+K|0)- -64|0],28)|0;E=z[l+20>>2];q=z[l+24>>2];F=z[l+16>>2];j=ca+B(K,28)|0;H=z[j+16>>2];l=Ka+B(K,84)|0;L=z[l+44>>2];s=z[l+48>>2];M=z[j+20>>2];p=z[l+52>>2];A=z[j+24>>2];l=n+(K<<5)|0;v[l+28>>2]=0;z[l+24>>2]=p-A;z[l+20>>2]=s-M;z[l+16>>2]=L-H;v[l+12>>2]=0;z[l>>2]=H-F;z[l+8>>2]=A-q;z[l+4>>2]=M-E;K=K+1|0;if((K|0)!=(b|0)){continue}break}}xa=o+32|0;I9(x[a+18>>1]+a|0,0,B(b,160)+144|0);k=x[a+6>>1];j=x[a+16>>1];da=x[a+4>>1];l=v[c>>2];n=v[c+4>>2];o=x[a+18>>1]+a|0;v[o+296>>2]=1;v[o+300>>2]=0;v[o+288>>2]=l;v[o+292>>2]=n;ba=1;if(da>>>0>1){D=((a+j|0)+B(da,400)|0)+(da<<5)|0;k=a+k|0;j=o+144|0;while(1){n=ba<<5;i=n+c|0;o=v[i+4>>2];l=j+B(ba,160)|0;v[l+144>>2]=v[i>>2];v[l+148>>2]=o;o=v[i+12>>2];v[l+152>>2]=v[i+8>>2];v[l+156>>2]=o;o=k+n|0;A=z[o+24>>2];E=z[o+16>>2];q=z[o+20>>2];o=D+B(ba,96)|0;v[o+92>>2]=0;v[o+84>>2]=0;v[o+88>>2]=1065353216;v[o+76>>2]=0;v[o+80>>2]=0;v[o+60>>2]=0;v[o+52>>2]=1065353216;v[o+56>>2]=0;v[o+44>>2]=0;v[o+48>>2]=0;v[o+28>>2]=0;v[o+20>>2]=0;v[o+24>>2]=0;v[o+12>>2]=0;v[o+16>>2]=1065353216;F=C(E*C(0));s=C(q*C(-0));z[o+72>>2]=C(F+s)+C(0);p=C(A*C(0));z[o+68>>2]=C(p-E)+C(0);L=C(A*C(-0));z[o+64>>2]=C(q+L)+C(0);z[o+40>>2]=C(E+s)+C(0);s=C(E*C(-0));z[o+36>>2]=C(p+s)+C(0);p=C(q*C(0));z[o+32>>2]=C(p-A)+C(0);z[o+8>>2]=C(F-q)+C(0);z[o+4>>2]=C(s+A)+C(0);z[o>>2]=C(p+L)+C(0);ba=ba+1|0;if((da|0)!=(ba|0)){continue}break}}v[N+64>>2]=0;c:{if(b>>>0<2){break c}d=C(C(1)/d);c=b-1|0;o=c&7;i=1;if(b-2>>>0>=7){c=c&-8;while(1){n=(N- -64|0)+(i<<2)|0;z[n>>2]=d;z[n+28>>2]=d;z[n+24>>2]=d;z[n+20>>2]=d;z[n+16>>2]=d;z[n+12>>2]=d;z[n+8>>2]=d;z[n+4>>2]=d;i=i+8|0;na=na+8|0;if((c|0)!=(na|0)){continue}break}}if(!o){break c}c=0;while(1){z[(N- -64|0)+(i<<2)>>2]=d;i=i+1|0;c=c+1|0;if((o|0)!=(c|0)){continue}break}}ca=I9(B(b,288)+f|0,0,B(b,48));fa=B(b,336);v[N+56>>2]=fa;v[N+24>>2]=fa;v[N+52>>2]=g;v[N+48>>2]=f;c=v[N+52>>2];v[N+16>>2]=v[N+48>>2];v[N+20>>2]=c;o=a;da=N- -64|0;k=da;c=xa-1936|0;xa=c;Ka=e&65535;if(Ka){d:{if(b>>>0<2){break d}e=b-1|0;na=e&3;a=1;if(b-2>>>0>=3){l=e&-4;e=0;while(1){j=c+912|0;z[j+(a<<4)>>2]=z[k+(a<<2)>>2];n=a+1|0;z[j+(n<<4)>>2]=z[k+(n<<2)>>2];n=a+2|0;z[j+(n<<4)>>2]=z[k+(n<<2)>>2];n=a+3|0;z[j+(n<<4)>>2]=z[k+(n<<2)>>2];a=a+4|0;e=e+4|0;if((l|0)!=(e|0)){continue}break}}if(!na){break d}e=0;while(1){z[(c+912|0)+(a<<4)>>2]=z[k+(a<<2)>>2];a=a+1|0;e=e+1|0;if((na|0)!=(e|0)){continue}break}}i=v[N+24>>2];La=B(b,144);S=i+La|0;v[N+24>>2]=S+La;a=x[o+4>>1];D=(o+x[o+16>>1]|0)+B(a,400)|0;k=a<<5;O=v[N+16>>2];j=x[o+6>>1];e:{if(!b){break e}e=0;a=0;if(b-1>>>0>=3){na=b&-4;h=o- -64|0;ba=0;while(1){m=c+400|0;n=m+(a<<3)|0;v[n>>2]=w[a+h|0];v[n+4>>2]=0;l=a|1;n=m+(l<<3)|0;v[n>>2]=w[h+l|0];v[n+4>>2]=0;l=a|2;n=m+(l<<3)|0;v[n>>2]=w[h+l|0];v[n+4>>2]=0;l=a|3;n=m+(l<<3)|0;v[n>>2]=w[h+l|0];v[n+4>>2]=0;a=a+4|0;ba=ba+4|0;if((na|0)!=(ba|0)){continue}break}}l=b&3;if(!l){break e}while(1){n=(c+400|0)+(a<<3)|0;v[n>>2]=w[(a+o|0)- -64|0];v[n+4>>2]=0;a=a+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}ba=k+D|0;na=i+O|0;i=O+S|0;D=j+o|0;l=b>>>0>1;while(1){O=H9(na,f,La);Ka=Ka-1|0;a=b;f:{if(!l){break f}while(1){e=a-1|0;j=(c+912|0)+(e<<4)|0;n=v[j+4>>2];v[c+32>>2]=v[j>>2];v[c+36>>2]=n;n=v[j+12>>2];v[c+40>>2]=v[j+8>>2];v[c+44>>2]=n;n=B(e,144);bw(c+256|0,n+O|0,ba+B(e,96)|0,(ca+B(a,48)|0)-48|0,c+32|0);k=O+B(v[(c+400|0)+(e<<3)>>2],144)|0;Aa=z[k+96>>2];Ba=z[k+100>>2];Ca=z[k+104>>2];Da=z[k+112>>2];Ea=z[k+116>>2];Fa=z[k+120>>2];Ga=z[k+128>>2];Ha=z[k+132>>2];Ia=z[k+136>>2];Ja=z[k+20>>2];ea=z[k+24>>2];T=z[k+36>>2];V=z[k+40>>2];W=z[k+52>>2];X=z[k+56>>2];a=k- -64|0;Y=z[a>>2];Q=z[k+68>>2];R=z[k+72>>2];U=z[k+80>>2];Z=z[k+84>>2];P=z[k+88>>2];j=D+(e<<5)|0;_=z[j>>2];I=z[k>>2];J=z[k+4>>2];G=z[k+8>>2];r=z[k+16>>2];y=z[k+32>>2];H=z[k+48>>2];$=z[j+4>>2];aa=z[j+8>>2];M=z[c+352>>2];A=z[c+356>>2];E=z[c+360>>2];q=z[c+368>>2];F=z[c+372>>2];L=z[c+376>>2];s=z[c+384>>2];p=z[c+388>>2];d=z[c+392>>2];Ma=z[c+308>>2];Na=z[c+312>>2];ya=z[c+320>>2];za=z[c+324>>2];oa=z[c+292>>2];ga=z[c+328>>2];pa=z[c+296>>2];ha=z[c+336>>2];ia=z[c+340>>2];qa=z[c+276>>2];ja=z[c+344>>2];ra=z[c+280>>2];sa=z[c+256>>2];ta=z[c+260>>2];ua=z[c+264>>2];ka=z[c+304>>2];va=z[c+288>>2];wa=z[c+272>>2];v[k+140>>2]=0;v[k+124>>2]=0;v[k+108>>2]=0;v[k+92>>2]=0;v[k+76>>2]=0;v[k+60>>2]=0;la=C(C($*va)-C(aa*wa));z[k+48>>2]=H+C(ka+la);v[k+44>>2]=0;z[k+32>>2]=va+y;v[k+28>>2]=0;z[k+16>>2]=wa+r;v[k+12>>2]=0;z[k+8>>2]=ua+G;z[k+4>>2]=ta+J;z[k>>2]=sa+I;ma=C(C(_*ra)-C($*ua));z[k+88>>2]=P+C(ja+ma);P=C(C(_*qa)-C($*ta));z[k+84>>2]=Z+C(ia+P);I=C(C(_*wa)-C($*sa));z[k+80>>2]=U+C(ha+I);J=C(C(aa*ua)-C(_*pa));z[k+72>>2]=R+C(ga+J);G=C(C(aa*ta)-C(_*oa));z[k+68>>2]=Q+C(za+G);r=C(C(aa*sa)-C(_*va));z[a>>2]=Y+C(ya+r);y=C(C($*pa)-C(aa*ra));z[k+56>>2]=X+C(Na+y);H=C(C($*oa)-C(aa*qa));z[k+52>>2]=W+C(Ma+H);z[k+40>>2]=pa+V;z[k+36>>2]=oa+T;z[k+24>>2]=ra+ea;z[k+20>>2]=qa+Ja;ea=d;d=C(C(C(C(_*ia)+C(ja*C(0)))-C($*ha))+C(C(C(ma*C(0))+C(C(_*P)-C($*I)))*C(.5)));z[k+136>>2]=Ia+C(ea+C(d+d));d=C(C(C(C(aa*ha)+C(C(ia*C(0))-C(_*ja)))+C(C(C(C(aa*I)+C(P*C(0)))-C(_*ma))*C(.5)))+C(C(C(C(_*za)+C(ga*C(0)))-C($*ya))+C(C(C(J*C(0))+C(C(_*G)-C($*r)))*C(.5))));z[k+132>>2]=Ha+C(p+d);p=C(C(C(C(ha*C(0))+C(C($*ja)-C(aa*ia)))+C(C(C($*ma)+C(C(I*C(0))-C(aa*P)))*C(.5)))+C(C(C(C(_*Ma)+C(Na*C(0)))-C($*ka))+C(C(C(y*C(0))+C(C(_*H)-C($*la)))*C(.5))));z[k+128>>2]=Ga+C(s+p);z[k+120>>2]=Fa+C(L+d);d=C(C(C(aa*ya)+C(C(za*C(0))-C(_*ga)))+C(C(C(C(aa*r)+C(G*C(0)))-C(_*J))*C(.5)));z[k+116>>2]=Ea+C(F+C(d+d));d=C(C(C(C(aa*ka)+C(C(Ma*C(0))-C(_*Na)))+C(C(C(C(aa*la)+C(H*C(0)))-C(_*y))*C(.5)))+C(C(C(ya*C(0))+C(C($*ga)-C(aa*za)))+C(C(C($*J)+C(C(r*C(0))-C(aa*G)))*C(.5))));z[k+112>>2]=Da+C(q+d);z[k+104>>2]=Ca+C(E+p);z[k+100>>2]=Ba+C(A+d);d=C(C(C(ka*C(0))+C(C($*Na)-C(aa*Ma)))+C(C(C($*y)+C(C(la*C(0))-C(aa*H)))*C(.5)));z[k+96>>2]=Aa+C(M+C(d+d));a=v[c+268>>2];j=i+n|0;v[j+8>>2]=v[c+264>>2];v[j+12>>2]=a;a=v[c+260>>2];v[j>>2]=v[c+256>>2];v[j+4>>2]=a;a=v[c+284>>2];v[j+24>>2]=v[c+280>>2];v[j+28>>2]=a;a=v[c+276>>2];v[j+16>>2]=v[c+272>>2];v[j+20>>2]=a;a=v[c+300>>2];v[j+40>>2]=v[c+296>>2];v[j+44>>2]=a;a=v[c+292>>2];v[j+32>>2]=v[c+288>>2];v[j+36>>2]=a;a=v[c+316>>2];v[j+56>>2]=v[c+312>>2];v[j+60>>2]=a;a=v[c+308>>2];v[j+48>>2]=v[c+304>>2];v[j+52>>2]=a;a=v[c+332>>2];v[j+72>>2]=v[c+328>>2];v[j+76>>2]=a;a=v[c+324>>2];n=j- -64|0;v[n>>2]=v[c+320>>2];v[n+4>>2]=a;a=v[c+340>>2];v[j+80>>2]=v[c+336>>2];v[j+84>>2]=a;a=v[c+348>>2];v[j+88>>2]=v[c+344>>2];v[j+92>>2]=a;a=v[c+356>>2];v[j+96>>2]=v[c+352>>2];v[j+100>>2]=a;a=v[c+364>>2];v[j+104>>2]=v[c+360>>2];v[j+108>>2]=a;a=v[c+380>>2];v[j+120>>2]=v[c+376>>2];v[j+124>>2]=a;a=v[c+372>>2];v[j+112>>2]=v[c+368>>2];v[j+116>>2]=a;a=v[c+396>>2];v[j+136>>2]=v[c+392>>2];v[j+140>>2]=a;a=v[c+388>>2];v[j+128>>2]=v[c+384>>2];v[j+132>>2]=a;a=e;if(a>>>0>1){continue}break}K=1;if(b>>>0<=1){break f}while(1){a=D+(K<<5)|0;p=z[a+8>>2];d=z[a>>2];z[c+100>>2]=-z[a+4>>2];z[c+96>>2]=-d;v[c+108>>2]=0;z[c+104>>2]=-p;a=v[c+100>>2];v[c+16>>2]=v[c+96>>2];v[c+20>>2]=a;a=v[c+108>>2];v[c+24>>2]=v[c+104>>2];v[c+28>>2]=a;n=c+112|0;cw(n,c+16|0,O+B(v[(c+400|0)+(K<<3)>>2],144)|0);e=B(K,144);a=e+i|0;ya=z[a>>2];za=z[a+4>>2];ga=z[a+8>>2];ha=z[a+16>>2];ia=z[a+20>>2];ja=z[a+24>>2];ka=z[a+32>>2];oa=z[a+36>>2];pa=z[a+40>>2];qa=z[a+48>>2];ra=z[a+52>>2];sa=z[a+56>>2];ta=z[a- -64>>2];ua=z[a+68>>2];va=z[a+72>>2];wa=z[a+80>>2];la=z[a+84>>2];ma=z[a+88>>2];Aa=z[a+96>>2];Ba=z[a+100>>2];Ca=z[a+104>>2];Da=z[a+112>>2];Ea=z[a+116>>2];Fa=z[a+120>>2];Ga=z[a+128>>2];Ha=z[a+132>>2];Ia=z[a+136>>2];Ja=z[c+112>>2];ea=z[c+116>>2];T=z[c+120>>2];V=z[c+128>>2];W=z[c+132>>2];X=z[c+136>>2];Y=z[c+144>>2];Q=z[c+148>>2];R=z[c+152>>2];U=z[c+160>>2];Z=z[c+164>>2];P=z[c+168>>2];I=z[c+176>>2];J=z[c+180>>2];G=z[c+184>>2];r=z[c+192>>2];y=z[c+196>>2];H=z[c+200>>2];M=z[c+208>>2];A=z[c+212>>2];E=z[c+216>>2];q=z[c+224>>2];F=z[c+228>>2];L=z[c+232>>2];s=z[c+240>>2];p=z[c+244>>2];d=z[c+248>>2];v[c+396>>2]=0;v[c+380>>2]=0;v[c+364>>2]=0;v[c+348>>2]=0;v[c+332>>2]=0;v[c+316>>2]=0;v[c+300>>2]=0;v[c+284>>2]=0;v[c+268>>2]=0;z[c+392>>2]=d-Ia;z[c+388>>2]=p-Ha;z[c+384>>2]=s-Ga;z[c+376>>2]=L-Fa;z[c+372>>2]=F-Ea;z[c+368>>2]=q-Da;z[c+360>>2]=E-Ca;z[c+356>>2]=A-Ba;z[c+352>>2]=M-Aa;z[c+344>>2]=H-ma;z[c+340>>2]=y-la;z[c+336>>2]=r-wa;z[c+328>>2]=G-va;z[c+324>>2]=J-ua;z[c+320>>2]=I-ta;z[c+312>>2]=P-sa;z[c+308>>2]=Z-ra;z[c+304>>2]=U-qa;z[c+296>>2]=R-pa;z[c+292>>2]=Q-oa;z[c+288>>2]=Y-ka;z[c+280>>2]=X-ja;z[c+276>>2]=W-ia;z[c+272>>2]=V-ha;z[c+264>>2]=T-ga;z[c+260>>2]=ea-za;z[c+256>>2]=Ja-ya;j=(c+912|0)+(K<<4)|0;a=v[j+4>>2];v[c>>2]=v[j>>2];v[c+4>>2]=a;a=v[j+12>>2];v[c+8>>2]=v[j+8>>2];v[c+12>>2]=a;k=n;n=c+256|0;a=ba+B(K,96)|0;S=ca+B(K,48)|0;bw(k,n,a,S,c);h=xa-720|0;xa=h;m=e+O|0;e=a;a=h+624|0;Iv(h+384|0,m,e,a);v[h+380>>2]=0;v[h+364>>2]=0;M=z[h+400>>2];A=z[h+420>>2];y=z[h+416>>2];E=z[h+404>>2];F=C(C(M*A)-C(y*E));p=z[h+392>>2];q=z[h+424>>2];d=z[h+408>>2];L=C(C(E*q)-C(A*d));H=z[h+384>>2];s=C(C(d*y)-C(q*M));d=z[h+388>>2];r=C(C(1)/C(C(F*p)+C(C(L*H)+C(s*d))));z[h+376>>2]=C(C(H*E)-C(M*d))*r;d=C(C(C(y*d)-C(H*A))*r);z[h+372>>2]=d;z[h+360>>2]=d;z[h+356>>2]=C(C(q*H)-C(p*y))*r;v[h+348>>2]=0;p=C(F*r);z[h+368>>2]=p;d=C(s*r);z[h+352>>2]=d;z[h+344>>2]=p;z[h+340>>2]=d;z[h+336>>2]=L*r;ya=z[n+20>>2];za=z[m+20>>2];ga=z[n+36>>2];ha=z[m+36>>2];ia=z[n+24>>2];ja=z[m+24>>2];ka=z[n+40>>2];oa=z[m+40>>2];pa=z[n+52>>2];qa=z[m+52>>2];ra=z[n+56>>2];sa=z[m+56>>2];ta=z[n- -64>>2];k=m- -64|0;ua=z[k>>2];va=z[n+68>>2];wa=z[m+68>>2];la=z[n+72>>2];ma=z[m+72>>2];Aa=z[n+80>>2];Ba=z[m+80>>2];Ca=z[n+84>>2];Da=z[m+84>>2];Ea=z[n+88>>2];Fa=z[m+88>>2];Ga=z[n+100>>2];Ha=z[m+100>>2];Ia=z[n+104>>2];Ja=z[m+104>>2];ea=z[n+112>>2];T=z[m+112>>2];V=z[n+116>>2];W=z[m+116>>2];X=z[n+120>>2];Y=z[m+120>>2];Q=z[n+128>>2];R=z[m+128>>2];U=z[n+132>>2];Z=z[m+132>>2];P=z[n+136>>2];I=z[m+136>>2];J=z[n>>2];G=z[m>>2];r=z[n+4>>2];y=z[m+4>>2];H=z[n+8>>2];M=z[m+8>>2];A=z[n+16>>2];E=z[m+16>>2];q=z[n+32>>2];F=z[m+32>>2];L=z[n+48>>2];s=z[m+48>>2];p=z[n+96>>2];d=z[m+96>>2];v[h+332>>2]=0;v[h+316>>2]=0;v[h+300>>2]=0;v[h+284>>2]=0;v[h+268>>2]=0;v[h+252>>2]=0;z[h+328>>2]=I+P;z[h+324>>2]=Z+U;z[h+320>>2]=R+Q;z[h+312>>2]=Y+X;z[h+308>>2]=W+V;z[h+304>>2]=T+ea;z[h+296>>2]=Ja+Ia;z[h+292>>2]=Ha+Ga;z[h+280>>2]=Fa+Ea;z[h+276>>2]=Da+Ca;z[h+272>>2]=Ba+Aa;z[h+264>>2]=ma+la;z[h+260>>2]=wa+va;z[h+256>>2]=ua+ta;z[h+248>>2]=sa+ra;z[h+244>>2]=qa+pa;z[h+232>>2]=oa+ka;z[h+216>>2]=ja+ia;v[h+236>>2]=0;v[h+220>>2]=0;v[h+204>>2]=0;z[h+288>>2]=d+p;z[h+240>>2]=s+L;z[h+228>>2]=ha+ga;z[h+224>>2]=F+q;z[h+212>>2]=za+ya;z[h+208>>2]=E+A;z[h+200>>2]=M+H;z[h+196>>2]=y+r;z[h+192>>2]=G+J;j=h+48|0;n=h+192|0;e=h+528|0;Jv(j,n,h+336|0,a,e);a=v[h+76>>2];v[h+216>>2]=v[h+72>>2];v[h+220>>2]=a;a=v[h+92>>2];v[h+232>>2]=v[h+88>>2];v[h+236>>2]=a;a=v[h+108>>2];v[h+248>>2]=v[h+104>>2];v[h+252>>2]=a;a=v[h+124>>2];v[h+264>>2]=v[h+120>>2];v[h+268>>2]=a;a=v[h+116>>2];v[h+256>>2]=v[h+112>>2];v[h+260>>2]=a;a=v[h+60>>2];v[h+200>>2]=v[h+56>>2];v[h+204>>2]=a;a=v[h+52>>2];v[h+192>>2]=v[h+48>>2];v[h+196>>2]=a;a=v[h+68>>2];v[h+208>>2]=v[h+64>>2];v[h+212>>2]=a;a=v[h+84>>2];v[h+224>>2]=v[h+80>>2];v[h+228>>2]=a;a=v[h+100>>2];v[h+240>>2]=v[h+96>>2];v[h+244>>2]=a;a=v[h+140>>2];v[h+280>>2]=v[h+136>>2];v[h+284>>2]=a;a=v[h+132>>2];v[h+272>>2]=v[h+128>>2];v[h+276>>2]=a;a=v[h+156>>2];v[h+296>>2]=v[h+152>>2];v[h+300>>2]=a;a=v[h+172>>2];v[h+312>>2]=v[h+168>>2];v[h+316>>2]=a;a=v[h+164>>2];v[h+304>>2]=v[h+160>>2];v[h+308>>2]=a;a=v[h+180>>2];v[h+320>>2]=v[h+176>>2];v[h+324>>2]=a;a=v[h+188>>2];v[h+328>>2]=v[h+184>>2];v[h+332>>2]=a;a=v[h+148>>2];v[h+288>>2]=v[h+144>>2];v[h+292>>2]=a;Hv(j,n);Iv(h,j,e,h+432|0);U=z[h+20>>2];Z=z[h+356>>2];P=z[h+36>>2];I=z[h+372>>2];J=z[h+24>>2];G=z[h+360>>2];r=z[h+40>>2];y=z[h+376>>2];H=z[h+8>>2];F=z[h+344>>2];M=z[h>>2];A=z[h+336>>2];E=z[h+4>>2];q=z[h+340>>2];L=z[h+32>>2];s=z[h+368>>2];p=z[h+16>>2];d=z[h+352>>2];v[c+92>>2]=0;v[c+76>>2]=0;v[c+60>>2]=0;R=C(d+p);P=C(I+P);Q=C(s+L);I=C(Z+U);p=C(C(R*P)-C(Q*I));F=C(F+H);H=C(y+r);d=C(G+J);L=C(C(I*H)-C(P*d));A=C(A+M);q=C(q+E);s=C(C(d*Q)-C(H*R));E=C(C(1)/C(C(p*F)+C(C(L*A)+C(q*s))));z[c+88>>2]=C(C(A*I)-C(R*q))*E;d=C(C(C(Q*q)-C(A*P))*E);z[c+84>>2]=d;p=C(p*E);z[c+80>>2]=p;z[c+72>>2]=d;z[c+68>>2]=C(C(H*A)-C(F*Q))*E;d=C(s*E);z[c+64>>2]=d;z[c+56>>2]=p;z[c+52>>2]=d;z[c+48>>2]=L*E;xa=h+720|0;a=v[c+92>>2];v[S+40>>2]=v[c+88>>2];v[S+44>>2]=a;a=v[c+84>>2];v[S+32>>2]=v[c+80>>2];v[S+36>>2]=a;a=v[c+76>>2];v[S+24>>2]=v[c+72>>2];v[S+28>>2]=a;e=c- -64|0;a=v[e+4>>2];v[S+16>>2]=v[e>>2];v[S+20>>2]=a;a=v[c+60>>2];v[S+8>>2]=v[c+56>>2];v[S+12>>2]=a;a=v[c+52>>2];v[S>>2]=v[c+48>>2];v[S+4>>2]=a;ya=z[m>>2];za=z[m+4>>2];ga=z[m+8>>2];ha=z[m+16>>2];ia=z[m+20>>2];ja=z[m+24>>2];ka=z[m+32>>2];oa=z[m+36>>2];pa=z[m+40>>2];qa=z[m+48>>2];ra=z[m+52>>2];sa=z[m+56>>2];ta=z[k>>2];ua=z[m+68>>2];va=z[m+72>>2];wa=z[m+80>>2];la=z[m+84>>2];ma=z[m+88>>2];Aa=z[m+96>>2];Ba=z[m+100>>2];Ca=z[m+104>>2];Da=z[m+112>>2];Ea=z[m+116>>2];Fa=z[m+120>>2];Ga=z[m+128>>2];Ha=z[m+132>>2];Ia=z[m+136>>2];Ja=z[c+112>>2];ea=z[c+116>>2];T=z[c+120>>2];V=z[c+128>>2];W=z[c+132>>2];X=z[c+136>>2];Y=z[c+144>>2];Q=z[c+148>>2];R=z[c+152>>2];U=z[c+160>>2];Z=z[c+164>>2];P=z[c+168>>2];I=z[c+176>>2];J=z[c+180>>2];G=z[c+184>>2];r=z[c+192>>2];y=z[c+196>>2];H=z[c+200>>2];M=z[c+208>>2];A=z[c+212>>2];E=z[c+216>>2];q=z[c+224>>2];F=z[c+228>>2];L=z[c+232>>2];s=z[c+240>>2];p=z[c+244>>2];d=z[c+248>>2];v[m+140>>2]=0;v[m+124>>2]=0;v[m+108>>2]=0;v[m+92>>2]=0;v[m+76>>2]=0;v[m+60>>2]=0;v[m+44>>2]=0;v[m+28>>2]=0;v[m+12>>2]=0;z[m+136>>2]=Ia+d;z[m+132>>2]=Ha+p;z[m+128>>2]=Ga+s;z[m+120>>2]=Fa+L;z[m+116>>2]=Ea+F;z[m+112>>2]=Da+q;z[m+104>>2]=Ca+E;z[m+100>>2]=Ba+A;z[m+96>>2]=Aa+M;z[m+88>>2]=ma+H;z[m+84>>2]=la+y;z[m+80>>2]=wa+r;z[m+72>>2]=va+G;z[m+68>>2]=ua+J;z[k>>2]=ta+I;z[m+56>>2]=sa+P;z[m+52>>2]=ra+Z;z[m+48>>2]=qa+U;z[m+40>>2]=pa+R;z[m+36>>2]=oa+Q;z[m+32>>2]=ka+Y;z[m+24>>2]=ja+X;z[m+20>>2]=ia+W;z[m+16>>2]=ha+V;z[m+8>>2]=ga+T;z[m+4>>2]=za+ea;z[m>>2]=ya+Ja;K=K+1|0;if((K|0)!=(b|0)){continue}break}}if(Ka){continue}break}}xa=c+1936|0;v[N+40>>2]=fa;v[N+8>>2]=fa;v[N+36>>2]=g;v[N+32>>2]=f;a=v[N+36>>2];v[N>>2]=v[N+32>>2];v[N+4>>2]=a;i=xa-512|0;xa=i;n=x[o+18>>1];e=x[o+6>>1];c=x[o+16>>1];b=v[N+8>>2];l=x[o+4>>1];a=B(l,144);v[N+8>>2]=b+a;k=H9(b+v[N>>2]|0,f,a);g=x[o+4>>1]-1|0;if(g){j=((c+o|0)+B(l,400)|0)+(l<<5)|0;na=e+o|0;l=(n+o|0)+144|0;while(1){n=k+B(g,144)|0;f=i+416|0;Iv(i+368|0,n,j+B(g,96)|0,f);q=z[da+(g<<2)>>2];a=ca+B(g,48)|0;s=C(C(q*z[a+24>>2])+z[i+392>>2]);r=C(C(q*z[a+32>>2])+z[i+400>>2]);H=C(C(q*z[a+40>>2])+z[i+408>>2]);M=C(C(q*z[a+16>>2])+z[i+384>>2]);p=C(C(s*r)-C(H*M));A=C(C(q*z[a+36>>2])+z[i+404>>2]);E=C(C(q*z[a+20>>2])+z[i+388>>2]);d=C(C(M*A)-C(r*E));F=C(C(q*z[a+8>>2])+z[i+376>>2]);L=C(C(E*H)-C(A*s));y=C(C(q*z[a>>2])+z[i+368>>2]);q=C(C(q*z[a+4>>2])+z[i+372>>2]);G=C(C(1)/C(C(d*F)+C(C(L*y)+C(p*q))));s=C(p*G);z[i+336>>2]=s;p=C(C(C(r*q)-C(y*A))*G);z[i+344>>2]=p;d=C(d*G);z[i+352>>2]=d;z[i+360>>2]=C(C(y*E)-C(M*q))*G;z[i+324>>2]=s;z[i+320>>2]=L*G;v[i+332>>2]=0;v[i+348>>2]=0;v[i+364>>2]=0;z[i+328>>2]=d;z[i+340>>2]=C(C(H*y)-C(F*r))*G;z[i+356>>2]=p;a=v[i+324>>2];D=l+B(g,160)|0;b=D;v[b+96>>2]=v[i+320>>2];v[b+100>>2]=a;a=v[i+332>>2];v[b+104>>2]=v[i+328>>2];v[b+108>>2]=a;a=v[i+340>>2];v[b+112>>2]=v[i+336>>2];v[b+116>>2]=a;a=v[i+348>>2];v[b+120>>2]=v[i+344>>2];v[b+124>>2]=a;a=v[i+356>>2];v[b+128>>2]=v[i+352>>2];v[b+132>>2]=a;a=v[i+364>>2];v[b+136>>2]=v[i+360>>2];v[b+140>>2]=a;e=(g+o|0)- -64|0;c=w[e|0];b=na+(g<<5)|0;a=v[b+12>>2];v[i+168>>2]=v[b+8>>2];v[i+172>>2]=a;a=v[b+4>>2];v[i+160>>2]=v[b>>2];v[i+164>>2]=a;b=i+16|0;Jv(b,n,i+320|0,f,D);a=v[i+172>>2];v[i+8>>2]=v[i+168>>2];v[i+12>>2]=a;a=v[i+164>>2];v[i>>2]=v[i+160>>2];v[i+4>>2]=a;cw(i+176|0,i,b);a=k+B(c,144)|0;ga=z[a+20>>2];ha=z[a+24>>2];ia=z[a+36>>2];ja=z[a+40>>2];ka=z[a+52>>2];oa=z[a+56>>2];pa=z[a- -64>>2];qa=z[a+68>>2];ra=z[a+72>>2];sa=z[a+80>>2];ta=z[a+84>>2];ua=z[a+88>>2];va=z[a+100>>2];wa=z[a+104>>2];la=z[a+112>>2];ma=z[a+116>>2];Aa=z[a+120>>2];Ba=z[a+128>>2];Ca=z[a+132>>2];Da=z[a+136>>2];Ea=z[a>>2];Fa=z[a+4>>2];Ga=z[a+8>>2];Ha=z[a+16>>2];Ia=z[a+32>>2];Ja=z[a+48>>2];ea=z[i+196>>2];T=z[i+200>>2];V=z[i+212>>2];W=z[i+216>>2];X=z[i+228>>2];Y=z[i+232>>2];Q=z[i+240>>2];R=z[i+244>>2];U=z[i+248>>2];Z=z[i+256>>2];P=z[i+260>>2];I=z[i+264>>2];J=z[i+276>>2];G=z[i+280>>2];r=z[i+288>>2];y=z[i+292>>2];H=z[i+296>>2];M=z[i+304>>2];A=z[i+308>>2];E=z[i+312>>2];q=z[i+176>>2];F=z[i+180>>2];L=z[i+184>>2];s=z[i+192>>2];p=z[i+208>>2];d=z[i+224>>2];b=k+B(w[e|0],144)|0;z[b+96>>2]=z[a+96>>2]+z[i+272>>2];z[b+48>>2]=Ja+d;z[b+32>>2]=Ia+p;z[b+16>>2]=Ha+s;v[b+12>>2]=0;z[b+8>>2]=Ga+L;z[b+4>>2]=Fa+F;z[b>>2]=Ea+q;v[b+140>>2]=0;z[b+136>>2]=Da+E;z[b+132>>2]=Ca+A;z[b+128>>2]=Ba+M;v[b+124>>2]=0;z[b+120>>2]=Aa+H;z[b+116>>2]=ma+y;z[b+112>>2]=la+r;v[b+108>>2]=0;z[b+104>>2]=wa+G;z[b+100>>2]=va+J;v[b+92>>2]=0;z[b+88>>2]=ua+I;z[b+84>>2]=ta+P;z[b+80>>2]=sa+Z;v[b+76>>2]=0;z[b+72>>2]=ra+U;z[b+68>>2]=qa+R;z[b- -64>>2]=pa+Q;v[b+60>>2]=0;z[b+56>>2]=oa+Y;z[b+52>>2]=ka+X;v[b+44>>2]=0;z[b+40>>2]=ja+W;z[b+36>>2]=ia+V;v[b+28>>2]=0;z[b+24>>2]=ha+T;z[b+20>>2]=ga+ea;g=g-1|0;if(g){continue}break}}Hv(i+176|0,k);a=v[i+180>>2];c=o+x[o+18>>1]|0;v[c>>2]=v[i+176>>2];v[c+4>>2]=a;a=v[i+188>>2];v[c+8>>2]=v[i+184>>2];v[c+12>>2]=a;a=v[i+196>>2];v[c+16>>2]=v[i+192>>2];v[c+20>>2]=a;a=v[i+204>>2];v[c+24>>2]=v[i+200>>2];v[c+28>>2]=a;a=v[i+212>>2];v[c+32>>2]=v[i+208>>2];v[c+36>>2]=a;a=v[i+220>>2];v[c+40>>2]=v[i+216>>2];v[c+44>>2]=a;a=v[i+228>>2];v[c+48>>2]=v[i+224>>2];v[c+52>>2]=a;a=v[i+236>>2];v[c+56>>2]=v[i+232>>2];v[c+60>>2]=a;a=v[i+244>>2];b=c- -64|0;v[b>>2]=v[i+240>>2];v[b+4>>2]=a;a=v[i+252>>2];v[c+72>>2]=v[i+248>>2];v[c+76>>2]=a;a=v[i+260>>2];v[c+80>>2]=v[i+256>>2];v[c+84>>2]=a;a=v[i+268>>2];v[c+88>>2]=v[i+264>>2];v[c+92>>2]=a;a=v[i+276>>2];v[c+96>>2]=v[i+272>>2];v[c+100>>2]=a;a=v[i+284>>2];v[c+104>>2]=v[i+280>>2];v[c+108>>2]=a;a=v[i+300>>2];v[c+120>>2]=v[i+296>>2];v[c+124>>2]=a;a=v[i+292>>2];v[c+112>>2]=v[i+288>>2];v[c+116>>2]=a;a=v[i+316>>2];v[c+136>>2]=v[i+312>>2];v[c+140>>2]=a;a=v[i+308>>2];v[c+128>>2]=v[i+304>>2];v[c+132>>2]=a;xa=i+512|0;xa=N+320|0}function ZY(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=C(g);h=h|0;i=i|0;j=j|0;k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,u=C(0),x=C(0),y=C(0),A=C(0),D=0,E=C(0),G=C(0),H=C(0),I=C(0),J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=0,da=0,ea=0,fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=0,Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=0,Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=0,Ya=0;b=xa-416|0;xa=b;t[b+32|0]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;j=v[a+40>>2];l=z[a+8>>2];n=z[a+12>>2];m=z[a+4>>2];v[b+188>>2]=0;z[b+184>>2]=n;z[b+180>>2]=l;z[b+176>>2]=m;D=v[a+16>>2];_=v[a+20>>2];s=v[a+28>>2];v[b+344>>2]=v[a+24>>2];v[b+348>>2]=s;v[b+336>>2]=D;v[b+340>>2]=_;v[b+144>>2]=j;v[b+152>>2]=v[j+40>>2]+B(w[j+39|0],20);t[b+156|0]=w[j+38|0];p=C(m*z[j+52>>2]);o=C(l*z[j+56>>2]);p=o>=p?p:o;o=C(n*z[j+60>>2]);p=o>=p?p:o;z[b+24>>2]=p*C(.02500000037252903);z[b+16>>2]=p*C(.10000000149011612);z[b+20>>2]=p*C(.05000000074505806);D=b+176|0;a=b+336|0;FV(D,a,b+48|0,b+96|0,b,m==C(1)&l==C(1)&n==C(1));v[b+148>>2]=v[j+44>>2];v[b+408>>2]=0;v[b+412>>2]=0;v[b+400>>2]=0;v[b+404>>2]=0;Ia=z[e+20>>2];x=z[f+20>>2];Ja=z[e+24>>2];u=z[f+24>>2];l=z[d+8>>2];n=z[d>>2];m=z[d+4>>2];p=z[d+12>>2];X=z[c+12>>2];$=z[c>>2];Ka=z[e+16>>2];A=z[f+16>>2];S=z[c+4>>2];T=z[c+8>>2];v[b+396>>2]=0;v[b+380>>2]=0;v[b+364>>2]=0;Fa=C(-$);o=C(A-Ka);q=C(x-Ia);r=C(u-Ja);y=C(C(C(Fa*o)-C(q*S))-C(T*r));ga=C(C(X*X)+C(-.5));G=C(C(C(X*C(C(S*o)-C($*q)))+C(ga*r))-C(T*y));z[b+392>>2]=G+G;G=C(C(C(ga*q)+C(X*C(C($*r)-C(T*o))))-C(S*y));z[b+388>>2]=G+G;s=b+384|0;o=C(C(C(ga*o)+C(X*C(C(T*q)-C(S*r))))-C($*y));z[s>>2]=o+o;q=C(C(C(m*T)-C(S*l))+C(C(n*X)-C(p*$)));o=C(q+q);r=C(C(C(l*$)-C(T*n))+C(C(m*X)-C(p*S)));y=C(r+r);G=C(C(1)-C(q*o));N=C(r*y);z[b+376>>2]=G-N;q=C(C(C(n*S)-C($*m))+C(C(l*X)-C(p*T)));P=C(q*y);l=C(C(p*X)-C(C(C(Fa*n)-C(m*S))-C(T*l)));n=C(l*o);z[b+372>>2]=P-n;m=C(q*o);p=C(l*y);z[b+368>>2]=m+p;z[b+360>>2]=P+n;n=C(q+q);q=C(q*n);z[b+356>>2]=G-q;o=C(r*o);l=C(l*n);z[b+352>>2]=o-l;v[b+348>>2]=0;z[b+344>>2]=m-p;z[b+340>>2]=o+l;z[b+336>>2]=C(C(1)-N)-q;m=z[c+20>>2];p=z[d+20>>2];l=z[c+24>>2];n=z[d+24>>2];o=z[c+16>>2];q=z[d+16>>2];v[b+332>>2]=0;Oa=C(n-u);l=C(C(l-Ja)-Oa);Pa=C(q-A);n=C(C(o-Ka)-Pa);Qa=C(p-x);m=C(C(m-Ia)-Qa);p=C(C(T*l)+C(C($*n)+C(S*m)));o=C(C(C(ga*l)-C(X*C(C($*m)-C(S*n))))+C(T*p));z[b+328>>2]=o+o;o=C(C(S*p)+C(C(ga*m)-C(X*C(C(T*n)-C(l*$)))));z[b+324>>2]=o+o;l=C(C($*p)+C(C(ga*n)-C(X*C(C(S*l)-C(m*T)))));z[b+320>>2]=l+l;v[b+256>>2]=0;v[b+176>>2]=142420;v[b+180>>2]=k;v[b+184>>2]=a;a=v[b+356>>2];v[b+208>>2]=v[b+352>>2];v[b+212>>2]=a;a=v[b+364>>2];v[b+216>>2]=v[b+360>>2];v[b+220>>2]=a;a=v[b+348>>2];v[b+200>>2]=v[b+344>>2];v[b+204>>2]=a;a=v[b+372>>2];v[b+224>>2]=v[b+368>>2];v[b+228>>2]=a;a=v[b+380>>2];v[b+232>>2]=v[b+376>>2];v[b+236>>2]=a;a=v[s+4>>2];v[b+240>>2]=v[s>>2];v[b+244>>2]=a;a=v[b+396>>2];v[b+248>>2]=v[b+392>>2];v[b+252>>2]=a;a=v[b+340>>2];v[b+192>>2]=v[b+336>>2];v[b+196>>2]=a;l=z[b+196>>2];z[b+196>>2]=z[b+208>>2];n=z[b+216>>2];m=z[b+200>>2];z[b+200>>2]=z[b+224>>2];z[b+216>>2]=z[b+228>>2];z[b+224>>2]=m;z[b+228>>2]=n;z[b+208>>2]=l;v[b+168>>2]=141216;v[b+172>>2]=b;Ga=C(34028234663852886e22);j=xa-288|0;xa=j;U=C(g+C(0));a=xa-272|0;xa=a;v[a+248>>2]=0;v[a+252>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;L=z[b+408>>2];M=z[b+404>>2];I=z[b+400>>2];ha=z[b+328>>2];H=z[b+324>>2];V=z[b+320>>2];v[a+224>>2]=1;c=v[D+8>>2];ba=z[c+52>>2];W=z[c+36>>2];O=z[c+20>>2];E=z[c+56>>2];Y=z[c+40>>2];Z=z[c+24>>2];d=v[D+4>>2];q=z[d+72>>2];r=z[d- -64>>2];y=z[d+68>>2];x=z[d+56>>2];u=z[d+52>>2];A=z[d+88>>2];R=z[D+56>>2];aa=z[D+24>>2];ia=z[D+40>>2];G=z[d+80>>2];ja=z[D+48>>2];na=z[D+32>>2];N=z[d+84>>2];oa=z[D+52>>2];ka=z[D+20>>2];pa=z[D+36>>2];qa=z[c+48>>2];ra=z[c+32>>2];sa=z[c>>2];ta=z[c+16>>2];ua=z[c+4>>2];va=z[c+8>>2];P=z[d+48>>2];la=z[D+16>>2];g=z[s+8>>2];l=z[s>>2];n=z[s+4>>2];La=b+168|0;e=La;c=v[e+4>>2];o=z[c+56>>2];ma=z[c+52>>2];wa=z[c+72>>2];k=c- -64|0;ya=z[k>>2];za=z[c+68>>2];m=z[c+88>>2];Aa=z[c+80>>2];Ba=z[c+84>>2];Ca=z[c+48>>2];f=0;v[a+172>>2]=0;fa=m;d=C(C(g*g)+C(C(l*l)+C(n*n)))>C(1.1920928955078125e-7);g=d?g:C(0);l=d?l:C(1);m=d?n:C(0);p=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(m*m))))));g=C(g*p);n=C(l*p);l=C(m*p);z[a+168>>2]=C(fa*g)+C(C(Aa*n)+C(Ba*l));z[a+164>>2]=C(wa*g)+C(C(ya*n)+C(l*za));z[a+160>>2]=C(o*g)+C(C(Ca*n)+C(l*ma));d=HV(c,a+160|0);ma=z[k>>2];wa=z[c+80>>2];ya=z[c+84>>2];za=z[c+52>>2];Aa=z[c+68>>2];Ba=z[c+88>>2];d=v[c+152>>2]+B(d,12)|0;m=z[d+8>>2];Ca=z[c+56>>2];p=z[d>>2];Ma=z[c+72>>2];o=z[d+4>>2];Da=z[c+48>>2];v[a+180>>2]=0;v[a+184>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+172>>2]=0;v[a+176>>2]=0;Ea=E;fa=q;n=C(-n);q=C(C(C(aa*n)-C(ia*l))-C(R*g));E=C(C(C(la*n)-C(na*l))-C(ja*g));g=C(C(C(ka*n)-C(pa*l))-C(oa*g));l=C(C(fa*q)+C(C(r*E)+C(y*g)));n=C(C(A*q)+C(C(G*E)+C(g*N)));c=l>n;g=C(C(x*q)+C(C(P*E)+C(g*u)));d=!(g>l)|!(g>n);g=d?c?fa:A:x;l=d?c?r:G:P;n=d?c?y:N:u;q=C(Ea+C(C(Y*g)+C(C(va*l)+C(Z*n))));y=C(C(Ba*m)+C(C(Ca*p)+C(o*Ma)));x=C(q-y);z[a+168>>2]=x;A=C(ba+C(C(W*g)+C(C(ua*l)+C(n*O))));G=C(C(ya*m)+C(C(za*p)+C(o*Aa)));u=C(A-G);z[a+164>>2]=u;g=C(qa+C(C(ra*g)+C(C(sa*l)+C(n*ta))));l=C(C(wa*m)+C(C(Da*p)+C(o*ma)));r=C(g-l);z[a+160>>2]=r;v[a+116>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+108>>2]=0;v[a+112>>2]=0;z[a+104>>2]=q;z[a+100>>2]=A;z[a+96>>2]=g;v[a+52>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;z[a+40>>2]=y;z[a+36>>2]=G;z[a+32>>2]=l;g=C(-x);l=C(-u);n=C(-r);A=C(C(x*x)+C(C(r*r)+C(u*u)));m=z[v[e+4>>2]+24>>2];m=C((mna)){m=n;o=l;q=g;N=C(0);y=r;p=u;G=x;break b}ba=C(m+U);oa=C(ba*ba);P=C(C(V*C(0))+I);E=C(C(H*C(0))+M);U=C(C(ha*C(0))+L);N=C(0);q=g;o=l;m=n;while(1){y=r;p=u;G=x;c=v[D+8>>2];ja=z[c+56>>2];ka=z[c+40>>2];pa=z[c+24>>2];ia=z[c+52>>2];qa=z[c+36>>2];ra=z[c+20>>2];d=v[D+4>>2];x=z[d+72>>2];u=z[d- -64>>2];I=z[d+68>>2];H=z[d+56>>2];V=z[d+52>>2];W=z[d+88>>2];O=z[d+80>>2];Y=z[d+84>>2];sa=z[c+8>>2];R=z[c+48>>2];aa=z[c+32>>2];ta=z[c>>2];ua=z[c+16>>2];va=z[c+4>>2];Z=z[d+48>>2];la=z[D+56>>2];ma=z[D+24>>2];wa=z[D+40>>2];ya=z[D+48>>2];za=z[D+16>>2];Aa=z[D+32>>2];Ba=z[D+52>>2];Ca=z[D+20>>2];Ma=z[D+36>>2];c=v[e+4>>2];Da=z[c+52>>2];Na=z[c+56>>2];Sa=z[c+72>>2];k=c- -64|0;Ta=z[k>>2];Ua=z[c+68>>2];Va=z[c+88>>2];r=z[c+80>>2];L=z[c+84>>2];Wa=z[c+48>>2];v[a+268>>2]=0;fa=r;M=C(C(1)/C(K(C(C(g*g)+C(C(n*n)+C(l*l))))));r=C(n*M);ha=C(-r);Ea=L;L=C(l*M);M=C(g*M);z[a+264>>2]=C(C(fa*ha)-C(Ea*L))-C(Va*M);z[a+260>>2]=C(C(Ta*ha)-C(Ua*L))-C(Sa*M);z[a+256>>2]=C(C(Wa*ha)-C(Da*L))-C(Na*M);_=HV(c,a+256|0);Ea=R;Da=aa;fa=x;Na=W;x=C(C(la*M)+C(C(ma*r)+C(L*wa)));R=C(C(ya*M)+C(C(za*r)+C(L*Aa)));aa=C(C(Ba*M)+C(C(Ca*r)+C(L*Ma)));la=C(C(fa*x)+C(C(u*R)+C(I*aa)));W=C(C(W*x)+C(C(O*R)+C(aa*Y)));d=la>W;x=C(C(H*x)+C(C(Z*R)+C(aa*V)));f=!(x>la)|!(x>W);x=f?d?fa:Na:H;u=f?d?u:O:Z;I=f?d?I:Y:V;W=C(Ea+C(C(Da*x)+C(C(ta*u)+C(ua*I))));d=v[c+152>>2]+B(_,12)|0;O=z[d+8>>2];Y=z[d>>2];Z=z[d+4>>2];R=C(P+C(C(z[c+80>>2]*O)+C(C(z[c+48>>2]*Y)+C(Z*z[k>>2]))));H=C(W-R);aa=C(ia+C(C(qa*x)+C(C(va*u)+C(I*ra))));ia=C(E+C(C(z[c+84>>2]*O)+C(C(z[c+52>>2]*Y)+C(Z*z[c+68>>2]))));V=C(aa-ia);ja=C(ja+C(C(ka*x)+C(C(sa*u)+C(I*pa))));O=C(U+C(C(z[c+88>>2]*O)+C(C(z[c+56>>2]*Y)+C(Z*z[c+72>>2]))));I=C(ja-O);x=C(C(C(C(r*C(-H))-C(L*V))-C(M*I))-ba);if(x>C(0)){c=0;u=z[b+328>>2];Y=z[b+320>>2];Z=z[b+324>>2];ka=C(C(M*u)+C(C(r*Y)+C(L*Z)));if(ka>=C(0)){break a}r=N;N=C(r-C(x/ka));if(N>r){if(N>C(1)){break a}q=z[b+408>>2];o=z[b+404>>2];m=z[b+400>>2];v[a+76>>2]=0;v[a+60>>2]=0;v[a+44>>2]=0;r=C(m+C(Y*N));m=C(r-P);A=C(m+z[a+64>>2]);z[a+64>>2]=A;x=C(o+C(Z*N));o=C(x-E);P=C(o+z[a+68>>2]);z[a+68>>2]=P;u=C(q+C(u*N));q=C(u-U);E=C(q+z[a+72>>2]);z[a+72>>2]=E;U=C(m+z[a+48>>2]);z[a+48>>2]=U;I=C(o+z[a+52>>2]);z[a+52>>2]=I;H=C(q+z[a+56>>2]);z[a+56>>2]=H;m=C(m+z[a+32>>2]);z[a+32>>2]=m;o=C(o+z[a+36>>2]);z[a+36>>2]=o;q=C(q+z[a+40>>2]);z[a+40>>2]=q;V=z[a+96>>2];O=z[a+100>>2];Y=z[a+104>>2];v[a+172>>2]=0;z[a+168>>2]=Y-q;z[a+164>>2]=O-o;z[a+160>>2]=V-m;m=z[a+112>>2];o=z[a+116>>2];q=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=q-H;z[a+180>>2]=o-I;z[a+176>>2]=m-U;m=z[a+128>>2];o=z[a+132>>2];q=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=q-E;z[a+196>>2]=o-P;z[a+192>>2]=m-A;c=v[e+4>>2];q=z[c+56>>2];A=z[c+52>>2];P=z[c+72>>2];f=c- -64|0;E=z[f>>2];U=z[c+68>>2];m=z[c+88>>2];o=z[c+80>>2];I=z[c+84>>2];H=z[c+48>>2];v[a+268>>2]=0;R=m;m=C(-M);fa=C(o*ha);o=C(-L);z[a+264>>2]=C(R*m)+C(fa+C(I*o));z[a+260>>2]=C(P*m)+C(C(E*ha)+C(U*o));z[a+256>>2]=C(q*m)+C(C(H*ha)+C(A*o));d=HV(c,a+256|0);d=v[c+152>>2]+B(d,12)|0;m=z[d+8>>2];o=z[d>>2];q=z[d+4>>2];O=C(u+C(C(z[c+88>>2]*m)+C(C(z[c+56>>2]*o)+C(q*z[c+72>>2]))));I=C(ja-O);ia=C(x+C(C(z[c+84>>2]*m)+C(C(z[c+52>>2]*o)+C(q*z[c+68>>2]))));V=C(aa-ia);R=C(r+C(C(z[c+80>>2]*m)+C(C(z[c+48>>2]*o)+C(q*z[f>>2]))));H=C(W-R);m=n;o=l;q=g;P=r;E=x;U=u;g=C(34028234663852886e22)}else{g=A}}else{g=A}L=g;d=v[a+224>>2];f=d<<4;c=f+(a+96|0)|0;v[c+12>>2]=0;z[c+8>>2]=ja;z[c+4>>2]=aa;z[c>>2]=W;c=f+(a+32|0)|0;v[c+12>>2]=0;z[c+8>>2]=O;z[c+4>>2]=ia;z[c>>2]=R;c=f+(a+160|0)|0;v[c+12>>2]=0;z[c+8>>2]=I;z[c+4>>2]=V;z[c>>2]=H;v[a+224>>2]=d+1;c:{d:{switch(d-1|0){case 0:r=z[a+168>>2];g=C(z[a+184>>2]-r);x=z[a+160>>2];l=C(z[a+176>>2]-x);u=z[a+164>>2];n=C(z[a+180>>2]-u);A=C(C(g*g)+C(C(l*l)+C(n*n)));if(A<=C(1.1920928955078125e-7)){v[a+224>>2]=1;c=v[a+164>>2];v[a+256>>2]=v[a+160>>2];v[a+260>>2]=c;c=v[a+172>>2];v[a+264>>2]=v[a+168>>2];v[a+268>>2]=c;break c}H=g;g=C(F(C(C(C(C(C(-x)*l)-C(n*u))-C(r*g))/A),C(1)));g=g>C(0)?g:C(0);z[a+264>>2]=r+C(H*g);z[a+260>>2]=u+C(n*g);z[a+256>>2]=x+C(l*g);break c;case 1:JV(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;case 2:N_(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;default:break d}}z[a+264>>2]=I;z[a+260>>2]=V;z[a+256>>2]=H}x=z[a+264>>2];g=C(-x);u=z[a+260>>2];l=C(-u);r=z[a+256>>2];n=C(-r);A=C(C(x*x)+C(C(r*r)+C(u*u)));if(oa>2]+32|0];P=C(0);I=C(0);d=!(A>na)|f;g=d?q:g;n=d?m:n;l=d?o:l;m=C(K(C(C(g*g)+C(C(n*n)+C(l*l)))));if(!(m<=C(1.1920928955078125e-7))){o=g;g=C(C(1)/m);Ha=C(o*g);I=C(n*g);P=C(l*g)}v[j+268>>2]=0;z[j+264>>2]=-Ha;z[j+260>>2]=-P;z[j+256>>2]=-I;z[j+240>>2]=N;v[j+252>>2]=v[a+236>>2];d=v[a+232>>2];v[j+244>>2]=v[a+228>>2];v[j+248>>2]=d;v[a+268>>2]=0;z[a+264>>2]=f?G:x;z[a+260>>2]=f?p:u;z[a+256>>2]=f?y:r;d=v[a+252>>2];f=v[a+248>>2];v[a+24>>2]=f;v[a+28>>2]=d;e=v[a+244>>2];k=v[a+240>>2];v[a+16>>2]=k;v[a+20>>2]=e;v[a+8>>2]=f;v[a+12>>2]=d;v[a>>2]=k;v[a+4>>2]=e;IV(a+160|0,a+96|0,a+32|0,a+256|0,a+16|0,a,v[a+224>>2]);g=z[v[D+4>>2]+16>>2];l=z[a+16>>2];n=z[a+20>>2];m=z[a+24>>2];v[j+284>>2]=0;z[j+280>>2]=m+(c?C(Ha*g):C(-0));z[j+276>>2]=n+(c?C(P*g):C(-0));z[j+272>>2]=l+(c?C(I*g):C(-0));c=1}xa=a+272|0;a=c;if(c){c=v[j+244>>2];v[b+304>>2]=v[j+240>>2];v[b+308>>2]=c;c=v[j+252>>2];v[b+312>>2]=v[j+248>>2];v[b+316>>2]=c;if(z[j+240>>2]==C(0)){d=v[D+4>>2];e=v[La+4>>2];z[j+224>>2]=C(z[d+16>>2]+z[e+16>>2])*C(100);t[j+215|0]=0;v[j+168>>2]=0;v[j+172>>2]=0;v[j+160>>2]=0;v[j+164>>2]=0;v[j+152>>2]=0;v[j+156>>2]=0;v[j+144>>2]=0;v[j+148>>2]=0;v[j+136>>2]=0;v[j+140>>2]=0;v[j+128>>2]=0;v[j+132>>2]=0;v[j+192>>2]=0;c=v[D+8>>2];v[j+56>>2]=c;v[j+48>>2]=142420;v[j+52>>2]=d;d=v[c+12>>2];v[j+72>>2]=v[c+8>>2];v[j+76>>2]=d;d=v[c+20>>2];v[j+80>>2]=v[c+16>>2];v[j+84>>2]=d;d=v[c+28>>2];v[j+88>>2]=v[c+24>>2];v[j+92>>2]=d;d=v[c+36>>2];v[j+96>>2]=v[c+32>>2];v[j+100>>2]=d;d=v[c+44>>2];v[j+104>>2]=v[c+40>>2];v[j+108>>2]=d;d=v[c+52>>2];v[j+112>>2]=v[c+48>>2];v[j+116>>2]=d;d=v[c+60>>2];v[j+120>>2]=v[c+56>>2];v[j+124>>2]=d;d=v[c+4>>2];v[j+64>>2]=v[c>>2];v[j+68>>2]=d;g=z[j+68>>2];z[j+68>>2]=z[j+80>>2];l=z[j+88>>2];n=z[j+72>>2];z[j+72>>2]=z[j+96>>2];z[j+80>>2]=g;z[j+96>>2]=n;z[j+88>>2]=z[j+100>>2];z[j+100>>2]=l;v[j+40>>2]=141216;v[j+44>>2]=e;k=j+220|0;_=j+216|0;c=0;f=xa-320|0;xa=f;e=v[j+44>>2];g=z[e+20>>2];ea=v[j+52>>2];l=z[ea+20>>2];q=z[j+224>>2];Xa=w[ea+32|0];x=z[ea+16>>2];Ya=w[e+32|0];u=z[e+16>>2];v[f+28>>2]=0;P=C((g>2];while(1){d=J<<2;ca=w[k+J|0];v[d+(f+48|0)>>2]=ca;Q=d+(f+32|0)|0;d=w[J+_|0];v[Q>>2]=d;d=v[e+152>>2]+B(d,12)|0;g=z[d+8>>2];l=z[d>>2];n=z[d+4>>2];d=ea+(ca<<4)|0;m=z[d+56>>2];p=z[d+48>>2];o=z[d+52>>2];r=z[e+80>>2];y=z[e+48>>2];A=z[e+64>>2];G=z[e+84>>2];N=z[e+52>>2];E=z[e+68>>2];U=z[e+88>>2];L=z[e+56>>2];M=z[e+72>>2];I=z[s+48>>2];ha=z[s+32>>2];H=z[s>>2];V=z[s+16>>2];ba=z[s+52>>2];W=z[s+36>>2];O=z[s+4>>2];Y=z[s+20>>2];Z=z[s+56>>2];R=z[s+40>>2];aa=z[s+8>>2];ia=z[s+24>>2];d=c;Q=c<<4;ca=Q+(f+128|0)|0;v[ca+12>>2]=0;da=Q+(f- -64|0)|0;v[da+12>>2]=0;Q=Q+(f+192|0)|0;v[Q+12>>2]=0;Z=C(Z+C(C(R*m)+C(C(aa*p)+C(o*ia))));z[ca+8>>2]=Z;ba=C(ba+C(C(W*m)+C(C(O*p)+C(o*Y))));z[ca+4>>2]=ba;m=C(I+C(C(ha*m)+C(C(H*p)+C(o*V))));z[ca>>2]=m;p=C(C(U*g)+C(C(L*l)+C(n*M)));z[da+8>>2]=p;o=C(C(G*g)+C(C(N*l)+C(n*E)));z[da+4>>2]=o;g=C(C(r*g)+C(C(y*l)+C(n*A)));z[da>>2]=g;l=C(Z-p);z[Q+8>>2]=l;n=C(ba-o);z[Q+4>>2]=n;g=C(m-g);z[Q>>2]=g;c=c+1|0;v[f+28>>2]=c;J=J+1|0;if((Ra|0)!=(J|0)){continue}break}k:{l:{switch(d-1|0){case 0:m=z[f+200>>2];g=C(z[f+216>>2]-m);p=z[f+192>>2];l=C(z[f+208>>2]-p);o=z[f+196>>2];n=C(z[f+212>>2]-o);r=C(C(g*g)+C(C(l*l)+C(n*n)));if(!(r<=C(1.1920928955078125e-7))){break k}v[f+28>>2]=1;c=v[f+196>>2];v[f+304>>2]=v[f+192>>2];v[f+308>>2]=c;c=v[f+204>>2];v[f+312>>2]=v[f+200>>2];v[f+316>>2]=c;break i;case 1:iY(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}}P_(f+304|0,f+192|0,f+128|0,f- -64|0,f+48|0,f+32|0,f+28|0);break i}v[f+316>>2]=0;y=g;g=C(F(C(C(C(C(C(-p)*l)-C(n*o))-C(m*g))/r),C(1)));g=g>C(0)?g:C(0);z[f+312>>2]=m+C(y*g);z[f+308>>2]=o+C(n*g);z[f+304>>2]=p+C(l*g);break i}g=z[s+8>>2];n=z[s>>2];l=z[s+4>>2];v[f+268>>2]=0;c=C(C(g*g)+C(C(n*n)+C(l*l)))>C(0);g=c?g:C(0);z[f+264>>2]=g;l=c?l:C(0);z[f+260>>2]=l;n=c?n:C(1);z[f+256>>2]=n;p=C(C(1)/C(K(C(C(g*g)+C(C(n*n)+C(l*l))))));r=C(g*p);y=C(n*p);m=C(34028234663852886e22);p=C(l*p);break h}v[f+316>>2]=0;z[f+312>>2]=l;z[f+308>>2]=n;z[f+304>>2]=g}c=v[f+308>>2];v[f+256>>2]=v[f+304>>2];v[f+260>>2]=c;c=v[f+316>>2];v[f+264>>2]=v[f+312>>2];v[f+268>>2]=c;g=z[f+264>>2];n=z[f+256>>2];l=z[f+260>>2];m=C(K(C(C(g*g)+C(C(n*n)+C(l*l)))));if(!(P>2]=v[f+296>>2];c=v[f+292>>2];v[f+272>>2]=v[f+288>>2];v[f+276>>2]=c;c=v[j+56>>2];ha=z[f+268>>2];s=v[f+28>>2]<<2;d=v[j+52>>2];U=z[d+72>>2];m=C(-n);u=C(C(C(z[j+72>>2]*m)-C(z[j+88>>2]*l))-C(z[j+104>>2]*g));L=z[d- -64>>2];q=g;E=C(C(C(z[j+64>>2]*m)-C(z[j+80>>2]*l))-C(z[j+96>>2]*g));x=l;m=C(C(C(z[j+68>>2]*m)-C(z[j+84>>2]*l))-C(z[j+100>>2]*g));M=z[d+68>>2];H=C(C(U*u)+C(C(L*E)+C(m*M)));V=z[d+88>>2];ba=z[d+80>>2];W=z[d+84>>2];O=C(C(V*u)+C(C(ba*E)+C(m*W)));e=H>O;R=H;H=z[d+56>>2];Y=z[d+48>>2];aa=m;m=z[d+52>>2];u=C(C(H*u)+C(C(Y*E)+C(aa*m)));d=!(RO);v[s+(f+48|0)>>2]=d?e?1:2:0;E=z[c+56>>2];O=z[c+40>>2];Z=z[c+24>>2];R=z[c+52>>2];aa=z[c+36>>2];ia=z[c+20>>2];ja=z[c+8>>2];Ha=z[c+48>>2];na=z[c+32>>2];oa=z[c>>2];ka=z[c+16>>2];pa=z[c+4>>2];c=v[j+44>>2];qa=z[c+56>>2];ra=z[c+52>>2];sa=z[c+72>>2];J=c- -64|0;ta=z[J>>2];ua=z[c+68>>2];u=z[c+88>>2];va=z[c+80>>2];la=z[c+84>>2];ma=z[c+48>>2];v[f+316>>2]=0;fa=C(u*g);u=n;z[f+312>>2]=fa+C(C(va*n)+C(l*la));z[f+308>>2]=C(sa*g)+C(C(ta*n)+C(l*ua));z[f+304>>2]=C(qa*g)+C(C(ma*n)+C(l*ra));Q=s+(f+32|0)|0;s=HV(c,f+304|0);v[Q>>2]=s;g=d?e?U:V:H;l=d?e?L:ba:Y;n=d?e?M:W:m;H=C(E+C(C(O*g)+C(C(ja*l)+C(Z*n))));d=v[c+152>>2]+B(s,12)|0;m=z[d+8>>2];E=z[d>>2];U=z[d+4>>2];V=C(C(z[c+88>>2]*m)+C(C(z[c+56>>2]*E)+C(U*z[c+72>>2])));L=C(H-V);ba=C(Ha+C(C(na*g)+C(C(oa*l)+C(n*ka))));W=C(C(z[c+80>>2]*m)+C(C(z[c+48>>2]*E)+C(U*z[J>>2])));M=C(ba-W);l=C(R+C(C(aa*g)+C(C(pa*l)+C(n*ia))));n=C(C(z[c+84>>2]*m)+C(C(z[c+52>>2]*E)+C(U*z[c+68>>2])));g=C(l-n);m=C(C(r*L)+C(C(y*M)+C(p*g)));if(m>I){c=0;if(!k){break e}e=v[f+28>>2];t[j+215|0]=e;if(!e){break e}d=0;if((e|0)!=1){ca=e&-2;J=0;while(1){s=d<<2;da=f+48|0;t[d+k|0]=v[s+da>>2];Q=f+32|0;t[d+_|0]=v[Q+s>>2];s=d|1;ea=s<<2;t[k+s|0]=v[ea+da>>2];t[s+_|0]=v[ea+Q>>2];d=d+2|0;J=J+2|0;if((ca|0)!=(J|0)){continue}break}}if(!(e&1)){break e}e=d<<2;t[d+k|0]=v[e+(f+48|0)>>2];t[d+_|0]=v[e+(f+32|0)>>2];break e}c=v[f+28>>2];if(m>C(o*C(.9997749924659729))){m:{if(!k){break m}t[j+215|0]=c;if(!c){break m}e=0;if((c|0)!=1){ea=c&-2;s=0;while(1){d=e<<2;ca=f+48|0;t[e+k|0]=v[d+ca>>2];da=f+32|0;t[e+_|0]=v[da+d>>2];d=e|1;J=d<<2;t[d+k|0]=v[J+ca>>2];t[d+_|0]=v[J+da>>2];e=e+2|0;s=s+2|0;if((ea|0)!=(s|0)){continue}break}}if(!(c&1)){break m}d=e<<2;t[e+k|0]=v[d+(f+48|0)>>2];t[e+_|0]=v[d+(f+32|0)>>2]}z[j+160>>2]=y;v[j+172>>2]=0;z[j+168>>2]=r;z[j+164>>2]=p;IV(f+192|0,f+128|0,f- -64|0,f+256|0,f+304|0,f,c);g=z[f+304>>2];l=z[f+308>>2];n=z[f+312>>2];v[j+140>>2]=0;z[j+136>>2]=n-C(A*r);z[j+132>>2]=l-C(A*p);z[j+128>>2]=g-C(A*y);g=z[f>>2];l=z[f+4>>2];n=z[f+8>>2];v[j+156>>2]=0;z[j+152>>2]=n+C(G*r);z[j+148>>2]=l+C(G*p);z[j+144>>2]=g+C(G*y);z[j+192>>2]=o-N;c=2;break e}e=c<<4;d=e+(f+128|0)|0;v[d+12>>2]=0;z[d+8>>2]=H;z[d+4>>2]=l;z[d>>2]=ba;d=e+(f- -64|0)|0;v[d+12>>2]=0;z[d+8>>2]=V;z[d+4>>2]=n;z[d>>2]=W;d=e+(f+192|0)|0;v[d+12>>2]=0;z[d+8>>2]=L;z[d+4>>2]=g;z[d>>2]=M;v[f+28>>2]=c+1;n:{o:{switch(c-1|0){case 0:m=z[f+200>>2];g=C(z[f+216>>2]-m);p=z[f+192>>2];l=C(z[f+208>>2]-p);r=z[f+196>>2];n=C(z[f+212>>2]-r);y=C(C(g*g)+C(C(l*l)+C(n*n)));if(y<=C(1.1920928955078125e-7)){v[f+28>>2]=1;c=v[f+196>>2];v[f+304>>2]=v[f+192>>2];v[f+308>>2]=c;c=v[f+204>>2];v[f+312>>2]=v[f+200>>2];v[f+316>>2]=c;break n}v[f+316>>2]=0;E=g;g=C(F(C(C(C(C(C(-p)*l)-C(n*r))-C(m*g))/y),C(1)));g=g>C(0)?g:C(0);z[f+312>>2]=m+C(E*g);z[f+308>>2]=r+C(n*g);z[f+304>>2]=p+C(l*g);break n;case 1:iY(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:P_(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}}v[f+316>>2]=0;z[f+312>>2]=L;z[f+308>>2]=g;z[f+304>>2]=M}c=v[f+308>>2];v[f+256>>2]=v[f+304>>2];v[f+260>>2]=c;c=v[f+316>>2];v[f+264>>2]=v[f+312>>2];v[f+268>>2]=c;g=z[f+264>>2];n=z[f+256>>2];l=z[f+260>>2];m=C(K(C(C(g*g)+C(C(n*n)+C(l*l)))));y=C(C(1)/m);r=C(g*y);p=C(l*y);y=C(n*y);if(mP){continue}break}e=v[f+28>>2];if(!(m>2];Q=f+32|0;t[d+_|0]=v[Q+J>>2];J=d|1;ea=J<<2;t[k+J|0]=v[ea+da>>2];t[J+_|0]=v[ea+Q>>2];d=d+2|0;s=s+2|0;if((ca|0)!=(s|0)){continue}break}}if(!(c&1)){break p}c=d<<2;t[d+k|0]=v[c+(f+48|0)>>2];t[d+_|0]=v[c+(f+32|0)>>2]}v[f+296>>2]=v[f+280>>2];c=v[f+276>>2];v[f+288>>2]=v[f+272>>2];v[f+292>>2]=c;z[f+268>>2]=ha;z[f+256>>2]=u;z[f+260>>2]=x;z[f+264>>2]=q;IV(f+192|0,f+128|0,f- -64|0,f+256|0,f+304|0,f,e);v[j+188>>2]=0;z[j+184>>2]=r;z[j+180>>2]=p;z[j+176>>2]=y;v[j+172>>2]=0;g=C(C(1)/o);l=C(q*g);z[j+168>>2]=l;n=C(x*g);z[j+164>>2]=n;g=C(u*g);z[j+160>>2]=g;m=z[f+304>>2];p=z[f+308>>2];q=z[f+312>>2];v[j+140>>2]=0;z[j+136>>2]=q-C(A*l);z[j+132>>2]=p-C(A*n);z[j+128>>2]=m-C(A*g);m=z[f>>2];p=z[f+4>>2];q=z[f+8>>2];z[j+192>>2]=o-N;v[j+156>>2]=0;z[j+152>>2]=q+C(G*l);z[j+148>>2]=p+C(G*n);z[j+144>>2]=m+C(G*g);c=2;if(o<=N){break e}c=4;break e}if(k){break f}c=5;break e}e=v[f+28>>2]}t[j+215|0]=e;c=5;if(!e){break e}d=0;if((e|0)!=1){ca=e&-2;J=0;while(1){s=d<<2;da=f+48|0;t[d+k|0]=v[s+da>>2];Q=f+32|0;t[d+_|0]=v[Q+s>>2];s=d|1;ea=s<<2;t[k+s|0]=v[ea+da>>2];t[s+_|0]=v[ea+Q>>2];d=d+2|0;J=J+2|0;if((ca|0)!=(J|0)){continue}break}}if(!(e&1)){break e}e=d<<2;t[d+k|0]=v[e+(f+48|0)>>2];t[d+_|0]=v[e+(f+32|0)>>2]}xa=f+320|0;q:{r:{if(c-5|0){break r}v[j+16>>2]=1065353216;c=v[j+28>>2];v[j+8>>2]=v[j+24>>2];v[j+12>>2]=c;c=v[j+20>>2];v[j>>2]=v[j+16>>2];v[j+4>>2]=c;if(J_(D,La,j+220|0,j+216|0,w[j+215|0],0,j,j+128|0)-5>>>0<=1){break r}v[j+280>>2]=0;v[j+284>>2]=0;v[j+272>>2]=0;v[j+276>>2]=0;g=z[b+328>>2];l=z[b+320>>2];n=z[b+324>>2];v[j+268>>2]=0;m=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(n*n))))));z[j+264>>2]=m*C(-g);z[j+260>>2]=m*C(-n);z[j+256>>2]=m*C(-l);g=C(0);break q}c=v[j+140>>2];v[j+280>>2]=v[j+136>>2];v[j+284>>2]=c;c=v[j+132>>2];v[j+272>>2]=v[j+128>>2];v[j+276>>2]=c;c=v[j+164>>2];v[j+256>>2]=v[j+160>>2];v[j+260>>2]=c;c=v[j+172>>2];v[j+264>>2]=v[j+168>>2];v[j+268>>2]=c;g=z[j+192>>2]}z[b+304>>2]=g>2];v[b+288>>2]=v[j+272>>2];v[b+292>>2]=c;c=v[j+284>>2];v[b+296>>2]=v[j+280>>2];v[b+300>>2]=c;c=v[j+260>>2];v[b+272>>2]=v[j+256>>2];v[b+276>>2]=c;c=v[j+268>>2];v[b+280>>2]=v[j+264>>2];v[b+284>>2]=c}xa=j+288|0;if(a){Ga=z[b+304>>2];g=z[b+296>>2];l=z[b+288>>2];n=z[b+292>>2];m=z[b+280>>2];p=z[b+272>>2];o=z[b+276>>2];q=C(C(T*m)+C(C($*p)+C(S*o)));r=C(-S);y=C(C(C(X*C(C($*o)+C(p*r)))+C(ga*m))+C(T*q));z[h+8>>2]=y+y;y=C(C(S*q)+C(C(ga*o)+C(X*C(C(T*p)+C(m*Fa)))));z[h+4>>2]=y+y;x=o;o=C(-T);m=C(C($*q)+C(C(ga*p)+C(X*C(C(S*m)+C(x*o)))));z[h>>2]=m+m;m=Ga>C(0)?Ga:C(0);p=C(C(T*g)+C(C($*l)+C(S*n)));q=C(C(C(X*C(C($*n)+C(l*r)))+C(ga*g))+C(T*p));z[i+8>>2]=C(Oa*m)+C(Ja+C(q+q));q=C(C(S*p)+C(C(ga*n)+C(X*C(C(T*l)+C(g*Fa)))));z[i+4>>2]=C(Qa*m)+C(Ia+C(q+q));g=C(C($*p)+C(C(ga*l)+C(X*C(C(S*g)+C(n*o)))));z[i>>2]=C(Pa*m)+C(Ka+C(g+g))}xa=b+416|0;return C(Ga)}function SY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),x=C(0),y=C(0),A=0,D=0,E=C(0),G=C(0),H=C(0),I=C(0),J=0,L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=0,Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=0,Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=0,Va=0;k=xa-512|0;xa=k;b=v[b>>2];D=v[a>>2];v[k+168>>2]=0;v[k+172>>2]=0;v[k+160>>2]=0;v[k+164>>2]=0;v[k+188>>2]=4;j=z[D+4>>2];l=z[D+8>>2];v[k+236>>2]=0;v[k+220>>2]=0;m=C(l*C(0));z[k+216>>2]=m;z[k+212>>2]=m;m=C(-m);z[k+232>>2]=m;z[k+228>>2]=m;z[k+240>>2]=j;z[k+208>>2]=l;t[k+192|0]=1;z[k+184>>2]=j;z[k+180>>2]=j;z[k+176>>2]=j;z[k+224>>2]=-l;t[k+32|0]=0;v[k+24>>2]=0;v[k+28>>2]=0;v[k+16>>2]=0;v[k+20>>2]=0;v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;a=v[b+40>>2];j=z[b+8>>2];l=z[b+12>>2];m=z[b+4>>2];v[k+284>>2]=0;z[k+280>>2]=l;z[k+276>>2]=j;z[k+272>>2]=m;A=v[b+16>>2];_=v[b+20>>2];r=v[b+28>>2];v[k+440>>2]=v[b+24>>2];v[k+444>>2]=r;v[k+432>>2]=A;v[k+436>>2]=_;v[k+144>>2]=a;v[k+152>>2]=v[a+40>>2]+B(w[a+39|0],20);t[k+156|0]=w[a+38|0];o=C(m*z[a+52>>2]);n=C(j*z[a+56>>2]);o=n>=o?o:n;n=C(l*z[a+60>>2]);o=n>=o?o:n;z[k+24>>2]=o*C(.02500000037252903);z[k+16>>2]=o*C(.10000000149011612);z[k+20>>2]=o*C(.05000000074505806);A=k+272|0;b=k+432|0;FV(A,b,k+48|0,k+96|0,k,m==C(1)&j==C(1)&l==C(1));v[k+148>>2]=v[a+44>>2];V=z[D+4>>2];v[k+504>>2]=0;v[k+508>>2]=0;v[k+496>>2]=0;v[k+500>>2]=0;Da=z[f+20>>2];u=z[e+20>>2];Ea=z[f+24>>2];s=z[e+24>>2];j=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];o=z[c+12>>2];W=z[d+12>>2];Z=z[d>>2];Fa=z[f+16>>2];y=z[e+16>>2];S=z[d+4>>2];T=z[d+8>>2];v[k+492>>2]=0;v[k+476>>2]=0;v[k+460>>2]=0;za=C(-Z);n=C(y-Fa);p=C(u-Da);q=C(s-Ea);x=C(C(C(za*n)-C(p*S))-C(T*q));ba=C(C(W*W)+C(-.5));G=C(C(C(W*C(C(S*n)-C(Z*p)))+C(ba*q))-C(T*x));z[k+488>>2]=G+G;G=C(C(C(ba*p)+C(W*C(C(Z*q)-C(T*n))))-C(S*x));z[k+484>>2]=G+G;r=k+480|0;n=C(C(C(ba*n)+C(W*C(C(T*p)-C(S*q))))-C(Z*x));z[r>>2]=n+n;p=C(C(C(m*T)-C(S*j))+C(C(l*W)-C(o*Z)));n=C(p+p);q=C(C(C(j*Z)-C(T*l))+C(C(m*W)-C(o*S)));x=C(q+q);G=C(C(1)-C(p*n));H=C(q*x);z[k+472>>2]=G-H;p=C(C(C(l*S)-C(Z*m))+C(C(j*W)-C(o*T)));U=C(p*x);j=C(C(o*W)-C(C(C(za*l)-C(m*S))-C(T*j)));l=C(j*n);z[k+468>>2]=U-l;m=C(p*n);o=C(j*x);z[k+464>>2]=m+o;z[k+456>>2]=U+l;l=C(p+p);p=C(p*l);z[k+452>>2]=G-p;n=C(q*n);j=C(j*l);z[k+448>>2]=n-j;v[k+444>>2]=0;z[k+440>>2]=m-o;z[k+436>>2]=n+j;z[k+432>>2]=C(C(1)-H)-p;m=z[d+20>>2];o=z[c+20>>2];j=z[d+24>>2];l=z[c+24>>2];n=z[d+16>>2];p=z[c+16>>2];v[k+428>>2]=0;La=C(l-s);j=C(C(j-Ea)-La);Ma=C(p-y);l=C(C(n-Fa)-Ma);Na=C(o-u);m=C(C(m-Da)-Na);o=C(C(T*j)+C(C(Z*l)+C(S*m)));n=C(C(C(ba*j)-C(W*C(C(Z*m)-C(S*l))))+C(T*o));z[k+424>>2]=n+n;n=C(C(S*o)+C(C(ba*m)-C(W*C(C(T*l)-C(j*Z)))));z[k+420>>2]=n+n;j=C(C(Z*o)+C(C(ba*l)-C(W*C(C(S*j)-C(m*T)))));z[k+416>>2]=j+j;v[k+352>>2]=0;v[k+272>>2]=142372;v[k+280>>2]=b;v[k+276>>2]=k+160;a=v[k+452>>2];v[k+304>>2]=v[k+448>>2];v[k+308>>2]=a;a=v[k+460>>2];v[k+312>>2]=v[k+456>>2];v[k+316>>2]=a;a=v[k+444>>2];v[k+296>>2]=v[k+440>>2];v[k+300>>2]=a;a=v[k+468>>2];v[k+320>>2]=v[k+464>>2];v[k+324>>2]=a;a=v[k+476>>2];v[k+328>>2]=v[k+472>>2];v[k+332>>2]=a;a=v[r+4>>2];v[k+336>>2]=v[r>>2];v[k+340>>2]=a;a=v[k+492>>2];v[k+344>>2]=v[k+488>>2];v[k+348>>2]=a;a=v[k+436>>2];v[k+288>>2]=v[k+432>>2];v[k+292>>2]=a;j=z[k+292>>2];z[k+292>>2]=z[k+304>>2];l=z[k+312>>2];m=z[k+296>>2];z[k+296>>2]=z[k+320>>2];z[k+312>>2]=z[k+324>>2];z[k+320>>2]=m;z[k+324>>2]=l;z[k+304>>2]=j;v[k+264>>2]=141216;v[k+268>>2]=k;Aa=C(34028234663852886e22);e=xa-288|0;xa=e;V=C(C(V+g)+C(0));a=xa-272|0;xa=a;v[a+248>>2]=0;v[a+252>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;G=z[k+504>>2];U=z[k+500>>2];H=z[k+496>>2];$=z[k+424>>2];I=z[k+420>>2];M=z[k+416>>2];v[a+224>>2]=1;b=v[A+8>>2];E=z[b+52>>2];ca=z[b+36>>2];P=z[b+20>>2];X=z[b+56>>2];da=z[b+40>>2];ea=z[b+24>>2];c=v[A+4>>2];p=z[c+56>>2];q=z[c+52>>2];x=z[c+72>>2];L=z[A+56>>2];O=z[A+24>>2];R=z[A+40>>2];fa=z[A+48>>2];ha=z[A+32>>2];u=z[c+68>>2];ga=z[A+52>>2];ja=z[A+20>>2];ma=z[A+36>>2];na=z[b+48>>2];ka=z[b+32>>2];oa=z[b>>2];pa=z[b+16>>2];qa=z[b+4>>2];Ga=z[b+8>>2];s=z[c+48>>2];y=z[c+64>>2];Ha=z[A+16>>2];g=z[r+8>>2];j=z[r>>2];l=z[r+4>>2];Ia=k+264|0;d=Ia;b=v[d+4>>2];n=z[b+56>>2];ra=z[b+52>>2];sa=z[b+72>>2];D=b- -64|0;ta=z[D>>2];ua=z[b+68>>2];m=z[b+88>>2];va=z[b+80>>2];wa=z[b+84>>2];ya=z[b+48>>2];f=0;v[a+172>>2]=0;aa=m;c=C(C(g*g)+C(C(j*j)+C(l*l)))>C(1.1920928955078125e-7);g=c?g:C(0);j=c?j:C(1);m=c?l:C(0);o=C(C(1)/C(K(C(C(g*g)+C(C(j*j)+C(m*m))))));g=C(g*o);l=C(j*o);j=C(m*o);z[a+168>>2]=C(aa*g)+C(C(va*l)+C(wa*j));z[a+164>>2]=C(sa*g)+C(C(ta*l)+C(j*ua));z[a+160>>2]=C(n*g)+C(C(ya*l)+C(j*ra));c=HV(b,a+160|0);ra=z[D>>2];sa=z[b+80>>2];ta=z[b+84>>2];ua=z[b+52>>2];va=z[b+68>>2];wa=z[b+88>>2];c=v[b+152>>2]+B(c,12)|0;m=z[c+8>>2];ya=z[b+56>>2];o=z[c>>2];Ja=z[b+72>>2];n=z[c+4>>2];Ka=z[b+48>>2];v[a+180>>2]=0;v[a+184>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+172>>2]=0;v[a+176>>2]=0;aa=X;la=p;l=C(-l);p=C(C(C(O*l)-C(R*j))-C(L*g));X=C(C(C(Ha*l)-C(ha*j))-C(fa*g));g=C(C(C(ja*l)-C(ma*j))-C(ga*g));b=C(C(la*p)+C(C(s*X)+C(q*g)))>C(C(x*p)+C(C(y*X)+C(g*u)));g=b?la:x;j=b?s:y;l=b?q:u;p=C(aa+C(C(da*g)+C(C(Ga*j)+C(ea*l))));x=C(C(wa*m)+C(C(ya*o)+C(n*Ja)));u=C(p-x);z[a+168>>2]=u;y=C(E+C(C(ca*g)+C(C(qa*j)+C(l*P))));E=C(C(ta*m)+C(C(ua*o)+C(n*va)));s=C(y-E);z[a+164>>2]=s;g=C(na+C(C(ka*g)+C(C(oa*j)+C(l*pa))));j=C(C(sa*m)+C(C(Ka*o)+C(n*ra)));q=C(g-j);z[a+160>>2]=q;v[a+116>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+108>>2]=0;v[a+112>>2]=0;z[a+104>>2]=p;z[a+100>>2]=y;z[a+96>>2]=g;v[a+52>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;z[a+40>>2]=x;z[a+36>>2]=E;z[a+32>>2]=j;g=C(-u);j=C(-s);l=C(-q);y=C(C(u*u)+C(C(q*q)+C(s*s)));m=z[v[d+4>>2]+24>>2];m=C((mma)){m=l;n=j;p=g;G=C(0);x=q;o=s;V=u;break b}da=C(m+V);na=C(da*da);H=C(C(M*C(0))+H);U=C(C(I*C(0))+U);$=C(C($*C(0))+G);G=C(0);p=g;n=j;m=l;while(1){x=q;o=s;V=u;b=v[A+8>>2];ja=z[b+56>>2];ka=z[b+40>>2];oa=z[b+24>>2];ha=z[b+52>>2];ga=z[b+36>>2];pa=z[b+20>>2];c=v[A+4>>2];u=z[c+56>>2];s=z[c+52>>2];E=z[c+72>>2];P=z[c+68>>2];qa=z[b+8>>2];L=z[b+48>>2];O=z[b+32>>2];R=z[b>>2];fa=z[b+16>>2];Ga=z[b+4>>2];X=z[c+48>>2];Ha=z[A+56>>2];ra=z[A+24>>2];sa=z[A+40>>2];ea=z[c+64>>2];ta=z[A+48>>2];ua=z[A+16>>2];va=z[A+32>>2];wa=z[A+52>>2];ya=z[A+20>>2];Ja=z[A+36>>2];b=v[d+4>>2];Ka=z[b+52>>2];Pa=z[b+56>>2];Qa=z[b+72>>2];f=b- -64|0;Ra=z[f>>2];Sa=z[b+68>>2];Ta=z[b+88>>2];q=z[b+80>>2];I=z[b+84>>2];Ba=z[b+48>>2];v[a+268>>2]=0;la=q;M=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));q=C(l*M);ca=C(-q);aa=I;I=C(j*M);M=C(g*M);z[a+264>>2]=C(C(la*ca)-C(aa*I))-C(Ta*M);z[a+260>>2]=C(C(Ra*ca)-C(Sa*I))-C(Qa*M);z[a+256>>2]=C(C(Ba*ca)-C(Ka*I))-C(Pa*M);D=HV(b,a+256|0);la=L;aa=O;Ba=u;u=C(C(Ha*M)+C(C(ra*q)+C(I*sa)));L=C(C(ta*M)+C(C(ua*q)+C(I*va)));O=C(C(wa*M)+C(C(ya*q)+C(I*Ja)));c=C(C(Ba*u)+C(C(X*L)+C(s*O)))>C(C(E*u)+C(C(ea*L)+C(O*P)));u=c?Ba:E;E=c?X:ea;s=c?s:P;ea=C(la+C(C(aa*u)+C(C(R*E)+C(fa*s))));c=v[b+152>>2]+B(D,12)|0;L=z[c+8>>2];O=z[c>>2];R=z[c+4>>2];fa=C(H+C(C(z[b+80>>2]*L)+C(C(z[b+48>>2]*O)+C(R*z[f>>2]))));P=C(ea-fa);ha=C(ha+C(C(ga*u)+C(C(Ga*E)+C(s*pa))));ga=C(U+C(C(z[b+84>>2]*L)+C(C(z[b+52>>2]*O)+C(R*z[b+68>>2]))));X=C(ha-ga);ja=C(ja+C(C(ka*u)+C(C(qa*E)+C(s*oa))));L=C($+C(C(z[b+88>>2]*L)+C(C(z[b+56>>2]*O)+C(R*z[b+72>>2]))));E=C(ja-L);u=C(C(C(C(q*C(-P))-C(I*X))-C(M*E))-da);if(u>C(0)){c=0;s=z[k+424>>2];O=z[k+416>>2];R=z[k+420>>2];ka=C(C(M*s)+C(C(q*O)+C(I*R)));if(ka>=C(0)){break a}q=G;G=C(q-C(u/ka));if(G>q){if(G>C(1)){break a}p=z[k+504>>2];n=z[k+500>>2];m=z[k+496>>2];v[a+76>>2]=0;v[a+60>>2]=0;v[a+44>>2]=0;q=C(m+C(O*G));m=C(q-H);y=C(m+z[a+64>>2]);z[a+64>>2]=y;u=C(n+C(R*G));n=C(u-U);H=C(n+z[a+68>>2]);z[a+68>>2]=H;s=C(p+C(s*G));p=C(s-$);U=C(p+z[a+72>>2]);z[a+72>>2]=U;$=C(m+z[a+48>>2]);z[a+48>>2]=$;E=C(n+z[a+52>>2]);z[a+52>>2]=E;P=C(p+z[a+56>>2]);z[a+56>>2]=P;m=C(m+z[a+32>>2]);z[a+32>>2]=m;n=C(n+z[a+36>>2]);z[a+36>>2]=n;p=C(p+z[a+40>>2]);z[a+40>>2]=p;X=z[a+96>>2];L=z[a+100>>2];O=z[a+104>>2];v[a+172>>2]=0;z[a+168>>2]=O-p;z[a+164>>2]=L-n;z[a+160>>2]=X-m;m=z[a+112>>2];n=z[a+116>>2];p=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=p-P;z[a+180>>2]=n-E;z[a+176>>2]=m-$;m=z[a+128>>2];n=z[a+132>>2];p=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=p-U;z[a+196>>2]=n-H;z[a+192>>2]=m-y;b=v[d+4>>2];p=z[b+56>>2];y=z[b+52>>2];H=z[b+72>>2];f=b- -64|0;U=z[f>>2];$=z[b+68>>2];m=z[b+88>>2];n=z[b+80>>2];E=z[b+84>>2];P=z[b+48>>2];v[a+268>>2]=0;aa=m;m=C(-M);la=C(n*ca);n=C(-I);z[a+264>>2]=C(aa*m)+C(la+C(E*n));z[a+260>>2]=C(H*m)+C(C(U*ca)+C($*n));z[a+256>>2]=C(p*m)+C(C(P*ca)+C(y*n));c=HV(b,a+256|0);c=v[b+152>>2]+B(c,12)|0;m=z[c+8>>2];n=z[c>>2];p=z[c+4>>2];L=C(s+C(C(z[b+88>>2]*m)+C(C(z[b+56>>2]*n)+C(p*z[b+72>>2]))));E=C(ja-L);ga=C(u+C(C(z[b+84>>2]*m)+C(C(z[b+52>>2]*n)+C(p*z[b+68>>2]))));X=C(ha-ga);fa=C(q+C(C(z[b+80>>2]*m)+C(C(z[b+48>>2]*n)+C(p*z[f>>2]))));P=C(ea-fa);m=l;n=j;p=g;H=q;U=u;$=s;g=C(34028234663852886e22)}else{g=y}}else{g=y}I=g;c=v[a+224>>2];f=c<<4;b=f+(a+96|0)|0;v[b+12>>2]=0;z[b+8>>2]=ja;z[b+4>>2]=ha;z[b>>2]=ea;b=f+(a+32|0)|0;v[b+12>>2]=0;z[b+8>>2]=L;z[b+4>>2]=ga;z[b>>2]=fa;b=f+(a+160|0)|0;v[b+12>>2]=0;z[b+8>>2]=E;z[b+4>>2]=X;z[b>>2]=P;v[a+224>>2]=c+1;c:{d:{switch(c-1|0){case 0:q=z[a+168>>2];g=C(z[a+184>>2]-q);u=z[a+160>>2];j=C(z[a+176>>2]-u);s=z[a+164>>2];l=C(z[a+180>>2]-s);y=C(C(g*g)+C(C(j*j)+C(l*l)));if(y<=C(1.1920928955078125e-7)){v[a+224>>2]=1;b=v[a+164>>2];v[a+256>>2]=v[a+160>>2];v[a+260>>2]=b;b=v[a+172>>2];v[a+264>>2]=v[a+168>>2];v[a+268>>2]=b;break c}aa=g;g=C(F(C(C(C(C(C(-u)*j)-C(l*s))-C(q*g))/y),C(1)));g=g>C(0)?g:C(0);z[a+264>>2]=q+C(aa*g);z[a+260>>2]=s+C(l*g);z[a+256>>2]=u+C(j*g);break c;case 1:JV(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;case 2:N_(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;default:break d}}z[a+264>>2]=E;z[a+260>>2]=X;z[a+256>>2]=P}u=z[a+264>>2];g=C(-u);s=z[a+260>>2];j=C(-s);q=z[a+256>>2];l=C(-q);y=C(C(u*u)+C(C(q*q)+C(s*s)));if(na>2]+32|0];H=C(0);E=C(0);c=!(y>ma)|f;g=c?p:g;l=c?m:l;j=c?n:j;m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!(m<=C(1.1920928955078125e-7))){p=g;g=C(C(1)/m);Ca=C(p*g);E=C(l*g);H=C(j*g)}v[e+268>>2]=0;z[e+264>>2]=-Ca;z[e+260>>2]=-H;z[e+256>>2]=-E;z[e+240>>2]=G;v[e+252>>2]=v[a+236>>2];c=v[a+232>>2];v[e+244>>2]=v[a+228>>2];v[e+248>>2]=c;v[a+268>>2]=0;z[a+264>>2]=f?V:u;z[a+260>>2]=f?o:s;z[a+256>>2]=f?x:q;c=v[a+252>>2];f=v[a+248>>2];v[a+24>>2]=f;v[a+28>>2]=c;d=v[a+244>>2];D=v[a+240>>2];v[a+16>>2]=D;v[a+20>>2]=d;v[a+8>>2]=f;v[a+12>>2]=c;v[a>>2]=D;v[a+4>>2]=d;IV(a+160|0,a+96|0,a+32|0,a+256|0,a+16|0,a,v[a+224>>2]);g=z[v[A+4>>2]+16>>2];j=z[a+16>>2];l=z[a+20>>2];m=z[a+24>>2];v[e+284>>2]=0;z[e+280>>2]=m+(b?C(Ca*g):C(-0));z[e+276>>2]=l+(b?C(H*g):C(-0));z[e+272>>2]=j+(b?C(E*g):C(-0));c=1}xa=a+272|0;a=c;if(a){b=v[e+244>>2];v[k+400>>2]=v[e+240>>2];v[k+404>>2]=b;b=v[e+252>>2];v[k+408>>2]=v[e+248>>2];v[k+412>>2]=b;if(z[e+240>>2]==C(0)){c=v[A+4>>2];d=v[Ia+4>>2];z[e+224>>2]=C(z[c+16>>2]+z[d+16>>2])*C(100);t[e+215|0]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;v[e+152>>2]=0;v[e+156>>2]=0;v[e+144>>2]=0;v[e+148>>2]=0;v[e+136>>2]=0;v[e+140>>2]=0;v[e+128>>2]=0;v[e+132>>2]=0;v[e+192>>2]=0;b=v[A+8>>2];v[e+56>>2]=b;v[e+48>>2]=142372;v[e+52>>2]=c;c=v[b+12>>2];v[e+72>>2]=v[b+8>>2];v[e+76>>2]=c;c=v[b+20>>2];v[e+80>>2]=v[b+16>>2];v[e+84>>2]=c;c=v[b+28>>2];v[e+88>>2]=v[b+24>>2];v[e+92>>2]=c;c=v[b+36>>2];v[e+96>>2]=v[b+32>>2];v[e+100>>2]=c;c=v[b+44>>2];v[e+104>>2]=v[b+40>>2];v[e+108>>2]=c;c=v[b+52>>2];v[e+112>>2]=v[b+48>>2];v[e+116>>2]=c;c=v[b+60>>2];v[e+120>>2]=v[b+56>>2];v[e+124>>2]=c;c=v[b+4>>2];v[e+64>>2]=v[b>>2];v[e+68>>2]=c;g=z[e+68>>2];z[e+68>>2]=z[e+80>>2];j=z[e+88>>2];l=z[e+72>>2];z[e+72>>2]=z[e+96>>2];z[e+80>>2]=g;z[e+96>>2]=l;z[e+88>>2]=z[e+100>>2];z[e+100>>2]=j;v[e+40>>2]=141216;v[e+44>>2]=d;D=e+220|0;_=e+216|0;d=xa-320|0;xa=d;f=v[e+44>>2];g=z[f+20>>2];b=v[e+52>>2];j=z[b+20>>2];p=z[e+224>>2];ia=w[b+32|0];u=z[b+16>>2];Ua=w[f+32|0];s=z[f+16>>2];v[d+28>>2]=0;$=C((g>2];b=0;while(1){c=J<<2;Q=w[D+J|0];v[c+(d+48|0)>>2]=Q;Y=c+(d+32|0)|0;c=w[J+_|0];v[Y>>2]=c;c=v[f+152>>2]+B(c,12)|0;g=z[c+8>>2];j=z[c>>2];l=z[c+4>>2];c=(1-Q<<4)+Va|0;m=z[c+8>>2];o=z[c>>2];n=z[c+4>>2];q=z[f+80>>2];x=z[f+48>>2];y=z[f+64>>2];V=z[f+84>>2];G=z[f+52>>2];H=z[f+68>>2];U=z[f+88>>2];I=z[f+56>>2];M=z[f+72>>2];E=z[r+48>>2];ca=z[r+32>>2];P=z[r>>2];X=z[r+16>>2];da=z[r+52>>2];ea=z[r+36>>2];L=z[r+4>>2];O=z[r+20>>2];R=z[r+56>>2];fa=z[r+40>>2];ha=z[r+8>>2];ga=z[r+24>>2];c=b;N=b<<4;Q=N+(d+128|0)|0;v[Q+12>>2]=0;Y=N+(d- -64|0)|0;v[Y+12>>2]=0;N=N+(d+192|0)|0;v[N+12>>2]=0;R=C(R+C(C(fa*m)+C(C(ha*o)+C(n*ga))));z[Q+8>>2]=R;da=C(da+C(C(ea*m)+C(C(L*o)+C(n*O))));z[Q+4>>2]=da;m=C(E+C(C(ca*m)+C(C(P*o)+C(n*X))));z[Q>>2]=m;o=C(C(U*g)+C(C(I*j)+C(l*M)));z[Y+8>>2]=o;n=C(C(V*g)+C(C(G*j)+C(l*H)));z[Y+4>>2]=n;g=C(C(q*g)+C(C(x*j)+C(l*y)));z[Y>>2]=g;j=C(R-o);z[N+8>>2]=j;l=C(da-n);z[N+4>>2]=l;g=C(m-g);z[N>>2]=g;b=b+1|0;v[d+28>>2]=b;J=J+1|0;if((Oa|0)!=(J|0)){continue}break}k:{l:{switch(c-1|0){case 0:m=z[d+200>>2];g=C(z[d+216>>2]-m);o=z[d+192>>2];j=C(z[d+208>>2]-o);n=z[d+196>>2];l=C(z[d+212>>2]-n);q=C(C(g*g)+C(C(j*j)+C(l*l)));if(!(q<=C(1.1920928955078125e-7))){break k}v[d+28>>2]=1;b=v[d+196>>2];v[d+304>>2]=v[d+192>>2];v[d+308>>2]=b;b=v[d+204>>2];v[d+312>>2]=v[d+200>>2];v[d+316>>2]=b;break i;case 1:iY(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}}P_(d+304|0,d+192|0,d+128|0,d- -64|0,d+48|0,d+32|0,d+28|0);break i}v[d+316>>2]=0;V=g;g=C(F(C(C(C(C(C(-o)*j)-C(l*n))-C(m*g))/q),C(1)));g=g>C(0)?g:C(0);z[d+312>>2]=m+C(V*g);z[d+308>>2]=n+C(l*g);z[d+304>>2]=o+C(j*g);break i}g=z[r+8>>2];l=z[r>>2];j=z[r+4>>2];v[d+268>>2]=0;b=C(C(g*g)+C(C(l*l)+C(j*j)))>C(0);g=b?g:C(0);z[d+264>>2]=g;j=b?j:C(0);z[d+260>>2]=j;l=b?l:C(1);z[d+256>>2]=l;o=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));q=C(g*o);x=C(l*o);m=C(34028234663852886e22);o=C(j*o);break h}v[d+316>>2]=0;z[d+312>>2]=j;z[d+308>>2]=l;z[d+304>>2]=g}b=v[d+308>>2];v[d+256>>2]=v[d+304>>2];v[d+260>>2]=b;b=v[d+316>>2];v[d+264>>2]=v[d+312>>2];v[d+268>>2]=b;g=z[d+264>>2];l=z[d+256>>2];j=z[d+260>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!($>2]=v[d+296>>2];b=v[d+292>>2];v[d+272>>2]=v[d+288>>2];v[d+276>>2]=b;b=v[e+56>>2];ca=z[d+268>>2];r=v[d+28>>2]<<2;c=v[e+52>>2];J=c+56|0;m=C(-l);s=C(C(C(z[e+72>>2]*m)-C(z[e+88>>2]*j))-C(z[e+104>>2]*g));p=g;H=C(C(C(z[e+64>>2]*m)-C(z[e+80>>2]*j))-C(z[e+96>>2]*g));u=j;m=C(C(C(z[e+68>>2]*m)-C(z[e+84>>2]*j))-C(z[e+100>>2]*g));Q=c+52|0;Y=c+72|0;N=c+68|0;f=C(C(z[J>>2]*s)+C(C(z[c+48>>2]*H)+C(m*z[Q>>2])))>C(C(z[Y>>2]*s)+C(C(z[c+64>>2]*H)+C(m*z[N>>2])));v[r+(d+48|0)>>2]=f;m=z[(f?J:Y)>>2];H=z[(f?c+48|0:c- -64|0)>>2];U=z[(f?Q:N)>>2];I=z[b+56>>2];M=z[b+40>>2];P=z[b+24>>2];X=z[b+52>>2];da=z[b+36>>2];ea=z[b+20>>2];L=z[b+8>>2];O=z[b+48>>2];R=z[b+32>>2];fa=z[b>>2];ha=z[b+16>>2];ga=z[b+4>>2];b=v[e+44>>2];ja=z[b+56>>2];Ca=z[b+52>>2];ma=z[b+72>>2];f=b- -64|0;na=z[f>>2];ka=z[b+68>>2];s=z[b+88>>2];oa=z[b+80>>2];pa=z[b+84>>2];qa=z[b+48>>2];v[d+316>>2]=0;aa=C(s*g);s=l;z[d+312>>2]=aa+C(C(oa*l)+C(j*pa));z[d+308>>2]=C(ma*g)+C(C(na*l)+C(j*ka));z[d+304>>2]=C(ja*g)+C(C(qa*l)+C(j*Ca));c=HV(b,d+304|0);v[r+(d+32|0)>>2]=c;P=C(I+C(C(M*m)+C(C(L*H)+C(U*P))));c=v[b+152>>2]+B(c,12)|0;g=z[c+8>>2];j=z[c>>2];l=z[c+4>>2];L=C(C(z[b+88>>2]*g)+C(C(z[b+56>>2]*j)+C(l*z[b+72>>2])));I=C(P-L);O=C(O+C(C(R*m)+C(C(fa*H)+C(U*ha))));R=C(C(z[b+80>>2]*g)+C(C(z[b+48>>2]*j)+C(l*z[f>>2])));M=C(O-R);m=C(X+C(C(da*m)+C(C(ga*H)+C(U*ea))));j=C(C(z[b+84>>2]*g)+C(C(z[b+52>>2]*j)+C(l*z[b+68>>2])));g=C(m-j);l=C(C(q*I)+C(C(x*M)+C(o*g)));if(l>E){b=0;if(!D){break e}f=v[d+28>>2];t[e+215|0]=f;if(!f){break e}c=0;if((f|0)!=1){Y=f&-2;J=0;while(1){r=c<<2;N=d+48|0;t[c+D|0]=v[r+N>>2];ia=d+32|0;t[c+_|0]=v[ia+r>>2];r=c|1;Q=r<<2;t[r+D|0]=v[Q+N>>2];t[r+_|0]=v[Q+ia>>2];c=c+2|0;J=J+2|0;if((Y|0)!=(J|0)){continue}break}}if(!(f&1)){break e}f=c<<2;t[c+D|0]=v[f+(d+48|0)>>2];t[c+_|0]=v[f+(d+32|0)>>2];break e}b=v[d+28>>2];if(l>C(n*C(.9997749924659729))){m:{if(!D){break m}t[e+215|0]=b;if(!b){break m}f=0;if((b|0)!=1){Q=b&-2;r=0;while(1){c=f<<2;Y=d+48|0;t[f+D|0]=v[c+Y>>2];N=d+32|0;t[f+_|0]=v[N+c>>2];c=f|1;J=c<<2;t[c+D|0]=v[J+Y>>2];t[c+_|0]=v[J+N>>2];f=f+2|0;r=r+2|0;if((Q|0)!=(r|0)){continue}break}}if(!(b&1)){break m}c=f<<2;t[f+D|0]=v[c+(d+48|0)>>2];t[f+_|0]=v[c+(d+32|0)>>2]}z[e+160>>2]=x;v[e+172>>2]=0;z[e+168>>2]=q;z[e+164>>2]=o;IV(d+192|0,d+128|0,d- -64|0,d+256|0,d+304|0,d,b);g=z[d+304>>2];j=z[d+308>>2];l=z[d+312>>2];v[e+140>>2]=0;z[e+136>>2]=l-C(y*q);z[e+132>>2]=j-C(y*o);z[e+128>>2]=g-C(y*x);g=z[d>>2];j=z[d+4>>2];l=z[d+8>>2];v[e+156>>2]=0;z[e+152>>2]=l+C(V*q);z[e+148>>2]=j+C(V*o);z[e+144>>2]=g+C(V*x);z[e+192>>2]=n-G;b=2;break e}f=b<<4;c=f+(d+128|0)|0;v[c+12>>2]=0;z[c+8>>2]=P;z[c+4>>2]=m;z[c>>2]=O;c=f+(d- -64|0)|0;v[c+12>>2]=0;z[c+8>>2]=L;z[c+4>>2]=j;z[c>>2]=R;c=f+(d+192|0)|0;v[c+12>>2]=0;z[c+8>>2]=I;z[c+4>>2]=g;z[c>>2]=M;v[d+28>>2]=b+1;n:{o:{switch(b-1|0){case 0:m=z[d+200>>2];g=C(z[d+216>>2]-m);o=z[d+192>>2];j=C(z[d+208>>2]-o);q=z[d+196>>2];l=C(z[d+212>>2]-q);x=C(C(g*g)+C(C(j*j)+C(l*l)));if(x<=C(1.1920928955078125e-7)){v[d+28>>2]=1;b=v[d+196>>2];v[d+304>>2]=v[d+192>>2];v[d+308>>2]=b;b=v[d+204>>2];v[d+312>>2]=v[d+200>>2];v[d+316>>2]=b;break n}v[d+316>>2]=0;I=g;g=C(F(C(C(C(C(C(-o)*j)-C(l*q))-C(m*g))/x),C(1)));g=g>C(0)?g:C(0);z[d+312>>2]=m+C(I*g);z[d+308>>2]=q+C(l*g);z[d+304>>2]=o+C(j*g);break n;case 1:iY(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:P_(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}}v[d+316>>2]=0;z[d+312>>2]=I;z[d+308>>2]=g;z[d+304>>2]=M}b=v[d+308>>2];v[d+256>>2]=v[d+304>>2];v[d+260>>2]=b;b=v[d+316>>2];v[d+264>>2]=v[d+312>>2];v[d+268>>2]=b;g=z[d+264>>2];l=z[d+256>>2];j=z[d+260>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));x=C(C(1)/m);q=C(g*x);o=C(j*x);x=C(l*x);if(m$){continue}break}f=v[d+28>>2];if(!(m>2];ia=d+32|0;t[c+_|0]=v[ia+J>>2];J=c|1;Q=J<<2;t[D+J|0]=v[Q+N>>2];t[J+_|0]=v[Q+ia>>2];c=c+2|0;r=r+2|0;if((Y|0)!=(r|0)){continue}break}}if(!(b&1)){break p}b=c<<2;t[c+D|0]=v[b+(d+48|0)>>2];t[c+_|0]=v[b+(d+32|0)>>2]}v[d+296>>2]=v[d+280>>2];b=v[d+276>>2];v[d+288>>2]=v[d+272>>2];v[d+292>>2]=b;z[d+268>>2]=ca;z[d+256>>2]=s;z[d+260>>2]=u;z[d+264>>2]=p;IV(d+192|0,d+128|0,d- -64|0,d+256|0,d+304|0,d,f);v[e+188>>2]=0;z[e+184>>2]=q;z[e+180>>2]=o;z[e+176>>2]=x;v[e+172>>2]=0;g=C(C(1)/n);j=C(p*g);z[e+168>>2]=j;l=C(u*g);z[e+164>>2]=l;g=C(s*g);z[e+160>>2]=g;m=z[d+304>>2];o=z[d+308>>2];p=z[d+312>>2];v[e+140>>2]=0;z[e+136>>2]=p-C(y*j);z[e+132>>2]=o-C(y*l);z[e+128>>2]=m-C(y*g);m=z[d>>2];o=z[d+4>>2];p=z[d+8>>2];z[e+192>>2]=n-G;v[e+156>>2]=0;z[e+152>>2]=p+C(V*j);z[e+148>>2]=o+C(V*l);z[e+144>>2]=m+C(V*g);b=2;if(n<=G){break e}b=4;break e}if(D){break f}b=5;break e}f=v[d+28>>2]}t[e+215|0]=f;b=5;if(!f){break e}c=0;if((f|0)!=1){Y=f&-2;J=0;while(1){r=c<<2;N=d+48|0;t[c+D|0]=v[r+N>>2];ia=d+32|0;t[c+_|0]=v[ia+r>>2];r=c|1;Q=r<<2;t[r+D|0]=v[Q+N>>2];t[r+_|0]=v[Q+ia>>2];c=c+2|0;J=J+2|0;if((Y|0)!=(J|0)){continue}break}}if(!(f&1)){break e}f=c<<2;t[c+D|0]=v[f+(d+48|0)>>2];t[c+_|0]=v[f+(d+32|0)>>2]}xa=d+320|0;q:{r:{if(b-5|0){break r}v[e+16>>2]=1065353216;b=v[e+28>>2];v[e+8>>2]=v[e+24>>2];v[e+12>>2]=b;b=v[e+20>>2];v[e>>2]=v[e+16>>2];v[e+4>>2]=b;if(J_(A,Ia,e+220|0,e+216|0,w[e+215|0],0,e,e+128|0)-5>>>0<=1){break r}v[e+280>>2]=0;v[e+284>>2]=0;v[e+272>>2]=0;v[e+276>>2]=0;g=z[k+424>>2];j=z[k+416>>2];l=z[k+420>>2];v[e+268>>2]=0;m=C(C(1)/C(K(C(C(g*g)+C(C(j*j)+C(l*l))))));z[e+264>>2]=m*C(-g);z[e+260>>2]=m*C(-l);z[e+256>>2]=m*C(-j);g=C(0);break q}b=v[e+140>>2];v[e+280>>2]=v[e+136>>2];v[e+284>>2]=b;b=v[e+132>>2];v[e+272>>2]=v[e+128>>2];v[e+276>>2]=b;b=v[e+164>>2];v[e+256>>2]=v[e+160>>2];v[e+260>>2]=b;b=v[e+172>>2];v[e+264>>2]=v[e+168>>2];v[e+268>>2]=b;g=z[e+192>>2]}z[k+400>>2]=g>2];v[k+384>>2]=v[e+272>>2];v[k+388>>2]=b;b=v[e+284>>2];v[k+392>>2]=v[e+280>>2];v[k+396>>2]=b;b=v[e+260>>2];v[k+368>>2]=v[e+256>>2];v[k+372>>2]=b;b=v[e+268>>2];v[k+376>>2]=v[e+264>>2];v[k+380>>2]=b}xa=e+288|0;if(a){Aa=z[k+400>>2];g=z[k+392>>2];j=z[k+384>>2];l=z[k+388>>2];m=z[k+376>>2];o=z[k+368>>2];n=z[k+372>>2];p=C(C(T*m)+C(C(Z*o)+C(S*n)));q=C(-S);x=C(C(C(W*C(C(Z*n)+C(o*q)))+C(ba*m))+C(T*p));z[h+8>>2]=x+x;x=C(C(S*p)+C(C(ba*n)+C(W*C(C(T*o)+C(m*za)))));z[h+4>>2]=x+x;u=n;n=C(-T);m=C(C(Z*p)+C(C(ba*o)+C(W*C(C(S*m)+C(u*n)))));z[h>>2]=m+m;m=Aa>C(0)?Aa:C(0);o=C(C(T*g)+C(C(Z*j)+C(S*l)));p=C(C(C(W*C(C(Z*l)+C(j*q)))+C(ba*g))+C(T*o));z[i+8>>2]=C(La*m)+C(Ea+C(p+p));p=C(C(S*o)+C(C(ba*l)+C(W*C(C(T*j)+C(g*za)))));z[i+4>>2]=C(Na*m)+C(Da+C(p+p));g=C(C(Z*o)+C(C(ba*j)+C(W*C(C(S*g)+C(l*n)))));z[i>>2]=C(Ma*m)+C(Fa+C(g+g))}xa=k+512|0;return C(Aa)}function nu(a,b,c,d){var e=0,f=C(0),g=0,h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=0,s=C(0),y=C(0),A=0,D=C(0),E=0,F=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=0,la=0,ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=0,ta=C(0),ua=0,va=C(0),wa=C(0),ya=C(0),za=0,Aa=0,Ca=0,Da=0,Ea=C(0),Fa=0,Ga=0;e=xa-336|0;xa=e;f=C(Ba[v[v[c>>2]+280>>2]](c,0));a:{if(f==C(0)){break a}j=v[a>>2];ka=x[a+4>>1];if(ka>>>0>=2){sa=C(Ba[v[v[c>>2]+280>>2]](c,14))!=C(0)}O=w[c+5580|0]&64?c+5272|0:v[c+1008>>2]+1128|0;wa=C(Ba[v[v[c>>2]+280>>2]](c,11));ta=C(Ba[v[v[c>>2]+280>>2]](c,12));ya=C(Ba[v[v[c>>2]+280>>2]](c,16));i=C(Ba[v[v[c>>2]+280>>2]](c,15));h=z[O+12>>2];m=z[O>>2];l=C(Ba[v[v[c>>2]+280>>2]](c,13));Ba[v[v[d>>2]+76>>2]](e- -64|0,d);if(!ka){break a}Ca=(ka|0)==1?a:j;za=ta!=C(0);Aa=za|i!=C(0)|ya!=C(0);la=h>2];d=v[c+40>>2];o=v[c+36>>2];a=o&4?d:c+80|0;q=z[a+24>>2];s=z[a+20>>2];y=z[a+16>>2];f=z[e+76>>2];l=z[a+12>>2];k=z[a>>2];i=z[e+64>>2];h=z[e+68>>2];n=z[a+4>>2];m=z[e+72>>2];p=z[a+8>>2];z[e+44>>2]=C(C(C(f*l)-C(k*i))-C(h*n))-C(m*p);z[e+40>>2]=C(C(i*n)+C(C(f*p)+C(m*l)))-C(k*h);z[e+36>>2]=C(C(m*k)+C(C(f*n)+C(h*l)))-C(p*i);z[e+32>>2]=C(C(h*p)+C(C(f*k)+C(i*l)))-C(n*m);l=C(q+q);k=C(y+y);n=C(s+s);p=C(C(m*l)+C(C(i*k)+C(h*n)));q=C(C(f*f)+C(-.5));z[e+56>>2]=z[e+88>>2]+C(C(m*p)+C(C(l*q)+C(f*C(C(i*n)-C(k*h)))));z[e+52>>2]=z[e+84>>2]+C(C(h*p)+C(C(n*q)+C(f*C(C(m*k)-C(l*i)))));z[e+48>>2]=z[e+80>>2]+C(C(i*p)+C(C(k*q)+C(f*C(C(h*l)-C(n*m)))));j=o&1?d- -64|0:c+116|0;a=w[(o&64?d+52|0:c+112|0)|0]&8;b:{if((a>>>3&wa!=C(0)|Da)==1){dV(e+8|0,j,e+32|0,C(1));break b}v[e+24>>2]=-25165825;v[e+28>>2]=-25165825;v[e+16>>2]=2122317823;v[e+20>>2]=-25165825;v[e+8>>2]=2122317823;v[e+12>>2]=2122317823}c:{if(!a){break c}if(wa!=C(0)){v[b+4>>2]=-256;v[e+272>>2]=1065353216;v[_+8>>2]=0;v[_+12>>2]=0;v[_>>2]=0;v[_+4>>2]=0;v[e+292>>2]=1065353216;v[e+304>>2]=0;v[e+308>>2]=0;v[e+296>>2]=0;v[e+300>>2]=0;v[e+312>>2]=1065353216;v[e+324>>2]=0;v[e+328>>2]=0;v[e+316>>2]=0;v[e+320>>2]=0;v[e+332>>2]=1065353216;a=XU(b,e+272|0);c=v[e+12>>2];v[e+160>>2]=v[e+8>>2];v[e+164>>2]=c;c=v[e+20>>2];v[e+168>>2]=v[e+16>>2];v[e+172>>2]=c;t[e+184|0]=1;c=v[e+28>>2];v[e+176>>2]=v[e+24>>2];v[e+180>>2]=c;_U(a,e+160|0)}if(na!=C(0)){v[e+332>>2]=1065353216;z[e+328>>2]=z[e+56>>2];a=v[e+52>>2];v[e+320>>2]=v[e+48>>2];v[e+324>>2]=a;v[e+316>>2]=0;v[e+300>>2]=0;v[e+284>>2]=0;i=z[e+36>>2];m=C(i+i);f=z[e+40>>2];n=C(m*f);l=z[e+32>>2];h=C(l+l);k=z[e+44>>2];p=C(h*k);z[e+308>>2]=n-p;q=C(h*f);s=C(m*k);z[e+304>>2]=q+s;z[e+296>>2]=n+p;n=C(h*i);R=k;k=C(f+f);p=C(R*k);z[e+288>>2]=n-p;z[e+280>>2]=q-s;z[e+276>>2]=n+p;h=C(C(1)-C(l*h));i=C(i*m);z[e+312>>2]=h-i;f=C(f*k);z[e+292>>2]=h-f;z[e+272>>2]=C(C(1)-i)-f;a=XU(b,e+272|0);v[e+180>>2]=207;v[e+172>>2]=13565952;v[e+176>>2]=52992;z[e+168>>2]=na;z[e+164>>2]=na;z[e+160>>2]=na;aV(a,e+160|0)}if(!Aa){break c}if(!la){if(z[e+8>>2]>z[O+12>>2]|z[O>>2]>z[e+20>>2]|(z[e+12>>2]>z[O+16>>2]|z[O+4>>2]>z[e+24>>2])){break c}if(z[e+16>>2]>z[O+20>>2]|z[O+8>>2]>z[e+28>>2]){break c}}a=v[j>>2];d:{e:{f:{g:{h:{i:{j:{k:{if(!za){if((a|0)==5){break k}break c}l:{switch(a|0){case 0:v[b+4>>2]=-65281;a=YU(b,e+32|0);z[e+276>>2]=z[j+4>>2];v[e+272>>2]=100;c=a;a=e+272|0;bV(c,a);v[e+332>>2]=1065353216;z[e+328>>2]=z[e+56>>2];c=v[e+52>>2];v[e+320>>2]=v[e+48>>2];v[e+324>>2]=c;v[e+284>>2]=0;v[e+316>>2]=0;m=z[e+32>>2];i=C(m+m);f=z[e+40>>2];n=C(i*f);h=z[e+36>>2];l=C(h+h);k=z[e+44>>2];p=C(l*k);z[e+280>>2]=n-p;q=C(i*h);s=C(f+f);y=C(k*s);z[e+276>>2]=q+y;D=C(l*f);k=C(i*k);z[e+312>>2]=D+k;z[e+304>>2]=q-y;h=C(h*l);f=C(f*s);z[e+272>>2]=C(C(1)-h)-f;i=C(C(1)-C(m*i));z[e+308>>2]=i-f;v[e+300>>2]=-2147483648;z[e+296>>2]=-C(i-h);z[e+292>>2]=-C(D-k);z[e+288>>2]=-C(n+p);c=XU(b,a);z[e+164>>2]=z[j+4>>2];v[e+160>>2]=100;d=c;c=e+160|0;bV(d,c);f=z[e+304>>2];i=z[e+308>>2];d=v[e+276>>2];v[e+304>>2]=v[e+272>>2];v[e+308>>2]=d;h=z[e+312>>2];m=z[e+316>>2];d=v[e+284>>2];v[e+312>>2]=v[e+280>>2];v[e+316>>2]=d;z[e+276>>2]=-i;z[e+272>>2]=-f;z[e+284>>2]=-m;z[e+280>>2]=-h;a=XU(b,a);z[e+164>>2]=z[j+4>>2];v[e+160>>2]=100;bV(a,c);break c;case 3:v[b+4>>2]=-65281;a=YU(b,e+32|0);f=z[j+8>>2];i=z[j+12>>2];h=z[j+4>>2];t[e+296|0]=1;z[e+292>>2]=i;z[e+288>>2]=f;z[e+284>>2]=h;z[e+280>>2]=-i;z[e+276>>2]=-f;z[e+272>>2]=-h;_U(a,e+272|0);break c;case 1:v[e+332>>2]=1065353216;z[e+328>>2]=z[e+56>>2];a=v[e+52>>2];v[e+320>>2]=v[e+48>>2];v[e+324>>2]=a;v[e+316>>2]=0;v[e+300>>2]=-2147483648;m=z[e+32>>2];i=C(m+m);f=z[e+40>>2];n=C(i*f);h=z[e+36>>2];l=C(h+h);k=z[e+44>>2];p=C(l*k);z[e+312>>2]=n-p;q=C(i*h);s=C(f+f);y=C(k*s);z[e+308>>2]=q+y;h=C(h*l);s=C(f*s);z[e+304>>2]=C(C(1)-h)-s;f=C(l*f);l=C(i*k);z[e+292>>2]=-C(f-l);z[e+288>>2]=-C(n+p);i=C(C(1)-C(m*i));z[e+296>>2]=-C(i-h);v[e+284>>2]=-2147483648;z[e+280>>2]=-C(f+l);z[e+276>>2]=-C(i-s);z[e+272>>2]=-C(q-y);Fa=XU(b,e+272|0),Ga=-65281,v[Fa+4>>2]=Ga;v[e+160>>2]=100;v[e+164>>2]=1082130432;a=e+160|0;bV(b,a);v[e+160>>2]=100;v[e+164>>2]=1098907648;bV(b,a);v[e+160>>2]=100;v[e+164>>2]=1108344832;bV(b,a);v[e+160>>2]=100;v[e+164>>2]=1115684864;bV(b,a);v[e+160>>2]=100;v[e+164>>2]=1120403456;bV(b,a);v[e+160>>2]=100;v[e+164>>2]=1125122048;bV(b,a);v[e+160>>2]=100;v[e+164>>2]=1128529920;bV(b,a);v[e+160>>2]=100;v[e+164>>2]=1132462080;bV(b,a);v[e+160>>2]=100;v[e+164>>2]=1134690304;bV(b,a);break c;case 2:v[b+4>>2]=-65281;n=z[j+8>>2];p=z[j+4>>2];v[e+332>>2]=1065353216;z[e+328>>2]=z[e+56>>2];a=v[e+52>>2];v[e+320>>2]=v[e+48>>2];v[e+324>>2]=a;v[e+316>>2]=0;v[e+300>>2]=0;v[e+284>>2]=0;i=z[e+36>>2];m=C(i+i);f=z[e+40>>2];q=C(m*f);l=z[e+32>>2];h=C(l+l);k=z[e+44>>2];s=C(h*k);z[e+308>>2]=q-s;y=C(h*f);D=C(m*k);z[e+304>>2]=y+D;z[e+296>>2]=q+s;q=C(h*i);R=k;k=C(f+f);s=C(R*k);z[e+288>>2]=q-s;z[e+280>>2]=y-D;z[e+276>>2]=q+s;h=C(C(1)-C(l*h));i=C(i*m);z[e+312>>2]=h-i;f=C(f*k);z[e+292>>2]=h-f;z[e+272>>2]=C(C(1)-i)-f;cV(b,p,n,e+272|0);break c;case 6:break j;case 5:break k;case 4:break l;default:break c}}o=v[j+32>>2];a=u[o+52>>1];c=w[o+54|0];d=v[o+56>>2];H=w[o+55|0];m=z[j+12>>2];l=z[j+8>>2];f=z[j+24>>2];h=z[j+16>>2];k=z[j+28>>2];i=z[j+20>>2];n=z[j+4>>2];v[e+316>>2]=0;v[e+300>>2]=0;v[e+284>>2]=0;p=C(h+h);W=C(f*p);F=C(i+i);G=C(k*F);q=C(W+G);s=C(n*q);I=C(F*f);X=C(p*k);y=C(I-X);D=C(y*l);$=C(C(1)-C(h*p));Y=C(i*F);F=C($-Y);S=C(F*m);T=z[e+32>>2];J=C(T+T);h=z[e+40>>2];aa=C(J*h);L=z[e+36>>2];U=C(L+L);M=z[e+44>>2];fa=C(U*M);Z=C(aa-fa);ba=C(C(1)-C(T*J));ga=C(L*U);T=C(ba-ga);V=C(C(C(q*s)+C(y*D))+C(F*S));N=C(f+f);ca=C(f*N);f=C(C(C(1)-Y)-ca);Y=C(n*f);R=C(p*i);N=C(N*k);i=C(R+N);p=C(l*i);k=C(W-G);W=C(m*k);G=C(C(C(q*Y)+C(y*p))+C(F*W));ha=C(U*h);ia=C(J*M);U=C(ha+ia);Ea=q;q=n;n=C(R-N);q=C(q*n);va=y;R=l;l=C($-ca);y=C(R*l);N=F;R=m;m=C(I+X);F=C(R*m);I=C(C(C(Ea*q)+C(va*y))+C(N*F));z[e+312>>2]=C(T*V)+C(C(Z*G)+C(U*I));X=C(ha-ia);$=C(J*L);L=C(h+h);N=C(M*L);J=C($+N);M=C(h*L);h=C(ba-M);z[e+308>>2]=C(X*V)+C(C(J*G)+C(h*I));L=C(aa+fa);R=C(L*V);M=C(C(C(1)-ga)-M);V=C($-N);z[e+304>>2]=R+C(C(M*G)+C(V*I));G=C(C(C(n*s)+C(l*D))+C(m*S));I=C(C(C(n*Y)+C(l*p))+C(m*W));m=C(C(C(n*q)+C(l*y))+C(m*F));z[e+296>>2]=C(T*G)+C(C(Z*I)+C(U*m));z[e+292>>2]=C(X*G)+C(C(J*I)+C(h*m));z[e+288>>2]=C(L*G)+C(C(M*I)+C(V*m));m=C(C(C(f*s)+C(i*D))+C(k*S));l=C(C(C(f*Y)+C(i*p))+C(k*W));f=C(C(C(f*q)+C(i*y))+C(k*F));z[e+280>>2]=C(T*m)+C(C(Z*l)+C(U*f));z[e+276>>2]=C(X*m)+C(C(J*l)+C(h*f));z[e+272>>2]=C(L*m)+C(C(M*l)+C(V*f));z[e+320>>2]=z[e+48>>2];z[e+324>>2]=z[e+52>>2];f=z[e+56>>2];v[e+332>>2]=1065353216;z[e+328>>2]=f;Fa=XU(b,e+272|0),Ga=-65281,v[Fa+4>>2]=Ga;if(!H){break c}E=d+B(H,20)|0;d=a&32767;d=(((E+B(c,12)|0)+(d<<1)|0)+B(c,3)|0)+(d<<2&a>>31)|0;r=0;while(1){a=1;c=E+B(w[d|0],12)|0;h=z[c>>2];l=z[c+4>>2];k=z[c+8>>2];n=C(C(C(C(h*z[e+272>>2])+C(l*z[e+288>>2]))+C(k*z[e+304>>2]))+z[e+320>>2]);f=n;m=C(C(C(C(h*z[e+276>>2])+C(l*z[e+292>>2]))+C(k*z[e+308>>2]))+z[e+324>>2]);i=m;l=C(C(C(C(h*z[e+280>>2])+C(l*z[e+296>>2]))+C(k*z[e+312>>2]))+z[e+328>>2]);h=l;A=w[(v[o+56>>2]+B(r,20)|0)+18|0];if(A>>>0>1){while(1){m=f;l=i;k=h;c=E+B(w[a+d|0],12)|0;f=z[c>>2];n=z[c+4>>2];p=z[c+8>>2];h=C(C(C(C(f*z[e+280>>2])+C(n*z[e+296>>2]))+C(p*z[e+312>>2]))+z[e+328>>2]);i=C(C(C(C(f*z[e+276>>2])+C(n*z[e+292>>2]))+C(p*z[e+308>>2]))+z[e+324>>2]);f=C(C(C(C(f*z[e+272>>2])+C(n*z[e+288>>2]))+C(p*z[e+304>>2]))+z[e+320>>2]);c=v[b+100>>2];g=v[c+20>>2];j=g+1|0;P=v[c+24>>2]&2147483647;m:{if(j>>>0<=P>>>0){break m}Q=P;P=P?P<<1:2;P=j>>>0>P>>>0?j:P;if(Q>>>0>=P>>>0){break m}Ak(c+16|0,P);g=v[c+20>>2]}v[c+20>>2]=j;c=v[c+16>>2]+(g<<5)|0;z[c+16>>2]=f;z[c+8>>2]=k;z[c+4>>2]=l;z[c>>2]=m;z[c+24>>2]=h;z[c+20>>2]=i;j=v[b+4>>2];v[c+12>>2]=j;v[c+28>>2]=j;a=a+1|0;if((A|0)!=(a|0)){continue}break}a=E+B(w[d|0],12)|0;k=z[a>>2];n=z[a+4>>2];p=z[a+8>>2];l=C(C(C(C(k*z[e+280>>2])+C(n*z[e+296>>2]))+C(p*z[e+312>>2]))+z[e+328>>2]);m=C(C(C(C(k*z[e+276>>2])+C(n*z[e+292>>2]))+C(p*z[e+308>>2]))+z[e+324>>2]);n=C(C(C(C(k*z[e+272>>2])+C(n*z[e+288>>2]))+C(p*z[e+304>>2]))+z[e+320>>2])}a=v[b+100>>2];j=v[a+20>>2];c=j+1|0;g=v[a+24>>2]&2147483647;n:{if(c>>>0<=g>>>0){break n}Q=g;g=g?g<<1:2;g=c>>>0>g>>>0?c:g;if(Q>>>0>=g>>>0){break n}Ak(a+16|0,g);j=v[a+20>>2]}v[a+20>>2]=c;a=v[a+16>>2]+(j<<5)|0;z[a+16>>2]=n;z[a+8>>2]=h;z[a+4>>2]=i;z[a>>2]=f;z[a+24>>2]=l;z[a+20>>2]=m;c=v[b+4>>2];v[a+12>>2]=c;v[a+28>>2]=c;d=d+A|0;r=r+1|0;if((H|0)!=(r|0)){continue}break}break c}o=v[j+36>>2];v[e+272>>2]=1065353216;v[_+8>>2]=0;v[_+12>>2]=0;v[_>>2]=0;v[_+4>>2]=0;v[e+292>>2]=1065353216;v[e+304>>2]=0;v[e+308>>2]=0;v[e+296>>2]=0;v[e+300>>2]=0;v[e+312>>2]=1065353216;v[e+324>>2]=0;v[e+328>>2]=0;v[e+316>>2]=0;v[e+320>>2]=0;v[e+332>>2]=1065353216;i=z[j+16>>2];h=C(i+i);f=z[j+24>>2];W=C(h*f);m=z[j+20>>2];q=C(m+m);S=z[j+28>>2];G=C(q*S);l=C(W+G);J=z[j+4>>2];k=C(l*J);I=C(q*f);X=C(h*S);n=C(I-X);L=z[j+8>>2];p=C(n*L);$=C(C(1)-C(i*h));Y=C(m*q);q=C($-Y);Z=z[j+12>>2];s=C(q*Z);T=z[e+32>>2];y=C(T+T);i=z[e+40>>2];aa=C(y*i);D=z[e+36>>2];U=C(D+D);M=z[e+44>>2];fa=C(U*M);F=C(aa-fa);ba=C(C(1)-C(T*y));ga=C(D*U);T=C(ba-ga);V=C(C(C(l*k)+C(n*p))+C(q*s));N=C(f+f);ca=C(f*N);f=C(C(C(1)-Y)-ca);Y=C(J*f);R=C(h*m);N=C(N*S);h=C(R+N);S=C(h*L);m=C(W-G);W=C(m*Z);G=C(C(C(l*Y)+C(n*S))+C(q*W));ha=C(U*i);ia=C(y*M);U=C(ha+ia);va=l;l=C(R-N);J=C(J*l);N=n;n=C($-ca);L=C(n*L);R=q;q=C(I+X);Z=C(q*Z);I=C(C(C(va*J)+C(N*L))+C(R*Z));$=C(C(T*V)+C(C(F*G)+C(U*I)));z[e+256>>2]=$;X=C(ha-ia);N=C(y*D);D=C(i+i);ca=C(M*D);y=C(N+ca);M=C(i*D);i=C(ba-M);ba=C(C(X*V)+C(C(y*G)+C(i*I)));z[e+252>>2]=ba;D=C(aa+fa);R=C(D*V);M=C(C(C(1)-ga)-M);V=C(N-ca);aa=C(R+C(C(M*G)+C(V*I)));z[e+248>>2]=aa;G=C(C(C(l*k)+C(n*p))+C(q*s));I=C(C(C(l*Y)+C(n*S))+C(q*W));l=C(C(C(l*J)+C(n*L))+C(q*Z));n=C(C(T*G)+C(C(F*I)+C(U*l)));z[e+244>>2]=n;q=C(C(X*G)+C(C(y*I)+C(i*l)));z[e+240>>2]=q;G=C(C(D*G)+C(C(M*I)+C(V*l)));z[e+236>>2]=G;l=C(C(C(f*k)+C(h*p))+C(m*s));k=C(C(C(f*Y)+C(h*S))+C(m*W));f=C(C(C(f*J)+C(h*L))+C(m*Z));m=C(C(T*l)+C(C(F*k)+C(U*f)));z[e+232>>2]=m;p=C(C(X*l)+C(C(y*k)+C(i*f)));z[e+228>>2]=p;l=C(C(D*l)+C(C(M*k)+C(V*f)));z[e+224>>2]=l;k=z[e+48>>2];z[e+260>>2]=k;s=z[e+52>>2];z[e+264>>2]=s;y=z[e+56>>2];z[e+268>>2]=y;E=w[o+64|0]&2;H=v[o+28>>2];P=v[o+24>>2];d=v[o+20>>2];if(!la){c=j+4|0;f=z[O>>2];i=z[O+12>>2];h=z[O+4>>2];m=z[O+16>>2];l=z[O+8>>2];k=z[O+20>>2];v[e+192>>2]=1065353216;v[e+184>>2]=0;v[e+188>>2]=0;v[e+176>>2]=1065353216;v[e+180>>2]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=1065353216;v[e+164>>2]=0;z[e+216>>2]=C(k-l)*C(.5);z[e+212>>2]=C(m-h)*C(.5);z[e+208>>2]=C(i-f)*C(.5);z[e+204>>2]=C(k+l)*C(.5);z[e+200>>2]=C(m+h)*C(.5);z[e+196>>2]=C(i+f)*C(.5);a=d<<2;if(a){j=v[37696]+12|0;a=Ba[v[v[j>>2]+8>>2]](j,a,24422,8812,602)|0}else{a=0}v[e+144>>2]=d;v[e+136>>2]=a;v[e+140>>2]=0;t[e+156|0]=0;v[e+148>>2]=0;v[e+152>>2]=0;Ba[v[(x[o+4>>1]<<2)+127008>>2]](e+160|0,o,e+32|0,c,e+136|0)|0;d=v[e+140>>2];if(ta==C(0)){break d}Fa=XU(b,e+272|0),Ga=-65281,v[Fa+4>>2]=Ga;c=v[b+100>>2];j=v[c+20>>2];r=j+B(d,3)|0;g=v[c+24>>2]&2147483647;o:{if(r>>>0<=g>>>0){break o}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break o}Ak(c+16|0,g);j=v[c+20>>2]}v[c+20>>2]=r;if(!d){break d}c=v[c+16>>2]+(j<<5)|0;g=0;while(1){ou(v[(g<<2)+a>>2],e+96|0,P,H,e+224|0,(E|0)!=0);f=z[e+96>>2];i=z[e+100>>2];h=z[e+104>>2];m=z[e+108>>2];l=z[e+112>>2];k=z[e+116>>2];v[c+28>>2]=-65281;z[c+24>>2]=k;z[c+20>>2]=l;z[c+16>>2]=m;v[c+12>>2]=-65281;z[c+8>>2]=h;z[c+4>>2]=i;z[c>>2]=f;n=z[e+120>>2];p=z[e+124>>2];q=z[e+128>>2];v[c+92>>2]=-65281;z[c+88>>2]=h;z[c+84>>2]=i;z[c+80>>2]=f;v[c+76>>2]=-65281;z[c+72>>2]=q;z[c+68>>2]=p;z[c+64>>2]=n;v[c+60>>2]=-65281;z[c+56>>2]=q;z[c+52>>2]=p;z[c+48>>2]=n;v[c+44>>2]=-65281;z[c+40>>2]=k;z[c+36>>2]=l;z[c+32>>2]=m;c=c+96|0;g=g+1|0;if((g|0)!=(d|0)){continue}break}break d}if(ta==C(0)){break e}j=v[o+16>>2];Fa=XU(b,e+272|0),Ga=-65281,v[Fa+4>>2]=Ga;c=0;a=0;r=B(j,12);if(r){a=v[37696]+12|0;a=Ba[v[v[a>>2]+8>>2]](a,r,24422,8812,632)|0}if(j){break i}break f}H=v[j+4>>2];v[e+272>>2]=1065353216;v[_+8>>2]=0;v[_+12>>2]=0;v[_>>2]=0;v[_+4>>2]=0;v[e+292>>2]=1065353216;v[e+304>>2]=0;v[e+308>>2]=0;v[e+296>>2]=0;v[e+300>>2]=0;v[e+312>>2]=1065353216;v[e+324>>2]=0;v[e+328>>2]=0;v[e+316>>2]=0;v[e+320>>2]=0;v[e+332>>2]=1065353216;a=v[H+44>>2];c=v[H+40>>2];Fa=XU(b,e+272|0),Ga=-65281,v[Fa+4>>2]=Ga;a=B(a,c);P=a<<1;if(!la){f=z[O>>2];i=z[O+12>>2];h=z[O+4>>2];m=z[O+16>>2];l=z[O+8>>2];k=z[O+20>>2];v[e+232>>2]=0;v[e+236>>2]=1065353216;v[e+224>>2]=0;v[e+228>>2]=0;z[e+248>>2]=C(k+l)*C(.5);z[e+244>>2]=C(m+h)*C(.5);z[e+240>>2]=C(i+f)*C(.5);z[e+108>>2]=C(k-l)*C(.5);z[e+104>>2]=C(m-h)*C(.5);z[e+100>>2]=C(i-f)*C(.5);v[e+96>>2]=3;a=a<<3;if(a){c=v[37696]+12|0;d=Ba[v[v[c>>2]+8>>2]](c,a,24422,8812,680)|0}else{d=0}t[e+136|0]=0;o=D$(e+96|0,e+224|0,j,e+32|0,d,P,e+136|0);a=v[b+100>>2];c=v[a+20>>2];r=c+B(o,3)|0;g=v[a+24>>2]&2147483647;p:{if(r>>>0<=g>>>0){break p}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break p}Ak(a+16|0,g);c=v[a+20>>2]}v[a+20>>2]=r;q:{if(o){c=v[a+16>>2]+(c<<5)|0;a=0;while(1){B$(j,e+32|0,v[d+(a<<2)>>2],e+160|0);r=v[e+160>>2];g=v[e+164>>2];f=z[e+168>>2];H=v[e+176>>2];E=v[e+172>>2];i=z[e+180>>2];v[c+12>>2]=-65281;v[c+28>>2]=-65281;z[c+24>>2]=i;v[c+16>>2]=E;v[c+20>>2]=H;z[c+8>>2]=f;v[c>>2]=r;v[c+4>>2]=g;r=v[e+172>>2];g=v[e+176>>2];m=z[e+180>>2];f=z[e+184>>2];i=z[e+188>>2];h=z[e+192>>2];v[c+60>>2]=-65281;z[c+56>>2]=h;z[c+52>>2]=i;z[c+48>>2]=f;v[c+44>>2]=-65281;z[c+40>>2]=m;v[c+32>>2]=r;v[c+36>>2]=g;r=v[e+160>>2];g=v[e+164>>2];m=z[e+168>>2];z[c+64>>2]=f;z[c+68>>2]=i;z[c+72>>2]=h;v[c+76>>2]=-65281;v[c+92>>2]=-65281;z[c+88>>2]=m;v[c+80>>2]=r;v[c+84>>2]=g;c=c+96|0;a=a+1|0;if((o|0)!=(a|0)){continue}break}break q}if(!d){break c}}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,d);break c}c=B(a,12);if(c){d=v[37696]+12|0;c=Ba[v[v[d>>2]+8>>2]](d,c,24422,8812,705)|0}else{c=0}r=c;if(!a){break h}f=z[e+44>>2];i=C(C(f*f)+C(-.5));o=v[H+60>>2];h=z[e+36>>2];s=C(-h);m=z[e+32>>2];y=C(-m);l=z[e+40>>2];D=C(-l);F=z[j+16>>2];S=z[j+8>>2];J=z[j+12>>2];d=v[H+44>>2];c=0;while(1){L=z[e+48>>2];Z=z[e+52>>2];j=r+B(c,12)|0;g=(c>>>0)/(d>>>0)|0;k=C(F*C(c-B(g,d)>>>0));k=C(k+k);n=C(J*C(g>>>0));n=C(n+n);p=C(S*C(u[o+(c<<2)>>1]));p=C(p+p);q=C(C(l*k)+C(C(m*n)+C(h*p)));z[j+8>>2]=z[e+56>>2]+C(C(l*q)+C(C(k*i)+C(f*C(C(m*p)+C(n*s)))));z[j+4>>2]=Z+C(C(h*q)+C(C(p*i)+C(f*C(C(l*n)+C(k*y)))));z[j>>2]=L+C(C(m*q)+C(C(n*i)+C(f*C(C(h*k)+C(p*D)))));c=c+1|0;if((a|0)!=(c|0)){continue}break}c=0;if(!P){break g}while(1){a=c>>>1|0;g=v[H+44>>2];d=(a>>>0)/(g>>>0)|0;r:{if(d>>>0>=v[H+40>>2]-1>>>0|g-1>>>0<=a-B(d,g)>>>0){break r}d=v[H+60>>2]+(a<<2)|0;o=c&1;if((w[(o?d+3|0:d+2|0)|0]&127)==127){break r}s:{if(t[d+2|0]<0){if(!o){d=a;o=g+a|0;a=o+1|0;break s}o=a+1|0;d=g+o|0;break s}j=a+1|0;if(!o){d=j;o=a;a=a+g|0;break s}d=a+g|0;o=g+j|0;a=j}j=v[b+100>>2];g=v[j+20>>2];E=g+3|0;A=v[j+24>>2]&2147483647;t:{if(E>>>0<=A>>>0){break t}Q=A;A=A?A<<1:2;A=A>>>0>>0?E:A;if(Q>>>0>=A>>>0){break t}Ak(j+16|0,A);g=v[j+20>>2]}v[j+20>>2]=E;o=r+B(o,12)|0;f=z[o>>2];E=r+B(d,12)|0;A=v[E>>2];ja=v[E+4>>2];i=z[E+8>>2];d=v[j+16>>2]+(g<<5)|0;j=v[o+8>>2];v[d+4>>2]=v[o+4>>2];v[d+8>>2]=j;v[d+12>>2]=-65281;v[d+28>>2]=-65281;z[d+24>>2]=i;v[d+16>>2]=A;v[d+20>>2]=ja;z[d>>2]=f;j=v[E+4>>2];g=v[E+8>>2];a=r+B(a,12)|0;f=z[a+8>>2];A=v[a+4>>2];ja=v[a>>2];z[d+32>>2]=z[E>>2];v[d+48>>2]=ja;v[d+52>>2]=A;z[d+56>>2]=f;v[d+60>>2]=-65281;v[d+44>>2]=-65281;v[d+36>>2]=j;v[d+40>>2]=g;j=v[a+4>>2];g=v[a+8>>2];f=z[o+8>>2];E=v[o+4>>2];o=v[o>>2];z[d+64>>2]=z[a>>2];v[d+80>>2]=o;v[d+84>>2]=E;z[d+88>>2]=f;v[d+92>>2]=-65281;v[d+76>>2]=-65281;v[d+68>>2]=j;v[d+72>>2]=g}c=c+1|0;if((P|0)!=(c|0)){continue}break}break h}while(1){g=B(c,12);r=g+a|0;g=g+P|0;f=z[g>>2];i=z[g+4>>2];h=z[g+8>>2];z[r+8>>2]=y+C(C(C(m*f)+C(n*i))+C($*h));z[r+4>>2]=s+C(C(C(p*f)+C(q*i))+C(ba*h));z[r>>2]=k+C(C(C(l*f)+C(G*i))+C(aa*h));c=c+1|0;if((j|0)!=(c|0)){continue}break}break f}if(!r){break c}}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,r);break c}c=v[b+100>>2];j=v[c+20>>2];r=j+B(d,3)|0;g=v[c+24>>2]&2147483647;u:{if(r>>>0<=g>>>0){break u}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break u}Ak(c+16|0,g);j=v[c+20>>2]}v[c+20>>2]=r;v:{if(d){c=v[c+16>>2]+(j<<5)|0;g=0;while(1){j=B(g,3);w:{if(!E){A=H+(j<<2)|0;j=v[A>>2];r=v[A+8>>2];Q=v[A+4>>2];break w}A=H+(j<<1)|0;j=x[A>>1];r=x[A+4>>1];Q=x[A+2>>1]}A=B(Q,12)+a|0;f=z[A>>2];i=z[A+4>>2];h=z[A+8>>2];r=B(r,12)+a|0;m=z[r>>2];l=z[r+4>>2];k=z[r+8>>2];j=B(j,12)+a|0;n=z[j>>2];p=z[j+4>>2];q=z[j+8>>2];v[c+92>>2]=-65281;z[c+88>>2]=q;z[c+84>>2]=p;z[c+80>>2]=n;v[c+76>>2]=-65281;z[c+72>>2]=k;z[c+68>>2]=l;z[c+64>>2]=m;v[c+60>>2]=-65281;z[c+56>>2]=k;z[c+52>>2]=l;z[c+48>>2]=m;v[c+44>>2]=-65281;z[c+40>>2]=h;z[c+36>>2]=i;z[c+32>>2]=f;v[c+28>>2]=-65281;z[c+24>>2]=h;z[c+20>>2]=i;z[c+16>>2]=f;v[c+12>>2]=-65281;z[c+8>>2]=q;z[c+4>>2]=p;z[c>>2]=n;c=c+96|0;g=g+1|0;if((g|0)!=(d|0)){continue}break}break v}if(a){break v}a=0;d=0;break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}a=0}x:{if(ma==C(0)){break x}Fa=XU(b,e+272|0),Ga=-2004353024,v[Fa+4>>2]=Ga;if(!d){break x}c=0;while(1){ou(a?v[(c<<2)+a>>2]:c,e+160|0,P,H,e+224|0,(E|0)!=0);m=C(0);f=z[e+168>>2];s=z[e+180>>2];y=z[e+192>>2];i=C(C(C(f+s)+y)*C(.3333333432674408));h=z[e+164>>2];D=z[e+176>>2];F=z[e+188>>2];l=C(C(C(h+D)+F)*C(.3333333432674408));k=z[e+160>>2];S=z[e+172>>2];J=z[e+184>>2];n=C(C(C(k+S)+J)*C(.3333333432674408));p=C(0);q=C(0);S=C(k-S);F=C(h-F);k=C(k-J);D=C(h-D);h=C(C(S*F)-C(k*D));y=C(f-y);s=C(f-s);f=C(C(D*y)-C(F*s));k=C(C(s*k)-C(y*S));s=C(C(h*h)+C(C(f*f)+C(k*k)));if(s>C(0)){m=h;h=C(C(1)/C(K(s)));q=C(m*h);p=C(k*h);m=C(f*h)}z[e+104>>2]=i;f=C(ma*q);z[e+116>>2]=i+f;z[e+100>>2]=l;i=C(ma*p);z[e+112>>2]=l+i;z[e+96>>2]=n;h=C(ma*m);z[e+108>>2]=n+h;z[e+120>>2]=C(K(C(C(f*f)+C(C(h*h)+C(i*i)))))*C(.15000000596046448);$U(b,e+96|0);c=c+1|0;if((d|0)!=(c|0)){continue}break}}y:{if(ya==C(0)){break y}E=v[o+56>>2];if(!E){break y}P=v[o+28>>2];A=v[o+24>>2];v[b+4>>2]=-256;if(!d){break y}ja=w[o+64|0]&2;j=0;while(1){c=j;c=a?v[(c<<2)+a>>2]:c;ou(c,e+160|0,A,P,e+224|0,(ja|0)!=0);H=w[c+E|0];if(H&8){c=v[b+100>>2];o=v[c+20>>2];r=o+1|0;g=v[c+24>>2]&2147483647;z:{if(r>>>0<=g>>>0){break z}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break z}Ak(c+16|0,g);o=v[c+20>>2]}v[c+20>>2]=r;c=v[c+16>>2]+(o<<5)|0;z[c>>2]=z[e+160>>2];z[c+4>>2]=z[e+164>>2];z[c+8>>2]=z[e+168>>2];z[c+16>>2]=z[e+172>>2];z[c+20>>2]=z[e+176>>2];z[c+24>>2]=z[e+180>>2];o=v[b+4>>2];v[c+12>>2]=o;v[c+28>>2]=o}if(H&16){c=v[b+100>>2];o=v[c+20>>2];r=o+1|0;g=v[c+24>>2]&2147483647;A:{if(r>>>0<=g>>>0){break A}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break A}Ak(c+16|0,g);o=v[c+20>>2]}v[c+20>>2]=r;c=v[c+16>>2]+(o<<5)|0;z[c>>2]=z[e+172>>2];z[c+4>>2]=z[e+176>>2];z[c+8>>2]=z[e+180>>2];z[c+16>>2]=z[e+184>>2];z[c+20>>2]=z[e+188>>2];z[c+24>>2]=z[e+192>>2];o=v[b+4>>2];v[c+12>>2]=o;v[c+28>>2]=o}if(H&32){o=v[b+100>>2];c=v[o+20>>2];r=c+1|0;g=v[o+24>>2]&2147483647;B:{if(r>>>0<=g>>>0){break B}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break B}Ak(o+16|0,g);c=v[o+20>>2]}v[o+20>>2]=r;c=v[o+16>>2]+(c<<5)|0;z[c>>2]=z[e+160>>2];z[c+4>>2]=z[e+164>>2];z[c+8>>2]=z[e+168>>2];z[c+16>>2]=z[e+184>>2];z[c+20>>2]=z[e+188>>2];z[c+24>>2]=z[e+192>>2];o=v[b+4>>2];v[c+12>>2]=o;v[c+28>>2]=o}j=j+1|0;if((j|0)!=(d|0)){continue}break}}if(!a){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}if(sa){f=z[e+28>>2];pa=f>2];qa=f>2];da=f>2];oa=f>oa?oa:f;f=z[e+12>>2];ra=f>ra?ra:f;f=z[e+8>>2];ea=f>ea?ea:f}ua=ua+1|0;if((ua|0)!=(ka|0)){continue}break}if(!sa|ea>da){break a}v[b+4>>2]=-65281;v[e+284>>2]=0;v[e+288>>2]=0;v[e+296>>2]=0;v[e+300>>2]=0;v[e+292>>2]=1065353216;v[e+304>>2]=0;v[e+308>>2]=0;v[e+316>>2]=0;v[e+320>>2]=0;v[e+312>>2]=1065353216;v[e+324>>2]=0;v[e+328>>2]=0;v[e+332>>2]=1065353216;v[e+276>>2]=0;v[e+280>>2]=0;v[e+272>>2]=1065353216;a=XU(b,e+272|0);z[e+180>>2]=pa;z[e+176>>2]=qa;t[e+184|0]=1;z[e+172>>2]=da;z[e+168>>2]=oa;z[e+164>>2]=ra;z[e+160>>2]=ea;_U(a,e+160|0)}xa=e+336|0}function Cv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=0,ra=0,sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=0,Ca=0;h=xa-912|0;xa=h;f=v[f>>2];z[h+720>>2]=z[e>>2];qa=v[a+12>>2];ra=v[a+8>>2];o=z[a+4>>2];a=0;v[h+716>>2]=0;v[h+708>>2]=ra;v[h+712>>2]=qa;z[h+704>>2]=o;qa=v[b+12>>2];ra=v[b+8>>2];s=z[b+4>>2];v[h+700>>2]=0;v[h+692>>2]=ra;v[h+696>>2]=qa;z[h+688>>2]=s;u=z[c+20>>2];F=z[c+24>>2];q=z[c>>2];p=z[c+4>>2];r=z[c+8>>2];m=z[c+12>>2];n=z[c+16>>2];v[h+684>>2]=0;z[h+680>>2]=F;z[h+676>>2]=u;z[h+672>>2]=n;z[h+668>>2]=m;z[h+664>>2]=r;z[h+660>>2]=p;z[h+656>>2]=q;E=z[d+20>>2];y=z[d+24>>2];l=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];i=z[d+12>>2];x=z[d+16>>2];v[h+652>>2]=0;z[h+648>>2]=y;z[h+644>>2]=E;z[h+640>>2]=x;z[h+636>>2]=i;z[h+632>>2]=k;z[h+628>>2]=j;z[h+624>>2]=l;v[h+620>>2]=0;A=C(-l);n=C(n-x);u=C(u-E);F=C(F-y);E=C(C(C(A*n)-C(u*j))-C(k*F));y=C(C(i*i)+C(-.5));x=C(C(C(y*u)+C(i*C(C(l*F)-C(k*n))))-C(j*E));z[h+612>>2]=x+x;x=C(C(C(i*C(C(j*n)-C(l*u)))+C(y*F))-C(k*E));z[h+616>>2]=x+x;n=C(C(C(y*n)+C(i*C(C(k*u)-C(j*F))))-C(l*E));z[h+608>>2]=n+n;n=C(C(C(q*j)-C(l*p))+C(C(r*i)-C(m*k)));z[h+600>>2]=n;u=C(C(C(p*k)-C(j*r))+C(C(q*i)-C(m*l)));z[h+592>>2]=u;l=C(C(C(r*l)-C(k*q))+C(C(p*i)-C(m*j)));z[h+596>>2]=l;i=C(C(m*i)-C(C(C(A*q)-C(p*j))-C(k*r)));z[h+604>>2]=i;b=v[h+620>>2];v[h+584>>2]=v[h+616>>2];v[h+588>>2]=b;v[h+572>>2]=0;j=C(u+u);q=C(C(1)-C(u*j));k=C(l+l);p=C(l*k);z[h+568>>2]=q-p;r=C(n*k);m=C(i*j);z[h+564>>2]=r-m;v[h+556>>2]=0;z[h+552>>2]=r+m;m=q;q=C(n+n);r=C(n*q);z[h+548>>2]=m-r;b=v[h+612>>2];v[h+576>>2]=v[h+608>>2];v[h+580>>2]=b;m=C(n*j);k=C(i*k);z[h+560>>2]=m+k;j=C(l*j);i=C(i*q);z[h+544>>2]=j-i;v[h+540>>2]=0;z[h+536>>2]=m-k;z[h+532>>2]=j+i;z[h+528>>2]=C(C(1)-p)-r;sa=z[e+8>>2];i=C(sa*C(.15000000596046448));m=z[h+692>>2];j=m>=s?s:m;n=z[h+696>>2];j=C((j<=n?j:n)*C(.15000000596046448));j=i>2];k=o<=u?o:u;F=z[h+712>>2];k=C((k<=F?k:F)*C(.15000000596046448));i=ij?j:i;z[h+512>>2]=i;b=w[f+64|0];if(b){i=C(i*C(.800000011920929));q=C(i*i);a=b;while(1){d=v[f+76>>2];a=a-1|0;c=d+B(a,48)|0;j=z[c+24>>2];p=z[c+40>>2];i=z[c+8>>2];k=z[c>>2];l=z[c+4>>2];r=C(z[h+584>>2]+C(C(z[h+568>>2]*i)+C(C(z[h+536>>2]*k)+C(l*z[h+552>>2]))));E=C(z[h+576>>2]+C(C(z[h+560>>2]*i)+C(C(z[h+528>>2]*k)+C(l*z[h+544>>2]))));y=z[c+16>>2];x=z[c+32>>2];k=C(z[h+580>>2]+C(C(z[h+564>>2]*i)+C(C(z[h+532>>2]*k)+C(l*z[h+548>>2]))));l=z[c+20>>2];A=z[c+36>>2];i=C(C(p*C(r-j))+C(C(C(E-y)*x)+C(C(k-l)*A)));j=C(j-C(r-C(p*i)));r=C(j*j);j=C(y-C(E-C(x*i)));p=C(j*j);j=C(l-C(k-C(A*i)));a:{if(q>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+44>>2];v[c+40>>2]=v[d+40>>2];v[c+44>>2]=e;e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;break a}z[c+44>>2]=i}if(a){continue}break}a=w[f+64|0]}z[h+496>>2]=K(C(C(F*F)+C(C(o*o)+C(u*u))));z[h+480>>2]=K(C(C(n*n)+C(C(s*s)+C(m*m))));b:{c:{d:{if((a|0)==(b|0)){if(!n1(f,h+592|0,h+656|0,h+624|0,h+512|0,h+496|0,h+480|0)){break d}}a=v[h+668>>2];v[h+120>>2]=v[h+664>>2];v[h+124>>2]=a;a=v[h+636>>2];v[h+200>>2]=v[h+632>>2];v[h+204>>2]=a;a=v[h+620>>2];v[f+24>>2]=v[h+616>>2];v[f+28>>2]=a;a=v[h+660>>2];v[h+112>>2]=v[h+656>>2];v[h+116>>2]=a;a=v[h+628>>2];v[h+192>>2]=v[h+624>>2];v[h+196>>2]=a;a=v[h+612>>2];v[f+16>>2]=v[h+608>>2];v[f+20>>2]=a;a=v[h+604>>2];v[f+8>>2]=v[h+600>>2];v[f+12>>2]=a;a=v[h+596>>2];v[f>>2]=v[h+592>>2];v[f+4>>2]=a;a=v[h+124>>2];v[f+40>>2]=v[h+120>>2];v[f+44>>2]=a;a=v[h+116>>2];v[f+32>>2]=v[h+112>>2];v[f+36>>2]=a;a=v[h+196>>2];v[f+48>>2]=v[h+192>>2];v[f+52>>2]=a;a=v[h+204>>2];v[f+56>>2]=v[h+200>>2];v[f+60>>2]=a;a=v[h+684>>2];v[h+472>>2]=v[h+680>>2];v[h+476>>2]=a;a=v[h+676>>2];b=v[h+672>>2];v[h+460>>2]=0;v[h+444>>2]=0;v[h+464>>2]=b;v[h+468>>2]=a;j=z[h+660>>2];o=C(j+j);i=z[h+664>>2];p=C(o*i);l=z[h+656>>2];k=C(l+l);s=z[h+668>>2];r=C(k*s);q=C(p-r);z[h+452>>2]=q;p=C(p+r);z[h+440>>2]=p;l=C(C(1)-C(l*k));E=C(j*o);r=C(l-E);z[h+456>>2]=r;y=C(i+i);x=C(i*y);l=C(l-x);z[h+436>>2]=l;v[h+428>>2]=0;i=C(k*i);A=C(o*s);o=C(i+A);z[h+448>>2]=o;j=C(k*j);k=C(y*s);s=C(j-k);z[h+432>>2]=s;z[h+424>>2]=i-A;z[h+420>>2]=j+k;i=C(C(C(1)-E)-x);z[h+416>>2]=i;a=v[h+652>>2];v[h+408>>2]=v[h+648>>2];v[h+412>>2]=a;a=v[h+644>>2];b=v[h+640>>2];v[h+396>>2]=0;v[h+380>>2]=0;v[h+400>>2]=b;v[h+404>>2]=a;k=z[h+628>>2];J=C(k+k);j=z[h+632>>2];y=C(J*j);x=z[h+624>>2];I=C(x+x);L=z[h+636>>2];A=C(I*L);E=C(y-A);z[h+388>>2]=E;y=C(y+A);z[h+376>>2]=y;A=C(C(1)-C(x*I));M=C(k*J);x=C(A-M);z[h+392>>2]=x;H=C(j+j);N=C(j*H);A=C(A-N);z[h+372>>2]=A;v[h+364>>2]=0;j=C(I*j);O=C(J*L);J=C(j+O);z[h+384>>2]=J;k=C(I*k);H=C(H*L);I=C(k-H);z[h+368>>2]=I;L=C(j-O);z[h+360>>2]=L;H=C(k+H);z[h+356>>2]=H;M=C(C(C(1)-M)-N);z[h+352>>2]=M;v[h+348>>2]=0;N=z[h+704>>2];z[h+272>>2]=N;z[h+896>>2]=u;z[h+880>>2]=F;O=z[h+688>>2];z[h+864>>2]=O;z[h+848>>2]=m;z[h+832>>2]=n;G=z[h+720>>2];j=z[h+424>>2];k=z[h+420>>2];_=C(C(j*L)+C(C(i*M)+C(H*k)));$=C((_>C(0)?_:C(-_))+C(9.999999974752427e-7));aa=C(C(j*y)+C(C(i*I)+C(A*k)));ba=C((aa>C(0)?aa:C(-aa))+C(9.999999974752427e-7));ca=C(C(j*x)+C(C(i*J)+C(E*k)));da=C((ca>C(0)?ca:C(-ca))+C(9.999999974752427e-7));S=z[h+408>>2];T=z[h+472>>2];P=C(S-T);U=z[h+400>>2];V=z[h+464>>2];W=C(U-V);X=z[h+404>>2];Y=z[h+468>>2];Z=C(X-Y);Q=C(C(j*P)+C(C(i*W)+C(Z*k)));ta=C(G+C(C(N+C(C(O*$)+C(C(m*ba)+C(n*da))))-C(D(Q))));e:{if(taC(0)?ea:C(-ea))+C(9.999999974752427e-7));ga=C(C(p*x)+C(C(s*J)+C(l*E)));ha=C((ga>C(0)?ga:C(-ga))+C(9.999999974752427e-7));ia=C(C(p*L)+C(C(s*M)+C(l*H)));ja=C((ia>C(0)?ia:C(-ia))+C(9.999999974752427e-7));R=C(C(p*P)+C(C(s*W)+C(l*Z)));ua=C(G+C(C(u+C(C(C(m*fa)+C(n*ha))+C(ja*O)))-C(D(R))));if(uaC(0)?ka:C(-ka))+C(9.999999974752427e-7));ma=C(C(r*x)+C(C(o*J)+C(q*E)));na=C((ma>C(0)?ma:C(-ma))+C(9.999999974752427e-7));oa=C(C(r*L)+C(C(o*M)+C(q*H)));pa=C((oa>C(0)?oa:C(-oa))+C(9.999999974752427e-7));P=C(C(r*P)+C(C(o*W)+C(q*Z)));W=C(G+C(C(F+C(C(C(m*la)+C(n*na))+C(pa*O)))-C(D(P))));if(WC(G+C(C(C(u*pa)+C(F*ja))+C(C(n*ba)+C(m*da))))|(C(D(C(C(ea*P)-C(ka*R))))>C(G+C(C(C(u*la)+C(F*fa))+C(C(O*da)+C(n*$))))|C(D(C(C(ga*P)-C(ma*R))))>C(G+C(C(C(u*na)+C(F*ha))+C(C(O*ba)+C(m*$)))))){break e}if(C(D(C(C(oa*Q)-C(P*_))))>C(G+C(C(C(m*ha)+C(n*fa))+C(C(pa*N)+C(F*$))))|C(D(C(C(ka*Q)-C(P*aa))))>C(G+C(C(C(n*ja)+C(ha*O))+C(C(la*N)+C(F*ba))))|(C(D(C(C(ma*Q)-C(P*ca))))>C(G+C(C(C(m*ja)+C(fa*O))+C(C(na*N)+C(F*da))))|C(D(C(C(R*_)-C(ia*Q))))>C(G+C(C(C(m*na)+C(n*la))+C(C(ja*N)+C(u*$)))))){break e}if(C(D(C(C(R*aa)-C(ea*Q))))>C(G+C(C(C(n*pa)+C(na*O))+C(C(fa*N)+C(u*ba))))|C(D(C(C(R*ca)-C(ga*Q))))>C(G+C(C(C(m*pa)+C(la*O))+C(C(ha*N)+C(u*da))))){break e}v[h+248>>2]=0;v[h+252>>2]=0;v[h+224>>2]=0;v[h+228>>2]=0;v[h+240>>2]=0;v[h+244>>2]=0;v[h+196>>2]=0;v[h+200>>2]=0;v[h+204>>2]=0;v[h+208>>2]=0;v[h+216>>2]=0;v[h+220>>2]=0;b=ta>ua;G=b?ua:ta;a=G>W;f:{g:{h:{i:{j:{k:{l:{m:{b=a?2:b;G=a?W:G;a=G>Z;b=a?3:b;G=a?Z:G;a=G>va;switch(((a?va:G)>Aa?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<=C(0)){z[h+228>>2]=k;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=p;z[h+212>>2]=l;z[h+208>>2]=s;v[h+204>>2]=0;z[h+200>>2]=-r;z[h+196>>2]=-q;z[h+192>>2]=-o;l=C(Y-C(N*k));z[h+232>>2]=j;o=C(T-C(N*j));z[h+224>>2]=i;s=C(V-C(i*N));break n}m=C(-k);z[h+228>>2]=m;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=p;z[h+212>>2]=l;z[h+208>>2]=s;v[h+204>>2]=0;z[h+200>>2]=r;z[h+196>>2]=q;z[h+192>>2]=o;q=C(-j);z[h+232>>2]=q;p=C(-i);z[h+224>>2]=p;o=C(T+C(N*j));l=C(Y+C(N*k));s=C(C(i*N)+V);i=p;k=m;j=q}v[h+252>>2]=0;z[h+248>>2]=o;z[h+244>>2]=l;z[h+240>>2]=s;a=h+32|0;o1(a,h+192|0,h+352|0);v[h+748>>2]=0;l=C(C(z[h+200>>2]*j)+C(C(z[h+192>>2]*i)+C(k*z[h+196>>2])));z[h+736>>2]=l;o=C(C(z[h+216>>2]*j)+C(C(z[h+208>>2]*i)+C(k*z[h+212>>2])));z[h+740>>2]=o;i=C(C(z[h+232>>2]*j)+C(C(z[h+224>>2]*i)+C(k*z[h+228>>2])));z[h+744>>2]=i;v[h+812>>2]=0;z[h+808>>2]=-i;z[h+804>>2]=-o;z[h+800>>2]=-l;b=h+112|0;c=h+816|0;p1(b,c,h+800|0,a,h+688|0);q1(h+880|0,h+896|0,b,c,h+736|0,g,h+348|0,h+720|0);break f}o:{if(R<=C(0)){z[h+228>>2]=l;v[h+220>>2]=0;v[h+236>>2]=0;v[h+204>>2]=0;z[h+200>>2]=j;z[h+196>>2]=k;z[h+192>>2]=i;z[h+216>>2]=-r;z[h+212>>2]=-q;z[h+208>>2]=-o;i=C(Y-C(u*l));z[h+232>>2]=p;j=C(T-C(u*p));z[h+224>>2]=s;k=C(V-C(u*s));break o}m=C(-l);z[h+228>>2]=m;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=r;z[h+212>>2]=q;z[h+208>>2]=o;v[h+204>>2]=0;z[h+200>>2]=j;z[h+196>>2]=k;z[h+192>>2]=i;o=C(-p);z[h+232>>2]=o;q=C(-s);z[h+224>>2]=q;j=C(C(u*p)+T);i=C(C(u*l)+Y);k=C(C(u*s)+V);s=q;l=m;p=o}v[h+252>>2]=0;z[h+248>>2]=j;z[h+244>>2]=i;z[h+240>>2]=k;a=h+32|0;o1(a,h+192|0,h+352|0);v[h+748>>2]=0;i=C(C(z[h+200>>2]*p)+C(C(z[h+192>>2]*s)+C(l*z[h+196>>2])));z[h+736>>2]=i;j=C(C(z[h+216>>2]*p)+C(C(z[h+208>>2]*s)+C(l*z[h+212>>2])));z[h+740>>2]=j;k=C(C(z[h+232>>2]*p)+C(C(z[h+224>>2]*s)+C(l*z[h+228>>2])));z[h+744>>2]=k;v[h+812>>2]=0;z[h+808>>2]=-k;z[h+804>>2]=-j;z[h+800>>2]=-i;b=h+112|0;c=h+816|0;p1(b,c,h+800|0,a,h+688|0);q1(h+272|0,h+880|0,b,c,h+736|0,g,h+348|0,h+720|0);break f}p:{if(P<=C(0)){z[h+228>>2]=q;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=p;z[h+212>>2]=l;z[h+208>>2]=s;v[h+204>>2]=0;z[h+200>>2]=j;z[h+196>>2]=k;z[h+192>>2]=i;i=C(Y-C(F*q));z[h+232>>2]=r;j=C(T-C(F*r));z[h+224>>2]=o;k=C(V-C(F*o));break p}m=C(-q);z[h+228>>2]=m;v[h+220>>2]=0;v[h+236>>2]=0;v[h+204>>2]=0;z[h+200>>2]=j;z[h+196>>2]=k;z[h+192>>2]=i;n=C(-r);z[h+232>>2]=n;u=C(-o);z[h+224>>2]=u;z[h+216>>2]=-p;z[h+212>>2]=-l;z[h+208>>2]=-s;j=C(C(F*r)+T);i=C(C(F*q)+Y);k=C(C(F*o)+V);o=u;q=m;r=n}v[h+252>>2]=0;z[h+248>>2]=j;z[h+244>>2]=i;z[h+240>>2]=k;a=h+32|0;o1(a,h+192|0,h+352|0);v[h+748>>2]=0;i=C(C(z[h+200>>2]*r)+C(C(z[h+192>>2]*o)+C(q*z[h+196>>2])));z[h+736>>2]=i;j=C(C(z[h+216>>2]*r)+C(C(z[h+208>>2]*o)+C(q*z[h+212>>2])));z[h+740>>2]=j;k=C(C(z[h+232>>2]*r)+C(C(z[h+224>>2]*o)+C(q*z[h+228>>2])));z[h+744>>2]=k;v[h+812>>2]=0;z[h+808>>2]=-k;z[h+804>>2]=-j;z[h+800>>2]=-i;b=h+112|0;c=h+816|0;p1(b,c,h+800|0,a,h+688|0);q1(h+272|0,h+896|0,b,c,h+736|0,g,h+348|0,h+720|0);break f}q:{if(wa<=C(0)){z[h+228>>2]=-H;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=y;z[h+212>>2]=A;z[h+208>>2]=I;v[h+204>>2]=0;z[h+200>>2]=x;z[h+196>>2]=E;z[h+192>>2]=J;z[h+232>>2]=-L;z[h+224>>2]=-M;i=C(C(L*O)+S);j=C(C(H*O)+X);k=C(C(M*O)+U);break q}z[h+228>>2]=H;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=y;z[h+212>>2]=A;z[h+208>>2]=I;v[h+204>>2]=0;z[h+200>>2]=-x;z[h+196>>2]=-E;z[h+192>>2]=-J;j=C(X-C(H*O));z[h+232>>2]=L;i=C(S-C(L*O));z[h+224>>2]=M;k=C(U-C(M*O));H=C(-H);L=C(-L);M=C(-M)}v[h+252>>2]=0;z[h+248>>2]=i;z[h+244>>2]=j;z[h+240>>2]=k;a=h+32|0;o1(a,h+192|0,h+416|0);v[h+748>>2]=0;z[h+744>>2]=C(z[h+232>>2]*L)+C(C(z[h+224>>2]*M)+C(H*z[h+228>>2]));z[h+740>>2]=C(z[h+216>>2]*L)+C(C(z[h+208>>2]*M)+C(H*z[h+212>>2]));z[h+736>>2]=C(z[h+200>>2]*L)+C(C(z[h+192>>2]*M)+C(H*z[h+196>>2]));b=h+112|0;c=h+816|0;d=h+736|0;p1(b,c,d,a,h+704|0);q1(h+832|0,h+848|0,b,c,d,g,h+348|0,h+720|0);break g}r:{if(ya<=C(0)){z[h+228>>2]=-A;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=x;z[h+212>>2]=E;z[h+208>>2]=J;v[h+204>>2]=0;z[h+200>>2]=L;z[h+196>>2]=H;z[h+192>>2]=M;z[h+232>>2]=-y;z[h+224>>2]=-I;i=C(C(m*y)+S);j=C(C(m*A)+X);k=C(C(m*I)+U);break r}z[h+228>>2]=A;v[h+220>>2]=0;v[h+236>>2]=0;v[h+204>>2]=0;z[h+200>>2]=L;z[h+196>>2]=H;z[h+192>>2]=M;z[h+216>>2]=-x;z[h+212>>2]=-E;z[h+208>>2]=-J;j=C(X-C(m*A));z[h+232>>2]=y;i=C(S-C(m*y));z[h+224>>2]=I;k=C(U-C(m*I));A=C(-A);y=C(-y);I=C(-I)}v[h+252>>2]=0;z[h+248>>2]=i;z[h+244>>2]=j;z[h+240>>2]=k;a=h+32|0;o1(a,h+192|0,h+416|0);v[h+748>>2]=0;z[h+744>>2]=C(z[h+232>>2]*y)+C(C(z[h+224>>2]*I)+C(A*z[h+228>>2]));z[h+740>>2]=C(z[h+216>>2]*y)+C(C(z[h+208>>2]*I)+C(A*z[h+212>>2]));z[h+736>>2]=C(z[h+200>>2]*y)+C(C(z[h+192>>2]*I)+C(A*z[h+196>>2]));b=h+112|0;c=h+816|0;d=h+736|0;p1(b,c,d,a,h+704|0);q1(h+864|0,h+832|0,b,c,d,g,h+348|0,h+720|0);break g}s:{if(za<=C(0)){z[h+228>>2]=-E;v[h+220>>2]=0;v[h+236>>2]=0;v[h+204>>2]=0;z[h+200>>2]=L;z[h+196>>2]=H;z[h+192>>2]=M;z[h+232>>2]=-x;z[h+224>>2]=-J;z[h+216>>2]=-y;z[h+212>>2]=-A;z[h+208>>2]=-I;i=C(C(n*x)+S);j=C(C(n*E)+X);k=C(C(n*J)+U);break s}z[h+228>>2]=E;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=y;z[h+212>>2]=A;z[h+208>>2]=I;v[h+204>>2]=0;z[h+200>>2]=L;z[h+196>>2]=H;z[h+192>>2]=M;j=C(X-C(n*E));z[h+232>>2]=x;i=C(S-C(n*x));z[h+224>>2]=J;k=C(U-C(n*J));E=C(-E);x=C(-x);J=C(-J)}v[h+252>>2]=0;z[h+248>>2]=i;z[h+244>>2]=j;z[h+240>>2]=k;a=h+32|0;o1(a,h+192|0,h+416|0);v[h+748>>2]=0;z[h+744>>2]=C(z[h+232>>2]*x)+C(C(z[h+224>>2]*J)+C(E*z[h+228>>2]));z[h+740>>2]=C(z[h+216>>2]*x)+C(C(z[h+208>>2]*J)+C(E*z[h+212>>2]));z[h+736>>2]=C(z[h+200>>2]*x)+C(C(z[h+192>>2]*J)+C(E*z[h+196>>2]));b=h+112|0;c=h+816|0;d=h+736|0;p1(b,c,d,a,h+704|0);q1(h+864|0,h+848|0,b,c,d,g,h+348|0,h+720|0)}c=v[h+348>>2];if(!c){break f}a=0;while(1){b=B(a,48)+g|0;d=v[b+20>>2];v[h+32>>2]=v[b+16>>2];v[h+36>>2]=d;d=v[b+4>>2];v[b+16>>2]=v[b>>2];v[b+20>>2]=d;d=v[b+28>>2];v[h+40>>2]=v[b+24>>2];v[h+44>>2]=d;d=v[b+12>>2];v[b+24>>2]=v[b+8>>2];v[b+28>>2]=d;d=v[h+36>>2];v[b>>2]=v[h+32>>2];v[b+4>>2]=d;d=v[h+44>>2];v[b+8>>2]=v[h+40>>2];v[b+12>>2]=d;a=a+1|0;if((c|0)!=(a|0)){continue}break}}a=h+192|0;o1(h+32|0,h+352|0,a);o1(h+736|0,h+416|0,a);t:{c=v[h+348>>2];if(!c){break t}l=z[h+72>>2];i=z[g+40>>2];o=z[h+40>>2];j=z[g+32>>2];k=z[g+36>>2];s=z[h+56>>2];q=C(C(l*i)+C(C(o*j)+C(k*s)));p=z[h+68>>2];r=z[h+36>>2];m=z[h+52>>2];n=C(C(p*i)+C(C(r*j)+C(k*m)));u=z[h+64>>2];F=z[h+32>>2];E=z[h+48>>2];y=C(C(u*i)+C(C(F*j)+C(k*E)));x=z[h+88>>2];A=z[h+84>>2];J=z[h+776>>2];I=z[h+760>>2];L=z[h+772>>2];H=z[h+756>>2];M=z[h+792>>2];N=z[h+788>>2];O=z[h+80>>2];G=z[h+744>>2];Q=z[h+740>>2];R=z[h+768>>2];P=z[h+752>>2];S=z[h+736>>2];T=z[h+784>>2];a=0;while(1){b=B(a,48)+g|0;v[b+12>>2]=0;z[b+32>>2]=y;z[b+40>>2]=q;z[b+36>>2]=n;v[b+28>>2]=0;i=z[b+8>>2];j=z[b>>2];k=z[b+4>>2];z[b+8>>2]=M+C(C(J*i)+C(C(G*j)+C(I*k)));z[b+4>>2]=N+C(C(L*i)+C(C(Q*j)+C(H*k)));z[b>>2]=T+C(C(R*i)+C(C(S*j)+C(P*k)));i=z[b+24>>2];j=z[b+16>>2];k=z[b+20>>2];z[b+16>>2]=O+C(C(u*i)+C(C(F*j)+C(E*k)));z[b+20>>2]=A+C(C(p*i)+C(C(r*j)+C(m*k)));z[b+24>>2]=x+C(C(l*i)+C(C(o*j)+C(s*k)));a=a+1|0;if((c|0)!=(a|0)){continue}break}if(!c){break t}s2(f,g,c,sa);a=v[f+76>>2];i=z[a+40>>2];j=z[a+36>>2];k=z[a+32>>2];v[h+204>>2]=0;l=C(C(i*z[h+392>>2])+C(C(k*z[h+360>>2])+C(j*z[h+376>>2])));o=C(C(i*z[h+384>>2])+C(C(k*z[h+352>>2])+C(j*z[h+368>>2])));j=C(C(i*z[h+388>>2])+C(C(k*z[h+356>>2])+C(j*z[h+372>>2])));i=C(C(1)/C(K(C(C(l*l)+C(C(o*o)+C(j*j))))));z[h+200>>2]=l*i;z[h+196>>2]=j*i;z[h+192>>2]=o*i;b=0;a=0;u:{if(!w[f+64|0]){break u}while(1){b=v[f+76>>2]+B(a,48)|0;i=z[b+24>>2];j=z[b+20>>2];k=z[b+16>>2];l=z[b+44>>2];o=z[h+400>>2];s=z[h+384>>2];q=z[h+368>>2];p=z[h+352>>2];r=z[h+404>>2];m=z[h+388>>2];n=z[h+372>>2];u=z[h+356>>2];F=z[h+408>>2];E=z[h+392>>2];y=z[h+376>>2];x=z[h+360>>2];c=v[h+196>>2];d=v[h+192>>2];A=z[h+200>>2];b=(a<<6)+g|0;v[b+28>>2]=0;z[b+8>>2]=A;v[b>>2]=d;v[b+4>>2]=c;v[b+52>>2]=-1;z[b+12>>2]=l;z[b+24>>2]=F+C(C(E*i)+C(C(x*k)+C(j*y)));z[b+20>>2]=r+C(C(m*i)+C(C(u*k)+C(j*n)));z[b+16>>2]=o+C(C(s*i)+C(C(p*k)+C(j*q)));b=a+1|0;if(a>>>0>62){break u}a=b;if(a>>>0>2]=b;break c}a=v[h+716>>2];v[h+792>>2]=v[h+712>>2];v[h+796>>2]=a;t[h+768|0]=0;v[h+764>>2]=3;v[h+736>>2]=0;v[h+740>>2]=0;v[h+744>>2]=0;v[h+748>>2]=0;a=v[h+708>>2];v[h+784>>2]=v[h+704>>2];v[h+788>>2]=a;i=z[h+704>>2];j=z[h+708>>2];i=i<=j?i:j;j=z[h+712>>2];i=i<=j?i:j;j=C(i*C(.05000000074505806));z[h+760>>2]=j;z[h+756>>2]=j;z[h+752>>2]=i*C(.15000000596046448);t[h+304|0]=0;v[h+300>>2]=3;v[h+272>>2]=0;v[h+276>>2]=0;v[h+280>>2]=0;v[h+284>>2]=0;a=v[h+700>>2];v[h+328>>2]=v[h+696>>2];v[h+332>>2]=a;a=v[h+692>>2];v[h+320>>2]=v[h+688>>2];v[h+324>>2]=a;i=z[h+688>>2];j=z[h+692>>2];i=i<=j?i:j;j=z[h+696>>2];i=i<=j?i:j;j=C(i*C(.05000000074505806));z[h+296>>2]=j;z[h+292>>2]=j;z[h+288>>2]=i*C(.15000000596046448);t[f+66|0]=0;a=v[h+548>>2];v[h+224>>2]=v[h+544>>2];v[h+228>>2]=a;a=v[h+540>>2];v[h+216>>2]=v[h+536>>2];v[h+220>>2]=a;a=v[h+556>>2];v[h+232>>2]=v[h+552>>2];v[h+236>>2]=a;a=v[h+564>>2];v[h+240>>2]=v[h+560>>2];v[h+244>>2]=a;a=v[h+572>>2];v[h+248>>2]=v[h+568>>2];v[h+252>>2]=a;a=v[h+580>>2];v[h+256>>2]=v[h+576>>2];v[h+260>>2]=a;a=v[h+588>>2];v[h+264>>2]=v[h+584>>2];v[h+268>>2]=a;a=v[h+532>>2];v[h+208>>2]=v[h+528>>2];v[h+212>>2]=a;i=z[h+212>>2];z[h+212>>2]=z[h+224>>2];v[h+192>>2]=141468;v[h+200>>2]=h+528;v[h+196>>2]=h+736;j=z[h+216>>2];k=z[h+232>>2];z[h+224>>2]=i;z[h+216>>2]=z[h+240>>2];z[h+232>>2]=z[h+244>>2];z[h+244>>2]=k;z[h+240>>2]=j;v[h+832>>2]=141808;v[h+836>>2]=h+272;v[h+152>>2]=0;v[h+156>>2]=0;v[h+144>>2]=0;v[h+148>>2]=0;v[h+136>>2]=0;v[h+140>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+120>>2]=0;v[h+124>>2]=0;v[h+112>>2]=0;v[h+116>>2]=0;v[h+176>>2]=0;b=f+67|0;c=f+71|0;a=aY(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=v[h+548>>2];a=h- -64|0;v[a>>2]=v[h+544>>2];v[a+4>>2]=d;d=v[h+540>>2];v[h+56>>2]=v[h+536>>2];v[h+60>>2]=d;d=v[h+556>>2];v[h+72>>2]=v[h+552>>2];v[h+76>>2]=d;d=v[h+564>>2];v[h+80>>2]=v[h+560>>2];v[h+84>>2]=d;d=v[h+572>>2];v[h+88>>2]=v[h+568>>2];v[h+92>>2]=d;d=v[h+580>>2];v[h+96>>2]=v[h+576>>2];v[h+100>>2]=d;d=v[h+588>>2];v[h+104>>2]=v[h+584>>2];v[h+108>>2]=d;d=v[h+532>>2];v[h+48>>2]=v[h+528>>2];v[h+52>>2]=d;i=z[h+52>>2];z[h+52>>2]=z[a>>2];v[h+32>>2]=141468;v[h+40>>2]=h+528;v[h+36>>2]=h+736;j=z[h+56>>2];k=z[h+72>>2];z[a>>2]=i;z[h+56>>2]=z[h+80>>2];z[h+72>>2]=z[h+84>>2];z[h+84>>2]=k;z[h+80>>2]=j;v[h+896>>2]=141808;v[h+900>>2]=h+272;a=w[f+66|0];z[h+16>>2]=sa;d=v[h+28>>2];v[h+8>>2]=v[h+24>>2];v[h+12>>2]=d;d=v[h+20>>2];v[h>>2]=v[h+16>>2];v[h+4>>2]=d;a=J_(h+32|0,h+896|0,b,c,a,1,h,h+112|0)}v:{switch(a-2|0){case 0:case 3:z[h+32>>2]=z[h+512>>2]*C(.05000000074505806);v[h+908>>2]=0;i=C(z[h+120>>2]-z[h+584>>2]);j=C(z[h+112>>2]-z[h+576>>2]);k=C(z[h+116>>2]-z[h+580>>2]);z[h+904>>2]=C(z[h+568>>2]*i)+C(C(z[h+560>>2]*j)+C(k*z[h+564>>2]));z[h+900>>2]=C(z[h+552>>2]*i)+C(C(z[h+544>>2]*j)+C(k*z[h+548>>2]));z[h+896>>2]=C(z[h+536>>2]*i)+C(C(z[h+528>>2]*j)+C(k*z[h+532>>2]));b=v[h+140>>2];v[h+888>>2]=v[h+136>>2];v[h+892>>2]=b;b=v[h+132>>2];v[h+880>>2]=v[h+128>>2];v[h+884>>2]=b;z[h+876>>2]=z[h+176>>2];z[h+872>>2]=z[h+152>>2];b=v[h+148>>2];v[h+864>>2]=v[h+144>>2];v[h+868>>2]=b;Ba=h,Ca=u2(f,h+896|0,h+880|0,h+864|0,h+32|0),v[Ba+348>>2]=Ca;v[h+860>>2]=0;i=z[h+636>>2];j=C(C(i*i)+C(-.5));k=z[h+632>>2];l=z[h+152>>2];o=z[h+624>>2];s=z[h+144>>2];q=z[h+628>>2];p=z[h+148>>2];r=C(C(k*l)+C(C(o*s)+C(q*p)));m=C(C(C(i*C(C(o*p)-C(s*q)))+C(j*l))+C(k*r));m=C(m+m);n=C(C(o*r)+C(C(s*j)+C(i*C(C(q*l)-C(p*k)))));n=C(n+n);i=C(C(q*r)+C(C(j*p)+C(i*C(C(k*s)-C(l*o)))));j=C(i+i);i=C(C(1)/C(K(C(C(m*m)+C(C(n*n)+C(j*j))))));z[h+856>>2]=m*i;z[h+852>>2]=j*i;z[h+848>>2]=n*i;q2(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=w[f+64|0];a=0;if(!b){break b}a=1;c=v[f+76>>2];l=z[c+32>>2];i=l;o=z[c+36>>2];j=o;s=z[c+40>>2];k=s;w:{if((b|0)==1){break w}d=b-1|0;e=d&1;k=s;j=o;i=l;if((b|0)!=2){qa=d&-2;d=0;while(1){b=c+B(a,48)|0;i=C(C(i+z[b+32>>2])+z[b+80>>2]);k=C(C(k+z[b+40>>2])+z[b+88>>2]);j=C(C(j+z[b+36>>2])+z[b+84>>2]);a=a+2|0;d=d+2|0;if((qa|0)!=(d|0)){continue}break}}if(!e){break w}a=c+B(a,48)|0;i=C(i+z[a+32>>2]);k=C(k+z[a+40>>2]);j=C(j+z[a+36>>2])}v[h+204>>2]=0;q=z[h+632>>2];a=C(C(k*k)+C(C(i*i)+C(j*j)))>C(1.1920928955078125e-7);k=a?k:s;s=z[h+624>>2];l=a?i:l;p=z[h+628>>2];j=a?j:o;o=C(C(q*k)+C(C(s*l)+C(p*j)));i=z[h+636>>2];r=C(C(i*i)+C(-.5));m=C(C(q*o)+C(C(i*C(C(s*j)-C(l*p)))+C(k*r)));m=C(m+m);n=C(C(s*o)+C(C(i*C(C(p*k)-C(j*q)))+C(l*r)));n=C(n+n);i=C(C(p*o)+C(C(i*C(C(q*l)-C(k*s)))+C(j*r)));j=C(i+i);i=C(C(1)/C(K(C(C(m*m)+C(C(n*n)+C(j*j))))));z[h+200>>2]=m*i;z[h+196>>2]=j*i;z[h+192>>2]=n*i;q2(f,g,h+192|0,h+624|0,h+720|0)}a=1}xa=h+912|0;return a|0}function uM(a,b,c){var d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=C(0),x=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=0,G=0,H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=0,U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=C(0),rc=C(0),sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=C(0),Ac=C(0),Bc=C(0),Cc=C(0),Dc=C(0),Ec=C(0),Fc=C(0),Gc=C(0),Hc=C(0),Ic=C(0),Jc=C(0),Kc=C(0),Lc=C(0),Mc=C(0),Nc=C(0),Oc=C(0),Pc=C(0),Qc=C(0),Rc=C(0),Sc=C(0),Tc=C(0),Uc=C(0),Vc=C(0),Wc=C(0),Xc=C(0),Yc=C(0),Zc=C(0),_c=C(0),$c=C(0),ad=C(0),bd=C(0),cd=C(0),dd=C(0),ed=C(0),fd=C(0),gd=C(0),hd=C(0),id=C(0),jd=C(0),kd=C(0),ld=C(0),md=C(0),nd=C(0),od=C(0),pd=C(0),qd=C(0),rd=C(0),sd=C(0),td=C(0),ud=C(0),vd=C(0),wd=C(0),xd=C(0),yd=C(0),zd=C(0),Ad=C(0),Bd=C(0),Cd=C(0),Dd=C(0),Ed=C(0),Fd=C(0),Gd=C(0),Hd=C(0),Id=C(0),Jd=C(0),Kd=C(0),Ld=C(0),Md=C(0),Nd=C(0),Od=C(0),Pd=C(0),Qd=C(0),Rd=C(0),Sd=C(0),Td=C(0),Ud=C(0),Vd=C(0),Wd=C(0),Xd=C(0),Yd=C(0),Zd=C(0),_d=C(0),$d=C(0),ae=C(0),be=C(0),ce=C(0),de=C(0),ee=C(0),fe=C(0),ge=C(0),he=C(0),ie=C(0),je=C(0),ke=C(0),le=C(0),me=C(0),ne=C(0),oe=C(0),pe=C(0),qe=C(0),re=C(0),se=C(0),te=C(0),ue=C(0),ve=C(0),we=C(0),xe=C(0),ye=C(0),ze=C(0),Ae=C(0),Be=C(0),Ce=C(0),De=C(0),Ee=C(0),Fe=C(0),Ge=C(0),He=C(0),Ie=C(0),Je=C(0),Ke=C(0),Le=C(0),Me=C(0),Ne=C(0),Oe=C(0),Pe=C(0),Qe=C(0),Re=C(0),Se=C(0),Te=C(0),Ue=C(0),Ve=C(0),We=C(0),Xe=C(0),Ye=C(0),Ze=C(0),_e=C(0),$e=C(0),af=C(0),bf=C(0),cf=C(0),df=C(0),ef=C(0),ff=C(0),gf=C(0),hf=C(0),jf=C(0),kf=C(0),lf=C(0),mf=C(0),nf=C(0),of=C(0),pf=C(0),qf=C(0),rf=C(0),sf=C(0),tf=C(0),uf=C(0),vf=C(0),wf=C(0),xf=C(0),yf=C(0),zf=C(0),Af=C(0),Bf=C(0),Cf=C(0),Df=C(0),Ef=C(0),Ff=C(0),Gf=C(0),Hf=C(0),If=C(0),Jf=C(0),Kf=C(0),Lf=C(0),Mf=C(0),Nf=C(0),Of=C(0),Pf=C(0),Qf=C(0),Rf=C(0),Sf=C(0),Tf=C(0),Uf=C(0),Vf=C(0),Wf=C(0),Xf=C(0),Yf=C(0),Zf=C(0),_f=C(0),$f=C(0),ag=C(0),bg=C(0),cg=C(0),dg=C(0),eg=C(0),fg=C(0),gg=C(0),hg=C(0),ig=C(0),jg=C(0),kg=C(0),lg=C(0),mg=C(0),ng=C(0),og=C(0),pg=C(0),qg=C(0),rg=C(0),sg=C(0),tg=C(0),ug=C(0),vg=C(0),wg=C(0),xg=C(0),yg=C(0),zg=C(0),Ag=C(0),Bg=C(0),Cg=C(0),Dg=C(0),Eg=C(0);h=xa-224|0;xa=h;d=v[a+24>>2];if(d){sc=z[d+108>>2];tc=z[d+104>>2];uc=z[d+100>>2];vc=z[d+92>>2];wc=z[d+88>>2];xc=z[d+84>>2];n=v[a+100>>2];Wa=z[n+16>>2];o=v[a+96>>2];Xa=z[o+24>>2];za=z[o+20>>2];Ya=z[n+8>>2];Aa=z[n+4>>2];Za=z[n>>2];p=v[a+68>>2];_a=z[p+16>>2];q=v[a+64>>2];$a=z[q+24>>2];Ba=z[q+20>>2];ab=z[p+8>>2];Ca=z[p+4>>2];bb=z[p>>2];r=v[a+36>>2];cb=z[r+16>>2];s=v[a+32>>2];db=z[s+24>>2];Da=z[s+20>>2];eb=z[r+8>>2];Ea=z[r+4>>2];fb=z[r>>2];t=v[a+4>>2];gb=z[t+24>>2];Fa=z[t+20>>2];u=v[a>>2];hb=z[u+24>>2];Ga=z[u+20>>2];F=(v[a+16>>2]<<6)+b|0;Ud=z[F+28>>2];G=(v[a+12>>2]<<6)+b|0;Vd=z[G+28>>2];ib=z[n+24>>2];Ha=z[n+20>>2];jb=z[p+24>>2];Ia=z[p+20>>2];kb=z[r+24>>2];Ja=z[r+20>>2];H=(v[a+112>>2]<<6)+b|0;Wd=z[H+28>>2];I=(v[a+80>>2]<<6)+b|0;Xd=z[I+28>>2];R=(v[a+48>>2]<<6)+b|0;Yd=z[R+28>>2];Zd=z[F+60>>2];_d=z[F+56>>2];$d=z[F+52>>2];ae=z[F+48>>2];be=z[F+44>>2];ce=z[F+40>>2];de=z[F+36>>2];ee=z[F+32>>2];S=(v[a+108>>2]<<6)+b|0;fe=z[S+28>>2];T=(v[a+76>>2]<<6)+b|0;ge=z[T+28>>2];a=(v[a+44>>2]<<6)+b|0;he=z[a+28>>2];ie=z[G+60>>2];je=z[G+56>>2];ke=z[G+52>>2];le=z[G+48>>2];me=z[G+44>>2];ne=z[G+40>>2];oe=z[G+36>>2];pe=z[G+32>>2];qe=z[H+60>>2];re=z[H+56>>2];se=z[H+52>>2];te=z[H+48>>2];ue=z[H+44>>2];ve=z[H+40>>2];we=z[H+36>>2];xe=z[H+32>>2];ye=z[I+60>>2];ze=z[I+56>>2];Ae=z[I+52>>2];Be=z[I+48>>2];Ce=z[I+44>>2];De=z[I+40>>2];Ee=z[I+36>>2];Fe=z[I+32>>2];Ge=z[R+60>>2];He=z[R+56>>2];Ie=z[R+52>>2];Je=z[R+48>>2];Ke=z[R+44>>2];Le=z[R+40>>2];Me=z[R+36>>2];Ne=z[R+32>>2];Oe=z[S+60>>2];Pe=z[S+56>>2];Qe=z[S+52>>2];Re=z[S+48>>2];Se=z[S+44>>2];Te=z[S+40>>2];Ue=z[S+36>>2];Ve=z[S+32>>2];We=z[T+60>>2];Xe=z[T+56>>2];Ye=z[T+52>>2];Ze=z[T+48>>2];_e=z[T+44>>2];$e=z[T+40>>2];af=z[T+36>>2];bf=z[T+32>>2];cf=z[a+60>>2];df=z[a+56>>2];ef=z[a+52>>2];ff=z[a+48>>2];gf=z[a+44>>2];hf=z[a+40>>2];jf=z[a+36>>2];kf=z[a+32>>2];ga=z[u+52>>2];U=z[s+52>>2];ha=z[q+52>>2];V=z[o+52>>2];ia=z[u+56>>2];ja=z[s+56>>2];W=z[q+56>>2];ka=z[o+56>>2];X=z[r+48>>2];la=z[p+48>>2];ma=z[n+48>>2];Y=z[t+52>>2];na=z[r+52>>2];oa=z[p+52>>2];Z=z[n+52>>2];pa=z[t+56>>2];qa=z[r+56>>2];ra=z[p+56>>2];e=z[n+56>>2];lb=z[u+36>>2];mb=z[u+40>>2];nb=z[t+36>>2];ob=z[t+40>>2];pb=z[s+36>>2];qb=z[s+40>>2];rb=z[r+32>>2];sb=z[r+36>>2];tb=z[r+40>>2];ub=z[q+36>>2];vb=z[q+40>>2];wb=z[p+32>>2];xb=z[p+36>>2];yb=z[p+40>>2];zb=z[o+36>>2];Ab=z[o+40>>2];Bb=z[n+32>>2];Cb=z[n+36>>2];Db=z[n+40>>2];f=z[H+12>>2];g=z[I+12>>2];sa=z[R+12>>2];ta=z[F+12>>2];ua=z[H+8>>2];_=z[I+8>>2];va=z[R+8>>2];wa=z[F+8>>2];i=z[F>>2];ea=z[R>>2];$=z[I>>2];J=z[H>>2];aa=z[F+4>>2];ba=z[R+4>>2];K=z[I+4>>2];fa=z[H+4>>2];k=z[G+12>>2];D=z[a+12>>2];P=z[T+12>>2];Q=z[S+12>>2];E=z[G+8>>2];ca=z[a+8>>2];L=z[T+8>>2];w=z[S+8>>2];M=z[G+4>>2];l=z[a+4>>2];x=z[T+4>>2];da=z[S+4>>2];N=z[G>>2];A=z[a>>2];O=z[T>>2];yc=z[d+96>>2];zc=z[d+80>>2];Eb=z[o+16>>2];Fb=z[o+8>>2];Ka=z[o+4>>2];Gb=z[o>>2];Hb=z[q+16>>2];Ib=z[q+8>>2];La=z[q+4>>2];Jb=z[q>>2];Kb=z[s+16>>2];Lb=z[s+8>>2];Ma=z[s+4>>2];Mb=z[s>>2];Nb=z[t+16>>2];Ob=z[u+16>>2];Pb=z[t+8>>2];Na=z[t+4>>2];Qb=z[t>>2];Rb=z[u+8>>2];Oa=z[u+4>>2];Sb=z[u>>2];m=z[u+48>>2];B=z[t+48>>2];Pa=z[s+48>>2];Qa=z[q+48>>2];Ra=z[o+48>>2];Tb=z[u+32>>2];Ub=z[t+32>>2];Vb=z[s+32>>2];Wb=z[q+32>>2];Xb=z[o+32>>2];z[h+220>>2]=z[S>>2];z[h+216>>2]=O;z[h+212>>2]=A;z[h+208>>2]=N;z[h+204>>2]=da;z[h+200>>2]=x;z[h+196>>2]=l;z[h+192>>2]=M;z[h+188>>2]=w;z[h+184>>2]=L;z[h+180>>2]=ca;z[h+176>>2]=E;z[h+172>>2]=Q;z[h+168>>2]=P;z[h+164>>2]=D;z[h+160>>2]=k;z[h+140>>2]=fa;z[h+136>>2]=K;z[h+132>>2]=ba;z[h+128>>2]=aa;z[h+156>>2]=J;z[h+152>>2]=$;z[h+148>>2]=ea;z[h+144>>2]=i;z[h+112>>2]=wa;z[h+116>>2]=va;z[h+120>>2]=_;z[h+124>>2]=ua;z[h+96>>2]=ta;z[h+100>>2]=sa;z[h+104>>2]=g;z[h+108>>2]=f;vM(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);vM(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(v[d+4>>2]){lf=C(z[d+636>>2]+C(C(C(Xb*z[d+300>>2])+C(C(zb*z[d+348>>2])+C(Ab*z[d+396>>2])))-C(C(Bb*z[d+444>>2])+C(C(Cb*z[d+492>>2])+C(Db*z[d+540>>2])))));mf=C(z[d+632>>2]+C(C(C(Wb*z[d+296>>2])+C(C(ub*z[d+344>>2])+C(vb*z[d+392>>2])))-C(C(wb*z[d+440>>2])+C(C(xb*z[d+488>>2])+C(yb*z[d+536>>2])))));nf=C(z[d+628>>2]+C(C(C(Vb*z[d+292>>2])+C(C(pb*z[d+340>>2])+C(qb*z[d+388>>2])))-C(C(rb*z[d+436>>2])+C(C(sb*z[d+484>>2])+C(tb*z[d+532>>2])))));of=C(z[d+624>>2]+C(C(C(Tb*z[d+288>>2])+C(C(lb*z[d+336>>2])+C(mb*z[d+384>>2])))-C(C(Ub*z[d+432>>2])+C(C(nb*z[d+480>>2])+C(ob*z[d+528>>2])))));pf=C(z[d+620>>2]+C(C(C(Xb*z[d+284>>2])+C(C(zb*z[d+332>>2])+C(Ab*z[d+380>>2])))-C(C(Bb*z[d+428>>2])+C(C(Cb*z[d+476>>2])+C(Db*z[d+524>>2])))));qf=C(z[d+616>>2]+C(C(C(Wb*z[d+280>>2])+C(C(ub*z[d+328>>2])+C(vb*z[d+376>>2])))-C(C(wb*z[d+424>>2])+C(C(xb*z[d+472>>2])+C(yb*z[d+520>>2])))));rf=C(z[d+612>>2]+C(C(C(Vb*z[d+276>>2])+C(C(pb*z[d+324>>2])+C(qb*z[d+372>>2])))-C(C(rb*z[d+420>>2])+C(C(sb*z[d+468>>2])+C(tb*z[d+516>>2])))));sf=C(z[d+608>>2]+C(C(C(Tb*z[d+272>>2])+C(C(lb*z[d+320>>2])+C(mb*z[d+368>>2])))-C(C(Ub*z[d+416>>2])+C(C(nb*z[d+464>>2])+C(ob*z[d+512>>2])))));tf=C(z[d+604>>2]+C(C(C(Xb*z[d+268>>2])+C(C(zb*z[d+316>>2])+C(Ab*z[d+364>>2])))-C(C(Bb*z[d+412>>2])+C(C(Cb*z[d+460>>2])+C(Db*z[d+508>>2])))));uf=C(z[d+600>>2]+C(C(C(Wb*z[d+264>>2])+C(C(ub*z[d+312>>2])+C(vb*z[d+360>>2])))-C(C(wb*z[d+408>>2])+C(C(xb*z[d+456>>2])+C(yb*z[d+504>>2])))));vf=C(z[d+596>>2]+C(C(C(Vb*z[d+260>>2])+C(C(pb*z[d+308>>2])+C(qb*z[d+356>>2])))-C(C(rb*z[d+404>>2])+C(C(sb*z[d+452>>2])+C(tb*z[d+500>>2])))));wf=C(z[d+592>>2]+C(C(C(Tb*z[d+256>>2])+C(C(lb*z[d+304>>2])+C(mb*z[d+352>>2])))-C(C(Ub*z[d+400>>2])+C(C(nb*z[d+448>>2])+C(ob*z[d+496>>2])))));Yb=z[h+12>>2];xf=C(C(e+Yb)-z[d+252>>2]);Zb=z[h+8>>2];yf=C(C(ra+Zb)-z[d+248>>2]);_b=z[h+4>>2];zf=C(C(qa+_b)-z[d+244>>2]);$b=z[h>>2];Af=C(C(pa+$b)-z[d+240>>2]);ac=z[h+28>>2];Bf=C(C(Z+ac)-z[d+236>>2]);bc=z[h+24>>2];Cf=C(C(oa+bc)-z[d+232>>2]);cc=z[h+20>>2];Df=C(C(na+cc)-z[d+228>>2]);dc=z[h+16>>2];Ef=C(C(Y+dc)-z[d+224>>2]);ec=z[h+44>>2];Ff=C(C(ma+ec)-z[d+220>>2]);fc=z[h+40>>2];Gf=C(C(la+fc)-z[d+216>>2]);gc=z[h+36>>2];Hf=C(C(X+gc)-z[d+212>>2]);hc=z[h+60>>2];If=C(C(ka+hc)-z[d+204>>2]);ic=z[h+56>>2];Jf=C(C(W+ic)-z[d+200>>2]);jc=z[h+52>>2];Kf=C(C(ja+jc)-z[d+196>>2]);kc=z[h+48>>2];Lf=C(C(ia+kc)-z[d+192>>2]);lc=z[h+76>>2];Mf=C(C(V+lc)-z[d+188>>2]);mc=z[h+72>>2];Nf=C(C(ha+mc)-z[d+184>>2]);nc=z[h+68>>2];Of=C(C(U+nc)-z[d+180>>2]);oc=z[h+64>>2];Pf=C(C(ga+oc)-z[d+176>>2]);i=Ra;Ra=z[h+92>>2];Qf=C(C(i+Ra)-z[d+172>>2]);i=Qa;Qa=z[h+88>>2];Rf=C(C(i+Qa)-z[d+168>>2]);pc=z[h+84>>2];Sf=C(C(Pa+pc)-z[d+164>>2]);qc=z[h+32>>2];Tf=C(C(B+qc)-z[d+208>>2]);rc=z[h+80>>2];Uf=C(C(m+rc)-z[d+160>>2]);Ac=z[d+76>>2];Bc=z[d+72>>2];Cc=z[d+68>>2];Dc=z[d+60>>2];Ec=z[d+56>>2];Fc=z[d+52>>2];Gc=z[d+64>>2];Hc=z[d+48>>2];a=d+640|0;b=0;while(1){Vf=z[a+160>>2];Wf=z[a+144>>2];Xf=z[a+224>>2];ga=z[a+80>>2];Yf=z[a+208>>2];U=z[a+96>>2];N=z[a+276>>2];A=z[a+292>>2];Ic=z[a+308>>2];Zf=z[a+244>>2];_f=z[a+180>>2];da=z[a+324>>2];$f=z[a+116>>2];O=z[a+260>>2];ag=z[a+52>>2];bg=z[a+340>>2];F=v[a+356>>2];cg=z[a+164>>2];dg=z[a+132>>2];ha=z[a+20>>2];eg=z[a+148>>2];V=z[a+36>>2];fg=z[a+228>>2];gg=z[a+196>>2];ia=z[a+84>>2];hg=z[a+212>>2];ja=z[a+68>>2];W=z[a+100>>2];L=z[a+280>>2];w=z[a+296>>2];Jc=z[a+312>>2];ig=z[a+248>>2];jg=z[a+184>>2];ca=z[a+328>>2];kg=z[a+120>>2];M=z[a+264>>2];lg=z[a+56>>2];mg=z[a+344>>2];G=v[a+360>>2];D=z[a+168>>2];P=z[a+136>>2];ka=z[a+24>>2];Q=z[a+152>>2];X=z[a+40>>2];E=z[a+232>>2];ng=z[a+200>>2];la=z[a+88>>2];og=z[a+216>>2];ma=z[a+72>>2];Y=z[a+104>>2];Kc=z[a+272>>2];Lc=z[a+288>>2];Mc=z[a+304>>2];pg=z[a+240>>2];qg=z[a+176>>2];Pa=z[a+320>>2];rg=z[a+112>>2];Nc=z[a+256>>2];sg=z[a+48>>2];tg=z[a+336>>2];H=v[a+352>>2];ug=z[d+544>>2];ya=z[d+256>>2];Oc=z[d+304>>2];Pc=z[d+352>>2];Qc=z[d+400>>2];Rc=z[d+448>>2];Sc=z[d+496>>2];vg=z[d+560>>2];Tc=z[d+272>>2];Uc=z[d+320>>2];Vc=z[d+368>>2];Wc=z[d+416>>2];Xc=z[d+464>>2];Yc=z[d+512>>2];wg=z[d+576>>2];Zc=z[d+288>>2];_c=z[d+336>>2];$c=z[d+384>>2];xg=z[a+128>>2];na=z[a+16>>2];oa=z[a>>2];Z=z[a+32>>2];ad=z[d+432>>2];bd=z[d+480>>2];cd=z[d+528>>2];yg=z[a+192>>2];pa=z[a+64>>2];zg=z[d+548>>2];m=z[d+260>>2];B=z[d+308>>2];Sa=z[d+356>>2];dd=z[d+404>>2];ed=z[d+452>>2];fd=z[d+500>>2];Ag=z[d+564>>2];gd=z[d+276>>2];hd=z[d+324>>2];id=z[d+372>>2];jd=z[d+420>>2];kd=z[d+468>>2];ld=z[d+516>>2];Bg=z[d+580>>2];md=z[d+292>>2];nd=z[d+340>>2];od=z[d+388>>2];qa=z[a+4>>2];pd=z[d+436>>2];qd=z[d+484>>2];rd=z[d+532>>2];Cg=z[d+552>>2];fa=z[d+264>>2];l=z[d+312>>2];x=z[d+360>>2];Ta=z[d+408>>2];sd=z[d+456>>2];td=z[d+504>>2];Dg=z[d+568>>2];ud=z[d+280>>2];vd=z[d+328>>2];wd=z[d+376>>2];xd=z[d+424>>2];yd=z[d+472>>2];zd=z[d+520>>2];Eg=z[d+584>>2];Ad=z[d+296>>2];Bd=z[d+344>>2];Cd=z[d+392>>2];ra=z[a+8>>2];Dd=z[d+440>>2];Ed=z[d+488>>2];Fd=z[d+536>>2];sa=z[a+44>>2];ta=z[a+28>>2];e=C(z[a+140>>2]+C(C(lc*sa)-C(hc*ta)));ua=z[a+12>>2];f=C(z[a+156>>2]+C(C(hc*ua)-C(Ra*sa)));g=C(C(C(Ra*ta)-C(lc*ua))+z[a+172>>2]);i=C(C(C(fe*e)+C(Ve*f))+C(Ue*g));ea=z[d+268>>2];$=C(C(C(Te*e)+C(Se*f))+C(Re*g));k=z[d+316>>2];J=C(C(C(Qe*e)+C(Pe*f))+C(Oe*g));Ua=z[d+364>>2];_=z[a+108>>2];va=z[a+92>>2];e=C(z[a+204>>2]+C(C(ac*_)-C(Yb*va)));wa=z[a+76>>2];f=C(z[a+220>>2]+C(C(Yb*wa)-C(ec*_)));g=C(C(C(ec*va)-C(ac*wa))+z[a+236>>2]);aa=C(C(C(Wd*e)+C(xe*f))+C(we*g));Va=z[d+412>>2];ba=C(C(C(ve*e)+C(ue*f))+C(te*g));Gd=z[d+460>>2];K=C(C(C(se*e)+C(re*f))+C(qe*g));Hd=z[d+508>>2];e=C(z[d+556>>2]*C(C(i*ea)+C(C($*k)+C(C(J*Ua)+C(C(aa*Va)+C(C(ba*Gd)+C(K*Hd)))))));Id=z[d+284>>2];Jd=z[d+332>>2];Kd=z[d+380>>2];Ld=z[d+428>>2];Md=z[d+476>>2];Nd=z[d+524>>2];f=C(z[d+572>>2]*C(C(i*Id)+C(C($*Jd)+C(C(J*Kd)+C(C(aa*Ld)+C(C(ba*Md)+C(K*Nd)))))));Od=z[d+300>>2];Pd=z[d+348>>2];Qd=z[d+396>>2];Rd=z[d+444>>2];Sd=z[d+492>>2];Td=z[d+540>>2];g=C(z[d+588>>2]*C(C(i*Od)+C(C($*Pd)+C(C(J*Qd)+C(C(aa*Rd)+C(C(ba*Sd)+C(K*Td)))))));j=i;I=v[a+364>>2];i=I&16?C(1):C(0);ea=C(j-C(i*C(C(ea*e)+C(C(Id*f)+C(Od*g)))));$=C($-C(i*C(C(k*e)+C(C(Jd*f)+C(Pd*g)))));J=C(J-C(i*C(C(Ua*e)+C(C(Kd*f)+C(Qd*g)))));aa=C(aa-C(i*C(C(Va*e)+C(C(Ld*f)+C(Rd*g)))));ba=C(ba-C(i*C(C(Gd*e)+C(C(Md*f)+C(Sd*g)))));K=C(K-C(i*C(C(Hd*e)+C(C(Nd*f)+C(Td*g)))));k=C(C(C(Dc*C(C(C(ta*ta)+C(sa*sa))+C(ua*ua)))+C(vc*C(C(ea*ea)+C(C($*$)+C(J*J)))))+C(C(Ac*C(C(C(va*va)+C(_*_))+C(wa*wa)))+C(sc*C(C(aa*aa)+C(C(ba*ba)+C(K*K))))));k=k>C(0)?C(C(1)/k):C(0);i=C(C(C(C(C(C(Mf*ta)+C(If*sa))+C(Qf*ua))-C(C(C(Bf*va)+C(xf*_))+C(Ff*wa)))+C(z[a+60>>2]-C(i*C(C(tf*e)+C(C(pf*f)+C(lf*g))))))+C(z[a+348>>2]*C(C(C(Xb*ea)+C(C(zb*$)+C(Ab*J)))-C(C(Bb*aa)+C(C(Cb*ba)+C(Db*K))))));g=z[a+268>>2];f=C(C(i-C(g*c))*z[a+124>>2]);e=z[a+332>>2];f=e>f?f:e;e=I&64?C(-34028234663852886e22):C(-e);Ua=z[a+316>>2];e=C(C(C(C(C(C(C(C(Ka*ta)+C(Fb*sa))+C(Gb*ua))-C(C(C(Aa*va)+C(Ya*_))+C(Za*wa)))+C(C(C(Eb*ea)+C(C(za*$)+C(Xa*J)))-C(C(Wa*aa)+C(C(Ha*ba)+C(ib*K)))))*C(z[a+188>>2]*k))+C(k*C(g+(e>2]*Ua));f=z[a+300>>2];e=e>2];Va=e>f?e:f;z[a+316>>2]=Va;e=C(P+C(C(mc*X)-C(ic*ka)));f=C(Q+C(C(ic*ra)-C(Qa*X)));g=C(D+C(C(Qa*ka)-C(mc*ra)));i=C(C(C(ge*e)+C(bf*f))+C(af*g));k=C(C(C($e*e)+C(_e*f))+C(Ze*g));D=C(C(C(Ye*e)+C(Xe*f))+C(We*g));e=C(ng+C(C(bc*Y)-C(Zb*la)));f=C(og+C(C(Zb*ma)-C(fc*Y)));g=C(E+C(C(fc*la)-C(bc*ma)));P=C(C(C(Xd*e)+C(Fe*f))+C(Ee*g));Q=C(C(C(De*e)+C(Ce*f))+C(Be*g));E=C(C(C(Ae*e)+C(ze*f))+C(ye*g));e=C(Cg*C(C(i*fa)+C(C(l*k)+C(C(x*D)+C(C(Ta*P)+C(C(sd*Q)+C(td*E)))))));j=i;f=G&16?C(1):C(0);g=C(Dg*C(C(i*ud)+C(C(k*vd)+C(C(D*wd)+C(C(P*xd)+C(C(Q*yd)+C(E*zd)))))));i=C(Eg*C(C(i*Ad)+C(C(k*Bd)+C(C(D*Cd)+C(C(P*Dd)+C(C(Q*Ed)+C(E*Fd)))))));fa=C(j-C(f*C(C(fa*e)+C(C(ud*g)+C(Ad*i)))));k=C(k-C(f*C(C(l*e)+C(C(vd*g)+C(Bd*i)))));D=C(D-C(f*C(C(x*e)+C(C(wd*g)+C(Cd*i)))));P=C(P-C(f*C(C(Ta*e)+C(C(xd*g)+C(Dd*i)))));Q=C(Q-C(f*C(C(sd*e)+C(C(yd*g)+C(Ed*i)))));E=C(E-C(f*C(C(td*e)+C(C(zd*g)+C(Fd*i)))));l=C(C(C(Ec*C(C(C(ka*ka)+C(X*X))+C(ra*ra)))+C(wc*C(C(fa*fa)+C(C(k*k)+C(D*D)))))+C(C(Bc*C(C(C(la*la)+C(Y*Y))+C(ma*ma)))+C(tc*C(C(P*P)+C(C(Q*Q)+C(E*E))))));l=l>C(0)?C(C(1)/l):C(0);e=C(kg*C(C(C(C(C(C(C(Nf*ka)+C(Jf*X))+C(Rf*ra))-C(C(C(Cf*la)+C(yf*Y))+C(Gf*ma)))+C(lg-C(f*C(C(uf*e)+C(C(qf*g)+C(mf*i))))))+C(mg*C(C(C(Wb*fa)+C(C(ub*k)+C(vb*D)))-C(C(wb*P)+C(C(xb*Q)+C(yb*E))))))-C(M*c)));e=ef?e:f))))+C(ig*Jc));e=eL?e:L;z[a+312>>2]=Ta;e=C(dg+C(C(nc*V)-C(jc*ha)));f=C(eg+C(C(jc*qa)-C(pc*V)));g=C(cg+C(C(pc*ha)-C(nc*qa)));i=C(C(C(he*e)+C(kf*f))+C(jf*g));L=C(C(C(hf*e)+C(gf*f))+C(ff*g));w=C(C(C(ef*e)+C(df*f))+C(cf*g));e=C(gg+C(C(cc*W)-C(_b*ia)));f=C(hg+C(C(_b*ja)-C(gc*W)));g=C(fg+C(C(gc*ia)-C(cc*ja)));M=C(C(C(Yd*e)+C(Ne*f))+C(Me*g));l=C(C(C(Le*e)+C(Ke*f))+C(Je*g));x=C(C(C(Ie*e)+C(He*f))+C(Ge*g));e=C(zg*C(C(i*m)+C(C(B*L)+C(C(Sa*w)+C(C(dd*M)+C(C(ed*l)+C(fd*x)))))));j=i;f=F&16?C(1):C(0);g=C(Ag*C(C(i*gd)+C(C(L*hd)+C(C(w*id)+C(C(M*jd)+C(C(l*kd)+C(x*ld)))))));i=C(Bg*C(C(i*md)+C(C(L*nd)+C(C(w*od)+C(C(M*pd)+C(C(l*qd)+C(x*rd)))))));ca=C(j-C(f*C(C(m*e)+C(C(gd*g)+C(md*i)))));L=C(L-C(f*C(C(B*e)+C(C(hd*g)+C(nd*i)))));w=C(w-C(f*C(C(Sa*e)+C(C(id*g)+C(od*i)))));M=C(M-C(f*C(C(dd*e)+C(C(jd*g)+C(pd*i)))));l=C(l-C(f*C(C(ed*e)+C(C(kd*g)+C(qd*i)))));x=C(x-C(f*C(C(fd*e)+C(C(ld*g)+C(rd*i)))));m=C(C(C(Fc*C(C(C(ha*ha)+C(V*V))+C(qa*qa)))+C(xc*C(C(ca*ca)+C(C(L*L)+C(w*w)))))+C(C(Cc*C(C(C(ia*ia)+C(W*W))+C(ja*ja)))+C(uc*C(C(M*M)+C(C(l*l)+C(x*x))))));m=m>C(0)?C(C(1)/m):C(0);e=C($f*C(C(C(C(C(C(C(Of*ha)+C(Kf*V))+C(Sf*qa))-C(C(C(Df*ia)+C(zf*W))+C(Hf*ja)))+C(ag-C(f*C(C(vf*e)+C(C(rf*g)+C(nf*i))))))+C(bg*C(C(C(Vb*ca)+C(C(pb*L)+C(qb*w)))-C(C(rb*M)+C(C(sb*l)+C(tb*x))))))-C(O*c)));e=ef?e:f))))+C(Zf*Ic));e=eN?e:N;z[a+308>>2]=Sa;e=C(xg+C(C(oc*Z)-C(kc*na)));f=C(Wf+C(C(kc*oa)-C(rc*Z)));g=C(Vf+C(C(rc*na)-C(oc*oa)));i=C(C(C(Vd*e)+C(pe*f))+C(oe*g));N=C(C(C(ne*e)+C(me*f))+C(le*g));A=C(C(C(ke*e)+C(je*f))+C(ie*g));e=C(yg+C(C(dc*U)-C($b*ga)));f=C(Yf+C(C($b*pa)-C(qc*U)));g=C(Xf+C(C(qc*ga)-C(dc*pa)));O=C(C(C(Ud*e)+C(ee*f))+C(de*g));m=C(C(C(ce*e)+C(be*f))+C(ae*g));B=C(C(C($d*e)+C(_d*f))+C(Zd*g));e=C(ug*C(C(i*ya)+C(C(Oc*N)+C(C(Pc*A)+C(C(Qc*O)+C(C(Rc*m)+C(Sc*B)))))));j=i;f=H&16?C(1):C(0);g=C(vg*C(C(i*Tc)+C(C(N*Uc)+C(C(A*Vc)+C(C(O*Wc)+C(C(m*Xc)+C(B*Yc)))))));i=C(wg*C(C(i*Zc)+C(C(N*_c)+C(C(A*$c)+C(C(O*ad)+C(C(m*bd)+C(B*cd)))))));da=C(j-C(f*C(C(ya*e)+C(C(Tc*g)+C(Zc*i)))));N=C(N-C(f*C(C(Oc*e)+C(C(Uc*g)+C(_c*i)))));A=C(A-C(f*C(C(Pc*e)+C(C(Vc*g)+C($c*i)))));O=C(O-C(f*C(C(Qc*e)+C(C(Wc*g)+C(ad*i)))));m=C(m-C(f*C(C(Rc*e)+C(C(Xc*g)+C(bd*i)))));B=C(B-C(f*C(C(Sc*e)+C(C(Yc*g)+C(cd*i)))));ya=C(C(C(Hc*C(C(C(na*na)+C(Z*Z))+C(oa*oa)))+C(zc*C(C(da*da)+C(C(N*N)+C(A*A)))))+C(C(Gc*C(C(C(ga*ga)+C(U*U))+C(pa*pa)))+C(yc*C(C(O*O)+C(C(m*m)+C(B*B))))));ya=ya>C(0)?C(C(1)/ya):C(0);e=C(rg*C(C(C(C(C(C(C(Pf*na)+C(Lf*Z))+C(Uf*oa))-C(C(C(Ef*ga)+C(Af*U))+C(Tf*pa)))+C(sg-C(f*C(C(wf*e)+C(C(sf*g)+C(of*i))))))+C(tg*C(C(C(Tb*da)+C(C(lb*N)+C(mb*A)))-C(C(Ub*O)+C(C(nb*m)+C(ob*B))))))-C(Nc*c)));e=ef?e:f))))+C(pg*Mc));e=eKc?e:Kc;z[a+304>>2]=i;j=K;e=C(Va-Ua);K=C(sc*e);ib=C(ib-C(j*K));j=E;f=C(Ta-Jc);E=C(tc*f);jb=C(jb-C(j*E));j=x;g=C(Sa-Ic);x=C(uc*g);kb=C(kb-C(j*x));j=B;i=C(i-Mc);B=C(yc*i);gb=C(gb-C(j*B));j=J;J=C(vc*e);Xa=C(Xa+C(j*J));j=D;D=C(wc*f);$a=C($a+C(j*D));j=w;w=C(xc*g);db=C(db+C(j*w));j=A;A=C(zc*i);hb=C(hb+C(j*A));j=_;_=C(Ac*e);Ya=C(Ya-C(j*_));j=Y;Y=C(Bc*f);ab=C(ab-C(j*Y));j=W;W=C(Cc*g);eb=C(eb-C(j*W));j=U;U=C(Gc*i);Pb=C(Pb-C(j*U));e=C(Dc*e);Fb=C(Fb+C(sa*e));j=X;X=C(Ec*f);Ib=C(Ib+C(j*X));j=V;V=C(Fc*g);Lb=C(Lb+C(j*V));j=Z;Z=C(Hc*i);Rb=C(Rb+C(j*Z));Ha=C(Ha-C(ba*K));Ia=C(Ia-C(Q*E));Ja=C(Ja-C(l*x));Fa=C(Fa-C(m*B));za=C(za+C($*J));Ba=C(Ba+C(k*D));Da=C(Da+C(L*w));Ga=C(Ga+C(N*A));Aa=C(Aa-C(va*_));Ca=C(Ca-C(la*Y));Ea=C(Ea-C(ia*W));Na=C(Na-C(ga*U));Ka=C(Ka+C(ta*e));La=C(La+C(ka*X));Ma=C(Ma+C(ha*V));Oa=C(Oa+C(na*Z));Wa=C(Wa-C(aa*K));_a=C(_a-C(P*E));cb=C(cb-C(M*x));Nb=C(Nb-C(O*B));Eb=C(Eb+C(ea*J));Hb=C(Hb+C(fa*D));Kb=C(Kb+C(ca*w));Ob=C(Ob+C(da*A));Za=C(Za-C(wa*_));bb=C(bb-C(ma*Y));fb=C(fb-C(ja*W));Qb=C(Qb-C(pa*U));Gb=C(Gb+C(ua*e));Jb=C(Jb+C(ra*X));Mb=C(Mb+C(qa*V));Sb=C(Sb+C(oa*Z));a=a+368|0;b=b+1|0;if(b>>>0>2]){continue}break}}z[u+28>>2]=Ga;z[u+24>>2]=hb;z[u+20>>2]=Ga;z[u+16>>2]=Ob;z[u+12>>2]=Oa;z[u+8>>2]=Rb;z[u+4>>2]=Oa;z[u>>2]=Sb;z[s+28>>2]=Da;z[s+24>>2]=db;z[s+20>>2]=Da;z[s+16>>2]=Kb;z[s+12>>2]=Ma;z[s+8>>2]=Lb;z[s+4>>2]=Ma;z[s>>2]=Mb;z[q+28>>2]=Ba;z[q+24>>2]=$a;z[q+20>>2]=Ba;z[q+16>>2]=Hb;z[q+12>>2]=La;z[q+8>>2]=Ib;z[q+4>>2]=La;z[q>>2]=Jb;z[o+28>>2]=za;z[o+24>>2]=Xa;z[o+20>>2]=za;z[o+16>>2]=Eb;z[o+12>>2]=Ka;z[o+8>>2]=Fb;z[o+4>>2]=Ka;z[o>>2]=Gb;z[t+28>>2]=Fa;z[t+24>>2]=gb;z[t+20>>2]=Fa;z[t+16>>2]=Nb;z[t+12>>2]=Na;z[t+8>>2]=Pb;z[t+4>>2]=Na;z[t>>2]=Qb;z[r+28>>2]=Ja;z[r+24>>2]=kb;z[r+20>>2]=Ja;z[r+16>>2]=cb;z[r+12>>2]=Ea;z[r+8>>2]=eb;z[r+4>>2]=Ea;z[r>>2]=fb;z[p+28>>2]=Ia;z[p+24>>2]=jb;z[p+20>>2]=Ia;z[p+16>>2]=_a;z[p+12>>2]=Ca;z[p+8>>2]=ab;z[p+4>>2]=Ca;z[p>>2]=bb;z[n+28>>2]=Ha;z[n+24>>2]=ib;z[n+20>>2]=Ha;z[n+16>>2]=Wa;z[n+12>>2]=Aa;z[n+8>>2]=Ya;z[n+4>>2]=Aa;z[n>>2]=Za}xa=h+224|0}function sy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;j=j|0;var k=0,l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),E=C(0),F=0,G=C(0),H=0,I=0,J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=0,pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=0,Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=0,$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=0,jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=0,Ib=0;P=xa-32|0;xa=P;v[c+4112>>2]=0;v[P+28>>2]=1065353216;v[P+24>>2]=1065353216;v[P+20>>2]=1065353216;v[P+16>>2]=1065353216;t[P+15|0]=0;t[P+14|0]=0;F=c+16|0;l=z[v[a+28>>2]+76>>2];n=z[v[a+32>>2]+76>>2];Hb=a,Ib=ty(F,b,P+15|0,P+14|0,P+28|0,P+24|0,P+20|0,P+16|0,l>2]=Ib;v[a+116>>2]=F;t[a+125|0]=w[a+125|0]|t[P+14|0]&1;t[a+124|0]=w[P+15|0];z[a>>2]=z[P+28>>2]*z[a>>2];z[a+8>>2]=z[P+24>>2]*z[a+8>>2];z[a+4>>2]=z[P+20>>2]*z[a+4>>2];z[a+12>>2]=z[P+16>>2]*z[a+12>>2];H=xa-32|0;xa=H;F=c+4128|0;b=F;v[b+7684>>2]=0;v[b+7688>>2]=0;c=w[a+125|0];za=w[a+126|0];ea=v[a+92>>2];fa=v[a+96>>2];I=v[a+16>>2];u[I+22>>1]=0;b=v[a+120>>2];a:{if(!b){t[a+140|0]=0;v[a+136>>2]=0;v[I+24>>2]=0;ib=1;break a}if(!c){uy(F,v[a+136>>2],w[a+140|0],a+36|0,a- -64|0,g);b=v[a+120>>2]}ba=(ea|fa)&8;$z(F,v[a+116>>2],b);ca=a+36|0;ga=a- -64|0;aA(F,v[a+116>>2],ca,ga,0,0);bA(F,v[a+116>>2],ca,ga,g,0,C(z[a+128>>2]+f));c=v[F+7688>>2];b:{if(!c){ea=0;b=0;c=0;break b}ea=ba?112:48;c:{if(!ba){b=0;while(1){L=F+(m<<2)|0;W=v[L+7424>>2]!=65535;L=v[L+7296>>2];d:{if(!L){break d}o=((B(L,ea)+o|0)+((L<<2)+12&-16)|0)- -64|0;L=F+B(m,104)|0;if(t[L+2817|0]&1){break d}o=(x[L+2818>>1]<<7)+o|0}b=b+W|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}break c}b=0;while(1){L=F+(m<<2)|0;W=v[L+7424>>2]!=65535;L=v[L+7296>>2];e:{if(!L){break e}o=((B(L,ea)+o|0)+((L<<2)+12&-16)|0)- -64|0;L=F+B(m,104)|0;if(t[L+2817|0]&1){break e}o=(x[L+2818>>1]<<8)+o|0}b=b+W|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}ea=0;m=0;L=o+15&-16;if(L){c=Ba[v[v[i>>2]>>2]](i,L+16|0)|0;m=(c|0)==-1?0:c}o=B(b,104)+15&-16;c=!L|(m|0)!=0;if(!(!o|!c)){i=Ba[v[v[i>>2]+4>>2]](i,o)|0;ea=(i|0)==-1?0:i}if(!c){t[a+140|0]=0;v[a+136>>2]=0;u[I+22>>1]=0;v[I+24>>2]=0;break a}t[a+140|0]=0;v[a+136>>2]=0;u[I+22>>1]=0;v[I+24>>2]=0;c=L?m:0;if(!o){break b}if(!ea){break a}}v[a+136>>2]=ea;v[I+24>>2]=c;t[a+140|0]=b;u[I+22>>1]=L>>>4;b=v[a+144>>2];v[I+28>>2]=b;m=0;u[I+20>>1]=b?x[a+120>>1]:0;f:{if(!ea){break f}o=v[F+7688>>2];if(!o){break f}b=ea;while(1){if(v[(F+(m<<2)|0)+7296>>2]){i=F+B(m,104)|0;t[b|0]=w[i+2816|0];t[b+1|0]=w[i+2817|0];u[b+2>>1]=x[i+2818>>1];z[b+16>>2]=z[i+2832>>2];z[b+20>>2]=z[i+2836>>2];z[b+24>>2]=z[i+2840>>2];z[b+28>>2]=z[i+2844>>2];z[b+32>>2]=z[i+2848>>2];z[b+36>>2]=z[i+2852>>2];z[b+40>>2]=z[i+2856>>2];z[b+44>>2]=z[i+2860>>2];z[b+48>>2]=z[i+2864>>2];z[b+52>>2]=z[i+2868>>2];z[b+56>>2]=z[i+2872>>2];z[b+60>>2]=z[i+2876>>2];z[b+64>>2]=z[i+2880>>2];z[b+68>>2]=z[i+2884>>2];z[b+72>>2]=z[i+2888>>2];z[b+76>>2]=z[i+2892>>2];z[b+80>>2]=z[i+2896>>2];z[b+84>>2]=z[i+2900>>2];z[b+88>>2]=z[i+2904>>2];z[b+92>>2]=z[i+2908>>2];z[b+96>>2]=z[i+2912>>2];z[b+100>>2]=z[i+2916>>2];z[b+4>>2]=z[i+2820>>2];z[b+8>>2]=z[i+2824>>2];z[b+12>>2]=z[i+2828>>2];b=b+104|0}m=m+1|0;if((o|0)!=(m|0)){continue}break}}ib=1;if(!c){break a}m=v[a+32>>2];o=v[a+28>>2];g:{if(ba){b=v[a+20>>2];u[H+24>>1]=x[I+8>>1];v[H+20>>2]=o;v[H+16>>2]=b;b=v[a+24>>2];u[H+8>>1]=x[I+10>>1];v[H+4>>2]=m;v[H>>2]=b;I=v[a+116>>2];b=c;Da=z[a>>2];Ea=z[a+4>>2];Fa=z[a+8>>2];Ga=z[a+12>>2];h=z[a+128>>2];fa=0;i=xa-400|0;xa=i;z[i+352>>2]=z[a+132>>2];m=H+16|0;a=x[m+8>>1];h:{if((a|0)==65535){f=z[v[m+4>>2]+68>>2];break h}k=v[m>>2];f=C(Ba[v[v[k>>2]+124>>2]](k,a))}a=x[H+8>>1];if((a|0)==65535){g=z[v[H+4>>2]+68>>2]}else{k=v[H>>2];g=C(Ba[v[v[k>>2]+124>>2]](k,a))}z[i+336>>2]=f>g?f:g;f=z[ca+24>>2];a=v[ca+20>>2];k=v[ca+16>>2];v[i+332>>2]=0;z[i+328>>2]=f;v[i+320>>2]=k;v[i+324>>2]=a;f=z[ga+24>>2];a=v[ga+20>>2];k=v[ga+16>>2];v[i+316>>2]=0;z[i+312>>2]=f;v[i+304>>2]=k;v[i+308>>2]=a;a=x[m+8>>1];i:{if((a|0)==65535){a=v[m+4>>2];f=z[a+24>>2];g=z[a+8>>2];k=v[a>>2];o=v[a+4>>2];ba=v[a+16>>2];a=v[a+20>>2];v[i+300>>2]=0;z[i+296>>2]=f;v[i+284>>2]=0;v[i+288>>2]=ba;v[i+292>>2]=a;v[i+272>>2]=k;v[i+276>>2]=o;z[i+280>>2]=g;break i}k=v[m>>2];Ba[v[v[k>>2]+116>>2]](i+272|0,k,a)}a=x[H+8>>1];j:{if((a|0)==65535){a=v[H+4>>2];f=z[a+24>>2];g=z[a+8>>2];k=v[a>>2];o=v[a+4>>2];ba=v[a+16>>2];a=v[a+20>>2];v[i+268>>2]=0;z[i+264>>2]=f;v[i+252>>2]=0;v[i+256>>2]=ba;v[i+260>>2]=a;v[i+240>>2]=k;v[i+244>>2]=o;z[i+248>>2]=g;break j}k=v[H>>2];Ba[v[v[k>>2]+116>>2]](i+240|0,k,a)}z[i+224>>2]=Da;z[i+208>>2]=Fa;z[i+192>>2]=Ea;z[i+176>>2]=Ga;z[i+160>>2]=h;z[i+144>>2]=d;z[i+128>>2]=e;z[i+112>>2]=d*C(.800000011920929);k=v[F+7688>>2];if(k){while(1){o=F+(oa<<2)|0;a=v[o+7296>>2];if(a){e=C(1);ba=o+7424|0;k=I+(x[F+B(v[ba>>2],44)>>1]<<6)|0;o=w[k+48|0];e=o&4?x[(F+B(oa,104)|0)+2818>>1]==2?C(.5):C(1):e;d=z[k+60>>2];f=z[k+44>>2];g=z[k+56>>2];t[b+2|0]=a;k=0;za=o&1;k=za?k:w[(F+B(oa,104)|0)+2818|0]<<1;o=b- -64|0;u[b>>1]=3;t[b+3|0]=k;z[i+96>>2]=d;z[b+28>>2]=Fa;z[b+24>>2]=Da;z[b+20>>2]=e*g;z[b+16>>2]=e*f;z[b+8>>2]=Ga;z[b+4>>2]=Ea;k=v[ba>>2];ha=I+(x[F+B(k,44)>>1]<<6)|0;d=z[ha>>2];h=z[ha+4>>2];l=z[ha+8>>2];v[i+92>>2]=0;z[i+88>>2]=l;z[i+84>>2]=h;z[i+80>>2]=d;e=C(0);if((k|0)!=65535){while(1){ha=F+B(k,44)|0;W=w[ha+5|0];if(W){da=I+(x[ha>>1]<<6)|0;k=0;while(1){vy(i- -64|0,m,H,i+224|0,i+208|0,i+192|0,i+176|0,i+320|0,i+304|0,i+80|0,i+144|0,i+112|0,i+160|0,i+336|0,i+96|0,i+128|0,da+(k<<6)|0,o,i+352|0,j,i+272|0,i+240|0);o=o+112|0;e=C(e+z[i+64>>2]);k=k+1|0;if((W|0)!=(k|0)){continue}break}}k=x[ha+2>>1];if((k|0)!=65535){continue}break}h=z[i+84>>2];l=z[i+88>>2];d=z[i+80>>2]}z[b+32>>2]=d;z[b+40>>2]=l;z[b+36>>2]=h;z[b+44>>2]=e/C(a>>>0);a=a<<2;k=I9(o,0,a);v[b+52>>2]=0;a=k+(a+12&-16)|0;k:{if(za){b=a;break k}f=z[i+88>>2];g=z[i+248>>2];h=z[i+280>>2];d=z[i+80>>2];l=z[i+240>>2];n=z[i+272>>2];e=z[i+84>>2];p=z[i+244>>2];q=z[i+276>>2];v[b+56>>2]=B(fa,104)+ea;ha=F+B(oa,104)|0;za=ha+2818|0;if(!x[za>>1]){b=a;break k}h=C(h-g);l=C(n-l);n=C(q-p);g=C(C(f*h)+C(C(d*l)+C(n*e)));h=C(h-C(f*g));l=C(l-C(d*g));g=C(n-C(e*g));b=C(C(h*h)+C(C(l*l)+C(g*g)))>C(9999999747378752e-20);k=C(D(d))>2];a=ha+B(o,12)|0;d=z[a+2888>>2];f=C(d+d);g=z[ga>>2];d=z[a+2880>>2];h=C(d+d);d=z[a+2884>>2];l=C(d+d);J=z[ga+4>>2];N=C(C(e*f)+C(C(g*h)+C(l*J)));d=z[ga+12>>2];T=C(C(d*d)+C(-.5));ia=C(C(g*N)+C(C(h*T)+C(d*C(C(J*f)-C(l*e)))));ja=C(C(J*N)+C(C(l*T)+C(d*C(C(e*h)-C(f*g)))));Na=C(C(ia*n)-C(p*ja));ka=C(C(e*N)+C(C(f*T)+C(d*C(C(g*l)-C(h*J)))));Oa=C(C(ka*p)-C(q*ia));e=z[ca+8>>2];d=z[a+2864>>2];f=C(d+d);g=z[ca>>2];d=z[a+2856>>2];h=C(d+d);l=z[ca+4>>2];d=z[a+2860>>2];J=C(d+d);N=C(C(e*f)+C(C(g*h)+C(l*J)));d=z[ca+12>>2];U=C(C(d*d)+C(-.5));Z=C(C(l*N)+C(C(J*U)+C(d*C(C(e*h)-C(f*g)))));_=C(C(e*N)+C(C(f*U)+C(d*C(C(g*J)-C(h*l)))));$=C(C(Z*q)-C(n*_));T=$;la=C(C(g*N)+C(C(h*U)+C(d*C(C(l*f)-C(J*e)))));ma=C(C(_*p)-C(q*la));J=ma;na=C(C(la*n)-C(p*Z));N=na;W=x[m+8>>1];da=(W|0)!=65535;if(!da){a=v[m+4>>2];N=C(C(z[a- -64>>2]*na)+C(C(z[a+40>>2]*$)+C(ma*z[a+52>>2])));T=C(C(z[a+56>>2]*na)+C(C(z[a+32>>2]*$)+C(ma*z[a+44>>2])));J=C(C(z[a+60>>2]*na)+C(C(z[a+36>>2]*$)+C(ma*z[a+48>>2])))}a=b;f=C(-Na);g=C(-Oa);Aa=C(C(ja*q)-C(n*ka));h=C(-Aa);b=x[H+8>>1];l:{if((b|0)!=65535){e=g;d=f;break l}k=v[H+4>>2];d=C(C(z[k- -64>>2]*f)+C(C(z[k+40>>2]*h)+C(z[k+52>>2]*g)));e=C(C(z[k+60>>2]*f)+C(C(z[k+36>>2]*h)+C(z[k+48>>2]*g)));h=C(C(z[k+56>>2]*f)+C(C(z[k+32>>2]*h)+C(z[k+44>>2]*g)))}A=z[i+312>>2];E=z[i+328>>2];pa=z[i+308>>2];qa=z[i+324>>2];ra=z[i+304>>2];sa=z[i+320>>2];m:{if(!da){g=z[v[m+4>>2]+12>>2];v[i+44>>2]=0;v[i+60>>2]=0;f=z[i+192>>2];y=C(N*f);z[i+56>>2]=y;r=C(J*f);z[i+52>>2]=r;l=C(T*f);z[i+48>>2]=l;f=C(g*z[i+224>>2]);g=C(q*f);z[i+40>>2]=g;U=C(n*f);z[i+36>>2]=U;G=C(p*f);z[i+32>>2]=G;break m}b=v[m>>2];v[i+396>>2]=0;f=z[i+192>>2];z[i+392>>2]=N*f;z[i+388>>2]=J*f;z[i+384>>2]=T*f;v[i+380>>2]=0;f=z[i+224>>2];z[i+376>>2]=q*f;z[i+372>>2]=n*f;z[i+368>>2]=p*f;Ba[v[v[b>>2]+108>>2]](b,W,j,i+368|0,i+32|0);b=x[H+8>>1];y=z[i+56>>2];r=z[i+52>>2];l=z[i+48>>2];g=z[i+40>>2];U=z[i+36>>2];G=z[i+32>>2]}ta=C(ka+A);ua=C(_+E);va=C(ja+pa);wa=C(Z+qa);Ca=C(ra+ia);Pa=C(la+sa);n:{if((b|0)==65535){A=z[v[H+4>>2]+12>>2];v[i+12>>2]=0;v[i+28>>2]=0;f=z[i+176>>2];pa=C(d*f);z[i+24>>2]=pa;qa=C(e*f);z[i+20>>2]=qa;ra=C(h*f);z[i+16>>2]=ra;f=C(A*z[i+208>>2]);A=C(f*Ka);z[i+8>>2]=A;E=C(f*La);z[i+4>>2]=E;f=C(f*Ma);z[i>>2]=f;break n}k=v[H>>2];v[i+396>>2]=0;f=z[i+176>>2];z[i+392>>2]=d*f;z[i+388>>2]=e*f;z[i+384>>2]=h*f;v[i+380>>2]=0;f=z[i+208>>2];z[i+376>>2]=f*Ka;z[i+372>>2]=f*La;z[i+368>>2]=f*Ma;Ba[v[v[k>>2]+108>>2]](k,b,j,i+368|0,i);pa=z[i+24>>2];qa=z[i+20>>2];ra=z[i+16>>2];A=z[i+8>>2];E=z[i+4>>2];f=z[i>>2]}sa=C(ua-ta);ta=C(wa-va);ua=C(Pa-Ca);va=C(-Z);wa=C(-la);Ca=C(-_);f=C(C(C(C(N*y)+C(q*g))+C(C(d*pa)-C(q*A)))+C(C(C(C(J*r)+C(n*U))+C(C(e*qa)-C(n*E)))+C(C(C(T*l)+C(p*G))+C(C(h*ra)-C(p*f)))));f=f>C(9999999747378752e-21)?C(C(.800000011920929)/f):C(0);b=I+(x[F+B(v[ba>>2],44)>>1]<<6)|0;l=C(C(z[b+40>>2]*q)+C(C(z[b+32>>2]*p)+C(n*z[b+36>>2])));o:{if(x[m+8>>1]==65535){b=v[m+4>>2];l=C(l-C(C(C(C(p*z[b>>2])+C($*z[b+16>>2]))+C(C(n*z[b+4>>2])+C(ma*z[b+20>>2])))+C(C(q*z[b+8>>2])+C(na*z[b+24>>2]))));break o}if(x[H+8>>1]!=65535){break o}b=v[H+4>>2];l=C(l+C(C(C(C(p*z[b>>2])+C(Aa*z[b+16>>2]))+C(C(n*z[b+4>>2])+C(Oa*z[b+20>>2])))+C(C(q*z[b+8>>2])+C(Na*z[b+24>>2]))))}z[a+16>>2]=T;v[a+12>>2]=0;z[a+8>>2]=q;z[a+4>>2]=n;z[a>>2]=p;z[a+28>>2]=f;z[a+24>>2]=N;z[a+20>>2]=J;f=z[i+144>>2];z[a+40>>2]=-d;z[a+36>>2]=-e;z[a+32>>2]=-h;z[a+44>>2]=f*C(C(q*sa)+C(C(p*ua)+C(n*ta)));b=v[i+44>>2];v[a+72>>2]=v[i+40>>2];v[a+76>>2]=b;b=v[i+36>>2];v[a+64>>2]=v[i+32>>2];v[a+68>>2]=b;b=v[i+60>>2];v[a+88>>2]=v[i+56>>2];v[a+92>>2]=b;b=v[i+52>>2];v[a+80>>2]=v[i+48>>2];v[a+84>>2]=b;b=v[i+12>>2];v[a+104>>2]=v[i+8>>2];v[a+108>>2]=b;b=v[i+4>>2];v[a+96>>2]=v[i>>2];v[a+100>>2]=b;b=v[i+24>>2];k=v[i+28>>2];W=v[i+16>>2];da=v[i+20>>2];z[a+48>>2]=l;v[a+120>>2]=b;v[a+124>>2]=k;v[a+112>>2]=W;v[a+116>>2]=da;Z=C(C(Z*s)+C(Q*Ca));J=Z;_=C(C(_*S)+C(s*wa));N=_;$=C(C(la*Q)+C(S*va));U=$;W=x[m+8>>1];da=(W|0)!=65535;if(!da){b=v[m+4>>2];U=C(C(z[b- -64>>2]*$)+C(C(z[b+40>>2]*Z)+C(_*z[b+52>>2])));N=C(C(z[b+60>>2]*$)+C(C(z[b+36>>2]*Z)+C(_*z[b+48>>2])));J=C(C(z[b+56>>2]*$)+C(C(z[b+32>>2]*Z)+C(_*z[b+44>>2])))}la=C(C(ia*Q)+C(S*C(-ja)));f=C(-la);ma=C(C(ka*S)+C(s*C(-ia)));g=C(-ma);na=C(C(ja*s)+C(Q*C(-ka)));h=C(-na);b=x[H+8>>1];p:{if((b|0)!=65535){e=g;d=f;break p}k=v[H+4>>2];d=C(C(z[k- -64>>2]*f)+C(C(z[k+40>>2]*h)+C(z[k+52>>2]*g)));e=C(C(z[k+60>>2]*f)+C(C(z[k+36>>2]*h)+C(z[k+48>>2]*g)));h=C(C(z[k+56>>2]*f)+C(C(z[k+32>>2]*h)+C(z[k+44>>2]*g)))}q:{if(!da){g=z[v[m+4>>2]+12>>2];v[i+44>>2]=0;v[i+60>>2]=0;f=z[i+192>>2];l=C(U*f);z[i+56>>2]=l;T=C(N*f);z[i+52>>2]=T;y=C(J*f);z[i+48>>2]=y;f=C(g*z[i+224>>2]);A=C(s*f);z[i+40>>2]=A;E=C(Q*f);z[i+36>>2]=E;ia=C(S*f);z[i+32>>2]=ia;break q}b=v[m>>2];v[i+396>>2]=0;f=z[i+192>>2];z[i+392>>2]=U*f;z[i+388>>2]=N*f;z[i+384>>2]=J*f;v[i+380>>2]=0;f=z[i+224>>2];z[i+376>>2]=s*f;z[i+372>>2]=Q*f;z[i+368>>2]=S*f;Ba[v[v[b>>2]+108>>2]](b,W,j,i+368|0,i+32|0);b=x[H+8>>1];l=z[i+56>>2];T=z[i+52>>2];y=z[i+48>>2];A=z[i+40>>2];E=z[i+36>>2];ia=z[i+32>>2]}r:{if((b|0)==65535){r=z[v[H+4>>2]+12>>2];v[i+12>>2]=0;v[i+28>>2]=0;f=z[i+176>>2];ja=C(d*f);z[i+24>>2]=ja;ka=C(e*f);z[i+20>>2]=ka;g=C(h*f);z[i+16>>2]=g;f=C(r*z[i+208>>2]);r=C(f*Ha);z[i+8>>2]=r;G=C(f*Ia);z[i+4>>2]=G;f=C(f*Ja);z[i>>2]=f;break r}k=v[H>>2];v[i+396>>2]=0;f=z[i+176>>2];z[i+392>>2]=d*f;z[i+388>>2]=e*f;z[i+384>>2]=h*f;v[i+380>>2]=0;f=z[i+208>>2];z[i+376>>2]=f*Ha;z[i+372>>2]=f*Ia;z[i+368>>2]=f*Ja;Ba[v[v[k>>2]+108>>2]](k,b,j,i+368|0,i);ja=z[i+24>>2];ka=z[i+20>>2];g=z[i+16>>2];r=z[i+8>>2];G=z[i+4>>2];f=z[i>>2]}f=C(C(C(C(U*l)+C(s*A))+C(C(d*ja)-C(s*r)))+C(C(C(C(N*T)+C(Q*E))+C(C(e*ka)-C(Q*G)))+C(C(C(J*y)+C(S*ia))+C(C(h*g)-C(S*f)))));f=f>C(9999999747378752e-21)?C(C(.800000011920929)/f):C(0);b=I+(x[F+B(v[ba>>2],44)>>1]<<6)|0;l=C(C(z[b+40>>2]*s)+C(C(z[b+32>>2]*S)+C(Q*z[b+36>>2])));s:{if(x[m+8>>1]==65535){b=v[m+4>>2];l=C(l-C(C(C(C(S*z[b>>2])+C(Z*z[b+16>>2]))+C(C(Q*z[b+4>>2])+C(_*z[b+20>>2])))+C(C(s*z[b+8>>2])+C($*z[b+24>>2]))));break s}if(x[H+8>>1]!=65535){break s}b=v[H+4>>2];l=C(l+C(C(C(C(S*z[b>>2])+C(na*z[b+16>>2]))+C(C(Q*z[b+4>>2])+C(ma*z[b+20>>2])))+C(C(s*z[b+8>>2])+C(la*z[b+24>>2]))))}b=a+256|0;z[a+156>>2]=f;z[a+152>>2]=U;z[a+148>>2]=N;z[a+144>>2]=J;v[a+140>>2]=0;z[a+136>>2]=s;z[a+132>>2]=Q;z[a+128>>2]=S;f=z[i+144>>2];z[a+168>>2]=-d;z[a+164>>2]=-e;z[a+160>>2]=-h;z[a+172>>2]=f*C(C(s*sa)+C(C(S*ua)+C(Q*ta)));k=v[i+44>>2];v[a+200>>2]=v[i+40>>2];v[a+204>>2]=k;k=v[i+36>>2];v[a+192>>2]=v[i+32>>2];v[a+196>>2]=k;k=v[i+60>>2];v[a+216>>2]=v[i+56>>2];v[a+220>>2]=k;k=v[i+52>>2];v[a+208>>2]=v[i+48>>2];v[a+212>>2]=k;k=v[i+12>>2];v[a+232>>2]=v[i+8>>2];v[a+236>>2]=k;k=v[i+4>>2];v[a+224>>2]=v[i>>2];v[a+228>>2]=k;k=v[i+24>>2];W=v[i+28>>2];da=v[i+16>>2];_a=v[i+20>>2];z[a+176>>2]=l;v[a+248>>2]=k;v[a+252>>2]=W;v[a+240>>2]=da;v[a+244>>2]=_a;o=o+1|0;if(o>>>0>1]){continue}break}}fa=fa+1|0;k=v[F+7688>>2]}oa=oa+1|0;if(oa>>>0>>0){continue}break}}xa=i+400|0;break g}b=v[F+7688>>2];if(!b){break g}ba=(fa|0)==4|(fa|0)==2?5:1;f=z[o+68>>2];g=z[m+68>>2];jb=f>g?f:g;tb=C(d*C(.800000011920929));Q=C(z[a>>2]*z[o+12>>2]);kb=z[a+88>>2];lb=z[a+84>>2];mb=z[a+80>>2];nb=z[a+60>>2];ob=z[a+56>>2];pb=z[a+52>>2];ub=z[a+132>>2];vb=z[a+128>>2];S=z[a+12>>2];J=z[a+4>>2];i=v[a+116>>2];W=v[a+112>>2];ia=z[m- -64>>2];ja=z[m+60>>2];ka=z[m+56>>2];Z=z[m+52>>2];_=z[m+48>>2];$=z[m+44>>2];la=z[m+40>>2];ma=z[m+36>>2];na=z[o- -64>>2];Da=z[o+60>>2];Ea=z[o+56>>2];Fa=z[o+52>>2];Ga=z[o+48>>2];Ha=z[o+44>>2];Ia=z[o+40>>2];Ja=z[o+36>>2];Ka=z[m+24>>2];La=z[m+20>>2];Ma=z[o+24>>2];Na=z[o+20>>2];Oa=z[m+32>>2];pa=z[o+32>>2];qa=z[m+16>>2];ra=z[o+16>>2];sa=z[o+8>>2];ta=z[m+8>>2];qb=C(sa-ta);ua=z[o+4>>2];Aa=z[m+4>>2];rb=C(ua-Aa);va=z[o>>2];wa=z[m>>2];sb=C(va-wa);N=z[a+76>>2];Ca=C(C(N*N)+C(-.5));T=z[a+48>>2];Pa=C(C(T*T)+C(-.5));Ra=z[a+68>>2];wb=C(-Ra);Sa=z[a+64>>2];xb=C(-Sa);Ta=z[a+72>>2];yb=C(-Ta);Ua=z[a+40>>2];zb=C(-Ua);Va=z[a+36>>2];Ab=C(-Va);Wa=z[a+44>>2];Bb=C(-Wa);U=C(z[m+12>>2]*C(-z[a+8>>2]));Cb=C(-U);a=c;while(1){ga=F+(k<<2)|0;ca=v[ga+7296>>2];if(ca){oa=ga+7424|0;I=i+(x[F+B(v[oa>>2],44)>>1]<<6)|0;G=z[I+60>>2];z[a+48>>2]=Cb;z[a+12>>2]=Q;v[a+60>>2]=W;t[a+1|0]=za;g=z[I>>2];l=z[I+4>>2];n=z[I+8>>2];v[a+44>>2]=0;z[a+40>>2]=n;z[a+36>>2]=l;z[a+32>>2]=g;b=a- -64|0;o=v[oa>>2];if((o|0)!=65535){aa=C(C(C(C(va*g)-C(wa*g))+C(C(ua*l)-C(Aa*l)))+C(C(sa*n)-C(ta*n)));f=C(C(n*n)+C(C(g*g)+C(l*l)));V=C(U*f);ya=C(Q*f);while(1){o=F+B(o,44)|0;da=w[o+5|0];if(da){_a=i+(x[o>>1]<<6)|0;m=0;while(1){j=_a+(m<<6)|0;Xa=z[j+40>>2];Ya=z[j+36>>2];Za=z[j+32>>2];Qa=z[j+12>>2];s=z[j+16>>2];q=C(s-pb);y=z[j+20>>2];p=C(y-ob);f=C(C(q*l)-C(g*p));f=(f>C(0)?f:C(-f))>2];A=C(r-nb);p=C(C(p*n)-C(l*A));p=(p>C(0)?p:C(-p))C(0)?q:C(-q))C(0)?s:C(-s))C(0)?y:C(-y))C(0)?r:C(-r))C(0)?C(C(1)/O):C(0);z[b+32>>2]=O;f=C(C(aa+C(C(f*Ma)+C(C(p*ra)+C(Na*q))))-C(C(s*Ka)+C(C(y*qa)+C(La*r))));q=C(-f);p=C(Qa-vb);fa=G>C(0)&e>f&q>C(p*d);q=C(O*C(C(C(C(n*Xa)+C(C(g*Za)+C(l*Ya)))+(fa?C(G*q):C(0)))-f));f=C(tb*p);f=C((f>2]=q-f;z[b+40>>2]=q+(fa?C(0):C(-(f>C(0)?f:C(0))));f=z[j+28>>2];v[b+28>>2]=0;z[b+24>>2]=R;z[b+20>>2]=Y;z[b+16>>2]=X;v[b+12>>2]=0;z[b+8>>2]=A;z[b+4>>2]=M;z[b>>2]=E;z[b+44>>2]=f;b=b+48|0;m=m+1|0;if((da|0)!=(m|0)){continue}break}}o=x[o+2>>1];if((o|0)!=65535){continue}break}}j=b;b=ca<<2;o=I9(j,0,b);f=C(1);fa=b+12&-16;b=w[I+48|0];f=b&4?x[(F+B(k,104)|0)+2818>>1]==2?C(.5):C(1):f;p=C(f*z[I+56>>2]);f=C(f*z[I+44>>2]);t:{u:{v:{if(b&1){t[a+2|0]=ca;break v}b=x[(F+B(k,104)|0)+2818>>1];t[a+2|0]=ca;if(b){break u}}m=0;j=0;break t}m=1;j=b<<1}b=o+fa|0;z[a+16>>2]=f;t[a|0]=ba;t[a+3|0]=j;v[a+52>>2]=0;z[a+8>>2]=S;z[a+4>>2]=J;z[a+28>>2]=U;z[a+24>>2]=Q;z[a+20>>2]=p;w:{if(!m){a=b;break w}v[a+56>>2]=B(ha,104)+ea;o=F+B(k,104)|0;I=o+2818|0;if(!x[I>>1]){a=b;break w}f=C(C(n*qb)+C(C(g*sb)+C(rb*l)));p=C(rb-C(l*f));a=C(D(g))C(9999999747378752e-20);p=j?p:a?C(-n):g;s=j?q:a?l:C(0);q=j?f:a?C(0):C(-l);y=C(C(1)/C(K(C(C(s*s)+C(C(q*q)+C(p*p))))));f=C(p*y);p=C(q*y);q=C(C(g*f)-C(p*l));r=l;l=C(s*y);s=C(C(r*l)-C(f*n));g=C(C(n*p)-C(l*g));Db=C(C(q*ta)+C(C(s*wa)+C(Aa*g)));Eb=C(C(q*sa)+C(C(s*va)+C(ua*g)));Fb=C(C(l*ta)+C(C(p*wa)+C(Aa*f)));Gb=C(C(l*sa)+C(C(p*va)+C(ua*f)));m=0;while(1){a=o+B(m,12)|0;n=z[a+2860>>2];E=z[a+2864>>2];M=z[a+2856>>2];R=C(C(Wa*E)+C(C(Va*M)+C(Ua*n)));X=z[a+2888>>2];Y=z[a+2880>>2];O=z[a+2884>>2];aa=C(C(Ta*X)+C(C(Sa*Y)+C(Ra*O)));y=C(C(C(T*C(C(Va*n)+C(M*zb)))+C(Pa*E))+C(Wa*R));y=C(y+y);r=C(C(C(N*C(C(Sa*O)+C(Y*wb)))+C(Ca*X))+C(Ta*aa));r=C(r+r);G=C(C(nb+y)-C(kb+r));ya=(G>C(0)?G:C(-G))C(0)?V:C(-V))C(0)?M:C(-M))>1];if((a|0)==65535){a=x[F+B(v[oa>>2],44)>>1]}a=((a&65535)<<6)+i|0;Xa=z[a+40>>2];Ya=z[a+36>>2];Za=z[a+32>>2];z[b+108>>2]=C(C(q*ya)+C(C(s*M)+C(g*V)))*d;v[b+76>>2]=0;z[b+72>>2]=q;z[b+68>>2]=g;z[b+64>>2]=s;z[b+44>>2]=C(C(l*ya)+C(C(p*M)+C(f*V)))*d;v[b+12>>2]=0;z[b+8>>2]=l;z[b+4>>2]=f;z[b>>2]=p;M=C(C(E*g)-C(s*A));M=(M>C(0)?M:C(-M))C(0)?R:C(-R))C(0)?X:C(-X))>2]=ya;Qa=C(C(ja*M)+C(C(ma*R)+C(_*X)));z[b+100>>2]=Qa;$a=C(C(ka*M)+C(C(Oa*R)+C($*X)));z[b+96>>2]=$a;Y=C(C(n*g)-C(s*G));Y=(Y>C(0)?Y:C(-Y))C(0)?O:C(-O))C(0)?aa:C(-aa))>2]=ab;bb=C(C(Da*Y)+C(C(Ja*O)+C(Ga*aa)));z[b+84>>2]=bb;cb=C(C(Ea*Y)+C(C(pa*O)+C(Ha*aa)));z[b+80>>2]=cb;V=C(C(E*f)-C(p*A));V=(V>C(0)?V:C(-V))C(0)?A:C(-A))C(0)?r:C(-r))>2]=db;eb=C(C(ja*V)+C(C(ma*A)+C(_*r)));z[b+36>>2]=eb;fb=C(C(ka*V)+C(C(Oa*A)+C($*r)));z[b+32>>2]=fb;E=C(C(n*f)-C(p*G));E=(E>C(0)?E:C(-E))C(0)?G:C(-G))C(0)?n:C(-n))>2]=y;gb=C(C(Da*E)+C(C(Ja*G)+C(Ga*n)));z[b+20>>2]=gb;hb=C(C(Ea*E)+C(C(pa*G)+C(Ha*n)));z[b+16>>2]=hb;z[b+112>>2]=C(C(Xa*q)+C(C(Za*s)+C(g*Ya)))-C(C(Eb+C(C(Y*Ma)+C(C(O*ra)+C(Na*aa))))-C(Db+C(C(M*Ka)+C(C(R*qa)+C(La*X)))));z[b+48>>2]=C(C(Xa*l)+C(C(Za*p)+C(f*Ya)))-C(C(Gb+C(C(E*Ma)+C(C(G*ra)+C(Na*n))))-C(Fb+C(C(V*Ka)+C(C(A*qa)+C(La*r)))));n=C(C(Q+C(J*C(C(ab*ab)+C(C(cb*cb)+C(bb*bb)))))+C(C(S*C(C(ya*ya)+C(C($a*$a)+C(Qa*Qa))))-U));z[b+92>>2]=n>C(0)?C(C(.800000011920929)/n):C(0);n=C(C(Q+C(J*C(C(y*y)+C(C(hb*hb)+C(gb*gb)))))+C(C(S*C(C(db*db)+C(C(fb*fb)+C(eb*eb))))-U));z[b+28>>2]=n>C(0)?C(C(.800000011920929)/n):C(0);a=b+128|0;b=a;m=m+1|0;if(m>>>0>1]){continue}break}}ha=ha+1|0;b=v[F+7688>>2]}k=k+1|0;if(k>>>0>>0){continue}break}}v[c+L>>2]=0}xa=H+32|0;xa=P+32|0;return ib|0}function oZ(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=C(0),u=0,w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=0,fa=0,ga=0,ha=0,ia=C(0),ja=C(0),ka=C(0);k=xa-128|0;xa=k;ea=c+12|0;fa=c+24|0;a:{if(!t$(a+56|0,a+72|0,c,ea,fa)){break a}h=z[c+16>>2];i=z[c>>2];g=z[c+12>>2];f=z[c+4>>2];j=z[c+8>>2];z[k+48>>2]=z[c+20>>2]-j;z[k+44>>2]=h-f;z[k+40>>2]=g-i;h=z[c+28>>2];g=z[c+24>>2];z[k+32>>2]=z[c+32>>2]-j;z[k+28>>2]=h-f;z[k+24>>2]=g-i;q=v[a+52>>2];i=z[q+16>>2];f=z[q>>2];h=z[q+12>>2];g=z[q+4>>2];z[k+120>>2]=z[q+20>>2]-z[q+8>>2];z[k+116>>2]=i-g;z[k+112>>2]=h-f;r=k+40|0;s=k+24|0;ga=k+60|0;ha=k+56|0;P=k+52|0;e=xa-128|0;xa=e;u=k+112|0;A=z[u+8>>2];B=z[u>>2];E=z[u+4>>2];F=C(C(A*A)+C(C(B*B)+C(E*E)));b:{if(F>2]=0}i=z[c>>2];h=z[r>>2];f=z[c+4>>2];g=z[r+4>>2];j=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+j;z[e+116>>2]=g+f;z[e+112>>2]=h+i;h=z[s>>2];g=z[s+4>>2];z[e+104>>2]=j+z[s+8>>2];z[e+100>>2]=f+g;z[e+96>>2]=i+h;D_(e+72|0,q,c,e+112|0,e+96|0,e+32|0,e+16|0);if(ha){z[ha>>2]=z[e+32>>2]}if(P){z[P>>2]=z[e+16>>2]}i=C(z[e+80>>2]-z[q+8>>2]);l=C(i*i);i=C(z[e+72>>2]-z[q>>2]);f=C(i*i);i=C(z[e+76>>2]-z[q+4>>2]);i=C(l+C(f+C(i*i)));break b}i=z[r>>2];l=z[s+4>>2];o=z[s>>2];h=z[r+4>>2];f=C(C(i*l)-C(o*h));w=z[s+8>>2];g=z[r+8>>2];j=C(C(h*w)-C(l*g));y=C(C(g*o)-C(w*i));x=C(C(f*A)+C(C(j*B)+C(E*y)));c:{if(C(x*x)>=C(C(F*C(9.999999974752427e-7))*C(C(f*f)+C(C(j*j)+C(y*y))))){f=C(C(A*w)+C(C(B*o)+C(E*l)));N=C(C(A*g)+C(C(B*i)+C(E*h)));y=C(C(g*w)+C(C(i*o)+C(h*l)));ca=C(C(f*N)-C(y*F));H=C(-N);R=C(C(g*g)+C(C(i*i)+C(h*h)));U=C(C(H*y)+C(R*f));S=C(C(w*w)+C(C(o*o)+C(l*l)));da=C(C(R*S)-C(y*y));I=C(-f);x=C(C(I*y)+C(N*S));j=C(C(I*U)+C(C(F*da)+C(x*H)));j=j==C(0)?C(0):C(C(1)/j);T=z[c+8>>2];Q=z[q+8>>2];J=C(T-Q);O=z[c>>2];ja=z[q>>2];L=C(O-ja);Y=z[c+4>>2];ka=z[q+4>>2];M=C(Y-ka);$=C(C(J*w)+C(C(L*o)+C(M*l)));aa=C(j*C(-$));ia=C(C(J*A)+C(C(L*B)+C(E*M)));V=C(ia*j);W=C(C(F*S)+C(f*I));Z=C(C(J*g)+C(C(L*i)+C(M*h)));f=C(j*C(-Z));j=C(C(ca*aa)+C(C(x*V)+C(W*f)));z[e+64>>2]=j;x=C(C(U*aa)+C(C(da*V)+C(x*f)));z[e+68>>2]=x;f=C(C(C(C(F*R)+C(N*H))*aa)+C(C(U*V)+C(ca*f)));z[e+60>>2]=f;if(x>2]=0;d:{if(!(f>2]=0;if(!(f>2]=z[e+56>>2];z[e+64>>2]=z[e+52>>2];v[e+60>>2]=0;i=f}f=z[c>>2];g=z[r>>2];h=z[c+4>>2];j=z[r+4>>2];l=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=l+z[s+8>>2];z[e+100>>2]=h+j;z[e+96>>2]=f+g;D_(e+72|0,q,c,e+112|0,e+96|0,e+32|0,e+16|0);h=z[e+32>>2];z[e+52>>2]=h;g=z[e+16>>2];z[e+48>>2]=g;f=z[q+8>>2];j=z[q>>2];l=z[q+4>>2];v[e+56>>2]=0;f=C(z[e+80>>2]-f);W=C(f*f);f=C(z[e+72>>2]-j);o=C(f*f);f=C(z[e+76>>2]-l);f=C(W+C(o+C(f*f)));if(!(f>2]=h;v[e+68>>2]=0;z[e+60>>2]=g;i=f;break c}if(f>2]=0;f=I_(q,c,r,s,e+52|0,e+48|0);v[e+56>>2]=0;if(!(f>2]=0;z[e+64>>2]=z[e+52>>2];z[e+60>>2]=z[e+48>>2];i=f;break c}i=I_(q,c,r,s,e- -64|0,e+60|0);v[e+68>>2]=0;break c}e:{if(j>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=H_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break e}if(f>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=H_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break e}z[e+120>>2]=T+g;z[e+116>>2]=Y+h;z[e+112>>2]=O+i;z[e+104>>2]=w-g;z[e+100>>2]=l-h;z[e+96>>2]=o-i;i=H_(q,u,e+112|0,e+96|0,e+68|0,e+60|0);z[e+64>>2]=C(1)-z[e+60>>2]}f=z[c>>2];g=z[r>>2];h=z[c+4>>2];j=z[r+4>>2];l=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=l+z[s+8>>2];z[e+100>>2]=h+j;z[e+96>>2]=f+g;D_(e+72|0,q,c,e+112|0,e+96|0,e+32|0,e+16|0);h=z[e+32>>2];z[e+52>>2]=h;g=z[e+16>>2];z[e+48>>2]=g;f=C(z[e+80>>2]-z[q+8>>2]);o=C(f*f);f=C(z[e+72>>2]-z[q>>2]);l=C(f*f);f=C(z[e+76>>2]-z[q+4>>2]);f=C(o+C(l+C(f*f)));if(!(f>2]=h;v[e+68>>2]=0;z[e+60>>2]=g;i=f;break c}N=C(j+f);if(x<=C(1)){if(N<=C(1)){if(j>2]=0;if(!(f>2]=0;if(!(f>2]=z[e+56>>2];z[e+64>>2]=z[e+52>>2];v[e+60>>2]=0;i=f;break c}if(f>2]=0;break c}i=C(-ia);i=C(C(C(J*J)+C(C(L*L)+C(M*M)))+C(C(f*C(C($+$)+C(C(S*f)+C(C(I*x)+C(y*j)))))+C(C(x*C(C(i+i)+C(C(I*f)+C(C(F*x)+C(j*H)))))+C(j*C(C(Z+Z)+C(C(y*f)+C(C(H*x)+C(R*j))))))));break c}if(j>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=H_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break c}if(f>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=H_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break c}z[e+120>>2]=T+g;z[e+116>>2]=Y+h;z[e+112>>2]=O+i;z[e+104>>2]=w-g;z[e+100>>2]=l-h;z[e+96>>2]=o-i;i=H_(q,u,e+112|0,e+96|0,e+68|0,e+60|0);z[e+64>>2]=C(1)-z[e+60>>2];break c}if(N<=C(1)){if(j>2]=0;f:{if(!(f>2]=0;if(!(f>2]=z[e+56>>2];z[e+64>>2]=z[e+52>>2];v[e+60>>2]=0;i=f}f=z[u>>2];h=z[q>>2];g=z[u+4>>2];j=z[q+4>>2];z[e+120>>2]=z[q+8>>2]+z[u+8>>2];z[e+116>>2]=j+g;z[e+112>>2]=h+f;f=I_(e+112|0,c,r,s,e+52|0,e+48|0);v[e+56>>2]=1065353216;if(!(f>2]=1065353216;z[e+64>>2]=z[e+52>>2];z[e+60>>2]=z[e+48>>2];i=f;break c}if(f>2]=0;f=z[u>>2];h=z[q>>2];g=z[u+4>>2];j=z[q+4>>2];z[e+120>>2]=z[q+8>>2]+z[u+8>>2];z[e+116>>2]=j+g;z[e+112>>2]=h+f;f=I_(e+112|0,c,r,s,e+52|0,e+48|0);v[e+56>>2]=1065353216;if(!(f>2]=1065353216;z[e+64>>2]=z[e+52>>2];z[e+60>>2]=z[e+48>>2];i=f;break c}z[e+120>>2]=A+Q;z[e+116>>2]=E+ka;z[e+112>>2]=B+ja;i=I_(e+112|0,c,r,s,e- -64|0,e+60|0);v[e+68>>2]=1065353216;break c}g:{if(j>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=H_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break g}if(f>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=H_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break g}z[e+120>>2]=T+g;z[e+116>>2]=Y+h;z[e+112>>2]=O+i;z[e+104>>2]=w-g;z[e+100>>2]=l-h;z[e+96>>2]=o-i;i=H_(q,u,e+112|0,e+96|0,e+68|0,e+60|0);z[e+64>>2]=C(1)-z[e+60>>2]}f=z[u>>2];h=z[q>>2];g=z[u+4>>2];j=z[q+4>>2];z[e+40>>2]=z[q+8>>2]+z[u+8>>2];z[e+36>>2]=j+g;z[e+32>>2]=h+f;f=z[c>>2];g=z[r>>2];h=z[c+4>>2];j=z[r+4>>2];l=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=l+z[s+8>>2];z[e+100>>2]=h+j;z[e+96>>2]=f+g;D_(e+72|0,e+32|0,c,e+112|0,e+96|0,e+16|0,e);h=z[e+16>>2];z[e+52>>2]=h;g=z[e>>2];z[e+48>>2]=g;v[e+56>>2]=1065353216;f=C(z[e+80>>2]-z[e+40>>2]);o=C(f*f);f=C(z[e+72>>2]-z[e+32>>2]);l=C(f*f);f=C(z[e+76>>2]-z[e+36>>2]);f=C(o+C(l+C(f*f)));if(!(f>2]=h;v[e+68>>2]=1065353216;z[e+60>>2]=g;i=f;break c}i=H_(q,u,c,r,e+68|0,e- -64|0);v[e+60>>2]=0;f=H_(q,u,c,s,e+56|0,e+48|0);v[e+52>>2]=0;if(f>2]=z[e+56>>2];v[e+64>>2]=0;z[e+60>>2]=z[e+48>>2];i=f}f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+40>>2]=z[c+8>>2]+l;z[e+36>>2]=j+h;z[e+32>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+24>>2]=z[s+8>>2]-l;z[e+20>>2]=j-h;z[e+16>>2]=g-f;f=H_(q,u,e+32|0,e+16|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f}f=z[c>>2];g=z[r>>2];h=z[c+4>>2];j=z[r+4>>2];l=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=l+z[s+8>>2];z[e+100>>2]=h+j;z[e+96>>2]=f+g;D_(e+72|0,q,c,e+112|0,e+96|0,e,e+92|0);l=z[e>>2];z[e+52>>2]=l;o=z[e+92>>2];z[e+48>>2]=o;h=z[q+8>>2];g=z[q>>2];j=z[q+4>>2];v[e+56>>2]=0;f=C(z[e+80>>2]-h);ia=C(f*f);f=C(z[e+72>>2]-g);W=C(f*f);f=C(z[e+76>>2]-j);f=C(ia+C(W+C(f*f)));if(f>2]=l;v[e+68>>2]=0;z[e+60>>2]=o;i=f}f=z[u>>2];l=z[u+4>>2];z[e+8>>2]=h+z[u+8>>2];z[e+4>>2]=j+l;z[e>>2]=g+f;f=z[c>>2];g=z[r>>2];h=z[c+4>>2];j=z[r+4>>2];l=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=l+z[s+8>>2];z[e+100>>2]=h+j;z[e+96>>2]=f+g;D_(e+72|0,e,c,e+112|0,e+96|0,e+92|0,e+88|0);h=z[e+92>>2];z[e+52>>2]=h;g=z[e+88>>2];z[e+48>>2]=g;v[e+56>>2]=1065353216;f=C(z[e+80>>2]-z[e+8>>2]);o=C(f*f);f=C(z[e+72>>2]-z[e>>2]);l=C(f*f);f=C(z[e+76>>2]-z[e+4>>2]);f=C(o+C(l+C(f*f)));if(!(f>2]=h;v[e+68>>2]=1065353216;z[e+60>>2]=g;i=f}if(ga){z[ga>>2]=z[e+68>>2]}if(ha){z[ha>>2]=z[e+64>>2]}if(P){z[P>>2]=z[e+60>>2]}i=C(G(i,C(0)))}xa=e+128|0;w=z[a+88>>2];if(i>=C(w*w)){break a}g=z[k+40>>2];h=z[k+28>>2];j=z[k+24>>2];l=z[k+44>>2];f=C(C(g*h)-C(j*l));W=l;l=z[k+32>>2];o=z[k+48>>2];h=C(C(W*l)-C(h*o));g=C(C(o*j)-C(l*g));A=z[c+8>>2];B=z[c>>2];E=z[c+4>>2];if(C(C(f*z[a- -64>>2])+C(C(h*z[a+56>>2])+C(g*z[a+60>>2])))C(10000001111620804e-22)){i=z[k+52>>2];h:{i:{j:{k:{l:{m:{m=z[k+56>>2];if(m==C(0)){if(i==C(0)){break m}if(i!=C(1)){break j}P=!(d&48);break h}if(m==C(1)){if(i==C(0)){break l}P=0;break h}if(i==C(0)){break k}P=1;if(!(C(m+i)>=C(.9998999834060669))){break i}P=!(d&16);break h}P=!(d&40);break h}P=!(d&24);break h}P=!(d&8);break h}P=!(d&32)}}n:{if(P){i=C(0);m=C(C(f*f)+C(C(h*h)+C(g*g)));if(m>C(0)){n=C(C(1)/C(K(m)));i=C(f*n);t=C(h*n);n=C(g*n)}z[k+72>>2]=i;z[k+68>>2]=n;z[k+64>>2]=t;d=v[a+52>>2];t=z[d+20>>2];n=z[d+16>>2];m=z[d+12>>2];break n}i=z[k+56>>2];p=z[k+52>>2];f=C(C(C(1)-i)-p);d=v[a+52>>2];m=z[d+8>>2];n=z[k+60>>2];t=z[d+20>>2];h=C(C(m+C(n*C(t-m)))-C(C(p*z[c+32>>2])+C(C(f*z[c+8>>2])+C(i*z[c+20>>2]))));g=z[d>>2];m=z[d+12>>2];g=C(C(g+C(n*C(m-g)))-C(C(p*z[c+24>>2])+C(C(f*z[c>>2])+C(i*z[c+12>>2]))));j=z[d+4>>2];l=n;n=z[d+16>>2];i=C(C(j+C(l*C(n-j)))-C(C(p*z[c+28>>2])+C(C(f*z[c+4>>2])+C(i*z[c+16>>2]))));p=C(K(C(C(h*h)+C(C(g*g)+C(i*i)))));if(p==C(0)){break a}p=C(C(1)/p);z[k+72>>2]=h*p;z[k+68>>2]=i*p;z[k+64>>2]=g*p}o=z[a+92>>2];i=z[a+96>>2];e=v[a>>2];p=z[d>>2];z[k+112>>2]=p;f=z[d+4>>2];z[k+116>>2]=f;h=z[d+8>>2];z[k+120>>2]=h;z[k+100>>2]=n;z[k+96>>2]=m;z[k+104>>2]=t;g=C(t-h);j=C(m-p);l=C(n-f);w=C(K(C(C(g*g)+C(C(j*j)+C(l*l)))));if(w>C(0)){W=h;h=C(C(.009999999776482582)/w);g=C(g*h);z[k+120>>2]=W-g;W=f;f=C(l*h);z[k+116>>2]=W-f;l=p;p=C(j*h);z[k+112>>2]=l-p;z[k+104>>2]=t+g;z[k+100>>2]=n+f;z[k+96>>2]=m+p}n=C(i+o);o:{if(!p$(c,ea,k- -64|0,k+112|0,k+96|0,k+8|0,k+80|0)){break o}x=z[k+8>>2];if(!(x>2];if(d>>>0>63){break o}H=z[a+40>>2];I=z[a+44>>2];J=z[a+48>>2];l=z[a+28>>2];o=z[a+4>>2];t=z[a+16>>2];w=z[a+32>>2];A=z[a+8>>2];B=z[a+20>>2];E=z[a+36>>2];F=z[a+12>>2];y=z[a+24>>2];m=z[k+88>>2];p=z[k+80>>2];f=z[k+84>>2];h=z[k+72>>2];g=z[k+64>>2];j=z[k+68>>2];v[e+4096>>2]=d+1;d=e+(d<<6)|0;v[d+52>>2]=b;z[d+12>>2]=x-i;z[d+8>>2]=C(C(F*g)+C(y*j))+C(E*h);z[d+4>>2]=C(C(A*g)+C(B*j))+C(w*h);z[d>>2]=C(C(o*g)+C(t*j))+C(l*h);z[d+24>>2]=J+C(C(C(p*F)+C(f*y))+C(m*E));z[d+20>>2]=I+C(C(C(p*A)+C(f*B))+C(m*w));z[d+16>>2]=H+C(C(C(p*o)+C(f*t))+C(m*l))}p:{if(!p$(ea,fa,k- -64|0,k+112|0,k+96|0,k+8|0,k+80|0)){break p}x=z[k+8>>2];if(!(x>2];if(d>>>0>63){break p}H=z[a+40>>2];I=z[a+44>>2];J=z[a+48>>2];l=z[a+28>>2];o=z[a+4>>2];t=z[a+16>>2];w=z[a+32>>2];A=z[a+8>>2];B=z[a+20>>2];E=z[a+36>>2];F=z[a+12>>2];y=z[a+24>>2];m=z[k+88>>2];p=z[k+80>>2];f=z[k+84>>2];h=z[k+72>>2];g=z[k+64>>2];j=z[k+68>>2];v[e+4096>>2]=d+1;d=e+(d<<6)|0;v[d+52>>2]=b;z[d+12>>2]=x-i;z[d+8>>2]=C(C(F*g)+C(y*j))+C(E*h);z[d+4>>2]=C(C(A*g)+C(B*j))+C(w*h);z[d>>2]=C(C(o*g)+C(t*j))+C(l*h);z[d+24>>2]=J+C(C(C(p*F)+C(f*y))+C(m*E));z[d+20>>2]=I+C(C(C(p*A)+C(f*B))+C(m*w));z[d+16>>2]=H+C(C(C(p*o)+C(f*t))+C(m*l))}q=a+4|0;q:{if(!p$(fa,c,k- -64|0,k+112|0,k+96|0,k+8|0,k+80|0)){break q}y=z[k+8>>2];if(!(y>2];if(d>>>0>63){break q}x=z[a+40>>2];H=z[a+44>>2];I=z[a+48>>2];j=z[a+28>>2];l=z[a+4>>2];o=z[a+16>>2];t=z[a+32>>2];w=z[a+8>>2];A=z[a+20>>2];B=z[a+36>>2];E=z[a+12>>2];F=z[a+24>>2];n=z[k+88>>2];m=z[k+80>>2];p=z[k+84>>2];f=z[k+72>>2];h=z[k+64>>2];g=z[k+68>>2];v[e+4096>>2]=d+1;d=e+(d<<6)|0;v[d+52>>2]=b;z[d+12>>2]=y-i;z[d+8>>2]=C(C(E*h)+C(F*g))+C(B*f);z[d+4>>2]=C(C(w*h)+C(A*g))+C(t*f);z[d>>2]=C(C(l*h)+C(o*g))+C(j*f);z[d+24>>2]=I+C(C(C(m*E)+C(p*F))+C(n*B));z[d+20>>2]=H+C(C(C(m*w)+C(p*A))+C(n*t));z[d+16>>2]=x+C(C(C(m*l)+C(p*o))+C(n*j))}pZ(q,v[a>>2],v[a+52>>2],z[a+96>>2],c,k- -64|0,b,z[a+92>>2]);break a}e=v[a+52>>2];R=z[c+12>>2];f=C(B-R);F=z[c+28>>2];g=C(E-F);y=z[c+24>>2];l=C(B-y);U=z[c+16>>2];h=C(E-U);i=C(C(f*g)-C(l*h));x=z[c+32>>2];o=C(A-x);j=g;S=z[c+20>>2];g=C(A-S);j=C(C(h*o)-C(j*g));l=C(C(g*l)-C(o*f));o=C(C(i*i)+C(C(j*j)+C(l*l)));if(o>C(0)){n=i;i=C(C(1)/C(K(o)));p=C(n*i);m=C(l*i);n=C(j*i)}H=z[e+8>>2];I=z[e>>2];J=z[e+4>>2];o=C(C(H*p)+C(C(I*n)+C(m*J)));L=z[e+20>>2];M=z[e+12>>2];N=z[e+16>>2];t=C(C(L*p)+C(C(M*n)+C(m*N)));e=o>t;T=C(w+(e?o:t));i=C(C(A*p)+C(C(B*n)+C(E*m)));j=C(C(S*p)+C(C(R*n)+C(U*m)));O=iO?O:l;if(Tj?i:j;i=i>l?i:l;j=C((e?t:o)-w);if(iC(0)){i=C(C(1)/C(K(aa)));_=C(T*i);X=C(O*i);ba=C(Y*i)}i=e?l:j;ca=C(-ba);da=C(-X);$=C(-_);r:{s:{if(!(d&8)){break s}j=C(C(X*h)+C(f*ca));o=C(C(ba*g)+C(h*$));l=C(C(_*f)+C(g*da));if(!(C(D(j))>C(9.999999974752427e-7)?1:C(D(o))>C(9.999999974752427e-7)|C(D(l))>C(9.999999974752427e-7))){break s}f=C(0);h=C(0);g=C(0);t=C(C(j*j)+C(C(o*o)+C(l*l)));if(t>C(0)){h=C(C(1)/C(K(t)));g=C(j*h);f=C(o*h);h=C(l*h)}t=C(C(H*g)+C(C(I*f)+C(J*h)));V=C(C(L*g)+C(C(M*f)+C(N*h)));e=t>V;Z=C(w+(e?t:V));j=C(C(A*g)+C(C(B*f)+C(E*h)));l=C(C(S*g)+C(C(R*f)+C(U*h)));Q=jQ?Q:o;if(Zl?j:l;j=j>o?j:o;l=C((e?V:t)-w);if(jo?o:j;if(i>o){break r}}f=n;h=m;g=p;o=i}t:{u:{if(!(d&16)){break u}i=C(U-F);m=C(R-y);n=C(C(X*i)+C(m*ca));p=C(S-x);m=C(C(_*m)+C(p*da));p=C(C(ba*p)+C(i*$));if(!(C(D(n))>C(9.999999974752427e-7)?1:C(D(p))>C(9.999999974752427e-7)|C(D(m))>C(9.999999974752427e-7))){break u}j=C(0);l=C(0);i=C(0);t=C(C(n*n)+C(C(p*p)+C(m*m)));if(t>C(0)){i=n;n=C(C(1)/C(K(t)));i=C(i*n);l=C(m*n);j=C(p*n)}t=C(C(H*i)+C(C(I*j)+C(J*l)));V=C(C(L*i)+C(C(M*j)+C(N*l)));e=t>V;Z=C(w+(e?t:V));n=C(C(A*i)+C(C(B*j)+C(E*l)));m=C(C(S*i)+C(C(R*j)+C(U*l)));Q=m>n?n:m;p=C(C(x*i)+C(C(y*j)+C(F*l)));Q=p>Q?Q:p;if(Zp?n:p;m=C((e?V:t)-w);if(np?p:n;if(tC(9.999999974752427e-7)?1:C(D(g))>C(9.999999974752427e-7)|C(D(h))>C(9.999999974752427e-7))){break w}n=C(0);m=C(0);p=C(0);o=C(C(f*f)+C(C(g*g)+C(h*h)));if(o>C(0)){m=C(C(1)/C(K(o)));p=C(f*m);n=C(g*m);m=C(h*m)}o=C(C(H*p)+C(C(I*n)+C(J*m)));_=C(C(L*p)+C(C(M*n)+C(N*m)));d=o>_;ba=C(w+(d?o:_));f=C(C(A*p)+C(C(B*n)+C(E*m)));h=C(C(S*p)+C(C(R*n)+C(U*m)));X=fX?X:g;if(bah?f:h;f=f>g?f:g;h=C((d?_:o)-w);if(fg?g:f)>2]=i;m=d?C(-m):m;z[k+12>>2]=m;n=d?C(-n):n;z[k+8>>2]=n;p=z[a+96>>2];d=v[a>>2];z[k+120>>2]=H;z[k+116>>2]=J;z[k+112>>2]=I;z[k+104>>2]=L;z[k+100>>2]=N;z[k+96>>2]=M;f=C(K(aa));if(f>C(0)){f=C(C(.009999999776482582)/f);h=C(T*f);z[k+120>>2]=H-h;g=C(Y*f);z[k+116>>2]=J-g;f=C(O*f);z[k+112>>2]=I-f;z[k+104>>2]=L+h;z[k+100>>2]=N+g;z[k+96>>2]=M+f}j=C(-i);z[k+72>>2]=j;l=C(-m);z[k+68>>2]=l;o=C(-n);z[k+64>>2]=o;x:{if(!p$(c,ea,k- -64|0,k+112|0,k+96|0,k+92|0,k+80|0)){break x}e=v[d+4096>>2];if(e>>>0>63){break x}I=z[a+40>>2];J=z[a+44>>2];L=z[a+48>>2];t=z[a+28>>2];w=z[a+4>>2];A=z[a+16>>2];B=z[a+32>>2];E=z[a+8>>2];F=z[a+20>>2];y=z[a+36>>2];x=z[a+12>>2];H=z[a+24>>2];f=z[k+88>>2];h=z[k+80>>2];g=z[k+84>>2];M=z[k+92>>2];v[d+4096>>2]=e+1;e=d+(e<<6)|0;v[e+52>>2]=b;z[e+12>>2]=-C(p+M);z[e+8>>2]=C(C(n*x)+C(m*H))+C(i*y);z[e+4>>2]=C(C(n*E)+C(m*F))+C(i*B);z[e>>2]=C(C(n*w)+C(m*A))+C(i*t);z[e+24>>2]=L+C(C(C(h*x)+C(g*H))+C(f*y));z[e+20>>2]=J+C(C(C(h*E)+C(g*F))+C(f*B));z[e+16>>2]=I+C(C(C(h*w)+C(g*A))+C(f*t))}z[k+72>>2]=j;z[k+68>>2]=l;z[k+64>>2]=o;y:{if(!p$(ea,fa,k- -64|0,k+112|0,k+96|0,k+92|0,k+80|0)){break y}e=v[d+4096>>2];if(e>>>0>63){break y}I=z[a+40>>2];J=z[a+44>>2];L=z[a+48>>2];t=z[a+28>>2];w=z[a+4>>2];A=z[a+16>>2];B=z[a+32>>2];E=z[a+8>>2];F=z[a+20>>2];y=z[a+36>>2];x=z[a+12>>2];H=z[a+24>>2];f=z[k+88>>2];h=z[k+80>>2];g=z[k+84>>2];M=z[k+92>>2];v[d+4096>>2]=e+1;e=d+(e<<6)|0;v[e+52>>2]=b;z[e+12>>2]=-C(p+M);z[e+8>>2]=C(C(n*x)+C(m*H))+C(i*y);z[e+4>>2]=C(C(n*E)+C(m*F))+C(i*B);z[e>>2]=C(C(n*w)+C(m*A))+C(i*t);z[e+24>>2]=L+C(C(C(h*x)+C(g*H))+C(f*y));z[e+20>>2]=J+C(C(C(h*E)+C(g*F))+C(f*B));z[e+16>>2]=I+C(C(C(h*w)+C(g*A))+C(f*t))}q=a+4|0;z[k+72>>2]=j;z[k+68>>2]=l;z[k+64>>2]=o;z:{if(!p$(fa,c,k- -64|0,k+112|0,k+96|0,k+92|0,k+80|0)){break z}e=v[d+4096>>2];if(e>>>0>63){break z}y=z[a+40>>2];x=z[a+44>>2];H=z[a+48>>2];j=z[a+28>>2];l=z[a+4>>2];o=z[a+16>>2];t=z[a+32>>2];w=z[a+8>>2];A=z[a+20>>2];B=z[a+36>>2];E=z[a+12>>2];F=z[a+24>>2];f=z[k+88>>2];h=z[k+80>>2];g=z[k+84>>2];I=z[k+92>>2];v[d+4096>>2]=e+1;d=d+(e<<6)|0;v[d+52>>2]=b;z[d+12>>2]=-C(p+I);z[d+8>>2]=C(C(n*E)+C(m*F))+C(i*B);z[d+4>>2]=C(C(n*w)+C(m*A))+C(i*t);z[d>>2]=C(C(n*l)+C(m*o))+C(i*j);z[d+24>>2]=H+C(C(C(h*E)+C(g*F))+C(f*B));z[d+20>>2]=x+C(C(C(h*w)+C(g*A))+C(f*t));z[d+16>>2]=y+C(C(C(h*l)+C(g*o))+C(f*j))}pZ(q,v[a>>2],v[a+52>>2],z[a+96>>2],c,k+8|0,b,z[a+92>>2])}xa=k+128|0}function mT(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=0,M=0,N=C(0),O=C(0),P=0,Q=C(0),R=0,S=C(0),T=C(0),U=0,V=0,W=C(0),X=0,Y=0,Z=0,_=0,$=C(0),aa=0,ba=0,ca=C(0),da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;j=xa-272|0;xa=j;l=v[b+520>>2];if(w[l+140|0]){l=v[b+520>>2]}A[b+488>>3]=A[b+488>>3]+ +f;Z=v[l+12>>2];aa=v[l+16>>2];v[b+92>>2]=aa;v[b+88>>2]=Z;v[b+328>>2]=v[b+8>>2];z[b+332>>2]=z[b+12>>2];k=v[b+20>>2];v[b+336>>2]=v[b+16>>2];v[b+340>>2]=k;k=v[b+28>>2];v[b+344>>2]=v[b+24>>2];v[b+348>>2]=k;k=v[b+36>>2];v[b+352>>2]=v[b+32>>2];v[b+356>>2]=k;k=w[b+65|0]|w[b+66|0]<<8|(w[b+67|0]<<16|w[b+68|0]<<24);m=w[b+61|0]|w[b+62|0]<<8|(w[b+63|0]<<16|w[b+64|0]<<24);t[b+381|0]=m;t[b+382|0]=m>>>8;t[b+383|0]=m>>>16;t[b+384|0]=m>>>24;t[b+385|0]=k;t[b+386|0]=k>>>8;t[b+387|0]=k>>>16;t[b+388|0]=k>>>24;k=v[b+60>>2];v[b+376>>2]=v[b+56>>2];v[b+380>>2]=k;k=v[b+52>>2];v[b+368>>2]=v[b+48>>2];v[b+372>>2]=k;k=v[b+44>>2];v[b+360>>2]=v[b+40>>2];v[b+364>>2]=k;v[b+412>>2]=v[b+412>>2]|128;f=z[l+132>>2];z[b+380>>2]=f*f;t[b+384|0]=w[l+136|0];t[b+386|0]=w[l+137|0];t[b+387|0]=w[l+138|0];k=w[l+139|0];v[b+404>>2]=0;v[b+408>>2]=0;t[b+388|0]=k;f=z[b+472>>2];n=z[b+468>>2];o=z[d>>2];p=z[d+4>>2];z[j+264>>2]=z[d+8>>2]+z[b+476>>2];z[j+260>>2]=p+f;z[j+256>>2]=o+n;v[b+476>>2]=0;v[b+468>>2]=0;v[b+472>>2]=0;V=b+252|0;d=v[V>>2];a:{if(!d){break a}m=b+240|0;if(!v[m>>2]){break a}b:{c:{d=Ba[v[v[d>>2]+92>>2]](d)|0;if(!d){break c}l=0;while(1){d:{v[j+152>>2]=0;k=v[V>>2];Ba[v[v[k>>2]+96>>2]](k,j+152|0,1,l)|0;if(v[m>>2]==v[j+152>>2]){break d}l=l+1|0;if((d|0)!=(l|0)){continue}break c}break}d=v[b+252>>2];if((Ba[v[v[d>>2]+28>>2]](d)|0)==v[b+480>>2]){break b}e:{if(!w[b+244|0]){break e}d=v[m>>2];if(!d){break e}gU(v[b+248>>2],d)}v[b+240>>2]=0;f:{if(!w[b+256|0]){break f}d=v[V>>2];if(!d){break f}gU(v[b+260>>2],d)}v[V>>2]=0;break a}g:{if(!w[b+256|0]){break g}d=v[V>>2];if(!d){break g}gU(v[b+260>>2],d)}v[b+252>>2]=0;h:{if(!w[b+244|0]){break h}d=v[m>>2];if(!d){break h}gU(v[b+248>>2],d)}v[m>>2]=0;break a}d=v[m>>2];Ba[v[v[d>>2]+156>>2]](j+152|0,d);if(!(w[j+152|0]&2)){i:{if(!w[b+244|0]){break i}d=v[m>>2];if(!d){break i}gU(v[b+248>>2],d)}v[b+240>>2]=0;j:{if(!w[b+256|0]){break j}d=v[V>>2];if(!d){break j}gU(v[b+260>>2],d)}v[V>>2]=0;break a}d=0;k=0;l=v[g>>2];if(l){k=v[l+12>>2];R=v[l+4>>2];P=v[l>>2];d=v[l+8>>2]}u[j+168>>1]=6;v[j+164>>2]=k;v[j+160>>2]=d;v[j+156>>2]=R;v[j+152>>2]=P;u[j+32>>1]=0;d=v[g+4>>2];if(!d){break a}if(Ba[v[v[d>>2]>>2]](d,j+152|0,v[m>>2],v[V>>2],j+32|0)|0){break a}hT(m);hT(V)}d=v[b+240>>2];l=v[b+264>>2];if(!(d|(l|0)!=-1)){k=0;R=0;P=0;d=xa-256|0;xa=d;m=x[g+8>>1];k:{if(!(m&2)){break k}v[d+208>>2]=139816;v[d+212>>2]=v[b+520>>2]+80;v[d+216>>2]=v[g+4>>2];u[d+220>>1]=m;l=v[g>>2];if(l){P=v[l+8>>2];R=v[l+4>>2];X=v[l>>2];k=v[l+12>>2]}u[d+200>>1]=m&8|6;v[d+196>>2]=k;v[d+192>>2]=P;v[d+188>>2]=R;v[d+184>>2]=X;J=C(Ba[v[v[b>>2]+8>>2]](b));L=A[b+440>>3];M=A[b+432>>3];z[d+176>>2]=A[b+448>>3];z[d+172>>2]=L;z[d+168>>2]=M;_=d+100|0;k=_;v[k>>2]=0;v[k+4>>2]=0;ba=d+96|0;u[ba>>1]=0;v[d+92>>2]=-1;m=d+108|0;k=m;v[k>>2]=0;v[k+4>>2]=0;R=d+116|0;k=R;v[k>>2]=0;v[k+4>>2]=0;v[d+132>>2]=0;q=d+124|0;k=q;v[k>>2]=2139095039;v[k+4>>2]=0;v[d+84>>2]=0;v[d+88>>2]=0;v[d+160>>2]=0;v[d+152>>2]=0;v[d+156>>2]=0;t[d+148|0]=0;v[d+80>>2]=114128;k=v[b+480>>2];f=z[b+28>>2];n=z[b+32>>2];o=z[b+36>>2];u[d+72>>1]=0;z[d+16>>2]=-o;z[d+12>>2]=-n;z[d+8>>2]=-f;$=C(J+C(0));if(Ba[v[v[k>>2]+348>>2]](k,d+168|0,d+8|0,$,d+80|0,d+72|0,d+184|0,d+208|0,0)|0){l=d+80|4;P=l;k=v[d+152>>2];l=v[d+160>>2];X=l?k:P;K=v[X+4>>2];v[P>>2]=v[X>>2];v[P+4>>2]=K;v[P+8>>2]=v[X+8>>2];u[d+96>>1]=x[(l?k+12|0:ba)>>1];z[d+100>>2]=z[(l?k+16|0:_)>>2];P=d+104|0;z[P>>2]=z[(l?k+20|0:P)>>2];z[m>>2]=z[(l?k+24|0:m)>>2];m=d+112|0;z[m>>2]=z[(l?k+28|0:m)>>2];z[R>>2]=z[(l?k+32|0:R)>>2];m=d+120|0;z[m>>2]=z[(l?k+36|0:m)>>2];z[d+124>>2]=z[(l?k+40|0:q)>>2];m=k+44|0;k=d+128|0;l=l?m:k;v[k+16>>2]=v[l+16>>2];m=v[l+12>>2];v[k+8>>2]=v[l+8>>2];v[k+12>>2]=m;m=v[l+4>>2];v[k>>2]=v[l>>2];v[k+4>>2]=m;k=v[d+88>>2];l:{if(!w[b+244|0]){break l}l=v[b+240>>2];if((l|0)==(k|0)){break l}if(l){gU(v[b+248>>2],l)}if(!k){break l}fU(v[b+248>>2],k)}v[b+240>>2]=k;k=v[d+84>>2];m:{if(!w[b+256|0]){break m}l=v[b+252>>2];if((l|0)==(k|0)){break m}if(l){gU(v[b+260>>2],l)}if(!k){break m}fU(v[b+260>>2],k)}v[b+252>>2]=k;k=v[d+88>>2];l=v[d+84>>2];Ba[v[v[l>>2]+76>>2]](d+8|0,l);Ba[v[v[k>>2]+80>>2]](d+224|0,k);N=z[d+32>>2];ca=z[d+28>>2];G=z[d+248>>2];Q=z[d+244>>2];s=z[d+232>>2];E=z[d+224>>2];r=z[d+228>>2];F=z[d+236>>2];O=z[d+24>>2];n=z[d+8>>2];I=z[d+240>>2];f=z[d+20>>2];o=z[d+12>>2];p=z[d+16>>2];S=z[b+28>>2];W=z[b+32>>2];H=C(J-z[d+124>>2]);z[b+300>>2]=C(0)-C(H*z[b+36>>2]);z[b+296>>2]=C(0)-C(H*W);z[b+292>>2]=C(0)-C(S*H);H=C(C(C(n*r)+C(C(f*s)+C(p*F)))-C(E*o));G=C(G+G);I=C(I+I);Q=C(Q+Q);W=C(C(p*G)+C(C(n*I)+C(o*Q)));T=C(C(f*f)+C(-.5));N=C(C(0)-C(N+C(C(p*W)+C(C(G*T)+C(f*C(C(n*Q)-C(I*o)))))));N=C(N+N);S=C(C(C(o*s)+C(C(f*E)+C(n*F)))-C(r*p));O=C(C(0)-C(O+C(C(n*W)+C(C(I*T)+C(f*C(C(o*G)-C(Q*p)))))));O=C(O+O);G=C(C(0)-C(ca+C(C(o*W)+C(C(Q*T)+C(f*C(C(p*I)-C(G*n)))))));G=C(G+G);I=C(C(C(p*E)+C(C(f*r)+C(o*F)))-C(s*n));Q=C(C(H*N)+C(C(S*O)+C(G*I)));f=C(C(C(C(f*F)-C(E*n))-C(o*r))-C(p*s));n=C(C(f*f)+C(-.5));z[b+288>>2]=C(H*Q)+C(C(N*n)-C(f*C(C(S*G)-C(O*I))));z[b+284>>2]=C(I*Q)+C(C(G*n)-C(f*C(C(H*O)-C(N*S))));z[b+280>>2]=C(S*Q)+C(C(O*n)-C(f*C(C(I*N)-C(G*H))));k=v[b+480>>2];ga=b,ha=(Ba[v[v[k>>2]+32>>2]](k)|0)-1|0,v[ga+484>>2]=ha}if(!h){break k}v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;u[d+20>>1]=0;v[d+16>>2]=-1;v[d+8>>2]=0;v[d+12>>2]=0;v[d+56>>2]=0;v[d+48>>2]=2139095039;v[d+52>>2]=0;f=z[b+28>>2];n=z[b+32>>2];z[d+232>>2]=-z[b+36>>2];z[d+228>>2]=-n;z[d+224>>2]=-f;k=GU(h,d+8|0,d+168|0,d+224|0,$,d+4|0);if(!k){break k}f=z[d+48>>2];if(!(f>2])){break k}v[b+264>>2]=v[d+4>>2];n=z[b+28>>2];o=z[b+32>>2];f=C(J-f);z[b+324>>2]=C(0)-C(f*z[b+36>>2]);z[b+320>>2]=C(0)-C(f*o);z[b+316>>2]=C(0)-C(f*n);n=z[k+40>>2];f=C(C(0)-C(A[k+24>>3]));o=C(f+f);p=z[k+32>>2];f=C(C(0)-C(A[k+8>>3]));s=C(f+f);E=z[k+36>>2];f=C(C(0)-C(A[k+16>>3]));r=C(f+f);F=C(C(n*o)+C(C(p*s)+C(E*r)));f=z[k+44>>2];J=C(C(f*f)+C(-.5));z[b+312>>2]=C(n*F)+C(C(o*J)-C(f*C(C(p*r)-C(s*E))));z[b+308>>2]=C(E*F)+C(C(r*J)-C(f*C(C(n*s)-C(o*p))));z[b+304>>2]=C(p*F)+C(C(s*J)-C(f*C(C(E*o)-C(r*n))))}xa=d+256|0;l=v[b+264>>2];d=v[b+240>>2]}n:{if(!(!d&(l|0)==-1)){f=C(0);k=0;s=C(0);E=C(0);d=xa+-64|0;xa=d;o:{p:{q:{r:{if(v[b+240>>2]){l=v[b+252>>2];o=C(1);if(x[l+4>>1]==6){break q}k=v[b+480>>2];k=Ba[v[v[k>>2]+32>>2]](k)|0;if((k|0)==v[b+484>>2]){break p}v[b+484>>2]=k;L=A[b+496>>3];M=A[b+488>>3];A[b+496>>3]=M;k=v[b+76>>2];if(k){Ba[v[v[k>>2]>>2]](d+32|0,k,v[b+240>>2],v[b+252>>2]);k=w[d+32|0]}else{k=0}L=M-L;m=v[b+240>>2];Ba[v[v[l>>2]+76>>2]](d+32|0,l);Ba[v[v[m>>2]+80>>2]](d,m);n=z[d+40>>2];f=z[d+24>>2];F=C(f+f);o=z[d+32>>2];f=z[d+16>>2];J=C(f+f);f=z[d+20>>2];H=C(f+f);p=z[d+36>>2];G=C(C(n*F)+C(C(o*J)+C(H*p)));f=z[d+44>>2];$=C(C(f*f)+C(-.5));s=z[d+4>>2];E=z[d+8>>2];r=z[d+12>>2];I=z[d>>2];Q=C(C(C(o*s)+C(C(f*E)+C(n*r)))-C(I*p));N=z[b+288>>2];N=C(N+N);S=C(C(C(p*E)+C(C(f*I)+C(o*r)))-C(s*n));O=z[b+280>>2];O=C(O+O);W=C(C(C(n*I)+C(C(f*s)+C(p*r)))-C(E*o));T=z[b+284>>2];T=C(T+T);ca=C(C(Q*N)+C(C(S*O)+C(W*T)));r=C(C(C(C(f*r)-C(I*o))-C(p*s))-C(n*E));I=C(C(r*r)+C(-.5));s=C(C(C(z[d+56>>2]+C(C(n*G)+C(C(F*$)+C(f*C(C(o*H)-C(J*p))))))+C(C(Q*ca)+C(C(N*I)+C(r*C(C(S*T)-C(O*W))))))-z[b+300>>2]);E=C(C(C(z[d+52>>2]+C(C(p*G)+C(C(H*$)+C(f*C(C(n*J)-C(F*o))))))+C(C(W*ca)+C(C(T*I)+C(r*C(C(Q*O)-C(N*S))))))-z[b+296>>2]);f=C(C(C(z[d+48>>2]+C(C(o*G)+C(C(J*$)+C(f*C(C(p*F)-C(H*n))))))+C(C(S*ca)+C(C(O*I)+C(r*C(C(W*N)-C(T*Q))))))-z[b+292>>2]);break r}L=A[b+496>>3];M=A[b+488>>3];A[b+496>>3]=M;l=Ba[v[v[h>>2]+36>>2]](h,v[b+264>>2])|0;k=v[b+76>>2];if(k){Ba[v[v[k>>2]+8>>2]](d+32|0,k,l);k=w[d+32|0]}else{k=1}L=M-L;n=z[l+40>>2];f=z[b+312>>2];o=C(f+f);p=z[l+32>>2];f=z[b+304>>2];r=C(f+f);F=z[l+36>>2];f=z[b+308>>2];J=C(f+f);H=C(C(n*o)+C(C(p*r)+C(F*J)));f=z[l+44>>2];G=C(C(f*f)+C(-.5));s=C(C(C(C(n*H)+C(C(o*G)+C(f*C(C(p*J)-C(r*F)))))+C(A[l+24>>3]))-z[b+324>>2]);E=C(C(C(C(F*H)+C(C(J*G)+C(f*C(C(n*r)-C(o*p)))))+C(A[l+16>>3]))-z[b+320>>2]);f=C(C(C(C(p*H)+C(C(r*G)+C(f*C(C(F*o)-C(J*n)))))+C(A[l+8>>3]))-z[b+316>>2])}if(k&4){break p}o=C(C(1)/C(L))}l=C(D(f))>C(9.999999974752427e-7)|C(D(E))>C(9.999999974752427e-7)|C(D(s))>C(9.999999974752427e-7);s:{if(!l){t[b+513|0]=0;break s}t[b+513|0]=1;p=z[b+36>>2];F=z[b+28>>2];r=z[b+32>>2];n=C(C(s*p)+C(C(f*F)+C(E*r)));p=C(p*n);r=C(r*n);F=C(F*n);t:{if(n>C(0)){A[c+8>>3]=A[c+8>>3]+ +F;A[c+16>>3]=A[c+16>>3]+ +r;A[c+24>>3]=A[c+24>>3]+ +p;break t}z[j+256>>2]=F+z[j+256>>2];z[j+260>>2]=r+z[j+260>>2];z[j+264>>2]=p+z[j+264>>2]}if(!(k&1)){break s}z[j+256>>2]=C(f-F)+z[j+256>>2];z[j+260>>2]=C(E-r)+z[j+260>>2];z[j+264>>2]=C(s-p)+z[j+264>>2]}z[b+464>>2]=s*o;z[b+460>>2]=E*o;z[b+456>>2]=f*o;break o}l=w[b+513|0]!=0}xa=d- -64|0;break n}v[b+456>>2]=0;v[b+460>>2]=0;t[b+513|0]=0;v[b+464>>2]=0;l=0}ba=l;k=v[b+520>>2];R=k+56|0;P=k+44|0;X=k+32|0;_=k+20|0;m=Ba[v[v[k>>2]+8>>2]](k)|0;K=v[v[b+520>>2]+68>>2];if(m){d=0;while(1){l=v[K+(d<<2)>>2];u:{if((l|0)==(b|0)){break u}q=v[g+12>>2];if(q){if(!(ha=q,ia=Ba[v[v[b>>2]+16>>2]](b)|0,ja=Ba[v[v[l>>2]+16>>2]](l)|0,ga=v[v[q>>2]+8>>2],Ba[ga](ha|0,ia|0,ja|0)|0)){break u}}v:{switch(v[l+4>>2]){case 0:PT(l-8|0,j+152|0);l=v[k+36>>2];w:{if(l>>>0>=(v[k+40>>2]&2147483647)>>>0){nT(X,j+152|0);break w}q=v[j+156>>2];l=v[k+32>>2]+B(l,56)|0;v[l>>2]=v[j+152>>2];v[l+4>>2]=q;q=v[j+172>>2];v[l+16>>2]=v[j+168>>2];v[l+20>>2]=q;q=v[j+164>>2];v[l+8>>2]=v[j+160>>2];v[l+12>>2]=q;z[l+24>>2]=z[j+176>>2];z[l+28>>2]=z[j+180>>2];z[l+32>>2]=z[j+184>>2];z[l+36>>2]=z[j+188>>2];z[l+40>>2]=z[j+192>>2];z[l+44>>2]=z[j+196>>2];z[l+48>>2]=z[j+200>>2];v[k+36>>2]=v[k+36>>2]+1}q=d<<16;v[j+32>>2]=q;l=v[k+24>>2];if(l>>>0>=(v[k+28>>2]&2147483647)>>>0){oT(_,j+32|0);break u}v[v[k+20>>2]+(l<<2)>>2]=q;v[k+24>>2]=l+1;break u;case 1:break v;default:break u}}JS(l-8|0,j+152|0);l=v[k+60>>2];x:{if(l>>>0>=(v[k+64>>2]&2147483647)>>>0){pT(R,j+152|0);break x}q=v[j+156>>2];l=v[k+56>>2]+B(l,56)|0;v[l>>2]=v[j+152>>2];v[l+4>>2]=q;q=v[j+204>>2];v[l+48>>2]=v[j+200>>2];v[l+52>>2]=q;q=v[j+196>>2];v[l+40>>2]=v[j+192>>2];v[l+44>>2]=q;q=v[j+188>>2];v[l+32>>2]=v[j+184>>2];v[l+36>>2]=q;q=v[j+180>>2];v[l+24>>2]=v[j+176>>2];v[l+28>>2]=q;q=v[j+172>>2];v[l+16>>2]=v[j+168>>2];v[l+20>>2]=q;q=v[j+164>>2];v[l+8>>2]=v[j+160>>2];v[l+12>>2]=q;v[k+60>>2]=v[k+60>>2]+1}q=d<<16;v[j+32>>2]=q;l=v[k+48>>2];if(l>>>0>=(v[k+52>>2]&2147483647)>>>0){oT(P,j+32|0);break u}v[v[k+44>>2]+(l<<2)>>2]=q;v[k+48>>2]=l+1}d=d+1|0;if((m|0)!=(d|0)){continue}break}}y:{if(!h){break y}K=v[h+8>>2];if(K){ea=!Z|!(aa&4);l=0;while(1){d=v[h+4>>2]+B(l,72)|0;m=v[d+36>>2];v[j+48>>2]=v[d+32>>2];v[j+52>>2]=m;m=v[d+28>>2];v[j+40>>2]=v[d+24>>2];v[j+44>>2]=m;m=v[d+20>>2];v[j+32>>2]=v[d+16>>2];v[j+36>>2]=m;z[j+56>>2]=z[d+56>>2];z[j+60>>2]=z[d+60>>2];q=d- -64|0;z[j+64>>2]=z[q>>2];z[j+68>>2]=z[d+40>>2];z[j+72>>2]=z[d+44>>2];z[j+76>>2]=z[d+48>>2];z[j+80>>2]=z[d+52>>2];m=v[k+36>>2];z:{if(m>>>0>=(v[k+40>>2]&2147483647)>>>0){nT(X,j+32|0);break z}U=v[j+36>>2];m=v[k+32>>2]+B(m,56)|0;v[m>>2]=v[j+32>>2];v[m+4>>2]=U;U=v[j+52>>2];v[m+16>>2]=v[j+48>>2];v[m+20>>2]=U;U=v[j+44>>2];v[m+8>>2]=v[j+40>>2];v[m+12>>2]=U;z[m+24>>2]=z[j+56>>2];z[m+28>>2]=z[j+60>>2];z[m+32>>2]=z[j+64>>2];z[m+36>>2]=z[j+68>>2];z[m+40>>2]=z[j+72>>2];z[m+44>>2]=z[j+76>>2];z[m+48>>2]=z[j+80>>2];v[k+36>>2]=v[k+36>>2]+1}U=l<<16|1;v[j+152>>2]=U;m=v[k+24>>2];A:{if(m>>>0>=(v[k+28>>2]&2147483647)>>>0){oT(_,j+152|0);break A}v[v[k+20>>2]+(m<<2)>>2]=U;v[k+24>>2]=m+1}if(!ea){v[j+176>>2]=0;v[j+180>>2]=0;v[j+168>>2]=0;v[j+172>>2]=0;v[j+160>>2]=0;v[j+164>>2]=0;v[j+184>>2]=0;v[j+188>>2]=1065353216;v[j+152>>2]=0;v[j+156>>2]=0;v[j+200>>2]=0;v[j+204>>2]=0;v[j+192>>2]=0;v[j+196>>2]=0;v[j+208>>2]=1065353216;v[j+220>>2]=0;v[j+224>>2]=0;v[j+212>>2]=0;v[j+216>>2]=0;v[j+228>>2]=1065353216;v[j+240>>2]=0;v[j+244>>2]=0;v[j+232>>2]=0;v[j+236>>2]=0;v[j+252>>2]=Z;v[j+248>>2]=1065353216;m=j+152|0;v[m+4>>2]=-16711681;L=A[d+24>>3];M=A[d+32>>3];Y=A[d+16>>3];z[j+96>>2]=z[d+40>>2];z[j+100>>2]=z[d+44>>2];z[j+104>>2]=z[d+48>>2];f=z[d+52>>2];z[j+120>>2]=M;z[j+116>>2]=L;z[j+112>>2]=Y;z[j+108>>2]=f;U=j+96|0;YU(m,U);f=z[d+56>>2];n=z[d+60>>2];z[j+104>>2]=-z[q>>2];z[j+100>>2]=-n;z[j+96>>2]=-f;z[j+108>>2]=z[d+56>>2];z[j+112>>2]=z[d+60>>2];f=z[q>>2];t[j+120|0]=1;z[j+116>>2]=f;_U(m,U)}l=l+1|0;if((K|0)!=(l|0)){continue}break}}q=v[h+20>>2];if(!q){break y}aa=!Z|!(aa&4);l=0;while(1){d=v[h+16>>2]+(l<<6)|0;L=A[d+16>>3];M=A[d+24>>3];f=z[d+40>>2];n=C(f+f);E=z[d+48>>2];r=z[d+44>>2];o=z[d+52>>2];p=C(o+o);s=z[d+56>>2];Y=+C(C(C(n*E)-C(r*p))*s);A[j+112>>3]=A[d+32>>3]-Y;da=M;M=+C(s*C(C(E*p)+C(n*r)));A[j+104>>3]=da-M;da=L;L=+C(s*C(C(f*n)+C(C(o*p)+C(-1))));A[j+96>>3]=da-L;da=A[d+16>>3];fa=A[d+24>>3];A[j+136>>3]=A[d+32>>3]+Y;A[j+128>>3]=fa+M;A[j+120>>3]=da+L;z[j+144>>2]=z[d+60>>2];m=v[k+60>>2];B:{if(m>>>0>=(v[k+64>>2]&2147483647)>>>0){pT(R,j+96|0);break B}K=v[j+100>>2];m=v[k+56>>2]+B(m,56)|0;v[m>>2]=v[j+96>>2];v[m+4>>2]=K;K=v[j+148>>2];v[m+48>>2]=v[j+144>>2];v[m+52>>2]=K;K=v[j+140>>2];v[m+40>>2]=v[j+136>>2];v[m+44>>2]=K;K=v[j+132>>2];v[m+32>>2]=v[j+128>>2];v[m+36>>2]=K;K=v[j+124>>2];v[m+24>>2]=v[j+120>>2];v[m+28>>2]=K;K=v[j+116>>2];v[m+16>>2]=v[j+112>>2];v[m+20>>2]=K;K=v[j+108>>2];v[m+8>>2]=v[j+104>>2];v[m+12>>2]=K;v[k+60>>2]=v[k+60>>2]+1}K=l<<16|2;v[j+152>>2]=K;m=v[k+48>>2];C:{if(m>>>0>=(v[k+52>>2]&2147483647)>>>0){oT(P,j+152|0);break C}v[v[k+44>>2]+(m<<2)>>2]=K;v[k+48>>2]=m+1}if(!aa){v[j+176>>2]=0;v[j+180>>2]=0;v[j+168>>2]=0;v[j+172>>2]=0;v[j+160>>2]=0;v[j+164>>2]=0;v[j+184>>2]=0;v[j+188>>2]=1065353216;v[j+152>>2]=0;v[j+156>>2]=0;v[j+200>>2]=0;v[j+204>>2]=0;v[j+192>>2]=0;v[j+196>>2]=0;v[j+208>>2]=1065353216;v[j+220>>2]=0;v[j+224>>2]=0;v[j+212>>2]=0;v[j+216>>2]=0;v[j+228>>2]=1065353216;v[j+240>>2]=0;v[j+244>>2]=0;v[j+232>>2]=0;v[j+236>>2]=0;v[j+252>>2]=Z;v[j+248>>2]=1065353216;m=j+152|0;v[m+4>>2]=-16711681;r=z[d+56>>2];F=z[d+60>>2];f=z[d+48>>2];n=z[d+44>>2];o=z[d+52>>2];p=z[d+40>>2];L=A[d+16>>3];M=A[d+24>>3];Y=A[d+32>>3];v[j+92>>2]=1065353216;v[j+76>>2]=0;v[j+60>>2]=0;v[j+44>>2]=0;z[j+88>>2]=Y;z[j+84>>2]=M;z[j+80>>2]=L;E=C(n+n);J=C(f*E);s=C(p+p);H=C(o*s);z[j+68>>2]=J-H;G=C(s*f);I=C(E*o);z[j+64>>2]=G+I;z[j+56>>2]=J+H;J=C(s*n);H=o;o=C(f+f);H=C(H*o);z[j+48>>2]=J-H;z[j+40>>2]=G-I;z[j+36>>2]=J+H;p=C(C(1)-C(p*s));n=C(n*E);z[j+72>>2]=p-n;f=C(f*o);z[j+52>>2]=p-f;z[j+32>>2]=C(C(1)-n)-f;cV(m,F,r,j+32|0)}l=l+1|0;if((q|0)!=(l|0)){continue}break}}m=v[k+36>>2];v[j+32>>2]=m;d=0;l=0;if(m){l=v[X>>2];m=v[_>>2]}else{m=0}v[j+40>>2]=m;v[j+36>>2]=l;k=v[k+60>>2];v[j+44>>2]=k;l=0;if(k){l=v[P>>2];d=v[R>>2]}v[j+52>>2]=l;v[j+48>>2]=d;v[j+100>>2]=h;v[j+96>>2]=b;d=v[b+480>>2];v[j+20>>2]=Z;v[j+16>>2]=d;v[j+24>>2]=v[b+520>>2]+80;v[b+412>>2]=v[b+412>>2]&-3;v[j+12>>2]=0;v[j+8>>2]=0;L=A[c+24>>3];M=A[c+16>>3];Y=A[c+8>>3];d=b+88|0;lT(j+152|0,d,j+16|0,j+96|0,c,j+256|0,j+32|0,e,g,i,ba,j+12|0,j+8|0);l=w[j+152|0];t[a|0]=l;h=v[b+412>>2];if(h&1){v[b+412>>2]=h|2;A[c+24>>3]=L;A[c+16>>3]=M;A[c+8>>3]=Y;f=z[j+256>>2];D:{if(v[b+8>>2]==1){o=z[b+36>>2];n=f;f=z[b+28>>2];p=z[b+32>>2];n=C(C(z[j+264>>2]*o)+C(C(n*f)+C(z[j+260>>2]*p)));z[j+152>>2]=f*n;f=C(o*n);n=C(p*n);break D}z[j+152>>2]=f;f=z[j+264>>2];n=z[j+260>>2]}z[j+160>>2]=f;z[j+156>>2]=n;lT(j,d,j+16|0,j+96|0,c,j+152|0,j+32|0,e,g,i,ba,j+12|0,j+8|0);l=w[j|0];t[a|0]=l;v[b+412>>2]=v[b+412>>2]&-3}a=v[j+12>>2];E:{if(!w[b+256|0]){break E}d=v[V>>2];if((d|0)==(a|0)){break E}if(d){gU(v[b+260>>2],d)}if(!a){break E}fU(v[b+260>>2],a)}v[b+252>>2]=a;a=v[j+8>>2];F:{if(!w[b+244|0]){break F}d=v[b+240>>2];if((d|0)==(a|0)){break F}if(d){gU(v[b+248>>2],d)}if(!a){break F}fU(v[b+248>>2],a)}t[b+512|0]=l;v[b+240>>2]=a;a=v[c+12>>2];v[b+432>>2]=v[c+8>>2];v[b+436>>2]=a;a=v[c+20>>2];v[b+440>>2]=v[c+16>>2];v[b+444>>2]=a;a=v[c+28>>2];v[b+448>>2]=v[c+24>>2];v[b+452>>2]=a;a=v[b+424>>2];G:{if(!a){break G}e=C(L-A[c+24>>3]);f=C(e*e);e=C(Y-A[c+8>>3]);o=C(e*e);e=C(M-A[c+16>>3]);if(C(f+C(o+C(e*e)))==C(0)){break G}c=j+152|0;Ba[v[v[a>>2]+76>>2]](c,a);L=A[b+440>>3];M=A[b+432>>3];z[j+176>>2]=A[b+448>>3];z[j+172>>2]=L;z[j+168>>2]=M;z[j+152>>2]=z[b+12>>2];z[j+156>>2]=z[b+16>>2];z[j+160>>2]=z[b+20>>2];z[j+164>>2]=z[b+24>>2];a=v[b+424>>2];Ba[v[v[a>>2]+248>>2]](a,c)}g=xa+-64|0;xa=g;h=v[b+520>>2];a=v[h+28>>2]&2147483647;H:{if(!a){break H}if(y[h+24>>2]>a>>>1>>>0){v[h+24>>2]=0;break H}v[g+8>>2]=0;a=h+20|0;jU(a,g+8|0);kU(a,v[h+24>>2])}a=v[h+40>>2]&2147483647;I:{if(!a){break I}if(y[h+36>>2]>a>>>1>>>0){v[h+36>>2]=0;break I}b=h+32|0;a=v[b+4>>2];if((a|0)<0){c=v[b>>2];d=c+B(a,56)|0;while(1){a=v[g+12>>2];v[d>>2]=v[g+8>>2];v[d+4>>2]=a;a=v[g+28>>2];v[d+16>>2]=v[g+24>>2];v[d+20>>2]=a;a=v[g+20>>2];v[d+8>>2]=v[g+16>>2];v[d+12>>2]=a;z[d+24>>2]=z[g+32>>2];z[d+28>>2]=z[g+36>>2];z[d+32>>2]=z[g+40>>2];z[d+36>>2]=z[g+44>>2];z[d+40>>2]=z[g+48>>2];z[d+44>>2]=z[g+52>>2];z[d+48>>2]=z[g+56>>2];d=d+56|0;if(c>>>0>d>>>0){continue}break}}v[b+4>>2]=0;c=0;i=v[h+36>>2];J:{if(!i){break J}d=B(i,56);if(!d){break J}a=v[37696];c=a+12|0;c=(ja=c,ia=d,ha=Ba[v[v[a>>2]+20>>2]](a)|0?25709:63804,ka=16608,la=553,ga=v[v[c>>2]+8>>2],Ba[ga](ja|0,ia|0,ha|0,ka|0,la|0)|0)}d=v[b>>2];a=v[b+4>>2];if((a|0)>0){k=B(a,56)+c|0;a=c;while(1){l=v[d+4>>2];v[a>>2]=v[d>>2];v[a+4>>2]=l;l=v[d+20>>2];v[a+16>>2]=v[d+16>>2];v[a+20>>2]=l;l=v[d+12>>2];v[a+8>>2]=v[d+8>>2];v[a+12>>2]=l;z[a+24>>2]=z[d+24>>2];z[a+28>>2]=z[d+28>>2];z[a+32>>2]=z[d+32>>2];z[a+36>>2]=z[d+36>>2];z[a+40>>2]=z[d+40>>2];z[a+44>>2]=z[d+44>>2];z[a+48>>2]=z[d+48>>2];d=d+56|0;a=a+56|0;if(k>>>0>a>>>0){continue}break}d=v[b>>2]}if(!(!d|v[b+8>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,d)}v[b+8>>2]=i;v[b>>2]=c}a=v[h+52>>2]&2147483647;K:{if(!a){break K}if(y[h+48>>2]>a>>>1>>>0){v[h+48>>2]=0;break K}v[g+8>>2]=0;a=h+44|0;jU(a,g+8|0);kU(a,v[h+48>>2])}a=v[h- -64>>2]&2147483647;L:{if(!a){break L}if(y[h+60>>2]>a>>>1>>>0){v[h+60>>2]=0;break L}v[g+56>>2]=0;v[g+60>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+40>>2]=0;v[g+44>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+24>>2]=0;v[g+28>>2]=0;v[g+16>>2]=0;v[g+20>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;b=h+56|0;a=v[b+4>>2];if((a|0)<0){c=v[b>>2];d=c+B(a,56)|0;while(1){a=v[g+12>>2];v[d>>2]=v[g+8>>2];v[d+4>>2]=a;a=v[g+60>>2];v[d+48>>2]=v[g+56>>2];v[d+52>>2]=a;a=v[g+52>>2];v[d+40>>2]=v[g+48>>2];v[d+44>>2]=a;a=v[g+44>>2];v[d+32>>2]=v[g+40>>2];v[d+36>>2]=a;a=v[g+36>>2];v[d+24>>2]=v[g+32>>2];v[d+28>>2]=a;a=v[g+28>>2];v[d+16>>2]=v[g+24>>2];v[d+20>>2]=a;a=v[g+20>>2];v[d+8>>2]=v[g+16>>2];v[d+12>>2]=a;d=d+56|0;if(c>>>0>d>>>0){continue}break}}v[b+4>>2]=0;c=0;h=v[h+60>>2];M:{if(!h){break M}d=B(h,56);if(!d){break M}a=v[37696];c=a+12|0;c=(la=c,ka=d,ha=Ba[v[v[a>>2]+20>>2]](a)|0?42783:63804,ia=16608,ja=553,ga=v[v[c>>2]+8>>2],Ba[ga](la|0,ka|0,ha|0,ia|0,ja|0)|0)}d=v[b>>2];a=v[b+4>>2];if((a|0)>0){i=B(a,56)+c|0;a=c;while(1){k=v[d+4>>2];v[a>>2]=v[d>>2];v[a+4>>2]=k;k=v[d+52>>2];v[a+48>>2]=v[d+48>>2];v[a+52>>2]=k;k=v[d+44>>2];v[a+40>>2]=v[d+40>>2];v[a+44>>2]=k;k=v[d+36>>2];v[a+32>>2]=v[d+32>>2];v[a+36>>2]=k;k=v[d+28>>2];v[a+24>>2]=v[d+24>>2];v[a+28>>2]=k;k=v[d+20>>2];v[a+16>>2]=v[d+16>>2];v[a+20>>2]=k;k=v[d+12>>2];v[a+8>>2]=v[d+8>>2];v[a+12>>2]=k;d=d+56|0;a=a+56|0;if(i>>>0>a>>>0){continue}break}d=v[b>>2]}if(!(!d|v[b+8>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,d)}v[b+8>>2]=h;v[b>>2]=c}xa=g- -64|0;xa=j+272|0}function XY(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=C(g);h=h|0;i=i|0;j=j|0;k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=C(0),B=0,D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=0,N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=0,ra=C(0),sa=0,ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=0,Na=0;b=xa-352|0;xa=b;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+28>>2]=4;l=z[a+4>>2];m=z[a+8>>2];v[b+76>>2]=0;v[b+60>>2]=0;n=C(m*C(0));z[b+56>>2]=n;z[b+52>>2]=n;n=C(-n);z[b+72>>2]=n;z[b+68>>2]=n;z[b+80>>2]=l;z[b+48>>2]=m;t[b+32|0]=1;z[b+24>>2]=l;z[b+20>>2]=l;z[b+16>>2]=l;z[b+64>>2]=-m;v[b+344>>2]=0;v[b+348>>2]=0;v[b+336>>2]=0;v[b+340>>2]=0;ta=z[e+20>>2];s=z[f+20>>2];ua=z[e+24>>2];D=z[f+24>>2];m=z[d+8>>2];n=z[d>>2];p=z[d+4>>2];r=z[d+12>>2];T=z[c+12>>2];V=z[c>>2];va=z[e+16>>2];I=z[f+16>>2];P=z[c+4>>2];Q=z[c+8>>2];v[b+332>>2]=0;v[b+316>>2]=0;v[b+300>>2]=0;oa=C(-V);q=C(I-va);o=C(s-ta);y=C(D-ua);u=C(C(C(oa*q)-C(o*P))-C(Q*y));ba=C(C(T*T)+C(-.5));G=C(C(C(T*C(C(P*q)-C(V*o)))+C(ba*y))-C(Q*u));z[b+328>>2]=G+G;G=C(C(C(ba*o)+C(T*C(C(V*y)-C(Q*q))))-C(P*u));z[b+324>>2]=G+G;x=b+320|0;q=C(C(C(ba*q)+C(T*C(C(Q*o)-C(P*y))))-C(V*u));z[x>>2]=q+q;o=C(C(C(p*Q)-C(P*m))+C(C(n*T)-C(r*V)));q=C(o+o);y=C(C(C(m*V)-C(Q*n))+C(C(p*T)-C(r*P)));u=C(y+y);G=C(C(1)-C(o*q));R=C(y*u);z[b+312>>2]=G-R;o=C(C(C(n*P)-C(V*p))+C(C(m*T)-C(r*Q)));H=C(o*u);m=C(C(r*T)-C(C(C(oa*n)-C(p*P))-C(Q*m)));n=C(m*q);z[b+308>>2]=H-n;p=C(o*q);r=C(m*u);z[b+304>>2]=p+r;z[b+296>>2]=H+n;n=C(o+o);o=C(o*n);z[b+292>>2]=G-o;q=C(y*q);m=C(m*n);z[b+288>>2]=q-m;v[b+284>>2]=0;z[b+280>>2]=p-r;z[b+276>>2]=q+m;z[b+272>>2]=C(C(1)-R)-o;p=z[c+20>>2];r=z[d+20>>2];m=z[c+24>>2];n=z[d+24>>2];q=z[c+16>>2];o=z[d+16>>2];v[b+268>>2]=0;wa=C(n-D);m=C(C(m-ua)-wa);ya=C(o-I);n=C(C(q-va)-ya);za=C(r-s);p=C(C(p-ta)-za);r=C(C(Q*m)+C(C(V*n)+C(P*p)));q=C(C(C(ba*m)-C(T*C(C(V*p)-C(P*n))))+C(Q*r));z[b+264>>2]=q+q;q=C(C(P*r)+C(C(ba*p)-C(T*C(C(Q*n)-C(m*V)))));z[b+260>>2]=q+q;m=C(C(V*r)+C(C(ba*n)-C(T*C(C(P*m)-C(p*Q)))));z[b+256>>2]=m+m;v[b+192>>2]=0;v[b+112>>2]=142420;v[b+116>>2]=k;v[b+120>>2]=b+272;a=v[b+292>>2];v[b+144>>2]=v[b+288>>2];v[b+148>>2]=a;a=v[b+300>>2];v[b+152>>2]=v[b+296>>2];v[b+156>>2]=a;a=v[b+284>>2];v[b+136>>2]=v[b+280>>2];v[b+140>>2]=a;a=v[b+308>>2];v[b+160>>2]=v[b+304>>2];v[b+164>>2]=a;a=v[b+316>>2];v[b+168>>2]=v[b+312>>2];v[b+172>>2]=a;a=v[x+4>>2];v[b+176>>2]=v[x>>2];v[b+180>>2]=a;a=v[b+332>>2];v[b+184>>2]=v[b+328>>2];v[b+188>>2]=a;a=v[b+276>>2];v[b+128>>2]=v[b+272>>2];v[b+132>>2]=a;m=z[b+132>>2];z[b+132>>2]=z[b+144>>2];n=z[b+152>>2];p=z[b+136>>2];z[b+136>>2]=z[b+160>>2];z[b+152>>2]=z[b+164>>2];z[b+160>>2]=p;z[b+164>>2]=n;z[b+144>>2]=m;v[b+104>>2]=141148;v[b+108>>2]=b;pa=C(34028234663852886e22);e=xa-288|0;xa=e;S=C(l+g);a=xa-272|0;xa=a;v[a+264>>2]=0;v[a+268>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;O=z[b+344>>2];ea=z[b+340>>2];W=z[b+336>>2];_=z[b+264>>2];Z=z[b+260>>2];fa=z[b+256>>2];v[a+240>>2]=1;qa=b+112|0;c=qa;d=v[c+8>>2];X=z[d+52>>2];na=z[d+36>>2];ca=z[d+20>>2];j=b+104|0;k=v[j+4>>2];n=z[k+56>>2];p=z[k+52>>2];r=z[k+72>>2];q=z[k+68>>2];A=z[d+56>>2];E=z[d+40>>2];ga=z[d+24>>2];f=v[c+4>>2];o=z[f+72>>2];y=z[f- -64>>2];u=z[f+68>>2];s=z[f+56>>2];D=z[f+52>>2];I=z[f+88>>2];da=z[c+56>>2];ha=z[c+24>>2];ia=z[c+40>>2];G=z[f+80>>2];la=z[c+48>>2];ma=z[c+32>>2];R=z[f+84>>2];Aa=z[c+52>>2];Ba=z[c+20>>2];Ca=z[c+36>>2];Da=z[d+48>>2];Ea=z[d+32>>2];Fa=z[d>>2];Ga=z[d+16>>2];Ha=z[d+4>>2];H=z[k+48>>2];$=z[k+64>>2];Ia=z[d+8>>2];J=z[f+48>>2];Ja=z[c+16>>2];g=z[x+8>>2];l=z[x>>2];m=z[x+4>>2];v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+224>>2]=0;v[a+228>>2]=0;v[a+232>>2]=0;f=0;v[a+236>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;ka=A;Ka=E;ja=o;La=I;d=C(C(g*g)+C(C(l*l)+C(m*m)))>C(1.1920928955078125e-7);l=d?l:C(1);E=l;o=d?g:C(0);g=d?m:C(0);l=C(C(1)/C(K(C(C(o*o)+C(C(l*l)+C(g*g))))));m=C(E*l);A=C(-m);g=C(g*l);l=C(o*l);o=C(C(C(ha*A)-C(ia*g))-C(da*l));E=C(C(C(Ja*A)-C(ma*g))-C(la*l));A=C(C(C(Ba*A)-C(Ca*g))-C(Aa*l));da=C(C(ja*o)+C(C(y*E)+C(u*A)));I=C(C(I*o)+C(C(G*E)+C(A*R)));d=da>I;o=C(C(s*o)+C(C(J*E)+C(A*D)));k=!(o>da)|!(o>I);o=k?d?ja:La:s;y=k?d?y:G:J;D=k?d?u:R:D;I=C(ka+C(C(Ka*o)+C(C(Ia*y)+C(ga*D))));d=C(C(n*l)+C(C(H*m)+C(g*p)))>C(C(r*l)+C(C($*m)+C(g*q)));g=d?n:r;u=C(I-g);z[a+184>>2]=u;l=C(X+C(C(na*o)+C(C(Ha*y)+C(D*ca))));m=d?p:q;s=C(l-m);z[a+180>>2]=s;n=C(Da+C(C(Ea*o)+C(C(Fa*y)+C(D*Ga))));p=d?H:$;o=C(n-p);z[a+176>>2]=o;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+160>>2]=0;v[a+164>>2]=0;v[a+168>>2]=0;v[a+172>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;z[a+120>>2]=I;z[a+116>>2]=l;z[a+112>>2]=n;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;z[a+56>>2]=g;z[a+52>>2]=m;z[a+48>>2]=p;g=C(-u);l=C(-s);m=C(-o);D=C(C(u*u)+C(C(o*o)+C(s*s)));a:{b:{if(!(D>C(0))){n=m;r=l;q=g;G=C(0);y=o;p=s;I=u;break b}X=C(S+C(0));na=C(X*X);R=C(C(fa*C(0))+W);H=C(C(Z*C(0))+ea);$=C(C(_*C(0))+O);G=C(0);q=g;r=l;n=m;while(1){y=o;p=s;I=u;s=C(C(1)/C(K(C(C(g*g)+C(C(m*m)+C(l*l))))));o=C(m*s);d=v[c+4>>2];S=z[d+72>>2];u=C(g*s);s=C(l*s);J=C(C(z[c+56>>2]*u)+C(C(o*z[c+24>>2])+C(s*z[c+40>>2])));O=z[d- -64>>2];A=C(C(z[c+48>>2]*u)+C(C(o*z[c+16>>2])+C(s*z[c+32>>2])));E=C(C(z[c+52>>2]*u)+C(C(o*z[c+20>>2])+C(s*z[c+36>>2])));ea=z[d+68>>2];W=C(C(S*J)+C(C(O*A)+C(E*ea)));_=z[d+88>>2];Z=z[d+80>>2];fa=z[d+84>>2];ca=C(C(_*J)+C(C(Z*A)+C(E*fa)));f=W>ca;ja=W;W=z[d+56>>2];ga=z[d+48>>2];ka=E;E=z[d+52>>2];J=C(C(W*J)+C(C(ga*A)+C(ka*E)));k=!(jaca);d=v[j+4>>2];ca=z[d+48>>2];J=C(-o);da=z[d+52>>2];ha=z[d+56>>2];ia=z[d+64>>2];la=z[d+68>>2];ma=z[d+72>>2];L=C(C(C(ca*J)-C(da*s))-C(ha*u))>C(C(C(ia*J)-C(la*s))-C(ma*u));d=v[c+8>>2];J=k?f?S:_:W;A=k?f?O:Z:ga;O=k?f?ea:fa:E;ea=C(z[d+48>>2]+C(C(z[d+32>>2]*J)+C(C(z[d>>2]*A)+C(O*z[d+16>>2]))));ca=L?ca:ia;W=C(R+ca);E=C(ea-W);_=C(z[d+52>>2]+C(C(z[d+36>>2]*J)+C(C(z[d+4>>2]*A)+C(O*z[d+20>>2]))));ga=L?da:la;Z=C(H+ga);S=C(_-Z);O=C(z[d+56>>2]+C(C(z[d+40>>2]*J)+C(C(z[d+8>>2]*A)+C(O*z[d+24>>2]))));J=L?ha:ma;fa=C($+J);A=C(O-fa);da=C(C(C(C(o*C(-E))-C(s*S))-C(u*A))-X);if(da>C(0)){f=0;ha=z[b+264>>2];ka=C(u*ha);u=z[b+256>>2];ja=s;s=z[b+260>>2];ia=C(ka+C(C(o*u)+C(ja*s)));if(ia>=C(0)){break a}o=G;G=C(o-C(da/ia));if(G>o){if(G>C(1)){break a}q=z[b+344>>2];r=z[b+340>>2];n=z[b+336>>2];v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;o=C(n+C(u*G));n=C(o-R);D=C(n+z[a+80>>2]);z[a+80>>2]=D;u=C(r+C(s*G));r=C(u-H);R=C(r+z[a+84>>2]);z[a+84>>2]=R;s=C(q+C(ha*G));q=C(s-$);H=C(q+z[a+88>>2]);z[a+88>>2]=H;$=C(n+z[a+64>>2]);z[a+64>>2]=$;A=C(r+z[a+68>>2]);z[a+68>>2]=A;E=C(q+z[a+72>>2]);z[a+72>>2]=E;n=C(n+z[a+48>>2]);z[a+48>>2]=n;r=C(r+z[a+52>>2]);z[a+52>>2]=r;q=C(q+z[a+56>>2]);z[a+56>>2]=q;S=z[a+112>>2];W=z[a+116>>2];Z=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=Z-q;z[a+180>>2]=W-r;z[a+176>>2]=S-n;n=z[a+128>>2];r=z[a+132>>2];q=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=q-E;z[a+196>>2]=r-A;z[a+192>>2]=n-$;n=z[a+144>>2];r=z[a+148>>2];q=z[a+152>>2];v[a+220>>2]=0;z[a+216>>2]=q-H;z[a+212>>2]=r-R;z[a+208>>2]=n-D;fa=C(J+s);A=C(O-fa);Z=C(ga+u);S=C(_-Z);W=C(ca+o);E=C(ea-W);n=m;r=l;q=g;R=o;H=u;$=s;g=C(34028234663852886e22)}else{g=D}}else{g=D}J=g;f=v[a+240>>2];k=f<<4;d=k+(a+112|0)|0;v[d+12>>2]=0;z[d+8>>2]=O;z[d+4>>2]=_;z[d>>2]=ea;d=k+(a+48|0)|0;v[d+12>>2]=0;z[d+8>>2]=fa;z[d+4>>2]=Z;z[d>>2]=W;d=k+(a+176|0)|0;v[d+12>>2]=0;z[d+8>>2]=A;z[d+4>>2]=S;z[d>>2]=E;v[a+240>>2]=f+1;c:{d:{switch(f-1|0){case 0:o=z[a+184>>2];g=C(z[a+200>>2]-o);u=z[a+176>>2];l=C(z[a+192>>2]-u);s=z[a+180>>2];m=C(z[a+196>>2]-s);D=C(C(g*g)+C(C(l*l)+C(m*m)));if(D<=C(1.1920928955078125e-7)){v[a+240>>2]=1;d=v[a+180>>2];v[a+32>>2]=v[a+176>>2];v[a+36>>2]=d;d=v[a+188>>2];v[a+40>>2]=v[a+184>>2];v[a+44>>2]=d;break c}E=g;g=C(F(C(C(C(C(C(-u)*l)-C(m*s))-C(o*g))/D),C(1)));g=g>C(0)?g:C(0);z[a+40>>2]=o+C(E*g);z[a+36>>2]=s+C(m*g);z[a+32>>2]=u+C(l*g);break c;case 1:JV(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;case 2:N_(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;default:break d}}z[a+40>>2]=A;z[a+36>>2]=S;z[a+32>>2]=E}u=z[a+40>>2];g=C(-u);s=z[a+36>>2];l=C(-s);o=z[a+32>>2];m=C(-o);D=C(C(u*u)+C(C(o*o)+C(s*s)));if(na>2]+32|0];A=C(0);R=C(0);k=!(D>C(0))|f;g=k?q:g;m=k?n:m;l=k?r:l;n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));if(!(n<=C(1.1920928955078125e-7))){r=g;g=C(C(1)/n);ra=C(r*g);A=C(l*g);R=C(m*g)}v[e+268>>2]=0;z[e+264>>2]=-ra;z[e+260>>2]=-A;z[e+256>>2]=-R;z[e+240>>2]=G;v[e+252>>2]=v[a+252>>2];k=v[a+248>>2];v[e+244>>2]=v[a+244>>2];v[e+248>>2]=k;v[a+44>>2]=0;z[a+40>>2]=f?I:u;z[a+36>>2]=f?p:s;z[a+32>>2]=f?y:o;f=v[a+268>>2];L=v[a+264>>2];v[a+24>>2]=L;v[a+28>>2]=f;k=v[a+260>>2];Y=v[a+256>>2];v[a+16>>2]=Y;v[a+20>>2]=k;v[a+8>>2]=L;v[a+12>>2]=f;v[a>>2]=Y;v[a+4>>2]=k;IV(a+176|0,a+112|0,a+48|0,a+32|0,a+16|0,a,v[a+240>>2]);g=z[v[c+4>>2]+16>>2];l=z[a+16>>2];m=z[a+20>>2];n=z[a+24>>2];v[e+284>>2]=0;z[e+280>>2]=n+(d?C(ra*g):C(-0));z[e+276>>2]=m+(d?C(A*g):C(-0));z[e+272>>2]=l+(d?C(R*g):C(-0));f=1}xa=a+272|0;if(f){a=v[e+244>>2];v[b+240>>2]=v[e+240>>2];v[b+244>>2]=a;a=v[e+252>>2];v[b+248>>2]=v[e+248>>2];v[b+252>>2]=a;if(z[e+240>>2]==C(0)){c=v[qa+4>>2];d=v[j+4>>2];z[e+224>>2]=C(z[c+16>>2]+z[d+16>>2])*C(100);t[e+215|0]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;v[e+152>>2]=0;v[e+156>>2]=0;v[e+144>>2]=0;v[e+148>>2]=0;v[e+136>>2]=0;v[e+140>>2]=0;v[e+128>>2]=0;v[e+132>>2]=0;v[e+192>>2]=0;a=v[qa+8>>2];v[e+56>>2]=a;v[e+48>>2]=142420;v[e+52>>2]=c;c=v[a+12>>2];v[e+72>>2]=v[a+8>>2];v[e+76>>2]=c;c=v[a+20>>2];v[e+80>>2]=v[a+16>>2];v[e+84>>2]=c;c=v[a+28>>2];v[e+88>>2]=v[a+24>>2];v[e+92>>2]=c;c=v[a+36>>2];v[e+96>>2]=v[a+32>>2];v[e+100>>2]=c;c=v[a+44>>2];v[e+104>>2]=v[a+40>>2];v[e+108>>2]=c;c=v[a+52>>2];v[e+112>>2]=v[a+48>>2];v[e+116>>2]=c;c=v[a+60>>2];v[e+120>>2]=v[a+56>>2];v[e+124>>2]=c;c=v[a+4>>2];v[e+64>>2]=v[a>>2];v[e+68>>2]=c;g=z[e+68>>2];z[e+68>>2]=z[e+80>>2];l=z[e+88>>2];m=z[e+72>>2];z[e+72>>2]=z[e+96>>2];z[e+80>>2]=g;z[e+96>>2]=m;z[e+88>>2]=z[e+100>>2];z[e+100>>2]=l;v[e+40>>2]=141148;v[e+44>>2]=d;L=e+220|0;Y=e+216|0;d=xa-320|0;xa=d;a=v[e+44>>2];g=z[a+20>>2];B=v[e+52>>2];l=z[B+20>>2];q=z[e+224>>2];aa=w[B+32|0];u=z[B+16>>2];Ma=w[a+32|0];s=z[a+16>>2];v[d+44>>2]=0;R=C((g>2];a=0;k=0;while(1){c=k<<2;N=w[k+L|0];v[c+(d- -64|0)>>2]=N;M=w[k+Y|0];v[c+(d+48|0)>>2]=M;c=B+(N<<4)|0;g=z[c+56>>2];l=z[c+48>>2];m=z[c+52>>2];c=(1-M<<4)+Na|0;n=z[c>>2];p=z[c+4>>2];r=z[c+8>>2];o=z[c+12>>2];y=z[x+48>>2];D=z[x+32>>2];I=z[x>>2];G=z[x+16>>2];H=z[x+52>>2];$=z[x+36>>2];J=z[x+4>>2];A=z[x+20>>2];E=z[x+56>>2];S=z[x+40>>2];X=z[x+8>>2];O=z[x+24>>2];c=a;U=a<<4;N=U+(d+144|0)|0;v[N+12>>2]=0;M=U+(d+80|0)|0;z[M+12>>2]=o;z[M+8>>2]=r;z[M+4>>2]=p;z[M>>2]=n;M=U+(d+208|0)|0;v[M+12>>2]=0;o=C(E+C(C(S*g)+C(C(X*l)+C(m*O))));z[N+8>>2]=o;H=C(H+C(C($*g)+C(C(J*l)+C(m*A))));z[N+4>>2]=H;g=C(y+C(C(D*g)+C(C(I*l)+C(m*G))));z[N>>2]=g;l=C(o-r);z[M+8>>2]=l;m=C(H-p);z[M+4>>2]=m;g=C(g-n);z[M>>2]=g;a=a+1|0;v[d+44>>2]=a;k=k+1|0;if((sa|0)!=(k|0)){continue}break}k:{l:{switch(c-1|0){case 0:n=z[d+216>>2];g=C(z[d+232>>2]-n);p=z[d+208>>2];l=C(z[d+224>>2]-p);r=z[d+212>>2];m=C(z[d+228>>2]-r);o=C(C(g*g)+C(C(l*l)+C(m*m)));if(!(o<=C(1.1920928955078125e-7))){break k}v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break i;case 1:iY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i;case 2:break l;default:break j}}P_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i}v[d+28>>2]=0;I=g;g=C(F(C(C(C(C(C(-p)*l)-C(m*r))-C(n*g))/o),C(1)));g=g>C(0)?g:C(0);z[d+24>>2]=n+C(I*g);z[d+20>>2]=r+C(m*g);z[d+16>>2]=p+C(l*g);break i}g=z[x+8>>2];m=z[x>>2];l=z[x+4>>2];v[d+284>>2]=0;a=C(C(g*g)+C(C(m*m)+C(l*l)))>C(0);g=a?g:C(0);z[d+280>>2]=g;l=a?l:C(0);z[d+276>>2]=l;m=a?m:C(1);z[d+272>>2]=m;p=C(C(1)/C(K(C(C(g*g)+C(C(m*m)+C(l*l))))));o=C(g*p);y=C(m*p);n=C(34028234663852886e22);p=C(l*p);break h}v[d+28>>2]=0;z[d+24>>2]=l;z[d+20>>2]=m;z[d+16>>2]=g}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;g=z[d+280>>2];m=z[d+272>>2];l=z[d+276>>2];n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));if(!(R>2]=v[d+312>>2];a=v[d+308>>2];v[d+288>>2]=v[d+304>>2];v[d+292>>2]=a;a=v[e+56>>2];J=z[d+284>>2];k=v[d+44>>2];B=k<<2;c=v[e+52>>2];A=z[c+72>>2];n=C(-m);s=C(C(C(z[e+72>>2]*n)-C(z[e+88>>2]*l))-C(z[e+104>>2]*g));E=z[c- -64>>2];q=g;H=C(C(C(z[e+64>>2]*n)-C(z[e+80>>2]*l))-C(z[e+96>>2]*g));u=l;n=C(C(C(z[e+68>>2]*n)-C(z[e+84>>2]*l))-C(z[e+100>>2]*g));S=z[c+68>>2];X=C(C(A*s)+C(C(E*H)+C(n*S)));O=z[c+88>>2];ea=z[c+80>>2];W=z[c+84>>2];_=C(C(O*s)+C(C(ea*H)+C(n*W)));x=X>_;ja=X;X=z[c+56>>2];Z=z[c+48>>2];ka=n;n=z[c+52>>2];s=C(C(X*s)+C(C(Z*H)+C(ka*n)));c=!(ja_);v[B+(d- -64|0)>>2]=c?x?1:2:0;H=z[a+56>>2];_=z[a+40>>2];fa=z[a+24>>2];ra=z[a+52>>2];na=z[a+36>>2];ca=z[a+20>>2];ga=z[a+8>>2];da=z[a+48>>2];ha=z[a+32>>2];ia=z[a>>2];la=z[a+16>>2];ma=z[a+4>>2];sa=B+(d+48|0)|0;a=v[e+44>>2];N=a+56|0;s=m;M=a+52|0;U=a+72|0;aa=a+68|0;B=C(C(z[N>>2]*g)+C(C(z[a+48>>2]*m)+C(l*z[M>>2])))>C(C(z[U>>2]*g)+C(C(z[a+64>>2]*m)+C(l*z[aa>>2])));v[sa>>2]=B;g=c?x?A:O:X;l=c?x?E:ea:Z;m=c?x?S:W:n;A=C(H+C(C(_*g)+C(C(ga*l)+C(fa*m))));E=z[(B?N:U)>>2];n=C(A-E);S=C(da+C(C(ha*g)+C(C(ia*l)+C(m*la))));X=z[(B?a+48|0:a- -64|0)>>2];H=C(S-X);l=C(ra+C(C(na*g)+C(C(ma*l)+C(m*ca))));m=z[(B?M:aa)>>2];g=C(l-m);O=C(C(o*n)+C(C(y*H)+C(p*g)));if(O>$){a=0;if(!L){break e}t[e+215|0]=k;if(!k){break e}c=0;if((k|0)!=1){M=k&-2;x=0;while(1){B=c<<2;U=d- -64|0;t[c+L|0]=v[B+U>>2];aa=d+48|0;t[c+Y|0]=v[aa+B>>2];B=c|1;N=B<<2;t[B+L|0]=v[N+U>>2];t[B+Y|0]=v[N+aa>>2];c=c+2|0;x=x+2|0;if((M|0)!=(x|0)){continue}break}}if(!(k&1)){break e}k=c<<2;t[c+L|0]=v[k+(d- -64|0)>>2];t[c+Y|0]=v[k+(d+48|0)>>2];break e}if(O>C(r*C(.9997749924659729))){m:{if(!L){break m}t[e+215|0]=k;if(!k){break m}c=0;if((k|0)!=1){N=k&-2;x=0;while(1){a=c<<2;M=d- -64|0;t[c+L|0]=v[a+M>>2];U=d+48|0;t[c+Y|0]=v[U+a>>2];a=c|1;B=a<<2;t[a+L|0]=v[B+M>>2];t[a+Y|0]=v[B+U>>2];c=c+2|0;x=x+2|0;if((N|0)!=(x|0)){continue}break}}if(!(k&1)){break m}a=c<<2;t[c+L|0]=v[a+(d- -64|0)>>2];t[c+Y|0]=v[a+(d+48|0)>>2]}z[e+160>>2]=y;v[e+172>>2]=0;z[e+168>>2]=o;z[e+164>>2]=p;IV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,k);g=z[d+16>>2];l=z[d+20>>2];m=z[d+24>>2];v[e+140>>2]=0;z[e+136>>2]=m-C(D*o);z[e+132>>2]=l-C(D*p);z[e+128>>2]=g-C(D*y);g=z[d>>2];l=z[d+4>>2];m=z[d+8>>2];v[e+156>>2]=0;z[e+152>>2]=m+C(I*o);z[e+148>>2]=l+C(I*p);z[e+144>>2]=g+C(I*y);z[e+192>>2]=r-G;a=2;break e}c=k<<4;a=c+(d+144|0)|0;v[a+12>>2]=0;z[a+8>>2]=A;z[a+4>>2]=l;z[a>>2]=S;a=c+(d+80|0)|0;v[a+12>>2]=0;z[a+8>>2]=E;z[a+4>>2]=m;z[a>>2]=X;a=c+(d+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=n;z[a+4>>2]=g;z[a>>2]=H;v[d+44>>2]=k+1;n:{o:{switch(k-1|0){case 0:n=z[d+216>>2];g=C(z[d+232>>2]-n);p=z[d+208>>2];l=C(z[d+224>>2]-p);o=z[d+212>>2];m=C(z[d+228>>2]-o);y=C(C(g*g)+C(C(l*l)+C(m*m)));if(y<=C(1.1920928955078125e-7)){v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break n}v[d+28>>2]=0;E=g;g=C(F(C(C(C(C(C(-p)*l)-C(m*o))-C(n*g))/y),C(1)));g=g>C(0)?g:C(0);z[d+24>>2]=n+C(E*g);z[d+20>>2]=o+C(m*g);z[d+16>>2]=p+C(l*g);break n;case 1:iY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;case 2:P_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;default:break o}}v[d+28>>2]=0;z[d+24>>2]=n;z[d+20>>2]=g;z[d+16>>2]=H}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;g=z[d+280>>2];m=z[d+272>>2];l=z[d+276>>2];n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));y=C(C(1)/n);o=C(g*y);p=C(l*y);y=C(m*y);if(nR){continue}break}k=v[d+44>>2];if(!(n>2];aa=d+48|0;t[c+Y|0]=v[aa+B>>2];B=c|1;N=B<<2;t[B+L|0]=v[N+U>>2];t[B+Y|0]=v[N+aa>>2];c=c+2|0;a=a+2|0;if((M|0)!=(a|0)){continue}break}}if(!(x&1)){break p}a=c<<2;t[c+L|0]=v[a+(d- -64|0)>>2];t[c+Y|0]=v[a+(d+48|0)>>2]}v[d+312>>2]=v[d+296>>2];a=v[d+292>>2];v[d+304>>2]=v[d+288>>2];v[d+308>>2]=a;z[d+284>>2]=J;z[d+272>>2]=s;z[d+276>>2]=u;z[d+280>>2]=q;IV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,k);v[e+188>>2]=0;z[e+184>>2]=o;z[e+180>>2]=p;z[e+176>>2]=y;v[e+172>>2]=0;g=C(C(1)/r);l=C(q*g);z[e+168>>2]=l;m=C(u*g);z[e+164>>2]=m;g=C(s*g);z[e+160>>2]=g;n=z[d+16>>2];p=z[d+20>>2];q=z[d+24>>2];v[e+140>>2]=0;z[e+136>>2]=q-C(D*l);z[e+132>>2]=p-C(D*m);z[e+128>>2]=n-C(D*g);n=z[d>>2];p=z[d+4>>2];q=z[d+8>>2];z[e+192>>2]=r-G;v[e+156>>2]=0;z[e+152>>2]=q+C(I*l);z[e+148>>2]=p+C(I*m);z[e+144>>2]=n+C(I*g);a=2;if(r<=G){break e}a=4;break e}if(L){break f}a=5;break e}k=v[d+44>>2]}t[e+215|0]=k;a=5;if(!k){break e}c=0;if((k|0)!=1){M=k&-2;x=0;while(1){B=c<<2;U=d- -64|0;t[c+L|0]=v[B+U>>2];aa=d+48|0;t[c+Y|0]=v[aa+B>>2];B=c|1;N=B<<2;t[B+L|0]=v[N+U>>2];t[B+Y|0]=v[N+aa>>2];c=c+2|0;x=x+2|0;if((M|0)!=(x|0)){continue}break}}if(!(k&1)){break e}k=c<<2;t[c+L|0]=v[k+(d- -64|0)>>2];t[c+Y|0]=v[k+(d+48|0)>>2]}xa=d+320|0;q:{r:{if(a-5|0){break r}v[e+16>>2]=1065353216;a=v[e+28>>2];v[e+8>>2]=v[e+24>>2];v[e+12>>2]=a;a=v[e+20>>2];v[e>>2]=v[e+16>>2];v[e+4>>2]=a;if(J_(qa,j,e+220|0,e+216|0,w[e+215|0],0,e,e+128|0)-5>>>0<=1){break r}v[e+280>>2]=0;v[e+284>>2]=0;v[e+272>>2]=0;v[e+276>>2]=0;g=z[b+264>>2];l=z[b+256>>2];m=z[b+260>>2];v[e+268>>2]=0;n=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(m*m))))));z[e+264>>2]=n*C(-g);z[e+260>>2]=n*C(-m);z[e+256>>2]=n*C(-l);g=C(0);break q}a=v[e+140>>2];v[e+280>>2]=v[e+136>>2];v[e+284>>2]=a;a=v[e+132>>2];v[e+272>>2]=v[e+128>>2];v[e+276>>2]=a;a=v[e+164>>2];v[e+256>>2]=v[e+160>>2];v[e+260>>2]=a;a=v[e+172>>2];v[e+264>>2]=v[e+168>>2];v[e+268>>2]=a;g=z[e+192>>2]}z[b+240>>2]=g>2];v[b+224>>2]=v[e+272>>2];v[b+228>>2]=a;a=v[e+284>>2];v[b+232>>2]=v[e+280>>2];v[b+236>>2]=a;a=v[e+260>>2];v[b+208>>2]=v[e+256>>2];v[b+212>>2]=a;a=v[e+268>>2];v[b+216>>2]=v[e+264>>2];v[b+220>>2]=a}xa=e+288|0;if(f){pa=z[b+240>>2];g=z[b+232>>2];l=z[b+224>>2];m=z[b+228>>2];n=z[b+216>>2];p=z[b+208>>2];r=z[b+212>>2];q=C(C(Q*n)+C(C(V*p)+C(P*r)));o=C(-P);y=C(C(C(T*C(C(V*r)+C(p*o)))+C(ba*n))+C(Q*q));z[h+8>>2]=y+y;y=C(C(P*q)+C(C(ba*r)+C(T*C(C(Q*p)+C(n*oa)))));z[h+4>>2]=y+y;s=r;r=C(-Q);n=C(C(V*q)+C(C(ba*p)+C(T*C(C(P*n)+C(s*r)))));z[h>>2]=n+n;n=pa>C(0)?pa:C(0);p=C(C(Q*g)+C(C(V*l)+C(P*m)));q=C(C(C(T*C(C(V*m)+C(l*o)))+C(ba*g))+C(Q*p));z[i+8>>2]=C(wa*n)+C(ua+C(q+q));q=C(C(P*p)+C(C(ba*m)+C(T*C(C(Q*l)+C(g*oa)))));z[i+4>>2]=C(za*n)+C(ta+C(q+q));g=C(C(V*p)+C(C(ba*l)+C(T*C(C(P*g)+C(m*r)))));z[i>>2]=C(ya*n)+C(va+C(g+g))}xa=b+352|0;return C(pa)}function SF(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,z=0,A=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;p=xa+-64|0;xa=p;f=v[a+384>>2];i=v[a+20>>2]+31>>>5|0;e=v[a+388>>2];if(i>>>0>(e&2147483647)>>>0){if(!(!f|(e|0)<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,f)}v[a+388>>2]=i;e=v[37696];f=Ba[v[v[e+12>>2]+8>>2]](e+12|0,i<<2,24422,17999,461)|0;v[a+384>>2]=f;e=v[a+388>>2]}I9(f,0,e<<2);if(y[a+368>>2]<=1023){e=v[37696];f=Ba[v[v[e>>2]+20>>2]](e)|0?29399:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,8192,f,18841,219)|0;f=v[a+364>>2];a:{if(!f){break a}H9(e,f,v[a+360>>2]<<3);f=v[a+364>>2];if(!f){break a}i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,f)}v[a+368>>2]=1024;v[a+364>>2]=e}if(!(v[a+404>>2]&2147482624)){zw(a+396|0,1024)}if(!(v[a+416>>2]&2147482624)){zw(a+408|0,1024)}f=v[a+20>>2];if(f>>>0>(v[a+380>>2]&2147483647)>>>0){i=0;b:{if(!f){break b}g=f<<4;if(!g){break b}e=v[37696];i=e+12|0;i=(R=i,S=g,T=Ba[v[v[e>>2]+20>>2]](e)|0?41107:63804,U=16608,V=553,Q=v[v[i>>2]+8>>2],Ba[Q](R|0,S|0,T|0,U|0,V|0)|0)}l=v[a+372>>2];e=v[a+376>>2];if((e|0)>0){g=(e<<4)+i|0;e=i;while(1){h=v[l+4>>2];v[e>>2]=v[l>>2];v[e+4>>2]=h;h=v[l+12>>2];v[e+8>>2]=v[l+8>>2];v[e+12>>2]=h;l=l+16|0;e=e+16|0;if(g>>>0>e>>>0){continue}break}l=v[a+372>>2]}if(!(!l|v[a+380>>2]<0)){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,l)}v[a+380>>2]=f;v[a+372>>2]=i}e=v[a+340>>2];c:{if(!e){e=0;break c}j=v[a+88>>2];o=v[a+100>>2];i=v[a+204>>2];n=v[a+16>>2];m=v[a+448>>2];g=v[a+40>>2];A=v[a+336>>2];f=0;while(1){h=v[A+(f<<2)>>2];l=v[a+60>>2];k=(h>>>0)/(l>>>0)|0;q=v[g+(k<<2)>>2]+(h-B(k,l)<<4)|0;C=x[q+4>>1];if((C&10)==2){d:{if((C&33)!=1){break d}r=v[m>>2];k=h<<1;e=k|1;l=v[m+20>>2];D=(e>>>0)/(l>>>0)|0;e=v[v[r+(D<<2)>>2]+(e-B(l,D)<<2)>>2]>>>7|0;D=(k>>>0)/(l>>>0)|0;l=v[v[r+(D<<2)>>2]+(k-B(l,D)<<2)>>2]>>>7|0;k=(l|0)==33554431;e:{if(!(k|(e|0)==33554431)){k=i+(e<<2)|0;e=i+(l<<2)|0;l=v[(v[e>>2]==-1?k:e)>>2];break e}if(!k){e=n+B(l,24)|0;if(w[e+4|0]&4){break d}l=v[i+(l<<2)>>2];u[e+6>>1]=x[e+6>>1]-1;e=o+(l<<2)|0;v[e>>2]=v[e>>2]-1;break e}if((e|0)==33554431){break d}k=n+B(e,24)|0;if(w[k+4|0]&4){break d}l=v[i+(e<<2)>>2];u[k+6>>1]=x[k+6>>1]-1;e=o+(l<<2)|0;v[e>>2]=v[e>>2]-1}if((l|0)==-1){break d}k=v[a+60>>2];e=(h>>>0)/(k>>>0)|0;e=v[g+(e<<2)>>2]+(h-B(e,k)<<4)|0;r=v[e+12>>2];h=v[e+8>>2];f:{if((h|0)!=-1){D=(h>>>0)/(k>>>0)|0;h=(v[g+(D<<2)>>2]+(h-B(k,D)<<4)|0)+12|0;break f}h=((j+B(l,44)|0)+(v[e>>2]<<2)|0)+28|0}v[h>>2]=r;k=v[e+8>>2];h=v[e+12>>2];g:{if((h|0)!=-1){r=v[a+60>>2];D=(h>>>0)/(r>>>0)|0;v[(v[g+(D<<2)>>2]+(h-B(r,D)<<4)|0)+8>>2]=k;h=v[e>>2];break g}h=v[e>>2];v[((j+B(l,44)|0)+(h<<2)|0)+20>>2]=k}h=(j+B(l,44)|0)+(h<<2)|0;v[h+36>>2]=v[h+36>>2]-1;v[e+12>>2]=-1;v[e+8>>2]=-1}u[q+4>>1]=C&65534;e=v[a+340>>2]}f=f+1|0;if(f>>>0>>0){continue}break}}if(c){h=v[a+312>>2];e=h&2147483647;h:{if(!e){break h}f=v[a+308>>2];i=0;while(1){l=v[f+(i<<2)>>2];if(!l){i=i+1|0;if((e|0)!=(i|0)){continue}break h}break}D=a+408|0;J=a+396|0;N=a+240|0;O=a+100|0;P=a+88|0;while(1){h=v[a+312>>2];j=Qaa(l);f=j|i<<5;l=l-1&l;i:{if(l){break i}e=i+1|0;g=h&2147483647;e=e>>>0>g>>>0?e:g;k=v[a+308>>2];while(1){i=i+1|0;if(g>>>0<=i>>>0){l=0;i=e;break i}l=v[k+(i<<2)>>2];if(!l){continue}break}}if((f|0)==-1){break h}v[a+376>>2]=0;v[a+360>>2]=0;e=f&33554431;K=B(e,24);C=K+v[a+16>>2]|0;j:{if(w[C+4|0]&12|v[v[a+384>>2]+(e>>>3&4194300)>>2]>>>j&1){break j}A=e<<2;o=v[A+v[a+204>>2]>>2];H=B(o,44);E=v[H+v[a+88>>2]>>2];if((e|0)==(E>>>7|0)){break j}n=0;j=xa-32|0;xa=j;L=f<<7;h=L;z=h>>>7|0;G=z<<2;k:{if(y[G+v[a+192>>2]>>2]<=4294967167){f=1;e=h;k=xa-16|0;xa=k;F=E>>>7|0;s=a+372|0;g=v[a+376>>2];m=v[a+384>>2];while(1){l:{q=e>>>7|0;I=1<>>12<<2;if(I&v[M+m>>2]){r=v[v[a+204>>2]+(q<<2)>>2]!=-1;break l}r=(q|0)==(F|0);if(r){break l}m=v[a+376>>2];v[k+4>>2]=m;v[k>>2]=e;v[k+8>>2]=m-1;v[k+12>>2]=n;m:{if(m>>>0>=(v[a+380>>2]&2147483647)>>>0){QF(s,k);break m}e=v[a+372>>2]+(m<<4)|0;m=v[k+4>>2];v[e>>2]=v[k>>2];v[e+4>>2]=m;m=v[k+12>>2];v[e+8>>2]=v[k+8>>2];v[e+12>>2]=m;v[a+376>>2]=v[a+376>>2]+1}n=n+1|0;e=q<<2;v[e+v[a+204>>2]>>2]=-1;m=v[a+384>>2];q=M+m|0;v[q>>2]=v[q>>2]|I;e=v[e+v[a+192>>2]>>2];if(e>>>0<4294967168){continue}}break}n=v[a+376>>2];if(g>>>0>>0){q=v[a+204>>2];F=v[a+372>>2];e=g;while(1){v[q+(v[F+(e<<4)>>2]>>>5&134217724)>>2]=o;e=e+1|0;n=v[a+376>>2];if(e>>>0>>0){continue}break}}if(!r){if(g>>>0>>0){n=v[s>>2];e=g;while(1){q=v[n+(e<<4)>>2];s=(q>>>10&4194300)+m|0;F=v[s>>2];Q=s,V=Uaa(-2,q>>>7|0)&F,v[Q>>2]=V;e=e+1|0;if(e>>>0>2]){continue}break}}v[a+376>>2]=g}xa=k+16|0;if(r){break k}}v[G+v[a+204>>2]>>2]=-1;e=v[a+376>>2];v[j+24>>2]=33554431;v[j+28>>2]=0;v[j+20>>2]=e;v[j+16>>2]=h;q=a+372|0;n:{if(e>>>0>=(v[a+380>>2]&2147483647)>>>0){e=QF(q,j+16|0);break n}f=v[j+20>>2];e=v[a+372>>2]+(e<<4)|0;v[e>>2]=v[j+16>>2];v[e+4>>2]=f;f=v[j+28>>2];v[e+8>>2]=v[j+24>>2];v[e+12>>2]=f;e=v[a+376>>2];v[a+376>>2]=e+1;e=v[a+372>>2]+(e<<4)|0}f=v[a+384>>2]+(h>>>10&4194300)|0;v[f>>2]=v[f>>2]|1<>2]=v[v[a+180>>2]+(z<<2)>>2];v[j+8>>2]=e;r=a+360|0;RF(r,j+8|0);z=E>>>7|0;h=v[a+360>>2];while(1){m=h-1|0;v[a+360>>2]=m;h=v[a+364>>2];e=h+(m<<3)|0;s=v[e>>2];g=v[e+4>>2];n=v[h>>2];E=0;o:{if(m>>>0<2){e=0;break o}k=1;f=0;while(1){e=E+2|0;h=v[a+364>>2];e=(e>>>0>>0&y[(h+(e<<3)|0)+4>>2]>2])+k|0;k=(e<<3)+h|0;if(g>>>0>2]){e=f;break o}f=(f<<3)+h|0;h=v[k+4>>2];v[f>>2]=v[k>>2];v[f+4>>2]=h;f=e;E=e<<1;k=E|1;if(m>>>0>k>>>0){continue}break}h=v[a+364>>2]}e=(e<<3)+h|0;v[e>>2]=s;v[e+4>>2]=g;h=v[v[a+16>>2]+B(v[n>>2]>>>7|0,24)>>2];if((h|0)!=-1){while(1){g=v[a+84>>2];m=(h>>>0)/(g>>>0)|0;E=v[v[a+64>>2]+(m<<2)>>2];f=h^1;k=v[a+448>>2];s=v[k+20>>2];e=(f>>>0)/(s>>>0)|0;k=v[v[v[k>>2]+(e<<2)>>2]+(f-B(e,s)<<2)>>2];e=k>>>7|0;p:{if((e|0)==33554431|w[(v[a+16>>2]+B(e,24)|0)+4|0]&4){break p}if((e|0)==(z|0)){h=v[n+4>>2];e=0;while(1){f=1;g=v[a+372>>2]+(h<<4)|0;e=e+1|0;v[v[a+180>>2]+(v[g>>2]>>>5&134217724)>>2]=e;v[v[a+204>>2]+(v[g>>2]>>>5&134217724)>>2]=o;v[v[a+192>>2]+(v[g>>2]>>>5&134217724)>>2]=k;k=v[g>>2];h=v[g+8>>2];if((h|0)!=33554431){continue}break}break k}s=1<>>12<<2;if(s&v[G+v[a+384>>2]>>2]){if(v[v[a+204>>2]+(e<<2)>>2]==-1){break p}e=v[v[a+180>>2]+(e<<2)>>2];h=v[n+4>>2];while(1){f=1;g=v[a+372>>2]+(h<<4)|0;e=e+1|0;v[v[a+180>>2]+(v[g>>2]>>>5&134217724)>>2]=e;v[v[a+204>>2]+(v[g>>2]>>>5&134217724)>>2]=o;v[v[a+192>>2]+(v[g>>2]>>>5&134217724)>>2]=k;k=v[g>>2];h=v[g+8>>2];if((h|0)!=33554431){continue}break}break k}F=v[n+12>>2];f=v[a+376>>2];v[j+24>>2]=v[n+4>>2];v[j+20>>2]=f;v[j+16>>2]=k;v[j+28>>2]=F+1;q:{if(f>>>0>=(v[a+380>>2]&2147483647)>>>0){f=QF(q,j+16|0);break q}k=v[j+20>>2];f=v[a+372>>2]+(f<<4)|0;v[f>>2]=v[j+16>>2];v[f+4>>2]=k;k=v[j+28>>2];v[f+8>>2]=v[j+24>>2];v[f+12>>2]=k;f=v[a+376>>2];v[a+376>>2]=f+1;f=v[a+372>>2]+(f<<4)|0}e=e<<2;v[j+20>>2]=v[e+v[a+180>>2]>>2];v[j+16>>2]=f;RF(r,j+16|0);f=G+v[a+384>>2]|0;v[f>>2]=s|v[f>>2];v[e+v[a+204>>2]>>2]=-1}h=v[E+(h-B(g,m)<<3)>>2];if((h|0)!=-1){continue}break}}h=v[r>>2];if(h){continue}break}f=0}xa=j+32|0;if(f){h=v[a+376>>2];if(!h){break j}n=v[a+192>>2];j=v[a+180>>2];k=v[a+204>>2];g=v[a+372>>2];f=0;while(1){e=g+(f<<4)|0;m=v[e>>2]>>>7<<2;if(v[m+k>>2]==-1){v[j+m>>2]=v[j+(v[g+(v[e+8>>2]<<4)>>2]>>>5&134217724)>>2]+1;v[n+(v[e>>2]>>>5&134217724)>>2]=v[g+(v[e+8>>2]<<4)>>2];v[k+(v[e>>2]>>>5&134217724)>>2]=o;h=v[a+376>>2]}f=f+1|0;if(h>>>0>f>>>0){continue}break}break j}e=0;v[a+412>>2]=0;v[a+400>>2]=0;n=v[a+88>>2];v[p+56>>2]=0;v[p+60>>2]=0;h=0;k=0;if(v[a+376>>2]){h=n+H|0;q=h+4|0;j=0;while(1){f=v[a+16>>2];e=f+B(v[v[a+372>>2]+(j<<4)>>2]>>>7|0,24)|0;g=v[e+8>>2]>>>7|0;v[((g|0)==33554431?q:(B(g,24)+f|0)+12|0)>>2]=v[e+12>>2];g=v[e+12>>2]>>>7|0;if((g|0)!=33554431){v[(f+B(g,24)|0)+8>>2]=v[e+8>>2]}f=(p+56|0)+(w[e+5|0]<<2)|0;v[f>>2]=v[f>>2]+1;v[e+8>>2]=-128;v[e+12>>2]=-128;r=x[e+6>>1];f=v[e>>2];if((f|0)!=-1){e=v[a+40>>2];while(1){m=v[a+84>>2];E=(f>>>0)/(m>>>0)|0;z=v[v[a+64>>2]+(E<<2)>>2];g=f>>>1|0;v[p+8>>2]=g;E=z+(f-B(m,E)<<3)|0;m=v[a+60>>2];z=(g>>>0)/(m>>>0)|0;s=v[(z<<2)+e>>2];r:{s:{if(!(f&1)){break s}G=f&-2;F=v[a+448>>2];I=v[F+20>>2];f=(G>>>0)/(I>>>0)|0;f=v[v[v[F>>2]+(f<<2)>>2]+(G-B(f,I)<<2)>>2]>>>7|0;if((f|0)==33554431){break s}if(!(w[(v[a+16>>2]+B(f,24)|0)+4|0]&4)){break r}}f=B(v[s+(g-B(m,z)<<4)>>2],12)+a|0;m=f+396|0;z=v[f+400>>2];t:{if(z>>>0>=(v[f+404>>2]&2147483647)>>>0){on(m,p+8|0);e=v[a+40>>2];break t}v[v[m>>2]+(z<<2)>>2]=g;v[f+400>>2]=v[f+400>>2]+1}g=v[p+8>>2];f=v[a+60>>2];m=(g>>>0)/(f>>>0)|0;g=v[(m<<2)+e>>2]+(g-B(f,m)<<4)|0;z=v[g+12>>2];m=v[g+8>>2];u:{if((m|0)!=-1){s=(m>>>0)/(f>>>0)|0;f=(v[(s<<2)+e>>2]+(m-B(f,s)<<4)|0)+12|0;break u}f=(h+(v[g>>2]<<2)|0)+28|0}v[f>>2]=z;m=v[g+8>>2];f=v[g+12>>2];v:{if((f|0)!=-1){z=v[a+60>>2];s=(f>>>0)/(z>>>0)|0;v[(v[(s<<2)+e>>2]+(f-B(s,z)<<4)|0)+8>>2]=m;f=v[g>>2];break v}f=v[g>>2];v[(h+(f<<2)|0)+20>>2]=m}f=h+(f<<2)|0;v[f+36>>2]=v[f+36>>2]-1;v[g+12>>2]=-1;v[g+8>>2]=-1}f=v[E>>2];if((f|0)!=-1){continue}break}}k=k+r|0;j=j+1|0;if(j>>>0>2]){continue}break}h=v[p+56>>2];e=v[p+60>>2]}f=v[a+100>>2]+(o<<2)|0;v[f>>2]=v[f>>2]-k;f=n+H|0;v[f+8>>2]=v[f+8>>2]-h;v[f+12>>2]=v[f+12>>2]-e;e=v[a+4>>2];w:{if(e){f=e-1|0;e=v[v[a>>2]+(f<<2)>>2];v[a+4>>2]=f;f=e+1|0;break w}e=v[a+12>>2];f=e+1|0;v[a+12>>2]=f}v[p+52>>2]=e;e=v[a+92>>2];v[p+8>>2]=-128;v[p+12>>2]=-128;v[p+40>>2]=-1;v[p+32>>2]=-1;v[p+36>>2]=-1;v[p+24>>2]=-1;v[p+28>>2]=-1;v[p+16>>2]=0;v[p+20>>2]=0;v[p+44>>2]=0;v[p+48>>2]=0;e=e>>>0>>0?f:e;f=p+8|0;vF(P,e,f);e=v[a+104>>2];g=v[p+52>>2];v[p+8>>2]=0;g=g+1|0;bz(O,e>>>0>>0?g:e,f);f=v[p+52>>2];g=v[a+88>>2]+B(f,44)|0;e=v[a+216>>2];x:{if(!(v[e+(o>>>3&536870908)>>2]>>>o&1)){h=f+32>>>5|0;if(h>>>0>(v[a+220>>2]&2147483647)>>>0){e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,h<<2,24422,17999,438)|0;j=v[a+216>>2];y:{if(!j){break y}H9(e,j,v[a+220>>2]<<2);if(v[a+220>>2]<0){break y}j=v[a+216>>2];if(!j){break y}o=v[37696];Ba[v[v[o+12>>2]+12>>2]](o+12|0,j)}j=v[a+220>>2];I9((j<<2)+e|0,0,h-j<<2);v[a+220>>2]=h;v[a+216>>2]=e}e=(f>>>3&536870908)+e|0;h=v[e>>2];Q=e,V=Uaa(-2,f)&h,v[Q>>2]=V;break x}e=v[a+244>>2];v[g+16>>2]=e;z:{if(e>>>0>=(v[a+248>>2]&2147483647)>>>0){on(N,p+52|0);break z}v[v[a+240>>2]+(e<<2)>>2]=v[p+52>>2];v[a+244>>2]=v[a+244>>2]+1}h=v[p+52>>2];e=h+32>>>5|0;A:{if(e>>>0<=(v[a+220>>2]&2147483647)>>>0){f=v[a+216>>2];break A}f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e<<2,24422,17999,438)|0;j=v[a+216>>2];B:{if(!j){break B}H9(f,j,v[a+220>>2]<<2);if(v[a+220>>2]<0){break B}j=v[a+216>>2];if(!j){break B}o=v[37696];Ba[v[v[o+12>>2]+12>>2]](o+12|0,j)}j=v[a+220>>2];I9((j<<2)+f|0,0,e-j<<2);v[a+220>>2]=e;v[a+216>>2]=f}e=(h>>>3&536870908)+f|0;v[e>>2]=v[e>>2]|1<>2]=L;n=v[a+180>>2];v[n+A>>2]=0;m=v[a+204>>2];v[m+A>>2]=v[p+52>>2];f=v[a+16>>2];v[(f+K|0)+12>>2]=-128;q=v[a+192>>2];v[A+q>>2]=-128;v[p+56>>2]=0;v[p+60>>2]=0;e=1;v[(p+56|0)+(w[C+5|0]<<2)>>2]=1;h=v[a+372>>2];if(y[a+376>>2]>1){while(1){j=h+(e<<4)|0;o=v[j>>2];A=o>>>7|0;r=f+B(A,24)|0;H=v[j-16>>2];v[r+12>>2]=H;v[(f+B(H>>>7|0,24)|0)+8>>2]=o;o=(p+56|0)+(w[r+5|0]<<2)|0;v[o>>2]=v[o>>2]+1;o=A<<2;v[o+m>>2]=v[p+52>>2];v[n+o>>2]=v[j+12>>2];v[o+q>>2]=v[h+(v[j+8>>2]<<4)>>2];e=e+1|0;if(e>>>0>2]){continue}break}}e=v[p+56>>2];v[g+8>>2]=e;j=v[p+60>>2];v[g+12>>2]=j;h=v[(h+(v[a+376>>2]<<4)|0)-16>>2];v[(f+B(h>>>7|0,24)|0)+8>>2]=-128;v[g+4>>2]=h;v[v[a+100>>2]+(v[p+52>>2]<<2)>>2]=k;v[g+12>>2]=j;v[g+8>>2]=e;h=v[a+400>>2];if(h){v[p+8>>2]=-1;C:{if(h>>>0>=(v[a+404>>2]&2147483647)>>>0){on(J,p+8|0);e=v[J>>2];break C}e=v[a+396>>2];v[e+(h<<2)>>2]=-1;v[a+400>>2]=v[a+400>>2]+1}k=v[a+40>>2];f=v[e>>2];j=v[a+60>>2];o=(f>>>0)/(j>>>0)|0;v[(v[k+(o<<2)>>2]+(f-B(j,o)<<4)|0)+8>>2]=v[e+4>>2];f=1;if(h>>>0>1){while(1){o=(f<<2)+e|0;n=v[o>>2];m=(n>>>0)/(j>>>0)|0;n=v[k+(m<<2)>>2]+(n-B(j,m)<<4)|0;f=f+1|0;v[n+8>>2]=v[(f<<2)+e>>2];v[n+12>>2]=v[o-4>>2];if((f|0)!=(h|0)){continue}break}}v[g+20>>2]=v[e>>2];e=v[((h<<2)+e|0)-4>>2];v[g+36>>2]=h;v[g+28>>2]=e}h=v[a+412>>2];if(!h){break j}v[p+8>>2]=-1;D:{if(h>>>0>=(v[a+416>>2]&2147483647)>>>0){on(D,p+8|0);e=v[D>>2];break D}e=v[a+408>>2];v[e+(h<<2)>>2]=-1;v[a+412>>2]=v[a+412>>2]+1}k=v[a+40>>2];f=v[e>>2];j=v[a+60>>2];o=(f>>>0)/(j>>>0)|0;v[(v[k+(o<<2)>>2]+(f-B(j,o)<<4)|0)+8>>2]=v[e+4>>2];f=1;if(h>>>0>=2){while(1){o=(f<<2)+e|0;n=v[o>>2];m=(n>>>0)/(j>>>0)|0;n=v[k+(m<<2)>>2]+(n-B(j,m)<<4)|0;f=f+1|0;v[n+8>>2]=v[(f<<2)+e>>2];v[n+12>>2]=v[o-4>>2];if((f|0)!=(h|0)){continue}break}}v[g+24>>2]=v[e>>2];e=v[((h<<2)+e|0)-4>>2];v[g+40>>2]=h;v[g+32>>2]=e}t[C+4|0]=w[C+4|0]&239;if(l){continue}break}h=v[a+312>>2]}I9(v[a+308>>2],0,h<<2);e=v[a+340>>2]}if(e){h=0;while(1){f=v[v[a+336>>2]+(h<<2)>>2];i=v[a+60>>2];g=(f>>>0)/(i>>>0)|0;i=v[v[a+40>>2]+(g<<2)>>2]+(f-B(g,i)<<4)|0;l=x[i+4>>1];if(l&2){e=v[a+444>>2];E:{if(!e){v[p+8>>2]=0;break E}k=f<<2;j=v[k+v[e>>2]>>2];v[p+8>>2]=j;if(!j){break E}e=v[a+452>>2];g=v[e+4>>2];F:{if(g>>>0>=(v[e+8>>2]&2147483647)>>>0){iG(e,p+8|0);l=x[i+4>>1];break F}v[v[e>>2]+(g<<2)>>2]=j;v[e+4>>2]=g+1}v[k+v[v[a+444>>2]>>2]>>2]=0}if(l&4){LF(a,f);e=(v[i>>2]<<2)+a|0;v[e+172>>2]=v[e+172>>2]-1}v[i+8>>2]=-1;v[i+12>>2]=-1;u[i+4>>1]=16;v[i>>2]=0;i=f+32>>>5|0;G:{if(i>>>0<=(v[a+232>>2]&2147483647)>>>0){e=v[a+228>>2];break G}e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,i<<2,24422,17999,438)|0;g=v[a+228>>2];H:{if(!g){break H}H9(e,g,v[a+232>>2]<<2);if(v[a+232>>2]<0){break H}g=v[a+228>>2];if(!g){break H}l=v[37696];Ba[v[v[l+12>>2]+12>>2]](l+12|0,g)}g=v[a+232>>2];I9((g<<2)+e|0,0,i-g<<2);v[a+232>>2]=i;v[a+228>>2]=e}e=(f>>>3&536870908)+e|0;i=v[e>>2];Q=e,V=Uaa(-2,f)&i,v[Q>>2]=V;e=v[a+340>>2]}h=h+1|0;if(h>>>0>>0){continue}break}}v[a+340>>2]=0;if(v[b+4>>2]){k=a+140|0;h=0;while(1){g=v[a+16>>2];o=v[v[b>>2]+(h<<2)>>2];e=o>>>7|0;l=B(e,24);f=g+l|0;j=e<<2;n=j+v[a+204>>2]|0;i=v[n>>2];I:{if((i|0)==-1){break I}m=v[f+8>>2];e=v[a+88>>2]+B(i,44)|0;v[(m>>>0<4294967168?(g+B(m>>>7|0,24)|0)+12|0:e+4|0)>>2]=v[f+12>>2];m=v[f+12>>2];v[(m>>>0<4294967168?(g+B(m>>>7|0,24)|0)+8|0:e)>>2]=v[f+8>>2];g=(e+8|0)+(w[f+5|0]<<2)|0;v[g>>2]=v[g>>2]-1;v[f+8>>2]=-128;v[f+12>>2]=-128;v[n>>2]=-1;if(v[e+8>>2]!=(0-v[e+12>>2]|0)){break I}v[p+8>>2]=i;J:{if((i|0)==v[a+12>>2]){v[a+12>>2]=i-1;break J}g=v[a+4>>2];if(g>>>0>=(v[a+8>>2]&2147483647)>>>0){on(a,p+8|0);break J}v[v[a>>2]+(g<<2)>>2]=i;v[a+4>>2]=v[a+4>>2]+1}g=v[e+16>>2];if((g|0)!=-1){n=v[a+240>>2];m=v[(n+(v[a+244>>2]<<2)|0)-4>>2];v[(v[a+88>>2]+B(m,44)|0)+16>>2]=g;v[n+(v[e+16>>2]<<2)>>2]=m;v[a+244>>2]=v[a+244>>2]-1;v[e+16>>2]=-1;g=v[a+100>>2]+(i<<2)|0;v[g>>2]=v[g>>2]-x[f+6>>1]}g=v[a+216>>2]+(i>>>3&536870908)|0;n=v[g>>2];Q=g,V=Uaa(-2,i)&n,v[Q>>2]=V;v[e+4>>2]=-128;v[e>>2]=-128;v[e+16>>2]=-1}e=j;j=v[a+28>>2];g=e+j|0;e=v[g>>2];K:{L:{if(w[f+4|0]&4){if(v[(l+v[a+16>>2]|0)+16>>2]|(e|0)==33554431){break K}i=v[a+136>>2];l=k;break L}if((e|0)==33554431){break K}l=w[(l+v[a+16>>2]|0)+5|0];n=B(l,12)+a|0;i=n;l=(l<<2)+a|0;m=v[l+252>>2];M:{if(m>>>0<=e>>>0){i=v[i+112>>2];break M}i=v[i+112>>2];m=v[(i+(m<<2)|0)-4>>2];C=j+(m>>>5&134217724)|0;v[g>>2]=v[C>>2];v[C>>2]=e;v[(e<<2)+i>>2]=m;v[(v[g>>2]<<2)+i>>2]=o;v[l+252>>2]=v[l+252>>2]-1;e=v[g>>2]}l=n+116|0}o=v[((v[l>>2]<<2)+i|0)-4>>2];v[j+(o>>>5&134217724)>>2]=e;v[(v[g>>2]<<2)+i>>2]=o;v[l>>2]=v[l>>2]-1;v[g>>2]=33554431}v[f>>2]=-1;t[f+4|0]=8;v[f+16>>2]=0;v[f+20>>2]=0;u[f+6>>1]=0;h=h+1|0;if(h>>>0>2]){continue}break}}N:{if(!c){break N}O:{if(!v[a+244>>2]){e=0;break O}b=v[a+216>>2];c=v[a+240>>2];f=0;while(1){e=v[c+(f<<2)>>2];i=b+(e>>>3&536870908)|0;g=v[i>>2];Q=i,V=Uaa(-2,e)&g,v[Q>>2]=V;e=v[a+244>>2];f=f+1|0;if(e>>>0>f>>>0){continue}break}}b=v[a+140>>2];if(b){i=v[a+448>>2];h=v[a+64>>2];g=v[a+28>>2];l=v[a+16>>2];c=v[a+136>>2];while(1){b=b-1|0;f=v[c+(b<<2)>>2]>>>7|0;e=l+B(f,24)|0;j=w[e+4|0];P:{if(!(j&1)){f=v[e>>2];if((f|0)==-1){break P}j=v[a+216>>2];k=v[a+204>>2];o=v[i>>2];while(1){e=v[a+84>>2];n=(f>>>0)/(e>>>0)|0;n=v[h+(n<<2)>>2]+(f-B(e,n)<<3)|0;e=f^1;f=v[i+20>>2];m=(e>>>0)/(f>>>0)|0;e=v[v[o+(m<<2)>>2]+(e-B(f,m)<<2)>>2]>>>7|0;Q:{if((e|0)==33554431){break Q}e=v[k+(e<<2)>>2];if((e|0)==-1){break Q}f=j+(e>>>3&536870908)|0;v[f>>2]=v[f>>2]|1<>2];if((f|0)!=-1){continue}break}break P}if(!d){break P}t[e+4|0]=j&253;if(v[e+16>>2]){break P}e=g+(f<<2)|0;f=v[e>>2];if((f|0)==33554431){break P}j=v[(c+(v[a+140>>2]<<2)|0)-4>>2];v[g+(j>>>5&134217724)>>2]=f;v[c+(v[e>>2]<<2)>>2]=j;v[a+140>>2]=v[a+140>>2]-1;v[e>>2]=33554431}if(b){continue}break}e=v[a+244>>2]}if(!e){break N}while(1){d=v[a+88>>2];e=e-1|0;b=v[v[a+240>>2]+(e<<2)>>2];f=v[a+216>>2]+(b>>>3&536870908)|0;c=v[f>>2];i=f;f=1<>2]=f|c;R:{if(c&f){break R}f=v[d+B(b,44)>>2]>>>7|0;if((f|0)!=33554431){c=v[a+16>>2];while(1){d=c+B(f,24)|0;if(!(t[d+4|0]&1)){break R}f=v[d+8>>2]>>>7|0;if((f|0)!=33554431){continue}break}}f=xa-16|0;xa=f;d=v[a+88>>2];n=B(b,44);c=v[d+n>>2];v[f+8>>2]=c;i=c>>>7|0;if((i|0)!=33554431){while(1){m=v[a+16>>2]+B(i,24)|0;d=B(w[m+5|0],12)+a|0;i=d+260|0;g=v[d+264>>2];S:{if(g>>>0>=(v[d+268>>2]&2147483647)>>>0){YF(i,f+8|0);break S}v[v[i>>2]+(g<<2)>>2]=c;v[d+264>>2]=v[d+264>>2]+1}g=xa-16|0;xa=g;d=v[a+16>>2];C=v[f+8>>2];c=C>>>7|0;j=d+B(c,24)|0;k=w[j+4|0];T:{if(!(k&2)){break T}U:{V:{if(k&4){if(v[(d+B(c,24)|0)+16>>2]){break U}h=v[a+28>>2];c=h+(c<<2)|0;i=v[c>>2];if((i|0)==33554431){break U}d=v[a+136>>2];l=a+140|0;break V}l=w[(d+B(c,24)|0)+5|0];d=B(l,12)+a|0;h=v[a+28>>2];c=h+(c<<2)|0;i=v[c>>2];o=(l<<2)+a|0;A=v[o+252>>2];W:{if(i>>>0>=A>>>0){d=v[d+112>>2];break W}d=v[d+112>>2];A=v[(d+(A<<2)|0)-4>>2];q=(A>>>5&134217724)+h|0;v[c>>2]=v[q>>2];v[q>>2]=i;v[(i<<2)+d>>2]=A;v[(v[c>>2]<<2)+d>>2]=C;v[o+252>>2]=v[o+252>>2]-1;i=v[c>>2]}l=(B(l,12)+a|0)+116|0}o=v[((v[l>>2]<<2)+d|0)-4>>2];v[h+(o>>>5&134217724)>>2]=i;v[(v[c>>2]<<2)+d>>2]=o;v[l>>2]=v[l>>2]-1;v[c>>2]=33554431}t[j+4|0]=k&221;c=v[j>>2];if((c|0)==-1){break T}while(1){d=v[a+84>>2];i=(c>>>0)/(d>>>0)|0;i=v[v[a+64>>2]+(i<<2)>>2]+(c-B(d,i)<<3)|0;h=c^1;l=v[a+448>>2];j=v[l+20>>2];d=(h>>>0)/(j>>>0)|0;d=v[v[v[l>>2]+(d<<2)>>2]+(h-B(d,j)<<2)>>2]>>>7|0;X:{if(w[(v[a+16>>2]+B(d,24)|0)+4|0]&2?(d|0)!=33554431:0){break X}c=c>>>1|0;v[g+12>>2]=c;d=v[a+60>>2];h=(c>>>0)/(d>>>0)|0;d=v[v[a+40>>2]+(h<<2)>>2]+(c-B(d,h)<<4)|0;h=x[d+4>>1];if(!(h&4)){break X}u[d+4>>1]=h&65531;h=(v[d>>2]<<2)+a|0;v[h+172>>2]=v[h+172>>2]-1;LF(a,c);c=B(v[d>>2],12)+a|0;d=c+420|0;h=v[c+424>>2];if(h>>>0>=(v[c+428>>2]&2147483647)>>>0){on(d,g+12|0);break X}v[v[d>>2]+(h<<2)>>2]=v[g+12>>2];v[c+424>>2]=v[c+424>>2]+1}c=v[i>>2];if((c|0)!=-1){continue}break}}xa=g+16|0;c=v[m+8>>2];v[f+8>>2]=c;i=c>>>7|0;if((i|0)!=33554431){continue}break}d=v[a+88>>2]}i=v[a+240>>2];g=v[(i+(v[a+244>>2]<<2)|0)-4>>2];c=d+n|0;v[(B(g,44)+d|0)+16>>2]=v[c+16>>2];v[i+(v[c+16>>2]<<2)>>2]=g;v[a+244>>2]=v[a+244>>2]-1;v[c+16>>2]=-1;c=v[a+216>>2]+(b>>>3&536870908)|0;d=v[c>>2];Q=c,V=Uaa(-2,b)&d,v[Q>>2]=V;xa=f+16|0}if(e){continue}break}}b=v[a+60>>2];c=v[a+40>>2];d=v[a+288>>2];if(d){f=v[a+284>>2];e=0;while(1){i=v[f+(e<<2)>>2];g=(i>>>0)/(b>>>0)|0;i=v[c+(g<<2)>>2]+(i-B(b,g)<<4)|0;u[i+4>>1]=x[i+4>>1]&65527;e=e+1|0;if((d|0)!=(e|0)){continue}break}}e=0;v[a+288>>2]=0;d=v[a+300>>2];if(d){f=v[a+296>>2];while(1){i=v[f+(e<<2)>>2];g=(i>>>0)/(b>>>0)|0;i=v[c+(g<<2)>>2]+(i-B(b,g)<<4)|0;u[i+4>>1]=x[i+4>>1]&65527;e=e+1|0;if((d|0)!=(e|0)){continue}break}}v[a+300>>2]=0;xa=p- -64|0}function QY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=0,B=0,D=C(0),E=C(0),G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=0,U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=0,ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=0,ta=C(0),ua=C(0),va=C(0),wa=0,ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=0,Ja=0;k=xa-448|0;xa=k;b=v[b>>2];a=v[a>>2];v[k+104>>2]=0;v[k+108>>2]=0;v[k+96>>2]=0;v[k+100>>2]=0;v[k+124>>2]=4;j=z[a+4>>2];l=z[a+8>>2];v[k+172>>2]=0;v[k+156>>2]=0;m=C(l*C(0));z[k+152>>2]=m;z[k+148>>2]=m;m=C(-m);z[k+168>>2]=m;z[k+164>>2]=m;z[k+176>>2]=j;z[k+144>>2]=l;t[k+128|0]=1;z[k+120>>2]=j;z[k+116>>2]=j;z[k+112>>2]=j;z[k+160>>2]=-l;v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;v[k+28>>2]=4;j=z[b+4>>2];l=z[b+8>>2];v[k+76>>2]=0;v[k+60>>2]=0;m=C(l*C(0));z[k+56>>2]=m;z[k+52>>2]=m;m=C(-m);z[k+72>>2]=m;z[k+68>>2]=m;z[k+80>>2]=j;z[k+48>>2]=l;t[k+32|0]=1;z[k+24>>2]=j;z[k+20>>2]=j;z[k+16>>2]=j;z[k+64>>2]=-l;V=z[b+4>>2];I=z[a+4>>2];v[k+440>>2]=0;v[k+444>>2]=0;v[k+432>>2]=0;v[k+436>>2]=0;pa=z[f+20>>2];u=z[e+20>>2];qa=z[f+24>>2];r=z[e+24>>2];j=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];p=z[c+12>>2];R=z[d+12>>2];W=z[d>>2];ra=z[f+16>>2];E=z[e+16>>2];M=z[d+4>>2];N=z[d+8>>2];v[k+428>>2]=0;v[k+412>>2]=0;v[k+396>>2]=0;ja=C(-W);o=C(E-ra);q=C(u-pa);n=C(r-qa);s=C(C(C(ja*o)-C(q*M))-C(N*n));$=C(C(R*R)+C(-.5));y=C(C(C(R*C(C(M*o)-C(W*q)))+C($*n))-C(N*s));z[k+424>>2]=y+y;y=C(C(C($*q)+C(R*C(C(W*n)-C(N*o))))-C(M*s));z[k+420>>2]=y+y;f=k+416|0;o=C(C(C($*o)+C(R*C(C(N*q)-C(M*n))))-C(W*s));z[f>>2]=o+o;q=C(C(C(m*N)-C(M*j))+C(C(l*R)-C(p*W)));o=C(q+q);n=C(C(C(j*W)-C(N*l))+C(C(m*R)-C(p*M)));s=C(n+n);y=C(C(1)-C(q*o));D=C(n*s);z[k+408>>2]=y-D;q=C(C(C(l*M)-C(W*m))+C(C(j*R)-C(p*N)));X=C(q*s);j=C(C(p*R)-C(C(C(ja*l)-C(m*M))-C(N*j)));l=C(j*o);z[k+404>>2]=X-l;m=C(q*o);p=C(j*s);z[k+400>>2]=m+p;z[k+392>>2]=X+l;l=C(q+q);q=C(q*l);z[k+388>>2]=y-q;o=C(n*o);j=C(j*l);z[k+384>>2]=o-j;v[k+380>>2]=0;z[k+376>>2]=m-p;z[k+372>>2]=o+j;z[k+368>>2]=C(C(1)-D)-q;m=z[d+20>>2];p=z[c+20>>2];j=z[d+24>>2];l=z[c+24>>2];o=z[d+16>>2];q=z[c+16>>2];v[k+364>>2]=0;ta=C(l-r);j=C(C(j-qa)-ta);ua=C(q-E);l=C(C(o-ra)-ua);va=C(p-u);m=C(C(m-pa)-va);p=C(C(N*j)+C(C(W*l)+C(M*m)));o=C(C(C($*j)-C(R*C(C(W*m)-C(M*l))))+C(N*p));z[k+360>>2]=o+o;o=C(C(M*p)+C(C($*m)-C(R*C(C(N*l)-C(j*W)))));z[k+356>>2]=o+o;j=C(C(W*p)+C(C($*l)-C(R*C(C(M*j)-C(m*N)))));z[k+352>>2]=j+j;v[k+288>>2]=0;v[k+208>>2]=142372;v[k+216>>2]=k+368;v[k+212>>2]=k+96;a=v[k+388>>2];v[k+240>>2]=v[k+384>>2];v[k+244>>2]=a;a=v[k+396>>2];v[k+248>>2]=v[k+392>>2];v[k+252>>2]=a;a=v[k+380>>2];v[k+232>>2]=v[k+376>>2];v[k+236>>2]=a;a=v[k+404>>2];v[k+256>>2]=v[k+400>>2];v[k+260>>2]=a;a=v[k+412>>2];v[k+264>>2]=v[k+408>>2];v[k+268>>2]=a;a=v[f+4>>2];v[k+272>>2]=v[f>>2];v[k+276>>2]=a;a=v[k+428>>2];v[k+280>>2]=v[k+424>>2];v[k+284>>2]=a;a=v[k+372>>2];v[k+224>>2]=v[k+368>>2];v[k+228>>2]=a;j=z[k+228>>2];z[k+228>>2]=z[k+240>>2];l=z[k+248>>2];m=z[k+232>>2];z[k+232>>2]=z[k+256>>2];z[k+248>>2]=z[k+260>>2];z[k+256>>2]=m;z[k+260>>2]=l;z[k+240>>2]=j;v[k+200>>2]=141148;v[k+204>>2]=k;ka=C(34028234663852886e22);d=xa-288|0;xa=d;X=C(V+C(I+g));a=xa-272|0;xa=a;v[a+264>>2]=0;v[a+268>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;S=z[k+440>>2];H=z[k+436>>2];O=z[k+432>>2];J=z[k+360>>2];P=z[k+356>>2];ca=z[k+352>>2];v[a+240>>2]=1;la=k+208|0;b=la;c=v[b+8>>2];aa=z[c+52>>2];Y=z[c+36>>2];Z=z[c+20>>2];sa=k+200|0;Q=sa;e=v[Q+4>>2];m=z[e+56>>2];p=z[e+52>>2];o=z[e+72>>2];q=z[e+68>>2];D=z[c+56>>2];L=z[c+40>>2];ba=z[c+24>>2];x=v[b+4>>2];n=z[x+56>>2];s=z[x+52>>2];u=z[x+72>>2];ha=z[b+56>>2];da=z[b+24>>2];ea=z[b+40>>2];fa=z[b+48>>2];ma=z[b+32>>2];r=z[x+68>>2];na=z[b+52>>2];ya=z[b+20>>2];za=z[b+36>>2];Aa=z[c+48>>2];Ba=z[c+32>>2];Ca=z[c>>2];Da=z[c+16>>2];Ea=z[c+4>>2];E=z[e+48>>2];V=z[e+64>>2];Fa=z[c+8>>2];I=z[x+48>>2];y=z[x+64>>2];Ga=z[b+16>>2];g=z[f+8>>2];j=z[f>>2];l=z[f+4>>2];v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+224>>2]=0;v[a+228>>2]=0;v[a+232>>2]=0;e=0;v[a+236>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;ia=D;Ha=L;ga=n;c=C(C(g*g)+C(C(j*j)+C(l*l)))>C(1.1920928955078125e-7);j=c?j:C(1);D=j;n=c?g:C(0);g=c?l:C(0);j=C(C(1)/C(K(C(C(n*n)+C(C(j*j)+C(g*g))))));l=C(D*j);D=C(-l);g=C(g*j);j=C(n*j);n=C(C(C(da*D)-C(ea*g))-C(ha*j));L=C(C(C(Ga*D)-C(ma*g))-C(fa*j));D=C(C(C(ya*D)-C(za*g))-C(na*j));c=C(C(ga*n)+C(C(I*L)+C(s*D)))>C(C(u*n)+C(C(y*L)+C(D*r)));n=c?ga:u;I=c?I:y;s=c?s:r;y=C(ia+C(C(Ha*n)+C(C(Fa*I)+C(ba*s))));c=C(C(m*j)+C(C(E*l)+C(g*p)))>C(C(o*j)+C(C(V*l)+C(g*q)));g=c?m:o;u=C(y-g);z[a+184>>2]=u;j=C(aa+C(C(Y*n)+C(C(Ea*I)+C(s*Z))));l=c?p:q;r=C(j-l);z[a+180>>2]=r;m=C(Aa+C(C(Ba*n)+C(C(Ca*I)+C(s*Da))));p=c?E:V;n=C(m-p);z[a+176>>2]=n;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+160>>2]=0;v[a+164>>2]=0;v[a+168>>2]=0;v[a+172>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;z[a+120>>2]=y;z[a+116>>2]=j;z[a+112>>2]=m;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;z[a+56>>2]=g;z[a+52>>2]=l;z[a+48>>2]=p;g=C(-u);j=C(-r);l=C(-n);E=C(C(u*u)+C(C(n*n)+C(r*r)));a:{b:{if(!(E>C(0))){m=l;o=j;q=g;I=C(0);s=n;p=r;V=u;break b}aa=C(X+C(0));ha=C(aa*aa);y=C(C(ca*C(0))+O);D=C(C(P*C(0))+H);X=C(C(J*C(0))+S);I=C(0);q=g;o=j;m=l;while(1){s=n;p=r;V=u;r=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));n=C(l*r);c=v[b+4>>2];S=z[c+56>>2];u=C(g*r);r=C(j*r);H=C(C(z[b+56>>2]*u)+C(C(n*z[b+24>>2])+C(r*z[b+40>>2])));O=z[c+48>>2];J=C(C(z[b+48>>2]*u)+C(C(n*z[b+16>>2])+C(r*z[b+32>>2])));P=C(C(z[b+52>>2]*u)+C(C(n*z[b+20>>2])+C(r*z[b+36>>2])));ca=z[c+52>>2];L=C(C(S*H)+C(C(O*J)+C(P*ca)));Y=z[c+72>>2];ga=C(Y*H);H=z[c+64>>2];ia=C(H*J);J=z[c+68>>2];e=L>C(ga+C(ia+C(P*J)));c=v[Q+4>>2];Z=z[c+48>>2];P=C(-n);L=z[c+52>>2];ba=z[c+56>>2];da=z[c+64>>2];ea=z[c+68>>2];fa=z[c+72>>2];x=C(C(C(Z*P)-C(L*r))-C(ba*u))>C(C(C(da*P)-C(ea*r))-C(fa*u));c=v[b+8>>2];S=e?S:Y;H=e?O:H;P=e?ca:J;ca=C(z[c+48>>2]+C(C(z[c+32>>2]*S)+C(C(z[c>>2]*H)+C(P*z[c+16>>2]))));da=x?Z:da;Y=C(y+da);O=C(ca-Y);Z=C(z[c+52>>2]+C(C(z[c+36>>2]*S)+C(C(z[c+4>>2]*H)+C(P*z[c+20>>2]))));ea=x?L:ea;L=C(D+ea);J=C(Z-L);P=C(z[c+56>>2]+C(C(z[c+40>>2]*S)+C(C(z[c+8>>2]*H)+C(P*z[c+24>>2]))));S=x?ba:fa;ba=C(X+S);H=C(P-ba);fa=C(C(C(C(n*C(-O))-C(r*J))-C(u*H))-aa);if(fa>C(0)){e=0;ma=z[k+360>>2];ia=C(u*ma);u=z[k+352>>2];ga=r;r=z[k+356>>2];na=C(ia+C(C(n*u)+C(ga*r)));if(na>=C(0)){break a}n=I;I=C(n-C(fa/na));if(I>n){if(I>C(1)){break a}q=z[k+440>>2];o=z[k+436>>2];m=z[k+432>>2];v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;n=C(m+C(u*I));m=C(n-y);E=C(m+z[a+80>>2]);z[a+80>>2]=E;u=C(o+C(r*I));o=C(u-D);y=C(o+z[a+84>>2]);z[a+84>>2]=y;r=C(q+C(ma*I));q=C(r-X);D=C(q+z[a+88>>2]);z[a+88>>2]=D;X=C(m+z[a+64>>2]);z[a+64>>2]=X;H=C(o+z[a+68>>2]);z[a+68>>2]=H;O=C(q+z[a+72>>2]);z[a+72>>2]=O;m=C(m+z[a+48>>2]);z[a+48>>2]=m;o=C(o+z[a+52>>2]);z[a+52>>2]=o;q=C(q+z[a+56>>2]);z[a+56>>2]=q;J=z[a+112>>2];Y=z[a+116>>2];L=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=L-q;z[a+180>>2]=Y-o;z[a+176>>2]=J-m;m=z[a+128>>2];o=z[a+132>>2];q=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=q-O;z[a+196>>2]=o-H;z[a+192>>2]=m-X;m=z[a+144>>2];o=z[a+148>>2];q=z[a+152>>2];v[a+220>>2]=0;z[a+216>>2]=q-D;z[a+212>>2]=o-y;z[a+208>>2]=m-E;ba=C(S+r);H=C(P-ba);L=C(ea+u);J=C(Z-L);Y=C(da+n);O=C(ca-Y);m=l;o=j;q=g;y=n;D=u;X=r;g=C(34028234663852886e22)}else{g=E}}else{g=E}S=g;e=v[a+240>>2];x=e<<4;c=x+(a+112|0)|0;v[c+12>>2]=0;z[c+8>>2]=P;z[c+4>>2]=Z;z[c>>2]=ca;c=x+(a+48|0)|0;v[c+12>>2]=0;z[c+8>>2]=ba;z[c+4>>2]=L;z[c>>2]=Y;c=x+(a+176|0)|0;v[c+12>>2]=0;z[c+8>>2]=H;z[c+4>>2]=J;z[c>>2]=O;v[a+240>>2]=e+1;c:{d:{switch(e-1|0){case 0:n=z[a+184>>2];g=C(z[a+200>>2]-n);u=z[a+176>>2];j=C(z[a+192>>2]-u);r=z[a+180>>2];l=C(z[a+196>>2]-r);E=C(C(g*g)+C(C(j*j)+C(l*l)));if(E<=C(1.1920928955078125e-7)){v[a+240>>2]=1;c=v[a+180>>2];v[a+32>>2]=v[a+176>>2];v[a+36>>2]=c;c=v[a+188>>2];v[a+40>>2]=v[a+184>>2];v[a+44>>2]=c;break c}L=g;g=C(F(C(C(C(C(C(-u)*j)-C(l*r))-C(n*g))/E),C(1)));g=g>C(0)?g:C(0);z[a+40>>2]=n+C(L*g);z[a+36>>2]=r+C(l*g);z[a+32>>2]=u+C(j*g);break c;case 1:JV(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;case 2:N_(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;default:break d}}z[a+40>>2]=H;z[a+36>>2]=J;z[a+32>>2]=O}u=z[a+40>>2];g=C(-u);r=z[a+36>>2];j=C(-r);n=z[a+32>>2];l=C(-n);E=C(C(u*u)+C(C(n*n)+C(r*r)));if(ha>2]+32|0];H=C(0);y=C(0);x=!(E>C(0))|e;g=x?q:g;l=x?m:l;j=x?o:j;m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!(m<=C(1.1920928955078125e-7))){o=g;g=C(C(1)/m);oa=C(o*g);H=C(j*g);y=C(l*g)}v[d+268>>2]=0;z[d+264>>2]=-oa;z[d+260>>2]=-H;z[d+256>>2]=-y;z[d+240>>2]=I;v[d+252>>2]=v[a+252>>2];x=v[a+248>>2];v[d+244>>2]=v[a+244>>2];v[d+248>>2]=x;v[a+44>>2]=0;z[a+40>>2]=e?V:u;z[a+36>>2]=e?p:r;z[a+32>>2]=e?s:n;e=v[a+268>>2];Q=v[a+264>>2];v[a+24>>2]=Q;v[a+28>>2]=e;x=v[a+260>>2];A=v[a+256>>2];v[a+16>>2]=A;v[a+20>>2]=x;v[a+8>>2]=Q;v[a+12>>2]=e;v[a>>2]=A;v[a+4>>2]=x;IV(a+176|0,a+112|0,a+48|0,a+32|0,a+16|0,a,v[a+240>>2]);g=z[v[b+4>>2]+16>>2];j=z[a+16>>2];l=z[a+20>>2];m=z[a+24>>2];v[d+284>>2]=0;z[d+280>>2]=m+(c?C(oa*g):C(-0));z[d+276>>2]=l+(c?C(H*g):C(-0));z[d+272>>2]=j+(c?C(y*g):C(-0));e=1}xa=a+272|0;if(e){a=v[d+244>>2];v[k+336>>2]=v[d+240>>2];v[k+340>>2]=a;a=v[d+252>>2];v[k+344>>2]=v[d+248>>2];v[k+348>>2]=a;if(z[d+240>>2]==C(0)){b=v[la+4>>2];c=v[sa+4>>2];z[d+224>>2]=C(z[b+16>>2]+z[c+16>>2])*C(100);t[d+215|0]=0;v[d+168>>2]=0;v[d+172>>2]=0;v[d+160>>2]=0;v[d+164>>2]=0;v[d+152>>2]=0;v[d+156>>2]=0;v[d+144>>2]=0;v[d+148>>2]=0;v[d+136>>2]=0;v[d+140>>2]=0;v[d+128>>2]=0;v[d+132>>2]=0;v[d+192>>2]=0;a=v[la+8>>2];v[d+56>>2]=a;v[d+48>>2]=142372;v[d+52>>2]=b;b=v[a+12>>2];v[d+72>>2]=v[a+8>>2];v[d+76>>2]=b;b=v[a+20>>2];v[d+80>>2]=v[a+16>>2];v[d+84>>2]=b;b=v[a+28>>2];v[d+88>>2]=v[a+24>>2];v[d+92>>2]=b;b=v[a+36>>2];v[d+96>>2]=v[a+32>>2];v[d+100>>2]=b;b=v[a+44>>2];v[d+104>>2]=v[a+40>>2];v[d+108>>2]=b;b=v[a+52>>2];v[d+112>>2]=v[a+48>>2];v[d+116>>2]=b;b=v[a+60>>2];v[d+120>>2]=v[a+56>>2];v[d+124>>2]=b;b=v[a+4>>2];v[d+64>>2]=v[a>>2];v[d+68>>2]=b;g=z[d+68>>2];z[d+68>>2]=z[d+80>>2];j=z[d+88>>2];l=z[d+72>>2];z[d+72>>2]=z[d+96>>2];z[d+80>>2]=g;z[d+96>>2]=l;z[d+88>>2]=z[d+100>>2];z[d+100>>2]=j;v[d+40>>2]=141148;v[d+44>>2]=c;x=d+220|0;Q=d+216|0;c=xa-320|0;xa=c;a=v[d+44>>2];g=z[a+20>>2];b=v[d+52>>2];j=z[b+20>>2];q=z[d+224>>2];T=w[b+32|0];u=z[b+16>>2];_=w[a+32|0];r=z[a+16>>2];v[c+44>>2]=0;X=C((g>2];a=0;f=0;while(1){b=f<<2;B=w[f+x|0];v[b+(c- -64|0)>>2]=B;G=w[f+Q|0];v[b+(c+48|0)>>2]=G;b=(1-B<<4)+Ja|0;g=z[b+8>>2];j=z[b>>2];l=z[b+4>>2];b=(1-G<<4)+Ia|0;m=z[b>>2];p=z[b+4>>2];o=z[b+8>>2];n=z[b+12>>2];s=z[A+48>>2];E=z[A+32>>2];V=z[A>>2];I=z[A+16>>2];y=z[A+52>>2];D=z[A+36>>2];S=z[A+4>>2];H=z[A+20>>2];O=z[A+56>>2];J=z[A+40>>2];aa=z[A+8>>2];P=z[A+24>>2];b=a;U=a<<4;B=U+(c+144|0)|0;v[B+12>>2]=0;G=U+(c+80|0)|0;z[G+12>>2]=n;z[G+8>>2]=o;z[G+4>>2]=p;z[G>>2]=m;G=U+(c+208|0)|0;v[G+12>>2]=0;n=C(O+C(C(J*g)+C(C(aa*j)+C(l*P))));z[B+8>>2]=n;y=C(y+C(C(D*g)+C(C(S*j)+C(l*H))));z[B+4>>2]=y;g=C(s+C(C(E*g)+C(C(V*j)+C(l*I))));z[B>>2]=g;j=C(n-o);z[G+8>>2]=j;l=C(y-p);z[G+4>>2]=l;g=C(g-m);z[G>>2]=g;a=a+1|0;v[c+44>>2]=a;f=f+1|0;if((wa|0)!=(f|0)){continue}break}k:{l:{switch(b-1|0){case 0:m=z[c+216>>2];g=C(z[c+232>>2]-m);p=z[c+208>>2];j=C(z[c+224>>2]-p);o=z[c+212>>2];l=C(z[c+228>>2]-o);n=C(C(g*g)+C(C(j*j)+C(l*l)));if(!(n<=C(1.1920928955078125e-7))){break k}v[c+44>>2]=1;a=v[c+212>>2];v[c+16>>2]=v[c+208>>2];v[c+20>>2]=a;a=v[c+220>>2];v[c+24>>2]=v[c+216>>2];v[c+28>>2]=a;break i;case 1:iY(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break i;case 2:break l;default:break j}}P_(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break i}v[c+28>>2]=0;s=g;g=C(F(C(C(C(C(C(-p)*j)-C(l*o))-C(m*g))/n),C(1)));g=g>C(0)?g:C(0);z[c+24>>2]=m+C(s*g);z[c+20>>2]=o+C(l*g);z[c+16>>2]=p+C(j*g);break i}g=z[f+8>>2];l=z[f>>2];j=z[f+4>>2];v[c+284>>2]=0;a=C(C(g*g)+C(C(l*l)+C(j*j)))>C(0);g=a?g:C(0);z[c+280>>2]=g;j=a?j:C(0);z[c+276>>2]=j;l=a?l:C(1);z[c+272>>2]=l;p=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));n=C(g*p);s=C(l*p);m=C(34028234663852886e22);p=C(j*p);break h}v[c+28>>2]=0;z[c+24>>2]=j;z[c+20>>2]=l;z[c+16>>2]=g}a=v[c+20>>2];v[c+272>>2]=v[c+16>>2];v[c+276>>2]=a;a=v[c+28>>2];v[c+280>>2]=v[c+24>>2];v[c+284>>2]=a;g=z[c+280>>2];l=z[c+272>>2];j=z[c+276>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!(X>2]=v[c+312>>2];a=v[c+308>>2];v[c+288>>2]=v[c+304>>2];v[c+292>>2]=a;a=v[d+56>>2];H=z[c+284>>2];f=v[c+44>>2];B=f<<2;b=v[d+52>>2];G=b+56|0;m=C(-l);r=C(C(C(z[d+72>>2]*m)-C(z[d+88>>2]*j))-C(z[d+104>>2]*g));q=g;y=C(C(C(z[d+64>>2]*m)-C(z[d+80>>2]*j))-C(z[d+96>>2]*g));u=j;m=C(C(C(z[d+68>>2]*m)-C(z[d+84>>2]*j))-C(z[d+100>>2]*g));U=b+52|0;T=b+72|0;_=b+68|0;A=C(C(z[G>>2]*r)+C(C(z[b+48>>2]*y)+C(m*z[U>>2])))>C(C(z[T>>2]*r)+C(C(z[b+64>>2]*y)+C(m*z[_>>2])));v[B+(c- -64|0)>>2]=A;m=z[(A?G:T)>>2];y=z[(A?b+48|0:b- -64|0)>>2];D=z[(A?U:_)>>2];O=z[a+56>>2];J=z[a+40>>2];aa=z[a+24>>2];P=z[a+52>>2];ca=z[a+36>>2];Y=z[a+20>>2];Z=z[a+8>>2];L=z[a+48>>2];ba=z[a+32>>2];oa=z[a>>2];ha=z[a+16>>2];da=z[a+4>>2];T=B+(c+48|0)|0;a=v[d+44>>2];A=a+56|0;r=l;B=a+52|0;G=a+72|0;U=a+68|0;b=C(C(z[A>>2]*g)+C(C(z[a+48>>2]*l)+C(j*z[B>>2])))>C(C(z[G>>2]*g)+C(C(z[a+64>>2]*l)+C(j*z[U>>2])));v[T>>2]=b;O=C(O+C(C(J*m)+C(C(Z*y)+C(D*aa))));J=z[(b?A:G)>>2];g=C(O-J);aa=C(L+C(C(ba*m)+C(C(oa*y)+C(D*ha))));Z=z[(b?a+48|0:a- -64|0)>>2];j=C(aa-Z);m=C(P+C(C(ca*m)+C(C(da*y)+C(D*Y))));y=z[(b?B:U)>>2];l=C(m-y);D=C(C(n*g)+C(C(s*j)+C(p*l)));if(D>S){a=0;if(!x){break e}t[d+215|0]=f;if(!f){break e}b=0;if((f|0)!=1){U=f&-2;A=0;while(1){B=b<<2;T=c- -64|0;t[b+x|0]=v[B+T>>2];_=c+48|0;t[b+Q|0]=v[_+B>>2];B=b|1;G=B<<2;t[x+B|0]=v[G+T>>2];t[B+Q|0]=v[G+_>>2];b=b+2|0;A=A+2|0;if((U|0)!=(A|0)){continue}break}}if(!(f&1)){break e}f=b<<2;t[b+x|0]=v[f+(c- -64|0)>>2];t[b+Q|0]=v[f+(c+48|0)>>2];break e}if(D>C(o*C(.9997749924659729))){m:{if(!x){break m}t[d+215|0]=f;if(!f){break m}b=0;if((f|0)!=1){G=f&-2;A=0;while(1){a=b<<2;U=c- -64|0;t[b+x|0]=v[a+U>>2];T=c+48|0;t[b+Q|0]=v[T+a>>2];a=b|1;B=a<<2;t[a+x|0]=v[B+U>>2];t[a+Q|0]=v[B+T>>2];b=b+2|0;A=A+2|0;if((G|0)!=(A|0)){continue}break}}if(!(f&1)){break m}a=b<<2;t[b+x|0]=v[a+(c- -64|0)>>2];t[b+Q|0]=v[a+(c+48|0)>>2]}z[d+160>>2]=s;v[d+172>>2]=0;z[d+168>>2]=n;z[d+164>>2]=p;IV(c+208|0,c+144|0,c+80|0,c+272|0,c+16|0,c,f);g=z[c+16>>2];j=z[c+20>>2];l=z[c+24>>2];v[d+140>>2]=0;z[d+136>>2]=l-C(E*n);z[d+132>>2]=j-C(E*p);z[d+128>>2]=g-C(E*s);g=z[c>>2];j=z[c+4>>2];l=z[c+8>>2];v[d+156>>2]=0;z[d+152>>2]=l+C(V*n);z[d+148>>2]=j+C(V*p);z[d+144>>2]=g+C(V*s);z[d+192>>2]=o-I;a=2;break e}b=f<<4;a=b+(c+144|0)|0;v[a+12>>2]=0;z[a+8>>2]=O;z[a+4>>2]=m;z[a>>2]=aa;a=b+(c+80|0)|0;v[a+12>>2]=0;z[a+8>>2]=J;z[a+4>>2]=y;z[a>>2]=Z;a=b+(c+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=g;z[a+4>>2]=l;z[a>>2]=j;v[c+44>>2]=f+1;n:{o:{switch(f-1|0){case 0:m=z[c+216>>2];g=C(z[c+232>>2]-m);p=z[c+208>>2];j=C(z[c+224>>2]-p);n=z[c+212>>2];l=C(z[c+228>>2]-n);s=C(C(g*g)+C(C(j*j)+C(l*l)));if(s<=C(1.1920928955078125e-7)){v[c+44>>2]=1;a=v[c+212>>2];v[c+16>>2]=v[c+208>>2];v[c+20>>2]=a;a=v[c+220>>2];v[c+24>>2]=v[c+216>>2];v[c+28>>2]=a;break n}v[c+28>>2]=0;D=g;g=C(F(C(C(C(C(C(-p)*j)-C(l*n))-C(m*g))/s),C(1)));g=g>C(0)?g:C(0);z[c+24>>2]=m+C(D*g);z[c+20>>2]=n+C(l*g);z[c+16>>2]=p+C(j*g);break n;case 1:iY(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break n;case 2:P_(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break n;default:break o}}v[c+28>>2]=0;z[c+24>>2]=g;z[c+20>>2]=l;z[c+16>>2]=j}a=v[c+20>>2];v[c+272>>2]=v[c+16>>2];v[c+276>>2]=a;a=v[c+28>>2];v[c+280>>2]=v[c+24>>2];v[c+284>>2]=a;g=z[c+280>>2];l=z[c+272>>2];j=z[c+276>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));s=C(C(1)/m);n=C(g*s);p=C(j*s);s=C(l*s);if(mX){continue}break}f=v[c+44>>2];if(!(m>2];_=c+48|0;t[b+Q|0]=v[_+B>>2];B=b|1;G=B<<2;t[x+B|0]=v[G+T>>2];t[B+Q|0]=v[G+_>>2];b=b+2|0;A=A+2|0;if((U|0)!=(A|0)){continue}break}}if(!(a&1)){break p}a=b<<2;t[b+x|0]=v[a+(c- -64|0)>>2];t[b+Q|0]=v[a+(c+48|0)>>2]}v[c+312>>2]=v[c+296>>2];a=v[c+292>>2];v[c+304>>2]=v[c+288>>2];v[c+308>>2]=a;z[c+284>>2]=H;z[c+272>>2]=r;z[c+276>>2]=u;z[c+280>>2]=q;IV(c+208|0,c+144|0,c+80|0,c+272|0,c+16|0,c,f);v[d+188>>2]=0;z[d+184>>2]=n;z[d+180>>2]=p;z[d+176>>2]=s;v[d+172>>2]=0;g=C(C(1)/o);j=C(q*g);z[d+168>>2]=j;l=C(u*g);z[d+164>>2]=l;g=C(r*g);z[d+160>>2]=g;m=z[c+16>>2];p=z[c+20>>2];q=z[c+24>>2];v[d+140>>2]=0;z[d+136>>2]=q-C(E*j);z[d+132>>2]=p-C(E*l);z[d+128>>2]=m-C(E*g);m=z[c>>2];p=z[c+4>>2];q=z[c+8>>2];z[d+192>>2]=o-I;v[d+156>>2]=0;z[d+152>>2]=q+C(V*j);z[d+148>>2]=p+C(V*l);z[d+144>>2]=m+C(V*g);a=2;if(o<=I){break e}a=4;break e}if(x){break f}a=5;break e}f=v[c+44>>2]}t[d+215|0]=f;a=5;if(!f){break e}b=0;if((f|0)!=1){U=f&-2;A=0;while(1){B=b<<2;T=c- -64|0;t[b+x|0]=v[B+T>>2];_=c+48|0;t[b+Q|0]=v[_+B>>2];B=b|1;G=B<<2;t[x+B|0]=v[G+T>>2];t[B+Q|0]=v[G+_>>2];b=b+2|0;A=A+2|0;if((U|0)!=(A|0)){continue}break}}if(!(f&1)){break e}f=b<<2;t[b+x|0]=v[f+(c- -64|0)>>2];t[b+Q|0]=v[f+(c+48|0)>>2]}xa=c+320|0;q:{r:{if(a-5|0){break r}v[d+16>>2]=1065353216;a=v[d+28>>2];v[d+8>>2]=v[d+24>>2];v[d+12>>2]=a;a=v[d+20>>2];v[d>>2]=v[d+16>>2];v[d+4>>2]=a;if(J_(la,sa,d+220|0,d+216|0,w[d+215|0],0,d,d+128|0)-5>>>0<=1){break r}v[d+280>>2]=0;v[d+284>>2]=0;v[d+272>>2]=0;v[d+276>>2]=0;g=z[k+360>>2];j=z[k+352>>2];l=z[k+356>>2];v[d+268>>2]=0;m=C(C(1)/C(K(C(C(g*g)+C(C(j*j)+C(l*l))))));z[d+264>>2]=m*C(-g);z[d+260>>2]=m*C(-l);z[d+256>>2]=m*C(-j);g=C(0);break q}a=v[d+140>>2];v[d+280>>2]=v[d+136>>2];v[d+284>>2]=a;a=v[d+132>>2];v[d+272>>2]=v[d+128>>2];v[d+276>>2]=a;a=v[d+164>>2];v[d+256>>2]=v[d+160>>2];v[d+260>>2]=a;a=v[d+172>>2];v[d+264>>2]=v[d+168>>2];v[d+268>>2]=a;g=z[d+192>>2]}z[k+336>>2]=g>2];v[k+320>>2]=v[d+272>>2];v[k+324>>2]=a;a=v[d+284>>2];v[k+328>>2]=v[d+280>>2];v[k+332>>2]=a;a=v[d+260>>2];v[k+304>>2]=v[d+256>>2];v[k+308>>2]=a;a=v[d+268>>2];v[k+312>>2]=v[d+264>>2];v[k+316>>2]=a}xa=d+288|0;if(e){ka=z[k+336>>2];g=z[k+328>>2];j=z[k+320>>2];l=z[k+324>>2];m=z[k+312>>2];p=z[k+304>>2];o=z[k+308>>2];q=C(C(N*m)+C(C(W*p)+C(M*o)));n=C(-M);s=C(C(C(R*C(C(W*o)+C(p*n)))+C($*m))+C(N*q));z[h+8>>2]=s+s;s=C(C(M*q)+C(C($*o)+C(R*C(C(N*p)+C(m*ja)))));z[h+4>>2]=s+s;r=o;o=C(-N);m=C(C(W*q)+C(C($*p)+C(R*C(C(M*m)+C(r*o)))));z[h>>2]=m+m;m=ka>C(0)?ka:C(0);p=C(C(N*g)+C(C(W*j)+C(M*l)));q=C(C(C(R*C(C(W*l)+C(j*n)))+C($*g))+C(N*p));z[i+8>>2]=C(ta*m)+C(qa+C(q+q));q=C(C(M*p)+C(C($*l)+C(R*C(C(N*j)+C(g*ja)))));z[i+4>>2]=C(va*m)+C(pa+C(q+q));g=C(C(W*p)+C(C($*j)+C(R*C(C(M*g)+C(l*o)))));z[i>>2]=C(ua*m)+C(ra+C(g+g))}xa=k+448|0;return C(ka)}function YY(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=C(g);h=h|0;i=i|0;j=j|0;k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=0,x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=0,G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=0,S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=0,qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=0,wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=0,Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=0,La=0,Ma=0,Na=0;b=xa-320|0;xa=b;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;t[b+32|0]=0;v[b+28>>2]=3;l=z[a+8>>2];m=z[a+12>>2];n=z[a+4>>2];v[b+60>>2]=0;z[b+56>>2]=m;z[b+52>>2]=l;z[b+48>>2]=n;l=l>=n?n:l;l=l<=m?l:m;z[b+24>>2]=l*C(.05000000074505806);z[b+20>>2]=l*C(.004999999888241291);z[b+16>>2]=l*C(.009999999776482582);v[b+312>>2]=0;v[b+316>>2]=0;v[b+304>>2]=0;v[b+308>>2]=0;ra=z[e+20>>2];x=z[f+20>>2];sa=z[e+24>>2];s=z[f+24>>2];l=z[d+8>>2];m=z[d>>2];n=z[d+4>>2];p=z[d+12>>2];T=z[c+12>>2];V=z[c>>2];ta=z[e+16>>2];D=z[f+16>>2];O=z[c+4>>2];P=z[c+8>>2];v[b+300>>2]=0;v[b+284>>2]=0;v[b+268>>2]=0;na=C(-V);o=C(D-ta);q=C(x-ra);r=C(s-sa);y=C(C(C(na*o)-C(q*O))-C(P*r));aa=C(C(T*T)+C(-.5));H=C(C(C(T*C(C(O*o)-C(V*q)))+C(aa*r))-C(P*y));z[b+296>>2]=H+H;H=C(C(C(aa*q)+C(T*C(C(V*r)-C(P*o))))-C(O*y));z[b+292>>2]=H+H;u=b+288|0;o=C(C(C(aa*o)+C(T*C(C(P*q)-C(O*r))))-C(V*y));z[u>>2]=o+o;q=C(C(C(n*P)-C(O*l))+C(C(m*T)-C(p*V)));o=C(q+q);r=C(C(C(l*V)-C(P*m))+C(C(n*T)-C(p*O)));y=C(r+r);H=C(C(1)-C(q*o));I=C(r*y);z[b+280>>2]=H-I;q=C(C(C(m*O)-C(V*n))+C(C(l*T)-C(p*P)));Q=C(q*y);l=C(C(p*T)-C(C(C(na*m)-C(n*O))-C(P*l)));m=C(l*o);z[b+276>>2]=Q-m;n=C(q*o);p=C(l*y);z[b+272>>2]=n+p;z[b+264>>2]=Q+m;m=C(q+q);q=C(q*m);z[b+260>>2]=H-q;o=C(r*o);l=C(l*m);z[b+256>>2]=o-l;v[b+252>>2]=0;z[b+248>>2]=n-p;z[b+244>>2]=o+l;z[b+240>>2]=C(C(1)-I)-q;n=z[c+20>>2];p=z[d+20>>2];l=z[c+24>>2];m=z[d+24>>2];o=z[c+16>>2];q=z[d+16>>2];v[b+236>>2]=0;wa=C(m-s);l=C(C(l-sa)-wa);ya=C(q-D);m=C(C(o-ta)-ya);za=C(p-x);n=C(C(n-ra)-za);p=C(C(P*l)+C(C(V*m)+C(O*n)));o=C(C(C(aa*l)-C(T*C(C(V*n)-C(O*m))))+C(P*p));z[b+232>>2]=o+o;o=C(C(O*p)+C(C(aa*n)-C(T*C(C(P*m)-C(l*V)))));z[b+228>>2]=o+o;l=C(C(V*p)+C(C(aa*m)-C(T*C(C(O*l)-C(n*P)))));z[b+224>>2]=l+l;v[b+160>>2]=0;v[b+80>>2]=142420;v[b+84>>2]=k;v[b+88>>2]=b+240;a=v[b+260>>2];v[b+112>>2]=v[b+256>>2];v[b+116>>2]=a;a=v[b+268>>2];v[b+120>>2]=v[b+264>>2];v[b+124>>2]=a;a=v[b+252>>2];v[b+104>>2]=v[b+248>>2];v[b+108>>2]=a;a=v[b+276>>2];v[b+128>>2]=v[b+272>>2];v[b+132>>2]=a;a=v[b+284>>2];v[b+136>>2]=v[b+280>>2];v[b+140>>2]=a;a=v[u+4>>2];v[b+144>>2]=v[u>>2];v[b+148>>2]=a;a=v[b+300>>2];v[b+152>>2]=v[b+296>>2];v[b+156>>2]=a;a=v[b+244>>2];v[b+96>>2]=v[b+240>>2];v[b+100>>2]=a;l=z[b+100>>2];z[b+100>>2]=z[b+112>>2];m=z[b+120>>2];n=z[b+104>>2];z[b+104>>2]=z[b+128>>2];z[b+120>>2]=z[b+132>>2];z[b+128>>2]=n;z[b+132>>2]=m;z[b+112>>2]=l;v[b+72>>2]=141808;v[b+76>>2]=b;oa=C(34028234663852886e22);e=xa-288|0;xa=e;ba=C(g+C(0));a=xa-272|0;xa=a;v[a+264>>2]=0;v[a+268>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;J=z[b+312>>2];A=z[b+308>>2];G=z[b+304>>2];M=z[b+232>>2];U=z[b+228>>2];ca=z[b+224>>2];v[a+240>>2]=1;j=b+72|0;k=v[j+4>>2];n=z[k+52>>2];pa=b+80|0;c=pa;d=v[c+8>>2];Z=z[d+52>>2];W=z[d+36>>2];$=z[d+20>>2];p=z[k+56>>2];B=z[d+56>>2];X=z[d+40>>2];da=z[d+24>>2];f=v[c+4>>2];o=z[f+72>>2];q=z[f- -64>>2];r=z[f+68>>2];y=z[f+56>>2];x=z[f+52>>2];s=z[f+88>>2];ea=z[c+56>>2];ma=z[c+24>>2];fa=z[c+40>>2];D=z[f+80>>2];ga=z[c+48>>2];ja=z[c+32>>2];H=z[f+84>>2];ka=z[c+52>>2];la=z[c+20>>2];ua=z[c+36>>2];I=z[k+48>>2];Ca=z[d+48>>2];Da=z[d+32>>2];Ea=z[d>>2];Fa=z[d+16>>2];Ga=z[d+4>>2];Ha=z[d+8>>2];Q=z[f+48>>2];Ia=z[c+16>>2];g=z[u+8>>2];l=z[u>>2];m=z[u+4>>2];v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+224>>2]=0;v[a+228>>2]=0;v[a+232>>2]=0;f=0;v[a+236>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;Ja=B;ia=X;Aa=o;ha=s;d=C(C(g*g)+C(C(l*l)+C(m*m)))>C(1.1920928955078125e-7);l=d?l:C(1);B=l;o=d?g:C(0);g=d?m:C(0);l=C(C(1)/C(K(C(C(o*o)+C(C(l*l)+C(g*g))))));X=C(B*l);m=C(-X);g=C(g*l);l=C(o*l);o=C(C(C(ma*m)-C(fa*g))-C(ea*l));B=C(C(C(Ia*m)-C(ja*g))-C(ga*l));m=C(C(C(la*m)-C(ua*g))-C(ka*l));ea=C(C(Aa*o)+C(C(q*B)+C(r*m)));s=C(C(s*o)+C(C(D*B)+C(m*H)));d=ea>s;m=C(C(y*o)+C(C(Q*B)+C(m*x)));L=!(m>ea)|!(m>s);m=L?d?Aa:ha:y;o=L?d?q:D:Q;q=L?d?r:H:x;y=C(Ja+C(C(ia*m)+C(C(Ha*o)+C(da*q))));l=l>C(0)?p:C(-p);x=C(y-l);z[a+184>>2]=x;p=C(Z+C(C(W*m)+C(C(Ga*o)+C(q*$))));g=g>C(0)?n:C(-n);s=C(p-g);z[a+180>>2]=s;m=C(Ca+C(C(Da*m)+C(C(Ea*o)+C(q*Fa))));n=X>C(0)?I:C(-I);r=C(m-n);z[a+176>>2]=r;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+160>>2]=0;v[a+164>>2]=0;v[a+168>>2]=0;v[a+172>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;z[a+120>>2]=y;z[a+116>>2]=p;z[a+112>>2]=m;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;z[a+56>>2]=l;z[a+52>>2]=g;z[a+48>>2]=n;g=C(-x);l=C(-s);m=C(-r);D=C(C(x*x)+C(C(r*r)+C(s*s)));n=z[k+24>>2];n=C((nea)){n=m;o=l;q=g;I=C(0);y=r;p=s;H=x;break b}Z=C(n+ba);ma=C(Z*Z);Q=C(C(ca*C(0))+G);B=C(C(U*C(0))+A);ba=C(C(M*C(0))+J);I=C(0);q=g;o=l;n=m;while(1){y=r;p=s;H=x;s=C(C(1)/C(K(C(C(g*g)+C(C(m*m)+C(l*l))))));r=C(m*s);d=v[c+4>>2];M=z[d+72>>2];x=C(g*s);s=C(l*s);J=C(C(z[c+56>>2]*x)+C(C(r*z[c+24>>2])+C(s*z[c+40>>2])));U=z[d- -64>>2];A=C(C(z[c+48>>2]*x)+C(C(r*z[c+16>>2])+C(s*z[c+32>>2])));G=C(C(z[c+52>>2]*x)+C(C(r*z[c+20>>2])+C(s*z[c+36>>2])));ca=z[d+68>>2];W=C(C(M*J)+C(C(U*A)+C(G*ca)));$=z[d+88>>2];X=z[d+80>>2];da=z[d+84>>2];fa=C(C($*J)+C(C(X*A)+C(G*da)));f=W>fa;ia=W;W=z[d+56>>2];ga=z[d+48>>2];ha=G;G=z[d+52>>2];J=C(C(W*J)+C(C(ga*A)+C(ha*G)));k=!(iafa);d=v[c+8>>2];J=k?f?M:$:W;A=k?f?U:X:ga;U=k?f?ca:da:G;ca=C(z[d+48>>2]+C(C(z[d+32>>2]*J)+C(C(z[d>>2]*A)+C(U*z[d+16>>2]))));f=v[j+4>>2];G=z[f+48>>2];fa=r>2]+C(C(z[d+36>>2]*J)+C(C(z[d+4>>2]*A)+C(U*z[d+20>>2]))));M=z[f+52>>2];ga=s>2]+C(C(z[d+40>>2]*J)+C(C(z[d+8>>2]*A)+C(U*z[d+24>>2]))));J=z[f+56>>2];J=xC(0)){f=0;ka=z[b+232>>2];ia=C(x*ka);x=z[b+224>>2];ha=s;s=z[b+228>>2];la=C(ia+C(C(r*x)+C(ha*s)));if(la>=C(0)){break a}r=I;I=C(r-C(ja/la));if(I>r){if(I>C(1)){break a}q=z[b+312>>2];o=z[b+308>>2];n=z[b+304>>2];v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;r=C(n+C(x*I));n=C(r-Q);D=C(n+z[a+80>>2]);z[a+80>>2]=D;x=C(o+C(s*I));o=C(x-B);Q=C(o+z[a+84>>2]);z[a+84>>2]=Q;s=C(q+C(ka*I));q=C(s-ba);B=C(q+z[a+88>>2]);z[a+88>>2]=B;ba=C(n+z[a+64>>2]);z[a+64>>2]=ba;A=C(o+z[a+68>>2]);z[a+68>>2]=A;G=C(q+z[a+72>>2]);z[a+72>>2]=G;n=C(n+z[a+48>>2]);z[a+48>>2]=n;o=C(o+z[a+52>>2]);z[a+52>>2]=o;q=C(q+z[a+56>>2]);z[a+56>>2]=q;M=z[a+112>>2];W=z[a+116>>2];X=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=X-q;z[a+180>>2]=W-o;z[a+176>>2]=M-n;n=z[a+128>>2];o=z[a+132>>2];q=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=q-G;z[a+196>>2]=o-A;z[a+192>>2]=n-ba;n=z[a+144>>2];o=z[a+148>>2];q=z[a+152>>2];v[a+220>>2]=0;z[a+216>>2]=q-B;z[a+212>>2]=o-Q;z[a+208>>2]=n-D;da=C(J+s);A=C(U-da);X=C(ga+x);M=C($-X);W=C(fa+r);G=C(ca-W);n=m;o=l;q=g;Q=r;B=x;ba=s;g=C(34028234663852886e22)}else{g=D}}else{g=D}J=g;f=v[a+240>>2];k=f<<4;d=k+(a+112|0)|0;v[d+12>>2]=0;z[d+8>>2]=U;z[d+4>>2]=$;z[d>>2]=ca;d=k+(a+48|0)|0;v[d+12>>2]=0;z[d+8>>2]=da;z[d+4>>2]=X;z[d>>2]=W;d=k+(a+176|0)|0;v[d+12>>2]=0;z[d+8>>2]=A;z[d+4>>2]=M;z[d>>2]=G;v[a+240>>2]=f+1;c:{d:{switch(f-1|0){case 0:r=z[a+184>>2];g=C(z[a+200>>2]-r);x=z[a+176>>2];l=C(z[a+192>>2]-x);s=z[a+180>>2];m=C(z[a+196>>2]-s);D=C(C(g*g)+C(C(l*l)+C(m*m)));if(D<=C(1.1920928955078125e-7)){v[a+240>>2]=1;d=v[a+180>>2];v[a+32>>2]=v[a+176>>2];v[a+36>>2]=d;d=v[a+188>>2];v[a+40>>2]=v[a+184>>2];v[a+44>>2]=d;break c}ha=g;g=C(F(C(C(C(C(C(-x)*l)-C(m*s))-C(r*g))/D),C(1)));g=g>C(0)?g:C(0);z[a+40>>2]=r+C(ha*g);z[a+36>>2]=s+C(m*g);z[a+32>>2]=x+C(l*g);break c;case 1:JV(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;case 2:N_(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;default:break d}}z[a+40>>2]=A;z[a+36>>2]=M;z[a+32>>2]=G}x=z[a+40>>2];g=C(-x);s=z[a+36>>2];l=C(-s);r=z[a+32>>2];m=C(-r);D=C(C(x*x)+C(C(r*r)+C(s*s)));if(ma>2]+32|0];A=C(0);Q=C(0);k=!(D>ea)|f;g=k?q:g;m=k?n:m;l=k?o:l;n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));if(!(n<=C(1.1920928955078125e-7))){o=g;g=C(C(1)/n);qa=C(o*g);A=C(l*g);Q=C(m*g)}v[e+268>>2]=0;z[e+264>>2]=-qa;z[e+260>>2]=-A;z[e+256>>2]=-Q;z[e+240>>2]=I;v[e+252>>2]=v[a+252>>2];k=v[a+248>>2];v[e+244>>2]=v[a+244>>2];v[e+248>>2]=k;v[a+44>>2]=0;z[a+40>>2]=f?H:x;z[a+36>>2]=f?p:s;z[a+32>>2]=f?y:r;f=v[a+268>>2];L=v[a+264>>2];v[a+24>>2]=L;v[a+28>>2]=f;k=v[a+260>>2];_=v[a+256>>2];v[a+16>>2]=_;v[a+20>>2]=k;v[a+8>>2]=L;v[a+12>>2]=f;v[a>>2]=_;v[a+4>>2]=k;IV(a+176|0,a+112|0,a+48|0,a+32|0,a+16|0,a,v[a+240>>2]);g=z[v[c+4>>2]+16>>2];l=z[a+16>>2];m=z[a+20>>2];n=z[a+24>>2];v[e+284>>2]=0;z[e+280>>2]=n+(d?C(qa*g):C(-0));z[e+276>>2]=m+(d?C(A*g):C(-0));z[e+272>>2]=l+(d?C(Q*g):C(-0));f=1}xa=a+272|0;if(f){a=v[e+244>>2];v[b+208>>2]=v[e+240>>2];v[b+212>>2]=a;a=v[e+252>>2];v[b+216>>2]=v[e+248>>2];v[b+220>>2]=a;if(z[e+240>>2]==C(0)){c=v[pa+4>>2];d=v[j+4>>2];z[e+224>>2]=C(z[c+16>>2]+z[d+16>>2])*C(100);t[e+215|0]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;v[e+152>>2]=0;v[e+156>>2]=0;v[e+144>>2]=0;v[e+148>>2]=0;v[e+136>>2]=0;v[e+140>>2]=0;v[e+128>>2]=0;v[e+132>>2]=0;v[e+192>>2]=0;a=v[pa+8>>2];v[e+56>>2]=a;v[e+48>>2]=142420;v[e+52>>2]=c;c=v[a+12>>2];v[e+72>>2]=v[a+8>>2];v[e+76>>2]=c;c=v[a+20>>2];v[e+80>>2]=v[a+16>>2];v[e+84>>2]=c;c=v[a+28>>2];v[e+88>>2]=v[a+24>>2];v[e+92>>2]=c;c=v[a+36>>2];v[e+96>>2]=v[a+32>>2];v[e+100>>2]=c;c=v[a+44>>2];v[e+104>>2]=v[a+40>>2];v[e+108>>2]=c;c=v[a+52>>2];v[e+112>>2]=v[a+48>>2];v[e+116>>2]=c;c=v[a+60>>2];v[e+120>>2]=v[a+56>>2];v[e+124>>2]=c;c=v[a+4>>2];v[e+64>>2]=v[a>>2];v[e+68>>2]=c;g=z[e+68>>2];z[e+68>>2]=z[e+80>>2];l=z[e+88>>2];m=z[e+72>>2];z[e+72>>2]=z[e+96>>2];z[e+80>>2]=g;z[e+96>>2]=m;z[e+88>>2]=z[e+100>>2];z[e+100>>2]=l;v[e+40>>2]=141808;v[e+44>>2]=d;L=e+220|0;_=e+216|0;d=xa-320|0;xa=d;E=v[e+44>>2];g=z[E+20>>2];N=v[e+52>>2];l=z[N+20>>2];q=z[e+224>>2];Ka=w[N+32|0];x=z[N+16>>2];La=w[E+32|0];s=z[E+16>>2];v[d+44>>2]=0;Q=C((g>2];a=0;k=0;while(1){c=k<<2;R=w[k+L|0];v[c+(d- -64|0)>>2]=R;S=w[k+_|0];v[c+(d+48|0)>>2]=S;c=N+(R<<4)|0;g=z[c+56>>2];l=z[c+48>>2];m=z[c+52>>2];c=(S<<4)+101152|0;Ma=v[c>>2];Na=v[c+4>>2];va=v[c+8>>2];r=z[u+48>>2];y=z[u+32>>2];D=z[u>>2];H=z[u+16>>2];I=z[u+52>>2];B=z[u+36>>2];ba=z[u+4>>2];J=z[u+20>>2];A=z[u+56>>2];G=z[u+40>>2];M=z[u+8>>2];Z=z[u+24>>2];n=z[E+48>>2];p=z[E+52>>2];o=z[E+56>>2];c=a;Y=a<<4;R=Y+(d+144|0)|0;v[R+12>>2]=0;S=Y+(d+80|0)|0;v[S+12>>2]=0;Y=Y+(d+208|0)|0;v[Y+12>>2]=0;o=va?o:C(-o);z[S+8>>2]=o;p=Na?p:C(-p);z[S+4>>2]=p;n=Ma?n:C(-n);z[S>>2]=n;A=C(A+C(C(G*g)+C(C(M*l)+C(m*Z))));z[R+8>>2]=A;I=C(I+C(C(B*g)+C(C(ba*l)+C(m*J))));z[R+4>>2]=I;g=C(r+C(C(y*g)+C(C(D*l)+C(m*H))));z[R>>2]=g;l=C(A-o);z[Y+8>>2]=l;m=C(I-p);z[Y+4>>2]=m;g=C(g-n);z[Y>>2]=g;a=a+1|0;v[d+44>>2]=a;k=k+1|0;if((Ba|0)!=(k|0)){continue}break}k:{l:{switch(c-1|0){case 0:n=z[d+216>>2];g=C(z[d+232>>2]-n);p=z[d+208>>2];l=C(z[d+224>>2]-p);o=z[d+212>>2];m=C(z[d+228>>2]-o);r=C(C(g*g)+C(C(l*l)+C(m*m)));if(!(r<=C(1.1920928955078125e-7))){break k}v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break i;case 1:iY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i;case 2:break l;default:break j}}P_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i}v[d+28>>2]=0;H=g;g=C(F(C(C(C(C(C(-p)*l)-C(m*o))-C(n*g))/r),C(1)));g=g>C(0)?g:C(0);z[d+24>>2]=n+C(H*g);z[d+20>>2]=o+C(m*g);z[d+16>>2]=p+C(l*g);break i}g=z[u+8>>2];m=z[u>>2];l=z[u+4>>2];v[d+284>>2]=0;a=C(C(g*g)+C(C(m*m)+C(l*l)))>C(0);g=a?g:C(0);z[d+280>>2]=g;l=a?l:C(0);z[d+276>>2]=l;m=a?m:C(1);z[d+272>>2]=m;p=C(C(1)/C(K(C(C(g*g)+C(C(m*m)+C(l*l))))));r=C(g*p);y=C(m*p);n=C(34028234663852886e22);p=C(l*p);break h}v[d+28>>2]=0;z[d+24>>2]=l;z[d+20>>2]=m;z[d+16>>2]=g}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;g=z[d+280>>2];m=z[d+272>>2];l=z[d+276>>2];n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));if(!(Q>2]=v[d+312>>2];a=v[d+308>>2];v[d+288>>2]=v[d+304>>2];v[d+292>>2]=a;a=v[e+56>>2];J=z[d+284>>2];c=v[d+44>>2];N=c<<2;k=v[e+52>>2];A=z[k+72>>2];n=C(-m);s=C(C(C(z[e+72>>2]*n)-C(z[e+88>>2]*l))-C(z[e+104>>2]*g));G=z[k- -64>>2];q=g;B=C(C(C(z[e+64>>2]*n)-C(z[e+80>>2]*l))-C(z[e+96>>2]*g));x=l;n=C(C(C(z[e+68>>2]*n)-C(z[e+84>>2]*l))-C(z[e+100>>2]*g));M=z[k+68>>2];Z=C(C(A*s)+C(C(G*B)+C(n*M)));U=z[k+88>>2];ca=z[k+80>>2];W=z[k+84>>2];$=C(C(U*s)+C(C(ca*B)+C(n*W)));u=Z>$;ia=Z;Z=z[k+56>>2];X=z[k+48>>2];ha=n;n=z[k+52>>2];s=C(C(Z*s)+C(C(X*B)+C(ha*n)));k=!(ia$);v[N+(d- -64|0)>>2]=k?u?1:2:0;B=z[a+56>>2];$=z[a+40>>2];da=z[a+24>>2];qa=z[a+52>>2];ea=z[a+36>>2];ma=z[a+20>>2];fa=z[a+8>>2];ga=z[a+48>>2];ja=z[a+32>>2];ka=z[a>>2];la=z[a+16>>2];E=v[e+44>>2];ua=z[a+4>>2];va=N+(d+48|0)|0;s=m;N=m>C(0);a=l>C(0);R=g>C(0);v[va>>2]=N|a<<1|R<<2;g=k?u?A:U:Z;l=k?u?G:ca:X;m=k?u?M:W:n;A=C(B+C(C($*g)+C(C(fa*l)+C(da*m))));n=z[E+56>>2];G=R?n:C(-n);n=C(A-G);M=C(ga+C(C(ja*g)+C(C(ka*l)+C(m*la))));B=z[E+48>>2];Z=N?B:C(-B);B=C(M-Z);l=C(qa+C(C(ea*g)+C(C(ua*l)+C(m*ma))));g=z[E+52>>2];m=a?g:C(-g);g=C(l-m);U=C(C(r*n)+C(C(y*B)+C(p*g)));if(U>ba){u=0;if(!L){break e}t[e+215|0]=c;if(!c){break e}a=0;if((c|0)!=1){R=c&-2;E=0;while(1){k=a<<2;S=d- -64|0;t[a+L|0]=v[k+S>>2];Y=d+48|0;t[a+_|0]=v[Y+k>>2];k=a|1;N=k<<2;t[k+L|0]=v[N+S>>2];t[k+_|0]=v[N+Y>>2];a=a+2|0;E=E+2|0;if((R|0)!=(E|0)){continue}break}}if(!(c&1)){break e}c=a<<2;t[a+L|0]=v[c+(d- -64|0)>>2];t[a+_|0]=v[c+(d+48|0)>>2];break e}if(U>C(o*C(.9997749924659729))){m:{if(!L){break m}t[e+215|0]=c;if(!c){break m}a=0;if((c|0)!=1){N=c&-2;E=0;while(1){k=a<<2;R=d- -64|0;t[a+L|0]=v[k+R>>2];S=d+48|0;t[a+_|0]=v[S+k>>2];k=a|1;u=k<<2;t[k+L|0]=v[u+R>>2];t[k+_|0]=v[u+S>>2];a=a+2|0;E=E+2|0;if((N|0)!=(E|0)){continue}break}}if(!(c&1)){break m}k=a<<2;t[a+L|0]=v[k+(d- -64|0)>>2];t[a+_|0]=v[k+(d+48|0)>>2]}z[e+160>>2]=y;v[e+172>>2]=0;z[e+168>>2]=r;z[e+164>>2]=p;IV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,c);g=z[d+16>>2];l=z[d+20>>2];m=z[d+24>>2];v[e+140>>2]=0;z[e+136>>2]=m-C(D*r);z[e+132>>2]=l-C(D*p);z[e+128>>2]=g-C(D*y);g=z[d>>2];l=z[d+4>>2];m=z[d+8>>2];v[e+156>>2]=0;z[e+152>>2]=m+C(H*r);z[e+148>>2]=l+C(H*p);z[e+144>>2]=g+C(H*y);z[e+192>>2]=o-I;u=2;break e}k=c<<4;a=k+(d+144|0)|0;v[a+12>>2]=0;z[a+8>>2]=A;z[a+4>>2]=l;z[a>>2]=M;a=k+(d+80|0)|0;v[a+12>>2]=0;z[a+8>>2]=G;z[a+4>>2]=m;z[a>>2]=Z;a=k+(d+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=n;z[a+4>>2]=g;z[a>>2]=B;v[d+44>>2]=c+1;n:{o:{switch(c-1|0){case 0:n=z[d+216>>2];g=C(z[d+232>>2]-n);p=z[d+208>>2];l=C(z[d+224>>2]-p);r=z[d+212>>2];m=C(z[d+228>>2]-r);y=C(C(g*g)+C(C(l*l)+C(m*m)));if(y<=C(1.1920928955078125e-7)){v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break n}v[d+28>>2]=0;B=g;g=C(F(C(C(C(C(C(-p)*l)-C(m*r))-C(n*g))/y),C(1)));g=g>C(0)?g:C(0);z[d+24>>2]=n+C(B*g);z[d+20>>2]=r+C(m*g);z[d+16>>2]=p+C(l*g);break n;case 1:iY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;case 2:P_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;default:break o}}v[d+28>>2]=0;z[d+24>>2]=n;z[d+20>>2]=g;z[d+16>>2]=B}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;g=z[d+280>>2];m=z[d+272>>2];l=z[d+276>>2];n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));y=C(C(1)/n);r=C(g*y);p=C(l*y);y=C(m*y);if(nQ){continue}break}k=v[d+44>>2];if(!(n>2];Y=d+48|0;t[a+_|0]=v[Y+E>>2];E=a|1;N=E<<2;t[E+L|0]=v[N+S>>2];t[E+_|0]=v[N+Y>>2];a=a+2|0;u=u+2|0;if((R|0)!=(u|0)){continue}break}}if(!(c&1)){break p}c=a<<2;t[a+L|0]=v[c+(d- -64|0)>>2];t[a+_|0]=v[c+(d+48|0)>>2]}v[d+312>>2]=v[d+296>>2];a=v[d+292>>2];v[d+304>>2]=v[d+288>>2];v[d+308>>2]=a;z[d+284>>2]=J;z[d+272>>2]=s;z[d+276>>2]=x;z[d+280>>2]=q;IV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,k);v[e+188>>2]=0;z[e+184>>2]=r;z[e+180>>2]=p;z[e+176>>2]=y;v[e+172>>2]=0;g=C(C(1)/o);l=C(q*g);z[e+168>>2]=l;m=C(x*g);z[e+164>>2]=m;g=C(s*g);z[e+160>>2]=g;n=z[d+16>>2];p=z[d+20>>2];q=z[d+24>>2];v[e+140>>2]=0;z[e+136>>2]=q-C(D*l);z[e+132>>2]=p-C(D*m);z[e+128>>2]=n-C(D*g);n=z[d>>2];p=z[d+4>>2];q=z[d+8>>2];z[e+192>>2]=o-I;v[e+156>>2]=0;z[e+152>>2]=q+C(H*l);z[e+148>>2]=p+C(H*m);z[e+144>>2]=n+C(H*g);u=2;if(o<=I){break e}u=4;break e}if(L){break f}u=5;break e}k=v[d+44>>2]}t[e+215|0]=k;u=5;if(!k){break e}a=0;if((k|0)!=1){R=k&-2;E=0;while(1){c=a<<2;S=d- -64|0;t[a+L|0]=v[c+S>>2];Y=d+48|0;t[a+_|0]=v[Y+c>>2];c=a|1;N=c<<2;t[c+L|0]=v[N+S>>2];t[c+_|0]=v[N+Y>>2];a=a+2|0;E=E+2|0;if((R|0)!=(E|0)){continue}break}}if(!(k&1)){break e}c=a<<2;t[a+L|0]=v[c+(d- -64|0)>>2];t[a+_|0]=v[c+(d+48|0)>>2]}xa=d+320|0;q:{r:{if(u-5|0){break r}v[e+16>>2]=1065353216;a=v[e+28>>2];v[e+8>>2]=v[e+24>>2];v[e+12>>2]=a;a=v[e+20>>2];v[e>>2]=v[e+16>>2];v[e+4>>2]=a;if(J_(pa,j,e+220|0,e+216|0,w[e+215|0],0,e,e+128|0)-5>>>0<=1){break r}v[e+280>>2]=0;v[e+284>>2]=0;v[e+272>>2]=0;v[e+276>>2]=0;g=z[b+232>>2];l=z[b+224>>2];m=z[b+228>>2];v[e+268>>2]=0;n=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(m*m))))));z[e+264>>2]=n*C(-g);z[e+260>>2]=n*C(-m);z[e+256>>2]=n*C(-l);g=C(0);break q}a=v[e+140>>2];v[e+280>>2]=v[e+136>>2];v[e+284>>2]=a;a=v[e+132>>2];v[e+272>>2]=v[e+128>>2];v[e+276>>2]=a;a=v[e+164>>2];v[e+256>>2]=v[e+160>>2];v[e+260>>2]=a;a=v[e+172>>2];v[e+264>>2]=v[e+168>>2];v[e+268>>2]=a;g=z[e+192>>2]}z[b+208>>2]=g>2];v[b+192>>2]=v[e+272>>2];v[b+196>>2]=a;a=v[e+284>>2];v[b+200>>2]=v[e+280>>2];v[b+204>>2]=a;a=v[e+260>>2];v[b+176>>2]=v[e+256>>2];v[b+180>>2]=a;a=v[e+268>>2];v[b+184>>2]=v[e+264>>2];v[b+188>>2]=a}xa=e+288|0;if(f){oa=z[b+208>>2];g=z[b+200>>2];l=z[b+192>>2];m=z[b+196>>2];n=z[b+184>>2];p=z[b+176>>2];o=z[b+180>>2];q=C(C(P*n)+C(C(V*p)+C(O*o)));r=C(-O);y=C(C(C(T*C(C(V*o)+C(p*r)))+C(aa*n))+C(P*q));z[h+8>>2]=y+y;y=C(C(O*q)+C(C(aa*o)+C(T*C(C(P*p)+C(n*na)))));z[h+4>>2]=y+y;s=o;o=C(-P);n=C(C(V*q)+C(C(aa*p)+C(T*C(C(O*n)+C(s*o)))));z[h>>2]=n+n;n=oa>C(0)?oa:C(0);p=C(C(P*g)+C(C(V*l)+C(O*m)));q=C(C(C(T*C(C(V*m)+C(l*r)))+C(aa*g))+C(P*p));z[i+8>>2]=C(wa*n)+C(sa+C(q+q));q=C(C(O*p)+C(C(aa*m)+C(T*C(C(P*l)+C(g*na)))));z[i+4>>2]=C(za*n)+C(ra+C(q+q));g=C(C(V*p)+C(C(aa*l)+C(T*C(C(O*g)+C(m*o)))));z[i>>2]=C(ya*n)+C(ta+C(g+g))}xa=b+320|0;return C(oa)}function RY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=0,A=0,B=C(0),D=C(0),E=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=0,S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=0,ua=C(0),va=C(0),wa=C(0),ya=C(0),za=0,Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=0,Ga=0,Ha=0,Ia=0,Ja=0;k=xa-416|0;xa=k;b=v[b>>2];a=v[a>>2];v[k+72>>2]=0;v[k+76>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;v[k+92>>2]=4;j=z[a+4>>2];l=z[a+8>>2];v[k+140>>2]=0;v[k+124>>2]=0;m=C(l*C(0));z[k+120>>2]=m;z[k+116>>2]=m;m=C(-m);z[k+136>>2]=m;z[k+132>>2]=m;z[k+144>>2]=j;z[k+112>>2]=l;t[k+96|0]=1;z[k+88>>2]=j;z[k+84>>2]=j;z[k+80>>2]=j;z[k+128>>2]=-l;v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;t[k+32|0]=0;v[k+28>>2]=3;j=z[b+8>>2];l=z[b+12>>2];m=z[b+4>>2];v[k+60>>2]=0;z[k+56>>2]=l;z[k+52>>2]=j;z[k+48>>2]=m;j=j>=m?m:j;j=j<=l?j:l;z[k+24>>2]=j*C(.05000000074505806);z[k+20>>2]=j*C(.004999999888241291);z[k+16>>2]=j*C(.009999999776482582);V=z[a+4>>2];v[k+408>>2]=0;v[k+412>>2]=0;v[k+400>>2]=0;v[k+404>>2]=0;qa=z[f+20>>2];u=z[e+20>>2];ra=z[f+24>>2];r=z[e+24>>2];j=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];o=z[c+12>>2];T=z[d+12>>2];U=z[d>>2];sa=z[f+16>>2];B=z[e+16>>2];P=z[d+4>>2];Q=z[d+8>>2];v[k+396>>2]=0;v[k+380>>2]=0;v[k+364>>2]=0;ha=C(-U);n=C(B-sa);p=C(u-qa);q=C(r-ra);s=C(C(C(ha*n)-C(p*P))-C(Q*q));Z=C(C(T*T)+C(-.5));D=C(C(C(T*C(C(P*n)-C(U*p)))+C(Z*q))-C(Q*s));z[k+392>>2]=D+D;D=C(C(C(Z*p)+C(T*C(C(U*q)-C(Q*n))))-C(P*s));z[k+388>>2]=D+D;f=k+384|0;n=C(C(C(Z*n)+C(T*C(C(Q*p)-C(P*q))))-C(U*s));z[f>>2]=n+n;p=C(C(C(m*Q)-C(P*j))+C(C(l*T)-C(o*U)));n=C(p+p);q=C(C(C(j*U)-C(Q*l))+C(C(m*T)-C(o*P)));s=C(q+q);D=C(C(1)-C(p*n));G=C(q*s);z[k+376>>2]=D-G;p=C(C(C(l*P)-C(U*m))+C(C(j*T)-C(o*Q)));O=C(p*s);j=C(C(o*T)-C(C(C(ha*l)-C(m*P))-C(Q*j)));l=C(j*n);z[k+372>>2]=O-l;m=C(p*n);o=C(j*s);z[k+368>>2]=m+o;z[k+360>>2]=O+l;l=C(p+p);p=C(p*l);z[k+356>>2]=D-p;n=C(q*n);j=C(j*l);z[k+352>>2]=n-j;v[k+348>>2]=0;z[k+344>>2]=m-o;z[k+340>>2]=n+j;z[k+336>>2]=C(C(1)-G)-p;m=z[d+20>>2];o=z[c+20>>2];j=z[d+24>>2];l=z[c+24>>2];n=z[d+16>>2];p=z[c+16>>2];v[k+332>>2]=0;va=C(l-r);j=C(C(j-ra)-va);wa=C(p-B);l=C(C(n-sa)-wa);ya=C(o-u);m=C(C(m-qa)-ya);o=C(C(Q*j)+C(C(U*l)+C(P*m)));n=C(C(C(Z*j)-C(T*C(C(U*m)-C(P*l))))+C(Q*o));z[k+328>>2]=n+n;n=C(C(P*o)+C(C(Z*m)-C(T*C(C(Q*l)-C(j*U)))));z[k+324>>2]=n+n;j=C(C(U*o)+C(C(Z*l)-C(T*C(C(P*j)-C(m*Q)))));z[k+320>>2]=j+j;v[k+256>>2]=0;v[k+176>>2]=142372;v[k+184>>2]=k+336;v[k+180>>2]=k- -64;a=v[k+356>>2];v[k+208>>2]=v[k+352>>2];v[k+212>>2]=a;a=v[k+364>>2];v[k+216>>2]=v[k+360>>2];v[k+220>>2]=a;a=v[k+348>>2];v[k+200>>2]=v[k+344>>2];v[k+204>>2]=a;a=v[k+372>>2];v[k+224>>2]=v[k+368>>2];v[k+228>>2]=a;a=v[k+380>>2];v[k+232>>2]=v[k+376>>2];v[k+236>>2]=a;a=v[f+4>>2];v[k+240>>2]=v[f>>2];v[k+244>>2]=a;a=v[k+396>>2];v[k+248>>2]=v[k+392>>2];v[k+252>>2]=a;a=v[k+340>>2];v[k+192>>2]=v[k+336>>2];v[k+196>>2]=a;j=z[k+196>>2];z[k+196>>2]=z[k+208>>2];l=z[k+216>>2];m=z[k+200>>2];z[k+200>>2]=z[k+224>>2];z[k+216>>2]=z[k+228>>2];z[k+224>>2]=m;z[k+228>>2]=l;z[k+208>>2]=j;v[k+168>>2]=141808;v[k+172>>2]=k;ia=C(34028234663852886e22);d=xa-288|0;xa=d;V=C(C(V+g)+C(0));a=xa-272|0;xa=a;v[a+264>>2]=0;v[a+268>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;D=z[k+408>>2];O=z[k+404>>2];G=z[k+400>>2];$=z[k+328>>2];L=z[k+324>>2];E=z[k+320>>2];v[a+240>>2]=1;ta=k+168|0;R=ta;A=v[R+4>>2];m=z[A+52>>2];ja=k+176|0;b=ja;c=v[b+8>>2];J=z[c+52>>2];I=z[c+36>>2];_=z[c+20>>2];o=z[A+56>>2];M=z[c+56>>2];W=z[c+40>>2];X=z[c+24>>2];e=v[b+4>>2];n=z[e+56>>2];p=z[e+52>>2];q=z[e+72>>2];aa=z[b+56>>2];ba=z[b+24>>2];ca=z[b+40>>2];da=z[b+48>>2];fa=z[b+32>>2];s=z[e+68>>2];ka=z[b+52>>2];la=z[b+20>>2];ma=z[b+36>>2];B=z[A+48>>2];na=z[c+48>>2];oa=z[c+32>>2];Aa=z[c>>2];Ba=z[c+16>>2];Ca=z[c+4>>2];Da=z[c+8>>2];u=z[e+48>>2];r=z[e+64>>2];Ea=z[b+16>>2];g=z[f+8>>2];j=z[f>>2];l=z[f+4>>2];v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+224>>2]=0;v[a+228>>2]=0;v[a+232>>2]=0;e=0;v[a+236>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;ga=M;ua=W;ea=n;c=C(C(g*g)+C(C(j*j)+C(l*l)))>C(1.1920928955078125e-7);j=c?j:C(1);M=j;n=c?g:C(0);g=c?l:C(0);j=C(C(1)/C(K(C(C(n*n)+C(C(j*j)+C(g*g))))));M=C(M*j);l=C(-M);g=C(g*j);j=C(n*j);n=C(C(C(ba*l)-C(ca*g))-C(aa*j));W=C(C(C(Ea*l)-C(fa*g))-C(da*j));l=C(C(C(la*l)-C(ma*g))-C(ka*j));c=C(C(ea*n)+C(C(u*W)+C(p*l)))>C(C(q*n)+C(C(r*W)+C(l*s)));l=c?ea:q;n=c?u:r;p=c?p:s;s=C(ga+C(C(ua*l)+C(C(Da*n)+C(X*p))));j=j>C(0)?o:C(-o);u=C(s-j);z[a+184>>2]=u;o=C(J+C(C(I*l)+C(C(Ca*n)+C(p*_))));g=g>C(0)?m:C(-m);r=C(o-g);z[a+180>>2]=r;l=C(na+C(C(oa*l)+C(C(Aa*n)+C(p*Ba))));m=M>C(0)?B:C(-B);q=C(l-m);z[a+176>>2]=q;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+160>>2]=0;v[a+164>>2]=0;v[a+168>>2]=0;v[a+172>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;z[a+120>>2]=s;z[a+116>>2]=o;z[a+112>>2]=l;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;z[a+56>>2]=j;z[a+52>>2]=g;z[a+48>>2]=m;g=C(-u);j=C(-r);l=C(-q);B=C(C(u*u)+C(C(q*q)+C(r*r)));m=z[A+24>>2];m=C((mda)){m=l;n=j;p=g;D=C(0);s=q;o=r;V=u;break b}_=C(m+V);fa=C(_*_);G=C(C(E*C(0))+G);O=C(C(L*C(0))+O);$=C(C($*C(0))+D);D=C(0);p=g;n=j;m=l;while(1){s=q;o=r;V=u;r=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));q=C(l*r);c=v[b+4>>2];L=z[c+56>>2];u=C(g*r);r=C(j*r);E=C(C(z[b+56>>2]*u)+C(C(q*z[b+24>>2])+C(r*z[b+40>>2])));J=z[c+48>>2];I=C(C(z[b+48>>2]*u)+C(C(q*z[b+16>>2])+C(r*z[b+32>>2])));M=C(C(z[b+52>>2]*u)+C(C(q*z[b+20>>2])+C(r*z[b+36>>2])));W=z[c+52>>2];ea=C(C(L*E)+C(C(J*I)+C(M*W)));X=z[c+72>>2];ga=C(X*E);E=z[c+64>>2];ua=C(E*I);I=z[c+68>>2];e=ea>C(ga+C(ua+C(M*I)));c=v[b+8>>2];L=e?L:X;E=e?J:E;M=e?W:I;W=C(z[c+48>>2]+C(C(z[c+32>>2]*L)+C(C(z[c>>2]*E)+C(M*z[c+16>>2]))));e=v[R+4>>2];J=z[e+48>>2];ka=q>2]+C(C(z[c+36>>2]*L)+C(C(z[c+4>>2]*E)+C(M*z[c+20>>2]))));I=z[e+52>>2];la=r>2]+C(C(z[c+40>>2]*L)+C(C(z[c+8>>2]*E)+C(M*z[c+24>>2]))));L=z[e+56>>2];L=uC(0)){e=0;na=z[k+328>>2];ga=C(u*na);u=z[k+320>>2];ea=r;r=z[k+324>>2];oa=C(ga+C(C(q*u)+C(ea*r)));if(oa>=C(0)){break a}q=D;D=C(q-C(ma/oa));if(D>q){if(D>C(1)){break a}p=z[k+408>>2];n=z[k+404>>2];m=z[k+400>>2];v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;q=C(m+C(u*D));m=C(q-G);B=C(m+z[a+80>>2]);z[a+80>>2]=B;u=C(n+C(r*D));n=C(u-O);G=C(n+z[a+84>>2]);z[a+84>>2]=G;r=C(p+C(na*D));p=C(r-$);O=C(p+z[a+88>>2]);z[a+88>>2]=O;$=C(m+z[a+64>>2]);z[a+64>>2]=$;E=C(n+z[a+68>>2]);z[a+68>>2]=E;J=C(p+z[a+72>>2]);z[a+72>>2]=J;m=C(m+z[a+48>>2]);z[a+48>>2]=m;n=C(n+z[a+52>>2]);z[a+52>>2]=n;p=C(p+z[a+56>>2]);z[a+56>>2]=p;I=z[a+112>>2];X=z[a+116>>2];ba=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=ba-p;z[a+180>>2]=X-n;z[a+176>>2]=I-m;m=z[a+128>>2];n=z[a+132>>2];p=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=p-J;z[a+196>>2]=n-E;z[a+192>>2]=m-$;m=z[a+144>>2];n=z[a+148>>2];p=z[a+152>>2];v[a+220>>2]=0;z[a+216>>2]=p-O;z[a+212>>2]=n-G;z[a+208>>2]=m-B;ca=C(L+r);E=C(M-ca);ba=C(la+u);I=C(aa-ba);X=C(ka+q);J=C(W-X);m=l;n=j;p=g;G=q;O=u;$=r;g=C(34028234663852886e22)}else{g=B}}else{g=B}L=g;e=v[a+240>>2];A=e<<4;c=A+(a+112|0)|0;v[c+12>>2]=0;z[c+8>>2]=M;z[c+4>>2]=aa;z[c>>2]=W;c=A+(a+48|0)|0;v[c+12>>2]=0;z[c+8>>2]=ca;z[c+4>>2]=ba;z[c>>2]=X;c=A+(a+176|0)|0;v[c+12>>2]=0;z[c+8>>2]=E;z[c+4>>2]=I;z[c>>2]=J;v[a+240>>2]=e+1;c:{d:{switch(e-1|0){case 0:q=z[a+184>>2];g=C(z[a+200>>2]-q);u=z[a+176>>2];j=C(z[a+192>>2]-u);r=z[a+180>>2];l=C(z[a+196>>2]-r);B=C(C(g*g)+C(C(j*j)+C(l*l)));if(B<=C(1.1920928955078125e-7)){v[a+240>>2]=1;c=v[a+180>>2];v[a+32>>2]=v[a+176>>2];v[a+36>>2]=c;c=v[a+188>>2];v[a+40>>2]=v[a+184>>2];v[a+44>>2]=c;break c}M=g;g=C(F(C(C(C(C(C(-u)*j)-C(l*r))-C(q*g))/B),C(1)));g=g>C(0)?g:C(0);z[a+40>>2]=q+C(M*g);z[a+36>>2]=r+C(l*g);z[a+32>>2]=u+C(j*g);break c;case 1:JV(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;case 2:N_(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;default:break d}}z[a+40>>2]=E;z[a+36>>2]=I;z[a+32>>2]=J}u=z[a+40>>2];g=C(-u);r=z[a+36>>2];j=C(-r);q=z[a+32>>2];l=C(-q);B=C(C(u*u)+C(C(q*q)+C(r*r)));if(fa>2]+32|0];E=C(0);G=C(0);A=!(B>da)|e;g=A?p:g;l=A?m:l;j=A?n:j;m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!(m<=C(1.1920928955078125e-7))){n=g;g=C(C(1)/m);pa=C(n*g);E=C(j*g);G=C(l*g)}v[d+268>>2]=0;z[d+264>>2]=-pa;z[d+260>>2]=-E;z[d+256>>2]=-G;z[d+240>>2]=D;v[d+252>>2]=v[a+252>>2];A=v[a+248>>2];v[d+244>>2]=v[a+244>>2];v[d+248>>2]=A;v[a+44>>2]=0;z[a+40>>2]=e?V:u;z[a+36>>2]=e?o:r;z[a+32>>2]=e?s:q;e=v[a+268>>2];R=v[a+264>>2];v[a+24>>2]=R;v[a+28>>2]=e;A=v[a+260>>2];x=v[a+256>>2];v[a+16>>2]=x;v[a+20>>2]=A;v[a+8>>2]=R;v[a+12>>2]=e;v[a>>2]=x;v[a+4>>2]=A;IV(a+176|0,a+112|0,a+48|0,a+32|0,a+16|0,a,v[a+240>>2]);g=z[v[b+4>>2]+16>>2];j=z[a+16>>2];l=z[a+20>>2];m=z[a+24>>2];v[d+284>>2]=0;z[d+280>>2]=m+(c?C(pa*g):C(-0));z[d+276>>2]=l+(c?C(E*g):C(-0));z[d+272>>2]=j+(c?C(G*g):C(-0));e=1}xa=a+272|0;if(e){a=v[d+244>>2];v[k+304>>2]=v[d+240>>2];v[k+308>>2]=a;a=v[d+252>>2];v[k+312>>2]=v[d+248>>2];v[k+316>>2]=a;if(z[d+240>>2]==C(0)){b=v[ja+4>>2];c=v[ta+4>>2];z[d+224>>2]=C(z[b+16>>2]+z[c+16>>2])*C(100);t[d+215|0]=0;v[d+168>>2]=0;v[d+172>>2]=0;v[d+160>>2]=0;v[d+164>>2]=0;v[d+152>>2]=0;v[d+156>>2]=0;v[d+144>>2]=0;v[d+148>>2]=0;v[d+136>>2]=0;v[d+140>>2]=0;v[d+128>>2]=0;v[d+132>>2]=0;v[d+192>>2]=0;a=v[ja+8>>2];v[d+56>>2]=a;v[d+48>>2]=142372;v[d+52>>2]=b;b=v[a+12>>2];v[d+72>>2]=v[a+8>>2];v[d+76>>2]=b;b=v[a+20>>2];v[d+80>>2]=v[a+16>>2];v[d+84>>2]=b;b=v[a+28>>2];v[d+88>>2]=v[a+24>>2];v[d+92>>2]=b;b=v[a+36>>2];v[d+96>>2]=v[a+32>>2];v[d+100>>2]=b;b=v[a+44>>2];v[d+104>>2]=v[a+40>>2];v[d+108>>2]=b;b=v[a+52>>2];v[d+112>>2]=v[a+48>>2];v[d+116>>2]=b;b=v[a+60>>2];v[d+120>>2]=v[a+56>>2];v[d+124>>2]=b;b=v[a+4>>2];v[d+64>>2]=v[a>>2];v[d+68>>2]=b;g=z[d+68>>2];z[d+68>>2]=z[d+80>>2];j=z[d+88>>2];l=z[d+72>>2];z[d+72>>2]=z[d+96>>2];z[d+80>>2]=g;z[d+96>>2]=l;z[d+88>>2]=z[d+100>>2];z[d+100>>2]=j;v[d+40>>2]=141808;v[d+44>>2]=c;A=d+220|0;R=d+216|0;c=xa-320|0;xa=c;y=v[d+44>>2];g=z[y+20>>2];a=v[d+52>>2];j=z[a+20>>2];p=z[d+224>>2];Y=w[a+32|0];u=z[a+16>>2];Fa=w[y+32|0];r=z[y+16>>2];v[c+44>>2]=0;$=C((g>2];a=0;f=0;while(1){b=f<<2;N=w[f+A|0];v[b+(c- -64|0)>>2]=N;S=w[f+R|0];v[b+(c+48|0)>>2]=S;b=(1-N<<4)+Ga|0;g=z[b+8>>2];j=z[b>>2];l=z[b+4>>2];b=(S<<4)+101152|0;Ha=v[b>>2];Ia=v[b+4>>2];Ja=v[b+8>>2];q=z[x+48>>2];s=z[x+32>>2];B=z[x>>2];V=z[x+16>>2];D=z[x+52>>2];G=z[x+36>>2];O=z[x+4>>2];L=z[x+20>>2];E=z[x+56>>2];J=z[x+40>>2];I=z[x+8>>2];_=z[x+24>>2];m=z[y+48>>2];o=z[y+52>>2];n=z[y+56>>2];b=a;H=a<<4;N=H+(c+144|0)|0;v[N+12>>2]=0;S=H+(c+80|0)|0;v[S+12>>2]=0;H=H+(c+208|0)|0;v[H+12>>2]=0;n=Ja?n:C(-n);z[S+8>>2]=n;o=Ia?o:C(-o);z[S+4>>2]=o;m=Ha?m:C(-m);z[S>>2]=m;E=C(E+C(C(J*g)+C(C(I*j)+C(l*_))));z[N+8>>2]=E;D=C(D+C(C(G*g)+C(C(O*j)+C(l*L))));z[N+4>>2]=D;g=C(q+C(C(s*g)+C(C(B*j)+C(l*V))));z[N>>2]=g;j=C(E-n);z[H+8>>2]=j;l=C(D-o);z[H+4>>2]=l;g=C(g-m);z[H>>2]=g;a=a+1|0;v[c+44>>2]=a;f=f+1|0;if((za|0)!=(f|0)){continue}break}k:{l:{switch(b-1|0){case 0:m=z[c+216>>2];g=C(z[c+232>>2]-m);o=z[c+208>>2];j=C(z[c+224>>2]-o);n=z[c+212>>2];l=C(z[c+228>>2]-n);q=C(C(g*g)+C(C(j*j)+C(l*l)));if(!(q<=C(1.1920928955078125e-7))){break k}v[c+44>>2]=1;a=v[c+212>>2];v[c+16>>2]=v[c+208>>2];v[c+20>>2]=a;a=v[c+220>>2];v[c+24>>2]=v[c+216>>2];v[c+28>>2]=a;break i;case 1:iY(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break i;case 2:break l;default:break j}}P_(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break i}v[c+28>>2]=0;s=g;g=C(F(C(C(C(C(C(-o)*j)-C(l*n))-C(m*g))/q),C(1)));g=g>C(0)?g:C(0);z[c+24>>2]=m+C(s*g);z[c+20>>2]=n+C(l*g);z[c+16>>2]=o+C(j*g);break i}g=z[f+8>>2];l=z[f>>2];j=z[f+4>>2];v[c+284>>2]=0;a=C(C(g*g)+C(C(l*l)+C(j*j)))>C(0);g=a?g:C(0);z[c+280>>2]=g;j=a?j:C(0);z[c+276>>2]=j;l=a?l:C(1);z[c+272>>2]=l;o=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));q=C(g*o);s=C(l*o);m=C(34028234663852886e22);o=C(j*o);break h}v[c+28>>2]=0;z[c+24>>2]=j;z[c+20>>2]=l;z[c+16>>2]=g}a=v[c+20>>2];v[c+272>>2]=v[c+16>>2];v[c+276>>2]=a;a=v[c+28>>2];v[c+280>>2]=v[c+24>>2];v[c+284>>2]=a;g=z[c+280>>2];l=z[c+272>>2];j=z[c+276>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!($>2]=v[c+312>>2];a=v[c+308>>2];v[c+288>>2]=v[c+304>>2];v[c+292>>2]=a;a=v[d+56>>2];E=z[c+284>>2];f=v[c+44>>2];y=f<<2;b=v[d+52>>2];N=b+56|0;m=C(-l);r=C(C(C(z[d+72>>2]*m)-C(z[d+88>>2]*j))-C(z[d+104>>2]*g));p=g;G=C(C(C(z[d+64>>2]*m)-C(z[d+80>>2]*j))-C(z[d+96>>2]*g));u=j;m=C(C(C(z[d+68>>2]*m)-C(z[d+84>>2]*j))-C(z[d+100>>2]*g));S=b+52|0;H=b+72|0;Y=b+68|0;x=C(C(z[N>>2]*r)+C(C(z[b+48>>2]*G)+C(m*z[S>>2])))>C(C(z[H>>2]*r)+C(C(z[b+64>>2]*G)+C(m*z[Y>>2])));v[y+(c- -64|0)>>2]=x;m=z[(x?N:H)>>2];G=z[(x?b+48|0:b- -64|0)>>2];O=z[(x?S:Y)>>2];J=z[a+56>>2];I=z[a+40>>2];_=z[a+24>>2];M=z[a+52>>2];W=z[a+36>>2];X=z[a+20>>2];aa=z[a+8>>2];ba=z[a+48>>2];ca=z[a+32>>2];pa=z[a>>2];da=z[a+16>>2];b=v[d+44>>2];fa=z[a+4>>2];H=y+(c+48|0)|0;r=l;x=l>C(0);a=j>C(0);y=g>C(0);v[H>>2]=x|a<<1|y<<2;J=C(J+C(C(I*m)+C(C(aa*G)+C(O*_))));g=z[b+56>>2];I=y?g:C(-g);g=C(J-I);_=C(ba+C(C(ca*m)+C(C(pa*G)+C(O*da))));j=z[b+48>>2];aa=x?j:C(-j);j=C(_-aa);m=C(M+C(C(W*m)+C(C(fa*G)+C(O*X))));l=z[b+52>>2];G=a?l:C(-l);l=C(m-G);O=C(C(q*g)+C(C(s*j)+C(o*l)));if(O>L){a=0;if(!A){break e}t[d+215|0]=f;if(!f){break e}b=0;if((f|0)!=1){S=f&-2;x=0;while(1){y=b<<2;H=c- -64|0;t[b+A|0]=v[y+H>>2];Y=c+48|0;t[b+R|0]=v[Y+y>>2];y=b|1;N=y<<2;t[A+y|0]=v[N+H>>2];t[y+R|0]=v[N+Y>>2];b=b+2|0;x=x+2|0;if((S|0)!=(x|0)){continue}break}}if(!(f&1)){break e}f=b<<2;t[b+A|0]=v[f+(c- -64|0)>>2];t[b+R|0]=v[f+(c+48|0)>>2];break e}if(O>C(n*C(.9997749924659729))){m:{if(!A){break m}t[d+215|0]=f;if(!f){break m}b=0;if((f|0)!=1){N=f&-2;x=0;while(1){a=b<<2;S=c- -64|0;t[b+A|0]=v[a+S>>2];H=c+48|0;t[b+R|0]=v[H+a>>2];a=b|1;y=a<<2;t[a+A|0]=v[y+S>>2];t[a+R|0]=v[y+H>>2];b=b+2|0;x=x+2|0;if((N|0)!=(x|0)){continue}break}}if(!(f&1)){break m}a=b<<2;t[b+A|0]=v[a+(c- -64|0)>>2];t[b+R|0]=v[a+(c+48|0)>>2]}z[d+160>>2]=s;v[d+172>>2]=0;z[d+168>>2]=q;z[d+164>>2]=o;IV(c+208|0,c+144|0,c+80|0,c+272|0,c+16|0,c,f);g=z[c+16>>2];j=z[c+20>>2];l=z[c+24>>2];v[d+140>>2]=0;z[d+136>>2]=l-C(B*q);z[d+132>>2]=j-C(B*o);z[d+128>>2]=g-C(B*s);g=z[c>>2];j=z[c+4>>2];l=z[c+8>>2];v[d+156>>2]=0;z[d+152>>2]=l+C(V*q);z[d+148>>2]=j+C(V*o);z[d+144>>2]=g+C(V*s);z[d+192>>2]=n-D;a=2;break e}b=f<<4;a=b+(c+144|0)|0;v[a+12>>2]=0;z[a+8>>2]=J;z[a+4>>2]=m;z[a>>2]=_;a=b+(c+80|0)|0;v[a+12>>2]=0;z[a+8>>2]=I;z[a+4>>2]=G;z[a>>2]=aa;a=b+(c+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=g;z[a+4>>2]=l;z[a>>2]=j;v[c+44>>2]=f+1;n:{o:{switch(f-1|0){case 0:m=z[c+216>>2];g=C(z[c+232>>2]-m);o=z[c+208>>2];j=C(z[c+224>>2]-o);q=z[c+212>>2];l=C(z[c+228>>2]-q);s=C(C(g*g)+C(C(j*j)+C(l*l)));if(s<=C(1.1920928955078125e-7)){v[c+44>>2]=1;a=v[c+212>>2];v[c+16>>2]=v[c+208>>2];v[c+20>>2]=a;a=v[c+220>>2];v[c+24>>2]=v[c+216>>2];v[c+28>>2]=a;break n}v[c+28>>2]=0;G=g;g=C(F(C(C(C(C(C(-o)*j)-C(l*q))-C(m*g))/s),C(1)));g=g>C(0)?g:C(0);z[c+24>>2]=m+C(G*g);z[c+20>>2]=q+C(l*g);z[c+16>>2]=o+C(j*g);break n;case 1:iY(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break n;case 2:P_(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break n;default:break o}}v[c+28>>2]=0;z[c+24>>2]=g;z[c+20>>2]=l;z[c+16>>2]=j}a=v[c+20>>2];v[c+272>>2]=v[c+16>>2];v[c+276>>2]=a;a=v[c+28>>2];v[c+280>>2]=v[c+24>>2];v[c+284>>2]=a;g=z[c+280>>2];l=z[c+272>>2];j=z[c+276>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));s=C(C(1)/m);q=C(g*s);o=C(j*s);s=C(l*s);if(m$){continue}break}f=v[c+44>>2];if(!(m>2];Y=c+48|0;t[b+R|0]=v[Y+y>>2];y=b|1;N=y<<2;t[A+y|0]=v[N+H>>2];t[y+R|0]=v[N+Y>>2];b=b+2|0;a=a+2|0;if((S|0)!=(a|0)){continue}break}}if(!(x&1)){break p}a=b<<2;t[b+A|0]=v[a+(c- -64|0)>>2];t[b+R|0]=v[a+(c+48|0)>>2]}v[c+312>>2]=v[c+296>>2];a=v[c+292>>2];v[c+304>>2]=v[c+288>>2];v[c+308>>2]=a;z[c+284>>2]=E;z[c+272>>2]=r;z[c+276>>2]=u;z[c+280>>2]=p;IV(c+208|0,c+144|0,c+80|0,c+272|0,c+16|0,c,f);v[d+188>>2]=0;z[d+184>>2]=q;z[d+180>>2]=o;z[d+176>>2]=s;v[d+172>>2]=0;g=C(C(1)/n);j=C(p*g);z[d+168>>2]=j;l=C(u*g);z[d+164>>2]=l;g=C(r*g);z[d+160>>2]=g;m=z[c+16>>2];o=z[c+20>>2];p=z[c+24>>2];v[d+140>>2]=0;z[d+136>>2]=p-C(B*j);z[d+132>>2]=o-C(B*l);z[d+128>>2]=m-C(B*g);m=z[c>>2];o=z[c+4>>2];p=z[c+8>>2];z[d+192>>2]=n-D;v[d+156>>2]=0;z[d+152>>2]=p+C(V*j);z[d+148>>2]=o+C(V*l);z[d+144>>2]=m+C(V*g);a=2;if(n<=D){break e}a=4;break e}if(A){break f}a=5;break e}f=v[c+44>>2]}t[d+215|0]=f;a=5;if(!f){break e}b=0;if((f|0)!=1){S=f&-2;x=0;while(1){y=b<<2;H=c- -64|0;t[b+A|0]=v[y+H>>2];Y=c+48|0;t[b+R|0]=v[Y+y>>2];y=b|1;N=y<<2;t[A+y|0]=v[N+H>>2];t[y+R|0]=v[N+Y>>2];b=b+2|0;x=x+2|0;if((S|0)!=(x|0)){continue}break}}if(!(f&1)){break e}f=b<<2;t[b+A|0]=v[f+(c- -64|0)>>2];t[b+R|0]=v[f+(c+48|0)>>2]}xa=c+320|0;q:{r:{if(a-5|0){break r}v[d+16>>2]=1065353216;a=v[d+28>>2];v[d+8>>2]=v[d+24>>2];v[d+12>>2]=a;a=v[d+20>>2];v[d>>2]=v[d+16>>2];v[d+4>>2]=a;if(J_(ja,ta,d+220|0,d+216|0,w[d+215|0],0,d,d+128|0)-5>>>0<=1){break r}v[d+280>>2]=0;v[d+284>>2]=0;v[d+272>>2]=0;v[d+276>>2]=0;g=z[k+328>>2];j=z[k+320>>2];l=z[k+324>>2];v[d+268>>2]=0;m=C(C(1)/C(K(C(C(g*g)+C(C(j*j)+C(l*l))))));z[d+264>>2]=m*C(-g);z[d+260>>2]=m*C(-l);z[d+256>>2]=m*C(-j);g=C(0);break q}a=v[d+140>>2];v[d+280>>2]=v[d+136>>2];v[d+284>>2]=a;a=v[d+132>>2];v[d+272>>2]=v[d+128>>2];v[d+276>>2]=a;a=v[d+164>>2];v[d+256>>2]=v[d+160>>2];v[d+260>>2]=a;a=v[d+172>>2];v[d+264>>2]=v[d+168>>2];v[d+268>>2]=a;g=z[d+192>>2]}z[k+304>>2]=g>2];v[k+288>>2]=v[d+272>>2];v[k+292>>2]=a;a=v[d+284>>2];v[k+296>>2]=v[d+280>>2];v[k+300>>2]=a;a=v[d+260>>2];v[k+272>>2]=v[d+256>>2];v[k+276>>2]=a;a=v[d+268>>2];v[k+280>>2]=v[d+264>>2];v[k+284>>2]=a}xa=d+288|0;if(e){ia=z[k+304>>2];g=z[k+296>>2];j=z[k+288>>2];l=z[k+292>>2];m=z[k+280>>2];o=z[k+272>>2];n=z[k+276>>2];p=C(C(Q*m)+C(C(U*o)+C(P*n)));q=C(-P);s=C(C(C(T*C(C(U*n)+C(o*q)))+C(Z*m))+C(Q*p));z[h+8>>2]=s+s;s=C(C(P*p)+C(C(Z*n)+C(T*C(C(Q*o)+C(m*ha)))));z[h+4>>2]=s+s;r=n;n=C(-Q);m=C(C(U*p)+C(C(Z*o)+C(T*C(C(P*m)+C(r*n)))));z[h>>2]=m+m;m=ia>C(0)?ia:C(0);o=C(C(Q*g)+C(C(U*j)+C(P*l)));p=C(C(C(T*C(C(U*l)+C(j*q)))+C(Z*g))+C(Q*o));z[i+8>>2]=C(va*m)+C(ra+C(p+p));p=C(C(P*o)+C(C(Z*l)+C(T*C(C(Q*j)+C(g*ha)))));z[i+4>>2]=C(ya*m)+C(qa+C(p+p));g=C(C(U*o)+C(C(Z*j)+C(T*C(C(P*g)+C(l*n)))));z[i>>2]=C(wa*m)+C(sa+C(g+g))}xa=k+416|0;return C(ia)}function yz(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,A=0,D=0,E=0,F=0,G=0,H=C(0),I=C(0),J=0,K=0,L=0,M=0,N=0,O=0;A=xa-32|0;xa=A;b=v[a+28>>2];c=v[b+336>>2];f=v[c>>2];if(f){v[c>>2]=v[f>>2]}if(!f){c=v[37696];d=c+12|0;d=(K=d,L=12195,M=Ba[v[v[c>>2]+20>>2]](c)|0?26947:63804,N=19395,O=82,J=v[v[d>>2]+8>>2],Ba[J](K|0,L|0,M|0,N|0,O|0)|0);c=d+19&-16;v[c-4>>2]=c-d;f=gB(c,v[b+340>>2])}c=v[a+32>>2];v[c>>2]=f;v[f+12092>>2]=0;v[f+12112>>2]=0;v[f+12116>>2]=0;v[f+11968>>2]=0;v[f+12128>>2]=0;v[f+11956>>2]=0;v[f+11868>>2]=0;v[f+11872>>2]=0;b=f+11876|0;v[b>>2]=0;v[b+4>>2]=0;b=f+11884|0;v[b>>2]=0;v[b+4>>2]=0;v[f+12140>>2]=v[f+11976>>2];b=v[a+68>>2];v[f+11952>>2]=b;d=v[a+72>>2];v[f+12132>>2]=b;v[f+11960>>2]=d;v[f+11972>>2]=v[a+76>>2];v[f+11964>>2]=v[a+80>>2];v[f+11940>>2]=v[a+84>>2];v[f+11928>>2]=v[a+88>>2];v[f+11932>>2]=v[a+36>>2];v[f+11936>>2]=v[a+40>>2];v[f+11944>>2]=v[a+60>>2];v[f+11948>>2]=v[a- -64>>2];hB(f,v[v[a+28>>2]+112>>2]?v[c+12>>2]:0,v[c+8>>2]&2147483647);k=v[a+52>>2];c=v[a+100>>2];b=v[f+11948>>2];d=v[f+11944>>2];h=v[f+11932>>2];n=v[f+11928>>2];g=v[a+56>>2];if(g){i=v[f+11936>>2];while(1){f=v[v[c+256>>2]+B(v[k+(j<<2)>>2],44)>>2];if(f>>>0<=4294967167){while(1){m=f>>>7|0;f=v[c+184>>2]+B(m,24)|0;a:{if(w[f+5|0]==1){v[i+(e<<2)>>2]=v[f+20>>2];e=e+1|0;break a}v[b+(l<<2)>>2]=m;l=l+1|0}f=v[f+8>>2];if(f>>>0<4294967168){continue}break}}j=j+1|0;if((g|0)!=(j|0)){continue}break}}if(w[a+116|0]){zz(b,l)}if(l){f=0;while(1){e=f<<2;i=v[e+b>>2]&33554431;j=v[(v[c+184>>2]+B(i,24)|0)+20>>2];v[e+h>>2]=j;v[e+n>>2]=v[j+36>>2];v[d+(v[v[c+196>>2]+(i<<2)>>2]<<2)>>2]=f;f=f+1|0;if((l|0)!=(f|0)){continue}break}}n=v[a+48>>2];b:{if(!g){l=0;break b}l=0;e=0;while(1){f=v[(v[c+256>>2]+B(v[k+(e<<2)>>2],44)|0)+20>>2];if((f|0)!=-1){while(1){j=v[c+228>>2];b=(f>>>0)/(j>>>0)|0;m=f-B(b,j)|0;o=v[v[c+208>>2]+(b<<2)>>2];j=v[a+100>>2];h=v[j+148>>2];b=(f>>>0)/(h>>>0)|0;i=v[v[v[j+128>>2]+(b<<2)>>2]+(f-B(b,h)<<2)>>2];c:{if(!i){break c}b=v[c+616>>2];h=v[b>>2];f=f<<1;j=f|1;b=v[b+20>>2];r=(j>>>0)/(b>>>0)|0;j=v[v[h+(r<<2)>>2]+(j-B(b,r)<<2)>>2];r=(f>>>0)/(b>>>0)|0;f=v[v[h+(r<<2)>>2]+(f-B(b,r)<<2)>>2];b=n+(l<<4)|0;v[b+12>>2]=i;h=f>>>7|0;i=v[c+184>>2]+B(h,24)|0;d:{if(w[i+5|0]==1){h=v[i+20>>2];Ba[v[v[h>>2]+188>>2]](h,f>>>1&63,b,b+8|0);break d}if(w[i+4|0]&4){t[b+8|0]=1;v[b>>2]=v[v[c+196>>2]+(h<<2)>>2];break d}t[b+8|0]=0;v[b>>2]=v[d+(v[v[c+196>>2]+(h<<2)>>2]<<2)>>2]}l=l+1|0;if(j>>>0>=4294967168){t[b+9|0]=3;break c}f=j>>>7|0;h=v[c+184>>2]+B(f,24)|0;if(w[h+5|0]==1){f=v[h+20>>2];Ba[v[v[f>>2]+188>>2]](f,j>>>1&63,b+4|0,b+9|0);break c}if(w[h+4|0]&4){t[b+9|0]=1;v[b+4>>2]=v[v[c+196>>2]+(f<<2)>>2];break c}t[b+9|0]=0;v[b+4>>2]=v[d+(v[v[c+196>>2]+(f<<2)>>2]<<2)>>2]}f=v[(o+(m<<4)|0)+8>>2];if((f|0)!=-1){continue}break}}e=e+1|0;if((g|0)!=(e|0)){continue}break}}if(w[a+116|0]){d=0;j=0;e=0;r=32;i=xa-32|0;xa=i;t[i+12|0]=0;c=i-128|0;xa=c;v[i+8>>2]=c;f=l-1|0;e:{if((f|0)<=0){break e}while(1){f:{if((f|0)<=(d|0)){break f}while(1){if(f-d>>>0<=4){while(1){k=d;d=d+1|0;b=d;g=k;while(1){h=b;b=v[(n+(b<<4)|0)+12>>2];m=v[b+56>>2];o=v[(n+(g<<4)|0)+12>>2];q=v[o+56>>2];if(!(m>>>0>=q>>>0&((m|0)!=(q|0)|y[b+60>>2]>=y[o+60>>2]))){g=h}b=h+1|0;if((f|0)>(h|0)){continue}break}if((g|0)!=(k|0)){b=n+(g<<4)|0;g=v[b+12>>2];v[i+24>>2]=v[b+8>>2];v[i+28>>2]=g;g=v[b+4>>2];v[i+16>>2]=v[b>>2];v[i+20>>2]=g;g=n+(k<<4)|0;k=v[g+12>>2];v[b+8>>2]=v[g+8>>2];v[b+12>>2]=k;k=v[g+4>>2];v[b>>2]=v[g>>2];v[b+4>>2]=k;b=v[i+28>>2];v[g+8>>2]=v[i+24>>2];v[g+12>>2]=b;b=v[i+20>>2];v[g>>2]=v[i+16>>2];v[g+4>>2]=b}if((f|0)!=(d|0)){continue}break f}}h=n+((f+d|0)/2<<4)|0;k=v[h+12>>2];b=v[k+56>>2];m=n+(d<<4)|0;q=v[m+12>>2];g=v[q+56>>2];g:{if(b>>>0>=g>>>0){if((b|0)!=(g|0)){b=g;break g}if(y[k+60>>2]>=y[q+60>>2]){break g}}b=v[m+12>>2];v[i+24>>2]=v[m+8>>2];v[i+28>>2]=b;b=v[m+4>>2];v[i+16>>2]=v[m>>2];v[i+20>>2]=b;b=v[h+12>>2];v[m+8>>2]=v[h+8>>2];v[m+12>>2]=b;b=v[h+4>>2];v[m>>2]=v[h>>2];v[m+4>>2]=b;b=v[i+28>>2];v[h+8>>2]=v[i+24>>2];v[h+12>>2]=b;b=v[i+20>>2];v[h>>2]=v[i+16>>2];v[h+4>>2]=b;q=v[m+12>>2];b=v[q+56>>2]}o=n+(f<<4)|0;g=v[o+12>>2];k=v[g+56>>2];h:{if(k>>>0>=b>>>0){if((b|0)!=(k|0)){b=k;break h}if(y[g+60>>2]>=y[q+60>>2]){break h}}b=v[m+12>>2];v[i+24>>2]=v[m+8>>2];v[i+28>>2]=b;b=v[m+4>>2];v[i+16>>2]=v[m>>2];v[i+20>>2]=b;b=v[o+12>>2];v[m+8>>2]=v[o+8>>2];v[m+12>>2]=b;b=v[o+4>>2];v[m>>2]=v[o>>2];v[m+4>>2]=b;b=v[i+28>>2];v[o+8>>2]=v[i+24>>2];v[o+12>>2]=b;b=v[i+20>>2];v[o>>2]=v[i+16>>2];v[o+4>>2]=b;g=v[o+12>>2];b=v[g+56>>2]}k=v[h+12>>2];m=v[k+56>>2];if(!(m>>>0<=b>>>0&((b|0)!=(m|0)|y[g+60>>2]>=y[k+60>>2]))){b=v[h+12>>2];v[i+24>>2]=v[h+8>>2];v[i+28>>2]=b;b=v[h+4>>2];v[i+16>>2]=v[h>>2];v[i+20>>2]=b;b=v[o+12>>2];v[h+8>>2]=v[o+8>>2];v[h+12>>2]=b;b=v[o+4>>2];v[h>>2]=v[o>>2];v[h+4>>2]=b;b=v[i+28>>2];v[o+8>>2]=v[i+24>>2];v[o+12>>2]=b;b=v[i+20>>2];v[o>>2]=v[i+16>>2];v[o+4>>2]=b}b=v[h+12>>2];v[i+24>>2]=v[h+8>>2];v[i+28>>2]=b;b=v[h+4>>2];v[i+16>>2]=v[h>>2];v[i+20>>2]=b;g=f-1|0;m=n+(g<<4)|0;b=m;k=v[b+4>>2];v[h>>2]=v[b>>2];v[h+4>>2]=k;k=v[b+12>>2];v[h+8>>2]=v[b+8>>2];v[h+12>>2]=k;b=v[i+28>>2];v[m+8>>2]=v[i+24>>2];v[m+12>>2]=b;b=v[i+20>>2];v[m>>2]=v[i+16>>2];v[m+4>>2]=b;b=d;while(1){p=v[m+12>>2];q=v[p+56>>2];while(1){k=b;b=b+1|0;h=n+(b<<4)|0;o=v[h+12>>2];s=v[o+56>>2];if(s>>>0>>0|(q|0)==(s|0)&y[o+60>>2]>2]){continue}break}while(1){g=g-1|0;o=n+(g<<4)|0;s=v[o+12>>2];D=v[s+56>>2];if(D>>>0>q>>>0|(q|0)==(D|0)&y[p+60>>2]>2]){continue}break}if((b|0)<(g|0)){k=v[h+12>>2];v[i+24>>2]=v[h+8>>2];v[i+28>>2]=k;k=v[h+4>>2];v[i+16>>2]=v[h>>2];v[i+20>>2]=k;k=v[o+12>>2];v[h+8>>2]=v[o+8>>2];v[h+12>>2]=k;k=v[o+4>>2];v[h>>2]=v[o>>2];v[h+4>>2]=k;k=v[i+28>>2];v[o+8>>2]=v[i+24>>2];v[o+12>>2]=k;k=v[i+20>>2];v[o>>2]=v[i+16>>2];v[o+4>>2]=k;continue}break}g=v[h+12>>2];v[i+24>>2]=v[h+8>>2];v[i+28>>2]=g;g=v[h+4>>2];v[i+16>>2]=v[h>>2];v[i+20>>2]=g;g=v[m+12>>2];v[h+8>>2]=v[m+8>>2];v[h+12>>2]=g;g=v[m+4>>2];v[h>>2]=v[m>>2];v[h+4>>2]=g;g=v[i+28>>2];v[m+8>>2]=v[i+24>>2];v[m+12>>2]=g;g=v[i+20>>2];v[m>>2]=v[i+16>>2];v[m+4>>2]=g;i:{if((b-d|0)<(f-b|0)){if(r-1>>>0<=j>>>0){g=r<<3;if(g){b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?33561:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g,h,17218,155)|0}else{b=0}r=r<<1;b=H9(b,c,j<<2);g=e;e=1;if(!(!g|!c)){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,c)}c=b}b=(j<<2)+c|0;v[b>>2]=d;v[b+4>>2]=k;d=k+2|0;break i}if(r-1>>>0<=j>>>0){g=r<<3;if(g){b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?33561:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g,h,17218,155)|0}else{b=0}r=r<<1;b=H9(b,c,j<<2);g=e;e=1;if(!(!g|!c)){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,c)}c=b}b=(j<<2)+c|0;v[b>>2]=k+2;v[b+4>>2]=f;f=k}j=j+2|0;if((f|0)>(d|0)){continue}break}}if(j){b=j-2|0;d=v[(b<<2)+c>>2];f=v[((j<<2)+c|0)-4>>2];j=b;continue}break}if(!e|!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(w[i+12|0]){u9(v[i+8>>2])}xa=i+32|0}v[v[a+32>>2]+12>>2]=l;xa=A+32|0;c=v[a+28>>2];b=c;H=z[b+52>>2];d=v[a+32>>2];e=v[d>>2];h=v[e+11928>>2];n=v[a+36>>2];i=v[e+11948>>2];j=v[a+92>>2];g=v[b+440>>2]+(j<<5)|0;m=v[b+452>>2]+B(j,112)|0;o=e+12112|0;r=e+12116|0;j=v[a+20>>2];l=0;f=v[d+4>>2];c=f+255|0;if(c>>>0>=256){k=c>>>8|0;e=k;while(1){c=k-l|0;c=c>>>0<64?c:64;q=vr(v[b+584>>2],B(c,88));if(c){p=e>>>0<64?e:64;d=0;while(1){A=v[b+604>>2];s=v[b+600>>2];c=q+B(d,88)|0;v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=s;v[c+12>>2]=A;A=d+l<<8;v[c+68>>2]=A;v[c+64>>2]=r;v[c+60>>2]=o;v[c+56>>2]=f;z[c+52>>2]=H;v[c+48>>2]=m;v[c+44>>2]=g;v[c+40>>2]=i;v[c+36>>2]=n;v[c+32>>2]=h;v[c+28>>2]=b;v[c>>2]=128288;A=f-A|0;v[c+72>>2]=A>>>0<256?A:256;z[c+76>>2]=z[b+68>>2];z[c+80>>2]=z[b+72>>2];I=z[b+76>>2];v[c+24>>2]=1;z[c+84>>2]=I;v[c+20>>2]=j;Ba[v[v[j>>2]+16>>2]](j);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);d=d+1|0;if((p|0)!=(d|0)){continue}break}}e=e+-64|0;l=l- -64|0;if(k>>>0>l>>>0){continue}break}}I9(g,0,f<<5);k=0;m=xa-32|0;xa=m;n=a;i=v[v[a+32>>2]>>2];c=v[i+12132>>2];o=v[a+56>>2];if(o){r=v[n+52>>2];j=v[n+100>>2];while(1){d=v[(v[j+256>>2]+B(v[r+(k<<2)>>2],44)|0)+24>>2];if((d|0)!=-1){while(1){a=v[n+100>>2];e=v[a+148>>2];b=(d>>>0)/(e>>>0)|0;q=v[v[v[a+128>>2]+(b<<2)>>2]+(d-B(b,e)<<2)>>2];e=v[j+228>>2];b=(d>>>0)/(e>>>0)|0;p=B(b,e);A=v[v[j+208>>2]+(b<<2)>>2];g=v[n+92>>2];h=v[n+104>>2];b=v[n+28>>2];e=d<<1;l=v[a+616>>2];s=v[l+20>>2];f=(e>>>0)/(s>>>0)|0;f=v[v[v[l>>2]+(f<<2)>>2]+(e-B(f,s)<<2)>>2];j:{if(f>>>0>=4294967168){v[c+12>>2]=0;u[c+8>>1]=65535;v[c>>2]=b+192;break j}s=f>>>7|0;l=v[a+184>>2]+B(s,24)|0;if(w[l+5|0]==1){l=v[l+20>>2];f=f>>>1&63;Ba[v[v[l>>2]+188>>2]](l,f,m+24|0,m+16|0);if(w[m+16|0]==2){v[c>>2]=l;u[c+8>>1]=f;break j}v[c+12>>2]=0;v[c>>2]=b+192;u[c+8>>1]=65535;break j}f=v[v[a+196>>2]+(s<<2)>>2];s=v[b+440>>2];f=w[l+4|0]&4?f:g+v[h+(f<<2)>>2]|0;v[c+12>>2]=f+1;u[c+8>>1]=65535;v[c>>2]=s+(f<<5)}l=d-p|0;d=e|1;f=v[a+616>>2];p=v[f+20>>2];e=(d>>>0)/(p>>>0)|0;d=v[v[v[f>>2]+(e<<2)>>2]+(d-B(e,p)<<2)>>2];k:{if(d>>>0>=4294967168){v[c+16>>2]=0;u[c+10>>1]=65535;v[c+4>>2]=b+192;break k}e=d>>>7|0;f=v[a+184>>2]+B(e,24)|0;if(w[f+5|0]==1){e=v[f+20>>2];a=d>>>1&63;Ba[v[v[e>>2]+188>>2]](e,a,m+24|0,m+16|0);if(w[m+16|0]!=2){v[c+16>>2]=0;e=b+192|0;a=65535}u[c+10>>1]=a;v[c+4>>2]=e;break k}e=v[v[a+196>>2]+(e<<2)>>2];a=v[b+440>>2];e=w[f+4|0]&4?e:g+v[h+(e<<2)>>2]|0;v[c+16>>2]=e+1;u[c+10>>1]=65535;v[c+4>>2]=a+(e<<5)}u[c+22>>1]=2;v[c+24>>2]=q;c=c+32|0;d=v[(A+(l<<4)|0)+8>>2];if((d|0)!=-1){continue}break}}k=k+1|0;if((o|0)!=(k|0)){continue}break}a=v[i+12132>>2]}else{a=c}Az(a,c-a>>5);v[i+12016>>2]=0;e=v[n+32>>2];d=v[e+12>>2];if(d>>>0>(v[i+12020>>2]&2147483647)>>>0){Bz(i+12012|0,d);e=v[n+32>>2];d=v[e+12>>2]}v[i+12016>>2]=d;v[i+12028>>2]=0;g=i+12024|0;if((v[i+12032>>2]&2147483647)>>>0>>0){Bz(g,d);e=v[n+32>>2];d=v[e+12>>2]}v[i+12028>>2]=d;v[i+12004>>2]=0;l:{if(!d){break l}r=v[i+12012>>2];v[i+12040>>2]=0;a=v[v[n+28>>2]+532>>2];v[m+28>>2]=0;v[m+24>>2]=a;f=i+12036|0;a=(a+v[e+4>>2]|0)+1|0;if(a>>>0>(v[i+12044>>2]&2147483647)>>>0){zw(f,a)}v[i+12040>>2]=a;d=0;o=a<<2;I9(v[i+12036>>2],0,o);b=0;h=v[n+32>>2];a=v[h+12>>2];if(a){j=v[n+48>>2];e=0;b=a;while(1){a=j+(e<<4)|0;k=w[a+8|0];if(!((k|0)==2|w[a+9|0]==2)){a=v[f>>2]+(v[(m+24|0)+(k<<2)>>2]+v[a>>2]<<2)|0;v[a>>2]=v[a>>2]+1;b=v[h+12>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}e=v[i+12040>>2];if(e){b=e&3;a=v[f>>2];k=0;if(e-1>>>0>=3){q=e&-4;j=0;while(1){l=a+(e<<2)|0;p=l-4|0;A=v[p>>2];v[p>>2]=d;p=l-8|0;s=v[p>>2];d=d+A|0;v[p>>2]=d;l=l-12|0;p=v[l>>2];d=d+s|0;v[l>>2]=d;e=e-4|0;l=a+(e<<2)|0;A=v[l>>2];d=d+p|0;v[l>>2]=d;d=d+A|0;j=j+4|0;if((q|0)!=(j|0)){continue}break}}if(b){while(1){e=e-1|0;j=a+(e<<2)|0;l=v[j>>2];v[j>>2]=d;d=d+l|0;k=k+1|0;if((b|0)!=(k|0)){continue}break}}b=v[h+12>>2]}if(b){e=0;while(1){a=v[n+48>>2]+(e<<4)|0;b=w[a+8|0];m:{if(!((b|0)==2|w[a+9|0]==2)){j=v[f>>2]+(v[(m+24|0)+(b<<2)>>2]+v[a>>2]<<2)|0;b=v[j>>2];v[j>>2]=b+1;break m}b=d;d=b+1|0}v[v[g>>2]+(b<<2)>>2]=a;e=e+1|0;if(e>>>0>2]+12>>2]){continue}break}}d=0;I9(v[f>>2],0,o);b=0;h=v[n+32>>2];a=v[h+12>>2];if(a){j=v[n+48>>2];k=v[g>>2];e=0;b=a;while(1){l=v[k+(e<<2)>>2];a=w[l+9|0];if(!((a|0)==2|w[(j+(e<<4)|0)+8|0]==2)){a=v[f>>2]+(((a|0)!=3?v[(m+24|0)+(a<<2)>>2]+v[l+4>>2]|0:0)<<2)|0;v[a>>2]=v[a>>2]+1;b=v[h+12>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}e=v[i+12040>>2];if(e){b=e&3;a=v[f>>2];k=0;if(e-1>>>0>=3){o=e&-4;j=0;while(1){l=a+(e<<2)|0;q=l-4|0;p=v[q>>2];v[q>>2]=d;q=l-8|0;A=v[q>>2];d=d+p|0;v[q>>2]=d;l=l-12|0;q=v[l>>2];d=d+A|0;v[l>>2]=d;e=e-4|0;l=a+(e<<2)|0;p=v[l>>2];d=d+q|0;v[l>>2]=d;d=d+p|0;j=j+4|0;if((o|0)!=(j|0)){continue}break}}if(b){while(1){e=e-1|0;j=a+(e<<2)|0;l=v[j>>2];v[j>>2]=d;d=d+l|0;k=k+1|0;if((b|0)!=(k|0)){continue}break}}b=v[h+12>>2]}a=d;if(b){e=0;while(1){b=v[v[g>>2]+(e<<2)>>2];j=w[b+9|0];n:{if(!((j|0)==2|w[(v[n+48>>2]+(e<<4)|0)+8|0]==2)){j=v[f>>2]+(((j|0)!=3?v[(m+24|0)+(j<<2)>>2]+v[b+4>>2]|0:0)<<2)|0;k=v[j>>2];v[j>>2]=k+1;break n}k=a;a=a+1|0}v[r+(k<<2)>>2]=b;e=e+1|0;if(e>>>0>2]+12>>2]){continue}break}}A=i+12e3|0;o=r+(d<<2)|0;e=0;j=0;b=0;l=32;q=xa-16|0;xa=q;t[q+12|0]=0;g=q-128|0;xa=g;v[q+8>>2]=g;k=(a-d|0)-1|0;o:{if((k|0)<=0){break o}while(1){p:{if((e|0)>=(k|0)){break p}while(1){if(k-e>>>0<=4){while(1){d=e;e=d+1|0;f=e;a=d;while(1){a=y[v[v[(f<<2)+o>>2]+12>>2]+48>>2]>2]+12>>2]+48>>2]?f:a;h=(f|0)<(k|0);f=f+1|0;if(h){continue}break}if((a|0)!=(d|0)){a=(a<<2)+o|0;f=v[a>>2];h=a;a=(d<<2)+o|0;v[h>>2]=v[a>>2];v[a>>2]=f}if((e|0)!=(k|0)){continue}break p}}s=(e<<2)+o|0;f=v[s>>2];D=v[v[f+12>>2]+48>>2];p=((e+k|0)/2<<2)+o|0;d=v[p>>2];q:{if(D>>>0<=y[v[d+12>>2]+48>>2]){a=f;break q}v[s>>2]=d;v[p>>2]=f;a=v[s>>2];D=v[v[a+12>>2]+48>>2];d=f}E=(k<<2)+o|0;h=v[E>>2];f=v[v[h+12>>2]+48>>2];r:{if(D>>>0<=f>>>0){a=h;break r}v[s>>2]=h;v[E>>2]=a;f=v[v[a+12>>2]+48>>2];d=v[p>>2]}if(y[v[d+12>>2]+48>>2]>f>>>0){v[p>>2]=a;v[E>>2]=d;d=v[p>>2]}f=p;a=k-1|0;p=(a<<2)+o|0;v[f>>2]=v[p>>2];v[p>>2]=d;f=e;while(1){s=v[v[d+12>>2]+48>>2];while(1){h=f;f=f+1|0;D=(f<<2)+o|0;E=v[D>>2];if(s>>>0>y[v[E+12>>2]+48>>2]){continue}break}while(1){a=a-1|0;F=(a<<2)+o|0;G=v[F>>2];if(s>>>0>2]+48>>2]){continue}break}if((a|0)>(f|0)){v[D>>2]=G;v[F>>2]=E;d=v[p>>2];continue}break}v[D>>2]=d;v[p>>2]=E;s:{if((f-e|0)<(k-f|0)){if(l-1>>>0<=j>>>0){d=l<<3;if(d){a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?57275:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,d,f,17218,155)|0}else{a=0}l=l<<1;a=H9(a,g,j<<2);d=b;b=1;if(!(!d|!g)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g)}g=a}a=(j<<2)+g|0;v[a>>2]=e;v[a+4>>2]=h;e=h+2|0;break s}if(l-1>>>0<=j>>>0){d=l<<3;if(d){a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?57275:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,d,f,17218,155)|0}else{a=0}l=l<<1;a=H9(a,g,j<<2);d=b;b=1;if(!(!d|!g)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g)}g=a}a=(j<<2)+g|0;v[a>>2]=h+2;v[a+4>>2]=k;k=h}j=j+2|0;if((e|0)<(k|0)){continue}break}}if(j){a=j-2|0;e=v[(a<<2)+g>>2];k=v[((j<<2)+g|0)-4>>2];j=a;continue}break}if(!b|!g){break o}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,g)}if(w[q+12|0]){u9(v[q+8>>2])}xa=q+16|0;v[i+12136>>2]=c;if(!(v[i+12008>>2]&2147482624)){Cz(A,1024)}v[i+12004>>2]=0;b=v[n+28>>2];a=v[r>>2];e=v[n+92>>2];v[m+28>>2]=0;v[m+24>>2]=e;e=w[a+8|0];t:{if((e|0)==2){v[c>>2]=v[a>>2]&-64;u[c+8>>1]=x[a>>1]&63;break t}u[c+8>>1]=65535;v[c>>2]=(e|0)==3?b+192|0:v[b+440>>2]+(v[(m+24|0)+(e<<2)>>2]+v[a>>2]<<5)|0;e=w[a+8|0];if((e|0)!=3){d=(v[a>>2]+v[(m+24|0)+(e<<2)>>2]|0)+1|0}else{d=0}v[c+12>>2]=d}e=w[a+9|0];u:{if((e|0)==2){v[c+4>>2]=v[a+4>>2]&-64;u[c+10>>1]=x[a+4>>1]&63;break u}u[c+10>>1]=65535;v[c+4>>2]=(e|0)==3?b+192|0:v[b+440>>2]+(v[(m+24|0)+(e<<2)>>2]+v[a+4>>2]<<5)|0;b=w[a+9|0];if((b|0)!=3){a=(v[a+4>>2]+v[(m+24|0)+(b<<2)>>2]|0)+1|0}else{a=0}v[c+16>>2]=a}a=v[v[r>>2]+12>>2];u[c+22>>1]=1;v[c+24>>2]=a;a=v[n+112>>2];b=v[v[v[r>>2]+12>>2]+68>>2];e=v[a+32>>2]+(v[a+((b&7)<<2)>>2]+(b>>>3|0)<<4)|0;b=w[e+12|0];k=0;d=v[v[n+32>>2]+12>>2];v:{if(d>>>0<2){f=0;break v}a=1;f=0;while(1){o=r+(a<<2)|0;g=v[o>>2];h=v[n+28>>2];d=v[n+92>>2];v[m+28>>2]=0;v[m+24>>2]=d;d=c+32|0;j=w[g+8|0];w:{if((j|0)==2){j=v[g>>2]&-64;v[c+32>>2]=j;u[c+40>>1]=x[g>>1]&63;break w}u[c+40>>1]=65535;j=(j|0)==3?h+192|0:v[h+440>>2]+(v[(m+24|0)+(j<<2)>>2]+v[g>>2]<<5)|0;v[d>>2]=j;l=w[g+8|0];if((l|0)!=3){p=(v[g>>2]+v[(m+24|0)+(l<<2)>>2]|0)+1|0}else{p=0}v[c+44>>2]=p}l=w[g+9|0];x:{if((l|0)==2){v[c+36>>2]=v[g+4>>2]&-64;u[c+42>>1]=x[g+4>>1]&63;break x}u[c+42>>1]=65535;v[c+36>>2]=(l|0)==3?h+192|0:v[h+440>>2]+(v[(m+24|0)+(l<<2)>>2]+v[g+4>>2]<<5)|0;h=w[g+9|0];if((h|0)!=3){g=(v[g+4>>2]+v[(m+24|0)+(h<<2)>>2]|0)+1|0}else{g=0}v[c+48>>2]=g}l=v[n+112>>2];h=v[v[o>>2]+12>>2];g=v[h+68>>2];o=v[l+((g&7)<<2)>>2];l=v[l+32>>2];u[c+54>>1]=1;v[c+56>>2]=h;o=o+(g>>>3|0)<<4;g=o+l|0;if(!b){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;j=v[d>>2];f=a;e=g}y:{z:{if(v[c>>2]!=(j|0)|v[c+4>>2]!=v[c+36>>2]|(x[c+8>>1]!=65535|x[c+10>>1]!=65535)){break z}if(t[h+8|0]&1|w[(l+o|0)+12|0]+b>>>0>64){break z}j=b;break y}A:{if(b){j=0;l=a-f|0;if(l>>>0<2){break A}k=k+1|0;c=v[i+12004>>2];h=v[i+12008>>2]&2147483647;if(c>>>0>=h>>>0){Cz(A,h?h<<1:1);c=v[i+12004>>2]}v[i+12004>>2]=c+1;c=v[i+12e3>>2]+B(c,36)|0;u[c+6>>1]=b;u[c+4>>1]=l;v[c>>2]=f;b=v[v[r+(f<<2)>>2]+12>>2];v[c+12>>2]=e;v[c+8>>2]=b+16;v[c+16>>2]=v[e>>2];v[c+20>>2]=v[e+4>>2];t[c+24|0]=w[e+12|0];t[c+25|0]=w[e+13|0];v[c+28>>2]=v[e+8>>2];t[c+26|0]=w[e+14|0];break A}b=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=b;b=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=b;b=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=b;b=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=b;j=0;f=a;e=g;break y}f=a;e=g;c=d}b=w[g+12|0]+j|0;a=a+1|0;d=v[v[n+32>>2]+12>>2];if(a>>>0>>0){continue}break}}if(b){j=d-f|0;if(j>>>0>=2){d=v[i+12004>>2];a=v[i+12008>>2]&2147483647;if(d>>>0>=a>>>0){Cz(A,a?a<<1:1);d=v[i+12004>>2]}v[i+12004>>2]=d+1;a=v[i+12e3>>2]+B(d,36)|0;u[a+6>>1]=b;u[a+4>>1]=j;v[a>>2]=f;b=v[v[r+(f<<2)>>2]+12>>2];v[a+12>>2]=e;v[a+8>>2]=b+16;v[a+16>>2]=v[e>>2];v[a+20>>2]=v[e+4>>2];t[a+24|0]=w[e+12|0];t[a+25|0]=w[e+13|0];v[a+28>>2]=v[e+8>>2];t[a+26|0]=w[e+14|0];k=k+1|0}c=c+32|0}if(!k){break l}e=0;while(1){a=vr(v[v[n+28>>2]+584>>2],112);d=v[n+92>>2];j=v[n+108>>2];f=v[n+112>>2];b=v[n+28>>2];g=v[b+600>>2];h=v[b+604>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=g;v[a+12>>2]=h;v[a+32>>2]=i;v[a+28>>2]=b;v[a>>2]=128500;b=v[n+40>>2];v[a+36>>2]=v[n+36>>2];v[a+40>>2]=b;b=v[n+48>>2];v[a+44>>2]=v[n+44>>2];v[a+48>>2]=b;b=v[n+56>>2];v[a+52>>2]=v[n+52>>2];v[a+56>>2]=b;b=v[n+64>>2];v[a+60>>2]=v[n+60>>2];v[a+64>>2]=b;b=v[n+72>>2];v[a+68>>2]=v[n+68>>2];v[a+72>>2]=b;b=v[n+80>>2];v[a+76>>2]=v[n+76>>2];v[a+80>>2]=b;b=v[n+88>>2];v[a+84>>2]=v[n+84>>2];v[a+88>>2]=b;v[a+104>>2]=j;v[a+108>>2]=f;b=k-e|0;v[a+100>>2]=b>>>0<8?b:8;v[a+96>>2]=e;v[a+92>>2]=d;b=v[n+20>>2];v[a+20>>2]=b;v[a+24>>2]=1;if(b){Ba[v[v[b>>2]+16>>2]](b);v[a+16>>2]=v[v[a+20>>2]+16>>2];b=v[a>>2]}else{b=128500}Ba[v[b+20>>2]](a);e=e+8|0;if(k>>>0>e>>>0){continue}break}}v[i+12132>>2]=c;v[i+11956>>2]=c-v[i+11952>>2]>>5;xa=m+32|0;c=0;a=v[n+32>>2];if(v[a+8>>2]&2147483647){e=v[a>>2];d=v[e+12144>>2];while(1){a=vr(v[v[n+28>>2]+584>>2],56);j=v[v[n+32>>2]+8>>2];f=v[n+40>>2];b=v[n+28>>2];g=v[b+600>>2];k=v[b+604>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=g;v[a+12>>2]=k;v[a+48>>2]=c<<6;v[a+44>>2]=b;v[a+36>>2]=d+B(c,52);v[a+32>>2]=f+(c<<2);v[a+28>>2]=e;v[a>>2]=128556;b=(j&2147483647)-c|0;v[a+40>>2]=b>>>0<32?b:32;b=v[n+20>>2];v[a+20>>2]=b;v[a+24>>2]=1;if(b){Ba[v[v[b>>2]+16>>2]](b);v[a+16>>2]=v[v[a+20>>2]+16>>2];b=v[a>>2]}else{b=128556}Ba[v[b+20>>2]](a);c=c+32|0;if(c>>>0<(v[v[n+32>>2]+8>>2]&2147483647)>>>0){continue}break}}}function Zz(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=C(0),s=C(0),A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=0,X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=0,ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=0,sa=0,ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=0,Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=0,Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=0,eb=0,fb=0,gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=0,tb=C(0),ub=0,vb=0,wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=0,rc=0,sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=C(0),Ac=C(0),Bc=C(0),Cc=C(0),Dc=C(0);g=xa-864|0;xa=g;A=v[a+44>>2];I=z[A+56>>2];r=z[A+60>>2];ra=v[a+48>>2];Ja=v[a+56>>2];fa=v[a+52>>2];ga=v[a+36>>2];c=v[a+40>>2];sb=v[c+11964>>2];sa=v[c+11960>>2];Ka=z[A+92>>2];s=z[A+52>>2];La=z[A+88>>2];Ma=z[A+84>>2];Na=z[A+100>>2];b=v[A+112>>2];a=v[A+336>>2];p=v[a>>2];if(p){v[a>>2]=v[p>>2]}if(!p){a=v[37696];p=Ba[v[v[a>>2]+20>>2]](a)|0?26947:63804;p=Ba[v[v[a+12>>2]+8>>2]](a+12|0,12195,p,19395,82)|0;a=p+19&-16;v[a-4>>2]=a-p;p=gB(a,v[A+340>>2])}v[p+12052>>2]=0;a=p+11856|0;v[a>>2]=0;v[a+4>>2]=0;a=v[c+12128>>2];if(a>>>0>(v[p+12056>>2]&2147483647)>>>0){yw(p+12048|0,a);a=v[c+12128>>2]}v[p+12052>>2]=a;Oa=v[p+12048>>2];v[g+860>>2]=0;v[g+856>>2]=0;v[g+852>>2]=0;v[g+848>>2]=1065353216;v[g+844>>2]=0;v[g+840>>2]=0;v[g+836>>2]=0;v[g+832>>2]=p+12088;v[g+828>>2]=p+11824;v[g+824>>2]=p+11852;v[g+820>>2]=c+11836;v[g+816>>2]=128228;if(fa>>>0>>0){I=r>2];a=b<<2;ub=a+128152|0;vb=a+128164|0;while(1){a:{b:{c:{M=(fa<<3)+sb|0;i=v[M>>2];switch(x[((i<<5)+sa|0)+22>>1]-1|0){case 1:break b;case 0:break c;default:break a}}n=x[M+4>>1];if(!n){break a}m=v[ra+32>>2];j=0;while(1){a=j<<2;e=(j+i<<5)+sa|0;d=v[e+24>>2];v[a+(g+16|0)>>2]=d;c=a+(g+48|0)|0;a=v[d+68>>2];l=m+(v[((a&7)<<2)+ra>>2]+(a>>>3|0)<<4)|0;v[c>>2]=l;c=ga;c=x[e+8>>1]==65535?B(v[e+12>>2],112)+c|0:c;b=(g+112|0)+B(j,176)|0;q=x[e+10>>1]!=65535;v[b+32>>2]=q?ga:B(v[e+16>>2],112)+ga|0;v[b+28>>2]=c;f=v[d+16>>2];h=w[f+28|0];a=v[d+20>>2];if(a){h=w[a+28|0]|h;c=a}else{c=g+860|0}z[b+36>>2]=z[f>>2];z[b+40>>2]=z[f+4>>2];z[b+44>>2]=z[f+8>>2];z[b+48>>2]=z[f+12>>2];z[b+52>>2]=z[f+16>>2];z[b+56>>2]=z[f+20>>2];z[b+60>>2]=z[f+24>>2];z[b+64>>2]=z[c>>2];z[b+68>>2]=z[(a?a+4|0:g+856|0)>>2];z[b+72>>2]=z[(a?a+8|0:g+852|0)>>2];z[b+76>>2]=z[(a?a+12|0:g+848|0)>>2];z[b+80>>2]=z[(a?a+16|0:g+844|0)>>2];z[b+84>>2]=z[(a?a+20|0:g+840|0)>>2];z[b+88>>2]=z[(a?a+24|0:g+836|0)>>2];v[b+112>>2]=v[d+12>>2];v[b+144>>2]=v[l+8>>2];v[b+16>>2]=e;v[b+20>>2]=v[e>>2];v[b+24>>2]=v[e+4>>2];a=x[d+40>>1];t[b+125|0]=a>>>2&1;t[b+126|0]=a>>>8&1;v[b+92>>2]=a&8?8:1;d:{if(a&16){if(!q){v[b+96>>2]=2;break d}v[b+96>>2]=8;break d}v[b+96>>2]=a&1024?4:a&64?1:2}a=w[d+44|0];r=w[d+45|0]?C(1):C(0);z[b+12>>2]=r;D=a?C(1):C(0);z[b>>2]=D;z[b+4>>2]=D;z[b+8>>2]=r;z[b+128>>2]=z[d+52>>2];v[b+136>>2]=v[d+36>>2];a=w[d+42|0];z[b+132>>2]=h&32?tb:C(34028234663852886e22);t[b+140|0]=a;j=j+1|0;if((n|0)!=(j|0)){continue}break}e:{f:{if((n|0)!=4){break f}if((Ba[v[vb>>2]](g+48|0,p,g+112|0,I,Ma,La,Na,Ka,g+816|0)|0)!=2){break f}c=x[M+4>>1];break e}a=0;if(!x[M+4>>1]){break a}while(1){c=(v[M>>2]+a<<5)+sa|0;b=v[v[c+24>>2]+68>>2];b=v[ra+32>>2]+(v[((b&7)<<2)+ra>>2]+(b>>>3|0)<<4)|0;Ba[v[ub>>2]]((g+112|0)+B(a,176)|0,b,p,I,Ma,La,Na,Ka,g+816|0,Oa)|0;u[c+20>>1]=w[b+12|0];v[c+28>>2]=v[b+8>>2];a=a+1|0;c=x[M+4>>1];if(a>>>0>>0){continue}break}}c=c&65535;if(!c){break a}a=0;if((c|0)!=1){j=c&65534;d=0;while(1){e=g+16|0;f=v[e+(a<<2)>>2];h=g+112|0;b=h+B(a,176)|0;v[f+36>>2]=v[b+136>>2];t[f+42|0]=w[b+140|0];f=x[b+162>>1];b=a|1;e=v[e+(b<<2)>>2];b=h+B(b,176)|0;v[e+36>>2]=v[b+136>>2];t[e+42|0]=w[b+140|0];N=x[b+162>>1]+(f+N|0)|0;a=a+2|0;d=d+2|0;if((j|0)!=(d|0)){continue}break}}if(!(c&1)){break a}c=v[(g+16|0)+(a<<2)>>2];a=(g+112|0)+B(a,176)|0;v[c+36>>2]=v[a+136>>2];t[c+42|0]=w[a+140|0];N=x[a+162>>1]+N|0;break a}v[g+40>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+24>>2]=0;v[g+28>>2]=1065353216;v[g+16>>2]=0;v[g+20>>2]=0;h=x[M+4>>1];if(!h){break a}m=v[A+168>>2];j=0;while(1){d=g+16|0;a=d;f=(j+i<<5)+sa|0;e=v[f+24>>2];c=v[e+24>>2];if(c){a=v[c+36>>2]}c=v[e+28>>2];if(c){d=v[c+36>>2]}n=0;c=0;c=x[f+8>>1]==65535?v[f+12>>2]:c;l=x[e+8>>1];q=v[e+20>>2];k=v[e+12>>2];o=v[f+4>>2];_=v[f>>2];n=x[f+10>>1]==65535?v[f+16>>2]:n;b=(g+48|0)+(j<<4)|0;v[b+12>>2]=l;v[b+8>>2]=q;v[b>>2]=e;v[b+4>>2]=k;b=(g+112|0)+B(j,160)|0;v[b+16>>2]=f;z[b+36>>2]=z[a>>2];z[b+40>>2]=z[a+4>>2];z[b+44>>2]=z[a+8>>2];z[b+48>>2]=z[a+12>>2];z[b+52>>2]=z[a+16>>2];z[b+56>>2]=z[a+20>>2];z[b+60>>2]=z[a+24>>2];z[b+64>>2]=z[d>>2];z[b+68>>2]=z[d+4>>2];z[b+72>>2]=z[d+8>>2];z[b+76>>2]=z[d+12>>2];z[b+80>>2]=z[d+16>>2];z[b+84>>2]=z[d+20>>2];r=z[d+24>>2];v[b+32>>2]=B(n,112)+ga;v[b+28>>2]=B(c,112)+ga;z[b+88>>2]=r;v[b+24>>2]=o;v[b+20>>2]=_;z[b+120>>2]=z[e>>2];z[b+124>>2]=z[e+4>>2];v[b+132>>2]=m+(v[e+40>>2]<<5);a=x[e+10>>1];t[b+139|0]=a>>>9&1;c=a&255;t[b+137|0]=c>>>7;t[b+136|0]=a>>>8&1;t[b+138|0]=c>>>5&1;z[b+128>>2]=z[e+44>>2];j=j+1|0;if((h|0)!=(j|0)){continue}break}if((h|0)==4){c=g+112|0;q=g+816|0;d=0;j=xa-3872|0;xa=j;v[g+12>>2]=0;a=1;b=v[g+52>>2];g:{if(!b){break g}e=j+32|0;I9(e,0,960);v[j+972>>2]=2139095039;v[j+956>>2]=-8388609;v[j+892>>2]=2139095039;v[j+876>>2]=-8388609;v[j+812>>2]=2139095039;v[j+796>>2]=-8388609;v[j+732>>2]=2139095039;v[j+716>>2]=-8388609;v[j+652>>2]=2139095039;v[j+636>>2]=-8388609;v[j+572>>2]=2139095039;v[j+556>>2]=-8388609;v[j+492>>2]=2139095039;v[j+476>>2]=-8388609;v[j+412>>2]=2139095039;v[j+396>>2]=-8388609;v[j+332>>2]=2139095039;v[j+316>>2]=-8388609;v[j+252>>2]=2139095039;v[j+236>>2]=-8388609;v[j+172>>2]=2139095039;v[j+156>>2]=-8388609;v[j+92>>2]=2139095039;v[j+76>>2]=-8388609;v[c+4>>2]=1065353216;v[c+8>>2]=1065353216;v[c+12>>2]=1065353216;v[c+148>>2]=0;v[c+140>>2]=0;v[c+144>>2]=0;v[c>>2]=1065353216;e=Ba[b|0](e,c+140|0,12,c,v[g+56>>2],c+36|0,c- -64|0,w[c+139|0],j+16|0,j)|0;if(!e){break g}v[c+116>>2]=e;v[c+112>>2]=j+32;f=v[g+68>>2];if(!f){break g}i=c+160|0;h=(j+32|0)+B(e,80)|0;I9(j+992|0,0,960);h:{if(e>>>0>12){break h}b=12-e|0;n=e&3;if(n){while(1){m=h+B(b,80)|0;v[m+60>>2]=2139095039;v[m+44>>2]=-8388609;b=b+1|0;d=d+1|0;if((n|0)!=(d|0)){continue}break}}if(e-1>>>0<3){break h}while(1){d=h+B(b,80)|0;v[d+60>>2]=2139095039;v[d+44>>2]=-8388609;v[d+140>>2]=2139095039;v[d+124>>2]=-8388609;v[d+204>>2]=-8388609;v[d+220>>2]=2139095039;v[d+284>>2]=-8388609;v[d+300>>2]=2139095039;b=b+4|0;if((b|0)!=12){continue}break}}v[c+160>>2]=1065353216;v[c+164>>2]=1065353216;v[c+168>>2]=1065353216;v[c+172>>2]=1065353216;v[c+308>>2]=0;b=c+300|0;v[b>>2]=0;v[b+4>>2]=0;f=Ba[f|0](h,b,12,i,v[g+72>>2],c+196|0,c+224|0,w[c+299|0],j+16|0,j)|0;if(!f){break g}v[c+276>>2]=f;v[c+272>>2]=h;h=v[g+84>>2];if(!h){break g}n=c+320|0;m=e+f|0;i=(j+32|0)+B(m,80)|0;b=12-f|0;I9(i+B(b,80)|0,0,960);i:{if(f>>>0>12){break i}l=f&3;if(l){d=0;while(1){k=i+B(b,80)|0;v[k+60>>2]=2139095039;v[k+44>>2]=-8388609;b=b+1|0;d=d+1|0;if((l|0)!=(d|0)){continue}break}}if(f-1>>>0<3){break i}while(1){d=i+B(b,80)|0;v[d+60>>2]=2139095039;v[d+44>>2]=-8388609;v[d+140>>2]=2139095039;v[d+124>>2]=-8388609;v[d+204>>2]=-8388609;v[d+220>>2]=2139095039;v[d+284>>2]=-8388609;v[d+300>>2]=2139095039;b=b+4|0;if((b|0)!=12){continue}break}}v[c+320>>2]=1065353216;v[c+324>>2]=1065353216;v[c+328>>2]=1065353216;v[c+332>>2]=1065353216;v[c+468>>2]=0;b=c+460|0;v[b>>2]=0;v[b+4>>2]=0;h=Ba[h|0](i,b,12,n,v[g+88>>2],c+356|0,c+384|0,w[c+459|0],j+16|0,j)|0;if(!h){break g}v[c+436>>2]=h;v[c+432>>2]=i;n=v[g+100>>2];if(!n){break g}l=c+480|0;i=(j+32|0)+B(h+m|0,80)|0;b=12-h|0;I9(i+B(b,80)|0,0,960);j:{if(h>>>0>12){break j}m=h&3;if(m){d=0;while(1){k=i+B(b,80)|0;v[k+60>>2]=2139095039;v[k+44>>2]=-8388609;b=b+1|0;d=d+1|0;if((m|0)!=(d|0)){continue}break}}if(h-1>>>0<3){break j}while(1){d=i+B(b,80)|0;v[d+60>>2]=2139095039;v[d+44>>2]=-8388609;v[d+140>>2]=2139095039;v[d+124>>2]=-8388609;v[d+204>>2]=-8388609;v[d+220>>2]=2139095039;v[d+284>>2]=-8388609;v[d+300>>2]=2139095039;b=b+4|0;if((b|0)!=12){continue}break}}v[c+480>>2]=1065353216;v[c+484>>2]=1065353216;v[c+488>>2]=1065353216;v[c+492>>2]=1065353216;v[c+628>>2]=0;b=c+620|0;v[b>>2]=0;v[b+4>>2]=0;b=Ba[n|0](i,b,12,l,v[g+104>>2],c+516|0,c+544|0,w[c+619|0],j+16|0,j)|0;if(!b){break g}v[c+596>>2]=b;v[c+592>>2]=i;d=xa-1744|0;xa=d;v[d+1736>>2]=0;v[d+1740>>2]=0;v[d+1728>>2]=0;v[d+1732>>2]=0;i=d+1536|0;l=d+768|0;a=v[c+28>>2];n=v[c+32>>2];oy(i,v[c+112>>2],l,d,v[c+116>>2],a+32|0,n+32|0,z[a+12>>2],z[n+12>>2],c,w[c+136|0],w[c+137|0],1);n=v[c+116>>2];a=n<<4;V=a+l|0;W=a+d|0;a=v[c+188>>2];m=v[c+192>>2];oy(i+(n<<2)|0,v[c+272>>2],V,W,v[c+276>>2],a+32|0,m+32|0,z[a+12>>2],z[m+12>>2],c+160|0,w[c+296|0],w[c+297|0],1);a=v[c+276>>2]+n|0;m=a<<4;V=l+m|0;W=d+m|0;m=v[c+348>>2];k=v[c+352>>2];oy(i+(a<<2)|0,v[c+432>>2],V,W,v[c+436>>2],m+32|0,k+32|0,z[m+12>>2],z[k+12>>2],c+320|0,w[c+456|0],w[c+457|0],1);m=v[c+436>>2]+a|0;k=m<<4;V=i+(m<<2)|0;W=k+l|0;i=v[c+508>>2];l=v[c+512>>2];oy(V,v[c+592>>2],W,d+k|0,v[c+596>>2],i+32|0,l+32|0,z[i+12>>2],z[l+12>>2],c+480|0,w[c+616|0],w[c+617|0],1);i=v[c+596>>2];e=e>>>0>>0?f:e;e=e>>>0>>0?h:e;_=b>>>0>e>>>0?b:e;e=B(_,368);b=Ba[v[v[q>>2]>>2]](q,e+176|0)|0;k:{if(b+1>>>0<=1){a=v[c+16>>2];u[a+22>>1]=0;v[a+24>>2]=0;v[a+28>>2]=v[c+132>>2];a=v[c+176>>2];u[a+22>>1]=0;v[a+24>>2]=0;v[a+28>>2]=v[c+292>>2];a=v[c+336>>2];u[a+22>>1]=0;v[a+24>>2]=0;v[a+28>>2]=v[c+452>>2];a=v[c+496>>2];u[a+22>>1]=0;v[a+24>>2]=0;v[a+28>>2]=v[c+612>>2];a=0;break k}v[g+12>>2]=i+m;f=v[c+16>>2];e=e+160>>>4|0;u[f+22>>1]=e;v[f+24>>2]=b;v[f+28>>2]=v[c+132>>2];f=v[c+176>>2];u[f+22>>1]=e;v[f+24>>2]=b;v[f+28>>2]=v[c+292>>2];f=v[c+336>>2];u[f+22>>1]=e;v[f+24>>2]=b;v[f+28>>2]=v[c+452>>2];f=v[c+496>>2];u[f+22>>1]=e;v[f+24>>2]=b;v[f+28>>2]=v[c+612>>2];e=v[c+512>>2];wb=z[e+16>>2];f=v[c+508>>2];xb=z[f+16>>2];yb=z[e+8>>2];zb=z[e+4>>2];Ab=z[e>>2];Bb=z[f+8>>2];Cb=z[f+4>>2];Db=z[f>>2];h=v[c+352>>2];Eb=z[h+16>>2];i=v[c+348>>2];Fb=z[i+16>>2];Gb=z[h+8>>2];Hb=z[h+4>>2];Ib=z[h>>2];Jb=z[i+8>>2];Kb=z[i+4>>2];Lb=z[i>>2];l=v[c+192>>2];Mb=z[l+16>>2];q=v[c+188>>2];Nb=z[q+16>>2];Ob=z[l+8>>2];Pb=z[l+4>>2];Qb=z[l>>2];Rb=z[q+8>>2];Sb=z[q+4>>2];Tb=z[q>>2];Ub=z[e+24>>2];Vb=z[e+20>>2];Wb=z[f+24>>2];Xb=z[f+20>>2];Yb=z[h+24>>2];Zb=z[h+20>>2];_b=z[i+24>>2];$b=z[i+20>>2];ac=z[l+24>>2];bc=z[l+20>>2];cc=z[q+24>>2];dc=z[q+20>>2];k=v[c+32>>2];ec=z[k+24>>2];fc=z[k+20>>2];o=v[c+28>>2];gc=z[o+24>>2];hc=z[o+20>>2];r=z[c+280>>2];D=z[c+284>>2];J=z[c+440>>2];K=z[c+444>>2];L=z[c+600>>2];X=z[c+604>>2];$=z[q+12>>2];aa=z[i+12>>2];ba=z[f+12>>2];ca=z[c+168>>2];da=z[l+12>>2];E=z[c+328>>2];F=z[h+12>>2];G=z[c+488>>2];H=z[e+12>>2];Pa=z[c+164>>2];Qa=z[c+324>>2];Ra=z[c+484>>2];Sa=z[c+172>>2];Ta=z[c+332>>2];Ua=z[c+492>>2];O=z[c+300>>2];P=z[c+460>>2];Q=z[c+620>>2];R=z[c+144>>2];S=z[c+304>>2];T=z[c+464>>2];U=z[c+624>>2];ea=z[c+148>>2];ha=z[c+308>>2];ia=z[c+468>>2];ic=z[k+16>>2];jc=z[o+16>>2];kc=z[k+8>>2];lc=z[k+4>>2];mc=z[k>>2];nc=z[o+8>>2];oc=z[o+4>>2];pc=z[o>>2];Y=z[c+120>>2];Z=z[c+124>>2];ja=z[c>>2];ka=z[o+12>>2];la=z[c+160>>2];ma=z[c+320>>2];na=z[c+480>>2];oa=z[c+8>>2];pa=z[k+12>>2];Va=z[c+4>>2];Wa=z[c+12>>2];qa=z[c+140>>2];z[b+156>>2]=z[c+628>>2];z[b+152>>2]=ia;z[b+148>>2]=ha;z[b+144>>2]=ea;z[b+140>>2]=U;z[b+136>>2]=T;z[b+132>>2]=S;z[b+128>>2]=R;z[b+124>>2]=Q;z[b+120>>2]=P;z[b+116>>2]=O;z[b+112>>2]=qa;z[b+108>>2]=Ua;z[b+104>>2]=Ta;z[b+100>>2]=Sa;z[b+96>>2]=Wa;z[b+92>>2]=Ra;z[b+88>>2]=Qa;z[b+84>>2]=Pa;z[b+80>>2]=Va;Xa=C(G*H);z[b+76>>2]=Xa;Ya=C(E*F);z[b+72>>2]=Ya;Za=C(ca*da);z[b+68>>2]=Za;_a=C(oa*pa);z[b+64>>2]=_a;$a=C(na*ba);z[b+60>>2]=$a;ab=C(ma*aa);z[b+56>>2]=ab;bb=C(la*$);z[b+52>>2]=bb;cb=C(ja*ka);z[b+48>>2]=cb;t[b+15|0]=L!=C(34028234663852886e22)|X!=C(34028234663852886e22);t[b+14|0]=J!=C(34028234663852886e22)|K!=C(34028234663852886e22);t[b+13|0]=r!=C(34028234663852886e22)|D!=C(34028234663852886e22);t[b+12|0]=Y!=C(34028234663852886e22)|Z!=C(34028234663852886e22);z[b+16>>2]=Y*s;v[b+4>>2]=_;z[b+20>>2]=r*s;z[b+24>>2]=J*s;z[b+28>>2]=L*s;z[b+32>>2]=Z*s;z[b+36>>2]=D*s;z[b+40>>2]=K*s;z[b+44>>2]=X*s;t[b|0]=9;e=v[c+116>>2];t[b+8|0]=e;f=v[c+276>>2];t[b+9|0]=f;h=v[c+436>>2];t[b+10|0]=h;i=v[c+596>>2];t[b+11|0]=i;b=b+160|0;if(_){qc=e-1|0;rc=(f+n|0)-1|0;V=(a+h|0)-1|0;W=(i+m|0)-1|0;r=s>2];E=C(1);i=v[f+(q<<2)>>2];E=w[i+76|0]&32?w[c+138|0]?r:C(1):E;f=v[(d+1536|0)+(a<<2)>>2];F=C(1);G=C(1);G=w[e+76|0]&32?w[c+298|0]?r:C(1):G;h=v[(d+1536|0)+(m<<2)>>2];F=w[f+76|0]&32?w[c+458|0]?r:C(1):F;o=m<<4;k=o+d|0;ha=z[k+8>>2];ia=z[k+4>>2];ja=z[k>>2];db=a<<4;k=d+db|0;ka=z[k+8>>2];la=z[k+4>>2];ma=z[k>>2];eb=n<<4;k=d+eb|0;na=z[k+8>>2];oa=z[k+4>>2];pa=z[k>>2];fb=q<<4;k=d+fb|0;qa=z[k+8>>2];ta=z[k+4>>2];ua=z[k>>2];k=d+768|0;o=k+o|0;va=z[o+8>>2];wa=z[o+4>>2];ya=z[o>>2];o=k+db|0;za=z[o+8>>2];Aa=z[o+4>>2];Ca=z[o>>2];o=k+eb|0;Da=z[o+8>>2];Ea=z[o+4>>2];Fa=z[o>>2];k=k+fb|0;Ga=z[k+8>>2];Ha=z[k+4>>2];Ia=z[k>>2];H=C(1);gb=z[i+20>>2];hb=z[e+20>>2];ib=z[f+20>>2];jb=z[h+20>>2];kb=z[i+24>>2];lb=z[e+24>>2];mb=z[f+24>>2];nb=z[h+24>>2];D=z[i>>2];J=z[e>>2];K=z[f>>2];L=z[h>>2];X=z[i+4>>2];Y=z[e+4>>2];Z=z[f+4>>2];$=z[h+4>>2];aa=z[i+8>>2];ba=z[e+8>>2];ca=z[f+8>>2];da=z[h+8>>2];ob=z[i+16>>2];pb=z[e+16>>2];qb=z[f+16>>2];rb=z[h+16>>2];O=z[i+44>>2];P=z[e+44>>2];Q=z[f+44>>2];R=z[h+44>>2];S=z[i+60>>2];T=z[e+60>>2];U=z[f+60>>2];H=w[h+76|0]&32?w[c+618|0]?r:C(1):H;z[b+236>>2]=H*z[h+60>>2];z[b+232>>2]=F*U;z[b+228>>2]=G*T;z[b+224>>2]=E*S;z[b+220>>2]=H*R;z[b+216>>2]=F*Q;z[b+212>>2]=G*P;z[b+208>>2]=E*O;z[b+140>>2]=nb;z[b+136>>2]=mb;z[b+132>>2]=lb;z[b+128>>2]=kb;z[b+124>>2]=jb;z[b+120>>2]=ib;z[b+116>>2]=hb;z[b+112>>2]=gb;z[b+108>>2]=rb;z[b+104>>2]=qb;z[b+100>>2]=pb;z[b+96>>2]=ob;z[b+92>>2]=va;z[b+88>>2]=za;z[b+84>>2]=Da;z[b+80>>2]=Ga;z[b+76>>2]=wa;z[b+72>>2]=Aa;z[b+68>>2]=Ea;z[b+64>>2]=Ha;z[b+60>>2]=ya;z[b+56>>2]=Ca;z[b+52>>2]=Fa;z[b+48>>2]=Ia;z[b+44>>2]=da;z[b+40>>2]=ca;z[b+36>>2]=ba;z[b+32>>2]=aa;z[b+28>>2]=$;z[b+24>>2]=Z;z[b+20>>2]=Y;z[b+16>>2]=X;z[b+12>>2]=L;z[b+8>>2]=K;z[b+4>>2]=J;z[b>>2]=D;k=v[d+1740>>2];v[b+248>>2]=v[d+1736>>2];v[b+252>>2]=k;k=v[d+1732>>2];v[b+240>>2]=v[d+1728>>2];v[b+244>>2]=k;v[b+256>>2]=0;v[b+260>>2]=0;v[b+264>>2]=0;v[b+268>>2]=0;sc=z[i+56>>2];tc=z[i+52>>2];uc=z[e+56>>2];vc=z[e+52>>2];wc=z[f+56>>2];xc=z[f+52>>2];yc=z[h+56>>2];zc=z[h+52>>2];E=z[i+36>>2];F=z[e+36>>2];G=z[f+36>>2];H=z[h+36>>2];O=z[i+40>>2];P=z[e+40>>2];Q=z[f+40>>2];R=z[h+40>>2];Ac=z[i+48>>2];Bc=z[e+48>>2];Cc=z[f+48>>2];Dc=z[h+48>>2];S=z[i+32>>2];T=z[e+32>>2];U=z[f+32>>2];ea=z[h+32>>2];z[b+364>>2]=ha;z[b+360>>2]=ka;z[b+356>>2]=na;z[b+352>>2]=qa;z[b+348>>2]=ia;z[b+344>>2]=la;z[b+340>>2]=oa;z[b+336>>2]=ta;z[b+332>>2]=ja;z[b+328>>2]=ma;z[b+324>>2]=pa;z[b+320>>2]=ua;z[b+316>>2]=R;z[b+312>>2]=Q;z[b+308>>2]=P;z[b+304>>2]=O;z[b+300>>2]=H;z[b+296>>2]=G;z[b+292>>2]=F;z[b+288>>2]=E;z[b+284>>2]=ea;z[b+280>>2]=U;z[b+276>>2]=T;z[b+272>>2]=S;Uy(b+144|0,b+160|0,b+176|0,b+192|0,i,C(C(C(Va*C(C(Ga*Ga)+C(C(Ia*Ia)+C(Ha*Ha))))+C(cb*C(C(aa*aa)+C(C(D*D)+C(X*X)))))+C(C(Wa*C(C(qa*qa)+C(C(ua*ua)+C(ta*ta))))+C(_a*C(C(O*O)+C(C(S*S)+C(E*E)))))),z[c+128>>2],s,I,v[c+28>>2],v[c+32>>2],y[c+116>>2]<=l>>>0);Uy(b+148|0,b+164|0,b+180|0,b+196|0,e,C(C(C(Pa*C(C(Da*Da)+C(C(Fa*Fa)+C(Ea*Ea))))+C(bb*C(C(ba*ba)+C(C(J*J)+C(Y*Y)))))+C(C(Sa*C(C(na*na)+C(C(pa*pa)+C(oa*oa))))+C(Za*C(C(P*P)+C(C(T*T)+C(F*F)))))),z[c+288>>2],s,I,v[c+188>>2],v[c+192>>2],y[c+276>>2]<=l>>>0);Uy(b+152|0,b+168|0,b+184|0,b+200|0,f,C(C(C(Qa*C(C(za*za)+C(C(Ca*Ca)+C(Aa*Aa))))+C(ab*C(C(ca*ca)+C(C(K*K)+C(Z*Z)))))+C(C(Ta*C(C(ka*ka)+C(C(ma*ma)+C(la*la))))+C(Ya*C(C(Q*Q)+C(C(U*U)+C(G*G)))))),z[c+448>>2],s,I,v[c+348>>2],v[c+352>>2],y[c+436>>2]<=l>>>0);Uy(b+156|0,b+172|0,b+188|0,b+204|0,h,C(C(C(Ra*C(C(va*va)+C(C(ya*ya)+C(wa*wa))))+C($a*C(C(da*da)+C(C(L*L)+C($*$)))))+C(C(Ua*C(C(ha*ha)+C(C(ja*ja)+C(ia*ia))))+C(Xa*C(C(R*R)+C(C(ea*ea)+C(H*H)))))),z[c+608>>2],s,I,v[c+508>>2],v[c+512>>2],y[c+596>>2]<=l>>>0);L=C(C(C(C(C(Bb*da)+C(C(Db*L)+C(Cb*$)))+C(C(Wb*nb)+C(C(xb*rb)+C(Xb*jb))))-C(C(C(yb*R)+C(C(Ab*ea)+C(zb*H)))+C(C(Ub*yc)+C(C(wb*Dc)+C(Vb*zc)))))*z[b+188>>2]);z[b+156>>2]=L+z[b+156>>2];K=C(C(C(C(C(Jb*ca)+C(C(Lb*K)+C(Kb*Z)))+C(C(_b*mb)+C(C(Fb*qb)+C($b*ib))))-C(C(C(Gb*Q)+C(C(Ib*U)+C(Hb*G)))+C(C(Yb*wc)+C(C(Eb*Cc)+C(Zb*xc)))))*z[b+184>>2]);z[b+152>>2]=K+z[b+152>>2];J=C(C(C(C(C(Rb*ba)+C(C(Tb*J)+C(Sb*Y)))+C(C(cc*lb)+C(C(Nb*pb)+C(dc*hb))))-C(C(C(Ob*P)+C(C(Qb*T)+C(Pb*F)))+C(C(ac*uc)+C(C(Mb*Bc)+C(bc*vc)))))*z[b+180>>2]);z[b+148>>2]=J+z[b+148>>2];D=C(C(C(C(C(nc*aa)+C(C(pc*D)+C(oc*X)))+C(C(gc*kb)+C(C(jc*ob)+C(hc*gb))))-C(C(C(kc*O)+C(C(mc*S)+C(lc*E)))+C(C(ec*sc)+C(C(ic*Ac)+C(fc*tc)))))*z[b+176>>2]);z[b+144>>2]=D+z[b+144>>2];z[b+160>>2]=D+z[b+160>>2];z[b+164>>2]=J+z[b+164>>2];z[b+168>>2]=K+z[b+168>>2];z[b+172>>2]=L+z[b+172>>2];if(w[i+76|0]&16){v[b+256>>2]=v[b+256>>2]|2}if(w[e+76|0]&16){v[b+260>>2]=v[b+260>>2]|2}if(w[f+76|0]&16){v[b+264>>2]=v[b+264>>2]|2}if(w[h+76|0]&16){v[b+268>>2]=v[b+268>>2]|2}b=b+368|0;m=((m|0)!=(W|0))+m|0;a=((a|0)!=(V|0))+a|0;n=((n|0)!=(rc|0))+n|0;q=((q|0)!=(qc|0))+q|0;l=l+1|0;if((_|0)!=(l|0)){continue}break}}v[b>>2]=0;v[b+4>>2]=0;a=2}xa=d+1744|0}xa=j+3872|0;N=v[g+12>>2]+N|0;if((a|0)==2){break a}}a=0;if(!x[M+4>>1]){break a}while(1){N=ry((g+48|0)+(a<<4)|0,(g+112|0)+B(a,160)|0,g+816|0,s,I,Oa)+N|0;a=a+1|0;if(a>>>0>1]){continue}break}}fa=fa+1|0;if((Ja|0)!=(fa|0)){continue}break}}a=p+12168|0;v[a>>2]=v[a>>2]+N;a=v[A+336>>2];v[p>>2]=v[a>>2];v[a>>2]=p;xa=g+864|0}function Gp(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=v[a+5092>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+5052>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+5012>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4972>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4932>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4892>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4888>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+4880>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4876>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+4868>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4864>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+4856>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4816>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}Hp(a+4788|0);b=v[a+4780>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4776>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+4768>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=a+16|0;a=v[c+4736>>2];if(!(!a|v[c+4740>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+4736>>2]=0;a=v[c+4724>>2];if(!(!a|v[c+4728>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+4724>>2]=0;a=v[c+4720>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[c+4712>>2];if(!a){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4704>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[c+4696>>2];if(!a){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4692>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=v[c+4684>>2];if(!a){break g}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4680>>2];h:{if((a|0)<0|!(a&2147483647)){break h}a=v[c+4672>>2];if(!a){break h}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4632>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}Hp(c+4584|0);v[c+4560>>2]=0;v[c+4544>>2]=126144;v[c+4520>>2]=0;v[c+4504>>2]=126144;v[c+4480>>2]=0;v[c+4464>>2]=126144;v[c+4440>>2]=0;v[c+4424>>2]=126144;v[c+4400>>2]=0;v[c+4384>>2]=126144;v[c+4360>>2]=0;v[c+4344>>2]=126144;v[c+4320>>2]=0;v[c+4304>>2]=126144;v[c+4280>>2]=0;v[c+4264>>2]=126144;v[c+4160>>2]=126184;a=v[c+4256>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4248>>2];i:{if((a|0)<0|!(a&2147483647)){break i}a=v[c+4240>>2];if((a|0)==(c+4220|0)){t[c+4236|0]=0;break i}if(!a){break i}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4216>>2];j:{if((a|0)<0|!(a&2147483647)){break j}a=v[c+4208>>2];if((a|0)==(c+4188|0)){t[c+4204|0]=0;break j}if(!a){break j}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+4136>>2]=0;v[c+4120>>2]=126144;v[c+4096>>2]=0;v[c+4080>>2]=126144;v[c+4056>>2]=0;v[c+4040>>2]=126144;v[c+4016>>2]=0;v[c+4e3>>2]=126144;v[c+3976>>2]=0;v[c+3960>>2]=126144;v[c+3936>>2]=0;v[c+3920>>2]=126144;v[c+3896>>2]=0;v[c+3880>>2]=126144;v[c+3856>>2]=0;v[c+3840>>2]=126144;v[c+3816>>2]=0;v[c+3800>>2]=126144;v[c+3776>>2]=0;v[c+3760>>2]=126144;v[c+3736>>2]=0;v[c+3720>>2]=126144;v[c+3680>>2]=126144;v[c+3696>>2]=0;v[c+3640>>2]=126144;v[c+3656>>2]=0;v[c+3600>>2]=126144;v[c+3616>>2]=0;v[c+3560>>2]=126144;v[c+3576>>2]=0;v[c+3520>>2]=126144;v[c+3536>>2]=0;v[c+3480>>2]=126144;v[c+3496>>2]=0;v[c+3456>>2]=0;v[c+3440>>2]=126144;v[c+3400>>2]=126144;v[c+3416>>2]=0;v[c+3376>>2]=0;v[c+3360>>2]=126144;v[c+3320>>2]=126144;v[c+3336>>2]=0;v[c+3280>>2]=126144;v[c+3296>>2]=0;v[c+3240>>2]=126144;v[c+3256>>2]=0;v[c+3200>>2]=126144;v[c+3216>>2]=0;v[c+3160>>2]=126144;v[c+3176>>2]=0;v[c+3120>>2]=126144;v[c+3136>>2]=0;v[c+3080>>2]=126144;v[c+3096>>2]=0;b=v[c+3064>>2];if((b|0)>0){a=v[c+3060>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3068>>2];k:{if((a|0)<0|!(a&2147483647)){break k}a=v[c+3060>>2];if(!a){break k}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=v[c+3052>>2];if((b|0)>0){a=v[c+3048>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3056>>2];l:{if((a|0)<0|!(a&2147483647)){break l}a=v[c+3048>>2];if(!a){break l}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=v[c+3040>>2];if((b|0)>0){a=v[c+3036>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3044>>2];m:{if((a|0)<0|!(a&2147483647)){break m}a=v[c+3036>>2];if(!a){break m}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=v[c+3028>>2];if((b|0)>0){a=v[c+3024>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3032>>2];n:{if((a|0)<0|!(a&2147483647)){break n}a=v[c+3024>>2];if(!a){break n}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=v[c+3016>>2];if((b|0)>0){a=v[c+3012>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3020>>2];o:{if((a|0)<0|!(a&2147483647)){break o}a=v[c+3012>>2];if(!a){break o}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=v[c+3004>>2];if((b|0)>0){a=v[c+3e3>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3008>>2];p:{if((a|0)<0|!(a&2147483647)){break p}a=v[c+3e3>>2];if(!a){break p}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2976>>2]=0;v[c+2960>>2]=126144;v[c+2856>>2]=126184;a=v[c+2952>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2944>>2];q:{if((a|0)<0|!(a&2147483647)){break q}a=v[c+2936>>2];if((a|0)==(c+2916|0)){t[c+2932|0]=0;break q}if(!a){break q}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2912>>2];r:{if((a|0)<0|!(a&2147483647)){break r}a=v[c+2904>>2];if((a|0)==(c+2884|0)){t[c+2900|0]=0;break r}if(!a){break r}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2752>>2]=126184;a=v[c+2848>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2840>>2];s:{if((a|0)<0|!(a&2147483647)){break s}a=v[c+2832>>2];if((a|0)==(c+2812|0)){t[c+2828|0]=0;break s}if(!a){break s}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2808>>2];t:{if((a|0)<0|!(a&2147483647)){break t}a=v[c+2800>>2];if((a|0)==(c+2780|0)){t[c+2796|0]=0;break t}if(!a){break t}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2728>>2]=0;v[c+2712>>2]=126144;a=v[c+2516>>2];if(!(!a|v[c+2520>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2516>>2]=0;a=v[c+2512>>2];u:{if((a|0)<0|!(a&2147483647)){break u}a=v[c+2504>>2];if(!a){break u}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2500>>2];v:{if((a|0)<0|!(a&2147483647)){break v}a=v[c+2492>>2];if(!a){break v}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2488>>2];w:{if((a|0)<0|!(a&2147483647)){break w}a=v[c+2480>>2];if(!a){break w}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2476>>2];x:{if((a|0)<0|!(a&2147483647)){break x}a=v[c+2468>>2];if(!a){break x}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2464>>2];y:{if((a|0)<0|!(a&2147483647)){break y}a=v[c+2456>>2];if(!a){break y}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2444>>2];if(!(!a|v[c+2448>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2444>>2]=0;a=v[c+2432>>2];if(!(!a|v[c+2436>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2432>>2]=0;a=v[c+2428>>2];z:{if((a|0)<0|!(a&2147483647)){break z}a=v[c+2420>>2];if(!a){break z}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2340>>2];A:{if((a|0)<0|!(a&2147483647)){break A}a=v[c+2332>>2];if(!a){break A}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2328>>2];B:{if((a|0)<0|!(a&2147483647)){break B}a=v[c+2320>>2];if(!a){break B}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2316>>2];C:{if((a|0)<0|!(a&2147483647)){break C}a=v[c+2308>>2];if(!a){break C}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2304>>2];D:{if((a|0)<0|!(a&2147483647)){break D}a=v[c+2296>>2];if(!a){break D}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2292>>2];E:{if((a|0)<0|!(a&2147483647)){break E}a=v[c+2284>>2];if(!a){break E}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2240>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2200>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+2156>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;f=c+1876|0;a=v[f+288>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];F:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;G:{if(!h){break G}b=h<<2;if(!b){break G}a=v[37696];e=a+12|0;a=(k=e,l=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?53263:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}e=v[d+20>>2];i=(e<<2)+a|0;if((e|0)>0){g=v[d+16>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[d+8>>2];H:{if(v[d+24>>2]<0){break H}b=v[d+16>>2];if(!b){break H}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=a;v[d+20>>2]=e+1;break F}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[f+288>>2]>>2];v[f+288>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Ms(b,e,a);Ms(v[f+264>>2],v[f+268>>2],a);a=v[d+24>>2];I:{if((a|0)<0|!(a&2147483647)){break I}a=v[d+16>>2];if(!a){break I}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+2140>>2];b=v[c+2144>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+2140>>2]}b=v[c+2148>>2];J:{if((b|0)<0|!(b&2147483647)){break J}if((c+1880|0)==(a|0)){t[c+2136|0]=0;break J}if(!a){break J}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+1864>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;f=c+1584|0;a=v[f+288>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];K:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;L:{if(!h){break L}b=h<<2;if(!b){break L}a=v[37696];e=a+12|0;a=(o=e,n=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?52633:63804,l=16608,k=553,j=v[v[e>>2]+8>>2],Ba[j](o|0,n|0,m|0,l|0,k|0)|0)}e=v[d+20>>2];i=(e<<2)+a|0;if((e|0)>0){g=v[d+16>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[d+8>>2];M:{if(v[d+24>>2]<0){break M}b=v[d+16>>2];if(!b){break M}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=a;v[d+20>>2]=e+1;break K}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[f+288>>2]>>2];v[f+288>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Ns(b,e,a);Ns(v[f+264>>2],v[f+268>>2],a);a=v[d+24>>2];N:{if((a|0)<0|!(a&2147483647)){break N}a=v[d+16>>2];if(!a){break N}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+1848>>2];b=v[c+1852>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+1848>>2]}b=v[c+1856>>2];O:{if((b|0)<0|!(b&2147483647)){break O}if((c+1588|0)==(a|0)){t[c+1844|0]=0;break O}if(!a){break O}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+1572>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;f=c+1292|0;a=v[f+288>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];P:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;Q:{if(!h){break Q}b=h<<2;if(!b){break Q}a=v[37696];e=a+12|0;a=(k=e,l=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?52331:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}e=v[d+20>>2];i=(e<<2)+a|0;if((e|0)>0){g=v[d+16>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[d+8>>2];R:{if(v[d+24>>2]<0){break R}b=v[d+16>>2];if(!b){break R}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=a;v[d+20>>2]=e+1;break P}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[f+288>>2]>>2];v[f+288>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Os(b,e,a);Os(v[f+264>>2],v[f+268>>2],a);a=v[d+24>>2];S:{if((a|0)<0|!(a&2147483647)){break S}a=v[d+16>>2];if(!a){break S}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+1556>>2];b=v[c+1560>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+1556>>2]}b=v[c+1564>>2];T:{if((b|0)<0|!(b&2147483647)){break T}if((c+1296|0)==(a|0)){t[c+1552|0]=0;break T}if(!a){break T}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1252>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1248>>2];U:{if((a|0)<0|!(a&2147483647)){break U}a=v[c+1240>>2];if(!a){break U}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1200>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1188>>2];V:{if((a|0)<0|!(a&2147483647)){break V}a=v[c+1180>>2];if(!a){break V}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1176>>2];W:{if((a|0)<0|!(a&2147483647)){break W}a=v[c+1168>>2];if(!a){break W}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1164>>2];X:{if((a|0)<0|!(a&2147483647)){break X}a=v[c+1156>>2];if(!a){break X}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1096>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1076>>2];Y:{if((a|0)<0|!(a&2147483647)){break Y}a=v[c+1068>>2];if(!a){break Y}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+964>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;a=v[c+972>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];Z:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;_:{if(!f){break _}b=f<<2;if(!b){break _}a=v[37696];e=a+12|0;a=(o=e,n=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?54083:63804,l=16608,k=553,j=v[v[e>>2]+8>>2],Ba[j](o|0,n|0,m|0,l|0,k|0)|0)}g=v[d+20>>2];h=(g<<2)+a|0;if((g|0)>0){e=v[d+16>>2];b=a;while(1){v[b>>2]=v[e>>2];e=e+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}v[h>>2]=v[d+8>>2];$:{if(v[d+24>>2]<0){break $}b=v[d+16>>2];if(!b){break $}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);g=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=a;v[d+20>>2]=g+1;break Z}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[c+972>>2]>>2];v[c+972>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Ps(b,e,a);Ps(v[c+948>>2],v[c+952>>2],a);a=v[d+24>>2];aa:{if((a|0)<0|!(a&2147483647)){break aa}a=v[d+16>>2];if(!a){break aa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+948>>2];b=v[c+952>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+948>>2]}b=v[c+956>>2];ba:{if((b|0)<0|!(b&2147483647)){break ba}if((c+688|0)==(a|0)){t[c+944|0]=0;break ba}if(!a){break ba}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+672>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;a=v[c+680>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];ca:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;da:{if(!f){break da}b=f<<2;if(!b){break da}a=v[37696];e=a+12|0;a=(k=e,l=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?52957:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}g=v[d+20>>2];h=(g<<2)+a|0;if((g|0)>0){e=v[d+16>>2];b=a;while(1){v[b>>2]=v[e>>2];e=e+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}v[h>>2]=v[d+8>>2];ea:{if(v[d+24>>2]<0){break ea}b=v[d+16>>2];if(!b){break ea}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);g=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=a;v[d+20>>2]=g+1;break ca}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[c+680>>2]>>2];v[c+680>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Qs(b,e,a);Qs(v[c+656>>2],v[c+660>>2],a);a=v[d+24>>2];fa:{if((a|0)<0|!(a&2147483647)){break fa}a=v[d+16>>2];if(!a){break fa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+656>>2];b=v[c+660>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+656>>2]}b=v[c+664>>2];ga:{if((b|0)<0|!(b&2147483647)){break ga}if((c+396|0)==(a|0)){t[c+652|0]=0;break ga}if(!a){break ga}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+380>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;a=v[c+388>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];ha:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;ia:{if(!f){break ia}b=f<<2;if(!b){break ia}a=v[37696];e=a+12|0;a=(o=e,n=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?52491:63804,l=16608,k=553,j=v[v[e>>2]+8>>2],Ba[j](o|0,n|0,m|0,l|0,k|0)|0)}g=v[d+20>>2];h=(g<<2)+a|0;if((g|0)>0){e=v[d+16>>2];b=a;while(1){v[b>>2]=v[e>>2];e=e+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}v[h>>2]=v[d+8>>2];ja:{if(v[d+24>>2]<0){break ja}b=v[d+16>>2];if(!b){break ja}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);g=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=a;v[d+20>>2]=g+1;break ha}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[c+388>>2]>>2];v[c+388>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Rs(b,e,a);Rs(v[c+364>>2],v[c+368>>2],a);a=v[d+24>>2];ka:{if((a|0)<0|!(a&2147483647)){break ka}a=v[d+16>>2];if(!a){break ka}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+364>>2];b=v[c+368>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+364>>2]}b=v[c+372>>2];la:{if((b|0)<0|!(b&2147483647)){break la}if((c+104|0)==(a|0)){t[c+360|0]=0;break la}if(!a){break la}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+84>>2];ma:{if((a|0)<0|!(a&2147483647)){break ma}a=v[c+76>>2];if(!a){break ma}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+72>>2];na:{if((a|0)<0|!(a&2147483647)){break na}a=v[c- -64>>2];if(!a){break na}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+60>>2];oa:{if((a|0)<0|!(a&2147483647)){break oa}a=v[c+52>>2];if(!a){break oa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+48>>2];pa:{if((a|0)<0|!(a&2147483647)){break pa}a=v[c+40>>2];if(!a){break pa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+32>>2];qa:{if((a|0)<0|!(a&2147483647)){break qa}a=v[c+24>>2];if(!a){break qa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a-v[a-4>>2]|0)}}function EL(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,A=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=C(0),L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=0,_=0,$=0,aa=0,ba=0;h=v[a+96>>2];c=v[b+40>>2];if(h>>>0>>0){e=c<<2;if(e){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,e,24422,13406,2977)|0;h=v[a+96>>2]}if(h){H9(d,v[a+92>>2],h<<2);j=v[a+96>>2]}if(c>>>0>j>>>0){j=j<<2;I9(j+d|0,255,e-j|0)}j=v[a+92>>2];if(j){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,j)}v[a+96>>2]=c;v[a+92>>2]=d}v[a+124>>2]=v[b+28>>2];v[a+128>>2]=v[b+32>>2];n=v[b+16>>2];a:{if(!n){break a}h=v[b+20>>2];if(!h){break a}d=v[a+92>>2];while(1){g=0;c=v[a+88>>2];l=v[n>>2]<<2;i=v[l+d>>2];j=i>>>2|0;d=v[c+24>>2]+B(j,12)|0;f=x[d+4>>1];b:{if(!f){break b}e=d+8|0;e=(f|0)!=1?v[(c+B(f,12)|0)+92>>2]+(v[d+8>>2]<<2)|0:e;m=v[c+12>>2];k=f>>>0>1?f:1;while(1){o=(g<<2)+e|0;pL(v[(m+B(x[o+2>>1],40)|0)+28>>2],x[o>>1]);g=g+1|0;if((k|0)!=(g|0)){continue}break}if(f>>>0<2){break b}e=v[d+8>>2];k=v[(c+B(f,12)|0)+92>>2]+(e<<2)|0;f=(c+(f<<2)|0)+3176|0;v[k>>2]=v[f>>2];v[f>>2]=e}g=0;u[d+4>>1]=0;u[d+6>>1]=x[d+6>>1]|4;v[d+8>>2]=v[c+4>>2];f=i>>>7|0;c:{if(f>>>0>2]){e=j&31;d=v[c+76>>2];break c}d=v[37696];e=j&31;i=(j+128>>>5|0)+((e|0)!=0)|0;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,i<<2,24422,13406,274)|0;m=v[c+80>>2];d:{if(m){H9(d,v[c+76>>2],m<<2);g=v[c+80>>2];if((i|0)==(g|0)){break d}}I9((g<<2)+d|0,0,i-g<<2)}g=v[c+76>>2];if(g){m=v[37696];Ba[v[v[m+12>>2]+12>>2]](m+12|0,g)}v[c+80>>2]=i;v[c+76>>2]=d}d=(f<<2)+d|0;v[d>>2]=v[d>>2]|1<>2]=j;e:{if(f>>>0>2]){e=j&31;d=v[c+84>>2];break e}d=v[37696];e=j&31;i=(j+128>>>5|0)+((e|0)!=0)|0;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,i<<2,24422,13406,274)|0;g=0;m=v[c+88>>2];f:{if(m){H9(d,v[c+84>>2],m<<2);g=v[c+88>>2];if((i|0)==(g|0)){break f}}I9((g<<2)+d|0,0,i-g<<2)}g=v[c+84>>2];if(g){m=v[37696];Ba[v[v[m+12>>2]+12>>2]](m+12|0,g)}v[c+88>>2]=i;v[c+84>>2]=d}d=(f<<2)+d|0;v[d>>2]=v[d>>2]|1<>>0>2]){e=j&31;d=v[c+4216>>2];break g}d=v[37696];e=j&31;j=(j+128>>>5|0)+((e|0)!=0)|0;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,j<<2,24422,13406,274)|0;g=0;i=v[c+4220>>2];h:{if(i){H9(d,v[c+4216>>2],i<<2);g=v[c+4220>>2];if((j|0)==(g|0)){break h}}I9((g<<2)+d|0,0,j-g<<2)}g=v[c+4216>>2];if(g){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,g)}v[c+4220>>2]=j;v[c+4216>>2]=d}c=(f<<2)+d|0;d=v[c>>2];$=c,aa=Uaa(-2,e)&d,v[$>>2]=aa;d=v[a+92>>2];v[l+d>>2]=-1;n=n+4|0;h=h-1|0;if(h){continue}break}}g=xa+-64|0;xa=g;n=v[b>>2];i:{if(!n){break i}j=v[b+4>>2];if(!j){break i}E=v[b+28>>2];D=v[b+24>>2];while(1){r=v[n>>2];c=D+B(r,24)|0;S=z[c+16>>2];T=z[c+20>>2];U=z[c+24>>2];V=z[c>>2];W=z[c+4>>2];X=z[c+8>>2];K=z[c+12>>2];F=r<<2;A=z[F+v[b+36>>2]>>2];z[g+60>>2]=K-A;z[g+56>>2]=X-A;z[g+52>>2]=W-A;z[g+48>>2]=V-A;z[g+44>>2]=A+U;z[g+40>>2]=A+T;z[g+36>>2]=A+S;z[g+32>>2]=A+K;v[g+8>>2]=g+48;c=v[g+8>>2];v[g+8>>2]=g+32;d=v[g+8>>2];e=v[c>>2];v[g+8>>2]=((e|0)<0?e^-1:e|-2147483648)-16>>>1&2147483640;e=v[c+4>>2];v[g+12>>2]=((e|0)<0?e^-1:e|-2147483648)-16>>>1&2147483640;c=v[c+8>>2];v[g+16>>2]=((c|0)<0?c^-1:c|-2147483648)-16>>>1&2147483640;c=v[d>>2];v[g+20>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;c=v[d+4>>2];v[g+24>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;c=v[d+8>>2];v[g+28>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;l=g+8|0;s=!v[E+F>>2];o=xa-1040|0;xa=o;f=v[a+88>>2];d=v[f+4>>2];j:{if((d|0)!=-1){m=v[f+24>>2]+B(d,12)|0;v[f+4>>2]=v[m+8>>2];e=(x[m+6>>1]>>>1^-1)&1;break j}d=v[f+28>>2];c=d;e=c+1|0;h=v[f+32>>2]&2147483647;k:{if(e>>>0<=h>>>0){break k}c=d;k=h;h=h?h<<1:2;h=e>>>0>h>>>0?e:h;if(k>>>0>=h>>>0){break k}tL(f+24|0,h);c=v[f+28>>2]}v[f+28>>2]=e;m=v[f+24>>2]+B(c,12)|0;e=0}G=s|e<<1|d<<2;l:{m:{n:{o:{p:{q:{p=v[f>>2];if(!p){break q}J=v[f+12>>2];h=0;i=1;c=0;while(1){q=J+B(h,40)|0;H=v[q+16>>2];I=v[l>>2];r:{if(H>>>0>>0){break r}R=v[l+12>>2];L=v[q+4>>2];if(R>>>0>>0){break r}M=v[q+20>>2];N=v[l+4>>2];if(M>>>0>>0){break r}O=v[l+16>>2];P=v[q+8>>2];if(O>>>0

>>0){break r}Q=v[q+24>>2];Y=v[l+8>>2];if(Q>>>0>>0){break r}Z=v[l+20>>2];_=v[q+12>>2];if(Z>>>0<_>>>0){break r}k=0;i=i&(I>>>0>>0|N>>>0

>>0?k:Y>>>0>=_>>>0&H>>>0>=R>>>0&M>>>0>=O>>>0&Q>>>0>=Z>>>0);k=v[q+28>>2];if(v[k+64>>2]==65535){a9(v[37696],32,13406,2355,64774,0);break r}k=oL(k,l,G,s);q=o+(c<<2)|0;u[q+2>>1]=h;u[q>>1]=k;c=c+1|0}h=h+1|0;if((p|0)!=(h|0)){continue}break}switch(c|0){case 1:break o;case 0:break q;default:break p}}u[m+4>>1]=0;c=1;p=e<<1;break m}l=B(c,12)+f|0;k=l+92|0;q=((c<<2)+f|0)+3176|0;h=v[q>>2];s:{if((h|0)!=-1){v[m+8>>2]=h;h=v[k>>2]+(h<<2)|0;v[q>>2]=v[h>>2];break s}h=v[l+96>>2];v[m+8>>2]=h;q=(c&1073741823)+h|0;p=v[l+100>>2]&2147483647;t:{if(q>>>0<=p>>>0){break t}I=p;p=p?p<<1:2;p=p>>>0>>0?q:p;if(I>>>0>=p>>>0){break t}zw(k,p);h=v[l+96>>2]}k=v[k>>2];v[l+96>>2]=q;h=k+(h<<2)|0}H9(h,o,c<<2);break n}v[m+8>>2]=v[o>>2]}u[m+4>>1]=c;p=e<<1;c=0;if(!(i&1)){break m}c=v[f+4220>>2];k=d>>>5|0;u:{if(c>>>0>k>>>0){i=d&31;h=v[f+4216>>2];break u}l=0;h=0;i=d&31;e=(d+128>>>5|0)+((i|0)!=0)|0;if(e){c=v[37696];h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e<<2,24422,13406,274)|0;c=v[f+4220>>2]}if(c){H9(h,v[f+4216>>2],c<<2);l=v[f+4220>>2]}if((e|0)!=(l|0)){I9((l<<2)+h|0,0,e-l<<2)}c=v[f+4216>>2];if(c){l=v[37696];Ba[v[v[l+12>>2]+12>>2]](l+12|0,c)}v[f+4220>>2]=e;v[f+4216>>2]=h}c=(k<<2)+h|0;e=v[c>>2];$=c,aa=Uaa(-2,i)&e,v[$>>2]=aa;break l}k=v[f+4220>>2];q=d>>>5|0;v:{if(k>>>0>q>>>0){l=d&31;h=v[f+4216>>2];break v}i=0;h=0;l=d&31;e=(d+128>>>5|0)+((l|0)!=0)|0;if(e){h=v[37696];h=Ba[v[v[h+12>>2]+8>>2]](h+12|0,e<<2,24422,13406,274)|0;k=v[f+4220>>2]}if(k){H9(h,v[f+4216>>2],k<<2);i=v[f+4220>>2]}if((e|0)!=(i|0)){I9((i<<2)+h|0,0,e-i<<2)}i=v[f+4216>>2];if(i){k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,i)}v[f+4220>>2]=e;v[f+4216>>2]=h}e=(q<<2)+h|0;v[e>>2]=v[e>>2]|1<>2]=G;v[o+1036>>2]=r;c=v[f+4208>>2];if(c>>>0>=(v[f+4212>>2]&2147483647)>>>0){on(f+4204|0,o+1036|0);break l}v[v[f+4204>>2]+(c<<2)>>2]=r;v[f+4208>>2]=v[f+4208>>2]+1}if(!s){c=v[f+80>>2];e=d>>>5|0;w:{if(c>>>0>e>>>0){i=d&31;h=v[f+76>>2];break w}l=0;h=0;i=d&31;d=(d+128>>>5|0)+((i|0)!=0)|0;if(d){c=v[37696];h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d<<2,24422,13406,274)|0;c=v[f+80>>2]}if(c){H9(h,v[f+76>>2],c<<2);l=v[f+80>>2]}if((d|0)!=(l|0)){I9((l<<2)+h|0,0,d-l<<2)}c=v[f+76>>2];if(c){l=v[37696];Ba[v[v[l+12>>2]+12>>2]](l+12|0,c)}v[f+80>>2]=d;v[f+76>>2]=h}c=(e<<2)+h|0;v[c>>2]=v[c>>2]|1<>2]=r;u[m+6>>1]=p;xa=o+1040|0;v[F+v[a+92>>2]>>2]=G;n=n+4|0;j=j-1|0;if(j){continue}break}}xa=g- -64|0;h=xa+-64|0;xa=h;n=v[b+8>>2];x:{if(!n){break x}j=v[b+12>>2];if(!j){break x}R=v[b+24>>2];while(1){d=v[n>>2];c=R+B(d,24)|0;S=z[c+16>>2];T=z[c+20>>2];U=z[c+24>>2];V=z[c>>2];W=z[c+4>>2];X=z[c+8>>2];K=z[c+12>>2];f=d<<2;A=z[f+v[b+36>>2]>>2];z[h+60>>2]=K-A;z[h+56>>2]=X-A;z[h+52>>2]=W-A;z[h+48>>2]=V-A;z[h+44>>2]=A+U;z[h+40>>2]=A+T;z[h+36>>2]=A+S;z[h+32>>2]=A+K;v[h+8>>2]=h+48;c=v[h+8>>2];v[h+8>>2]=h+32;d=v[h+8>>2];e=v[c>>2];v[h+8>>2]=((e|0)<0?e^-1:e|-2147483648)-16>>>1&2147483640;e=v[c+4>>2];v[h+12>>2]=((e|0)<0?e^-1:e|-2147483648)-16>>>1&2147483640;c=v[c+8>>2];v[h+16>>2]=((c|0)<0?c^-1:c|-2147483648)-16>>>1&2147483640;c=v[d>>2];v[h+20>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;c=v[d+4>>2];v[h+24>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;c=v[d+8>>2];v[h+28>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;i=h+8|0;g=0;l=xa-2080|0;xa=l;G=v[f+v[a+92>>2]>>2];m=G>>>2|0;e=v[a+88>>2];J=v[e+24>>2];o=v[e+12>>2];r=v[e>>2];q=G>>>7|0;y:{if(q>>>0>2]){c=m&31;f=v[e+76>>2];break y}f=v[37696];c=m&31;d=(m+128>>>5|0)+((c|0)!=0)|0;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,d<<2,24422,13406,274)|0;k=v[e+80>>2];z:{if(k){H9(f,v[e+76>>2],k<<2);g=v[e+80>>2];if((d|0)==(g|0)){break z}}I9((g<<2)+f|0,0,d-g<<2)}g=v[e+76>>2];if(g){k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,g)}v[e+80>>2]=d;v[e+76>>2]=f}H=1;d=(q<<2)+f|0;v[d>>2]=v[d>>2]|1<>1];if((k|0)!=1){break B}c=x[F+10>>1];d=o+B(c,40)|0;if(v[d+32>>2]|y[d+4>>2]>y[i>>2]){break B}d=o+B(c,40)|0;if(y[d+8>>2]>y[i+4>>2]|y[d+12>>2]>y[i+8>>2]){break B}d=o+B(c,40)|0;if(y[d+16>>2]>2]|y[d+20>>2]>2]|y[(o+B(c,40)|0)+24>>2]>2]){break B}C:{if(q>>>0>2]){d=m&31;f=v[e+4216>>2];break C}f=v[37696];d=m&31;g=(m+128>>>5|0)+((d|0)!=0)|0;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,g<<2,24422,13406,274)|0;r=0;m=v[e+4220>>2];D:{if(m){H9(f,v[e+4216>>2],m<<2);r=v[e+4220>>2];if((g|0)==(r|0)){break D}}I9((r<<2)+f|0,0,g-r<<2)}m=v[e+4216>>2];if(m){k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,m)}v[e+4220>>2]=g;v[e+4216>>2]=f}e=(q<<2)+f|0;f=v[e>>2];$=e,aa=Uaa(-2,d)&f,v[$>>2]=aa;qL(v[(o+B(c,40)|0)+28>>2],i,x[F+8>>1]);break A}E:{if(!r){c=0;break E}g=v[i+20>>2];p=v[i+8>>2];s=v[i+16>>2];E=v[i+4>>2];D=v[i+12>>2];I=v[i>>2];f=0;c=0;while(1){d=o+B(f,40)|0;L=v[d+16>>2];F:{if(L>>>0>>0){break F}M=v[d+4>>2];if(M>>>0>D>>>0){break F}N=v[d+20>>2];if(N>>>0>>0){break F}O=v[d+8>>2];if(O>>>0>s>>>0){break F}P=v[d+24>>2];if(P>>>0

>>0){break F}Q=v[d+12>>2];if(Q>>>0>g>>>0){break F}d=0;v[(l+1040|0)+(c<<2)>>2]=f;c=c+1|0;H=H&(I>>>0>>0|E>>>0>>0?d:D>>>0<=L>>>0&p>>>0>=Q>>>0&s>>>0<=N>>>0&g>>>0<=P>>>0)}f=f+1|0;if((r|0)!=(f|0)){continue}break}}s=J+B(m,12)|0;p=s+8|0;G:{H:{if((k|0)==1){break H}p=v[(e+B(k,12)|0)+92>>2]+(v[s+8>>2]<<2)|0;if(k){break H}g=0;break G}r=0;g=0;while(1){E=(r<<2)+p|0;D=x[E+2>>1];d=0;I:{J:{if(!c){break J}f=0;K:{if((D|0)==v[l+1040>>2]){d=c-1|0;v[l+1040>>2]=v[(l+1040|0)+(d<<2)>>2];break K}while(1){f=f+1|0;if((f|0)==(c|0)){d=c;break J}d=(l+1040|0)+(f<<2)|0;if((D|0)!=v[d>>2]){continue}break}I=d;d=c-1|0;v[I>>2]=v[(l+1040|0)+(d<<2)>>2];if(c>>>0<=f>>>0){break J}}qL(v[(o+B(D,40)|0)+28>>2],i,x[E>>1]);v[l+(g<<2)>>2]=x[E>>1]|x[E+2>>1]<<16;g=g+1|0;break I}pL(v[(o+B(D,40)|0)+28>>2],x[E>>1])}c=d;r=r+1|0;if((k|0)!=(r|0)){continue}break}}if(c){d=G&1;f=0;while(1){r=v[(l+1040|0)+(f<<2)>>2];E=oL(v[(o+B(r,40)|0)+28>>2],i,G,d);D=l+(g<<2)|0;u[D+2>>1]=r;u[D>>1]=E;g=g+1|0;f=f+1|0;if((f|0)!=(c|0)){continue}break}}L:{M:{N:{O:{P:{if((g|0)==(k|0)){if(!k){break P}H9(p,l,k<<2);break O}if(k>>>0>=2){c=v[s+8>>2];d=(e+(k<<2)|0)+3176|0;v[v[(e+B(k,12)|0)+92>>2]+(c<<2)>>2]=v[d>>2];v[d>>2]=c}Q:{switch(g|0){default:d=e+B(g,12)|0;f=d+92|0;i=(e+(g<<2)|0)+3176|0;c=v[i>>2];R:{if((c|0)!=-1){v[s+8>>2]=c;c=v[f>>2]+(c<<2)|0;v[i>>2]=v[c>>2];break R}c=v[d+96>>2];v[s+8>>2]=c;i=(g&1073741823)+c|0;k=v[d+100>>2]&2147483647;S:{if(i>>>0<=k>>>0){break S}p=k;k=k?k<<1:2;k=i>>>0>k>>>0?i:k;if(p>>>0>=k>>>0){break S}zw(f,k);c=v[d+96>>2]}f=v[f>>2];v[d+96>>2]=i;c=f+(c<<2)|0}H9(c,l,g<<2);break P;case 1:break Q;case 0:break O}}v[s+8>>2]=v[l>>2]}u[F+4>>1]=g;break N}u[F+4>>1]=g;if(!k|g){break N}v[s+8>>2]=G;c=v[J+B(m,12)>>2];v[l+2076>>2]=c;d=v[e+4208>>2];if(d>>>0<(v[e+4212>>2]&2147483647)>>>0){break M}on(e+4204|0,l+2076|0);break L}if(!((g|0)!=0&H)){break L}T:{if(q>>>0>2]){c=m&31;f=v[e+4216>>2];break T}d=v[37696];c=m&31;g=(m+128>>>5|0)+((c|0)!=0)|0;f=Ba[v[v[d+12>>2]+8>>2]](d+12|0,g<<2,24422,13406,274)|0;d=0;i=v[e+4220>>2];U:{if(i){H9(f,v[e+4216>>2],i<<2);d=v[e+4220>>2];if((g|0)==(d|0)){break U}}I9((d<<2)+f|0,0,g-d<<2)}d=v[e+4216>>2];if(d){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,d)}v[e+4220>>2]=g;v[e+4216>>2]=f}d=(q<<2)+f|0;e=v[d>>2];$=d,aa=Uaa(-2,c)&e,v[$>>2]=aa;break A}v[v[e+4204>>2]+(d<<2)>>2]=c;v[e+4208>>2]=v[e+4208>>2]+1}V:{if(q>>>0>2]){c=m&31;f=v[e+4216>>2];break V}d=v[37696];c=m&31;g=(m+128>>>5|0)+((c|0)!=0)|0;f=Ba[v[v[d+12>>2]+8>>2]](d+12|0,g<<2,24422,13406,274)|0;d=0;i=v[e+4220>>2];W:{if(i){H9(f,v[e+4216>>2],i<<2);d=v[e+4220>>2];if((g|0)==(d|0)){break W}}I9((d<<2)+f|0,0,g-d<<2)}d=v[e+4216>>2];if(d){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,d)}v[e+4220>>2]=g;v[e+4216>>2]=f}d=(q<<2)+f|0;v[d>>2]=v[d>>2]|1<>2];F=v[a>>2];if(F){E=v[a+12>>2];a=0;while(1){b=v[(E+B(a,40)|0)+28>>2];X:{if(!b){break X}c=w[b+168|0];if(!(c?1:v[b+116>>2])){break X}if(c){f=0;h=0;n=0;o=xa-8240|0;xa=o;t[b+168|0]=0;e=v[b+84>>2];Y:{if(!e){c=v[b+124>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+124>>2]=0;v[b+128>>2]=0;break Y}d=o+48|0;c=e<<4;if(c>>>0>=8193){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,13406,743)|0}q=(e<<2)+d|0;p=B(e,12)+d|0;s=(e<<3)+d|0;j=v[b+96>>2];g=v[b+124>>2];c=0;while(1){i=c>>>5|0;Z:{if(!(i>>>0>=y[b+128>>2]|!(v[g+(i<<2)>>2]>>>c&1))){i=f<<2;v[i+d>>2]=v[j+B(c,24)>>2];v[i+s>>2]=c;f=f+1|0;break Z}i=h<<2;v[i+q>>2]=v[j+B(c,24)>>2];v[i+p>>2]=c;h=h+1|0}c=c+1|0;if((e|0)!=(c|0)){continue}break}D=RU(o+8|0);r=v[VU(f>>>0<1024?b+132|0:D,d,f,1)+8>>2];i=0;l=-1;c=v[b+80>>2];j=c<<1;if(j){c=v[37696];n=Ba[v[v[c+12>>2]+8>>2]](c+12|0,j,24422,13406,791)|0;c=v[b+80>>2]}j=($=-1,aa=Raa(c+2|0,0,24,0),ba=Aa,ba?$:aa);if(j){c=v[37696];g=Ba[v[v[c>>2]+20>>2]](c)|0?49731:63804;i=Ba[v[v[c+12>>2]+8>>2]](c+12|0,j,g,13406,793)|0}c=B(e,24)+i|0;v[c>>2]=-1;v[c+24>>2]=-1;l=f?v[(v[r>>2]<<2)+d>>2]:l;j=h?v[q>>2]:-1;J=e>>>0>1?e:1;c=0;e=0;m=0;while(1){_:{if(j>>>0>l>>>0){k=v[s+(v[r+(e<<2)>>2]<<2)>>2];l=-1;e=e+1|0;if(e>>>0>=f>>>0){break _}l=v[(v[r+(e<<2)>>2]<<2)+d>>2];break _}k=v[p+(m<<2)>>2];j=-1;m=m+1|0;if(h>>>0>m>>>0){j=v[q+(m<<2)>>2]}}G=x[v[b+104>>2]+(k<<1)>>1];k=v[b+96>>2]+B(k,24)|0;H=v[k+4>>2];g=B(c,24)+i|0;v[g>>2]=v[k>>2];v[g+4>>2]=H;H=v[k+20>>2];v[g+16>>2]=v[k+16>>2];v[g+20>>2]=H;H=v[k+12>>2];v[g+8>>2]=v[k+8>>2];v[g+12>>2]=H;u[(c<<1)+n>>1]=G;v[v[b+76>>2]+(G<<3)>>2]=c;c=c+1|0;if((J|0)!=(c|0)){continue}break}if((o+48|0)!=(d|0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}c=v[b+96>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+96>>2]=i;c=v[b+104>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+104>>2]=n;c=v[b+124>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+124>>2]=0;v[b+128>>2]=0;SU(D)}xa=o+8240|0;t[b+169|0]=1;v[b+120>>2]=0;v[b+116>>2]=v[b+92>>2]}d=b+176|0;j=0;e=0;i=0;h=v[b+116>>2];v[b+116>>2]=0;if((h|0)!=v[b+120>>2]){t[b+169|0]=1}$:{aa:{c=v[b+92>>2];if(!c){break aa}g=v[b+112>>2];f=v[b+100>>2];ba:{if(!h){break ba}if(h-1>>>0>=3){l=h&-4;while(1){v[g+(j<<2)>>2]=v[f+B(j,24)>>2];n=j|1;v[g+(n<<2)>>2]=v[f+B(n,24)>>2];n=j|2;v[g+(n<<2)>>2]=v[f+B(n,24)>>2];n=j|3;v[g+(n<<2)>>2]=v[f+B(n,24)>>2];j=j+4|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}i=h&3;if(!i){break ba}while(1){v[g+(j<<2)>>2]=v[f+B(j,24)>>2];j=j+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}l=c-h|0;n=w[b+169|0];ca:{if(!n|(c|0)==(h|0)){break ca}e=0;j=0;if(c+(h^-1)>>>0>=3){m=l&-4;i=0;while(1){k=h+j|0;v[g+(k<<2)>>2]=v[f+B(k,24)>>2];k=h+(j|1)|0;v[g+(k<<2)>>2]=v[f+B(k,24)>>2];k=h+(j|2)|0;v[g+(k<<2)>>2]=v[f+B(k,24)>>2];k=h+(j|3)|0;v[g+(k<<2)>>2]=v[f+B(k,24)>>2];j=j+4|0;i=i+4|0;if((m|0)!=(i|0)){continue}break}}i=l&3;if(!i){break ca}while(1){m=h+j|0;v[g+(m<<2)>>2]=v[f+B(m,24)>>2];j=j+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}v[b+116>>2]=h;if(!h){break aa}v[b+120>>2]=h;da:{if((c|0)!=(h|0)){if(n){m=v[VU(b+132|0,g+(h<<2)|0,l,1)+8>>2];if(l>>>0>y[d+12800>>2]){j=d+12288|0;c=v[d+12808>>2];if(!((j|0)==(c|0)|!c)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);v[d+12808>>2]=0}c=v[d+12812>>2];if(!((c|0)==(d|0)|!c)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);v[d+12812>>2]=0}c=l+2|0;ea:{if(c>>>0<=256){v[d+12812>>2]=d;break ea}j=0;e=($=-1,aa=Raa(c,0,24,0),ba=Aa,ba?$:aa);if(e){c=v[37696];i=Ba[v[v[c>>2]+20>>2]](c)|0?49731:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,i,13406,1260)|0}else{c=0}v[d+12812>>2]=c;c=l<<1;if(!c){break ea}j=v[37696];j=Ba[v[v[j+12>>2]+8>>2]](j+12|0,c,24422,13406,1261)|0}v[d+12800>>2]=l;v[d+12808>>2]=j}i=v[d+12808>>2];e=v[d+12812>>2];j=0;while(1){k=h+v[m+(j<<2)>>2]|0;n=f+B(k,24)|0;o=v[n+4>>2];c=B(j,24)+e|0;v[c>>2]=v[n>>2];v[c+4>>2]=o;o=v[n+20>>2];v[c+16>>2]=v[n+16>>2];v[c+20>>2]=o;o=v[n+12>>2];v[c+8>>2]=v[n+8>>2];v[c+12>>2]=o;u[(j<<1)+i>>1]=x[v[b+108>>2]+(k<<1)>>1];j=j+1|0;if((l|0)!=(j|0)){continue}break}c=B(l,24)+e|0;v[c>>2]=-1;v[c+24>>2]=-1;t[b+169|0]=0;break da}i=v[d+12808>>2];e=v[d+12812>>2];break da}t[b+169|0]=1;e=0;i=0}k=v[VU(b+132|0,g,h,1)+8>>2];j=v[d+12816>>2];fa:{if(h>>>0<=y[d+12804>>2]){c=j;break fa}c=d+6144|0;if(!(!j|(j|0)==(c|0))){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,j);v[d+12816>>2]=0}j=h+2|0;ga:{if(j>>>0<257){break ga}j=($=-1,aa=Raa(j,0,24,0),ba=Aa,ba?$:aa);if(!j){c=0;break ga}c=v[37696];g=Ba[v[v[c>>2]+20>>2]](c)|0?49731:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,j,g,13406,1277)|0}v[d+12804>>2]=h;v[d+12816>>2]=c}d=h>>>0>1?h:1;q=d&1;m=v[b+144>>2];j=0;if(h>>>0>=2){r=d&-2;g=0;while(1){o=v[k+(j<<2)>>2];n=f+B(o,24)|0;p=v[n+4>>2];d=B(j,24)+c|0;v[d>>2]=v[n>>2];v[d+4>>2]=p;p=v[n+20>>2];v[d+16>>2]=v[n+16>>2];v[d+20>>2]=p;p=v[n+12>>2];v[d+8>>2]=v[n+8>>2];v[d+12>>2]=p;u[m+(j<<1)>>1]=x[v[b+108>>2]+(o<<1)>>1];o=j|1;d=B(o,24)+c|0;p=v[k+(o<<2)>>2];n=f+B(p,24)|0;s=v[n+4>>2];v[d>>2]=v[n>>2];v[d+4>>2]=s;s=v[n+20>>2];v[d+16>>2]=v[n+16>>2];v[d+20>>2]=s;s=v[n+12>>2];v[d+8>>2]=v[n+8>>2];v[d+12>>2]=s;u[m+(o<<1)>>1]=x[v[b+108>>2]+(p<<1)>>1];j=j+2|0;g=g+2|0;if((r|0)!=(g|0)){continue}break}}if(q){g=v[k+(j<<2)>>2];f=f+B(g,24)|0;n=v[f+4>>2];d=B(j,24)+c|0;v[d>>2]=v[f>>2];v[d+4>>2]=n;n=v[f+20>>2];v[d+16>>2]=v[f+16>>2];v[d+20>>2]=n;n=v[f+12>>2];v[d+8>>2]=v[f+8>>2];v[d+12>>2]=n;u[m+(j<<1)>>1]=x[v[b+108>>2]+(g<<1)>>1]}d=B(h,24)+c|0;v[d>>2]=-1;v[d+24>>2]=-1;t[b+28|0]=1;v[b+24>>2]=l;v[b+20>>2]=h;v[b+16>>2]=i;v[b+12>>2]=m;v[b+8>>2]=e;v[b+4>>2]=c;v[b>>2]=v[b+76>>2];break $}t[b+169|0]=1;v[b+120>>2]=0;t[b+28|0]=0}h=0;c=v[b+116>>2];ha:{if(!c){break ha}d=v[b+84>>2];if(!d){break ha}v[b+40>>2]=d;v[b+36>>2]=c;v[b+32>>2]=v[b+76>>2];v[b+48>>2]=v[b+96>>2];v[b+52>>2]=v[b+104>>2];v[b+44>>2]=v[b+12992>>2];v[b+56>>2]=v[b+144>>2];h=1}t[b+60|0]=h}a=a+1|0;if((F|0)!=(a|0)){continue}break}}}function BR(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=C(0),p=0,q=0,r=0,s=0,A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=0,Z=0,_=0;H=v[a+20>>2];a=v[a+28>>2];v[a+1092>>2]=v[a+1092>>2]+1;k=v[v[a+988>>2]+128>>2]+1|0;d=xa-48|0;xa=d;b=v[a+976>>2];i=b+1796|0;h=v[a+980>>2];v[i>>2]=(v[i>>2]+v[h+332>>2]|0)+v[h+344>>2];a:{if(k){b=v[b+1024>>2];Ba[v[v[b>>2]+84>>2]](d+8|0,b);p=v[a+2360>>2]&8;f=v[h+332>>2];if(f){c=v[h+328>>2];while(1){q=v[c>>2];n=v[c+4>>2];b=jJ(v[a+2168>>2],q,n);v[c+8>>2]=b;f=f-1|0;if(b){b:{c:{d:{i=w[b+24|0];switch(i|0){case 2:break c;case 0:break d;default:break b}}nJ(v[a+2168>>2],b,4,0,d+8|0,(p|0)!=0);i=v[v[b+4>>2]+40>>2];g=v[v[i+976>>2]+1024>>2];Ba[v[v[g>>2]+36>>2]](g,v[b+56>>2]);vK(v[i+976>>2],v[b+56>>2]);v[b+56>>2]=0;LR(b);i=w[b+24|0]}m=v[b+12>>2];g=a+B(i,12)|0;e=v[g+56>>2]-1|0;v[g+56>>2]=e;l=v[g+52>>2];j=m<<2;v[l+j>>2]=v[l+(e<<2)>>2];v[b+12>>2]=-1;if(e>>>0>m>>>0){v[v[j+v[g+52>>2]>>2]+8>>2]=m}i=a+(i<<2)|0;e=v[i+88>>2];e:{if(e>>>0<=m>>>0){break e}l=i;i=e-1|0;v[l+88>>2]=i;if(i>>>0>=y[g+56>>2]){break e}l=j;j=v[g+52>>2];l=l+j|0;e=v[l>>2];s=l;l=j;j=i<<2;l=v[l+j>>2];v[s>>2]=l;v[j+v[g+52>>2]>>2]=e;v[e+8>>2]=i;v[l+8>>2]=m}iJ(v[a+2168>>2],b)}kJ(v[a+2168>>2],q,n,k,b,d+8|0,(p|0)!=0)}c=c+12|0;if(f){continue}break}}c=v[h+344>>2];if(c){i=v[h+340>>2];while(1){v[i+8>>2]=0;kJ(v[a+2168>>2],v[i>>2],v[i+4>>2],k,0,d+8|0,(p|0)!=0);i=i+12|0;c=c-1|0;if(c){continue}break}}jP(a);b=v[h+272>>2];Ba[v[v[b>>2]+80>>2]](b);b=v[h+272>>2];Ba[v[v[b>>2]+68>>2]](b);break a}jP(a)}xa=d+48|0;yK(v[a+976>>2]);o=z[a+1080>>2];P=v[a+1e3>>2];b=v[a+992>>2];f=xa-112|0;xa=f;e=v[a+988>>2];t[e+124|0]=(v[a+2360>>2]&4)>>>2;v[v[e+316>>2]+8>>2]=0;a=v[e+312>>2];I9(v[a+972>>2],0,v[a+976>>2]<<2);I9(v[a+984>>2],0,v[a+988>>2]<<2);v[a+1012>>2]=0;v[a+1004>>2]=0;v[a+1008>>2]=0;v[a+996>>2]=0;v[a+1e3>>2]=0;f:{g:{h:{i:{if(!v[e+128>>2]){wO(e);if(!v[e+128>>2]){break i}}if(!b|!v[e+132>>2]){break h}break g}if(b){break g}}v[e+132>>2]=0;vO(e);break f}v[e+132>>2]=0;b=v[e+312>>2];i=v[b+304>>2];a=v[i>>2];if(a){v[i>>2]=v[a>>2]}if(!a){a=v[37696];i=Ba[v[v[a>>2]+20>>2]](a)|0?26823:63804;i=Ba[v[v[a+12>>2]+8>>2]](a+12|0,7251,i,19395,82)|0;a=i+19&-16;v[a-4>>2]=a-i;a=sK(a,v[b+308>>2])}v[e+300>>2]=a;z[a+7152>>2]=o;v[e+272>>2]=0;v[v[e+260>>2]+4>>2]=0;v[e+212>>2]=0;v[e+280>>2]=0;v[e+164>>2]=0;v[v[e+152>>2]+4>>2]=0;j:{i=v[e+312>>2];g=v[i+952>>2]&2147483647;k:{if(!g){break k}d=v[i+948>>2];a=0;c=1;while(1){b=v[d+(a<<2)>>2];if(!b){c=c+1|0;a=a+1|0;if((g|0)!=(a|0)){continue}break k}break}k=Qaa(b)|a<<5;b=b&b-1;l:{if(b){break l}h=c>>>0>g>>>0?c:g;while(1){a=a+1|0;if(g>>>0<=a>>>0){b=0;a=h;break l}b=v[d+(a<<2)>>2];if(!b){continue}break}}if((k|0)==-1){break k}X=e+152|0;p=e+260|0;Y=e+136|0;Z=e+168|0;_=e+220|0;g=i;while(1){m:{n:{k=v[v[g+332>>2]+(k>>>v[g+320>>2]<<2)>>2]+B(v[g+312>>2]-1&k,80)|0;o:{if(!(w[k+8|0]&2)){break o}h=x[k+40>>1];if(!(h&4096)|(h&24)==24){break o}q=v[k+16>>2];if(!((h&80?w[v[k+20>>2]+156|0]:0)?1:w[q+156|0])){break o}m=v[k+4>>2];n=v[k+28>>2];l=v[k+24>>2];s=v[k+20>>2];h=v[k>>2];p:{q:{r:{if(!v[e+256>>2]){g=0;break r}d=0;j=v[e+232>>2];g=v[e+240>>2]-1|0;c=q+(q<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;r=B(c>>>16^c^1016421269,1000007);c=l+(l<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[j+((g&(r^c^c>>>16))<<2)>>2];s:{if((c|0)==-1){break s}r=v[e+228>>2];R=v[e+224>>2];while(1){d=R+B(c,12)|0;if((q|0)==v[d>>2]&(l|0)==v[d+4>>2]){break s}c=v[r+(c<<2)>>2];if((c|0)!=-1){continue}break}d=0}c=s+(s<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;r=B(c>>>16^c^1016421269,1000007);c=n+(n<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[j+((g&(r^(c>>>16^c)))<<2)>>2];t:{if((c|0)!=-1){g=v[e+228>>2];r=v[e+224>>2];while(1){j=r+B(c,12)|0;if((s|0)==v[j>>2]&(n|0)==v[j+4>>2]){break t}c=v[g+(c<<2)>>2];if((c|0)!=-1){continue}break}}j=0}g=0;c=0;c=d?v[d+8>>2]:c;g=j?v[j+8>>2]:g;if(c){break q}}c=xO(Z);v[f+108>>2]=l;v[f+104>>2]=q;d=yO(_,f+104|0,f+72|0);if(!w[f+72|0]){v[d>>2]=v[f+104>>2];j=v[f+108>>2];v[d+8>>2]=c;v[d+4>>2]=j}v[c+92>>2]=l;v[c+96>>2]=q;d=l+36|0;v[c>>2]=d;nO(f+72|0,c,h);u:{if(h){oO(f+40|0,c,h);F=z[f+52>>2];G=z[f+48>>2];I=z[f+44>>2];M=z[f+40>>2];A=z[f+64>>2];N=z[f+96>>2];J=z[f+60>>2];O=z[f+92>>2];o=z[f+56>>2];D=z[f+88>>2];break u}M=z[f+72>>2];z[f+40>>2]=M;I=z[f+76>>2];z[f+44>>2]=I;G=z[f+80>>2];z[f+48>>2]=G;F=z[f+84>>2];z[f+52>>2]=F;o=z[f+88>>2];z[f+56>>2]=o;A=z[f+96>>2];N=A;J=z[f+92>>2];O=J;D=o}S=gV(f+24|0,f+8|0,d,f+72|0);K=z[f+24>>2];Q=z[f+28>>2];N=C(N-A);z[c+84>>2]=z[f+32>>2]-N;O=C(O-J);z[c+80>>2]=Q-O;Q=C(D-o);z[c+76>>2]=K-Q;z[c+64>>2]=z[f+8>>2];z[c+68>>2]=z[f+12>>2];D=z[f+16>>2];z[c+32>>2]=A;z[c+28>>2]=J;z[c+24>>2]=o;z[c+20>>2]=F;z[c+16>>2]=G;z[c+12>>2]=I;z[c+8>>2]=M;z[c+4>>2]=S;z[c+72>>2]=D;z[c+36>>2]=z[f+72>>2];z[c+40>>2]=z[f+76>>2];z[c+44>>2]=z[f+80>>2];z[c+48>>2]=z[f+84>>2];z[c+52>>2]=z[f+88>>2];z[c+56>>2]=z[f+92>>2];o=z[f+96>>2];v[c+88>>2]=0;z[c+60>>2]=o;j=v[k- -64>>2]<<1;l=v[P+616>>2];r=v[l+20>>2];d=(j>>>0)/(r>>>0)|0;v[c+100>>2]=v[v[v[l>>2]+(d<<2)>>2]+(j-B(d,r)<<2)>>2];break p}N=C(z[c+60>>2]-z[c+32>>2]);O=C(z[c+56>>2]-z[c+28>>2]);Q=C(z[c+52>>2]-z[c+24>>2]);S=z[c+4>>2]}v:{if(!g){g=xO(Z);v[g+92>>2]=n;v[g+96>>2]=s;j=n+36|0;v[g>>2]=j;v[f+4>>2]=n;v[f>>2]=s;d=yO(_,f,f+72|0);if(!w[f+72|0]){v[d>>2]=v[f>>2];n=v[f+4>>2];v[d+8>>2]=g;v[d+4>>2]=n}nO(f+72|0,g,m);w:{if(m){oO(f+40|0,g,m);M=z[f+52>>2];T=z[f+48>>2];U=z[f+44>>2];V=z[f+40>>2];A=z[f+64>>2];K=z[f+96>>2];I=z[f+60>>2];F=z[f+92>>2];o=z[f+56>>2];D=z[f+88>>2];break w}V=z[f+72>>2];z[f+40>>2]=V;U=z[f+76>>2];z[f+44>>2]=U;T=z[f+80>>2];z[f+48>>2]=T;M=z[f+84>>2];z[f+52>>2]=M;o=z[f+88>>2];z[f+56>>2]=o;A=z[f+96>>2];K=A;I=z[f+92>>2];F=I;D=o}J=gV(f+24|0,f+8|0,j,f+72|0);G=z[f+24>>2];W=z[f+28>>2];K=C(K-A);z[g+84>>2]=z[f+32>>2]-K;F=C(F-I);z[g+80>>2]=W-F;W=G;G=C(D-o);z[g+76>>2]=W-G;z[g+64>>2]=z[f+8>>2];z[g+68>>2]=z[f+12>>2];D=z[f+16>>2];z[g+32>>2]=A;z[g+28>>2]=I;z[g+24>>2]=o;z[g+20>>2]=M;z[g+16>>2]=T;z[g+12>>2]=U;z[g+8>>2]=V;z[g+4>>2]=J;z[g+72>>2]=D;z[g+36>>2]=z[f+72>>2];z[g+40>>2]=z[f+76>>2];z[g+44>>2]=z[f+80>>2];z[g+48>>2]=z[f+84>>2];z[g+52>>2]=z[f+88>>2];z[g+56>>2]=z[f+92>>2];o=z[f+96>>2];v[g+88>>2]=0;z[g+60>>2]=o;j=v[k- -64>>2]<<1|1;n=v[P+616>>2];l=v[n+20>>2];d=(j>>>0)/(l>>>0)|0;v[g+100>>2]=v[v[v[n>>2]+(d<<2)>>2]+(j-B(d,l)<<2)>>2];break v}K=C(z[g+60>>2]-z[g+32>>2]);F=C(z[g+56>>2]-z[g+28>>2]);G=C(z[g+52>>2]-z[g+24>>2]);J=z[g+4>>2]}if(h){d=v[h+32>>2];x:{if(d){j=v[d+52>>2];break x}d=zO(Y);v[h+32>>2]=d;j=v[e+148>>2];n=v[(v[e+136>>2]+(j<<3)|0)+4>>2];v[d+40>>2]=h;v[d+44>>2]=0;v[d+48>>2]=0;v[d+36>>2]=1065353216;v[d+52>>2]=0;t[d+35|0]=0;u[d+32>>1]=(n+(j<<7)|0)-1;j=0}t[d+34|0]=0;v[d+52>>2]=j+1}y:{z:{if(m){d=v[m+32>>2];A:{if(d){j=v[d+52>>2];break A}d=zO(Y);v[m+32>>2]=d;j=v[e+148>>2];n=v[(v[e+136>>2]+(j<<3)|0)+4>>2];v[d+40>>2]=m;v[d+44>>2]=0;v[d+48>>2]=0;v[d+36>>2]=1065353216;v[d+52>>2]=0;t[d+35|0]=0;u[d+32>>1]=(n+(j<<7)|0)-1;j=0}t[d+34|0]=0;v[d+52>>2]=j+1;B:{if(!h|z[v[h+36>>2]+124>>2]==C(0)|z[v[m+36>>2]+124>>2]==C(0)){break B}d=v[v[h+32>>2]+44>>2];if(d){j=v[m+32>>2];while(1){if((j|0)==v[d>>2]){break B}d=v[d+4>>2];if(d){continue}break}}d=AO(X);j=AO(X);n=v[m+32>>2];v[d>>2]=n;l=v[h+32>>2];v[j>>2]=l;v[d+4>>2]=v[l+44>>2];v[l+44>>2]=d;v[j+4>>2]=v[n+44>>2];v[n+44>>2]=j}R=h+36|0;j=1;if(z[v[h+36>>2]+124>>2]!=C(0)){break y}if(!m){break z}if(z[v[m+36>>2]+124>>2]!=C(0)){break y}break z}R=h+36|0;if(z[v[h+36>>2]+124>>2]==C(0)){break z}j=0;break y}L=L+1|0;j=(m|0)!=0}n=xa-16|0;xa=n;l=v[p>>2];d=v[p+12>>2];r=v[(l+(d<<3)|0)+4>>2];if((r|0)==128){d=d+1|0;if((d|0)==v[p+4>>2]){d=v[37696];l=Ba[v[v[d>>2]+20>>2]](d)|0?39965:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,14336,l,19811,260)|0;v[n+12>>2]=0;v[n+8>>2]=d;d=v[p+4>>2];C:{if(d>>>0>=(v[p+8>>2]&2147483647)>>>0){mO(p,n+8|0);break C}l=v[n+12>>2];d=v[p>>2]+(d<<3)|0;v[d>>2]=v[n+8>>2];v[d+4>>2]=l;v[p+4>>2]=v[p+4>>2]+1}l=v[p>>2];d=v[p+12>>2]+1|0}v[p+12>>2]=d;v[((d<<3)+l|0)+4>>2]=0;r=0}d=(d<<3)+l|0;v[d+4>>2]=r+1;xa=n+16|0;d=v[d>>2]+B(r,112)|0;v[d+12>>2]=g;v[d+8>>2]=c;v[d+4>>2]=m;v[d>>2]=h;c=1;c=w[q+28|0]&8?c:(w[s+28|0]&8)>>>3|0;v[d+28>>2]=2139095039;t[d+108|0]=c;c=v[v[k+24>>2]+36>>2];v[d+60>>2]=c;h=v[v[k+28>>2]+36>>2];v[d+72>>2]=-1;t[d+68|0]=0;v[d+56>>2]=-1;v[d+52>>2]=k;v[d+64>>2]=h;g=w[k+8|0];v[d+96>>2]=0;t[d+69|0]=g&1;A=C(34028234663852886e22);o=C(34028234663852886e22);g=v[R>>2];if(w[g+28|0]&64){o=z[g+128>>2]}D:{if(!j){break D}g=v[m+36>>2];if(!(w[g+28|0]&64)){break D}A=z[g+128>>2]}z[d+100>>2]=o>2];h=((g+B((c|0)<(h|0)?c:h,28)|0)+(((c|0)>(h|0)?c:h)<<2)|0)+1360|0;v[h>>2]=v[h>>2]+1;if(E){break n}o=C(N-K);A=C(o*o);o=C(Q-G);D=C(o*o);o=C(O-F);A=C(A+C(D+C(o*o)));o=C(S+J);D=z[e+328>>2];o=o=C(o*o)}if(b){break m}if(!E){break k}break j}E=1;if(!b){break j}}k=Qaa(b)|a<<5;b=b-1&b;E:{if(b){break E}b=a+1|0;c=v[i+952>>2]&2147483647;h=b>>>0>c>>>0?b:c;while(1){a=a+1|0;if(c>>>0<=a>>>0){b=0;a=h;break E}b=v[v[i+948>>2]+(a<<2)>>2];if(!b){continue}break}}if((k|0)!=-1){continue}break}if(E){break j}}vO(e);a=v[e+300>>2];b=v[v[e+312>>2]+304>>2];v[a>>2]=v[b>>2];v[b>>2]=a;break f}a=v[e+272>>2];i=v[(v[e+260>>2]+(a<<3)|0)+4>>2]+(a<<7)|0;F:{G:{if(i>>>0>(v[e+284>>2]&2147483647)>>>0){a=0;H:{if(!i){break H}b=i<<2;if(!b){break H}a=v[37696];h=Ba[v[v[a>>2]+20>>2]](a)|0?56633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,h,16608,553)|0}c=v[e+276>>2];b=v[e+280>>2];if((b|0)>0){h=(b<<2)+a|0;b=a;while(1){v[b>>2]=v[c>>2];c=c+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}c=v[e+276>>2]}if(!(!c|v[e+284>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[e+284>>2]=i;v[e+276>>2]=a;break G}if(!i){break F}}a=0;while(1){h=v[v[e+260>>2]+(a>>>4&268435448)>>2]+B(a&127,112)|0;v[f+72>>2]=h;b=v[e+280>>2];I:{if(b>>>0>=(v[e+284>>2]&2147483647)>>>0){b=0;h=v[e+284>>2];h=h&2147483647?h<<1:1;J:{if(!h){break J}c=h<<2;if(!c){break J}b=v[37696];g=Ba[v[v[b>>2]+20>>2]](b)|0?56633:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,g,16608,553)|0}g=v[e+280>>2];m=(g<<2)+b|0;if((g|0)>0){d=v[e+276>>2];c=b;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(m>>>0>c>>>0){continue}break}}v[m>>2]=v[f+72>>2];K:{if(v[e+284>>2]<0){break K}c=v[e+276>>2];if(!c){break K}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,c);g=v[e+280>>2]}v[e+284>>2]=h;v[e+276>>2]=b;v[e+280>>2]=g+1;break I}v[v[e+276>>2]+(b<<2)>>2]=h;v[e+280>>2]=b+1}a=a+1|0;if((i|0)!=(a|0)){continue}break}}b=i|i>>>1;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0;a=v[e+316>>2];if(b>>>0>(v[a+12>>2]&2147483647)>>>0){jz(a,b)}c=v[e+136>>2];a=v[e+148>>2];h=v[(c+(a<<3)|0)+4>>2]+(a<<7)|0;if(h){i=0;while(1){a=v[c+(i>>>4&268435448)>>2]+((i&127)<<6)|0;b=v[v[a+40>>2]+36>>2];z[a>>2]=z[b+64>>2];z[a+4>>2]=z[b+68>>2];z[a+8>>2]=z[b+72>>2];z[a+16>>2]=z[b+80>>2];z[a+20>>2]=z[b+84>>2];z[a+24>>2]=z[b+88>>2];i=i+1|0;if((h|0)!=(i|0)){continue}break}}v[f+80>>2]=0;v[f+72>>2]=0;v[f+76>>2]=0;v[f+40>>2]=0;bz(f+72|0,h,f+40|0);v[f+48>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;if(h){i=0;L:{if(!h){break L}b=h<<2;if(!b){break L}a=v[37696];i=Ba[v[v[a>>2]+20>>2]](a)|0?55227:63804;i=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,i,16608,553)|0}b=v[f+40>>2];a=v[f+44>>2];if((a|0)>0){c=(a<<2)+i|0;a=i;while(1){v[a>>2]=v[b>>2];b=b+4|0;a=a+4|0;if(c>>>0>a>>>0){continue}break}b=v[f+40>>2]}if(!(!b|v[f+48>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}v[f+48>>2]=h;v[f+40>>2]=i}v[f+44>>2]=h;v[e+200>>2]=0;m=e+196|0;a=h+1|0;if(a>>>0>(v[e+204>>2]&2147483647)>>>0){zr(m,a)}v[e+200>>2]=a;M:{if(!h){d=0;break M}c=0;a=v[f+72>>2];i=0;if(h-1>>>0>=7){g=h&-8;k=0;while(1){b=i<<2;v[b+a>>2]=65535;v[a+(b|4)>>2]=65535;v[a+(b|8)>>2]=65535;v[a+(b|12)>>2]=65535;v[a+(b|16)>>2]=65535;v[a+(b|20)>>2]=65535;v[a+(b|24)>>2]=65535;v[a+(b|28)>>2]=65535;i=i+8|0;k=k+8|0;if((g|0)!=(k|0)){continue}break}}b=h&7;if(b){while(1){v[a+(i<<2)>>2]=65535;i=i+1|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}d=0;if(!h){break M}i=0;while(1){a=v[f+72>>2]+(i<<2)|0;N:{if(v[a>>2]!=65535){break N}b=v[v[e+136>>2]+(i>>>4&268435448)>>2];c=(i&127)<<6;g=b+c|0;if(z[v[v[g+40>>2]+36>>2]+124>>2]==C(0)|!v[(b+c|0)+52>>2]){break N}v[a>>2]=d;v[v[f+40>>2]>>2]=g;k=0;b=1;while(1){a=v[g+44>>2];b=b-1|0;g=v[(v[f+40>>2]+((b>>>0>1?b:1)<<2)|0)-4>>2];if(a){while(1){c=v[a>>2];p=v[f+72>>2]+(x[c+32>>1]<<2)|0;if(v[p>>2]==65535){v[p>>2]=d;v[v[f+40>>2]+(b<<2)>>2]=c;k=k+1|0;g=v[a>>2];b=b+1|0}a=v[a+4>>2];if(a){continue}break}}if(b){continue}break}u[v[m>>2]+(d<<1)>>1]=k+1;d=d+1|0}i=i+1|0;if((h|0)!=(i|0)){continue}break}}c=d+L|0;O:{if(c>>>0<=d>>>0){break O}i=v[m>>2];a=d;g=L&7;if(g){b=0;while(1){u[i+(a<<1)>>1]=1;a=a+1|0;b=b+1|0;if((g|0)!=(b|0)){continue}break}}if(L-1>>>0<7){break O}while(1){b=i+(a<<1)|0;u[b>>1]=1;u[b+2>>1]=1;u[b+4>>1]=1;u[b+6>>1]=1;u[b+8>>1]=1;u[b+10>>1]=1;u[b+12>>1]=1;u[b+14>>1]=1;a=a+8|0;if((c|0)!=(a|0)){continue}break}}i=0;v[e+292>>2]=0;v[f+24>>2]=0;bz(e+288|0,c,f+24|0);j=v[e+280>>2];if(j){q=v[e+288>>2];n=v[e+276>>2];g=v[f+72>>2];while(1){k=v[n+(i<<2)>>2];b=v[k>>2];a=-1;P:{if(!b){break P}a=-1;if(z[v[b+36>>2]+124>>2]==C(0)){break P}a=v[g+(x[v[b+32>>2]+32>>1]<<2)>>2]}b=-1;p=v[k+4>>2];if(!(!p|z[v[p+36>>2]+124>>2]==C(0))){b=v[g+(x[v[p+32>>2]+32>>1]<<2)>>2]}b=a>>>0>>0?a:b;a=(b|0)==-1;b=a?d:b;v[k+56>>2]=b;b=q+(b<<2)|0;v[b>>2]=v[b>>2]+1;d=a+d|0;i=i+1|0;if((j|0)!=(i|0)){continue}break}}c=c+1|0;if(c){g=v[m>>2];b=0;i=0;a=0;while(1){b=g+(b<<1)|0;d=x[b>>1];u[b>>1]=a;a=a+d|0;i=i+1|0;b=i&65535;if(c>>>0>b>>>0){continue}break}}a=0;v[e+188>>2]=0;if(h>>>0>(v[e+192>>2]&2147483647)>>>0){i=0;Q:{if(!h){break Q}c=h<<2;if(!c){break Q}b=v[37696];i=Ba[v[v[b>>2]+20>>2]](b)|0?55351:63804;i=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,i,16608,553)|0}g=v[e+184>>2];b=v[e+188>>2];if((b|0)>0){c=(b<<2)+i|0;b=i;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(c>>>0>b>>>0){continue}break}g=v[e+184>>2]}if(!(!g|v[e+192>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g)}v[e+192>>2]=h;v[e+184>>2]=i}v[e+188>>2]=h;b=v[e+136>>2];i=v[e+148>>2];h=i<<3;i=i<<7;if(v[(b+h|0)+4>>2]!=(0-i|0)){while(1){c=v[(a>>>4&268435448)+b>>2]+((a&127)<<6)|0;g=v[v[f+72>>2]+(x[c+32>>1]<<2)>>2];if((g|0)!=65535){g=v[e+196>>2]+(g<<1)|0;b=x[g>>1];u[g>>1]=b+1;v[v[e+184>>2]+(b<<2)>>2]=c;b=v[e+136>>2]}a=a+1|0;if(a>>>0>2]>>>0){continue}break}}v[e+100>>2]=H;v[e+104>>2]=1;if(H){Ba[v[v[H>>2]+16>>2]](H);v[e+96>>2]=v[v[e+100>>2]+16>>2]}H=e+80|0;v[e+60>>2]=H;v[e- -64>>2]=1;Ba[v[v[e+80>>2]+16>>2]](H);v[e+56>>2]=v[v[e+60>>2]+16>>2];v[e+24>>2]=1;L=e+40|0;v[e+20>>2]=L;Ba[v[v[e+40>>2]+16>>2]](L);v[e+16>>2]=v[v[e+20>>2]+16>>2];q=v[e+276>>2];a=v[e+280>>2];b=0;g=0;c=0;j=32;n=xa-16|0;xa=n;t[n+12|0]=0;i=n-128|0;xa=i;v[n+8>>2]=i;d=a-1|0;R:{if((d|0)<=0){break R}while(1){S:{if((b|0)>=(d|0)){break S}while(1){if(d-b>>>0<=4){while(1){m=b;b=b+1|0;h=b;a=m;while(1){a=y[v[q+(h<<2)>>2]+56>>2]>2]+56>>2]?h:a;k=(d|0)>(h|0);h=h+1|0;if(k){continue}break}if((a|0)!=(m|0)){a=q+(a<<2)|0;h=v[a>>2];k=a;a=q+(m<<2)|0;v[k>>2]=v[a>>2];v[a>>2]=h}if((b|0)!=(d|0)){continue}break S}}s=q+(b<<2)|0;m=v[s>>2];a=v[m+56>>2];l=q+((b+d|0)/2<<2)|0;k=v[l>>2];T:{if(a>>>0<=y[k+56>>2]){h=m;break T}v[s>>2]=k;v[l>>2]=m;h=v[s>>2];a=v[h+56>>2];k=m}E=q+(d<<2)|0;m=v[E>>2];p=v[m+56>>2];U:{if(p>>>0>=a>>>0){a=p;h=m;break U}v[s>>2]=m;v[E>>2]=h;k=v[l>>2]}if(y[k+56>>2]>a>>>0){v[l>>2]=h;v[E>>2]=k;k=v[l>>2]}a=d-1|0;p=q+(a<<2)|0;v[l>>2]=v[p>>2];v[p>>2]=k;h=b;while(1){l=v[k+56>>2];while(1){m=h;h=h+1|0;s=q+(h<<2)|0;E=v[s>>2];if(l>>>0>y[E+56>>2]){continue}break}while(1){a=a-1|0;r=q+(a<<2)|0;P=v[r>>2];if(l>>>0>2]){continue}break}if((a|0)>(h|0)){v[s>>2]=P;v[r>>2]=E;k=v[p>>2];continue}break}v[s>>2]=k;v[p>>2]=E;V:{if((h-b|0)<(d-h|0)){if(j-1>>>0<=g>>>0){h=j<<3;if(h){a=v[37696];k=Ba[v[v[a>>2]+20>>2]](a)|0?56633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,h,k,17218,155)|0}else{a=0}j=j<<1;a=H9(a,i,g<<2);h=c;c=1;if(!(!h|!i)){h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,i)}i=a}a=(g<<2)+i|0;v[a>>2]=b;v[a+4>>2]=m;b=m+2|0;break V}if(j-1>>>0<=g>>>0){h=j<<3;if(h){a=v[37696];k=Ba[v[v[a>>2]+20>>2]](a)|0?56633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,h,k,17218,155)|0}else{a=0}j=j<<1;a=H9(a,i,g<<2);h=c;c=1;if(!(!h|!i)){h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,i)}i=a}a=(g<<2)+i|0;v[a>>2]=m+2;v[a+4>>2]=d;d=m}g=g+2|0;if((b|0)<(d|0)){continue}break}}if(g){a=g-2|0;b=v[(a<<2)+i>>2];d=v[((g<<2)+i|0)-4>>2];g=a;continue}break}if(!c|!i){break R}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,i)}if(w[n+12|0]){u9(v[n+8>>2])}xa=n+16|0;i=v[e+280>>2];a=v[v[e+312>>2]+1152>>2];a=Ba[v[v[a>>2]+4>>2]](a)|0;a=Ba[v[v[a>>2]+4>>2]](a)|0;a=(i>>>0)/((a>>>0>1?a:1)>>>0)|0;v[e+304>>2]=a>>>0>1?a:1;if(i){b=0;while(1){a=vr(v[v[e+312>>2]+1156>>2],40);c=v[e+304>>2];g=v[e+276>>2];o=z[e+328>>2];h=v[e+312>>2];d=v[h+1836>>2];v[a+8>>2]=v[h+1832>>2];v[a+12>>2]=d;v[a+24>>2]=0;z[a+36>>2]=o;v[a+28>>2]=g+(b<<2);v[a>>2]=134300;c=b+c|0;v[a+32>>2]=(c>>>0>i>>>0?i:c)-b;h=v[h+1152>>2];v[a+20>>2]=e;v[a+24>>2]=1;v[a+16>>2]=h;Ba[v[v[e>>2]+16>>2]](e);Ba[v[v[a>>2]+20>>2]](a);b=v[e+304>>2]+b|0;if(i>>>0>b>>>0){continue}break}}a=v[e+16>>2];Ba[v[v[a>>2]+72>>2]](a,e);a=v[e+56>>2];Ba[v[v[a>>2]+72>>2]](a,L);a=v[e+96>>2];Ba[v[v[a>>2]+72>>2]](a,H);a=v[f+48>>2];W:{if((a|0)<0|!(a&2147483647)){break W}a=v[f+40>>2];if(!a){break W}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[f+80>>2];if((a|0)<0|!(a&2147483647)){break f}a=v[f+72>>2];if(!a){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=f+112|0}function nr(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=C(0),m=0,n=0,o=0,p=0,q=0;o=xa-16|0;xa=o;j=a+32|0;b=v[j+2168>>2];v[b+60>>2]=-1;v[b+48>>2]=0;dJ(b,0);d=v[j+36>>2];if(d){c=v[j+24>>2];while(1){d=d-1|0;b=v[c+(d<<2)>>2];t[v[b+176>>2]+28|0]=0;b=v[b>>2];e=x[b+148>>1];a:{if(e&1024){u[b+148>>1]=e&64511;v[v[b+44>>2]+156>>2]=0;if(!v[b+160>>2]){cG(v[v[b+40>>2]+1e3>>2],v[b+144>>2])}dG(v[v[b+40>>2]+1e3>>2],v[b+144>>2]);if(y[b+152>>2]>4294967293){break a}UO(v[b+40>>2],b);aH(b);break a}if(e&512){u[b+148>>1]=e&63999|1024;break a}if(e&2048){break a}u[b+148>>1]=e&65019|512}if(d){continue}break}}if(!w[j+2282|0]){Gy(v[j+976>>2]+24|0);Gy(v[j+976>>2]+24|0)}n=xa-16|0;xa=n;f=a+16|0;t[f+4785|0]=0;c=0;d=xa-16|0;xa=d;if(v[f+5560>>2]){b=f+16|0;while(1){SP(b);e=v[f+5560>>2]-1|0;v[f+5560>>2]=e;if(e){continue}break}}b=v[f+5564>>2];if(b){if(b&1){v[f+1080>>2]=1;z[f+1068>>2]=z[f+5532>>2];k=f+5536|0;i=v[k+4>>2];e=f+1072|0;v[e>>2]=v[k>>2];v[e+4>>2]=i}if(b&2){z[v[f+1020>>2]+84>>2]=-z[f+5544>>2];b=v[f+5564>>2]}if(b&4){v[f+2376>>2]=v[f+5548>>2]}if(b&8){k=f+16|0;while(1){e=c+1|0;b=f+(c<<2)|0;if(v[b+5280>>2]){i=1<>>0>c>>>0?c:b)<<2)|0)+5280>>2]>>>(b>>>0>>0?c:b)&1){t[d+8|0]=(v[m>>2]&1<>>b;t[d+9|0]=(i&v[(f+(b<<2)|0)+5404>>2])>>>c;PP(k,c&255,b&255,d+8|0)}b=b+1|0;if((b|0)!=32){continue}break}}c=e;if((e|0)!=31){continue}break}I9(f+5280|0,0,124);b=v[f+5564>>2]}if(b&16){v[v[f+1020>>2]+104>>2]=v[f+5552>>2];b=v[f+5564>>2]}if(b&128){v[v[f+1020>>2]+108>>2]=v[f+5556>>2];b=v[f+5564>>2]}if(b&32){b=f+16|0;e=f+5232|0;if(w[e|0]){l=z[f+5136>>2];t[b+2660|0]=1;z[v[b+976>>2]+1032>>2]=l;z[b+2656>>2]=l}if(w[f+5233|0]){l=z[f+5140>>2];t[b+2660|0]=1;z[v[b+976>>2]+1036>>2]=l}if(w[f+5234|0]){l=z[f+5144>>2];t[b+2660|0]=1;z[v[b+976>>2]+1040>>2]=l}if(w[f+5235|0]){l=z[f+5148>>2];t[b+2660|0]=1;z[v[b+976>>2]+1044>>2]=l}if(w[f+5236|0]){l=z[f+5152>>2];t[b+2660|0]=1;z[v[b+976>>2]+1048>>2]=l}if(w[f+5237|0]){l=z[f+5156>>2];t[b+2660|0]=1;z[v[b+976>>2]+1052>>2]=l}if(w[f+5238|0]){l=z[f+5160>>2];t[b+2660|0]=1;z[v[b+976>>2]+1056>>2]=l}if(w[f+5239|0]){l=z[f+5164>>2];t[b+2660|0]=1;z[v[b+976>>2]+1060>>2]=l}if(w[f+5240|0]){l=z[f+5168>>2];t[b+2660|0]=1;z[v[b+976>>2]+1064>>2]=l}if(w[f+5241|0]){l=z[f+5172>>2];t[b+2660|0]=1;z[v[b+976>>2]+1068>>2]=l}if(w[f+5242|0]){l=z[f+5176>>2];t[b+2660|0]=1;z[v[b+976>>2]+1072>>2]=l}if(w[f+5243|0]){l=z[f+5180>>2];t[b+2660|0]=1;z[v[b+976>>2]+1076>>2]=l}if(w[f+5244|0]){l=z[f+5184>>2];t[b+2660|0]=1;z[v[b+976>>2]+1080>>2]=l}if(w[f+5245|0]){l=z[f+5188>>2];t[b+2660|0]=1;z[v[b+976>>2]+1084>>2]=l}if(w[f+5246|0]){l=z[f+5192>>2];t[b+2660|0]=1;z[v[b+976>>2]+1088>>2]=l}if(w[f+5247|0]){l=z[f+5196>>2];t[b+2660|0]=1;z[v[b+976>>2]+1092>>2]=l}if(w[f+5248|0]){l=z[f+5200>>2];t[b+2660|0]=1;z[v[b+976>>2]+1096>>2]=l}if(w[f+5249|0]){l=z[f+5204>>2];t[b+2660|0]=1;z[v[b+976>>2]+1100>>2]=l}if(w[f+5250|0]){l=z[f+5208>>2];t[b+2660|0]=1;z[v[b+976>>2]+1104>>2]=l}if(w[f+5251|0]){l=z[f+5212>>2];t[b+2660|0]=1;z[v[b+976>>2]+1108>>2]=l}if(w[f+5252|0]){l=z[f+5216>>2];t[b+2660|0]=1;z[v[b+976>>2]+1112>>2]=l}if(w[f+5253|0]){l=z[f+5220>>2];t[b+2660|0]=1;z[v[b+976>>2]+1116>>2]=l}if(w[f+5254|0]){l=z[f+5224>>2];t[b+2660|0]=1;z[v[b+976>>2]+1120>>2]=l}if(w[f+5255|0]){l=z[f+5228>>2];t[b+2660|0]=1;z[v[b+976>>2]+1124>>2]=l}v[e>>2]=0;v[e+4>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;b=v[f+5564>>2]}if(b&64){RP(f+16|0,f+5256|0)}v[f+5564>>2]=0}xa=d+16|0;b:{if(!v[f+5128>>2]){break b}e=f+16|0;while(1){b=v[v[f+5096>>2]+(g<<2)>>2];c=v[b+4>>2];c:{d:{if((c&-1073741824)==1073741824){p=b,q=UP(e,v[b+12>>2],w[b+24|0]),v[p+16>>2]=q;break d}if(!(c&268435456)){break c}}Qu(b,f)}d=v[f+5128>>2];g=g+1|0;if(d>>>0>g>>>0){continue}break}if(!d){break b}k=v[f+5096>>2];g=0;while(1){i=k+(g<<2)|0;b=v[i>>2];e=v[b+4>>2];c=e&268435455;e:{if((e>>>30|0)-1>>>0<=1){v[b+4>>2]=c|-2147483648;break e}v[b>>2]=0;v[b+4>>2]=c}if(e&536870912){Sm(v[i>>2]);d=v[f+5128>>2]}g=g+1|0;if(g>>>0>>0){continue}break}b=v[f+5112>>2];if(!b|!d){break b}I9(v[f+5104>>2],255,b<<2);d=0;b=v[f+5100>>2];k=v[f+5108>>2];e=k-1|0;if(e){g=0;if(k-2>>>0>=3){k=e&-4;while(1){i=d|1;v[b+(d<<2)>>2]=i;c=b+(i<<2)|0;i=d|2;v[c>>2]=i;c=b+(i<<2)|0;i=d|3;v[c>>2]=i;d=d+4|0;v[b+(i<<2)>>2]=d;h=h+4|0;if((k|0)!=(h|0)){continue}break}}e=e&3;if(e){while(1){c=b+(d<<2)|0;d=d+1|0;v[c>>2]=d;g=g+1|0;if((e|0)!=(g|0)){continue}break}}e=v[f+5108>>2]-1|0}else{e=0}v[b+(e<<2)>>2]=-1;v[f+5128>>2]=0;v[f+5120>>2]=0}v[f+4884>>2]=0;f:{if(!v[f+4928>>2]){break f}k=v[f+4896>>2];i=f+16|0;d=0;while(1){e=v[k+(d<<2)>>2];b=v[e+4>>2];g:{if((b&-1073741824)==1073741824){yu(i,e,0);break g}if(!(b&268435456)){break g}c=xa-16|0;xa=c;h=v[e+4>>2];h:{if(!(h&1)){break h}b=v[e+8>>2];if(!b){b=Pu(v[e>>2],h>>>24&15);v[e+8>>2]=b}b=w[b|0]&8;g=w[e+24|0]&8;if(!(b|!g)){if((v[e+4>>2]&-1073741824)!=-2147483648){break h}m=v[e>>2];g=Zo(e,c+12|0);b=0;KP(m+16|0,e+v[((v[e+4>>2]>>>22&60)+89188|0)+12>>2]|0,v[c+12>>2],g,0);if(!g){break h}while(1){m=v[v[c+12>>2]+(b<<2)>>2]+16|0;v[m>>2]=v[m>>2]+1;b=b+1|0;if((g|0)!=(b|0)){continue}break}break h}if(!b|g){break h}vu(v[e>>2],e,0)}Uu(e);i:{if(!(h&64)){break i}b=v[e+8>>2];if(!b){b=Pu(v[e>>2],w[e+7|0]&15);v[e+8>>2]=b}if(!(w[e+4|0]&64)){break i}mS(e+16|0,b+96|0)}v[e+8>>2]=0;v[e+4>>2]=w[e+7|0]<<24;xa=c+16|0}d=d+1|0;g=v[f+4928>>2];if(d>>>0>>0){continue}break}if(!g){break f}h=v[f+4896>>2];d=0;while(1){k=h+(d<<2)|0;b=v[k>>2];e=v[b+4>>2];c=e&268435455;j:{if((e>>>30|0)-1>>>0<=1){v[b+4>>2]=c|-2147483648;break j}v[b>>2]=0;v[b+4>>2]=c}if(e&536870912){Sm(v[k>>2]);g=v[f+4928>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+4912>>2];if(!b|!g){break f}I9(v[f+4904>>2],255,b<<2);d=0;b=v[f+4900>>2];h=v[f+4908>>2];e=h-1|0;if(e){g=0;if(h-2>>>0>=3){k=e&-4;h=0;while(1){i=d|1;v[b+(d<<2)>>2]=i;c=b+(i<<2)|0;i=d|2;v[c>>2]=i;c=b+(i<<2)|0;i=d|3;v[c>>2]=i;d=d+4|0;v[b+(i<<2)>>2]=d;h=h+4|0;if((k|0)!=(h|0)){continue}break}}e=e&3;if(e){while(1){c=b+(d<<2)|0;d=d+1|0;v[c>>2]=d;g=g+1|0;if((e|0)!=(g|0)){continue}break}}e=v[f+4908>>2]-1|0}else{e=0}v[b+(e<<2)>>2]=-1;v[f+4928>>2]=0;v[f+4920>>2]=0}d=v[f+44>>2];if(d){g=v[f+40>>2];while(1){d=d-1|0;b=v[g>>2];b=b-v[(w[b+9|0]<<2)+89188>>2]|0;if(!(w[b+7|0]&16)){Ru(b)}g=g+4|0;if(d){continue}break}}b=v[f+2252>>2];if(b){e=v[f+2220>>2];d=0;while(1){c=v[e+(d<<2)>>2];c=c-v[(w[c+9|0]<<2)+89188>>2]|0;if(!(w[c+7|0]&16)){Ru(c)}d=d+1|0;if((b|0)!=(d|0)){continue}break}}e=f+16|0;k:{if(!v[f+4968>>2]){break k}c=v[f+4936>>2];d=0;while(1){b=v[c+(d<<2)>>2];g=v[b+4>>2];l:{if((g&-1073741824)==1073741824){Au(e,b,0,0);break l}if(!(g&268435456)){break l}Ru(b)}d=d+1|0;g=v[f+4968>>2];if(d>>>0>>0){continue}break}if(!g){break k}k=v[f+4936>>2];d=0;while(1){i=k+(d<<2)|0;b=v[i>>2];c=v[b+4>>2];h=c&268435455;m:{if((c>>>30|0)-1>>>0<=1){v[b+4>>2]=h|-2147483648;break m}v[b>>2]=0;v[b+4>>2]=h}if(c&536870912){Sm(v[i>>2]);g=v[f+4968>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+4952>>2];if(!b|!g){break k}I9(v[f+4944>>2],255,b<<2);d=0;b=v[f+4940>>2];h=v[f+4948>>2];c=h-1|0;if(c){g=0;if(h-2>>>0>=3){i=c&-4;h=0;while(1){m=d|1;v[b+(d<<2)>>2]=m;k=b+(m<<2)|0;m=d|2;v[k>>2]=m;k=b+(m<<2)|0;m=d|3;v[k>>2]=m;d=d+4|0;v[b+(m<<2)>>2]=d;h=h+4|0;if((i|0)!=(h|0)){continue}break}}c=c&3;if(c){while(1){h=b+(d<<2)|0;d=d+1|0;v[h>>2]=d;g=g+1|0;if((c|0)!=(g|0)){continue}break}}d=v[f+4948>>2]-1|0}else{d=0}v[b+(d<<2)>>2]=-1;v[f+4968>>2]=0;v[f+4960>>2]=0}d=0;v[f+4872>>2]=0;g=v[f+4852>>2];n:{if(!g){break n}while(1){b=v[v[f+4820>>2]+(d<<2)>>2];if(w[b+7|0]&16){Yu(b);g=v[f+4852>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}if(!g){break n}k=v[f+4820>>2];d=0;while(1){i=k+(d<<2)|0;b=v[i>>2];c=v[b+4>>2];h=c&268435455;o:{if((c>>>30|0)-1>>>0<=1){v[b+4>>2]=h|-2147483648;break o}v[b>>2]=0;v[b+4>>2]=h}if(c&536870912){Sm(v[i>>2]);g=v[f+4852>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+4836>>2];if(!b|!g){break n}I9(v[f+4828>>2],255,b<<2);d=0;b=v[f+4824>>2];h=v[f+4832>>2];c=h-1|0;if(c){g=0;if(h-2>>>0>=3){i=c&-4;h=0;while(1){m=d|1;v[b+(d<<2)>>2]=m;k=b+(m<<2)|0;m=d|2;v[k>>2]=m;k=b+(m<<2)|0;m=d|3;v[k>>2]=m;d=d+4|0;v[b+(m<<2)>>2]=d;h=h+4|0;if((i|0)!=(h|0)){continue}break}}c=c&3;if(c){while(1){h=b+(d<<2)|0;d=d+1|0;v[h>>2]=d;g=g+1|0;if((c|0)!=(g|0)){continue}break}}d=v[f+4832>>2]-1|0}else{d=0}v[b+(d<<2)>>2]=-1;v[f+4852>>2]=0;v[f+4844>>2]=0}d=0;v[f+4860>>2]=0;b=v[e+1100>>2];c=v[e+1132>>2];if(c){while(1){g=v[b+(d<<2)>>2];if(!(w[g-5|0]&16)){Su(g-12|0)}d=d+1|0;if((c|0)!=(d|0)){continue}break}}g=xa-16|0;xa=g;h=f+4972|0;if(v[h+36>>2]){i=v[h+4>>2];d=f+16|0;b=0;while(1){c=v[i+(b<<2)>>2];k=v[c+4>>2];p:{if((k&-1073741824)==1073741824){Gg(c,g+12|0,g+8|0);m=c+12|0;c=v[g+12>>2];if(c){c=c+v[((v[c+4>>2]>>>22&60)+89188|0)+12>>2]|0}else{c=0}k=v[g+8>>2];if(k){k=k+v[((v[k+4>>2]>>>22&60)+89188|0)+12>>2]|0}else{k=0}lP(d,m,c,k);break p}if(!(k&268435456)){break p}Su(c)}b=b+1|0;if(b>>>0>2]){continue}break}}xa=g+16|0;g=v[f+5008>>2];q:{if(!g){break q}k=v[f+4976>>2];d=0;while(1){i=k+(d<<2)|0;b=v[i>>2];c=v[b+4>>2];h=c&268435455;r:{if((c>>>30|0)-1>>>0<=1){v[b+4>>2]=h|-2147483648;break r}v[b>>2]=0;v[b+4>>2]=h}if(c&536870912){Sm(v[i>>2]);g=v[f+5008>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+4992>>2];if(!b|!g){break q}I9(v[f+4984>>2],255,b<<2);d=0;b=v[f+4980>>2];h=v[f+4988>>2];c=h-1|0;if(c){g=0;if(h-2>>>0>=3){i=c&-4;h=0;while(1){m=d|1;v[b+(d<<2)>>2]=m;k=b+(m<<2)|0;m=d|2;v[k>>2]=m;k=b+(m<<2)|0;m=d|3;v[k>>2]=m;d=d+4|0;v[b+(m<<2)>>2]=d;h=h+4|0;if((i|0)!=(h|0)){continue}break}}c=c&3;if(c){while(1){h=b+(d<<2)|0;d=d+1|0;v[h>>2]=d;g=g+1|0;if((c|0)!=(g|0)){continue}break}}d=v[f+4988>>2]-1|0}else{d=0}v[b+(d<<2)>>2]=-1;v[f+5008>>2]=0;v[f+5e3>>2]=0}b=v[e+1204>>2];c=v[e+1236>>2];if(c){d=0;while(1){g=v[b+(d<<2)>>2];if(!(w[g-5|0]&16)){Tu(g-12|0)}d=d+1|0;if((c|0)!=(d|0)){continue}break}}s:{if(!v[f+5048>>2]){break s}c=v[f+5016>>2];d=0;while(1){b=v[c+(d<<2)>>2];g=v[b+4>>2];t:{if((g&-1073741824)==1073741824){g=b+12|0;if(v[b+88>>2]){b=v[v[b+84>>2]>>2];b=b?b+48|0:0}else{b=0}nP(e,g,b+16|0);break t}if(!(g&268435456)){break t}Tu(b)}d=d+1|0;g=v[f+5048>>2];if(d>>>0>>0){continue}break}if(!g){break s}h=v[f+5016>>2];d=0;while(1){k=h+(d<<2)|0;b=v[k>>2];e=v[b+4>>2];c=e&268435455;u:{if((e>>>30|0)-1>>>0<=1){v[b+4>>2]=c|-2147483648;break u}v[b>>2]=0;v[b+4>>2]=c}if(e&536870912){Sm(v[k>>2]);g=v[f+5048>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+5032>>2];if(!b|!g){break s}I9(v[f+5024>>2],255,b<<2);d=0;b=v[f+5020>>2];h=v[f+5028>>2];e=h-1|0;if(e){g=0;if(h-2>>>0>=3){k=e&-4;h=0;while(1){i=d|1;v[b+(d<<2)>>2]=i;c=b+(i<<2)|0;i=d|2;v[c>>2]=i;c=b+(i<<2)|0;i=d|3;v[c>>2]=i;d=d+4|0;v[b+(i<<2)>>2]=d;h=h+4|0;if((k|0)!=(h|0)){continue}break}}e=e&3;if(e){while(1){c=b+(d<<2)|0;d=d+1|0;v[c>>2]=d;g=g+1|0;if((e|0)!=(g|0)){continue}break}}e=v[f+5028>>2]-1|0}else{e=0}v[b+(e<<2)>>2]=-1;v[f+5048>>2]=0;v[f+5040>>2]=0}v:{if(!v[f+5088>>2]){break v}h=v[f+5056>>2];d=0;while(1){e=v[h+(d<<2)>>2];b=v[e+4>>2];w:{if((b&-1073741824)==1073741824){b=v[e+388>>2];v[n+12>>2]=v[e+384>>2]+48;v[n+8>>2]=b+48;pP(e+12|0,v[n+12>>2]+16|0,v[n+8>>2]+16|0);break w}if(!(b&268435456)){break w}c=v[e+4>>2];x:{if(!(c&16777215)){break x}b=v[e+8>>2];if(!b){b=Pu(v[e>>2],c>>>24&15);v[e+8>>2]=b;c=v[e+4>>2]}if(c&1){$E(e+12|0,b);c=v[e+4>>2]}if(c&2){aF(e+12|0,b+28|0);c=v[e+4>>2]}if(c&4){z[e+288>>2]=z[b+56>>2];z[e+292>>2]=z[b+60>>2];z[e+296>>2]=z[b+64>>2];z[e+300>>2]=z[b+68>>2];c=v[e+4>>2]}if(c&8){z[e+304>>2]=z[b+72>>2];z[e+308>>2]=z[b+76>>2];z[e+312>>2]=z[b+80>>2];c=v[e+4>>2]}if(c&16){z[e+316>>2]=z[b+84>>2];c=v[e+4>>2]}if(c&32){z[e+320>>2]=z[b+88>>2];c=v[e+4>>2]}if(c&64){z[e+264>>2]=z[b+92>>2];c=v[e+4>>2]}if(c&256){z[e+324>>2]=z[b+100>>2];c=v[e+4>>2]}if(c&512){z[e+328>>2]=z[b+104>>2];c=v[e+4>>2]}if(c&1024){eF(e+12|0,z[b+108>>2]);c=v[e+4>>2]}if(c&2048){t[e+344|0]=w[b+112|0];c=v[e+4>>2]}if(c&16384){gF(e+12|0,z[b+124>>2]);c=v[e+4>>2]}if(c&32768){t[e+345|0]=w[b+128|0];c=v[e+4>>2]}if(c&4096){z[e+336>>2]=z[b+116>>2];c=v[e+4>>2]}if(c&8192){z[e+340>>2]=z[b+120>>2];c=v[e+4>>2]}if(c&524288){bF(e+12|0,v[b+136>>2]);c=v[e+4>>2]}if(c&65536){t[e+346|0]=v[b+132>>2];c=v[e+4>>2]}if(c&131072){dF(e+12|0,z[b+140>>2],z[b+144>>2]);c=v[e+4>>2]}if(c&262144){fF(e+12|0,z[b+148>>2],z[b+152>>2]);c=v[e+4>>2]}if(c&8388608){c=e+12|0;cF(c,0,v[b+348>>2]);cF(c,1,v[b+352>>2]);cF(c,2,v[b+356>>2]);cF(c,3,v[b+360>>2]);cF(c,4,v[b+364>>2]);cF(c,5,v[b+368>>2]);c=v[e+4>>2]}if(c&1048576){c=e+12|0;jF(c,0,z[b+156>>2],z[b+160>>2]);jF(c,1,z[b+164>>2],z[b+168>>2]);jF(c,2,z[b+172>>2],z[b+176>>2]);jF(c,3,z[b+180>>2],z[b+184>>2]);jF(c,4,z[b+188>>2],z[b+192>>2]);jF(c,5,z[b+196>>2],z[b+200>>2]);c=v[e+4>>2]}if(c&2097152){c=e+12|0;kF(c,0,z[b+204>>2],z[b+208>>2],z[b+212>>2],v[b+216>>2]);kF(c,1,z[b+220>>2],z[b+224>>2],z[b+228>>2],v[b+232>>2]);kF(c,2,z[b+236>>2],z[b+240>>2],z[b+244>>2],v[b+248>>2]);kF(c,3,z[b+252>>2],z[b+256>>2],z[b+260>>2],v[b+264>>2]);kF(c,4,z[b+268>>2],z[b+272>>2],z[b+276>>2],v[b+280>>2]);kF(c,5,z[b+284>>2],z[b+288>>2],z[b+292>>2],v[b+296>>2]);c=v[e+4>>2]}if(!(c&4194304)){break x}c=e+12|0;hF(c,0,z[b+300>>2]);iF(c,0,z[b+324>>2]);hF(c,1,z[b+304>>2]);iF(c,1,z[b+328>>2]);hF(c,2,z[b+308>>2]);iF(c,2,z[b+332>>2]);hF(c,3,z[b+312>>2]);iF(c,3,z[b+336>>2]);hF(c,4,z[b+316>>2]);iF(c,4,z[b+340>>2]);hF(c,5,z[b+320>>2]);iF(c,5,z[b+344>>2]);c=v[e+4>>2]}v[e+8>>2]=0;v[e+4>>2]=c&-16777216}d=d+1|0;g=v[f+5088>>2];if(d>>>0>>0){continue}break}if(!g){break v}h=v[f+5056>>2];d=0;while(1){k=h+(d<<2)|0;b=v[k>>2];e=v[b+4>>2];c=e&268435455;y:{if((e>>>30|0)-1>>>0<=1){v[b+4>>2]=c|-2147483648;break y}v[b>>2]=0;v[b+4>>2]=c}if(e&536870912){Sm(v[k>>2]);g=v[f+5088>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+5072>>2];if(!b|!g){break v}I9(v[f+5064>>2],255,b<<2);d=0;b=v[f+5060>>2];h=v[f+5068>>2];e=h-1|0;if(e){g=0;if(h-2>>>0>=3){k=e&-4;h=0;while(1){i=d|1;v[b+(d<<2)>>2]=i;c=b+(i<<2)|0;i=d|2;v[c>>2]=i;c=b+(i<<2)|0;i=d|3;v[c>>2]=i;d=d+4|0;v[b+(i<<2)>>2]=d;h=h+4|0;if((k|0)!=(h|0)){continue}break}}e=e&3;if(e){while(1){c=b+(d<<2)|0;d=d+1|0;v[c>>2]=d;g=g+1|0;if((e|0)!=(g|0)){continue}break}}e=v[f+5068>>2]-1|0}else{e=0}v[b+(e<<2)>>2]=-1;v[f+5088>>2]=0;v[f+5080>>2]=0}d=v[f+4796>>2];e=v[f+4804>>2]+2|0;if(d>>>0>e>>>0){while(1){d=d-1|0;b=v[v[f+4792>>2]+(d<<2)>>2];v[f+4796>>2]=d;if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);d=v[f+4796>>2]}if(d>>>0>e>>>0){continue}break}}v[f+4804>>2]=0;v[f+4808>>2]=0;xa=n+16|0;v[o+8>>2]=126252;CP(j,a+5712|0,o+8|0);b=a+5584|0;e=v[a+72>>2];c=0;d=v[a+76>>2];if(d){while(1){f=v[b+72>>2];g=e+(c<<2)|0;Ba[v[v[f>>2]+8>>2]](f,v[v[v[g>>2]>>2]+48>>2],v[g>>2]+16|0);c=c+1|0;if((d|0)!=(c|0)){continue}break}}v[b+68>>2]=v[b+68>>2]+1;JE(b,v[a+5824>>2]);if(!w[j+2281|0]){d=v[j+2236>>2];if(d){e=j+2200|0;f=v[j+2204>>2];g=v[j+1e3>>2];while(1){d=d-1|0;c=f+(d<<2)|0;b=v[v[c>>2]>>2];h=x[b+148>>1];z:{if(h&128){u[b+148>>1]=h&65503;Og(e,c);break z}if(!(w[(v[g+184>>2]+B(v[b+144>>2]>>>7|0,24)|0)+4|0]&2)){break z}Og(e,c);oH(b)}if(d){continue}break}}t[j+2281|0]=1}if(!w[j+2280|0]){d=v[j+2276>>2];if(d){b=j+2240|0;e=v[j+2244>>2];while(1){d=d-1|0;c=e+(d<<2)|0;if(w[v[v[c>>2]>>2]+148|0]&64){Og(b,c)}if(d){continue}break}}t[j+2280|0]=1}A:{if(!v[j+2344>>2]){break A}e=v[j+2236>>2];f=v[j+2276>>2];b=f>>>0>>0?e:f;if(!b){break A}b=b<<2;if(!b){break A}c=v[37696];b=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,11777,4567)|0;if(!b){break A}B:{if(!e){break B}h=v[j+2204>>2];c=0;d=0;while(1){g=v[h+(d<<2)>>2];if(w[g+8|0]&4){v[b+(c<<2)>>2]=g+v[((w[g+9|0]<<2)+149664|0)+40>>2];c=c+1|0}d=d+1|0;if((e|0)!=(d|0)){continue}break}if(!c){break B}e=v[j+2344>>2];Ba[v[v[e>>2]+8>>2]](e,b,c)}C:{if(!f){break C}g=v[j+2244>>2];d=0;c=0;while(1){e=v[g+(d<<2)>>2];if(w[e+8|0]&4){v[b+(c<<2)>>2]=e+v[((w[e+9|0]<<2)+149664|0)+40>>2];c=c+1|0}d=d+1|0;if((f|0)!=(d|0)){continue}break}if(!c){break C}e=v[j+2344>>2];Ba[v[v[e>>2]+4>>2]](e,b,c)}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}iP(j);OO(j);b=v[(w[a+5580|0]&4?5564:2392)+a>>2]&1;D:{if(!(!b|!w[a+6355|0])){h=0;e=xa-16|0;xa=e;c=v[j+28>>2];if(w[j+2361|0]&16){b=v[j+36>>2];c=c-b|0;b=v[j+24>>2]+(b<<2)|0}else{b=v[j+24>>2]}v[j+2312>>2]=0;v[j+2300>>2]=0;if(c){g=j+2308|0;n=j+2296|0;while(1){f=b+(h<<2)|0;d=v[f>>2];d=v[((w[d+9|0]<<2)+149664|0)+40>>2]+d|0;E:{if(!(u[v[v[f>>2]>>2]+92>>1]&1)){v[e+12>>2]=d;f=v[j+2300>>2];if(f>>>0>=(v[j+2304>>2]&2147483647)>>>0){Lm(n,e+12|0);break E}v[v[j+2296>>2]+(f<<2)>>2]=d;v[j+2300>>2]=f+1;break E}v[e+8>>2]=d;f=v[j+2312>>2];if(f>>>0>=(v[j+2316>>2]&2147483647)>>>0){Lm(g,e+8|0);break E}v[v[j+2308>>2]+(f<<2)>>2]=d;v[j+2312>>2]=f+1}h=h+1|0;if((h|0)!=(c|0)){continue}break}}xa=e+16|0;break D}if(!b){break D}e=xa-16|0;xa=e;d=v[j+28>>2];if(w[j+2361|0]&16){b=v[j+36>>2];d=d-b|0;b=v[j+24>>2]+(b<<2)|0}else{b=v[j+24>>2]}g=0;v[j+2300>>2]=0;if(d){f=j+2296|0;while(1){c=b+(g<<2)|0;F:{if(u[v[v[c>>2]>>2]+92>>1]&1){break F}c=v[c>>2];h=v[((w[c+9|0]<<2)+149664|0)+40>>2]+c|0;v[e+12>>2]=h;c=v[j+2300>>2];if(c>>>0>=(v[j+2304>>2]&2147483647)>>>0){Lm(f,e+12|0);break F}v[v[j+2296>>2]+(c<<2)>>2]=h;v[j+2300>>2]=c+1}g=g+1|0;if((g|0)!=(d|0)){continue}break}}xa=e+16|0}or(a+5828|0,v[j+976>>2]+212|0);if(w[a+6320|0]){b=v[a+6092>>2];Ba[v[v[b>>2]+16>>2]](b)}v[a+4656>>2]=0;t[v[a+6060>>2]+76|0]=0;t[v[a+6064>>2]+76|0]=0;xa=o+16|0}function gO(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=C(0),m=C(0),n=0,o=C(0),p=C(0),q=0,r=0,s=0,A=C(0),E=0,F=0,G=0,H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=0,P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0,da=0,ea=C(0),fa=0,ga=C(0),ha=C(0),ia=C(0),ja=0,ka=C(0),la=0,ma=0,na=0,oa=0,pa=0,qa=C(0),ra=C(0),sa=0,ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=0,Da=C(0),Ea=C(0),Fa=0,Ga=0,Ha=0,Ia=C(0),Ja=0,Ka=0,La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=0,cb=0;e=v[a+48>>2];b=v[e+304>>2];d=v[b>>2];if(d){v[b>>2]=v[d>>2]}if(!d){b=v[37696];g=Ba[v[v[b>>2]+20>>2]](b)|0?26823:63804;g=Ba[v[v[b+12>>2]+8>>2]](b+12|0,7251,g,19395,82)|0;b=g+19&-16;v[b-4>>2]=b-g;d=sK(b,v[e+308>>2])}z[d+7152>>2]=z[a+44>>2];b=v[a+48>>2];e=w[b+1812|0];t[d+7136|0]=e;t[d+7139|0]=w[b+1814|0];t[d+7137|0]=w[b+1813|0];v[d+7128>>2]=v[b+1816>>2];v[d+7132>>2]=v[v[b+1820>>2]+4>>2];a:{if(e){F=xa-32|0;xa=F;Ja=v[a+28>>2];ja=v[a+40>>2];v[F+28>>2]=0;v[F+24>>2]=0;v[F+20>>2]=v[d+7164>>2];b=ja<<2;t[F+12|0]=b>>>0>1024;b:{if(b>>>0>=1025){bb=F,cb=t9(b,6023,407),v[bb+8>>2]=cb;break b}b=F-(b+15&-16)|0;xa=b;v[F+8>>2]=b}c:{if(!ja){break c}while(1){k=la;la=k+1|0;ma=Ja+(k<<2)|0;N=v[ma>>2];d:{if(!N){break d}H=v[a+32>>2]+(k<<4)|0;t[H+15|0]=w[H+13|0];na=w[H+14|0];O=v[a+36>>2]+(k<<3)|0;q=0;Z=0;h=0;da=xa-256|0;xa=da;g=x[N+40>>1];e:{if(!(g&512)){break e}i=v[N+56>>2];I=v[v[d+7128>>2]+4>>2];f=v[N+60>>2];c=I+(f<<5)|0;b=w[N+47|0];e=w[N+46|0];j=w[H+14|0];if(!(j&32|g&128|(!(v[c+28>>2]&1)&(g&64)!=0|(g&32?!(t[(I+(i<<5)|0)+28|0]&1):q)))){if(w[H+12|0]){v[d+7148>>2]=v[d+7148>>2]+1}AN(H,O,d,0,(b>>>0>e>>>0?b:e)>>>0>4);break e}q=I+(i<<5)|0;t[H+14|0]=j&223;g=v[d+7132>>2];z[d+7104>>2]=z[g+(i<<2)>>2]+z[g+(f<<2)>>2];f=v[N+28>>2];I=v[N+24>>2];Fa=b>>>0>=e>>>0;f:{if(Fa){g=e;e=b;i=q;q=c;s=I;I=f;break f}g=b;i=c;s=f}Ka=d+7104|0;n=d+4640|0;b=w[O+7|0];Ga=b&2;g:{if(Ga){c=v[O>>2];h:{i:{j:{if(c){b=v[c+32>>2];f=v[c+4>>2];v[n>>2]=v[c>>2];v[n+4>>2]=f;f=v[c+28>>2];v[n+24>>2]=v[c+24>>2];v[n+28>>2]=f;f=v[c+20>>2];v[n+16>>2]=v[c+16>>2];v[n+20>>2]=f;f=v[c+12>>2];v[n+8>>2]=v[c+8>>2];v[n+12>>2]=f;if(!b){break j}j=c+48|0;while(1){t[(h+n|0)+56|0]=h;r=B(h,400)+n|0;E=v[j>>2];v[r+448>>2]=E;j=j+16|0;if(E){Z=r- -64|0;G=0;while(1){f=j+B(G,48)|0;R=v[f+4>>2];fa=v[f>>2];L=z[f+8>>2];c=Z+(G<<6)|0;v[c+12>>2]=0;z[c+8>>2]=L;v[c>>2]=fa;v[c+4>>2]=R;R=v[f+16>>2];fa=v[f+20>>2];L=z[f+24>>2];v[c+28>>2]=0;z[c+24>>2]=L;v[c+16>>2]=R;v[c+20>>2]=fa;R=v[f+40>>2];fa=v[f+44>>2];sa=v[f+36>>2];v[c+32>>2]=v[f+32>>2];v[c+36>>2]=sa;v[c+40>>2]=R;v[c+44>>2]=fa;v[c+48>>2]=v[f+12>>2];G=G+1|0;if(G>>>0>2]){continue}break}}j=j+B(E,48)|0;h=h+1|0;if((h|0)!=(b|0)){continue}break}t[n+62|0]=b;if(b>>>0<=5){break i}break h}v[n+16>>2]=2139095039;v[n+20>>2]=2139095039;v[n+8>>2]=0;v[n+12>>2]=1065353216;v[n>>2]=0;v[n+4>>2]=0;v[n+24>>2]=2139095039;v[n+28>>2]=0}b=0;t[n+62|0]=0}j=b;f=6-b&7;if(f){c=0;while(1){t[(j+n|0)+56|0]=j;j=j+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(b+1>>>0<=6){break h}b=n+56|0;while(1){c=j+7|0;t[c+b|0]=c;c=j+6|0;t[c+b|0]=c;c=j+5|0;t[c+b|0]=c;c=j+4|0;t[c+b|0]=c;c=j+3|0;t[c+b|0]=c;c=j+2|0;t[c+b|0]=c;c=j+1|0;t[c+b|0]=c;t[b+j|0]=j;j=j+8|0;if((j|0)!=6){continue}break}}v[O>>2]=n;t[O+7|0]=w[O+7|0]|3;break g}if(!(b&1)){break g}b=0;j=v[O>>2];c=j+127|0;b=c>>>0<127?1:b;f=c;c=b>>>6|0;b=(b&63)<<26|f>>>6;r=j>>>6|0;f=r;fa=b-f|0;R=c-(b>>>0>>0)|0;E=1-f|0;f=b;G=E+b|0;sa=0-(r>>>0>1)|0;b=c+sa|0;c=G;f=f>>>0>c>>>0?b+1|0:b;b=0;Ca=b;Ha=c&7;k:{if(!(b|Ha)){b=j;break k}b=j;while(1){G=c;c=c-1|0;f=f-!G|0;b=b- -64|0;G=Z+1|0;h=G?h:h+1|0;Z=G;if((Ha|0)!=(G|0)|(h|0)!=(Ca|0)){continue}break}}if(!R&fa>>>0>=7|R){while(1){b=b+512|0;f=f-(c>>>0<8)|0;c=c-8|0;if(f|c){continue}break}}b=0;c=j+255|0;b=c>>>0<255?1:b;h=b>>>6|0;b=(b&63)<<26|c>>>6;G=b-r|0;r=h-(b>>>0>>0)|0;f=h+sa|0;b=b+E|0;f=b>>>0>>0?f+1|0:f;c=b;b=0;E=b;R=c&7;if(b|R){Z=0;h=0;while(1){b=c;c=b-1|0;f=f-!b|0;j=j- -64|0;b=h;h=Z+1|0;b=h?b:b+1|0;Z=h;h=b;if((R|0)!=(Z|0)|(E|0)!=(b|0)){continue}break}}if(!r&G>>>0<7){break g}while(1){j=j+512|0;f=f-(c>>>0<8)|0;c=c-8|0;if(f|c){continue}break}}b=B(g,28);g=e<<2;c=(b+d|0)+g|0;v[c+108>>2]=v[c+108>>2]+1;v[d+4624>>2]=0;t[H+7|0]=0;t[H+8|0]=0;t[H+9|0]=0;t[H+10|0]=0;t[H+11|0]=0;t[H+12|0]=0;t[H+13|0]=0;t[H+14|0]=0;v[H>>2]=0;v[H+4>>2]=0;c=q;q=d+528|0;Ba[v[g+(b+127248|0)>>2]](s+36|0,I+36|0,i,c,Ka,O,q,d+4|0)|0;b=v[g+(b+133760|0)>>2];if(b){Ba[b|0](s,I,d,da)|0}l:{if(Fa){break l}i=v[d+4624>>2];if(!i){break l}b=0;while(1){g=q+(b<<6)|0;z[g+8>>2]=-z[g+8>>2];z[g+4>>2]=-z[g+4>>2];z[g>>2]=-z[g>>2];g=da+(b<<2)|0;bb=g,cb=Uaa(v[g>>2],16),v[bb>>2]=cb;b=b+1|0;if((i|0)!=(b|0)){continue}break}}if(Ga){b=d+4702|0;r=(B(w[d+4703|0],48)+(w[b|0]<<4)|0)+48|0;q=rK(d+512|0,r);I=w[b|0];v[q+32>>2]=I;b=v[n+4>>2];v[q>>2]=v[n>>2];v[q+4>>2]=b;b=v[n+12>>2];v[q+8>>2]=v[n+8>>2];v[q+12>>2]=b;b=v[n+20>>2];v[q+16>>2]=v[n+16>>2];v[q+20>>2]=b;b=v[n+28>>2];v[q+24>>2]=v[n+24>>2];v[q+28>>2]=b;if(I){j=q+48|0;f=d+4640|0;s=0;while(1){b=f+B(w[(f+s|0)+56|0],400)|0;c=v[b+448>>2];v[j>>2]=c;h=j+16|0;if(c){j=b- -64|0;g=0;while(1){i=j+(g<<6)|0;E=v[i+4>>2];G=v[i>>2];b=h+B(g,48)|0;z[b+8>>2]=z[i+8>>2];v[b>>2]=G;v[b+4>>2]=E;E=v[i+16>>2];G=v[i+20>>2];L=z[i+24>>2];v[b+28>>2]=0;z[b+24>>2]=L;v[b+16>>2]=E;v[b+20>>2]=G;E=v[i+36>>2];v[b+32>>2]=v[i+32>>2];v[b+36>>2]=E;E=v[i+44>>2];v[b+40>>2]=v[i+40>>2];v[b+44>>2]=E;v[b+12>>2]=v[i+48>>2];g=g+1|0;if((c|0)!=(g|0)){continue}break}}j=h+B(c,48)|0;s=s+1|0;if((I|0)!=(s|0)){continue}break}}v[O>>2]=q;u[O+4>>1]=r;t[O+7|0]=w[O+7|0]|3}BN(x[N+40>>1],H,d,da,e>>>0>4)}xa=da+256|0;c=na&2;q=w[H+14|0]&2;g=w[H+13|0];m:{if(!(!g|!(x[N+40>>1]&128))){v[v[F+8>>2]+(ca<<2)>>2]=k;ca=ca+1|0;break m}b=v[F+20>>2];v[F+20>>2]=b>>>0>g>>>0?b:g;j=w[H+15|0];if((g|0)==(j|0)){break m}i=v[v[ma>>2]+48>>2];b=i+32>>>5|0;n:{if(b>>>0<=(v[d+7208>>2]&2147483647)>>>0){e=v[d+7204>>2];break n}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,b<<2,24422,18067,438)|0;g=v[d+7204>>2];o:{if(!g){break o}H9(e,g,v[d+7208>>2]<<2);if(v[d+7208>>2]<0){break o}g=v[d+7204>>2];if(!g){break o}I=v[37696]+12|0;Ba[v[v[I>>2]+12>>2]](I,g)}g=v[d+7208>>2];I9((g<<2)+e|0,0,b-g<<2);v[d+7208>>2]=b;v[d+7204>>2]=e;g=w[H+13|0];j=w[H+15|0]}b=(i>>>3&536870908)+e|0;v[b>>2]=v[b>>2]|1<>>0>j>>>0){v[F+24>>2]=v[F+24>>2]+1;break m}v[F+28>>2]=v[F+28>>2]+1}if((c|0)!=(q|0)){t[N+43|0]=w[H+14|0]|w[N+43|0]&64;g=v[v[ma>>2]+48>>2];b=g+32>>>5|0;p:{if(b>>>0<=(v[d+7196>>2]&2147483647)>>>0){e=v[d+7192>>2];break p}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,b<<2,24422,18067,438)|0;i=v[d+7192>>2];q:{if(!i){break q}H9(e,i,v[d+7196>>2]<<2);if(v[d+7196>>2]<0){break q}i=v[d+7192>>2];if(!i){break q}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,i)}i=v[d+7196>>2];I9((i<<2)+e|0,0,b-i<<2);v[d+7196>>2]=b;v[d+7192>>2]=e}b=(g>>>3&536870908)+e|0;v[b>>2]=v[b>>2]|1<>2],ca,d,F+24|0,F+28|0,F+20|0)}v[d+7216>>2]=v[d+7216>>2]+oa;v[d+7220>>2]=v[d+7220>>2]+pa;v[d+7224>>2]=v[d+7224>>2]+v[F+24>>2];v[d+7228>>2]=v[d+7228>>2]+v[F+28>>2];v[d+7164>>2]=v[F+20>>2];if(w[F+12|0]){u9(v[F+8>>2])}xa=F+32|0;break a}s=xa-32|0;xa=s;ma=v[a+28>>2];H=v[a+40>>2];v[s+28>>2]=0;v[s+24>>2]=0;v[s+20>>2]=v[d+7164>>2];b=H<<2;t[s+12|0]=b>>>0>1024;r:{if(b>>>0>=1025){bb=s,cb=t9(b,6023,407),v[bb+8>>2]=cb;break r}b=s-(b+15&-16)|0;xa=b;v[s+8>>2]=b}s:{if(!H){break s}while(1){j=la;la=j+1|0;Z=ma+(j<<2)|0;E=v[Z>>2];t:{if(!E){break t}r=v[a+32>>2]+(j<<4)|0;t[r+15|0]=w[r+13|0];da=w[r+14|0];h=v[a+36>>2]+(j<<3)|0;b=0;G=0;F=xa-256|0;xa=F;e=x[E+40>>1];u:{if(!(e&512)){break u}q=v[E+56>>2];I=v[v[d+7128>>2]+4>>2];f=v[E+60>>2];c=I+(f<<5)|0;i=w[E+47|0];g=w[E+46|0];if(!(w[r+14|0]&32|e&128|(!(v[c+28>>2]&1)&(e&64)!=0|(e&32?!(t[(I+(q<<5)|0)+28|0]&1):b)))){e=g>>>0>>0?i:g;b=w[d+7137|0]?w[e+(B(g>>>0>i>>>0?i:g,7)+93280|0)|0]!=0:0;if(w[r+12|0]){v[d+7148>>2]=v[d+7148>>2]+1}AN(r,h,d,b,e>>>0>4);break u}e=I+(q<<5)|0;b=v[d+7132>>2];z[d+7104>>2]=z[b+(q<<2)>>2]+z[b+(f<<2)>>2];f=v[E+28>>2];q=v[E+24>>2];na=g>>>0<=i>>>0;v:{if(na){I=g;g=i;b=e;e=c;i=q;q=f;break v}I=i;b=c;i=f}f=g<<2;c=B(I,28);k=f+(c+d|0)|0;v[k+108>>2]=v[k+108>>2]+1;v[d+4624>>2]=0;t[r+7|0]=0;t[r+8|0]=0;t[r+9|0]=0;t[r+10|0]=0;t[r+11|0]=0;t[r+12|0]=0;t[r+13|0]=0;t[r+14|0]=0;v[r>>2]=0;v[r+4>>2]=0;k=v[f+(c+127040|0)>>2];w:{if(!(!w[d+7137|0]|!w[(B(I,7)+93280|0)+g|0])){O=i+36|0;R=q+36|0;x:{y:{f=v[h>>2];if(!f){v[d+4624>>2]=0;u[h+4>>1]=0;v[h>>2]=0;c=d+528|0;break y}v[d+4624>>2]=0;L=z[f+40>>2];ga=z[f+44>>2];S=z[f+32>>2];ka=z[f+48>>2];qa=z[f+20>>2];T=z[f+36>>2];ra=z[f+52>>2];Da=z[f+24>>2];N=v[f+60>>2];G=w[f+59|0];ja=w[f+58|0];n=x[f+56>>1];U=z[f+12>>2];W=z[f+8>>2];X=z[f+4>>2];Y=z[f>>2];V=z[f+28>>2];Ea=z[f+16>>2];u[h+4>>1]=0;v[h>>2]=0;c=d+528|0;p=z[e>>2];_=C(-p);l=C(z[b+16>>2]-z[e+16>>2]);A=C(l+l);l=C(z[b+20>>2]-z[e+20>>2]);J=C(l+l);m=z[e+4>>2];o=z[e+8>>2];l=C(z[b+24>>2]-z[e+24>>2]);P=C(l+l);M=C(C(C(_*A)-C(J*m))-C(o*P));ta=C(-V);l=C(Ea-ga);ea=C(l+l);l=C(qa-ka);$=C(l+l);l=C(Da-ra);K=C(l+l);Q=C(C(C(ta*ea)-C($*S))-C(T*K));l=z[e+12>>2];aa=C(C(l*l)+C(-.5));ba=C(C(L*L)+C(-.5));ha=C(D(C(C(C(C(A*aa)+C(l*C(C(o*J)-C(m*P))))-C(p*M))-C(C(C(ea*ba)+C(L*C(C(T*$)-C(S*K))))-C(V*Q)))));ua=C(D(C(C(C(C(J*aa)+C(l*C(C(p*P)-C(o*A))))-C(m*M))-C(C(C($*ba)+C(L*C(C(V*K)-C(T*ea))))-C(S*Q)))));ha=ha>ua?ha:ua;A=C(D(C(C(C(C(P*aa)+C(l*C(C(m*A)-C(p*J))))-C(o*M))-C(C(C(K*ba)+C(L*C(C(S*ea)-C(V*$))))-C(T*Q)))));if(!(C(z[d+7112>>2]*C(.009999999776482582))>(A>2];$=C(-m);J=z[b+8>>2];P=z[b>>2];M=z[b+12>>2];ea=C(-S);K=C(D(C(C(C(A*o)+C(C($*J)+C(C(l*P)+C(M*_))))-C(C(X*T)+C(C(ea*W)+C(C(L*Y)+C(U*ta)))))));Q=C(-o);aa=C(C(J*p)+C(C(Q*P)+C(C(l*A)+C(M*$))));$=C(-T);aa=C(D(C(aa-C(C(W*V)+C(C($*Y)+C(C(L*X)+C(U*ea)))))));K=K>aa?K:aa;Q=C(D(C(C(C(P*m)+C(C(_*A)+C(C(l*J)+C(M*Q))))-C(C(Y*S)+C(C(ta*X)+C(C(L*W)+C(U*$)))))));K=K>Q?K:Q;l=C(D(C(C(C(o*J)+C(C(m*A)+C(C(l*M)+C(p*P))))-C(C(T*W)+C(C(S*X)+C(C(L*U)+C(Y*V)))))));if(!((l>1]=k&-16;Ca=h;h=rK(d+512|0,k&65520);h=(h|0)==-1?0:h;v[Ca>>2]=h;f=f- -64|0;v[d+4624>>2]=n;if(n){o=z[b+4>>2];P=C(o+o);l=z[b+8>>2];A=C(P*l);M=z[b>>2];p=C(M+M);m=z[b+12>>2];J=C(p*m);aa=C(A-J);K=C(p*l);Q=C(P*m);ha=C(K+Q);ua=C(A+J);A=C(p*o);va=C(l+l);m=C(va*m);La=C(A-m);Ma=C(K-Q);Na=C(A+m);A=z[e+4>>2];K=C(A+A);m=z[e+8>>2];wa=C(K*m);Q=z[e>>2];J=C(Q+Q);_=z[e+12>>2];ia=C(J*_);Oa=C(wa-ia);ya=C(J*m);za=C(K*_);Pa=C(ya+za);wa=C(wa+ia);ia=C(J*A);Aa=C(m+m);_=C(Aa*_);Qa=C(ia-_);ya=C(ya-za);_=C(ia+_);p=C(C(1)-C(M*p));o=C(o*P);ia=C(p-o);l=C(l*va);va=C(p-l);za=C(C(C(1)-o)-l);l=C(C(1)-C(Q*J));o=C(A*K);Ra=C(l-o);p=l;l=C(m*Aa);Aa=C(p-l);Sa=C(C(C(1)-o)-l);l=C(C(U*U)+C(-.5));Ta=C(-X);Ua=C(-Y);Va=C(-W);Wa=z[b+24>>2];Xa=z[b+20>>2];Ya=z[b+16>>2];Za=z[e+24>>2];_a=z[e+20>>2];$a=z[e+16>>2];b=f;e=0;O=0;while(1){R=!O|!G;k=(R?12:0)+b|0;ab=z[k+12>>2];A=z[k+4>>2];J=z[k>>2];P=z[k+8>>2];e=R?b:e;z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];m=C(P-Da);m=C(m+m);o=C(J-Ea);o=C(o+o);p=C(A-qa);p=C(p+p);M=C(C(W*m)+C(C(Y*o)+C(X*p)));K=C(C(W*M)+C(C(m*l)-C(U*C(C(Y*p)+C(o*Ta)))));Q=C(C(Y*M)+C(C(o*l)-C(U*C(C(X*m)+C(p*Va)))));M=C(C(X*M)+C(C(p*l)-C(U*C(C(W*o)+C(m*Ua)))));Ia=C(Wa+C(C(ia*K)+C(C(Ma*Q)+C(ua*M))));m=C(P-ra);m=C(m+m);o=C(J-ga);o=C(o+o);p=C(A-ka);p=C(p+p);A=C(C(T*m)+C(C(V*o)+C(S*p)));J=C(C(T*A)+C(C(m*ba)-C(L*C(C(V*p)+C(o*ea)))));P=C(C(V*A)+C(C(o*ba)-C(L*C(C(S*m)+C(p*$)))));m=C(C(S*A)+C(C(p*ba)-C(L*C(C(T*o)+C(m*ta)))));o=C(Za+C(C(Ra*J)+C(C(ya*P)+C(wa*m))));z[c+24>>2]=C(Ia+o)*C(.5);p=C(Xa+C(C(aa*K)+C(C(Na*Q)+C(va*M))));A=C(_a+C(C(Oa*J)+C(C(_*P)+C(Aa*m))));z[c+20>>2]=C(p+A)*C(.5);M=C(Ya+C(C(ha*K)+C(C(za*Q)+C(La*M))));m=C($a+C(C(Pa*J)+C(C(Sa*P)+C(Qa*m))));z[c+16>>2]=C(M+m)*C(.5);z[c+12>>2]=ab+C(C(C(Ia-o)*z[e+8>>2])+C(C(C(M-m)*z[e>>2])+C(z[e+4>>2]*C(p-A))));z:{if(!ja){b=k+16|0;k=-1;break z}b=k+20|0;k=v[k+16>>2]}v[c+52>>2]=k;c=c- -64|0;O=O+1|0;if((n|0)!=(O|0)){continue}break}}e=1;if(!h){break x}v[h+60>>2]=N;t[h+59|0]=G;t[h+58|0]=ja;u[h+56>>1]=n;z[h+28>>2]=V;z[h+16>>2]=Ea;z[h+12>>2]=U;z[h+8>>2]=W;z[h+4>>2]=X;z[h>>2]=Y;z[h+52>>2]=ra;z[h+48>>2]=ka;z[h+44>>2]=ga;z[h+40>>2]=L;z[h+36>>2]=T;z[h+32>>2]=S;z[h+24>>2]=Da;z[h+20>>2]=qa;H9(h- -64|0,f,N);break x}Ba[k|0](O,R,b,e,d+7104|0,h,c,d+4|0)|0;L=z[e+24>>2];S=z[e+20>>2];T=z[b+24>>2];U=z[b+20>>2];V=z[e+16>>2];W=z[e+12>>2];X=z[e+8>>2];Y=z[e+4>>2];l=z[e>>2];m=z[b+16>>2];o=z[b+12>>2];p=z[b+8>>2];ba=z[b+4>>2];ga=z[b>>2];A:{B:{n=v[d+4624>>2];if(n){N=v[d+580>>2];G=(N|0)!=-1;c=1;b=0;C:{D:{if((n|0)==1){break D}ka=z[d+528>>2];e=d+592|0;E:{if(ka!=z[e>>2]){b=1;break E}qa=z[d+536>>2];ra=z[d+532>>2];f=d+528|0;b=1;while(1){if(ra!=z[e+4>>2]|qa!=z[e+8>>2]){break E}c=c+1|0;b=n>>>0>c>>>0;if((c|0)==(n|0)){break D}e=f+(c<<6)|0;if(ka==z[e>>2]){continue}break}}c=0;f=B(n,(N|0)!=-1?32:28);break C}c=1;f=B(n,G?20:16)+12|0}k=f+79&65520;u[h+4>>1]=k;e=0;O=d+512|0;k=rK(O,k);k=(k|0)==-1?0:k;v[h>>2]=k;if(k){v[k+60>>2]=f;t[k+59|0]=c;t[k+58|0]=G;u[k+56>>1]=n;z[k+28>>2]=l;z[k+16>>2]=m;z[k+12>>2]=o;z[k+8>>2]=p;z[k+4>>2]=ba;z[k>>2]=ga;z[k+52>>2]=L;z[k+48>>2]=S;z[k+44>>2]=V;z[k+40>>2]=W;z[k+36>>2]=X;z[k+32>>2]=Y;z[k+24>>2]=T;z[k+20>>2]=U;G=n>>>0>1?n:1;c=k- -64|0;f=d+528|0;if((N|0)!=-1){while(1){if((!e|b)&1){h=f+(e<<6)|0;z[c>>2]=z[h>>2];z[c+4>>2]=z[h+4>>2];z[c+8>>2]=z[h+8>>2];c=c+12|0}h=f+(e<<6)|0;z[c>>2]=z[h+16>>2];z[c+4>>2]=z[h+20>>2];z[c+8>>2]=z[h+24>>2];z[c+12>>2]=z[h+12>>2];v[c+16>>2]=v[h+52>>2];c=c+20|0;e=e+1|0;if((G|0)!=(e|0)){continue}break}e=0;break x}while(1){if((!e|b)&1){h=f+(e<<6)|0;z[c>>2]=z[h>>2];z[c+4>>2]=z[h+4>>2];z[c+8>>2]=z[h+8>>2];c=c+12|0}h=f+(e<<6)|0;z[c>>2]=z[h+16>>2];z[c+4>>2]=z[h+20>>2];z[c+8>>2]=z[h+24>>2];z[c+12>>2]=z[h+12>>2];c=c+16|0;e=e+1|0;if((G|0)!=(e|0)){continue}break}e=0;break x}u[h+4>>1]=64;b=rK(O,64);v[h>>2]=b;F:{switch(b+1|0){case 1:break x;case 0:break B;default:break F}}v[b+60>>2]=0;t[b+59|0]=c;t[b+58|0]=G;u[b+56>>1]=0;z[b+28>>2]=l;z[b+16>>2]=m;z[b+12>>2]=o;z[b+8>>2]=p;z[b+4>>2]=ba;z[b>>2]=ga;z[b+52>>2]=L;z[b+48>>2]=S;z[b+44>>2]=V;z[b+40>>2]=W;z[b+36>>2]=X;z[b+32>>2]=Y;z[b+24>>2]=T;z[b+20>>2]=U;break x}u[h+4>>1]=64;b=rK(d+512|0,64);v[h>>2]=b;e=0;switch(b+1|0){case 1:break x;case 0:break B;default:break A}}v[h>>2]=0;break x}v[b+60>>2]=0;t[b+59|0]=G;t[b+58|0]=0;u[b+56>>1]=0;z[b+28>>2]=l;z[b+16>>2]=m;z[b+12>>2]=o;z[b+8>>2]=p;z[b+4>>2]=ba;z[b>>2]=ga;z[b+52>>2]=L;z[b+48>>2]=S;z[b+44>>2]=V;z[b+40>>2]=W;z[b+36>>2]=X;z[b+32>>2]=Y;z[b+24>>2]=T;z[b+20>>2]=U}if(!e){break w}v[d+7144>>2]=v[d+7144>>2]+1;break w}Ba[k|0](i+36|0,q+36|0,b,e,d+7104|0,h,d+528|0,d+4|0)|0}b=v[(B(I,28)+133760|0)+(g<<2)>>2];if(b){Ba[b|0](i,q,d,F)|0}G:{if(na){break G}e=v[d+4624>>2];if(!e){break G}q=d+528|0;i=0;while(1){b=q+(i<<6)|0;z[b+8>>2]=-z[b+8>>2];z[b+4>>2]=-z[b+4>>2];z[b>>2]=-z[b>>2];b=F+(i<<2)|0;bb=b,cb=Uaa(v[b>>2],16),v[bb>>2]=cb;i=i+1|0;if((e|0)!=(i|0)){continue}break}}BN(x[E+40>>1],r,d,F,g>>>0>4)}xa=F+256|0;c=da&2;q=w[r+14|0]&2;g=w[r+13|0];H:{if(!(!g|!(x[E+40>>1]&128))){v[v[s+8>>2]+(ca<<2)>>2]=j;ca=ca+1|0;break H}b=v[s+20>>2];v[s+20>>2]=b>>>0>g>>>0?b:g;j=w[r+15|0];if((g|0)==(j|0)){break H}i=v[v[Z>>2]+48>>2];b=i+32>>>5|0;I:{if(b>>>0<=(v[d+7208>>2]&2147483647)>>>0){e=v[d+7204>>2];break I}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,b<<2,24422,18067,438)|0;g=v[d+7204>>2];J:{if(!g){break J}H9(e,g,v[d+7208>>2]<<2);if(v[d+7208>>2]<0){break J}g=v[d+7204>>2];if(!g){break J}I=v[37696]+12|0;Ba[v[v[I>>2]+12>>2]](I,g)}g=v[d+7208>>2];I9((g<<2)+e|0,0,b-g<<2);v[d+7208>>2]=b;v[d+7204>>2]=e;g=w[r+13|0];j=w[r+15|0]}b=(i>>>3&536870908)+e|0;v[b>>2]=v[b>>2]|1<>>0>j>>>0){v[s+24>>2]=v[s+24>>2]+1;break H}v[s+28>>2]=v[s+28>>2]+1}if((c|0)!=(q|0)){t[E+43|0]=w[r+14|0]|w[E+43|0]&64;g=v[v[Z>>2]+48>>2];b=g+32>>>5|0;K:{if(b>>>0<=(v[d+7196>>2]&2147483647)>>>0){e=v[d+7192>>2];break K}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,b<<2,24422,18067,438)|0;i=v[d+7192>>2];L:{if(!i){break L}H9(e,i,v[d+7196>>2]<<2);if(v[d+7196>>2]<0){break L}i=v[d+7192>>2];if(!i){break L}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,i)}i=v[d+7196>>2];I9((i<<2)+e|0,0,b-i<<2);v[d+7196>>2]=b;v[d+7192>>2]=e}b=(g>>>3&536870908)+e|0;v[b>>2]=v[b>>2]|1<>2],ca,d,s+24|0,s+28|0,s+20|0)}v[d+7216>>2]=v[d+7216>>2]+oa;v[d+7220>>2]=v[d+7220>>2]+pa;v[d+7224>>2]=v[d+7224>>2]+v[s+24>>2];v[d+7228>>2]=v[d+7228>>2]+v[s+28>>2];v[d+7164>>2]=v[s+20>>2];if(w[s+12|0]){u9(v[s+8>>2])}xa=s+32|0}a=v[v[a+48>>2]+304>>2];v[d>>2]=v[a>>2];v[a>>2]=d}function H0(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=0,H=0,I=C(0),J=0,L=C(0),M=0,N=0,O=0,P=C(0),Q=0,R=C(0),S=C(0),T=0,U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=0,oa=0,pa=C(0),qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=0,Ua=0,Va=0,Wa=0,Xa=C(0),Ya=C(0),Za=C(0),_a=0;l=xa-784|0;xa=l;k=0;a:{if(z[c+4>>2]!=C(1)){break a}k=0;if(z[c+8>>2]!=C(1)){break a}k=z[c+12>>2]==C(1)}_=z[a+4>>2]!=C(1)|z[a+8>>2]!=C(1)?_:z[a+12>>2]==C(1);G=c+4|0;j=v[a+36>>2];H=v[c+32>>2];v[l+768>>2]=0;v[l+772>>2]=1065353216;v[l+760>>2]=0;v[l+764>>2]=0;v[l+752>>2]=0;v[l+756>>2]=1065353216;v[l+744>>2]=0;v[l+748>>2]=0;v[l+736>>2]=1065353216;v[l+740>>2]=1065353216;v[l+720>>2]=1065353216;v[l+724>>2]=0;t[l+776|0]=0;v[l+728>>2]=0;v[l+732>>2]=0;v[l+712>>2]=0;v[l+716>>2]=0;v[l+704>>2]=1065353216;v[l+708>>2]=0;if(!k){IX(l+704|0,G,c+16|0)}v[l+688>>2]=0;v[l+692>>2]=1065353216;v[l+680>>2]=0;v[l+684>>2]=0;v[l+672>>2]=0;v[l+676>>2]=1065353216;v[l+664>>2]=0;v[l+668>>2]=0;v[l+656>>2]=1065353216;v[l+660>>2]=1065353216;v[l+640>>2]=1065353216;v[l+644>>2]=0;t[l+696|0]=0;v[l+648>>2]=0;v[l+652>>2]=0;v[l+632>>2]=0;v[l+636>>2]=0;v[l+624>>2]=1065353216;v[l+628>>2]=0;if(!_){IX(l+624|0,a+4|0,a+16|0)}m=z[H+16>>2];p=z[l+712>>2];q=z[H+20>>2];s=z[l+724>>2];n=z[H+24>>2];y=z[l+736>>2];A=C(C(C(m*p)+C(q*s))+C(n*y));R=p;p=z[H+28>>2];X=s;s=z[H+32>>2];Y=y;y=z[H+36>>2];E=C(C(C(D(C(R*p)))+C(D(C(X*s))))+C(D(C(Y*y))));z[l+620>>2]=A+E;o=z[l+708>>2];r=z[l+720>>2];F=z[l+732>>2];I=C(C(C(m*o)+C(q*r))+C(n*F));o=C(C(C(D(C(o*p)))+C(D(C(r*s))))+C(D(C(F*y))));z[l+616>>2]=I+o;R=m;m=z[l+704>>2];X=q;q=z[l+716>>2];Y=n;n=z[l+728>>2];r=C(C(C(R*m)+C(X*q))+C(Y*n));m=C(C(C(D(C(m*p)))+C(D(C(q*s))))+C(D(C(n*y))));z[l+612>>2]=r+m;z[l+608>>2]=A-E;z[l+604>>2]=I-o;z[l+600>>2]=r-m;q=z[d+4>>2];p=C(q+q);m=z[d+8>>2];A=C(p*m);s=z[d>>2];n=C(s+s);y=z[d+12>>2];E=C(n*y);z[l+60>>2]=A-E;z[l+52>>2]=A+E;s=C(C(1)-C(s*n));A=C(q*p);z[l- -64>>2]=s-A;R=s;s=C(m+m);E=C(m*s);z[l+48>>2]=R-E;m=C(n*m);p=C(p*y);z[l+56>>2]=m+p;q=C(n*q);n=C(s*y);z[l+44>>2]=q-n;z[l+40>>2]=m-p;z[l+36>>2]=q+n;z[l+32>>2]=C(C(1)-A)-E;z[l+68>>2]=z[d+16>>2];z[l+72>>2]=z[d+20>>2];z[l+76>>2]=z[d+24>>2];q=z[b+4>>2];p=C(q+q);m=z[b+8>>2];A=C(p*m);s=z[b>>2];n=C(s+s);y=z[b+12>>2];E=C(n*y);z[l+516>>2]=A-E;z[l+508>>2]=A+E;s=C(C(1)-C(s*n));A=C(q*p);z[l+520>>2]=s-A;R=s;s=C(m+m);E=C(m*s);z[l+504>>2]=R-E;m=C(n*m);p=C(p*y);z[l+512>>2]=m+p;q=C(n*q);n=C(s*y);z[l+500>>2]=q-n;z[l+496>>2]=m-p;z[l+492>>2]=q+n;z[l+488>>2]=C(C(1)-A)-E;z[l+524>>2]=z[b+16>>2];z[l+528>>2]=z[b+20>>2];z[l+532>>2]=z[b+24>>2];p_(l+536|0,l+600|0,C(0),l+32|0,l+488|0,l+624|0,_);z[l+588>>2]=z[l+588>>2]+i;z[l+592>>2]=z[l+592>>2]+i;z[l+584>>2]=z[l+584>>2]+i;q=z[b+8>>2];o=z[e+8>>2];n=C(o+o);p=z[b>>2];r=z[e>>2];s=C(r+r);F=z[e+4>>2];y=C(F+F);A=z[b+4>>2];E=C(C(q*n)+C(C(p*s)+C(y*A)));m=z[b+12>>2];I=C(C(m*m)+C(-.5));L=C(C(C(p*E)+C(C(s*I)-C(m*C(C(A*n)-C(y*q)))))*f);P=C(C(C(A*E)+C(C(y*I)-C(m*C(C(q*s)-C(n*p)))))*f);n=C(C(C(q*E)+C(C(n*I)-C(m*C(C(p*y)-C(s*A)))))*f);m=C(C(C(z[l+668>>2]*L)+C(P*z[l+680>>2]))+C(n*z[l+692>>2]));z[l+496>>2]=m;q=C(C(C(z[l+664>>2]*L)+C(P*z[l+676>>2]))+C(n*z[l+688>>2]));z[l+492>>2]=q;n=C(C(C(z[l+660>>2]*L)+C(P*z[l+672>>2]))+C(n*z[l+684>>2]));z[l+488>>2]=n;I=C(K(C(C(m*m)+C(C(n*n)+C(q*q)))));if(I>C(0)){s=m;m=C(C(1)/I);z[l+496>>2]=s*m;z[l+492>>2]=q*m;z[l+488>>2]=n*m}N=w[a+32|0];M=x[h>>1];u[l+8>>1]=M;z[l+24>>2]=-o;z[l+20>>2]=-F;z[l+16>>2]=-r;J=xa-32|0;xa=J;Q=w[l+696|0];k=l+32|0;v[k+4>>2]=2;U=x[l+8>>1];z[k+16>>2]=_?C(1):C(I/f);t[k+12|0]=Q;u[k+10>>1]=0;u[k+8>>1]=U;v[k+64>>2]=0;v[k+68>>2]=0;v[k>>2]=143828;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;t[k+96|0]=0;v[k+272>>2]=0;v[k+276>>2]=0;v[k+280>>2]=0;v[k+284>>2]=0;v[k+228>>2]=0;v[k+232>>2]=0;v[k+236>>2]=0;v[k+240>>2]=0;v[k+248>>2]=0;v[k+252>>2]=0;v[k+256>>2]=0;v[k+260>>2]=0;v[k+224>>2]=1065353216;v[k+244>>2]=1065353216;v[k+264>>2]=1065353216;v[k+268>>2]=0;v[k+312>>2]=0;v[k+316>>2]=0;v[k+304>>2]=0;v[k+308>>2]=0;v[k+320>>2]=l+624;v[k+288>>2]=0;v[k+292>>2]=0;v[k+296>>2]=0;v[k+300>>2]=1065353216;v[k+324>>2]=0;v[k+328>>2]=0;u[k+336>>1]=0;v[k+340>>2]=0;v[k+344>>2]=0;v[k+348>>2]=0;v[k+352>>2]=0;v[k+356>>2]=0;v[k+360>>2]=0;z[k+416>>2]=z[l+16>>2];z[k+420>>2]=z[l+20>>2];m=z[l+24>>2];_=M&128;N=N&2;Ia=(_|N)!=0;t[k+445|0]=Ia;M=(M&64)>>>6|0;t[k+444|0]=M;z[k+440>>2]=i;z[k+424>>2]=m;z[k+364>>2]=f;v[k+332>>2]=-1;q=z[b+8>>2];m=z[l+24>>2];n=C(m+m);p=z[b>>2];m=z[l+16>>2];s=C(m+m);m=z[l+20>>2];y=C(m+m);A=z[b+4>>2];E=C(C(q*n)+C(C(p*s)+C(y*A)));m=z[b+12>>2];o=C(C(m*m)+C(-.5));z[k+436>>2]=C(q*E)+C(C(n*o)-C(m*C(C(p*y)-C(s*A))));z[k+432>>2]=C(A*E)+C(C(y*o)-C(m*C(C(q*s)-C(n*p))));z[k+428>>2]=C(p*E)+C(C(s*o)-C(m*C(C(A*n)-C(y*q))));F=z[b+20>>2];P=z[b+24>>2];s=z[d+20>>2];L=z[d+24>>2];ia=z[l+20>>2];$=z[l+16>>2];ga=z[l+24>>2];y=z[b+8>>2];A=z[b>>2];E=z[b+4>>2];o=z[b+12>>2];S=z[b+16>>2];p=z[d>>2];m=z[d+4>>2];q=z[d+8>>2];n=z[d+12>>2];r=z[d+16>>2];v[k+412>>2]=0;v[k+316>>2]=0;z[k+312>>2]=L;z[k+308>>2]=s;z[k+304>>2]=r;z[k+300>>2]=n;z[k+296>>2]=q;z[k+292>>2]=m;z[k+288>>2]=p;v[k+284>>2]=0;v[k+268>>2]=0;v[k+252>>2]=0;v[k+236>>2]=0;V=C(-p);r=C(S-r);F=C(F-s);L=C(P-L);P=C(C(C(V*r)-C(F*m))-C(q*L));s=C(C(n*n)+C(-.5));S=C(C(C(n*C(C(m*r)-C(p*F)))+C(s*L))-C(q*P));z[k+280>>2]=S+S;S=C(C(C(s*F)+C(n*C(C(p*L)-C(q*r))))-C(m*P));z[k+276>>2]=S+S;r=C(C(C(s*r)+C(n*C(C(q*F)-C(m*L))))-C(p*P));z[k+272>>2]=r+r;F=C(C(C(E*q)-C(m*y))+C(C(A*n)-C(o*p)));r=C(F+F);L=C(C(C(y*p)-C(q*A))+C(C(E*n)-C(o*m)));P=C(L+L);S=C(C(1)-C(F*r));aa=C(L*P);z[k+264>>2]=S-aa;F=C(C(C(A*m)-C(p*E))+C(C(y*n)-C(o*q)));ba=C(F*P);y=C(C(o*n)-C(C(C(V*A)-C(E*m))-C(q*y)));A=C(y*r);z[k+260>>2]=ba-A;E=C(F*r);o=C(y*P);z[k+256>>2]=E+o;z[k+248>>2]=ba+A;A=C(F+F);F=C(F*A);z[k+244>>2]=S-F;r=C(L*r);y=C(y*A);z[k+240>>2]=r-y;z[k+232>>2]=E-o;z[k+228>>2]=r+y;z[k+224>>2]=C(C(1)-aa)-F;y=C(C(-ga)*f);A=C(C(-$)*f);E=C(C(-ia)*f);o=C(C(q*y)+C(C(p*A)+C(m*E)));r=C(C(q*o)+C(C(y*s)-C(n*C(C(p*E)-C(A*m)))));z[k+408>>2]=r+r;r=C(C(m*o)+C(C(E*s)-C(n*C(C(q*A)-C(y*p)))));z[k+404>>2]=r+r;m=C(C(p*o)+C(C(A*s)-C(n*C(C(m*y)-C(E*q)))));z[k+400>>2]=m+m;z[k+384>>2]=f;f=z[G>>2];m=z[G+4>>2];q=z[G+8>>2];v[J+28>>2]=0;z[J+24>>2]=q;z[J+20>>2]=m;z[J+16>>2]=f;Q=v[G+12>>2];U=v[G+16>>2];T=v[G+24>>2];v[J+8>>2]=v[G+20>>2];v[J+12>>2]=T;v[J>>2]=Q;v[J+4>>2]=U;G=v[H+56>>2];Q=w[H+55|0];n=C(f*z[H+68>>2]);p=C(m*z[H+72>>2]);n=n<=p?n:p;p=C(q*z[H+76>>2]);n=n<=p?n:p;z[k+88>>2]=n*C(.02500000037252903);z[k+84>>2]=n*C(.05000000074505806);z[k+80>>2]=n*C(.10000000149011612);FV(J+16|0,J,k+112|0,k+160|0,k- -64|0,f==C(1)&m==C(1)&q==C(1));v[k+216>>2]=G+B(Q,20);G=w[H+54|0];v[k+64>>2]=0;v[k+68>>2]=0;t[k+220|0]=G;v[k+72>>2]=0;v[k+76>>2]=0;G=v[H+60>>2];v[k+208>>2]=H+16;v[k+212>>2]=G;xa=J+32|0;Ba[v[(x[j+4>>1]<<2)+143892>>2]](j,l+536|0,l+488|0,I,k,M);h=(x[h>>1]&512)>>>9|0;H=_>>>7|0;J=N>>>1|0;Ja=w[k+10|0];b:{if(!Ja){break b}if(w[k+11|0]){c:{d:{e:{if(!h){u[g+12>>1]=1026;break e}_=b;p=C(0);m=C(0);q=C(0);n=C(0);s=C(0);y=C(0);ga=C(0);S=C(0);V=C(0);j=xa-6096|0;xa=j;oa=v[a+36>>2];Ka=v[oa+56>>2];M=v[c+32>>2];v[j+1980>>2]=0;A=C(1);f=z[c+8>>2];o=z[c+4>>2];H=0;f:{if(o!=C(1)){break f}H=0;if(f!=C(1)){break f}H=z[c+12>>2]==C(1)}b=j+1968|0;v[b>>2]=0;v[b+4>>2]=1065353216;b=j+1960|0;v[b>>2]=0;v[b+4>>2]=0;b=j+1952|0;v[b>>2]=0;v[b+4>>2]=1065353216;b=j+1944|0;v[b>>2]=0;v[b+4>>2]=0;b=j+1936|0;v[b>>2]=1065353216;v[b+4>>2]=1065353216;b=j+1920|0;v[b>>2]=1065353216;v[b+4>>2]=0;t[j+1976|0]=0;v[j+1928>>2]=0;v[j+1932>>2]=0;v[j+1912>>2]=0;v[j+1916>>2]=0;v[j+1904>>2]=1065353216;v[j+1908>>2]=0;E=C(1);$=C(1);if(!H){IX(j+1904|0,c+4|0,c+16|0);o=z[c+4>>2];A=z[j+1936>>2];p=z[j+1932>>2];m=z[j+1928>>2];q=z[j+1924>>2];E=z[j+1920>>2];n=z[j+1916>>2];s=z[j+1912>>2];y=z[j+1908>>2];$=z[j+1904>>2];f=z[c+8>>2]}r=z[M+48>>2];F=z[M+40>>2];I=z[M+44>>2];L=z[d+20>>2];P=z[d+24>>2];b=v[d>>2];h=v[d+4>>2];J=v[d+12>>2];G=v[d+8>>2];ia=z[d+16>>2];v[j+1900>>2]=0;z[j+1896>>2]=P;z[j+1892>>2]=L;z[j+1888>>2]=ia;v[j+1880>>2]=G;v[j+1884>>2]=J;v[j+1872>>2]=b;v[j+1876>>2]=h;aa=z[c+12>>2];v[j+1868>>2]=0;z[j+1864>>2]=aa;z[j+1856>>2]=o;z[j+1860>>2]=f;b=v[c+16>>2];h=v[c+20>>2];J=v[c+28>>2];v[j+1848>>2]=v[c+24>>2];v[j+1852>>2]=J;v[j+1840>>2]=b;v[j+1844>>2]=h;t[j+1712|0]=0;b=j+1704|0;v[b>>2]=0;v[b+4>>2]=0;h=j+1696|0;v[h>>2]=0;v[h+4>>2]=0;v[j+1688>>2]=0;v[j+1692>>2]=0;v[j+1680>>2]=0;v[j+1684>>2]=0;v[j+1824>>2]=M+16;v[j+1832>>2]=v[M+56>>2]+B(w[M+55|0],20);t[j+1836|0]=w[M+54|0];o=C(o*z[M+68>>2]);f=C(z[M+72>>2]*f);f=f>=o?o:f;o=C(aa*z[M+76>>2]);f=f<=o?f:o;z[b>>2]=f*C(.02500000037252903);z[h>>2]=f*C(.10000000149011612);z[j+1700>>2]=f*C(.05000000074505806);La=j+1728|0;Ma=j+1776|0;b=j+1680|0;FV(j+1856|0,j+1840|0,La,Ma,b,H);v[j+1828>>2]=v[M+60>>2];f=C(z[M+68>>2]*z[j+1856>>2]);o=C(z[M+72>>2]*z[j+1860>>2]);f=f<=o?f:o;o=C(z[M+76>>2]*z[j+1864>>2]);aa=C(C((f<=o?f:o)*C(.25))+i);z[j+1600>>2]=aa;v[j+1592>>2]=0;v[j+1584>>2]=0;v[j+1588>>2]=0;zw(j+1584|0,128);Na=a+4|0;xX(j+1536|0,_,Na);k2(b,H,j+1464|0);z[j+1416>>2]=z[d>>2];z[j+1420>>2]=z[d+4>>2];z[j+1424>>2]=z[d+8>>2];z[j+1428>>2]=z[d+12>>2];Wa=H?141020:141068;Xa=C(C(C(F*s)+C(I*q))+C(r*A));Ya=C(C(C(F*y)+C(I*E))+C(r*p));Za=C(C(C(F*$)+C(I*n))+C(r*m));b=268435455;A=C(0);p=C(0);m=C(0);q=C(0);E=C(0);n=C(0);$=C(0);s=C(0);y=C(0);g:{h:{while(1){i:{z[j+1440>>2]=P;z[j+1436>>2]=L;z[j+1432>>2]=ia;v[j+1588>>2]=0;v[j+1900>>2]=0;z[j+1896>>2]=P;z[j+1892>>2]=L;z[j+1888>>2]=ia;t[j+1660|0]=H;v[j+1656>>2]=Ma;v[j+1652>>2]=La;v[j+1616>>2]=Wa;v[j+1644>>2]=0;z[j+1640>>2]=Xa;z[j+1636>>2]=Ya;z[j+1632>>2]=Za;v[j+1648>>2]=j+1872;v[j+1664>>2]=j+1680;h=j+1352|0;s_(h,c,M,j+1416|0);z[j+1400>>2]=aa+z[j+1400>>2];z[j+1404>>2]=aa+z[j+1404>>2];z[j+1408>>2]=aa+z[j+1408>>2];d=v[a+36>>2];q_(j,h,_,Na);v[j+1280>>2]=141620;v[j+1288>>2]=j+1584;v[j+1284>>2]=2;Ba[v[(x[d+4>>1]<<2)+141640>>2]](d,j,j+1280|0,1,1);J=v[j+1588>>2];if(!J){G=0;if(va){break i}break g}F=z[j+1580>>2];I=z[j+1572>>2];ba=z[j+1576>>2];ka=z[j+1436>>2];la=z[j+1432>>2];ma=z[j+1440>>2];ca=z[j+1544>>2];da=z[j+1536>>2];wa=z[j+1540>>2];ya=z[j+1556>>2];za=z[j+1548>>2];Aa=z[j+1552>>2];R=z[j+1568>>2];X=z[j+1560>>2];Y=z[j+1564>>2];f=z[j+1428>>2];i=z[j+1416>>2];o=z[j+1424>>2];r=z[j+1420>>2];v[j+1340>>2]=0;v[j+1324>>2]=0;v[j+1308>>2]=0;v[j+1292>>2]=0;ea=C(C(-i)-i);fa=C(-o);Oa=C(ea*fa);ha=C(-r);W=C(ha-r);Pa=C(f*W);Z=C(Oa-Pa);pa=C(f*ea);Qa=C(W*fa);ja=C(pa+Qa);Ra=C(C(i*ea)+C(1));Sa=C(W*ha);W=C(Ra-Sa);z[j+1320>>2]=C(C(X*Z)+C(Y*ja))+C(R*W);z[j+1304>>2]=C(C(Z*za)+C(ja*Aa))+C(W*ya);z[j+1288>>2]=C(C(da*Z)+C(wa*ja))+C(W*ca);ma=C(ma*C(-2));la=C(la*C(-2));ka=C(ka*C(-2));Ca=C(C(o*ma)+C(C(i*la)+C(r*ka)));Da=C(C(f*f)+C(-.5));z[j+1336>>2]=C(C(o*Ca)+C(C(ma*Da)-C(f*C(C(i*ka)-C(la*r)))))+C(C(C(Z*I)+C(ja*ba))+C(W*F));ja=C(ea*ha);Z=C(fa-o);W=C(f*Z);ea=C(ja+W);ha=C(Z*fa);fa=C(Ra-ha);Z=C(Qa-pa);z[j+1316>>2]=C(C(X*ea)+C(Y*fa))+C(R*Z);pa=X;X=C(C(C(1)-Sa)-ha);ha=Y;Y=C(ja-W);W=R;R=C(Oa+Pa);z[j+1312>>2]=C(C(pa*X)+C(ha*Y))+C(W*R);z[j+1300>>2]=C(C(ea*za)+C(fa*Aa))+C(Z*ya);z[j+1296>>2]=C(C(X*za)+C(Y*Aa))+C(R*ya);z[j+1284>>2]=C(Z*ca)+C(C(da*ea)+C(wa*fa));z[j+1280>>2]=C(R*ca)+C(C(da*X)+C(wa*Y));z[j+1332>>2]=C(C(r*Ca)+C(C(ka*Da)-C(f*C(C(o*la)-C(ma*i)))))+C(C(C(ea*I)+C(fa*ba))+C(Z*F));z[j+1328>>2]=C(C(i*Ca)+C(C(la*Da)-C(f*C(C(r*ma)-C(ka*o)))))+C(C(C(X*I)+C(Y*ba))+C(R*F));d=J+31|0;if(d>>>0<=31){G=0;if(va){break i}break g}_a=d>>>5|0;i=C(34028234663852886e22);qa=0;d=J;Ea=0;while(1){Fa=qa<<5;h=J-Fa|0;Ga=h>>>0<32?h:32;j:{if(!Ga){v[j+6088>>2]=v[j+1456>>2];h=v[j+1452>>2];v[j+6080>>2]=v[j+1448>>2];v[j+6084>>2]=h;U=0;break j}ra=d>>>0<32?d:32;sa=w[oa+64|0]&2;f=C(C(z[a+4>>2]*z[a+8>>2])*z[a+12>>2]);G=v[oa+24>>2];na=v[oa+28>>2];N=0;ta=v[j+1584>>2];while(1){U=v[ta+(N+Fa<<2)>>2];h=j+B(N,40)|0;k:{if(sa){O=na+B(U,6)|0;T=x[O+4>>1];Q=x[O+2>>1];O=x[O>>1];break k}O=na+B(U,12)|0;T=v[O+8>>2];Q=v[O+4>>2];O=v[O>>2]}O=B(O,12)+G|0;z[h>>2]=z[O>>2];z[h+4>>2]=z[O+4>>2];z[h+8>>2]=z[O+8>>2];ua=f>2]=z[O>>2];z[h+16>>2]=z[O+4>>2];z[h+20>>2]=z[O+8>>2];Q=G+B(ua?Q:T,12)|0;z[h+24>>2]=z[Q>>2];z[h+28>>2]=z[Q+4>>2];z[h+32>>2]=z[Q+8>>2];t[h+36|0]=Ka?w[U+Ka|0]:56;N=N+1|0;if((ra|0)!=(N|0)){continue}break}v[j+6088>>2]=v[j+1456>>2];h=v[j+1452>>2];v[j+6080>>2]=v[j+1448>>2];v[j+6084>>2]=h;U=0;Q=0;if(!Ga){break j}while(1){v[j+1980>>2]=0;G=j+B(Q,40)|0;h=Q+Fa|0;E1(j+1464|0,j+1616|0,G,h,w[G+36|0],j+1600|0,Ia,j+1872|0,j+1280|0,j+1984|0,j+1980|0);T=v[j+1980>>2];l:{if(!T){break l}N=0;f=z[j+2028>>2];m:{if((T|0)==1){break m}N=T-1|0;na=N&3;U=0;G=1;n:{if(T-2>>>0<3){N=0;break n}ua=N&-4;N=0;T=0;while(1){o=z[(j+(G<<6)|0)+2028>>2];O=o>2];f=O?o:f;ra=r>2];f=ra?r:f;sa=o>2];f=sa?o:f;ta=r>2];T=o>2];n=z[b+32>>2];A=z[b+24>>2];p=z[b+20>>2];q=z[b+40>>2];E=z[b+36>>2];b=h;i=f}Q=Q+1|0;if((Ga|0)!=(Q|0)){continue}break}}v[j+1456>>2]=v[j+6088>>2];h=v[j+6084>>2];v[j+1448>>2]=v[j+6080>>2];v[j+1452>>2]=h;d=d-32|0;Ea=U|Ea;qa=qa+1|0;if((_a|0)!=(qa|0)){continue}break}if(!(Ea&1)){G=0;if(va){break i}break g}f=z[j+1880>>2];o=z[j+1872>>2];r=z[j+1876>>2];V=C(C(f*A)+C(C(o*m)+C(p*r)));F=z[j+1884>>2];I=C(C(F*F)+C(-.5));ga=C(C(f*V)+C(C(F*C(C(o*p)-C(m*r)))+C(A*I)));ga=C(z[j+1896>>2]+C(ga+ga));S=C(C(r*V)+C(C(F*C(C(f*m)-C(A*o)))+C(p*I)));S=C(z[j+1892>>2]+C(S+S));V=C(C(o*V)+C(C(F*C(C(r*A)-C(p*f)))+C(m*I)));V=C(z[j+1888>>2]+C(V+V));ba=C(C(f*q)+C(C(o*n)+C(E*r)));ca=C(C(f*ba)+C(C(F*C(C(o*E)-C(n*r)))+C(q*I)));ca=C(ca+ca);da=C(C(r*ba)+C(C(F*C(C(f*n)-C(q*o)))+C(E*I)));da=C(da+da);f=C(C(o*ba)+C(C(F*C(C(r*q)-C(E*f)))+C(n*I)));f=C(f+f);b=v[v[j+1584>>2]+(b<<2)>>2];if(!(i<=C(0))){if(Ha){break i}z[g+36>>2]=ca;z[g+32>>2]=da;z[g+28>>2]=f;z[g+24>>2]=ga;z[g+20>>2]=S;z[g+16>>2]=V;v[g+40>>2]=0;v[g+8>>2]=b;break h}o=C(i*ca);P=C(P-o);r=C(i*da);L=C(L-r);f=C(i*f);ia=C(ia-f);$=C($-o);s=C(s-r);y=C(y-f);va=1;Ha=Ha+1|0;if((Ha|0)!=2){continue}}break}z[g+24>>2]=ga;z[g+20>>2]=S;z[g+16>>2]=V;v[g+8>>2]=b;f=C(K(C(C($*$)+C(C(y*y)+C(s*s)))));z[g+40>>2]=-f;i=C(C(1)/f);a=f>C(0);z[g+36>>2]=a?C($*i):C(0);z[g+32>>2]=a?C(s*i):C(0);z[g+28>>2]=a?C(y*i):C(0)}G=1}a=v[j+1592>>2];o:{if((a|0)<0|!(a&2147483647)){break o}a=v[j+1584>>2];if(!a){break o}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=j+6096|0;u[g+12>>1]=1026;if(G){break d}}v[g+40>>2]=0;f=z[e>>2];i=z[e+4>>2];z[g+36>>2]=-z[e+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f;break c}if(z[g+40>>2]==C(0)){f=z[e>>2];i=z[e+4>>2];z[g+36>>2]=-z[e+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f}u[g+12>>1]=1027}v[g+8>>2]=v[k+332>>2];break b}a=v[k+328>>2];v[g>>2]=v[k+324>>2];v[g+4>>2]=a;v[g+8>>2]=v[k+332>>2];u[g+12>>1]=x[k+336>>1];z[g+16>>2]=z[k+340>>2];z[g+20>>2]=z[k+344>>2];z[g+24>>2]=z[k+348>>2];f=z[k+352>>2];i=z[k+356>>2];p=z[k+360>>2];z[g+40>>2]=z[k+364>>2];a=v[k+368>>2];m=C(-p);z[g+36>>2]=m;q=C(-i);z[g+32>>2]=q;n=C(-f);z[g+28>>2]=n;v[g+44>>2]=a;f=C(K(C(C(p*p)+C(C(f*f)+C(i*i)))));if(f>C(0)){f=C(C(1)/f);m=C(f*m);z[g+36>>2]=m;q=C(f*q);z[g+32>>2]=q;n=C(f*n);z[g+28>>2]=n}if(J|!H){break b}i=z[b+8>>2];f=z[k+20>>2];E=C(z[k+32>>2]-f);p=z[k+24>>2];y=C(z[k+48>>2]-p);f=C(z[k+44>>2]-f);A=C(z[k+36>>2]-p);p=C(C(E*y)-C(f*A));p=C(p+p);s=z[b>>2];R=A;A=z[k+28>>2];o=C(z[k+52>>2]-A);r=C(z[k+40>>2]-A);y=C(C(R*o)-C(y*r));y=C(y+y);A=z[b+4>>2];f=C(C(r*f)-C(o*E));E=C(f+f);o=C(C(i*p)+C(C(s*y)+C(A*E)));f=z[b+12>>2];r=C(C(f*f)+C(-.5));if(!(C(C(C(C(i*o)+C(C(p*r)+C(f*C(C(s*E)-C(y*A)))))*z[e+8>>2])+C(C(C(C(s*o)+C(C(y*r)+C(f*C(C(A*p)-C(E*i)))))*z[e>>2])+C(z[e+4>>2]*C(C(A*o)+C(C(E*r)+C(f*C(C(i*y)-C(p*s))))))))>C(0))){break b}z[g+36>>2]=-m;z[g+32>>2]=-q;z[g+28>>2]=-n}xa=l+784|0;return(Ja|0)!=0|0}function S$(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=C(0),aa=0,ba=0,ca=C(0),da=C(0),ea=0,fa=C(0),ga=C(0),ha=C(0),ia=0,ja=C(0),ka=C(0),la=C(0),ma=0,na=C(0),oa=C(0),pa=0,qa=C(0),ra=C(0),sa=0,ta=0,ua=0,va=0,wa=0,ya=0,za=0,Aa=0,Ca=0,Da=0,Ea=0,Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0;l=xa-368|0;xa=l;a:{b:{if(!(z[b+4>>2]==C(1)&z[b+8>>2]==C(1))){ma=(w[b+32|0]&2)>>>1|0;P=(x[h>>1]&128)>>>7|0;break b}ba=1;ma=(w[b+32|0]&2)>>>1|0;P=(x[h>>1]&128)>>>7|0;if(z[b+12>>2]!=C(1)){break b}q=z[c>>2];m=C(C(-q)-q);A=z[c+8>>2];k=C(-A);r=C(m*k);G=z[c+4>>2];n=C(-G);o=C(n-G);M=z[c+12>>2];F=C(o*M);U=C(r-F);Q=z[c+16>>2];p=C(z[d+36>>2]-Q);s=C(o*k);Z=C(m*M);J=C(s+Z);H=z[c+20>>2];y=C(z[d+40>>2]-H);_=C(C(q*m)+C(1));R=C(o*n);L=C(_-R);I=z[c+24>>2];o=C(z[d+44>>2]-I);z[l+344>>2]=C(C(U*p)+C(J*y))+C(L*o);m=C(m*n);n=C(k-A);V=C(M*n);$=C(m+V);k=C(n*k);X=C(_-k);S=C(s-Z);z[l+340>>2]=C(C($*p)+C(X*y))+C(S*o);T=C(C(C(1)-R)-k);V=C(m-V);N=C(r+F);z[l+336>>2]=C(C(T*p)+C(V*y))+C(N*o);s=z[d>>2];k=z[d+4>>2];n=z[d+8>>2];R=z[d+48>>2];o=z[d+12>>2];p=z[d+16>>2];y=z[d+20>>2];O=z[d+52>>2];m=z[d+24>>2];r=z[d+28>>2];F=z[d+32>>2];W=z[d+56>>2];Z=C(C(C(C(D(C(C(C(U*s)+C(J*k))+C(L*n))))*R)+C(C(D(C(C(C(U*o)+C(J*p))+C(L*y))))*O))+C(C(D(C(C(C(U*m)+C(J*r))+C(L*F))))*W));_=C(C(C(C(D(C(C(C($*s)+C(X*k))+C(S*n))))*R)+C(C(D(C(C(C($*o)+C(X*p))+C(S*y))))*O))+C(C(D(C(C(C($*m)+C(X*r))+C(S*F))))*W));R=C(C(C(C(D(C(C(C(T*s)+C(V*k))+C(N*n))))*R)+C(C(D(C(C(C(T*o)+C(V*p))+C(N*y))))*O))+C(C(D(C(C(C(T*m)+C(V*r))+C(N*F))))*W));O=z[e>>2];W=z[e+4>>2];la=L;L=z[e+8>>2];U=C(C(C(C(U*O)+C(J*W))+C(la*L))*f);J=C(C(C(C($*O)+C(X*W))+C(S*L))*f);L=C(C(C(C(T*O)+C(V*W))+C(N*L))*f);O=C(G+G);S=C(A*O);N=C(q+q);T=C(M*N);$=C(S-T);V=C(N*A);W=C(O*M);X=C(V+W);S=C(S+T);ca=C(N*G);fa=C(A+A);ga=C(M*fa);M=C(ca-ga);T=C(V-W);V=C(ca+ga);q=C(C(1)-C(q*N));G=C(G*O);N=C(q-G);A=C(A*fa);O=C(q-A);W=C(C(C(1)-G)-A);q=z[d+44>>2];G=z[d+40>>2];A=z[d+36>>2];break a}xX(l+16|0,c,b+4|0);q=C(1);A=C(1);m=C(1);o=z[b+20>>2];p=C(o+o);k=z[b+24>>2];I=C(k+k);s=z[c>>2];y=C(s+s);n=z[c+8>>2];ha=C(y*n);r=z[c+4>>2];G=C(r+r);M=z[c+12>>2];ja=C(G*M);F=C(ha-ja);Fa=C(C(1)-C(s*y));na=C(r*G);$=C(Fa-na);O=C(o*p);da=C(k*I);s=C(C(C(1)-O)-da);X=z[b+4>>2];S=z[b+16>>2];Q=C(S+S);W=C(Q*k);T=z[b+28>>2];ca=C(p*T);H=C(W+ca);V=C(X*H);oa=C(Q*o);I=C(I*T);o=C(oa+I);qa=C(p*k);ra=C(Q*T);k=C(qa-ra);T=z[b+8>>2];N=C(k*T);p=C(W-ca);Ga=C(C(1)-C(S*Q));Q=C(Ga-O);S=z[b+12>>2];O=C(Q*S);W=C(C(C(s*V)+C(o*N))+C(p*O));ca=C(X*s);fa=C(o*T);ga=C(p*S);ka=C(C(C(s*ca)+C(o*fa))+C(p*ga));Ha=C(G*n);Ia=C(y*M);G=C(Ha+Ia);la=s;s=C(oa-I);X=C(X*s);I=C(Ga-da);T=C(I*T);da=p;p=C(qa+ra);S=C(p*S);da=C(C(C(la*X)+C(o*T))+C(da*S));o=C(C($*W)+C(C(F*ka)+C(G*da)));ha=C(ha+ja);ja=C(C(C(s*V)+C(I*N))+C(p*O));la=n;n=C(n+n);qa=C(la*n);na=C(C(C(1)-na)-qa);oa=C(C(C(s*ca)+C(I*fa))+C(p*ga));ra=C(y*r);n=C(n*M);y=C(ra-n);r=C(C(C(s*X)+C(I*T))+C(p*S));s=C(C(ha*ja)+C(C(na*oa)+C(y*r)));M=C(Ha-Ia);I=C(C(C(H*V)+C(k*N))+C(Q*O));V=C(ra+n);N=C(C(C(H*ca)+C(k*fa))+C(Q*ga));O=C(Fa-qa);k=C(C(C(H*X)+C(k*T))+C(Q*S));Q=C(C(M*I)+C(C(V*N)+C(O*k)));n=C(C(ha*I)+C(C(na*N)+C(y*k)));H=C(C(M*ja)+C(C(V*oa)+C(O*r)));X=C(C(s*Q)-C(n*H));p=C(C(ha*W)+C(C(na*ka)+C(y*da)));I=C(C($*I)+C(C(F*N)+C(G*k)));y=C(C($*ja)+C(C(F*oa)+C(G*r)));F=C(C(H*I)-C(Q*y));r=C(C(M*W)+C(C(V*ka)+C(O*da)));G=C(I*s);k=C(C(o*X)+C(C(p*F)+C(r*C(C(y*n)-G))));if(k!=C(0)){k=C(C(1)/k);m=C(C(C(p*H)+C(r*C(-s)))*k);J=C(C(C(r*y)-C(H*o))*k);Z=C(k*C(-C(C(p*y)-C(s*o))));L=C(k*C(-C(G+C(n*C(-y)))));U=C(k*C(-C(C(r*I)-C(o*Q))));_=C(X*k);R=C(k*C(-C(C(p*Q)-C(n*r))));q=C(F*k);A=C(C(C(p*I)-C(n*o))*k)}I=z[l+60>>2];H=z[l+56>>2];N=z[l+48>>2];$=z[l+44>>2];S=z[l+36>>2];O=z[l+32>>2];Q=z[l+52>>2];X=z[l+40>>2];M=z[l+28>>2];T=z[l+24>>2];V=z[l+20>>2];W=z[l+16>>2];k=z[c+24>>2];o=z[c+20>>2];n=z[c+16>>2];z[l+312>>2]=m;z[l+308>>2]=R;z[l+300>>2]=Z;z[l+296>>2]=A;z[l+288>>2]=J;o=C(-o);z[l+324>>2]=C(C(Z*o)-C(J*n))-C(m*k);z[l+284>>2]=U;z[l+320>>2]=C(C(A*o)-C(U*n))-C(R*k);z[l+280>>2]=q;z[l+292>>2]=L;z[l+304>>2]=_;z[l+316>>2]=C(C(L*o)-C(q*n))-C(_*k);r_(l+16|0,l+280|0,d);o=z[l+44>>2];p=z[l+32>>2];m=z[l+72>>2];y=z[l+48>>2];k=z[l+68>>2];r=z[l+36>>2];F=z[l+40>>2];U=z[l+16>>2];s=z[l+28>>2];_=z[l+20>>2];n=z[l+64>>2];Z=z[l+24>>2];A=z[d+36>>2];J=z[l+288>>2];G=z[d+40>>2];L=z[l+300>>2];q=z[d+44>>2];ca=z[l+312>>2];z[l+344>>2]=C(C(C(A*J)+C(G*L))+C(q*ca))+z[l+324>>2];fa=z[l+284>>2];ga=z[l+296>>2];ka=z[l+308>>2];z[l+340>>2]=C(C(C(A*fa)+C(G*ga))+C(q*ka))+z[l+320>>2];da=z[l+280>>2];ha=z[l+292>>2];ja=z[l+304>>2];z[l+336>>2]=C(C(C(A*da)+C(G*ha))+C(q*ja))+z[l+316>>2];Z=C(C(m*C(D(y)))+C(C(n*C(D(Z)))+C(k*C(D(r)))));_=C(C(m*C(D(o)))+C(C(n*C(D(_)))+C(k*C(D(p)))));R=C(C(m*C(D(F)))+C(C(n*C(D(U)))+C(k*C(D(s)))));m=C(z[e>>2]*f);k=C(z[e+4>>2]*f);n=C(z[e+8>>2]*f);U=C(C(C(J*m)+C(L*k))+C(ca*n));J=C(C(C(fa*m)+C(ga*k))+C(ka*n));L=C(C(C(da*m)+C(ha*k))+C(ja*n));F=z[d+32>>2];r=z[d+28>>2];y=z[d+20>>2];p=z[d+16>>2];m=z[d+24>>2];o=z[d+12>>2];n=z[d+8>>2];k=z[d+4>>2];s=z[d>>2];ba=0}z[l+360>>2]=C(Z+i)*C(1.0099999904632568);z[l+356>>2]=C(_+i)*C(1.0099999904632568);z[l+352>>2]=C(R+i)*C(1.0099999904632568);z[l+312>>2]=C(C(X*m)+C($*r))+C(N*F);z[l+308>>2]=C(C(X*o)+C($*p))+C(N*y);z[l+300>>2]=C(C(M*m)+C(O*r))+C(S*F);z[l+296>>2]=C(C(M*o)+C(O*p))+C(S*y);A=C(-A);z[l+324>>2]=C(C(C(Q*m)+C(H*r))+C(I*F))+C(C(C(m*A)-C(r*G))-C(F*q));z[l+320>>2]=C(C(C(Q*o)+C(H*p))+C(I*y))+C(C(C(o*A)-C(p*G))-C(y*q));z[l+304>>2]=C(C(X*s)+C($*k))+C(N*n);z[l+292>>2]=C(C(M*s)+C(O*k))+C(S*n);z[l+288>>2]=C(C(W*m)+C(V*r))+C(T*F);z[l+284>>2]=C(C(W*o)+C(V*p))+C(T*y);z[l+280>>2]=C(C(W*s)+C(V*k))+C(T*n);z[l+316>>2]=C(C(C(Q*s)+C(H*k))+C(I*n))+C(C(C(s*A)-C(k*G))-C(n*q));E=l+16|0;ia=n$(E,d);z[l+248>>2]=z[ia>>2];z[l+252>>2]=z[ia+4>>2];z[l+256>>2]=z[ia+8>>2];z[l+260>>2]=z[ia+12>>2];z[l+264>>2]=z[d+36>>2];z[l+268>>2]=z[d+40>>2];z[l+272>>2]=z[d+44>>2];A=z[e>>2];H=k;k=z[e+4>>2];la=n;n=z[e+8>>2];q=C(C(C(s*A)+C(H*k))+C(la*n));z[l+232>>2]=q;o=C(C(C(o*A)+C(p*k))+C(y*n));z[l+236>>2]=o;m=C(C(C(m*A)+C(r*k))+C(F*n));z[l+240>>2]=m;z[l+224>>2]=m*f;z[l+220>>2]=o*f;z[l+216>>2]=q*f;ia=C(C(z[b+4>>2]*z[b+8>>2])*z[b+12>>2])>2]=2;h=x[h>>1];m=C(K(C(C(U*U)+C(C(L*L)+C(J*J)))));m=m>C(9999999747378752e-21)?m:C(9999999747378752e-21);z[E+16>>2]=ba?C(1):C(m/f);t[E+12|0]=ia;u[E+10>>1]=0;u[E+8>>1]=h;ia=P|ma;t[E+176|0]=ia;z[E+60>>2]=i;v[E+56>>2]=e;h=l+232|0;v[E+52>>2]=h;v[E+48>>2]=d;z[E+24>>2]=f;v[E+20>>2]=l+280;v[E>>2]=143808;d=v[l+216>>2];e=v[l+220>>2];i=z[l+224>>2];v[E+156>>2]=0;z[E+152>>2]=i;v[E+144>>2]=d;v[E+148>>2]=e;z[E+32>>2]=f;z[E+28>>2]=f;f=z[h>>2];i=z[h+8>>2];k=z[h+4>>2];z[E+168>>2]=k!=C(0)?C(C(1)/k):C(0);z[E+172>>2]=i!=C(0)?C(C(1)/i):C(0);z[E+164>>2]=f!=C(0)?C(C(1)/f):C(0);f=C(C(1)/m);z[l+8>>2]=U*f;z[l+4>>2]=J*f;z[l>>2]=L*f;K$(l+336|0,l,m,ia,a,E,l+352|0);e=l+248|0;pa=xa-16|0;xa=pa;d=E;Ja=w[d+10|0];c:{if(!Ja){break c}k=z[d+136>>2];n=z[d+132>>2];A=z[d+120>>2];U=z[d+116>>2];o=z[d+128>>2];q=z[d+112>>2];v[g+8>>2]=v[d+160>>2];if(w[d+11|0]){d:{e:{if(!(w[d+9|0]&2)){b=v[d+56>>2];u[g+12>>1]=1026;break e}a=v[d+48>>2];A=z[d+60>>2];Qa=w[d+176|0];k=C(0);n=C(0);o=C(0);p=C(0);y=C(0);r=C(0);F=C(0);Z=C(0);_=C(0);R=C(0);j=xa-6128|0;xa=j;ta=v[b+36>>2];Ka=v[ta+56>>2];v[j+2012>>2]=0;v[j+2008>>2]=0;v[j+2e3>>2]=0;v[j+2004>>2]=0;zw(j+2e3|0,128);z[j+1936>>2]=z[a>>2];z[j+1940>>2]=z[a+4>>2];z[j+1944>>2]=z[a+8>>2];z[j+1948>>2]=z[a+12>>2];z[j+1952>>2]=z[a+16>>2];z[j+1956>>2]=z[a+20>>2];z[j+1960>>2]=z[a+24>>2];z[j+1964>>2]=z[a+28>>2];z[j+1968>>2]=z[a+32>>2];Q=z[a+36>>2];z[j+1972>>2]=Q;H=z[a+40>>2];z[j+1976>>2]=H;I=z[a+44>>2];z[j+1980>>2]=I;U=z[e+24>>2];h=v[e>>2];E=v[e+4>>2];P=v[e+8>>2];ia=v[e+12>>2];aa=v[e+16>>2];e=v[e+20>>2];f=z[a+48>>2];i=z[a+52>>2];q=f<=i?f:i;m=z[a+56>>2];q=m>=q?q:m;s=C(q*C(.15000000596046448));A=C(s+A);z[j+1920>>2]=A;z[j+1992>>2]=m+A;z[j+1988>>2]=i+A;z[j+1984>>2]=f+A;v[j+1916>>2]=0;z[j+1912>>2]=m;z[j+1908>>2]=i;t[j+1888|0]=0;v[j+1884>>2]=3;v[j+1856>>2]=0;v[j+1860>>2]=0;v[j+1864>>2]=0;v[j+1868>>2]=0;z[j+1904>>2]=f;f=C(q*C(.05000000074505806));z[j+1880>>2]=f;z[j+1876>>2]=f;z[j+1872>>2]=s;j2(y_(j+1560|0,a+48|0),j+1784|0);a=j+1528|0;v[a>>2]=0;v[a+4>>2]=0;v[j+1524>>2]=1065353216;a=j+1536|0;v[a>>2]=0;v[a+4>>2]=0;a=j+1544|0;v[a>>2]=1065353216;v[a+4>>2]=0;v[j+1508>>2]=0;v[j+1512>>2]=0;v[j+1504>>2]=1065353216;v[j+1516>>2]=0;v[j+1520>>2]=0;ma=c;La=b+4|0;xX(j+1456|0,c,La);v[j+1452>>2]=0;z[j+1448>>2]=U;v[j+1440>>2]=aa;v[j+1444>>2]=e;v[j+1432>>2]=P;v[j+1436>>2]=ia;v[j+1424>>2]=h;v[j+1428>>2]=E;ia=j+1360|0;a=268435455;A=C(0);U=C(0);f:{g:{while(1){h:{v[j+2004>>2]=0;c=v[b+36>>2];q_(j,j+1936|0,ma,La);v[j+1344>>2]=141620;v[j+1352>>2]=j+2e3;v[j+1348>>2]=2;Ba[v[(x[c+4>>1]<<2)+141640>>2]](c,j,j+1344|0,1,1);i:{j:{k:{h=v[j+2004>>2];if(h){v[j+1452>>2]=0;z[j+1448>>2]=I;z[j+1444>>2]=H;z[j+1440>>2]=Q;t[j+1388|0]=1;v[j+1344>>2]=141108;c=j+1504|0;v[j+1384>>2]=c;v[j+1380>>2]=c;v[j+1376>>2]=j+1424;v[j+1392>>2]=j+1856;c=ia;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=0;v[c+4>>2]=0;$=z[j+1980>>2];ja=z[j+1972>>2];X=z[j+1976>>2];S=z[j+1500>>2];T=z[j+1492>>2];V=z[j+1496>>2];N=z[j+1464>>2];O=z[j+1456>>2];W=z[j+1460>>2];ca=z[j+1476>>2];fa=z[j+1468>>2];ga=z[j+1472>>2];f=z[j+1944>>2];i=z[j+1936>>2];m=z[j+1940>>2];q=z[j+1956>>2];s=z[j+1948>>2];J=z[j+1952>>2];ka=z[j+1488>>2];L=z[j+1968>>2];da=z[j+1480>>2];G=z[j+1960>>2];ha=z[j+1484>>2];M=z[j+1964>>2];v[j+1340>>2]=0;v[j+1324>>2]=0;v[j+1308>>2]=0;v[j+1292>>2]=0;z[j+1320>>2]=C(C(G*da)+C(M*ha))+C(L*ka);z[j+1316>>2]=C(C(s*da)+C(J*ha))+C(q*ka);z[j+1312>>2]=C(C(i*da)+C(m*ha))+C(f*ka);z[j+1304>>2]=C(C(G*fa)+C(M*ga))+C(L*ca);z[j+1300>>2]=C(C(s*fa)+C(J*ga))+C(q*ca);z[j+1296>>2]=C(C(i*fa)+C(m*ga))+C(f*ca);z[j+1288>>2]=C(C(G*O)+C(M*W))+C(L*N);z[j+1284>>2]=C(C(s*O)+C(J*W))+C(q*N);z[j+1280>>2]=C(C(i*O)+C(m*W))+C(f*N);N=C(-ja);z[j+1336>>2]=C(C(C(G*N)-C(M*X))-C(L*$))+C(C(C(G*T)+C(M*V))+C(L*S));z[j+1332>>2]=C(C(C(s*N)-C(J*X))-C(q*$))+C(C(C(s*T)+C(J*V))+C(q*S));z[j+1328>>2]=C(C(C(i*N)-C(m*X))-C(f*$))+C(C(C(i*T)+C(m*V))+C(f*S));c=h+31|0;if(c>>>0<32){break j}Ra=c>>>5|0;i=C(34028234663852886e22);ua=0;c=h;Aa=0;while(1){Ca=ua<<5;e=h-Ca|0;Da=e>>>0<32?e:32;l:{if(!Da){v[j+6120>>2]=v[j+1416>>2];e=v[j+1412>>2];v[j+6112>>2]=v[j+1408>>2];v[j+6116>>2]=e;E=0;break l}va=c>>>0<32?c:32;wa=w[ta+64|0]&2;f=C(C(z[b+4>>2]*z[b+8>>2])*z[b+12>>2]);E=v[ta+24>>2];sa=v[ta+28>>2];aa=0;ya=v[j+2e3>>2];while(1){P=v[ya+(aa+Ca<<2)>>2];e=j+B(aa,40)|0;m:{if(wa){Y=sa+B(P,6)|0;ea=x[Y+4>>1];ba=x[Y+2>>1];Y=x[Y>>1];break m}Y=sa+B(P,12)|0;ea=v[Y+8>>2];ba=v[Y+4>>2];Y=v[Y>>2]}Y=B(Y,12)+E|0;z[e>>2]=z[Y>>2];z[e+4>>2]=z[Y+4>>2];z[e+8>>2]=z[Y+8>>2];za=f>2]=z[Y>>2];z[e+16>>2]=z[Y+4>>2];z[e+20>>2]=z[Y+8>>2];ba=E+B(za?ba:ea,12)|0;z[e+24>>2]=z[ba>>2];z[e+28>>2]=z[ba+4>>2];z[e+32>>2]=z[ba+8>>2];t[e+36|0]=Ka?w[P+Ka|0]:56;aa=aa+1|0;if((va|0)!=(aa|0)){continue}break}v[j+6120>>2]=v[j+1416>>2];e=v[j+1412>>2];v[j+6112>>2]=v[j+1408>>2];v[j+6116>>2]=e;E=0;ba=0;if(!Da){break l}while(1){v[j+2012>>2]=0;P=j+B(ba,40)|0;e=ba+Ca|0;E1(j+1784|0,j+1344|0,P,e,w[P+36|0],j+1920|0,Qa,j+1424|0,j+1280|0,j+2016|0,j+2012|0);ea=v[j+2012>>2];n:{if(!ea){break n}aa=0;f=z[j+2060>>2];o:{if((ea|0)==1){break o}aa=ea-1|0;sa=aa&3;E=0;P=1;p:{if(ea-2>>>0<3){aa=0;break p}za=aa&-4;aa=0;ea=0;while(1){m=z[(j+(P<<6)|0)+2060>>2];Y=m>2];f=Y?m:f;va=q>2];f=va?q:f;wa=m>2];f=wa?m:f;ya=q>2];ea=m>2];n=z[a+32>>2];A=z[a+24>>2];U=z[a+20>>2];o=z[a+40>>2];p=z[a+36>>2];a=e;i=f}ba=ba+1|0;if((Da|0)!=(ba|0)){continue}break}}v[j+1416>>2]=v[j+6120>>2];e=v[j+6116>>2];v[j+1408>>2]=v[j+6112>>2];v[j+1412>>2]=e;c=c-32|0;Aa=E|Aa;ua=ua+1|0;if((Ra|0)!=(ua|0)){continue}break}break k}P=0;if(!Pa){break f}break h}if(Aa&1){break i}}P=0;if(Pa){break h}break f}f=z[j+1432>>2];m=z[j+1424>>2];q=z[j+1428>>2];R=C(C(f*A)+C(C(m*k)+C(U*q)));s=z[j+1436>>2];J=C(C(s*s)+C(-.5));Z=C(C(f*R)+C(C(s*C(C(m*U)-C(k*q)))+C(A*J)));Z=C(z[j+1448>>2]+C(Z+Z));_=C(C(q*R)+C(C(s*C(C(f*k)-C(A*m)))+C(U*J)));_=C(z[j+1444>>2]+C(_+_));R=C(C(m*R)+C(C(s*C(C(q*A)-C(U*f)))+C(k*J)));R=C(z[j+1440>>2]+C(R+R));L=C(C(f*o)+C(C(m*n)+C(p*q)));G=C(C(f*L)+C(C(s*C(C(m*p)-C(n*q)))+C(o*J)));G=C(G+G);M=C(C(q*L)+C(C(s*C(C(f*n)-C(o*m)))+C(p*J)));M=C(M+M);f=C(C(m*L)+C(C(s*C(C(q*o)-C(p*f)))+C(n*J)));f=C(f+f);a=v[v[j+2e3>>2]+(a<<2)>>2];if(!(i<=C(0))){if(Ea){break h}z[g+36>>2]=G;z[g+32>>2]=M;z[g+28>>2]=f;z[g+24>>2]=Z;z[g+20>>2]=_;z[g+16>>2]=R;v[g+40>>2]=0;v[g+8>>2]=a;break g}m=C(i*G);I=C(I-m);z[j+1980>>2]=I;q=C(i*M);H=C(H-q);z[j+1976>>2]=H;f=C(i*f);Q=C(Q-f);z[j+1972>>2]=Q;y=C(y-m);r=C(r-q);F=C(F-f);Pa=1;Ea=Ea+1|0;if((Ea|0)!=4){continue}}break}z[g+24>>2]=Z;z[g+20>>2]=_;z[g+16>>2]=R;v[g+8>>2]=a;f=C(K(C(C(y*y)+C(C(F*F)+C(r*r)))));z[g+40>>2]=-f;i=C(C(1)/f);a=f>C(0);z[g+36>>2]=a?C(y*i):C(0);z[g+32>>2]=a?C(r*i):C(0);z[g+28>>2]=a?C(F*i):C(0)}P=1}a=v[j+2008>>2];q:{if((a|0)<0|!(a&2147483647)){break q}a=v[j+2e3>>2];if(!a){break q}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=j+6128|0;b=v[d+56>>2];u[g+12>>1]=1026;if(P){break d}}v[g+40>>2]=0;f=z[b>>2];i=z[b+4>>2];z[g+36>>2]=-z[b+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f;break c}if(z[g+40>>2]==C(0)){f=z[b>>2];i=z[b+4>>2];z[g+36>>2]=-z[b+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f}u[g+12>>1]=1027;break c}f=z[d+24>>2];u[g+12>>1]=1024;z[g+40>>2]=f;E=g+12|0;a=x[d+8>>1];if(a&256){b=v[d+48>>2];u[pa+8>>1]=a;d=d- -64|0;c=xa-32|0;xa=c;r:{if(!(w[pa+8|0]&3)){break r}N2(c+16|0,c,b+48|0,h,d,f);a=x[pa+8>>1];if(a&2){f=z[c+8>>2];i=z[c>>2];m=z[c+4>>2];k=C(K(C(C(f*f)+C(C(i*i)+C(m*m)))));if(k>C(0)){k=C(C(1)/k);f=C(f*k);z[c+8>>2]=f;m=C(m*k);i=C(i*k)}k=z[h+8>>2];n=z[h>>2];o=z[h+4>>2];if(C(C(f*k)+C(C(i*n)+C(m*o)))>C(0)){m=C(-m);z[c+4>>2]=m;i=C(-i);f=C(-f)}s:{if(ma|!P){break s}p=z[d>>2];y=C(z[d+12>>2]-p);r=z[d+4>>2];F=C(z[d+28>>2]-r);p=C(z[d+24>>2]-p);r=C(z[d+16>>2]-r);H=C(C(C(y*F)-C(p*r))*k);s=r;k=z[d+8>>2];r=C(z[d+32>>2]-k);k=C(z[d+20>>2]-k);if(!(C(H+C(C(C(C(s*r)-C(F*k))*n)+C(o*C(C(k*p)-C(r*y)))))>C(0))){break s}i=C(-i);z[c>>2]=i;f=C(-f);m=C(-m)}k=z[b+28>>2];n=z[b+16>>2];o=z[b+32>>2];p=z[b+20>>2];y=z[b+4>>2];r=z[b+8>>2];z[g+28>>2]=C(C(i*z[b>>2])+C(m*z[b+12>>2]))+C(f*z[b+24>>2]);z[g+36>>2]=C(C(i*r)+C(m*p))+C(f*o);z[g+32>>2]=C(C(i*y)+C(m*n))+C(f*k);u[E>>1]=x[E>>1]|2;a=x[pa+8>>1]}if(!(a&1)){break r}k=z[b+40>>2];n=z[b+28>>2];o=z[b+16>>2];p=z[b+44>>2];y=z[b+32>>2];r=z[b+20>>2];F=z[b+4>>2];A=z[b+8>>2];f=z[c+16>>2];i=z[c+20>>2];m=z[c+24>>2];z[g+16>>2]=C(C(C(f*z[b>>2])+C(i*z[b+12>>2]))+C(m*z[b+24>>2]))+z[b+36>>2];z[g+24>>2]=p+C(C(C(f*A)+C(i*r))+C(m*y));z[g+20>>2]=k+C(C(C(f*F)+C(i*o))+C(m*n));u[E>>1]=x[E>>1]|1}xa=c+32|0;break c}s=z[e+24>>2];Z=z[e+20>>2];p=z[e+12>>2];y=z[e+8>>2];r=z[e+4>>2];F=z[e>>2];_=z[e+16>>2];u[E>>1]=1027;f=C(-k);i=C(-n);m=C(-o);t:{if(ma|!P){break t}R=z[d+64>>2];Q=C(z[d+76>>2]-R);H=z[d+68>>2];I=C(z[d+92>>2]-H);R=C(z[d+88>>2]-R);H=C(z[d+80>>2]-H);la=C(C(C(Q*I)-C(R*H))*z[h+8>>2]);L=H;H=z[d+72>>2];J=C(z[d+96>>2]-H);H=C(z[d+84>>2]-H);if(!(C(la+C(C(C(C(L*J)-C(I*H))*z[h>>2])+C(z[h+4>>2]*C(C(H*R)-C(J*Q)))))>C(0))){break t}m=o;i=n;f=k}k=C(C(p*p)+C(-.5));n=C(C(y*f)+C(C(F*m)+C(r*i)));o=C(C(C(p*C(C(F*i)-C(m*r)))+C(k*f))+C(y*n));z[g+36>>2]=o+o;o=C(C(r*n)+C(C(k*i)+C(p*C(C(y*m)-C(f*F)))));z[g+32>>2]=o+o;f=C(C(F*n)+C(C(k*m)+C(p*C(C(r*f)-C(i*y)))));z[g+28>>2]=f+f;f=C(C(y*A)+C(C(F*q)+C(U*r)));i=C(C(y*f)+C(C(p*C(C(F*U)-C(q*r)))+C(A*k)));z[g+24>>2]=s+C(i+i);i=C(C(r*f)+C(C(p*C(C(y*q)-C(A*F)))+C(U*k)));z[g+20>>2]=Z+C(i+i);f=C(C(F*f)+C(C(p*C(C(r*A)-C(U*y)))+C(q*k)));z[g+16>>2]=_+C(f+f)}xa=pa+16|0;xa=l+368|0;return(Ja|0)!=0|0}function er(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=0,l=0,m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),A=0,B=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=0,fa=C(0),ga=C(0),ha=0,ia=0,ja=0,ka=C(0),la=C(0),ma=0;if(v[a+4656>>2]){a9(v[37696],8,11709,1859,g,0);return}k=xa-176|0;xa=k;v[a+5884>>2]=0;v[a+5872>>2]=0;v[a+5860>>2]=0;v[a+5848>>2]=0;v[a+5836>>2]=0;a:{if(C(Ba[v[v[a>>2]+280>>2]](a,0))==C(0)){break a}v[k+96>>2]=0;v[k+100>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+112>>2]=0;v[k+116>>2]=0;v[k+104>>2]=0;v[k+108>>2]=1065353216;v[k+120>>2]=0;v[k+124>>2]=0;v[k+132>>2]=0;v[k+136>>2]=0;v[k+128>>2]=1065353216;v[k+140>>2]=0;v[k+144>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+148>>2]=1065353216;v[k+160>>2]=0;v[k+164>>2]=0;v[k+168>>2]=1065353216;v[k+72>>2]=0;v[k+76>>2]=0;v[k+172>>2]=a+5828;j=C(Ba[v[v[a>>2]+280>>2]](a,1));if(j!=C(0)){v[k+52>>2]=-16776961;v[k+44>>2]=-65536;v[k+48>>2]=-16711936;z[k+40>>2]=j;z[k+36>>2]=j;z[k+32>>2]=j;aV(k+72|0,k+32|0)}O=v[a+5980>>2];if(O){while(1){U=v[v[a+5948>>2]+(Y<<2)>>2];if(v[U+100>>2]){O=0;while(1){p=C(0);s=C(0);r=C(0);aa=C(0);l=xa-32|0;xa=l;A=v[v[U+96>>2]+(O<<2)>>2];i=k+72|0;vj(A,i,a);g=v[A+52>>2];b:{if(!(t[(g&1?v[A+56>>2]:(A+v[((g>>>22&60)+89188|0)+12>>2]|0)+56|0)|0]&1)){break b}g=Ba[v[v[A>>2]+28>>2]](A)|0;m=C(Ba[v[v[g>>2]+280>>2]](g,0));g=Ba[v[v[A>>2]+28>>2]](A)|0;if(C(m*C(Ba[v[v[g>>2]+280>>2]](g,3)))!=C(0)){R=v[A+316>>2];if(R&2){g=v[A+56>>2]+96|0}else{R=v[A+316>>2];o=A- -64|0;g=v[o+176>>2];c:{if(!(!g|w[g+31|0]!=1)){g=g+32|0;break c}g=o+128|0}}j=z[g+8>>2];B=j==C(0)?C(0):C(C(1)/j);j=z[g+4>>2];q=j==C(0)?C(0):C(C(1)/j);j=z[g>>2];n=j==C(0)?C(0):C(C(1)/j);if(R&1){j=z[v[A+56>>2]+92>>2]}else{o=A- -64|0;g=v[o+176>>2];d:{if(!(!g|w[g+31|0]!=1)){j=z[g+44>>2];break d}j=z[o+140>>2]}}v[i+4>>2]=16777215;g=YU(i,A+256|0);j=C(C(6)/C(C(1)/j));n=C(n*j);q=C(q*j);j=C(B*j);B=C(C(K(C(D(C(C(n+q)-j)))))*C(.5));z[l+20>>2]=B;E=C(C(K(C(D(C(j+C(n-q))))))*C(.5));z[l+16>>2]=E;t[l+24|0]=1;z[l+8>>2]=-B;z[l+4>>2]=-E;j=C(C(K(C(D(C(j+C(q-n))))))*C(.5));z[l+12>>2]=j;z[l>>2]=-j;_U(g,l)}g=Ba[v[v[A>>2]+28>>2]](A)|0;j=C(m*C(Ba[v[v[g>>2]+280>>2]](g,20)));g=Ba[v[v[A>>2]+28>>2]](A)|0;m=C(m*C(Ba[v[v[g>>2]+280>>2]](g,21)));if(j==C(0)&m==C(0)){break b}v[l+12>>2]=i;z[l+8>>2]=m;z[l+4>>2]=j;v[l>>2]=120416;i=xa-128|0;xa=i;g=v[A+328>>2];e:{if(!g){break e}o=i- -64|0;Ba[v[v[A>>2]+76>>2]](o,A);R=i+32|0;_=v[A+324>>2];Ba[v[v[_>>2]+44>>2]](R,_);m=z[i+72>>2];j=z[i+56>>2];B=C(j+j);n=z[i+64>>2];j=z[i+48>>2];E=C(j+j);j=z[i+52>>2];M=C(j+j);q=z[i+68>>2];I=C(C(m*B)+C(C(n*E)+C(M*q)));j=z[i+76>>2];N=C(C(j*j)+C(-.5));z[i+120>>2]=z[i+88>>2]+C(C(m*I)+C(C(B*N)+C(j*C(C(n*M)-C(E*q)))));z[i+116>>2]=z[i+84>>2]+C(C(q*I)+C(C(M*N)+C(j*C(C(m*E)-C(B*n)))));J=z[i+44>>2];P=z[i+32>>2];L=z[i+36>>2];Q=z[i+40>>2];z[i+108>>2]=C(C(C(j*J)-C(n*P))-C(q*L))-C(m*Q);z[i+104>>2]=C(C(n*L)+C(C(j*Q)+C(m*J)))-C(P*q);z[i+100>>2]=C(C(m*P)+C(C(j*L)+C(q*J)))-C(Q*n);z[i+96>>2]=C(C(q*Q)+C(C(j*P)+C(n*J)))-C(L*m);z[i+112>>2]=z[i+80>>2]+C(C(n*I)+C(C(E*N)+C(j*C(C(q*B)-C(M*m)))));Ba[v[v[g>>2]+76>>2]](R,g);g=v[A+324>>2];Ba[v[v[g>>2]+32>>2]](i,g);m=z[i+40>>2];j=z[i+24>>2];B=C(j+j);n=z[i+32>>2];j=z[i+16>>2];E=C(j+j);j=z[i+20>>2];M=C(j+j);q=z[i+36>>2];I=C(C(m*B)+C(C(n*E)+C(M*q)));j=z[i+44>>2];N=C(C(j*j)+C(-.5));z[i+88>>2]=z[i+56>>2]+C(C(m*I)+C(C(B*N)+C(j*C(C(n*M)-C(E*q)))));z[i+84>>2]=z[i+52>>2]+C(C(q*I)+C(C(M*N)+C(j*C(C(m*E)-C(B*n)))));J=z[i+12>>2];P=z[i>>2];L=z[i+4>>2];Q=z[i+8>>2];z[i+76>>2]=C(C(C(j*J)-C(n*P))-C(q*L))-C(m*Q);z[i+72>>2]=C(C(n*L)+C(C(j*Q)+C(m*J)))-C(P*q);z[i+68>>2]=C(C(m*P)+C(C(j*L)+C(q*J)))-C(Q*n);z[i+64>>2]=C(C(q*Q)+C(C(j*P)+C(n*J)))-C(L*m);z[i+80>>2]=z[i+48>>2]+C(C(n*I)+C(C(E*N)+C(j*C(C(q*B)-C(M*m)))));Ba[v[v[l>>2]+8>>2]](l,i+96|0,o);g=v[A+324>>2];o=Ba[v[v[g>>2]+48>>2]](g)|0;if(x[(Ba[v[v[A>>2]+248>>2]](A)|0)+4>>1]==11){g=v[i+88>>2];v[i+52>>2]=v[i+84>>2];v[i+56>>2]=g;m=z[i+64>>2];z[i+32>>2]=m;j=z[i+68>>2];z[i+36>>2]=j;n=z[i+72>>2];z[i+40>>2]=n;p=z[i+76>>2];z[i+44>>2]=p;z[i+48>>2]=z[i+80>>2];B=z[i+108>>2];E=z[i+104>>2];M=z[i+96>>2];I=z[i+100>>2];if(C(C(p*B)+C(C(n*E)+C(C(m*M)+C(j*I))))>2]=p;n=C(-n);z[i+72>>2]=n;j=C(-j);z[i+68>>2]=j;m=C(-m);z[i+64>>2]=m}q=C(C(E*n)+C(C(I*j)+C(C(B*p)+C(M*m))));J=C(C(m*I)+C(C(C(B*n)-C(p*E))-C(M*j)));r=C(C(n*M)+C(C(C(B*j)-C(p*I))-C(E*m)));p=C(C(j*E)+C(C(C(B*m)-C(p*M))-C(I*n)));f:{if(p==C(0)){m=C(1);j=C(0);break f}j=C(C(1)/C(K(C(C(q*q)+C(C(C(p*p)+C(0))+C(0))))));m=C(q*j);s=C(p*j);j=C(j*C(0))}B=C(C(q*m)+C(p*s));E=C(r*j);M=C(J*m);n=C(q*C(-j));q=C(r*m);m=m==C(-1)?s>2];g:{if(A&262144){g=v[o+8>>2];R=g+152|0;g=g+148|0;break g}R=o+76|0;g=o+72|0}E=C(M-p);s=C(s*r);q=C(n-q);j=C(j+B);n=z[R>>2];B=z[g>>2];h:{if(A&131072){R=v[o+8>>2];g=R+144|0;_=R+140|0;break h}g=o+88|0;R=v[o+8>>2];_=o+80|0}s=C(s+E);p=C(p+q);q=z[(A&1024?R+108|0:o+332|0)>>2];E=z[g>>2];M=z[_>>2];g=i+32|0;ia=l,ja=g,ka=B,la=n,ma=V9(C(n-z[(A&16384?R+124|0:o+348|0)>>2]))>2]+16>>2],Ba[ha](ia|0,ja|0,C(ka),C(la),ma|0);n=V9(C(M*C(.25)));B=V9(C(E*C(.25)));i:{if(j==C(-1)){j=p>2]+20>>2]](l,g,n,B,!(C(C(p*p)+C(j*j))<=C(1)));break e}q=z[i+72>>2];B=q;E=z[i+68>>2];M=E;P=z[i+108>>2];L=z[i+76>>2];n=L;I=z[i+104>>2];Q=z[i+96>>2];N=z[i+64>>2];m=N;J=z[i+100>>2];if(C(C(P*n)+C(C(I*q)+C(C(Q*m)+C(J*E))))>2]=n;B=C(-q);z[i+72>>2]=B;M=C(-E);z[i+68>>2]=M;m=C(-N);z[i+64>>2]=m}j=C(C(B*I)+C(C(M*J)+C(C(n*P)+C(Q*m))));s=C(1);$=z[i+84>>2];V=z[i+80>>2];da=z[i+116>>2];fa=z[i+112>>2];H=C(C(J*B)+C(C(C(n*Q)-C(P*m))-C(M*I)));if(H!=C(0)){r=C(C(1)/C(K(C(C(j*j)+C(C(C(H*H)+C(0))+C(0))))));s=C(j*r);p=C(H*r);r=C(r*C(0))}S=C(C(Q*M)+C(C(C(n*I)-C(P*B))-C(m*J)));Z=C(r*S);T=C(C(I*m)+C(C(C(n*J)-C(P*M))-C(B*Q)));W=C(T*r);X=C(Z+C(W+C(C(j*s)+C(H*p))));ba=C(Z+C(C(C(H*s)-C(j*p))-W));j=C(j*C(-r));H=C(r*H);ca=C(C(p*T)+C(C(j+C(S*s))-H));Z=z[i+88>>2];ga=z[i+120>>2];H=C(H+C(C(j+C(T*s))-C(S*p)));j:{if(H==C(0)){S=C(1);T=C(0);j=C(0);break j}j=C(C(1)/C(K(C(C(X*X)+C(C(H*H)+C(0))))));S=C(X*j);T=C(H*j);j=C(j*C(0))}W=C(C(j*H)+C(C(C(ca*S)-C(X*j))-C(ba*T)));if(W==C(0)){j=C(2)}else{j=C(C(ca*j)+C(C(H*T)+C(C(X*S)+C(ba*j))));H=C(C(1)/C(K(C(C(j*j)+C(C(W*W)+C(0))))));aa=C(W*H);j=C(C(j*H)+C(1))}if(w[o+274|0]){r=C(r*r);r=C(K(C(C(s*s)+C(r+C(r+C(p*p))))));if(r!=C(0)){r=C(C(1)/r);s=C(s*r);p=C(p*r)}r=z[o+72>>2];H=z[o+76>>2];z[i+56>>2]=Z;z[i+52>>2]=$;z[i+48>>2]=V;z[i+44>>2]=L;z[i+40>>2]=q;z[i+36>>2]=E;z[i+32>>2]=N;s=z9(C(F(C(G(s,C(-1))),C(1))));s=C(s+s);p=p>2]+16>>2]](l,i+32|0,r,H,r>C(p+C(-.009999999776482582))|H>2];s=z[o+84>>2];z[i+56>>2]=Z;z[i+52>>2]=$;z[i+48>>2]=V;r=C(E*C(0));H=C(q*C(.7071067690849304));z[i+44>>2]=C(C(C(L*C(.7071067690849304))+C(N*C(0)))+r)+H;z[i+40>>2]=r+C(C(N*C(-0))+C(C(L*C(-.7071067690849304))+H));r=C(N*C(.7071067690849304));H=C(L*C(-0));z[i+36>>2]=r+C(C(q*C(-0))+C(H+C(E*C(.7071067690849304))));z[i+32>>2]=C(q*C(0))+C(C(E*C(-.7071067690849304))+C(H+r));r=C(B9(T,C(S+C(1)))*C(4));Ba[v[v[l>>2]+16>>2]](l,i+32|0,C(-s),C(-p),p>C(r+C(-.009999999776482582))|s>2];s=z[o+92>>2];z[i+56>>2]=Z;z[i+52>>2]=$;z[i+48>>2]=V;r=C(L*C(.7071067690849304));H=C(N*C(-0));X=C(E*C(.7071067690849304));S=C(q*C(0));z[i+44>>2]=C(C(r+H)-X)-S;N=C(N*C(.7071067690849304));L=C(L*C(0));z[i+40>>2]=C(E*C(-0))+C(N+C(L+C(q*C(.7071067690849304))));z[i+36>>2]=H+C(S+C(r+X));z[i+32>>2]=C(q*C(-.7071067690849304))+C(C(E*C(0))+C(L+N));j=C(B9(aa,j)*C(4));Ba[v[v[l>>2]+16>>2]](l,i+32|0,C(-s),C(-p),p>C(j+C(-.009999999776482582))|s>2];T=z[i+80>>2];W=z[i+84>>2];aa=z[i+88>>2];J=z[o+96>>2];ba=C($-X);z[i+40>>2]=aa+C(J*ba);ca=C(Z+V);z[i+36>>2]=W+C(J*ca);da=C(C(C(1)-H)-S);z[i+32>>2]=T+C(J*da);z[i+8>>2]=aa+C(j*ba);z[i+4>>2]=W+C(j*ca);z[i>>2]=T+C(j*da);T=j;j=C(C(C(s*p)+C(n*C(C(B*q)-C(M*E))))-C(m*r));Ba[v[v[l>>2]+28>>2]](l,i+32|0,i,j>2];Q=z[i+80>>2];N=z[i+84>>2];T=z[i+88>>2];I=z[o+104>>2];W=C(P+J);z[i+40>>2]=T+C(I*W);S=C(L-S);z[i+36>>2]=N+C(I*S);V=C(Z-V);z[i+32>>2]=Q+C(I*V);z[i+8>>2]=T+C(j*W);z[i+4>>2]=N+C(j*S);z[i>>2]=Q+C(j*V);N=j;j=C(C(C(q*p)+C(n*C(C(m*E)-C(B*s))))-C(M*r));Ba[v[v[l>>2]+28>>2]](l,i+32|0,i,j>2];Q=z[i+80>>2];N=z[i+84>>2];V=z[i+88>>2];I=z[o+112>>2];L=C(L-H);z[i+40>>2]=V+C(I*L);J=C(P-J);z[i+36>>2]=N+C(I*J);P=C($+X);z[i+32>>2]=Q+C(I*P);z[i+8>>2]=V+C(j*L);z[i+4>>2]=N+C(j*J);z[i>>2]=Q+C(j*P);L=j;j=C(C(C(E*p)+C(n*C(C(M*s)-C(m*q))))-C(B*r));Ba[v[v[l>>2]+28>>2]](l,i+32|0,i,j>>0>2]){continue}break}O=v[a+5980>>2]}Y=Y+1|0;if(Y>>>0>>0){continue}break}}U=v[a+5936>>2];if(U){_=v[a+5932>>2];O=0;while(1){i=v[_+(O<<2)>>2];k:{if((Ba[v[v[i>>2]+24>>2]](i)|0)==1){o=xa-32|0;xa=o;A=k+72|0;vj(i,A,a);g=v[i+52>>2];l:{if(!(t[(g&1?v[i+56>>2]:(i+v[((g>>>22&60)+89188|0)+12>>2]|0)+56|0)|0]&1)){break l}if(C(C(Ba[v[v[a>>2]+280>>2]](a,0))*C(Ba[v[v[a>>2]+280>>2]](a,3)))==C(0)){break l}R=16711680;if(!v[i+312>>2]){j=C(C(F(C(z[i+308>>2]/z[a+5148>>2]),C(1)))*C(255));m:{if(j=C(0)){g=~~j>>>0;break m}g=0}R=g<<8|g|g<<16}Y=v[i+316>>2];if(Y&2){l=v[i+56>>2]+96|0}else{Y=v[i+316>>2];l=i- -64|0;g=v[l+176>>2];n:{if(!(!g|w[g+31|0]!=1)){l=g+32|0;break n}l=l+128|0}}j=z[l+8>>2];n=j==C(0)?C(0):C(C(1)/j);j=z[l+4>>2];p=j==C(0)?C(0):C(C(1)/j);j=z[l>>2];m=j==C(0)?C(0):C(C(1)/j);if(Y&1){j=z[v[i+56>>2]+92>>2]}else{l=i- -64|0;g=v[l+176>>2];o:{if(!(!g|w[g+31|0]!=1)){j=z[g+44>>2];break o}j=z[l+140>>2]}}v[A+4>>2]=R;g=YU(A,i+256|0);j=C(C(6)/C(C(1)/j));m=C(m*j);p=C(p*j);j=C(n*j);n=C(C(K(C(D(C(C(m+p)-j)))))*C(.5));z[o+20>>2]=n;s=C(C(K(C(D(C(j+C(m-p))))))*C(.5));z[o+16>>2]=s;t[o+24|0]=1;z[o+8>>2]=-n;z[o+4>>2]=-s;j=C(C(K(C(D(C(j+C(p-m))))))*C(.5));z[o+12>>2]=j;z[o>>2]=-j;_U(g,o)}xa=o+32|0;break k}g=xa+-64|0;xa=g;l=k+72|0;nu(i+20|0,l,a,i);o=v[i+52>>2];p:{if(!(t[(o&1?v[i+56>>2]:(i+v[((o>>>22&60)+89188|0)+12>>2]|0)+56|0)|0]&1)){break p}q:{r:{s:{if(!(!(w[a+5580|0]&32)|!w[a+5248|0])){m=z[a+5152>>2];break s}m=z[v[a+1008>>2]+1032>>2];if(!(w[a+5580|0]&32)){break r}}if(!w[a+5258|0]){break r}j=z[a+5192>>2];break q}j=z[v[a+1008>>2]+1072>>2]}j=C(m*j);if(j==C(0)){break p}o=g+32|0;Ba[v[v[i>>2]+76>>2]](o,i);l=YU(l,o);v[g+28>>2]=-16776961;v[g+20>>2]=-65536;v[g+24>>2]=-16711936;z[g+16>>2]=j;z[g+12>>2]=j;z[g+8>>2]=j;aV(l,g+8|0)}xa=g- -64|0}O=O+1|0;if((U|0)!=(O|0)){continue}break}}j=C(Ba[v[v[a>>2]+280>>2]](a,17));m=C(Ba[v[v[a>>2]+280>>2]](a,18));t:{if(j==C(0)){break t}g=v[a+5584>>2];if(!g){break t}Ba[v[v[g>>2]+60>>2]](g,k+72|0,-16776961)}u:{if(m==C(0)){break u}g=v[a+5620>>2];if(!g){break u}Ba[v[v[g>>2]+60>>2]](g,k+72|0,-65536)}v:{if(C(Ba[v[v[a>>2]+280>>2]](a,23))==C(0)){break v}O=0;v[k+56>>2]=0;v[k+48>>2]=0;v[k+52>>2]=0;v[k+40>>2]=0;v[k+44>>2]=1065353216;v[k+32>>2]=0;v[k+36>>2]=0;YU(k+72|0,k+32|0);g=v[v[a+1012>>2]+272>>2];g=Ba[v[v[g>>2]+12>>2]](g)|0;if(!g){break v}while(1){l=v[v[a+1012>>2]+272>>2];Ba[v[v[l>>2]+16>>2]](l,k+32|0,1,O)|0;l=k+72|0;v[l+4>>2]=w[k+68|0]?-256:-16777216;i=v[k+36>>2];v[k>>2]=v[k+32>>2];v[k+4>>2]=i;i=v[k+44>>2];v[k+8>>2]=v[k+40>>2];v[k+12>>2]=i;t[k+24|0]=1;i=v[k+52>>2];v[k+16>>2]=v[k+48>>2];v[k+20>>2]=i;_U(l,k);O=O+1|0;if((g|0)!=(O|0)){continue}break}}if(C(Ba[v[v[a>>2]+280>>2]](a,22))==C(0)){break a}g=w[a+5580|0]&64?a+5272|0:v[a+1008>>2]+1128|0;if(z[g>>2]>z[g+12>>2]){break a}l=k+72|0;v[l+4>>2]=-256;z[k+32>>2]=z[g>>2];z[k+36>>2]=z[g+4>>2];z[k+40>>2]=z[g+8>>2];z[k+44>>2]=z[g+12>>2];z[k+48>>2]=z[g+16>>2];z[k+52>>2]=z[g+20>>2];t[k+56|0]=1;_U(l,k+32|0)}xa=k+176|0;if(v[a+5928>>2]){l=v[a+5896>>2];g=0;while(1){yg(v[l+(g<<2)>>2]);g=g+1|0;if(g>>>0>2]){continue}break}}l=xa-16|0;xa=l;g=v[a+1008>>2];v[g+20>>2]=e;v[g+16>>2]=d;k=v[g+8>>2];i=k-1|0;v[g+8>>2]=i;o=v[g+4>>2];d=d+e|0;v[l+12>>2]=d;w:{if(i>>>0>=(v[g+12>>2]&2147483647)>>>0){Us(g+4|0,l+12|0);break w}v[o+(i<<2)>>2]=d;v[g+8>>2]=k}xa=l+16|0;z[a+6072>>2]=b;if((h|0)==1){z[a+1112>>2]=b;z[a+1116>>2]=b>C(0)?C(C(1)/b):C(0)}t[a+6320|0]=f;R=v[(Ba[v[v[a>>2]+28>>2]](a)|0)+40>>2];A=xa-16|0;xa=A;e=a+16|0;o=e+4768|0;if(v[e+4772>>2]){while(1){l=v[o>>2]+(ea<<3)|0;g=x[l>>1];d=v[R+(g<<2)>>2];x:{y:{switch(v[l+4>>2]){case 0:if(!d){break x}l=0;O=0;g=v[e+20>>2];Y=x[d+52>>1];i=Y+1|0;if(g>>>0>>0){i=i+31&-32;v[e+20>>2]=i;k=v[37696];i=Ba[v[v[k+12>>2]+8>>2]](k+12|0,i<<5|19,24422,17657,100)|0;if(i){l=i+19&-16;v[l-4>>2]=l-i}if(g){while(1){k=O<<5;i=k+l|0;k=k+v[e+16>>2]|0;U=v[k+4>>2];v[i>>2]=v[k>>2];v[i+4>>2]=U;v[i+8>>2]=v[k+8>>2];u[i+12>>1]=x[k+12>>1];u[i+14>>1]=x[k+14>>1];U=v[k+20>>2];v[i+16>>2]=v[k+16>>2];v[i+20>>2]=U;O=O+1|0;if((O|0)!=(g|0)){continue}break}}k=v[e+20>>2];z:{if(k>>>0<=g>>>0){break z}O=k+(g^-1)|0;U=k-g&7;if(U){i=0;while(1){u[((g<<5)+l|0)+20>>1]=65535;g=g+1|0;i=i+1|0;if((U|0)!=(i|0)){continue}break}}if(O>>>0<7){break z}while(1){i=(g<<5)+l|0;u[i+20>>1]=65535;u[i+52>>1]=65535;u[i+84>>1]=65535;u[i+116>>1]=65535;u[i+148>>1]=65535;u[i+180>>1]=65535;u[i+212>>1]=65535;u[i+244>>1]=65535;g=g+8|0;if((k|0)!=(g|0)){continue}break}}g=v[e+16>>2];if(g){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,g-v[g-4>>2]|0)}v[e+16>>2]=l}l=v[d+36>>2];g=v[e+16>>2]+(Y<<5)|0;v[g>>2]=v[d+32>>2];v[g+4>>2]=l;v[g+8>>2]=v[d+40>>2];u[g+12>>1]=x[d+44>>1];u[g+14>>1]=x[d+46>>1];l=v[d+52>>2];v[g+16>>2]=v[d+48>>2];v[g+20>>2]=l;g=v[v[e+992>>2]+1024>>2];Ba[v[v[g>>2]+52>>2]](g,d+32|0);break x;case 1:if(!d){break x}l=v[d+36>>2];g=v[e+16>>2]+(x[d+52>>1]<<5)|0;v[g>>2]=v[d+32>>2];v[g+4>>2]=l;v[g+8>>2]=v[d+40>>2];u[g+12>>1]=x[d+44>>1];u[g+14>>1]=x[d+46>>1];l=v[d+52>>2];v[g+16>>2]=v[d+48>>2];v[g+20>>2]=l;g=v[v[e+992>>2]+1024>>2];Ba[v[v[g>>2]+56>>2]](g,d+32|0);break x;case 2:break y;default:break x}}if(g>>>0>=y[e+20>>2]){break x}d=v[e+16>>2]+(g<<5)|0;if((g|0)!=x[d+20>>1]){break x}g=v[v[e+992>>2]+1024>>2];Ba[v[v[g>>2]+60>>2]](g,d);u[d+20>>1]=65535}ea=ea+1|0;if(ea>>>0>2]){continue}break}}d=v[o+4>>2];if((d|0)<0){e=d<<3;d=v[o>>2];e=e+d|0;while(1){g=v[A+12>>2];v[e>>2]=v[A+8>>2];v[e+4>>2]=g;e=e+8|0;if(d>>>0>e>>>0){continue}break}}v[o+4>>2]=0;xa=A+16|0;t[a+6353|0]=1;t[a+4801|0]=1;v[a+4656>>2]=h;if(f){d=v[a+6092>>2];Ba[v[v[d>>2]+8>>2]](d);d=v[a+6092>>2];Ba[v[v[d>>2]+12>>2]](d)}if((h|0)==1){v[a+6160>>2]=1;v[a+6156>>2]=c;v[a+6152>>2]=v[a+6092>>2];if(c){Ba[v[v[c>>2]+16>>2]](c)}d=a+6260|0;c=a+6136|0;v[d>>2]=c;v[a+6264>>2]=1;Ba[v[v[a+6136>>2]+16>>2]](c);e=a+6256|0;v[e>>2]=v[v[d>>2]+16>>2];v[a+6128>>2]=1;v[a+6124>>2]=0;v[a+6120>>2]=v[a+6092>>2];d=v[a+6152>>2];Ba[v[v[d>>2]+72>>2]](d,c);c=v[e>>2];Ba[v[v[c>>2]+72>>2]](c,a+6240|0);return}v[a+6128>>2]=1;v[a+6124>>2]=c;d=v[a+6092>>2];v[a+6120>>2]=d;if(c){Ba[v[v[c>>2]+16>>2]](c);d=v[a+6092>>2]}c=a+6104|0;v[a+6220>>2]=c;v[a+6224>>2]=1;e=a+6216|0;v[e>>2]=d;Ba[v[v[a+6104>>2]+16>>2]](c);d=v[a+6120>>2];Ba[v[v[d>>2]+72>>2]](d,c);c=v[e>>2];Ba[v[v[c>>2]+72>>2]](c,a+6200|0)}function C5(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=0,W=C(0);c=xa-288|0;xa=c;v[c+140>>2]=a;v[c+136>>2]=a;a=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=a;a=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=a;D5(c+224|0,c+192|0,e,f,g);m=z[f+20>>2];r=z[f+16>>2];k=z[c+212>>2];l=z[c+208>>2];n=z[c+216>>2];z[b+8>>2]=n-z[f+24>>2];z[b+4>>2]=k-m;z[b>>2]=l-r;m=z[f+20>>2];r=z[f+16>>2];z[c+152>>2]=n-z[f+24>>2];z[c+148>>2]=k-m;z[c+144>>2]=l-r;m=z[g+20>>2];r=z[g+24>>2];q=z[g+16>>2];z[c+188>>2]=n;z[c+184>>2]=k;p=z[c+248>>2];z[c+176>>2]=p;B=z[c+244>>2];z[c+172>>2]=B;z[c+164>>2]=n-r;z[c+160>>2]=k-m;z[c+180>>2]=l;y=z[c+240>>2];z[c+168>>2]=y;z[c+156>>2]=l-q;O=v[e+460>>2];o=z[c+224>>2];a:{if(h){t=z[c+196>>2];s=z[c+200>>2];A=z[c+204>>2];D=z[c+192>>2];q=z[c+236>>2];r=z[c+232>>2];m=z[c+228>>2];break a}q=z[c+236>>2];A=z[c+204>>2];r=z[c+232>>2];s=z[c+200>>2];D=z[c+192>>2];m=z[c+228>>2];t=z[c+196>>2];if(!(C(C(q*A)+C(C(r*s)+C(C(o*D)+C(m*t))))>2]=A;s=C(-s);z[c+200>>2]=s;t=C(-t);z[c+196>>2]=t;D=C(-D);z[c+192>>2]=D}h=v[e+456>>2];d=v[e+452>>2];Q=C(-o);l=C(l-y);l=C(l+l);k=C(k-B);k=C(k+k);n=C(n-p);n=C(n+n);p=C(C(C(Q*l)-C(k*m))-C(r*n));B=C(C(q*q)+C(-.5));R=C(C(C(n*B)+C(q*C(C(l*m)-C(o*k))))-C(r*p));z[c+128>>2]=R;S=C(C(C(k*B)+C(q*C(C(n*o)-C(r*l))))-C(m*p));z[c+124>>2]=S;H=C(C(r*s)+C(C(m*t)+C(C(q*A)+C(o*D))));z[c+116>>2]=H;I=C(C(D*m)+C(C(C(q*s)-C(A*r))-C(o*t)));z[c+112>>2]=I;J=C(C(s*o)+C(C(C(q*t)-C(A*m))-C(r*D)));z[c+108>>2]=J;L=C(C(t*r)+C(C(C(q*D)-C(A*o))-C(m*s)));z[c+104>>2]=L;M=C(C(C(l*B)+C(q*C(C(k*r)-C(m*n))))-C(o*p));z[c+120>>2]=M;k=C(o+o);n=C(C(1)-C(o*k));l=C(m+m);p=C(m*l);z[c+96>>2]=n-p;y=C(l*r);E=C(k*q);z[c+92>>2]=y-E;z[c+84>>2]=y+E;N=n;n=C(r+r);y=C(r*n);z[c+80>>2]=N-y;E=C(k*r);l=C(l*q);z[c+88>>2]=E+l;k=C(k*m);n=C(n*q);z[c+76>>2]=k-n;E=C(E-l);z[c+72>>2]=E;n=C(k+n);z[c+68>>2]=n;p=C(C(C(1)-p)-y);z[c+64>>2]=p;k=C(D+D);y=C(C(1)-C(D*k));l=C(t+t);U=C(t*l);z[c+56>>2]=y-U;P=C(s*l);N=C(k*A);z[c+52>>2]=P-N;z[c+44>>2]=N+P;N=y;y=C(s+s);P=C(s*y);z[c+40>>2]=N-P;N=C(k*s);l=C(A*l);z[c+48>>2]=N+l;k=C(k*t);y=C(A*y);z[c+36>>2]=k-y;z[c+32>>2]=N-l;z[c+28>>2]=k+y;z[c+24>>2]=C(C(1)-U)-P;b:{if(!(O&7)){break b}U=z[e+424>>2];P=z[e+420>>2];b=v[c+140>>2];c:{if(!(O&1)){a=b;break c}N=z[e+416>>2];W=z[e+428>>2];a=b+80|0;v[c+140>>2]=a;z[b+8>>2]=E;z[b+4>>2]=n;z[b>>2]=p;u[b+78>>1]=0;p=z[c+152>>2];y=z[c+144>>2];E=z[c+148>>2];k=z[c+64>>2];l=z[c+68>>2];n=z[c+72>>2];z[b+40>>2]=n;z[b+36>>2]=l;z[b+32>>2]=k;z[b+24>>2]=C(y*l)-C(k*E);z[b+20>>2]=C(p*k)-C(n*y);z[b+16>>2]=C(E*n)-C(l*p);p=z[c+164>>2];y=z[c+156>>2];E=z[c+160>>2];z[b+28>>2]=-W;z[b+12>>2]=N-M;z[b+56>>2]=C(y*l)-C(k*E);z[b+52>>2]=C(p*k)-C(n*y);z[b+48>>2]=C(E*n)-C(l*p);u[b+76>>1]=x[b+76>>1]|(v[e+316>>2]&1?35:33);z[b+64>>2]=z[e+304>>2];z[b+68>>2]=z[e+308>>2];k=z[e+312>>2];z[b+60>>2]=k;z[b+44>>2]=-k}d:{if(!(O&2)){b=a;break d}M=z[e+432>>2];b=a+80|0;v[c+140>>2]=b;u[a+78>>1]=0;z[a>>2]=z[c+76>>2];z[a+4>>2]=z[c+80>>2];z[a+8>>2]=z[c+84>>2];p=z[c+152>>2];y=z[c+144>>2];E=z[c+148>>2];k=z[c+76>>2];l=z[c+80>>2];n=z[c+84>>2];z[a+40>>2]=n;z[a+36>>2]=l;z[a+32>>2]=k;z[a+24>>2]=C(y*l)-C(k*E);z[a+20>>2]=C(p*k)-C(n*y);z[a+16>>2]=C(E*n)-C(l*p);p=z[c+164>>2];y=z[c+156>>2];E=z[c+160>>2];z[a+28>>2]=-M;z[a+12>>2]=P-S;z[a+56>>2]=C(y*l)-C(k*E);z[a+52>>2]=C(p*k)-C(n*y);z[a+48>>2]=C(E*n)-C(l*p);u[a+76>>1]=x[a+76>>1]|(v[e+332>>2]&1?35:33);z[a+64>>2]=z[e+320>>2];z[a+68>>2]=z[e+324>>2];k=z[e+328>>2];z[a+60>>2]=k;z[a+44>>2]=-k}if(!(O&4)){break b}S=z[e+436>>2];v[c+140>>2]=b+80;u[b+78>>1]=0;z[b>>2]=z[c+88>>2];z[b+4>>2]=z[c+92>>2];z[b+8>>2]=z[c+96>>2];k=z[c+152>>2];l=z[c+96>>2];n=z[c+144>>2];p=z[c+92>>2];y=z[c+88>>2];E=z[c+148>>2];z[b+24>>2]=C(n*p)-C(y*E);z[b+20>>2]=C(k*y)-C(l*n);z[b+16>>2]=C(E*l)-C(p*k);k=z[c+88>>2];z[b+32>>2]=k;l=z[c+92>>2];z[b+36>>2]=l;n=z[c+96>>2];z[b+40>>2]=n;p=z[c+164>>2];y=z[c+156>>2];E=z[c+160>>2];z[b+28>>2]=-S;z[b+12>>2]=U-R;z[b+56>>2]=C(y*l)-C(k*E);z[b+52>>2]=C(p*k)-C(n*y);z[b+48>>2]=C(E*n)-C(l*p);u[b+76>>1]=x[b+76>>1]|(v[e+348>>2]&1?35:33);z[b+64>>2]=z[e+336>>2];z[b+68>>2]=z[e+340>>2];k=z[e+344>>2];z[b+60>>2]=k;z[b+44>>2]=-k}e:{if(!(O&56)){break e}k=z[e+412>>2];n=z[e+408>>2];p=z[e+400>>2];l=z[e+404>>2];if(!(C(C(H*k)+C(C(I*n)+C(C(L*p)+C(J*l))))>C(0))){n=C(-n);l=C(-l);p=C(-p);k=C(-k)}E=C(C(L*l)+C(C(C(k*I)-C(H*n))-C(p*J)));R=C(C(I*p)+C(C(C(k*J)-C(H*l))-C(n*L)));y=C(C(J*n)+C(C(C(k*L)-C(H*p))-C(l*I)));if(O&32){H=z[e+448>>2];H=C(H+H);I=z[e+440>>2];I=C(I+I);J=z[e+444>>2];J=C(J+J);M=C(C(r*H)+C(C(o*I)+C(m*J)));U=C(-m);L=C(-C(C(r*M)+C(C(H*B)+C(q*C(C(o*J)+C(I*U))))));S=C(-C(C(m*M)+C(C(J*B)+C(q*C(C(r*I)+C(H*Q))))));N=C(o*M);M=C(-r);H=C(-C(N+C(C(I*B)+C(q*C(C(m*H)+C(J*M))))));B=C(0);P=z[e+384>>2];f:{if(P==C(0)){r=C(0);n=C(0);p=C(0);m=C(1);l=C(0);k=C(0);q=C(1);o=C(1);break f}I=C(C(C(-p)*m)+C(C(o*l)+C(C(q*n)+C(r*k))));J=C(C(C(-n)*o)+C(C(r*p)+C(C(q*l)+C(m*k))));B=C(C(t*I)+C(s*J));Q=C(C(M*n)+C(C(U*l)+C(C(q*k)+C(p*Q))));m=C(C(C(-l)*r)+C(C(m*n)+C(C(q*p)+C(o*k))));r=C(C(D*Q)+C(A*m));k=C(C(B-r)*C(.5));q=C(C(t*Q)+C(A*J));o=C(C(D*I)+C(s*m));l=C(C(q+o)*C(.5));B=C(C(r+B)*C(.5));p=C(C(D*J)+C(t*m));M=C(C(s*Q)+C(A*I));r=C(C(p-M)*C(.5));n=C(C(o-q)*C(.5));p=C(C(p+M)*C(.5));A=C(A*Q);q=C(I*s);m=C(m*D);s=C(t*J);t=C(q+C(m+s));o=C(A-t);q=C(C(C(q+q)+o)*C(.5));m=C(C(C(m+m)+o)*C(.5));o=C(C(C(s+s)+o)*C(.5));if(C(A+t)!=C(0)){break f}q=C(q+C(1.1920928955078125e-7));m=C(m+C(1.1920928955078125e-7));o=C(o+C(1.1920928955078125e-7))}a=v[c+140>>2];z[a+48>>2]=m;v[a+32>>2]=0;v[a+36>>2]=0;z[a+16>>2]=m;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=258;z[a+56>>2]=n;z[a+52>>2]=p;v[a+40>>2]=0;z[a+24>>2]=n;z[a+20>>2]=p;z[a+12>>2]=-y;z[a+28>>2]=C(n*L)+C(C(m*H)+C(p*S));b=v[e+396>>2];z[a+64>>2]=P;u[a+76>>1]=x[a+76>>1]|(b&1?35:33)|64;z[a+68>>2]=z[e+388>>2];m=z[e+392>>2];z[a+108>>2]=C(B*L)+C(C(r*H)+C(o*S));u[a+158>>1]=258;z[a+60>>2]=m;z[a+136>>2]=B;z[a+132>>2]=o;z[a+128>>2]=r;v[a+120>>2]=0;v[a+112>>2]=0;v[a+116>>2]=0;z[a+104>>2]=B;z[a+100>>2]=o;z[a+96>>2]=r;v[a+88>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;z[a+92>>2]=-R;z[a+44>>2]=-m;u[a+156>>1]=x[a+156>>1]|(v[e+396>>2]&1?35:33)|64;z[a+144>>2]=z[e+384>>2];z[a+148>>2]=z[e+388>>2];m=z[e+392>>2];z[a+188>>2]=C(q*L)+C(C(l*H)+C(k*S));u[a+238>>1]=258;z[a+140>>2]=m;z[a+216>>2]=q;z[a+212>>2]=k;z[a+208>>2]=l;v[a+200>>2]=0;v[a+192>>2]=0;v[a+196>>2]=0;z[a+184>>2]=q;z[a+180>>2]=k;z[a+176>>2]=l;v[a+168>>2]=0;v[a+160>>2]=0;v[a+164>>2]=0;z[a+172>>2]=-E;z[a+124>>2]=-m;u[a+236>>1]=x[a+236>>1]|(v[e+396>>2]&1?35:33)|64;z[a+224>>2]=z[e+384>>2];z[a+228>>2]=z[e+388>>2];m=z[e+392>>2];z[a+220>>2]=m;z[a+204>>2]=-m;v[c+140>>2]=a+240;break e}if(O&16){m=z[e+440>>2];a=v[c+140>>2];v[c+140>>2]=a+80;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;r=z[c+24>>2];z[a+16>>2]=r;q=z[c+28>>2];z[a+20>>2]=q;o=z[c+32>>2];z[a+56>>2]=o;z[a+52>>2]=q;z[a+48>>2]=r;v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=o;z[a+12>>2]=y*C(-2);z[a+28>>2]=m;u[a+76>>1]=x[a+76>>1]|(v[e+380>>2]&1?35:33)|64;z[a+64>>2]=z[e+368>>2];z[a+68>>2]=z[e+372>>2];m=z[e+376>>2];z[a+60>>2]=m;z[a+44>>2]=-m}if(!(O&8)){break e}m=C(C(n*I)+C(C(l*J)+C(C(k*H)+C(L*p))));r=C(C(C(m*m)+C(-.5))*C(0));q=C(C(E*C(0))+C(C(y+y)+C(R*C(0))));if(!(d&16)){k=z[e+444>>2];a=v[c+140>>2];v[c+140>>2]=a+80;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;l=z[c+36>>2];z[a+16>>2]=l;o=z[c+40>>2];z[a+20>>2]=o;s=z[c+44>>2];z[a+56>>2]=s;z[a+52>>2]=o;z[a+48>>2]=l;v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=s;z[a+12>>2]=C(E*q)+C(r+C(m*C(C(y*C(0))-C(R+R))));z[a+28>>2]=k;u[a+76>>1]=x[a+76>>1]|(v[e+364>>2]&1?35:33)|64;z[a+64>>2]=z[e+352>>2];z[a+68>>2]=z[e+356>>2];k=z[e+360>>2];z[a+60>>2]=k;z[a+44>>2]=-k}if(d&32){break e}k=z[e+448>>2];a=v[c+140>>2];v[c+140>>2]=a+80;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;z[a+16>>2]=z[c+48>>2];z[a+20>>2]=z[c+52>>2];l=z[c+56>>2];v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=l;z[a+48>>2]=z[c+48>>2];z[a+52>>2]=z[c+52>>2];l=z[c+56>>2];z[a+28>>2]=k;z[a+12>>2]=-C(C(R*q)+C(r+C(m*C(C(E+E)+C(y*C(-0))))));z[a+56>>2]=l;u[a+76>>1]=x[a+76>>1]|(v[e+364>>2]&1?35:33)|64;z[a+64>>2]=z[e+352>>2];z[a+68>>2]=z[e+356>>2];m=z[e+360>>2];z[a+60>>2]=m;z[a+44>>2]=-m}O=c+88|0;V=c+76|0;g:{if(!(h&56)){break g}r=C(0);k=z[c+116>>2];l=z[c+104>>2];h:{if(l==C(0)){m=C(1);q=C(0);break h}r=C(C(1)/C(K(C(C(k*k)+C(C(C(l*l)+C(0))+C(0))))));m=C(k*r);q=C(r*C(0));r=C(l*r)}t=z[c+112>>2];s=C(q*t);n=z[c+108>>2];p=C(n*q);o=C(s+C(p+C(C(k*m)+C(l*r))));z[c+20>>2]=o;s=C(s+C(C(C(l*m)-C(k*r))-p));z[c+8>>2]=s;k=C(k*C(-q));p=C(q*l);l=C(C(r*n)+C(C(k+C(m*t))-p));z[c+16>>2]=l;k=C(p+C(C(k+C(m*n))-C(t*r)));z[c+12>>2]=k;i:{if((h&48)==48){j:{if(!w[e+478|0]){break j}k=z[e+252>>2];l=z[e+256>>2];o=z[e+248>>2];a=v[e+264>>2];v[c+256>>2]=v[e+260>>2];v[c+260>>2]=a;z[c+264>>2]=k>C(0)?C(0):o>C(0)?C(0):l;if(!E5(c+256|0,c+8|0,c+272|0,c+268|0)){break j}a=v[c+140>>2];v[c+140>>2]=a+80;l=z[c+232>>2];t=z[c+280>>2];k=z[c+236>>2];o=z[c+224>>2];p=z[c+276>>2];s=z[c+228>>2];n=z[c+272>>2];A=z[c+268>>2];v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;z[a+12>>2]=A;b=x[a+76>>1];T=b|64;u[a+76>>1]=T;t=C(t+t);n=C(n+n);p=C(p+p);D=C(C(l*t)+C(C(o*n)+C(s*p)));B=C(C(k*k)+C(-.5));y=C(C(l*D)+C(C(t*B)+C(k*C(C(o*p)-C(n*s)))));z[a+56>>2]=y;H=C(C(s*D)+C(C(p*B)+C(k*C(C(l*n)-C(t*o)))));z[a+52>>2]=H;k=C(C(o*D)+C(C(n*B)+C(k*C(C(s*t)-C(p*l)))));z[a+48>>2]=k;z[a+24>>2]=y;z[a+20>>2]=H;z[a+16>>2]=k;k=z[e+248>>2];k:{if(z[e+252>>2]>C(0)|k>C(0)){z[a+64>>2]=k;z[a+68>>2]=z[e+252>>2];b=b|81;break k}u[a+78>>1]=2049;z[a+64>>2]=z[e+240>>2];z[a+68>>2]=z[e+244>>2];b=T|(A>C(0)?24:16);if(!(z[e+240>>2]>C(0))){break k}b=b|4}v[a+44>>2]=0;u[a+76>>1]=b}if(!w[e+479|0]){break i}a=xa-16|0;xa=a;t=z[c+236>>2];k=z[c+20>>2];n=z[c+8>>2];p=z[c+224>>2];A=z[c+228>>2];l=z[c+12>>2];D=z[c+232>>2];B=z[c+16>>2];y=C(C(C(C(t*k)-C(n*p))-C(A*l))-C(D*B));J=z[e+284>>2];L=z[e+292>>2];E=z[e+288>>2];H=C(C(C(A*B)+C(C(t*n)+C(k*p)))-C(l*D));o=C(y+y);s=C(C(C(D*n)+C(C(t*l)+C(k*A)))-C(B*p));I=C(s+s);t=C(C(C(p*l)+C(C(t*B)+C(k*D)))-C(n*A));z[a+8>>2]=C(H*o)+C(I*t);n=C(C(y*o)+C(-1));z[a+4>>2]=C(s*I)+n;z[a>>2]=C(H*I)-C(t*o);b=c+136|0;T=e+268|0;F5(b,C(B9(l,C(k+C(1)))*C(4)),E,L,J,a,T);l=z[c+20>>2];p=z[c+16>>2];A=z[e+284>>2];D=z[e+300>>2];B=z[e+296>>2];k=C(t+t);z[a+8>>2]=C(t*k)+n;z[a+4>>2]=C(s*k)-C(H*o);z[a>>2]=C(s*o)+C(H*k);F5(b,C(B9(p,C(l+C(1)))*C(4)),B,D,A,a,T);xa=a+16|0;break i}b=h&32;l:{if(!(h&16)){break l}a=w[e+479|0];if(d&32){if(a){I=z[e+284>>2];J=z[e+292>>2];L=z[e+288>>2];t=z[c+228>>2];n=z[c+236>>2];p=z[c+224>>2];A=z[c+232>>2];E=C(C(C(t*l)+C(C(n*s)+C(o*p)))-C(k*A));D=C(C(C(C(n*o)-C(s*p))-C(t*k))-C(A*l));B=C(D+D);y=C(C(C(A*s)+C(C(n*k)+C(o*t)))-C(l*p));H=C(y+y);l=C(C(C(p*k)+C(C(n*l)+C(o*A)))-C(s*t));z[c+280>>2]=C(E*B)+C(H*l);z[c+272>>2]=C(E*H)-C(l*B);z[c+276>>2]=C(y*H)+C(C(D*B)+C(-1));F5(c+136|0,C(B9(k,C(o+C(1)))*C(4)),L,J,I,c+272|0,e+268|0);break l}o=C(B9(k,C(o+C(1)))*C(4));k=z[e+260>>2];F5(c+136|0,o,C(-k),k,z[e+256>>2],V,e+240|0);break l}if(!a){l=C(0);o=z[c+96>>2];s=z[c+32>>2];t=z[c+88>>2];n=z[c+24>>2];p=z[c+92>>2];A=z[c+28>>2];H=C(-C(C(o*s)+C(C(t*n)+C(p*A))));I=z[e+256>>2];D=z[e+260>>2];k=C(0);B=C(0);y=C(C(t*A)-C(n*p));p=C(C(p*s)-C(A*o));o=C(C(o*n)-C(s*t));s=C(C(y*y)+C(C(p*p)+C(o*o)));if(s>C(0)){l=C(C(1)/C(K(s)));B=C(y*l);k=C(o*l);l=C(p*l)}z[c+280>>2]=B;z[c+276>>2]=k;z[c+272>>2]=l;F5(c+136|0,A9(C(F(C(G(H,C(-1))),C(1)))),C(-D),D,I,c+272|0,e+240|0);break l}a9(v[37696],8,6908,1003,67569,0)}if(!b){break i}a=w[e+479|0];if(d&16){if(a){y=z[e+284>>2];H=z[e+300>>2];I=z[e+296>>2];o=z[c+232>>2];s=z[c+8>>2];t=z[c+236>>2];n=z[c+12>>2];k=z[c+20>>2];p=z[c+228>>2];l=z[c+16>>2];A=z[c+224>>2];J=C(C(C(o*s)+C(C(t*n)+C(k*p)))-C(l*A));D=C(C(C(A*n)+C(C(t*l)+C(k*o)))-C(s*p));B=C(D+D);L=C(C(C(p*l)+C(C(t*s)+C(k*A)))-C(n*o));o=C(C(C(C(t*k)-C(s*A))-C(p*n))-C(o*l));s=C(o+o);z[c+276>>2]=C(J*B)-C(L*s);z[c+272>>2]=C(J*s)+C(L*B);z[c+280>>2]=C(D*B)+C(C(o*s)+C(-1));F5(c+136|0,C(B9(l,C(k+C(1)))*C(4)),I,H,y,c+272|0,e+268|0);break i}o=C(B9(z[c+16>>2],C(z[c+20>>2]+C(1)))*C(4));k=z[e+264>>2];F5(c+136|0,o,C(-k),k,z[e+256>>2],O,e+240|0);break i}if(!a){l=C(0);o=z[c+84>>2];s=z[c+32>>2];t=z[c+76>>2];n=z[c+24>>2];p=z[c+80>>2];A=z[c+28>>2];H=C(C(o*s)+C(C(t*n)+C(p*A)));I=z[e+256>>2];D=z[e+264>>2];k=C(0);B=C(0);y=C(C(t*A)-C(n*p));p=C(C(p*s)-C(A*o));o=C(C(o*n)-C(s*t));s=C(C(y*y)+C(C(p*p)+C(o*o)));if(s>C(0)){l=C(C(1)/C(K(s)));B=C(l*C(-y));k=C(l*C(-o));l=C(l*C(-p))}z[c+280>>2]=B;z[c+276>>2]=k;z[c+272>>2]=l;F5(c+136|0,A9(C(F(C(G(H,C(-1))),C(1)))),C(-D),D,I,c+272|0,e+240|0);break i}a9(v[37696],8,6908,1019,67569,0)}if(!(h&8)){break g}q=C(q*q);q=C(K(C(C(m*m)+C(q+C(q+C(r*r))))));if(q!=C(0)){q=C(C(1)/q);m=C(m*q);r=C(r*q)}m=z9(C(F(C(G(m,C(-1))),C(1))));m=C(m+m);F5(c+136|0,r>2],z[e+232>>2],z[e+228>>2],c+24|0,e+212|0)}m:{if(!(h&7)){break m}n:{if(!w[e+476|0]){break n}r=C(0);m=C(0);q=C(0);a=v[e+456>>2];if(a&1){m=z[c+120>>2];q=C(C(m*z[c+72>>2])+C(0));r=C(C(m*z[c+64>>2])+C(0));m=C(C(m*z[c+68>>2])+C(0))}if(a&2){k=z[c+124>>2];q=C(q+C(k*z[c+84>>2]));r=C(r+C(k*z[c+76>>2]));m=C(m+C(k*z[c+80>>2]))}if(a&4){k=z[c+128>>2];q=C(q+C(k*z[c+96>>2]));r=C(r+C(k*z[c+88>>2]));m=C(m+C(k*z[c+92>>2]))}k=C(K(C(C(q*q)+C(C(r*r)+C(m*m)))));if(!(k>z[e+464>>2])){break n}t=z[e+124>>2];T=z[e+116>>2]>C(0);if(!(t>2]>C(0)?C(0):z[e+120>>2])))){break n}a=v[c+140>>2];v[c+140>>2]=a+80;l=C(C(1)/k);q=C(q*l);z[a+8>>2]=q;m=C(m*l);z[a+4>>2]=m;r=C(r*l);z[a>>2]=r;u[a+78>>1]=0;l=z[c+152>>2];o=z[c+144>>2];s=z[c+148>>2];z[a+40>>2]=q;z[a+36>>2]=m;z[a+32>>2]=r;z[a+24>>2]=C(o*m)-C(r*s);z[a+20>>2]=C(l*r)-C(q*o);z[a+16>>2]=C(s*q)-C(m*l);l=z[c+164>>2];o=z[c+156>>2];s=z[c+160>>2];k=C(t-k);z[a+12>>2]=k;z[a+56>>2]=C(o*m)-C(r*s);z[a+52>>2]=C(l*r)-C(q*o);z[a+48>>2]=C(s*q)-C(m*l);b=x[a+76>>1];m=z[e+112>>2];o:{if(T|m>C(0)){z[a+64>>2]=m;z[a+68>>2]=z[e+116>>2];b=b|17;break o}u[a+78>>1]=2049;z[a+64>>2]=z[e+104>>2];z[a+68>>2]=z[e+108>>2];b=b|(k>C(0)?24:16);if(!(z[e+104>>2]>C(0))){break o}b=b|4}v[a+44>>2]=0;u[a+76>>1]=b}if(!w[e+477|0]){break m}if(!(!(h&1)|!(z[e+152>>2]<=z[e+148>>2]))){G5(c+136|0,e+128|0,z[c+120>>2],c- -64|0)}if(!(!(h&2)|!(z[e+180>>2]<=z[e+176>>2]))){G5(c+136|0,e+156|0,z[c+124>>2],V)}if(!(h&4)|!(z[e+208>>2]<=z[e+204>>2])){break m}G5(c+136|0,e+184|0,z[c+128>>2],O)}b=c+120|0;p:{q:{a=(d&56)-16|0;if(a){if((a|0)==16){break q}else{break p}}a=v[c+140>>2];v[c+140>>2]=a+80;m=z[c+32>>2];r=z[c+96>>2];q=z[c+24>>2];k=z[c+92>>2];l=z[c+88>>2];o=z[c+28>>2];s=C(C(q*k)-C(l*o));z[a+56>>2]=s;t=C(C(m*l)-C(r*q));z[a+52>>2]=t;n=C(C(o*r)-C(k*m));z[a+48>>2]=n;v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=s;z[a+20>>2]=t;z[a+16>>2]=n;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=2048;u[a+76>>1]=x[a+76>>1]|80;z[a+12>>2]=-C(C(m*r)+C(C(q*l)+C(o*k)));d=d&-17;break p}a=v[c+140>>2];v[c+140>>2]=a+80;m=z[c+32>>2];r=z[c+84>>2];q=z[c+24>>2];k=z[c+80>>2];l=z[c+76>>2];o=z[c+28>>2];s=C(C(q*k)-C(l*o));z[a+56>>2]=s;t=C(C(m*l)-C(r*q));z[a+52>>2]=t;n=C(C(o*r)-C(k*m));z[a+48>>2]=n;v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=s;z[a+20>>2]=t;z[a+16>>2]=n;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=2048;u[a+76>>1]=x[a+76>>1]|80;z[a+12>>2]=-C(C(m*r)+C(C(q*l)+C(o*k)));d=d&-33}H5(c+136|0,c+224|0,c+192|0,b,d&7,d>>>3|0,c+8|0,c+272|0);m=z[f+16>>2];r=z[f+20>>2];q=z[c+8>>2];k=z[c+12>>2];z[i+8>>2]=z[c+16>>2]+z[f+24>>2];z[i+4>>2]=k+r;z[i>>2]=q+m;m=z[g+16>>2];r=z[g+20>>2];q=z[c+272>>2];k=z[c+276>>2];z[j+8>>2]=z[c+280>>2]+z[g+24>>2];z[j+4>>2]=k+r;z[j>>2]=q+m;xa=c+288|0;return(v[c+140>>2]-v[c+136>>2]|0)/80|0}function I2(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),y=C(0),A=C(0),E=C(0),F=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=0,oa=0,pa=C(0),qa=C(0),ra=0,sa=C(0),ta=0,ua=0,va=0,wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0);l=xa-560|0;xa=l;a:{if(!a){i=0;break a}i=x[i>>1];ta=i&16;ua=i&64;ra=i&128;n=z[c+8>>2];t=z[c+20>>2];U=C(C(n-t)*C(.5));w=z[c>>2];A=z[c+12>>2];H=C(C(w-A)*C(.5));y=z[c+4>>2];E=z[c+16>>2];Y=C(C(y-E)*C(.5));p=C(K(C(C(U*U)+C(C(H*H)+C(Y*Y)))));if(p==C(0)){i=L2(a,b,c,z[c+24>>2],d,e,f,g,h,j,(ra|0)!=0,(ua|0)!=0,!ta);break a}va=ra>>>7|j;q=z[d+8>>2];m=z[d>>2];o=z[d+4>>2];J=C(C(n+t)*C(.5));z[l+552>>2]=J;M=C(C(y+E)*C(.5));z[l+548>>2]=M;N=C(C(w+A)*C(.5));z[l+544>>2]=N;I=C(C(1)/p);if(!(C(D(C(C(q*C(U*I))+C(C(m*C(H*I))+C(o*C(Y*I))))))>2]=y;w=C(A-w);z[l+288>>2]=w;n=C(t-n);z[l+296>>2]=n;n=C(C(n*n)+C(C(w*w)+C(y*y)));z[l+300>>2]=n;z[l+304>>2]=n!=C(0)?C(C(1)/n):C(0);n=C(C(p*q)+J);z[l+136>>2]=n;t=C(C(p*o)+M);z[l+132>>2]=t;p=C(N+C(p*m));z[l+128>>2]=p;Z=f?v[f>>2]:Z;J=C(C(n*q)+C(C(p*m)+C(o*t)));y=C(2);i=-1;p=e;f=0;o=C(0);n=C(0);t=C(0);b:{c:{while(1){d:{k=f?(f|0)==(Z|0)?0:f:Z;T=B(k,36)+b|0;e:{if(J2(l+128|0,d,p,z[c+24>>2],T,J)){break e}w=z[T+20>>2];A=z[T+32>>2];m=z[T+8>>2];q=z[T>>2];E=C(z[T+12>>2]-q);M=z[T+4>>2];N=C(z[T+28>>2]-M);I=C(z[T+24>>2]-q);M=C(z[T+16>>2]-M);q=C(C(E*N)-C(I*M));z[l+200>>2]=q;O=C(w-m);m=C(A-m);w=C(C(O*I)-C(m*E));z[l+196>>2]=w;m=C(C(M*m)-C(N*O));z[l+192>>2]=m;if(!va&C(C(q*z[d+8>>2])+C(C(m*z[d>>2])+C(w*z[d+4>>2])))>C(0)){break e}if(!ta){if(F$(l+192|0,T,T+12|0,T+24|0,c,l+288|0)){break d}w=z[l+196>>2];m=z[l+192>>2];q=z[l+200>>2]}A=C(K(C(C(q*q)+C(C(m*m)+C(w*w)))));if(A==C(0)){break e}r=q;q=C(C(1)/A);z[l+200>>2]=r*q;z[l+196>>2]=w*q;z[l+192>>2]=m*q;if(!K2(T,l+192|0,l+128|0,z[c+24>>2],d,l+152|0,l+112|0,0)){break e}q=z[l+152>>2];if(q>e){break e}M=C(C(G(p>2];w=z[l+192>>2];A=z[l+196>>2];E=C(-C(D(C(C(m*z[d+8>>2])+C(C(w*z[d>>2])+C(A*z[d+4>>2]))))));if(!(qq)){break e}}if(ua){break c}t=w;n=A;o=m;y=E;p=q;i=k}f=f+1|0;if((f|0)!=(a|0)){continue}break b}break}e=z[d>>2];p=z[d+4>>2];z[h+8>>2]=-z[d+8>>2];z[h+4>>2]=-p;z[h>>2]=-e;u[g+12>>1]=1026;v[g+8>>2]=k;e=z[d>>2];p=z[d+4>>2];q=z[d+8>>2];v[g+40>>2]=0;z[g+36>>2]=-q;z[g+32>>2]=-p;z[g+28>>2]=-e;i=1;break a}t=w;n=A;o=m;p=q;i=k}if((i|0)!=-1){M2(l+192|0,l+152|0,l+128|0,d,p,B(i,36)+b|0);if(!(!(C(C(o*z[d+8>>2])+C(C(t*z[d>>2])+C(n*z[d+4>>2])))>C(0))|(j|!ra))){z[l+160>>2]=-z[l+160>>2];z[l+156>>2]=-z[l+156>>2];z[l+152>>2]=-z[l+152>>2]}z[g+16>>2]=z[l+192>>2];z[g+20>>2]=z[l+196>>2];z[g+24>>2]=z[l+200>>2];z[g+28>>2]=z[l+152>>2];z[g+32>>2]=z[l+156>>2];e=z[l+160>>2];z[g+40>>2]=p;z[g+36>>2]=e;u[g+12>>1]=3;v[g+8>>2]=i;z[h+8>>2]=o;z[h+4>>2]=n;z[h>>2]=t}i=(i|0)!=-1;break a}v[g+8>>2]=-1;i=0;i=f?v[f>>2]:i;ka=z[c+24>>2];p=C(E-y);z[l+132>>2]=p;w=C(A-w);z[l+128>>2]=w;n=C(t-n);z[l+136>>2]=n;p=C(C(n*n)+C(C(w*w)+C(p*p)));z[l+140>>2]=p;z[l+144>>2]=p!=C(0)?C(C(1)/p):C(0);ia=C(C(J*q)+C(C(N*m)+C(o*M)));p=C(2);q=e;f:{while(1){oa=na?(i|0)==(na|0)?0:na:i;f=B(oa,36)+b|0;o=z[f+20>>2];m=z[f+8>>2];n=z[f+32>>2];t=z[f>>2];w=C(z[f+12>>2]-t);A=z[f+4>>2];y=C(z[f+28>>2]-A);t=C(z[f+24>>2]-t);A=C(z[f+16>>2]-A);E=C(C(w*y)-C(t*A));z[l+120>>2]=E;o=C(o-m);m=C(n-m);n=C(C(o*t)-C(m*w));z[l+116>>2]=n;m=C(C(A*m)-C(y*o));z[l+112>>2]=m;g:{if(!va&C(C(E*z[d+8>>2])+C(C(m*z[d>>2])+C(n*z[d+4>>2])))>C(0)){break g}T=f+24|0;Z=f+12|0;if(k){if(!v$(k,f,Z,T)){break g}}h:{if(ta){break h}if(!F$(l+112|0,f,Z,T,c,l+128|0)){break h}e=z[d>>2];p=z[d+4>>2];z[h+8>>2]=-z[d+8>>2];z[h+4>>2]=-p;z[h>>2]=-e;u[g+12>>1]=1026;v[g+8>>2]=oa;e=z[d>>2];p=z[d+4>>2];q=z[d+8>>2];v[g+40>>2]=0;z[g+36>>2]=-q;z[g+32>>2]=-p;z[g+28>>2]=-e;i=1;break a}m=z[f+32>>2];t=C(U+m);o=z[f+28>>2];w=C(Y+o);n=z[f+24>>2];A=C(H+n);y=z[f+20>>2];_=C(U+y);E=z[f+16>>2];V=C(Y+E);J=z[f+12>>2];P=C(H+J);O=z[f+8>>2];M=C(U+O);Q=z[f+4>>2];N=C(Y+Q);R=z[f>>2];I=C(H+R);X=C(m-U);$=C(o-Y);aa=C(n-H);y=C(y-U);E=C(E-Y);J=C(J-H);O=C(O-U);Q=C(Q-Y);R=C(R-H);ga=z[l+120>>2];ca=z[l+112>>2];ba=z[l+116>>2];i:{if(C(C(ga*U)+C(C(ca*H)+C(Y*ba)))>=C(0)){z[l+292>>2]=N;z[l+304>>2]=V;z[l+288>>2]=I;z[l+312>>2]=A;z[l+316>>2]=w;z[l+300>>2]=P;m=C(P-I);o=C(w-N);F=C(A-I);s=C(V-N);n=C(C(m*o)-C(F*s));z[l+296>>2]=M;z[l+320>>2]=t;z[l+308>>2]=_;r=C(_-M);L=C(r*F);F=C(t-M);m=C(L-C(F*m));o=C(C(s*F)-C(o*r));break i}z[l+292>>2]=Q;z[l+304>>2]=E;z[l+288>>2]=R;z[l+312>>2]=aa;z[l+316>>2]=$;z[l+300>>2]=J;m=C(J-R);o=C($-Q);F=C(aa-R);s=C(E-Q);n=C(C(m*o)-C(F*s));z[l+296>>2]=O;z[l+320>>2]=X;z[l+308>>2]=y;r=C(y-O);L=C(r*F);F=C(X-O);m=C(L-C(F*m));o=C(C(s*F)-C(o*r))}z[l+200>>2]=n;z[l+196>>2]=m;z[l+192>>2]=o;z[l+324>>2]=J;z[l+336>>2]=P;z[l+332>>2]=y;z[l+356>>2]=t;z[l+348>>2]=A;z[l+344>>2]=_;z[l+340>>2]=V;z[l+352>>2]=w;z[l+328>>2]=E;n=C(P-J);W=C(w-E);L=C(A-J);m=C(V-E);o=C(C(n*W)-C(L*m));F=z[d+8>>2];S=C(t-y);ea=C(_-y);m=C(C(m*S)-C(W*ea));s=z[d>>2];r=z[d+4>>2];n=C(C(ea*L)-C(S*n));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+356>>2]=_;z[l+352>>2]=V;z[l+348>>2]=P;z[l+344>>2]=t;z[l+340>>2]=w;z[l+336>>2]=A;n=C(-n);m=C(-m);o=C(-o)}z[l+212>>2]=o;z[l+208>>2]=n;z[l+204>>2]=m;z[l+380>>2]=t;z[l+376>>2]=w;z[l+372>>2]=A;z[l+368>>2]=y;z[l+392>>2]=X;z[l+360>>2]=J;z[l+384>>2]=aa;z[l+364>>2]=E;z[l+388>>2]=$;m=C($-E);n=C(aa-J);o=C(C(L*m)-C(n*W));da=W;W=C(X-y);m=C(C(da*W)-C(m*S));n=C(C(S*n)-C(W*L));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+392>>2]=t;z[l+388>>2]=w;z[l+384>>2]=A;z[l+380>>2]=X;z[l+376>>2]=$;z[l+372>>2]=aa;n=C(-n);m=C(-m);o=C(-o)}z[l+224>>2]=o;z[l+220>>2]=n;z[l+216>>2]=m;z[l+396>>2]=R;z[l+408>>2]=aa;z[l+404>>2]=O;z[l+428>>2]=t;z[l+420>>2]=A;z[l+416>>2]=X;z[l+400>>2]=Q;z[l+424>>2]=w;z[l+412>>2]=$;n=C(aa-R);W=C(w-Q);L=C(A-R);m=C($-Q);o=C(C(n*W)-C(L*m));S=C(t-O);ea=C(X-O);m=C(C(m*S)-C(W*ea));n=C(C(ea*L)-C(S*n));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+428>>2]=X;z[l+424>>2]=$;z[l+420>>2]=aa;z[l+416>>2]=t;z[l+412>>2]=w;z[l+408>>2]=A;n=C(-n);m=C(-m);o=C(-o)}z[l+236>>2]=o;z[l+232>>2]=n;z[l+228>>2]=m;z[l+452>>2]=t;z[l+448>>2]=w;z[l+444>>2]=A;z[l+440>>2]=O;z[l+464>>2]=M;z[l+432>>2]=R;z[l+456>>2]=I;z[l+436>>2]=Q;z[l+460>>2]=N;m=C(N-Q);n=C(I-R);o=C(C(L*m)-C(n*W));X=C(M-O);m=C(C(W*X)-C(m*S));n=C(C(S*n)-C(X*L));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+464>>2]=t;z[l+460>>2]=w;z[l+456>>2]=A;z[l+452>>2]=M;z[l+448>>2]=N;z[l+444>>2]=I;n=C(-n);m=C(-m);o=C(-o)}z[l+248>>2]=o;z[l+244>>2]=n;z[l+240>>2]=m;z[l+468>>2]=I;z[l+480>>2]=P;z[l+476>>2]=M;z[l+500>>2]=y;z[l+492>>2]=J;z[l+488>>2]=_;z[l+472>>2]=N;z[l+496>>2]=E;z[l+484>>2]=V;n=C(P-I);t=C(E-N);w=C(J-I);m=C(V-N);o=C(C(n*t)-C(w*m));A=C(y-M);X=C(_-M);m=C(C(m*A)-C(t*X));n=C(C(X*w)-C(A*n));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+500>>2]=_;z[l+496>>2]=V;z[l+492>>2]=P;z[l+488>>2]=y;z[l+484>>2]=E;z[l+480>>2]=J;n=C(-n);m=C(-m);o=C(-o)}z[l+260>>2]=o;z[l+256>>2]=n;z[l+252>>2]=m;z[l+524>>2]=y;z[l+520>>2]=E;z[l+516>>2]=J;z[l+512>>2]=M;z[l+536>>2]=O;z[l+504>>2]=I;z[l+528>>2]=R;z[l+508>>2]=N;z[l+532>>2]=Q;m=C(Q-N);n=C(R-I);o=C(C(w*m)-C(n*t));L=t;t=C(O-M);m=C(C(L*t)-C(m*A));n=C(C(A*n)-C(t*w));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+536>>2]=y;z[l+532>>2]=E;z[l+528>>2]=J;z[l+524>>2]=O;z[l+520>>2]=Q;z[l+516>>2]=R;o=C(-o);n=C(-n);m=C(-m)}z[l+272>>2]=o;z[l+268>>2]=n;z[l+264>>2]=m;m=C(K(C(C(ga*ga)+C(C(ca*ca)+C(ba*ba)))));if(m>C(0)){m=C(C(1)/m);ga=C(ga*m);z[l+120>>2]=ga;ba=C(ba*m);z[l+116>>2]=ba;ca=C(ca*m);z[l+112>>2]=ca}o=C(-C(D(C(C(ga*F)+C(C(ca*s)+C(r*ba))))));f=0;while(1){T=(l+192|0)+B(f,12)|0;j:{if(!va&C(C(z[T+8>>2]*z[d+8>>2])+C(C(z[T>>2]*z[d>>2])+C(z[T+4>>2]*z[d+4>>2])))>C(0)){break j}Z=(l+288|0)+B(f,36)|0;if(J2(l+544|0,d,q,ka,Z,ia)){break j}m=z[T+8>>2];n=z[T>>2];t=z[T+4>>2];w=C(K(C(C(m*m)+C(C(n*n)+C(t*t)))));if(w==C(0)){break j}r=n;n=C(C(1)/w);z[T>>2]=r*n;z[T+4>>2]=t*n;z[T+8>>2]=m*n;if(!K2(Z,T,l+544|0,ka,d,l+96|0,l+80|0,0)){break j}m=z[l+96>>2];if(m>e){break j}n=C(C(G(m>q?m:q,C(1)))*C(.0010000000474974513));if(!(C(q-n)>m|C(q+n)>m&p>o|m==C(0))){if(!(p==o&m>2]=oa;z[l+152>>2]=z[Z>>2];z[l+156>>2]=z[Z+4>>2];z[l+160>>2]=z[Z+8>>2];z[l+164>>2]=z[Z+12>>2];z[l+168>>2]=z[Z+16>>2];z[l+172>>2]=z[Z+20>>2];z[l+176>>2]=z[Z+24>>2];z[l+180>>2]=z[Z+28>>2];z[l+184>>2]=z[Z+32>>2];la=z[l+120>>2];ma=z[l+116>>2];fa=z[l+112>>2];if(ua){break f}p=o;q=m}f=f+1|0;if((f|0)!=7){continue}break}}na=na+1|0;if((na|0)!=(a|0)){continue}break}oa=v[g+8>>2];m=q}if((oa|0)==-1){i=0;break a}z[g+40>>2]=m;z[h+8>>2]=la;z[h+4>>2]=ma;z[h>>2]=fa;M2(g+16|0,g+28|0,l+544|0,d,m,l+152|0);if(!(!(C(C(la*z[d+8>>2])+C(C(fa*z[d>>2])+C(ma*z[d+4>>2])))>C(0))|(j|!ra))){z[g+28>>2]=-z[g+28>>2];z[g+36>>2]=-z[g+36>>2];z[g+32>>2]=-z[g+32>>2]}i=1;a=v[g+8>>2];if((a|0)==-1){break a}p=z[d>>2];q=z[d+4>>2];m=z[d+8>>2];e=z[g+40>>2];o=z[c>>2];n=z[c+4>>2];t=z[c+8>>2];v[l+92>>2]=0;m=C(e*m);z[l+88>>2]=t+m;q=C(e*q);z[l+84>>2]=n+q;e=C(e*p);z[l+80>>2]=o+e;p=z[c+12>>2];o=z[c+16>>2];n=z[c+20>>2];v[l+76>>2]=0;z[l+72>>2]=m+n;z[l+68>>2]=q+o;z[l+64>>2]=e+p;a=B(a,36)+b|0;b=v[a+4>>2];c=v[a>>2];e=z[a+8>>2];v[l+60>>2]=0;z[l+56>>2]=e;v[l+48>>2]=c;v[l+52>>2]=b;b=v[a+16>>2];c=v[a+12>>2];e=z[a+20>>2];v[l+44>>2]=0;z[l+40>>2]=e;v[l+32>>2]=c;v[l+36>>2]=b;b=v[a+28>>2];c=v[a+24>>2];e=z[a+32>>2];v[l+28>>2]=0;z[l+24>>2]=e;v[l+16>>2]=c;v[l+20>>2]=b;a=xa-112|0;xa=a;M=z[l+80>>2];c=l- -64|0;N=z[c>>2];I=z[l+84>>2];O=z[c+4>>2];Q=z[l+88>>2];R=z[c+8>>2];v[a+108>>2]=0;z[a+104>>2]=R-Q;z[a+100>>2]=O-I;z[a+96>>2]=N-M;y=z[l+48>>2];o=z[l+32>>2];E=z[l+52>>2];w=z[l+36>>2];J=z[l+56>>2];A=z[l+40>>2];v[a+92>>2]=0;e=C(A-J);z[a+88>>2]=e;p=C(w-E);z[a+84>>2]=p;q=C(o-y);z[a+80>>2]=q;U=z[l+16>>2];H=z[l+20>>2];Y=z[l+24>>2];v[a+76>>2]=0;m=C(Y-J);z[a+72>>2]=m;n=C(H-E);z[a+68>>2]=n;t=C(U-y);z[a+64>>2]=t;v[a+60>>2]=0;z[a+56>>2]=Y-A;z[a+52>>2]=H-w;z[a+48>>2]=U-o;ga=C(C(e*e)+C(C(q*q)+C(p*p)));ca=C(C(m*m)+C(C(t*t)+C(n*n)));o=C(C(e*m)+C(C(q*t)+C(p*n)));w=C(C(ga*ca)-C(o*o));w=w>C(0)?C(C(1)/w):C(0);U=C(C(q*n)-C(t*p));H=C(C(p*m)-C(n*e));V=C(C(e*t)-C(m*q));A=C(C(1)/C(K(C(C(U*U)+C(C(H*H)+C(V*V))))));k:{l:{Y=C(U*A);_=C(H*A);V=C(V*A);A=C(C(C(Q-J)*Y)+C(C(C(M-y)*_)+C(C(I-E)*V)));M=C(C(C(R-J)*Y)+C(C(C(N-y)*_)+C(C(O-E)*V)));if(!(C(A*M)>2];O=z[a+96>>2];Q=z[a+100>>2];N=C(C(C(-1)/C(C(Y*I)+C(C(_*O)+C(V*Q))))*A);I=C(z[l+88>>2]+C(I*N));J=C(I-J);r=C(J*e);O=C(z[l+80>>2]+C(O*N));e=C(O-y);s=C(e*q);q=C(z[l+84>>2]+C(Q*N));y=C(q-E);p=C(r+C(s+C(y*p)));m=C(C(J*m)+C(C(e*t)+C(y*n)));e=C(w*C(C(ca*p)-C(o*m)));if(!(e>=C(-1.1920928955078125e-7))|!(e<=C(1.0000001192092896))){break l}p=C(w*C(C(ga*m)-C(o*p)));if(!(p>=C(-1.1920928955078125e-7))|!(p<=C(1.0000001192092896))|!(C(e+p)>2]=q;z[l+96>>2]=O;v[l+108>>2]=0;z[l+104>>2]=I;b=v[l+100>>2];v[l+112>>2]=v[l+96>>2];v[l+116>>2]=b;b=v[l+108>>2];v[l+120>>2]=v[l+104>>2];v[l+124>>2]=b;v[l>>2]=0;break k}ka=z[l+40>>2];la=z[l+32>>2];ma=z[l+36>>2];N=z[a+56>>2];I=z[a+48>>2];O=z[a+52>>2];b=a- -64|0;Q=z[b+8>>2];R=z[b>>2];U=z[b+4>>2];e=z[a+104>>2];p=z[a+96>>2];q=z[a+100>>2];H=C(C(e*e)+C(C(p*p)+C(q*q)));P=C(C(1)/H);m=z[a+88>>2];n=z[a+80>>2];t=z[a+84>>2];ja=C(C(p*n)+C(q*t));F=C(C(e*m)+ja);wa=C(m*m);pa=C(C(n*n)+C(t*t));s=C(wa+pa);r=C(C(H*s)-C(F*F));b=a+32|0;fa=F;da=C(C(1)/s);y=z[l+88>>2];X=z[l+56>>2];ba=C(y-X);E=z[l+80>>2];$=z[l+48>>2];W=C(E-$);J=z[l+84>>2];aa=z[l+52>>2];L=C(J-aa);S=C(C(m*ba)+C(C(n*W)+C(t*L)));ia=s;s=C(C(e*ba)+C(C(p*W)+C(q*L)));F=C(C(C(F*S)-C(ia*s))/r);F=FC(0)?F:C(0)))));F=FC(0)?F:C(0);s=C(P*C(C(fa*F)-s));s=sC(0)?s:C(0);z[b+12>>2]=ba;r=C(C(Q*Q)+C(C(R*R)+C(U*U)));s=C(C(e*Q)+C(C(p*R)+C(q*U)));W=C(C(H*r)-C(s*s));da=s;sa=C(C(1)/r);fa=C(y-X);L=fa;ia=C(E-$);S=ia;ea=C(J-aa);ha=C(C(Q*L)+C(C(R*S)+C(U*ea)));qa=r;ya=C(q*ea);r=C(C(e*L)+C(C(p*S)+ya));s=C(C(C(s*ha)-C(qa*r))/W);s=sC(0)?s:C(0)))));s=sC(0)?s:C(0);r=C(P*C(C(da*s)-r));r=rC(0)?r:C(0);z[b+8>>2]=W;L=C(C(N*N)+C(C(I*I)+C(O*O)));r=C(C(e*N)+C(C(p*I)+C(q*O)));S=C(C(H*L)-C(r*r));da=r;Ba=C(C(1)/L);ha=C(y-ka);sa=C(E-la);za=C(J-ma);Aa=C(C(N*ha)+C(C(I*sa)+C(O*za)));qa=L;L=C(C(e*ha)+C(C(p*sa)+C(q*za)));r=C(C(C(r*Aa)-C(qa*L))/S);r=rC(0)?r:C(0)))));r=rC(0)?r:C(0);L=C(P*C(C(da*r)-L));L=LC(0)?L:C(0);z[b+4>>2]=L;da=H;H=C(wa+pa);S=C(C(e*m)+ja);ja=C(C(da*H)-C(S*S));da=P;ha=C(C(1)/H);P=C(C(m*fa)+C(C(n*ia)+C(t*ea)));qa=P;ea=C(S*P);P=C(C(e*fa)+C(C(p*ia)+ya));H=C(C(ea-C(H*P))/ja);H=HC(0)?H:C(0)))));H=HC(0)?H:C(0);P=C(da*C(C(S*H)-P));P=PC(0)?P:C(0);z[b>>2]=P;z[a+28>>2]=F;z[a+24>>2]=s;z[a+20>>2]=r;z[a+16>>2]=H;S=C(C(E+C(p*ba))-C($+C(n*F)));fa=C(S*S);S=C(C(J+C(q*ba))-C(aa+C(t*F)));F=C(C(y+C(e*ba))-C(X+C(m*F)));z[a+12>>2]=fa+C(C(S*S)+C(F*F));R=C(C(E+C(p*W))-C($+C(R*s)));F=C(R*R);R=C(C(J+C(q*W))-C(aa+C(U*s)));Q=C(C(y+C(e*W))-C(X+C(Q*s)));z[a+8>>2]=F+C(C(R*R)+C(Q*Q));I=C(C(E+C(p*L))-C(la+C(I*r)));s=C(I*I);I=C(C(J+C(q*L))-C(ma+C(O*r)));N=C(C(y+C(e*L))-C(ka+C(N*r)));z[a+4>>2]=s+C(C(I*I)+C(N*N));p=C(C(E+C(p*P))-C($+C(n*H)));n=C(p*p);p=C(C(J+C(q*P))-C(aa+C(t*H)));e=C(C(y+C(e*P))-C(X+C(m*H)));z[a>>2]=n+C(C(p*p)+C(e*e));y=z[a>>2];E=z[a+4>>2];s=z[a+8>>2];j=!(y>=E)|!(s>E);k=!(y>2];ba=z[l+32>>2];W=z[l+36>>2];L=z[l+40>>2];e=z[l+80>>2];p=z[l+84>>2];q=z[l+88>>2];m=z[l+56>>2];N=z[c+8>>2];n=z[l+48>>2];I=z[c>>2];t=z[l+52>>2];O=z[c+4>>2];S=z[a+48>>2];ka=z[a+52>>2];Q=z[a+16>>2];R=z[a+24>>2];la=z[a+56>>2];U=z[a+20>>2];ma=z[a+96>>2];fa=z[a+100>>2];ia=z[a+104>>2];H=z[a+72>>2];P=z[a+64>>2];X=z[a+68>>2];$=z[a+88>>2];aa=z[a+80>>2];F=z[a+84>>2];v[l+124>>2]=0;ea=C(M*M);r=C(A*A);b=ea>r;ja=k?j?s:E:y;c=ja>r;y=C(N-C(Y*M));s=C(y-m);E=C(I-C(_*M));r=C(E-n);M=C(O-C(V*M));pa=C(M-t);ha=C(C($*s)+C(C(aa*r)+C(F*pa)));r=C(C(s*H)+C(C(r*P)+C(pa*X)));s=C(w*C(C(ca*ha)-C(o*r)));r=C(w*C(C(ga*r)-C(o*ha)));f=s>=C(-1.1920928955078125e-7)&s<=C(1.0000001192092896)&(r>=C(-1.1920928955078125e-7)&r<=C(1.0000001192092896))&C(s+r)=C(-1.1920928955078125e-7)&V<=C(1.0000001192092896)&(o>=C(-1.1920928955078125e-7)&o<=C(1.0000001192092896))&C(V+o)>2]=q;r=b?p:O;o=p;p=C(p+C(fa*J));p=h?r:f?c?o:p:d?p:O;z[l+116>>2]=p;r=b?e:I;o=e;e=C(e+C(ma*J));e=h?r:f?c?o:e:d?e:I;z[l+112>>2]=e;v[l+108>>2]=0;m=k?j?C(m+C(R*H)):C(L+C(U*la)):C(m+C(Q*$));m=h?b?Y:y:f?c?Y:m:d?m:y;z[l+104>>2]=m;o=k?j?C(t+C(R*X)):C(W+C(U*ka)):C(t+C(Q*F));o=h?b?A:M:f?c?A:o:d?o:M;z[l+100>>2]=o;n=k?j?C(n+C(R*P)):C(ba+C(U*S)):C(n+C(Q*aa));n=h?b?_:E:f?c?_:n:d?n:E;z[l+96>>2]=n;q=C(m-q);e=C(n-e);m=C(e*e);e=C(o-p);z[l>>2]=C(q*q)+C(m+C(e*e))}xa=a+112|0;a=v[l+100>>2];b=v[l+96>>2];z[g+24>>2]=z[l+104>>2];v[g+16>>2]=b;v[g+20>>2]=a;u[g+12>>1]=3}xa=l+560|0;return i}function tZ(a,b,c,d,e,f,g,h,i,k,m,n){var o=0,r=C(0),s=C(0),t=C(0),u=C(0),y=0,A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=0,Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=0,Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=0,qa=0,ra=0,sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=0,ya=0,za=0,Aa=0,Ca=0,Da=C(0),Ea=C(0),Fa=C(0),Ga=0;pa=xa-544|0;xa=pa;o=pa;t=z[e+4>>2];u=C(t+t);r=z[e+8>>2];J=C(u*r);s=z[e>>2];H=C(s+s);A=z[e+12>>2];L=C(H*A);E=C(J-L);z[o+524>>2]=E;J=C(J+L);z[o+516>>2]=J;s=C(C(1)-C(s*H));L=C(t*u);G=C(s-L);z[o+528>>2]=G;O=s;s=C(r+r);F=C(r*s);I=C(O-F);z[o+512>>2]=I;r=C(H*r);u=C(u*A);M=C(r+u);z[o+520>>2]=M;L=C(C(C(1)-L)-F);z[o+496>>2]=L;t=C(H*t);H=C(s*A);F=C(t-H);z[o+508>>2]=F;T=C(t+H);z[o+500>>2]=T;V=C(r-u);z[o+504>>2]=V;Z=z[e+16>>2];z[o+532>>2]=Z;U=z[e+20>>2];z[o+536>>2]=U;Q=z[e+24>>2];z[o+540>>2]=Q;t=z[f+4>>2];u=C(t+t);r=z[f+8>>2];O=C(u*r);s=z[f>>2];H=C(s+s);A=z[f+12>>2];R=C(H*A);$=C(O-R);z[o+476>>2]=$;O=C(O+R);z[o+468>>2]=O;s=C(C(1)-C(s*H));R=C(t*u);aa=C(s-R);z[o+480>>2]=aa;ga=s;s=C(r+r);X=C(r*s);ba=C(ga-X);z[o+464>>2]=ba;r=C(H*r);u=C(u*A);ca=C(r+u);z[o+472>>2]=ca;R=C(C(C(1)-R)-X);z[o+448>>2]=R;t=C(H*t);H=C(s*A);X=C(t-H);z[o+460>>2]=X;da=C(t+H);z[o+452>>2]=da;r=C(r-u);z[o+456>>2]=r;ea=z[f+16>>2];z[o+484>>2]=ea;ha=z[f+20>>2];z[o+488>>2]=ha;t=z[f+24>>2];z[o+492>>2]=t;ga=t;fa=r;r=z[b>>2];t=z[b+4>>2];H=z[b+8>>2];u=z[a>>2];s=z[a+4>>2];A=z[a+8>>2];z[o+440>>2]=C(ga+C(C(C(fa*r)+C(O*t))+C(aa*H)))-C(Q+C(C(C(V*u)+C(J*s))+C(G*A)));z[o+436>>2]=C(ha+C(C(C(da*r)+C(ba*t))+C($*H)))-C(U+C(C(C(T*u)+C(I*s))+C(E*A)));z[o+432>>2]=C(ea+C(C(C(R*r)+C(X*t))+C(ca*H)))-C(Z+C(C(C(L*u)+C(F*s))+C(M*A)));r=z[g>>2];y=o+432|0;Ba[v[a+64>>2]](a,y,o+496|0,i,o+192|0,o+144|0);t=z[o+192>>2];H=z[o+144>>2];Ba[v[b+64>>2]](b,y,o+448|0,k,o+368|0,o+320|0);a:{b:{u=z[o+368>>2];if(!(u>C(r+H))){s=r;r=z[o+320>>2];if(!(t>C(s+r))){break b}}a=0;break a}H=C(H-u);r=C(r-t);z[o+428>>2]=r>H?H:r;t=z[e+8>>2];H=z[e+4>>2];r=z[e+12>>2];u=z[e>>2];A=z[f>>2];R=z[e+16>>2];$=z[f+16>>2];s=C(R-$);F=C(s+s);aa=z[e+20>>2];X=z[f+20>>2];s=C(aa-X);I=C(s+s);J=z[f+4>>2];L=z[f+8>>2];ba=z[e+24>>2];ca=z[f+24>>2];s=C(ba-ca);M=C(s+s);T=C(C(C(C(-A)*F)-C(I*J))-C(L*M));s=z[f+12>>2];U=C(C(s*s)+C(-.5));z[o+412>>2]=C(C(M*U)+C(s*C(C(J*F)-C(A*I))))-C(L*T);z[o+408>>2]=C(C(I*U)+C(s*C(C(A*M)-C(L*F))))-C(J*T);da=C(u*J);ea=C(s*t);ha=C(r*L);ia=C(A*H);G=C(da+C(C(ea-ha)-ia));ma=C(t*A);fa=C(s*H);na=C(r*J);oa=C(L*u);V=C(ma+C(C(fa-na)-oa));Q=C(V+V);ka=C(G*Q);E=C(C(L*t)+C(C(J*H)+C(C(s*r)+C(A*u))));sa=C(H*L);ta=C(s*u);ua=C(r*A);va=C(J*t);O=C(sa+C(C(ta-ua)-va));Z=C(O+O);la=C(E*Z);z[o+396>>2]=ka-la;z[o+388>>2]=la+ka;O=C(C(1)-C(O*Z));ka=C(V*Q);z[o+400>>2]=O-ka;ga=O;O=C(G+G);la=C(G*O);z[o+384>>2]=ga-la;z[o+404>>2]=C(C(F*U)+C(s*C(C(L*I)-C(J*M))))-C(A*T);s=C(G*Z);A=C(E*Q);z[o+392>>2]=s+A;J=C(Z*V);L=C(E*O);z[o+380>>2]=J-L;z[o+376>>2]=s-A;z[o+372>>2]=J+L;z[o+368>>2]=C(C(1)-ka)-la;s=C($-R);J=C(s+s);s=C(X-aa);L=C(s+s);s=C(ca-ba);G=C(s+s);F=C(C(C(C(-u)*J)-C(L*H))-C(t*G));T=C(C(r*r)+C(-.5));z[o+364>>2]=C(C(G*T)+C(r*C(C(H*J)-C(u*L))))-C(t*F);z[o+360>>2]=C(C(L*T)+C(r*C(C(u*G)-C(t*J))))-C(H*F);A=C(va+C(C(ua-ta)-sa));s=C(A+A);I=C(oa+C(C(na-fa)-ma));M=C(I+I);V=C(C(1)-C(A*s));Z=C(I*M);z[o+352>>2]=V-Z;A=C(ia+C(C(ha-ea)-da));U=C(A*M);Q=C(E*s);z[o+348>>2]=U-Q;z[o+340>>2]=Q+U;O=V;V=C(A+A);U=C(A*V);z[o+336>>2]=O-U;z[o+356>>2]=C(C(J*T)+C(r*C(C(L*t)-C(H*G))))-C(u*F);r=C(s*A);t=C(E*M);z[o+344>>2]=r+t;H=C(s*I);u=C(E*V);z[o+332>>2]=H-u;z[o+328>>2]=r-t;z[o+324>>2]=H+u;z[o+320>>2]=C(C(1)-Z)-U;ya=32767;za=32767;y=1;while(1){c:{H=z[g>>2];Ca=y;d:{if(y){v[o>>2]=2139095039;v[o+288>>2]=2139095039;r=z[o+440>>2];t=z[o+432>>2];u=z[o+436>>2];z[o+104>>2]=C(z[o+528>>2]*r)+C(C(z[o+520>>2]*t)+C(u*z[o+524>>2]));z[o+100>>2]=C(r*z[o+516>>2])+C(C(t*z[o+508>>2])+C(u*z[o+512>>2]));z[o+96>>2]=C(r*z[o+504>>2])+C(C(t*z[o+496>>2])+C(u*z[o+500>>2]));z[o+48>>2]=-r;z[o+44>>2]=-u;z[o+40>>2]=-t;if(!uZ(a,b,o+496|0,o+448|0,i,k,o+320|0,o+96|0,o,o+192|0,o+304|0,H,o+40|0)){break c}s=z[o+456>>2];A=z[o+448>>2];J=z[o+452>>2];L=z[o+468>>2];E=z[o+460>>2];G=z[o+464>>2];r=z[o+440>>2];t=z[o+432>>2];u=z[o+436>>2];z[o+48>>2]=-C(C(z[o+480>>2]*r)+C(C(z[o+472>>2]*t)+C(u*z[o+476>>2])));z[o+44>>2]=-C(C(L*r)+C(C(E*t)+C(u*G)));z[o+40>>2]=-C(C(s*r)+C(C(A*t)+C(J*u)));if(!uZ(b,a,o+448|0,o+496|0,k,i,o+368|0,o+40|0,o+288|0,o+144|0,o+272|0,H,o+432|0)){break c}v[o+256>>2]=0;r=z[o>>2];t=z[o+288>>2];e:{if(!(r>t)){u=z[o+196>>2];s=z[o+192>>2];t=z[o+200>>2];break e}v[o+256>>2]=1;u=z[o+148>>2];s=z[o+144>>2];r=t;t=z[o+152>>2]}z[o+424>>2]=t;z[o+420>>2]=u;z[o+416>>2]=s;z[o+428>>2]=r;break d}S=o+368|0;qa=o+272|0;wa=0;y=xa-6336|0;xa=y;N=o+496|0;s=z[N+20>>2];A=z[N+16>>2];J=z[N+32>>2];L=z[N+28>>2];E=z[N+12>>2];G=z[N+24>>2];_=o+432|0;r=z[_+8>>2];t=z[_>>2];u=z[_+4>>2];z[y+6304>>2]=C(z[N+8>>2]*r)+C(C(z[N>>2]*t)+C(z[N+4>>2]*u));z[y+6312>>2]=C(J*r)+C(C(G*t)+C(u*L));z[y+6308>>2]=C(s*r)+C(C(E*t)+C(u*A));ja=y-((v[a+16>>2]<<2)+15&-16)|0;xa=ja;v[y+6296>>2]=2139095039;z[y+3184>>2]=-r;z[y+3180>>2]=-u;z[y+3176>>2]=-t;P=o+448|0;W=o+320|0;Aa=o+304|0;Y=0;f:{if(!vZ(a,b,N,P,i,k,W,y+6304|0,y+6296|0,y+6280|0,Aa,ja,y+6300|0,H,y+3176|0)){break f}s=z[P+20>>2];A=z[P+16>>2];J=z[P+32>>2];L=z[P+28>>2];E=z[P+8>>2];G=z[P>>2];F=z[P+4>>2];I=z[P+12>>2];r=z[_+8>>2];t=z[_+4>>2];M=z[P+24>>2];u=z[_>>2];ra=ja-((v[b+16>>2]<<2)+15&-16)|0;xa=ra;v[y+6272>>2]=2139095039;z[y+3184>>2]=-C(C(J*r)+C(C(M*u)+C(t*L)));z[y+3180>>2]=-C(C(s*r)+C(C(I*u)+C(t*A)));z[y+3176>>2]=-C(C(E*r)+C(C(G*u)+C(F*t)));Y=0;if(!vZ(b,a,P,N,k,i,S,y+3176|0,y+6272|0,y+6256|0,qa,ra,y+6276|0,H,_)){break f}G=z[y+6288>>2];J=z[y+6284>>2];L=z[y+6280>>2];r=z[y+6296>>2];v[o+256>>2]=0;t=z[y+6272>>2];if(t>2];J=z[y+6260>>2];L=z[y+6256>>2];v[o+256>>2]=1;r=t}v[y+3176>>2]=0;v[y+96>>2]=0;Y=v[b+24>>2]+B(v[qa>>2],20)|0;T=z[Y+12>>2];V=z[k+68>>2];Z=z[k+60>>2];U=z[k- -64>>2];Q=z[k+40>>2];O=z[k+44>>2];R=z[k+56>>2];t=z[Y+8>>2];$=z[k+48>>2];u=z[Y>>2];aa=z[k+52>>2];s=z[Y+4>>2];Y=v[a+24>>2]+B(v[Aa>>2],20)|0;X=z[Y+12>>2];ba=z[S+44>>2];ca=z[S+32>>2];da=z[S+20>>2];ea=z[S+40>>2];ha=z[k+36>>2];ia=z[S+8>>2];ma=z[S+36>>2];fa=z[S+24>>2];na=z[S>>2];oa=z[S+12>>2];A=z[Y+8>>2];E=z[Y>>2];F=z[Y+4>>2];I=C(C(z[i+44>>2]*A)+C(C(z[i+36>>2]*E)+C(z[i+40>>2]*F)));M=C(C(z[i+68>>2]*A)+C(C(z[i+60>>2]*E)+C(F*z[i- -64>>2])));E=C(C(z[i+56>>2]*A)+C(C(z[i+48>>2]*E)+C(F*z[i+52>>2])));A=C(C(1)/C(K(C(C(M*M)+C(C(I*I)+C(E*E))))));F=C(I*A);E=C(E*A);I=C(M*A);M=C(C(C(F*z[S+4>>2])+C(E*z[S+16>>2]))+C(I*z[S+28>>2]));z[y+84>>2]=M;fa=C(C(C(F*na)+C(E*oa))+C(I*fa));z[y+80>>2]=fa;E=C(C(C(F*ia)+C(E*da))+C(I*ca));z[y+88>>2]=E;z[y+92>>2]=C(X*A)-C(C(ba*E)+C(C(ma*fa)+C(M*ea)));F=z[W+44>>2];I=z[W+32>>2];M=z[W+20>>2];X=z[W+40>>2];ba=z[W+8>>2];ca=z[W+36>>2];da=z[W+24>>2];ea=z[W>>2];ia=z[W+12>>2];A=C(C(V*t)+C(C(Z*u)+C(s*U)));E=C(C(O*t)+C(C(ha*u)+C(Q*s)));u=C(C(R*t)+C(C($*u)+C(s*aa)));t=C(C(1)/C(K(C(C(A*A)+C(C(E*E)+C(u*u))))));s=C(E*t);u=C(u*t);A=C(A*t);E=C(C(C(s*z[W+4>>2])+C(u*z[W+16>>2]))+C(A*z[W+28>>2]));z[y+68>>2]=E;V=C(C(C(s*ea)+C(u*ia))+C(A*da));z[y+64>>2]=V;u=C(C(C(s*ba)+C(u*M))+C(A*I));z[y+72>>2]=u;z[y+76>>2]=C(T*t)-C(C(F*u)+C(C(ca*V)+C(E*X)));t=z[d+16>>2];u=z[d+20>>2];s=z[c+16>>2];A=z[d+12>>2];E=z[c+12>>2];F=z[d>>2];I=z[d+4>>2];M=z[d+8>>2];T=z[c>>2];V=z[c+4>>2];Z=z[c+8>>2];z[y+60>>2]=z[c+20>>2]+H;z[y+56>>2]=s+H;z[y+36>>2]=u+H;z[y+32>>2]=t+H;z[y+48>>2]=Z-H;z[y+44>>2]=V-H;z[y+40>>2]=T-H;z[y+24>>2]=M-H;z[y+20>>2]=I-H;z[y+16>>2]=F-H;z[y+52>>2]=E+H;z[y+28>>2]=A+H;wZ(y+3176|0,ja,v[y+6300>>2],a,N,y- -64|0,S,y+16|0,H,i);wZ(y+96|0,ra,v[y+6276>>2],b,P,y+80|0,W,y+40|0,H,k);Y=v[y+3176>>2];g:{h:{if(!Y){break h}S=0;ra=v[y+96>>2];if(!ra){break h}Aa=y+96|4;Ga=y+3176|4;wa=1;while(1){W=B(S,12)+Ga|0;ja=0;while(1){u=z[W>>2];qa=B(ja,12)+Aa|0;s=z[qa+4>>2];A=z[qa>>2];F=z[W+4>>2];t=C(C(u*s)-C(A*F));I=z[W+8>>2];E=C(I*A);A=z[qa+8>>2];E=C(E-C(A*u));F=C(C(F*A)-C(s*I));i:{if(!(C(D(t))>C(9.999999974752427e-7)?1:C(D(F))>C(9.999999974752427e-7)|C(D(E))>C(9.999999974752427e-7))){break i}u=C(0);s=C(0);A=C(0);I=C(C(t*t)+C(C(F*F)+C(E*E)));if(I>C(0)){s=t;t=C(C(1)/C(K(I)));A=C(s*t);s=C(E*t);u=C(F*t)}z[y+8>>2]=A;z[y>>2]=u;z[y+4>>2]=s;t=C(C(C(C(-z[_>>2])*u)-C(s*z[_+4>>2]))-C(z[_+8>>2]*A));E=C(C(z[N+32>>2]*A)+C(C(z[N+24>>2]*u)+C(s*z[N+28>>2])));O=C((l(2,v[a+56>>2]|(p(E),j(2))&-2147483648),q())*E);E=C(C(z[N+8>>2]*A)+C(C(z[N>>2]*u)+C(s*z[N+4>>2])));V=C((l(2,v[a+48>>2]|(p(E),j(2))&-2147483648),q())*E);E=C(C(z[N+20>>2]*A)+C(C(z[N+12>>2]*u)+C(s*z[N+16>>2])));E=C(O+C(V+C(E*(l(2,v[a+52>>2]|(p(E),j(2))&-2147483648),q()))));F=z[a+44>>2];O=E>F?E:F;E=C(C(z[P+32>>2]*A)+C(C(z[P+24>>2]*u)+C(s*z[P+28>>2])));V=C((l(2,v[b+56>>2]|(p(E),j(2))&-2147483648),q())*E);E=C(C(z[P+8>>2]*A)+C(C(z[P>>2]*u)+C(s*z[P+4>>2])));u=C(C(z[P+20>>2]*A)+C(C(z[P+12>>2]*u)+C(s*z[P+16>>2])));u=C(V+C(C((l(2,v[b+48>>2]|(p(E),j(2))&-2147483648),q())*E)+C(u*(l(2,v[b+52>>2]|(p(u),j(2))&-2147483648),q()))));s=z[b+44>>2];u=C(O+(u>s?u:s));s=C(t+u);t=C(u-t);if((t>s?s:t)>r){break i}Ba[v[a+64>>2]](a,y,N,i,y+6324|0,y+6320|0);t=z[y+6324>>2];u=z[y+6320>>2];Ba[v[b+64>>2]](b,y,P,k,y+6332|0,y+6328|0);s=z[y+6332>>2];if(s>C(u+H)){break g}A=z[y+6328>>2];if(t>C(A+H)){break g}u=C(u-s);t=C(A-t);t=u>2];J=z[y+4>>2];L=z[y>>2];v[o+256>>2]=2;r=t}ja=ja+1|0;if((ra|0)!=(ja|0)){continue}break}S=S+1|0;wa=Y>>>0>S>>>0;if((S|0)!=(Y|0)){continue}break}}z[o+428>>2]=r;z[o+424>>2]=G;z[o+420>>2]=J;z[o+416>>2]=L}Y=!wa}xa=y+6336|0;if(!(Y&1)){break c}t=z[o+424>>2];u=z[o+420>>2];s=z[o+416>>2]}if(C(C(z[o+440>>2]*t)+C(C(z[o+432>>2]*s)+C(z[o+436>>2]*u)))>2]=t;u=C(-u);z[o+420>>2]=u;s=C(-s);z[o+416>>2]=s}j:{k:{switch(v[o+256>>2]){case 1:y=v[a+68>>2];z[o+200>>2]=C(z[o+528>>2]*t)+C(C(z[o+520>>2]*s)+C(u*z[o+524>>2]));z[o+196>>2]=C(z[o+516>>2]*t)+C(C(z[o+508>>2]*s)+C(u*z[o+512>>2]));z[o+192>>2]=C(z[o+504>>2]*t)+C(C(z[o+496>>2]*s)+C(z[o+500>>2]*u));ya=Ba[y|0](a,i,o+192|0)|0;za=v[o+272>>2];break j;case 2:y=v[a+68>>2];z[o+200>>2]=C(z[o+528>>2]*t)+C(C(z[o+520>>2]*s)+C(u*z[o+524>>2]));z[o+196>>2]=C(z[o+516>>2]*t)+C(C(z[o+508>>2]*s)+C(u*z[o+512>>2]));z[o+192>>2]=C(z[o+504>>2]*t)+C(C(z[o+496>>2]*s)+C(z[o+500>>2]*u));N=o+192|0;ya=Ba[y|0](a,i,N)|0;y=v[b+68>>2];r=C(-s);z[o+200>>2]=C(C(z[o+472>>2]*r)-C(z[o+476>>2]*u))-C(z[o+480>>2]*t);z[o+196>>2]=C(C(z[o+460>>2]*r)-C(z[o+464>>2]*u))-C(z[o+468>>2]*t);z[o+192>>2]=C(C(z[o+448>>2]*r)-C(z[o+452>>2]*u))-C(z[o+456>>2]*t);za=Ba[y|0](b,k,N)|0;break j;case 0:break k;default:break j}}y=v[b+68>>2];ya=v[o+304>>2];r=C(-s);z[o+200>>2]=C(C(z[o+472>>2]*r)-C(z[o+476>>2]*u))-C(z[o+480>>2]*t);z[o+196>>2]=C(C(z[o+460>>2]*r)-C(z[o+464>>2]*u))-C(z[o+468>>2]*t);z[o+192>>2]=C(C(z[o+448>>2]*r)-C(z[o+452>>2]*u))-C(z[o+456>>2]*t);za=Ba[y|0](b,k,o+192|0)|0}r=z[o+428>>2];N=r>=C(0);F=C(-r);P=B(za,20);S=v[b+24>>2];y=v[a+24>>2]+B(ya,20)|0;l:{if(m){W=v[y>>2];_=v[y+4>>2];wa=v[y+12>>2];v[o+296>>2]=v[y+8>>2];v[o+300>>2]=wa;v[o+288>>2]=W;v[o+292>>2]=_;r=z[y>>2];A=z[o+504>>2];H=z[y+4>>2];E=z[o+516>>2];G=z[y+8>>2];J=z[o+528>>2];V=C(C(C(r*A)+C(H*E))+C(G*J));L=z[o+496>>2];I=z[o+508>>2];M=z[o+520>>2];Z=C(C(C(r*L)+C(H*I))+C(G*M));T=z[o+500>>2];U=z[o+512>>2];Q=z[o+524>>2];r=C(C(C(r*T)+C(H*U))+C(G*Q));break l}r=z[y+8>>2];H=z[y>>2];A=z[y+4>>2];J=C(C(z[i+68>>2]*r)+C(C(z[i+60>>2]*H)+C(A*z[i+64>>2])));L=C(C(z[i+44>>2]*r)+C(C(z[i+36>>2]*H)+C(z[i+40>>2]*A)));H=C(C(z[i+56>>2]*r)+C(C(z[i+48>>2]*H)+C(A*z[i+52>>2])));r=C(C(1)/C(K(C(C(J*J)+C(C(L*L)+C(H*H))))));z[o+300>>2]=z[y+12>>2]*r;H=C(H*r);z[o+292>>2]=H;E=z[o+516>>2];G=C(L*r);z[o+288>>2]=G;A=z[o+504>>2];r=C(J*r);z[o+296>>2]=r;J=z[o+528>>2];V=C(C(C(G*A)+C(H*E))+C(r*J));L=z[o+496>>2];I=z[o+508>>2];M=z[o+520>>2];Z=C(C(C(L*G)+C(H*I))+C(r*M));T=z[o+500>>2];U=z[o+512>>2];Q=z[o+524>>2];r=C(C(C(G*T)+C(H*U))+C(r*Q))}$=N?C(0):F;N=P+S|0;z[o+312>>2]=V;H=r;z[o+308>>2]=r;z[o+304>>2]=Z;m:{if(n){P=v[N>>2];S=v[N+4>>2];W=v[N+12>>2];v[o+264>>2]=v[N+8>>2];v[o+268>>2]=W;v[o+256>>2]=P;v[o+260>>2]=S;r=z[N>>2];G=z[N+4>>2];O=C(C(r*z[o+456>>2])+C(G*z[o+468>>2]));R=C(C(r*z[o+452>>2])+C(G*z[o+464>>2]));G=C(C(r*z[o+448>>2])+C(G*z[o+460>>2]));r=z[N+8>>2];break m}r=z[N+8>>2];G=z[N>>2];F=z[N+4>>2];O=C(C(z[k+68>>2]*r)+C(C(z[k+60>>2]*G)+C(F*z[k+64>>2])));R=C(C(z[k+44>>2]*r)+C(C(z[k+36>>2]*G)+C(z[k+40>>2]*F)));F=C(C(z[k+56>>2]*r)+C(C(z[k+48>>2]*G)+C(F*z[k+52>>2])));G=C(C(1)/C(K(C(C(O*O)+C(C(R*R)+C(F*F))))));z[o+268>>2]=z[N+12>>2]*G;r=C(O*G);z[o+264>>2]=r;F=C(F*G);z[o+260>>2]=F;O=z[o+468>>2];G=C(R*G);z[o+256>>2]=G;O=C(C(G*z[o+456>>2])+C(F*O));R=C(C(G*z[o+452>>2])+C(F*z[o+464>>2]));G=C(C(z[o+448>>2]*G)+C(F*z[o+460>>2]))}ca=C(O+C(r*z[o+480>>2]));z[o+280>>2]=ca;da=C(G+C(r*z[o+472>>2]));z[o+272>>2]=da;ea=C(R+C(r*z[o+476>>2]));z[o+276>>2]=ea;O=C($+z[g+4>>2]);r=C(-O);G=C(t*r);z[o+248>>2]=G;F=C(u*r);z[o+244>>2]=F;r=C(s*r);z[o+240>>2]=r;aa=z[o+540>>2];$=z[o+536>>2];R=z[o+532>>2];z[o+224>>2]=J;z[o+220>>2]=Q;z[o+216>>2]=M;z[o+212>>2]=E;z[o+208>>2]=U;z[o+204>>2]=I;z[o+200>>2]=A;z[o+196>>2]=T;z[o+192>>2]=L;R=C(R-r);z[o+228>>2]=R;$=C($-F);z[o+232>>2]=$;aa=C(aa-G);z[o+236>>2]=aa;A=z[e+8>>2];J=z[e+4>>2];r=z[e+12>>2];L=z[e>>2];G=z[f>>2];ha=z[f+16>>2];E=C(R-ha);M=C(E+E);ia=z[f+20>>2];E=C($-ia);T=C(E+E);F=z[f+4>>2];I=z[f+8>>2];ma=z[f+24>>2];E=C(aa-ma);U=C(E+E);Q=C(C(C(C(-G)*M)-C(T*F))-C(I*U));E=z[f+12>>2];X=C(C(E*E)+C(-.5));z[o+188>>2]=C(C(U*X)+C(E*C(C(F*M)-C(G*T))))-C(I*Q);z[o+184>>2]=C(C(T*X)+C(E*C(C(G*U)-C(I*M))))-C(F*Q);z[o+180>>2]=C(C(M*X)+C(E*C(C(I*T)-C(F*U))))-C(G*Q);fa=C(L*F);na=C(E*A);oa=C(r*I);ka=C(G*J);T=C(fa+C(C(na-oa)-ka));sa=C(A*G);ta=C(E*J);ua=C(r*F);va=C(I*L);U=C(sa+C(C(ta-ua)-va));X=C(U+U);Q=C(T*X);M=C(C(I*A)+C(C(F*J)+C(C(E*r)+C(L*G))));la=C(J*I);ga=C(E*L);Da=C(r*G);Ea=C(F*A);ba=C(la+C(C(ga-Da)-Ea));E=C(ba+ba);G=C(M*E);z[o+172>>2]=Q-G;F=C(T*E);I=C(M*X);z[o+168>>2]=F+I;z[o+164>>2]=Q+G;G=C(U*E);Fa=C(T+T);Q=C(M*Fa);z[o+156>>2]=G-Q;z[o+152>>2]=F-I;z[o+148>>2]=G+Q;G=C(ha-R);G=C(G+G);F=C(ia-$);F=C(F+F);I=C(ma-aa);I=C(I+I);Q=C(C(C(C(-L)*G)-C(F*J))-C(A*I));R=C(C(r*r)+C(-.5));z[o+140>>2]=C(C(I*R)+C(r*C(C(J*G)-C(L*F))))-C(A*Q);z[o+136>>2]=C(C(F*R)+C(r*C(C(L*I)-C(A*G))))-C(J*Q);z[o+132>>2]=C(C(G*R)+C(r*C(C(A*F)-C(J*I))))-C(L*Q);r=C(ka+C(C(oa-na)-fa));A=C(va+C(C(ua-ta)-sa));L=C(A+A);F=C(r*L);G=C(Ea+C(C(Da-ga)-la));J=C(G+G);I=C(M*J);z[o+124>>2]=F-I;Q=C(r*J);R=C(M*L);z[o+120>>2]=Q+R;z[o+116>>2]=F+I;F=C(A*J);I=C(r+r);M=C(M*I);z[o+108>>2]=F-M;z[o+104>>2]=Q-R;z[o+100>>2]=F+M;E=C(C(1)-C(ba*E));F=C(U*X);z[o+176>>2]=E-F;ga=E;E=C(T*Fa);z[o+160>>2]=ga-E;z[o+144>>2]=C(C(1)-F)-E;J=C(C(1)-C(G*J));A=C(A*L);z[o+128>>2]=J-A;r=C(r*I);z[o+112>>2]=J-r;z[o+96>>2]=C(C(1)-A)-r;S=w[y+18|0];W=0;P=0;_=0;if(!m){P=pa-(B(S,12)+15&8176)|0;xa=P;_=P-(S+15&496)|0;pa=_;xa=_}VZ(o+92|0,o+88|0,P,_,m,v[a+28>>2],v[a+32>>2]+x[y+16>>1]|0,S,i);S=w[N+18|0];P=0;if(!n){W=pa-(B(S,12)+15&8176)|0;xa=W;P=W-(S+15&496)|0;pa=P;xa=P}VZ(o+84|0,o+80|0,W,P,n,v[b+28>>2],v[b+32>>2]+x[N+16>>1]|0,S,k);HZ(o+40|0,o+288|0);HZ(o,o+256|0);n:{o:{if(C(D(C(C(V*t)+C(C(Z*s)+C(H*u)))))>C(D(C(C(ca*t)+C(C(da*s)+C(u*ea)))))){if(IZ(w[y+18|0],v[o+92>>2],v[o+88>>2],o+192|0,o+288|0,o+40|0,w[N+18|0],v[o+84>>2],v[o+80>>2],o+448|0,o+256|0,o,o+304|0,o+144|0,o+96|0,-1,h,1,o+240|0,O)){break o}break n}if(!IZ(w[N+18|0],v[o+84>>2],v[o+80>>2],o+448|0,o+256|0,o,w[y+18|0],v[o+92>>2],v[o+88>>2],o+192|0,o+288|0,o+40|0,o+272|0,o+96|0,o+144|0,-1,h,0,o+240|0,O)){break n}}a=1;break a}y=Ca-1|0;if(Ca){continue}}break}a=0}xa=o+544|0;return a}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=C(0),q=C(0),r=C(0),s=0,t=0,y=0;e=v[a+28>>2];s=v[a+20>>2];a=0;d=xa-48|0;xa=d;b=v[e+1016>>2];t=e+1160|0,y=Ba[v[v[b>>2]+4>>2]](b)|0,v[t>>2]=y;if(w[e+2360|0]&2){if(w[e+4620|0]){a:{if(!w[e+4620|0]){break a}b=v[e+2168>>2];n=v[b+8>>2];if(!n){break a}i=v[b+4>>2];while(1){c=v[i+(a<<2)>>2];f=v[c+16>>2];b=x[f+10>>1];b:{if(b&2){a=a+1|0;break b}a=a+1|0;if(!(b&8)|!x[f+8>>1]){break b}j=v[c+12>>2];b=v[v[e+2168>>2]+44>>2]+v[f>>2]|0;c=v[v[c+8>>2]+44>>2];c:{if(w[c+9|0]){z[b+12>>2]=z[c+80>>2];z[b+16>>2]=z[c+84>>2];z[b+20>>2]=z[c+88>>2];p=z[c+96>>2];q=z[c+104>>2];r=z[c+100>>2];break c}v[b+20>>2]=0;v[b+12>>2]=0;v[b+16>>2]=0;p=C(0);q=C(0);r=C(0)}z[b+44>>2]=q;z[b+40>>2]=r;z[b+36>>2]=p;c=v[j+44>>2];d:{if(w[c+9|0]){z[b+24>>2]=z[c+80>>2];z[b+28>>2]=z[c+84>>2];z[b+32>>2]=z[c+88>>2];p=z[c+96>>2];q=z[c+104>>2];r=z[c+100>>2];break d}v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;p=C(0);q=C(0);r=C(0)}z[b+56>>2]=q;z[b+52>>2]=r;z[b+48>>2]=p;u[f+10>>1]=x[f+10>>1]&65527}if((a|0)!=(n|0)){continue}break}}}a=v[e+3064>>2];if((a|0)!=2){n=e+3060|0;if((a|0)>0){f=v[n>>2];a=f+B(a,40)|0;while(1){Ba[v[v[f>>2]>>2]](f)|0;f=f+40|0;if(a>>>0>f>>>0){continue}break}}v[e+3064>>2]=0;a=v[e+3004>>2];if((a|0)>0){f=v[e+3e3>>2];a=f+B(a,40)|0;while(1){Ba[v[v[f>>2]>>2]](f)|0;f=f+40|0;if(a>>>0>f>>>0){continue}break}}v[e+3004>>2]=0;a=v[e+3052>>2];if((a|0)>0){f=v[e+3048>>2];a=f+B(a,40)|0;while(1){Ba[v[v[f>>2]>>2]](f)|0;f=f+40|0;if(a>>>0>f>>>0){continue}break}}v[e+3052>>2]=0;a=v[e+3040>>2];if((a|0)>0){f=v[e+3036>>2];a=f+B(a,40)|0;while(1){Ba[v[v[f>>2]>>2]](f)|0;f=f+40|0;if(a>>>0>f>>>0){continue}break}}v[e+3040>>2]=0;if(!(v[e+3068>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?50073:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;a=v[n+4>>2];e:{if((a|0)<=0){break e}f=c+B(a,40)|0;b=v[n>>2];a=c;while(1){v[a>>2]=134740;i=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=i;v[a+16>>2]=v[b+16>>2];v[a+20>>2]=v[b+20>>2];i=v[b+24>>2];v[a>>2]=138692;v[a+24>>2]=i;i=v[b+32>>2];v[a+28>>2]=v[b+28>>2];v[a+32>>2]=i;b=b+40|0;a=a+40|0;if(f>>>0>a>>>0){continue}break}b=v[n+4>>2];if((b|0)<=0){break e}a=v[n>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}f:{if(v[n+8>>2]<0){break f}a=v[n>>2];if(!a){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[n+8>>2]=2;v[n>>2]=c}i=e+3e3|0;if(!(v[e+3008>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?49837:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;a=v[i+4>>2];g:{if((a|0)<=0){break g}f=c+B(a,40)|0;b=v[i>>2];a=c;while(1){v[a>>2]=134740;j=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=j;v[a+16>>2]=v[b+16>>2];v[a+20>>2]=v[b+20>>2];j=v[b+24>>2];v[a>>2]=138768;v[a+24>>2]=j;j=v[b+32>>2];v[a+28>>2]=v[b+28>>2];v[a+32>>2]=j;b=b+40|0;a=a+40|0;if(f>>>0>a>>>0){continue}break}b=v[i+4>>2];if((b|0)<=0){break g}a=v[i>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}h:{if(v[i+8>>2]<0){break h}a=v[i>>2];if(!a){break h}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[i+8>>2]=2;v[i>>2]=c}j=e+3012|0;if(!(v[e+3020>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?53835:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;a=v[j+4>>2];i:{if((a|0)<=0){break i}f=c+B(a,40)|0;a=v[j>>2];b=c;while(1){v[b>>2]=134740;k=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=k;v[b+16>>2]=v[a+16>>2];v[b+20>>2]=v[a+20>>2];k=v[a+24>>2];v[b>>2]=138844;v[b+24>>2]=k;k=v[a+32>>2];v[b+28>>2]=v[a+28>>2];v[b+32>>2]=k;a=a+40|0;b=b+40|0;if(f>>>0>b>>>0){continue}break}a=v[j+4>>2];if((a|0)<=0){break i}b=v[j>>2];a=b+B(a,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(a>>>0>b>>>0){continue}break}}j:{if(v[j+8>>2]<0){break j}a=v[j>>2];if(!a){break j}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[j+8>>2]=2;v[j>>2]=c}k=e+3024|0;if(!(v[e+3032>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?53587:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;b=v[k+4>>2];k:{if((b|0)<=0){break k}c=a+B(b,40)|0;f=v[k>>2];b=a;while(1){v[b>>2]=134740;l=v[f+12>>2];v[b+8>>2]=v[f+8>>2];v[b+12>>2]=l;v[b+16>>2]=v[f+16>>2];v[b+20>>2]=v[f+20>>2];l=v[f+24>>2];v[b>>2]=138920;v[b+24>>2]=l;l=v[f+32>>2];v[b+28>>2]=v[f+28>>2];v[b+32>>2]=l;f=f+40|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}c=v[k+4>>2];if((c|0)<=0){break k}b=v[k>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}l:{if(v[k+8>>2]<0){break l}b=v[k>>2];if(!b){break l}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[k+8>>2]=2;v[k>>2]=a}l=e+3048|0;if(!(v[e+3056>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?50809:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;a=v[l+4>>2];m:{if((a|0)<=0){break m}f=c+B(a,40)|0;b=v[l>>2];a=c;while(1){v[a>>2]=134740;m=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=m;v[a+16>>2]=v[b+16>>2];v[a+20>>2]=v[b+20>>2];m=v[b+24>>2];v[a>>2]=138996;v[a+24>>2]=m;m=v[b+32>>2];v[a+28>>2]=v[b+28>>2];v[a+32>>2]=m;b=b+40|0;a=a+40|0;if(f>>>0>a>>>0){continue}break}b=v[l+4>>2];if((b|0)<=0){break m}a=v[l>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}n:{if(v[l+8>>2]<0){break n}a=v[l>>2];if(!a){break n}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[l+8>>2]=2;v[l>>2]=c}m=e+3036|0;if(!(v[e+3044>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?51033:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;a=v[m+4>>2];o:{if((a|0)<=0){break o}c=b+B(a,40)|0;a=v[m>>2];f=b;while(1){v[f>>2]=134740;h=v[a+12>>2];v[f+8>>2]=v[a+8>>2];v[f+12>>2]=h;v[f+16>>2]=v[a+16>>2];v[f+20>>2]=v[a+20>>2];h=v[a+24>>2];v[f>>2]=139072;v[f+24>>2]=h;h=v[a+32>>2];v[f+28>>2]=v[a+28>>2];v[f+32>>2]=h;a=a+40|0;f=f+40|0;if(c>>>0>f>>>0){continue}break}a=v[m+4>>2];if((a|0)<=0){break o}f=v[m>>2];a=f+B(a,40)|0;while(1){Ba[v[v[f>>2]>>2]](f)|0;f=f+40|0;if(a>>>0>f>>>0){continue}break}}p:{if(v[m+8>>2]<0){break p}a=v[m>>2];if(!a){break p}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a)}v[m+8>>2]=2;v[m>>2]=b}f=1;while(1){a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=3396;v[d+36>>2]=e;v[d+8>>2]=138692;a=v[e+3064>>2];q:{if(a>>>0>=(v[e+3068>>2]&2147483647)>>>0){a=0;b=v[n+8>>2];h=b&2147483647?b<<1:1;r:{if(!h){break r}b=B(h,40);if(!b){break r}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?50073:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[n+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[n>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=138692;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[n+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=138692;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[n+4>>2];if((c|0)>0){b=v[n>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}s:{if(v[n+8>>2]<0){break s}b=v[n>>2];if(!b){break s}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[n+8>>2]=h;v[n>>2]=a;v[n+4>>2]=v[n+4>>2]+1;break q}a=v[e+3060>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=138692;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3064>>2]=v[e+3064>>2]+1}a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=3368;v[d+36>>2]=e;v[d+8>>2]=138768;a=v[e+3004>>2];t:{if(a>>>0>=(v[e+3008>>2]&2147483647)>>>0){a=0;b=v[i+8>>2];h=b&2147483647?b<<1:1;u:{if(!h){break u}b=B(h,40);if(!b){break u}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?49837:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[i+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[i>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=138768;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[i+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=138768;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[i+4>>2];if((c|0)>0){b=v[i>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}v:{if(v[i+8>>2]<0){break v}b=v[i>>2];if(!b){break v}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[i+8>>2]=h;v[i>>2]=a;v[i+4>>2]=v[i+4>>2]+1;break t}a=v[e+3e3>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=138768;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3004>>2]=v[e+3004>>2]+1}a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=64032;v[d+36>>2]=e;v[d+8>>2]=138844;a=v[e+3016>>2];w:{if(a>>>0>=(v[e+3020>>2]&2147483647)>>>0){a=0;b=v[j+8>>2];h=b&2147483647?b<<1:1;x:{if(!h){break x}b=B(h,40);if(!b){break x}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?53835:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[j+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[j>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=138844;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[j+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=138844;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[j+4>>2];if((c|0)>0){b=v[j>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}y:{if(v[j+8>>2]<0){break y}b=v[j>>2];if(!b){break y}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[j+8>>2]=h;v[j>>2]=a;v[j+4>>2]=v[j+4>>2]+1;break w}a=v[e+3012>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=138844;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3016>>2]=v[e+3016>>2]+1}a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=63884;v[d+36>>2]=e;v[d+8>>2]=138920;a=v[e+3028>>2];z:{if(a>>>0>=(v[e+3032>>2]&2147483647)>>>0){a=0;b=v[k+8>>2];h=b&2147483647?b<<1:1;A:{if(!h){break A}b=B(h,40);if(!b){break A}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?53587:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[k+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[k>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=138920;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[k+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=138920;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[k+4>>2];if((c|0)>0){b=v[k>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}B:{if(v[k+8>>2]<0){break B}b=v[k>>2];if(!b){break B}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[k+8>>2]=h;v[k>>2]=a;v[k+4>>2]=v[k+4>>2]+1;break z}a=v[e+3024>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=138920;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3028>>2]=v[e+3028>>2]+1}a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=21735;v[d+36>>2]=e;v[d+8>>2]=138996;a=v[e+3052>>2];C:{if(a>>>0>=(v[e+3056>>2]&2147483647)>>>0){a=0;b=v[l+8>>2];h=b&2147483647?b<<1:1;D:{if(!h){break D}b=B(h,40);if(!b){break D}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?50809:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[l+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[l>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=138996;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[l+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=138996;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[l+4>>2];if((c|0)>0){b=v[l>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}E:{if(v[l+8>>2]<0){break E}b=v[l>>2];if(!b){break E}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[l+8>>2]=h;v[l>>2]=a;v[l+4>>2]=v[l+4>>2]+1;break C}a=v[e+3048>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=138996;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3052>>2]=v[e+3052>>2]+1}a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=63060;v[d+36>>2]=e;v[d+8>>2]=139072;a=v[e+3040>>2];F:{if(a>>>0>=(v[e+3044>>2]&2147483647)>>>0){a=0;b=v[m+8>>2];h=b&2147483647?b<<1:1;G:{if(!h){break G}b=B(h,40);if(!b){break G}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?51033:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[m+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[m>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=139072;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[m+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=139072;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[m+4>>2];if((c|0)>0){b=v[m>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}H:{if(v[m+8>>2]<0){break H}b=v[m>>2];if(!b){break H}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[m+8>>2]=h;v[m>>2]=a;v[m+4>>2]=v[m+4>>2]+1;break F}a=v[e+3036>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=139072;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3040>>2]=v[e+3040>>2]+1}a=f;f=0;if(a){continue}break}}yK(v[e+976>>2]);a=v[e+988>>2];v[a+128>>2]=0;v[a+132>>2]=0;f=v[e+3048>>2];v[f+20>>2]=s;v[f+24>>2]=1;if(s){Ba[v[v[s>>2]+16>>2]](s);v[f+16>>2]=v[v[f+20>>2]+16>>2];f=v[e+3048>>2];a=v[e+3036>>2]}else{a=v[e+3036>>2]}v[a+20>>2]=f;v[a+24>>2]=1;Ba[v[v[f>>2]+16>>2]](f);v[a+16>>2]=v[v[a+20>>2]+16>>2];a=v[e+3048>>2];Ba[v[v[a>>2]+20>>2]](a);a=v[e+3036>>2];Ba[v[v[a>>2]+20>>2]](a)}xa=d+48|0}function In(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,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=C(0);E=v[37389];g=xa-16|0;xa=g;a:{b:{f=b;c:{if(!qX(77,69,83,72,g+12|0,g+11|0,f)){break c}a=v[g+12>>2];if(a>>>0>=14){o=gX(w[g+11|0],f);a=v[g+12>>2]}if(a>>>0<=9){a9(v[37696],32,5452,152,64989,0);a=0;break a}n=gX(w[g+11|0],f);if(y[g+12>>2]<=12){hX(w[g+11|0],f)}d:{if(!o){a=v[37696];b=a+12|0;e=(G=b,H=192,I=Ba[v[v[a>>2]+20>>2]](a)|0?47613:63804,J=5452,K=170,F=v[v[b>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0);v[e+44>>2]=0;v[e+48>>2]=0;v[e+20>>2]=2122317823;v[e+24>>2]=2122317823;v[e+12>>2]=0;v[e+16>>2]=0;a=0;t[e+8|0]=0;v[e>>2]=140672;v[e+36>>2]=-25165825;v[e+40>>2]=-25165825;v[e+28>>2]=2122317823;v[e+32>>2]=-25165825;v[e+52>>2]=0;v[e+56>>2]=0;v[e+60>>2]=0;v[e+64>>2]=0;v[e+68>>2]=0;v[e+72>>2]=0;v[e+76>>2]=0;v[e+80>>2]=0;v[e+84>>2]=0;v[e+180>>2]=0;v[e+184>>2]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=4;break d}a=1;if((o|0)!=1){break c}b=v[37696];e=b+12|0;e=(K=e,J=172,I=Ba[v[v[b>>2]+20>>2]](b)|0?47743:63804,H=5452,G=172,F=v[v[e>>2]+8>>2],Ba[F](K|0,J|0,I|0,H|0,G|0)|0);v[e+44>>2]=0;v[e+48>>2]=0;v[e+20>>2]=2122317823;v[e+24>>2]=2122317823;v[e+12>>2]=0;v[e+16>>2]=0;t[e+8|0]=0;v[e>>2]=140756;v[e+36>>2]=-25165825;v[e+40>>2]=-25165825;v[e+28>>2]=2122317823;v[e+32>>2]=-25165825;v[e+52>>2]=0;v[e+56>>2]=0;v[e+60>>2]=0;v[e+64>>2]=0;v[e+68>>2]=0;v[e+72>>2]=0;v[e+76>>2]=0;v[e+80>>2]=0;v[e+84>>2]=0;b=e+88|0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;y$(e+112|0)}v[e+4>>2]=a;a=gX(w[g+11|0],f);b=B(a,12)+12|0;if(b){j=v[37696]+12|0;j=Ba[v[v[j>>2]+8>>2]](j,b,24422,19733,148)|0}else{j=0}v[e+12>>2]=a;v[e+16>>2]=j;r=gX(w[g+11|0],f);a=4;s=n&32;if(!(!(n&12)|y[e+12>>2]>65535)){t[e+8|0]=w[e+8|0]|2;a=2}a=B(B(a,r),3);e:{f:{if(!a){v[e+72>>2]=0;a=0;b=0;if(s){break f}break e}b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,a,24422,19733,228)|0;v[e+72>>2]=b;if(!s){break e}b=v[37696]+12|0;a=Ba[v[v[b>>2]+8>>2]](b,a,24422,19733,230)|0;b=v[e+72>>2]}v[e+56>>2]=a}v[e+68>>2]=r;Ba[v[v[f>>2]>>2]](f,j,B(v[e+12>>2],12))|0;if(!(!w[g+11|0]|!v[e+12>>2])){while(1){a=B(d,12)+j|0;i=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=i;i=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=i;i=w[a+4|0];t[a+4|0]=w[a+7|0];t[a+7|0]=i;i=w[a+5|0];t[a+5|0]=w[a+6|0];t[a+6|0]=i;i=w[a+8|0];t[a+8|0]=w[a+11|0];t[a+11|0]=i;i=w[a+10|0];t[a+10|0]=w[a+9|0];t[a+9|0]=i;d=d+1|0;if(d>>>0>2]){continue}break}}q=v[e+68>>2];i=B(q,3);D=n&4;g:{if(D){if(w[e+8|0]&2){if(!i){break g}a=b;if((i|0)!=1){c=i&-2;d=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a>>1]=w[g+4|0];Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a+2>>1]=w[g+4|0];a=a+4|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(i&1)){break g}Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a>>1]=w[g+4|0];break g}if(!i){break g}a=b;if((i|0)!=1){c=i&-2;d=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a>>2]=w[g+4|0];Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a+4>>2]=w[g+4|0];a=a+8|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(i&1)){break g}Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a>>2]=w[g+4|0];break g}a=w[e+8|0]&2;if(n&8){if(a){Ba[v[v[f>>2]>>2]](f,b,B(q,6))|0;if(!w[g+11|0]|!i){break g}a=0;if(i-1>>>0>=3){k=i&-4;while(1){d=a<<1;h=d+b|0;l=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=l;h=(d|2)+b|0;l=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=l;h=(d|4)+b|0;l=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=l;d=(d|6)+b|0;h=w[d+1|0];t[d+1|0]=w[d|0];t[d|0]=h;a=a+4|0;m=m+4|0;if((k|0)!=(m|0)){continue}break}}h=i&3;if(!h){break g}while(1){d=(a<<1)+b|0;k=w[d+1|0];t[d+1|0]=w[d|0];t[d|0]=k;a=a+1|0;c=c+1|0;if((h|0)!=(c|0)){continue}break}break g}if(!i){break g}d=0;a=b;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,2)|0;if(w[g+11|0]){c=w[g+5|0];t[g+5|0]=w[g+4|0];t[g+4|0]=c}v[a>>2]=x[g+4>>1];a=a+4|0;d=d+1|0;if((i|0)!=(d|0)){continue}break}break g}if(a){if(!i){break g}d=0;a=b;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,4)|0;if(w[g+11|0]){c=w[g+7|0];t[g+7|0]=w[g+4|0];t[g+4|0]=c;c=w[g+5|0];t[g+5|0]=w[g+6|0];t[g+6|0]=c}u[a>>1]=v[g+4>>2];a=a+2|0;d=d+1|0;if((i|0)!=(d|0)){continue}break}break g}Ba[v[v[f>>2]>>2]](f,b,B(q,12))|0;if(!w[g+11|0]|!i){break g}d=0;if((i|0)!=1){h=i&-2;while(1){k=d<<2;a=k+b|0;l=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=l;l=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=l;a=(k|4)+b|0;k=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=k;k=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=k;d=d+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(i&1)){break g}a=(d<<2)+b|0;c=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=c;c=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=c}h:{if(!(n&1)){break h}a=v[e+68>>2];c=a+a|0;c=a>>>0>c>>>0?-1:c;i:{if(!c){c=0;break i}a=v[37696];d=a+12|0;c=(G=d,H=c,I=Ba[v[v[a>>2]+20>>2]](a)|0?27439:63804,J=19733,K=239,F=v[v[d>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0);a=v[e+68>>2]}v[e+80>>2]=c;Ba[v[v[f>>2]>>2]](f,c,a<<1)|0;if(!w[g+11|0]|!v[e+68>>2]){break h}d=0;while(1){a=(d<<1)+c|0;h=w[a+1|0];t[a+1|0]=w[a|0];t[a|0]=h;d=d+1|0;if(d>>>0>2]){continue}break}}if(n&2){a=v[e+68>>2];c=(a|0)!=(a&1073741823)?-1:a<<2;if(c){a=v[37696];d=a+12|0;a=(K=d,J=c,I=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804,H=19733,G=215,F=v[v[d>>2]+8>>2],Ba[F](K|0,J|0,I|0,H|0,G|0)|0)}else{a=0}v[e+48>>2]=a;c=gX(w[g+11|0],f);k=v[e+68>>2];h=w[g+11|0];d=xa-16|0;xa=d;j:{if(c>>>0<=255){if(!k){break j}c=0;if((k|0)!=1){l=k&-2;h=0;while(1){Ba[v[v[f>>2]>>2]](f,d+13|0,1)|0;m=c<<2;v[m+a>>2]=w[d+13|0];Ba[v[v[f>>2]>>2]](f,d+13|0,1)|0;v[a+(m|4)>>2]=w[d+13|0];c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(k&1)){break j}Ba[v[v[f>>2]>>2]](f,d+13|0,1)|0;v[a+(c<<2)>>2]=w[d+13|0];break j}if(c>>>0<=65535){if(!k){break j}if(!h){c=0;if((k|0)!=1){l=k&-2;h=0;while(1){Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;m=c<<2;v[m+a>>2]=x[d+14>>1];Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;v[a+(m|4)>>2]=x[d+14>>1];c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(k&1)){break j}Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;v[a+(c<<2)>>2]=x[d+14>>1];break j}c=0;if((k|0)!=1){l=k&-2;h=0;while(1){Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;m=w[d+15|0];t[d+15|0]=w[d+14|0];t[d+14|0]=m;m=c<<2;v[m+a>>2]=x[d+14>>1];Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;p=w[d+15|0];t[d+15|0]=w[d+14|0];t[d+14|0]=p;v[a+(m|4)>>2]=x[d+14>>1];c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(k&1)){break j}Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;h=w[d+15|0];t[d+15|0]=w[d+14|0];t[d+14|0]=h;v[a+(c<<2)>>2]=x[d+14>>1];break j}Ba[v[v[f>>2]>>2]](f,a,k<<2)|0;if(!k|!h){break j}c=0;if((k|0)!=1){m=k&-2;h=0;while(1){p=c<<2;l=p+a|0;A=w[l+3|0];t[l+3|0]=w[l|0];t[l|0]=A;A=w[l+1|0];t[l+1|0]=w[l+2|0];t[l+2|0]=A;l=a+(p|4)|0;p=w[l+3|0];t[l+3|0]=w[l|0];t[l|0]=p;p=w[l+1|0];t[l+1|0]=w[l+2|0];t[l+2|0]=p;c=c+2|0;h=h+2|0;if((m|0)!=(h|0)){continue}break}}if(!(k&1)){break j}a=a+(c<<2)|0;c=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=c;c=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=c}xa=d+16|0}k:{if(!(n&16)){break k}d=v[e+68>>2];a=B(d,3);c=(a|0)!=(a&1073741823)?-1:a<<2;l:{if(!c){c=0;break l}a=v[37696];d=a+12|0;c=(G=d,H=c,I=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804,J=19733,K=206,F=v[v[d>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0);d=v[e+68>>2]}v[e+52>>2]=c;t[e+8|0]=w[e+8|0]|4;Ba[v[v[f>>2]>>2]](f,c,B(d,12))|0;if(!w[g+11|0]|!B(v[e+68>>2],3)){break k}d=0;while(1){a=(d<<2)+c|0;h=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=h;h=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=h;d=d+1|0;if(d>>>0>2],3)>>>0){continue}break}}m:{if(!o){b=w[g+11|0];h=0;j=xa-16|0;xa=j;c=e+96|0;n:{if(t[c+84|0]&1){break n}a=v[c+88>>2];if(!a){break n}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,a-v[a-4>>2]|0);v[c+88>>2]=0}eX(j+15|0,j+14|0,j+13|0,j+12|0,f);o:{if(w[j+15|0]!=82|w[j+14|0]!=84|(w[j+13|0]!=82|w[j+12|0]!=69)){break o}a=1;d=gX(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 o}}lX(c,4,a,f);lX(c+16|0,4,a,f);lX(c+32|0,4,a,f);lX(c+48|0,4,a,f);F=c,K=gX(a,f),v[F+64>>2]=K;F=c,K=gX(a,f),v[F+68>>2]=K;F=c,K=gX(a,f),v[F+72>>2]=K;F=c,K=gX(a,f),v[F+76>>2]=K;F=c,K=gX(a,f),v[F+80>>2]=K;gX(a,f);b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,B(v[c+80>>2],112)+131|0,24422,12041,87)|0;if(b){h=b+131&-128;v[h-4>>2]=h-b}v[c+88>>2]=h;if(!v[c+80>>2]){h=1;break o}d=0;while(1){b=B(d,112);lX(b+v[c+88>>2]|0,4,a,f);lX((b+v[c+88>>2]|0)+16|0,4,a,f);lX((b+v[c+88>>2]|0)+32|0,4,a,f);lX((b+v[c+88>>2]|0)+48|0,4,a,f);lX((b+v[c+88>>2]|0)- -64|0,4,a,f);lX((b+v[c+88>>2]|0)+80|0,4,a,f);lX((b+v[c+88>>2]|0)+96|0,4,a,f);h=1;d=d+1|0;if(d>>>0>2]){continue}break}}xa=j+16|0;if(h){break m}a9(v[37696],32,5452,303,66290,0);Ba[v[v[e>>2]+4>>2]](e);a=0;break a}if((o|0)!=1){break m}d=w[g+11|0];o=0;h=xa-16|0;xa=h;c=e+112|0;p:{if(w[c+56|0]){break p}a=v[c+24>>2];if(!a){break p}k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,a)}v[c+20>>2]=0;v[c+24>>2]=0;v[c>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;u[c+50>>1]=0;u[c+52>>1]=0;u[c+54>>1]=0;u[c+56>>1]=0;eX(h+15|0,h+14|0,h+13|0,h+12|0,f);q:{if(w[h+15|0]!=66|w[h+14|0]!=86|(w[h+13|0]!=52|w[h+12|0]!=32)){break q}k=gX(0,f);r:{if((k|0)==1){l=1;a=1;break r}l=1;a=1;if((k|0)==16777216){break r}a=d;l=a?k<<8&16711680|k<<24|(k>>>8&65280|k>>>24):k;if(l>>>0>3){break q}}lX(c+4|0,3,a,f);F=c,L=hX(a,f),z[F+16>>2]=L;F=c,K=gX(a,f),v[F+28>>2]=K;lX(c+32|0,3,a,f);lX(c+44|0,3,a,f);if(l>>>0>=3){d=(gX(a,f)|0)!=0}else{d=1}t[c+57|0]=d;a=gX(a,f);v[c+20>>2]=a;s:{if(a){d=a<<4;if(d){a=v[37696];a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,d,24422,13740,280)|0}else{a=0}v[c+24>>2]=a;Ba[v[v[f>>2]>>2]](f,a,d)|0;break s}v[c+24>>2]=0}o=1}xa=h+16|0;if(!o){a9(v[37696],32,5452,313,66321,0);Ba[v[v[e>>2]+4>>2]](e);a=0;break a}v[e+100>>2]=r;v[e+88>>2]=v[e+12>>2];v[e+112>>2]=e+88;v[e+92>>2]=j;a=w[e+8|0];v[e+104>>2]=a&2?0:b;v[e+108>>2]=a<<30>>31&b}F=e,L=hX(w[g+11|0],f),z[F+44>>2]=L;lX(e+20|0,6,w[g+11|0],f);b=gX(w[g+11|0],f);if(b){c=v[e+68>>2];if(c){a=v[37696];j=a+12|0;a=(K=j,J=c,I=Ba[v[v[a>>2]+20>>2]](a)|0?35013:63804,H=19733,G=247,F=v[v[j>>2]+8>>2],Ba[F](K|0,J|0,I|0,H|0,G|0)|0)}else{a=0}v[e+76>>2]=a;Ba[v[v[f>>2]>>2]](f,a,b)|0}if(!s){break b}d=0;if(y[g+12>>2]<=14){d=gX(w[g+11|0],f)}t:{if(D){if(w[e+8|0]&2){if(!i){break t}a=v[e+56>>2];if((i|0)!=1){b=i&-2;c=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a>>1]=w[g+4|0];Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a+2>>1]=w[g+4|0];a=a+4|0;c=c+2|0;if((b|0)!=(c|0)){continue}break}}if(!(i&1)){break t}Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a>>1]=w[g+4|0];break t}if(!i){break t}a=v[e+56>>2];if((i|0)!=1){b=i&-2;c=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a>>2]=w[g+4|0];Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a+4>>2]=w[g+4|0];a=a+8|0;c=c+2|0;if((b|0)!=(c|0)){continue}break}}if(!(i&1)){break t}Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a>>2]=w[g+4|0];break t}b=w[e+8|0]&2;if(n&8){a=v[e+56>>2];if(b){Ba[v[v[f>>2]>>2]](f,a,B(q,6))|0;if(!w[g+11|0]|!i){break t}k=0;c=0;if(i-1>>>0>=3){n=i&-4;b=0;while(1){j=c<<1;h=j+a|0;o=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=o;h=(j|2)+a|0;o=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=o;h=(j|4)+a|0;o=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=o;j=(j|6)+a|0;h=w[j+1|0];t[j+1|0]=w[j|0];t[j|0]=h;c=c+4|0;b=b+4|0;if((n|0)!=(b|0)){continue}break}}j=i&3;if(!j){break t}while(1){b=(c<<1)+a|0;i=w[b+1|0];t[b+1|0]=w[b|0];t[b|0]=i;c=c+1|0;k=k+1|0;if((j|0)!=(k|0)){continue}break}break t}if(!i){break t}c=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,2)|0;if(w[g+11|0]){b=w[g+5|0];t[g+5|0]=w[g+4|0];t[g+4|0]=b}v[a>>2]=x[g+4>>1];a=a+4|0;c=c+1|0;if((i|0)!=(c|0)){continue}break}break t}if(b){if(!i){break t}a=v[e+56>>2];c=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,4)|0;if(w[g+11|0]){b=w[g+7|0];t[g+7|0]=w[g+4|0];t[g+4|0]=b;b=w[g+5|0];t[g+5|0]=w[g+6|0];t[g+6|0]=b}u[a>>1]=v[g+4>>2];a=a+2|0;c=c+1|0;if((i|0)!=(c|0)){continue}break}break t}j=v[e+56>>2];Ba[v[v[f>>2]>>2]](f,j,B(q,12))|0;if(!w[g+11|0]|!i){break t}c=0;if((i|0)!=1){h=i&-2;b=0;while(1){k=c<<2;a=k+j|0;n=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=n;n=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=n;a=j+(k|4)|0;k=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=k;k=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=k;c=c+2|0;b=b+2|0;if((h|0)!=(b|0)){continue}break}}if(!(i&1)){break t}a=j+(c<<2)|0;b=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=b;b=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=b}b=0;c=0;a=v[e+68>>2];j=a<<2;j=(j|0)!=(j&1073741820)?-1:a<<4;if(j){a=v[37696];c=a+12|0;c=(G=c,H=j,I=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804,J=5452,K=427,F=v[v[c>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0);a=v[e+68>>2]}v[e+60>>2]=c;j=(a&1073741823)!=(a|0)?-1:a<<2;if(j){a=v[37696];b=a+12|0;b=(K=b,J=j,I=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804,H=5452,G=428,F=v[v[b>>2]+8>>2],Ba[F](K|0,J|0,I|0,H|0,G|0)|0);c=v[e+60>>2];a=v[e+68>>2]}v[e+64>>2]=b;Ba[v[v[f>>2]>>2]](f,c,a<<4)|0;u:{if(y[g+12>>2]>14){break u}v:{if(!v[e+12>>2]){break v}a=0;while(1){gX(w[g+11|0],f);a=a+1|0;b=v[e+12>>2];if(a>>>0>>0){continue}break}if(!b){break v}a=0;while(1){gX(w[g+11|0],f);a=a+1|0;if(a>>>0>2]){continue}break}}if(!d){break u}a=0;while(1){gX(w[g+11|0],f);a=a+1|0;if((d|0)!=(a|0)){continue}break}}Ba[v[v[f>>2]>>2]](f,v[e+64>>2],v[e+68>>2]<<2)|0;w:{if(!w[g+11|0]|!(v[e+68>>2]&1073741823)){break w}d=0;while(1){a=v[e+56>>2]+(d<<2)|0;b=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=b;b=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=b;d=d+1|0;a=v[e+68>>2];if(d>>>0>>0){continue}break}if(!(a&1073741823)){break w}d=0;while(1){a=v[e+60>>2]+(d<<2)|0;b=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=b;b=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=b;d=d+1|0;if(d>>>0>2]<<2>>>0){continue}break}}a=v[37696];b=a+12|0;a=(G=b,H=44,I=Ba[v[v[a>>2]+20>>2]](a)|0?44281:63804,J=5452,K=455,F=v[v[b>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0);v[a>>2]=0;v[a+4>>2]=0;t[a+40|0]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[e+84>>2]=a;c=w[g+11|0];d=0;h=0;j=xa-16|0;xa=j;if(!w[a+40|0]){b=v[a+24>>2];if(b){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,b);v[a+24>>2]=0}b=v[a+28>>2];if(b){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,b)}v[a+28>>2]=0}v[a+20>>2]=0;v[a+24>>2]=0;eX(j+15|0,j+14|0,j+13|0,j+12|0,f);x:{if(w[j+15|0]!=66|w[j+14|0]!=86|(w[j+13|0]!=51|w[j+12|0]!=50)){break x}b=1;i=gX(0,f);if(!((i|0)==1|(i|0)==16777216)){b=c;if((c?i<<8&16711680|i<<24|(i>>>8&65280|i>>>24):i)>>>0>3){break x}}F=a,L=hX(b,f),z[F+4>>2]=L;F=a,L=hX(b,f),z[F+8>>2]=L;F=a,L=hX(b,f),z[F+12>>2]=L;F=a,L=hX(b,f),z[F+16>>2]=L;F=a,K=gX(b,f),v[F+36>>2]=K;i=gX(b,f);v[a+32>>2]=i;d=1;if(!i){break x}c=B(i,1168);if(c){d=v[37696];c=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,13815,167)|0}else{c=0}v[a+28>>2]=c;while(1){c=v[a+28>>2]+B(h,1168)|0;d=gX(b,f);v[c+1152>>2]=d;lX(c+1024|0,d,b,f);d=v[c+1152>>2]<<2;lX(c,d,b,f);lX(c+512|0,d,b,f);d=1;h=h+1|0;if((i|0)!=(h|0)){continue}break}}xa=j+16|0;if(d){break b}a9(v[37696],32,5452,459,66350,0);Ba[v[v[e>>2]+4>>2]](e)}a=0;break a}a=nV(E,e);Ba[v[v[e>>2]+4>>2]](e)}xa=g+16|0;return a|0}function Z3(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=0,m=0,n=0,o=C(0),p=0,q=0,r=C(0),s=0,t=C(0),A=C(0),D=C(0),E=C(0),F=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=0,U=C(0),V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;q=xa-32|0;xa=q;d=v[a+8>>2];b=v[d+36>>2];U=z[d+32>>2];v[q+16>>2]=0;v[q+20>>2]=0;v[q+24>>2]=0;d=v[a+12>>2];i=v[d+68>>2];v[q+12>>2]=i;v[q+8>>2]=144944;R=v[d+16>>2];c=w[d+8|0];d=v[d+72>>2];V=c<<30>>31&d;X=c&2?0:d;l=q+16|0;W=q+8|0;d=0;e=xa-208|0;xa=e;v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;a:{if(!i){t=C(34028234663852886e22);A=C(-34028234663852886e22);D=C(-34028234663852886e22);E=C(-34028234663852886e22);F=C(34028234663852886e22);H=C(34028234663852886e22);break a}b:{if(!i){break b}c=i<<5;if(!c){break b}f=v[37696];d=Ba[v[v[f>>2]+20>>2]](f)|0?48609:63804;d=Ba[v[v[f+12>>2]+8>>2]](f+12|0,c,d,16608,553)|0}g=v[e>>2];c=v[e+4>>2];if((c|0)>0){h=(c<<5)+d|0;c=d;while(1){f=v[g+4>>2];v[c>>2]=v[g>>2];v[c+4>>2]=f;f=v[g+28>>2];v[c+24>>2]=v[g+24>>2];v[c+28>>2]=f;f=v[g+20>>2];v[c+16>>2]=v[g+16>>2];v[c+20>>2]=f;f=v[g+12>>2];v[c+8>>2]=v[g+8>>2];v[c+12>>2]=f;g=g+32|0;c=c+32|0;if(h>>>0>c>>>0){continue}break}g=v[e>>2]}if(!(!g|v[e+8>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,g)}v[e+8>>2]=i;v[e>>2]=d;E=C(-34028234663852886e22);H=C(34028234663852886e22);F=C(34028234663852886e22);t=C(34028234663852886e22);D=C(-34028234663852886e22);A=C(-34028234663852886e22);while(1){d=B(k,3);c:{if(V){f=V+(d<<1)|0;d=x[f>>1];g=x[f+2>>1];c=x[f+4>>1];break c}f=X+(d<<2)|0;d=v[f>>2];g=v[f+4>>2];c=v[f+8>>2]}f=R+B(c,12)|0;K=z[f>>2];c=R+B(g,12)|0;L=z[c>>2];d=R+B(d,12)|0;M=z[d>>2];N=z[f+4>>2];O=z[c+4>>2];P=z[d+4>>2];Q=z[f+8>>2];r=z[c+8>>2];o=z[d+8>>2];v[e+76>>2]=0;v[e+60>>2]=0;j=o>r?o:r;S=C((j>Q?j:Q)+C(.0005000000237487257));z[e+72>>2]=S;Y=E>S;j=ON?j:N)+C(.0005000000237487257));z[e+68>>2]=I;Z=D>I;j=LK?j:K)+C(.0005000000237487257));z[e+64>>2]=J;s=A>J;j=o>2]=r;m=r>H;j=O>P?P:O;o=C((j>2]=o;n=o>F;j=L>M?M:L;j=C((j>2]=j;p=j>t;f=v[e+4>>2];d:{if(f>>>0>=(v[e+8>>2]&2147483647)>>>0){d=0;c=v[e+8>>2];T=c&2147483647?c<<1:1;e:{if(!T){break e}c=T<<5;if(!c){break e}f=v[37696];d=Ba[v[v[f>>2]+20>>2]](f)|0?48609:63804;d=Ba[v[v[f+12>>2]+8>>2]](f+12|0,c,d,16608,553)|0}c=v[e+4>>2];if((c|0)>0){h=(c<<5)+d|0;g=v[e>>2];c=d;while(1){f=v[g+4>>2];v[c>>2]=v[g>>2];v[c+4>>2]=f;f=v[g+28>>2];v[c+24>>2]=v[g+24>>2];v[c+28>>2]=f;f=v[g+20>>2];v[c+16>>2]=v[g+16>>2];v[c+20>>2]=f;f=v[g+12>>2];v[c+8>>2]=v[g+8>>2];v[c+12>>2]=f;g=g+32|0;c=c+32|0;if(h>>>0>c>>>0){continue}break}c=v[e+4>>2]}f=(c<<5)+d|0;c=v[e+52>>2];v[f>>2]=v[e+48>>2];v[f+4>>2]=c;c=v[e+76>>2];v[f+24>>2]=v[e+72>>2];v[f+28>>2]=c;c=v[e+68>>2];v[f+16>>2]=v[e+64>>2];v[f+20>>2]=c;c=v[e+60>>2];v[f+8>>2]=v[e+56>>2];v[f+12>>2]=c;f:{if(v[e+8>>2]<0){break f}f=v[e>>2];if(!f){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}v[e+8>>2]=T;v[e>>2]=d;v[e+4>>2]=v[e+4>>2]+1;break d}d=v[e+52>>2];g=v[e>>2]+(f<<5)|0;v[g>>2]=v[e+48>>2];v[g+4>>2]=d;d=v[e+76>>2];v[g+24>>2]=v[e+72>>2];v[g+28>>2]=d;c=e- -64|0;d=v[c+4>>2];v[g+16>>2]=v[c>>2];v[g+20>>2]=d;d=v[e+60>>2];v[g+8>>2]=v[e+56>>2];v[g+12>>2]=d;v[e+4>>2]=f+1}E=Y?E:S;D=Z?D:I;A=s?A:J;H=m?H:r;F=n?F:o;t=p?t:j;k=k+1|0;if((i|0)!=(k|0)){continue}break}}m=v[e>>2];v[e+48>>2]=0;bz(l,0,e+48|0);d=i+1|0;if(d>>>0>(v[l+8>>2]&2147483647)>>>0){zw(l,d)}v[e+48>>2]=0;if(i){g=0;while(1){d=v[l+4>>2];g:{if(d>>>0>=(v[l+8>>2]&2147483647)>>>0){on(l,e+48|0);break g}v[v[l>>2]+(d<<2)>>2]=g;v[l+4>>2]=v[l+4>>2]+1}g=v[e+48>>2]+1|0;v[e+48>>2]=g;if(g>>>0>>0){continue}break}}v[e+196>>2]=-1412567295;d=v[l+4>>2];h:{if(d>>>0>=(v[l+8>>2]&2147483647)>>>0){on(l,e+196|0);break h}v[v[l>>2]+(d<<2)>>2]=-1412567295;v[l+4>>2]=v[l+4>>2]+1}v[e+192>>2]=0;v[e+184>>2]=0;v[e+188>>2]=0;d=i<<1;if(d){C3(e+184|0,d)}v[e+180>>2]=0;i:{if(b){d=v[l>>2];h=xa-16|0;xa=h;b=e+16|0;v[b+12>>2]=0;v[b+16>>2]=0;v[b+8>>2]=m;v[b+4>>2]=d;f=0;v[b+20>>2]=0;v[b>>2]=d+(i<<2);if(i){d=b+12|0;H3(d,i);while(1){c=v[b+8>>2]+(f<<5)|0;I=z[c+4>>2];J=z[c+20>>2];o=z[c+8>>2];j=z[c+24>>2];r=C(z[c>>2]+z[c+16>>2]);z[h>>2]=r;o=C(o+j);z[h+8>>2]=o;j=C(I+J);z[h+4>>2]=j;g=v[b+16>>2];j:{if(g>>>0>=(v[b+20>>2]&2147483647)>>>0){I3(d,h);break j}c=v[b+12>>2]+B(g,12)|0;z[c+8>>2]=o;z[c+4>>2]=j;z[c>>2]=r;v[b+16>>2]=g+1}f=f+1|0;if((i|0)!=(f|0)){continue}break}}j=C(C(G(U,C(0)))*C(9));k:{if(j=C(0)){d=~~j>>>0;break k}d=0}v[b+24>>2]=v[((d>>>0<8?d:8)<<2)+103920>>2];xa=h+16|0;D3(b,v[l>>2],v[l+4>>2]-1|0,e+184|0,e+180|0,e+48|0,0);d=v[b+20>>2];if((d|0)<0|!(d&2147483647)){break i}d=v[b+12>>2];if(!d){break i}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d);break i}g=0;v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+48>>2]=0;c=e+48|0;bz(e+16|0,i,c);v[e+176>>2]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+48>>2]=0;bz(e+168|0,i,c);v[e+160>>2]=0;v[e+152>>2]=0;v[e+156>>2]=0;v[e+48>>2]=0;bz(e+152|0,i,c);v[e+144>>2]=0;v[e+136>>2]=0;v[e+140>>2]=0;v[e+48>>2]=0;bz(e+136|0,i,c);v[e+128>>2]=0;v[e+120>>2]=0;v[e+124>>2]=0;v[e+48>>2]=0;bz(e+120|0,i,c);v[e+112>>2]=0;v[e+104>>2]=0;v[e+108>>2]=0;v[e+48>>2]=0;bz(e+104|0,i,c);b=i<<2;H9(v[e+136>>2],v[l>>2],b);H9(v[e+120>>2],v[l>>2],b);H9(v[e+104>>2],v[l>>2],b);d=v[e+140>>2];b=v[e+136>>2];v[e+52>>2]=m;v[e+48>>2]=0;E3(b,d,c);l:{if(i){h=v[e+16>>2];f=v[e+136>>2];c=i-1|0;if(c>>>0>=3){d=i&-4;k=0;while(1){v[h+(v[f+(g<<2)>>2]<<2)>>2]=g;b=g|1;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;b=g|2;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;b=g|3;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;g=g+4|0;k=k+4|0;if((d|0)!=(k|0)){continue}break}}b=i&3;if(b){k=0;while(1){v[h+(v[f+(g<<2)>>2]<<2)>>2]=g;g=g+1|0;k=k+1|0;if((b|0)!=(k|0)){continue}break}}d=v[e+124>>2];b=v[e+120>>2];v[e+52>>2]=m;v[e+48>>2]=1;E3(b,d,e+48|0);k=0;h=v[e+168>>2];f=v[e+120>>2];g=0;if(c>>>0>=3){c=i&-4;d=0;while(1){v[h+(v[f+(g<<2)>>2]<<2)>>2]=g;b=g|1;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;b=g|2;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;b=g|3;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;g=g+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}b=i&3;if(!b){break l}while(1){v[h+(v[f+(g<<2)>>2]<<2)>>2]=g;g=g+1|0;k=k+1|0;if((b|0)!=(k|0)){continue}break}break l}d=v[e+124>>2];b=v[e+120>>2];v[e+52>>2]=m;v[e+48>>2]=1;E3(b,d,e+48|0)}d=v[e+108>>2];b=v[e+104>>2];v[e+52>>2]=m;v[e+48>>2]=2;E3(b,d,e+48|0);n=v[e+152>>2];p=v[e+104>>2];m:{if(!i){break m}k=0;g=0;if(i-1>>>0>=3){c=i&-4;d=0;while(1){v[n+(v[p+(g<<2)>>2]<<2)>>2]=g;b=g|1;v[n+(v[p+(b<<2)>>2]<<2)>>2]=b;b=g|2;v[n+(v[p+(b<<2)>>2]<<2)>>2]=b;b=g|3;v[n+(v[p+(b<<2)>>2]<<2)>>2]=b;g=g+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}b=i&3;if(!b){break m}while(1){v[n+(v[p+(g<<2)>>2]<<2)>>2]=g;g=g+1|0;k=k+1|0;if((b|0)!=(k|0)){continue}break}}h=v[l>>2];g=v[e+136>>2];f=v[e+120>>2];c=v[e+16>>2];d=v[e+168>>2];b=e+48|0;v[b+48>>2]=i;v[b+40>>2]=n;v[b+36>>2]=d;v[b+32>>2]=c;v[b+28>>2]=p;v[b+24>>2]=f;v[b+20>>2]=g;v[b+8>>2]=m;v[b>>2]=h;c=i<<2;n:{if(!c){v[b+12>>2]=0;d=0;break n}d=v[37696];_=b,$=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,10814,363)|0,v[_+12>>2]=$;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,10814,364)|0}v[b+16>>2]=d;d=v[37696];_=b,$=Ba[v[v[d+12>>2]+8>>2]](d+12|0,i<<3|4,24422,10814,365)|0,v[_+4>>2]=$;if(c){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,10814,366)|0}else{d=0}v[b+44>>2]=d;j=C(C(G(U,C(0)))*C(15));o:{if(j=C(0)){d=~~j>>>0;break o}d=0}v[b+52>>2]=d>>>0<14?d:14;F3(b,v[l>>2],i,e+184|0,e+180|0,0);c=v[b+12>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+12>>2]=0;c=v[b+16>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+16>>2]=0;c=v[b+4>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+4>>2]=0;d=v[b+44>>2];if(d){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+112>>2];p:{if((b|0)<0|!(b&2147483647)){break p}d=v[e+104>>2];if(!d){break p}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+128>>2];q:{if((b|0)<0|!(b&2147483647)){break q}d=v[e+120>>2];if(!d){break q}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+144>>2];r:{if((b|0)<0|!(b&2147483647)){break r}d=v[e+136>>2];if(!d){break r}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+160>>2];s:{if((b|0)<0|!(b&2147483647)){break s}d=v[e+152>>2];if(!d){break s}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+176>>2];t:{if((b|0)<0|!(b&2147483647)){break t}d=v[e+168>>2];if(!d){break t}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+24>>2];if((b|0)<0|!(b&2147483647)){break i}d=v[e+16>>2];if(!d){break i}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[l+4>>2]=v[l+4>>2]-1;d=0;v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;c=0;s=v[e+188>>2];if(s){g=0;u:{if(!s){break u}c=B(s,28);if(!c){break u}f=v[37696];b=Ba[v[v[f>>2]+20>>2]](f)|0?48843:63804;g=Ba[v[v[f+12>>2]+8>>2]](f+12|0,c,b,16608,553)|0}c=v[e+16>>2];b=v[e+20>>2];if((b|0)>0){h=B(b,28)+g|0;b=g;while(1){f=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=f;v[b+24>>2]=v[c+24>>2];f=v[c+20>>2];v[b+16>>2]=v[c+16>>2];v[b+20>>2]=f;f=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=f;c=c+28|0;b=b+28|0;if(h>>>0>b>>>0){continue}break}c=v[e+16>>2]}if(!(!c|v[e+24>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[e+24>>2]=s;v[e+16>>2]=g;m=e+72|0;k=-1;g=0;while(1){f=v[e+184>>2]+(g<<5)|0;c=v[f+24>>2];v:{if((c|0)==-1){v[e+56>>2]=2139095039;v[e+68>>2]=-8388609;v[e+48>>2]=2139095039;v[e+52>>2]=2139095039;v[e+60>>2]=-8388609;v[e+64>>2]=-8388609;k=(k|0)==-1?v[e+20>>2]:k;v[e+72>>2]=B(k,28)|1;break v}b=v[f+28>>2];z[e+48>>2]=z[f>>2];z[e+52>>2]=z[f+4>>2];z[e+56>>2]=z[f+8>>2];z[e+60>>2]=z[f+12>>2];z[e+64>>2]=z[f+16>>2];z[e+68>>2]=z[f+20>>2];if((b|0)<=0){v[e+72>>2]=B(c,28);break v}v[e+72>>2]=c;Ba[v[v[W>>2]+8>>2]](W,m,c,b)}f=v[e+20>>2];w:{if(f>>>0>=(v[e+24>>2]&2147483647)>>>0){b=0;c=v[e+24>>2];n=c&2147483647?c<<1:1;x:{if(!n){break x}c=B(n,28);if(!c){break x}f=v[37696];b=Ba[v[v[f>>2]+20>>2]](f)|0?48843:63804;b=Ba[v[v[f+12>>2]+8>>2]](f+12|0,c,b,16608,553)|0}c=v[e+20>>2];if((c|0)>0){p=B(c,28)+b|0;c=v[e+16>>2];f=b;while(1){h=v[c+4>>2];v[f>>2]=v[c>>2];v[f+4>>2]=h;v[f+24>>2]=v[c+24>>2];h=v[c+20>>2];v[f+16>>2]=v[c+16>>2];v[f+20>>2]=h;h=v[c+12>>2];v[f+8>>2]=v[c+8>>2];v[f+12>>2]=h;c=c+28|0;f=f+28|0;if(p>>>0>f>>>0){continue}break}c=v[e+20>>2]}f=B(c,28)+b|0;c=v[e+52>>2];v[f>>2]=v[e+48>>2];v[f+4>>2]=c;v[f+24>>2]=v[e+72>>2];c=v[e+68>>2];v[f+16>>2]=v[e+64>>2];v[f+20>>2]=c;c=v[e+60>>2];v[f+8>>2]=v[e+56>>2];v[f+12>>2]=c;y:{if(v[e+24>>2]<0){break y}f=v[e+16>>2];if(!f){break y}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}v[e+24>>2]=n;v[e+16>>2]=b;v[e+20>>2]=v[e+20>>2]+1;break w}b=v[e+52>>2];h=v[e+16>>2]+B(f,28)|0;v[h>>2]=v[e+48>>2];v[h+4>>2]=b;v[h+24>>2]=v[m>>2];c=e- -64|0;b=v[c+4>>2];v[h+16>>2]=v[c>>2];v[h+20>>2]=b;b=v[e+60>>2];v[h+8>>2]=v[e+56>>2];v[h+12>>2]=b;v[e+20>>2]=f+1}g=g+1|0;if((s|0)!=(g|0)){continue}break}c=v[e+20>>2]}v[a+188>>2]=c;v[a+144>>2]=1065353216;v[a+148>>2]=1065353216;c=c>>>2|0;v[a+192>>2]=c;v[a+152>>2]=1065353216;v[a+156>>2]=1065353216;b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,B(c,112)+131|0,24422,10814,864)|0;if(b){d=b+131&-128;v[d-4>>2]=d-b}z[a+128>>2]=A;k=0;v[a+124>>2]=0;z[a+120>>2]=H;z[a+116>>2]=F;z[a+112>>2]=t;v[a+200>>2]=d;v[a+172>>2]=0;v[a+176>>2]=4;v[a+140>>2]=0;z[a+136>>2]=E;z[a+132>>2]=D;z[a+168>>2]=C(E-H)*C(15259021893143654e-21);z[a+164>>2]=C(D-F)*C(15259021893143654e-21);z[a+160>>2]=C(A-t)*C(15259021893143654e-21);b=v[e+180>>2];v[a+180>>2]=1;v[a+184>>2]=b;if(v[a+192>>2]){c=v[e+16>>2];while(1){b=B(k,112);g=b+d|0;b=b+c|0;z[g+48>>2]=z[b+12>>2];z[g+64>>2]=z[b+16>>2];z[g+80>>2]=z[b+20>>2];z[g>>2]=z[b>>2];z[g+16>>2]=z[b+4>>2];z[g+32>>2]=z[b+8>>2];v[g+96>>2]=v[b+24>>2];b=k<<2;f=c+B(b|1,28)|0;z[g+52>>2]=z[f+12>>2];z[g+68>>2]=z[f+16>>2];z[g+84>>2]=z[f+20>>2];z[g+4>>2]=z[f>>2];z[g+20>>2]=z[f+4>>2];z[g+36>>2]=z[f+8>>2];v[g+100>>2]=v[f+24>>2];f=c+B(b|2,28)|0;z[g+56>>2]=z[f+12>>2];z[g+72>>2]=z[f+16>>2];z[g+88>>2]=z[f+20>>2];z[g+8>>2]=z[f>>2];z[g+24>>2]=z[f+4>>2];z[g+40>>2]=z[f+8>>2];v[g+104>>2]=v[f+24>>2];b=c+B(b|3,28)|0;z[g+60>>2]=z[b+12>>2];z[g+76>>2]=z[b+16>>2];z[g+92>>2]=z[b+20>>2];z[g+12>>2]=z[b>>2];z[g+28>>2]=z[b+4>>2];z[g+44>>2]=z[b+8>>2];v[g+108>>2]=v[b+24>>2];k=k+1|0;if(k>>>0>2]){continue}break}}b=v[e+24>>2];z:{if((b|0)<0|!(b&2147483647)){break z}d=v[e+16>>2];if(!d){break z}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+192>>2];A:{if((b|0)<0|!(b&2147483647)){break A}d=v[e+184>>2];if(!d){break A}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+8>>2];B:{if((b|0)<0|!(b&2147483647)){break B}d=v[e>>2];if(!d){break B}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}xa=e+208|0;m=v[q+16>>2];d=0;b=0;c=v[a+12>>2];f=v[c+68>>2];C:{if(!f){break C}f=B(f,12);D:{if(f){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,f,24422,9248,104)|0;c=v[a+12>>2];if(!v[c+68>>2]){break D}}while(1){f=v[c+72>>2]+B(v[m+(d<<2)>>2],12)|0;c=v[f+4>>2];g=B(d,12)+b|0;v[g>>2]=v[f>>2];v[g+4>>2]=c;v[g+8>>2]=v[f+8>>2];d=d+1|0;c=v[a+12>>2];if(d>>>0>2]){continue}break}}f=v[c+72>>2];if(f){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,f);c=v[a+12>>2]}v[c+72>>2]=b;if(v[c+80>>2]){g=v[c+68>>2];b=g+g|0;d=b>>>0>>0?-1:b;E:{if(!d){b=0;break E}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?27439:63804;b=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,b,9248,112)|0;c=v[a+12>>2];g=v[c+68>>2]}n=v[c+80>>2];F:{G:{if(g){p=g&3;c=0;d=0;if(g-1>>>0>=3){h=g&-4;g=0;while(1){u[(d<<1)+b>>1]=x[n+(v[m+(d<<2)>>2]<<1)>>1];f=d|1;u[(f<<1)+b>>1]=x[n+(v[m+(f<<2)>>2]<<1)>>1];f=d|2;u[(f<<1)+b>>1]=x[n+(v[m+(f<<2)>>2]<<1)>>1];f=d|3;u[(f<<1)+b>>1]=x[n+(v[m+(f<<2)>>2]<<1)>>1];d=d+4|0;g=g+4|0;if((h|0)!=(g|0)){continue}break}}if(!p){break G}while(1){u[(d<<1)+b>>1]=x[n+(v[m+(d<<2)>>2]<<1)>>1];d=d+1|0;c=c+1|0;if((p|0)!=(c|0)){continue}break}break G}if(!n){break F}}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,n);c=v[a+12>>2]}v[c+80>>2]=b}b=v[a+8>>2];if(w[b+14|0]?0:w[b+12|0]){break C}d=v[c+68>>2];f=(d&1073741823)!=(d|0)?-1:d<<2;H:{if(!f){b=0;break H}d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?29035:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,f,b,9248,121)|0;c=v[a+12>>2];d=v[c+68>>2]}g=v[c+48>>2];I:{J:{K:{if(d){d=0;if(g){break K}while(1){a=d<<2;v[a+b>>2]=v[a+m>>2];d=d+1|0;if(d>>>0>2]){continue}break}break I}if(!g){break I}break J}while(1){f=d<<2;v[f+b>>2]=v[g+(v[f+m>>2]<<2)>>2];d=d+1|0;if(d>>>0>2]){continue}break}}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g);c=v[a+12>>2]}v[c+48>>2]=b}a=v[q+24>>2];L:{if((a|0)<0|!(a&2147483647)){break L}b=v[q+16>>2];if(!b){break L}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}xa=q+32|0}function EZ(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),m=C(0),n=C(0),o=0,r=C(0),s=0,u=C(0),y=C(0),A=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=0,L=C(0),M=0,N=0,O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=C(0),ca=0,da=C(0),ea=C(0),fa=C(0),ga=0,ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=0,qa=0,ra=C(0),sa=0,ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=0,za=C(0),Aa=C(0),Ca=C(0),Da=0,Ea=C(0),Fa=C(0),Ga=C(0),Ha=0;F=xa-80|0;xa=F;E=z[b+12>>2];f=z[b>>2];u=C(E-f);y=z[b+28>>2];i=z[b+4>>2];A=C(y-i);k=z[b+24>>2];R=C(k-f);W=z[b+16>>2];g=C(W-i);S=C(C(u*A)-C(R*g));h=g;X=z[b+32>>2];g=z[b+8>>2];Y=C(X-g);Z=z[b+20>>2];_=C(Z-g);A=C(C(h*Y)-C(A*_));u=C(C(_*R)-C(Y*u));R=C(C(S*S)+C(C(A*A)+C(u*u)));if(R>C(0)){O=C(C(1)/C(K(R)));n=C(S*O);Q=C(u*O);O=C(A*O)}z[F+68>>2]=Q;z[F+64>>2]=O;z[F+72>>2]=n;S=C(C(g*n)+C(C(f*O)+C(i*Q)));z[F+76>>2]=-S;a:{if(C(C(C(z[a+2164>>2]*n)+C(C(z[a+2156>>2]*O)+C(Q*z[a+2160>>2])))-S)>2]=n;f=C(C(C(E+f)+k)*C(.3333333432674408));z[F+48>>2]=f;i=C(C(C(W+i)+y)*C(.3333333432674408));z[F+52>>2]=i;g=z[a+2144>>2];Q=z[a+2120>>2];O=z[a+2132>>2];S=z[a+2148>>2];A=z[a+2136>>2];u=z[a+2112>>2];E=z[a+2124>>2];y=z[a+2108>>2];z[F+40>>2]=C(C(C(f*z[a+2116>>2])+C(i*z[a+2128>>2]))+C(n*z[a+2140>>2]))+z[a+2152>>2];z[F+36>>2]=S+C(C(C(f*u)+C(i*E))+C(n*A));z[F+32>>2]=g+C(C(C(f*y)+C(i*Q))+C(n*O));P=d;o=b;ga=F- -64|0;$=v[a+2188>>2];G=a+2060|0;N=a+2108|0;J=v[a+2192>>2];R=z[a+2196>>2];i=C(0);g=C(0);n=C(0);b=xa-3152|0;U=b;xa=b;aa=v[a+2180>>2];ca=v[aa+16>>2];M=b-((ca<<2)+15&-16)|0;xa=M;sa=v[aa+28>>2];pa=v[aa+24>>2];b:{c:{d:{qa=w[a+2205|0];e:{if(qa){if(!ca){break d}W=z[G+44>>2];Q=z[G+40>>2];O=z[G+32>>2];S=z[G+28>>2];A=z[G+20>>2];X=z[G+16>>2];T=z[G+36>>2];Y=z[G+24>>2];Z=z[G+12>>2];_=z[G+8>>2];r=z[G+4>>2];da=z[G>>2];ha=z[F+40>>2];ia=z[F+36>>2];ja=z[F+32>>2];b=0;d=-1;f=C(34028234663852886e22);s=M;while(1){V=pa+B(b,20)|0;k=z[V+8>>2];m=z[V>>2];L=z[V+4>>2];h=z[V+12>>2];f:{if(C(C(C(ha*k)+C(C(ja*m)+C(ia*L)))+h)>2]=b;u=C(C(C(m*_)+C(L*A))+C(k*O));E=C(C(C(m*da)+C(L*Z))+C(k*Y));y=C(C(C(m*r)+C(L*X))+C(k*S));ea=C(C(u*W)+C(C(E*T)+C(y*Q)));fa=C(ea-h);h=C(C(z[o+8>>2]*u)+C(C(z[o>>2]*E)+C(y*z[o+4>>2])));H=C(C(z[o+20>>2]*u)+C(C(z[o+12>>2]*E)+C(y*z[o+16>>2])));ba=h>2]*u)+C(C(z[o+24>>2]*E)+C(y*z[o+28>>2])));ba=I>ba?ba:I;if(C(fa+R)>2])+C(C(m*z[V>>2])+C(L*z[V+4>>2]))));h=h>H?h:H;h=h>I?h:I;if(k>C(h+R)){break b}s=s+4|0;m=C(fa-ba);k=C(h-k);k=k>m?m:k;if(!(k>2];da=z[J+44>>2];Q=z[F+36>>2];ha=z[J+56>>2];O=z[F+40>>2];ia=z[J+68>>2];ja=C(C(C(f*da)+C(Q*ha))+C(O*ia));ea=z[J+40>>2];fa=z[J+52>>2];ba=z[J- -64>>2];ra=C(C(C(f*ea)+C(Q*fa))+C(O*ba));ma=z[J+36>>2];na=z[J+48>>2];la=z[J+60>>2];oa=C(C(C(f*ma)+C(Q*na))+C(O*la));W=z[G+44>>2];Q=z[G+40>>2];O=z[G+32>>2];S=z[G+28>>2];A=z[G+20>>2];X=z[G+16>>2];ka=z[G+36>>2];Y=z[G+24>>2];Z=z[G+12>>2];_=z[G+8>>2];r=z[G+4>>2];va=z[G>>2];b=0;d=-1;f=C(34028234663852886e22);s=M;while(1){V=pa+B(b,20)|0;I=z[V+12>>2];k=z[V+8>>2];m=z[V>>2];L=z[V+4>>2];g:{if(C(I+C(C(ja*k)+C(C(oa*m)+C(ra*L))))>2]=b;E=C(C(C(da*m)+C(ha*L))+C(ia*k));y=C(C(C(ma*m)+C(na*L))+C(la*k));h=C(C(C(ea*m)+C(fa*L))+C(ba*k));u=C(K(C(C(E*E)+C(C(y*y)+C(h*h)))));T=C(C(1)/u);u=u>C(0)?T:C(1);y=C(y*u);h=C(h*u);H=C(E*u);u=C(C(C(y*_)+C(h*A))+C(H*O));E=C(C(C(y*va)+C(h*Z))+C(H*Y));y=C(C(C(y*r)+C(h*X))+C(H*S));ta=C(C(u*W)+C(C(E*ka)+C(y*Q)));wa=C(ta-C(I*T));h=C(C(z[o+8>>2]*u)+C(C(z[o>>2]*E)+C(y*z[o+4>>2])));H=C(C(z[o+20>>2]*u)+C(C(z[o+12>>2]*E)+C(y*z[o+16>>2])));ua=h>2]*u)+C(C(z[o+24>>2]*E)+C(y*z[o+28>>2])));ua=I>ua?ua:I;if(C(wa+R)>2])+C(C(m*z[V>>2])+C(L*z[V+4>>2])))*T)+ta);h=h>H?h:H;h=h>I?h:I;if(k>C(h+R)){break b}s=s+4|0;m=C(wa-ua);k=C(h-k);k=k>m?m:k;if(!(k>2;break c}h:{i:{if(!qa){if(ca){break i}break h}if(!ca){break h}T=z[o+32>>2];da=z[o+28>>2];ha=z[o+20>>2];ia=z[o+16>>2];ja=z[G+36>>2];ea=z[G>>2];fa=z[o+24>>2];ba=z[o+12>>2];ra=z[o+8>>2];ma=z[o+4>>2];na=z[o>>2];d=-1;b=0;while(1){s=pa+B(b,20)|0;k=z[s>>2];m=z[s+4>>2];L=z[s+8>>2];u=C(C(C(k*_)+C(m*A))+C(L*O));E=C(C(C(k*ea)+C(m*Z))+C(L*Y));y=C(C(C(k*r)+C(m*X))+C(L*S));la=C(C(u*W)+C(C(E*ja)+C(y*Q)));oa=C(la-z[s+12>>2]);h=C(C(ra*u)+C(C(na*E)+C(ma*y)));H=C(C(ha*u)+C(C(ba*E)+C(ia*y)));ka=hka?ka:I;if(C(oa+R)>2])+C(C(k*z[s>>2])+C(m*z[s+4>>2]))));h=h>H?h:H;h=h>I?h:I;if(k>C(h+R)){break b}m=C(oa-ka);k=C(h-k);k=k>m?m:k;if(k>2]=b;b=b+1|0;if((ca|0)!=(b|0)){continue}break}break c}da=z[J+68>>2];ha=z[J- -64>>2];ia=z[J+60>>2];ja=z[J+56>>2];ea=z[J+52>>2];fa=z[J+48>>2];ba=z[J+44>>2];ra=z[J+40>>2];ma=z[o+32>>2];na=z[o+28>>2];la=z[o+20>>2];oa=z[o+16>>2];ka=z[G+36>>2];va=z[G>>2];ta=z[J+36>>2];wa=z[o+24>>2];ua=z[o+12>>2];Ea=z[o+8>>2];Fa=z[o+4>>2];Ga=z[o>>2];d=-1;b=0;while(1){s=pa+B(b,20)|0;k=z[s>>2];m=z[s+4>>2];L=z[s+8>>2];u=C(C(C(k*ta)+C(m*fa))+C(L*ia));h=u;E=C(C(C(k*ba)+C(m*ja))+C(L*da));y=C(u*u);u=C(C(C(k*ra)+C(m*ea))+C(L*ha));y=C(K(C(C(E*E)+C(y+C(u*u)))));T=C(C(1)/y);y=y>C(0)?T:C(1);h=C(h*y);H=C(u*y);y=C(E*y);u=C(C(C(_*h)+C(A*H))+C(y*O));E=C(C(Y*y)+C(C(va*h)+C(Z*H)));y=C(C(y*S)+C(C(r*h)+C(X*H)));Aa=C(C(u*W)+C(C(E*ka)+C(y*Q)));Ca=C(Aa-C(z[s+12>>2]*T));h=C(C(Ea*u)+C(C(Ga*E)+C(Fa*y)));H=C(C(la*u)+C(C(ua*E)+C(oa*y)));za=hza?za:I;if(C(Ca+R)>2])+C(C(k*z[s>>2])+C(m*z[s+4>>2])))*T)+Aa);h=h>H?h:H;h=h>I?h:I;if(k>C(h+R)){break b}m=C(Ca-za);k=C(h-k);k=k>m?m:k;if(k>2]=b;b=b+1|0;if((ca|0)!=(b|0)){continue}break}break c}d=-1;ca=0;break c}d=-1;f=C(34028234663852886e22);ca=0}v[F+24>>2]=0;v[F+16>>2]=0;v[F+20>>2]=0;v[F+12>>2]=2139095039;Ba[v[aa+64>>2]](aa,ga,G,J,U+24|0,U+3104|0);u=z[o+8>>2];Q=z[ga+8>>2];E=z[o>>2];O=z[ga>>2];y=z[o+4>>2];S=z[ga+4>>2];A=C(C(u*Q)+C(C(E*O)+C(y*S)));k=z[o+20>>2];W=z[o+12>>2];X=z[o+16>>2];r=C(C(k*Q)+C(C(W*O)+C(S*X)));h=r>A?A:r;Y=z[o+32>>2];Z=z[o+24>>2];_=z[o+28>>2];m=C(C(Y*Q)+C(C(Z*O)+C(S*_)));h=h>2];if(h>C(L+R)){break b}A=r>2];if(C(A+R)>2]>A){z[F+12>>2]=A;f=z[$+28>>2];n=z[$+16>>2];i=z[$+24>>2];g=z[$>>2];A=z[$+12>>2];r=z[$+4>>2];z[F+24>>2]=C(C(O*z[$+8>>2])+C(S*z[$+20>>2]))+C(Q*z[$+32>>2]);z[F+20>>2]=C(C(O*r)+C(S*n))+C(Q*f);z[F+16>>2]=C(C(O*g)+C(S*A))+C(Q*i)}Da=v[aa+24>>2];b=Da+B(d,20)|0;f=z[b>>2];m=z[N>>2];n=z[b+4>>2];L=z[N+12>>2];i=z[b+8>>2];h=z[N+24>>2];g=C(C(C(f*m)+C(n*L))+C(i*h));H=z[J+8>>2];I=z[N+4>>2];T=z[N+16>>2];da=z[N+28>>2];A=C(C(C(f*I)+C(n*T))+C(i*da));ha=z[J+20>>2];ia=z[N+8>>2];ja=z[N+20>>2];ea=z[N+32>>2];r=C(C(C(f*ia)+C(n*ja))+C(i*ea));fa=z[J+32>>2];f=C(C(C(g*H)+C(A*ha))+C(r*fa));ba=z[J+4>>2];ra=z[J+16>>2];ma=z[J+28>>2];n=C(C(C(g*ba)+C(A*ra))+C(r*ma));na=z[J>>2];la=z[J+12>>2];oa=z[J+24>>2];i=C(C(C(g*na)+C(A*la))+C(r*oa));ka=z[N+44>>2];va=z[N+36>>2];ta=z[N+40>>2];g=C(z[b+12>>2]-C(C(ka*r)+C(C(va*g)+C(A*ta))));b=0;if(!(!(P&8)|!(R>=C(C(C(k*f)+C(C(W*i)+C(X*n)))+g)?1:R>=C(C(C(u*f)+C(C(E*i)+C(y*n)))+g)))){z[U+3112>>2]=u-k;z[U+3108>>2]=y-X;z[U+3104>>2]=E-W;b=1}if(!(!(P&16)|!(R>=C(C(C(Y*f)+C(C(Z*i)+C(_*n)))+g)?1:R>=C(C(C(k*f)+C(C(W*i)+C(X*n)))+g)))){d=U+3104|B(b,12);z[d+8>>2]=k-Y;z[d+4>>2]=X-_;z[d>>2]=W-Z;b=b+1|0}if(!(!(P&32)|!(R>=C(C(C(u*f)+C(C(E*i)+C(y*n)))+g)?1:R>=C(C(C(Y*f)+C(C(Z*i)+C(_*n)))+g)))){d=(U+3104|0)+B(b,12)|0;z[d+8>>2]=Y-u;z[d+4>>2]=_-y;z[d>>2]=Z-E;b=b+1|0}sa=v[aa+28>>2];wa=z[ga+12>>2];f=z[ga+8>>2];n=z[ga>>2];i=z[ga+4>>2];v[U+24>>2]=0;A=C(34028234663852886e22);j:{k:{if(!ca|!b){break k}g=C(C(C(ia*n)+C(ja*i))+C(ea*f));r=C(C(C(m*n)+C(L*i))+C(h*f));f=C(C(C(I*n)+C(T*i))+C(da*f));L=C(C(fa*g)+C(C(H*r)+C(ha*f)));h=C(C(ma*g)+C(C(ba*r)+C(ra*f)));H=C(C(oa*g)+C(C(na*r)+C(la*f)));I=C(wa-C(C(ka*g)+C(C(va*r)+C(ta*f))));Ha=v[aa+32>>2];while(1){ca=ca-1|0;l:{pa=B(v[M>>2],20)+Da|0;P=w[pa+18|0];if(!P){break l}V=x[pa+16>>1]+Ha|0;s=U+3104|0;d=b;while(1){d=d-1|0;ya=P&255;if(ya){P=0;while(1){qa=P+V|0;P=P+1|0;ga=sa+B(w[V+(P>>>0>>0?P:0)|0],12)|0;n=z[ga+4>>2];i=z[ga>>2];qa=sa+B(w[qa|0],12)|0;g=z[qa+8>>2];r=z[qa>>2];m=z[qa+4>>2];m:{n:{if(R>=C(I+C(C(g*L)+C(C(r*H)+C(h*m))))){f=z[ga+8>>2];break n}f=z[ga+8>>2];if(!(R>=C(I+C(C(f*L)+C(C(i*H)+C(h*n)))))){break m}}i=C(r-i);n=C(m-n);f=C(g-f);g=C(C(C(i*z[J>>2])+C(n*z[J+12>>2]))+C(f*z[J+24>>2]));r=C(C(C(i*z[J+4>>2])+C(n*z[J+16>>2]))+C(f*z[J+28>>2]));f=C(C(C(i*z[J+8>>2])+C(n*z[J+20>>2]))+C(f*z[J+32>>2]));i=C(C(C(g*z[G>>2])+C(r*z[G+12>>2]))+C(f*z[G+24>>2]));m=z[s+4>>2];T=z[s>>2];da=C(C(C(g*z[G+4>>2])+C(r*z[G+16>>2]))+C(f*z[G+28>>2]));n=C(C(i*m)-C(T*da));f=C(C(C(g*z[G+8>>2])+C(r*z[G+20>>2]))+C(f*z[G+32>>2]));g=z[s+8>>2];r=C(C(f*T)-C(g*i));m=C(C(da*g)-C(m*f));if(!(C(D(n))>C(9.999999974752427e-7)?1:C(D(m))>C(9.999999974752427e-7)|C(D(r))>C(9.999999974752427e-7))){break m}g=C(0);i=C(0);f=C(0);T=C(C(n*n)+C(C(m*m)+C(r*r)));if(T>C(0)){g=n;n=C(C(1)/C(K(T)));f=C(g*n);g=C(m*n);i=C(r*n)}z[U+16>>2]=f;z[U+12>>2]=i;z[U+8>>2]=g;sZ(U+24|0,U+8|0)}if((P|0)!=(ya|0)){continue}break}}if(!d){break l}s=s+12|0;P=w[pa+18|0];continue}}M=M+4|0;if(ca){continue}break}b=v[U+24>>2];if(!b){break k}f=z[N+8>>2];n=z[N+20>>2];i=z[N+32>>2];g=z[N+44>>2];da=C(C(C(C(Z*f)+C(_*n))+C(Y*i))+g);A=z[N+4>>2];r=z[N+16>>2];m=z[N+28>>2];L=z[N+40>>2];ha=C(C(C(C(Z*A)+C(_*r))+C(Y*m))+L);h=z[N>>2];H=z[N+12>>2];I=z[N+24>>2];T=z[N+36>>2];ia=C(C(C(C(Z*h)+C(_*H))+C(Y*I))+T);ja=C(C(C(C(W*f)+C(X*n))+C(k*i))+g);ea=C(C(C(C(W*A)+C(X*r))+C(k*m))+L);fa=C(C(C(C(W*h)+C(X*H))+C(k*I))+T);ba=C(C(C(C(E*f)+C(y*n))+C(u*i))+g);L=C(C(C(C(E*A)+C(y*r))+C(u*m))+L);h=C(C(C(C(E*h)+C(y*H))+C(u*I))+T);P=U+24|4;A=C(34028234663852886e22);while(1){i=z[P>>2];g=z[P+4>>2];r=z[P+8>>2];f=C(C(C(i*z[N+8>>2])+C(g*z[N+20>>2]))+C(r*z[N+32>>2]));n=C(C(C(i*z[N>>2])+C(g*z[N+12>>2]))+C(r*z[N+24>>2]));i=C(C(C(i*z[N+4>>2])+C(g*z[N+16>>2]))+C(r*z[N+28>>2]));m=C(C(z[aa+8>>2]*f)+C(C(z[aa>>2]*n)+C(i*z[aa+4>>2])));g=C(C((l(2,v[aa+56>>2]|(p(f),j(2))&-2147483648),q())*f)+C(C((l(2,v[aa+48>>2]|(p(n),j(2))&-2147483648),q())*n)+C(i*(l(2,v[aa+52>>2]|(p(i),j(2))&-2147483648),q()))));r=z[aa+44>>2];H=g>r?g:r;g=C(C(ba*f)+C(C(h*n)+C(L*i)));r=C(C(ja*f)+C(C(fa*n)+C(ea*i)));I=gI?I:f));i=g>r?g:r;f=C((fn?n:f)>A){break o}Ba[v[aa+64>>2]](aa,P,G,J,U+8|0,U+3148|0);f=z[P+8>>2];n=z[P>>2];i=z[P+4>>2];g=C(C(u*f)+C(C(E*n)+C(y*i)));r=C(C(k*f)+C(C(W*n)+C(X*i)));I=gI?I:m;H=z[U+3148>>2];if(I>C(H+R)){break j}g=g>r?g:r;g=g>m?g:m;r=z[U+8>>2];if(C(g+R)m?m:g;if(!(g>2]>A)){break b}z[F+12>>2]=A;f=z[$+28>>2];n=z[$+16>>2];i=z[$+24>>2];g=z[$>>2];A=z[$+12>>2];u=z[$+4>>2];z[F+24>>2]=C(C(O*z[$+8>>2])+C(S*z[$+20>>2]))+C(Q*z[$+32>>2]);z[F+20>>2]=C(C(O*u)+C(S*n))+C(Q*f);z[F+16>>2]=C(C(O*g)+C(S*A))+C(Q*i);t[F+11|0]=0;break b}ya=0}xa=U+3152|0;if(!ya){break a}if(w[F+11|0]){if(!CZ(a,F- -64|0,o,F+48|0,F+16|0,z[F+12>>2],c)){break a}t[a+2224|0]=1;d=v[a+1284>>2];p:{if((d|0)==128){P=e+8|0;break p}o=a+4|0;M=v[e>>2];b=v[e+4>>2];P=b>>>0>M>>>0?M:b;s=b>>>0>>0?M:b;b=P<<16|s;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=(((b>>>16^b)&127)+a|0)+1156|0;b=w[c|0];q:{if((b|0)!=255){while(1){b=b&255;c=o+(b<<3)|0;if((P|0)==v[c>>2]&(s|0)==v[c+4>>2]){break q}c=(a+b|0)+1028|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+1028|0]=255;b=v[a+1284>>2];v[a+1284>>2]=b+1;c=o+(b<<3)|0;v[c>>2]=P;v[c+4>>2]=s;M=v[e>>2];d=v[a+1284>>2]}P=e+8|0;if((d|0)==128){break p}s=v[e+8>>2];G=s>>>0>M>>>0?M:s;M=s>>>0>>0?M:s;b=G<<16|M;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=(((b>>>16^b)&127)+a|0)+1156|0;b=w[c|0];r:{if((b|0)!=255){while(1){b=b&255;c=o+(b<<3)|0;if((G|0)==v[c>>2]&(M|0)==v[c+4>>2]){break r}c=(a+b|0)+1028|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+1028|0]=255;b=v[a+1284>>2];v[a+1284>>2]=b+1;c=o+(b<<3)|0;v[c>>2]=G;v[c+4>>2]=M;d=v[a+1284>>2];s=v[e+8>>2]}if((d|0)==128){break p}b=v[e+4>>2];M=b>>>0>>0?b:s;s=b>>>0>s>>>0?b:s;b=M<<16|s;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=(((b>>>16^b)&127)+a|0)+1156|0;b=w[c|0];if((b|0)!=255){while(1){b=b&255;c=o+(b<<3)|0;if((M|0)==v[c>>2]&(s|0)==v[c+4>>2]){break p}c=(a+b|0)+1028|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+1028|0]=255;b=v[a+1284>>2];v[a+1284>>2]=b+1;c=o+(b<<3)|0;v[c>>2]=M;v[c+4>>2]=s}d=v[a+2056>>2];if((d|0)==128){break a}M=a+1288|0;c=v[e>>2];s=((c&127)+a|0)+1928|0;b=w[s|0];s:{if((b|0)!=255){while(1){b=b&255;if((c|0)==v[M+(b<<2)>>2]){break s}s=(a+b|0)+1800|0;b=w[s|0];if((b|0)!=255){continue}break}}t[s|0]=d;t[(a+d|0)+1800|0]=255;b=v[a+2056>>2];v[a+2056>>2]=b+1;v[M+(b<<2)>>2]=c;d=v[a+2056>>2]}if((d|0)==128){break a}e=v[e+4>>2];c=((e&127)+a|0)+1928|0;b=w[c|0];t:{if((b|0)!=255){while(1){b=b&255;if((e|0)==v[M+(b<<2)>>2]){break t}c=(a+b|0)+1800|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+1800|0]=255;b=v[a+2056>>2];v[a+2056>>2]=b+1;v[M+(b<<2)>>2]=e;d=v[a+2056>>2]}if((d|0)==128){break a}e=v[P>>2];c=((e&127)+a|0)+1928|0;b=w[c|0];if((b|0)!=255){while(1){b=b&255;if((e|0)==v[M+(b<<2)>>2]){break a}c=(a+b|0)+1800|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+1800|0]=255;b=a;a=v[a+2056>>2];v[b+2056>>2]=a+1;v[M+(a<<2)>>2]=e;break a}d=v[a>>2];s=v[d+4360>>2];b=s+17|0;if(b>>>0>(v[d+4364>>2]&2147483647)>>>0){FZ(d,b);d=v[a>>2];s=v[d+4360>>2]}v[d+4360>>2]=b;a=v[d+4356>>2]+(s<<2)|0;v[a>>2]=c;z[a+4>>2]=z[o>>2];z[a+8>>2]=z[o+4>>2];z[a+12>>2]=z[o+8>>2];z[a+16>>2]=z[o+12>>2];z[a+20>>2]=z[o+16>>2];z[a+24>>2]=z[o+20>>2];z[a+28>>2]=z[o+24>>2];z[a+32>>2]=z[o+28>>2];z[a+36>>2]=z[o+32>>2];v[a+40>>2]=v[e>>2];v[a+44>>2]=v[e+4>>2];v[a+48>>2]=v[e+8>>2];z[a+52>>2]=z[F+16>>2];z[a+56>>2]=z[F+20>>2];z[a+60>>2]=z[F+24>>2];z[a+64>>2]=z[F+12>>2]}xa=F+80|0}function Dv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=C(0),r=C(0),s=C(0),u=0,x=0,y=0,A=C(0),D=0,E=C(0),G=C(0),H=0,I=0,J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=C(0),da=C(0),ea=C(0);h=xa-720|0;xa=h;p=v[f>>2];f=v[b+40>>2];z[h+704>>2]=z[e>>2];r=z[a+12>>2];M=z[a+8>>2];N=z[a+4>>2];a=v[b+12>>2];I=v[b+8>>2];O=z[b+4>>2];v[h+700>>2]=0;v[h+692>>2]=I;v[h+696>>2]=a;z[h+688>>2]=O;A=z[c+20>>2];s=z[c+24>>2];m=z[c>>2];G=z[c+4>>2];n=z[c+8>>2];q=z[c+12>>2];E=z[c+16>>2];v[h+684>>2]=0;z[h+680>>2]=s;z[h+676>>2]=A;z[h+672>>2]=E;z[h+668>>2]=q;z[h+664>>2]=n;z[h+660>>2]=G;z[h+656>>2]=m;P=z[d+20>>2];J=z[d+24>>2];l=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];i=z[d+12>>2];Q=z[d+16>>2];v[h+652>>2]=0;z[h+648>>2]=J;z[h+644>>2]=P;z[h+640>>2]=Q;z[h+636>>2]=i;z[h+632>>2]=k;z[h+628>>2]=j;z[h+624>>2]=l;v[h+620>>2]=0;T=C(-l);E=C(E-Q);A=C(A-P);s=C(s-J);P=C(C(C(T*E)-C(A*j))-C(k*s));J=C(C(i*i)+C(-.5));Q=C(C(C(J*A)+C(i*C(C(l*s)-C(k*E))))-C(j*P));z[h+612>>2]=Q+Q;Q=C(C(C(i*C(C(j*E)-C(l*A)))+C(J*s))-C(k*P));z[h+616>>2]=Q+Q;E=C(C(C(J*E)+C(i*C(C(k*A)-C(j*s))))-C(l*P));z[h+608>>2]=E+E;E=C(C(C(m*j)-C(l*G))+C(C(n*i)-C(q*k)));z[h+600>>2]=E;A=C(C(C(G*k)-C(j*n))+C(C(m*i)-C(q*l)));z[h+592>>2]=A;l=C(C(C(n*l)-C(k*m))+C(C(G*i)-C(q*j)));z[h+596>>2]=l;i=C(C(q*i)-C(C(C(T*m)-C(G*j))-C(k*n)));z[h+604>>2]=i;a=v[h+620>>2];v[h+584>>2]=v[h+616>>2];v[h+588>>2]=a;v[h+572>>2]=0;j=C(A+A);m=C(C(1)-C(A*j));k=C(l+l);G=C(l*k);z[h+568>>2]=m-G;n=C(E*k);q=C(i*j);z[h+564>>2]=n-q;v[h+556>>2]=0;z[h+552>>2]=n+q;s=m;m=C(E+E);n=C(E*m);z[h+548>>2]=s-n;a=v[h+612>>2];v[h+576>>2]=v[h+608>>2];v[h+580>>2]=a;q=C(E*j);k=C(i*k);z[h+560>>2]=q+k;j=C(l*j);i=C(i*m);z[h+544>>2]=j-i;v[h+540>>2]=0;z[h+536>>2]=q-k;z[h+532>>2]=j+i;z[h+528>>2]=C(C(1)-G)-n;E=z[e+8>>2];i=C(E*C(.15000000596046448));j=M>=N?N:M;q=j<=r?j:r;G=C(q*C(.15000000596046448));n=i>2];j=C(O*k);l=z[h+692>>2];i=C(z[f+56>>2]*l);s=i>=j?j:i;m=z[h+696>>2];j=C(z[f+60>>2]*m);s=C((j>=s?s:j)*C(.25));A=A>2]=n;c=w[p+64|0];if(c){i=C(n*C(.800000011920929));m=C(i*i);a=c;while(1){e=v[p+76>>2];a=a-1|0;d=e+B(a,48)|0;j=z[d+24>>2];n=z[d+40>>2];i=z[d+8>>2];k=z[d>>2];l=z[d+4>>2];A=C(z[h+584>>2]+C(C(z[h+568>>2]*i)+C(C(z[h+536>>2]*k)+C(l*z[h+552>>2]))));s=C(z[h+576>>2]+C(C(z[h+560>>2]*i)+C(C(z[h+528>>2]*k)+C(l*z[h+544>>2]))));P=z[d+16>>2];O=z[d+32>>2];k=C(z[h+580>>2]+C(C(z[h+564>>2]*i)+C(C(z[h+532>>2]*k)+C(l*z[h+548>>2]))));l=z[d+20>>2];J=z[d+36>>2];i=C(C(n*C(A-j))+C(C(C(s-P)*O)+C(C(k-l)*J)));j=C(j-C(A-C(n*i)));n=C(j*j);j=C(P-C(s-C(O*i)));s=C(j*j);j=C(l-C(k-C(J*i)));a:{if(m>2];v[d>>2]=v[e>>2];v[d+4>>2]=u;u=v[e+44>>2];v[d+40>>2]=v[e+40>>2];v[d+44>>2]=u;u=v[e+36>>2];v[d+32>>2]=v[e+32>>2];v[d+36>>2]=u;u=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=u;u=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=u;u=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=u;break a}z[d+44>>2]=i}if(a){continue}break}k=z[f+52>>2];u=w[p+64|0];m=z[h+696>>2];j=C(z[f+60>>2]*m);l=z[h+692>>2];i=C(z[f+56>>2]*l)}n=z[h+688>>2];z[h+496>>2]=K(C(C(r*r)+C(C(N*N)+C(M*M))));s=C(j*j);j=C(k*n);z[h+480>>2]=K(C(s+C(C(j*j)+C(i*i))));b:{c:{if((c|0)==(u&255)){if(!n1(p,h+592|0,h+656|0,h+624|0,h+512|0,h+496|0,h+480|0)){break c}}a=v[h+668>>2];v[h+168>>2]=v[h+664>>2];v[h+172>>2]=a;a=v[h+636>>2];v[h+312>>2]=v[h+632>>2];v[h+316>>2]=a;a=v[h+620>>2];v[p+24>>2]=v[h+616>>2];v[p+28>>2]=a;a=v[h+660>>2];v[h+160>>2]=v[h+656>>2];v[h+164>>2]=a;a=v[h+628>>2];v[h+304>>2]=v[h+624>>2];v[h+308>>2]=a;a=v[h+612>>2];v[p+16>>2]=v[h+608>>2];v[p+20>>2]=a;a=v[h+604>>2];v[p+8>>2]=v[h+600>>2];v[p+12>>2]=a;a=v[h+596>>2];v[p>>2]=v[h+592>>2];v[p+4>>2]=a;a=v[h+172>>2];v[p+40>>2]=v[h+168>>2];v[p+44>>2]=a;a=v[h+164>>2];v[p+32>>2]=v[h+160>>2];v[p+36>>2]=a;a=v[h+308>>2];v[p+48>>2]=v[h+304>>2];v[p+52>>2]=a;a=v[h+316>>2];v[p+56>>2]=v[h+312>>2];v[p+60>>2]=a;a=v[b+16>>2];d=v[b+20>>2];e=v[b+28>>2];v[h+472>>2]=v[b+24>>2];v[h+476>>2]=e;v[h+464>>2]=a;v[h+468>>2]=d;d=0;d:{if(z[b+4>>2]!=C(1)){break d}d=0;if(z[b+8>>2]!=C(1)){break d}d=z[b+12>>2]==C(1)}b=h+576|0;i=z[f+32>>2];a=f;e=v[a+28>>2];f=v[a+24>>2];t[h+336|0]=0;v[h+332>>2]=0;v[h+448>>2]=a;v[h+316>>2]=0;z[h+312>>2]=i;v[h+304>>2]=f;v[h+308>>2]=e;v[h+456>>2]=v[a+40>>2]+B(w[a+39|0],20);t[h+460|0]=w[a+38|0];i=C(z[a+52>>2]*n);j=C(z[a+56>>2]*l);i=i<=j?i:j;j=C(z[a+60>>2]*m);i=i<=j?i:j;z[h+328>>2]=i*C(.02500000037252903);z[h+324>>2]=i*C(.05000000074505806);z[h+320>>2]=i*C(.10000000149011612);FV(h+688|0,h+464|0,h+352|0,h+400|0,h+304|0,d);v[h+452>>2]=v[a+44>>2];v[h+300>>2]=0;z[h+296>>2]=r;z[h+292>>2]=M;v[h+248>>2]=0;v[h+252>>2]=0;v[h+240>>2]=0;v[h+244>>2]=0;z[h+288>>2]=N;t[h+272|0]=0;v[h+268>>2]=3;i=C(q*C(.05000000074505806));z[h+264>>2]=i;z[h+260>>2]=i;z[h+256>>2]=G;v[h+200>>2]=0;v[h+204>>2]=0;v[h+192>>2]=0;v[h+196>>2]=0;v[h+184>>2]=0;v[h+188>>2]=0;v[h+176>>2]=0;v[h+180>>2]=0;v[h+168>>2]=0;v[h+172>>2]=0;v[h+160>>2]=0;v[h+164>>2]=0;v[h+224>>2]=0;v[h+80>>2]=141468;v[h+88>>2]=h+528;v[h+84>>2]=h+240;a=v[h+548>>2];v[h+112>>2]=v[h+544>>2];v[h+116>>2]=a;a=v[h+556>>2];v[h+120>>2]=v[h+552>>2];v[h+124>>2]=a;a=v[h+540>>2];v[h+104>>2]=v[h+536>>2];v[h+108>>2]=a;a=v[h+564>>2];v[h+128>>2]=v[h+560>>2];v[h+132>>2]=a;a=v[h+572>>2];v[h+136>>2]=v[h+568>>2];v[h+140>>2]=a;a=v[h+580>>2];v[h+144>>2]=v[h+576>>2];v[h+148>>2]=a;a=v[h+588>>2];v[h+152>>2]=v[h+584>>2];v[h+156>>2]=a;a=v[h+532>>2];v[h+96>>2]=v[h+528>>2];v[h+100>>2]=a;i=z[h+100>>2];z[h+100>>2]=z[h+112>>2];j=z[h+120>>2];k=z[h+104>>2];z[h+104>>2]=z[h+128>>2];z[h+120>>2]=z[h+132>>2];z[h+128>>2]=k;z[h+132>>2]=j;z[h+112>>2]=i;if(d){v[h+72>>2]=144404;v[h+76>>2]=h+304;f=p+67|0;u=p+71|0;e=h+160|0;d=xa-320|0;xa=d;W=h+72|0;H=v[W+4>>2];i=z[H+20>>2];I=h+80|0;x=v[I+4>>2];j=z[x+20>>2];M=z[h+704>>2];Z=w[x+32|0];N=z[x+16>>2];_=w[H+32|0];G=z[H+16>>2];v[d+44>>2]=0;A=C((i>2];b=0;while(1){a=o<<2;L=w[f+o|0];v[a+(d- -64|0)>>2]=L;D=w[o+u|0];v[a+(d+48|0)>>2]=D;a=(L<<4)+101152|0;$=v[a+8>>2];aa=v[a>>2];ba=v[a+4>>2];a=v[H+152>>2]+B(D,12)|0;i=z[a>>2];j=z[a+4>>2];k=z[a+8>>2];n=z[y+48>>2];q=z[y+32>>2];s=z[y>>2];P=z[y+16>>2];O=z[y+52>>2];J=z[y+36>>2];Q=z[y+4>>2];T=z[y+20>>2];S=z[y+56>>2];U=z[y+40>>2];l=z[x+56>>2];V=z[y+8>>2];m=z[x+48>>2];X=z[y+24>>2];r=z[x+52>>2];a=b;R=a<<4;L=R+(d+144|0)|0;v[L+12>>2]=0;D=R+(d+80|0)|0;v[D+12>>2]=0;z[D+8>>2]=k;z[D+4>>2]=j;z[D>>2]=i;D=R+(d+208|0)|0;v[D+12>>2]=0;l=$?l:C(-l);m=aa?m:C(-m);r=ba?r:C(-r);S=C(S+C(C(U*l)+C(C(V*m)+C(X*r))));z[L+8>>2]=S;O=C(O+C(C(J*l)+C(C(Q*m)+C(r*T))));z[L+4>>2]=O;l=C(n+C(C(q*l)+C(C(s*m)+C(r*P))));z[L>>2]=l;k=C(S-k);z[D+8>>2]=k;j=C(O-j);z[D+4>>2]=j;i=C(l-i);z[D>>2]=i;b=a+1|0;o=o+1|0;if((Y|0)!=(o|0)){continue}break}v[d+44>>2]=b;k:{l:{switch(a-1|0){case 0:l=z[d+216>>2];i=C(z[d+232>>2]-l);m=z[d+208>>2];j=C(z[d+224>>2]-m);r=z[d+212>>2];k=C(z[d+228>>2]-r);n=C(C(i*i)+C(C(j*j)+C(k*k)));if(!(n<=C(1.1920928955078125e-7))){break k}v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break i;case 1:iY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i;case 2:break l;default:break j}}P_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i}v[d+28>>2]=0;s=i;i=C(F(C(C(C(C(C(-m)*j)-C(k*r))-C(l*i))/n),C(1)));i=i>C(0)?i:C(0);z[d+24>>2]=l+C(s*i);z[d+20>>2]=r+C(k*i);z[d+16>>2]=m+C(j*i);break i}i=z[b+8>>2];j=z[b>>2];l=z[b+4>>2];v[d+284>>2]=0;a=C(C(i*i)+C(C(j*j)+C(l*l)))>C(0);k=a?i:C(0);z[d+280>>2]=k;l=a?l:C(0);z[d+276>>2]=l;i=a?j:C(1);z[d+272>>2]=i;m=C(C(1)/C(K(C(C(k*k)+C(C(i*i)+C(l*l))))));n=C(k*m);q=C(i*m);j=C(34028234663852886e22);r=C(l*m);break h}v[d+28>>2]=0;z[d+24>>2]=k;z[d+20>>2]=j;z[d+16>>2]=i}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;k=z[d+280>>2];i=z[d+272>>2];l=z[d+276>>2];j=C(K(C(C(k*k)+C(C(i*i)+C(l*l)))));if(!(A>2]=v[d+312>>2];a=v[d+308>>2];v[d+288>>2]=v[d+304>>2];v[d+292>>2]=a;b=v[I+4>>2];a=v[I+8>>2];M=i;o=v[d+44>>2]<<2;i=C(-i);N=l;G=k;y=C(C(C(z[I+20>>2]*i)-C(z[I+36>>2]*l))-C(z[I+52>>2]*k))>C(0);x=C(C(C(z[I+16>>2]*i)-C(z[I+32>>2]*l))-C(z[I+48>>2]*k))>C(0);H=C(C(C(z[I+24>>2]*i)-C(z[I+40>>2]*l))-C(z[I+56>>2]*k))>C(0);v[o+(d- -64|0)>>2]=y<<1|x|H<<2;l=z[a+56>>2];s=z[a+40>>2];O=z[a+24>>2];J=z[a+52>>2];Q=z[a+36>>2];i=z[b+56>>2];T=z[a+20>>2];j=z[b+52>>2];S=z[a+8>>2];U=z[a+48>>2];V=z[a+32>>2];X=z[a>>2];ca=z[a+16>>2];da=z[a+4>>2];k=z[b+48>>2];ea=z[d+284>>2];a=v[W+4>>2];b=HV(a,d+272|0);v[o+(d+48|0)>>2]=b;i=H?i:C(-i);k=x?k:C(-k);j=y?j:C(-j);O=C(l+C(C(s*i)+C(C(S*k)+C(O*j))));a=v[a+152>>2]+B(b,12)|0;S=z[a+8>>2];l=C(O-S);U=C(U+C(C(V*i)+C(C(X*k)+C(j*ca))));V=z[a>>2];s=C(U-V);j=C(J+C(C(Q*i)+C(C(da*k)+C(j*T))));k=z[a+4>>2];i=C(j-k);J=C(C(n*l)+C(C(q*s)+C(r*i)));if(J>P){y=0;if(!f){break e}o=v[d+44>>2];t[p+66|0]=o;if(!o){break e}b=0;if((o|0)!=1){L=o&-2;a=0;while(1){x=b<<2;D=d- -64|0;t[b+f|0]=v[x+D>>2];R=d+48|0;t[b+u|0]=v[R+x>>2];x=b|1;H=x<<2;t[f+x|0]=v[D+H>>2];t[u+x|0]=v[H+R>>2];b=b+2|0;a=a+2|0;if((L|0)!=(a|0)){continue}break}}if(!(o&1)){break e}a=b<<2;t[b+f|0]=v[a+(d- -64|0)>>2];t[b+u|0]=v[a+(d+48|0)>>2];break e}b=v[d+44>>2];if(J>C(m*C(.9997749924659729))){m:{if(!f){break m}t[p+66|0]=b;if(!b){break m}o=0;if((b|0)!=1){H=b&-2;a=0;while(1){y=o<<2;L=d- -64|0;t[f+o|0]=v[y+L>>2];D=d+48|0;t[o+u|0]=v[D+y>>2];y=o|1;x=y<<2;t[f+y|0]=v[x+L>>2];t[u+y|0]=v[x+D>>2];o=o+2|0;a=a+2|0;if((H|0)!=(a|0)){continue}break}}if(!(b&1)){break m}a=o<<2;t[f+o|0]=v[a+(d- -64|0)>>2];t[o+u|0]=v[a+(d+48|0)>>2]}z[e+32>>2]=q;v[e+44>>2]=0;z[e+40>>2]=n;z[e+36>>2]=r;IV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,b);a=v[d+20>>2];v[e>>2]=v[d+16>>2];v[e+4>>2]=a;a=v[d+28>>2];v[e+8>>2]=v[d+24>>2];v[e+12>>2]=a;a=v[d+4>>2];v[e+16>>2]=v[d>>2];v[e+20>>2]=a;a=v[d+12>>2];v[e+24>>2]=v[d+8>>2];v[e+28>>2]=a;a=v[d+308>>2];v[e+68>>2]=v[d+304>>2];v[e+72>>2]=a;v[e+76>>2]=v[d+312>>2];z[e+64>>2]=m;y=2;break e}o=b<<4;a=o+(d+144|0)|0;v[a+12>>2]=0;z[a+8>>2]=O;z[a+4>>2]=j;z[a>>2]=U;a=o+(d+80|0)|0;v[a+12>>2]=0;z[a+8>>2]=S;z[a+4>>2]=k;z[a>>2]=V;a=o+(d+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=l;z[a+4>>2]=i;z[a>>2]=s;v[d+44>>2]=b+1;n:{o:{switch(b-1|0){case 0:l=z[d+216>>2];i=C(z[d+232>>2]-l);r=z[d+208>>2];j=C(z[d+224>>2]-r);n=z[d+212>>2];k=C(z[d+228>>2]-n);q=C(C(i*i)+C(C(j*j)+C(k*k)));if(q<=C(1.1920928955078125e-7)){v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break n}v[d+28>>2]=0;s=i;i=C(F(C(C(C(C(C(-r)*j)-C(k*n))-C(l*i))/q),C(1)));i=i>C(0)?i:C(0);z[d+24>>2]=l+C(s*i);z[d+20>>2]=n+C(k*i);z[d+16>>2]=r+C(j*i);break n;case 1:iY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;case 2:P_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;default:break o}}v[d+28>>2]=0;z[d+24>>2]=l;z[d+20>>2]=i;z[d+16>>2]=s}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;k=z[d+280>>2];i=z[d+272>>2];l=z[d+276>>2];j=C(K(C(C(k*k)+C(C(i*i)+C(l*l)))));q=C(C(1)/j);n=C(k*q);r=C(l*q);q=C(i*q);if(jA){continue}break}o=v[d+44>>2];if(!(j>2];R=d+48|0;t[b+u|0]=v[R+x>>2];x=b|1;H=x<<2;t[f+x|0]=v[D+H>>2];t[u+x|0]=v[H+R>>2];b=b+2|0;a=a+2|0;if((L|0)!=(a|0)){continue}break}}if(!(y&1)){break p}a=b<<2;t[b+f|0]=v[a+(d- -64|0)>>2];t[b+u|0]=v[a+(d+48|0)>>2]}v[d+312>>2]=v[d+296>>2];a=v[d+292>>2];v[d+304>>2]=v[d+288>>2];v[d+308>>2]=a;z[d+284>>2]=ea;z[d+272>>2]=M;z[d+276>>2]=N;z[d+280>>2]=G;IV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,o);v[e+60>>2]=0;z[e+56>>2]=n;z[e+52>>2]=r;z[e+48>>2]=q;v[e+44>>2]=0;i=C(C(1)/m);z[e+40>>2]=G*i;z[e+36>>2]=N*i;z[e+32>>2]=M*i;a=v[d+20>>2];v[e>>2]=v[d+16>>2];v[e+4>>2]=a;a=v[d+28>>2];v[e+8>>2]=v[d+24>>2];v[e+12>>2]=a;a=v[d+4>>2];v[e+16>>2]=v[d>>2];v[e+20>>2]=a;a=v[d+12>>2];v[e+24>>2]=v[d+8>>2];v[e+28>>2]=a;z[e+64>>2]=m;a=v[d+292>>2];v[e+68>>2]=v[d+288>>2];v[e+72>>2]=a;v[e+76>>2]=v[d+296>>2];y=4;break e}if(f){break f}y=5;break e}o=v[d+44>>2]}t[p+66|0]=o;y=5;if(!o){break e}b=0;if((o|0)!=1){L=o&-2;a=0;while(1){x=b<<2;D=d- -64|0;t[b+f|0]=v[x+D>>2];R=d+48|0;t[b+u|0]=v[R+x>>2];x=b|1;H=x<<2;t[f+x|0]=v[D+H>>2];t[u+x|0]=v[H+R>>2];b=b+2|0;a=a+2|0;if((L|0)!=(a|0)){continue}break}}if(!(o&1)){break e}a=b<<2;t[b+f|0]=v[a+(d- -64|0)>>2];t[b+u|0]=v[a+(d+48|0)>>2]}xa=d+320|0;a=v[h+524>>2];v[h+24>>2]=v[h+520>>2];v[h+28>>2]=a;a=v[h+516>>2];v[h+16>>2]=v[h+512>>2];v[h+20>>2]=a;a=v[h+708>>2];v[h>>2]=v[h+704>>2];v[h+4>>2]=a;a=v[h+716>>2];v[h+8>>2]=v[h+712>>2];v[h+12>>2]=a;a=r1(I,W,h+656|0,h+624|0,h+528|0,y,e,p,g,c,h+16|0,h,1,E);break b}v[h+72>>2]=141216;v[h+76>>2]=h+304;a=h+80|0;d=h+72|0;e=b;b=h+160|0;e=MX(a,d,e,h+704|0,1,p+67|0,p+71|0,p+66|0,b);f=v[h+524>>2];v[h+56>>2]=v[h+520>>2];v[h+60>>2]=f;f=v[h+516>>2];v[h+48>>2]=v[h+512>>2];v[h+52>>2]=f;f=v[h+708>>2];v[h+32>>2]=v[h+704>>2];v[h+36>>2]=f;f=v[h+716>>2];v[h+40>>2]=v[h+712>>2];v[h+44>>2]=f;a=r1(a,d,h+656|0,h+624|0,h+528|0,e,b,p,g,c,h+48|0,h+32|0,0,E);break b}b=w[p+64|0];a=0;if(!b){break b}a=1;c=v[p+76>>2];k=z[c+32>>2];i=k;l=z[c+36>>2];j=l;r=z[c+40>>2];m=r;q:{if((b|0)==1){break q}d=b-1|0;e=d&1;m=r;j=l;i=k;if((b|0)!=2){d=d&-2;u=0;while(1){b=c+B(a,48)|0;i=C(C(i+z[b+32>>2])+z[b+80>>2]);m=C(C(m+z[b+40>>2])+z[b+88>>2]);j=C(C(j+z[b+36>>2])+z[b+84>>2]);a=a+2|0;u=u+2|0;if((d|0)!=(u|0)){continue}break}}if(!e){break q}a=c+B(a,48)|0;i=C(i+z[a+32>>2]);m=C(m+z[a+40>>2]);j=C(j+z[a+36>>2])}v[h+316>>2]=0;M=z[h+632>>2];a=C(C(m*m)+C(C(i*i)+C(j*j)))>C(1.1920928955078125e-7);m=a?m:r;r=z[h+624>>2];k=a?i:k;N=z[h+628>>2];j=a?j:l;l=C(C(M*m)+C(C(r*k)+C(N*j)));i=z[h+636>>2];G=C(C(i*i)+C(-.5));n=C(C(M*l)+C(C(i*C(C(r*j)-C(k*N)))+C(m*G)));n=C(n+n);q=C(C(r*l)+C(C(i*C(C(N*m)-C(j*M)))+C(k*G)));q=C(q+q);i=C(C(N*l)+C(C(i*C(C(M*k)-C(m*r)))+C(j*G)));j=C(i+i);i=C(C(1)/C(K(C(C(n*n)+C(C(q*q)+C(j*j))))));z[h+312>>2]=n*i;z[h+308>>2]=j*i;z[h+304>>2]=q*i;q2(p,g,h+304|0,h+624|0,h+704|0);a=1}xa=h+720|0;return a|0}function N2(a,b,c,d,e,f){var g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),x=C(0),y=0,A=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=0,ba=0,ca=C(0),da=0,ea=0,fa=0;i=xa-320|0;xa=i;k=z[c>>2];h=z[c+4>>2];g=z[c+8>>2];z[i+44>>2]=g;z[i+40>>2]=h;z[i+36>>2]=k;z[i+32>>2]=-g;z[i+28>>2]=-h;z[i+24>>2]=-k;k=z[d>>2];h=z[d+4>>2];g=z[d+8>>2];z[i+16>>2]=g!=C(0)?C(C(1)/g):C(0);z[i+12>>2]=h!=C(0)?C(C(1)/h):C(0);z[i+8>>2]=k!=C(0)?C(C(1)/k):C(0);v[i+4>>2]=2139095039;l=i+24|0;Q=a;U=b;b=0;a=0;y=xa-176|0;xa=y;k=z[e>>2];h=C(z[e+12>>2]-k);g=z[e+4>>2];p=C(z[e+28>>2]-g);k=C(z[e+24>>2]-k);g=C(z[e+16>>2]-g);J=C(C(h*p)-C(k*g));q=z[e+8>>2];o=C(z[e+20>>2]-q);j=C(o*k);k=C(z[e+32>>2]-q);j=C(j-C(k*h));E=C(C(g*k)-C(p*o));if(C(C(J*z[d+8>>2])+C(C(E*z[d>>2])+C(j*z[d+4>>2])))>=C(0)){a=0}else{zV(l,y+80|0);g=z[e+20>>2];p=z[e+8>>2];A=z[e+32>>2];k=C(C(C(g+p)+A)*C(.3333333432674408));o=z[e+28>>2];I=z[e+4>>2];P=z[e+16>>2];h=C(C(o+C(I+P))*C(.3333333432674408));m=z[e+24>>2];L=z[e>>2];u=z[e+12>>2];q=C(C(m+C(L+u))*C(.3333333432674408));x=C(p+C(C(p-k)*C(.019999999552965164)));s=C(C(g+C(C(g-k)*C(.019999999552965164)))-x);g=z[d>>2];n=C(I+C(C(I-h)*C(.019999999552965164)));M=C(C(o+C(C(o-h)*C(.019999999552965164)))-n);R=C(L+C(C(L-q)*C(.019999999552965164)));p=C(C(m+C(C(m-q)*C(.019999999552965164)))-R);o=z[d+4>>2];N=C(C(g*M)-C(p*o));u=C(C(u+C(C(u-q)*C(.019999999552965164)))-R);q=C(C(A+C(C(A-k)*C(.019999999552965164)))-x);m=z[d+8>>2];S=C(C(o*q)-C(M*m));Y=C(C(P+C(C(P-h)*C(.019999999552965164)))-n);H=C(C(m*p)-C(q*g));L=C(C(s*N)+C(C(u*S)+C(Y*H)));V=L!=C(0)?C(C(1)/L):C(0);k=z[i+4>>2];A=C(-o);I=C(-g);P=C(-m);Z=-1;a:{if(!(L>=C(9999999747378752e-21))){break a}while(1){aa=B(b,12);r=aa+103792|0;b:{if(C(C(z[r+8>>2]*J)+C(C(z[r>>2]*E)+C(j*z[r+4>>2])))>=C(0)){break b}r=aa+(y+80|0)|0;h=C(z[r+8>>2]-x);X=C(z[r>>2]-R);$=C(z[r+4>>2]-n);T=C(C(h*N)+C(C(X*S)+C(H*$)));if(Tk){break b}Z=0;a=b;k=h}b=b+1|0;if((b|0)!=8){continue}break}if(Z){break a}a=(y+80|0)+B(a,12)|0;h=z[a>>2];A=z[a+4>>2];z[Q+8>>2]=C(m*k)+z[a+8>>2];z[Q+4>>2]=A+C(o*k);z[Q>>2]=h+C(g*k);z[U+8>>2]=J;z[U+4>>2]=j;z[U>>2]=E;P=C(-z[d+8>>2]);A=C(-z[d+4>>2]);I=C(-z[d>>2]);Z=0}L=C(D(P));J=C(D(A));j=C(-z[i+16>>2]);x=C(-z[i+12>>2]);o=C(-z[i+8>>2]);s=C(D(I));c:{d:{e:{f:{g:{if(s>2];if(h>2]|h>z[l+12>>2]){break g}}h:{if(J>2];if(h>2]|h>z[l+16>>2]){break h}}i:{if(!(L>2];E=z[e+8>>2];m=z[l+8>>2];break i}m=z[l+8>>2];E=z[e+8>>2];if(m>E){break h}u=z[l+20>>2];if(u>2];h=C(C(z[l>>2]-g)*o);n=C(C(z[l+12>>2]-g)*o);a=h>n;r=s>2];n=C(C(z[l+4>>2]-M)*x);M=C(C(z[l+16>>2]-M)*x);a=n>M;R=a?n:M;g=gh;b=a?r:b;h=a?n:h}if(!(LE;u=a?m:E;g=gh;b=a?r:b;h=a?m:h}a=h>g?-1:g>2]=z[a+8>>2];b=v[a+4>>2];v[U>>2]=v[a>>2];v[U+4>>2]=b;z[Q>>2]=z[e>>2];z[Q+4>>2]=z[e+4>>2];z[Q+8>>2]=z[e+8>>2];Z=1;k=h}if(!(s>2];if(h>2]|h>z[l+12>>2]){break e}}j:{if(J>2];if(h>2]|h>z[l+16>>2]){break j}}k:{if(!(L>2];E=z[e+20>>2];m=z[l+8>>2];break k}m=z[l+8>>2];E=z[e+20>>2];if(m>E){break j}u=z[l+20>>2];if(u>2];h=C(C(z[l>>2]-g)*o);n=C(C(z[l+12>>2]-g)*o);a=h>n;r=s>2];n=C(C(z[l+4>>2]-M)*x);M=C(C(z[l+16>>2]-M)*x);a=n>M;R=a?n:M;g=gh;b=a?r:b;h=a?n:h}if(!(LE;u=a?m:E;g=gh;b=a?r:b;h=a?m:h}a=h>g?-1:g>2]=z[a+8>>2];b=v[a+4>>2];v[U>>2]=v[a>>2];v[U+4>>2]=b;z[Q>>2]=z[e+12>>2];z[Q+4>>2]=z[e+16>>2];z[Q+8>>2]=z[e+20>>2];Z=1;k=h}if(!(s>2];if(h>2]|h>z[l+12>>2]){break c}}if(J>2];if(h>2]|h>z[l+16>>2]){break c}}l:{if(!(L>2];u=z[e+32>>2];E=z[l+8>>2];break l}E=z[l+8>>2];u=z[e+32>>2];if(E>u){break c}m=z[l+20>>2];if(u>m){break c}}g=z[e+24>>2];h=C(C(z[l>>2]-g)*o);g=C(C(z[l+12>>2]-g)*o);a=h>g;r=s>2];g=C(C(z[l+4>>2]-J)*x);J=C(C(z[l+16>>2]-J)*x);a=g>J;x=a?g:J;o=oh;b=a?l:b;h=a?g:h}if(!(Lm;L=a?g:m;o=oh;b=a?l:b;h=a?g:h}a=h>o?-1:o>2]=z[a+8>>2];b=v[a+4>>2];v[U>>2]=v[a>>2];v[U+4>>2]=b;z[Q>>2]=z[e+24>>2];z[Q+4>>2]=z[e+28>>2];z[Q+8>>2]=z[e+32>>2];Z=1;k=h}aa=-1;b=140784;da=-1;while(1){l=y+80|0;a=l+B(w[b|0],12)|0;o=z[a>>2];z[y+32>>2]=o;h=z[a+4>>2];z[y+36>>2]=h;g=z[a+8>>2];z[y+40>>2]=g;a=l+B(w[b+1|0],12)|0;M=z[a+8>>2];m=C(M-g);u=z[a>>2];L=C(u-o);E=z[a+4>>2];J=C(E-h);j=C(K(C(C(m*m)+C(C(L*L)+C(J*J)))));if(j>C(0)){n=m;m=C(C(.009999999776482582)/j);j=C(n*m);g=C(g-j);z[y+40>>2]=g;J=C(J*m);h=C(h-J);z[y+36>>2]=h;m=C(L*m);o=C(o-m);z[y+32>>2]=o;M=C(M+j);u=C(u+m);E=C(E+J)}a=B(ea,12)+103648|0;j=z[d+8>>2];n=z[d>>2];s=z[d+4>>2];if(!(C(C(z[a+8>>2]*j)+C(C(z[a>>2]*n)+C(z[a+4>>2]*s)))>2]=m;L=C(E-h);z[y+20>>2]=L;J=C(u-o);z[y+16>>2]=J;x=C(C(J*s)-C(n*L));s=C(C(L*j)-C(s*m));n=C(C(m*n)-C(j*J));R=C(C(x*g)+C(C(s*o)+C(h*n)));Y=C(D(n));X=C(D(x));j=C(D(s));m:{n:{if(!(!(Y>X)|!(Y>j))){l=0;r=2;break n}a=2;r=0;l=1;if(!(j>2];a=a<<2;j=z[a+r>>2];X=C(C(1)/C(C(Y*z[a+d>>2])-C(z[d+l>>2]*j)));ba=y+32|0;r=ba+l|0;l=l+y|0;ba=a+ba|0;a=a+y|0;$=C(-j);j=z[e+8>>2];T=z[e>>2];N=z[e+4>>2];S=C(C(C(j*x)+C(C(T*s)+C(n*N)))-R);H=z[e+20>>2];V=z[e+12>>2];W=z[e+16>>2];o:{if(C(S*C(C(C(H*x)+C(C(V*s)+C(n*W)))-R))>C(0)){break o}H=C(H-j);V=C(V-T);W=C(W-N);ca=C(C(x*H)+C(C(s*V)+C(n*W)));if(ca==C(0)){break o}_=j;j=C(S/ca);S=C(_-C(H*j));z[y+8>>2]=S;H=C(N-C(W*j));z[y+4>>2]=H;N=C(T-C(V*j));z[y>>2]=N;j=C(X*C(C(Y*C(z[a>>2]-z[ba>>2]))+C(C(z[l>>2]-z[r>>2])*$)));if(j>2]);T=C(S-V);W=C(j*z[d>>2]);N=C(N-W);_=H;H=C(j*z[d+4>>2]);S=C(_-H);if(!(C(C(C(g-T)*C(M-T))+C(C(C(o-N)*C(u-N))+C(C(h-S)*C(E-S))))=j)){break o}z[Q+8>>2]=V+T;z[Q+4>>2]=H+S;z[Q>>2]=W+N;Z=2;aa=1;da=0;p=m;q=L;O=J;A=g;I=h;P=o;k=j}j=z[e+20>>2];T=z[e+12>>2];N=z[e+16>>2];S=C(C(C(j*x)+C(C(T*s)+C(n*N)))-R);H=z[e+32>>2];V=z[e+24>>2];W=z[e+28>>2];p:{if(C(S*C(C(C(H*x)+C(C(V*s)+C(n*W)))-R))>C(0)){break p}H=C(H-j);V=C(V-T);W=C(W-N);ca=C(C(x*H)+C(C(s*V)+C(n*W)));if(ca==C(0)){break p}_=j;j=C(S/ca);S=C(_-C(H*j));z[y+8>>2]=S;H=C(N-C(W*j));z[y+4>>2]=H;N=C(T-C(V*j));z[y>>2]=N;j=C(X*C(C(Y*C(z[a>>2]-z[ba>>2]))+C(C(z[l>>2]-z[r>>2])*$)));if(j>2]);T=C(S-V);W=C(j*z[d>>2]);N=C(N-W);_=H;H=C(j*z[d+4>>2]);S=C(_-H);if(!(C(C(C(g-T)*C(M-T))+C(C(C(o-N)*C(u-N))+C(C(h-S)*C(E-S))))=j)){break p}z[Q+8>>2]=V+T;z[Q+4>>2]=H+S;z[Q>>2]=W+N;aa=2;da=1;p=m;q=L;O=J;A=g;I=h;P=o;Z=2;k=j}j=z[e+32>>2];T=z[e+24>>2];N=z[e+28>>2];S=C(C(C(j*x)+C(C(T*s)+C(n*N)))-R);H=z[e+8>>2];V=z[e>>2];W=z[e+4>>2];q:{if(C(S*C(C(C(H*x)+C(C(V*s)+C(n*W)))-R))>C(0)){break q}_=x;x=C(H-j);H=s;s=C(V-T);R=n;n=C(W-N);R=C(C(_*x)+C(C(H*s)+C(R*n)));if(R==C(0)){break q}H=j;j=C(S/R);x=C(H-C(x*j));z[y+8>>2]=x;n=C(N-C(n*j));z[y+4>>2]=n;s=C(T-C(s*j));z[y>>2]=s;j=C(X*C(C(Y*C(z[a>>2]-z[ba>>2]))+C(C(z[l>>2]-z[r>>2])*$)));if(j>2]);x=C(x-R);_=C(C(g-x)*C(M-x));M=C(j*z[d>>2]);s=C(s-M);N=C(C(o-s)*C(u-s));H=n;n=C(j*z[d+4>>2]);u=C(H-n);if(!(C(_+C(N+C(C(h-u)*C(E-u))))=j)){break q}z[Q+8>>2]=R+x;z[Q+4>>2]=n+u;z[Q>>2]=M+s;aa=0;da=2;p=m;q=L;O=J;A=g;I=h;P=o;Z=2;k=j}z[y+72>>2]=A;z[y+68>>2]=I;z[y+64>>2]=P;z[y+56>>2]=p;z[y+52>>2]=q;z[y+48>>2]=O}b=b+2|0;ea=ea+1|0;if((ea|0)!=12){continue}break}if((Z|0)!=-1){if((Z|0)==2){a=B(da,12)+e|0;h=z[a>>2];b=B(aa,12)+e|0;g=z[b>>2];p=z[a+4>>2];q=z[b+4>>2];z[y+40>>2]=z[b+8>>2]-z[a+8>>2];z[y+36>>2]=q-p;z[y+32>>2]=g-h;O2(U,y- -64|0,y+48|0,a,y+32|0,d,k)}z[i+4>>2]=k}a=(Z|0)!=-1}xa=y+176|0;r:{if(a){if(z[U>>2]!=C(0)|z[U+4>>2]!=C(0)|z[U+8>>2]!=C(0)){break r}}p=z[e+16>>2];q=z[e+20>>2];O=z[e+28>>2];o=z[e+32>>2];A=z[e>>2];I=z[e+4>>2];P=z[e+8>>2];m=z[e+12>>2];j=z[e+24>>2];k=z[d>>2];h=z[d+4>>2];g=z[d+8>>2];v[i+316>>2]=0;v[i+300>>2]=0;v[i+284>>2]=0;L=C(g*f);g=C(L-C(g*C(.10000000149011612)));o=C(o-g);z[i+312>>2]=o;J=C(h*f);h=C(J-C(h*C(.10000000149011612)));O=C(O-h);z[i+308>>2]=O;n=j;j=C(k*f);f=C(j-C(k*C(.10000000149011612)));k=C(n-f);z[i+304>>2]=k;q=C(q-g);z[i+296>>2]=q;p=C(p-h);z[i+292>>2]=p;m=C(m-f);z[i+288>>2]=m;g=C(P-g);z[i+280>>2]=g;h=C(I-h);z[i+276>>2]=h;t[i+256|0]=0;v[i+248>>2]=2139095039;v[i+252>>2]=5;v[i+236>>2]=0;v[i+240>>2]=0;v[i+244>>2]=2139095039;g=C(C(C(g+q)+o)*C(.33333298563957214));z[i+232>>2]=g;p=C(C(C(h+p)+O)*C(.33333298563957214));z[i+228>>2]=p;f=C(A-f);z[i+272>>2]=f;q=C(C(C(f+m)+k)*C(.33333298563957214));z[i+224>>2]=q;v[i+168>>2]=0;v[i+172>>2]=0;v[i+160>>2]=0;v[i+164>>2]=0;f=z[c>>2];k=z[c+4>>2];h=z[c+8>>2];v[i+220>>2]=0;z[i+216>>2]=h;z[i+212>>2]=k;z[i+208>>2]=f;t[i+192|0]=0;v[i+188>>2]=3;f=f<=k?f:k;f=f<=h?f:h;k=C(f*C(.05000000074505806));z[i+184>>2]=k;z[i+180>>2]=k;z[i+176>>2]=f*C(.15000000596046448);v[i+88>>2]=141856;v[i+92>>2]=i+224;v[i+80>>2]=141808;v[i+84>>2]=i+160;v[i+76>>2]=0;z[i+72>>2]=g;z[i+68>>2]=p;z[i+64>>2]=q;v[i+48>>2]=2139095039;a=xa-288|0;xa=a;v[a+92>>2]=0;b=i- -64|0;f=z[b+8>>2];k=z[b>>2];h=z[b+4>>2];v[a+76>>2]=0;b=C(C(f*f)+C(C(k*k)+C(h*h)))>C(0);A=b?f:C(0);z[a+72>>2]=A;I=b?h:C(0);z[a+68>>2]=I;P=b?k:C(1);z[a+64>>2]=P;b=v[i+92>>2];c=w[b+32|0];l=v[i+84>>2];e=w[l+32|0];m=C((c?z[b+16>>2]:C(0))+(e?z[l+16>>2]:C(0)));E=C(z[i+48>>2]+m);f=C(C(1)/C(K(C(C(A*A)+C(C(P*P)+C(I*I))))));O=C(A*f);p=C(I*f);q=C(P*f);f=z[l+20>>2];k=z[b+20>>2];u=C(G(C((f>2];v[a+40>>2]=v[a+72>>2];v[a+44>>2]=b;b=v[a+68>>2];v[a+32>>2]=v[a+64>>2];v[a+36>>2]=b;b=v[i+92>>2];k=z[b+72>>2];h=z[b- -64>>2];f=C(-P);x=z[b+68>>2];g=C(C(C(h*f)-C(x*I))-C(k*A));s=z[b+80>>2];n=z[b+84>>2];M=z[b+88>>2];R=C(C(C(s*f)-C(n*I))-C(M*A));l=g>R;H=g;Y=z[b+48>>2];X=z[b+52>>2];g=z[b+56>>2];f=C(C(C(Y*f)-C(X*I))-C(g*A));b=!(HR);f=O;M=b?l?k:M:g;r=v[i+84>>2];k=z[r+56>>2];A=A>C(0)?k:C(-k);g=C(M-A);k=q;s=b?l?h:s:Y;h=z[r+48>>2];P=P>C(0)?h:C(-h);q=C(s-P);h=p;x=b?l?x:n:X;p=z[r+52>>2];I=I>C(0)?p:C(-p);p=C(x-I);O=C(C(f*g)+C(C(k*q)+C(h*p)));if(O>E){break s}if(!(!(mC(o*C(.9997749924659729))))){IV(a+224|0,a+160|0,a+96|0,a- -64|0,a+16|0,a,v[a+92>>2]);g=z[v[i+92>>2]+16>>2];p=z[a+16>>2];q=z[a+20>>2];O=z[a+24>>2];v[i+156>>2]=0;z[i+152>>2]=O-(c?C(f*g):C(0));z[i+148>>2]=q-(c?C(h*g):C(0));z[i+144>>2]=p-(c?C(k*g):C(0));g=z[v[i+84>>2]+16>>2];p=z[a>>2];q=z[a+4>>2];O=z[a+8>>2];v[i+140>>2]=0;z[i+136>>2]=O+(e?C(f*g):C(-0));z[i+132>>2]=q+(e?C(h*g):C(-0));z[i+128>>2]=p+(e?C(k*g):C(-0));z[i+96>>2]=G(C(o-m),C(0));v[i+124>>2]=0;z[i+120>>2]=-f;z[i+116>>2]=-h;z[i+112>>2]=-k;fa=1;break s}l=v[a+92>>2];r=l<<4;b=r+(a+160|0)|0;v[b+12>>2]=0;z[b+8>>2]=M;z[b+4>>2]=x;z[b>>2]=s;b=r+(a+96|0)|0;v[b+12>>2]=0;z[b+8>>2]=A;z[b+4>>2]=I;z[b>>2]=P;b=r+(a+224|0)|0;v[b+12>>2]=0;z[b+8>>2]=g;z[b+4>>2]=p;z[b>>2]=q;v[a+92>>2]=l+1;t:{u:{switch(l-1|0){case 0:O=z[a+232>>2];g=C(z[a+248>>2]-O);A=z[a+224>>2];p=C(z[a+240>>2]-A);I=z[a+228>>2];q=C(z[a+244>>2]-I);P=C(C(g*g)+C(C(p*p)+C(q*q)));if(P<=C(1.1920928955078125e-7)){v[a+92>>2]=1;b=v[a+228>>2];v[a+16>>2]=v[a+224>>2];v[a+20>>2]=b;b=v[a+236>>2];v[a+24>>2]=v[a+232>>2];v[a+28>>2]=b;break t}v[a+28>>2]=0;n=g;g=C(F(C(C(C(C(C(-A)*p)-C(q*I))-C(O*g))/P),C(1)));g=g>C(0)?g:C(0);z[a+24>>2]=O+C(n*g);z[a+20>>2]=I+C(q*g);z[a+16>>2]=A+C(p*g);break t;case 1:JV(a+16|0,a+224|0,a+160|0,a+96|0,a+92|0);break t;case 2:N_(a+16|0,a+224|0,a+160|0,a+96|0,a+92|0);break t;default:break u}}v[a+28>>2]=0;z[a+24>>2]=g;z[a+20>>2]=p;z[a+16>>2]=q}b=v[a+20>>2];v[a+64>>2]=v[a+16>>2];v[a+68>>2]=b;b=v[a+28>>2];v[a+72>>2]=v[a+24>>2];v[a+76>>2]=b;A=z[a+72>>2];P=z[a+64>>2];I=z[a+68>>2];g=C(K(C(C(A*A)+C(C(P*P)+C(I*I)))));if(u>2]=0;b=v[a+20>>2];v[i+100>>2]=v[a+16>>2];v[i+104>>2]=b;v[i+108>>2]=v[a+24>>2];fa=2;break s}p=z[v[i+84>>2]+16>>2];q=z[v[i+92>>2]+16>>2];IV(a+224|0,a+160|0,a+96|0,a+32|0,a+16|0,a,v[a+92>>2]);g=z[v[i+92>>2]+16>>2];O=z[a+16>>2];A=z[a+20>>2];I=z[a+24>>2];v[i+156>>2]=0;z[i+152>>2]=I-(c?C(f*g):C(0));z[i+148>>2]=A-(c?C(h*g):C(0));z[i+144>>2]=O-(c?C(k*g):C(0));g=z[v[i+84>>2]+16>>2];O=z[a>>2];A=z[a+4>>2];I=z[a+8>>2];v[i+140>>2]=0;z[i+136>>2]=I+(e?C(f*g):C(-0));z[i+132>>2]=A+(e?C(h*g):C(-0));z[i+128>>2]=O+(e?C(k*g):C(-0));v[i+124>>2]=0;z[i+120>>2]=-f;z[i+116>>2]=-h;z[i+112>>2]=-k;f=C(G(C(o-m),C(0)));z[i+96>>2]=f;b=v[a+56>>2];v[i+100>>2]=v[a+52>>2];v[i+104>>2]=b;v[i+108>>2]=v[a+60>>2];fa=f>(m>C(0)?m:C((p>2];k=z[i+112>>2];h=z[i+116>>2];g=z[i+128>>2];p=z[i+132>>2];z[Q+8>>2]=L+z[i+136>>2];z[Q+4>>2]=J+p;z[Q>>2]=j+g;a=C(C(f*L)+C(C(k*j)+C(J*h)))>C(0);z[U+8>>2]=a?C(-f):f;z[U+4>>2]=a?C(-h):h;z[U>>2]=a?C(-k):k;break r}v[Q+8>>2]=0;v[Q>>2]=0;v[Q+4>>2]=0;f=z[d>>2];k=z[d+4>>2];z[U+8>>2]=-z[d+8>>2];z[U+4>>2]=-k;z[U>>2]=-f}xa=i+320|0}function Py(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,w=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;f=xa-16|0;z=f;xa=f;A=v[a+32>>2];H=v[a+28>>2];k=v[a+20>>2];C=v[a+24>>2];m=v[a+16>>2];q=v[a+4>>2];p=v[a+48>>2];v[p+4>>2]=0;n=v[a+8>>2];a:{if(!q){break a}c=v[a>>2];if(q-1>>>0>=3){d=q&-4;while(1){h=b+c|0;v[h+28>>2]=0;v[h+12>>2]=0;b=b+n|0;h=b+c|0;v[h+28>>2]=0;v[h+12>>2]=0;b=b+n|0;h=b+c|0;v[h+28>>2]=0;v[h+12>>2]=0;b=b+n|0;h=b+c|0;v[h+28>>2]=0;v[h+12>>2]=0;b=b+n|0;e=e+4|0;if((d|0)!=(e|0)){continue}break}}d=q&3;if(!d){break a}e=0;while(1){h=b+c|0;v[h+28>>2]=0;v[h+12>>2]=0;b=b+n|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b:{c:{d:{if(!m){h=v[a>>2];v[p+4>>2]=32;c=0;I9(v[p>>2],0,128);i=B(n,q);if(!C){break c}l=v[p>>2];b=k;f=0;while(1){d=v[b>>2];g=(d-h>>>0)/(n>>>0)>>>0>=q>>>0;e=v[b+4>>2];j=(e-h>>>0)/(n>>>0)|0;e:{if(!(!g&j>>>0>>0)){if(!g){u[d+14>>1]=x[d+14>>1]+1}if(j>>>0>=q>>>0){break e}u[e+14>>1]=x[e+14>>1]+1;break e}j=v[e+28>>2];m=v[d+28>>2];g=j|m;if((g|0)!=-1){g=Qaa(g^-1);s=l+(g<<2)|0;v[s>>2]=v[s>>2]+1;r=m;m=1<>2]=r|m;r=d;s=x[d+12>>1];d=g+1|0;u[r+12>>1]=d>>>0>>0?s:d;v[e+28>>2]=j|m;r=e;e=x[e+12>>1];u[r+12>>1]=e>>>0>d>>>0?e:d;break e}e=v[b+4>>2];d=(c<<5)+A|0;v[d>>2]=v[b>>2];v[d+4>>2]=e;e=v[b+28>>2];v[d+24>>2]=v[b+24>>2];v[d+28>>2]=e;e=v[b+20>>2];v[d+16>>2]=v[b+16>>2];v[d+20>>2]=e;e=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=e;c=c+1|0}b=b+32|0;f=f+1|0;if((C|0)!=(f|0)){continue}break}break d}c=v[a+12>>2];J=m<<2;t[z+4|0]=J>>>0>1024;f:{if(J>>>0>=1025){f=t9(J,9605,844);break f}f=f-(J+15&-16)|0;xa=f}v[z>>2]=f;b=0;M=m-1|0;if(M>>>0>=3){e=m&-4;d=0;while(1){h=v[c+B(b,52)>>2];v[(b<<2)+f>>2]=h;v[h+4>>2]=0;v[h+8>>2]=0;j=b|1;h=v[c+B(j,52)>>2];v[(j<<2)+f>>2]=h;v[h+4>>2]=0;v[h+8>>2]=0;j=b|2;h=v[c+B(j,52)>>2];v[(j<<2)+f>>2]=h;v[h+4>>2]=0;v[h+8>>2]=0;j=b|3;h=v[c+B(j,52)>>2];v[(j<<2)+f>>2]=h;v[h+4>>2]=0;v[h+8>>2]=0;b=b+4|0;d=d+4|0;if((e|0)!=(d|0)){continue}break}}h=m&3;if(h){while(1){d=v[c+B(b,52)>>2];v[(b<<2)+f>>2]=d;v[d+4>>2]=0;v[d+8>>2]=0;b=b+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}s=v[a>>2];v[p+4>>2]=32;I9(v[p>>2],0,128);I=B(n,q);g:{if(!C){break g}b=k;c=0;while(1){g=v[b>>2];h:{i:{j:{k:{l:{m:{n:{o:{p:{D=x[b+8>>1];w=(D|0)!=65535;q:{if(!w){if((g-s>>>0)/(n>>>0)>>>0>=q>>>0){break p}d=g+28|0;break q}d=g+8|0}e=v[b+4>>2];h=v[d>>2];if(x[b+10>>1]!=65535){break n}d=0;break o}e=v[b+4>>2];if(x[b+10>>1]!=65535){break j}h=0;d=1}j=(e-s>>>0)/(n>>>0)|0;i=j>>>0>=q>>>0;o=d|i;if(i){break m}if(o){break k}o=v[e+28>>2];w=0;d=1;break l}o=v[e+8>>2];w=0;d=0;break l}if(o){break k}o=0;w=1;d=1}j=h|o;if((j|0)==-1){break i}r=v[p>>2];i=Qaa(j^-1);j=r+(i<<2)|0;v[j>>2]=v[j>>2]+1;j=i+1|0;i=1<>2]=h;h=x[g+12>>1];u[g+12>>1]=h>>>0>j>>>0?h:j;break r}v[g+8>>2]=h;h=x[g+6>>1];u[g+6>>1]=h>>>0>j>>>0?h:j}h=i|o;if(d){v[e+28>>2]=h;d=x[e+12>>1];u[e+12>>1]=d>>>0>j>>>0?d:j;break h}v[e+8>>2]=h;d=x[e+6>>1];u[e+6>>1]=d>>>0>j>>>0?d:j;break h}s:{t:{if(d){break t}if(!w){u[g+14>>1]=x[g+14>>1]+1;if(j>>>0>>0){break s}break h}if(Ba[v[v[g>>2]+176>>2]](g)|0){break t}u[g+4>>1]=x[g+4>>1]+1;if(j>>>0>>0){break s}break h}if(i){break h}}u[e+14>>1]=x[e+14>>1]+1;break h}if(Ba[v[v[e>>2]+176>>2]](e)|0){break h}u[e+4>>1]=x[e+4>>1]+1;break h}h=v[b+4>>2];d=(l<<5)+A|0;v[d>>2]=v[b>>2];v[d+4>>2]=h;h=v[b+28>>2];v[d+24>>2]=v[b+24>>2];v[d+28>>2]=h;h=v[b+20>>2];v[d+16>>2]=v[b+16>>2];v[d+20>>2]=h;h=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=h;l=l+1|0}b=b+32|0;c=c+1|0;if((C|0)!=(c|0)){continue}break}if(!l){break g}D=m&-4;w=m&3;o=0;while(1){b=0;if(I){while(1){v[(b+s|0)+28>>2]=0;b=b+n|0;if(I>>>0>b>>>0){continue}break}}g=0;b=0;d=0;if(M>>>0>=3){while(1){c=b<<2;v[v[c+f>>2]+8>>2]=0;v[v[(c|4)+f>>2]+8>>2]=0;v[v[(c|8)+f>>2]+8>>2]=0;v[v[(c|12)+f>>2]+8>>2]=0;b=b+4|0;d=d+4|0;if((D|0)!=(d|0)){continue}break}}if(w){while(1){v[v[(b<<2)+f>>2]+8>>2]=0;b=b+1|0;g=g+1|0;if((w|0)!=(g|0)){continue}break}}b=v[p+4>>2];d=0;v[z+8>>2]=0;bz(p,b+32|0,z+8|0);o=o+32|0;I9(v[p>>2]+(o<<2)|0,0,128);F=l>>>0>1?l:1;G=v[p>>2];l=0;while(1){g=(d<<5)+A|0;j=v[g>>2];K=x[g+8>>1];u:{v:{if((K|0)==65535){if((j-s>>>0)/(n>>>0)>>>0>=q>>>0){c=0;e=1;break u}c=v[j+28>>2];break v}c=v[j+8>>2]}e=0}i=v[g+4>>2];L=x[g+10>>1]!=65535;w:{x:{if(!L){if((i-s>>>0)/(n>>>0)>>>0>=q>>>0){h=0;b=1;break w}h=v[i+28>>2];break x}h=v[i+8>>2]}b=0}E=c|h;y:{if((E|0)!=-1){E=Qaa(E^-1);g=E|o;r=G+(g<<2)|0;v[r>>2]=v[r>>2]+1;g=g+1|0;E=1<>2]=b;b=x[j+12>>1];c=g&65535;u[j+12>>1]=b>>>0>c>>>0?b:c;break z}v[j+8>>2]=b;b=x[j+6>>1];c=g&65535;u[j+6>>1]=b>>>0>c>>>0?b:c}b=h|r;if(!L){v[i+28>>2]=b;b=x[i+12>>1];c=g&65535;u[i+12>>1]=b>>>0>c>>>0?b:c;break y}v[i+8>>2]=b;b=x[i+6>>1];c=g&65535;u[i+6>>1]=b>>>0>c>>>0?b:c;break y}c=v[g+4>>2];b=(l<<5)+A|0;v[b>>2]=v[g>>2];v[b+4>>2]=c;c=v[g+28>>2];v[b+24>>2]=v[g+24>>2];v[b+28>>2]=c;c=v[g+20>>2];v[b+16>>2]=v[g+16>>2];v[b+20>>2]=c;c=v[g+12>>2];v[b+8>>2]=v[g+8>>2];v[b+12>>2]=c;l=l+1|0}d=d+1|0;if((F|0)!=(d|0)){continue}break}if(l){continue}break}}if(I){e=0;while(1){b=e+s|0;v[b+28>>2]=0;c=x[b+14>>1];d=c+x[b+12>>1]|0;if(d>>>0>y[p+4>>2]){v[z+8>>2]=0;bz(p,d,z+8|0);c=x[b+14>>1]}A:{if(!c){break A}l=c&3;h=v[p>>2];g=x[b+12>>1];d=0;b=0;if(c-1>>>0>=3){j=c&65532;c=0;while(1){i=h+(b+g<<2)|0;v[i>>2]=v[i>>2]+1;i=h+(g+(b|1)<<2)|0;v[i>>2]=v[i>>2]+1;i=h+(g+(b|2)<<2)|0;v[i>>2]=v[i>>2]+1;i=h+(g+(b|3)<<2)|0;v[i>>2]=v[i>>2]+1;b=b+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}if(!l){break A}while(1){c=h+(b+g<<2)|0;v[c>>2]=v[c>>2]+1;b=b+1|0;d=d+1|0;if((l|0)!=(d|0)){continue}break}}e=e+n|0;if(I>>>0>e>>>0){continue}break}}l=m>>>0>1?m:1;e=0;while(1){b=v[(e<<2)+f>>2];v[b+8>>2]=0;c=x[b+4>>1];d=c+x[b+6>>1]|0;if(d>>>0>y[p+4>>2]){v[z+8>>2]=0;bz(p,d,z+8|0);c=x[b+4>>1]}B:{if(!c){break B}j=c&3;h=v[p>>2];g=x[b+6>>1];d=0;b=0;if(c-1>>>0>=3){i=c&65532;c=0;while(1){o=h+(b+g<<2)|0;v[o>>2]=v[o>>2]+1;o=h+(g+(b|1)<<2)|0;v[o>>2]=v[o>>2]+1;o=h+(g+(b|2)<<2)|0;v[o>>2]=v[o>>2]+1;o=h+(g+(b|3)<<2)|0;v[o>>2]=v[o>>2]+1;b=b+4|0;c=c+4|0;if((i|0)!=(c|0)){continue}break}}if(!j){break B}while(1){c=h+(b+g<<2)|0;v[c>>2]=v[c>>2]+1;b=b+1|0;d=d+1|0;if((j|0)!=(d|0)){continue}break}}e=e+1|0;if((l|0)!=(e|0)){continue}break}if(v[p+4>>2]){c=v[p>>2];b=0;e=0;while(1){d=c+(b<<2)|0;h=v[d>>2];v[d>>2]=e;e=e+h|0;b=b+1|0;if(b>>>0>2]){continue}break}}C:{if(!q){break C}c=v[a>>2];g=0;b=0;if(q-1>>>0>=3){h=q&-4;d=0;while(1){e=b+c|0;u[e+14>>1]=0;v[e+28>>2]=0;b=b+n|0;e=b+c|0;u[e+14>>1]=0;v[e+28>>2]=0;b=b+n|0;e=b+c|0;u[e+14>>1]=0;v[e+28>>2]=0;b=b+n|0;e=b+c|0;u[e+14>>1]=0;v[e+28>>2]=0;b=b+n|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}d=q&3;if(!d){break C}while(1){h=b+c|0;u[h+14>>1]=0;v[h+28>>2]=0;b=b+n|0;g=g+1|0;if((d|0)!=(g|0)){continue}break}}g=0;b=0;if(l-1>>>0>=3){h=l&-4;d=0;while(1){c=b<<2;e=v[c+f>>2];u[e+4>>1]=0;v[e+8>>2]=0;e=v[(c|4)+f>>2];u[e+4>>1]=0;v[e+8>>2]=0;e=v[(c|8)+f>>2];u[e+4>>1]=0;v[e+8>>2]=0;c=v[(c|12)+f>>2];u[c+4>>1]=0;v[c+8>>2]=0;b=b+4|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}c=l&3;if(c){while(1){d=v[(b<<2)+f>>2];u[d+4>>1]=0;v[d+8>>2]=0;b=b+1|0;g=g+1|0;if((c|0)!=(g|0)){continue}break}}D:{if(!C){l=0;break D}j=0;l=0;g=0;while(1){i=v[k>>2];E:{F:{G:{H:{I:{J:{K:{L:{M:{N:{O:{P:{Q:{D=x[k+8>>1];o=(D|0)!=65535;R:{if(!o){if((i-s>>>0)/(n>>>0)>>>0>=q>>>0){break Q}b=i+28|0;break R}b=i+8|0}h=k+4|0;e=v[k+4>>2];d=v[b>>2];if(x[k+10>>1]!=65535){break O}b=0;break P}e=v[k+4>>2];if(x[k+10>>1]!=65535){break J}h=k+4|0;d=0;b=1}w=(e-s>>>0)/(n>>>0)>>>0>=q>>>0;c=b|w;if(w){break N}if(c){break K}c=v[e+28>>2];w=1;e=0;break M}c=v[e+8>>2];w=0;e=0;break M}if(c){break L}c=0;w=1;e=1}b=c|d;if((b|0)==-1){break I}o=Qaa(b^-1);b=o+1|0;F=1<>2]=d;i=v[k>>2];d=x[i+12>>1];u[i+12>>1]=b>>>0>>0?d:b;break S}v[i+8>>2]=d;d=x[i+6>>1];u[i+6>>1]=b>>>0>>0?d:b}d=c|e;c=v[h>>2];T:{if(w){v[c+28>>2]=d;d=v[h>>2];c=x[d+12>>1];u[d+12>>1]=b>>>0>>0?c:b;break T}v[c+8>>2]=d;d=c;c=x[c+6>>1];u[d+6>>1]=b>>>0>>0?c:b}c=v[p>>2]+(o<<2)|0;b=v[c>>2];v[c>>2]=b+1;c=v[k+28>>2];b=(b<<5)+H|0;v[b+24>>2]=v[k+24>>2];v[b+28>>2]=c;c=v[k+20>>2];v[b+16>>2]=v[k+16>>2];v[b+20>>2]=c;c=v[k+12>>2];v[b+8>>2]=v[k+8>>2];v[b+12>>2]=c;c=v[k+4>>2];v[b>>2]=v[k>>2];v[b+4>>2]=c;break E}if(b){break F}break H}if(!b){break H}d=x[e+14>>1];u[e+14>>1]=d+1;b=x[e+12>>1];break G}if(Ba[v[v[e>>2]+172>>2]](e,k)|0){break F}d=x[e+4>>1];u[e+4>>1]=d+1;b=x[e+6>>1];break G}c=v[k+4>>2];b=(j<<5)+A|0;v[b>>2]=v[k>>2];v[b+4>>2]=c;c=v[k+28>>2];v[b+24>>2]=v[k+24>>2];v[b+28>>2]=c;c=v[k+20>>2];v[b+16>>2]=v[k+16>>2];v[b+20>>2]=c;c=v[k+12>>2];v[b+8>>2]=v[k+8>>2];v[b+12>>2]=c;j=j+1|0;break E}if(!o){d=x[i+14>>1];u[i+14>>1]=d+1;b=x[i+12>>1];break G}if(Ba[v[v[i>>2]+172>>2]](i,k)|0){break F}d=x[i+4>>1];u[i+4>>1]=d+1;b=x[i+6>>1]}c=v[p>>2]+((b&65535)+(d&65535)<<2)|0;b=v[c>>2];v[c>>2]=b+1;c=v[k+28>>2];b=(b<<5)+H|0;v[b+24>>2]=v[k+24>>2];v[b+28>>2]=c;c=v[k+20>>2];v[b+16>>2]=v[k+16>>2];v[b+20>>2]=c;c=v[k+12>>2];v[b+8>>2]=v[k+8>>2];v[b+12>>2]=c;c=v[k+4>>2];v[b>>2]=v[k>>2];v[b+4>>2]=c;break E}l=l+1|0}k=k+32|0;g=g+1|0;if((C|0)!=(g|0)){continue}break}if(!j){break D}o=m&-4;m=m&3;k=0;while(1){b=0;if(I){while(1){v[(b+s|0)+28>>2]=0;b=b+n|0;if(I>>>0>b>>>0){continue}break}}g=0;b=0;d=0;if(M>>>0>=3){while(1){c=b<<2;v[v[c+f>>2]+8>>2]=0;v[v[(c|4)+f>>2]+8>>2]=0;v[v[(c|8)+f>>2]+8>>2]=0;v[v[(c|12)+f>>2]+8>>2]=0;b=b+4|0;d=d+4|0;if((o|0)!=(d|0)){continue}break}}if(m){while(1){v[v[(b<<2)+f>>2]+8>>2]=0;b=b+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}w=j>>>0>1?j:1;k=k+32|0;g=0;j=0;while(1){i=(g<<5)+A|0;e=v[i>>2];D=x[i+8>>1];U:{V:{if((D|0)==65535){if((e-s>>>0)/(n>>>0)>>>0>=q>>>0){d=0;h=1;break U}d=v[e+28>>2];break V}d=v[e+8>>2]}h=0}b=v[i+4>>2];F=x[i+10>>1]!=65535;W:{X:{if(!F){if((b-s>>>0)/(n>>>0)>>>0>=q>>>0){c=0;b=1;break W}c=v[b+28>>2];break X}c=v[b+8>>2]}b=0}G=c|d;Y:{if((G|0)!=-1){G=Qaa(G^-1);K=1<>2]=b;break Z}v[e+8>>2]=b}b=c|L;c=v[i+4>>2];_:{if(!F){v[c+28>>2]=b;break _}v[c+8>>2]=b}c=v[p>>2]+(k+G<<2)|0;b=v[c>>2];v[c>>2]=b+1;e=(b<<5)+H|0;break Y}e=(j<<5)+A|0;j=j+1|0}b=v[i+4>>2];v[e>>2]=v[i>>2];v[e+4>>2]=b;b=v[i+28>>2];v[e+24>>2]=v[i+24>>2];v[e+28>>2]=b;b=v[i+20>>2];v[e+16>>2]=v[i+16>>2];v[e+20>>2]=b;b=v[i+12>>2];v[e+8>>2]=v[i+8>>2];v[e+12>>2]=b;g=g+1|0;if((w|0)!=(g|0)){continue}break}if(j){continue}break}}if(J>>>0>=1025){u9(f)}C=C-l|0;break b}if(!c){break c}j=0;while(1){b=0;if(i){while(1){v[(b+h|0)+28>>2]=0;b=b+n|0;if(i>>>0>b>>>0){continue}break}}b=v[p+4>>2];d=0;v[z>>2]=0;bz(p,b+32|0,z);j=j+32|0;I9(v[p>>2]+(j<<2)|0,0,128);g=c>>>0>1?c:1;l=v[p>>2];c=0;while(1){b=(d<<5)+A|0;f=v[b+4>>2];m=v[f+28>>2];e=v[b>>2];s=v[e+28>>2];o=m|s;$:{if((o|0)!=-1){b=Qaa(o^-1);o=b|j;w=l+(o<<2)|0;v[w>>2]=v[w>>2]+1;r=s;s=1<>2]=r|((e-h>>>0)/(n>>>0)>>>0>>0?s:0);r=e;e=x[e+12>>1];b=o+1&65535;u[r+12>>1]=b>>>0>>0?e:b;v[f+28>>2]=m|((f-h>>>0)/(n>>>0)>>>0>>0?s:0);e=f;f=x[f+12>>1];u[e+12>>1]=b>>>0>>0?f:b;break $}e=v[b+4>>2];f=(c<<5)+A|0;v[f>>2]=v[b>>2];v[f+4>>2]=e;e=v[b+28>>2];v[f+24>>2]=v[b+24>>2];v[f+28>>2]=e;e=v[b+20>>2];v[f+16>>2]=v[b+16>>2];v[f+20>>2]=e;e=v[b+12>>2];v[f+8>>2]=v[b+8>>2];v[f+12>>2]=e;c=c+1|0}d=d+1|0;if((g|0)!=(d|0)){continue}break}if(c){continue}break}}if(i){e=0;while(1){b=e+h|0;v[b+28>>2]=0;f=x[b+14>>1];c=f+x[b+12>>1]|0;if(c>>>0>y[p+4>>2]){v[z>>2]=0;bz(p,c,z);f=x[b+14>>1]}aa:{if(!f){break aa}l=f&3;c=v[p>>2];g=x[b+12>>1];d=0;b=0;if(f-1>>>0>=3){j=f&65532;f=0;while(1){m=c+(b+g<<2)|0;v[m>>2]=v[m>>2]+1;m=c+(g+(b|1)<<2)|0;v[m>>2]=v[m>>2]+1;m=c+(g+(b|2)<<2)|0;v[m>>2]=v[m>>2]+1;m=c+(g+(b|3)<<2)|0;v[m>>2]=v[m>>2]+1;b=b+4|0;f=f+4|0;if((j|0)!=(f|0)){continue}break}}if(!l){break aa}while(1){f=c+(b+g<<2)|0;v[f>>2]=v[f>>2]+1;b=b+1|0;d=d+1|0;if((l|0)!=(d|0)){continue}break}}e=e+n|0;if(i>>>0>e>>>0){continue}break}}if(v[p+4>>2]){c=v[p>>2];b=0;f=0;while(1){d=c+(f<<2)|0;e=v[d>>2];v[d>>2]=b;b=b+e|0;f=f+1|0;if(f>>>0>2]){continue}break}}ba:{if(!q){break ba}c=v[a>>2];d=0;g=0;b=0;if(q-1>>>0>=3){e=q&-4;f=0;while(1){l=b+c|0;u[l+14>>1]=0;v[l+28>>2]=0;b=b+n|0;l=b+c|0;u[l+14>>1]=0;v[l+28>>2]=0;b=b+n|0;l=b+c|0;u[l+14>>1]=0;v[l+28>>2]=0;b=b+n|0;l=b+c|0;u[l+14>>1]=0;v[l+28>>2]=0;g=g+4|0;b=b+n|0;f=f+4|0;if((e|0)!=(f|0)){continue}break}}f=q&3;if(!f){break ba}while(1){e=b+c|0;u[e+14>>1]=0;v[e+28>>2]=0;b=b+n|0;g=g+1|0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}if(!C){l=0;C=0;break b}c=0;d=0;while(1){f=v[k>>2];g=(f-h>>>0)/(n>>>0)|0;b=v[k+4>>2];e=(b-h>>>0)/(n>>>0)|0;ca:{da:{if(!(g>>>0>=q>>>0|e>>>0>=q>>>0)){g=v[b+28>>2];e=v[f+28>>2];l=g|e;if((l|0)!=-1){r=e;e=Qaa(l^-1);l=1<>2]=r|l;r=f;j=x[f+12>>1];f=e+1|0;u[r+12>>1]=f>>>0>>0?j:f;v[b+28>>2]=g|l;r=b;b=x[b+12>>1];u[r+12>>1]=b>>>0>f>>>0?b:f;f=v[p>>2]+(e<<2)|0;b=v[f>>2];v[f>>2]=b+1;b=(b<<5)+H|0;break da}b=(c<<5)+A|0;c=c+1|0;break da}g=g>>>0>>0;if(!g&e>>>0>=q>>>0){break ca}b=g?f:b;f=x[b+14>>1];u[b+14>>1]=f+1;f=v[p>>2]+(f+x[b+12>>1]<<2)|0;b=v[f>>2];v[f>>2]=b+1;b=(b<<5)+H|0}f=v[k+4>>2];v[b>>2]=v[k>>2];v[b+4>>2]=f;f=v[k+28>>2];v[b+24>>2]=v[k+24>>2];v[b+28>>2]=f;f=v[k+20>>2];v[b+16>>2]=v[k+16>>2];v[b+20>>2]=f;f=v[k+12>>2];v[b+8>>2]=v[k+8>>2];v[b+12>>2]=f}k=k+32|0;d=d+1|0;if((C|0)!=(d|0)){continue}break}l=0;if(!c){break b}while(1){b=0;if(i){while(1){v[(b+h|0)+28>>2]=0;b=b+n|0;if(i>>>0>b>>>0){continue}break}}d=c>>>0>1?c:1;l=l+32|0;g=0;c=0;while(1){b=(g<<5)+A|0;f=v[b+4>>2];e=v[f+28>>2];k=v[b>>2];j=v[k+28>>2];m=e|j;ea:{if((m|0)!=-1){r=j;j=Qaa(m^-1);m=1<>2]=r|((k-h>>>0)/(n>>>0)>>>0>>0?m:0);v[v[b+4>>2]+28>>2]=e|((f-h>>>0)/(n>>>0)>>>0>>0?m:0);f=v[p>>2]+((j|l)<<2)|0;k=v[f>>2];v[f>>2]=k+1;f=(k<<5)+H|0;break ea}f=(c<<5)+A|0;c=c+1|0}k=v[b+4>>2];v[f>>2]=v[b>>2];v[f+4>>2]=k;k=v[b+28>>2];v[f+24>>2]=v[b+24>>2];v[f+28>>2]=k;k=v[b+20>>2];v[f+16>>2]=v[b+16>>2];v[f+20>>2]=k;k=v[b+12>>2];v[f+8>>2]=v[b+8>>2];v[f+12>>2]=k;g=g+1|0;if((d|0)!=(g|0)){continue}break}if(c){continue}break}l=0}v[a+44>>2]=l;b=0;v[a+40>>2]=0;v[a+36>>2]=C;a=v[p+4>>2];fa:{if(!a){break fa}k=v[p>>2];f=0;while(1){c=f;f=v[k+(b<<2)>>2];if((c|0)==(f|0)){break fa}b=b+1|0;if((a|0)!=(b|0)){continue}break}b=a}xa=z+16|0;return b}function LA(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,w=0,A=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;u=xa-1072|0;xa=u;v[u+1048>>2]=v[b+12>>2];o=v[b+56>>2];a=u;v[a+1004>>2]=-128;v[a+1008>>2]=-128;v[a+972>>2]=-128;v[a+976>>2]=-128;v[a+940>>2]=-128;v[a+944>>2]=-128;v[a+908>>2]=-128;v[a+912>>2]=-128;v[a+876>>2]=-128;v[a+880>>2]=-128;v[a+844>>2]=-128;v[a+848>>2]=-128;v[a+812>>2]=-128;v[a+816>>2]=-128;v[a+780>>2]=-128;v[a+784>>2]=-128;v[a+748>>2]=-128;v[a+752>>2]=-128;v[a+716>>2]=-128;v[a+720>>2]=-128;v[a+684>>2]=-128;v[a+688>>2]=-128;v[a+652>>2]=-128;v[a+656>>2]=-128;v[a+620>>2]=-128;v[a+624>>2]=-128;v[a+588>>2]=-128;v[a+592>>2]=-128;v[a+556>>2]=-128;v[a+560>>2]=-128;v[a+524>>2]=-128;v[a+528>>2]=-128;v[a+492>>2]=-128;v[a+496>>2]=-128;v[a+460>>2]=-128;v[a+464>>2]=-128;v[a+428>>2]=-128;v[a+432>>2]=-128;v[a+396>>2]=-128;v[a+400>>2]=-128;v[a+364>>2]=-128;v[a+368>>2]=-128;v[a+332>>2]=-128;v[a+336>>2]=-128;v[a+300>>2]=-128;v[a+304>>2]=-128;v[a+268>>2]=-128;v[a+272>>2]=-128;v[a+236>>2]=-128;v[a+240>>2]=-128;v[a+204>>2]=-128;v[a+208>>2]=-128;v[a+172>>2]=-128;v[a+176>>2]=-128;v[a+140>>2]=-128;v[a+144>>2]=-128;v[a+108>>2]=-128;v[a+112>>2]=-128;v[a+76>>2]=-128;v[a+80>>2]=-128;v[a+44>>2]=-128;v[a+48>>2]=-128;v[a+12>>2]=-128;v[a+16>>2]=-128;T=v[b+116>>2];S=v[b+40>>2];v[a+1068>>2]=d;v[a+1064>>2]=c;v[a+1040>>2]=0;v[a+1044>>2]=32;v[a+1036>>2]=a;h=v[b>>2];I=v[b+28>>2];G=v[b+16>>2];L=v[b+4>>2];a=o+v[b+68>>2]|0;v[b+68>>2]=a;r=a-o|0;J=o+v[b+128>>2]|0;v[b+128>>2]=J;X=v[b+108>>2];P=v[b+32>>2];N=v[b+124>>2];U=v[b+120>>2];M=v[b+48>>2];R=v[b+44>>2];Y=v[b+112>>2];O=v[b+36>>2];a:{b:{A=h-1|0;c:{if(!A){p=o;break c}if(!M){break b}p=o;while(1){E=B(t,S);i=0;while(1){d:{if(v[b+72>>2]>=(k|0)){break d}d=3e4;if(v[b+72>>2]>=(k|0)){break d}while(1){if(v[b+72>>2]>=(k|0)){break d}d=d-1|0;if(d){continue}d=1e4;continue}}m=0;D=v[(i<<2)+R>>2];w=D+w|0;e:{if((w|0)<=(r|0)){break e}while(1){a=w-r|0;l=(a|0)<(p|0)?a:p;if((l|0)>0){g=r-E|0;H=l+g|0;while(1){s=0;f=0;e=0;n=O+(g<<3)|0;F=P+(v[n>>2]<<5)|0;d=v[F+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;j=a;a=e>>>6|0;e=(e&63)<<26|j>>>6;j=a;a=c>>>6|0;j=j-(a>>>0>e>>>0)|0;q=e-a|0;e=j;a=q+1|0;e=a?e:e+1|0;c=a;a=0;K=a;Q=c&7;if(a|Q){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((Q|0)!=(s|0)|(K|0)!=(a|0)){continue}break}}f=x[n+4>>1];if(!j&q>>>0>=7|j){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}f:{if(!f){break f}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break f}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[n+6>>1]<<2)+129312>>2]](F,f,u+1032|0);g=g+1|0;if((H|0)>(g|0)){continue}break}}m=l+m|0;p=p-l|0;if(p){r=l+r|0}else{p=o;a=o+v[b+68>>2]|0;v[b+68>>2]=a;r=a-o|0}if((w|0)>(r|0)){continue}break}if(!m){break e}v[b+72>>2]=v[b+72>>2]+m}k=k+D|0;i=i+1|0;if((M|0)!=(i|0)){continue}break}t=t+1|0;if((A|0)!=(t|0)){continue}break}}if(!h){break a}if(!M){A=h;break a}n=B(A,S);i=0;while(1){g:{if(v[b+72>>2]>=(k|0)){break g}d=3e4;if(v[b+72>>2]>=(k|0)){break g}while(1){if(v[b+72>>2]>=(k|0)){break g}d=d-1|0;if(d){continue}d=1e4;continue}}m=0;q=v[(i<<2)+R>>2];w=q+w|0;h:{if((w|0)<=(r|0)){break h}while(1){a=w-r|0;A=(a|0)<(p|0)?a:p;if((A|0)>0){g=r-n|0;E=A+g|0;while(1){s=0;f=0;e=0;l=O+(g<<3)|0;D=P+(v[l>>2]<<5)|0;d=v[D+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;j=a;a=e>>>6|0;e=(e&63)<<26|j>>>6;j=a;a=c>>>6|0;j=j-(a>>>0>e>>>0)|0;t=e-a|0;e=j;a=t+1|0;e=a?e:e+1|0;c=a;a=0;H=a;F=c&7;if(a|F){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((F|0)!=(s|0)|(H|0)!=(a|0)){continue}break}}f=x[l+4>>1];if(!j&t>>>0>=7|j){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}i:{if(!f){break i}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break i}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[l+6>>1]<<2)+129440>>2]](D,f,u+1032|0);g=g+1|0;if((E|0)>(g|0)){continue}break}}m=m+A|0;p=p-A|0;if(p){r=r+A|0}else{p=o;a=o+v[b+68>>2]|0;v[b+68>>2]=a;r=a-o|0}if((w|0)>(r|0)){continue}break}if(!m){break h}v[b+72>>2]=v[b+72>>2]+m}k=k+q|0;i=i+1|0;if((M|0)!=(i|0)){continue}break}A=h;break a}A=h?h:-1;p=o}m=J-o|0;j:{k:{l:{J=h<<1;i=J-1|0;if(A>>>0>=i>>>0){i=A;t=0;j=o;break l}C=i-A|0;t=0;if(N){j=o;E=0;while(1){F=B(E,T);n=0;while(1){m:{if(v[b+72>>2]>=(k|0)){break m}d=3e4;if(v[b+72>>2]>=(k|0)){break m}while(1){if(v[b+72>>2]>=(k|0)){break m}d=d-1|0;if(d){continue}d=1e4;continue}}l=0;K=v[(n<<2)+U>>2];t=K+t|0;n:{if((t|0)<=(m|0)){break n}while(1){a=t-m|0;q=(a|0)<(j|0)?a:j;if((q|0)>0){g=m-F|0;Q=q+g|0;while(1){s=0;f=0;e=0;D=(g<<3)+Y|0;V=(v[D>>2]<<5)+X|0;d=v[V+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;h=a;a=e>>>6|0;e=(e&63)<<26|h>>>6;h=a;a=c>>>6|0;h=h-(a>>>0>e>>>0)|0;H=e-a|0;e=h;a=H+1|0;e=a?e:e+1|0;c=a;a=0;W=a;Z=c&7;if(a|Z){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((Z|0)!=(s|0)|(W|0)!=(a|0)){continue}break}}f=x[D+4>>1];if(!h&H>>>0>=7|h){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}o:{if(!f){break o}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break o}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[D+6>>1]<<2)+129312>>2]](V,f,u+1032|0);g=g+1|0;if((Q|0)>(g|0)){continue}break}}l=l+q|0;j=j-q|0;if(j){m=m+q|0}else{j=o;a=o+v[b+128>>2]|0;v[b+128>>2]=a;m=a-o|0}if((t|0)>(m|0)){continue}break}if(!l){break n}v[b+72>>2]=v[b+72>>2]+l}k=k+K|0;n=n+1|0;if((N|0)!=(n|0)){continue}break}E=E+1|0;if((E|0)!=(C|0)){continue}break}break l}j=o;if(!h){break j}break k}if(i>>>0>=J>>>0){break j}if(!N){break k}while(1){H=B(C,T);n=0;while(1){p:{if(v[b+72>>2]>=(k|0)){break p}d=3e4;if(v[b+72>>2]>=(k|0)){break p}while(1){if(v[b+72>>2]>=(k|0)){break p}d=d-1|0;if(d){continue}d=1e4;continue}}l=0;F=v[(n<<2)+U>>2];t=F+t|0;q:{if((t|0)<=(m|0)){break q}while(1){a=t-m|0;q=(a|0)<(j|0)?a:j;if((q|0)>0){g=m-H|0;K=q+g|0;while(1){s=0;f=0;e=0;E=(g<<3)+Y|0;Q=(v[E>>2]<<5)+X|0;d=v[Q+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;h=a;a=e>>>6|0;e=(e&63)<<26|h>>>6;h=a;a=c>>>6|0;h=h-(a>>>0>e>>>0)|0;D=e-a|0;e=h;a=D+1|0;e=a?e:e+1|0;c=a;a=0;V=a;W=c&7;if(a|W){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((W|0)!=(s|0)|(V|0)!=(a|0)){continue}break}}f=x[E+4>>1];if(!h&D>>>0>=7|h){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}r:{if(!f){break r}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break r}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[E+6>>1]<<2)+129440>>2]](Q,f,u+1032|0);g=g+1|0;if((K|0)>(g|0)){continue}break}}l=l+q|0;j=j-q|0;if(j){m=m+q|0}else{j=o;a=o+v[b+128>>2]|0;v[b+128>>2]=a;m=a-o|0}if((t|0)>(m|0)){continue}break}if(!l){break q}v[b+72>>2]=v[b+72>>2]+l}k=k+F|0;n=n+1|0;if((N|0)!=(n|0)){continue}break}C=C+1|0;i=i+1|0;if((J|0)!=(i|0)){continue}break}break j}C=(C+J|0)-i|0}s:{a=v[b+72>>2]>=(k|0);if(a|a){break s}d=3e4;while(1){if(v[b+72>>2]>=(k|0)){break s}d=d-1|0;if(d){continue}d=1e4;continue}}i=v[b+52>>2];s=v[b+8>>2];f=v[b+24>>2];c=64;h=0;a=v[b+76>>2]- -64|0;v[b+76>>2]=a;d=a+-64|0;if((I|0)>(d|0)){while(1){a=I-d|0;e=(a|0)<64?a:64;c=c-e|0;t:{if((a|0)<=0){break t}a=(e|0)>1?e:1;l=a&1;if((a|0)!=1){n=a&-2;a=0;while(1){g=f+B(d,52)|0;q=v[(v[v[g>>2]+24>>2]<<2)+149608>>2];if(q){Ba[q|0](g,v[u+1068>>2])}g=g+52|0;q=v[(v[v[g>>2]+24>>2]<<2)+149608>>2];if(q){Ba[q|0](g,v[u+1068>>2])}d=d+2|0;a=a+2|0;if((n|0)!=(a|0)){continue}break}}if(!l){break t}a=f+B(d,52)|0;g=v[(v[v[a>>2]+24>>2]<<2)+149608>>2];if(g){Ba[g|0](a,v[u+1068>>2])}d=d+1|0}if(!c){a=v[b+76>>2]- -64|0;v[b+76>>2]=a;d=a+-64|0;c=64}h=(e<<1)+h|0;if((d|0)<(I|0)){continue}break}}a=d-I|0;if((G|0)>(a|0)){while(1){g=0;d=G-a|0;e=(c|0)<(d|0)?c:d;if((e|0)>0){while(1){d=a<<5;c=d+i|0;d=d+s|0;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];a=a+1|0;g=g+1|0;if((e|0)!=(g|0)){continue}break}}h=e+h|0;c=64;a=v[b+76>>2]- -64|0;v[b+76>>2]=a;a=(a-I|0)+-64|0;if((G|0)>(a|0)){continue}break}}if(h){v[b+80>>2]=v[b+80>>2]+h}u:{a=G+I|0;if((a|0)<=v[b+80>>2]|(a|0)<=v[b+80>>2]){break u}d=3e4;while(1){if((a|0)<=v[b+80>>2]){break u}d=d-1|0;if(d){continue}d=1e4;continue}}J=L-1|0;if(J){E=C+L|0;I=0;while(1){if(M){q=B(A,S);n=0;while(1){v:{if(v[b+72>>2]>=(k|0)){break v}d=3e4;if(v[b+72>>2]>=(k|0)){break v}while(1){if(v[b+72>>2]>=(k|0)){break v}d=d-1|0;if(d){continue}d=1e4;continue}}l=0;L=v[(n<<2)+R>>2];w=L+w|0;w:{if((w|0)<=(r|0)){break w}while(1){a=w-r|0;i=(a|0)<(p|0)?a:p;if((i|0)>0){g=r-q|0;D=i+g|0;while(1){s=0;f=0;e=0;C=O+(g<<3)|0;H=P+(v[C>>2]<<5)|0;d=v[H+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;h=a;a=e>>>6|0;e=(e&63)<<26|h>>>6;h=a;a=c>>>6|0;h=h-(a>>>0>e>>>0)|0;G=e-a|0;e=h;a=G+1|0;e=a?e:e+1|0;c=a;a=0;F=a;K=c&7;if(a|K){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((K|0)!=(s|0)|(F|0)!=(a|0)){continue}break}}f=x[C+4>>1];if(!h&G>>>0>=7|h){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}x:{if(!f){break x}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break x}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[C+6>>1]<<2)+129312>>2]](H,f,u+1032|0);g=g+1|0;if((D|0)>(g|0)){continue}break}}l=l+i|0;p=p-i|0;if(p){r=i+r|0}else{p=o;a=o+v[b+68>>2]|0;v[b+68>>2]=a;r=a-o|0}if((w|0)>(r|0)){continue}break}if(!l){break w}v[b+72>>2]=v[b+72>>2]+l}k=k+L|0;n=n+1|0;if((M|0)!=(n|0)){continue}break}}A=A+1|0;if(N){h=r-B(A,S)|0;n=0;while(1){y:{if(v[b+72>>2]>=(k|0)){break y}d=3e4;if(v[b+72>>2]>=(k|0)){break y}while(1){if(v[b+72>>2]>=(k|0)){break y}d=d-1|0;if(d){continue}d=1e4;continue}}l=0;L=v[(n<<2)+U>>2];t=L+t|0;z:{if((t|0)<=(m|0)){break z}while(1){a=t-m|0;C=(a|0)<(j|0)?a:j;if((C|0)>0){D=h+C|0;g=h;while(1){s=0;f=0;e=0;G=O+(g<<3)|0;H=P+(v[G>>2]<<5)|0;d=v[H+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;i=a;a=e>>>6|0;e=(e&63)<<26|i>>>6;i=a;a=c>>>6|0;i=i-(a>>>0>e>>>0)|0;q=e-a|0;e=i;a=q+1|0;e=a?e:e+1|0;c=a;a=0;F=a;K=c&7;if(a|K){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((K|0)!=(s|0)|(F|0)!=(a|0)){continue}break}}f=x[G+4>>1];if(!i&q>>>0>=7|i){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}A:{if(!f){break A}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break A}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[G+6>>1]<<2)+129312>>2]](H,f,u+1032|0);g=g+1|0;if((D|0)>(g|0)){continue}break}}l=l+C|0;j=j-C|0;if(j){m=m+C|0}else{j=o;a=o+v[b+128>>2]|0;v[b+128>>2]=a;m=a-o|0}if((t|0)>(m|0)){continue}break}if(!l){break z}v[b+72>>2]=v[b+72>>2]+l}k=k+L|0;n=n+1|0;if((N|0)!=(n|0)){continue}break}}I=I+1|0;if((J|0)!=(I|0)){continue}break}C=E-1|0}q=v[b+136>>2];I=v[b+132>>2];G=v[b+140>>2];v[u+1060>>2]=G;v[u+1052>>2]=I;v[u+1056>>2]=q;if(M){l=0;while(1){B:{if(v[b+72>>2]>=(k|0)){break B}d=3e4;if(v[b+72>>2]>=(k|0)){break B}while(1){if(v[b+72>>2]>=(k|0)){break B}d=d-1|0;if(d){continue}d=1e4;continue}}i=0;L=v[(l<<2)+R>>2];w=L+w|0;C:{if((w|0)<=(r|0)){break C}while(1){g=0;a=w-r|0;n=(a|0)<(p|0)?a:p;if((n|0)>0){while(1){s=0;f=0;e=0;J=O+(g<<3)|0;D=P+(v[J>>2]<<5)|0;d=v[D+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;h=a;a=e>>>6|0;e=(e&63)<<26|h>>>6;h=a;a=c>>>6|0;h=h-(a>>>0>e>>>0)|0;E=e-a|0;e=h;a=E+1|0;e=a?e:e+1|0;c=a;a=0;H=a;F=c&7;if(a|F){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((F|0)!=(s|0)|(H|0)!=(a|0)){continue}break}}f=x[J+4>>1];if(!h&E>>>0>=7|h){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}D:{if(!f){break D}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break D}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[J+6>>1]<<2)+129376>>2]](D,f,u+1032|0);g=g+1|0;if((n|0)!=(g|0)){continue}break}}i=i+n|0;p=p-n|0;if(p){r=n+r|0}else{p=o;a=o+v[b+68>>2]|0;v[b+68>>2]=a;r=a-o|0}if((w|0)>(r|0)){continue}break}if(!i){break C}v[b+72>>2]=v[b+72>>2]+i}k=k+L|0;l=l+1|0;if((M|0)!=(l|0)){continue}break}}v[u+1056>>2]=q;v[u+1052>>2]=I;v[u+1060>>2]=G;if(N){n=B(C,T);r=0;while(1){E:{if(v[b+72>>2]>=(k|0)){break E}d=3e4;if(v[b+72>>2]>=(k|0)){break E}while(1){if(v[b+72>>2]>=(k|0)){break E}d=d-1|0;if(d){continue}d=1e4;continue}}h=0;M=v[(r<<2)+U>>2];t=M+t|0;F:{if((t|0)<=(m|0)){break F}while(1){a=t-m|0;w=(a|0)<(j|0)?a:j;if((w|0)>0){g=m-n|0;P=w+g|0;while(1){s=0;f=0;e=0;i=(g<<3)+Y|0;O=(v[i>>2]<<5)+X|0;d=v[O+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;p=a;a=e>>>6|0;e=(e&63)<<26|p>>>6;p=a;a=c>>>6|0;p=p-(a>>>0>e>>>0)|0;l=e-a|0;e=p;a=l+1|0;e=a?e:e+1|0;c=a;a=0;R=a;q=c&7;if(a|q){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((q|0)!=(s|0)|(R|0)!=(a|0)){continue}break}}f=x[i+4>>1];if(!p&l>>>0>=7|p){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}G:{if(!f){break G}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break G}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[i+6>>1]<<2)+129376>>2]](O,f,u+1032|0);g=g+1|0;if((P|0)>(g|0)){continue}break}}h=h+w|0;j=j-w|0;if(j){m=m+w|0}else{j=o;a=o+v[b+128>>2]|0;v[b+128>>2]=a;m=a-o|0}if((t|0)>(m|0)){continue}break}if(!h){break F}v[b+72>>2]=v[b+72>>2]+h}k=k+M|0;r=r+1|0;if((N|0)!=(r|0)){continue}break}}a=v[u+1040>>2];H:{if(!a){break H}a=a+v[G>>2]|0;v[G>>2]=a;b=v[u+1040>>2];if(!b){break H}c=a-b|0;d=0;while(1){a=v[u+1036>>2]+(d<<5)|0;e=v[a+4>>2];b=I+(c+d<<5)|0;v[b>>2]=v[a>>2];v[b+4>>2]=e;e=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=e;e=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=e;e=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=e;d=d+1|0;if(d>>>0>2]){continue}break}}xa=u+1072|0;return B(A+1|0,S)+B(C+1|0,T)|0}function hM(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,u=0,x=0,A=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=C(0);M=xa-16|0;xa=M;e=v[a+208>>2];b=v[a+204>>2];v[M+8>>2]=v[a+212>>2];v[M>>2]=b;v[M+4>>2]=e;N=a+216|0;d=v[a+328>>2];if(d){e=v[a+324>>2];while(1){c=v[a+4>>2];b=e+(g<<3)|0;f=v[b>>2];b=v[b+4>>2];a:{if(f>>>0>b>>>0){WL(f,b,c,N,M);break a}XL(f,b,c,N,M)}g=g+1|0;if((d|0)!=(g|0)){continue}break}}d=v[a+376>>2];if(d){e=v[a+372>>2];g=0;while(1){c=v[a+4>>2];b=e+(g<<3)|0;f=v[b>>2];b=v[b+4>>2];b:{if(f>>>0<=b>>>0){XL(f,b,c,N,M);break b}WL(f,b,c,N,M)}g=g+1|0;if((d|0)!=(g|0)){continue}break}}d=v[a+424>>2];if(d){e=v[a+420>>2];g=0;while(1){c=v[a+4>>2];b=e+(g<<3)|0;f=v[b>>2];b=v[b+4>>2];c:{if(f>>>0<=b>>>0){XL(f,b,c,N,M);break c}WL(f,b,c,N,M)}g=g+1|0;if((d|0)!=(g|0)){continue}break}}v[a+204>>2]=v[M>>2];v[a+208>>2]=v[M+4>>2];v[a+212>>2]=v[M+8>>2];f=xa-352|0;xa=f;K=v[a+92>>2];d:{if(!K){break d}q=v[a+112>>2];s=v[a+88>>2];e:{f:{E=K<<1;if(E>>>0>=33){e=K<<3;if(e){break f}v[f+344>>2]=0;e=0;break e}m=f+216|0;v[f+344>>2]=m;e=f+80|0;break e}b=v[37696];m=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,24422,18213,56)|0;v[f+344>>2]=m;b=v[37696];e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,24422,18213,56)|0}v[f+208>>2]=e;H=RU(f+40|0);while(1){i=v[a+124>>2];d=0;while(1){g=o<<2;b=v[s+(d<<2)>>2];c=g+(q+B(b,24)|0)|0;V=z[i+(b<<2)>>2];z[f+8>>2]=z[c>>2]-V;b=(d<<3)+m|0;u=v[f+8>>2];v[b>>2]=((u|0)<0?u^-1:u|-2147483648)-16&-16;z[f+8>>2]=V+z[c+12>>2];c=b;b=v[f+8>>2];v[c+4>>2]=((b|0)<0?b^-1:b|-2147483648)+16&-16|4;d=d+1|0;if((K|0)!=(d|0)){continue}break}v[H+4>>2]=v[H+4>>2]|-2147483648;b=VU(H,m,E,1);L=v[H+12>>2];if(E){c=v[b+8>>2];d=0;while(1){b=d<<2;i=v[c+(E+(d^-1)<<2)>>2];v[b+e>>2]=v[(i<<2)+m>>2];v[b+L>>2]=i&1|v[s+(i<<1&-4)>>2]<<1;d=d+1|0;if((E|0)!=(d|0)){continue}break}}b=a+g|0;i=v[b+132>>2];I=v[b+156>>2];O=v[b+144>>2];b=v[a+188>>2]-v[a+92>>2]|0;g=b<<1;d=g+E|0;c=d<<2|4;b=b<<3|4;v[O+c>>2]=v[b+O>>2];v[c+I>>2]=v[b+I>>2];g:{if((g|0)<0){break g}b=g<<2;k=b+O|0;b=b+I|0;S=0;while(1){c=S<<2;n=v[c+e>>2];u=v[k>>2];g=c+L|0;j=v[g>>2]&1?n>>>0>=u>>>0:n>>>0>u>>>0;c=d<<2;v[c+O>>2]=j?n:u;n=c+I|0;c=j?g:b;v[n>>2]=v[c>>2];c=v[c>>2];v[(i+(c<<2&-8)|0)+((c&1)<<2)>>2]=d;h:{if(j){S=S+1|0;if(E>>>0>S>>>0){break h}break g}b=b-4|0;k=k-4|0}d=d-1|0;if(b>>>0>=I>>>0){continue}break}}o=o+1|0;if((o|0)!=3){continue}break}SU(H);e=v[f+208>>2];if(!((e|0)==(f+80|0)|!e)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}e=v[f+344>>2];if(!((e|0)==(f+216|0)|!e)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}S=v[a+188>>2];U=v[a+92>>2];b=S-U|0;d=f+216|0;i:{if(b>>>0<9){break i}e=b<<2;d=0;if(!e){break i}b=v[37696];d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,24422,18213,56)|0}v[f+248>>2]=d;b=f+80|0;j:{if(U>>>0<9){break j}e=U<<2;if(!e){b=0;break j}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,24422,18213,56)|0;d=v[f+248>>2]}v[f+112>>2]=b;v[f+36>>2]=0;v[f+32>>2]=0;t[f+31|0]=0;t[f+30|0]=0;H=0;I=0;K=0;P=xa-48|0;xa=P;e=(v[a+128>>2]<<1)+31|0;c=e>>>3&536870908;F=P+8|0;if(e>>>0>=288){e=v[37696];F=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,24422,18213,56)|0}v[P+40>>2]=F;O=I9(F,0,c);j=v[a+188>>2]<<1;L=v[a+156>>2];s=v[a+116>>2];n=v[a+92>>2];k:{if(!n){k=-1;F=0;E=-1;m=-1;break k}u=v[a+88>>2];q=v[a+136>>2];i=v[a+140>>2];g=v[a+132>>2];m=-1;E=-1;F=0;k=-1;while(1){c=v[u+(J<<2)>>2];e=O+(c>>>3&536870908)|0;v[e>>2]=v[e>>2]|1<>2];H=e>>>0>>0?H:e;e=v[c>>2];k=e>>>0>k>>>0?k:e;c=i+o|0;e=v[c+4>>2];I=e>>>0>>0?I:e;e=v[c>>2];E=e>>>0>E>>>0?E:e;c=g+o|0;e=v[c+4>>2];F=e>>>0>>0?F:e;e=v[c>>2];m=e>>>0>m>>>0?m:e;J=J+1|0;if((n|0)!=(J|0)){continue}break}}n=0;if(j){q=j|1;i=v[a+136>>2];g=v[a+140>>2];c=v[a+132>>2];J=1;while(1){e=v[L+(J<<2)>>2];l:{if(e&1){break l}o=e>>>1|0;if(!(v[O+(e>>>4&268435452)>>2]>>>o&1)){u=o<<3;e=u+c|0;if(y[e>>2]>F>>>0|y[e+4>>2]>>0){break l}e=g+u|0;if(y[e>>2]>I>>>0|y[e+4>>2]>>0){break l}e=i+u|0;if(y[e>>2]>H>>>0|y[e+4>>2]>>0){break l}e=v[f+36>>2];v[f+36>>2]=e+1;v[(e<<2)+d>>2]=o;K=(v[s+(o<<2)>>2]!=0)+K|0;break l}e=v[f+32>>2];v[f+32>>2]=e+1;v[(e<<2)+b>>2]=o;n=(v[s+(o<<2)>>2]!=0)+n|0}J=J+1|0;if((q|0)!=(J|0)){continue}break}}t[f+30|0]=!K;t[f+31|0]=!n;c=v[P+40>>2];if(!((c|0)==(P+8|0)|!c)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}xa=P+48|0;e=w[f+31|0];if(!(w[f+30|0]?e:0)){j=a+132|0;R=YL(f+40|0,v[f+32>>2],j,b,v[a+116>>2]);if(!e){s=v[a+4>>2];o=v[a+120>>2];l=a+216|0;G=xa-16|0;xa=G;P=v[R+16>>2];if(P){m=v[a+204>>2];g=v[a+208>>2];v[G+8>>2]=v[a+212>>2];v[G+4>>2]=g;v[G>>2]=m;k=v[R+12>>2];E=v[R+8>>2];H=v[R+4>>2];F=v[R>>2];e=0;while(1){u=F+(Q<<3)|0;q=v[u>>2];i=Q<<2;I=v[i+E>>2];while(1){c=e<<3;b=e+1|0;e=b;if(q>>>0>y[c+F>>2]){continue}break}L=v[u+4>>2];if(L>>>0>=y[F+(b<<3)>>2]){n=k+i|0;u=I<<2&12;J=H+(Q<<4)|0;e=b;while(1){i=e<<2;c=v[i+E>>2];m:{if((c|0)==(I|0)|!w[o+(u|c&3)|0]){break m}c=H+(e<<4)|0;if(y[c+8>>2]>2]|y[J+8>>2]>2]|(y[c+12>>2]>2]|y[J+12>>2]>2])){break m}T=v[l+28>>2];if((T|0)==1073741823){break m}q=v[n>>2];c=v[k+i>>2];K=c>>>0>>0?q:c;O=c>>>0>q>>>0?q:c;c=K<<16|O;c=(c<<15^-1)+c|0;c=B(c>>10^c,9);c=c>>6^c;c=(c<<11^-1)+c|0;q=c>>16^c;D=q&v[l+36>>2];i=v[l+8>>2];n:{o:{if(!i){break o}p=v[v[l>>2]+(D<<2)>>2];if((p|0)==1073741823){break o}c=v[l+4>>2];A=v[l+20>>2];while(1){x=(p<<3)+A|0;if((O|0)==v[x>>2]&(K|0)==v[x+4>>2]){break n}p=v[c+(p<<2)>>2];if((p|0)!=1073741823){continue}break}}if(i>>>0<=T>>>0){c=T+1|0;c=c>>>1|c;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;c=c>>>16|c;v[l+36>>2]=c;c=c+1|0;v[l+8>>2]=c;TL(l,c>>>0>y[l+12>>2]);D=q&v[l+36>>2];T=v[l+28>>2]}x=v[l+20>>2]+(T<<3)|0;v[x+4>>2]=K;v[x>>2]=O;t[v[l+24>>2]+T|0]=8;i=v[l>>2]+(D<<2)|0;v[v[l+4>>2]+(v[l+28>>2]<<2)>>2]=v[i>>2];c=v[l+28>>2];v[l+28>>2]=c+1;v[i>>2]=c;A=v[l+20>>2]}p=v[l+24>>2];A=x-A>>3;c=p+A|0;D=w[c|0];if(D&8){t[c|0]=0;c=v[l+24>>2]+(x-v[l+20>>2]>>3)|0;t[c|0]=w[c|0]|1;p=x-v[l+20>>2]|0;i=p>>>3|0;if(v[G+8>>2]==(g|0)){VL(G,s);p=x-v[l+20>>2]|0;m=v[G>>2];g=v[G+4>>2]}c=g+1|0;v[G+4>>2]=c;v[(g<<2)+m>>2]=i;g=v[l+24>>2]+(p>>3)|0;t[g|0]=w[g|0]|4;p=v[l+24>>2];A=x-v[l+20>>2]>>3;D=w[p+A|0];g=c}t[p+A|0]=D&253}e=e+1|0;if(L>>>0>=y[F+(e<<3)>>2]){continue}break}}if(b>>>0

>>0){e=b;Q=Q+1|0;if(P>>>0>Q>>>0){continue}}break}e=v[G+8>>2];b=v[G+4>>2];v[a+204>>2]=m;v[a+208>>2]=b;v[a+212>>2]=e}xa=G+16|0}p:{if((S|0)==(U|0)){break p}b=v[f+36>>2];if(!b){break p}L=YL(f+8|0,b,j,d,v[a+116>>2]);b=L;J=v[a+4>>2];U=v[a+120>>2];h=a+216|0;D=0;l=xa-16|0;xa=l;P=v[R+16>>2];q:{if(!P){break q}k=v[b+16>>2];if(!k){break q}Q=v[a+204>>2];d=v[a+208>>2];v[l+8>>2]=v[a+212>>2];v[l+4>>2]=d;v[l>>2]=Q;E=v[b+12>>2];H=v[b+8>>2];I=v[b+4>>2];T=v[b>>2];K=v[R+12>>2];O=v[R+8>>2];S=v[R+4>>2];F=v[R>>2];b=0;while(1){q=F+(D<<3)|0;i=v[q>>2];g=D<<2;j=v[g+O>>2];while(1){e=b;b=b+1|0;c=v[T+(e<<3)>>2];if(c>>>0>>0){continue}break}n=v[q+4>>2];if(n>>>0>=c>>>0){u=g+K|0;q=j<<2&12;G=S+(D<<4)|0;b=e;while(1){g=b<<2;c=v[g+H>>2];r:{if((c|0)==(j|0)|!w[U+(q|c&3)|0]){break r}c=I+(b<<4)|0;if(y[c+8>>2]>2]|y[G+8>>2]>2]|(y[c+12>>2]>2]|y[G+12>>2]>2])){break r}A=v[h+28>>2];if((A|0)==1073741823){break r}i=v[u>>2];c=v[g+E>>2];s=c>>>0>>0?i:c;o=c>>>0>i>>>0?i:c;c=s<<16|o;c=(c<<15^-1)+c|0;c=B(c>>10^c,9);c=c>>6^c;c=(c<<11^-1)+c|0;i=c>>16^c;x=i&v[h+36>>2];g=v[h+8>>2];s:{t:{if(!g){break t}r=v[v[h>>2]+(x<<2)>>2];if((r|0)==1073741823){break t}c=v[h+4>>2];p=v[h+20>>2];while(1){m=(r<<3)+p|0;if((o|0)==v[m>>2]&(s|0)==v[m+4>>2]){break s}r=v[c+(r<<2)>>2];if((r|0)!=1073741823){continue}break}}if(g>>>0<=A>>>0){c=A+1|0;c=c>>>1|c;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;c=c>>>16|c;v[h+36>>2]=c;c=c+1|0;v[h+8>>2]=c;TL(h,c>>>0>y[h+12>>2]);x=i&v[h+36>>2];A=v[h+28>>2]}m=v[h+20>>2]+(A<<3)|0;v[m+4>>2]=s;v[m>>2]=o;t[v[h+24>>2]+A|0]=8;g=v[h>>2]+(x<<2)|0;v[v[h+4>>2]+(v[h+28>>2]<<2)>>2]=v[g>>2];c=v[h+28>>2];v[h+28>>2]=c+1;v[g>>2]=c;p=v[h+20>>2]}p=m-p>>3;r=v[h+24>>2];c=p+r|0;x=w[c|0];if(x&8){t[c|0]=0;c=v[h+24>>2]+(m-v[h+20>>2]>>3)|0;t[c|0]=w[c|0]|1;r=m-v[h+20>>2]|0;g=r>>>3|0;if(v[l+8>>2]==(d|0)){VL(l,J);r=m-v[h+20>>2]|0;Q=v[l>>2];d=v[l+4>>2]}c=d+1|0;v[l+4>>2]=c;v[(d<<2)+Q>>2]=g;d=v[h+24>>2]+(r>>3)|0;t[d|0]=w[d|0]|4;p=m-v[h+20>>2]>>3;r=v[h+24>>2];x=w[p+r|0];d=c}t[p+r|0]=x&253}b=b+1|0;if(n>>>0>=y[T+(b<<3)>>2]){continue}break}}if(e>>>0>>0){b=e;D=D+1|0;if(P>>>0>D>>>0){continue}}break}b=0;D=0;while(1){i=T+(D<<3)|0;g=v[i>>2];c=D<<2;s=v[c+H>>2];while(1){e=b;b=b+1|0;d=v[F+(e<<3)>>2];if(d>>>0<=g>>>0){continue}break}u=v[i+4>>2];if(u>>>0>=d>>>0){q=c+E|0;i=s<<2&12;j=I+(D<<4)|0;b=e;while(1){c=b<<2;d=v[c+O>>2];u:{if((d|0)==(s|0)|!w[U+(i|d&3)|0]){break u}d=S+(b<<4)|0;if(y[d+8>>2]>2]|y[j+8>>2]>2]|(y[d+12>>2]>2]|y[j+12>>2]>2])){break u}A=v[h+28>>2];if((A|0)==1073741823){break u}g=v[q>>2];d=v[c+K>>2];o=d>>>0>>0?g:d;n=d>>>0>g>>>0?g:d;d=o<<16|n;d=(d<<15^-1)+d|0;d=B(d>>10^d,9);d=d>>6^d;d=(d<<11^-1)+d|0;g=d>>16^d;x=g&v[h+36>>2];c=v[h+8>>2];v:{w:{if(!c){break w}r=v[v[h>>2]+(x<<2)>>2];if((r|0)==1073741823){break w}d=v[h+4>>2];p=v[h+20>>2];while(1){m=(r<<3)+p|0;if((n|0)==v[m>>2]&(o|0)==v[m+4>>2]){break v}r=v[d+(r<<2)>>2];if((r|0)!=1073741823){continue}break}}if(c>>>0<=A>>>0){d=A+1|0;d=d>>>1|d;d=d>>>2|d;d=d>>>4|d;d=d>>>8|d;d=d>>>16|d;v[h+36>>2]=d;d=d+1|0;v[h+8>>2]=d;TL(h,d>>>0>y[h+12>>2]);x=g&v[h+36>>2];A=v[h+28>>2]}m=v[h+20>>2]+(A<<3)|0;v[m+4>>2]=o;v[m>>2]=n;t[v[h+24>>2]+A|0]=8;c=v[h>>2]+(x<<2)|0;v[v[h+4>>2]+(v[h+28>>2]<<2)>>2]=v[c>>2];d=v[h+28>>2];v[h+28>>2]=d+1;v[c>>2]=d;p=v[h+20>>2]}p=m-p>>3;r=v[h+24>>2];d=p+r|0;x=w[d|0];if(x&8){t[d|0]=0;d=v[h+24>>2]+(m-v[h+20>>2]>>3)|0;t[d|0]=w[d|0]|1;p=m-v[h+20>>2]|0;d=p>>>3|0;r=v[l+4>>2];if((r|0)==v[l+8>>2]){VL(l,J);p=m-v[h+20>>2]|0;r=v[l+4>>2];Q=v[l>>2]}v[l+4>>2]=r+1;v[(r<<2)+Q>>2]=d;d=v[h+24>>2]+(p>>3)|0;t[d|0]=w[d|0]|4;p=m-v[h+20>>2]>>3;r=v[h+24>>2];x=w[p+r|0]}t[p+r|0]=x&253}b=b+1|0;if(u>>>0>=y[F+(b<<3)>>2]){continue}break}}if(e>>>0

>>0){b=e;D=D+1|0;if(k>>>0>D>>>0){continue}}break}v[a+204>>2]=Q;v[a+208>>2]=v[l+4>>2];v[a+212>>2]=v[l+8>>2]}xa=l+16|0;ZL(L)}ZL(R)}e=v[f+112>>2];if(!((e|0)==(f+80|0)|!e)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}e=v[f+248>>2];if((e|0)==(f+216|0)|!e){break d}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}xa=f+352|0;u=v[a+204>>2];j=v[a+4>>2];q=0;L=v[a+208>>2];x:{if(!L){v[a+280>>2]=v[a+272>>2];break x}while(1){b=v[u+(q<<2)>>2];o=v[N+20>>2]+(b<<3)|0;b=b+v[N+24>>2]|0;e=w[b|0];y:{if(e&2){if(e&4){break y}d=v[a+272>>2];z:{if((d|0)!=v[a+276>>2]){s=v[a+268>>2];break z}s=Cx(j,d<<4,1);g=H9(s,v[a+268>>2],v[a+276>>2]<<3);b=v[j+16>>2];n=v[a+268>>2];A:{if(!(b>>>0<=n>>>0&n>>>0>2]>>>0)){if(!n){break A}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,n);break A}c=v[j+4>>2];d=0;i=v[j+8>>2];b=i;while(1){f=d;d=d+1|0;e=b;b=b-1|0;k=c+(b<<2)|0;if(n>>>0>y[k>>2]){continue}break}B:{if(e>>>0>=i>>>0){break B}d=0;b=f&3;if(b){while(1){v[k>>2]=v[v[j+4>>2]+(e<<2)>>2];e=e+1|0;k=k+4|0;d=d+1|0;if((b|0)!=(d|0)){continue}break}}if(f-1>>>0<3){break B}while(1){b=e<<2;v[k>>2]=v[b+v[j+4>>2]>>2];v[k+4>>2]=v[(b+v[j+4>>2]|0)+4>>2];v[k+8>>2]=v[(b+v[j+4>>2]|0)+8>>2];v[k+12>>2]=v[(b+v[j+4>>2]|0)+12>>2];k=k+16|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}v[j+8>>2]=i-1}v[a+268>>2]=g;v[a+276>>2]=v[a+276>>2]<<1;d=v[a+272>>2]}f=v[o+4>>2];b=v[o>>2];v[a+272>>2]=d+1;e=(d<<3)+s|0;v[e>>2]=b>>>0>>0?b:f;v[e+4>>2]=b>>>0>f>>>0?b:f;break y}t[b|0]=e&254;if(!(w[v[N+24>>2]+(o-v[N+20>>2]>>3)|0]&4)){break y}d=v[a+260>>2];C:{if((d|0)!=v[a+264>>2]){s=v[a+256>>2];break C}s=Cx(j,d<<4,1);g=H9(s,v[a+256>>2],v[a+264>>2]<<3);b=v[j+16>>2];n=v[a+256>>2];D:{if(!(b>>>0<=n>>>0&n>>>0>2]>>>0)){if(!n){break D}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,n);break D}c=v[j+4>>2];d=0;i=v[j+8>>2];b=i;while(1){f=d;d=d+1|0;e=b;b=b-1|0;k=c+(b<<2)|0;if(n>>>0>y[k>>2]){continue}break}E:{if(e>>>0>=i>>>0){break E}d=0;b=f&3;if(b){while(1){v[k>>2]=v[v[j+4>>2]+(e<<2)>>2];e=e+1|0;k=k+4|0;d=d+1|0;if((b|0)!=(d|0)){continue}break}}if(f-1>>>0<3){break E}while(1){b=e<<2;v[k>>2]=v[b+v[j+4>>2]>>2];v[k+4>>2]=v[(b+v[j+4>>2]|0)+4>>2];v[k+8>>2]=v[(b+v[j+4>>2]|0)+8>>2];v[k+12>>2]=v[(b+v[j+4>>2]|0)+12>>2];k=k+16|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}v[j+8>>2]=i-1}v[a+256>>2]=g;v[a+264>>2]=v[a+264>>2]<<1;d=v[a+260>>2]}f=v[o+4>>2];b=v[o>>2];v[a+260>>2]=d+1;e=(d<<3)+s|0;v[e>>2]=b>>>0>>0?b:f;v[e+4>>2]=b>>>0>f>>>0?b:f;b=v[N+24>>2]+(o-v[N+20>>2]>>3)|0;t[b|0]=w[b|0]&251}q=q+1|0;if((L|0)!=(q|0)){continue}break}v[a+280>>2]=v[a+272>>2];if(L){s=0;while(1){b=v[u+(s<<2)>>2];if((w[b+v[N+24>>2]|0]&6)==6){q=v[N+20>>2]+(b<<3)|0;d=v[a+280>>2];F:{if((d|0)!=v[a+276>>2]){i=v[a+268>>2];break F}i=Cx(j,d<<4,1);g=H9(i,v[a+268>>2],v[a+276>>2]<<3);b=v[j+16>>2];o=v[a+268>>2];G:{if(!(b>>>0<=o>>>0&o>>>0>2]>>>0)){if(!o){break G}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,o);break G}c=v[j+4>>2];d=0;n=v[j+8>>2];b=n;while(1){f=d;d=d+1|0;e=b;b=b-1|0;k=c+(b<<2)|0;if(o>>>0>y[k>>2]){continue}break}H:{if(e>>>0>=n>>>0){break H}d=0;b=f&3;if(b){while(1){v[k>>2]=v[v[j+4>>2]+(e<<2)>>2];e=e+1|0;k=k+4|0;d=d+1|0;if((b|0)!=(d|0)){continue}break}}if(f-1>>>0<3){break H}while(1){b=e<<2;v[k>>2]=v[b+v[j+4>>2]>>2];v[k+4>>2]=v[(b+v[j+4>>2]|0)+4>>2];v[k+8>>2]=v[(b+v[j+4>>2]|0)+8>>2];v[k+12>>2]=v[(b+v[j+4>>2]|0)+12>>2];k=k+16|0;e=e+4|0;if((n|0)!=(e|0)){continue}break}}v[j+8>>2]=n-1}v[a+268>>2]=g;v[a+276>>2]=v[a+276>>2]<<1;d=v[a+280>>2]}f=v[q+4>>2];b=v[q>>2];v[a+280>>2]=d+1;e=(d<<3)+i|0;v[e>>2]=b>>>0>>0?b:f;v[e+4>>2]=b>>>0>f>>>0?b:f}s=s+1|0;if((L|0)!=(s|0)){continue}break}}}v[a+192>>2]=v[a+188>>2];xa=M+16|0}function GO(a){a=a|0;var b=0,c=0,d=0,e=0,f=C(0),g=0,h=0,i=C(0),j=0,k=0,l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=0,s=0,y=0,A=C(0),E=0,F=C(0),G=0,H=0,I=C(0),J=C(0),L=C(0),M=0,N=0,O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=0,X=0,Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;j=xa-128|0;xa=j;c=v[a+36>>2];b=v[c+304>>2];s=v[b>>2];if(s){v[b>>2]=v[s>>2]}if(!s){b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?26823:63804;e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,7251,e,19395,82)|0;b=e+19&-16;v[b-4>>2]=b-e;s=sK(b,v[c+308>>2])}N=v[a+56>>2];b=N+v[a+60>>2]|0;c=v[a+64>>2];W=b>>>0>>0?b:c;a:{if(N>>>0>=W>>>0){break a}T=z[v[a+40>>2]+328>>2];aa=j+48|0;r=v[a+68>>2];while(1){c=v[a+32>>2];if(c>>>0<=r>>>0){break a}b=r+1|0;b:{c:{if(b>>>0>=c>>>0){y=b;break c}e=v[a+28>>2];y=b;d:{while(1){if(v[v[e+(y<<2)>>2]+56>>2]!=(N|0)){break d}y=y+1|0;if((c|0)!=(y|0)){continue}break}y=c}if(b>>>0>>0){G=v[a+28>>2]+(r<<2)|0;e=0;g=0;l=0;E=32;O=xa-16|0;xa=O;t[O+12|0]=0;h=O-128|0;xa=h;v[O+8>>2]=h;n=(y-r|0)-1|0;e:{if((n|0)<=0){break e}while(1){f:{if((e|0)>=(n|0)){break f}while(1){if(n-e>>>0<=4){while(1){k=e;e=e+1|0;b=e;c=k;while(1){d=b;b=v[G+(b<<2)>>2];f=z[b+28>>2];H=v[G+(c<<2)>>2];i=z[H+28>>2];g:{if(!(f>2]|(!v[b+4>>2]|f!=i)){break g}}c=d}b=d+1|0;if((d|0)<(n|0)){continue}break}if((c|0)!=(k|0)){b=G+(c<<2)|0;c=v[b>>2];d=b;b=G+(k<<2)|0;v[d>>2]=v[b>>2];v[b>>2]=c}if((e|0)!=(n|0)){continue}break f}}h:{i:{H=G+(e<<2)|0;c=v[H>>2];f=z[c+28>>2];d=G+((e+n|0)/2<<2)|0;k=v[d>>2];i=z[k+28>>2];if(f>i){break i}if(f!=i){b=c;break h}if(!v[k+4>>2]){b=c;break h}if(!v[c+4>>2]){break i}b=c;break h}v[H>>2]=k;v[d>>2]=c;b=v[H>>2];f=z[b+28>>2];k=c}j:{k:{M=G+(n<<2)|0;c=v[M>>2];i=z[c+28>>2];if(!(i>2]|(!v[c+4>>2]|f!=i)){break k}}v[H>>2]=c;v[M>>2]=b;k=v[d>>2];break j}f=i;b=c}i=z[k+28>>2];l:{if(!(i>f)){if(v[k+4>>2]|(!v[b+4>>2]|f!=i)){break l}}v[d>>2]=b;v[M>>2]=k;k=v[d>>2]}b=n-1|0;H=G+(b<<2)|0;v[d>>2]=v[H>>2];v[H>>2]=k;c=e;while(1){f=z[k+28>>2];while(1){d=c;c=d+1|0;U=G+(c<<2)|0;M=v[U>>2];i=z[M+28>>2];if(i>2]?1:!v[M+4>>2]|f!=i)){continue}break}while(1){b=b-1|0;X=G+(b<<2)|0;V=v[X>>2];i=z[V+28>>2];if(i>f|!(v[V+4>>2]?1:!v[k+4>>2]|f!=i)){continue}break}if((b|0)>(c|0)){v[U>>2]=V;v[X>>2]=M;k=v[H>>2];continue}break}v[U>>2]=k;v[H>>2]=M;m:{if((c-e|0)<(n-c|0)){if(E-1>>>0<=g>>>0){c=E<<3;if(c){b=v[37696];k=b+12|0;b=(ca=k,da=c,ea=Ba[v[v[b>>2]+20>>2]](b)|0?56633:63804,fa=17218,ga=155,ba=v[v[k>>2]+8>>2],Ba[ba](ca|0,da|0,ea|0,fa|0,ga|0)|0)}else{b=0}E=E<<1;b=H9(b,h,g<<2);c=l;l=1;if(!(!c|!h)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}h=b}b=(g<<2)+h|0;v[b>>2]=e;v[b+4>>2]=d;e=d+2|0;break m}if(E-1>>>0<=g>>>0){c=E<<3;if(c){b=v[37696];k=b+12|0;b=(ga=k,fa=c,ea=Ba[v[v[b>>2]+20>>2]](b)|0?56633:63804,da=17218,ca=155,ba=v[v[k>>2]+8>>2],Ba[ba](ga|0,fa|0,ea|0,da|0,ca|0)|0)}else{b=0}E=E<<1;b=H9(b,h,g<<2);c=l;l=1;if(!(!c|!h)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}h=b}b=(g<<2)+h|0;v[b>>2]=d+2;v[b+4>>2]=n;n=d}g=g+2|0;if((e|0)<(n|0)){continue}break}}if(g){b=g-2|0;e=v[(b<<2)+h>>2];n=v[((g<<2)+h|0)-4>>2];g=b;continue}break}if(!l|!h){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,h)}if(w[O+12|0]){u9(v[O+8>>2])}xa=O+16|0}if(r>>>0>=y>>>0){break b}}O=y-2|0;H=N-1|0;P=z[a+44>>2];G=1;while(1){d=v[v[a+28>>2]+(r<<2)>>2];f=z[d+28>>2];if(f>C(1)){break b}e=0;b=v[d>>2];if(b){e=!w[v[b+32>>2]+34|0]}b=v[d+4>>2];if(b){b=w[v[b+32>>2]+34|0]}else{b=1}n:{if((e|!b)!=1){break n}o:{if(v[d+104>>2]){break o}g=xa-192|0;xa=g;pO(d);b=v[d+12>>2];l=v[d+8>>2];e=v[d+4>>2];n=v[d>>2];h=v[d+64>>2];c=v[d+60>>2];p:{if((h|0)>=(c|0)){k=h;h=c;c=b;b=l;l=e;e=n;break p}k=c;c=l;l=n}z[g+160>>2]=z[b+36>>2];z[g+164>>2]=z[b+40>>2];z[g+168>>2]=z[b+44>>2];z[g+172>>2]=z[b+48>>2];i=z[b+52>>2];z[g+176>>2]=i;m=z[b+56>>2];z[g+180>>2]=m;q=z[b+60>>2];z[g+184>>2]=q;z[g+96>>2]=z[b+8>>2];z[g+100>>2]=z[b+12>>2];z[g+104>>2]=z[b+16>>2];z[g+108>>2]=z[b+20>>2];p=z[b+24>>2];z[g+112>>2]=p;F=z[b+28>>2];z[g+116>>2]=F;L=z[b+32>>2];z[g+120>>2]=L;z[g+128>>2]=z[c+36>>2];z[g+132>>2]=z[c+40>>2];z[g+136>>2]=z[c+44>>2];z[g+140>>2]=z[c+48>>2];I=z[c+52>>2];z[g+144>>2]=I;Q=z[c+56>>2];z[g+148>>2]=Q;R=z[c+60>>2];z[g+152>>2]=R;z[g+64>>2]=z[c+8>>2];z[g+68>>2]=z[c+12>>2];z[g+72>>2]=z[c+16>>2];z[g+76>>2]=z[c+20>>2];S=z[c+24>>2];z[g+80>>2]=S;Y=z[c+28>>2];z[g+84>>2]=Y;Z=z[c+32>>2];z[g+88>>2]=Z;v[g+56>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+40>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;f=z[v[d+52>>2]+52>>2];v[s+7160>>2]=-1;z[s+7152>>2]=P;o=f>C(0)?f:C(0);n=s+7160|0;A=z[b+4>>2];J=z[c+4>>2];f=C(A+J);_=f>2]>>2],28)+142128|0)+(v[v[c>>2]>>2]<<2)>>2]](b,c,g+160|0,g+128|0,g+96|0,g- -64|0,o,g+48|0,g+32|0,z[d+28>>2],n,_));q:{if(o>=C(1)){v[d+48>>2]=0;v[d+104>>2]=1;v[d+28>>2]=2139095039;v[d+32>>2]=0;break q}v[d+72>>2]=v[n>>2];I=C(C(i-p)-C(I-S));i=z[g+48>>2];f=C(-i);p=z[g+52>>2];m=C(C(I*f)-C(C(C(m-F)-C(Q-Y))*p));F=z[g+56>>2];L=C(m-C(C(C(q-L)-C(R-Z))*F));r:{if(v[d+64>>2]>2]){f=i;break r}F=C(-F);z[g+56>>2]=F;p=C(-p);z[g+52>>2]=p;z[g+48>>2]=f}v[d+104>>2]=1;if(L<_){v[d+28>>2]=2139095039;break q}m=C(0);s:{if(!(o<=C(0))){I=C(0);break s}m=C(1);q=C(1);i=C(1);I=C(-o);o=C(0);q=e?z[v[e+32>>2]+36>>2]:q;m=l?z[v[l+32>>2]+36>>2]:m;if((m>q?q:m)!=C(1)){m=C(0);break s}i=e?z[v[e+36>>2]+60>>2]:i;t:{if(!l){J=C(34028234663852886e22);m=C(1);break t}m=z[v[l+36>>2]+60>>2]}m=C(C((A>2]=I;z[d+28>>2]=o;z[d+32>>2]=m;z[d+36>>2]=z[g+32>>2];z[d+40>>2]=z[g+36>>2];i=z[g+40>>2];z[d+24>>2]=F;z[d+20>>2]=p;z[d+16>>2]=f;z[d+44>>2]=i;e=s+4624|0;v[e>>2]=0;l=v[d+72>>2];z[s+536>>2]=F;z[s+532>>2]=p;z[s+528>>2]=f;v[e>>2]=1;z[s+544>>2]=z[d+36>>2];z[s+548>>2]=z[d+40>>2];f=z[d+44>>2];v[s+580>>2]=k-5>>>0<2?l:-1;v[s+540>>2]=0;z[s+552>>2]=f;e=v[b+92>>2];b=g+24|0;Ba[v[(h<<2)+133728>>2]](e,0,s,b)|0;Ba[v[(k<<2)+133728>>2]](v[c+92>>2],1,s,b)|0;b=v[v[s+7188>>2]>>2];c=b+(x[g+24>>1]<<5)|0;e=b+(x[g+26>>1]<<5)|0;f=My(c,e);b=g+16|0;z[b+4>>2]=1;z[b>>2]=1;Ny(g,b,c,e);b=v[g+4>>2];c=v[g>>2];u[d+76>>1]=x[g+24>>1];e=x[g+26>>1];z[d+88>>2]=f;ba=d,ca=Vaa(c,b),v[ba+80>>2]=ca;v[d+84>>2]=Aa;u[d+78>>1]=e}xa=g+192|0;e=r+1|0;if(y>>>0<=e>>>0){f=z[d+28>>2];break o}c=r;f=z[d+28>>2];if(!(f>z[v[v[a+28>>2]+(e<<2)>>2]+28>>2])){break o}u:{while(1){l=v[a+28>>2];b=e;e=v[l+(b<<2)>>2];if(!(z[e+28>>2]>2]=e;c=b;e=b+1|0;if((y|0)!=(e|0)){continue}break}l=v[a+28>>2]}v[(b<<2)+l>>2]=d;r=r-1|0;break n}if(f>C(1)){break b}v:{if(!(f<=C(34028234663852886e22))|!w[d+69|0]){break v}c=v[a+40>>2];if(!v[c+120>>2]){break v}v[j>>2]=1065353216;v[j+4>>2]=1065353216;v[j+8>>2]=1065353216;v[j+12>>2]=1065353216;z[j+16>>2]=z[d+16>>2];z[j+20>>2]=z[d+20>>2];z[j+24>>2]=z[d+24>>2];f=z[d+80>>2];z[j+32>>2]=f;i=z[d+84>>2];z[j+36>>2]=i;e=x[d+76>>1];u[j+44>>1]=e;b=x[d+78>>1];v[j+40>>2]=256;u[j+46>>1]=b;z[j+48>>2]=z[d+36>>2];z[j+52>>2]=z[d+40>>2];z[j+56>>2]=z[d+44>>2];z[j+80>>2]=z[d+16>>2];z[j+84>>2]=z[d+20>>2];m=z[d+24>>2];z[j+108>>2]=f;u[j+102>>1]=b;u[j+100>>1]=e;z[j+88>>2]=m;z[j+104>>2]=i;f=z[d+88>>2];v[j+96>>2]=0;v[j+60>>2]=0;z[j+92>>2]=f;v[j+72>>2]=0;v[j+76>>2]=2139095039;v[j+64>>2]=0;v[j+68>>2]=0;b=v[d+8>>2];e=v[b+92>>2];k=v[d+12>>2];h=v[k+92>>2];l=v[b+96>>2];k=v[k+96>>2];n=v[d>>2];g=v[d+4>>2];b=xa-112|0;xa=b;if(v[c+120>>2]){E=v[37412];v[b+44>>2]=E+h;v[b+40>>2]=e+E;E=v[37413];M=v[37414];v[b+36>>2]=k+(g?E:M);v[b+32>>2]=l+(n?E:M);CO(b,e,l,(n|0)!=0);e=v[b+8>>2];v[b+52>>2]=v[b+4>>2];v[b+56>>2]=e;e=v[b+16>>2];v[b+60>>2]=v[b+12>>2];v[b+64>>2]=e;e=v[b+24>>2];v[b+68>>2]=v[b+20>>2];v[b+72>>2]=e;z[b+48>>2]=z[b>>2];CO(b,h,k,(g|0)!=0);z[b+76>>2]=z[b>>2];e=v[b+8>>2];v[b+80>>2]=v[b+4>>2];v[b+84>>2]=e;e=v[b+16>>2];v[b+88>>2]=v[b+12>>2];v[b+92>>2]=e;e=v[b+24>>2];v[b+96>>2]=v[b+20>>2];v[b+100>>2]=e;v[b+108>>2]=aa;v[b+104>>2]=1;c=v[c+120>>2];Ba[v[v[c>>2]>>2]](c,b+32|0,1)}xa=b+112|0;if(w[j+43|0]&32){z[d+100>>2]=z[j+76>>2]}z[d+80>>2]=z[j+108>>2];z[d+84>>2]=z[j+104>>2];z[d+88>>2]=z[j+92>>2];z[d+36>>2]=z[j+48>>2];z[d+40>>2]=z[j+52>>2];z[d+44>>2]=z[j+56>>2];z[d+16>>2]=z[j+80>>2];z[d+20>>2]=z[j+84>>2];z[d+24>>2]=z[j+88>>2]}b=v[d>>2];if(!b|w[v[b+32>>2]+34|0]){c=!b}else{c=1}b=v[d+4>>2];if(!b|w[v[b+32>>2]+34|0]){b=!b}else{b=1}if(!(!b|(!(z[d+28>>2]<=C(1))|c^1))){t[d+68|0]=1}k=w[a+84|0];l=0;f=C(0);p=C(0);m=C(0);J=C(0);o=C(0);n=0;e=xa-16|0;xa=e;c=v[d+4>>2];g=v[d+12>>2];E=v[d+8>>2];w:{x:{y:{b=v[d>>2];if(!(w[v[b+32>>2]+34|0]?0:b)){if(w[v[c+32>>2]+34|0]|!c){break w}if(!b){break y}}if(z[v[b+36>>2]+124>>2]!=C(0)){break x}if(c){break y}break w}if(z[v[c+36>>2]+124>>2]==C(0)){break w}}F=z[d+28>>2];if(!(F>2]+41|0]&8|z[d+100>>2]==C(0)){break w}L=z[d+48>>2];z[e>>2]=z[d+16>>2];z[e+4>>2]=z[d+20>>2];z[e+8>>2]=z[d+24>>2];i=z[e>>2];z:{if((v[e>>2]&2139095040)==2139095040){break z}q=z[e+4>>2];if((v[e+4>>2]&2139095040)==2139095040){break z}A=z[e+8>>2];if((v[e+8>>2]&2139095040)==2139095040){break z}l=C(D(C(C(K(C(C(A*A)+C(C(i*i)+C(q*q)))))+C(-1))))>2]+34|0]|!b){break w}sO(b,F);tO(b,F,P,1);b=v[b+32>>2];v[b+48>>2]=v[b+48>>2]+1;break w}l=v[d+52>>2];if(b){h=v[b+36>>2];f=z[h+80>>2];i=C(z[E+56>>2]-z[h+20>>2]);o=C(z[E+52>>2]-z[h+16>>2]);J=z[h+84>>2];m=C(C(C(f*i)-C(o*J))+z[h+72>>2]);q=z[h+88>>2];A=C(z[E+60>>2]-z[h+24>>2]);o=C(z[h+68>>2]+C(C(q*o)-C(A*f)));f=C(z[h+64>>2]+C(C(J*A)-C(i*q)));J=C(z[h+124>>2]*C(w[l+44|0]))}i=C(0);A=C(0);q=C(0);if(c){h=v[c+36>>2];i=z[h+80>>2];p=C(z[g+56>>2]-z[h+20>>2]);q=C(z[g+52>>2]-z[h+16>>2]);I=z[h+84>>2];A=C(C(C(i*p)-C(q*I))+z[h+72>>2]);Q=z[h+88>>2];R=C(Q*q);q=C(z[g+60>>2]-z[h+24>>2]);i=C(z[h+68>>2]+C(R-C(q*i)));p=C(z[h+64>>2]+C(C(I*q)-C(p*Q)));q=C(z[h+124>>2]*C(w[l+45|0]))}m=C(A-m);A=z[e+8>>2];f=C(p-f);p=z[e>>2];I=C(i-o);Q=z[e+4>>2];i=C(C(m*A)+C(C(f*p)+C(I*Q)));o=C(i-C(L*C(10)));A:{if(!(o>2]);R=C(J+q);o=C(C(C(z[d+88>>2]+C(1))*o)/R);o=o>2];S=z[d+84>>2];m=C(m-C(A*i));f=C(f-C(p*i));p=C(I-C(Q*i));i=C(K(C(C(m*m)+C(C(f*f)+C(p*p)))));if(i>C(0)){A=C(C(1)/i);m=C(m*A);p=C(p*A);f=C(f*A)}i=C(i/R);i=i<=C(D(C(S*o)))?i:C(L*C(-o));m=C(C(i*m)+C(o*z[d+24>>2]));f=C(C(i*f)+C(o*z[d+16>>2]));i=C(C(i*p)+C(o*z[d+20>>2]));break B}m=C(o*z[d+24>>2]);f=C(o*z[d+16>>2]);i=C(o*z[d+20>>2])}if(!(o>2]=-o;if(!(!(w[v[b+32>>2]+34|0]?b:0)&(!c|!w[v[c+32>>2]+34|0]))){v[d+32>>2]=0;break A}if(b){h=v[b+36>>2];z[h+64>>2]=C(J*f)+z[h+64>>2];z[h+72>>2]=C(J*m)+z[h+72>>2];z[h+68>>2]=C(J*i)+z[h+68>>2];uO(b)}if(!c){break A}h=v[c+36>>2];z[h+64>>2]=z[h+64>>2]-C(q*f);z[h+72>>2]=z[h+72>>2]-C(q*m);z[h+68>>2]=z[h+68>>2]-C(q*i);uO(c)}if(!(w[v[b+32>>2]+34|0]|!b)){sO(b,F);tO(b,F,P,k&z[d+32>>2]==C(0));h=v[b+32>>2];v[h+48>>2]=v[h+48>>2]+1}if(!(w[v[c+32>>2]+34|0]|!c)){sO(c,F);tO(c,F,P,k&z[d+32>>2]==C(0));h=v[c+32>>2];v[h+48>>2]=v[h+48>>2]+1}f=z[d+32>>2];C:{if(!(f>C(0))){break C}D:{if(w[v[b+32>>2]+34|0]|!b){break D}sO(b,f);if(!k){break D}tO(b,z[d+32>>2],P,1)}if(w[v[c+32>>2]+34|0]|!c){break C}sO(c,z[d+32>>2]);if(!k){break C}tO(c,z[d+32>>2],P,1)}if(b){u[v[b+32>>2]+34>>1]=257}if(!c){break w}u[v[c+32>>2]+34>>1]=257}xa=e+16|0;f=z[d+28>>2];E:{if(!(f>2]=0;f=C(0);if(!n){break n}}c=v[a+76>>2];b=N?x[c+(H<<1)>>1]:0;F:{if(!(f>C(0))){break F}h=x[c+(N<<1)>>1];if(h>>>0>b>>>0){while(1){c=v[v[a+72>>2]+(b<<2)>>2];if(!w[c+34|0]){c=v[c+40>>2];e=v[c+36>>2];if(z[e+124>>2]!=C(0)){m=z[e+20>>2];p=z[e+24>>2];i=C(C(1)-f);z[c+16>>2]=C(i*z[c+16>>2])+C(f*z[e+16>>2]);z[c+24>>2]=C(i*z[c+24>>2])+C(f*p);z[c+20>>2]=C(i*z[c+20>>2])+C(f*m);r9(j,f,c,e);z[c>>2]=z[j>>2];z[c+4>>2]=z[j+4>>2];z[c+8>>2]=z[j+8>>2];z[c+12>>2]=z[j+12>>2];f=z[d+28>>2]}c=v[c+32>>2];v[c+48>>2]=v[c+48>>2]+1;i=C(z[c+36>>2]*C(C(1)-f));z[c+36>>2]=i>C(.009999999776482582)?i:C(.009999999776482582)}b=b+1|0;if((h|0)!=(b|0)){continue}break}}P=C(P-C(P*f));b=r+1|0;if(y>>>0<=b>>>0){break F}f=C(C(1)/C(C(1)-f));c=v[a+28>>2];if((r^-1)+y&1){b=v[c+(b<<2)>>2];z[b+28>>2]=f*C(z[b+28>>2]-z[d+28>>2]);b=r+2|0}if((r|0)==(O|0)){break F}while(1){e=c+(b<<2)|0;h=v[e>>2];z[h+28>>2]=f*C(z[h+28>>2]-z[d+28>>2]);e=v[e+4>>2];z[e+28>>2]=f*C(z[e+28>>2]-z[d+28>>2]);b=b+2|0;if((y|0)!=(b|0)){continue}break}}G:{if(w[a+85|0]|w[v[d+52>>2]+41|0]&8|z[d+100>>2]==C(0)){break G}b=r+1|0;if(y>>>0<=b>>>0){break G}k=v[d+4>>2];d=v[d>>2];h=r;while(1){c=v[v[a+28>>2]+(b<<2)>>2];e=v[c>>2];H:{if(!e){break H}l=v[c+4>>2];if(!l){break H}I:{if((d|0)==(e|0)&(k|0)!=(l|0)){break I}n=(d|0)!=(l|0);if(!n&(e|0)!=(k|0)|n&(e|0)==(k|0)){break I}if((k|0)!=(l|0)){break H}if((d|0)!=(e|0)){break I}break H}if(v[c+92>>2]==(G|0)){break H}v[c+92>>2]=G;i=z[c+28>>2];f=qO(c,T);if(i>f){e=b;if(h>>>0<=r>>>0){break H}while(1){c=v[a+28>>2];l=c+(h<<2)|0;n=v[l>>2];if(!(f>2])){break H}g=c;c=e<<2;v[l>>2]=v[g+c>>2];v[c+v[a+28>>2]>>2]=n;e=h;h=e-1|0;if(r>>>0>>0){continue}break}break H}if(!(f>i)){break H}n=0;h=b+1|0;J:{if(y>>>0<=h>>>0){break J}c=b;l=v[a+28>>2];e=l+(h<<2)|0;g=v[e>>2];if(!(f>z[g+28>>2])){break J}while(1){c=c<<2;v[e>>2]=v[c+l>>2];v[c+v[a+28>>2]>>2]=g;n=-1;e=h+1|0;if((e|0)==(y|0)){break J}c=h;l=v[a+28>>2];h=e;e=l+(e<<2)|0;g=v[e>>2];if(f>z[g+28>>2]){continue}break}}b=b+n|0}h=b;b=b+1|0;if(y>>>0>b>>>0){continue}break}}$=$+1|0;G=G+1|0}r=r+1|0;if(y>>>0>r>>>0){continue}break}}r=y;N=N+1|0;if((W|0)!=(N|0)){continue}break}}b=v[a+80>>2];v[b>>2]=v[b>>2]+$;a=v[v[a+36>>2]+304>>2];v[s>>2]=v[a>>2];v[a>>2]=s;xa=j+128|0}function Dx(a,b){var c=0,d=C(0),e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=0,s=0,t=C(0),u=0,x=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=0,Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=0,ia=0,ja=0,ka=0,la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0);o=xa-160|0;xa=o;O=v[b+336>>2]-1|0;if(O){ia=v[b+344>>2];ja=v[b+340>>2];ka=v[b+332>>2];while(1){D=B(O,160)+ja|0;k=0;r=B(O,80)+ia|0;s=w[r+76|0];if(s){L=v[a+384>>2]+B(O,76)|0;c=v[a+348>>2]+B(O,112)|0;u=c- -64|0;while(1){p=z[c+60>>2];H=z[c+48>>2];x=z[c+36>>2];n=z[u>>2];q=z[c+52>>2];A=z[c+40>>2];F=z[c+68>>2];I=z[c+56>>2];G=z[c+44>>2];i=z[c+8>>2];y=z[c+4>>2];J=z[c>>2];N=z[c+96>>2];P=z[c+72>>2];S=z[c+84>>2];K=z[c+20>>2];E=z[c+16>>2];t=z[c+12>>2];T=z[c+100>>2];M=z[c+76>>2];U=z[c+88>>2];e=D+(k<<5)|0;Q=z[c+32>>2];f=L+B(k,24)|0;d=z[f+20>>2];V=z[c+24>>2];h=z[f+12>>2];W=z[c+28>>2];g=z[f+16>>2];l=z[f>>2];j=z[f+4>>2];m=z[f+8>>2];z[e+24>>2]=C(C(Q*d)+C(C(V*h)+C(W*g)))+C(C(C(l*z[c+80>>2])+C(j*z[c+92>>2]))+C(m*z[c+104>>2]));z[e+20>>2]=C(C(K*d)+C(C(t*h)+C(E*g)))+C(C(C(l*M)+C(j*U))+C(m*T));z[e+16>>2]=C(C(i*d)+C(C(J*h)+C(y*g)))+C(C(C(l*P)+C(j*S))+C(m*N));z[e+8>>2]=C(C(C(l*i)+C(j*K))+C(m*Q))+C(C(C(h*G)+C(g*I))+C(d*F));z[e+4>>2]=C(C(C(l*y)+C(j*E))+C(m*W))+C(C(C(h*A)+C(g*q))+C(d*n));z[e>>2]=C(C(C(l*J)+C(j*t))+C(m*V))+C(C(C(h*x)+C(g*H))+C(d*p));k=k+1|0;if((s|0)!=(k|0)){continue}break}}e=o+48|0;s=v[b+236>>2]+B(O,112)|0;_=v[b+248>>2]+B(O,36)|0;L=v[b+284>>2]+B(O,96)|0;u=v[b+272>>2]+B(O,76)|0;d=C(0);p=C(0);h=C(0);l=C(0);g=C(0);j=C(0);m=C(0);H=C(0);x=C(0);i=C(0);q=C(0);y=C(0);J=C(0);K=C(0);E=C(0);t=C(0);A=C(0);F=C(0);k=0;I=C(0);G=C(0);c=xa-352|0;xa=c;a:{b:{c:{d:{ha=(O<<5)+ka|0;switch(w[v[ha+20>>2]+270|0]){case 2:break c;case 0:case 1:break d;default:break b}}d=C(C(C(z[u+20>>2]*z[D+8>>2])+C(C(z[u+12>>2]*z[D>>2])+C(z[u+16>>2]*z[D+4>>2])))+C(C(z[u+8>>2]*z[D+24>>2])+C(C(z[u>>2]*z[D+16>>2])+C(z[u+4>>2]*z[D+20>>2]))));d=d>C(9999999747378752e-21)?C(C(1)/d):C(0);z[_>>2]=d;h=z[D+20>>2];g=z[D+24>>2];m=z[D>>2];i=z[D+4>>2];j=z[D+8>>2];y=z[D+16>>2];v[L+28>>2]=0;v[L+12>>2]=0;l=C(d*g);z[L+24>>2]=l;q=C(d*h);z[L+20>>2]=q;G=C(d*y);z[L+16>>2]=G;j=C(j*d);z[L+8>>2]=j;n=C(i*d);z[L+4>>2]=n;d=C(m*d);z[L>>2]=d;g=z[D+20>>2];N=z[D+8>>2];y=z[D>>2];P=z[D+4>>2];p=z[D+16>>2];h=z[D+24>>2];z[e+104>>2]=l*h;z[e+100>>2]=q*h;z[e+96>>2]=G*h;z[e+92>>2]=l*g;z[e+88>>2]=q*g;z[e+84>>2]=G*g;z[e+80>>2]=l*p;m=C(d*P);z[e+48>>2]=m;x=C(j*y);z[e+44>>2]=x;i=C(n*y);z[e+40>>2]=i;H=C(d*y);z[e+36>>2]=H;y=C(j*h);z[e+32>>2]=y;J=C(n*h);z[e+28>>2]=J;h=C(d*h);z[e+24>>2]=h;K=C(j*g);z[e+20>>2]=K;E=C(n*g);z[e+16>>2]=E;l=C(d*g);z[e+12>>2]=l;t=C(j*p);z[e+8>>2]=t;A=C(n*p);z[e+4>>2]=A;F=C(d*p);z[e>>2]=F;I=C(q*p);g=C(G*p);q=C(j*N);G=C(n*N);p=C(d*N);d=C(j*P);j=C(n*P);break a}v[c+344>>2]=1065353216;v[c+328>>2]=1065353216;v[c+332>>2]=0;v[c+336>>2]=0;v[c+340>>2]=0;v[c+320>>2]=0;v[c+324>>2]=0;v[c+312>>2]=1065353216;v[c+316>>2]=0;K=C(1);d=C(1);g=C(1);h=C(1);r=w[r+76|0];if(r){while(1){Y=(c+312|0)+B(k,12)|0;f=D+(k<<5)|0;d=z[f+16>>2];h=z[f+8>>2];g=z[f+4>>2];l=z[f>>2];j=z[f+24>>2];m=z[f+20>>2];f=0;while(1){X=u+B(f,24)|0;z[Y+(f<<2)>>2]=C(C(z[X+20>>2]*h)+C(C(z[X+12>>2]*l)+C(z[X+16>>2]*g)))+C(C(z[X+8>>2]*j)+C(C(z[X>>2]*d)+C(z[X+4>>2]*m)));f=f+1|0;if((r|0)!=(f|0)){continue}break}k=k+1|0;if((k|0)!=(r|0)){continue}break}m=z[c+316>>2];j=z[c+324>>2];p=z[c+336>>2];l=z[c+340>>2];i=z[c+332>>2];g=z[c+344>>2];h=z[c+328>>2];J=z[c+320>>2];d=z[c+312>>2]}E=C(1);t=C(1);n=C(C(j*l)-C(p*h));q=C(C(h*g)-C(l*i));i=C(C(i*p)-C(g*j));A=C(C(n*J)+C(C(q*d)+C(i*m)));if(A!=C(0)){R=C(C(d*h)-C(j*m));h=C(C(1)/A);t=C(R*h);H=C(n*h);K=C(q*h);x=C(i*h);E=C(C(C(g*d)-C(J*p))*h);y=C(C(C(p*m)-C(d*l))*h)}z[c+304>>2]=t;z[c+300>>2]=y;z[c+292>>2]=y;z[c+288>>2]=E;z[c+296>>2]=H;z[c+284>>2]=x;z[c+280>>2]=H;z[c+276>>2]=x;z[c+272>>2]=K;e:{if(!r){break e}u=r<<2;f=0;if((r|0)!=1){X=r&254;k=0;while(1){Y=B(f,12);H9(Y+_|0,Y+(c+272|0)|0,u);Y=B(f|1,12);H9(Y+_|0,Y+(c+272|0)|0,u);f=f+2|0;k=k+2|0;if((X|0)!=(k|0)){continue}break}}if(r&1){f=B(f,12);H9(f+_|0,f+(c+272|0)|0,u)}if(!r){break e}k=0;while(1){d=C(0);f=0;j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[(_+B(k,12)|0)+(f<<2)>>2];u=D+(f<<5)|0;d=C(d+C(i*z[u+24>>2]));j=C(j+C(i*z[u+20>>2]));l=C(l+C(i*z[u+16>>2]));g=C(g+C(i*z[u+8>>2]));h=C(h+C(i*z[u+4>>2]));m=C(m+C(i*z[u>>2]));f=f+1|0;if((r|0)!=(f|0)){continue}break}f=(k<<5)+L|0;v[f+28>>2]=0;z[f+16>>2]=l;v[f+12>>2]=0;z[f+8>>2]=g;z[f+4>>2]=h;z[f>>2]=m;z[f+24>>2]=d;z[f+20>>2]=j;k=k+1|0;if((r|0)!=(k|0)){continue}break}if(!r){break e}k=0;while(1){f=(c+192|0)+(k<<2)|0;u=D+(k<<5)|0;z[f>>2]=z[u+16>>2];z[f+12>>2]=z[u+20>>2];z[f+24>>2]=z[u+24>>2];z[f+36>>2]=z[u>>2];z[f+48>>2]=z[u+4>>2];z[f+60>>2]=z[u+8>>2];k=k+1|0;if((r|0)!=(k|0)){continue}break}}v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=0;v[c+4>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[(c+192|0)+(f<<2)>>2];k=(f<<5)+L|0;l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+24>>2]=d;z[c+20>>2]=j;z[c+16>>2]=l;z[c+8>>2]=g;z[c+4>>2]=h;z[c>>2]=m}v[c+56>>2]=0;v[c+60>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[((f<<2)+c|0)+204>>2];k=(f<<5)+L|0;d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+56>>2]=d;z[c+52>>2]=j;z[c+48>>2]=l;z[c+40>>2]=g;z[c+36>>2]=h;z[c+32>>2]=m}v[c+88>>2]=0;v[c+92>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;v[c+72>>2]=0;v[c+76>>2]=0;v[c+64>>2]=0;v[c+68>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[((f<<2)+c|0)+216>>2];k=(f<<5)+L|0;d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+88>>2]=d;z[c+84>>2]=j;z[c+80>>2]=l;z[c+72>>2]=g;z[c+68>>2]=h;z[c+64>>2]=m}v[c+120>>2]=0;v[c+124>>2]=0;v[c+112>>2]=0;v[c+116>>2]=0;v[c+104>>2]=0;v[c+108>>2]=0;v[c+96>>2]=0;v[c+100>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[((f<<2)+c|0)+228>>2];k=(f<<5)+L|0;d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+120>>2]=d;z[c+116>>2]=j;z[c+112>>2]=l;z[c+104>>2]=g;z[c+100>>2]=h;z[c+96>>2]=m}v[c+152>>2]=0;v[c+156>>2]=0;v[c+144>>2]=0;v[c+148>>2]=0;v[c+136>>2]=0;v[c+140>>2]=0;v[c+128>>2]=0;v[c+132>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[((f<<2)+c|0)+240>>2];k=(f<<5)+L|0;d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+152>>2]=d;z[c+148>>2]=j;z[c+144>>2]=l;z[c+136>>2]=g;z[c+132>>2]=h;z[c+128>>2]=m}v[c+184>>2]=0;v[c+188>>2]=0;v[c+176>>2]=0;v[c+180>>2]=0;v[c+168>>2]=0;v[c+172>>2]=0;v[c+160>>2]=0;v[c+164>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[((f<<2)+c|0)+252>>2];k=(f<<5)+L|0;d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+184>>2]=d;z[c+180>>2]=j;z[c+176>>2]=l;z[c+168>>2]=g;z[c+164>>2]=h;z[c+160>>2]=m}E=z[c+36>>2];K=z[c+40>>2];J=z[c+68>>2];y=z[c+72>>2];i=z[c+100>>2];x=z[c+104>>2];j=z[c+132>>2];d=z[c+136>>2];G=z[c+164>>2];q=z[c+168>>2];I=z[c+20>>2];n=z[c+24>>2];f=v[c+48>>2];r=v[c+52>>2];N=z[c+56>>2];L=v[c+84>>2];k=v[c+80>>2];F=z[c>>2];A=z[c+4>>2];t=z[c+8>>2];l=z[c+32>>2];h=z[c+64>>2];H=z[c+96>>2];m=z[c+128>>2];p=z[c+160>>2];g=z[c+16>>2];z[e+104>>2]=z[c+88>>2];v[e+96>>2]=k;v[e+100>>2]=L;z[e+92>>2]=N;v[e+84>>2]=f;v[e+88>>2]=r;z[e+80>>2]=n;z[e+76>>2]=I;z[e+72>>2]=g;z[e+68>>2]=q;z[e- -64>>2]=G;z[e+60>>2]=p;z[e+56>>2]=d;z[e+52>>2]=j;z[e+48>>2]=m;z[e+44>>2]=x;z[e+40>>2]=i;z[e+36>>2]=H;z[e+32>>2]=y;z[e+28>>2]=J;z[e+24>>2]=h;z[e+20>>2]=K;z[e+16>>2]=E;z[e+12>>2]=l;z[e+8>>2]=t;z[e+4>>2]=A;z[e>>2]=F;break a}I9(e,0,108)}n=z[s+16>>2];N=z[s+20>>2];P=z[s+28>>2];S=z[s+32>>2];T=z[s+40>>2];M=z[s+44>>2];U=z[s+48>>2];Q=z[s+52>>2];V=z[s+56>>2];W=z[s+60>>2];Z=z[s- -64>>2];ca=z[s+68>>2];da=z[s+76>>2];$=z[e+80>>2];aa=z[s+80>>2];ba=z[e+84>>2];fa=z[s+84>>2];ga=z[e+88>>2];ea=z[s+88>>2];R=z[e+92>>2];la=z[s+92>>2];ma=z[e+96>>2];na=z[s+96>>2];oa=z[e+100>>2];pa=z[s+100>>2];qa=z[e+104>>2];ra=z[s+104>>2];sa=z[s>>2];ta=z[s+4>>2];ua=z[s+8>>2];va=z[s+12>>2];wa=z[s+24>>2];ya=z[s+36>>2];z[e+72>>2]=z[s+72>>2]-g;z[e+36>>2]=ya-H;z[e+24>>2]=wa-h;z[e+12>>2]=va-l;z[e+8>>2]=ua-t;z[e+4>>2]=ta-A;z[e>>2]=sa-F;z[e+104>>2]=ra-qa;z[e+100>>2]=pa-oa;z[e+96>>2]=na-ma;z[e+92>>2]=la-R;z[e+88>>2]=ea-ga;z[e+84>>2]=fa-ba;z[e+80>>2]=aa-$;z[e+76>>2]=da-I;z[e+68>>2]=ca-q;z[e- -64>>2]=Z-G;z[e+60>>2]=W-p;z[e+56>>2]=V-d;z[e+52>>2]=Q-j;z[e+48>>2]=U-m;z[e+44>>2]=M-x;z[e+40>>2]=T-i;z[e+32>>2]=S-y;z[e+28>>2]=P-J;z[e+20>>2]=N-K;z[e+16>>2]=n-E;xa=c+352|0;d=z[D+128>>2];h=z[D+120>>2];g=z[D+124>>2];v[o+40>>2]=0;z[o+32>>2]=g;z[o+28>>2]=h;v[o+24>>2]=0;z[o+12>>2]=d;v[o+8>>2]=0;z[o+36>>2]=-h;z[o+20>>2]=-d;z[o+16>>2]=-g;Ow(o+8|0,e);c=v[b+236>>2]+B(v[ha+24>>2],112)|0;z[c>>2]=z[o+48>>2]+z[c>>2];z[c+4>>2]=z[o+52>>2]+z[c+4>>2];z[c+8>>2]=z[o+56>>2]+z[c+8>>2];z[c+12>>2]=z[o+60>>2]+z[c+12>>2];z[c+16>>2]=z[o+64>>2]+z[c+16>>2];z[c+20>>2]=z[o+68>>2]+z[c+20>>2];z[c+24>>2]=z[o+72>>2]+z[c+24>>2];z[c+28>>2]=z[o+76>>2]+z[c+28>>2];z[c+32>>2]=z[o+80>>2]+z[c+32>>2];z[c+36>>2]=z[o+84>>2]+z[c+36>>2];z[c+40>>2]=z[o+88>>2]+z[c+40>>2];z[c+44>>2]=z[o+92>>2]+z[c+44>>2];z[c+48>>2]=z[o+96>>2]+z[c+48>>2];z[c+52>>2]=z[o+100>>2]+z[c+52>>2];z[c+56>>2]=z[o+104>>2]+z[c+56>>2];z[c+60>>2]=z[o+108>>2]+z[c+60>>2];e=c- -64|0;z[e>>2]=z[o+112>>2]+z[e>>2];z[c+68>>2]=z[o+116>>2]+z[c+68>>2];z[c+72>>2]=z[o+120>>2]+z[c+72>>2];z[c+76>>2]=z[o+124>>2]+z[c+76>>2];z[c+80>>2]=z[o+128>>2]+z[c+80>>2];z[c+84>>2]=z[o+132>>2]+z[c+84>>2];z[c+88>>2]=z[o+136>>2]+z[c+88>>2];z[c+92>>2]=z[o+140>>2]+z[c+92>>2];z[c+96>>2]=z[o+144>>2]+z[c+96>>2];z[c+100>>2]=z[o+148>>2]+z[c+100>>2];z[c+104>>2]=z[o+152>>2]+z[c+104>>2];O=O-1|0;if(O){continue}break}}a=b+412|0;i=C(0);y=C(0);J=C(0);b=v[b+236>>2];ca=C(C(z[b+56>>2]+z[b- -64>>2])*C(.5));p=C(C(z[b+44>>2]+z[b+60>>2])*C(.5));da=C(C(z[b+40>>2]+z[b+48>>2])*C(.5));d=z[b+36>>2];fa=C(C(d+d)*C(.5));d=z[b+68>>2];ga=C(C(d+d)*C(.5));d=z[b+52>>2];H=C(C(d+d)*C(.5));n=z[b+32>>2];q=z[b+28>>2];A=z[b+20>>2];F=z[b+16>>2];I=z[b+24>>2];G=z[b+12>>2];Q=z[b+8>>2];V=z[b+4>>2];W=z[b>>2];N=C(1);P=C(1);K=C(0);S=C(1);T=C(1);d=C(C(z[b+76>>2]+z[b+84>>2])*C(.5));l=C(C(z[b+92>>2]+z[b+100>>2])*C(.5));h=C(C(z[b+80>>2]+z[b+96>>2])*C(.5));g=z[b+88>>2];g=C(C(g+g)*C(.5));E=C(C(d*l)-C(h*g));j=z[b+104>>2];m=C(C(j+j)*C(.5));t=C(C(g*m)-C(l*l));j=z[b+72>>2];j=C(C(j+j)*C(.5));x=C(C(l*h)-C(m*d));M=C(C(E*h)+C(C(t*j)+C(d*x)));if(M!=C(0)){R=C(C(j*g)+C(d*C(-d)));g=C(C(1)/M);T=C(R*g);J=C(C(C(h*d)+C(j*C(-l)))*g);P=C(t*g);K=C(x*g);S=C(C(C(m*j)-C(h*h))*g);y=C(E*g)}E=C(0);M=C(1);t=C(0);U=C(1);g=C(-W);d=C(C(C(g*y)-C(J*G))-C(I*T));h=C(C(C(g*P)-C(K*G))-C(I*y));g=C(C(C(g*K)-C(S*G))-C(I*J));$=C(da+C(C(d*q)+C(C(h*V)+C(F*g))));m=C(-V);l=C(C(C(m*y)-C(J*F))-C(q*T));j=C(C(C(m*P)-C(K*F))-C(q*y));m=C(C(C(m*K)-C(S*F))-C(q*J));aa=C(ca+C(C(l*n)+C(C(j*Q)+C(A*m))));Z=C(p+C(C(d*n)+C(C(h*Q)+C(A*g))));ba=C(H+C(C(l*q)+C(C(j*V)+C(F*m))));ea=C(C($*aa)-C(Z*ba));R=p;x=C(-Q);p=C(C(C(x*y)-C(J*A))-C(n*T));H=C(C(C(x*P)-C(K*A))-C(n*y));x=C(C(C(x*K)-C(S*A))-C(n*J));R=C(R+C(C(p*I)+C(C(H*W)+C(G*x))));A=C(ga+C(C(p*n)+C(C(H*Q)+C(A*x))));n=C(ca+C(C(p*q)+C(C(H*V)+C(F*x))));Q=C(C(ba*A)-C(aa*n));q=C(fa+C(C(d*I)+C(C(h*W)+C(G*g))));F=C(da+C(C(l*I)+C(C(j*W)+C(G*m))));I=C(C(n*Z)-C(A*$));n=C(C(ea*R)+C(C(Q*q)+C(F*I)));if(n!=C(0)){n=C(C(1)/n);U=C(C(C(q*ba)-C($*F))*n);t=C(C(C(Z*F)-C(q*aa))*n);E=C(ea*n);N=C(Q*n);M=C(C(C(A*q)-C(R*Z))*n);i=C(I*n)}z[a+72>>2]=N;z[a+104>>2]=U;z[a+100>>2]=t;z[a+96>>2]=E;z[a+92>>2]=t;z[a+88>>2]=M;z[a+84>>2]=i;z[a+80>>2]=E;z[a+76>>2]=i;n=C(C(U*p)+C(C(E*d)+C(l*t)));z[a+32>>2]=n;q=C(C(U*x)+C(C(E*g)+C(m*t)));z[a+28>>2]=q;A=C(C(U*H)+C(C(E*h)+C(j*t)));z[a+24>>2]=A;F=C(C(t*p)+C(C(i*d)+C(l*M)));z[a+20>>2]=F;I=C(C(t*x)+C(C(i*g)+C(m*M)));z[a+16>>2]=I;t=C(C(t*H)+C(C(i*h)+C(j*M)));z[a+12>>2]=t;G=C(C(E*p)+C(C(N*d)+C(l*i)));z[a+8>>2]=G;M=C(C(E*x)+C(C(N*g)+C(m*i)));z[a+4>>2]=M;i=C(C(E*H)+C(C(N*h)+C(j*i)));z[a>>2]=i;z[a+68>>2]=T+C(C(p*n)+C(C(d*G)+C(l*F)));z[a- -64>>2]=J+C(C(x*n)+C(C(g*G)+C(m*F)));z[a+60>>2]=y+C(C(H*n)+C(C(h*G)+C(j*F)));z[a+56>>2]=J+C(C(p*q)+C(C(d*M)+C(l*I)));z[a+52>>2]=S+C(C(x*q)+C(C(g*M)+C(m*I)));z[a+48>>2]=K+C(C(H*q)+C(C(h*M)+C(j*I)));z[a+44>>2]=y+C(C(p*A)+C(C(d*i)+C(l*t)));z[a+40>>2]=K+C(C(x*A)+C(C(g*i)+C(m*t)));z[a+36>>2]=P+C(C(H*A)+C(C(h*i)+C(j*t)));xa=o+160|0}function bv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=0,ma=C(0),na=0,oa=0;h=xa-8544|0;xa=h;S=v[b+32>>2];f=a;U=z[f+8>>2];p=v[b+8>>2];a=v[b+12>>2];R=z[b+4>>2];v[h+284>>2]=0;v[h+276>>2]=p;v[h+280>>2]=a;z[h+272>>2]=R;Y=b+16|0;N=v[Y>>2];p=v[Y+4>>2];a=v[b+28>>2];v[h+264>>2]=v[b+24>>2];v[h+268>>2]=a;v[h+256>>2]=N;v[h+260>>2]=p;n=z[c>>2];M=z[d+4>>2];G=z[d+12>>2];m=z[c+8>>2];j=z[c+12>>2];O=z[d+8>>2];F=z[d>>2];k=z[c+4>>2];T=C(C(n*M)+C(C(C(G*m)-C(j*O))-C(F*k)));Z=C(C(m*F)+C(C(C(G*k)-C(j*M))-C(O*n)));A=C(Z+Z);i=C(T*A);l=C(C(O*m)+C(C(M*k)+C(C(G*j)+C(F*n))));n=C(C(k*O)+C(C(C(G*n)-C(j*F))-C(M*m)));y=C(n+n);k=C(l*y);s=C(i-k);m=C(T*y);j=C(l*A);P=C(m+j);q=C(k+i);i=C(y*Z);k=l;l=C(T+T);k=C(k*l);o=C(i-k);r=C(m-j);u=C(i+k);k=C(z[c+16>>2]-z[d+16>>2]);k=C(k+k);i=C(z[c+20>>2]-z[d+20>>2]);V=C(i+i);i=C(z[c+24>>2]-z[d+24>>2]);m=C(i+i);j=C(C(C(C(-F)*k)-C(V*M))-C(O*m));i=C(C(G*G)+C(-.5));W=C(C(C(m*i)+C(G*C(C(M*k)-C(F*V))))-C(O*j));X=C(C(C(V*i)+C(G*C(C(F*m)-C(O*k))))-C(M*j));F=C(C(C(k*i)+C(G*C(C(O*V)-C(M*m))))-C(F*j));i=C(C(1)-C(n*y));j=C(Z*A);n=C(i-j);_=i;i=C(T*l);m=C(_-i);l=C(C(C(1)-j)-i);a=S+16|0;p=0;a:{if(R!=C(1)){break a}p=0;if(z[b+8>>2]!=C(1)){break a}p=z[b+12>>2]==C(1)}t[h+384|0]=0;v[h+376>>2]=0;v[h+380>>2]=0;v[h+368>>2]=0;v[h+372>>2]=0;v[h+360>>2]=0;v[h+364>>2]=0;v[h+352>>2]=0;v[h+356>>2]=0;v[h+496>>2]=a;v[h+504>>2]=v[S+56>>2]+B(w[S+55|0],20);t[h+508|0]=w[S+54|0];j=C(R*z[S+68>>2]);i=C(z[S+72>>2]*z[h+276>>2]);j=i>=j?j:i;i=C(z[S+76>>2]*z[h+280>>2]);i=i>=j?j:i;z[h+376>>2]=i*C(.02500000037252903);z[h+368>>2]=i*C(.10000000149011612);z[h+372>>2]=i*C(.05000000074505806);a=h+352|0;FV(h+272|0,h+256|0,h+400|0,h+448|0,a,p);v[h+500>>2]=v[S+60>>2];v[h+236>>2]=0;v[h+240>>2]=0;v[h+220>>2]=0;z[h+168>>2]=W;j=C(U*C(0));i=C(C(n*j)+C(C(r*U)+C(j*q)));z[h+232>>2]=W-i;z[h+164>>2]=X;ea=C(C(s*j)+C(C(u*U)+C(j*m)));z[h+228>>2]=X-ea;z[h+216>>2]=W+i;z[h+212>>2]=X+ea;v[h+184>>2]=0;v[h+188>>2]=4;v[h+172>>2]=0;t[h+192|0]=1;v[h+176>>2]=0;v[h+180>>2]=0;z[h+160>>2]=F;i=C(C(P*j)+C(C(l*U)+C(j*o)));z[h+224>>2]=F-i;z[h+208>>2]=F+i;v[h+320>>2]=141148;v[h+324>>2]=h+160;v[h+304>>2]=141216;v[h+308>>2]=a;v[h+156>>2]=0;z[h+152>>2]=W-z[h+360>>2];z[h+148>>2]=X-z[h+356>>2];z[h+144>>2]=F-z[h+352>>2];v[h+128>>2]=2139095039;if((GV(h+320|0,h+304|0,h+144|0,h+128|0,h+16|0,h+96|0,h+336|0,h+288|0)|0)!=2){q=z[d+8>>2];k=z[h+344>>2];m=C(k+k);o=z[d>>2];k=z[h+336>>2];l=C(k+k);k=z[h+340>>2];j=C(k+k);r=z[d+4>>2];i=C(C(q*m)+C(C(o*l)+C(j*r)));u=z[d+12>>2];n=C(C(u*u)+C(-.5));V=C(C(q*i)+C(C(m*n)+C(u*C(C(o*j)-C(l*r)))));k=C(C(r*i)+C(C(j*n)+C(u*C(C(q*l)-C(m*o)))));ea=C(C(o*i)+C(C(l*n)+C(u*C(C(r*m)-C(j*q)))));i=z[h+104>>2];m=C(i+i);i=z[h+96>>2];l=C(i+i);i=z[h+100>>2];j=C(i+i);i=C(C(q*m)+C(C(o*l)+C(j*r)));ia=C(z[d+24>>2]+C(C(q*i)+C(C(m*n)+C(u*C(C(o*j)-C(l*r))))));ja=C(z[d+20>>2]+C(C(r*i)+C(C(j*n)+C(u*C(C(q*l)-C(m*o))))));ca=z[h+288>>2];ka=C(z[d+16>>2]+C(C(o*i)+C(C(l*n)+C(u*C(C(r*m)-C(j*q))))))}a=0;b:{if(C(z[f+4>>2]+z[e>>2])<=ca){break b}s=z[c+16>>2];P=z[c+20>>2];m=z[c+24>>2];q=z[c>>2];o=C(q+q);l=z[c+8>>2];i=z[c+4>>2];r=z[c+12>>2];u=C(r+r);n=z[f+8>>2];j=C(C(C(o*l)-C(i*u))*n);Q=C(m-j);z[h+116>>2]=Q;i=C(n*C(C(l*u)+C(o*i)));y=C(P-i);z[h+112>>2]=y;H=C(j+m);z[h+104>>2]=H;I=C(P+i);z[h+100>>2]=I;i=C(n*C(C(q*o)+C(C(r*u)+C(-1))));A=C(s-i);z[h+108>>2]=A;J=C(s+i);z[h+96>>2]=J;c=2;c:{if(A!=J){a=0;break c}a=0;if(y!=I){break c}a=H==Q;c=a?1:2}S=b+4|0;v[h+224>>2]=0;v[h+228>>2]=1065353216;v[h+216>>2]=0;v[h+220>>2]=0;v[h+208>>2]=0;v[h+212>>2]=1065353216;v[h+200>>2]=0;v[h+204>>2]=0;v[h+192>>2]=1065353216;v[h+196>>2]=1065353216;v[h+176>>2]=1065353216;v[h+180>>2]=0;t[h+232|0]=0;v[h+184>>2]=0;v[h+188>>2]=0;v[h+168>>2]=0;v[h+172>>2]=0;v[h+160>>2]=1065353216;v[h+164>>2]=0;if(!(!(z[b+4>>2]!=C(1)|z[b+8>>2]!=C(1))&z[b+12>>2]==C(1))){IX(h+160|0,S,Y)}u_(h+16|0,v[b+40>>2],h+160|0);d:{e:{if(ca>C(0)){fa=C(-V);z[h+8>>2]=fa;ga=C(-k);z[h+4>>2]=ga;ha=C(-ea);z[h>>2]=ha;jZ(g,d,h+16|0,S,c,h+96|0,z[f+4>>2],h,z[e>>2]);b=v[g+4096>>2];if((b|0)==2){break e}if(!(a&1)){o=z[e>>2];$=z[f+4>>2];aa=z[d+24>>2];ba=z[d+20>>2];G=z[d+16>>2];j=z[d>>2];P=C(j+j);s=z[d+8>>2];r=C(P*s);l=z[d+4>>2];i=C(l+l);q=z[d+12>>2];u=C(i*q);ma=C(r+u);n=C(C(1)-C(j*P));m=C(l*i);M=C(n-m);j=C(i*s);i=C(P*q);O=C(j-i);z[h+344>>2]=C(M*fa)+C(C(ma*ha)+C(O*ga));U=C(j+i);l=C(P*l);i=C(s+s);j=C(q*i);T=C(l-j);i=C(s*i);W=C(n-i);z[h+340>>2]=C(U*fa)+C(C(T*ha)+C(W*ga));X=C(r-u);F=C(C(C(1)-m)-i);R=C(l+j);z[h+336>>2]=C(X*fa)+C(C(F*ha)+C(R*ga));d=Ba[v[h+84>>2]](h+16|0,h+160|0,h+336|0)|0;z[h+296>>2]=H;z[h+288>>2]=J;z[h+292>>2]=I;z[h+276>>2]=y;z[h+272>>2]=A;z[h+280>>2]=Q;L=C(Q-H);E=C(A-J);s=C(y-I);i=C(K(C(C(L*L)+C(C(E*E)+C(s*s)))));if(i>C(0)){l=C(C(.009999999776482582)/i);i=C(L*l);H=C(H-i);z[h+296>>2]=H;j=C(s*l);I=C(I-j);z[h+292>>2]=I;l=C(E*l);J=C(J-l);z[h+288>>2]=J;i=C(Q+i);z[h+280>>2]=i;L=C(i-H);j=C(y+j);z[h+276>>2]=j;i=C(A+l);z[h+272>>2]=i;E=C(i-J);s=C(j-I)}z[h+260>>2]=s;z[h+256>>2]=E;z[h+264>>2]=L;m=C(C(E*ga)+C(ea*s));z[h+360>>2]=-m;j=C(C(L*ha)+C(V*E));z[h+356>>2]=-j;l=C(C(s*fa)+C(k*L));i=C(-l);z[h+352>>2]=i;z[h+364>>2]=-C(C(C(i*J)-C(I*j))-C(m*H));j=C(D(j));i=C(D(l));m=C(D(m));f:{g:{if(!(!(j>i)|!(j>m))){b=0;c=2;break g}a=2;c=0;b=1;if(!(i>2]+B(d,20)|0;d=w[N+18|0];if(d){p=a<<2;c=h+256|0;b=e<<2;s=C(C(1)/C(C(z[p+c>>2]*z[b+h>>2])-C(z[h+p>>2]*z[b+c>>2])));N=v[h+48>>2]+x[N+16>>1]|0;p=v[h+44>>2];P=C($+o);c=d-1|0;b=0;while(1){c=p+B(w[c+N|0],12)|0;l=z[c>>2];q=z[h+160>>2];j=z[c+4>>2];o=z[h+172>>2];i=z[c+8>>2];r=z[h+184>>2];Z=C(C(C(l*q)+C(j*o))+C(i*r));u=z[h+164>>2];n=z[h+176>>2];m=z[h+188>>2];y=C(C(C(l*u)+C(j*n))+C(i*m));E=l;l=z[h+168>>2];Q=j;j=z[h+180>>2];_=i;i=z[h+192>>2];A=C(C(C(E*l)+C(Q*j))+C(_*i));z[h+152>>2]=aa+C(C(C(X*Z)+C(U*y))+C(M*A));z[h+148>>2]=ba+C(C(C(R*Z)+C(W*y))+C(O*A));z[h+144>>2]=G+C(C(C(F*Z)+C(T*y))+C(ma*A));c=b;b=p+B(w[N+b|0],12)|0;y=z[b>>2];A=z[b+4>>2];_=i;i=z[b+8>>2];l=C(C(C(l*y)+C(j*A))+C(_*i));j=C(C(C(q*y)+C(o*A))+C(r*i));i=C(C(C(u*y)+C(n*A))+C(m*i));z[h+136>>2]=aa+C(C(M*l)+C(C(X*j)+C(U*i)));z[h+132>>2]=ba+C(C(O*l)+C(C(R*j)+C(W*i)));z[h+128>>2]=G+C(C(ma*l)+C(C(F*j)+C(T*i)));z[h+312>>2]=V;z[h+308>>2]=k;z[h+304>>2]=ea;d=d-1|0;h:{if(!kZ(h+288|0,h+272|0,h+256|0,h+352|0,e,a,s,h+304|0,h+144|0,h+128|0,h+316|0,h+320|0,C(0))){break h}m=z[h+316>>2];if(!(m>2];if(b>>>0>63){break h}l=z[h+324>>2];j=z[h+328>>2];i=z[h+320>>2];v[g+4096>>2]=b+1;b=(b<<6)+g|0;z[b+16>>2]=i+C(ea*m);z[b+8>>2]=fa;z[b+4>>2]=ga;z[b>>2]=ha;v[b+52>>2]=-1;z[b+12>>2]=m-$;z[b+24>>2]=j+C(V*m);z[b+20>>2]=l+C(k*m)}b=c+1|0;if(d){continue}break}}b=v[g+4096>>2]}if(b){break e}i=z[f+4>>2];v[g+4096>>2]=1;z[g>>2]=z[h>>2];k=z[h+4>>2];z[g+24>>2]=ia;z[g+20>>2]=ja;z[g+16>>2]=ka;z[g+8>>2]=fa;z[g+4>>2]=k;v[g+52>>2]=-1;z[g+12>>2]=ca-i;a=1;break b}P=z[f+4>>2];Y=v[h+32>>2];N=v[h+40>>2];q=z[d+4>>2];r=C(q+q);l=z[d+8>>2];i=C(r*l);j=z[d>>2];o=C(j+j);u=z[d+12>>2];k=C(o*u);z[h+380>>2]=i-k;z[h+372>>2]=i+k;k=C(C(1)-C(j*o));n=C(q*r);z[h+384>>2]=k-n;i=k;k=C(l+l);m=C(l*k);z[h+368>>2]=i-m;l=C(o*l);j=C(r*u);z[h+376>>2]=l+j;i=C(o*q);k=C(k*u);z[h+364>>2]=i-k;z[h+360>>2]=l-j;z[h+356>>2]=i+k;z[h+352>>2]=C(C(1)-n)-m;z[h+388>>2]=z[d+16>>2];z[h+392>>2]=z[d+20>>2];z[h+396>>2]=z[d+24>>2];i:{if(!Y){k=C(34028234663852886e22);ca=C(0);break i}b=0;k=C(34028234663852886e22);ca=C(0);while(1){p=N+B(b,20)|0;n=z[p>>2];m=z[p+4>>2];i=z[p+8>>2];l=C(C(C(n*z[h+360>>2])+C(m*z[h+372>>2]))+C(i*z[h+384>>2]));z[h+344>>2]=l;j=C(C(C(n*z[h+352>>2])+C(m*z[h+364>>2]))+C(i*z[h+376>>2]));z[h+336>>2]=j;i=C(C(C(n*z[h+356>>2])+C(m*z[h+368>>2]))+C(i*z[h+380>>2]));z[h+340>>2]=i;Ba[v[h+80>>2]](h+16|0,h+336|0,h+352|0,h+160|0,h+288|0,h+272|0);n=C(C(H*l)+C(C(J*j)+C(I*i)));i=C(C(Q*l)+C(C(A*j)+C(y*i)));p=n>i;m=C(P+(p?n:i));j=z[h+288>>2];if(m>2];i=C((p?i:n)-P);if(lj?j:i;if(i>2];ca=z[h+340>>2];L=z[h+336>>2];k=i}b=b+1|0;if((Y|0)!=(b|0)){continue}break}}j:{if(a&1){break j}ia=C(0);ja=C(0);ka=C(0);m=C(Q-H);l=C(A-J);j=C(y-I);i=C(C(m*m)+C(C(l*l)+C(j*j)));if(i>C(0)){i=C(C(1)/C(K(i)));ka=C(m*i);ia=C(l*i);ja=C(j*i)}if(!Y){break j}r=C(-ja);u=C(-ia);n=C(-ka);b=0;while(1){p=N+B(b,20)|0;o=z[p>>2];m=z[p+4>>2];l=z[p+8>>2];j=C(C(C(o*z[h+356>>2])+C(m*z[h+368>>2]))+C(l*z[h+380>>2]));i=C(C(C(o*z[h+352>>2])+C(m*z[h+364>>2]))+C(l*z[h+376>>2]));q=C(C(ia*j)+C(i*r));_=C(ka*i);i=C(C(C(o*z[h+360>>2])+C(m*z[h+372>>2]))+C(l*z[h+384>>2]));m=C(_+C(i*u));j=C(C(ja*i)+C(j*n));k:{if(!(C(D(q))>C(9.999999974752427e-7)?1:C(D(j))>C(9.999999974752427e-7)|C(D(m))>C(9.999999974752427e-7))){break k}s=C(0);l=C(0);V=C(0);i=C(C(q*q)+C(C(j*j)+C(m*m)));if(i>C(0)){i=C(C(1)/C(K(i)));V=C(q*i);s=C(j*i);l=C(m*i)}z[h+344>>2]=V;z[h+336>>2]=s;z[h+340>>2]=l;Ba[v[h+80>>2]](h+16|0,h+336|0,h+352|0,h+160|0,h+288|0,h+272|0);o=C(C(H*V)+C(C(J*s)+C(I*l)));i=C(C(Q*V)+C(C(A*s)+C(y*l)));p=o>i;m=C(P+(p?o:i));j=z[h+288>>2];if(m>2];i=C((p?i:o)-P);if(lj?j:i;if(!(i>2];ca=z[h+340>>2];L=z[h+336>>2];k=i}b=b+1|0;if((Y|0)!=(b|0)){continue}break}}r=z[d+8>>2];k=z[h+24>>2];u=C(k+k);n=z[d>>2];k=z[h+16>>2];m=C(k+k);k=z[h+20>>2];l=C(k+k);j=z[d+4>>2];i=C(C(r*u)+C(C(n*m)+C(l*j)));o=z[d+12>>2];k=C(C(o*o)+C(-.5));b=C(C(E*C(C(C(H+Q)*C(.5))-C(z[d+24>>2]+C(C(r*i)+C(C(u*k)+C(o*C(C(n*l)-C(m*j))))))))+C(C(L*C(C(C(J+A)*C(.5))-C(z[d+16>>2]+C(C(n*i)+C(C(m*k)+C(o*C(C(j*u)-C(l*r))))))))+C(ca*C(C(C(I+y)*C(.5))-C(z[d+20>>2]+C(C(j*i)+C(C(l*k)+C(C(C(r*m)-C(u*n))*o))))))))>2]=O;U=b?C(-ca):ca;z[h+308>>2]=U;T=b?C(-L):L;z[h+304>>2]=T;jZ(g,d,h+16|0,S,c,h+96|0,z[f+4>>2],h+304|0,z[e>>2]);if((v[g+4096>>2]==2|a)&1){break e}l=z[e>>2];Z=z[f+4>>2];oa=h+352|0;c=v[h+40>>2];N=v[h+48>>2];e=0;la=v[h+32>>2];l:{if(la){while(1){f=w[c+18|0];if(f){p=x[c+16>>1]+N|0;a=w[(p+f|0)-1|0];na=0;while(1){b=a;a=w[p+na|0];S=a>>>0>b>>>0?a:b;Y=a>>>0>>0?a:b;b=0;m:{if(e){while(1){da=oa+(b<<4)|0;if(!(w[da|0]!=(Y|0)|w[da+1|0]!=(S|0))){z[da+4>>2]=z[c>>2]+z[da+4>>2];z[da+8>>2]=z[c+4>>2]+z[da+8>>2];z[da+12>>2]=z[c+8>>2]+z[da+12>>2];break m}b=b+1|0;if((b|0)!=(e|0)){continue}break}}b=512;if((e|0)==512){break l}b=oa+(e<<4)|0;t[b+1|0]=S;t[b|0]=Y;z[b+4>>2]=z[c>>2];z[b+8>>2]=z[c+4>>2];z[b+12>>2]=z[c+8>>2];e=e+1|0}na=na+1|0;f=f-1|0;if(f){continue}break}}c=c+20|0;la=la-1|0;if(la){continue}break}}b=e}e=b;z[h+296>>2]=H;z[h+288>>2]=J;z[h+292>>2]=I;z[h+276>>2]=y;z[h+272>>2]=A;z[h+280>>2]=Q;L=C(Q-H);E=C(A-J);s=C(y-I);k=C(K(C(C(L*L)+C(C(E*E)+C(s*s)))));if(k>C(0)){j=C(C(.009999999776482582)/k);k=C(L*j);H=C(H-k);z[h+296>>2]=H;i=C(s*j);I=C(I-i);z[h+292>>2]=I;j=C(E*j);J=C(J-j);z[h+288>>2]=J;k=C(Q+k);z[h+280>>2]=k;L=C(k-H);i=C(y+i);z[h+276>>2]=i;k=C(A+j);z[h+272>>2]=k;E=C(k-J);s=C(i-I)}z[h+256>>2]=E;z[h+264>>2]=L;z[h+260>>2]=s;i=C(C(L*T)-C(O*E));z[h+340>>2]=i;m=C(C(s*O)-C(U*L));z[h+336>>2]=m;k=C(C(E*U)-C(T*s));z[h+344>>2]=k;z[h+348>>2]=-C(C(k*H)+C(C(m*J)+C(I*i)));j=C(D(k));i=C(D(i));k=C(D(m));n:{o:{if(!(!(i>k)|!(i>j))){b=0;c=2;break o}a=2;c=0;b=1;if(!(j>k)){break n}}a=b;b=c}if(!e){break e}N=b<<2;p=h+256|0;f=a<<2;c=h+304|0;s=C(C(1)/C(C(z[N+p>>2]*z[f+c>>2])-C(z[c+N>>2]*z[f+p>>2])));N=v[h+44>>2];P=C(C(-Z)-l);c=0;while(1){p=(h+352|0)+(c<<4)|0;f=w[p+1|0];y=z[d+16>>2];A=z[d+20>>2];$=z[d+8>>2];p=N+B(w[p|0],12)|0;l=z[p>>2];q=z[h+168>>2];j=z[p+4>>2];o=z[h+180>>2];i=z[p+8>>2];r=z[h+192>>2];k=C(C(C(l*q)+C(j*o))+C(i*r));W=C(k+k);aa=z[d>>2];u=z[h+160>>2];n=z[h+172>>2];m=z[h+184>>2];k=C(C(C(l*u)+C(j*n))+C(i*m));X=C(k+k);Q=l;l=z[h+164>>2];_=j;j=z[h+176>>2];k=i;i=z[h+188>>2];k=C(C(C(Q*l)+C(_*j))+C(k*i));F=C(k+k);ba=z[d+4>>2];R=C(C($*W)+C(C(aa*X)+C(F*ba)));G=z[d+12>>2];M=C(C(G*G)+C(-.5));k=z[d+24>>2];z[h+152>>2]=C(C($*R)+C(C(W*M)+C(G*C(C(aa*F)-C(X*ba)))))+k;z[h+148>>2]=A+C(C(ba*R)+C(C(F*M)+C(G*C(C($*X)-C(W*aa)))));z[h+144>>2]=y+C(C(aa*R)+C(C(X*M)+C(G*C(C(ba*W)-C(F*$)))));E=k;Q=q;f=N+B(f,12)|0;q=z[f>>2];_=o;o=z[f+4>>2];k=r;r=z[f+8>>2];k=C(C(C(Q*q)+C(_*o))+C(k*r));R=C(k+k);k=C(C(C(u*q)+C(n*o))+C(m*r));m=C(k+k);k=C(C(C(l*q)+C(j*o))+C(i*r));i=C(k+k);k=C(C($*R)+C(C(aa*m)+C(ba*i)));z[h+136>>2]=E+C(C($*k)+C(C(R*M)+C(G*C(C(aa*i)-C(m*ba)))));z[h+132>>2]=A+C(C(ba*k)+C(C(i*M)+C(G*C(C($*m)-C(R*aa)))));z[h+128>>2]=y+C(C(aa*k)+C(C(m*M)+C(G*C(C(ba*R)-C(i*$)))));p:{if(!kZ(h+288|0,h+272|0,h+256|0,h+336|0,b,a,s,h+304|0,h+144|0,h+128|0,h,h+320|0,P)){break p}f=v[g+4096>>2];if(f>>>0>63){break p}j=z[h+324>>2];i=z[h+328>>2];k=z[h+320>>2];l=z[h>>2];v[g+4096>>2]=f+1;f=(f<<6)+g|0;z[f+16>>2]=k-C(T*l);z[f+8>>2]=O;z[f+4>>2]=U;z[f>>2]=T;v[f+52>>2]=-1;z[f+12>>2]=-C(Z+l);z[f+24>>2]=i-C(O*l);z[f+20>>2]=j-C(U*l)}c=c+1|0;if((e|0)!=(c|0)){continue}break}}a=1;break b}a=0}xa=h+8544|0;return a|0}function rM(a,b,c){var d=0,e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=0,u=0,y=0,A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=0,Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=0,ob=C(0),pb=0,qb=0,rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=0,Gb=0,Hb=0,Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=0,qc=C(0),rc=C(0),sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=C(0),Ac=C(0),Bc=C(0),Cc=0,Dc=0,Ec=C(0),Fc=C(0),Gc=C(0),Hc=C(0),Ic=C(0),Jc=C(0),Kc=C(0),Lc=C(0),Mc=C(0),Nc=C(0),Oc=C(0),Pc=0,Qc=C(0),Rc=C(0),Sc=C(0),Tc=C(0),Uc=0,Vc=C(0),Wc=C(0),Xc=C(0),Yc=C(0),Zc=C(0),_c=C(0),$c=C(0),ad=C(0),bd=C(0);o=v[a+100>>2];Tb=z[o+32>>2];p=v[a+96>>2];Ub=z[p+40>>2];Vb=z[p+36>>2];q=v[a+68>>2];Wb=z[q+32>>2];r=v[a+64>>2];Xb=z[r+40>>2];Yb=z[r+36>>2];s=v[a+36>>2];Zb=z[s+32>>2];u=v[a+32>>2];_b=z[u+40>>2];$b=z[u+36>>2];y=v[a+4>>2];ac=z[y+40>>2];bc=z[y+36>>2];A=v[a>>2];cc=z[A+40>>2];dc=z[A+36>>2];Ja=z[o+16>>2];Ka=z[p+24>>2];qa=z[p+20>>2];La=z[o+8>>2];ra=z[o+4>>2];Ma=z[o>>2];Na=z[q+16>>2];Oa=z[r+24>>2];sa=z[r+20>>2];Pa=z[q+8>>2];ta=z[q+4>>2];Qa=z[q>>2];Ra=z[s+16>>2];Sa=z[u+24>>2];ua=z[u+20>>2];Ta=z[s+8>>2];va=z[s+4>>2];Ua=z[s>>2];Va=z[y+24>>2];wa=z[y+20>>2];Wa=z[A+24>>2];ya=z[A+20>>2];ec=z[o+40>>2];fc=z[o+36>>2];gc=z[q+40>>2];hc=z[q+36>>2];ic=z[s+40>>2];jc=z[s+36>>2];Xa=z[o+24>>2];za=z[o+20>>2];Ya=z[q+24>>2];Aa=z[q+20>>2];Za=z[s+24>>2];Ba=z[s+20>>2];G=z[s+48>>2];R=z[q+48>>2];H=z[o+48>>2];I=z[u+52>>2];S=z[s+52>>2];J=z[r+52>>2];K=z[q+52>>2];T=z[p+52>>2];L=z[o+52>>2];U=z[u+56>>2];V=z[s+56>>2];h=z[r+56>>2];i=z[q+56>>2];j=z[p+56>>2];k=z[o+56>>2];l=z[y+52>>2];fa=z[A+52>>2];ga=z[y+56>>2];ha=z[A+56>>2];kc=z[p+32>>2];lc=z[r+32>>2];mc=z[u+32>>2];nc=z[y+32>>2];oc=z[A+32>>2];_a=z[p+16>>2];$a=z[p+8>>2];Ca=z[p+4>>2];ab=z[p>>2];bb=z[r+16>>2];cb=z[r+8>>2];Da=z[r+4>>2];db=z[r>>2];eb=z[u+16>>2];fb=z[u+8>>2];Ea=z[u+4>>2];gb=z[u>>2];hb=z[y+16>>2];ib=z[A+16>>2];jb=z[y+8>>2];Fa=z[y+4>>2];kb=z[y>>2];lb=z[A+8>>2];Ga=z[A+4>>2];mb=z[A>>2];ia=z[u+48>>2];Z=z[r+48>>2];_=z[p+48>>2];d=x[a+22>>1];$=z[y+48>>2];aa=z[A+48>>2];e=v[a+24>>2];pc=xa-16|0;f=pc;v[f+8>>2]=2139095039;v[f+12>>2]=2139095039;v[f>>2]=2139095039;v[f+4>>2]=2139095039;if(d){qc=C(ha-ga);rc=C(fa-l);sc=C(j-k);tc=C(h-i);uc=C(U-V);vc=C(T-L);wc=C(J-K);xc=C(I-S);Lb=z[e+76>>2];Mb=z[e+92>>2];Mc=C(Lb+Mb);Nb=z[e+72>>2];Ob=z[e+88>>2];Nc=C(Nb+Ob);Pb=z[e+68>>2];Qb=z[e+84>>2];Oc=C(Pb+Qb);yc=C(aa-$);Pc=(d<<4)+e|0;zc=C(_-H);Ac=C(Z-R);Bc=C(ia-G);Rb=z[e+64>>2];Sb=z[e+80>>2];Qc=C(Rb+Sb);Fb=e+400|0;while(1){pb=e+240|0;W=w[e+1|0];d=W<<4;qb=pb+d|0;f=e;nb=t[e+3|0]&1;e=qb+B(W,160)|0;Cc=(d&0-nb)+e|0;Gb=w[f+2|0];Dc=Cc+(Gb<<4)|0;Hb=B(Gb,208);G=z[f+144>>2];R=z[f+128>>2];H=z[f+160>>2];I=z[f+156>>2];S=z[f+140>>2];J=z[f+172>>2];K=z[f+152>>2];T=z[f+136>>2];L=z[f+168>>2];U=z[f+148>>2];V=z[f+132>>2];h=z[f+164>>2];Ec=z[f+124>>2];Fc=z[f+120>>2];Gc=z[f+116>>2];Hc=z[f+108>>2];Ic=z[f+104>>2];Jc=z[f+100>>2];Kc=z[f+112>>2];Lc=z[f+96>>2];a:{if(!W){i=C(0);j=C(0);k=C(0);l=C(0);fa=C(0);ga=C(0);ha=C(0);ia=C(0);break a}ob=C(C(C(yc*R)+C(rc*G))+C(qc*H));Rc=C(C(C(zc*S)+C(vc*I))+C(sc*J));Sc=C(C(C(Ac*T)+C(wc*K))+C(tc*L));Tc=C(C(C(Bc*V)+C(xc*U))+C(uc*h));Uc=nb?e:pc;Z=C(C(C(C(mb*R)+C(Ga*G))+C(lb*H))-C(C(C(kb*R)+C(Fa*G))+C(jb*H)));_=C(C(C(C(gb*V)+C(Ea*U))+C(fb*h))-C(C(C(Ua*V)+C(va*U))+C(Ta*h)));$=C(C(C(C(db*T)+C(Da*K))+C(cb*L))-C(C(C(Qa*T)+C(ta*K))+C(Pa*L)));aa=C(C(C(C(ab*S)+C(Ca*I))+C($a*J))-C(C(C(Ma*S)+C(ra*I))+C(La*J)));Ab=C(-z[f+188>>2]);Bb=C(-z[f+184>>2]);Ib=C(-z[f+180>>2]);Jb=C(-z[f+176>>2]);ia=C(0);ba=0;ha=C(0);ga=C(0);fa=C(0);l=C(0);k=C(0);j=C(0);i=C(0);while(1){Ha=((nb?ba:0)<<4)+Uc|0;P=z[Ha>>2];ca=z[Ha+4>>2];Ia=z[Ha+8>>2];d=pb+(ba<<4)|0;D=z[d>>2];e=qb+B(ba,160)|0;Vc=z[e+112>>2];Wc=z[e+144>>2];Xc=z[e+96>>2];g=z[e+128>>2];M=z[e+80>>2];ja=z[e- -64>>2];ka=z[e+48>>2];X=z[e+32>>2];la=z[e>>2];ma=z[e+16>>2];E=z[d+4>>2];Yc=z[e+116>>2];Zc=z[e+148>>2];_c=z[e+100>>2];m=z[e+132>>2];na=z[e+36>>2];N=z[e+20>>2];oa=z[e+4>>2];Q=z[e+84>>2];rb=z[e+52>>2];sb=z[e+68>>2];O=z[d+8>>2];$c=z[e+120>>2];ad=z[e+152>>2];bd=z[e+104>>2];n=z[e+136>>2];tb=z[e+40>>2];ub=z[e+24>>2];da=z[e+8>>2];pa=z[e+88>>2];vb=z[e+56>>2];wb=z[e+72>>2];Cb=z[e+12>>2];Db=z[e+28>>2];Eb=z[e+44>>2];xb=z[e+60>>2];ea=z[e+76>>2];yb=z[e+92>>2];Kb=z[e+140>>2];F=C(C(C(Rc+C(C(C(C(kc*Cb)+C(Vb*Db))+C(Ub*Eb))-C(C(C(Tb*xb)+C(fc*ea))+C(ec*yb))))-C(Kb*c))+z[e+108>>2]);F=C(z[e+156>>2]*(b>F?b:F));zb=z[d+12>>2];Y=C(-zb);F=C(z[e+124>>2]*C(C(Kb+(F>Ab?Ab:F))-C(aa+C(C(C(C(_a*Cb)+C(qa*Db))+C(Ka*Eb))-C(C(C(Ja*xb)+C(za*ea))+C(Xa*yb))))));F=C(zb+(F>Y?F:Y));Y=z[Ha+12>>2];F=F>2]=F;Y=n;n=C(bd+C(C(Sc+C(C(C(C(lc*da)+C(Yb*ub))+C(Xb*tb))-C(C(C(Wb*vb)+C(hc*wb))+C(gc*pa))))-C(n*c)));n=C(ad*(b>n?b:n));n=C($c*C(C(Y+(n>Bb?Bb:n))-C($+C(C(C(C(bb*da)+C(sa*ub))+C(Oa*tb))-C(C(C(Na*vb)+C(Aa*wb))+C(Ya*pa))))));Y=C(-O);n=C(O+(n>Y?n:Y));Ia=n>2]=Ia;n=m;m=C(_c+C(C(Tc+C(C(C(C(mc*oa)+C($b*N))+C(_b*na))-C(C(C(Zb*rb)+C(jc*sb))+C(ic*Q))))-C(m*c)));m=C(Zc*(b>m?b:m));m=C(Yc*C(C(n+(m>Ib?Ib:m))-C(_+C(C(C(C(eb*oa)+C(ua*N))+C(Sa*na))-C(C(C(Ra*rb)+C(Ba*sb))+C(Za*Q))))));n=C(-E);m=C(E+(m>n?m:n));ca=m>2]=ca;m=g;g=C(Xc+C(C(ob+C(C(C(C(oc*la)+C(dc*ma))+C(cc*X))-C(C(C(nc*ka)+C(bc*ja))+C(ac*M))))-C(g*c)));g=C(Wc*(b>g?b:g));g=C(Vc*C(C(m+(g>Jb?Jb:g))-C(Z+C(C(C(C(ib*la)+C(ya*ma))+C(Wa*X))-C(C(C(hb*ka)+C(wa*ja))+C(Va*M))))));m=C(-D);g=C(D+(g>m?g:m));g=g>2]=g;ia=C(ia+F);ha=C(ha+Ia);ga=C(ga+ca);fa=C(fa+g);P=C(F-zb);l=C(l+P);O=C(Ia-O);k=C(k+O);E=C(ca-E);j=C(j+E);D=C(g-D);i=C(i+D);aa=C(aa+C(Mc*P));$=C($+C(Nc*O));_=C(_+C(Oc*E));Z=C(Z+C(Qc*D));ca=C(Ec*P);Xa=C(Xa-C(yb*ca));g=pa;pa=C(Fc*O);Ya=C(Ya-C(g*pa));g=Q;Q=C(Gc*E);Za=C(Za-C(g*Q));g=M;M=C(Kc*D);Va=C(Va-C(g*M));P=C(Hc*P);Ka=C(Ka+C(Eb*P));O=C(Ic*O);Oa=C(Oa+C(tb*O));E=C(Jc*E);Sa=C(Sa+C(na*E));D=C(Lc*D);Wa=C(Wa+C(X*D));za=C(za-C(ea*ca));Aa=C(Aa-C(wb*pa));Ba=C(Ba-C(sb*Q));wa=C(wa-C(ja*M));qa=C(qa+C(Db*P));sa=C(sa+C(ub*O));ua=C(ua+C(N*E));ya=C(ya+C(ma*D));Ja=C(Ja-C(xb*ca));Na=C(Na-C(vb*pa));Ra=C(Ra-C(rb*Q));hb=C(hb-C(ka*M));_a=C(_a+C(Cb*P));bb=C(bb+C(da*O));eb=C(eb+C(oa*E));ib=C(ib+C(la*D));Fb=Fb+192|0;ba=ba+1|0;if((W|0)!=(ba|0)){continue}break}}e=Hb+Dc|0;Z=C(Mb*l);La=C(La-C(J*Z));_=C(Ob*k);Pa=C(Pa-C(L*_));$=C(Qb*j);Ta=C(Ta-C(h*$));aa=C(Sb*i);jb=C(jb-C(H*aa));g=J;J=C(Lb*l);$a=C($a+C(g*J));g=L;L=C(Nb*k);cb=C(cb+C(g*L));g=h;h=C(Pb*j);fb=C(fb+C(g*h));g=H;H=C(Rb*i);lb=C(lb+C(g*H));ra=C(ra-C(I*Z));ta=C(ta-C(K*_));va=C(va-C(U*$));Fa=C(Fa-C(G*aa));Ca=C(Ca+C(I*J));Da=C(Da+C(K*L));Ea=C(Ea+C(U*h));Ga=C(Ga+C(G*H));Ma=C(Ma-C(S*Z));Qa=C(Qa-C(T*_));Ua=C(Ua-C(V*$));kb=C(kb-C(R*aa));ab=C(ab+C(S*J));db=C(db+C(T*L));gb=C(gb+C(V*h));mb=C(mb+C(R*H));if(Gb){Ib=C(fa*z[f+32>>2]);Jb=C(ia*z[f+44>>2]);ca=C(ha*z[f+40>>2]);Ia=C(ga*z[f+36>>2]);fa=C(fa*z[f+48>>2]);Z=C(-fa);ia=C(ia*z[f+60>>2]);_=C(-ia);ha=C(ha*z[f+56>>2]);$=C(-ha);ga=C(ga*z[f+52>>2]);aa=C(-ga);ba=0;Ha=0;qb=0;nb=0;pb=0;while(1){W=(ba<<4)+Cc|0;D=z[W>>2];d=B(ba,208)+Dc|0;g=z[d+192>>2];m=z[d+144>>2];l=z[d+176>>2];M=z[d+160>>2];ja=z[d+80>>2];Hb=d- -64|0;ka=z[Hb>>2];X=z[d+48>>2];la=z[d+128>>2];ma=z[d+112>>2];E=z[d+96>>2];G=z[d+32>>2];R=z[d>>2];H=z[d+16>>2];na=z[W+4>>2];n=z[d+196>>2];Cb=z[d+148>>2];k=z[d+180>>2];N=z[d+164>>2];oa=z[d+84>>2];Q=z[d+52>>2];rb=z[d+68>>2];I=z[d+36>>2];S=z[d+20>>2];J=z[d+4>>2];sb=z[d+132>>2];O=z[d+100>>2];tb=z[d+116>>2];ub=z[W+8>>2];Db=z[d+200>>2];Eb=z[d+152>>2];j=z[d+184>>2];da=z[d+168>>2];pa=z[d+88>>2];vb=z[d+56>>2];wb=z[d+72>>2];K=z[d+40>>2];T=z[d+24>>2];L=z[d+8>>2];P=z[d+136>>2];Ab=z[d+104>>2];Bb=z[d+120>>2];xb=z[W+12>>2];U=z[d+12>>2];V=z[d+28>>2];h=z[d+44>>2];i=z[d+60>>2];ea=z[d+76>>2];yb=z[d+92>>2];F=z[d+108>>2];zb=z[d+124>>2];Y=z[d+140>>2];ob=z[d+188>>2];Kb=C(C(C(C(C(C(C(C(zc*U)+C(vc*V))+C(sc*h))+C(C(C(C(kc*i)+C(Vb*ea))+C(Ub*yb))-C(C(C(Tb*F)+C(fc*zb))+C(ec*Y))))-C(ob*c))+z[d+156>>2])*z[d+204>>2])-ob);ob=z[d+172>>2];i=C(C(xb-C(Kb*ob))-C(C(C(C(C(C(ab*U)+C(Ca*V))+C($a*h))+C(C(C(_a*i)+C(qa*ea))+C(Ka*yb)))-C(C(C(C(Ma*U)+C(ra*V))+C(La*h))+C(C(C(Ja*F)+C(za*zb))+C(Xa*Y))))*ob));ea=i<_?_:i;ea=ia>2]=ea;j=C(C(ub-C(da*C(C(Db*C(Eb+C(C(C(C(C(Ac*L)+C(wc*T))+C(tc*K))+C(C(C(C(lc*vb)+C(Yb*wb))+C(Xb*pa))-C(C(C(Wb*Ab)+C(hc*Bb))+C(gc*P))))-C(j*c))))-j)))-C(da*C(C(C(C(C(db*L)+C(Da*T))+C(cb*K))+C(C(C(bb*vb)+C(sa*wb))+C(Oa*pa)))-C(C(C(C(Qa*L)+C(ta*T))+C(Pa*K))+C(C(C(Na*Ab)+C(Aa*Bb))+C(Ya*P))))));da=j<$?$:j;da=ha>2]=da;k=C(C(na-C(N*C(C(n*C(Cb+C(C(C(C(C(Bc*J)+C(xc*S))+C(uc*I))+C(C(C(C(mc*Q)+C($b*rb))+C(_b*oa))-C(C(C(Zb*O)+C(jc*tb))+C(ic*sb))))-C(k*c))))-k)))-C(N*C(C(C(C(C(gb*J)+C(Ea*S))+C(fb*I))+C(C(C(eb*Q)+C(ua*rb))+C(Sa*oa)))-C(C(C(C(Ua*J)+C(va*S))+C(Ta*I))+C(C(C(Ra*O)+C(Ba*tb))+C(Za*sb))))));N=kga?ga:N;z[W+4>>2]=N;l=C(C(D-C(M*C(C(g*C(m+C(C(C(C(C(yc*R)+C(rc*H))+C(qc*G))+C(C(C(C(oc*X)+C(dc*ka))+C(cc*ja))-C(C(C(nc*E)+C(bc*ma))+C(ac*la))))-C(l*c))))-l)))-C(M*C(C(C(C(C(mb*R)+C(Ga*H))+C(lb*G))+C(C(C(ib*X)+C(ya*ka))+C(Wa*ja)))-C(C(C(C(kb*R)+C(Fa*H))+C(jb*G))+C(C(C(hb*E)+C(wa*ma))+C(Va*la))))));M=lfa?fa:M;z[W>>2]=X;pb=0-((pb|0)!=0|Jb<(i>C(0)?i:C(-i)))|0;nb=0-((nb|0)!=0|ca<(j>C(0)?j:C(-j)))|0;qb=0-((qb|0)!=0|Ia<(k>C(0)?k:C(-k)))|0;Ha=0-((Ha|0)!=0|Ib<(l>C(0)?l:C(-l)))|0;i=C(ea-xb);M=C(Ec*i);Xa=C(Xa-C(M*z[d+140>>2]));j=C(da-ub);ja=C(Fc*j);Ya=C(Ya-C(ja*z[d+136>>2]));k=C(N-na);ka=C(Gc*k);Za=C(Za-C(ka*z[d+132>>2]));l=C(X-D);D=C(Kc*l);Va=C(Va-C(D*z[d+128>>2]));X=C(Hc*i);Ka=C(Ka+C(X*z[d+92>>2]));la=C(Ic*j);Oa=C(Oa+C(la*z[d+88>>2]));ma=C(Jc*k);Sa=C(Sa+C(ma*z[d+84>>2]));E=C(Lc*l);Wa=C(Wa+C(E*z[d+80>>2]));na=C(Mb*i);La=C(La-C(h*na));N=C(Ob*j);Pa=C(Pa-C(K*N));oa=C(Qb*k);Ta=C(Ta-C(I*oa));Q=C(Sb*l);jb=C(jb-C(G*Q));g=h;h=C(Lb*i);$a=C($a+C(g*h));g=K;K=C(Nb*j);cb=C(cb+C(g*K));g=I;I=C(Pb*k);fb=C(fb+C(g*I));g=G;G=C(Rb*l);lb=C(lb+C(g*G));za=C(za-C(M*z[d+124>>2]));Aa=C(Aa-C(ja*z[d+120>>2]));Ba=C(Ba-C(ka*z[d+116>>2]));wa=C(wa-C(D*z[d+112>>2]));qa=C(qa+C(X*z[d+76>>2]));sa=C(sa+C(la*z[d+72>>2]));ua=C(ua+C(ma*z[d+68>>2]));ya=C(ya+C(E*z[Hb>>2]));ra=C(ra-C(V*na));ta=C(ta-C(T*N));va=C(va-C(S*oa));Fa=C(Fa-C(H*Q));Ca=C(Ca+C(V*h));Da=C(Da+C(T*K));Ea=C(Ea+C(S*I));Ga=C(Ga+C(H*G));Ja=C(Ja-C(M*z[d+108>>2]));Na=C(Na-C(ja*z[d+104>>2]));Ra=C(Ra-C(ka*z[d+100>>2]));hb=C(hb-C(D*z[d+96>>2]));_a=C(_a+C(z[d+60>>2]*X));bb=C(bb+C(z[d+56>>2]*la));eb=C(eb+C(z[d+52>>2]*ma));ib=C(ib+C(z[d+48>>2]*E));Ma=C(Ma-C(U*na));Qa=C(Qa-C(L*N));Ua=C(Ua-C(J*oa));kb=C(kb-C(R*Q));ab=C(ab+C(U*h));db=C(db+C(L*K));gb=C(gb+C(J*I));mb=C(mb+C(R*G));Fb=Fb+256|0;ba=ba+1|0;if((Gb|0)!=(ba|0)){continue}break}v[f+208>>2]=Ha;v[f+220>>2]=pb;v[f+216>>2]=nb;v[f+212>>2]=qb}if(e>>>0>>0){continue}break}}z[A+28>>2]=ya;z[A+24>>2]=Wa;z[A+20>>2]=ya;z[A+16>>2]=ib;z[A+12>>2]=Ga;z[A+8>>2]=lb;z[A+4>>2]=Ga;z[A>>2]=mb;z[u+28>>2]=ua;z[u+24>>2]=Sa;z[u+20>>2]=ua;z[u+16>>2]=eb;z[u+12>>2]=Ea;z[u+8>>2]=fb;z[u+4>>2]=Ea;z[u>>2]=gb;z[r+28>>2]=sa;z[r+24>>2]=Oa;z[r+20>>2]=sa;z[r+16>>2]=bb;z[r+12>>2]=Da;z[r+8>>2]=cb;z[r+4>>2]=Da;z[r>>2]=db;z[p+28>>2]=qa;z[p+24>>2]=Ka;z[p+20>>2]=qa;z[p+16>>2]=_a;z[p+12>>2]=Ca;z[p+8>>2]=$a;z[p+4>>2]=Ca;z[p>>2]=ab;if(v[a+16>>2]){z[y+28>>2]=wa;z[y+24>>2]=Va;z[y+20>>2]=wa;z[y+16>>2]=hb;z[y+12>>2]=Fa;z[y+8>>2]=jb;z[y+4>>2]=Fa;z[y>>2]=kb}if(v[a+48>>2]){z[s+28>>2]=Ba;z[s+24>>2]=Za;z[s+20>>2]=Ba;z[s+16>>2]=Ra;z[s+12>>2]=va;z[s+8>>2]=Ta;z[s+4>>2]=va;z[s>>2]=Ua}if(v[a+80>>2]){z[q+28>>2]=Aa;z[q+24>>2]=Ya;z[q+20>>2]=Aa;z[q+16>>2]=Na;z[q+12>>2]=ta;z[q+8>>2]=Pa;z[q+4>>2]=ta;z[q>>2]=Qa}if(v[a+112>>2]){z[o+28>>2]=za;z[o+24>>2]=Xa;z[o+20>>2]=za;z[o+16>>2]=Ja;z[o+12>>2]=ra;z[o+8>>2]=La;z[o+4>>2]=ra;z[o>>2]=Ma}}function wv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=0,U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=0;h=xa+-64|0;xa=h;x=z[d+20>>2];S=z[d+24>>2];f=v[f>>2];r=z[d+16>>2];k=z[d+8>>2];o=z[d>>2];s=z[d+4>>2];I=z[d+12>>2];u=z[c+20>>2];p=z[c+24>>2];i=z[c>>2];l=z[c+4>>2];m=z[c+8>>2];j=z[c+12>>2];G=z[c+16>>2];a=0;v[h+60>>2]=0;z[h+56>>2]=p;z[h+52>>2]=u;z[h+48>>2]=G;z[h+44>>2]=j;z[h+40>>2]=m;z[h+36>>2]=l;z[h+32>>2]=i;v[h+28>>2]=0;A=C(i+i);y=C(j+j);E=C(C(m*A)-C(l*y));D=C(C(C(i*A)+C(j*y))+C(-1));A=C(C(A*l)+C(m*y));y=C(C(1)/C(K(C(C(E*E)+C(C(D*D)+C(A*A))))));z[h+24>>2]=y*C(-E);z[h+20>>2]=y*C(-A);z[h+16>>2]=y*C(-D);z[h>>2]=z[e>>2];F=C(C(C(s*m)-C(l*k))+C(C(o*j)-C(I*i)));y=C(F+F);J=C(C(C(k*i)-C(m*o))+C(C(s*j)-C(I*l)));E=C(J+J);M=C(C(1)-C(F*y));N=C(J*E);A=C(M-N);D=C(C(C(o*l)-C(i*s))+C(C(k*j)-C(I*m)));O=C(D+D);P=C(D*O);M=C(M-P);N=C(C(C(1)-N)-P);Q=C(D*E);q=o;o=C(-i);L=C(C(I*j)-C(C(C(q*o)-C(s*l))-C(m*k)));k=C(L*y);I=C(Q-k);s=C(D*y);E=C(L*E);P=C(s+E);Q=C(Q+k);k=C(J*y);q=C(L*O);O=C(k-q);y=C(s-E);E=C(k+q);k=C(r-G);u=C(x-u);p=C(S-p);G=C(C(C(o*k)-C(u*l))-C(m*p));x=C(C(j*j)+C(-.5));o=C(C(C(j*C(C(l*k)-C(i*u)))+C(x*p))-C(m*G));o=C(o+o);s=C(C(C(x*u)+C(j*C(C(i*p)-C(m*k))))-C(l*G));s=C(s+s);j=C(C(C(x*k)+C(j*C(C(m*u)-C(l*p))))-C(i*G));j=C(j+j);i=C(z[e+8>>2]*C(.15000000596046448));m=z[b+4>>2];u=z[b+8>>2];l=m<=u?m:u;k=z[b+12>>2];l=C((l<=k?l:k)*C(.15000000596046448));l=C((i>2];a=a-1|0;c=d+B(a,48)|0;p=z[c+24>>2];r=z[c+40>>2];i=z[c+8>>2];G=z[c>>2];x=z[c+4>>2];q=C(o+C(C(A*i)+C(C(y*G)+C(Q*x))));V=C(j+C(C(P*i)+C(C(N*G)+C(O*x))));W=z[c+16>>2];X=z[c+32>>2];G=C(s+C(C(I*i)+C(C(E*G)+C(M*x))));x=z[c+20>>2];Y=z[c+36>>2];i=C(C(r*C(q-p))+C(C(C(V-W)*X)+C(C(G-x)*Y)));p=C(p-C(q-C(r*i)));q=C(p*p);p=C(W-C(V-C(X*i)));r=C(p*p);p=C(x-C(G-C(Y*i)));a:{if(S>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+44>>2];v[c+40>>2]=v[d+40>>2];v[c+44>>2]=e;e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;break a}z[c+44>>2]=i}if(a){continue}break}a=w[f+64|0]}b:{c:{if((a&255)!=(b|0)){break c}i=C(j-z[f+16>>2]);i=i>C(0)?i:C(-i);p=C(s-z[f+20>>2]);p=p>C(0)?p:C(-p);p=i>=p?i:p;q=i;i=C(o-z[f+24>>2]);i=(i>C(0)?i:C(-i))>=C(0)?q:C(0);if(l<(i<=p?p:i)){break c}if(!(C(C(L*z[f+12>>2])+C(C(D*z[f+8>>2])+C(C(F*z[f>>2])+C(J*z[f+4>>2]))))>2]=0;z[f+24>>2]=o;z[f+20>>2]=s;z[f+16>>2]=j;z[f+12>>2]=L;z[f+8>>2]=D;z[f+4>>2]=J;z[f>>2]=F;t[f+64|0]=0;x=C(N*m);S=C(O*u);F=C(x-S);L=C(x+S);D=C(P*k);l=C(L-D);p=C(Q*u);G=C(M*u);J=C(z[h>>2]-j);i=C(D+L);if(J>i){v[g+12>>2]=0;z[g+8>>2]=k;z[g+4>>2]=u;z[g>>2]=m;i=C(j+i);z[g+44>>2]=i;v[g+36>>2]=0;v[g+40>>2]=0;v[g+28>>2]=0;v[g+32>>2]=1065353216;r=C(i*C(0));z[g+24>>2]=C(o+C(C(A*k)+C(C(y*m)+p)))-r;z[g+20>>2]=C(s+C(C(I*k)+C(C(E*m)+G)))-r;z[g+16>>2]=i-i;a=1}i=C(-k);if(l>2]=0;z[b+8>>2]=i;z[b+4>>2]=u;z[b>>2]=m;l=C(j+l);z[b+44>>2]=l;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;r=C(l*C(0));z[b+24>>2]=C(o+C(C(A*i)+C(C(y*m)+p)))-r;z[b+20>>2]=C(s+C(C(I*i)+C(C(E*m)+G)))-r;z[b+16>>2]=C(j+C(C(P*i)+L))-l;a=a+1|0}l=C(-u);r=C(D+F);if(r>2]=0;z[b+8>>2]=k;z[b+4>>2]=l;z[b>>2]=m;r=C(j+r);z[b+44>>2]=r;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;q=C(r*C(0));z[b+24>>2]=C(o+C(C(A*k)+C(C(y*m)+C(Q*l))))-q;z[b+20>>2]=C(s+C(C(I*k)+C(C(E*m)+C(M*l))))-q;z[b+16>>2]=C(j+C(D+C(x+C(O*l))))-r;a=a+1|0}r=C(F-D);if(r>2]=0;z[b+8>>2]=i;z[b+4>>2]=l;z[b>>2]=m;r=C(j+r);z[b+44>>2]=r;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;q=C(r*C(0));z[b+24>>2]=C(o+C(C(A*i)+C(C(y*m)+C(Q*l))))-q;z[b+20>>2]=C(s+C(C(I*i)+C(C(E*m)+C(M*l))))-q;z[b+16>>2]=C(j+C(C(P*i)+C(x+C(O*l))))-r;a=a+1|0}m=C(-m);x=C(D-F);if(x>2]=0;z[b+8>>2]=k;z[b+4>>2]=u;z[b>>2]=m;x=C(j+x);z[b+44>>2]=x;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;r=C(x*C(0));z[b+24>>2]=C(o+C(C(A*k)+C(C(y*m)+p)))-r;z[b+20>>2]=C(s+C(C(I*k)+C(C(E*m)+G)))-r;z[b+16>>2]=C(j+C(D+C(C(N*m)+S)))-x;a=a+1|0}x=C(-D);F=C(x-F);if(F>2]=0;z[b+8>>2]=i;z[b+4>>2]=u;z[b>>2]=m;u=C(j+F);z[b+44>>2]=u;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;F=C(u*C(0));z[b+24>>2]=C(o+C(C(A*i)+C(C(y*m)+p)))-F;z[b+20>>2]=C(s+C(C(I*i)+C(C(E*m)+G)))-F;z[b+16>>2]=C(j+C(C(P*i)+C(C(N*m)+S)))-u;a=a+1|0}u=C(D-L);if(u>2]=0;z[b+8>>2]=k;z[b+4>>2]=l;z[b>>2]=m;u=C(j+u);z[b+44>>2]=u;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;F=C(u*C(0));z[b+24>>2]=C(o+C(C(A*k)+C(C(y*m)+C(Q*l))))-F;z[b+20>>2]=C(s+C(C(I*k)+C(C(E*m)+C(M*l))))-F;z[b+16>>2]=C(j+C(D+C(C(N*m)+C(O*l))))-u;a=a+1|0}b=0;c=0;k=C(x-L);if(k>2]=0;z[d+8>>2]=i;z[d+4>>2]=l;z[d>>2]=m;k=C(j+k);z[d+44>>2]=k;v[d+36>>2]=0;v[d+40>>2]=0;v[d+28>>2]=0;v[d+32>>2]=1065353216;q=C(o+C(C(A*i)+C(C(y*m)+C(Q*l))));o=C(k*C(0));z[d+24>>2]=q-o;z[d+20>>2]=C(s+C(C(I*i)+C(C(E*m)+C(M*l))))-o;z[d+16>>2]=C(j+C(C(P*i)+C(C(N*m)+C(O*l))))-k;a=a+1|0}d:{if(a>>>0<=4){if(!a){break d}c=v[g+4>>2];b=v[f+76>>2];v[b>>2]=v[g>>2];v[b+4>>2]=c;c=v[g+12>>2];v[b+8>>2]=v[g+8>>2];v[b+12>>2]=c;c=v[g+20>>2];b=v[f+76>>2];v[b+16>>2]=v[g+16>>2];v[b+20>>2]=c;c=v[g+28>>2];v[b+24>>2]=v[g+24>>2];v[b+28>>2]=c;c=v[g+36>>2];b=v[f+76>>2];v[b+32>>2]=v[g+32>>2];v[b+36>>2]=c;c=v[g+44>>2];v[b+40>>2]=v[g+40>>2];v[b+44>>2]=c;if((a|0)==1){break d}c=v[g+52>>2];b=v[f+76>>2];v[b+48>>2]=v[g+48>>2];v[b+52>>2]=c;c=v[g+60>>2];v[b+56>>2]=v[g+56>>2];v[b+60>>2]=c;d=g- -64|0;e=v[d+4>>2];b=v[f+76>>2];c=b- -64|0;v[c>>2]=v[d>>2];v[c+4>>2]=e;c=v[g+76>>2];v[b+72>>2]=v[g+72>>2];v[b+76>>2]=c;c=v[g+84>>2];b=v[f+76>>2];v[b+80>>2]=v[g+80>>2];v[b+84>>2]=c;c=v[g+92>>2];v[b+88>>2]=v[g+88>>2];v[b+92>>2]=c;if((a|0)==2){break d}c=v[g+100>>2];b=v[f+76>>2];v[b+96>>2]=v[g+96>>2];v[b+100>>2]=c;c=v[g+108>>2];v[b+104>>2]=v[g+104>>2];v[b+108>>2]=c;c=v[g+116>>2];b=v[f+76>>2];v[b+112>>2]=v[g+112>>2];v[b+116>>2]=c;c=v[g+124>>2];v[b+120>>2]=v[g+120>>2];v[b+124>>2]=c;c=v[g+132>>2];b=v[f+76>>2];v[b+128>>2]=v[g+128>>2];v[b+132>>2]=c;c=v[g+140>>2];v[b+136>>2]=v[g+136>>2];v[b+140>>2]=c;if((a|0)==3){break d}c=v[g+148>>2];b=v[f+76>>2];v[b+144>>2]=v[g+144>>2];v[b+148>>2]=c;c=v[g+156>>2];v[b+152>>2]=v[g+152>>2];v[b+156>>2]=c;c=v[g+164>>2];b=v[f+76>>2];v[b+160>>2]=v[g+160>>2];v[b+164>>2]=c;c=v[g+172>>2];v[b+168>>2]=v[g+168>>2];v[b+172>>2]=c;c=v[g+180>>2];b=v[f+76>>2];v[b+176>>2]=v[g+176>>2];v[b+180>>2]=c;c=v[g+188>>2];v[b+184>>2]=v[g+184>>2];v[b+188>>2]=c;break d}e=xa-80|0;xa=e;I9(e+16|0,0,a);e:{if(!a){break e}R=a&1;f:{if((a|0)==1){j=C(-34028234663852886e22);break f}H=a&-2;j=C(-34028234663852886e22);while(1){d=B(b,48)+g|0;i=z[d+24>>2];l=C(i*i);i=z[d+16>>2];o=C(i*i);i=z[d+20>>2];i=C(l+C(o+C(i*i)));d=i>j;Z=b|1;n=B(Z,48)+g|0;l=z[n+24>>2];o=C(l*l);l=z[n+16>>2];q=C(l*l);l=z[n+20>>2];l=C(o+C(q+C(l*l)));j=d?i:j;n=l>j;j=n?l:j;T=n?Z:d?b:T;b=b+2|0;c=c+2|0;if((H|0)!=(c|0)){continue}break}}if(!R){break e}c=b;i=j;b=B(b,48)+g|0;j=z[b+24>>2];l=C(j*j);j=z[b+16>>2];o=C(j*j);j=z[b+20>>2];T=i>2];c=v[f+76>>2];v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+44>>2];v[c+40>>2]=v[b+40>>2];v[c+44>>2]=d;d=v[b+36>>2];v[c+32>>2]=v[b+32>>2];v[c+36>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;t[(e+16|0)+T|0]=1;v[e>>2]=T;c=v[f+76>>2];if(a>>>0>=2){i=z[c+24>>2];j=C(z[g+24>>2]-i);o=C(j*j);l=z[c+16>>2];j=C(z[g+16>>2]-l);q=C(j*j);m=z[c+20>>2];j=C(z[g+20>>2]-m);j=C(o+C(q+C(j*j)));b=1;while(1){d=B(b,48)+g|0;k=C(z[d+24>>2]-i);o=C(k*k);k=C(z[d+16>>2]-l);q=C(k*k);k=C(z[d+20>>2]-m);k=C(o+C(q+C(k*k)));d=k>j;j=d?k:j;U=d?b:U;b=b+1|0;if((b|0)!=(a|0)){continue}break}}b=B(U,48)+g|0;d=v[b+4>>2];v[c+48>>2]=v[b>>2];v[c+52>>2]=d;d=v[b+44>>2];v[c+88>>2]=v[b+40>>2];v[c+92>>2]=d;d=v[b+36>>2];v[c+80>>2]=v[b+32>>2];v[c+84>>2]=d;d=v[b+28>>2];v[c+72>>2]=v[b+24>>2];v[c+76>>2]=d;n=v[b+20>>2];d=c- -64|0;v[d>>2]=v[b+16>>2];v[d+4>>2]=n;d=v[b+12>>2];v[c+56>>2]=v[b+8>>2];v[c+60>>2]=d;t[(e+16|0)+U|0]=1;v[e+4>>2]=U;d=v[f+76>>2];m=z[d+16>>2];o=C(z[d- -64>>2]-m);j=z[d+36>>2];i=z[d+32>>2];I=z[d+20>>2];k=C(z[d+68>>2]-I);l=C(C(o*j)-C(i*k));q=l;p=C(l*l);l=z[d+40>>2];y=z[d+24>>2];s=C(z[d+72>>2]-y);k=C(C(k*l)-C(j*s));o=C(C(s*i)-C(l*o));A=C(p+C(C(k*k)+C(o*o)));s=C(C(1)/C(K(A)));b=A>C(0);A=b?C(q*s):l;o=b?C(o*s):j;k=b?C(k*s):i;b=0;R=-1;g:{if(!a){c=-1;break g}j=C(34028234663852886e22);i=C(-34028234663852886e22);c=-1;while(1){if(!w[(e+16|0)+b|0]){n=B(b,48)+g|0;l=C(C(C(z[n+24>>2]-y)*A)+C(C(C(z[n+16>>2]-m)*k)+C(o*C(z[n+20>>2]-I))));n=lC(0)}n=B(R,48)+g|0;H=v[n+4>>2];v[d+96>>2]=v[n>>2];v[d+100>>2]=H;H=v[n+44>>2];v[d+136>>2]=v[n+40>>2];v[d+140>>2]=H;H=v[n+36>>2];v[d+128>>2]=v[n+32>>2];v[d+132>>2]=H;H=v[n+28>>2];v[d+120>>2]=v[n+24>>2];v[d+124>>2]=H;H=v[n+20>>2];v[d+112>>2]=v[n+16>>2];v[d+116>>2]=H;H=v[n+12>>2];v[d+104>>2]=v[n+8>>2];v[d+108>>2]=H;t[(e+16|0)+R|0]=1;v[e+8>>2]=R;d=v[f+76>>2];if(!(!b|!a)){j=C(-34028234663852886e22);b=0;while(1){if(!w[(e+16|0)+b|0]){n=B(b,48)+g|0;i=C(C(C(z[n+24>>2]-z[d+24>>2])*A)+C(C(C(z[n+16>>2]-z[d+16>>2])*k)+C(o*C(z[n+20>>2]-z[d+20>>2]))));n=i>j;j=n?i:j;c=n?b:c}b=b+1|0;if((b|0)!=(a|0)){continue}break}}b=B(c,48)+g|0;n=v[b+4>>2];v[d+144>>2]=v[b>>2];v[d+148>>2]=n;n=v[b+44>>2];v[d+184>>2]=v[b+40>>2];v[d+188>>2]=n;n=v[b+36>>2];v[d+176>>2]=v[b+32>>2];v[d+180>>2]=n;n=v[b+28>>2];v[d+168>>2]=v[b+24>>2];v[d+172>>2]=n;n=v[b+20>>2];v[d+160>>2]=v[b+16>>2];v[d+164>>2]=n;n=v[b+12>>2];v[d+152>>2]=v[b+8>>2];v[d+156>>2]=n;t[(e+16|0)+c|0]=1;v[e+12>>2]=c;b=v[f+76>>2];if(a){c=0;while(1){h:{if(w[(e+16|0)+c|0]){break h}d=B(c,48)+g|0;j=z[d+24>>2];i=C(j-z[b+24>>2]);o=C(i*i);i=z[d+16>>2];l=C(i-z[b+16>>2]);q=C(l*l);l=z[d+20>>2];m=C(l-z[b+20>>2]);m=C(o+C(q+C(m*m)));m=m>2]);o=C(k*k);k=C(i-z[b+64>>2]);q=C(k*k);k=C(l-z[b+68>>2]);k=C(o+C(q+C(k*k)));n=m>k;H=n;m=n?k:m;k=C(j-z[b+120>>2]);o=C(k*k);k=C(i-z[b+112>>2]);q=C(k*k);k=C(l-z[b+116>>2]);k=C(o+C(q+C(k*k)));n=m>k;j=C(j-z[b+168>>2]);o=C(j*j);j=C(i-z[b+160>>2]);i=C(j*j);j=C(l-z[b+164>>2]);n=e|(C(o+C(i+C(j*j)))<(n?k:m)?3:n?2:H)<<2;if(!(z[(B(v[n>>2],48)+g|0)+44>>2]>z[d+44>>2])){break h}v[n>>2]=c}c=c+1|0;if((c|0)!=(a|0)){continue}break}R=v[e+8>>2];U=v[e+4>>2];T=v[e>>2];c=v[e+12>>2]}a=B(T,48)+g|0;d=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=d;d=v[a+36>>2];v[b+32>>2]=v[a+32>>2];v[b+36>>2]=d;d=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=d;d=v[a+44>>2];v[b+40>>2]=v[a+40>>2];v[b+44>>2]=d;d=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=d;d=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=d;a=B(U,48)+g|0;d=v[a+4>>2];b=v[f+76>>2];v[b+48>>2]=v[a>>2];v[b+52>>2]=d;d=v[a+12>>2];v[b+56>>2]=v[a+8>>2];v[b+60>>2]=d;n=v[a+20>>2];d=b- -64|0;v[d>>2]=v[a+16>>2];v[d+4>>2]=n;d=v[a+28>>2];v[b+72>>2]=v[a+24>>2];v[b+76>>2]=d;d=v[a+36>>2];v[b+80>>2]=v[a+32>>2];v[b+84>>2]=d;d=v[a+44>>2];v[b+88>>2]=v[a+40>>2];v[b+92>>2]=d;a=B(R,48)+g|0;d=v[a+44>>2];b=v[f+76>>2];v[b+136>>2]=v[a+40>>2];v[b+140>>2]=d;d=v[a+4>>2];v[b+96>>2]=v[a>>2];v[b+100>>2]=d;d=v[a+12>>2];v[b+104>>2]=v[a+8>>2];v[b+108>>2]=d;d=v[a+20>>2];v[b+112>>2]=v[a+16>>2];v[b+116>>2]=d;d=v[a+28>>2];v[b+120>>2]=v[a+24>>2];v[b+124>>2]=d;d=v[a+36>>2];v[b+128>>2]=v[a+32>>2];v[b+132>>2]=d;a=B(c,48)+g|0;c=v[a+4>>2];b=v[f+76>>2];v[b+144>>2]=v[a>>2];v[b+148>>2]=c;c=v[a+12>>2];v[b+152>>2]=v[a+8>>2];v[b+156>>2]=c;c=v[a+20>>2];v[b+160>>2]=v[a+16>>2];v[b+164>>2]=c;c=v[a+28>>2];v[b+168>>2]=v[a+24>>2];v[b+172>>2]=c;c=v[a+36>>2];v[b+176>>2]=v[a+32>>2];v[b+180>>2]=c;c=v[a+44>>2];v[b+184>>2]=v[a+40>>2];v[b+188>>2]=c;xa=e+80|0;a=4}t[f+64|0]=a}q2(f,g,h+16|0,h+32|0,h);xa=h- -64|0;return w[f+64|0]!=0|0}function kT(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=C(0),q=0,r=0,s=C(0),D=0,E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(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=xa-272|0;xa=o;s=z[f+8>>2];p=z[f>>2];E=z[f+4>>2];a:{if(!(p!=C(0)|E!=C(0))&s==C(0)){break a}v[a+324>>2]=v[a+324>>2]&-53;v[n>>2]=0;v[m>>2]=0;v[a+176>>2]=-1;r=v[e+28>>2];v[o+88>>2]=v[e+24>>2];v[o+92>>2]=r;r=v[e+20>>2];v[o+80>>2]=v[e+16>>2];v[o+84>>2]=r;r=v[e+12>>2];v[o+72>>2]=v[e+8>>2];v[o+76>>2]=r;b:{if(!h){break b}ea=A[e+8>>3]+ +p;fa=A[e+16>>3]+ +E;ga=A[e+24>>3]+ +s;da=A[o+88>>3];T=A[o+80>>3];U=A[o+72>>3];ia=(l|0)==3;ja=(l&-3)!=1;while(1){u[a+322>>1]=x[a+322>>1]+1;z[o+64>>2]=ga-da;z[o+60>>2]=fa-T;z[o+56>>2]=ea-U;r=o+96|0;Ba[v[v[e>>2]+8>>2]](e,a,r,o+72|0,o+56|0);jT(a,b,d,r,k,g);p=z[o+64>>2];E=z[o+56>>2];J=z[o+60>>2];ba=C(K(C(C(p*p)+C(C(E*E)+C(J*J)))));if(ba<=j){break b}I=p;p=C(C(1)/ba);s=C(I*p);z[o+64>>2]=s;E=C(E*p);z[o+56>>2]=E;p=C(J*p);z[o+60>>2]=p;if(C(C(s*z[f+8>>2])+C(C(E*z[f>>2])+C(p*z[f+4>>2])))<=C(0)){break b}z[o+36>>2]=ba+z[a+276>>2];H=v[a+36>>2];r=w[a+298|0];q=v[a+32>>2];v[o+48>>2]=0;v[o+40>>2]=-1;v[o+44>>2]=-1;c:{if(H){O=(H<<2)+q|0;d:{if(!r){while(1){r=v[q>>2];H=v[(B(v[e+36>>2],24)+139760|0)+(r<<2)>>2];if(H){v[o+136>>2]=-1;v[o+140>>2]=-1;z[o+132>>2]=z[o+36>>2];e:{if(!(Ba[H|0](a,e,q,o+72|0,o+56|0,o+96|0)|0)){break e}p=z[o+132>>2];if(p==C(0)|!(p>2])){break e}r=v[o+116>>2];v[o+16>>2]=v[o+112>>2];v[o+20>>2]=r;r=v[o+108>>2];v[o+8>>2]=v[o+104>>2];v[o+12>>2]=r;r=v[o+100>>2];v[o>>2]=v[o+96>>2];v[o+4>>2]=r;z[o+24>>2]=z[o+120>>2];r=v[o+128>>2];v[o+28>>2]=v[o+124>>2];v[o+32>>2]=r;r=v[o+136>>2];v[o+36>>2]=v[o+132>>2];v[o+40>>2]=r;v[o+44>>2]=v[o+140>>2];v[o+48>>2]=q;if(p<=C(0)){break c}}r=v[q>>2]}q=v[(r<<2)+99008>>2]+q|0;if((O|0)!=(q|0)){continue}break d}}while(1){r=v[q>>2];H=v[(B(v[e+36>>2],24)+139760|0)+(r<<2)>>2];if(H){v[o+136>>2]=-1;v[o+140>>2]=-1;z[o+132>>2]=z[o+36>>2];f:{if(!(Ba[H|0](a,e,q,o+72|0,o+56|0,o+96|0)|0)){break f}p=z[o+132>>2];if(p==C(0)){if(y[q>>2]<2){break f}g:{h:{r=v[q+8>>2];switch(x[r+4>>1]-5|0){case 1:break g;case 0:break h;default:break f}}Ba[v[v[r>>2]+216>>2]](o+240|0,r);if(!(t[o+240|0]&1)){break f}}r=v[o+116>>2];v[o+16>>2]=v[o+112>>2];v[o+20>>2]=r;r=v[o+108>>2];v[o+8>>2]=v[o+104>>2];v[o+12>>2]=r;r=v[o+100>>2];v[o>>2]=v[o+96>>2];v[o+4>>2]=r;z[o+24>>2]=z[o+120>>2];r=v[o+128>>2];v[o+28>>2]=v[o+124>>2];v[o+32>>2]=r;r=v[o+136>>2];v[o+36>>2]=v[o+132>>2];v[o+40>>2]=r;v[o+44>>2]=v[o+140>>2];v[o+48>>2]=q;break c}if(!(p>2])){break f}r=v[o+116>>2];v[o+16>>2]=v[o+112>>2];v[o+20>>2]=r;r=v[o+108>>2];v[o+8>>2]=v[o+104>>2];v[o+12>>2]=r;r=v[o+100>>2];v[o>>2]=v[o+96>>2];v[o+4>>2]=r;z[o+24>>2]=z[o+120>>2];r=v[o+128>>2];v[o+28>>2]=v[o+124>>2];v[o+32>>2]=r;r=v[o+136>>2];v[o+36>>2]=v[o+132>>2];v[o+40>>2]=r;v[o+44>>2]=v[o+140>>2];v[o+48>>2]=q;if(p<=C(0)){break c}}r=v[q>>2]}q=v[(r<<2)+99008>>2]+q|0;if((O|0)!=(q|0)){continue}break}}q=v[o+48>>2];if(q){break c}}A[o+88>>3]=ga;A[o+80>>3]=fa;A[o+72>>3]=ea;q=1;break b}if(!(!w[a+298|0]|z[o+36>>2]!=C(0))){i:{V=v[a+36>>2];if(V){I=z[a+276>>2];Q=C(A[o+72>>3]);P=C(A[o+80>>3]);M=C(A[o+88>>3]);f=0;break i}while(1)continue}while(1){j:{if(!V){b=1;break j}q=v[a+32>>2];c=q+(V<<2)|0;b=1;while(1){k:{if(y[q>>2]<2){break k}l:{m:{d=v[q+8>>2];switch(x[d+4>>1]-5|0){case 1:break l;case 0:break m;default:break k}}Ba[v[v[d>>2]+216>>2]](o+96|0,d);if(!(t[o+96|0]&1)){break k}}b=v[q+4>>2];Ba[v[v[b>>2]+40>>2]](o+96|0,b);Ba[v[v[d>>2]+76>>2]](o+240|0,d);Ba[v[v[b>>2]+80>>2]](o+208|0,b);N=z[o+252>>2];s=z[o+220>>2];E=z[o+208>>2];F=z[o+240>>2];L=z[o+244>>2];p=z[o+212>>2];G=z[o+248>>2];j=z[o+216>>2];z[o+188>>2]=C(C(C(N*s)-C(E*F))-C(L*p))-C(G*j);z[o+184>>2]=C(C(F*p)+C(C(N*j)+C(G*s)))-C(E*L);z[o+180>>2]=C(C(G*E)+C(C(N*p)+C(L*s)))-C(j*F);z[o+176>>2]=C(C(L*j)+C(C(N*E)+C(F*s)))-C(p*G);j=z[o+232>>2];J=C(j+j);j=z[o+224>>2];s=C(j+j);j=z[o+228>>2];E=C(j+j);p=C(C(G*J)+C(C(F*s)+C(L*E)));j=C(C(N*N)+C(-.5));z[o+200>>2]=z[o+264>>2]+C(C(G*p)+C(C(J*j)+C(N*C(C(F*E)-C(s*L)))));z[o+196>>2]=z[o+260>>2]+C(C(L*p)+C(C(E*j)+C(N*C(C(G*s)-C(J*F)))));z[o+192>>2]=z[o+256>>2]+C(C(F*p)+C(C(s*j)+C(N*C(C(L*J)-C(E*G)))));z[o+240>>2]=z[a+244>>2];z[o+244>>2]=z[a+248>>2];z[o+248>>2]=z[a+252>>2];j=z[a+256>>2];z[o+264>>2]=M;z[o+260>>2]=P;z[o+256>>2]=Q;z[o+252>>2]=j;n:{if(v[e+36>>2]==1){p=z[e+40>>2];j=z[e+44>>2];v[o+208>>2]=2;z[o+216>>2]=j*C(.5);z[o+212>>2]=I+p;v[o+160>>2]=o+96;b=0;if(jV(o+160|0,o+156|0,o+208|0,o+240|0,v[o+160>>2],o+176|0)){break n}break k}E=z[e+40>>2];p=z[e+44>>2];j=z[e+48>>2];v[o+208>>2]=3;z[o+220>>2]=I+j;z[o+216>>2]=I+p;z[o+212>>2]=I+E;v[o+160>>2]=o+96;b=0;if(!jV(o+160|0,o+156|0,o+208|0,o+240|0,v[o+160>>2],o+176|0)){break k}}b=1;f=f+1|0;j=z[o+156>>2];M=C(M+C(j*z[o+168>>2]));P=C(P+C(j*z[o+164>>2]));Q=C(Q+C(j*z[o+160>>2]))}q=v[(v[q>>2]<<2)+99008>>2]+q|0;if((c|0)!=(q|0)){continue}break}}if(!(!b|f>>>0>3)){V=v[a+36>>2];continue}break}if(i){v[i>>2]=ha+1}A[e+24>>3]=M;A[e+16>>3]=P;A[e+8>>3]=Q;q=1;break a}o:{if(y[q>>2]<=1){V=0;q=1;if(ia){break o}v[c+8>>2]=0;v[c+12>>2]=-1;H=0;D=xa-80|0;xa=D;q=v[v[o+48>>2]+4>>2];r=q>>>16|0;O=v[c>>2];p:{q:{r:{switch(q&65535){case 0:r=v[v[v[O+520>>2]+68>>2]+(r<<2)>>2];na=D,oa=Ba[v[v[O>>2]+16>>2]](O)|0,v[na+8>>2]=oa;q=v[o+12>>2];v[D+24>>2]=v[o+8>>2];v[D+28>>2]=q;q=v[o+20>>2];v[D+32>>2]=v[o+16>>2];v[D+36>>2]=q;q=v[o+4>>2];v[D+16>>2]=v[o>>2];v[D+20>>2]=q;z[D+40>>2]=z[o+24>>2];z[D+44>>2]=z[o+28>>2];z[D+48>>2]=z[o+32>>2];z[D+52>>2]=z[o+56>>2];z[D+56>>2]=z[o+60>>2];z[D+60>>2]=z[o+64>>2];z[D+64>>2]=ba;na=D,oa=Ba[v[v[r>>2]+16>>2]](r)|0,v[na+68>>2]=oa;q=v[O+72>>2];if(q){Ba[v[v[q>>2]+4>>2]](q,D+8|0)}q=v[O+76>>2];if(!q){break p}Ba[v[v[q>>2]+4>>2]](D+72|0,q,v[D+68>>2]);break q;case 1:na=D,oa=Ba[v[v[O>>2]+16>>2]](O)|0,v[na+8>>2]=oa;q=v[o+12>>2];v[D+24>>2]=v[o+8>>2];v[D+28>>2]=q;q=v[o+20>>2];v[D+32>>2]=v[o+16>>2];v[D+36>>2]=q;q=v[o+4>>2];v[D+16>>2]=v[o>>2];v[D+20>>2]=q;z[D+40>>2]=z[o+24>>2];z[D+44>>2]=z[o+28>>2];z[D+48>>2]=z[o+32>>2];z[D+52>>2]=z[o+56>>2];z[D+56>>2]=z[o+60>>2];z[D+60>>2]=z[o+64>>2];z[D+64>>2]=ba;r=v[v[c+4>>2]+4>>2]+B(r,72)|0;q=v[r>>2];v[D+68>>2]=v[r+12>>2];v[c+12>>2]=q;q=r+8|0;v[c+8>>2]=q;r=v[O+72>>2];if(r){Ba[v[v[r>>2]+8>>2]](r,D+8|0)}r=v[O+76>>2];if(!r){break p}Ba[v[v[r>>2]+8>>2]](D+72|0,r,q);break q;case 2:break r;default:break p}}na=D,oa=Ba[v[v[O>>2]+16>>2]](O)|0,v[na+8>>2]=oa;q=v[o+12>>2];v[D+24>>2]=v[o+8>>2];v[D+28>>2]=q;q=v[o+20>>2];v[D+32>>2]=v[o+16>>2];v[D+36>>2]=q;q=v[o+4>>2];v[D+16>>2]=v[o>>2];v[D+20>>2]=q;z[D+40>>2]=z[o+24>>2];z[D+44>>2]=z[o+28>>2];z[D+48>>2]=z[o+32>>2];z[D+52>>2]=z[o+56>>2];z[D+56>>2]=z[o+60>>2];z[D+60>>2]=z[o+64>>2];z[D+64>>2]=ba;r=v[v[c+4>>2]+16>>2]+(r<<6)|0;q=v[r>>2];v[D+68>>2]=v[r+12>>2];v[c+12>>2]=q;q=r+8|0;v[c+8>>2]=q;r=v[O+72>>2];if(r){Ba[v[v[r>>2]+8>>2]](r,D+8|0)}r=v[O+76>>2];if(!r){break p}Ba[v[v[r>>2]+8>>2]](D+72|0,r,q)}H=w[D+72|0]}xa=D+80|0;q=!(H&2);if((l|0)!=2){break o}r=v[a+324>>2];H=v[c+8>>2];if(H){v[a+176>>2]=v[c+12>>2];v[a+324>>2]=r|32;T=A[o>>3];U=A[o+8>>3];p=C(A[o+16>>3]);z[a+236>>2]=p;s=C(U);z[a+232>>2]=s;E=C(T);z[a+228>>2]=E;L=z[H+40>>2];p=C(p-C(A[H+24>>3]));G=C(p+p);I=z[H+32>>2];p=C(E-C(A[H+8>>3]));M=C(p+p);J=z[H+36>>2];p=C(s-C(A[H+16>>3]));s=C(p+p);E=C(C(L*G)+C(C(I*M)+C(J*s)));F=z[H+44>>2];p=C(C(F*F)+C(-.5));z[a+224>>2]=C(L*E)+C(C(G*p)-C(F*C(C(I*s)-C(M*J))));z[a+220>>2]=C(J*E)+C(C(s*p)-C(F*C(C(L*M)-C(G*I))));z[a+216>>2]=C(I*E)+C(C(M*p)-C(F*C(C(J*G)-C(s*L))));break o}v[a+324>>2]=r|16;break o}O=v[q+8>>2];s:{if((l|0)==2){H=v[q+4>>2];r=v[a+324>>2]&-49;v[a+324>>2]=r;t:{if(x[O+4>>1]!=6){break t}q=v[o+40>>2];if((q|0)==-1){break t}v[a+324>>2]=r|4;q=v[a+8>>2]+B(q,36)|0;ca=z[q+20>>2];_=z[q+8>>2];Q=z[q+32>>2];ka=A[a+64>>3];la=A[a+88>>3];ma=A[a+48>>3];da=A[a+72>>3];T=A[a+56>>3];U=A[a+80>>3];R=z[a+268>>2];W=z[a+260>>2];X=z[a+264>>2];F=z[q+12>>2];P=z[q>>2];L=C(F-P);G=z[q+28>>2];N=z[q+4>>2];I=C(G-N);M=z[q+24>>2];p=C(M-P);J=z[q+16>>2];s=C(J-N);Y=C(C(L*I)-C(p*s));z[a+128>>2]=Y;E=C(ca-_);S=C(E*p);p=C(Q-_);S=C(S-C(p*L));z[a+124>>2]=S;L=C(C(s*p)-C(I*E));z[a+120>>2]=L;I=C(C(_*R)+C(C(P*W)+C(N*X)));J=C(C(ca*R)+C(C(F*W)+C(X*J)));p=I>J?I:J;s=C(C(Q*R)+C(C(M*W)+C(X*G)));E=C(C(R*C((ka+la)*.5))+C(C(W*C((ma+da)*.5))+C(X*C((T+U)*.5))));z[a+148>>2]=(p>s?p:s)+E;p=I>2]=(pC(0))){break t}p=C(C(1)/p);z[a+128>>2]=Y*p;z[a+124>>2]=S*p;z[a+120>>2]=L*p}v[n>>2]=H;v[m>>2]=O;Ba[v[v[O>>2]+76>>2]](o+96|0,O);Ba[v[v[H>>2]+80>>2]](o+240|0,H);I=z[o+120>>2];M=z[o+116>>2];W=z[o+248>>2];X=z[o+240>>2];_=z[o+244>>2];Y=z[o+252>>2];J=z[o+112>>2];$=z[o+96>>2];F=z[o+256>>2];Z=z[o+108>>2];aa=z[o+100>>2];L=z[o+264>>2];R=z[o+104>>2];G=z[o+260>>2];T=A[o>>3];U=A[o+8>>3];p=C(A[o+16>>3]);z[a+212>>2]=p;s=C(U);z[a+208>>2]=s;E=C(T);z[a+204>>2]=E;S=C(C(C($*_)+C(C(Z*W)+C(R*Y)))-C(X*aa));N=I;ca=C(L+L);Q=C(F+F);P=C(G+G);G=C(C(R*ca)+C(C($*Q)+C(aa*P)));I=C(C(Z*Z)+C(-.5));p=C(p-C(N+C(C(R*G)+C(C(ca*I)+C(Z*C(C($*P)-C(Q*aa)))))));N=C(p+p);F=C(C(C(aa*W)+C(C(Z*X)+C($*Y)))-C(_*R));p=C(E-C(J+C(C($*G)+C(C(Q*I)+C(Z*C(C(aa*ca)-C(P*R)))))));L=C(p+p);J=C(C(C(R*X)+C(C(Z*_)+C(aa*Y)))-C(W*$));p=C(s-C(M+C(C(aa*G)+C(C(P*I)+C(Z*C(C(R*Q)-C(ca*$)))))));s=C(p+p);E=C(C(S*N)+C(C(F*L)+C(J*s)));M=C(C(C(C(Z*Y)-C(X*$))-C(aa*_))-C(R*W));p=C(C(M*M)+C(-.5));z[a+200>>2]=C(S*E)+C(C(N*p)-C(M*C(C(F*s)-C(L*J))));z[a+196>>2]=C(J*E)+C(C(s*p)-C(M*C(C(S*L)-C(N*F))));z[a+192>>2]=C(F*E)+C(C(L*p)-C(M*C(C(J*N)-C(s*S))));V=0;break s}V=0;u:{if(x[O+4>>1]!=6|ja){break u}q=v[o+40>>2];if((q|0)==-1){break u}v[a+324>>2]=v[a+324>>2]|8;q=v[a+8>>2]+B(q,36)|0;G=z[q+20>>2];I=z[q+32>>2];L=z[q+8>>2];p=z[q>>2];M=C(z[q+12>>2]-p);E=z[q+4>>2];J=C(z[q+28>>2]-E);p=C(z[q+24>>2]-p);s=C(z[q+16>>2]-E);F=C(C(M*J)-C(p*s));z[a+140>>2]=F;E=C(G-L);N=C(E*p);p=C(I-L);G=C(N-C(p*M));z[a+136>>2]=G;s=C(C(s*p)-C(J*E));z[a+132>>2]=s;p=C(K(C(C(F*F)+C(C(s*s)+C(G*G)))));if(p>C(0)){p=C(C(1)/p);F=C(F*p);z[a+140>>2]=F;G=C(G*p);z[a+136>>2]=G;s=C(s*p);z[a+132>>2]=s}if(!w[a+300|0]|!(C(C(F*z[a+268>>2])+C(C(s*z[a+260>>2])+C(G*z[a+264>>2])))>2];na=H,oa=Ba[v[v[r>>2]+16>>2]](r)|0,v[na+8>>2]=oa;q=v[o+12>>2];v[H+24>>2]=v[o+8>>2];v[H+28>>2]=q;q=v[o+20>>2];v[H+32>>2]=v[o+16>>2];v[H+36>>2]=q;q=v[o+4>>2];v[H+16>>2]=v[o>>2];v[H+20>>2]=q;z[H+40>>2]=z[o+24>>2];z[H+44>>2]=z[o+28>>2];z[H+48>>2]=z[o+32>>2];z[H+52>>2]=z[o+56>>2];z[H+56>>2]=z[o+60>>2];z[H+60>>2]=z[o+64>>2];z[H+64>>2]=ba;q=v[o+48>>2];v[H+68>>2]=v[q+4>>2];v[H+72>>2]=v[q+8>>2];v[H+76>>2]=v[o+44>>2];q=v[r+72>>2];if(q){Ba[v[v[q>>2]>>2]](q,H+8|0)}q=v[r+76>>2];if(q){Ba[v[v[q>>2]>>2]](H,q,v[H+68>>2],v[H+72>>2]);q=w[H|0]}else{q=0}xa=H+80|0;q=!(q&2)}M=z[a+268>>2];J=z[a+260>>2];s=z[a+264>>2];z[a+308>>2]=C(C(A[o+16>>3])*M)+C(C(C(A[o>>3])*J)+C(s*C(A[o+8>>3])));E=z[o+36>>2];p=z[a+276>>2];if(E>p){p=C(E-p);A[o+72>>3]=A[o+72>>3]+ +C(p*z[o+56>>2]);A[o+80>>3]=A[o+80>>3]+ +C(p*z[o+60>>2]);A[o+88>>3]=A[o+88>>3]+ +C(p*z[o+64>>2])}F=z[o+32>>2];I=z[o+28>>2];G=z[o+24>>2];v:{if(!V&(!(w[a+324|0]&2)|v[a+240>>2]==1)){break v}p=C(C(F*M)+C(C(G*J)+C(s*I)));F=C(F-C(M*p));G=C(G-C(J*p));I=C(I-C(s*p));p=C(K(C(C(F*F)+C(C(G*G)+C(I*I)))));if(!(p>C(0))){break v}p=C(C(1)/p);F=C(F*p);I=C(I*p);G=C(G*p)}r=v[a+324>>2]&64;s=z[o+64>>2];E=z[o+56>>2];p=z[o+60>>2];J=C(C(s*F)+C(C(E*G)+C(I*p)));s=C(s-C(C(F+F)*J));Q=C(E-C(C(G+G)*J));P=C(p-C(C(I+I)*J));p=C(K(C(C(s*s)+C(C(Q*Q)+C(P*P)))));if(p>C(0)){p=C(C(1)/p);s=C(s*p);Q=C(Q*p);P=C(P*p)}h=((l|0)!=2?-1:q?-1:ha?-1:8)+h|0;p=C(C(s*F)+C(C(Q*G)+C(I*P)));F=C(s-C(F*p));I=C(P-C(I*p));G=C(Q-C(G*p));da=A[o+88>>3];T=A[o+80>>3];U=A[o+72>>3];w:{if(!r){break w}p=C(K(C(C(F*F)+C(C(G*G)+C(I*I)))));if(!(p>C(0))){break w}p=C(C(1)/p);F=C(F*p);I=C(I*p);G=C(G*p)}ha=ha+1|0;p=C(ga-da);N=C(p*p);p=C(ea-U);s=C(p*p);p=C(fa-T);p=C(K(C(N+C(s+C(p*p)))));ga=da+ +C(p*F);fa=T+ +C(p*I);ea=U+ +C(p*G);q=1;if(h){continue}break}}if(i){v[i>>2]=ha}a=v[o+76>>2];v[e+8>>2]=v[o+72>>2];v[e+12>>2]=a;a=v[o+92>>2];v[e+24>>2]=v[o+88>>2];v[e+28>>2]=a;a=v[o+84>>2];v[e+16>>2]=v[o+80>>2];v[e+20>>2]=a}xa=o+272|0;return q&1}function xy(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=0,n=0,o=0,p=C(0),q=C(0),r=0,s=0,y=0,A=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=0,U=C(0),V=0,W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=0,aa=0,ba=C(0),ca=0,da=C(0),ea=C(0),fa=0,ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=0,Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0);o=xa-48|0;xa=o;y=v[a+16>>2];u[y+22>>1]=0;v[c+4112>>2]=0;v[o+44>>2]=1065353216;v[o+40>>2]=1065353216;v[o+36>>2]=1065353216;v[o+32>>2]=1065353216;t[o+31|0]=0;t[o+30|0]=0;R=c+16|0;k=z[v[a+28>>2]+76>>2];j=z[v[a+32>>2]+76>>2];$=ty(R,b,o+31|0,o+30|0,o+44|0,o+40|0,o+36|0,o+32|0,j>k?k:j);a:{if(!$){t[a+140|0]=0;v[a+136>>2]=0;a=1;break a}S=c+11812|0;v[S>>2]=0;v[S+4>>2]=0;M=c+4128|0;$z(M,R,v[c+4112>>2]);s=a+36|0;m=a- -64|0;aA(M,R,s,m,0,0);b:{c:{d:{e:{f:{n=v[c+11816>>2];if(!n){break f}ca=(h|0)==1?1:2;H=(v[a+96>>2]|v[a+92>>2])&8;aa=H?7:6;S=H?112:48;h=0;while(1){Y=v[((h<<2)+c|0)+11424>>2];g:{if(!Y){break g}V=(Y<<2)+12&-16;T=(B(S,Y)+r|0)+80|0;if(!(t[(B(h,104)+c|0)+6945|0]&1)){r=(T+V|0)+(B(Y,ca)<>2]>>2]](g,fa+16|0)|0;g=S+1>>>0<2;if(g){break e}t[a+140|0]=0;v[a+136>>2]=0;v[y+24>>2]=S;t[b+12|0]=$;u[y+22>>1]=h>>>4;n=v[a+32>>2];h=v[a+28>>2];if(!H){break c}b=v[a+20>>2];u[o+24>>1]=x[y+8>>1];v[o+20>>2]=h;v[o+16>>2]=b;b=v[a+24>>2];u[o+8>>1]=x[y+10>>1];v[o+4>>2]=n;v[o>>2]=b;c=S;Z=z[o+44>>2];F=z[o+36>>2];ba=z[o+40>>2];G=z[o+32>>2];j=z[a+128>>2];r=0;$=0;h=xa-480|0;xa=h;z[h+464>>2]=z[a+132>>2];y=o+16|0;g=x[y+8>>1];h:{if((g|0)==65535){f=z[v[y+4>>2]+68>>2];break h}b=v[y>>2];f=C(Ba[v[v[b>>2]+124>>2]](b,g))}g=x[o+8>>1];if((g|0)==65535){k=z[v[o+4>>2]+68>>2]}else{b=v[o>>2];k=C(Ba[v[v[b>>2]+124>>2]](b,g))}z[h+448>>2]=(f>k?f:k)/d;z[h+432>>2]=j;z[h+416>>2]=e;ky(h+384|0,y);ky(h+352|0,o);z[h+336>>2]=d;z[h+320>>2]=d*C(.800000011920929);d=z[s+24>>2];b=v[s+20>>2];a=v[s+16>>2];v[h+316>>2]=0;z[h+312>>2]=d;v[h+304>>2]=a;v[h+308>>2]=b;d=z[m+24>>2];b=v[m+20>>2];a=v[m+16>>2];v[h+300>>2]=0;z[h+296>>2]=d;v[h+288>>2]=a;v[h+292>>2]=b;Y=v[M+7688>>2];z[h+272>>2]=Z;z[h+256>>2]=ba;z[h+240>>2]=F;z[h+224>>2]=G;i:{if(!Y){break i}a=S;while(1){g=(r<<2)+M|0;b=v[g+7296>>2];j:{if(!b){break j}g=v[g+7424>>2];m=(x[B(g,44)+M>>1]<<6)+R|0;j=z[m>>2];f=z[m+4>>2];e=z[m+8>>2];v[h+140>>2]=0;z[h+136>>2]=e;z[h+132>>2]=f;z[h+128>>2]=j;z[h+96>>2]=z[m+60>>2];t[a|0]=3;t[a+1|0]=b;z[a+8>>2]=z[h+272>>2];d=z[h+256>>2];t[a+36|0]=0;z[a+28>>2]=G;z[a+4>>2]=F;z[a+12>>2]=d;z[a+24>>2]=e;z[a+20>>2]=f;z[a+16>>2]=j;a=a+48|0;if((g|0)==65535){break j}while(1){s=B(g,44)+M|0;m=w[s+5|0];if(m){b=(x[s>>1]<<6)+R|0;g=0;while(1){vy(h- -64|0,y,o,h+272|0,h+256|0,h+240|0,h+224|0,h+304|0,h+288|0,h+128|0,h+336|0,h+320|0,h+432|0,h+448|0,h+96|0,h+416|0,b+(g<<6)|0,a,h+464|0,i,h+384|0,h+352|0);a=a+112|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}g=x[s+2>>1];if((g|0)!=65535){continue}break}}r=r+1|0;if((Y|0)!=(r|0)){continue}break}if(!Y){break i}while(1){b=($<<2)+M|0;g=v[b+7296>>2];if(g){u[c+2>>1]=a-c;aa=b+7424|0;b=(x[B(v[aa>>2],44)+M>>1]<<6)+R|0;j=z[b+44>>2];J=z[b+8>>2];A=z[b>>2];I=z[b+4>>2];b=w[b+48|0];s=w[c+1|0];t[a+3|0]=0;t[a+1|0]=g;m=b&1;t[a+2|0]=m?0:B(g,ca);g=g<<2;b=I9(a+32|0,0,g);jy(h+128|0,y);jy(h+96|0,o);p=C(0);l=C(0);k=C(0);f=C(z[h+136>>2]-z[h+104>>2]);e=C(z[h+128>>2]-z[h+96>>2]);d=C(z[h+132>>2]-z[h+100>>2]);q=C(C(J*f)+C(C(A*e)+C(I*d)));f=C(f-C(J*q));e=C(e-C(A*q));d=C(d-C(I*q));T=C(C(f*f)+C(C(e*e)+C(d*d)))>C(9999999747378752e-21);n=C(D(A))C(0)){d=C(C(1)/C(K(d)));k=C(q*d);p=C(f*d);l=C(e*d)}T=B(s,112)+c|0;b=b+(g+12&-16)|0;z[h+196>>2]=l;z[h+192>>2]=p;z[h+212>>2]=C(p*I)-C(A*l);z[h+200>>2]=k;z[h+208>>2]=C(k*A)-C(J*p);z[h+204>>2]=C(l*J)-C(I*k);k:{if(m){break k}z[a+20>>2]=G;z[a+16>>2]=F;z[a+12>>2]=ba;z[a+8>>2]=Z;z[a+4>>2]=j;t[a|0]=12;g=0;Da=1;a=v[aa>>2];if((a|0)==65535){break k}while(1){H=B(a,44)+M|0;n=w[H+5|0];if(n){aa=(x[H>>1]<<6)+R|0;c=0;while(1){if(ca){f=z[h+368>>2];a=aa+(c<<6)|0;l=z[a+20>>2];E=C(l-z[h+292>>2]);k=z[a+16>>2];N=C(k-z[h+288>>2]);e=z[h+372>>2];L=C(z[h+360>>2]+C(C(f*E)-C(N*e)));d=z[h+376>>2];j=z[a+24>>2];O=C(j-z[h+296>>2]);ga=C(z[h+356>>2]+C(C(d*N)-C(O*f)));da=C(z[h+352>>2]+C(C(e*O)-C(E*d)));f=z[h+400>>2];P=C(l-z[h+308>>2]);Q=C(k-z[h+304>>2]);e=z[h+404>>2];ha=C(z[h+392>>2]+C(C(f*P)-C(Q*e)));d=z[h+408>>2];W=C(j-z[h+312>>2]);ea=C(z[h+388>>2]+C(C(d*Q)-C(W*f)));ia=C(z[h+384>>2]+C(C(e*W)-C(P*d)));ja=z[a+32>>2];ka=z[a+40>>2];A=z[a+36>>2];I=C(-E);J=C(-N);q=C(-O);p=C(-P);l=C(-Q);k=C(-W);V=0;while(1){a=b;b=(h+192|0)+B(g,12)|0;f=z[b>>2];e=z[b+4>>2];d=z[b+8>>2];v[h+188>>2]=0;z[h+184>>2]=d;z[h+180>>2]=e;z[h+176>>2]=f;v[h+172>>2]=0;z[h+168>>2]=C(Q*e)+C(f*p);z[h+164>>2]=C(W*f)+C(d*l);z[h+160>>2]=C(P*d)+C(e*k);s=h- -64|0;my(s,h+176|0,h+160|0,y);v[h+28>>2]=0;z[h+24>>2]=-z[h+184>>2];z[h+20>>2]=-z[h+180>>2];z[h+16>>2]=-z[h+176>>2];v[h+12>>2]=0;z[h+8>>2]=-C(C(N*e)+C(f*I));z[h+4>>2]=-C(C(O*f)+C(d*J));z[h>>2]=-C(C(E*d)+C(e*q));m=h+32|0;b=h+16|0;my(m,b,h,o);ny(b,y,s,h+128|0,h+272|0,h+240|0,o,m,h+96|0,h+256|0,h+224|0,i);_=z[h+184>>2];U=z[h+176>>2];X=z[h+180>>2];d=C(C(ka*_)+C(C(ja*U)+C(A*X)));l:{if(x[y+8>>1]==65535){d=C(d+C(C(ha*_)+C(C(ia*U)+C(ea*X))));break l}if(x[o+8>>1]!=65535){break l}d=C(d-C(C(L*_)+C(C(da*U)+C(ga*X))))}g=1-g|0;b=a+128|0;f=z[h+16>>2];e=z[h+88>>2];m=v[h+84>>2];v[a+16>>2]=v[h+80>>2];v[a+20>>2]=m;z[a+24>>2]=e;z[a+28>>2]=f>C(0)?C(C(1)/f):C(0);j=z[h+48>>2];f=z[h+56>>2];e=z[h+52>>2];z[a>>2]=U;z[a+4>>2]=X;z[a+8>>2]=_;z[a+48>>2]=d;v[a+12>>2]=0;v[a+44>>2]=0;z[a+36>>2]=-e;z[a+40>>2]=-f;z[a+32>>2]=-j;m=v[h+132>>2];v[a+64>>2]=v[h+128>>2];v[a+68>>2]=m;m=v[h+140>>2];v[a+72>>2]=v[h+136>>2];v[a+76>>2]=m;m=v[h+148>>2];v[a+80>>2]=v[h+144>>2];v[a+84>>2]=m;m=v[h+156>>2];v[a+88>>2]=v[h+152>>2];v[a+92>>2]=m;m=v[h+100>>2];v[a+96>>2]=v[h+96>>2];v[a+100>>2]=m;m=v[h+108>>2];v[a+104>>2]=v[h+104>>2];v[a+108>>2]=m;m=v[h+116>>2];v[a+112>>2]=v[h+112>>2];v[a+116>>2]=m;m=v[h+124>>2];v[a+120>>2]=v[h+120>>2];v[a+124>>2]=m;V=V+1|0;if((ca|0)!=(V|0)){continue}break}}c=c+1|0;if((n|0)!=(c|0)){continue}break}}a=x[H+2>>1];if((a|0)!=65535){continue}break}}c=T+48|0;a=b}$=$+1|0;if((Y|0)!=($|0)){continue}break}}xa=h+480|0;break b}fa=0;t[a+140|0]=0;v[a+136>>2]=0;break d}v[a+136>>2]=0;u[y+22>>1]=0;v[y+24>>2]=0;t[a+140|0]=0;a=0;if(g){break a}}v[y+24>>2]=0;t[b+12|0]=$;u[y+22>>1]=fa>>>4;a=1;break a}g=S;V=v[c+11816>>2];if(V){k=z[h+68>>2];j=z[n+68>>2];W=j>2]==2;aa=b?11:10;s=b?5:1;ga=C(d*C(.800000011920929));la=C(z[o+44>>2]*z[h+12>>2]);Ea=z[n- -64>>2];Fa=z[n+60>>2];Ga=z[n+56>>2];Ha=z[n+52>>2];Ia=z[n+48>>2];Ja=z[n+44>>2];Ka=z[n+40>>2];La=z[n+36>>2];Ma=z[h- -64>>2];Na=z[h+60>>2];Oa=z[h+56>>2];Pa=z[h+52>>2];Qa=z[h+48>>2];Ra=z[h+44>>2];Sa=z[h+40>>2];Ta=z[h+36>>2];Ua=z[n+24>>2];Va=z[n+20>>2];Wa=z[h+24>>2];Xa=z[h+20>>2];Ya=z[a+88>>2];Za=z[a+84>>2];_a=z[a+80>>2];$a=z[a+60>>2];ab=z[a+56>>2];bb=z[a+52>>2];cb=z[n+32>>2];db=z[h+32>>2];eb=z[n+16>>2];fb=z[h+16>>2];ua=z[n+8>>2];va=z[n+4>>2];wa=z[n>>2];ya=z[h+8>>2];za=z[h+4>>2];Aa=z[h>>2];da=z[a+132>>2];ha=z[a+128>>2];m=w[a+126|0];i=v[a+112>>2];ma=z[o+32>>2];na=z[o+36>>2];Ca=C(z[n+12>>2]*C(-z[o+40>>2]));gb=C(-Ca);a=0;while(1){h=(a<<2)+c|0;b=v[h+11424>>2];m:{if(!b){break m}h=v[h+11552>>2];n=(x[B(h,44)+M>>1]<<6)+R|0;_=z[n+60>>2];F=z[n>>2];G=z[n+4>>2];E=z[n+8>>2];t[g|0]=s;z[g+12>>2]=gb;z[g+8>>2]=la;z[g+28>>2]=ma;z[g+4>>2]=na;t[g+36|0]=m;z[g+24>>2]=E;z[g+20>>2]=G;z[g+16>>2]=F;v[g+32>>2]=i;t[g+1|0]=b;g=g+48|0;if((h|0)==65535){break m}ea=C(C(C(C(Aa*F)-C(wa*F))+C(C(za*G)-C(va*G)))+C(C(ya*E)-C(ua*E)));j=C(C(E*E)+C(C(F*F)+C(G*G)));ia=C(Ca*j);ja=C(la*j);while(1){T=B(h,44)+M|0;h=w[T+5|0];if(h){b=(x[T>>1]<<6)+R|0;r=0;while(1){H=b+(r<<6)|0;ka=z[H+40>>2];A=z[H+36>>2];I=z[H+32>>2];J=z[H+12>>2];q=z[H+16>>2];k=C(q-bb);p=z[H+20>>2];j=C(p-ab);l=C(C(k*G)-C(F*j));N=(l>C(0)?l:C(-l))>2];j=C(l-$a);L=C(L-C(G*j));O=(L>C(0)?L:C(-L))C(0)?j:C(-j))C(0)?p:C(-p))C(0)?l:C(-l))C(0)?j:C(-j))C(0)?C(C(1)/j):C(0);z[g+32>>2]=p;k=C(C(ea+C(C(N*Wa)+C(C(O*fb)+C(Xa*P))))-C(C(Q*Ua)+C(C(l*eb)+C(Va*k))));j=C(-k);l=C(J-ha);n=_>C(0)&e>k&j>C(l*d);k=C(p*C(C(C(C(E*ka)+C(C(F*I)+C(G*A)))+(n?C(_*j):C(0)))-k));j=C(ga*l);j=C((j>2]=k-j;z[g+40>>2]=k+(n?C(0):C(-(j>C(0)?j:C(0))));j=z[H+28>>2];v[g+28>>2]=0;z[g+24>>2]=ba;z[g+20>>2]=q;z[g+16>>2]=L;v[g+12>>2]=0;z[g+8>>2]=U;z[g+4>>2]=Z;z[g>>2]=X;z[g+44>>2]=j;g=g+48|0;r=r+1|0;if((h|0)!=(r|0)){continue}break}}h=x[T+2>>1];if((h|0)!=65535){continue}break}}a=a+1|0;if((V|0)!=(a|0)){continue}break}F=C(za-va);G=C(Aa-wa);E=C(ya-ua);a=S;b=0;while(1){h=(b<<2)+c|0;n=v[h+11424>>2];if(n){s=h+11552|0;h=x[B(v[s>>2],44)+M>>1];u[a+2>>1]=g-a;h=(h<<6)+R|0;d=z[h+44>>2];h=w[h+48|0];m=w[a+1|0];t[g+1|0]=n;i=h&1;t[g+2|0]=i?0:B(n,ca);h=n<<2;h=I9(g+32|0,0,B(h,ca))+(h+12&-16)|0;a=(B(m,48)+a|0)+48|0;n:{if(i){break n}r=v[s>>2];i=(x[B(r,44)+M>>1]<<6)+R|0;A=z[i+4>>2];q=z[i>>2];k=z[i+8>>2];z[g+20>>2]=ma;z[g+16>>2]=na;z[g+12>>2]=gb;z[g+8>>2]=la;z[g+4>>2]=d;t[g|0]=aa;if((r|0)==65535){break n}e=C(C(k*E)+C(C(q*G)+C(F*A)));d=C(F-C(A*e));i=C(D(q))C(9999999747378752e-21);d=g?d:i?C(-k):q;l=d;j=g?j:i?A:C(0);e=g?e:i?C(0):C(-A);d=C(C(1)/C(K(C(C(j*j)+C(C(e*e)+C(d*d))))));p=C(l*d);l=C(j*d);J=C(C(p*k)-C(A*l));j=k;k=C(e*d);I=C(C(l*q)-C(j*k));q=C(C(k*A)-C(q*p));while(1){s=B(r,44)+M|0;m=w[s+5|0];if(m){i=(x[s>>1]<<6)+R|0;r=0;d=l;e=p;j=k;while(1){g=i+(r<<6)|0;k=z[g+16>>2];l=C(k-_a);W=(l>C(0)?l:C(-l))C(0)?k:C(-k))>2];k=C(l-Za);Z=(k>C(0)?k:C(-k))>2];p=C(k-Ya);L=(p>C(0)?p:C(-p))C(0)?l:C(-l))C(0)?k:C(-k))>2];ka=z[g+40>>2];A=z[g+36>>2];g=0;while(1){k=J;p=I;l=q;v[h+12>>2]=0;z[h+8>>2]=d;I=e;z[h+4>>2]=e;z[h>>2]=j;v[h+44>>2]=0;oa=C(C(W*e)+C(j*ba));q=d;pa=C(C(Z*d)+C(e*ga));qa=C(C(L*j)+C(d*_));N=C(C(Ea*oa)+C(C(Ka*pa)+C(Ha*qa)));z[h+40>>2]=N;O=C(C(Fa*oa)+C(C(La*pa)+C(Ia*qa)));z[h+36>>2]=O;P=C(C(Ga*oa)+C(C(cb*pa)+C(Ja*qa)));z[h+32>>2]=P;J=j;ra=C(C(U*e)+C(j*ha));sa=C(C(da*d)+C(e*ia));ta=C(C(ea*j)+C(d*X));Q=C(C(Ma*ra)+C(C(Sa*sa)+C(Pa*ta)));z[h+24>>2]=Q;j=C(C(Na*ra)+C(C(Ta*sa)+C(Qa*ta)));z[h+20>>2]=j;e=C(C(Oa*ra)+C(C(db*sa)+C(Ra*ta)));z[h+16>>2]=e;z[h+48>>2]=C(C(ka*d)+C(C(ja*J)+C(A*I)))-C(C(C(C(d*ya)+C(C(J*Aa)+C(za*I)))+C(C(ra*Wa)+C(C(sa*fb)+C(Xa*ta))))-C(C(C(d*ua)+C(C(J*wa)+C(va*I)))+C(C(oa*Ua)+C(C(pa*eb)+C(Va*qa)))));d=C(C(la+C(na*C(C(Q*Q)+C(C(e*e)+C(j*j)))))+C(C(ma*C(C(N*N)+C(C(P*P)+C(O*O))))-Ca));z[h+28>>2]=-(d>C(0)?C(C(1)/d):C(0));h=h- -64|0;d=l;e=p;j=k;g=g+1|0;if((ca|0)!=(g|0)){continue}break}Da=1;r=r+1|0;if((m|0)!=(r|0)){continue}break}}r=x[s+2>>1];if((r|0)!=65535){continue}break}}g=h}b=b+1|0;if((V|0)!=(b|0)){continue}break}}t[g|0]=0}a=S+fa|0;v[a>>2]=0;v[a+4>>2]=0-Da;a=1}xa=o+48|0;return a}function R$(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=0,m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,y=C(0),A=C(0),E=0,F=C(0),G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=0,U=0,V=C(0),W=0,X=0,Y=C(0),Z=0,_=C(0),$=C(0),aa=0,ba=C(0),ca=0,da=C(0),ea=C(0),fa=C(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=xa-192|0;xa=l;k=z[d+24>>2];F=z[d>>2];z[l+160>>2]=F;A=z[d+4>>2];z[l+164>>2]=A;n=z[d+8>>2];z[l+168>>2]=n;r=z[d+12>>2];z[l+172>>2]=r;y=z[d+16>>2];z[l+176>>2]=y;q=z[d+20>>2];z[l+180>>2]=q;M=C(k+i);z[l+184>>2]=M;d=0;d=z[b+4>>2]!=C(1)|z[b+8>>2]!=C(1)?d:z[b+12>>2]==C(1);m=x[h>>1];j=w[b+32|0];i=z[c+8>>2];H=z[c+24>>2];k=C(n-H);I=C(k+k);n=z[c>>2];Q=z[c+16>>2];k=C(F-Q);J=C(k+k);V=z[c+20>>2];k=C(A-V);O=C(k+k);k=z[c+4>>2];p=C(C(i*I)+C(C(n*J)+C(O*k)));F=z[c+12>>2];A=C(C(F*F)+C(-.5));_=C(C(i*p)+C(C(I*A)-C(F*C(C(n*O)-C(J*k)))));q=C(q-H);q=C(q+q);r=C(r-Q);r=C(r+r);y=C(y-V);y=C(y+y);Y=C(C(i*q)+C(C(n*r)+C(k*y)));$=C(C(i*Y)+C(C(q*A)-C(F*C(C(n*y)-C(r*k)))));z[l+152>>2]=C(_+$)*C(.5);R=C(C(k*p)+C(C(O*A)-C(F*C(C(i*J)-C(I*n)))));S=C(C(k*Y)+C(C(y*A)-C(F*C(C(i*r)-C(q*n)))));z[l+148>>2]=C(R+S)*C(.5);L=C(C(n*p)+C(C(J*A)-C(F*C(C(k*I)-C(O*i)))));q=C(C(n*Y)+C(C(r*A)-C(F*C(C(k*q)-C(y*i)))));z[l+144>>2]=C(L+q)*C(.5);I=z[e+8>>2];I=C(I+I);J=z[e>>2];J=C(J+J);O=z[e+4>>2];O=C(O+O);p=C(C(i*I)+C(C(n*J)+C(k*O)));z[l+136>>2]=C(i*p)+C(C(I*A)-C(F*C(C(n*O)-C(J*k))));z[l+132>>2]=C(k*p)+C(C(O*A)-C(F*C(C(i*J)-C(I*n))));z[l+128>>2]=C(n*p)+C(C(J*A)-C(F*C(C(k*I)-C(O*i))));z[l+120>>2]=M+C(C(D(C(_-$)))*C(.5));z[l+116>>2]=M+C(C(D(C(R-S)))*C(.5));z[l+112>>2]=M+C(C(D(C(L-q)))*C(.5));a:{if(!d){xX(l+8|0,c,b+4|0);d=v[l+32>>2];v[l+84>>2]=v[l+28>>2];v[l+88>>2]=d;d=v[l+40>>2];v[l+92>>2]=v[l+36>>2];v[l+96>>2]=d;z[l+108>>2]=z[l+52>>2];z[l+64>>2]=z[l+8>>2];d=v[l+16>>2];v[l+68>>2]=v[l+12>>2];v[l+72>>2]=d;d=v[l+24>>2];v[l+76>>2]=v[l+20>>2];v[l+80>>2]=d;d=v[l+48>>2];v[l+100>>2]=v[l+44>>2];v[l+104>>2]=d;d=xa-112|0;xa=d;V=z[l+152>>2];Y=z[l+136>>2];_=z[l+144>>2];$=z[l+128>>2];R=z[l+148>>2];S=z[l+132>>2];i=z[b+8>>2];k=z[b+4>>2];z[d+8>>2]=C(1)/z[b+12>>2];z[d+4>>2]=C(1)/i;z[d>>2]=C(1)/k;z[d+12>>2]=z[b+16>>2];z[d+16>>2]=z[b+20>>2];z[d+20>>2]=z[b+24>>2];z[d+24>>2]=z[b+28>>2];IX(d+32|0,d,d+12|0);i=z[l+120>>2];k=z[l+112>>2];n=z[l+116>>2];F=z[d- -64>>2];A=z[d+52>>2];M=z[d+56>>2];I=z[d+32>>2];J=z[d+44>>2];O=z[d+40>>2];p=z[l+144>>2];q=z[d+36>>2];r=z[l+148>>2];y=z[d+48>>2];H=z[l+152>>2];Q=z[d+60>>2];L=C(C(C(p*q)+C(r*y))+C(H*Q));z[l+148>>2]=L;ba=C(C(C(p*O)+C(r*A))+C(H*F));z[l+152>>2]=ba;p=C(C(C(p*I)+C(r*J))+C(H*M));z[l+144>>2]=p;z[l+120>>2]=C(C(D(C(O*k)))+C(D(C(n*A))))+C(D(C(i*F)));z[l+116>>2]=C(C(D(C(q*k)))+C(D(C(n*y))))+C(D(C(i*Q)));z[l+112>>2]=C(C(D(C(I*k)))+C(D(C(J*n))))+C(D(C(M*i)));i=C(_+C($*f));k=C(R+C(S*f));n=C(C(O*i)+C(A*k));A=C(V+C(Y*f));n=C(C(n+C(F*A))-ba);z[l+136>>2]=n;F=C(C(C(C(i*q)+C(k*y))+C(A*Q))-L);z[l+132>>2]=F;A=C(C(C(C(i*I)+C(k*J))+C(A*M))-p);z[l+128>>2]=A;i=C(0);xa=d+112|0;k=C(K(C(C(n*n)+C(C(A*A)+C(F*F)))));if(!(k>2]=n*i;z[l+132>>2]=F*i;z[l+128>>2]=A*i;i=k}k=C(i/f);break a}z[l+108>>2]=H;z[l+104>>2]=V;M=C(k+k);I=C(M*i);A=C(n+n);J=C(F*A);z[l+92>>2]=I-J;z[l+84>>2]=J+I;n=C(C(1)-C(n*A));I=C(k*M);z[l+96>>2]=n-I;p=n;n=C(i+i);J=C(i*n);z[l+80>>2]=p-J;z[l+100>>2]=Q;i=C(A*i);M=C(F*M);z[l+88>>2]=i+M;k=C(A*k);n=C(F*n);z[l+76>>2]=k-n;z[l+72>>2]=i-M;z[l+68>>2]=k+n;z[l+64>>2]=C(C(1)-I)-J;i=f;k=C(1)}o=l+144|0;s=l+128|0;d=C(C(z[b+4>>2]*z[b+8>>2])*z[b+12>>2])>2]=2;h=x[h>>1];z[N+16>>2]=k;t[N+12|0]=d;d=0;u[N+10>>1]=0;u[N+8>>1]=h;h=j&2;t[N+48|0]=h>>>1;v[N+44>>2]=e;v[N+40>>2]=l+160;z[N+36>>2]=f+C(.0010000000474974513);v[N+32>>2]=1073741824;z[N+28>>2]=f;v[N+24>>2]=l- -64;v[N+20>>2]=g;v[N>>2]=143788;t[N+49|0]=z[l+160>>2]!=z[l+172>>2]|z[l+164>>2]!=z[l+176>>2]?d:z[l+168>>2]==z[l+180>>2];z[g+40>>2]=f;K$(o,s,i,1,a,N,l+112|0);sa=(h|m&128)!=0;o=xa-96|0;xa=o;la=w[N+10|0];b:{if(!la){break b}if(w[N+11|0]){c:{d:{if(!(w[N+9|0]&2)){b=v[N+44>>2];u[g+12>>1]=1026;break d}a=v[N+40>>2];i=z[a+16>>2];k=z[a+20>>2];n=z[a>>2];F=z[a+12>>2];f=z[l+184>>2];A=z[a+4>>2];M=z[a+8>>2];v[o+76>>2]=0;z[o+72>>2]=k;z[o+68>>2]=i;v[o+60>>2]=0;z[o+56>>2]=M;z[o+52>>2]=A;z[o+80>>2]=f;t[o+32|0]=1;v[o+28>>2]=4;z[o+64>>2]=F;z[o+48>>2]=n;z[o+24>>2]=f;z[o+20>>2]=f;z[o+16>>2]=f;v[o+12>>2]=0;z[o>>2]=C(n+F)*C(.5);z[o+8>>2]=C(M+k)*C(.5);z[o+4>>2]=C(A+i)*C(.5);$=z[a+24>>2];F=C(0);A=C(0);M=C(0);I=C(0);J=C(0);O=C(0);j=xa-5696|0;xa=j;ma=v[v[b+36>>2]+56>>2];f=z[b+12>>2];i=z[b+8>>2];k=z[b+4>>2];v[j+1484>>2]=0;z[j+1456>>2]=$*C(1.149999976158142);na=b+4|0;xX(j+1408|0,c,na);v[j+1400>>2]=0;v[j+1392>>2]=0;v[j+1396>>2]=0;zw(j+1392|0,128);ba=C(f*C(k*i));d=268435455;e:{f:{while(1){g:{v[j+1396>>2]=0;a=v[o+52>>2];e=v[o+48>>2];z[j+1352>>2]=z[o+56>>2];v[j+1344>>2]=e;v[j+1348>>2]=a;a=v[o+68>>2];e=v[o+64>>2];f=z[o+72>>2];z[j+1368>>2]=$;z[j+1364>>2]=f;v[j+1356>>2]=e;v[j+1360>>2]=a;e=j+1280|0;wX(j+1344|0,e);a=v[b+36>>2];q_(j,e,c,na);v[j+5584>>2]=141620;v[j+5592>>2]=j+1392;v[j+5588>>2]=2;Ba[v[(x[a+4>>1]<<2)+141640>>2]](a,j,j+5584|0,1,1);h=v[j+1396>>2];if(!h){m=0;if(ga){break g}break e}a=h+31|0;if(a>>>0<=31){m=0;if(ga){break g}break e}oa=v[j+1392>>2];ta=a>>>5|0;f=C(34028234663852886e22);ca=0;e=h;ha=0;while(1){ia=ca<<5;a=h-ia|0;ja=a>>>0<32?a:32;h:{if(!ja){v[j+5688>>2]=v[j+1384>>2];a=v[j+1380>>2];v[j+5680>>2]=v[j+1376>>2];v[j+5684>>2]=a;W=0;break h}P=e>>>0<32?e:32;a=v[b+36>>2];T=w[a+64|0]&2;m=v[a+24>>2];X=v[a+28>>2];s=0;i=z[j+1452>>2];k=z[j+1448>>2];n=z[j+1444>>2];p=z[j+1440>>2];q=z[j+1436>>2];r=z[j+1432>>2];y=z[j+1428>>2];H=z[j+1424>>2];Q=z[j+1420>>2];V=z[j+1416>>2];Y=z[j+1412>>2];_=z[j+1408>>2];while(1){W=v[(s+ia<<2)+oa>>2];a=B(s,40)+j|0;i:{if(T){G=X+B(W,6)|0;E=x[G+4>>1];U=x[G+2>>1];G=x[G>>1];break i}G=X+B(W,12)|0;E=v[G+8>>2];U=v[G+4>>2];G=v[G>>2]}G=B(G,12)+m|0;R=z[G>>2];S=z[G+4>>2];L=z[G+8>>2];z[a+8>>2]=C(C(C(R*V)+C(S*y))+C(L*p))+i;z[a+4>>2]=C(C(C(R*Y)+C(S*H))+C(L*q))+k;z[a>>2]=C(C(C(R*_)+C(S*Q))+C(L*r))+n;Z=ba>2];S=z[G+4>>2];L=z[G+8>>2];z[a+20>>2]=i+C(C(C(V*R)+C(y*S))+C(p*L));z[a+16>>2]=k+C(C(C(Y*R)+C(H*S))+C(q*L));z[a+12>>2]=n+C(C(C(_*R)+C(Q*S))+C(r*L));U=m+B(Z?U:E,12)|0;R=z[U>>2];S=z[U+4>>2];L=z[U+8>>2];z[a+32>>2]=i+C(C(C(V*R)+C(y*S))+C(p*L));z[a+28>>2]=k+C(C(C(Y*R)+C(H*S))+C(q*L));z[a+24>>2]=n+C(C(C(_*R)+C(Q*S))+C(r*L));t[a+36|0]=ma?w[W+ma|0]:56;s=s+1|0;if((P|0)!=(s|0)){continue}break}v[j+5688>>2]=v[j+1384>>2];a=v[j+1380>>2];v[j+5680>>2]=v[j+1376>>2];v[j+5684>>2]=a;W=0;U=0;if(!ja){break h}while(1){v[j+1484>>2]=0;t[j+5616|0]=0;v[j+5608>>2]=2139095039;v[j+5612>>2]=5;v[j+5584>>2]=0;v[j+5588>>2]=0;v[j+5592>>2]=0;v[j+5596>>2]=0;v[j+5600>>2]=1017370378;v[j+5604>>2]=2139095039;a=B(U,40)+j|0;i=z[a>>2];k=z[a+4>>2];n=z[a+8>>2];v[j+5644>>2]=0;z[j+5640>>2]=n;z[j+5636>>2]=k;z[j+5632>>2]=i;p=z[a+12>>2];q=z[a+16>>2];r=z[a+20>>2];v[j+5660>>2]=0;z[j+5656>>2]=r;z[j+5652>>2]=q;z[j+5648>>2]=p;y=z[a+24>>2];H=z[a+28>>2];Q=z[a+32>>2];v[j+5676>>2]=0;z[j+5672>>2]=Q;z[j+5668>>2]=H;z[j+5664>>2]=y;E=w[a+36|0];j:{if(!sa){V=C(p-i);H=C(H-k);y=C(y-i);q=C(q-k);p=C(C(V*H)-C(y*q));L=p;R=C(p*p);p=q;q=C(Q-n);r=C(r-n);p=C(C(p*q)-C(H*r));q=C(C(r*y)-C(q*V));r=C(C(1)/C(K(C(R+C(C(p*p)+C(q*q))))));if(C(C(C(L*r)*C(z[o+8>>2]-n))+C(C(C(p*r)*C(z[o>>2]-i))+C(C(q*r)*C(z[o+4>>2]-k))))>2];v[m+128>>2]=v[s+48>>2];v[m+132>>2]=P;P=v[s+60>>2];v[m+136>>2]=v[s+56>>2];v[m+140>>2]=P;P=v[s+76>>2];v[m+120>>2]=v[s+72>>2];v[m+124>>2]=P;P=s- -64|0;T=v[P+4>>2];v[m+112>>2]=v[P>>2];v[m+116>>2]=T;T=v[s+92>>2];v[m+104>>2]=v[s+88>>2];v[m+108>>2]=T;T=v[s+84>>2];v[m+96>>2]=v[s+80>>2];v[m+100>>2]=T;p=z[s+80>>2];q=z[P>>2];r=z[s+68>>2];y=z[s+88>>2];H=z[s+84>>2];i=z[s+52>>2];k=z[s+56>>2];Q=z[s+72>>2];n=z[s+48>>2];v[m+92>>2]=0;q=C(q-n);H=C(H-i);n=C(p-n);p=C(r-i);i=C(C(q*H)-C(n*p));L=i;r=C(i*i);i=p;p=C(y-k);k=C(Q-k);i=C(C(i*p)-C(H*k));k=C(C(k*n)-C(p*q));n=C(C(1)/C(K(C(r+C(C(i*i)+C(k*k))))));z[m+88>>2]=L*n;z[m+84>>2]=k*n;z[m+80>>2]=i*n;s=j+1456|0;i=z[s>>2];P=o+48|0;T=o- -64|0;K1(m+16|0,P,T,m+128|0,m+112|0,m+96|0,m- -64|0,m+48|0,m+32|0);n=z[m+16>>2];if(n>2];if(k>2];if(iC(.9999989867210388))){break n}if(!(E&48)){break l}break m}i=z[m+32>>2];if(k>C(.9999989867210388)){if(E&24){break m}if(i=C(.9998999834060669)){break m}break l}if(!(E&32)){break l}}if(n==C(0)){E=v[m+92>>2];v[m+8>>2]=v[m+88>>2];v[m+12>>2]=E;E=v[m+84>>2];v[m>>2]=v[m+80>>2];v[m+4>>2]=E;break k}n=z[o+56>>2];r=z[o+72>>2];p=z[o+52>>2];H=z[o+68>>2];q=z[o+48>>2];Q=z[o+64>>2];v[m+12>>2]=0;L=n;y=C(r-n);n=z[m+64>>2];r=C(C(1)-C(k+i));y=C(C(L+C(y*n))-C(C(r*z[m+136>>2])+C(C(k*z[m+120>>2])+C(i*z[m+104>>2]))));q=C(C(q+C(C(Q-q)*n))-C(C(z[m+128>>2]*r)+C(C(k*z[m+112>>2])+C(i*z[m+96>>2]))));i=C(C(p+C(C(H-p)*n))-C(C(z[m+132>>2]*r)+C(C(k*z[m+116>>2])+C(i*z[m+100>>2]))));k=C(C(1)/C(K(C(C(y*y)+C(C(q*q)+C(i*i))))));z[m+8>>2]=y*k;z[m+4>>2]=i*k;z[m>>2]=q*k;break k}E=v[m+92>>2];v[m+8>>2]=v[m+88>>2];v[m+12>>2]=E;E=v[m+84>>2];v[m>>2]=v[m+80>>2];v[m+4>>2]=E}E=m+128|0;Z=m+112|0;aa=m+96|0;J1(E,Z,aa,m+80|0,m,a,P,T,s,X,G);I1(P,T,s,m,a,E,Z,X,G);I1(P,T,s,m,a,Z,aa,X,G);I1(P,T,s,m,a,E,aa,X,G)}xa=m+144|0;E=v[j+1484>>2];if(!E){break j}s=0;i=z[j+1532>>2];o:{if((E|0)==1){break o}G=E-1|0;X=G&3;W=0;m=1;if(E-2>>>0>=3){aa=G&-4;E=0;while(1){k=z[((m<<6)+j|0)+1532>>2];G=k>2];i=G?k:i;P=n>2];i=P?n:i;T=k>2];i=T?k:i;Z=n>2];E=ki)){break j}d=(j+1488|0)+(s<<6)|0;F=z[d+16>>2];A=z[d+32>>2];M=z[d+24>>2];I=z[d+20>>2];J=z[d+40>>2];O=z[d+36>>2];d=a;f=i}U=U+1|0;if((ja|0)!=(U|0)){continue}break}}v[j+1384>>2]=v[j+5688>>2];a=v[j+5684>>2];v[j+1376>>2]=v[j+5680>>2];v[j+1380>>2]=a;e=e-32|0;ha=W|ha;ca=ca+1|0;if((ta|0)!=(ca|0)){continue}break}if(!(ha&1)){m=0;if(ga){break g}break e}d=v[(d<<2)+oa>>2];f=C(f-z[o+80>>2]);if(!(f<=C(0))){if(ka){break g}z[g+36>>2]=J;z[g+32>>2]=O;z[g+28>>2]=A;z[g+24>>2]=M;z[g+20>>2]=I;z[g+16>>2]=F;v[g+40>>2]=0;v[g+8>>2]=d;break f}v[o+12>>2]=0;v[o+60>>2]=0;v[o+76>>2]=0;i=z[o+8>>2];k=C(J*f);n=C(i-k);z[o+8>>2]=n;p=z[o+4>>2];q=C(O*f);r=C(p-q);z[o+4>>2]=r;y=z[o>>2];f=C(A*f);H=C(y-f);z[o>>2]=H;y=C(H-y);z[o+48>>2]=y+z[o+48>>2];p=C(r-p);z[o+52>>2]=p+z[o+52>>2];i=C(n-i);z[o+56>>2]=i+z[o+56>>2];z[o+72>>2]=i+z[o+72>>2];z[o+68>>2]=p+z[o+68>>2];z[o+64>>2]=y+z[o+64>>2];da=C(da-k);ea=C(ea-q);fa=C(fa-f);ga=1;ka=ka+1|0;if((ka|0)!=4){continue}}break}z[g+24>>2]=M;z[g+20>>2]=I;z[g+16>>2]=F;v[g+8>>2]=d;f=C(K(C(C(da*da)+C(C(fa*fa)+C(ea*ea)))));z[g+40>>2]=-f;i=C(C(1)/f);a=f>C(0);z[g+36>>2]=a?C(da*i):C(0);z[g+32>>2]=a?C(ea*i):C(0);z[g+28>>2]=a?C(fa*i):C(0)}m=1}a=v[j+1400>>2];p:{if((a|0)<0|!(a&2147483647)){break p}a=v[j+1392>>2];if(!a){break p}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=j+5696|0;b=v[N+44>>2];u[g+12>>1]=1026;if(m){break c}}v[g+40>>2]=0;f=z[b>>2];i=z[b+4>>2];z[g+36>>2]=-z[b+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f;break b}if(z[g+40>>2]==C(0)){f=z[b>>2];i=z[b+4>>2];z[g+36>>2]=-z[b+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f}u[g+12>>1]=1027;break b}u[g+12>>1]=1027}xa=o+96|0;xa=l+192|0;return(la|0)!=0|0}function uv(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=C(0),m=C(0),n=0,o=C(0),p=0,q=0,r=C(0),s=C(0),u=C(0),y=0,A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;i=xa-11328|0;xa=i;E=z[d+20>>2];F=z[d+24>>2];M=z[c+20>>2];G=z[c+24>>2];p=v[f>>2];l=z[d>>2];o=z[d+4>>2];r=z[d+8>>2];m=z[d+12>>2];O=z[d+16>>2];I=z[c>>2];s=z[c+4>>2];D=z[c+8>>2];u=z[c+12>>2];H=z[c+16>>2];P=z[a+4>>2];z[i+11312>>2]=P;U=z[e>>2];z[i+11296>>2]=U;v[i+11292>>2]=0;z[i+11288>>2]=G;z[i+11284>>2]=M;z[i+11280>>2]=H;z[i+11276>>2]=u;z[i+11272>>2]=D;z[i+11268>>2]=s;z[i+11264>>2]=I;v[i+11260>>2]=0;z[i+11256>>2]=F;z[i+11252>>2]=E;z[i+11248>>2]=O;z[i+11244>>2]=m;z[i+11240>>2]=r;z[i+11236>>2]=o;z[i+11232>>2]=l;Q=C(C(C(D*l)-C(r*I))+C(C(s*m)-C(u*o)));R=C(C(C(s*r)-C(o*D))+C(C(I*m)-C(u*l)));J=C(C(C(I*o)-C(l*s))+C(C(D*m)-C(u*r)));V=C(-l);I=C(C(u*m)-C(C(C(I*V)-C(s*o))-C(r*D)));s=C(H-O);D=C(M-E);u=C(G-F);E=C(C(C(V*s)-C(D*o))-C(r*u));F=C(C(m*m)+C(-.5));M=C(C(C(F*s)+C(m*C(C(r*D)-C(o*u))))-C(l*E));M=C(M+M);G=C(M-z[p+16>>2]);G=G>C(0)?G:C(-G);O=C(C(C(F*D)+C(m*C(C(l*u)-C(r*s))))-C(o*E));O=C(O+O);H=C(O-z[p+20>>2]);H=H>C(0)?H:C(-H);H=H<=G?G:H;T=G;m=C(C(C(m*C(C(o*s)-C(l*D)))+C(F*u))-C(r*E));G=C(m+m);m=C(G-z[p+24>>2]);m=(m>C(0)?m:C(-m))>=C(0)?T:C(0);a:{if(C(C(I*z[p+12>>2])+C(C(J*z[p+8>>2])+C(C(R*z[p>>2])+C(Q*z[p+4>>2]))))>2]=P*C(.0010000000474974513);a=v[b+40>>2];o=z[d+8>>2];D=z[d+20>>2];F=z[c+20>>2];r=z[d+4>>2];u=z[d+24>>2];E=z[c+24>>2];m=z[d+12>>2];c=i+11200|0;v[c>>2]=0;v[c+4>>2]=1065353216;c=i+11192|0;v[c>>2]=0;v[c+4>>2]=0;c=i+11184|0;v[c>>2]=0;v[c+4>>2]=1065353216;c=i+11176|0;v[c>>2]=0;v[c+4>>2]=0;c=i+11168|0;v[c>>2]=1065353216;v[c+4>>2]=1065353216;c=i+11152|0;v[c>>2]=1065353216;v[c+4>>2]=0;t[i+11208|0]=0;v[i+11160>>2]=0;v[i+11164>>2]=0;v[i+11144>>2]=0;v[i+11148>>2]=0;v[i+11136>>2]=1065353216;v[i+11140>>2]=0;u=C(E-u);u=C(u+u);E=C(s+s);s=C(F-D);F=C(s+s);H=C(C(o*u)+C(C(l*E)+C(r*F)));T=C(C(m*m)+C(-.5));s=C(C(o*H)+C(C(u*T)-C(m*C(C(l*F)-C(E*r)))));D=C(C(r*H)+C(C(F*T)-C(m*C(C(o*E)+C(u*V)))));r=C(C(l*H)+C(C(E*T)-C(m*C(C(r*u)-C(F*o)))));u=C(1);c=z[b+4>>2]==C(1)&z[b+8>>2]==C(1)&z[b+12>>2]==C(1);if(!c){IX(i+11136|0,b+4|0,b+16|0)}v[p+28>>2]=0;z[p+24>>2]=G;z[p+20>>2]=O;z[p+16>>2]=M;z[p+12>>2]=I;z[p+8>>2]=J;z[p+4>>2]=Q;z[p>>2]=R;t[p+62|0]=0;t[i+11120|0]=1;v[i+11128>>2]=0;v[i+11132>>2]=1088;b=i+6768|0;v[i+11124>>2]=b;d=v[a+56>>2];v[i+1012>>2]=0;t[i+160|0]=c;v[i+156>>2]=d;v[i+148>>2]=2;v[i+144>>2]=144644;v[i+152>>2]=i+11136;q=y1(i+1024|0,i+11296|0,i+11216|0,i+11264|0,i+11232|0,p,g,b,h);v[i+4668>>2]=0;z[i+4664>>2]=s;z[i+4660>>2]=D;z[i+4656>>2]=r;b=i+6760|0;v[b>>2]=0;v[b+4>>2]=64;Y=i+4704|0;v[i+6756>>2]=Y;t[i+6752|0]=1;d=v[i+11316>>2];b=i+4672|0;v[b>>2]=v[i+11312>>2];v[b+4>>2]=d;d=v[i+11324>>2];b=i+4680|0;v[b>>2]=v[i+11320>>2];v[b+4>>2]=d;l=C(z[i+11312>>2]+z[i+11296>>2]);z[i+4688>>2]=l*l;z[i+136>>2]=s;z[i+132>>2]=D;z[i+128>>2]=r;l=C(P+U);z[i+120>>2]=l;z[i+116>>2]=l;z[i+112>>2]=l;v[i+104>>2]=1065353216;v[i+88>>2]=1065353216;v[i+92>>2]=0;v[i+96>>2]=0;v[i+100>>2]=0;v[i+80>>2]=0;v[i+84>>2]=0;v[i+72>>2]=1065353216;v[i+76>>2]=0;J=C(0);m=l;Q=C(0);I=C(0);P=C(1);R=C(0);E=C(0);F=C(0);M=C(1);if(c){o=l}else{mZ(i+11136|0,i+128|0,i+112|0,i+72|0);m=z[i+112>>2];s=z[i+136>>2];D=z[i+132>>2];r=z[i+128>>2];u=z[i+104>>2];J=z[i+100>>2];Q=z[i+96>>2];I=z[i+92>>2];P=z[i+88>>2];R=z[i+84>>2];E=z[i+80>>2];F=z[i+76>>2];M=z[i+72>>2];l=z[i+116>>2];o=z[i+120>>2]}z[i+56>>2]=o;z[i+52>>2]=l;z[i+44>>2]=s;z[i+40>>2]=D;z[i+32>>2]=u;z[i+28>>2]=J;z[i+20>>2]=I;z[i+16>>2]=P;z[i+48>>2]=m;z[i+36>>2]=r;z[i+24>>2]=Q;z[i+12>>2]=R;z[i+8>>2]=E;z[i+4>>2]=F;z[i>>2]=M;Ba[v[(x[a+4>>1]<<2)+144668>>2]](a,i,i+144|0,1,1);h=v[i+1012>>2];if(h){a=i+740|0;c=i+932|0;d=i+996|0;e=i+164|0;while(1){F1(q,e,v[c>>2],w[d|0],a);d=d+1|0;c=c+4|0;a=a+12|0;e=e+36|0;h=h-1|0;if(h){continue}break}v[i+1012>>2]=0}b=0;f=0;d=0;y=xa+-64|0;xa=y;W=v[q+5736>>2];if(W){N=v[q+5732>>2];S=32;j=xa-48|0;xa=j;t[j+12|0]=0;a=j-128|0;xa=a;v[j+8>>2]=a;A=W-1|0;b:{if((A|0)<=0){break b}while(1){c:{if((b|0)>=(A|0)){break c}while(1){if(A-b>>>0<=4){while(1){e=b;b=e+1|0;c=b;k=e;while(1){k=z[N+(c<<5)>>2]>=z[N+(k<<5)>>2]?k:c;h=(c|0)<(A|0);c=c+1|0;if(h){continue}break}if((e|0)!=(k|0)){h=N+(k<<5)|0;c=h;k=v[c+28>>2];v[j+40>>2]=v[c+24>>2];v[j+44>>2]=k;k=v[c+20>>2];v[j+32>>2]=v[c+16>>2];v[j+36>>2]=k;k=v[c+4>>2];v[j+16>>2]=v[c>>2];v[j+20>>2]=k;k=v[c+12>>2];v[j+24>>2]=v[c+8>>2];v[j+28>>2]=k;c=N+(e<<5)|0;v[h+16>>2]=v[c+16>>2];e=v[c+12>>2];v[h+8>>2]=v[c+8>>2];v[h+12>>2]=e;e=v[c+4>>2];v[h>>2]=v[c>>2];v[h+4>>2]=e;v[c+16>>2]=v[j+32>>2];e=v[j+20>>2];v[c>>2]=v[j+16>>2];v[c+4>>2]=e;e=v[j+28>>2];v[c+8>>2]=v[j+24>>2];v[c+12>>2]=e}if((b|0)!=(A|0)){continue}break c}}c=N+(b<<5)|0;m=z[c>>2];e=N+((b+A|0)/2<<5)|0;if(!(m<=z[e>>2])){h=v[c+28>>2];v[j+40>>2]=v[c+24>>2];v[j+44>>2]=h;h=v[c+20>>2];v[j+32>>2]=v[c+16>>2];v[j+36>>2]=h;h=v[c+4>>2];v[j+16>>2]=v[c>>2];v[j+20>>2]=h;h=v[c+12>>2];v[j+24>>2]=v[c+8>>2];v[j+28>>2]=h;v[c+16>>2]=v[e+16>>2];h=v[e+12>>2];v[c+8>>2]=v[e+8>>2];v[c+12>>2]=h;h=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=h;v[e+16>>2]=v[j+32>>2];h=v[j+20>>2];v[e>>2]=v[j+16>>2];v[e+4>>2]=h;h=v[j+28>>2];v[e+8>>2]=v[j+24>>2];v[e+12>>2]=h;m=z[c>>2]}h=N+(A<<5)|0;l=z[h>>2];if(!(m<=l)){k=v[c+28>>2];v[j+40>>2]=v[c+24>>2];v[j+44>>2]=k;k=v[c+20>>2];v[j+32>>2]=v[c+16>>2];v[j+36>>2]=k;k=v[c+4>>2];v[j+16>>2]=v[c>>2];v[j+20>>2]=k;k=v[c+12>>2];v[j+24>>2]=v[c+8>>2];v[j+28>>2]=k;v[c+16>>2]=v[h+16>>2];k=v[h+12>>2];v[c+8>>2]=v[h+8>>2];v[c+12>>2]=k;k=v[h+4>>2];v[c>>2]=v[h>>2];v[c+4>>2]=k;v[h+16>>2]=v[j+32>>2];c=v[j+20>>2];v[h>>2]=v[j+16>>2];v[h+4>>2]=c;c=v[j+28>>2];v[h+8>>2]=v[j+24>>2];v[h+12>>2]=c;l=z[h>>2]}if(!(l>=z[e>>2])){c=v[e+28>>2];v[j+40>>2]=v[e+24>>2];v[j+44>>2]=c;c=v[e+20>>2];v[j+32>>2]=v[e+16>>2];v[j+36>>2]=c;c=v[e+4>>2];v[j+16>>2]=v[e>>2];v[j+20>>2]=c;c=v[e+12>>2];v[j+24>>2]=v[e+8>>2];v[j+28>>2]=c;v[e+16>>2]=v[h+16>>2];c=v[h+12>>2];v[e+8>>2]=v[h+8>>2];v[e+12>>2]=c;c=v[h+4>>2];v[e>>2]=v[h>>2];v[e+4>>2]=c;v[h+16>>2]=v[j+32>>2];c=v[j+20>>2];v[h>>2]=v[j+16>>2];v[h+4>>2]=c;c=v[j+28>>2];v[h+8>>2]=v[j+24>>2];v[h+12>>2]=c}c=v[e+20>>2];v[j+32>>2]=v[e+16>>2];v[j+36>>2]=c;c=v[e+28>>2];v[j+40>>2]=v[e+24>>2];v[j+44>>2]=c;c=v[e+4>>2];v[j+16>>2]=v[e>>2];v[j+20>>2]=c;k=A-1|0;n=N+(k<<5)|0;c=n;h=v[c+4>>2];v[e>>2]=v[c>>2];v[e+4>>2]=h;c=v[e+12>>2];v[j+24>>2]=v[e+8>>2];v[j+28>>2]=c;v[e+16>>2]=v[n+16>>2];c=v[n+12>>2];v[e+8>>2]=v[n+8>>2];v[e+12>>2]=c;v[n+16>>2]=v[j+32>>2];c=v[j+20>>2];v[n>>2]=v[j+16>>2];v[n+4>>2]=c;c=v[j+28>>2];v[n+8>>2]=v[j+24>>2];v[n+12>>2]=c;c=b;while(1){l=z[n>>2];while(1){h=c;c=c+1|0;e=N+(c<<5)|0;if(!(l<=z[e>>2])){continue}break}while(1){k=k-1|0;L=N+(k<<5)|0;if(!(l>=z[L>>2])){continue}break}if((c|0)<(k|0)){h=v[e+28>>2];v[j+40>>2]=v[e+24>>2];v[j+44>>2]=h;h=v[e+20>>2];v[j+32>>2]=v[e+16>>2];v[j+36>>2]=h;h=v[e+4>>2];v[j+16>>2]=v[e>>2];v[j+20>>2]=h;h=v[e+12>>2];v[j+24>>2]=v[e+8>>2];v[j+28>>2]=h;v[e+16>>2]=v[L+16>>2];h=v[L+12>>2];v[e+8>>2]=v[L+8>>2];v[e+12>>2]=h;h=v[L+4>>2];v[e>>2]=v[L>>2];v[e+4>>2]=h;v[L+16>>2]=v[j+32>>2];e=v[j+20>>2];v[L>>2]=v[j+16>>2];v[L+4>>2]=e;e=v[j+28>>2];v[L+8>>2]=v[j+24>>2];v[L+12>>2]=e;continue}break}k=v[e+28>>2];v[j+40>>2]=v[e+24>>2];v[j+44>>2]=k;k=v[e+20>>2];v[j+32>>2]=v[e+16>>2];v[j+36>>2]=k;k=v[e+4>>2];v[j+16>>2]=v[e>>2];v[j+20>>2]=k;k=v[e+12>>2];v[j+24>>2]=v[e+8>>2];v[j+28>>2]=k;v[e+16>>2]=v[n+16>>2];k=v[n+12>>2];v[e+8>>2]=v[n+8>>2];v[e+12>>2]=k;k=v[n+4>>2];v[e>>2]=v[n>>2];v[e+4>>2]=k;v[n+16>>2]=v[j+32>>2];e=v[j+20>>2];v[n>>2]=v[j+16>>2];v[n+4>>2]=e;e=v[j+28>>2];v[n+8>>2]=v[j+24>>2];v[n+12>>2]=e;d:{if((c-b|0)<(A-c|0)){if(S-1>>>0<=f>>>0){e=S<<3;if(e){c=v[37696];k=c+12|0;c=(_=k,$=e,aa=Ba[v[v[c>>2]+20>>2]](c)|0?43241:63804,ba=17218,ca=155,Z=v[v[k>>2]+8>>2],Ba[Z](_|0,$|0,aa|0,ba|0,ca|0)|0)}else{c=0}S=S<<1;c=H9(c,a,f<<2);e=d;d=1;if(!(!e|!a)){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,a)}a=c}c=(f<<2)+a|0;v[c>>2]=b;v[c+4>>2]=h;b=h+2|0;break d}if(S-1>>>0<=f>>>0){e=S<<3;if(e){c=v[37696];k=c+12|0;c=(ca=k,ba=e,aa=Ba[v[v[c>>2]+20>>2]](c)|0?43241:63804,$=17218,_=155,Z=v[v[k>>2]+8>>2],Ba[Z](ca|0,ba|0,aa|0,$|0,_|0)|0)}else{c=0}S=S<<1;c=H9(c,a,f<<2);e=d;d=1;if(!(!e|!a)){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,a)}a=c}c=(f<<2)+a|0;v[c>>2]=h+2;v[c+4>>2]=A;A=h}f=f+2|0;if((b|0)<(A|0)){continue}break}}if(f){c=f-2|0;b=v[(c<<2)+a>>2];A=v[((f<<2)+a|0)-4>>2];f=c;continue}break}if(!d|!a){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}if(w[j+12|0]){u9(v[j+8>>2])}xa=j+48|0;j=q+2336|0;N=v[v[q+3620>>2]+4356>>2];while(1){b=v[q+3616>>2];e:{if((b|0)==128){break e}c=N+B(v[(v[q+5732>>2]+(X<<5)|0)+16>>2],60)|0;L=w[c+56|0];A=v[c+44>>2];k=v[c+36>>2];f=v[c+40>>2];h=f>>>0>k>>>0?k:f;d=f>>>0>>0?k:f;a=h<<16|d;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;e=(q+((a>>>16^a)&127)|0)+3488|0;a=w[e|0];f:{if((a|0)!=255){while(1){e=j+(a<<3)|0;n=0;if(!((h|0)!=v[e>>2]|(d|0)!=v[e+4>>2])){break f}e=(a+q|0)+3360|0;a=w[e|0];if((a|0)!=255){continue}break}}t[e|0]=b;t[(b+q|0)+3360|0]=255;a=v[q+3616>>2];v[q+3616>>2]=a+1;b=j+(a<<3)|0;v[b>>2]=h;v[b+4>>2]=d;b=v[q+3616>>2];n=1}d=n;if((b|0)==128){break e}h=f>>>0>>0?f:A;f=f>>>0>A>>>0?f:A;a=h<<16|f;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;e=(q+((a>>>16^a)&127)|0)+3488|0;a=w[e|0];g:{if((a|0)!=255){while(1){e=j+(a<<3)|0;n=0;if(!((h|0)!=v[e>>2]|(f|0)!=v[e+4>>2])){break g}e=(a+q|0)+3360|0;a=w[e|0];if((a|0)!=255){continue}break}}t[e|0]=b;t[(b+q|0)+3360|0]=255;a=v[q+3616>>2];v[q+3616>>2]=a+1;b=j+(a<<3)|0;v[b>>2]=h;v[b+4>>2]=f;b=v[q+3616>>2];n=1}a=n;if((b|0)==128){break e}f=d;h=a;d=k>>>0>>0?A:k;n=k>>>0>A>>>0?A:k;a=d|n<<16;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;e=(q+((a>>>16^a)&127)|0)+3488|0;a=w[e|0];if((a|0)!=255){while(1){e=j+(a<<3)|0;if((n|0)==v[e>>2]&(d|0)==v[e+4>>2]){break e}e=(a+q|0)+3360|0;a=w[e|0];if((a|0)!=255){continue}break}}t[e|0]=b;t[(b+q|0)+3360|0]=255;a=v[q+3616>>2];v[q+3616>>2]=a+1;b=j+(a<<3)|0;v[b>>2]=n;v[b+4>>2]=d;if(!(f&h)|!L){break e}a=c;b=v[c+4>>2];c=v[c>>2];l=z[a+8>>2];v[y+60>>2]=0;z[y+56>>2]=l;v[y+48>>2]=c;v[y+52>>2]=b;l=z[a+20>>2];b=v[a+16>>2];c=v[a+12>>2];v[y+44>>2]=0;z[y+40>>2]=l;v[y+32>>2]=c;v[y+36>>2]=b;z[y+16>>2]=K(z[a+24>>2]);a=v[a+48>>2];b=v[y+20>>2];v[y>>2]=v[y+16>>2];v[y+4>>2]=b;b=v[y+28>>2];v[y+8>>2]=v[y+24>>2];v[y+12>>2]=b;G1(q,y+48|0,y+32|0,y,a)}X=X+1|0;if((X|0)!=(W|0)){continue}break}}xa=y- -64|0;z1(q,1,0);v[i+144>>2]=144644;a=v[i+6764>>2];h:{if((a|0)<0|!(a&2147483647)){break h}a=v[i+6756>>2];if((a|0)==(Y|0)|!a){break h}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[i+11132>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[i+11124>>2];if((a|0)==(i+6768|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}a=0;v[i+204>>2]=0;z[i+200>>2]=G;z[i+196>>2]=O;v[i+188>>2]=0;v[i+172>>2]=0;m=C(Q+Q);o=C(J*m);l=C(R+R);r=C(I*l);z[i+180>>2]=o-r;z[i+168>>2]=o+r;o=C(C(1)-C(R*l));r=C(Q*m);z[i+184>>2]=o-r;G=o;o=C(J+J);s=C(J*o);z[i+164>>2]=G-s;z[i+192>>2]=M;v[i+156>>2]=0;J=C(J*l);m=C(I*m);z[i+176>>2]=J+m;l=C(Q*l);o=C(I*o);z[i+160>>2]=l-o;z[i+152>>2]=J-m;z[i+148>>2]=l+o;z[i+144>>2]=C(C(1)-r)-s;z[i+11136>>2]=P*C(.05000000074505806);z[i>>2]=P+U;if(!w[p+62|0]){break a}while(1){c=a+p|0;b=w[c+56|0];d=B(b,400)+p|0;A2(i+6768|0,d- -64|0,i+144|0,i+11136|0);i:{if(!v[d+448>>2]){d=w[p+62|0]-1|0;t[p+62|0]=d;d=(d&255)+p|0;e=w[d+56|0];t[d+56|0]=b;t[c+56|0]=e;a=a-1|0;break i}z[((b<<2)+p|0)+32>>2]=z[i+6768>>2]}a=a+1|0;if(a>>>0>2]=0;v[e+332>>2]=16;B=e+256|0;v[e+324>>2]=B;P=Ba[v[v[a>>2]+92>>2]](a)|0;v[e+200>>2]=0;if(P>>>0>(v[B+76>>2]&2147483647)>>>0){a:{if(!P){break a}J=P<<2;if(!(w[B+64|0]|J>>>0>64)){t[B+64|0]=1;j=B;break a}if(!J){break a}j=v[37696];G=Ba[v[v[j>>2]+20>>2]](j)|0?59921:63804;j=Ba[v[v[j+12>>2]+8>>2]](j+12|0,J,G,16608,553)|0}G=v[B+68>>2];J=v[B+72>>2];if((J|0)>0){T=(J<<2)+j|0;J=j;while(1){v[J>>2]=v[G>>2];G=G+4|0;J=J+4|0;if(T>>>0>J>>>0){continue}break}G=v[B+68>>2]}b:{if(v[B+76>>2]<0){break b}if((B|0)==(G|0)){t[B+64|0]=0;break b}if(!G){break b}J=v[37696];Ba[v[v[J+12>>2]+12>>2]](J+12|0,G)}v[B+76>>2]=P;v[B+68>>2]=j}j=v[B+72>>2];if((j|0)<(P|0)){J=v[B+68>>2];G=J+(P<<2)|0;j=J+(j<<2)|0;while(1){v[j>>2]=v[e+200>>2];j=j+4|0;if(G>>>0>j>>>0){continue}break}}v[B+72>>2]=P;Ba[v[v[a>>2]+96>>2]](a,v[e+324>>2],v[e+328>>2],0)|0;a=b?b:c;D=z[a>>2];c:{d:{if((v[a>>2]&2139095040)!=2139095040){e:{f:{g:{if(!v[e+328>>2]){break g}J=e+24|0;P=e+176|0;a=0;while(1){B=a<<2;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+156>>2]](e+200|0,j);if(t[e+200|0]&1){y8(e+200|0,0);h:{i:{j:{k:{l:{j=v[B+v[e+324>>2]>>2];switch((Ba[v[v[j>>2]+32>>2]](j)|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}}v[e+160>>2]=0;v[e+164>>2]=0;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+48>>2]](j,e+160|0)|0;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+80>>2]](e+8|0,j);g=z[e+8>>2];k=C(g+g);f=z[e+16>>2];n=C(k*f);l=z[e+12>>2];i=C(l+l);o=z[e+20>>2];p=C(i*o);h=C(n-p);r=C(h*C(0));E=C(C(1)-C(g*k));s=C(l*i);g=C(E-s);q=C(g*C(0));m=C(i*f);A=C(k*o);i=C(m+A);H=C(i*C(0));u=C(r+H);z[e+244>>2]=q+u;m=C(m-A);A=C(m*C(0));x=C(k*l);l=C(f+f);I=C(o*l);k=C(x+I);K=C(k*C(0));f=C(f*l);l=C(E-f);L=C(l*C(0));M=C(K+L);z[e+240>>2]=A+M;o=C(n+p);E=C(o*C(0));n=C(C(C(1)-s)-f);O=C(n*C(0));p=C(x-I);x=C(p*C(0));I=C(O+x);z[e+236>>2]=E+I;f=z[e+164>>2];s=C(f*C(f*C(f*C(4.188790321350098))));z[e+248>>2]=s;f=C(C(f*C(f*s))*C(.4000000059604645));s=C(C(g*f)+u);H=C(q+C(C(f*h)+H));r=C(q+C(r+C(f*i)));z[e+232>>2]=C(g*s)+C(C(h*H)+C(i*r));q=C(C(f*m)+M);u=C(A+C(C(f*k)+L));A=C(A+C(K+C(f*l)));z[e+228>>2]=C(g*q)+C(C(h*u)+C(i*A));F=g;g=C(C(f*o)+I);N=h;h=C(E+C(C(f*n)+x));f=C(E+C(O+C(f*p)));z[e+224>>2]=C(F*g)+C(C(N*h)+C(i*f));z[e+220>>2]=C(m*s)+C(C(k*H)+C(l*r));z[e+216>>2]=C(m*q)+C(C(k*u)+C(l*A));z[e+212>>2]=C(m*g)+C(C(k*h)+C(l*f));z[e+208>>2]=C(o*s)+C(C(n*H)+C(p*r));z[e+204>>2]=C(o*q)+C(C(n*u)+C(p*A));z[e+200>>2]=C(o*g)+C(C(n*h)+C(p*f));z8(e+200|0,J);break h}v[e+172>>2]=0;v[e+164>>2]=0;v[e+168>>2]=0;v[e+160>>2]=3;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+44>>2]](j,e+160|0)|0;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+80>>2]](e+8|0,j);g=z[e+8>>2];k=C(g+g);f=z[e+16>>2];n=C(k*f);l=z[e+12>>2];i=C(l+l);o=z[e+20>>2];p=C(i*o);h=C(n-p);A=C(h*C(0));r=C(C(1)-C(g*k));q=C(l*i);g=C(r-q);E=C(g*C(0));m=C(i*f);s=C(k*o);i=C(m+s);x=C(i*C(0));u=C(A+x);z[e+244>>2]=E+u;m=C(m-s);s=C(m*C(0));I=C(k*l);l=C(f+f);K=C(o*l);k=C(I+K);L=C(k*C(0));o=C(f*l);f=C(r-o);M=C(f*C(0));O=C(L+M);z[e+240>>2]=s+O;l=C(n+p);H=C(l*C(0));o=C(C(C(1)-q)-o);Q=C(o*C(0));n=C(I-K);K=C(n*C(0));F=C(Q+K);z[e+236>>2]=H+F;p=z[e+164>>2];r=z[e+168>>2];q=z[e+172>>2];I=C(C(C((p!=C(0)?p:C(1))*(r!=C(0)?r:C(1)))*(q!=C(0)?q:C(1)))*C(8));z[e+248>>2]=I;R=C(p*p);N=C(r*r);p=C(I*C(.3333333432674408));r=C(C(R+N)*p);u=C(C(g*r)+u);I=C(q*q);q=C(C(N+I)*p);x=C(E+C(C(h*q)+x));p=C(C(R+I)*p);A=C(E+C(A+C(i*p)));z[e+232>>2]=C(g*u)+C(C(h*x)+C(i*A));E=C(C(r*m)+O);I=C(s+C(C(q*k)+M));s=C(s+C(L+C(p*f)));z[e+228>>2]=C(g*E)+C(C(h*I)+C(i*s));N=g;g=C(C(r*l)+F);F=h;h=C(H+C(C(q*o)+K));q=i;i=C(H+C(Q+C(p*n)));z[e+224>>2]=C(N*g)+C(C(F*h)+C(q*i));z[e+220>>2]=C(m*u)+C(C(k*x)+C(f*A));z[e+216>>2]=C(m*E)+C(C(k*I)+C(f*s));z[e+212>>2]=C(m*g)+C(C(k*h)+C(f*i));z[e+208>>2]=C(l*u)+C(C(o*x)+C(n*A));z[e+204>>2]=C(l*E)+C(C(o*I)+C(n*s));z[e+200>>2]=C(l*g)+C(C(o*h)+C(n*i));z8(e+200|0,J);break h}v[e+164>>2]=0;v[e+168>>2]=0;v[e+160>>2]=2;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+52>>2]](j,e+160|0)|0;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+80>>2]](e+8|0,j);f=z[e+164>>2];q=C(f*C(f*C(3.1415927410125732)));h=z[e+168>>2];z[e+248>>2]=C(f*C(f*C(f*C(4.188790321350098))))+C(q*C(h+h));m=z[e+8>>2];o=C(m+m);g=z[e+16>>2];r=C(o*g);n=z[e+12>>2];k=C(n+n);p=z[e+20>>2];H=C(k*p);i=C(r-H);A=C(i*C(0));u=C(C(1)-C(m*o));x=C(n*k);m=C(u-x);E=C(m*C(0));l=C(k*g);s=C(o*p);k=C(l+s);I=C(k*C(0));K=C(A+I);z[e+244>>2]=E+K;l=C(l-s);s=C(l*C(0));L=C(o*n);n=C(g+g);M=C(p*n);o=C(L+M);O=C(o*C(0));p=C(g*n);g=C(u-p);Q=C(g*C(0));F=C(O+Q);z[e+240>>2]=s+F;n=C(r+H);H=C(n*C(0));p=C(C(C(1)-x)-p);R=C(p*C(0));r=C(L-M);L=C(r*C(0));M=C(R+L);z[e+236>>2]=H+M;u=C(h*h);x=C(h*u);N=C(C(x+x)/C(3));U=C(C(C(f*u)*C(4))/C(3));u=C(C(C(f*C(f*f))*C(8))/C(15));x=C(f*C(f*h));f=C(q*C(N+C(U+C(u+C(C(x*C(3))*C(.5))))));h=C(C(m*f)+K);q=C(q*C(x+u));u=C(E+C(C(i*q)+I));A=C(E+C(A+C(f*k)));z[e+232>>2]=C(m*h)+C(C(i*u)+C(k*A));E=C(C(f*l)+F);x=C(s+C(C(q*o)+Q));s=C(s+C(O+C(f*g)));z[e+228>>2]=C(m*E)+C(C(i*x)+C(k*s));F=m;m=C(C(f*n)+M);N=i;i=C(H+C(C(q*p)+L));f=C(H+C(R+C(f*r)));z[e+224>>2]=C(F*m)+C(C(N*i)+C(k*f));z[e+220>>2]=C(l*h)+C(C(o*u)+C(g*A));z[e+216>>2]=C(l*E)+C(C(o*x)+C(g*s));z[e+212>>2]=C(l*m)+C(C(o*i)+C(g*f));z[e+208>>2]=C(n*h)+C(C(p*u)+C(r*A));z[e+204>>2]=C(n*E)+C(C(p*x)+C(r*s));z[e+200>>2]=C(n*m)+C(C(p*i)+C(r*f));z8(e+200|0,J);break h}t[e+196|0]=1;v[e+192>>2]=0;v[e+184>>2]=0;v[e+188>>2]=1065353216;v[e+176>>2]=0;v[e+180>>2]=0;v[e+168>>2]=1065353216;v[e+172>>2]=1065353216;v[e+160>>2]=4;v[e+164>>2]=1065353216;t[e+199|0]=0;t[e+197|0]=0;t[e+198|0]=0;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+60>>2]](j,e+160|0)|0;j=v[e+192>>2];Ba[v[v[j>>2]+52>>2]](j,e+156|0,e+120|0,e+104|0);i=z[e+172>>2];q=z[e+164>>2];k=z[e+168>>2];if(!(!(q!=C(1)|k!=C(1))&i==C(1))){z[e+156>>2]=z[e+156>>2]*C(C(q*k)*i);f=z[e+184>>2];h=z[e+112>>2];l=C(h+h);h=z[e+176>>2];g=z[e+104>>2];o=C(g+g);g=z[e+108>>2];n=C(g+g);g=z[e+180>>2];p=C(C(f*l)+C(C(h*o)+C(n*g)));F=i;i=z[e+188>>2];m=C(C(i*i)+C(-.5));r=C(F*C(C(f*p)+C(C(l*m)+C(i*C(C(h*n)-C(o*g))))));r=C(r+r);q=C(q*C(C(h*p)+C(C(o*m)+C(i*C(C(g*l)-C(n*f))))));q=C(q+q);k=C(k*C(C(g*p)+C(C(n*m)+C(i*C(C(f*o)-C(l*h))))));k=C(k+k);l=C(C(f*r)+C(C(h*q)+C(g*k)));z[e+104>>2]=C(h*l)+C(C(q*m)-C(i*C(C(g*r)-C(k*f))));z[e+108>>2]=C(g*l)+C(C(k*m)-C(i*C(C(f*q)-C(r*h))));z[e+112>>2]=C(f*l)+C(C(r*m)-C(i*C(C(h*k)-C(q*g))));C8(e+8|0,e+120|0,P);m=z[e+40>>2];k=z[e+8>>2];l=z[e+24>>2];o=z[e+12>>2];n=z[e+16>>2];h=z[e+164>>2];g=z[e+168>>2];i=z[e+172>>2];f=C(C(h*g)*i);p=C(f*C(i*C(g*z[e+28>>2])));z[e+436>>2]=p;n=C(f*C(i*C(h*n)));z[e+432>>2]=n;z[e+428>>2]=p;o=C(f*C(g*C(h*o)));z[e+420>>2]=o;z[e+416>>2]=n;z[e+412>>2]=o;F=h;h=C(C(m*C(.5))+C(C(k*C(.5))+C(l*C(.5))));k=C(F*C(F*C(h-k)));g=C(g*C(g*C(h-l)));z[e+440>>2]=f*C(k+g);h=C(i*C(i*C(h-m)));z[e+424>>2]=f*C(h+k);z[e+408>>2]=f*C(g+h);z[e+404>>2]=z[e+188>>2];z[e+400>>2]=-z[e+184>>2];z[e+396>>2]=-z[e+180>>2];z[e+392>>2]=-z[e+176>>2];C8(e- -64|0,e+408|0,e+392|0);j=v[e+68>>2];v[e+120>>2]=v[e+64>>2];v[e+124>>2]=j;j=v[e+76>>2];v[e+128>>2]=v[e+72>>2];v[e+132>>2]=j;j=v[e+84>>2];v[e+136>>2]=v[e+80>>2];v[e+140>>2]=j;j=v[e+92>>2];v[e+144>>2]=v[e+88>>2];v[e+148>>2]=j;z[e+152>>2]=z[e+96>>2]}f=z[e+156>>2];j=e+8|0;z[j>>2]=z[e+120>>2];z[j+4>>2]=z[e+124>>2];z[j+8>>2]=z[e+128>>2];z[j+12>>2]=z[e+132>>2];z[j+16>>2]=z[e+136>>2];z[j+20>>2]=z[e+140>>2];z[j+24>>2]=z[e+144>>2];z[j+28>>2]=z[e+148>>2];z[j+32>>2]=z[e+152>>2];z[j+36>>2]=z[e+104>>2];z[j+40>>2]=z[e+108>>2];h=z[e+112>>2];z[j+48>>2]=f;z[j+44>>2]=h;z[e+200>>2]=z[e+8>>2];G=v[e+16>>2];v[e+204>>2]=v[e+12>>2];v[e+208>>2]=G;G=v[e+24>>2];v[e+212>>2]=v[e+20>>2];v[e+216>>2]=G;G=v[e+32>>2];v[e+220>>2]=v[e+28>>2];v[e+224>>2]=G;G=v[e+40>>2];v[e+228>>2]=v[e+36>>2];v[e+232>>2]=G;G=v[e+48>>2];v[e+236>>2]=v[e+44>>2];v[e+240>>2]=G;G=v[e+56>>2];v[e+244>>2]=v[e+52>>2];v[e+248>>2]=G;G=j;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+80>>2]](G,j);g=z[e+8>>2];i=C(g+g);m=z[e+16>>2];L=C(i*m);k=z[e+12>>2];l=C(k+k);n=z[e+20>>2];M=C(l*n);f=C(L-M);p=z[e+200>>2];r=z[e+204>>2];O=C(l*m);Q=C(i*n);h=C(O+Q);F=C(C(1)-C(g*i));l=C(k*l);g=C(F-l);q=z[e+208>>2];o=C(C(C(f*p)+C(r*h))+C(g*q));A=z[e+212>>2];E=z[e+216>>2];s=z[e+220>>2];H=C(C(C(f*A)+C(h*E))+C(g*s));u=z[e+224>>2];x=z[e+228>>2];I=z[e+232>>2];K=C(C(C(f*u)+C(h*x))+C(g*I));z[e+232>>2]=C(C(f*o)+C(h*H))+C(g*K);R=C(i*k);k=C(m+m);n=C(n*k);i=C(R+n);N=F;F=C(m*k);m=C(N-F);k=C(O-Q);z[e+220>>2]=C(C(i*o)+C(m*H))+C(k*K);l=C(C(C(1)-l)-F);F=C(l*o);o=C(R-n);n=C(L+M);z[e+208>>2]=C(F+C(o*H))+C(n*K);H=C(C(C(p*i)+C(r*m))+C(k*q));K=C(C(C(i*A)+C(m*E))+C(k*s));L=C(C(C(i*u)+C(m*x))+C(k*I));z[e+228>>2]=C(C(f*H)+C(h*K))+C(g*L);p=C(C(C(p*l)+C(r*o))+C(n*q));r=C(C(C(l*A)+C(o*E))+C(n*s));q=C(C(C(l*u)+C(o*x))+C(n*I));z[e+224>>2]=C(C(f*p)+C(h*r))+C(g*q);z[e+216>>2]=C(C(i*H)+C(m*K))+C(k*L);z[e+212>>2]=C(C(i*p)+C(m*r))+C(k*q);z[e+204>>2]=C(C(l*H)+C(o*K))+C(n*L);z[e+200>>2]=C(C(l*p)+C(o*r))+C(n*q);F=f;f=z[e+236>>2];N=h;h=z[e+240>>2];q=g;g=z[e+244>>2];z[e+244>>2]=C(C(F*f)+C(N*h))+C(q*g);z[e+240>>2]=C(C(i*f)+C(m*h))+C(k*g);z[e+236>>2]=C(C(l*f)+C(o*h))+C(n*g);z8(e+200|0,J)}m:{n:{if(b){h=C(D*z[e+200>>2]);z[e+200>>2]=h;g=C(D*z[e+204>>2]);z[e+204>>2]=g;i=C(D*z[e+208>>2]);z[e+208>>2]=i;m=C(D*z[e+212>>2]);z[e+212>>2]=m;k=C(D*z[e+216>>2]);z[e+216>>2]=k;l=C(D*z[e+220>>2]);z[e+220>>2]=l;o=C(D*z[e+224>>2]);z[e+224>>2]=o;n=C(D*z[e+228>>2]);z[e+228>>2]=n;p=C(D*z[e+232>>2]);z[e+232>>2]=p;f=C(D*z[e+248>>2]);break n}f=z[e+248>>2];p=z[e+232>>2];n=z[e+228>>2];o=z[e+224>>2];l=z[e+220>>2];k=z[e+216>>2];m=z[e+212>>2];i=z[e+208>>2];g=z[e+204>>2];h=z[e+200>>2];break m}z[e+248>>2]=f}z[e+336>>2]=h+z[e+336>>2];z[e+340>>2]=g+z[e+340>>2];z[e+344>>2]=i+z[e+344>>2];z[e+348>>2]=m+z[e+348>>2];i=z[e+244>>2];m=z[e+380>>2];h=z[e+384>>2];g=C(h+f);z[e+384>>2]=g;g=C(C(1)/g);z[e+380>>2]=g*C(C(h*m)+C(f*i));z[e+376>>2]=g*C(C(h*z[e+376>>2])+C(f*z[e+240>>2]));z[e+372>>2]=g*C(C(h*z[e+372>>2])+C(f*z[e+236>>2]));z[e+352>>2]=k+z[e+352>>2];z[e+356>>2]=l+z[e+356>>2];z[e+360>>2]=o+z[e+360>>2];z[e+364>>2]=n+z[e+364>>2];z[e+368>>2]=p+z[e+368>>2];S=S+1|0}a=a+1|0;if(a>>>0>2]){continue}break}if(!c|!S){break g}break f}f=z[e+368>>2];h=z[e+364>>2];g=z[e+356>>2];i=z[e+352>>2];D=z[e+384>>2];m=z[e+360>>2];k=z[e+348>>2];l=z[e+344>>2];o=z[e+340>>2];n=z[e+336>>2];break e}p=z[e+384>>2];D=C(D/p);i=C(D*z[e+352>>2]);z[e+352>>2]=i;g=C(D*z[e+356>>2]);z[e+356>>2]=g;h=C(D*z[e+364>>2]);z[e+364>>2]=h;f=C(D*z[e+368>>2]);z[e+368>>2]=f;n=C(z[e+336>>2]*D);z[e+336>>2]=n;o=C(D*z[e+340>>2]);z[e+340>>2]=o;l=C(D*z[e+344>>2]);z[e+344>>2]=l;k=C(D*z[e+348>>2]);z[e+348>>2]=k;m=C(D*z[e+360>>2]);z[e+360>>2]=m;D=C(p*D);z[e+384>>2]=D}z[d+24>>2]=m;z[d+12>>2]=k;z[d+8>>2]=l;z[d+4>>2]=o;z[d>>2]=n;z[d+32>>2]=f;z[d+28>>2]=h;z[d+20>>2]=g;z[d+16>>2]=i;z[d+36>>2]=z[e+372>>2];z[d+40>>2]=z[e+376>>2];f=z[e+380>>2];z[d+48>>2]=D;z[d+44>>2]=f;S=1;break c}a9(v[37696],4,6223,128,20702,0);break c}S=0;a9(v[37696],4,6223,231,4257,0)}a=v[e+332>>2];o:{if((a|0)<0|!(a&2147483647)){break o}a=v[e+324>>2];if((a|0)==(e+256|0)|!a){break o}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=e+448|0;return S}function g3(a,b){var c=0,d=C(0),e=0,f=0,g=C(0),h=0,i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),A=C(0),E=C(0),F=0,G=0,H=0,I=0,J=C(0),L=0,M=0,N=0,O=0,P=C(0),Q=0,R=C(0),S=C(0),T=0,U=0,V=0,W=C(0),X=0,Y=C(0),Z=0,_=0,$=0,aa=0,ba=C(0),ca=0,da=0,ea=0,fa=0,ga=C(0),ha=0,ia=0;e=w[b+13|0];c=v[b+16>>2];a:{if(w[b+12|0]?1:c){if(!h3(a,v[b>>2],v[b+4>>2],v[b+8>>2])){break a}}if(c|e){k=v[b>>2];M=h3(a,k,v[b+4>>2],v[b+8>>2]);b:{if(!M){break b}e=v[a>>2]<<3;c:{if(!e){c=0;e=0;break c}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,e,24422,6398,246)|0;e=v[a>>2]<<3}v[a+16>>2]=c;I9(c,0,e);c=v[a+16>>2];if(k){l=v[a+12>>2];e=0;while(1){f=l+B(e,12)|0;h=c+(v[f>>2]<<3)|0;u[h+2>>1]=x[h+2>>1]+1;h=c+(v[f+4>>2]<<3)|0;u[h+2>>1]=x[h+2>>1]+1;f=c+(v[f+8>>2]<<3)|0;u[f+2>>1]=x[f+2>>1]+1;e=e+1|0;if((k|0)!=(e|0)){continue}break}}e=0;v[c+4>>2]=0;h=v[a>>2];d:{if(h>>>0<2){break d}q=h-1|0;G=q&3;f=1;l=0;if(h-2>>>0>=3){r=q&-4;while(1){q=l;l=c+(f<<3)|0;q=q+x[l-6>>1]|0;v[l+4>>2]=q;q=q+x[l+2>>1]|0;v[l+12>>2]=q;q=q+x[l+10>>1]|0;v[l+20>>2]=q;I=l;l=q+x[l+18>>1]|0;v[I+28>>2]=l;f=f+4|0;N=N+4|0;if((r|0)!=(N|0)){continue}break}}if(!G){break d}while(1){q=c+(f<<3)|0;l=x[q-6>>1]+l|0;v[q+4>>2]=l;f=f+1|0;F=F+1|0;if((G|0)!=(F|0)){continue}break}}c=(c+(h<<3)|0)-8|0;c=v[c+4>>2]+x[c+2>>1]<<2;if(c){e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,c,24422,6398,265)|0}v[a+20>>2]=e;h=v[a+16>>2];if(k){G=v[a+12>>2];c=0;while(1){f=G+B(c,12)|0;q=h+(v[f>>2]<<3)|0;l=v[q+4>>2];v[q+4>>2]=l+1;v[(l<<2)+e>>2]=c;q=h+(v[f+4>>2]<<3)|0;l=v[q+4>>2];v[q+4>>2]=l+1;v[(l<<2)+e>>2]=c;l=h+(v[f+8>>2]<<3)|0;f=v[l+4>>2];v[l+4>>2]=f+1;v[(f<<2)+e>>2]=c;c=c+1|0;if((k|0)!=(c|0)){continue}break}}f=0;v[h+4>>2]=0;c=v[a>>2];if(c>>>0<2){break b}l=c-1|0;k=l&3;e=1;if(c-2>>>0>=3){G=l&-4;l=0;while(1){c=h+(e<<3)|0;f=x[c-6>>1]+f|0;v[c+4>>2]=f;f=f+x[c+2>>1]|0;v[c+12>>2]=f;f=f+x[c+10>>1]|0;v[c+20>>2]=f;f=f+x[c+18>>1]|0;v[c+28>>2]=f;e=e+4|0;l=l+4|0;if((G|0)!=(l|0)){continue}break}}if(!k){break b}c=0;while(1){l=h+(e<<3)|0;f=x[l-6>>1]+f|0;v[l+4>>2]=f;e=e+1|0;c=c+1|0;if((k|0)!=(c|0)){continue}break}}if(!M){break a}}r=v[b+16>>2];if(r){aa=v[b>>2];ba=z[b+20>>2];k=0;G=xa-16|0;xa=G;O=v[b+8>>2];H=v[b+4>>2];e:{if(!(O|H?r:0)){a9(v[37696],8,6398,310,73126,0);e=0;break e}_=v[a>>2];if(!_){a9(v[37696],8,6398,317,72174,0);e=0;break e}X=v[a+4>>2];if(!X){a9(v[37696],8,6398,324,72297,0);e=0;break e}Z=v[a+16>>2];if(!Z){a9(v[37696],8,6398,331,72230,0);e=0;break e}$=v[a+20>>2];f:{if(!$){a9(v[37696],8,6398,338,72109,0);break f}e=v[37696]+12|0;I=Ba[v[v[e>>2]+8>>2]](e,_,24422,6398,343)|0;ca=I;while(1){_=_-1|0;Q=1;g:{h:{i:{da=x[Z+2>>1];switch(da-1|0){case 0:break g;case 1:break i;default:break h}}c=(v[Z+4>>2]<<2)+$|0;e=B(v[c>>2],3);c=B(v[c+4>>2],3);j:{if(H){c=H+(c<<2)|0;F=v[c>>2];e=H+(e<<2)|0;f=v[e>>2];q=v[c+8>>2];Q=v[c+4>>2];l=v[e+8>>2];c=v[e+4>>2];break j}c=(c<<1)+O|0;F=x[c>>1];e=(e<<1)+O|0;f=x[e>>1];q=x[c+4>>1];Q=x[c+2>>1];l=x[e+4>>1];c=x[e+2>>1]}h=v[X+4>>2];e=v[X>>2];k:{l:{if((e|0)==(f|0)){e=l;if((c|0)==(h|0)){break k}e=c;if((h|0)!=(l|0)){break l}break k}if((c|0)==(e|0)){e=l;if((f|0)==(h|0)){break k}e=f;if((h|0)!=(l|0)){break l}break k}if((e|0)!=(l|0)){break l}e=f;if((c|0)==(h|0)){break k}e=c;if((f|0)==(h|0)){break k}}e=-1}A=C(0);p=C(0);s=C(0);h=r+B(Q,12)|0;k=r+B(F,12)|0;P=z[k>>2];j=C(z[h>>2]-P);q=r+B(q,12)|0;Y=z[k+4>>2];g=C(z[q+4>>2]-Y);i=C(z[q>>2]-P);m=C(z[h+4>>2]-Y);o=C(C(j*g)-C(i*m));R=z[k+8>>2];n=C(z[q+8>>2]-R);d=g;g=C(z[h+8>>2]-R);m=C(C(m*n)-C(d*g));n=C(C(g*i)-C(n*j));J=C(C(o*o)+C(C(m*m)+C(n*n)));if(J>C(0)){j=C(C(1)/C(K(J)));s=C(o*j);p=C(n*j);A=C(m*j)}c=r+B(c,12)|0;f=r+B(f,12)|0;j=z[f>>2];i=C(z[c>>2]-j);k=r+B(l,12)|0;g=z[f+4>>2];d=C(z[k+4>>2]-g);W=C(z[k>>2]-j);g=C(z[c+4>>2]-g);j=C(C(i*d)-C(W*g));E=g;g=z[f+8>>2];ga=C(z[k+8>>2]-g);S=d;d=C(z[c+8>>2]-g);g=C(C(E*ga)-C(S*d));i=C(C(d*W)-C(ga*i));d=C(K(C(C(j*j)+C(C(g*g)+C(i*i)))));e=r+B(e,12)|0;if(C(C(C(z[e+8>>2]*s)+C(C(z[e>>2]*A)+C(p*z[e+4>>2])))-C(C(R*s)+C(C(P*A)+C(Y*p))))C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}d=C(K(J));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}d=C(C(g*n)-C(m*i));p=C(d*d);d=C(C(i*o)-C(n*j));E=C(d*d);d=C(C(j*m)-C(o*g));Q=C(D(B9(C(K(C(p+C(E+C(d*d))))),C(C(j*o)+C(C(g*m)+C(i*n))))))>ba;break g}if(d>C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}d=C(K(J));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}Q=C(C(j*o)+C(C(g*m)+C(i*n)))>2];e=B(v[(ha<<2)+$>>2],3);m:{if(H){c=H+(e<<2)|0;e=v[c>>2];l=v[c+8>>2];c=v[c+4>>2];break m}c=(e<<1)+O|0;e=x[c>>1];l=x[c+4>>1];c=x[c+2>>1]}if(da>>>0<2){break g}T=r+B(l,12)|0;U=r+B(c,12)|0;V=r+B(e,12)|0;ea=0;L=1;fa=0;F=1;N=0;M=0;q=0;while(1){f=B(v[(L+ha<<2)+$>>2],3);n:{if(H){h=H+(f<<2)|0;f=v[h>>2];k=v[h+8>>2];h=v[h+4>>2];break n}h=(f<<1)+O|0;f=x[h>>1];k=x[h+4>>1];h=x[h+2>>1]}o:{p:{if(!(!((f|0)==(e|0)|(c|0)==(f|0))&(f|0)!=(l|0)|!((e|0)==(h|0)|(c|0)==(h|0))&(h|0)!=(l|0))){if((e|0)==(k|0)|(c|0)==(k|0)|(l|0)==(k|0)){break p}}if((F|0)==2){if(!((f|0)==(q|0)|(f|0)==(M|0))&(f|0)!=(N|0)|!((h|0)==(q|0)|(h|0)==(M|0))&(h|0)!=(N|0)){break g}if(!((k|0)==(q|0)|(k|0)==(M|0))&(k|0)!=(N|0)){break g}k=r+B(k,12)|0;A=z[k+8>>2];p=z[k+4>>2];s=z[k>>2];h=r+B(h,12)|0;J=z[h+8>>2];P=z[h+4>>2];Y=z[h>>2];f=r+B(f,12)|0;g=z[f+8>>2];j=z[f+4>>2];i=z[f>>2];f=r+B(M,12)|0;h=r+B(q,12)|0;o=z[h>>2];n=C(z[f>>2]-o);k=r+B(N,12)|0;m=z[h+4>>2];d=C(z[k+4>>2]-m);R=C(z[k>>2]-o);m=C(z[f+4>>2]-m);o=C(C(n*d)-C(R*m));E=m;m=z[h+8>>2];W=C(z[k+8>>2]-m);S=d;d=C(z[f+8>>2]-m);m=C(C(E*W)-C(S*d));n=C(C(d*R)-C(W*n));d=C(K(C(C(o*o)+C(C(m*m)+C(n*n)))));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}d=C(Y-i);p=C(p-j);i=C(s-i);s=C(P-j);j=C(C(d*p)-C(i*s));A=C(A-g);E=p;p=C(J-g);g=C(C(s*A)-C(E*p));i=C(C(p*i)-C(A*d));d=C(K(C(C(j*j)+C(C(g*g)+C(i*i)))));if(d>C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}ea=C(C(o*j)+C(C(m*g)+C(n*i)))>2];p=z[k+4>>2];s=z[k>>2];h=r+B(h,12)|0;J=z[h+8>>2];P=z[h+4>>2];Y=z[h>>2];f=r+B(f,12)|0;g=z[f+8>>2];j=z[f+4>>2];i=z[f>>2];o=z[V>>2];n=C(z[U>>2]-o);m=z[V+4>>2];d=C(z[T+4>>2]-m);R=C(z[T>>2]-o);m=C(z[U+4>>2]-m);o=C(C(n*d)-C(R*m));E=m;m=z[V+8>>2];W=C(z[T+8>>2]-m);S=d;d=C(z[U+8>>2]-m);m=C(C(E*W)-C(S*d));n=C(C(d*R)-C(W*n));d=C(K(C(C(o*o)+C(C(m*m)+C(n*n)))));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}d=C(Y-i);p=C(p-j);i=C(s-i);s=C(P-j);j=C(C(d*p)-C(i*s));A=C(A-g);E=p;p=C(J-g);g=C(C(s*A)-C(E*p));i=C(C(p*i)-C(A*d));d=C(K(C(C(j*j)+C(C(g*g)+C(i*i)))));if(d>C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}fa=C(C(o*j)+C(C(m*g)+C(n*i)))>2];g=C(z[e>>2]-j);k=r+B(N,12)|0;i=z[c+4>>2];m=C(z[k+4>>2]-i);j=C(z[k>>2]-j);i=C(z[e+4>>2]-i);o=C(C(g*m)-C(j*i));d=i;i=z[c+8>>2];n=C(z[k+8>>2]-i);i=C(z[e+8>>2]-i);m=C(C(d*n)-C(m*i));n=C(C(i*j)-C(n*g));A=C(C(o*o)+C(C(m*m)+C(n*n)));j=z[V>>2];i=C(z[U>>2]-j);g=z[V+4>>2];d=C(z[T+4>>2]-g);p=C(z[T>>2]-j);g=C(z[U+4>>2]-g);j=C(C(i*d)-C(p*g));E=g;g=z[V+8>>2];s=C(z[T+8>>2]-g);S=d;d=C(z[U+8>>2]-g);g=C(C(E*s)-C(S*d));i=C(C(d*p)-C(s*i));d=C(K(C(C(j*j)+C(C(g*g)+C(i*i)))));if(d>C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}d=C(K(A));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}d=C(C(g*n)-C(m*i));p=C(d*d);d=C(C(i*o)-C(n*j));E=C(d*d);d=C(C(j*m)-C(o*g));Q=(F|0)==1|C(D(B9(C(K(C(p+C(E+C(d*d))))),C(C(j*o)+C(C(g*m)+C(i*n))))))>ba;break g}f=v[X+4>>2];h=v[X>>2];q:{r:{if((h|0)==(e|0)){if((c|0)==(f|0)){c=l;break q}if((f|0)!=(l|0)){break r}break q}if((c|0)==(h|0)){if((f|0)==(e|0)){c=l;break q}c=e;if((f|0)!=(l|0)){break r}break q}if((h|0)!=(l|0)){break r}if((c|0)==(f|0)){c=e;break q}if((f|0)==(e|0)){break q}}c=-1}j=C(0);g=C(0);i=C(0);e=r+B(M,12)|0;f=r+B(q,12)|0;d=z[f>>2];n=C(z[e>>2]-d);k=r+B(N,12)|0;A=z[f+4>>2];m=C(z[k+4>>2]-A);s=C(z[k>>2]-d);p=C(z[e+4>>2]-A);o=C(C(n*m)-C(s*p));E=p;p=z[f+8>>2];J=C(z[k+8>>2]-p);P=C(z[e+8>>2]-p);m=C(C(E*J)-C(m*P));n=C(C(P*s)-C(J*n));s=C(C(o*o)+C(C(m*m)+C(n*n)));if(s>C(0)){j=C(C(1)/C(K(s)));i=C(o*j);g=C(n*j);j=C(m*j)}e=r+B(c,12)|0;if(!(C(C(C(z[e+8>>2]*i)+C(C(z[e>>2]*j)+C(g*z[e+4>>2])))-C(C(p*i)+C(C(d*j)+C(A*g))))>2];i=C(z[U>>2]-j);g=z[V+4>>2];d=C(z[T+4>>2]-g);A=C(z[T>>2]-j);g=C(z[U+4>>2]-g);j=C(C(i*d)-C(A*g));E=g;g=z[V+8>>2];p=C(z[T+8>>2]-g);S=d;d=C(z[U+8>>2]-g);g=C(C(E*p)-C(S*d));i=C(C(d*A)-C(p*i));d=C(K(C(C(j*j)+C(C(g*g)+C(i*i)))));if(d>C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}d=C(K(s));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}d=C(C(g*n)-C(m*i));p=C(d*d);d=C(C(i*o)-C(n*j));E=C(d*d);d=C(C(j*m)-C(o*g));Q=(F|0)==1|C(D(B9(C(K(C(p+C(E+C(d*d))))),C(C(j*o)+C(C(g*m)+C(i*n))))))>ba}t[ca|0]=Q;X=X+8|0;Z=Z+8|0;ca=ca+1|0;if(_){continue}break}if(v[a+8>>2]){k=v[a+12>>2];e=0;while(1){c=B(e,12)+k|0;f=v[c>>2];if(!((f|0)<0|!w[(f&268435455)+I|0])){v[c>>2]=f|-2147483648}f=v[c+4>>2];if(!((f|0)<0|!w[(f&268435455)+I|0])){v[c+4>>2]=f|-2147483648}f=v[c+8>>2];if(!((f|0)<0|!w[(f&268435455)+I|0])){v[c+8>>2]=f|-2147483648}e=e+1|0;if(e>>>0>2]){continue}break}}c=v[a>>2];s:{t:{if(c){k=v[a+16>>2];f=0;if((c|0)!=1){l=c&-2;e=0;while(1){if(w[f+I|0]){h=(f<<3)+k|0;u[h>>1]=x[h>>1]|1}h=f|1;if(w[h+I|0]){h=(h<<3)+k|0;u[h>>1]=x[h>>1]|1}f=f+2|0;e=e+2|0;if((l|0)!=(e|0)){continue}break}}if(!(c&1)|!w[f+I|0]){break t}e=(f<<3)+k|0;u[e>>1]=x[e>>1]|1;break t}if(!I){break s}}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,I)}u:{v:{if(!aa){f=1;break v}e=0;w:{if(H){f=0;while(1){c=H+B(e,12)|0;k=v[c+8>>2];l=v[c+4>>2];c=v[c>>2];c=c>>>0>f>>>0?c:f;c=c>>>0>>0?l:c;f=c>>>0>>0?k:c;e=e+1|0;if((aa|0)!=(e|0)){continue}break}break w}f=0;while(1){c=B(e,6)+O|0;k=x[c+4>>1];l=x[c+2>>1];c=x[c>>1];c=c>>>0>f>>>0?c:f;c=c>>>0>>0?l:c;f=c>>>0>>0?k:c;e=e+1|0;if((aa|0)!=(e|0)){continue}break}}c=0;f=f+1|0;e=0;if(!f){break u}}e=v[37696]+12|0;c=Ba[v[v[e>>2]+8>>2]](e,f,24422,6398,643)|0;e=f}f=0;e=I9(c,0,e);L=v[a+8>>2];x:{if(!L){break x}F=v[a+12>>2];while(1){y:{z:{if(H){c=H+B(f,12)|0;k=v[c>>2];v[G+4>>2]=k;v[G+8>>2]=v[c+4>>2];c=v[c+8>>2];break z}if(!O){break y}c=B(f,6)+O|0;k=x[c>>1];v[G+4>>2]=k;v[G+8>>2]=x[c+2>>1];c=x[c+4>>1]}v[G+12>>2]=c}c=B(f,12)+F|0;if(v[c>>2]<0){t[e+v[G+8>>2]|0]=1;t[e+k|0]=1}if(v[c+4>>2]<0){l=v[G+8>>2];t[e+v[G+12>>2]|0]=1;t[e+l|0]=1}if(v[c+8>>2]<0){t[e+v[G+12>>2]|0]=1;t[e+k|0]=1}f=f+1|0;if((L|0)!=(f|0)){continue}break}if(!L){break x}l=v[a+12>>2];c=0;while(1){A:{if(H){f=H+B(c,12)|0;F=v[f>>2];k=v[f+8>>2];L=v[f+4>>2];break A}if(!O){break A}f=B(c,6)+O|0;F=x[f>>1];k=x[f+4>>1];L=x[f+2>>1]}f=l+B(c,12)|0;h=v[f>>2];if(!(!w[e+F|0]|h&1073741824)){v[f>>2]=h|1073741824}h=v[f+4>>2];if(!(!w[e+L|0]|h&1073741824)){v[f+4>>2]=h|1073741824}h=v[f+8>>2];if(!(!w[e+k|0]|h&1073741824)){v[f+8>>2]=h|1073741824}c=c+1|0;if(c>>>0>2]){continue}break}}if(!e){break f}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=($|0)!=0}xa=G+16|0;if(!e){break a}}if(!w[b+12|0]){e=v[a+12>>2];if(e){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e)}v[a+12>>2]=0}ia=1;if(w[b+13|0]){break a}b=v[a+16>>2];if(b){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}v[a+16>>2]=0;b=v[a+20>>2];if(b){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}v[a+20>>2]=0}return ia}function H4(a){var b=0,c=0,d=0,e=0,f=C(0),g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=0,A=C(0),E=0,F=C(0),G=0,H=0,I=C(0),J=C(0),L=0,M=0,N=0,O=0,P=C(0),Q=0,R=C(0),S=C(0),T=0,U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(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=C(0),na=C(0),oa=C(0);N=xa-16|0;xa=N;if(!w[a+104|0]){l=v[a+36>>2];z[a+108>>2]=z[l>>2];i=a+112|0;z[i>>2]=z[l+4>>2];g=a+116|0;z[g>>2]=z[l+8>>2];v[a+128>>2]=v[l+20>>2];e=v[l+16>>2];h=a+120|0;v[h>>2]=v[l+12>>2];v[h+4>>2]=e;z[a+180>>2]=z[l>>2];k=a+184|0;z[k>>2]=z[l+4>>2];j=a+188|0;z[j>>2]=z[l+8>>2];v[a+200>>2]=v[l+20>>2];b=v[l+16>>2];q=a+192|0;e=q;v[e>>2]=v[l+12>>2];v[e+4>>2]=b;G=a+132|0;z[G>>2]=z[l>>2];L=a+136|0;z[L>>2]=z[l+4>>2];H=a+140|0;z[H>>2]=z[l+8>>2];v[a+152>>2]=v[l+20>>2];b=v[l+16>>2];M=a+144|0;e=M;v[e>>2]=v[l+12>>2];v[e+4>>2]=b;Q=a+204|0;z[Q>>2]=z[l>>2];O=a+208|0;z[O>>2]=z[l+4>>2];T=a+212|0;z[T>>2]=z[l+8>>2];v[a+224>>2]=v[l+20>>2];b=v[l+16>>2];aa=a+216|0;e=aa;v[e>>2]=v[l+12>>2];v[e+4>>2]=b;ba=a+156|0;z[ba>>2]=z[l>>2];ca=a+160|0;z[ca>>2]=z[l+4>>2];da=a+164|0;z[da>>2]=z[l+8>>2];v[a+176>>2]=v[l+20>>2];b=v[l+16>>2];ea=a+168|0;e=ea;v[e>>2]=v[l+12>>2];v[e+4>>2]=b;fa=a+228|0;z[fa>>2]=z[l>>2];ga=a+232|0;z[ga>>2]=z[l+4>>2];ha=a+236|0;z[ha>>2]=z[l+8>>2];v[a+248>>2]=v[l+20>>2];b=v[l+16>>2];ia=a+240|0;e=ia;v[e>>2]=v[l+12>>2];v[e+4>>2]=b;m=z[l+8>>2];r=z[l+4>>2];A=z[l>>2];ja=v[a+24>>2];a:{if(ja>>>0<2){p=m;F=r;n=A;break a}ka=a+180|0;la=a+108|0;V=1;n=A;F=r;p=m;while(1){E=B(V,24)+l|0;o=z[E>>2];b:{c:{if(o>n){c=ka;d=k;b=j;e=q;n=o;f=A;break c}c=la;d=i;b=g;e=h;f=o;if(!(A>f)){break b}}z[c>>2]=o;z[d>>2]=z[E+4>>2];z[b>>2]=z[E+8>>2];v[e+8>>2]=v[E+20>>2];b=v[E+16>>2];v[e>>2]=v[E+12>>2];v[e+4>>2]=b;A=f}o=z[E+4>>2];d:{e:{if(o>F){c=Q;d=O;b=T;e=aa;F=o;f=r;break e}c=G;d=L;b=H;e=M;f=o;if(!(r>f)){break d}}z[c>>2]=z[E>>2];z[d>>2]=o;z[b>>2]=z[E+8>>2];v[e+8>>2]=v[E+20>>2];b=v[E+16>>2];v[e>>2]=v[E+12>>2];v[e+4>>2]=b;r=f}o=z[E+8>>2];f:{g:{if(o>p){c=fa;d=ga;b=ha;e=ia;p=o;f=m;break g}c=ba;d=ca;b=da;e=ea;f=o;if(!(m>f)){break f}}z[c>>2]=z[E>>2];z[d>>2]=z[E+4>>2];z[b>>2]=o;v[e+8>>2]=v[E+20>>2];b=v[E+16>>2];v[e>>2]=v[E+12>>2];v[e+4>>2]=b;m=f}V=V+1|0;if((ja|0)!=(V|0)){continue}break}}f=C(C(C(p+C(C(F+C(n-A))-r))-m)*C(.5));m=C(f*C(3.5762786865234375e-7));z[a+252>>2]=m>C(3.5762786865234375e-7)?m:C(3.5762786865234375e-7);m=f;f=z[v[a>>2]+4>>2];m=C(m*f);z[a+256>>2]=f>2]-z[a+136>>2]);n=C(z[a+180>>2]-z[a+108>>2]);n=n>C(0)?n:C(0);b=f>n;s=C(z[a+236>>2]-z[a+164>>2]);f=b?f:n;c=s>f;Y=z[a+252>>2];h:{if(Y>=(c?s:f)){a9(v[37696],32,13134,876,23097,0);b=0;break h}b=B(c?2:b,24)+a|0;Z=z[b+180>>2];z[d>>2]=Z;_=z[b+184>>2];z[d+4>>2]=_;$=z[b+188>>2];z[d+8>>2]=$;v[d+20>>2]=v[b+200>>2];c=v[b+196>>2];v[d+12>>2]=v[b+192>>2];v[d+16>>2]=c;f=z[b+108>>2];z[d+24>>2]=f;s=z[b+112>>2];z[d+28>>2]=s;n=z[b+116>>2];z[d+32>>2]=n;c=v[b+124>>2];v[d+36>>2]=v[b+120>>2];v[d+40>>2]=c;v[d+44>>2]=v[b+128>>2];n=C(n-$);R=C(f-Z);S=C(s-_);f=C(K(C(C(n*n)+C(C(R*R)+C(S*S)))));if(f>C(0)){f=C(C(1)/f);n=C(n*f);S=C(S*f);R=C(R*f)}h=v[a+24>>2];i:{if(!h){f=C(0);break i}ma=C(-S);na=C(-R);oa=C(-n);i=v[a+36>>2];b=0;f=C(0);g=v[d+36>>2];k=v[d+12>>2];while(1){c=i+B(b,24)|0;W=z[c+4>>2];I=C(W-_);m=z[c>>2];J=C(m-Z);s=C(C(R*I)+C(J*ma));r=z[c+8>>2];P=C(r-$);I=C(C(S*P)+C(I*oa));J=C(C(n*J)+C(P*na));P=C(C(s*s)+C(C(I*I)+C(J*J)));j:{if(!(P>f)){break j}j=v[c+12>>2];if((j|0)==(k|0)|(g|0)==(j|0)){break j}j=v[c+16>>2];v[d+60>>2]=v[c+12>>2];v[d+64>>2]=j;v[d+68>>2]=v[c+20>>2];o=r;U=W;X=m;A=I;p=J;F=s;f=P}b=b+1|0;if((h|0)!=(b|0)){continue}break}z[d+56>>2]=o;z[d+52>>2]=U;z[d+48>>2]=X}if(C(K(f))<=Y){a9(v[37696],32,13134,911,66461,0);b=0;break h}f=C(0);s=C(K(C(C(F*F)+C(C(A*A)+C(p*p)))));if(s>C(0)){s=C(C(1)/s);F=C(F*s);p=C(p*s);A=C(A*s)}U=C(C(o*F)+C(C(X*A)+C(p*U)));if(h){g=v[a+36>>2];k=v[d+60>>2];b=0;j=v[d+36>>2];q=v[d+12>>2];while(1){c=g+B(b,24)|0;o=z[c+8>>2];s=z[c>>2];I=z[c+4>>2];J=C(D(C(C(C(o*F)+C(C(s*A)+C(p*I)))-U)));k:{if(!(J>f)){break k}i=v[c+12>>2];if((i|0)==(q|0)|(i|0)==(j|0)|(i|0)==(k|0)){break k}i=v[c+16>>2];v[d+84>>2]=v[c+12>>2];v[d+88>>2]=i;v[d+92>>2]=v[c+20>>2];m=o;r=I;n=s;f=J}b=b+1|0;if((h|0)!=(b|0)){continue}break}z[d+80>>2]=m;z[d+76>>2]=r;z[d+72>>2]=n}if(C(D(f))<=Y){a9(v[37696],32,13134,934,66380,0);b=0;break h}h=xa-16|0;xa=h;f=z[d+76>>2];o=z[d+52>>2];s=z[d+28>>2];I=z[d+80>>2];J=z[d+56>>2];X=z[d+32>>2];W=z[d+4>>2];P=z[d+8>>2];z[a+8>>2]=C(C(C(z[d>>2]+z[d+24>>2])+z[d+48>>2])+z[d+72>>2])*C(.25);z[a+16>>2]=C(I+C(J+C(P+X)))*C(.25);z[a+12>>2]=C(f+C(o+C(W+s)))*C(.25);i=d+72|0;g=d+48|0;k=d+24|0;l:{if(C(C(C(m*F)+C(C(n*A)+C(p*r)))-U)>2]=b;c=F4(a,i,k,d);v[h+4>>2]=c;k=F4(a,i,g,k);v[h+8>>2]=k;i=F4(a,i,d,g);v[h+12>>2]=i;g=v[v[c>>2]+28>>2];j=v[k>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[v[v[c>>2]+28>>2]+28>>2];j=v[v[b>>2]+28>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[v[k>>2]+28>>2];j=v[i>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[v[v[k>>2]+28>>2]+28>>2];k=v[v[v[b>>2]+28>>2]+28>>2];v[g+32>>2]=k;v[k+32>>2]=g;g=v[v[i>>2]+28>>2];c=v[c>>2];v[g+32>>2]=c;v[c+32>>2]=g;c=b;break l}c=F4(a,d,g,k);v[h>>2]=c;b=F4(a,i,d,k);v[h+4>>2]=b;k=F4(a,i,k,g);v[h+8>>2]=k;i=F4(a,i,g,d);v[h+12>>2]=i;g=v[b>>2];j=v[v[k>>2]+28>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[v[v[b>>2]+28>>2]+28>>2];j=v[c>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[k>>2];j=v[v[i>>2]+28>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[v[v[k>>2]+28>>2]+28>>2];k=v[v[v[c>>2]+28>>2]+28>>2];v[g+32>>2]=k;v[k+32>>2]=g;g=v[i>>2];b=v[v[b>>2]+28>>2];v[g+32>>2]=b;v[b+32>>2]=g;b=v[c>>2]+28|0}i=v[v[v[i>>2]+28>>2]+28>>2];b=v[b>>2];v[i+32>>2]=b;v[b+32>>2]=i;g=a+88|0;i=v[a+96>>2]&2147483647;b=v[a+92>>2];m:{if(i>>>0<=b>>>0){x4(g,h);i=v[a+96>>2]&2147483647;b=v[a+92>>2];break m}v[v[a+88>>2]+(b<<2)>>2]=c;b=b+1|0;v[a+92>>2]=b}n:{if(b>>>0>=i>>>0){x4(g,h|4);i=v[a+96>>2]&2147483647;b=v[a+92>>2];break n}v[v[a+88>>2]+(b<<2)>>2]=v[h+4>>2];b=b+1|0;v[a+92>>2]=b}o:{if(b>>>0>=i>>>0){x4(g,h|8);i=v[a+96>>2]&2147483647;b=v[a+92>>2];break o}v[v[a+88>>2]+(b<<2)>>2]=v[h+8>>2];b=b+1|0;v[a+92>>2]=b}p:{if(b>>>0>=i>>>0){x4(g,h|12);break p}v[v[a+88>>2]+(b<<2)>>2]=v[h+12>>2];v[a+92>>2]=b+1}v[a+100>>2]=4;M=v[a+24>>2];if(M){A=z[a+252>>2];Q=v[d+12>>2];O=v[a+36>>2];i=0;while(1){b=O+B(i,24)|0;c=v[b+12>>2];q:{if((c|0)==(Q|0)|(c|0)==v[d+36>>2]|((c|0)==v[d+60>>2]|(c|0)==v[d+84>>2])){break q}c=v[h>>2];f=z[b+8>>2];m=z[b>>2];r=z[b+4>>2];p=C(C(C(z[c+20>>2]*f)+C(C(z[c+12>>2]*m)+C(r*z[c+16>>2])))-z[c+40>>2]);q=p>A;g=v[h+4>>2];F=C(C(C(z[g+20>>2]*f)+C(C(z[g+12>>2]*m)+C(r*z[g+16>>2])))-z[g+40>>2]);p=q?p:A;G=F>p;k=v[h+8>>2];n=C(C(C(z[k+20>>2]*f)+C(C(z[k+12>>2]*m)+C(r*z[k+16>>2])))-z[k+40>>2]);p=G?F:p;L=n>p;j=v[h+12>>2];f=C(C(C(z[j+20>>2]*f)+C(C(z[j+12>>2]*m)+C(r*z[j+16>>2])))-z[j+40>>2]);m=L?n:p;H=f>m;g=H?j:L?k:G?g:q?c:0;if(!g){break q}f=H?f:m;z[b+16>>2]=f;c=v[g+8>>2];if(!c){v[g+8>>2]=b;z[b+16>>2]=f;v[b+20>>2]=0;break q}if(f>2]){v[b+20>>2]=v[c+20>>2];v[c+20>>2]=b;break q}v[b+20>>2]=c;v[g+8>>2]=b}i=i+1|0;if((M|0)!=(i|0)){continue}break}}xa=h+16|0;b=1}xa=d+96|0;r:{if(!b){break r}g=4;b=v[a+92>>2];c=v[a+4>>2];s:{if(w[c+36|0]&4){if(!b){break s}f=z[v[a>>2]>>2];f=C(f+f);d=v[a+88>>2];e=1;while(1){if(f>z[v[d+(u<<2)>>2]+24>>2]){break r}u=u+1|0;if((u|0)!=(b|0)){continue}break}}if(!b){break s}while(1){k=b&1;h=v[a+88>>2];f=z[a+256>>2];t:{if((b|0)==1){u=0;b=0;e=0;break t}j=b&-2;u=0;b=0;e=0;i=0;while(1){q=b<<2;c=v[q+h>>2];u:{if(v[c+48>>2]){break u}d=v[c+8>>2];if(!d){break u}m=z[d+16>>2];if(!(m>f)){break u}e=c;f=m;u=d}c=v[h+(q|4)>>2];v:{if(v[c+48>>2]){break v}d=v[c+8>>2];if(!d){break v}m=z[d+16>>2];if(!(m>f)){break v}e=c;f=m;u=d}b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}w:{if(!k){break w}b=v[h+(b<<2)>>2];if(v[b+48>>2]){break w}c=v[b+8>>2];if(!c|!(z[c+16>>2]>f)){break w}e=b;u=c}x:{if(!u|v[u+12>>2]==v[a+32>>2]){break x}b=v[a+4>>2];if(x[b+38>>1]<=g>>>0?w[b+36|0]&32:0){break x}t[N+15|0]=0;c=0;i=0;k=xa-16|0;xa=k;t[N+15|0]=0;v[e+8>>2]=v[v[e+8>>2]+20>>2];L=a+272|0;I4(a,u,0,e,L,a+296|0);j=v[a+100>>2];M=j+v[a+276>>2]|0;y:{if(M>>>0>=256){d=v[a+300>>2];z:{if(!d){break z}c=v[a+296>>2];b=0;if(d-1>>>0>=3){q=d&-4;e=0;while(1){h=b<<2;v[v[h+c>>2]+48>>2]=0;v[v[c+(h|4)>>2]+48>>2]=0;v[v[c+(h|8)>>2]+48>>2]=0;v[v[c+(h|12)>>2]+48>>2]=0;b=b+4|0;e=e+4|0;if((q|0)!=(e|0)){continue}break}}e=d&3;if(!e){break z}while(1){v[v[c+(b<<2)>>2]+48>>2]=0;b=b+1|0;i=i+1|0;if((e|0)!=(i|0)){continue}break}}v[a+100>>2]=d+j;break y}j=a+284|0;h=0;b=0;G=0;q=xa-16|0;xa=q;Q=a+88|0;while(1){e=v[v[L>>2]+(G<<2)>>2];H=F4(a,u,v[e+32>>2],e);v[q+12>>2]=H;d=v[a+92>>2];A:{if(d>>>0>=(v[a+96>>2]&2147483647)>>>0){x4(Q,q+12|0);break A}v[v[a+88>>2]+(d<<2)>>2]=H;v[a+92>>2]=d+1}v[a+100>>2]=v[a+100>>2]+1;O=v[q+12>>2];d=v[O>>2];H=v[d+28>>2];T=v[H+28>>2];e=v[e+32>>2];v[T+32>>2]=e;v[e+32>>2]=T;e=d;if(h){v[H+32>>2]=h;v[h+32>>2]=H;e=b}b=v[j+4>>2];B:{if(b>>>0>=(v[j+8>>2]&2147483647)>>>0){x4(j,q+12|0);break B}v[v[j>>2]+(b<<2)>>2]=O;v[j+4>>2]=b+1}h=d;b=e;G=G+1|0;if(G>>>0>2]){continue}break}e=v[b+28>>2];v[e+32>>2]=h;v[h+32>>2]=e;xa=q+16|0;t[k+15|0]=0;C:{h=v[a+288>>2];D:{if(!h){break D}while(1){e=v[v[a+284>>2]+(c<<2)>>2];if(!v[e+48>>2]){while(1){if(J4(a,e,1,k+15|0)){continue}break}h=v[a+288>>2]}c=c+1|0;if(h>>>0>c>>>0){continue}break}if(w[k+15|0]){break C}if(!h){break D}c=0;while(1){e=v[v[a+284>>2]+(c<<2)>>2];if(v[e+48>>2]==2){v[e+48>>2]=0;while(1){if(J4(a,e,0,k+15|0)){continue}break}h=v[a+288>>2]}c=c+1|0;if(h>>>0>c>>>0){continue}break}if(w[k+15|0]){t[N+15|0]=1;break y}j=v[a+264>>2];if(!j|!h){break D}q=v[a+284>>2];m=z[a+252>>2];G=v[a+260>>2];while(1){d=v[G+(i<<2)>>2];b=0;e=0;f=m;while(1){c=v[q+(b<<2)>>2];E:{if(v[c+48>>2]){break E}r=C(C(C(z[c+20>>2]*z[d+8>>2])+C(C(z[c+12>>2]*z[d>>2])+C(z[d+4>>2]*z[c+16>>2])))-z[c+40>>2]);if(!(r>f)){break E}f=r;e=c}b=b+1|0;if((h|0)!=(b|0)){continue}break}F:{if(!e){break F}z[d+16>>2]=f;b=v[e+8>>2];if(b){if(!(z[b+16>>2]>f)){v[d+20>>2]=b;v[e+8>>2]=d;break F}v[d+20>>2]=v[b+20>>2];v[b+20>>2]=d;break F}v[e+8>>2]=d;v[d+20>>2]=0;z[d+16>>2]=f}i=i+1|0;if((j|0)!=(i|0)){continue}break}}v[a+288>>2]=0;v[a+276>>2]=0;v[a+264>>2]=0;v[a+300>>2]=0;break y}t[N+15|0]=1}xa=k+16|0;if(M>>>0>=256){v[a+28>>2]=g;e=3;break r}if(w[N+15|0]){v[a+32>>2]=v[u+12>>2];c=0;e=xa-16|0;xa=e;b=a+52|0;d=v[a+56>>2];if(d){while(1){u=v[v[b>>2]+(c<<2)>>2];if(u){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,u);d=v[a+56>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}v[a+44>>2]=0;v[a+48>>2]=0;c=0;v[a+56>>2]=0;d=B(v[a+40>>2],44);G:{if(!d){d=0;break G}c=v[37696]+12|0;d=Ba[v[v[c>>2]+8>>2]](c,d,24422,13134,83)|0;c=v[a+56>>2]}v[e+12>>2]=d;H:{if((v[a+60>>2]&2147483647)>>>0<=c>>>0){C4(b,e+12|0);break H}v[v[a+52>>2]+(c<<2)>>2]=d;v[a+56>>2]=c+1}xa=e+16|0;u=v[a+80>>2];if(u){b=0;while(1){e=v[v[a+76>>2]+(b<<2)>>2];if(e){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e);u=v[a+80>>2]}b=b+1|0;if(u>>>0>b>>>0){continue}break}}v[a+80>>2]=0;v[a+68>>2]=0;v[a+72>>2]=0;D4(a- -64|0,v[a+64>>2]);v[a+312>>2]=0;v[a+300>>2]=0;v[a+288>>2]=0;v[a+276>>2]=0;v[a+264>>2]=0;v[a+100>>2]=0;v[a+92>>2]=0;e=H4(a);break r}g=g+1|0;b=v[a+92>>2];if(b){continue}}break}c=v[a+4>>2]}v[a+28>>2]=g;e=(x[c+38>>1]>>0)<<1}xa=N+16|0;return e}function G$(a,b,c,d,e){var f=C(0),g=C(0),h=0,i=C(0),k=C(0),m=C(0),n=C(0),o=C(0),r=C(0),s=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Ca=C(0),Da=C(0),Ea=0,Fa=0,Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=0,La=0,Ma=0;h=xa-288|0;xa=h;V=w[c+64|0];J=v[c+24>>2];Fa=v[c+28>>2];y=z[c+60>>2];R=h- -64|0;v[R>>2]=0;v[R+4>>2]=0;v[h+72>>2]=0;v[h+76>>2]=0;v[h+80>>2]=0;v[h+112>>2]=0;v[h+116>>2]=0;u[h+108>>1]=0;v[h+100>>2]=0;v[h+104>>2]=-1;z[h+88>>2]=y;t[h+84|0]=b;v[h+120>>2]=0;v[h+124>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+36>>2]=143208;v[h+56>>2]=0;v[h+60>>2]=0;v[h+92>>2]=0;v[h+96>>2]=0;v[h+32>>2]=143184;La=h,Ma=Vaa(J,Fa),v[La+48>>2]=Ma;v[h+52>>2]=Aa;v[h+44>>2]=V>>>1&1;v[h+40>>2]=d;v[h+144>>2]=0;v[h+136>>2]=2139095039;v[h+140>>2]=0;b=v[d+4>>2];v[h+248>>2]=0;v[h+252>>2]=0;v[h+256>>2]=0;v[h+260>>2]=0;v[h+264>>2]=0;v[h+268>>2]=0;v[h+240>>2]=0;v[h+244>>2]=0;t[h+208|0]=0;t[h+209|0]=(b|0)==1;V=h+32|4;a:{b:{if(!e){break b}if(!(C(D(z[n$(h+272|0,a)+12>>2]))>C(.9998999834060669))){break b}O=z[a+16>>2];W=z[a+28>>2];P=z[a+20>>2];X=z[a+32>>2];Y=z[a+4>>2];Z=z[a+8>>2];y=z[a+40>>2];A=z[a+44>>2];S=z[a+36>>2];s=z[a+56>>2];L=z[a+48>>2];M=z[a+52>>2];T=C(C(C(D(z[a+24>>2]))*s)+C(C(C(D(z[a>>2]))*L)+C(C(D(z[a+12>>2]))*M)));z[h+16>>2]=S-T;P=C(C(s*C(D(X)))+C(C(L*C(D(Z)))+C(M*C(D(P)))));z[h+24>>2]=A-P;s=C(C(s*C(D(W)))+C(C(L*C(D(Y)))+C(M*C(D(O)))));z[h+20>>2]=y-s;z[h+8>>2]=P+A;z[h+4>>2]=s+y;z[h>>2]=T+S;B0(c+112|0,h+16|0,h,V);break a}d=xa-528|0;xa=d;W=z[a+32>>2];P=z[a+28>>2];X=z[a+20>>2];Y=z[a+16>>2];L=z[a+56>>2];M=z[a+52>>2];y=z[a+44>>2];A=z[a+40>>2];Z=z[a+24>>2];S=z[a+12>>2];T=z[a+8>>2];ca=z[a+4>>2];da=z[a>>2];O=z[a+48>>2];s=z[a+36>>2];Fa=v[c+200>>2];a=v[c+180>>2];b=a-1|0;c:{if((b|0)<0){c=d+16|0;break c}c=d+16|0;J=a&7;d:{if(!J){a=b;break d}e=0;a=b;while(1){v[c>>2]=B(a,112);a=a-1|0;c=c+4|0;e=e+1|0;if((J|0)!=(e|0)){continue}break}}if(b>>>0<=6){break c}while(1){b=B(a,112);v[c>>2]=b;v[c+28>>2]=b-784;v[c+24>>2]=b-672;v[c+20>>2]=b-560;v[c+16>>2]=b-448;v[c+12>>2]=b-336;v[c+8>>2]=b-224;v[c+4>>2]=b-112;c=c+32|0;b=(a|0)>7;a=a-8|0;if(b){continue}break}}fa=C(C(0)-L);ga=C(C(0)-M);ha=C(C(0)-O);ia=C(C(L*W)+C(0));ja=C(C(L*P)+C(0));ka=C(C(L*Z)+C(0));la=C(C(M*X)+C(0));ma=C(C(M*Y)+C(0));na=C(C(M*S)+C(0));oa=C(C(O*T)+C(0));pa=C(C(O*ca)+C(0));qa=C(C(O*da)+C(0));e=1;while(1){a=c-4|0;b=(e?Ea:v[a>>2])+Fa|0;i=z[b+4>>2];g=z[b+52>>2];ea=z[b+36>>2];m=z[b+84>>2];U=z[b+20>>2];r=z[b+68>>2];aa=z[b+8>>2];x=z[b+56>>2];wa=z[b+40>>2];N=z[b+88>>2];ya=z[b+24>>2];ba=z[b+72>>2];sa=z[b+12>>2];ra=z[b+60>>2];za=z[b+44>>2];ta=z[b+92>>2];Ca=z[b+28>>2];ua=z[b+76>>2];k=z[b>>2];f=z[b+48>>2];I=z[b+32>>2];n=z[b+80>>2];K=z[b+16>>2];o=z[b+64>>2];R=v[b+96>>2]&-2;v[d+12>>2]=R;e=0;e:{f:{if(fE?k:E;E=C(Q-s);F=oC(9.999999974752427e-7);Ja=C($+C(-9.999999974752427e-7));$=C(f-Ga);Da=C(o-Ha);Ia=C(n-va);if(J&Ja>C(C(C((l(2,(p(C(C($*E)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(Da*F)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(Ia*H)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*E)+C(C(pa*F)+C(C(oa*H)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*E)+C(C(ma*F)+C(C(la*H)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*E)+C(C(ja*F)+C(C(ia*H)+C(0))))),j(2))&2147483647),q())))){break f}f=fC(9.999999974752427e-7)){J=C(o+C(-9.999999974752427e-7))>C(C(C((l(2,(p(C(C($*f)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(Da*k)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(Ia*n)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*f)+C(C(pa*k)+C(C(oa*n)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*f)+C(C(ma*k)+C(C(la*n)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*f)+C(C(ja*k)+C(C(ia*n)+C(0))))),j(2))&2147483647),q())))}else{J=0}if(J){break f}if(t[b+96|0]&1){if(Ba[v[v[V>>2]>>2]](V,1,d+12|0)|0){break f}break e}v[a>>2]=R;e=1;Ea=v[d+12>>2];a=c}J=v[b+100>>2]&-2;v[d+12>>2]=J;E=C(C(C(i+g)*C(.5))+C(0));f=gr?r:A;G=kC(9.999999974752427e-7);$=C(F+C(-9.999999974752427e-7));F=C(g-E);Q=C(r-H);_=C(m-G);R=c&$>C(C(C((l(2,(p(C(C(F*f)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(Q*k)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(_*n)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*f)+C(C(pa*k)+C(C(oa*n)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*f)+C(C(ma*k)+C(C(la*n)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*f)+C(C(ja*k)+C(C(ia*n)+C(0))))),j(2))&2147483647),q())));f=gC(9.999999974752427e-7)){c=C(k+C(-9.999999974752427e-7))>C(C(C((l(2,(p(C(C(F*f)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(Q*r)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(_*m)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*f)+C(C(pa*r)+C(C(oa*m)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*f)+C(C(ma*r)+C(C(la*m)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*f)+C(C(ja*r)+C(C(ia*m)+C(0))))),j(2))&2147483647),q())))}else{c=0}g:{if(R|c|g>2]>>2]](V,1,d+12|0)|0){break g}break e}v[a>>2]=J;a=a+4|0;e=1;Ea=v[d+12>>2]}J=v[b+104>>2]&-2;v[d+12>>2]=J;n=C(C(C(aa+x)*C(.5))+C(0));g=s>x?x:s;r=gba?ba:A;U=fN?N:y;I=iC(9.999999974752427e-7);E=C(o+C(-9.999999974752427e-7));o=C(x-n);I=C(ba-ea);K=C(N-U);R=c&E>C(C(C((l(2,(p(C(C(o*g)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(I*f)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(K*i)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*g)+C(C(pa*f)+C(C(oa*i)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*g)+C(C(ma*f)+C(C(la*i)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*g)+C(C(ja*f)+C(C(ia*i)+C(0))))),j(2))&2147483647),q())));g=m>x?x:m;g=C(m-(gba?ba:r;f=C(r-(fN?N:k;i=C(k-(iC(9.999999974752427e-7)){c=C(m+C(-9.999999974752427e-7))>C(C(C((l(2,(p(C(C(o*g)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(I*f)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(K*i)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*g)+C(C(pa*f)+C(C(oa*i)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*g)+C(C(ma*f)+C(C(la*i)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*g)+C(C(ja*f)+C(C(ia*i)+C(0))))),j(2))&2147483647),q())))}else{c=0}h:{if(R|c|x>2]>>2]](V,1,d+12|0)|0){break h}break e}v[a>>2]=J;a=a+4|0;e=1;Ea=v[d+12>>2]}R=v[b+108>>2]&-2;v[d+12>>2]=R;aa=C(C(C(sa+ra)*C(.5))+C(0));g=s>ra?ra:s;m=gua?ua:A;k=xta?ta:y;n=fC(9.999999974752427e-7);E=C(N+C(-9.999999974752427e-7));N=C(ra-aa);n=C(ua-ba);o=C(ta-k);Ka=c&E>C(C(C((l(2,(p(C(C(N*g)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(n*x)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(o*f)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*g)+C(C(pa*x)+C(C(oa*f)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*g)+C(C(ma*x)+C(C(la*f)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*g)+C(C(ja*x)+C(C(ia*f)+C(0))))),j(2))&2147483647),q())));g=i>ra?ra:i;g=C(i-(gua?ua:m;x=C(m-(xta?ta:r;f=C(r-(fC(9.999999974752427e-7)){J=C(i+C(-9.999999974752427e-7))>C(C(C((l(2,(p(C(C(N*g)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(n*x)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(o*f)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*g)+C(C(pa*x)+C(C(oa*f)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*g)+C(C(ma*x)+C(C(la*f)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*g)+C(C(ja*x)+C(C(ia*f)+C(0))))),j(2))&2147483647),q())))}else{J=0}c=a;i:{if(Ka|J|ra>2]>>2]](V,1,d+12|0)|0){break i}break e}v[a>>2]=R;e=1;Ea=v[d+12>>2];c=a+4|0}if(c>>>0>d+16>>>0){continue}}break}xa=d+528|0}v[h+36>>2]=143208;v[h+32>>2]=143184;if(w[h+208|0]){a=v[h+40>>2];Ba[v[v[a>>2]>>2]](a,h+96|0,h+160|0,h+172|0,h+184|0,h+92|0,h+196|0)|0}xa=h+288|0}function M3(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=C(0),m=0,n=0,o=C(0),p=C(0),q=0,r=0,s=0,A=0,E=C(0),F=0,G=C(0),H=C(0),I=0,J=0,L=C(0),M=C(0),N=C(0),O=C(0);n=xa-48|0;xa=n;a:{b:{e=v[b+8>>2];c:{if(e>>>0<3){break c}J=v[b+20>>2];g=v[b+16>>2];if(!((e>>>0)%3|0?g:1)|(y[b+28>>2]<2?v[b+32>>2]:0)){break c}d:{if(e>>>0>=65536){if(w[b+24|0]&2){break c}if(v[b+4>>2]){break d}break c}if(!v[b+4>>2]){break c}}if(y[b>>2]<12){break c}if(!g|y[b+12>>2]>=(w[b+24|0]&2?6:12)>>>0){break b}}a9(v[37696],4,9248,771,76121,0);b=0;break a}e:{f:{g:{h:{e=v[a+8>>2];switch(v[e+40>>2]){case 0:break h;case 1:break g;default:break f}}l=z[e+32>>2];if(lC(1)){break f}break e}if(v[e+32>>2]-4>>>0<12){break e}}a9(v[37696],4,9248,778,76172,0);b=0;break a}g=v[b+20>>2];h=v[b+16>>2];v[n+24>>2]=h;v[n+28>>2]=g;g=v[b+12>>2];v[n+16>>2]=v[b+8>>2];v[n+20>>2]=g;g=v[b+4>>2];v[n+8>>2]=v[b>>2];v[n+12>>2]=g;f=x[b+24>>1];u[n+32>>1]=f;g=v[b+32>>2];v[n+36>>2]=v[b+28>>2];v[n+40>>2]=g;i:{if(!h){g=v[n+16>>2];v[n+28>>2]=(g>>>0)/3;v[n+20>>2]=12;u[n+32>>1]=f&65533;e=(g|0)!=(g&1073741823)?-1:g<<2;if(e){b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,h,9248,799)|0}else{e=0}j:{if(!g){break j}b=0;if(g-1>>>0>=7){h=g&-8;while(1){v[e+(b<<2)>>2]=b;f=b|1;v[e+(f<<2)>>2]=f;f=b|2;v[e+(f<<2)>>2]=f;f=b|3;v[e+(f<<2)>>2]=f;f=b|4;v[e+(f<<2)>>2]=f;f=b|5;v[e+(f<<2)>>2]=f;f=b|6;v[e+(f<<2)>>2]=f;f=b|7;v[e+(f<<2)>>2]=f;b=b+8|0;m=m+8|0;if((h|0)!=(m|0)){continue}break}}g=g&7;if(!g){break j}while(1){v[e+(b<<2)>>2]=b;b=b+1|0;j=j+1|0;if((g|0)!=(j|0)){continue}break}}v[n+24>>2]=e;b=0;if(!N3(a,n+8|0,v[a+8>>2],c,d)){break a}if(!e){break i}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);break i}b=0;if(!N3(a,n+8|0,e,c,d)){break a}}k:{if(!w[v[a+8>>2]+14|0]){break k}b=v[a+12>>2];H9(v[b+56>>2],v[b+72>>2],B(v[b+68>>2],12));b=v[a+12>>2];d=v[b+48>>2];if(!d){break k}j=v[b+68>>2];c=(j&1073741823)!=(j|0)?-1:j<<2;l:{if(!c){c=0;break l}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,638)|0;b=v[a+12>>2];j=v[b+68>>2];d=v[b+48>>2]}v[b+64>>2]=c;H9(c,d,j<<2)}Ba[v[v[a>>2]+12>>2]](a);b=v[a+12>>2];BV(b+20|0,v[b+12>>2],v[b+16>>2]);l=C(D(z[b+32>>2]));k=C(D(z[b+20>>2]));l=k>2]));o=C(D(z[b+24>>2]));k=k>o?k:o;l=k>2]));o=C(D(z[b+28>>2]));k=k>o?k:o;z[b+44>>2]=(k>2];g=w[b+13|0];m:{if(!(v[b+24>>2]&4?g:1)){break m}n:{b=v[a+12>>2];c=v[b+68>>2];if(!c){v[b+76>>2]=0;I9(0,0,c);break n}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?35013:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,250)|0;v[v[a+12>>2]+76>>2]=b;I9(b,0,c);if(c>>>0<1073741824){break n}a9(v[37696],4,9248,257,73172,0);break m}m=v[v[a+12>>2]+72>>2];b=xa-32|0;xa=b;v[b+28>>2]=1036831949;d=v[a+12>>2];v[b+8>>2]=v[d+68>>2];e=v[d+72>>2];j=w[d+8|0];u[b+20>>1]=257;v[b+12>>2]=j&2?0:e;v[b+16>>2]=e&j<<30>>31;v[b+24>>2]=v[d+16>>2];d=v[37696];e=Ba[v[v[d>>2]+20>>2]](d)|0?34627:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,24,e,9248,747)|0;v[d+12>>2]=0;v[d>>2]=0;v[d+4>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[a+4>>2]=d;if(!g3(d,b+8|0)){d=v[a+4>>2];if(d){d=f3(d);e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}v[a+4>>2]=0}xa=b+32|0;d=v[a+4>>2];o:{if(!d){break o}b=v[d+8>>2];if((b|0)!=v[v[a+12>>2]+68>>2]|!b){break o}while(1){b=v[d+12>>2]+B(i,12)|0;if(v[b>>2]<0){d=v[v[a+12>>2]+76>>2]+i|0;t[d|0]=w[d|0]|8}if(v[b+4>>2]<0){d=v[v[a+12>>2]+76>>2]+i|0;t[d|0]=w[d|0]|16}if(v[b+8>>2]<0){b=v[v[a+12>>2]+76>>2]+i|0;t[b|0]=w[b|0]|32}i=i+1|0;d=v[a+4>>2];if(i>>>0>2]){continue}break}}if(!g){break m}b=B(c,3);d=(b|0)!=(b&1073741823)?-1:b<<2;if(d){b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,e,9248,281)|0}else{b=0}v[v[a+12>>2]+52>>2]=b;I9(b,255,B(c,12));b=v[a+4>>2];d=v[b>>2];if(!d){break m}s=v[b+20>>2];F=v[a+12>>2];i=v[b+16>>2];e=v[b+4>>2];while(1){d=d-1|0;if(x[i+2>>1]>=2){b=s+(v[i+4>>2]<<2)|0;q=v[b+4>>2];h=m+B(q,12)|0;A=v[b>>2];f=m+B(A,12)|0;j=v[f+4>>2];g=0;r=v[f>>2];b=v[e>>2];I=(r|0)!=(b|0);c=v[e+4>>2];p:{if(!I&(c|0)==(j|0)){break p}r=(c|0)!=(r|0);if(!r&(b|0)==(j|0)){break p}g=2;f=v[f+8>>2];if(!I&(f|0)==(c|0)|!r&(b|0)==(f|0)){break p}if((b|0)==(j|0)){g=1;if((c|0)==(f|0)){break p}}g=(c|0)==(j|0)?(b|0)==(f|0)?1:255:255}j=0;r=v[h>>2];I=(r|0)!=(b|0);f=v[h+4>>2];q:{if(!I&(f|0)==(c|0)){break q}r=(c|0)!=(r|0);if(!r&(b|0)==(f|0)){break q}j=2;h=v[h+8>>2];if(!I&(h|0)==(c|0)|!r&(b|0)==(h|0)){break q}if((b|0)==(f|0)){j=1;if((c|0)==(h|0)){break q}}j=(c|0)==(f|0)?(b|0)==(h|0)?1:255:255}b=v[F+52>>2];v[b+(B(A,3)+g<<2)>>2]=q;v[b+(B(q,3)+j<<2)>>2]=A}e=e+8|0;i=i+8|0;if(d){continue}break}}f=0;r:{if(!w[v[a+8>>2]+14|0]){break r}b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?44281:63804;e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,44,c,9248,682)|0;b=e;v[b>>2]=0;v[b+4>>2]=0;t[b+40|0]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;j=v[a+12>>2];v[j+84>>2]=b;q=v[a+8>>2];A=xa-32|0;xa=A;i=A+8|0;b=i;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b+8>>2]=0;v[b>>2]=v[j+12>>2];v[b+12>>2]=v[j+68>>2];c=v[j+16>>2];d=v[j+56>>2];v[b+20>>2]=0;v[b+16>>2]=d;v[b+4>>2]=c;d=xa-176|0;xa=d;b=v[b+12>>2];g=d+152|0;v[g+8>>2]=0;v[g>>2]=0;v[g+4>>2]=0;s:{if(!l3(g,i,32)){break s}c=b<<2;if(c){h=v[37696];f=Ba[v[v[h+12>>2]+8>>2]](h+12|0,c,24422,12354,509)|0}v[d+16>>2]=b;v[d+12>>2]=0;v[d+8>>2]=32;v[d+4>>2]=f;v[d>>2]=i;I9(d+20|0,0,128);b=xa-16|0;xa=b;v[b+12>>2]=0;v[b+8>>2]=0;n3(v[g+4>>2],b+12|0,b+8|0,2958,d);xa=b+16|0;w$(i,f);if(f){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,f)}if(y[i+12>>2]<=32){v[e+32>>2]=1;b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,1168,24422,12354,289)|0;v[e+28>>2]=b;v[b+1152>>2]=1;c=v[g+4>>2];l=z[c+16>>2];k=z[c+20>>2];o=z[c+4>>2];E=z[c+8>>2];p=z[c+12>>2];G=z[c>>2];v[b+524>>2]=0;v[b+12>>2]=0;z[b+512>>2]=C(p-G)*C(.5);z[b>>2]=C(G+p)*C(.5);z[b+520>>2]=C(k-E)*C(.5);z[b+516>>2]=C(l-o)*C(.5);z[b+8>>2]=C(E+k)*C(.5);z[b+4>>2]=C(o+l)*C(.5);v[b+1024>>2]=v[i+12>>2]<<1|1;f=x$(e,i,c);break s}w3(v[v[g+4>>2]+24>>2]);v[d>>2]=1;b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?45015:63804;m=x3(Ba[v[v[b+12>>2]+8>>2]](b+12|0,1032,c,12354,337)|0);y3(g,m,v[g+4>>2],C(.00019999999494757503),d);f=x$(e,i,v[g+4>>2]);if(!f){break s}s=v[m+1028>>2]+1|0;v[d+172>>2]=s;h=v[d>>2];c=(h|0)!=(h&134217727)?-1:h<<5;if(c){b=v[37696];F=Ba[v[v[b>>2]+20>>2]](b)|0?48237:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,F,12354,419)|0}else{b=0}t:{if(!h){break t}c=b;if(h&1){v[b+8>>2]=0;v[b+12>>2]=0;v[b+16>>2]=-1082130432;v[b+20>>2]=-1082130432;v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=-1082130432;v[b+28>>2]=-1;c=b+32|0}if(!(h-1&134217727)){break t}F=b+(h<<5)|0;while(1){v[c+8>>2]=0;v[c+12>>2]=0;v[c+16>>2]=-1082130432;v[c+20>>2]=-1082130432;v[c>>2]=0;v[c+4>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=-1082130432;v[c+28>>2]=-1;v[c+56>>2]=-1082130432;v[c+60>>2]=-1;v[c+48>>2]=-1082130432;v[c+52>>2]=-1082130432;v[c+40>>2]=0;v[c+44>>2]=0;c=c- -64|0;if((F|0)!=(c|0)){continue}break}}c=v[g+4>>2];l=z[c+16>>2];k=z[c+20>>2];o=z[c+4>>2];E=z[c+8>>2];z[b>>2]=C(z[c>>2]+z[c+12>>2])*C(.5);z[b+8>>2]=C(E+k)*C(.5);z[b+4>>2]=C(o+l)*C(.5);l=z[c+16>>2];k=z[c>>2];o=z[c+12>>2];E=z[c+4>>2];z[b+24>>2]=C(z[c+20>>2]-z[c+8>>2])*C(.5);z[b+20>>2]=C(l-E)*C(.5);z[b+16>>2]=C(o-k)*C(.5);v[b+28>>2]=(v[m+1028>>2]<<1)+2048;v[e+36>>2]=s;v[d+168>>2]=0;v[d+164>>2]=0;s=d+172|0;c=m;m=d+168|0;z3(b,1,s,c,m,d+164|0);v[e+24>>2]=b;v[e+20>>2]=h;l1(e,b);b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,B(h,1168),24422,12354,447)|0;v[e+32>>2]=h;v[e+28>>2]=b;v[d+172>>2]=1;c=v[e+24>>2];v[d+168>>2]=((v[c+28>>2]>>>1&1023)-v[c+12>>2]|0)+1;m1(e,b,c,1,m,s);v[e+32>>2]=v[d+172>>2]}k3(g);xa=d+176|0;u:{if(!f){a9(v[37696],32,9248,1244,67383,0);break u}d=v[i+8>>2];if(!(w[q+14|0]?0:w[q+12|0])){b=v[j+68>>2];c=(b&1073741823)!=(b|0)?-1:b<<2;v:{if(!c){c=0;break v}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,9248,1252)|0;b=v[j+68>>2]}e=v[j+64>>2];w:{x:{y:{if(b){b=0;if(e){break y}while(1){e=b<<2;v[e+c>>2]=v[d+e>>2];b=b+1|0;if(b>>>0>2]){continue}break}b=j- -64|0;break w}b=j- -64|0;if(!e){break w}break x}while(1){g=b<<2;v[g+c>>2]=v[e+(v[d+g>>2]<<2)>>2];b=b+1|0;if(b>>>0>2]){continue}break}b=j- -64|0}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e)}v[b>>2]=c;d=v[i+8>>2]}if(d){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[i+8>>2]=0}b=v[i+8>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[i+8>>2]=0;xa=A+32|0;f=0;d=0;j=0;q=xa-32|0;xa=q;b=v[a+12>>2];e=v[b+68>>2];c=B(e,12);if(c){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,9248,657)|0;e=v[b+68>>2]}c=e<<4;if(c){e=v[37696];j=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,24422,9248,659)|0;e=v[b+68>>2]}b=v[a+12>>2];v[b+60>>2]=j;A=v[b+56>>2];m=v[b+16>>2];b=0;c=B(e,36);if(c){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,24422,18748,147)|0}z:{if(e){while(1){l=C(0);k=C(0);o=C(0);r=B(f,12);g=r+A|0;c=v[g+4>>2];h=m+B(c,12)|0;i=v[g>>2];s=m+B(i,12)|0;E=z[s>>2];G=C(z[h>>2]-E);g=v[g+8>>2];F=m+B(g,12)|0;p=z[s+4>>2];H=C(z[F+4>>2]-p);L=C(z[F>>2]-E);p=C(z[h+4>>2]-p);E=C(C(G*H)-C(L*p));N=p;p=z[s+8>>2];M=C(z[F+8>>2]-p);O=H;H=C(z[h+8>>2]-p);p=C(C(N*M)-C(O*H));G=C(C(H*L)-C(M*G));H=C(C(E*E)+C(C(p*p)+C(G*G)));if(H>C(0)){k=C(C(1)/C(K(H)));o=C(E*k);l=C(p*k);k=C(G*k)}h=d+r|0;z[h+8>>2]=o;z[h+4>>2]=k;z[h>>2]=l;h=B(f,36)+b|0;v[h+12>>2]=c>>>0>>0?c:g;v[h+8>>2]=f;v[h+4>>2]=c>>>0>>0?i:c;v[h>>2]=c>>>0>i>>>0?i:c;v[h+20>>2]=f;v[h+16>>2]=c>>>0>g>>>0?c:g;v[h+32>>2]=f;v[h+28>>2]=g>>>0>>0?i:g;v[h+24>>2]=g>>>0>i>>>0?i:g;f=f+1|0;if((e|0)!=(f|0)){continue}break}K3(b,B(e,3));c=0;while(1){f=B(c,12);i=f+A|0;g=v[i+8>>2];h=v[i+4>>2];i=v[i>>2];f=d+f|0;l=z[f>>2];z[q+8>>2]=l;k=z[f+4>>2];z[q+12>>2]=k;o=z[f+8>>2];z[q+16>>2]=o;f=m+B(i,12)|0;z[q+20>>2]=-C(C(o*z[f+8>>2])+C(C(l*z[f>>2])+C(k*z[f+4>>2])));f=q+8|0;s=L3(m,d,A,e,i,h,f,b,c);h=L3(m,d,A,e,h,g,f,b,c);g=L3(m,d,A,e,g,i,f,b,c);i=(c<<4)+j|0;v[i+12>>2]=0;v[i+8>>2]=g;v[i+4>>2]=h;v[i>>2]=s;c=c+1|0;if((e|0)!=(c|0)){continue}break}break z}K3(b,0)}if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(d){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}xa=q+32|0;A:{B:{c=(J|0)!=(J&1073741823)?-1:J<<2;C:{if(c){b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,690)|0;e=v[a+12>>2];if(!v[e+68>>2]){break B}a=e+68|0;break C}e=v[a+12>>2];if(!v[e+68>>2]){break r}d=0;a=e+68|0}c=v[e+48>>2];b=0;while(1){v[(v[c+(b<<2)>>2]<<2)+d>>2]=b;b=b+1|0;j=v[a>>2];if(b>>>0>>0){continue}break}if(!j){break A}c=v[e+64>>2];b=0;while(1){e=c+(b<<2)|0;v[e>>2]=v[(v[e>>2]<<2)+d>>2];b=b+1|0;if(b>>>0>2]){continue}break}break A}if(!d){break r}}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,d)}b=1}xa=n+48|0;return b}function $p(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,u=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;n=xa-256|0;xa=n;a:{if(v[a+4656>>2]){a9(v[37696],2,11709,468,66712,0);break a}l=a+32|0;e=v[l+2384>>2];f=v[e+12>>2]+B(v[e+8>>2],12)|0;i=v[f+4>>2];b:{if(i){v[f+4>>2]=v[i>>2];break b}c:{i=v[f+8>>2];if((i|0)==v[e>>2]){break c}h=v[e+4>>2];v[f+8>>2]=i+1;f=v[f>>2];if(!f){break c}i=f+B(i,h)|0;break b}i=MO(e)}f=0;e=i+39|0;f=e>>>0<39?1:f;e=(f&63)<<26|e>>>6;j=f>>>6|0;f=i>>>6|0;m=j-(f>>>0>e>>>0)|0;s=e-f|0;k=m;e=s+1|0;k=e?k:k+1|0;f=k;h=0;k=h;r=e&7;d:{if(!(h|r)){h=i;break d}h=i;while(1){j=e;e=e-1|0;f=f-!j|0;h=h- -64|0;j=g;g=p+1|0;j=g?j:j+1|0;p=g;g=j;if((r|0)!=(p|0)|(k|0)!=(g|0)){continue}break}}if(!m&s>>>0>=7|m){while(1){h=h+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}v[n+224>>2]=i;e=v[l+2388>>2];f=v[e+12>>2]+B(v[e+8>>2],12)|0;i=v[f+4>>2];e:{if(i){v[f+4>>2]=v[i>>2];break e}f:{g=v[f+8>>2];if((g|0)==v[e>>2]){break f}i=v[e+4>>2];v[f+8>>2]=g+1;f=v[f>>2];if(!f){break f}i=f+B(g,i)|0;break e}i=MO(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;m=e-f|0;g=0;s=g;f=k;e=m+1|0;f=e?f:f+1|0;r=e&7;g:{if(!(g|r)){h=i;break g}p=0;h=i;while(1){j=e;e=e-1|0;f=f-!j|0;h=h- -64|0;j=g;g=p+1|0;j=g?j:j+1|0;p=g;g=j;if((r|0)!=(p|0)|(s|0)!=(g|0)){continue}break}}if(!k&m>>>0>=7|k){while(1){h=h+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}v[n+220>>2]=i;e=v[l+2392>>2];f=v[e+12>>2]+B(v[e+8>>2],12)|0;i=v[f+4>>2];h:{if(i){v[f+4>>2]=v[i>>2];break h}i:{g=v[f+8>>2];if((g|0)==v[e>>2]){break i}i=v[e+4>>2];v[f+8>>2]=g+1;f=v[f>>2];if(!f){break i}i=f+B(g,i)|0;break h}i=MO(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;m=e-f|0;g=0;s=g;f=k;e=m+1|0;f=e?f:f+1|0;r=e&7;j:{if(!(g|r)){h=i;break j}p=0;h=i;while(1){j=e;e=e-1|0;f=f-!j|0;h=h- -64|0;j=g;g=p+1|0;j=g?j:j+1|0;p=g;g=j;if((r|0)!=(p|0)|(s|0)!=(g|0)){continue}break}}if(!k&m>>>0>=7|k){while(1){h=h+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}v[n+216>>2]=i;v[n+236>>2]=64;v[n+240>>2]=20;v[n+228>>2]=64;v[n+232>>2]=20;v[n+244>>2]=48;t[n+200|0]=1;v[n+208>>2]=0;v[n+212>>2]=8;v[n+204>>2]=n+8;k:{l:{if(!c){break l}s=a+16|0;H=a+5932|0;I=a+5584|0;o=1;m:{while(1){q=E;E=q+1|0;n:{if(E>>>0>=c>>>0){break n}p=0;g=0;f=0;h=v[(E<<2)+b>>2];e=h;i=e+319|0;f=i>>>0<319?1:f;j=f>>>6|0;f=(f&63)<<26|i>>>6;e=e>>>6|0;k=j-(e>>>0>f>>>0)|0;m=f-e|0;i=k;e=m+1|0;k=e?i:i+1|0;f=k;j=0;k=j;r=e&7;if(j|r){while(1){j=e;e=e-1|0;f=f-!j|0;h=h- -64|0;j=g;g=p+1|0;j=g?j:j+1|0;p=g;g=j;if((r|0)!=(p|0)|(k|0)!=(g|0)){continue}break}}if(!i&m>>>0<7){break n}while(1){h=h+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}o:{p:{e=v[(q<<2)+b>>2];h=x[e+4>>1];switch(v[(v[((h<<2)+86240|0)+72>>2]+e|0)+4>>2]>>>30|0){case 0:break o;case 3:break p;default:break m}}f=v[e+v[((x[e+4>>1]<<2)+86240|0)+72>>2]>>2];if(f){g=f-16|0}else{g=0}if((g|0)!=(a|0)){break m}h=x[e+4>>1]}q:{r:{s:{switch((h&65535)-5|0){case 1:if(v[e+40>>2]?d:1){f=v[e+52>>2];if(w[(f&1?v[e+56>>2]:(e+v[((f>>>22&60)+89188|0)+12>>2]|0)+56|0)|0]&8){break r}aq(n+8|0,x[e+24>>1]+1|0);F=v[n+204>>2];p=0;g=0;m=e;o=n+216|0;r=e+v[o+16>>2]|0;e=x[r+4>>1];A=(e|0)==1?r:v[r>>2];y=v[o+4>>2];t:{if(!e){break t}i=v[A>>2];e=i;h=v[o+28>>2]+144|0;f=e+h|0;k=0;k=f>>>0>>0?1:k;h=k-!f|0;f=f-1|0;f=(h&63)<<26|f>>>6;e=e>>>6|0;j=(h>>>6|0)-(e>>>0>f>>>0)|0;k=f-e|0;h=j;e=k+1|0;j=e?h:h+1|0;f=j;j=0;u=j;D=e&7;if(j|D){while(1){j=e;e=e-1|0;f=f-!j|0;i=i- -64|0;q=g;g=p+1|0;q=g?q:q+1|0;p=g;g=q;if((D|0)!=(p|0)|(u|0)!=(g|0)){continue}break}}if(!h&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=TJ(y,l,m+v[o+12>>2]|0);v[u>>2]=138660;e=v[l+2388>>2];f=v[e+12>>2]+B(v[e+8>>2],12)|0;h=v[f+4>>2];u:{if(h){v[f+4>>2]=v[h>>2];break u}v:{g=v[f+8>>2];if((g|0)==v[e>>2]){break v}i=v[e+4>>2];v[f+8>>2]=g+1;f=v[f>>2];if(!f){break v}h=f+B(g,i)|0;break u}h=MO(e)}j=0;e=h+51|0;j=e>>>0<51?1:j;e=(j&63)<<26|e>>>6;f=h>>>6|0;j=(j>>>6|0)-(f>>>0>e>>>0)|0;y=e-f|0;g=0;D=g;f=j;e=y+1|0;f=e?f:f+1|0;G=e&7;w:{if(!(g|G)){i=h;break w}p=0;i=h;while(1){k=e;e=e-1|0;f=f-!k|0;i=i- -64|0;q=g;g=p+1|0;q=g?q:q+1|0;p=g;g=q;if((G|0)!=(p|0)|(D|0)!=(g|0)){continue}break}}if(!j&y>>>0>=7|j){while(1){i=i+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}v[o+4>>2]=h;OP(l,A,x[r+4>>1],v[o+28>>2],u,o+8|0,F);v[l+2664>>2]=v[l+2664>>2]+1;f=v[n+204>>2];v[m+48>>2]=s;v[m+52>>2]=v[m+52>>2]&1073741823|-2147483648;g=x[m+24>>1];if(g){i=m+20|0;h=(g|0)==1?i:v[m+20>>2];o=0;while(1){e=v[h+(o<<2)>>2];j=w[e+112|0];v[e+16>>2]=v[e+16>>2]+1;if(v[e+196>>2]<0){v[e+32>>2]=s;v[e+36>>2]=v[e+36>>2]&1073741823|-2147483648}if(j&2){ku(i,I,o,e,m,0,f?f+B(o,24)|0:0,(d|0)!=0)}o=o+1|0;if((g|0)!=(o|0)){continue}break}}e=v[a+5936>>2];v[m+44>>2]=e;v[n+252>>2]=m;x:{if(e>>>0>=(v[a+5940>>2]&2147483647)>>>0){Zp(H,n+252|0);break x}v[v[a+5932>>2]+(e<<2)>>2]=m;v[a+5936>>2]=e+1}if(!v[m+16>>2]){break q}ph(m+12|0);break q}a9(v[37696],8,11709,513,71747,0);break k;case 0:if(v[e+40>>2]?d:1){f=v[e+52>>2];if(!(w[(f&1?v[e+56>>2]:(e+v[((f>>>22&60)+89188|0)+12>>2]|0)+56|0)|0]&8)){aq(n+8|0,x[e+24>>1]+1|0);D=v[n+204>>2];p=0;g=0;A=xa-16|0;xa=A;j=e;o=n+216|0;y=e+v[o+24>>2]|0;e=x[y+4>>1];F=(e|0)==1?y:v[y>>2];r=v[o>>2];y:{if(!e){break y}i=v[F>>2];e=i;k=v[o+28>>2]+144|0;h=e+k|0;f=0;f=h>>>0>>0?1:f;f=f-!h|0;h=h-1|0;k=f>>>6|0;f=(f&63)<<26|h>>>6;e=e>>>6|0;q=k-(e>>>0>f>>>0)|0;m=f-e|0;h=q;e=m+1|0;q=e?h:h+1|0;f=q;k=0;q=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)|(q|0)!=(g|0)){continue}break}}if(!h&m>>>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=j+v[o+20>>2]|0;m=_G(g,l,r,0);e=v[l+2392>>2];f=v[e+12>>2]+B(v[e+8>>2],12)|0;h=v[f+4>>2];z:{if(h){v[f+4>>2]=v[h>>2];break z}A:{g=v[f+8>>2];if((g|0)==v[e>>2]){break A}i=v[e+4>>2];v[f+8>>2]=g+1;f=v[f>>2];if(!f){break A}h=f+B(g,i)|0;break z}h=MO(e)}q=0;e=h+175|0;q=e>>>0<175?1:q;e=(q&63)<<26|e>>>6;f=h>>>6|0;q=(q>>>6|0)-(f>>>0>e>>>0)|0;u=e-f|0;g=0;G=g;f=q;e=u+1|0;f=e?f:f+1|0;J=e&7;B:{if(!(g|J)){i=h;break B}p=0;i=h;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((J|0)!=(p|0)|(G|0)!=(g|0)){continue}break}}if(!q&u>>>0>=7|q){while(1){i=i+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}v[o>>2]=h;e=w[v[m+100>>2]+28|0]&32;C:{D:{if(w[v[m+44>>2]+9|0]==2){if(!e){break C}h=v[m+144>>2];f=h>>>7|0;e=f+32>>>5|0;if(e>>>0<=(v[l+4740>>2]&2147483647)>>>0){i=v[l+4736>>2];break D}g=v[37696]+12|0;i=Ba[v[v[g>>2]+8>>2]](g,e<<2,24422,17999,438)|0;g=v[l+4736>>2];E:{if(!g){break E}H9(i,g,v[l+4740>>2]<<2);if(v[l+4740>>2]<0){break E}g=v[l+4736>>2];if(!g){break E}k=v[37696]+12|0;Ba[v[v[k>>2]+12>>2]](k,g)}g=v[l+4740>>2];I9((g<<2)+i|0,0,e-g<<2);v[l+4740>>2]=e;v[l+4736>>2]=i;break D}if(!e){break C}h=v[m+144>>2];f=h>>>7|0;e=f+32>>>5|0;if(e>>>0<=(v[l+4728>>2]&2147483647)>>>0){i=v[l+4724>>2];break D}g=v[37696]+12|0;i=Ba[v[v[g>>2]+8>>2]](g,e<<2,24422,17999,438)|0;g=v[l+4724>>2];F:{if(!g){break F}H9(i,g,v[l+4728>>2]<<2);if(v[l+4728>>2]<0){break F}g=v[l+4724>>2];if(!g){break F}k=v[37696]+12|0;Ba[v[v[k>>2]+12>>2]](k,g)}g=v[l+4728>>2];I9((g<<2)+i|0,0,e-g<<2);v[l+4728>>2]=e;v[l+4724>>2]=i}e=(h>>>10&4194300)+i|0;v[e>>2]=v[e>>2]|1<>2];if(f>>>0<=4294967167){e=v[l+1012>>2];v[A+8>>2]=f;Ba[v[v[e>>2]+24>>2]](e,m- -64|0,A+8|0)}OP(l,F,x[y+4>>1],v[o+28>>2],m,o+8|0,D);G:{H:{if(!v[r+176>>2]|w[v[r+176>>2]+31|0]!=1){break H}e=v[r+176>>2];if(w[(w[e+31|0]==1?e:0)+31|0]!=1){break H}v[l+2672>>2]=v[l+2672>>2]+1;break G}v[l+2668>>2]=v[l+2668>>2]+1}xa=A+16|0;I:{J:{if(z[j+308>>2]!=C(0)|z[j+284>>2]!=C(0)|(z[j+288>>2]!=C(0)|z[j+292>>2]!=C(0))){break J}if(z[j+296>>2]!=C(0)|z[j+300>>2]!=C(0)){break J}e=1;if(z[j+304>>2]==C(0)){break I}}e=0}f=v[n+204>>2];v[j+48>>2]=s;v[j+312>>2]=e;v[j+52>>2]=v[j+52>>2]&1073741823|-2147483648;g=x[j+24>>1];if(g){i=j+20|0;h=(g|0)==1?i:v[j+20>>2];o=0;while(1){e=v[h+(o<<2)>>2];k=w[e+112|0];v[e+16>>2]=v[e+16>>2]+1;if(v[e+196>>2]<0){v[e+32>>2]=s;v[e+36>>2]=v[e+36>>2]&1073741823|-2147483648}if(k&2){ku(i,I,o,e,j,1,f?f+B(o,24)|0:0,(d|0)!=0)}o=o+1|0;if((g|0)!=(o|0)){continue}break}}e=v[a+5936>>2];v[j+44>>2]=e;v[n+252>>2]=j;K:{if(e>>>0>=(v[a+5940>>2]&2147483647)>>>0){Zp(H,n+252|0);break K}v[v[a+5932>>2]+(e<<2)>>2]=j;v[a+5936>>2]=e+1}if(!v[j+16>>2]){break q}ph(j+12|0);break q}Yp(a,e,0,(d|0)!=0);break q}a9(v[37696],8,11709,536,71747,0);break k;default:break s}}a9(v[37696],2,11709,553,23402,0);break l}Xp(a,e,0,(d|0)!=0)}o=c>>>0>E>>>0;if((c|0)!=(E|0)){continue}break}q=c;break l}a9(v[37696],8,11709,495,75462,0)}if(!d){break k}e=a+5584|0;c=xa-16|0;xa=c;f=v[d+16>>2];if(f){g=v[d+8>>2];i=v[d+24>>2];v[c+12>>2]=v[d+32>>2];v[c+8>>2]=i;v[c+4>>2]=f;v[c>>2]=g;f=v[e>>2];Ba[v[v[f>>2]+20>>2]](f,c)}f=v[d+20>>2];if(f){g=v[d+12>>2];i=v[d+28>>2];v[c+12>>2]=v[d+36>>2];v[c+8>>2]=i;v[c+4>>2]=f;v[c>>2]=g;d=v[e+36>>2];Ba[v[v[d>>2]+20>>2]](d,c)}xa=c+16|0}c=0;j=xa-48|0;xa=j;f=v[n+220>>2];L:{if(!f){break L}e=v[l+2388>>2];if(w[e+24|0]){NO(v[e+12>>2],v[e+16>>2])}d=v[e+16>>2]-1|0;if((d|0)<0){break L}k=B(v[e+4>>2],v[e>>2]);i=v[e+12>>2];while(1){g=c+d>>1;h=v[i+B(g,12)>>2];if(!(h>>>0>f>>>0|f>>>0>=h+k>>>0)){c=i+B(g,12)|0;v[f>>2]=v[c+4>>2];v[c+4>>2]=f;if(w[e+24|0]){v[e+8>>2]=g}t[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=v[n+216>>2];M:{if(!f){break M}e=v[l+2392>>2];if(w[e+24|0]){NO(v[e+12>>2],v[e+16>>2])}c=0;d=v[e+16>>2]-1|0;if((d|0)<0){break M}k=B(v[e+4>>2],v[e>>2]);i=v[e+12>>2];while(1){g=c+d>>1;h=v[i+B(g,12)>>2];if(!(h>>>0>f>>>0|f>>>0>=h+k>>>0)){c=i+B(g,12)|0;v[f>>2]=v[c+4>>2];v[c+4>>2]=f;if(w[e+24|0]){v[e+8>>2]=g}t[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=v[n+224>>2];N:{if(!f){break N}e=v[l+2384>>2];if(w[e+24|0]){NO(v[e+12>>2],v[e+16>>2])}c=0;d=v[e+16>>2]-1|0;if((d|0)<0){break N}k=B(v[e+4>>2],v[e>>2]);i=v[e+12>>2];while(1){g=c+d>>1;h=v[i+B(g,12)>>2];if(!(h>>>0>f>>>0|f>>>0>=h+k>>>0)){c=i+B(g,12)|0;v[f>>2]=v[c+4>>2];v[c+4>>2]=f;if(w[e+24|0]){v[e+8>>2]=g}t[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}}xa=j+48|0;if(!(!(o&1)|!q)){h=0;while(1){O:{P:{Q:{R:{c=v[(h<<2)+b>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 2:break P;case 1:break Q;case 0:break R;default:break O}}bq(a,c,0,1);break O}cq(a,c,0,1);break O}a9(v[37696],2,11709,689,22124,0)}h=h+1|0;if((q|0)!=(h|0)){continue}break}}a=v[n+212>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[n+204>>2];if((a|0)==(n+8|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=n+256|0}function O4(a){a=a|0;var b=0,c=0,d=0,e=0,f=C(0),g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=0,q=0,r=C(0),s=0,A=C(0),E=0,F=0,G=0,H=C(0),I=0,J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=C(0),U=0,V=0,W=0,X=0,Y=0,Z=C(0),_=C(0),$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=0;g=xa-208|0;xa=g;e=v[a+4>>2];b=v[e+8>>2];b=B(b>>>0>8?b:8,12);if(b){c=v[37696];q=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,13134,1845)|0;e=v[a+4>>2]}m=v[e>>2];b=v[e+4>>2];d=v[e+8>>2];a:{b:{if(t[e+37|0]&1){F=g+172|0;p=g+192|0;s=g+176|0;c=B(d,12);if(c){e=v[37696];R=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,24422,13231,137)|0}v[a+28>>2]=R;c:{if(d){f=C(85070586659632215e21);j=C(-85070586659632215e21);c=b;o=C(-85070586659632215e21);r=C(-85070586659632215e21);k=C(85070586659632215e21);l=C(85070586659632215e21);while(1){h=z[c+8>>2];j=j>h?j:h;H=z[c+4>>2];o=o>H?o:H;A=z[c>>2];r=r>A?r:A;f=f>2]=C(f+j)*C(.5);z[a+20>>2]=C(k+o)*C(.5);z[a+16>>2]=C(l+r)*C(.5);if(!d){break c}c=0;while(1){k=z[a+16>>2];l=z[b>>2];f=z[a+20>>2];r=z[b+4>>2];e=B(c,12)+R|0;z[e+8>>2]=z[b+8>>2]-z[a+24>>2];z[e+4>>2]=r-f;z[e>>2]=l-k;b=b+m|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}break c}v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0}if(p4(a,d,R,12,F,q,p,s)){break b}e=3;if(!q){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,q);break a}if(p4(a,d,b,m,g+172|0,q,g+192|0,g+176|0)){break b}e=3;if(!q){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,q);break a}F=a;d=v[g+172>>2];b=g+96|0;z[b>>2]=z[q>>2];z[b+4>>2]=z[q+4>>2];k=z[q+8>>2];v[b+12>>2]=0;z[b+8>>2]=k;c=g+16|0;z[c>>2]=z[q>>2];z[c+4>>2]=z[q+4>>2];k=z[q+8>>2];v[c+12>>2]=0;z[c+8>>2]=k;z[b+24>>2]=z[q>>2];z[b+28>>2]=z[q+4>>2];k=z[q+8>>2];v[b+36>>2]=0;z[b+32>>2]=k;z[c+24>>2]=z[q>>2];z[c+28>>2]=z[q+4>>2];k=z[q+8>>2];v[c+36>>2]=0;z[c+32>>2]=k;z[b+48>>2]=z[q>>2];z[b+52>>2]=z[q+4>>2];k=z[q+8>>2];v[b+60>>2]=0;z[b+56>>2]=k;z[c+48>>2]=z[q>>2];z[c+52>>2]=z[q+4>>2];k=z[q+8>>2];v[c+60>>2]=0;z[c+56>>2]=k;m=1;r=z[q+8>>2];k=z[q+4>>2];l=z[q>>2];d:{if(d>>>0<=1){f=l;j=k;o=r;break d}o=r;j=k;f=l;while(1){e=B(m,12)+q|0;h=z[e>>2];e:{f:{if(h>l){a=c;n=f;l=h;break f}a=b;n=h;if(!(h>2]=h;z[a+4>>2]=z[e+4>>2];f=z[e+8>>2];v[a+12>>2]=m;z[a+8>>2]=f;f=n}h=z[e+4>>2];g:{h:{if(h>k){a=c;n=j;k=h;break h}a=b;n=h;if(!(h>2];z[a+28>>2]=h;z[a+24>>2]=j;j=z[e+8>>2];v[a+36>>2]=m;z[a+32>>2]=j;j=n}h=z[e+8>>2];i:{j:{if(h>r){a=c;n=o;r=h;break j}a=b;n=h;if(!(h>2]=z[e>>2];o=z[e+4>>2];v[a+60>>2]=m;z[a+56>>2]=h;z[a+52>>2]=o;o=n}m=m+1|0;if((d|0)!=(m|0)){continue}break}}l=C(C(C(r+C(C(C(l-f)+k)-j))-o)*C(.5));f=C(l*C(3.5762786865234375e-7));z[g+12>>2]=f>C(3.5762786865234375e-7)?f:C(3.5762786865234375e-7);h=l;l=z[v[F+8>>2]+4>>2];f=C(h*l);z[g+8>>2]=f>l?f:l;l=C(0);i=b;f=C(z[c+28>>2]-z[b+28>>2]);j=C(z[c>>2]-z[b>>2]);j=j>C(0)?j:C(0);a=f>j;b=B(C(z[c+56>>2]-z[b+56>>2])>(a?f:j)?2:a,24);a=i+b|0;b=b+c|0;Z=z[b+8>>2];L=C(z[a+8>>2]-Z);_=z[b>>2];M=C(z[a>>2]-_);$=z[b+4>>2];N=C(z[a+4>>2]-$);f=C(K(C(C(L*L)+C(C(M*M)+C(N*N)))));if(f>C(0)){f=C(C(1)/f);L=C(L*f);N=C(N*f);M=C(M*f)}k:{if(!d){a=0;break k}ba=C(-N);ca=C(-M);da=C(-L);a=0;e=0;while(1){b=B(e,12)+q|0;h=z[b+4>>2];j=C(h-$);H=z[b>>2];o=C(H-_);f=C(C(M*j)+C(o*ba));A=z[b+8>>2];T=C(A-Z);j=C(C(N*T)+C(j*da));o=C(C(L*o)+C(T*ca));T=C(C(f*f)+C(C(j*j)+C(o*o)));if(T>l){r=o;k=f;P=H;O=h;Q=A;l=T;n=j;a=e}e=e+1|0;if((d|0)!=(e|0)){continue}break}}h=C(K(l));l=z[g+12>>2];c=hC(0)){h=C(C(1)/h);f=C(f*h);o=C(o*h);j=C(j*h)}a=B(a,12)+q|0;Q=C(Q+C(l*f));z[a+8>>2]=Q;O=C(O+C(l*o));z[a+4>>2]=O;P=C(P+C(l*j));z[a>>2]=P}l=C(0);f=C(K(C(C(k*k)+C(C(n*n)+C(r*r)))));if(f>C(0)){f=C(C(1)/f);k=C(k*f);r=C(r*f);n=C(n*f)}f=C(C(Q*k)+C(C(P*n)+C(O*r)));e=0;l:{if(!d){a=0;break l}a=0;while(1){b=B(e,12)+q|0;j=C(D(C(C(C(z[b+8>>2]*k)+C(C(z[b>>2]*n)+C(r*z[b+4>>2])))-f)));b=j>l;l=b?j:l;a=b?e:a;e=e+1|0;if((d|0)!=(e|0)){continue}break}}h=C(D(l));l=z[g+12>>2];b=!c;m:{if(!(h>2];A=C(h*k);k=z[a>>2];H=C(k*n);n=z[a+4>>2];n:{if(C(C(A+C(H+C(r*n)))-f)>C(0)){f=C(j+h);j=C(o+n);n=C(l+k);break n}f=C(h-j);j=C(n-o);n=C(k-l)}z[a>>2]=n;z[a+4>>2]=j;z[a+8>>2]=f;b=0}a=v[F+32>>2];c=v[g+172>>2];v[a+24>>2]=c;o:{if(!c){break o}d=v[a+36>>2];e=0;if((c|0)!=1){s=c&-2;while(1){m=d+B(e,24)|0;i=B(e,12)+q|0;z[m>>2]=z[i>>2];z[m+4>>2]=z[i+4>>2];n=z[i+8>>2];v[m+12>>2]=e;z[m+8>>2]=n;i=e|1;m=d+B(i,24)|0;p=B(i,12)+q|0;z[m>>2]=z[p>>2];z[m+4>>2]=z[p+4>>2];n=z[p+8>>2];v[m+12>>2]=i;z[m+8>>2]=n;e=e+2|0;E=E+2|0;if((s|0)!=(E|0)){continue}break}}if(!(c&1)){break o}c=d+B(e,24)|0;d=B(e,12)+q|0;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];n=z[d+8>>2];v[c+12>>2]=e;z[c+8>>2]=n}e=3;if(b){n=z[g+12>>2];k=z[g+8>>2];z[a+108>>2]=z[g+96>>2];z[a+112>>2]=z[g+100>>2];z[a+116>>2]=z[g+104>>2];b=v[g+112>>2];v[a+120>>2]=v[g+108>>2];v[a+124>>2]=b;v[a+128>>2]=v[g+116>>2];z[a+180>>2]=z[g+16>>2];z[a+184>>2]=z[g+20>>2];z[a+188>>2]=z[g+24>>2];b=v[g+32>>2];v[a+192>>2]=v[g+28>>2];v[a+196>>2]=b;v[a+200>>2]=v[g+36>>2];z[a+132>>2]=z[g+120>>2];z[a+136>>2]=z[g+124>>2];z[a+140>>2]=z[g+128>>2];b=v[g+136>>2];v[a+144>>2]=v[g+132>>2];v[a+148>>2]=b;v[a+152>>2]=v[g+140>>2];z[a+204>>2]=z[g+40>>2];z[a+208>>2]=z[g+44>>2];z[a+212>>2]=z[g+48>>2];b=v[g+56>>2];v[a+216>>2]=v[g+52>>2];v[a+220>>2]=b;v[a+224>>2]=v[g+60>>2];z[a+156>>2]=z[g+144>>2];z[a+160>>2]=z[g+148>>2];z[a+164>>2]=z[g+152>>2];b=v[g+160>>2];v[a+168>>2]=v[g+156>>2];v[a+172>>2]=b;v[a+176>>2]=v[g+164>>2];z[a+228>>2]=z[g+64>>2];z[a+232>>2]=z[g+68>>2];z[a+236>>2]=z[g+72>>2];b=v[g+80>>2];v[a+240>>2]=v[g+76>>2];v[a+244>>2]=b;v[a+248>>2]=v[g+84>>2];z[a+256>>2]=k;z[a+252>>2]=n;t[a+104|0]=1;a=v[F+32>>2]}p:{q:{r:{switch(H4(a)|0){case 1:e=1;break p;case 0:s=v[F+32>>2];m=v[s+92>>2];if(!m){break q}e=0;while(1){E=v[v[s+88>>2]+(e<<2)>>2];if(!v[E+48>>2]){while(1){W=0;J=xa-16|0;xa=J;ea=s+260|0;b=v[E>>2];s:{t:{while(1){u:{a=v[v[b+32>>2]+36>>2];if(!(C(C(z[E+20>>2]*z[a+20>>2])+C(C(z[E+12>>2]*z[a+12>>2])+C(z[E+16>>2]*z[a+16>>2])))>C(.9986295104026794))|!(z[E+24>>2]>=z[a+24>>2])){break u}I=0;X=0;p=xa-80|0;xa=p;m=b;V=v[v[b+32>>2]+36>>2];U=v[b+36>>2];d=B(x[V+4>>1]+x[U+4>>1]|0,44);t[p+76|0]=d>>>0>1024;v:{if(d>>>0>=1025){a=t9(d,13134,1446);v[p+72>>2]=a;d=B(x[V+4>>1]+x[U+4>>1]|0,44);break v}a=p-(d+15&16777200)|0;xa=a;v[p+72>>2]=a}I9(a,0,d);t[p+68|0]=0;v[p+56>>2]=0;v[p+60>>2]=0;v[p+48>>2]=0;v[p+52>>2]=-8388609;v[p+32>>2]=0;v[p+16>>2]=0;u[p+12>>1]=0;S=v[p+72>>2];v[p+8>>2]=S;a=v[U>>2];G=(a|0)==(m|0)?v[m+28>>2]:a;d=G;a=0;while(1){i=B(a,44)+S|0;v[i+36>>2]=p+8;z[i>>2]=z[d>>2];z[i+4>>2]=z[d+4>>2];z[i+8>>2]=z[d+8>>2];v[i+20>>2]=v[d+20>>2];c=v[d+16>>2];v[i+12>>2]=v[d+12>>2];v[i+16>>2]=c;c=a+1|0;R=(G|0)==v[d+28>>2]?0:c;Y=v[m+32>>2];a=a?a:x[U+4>>1];aa=(d|0)==(m|0);X=aa?i:X;I=aa?Y:I;v[i+28>>2]=B(R,44)+S;v[i+24>>2]=(B(a,44)+S|0)-44;a=c;d=v[d+28>>2];if((G|0)!=(d|0)){continue}break}d=v[V>>2];while(1){G=B(c,44)+S|0;v[G+36>>2]=p+8;z[G>>2]=z[d>>2];z[G+4>>2]=z[d+4>>2];z[G+8>>2]=z[d+8>>2];v[G+20>>2]=v[d+20>>2];a=v[d+16>>2];v[G+12>>2]=v[d+12>>2];v[G+16>>2]=a;Y=v[V>>2];w:{if((Y|0)==v[d+28>>2]){R=x[U+4>>1];i=R;break w}R=x[U+4>>1];i=c+1|0}a=c;if((R|0)==(a|0)){a=x[V+4>>1]+c|0}I=(d|0)==(I|0)?G:I;v[G+28>>2]=B(i,44)+S;v[G+24>>2]=(B(a,44)+S|0)-44;c=c+1|0;d=v[d+28>>2];if((Y|0)!=(d|0)){continue}break}a=v[I+28>>2];c=v[X+24>>2];d=v[I+24>>2];i=v[X+28>>2];v[d+28>>2]=i;v[i+24>>2]=d;v[c+28>>2]=a;v[a+24>>2]=c;y4(p+8|0);i=v[s+24>>2];x:{y:{if(!i){Q=z[p+28>>2];H=z[p+24>>2];P=z[p+20>>2];break y}n=z[s+256>>2];I=v[s+36>>2];Q=z[p+28>>2];H=z[p+24>>2];c=0;k=z[p+48>>2];P=z[p+20>>2];a=0;while(1){d=I+B(a,24)|0;if(n>2])+C(C(P*z[d>>2])+C(z[d+4>>2]*H)))-k)){break x}a=a+1|0;if((i|0)!=(a|0)){continue}break}}i=v[p+8>>2];k=z[i+8>>2];l=z[i+4>>2];f=z[i>>2];T=z[s+252>>2];L=C(-H);M=C(-P);N=C(-Q);a=i;while(1){a=v[a+28>>2];n=z[a+8>>2];h=C(n-k);r=z[a>>2];o=C(r-f);j=z[a+4>>2];O=C(j-l);A=C(K(C(C(h*h)+C(C(o*o)+C(O*O)))));if(A>C(0)){A=C(C(1)/A);h=C(h*A);O=C(O*A);o=C(o*A)}A=C(-C(C(P*O)+C(o*L)));o=C(-C(C(Q*o)+C(h*M)));h=C(-C(C(H*h)+C(O*N)));d=a;while(1){c=0;if(T>2]-k)*A)+C(C(C(z[d>>2]-f)*h)+C(C(z[d+4>>2]-l)*o)))){break x}d=v[d+28>>2];if((d|0)!=(a|0)){continue}break}k=n;l=j;f=r;if((a|0)!=(i|0)){continue}break}I=v[m+28>>2];d=v[m+32>>2];i=v[d+24>>2];a=v[d+36>>2];while(1){d=v[d+28>>2];m=v[m+24>>2];G=v[v[m+32>>2]+36>>2];if((G|0)==(a|0)){continue}break}m=v[v[I+32>>2]+36>>2];if((a|0)==(m|0)){while(1){i=v[i+24>>2];I=v[I+28>>2];m=v[v[I+32>>2]+36>>2];if((a|0)==(m|0)){continue}break}}if(v[v[i+32>>2]+36>>2]==(m|0)){break x}c=(G|0)!=v[v[d+32>>2]+36>>2]}if(w[p+76|0]){u9(S)}xa=p+80|0;if(!c){break u}v[J+8>>2]=0;v[J>>2]=0;v[J+4>>2]=0;w4(E,b,J);a=v[J+4>>2];v[s+100>>2]=v[s+100>>2]-a;if(!a){break t}while(1){d=v[v[J>>2]+(W<<2)>>2];b=v[d+8>>2];if(b){while(1){a=b;v[J+12>>2]=a;b=v[a+20>>2];v[a+20>>2]=0;n=C(C(C(z[E+20>>2]*z[a+8>>2])+C(C(z[E+12>>2]*z[a>>2])+C(z[a+4>>2]*z[E+16>>2])))-z[E+40>>2]);z:{if(n>z[s+252>>2]){z[a+16>>2]=n;c=v[E+8>>2];if(!c){v[E+8>>2]=a;v[a+20>>2]=0;z[a+16>>2]=n;break z}if(n>2]){v[a+20>>2]=v[c+20>>2];v[c+20>>2]=a;break z}v[a+20>>2]=c;v[E+8>>2]=a;break z}c=v[s+264>>2];if(c>>>0>=(v[s+268>>2]&2147483647)>>>0){G4(ea,J+12|0);break z}v[v[s+260>>2]+(c<<2)>>2]=a;v[s+264>>2]=c+1}if(b){continue}break}v[d+8>>2]=0;a=v[J+4>>2]}W=W+1|0;if(W>>>0>>0){continue}break}break t}b=v[b+28>>2];if((b|0)!=v[E>>2]){continue}break}a=0;break s}a=v[J+8>>2];A:{if((a|0)<0|!(a&2147483647)){break A}a=v[J>>2];if(!a){break A}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=1}xa=J+16|0;if(a){continue}break}m=v[s+92>>2]}e=e+1|0;if(m>>>0>e>>>0){continue}break};break q;case 3:e=2;a=v[F+4>>2];if(y[v[F+32>>2]+28>>2]<=x[a+38>>1]){break p}if(w[a+36|0]&32){P4(F);break p}Q4(F);break p;case 2:break r;default:break p}}if(w[v[F+4>>2]+36|0]&32){e=P4(F);break p}Q4(F)}e=0}B:{if(v[F+36>>2]|(!(x[v[F+4>>2]+36>>1]&128)|e)){break B}b=v[F+32>>2];a=v[b+92>>2];if(!a){e=0;break B}c=a&1;b=v[b+88>>2];C:{if((a|0)==1){a=0;e=0;break C}d=a&-2;a=0;e=0;m=0;while(1){i=e<<2;p=v[i+b>>2];if(!v[p+48>>2]){p=x[p+4>>1];a=a>>>0>p>>>0?a:p}i=v[b+(i|4)>>2];if(!v[i+48>>2]){i=x[i+4>>1];a=a>>>0>i>>>0?a:i}e=e+2|0;m=m+2|0;if((d|0)!=(m|0)){continue}break}}D:{if(!c){break D}b=v[b+(e<<2)>>2];if(v[b+48>>2]){break D}b=x[b+4>>1];a=a>>>0>b>>>0?a:b}e=0;if(a>>>0<33){break B}Q4(F)}if(!q){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,q)}xa=g+208|0;return e|0}function haa(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=xa-16|0;xa=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=v[38166];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){c=c+((b^-1)&1)|0;a=c<<3;b=a+152704|0;d=v[a+152712>>2];a=v[d+8>>2];l:{if((b|0)==(a|0)){m=152664,n=Uaa(-2,c)&e,v[m>>2]=n;break l}v[a+12>>2]=b;v[b+8>>2]=a}a=d+8|0;b=c<<3;v[d+4>>2]=b|3;b=b+d|0;v[b+4>>2]=v[b+4>>2]|1;break a}k=v[38168];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;d=(c|a)+(b>>>a|0)|0;a=d<<3;b=a+152704|0;g=v[a+152712>>2];a=v[g+8>>2];m:{if((b|0)==(a|0)){e=Uaa(-2,d)&e;v[38166]=e;break m}v[a+12>>2]=b;v[b+8>>2]=a}v[g+4>>2]=h|3;c=g+h|0;a=d<<3;d=a-h|0;v[c+4>>2]=d|1;v[a+g>>2]=d;if(k){b=(k&-8)+152704|0;f=v[38171];a=1<<(k>>>3);n:{if(!(a&e)){v[38166]=a|e;a=b;break n}a=v[b+8>>2]}v[b+8>>2]=f;v[a+12>>2]=f;v[f+12>>2]=b;v[f+8>>2]=a}a=g+8|0;v[38171]=c;v[38168]=d;break a}j=v[38167];if(!j){break k}b=(0-j&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;c=v[((c|a)+(b>>>a|0)<<2)+152968>>2];f=(v[c+4>>2]&-8)-h|0;b=c;while(1){o:{a=v[b+16>>2];if(!a){a=v[b+20>>2];if(!a){break o}}b=(v[a+4>>2]&-8)-h|0;d=b>>>0>>0;f=d?b:f;c=d?a:c;b=a;continue}break}i=v[c+24>>2];d=v[c+12>>2];if((d|0)!=(c|0)){a=v[c+8>>2];v[a+12>>2]=d;v[d+8>>2]=a;break b}b=c+20|0;a=v[b>>2];if(!a){a=v[c+16>>2];if(!a){break j}b=c+16|0}while(1){g=b;d=a;b=a+20|0;a=v[b>>2];if(a){continue}b=d+16|0;a=v[d+16>>2];if(a){continue}break}v[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=v[38167];if(!j){break k}f=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}b=v[(e<<2)+152968>>2];q:{r:{s:{if(!b){a=0;break s}a=0;c=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(v[b+4>>2]&-8)-h|0;if(g>>>0>=f>>>0){break t}d=b;f=g;if(f){break t}f=0;a=b;break r}g=v[b+20>>2];b=v[((c>>>29&4)+b|0)+16>>2];a=g?(g|0)==(b|0)?a:g:a;c=c<<1;if(b){continue}break}}if(!(a|d)){d=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=v[((c|a)+(b>>>a|0)<<2)+152968>>2]}if(!a){break q}}while(1){b=(v[a+4>>2]&-8)-h|0;c=b>>>0>>0;f=c?b:f;d=c?a:d;b=v[a+16>>2];if(b){a=b}else{a=v[a+20>>2]}if(a){continue}break}}if(!d|v[38168]-h>>>0<=f>>>0){break k}e=v[d+24>>2];c=v[d+12>>2];if((d|0)!=(c|0)){a=v[d+8>>2];v[a+12>>2]=c;v[c+8>>2]=a;break c}b=d+20|0;a=v[b>>2];if(!a){a=v[d+16>>2];if(!a){break i}b=d+16|0}while(1){g=b;c=a;b=a+20|0;a=v[b>>2];if(a){continue}b=c+16|0;a=v[c+16>>2];if(a){continue}break}v[g>>2]=0;break c}c=v[38168];if(c>>>0>=h>>>0){d=v[38171];b=c-h|0;u:{if(b>>>0>=16){v[38168]=b;a=d+h|0;v[38171]=a;v[a+4>>2]=b|1;v[c+d>>2]=b;v[d+4>>2]=h|3;break u}v[38171]=0;v[38168]=0;v[d+4>>2]=c|3;a=c+d|0;v[a+4>>2]=v[a+4>>2]|1}a=d+8|0;break a}i=v[38169];if(i>>>0>h>>>0){b=i-h|0;v[38169]=b;c=v[38172];a=c+h|0;v[38172]=a;v[a+4>>2]=b|1;v[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(v[38284]){c=v[38286]}else{v[38287]=-1;v[38288]=-1;v[38285]=4096;v[38286]=4096;v[38284]=l+12&-16^1431655768;v[38289]=0;v[38277]=0;c=4096}g=j+c|0;f=0-c|0;b=g&f;if(b>>>0<=h>>>0){break a}d=v[38276];if(d){c=v[38274];e=c+b|0;if(d>>>0>>0|c>>>0>=e>>>0){break a}}if(w[153108]&4){break f}v:{w:{d=v[38172];if(d){a=153112;while(1){c=v[a>>2];if(c>>>0<=d>>>0&d>>>0>2]>>>0){break w}a=v[a+8>>2];if(a){continue}break}}c=kaa(0);if((c|0)==-1){break g}e=b;d=v[38285];a=d-1|0;if(a&c){e=(b-c|0)+(a+c&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=v[38276];if(d){a=v[38274];f=a+e|0;if(d>>>0>>0|a>>>0>=f>>>0){break g}}a=kaa(e);if((c|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}c=kaa(e);if((c|0)==(v[a>>2]+v[a+4>>2]|0)){break h}a=c}if(!((a|0)==-1|h+48>>>0<=e>>>0)){c=v[38286];c=c+(j-e|0)&0-c;if(c>>>0>2147483646){c=a;break e}if((kaa(c)|0)!=-1){e=c+e|0;c=a;break e}kaa(0-e|0);break g}c=a;if((a|0)!=-1){break e}break g}d=0;break b}c=0;break c}if((c|0)!=-1){break e}}v[38277]=v[38277]|4}if(b>>>0>2147483646){break d}c=kaa(b);a=kaa(0);if((c|0)==-1|(a|0)==-1|a>>>0<=c>>>0){break d}e=a-c|0;if(e>>>0<=h+40>>>0){break d}}a=v[38274]+e|0;v[38274]=a;if(a>>>0>y[38275]){v[38275]=a}x:{y:{z:{g=v[38172];if(g){a=153112;while(1){d=v[a>>2];b=v[a+4>>2];if((d+b|0)==(c|0)){break z}a=v[a+8>>2];if(a){continue}break}break y}a=v[38170];if(!(a>>>0<=c>>>0?a:0)){v[38170]=c}a=0;v[38279]=e;v[38278]=c;v[38174]=-1;v[38175]=v[38284];v[38281]=0;while(1){d=a<<3;b=d+152704|0;v[d+152712>>2]=b;v[d+152716>>2]=b;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;v[38169]=b;a=a+c|0;v[38172]=a;v[a+4>>2]=b|1;v[(c+d|0)+4>>2]=40;v[38173]=v[38288];break x}if(w[a+12|0]&8|d>>>0>g>>>0|c>>>0<=g>>>0){break y}v[a+4>>2]=b+e;a=g+8&7?-8-g&7:0;c=a+g|0;v[38172]=c;b=v[38169]+e|0;a=b-a|0;v[38169]=a;v[c+4>>2]=a|1;v[(b+g|0)+4>>2]=40;v[38173]=v[38288];break x}if(y[38170]>c>>>0){v[38170]=c}b=c+e|0;a=153112;A:{B:{C:{D:{E:{F:{while(1){if((b|0)!=v[a>>2]){a=v[a+8>>2];if(a){continue}break F}break}if(!(w[a+12|0]&8)){break E}}a=153112;while(1){b=v[a>>2];if(b>>>0<=g>>>0){f=b+v[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=v[a+8>>2];continue}}v[a>>2]=c;v[a+4>>2]=v[a+4>>2]+e;j=(c+8&7?-8-c&7:0)+c|0;v[j+4>>2]=h|3;e=b+(b+8&7?-8-b&7:0)|0;i=h+j|0;a=e-i|0;if((e|0)==(g|0)){v[38172]=i;a=v[38169]+a|0;v[38169]=a;v[i+4>>2]=a|1;break B}if(v[38171]==(e|0)){v[38171]=i;a=v[38168]+a|0;v[38168]=a;v[i+4>>2]=a|1;v[a+i>>2]=a;break B}f=v[e+4>>2];if((f&3)==1){g=f&-8;G:{if(f>>>0<=255){d=v[e+8>>2];b=f>>>3|0;c=v[e+12>>2];if((c|0)==(d|0)){m=152664,n=v[38166]&Uaa(-2,b),v[m>>2]=n;break G}v[d+12>>2]=c;v[c+8>>2]=d;break G}h=v[e+24>>2];c=v[e+12>>2];H:{if((e|0)!=(c|0)){b=v[e+8>>2];v[b+12>>2]=c;v[c+8>>2]=b;break H}I:{f=e+20|0;b=v[f>>2];if(b){break I}f=e+16|0;b=v[f>>2];if(b){break I}c=0;break H}while(1){d=f;c=b;f=b+20|0;b=v[f>>2];if(b){continue}f=c+16|0;b=v[c+16>>2];if(b){continue}break}v[d>>2]=0}if(!h){break G}d=v[e+28>>2];b=(d<<2)+152968|0;J:{if(v[b>>2]==(e|0)){v[b>>2]=c;if(c){break J}m=152668,n=v[38167]&Uaa(-2,d),v[m>>2]=n;break G}v[h+(v[h+16>>2]==(e|0)?16:20)>>2]=c;if(!c){break G}}v[c+24>>2]=h;b=v[e+16>>2];if(b){v[c+16>>2]=b;v[b+24>>2]=c}b=v[e+20>>2];if(!b){break G}v[c+20>>2]=b;v[b+24>>2]=c}e=e+g|0;f=v[e+4>>2];a=a+g|0}v[e+4>>2]=f&-2;v[i+4>>2]=a|1;v[a+i>>2]=a;if(a>>>0<=255){b=(a&-8)+152704|0;c=v[38166];a=1<<(a>>>3);K:{if(!(c&a)){v[38166]=a|c;a=b;break K}a=v[b+8>>2]}v[b+8>>2]=i;v[a+12>>2]=i;v[i+12>>2]=b;v[i+8>>2]=a;break B}f=31;if(a>>>0<=16777215){b=a>>>8|0;f=b+1048320>>>16&8;b=b<>>16&4;b=b<>>16&2;b=(b<>>15|0)-(c|(d|f))|0;f=(b<<1|a>>>b+21&1)+28|0}v[i+28>>2]=f;v[i+16>>2]=0;v[i+20>>2]=0;b=(f<<2)+152968|0;d=v[38167];c=1<>2]=i;break L}f=a<<((f|0)==31?0:25-(f>>>1|0)|0);c=v[b>>2];while(1){b=c;if((v[b+4>>2]&-8)==(a|0)){break C}c=f>>>29|0;f=f<<1;d=(c&4)+b|0;c=v[d+16>>2];if(c){continue}break}v[d+16>>2]=i}v[i+24>>2]=b;v[i+12>>2]=i;v[i+8>>2]=i;break B}d=e-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;v[38169]=b;a=a+c|0;v[38172]=a;v[a+4>>2]=b|1;v[(c+d|0)+4>>2]=40;v[38173]=v[38288];a=(f+(f-39&7?39-f&7:0)|0)-47|0;d=a>>>0>>0?g:a;v[d+4>>2]=27;a=v[38281];v[d+16>>2]=v[38280];v[d+20>>2]=a;a=v[38279];v[d+8>>2]=v[38278];v[d+12>>2]=a;v[38280]=d+8;v[38279]=e;v[38278]=c;v[38281]=0;a=d+24|0;while(1){v[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((d|0)==(g|0)){break x}v[d+4>>2]=v[d+4>>2]&-2;f=d-g|0;v[g+4>>2]=f|1;v[d>>2]=f;if(f>>>0<=255){b=(f&-8)+152704|0;c=v[38166];a=1<<(f>>>3);M:{if(!(c&a)){v[38166]=a|c;a=b;break M}a=v[b+8>>2]}v[b+8>>2]=g;v[a+12>>2]=g;v[g+12>>2]=b;v[g+8>>2]=a;break x}a=31;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}v[g+28>>2]=a;v[g+16>>2]=0;v[g+20>>2]=0;b=(a<<2)+152968|0;d=v[38167];c=1<>2]=g;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);d=v[b>>2];while(1){b=d;if((f|0)==(v[b+4>>2]&-8)){break A}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;d=v[c+16>>2];if(d){continue}break}v[c+16>>2]=g}v[g+24>>2]=b;v[g+12>>2]=g;v[g+8>>2]=g;break x}a=v[b+8>>2];v[a+12>>2]=i;v[b+8>>2]=i;v[i+24>>2]=0;v[i+12>>2]=b;v[i+8>>2]=a}a=j+8|0;break a}a=v[b+8>>2];v[a+12>>2]=g;v[b+8>>2]=g;v[g+24>>2]=0;v[g+12>>2]=b;v[g+8>>2]=a}a=v[38169];if(a>>>0<=h>>>0){break d}b=a-h|0;v[38169]=b;c=v[38172];a=c+h|0;v[38172]=a;v[a+4>>2]=b|1;v[c+4>>2]=h|3;a=c+8|0;break a}v[37699]=48;a=0;break a}O:{if(!e){break O}b=v[d+28>>2];a=(b<<2)+152968|0;P:{if(v[a>>2]==(d|0)){v[a>>2]=c;if(c){break P}j=Uaa(-2,b)&j;v[38167]=j;break O}v[e+(v[e+16>>2]==(d|0)?16:20)>>2]=c;if(!c){break O}}v[c+24>>2]=e;a=v[d+16>>2];if(a){v[c+16>>2]=a;v[a+24>>2]=c}a=v[d+20>>2];if(!a){break O}v[c+20>>2]=a;v[a+24>>2]=c}Q:{if(f>>>0<=15){a=f+h|0;v[d+4>>2]=a|3;a=a+d|0;v[a+4>>2]=v[a+4>>2]|1;break Q}v[d+4>>2]=h|3;e=d+h|0;v[e+4>>2]=f|1;v[e+f>>2]=f;if(f>>>0<=255){b=(f&-8)+152704|0;c=v[38166];a=1<<(f>>>3);R:{if(!(c&a)){v[38166]=a|c;a=b;break R}a=v[b+8>>2]}v[b+8>>2]=e;v[a+12>>2]=e;v[e+12>>2]=b;v[e+8>>2]=a;break Q}a=31;if(f>>>0<=16777215){a=f>>>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|f>>>a+21&1)+28|0}v[e+28>>2]=a;v[e+16>>2]=0;v[e+20>>2]=0;b=(a<<2)+152968|0;S:{c=1<>2]=e;break T}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);h=v[b>>2];while(1){b=h;if((v[b+4>>2]&-8)==(f|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=v[c+16>>2];if(h){continue}break}v[c+16>>2]=e}v[e+24>>2]=b;v[e+12>>2]=e;v[e+8>>2]=e;break Q}a=v[b+8>>2];v[a+12>>2]=e;v[b+8>>2]=e;v[e+24>>2]=0;v[e+12>>2]=b;v[e+8>>2]=a}a=d+8|0;break a}U:{if(!i){break U}b=v[c+28>>2];a=(b<<2)+152968|0;V:{if(v[a>>2]==(c|0)){v[a>>2]=d;if(d){break V}m=152668,n=Uaa(-2,b)&j,v[m>>2]=n;break U}v[i+(v[i+16>>2]==(c|0)?16:20)>>2]=d;if(!d){break U}}v[d+24>>2]=i;a=v[c+16>>2];if(a){v[d+16>>2]=a;v[a+24>>2]=d}a=v[c+20>>2];if(!a){break U}v[d+20>>2]=a;v[a+24>>2]=d}W:{if(f>>>0<=15){a=f+h|0;v[c+4>>2]=a|3;a=a+c|0;v[a+4>>2]=v[a+4>>2]|1;break W}v[c+4>>2]=h|3;d=c+h|0;v[d+4>>2]=f|1;v[d+f>>2]=f;if(k){b=(k&-8)+152704|0;g=v[38171];a=1<<(k>>>3);X:{if(!(a&e)){v[38166]=a|e;a=b;break X}a=v[b+8>>2]}v[b+8>>2]=g;v[a+12>>2]=g;v[g+12>>2]=b;v[g+8>>2]=a}v[38171]=d;v[38168]=f}a=c+8|0}xa=l+16|0;return a|0}function ay(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=C(0),i=0,j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=0,p=0,q=C(0),r=0,s=0,u=C(0),x=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=0,aa=0,ba=0,ca=0,da=C(0),ea=C(0),fa=0,ga=0;if(w[a+488|0]){a9(v[37696],8,12859,2004,76600,0);return}if(t[v[a+476>>2]]&1){c=xa-352|0;xa=c;d=v[a+468>>2];r=I9(v[b+8>>2],0,B(d,d)<<2);i=v[a+444>>2];g=v[b+52>>2];p=g+4|0;f=v[a+448>>2];l=B(f,112);d=v[g+4>>2];b=v[g+8>>2];e=v[(d+(b<<2)|0)-4>>2];if((l|0)<=(e-v[g+16>>2]|0)){e=e-l|0;v[c+160>>2]=e;a:{if(b>>>0>=(v[g+12>>2]&2147483647)>>>0){Us(p,c+160|0);break a}v[d+(b<<2)>>2]=e;v[g+8>>2]=b+1}o=v[c+160>>2]}l=a+112|0;Kx(l,o);e=f-1|0;if(e){while(1){b=B(e,112)+o|0;z[c+48>>2]=z[b>>2];z[c+52>>2]=z[b+4>>2];z[c+56>>2]=z[b+8>>2];z[c+60>>2]=z[b+12>>2];z[c+64>>2]=z[b+16>>2];z[c+68>>2]=z[b+20>>2];z[c+72>>2]=z[b+24>>2];z[c+76>>2]=z[b+28>>2];z[c+80>>2]=z[b+32>>2];z[c+84>>2]=z[b+36>>2];z[c+88>>2]=z[b+40>>2];z[c+92>>2]=z[b+44>>2];z[c+96>>2]=z[b+48>>2];z[c+100>>2]=z[b+52>>2];z[c+104>>2]=z[b+56>>2];z[c+108>>2]=z[b+60>>2];f=b- -64|0;z[c+112>>2]=z[f>>2];z[c+116>>2]=z[b+68>>2];z[c+120>>2]=z[b+72>>2];z[c+124>>2]=z[b+76>>2];z[c+128>>2]=z[b+80>>2];z[c+132>>2]=z[b+84>>2];z[c+136>>2]=z[b+88>>2];z[c+140>>2]=z[b+92>>2];z[c+144>>2]=z[b+96>>2];z[c+148>>2]=z[b+100>>2];z[c+152>>2]=z[b+104>>2];v[c+156>>2]=v[b+108>>2];d=v[a+452>>2]+B(e,160)|0;j=z[d+128>>2];h=z[d+124>>2];k=z[d+120>>2];v[c+40>>2]=0;z[c+36>>2]=-k;z[c+32>>2]=h;z[c+28>>2]=k;v[c+24>>2]=0;z[c+12>>2]=j;v[c+8>>2]=0;z[c+20>>2]=-j;z[c+16>>2]=-h;Ow(c+8|0,c+48|0);d=B(v[(i+(e<<5)|0)+24>>2],112)+o|0;z[d>>2]=z[c+48>>2]+z[d>>2];z[d+4>>2]=z[c+52>>2]+z[d+4>>2];z[d+8>>2]=z[c+56>>2]+z[d+8>>2];z[d+12>>2]=z[c+60>>2]+z[d+12>>2];z[d+16>>2]=z[c+64>>2]+z[d+16>>2];z[d+20>>2]=z[c+68>>2]+z[d+20>>2];z[d+24>>2]=z[c+72>>2]+z[d+24>>2];z[d+28>>2]=z[c+76>>2]+z[d+28>>2];z[d+32>>2]=z[c+80>>2]+z[d+32>>2];z[d+36>>2]=z[c+84>>2]+z[d+36>>2];z[d+40>>2]=z[c+88>>2]+z[d+40>>2];z[d+44>>2]=z[c+92>>2]+z[d+44>>2];z[d+48>>2]=z[c+96>>2]+z[d+48>>2];z[d+52>>2]=z[c+100>>2]+z[d+52>>2];z[d+56>>2]=z[c+104>>2]+z[d+56>>2];z[d+60>>2]=z[c+108>>2]+z[d+60>>2];s=d- -64|0;z[s>>2]=z[c+112>>2]+z[s>>2];z[d+68>>2]=z[c+116>>2]+z[d+68>>2];z[d+72>>2]=z[c+120>>2]+z[d+72>>2];z[d+76>>2]=z[c+124>>2]+z[d+76>>2];z[d+80>>2]=z[c+128>>2]+z[d+80>>2];z[d+84>>2]=z[c+132>>2]+z[d+84>>2];z[d+88>>2]=z[c+136>>2]+z[d+88>>2];z[d+92>>2]=z[c+140>>2]+z[d+92>>2];z[d+96>>2]=z[c+144>>2]+z[d+96>>2];z[d+100>>2]=z[c+148>>2]+z[d+100>>2];z[d+104>>2]=z[c+152>>2]+z[d+104>>2];s=w[(v[a+456>>2]+B(e,80)|0)+76|0];if(s){K=v[a+384>>2]+B(e,76)|0;u=z[b+20>>2];x=z[b+16>>2];A=z[b+12>>2];D=z[b+8>>2];E=z[b+4>>2];F=z[b>>2];O=z[b+104>>2];P=z[b+100>>2];Q=z[b+96>>2];R=z[b+92>>2];S=z[b+88>>2];T=z[b+84>>2];U=z[b+80>>2];V=z[b+76>>2];W=z[b+72>>2];X=z[b+68>>2];Y=z[f>>2];Z=z[b+60>>2];L=z[b+56>>2];M=z[b+52>>2];N=z[b+48>>2];da=z[b+44>>2];ea=z[b+40>>2];J=z[b+36>>2];G=z[b+32>>2];H=z[b+28>>2];I=z[b+24>>2];d=0;while(1){b=(c+160|0)+(d<<5)|0;f=K+B(d,24)|0;j=z[f+20>>2];h=z[f+12>>2];k=z[f+16>>2];m=z[f>>2];n=z[f+4>>2];q=z[f+8>>2];z[b+24>>2]=C(C(G*j)+C(C(I*h)+C(H*k)))+C(C(C(m*U)+C(n*R))+C(q*O));z[b+20>>2]=C(C(u*j)+C(C(A*h)+C(x*k)))+C(C(C(m*V)+C(n*S))+C(q*P));z[b+16>>2]=C(C(D*j)+C(C(F*h)+C(E*k)))+C(C(C(m*W)+C(n*T))+C(q*Q));z[b+8>>2]=C(C(C(m*D)+C(n*u))+C(q*G))+C(C(C(h*da)+C(k*L))+C(j*X));z[b+4>>2]=C(C(C(m*E)+C(n*x))+C(q*H))+C(C(C(h*ea)+C(k*M))+C(j*Y));z[b>>2]=C(C(C(m*F)+C(n*A))+C(q*I))+C(C(C(h*J)+C(k*N))+C(j*Z));d=d+1|0;if((s|0)!=(d|0)){continue}break}}$x(l,e,r,c+160|0);e=e-1|0;if(e){continue}break}}a=v[g+16>>2];b:{if(!(a>>>0<=o>>>0&a+v[g+20>>2]>>>0>o>>>0)){if(!o){break b}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,o);break b}i=v[g+4>>2];d=0;r=v[g+8>>2];e=r;while(1){a=d;d=d+1|0;b=e;e=b-1|0;f=i+(e<<2)|0;if(y[f>>2]>>0){continue}break}c:{if(b>>>0>=r>>>0){break c}e=a&3;if(e){d=0;while(1){v[f>>2]=v[v[p>>2]+(b<<2)>>2];b=b+1|0;f=f+4|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}if(a-1>>>0<3){break c}while(1){a=b<<2;v[f>>2]=v[a+v[p>>2]>>2];v[f+4>>2]=v[(a+v[p>>2]|0)+4>>2];v[f+8>>2]=v[(a+v[p>>2]|0)+8>>2];v[f+12>>2]=v[(a+v[p>>2]|0)+12>>2];f=f+16|0;b=b+4|0;if((r|0)!=(b|0)){continue}break}}v[g+8>>2]=r-1}xa=c+352|0;return}c=xa-160|0;xa=c;f=v[a+468>>2];K=I9(v[b+8>>2],0,B(f,f)<<2);fa=v[a+452>>2];ga=v[a+444>>2];g=v[b+52>>2];o=g+4|0;i=v[a+448>>2];l=B(i,112);d=v[g+4>>2];b=v[g+8>>2];e=v[(d+(b<<2)|0)-4>>2];if((l|0)<=(e-v[g+16>>2]|0)){e=e-l|0;v[c+48>>2]=e;d:{if(b>>>0>=(v[g+12>>2]&2147483647)>>>0){Us(o,c+48|0);break d}v[d+(b<<2)>>2]=e;v[g+8>>2]=b+1}p=v[c+48>>2]}l=f<<5;d=v[g+4>>2];b=v[g+8>>2];e=v[(d+(b<<2)|0)-4>>2];if((l|0)<=(e-v[g+16>>2]|0)){e=e-l|0;v[c+48>>2]=e;e:{if(b>>>0>=(v[g+12>>2]&2147483647)>>>0){Us(o,c+48|0);break e}v[d+(b<<2)>>2]=e;v[g+8>>2]=b+1}r=v[c+48>>2]}aa=a+112|0;Kx(aa,p);e=i-1|0;if(e){while(1){d=B(e,112)+p|0;z[c+48>>2]=z[d>>2];z[c+52>>2]=z[d+4>>2];z[c+56>>2]=z[d+8>>2];z[c+60>>2]=z[d+12>>2];z[c+64>>2]=z[d+16>>2];z[c+68>>2]=z[d+20>>2];z[c+72>>2]=z[d+24>>2];z[c+76>>2]=z[d+28>>2];z[c+80>>2]=z[d+32>>2];z[c+84>>2]=z[d+36>>2];z[c+88>>2]=z[d+40>>2];z[c+92>>2]=z[d+44>>2];z[c+96>>2]=z[d+48>>2];z[c+100>>2]=z[d+52>>2];z[c+104>>2]=z[d+56>>2];z[c+108>>2]=z[d+60>>2];ba=d- -64|0;z[c+112>>2]=z[ba>>2];z[c+116>>2]=z[d+68>>2];z[c+120>>2]=z[d+72>>2];z[c+124>>2]=z[d+76>>2];z[c+128>>2]=z[d+80>>2];z[c+132>>2]=z[d+84>>2];z[c+136>>2]=z[d+88>>2];z[c+140>>2]=z[d+92>>2];z[c+144>>2]=z[d+96>>2];z[c+148>>2]=z[d+100>>2];z[c+152>>2]=z[d+104>>2];v[c+156>>2]=v[d+108>>2];b=v[a+452>>2]+B(e,160)|0;j=z[b+128>>2];h=z[b+124>>2];k=z[b+120>>2];v[c+40>>2]=0;z[c+36>>2]=-k;z[c+32>>2]=h;z[c+28>>2]=k;v[c+24>>2]=0;z[c+12>>2]=j;v[c+8>>2]=0;z[c+20>>2]=-j;z[c+16>>2]=-h;Ow(c+8|0,c+48|0);b=B(v[(ga+(e<<5)|0)+24>>2],112)+p|0;z[b>>2]=z[c+48>>2]+z[b>>2];z[b+4>>2]=z[c+52>>2]+z[b+4>>2];z[b+8>>2]=z[c+56>>2]+z[b+8>>2];z[b+12>>2]=z[c+60>>2]+z[b+12>>2];z[b+16>>2]=z[c+64>>2]+z[b+16>>2];z[b+20>>2]=z[c+68>>2]+z[b+20>>2];z[b+24>>2]=z[c+72>>2]+z[b+24>>2];z[b+28>>2]=z[c+76>>2]+z[b+28>>2];z[b+32>>2]=z[c+80>>2]+z[b+32>>2];z[b+36>>2]=z[c+84>>2]+z[b+36>>2];z[b+40>>2]=z[c+88>>2]+z[b+40>>2];z[b+44>>2]=z[c+92>>2]+z[b+44>>2];z[b+48>>2]=z[c+96>>2]+z[b+48>>2];z[b+52>>2]=z[c+100>>2]+z[b+52>>2];z[b+56>>2]=z[c+104>>2]+z[b+56>>2];z[b+60>>2]=z[c+108>>2]+z[b+60>>2];i=b- -64|0;z[i>>2]=z[c+112>>2]+z[i>>2];z[b+68>>2]=z[c+116>>2]+z[b+68>>2];z[b+72>>2]=z[c+120>>2]+z[b+72>>2];z[b+76>>2]=z[c+124>>2]+z[b+76>>2];z[b+80>>2]=z[c+128>>2]+z[b+80>>2];z[b+84>>2]=z[c+132>>2]+z[b+84>>2];z[b+88>>2]=z[c+136>>2]+z[b+88>>2];z[b+92>>2]=z[c+140>>2]+z[b+92>>2];z[b+96>>2]=z[c+144>>2]+z[b+96>>2];z[b+100>>2]=z[c+148>>2]+z[b+100>>2];z[b+104>>2]=z[c+152>>2]+z[b+104>>2];_=v[a+456>>2]+B(e,80)|0;s=(v[_+72>>2]<<5)+r|0;ca=w[_+76|0];if(ca){$=v[a+384>>2]+B(e,76)|0;b=0;while(1){G=z[d+60>>2];H=z[d+48>>2];I=z[d+36>>2];O=z[ba>>2];P=z[d+52>>2];Q=z[d+40>>2];R=z[d+68>>2];S=z[d+56>>2];T=z[d+44>>2];u=z[d+8>>2];x=z[d+4>>2];A=z[d>>2];U=z[d+96>>2];V=z[d+72>>2];W=z[d+84>>2];D=z[d+20>>2];E=z[d+16>>2];F=z[d+12>>2];X=z[d+100>>2];Y=z[d+76>>2];Z=z[d+88>>2];i=s+(b<<5)|0;L=z[d+32>>2];l=$+B(b,24)|0;j=z[l+20>>2];M=z[d+24>>2];h=z[l+12>>2];N=z[d+28>>2];k=z[l+16>>2];m=z[l>>2];n=z[l+4>>2];q=z[l+8>>2];z[i+24>>2]=C(C(L*j)+C(C(M*h)+C(N*k)))+C(C(C(m*z[d+80>>2])+C(n*z[d+92>>2]))+C(q*z[d+104>>2]));z[i+20>>2]=C(C(D*j)+C(C(F*h)+C(E*k)))+C(C(C(m*Y)+C(n*Z))+C(q*X));z[i+16>>2]=C(C(u*j)+C(C(A*h)+C(x*k)))+C(C(C(m*V)+C(n*W))+C(q*U));z[i+8>>2]=C(C(C(m*u)+C(n*D))+C(q*L))+C(C(C(h*T)+C(k*S))+C(j*R));z[i+4>>2]=C(C(C(m*x)+C(n*E))+C(q*N))+C(C(C(h*Q)+C(k*P))+C(j*O));z[i>>2]=C(C(C(m*A)+C(n*F))+C(q*M))+C(C(C(h*I)+C(k*H))+C(j*G));b=b+1|0;if((ca|0)!=(b|0)){continue}break}}b=$x(aa,e,K,s);l=w[_+76|0];if(l){i=fa+B(b,160)|0;d=0;while(1){j=z[i+104>>2];h=z[i+96>>2];k=z[i+100>>2];b=s+(d<<5)|0;v[b+28>>2]=0;v[b+12>>2]=0;m=z[b+4>>2];n=z[b>>2];z[b+24>>2]=C(C(h*m)-C(k*n))+z[b+24>>2];J=h;h=z[b+8>>2];z[b+20>>2]=z[b+20>>2]+C(C(j*n)-C(J*h));z[b+16>>2]=C(C(k*h)-C(m*j))+z[b+16>>2];d=d+1|0;if((l|0)!=(d|0)){continue}break}}e=e-1|0;if(e){continue}break}}Nx(c+48|0,p);if(f){b=0;while(1){i=B(b,f);a=(b<<5)+r|0;d=0;while(1){e=K+(d+i<<2)|0;$=e;J=z[e>>2];e=(d<<5)+r|0;j=z[e>>2];u=z[c+56>>2];h=z[e+4>>2];x=z[c+68>>2];k=z[e+8>>2];A=z[c+80>>2];m=z[e+16>>2];n=z[e+20>>2];q=z[e+24>>2];D=z[c+48>>2];E=z[c+60>>2];F=z[c+72>>2];G=z[c+52>>2];H=z[c+64>>2];I=z[c+76>>2];z[$>>2]=J-C(C(C(z[a+24>>2]*C(C(C(C(j*u)+C(h*x))+C(k*A))+C(C(C(m*z[c+92>>2])+C(n*z[c+104>>2]))+C(q*z[c+116>>2]))))+C(C(z[a+16>>2]*C(C(C(C(j*D)+C(h*E))+C(k*F))+C(C(C(m*z[c+84>>2])+C(n*z[c+96>>2]))+C(q*z[c+108>>2]))))+C(C(C(C(C(j*G)+C(h*H))+C(k*I))+C(C(C(m*z[c+88>>2])+C(n*z[c+100>>2]))+C(q*z[c+112>>2])))*z[a+20>>2])))+C(C(z[a+8>>2]*C(C(C(A*q)+C(C(F*m)+C(I*n)))+C(C(C(j*z[c+128>>2])+C(h*z[c+140>>2]))+C(k*z[c+152>>2]))))+C(C(z[a>>2]*C(C(C(u*q)+C(C(D*m)+C(G*n)))+C(C(C(j*z[c+120>>2])+C(h*z[c+132>>2]))+C(k*z[c+144>>2]))))+C(C(C(C(x*q)+C(C(E*m)+C(H*n)))+C(C(C(j*z[c+124>>2])+C(h*z[c+136>>2]))+C(k*z[c+148>>2])))*z[a+4>>2]))));d=d+1|0;if((f|0)!=(d|0)){continue}break}b=b+1|0;if((f|0)!=(b|0)){continue}break}}a=v[g+16>>2];f:{if(!(a>>>0<=p>>>0&a+v[g+20>>2]>>>0>p>>>0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,p);break f}l=v[g+4>>2];a=0;i=v[g+8>>2];b=i;while(1){e=a;a=a+1|0;d=b;b=b-1|0;f=l+(b<<2)|0;if(y[f>>2]

>>0){continue}break}g:{if(d>>>0>=i>>>0){break g}b=e&3;if(b){a=0;while(1){v[f>>2]=v[v[o>>2]+(d<<2)>>2];d=d+1|0;f=f+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(e-1>>>0<3){break g}while(1){a=d<<2;v[f>>2]=v[a+v[o>>2]>>2];v[f+4>>2]=v[(a+v[o>>2]|0)+4>>2];v[f+8>>2]=v[(a+v[o>>2]|0)+8>>2];v[f+12>>2]=v[(a+v[o>>2]|0)+12>>2];f=f+16|0;d=d+4|0;if((i|0)!=(d|0)){continue}break}}v[g+8>>2]=i-1}a=v[g+16>>2];h:{if(!(a>>>0<=r>>>0&a+v[g+20>>2]>>>0>r>>>0)){if(!r){break h}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,r);break h}i=v[g+4>>2];a=0;p=v[g+8>>2];b=p;while(1){e=a;a=a+1|0;d=b;b=b-1|0;f=i+(b<<2)|0;if(y[f>>2]>>0){continue}break}i:{if(d>>>0>=p>>>0){break i}b=e&3;if(b){a=0;while(1){v[f>>2]=v[v[o>>2]+(d<<2)>>2];d=d+1|0;f=f+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(e-1>>>0<3){break i}while(1){a=d<<2;v[f>>2]=v[a+v[o>>2]>>2];v[f+4>>2]=v[(a+v[o>>2]|0)+4>>2];v[f+8>>2]=v[(a+v[o>>2]|0)+8>>2];v[f+12>>2]=v[(a+v[o>>2]|0)+12>>2];f=f+16|0;d=d+4|0;if((p|0)!=(d|0)){continue}break}}v[g+8>>2]=p-1}xa=c+160|0}function G0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0);g=xa-208|0;xa=g;r=v[a+320>>2];j=z[r+8>>2];V=w[a+12|0];H=V?d:e;i=z[H>>2];k=z[r+20>>2];h=z[H+4>>2];n=z[r+32>>2];m=z[H+8>>2];ca=C(C(C(j*i)+C(k*h))+C(n*m));l=z[r+4>>2];q=z[r+16>>2];o=z[r+28>>2];da=C(C(C(l*i)+C(q*h))+C(o*m));p=z[r>>2];x=C(p*i);i=z[r+12>>2];x=C(x+C(i*h));h=z[r+24>>2];ea=C(x+C(h*m));d=V?e:d;m=z[d>>2];s=z[d+4>>2];x=z[d+8>>2];$=C(C(C(j*m)+C(k*s))+C(n*x));aa=C(C(C(l*m)+C(q*s))+C(o*x));ba=C(C(C(p*m)+C(i*s))+C(h*x));m=z[c>>2];x=C(m*p);p=z[c+4>>2];x=C(x+C(p*i));i=z[c+8>>2];fa=C(x+C(i*h));ga=C(C(C(m*j)+C(p*k))+C(i*n));ha=C(C(C(m*l)+C(p*q))+C(i*o));ma=z[a+364>>2];e=v[b+8>>2];R=z[a+440>>2];a:{b:{if(!w[a+445|0]){j=C(ba-fa);i=C(da-aa);k=C(ea-ba);h=C(aa-ha);x=C(C(C(j*i)-C(k*h))*z[a+436>>2]);o=h;h=C(ca-$);l=i;i=C($-ga);if(C(x+C(C(C(C(o*h)-C(l*i))*z[a+428>>2])+C(C(C(i*k)-C(h*j))*z[a+432>>2])))<=C(0)){break b}}v[g+152>>2]=0;v[g+156>>2]=0;v[g+144>>2]=0;v[g+148>>2]=0;v[g+128>>2]=0;j=z[a+272>>2];i=z[a+256>>2];k=z[a+240>>2];h=z[a+276>>2];n=z[a+260>>2];m=z[a+228>>2];l=z[a+244>>2];q=z[a+280>>2];o=z[a+264>>2];p=z[a+232>>2];s=z[a+248>>2];x=z[a+224>>2];v[g+124>>2]=0;v[g+108>>2]=0;v[g+92>>2]=0;I=C(q+C(C(o*ca)+C(C(p*ea)+C(da*s))));z[g+120>>2]=I;D=C(h+C(C(n*ca)+C(C(m*ea)+C(da*l))));z[g+116>>2]=D;J=C(j+C(C(i*ca)+C(C(x*ea)+C(da*k))));z[g+112>>2]=J;A=C(q+C(C(o*$)+C(C(p*ba)+C(aa*s))));z[g+104>>2]=A;E=C(h+C(C(n*$)+C(C(m*ba)+C(aa*l))));z[g+100>>2]=E;y=C(j+C(C(i*$)+C(C(x*ba)+C(aa*k))));z[g+96>>2]=y;q=C(q+C(C(o*ga)+C(C(p*fa)+C(ha*s))));z[g+88>>2]=q;h=C(h+C(C(n*ga)+C(C(m*fa)+C(ha*l))));z[g+84>>2]=h;t[g+64|0]=0;v[g+60>>2]=5;v[g+44>>2]=0;j=C(j+C(C(i*ga)+C(C(x*fa)+C(ha*k))));z[g+80>>2]=j;j=C(C(J+C(j+y))*C(.33333298563957214));z[g+32>>2]=j;i=C(C(D+C(h+E))*C(.33333298563957214));z[g+36>>2]=i;k=C(C(I+C(q+A))*C(.33333298563957214));z[g+40>>2]=k;v[g+56>>2]=2139095039;v[g+48>>2]=0;v[g+52>>2]=2139095039;v[g+24>>2]=141856;v[g+28>>2]=g+32;v[g+16>>2]=141216;v[g+20>>2]=a- -64;h=z[a+68>>2];n=z[a+72>>2];m=z[a+64>>2];v[g+12>>2]=0;z[g+8>>2]=k-n;z[g+4>>2]=i-h;z[g>>2]=j-m;b=xa-272|0;xa=b;v[b+248>>2]=0;v[b+252>>2]=0;v[b+240>>2]=0;v[b+244>>2]=0;A=z[g+152>>2];E=z[g+148>>2];y=z[g+144>>2];W=z[a+408>>2];G=z[a+404>>2];P=z[a+400>>2];v[b+224>>2]=1;c=v[g+28>>2];l=z[c+72>>2];o=z[c- -64>>2];q=z[c+68>>2];p=z[c+56>>2];s=z[c+52>>2];x=z[c+88>>2];I=z[c+80>>2];D=z[c+84>>2];J=z[c+48>>2];j=z[g+8>>2];i=z[g>>2];k=z[g+4>>2];c=v[g+20>>2];m=z[c+56>>2];Z=z[c+52>>2];S=z[c+72>>2];H=c- -64|0;M=z[H>>2];T=z[c+68>>2];h=z[c+88>>2];U=z[c+80>>2];L=z[c+84>>2];O=z[c+48>>2];d=0;v[b+172>>2]=0;Q=h;r=C(C(j*j)+C(C(i*i)+C(k*k)))>C(1.1920928955078125e-7);j=r?j:C(0);i=r?i:C(1);h=r?k:C(0);n=C(C(1)/C(K(C(C(j*j)+C(C(i*i)+C(h*h))))));j=C(j*n);k=C(i*n);i=C(h*n);z[b+168>>2]=C(Q*j)+C(C(U*k)+C(L*i));z[b+164>>2]=C(S*j)+C(C(M*k)+C(i*T));z[b+160>>2]=C(m*j)+C(C(O*k)+C(i*Z));r=HV(c,b+160|0);Z=z[H>>2];S=z[c+80>>2];M=z[c+84>>2];T=z[c+52>>2];U=z[c+68>>2];L=z[c+88>>2];r=v[c+152>>2]+B(r,12)|0;h=z[r+8>>2];O=z[c+56>>2];n=z[r>>2];X=z[c+72>>2];m=z[r+4>>2];Y=z[c+48>>2];v[b+180>>2]=0;v[b+184>>2]=0;v[b+188>>2]=0;v[b+192>>2]=0;v[b+196>>2]=0;v[b+200>>2]=0;v[b+204>>2]=0;v[b+208>>2]=0;v[b+212>>2]=0;v[b+216>>2]=0;v[b+220>>2]=0;v[b+172>>2]=0;v[b+176>>2]=0;_=l;Q=x;k=C(-k);l=C(C(C(o*k)-C(q*i))-C(l*j));x=C(C(C(I*k)-C(D*i))-C(x*j));c=l>x;j=C(C(C(J*k)-C(s*i))-C(p*j));r=!(j>l)|!(j>x);j=r?c?_:Q:p;i=C(C(L*h)+C(C(O*n)+C(m*X)));l=C(j-i);z[b+168>>2]=l;k=r?c?q:D:s;p=C(C(M*h)+C(C(T*n)+C(m*U)));q=C(k-p);z[b+164>>2]=q;s=r?c?o:I:J;h=C(C(S*h)+C(C(Y*n)+C(m*Z)));o=C(s-h);z[b+160>>2]=o;v[b+116>>2]=0;v[b+120>>2]=0;v[b+124>>2]=0;v[b+128>>2]=0;v[b+132>>2]=0;v[b+136>>2]=0;v[b+140>>2]=0;v[b+144>>2]=0;v[b+148>>2]=0;v[b+152>>2]=0;v[b+156>>2]=0;v[b+108>>2]=0;v[b+112>>2]=0;z[b+104>>2]=j;z[b+100>>2]=k;z[b+96>>2]=s;v[b+52>>2]=0;v[b+56>>2]=0;v[b+60>>2]=0;v[b+64>>2]=0;v[b+68>>2]=0;v[b+72>>2]=0;v[b+76>>2]=0;v[b+80>>2]=0;v[b+84>>2]=0;v[b+88>>2]=0;v[b+92>>2]=0;v[b+44>>2]=0;v[b+48>>2]=0;z[b+40>>2]=i;z[b+36>>2]=p;z[b+32>>2]=h;i=C(-l);k=C(-q);j=C(-o);p=C(C(l*l)+C(C(o*o)+C(q*q)));h=z[v[g+20>>2]+24>>2];h=C((hka)){h=j;n=k;m=i;s=o;x=q;I=l;break d}Z=C(h+R);na=C(Z*Z);D=C(C(P*C(0))+y);J=C(C(G*C(0))+E);R=C(C(W*C(0))+A);m=i;n=k;h=j;while(1){s=o;x=q;I=l;c=v[g+28>>2];q=z[c+72>>2];o=z[c- -64>>2];y=z[c+68>>2];P=z[c+52>>2];S=z[c+56>>2];M=z[c+88>>2];G=z[c+80>>2];T=z[c+84>>2];U=z[c+48>>2];c=v[g+20>>2];L=z[c+52>>2];O=z[c+56>>2];X=z[c+72>>2];V=c- -64|0;Y=z[V>>2];ia=z[c+68>>2];oa=z[c+88>>2];l=z[c+80>>2];A=z[c+84>>2];ja=z[c+48>>2];v[b+268>>2]=0;_=l;E=C(C(1)/C(K(C(C(i*i)+C(C(j*j)+C(k*k))))));l=C(j*E);W=C(-l);Q=A;A=C(k*E);E=C(i*E);z[b+264>>2]=C(C(_*W)-C(Q*A))-C(oa*E);z[b+260>>2]=C(C(Y*W)-C(ia*A))-C(X*E);z[b+256>>2]=C(C(ja*W)-C(L*A))-C(O*E);H=HV(c,b+256|0);ja=o;_=G;o=C(C(q*E)+C(C(o*l)+C(A*y)));G=C(C(M*E)+C(C(G*l)+C(A*T)));d=o>G;Q=o;o=C(C(S*E)+C(C(U*l)+C(A*P)));r=!(QG);U=r?d?ja:_:U;H=v[c+152>>2]+B(H,12)|0;o=z[H+8>>2];L=z[H>>2];O=z[H+4>>2];X=C(D+C(C(z[c+80>>2]*o)+C(C(z[c+48>>2]*L)+C(O*z[V>>2]))));G=C(U-X);T=r?d?y:T:P;Y=C(J+C(C(z[c+84>>2]*o)+C(C(z[c+52>>2]*L)+C(O*z[c+68>>2]))));P=C(T-Y);S=r?d?q:M:S;M=C(R+C(C(z[c+88>>2]*o)+C(C(z[c+56>>2]*L)+C(O*z[c+72>>2]))));y=C(S-M);q=C(C(C(C(l*C(-G))-C(A*P))-C(E*y))-Z);if(q>C(0)){d=0;o=z[a+408>>2];L=z[a+400>>2];O=z[a+404>>2];ia=C(C(E*o)+C(C(l*L)+C(A*O)));if(ia>=C(0)){break c}l=N;N=C(l-C(q/ia));if(N>l){if(N>C(1)){break c}m=z[g+152>>2];n=z[g+148>>2];h=z[g+144>>2];v[b+76>>2]=0;v[b+60>>2]=0;v[b+44>>2]=0;l=C(h+C(L*N));h=C(l-D);p=C(h+z[b+64>>2]);z[b+64>>2]=p;q=C(n+C(O*N));n=C(q-J);D=C(n+z[b+68>>2]);z[b+68>>2]=D;o=C(m+C(o*N));m=C(o-R);J=C(m+z[b+72>>2]);z[b+72>>2]=J;R=C(h+z[b+48>>2]);z[b+48>>2]=R;y=C(n+z[b+52>>2]);z[b+52>>2]=y;G=C(m+z[b+56>>2]);z[b+56>>2]=G;h=C(h+z[b+32>>2]);z[b+32>>2]=h;n=C(n+z[b+36>>2]);z[b+36>>2]=n;m=C(m+z[b+40>>2]);z[b+40>>2]=m;P=z[b+96>>2];M=z[b+100>>2];L=z[b+104>>2];v[b+172>>2]=0;z[b+168>>2]=L-m;z[b+164>>2]=M-n;z[b+160>>2]=P-h;h=z[b+112>>2];n=z[b+116>>2];m=z[b+120>>2];v[b+188>>2]=0;z[b+184>>2]=m-G;z[b+180>>2]=n-y;z[b+176>>2]=h-R;h=z[b+128>>2];n=z[b+132>>2];m=z[b+136>>2];v[b+204>>2]=0;z[b+200>>2]=m-J;z[b+196>>2]=n-D;z[b+192>>2]=h-p;c=v[g+20>>2];m=z[c+56>>2];p=z[c+52>>2];D=z[c+72>>2];r=c- -64|0;J=z[r>>2];R=z[c+68>>2];h=z[c+88>>2];n=z[c+80>>2];y=z[c+84>>2];G=z[c+48>>2];v[b+268>>2]=0;Q=h;h=C(-E);_=C(n*W);n=C(-A);z[b+264>>2]=C(Q*h)+C(_+C(y*n));z[b+260>>2]=C(D*h)+C(C(J*W)+C(R*n));z[b+256>>2]=C(m*h)+C(C(G*W)+C(p*n));d=HV(c,b+256|0);d=v[c+152>>2]+B(d,12)|0;h=z[d+8>>2];n=z[d>>2];m=z[d+4>>2];M=C(o+C(C(z[c+88>>2]*h)+C(C(z[c+56>>2]*n)+C(m*z[c+72>>2]))));y=C(S-M);Y=C(q+C(C(z[c+84>>2]*h)+C(C(z[c+52>>2]*n)+C(m*z[c+68>>2]))));P=C(T-Y);X=C(l+C(C(z[c+80>>2]*h)+C(C(z[c+48>>2]*n)+C(m*z[r>>2]))));G=C(U-X);h=j;n=k;m=i;D=l;J=q;R=o;l=C(34028234663852886e22)}else{l=p}}else{l=p}A=l;d=v[b+224>>2];r=d<<4;c=r+(b+96|0)|0;v[c+12>>2]=0;z[c+8>>2]=S;z[c+4>>2]=T;z[c>>2]=U;c=r+(b+32|0)|0;v[c+12>>2]=0;z[c+8>>2]=M;z[c+4>>2]=Y;z[c>>2]=X;c=r+(b+160|0)|0;v[c+12>>2]=0;z[c+8>>2]=y;z[c+4>>2]=P;z[c>>2]=G;v[b+224>>2]=d+1;e:{f:{switch(d-1|0){case 0:l=z[b+168>>2];j=C(z[b+184>>2]-l);q=z[b+160>>2];i=C(z[b+176>>2]-q);o=z[b+164>>2];k=C(z[b+180>>2]-o);p=C(C(j*j)+C(C(i*i)+C(k*k)));if(p<=C(1.1920928955078125e-7)){v[b+224>>2]=1;c=v[b+164>>2];v[b+256>>2]=v[b+160>>2];v[b+260>>2]=c;c=v[b+172>>2];v[b+264>>2]=v[b+168>>2];v[b+268>>2]=c;break e}Q=j;j=C(F(C(C(C(C(C(-q)*i)-C(k*o))-C(l*j))/p),C(1)));j=j>C(0)?j:C(0);z[b+264>>2]=l+C(Q*j);z[b+260>>2]=o+C(k*j);z[b+256>>2]=q+C(i*j);break e;case 1:JV(b+256|0,b+160|0,b+96|0,b+32|0,b+224|0);break e;case 2:N_(b+256|0,b+160|0,b+96|0,b+32|0,b+224|0);break e;default:break f}}z[b+264>>2]=y;z[b+260>>2]=P;z[b+256>>2]=G}l=z[b+264>>2];i=C(-l);q=z[b+260>>2];k=C(-q);o=z[b+256>>2];j=C(-o);p=C(C(l*l)+C(C(o*o)+C(q*q)));if(na>2]+32|0];D=C(0);y=C(0);r=!(p>ka)|d;i=r?m:i;j=r?h:j;k=r?n:k;h=C(K(C(C(i*i)+C(C(j*j)+C(k*k)))));if(!(h<=C(1.1920928955078125e-7))){m=i;i=C(C(1)/h);la=C(m*i);y=C(j*i);D=C(k*i)}v[g+188>>2]=0;z[g+184>>2]=-la;z[g+180>>2]=-D;z[g+176>>2]=-y;z[g+160>>2]=N;v[g+172>>2]=v[b+236>>2];r=v[b+232>>2];v[g+164>>2]=v[b+228>>2];v[g+168>>2]=r;v[b+268>>2]=0;z[b+264>>2]=d?I:l;z[b+260>>2]=d?x:q;z[b+256>>2]=d?s:o;d=v[b+252>>2];H=v[b+248>>2];v[b+24>>2]=H;v[b+28>>2]=d;r=v[b+244>>2];V=v[b+240>>2];v[b+16>>2]=V;v[b+20>>2]=r;v[b+8>>2]=H;v[b+12>>2]=d;v[b>>2]=V;v[b+4>>2]=r;IV(b+160|0,b+96|0,b+32|0,b+256|0,b+16|0,b,v[b+224>>2]);j=z[v[g+28>>2]+16>>2];i=z[b+16>>2];k=z[b+20>>2];h=z[b+24>>2];v[g+204>>2]=0;z[g+200>>2]=h+(c?C(la*j):C(-0));z[g+196>>2]=k+(c?C(D*j):C(-0));z[g+192>>2]=i+(c?C(y*j):C(-0));d=1}xa=b+272|0;if(!d){break b}j=z[g+160>>2];g:{if(j<=z[g+128>>2]){t[a+11|0]=1;v[a+364>>2]=0;u[a+336>>1]=1026;v[a+332>>2]=e;z[a+352>>2]=-z[a+416>>2];z[a+360>>2]=-z[a+424>>2];z[a+356>>2]=-z[a+420>>2];j=C(0);break g}j=C(j*z[a+384>>2]);if(!(ma>j)){break b}l=z[g+184>>2];q=z[g+180>>2];o=z[g+176>>2];p=z[g+200>>2];s=z[g+196>>2];x=z[g+192>>2];z[a+364>>2]=j;u[a+336>>1]=1027;v[a+332>>2]=e;i=z[a+296>>2];k=z[a+288>>2];h=z[a+292>>2];I=C(C(i*p)+C(C(x*k)+C(s*h)));n=z[a+300>>2];m=C(C(n*n)+C(-.5));N=C(C(i*I)+C(C(n*C(C(k*s)-C(x*h)))+C(p*m)));z[a+348>>2]=z[a+312>>2]+C(N+N);N=C(C(h*I)+C(C(n*C(C(i*x)-C(p*k)))+C(s*m)));z[a+344>>2]=z[a+308>>2]+C(N+N);p=C(C(k*I)+C(C(n*C(C(h*p)-C(s*i)))+C(x*m)));z[a+340>>2]=z[a+304>>2]+C(p+p);p=C(C(i*l)+C(C(k*o)+C(q*h)));s=C(C(i*p)+C(C(n*C(C(k*q)-C(o*h)))+C(l*m)));s=C(s+s);x=s;I=C(s*s);s=C(C(k*p)+C(C(n*C(C(h*l)-C(q*i)))+C(o*m)));s=C(s+s);i=C(C(h*p)+C(C(n*C(C(i*o)-C(l*k)))+C(q*m)));i=C(i+i);k=C(C(1)/C(K(C(I+C(C(s*s)+C(i*i))))));z[a+360>>2]=x*k;z[a+356>>2]=i*k;z[a+352>>2]=s*k}t[a+10|0]=1;z[f>>2]=j*z[a+16>>2];z[a+52>>2]=ca;z[a+48>>2]=da;z[a+44>>2]=ea;z[a+40>>2]=$;z[a+36>>2]=aa;z[a+32>>2]=ba;z[a+28>>2]=ga;z[a+24>>2]=ha;z[a+20>>2]=fa;b=0;if(w[a+444|0]|z[a+364>>2]==C(0)){break a}}b=1}xa=g+208|0;return b|0}function xw(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=C(0),q=0,r=C(0),s=C(0),u=0,x=C(0),y=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0),fa=C(0),ga=0,ha=0,ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=0,wa=0,ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=C(0),Ia=0,Ja=C(0),Ka=0,La=0,Ma=0,Na=0;q=xa-192|0;xa=q;da=(m<<5)+b|0;u=v[da+20>>2];o=!(z[u+112>>2]>C(0))|!(z[u+108>>2]>C(0)?1:z[u+104>>2]>C(0))?o:1;o=!(z[u+128>>2]>C(0))|!(z[u+124>>2]>C(0)?1:z[u+120>>2]>C(0))?o:o+1|0;o=!(z[u+144>>2]>C(0))|!(z[u+140>>2]>C(0)?1:z[u+136>>2]>C(0))?o:o+1|0;I=B(m,80);y=v[e+344>>2];o=!(z[u+160>>2]>C(0))|!(z[u+156>>2]>C(0)?1:z[u+152>>2]>C(0))?o:o+1|0;ga=y+I|0;o=!(z[u+176>>2]>C(0))|!(z[u+172>>2]>C(0)?1:z[u+168>>2]>C(0))?o:o+1|0;I=w[ga+79|0];N=w[ga+77|0];p=z[u+248>>2];J=m<<5;ha=J+b|0;o=(N<<1)+(!(z[u+192>>2]>C(0))|!(z[u+188>>2]>C(0)?1:z[u+184>>2]>C(0))?o:o+1|0)|0;Ea=y+B(m,80)|0;N=p>C(0);R=N?w[Ea+76|0]:0;a:{if((o+R&255)==(0-I&255)){break a}Fa=v[e+68>>2]+(v[ga+72>>2]<<2)|0;ia=v[e+348>>2];Ga=ia+B(m,96)|0;aa=z[u+12>>2];Z=z[u>>2];ba=z[u+4>>2];_=z[u+8>>2];o=v[ha+16>>2];L=z[o+8>>2];$=z[u+28>>2];ca=z[u+32>>2];ja=z[u+40>>2];ka=z[u+36>>2];r=C(p*g);y=J+v[e+164>>2]|0;p=z[y+8>>2];s=C(p*p);p=z[y>>2];x=C(p*p);p=z[y+4>>2];s=C(K(C(s+C(x+C(p*p)))));p=z[y+24>>2];x=C(p*p);p=z[y+16>>2];A=C(p*p);p=z[y+20>>2];Ha=N?C(r*C(s+C(K(C(x+C(A+C(p*p))))))):C(0);p=z[u+52>>2];E=C(p+p);F=z[o+12>>2];r=C(C(F*F)+C(-.5));O=z[o>>2];p=z[u+48>>2];p=C(p+p);s=z[u+44>>2];P=C(s+s);Q=z[o+4>>2];ya=C(C(E*r)+C(F*C(C(O*p)-C(P*Q))));za=C(C(p*r)+C(F*C(C(L*P)-C(E*O))));Aa=C(C(P*r)+C(F*C(C(Q*E)-C(p*L))));r=z[u+24>>2];S=C(r+r);Ia=(v[da+24>>2]<<5)+b|0;y=v[Ia+16>>2];G=z[y+12>>2];s=C(C(G*G)+C(-.5));H=z[y>>2];r=z[u+20>>2];r=C(r+r);x=z[u+16>>2];W=C(x+x);T=z[y+4>>2];Ba=C(C(S*s)+C(G*C(C(H*r)-C(W*T))));U=z[y+8>>2];la=C(C(r*s)+C(G*C(C(U*W)-C(S*H))));ma=C(C(W*s)+C(G*C(C(T*S)-C(r*U))));Ja=l?C(0):C(1);na=C(p*Q);oa=C(r*T);pa=z[o+16>>2];qa=z[y+16>>2];ra=z[o+24>>2];sa=z[o+20>>2];ta=z[y+24>>2];ua=z[y+20>>2];Ca=B(m,76);Da=R&255;y=0;I=0;while(1){J=u+I|0;o=w[J+258|0];if(o){N=(I<<4)+u|0;V=v[N+116>>2];if(Da?1:(o|0)==1|(V|0)!=4){o=(Ca+v[e+272>>2]|0)+B(y,24)|0;p=z[o>>2];r=z[o+4>>2];s=z[o+8>>2];o=v[da+24>>2];v[q+136>>2]=0;v[q+140>>2]=0;v[q+128>>2]=0;v[q+132>>2]=0;v[q+156>>2]=0;z[q+152>>2]=s;z[q+148>>2]=r;z[q+144>>2]=p;v[q+104>>2]=0;v[q+108>>2]=0;v[q+96>>2]=0;v[q+100>>2]=0;v[q+124>>2]=0;z[q+120>>2]=-s;z[q+116>>2]=-r;z[q+112>>2]=-p;kx(b,f,e,o,q+128|0,q+48|0,m,q+96|0,q+160|0);M=C(0);x=z[q+72>>2];A=z[q+64>>2];X=z[q+68>>2];Y=z[q+184>>2];ea=z[q+176>>2];fa=z[q+180>>2];D=C(C(C(s*x)+C(C(p*A)+C(r*X)))-C(C(s*Y)+C(C(p*ea)+C(r*fa))));if(D>C(9999999747378752e-21)){M=C(C(1)/C(D+k))}o=v[e+180>>2];v[e+180>>2]=o+1;o=v[e+176>>2]+B(o,176)|0;z[o+100>>2]=D;z[o+96>>2]=M;z[o+48>>2]=A;v[o+24>>2]=0;v[o+28>>2]=0;z[o+12>>2]=p;v[o+8>>2]=0;v[o>>2]=0;v[o+4>>2]=0;z[o+56>>2]=x;z[o+52>>2]=X;z[o+44>>2]=s;z[o+40>>2]=r;z[o+36>>2]=p;v[o+32>>2]=0;z[o+20>>2]=s;z[o+16>>2]=r;z[o+60>>2]=z[q+48>>2];z[o- -64>>2]=z[q+52>>2];p=z[q+56>>2];z[o+80>>2]=Y;z[o+76>>2]=fa;z[o+72>>2]=ea;z[o+68>>2]=p;z[o+84>>2]=z[q+160>>2];z[o+88>>2]=z[q+164>>2];p=z[q+168>>2];t[o+168|0]=0;z[o+120>>2]=j;z[o+92>>2]=p;b:{if(w[J+258|0]!=1){p=C(34028234663852886e22);r=C(-34028234663852886e22);break b}va=(I<<3)+u|0;p=z[va+60>>2];r=z[va+56>>2]}va=1<>2]=0;v[o+112>>2]=0;v[o+116>>2]=0;z[o+108>>2]=p;z[o+104>>2]=r;z[o+164>>2]=Ja;z[o+156>>2]=Ha;c:{d:{e:{f:{if((V|0)!=4){V=y<<2;Ka=V+Ga|0;r=z[Ka+12>>2];if(w[J+258|0]==1){J=(I<<3)+u|0;p=z[J+60>>2];s=z[J+56>>2];r=r>2];A=z[Ka>>2];p=C(9999999562023526e9);s=C(0);g:{h:{J=v[N+116>>2];switch(J-2|0){case 0:break g;case 1:break h;default:break f}}p=C(0);s=C(9999999562023526e9)}Y=C(C(C(s*A)+C(C(r-X)*p))*h);x=C(C(C(g*p)+s)*g);r=C(C(C(h*p)+s)*h);break e}v[o+124>>2]=0;v[o+128>>2]=0;v[o+148>>2]=0;v[o+152>>2]=0;v[o+140>>2]=0;v[o+144>>2]=0;v[o+132>>2]=0;v[o+136>>2]=0;break c}p=z[N+104>>2];s=z[N+108>>2];x=C(C(C(g*p)+s)*g);Y=C(C(C(s*A)+C(C(r-X)*p))*h);r=C(C(C(h*p)+s)*h);A=C(0);s=C(0);p=C(0);i:{switch(J|0){case 0:break e;case 1:break i;default:break d}}p=C(C(1)/C(r+C(1)));z[o+124>>2]=M*C(Y*p);z[o+136>>2]=M*C(r*C(-p));s=C(C(1)/C(x+C(1)));A=C(M*C(x*s));break d}p=C(0);s=C(0);if(D>C(0)){s=C(C(1)/C(C(x*D)+C(1)));p=C(C(1)/C(C(r*D)+C(1)))}z[o+136>>2]=r*C(-p);z[o+124>>2]=Y*p;A=C(x*s)}z[o+144>>2]=C(1)-p;z[o+132>>2]=X;v[o+128>>2]=0;p=z[N+112>>2];v[o+152>>2]=0;z[o+140>>2]=C(C(D*A)*C(C(1)-s))*j;z[o+148>>2]=p*n}wa=wa|va}y=y+1|0}I=I+1|0;if((I|0)!=3){continue}break}p=C(C(L*E)+C(C(O*P)+na));X=C(ra+C(C(L*p)+ya));Y=C(sa+C(C(Q*p)+za));ya=C(pa+C(C(O*p)+Aa));p=C(C(U*S)+C(C(H*W)+oa));za=C(ta+C(C(U*p)+Ba));Aa=C(ua+C(C(T*p)+la));Ba=C(qa+C(C(H*p)+ma));Ca=B(m,76);ia=ia+B(m,96)|0;Da=R&255;I=3;while(1){J=u+I|0;o=w[J+258|0];if(o){R=0;N=(I<<4)+u|0;j:{k:{if(z[N+112>>2]>C(0)){R=1;if(z[N+104>>2]>C(0)){break k}R=z[N+108>>2]>C(0)}if(R|(o|0)==1){break k}if(!Da){break j}}o=(Ca+v[e+272>>2]|0)+B(y,24)|0;p=z[o+20>>2];r=z[o+16>>2];s=z[o+12>>2];o=v[ha+16>>2];D=z[o+24>>2];M=z[o+20>>2];V=v[Ia+16>>2];A=z[V+24>>2];x=z[V+20>>2];P=z[o+16>>2];E=z[V+16>>2];o=v[da+24>>2];v[q+156>>2]=0;E=C(Ba-E);S=C(Aa-x);x=C(C(r*E)-C(s*S));z[q+152>>2]=x;W=C(za-A);A=C(C(s*W)-C(p*E));z[q+148>>2]=A;E=C(C(S*p)-C(r*W));z[q+144>>2]=E;v[q+140>>2]=0;z[q+136>>2]=p;z[q+132>>2]=r;z[q+128>>2]=s;v[q+124>>2]=0;S=C(ya-P);M=C(Y-M);P=C(C(r*S)-C(s*M));z[q+120>>2]=-P;D=C(X-D);S=C(C(s*D)-C(p*S));z[q+116>>2]=-S;W=C(C(M*p)-C(r*D));z[q+112>>2]=-W;v[q+108>>2]=0;z[q+104>>2]=-p;z[q+100>>2]=-r;z[q+96>>2]=-s;kx(b,f,e,o,q+128|0,q+48|0,m,q+96|0,q+160|0);M=C(0);la=z[q+56>>2];ma=z[q+48>>2];na=z[q+52>>2];oa=z[q+72>>2];pa=z[q+64>>2];qa=z[q+68>>2];ra=z[q+168>>2];sa=z[q+160>>2];ta=z[q+164>>2];ua=z[q+184>>2];ea=z[q+176>>2];fa=z[q+180>>2];D=C(C(C(C(p*la)+C(C(s*ma)+C(r*na)))+C(C(oa*x)+C(C(pa*E)+C(A*qa))))-C(C(C(p*ra)+C(C(s*sa)+C(r*ta)))+C(C(ua*P)+C(C(ea*W)+C(S*fa)))));if(D>C(9999999747378752e-21)){M=C(C(1)/C(D+k))}o=v[e+180>>2];v[e+180>>2]=o+1;o=v[e+176>>2]+B(o,176)|0;z[o+96>>2]=M;z[o+100>>2]=D;t[o+168|0]=1;z[o+120>>2]=j;z[o+72>>2]=ea;z[o+48>>2]=pa;z[o+24>>2]=s;z[o+12>>2]=E;z[o+8>>2]=p;z[o+4>>2]=r;z[o>>2]=s;z[o+92>>2]=ra;z[o+88>>2]=ta;z[o+84>>2]=sa;z[o+80>>2]=ua;z[o+76>>2]=fa;z[o+68>>2]=la;z[o- -64>>2]=na;z[o+60>>2]=ma;z[o+56>>2]=oa;z[o+52>>2]=qa;z[o+44>>2]=P;z[o+40>>2]=S;z[o+36>>2]=W;z[o+32>>2]=p;z[o+28>>2]=r;z[o+20>>2]=x;z[o+16>>2]=A;v[o+160>>2]=0;v[o+112>>2]=0;v[o+116>>2]=0;z[o+156>>2]=Ha;z[o+164>>2]=Ja;l:{if(w[J+258|0]!=1){p=C(34028234663852886e22);r=C(-34028234663852886e22);break l}V=(I<<3)+u|0;p=z[V+60>>2];r=z[V+56>>2]}V=1<>2]=p;z[o+104>>2]=r;m:{n:{o:{p:{if(R){R=y<<2;r=z[(R+ia|0)+12>>2];p=z[R+Ga>>2];if(w[J+258|0]==1){J=(I<<3)+u|0;s=z[J+60>>2];x=z[J+56>>2];r=rs?s:r}P=z[R+Fa>>2];x=C(-p);p=C(0);s=C(9999999562023526e9);q:{r:{R=v[N+116>>2];switch(R-2|0){case 0:break q;case 1:break r;default:break p}}p=C(9999999562023526e9);s=C(0)}A=C(C(C(p*x)+C(C(r-P)*s))*h);E=C(C(C(g*s)+p)*g);r=C(C(C(h*s)+p)*h);break o}v[o+124>>2]=0;v[o+128>>2]=0;v[o+148>>2]=0;v[o+152>>2]=0;v[o+140>>2]=0;v[o+144>>2]=0;v[o+132>>2]=0;v[o+136>>2]=0;break m}p=z[N+104>>2];s=z[N+108>>2];E=C(C(C(g*p)+s)*g);A=C(C(C(s*x)+C(C(r-P)*p))*h);r=C(C(C(h*p)+s)*h);s=C(0);p=C(0);x=C(0);s:{switch(R|0){case 0:break o;case 1:break s;default:break n}}p=C(C(1)/C(r+C(1)));z[o+124>>2]=M*C(A*p);z[o+136>>2]=M*C(r*C(-p));s=C(C(1)/C(E+C(1)));x=C(M*C(E*s));break n}p=C(0);s=C(0);if(D>C(0)){s=C(C(1)/C(C(E*D)+C(1)));p=C(C(1)/C(C(r*D)+C(1)))}z[o+136>>2]=r*C(-p);z[o+124>>2]=A*p;x=C(E*s)}z[o+144>>2]=C(1)-p;z[o+132>>2]=P;v[o+128>>2]=0;p=z[N+112>>2];v[o+152>>2]=0;z[o+140>>2]=C(C(C(1)-s)*C(D*x))*j;z[o+148>>2]=p*n}wa=V|wa}y=y+1|0}I=I+1|0;if((I|0)!=6){continue}break}if(!w[ga+79|0]){break a}p=C(C(C(C(G*aa)-C(Z*H))-C(T*ba))-C(U*_));r=C(C(C(L*$)+C(C(F*ca)+C(Q*ja)))-C(ka*O));M=C(p*r);s=C(C(C(C(F*ja)-C($*O))-C(Q*ca))-C(L*ka));x=C(C(C(U*Z)+C(C(G*ba)+C(T*aa)))-C(_*H));E=C(s*x);A=C(C(C(H*ba)+C(C(G*_)+C(U*aa)))-C(Z*T));D=C(C(C(Q*ka)+C(C(F*$)+C(O*ja)))-C(ca*L));P=C(A*D);G=C(C(C(T*_)+C(C(G*Z)+C(H*aa)))-C(ba*U));H=C(s*G);L=C(C(C(O*ca)+C(C(F*ka)+C(L*ja)))-C($*Q));F=C(x*L);O=C(D*x);Q=C(p*L);T=C(s*A);U=C(G*r);aa=C(O+C(C(Q-T)-U));Z=C(L*G);ba=C(Z+C(C(M-E)-P));_=C(r*A);$=C(p*D);ca=C(_+C(C($-H)-F));F=C(F+_);H=C(H+$);z[q+76>>2]=C(F-H)*C(.5);z[q+68>>2]=C(H+F)*C(.5);F=C(p*s);s=C(A*L);L=C(G*D);r=C(x*r);x=C(s+C(L+r));p=C(F-x);s=C(C(C(s+s)+p)*C(.5));z[q+80>>2]=s;r=C(C(C(r+r)+p)*C(.5));z[q- -64>>2]=r;G=C(P+Z);H=C(E+M);z[q+72>>2]=C(G+H)*C(.5);O=C(O+U);Q=C(T+Q);z[q+60>>2]=C(O-Q)*C(.5);z[q+56>>2]=C(G-H)*C(.5);z[q+52>>2]=C(Q+O)*C(.5);p=C(C(C(L+L)+p)*C(.5));z[q+48>>2]=p;if(C(F+x)==C(0)){z[q+80>>2]=s+C(1.1920928955078125e-7);z[q+64>>2]=r+C(1.1920928955078125e-7);z[q+48>>2]=p+C(1.1920928955078125e-7)}z[q+44>>2]=-aa;z[q+40>>2]=-ba;z[q+36>>2]=-ca;L=C(i*j);y=0;while(1){if(!w[(u+y|0)+258|0]){F=z[(q+36|0)+(y<<2)>>2];o=(q+48|0)+B(y,12)|0;p=z[o>>2];r=z[o+4>>2];s=z[o+8>>2];o=v[da+24>>2];v[q+104>>2]=0;v[q+108>>2]=0;v[q+96>>2]=0;v[q+100>>2]=0;v[q+124>>2]=0;z[q+120>>2]=s;z[q+116>>2]=r;z[q+112>>2]=p;v[q+8>>2]=0;v[q+12>>2]=0;v[q>>2]=0;v[q+4>>2]=0;v[q+28>>2]=0;z[q+24>>2]=-s;z[q+20>>2]=-r;z[q+16>>2]=-p;kx(b,f,e,o,q+96|0,q+160|0,m,q,q+128|0);x=C(0);G=z[q+184>>2];O=z[q+176>>2];Q=z[q+180>>2];H=z[q+152>>2];T=z[q+144>>2];U=z[q+148>>2];A=C(C(C(s*G)+C(C(p*O)+C(r*Q)))-C(C(s*H)+C(C(p*T)+C(r*U))));if(A>C(9999999747378752e-21)){x=C(C(1)/C(A+k))}o=v[e+192>>2];v[e+192>>2]=o+1;o=v[e+188>>2]+B(o,80)|0;z[o+48>>2]=p;z[o+8>>2]=G;z[o+4>>2]=Q;z[o>>2]=O;z[o+56>>2]=s;z[o+52>>2]=r;z[o+12>>2]=z[q+160>>2];z[o+16>>2]=z[q+164>>2];p=z[q+168>>2];z[o+32>>2]=H;z[o+28>>2]=U;z[o+24>>2]=T;z[o+20>>2]=p;z[o+36>>2]=z[q+128>>2];z[o+40>>2]=z[q+132>>2];p=z[q+136>>2];z[o+68>>2]=L;z[o+64>>2]=F;z[o+60>>2]=x;z[o+44>>2]=p}y=y+1|0;if((y|0)!=3){continue}break}}t[Ea+78|0]=wa;m=v[ha>>2];o=v[ha+4>>2];if(m|o){while(1){u=m;xw(a,b,c,d,e,f,g,h,i,j,k,l,(La=Qaa(u),Ma=Qaa(o)+32|0,Na=u,Na?La:Ma),n);m=u-1&u;o=o&o-!u;if(m|o){continue}break}}xa=q+192|0}function S1(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=0,q=C(0),r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;p=xa-9952|0;xa=p;Q=z[g+20>>2];J=z[g+24>>2];M=z[f+20>>2];N=z[f+24>>2];y=z[g>>2];r=z[g+4>>2];s=z[g+8>>2];q=z[g+12>>2];I=z[g+16>>2];D=z[f>>2];A=z[f+4>>2];H=z[f+8>>2];F=z[f+12>>2];O=z[f+16>>2];z[p+9936>>2]=h;v[p+9932>>2]=0;z[p+9928>>2]=N;z[p+9924>>2]=M;z[p+9920>>2]=O;z[p+9916>>2]=F;z[p+9912>>2]=H;z[p+9908>>2]=A;z[p+9904>>2]=D;v[p+9900>>2]=0;z[p+9896>>2]=J;z[p+9892>>2]=Q;z[p+9888>>2]=I;z[p+9884>>2]=q;z[p+9880>>2]=s;z[p+9876>>2]=r;z[p+9872>>2]=y;E=C(C(C(H*y)-C(s*D))+C(C(A*q)-C(F*r)));P=C(C(C(A*s)-C(r*H))+C(C(D*q)-C(F*y)));u=C(C(C(D*r)-C(y*A))+C(C(H*q)-C(F*s)));L=C(F*q);F=C(-y);D=C(L-C(C(C(D*F)-C(A*r))-C(s*H)));A=C(O-I);H=C(M-Q);I=C(C(F*A)-C(H*r));F=C(N-J);Q=C(I-C(s*F));J=z[c>>2];M=C(C(q*q)+C(-.5));N=C(C(C(M*A)+C(q*C(C(s*H)-C(r*F))))-C(y*Q));N=C(N+N);I=C(N-z[n+16>>2]);I=I>C(0)?I:C(-I);O=C(C(C(M*H)+C(q*C(C(y*F)-C(s*A))))-C(r*Q));O=C(O+O);L=C(O-z[n+20>>2]);L=L>C(0)?L:C(-L);L=I>=L?I:L;q=C(C(C(q*C(C(r*A)-C(y*H)))+C(M*F))-C(s*Q));q=C(q+q);r=C(q-z[n+24>>2]);r=(r>C(0)?r:C(-r))>=C(0)?I:C(0);a:{if(C(C(D*z[n+12>>2])+C(C(u*z[n+8>>2])+C(C(P*z[n>>2])+C(E*z[n+4>>2]))))>2]=J*C(.05000000074505806);v[n+28>>2]=0;z[n+24>>2]=q;z[n+20>>2]=O;z[n+16>>2]=N;z[n+12>>2]=D;z[n+8>>2]=u;z[n+4>>2]=E;z[n>>2]=P;t[n+62|0]=0;c=v[e+40>>2];r=z[f+4>>2];y=C(r+r);q=z[f+8>>2];D=C(y*q);u=z[f>>2];s=C(u+u);E=z[f+12>>2];A=C(s*E);z[p+9836>>2]=D-A;z[p+9828>>2]=D+A;u=C(C(1)-C(u*s));D=C(r*y);z[p+9840>>2]=u-D;J=u;u=C(q+q);A=C(q*u);z[p+9824>>2]=J-A;q=C(s*q);y=C(y*E);z[p+9832>>2]=q+y;r=C(s*r);s=C(u*E);z[p+9820>>2]=r-s;z[p+9816>>2]=q-y;z[p+9812>>2]=r+s;z[p+9808>>2]=C(C(1)-D)-A;z[p+9844>>2]=z[f+16>>2];z[p+9848>>2]=z[f+20>>2];z[p+9852>>2]=z[f+24>>2];r=z[g+4>>2];y=C(r+r);q=z[g+8>>2];D=C(y*q);u=z[g>>2];s=C(u+u);E=z[g+12>>2];A=C(s*E);z[p+9788>>2]=D-A;z[p+9780>>2]=D+A;u=C(C(1)-C(u*s));D=C(r*y);z[p+9792>>2]=u-D;J=u;u=C(q+q);A=C(q*u);z[p+9776>>2]=J-A;q=C(s*q);y=C(y*E);z[p+9784>>2]=q+y;r=C(s*r);s=C(u*E);z[p+9772>>2]=r-s;z[p+9768>>2]=q-y;z[p+9764>>2]=r+s;z[p+9760>>2]=C(C(1)-D)-A;z[p+9796>>2]=z[g+16>>2];z[p+9800>>2]=z[g+20>>2];z[p+9804>>2]=z[g+24>>2];e=p+9696|0;p_(e,d,h,p+9808|0,p+9760|0,k,m);t[p+9680|0]=1;v[p+9688>>2]=0;v[p+9692>>2]=1088;d=p+5328|0;v[p+9684>>2]=d;f=v[c+56>>2];v[p+868>>2]=0;t[p+16|0]=m;v[p+12>>2]=f;v[p+8>>2]=k;v[p>>2]=144592;v[p+4>>2]=2;d=y1(p+880|0,p+9936|0,p+9856|0,p+9904|0,p+9872|0,n,i,d,o);v[p+5276>>2]=0;I9(p+5148|0,255,128);t[p+5309|0]=1;t[p+5308|0]=l;v[p+5304>>2]=j;v[p+5300>>2]=b;v[p+5296>>2]=a;h=z[a+8>>2];q=z[a>>2];r=z[a+4>>2];v[p+5292>>2]=0;h=C(h-z[p+3192>>2]);q=C(q-z[p+3184>>2]);r=C(r-z[p+3188>>2]);z[p+5288>>2]=C(z[p+3176>>2]*h)+C(C(z[p+3168>>2]*q)+C(r*z[p+3172>>2]));z[p+5284>>2]=C(z[p+3160>>2]*h)+C(C(z[p+3152>>2]*q)+C(r*z[p+3156>>2]));z[p+5280>>2]=C(z[p+3144>>2]*h)+C(C(z[p+3136>>2]*q)+C(r*z[p+3140>>2]));v[p+5312>>2]=e;Ba[v[(x[c+4>>1]<<2)+144616>>2]](c,e,p,1,1);m=v[p+868>>2];if(m){g=p+596|0;f=p+788|0;a=p+852|0;c=p+20|0;while(1){D1(d,c,v[f>>2],w[a|0],g);a=a+1|0;f=f+4|0;g=g+12|0;c=c+36|0;m=m-1|0;if(m){continue}break}v[p+868>>2]=0}j=xa-144|0;xa=j;f=d;b=v[f+3620>>2];a=v[b+4360>>2];if(!(!a|a>>>0<15)){Z=v[b+4356>>2];T=f+3628|0;_=f+2176|0;Y=f+2324|0;U=f+2336|0;$=(a>>>0)/15|0;V=j- -64|0;aa=j+128|0;ba=j+112|0;ca=j+96|0;W=f+4268|0;while(1){b=B(X,60)+Z|0;k=v[b+36>>2];l=v[b+44>>2];m=v[b+40>>2];c=w[b+56|0];b:{c:{if(c&8){break c}e=k>>>0>m>>>0?k:m;d=k>>>0>>0?k:m;a=e|d<<16;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=w[(f+((a>>>16^a)&127)|0)+3488|0];if((a|0)==255){break c}while(1){g=(a<<3)+U|0;if((d|0)==v[g>>2]&(e|0)==v[g+4>>2]){break b}a=w[(a+f|0)+3360|0];if((a|0)!=255){continue}break}}d:{if(c&16){break d}e=l>>>0>>0?m:l;d=l>>>0>m>>>0?m:l;a=e|d<<16;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=w[(f+((a>>>16^a)&127)|0)+3488|0];if((a|0)==255){break d}while(1){g=(a<<3)+U|0;if((d|0)==v[g>>2]&(e|0)==v[g+4>>2]){break b}a=w[(a+f|0)+3360|0];if((a|0)!=255){continue}break}}e:{if(c&32){break e}d=k>>>0>>0?l:k;c=k>>>0>l>>>0?l:k;a=d|c<<16;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=w[(f+((a>>>16^a)&127)|0)+3488|0];if((a|0)==255){break e}while(1){e=(a<<3)+U|0;if((c|0)==v[e>>2]&(d|0)==v[e+4>>2]){break b}a=w[(a+f|0)+3360|0];if((a|0)!=255){continue}break}}t[j+80|0]=0;v[j+76>>2]=5;v[V+8>>2]=0;v[V>>2]=0;v[V+4>>2]=0;h=z[b+16>>2];q=z[b+20>>2];r=z[b+28>>2];s=z[b+32>>2];y=z[b>>2];u=z[b+4>>2];E=z[b+8>>2];D=z[b+12>>2];A=z[b+24>>2];v[j+140>>2]=0;z[j+136>>2]=s;z[j+132>>2]=r;z[j+128>>2]=A;v[j+124>>2]=0;z[j+120>>2]=q;z[j+116>>2]=h;z[j+112>>2]=D;v[j+108>>2]=0;z[j+104>>2]=E;z[j+100>>2]=u;z[j+96>>2]=y;v[j+60>>2]=0;v[j+68>>2]=2139095039;v[j+72>>2]=2139095039;z[j+56>>2]=C(s+C(E+q))*C(.33333298563957214);z[j+52>>2]=C(r+C(u+h))*C(.33333298563957214);z[j+48>>2]=C(A+C(y+D))*C(.33333298563957214);R=v[f+2324>>2];d=v[b+48>>2];e=v[f+2320>>2];c=xa-16|0;xa=c;a=v[v[f+4420>>2]+40>>2];s=z[a+36>>2];y=z[a+40>>2];b=v[v[f+4416>>2]+24>>2]+B(v[b+52>>2],20)|0;h=z[b>>2];q=z[b+4>>2];u=z[a+20>>2];r=z[b+8>>2];E=z[a+24>>2];D=z[a+32>>2];A=z[a+8>>2];H=z[a>>2];F=z[a+4>>2];P=z[a+16>>2];v[c+12>>2]=0;s=C(C(y*r)+C(C(D*h)+C(q*s)));y=C(C(A*r)+C(C(H*h)+C(q*F)));q=C(C(E*r)+C(C(P*h)+C(q*u)));h=C(C(1)/C(K(C(C(s*s)+C(C(y*y)+C(q*q))))));r=C(y*h);z[c>>2]=r;q=C(q*h);z[c+4>>2]=q;h=C(s*h);z[c+8>>2]=h;v[j+44>>2]=0;z[j+40>>2]=-h;z[j+36>>2]=-q;z[j+32>>2]=-r;o2(v[f+4416>>2],b,j+48|0,d,v[f+4420>>2],e,Y,_,c);xa=c+16|0;b=v[f+2324>>2];f:{if(b>>>0<=R>>>0){d=b;break f}da=(k&127)+W|0;ea=(l&127)+W|0;fa=(m&127)+W|0;ga=b+1|0;S=0;a=b;d=a;while(1){c=a;a=a-1|0;o=a<<6;eZ((o+v[f+2320>>2]|0)+16|0,ca,ba,aa,j+16|0,j);g:{h:{h=z[j+16>>2];if(h>C(.9700000286102295)){e=w[fa|0];if((e|0)==255){break g}while(1){if(v[(e<<2)+T>>2]==(m|0)){break h}e=w[(e+f|0)+4140|0];if((e|0)!=255){continue}break}break g}q=z[j>>2];if(q>C(.9700000286102295)){e=w[ea|0];if((e|0)==255){break g}while(1){if(v[(e<<2)+T>>2]==(l|0)){break h}e=w[(e+f|0)+4140|0];if((e|0)!=255){continue}break}break g}if(!(C(h+q)<=C(.029999971389770508))){break g}e=w[da|0];if((e|0)==255){break g}while(1){if(v[(e<<2)+T>>2]==(k|0)){break h}e=w[(e+f|0)+4140|0];if((e|0)!=255){continue}break}break g}g=d-1|0;i:{if(g>>>0<=a>>>0){break i}e=a;if((S-b|0)+d&1){e=v[f+2320>>2];o=e+o|0;e=e+(c<<6)|0;G=v[e+4>>2];v[o>>2]=v[e>>2];v[o+4>>2]=G;v[o+48>>2]=v[e+48>>2];G=v[e+44>>2];v[o+40>>2]=v[e+40>>2];v[o+44>>2]=G;G=v[e+36>>2];v[o+32>>2]=v[e+32>>2];v[o+36>>2]=G;G=v[e+28>>2];v[o+24>>2]=v[e+24>>2];v[o+28>>2]=G;G=v[e+20>>2];v[o+16>>2]=v[e+16>>2];v[o+20>>2]=G;G=v[e+12>>2];v[o+8>>2]=v[e+8>>2];v[o+12>>2]=G;e=c}if((ga-S|0)==(d|0)){break i}while(1){c=v[f+2320>>2];o=e<<6;d=c+o|0;o=o- -64|0;c=o+c|0;G=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=G;v[d+48>>2]=v[c+48>>2];G=v[c+44>>2];v[d+40>>2]=v[c+40>>2];v[d+44>>2]=G;G=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=G;G=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=G;G=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=G;G=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=G;c=v[f+2320>>2];d=c+o|0;e=e+2|0;c=c+(e<<6)|0;o=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=o;o=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=o;o=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=o;o=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=o;o=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=o;o=v[c+44>>2];v[d+40>>2]=v[c+40>>2];v[d+44>>2]=o;v[d+48>>2]=v[c+48>>2];if(e>>>0>>0){continue}break}}d=g}S=S+1|0;if(a>>>0>R>>>0){continue}break}}v[Y>>2]=d;if(d>>>0<=R>>>0){break b}B1(f,j+32|0,R)}X=X+1|0;if(($|0)!=(X|0)){continue}break}}xa=j+144|0;z1(f,6,0);a=v[p+9692>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[p+9684>>2];if((a|0)==(p+5328|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}g=0;v[p+60>>2]=0;z[p+56>>2]=q;z[p+52>>2]=O;v[p+44>>2]=0;v[p+28>>2]=0;q=C(E+E);r=C(u*q);h=C(P+P);s=C(D*h);z[p+36>>2]=r-s;z[p+24>>2]=r+s;r=C(C(1)-C(P*h));s=C(E*q);z[p+40>>2]=r-s;A=r;r=C(u+u);y=C(u*r);z[p+20>>2]=A-y;z[p+48>>2]=N;v[p+12>>2]=0;u=C(u*h);q=C(D*q);z[p+32>>2]=u+q;h=C(E*h);r=C(D*r);z[p+16>>2]=h-r;z[p+8>>2]=u-q;z[p+4>>2]=h+r;z[p>>2]=C(C(1)-s)-y;z[p+9696>>2]=J*C(.800000011920929);if(!w[n+62|0]){break a}while(1){b=g+n|0;a=w[b+56|0];c=B(a,400)+n|0;A2(p+5328|0,c- -64|0,p,p+9696|0);j:{if(!v[c+448>>2]){c=w[n+62|0]-1|0;t[n+62|0]=c;c=(c&255)+n|0;d=w[c+56|0];t[c+56|0]=a;t[b+56|0]=d;g=g-1|0;break j}z[((a<<2)+n|0)+32>>2]=z[p+5328>>2]}g=g+1|0;if(g>>>0>2];t[n+63|0]=e+w[n+63|0];j=a- -64|0;h=z[a+104>>2];q=z[a+100>>2];r=z[a+96>>2];k:{if(e>>>0<2){break k}a=1;d=e-1|0;l=d&1;if((e|0)!=2){m=d&-2;d=0;while(1){f=j+(a<<6)|0;r=C(C(r+z[f+32>>2])+z[f+96>>2]);h=C(C(h+z[f+40>>2])+z[f+104>>2]);q=C(C(q+z[f+36>>2])+z[f+100>>2]);a=a+2|0;d=d+2|0;if((m|0)!=(d|0)){continue}break}}if(!l){break k}a=j+(a<<6)|0;r=C(r+z[a+32>>2]);h=C(h+z[a+40>>2]);q=C(q+z[a+36>>2])}if(!(!e|b>>>0>=64)){y=z[c+8>>2];u=z[c>>2];E=z[c+4>>2];D=C(C(y*h)+C(C(u*r)+C(q*E)));s=z[c+12>>2];A=C(C(s*s)+C(-.5));H=C(C(y*D)+C(C(s*C(C(u*q)-C(r*E)))+C(h*A)));H=C(H+H);F=C(C(u*D)+C(C(s*C(C(E*h)-C(q*y)))+C(r*A)));F=C(F+F);h=C(C(E*D)+C(C(s*C(C(y*r)-C(h*u)))+C(q*A)));q=C(h+h);h=C(C(1)/C(K(C(C(H*H)+C(C(F*F)+C(q*q))))));H=C(H*h);P=C(q*h);F=C(F*h);d=0;a=b;while(1){l:{f=j+(d<<6)|0;q=z[f+20>>2];r=z[f+16>>2];s=z[f+24>>2];D=z[f+44>>2];Q=z[c+16>>2];J=z[c+20>>2];A=z[c+24>>2];y=z[c+8>>2];u=z[c>>2];E=z[c+4>>2];h=z[c+12>>2];b=(a<<6)+i|0;v[b+28>>2]=0;z[b+8>>2]=H;z[b+4>>2]=P;z[b>>2]=F;z[b+12>>2]=D;I=A;D=C(C(h*h)+C(-.5));A=C(C(y*s)+C(C(u*r)+C(E*q)));M=C(C(C(h*C(C(u*q)-C(r*E)))+C(s*D))+C(y*A));z[b+24>>2]=I+C(M+M);I=J;J=C(C(E*A)+C(C(D*q)+C(h*C(C(y*r)-C(s*u)))));z[b+20>>2]=I+C(J+J);h=C(C(u*A)+C(C(D*r)+C(h*C(C(E*s)-C(q*y)))));z[b+16>>2]=Q+C(h+h);v[b+52>>2]=v[f+48>>2];b=a+1|0;d=d+1|0;if(e>>>0<=d>>>0){break l}f=a>>>0<63;a=b;if(f){continue}}break}k=w[n+62|0]}g=g+1|0;if(k>>>0>g>>>0){continue}break}}v[i+4096>>2]=b;xa=p+9952|0;return(b|0)!=0}function vA(a,b){var c=0,d=0,e=C(0),f=C(0),g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=0,u=0,y=0,A=0,D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=0,_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=0,kb=C(0),lb=C(0),mb=C(0),nb=0,ob=0,pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=0,Kb=0,Lb=0,Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=C(0),rc=0,sc=C(0),tc=0,uc=0;o=v[a+100>>2];_b=z[o+28>>2];la=z[o+16>>2];p=v[a+96>>2];ma=z[p+24>>2];na=z[p+20>>2];$b=z[o+12>>2];oa=z[o+8>>2];pa=z[o+4>>2];qa=z[o>>2];q=v[a+68>>2];ac=z[q+28>>2];ra=z[q+16>>2];r=v[a+64>>2];sa=z[r+24>>2];ta=z[r+20>>2];bc=z[q+12>>2];ua=z[q+8>>2];va=z[q+4>>2];wa=z[q>>2];s=v[a+36>>2];cc=z[s+28>>2];ya=z[s+16>>2];u=v[a+32>>2];za=z[u+24>>2];Aa=z[u+20>>2];dc=z[s+12>>2];Ba=z[s+8>>2];Ca=z[s+4>>2];Da=z[s>>2];y=v[a+4>>2];Ea=z[y+24>>2];Fa=z[y+20>>2];A=v[a>>2];Ga=z[A+24>>2];Ha=z[A+20>>2];Ia=z[o+24>>2];Ja=z[o+20>>2];Ka=z[q+24>>2];La=z[q+20>>2];Ma=z[s+24>>2];Na=z[s+20>>2];ec=z[p+28>>2];Oa=z[p+16>>2];fc=z[p+12>>2];Pa=z[p+8>>2];Qa=z[p+4>>2];Ra=z[p>>2];gc=z[r+28>>2];Sa=z[r+16>>2];hc=z[r+12>>2];Ta=z[r+8>>2];Ua=z[r+4>>2];Va=z[r>>2];ic=z[u+28>>2];Wa=z[u+16>>2];jc=z[u+12>>2];Xa=z[u+8>>2];Ya=z[u+4>>2];Za=z[u>>2];kc=z[y+28>>2];_a=z[y+16>>2];lc=z[A+28>>2];$a=z[A+16>>2];mc=z[y+12>>2];ab=z[y+8>>2];bb=z[y+4>>2];cb=z[y>>2];nc=z[A+12>>2];db=z[A+8>>2];eb=z[A+4>>2];fb=z[A>>2];D=x[a+22>>1];d=v[a+24>>2];Jb=xa-16|0;c=Jb;v[c+8>>2]=2139095039;v[c+12>>2]=2139095039;v[c>>2]=2139095039;v[c+4>>2]=2139095039;if(D){Bb=z[d+76>>2];Cb=z[d+92>>2];oc=C(Bb+Cb);Db=z[d+72>>2];Eb=z[d+88>>2];pc=C(Db+Eb);Fb=z[d+68>>2];Gb=z[d+84>>2];qc=C(Fb+Gb);rc=(D<<4)+d|0;Hb=z[d+64>>2];Ib=z[d+80>>2];sc=C(Hb+Ib);nb=d+336|0;while(1){c=d;ob=c+192|0;da=w[c+1|0];d=da<<4;Y=ob+d|0;Z=t[c+3|0]&1;i=d&0-Z;d=Y+B(da,144)|0;jb=i+d|0;i=w[c+2|0];Kb=jb+(((i|0)!=0)<<7)|0;Lb=Kb+(i<<4)|0;tc=B(i,144);_=z[c+172>>2];$=z[c+168>>2];aa=z[c+164>>2];ba=z[c+156>>2];ca=z[c+152>>2];K=z[c+148>>2];L=z[c+140>>2];M=z[c+136>>2];ea=z[c+132>>2];Mb=z[c+124>>2];Nb=z[c+120>>2];Ob=z[c+116>>2];Pb=z[c+108>>2];Qb=z[c+104>>2];Rb=z[c+100>>2];gb=z[c+160>>2];fa=z[c+144>>2];hb=z[c+128>>2];Sb=z[c+112>>2];Tb=z[c+96>>2];a:{if(!da){e=C(0);l=C(0);F=C(0);G=C(0);H=C(0);R=C(0);S=C(0);I=C(0);break a}uc=Z?d:Jb;N=C(C(C(C(fb*hb)+C(eb*fa))+C(db*gb))-C(C(C(cb*hb)+C(bb*fa))+C(ab*gb)));T=C(C(C(C(Za*ea)+C(Ya*K))+C(Xa*aa))-C(C(C(Da*ea)+C(Ca*K))+C(Ba*aa)));O=C(C(C(C(Va*M)+C(Ua*ca))+C(Ta*$))-C(C(C(wa*M)+C(va*ca))+C(ua*$)));U=C(C(C(C(Ra*L)+C(Qa*ba))+C(Pa*_))-C(C(C(qa*L)+C(pa*ba))+C(oa*_)));I=C(0);D=0;S=C(0);R=C(0);H=C(0);G=C(0);F=C(0);l=C(0);e=C(0);while(1){P=((Z?D:0)<<4)+uc|0;f=z[P+4>>2];j=z[P+8>>2];E=z[P+12>>2];g=ob+(D<<4)|0;h=z[g+4>>2];d=Y+B(D,144)|0;k=z[d+84>>2];kb=z[d+52>>2];ga=z[d+36>>2];ha=z[d+20>>2];J=z[d+4>>2];ia=z[d+132>>2];ja=z[d+100>>2];ka=z[d+116>>2];m=z[g+8>>2];V=z[d+88>>2];W=z[d+56>>2];pb=z[d+40>>2];qb=z[d+24>>2];rb=z[d+8>>2];sb=z[d+136>>2];tb=z[d+104>>2];ub=z[d+120>>2];n=z[g+12>>2];ib=z[d+92>>2];vb=z[d+60>>2];wb=z[d+44>>2];xb=z[d+28>>2];X=z[d+12>>2];yb=z[d+140>>2];zb=z[d+108>>2];Ab=z[d+124>>2];lb=z[g>>2];Q=C(-lb);Ub=z[d>>2];Vb=z[d+16>>2];Wb=z[d+32>>2];Xb=z[d+96>>2];Yb=z[d+112>>2];Zb=z[d+128>>2];mb=C(z[d+80>>2]-C(C(N+C(C(C(C($a*Ub)+C(Ha*Vb))+C(Ga*Wb))-C(C(C(_a*Xb)+C(Fa*Yb))+C(Ea*Zb))))*z[d+48>>2]));Q=C(lb+(Q>2];Q=Q>2]=Q;ib=C(ib-C(vb*C(U+C(C(C(C(Oa*X)+C(na*xb))+C(ma*wb))-C(C(C(la*zb)+C(Ja*Ab))+C(Ia*yb))))));vb=C(-n);ib=C(n+(ib>vb?ib:vb));E=E>ib?ib:E;z[g+12>>2]=E;V=C(V-C(W*C(O+C(C(C(C(Sa*rb)+C(ta*qb))+C(sa*pb))-C(C(C(ra*tb)+C(La*ub))+C(Ka*sb))))));W=C(-m);V=C(m+(V>W?V:W));j=j>V?V:j;z[g+8>>2]=j;k=C(k-C(kb*C(T+C(C(C(C(Wa*J)+C(Aa*ha))+C(za*ga))-C(C(C(ya*ja)+C(Na*ka))+C(Ma*ia))))));kb=C(-h);k=C(h+(k>kb?k:kb));k=f>k?k:f;z[g+4>>2]=k;H=C(H+Q);I=C(I+E);S=C(S+j);R=C(R+k);f=C(Q-lb);e=C(e+f);N=C(N+C(sc*f));n=C(E-n);G=C(G+n);m=C(j-m);F=C(F+m);h=C(k-h);l=C(l+h);j=C(Sb*f);Ea=C(Ea-C(Zb*j));f=C(Tb*f);Ga=C(Ga+C(Wb*f));Fa=C(Fa-C(Yb*j));Ha=C(Ha+C(Vb*f));_a=C(_a-C(Xb*j));$a=C($a+C(Ub*f));U=C(U+C(oc*n));O=C(O+C(pc*m));T=C(T+C(qc*h));f=C(Mb*n);Ia=C(Ia-C(yb*f));j=C(Nb*m);Ka=C(Ka-C(sb*j));E=C(Ob*h);Ma=C(Ma-C(ia*E));n=C(Pb*n);ma=C(ma+C(wb*n));m=C(Qb*m);sa=C(sa+C(pb*m));h=C(Rb*h);za=C(za+C(ga*h));Ja=C(Ja-C(Ab*f));La=C(La-C(ub*j));Na=C(Na-C(ka*E));na=C(na+C(xb*n));ta=C(ta+C(qb*m));Aa=C(Aa+C(ha*h));la=C(la-C(zb*f));ra=C(ra-C(tb*j));ya=C(ya-C(ja*E));Oa=C(Oa+C(X*n));Sa=C(Sa+C(rb*m));Wa=C(Wa+C(J*h));nb=nb+192|0;D=D+1|0;if((da|0)!=(D|0)){continue}break}}d=Lb+tc|0;N=C(Cb*G);oa=C(oa-C(_*N));T=C(Eb*F);ua=C(ua-C($*T));O=C(Gb*l);Ba=C(Ba-C(aa*O));U=C(Ib*e);ab=C(ab-C(gb*U));G=C(Bb*G);Pa=C(Pa+C(_*G));F=C(Db*F);Ta=C(Ta+C($*F));l=C(Fb*l);Xa=C(Xa+C(aa*l));e=C(Hb*e);db=C(db+C(gb*e));pa=C(pa-C(ba*N));va=C(va-C(ca*T));Ca=C(Ca-C(K*O));bb=C(bb-C(fa*U));Qa=C(Qa+C(ba*G));Ua=C(Ua+C(ca*F));Ya=C(Ya+C(K*l));eb=C(eb+C(fa*e));qa=C(qa-C(L*N));wa=C(wa-C(M*T));Da=C(Da-C(ea*O));cb=C(cb-C(hb*U));Ra=C(Ra+C(L*G));Va=C(Va+C(M*F));Za=C(Za+C(ea*l));fb=C(fb+C(hb*e));if(!(!w[b|0]|!i)){pb=C(H*z[c+32>>2]);qb=C(I*z[c+44>>2]);rb=C(S*z[c+40>>2]);sb=C(R*z[c+36>>2]);ea=C(H*z[c+48>>2]);gb=C(-ea);fa=C(I*z[c+60>>2]);hb=C(-fa);N=C(S*z[c+56>>2]);T=C(-N);O=C(R*z[c+52>>2]);U=C(-O);ob=i>>>0>1?i:1;D=0;da=0;P=0;Y=0;Z=0;while(1){c=B(D,144)+Lb|0;h=z[c+48>>2];i=(D<<4)+Kb|0;M=z[i>>2];m=z[c+64>>2];n=z[c+32>>2];f=z[c>>2];j=z[c+16>>2];g=((D&1)<<4)+jb|0;l=z[g+96>>2];F=z[g+32>>2];G=z[g- -64>>2];E=z[c+128>>2];ga=z[c+96>>2];ha=z[c+112>>2];L=z[i+4>>2];J=z[c+52>>2];ia=z[c+68>>2];ja=z[c+36>>2];ka=z[c+20>>2];tb=z[c+4>>2];H=z[g+100>>2];R=z[g+36>>2];S=z[g+68>>2];ub=z[c+132>>2];wb=z[c+100>>2];xb=z[c+116>>2];K=z[i+8>>2];X=z[c+56>>2];yb=z[c+72>>2];zb=z[c+40>>2];Ab=z[c+24>>2];lb=z[c+8>>2];I=z[g+104>>2];_=z[g+40>>2];$=z[g+72>>2];Q=z[c+136>>2];k=z[c+104>>2];kb=z[c+120>>2];V=z[i+12>>2];aa=z[g+44>>2];ba=z[g+76>>2];ca=z[g+108>>2];e=C(C(V-z[c+60>>2])-C(C(C(C(C(C(Ra*aa)+C(Qa*ba))+C(Pa*ca))+C(C(C(Oa*z[c+12>>2])+C(na*z[c+28>>2]))+C(ma*z[c+44>>2])))-C(C(C(C(qa*aa)+C(pa*ba))+C(oa*ca))+C(C(C(la*z[c+108>>2])+C(Ja*z[c+124>>2]))+C(Ia*z[c+140>>2]))))*z[c+76>>2]));W=eC(0)?e:C(-e));W=g?fa>2]=W;e=C(C(K-X)-C(yb*C(C(C(C(C(Va*_)+C(Ua*$))+C(Ta*I))+C(C(C(Sa*lb)+C(ta*Ab))+C(sa*zb)))-C(C(C(C(wa*_)+C(va*$))+C(ua*I))+C(C(C(ra*k)+C(La*kb))+C(Ka*Q))))));X=eC(0)?e:C(-e));X=Y?N>2]=X;e=C(C(L-J)-C(ia*C(C(C(C(C(Za*R)+C(Ya*S))+C(Xa*H))+C(C(C(Wa*tb)+C(Aa*ka))+C(za*ja)))-C(C(C(C(Da*R)+C(Ca*S))+C(Ba*H))+C(C(C(ya*wb)+C(Na*xb))+C(Ma*ub))))));J=eC(0)?e:C(-e));J=P?J>O?O:J:e;z[i+4>>2]=J;Z=i;e=C(C(M-h)-C(m*C(C(C(C(C(fb*F)+C(eb*G))+C(db*l))+C(C(C($a*f)+C(Ha*j))+C(Ga*n)))-C(C(C(C(cb*F)+C(bb*G))+C(ab*l))+C(C(C(_a*ga)+C(Fa*ha))+C(Ea*E))))));h=eC(0)?e:C(-e));f=i?h>ea?ea:h:e;z[Z>>2]=f;e=C(W-V);h=C(Mb*e);Ia=C(Ia-C(h*z[c+140>>2]));K=C(X-K);m=C(Nb*K);Ka=C(Ka-C(m*z[c+136>>2]));L=C(J-L);n=C(Ob*L);Ma=C(Ma-C(n*z[c+132>>2]));M=C(f-M);f=C(Sb*M);Ea=C(Ea-C(f*z[c+128>>2]));j=C(Pb*e);ma=C(ma+C(j*z[c+44>>2]));E=C(Qb*K);sa=C(sa+C(E*z[c+40>>2]));ga=C(Rb*L);za=C(za+C(ga*z[c+36>>2]));ha=C(Tb*M);Ga=C(Ga+C(ha*z[c+32>>2]));J=C(Cb*e);oa=C(oa-C(ca*J));ia=C(Eb*K);ua=C(ua-C(I*ia));ja=C(Gb*L);Ba=C(Ba-C(H*ja));ka=C(Ib*M);ab=C(ab-C(l*ka));e=C(Bb*e);Pa=C(Pa+C(ca*e));k=I;I=C(Db*K);Ta=C(Ta+C(k*I));k=H;H=C(Fb*L);Xa=C(Xa+C(k*H));k=l;l=C(Hb*M);db=C(db+C(k*l));Ja=C(Ja-C(h*z[c+124>>2]));La=C(La-C(m*z[c+120>>2]));Na=C(Na-C(n*z[c+116>>2]));Fa=C(Fa-C(f*z[c+112>>2]));na=C(na+C(j*z[c+28>>2]));ta=C(ta+C(E*z[c+24>>2]));Aa=C(Aa+C(ga*z[c+20>>2]));Ha=C(Ha+C(ha*z[c+16>>2]));pa=C(pa-C(ba*J));va=C(va-C($*ia));Ca=C(Ca-C(S*ja));bb=C(bb-C(G*ka));Qa=C(Qa+C(ba*e));Ua=C(Ua+C($*I));Ya=C(Ya+C(S*H));eb=C(eb+C(G*l));la=C(la-C(h*z[c+108>>2]));ra=C(ra-C(m*z[c+104>>2]));ya=C(ya-C(n*z[c+100>>2]));_a=C(_a-C(f*z[c+96>>2]));Oa=C(Oa+C(z[c+12>>2]*j));Sa=C(Sa+C(z[c+8>>2]*E));Wa=C(Wa+C(z[c+4>>2]*ga));$a=C($a+C(z[c>>2]*ha));qa=C(qa-C(aa*J));wa=C(wa-C(_*ia));Da=C(Da-C(R*ja));cb=C(cb-C(F*ka));Ra=C(Ra+C(aa*e));Va=C(Va+C(_*I));Za=C(Za+C(R*H));fb=C(fb+C(F*l));Z=0-g|0;Y=0-Y|0;P=0-P|0;da=0-i|0;nb=nb+256|0;D=D+1|0;if((ob|0)!=(D|0)){continue}break}v[jb+12>>2]=Z;v[jb+8>>2]=Y;v[jb+4>>2]=P;v[jb>>2]=da}if(d>>>0>>0){continue}break}}z[A+28>>2]=lc;z[A+24>>2]=Ga;z[A+20>>2]=Ha;z[A+16>>2]=$a;z[A+12>>2]=nc;z[A+8>>2]=db;z[A+4>>2]=eb;z[A>>2]=fb;z[u+28>>2]=ic;z[u+24>>2]=za;z[u+20>>2]=Aa;z[u+16>>2]=Wa;z[u+12>>2]=jc;z[u+8>>2]=Xa;z[u+4>>2]=Ya;z[u>>2]=Za;z[r+28>>2]=gc;z[r+24>>2]=sa;z[r+20>>2]=ta;z[r+16>>2]=Sa;z[r+12>>2]=hc;z[r+8>>2]=Ta;z[r+4>>2]=Ua;z[r>>2]=Va;z[p+28>>2]=ec;z[p+24>>2]=ma;z[p+20>>2]=na;z[p+16>>2]=Oa;z[p+12>>2]=fc;z[p+8>>2]=Pa;z[p+4>>2]=Qa;z[p>>2]=Ra;if(v[a+16>>2]){z[y+28>>2]=kc;z[y+24>>2]=Ea;z[y+20>>2]=Fa;z[y+16>>2]=_a;z[y+12>>2]=mc;z[y+8>>2]=ab;z[y+4>>2]=bb;z[y>>2]=cb}if(v[a+48>>2]){z[s+28>>2]=cc;z[s+24>>2]=Ma;z[s+20>>2]=Na;z[s+16>>2]=ya;z[s+12>>2]=dc;z[s+8>>2]=Ba;z[s+4>>2]=Ca;z[s>>2]=Da}if(v[a+80>>2]){z[q+28>>2]=ac;z[q+24>>2]=Ka;z[q+20>>2]=La;z[q+16>>2]=ra;z[q+12>>2]=bc;z[q+8>>2]=ua;z[q+4>>2]=va;z[q>>2]=wa}if(v[a+112>>2]){z[o+28>>2]=_b;z[o+24>>2]=Ia;z[o+20>>2]=Ja;z[o+16>>2]=la;z[o+12>>2]=$b;z[o+8>>2]=oa;z[o+4>>2]=pa;z[o>>2]=qa}}function Ez(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=0,m=0,n=C(0),o=C(0),p=0,q=C(0),r=0,s=0,y=0,A=0,D=C(0),E=0,F=0,G=0,H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=0,P=C(0),Q=0,R=C(0),S=0,T=0,U=0,V=0,W=C(0),X=C(0),Y=0,Z=0,_=0,$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0);aa=v[a+100>>2]+v[a+96>>2]|0;d=v[a+28>>2];c=v[d+336>>2];E=v[c>>2];if(E){v[c>>2]=v[E>>2]}if(!E){c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?26947:63804;e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,12195,e,19395,82)|0;c=e+19&-16;v[c-4>>2]=c-e;E=gB(c,v[d+340>>2])}c=E+11856|0;v[c>>2]=0;v[c+4>>2]=0;T=v[a+96>>2];if(aa>>>0>T>>>0){while(1){I=0;h=0;Z=0;j=xa-1536|0;xa=j;S=E+16|0;U=v[v[a+32>>2]+12e3>>2]+B(T,36)|0;V=x[U+4>>1];if(V){_=v[U>>2];A=v[a+108>>2];N=v[A+32>>2];H=v[v[a+32>>2]+12012>>2];while(1){c=v[v[v[H+(h+_<<2)>>2]+12>>2]+68>>2];d=N+(v[A+((c&7)<<2)>>2]+(c>>>3|0)<<4)|0;G=w[d+13|0];b=w[d+12|0];g=v[d+8>>2];c=v[d+4>>2];d=v[d>>2];v[j>>2]=0;v[j+64>>2]=0;v[j+1276>>2]=0;a:{if(!d){break a}e=w[d+43|0];if(!G|e&4){break a}s=e&128?32:e&2?64:16;i=e&130;F=e&1;f=g+(b<<2)|0;e=0;m=0;p=0;while(1){if(m){b=c;c=w[d+41|0];c=b+(c>>>0>p>>>0?B(s,c-p|0):0)|0;d=d+48|0}m=m+1|0;p=w[d+41|0];b:{if(!p){p=0;break b}l=x[d+46>>1];r=x[d+44>>1];Q=w[d+42|0];k=z[d+32>>2];q=z[d+36>>2];b=(I<<6)+S|0;J=z[d+28>>2];z[b+60>>2]=J;z[b+44>>2]=q;z[b+56>>2]=k;g=e?s:0;f=(((e|0)!=0)<<2)+f|0;e=-1;e=F?v[f>>2]:e;c=c+g|0;g=(j+1280|0)+(I<<2)|0;t[b+48|0]=Q;v[b+52>>2]=e;I=I+1|0;z[b+28>>2]=i?z[c+28>>2]:C(34028234663852886e22);z[b+32>>2]=z[(i?c+16|0:j- -64|0)>>2];z[b+36>>2]=z[(i?c+20|0:j)>>2];z[b+40>>2]=z[(i?c+24|0:j+1276|0)>>2];z[b>>2]=z[d+16>>2];z[b+4>>2]=z[d+20>>2];z[b+8>>2]=z[d+24>>2];z[b+16>>2]=z[c>>2];z[b+20>>2]=z[c+4>>2];z[b+24>>2]=z[c+8>>2];z[b+12>>2]=z[c+12>>2];u[g>>1]=r;u[g+2>>1]=l;e=1;if((p|0)==1){p=1;break b}g=1;while(1){b=(I<<6)+S|0;z[b+60>>2]=J;z[b+44>>2]=q;z[b+56>>2]=k;f=f+4|0;y=-1;y=F?v[f>>2]:y;g=g+1|0;c=c+s|0;O=(j+1280|0)+(I<<2)|0;t[b+48|0]=Q;v[b+52>>2]=y;I=I+1|0;z[b+28>>2]=i?z[c+28>>2]:C(34028234663852886e22);z[b+32>>2]=z[(i?c+16|0:j- -64|0)>>2];z[b+36>>2]=z[(i?c+20|0:j)>>2];z[b+40>>2]=z[(i?c+24|0:j+1276|0)>>2];z[b>>2]=z[d+16>>2];z[b+4>>2]=z[d+20>>2];z[b+8>>2]=z[d+24>>2];z[b+16>>2]=z[c>>2];z[b+20>>2]=z[c+4>>2];z[b+24>>2]=z[c+8>>2];z[b+12>>2]=z[c+12>>2];u[O>>1]=r;u[O+2>>1]=l;if((g|0)!=(p|0)){continue}break}}if((m|0)!=(G|0)){continue}break}}h=h+1|0;if((V|0)!=(h|0)){continue}break}}v[j+1272>>2]=I;v[j+1264>>2]=S;v[j+1260>>2]=0;v[j+232>>2]=0;v[j+1268>>2]=j+1280;Q=0;f=xa-128|0;xa=f;m=j- -64|0;p=v[m+1200>>2];z[m+172>>2]=z[p>>2];z[m+176>>2]=z[p+4>>2];z[m+180>>2]=z[p+8>>2];v[m+184>>2]=0;u[m+192>>1]=0;u[m+196>>1]=0;z[m+188>>2]=z[p+12>>2];u[m+198>>1]=0;e=1;d=1;G=v[m+1208>>2];c:{if(G>>>0<2){break c}h=v[m+1204>>2];g=1;while(1){i=p+(g<<6)|0;b=-1;c=d&65535;d:{if(!c){break d}b=h+(g<<2)|0;s=b;F=x[b>>1];b=c;while(1){b=b-1|0;g=m+B(b,28)|0;l=h+(x[g+192>>1]<<2)|0;if(!((F|0)!=x[l>>1]|x[l+2>>1]!=x[s+2>>1])&C(C(z[g+180>>2]*z[i+8>>2])+C(C(z[g+172>>2]*z[i>>2])+C(z[g+176>>2]*z[i+4>>2])))>=C(.9950000047683716)){break d}if(b){continue}break}b=-1}g=c-1|0;if((g|0)!=(b|0)){g=m+B(g,28)|0;u[g+194>>1]=e-x[g+192>>1];if((d&65535)==32){d=32;break c}F=B(c,28);c=F+m|0;v[c+184>>2]=0;u[c+192>>1]=e;s=c+172|0;e:{if((b|0)==-1){u[c+196>>1]=d;z[c+172>>2]=z[i>>2];k=z[i+8>>2];q=z[i+4>>2];z[c+188>>2]=z[i+12>>2];break e}g=m+172|0;b=g+B(b,28)|0;v[b+12>>2]=s;s=x[b+24>>1];z[c+172>>2]=z[b>>2];k=z[b+8>>2];q=z[b+4>>2];b=g+F|0;g=g+B(s,28)|0;K=z[g+16>>2];J=z[i+12>>2];K=J>K?K:J;z[b+16>>2]=K;z[g+16>>2]=K;u[b+24>>1]=s}z[c+180>>2]=k;z[c+176>>2]=q;u[c+198>>1]=d;d=d+1|0}e=e+1|0;g=e&65535;if(G>>>0>g>>>0){continue}break}}F=d&65535;c=m+B(F,28)|0;u[c+166>>1]=e-x[c+164>>1];f:{if(F){i=0;b=0;if(F-1>>>0>=3){p=F&65532;c=m+172|0;g=m+1068|0;e=0;while(1){v[g+(b<<2)>>2]=c+B(b,28);h=b|1;v[g+(h<<2)>>2]=c+B(h,28);h=b|2;v[g+(h<<2)>>2]=c+B(h,28);h=b|3;v[g+(h<<2)>>2]=c+B(h,28);b=b+4|0;e=e+4|0;if((p|0)!=(e|0)){continue}break}}c=F&3;if(c){while(1){v[(m+(b<<2)|0)+1068>>2]=(m+B(b,28)|0)+172;b=b+1|0;i=i+1|0;if((c|0)!=(i|0)){continue}break}}Fz(m+1068|0,F);if(!(d&65535)){g=0;break f}V=m+20|0;_=m+4|0;i=f+116|0;p=f+112|0;s=v[m+1200>>2];g=0;while(1){d=g;c=v[(m+(Q<<2)|0)+1068>>2];g:{if(x[c+24>>1]!=x[c+26>>1]){break g}g=6;if((d|0)==6){break f}g=d+1|0;O=B(d,28);G=O+m|0;r=0;b=c;while(1){r=x[b+22>>1]+r|0;b=v[b+12>>2];if(b){continue}break}h=0;if(r>>>0>=7){l=v[m+1200>>2];b=0;k=C(0);d=c;while(1){r=x[d+22>>1];if(r){y=x[d+20>>1];h=0;while(1){A=h+y|0;e=l+(A<<6)|0;q=z[e+24>>2];o=C(q*q);q=z[e+16>>2];n=C(q*q);q=z[e+20>>2];q=C(o+C(n+C(q*q)));e=q>k;k=e?q:k;b=e?A:b;h=h+1|0;if((r|0)!=(h|0)){continue}break}}d=v[d+12>>2];if(d){continue}break}v[G+4>>2]=b;r=s+(b<<6)|0;q=z[r+24>>2];K=z[r+20>>2];J=z[r+16>>2];k=C(0);e=c;while(1){l=x[e+22>>1];if(l){y=x[e+20>>1];h=0;while(1){A=h+y|0;d=s+(A<<6)|0;o=C(q-z[d+24>>2]);n=C(o*o);o=C(J-z[d+16>>2]);D=C(o*o);o=C(K-z[d+20>>2]);o=C(n+C(D+C(o*o)));d=o>k;k=d?o:k;b=d?A:b;h=h+1|0;if((l|0)!=(h|0)){continue}break}}e=v[e+12>>2];if(e){continue}break}y=s+(b<<6)|0;ba=z[y+24>>2];ca=z[y+16>>2];da=z[y+20>>2];v[G+8>>2]=b;k=C(J-ca);P=z[c+4>>2];D=z[c>>2];M=C(K-da);o=C(C(k*P)-C(D*M));W=C(q-ba);X=z[c+8>>2];D=C(C(W*D)-C(X*k));P=C(C(M*X)-C(P*W));k=C(0);e=c;while(1){l=x[e+22>>1];if(l){A=x[e+20>>1];h=0;while(1){N=h+A|0;d=s+(N<<6)|0;M=C(C(C(z[d+24>>2]-q)*o)+C(C(C(z[d+16>>2]-J)*P)+C(D*C(z[d+20>>2]-K))));d=M>k;k=d?M:k;b=d?N:b;h=h+1|0;if((l|0)!=(h|0)){continue}break}}e=v[e+12>>2];if(e){continue}break}v[G+12>>2]=b;o=C(-o);D=C(-D);P=C(-P);k=C(0);d=c;e=b;while(1){A=x[d+22>>1];if(A){N=x[d+20>>1];h=0;while(1){H=h+N|0;l=s+(H<<6)|0;M=C(C(C(z[l+24>>2]-q)*o)+C(C(C(z[l+16>>2]-J)*P)+C(C(z[l+20>>2]-K)*D)));l=M>k;k=l?M:k;e=l?H:e;h=h+1|0;if((A|0)!=(h|0)){continue}break}}d=v[d+12>>2];if(d){continue}break}v[G+16>>2]=e;l=O+_|0;d=v[l+12>>2];v[f+72>>2]=v[l+8>>2];v[f+76>>2]=d;d=v[l+4>>2];v[f+64>>2]=v[l>>2];v[f+68>>2]=d;z[f+96>>2]=z[r+12>>2]+C(-.0010000000474974513);z[f+100>>2]=z[y+12>>2]+C(-.0010000000474974513);b=s+(b<<6)|0;z[f+104>>2]=z[b+12>>2]+C(-.0010000000474974513);e=s+(e<<6)|0;z[f+108>>2]=z[e+12>>2]+C(-.0010000000474974513);d=c;while(1){y=x[d+22>>1];if(y){P=z[e+24>>2];M=z[e+20>>2];W=z[e+16>>2];X=z[b+24>>2];ea=z[b+20>>2];fa=z[b+16>>2];A=x[d+20>>1];h=0;while(1){N=h+A|0;r=s+(N<<6)|0;k=z[r+24>>2];o=C(q-k);n=C(o*o);o=z[r+16>>2];D=C(J-o);R=C(D*D);D=z[r+20>>2];L=C(K-D);L=C(n+C(R+C(L*L)));L=Ln;Y=H;L=H?n:L;n=C(X-k);R=C(n*n);n=C(fa-o);$=C(n*n);n=C(ea-D);n=C(R+C($+C(n*n)));H=L>n;k=C(P-k);R=C(k*k);k=C(W-o);o=C(k*k);k=C(M-D);H=(C(R+C(o+C(k*k)))<(H?n:L)?3:H?2:Y)<<2;Y=H|f+96;k=z[r+12>>2];if(z[Y>>2]>k){v[(H|f- -64)>>2]=N;z[Y>>2]=k}h=h+1|0;if((y|0)!=(h|0)){continue}break}}d=v[d+12>>2];if(d){continue}break}v[f+56>>2]=0;v[f+60>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;d=v[f+76>>2];v[l+8>>2]=v[f+72>>2];v[l+12>>2]=d;d=v[f+68>>2];v[l>>2]=v[f+64>>2];v[l+4>>2]=d;t[f+v[f+64>>2]|0]=1;t[f+v[f+68>>2]|0]=1;t[f+v[f+72>>2]|0]=1;t[f+v[f+76>>2]|0]=1;v[f+80>>2]=0;v[f+84>>2]=0;v[f+112>>2]=2139095039;v[f+116>>2]=2139095039;while(1){l=x[c+22>>1];if(l){r=x[c+20>>1];b=0;while(1){h=b+r|0;h:{if(w[h+f|0]){break h}k=z[(s+(h<<6)|0)+12>>2];q=z[f+112>>2];i:{if(k>2]=q;v[f+84>>2]=v[f+80>>2];e=4;d=p;break i}e=5;d=i;if(!(k>2])){break h}}z[d>>2]=k;v[(f- -64|0)+(e<<2)>>2]=h}b=b+1|0;if((l|0)!=(b|0)){continue}break}}c=v[c+12>>2];if(c){continue}break}d=v[f+84>>2];c=O+V|0;v[c>>2]=v[f+80>>2];v[c+4>>2]=d;v[G>>2]=6;break g}while(1){d=x[c+22>>1];j:{if(!d){break j}O=d&3;l=x[c+20>>1];e=0;k:{if(d-1>>>0<3){b=0;break k}A=d&65532;b=0;d=0;while(1){y=G+(h<<2)|0;v[y+8>>2]=l+(b|1);v[y+4>>2]=b+l;v[y+12>>2]=l+(b|2);v[y+16>>2]=l+(b|3);b=b+4|0;h=h+4|0;d=d+4|0;if((A|0)!=(d|0)){continue}break}}if(!O){break j}while(1){v[(G+(h<<2)|0)+4>>2]=b+l;b=b+1|0;h=h+1|0;e=e+1|0;if((O|0)!=(e|0)){continue}break}}c=v[c+12>>2];if(c){continue}break}v[G>>2]=r}Q=Q+1|0;if((F|0)!=(Q|0)){continue}break}break f}Fz(m+1068|0,F);g=0}v[m+168>>2]=g;xa=f+128|0;v[j+56>>2]=0;v[j+60>>2]=0;v[j+48>>2]=0;v[j+52>>2]=0;v[j+40>>2]=0;v[j+44>>2]=0;v[j+32>>2]=0;v[j+36>>2]=0;v[j+24>>2]=0;v[j+28>>2]=0;v[j+16>>2]=0;v[j+20>>2]=0;v[j+8>>2]=0;v[j+12>>2]=0;v[j>>2]=0;v[j+4>>2]=0;h=v[j+232>>2];l:{m:{if(h){g=0;while(1){f=(j- -64|0)+B(g,28)|0;b=v[f>>2];if(b){d=0;c=0;if(b-1>>>0>=3){m=b&-4;e=0;while(1){i=f+4|0;p=c<<2;t[v[i+p>>2]+j|0]=1;t[v[i+(p|4)>>2]+j|0]=1;t[v[i+(p|8)>>2]+j|0]=1;t[v[i+(p|12)>>2]+j|0]=1;c=c+4|0;e=e+4|0;if((m|0)!=(e|0)){continue}break}}e=b&3;if(e){while(1){t[v[(f+(c<<2)|0)+4>>2]+j|0]=1;c=c+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}Z=b+Z|0}g=g+1|0;if((h|0)!=(g|0)){continue}break}e=E+11852|0;c=(Z<<1)+15&-16;if(c>>>0<16385){break m}g=Iy(v[e>>2],c);break l}c=0;e=E+11852|0}d=v[a+32>>2];n:{b=v[E+11856>>2];if(b){g=v[E+11860>>2];i=g+c|0;if(i>>>0<16385){break n}}g=Jy(v[E+11852>>2],d+11836|0);v[E+11860>>2]=c;v[E+11856>>2]=g;break l}v[E+11860>>2]=i;g=b+g|0}v[U+32>>2]=g;d=0;if(I){c=0;while(1){if(w[c+j|0]){if((c|0)!=(d|0)){b=(d<<6)+S|0;i=(c<<6)+S|0;z[b>>2]=z[i>>2];z[b+4>>2]=z[i+4>>2];z[b+8>>2]=z[i+8>>2];z[b+12>>2]=z[i+12>>2];z[b+16>>2]=z[i+16>>2];z[b+20>>2]=z[i+20>>2];z[b+24>>2]=z[i+24>>2];z[b+28>>2]=z[i+28>>2];z[b+32>>2]=z[i+32>>2];z[b+36>>2]=z[i+36>>2];z[b+40>>2]=z[i+40>>2];p=v[i+48>>2];v[b+44>>2]=v[i+44>>2];v[b+48>>2]=p;p=v[i+56>>2];v[b+52>>2]=v[i+52>>2];v[b+56>>2]=p;v[b+60>>2]=v[i+60>>2];b=j+1280|0;v[b+(d<<2)>>2]=v[b+(c<<2)>>2]}u[(d<<1)+g>>1]=c;d=d+1|0}c=c+1|0;if((I|0)!=(c|0)){continue}break}}c=v[a+108>>2];b=v[v[U+8>>2]+52>>2];c=v[c+32>>2]+(v[c+((b&7)<<2)>>2]+(b>>>3|0)<<4)|0;Oy(S,d,0,c+12|0,c,c+4|0,j+1276|0,c+8|0,d<<2,v[a+104>>2],0,0,j+1280|0,c+13|0,0,v[a+32>>2]+11836|0,e,0,0,0,0,0);xa=j+1536|0;T=T+1|0;if((aa|0)!=(T|0)){continue}break}}a=v[v[a+28>>2]+336>>2];v[E>>2]=v[a>>2];v[a>>2]=E}function F3(a,b,c,d,e,f){var g=0,h=0,i=0,j=C(0),k=0,l=0,m=C(0),n=C(0),o=0,p=0,q=C(0),r=C(0),s=0,u=0,w=C(0),x=0,A=C(0),B=C(0),D=C(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=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=0,_=0,$=C(0),aa=C(0),ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;h=xa-8256|0;xa=h;i=v[e>>2];L=f+1|0;v[e>>2]=f?i>>>0>L>>>0?i:L:1;v[h+8248>>2]=3;v[h+8252>>2]=4;v[h+8240>>2]=1;v[h+8244>>2]=2;a:{if(c>>>0<=3){if((c|0)==3){break a}f=c;i=f>>>0>2?f:2;p=i-f|0;u=p+1&7;if(u){while(1){v[(h+8240|0)+(f<<2)>>2]=c;f=f+1|0;g=g+1|0;if((u|0)!=(g|0)){continue}break}}if(p>>>0<7){break a}while(1){p=h+8240|0;g=p+(f<<2)|0;v[g>>2]=c;v[g+24>>2]=c;v[g+20>>2]=c;v[g+16>>2]=c;v[g+12>>2]=c;v[g+8>>2]=c;v[g+4>>2]=c;g=f+7|0;v[p+(g<<2)>>2]=c;f=f+8|0;if((g|0)!=(i|0)){continue}break}break a}t[h+8224|0]=1;v[h+8232>>2]=1;v[h+8236>>2]=1024;v[h+32>>2]=0;v[h+36>>2]=c;v[h+8228>>2]=h+32;f=1;while(1){x=v[h+8228>>2];i=-1;if(f){k=v[a+8>>2];p=0;j=C(-34028234663852886e22);while(1){g=x+(p<<3)|0;E=v[g+4>>2];if((E|0)!=1){F=v[g>>2];g=k+(v[(F<<2)+b>>2]<<5)|0;A=z[g+16>>2];m=z[g+8>>2];q=z[g+4>>2];r=z[g>>2];B=z[g+24>>2];D=z[g+20>>2];g=1;if(E){while(1){u=k+(v[(g+F<<2)+b>>2]<<5)|0;n=z[u+16>>2];A=n>2];m=m>2];q=q>2];r=n>r?r:n;n=z[u+24>>2];B=n>2];D=n>>0));g=m>j;j=g?m:j;i=g?p:i}p=p+1|0;if((p|0)!=(f|0)){continue}break}}Y=i<<3;g=x+Y|0;O=v[g>>2];F=(O<<2)+b|0;M=0;p=xa+-64|0;xa=p;G=v[g+4>>2];f=0;b:{if(G>>>0<2){break b}f=1;if((G|0)==2){break b}v[p+12>>2]=v[a+32>>2];v[p+16>>2]=v[a+36>>2];v[p+20>>2]=v[a+40>>2];v[p>>2]=v[a+20>>2];v[p+4>>2]=v[a+24>>2];v[p+8>>2]=v[a+28>>2];u=G>>>0>3?2:1;E=G-u|0;Z=E-u|0;J=G&-4;H=G&3;_=G>>>1|0;x=G-2|0;P=(G-(u<<1)|0)+1|0;Q=G-1|0;ba=Q<<2;while(1){N=M<<2;l=v[N+p>>2];c:{d:{e:{if((G|0)!=v[a+48>>2]){g=v[(p+12|0)+N>>2];f=v[a+44>>2];i=0;k=0;o=0;I=Q>>>0<3;if(!I){break e}break d}k=v[a+4>>2];f=0;g=0;i=0;if(Q>>>0>=3){while(1){o=g<<2;v[o+k>>2]=v[l+o>>2];s=o|4;v[s+k>>2]=v[l+s>>2];s=o|8;v[s+k>>2]=v[l+s>>2];o=o|12;v[o+k>>2]=v[l+o>>2];g=g+4|0;i=i+4|0;if((J|0)!=(i|0)){continue}break}}if(!H){break c}while(1){i=g<<2;v[i+k>>2]=v[i+l>>2];g=g+1|0;f=f+1|0;if((H|0)!=(f|0)){continue}break}break c}while(1){s=k<<2;v[s+f>>2]=v[g+(v[F+s>>2]<<2)>>2];K=s|4;v[K+f>>2]=v[g+(v[F+K>>2]<<2)>>2];K=s|8;v[K+f>>2]=v[g+(v[F+K>>2]<<2)>>2];s=s|12;v[s+f>>2]=v[g+(v[F+s>>2]<<2)>>2];k=k+4|0;o=o+4|0;if((J|0)!=(o|0)){continue}break}}if(H){while(1){o=k<<2;v[o+f>>2]=v[g+(v[o+F>>2]<<2)>>2];k=k+1|0;i=i+1|0;if((H|0)!=(i|0)){continue}break}}zz(f,G);k=v[a+4>>2];f=v[a+44>>2];i=0;g=0;o=0;if(!I){while(1){s=g<<2;v[s+k>>2]=v[l+(v[f+s>>2]<<2)>>2];I=s|4;v[I+k>>2]=v[l+(v[f+I>>2]<<2)>>2];I=s|8;v[I+k>>2]=v[l+(v[f+I>>2]<<2)>>2];s=s|12;v[s+k>>2]=v[l+(v[f+s>>2]<<2)>>2];g=g+4|0;o=o+4|0;if((J|0)!=(o|0)){continue}break}}if(!H){break c}while(1){o=g<<2;v[o+k>>2]=v[l+(v[f+o>>2]<<2)>>2];g=g+1|0;i=i+1|0;if((H|0)!=(i|0)){continue}break}}i=v[a+8>>2];f=i+(v[k>>2]<<5)|0;m=z[f+16>>2];q=z[f+8>>2];r=z[f+4>>2];A=z[f>>2];B=z[f+24>>2];D=z[f+20>>2];if(G>>>0>=4){f=i+(v[k+4>>2]<<5)|0;j=z[f+16>>2];m=j>2];q=j>q?q:j;j=z[f+4>>2];r=j>r?r:j;j=z[f>>2];A=j>A?A:j;j=z[f+24>>2];B=j>2];D=j>2];g=0;f=u;while(1){l=i+(v[(f<<2)+k>>2]<<5)|0;j=z[l+24>>2];B=j>2];q=j>q?q:j;j=C(B-q);n=z[l+20>>2];D=n>2];r=n>r?r:n;n=C(D-r);w=z[l+16>>2];m=m>w?m:w;w=z[l>>2];A=A>2]=C(j*n)+C(C(w*j)+C(w*n));f=f+1|0;g=g+1|0;if((P|0)!=(g|0)){continue}break}}f=i+(v[k+ba>>2]<<5)|0;m=z[f+16>>2];q=z[f+8>>2];r=z[f+4>>2];A=z[f>>2];B=z[f+24>>2];D=z[f+20>>2];g=x;if((E|0)<(g|0)){while(1){f=i+(v[(g<<2)+k>>2]<<5)|0;j=z[f+16>>2];m=j>2];q=j>q?q:j;j=z[f+4>>2];r=j>r?r:j;j=z[f>>2];A=j>A?A:j;j=z[f+24>>2];B=j>2];D=j>2];g=0;f=E;while(1){l=i+(v[(f<<2)+k>>2]<<5)|0;j=z[l+24>>2];B=j>2];q=j>q?q:j;j=C(B-q);n=z[l+20>>2];D=n>2];r=n>r?r:n;n=C(D-r);w=z[l+16>>2];m=m>w?m:w;w=z[l>>2];A=A>2]=C(j*n)+C(C(w*j)+C(w*n));f=f-1|0;g=g+1|0;if((P|0)!=(g|0)){continue}break}}i=0;f:{if((Z|0)<0){m=C(34028234663852886e22);break f}o=v[a+16>>2];s=v[a+12>>2];m=C(34028234663852886e22);k=0;while(1){f=k+u|0;g=Z-k|0;q=C(C(C(f|0)*z[s+(k<<2)>>2])+C(z[o+(g<<2)>>2]*C(g+u|0)));g:{if(!(q=q)){break g}I=f-_|0;g=I>>31;K=i-_|0;l=K>>31;if((g^I)-g>>>0>=(l^K)-l>>>0){break g}}i=f;m=q}k=k+1|0;if((P|0)!=(k|0)){continue}break}}v[(p+24|0)+N>>2]=i;z[(p+36|0)+N>>2]=m;M=M+1|0;if((M|0)!=3){continue}break}m=z[p+44>>2];q=z[p+36>>2];r=z[p+40>>2];h:{if(q<=r){u=0;if(m>=q){break h}}u=2;if(!(m>=r)){break h}u=1}f=u<<2;E=v[f+p>>2];i:{if((G|0)!=v[a+48>>2]){x=v[f+(p+12|0)>>2];k=G>>>0>1?G:1;H=k&3;g=v[a+44>>2];f=0;i=0;s=k-1|0;if(s>>>0>=3){M=k&-4;o=0;while(1){l=i<<2;v[l+g>>2]=v[x+(v[l+F>>2]<<2)>>2];J=l|4;v[J+g>>2]=v[x+(v[F+J>>2]<<2)>>2];J=l|8;v[J+g>>2]=v[x+(v[F+J>>2]<<2)>>2];l=l|12;v[l+g>>2]=v[x+(v[l+F>>2]<<2)>>2];i=i+4|0;o=o+4|0;if((M|0)!=(o|0)){continue}break}}if(H){while(1){l=i<<2;v[l+g>>2]=v[x+(v[l+F>>2]<<2)>>2];i=i+1|0;f=f+1|0;if((H|0)!=(f|0)){continue}break}}zz(g,G);x=v[a+44>>2];g=0;i=0;if(s>>>0>=3){o=k&-4;f=0;while(1){l=i<<2;v[l+F>>2]=v[E+(v[l+x>>2]<<2)>>2];H=l|4;v[H+F>>2]=v[E+(v[x+H>>2]<<2)>>2];H=l|8;v[H+F>>2]=v[E+(v[x+H>>2]<<2)>>2];l=l|12;v[l+F>>2]=v[E+(v[l+x>>2]<<2)>>2];i=i+4|0;f=f+4|0;if((o|0)!=(f|0)){continue}break}}f=k&3;if(!f){break i}while(1){k=i<<2;v[k+F>>2]=v[E+(v[k+x>>2]<<2)>>2];i=i+1|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}break i}f=G>>>0>1?G:1;x=f&3;k=0;i=0;if(f-1>>>0>=3){l=f&-4;g=0;while(1){f=i<<2;v[f+F>>2]=v[f+E>>2];o=f|4;v[o+F>>2]=v[o+E>>2];o=f|8;v[o+F>>2]=v[o+E>>2];f=f|12;v[f+F>>2]=v[f+E>>2];i=i+4|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}if(!x){break i}while(1){f=i<<2;v[f+F>>2]=v[f+E>>2];i=i+1|0;k=k+1|0;if((x|0)!=(k|0)){continue}break}}f=v[(p+24|0)+(u<<2)>>2];f=(G|0)==3?f?f:1:f}xa=p- -64|0;g=f;v[h+20>>2]=f;v[h+16>>2]=O;f=v[h+8232>>2];j:{if(f>>>0>=(v[h+8236>>2]&2147483647)>>>0){G3(h+32|0,h+16|0);f=v[h+8232>>2];break j}i=v[h+20>>2];f=v[h+8228>>2]+(f<<3)|0;v[f>>2]=v[h+16>>2];v[f+4>>2]=i;f=v[h+8232>>2]+1|0;v[h+8232>>2]=f}v[h+20>>2]=G-g;i=g+O|0;v[h+16>>2]=i;k:{if((v[h+8236>>2]&2147483647)>>>0<=f>>>0){G3(h+32|0,h+16|0);f=v[h+8232>>2];break k}g=v[h+20>>2];f=v[h+8228>>2]+(f<<3)|0;v[f>>2]=v[h+16>>2];v[f+4>>2]=g;f=v[h+8232>>2]+1|0}g=v[h+8228>>2];f=f-1|0;v[h+8232>>2]=f;p=g+Y|0;f=g+(f<<3)|0;g=v[f+4>>2];v[p>>2]=v[f>>2];v[p+4>>2]=g;v[(h+8240|0)+(R<<2)>>2]=i;R=R+1|0;if((R|0)!=3){f=v[h+8232>>2];continue}break}f=v[h+8236>>2];if((f|0)<0|!(f&2147483647)){break a}f=v[h+8228>>2];if((f|0)==(h+32|0)|!f){break a}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,f)}zz(h+8240|0,3);v[h+8252>>2]=c;p=0;v[h+16>>2]=0;f=v[h+8244>>2];v[h+20>>2]=v[h+8240>>2];v[h+24>>2]=f;f=v[h+8248>>2];v[h+28>>2]=f;u=v[h+8240>>2];v[h>>2]=u;g=v[h+8244>>2];E=g-u|0;v[h+4>>2]=E;g=f-g|0;v[h+8>>2]=g;f=c-f|0;v[h+12>>2]=f;i=f>>>0<17&g>>>0<17&(E>>>0<17&u>>>0<17)&y[(v[a+52>>2]<<2)+103968>>2]>=c>>>0;while(1){v[h+56>>2]=-1;v[h+60>>2]=0;v[h+48>>2]=-25165825;v[h+52>>2]=-25165825;v[h+40>>2]=2122317823;v[h+44>>2]=-25165825;v[h+32>>2]=2122317823;v[h+36>>2]=2122317823;l:{m:{n:{c=p<<2;f=v[c+h>>2];if(f){g=1;k=v[a+8>>2];x=v[c+(h+16|0)>>2];c=k+(v[(x<<2)+b>>2]<<5)|0;B=z[c+24>>2];m=z[c+8>>2];j=C(B-m);D=z[c+20>>2];q=z[c+4>>2];n=C(D-q);A=z[c+16>>2];r=z[c>>2];w=C(A-r);j=C(C(j*n)+C(C(w*j)+C(w*n)));n=j;if((f|0)!=1){break n}break m}v[h+52>>2]=-25165825;v[h+44>>2]=-25165825;v[h+48>>2]=-25165825;v[h+36>>2]=2122317823;v[h+40>>2]=2122317823;m=C(85070586659632215e21);f=-1;q=C(85070586659632215e21);r=C(85070586659632215e21);c=-1;break l}while(1){c=k+(v[(g+x<<2)+b>>2]<<5)|0;S=z[c+24>>2];T=z[c+8>>2];w=C(S-T);U=z[c+20>>2];V=z[c+4>>2];$=C(U-V);W=z[c+16>>2];X=z[c>>2];aa=C(W-X);w=C(C(w*$)+C(C(aa*w)+C(aa*$)));n=n>w?n:w;j=jW?A:W;m=mS?B:S;D=D>U?D:U;g=g+1|0;if((g|0)!=(f|0)){continue}break}}z[h+52>>2]=B;z[h+48>>2]=D;z[h+44>>2]=A;z[h+40>>2]=m;z[h+36>>2]=q;z[h+32>>2]=r;c=C(n/j)>>0<3|(y[(v[a+52>>2]<<2)+104032>>2]>=f>>>0|i))){f=0;i=0;c=-1;break l}c=x+(b-v[a>>2]>>2)|0}v[h+60>>2]=f;v[h+56>>2]=c;c=v[d+4>>2];o:{if(c>>>0>=(v[d+8>>2]&2147483647)>>>0){f=0;c=v[d+8>>2];x=c&2147483647?c<<1:1;p:{if(!x){break p}g=x<<5;if(!g){break p}c=v[37696];f=c+12|0;f=(da=f,ea=g,fa=Ba[v[v[c>>2]+20>>2]](c)|0?48959:63804,ga=16608,ha=553,ca=v[v[f>>2]+8>>2],Ba[ca](da|0,ea|0,fa|0,ga|0,ha|0)|0)}c=v[d+4>>2];if((c|0)>0){k=(c<<5)+f|0;g=v[d>>2];c=f;while(1){z[c>>2]=z[g>>2];z[c+4>>2]=z[g+4>>2];z[c+8>>2]=z[g+8>>2];z[c+12>>2]=z[g+12>>2];z[c+16>>2]=z[g+16>>2];z[c+20>>2]=z[g+20>>2];F=v[g+28>>2];v[c+24>>2]=v[g+24>>2];v[c+28>>2]=F;g=g+32|0;c=c+32|0;if(k>>>0>c>>>0){continue}break}c=v[d+4>>2]}c=(c<<5)+f|0;z[c>>2]=z[h+32>>2];z[c+4>>2]=z[h+36>>2];z[c+8>>2]=z[h+40>>2];z[c+12>>2]=z[h+44>>2];z[c+16>>2]=z[h+48>>2];z[c+20>>2]=z[h+52>>2];g=v[h+60>>2];v[c+24>>2]=v[h+56>>2];v[c+28>>2]=g;q:{if(v[d+8>>2]<0){break q}c=v[d>>2];if(!c){break q}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}v[d+8>>2]=x;v[d>>2]=f;break o}c=v[d>>2]+(c<<5)|0;z[c+8>>2]=m;z[c+4>>2]=q;z[c>>2]=r;z[c+12>>2]=z[h+44>>2];z[c+16>>2]=z[h+48>>2];z[c+20>>2]=z[h+52>>2];f=v[h+60>>2];v[c+24>>2]=v[h+56>>2];v[c+28>>2]=f}v[d+4>>2]=v[d+4>>2]+1;p=p+1|0;if((p|0)!=4){continue}break}r:{if(i&1){break r}f=v[d>>2];c=v[d+4>>2];g=f+(c-4<<5)|0;if(!v[g+28>>2]){v[g+24>>2]=c;F3(a,b,u,d,e,L);f=v[d>>2]}g=c-3|0;if(!v[((g<<5)+f|0)+28>>2]){v[((g<<5)+f|0)+24>>2]=v[d+4>>2];F3(a,(v[h+20>>2]<<2)+b|0,E,d,e,L);f=v[d>>2]}g=(c-2<<5)+f|0;if(!v[g+28>>2]){v[g+24>>2]=v[d+4>>2];F3(a,(v[h+24>>2]<<2)+b|0,v[h+8>>2],d,e,L);f=v[d>>2]}c=c-1|0;if(v[((c<<5)+f|0)+28>>2]){break r}v[((c<<5)+f|0)+24>>2]=v[d+4>>2];F3(a,(v[h+28>>2]<<2)+b|0,v[h+12>>2],d,e,L)}xa=h+8256|0}function q1(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=C(0),H=C(0),I=0,J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0);I=xa-16|0;M=z[b>>2];D=z[a>>2];u=z[c+4>>2];l=z[c>>2];j=z[h>>2];k=z[c+8>>2];s=C(-k);a:{if(j>s){t[I+12|0]=1;if(!(!((k>C(0)?k:s)<=C(34028234663852886e22))|(!(D>=(l>C(0)?l:C(-l)))|!(M>=(u>C(0)?u:C(-u)))))){t[I+8|0]=1;i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=u;z[i>>2]=l;q=v[c+4>>2];i=B(v[g>>2],48)+f|0;v[i+16>>2]=v[c>>2];v[i+20>>2]=q;q=v[c+12>>2];v[i+24>>2]=v[c+8>>2];v[i+28>>2]=q;k=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=s;z[i+40>>2]=k;j=z[h>>2];break a}t[I+8|0]=0;break a}t[I+8|0]=0;t[I+12|0]=0}k=z[c+20>>2];s=z[c+16>>2];n=z[c+24>>2];o=C(-n);b:{if(oC(0)?n:o)<=C(34028234663852886e22))|(!(D>=(s>C(0)?s:C(-s)))|!(M>=(k>C(0)?k:C(-k)))))){t[I+9|0]=1;i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=k;z[i>>2]=s;q=c+16|0;p=v[q+4>>2];i=B(v[g>>2],48)+f|0;v[i+16>>2]=v[q>>2];v[i+20>>2]=p;p=v[q+12>>2];v[i+24>>2]=v[q+8>>2];v[i+28>>2]=p;j=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=o;z[i+40>>2]=j;j=z[h>>2];break b}t[I+9|0]=0;break b}t[I+9|0]=0;t[I+13|0]=0}n=z[c+36>>2];o=z[c+32>>2];E=z[c+40>>2];m=C(-E);c:{if(mC(0)?E:m)<=C(34028234663852886e22))|(!(D>=(o>C(0)?o:C(-o)))|!(M>=(n>C(0)?n:C(-n)))))){t[I+10|0]=1;i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=n;z[i>>2]=o;q=c+32|0;p=v[q+4>>2];i=B(v[g>>2],48)+f|0;v[i+16>>2]=v[q>>2];v[i+20>>2]=p;p=v[q+12>>2];v[i+24>>2]=v[q+8>>2];v[i+28>>2]=p;j=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=m;z[i+40>>2]=j;j=z[h>>2];break c}t[I+10|0]=0;break c}t[I+10|0]=0;t[I+14|0]=0}E=z[c+52>>2];m=z[c+48>>2];r=j;j=z[c+56>>2];H=C(-j);d:{if(r>H){t[I+15|0]=1;if(!(!((j>C(0)?j:H)<=C(34028234663852886e22))|(!(D>=(m>C(0)?m:C(-m)))|!(M>=(E>C(0)?E:C(-E)))))){t[I+11|0]=1;i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=E;z[i>>2]=m;q=c+48|0;p=v[q+4>>2];i=B(v[g>>2],48)+f|0;v[i+16>>2]=v[q>>2];v[i+20>>2]=p;p=v[q+12>>2];v[i+24>>2]=v[q+8>>2];v[i+28>>2]=p;j=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=H;z[i+40>>2]=j;break d}t[I+11|0]=0;break d}t[I+11|0]=0;t[I+15|0]=0}q=v[g>>2];if((q|0)!=4){j=C(G(u,C(-34028234663852886e22)));j=j>k?j:k;j=j>n?j:n;H=j>E?j:E;j=C(F(u,C(34028234663852886e22)));k=js?k:s;k=k>o?k:o;L=k>m?k:m;E=z[d+8>>2];j=z[a>>2];k=C(F(l,C(34028234663852886e22)));k=kL){break e}k=z[b>>2];if(kH){break e}r=z[c+48>>2];o=z[c+52>>2];n=z[c>>2];s=z[c+4>>2];f:{if(r==j&o==k|n==j&s==k){break f}p=kC(0);i=0;if(!((J?l:y)>=(J?y:l))){break g}i=1}y=z[c+16>>2];m=z[c+20>>2];if(y==j&m==k){break f}J=x;x=kC(0);if(!((J?A:K)>=(J?K:A))){break h}if(i){break e}i=i+1|0}A=z[c+32>>2];l=z[c+36>>2];if(A==j&l==k){break f}J=x;x=kC(0);if(!((J?m:y)>=(J?y:m))){break i}if((i|0)==1){break e}i=i+1|0}j:{if((p|0)==(x|0)){break j}o=C(o-l);m=C(C(C(A+C(1.1920928955078125e-7))*o)+C(C(k-l)*C(r-A)));l=C(j*o);p=o>C(0);if(!((p?m:l)>=(p?l:m))){break j}if((i|0)!=1){break f}break e}if(!i){break e}}s=C(C(C(E*z[c+8>>2])+C(C(z[d>>2]*C(n-j))+C(z[d+4>>2]*C(s-k))))/E);n=C(-s);if(!(n>2])){break e}i=B(q,48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=k;z[i>>2]=j;i=B(v[g>>2],48)+f|0;z[i+16>>2]=j;v[i+28>>2]=0;z[i+24>>2]=s;z[i+20>>2]=k;k=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=n;z[i+40>>2]=k;j=z[a>>2]}k=C(-M);s=C(-D);k:{if(jL|(kH)){break k}y=z[c+48>>2];m=z[c+52>>2];o=z[c>>2];n=z[c+4>>2];l:{if(y==j&m==k|o==j&n==k){break l}q=kC(0);i=0;if(!((x?r:A)>=(x?A:r))){break m}i=1}A=z[c+16>>2];l=z[c+20>>2];if(A==j&l==k){break l}x=p;p=kC(0);if(!((x?K:N)>=(x?N:K))){break n}if(i){break k}i=i+1|0}K=z[c+32>>2];r=z[c+36>>2];if(K==j&r==k){break l}x=p;p=kC(0);if(!((x?l:A)>=(x?A:l))){break o}if((i|0)==1){break k}i=i+1|0}p:{if((p|0)==(q|0)){break p}m=C(m-r);l=C(C(C(K+C(1.1920928955078125e-7))*m)+C(C(k-r)*C(y-K)));r=C(j*m);q=m>C(0);if(!((q?l:r)>=(q?r:l))){break p}if((i|0)!=1){break l}break k}if(!i){break k}}n=C(C(C(z[d+8>>2]*z[c+8>>2])+C(C(z[d>>2]*C(o-j))+C(z[d+4>>2]*C(M+n))))/E);o=C(-n);if(!(o>2])){break k}i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=k;z[i>>2]=j;i=B(v[g>>2],48)+f|0;z[i+16>>2]=j;v[i+28>>2]=0;z[i+24>>2]=n;z[i+20>>2]=k;j=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=o;z[i+40>>2]=j}q=!(s>L)&(s>2];if(jH){break q}L=z[c+48>>2];m=z[c+52>>2];o=z[c>>2];n=z[c+4>>2];r:{if(L==s&m==j|o==s&n==j){break r}p=jC(0);i=0;if(!((J?r:y)>=(J?y:r))){break s}i=1}y=z[c+16>>2];l=z[c+20>>2];if(y==s&l==j){break r}J=x;x=jC(0);if(!((J?A:K)>=(J?K:A))){break t}if(i){break q}i=i+1|0}A=z[c+32>>2];r=z[c+36>>2];if(A==s&r==j){break r}J=x;x=jC(0);if(!((J?l:y)>=(J?y:l))){break u}if((i|0)==1){break q}i=i+1|0}v:{if((p|0)==(x|0)){break v}m=C(m-r);l=C(C(C(A+C(1.1920928955078125e-7))*m)+C(C(j-r)*C(L-A)));r=C(m*s);p=m>C(0);if(!((p?l:r)>=(p?r:l))){break v}if((i|0)!=1){break r}break q}if(!i){break q}}n=C(C(C(z[d+8>>2]*z[c+8>>2])+C(C(z[d>>2]*C(D+o))+C(z[d+4>>2]*C(n-j))))/E);o=C(-n);if(!(o>2])){break q}i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=j;z[i>>2]=s;i=B(v[g>>2],48)+f|0;z[i+16>>2]=s;v[i+28>>2]=0;z[i+24>>2]=n;z[i+20>>2]=j;j=z[e+8>>2];p=v[e+4>>2];x=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=x;v[i+36>>2]=p;z[i+44>>2]=o;z[i+40>>2]=j}w:{if(!(q&!(kH){break w}l=z[c+48>>2];o=z[c+52>>2];n=z[c>>2];j=z[c+4>>2];x:{if(l==s&o==k|n==s&j==k){break x}q=kk;i=0;y:{if((q|0)==(p|0)){break y}m=C(j-o);u=C(C(C(l+C(1.1920928955078125e-7))*m)+C(C(k-o)*C(n-l)));H=C(m*s);x=m>C(0);i=0;if(!((x?u:H)>=(x?H:u))){break y}i=1}H=z[c+16>>2];m=z[c+20>>2];if(H==s&m==k){break x}x=p;p=kC(0);if(!((x?r:L)>=(x?L:r))){break z}if(i){break w}i=i+1|0}r=z[c+32>>2];u=z[c+36>>2];if(r==s&u==k){break x}x=p;p=kC(0);if(!((x?m:H)>=(x?H:m))){break A}if((i|0)==1){break w}i=i+1|0}B:{if((p|0)==(q|0)){break B}o=C(o-u);m=C(C(C(r+C(1.1920928955078125e-7))*o)+C(C(k-u)*C(l-r)));u=C(o*s);q=o>C(0);if(!((q?m:u)>=(q?u:m))){break B}if((i|0)!=1){break x}break w}if(!i){break w}}j=C(C(C(z[d+8>>2]*z[c+8>>2])+C(C(z[d>>2]*C(D+n))+C(z[d+4>>2]*C(M+j))))/E);n=C(-j);if(!(n>2])){break w}d=B(v[g>>2],48)+f|0;v[d+8>>2]=0;v[d+12>>2]=0;z[d+4>>2]=k;z[d>>2]=s;d=B(v[g>>2],48)+f|0;z[d+16>>2]=s;v[d+28>>2]=0;z[d+24>>2]=j;z[d+20>>2]=k;j=z[e+8>>2];i=v[e+4>>2];q=v[e>>2];d=v[g>>2];v[g>>2]=d+1;d=B(d,48)+f|0;v[d+32>>2]=q;v[d+36>>2]=i;z[d+44>>2]=n;z[d+40>>2]=j}A=C(-C(z[h>>2]+C(1.1920928955078125e-7)));K=z[b>>2];O=z[a>>2];d=3;b=0;while(1){a=(d<<4)+c|0;M=z[a+8>>2];m=z[a+4>>2];E=z[a>>2];a=(b<<4)+c|0;j=z[a+8>>2];n=z[a+4>>2];o=z[a>>2];a=b;C:{D:{if(!w[b+(I+12|0)|0]){if(!w[(I+12|0)+d|0]){break C}i=0;b=w[(I+8|0)+d|0]!=0;break D}b=0;h=w[a+(I+8|0)|0];i=(h|0)!=0;if(!w[(I+12|0)+d|0]){break D}d=w[(I+8|0)+d|0];b=(d|0)!=0;if(!h){break D}if(d){break C}}E=C(E-o);d=(E>C(0)?E:C(-E))O)){break C}m=C(m-n);h=(m>C(0)?m:C(-m))K|k>n)){break C}M=C(M-j);q=(M>C(0)?M:C(-M))C(34028234663852886e22))){break C}D=C(C(1)/E);u=d?C(0):C(C(s-o)*D);l=d?C(34028234663852886e22):C(C(O-o)*D);D=l>u?u:l;r=C(C(1)/m);H=h?C(0):C(C(k-n)*r);r=h?C(34028234663852886e22):C(C(K-n)*r);L=r>H?H:r;D=D>=L?D:L;y=C(C(1)/M);L=q?C(0):C(C(A-j)*y);y=q?C(34028234663852886e22):C(C(C(34028234663852886e22)-j)*y);N=y>L?L:y;D=D>=N?D:N;D=D>C(0)?D:C(0);u=l=u?u:l;l=y=u?u:l;u=uu|D>C(1)){break C}if(!i){d=B(v[g>>2],48)+f|0;v[d+8>>2]=0;v[d+12>>2]=0;l=C(n+C(m*D));z[d+4>>2]=l;H=C(o+C(E*D));z[d>>2]=H;d=B(v[g>>2],48)+f|0;z[d+16>>2]=H;v[d+28>>2]=0;D=C(j+C(M*D));z[d+24>>2]=D;z[d+20>>2]=l;l=z[e+8>>2];h=v[e+4>>2];i=v[e>>2];d=v[g>>2];v[g>>2]=d+1;d=B(d,48)+f|0;v[d+32>>2]=i;v[d+36>>2]=h;z[d+44>>2]=-D;z[d+40>>2]=l}if(b){break C}b=B(v[g>>2],48)+f|0;v[b+8>>2]=0;v[b+12>>2]=0;n=C(n+C(m*u));z[b+4>>2]=n;o=C(o+C(E*u));z[b>>2]=o;b=B(v[g>>2],48)+f|0;z[b+16>>2]=o;v[b+28>>2]=0;j=C(j+C(M*u));z[b+24>>2]=j;z[b+20>>2]=n;n=z[e+8>>2];d=v[e+4>>2];h=v[e>>2];b=v[g>>2];v[g>>2]=b+1;b=B(b,48)+f|0;v[b+32>>2]=h;v[b+36>>2]=d;z[b+44>>2]=-j;z[b+40>>2]=n}d=a;b=d+1|0;if((b|0)!=4){continue}break}}}function vT(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=0,o=0,p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),E=0,F=C(0),G=C(0),H=0,I=0,J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=0,ra=0,sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0);H=xa+-64|0;xa=H;v[H+60>>2]=i;v[H+32>>2]=0;v[H+36>>2]=0;v[H+40>>2]=0;v[H+44>>2]=0;v[H+24>>2]=0;v[H+28>>2]=0;i=0;u[H+20>>1]=0;v[H+16>>2]=-1;v[H+8>>2]=0;v[H+12>>2]=0;v[H+48>>2]=2139095039;k=z[c+36>>2];u[H>>1]=w[a+299|0]?1283:1027;n=H+8|0;I=H+60|0;R=xa-48|0;xa=R;k=k>2]){case 0:l=z[e+4>>2];v[R+40>>2]=0;z[R+36>>2]=l;v[R+32>>2]=2;u[R+24>>1]=x[H>>1];L=NX(g,h,R+32|0,f,d,k,n,I,R+24|0);break a;case 2:u[R+16>>1]=x[H>>1];L=NX(g,h,e,f,d,k,n,I,R+16|0);break a;case 3:break b;default:break a}}L=x[H>>1];if(L&256){u[R+8>>1]=L;j=xa-80|0;xa=j;M=z[f+4>>2];q=C(M+M);p=z[f+8>>2];m=C(q*p);y=z[f>>2];r=C(y+y);F=z[f+12>>2];l=C(r*F);z[j+44>>2]=m-l;z[j+36>>2]=m+l;l=C(C(1)-C(y*r));G=C(M*q);z[j+48>>2]=l-G;m=l;l=C(p+p);s=C(p*l);z[j+32>>2]=m-s;p=C(r*p);y=C(q*F);z[j+40>>2]=p+y;m=C(r*M);l=C(l*F);z[j+28>>2]=m-l;z[j+24>>2]=p-y;z[j+20>>2]=m+l;z[j+16>>2]=C(C(1)-G)-s;z[j+52>>2]=z[f+16>>2];z[j+56>>2]=z[f+20>>2];z[j+60>>2]=z[f+24>>2];z[j+64>>2]=z[e+4>>2];z[j+68>>2]=z[e+8>>2];z[j+72>>2]=z[e+12>>2];u[j+8>>1]=x[R+8>>1];E=j+16|0;l=k;M=C(0);o=xa-96|0;xa=o;c:{if(!g){d=0;break c}O=z[E+40>>2];N=z[E+44>>2];W=z[E+20>>2];X=z[E+16>>2];e=x[j+8>>1];s=z[E+36>>2];Y=z[E+8>>2];Z=z[E>>2];_=z[E+4>>2];$=z[E+12>>2];aa=z[E+24>>2];J=z[d>>2];ba=z[E+28>>2];P=z[d+4>>2];ca=z[E+32>>2];r=z[d+8>>2];q=C(C(C(aa*J)+C(ba*P))+C(ca*r));z[o+88>>2]=q;F=C(C(C($*J)+C(X*P))+C(W*r));z[o+84>>2]=F;G=C(C(C(Z*J)+C(_*P))+C(Y*r));z[o+80>>2]=G;p=C(G*l);z[o+64>>2]=p;y=C(F*l);z[o+68>>2]=y;k=C(q*l);z[o+72>>2]=k;z[n+40>>2]=l;m=C(1);z[o+56>>2]=q!=C(0)?C(C(1)/k):C(0);z[o+52>>2]=F!=C(0)?C(C(1)/y):C(0);z[o+48>>2]=G!=C(0)?C(C(1)/p):C(0);p=C(-s);y=C(C(aa*p)-C(ba*O));k=C(C(C(D(q))*z[E+56>>2])+C(C(C(D(G))*z[E+48>>2])+C(C(D(F))*z[E+52>>2])));L=e&128;f=!L;ra=I?v[I>>2]:ra;da=C(y-C(ca*N));ea=C(C(C($*p)-C(X*O))-C(W*N));fa=C(C(C(Z*p)-C(_*O))-C(Y*N));I=E+48|0;F=C(C(N*r)+C(C(s*J)+C(P*O)));G=C(k+C(.0020000000949949026));ja=C(F-G);e=0;d:{while(1){e:{qa=ia?(ia|0)==(ra|0)?0:ia:ra;S=B(qa,36)+h|0;pa=z[S+8>>2];r=z[d+8>>2];ka=z[S>>2];q=z[d>>2];la=z[S+4>>2];y=z[d+4>>2];s=C(C(pa*r)+C(C(ka*q)+C(la*y)));O=z[S+20>>2];N=z[S+12>>2];J=z[S+16>>2];p=C(C(O*r)+C(C(N*q)+C(y*J)));k=p>s?s:p;P=z[S+32>>2];T=C(P*r);r=z[S+24>>2];V=C(r*q);q=z[S+28>>2];y=C(T+C(V+C(y*q)));f:{if(C(G+C(F+C(m*l)))<(k>2]=da+C(C(C(aa*r)+C(ba*q))+C(ca*P));z[o+36>>2]=ea+C(C(C($*r)+C(X*q))+C(W*P));z[o+32>>2]=fa+C(C(C(Z*r)+C(_*q))+C(Y*P));z[o+28>>2]=da+C(C(C(aa*N)+C(ba*J))+C(ca*O));z[o+24>>2]=ea+C(C(C($*N)+C(X*J))+C(W*O));z[o+20>>2]=fa+C(C(C(Z*N)+C(_*J))+C(Y*O));z[o+16>>2]=da+C(C(C(aa*ka)+C(ba*la))+C(ca*pa));z[o+12>>2]=ea+C(C(C($*ka)+C(X*la))+C(W*pa));z[o+8>>2]=fa+C(C(C(Z*ka)+C(_*la))+C(Y*pa));v[o+4>>2]=2139095039;if(!F2(o+8|0,I,o- -64|0,o+48|0,m,o+4|0,f)){break f}k=z[o+4>>2];if(!(k>1]=1026;v[n+8>>2]=qa;m=z[d>>2];l=z[d+4>>2];k=z[d+8>>2];v[n+40>>2]=0;z[n+36>>2]=-k;z[n+32>>2]=-l;z[n+28>>2]=-m;d=1;break d}v[n+8>>2]=qa;z[n+40>>2]=k*l;Q=z[o+8>>2];s=C(z[o+20>>2]-Q);m=z[o+12>>2];p=C(z[o+36>>2]-m);U=C(z[o+32>>2]-Q);y=C(z[o+24>>2]-m);M=C(C(s*p)-C(U*y));m=z[o+16>>2];Q=C(z[o+28>>2]-m);m=C(z[o+40>>2]-m);U=C(C(Q*U)-C(m*s));Q=C(C(y*m)-C(p*Q));e=1;if(w[j+8|0]&64){break e}m=k}ia=ia+1|0;if((ia|0)!=(g|0)){continue}}break}d=2}f=(d|0)!=2;d=f|e;if(!e|f){break c}u[n+12>>1]=0;g:{if(!(w[j+8|0]&3)){break g}d=B(v[n+8>>2],36)+h|0;q=z[d+8>>2];F=z[d>>2];G=z[d+4>>2];s=z[d+20>>2];p=z[d+16>>2];y=z[d+12>>2];m=z[d+24>>2];l=z[d+28>>2];k=z[d+32>>2];z[o+40>>2]=da+C(C(C(aa*m)+C(ba*l))+C(ca*k));z[o+36>>2]=ea+C(C(C($*m)+C(X*l))+C(W*k));z[o+28>>2]=da+C(C(C(aa*y)+C(ba*p))+C(ca*s));z[o+24>>2]=ea+C(C(C($*y)+C(X*p))+C(W*s));z[o+16>>2]=da+C(C(C(aa*F)+C(ba*G))+C(ca*q));z[o+12>>2]=ea+C(C(C($*F)+C(X*G))+C(W*q));z[o+8>>2]=fa+C(C(C(Z*F)+C(_*G))+C(Y*q));z[o+32>>2]=fa+C(C(C(Z*m)+C(_*l))+C(Y*k));z[o+20>>2]=fa+C(C(C(Z*y)+C(_*p))+C(Y*s));N2(n+16|0,n+28|0,I,o+80|0,o+8|0,z[n+40>>2]);d=x[j+8>>1];if(d&2){r=z[n+36>>2];m=z[n+28>>2];q=z[n+32>>2];k=C(K(C(C(r*r)+C(C(m*m)+C(q*q)))));if(k>C(0)){k=C(C(1)/k);r=C(r*k);q=C(q*k);m=C(m*k)}if(!(!L|!(C(C(M*z[o+88>>2])+C(C(Q*z[o+80>>2])+C(U*z[o+84>>2])))>C(0)))){r=C(-r);q=C(-q);m=C(-m)}F=z[E+24>>2];G=z[E>>2];s=z[E+12>>2];p=z[E+28>>2];y=z[E+4>>2];U=z[E+16>>2];Q=z[E+32>>2];l=z[E+8>>2];k=z[E+20>>2];u[n+12>>1]=x[n+12>>1]|2;z[n+36>>2]=C(C(m*l)+C(q*k))+C(r*Q);z[n+32>>2]=C(C(m*y)+C(q*U))+C(r*p);z[n+28>>2]=C(C(m*G)+C(q*s))+C(r*F);d=x[j+8>>1]}if(!(d&1)){break g}s=z[E+36>>2];p=z[E+24>>2];y=z[E+12>>2];U=z[E>>2];Q=z[E+40>>2];m=z[E+28>>2];l=z[E+16>>2];k=z[E+4>>2];q=z[n+16>>2];F=z[n+20>>2];G=z[n+24>>2];z[n+24>>2]=C(C(C(q*z[E+8>>2])+C(F*z[E+20>>2]))+C(G*z[E+32>>2]))+z[E+44>>2];z[n+20>>2]=Q+C(C(C(q*k)+C(F*l))+C(G*m));z[n+16>>2]=s+C(C(C(q*U)+C(F*y))+C(G*p));u[n+12>>1]=x[n+12>>1]|1}d=e}xa=o+96|0;xa=j+80|0;L=d&1;break a}u[R>>1]=L;L=d;p=k;j=xa-288|0;xa=j;h:{if(!g){d=0;break h}Ea=z[f+24>>2];Fa=z[f+20>>2];N=z[e+8>>2];J=z[e+12>>2];d=x[R>>1];pa=z[f+16>>2];M=z[L+8>>2];r=z[L>>2];q=z[L+4>>2];T=z[f+8>>2];V=z[f+4>>2];ga=z[f+12>>2];ha=z[f>>2];P=z[e+4>>2];v[j+224>>2]=0;v[j+216>>2]=0;v[j+220>>2]=0;v[j+208>>2]=0;v[j+212>>2]=0;v[j+204>>2]=0;z[j+200>>2]=J;z[j+196>>2]=N;t[j+176|0]=0;v[j+172>>2]=3;v[j+144>>2]=0;v[j+148>>2]=0;v[j+152>>2]=0;v[j+156>>2]=0;z[j+192>>2]=P;k=N>=P?P:N;l=k<=J?k:J;k=C(l*C(.05000000074505806));z[j+168>>2]=k;z[j+164>>2]=k;z[j+160>>2]=l*C(.15000000596046448);v[j+140>>2]=0;l=C(ha+ha);F=C(T*l);k=C(V+V);G=C(ga*k);sa=C(F+G);s=C(k*T);y=C(l*ga);ta=C(s-y);U=C(C(1)-C(ha*l));Q=C(V*k);ua=C(U-Q);ma=C(C(C(r*sa)+C(q*ta))+C(M*ua));z[j+136>>2]=ma*p;m=C(l*V);k=C(T+T);l=C(ga*k);va=C(m-l);k=C(T*k);wa=C(U-k);ya=C(s+y);na=C(C(C(r*va)+C(q*wa))+C(M*ya));z[j+132>>2]=na*p;za=C(C(C(1)-Q)-k);Aa=C(m+l);Ba=C(F-G);oa=C(C(C(r*za)+C(q*Aa))+C(M*Ba));z[j+128>>2]=oa*p;l=C(-pa);k=C(C(sa*l)-C(ta*Fa));qa=d&128;f=qa>>>7|0;ia=I?v[I>>2]:ia;q=C(C(C(J*(ma>C(0)?ma:C(-ma)))+C(C(P*(oa>C(0)?oa:C(-oa)))+C(N*(na>C(0)?na:C(-na)))))+C(0));aa=C(k-C(ua*Ea));ba=C(C(C(va*l)-C(wa*Fa))-C(ya*Ea));ca=C(C(C(za*l)-C(Aa*Fa))-C(Ba*Ea));e=0;y=C(0);U=C(0);Q=C(0);i:{j:{while(1){d=S?(S|0)==(ia|0)?0:S:ia;I=B(d,36)+h|0;ka=z[I+32>>2];la=z[I+24>>2];O=z[I+28>>2];da=C(ca+C(C(Ba*ka)+C(C(za*la)+C(Aa*O))));N=z[I+20>>2];J=z[I+12>>2];s=z[I+16>>2];Ca=C(ca+C(C(Ba*N)+C(C(za*J)+C(Aa*s))));l=C(da-Ca);P=z[I+8>>2];M=z[I>>2];r=z[I+4>>2];ea=C(ba+C(C(ya*P)+C(C(va*M)+C(wa*r))));Da=C(ba+C(C(ya*N)+C(C(va*J)+C(wa*s))));F=C(ea-Da);fa=C(ca+C(C(Ba*P)+C(C(za*M)+C(Aa*r))));k=C(fa-Ca);ja=C(ba+C(C(ya*ka)+C(C(va*la)+C(wa*O))));G=C(ja-Da);m=C(C(l*F)-C(k*G));O=C(aa+C(C(ua*ka)+C(C(sa*la)+C(ta*O))));J=C(aa+C(C(ua*N)+C(C(sa*J)+C(ta*s))));s=C(O-J);N=C(s*k);M=C(aa+C(C(ua*P)+C(C(sa*M)+C(ta*r))));k=C(M-J);l=C(N-C(k*l));k=C(C(G*k)-C(F*s));k:{if(!f&z[j+224>>2]<=C(C(m*z[j+136>>2])+C(C(k*z[j+128>>2])+C(l*z[j+132>>2])))){break k}r=C(C(O*ma)+C(C(da*oa)+C(na*ja)));F=C(C(J*ma)+C(C(Ca*oa)+C(na*Da)));s=r>2])|(!(I|G>2])|!(I|F>2])))){if(I){break k}}t[j+64|0]=0;v[j+56>>2]=2139095039;v[j+60>>2]=5;v[j+124>>2]=0;v[j+108>>2]=0;v[j+92>>2]=0;v[j+44>>2]=0;v[j+48>>2]=0;v[j+52>>2]=2139095039;z[j+80>>2]=fa;z[j+96>>2]=Ca;z[j+112>>2]=da;F=C(C(C(fa+Ca)+da)*C(.33333298563957214));z[j+32>>2]=F;z[j+84>>2]=ea;z[j+100>>2]=Da;z[j+116>>2]=ja;G=C(C(C(ea+Da)+ja)*C(.33333298563957214));z[j+36>>2]=G;z[j+88>>2]=M;z[j+104>>2]=J;z[j+120>>2]=O;s=C(C(C(M+J)+O)*C(.33333298563957214));z[j+40>>2]=s;v[j+24>>2]=141856;v[j+28>>2]=j+32;v[j+16>>2]=141808;v[j+20>>2]=j+144;v[j+12>>2]=0;z[j+8>>2]=s-z[j+152>>2];z[j+4>>2]=G-z[j+148>>2];z[j>>2]=F-z[j+144>>2];if(!bY(j+24|0,j+16|0,j,j+208|0,j+128|0,j+240|0,j+256|0,j+272|0,C(0))){break k}s=z[j+240>>2];if(s<=z[j+224>>2]){v[n+8>>2]=d;v[n+40>>2]=0;m=z[L>>2];l=z[L+4>>2];k=z[L+8>>2];u[n+12>>1]=2;z[n+36>>2]=-k;z[n+32>>2]=-l;z[n+28>>2]=-m;d=1;break i}W=z[j+264>>2];X=z[j+260>>2];Y=z[j+256>>2];Z=z[j+280>>2];_=z[j+276>>2];$=z[j+272>>2];v[j+140>>2]=0;p=C(p*s);z[j+136>>2]=ma*p;z[j+132>>2]=na*p;z[j+128>>2]=oa*p;ra=1;if(w[R|0]&64){break j}Q=k;U=l;y=m;e=d}S=S+1|0;if((S|0)!=(g|0)){continue}break}d=2;break i}Q=k;U=l;y=m;e=d;d=2}d=(d|0)!=2;if(d|!ra){break h}v[n+8>>2]=e;z[n+40>>2]=p;m=C(C(ga*ga)+C(-.5));l=C(C(T*Z)+C(C(ha*$)+C(V*_)));k=C(C(C(ga*C(C(ha*_)-C($*V)))+C(m*Z))+C(T*l));z[n+24>>2]=Ea+C(k+k);k=C(C(V*l)+C(C(m*_)+C(ga*C(C(T*$)-C(Z*ha)))));z[n+20>>2]=Fa+C(k+k);k=C(C(ha*l)+C(C(m*$)+C(ga*C(C(V*Z)-C(_*T)))));z[n+16>>2]=pa+C(k+k);l=C(C(T*W)+C(C(ha*Y)+C(V*X)));k=C(C(C(ga*C(C(ha*X)-C(Y*V)))+C(m*W))+C(T*l));k=C(k+k);q=k;r=C(k*k);k=C(C(ha*l)+C(C(m*Y)+C(ga*C(C(V*W)-C(X*T)))));p=C(k+k);k=C(C(V*l)+C(C(m*X)+C(ga*C(C(T*Y)-C(W*ha)))));l=C(k+k);k=C(C(1)/C(K(C(r+C(C(p*p)+C(l*l))))));m=C(q*k);z[n+36>>2]=-m;l=C(l*k);z[n+32>>2]=-l;k=C(p*k);z[n+28>>2]=-k;if(!(!qa|!(C(C(y*z[L+8>>2])+C(C(Q*z[L>>2])+C(U*z[L+4>>2])))>C(0)))){z[n+36>>2]=m;z[n+32>>2]=l;z[n+28>>2]=k}u[n+12>>1]=3;d=1}xa=j+288|0;L=d}xa=R+48|0;l:{if(!L){break l}k=z[H+48>>2];if(k>=z[c+36>>2]){break l}z[c+36>>2]=k;z[c+24>>2]=z[H+36>>2];z[c+28>>2]=z[H+40>>2];z[c+32>>2]=z[H+44>>2];A[c>>3]=A[b+12>>3]+ +z[H+24>>2];A[c+8>>3]=A[b+20>>3]+ +z[H+28>>2];A[c+16>>3]=A[b+28>>3]+ +z[H+32>>2];d=v[H+16>>2];v[((v[a+96>>2]<<2)+a|0)+100>>2]=d;b=v[b+40>>2];v[c+40>>2]=b+d;v[c+44>>2]=v[(v[a+20>>2]+(b<<2)|0)+(d<<2)>>2];i=1}xa=H- -64|0;return i}function IA(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,u=0,A=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=C(0),X=C(0),Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;i=xa-1072|0;xa=i;v[i+1048>>2]=v[b+12>>2];O=v[b+56>>2];e=i;v[e+1004>>2]=-128;v[e+1008>>2]=-128;v[e+972>>2]=-128;v[e+976>>2]=-128;v[e+940>>2]=-128;v[e+944>>2]=-128;v[e+908>>2]=-128;v[e+912>>2]=-128;v[e+876>>2]=-128;v[e+880>>2]=-128;v[e+844>>2]=-128;v[e+848>>2]=-128;v[e+812>>2]=-128;v[e+816>>2]=-128;v[e+780>>2]=-128;v[e+784>>2]=-128;v[e+748>>2]=-128;v[e+752>>2]=-128;v[e+716>>2]=-128;v[e+720>>2]=-128;v[e+684>>2]=-128;v[e+688>>2]=-128;v[e+652>>2]=-128;v[e+656>>2]=-128;v[e+620>>2]=-128;v[e+624>>2]=-128;v[e+588>>2]=-128;v[e+592>>2]=-128;v[e+556>>2]=-128;v[e+560>>2]=-128;v[e+524>>2]=-128;v[e+528>>2]=-128;v[e+492>>2]=-128;v[e+496>>2]=-128;v[e+460>>2]=-128;v[e+464>>2]=-128;v[e+428>>2]=-128;v[e+432>>2]=-128;v[e+396>>2]=-128;v[e+400>>2]=-128;v[e+364>>2]=-128;v[e+368>>2]=-128;v[e+332>>2]=-128;v[e+336>>2]=-128;v[e+300>>2]=-128;v[e+304>>2]=-128;v[e+268>>2]=-128;v[e+272>>2]=-128;v[e+236>>2]=-128;v[e+240>>2]=-128;v[e+204>>2]=-128;v[e+208>>2]=-128;v[e+172>>2]=-128;v[e+176>>2]=-128;v[e+140>>2]=-128;v[e+144>>2]=-128;v[e+108>>2]=-128;v[e+112>>2]=-128;v[e+76>>2]=-128;v[e+80>>2]=-128;v[e+44>>2]=-128;v[e+48>>2]=-128;v[e+12>>2]=-128;v[e+16>>2]=-128;T=v[b+40>>2];q=v[b+28>>2];F=v[b+16>>2];v[e+1040>>2]=0;v[e+1044>>2]=32;v[e+1068>>2]=d;v[e+1064>>2]=c;t[e+1033|0]=0;v[e+1036>>2]=e;M=v[b>>2];U=v[b+44>>2];P=v[b+48>>2];S=v[b+24>>2];V=v[b+32>>2];W=z[b+104>>2];X=z[b+100>>2];c=O+v[b+68>>2]|0;v[b+68>>2]=c;l=c-O|0;Y=v[b+36>>2];Z=M-1|0;L=Z;j=O;while(1){_=I+Z|0;if(_>>>0>o>>>0){ea=I?129216:129120;E=q+r|0;$=B(L-o|0,q);D=$+r|0;m=s;while(1){a:{if(v[b+88>>2]>=(m|0)){break a}d=3e4;if(v[b+88>>2]>=(m|0)){break a}while(1){if(v[b+88>>2]>=(m|0)){break a}d=d-1|0;if(d){continue}d=1e4;continue}}t[i+1032|0]=w[a+4|0]!=0|M-o>>>0<4;if(P){fa=B(N,T);J=0;while(1){b:{if(v[b+72>>2]>=(k|0)){break b}d=3e4;if(v[b+72>>2]>=(k|0)){break b}while(1){if(v[b+72>>2]>=(k|0)){break b}d=d-1|0;if(d){continue}d=1e4;continue}}K=0;aa=(J<<2)+U|0;A=v[aa>>2]+A|0;c:{if((A|0)<=(l|0)){break c}while(1){c=A-l|0;H=(c|0)<(j|0)?c:j;if((H|0)>0){p=l-fa|0;ga=H+p|0;while(1){G=0;g=0;f=0;Q=(p<<3)+Y|0;ba=(v[Q>>2]<<5)+V|0;d=v[ba+24>>2];c=d+383|0;f=c>>>0<383?1:f;e=c;e=(f&63)<<26|e>>>6;c=d>>>6|0;u=(f>>>6|0)-(c>>>0>e>>>0)|0;ca=e-c|0;f=u;c=ca+1|0;f=c?f:f+1|0;e=c;c=0;ha=c;da=e&7;if(c|da){while(1){c=e;e=e-1|0;f=f-!c|0;d=d- -64|0;c=g;g=G+1|0;c=g?c:c+1|0;G=g;g=c;if((da|0)!=(G|0)|(ha|0)!=(c|0)){continue}break}}g=x[Q+4>>1];if(!u&ca>>>0>=7|u){while(1){d=d+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}d:{if(!g){break d}c=0;d=0;if(g-1>>>0>=3){f=g&65532;e=0;while(1){d=d+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=g&3;if(!e){break d}while(1){d=d+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}Ba[v[(x[Q+6>>1]<<2)+ea>>2]](ba,g,i+1032|0);p=p+1|0;if((ga|0)>(p|0)){continue}break}}K=K+H|0;j=j-H|0;if(j){l=l+H|0}else{j=O;c=j+v[b+68>>2]|0;v[b+68>>2]=c;l=c-j|0}if((A|0)>(l|0)){continue}break}if(!K){break c}v[b+72>>2]=v[b+72>>2]+K}k=v[aa>>2]+k|0;J=J+1|0;if((J|0)!=(P|0)){continue}break}}e:{if(v[b+72>>2]>=(k|0)){break e}d=3e4;if(v[b+72>>2]>=(k|0)){break e}while(1){if(v[b+72>>2]>=(k|0)){break e}d=d-1|0;if(d){continue}d=1e4;continue}}r=q+r|0;if((r|0)>(h|0)){while(1){if((((n|0)<(r|0)?n:r)|0)>(h|0)){c=(n|0)<(E|0)?n:E;d=h;while(1){e=v[B(d-R|0,52)+S>>2];Ba[v[v[e>>2]+136>>2]](e,X,W,v[i+1064>>2],v[i+1068>>2],0,0,C(0));d=d+1|0;if((c|0)!=(d|0)){continue}break}if((c|0)!=(h|0)){v[b+88>>2]=v[b+88>>2]+(c-h|0)}h=c}if((h|0)==(n|0)){n=v[b+84>>2]+2|0;v[b+84>>2]=n;h=n-2|0}if((h|0)<(r|0)){continue}break}}m=q+m|0;E=q+E|0;N=N+1|0;R=q+R|0;o=o+1|0;if(_>>>0>o>>>0){continue}break}s=s+$|0;r=D}L=L+1|0;I=I+1|0;if((I|0)!=2){continue}break}u=v[b+52>>2];D=v[b+8>>2];a=v[b+76>>2]+32|0;v[b+76>>2]=a;f:{c=v[b+88>>2]>=(s|0);if(c|c){break f}d=3e4;while(1){if(v[b+88>>2]>=(s|0)){break f}d=d-1|0;if(d){continue}d=1e4;continue}}d=a-32|0;g:{a=v[b+72>>2]>=(k|0);if(a|a){break g}c=3e4;while(1){if(v[b+72>>2]>=(k|0)){break g}c=c-1|0;if(c){continue}c=1e4;continue}}a=32;c=0;if((d|0)<(q|0)){while(1){e=q-d|0;f=(e|0)<32?e:32;a=a-f|0;h:{if((e|0)<=0){break h}e=(f|0)>1?f:1;m=e&1;if((e|0)!=1){p=e&-2;e=0;while(1){g=B(d,52)+S|0;o=v[(v[v[g>>2]+24>>2]<<2)+149608>>2];if(o){Ba[o|0](g,v[i+1068>>2])}g=g+52|0;o=v[(v[v[g>>2]+24>>2]<<2)+149608>>2];if(o){Ba[o|0](g,v[i+1068>>2])}d=d+2|0;e=e+2|0;if((p|0)!=(e|0)){continue}break}}if(!m){break h}e=B(d,52)+S|0;g=v[(v[v[e>>2]+24>>2]<<2)+149608>>2];if(g){Ba[g|0](e,v[i+1068>>2])}d=d+1|0}if(!a){a=v[b+76>>2]+32|0;v[b+76>>2]=a;d=a-32|0;a=32}c=c+f|0;if((d|0)<(q|0)){continue}break}}e=d-q|0;if((F|0)>(e|0)){while(1){m=0;d=F-e|0;f=(a|0)<(d|0)?a:d;if((f|0)>0){while(1){d=e<<5;a=d+u|0;d=d+D|0;z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];z[a+16>>2]=z[d+16>>2];z[a+20>>2]=z[d+20>>2];z[a+24>>2]=z[d+24>>2];e=e+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}c=c+f|0;a=32;d=v[b+76>>2]+32|0;v[b+76>>2]=d;e=(d-q|0)-32|0;if((F|0)>(e|0)){continue}break}}if(c){v[b+80>>2]=v[b+80>>2]+c}i:{a=q+F|0;if((a|0)<=v[b+80>>2]|(a|0)<=v[b+80>>2]){break i}d=3e4;while(1){if((a|0)<=v[b+80>>2]){break i}d=d-1|0;if(d){continue}d=1e4;continue}}if(y[b+4>>2]>=2){o=q+r|0;E=1;while(1){j:{if(v[b+88>>2]>=(s|0)){break j}d=3e4;if(v[b+88>>2]>=(s|0)){break j}while(1){if(v[b+88>>2]>=(s|0)){break j}d=d-1|0;if(d){continue}d=1e4;continue}}if(P){H=B(N,T);m=0;while(1){k:{if(v[b+72>>2]>=(k|0)){break k}d=3e4;if(v[b+72>>2]>=(k|0)){break k}while(1){if(v[b+72>>2]>=(k|0)){break k}d=d-1|0;if(d){continue}d=1e4;continue}}a=0;L=(m<<2)+U|0;A=v[L>>2]+A|0;l:{if((A|0)<=(l|0)){break l}while(1){c=A-l|0;D=(c|0)<(j|0)?c:j;if((D|0)>0){p=l-H|0;I=D+p|0;while(1){G=0;g=0;f=0;F=(p<<3)+Y|0;J=(v[F>>2]<<5)+V|0;d=v[J+24>>2];c=d+383|0;f=c>>>0<383?1:f;e=c;e=(f&63)<<26|e>>>6;c=d>>>6|0;u=(f>>>6|0)-(c>>>0>e>>>0)|0;K=e-c|0;f=u;c=K+1|0;f=c?f:f+1|0;e=c;c=0;M=c;Q=e&7;if(c|Q){while(1){c=e;e=e-1|0;f=f-!c|0;d=d- -64|0;c=g;g=G+1|0;c=g?c:c+1|0;G=g;g=c;if((Q|0)!=(G|0)|(M|0)!=(c|0)){continue}break}}g=x[F+4>>1];if(!u&K>>>0>=7|u){while(1){d=d+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}m:{if(!g){break m}c=0;d=0;if(g-1>>>0>=3){f=g&65532;e=0;while(1){d=d+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=g&3;if(!e){break m}while(1){d=d+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}Ba[v[(x[F+6>>1]<<2)+129120>>2]](J,g,i+1032|0);p=p+1|0;if((I|0)>(p|0)){continue}break}}a=a+D|0;j=j-D|0;if(j){l=l+D|0}else{j=O;c=j+v[b+68>>2]|0;v[b+68>>2]=c;l=c-j|0}if((A|0)>(l|0)){continue}break}if(!a){break l}v[b+72>>2]=v[b+72>>2]+a}k=v[L>>2]+k|0;m=m+1|0;if((P|0)!=(m|0)){continue}break}}n:{if(v[b+72>>2]>=(k|0)){break n}d=3e4;if(v[b+72>>2]>=(k|0)){break n}while(1){if(v[b+72>>2]>=(k|0)){break n}d=d-1|0;if(d){continue}d=1e4;continue}}r=q+r|0;if((r|0)>(h|0)){while(1){if((((n|0)<(r|0)?n:r)|0)>(h|0)){a=(n|0)<(o|0)?n:o;d=h;while(1){c=v[B(d-R|0,52)+S>>2];Ba[v[v[c>>2]+136>>2]](c,X,W,v[i+1064>>2],v[i+1068>>2],1,0,C(0));d=d+1|0;if((a|0)!=(d|0)){continue}break}if((a|0)!=(h|0)){v[b+88>>2]=v[b+88>>2]+(a-h|0)}h=a}if((h|0)==(n|0)){n=v[b+84>>2]+2|0;v[b+84>>2]=n;h=n-2|0}if((h|0)<(r|0)){continue}break}}s=q+s|0;o=q+o|0;R=q+R|0;N=N+1|0;E=E+1|0;if(E>>>0>2]){continue}break}}D=v[b+140>>2];o=v[b+132>>2];v[i+1056>>2]=v[b+136>>2];v[i+1052>>2]=o;v[i+1060>>2]=D;t[i+1033|0]=1;o:{a=v[b+88>>2]>=(s|0);if(a|a){break o}d=3e4;while(1){if(v[b+88>>2]>=(s|0)){break o}d=d-1|0;if(d){continue}d=1e4;continue}}if(P){K=B(N,T);m=0;while(1){p:{if(v[b+72>>2]>=(k|0)){break p}d=3e4;if(v[b+72>>2]>=(k|0)){break p}while(1){if(v[b+72>>2]>=(k|0)){break p}d=d-1|0;if(d){continue}d=1e4;continue}}a=0;H=(m<<2)+U|0;A=v[H>>2]+A|0;q:{if((A|0)<=(l|0)){break q}while(1){c=A-l|0;u=(c|0)<(j|0)?c:j;if((u|0)>0){p=l-K|0;L=u+p|0;while(1){G=0;g=0;f=0;E=(p<<3)+Y|0;I=(v[E>>2]<<5)+V|0;d=v[I+24>>2];c=d+383|0;f=c>>>0<383?1:f;e=c;e=(f&63)<<26|e>>>6;c=d>>>6|0;s=(f>>>6|0)-(c>>>0>e>>>0)|0;F=e-c|0;f=s;c=F+1|0;f=c?f:f+1|0;e=c;c=0;J=c;M=e&7;if(c|M){while(1){c=e;e=e-1|0;f=f-!c|0;d=d- -64|0;c=g;g=G+1|0;c=g?c:c+1|0;G=g;g=c;if((M|0)!=(G|0)|(J|0)!=(c|0)){continue}break}}g=x[E+4>>1];if(!s&F>>>0>=7|s){while(1){d=d+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}r:{if(!g){break r}c=0;d=0;if(g-1>>>0>=3){f=g&65532;e=0;while(1){d=d+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=g&3;if(!e){break r}while(1){d=d+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}Ba[v[(x[E+6>>1]<<2)+129168>>2]](I,g,i+1032|0);p=p+1|0;if((L|0)>(p|0)){continue}break}}a=a+u|0;j=j-u|0;if(j){l=l+u|0}else{j=O;c=j+v[b+68>>2]|0;v[b+68>>2]=c;l=c-j|0}if((A|0)>(l|0)){continue}break}if(!a){break q}v[b+72>>2]=v[b+72>>2]+a}k=v[H>>2]+k|0;m=m+1|0;if((P|0)!=(m|0)){continue}break}}s:{a=v[b+72>>2]>=(k|0);if(a|a){break s}d=3e4;while(1){if(v[b+72>>2]>=(k|0)){break s}d=d-1|0;if(d){continue}d=1e4;continue}}c=q+r|0;if((c|0)>(h|0)){while(1){d=h;a=(c|0)>(n|0)?n:c;if((d|0)<(a|0)){while(1){e=B(d-R|0,52)+S|0;f=v[e>>2];Ba[v[v[f>>2]+136>>2]](f,X,W,v[i+1064>>2],v[i+1068>>2],0,0,C(0));e=v[e>>2];Ba[v[v[e>>2]+140>>2]](e,0);d=d+1|0;if((a|0)!=(d|0)){continue}break}if((a|0)!=(h|0)){v[b+88>>2]=v[b+88>>2]+(a-h|0)}h=a}if((h|0)==(n|0)){n=v[b+84>>2]+2|0;v[b+84>>2]=n;h=n-2|0}if((c|0)>(h|0)){continue}break}}a=v[i+1040>>2];t:{if(!a){break t}a=a+v[D>>2]|0;v[D>>2]=a;b=v[i+1040>>2];if(!b){break t}c=a-b|0;d=0;while(1){a=v[i+1036>>2]+(d<<5)|0;h=v[a+4>>2];b=o+(c+d<<5)|0;v[b>>2]=v[a>>2];v[b+4>>2]=h;h=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=h;h=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=h;h=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=h;d=d+1|0;if(d>>>0>2]){continue}break}}xa=i+1072|0;return B(N+1|0,T)|0}function LX(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=0,G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0,da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0);l=xa-288|0;xa=l;q=i;k=xa-272|0;xa=k;v[k+248>>2]=0;v[k+252>>2]=0;v[k+240>>2]=0;v[k+244>>2]=0;ia=z[d+8>>2];ja=z[d+4>>2];N=z[d>>2];O=z[e+8>>2];P=z[e+4>>2];I=z[e>>2];v[k+224>>2]=1;m=v[a+8>>2];G=z[m+52>>2];H=z[m+36>>2];D=z[m+20>>2];T=z[m+56>>2];U=z[m+40>>2];x=v[a+4>>2];s=z[x+56>>2];L=z[a+56>>2];Q=z[a+24>>2];$=z[a+40>>2];X=z[a+48>>2];J=z[a+32>>2];M=z[m+24>>2];y=z[x+52>>2];R=z[a+52>>2];V=z[a+20>>2];Y=z[a+36>>2];W=z[m+48>>2];Z=z[m+32>>2];ka=z[m>>2];la=z[m+16>>2];_=z[m+4>>2];ma=z[m+8>>2];A=z[x+48>>2];na=z[a+16>>2];i=z[c+8>>2];o=z[c>>2];p=z[c+4>>2];m=v[b+4>>2];r=z[m+56>>2];aa=z[m+52>>2];ba=z[m+72>>2];ca=m- -64|0;da=z[ca>>2];ea=z[m+68>>2];n=z[m+88>>2];fa=z[m+80>>2];ga=z[m+84>>2];ha=z[m+48>>2];x=0;v[k+172>>2]=0;S=n;E=C(C(i*i)+C(C(o*o)+C(p*p)))>C(1.1920928955078125e-7);i=E?i:C(0);o=E?o:C(1);n=E?p:C(0);u=C(C(1)/C(K(C(C(i*i)+C(C(o*o)+C(n*n))))));i=C(i*u);p=C(o*u);o=C(n*u);z[k+168>>2]=C(S*i)+C(C(fa*p)+C(ga*o));z[k+164>>2]=C(ba*i)+C(C(da*p)+C(o*ea));z[k+160>>2]=C(r*i)+C(C(ha*p)+C(o*aa));E=HV(m,k+160|0);aa=z[ca>>2];ba=z[m+80>>2];da=z[m+84>>2];ea=z[m+52>>2];fa=z[m+68>>2];ga=z[m+88>>2];E=v[m+152>>2]+B(E,12)|0;n=z[E+8>>2];ha=z[m+56>>2];u=z[E>>2];oa=z[m+72>>2];r=z[E+4>>2];pa=z[m+48>>2];v[k+180>>2]=0;v[k+184>>2]=0;v[k+188>>2]=0;v[k+192>>2]=0;v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;v[k+208>>2]=0;v[k+212>>2]=0;v[k+216>>2]=0;v[k+220>>2]=0;v[k+172>>2]=0;v[k+176>>2]=0;S=T;p=C(-p);T=C(C(C(Q*p)-C($*o))-C(L*i))>C(0)?s:C(-s);A=C(C(C(na*p)-C(J*o))-C(X*i))>C(0)?A:C(-A);i=C(C(C(V*p)-C(Y*o))-C(R*i))>C(0)?y:C(-y);o=C(S+C(C(U*T)+C(C(ma*A)+C(M*i))));p=C(C(ga*n)+C(C(ha*u)+C(r*oa)));s=C(o-p);z[k+168>>2]=s;G=C(G+C(C(H*T)+C(C(_*A)+C(i*D))));H=C(C(da*n)+C(C(ea*u)+C(r*fa)));y=C(G-H);z[k+164>>2]=y;i=C(W+C(C(Z*T)+C(C(ka*A)+C(i*la))));n=C(C(ba*n)+C(C(pa*u)+C(r*aa)));r=C(i-n);z[k+160>>2]=r;v[k+116>>2]=0;v[k+120>>2]=0;v[k+124>>2]=0;v[k+128>>2]=0;v[k+132>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+108>>2]=0;v[k+112>>2]=0;z[k+104>>2]=o;z[k+100>>2]=G;z[k+96>>2]=i;v[k+52>>2]=0;v[k+56>>2]=0;v[k+60>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+44>>2]=0;v[k+48>>2]=0;z[k+40>>2]=p;z[k+36>>2]=H;z[k+32>>2]=n;i=C(-s);o=C(-y);p=C(-r);A=C(C(s*s)+C(C(r*r)+C(y*y)));n=z[v[b+4>>2]+24>>2];m=v[a+4>>2];u=z[m+24>>2];n=C((nka)){q=p;n=o;u=i;N=C(0);T=r;ia=y;ja=s;break b}$=C(n+q);la=C($*$);I=C(C(I*C(0))+N);P=C(C(P*C(0))+ja);O=C(C(O*C(0))+ia);N=C(0);u=i;n=o;q=p;while(1){T=r;ia=y;ja=s;m=v[a+8>>2];Z=z[m+56>>2];_=z[m+40>>2];ma=z[m+24>>2];Q=z[m+52>>2];Y=z[m+36>>2];x=v[a+4>>2];y=z[x+56>>2];W=z[m+20>>2];r=z[x+52>>2];na=z[m+8>>2];L=z[m+48>>2];X=z[m+32>>2];J=z[m>>2];M=z[m+16>>2];R=z[a+56>>2];V=z[a+24>>2];aa=z[a+40>>2];ba=z[m+4>>2];D=z[x+48>>2];da=z[a+48>>2];ea=z[a+16>>2];fa=z[a+32>>2];ga=z[a+52>>2];ha=z[a+20>>2];oa=z[a+36>>2];m=v[b+4>>2];pa=z[m+52>>2];sa=z[m+56>>2];ta=z[m+72>>2];E=m- -64|0;ua=z[E>>2];va=z[m+68>>2];wa=z[m+88>>2];s=z[m+80>>2];G=z[m+84>>2];ya=z[m+48>>2];v[k+268>>2]=0;S=s;H=C(C(1)/C(K(C(C(i*i)+C(C(p*p)+C(o*o))))));s=C(p*H);U=C(-s);qa=G;G=C(o*H);H=C(i*H);z[k+264>>2]=C(C(S*U)-C(qa*G))-C(wa*H);z[k+260>>2]=C(C(ua*U)-C(va*G))-C(ta*H);z[k+256>>2]=C(C(ya*U)-C(pa*G))-C(sa*H);x=HV(m,k+256|0);y=C(C(R*H)+C(C(V*s)+C(G*aa)))>C(0)?y:C(-y);D=C(C(da*H)+C(C(ea*s)+C(G*fa)))>C(0)?D:C(-D);r=C(C(ga*H)+C(C(ha*s)+C(G*oa)))>C(0)?r:C(-r);X=C(L+C(C(X*y)+C(C(J*D)+C(M*r))));x=v[m+152>>2]+B(x,12)|0;J=z[x+8>>2];M=z[x>>2];R=z[x+4>>2];V=C(I+C(C(z[m+80>>2]*J)+C(C(z[m+48>>2]*M)+C(R*z[E>>2]))));L=C(X-V);Y=C(Q+C(C(Y*y)+C(C(ba*D)+C(r*W))));W=C(P+C(C(z[m+84>>2]*J)+C(C(z[m+52>>2]*M)+C(R*z[m+68>>2]))));Q=C(Y-W);Z=C(Z+C(C(_*y)+C(C(na*D)+C(r*ma))));J=C(O+C(C(z[m+88>>2]*J)+C(C(z[m+56>>2]*M)+C(R*z[m+72>>2]))));D=C(Z-J);y=C(C(C(C(s*C(-L))-C(G*Q))-C(H*D))-$);if(y>C(0)){m=0;r=z[e+8>>2];M=z[e>>2];R=z[e+4>>2];_=C(C(H*r)+C(C(s*M)+C(G*R)));if(_>=C(0)){break a}s=N;N=C(s-C(y/_));if(N>s){if(N>C(1)){break a}u=z[d+8>>2];n=z[d+4>>2];q=z[d>>2];v[k+76>>2]=0;v[k+60>>2]=0;v[k+44>>2]=0;s=C(q+C(M*N));q=C(s-I);A=C(q+z[k+64>>2]);z[k+64>>2]=A;y=C(n+C(R*N));n=C(y-P);I=C(n+z[k+68>>2]);z[k+68>>2]=I;r=C(u+C(r*N));u=C(r-O);P=C(u+z[k+72>>2]);z[k+72>>2]=P;O=C(q+z[k+48>>2]);z[k+48>>2]=O;D=C(n+z[k+52>>2]);z[k+52>>2]=D;L=C(u+z[k+56>>2]);z[k+56>>2]=L;q=C(q+z[k+32>>2]);z[k+32>>2]=q;n=C(n+z[k+36>>2]);z[k+36>>2]=n;u=C(u+z[k+40>>2]);z[k+40>>2]=u;Q=z[k+96>>2];J=z[k+100>>2];M=z[k+104>>2];v[k+172>>2]=0;z[k+168>>2]=M-u;z[k+164>>2]=J-n;z[k+160>>2]=Q-q;q=z[k+112>>2];n=z[k+116>>2];u=z[k+120>>2];v[k+188>>2]=0;z[k+184>>2]=u-L;z[k+180>>2]=n-D;z[k+176>>2]=q-O;q=z[k+128>>2];n=z[k+132>>2];u=z[k+136>>2];v[k+204>>2]=0;z[k+200>>2]=u-P;z[k+196>>2]=n-I;z[k+192>>2]=q-A;m=v[b+4>>2];u=z[m+56>>2];A=z[m+52>>2];I=z[m+72>>2];E=m- -64|0;P=z[E>>2];O=z[m+68>>2];q=z[m+88>>2];n=z[m+80>>2];D=z[m+84>>2];L=z[m+48>>2];v[k+268>>2]=0;S=q;q=C(-H);qa=C(n*U);n=C(-G);z[k+264>>2]=C(S*q)+C(qa+C(D*n));z[k+260>>2]=C(I*q)+C(C(P*U)+C(O*n));z[k+256>>2]=C(u*q)+C(C(L*U)+C(A*n));x=HV(m,k+256|0);x=v[m+152>>2]+B(x,12)|0;q=z[x+8>>2];n=z[x>>2];u=z[x+4>>2];J=C(r+C(C(z[m+88>>2]*q)+C(C(z[m+56>>2]*n)+C(u*z[m+72>>2]))));D=C(Z-J);W=C(y+C(C(z[m+84>>2]*q)+C(C(z[m+52>>2]*n)+C(u*z[m+68>>2]))));Q=C(Y-W);V=C(s+C(C(z[m+80>>2]*q)+C(C(z[m+48>>2]*n)+C(u*z[E>>2]))));L=C(X-V);q=p;n=o;u=i;I=s;P=y;O=r;i=C(34028234663852886e22)}else{i=A}}else{i=A}G=i;x=v[k+224>>2];E=x<<4;m=E+(k+96|0)|0;v[m+12>>2]=0;z[m+8>>2]=Z;z[m+4>>2]=Y;z[m>>2]=X;m=E+(k+32|0)|0;v[m+12>>2]=0;z[m+8>>2]=J;z[m+4>>2]=W;z[m>>2]=V;m=E+(k+160|0)|0;v[m+12>>2]=0;z[m+8>>2]=D;z[m+4>>2]=Q;z[m>>2]=L;v[k+224>>2]=x+1;c:{d:{switch(x-1|0){case 0:s=z[k+168>>2];i=C(z[k+184>>2]-s);y=z[k+160>>2];o=C(z[k+176>>2]-y);r=z[k+164>>2];p=C(z[k+180>>2]-r);A=C(C(i*i)+C(C(o*o)+C(p*p)));if(A<=C(1.1920928955078125e-7)){v[k+224>>2]=1;m=v[k+164>>2];v[k+256>>2]=v[k+160>>2];v[k+260>>2]=m;m=v[k+172>>2];v[k+264>>2]=v[k+168>>2];v[k+268>>2]=m;break c}S=i;i=C(F(C(C(C(C(C(-y)*o)-C(p*r))-C(s*i))/A),C(1)));i=i>C(0)?i:C(0);z[k+264>>2]=s+C(S*i);z[k+260>>2]=r+C(p*i);z[k+256>>2]=y+C(o*i);break c;case 1:JV(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break c;case 2:N_(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break c;default:break d}}z[k+264>>2]=D;z[k+260>>2]=Q;z[k+256>>2]=L}s=z[k+264>>2];i=C(-s);y=z[k+260>>2];o=C(-y);r=z[k+256>>2];p=C(-r);A=C(C(s*s)+C(C(r*r)+C(y*y)));if(la>2]}d=w[m+32|0];I=C(0);D=C(0);m=!(A>ka)|x;i=m?u:i;p=m?q:p;o=m?n:o;q=C(K(C(C(i*i)+C(C(p*p)+C(o*o)))));if(!(q<=C(1.1920928955078125e-7))){n=i;i=C(C(1)/q);ra=C(n*i);D=C(p*i);I=C(o*i)}v[l+268>>2]=0;z[l+264>>2]=-ra;z[l+260>>2]=-I;z[l+256>>2]=-D;z[l+240>>2]=N;v[l+252>>2]=v[k+236>>2];m=v[k+232>>2];v[l+244>>2]=v[k+228>>2];v[l+248>>2]=m;v[k+268>>2]=0;z[k+264>>2]=x?ja:s;z[k+260>>2]=x?ia:y;z[k+256>>2]=x?T:r;m=v[k+252>>2];E=v[k+248>>2];v[k+24>>2]=E;v[k+28>>2]=m;x=v[k+244>>2];ca=v[k+240>>2];v[k+16>>2]=ca;v[k+20>>2]=x;v[k+8>>2]=E;v[k+12>>2]=m;v[k>>2]=ca;v[k+4>>2]=x;IV(k+160|0,k+96|0,k+32|0,k+256|0,k+16|0,k,v[k+224>>2]);i=z[v[a+4>>2]+16>>2];o=z[k+16>>2];p=z[k+20>>2];q=z[k+24>>2];v[l+284>>2]=0;z[l+280>>2]=q+(d?C(ra*i):C(-0));z[l+276>>2]=p+(d?C(I*i):C(-0));z[l+272>>2]=o+(d?C(D*i):C(-0));m=1}xa=k+272|0;if(m){d=v[l+244>>2];v[f>>2]=v[l+240>>2];v[f+4>>2]=d;d=v[l+252>>2];v[f+8>>2]=v[l+248>>2];v[f+12>>2]=d;if(!(!j|z[l+240>>2]!=C(0))){j=v[a+4>>2];k=v[b+4>>2];z[l+224>>2]=C(z[j+16>>2]+z[k+16>>2])*C(100);t[l+215|0]=0;v[l+168>>2]=0;v[l+172>>2]=0;v[l+160>>2]=0;v[l+164>>2]=0;v[l+152>>2]=0;v[l+156>>2]=0;v[l+144>>2]=0;v[l+148>>2]=0;v[l+136>>2]=0;v[l+140>>2]=0;v[l+128>>2]=0;v[l+132>>2]=0;v[l+192>>2]=0;d=v[a+8>>2];v[l+56>>2]=d;v[l+48>>2]=141468;v[l+52>>2]=j;j=v[d+12>>2];v[l+72>>2]=v[d+8>>2];v[l+76>>2]=j;j=v[d+20>>2];v[l+80>>2]=v[d+16>>2];v[l+84>>2]=j;j=v[d+28>>2];v[l+88>>2]=v[d+24>>2];v[l+92>>2]=j;j=v[d+36>>2];v[l+96>>2]=v[d+32>>2];v[l+100>>2]=j;j=v[d+44>>2];v[l+104>>2]=v[d+40>>2];v[l+108>>2]=j;j=v[d+52>>2];v[l+112>>2]=v[d+48>>2];v[l+116>>2]=j;j=v[d+60>>2];v[l+120>>2]=v[d+56>>2];v[l+124>>2]=j;j=v[d+4>>2];v[l+64>>2]=v[d>>2];v[l+68>>2]=j;i=z[l+68>>2];z[l+68>>2]=z[l+80>>2];o=z[l+88>>2];p=z[l+72>>2];z[l+72>>2]=z[l+96>>2];z[l+80>>2]=i;z[l+96>>2]=p;z[l+88>>2]=z[l+100>>2];z[l+100>>2]=o;v[l+40>>2]=141216;v[l+44>>2]=k;e:{f:{if(MX(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 f}v[l+16>>2]=1065353216;c=v[l+28>>2];v[l+8>>2]=v[l+24>>2];v[l+12>>2]=c;c=v[l+20>>2];v[l>>2]=v[l+16>>2];v[l+4>>2]=c;if(J_(a,b,l+220|0,l+216|0,w[l+215|0],0,l,l+128|0)-5>>>0<=1){break f}v[l+280>>2]=0;v[l+284>>2]=0;v[l+272>>2]=0;v[l+276>>2]=0;i=z[e+8>>2];o=z[e>>2];p=z[e+4>>2];v[l+268>>2]=0;q=C(C(1)/C(K(C(C(i*i)+C(C(o*o)+C(p*p))))));z[l+264>>2]=q*C(-i);z[l+260>>2]=q*C(-p);z[l+256>>2]=q*C(-o);i=C(0);break e}a=v[l+140>>2];v[l+280>>2]=v[l+136>>2];v[l+284>>2]=a;a=v[l+132>>2];v[l+272>>2]=v[l+128>>2];v[l+276>>2]=a;a=v[l+164>>2];v[l+256>>2]=v[l+160>>2];v[l+260>>2]=a;a=v[l+172>>2];v[l+264>>2]=v[l+168>>2];v[l+268>>2]=a;i=z[l+192>>2]}z[f>>2]=i>2];v[h>>2]=v[l+272>>2];v[h+4>>2]=a;a=v[l+284>>2];v[h+8>>2]=v[l+280>>2];v[h+12>>2]=a;a=v[l+260>>2];v[g>>2]=v[l+256>>2];v[g+4>>2]=a;a=v[l+268>>2];v[g+8>>2]=v[l+264>>2];v[g+12>>2]=a}xa=l+288|0;return m}function xC(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=0,t=0,u=C(0),A=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;if(w[a+7648|0]){a=1}else{p=a+16|0;e=xa-160|0;xa=e;r=b+72|0;a=1;a:{b:{switch(x[b+98>>1]){case 3:if(x[b+96>>1]){a=v[b+52>>2];h=v[b+48>>2];d=z[b+56>>2];v[e+28>>2]=0;z[e+24>>2]=d;v[e+16>>2]=h;v[e+20>>2]=a;d=z[b+8>>2];f=z[b+4>>2];u=z[b>>2];z[e>>2]=u;z[e+4>>2]=f;v[e+12>>2]=0;z[e+8>>2]=d;m=z[b+24>>2];j=z[b+36>>2];g=z[b+16>>2];n=z[b+28>>2];k=z[b+40>>2];i=z[b+20>>2];o=z[b+32>>2];l=z[b+44>>2];A=z[b+12>>2];v[e+140>>2]=0;v[e+124>>2]=0;v[e+108>>2]=0;v[e+92>>2]=0;v[e+76>>2]=0;z[e+72>>2]=l;z[e+68>>2]=o;z[e- -64>>2]=i;v[e+60>>2]=0;z[e+56>>2]=k;z[e+52>>2]=n;z[e+48>>2]=g;v[e+44>>2]=0;z[e+40>>2]=j;z[e+36>>2]=m;l=C((l>C(0)?l:C(-l))+C(9.999999974752427e-7));z[e+120>>2]=l;o=C((o>C(0)?o:C(-o))+C(9.999999974752427e-7));z[e+116>>2]=o;i=C((i>C(0)?i:C(-i))+C(9.999999974752427e-7));z[e+112>>2]=i;k=C((k>C(0)?k:C(-k))+C(9.999999974752427e-7));z[e+104>>2]=k;n=C((n>C(0)?n:C(-n))+C(9.999999974752427e-7));z[e+100>>2]=n;g=C((g>C(0)?g:C(-g))+C(9.999999974752427e-7));z[e+96>>2]=g;j=C((j>C(0)?j:C(-j))+C(9.999999974752427e-7));z[e+88>>2]=j;m=C((m>C(0)?m:C(-m))+C(9.999999974752427e-7));z[e+84>>2]=m;z[e+136>>2]=C(l*d)+C(C(i*u)+C(f*o));z[e+132>>2]=C(k*d)+C(C(g*u)+C(f*n));z[e+32>>2]=A;g=C((A>C(0)?A:C(-A))+C(9.999999974752427e-7));z[e+80>>2]=g;z[e+128>>2]=C(j*d)+C(C(g*u)+C(f*m));a=mC(p,e,c,r);break a}z[e>>2]=z[b+72>>2];z[e+4>>2]=z[b+76>>2];z[e+8>>2]=z[b+80>>2];z[e+12>>2]=z[b+84>>2];z[e+16>>2]=z[b+88>>2];z[e+20>>2]=z[b+92>>2];q=xa-16|0;xa=q;b=v[p+28>>2];c:{if(b){while(1){a=B(h,24)+p|0;d:{if(z[e>>2]>z[a+172>>2]|z[a+160>>2]>z[e+12>>2]|(z[e+4>>2]>z[a+176>>2]|z[a+164>>2]>z[e+16>>2])){break d}if(z[e+8>>2]>z[a+180>>2]|z[a+168>>2]>z[e+20>>2]){break d}v[q+8>>2]=-1082130432;if(!(Ba[v[v[c>>2]>>2]](c,q+8|0,((h<<3)+p|0)+32|0)|0)){h=0;break c}b=v[p+28>>2]}h=h+1|0;if(h>>>0>>0){continue}break}}h=1;if(!v[p+636>>2]){break c}d=z[p+656>>2];f=z[p+672>>2];if(z[e>>2]>C(d+f)|z[e+12>>2]>2];f=z[p+676>>2];if(z[e+4>>2]>C(d+f)|z[e+16>>2]>2];f=z[p+680>>2];if(z[e+8>>2]>C(d+f)|z[e+20>>2]>2]<<2)|0;a=v[b>>2];H=(a|0)<0?a^-1:a|-2147483648;a=v[b+12>>2];I=(a|0)<0?a^-1:a|-2147483648;J=p+688|0;D=1;while(1){e:{b=t<<2;f:{if(!v[b+J>>2]){break f}a=(t<<5)+p|0;d=z[a+736>>2];f=z[a+752>>2];if(z[e>>2]>C(d+f)|z[e+12>>2]>2];f=z[a+756>>2];if(z[e+4>>2]>C(d+f)|z[e+16>>2]>2];f=z[a+760>>2];if(z[e+8>>2]>C(d+f)|z[e+20>>2]>2]){break g}b=E+(a<<5)|0;d=z[b+960>>2];f=z[b+976>>2];if(z[e>>2]>C(d+f)|z[e+12>>2]>2];f=z[b+980>>2];if(z[e+4>>2]>C(d+f)|z[e+16>>2]>2];f=z[b+984>>2];if(z[e+8>>2]>C(d+f)|z[e+20>>2]>2];i:{if(!b){break i}h=F+(r<<5)|0;d=z[h+2080>>2];f=z[h+2096>>2];if(z[e>>2]>C(d+f)|z[e+12>>2]>2];f=z[h+2100>>2];if(z[e+4>>2]>C(d+f)|z[e+16>>2]>2];f=z[h+2104>>2];if(z[e+8>>2]>C(d+f)|z[e+20>>2]>2]+(v[M+932>>2]+v[K+708>>2]|0)|0;h=v[p+20>>2]+(s<<5)|0;s=v[p+24>>2]+(s<<3)|0;while(1){j:{if(H>>>0>y[h+28>>2]){break j}if(I>>>0>2]){break i}d=z[h>>2];f=z[h+16>>2];if(z[e>>2]>C(d+f)|z[e+12>>2]>2];f=z[h+20>>2];if(z[e+4>>2]>C(d+f)|z[e+16>>2]>2];f=z[h+24>>2];if(z[e+8>>2]>C(d+f)|z[e+20>>2]>2]=-1082130432;if(!(Ba[v[v[c>>2]>>2]](c,q+12|0,s)|0)){break h}}s=s+8|0;h=h+32|0;b=b-1|0;if(b){continue}break}}G=r>>>0<4;r=r+1|0;if((r|0)!=5){continue}break g}break}if(G){break e}}a=a+1|0;if((a|0)!=5){continue}break}}D=t>>>0<4;t=t+1|0;if((t|0)!=5){continue}}break}h=!D}xa=q+16|0;a=h&1;break a;case 2:a=v[b+52>>2];h=v[b+48>>2];d=z[b+56>>2];v[e+28>>2]=0;z[e+24>>2]=d;v[e+16>>2]=h;v[e+20>>2]=a;d=z[b+8>>2];f=z[b+4>>2];u=z[b>>2];z[e>>2]=u;z[e+4>>2]=f;v[e+12>>2]=0;z[e+8>>2]=d;m=z[b+24>>2];j=z[b+36>>2];g=z[b+16>>2];n=z[b+28>>2];k=z[b+40>>2];i=z[b+20>>2];o=z[b+32>>2];l=z[b+44>>2];A=z[b+12>>2];v[e+140>>2]=0;v[e+124>>2]=0;v[e+108>>2]=0;v[e+92>>2]=0;v[e+76>>2]=0;z[e+72>>2]=l;z[e+68>>2]=o;z[e- -64>>2]=i;v[e+60>>2]=0;z[e+56>>2]=k;z[e+52>>2]=n;z[e+48>>2]=g;v[e+44>>2]=0;z[e+40>>2]=j;z[e+36>>2]=m;l=C((l>C(0)?l:C(-l))+C(9.999999974752427e-7));z[e+120>>2]=l;o=C((o>C(0)?o:C(-o))+C(9.999999974752427e-7));z[e+116>>2]=o;i=C((i>C(0)?i:C(-i))+C(9.999999974752427e-7));z[e+112>>2]=i;k=C((k>C(0)?k:C(-k))+C(9.999999974752427e-7));z[e+104>>2]=k;n=C((n>C(0)?n:C(-n))+C(9.999999974752427e-7));z[e+100>>2]=n;g=C((g>C(0)?g:C(-g))+C(9.999999974752427e-7));z[e+96>>2]=g;j=C((j>C(0)?j:C(-j))+C(9.999999974752427e-7));z[e+88>>2]=j;m=C((m>C(0)?m:C(-m))+C(9.999999974752427e-7));z[e+84>>2]=m;z[e+136>>2]=C(l*d)+C(C(i*u)+C(f*o));z[e+132>>2]=C(k*d)+C(C(g*u)+C(f*n));z[e+32>>2]=A;g=C((A>C(0)?A:C(-A))+C(9.999999974752427e-7));z[e+80>>2]=g;z[e+128>>2]=C(j*d)+C(C(g*u)+C(f*m));a=mC(p,e,c,r);break a;case 0:d=z[b+108>>2];a=v[b+104>>2];D=v[b+100>>2];v[e+12>>2]=0;z[e+8>>2]=d;v[e>>2]=D;v[e+4>>2]=a;d=z[b+112>>2];z[e+16>>2]=d*d;s=xa-16|0;xa=s;b=v[p+28>>2];k:{if(b){while(1){a=B(h,24)+p|0;f=z[a+168>>2];m=z[a+180>>2];d=C(z[e+8>>2]-C(C(f+m)*C(.5)));f=C(C(m-f)*C(.5));m=d>2];n=z[a+172>>2];j=C(z[e>>2]-C(C(g+n)*C(.5)));g=C(C(n-g)*C(.5));n=g>j?j:g;i=z[a+164>>2];o=z[a+176>>2];k=C(z[e+4>>2]-C(C(i+o)*C(.5)));i=C(C(o-i)*C(.5));o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d)))){v[s+8>>2]=-1082130432;if(!(Ba[v[v[c>>2]>>2]](c,s+8|0,((h<<3)+p|0)+32|0)|0)){break k}b=v[p+28>>2]}h=h+1|0;if(h>>>0>>0){continue}break}}q=1;if(!v[p+636>>2]){break k}d=C(z[e+8>>2]-z[p+664>>2]);f=z[p+680>>2];m=d>2]-z[p+656>>2]);g=z[p+672>>2];n=g>j?j:g;k=C(z[e+4>>2]-z[p+660>>2]);i=z[p+676>>2];o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d))))){break k}b=r+(v[p+644>>2]<<2)|0;a=v[b>>2];H=(a|0)<0?a^-1:a|-2147483648;a=v[b+12>>2];I=(a|0)<0?a^-1:a|-2147483648;J=p+688|0;D=1;while(1){l:{b=t<<2;m:{if(!v[b+J>>2]){break m}a=(t<<5)+p|0;d=C(z[e+8>>2]-z[a+744>>2]);f=z[a+760>>2];m=d>2]-z[a+736>>2]);g=z[a+752>>2];n=g>j?j:g;k=C(z[e+4>>2]-z[a+740>>2]);i=z[a+756>>2];o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d))))){break m}K=b+p|0;E=B(t,224)+p|0;L=E+912|0;a=0;while(1){h=a<<2;n:{if(!v[h+L>>2]){break n}b=E+(a<<5)|0;d=C(z[e+8>>2]-z[b+968>>2]);f=z[b+984>>2];m=d>2]-z[b+960>>2]);g=z[b+976>>2];n=g>j?j:g;k=C(z[e+4>>2]-z[b+964>>2]);i=z[b+980>>2];o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d))))){break n}M=h+E|0;F=(B(t,1120)+p|0)+B(a,224)|0;N=F+2032|0;r=0;G=1;while(1){o:{q=r<<2;b=v[q+N>>2];p:{if(!b){break p}h=F+(r<<5)|0;d=C(z[e+8>>2]-z[h+2088>>2]);f=z[h+2104>>2];m=d>2]-z[h+2080>>2]);g=z[h+2096>>2];n=g>j?j:g;k=C(z[e+4>>2]-z[h+2084>>2]);i=z[h+2100>>2];o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d))))){break p}h=v[(q+F|0)+2052>>2]+(v[M+932>>2]+v[K+708>>2]|0)|0;q=v[p+20>>2]+(h<<5)|0;h=v[p+24>>2]+(h<<3)|0;while(1){q:{if(H>>>0>y[q+28>>2]){break q}if(I>>>0>2]){break p}d=C(z[e+8>>2]-z[q+8>>2]);f=z[q+24>>2];m=d>2]-z[q>>2]);g=z[q+16>>2];n=g>j?j:g;k=C(z[e+4>>2]-z[q+4>>2]);i=z[q+20>>2];o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d))))){break q}v[s+12>>2]=-1082130432;if(!(Ba[v[v[c>>2]>>2]](c,s+12|0,h)|0)){break o}}h=h+8|0;q=q+32|0;b=b-1|0;if(b){continue}break}}G=r>>>0<4;r=r+1|0;if((r|0)!=5){continue}break n}break}if(G){break l}}a=a+1|0;if((a|0)!=5){continue}break}}D=t>>>0<4;t=t+1|0;if((t|0)!=5){continue}}break}q=!D}xa=s+16|0;a=q&1;break a;case 4:break b;default:break a}}a=v[b+52>>2];h=v[b+48>>2];d=z[b+56>>2];v[e+28>>2]=0;z[e+24>>2]=d;v[e+16>>2]=h;v[e+20>>2]=a;d=z[b+8>>2];f=z[b+4>>2];u=z[b>>2];z[e>>2]=u;z[e+4>>2]=f;v[e+12>>2]=0;z[e+8>>2]=d;m=z[b+24>>2];j=z[b+36>>2];g=z[b+16>>2];n=z[b+28>>2];k=z[b+40>>2];i=z[b+20>>2];o=z[b+32>>2];l=z[b+44>>2];A=z[b+12>>2];v[e+140>>2]=0;v[e+124>>2]=0;v[e+108>>2]=0;v[e+92>>2]=0;v[e+76>>2]=0;z[e+72>>2]=l;z[e+68>>2]=o;z[e- -64>>2]=i;v[e+60>>2]=0;z[e+56>>2]=k;z[e+52>>2]=n;z[e+48>>2]=g;v[e+44>>2]=0;z[e+40>>2]=j;z[e+36>>2]=m;l=C((l>C(0)?l:C(-l))+C(9.999999974752427e-7));z[e+120>>2]=l;o=C((o>C(0)?o:C(-o))+C(9.999999974752427e-7));z[e+116>>2]=o;i=C((i>C(0)?i:C(-i))+C(9.999999974752427e-7));z[e+112>>2]=i;k=C((k>C(0)?k:C(-k))+C(9.999999974752427e-7));z[e+104>>2]=k;n=C((n>C(0)?n:C(-n))+C(9.999999974752427e-7));z[e+100>>2]=n;g=C((g>C(0)?g:C(-g))+C(9.999999974752427e-7));z[e+96>>2]=g;j=C((j>C(0)?j:C(-j))+C(9.999999974752427e-7));z[e+88>>2]=j;m=C((m>C(0)?m:C(-m))+C(9.999999974752427e-7));z[e+84>>2]=m;z[e+136>>2]=C(l*d)+C(C(i*u)+C(f*o));z[e+132>>2]=C(k*d)+C(C(g*u)+C(f*n));z[e+32>>2]=A;g=C((A>C(0)?A:C(-A))+C(9.999999974752427e-7));z[e+80>>2]=g;z[e+128>>2]=C(j*d)+C(C(g*u)+C(f*m));a=mC(p,e,c,r)}xa=e+160|0}return a|0} -function wI(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,u=0,z=0,A=0,C=0,D=0,E=0,F=0;l=xa-96|0;xa=l;b=a+388|0;g=v[a+392>>2];a:{if(!g){break a}j=v[b>>2];if(g-1>>>0>=3){e=g&-4;while(1){i=c<<2;v[v[i+j>>2]+20>>2]=-1;v[v[j+(i|4)>>2]+20>>2]=-1;v[v[j+(i|8)>>2]+20>>2]=-1;v[v[j+(i|12)>>2]+20>>2]=-1;c=c+4|0;f=f+4|0;if((e|0)!=(f|0)){continue}break}}e=g&3;if(!e){break a}while(1){v[v[j+(c<<2)>>2]+20>>2]=-1;c=c+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}b:{if(g>>>0>=(v[a+396>>2]>>>1&1073741823)>>>0){v[a+392>>2]=0;break b}v[l+16>>2]=0;e=v[b+4>>2];if((e|0)<0){c=v[b>>2];d=c+(e<<2)|0;while(1){v[d>>2]=v[l+16>>2];d=d+4|0;if(c>>>0>d>>>0){continue}break}}v[b+4>>2]=0;e=b;c=0;d=v[a+392>>2];c:{if(!d){break c}i=d<<2;if(!i){break c}c=v[37696];b=c+12|0;c=(A=b,C=i,D=Ba[v[v[c>>2]+20>>2]](c)|0?59049:63804,E=16608,F=553,z=v[v[b>>2]+8>>2],Ba[z](A|0,C|0,D|0,E|0,F|0)|0)}g=v[e>>2];b=v[e+4>>2];if((b|0)>0){i=(b<<2)+c|0;b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}g=v[e>>2]}if(!(!g|v[e+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,g)}v[e+8>>2]=d;v[e>>2]=c}if(v[a+488>>2]){m=a+340|0;j=a+316|0;g=a+328|0;i=a+304|0;d=0;while(1){k=v[v[a+484>>2]+(d<<2)>>2];if(v[k+36>>2]){e=v[k+32>>2];h=0;while(1){f=v[v[k+28>>2]>>2]+B(e+h|0,12)|0;c=v[a+308>>2];d:{if(c>>>0>=(v[a+312>>2]&2147483647)>>>0){rI(i,f);break d}b=v[f+4>>2];c=v[a+304>>2]+B(c,12)|0;v[c>>2]=v[f>>2];v[c+4>>2]=b;v[c+8>>2]=v[f+8>>2];v[a+308>>2]=v[a+308>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}if(v[k+60>>2]){e=v[k+56>>2];h=0;while(1){f=v[v[k+52>>2]>>2]+B(e+h|0,12)|0;c=v[a+332>>2];e:{if(c>>>0>=(v[a+336>>2]&2147483647)>>>0){rI(g,f);break e}b=v[f+4>>2];c=v[a+328>>2]+B(c,12)|0;v[c>>2]=v[f>>2];v[c+4>>2]=b;v[c+8>>2]=v[f+8>>2];v[a+332>>2]=v[a+332>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}if(v[k+48>>2]){e=v[k+44>>2];h=0;while(1){f=v[v[k+40>>2]>>2]+B(e+h|0,12)|0;c=v[a+320>>2];f:{if(c>>>0>=(v[a+324>>2]&2147483647)>>>0){rI(j,f);break f}b=v[f+4>>2];c=v[a+316>>2]+B(c,12)|0;v[c>>2]=v[f>>2];v[c+4>>2]=b;v[c+8>>2]=v[f+8>>2];v[a+320>>2]=v[a+320>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}if(v[k+72>>2]){e=v[k+68>>2];h=0;while(1){f=v[v[k+64>>2]>>2]+B(e+h|0,12)|0;c=v[a+344>>2];g:{if(c>>>0>=(v[a+348>>2]&2147483647)>>>0){rI(m,f);break g}b=v[f+4>>2];c=v[a+340>>2]+B(c,12)|0;v[c>>2]=v[f>>2];v[c+4>>2]=b;v[c+8>>2]=v[f+8>>2];v[a+344>>2]=v[a+344>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}d=d+1|0;if(d>>>0>2]){continue}break}}h=0;v[a+488>>2]=0;t[l+80|0]=1;v[l+88>>2]=0;v[l+92>>2]=16;v[l+84>>2]=l+16;b=v[a+560>>2];c=v[b>>2];if(c){v[b>>2]=v[c>>2]}v[l+12>>2]=c;if(c){while(1){BI(c+4|0);BI(c+16|0);BI(c+28|0);BI(c+40|0);b=v[l+88>>2];h:{if(b>>>0>=(v[l+92>>2]&2147483647)>>>0){c=0;e=l+16|0;b=v[e+76>>2];d=b&2147483647?b<<1:1;i:{if(!d){break i}i=d<<2;if(!(w[e+64|0]|i>>>0>64)){t[e+64|0]=1;c=e;break i}if(!i){break i}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?61907:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,i,b,16608,553)|0}p=v[e+72>>2];i=(p<<2)+c|0;if((p|0)>0){f=v[e+68>>2];b=c;while(1){v[b>>2]=v[f>>2];f=f+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[l+12>>2];j:{if(v[e+76>>2]<0){break j}i=v[e+68>>2];if((i|0)==(e|0)){t[e+64|0]=0;break j}if(!i){break j}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,i);p=v[e+72>>2]}v[e+76>>2]=d;v[e+68>>2]=c;v[e+72>>2]=p+1;break h}v[v[l+84>>2]+(b<<2)>>2]=v[l+12>>2];v[l+88>>2]=b+1}b=v[a+560>>2];c=v[b>>2];if(c){v[b>>2]=v[c>>2]}v[l+12>>2]=c;if(c){continue}break}}if(v[l+88>>2]){while(1){c=v[v[l+84>>2]+(h<<2)>>2];b=v[a+560>>2];v[c>>2]=v[b>>2];v[b>>2]=c;h=h+1|0;if(h>>>0>2]){continue}break}}b=v[l+92>>2];k:{if((b|0)<0|!(b&2147483647)){break k}c=v[l+84>>2];if((c|0)==(l+16|0)|!c){break k}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}b=v[a+272>>2];h=Ba[v[v[b>>2]+52>>2]](b)|0;b=v[a+272>>2];c=Ba[v[v[b>>2]+56>>2]](b)|0;if(h){b=1073741823;d=1073741823;while(1){h=h-1|0;i=v[c>>2];e=v[c+4>>2];if(!((i|0)==(d|0)&(e|0)==(b|0))){n=xa-16|0;xa=n;q=v[a+196>>2];k=v[c+4>>2];j=q+(k<<3)|0;g=v[j+4>>2];m=v[c>>2];d=q+(m<<3)|0;b=v[d+4>>2];l:{if((g&b)==-1){d=v[d>>2];b=v[j>>2];v[n+4>>2]=k;v[n>>2]=m;d=d&3;b=b&3;g=B((b|0)<(d|0)?d:b,12)+a|0;d=g+304|0;b=v[g+308>>2];if(b>>>0>=(v[g+312>>2]&2147483647)>>>0){rI(d,n);break l}d=v[d>>2]+B(b,12)|0;b=v[n+4>>2];v[d>>2]=v[n>>2];v[d+4>>2]=b;v[d+8>>2]=v[n+8>>2];v[g+308>>2]=v[g+308>>2]+1;break l}f=k>>>0>>0?k:m;m=k>>>0>m>>>0?k:m;m:{if(!((b|0)==-1|(g|0)==-1)){b=v[a+376>>2];j=v[b+(v[(q+(m<<3)|0)+4>>2]<<1&-4)>>2];g=v[b+(v[(q+(f<<3)|0)+4>>2]<<1&-4)>>2];d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?31647:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,56,b,8887,1822)|0;v[b+4>>2]=-1;v[b>>2]=130904;v[b+8>>2]=0;v[b+12>>2]=0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b>>2]=130600;t[b+36|0]=0;v[b+40>>2]=v[g>>2];d=v[j>>2];v[b+52>>2]=j;v[b+48>>2]=g;v[b+44>>2]=d;o=a+444|0;break m}b=v[(q+(f<<3)|0)+4>>2];g=(b|0)!=-1&b;j=v[v[a+376>>2]+(v[(q+((g?f:m)<<3)|0)+4>>2]<<1&-4)>>2];d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?31495:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,52,b,8887,1809)|0;v[b+4>>2]=-1;v[b>>2]=130904;v[b+8>>2]=0;v[b+12>>2]=0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b>>2]=130576;t[b+36|0]=0;d=v[j>>2];v[b+48>>2]=j;v[b+44>>2]=g?m:f;v[b+40>>2]=d;o=a+404|0}v[n+4>>2]=m;v[n>>2]=f;k=0;n:{o:{q=v[o+20>>2];p:{if(!q){break p}m=v[n>>2];j=v[n+4>>2];d=m&65535|j<<16;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;k=q-1&(d>>>16^d);p=v[v[o+12>>2]+(k<<2)>>2];if((p|0)==-1){break p}g=v[o+8>>2];d=v[o+4>>2];while(1){f=d+B(p,12)|0;if((m|0)==v[f>>2]&(j|0)==v[f+4>>2]){break o}p=v[g+(p<<2)>>2];if((p|0)!=-1){continue}break}}t[n+15|0]=0;if(v[o+36>>2]==v[o+16>>2]){d=q?q<<1:16;if(d>>>0>q>>>0){jI(o,d);q=v[o+20>>2]}d=x[n>>1]|v[n+4>>2]<<16;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;k=q-1&(d>>>16^d)}g=v[o+28>>2];v[o+28>>2]=g+1;d=v[o+12>>2]+(k<<2)|0;v[v[o+8>>2]+(g<<2)>>2]=v[d>>2];v[d>>2]=g;v[o+36>>2]=v[o+36>>2]+1;v[o+32>>2]=v[o+32>>2]+1;j=v[o+4>>2]+B(g,12)|0;break n}t[n+15|0]=1;j=f}if(!w[n+15|0]){g=v[n+4>>2];d=v[n>>2];v[j+8>>2]=b;v[j>>2]=d;v[j+4>>2]=g}aI(b,v[a+400>>2],v[v[a+276>>2]+4>>2],v[v[a+192>>2]+4>>2],v[a+180>>2],a+208|0,a+196|0,a+304|0,a+328|0)}xa=n+16|0;d=i;b=e}c=c+8|0;if(h){continue}break}}g=v[a+320>>2]+v[a+308>>2]|0;c=v[a+532>>2];q:{if(!c){c=0;break q}if(!v[a+548>>2]){break q}I9(v[a+524>>2],255,c<<2);c=0;j=v[a+520>>2];b=v[a+528>>2];i=b-1|0;if(i){h=0;if(b-2>>>0>=3){e=i&-4;d=0;while(1){b=c|1;v[j+(c<<2)>>2]=b;f=j+(b<<2)|0;b=c|2;v[f>>2]=b;f=j+(b<<2)|0;b=c|3;v[f>>2]=b;c=c+4|0;v[j+(b<<2)>>2]=c;d=d+4|0;if((e|0)!=(d|0)){continue}break}}b=i&3;if(b){while(1){e=j+(c<<2)|0;c=c+1|0;v[e>>2]=c;h=h+1|0;if((b|0)!=(h|0)){continue}break}}b=v[a+528>>2]-1|0}else{b=0}v[j+(b<<2)>>2]=-1;v[a+548>>2]=0;v[a+540>>2]=0;c=v[a+532>>2]}o=a+512|0;if(c>>>0>>0){kI(o,g)}while(1){r=B(s,12)+a|0;u=v[r+332>>2];m=v[r+308>>2];r:{if(!m){break r}b=0;if(!u){i=v[a+196>>2];e=v[r+304>>2];h=0;if((m|0)!=1){b=m&-2;f=0;while(1){c=e+B(h,12)|0;v[c>>2]=v[i+(v[c>>2]<<3)>>2]&-4;v[c+4>>2]=v[i+(v[c+4>>2]<<3)>>2]&-4;c=e+B(h|1,12)|0;v[c>>2]=v[i+(v[c>>2]<<3)>>2]&-4;v[c+4>>2]=v[i+(v[c+4>>2]<<3)>>2]&-4;h=h+2|0;f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!(m&1)){break r}b=e+B(h,12)|0;v[b>>2]=v[i+(v[b>>2]<<3)>>2]&-4;v[b+4>>2]=v[i+(v[b+4>>2]<<3)>>2]&-4;break r}while(1){e=v[r+304>>2]+B(b,12)|0;f=v[e>>2];c=v[a+196>>2];v[e>>2]=v[c+(f<<3)>>2]&-4;j=v[e+4>>2];v[e+4>>2]=v[c+(j<<3)>>2]&-4;p=0;d=v[a+532>>2];s:{t:{if(!d){break t}c=f&65535|j<<16;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;p=d-1&(c>>>16^c);c=v[v[a+524>>2]+(p<<2)>>2];if((c|0)==-1){break t}g=v[a+520>>2];i=v[a+516>>2];while(1){e=i+(c<<3)|0;if((f|0)==v[e>>2]&(j|0)==v[e+4>>2]){break s}c=v[g+(c<<2)>>2];if((c|0)!=-1){continue}break}}c=v[a+540>>2];if((c|0)==-1){c=-1;e=d?d<<1:16;if(e>>>0>d>>>0){kI(o,e);d=v[a+532>>2];c=v[a+540>>2]}e=f&65535|j<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;p=d-1&(e>>>16^e)}e=v[a+520>>2]+(c<<2)|0;v[a+540>>2]=v[e>>2];d=e;e=v[a+524>>2]+(p<<2)|0;v[d>>2]=v[e>>2];v[e>>2]=c;v[a+548>>2]=v[a+548>>2]+1;v[a+544>>2]=v[a+544>>2]+1;c=v[a+516>>2]+(c<<3)|0;v[c>>2]=f;v[c+4>>2]=j}b=b+1|0;if((m|0)!=(b|0)){continue}break}}u:{if(!u){d=0;break u}f=v[a+532>>2]-1|0;q=v[a+196>>2];m=v[a+516>>2];j=v[a+524>>2];g=v[a+548>>2];k=v[r+328>>2];b=0;d=0;while(1){c=k+B(b,12)|0;n=v[c+4>>2];p=v[c>>2];v:{w:{if(!g){break w}c=p&65535|n<<16;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[j+((f&(c>>>16^c))<<2)>>2];if((c|0)==-1){break w}i=v[a+520>>2];while(1){e=m+(c<<3)|0;if((p|0)==v[e>>2]&(n|0)==v[e+4>>2]){break v}c=v[i+(c<<2)>>2];if((c|0)!=-1){continue}break}}c=k+B(d,12)|0;v[c>>2]=v[q+(p<<3)>>2]&-4;v[c+4>>2]=v[q+(n<<3)>>2]&-4;d=d+1|0}b=b+1|0;if((u|0)!=(b|0)){continue}break}}v[r+332>>2]=d;s=s+1|0;if((s|0)!=2){continue}break}b=v[a+272>>2];c=Ba[v[v[b>>2]+28>>2]](b)|0;b=v[a+272>>2];h=Ba[v[v[b>>2]+32>>2]](b)|0;if(c){i=a+280|0;e=a+292|0;while(1){c=c-1|0;b=v[h>>2];x:{if(v[v[a+148>>2]+(b>>>3&536870908)>>2]>>>b&1){break x}b=v[a+196>>2]+(b<<3)|0;if(v[b+4>>2]==-1){b=v[b>>2]&-4;v[l+16>>2]=b;d=v[a+284>>2];if(d>>>0>=(v[a+288>>2]&2147483647)>>>0){CI(i,l+16|0);break x}v[v[a+280>>2]+(d<<2)>>2]=b;v[a+284>>2]=d+1;break x}b=v[b>>2]&-4;v[l+16>>2]=b;d=v[a+296>>2];if(d>>>0>=(v[a+300>>2]&2147483647)>>>0){CI(e,l+16|0);break x}v[v[a+292>>2]+(d<<2)>>2]=b;v[a+296>>2]=d+1}h=h+4|0;if(c){continue}break}}I9(v[a+136>>2],0,v[a+140>>2]<<2);I9(v[a+148>>2],0,v[a+152>>2]<<2);xa=l+96|0}function HY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=0,n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,L=C(0),M=C(0),N=0,O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=C(0),Z=C(0),_=C(0),$=0,aa=C(0),ba=0,ca=0,da=C(0),ea=C(0),fa=0,ga=0,ha=C(0),ia=0,ja=0,ka=C(0),la=C(0),ma=C(0);m=xa-1536|0;xa=m;$=v[b>>2];q=$+4|0;IX(m+1416|0,q,$+16|0);j=z[e+24>>2];o=z[c+24>>2];n=z[e+16>>2];s=z[c+16>>2];u=C(z[c+20>>2]-z[e+20>>2]);z[m+1404>>2]=u;j=C(o-j);z[m+1408>>2]=j;o=C(s-n);z[m+1400>>2]=o;n=z[f+20>>2];s=z[d+20>>2];r=z[f+16>>2];p=z[d+16>>2];G=C(z[d+24>>2]-z[f+24>>2]);z[m+1392>>2]=G;n=C(s-n);z[m+1388>>2]=n;s=C(p-r);z[m+1384>>2]=s;G=C(j-G);z[m+1376>>2]=G;R=C(u-n);z[m+1372>>2]=R;Q=C(o-s);z[m+1368>>2]=Q;j=C(K(C(C(G*G)+C(C(Q*Q)+C(R*R)))));if(j>C(0)){o=C(C(1)/j);z[m+1376>>2]=G*o;z[m+1372>>2]=R*o;z[m+1368>>2]=Q*o}v[m+1360>>2]=1065353216;N=m+1344|0;v[N>>2]=1065353216;v[N+4>>2]=0;v[m+1352>>2]=0;v[m+1356>>2]=0;v[m+1336>>2]=0;v[m+1340>>2]=0;v[m+1328>>2]=1065353216;v[m+1332>>2]=0;CV(m+1264|0,a- -64|0,a+76|0,m+1328|0,m+1368|0,j);a:{if(!(z[$+4>>2]!=C(1)|z[$+8>>2]!=C(1)|z[$+12>>2]!=C(1))){j=z[m+1320>>2];o=z[m+1316>>2];S=z[m+1308>>2];T=z[m+1304>>2];L=z[d+20>>2];Y=z[d+16>>2];Z=z[d+24>>2];F=z[m+1284>>2];M=z[m+1280>>2];da=z[m+1312>>2];O=z[m+1272>>2];U=z[m+1264>>2];_=z[m+1268>>2];V=z[m+1300>>2];D=z[m+1276>>2];u=z[d>>2];H=C(-u);n=z[m+1288>>2];y=C(n+n);n=z[m+1292>>2];I=C(n+n);n=z[d+4>>2];s=z[d+8>>2];r=z[m+1296>>2];A=C(r+r);E=C(C(C(H*y)-C(I*n))-C(s*A));r=z[d+12>>2];p=C(C(r*r)+C(-.5));z[m+1232>>2]=C(C(A*p)+C(r*C(C(n*y)-C(u*I))))-C(s*E);z[m+1228>>2]=C(C(I*p)+C(r*C(C(u*A)-C(s*y))))-C(n*E);D=C(D+D);M=C(M+M);F=C(F+F);W=C(C(C(H*D)-C(M*n))-C(s*F));z[m+1220>>2]=C(C(F*p)+C(r*C(C(n*D)-C(u*M))))-C(s*W);z[m+1216>>2]=C(C(M*p)+C(r*C(C(u*F)-C(s*D))))-C(n*W);V=C(V+V);T=C(T+T);S=C(S+S);aa=C(C(C(H*V)-C(T*n))-C(s*S));Z=C(Z*C(-2));Y=C(Y*C(-2));L=C(L*C(-2));ea=C(C(s*Z)+C(C(u*Y)+C(n*L)));z[m+1244>>2]=C(C(s*ea)+C(C(Z*p)-C(r*C(C(u*L)-C(Y*n)))))+C(C(C(S*p)+C(r*C(C(n*V)-C(u*T))))-C(s*aa));z[m+1240>>2]=C(C(n*ea)+C(C(L*p)-C(r*C(C(s*Y)-C(Z*u)))))+C(C(C(T*p)+C(r*C(C(u*S)-C(s*V))))-C(n*aa));ha=H;H=C(U+U);U=C(_+_);O=C(O+O);_=C(C(C(ha*H)-C(U*n))-C(s*O));z[m+1208>>2]=C(C(O*p)+C(r*C(C(n*H)-C(u*U))))-C(s*_);z[m+1204>>2]=C(C(U*p)+C(r*C(C(u*O)-C(s*H))))-C(n*_);z[m+1200>>2]=C(C(H*p)+C(r*C(C(s*U)-C(n*O))))-C(u*_);z[m+1224>>2]=C(C(y*p)+C(r*C(C(s*I)-C(n*A))))-C(u*E);z[m+1212>>2]=C(C(D*p)+C(r*C(C(s*M)-C(n*F))))-C(u*W);z[m+1236>>2]=C(C(u*ea)+C(C(Y*p)-C(r*C(C(n*Z)-C(L*s)))))+C(C(C(V*p)+C(r*C(C(s*T)-C(n*S))))-C(u*aa));break a}q_(m+1200|0,m+1264|0,d,q);j=z[m+1256>>2];o=z[m+1252>>2];da=z[m+1248>>2]}z[m+1256>>2]=j+g;z[m+1252>>2]=o+g;z[m+1248>>2]=da+g;t[m+1184|0]=1;v[m+1192>>2]=0;v[m+1196>>2]=64;q=m+928|0;v[m+1188>>2]=q;v[m+912>>2]=142052;v[m+920>>2]=q;v[m+916>>2]=2;q=v[$+40>>2];Ba[v[(x[q+4>>1]<<2)+142064>>2]](q,m+1200|0,m+912|0,1,1);ba=v[m+1192>>2];b:{if(!ba){l=C(34028234663852886e22);break b}X=v[m+1188>>2];z[m+896>>2]=z[a+76>>2];z[m+900>>2]=z[a+80>>2];z[m+904>>2]=z[a+84>>2];j=z[a+68>>2];o=z[a+64>>2];z[m+888>>2]=z[a+72>>2]+g;z[m+884>>2]=j+g;z[m+880>>2]=o+g;t[m+864|0]=1;v[m+872>>2]=0;v[m+876>>2]=64;q=m+608|0;v[m+868>>2]=q;v[m+336>>2]=0;N=q;q=m+336|0;IY(N,ba,q);t[m+592|0]=1;v[m+600>>2]=0;v[m+604>>2]=64;v[m+596>>2]=q;N=v[m+1192>>2];v[m+80>>2]=0;IY(q,N,m+80|0);P=v[m+596>>2];fa=v[m+868>>2];while(1){v[m+136>>2]=-25165825;v[m+140>>2]=-25165825;v[m+128>>2]=2122317823;v[m+132>>2]=-25165825;v[m+120>>2]=2122317823;v[m+124>>2]=2122317823;v[m+92>>2]=1;v[m+80>>2]=$;ia=X+(J<<2)|0;v[m+88>>2]=ia;v[m+96>>2]=m+1496;v[m+84>>2]=m+1416;t[m+149|0]=0;t[m+150|0]=0;t[m+151|0]=0;t[m+152|0]=0;t[m+153|0]=0;t[m+154|0]=0;t[m+155|0]=0;t[m+156|0]=0;v[m+144>>2]=0;v[m+148>>2]=0;JY(m+232|0,m+80|0);o=z[d+8>>2];j=z[m+240>>2];n=C(j+j);s=z[d>>2];j=z[m+232>>2];u=C(j+j);j=z[m+236>>2];r=C(j+j);p=z[d+4>>2];H=C(C(o*n)+C(C(s*u)+C(r*p)));j=z[d+12>>2];y=C(C(j*j)+C(-.5));c:{if(!(C(C(C(Q*C(-C(C(s*H)+C(C(u*y)+C(j*C(C(p*n)-C(r*o)))))))-C(R*C(C(p*H)+C(C(r*y)+C(j*C(C(o*u)-C(n*s)))))))-C(G*C(C(o*H)+C(C(n*y)+C(j*C(C(s*r)-C(u*p)))))))>=l)){break c}KY(m+80|0,m+232|0,f);j=z[m+240>>2];o=z[m+252>>2];z[m+8>>2]=C(j+o)*C(.5);n=z[m+236>>2];s=z[m+248>>2];z[m+4>>2]=C(n+s)*C(.5);u=z[m+232>>2];r=z[m+244>>2];z[m>>2]=C(u+r)*C(.5);z[m+1528>>2]=C(C(o-j)*C(.5))+C(.019999999552965164);z[m+1524>>2]=C(C(s-n)*C(.5))+C(.019999999552965164);z[m+1520>>2]=C(C(r-u)*C(.5))+C(.019999999552965164);j=rO(m+896|0,m+880|0,m,m+1520|0,m+1400|0,m+1384|0);if(!(j<=C(1))){break c}N=0;q=ga;d:{if(!q){break d}while(1){ca=q-1|0;ja=ca<<2;o=z[P+ja>>2];if(o<=j){N=q;break d}q=q<<2;z[q+P>>2]=o;v[q+fa>>2]=v[fa+ja>>2];q=ca;if(q){continue}break}}q=N<<2;v[q+fa>>2]=v[ia>>2];z[q+P>>2]=j;ga=ga+1|0}J=J+1|0;if((ba|0)!=(J|0)){continue}break}R=z[a+4>>2];j=z[d+8>>2];Q=z[d+24>>2];l=C(z[f+24>>2]-Q);u=C(l+l);l=z[d>>2];H=z[d+16>>2];o=C(z[f+16>>2]-H);r=C(o+o);y=z[d+20>>2];o=C(z[f+20>>2]-y);p=C(o+o);o=z[d+4>>2];G=C(C(j*u)+C(C(l*r)+C(p*o)));n=z[d+12>>2];s=C(C(n*n)+C(-.5));z[m+328>>2]=C(j*G)+C(C(u*s)-C(n*C(C(l*p)-C(r*o))));z[m+324>>2]=C(o*G)+C(C(p*s)-C(n*C(C(j*r)-C(u*l))));z[m+320>>2]=C(l*G)+C(C(r*s)-C(n*C(C(o*u)-C(p*j))));e:{if(!ga){l=C(34028234663852886e22);N=-1;R=C(0);Q=C(0);H=C(0);s=C(0);u=C(0);r=C(0);break e}u=C(z[e+24>>2]-Q);u=C(u+u);r=C(z[e+16>>2]-H);r=C(r+r);p=C(z[e+20>>2]-y);p=C(p+p);G=C(C(j*u)+C(C(l*r)+C(o*p)));ea=C(C(j*G)+C(C(u*s)-C(n*C(C(l*p)-C(r*o)))));ka=C(C(o*G)+C(C(p*s)-C(n*C(C(j*r)-C(u*l)))));la=C(C(l*G)+C(C(r*s)-C(n*C(C(o*u)-C(p*j)))));G=C(R+g);ma=C(G*G);N=-1;l=C(34028234663852886e22);ca=0;r=C(0);u=C(0);s=C(0);H=C(0);Q=C(0);R=C(0);while(1){v[m+288>>2]=-25165825;v[m+292>>2]=-25165825;v[m+280>>2]=2122317823;v[m+284>>2]=-25165825;v[m+272>>2]=2122317823;v[m+276>>2]=2122317823;v[m+244>>2]=1;ba=(ca<<2)+fa|0;v[m+240>>2]=ba;v[m+248>>2]=m+316;v[m+236>>2]=m+1416;v[m+232>>2]=$;t[m+301|0]=0;t[m+302|0]=0;t[m+303|0]=0;t[m+304|0]=0;t[m+305|0]=0;t[m+306|0]=0;t[m+307|0]=0;t[m+308|0]=0;v[m+296>>2]=0;v[m+300>>2]=0;q=B(v[ba>>2],3);J=v[$+40>>2];X=v[J+28>>2];P=v[J+24>>2];f:{if(w[J+64|0]&2){J=X+(q<<1)|0;q=x[J+4>>1];X=x[J+2>>1];J=x[J>>1];break f}J=X+(q<<2)|0;q=v[J+8>>2];X=v[J+4>>2];J=v[J>>2]}q=P+B(q,12)|0;j=z[q+8>>2];X=P+B(X,12)|0;o=z[X+8>>2];n=z[q>>2];p=z[X>>2];y=z[q+4>>2];I=z[X+4>>2];q=w[m+1488|0];P=P+B(J,12)|0;A=z[P>>2];E=z[m+1424>>2];D=z[P+4>>2];M=z[m+1436>>2];F=z[P+8>>2];W=z[m+1448>>2];V=C(C(C(A*E)+C(D*M))+C(F*W));z[m+192>>2]=V;T=z[m+1420>>2];S=z[m+1432>>2];aa=z[m+1444>>2];Z=C(C(C(A*T)+C(D*S))+C(F*aa));z[m+188>>2]=Z;ha=A;A=z[m+1416>>2];L=D;D=z[m+1428>>2];O=F;F=z[m+1440>>2];Y=C(C(C(ha*A)+C(L*D))+C(O*F));z[m+184>>2]=Y;t[m+112|0]=0;v[m+104>>2]=2139095039;v[m+108>>2]=5;v[m+172>>2]=0;L=q?p:n;U=q?I:y;O=q?o:j;_=C(C(C(E*L)+C(M*U))+C(W*O));z[m+168>>2]=_;da=C(C(C(L*T)+C(U*S))+C(O*aa));z[m+164>>2]=da;L=C(C(C(L*A)+C(U*D))+C(O*F));z[m+160>>2]=L;v[m+156>>2]=0;n=q?n:p;p=q?y:I;j=q?j:o;y=C(C(C(E*n)+C(M*p))+C(W*j));z[m+152>>2]=y;I=C(C(C(n*T)+C(p*S))+C(j*aa));z[m+148>>2]=I;A=C(C(C(n*A)+C(p*D))+C(j*F));z[m+144>>2]=A;v[m+140>>2]=0;z[m+136>>2]=V;z[m+132>>2]=Z;z[m+128>>2]=Y;v[m+92>>2]=0;v[m+96>>2]=0;v[m+100>>2]=2139095039;z[m+88>>2]=C(_+C(V+y))*C(.33333298563957214);z[m+84>>2]=C(da+C(Z+I))*C(.33333298563957214);z[m+80>>2]=C(L+C(Y+A))*C(.33333298563957214);P=v[b>>2];q=v[a>>2];t[m+72|0]=0;v[m+64>>2]=0;v[m+68>>2]=1065353216;v[m+56>>2]=0;v[m+60>>2]=0;v[m+48>>2]=0;v[m+52>>2]=1065353216;v[m+40>>2]=0;v[m+44>>2]=0;v[m+32>>2]=1065353216;v[m+36>>2]=1065353216;v[m+24>>2]=0;v[m+28>>2]=0;v[m+16>>2]=1065353216;v[m+20>>2]=0;v[m+8>>2]=0;v[m+12>>2]=0;v[m>>2]=1065353216;v[m+4>>2]=0;n=C(Ba[v[(v[q>>2]<<2)+142336>>2]](q,P,c,d,e,f,g,m+216|0,m+200|0,m,m+80|0,C(0)));p=C(-z[m+216>>2]);z[m+216>>2]=p;j=C(-z[m+220>>2]);z[m+220>>2]=j;o=C(-z[m+224>>2]);z[m+224>>2]=o;if(n<=C(0)){j=z[m+184>>2];o=z[m+188>>2];n=z[m+192>>2];p=C(y-n);z[m+8>>2]=n+p;y=C(I-o);z[m+4>>2]=o+y;I=C(A-j);z[m>>2]=j+I;A=C(_-n);z[m+1528>>2]=n+A;n=o;o=C(da-o);z[m+1524>>2]=n+o;n=j;j=C(L-j);z[m+1520>>2]=n+j;D_(m+1496|0,m+320|0,m+184|0,m,m+1520|0,m+1516|0,m+1512|0);n=C(0);E=C(z[m+1504>>2]-z[m+328>>2]);D=C(E*E);E=C(z[m+1496>>2]-z[m+320>>2]);F=C(E*E);E=C(z[m+1500>>2]-z[m+324>>2]);E=C(D+C(F+C(E*E)));if(E>2])+C(C(o*z[m+184>>2])+C(j*z[m+188>>2]))))>2];j=z[m+8>>2];I=C(j+j);A=z[d>>2];j=z[m>>2];E=C(j+j);j=z[m+4>>2];D=C(j+j);M=z[d+4>>2];F=C(C(y*I)+C(C(A*E)+C(D*M)));p=z[d+12>>2];W=C(C(p*p)+C(-.5));o=C(C(y*F)+C(C(I*W)+C(p*C(C(A*D)-C(E*M)))));j=C(C(M*F)+C(C(D*W)+C(p*C(C(y*E)-C(I*A)))));p=C(C(A*F)+C(C(E*W)+C(p*C(C(M*I)-C(D*y)))))}if(l>n){N=v[ba>>2];H=z[m+208>>2];Q=z[m+204>>2];R=z[m+200>>2];s=p;u=j;r=o;l=n}ca=ca+1|0;if((ga|0)!=(ca|0)){continue}break}}z[h+8>>2]=r;z[h+4>>2]=u;z[h>>2]=s;z[i+8>>2]=H;z[i+4>>2]=Q;z[i>>2]=R;v[k>>2]=N;a=v[m+604>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=v[m+596>>2];if((a|0)==(m+336|0)|!a){break g}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[m+876>>2];if((a|0)<0|!(a&2147483647)){break b}a=v[m+868>>2];if((a|0)==(m+608|0)|!a){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[m+1196>>2];h:{if((a|0)<0|!(a&2147483647)){break h}a=v[m+1188>>2];if((a|0)==(m+928|0)|!a){break h}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=m+1536|0;return C(l)}function J_(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=C(0),q=C(0),r=0,s=0,u=C(0),x=0,y=0,A=C(0),B=0,E=C(0),F=C(0),G=0,H=C(0),I=0,J=C(0),L=C(0),M=0,N=0,O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0);n=xa-6336|0;xa=n;if(e){while(1){j=n+16|0;Ba[v[v[a>>2]>>2]](j,a,w[c+s|0]);y=v[n+28>>2];k=s<<4;i=k+(n+6272|0)|0;v[i+8>>2]=v[n+24>>2];v[i+12>>2]=y;y=v[n+20>>2];v[i>>2]=v[n+16>>2];v[i+4>>2]=y;Ba[v[v[b>>2]>>2]](j,b,w[d+s|0]);j=v[n+28>>2];i=k+(n+6208|0)|0;v[i+8>>2]=v[n+24>>2];v[i+12>>2]=j;j=v[n+20>>2];v[i>>2]=v[n+16>>2];v[i+4>>2]=j;s=s+1|0;if((s|0)!=(e|0)){continue}break}}v[n+6192>>2]=0;v[n+5932>>2]=0;t[n+5668|0]=0;v[n+5664>>2]=0;v[n+5672>>2]=0;v[n+16>>2]=0;i=n+16|0;v[n+20>>2]=i|8;c=v[g+4>>2];v[n>>2]=v[g>>2];v[n+4>>2]=c;c=v[g+12>>2];v[n+8>>2]=v[g+8>>2];v[n+12>>2]=c;g=a;s=b;j=xa-576|0;xa=j;v[j+48>>2]=2139095039;a=n+6272|0;b=v[a+4>>2];v[i+272>>2]=v[a>>2];v[i+276>>2]=b;b=v[a+12>>2];v[i+280>>2]=v[a+8>>2];v[i+284>>2]=b;b=v[a+20>>2];v[i+288>>2]=v[a+16>>2];v[i+292>>2]=b;b=v[a+28>>2];v[i+296>>2]=v[a+24>>2];v[i+300>>2]=b;b=v[a+36>>2];v[i+304>>2]=v[a+32>>2];v[i+308>>2]=b;b=v[a+44>>2];v[i+312>>2]=v[a+40>>2];v[i+316>>2]=b;b=v[a+60>>2];v[i+328>>2]=v[a+56>>2];v[i+332>>2]=b;b=v[a+52>>2];v[i+320>>2]=v[a+48>>2];v[i+324>>2]=b;b=n+6208|0;d=v[b+12>>2];k=i+1304|0;c=k;v[c>>2]=v[b+8>>2];v[c+4>>2]=d;c=v[b+4>>2];v[i+1296>>2]=v[b>>2];v[i+1300>>2]=c;d=v[b+20>>2];c=i+1312|0;v[c>>2]=v[b+16>>2];v[c+4>>2]=d;x=v[b+28>>2];y=i+1320|0;d=y;v[d>>2]=v[b+24>>2];v[d+4>>2]=x;x=v[b+36>>2];d=i+1328|0;v[d>>2]=v[b+32>>2];v[d+4>>2]=x;B=v[b+44>>2];x=i+1336|0;v[x>>2]=v[b+40>>2];v[x+4>>2]=B;G=v[b+60>>2];B=i+1352|0;v[B>>2]=v[b+56>>2];v[B+4>>2]=G;I=v[b+52>>2];G=i+1344|0;v[G>>2]=v[b+48>>2];v[G+4>>2]=I;v[j+44>>2]=0;v[i>>2]=0;a:{b:{c:{switch(e-1|0){case 0:b=7;d=j+44|0;e=j+48|0;a=xa-48|0;xa=a;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=1065353216;v[a+4>>2]=0;p=z[i+1300>>2];u=z[i+276>>2];q=z[i+1304>>2];A=z[i+280>>2];E=z[i+1296>>2];F=z[i+272>>2];v[a+24>>2]=-2147483648;v[a+28>>2]=0;v[a+16>>2]=-1082130432;v[a+20>>2]=-2147483648;c=a+16|0;Ba[v[v[g>>2]+4>>2]](a+32|0,g,c);Ba[v[v[s>>2]+4>>2]](c,s,a);c=v[a+36>>2];v[i+288>>2]=v[a+32>>2];v[i+292>>2]=c;c=v[a+44>>2];v[i+296>>2]=v[a+40>>2];v[i+300>>2]=c;k=v[a+20>>2];c=i+1312|0;v[c>>2]=v[a+16>>2];v[c+4>>2]=k;k=v[a+28>>2];c=i+1320|0;v[c>>2]=v[a+24>>2];v[c+4>>2]=k;d:{if(!(C(F-E)!=C(z[a+32>>2]-z[a+16>>2])|C(u-p)!=C(z[a+36>>2]-z[a+20>>2]))){c=0;if(C(A-q)==C(z[a+40>>2]-z[a+24>>2])){break d}}c=K_(i,g,s,d,e)}xa=a+48|0;if(!c){break a}break b;case 1:b=7;if(K_(i,g,s,j+44|0,j+48|0)){break b}break a;case 2:v[j+44>>2]=3;b=j+48|0;a=L_(i,0,1,2,b);b=L_(i,1,0,2,b);if(!v[i>>2]){b=7;break a}t[a+32|0]=0;v[a+20>>2]=b;t[b+32|0]=0;v[b+20>>2]=a;t[a+33|0]=2;v[a+24>>2]=b;t[b+34|0]=1;v[b+28>>2]=a;t[a+34|0]=1;v[a+28>>2]=b;t[b+33|0]=2;v[b+24>>2]=a;break b;case 3:break c;default:break b}}p=C(z[i+272>>2]-z[i+1296>>2]);E=C(C(z[i+288>>2]-z[i+1312>>2])-p);u=C(z[i+276>>2]-z[i+1300>>2]);A=C(C(z[i+308>>2]-z[i+1332>>2])-u);F=C(C(z[i+304>>2]-z[i+1328>>2])-p);H=C(C(z[i+292>>2]-z[i+1316>>2])-u);q=C(C(E*A)-C(F*H));L=q;O=C(q*q);P=H;q=C(z[i+280>>2]-z[k>>2]);H=C(C(z[i+312>>2]-z[x>>2])-q);J=C(C(z[i+296>>2]-z[y>>2])-q);A=C(C(P*H)-C(A*J));E=C(C(J*F)-C(H*E));F=C(C(1)/C(K(C(O+C(C(A*A)+C(E*E))))));if(C(C(C(L*F)*C(C(z[i+328>>2]-z[B>>2])-q))+C(C(C(A*F)*C(C(z[i+320>>2]-z[i+1344>>2])-p))+C(C(C(z[i+324>>2]-z[i+1348>>2])-u)*C(E*F))))>C(0)){e=v[a+36>>2];v[i+288>>2]=v[a+32>>2];v[i+292>>2]=e;e=v[a+44>>2];v[i+296>>2]=v[a+40>>2];v[i+300>>2]=e;e=v[b+36>>2];v[c>>2]=v[b+32>>2];v[c+4>>2]=e;e=v[b+44>>2];v[c+8>>2]=v[b+40>>2];v[c+12>>2]=e;c=v[a+20>>2];v[i+304>>2]=v[a+16>>2];v[i+308>>2]=c;c=v[a+28>>2];v[i+312>>2]=v[a+24>>2];v[i+316>>2]=c;a=v[b+20>>2];v[d>>2]=v[b+16>>2];v[d+4>>2]=a;a=v[b+28>>2];v[d+8>>2]=v[b+24>>2];v[d+12>>2]=a}d=j+48|0;a=L_(i,0,1,2,d);b=L_(i,0,3,1,d);c=L_(i,0,2,3,d);d=L_(i,1,3,2,d);if(!v[i>>2]){b=7;break a}t[a+32|0]=2;v[a+20>>2]=b;t[b+34|0]=0;v[b+28>>2]=a;t[a+33|0]=2;v[a+24>>2]=d;t[d+34|0]=1;v[d+28>>2]=a;t[a+34|0]=0;v[a+28>>2]=c;t[c+32|0]=2;v[c+20>>2]=a;t[b+32|0]=2;v[b+20>>2]=c;t[c+34|0]=0;v[c+28>>2]=b;t[b+33|0]=0;v[b+24>>2]=d;t[d+32|0]=1;v[d+20>>2]=b;t[c+33|0]=1;v[c+24>>2]=d;t[d+33|0]=1;v[d+24>>2]=c;v[j+44>>2]=4}B=i+1296|0;G=i+272|0;y=i+5648|0;I=i+5392|0;Q=i+5660|0;x=i+5920|0;c=i+5656|0;p=z[v[s+4>>2]+20>>2];u=z[v[g+4>>2]+20>>2];S=C((p>2];e:{if(!d){break e}k=0;if((d|0)!=1){e=d&-2;b=0;while(1){r=k<<2;o=v[r+x>>2];if((o|0)!=(v[c>>2]-1|0)){a=v[i+5916>>2];v[i+5916>>2]=a+1;a=(a<<2)+Q|0}else{a=c}v[a>>2]=o;r=v[x+(r|4)>>2];if((r|0)!=(v[c>>2]-1|0)){a=v[i+5916>>2];v[i+5916>>2]=a+1;a=(a<<2)+Q|0}else{a=c}v[a>>2]=r;k=k+2|0;b=b+2|0;if((e|0)!=(b|0)){continue}break}}if(!(d&1)){break e}b=v[x+(k<<2)>>2];if((b|0)!=(v[c>>2]-1|0)){a=v[i+5916>>2];v[i+5916>>2]=a+1;a=(a<<2)+Q|0}else{a=c}v[a>>2]=b}a=0;v[i+6176>>2]=0;r=v[i>>2]-1|0;v[i>>2]=r;k=v[i+4>>2];o=v[k+(r<<2)>>2];e=v[k>>2];f:{if(r>>>0<2){break f}u=z[o+16>>2];k=0;b=1;d=0;while(1){a=k+2|0;k=v[i+4>>2];a=(a>>>0>>0&z[v[k+(a<<2)>>2]+16>>2]>2]+16>>2])+b|0;b=v[(a<<2)+k>>2];if(u>2]){a=d;break f}v[(d<<2)+k>>2]=b;d=a;k=a<<1;b=k|1;if(r>>>0>b>>>0){continue}break}k=v[i+4>>2]}v[(a<<2)+k>>2]=o;t[e+39|0]=0;g:{if(!w[e+38|0]){a=v[e+4>>2];v[j+16>>2]=v[e>>2];v[j+20>>2]=a;a=v[e+12>>2];v[j+24>>2]=v[e+8>>2];v[j+28>>2]=a;L=z[e+16>>2];a=j- -64|0;Ba[v[v[g>>2]+4>>2]](a,g,j+16|0);T=z[j+76>>2];E=z[j+72>>2];F=z[j+64>>2];H=z[j+68>>2];v[j+12>>2]=0;z[j+8>>2]=-z[j+24>>2];z[j+4>>2]=-z[j+20>>2];z[j>>2]=-z[j+16>>2];Ba[v[v[s>>2]+4>>2]](a,s,j);P=z[j+72>>2];u=C(E-P);O=z[j+64>>2];q=C(F-O);R=z[j+68>>2];A=C(H-R);J=C(C(u*z[j+24>>2])+C(C(q*z[j+16>>2])+C(A*z[j+20>>2])));if(C(D(C(J-L)))<=S){M_(G,B,e,g,s,f,h);if(f){b=6;p=C(z[h+8>>2]-z[h+24>>2]);q=C(p*p);p=C(z[h>>2]-z[h+16>>2]);H=C(p*p);p=C(z[h+4>>2]-z[h+20>>2]);p=C(q+C(H+C(p*p)));if(C(C(z[n>>2]*C(.0010000000474974513))+C(D(z[h+64>>2])))<(p>C(0)?C(K(p)):C(0))){break a}}b=5;break a}r=v[j+44>>2];L=z[j+76>>2];p=p>J?J:p;z[j+48>>2]=p;a=i+(r<<4)|0;z[a+284>>2]=T;z[a+280>>2]=E;z[a+276>>2]=H;z[a+272>>2]=F;a=a+1296|0;z[a+12>>2]=L;z[a+8>>2]=P;z[a+4>>2]=R;z[a>>2]=O;a=1;v[j+44>>2]=r+1;b=0;t[i+5652|0]=0;v[i+5648>>2]=0;t[e+38|0]=1;d=v[e+20>>2];v[j+68>>2]=t[e+32|0];v[j+64>>2]=d;h:{while(1){i:{k=(j- -64|0)+(b<<3)|0;d=v[k>>2];j:{if(w[d+38|0]){a=b;break j}o=v[k+4>>2];l=t[d+35|0]<<4;m=l+G|0;l=l+B|0;if(C(C(z[d+8>>2]*C(u-C(z[m+8>>2]-z[l+8>>2])))+C(C(z[d>>2]*C(q-C(z[m>>2]-z[l>>2])))+C(C(A-C(z[m+4>>2]-z[l+4>>2]))*z[d+4>>2])))>2];if(a>>>0>31){break i}v[y>>2]=a+1;a=(a<<3)+I|0;v[a+4>>2]=o;v[a>>2]=d;a=b;break j}t[d+38|0]=1;b=d+32|0;o=v[(o<<2)+101432>>2];m=o<<2;l=v[m+101432>>2];M=t[b+l|0];N=l<<2;l=d+20|0;v[k>>2]=v[N+l>>2];v[(k|4)>>2]=M;k=v[l+m>>2];m=(j- -64|0)+(a<<3)|0;v[m+4>>2]=t[b+o|0];v[m>>2]=k;a=a+1|0;if(w[d+39|0]){break j}b=w[d+40|0];d=v[i+6176>>2];v[i+6176>>2]=d+1;v[x+(d<<2)>>2]=b}b=a-1|0;if(a){continue}break h}break}t[i+5652|0]=1}a=v[e+24>>2];v[j+68>>2]=t[e+33|0];v[j+64>>2]=a;a=1;b=0;k:{while(1){l:{k=(j- -64|0)+(b<<3)|0;d=v[k>>2];m:{if(w[d+38|0]){a=b;break m}o=v[k+4>>2];l=t[d+35|0]<<4;m=l+G|0;l=l+B|0;if(C(C(z[d+8>>2]*C(u-C(z[m+8>>2]-z[l+8>>2])))+C(C(z[d>>2]*C(q-C(z[m>>2]-z[l>>2])))+C(C(A-C(z[m+4>>2]-z[l+4>>2]))*z[d+4>>2])))>2];if(a>>>0>31){break l}v[y>>2]=a+1;a=(a<<3)+I|0;v[a+4>>2]=o;v[a>>2]=d;a=b;break m}t[d+38|0]=1;b=d+32|0;o=v[(o<<2)+101432>>2];m=o<<2;l=v[m+101432>>2];M=t[b+l|0];N=l<<2;l=d+20|0;v[k>>2]=v[N+l>>2];v[(k|4)>>2]=M;k=v[l+m>>2];m=(j- -64|0)+(a<<3)|0;v[m+4>>2]=t[b+o|0];v[m>>2]=k;a=a+1|0;if(w[d+39|0]){break m}b=w[d+40|0];d=v[i+6176>>2];v[i+6176>>2]=d+1;v[x+(d<<2)>>2]=b}b=a-1|0;if(a){continue}break k}break}t[i+5652|0]=1}a=v[e+28>>2];v[j+68>>2]=t[e+34|0];v[j+64>>2]=a;a=1;b=0;n:{o:{while(1){k=(j- -64|0)+(b<<3)|0;d=v[k>>2];p:{if(w[d+38|0]){a=b;break p}o=v[k+4>>2];l=t[d+35|0]<<4;m=l+G|0;l=l+B|0;if(C(C(z[d+8>>2]*C(u-C(z[m+8>>2]-z[l+8>>2])))+C(C(z[d>>2]*C(q-C(z[m>>2]-z[l>>2])))+C(C(A-C(z[m+4>>2]-z[l+4>>2]))*z[d+4>>2])))>2];if(a>>>0>31){break o}v[y>>2]=a+1;a=(a<<3)+I|0;v[a+4>>2]=o;v[a>>2]=d;a=b;break p}t[d+38|0]=1;b=d+32|0;o=v[(o<<2)+101432>>2];m=o<<2;l=v[m+101432>>2];M=t[b+l|0];N=l<<2;l=d+20|0;v[k>>2]=v[N+l>>2];v[(k|4)>>2]=M;k=v[l+m>>2];m=(j- -64|0)+(a<<3)|0;v[m+4>>2]=t[b+o|0];v[m>>2]=k;a=a+1|0;if(w[d+39|0]){break p}b=w[d+40|0];d=v[i+6176>>2];v[i+6176>>2]=d+1;v[x+(d<<2)>>2]=b}b=a-1|0;if(a){continue}break}o=v[i+5648>>2];if(w[i+5652|0]|!o|o>>>0>(v[i+5916>>2]-v[i+5656>>2]|0)- -64>>>0){break g}b=v[i+5392>>2]+35|0;a=v[i+5396>>2];b=L_(i,t[b+v[(a<<2)+101432>>2]|0],t[a+b|0],r,j+48|0);a=v[i+5392>>2];d=v[i+5396>>2];t[b+32|0]=d;v[b+20>>2]=a;v[(a+(d<<2)|0)+20>>2]=b;t[(a+d|0)+32|0]=0;k=1;a=b;if(o>>>0<=1){break n}while(1){m=(k<<3)+I|0;d=v[m>>2]+35|0;l=v[m+4>>2];d=L_(i,t[d+v[(l<<2)+101432>>2]|0],t[d+l|0],r,j+48|0);l=v[m>>2];m=v[m+4>>2];t[d+32|0]=m;v[d+20>>2]=l;v[(l+(m<<2)|0)+20>>2]=d;t[(l+m|0)+32|0]=0;t[d+34|0]=1;v[d+28>>2]=a;t[a+33|0]=2;v[a+24>>2]=d;a=d;k=k+1|0;if((o|0)!=(k|0)){continue}break}break n}t[i+5652|0]=1;break g}t[b+34|0]=1;v[b+28>>2]=a;t[a+33|0]=2;v[a+24>>2]=b}b=w[e+40|0];if((b|0)!=(v[c>>2]-1|0)){a=v[i+5916>>2];v[i+5916>>2]=a+1;a=(a<<2)+Q|0}else{a=c}v[a>>2]=b;if(!v[i>>2]|!(z[v[v[i+4>>2]>>2]+16>>2]>2]!=64){continue}}break}M_(G,B,e,g,s,f,h);b=6}xa=j+576|0;xa=n+6336|0;return b}function jM(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,x=0,A=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[a+40>>2]=0;u=v[a+32>>2];p=a;g=a+44|0;x=xa-32|0;xa=x;d=v[a+28>>2];a=v[d+108>>2];a:{if(!a){break a}if(y[d+188>>2]>B(a,5)>>>0){f=xa-48|0;xa=f;I=v[d+112>>2];r=g;m=v[g>>2];c=v[d+136>>2];v[f>>2]=c;a=v[d+140>>2];v[f+8>>2]=a;v[f+4>>2]=a;a=v[d+132>>2];v[f+20>>2]=c;v[f+16>>2]=a;v[f+12>>2]=a;a=u<<2;c=a+d|0;s=v[c+156>>2];b:{if((v[s+4>>2]&-2)==1073741822){break b}K=v[a+(d+132|0)>>2];a=f+(u<<3)|0;D=v[a+4>>2];L=v[a>>2];t=v[c+144>>2];N=v[d+168>>2];O=v[d+116>>2];c:{d:{e:{f:{g:{h:{a=v[d+108>>2];if(a>>>0>=512){a=v[d+188>>2]<<1;if(a){break h}a=v[d+176>>2];v[a>>2]=0;v[a+4>>2]=0;break e}if(!a){g=v[d+172>>2];break g}g=v[d+172>>2];k=v[d+124>>2];b=v[d+104>>2];while(1){h=v[b+(e<<2)>>2];c=(I+B(h,24)|0)+(u<<2)|0;j=k+(h<<2)|0;z[f+40>>2]=z[c>>2]-z[j>>2];a=v[f+40>>2];z[f+40>>2]=z[j>>2]+z[c+12>>2];c=v[f+40>>2];h=K+(h<<3)|0;v[t+(v[h>>2]<<2)>>2]=((a|0)<0?a^-1:a|-2147483648)-16&-16;a=c;v[t+(v[h+4>>2]<<2)>>2]=((a|0)<0?a^-1:a|-2147483648)+16&-16|4;a=n<<2;v[a+g>>2]=v[h>>2];v[(a|4)+g>>2]=v[h+4>>2];n=n+2|0;e=e+1|0;if(e>>>0>2]){continue}break}break g}b=a|1;g=v[d+172>>2];h=v[d+124>>2];c=1;while(1){j=c<<2;k=v[j+s>>2];if((k&-2)==1073741822){break f}a=k>>>1|0;if(w[a+N|0]){i=j+t|0;i:{if(k&1){z[f+40>>2]=z[h+(a<<2)>>2]+z[((I+B(a,24)|0)+(u<<2)|0)+12>>2];a=v[f+40>>2];a=((a|0)<0?a^-1:a|-2147483648)+16&-16|4;break i}z[f+40>>2]=z[(I+B(a,24)|0)+(u<<2)>>2]-z[h+(a<<2)>>2];a=v[f+40>>2];a=((a|0)<0?a^-1:a|-2147483648)-16&-16}v[i>>2]=a;v[g+(n<<2)>>2]=c;n=n+1|0}c=c+1|0;if((b|0)!=(c|0)){continue}break}break f}zz(g,n)}a=v[d+176>>2];v[a>>2]=0;v[a+4>>2]=0;if(n){break d}}h=a;break c}g=v[d+184>>2];h=a;while(1){k=v[v[d+172>>2]+(q<<2)>>2];c=v[s+(k<<2)>>2];while(1){M=k<<2;P=v[t+M>>2];o=c>>>1|0;j=o<<2;z[f+40>>2]=z[j+v[d+124>>2]>>2]+z[((I+B(o,24)|0)+(u<<2)|0)+12>>2];b=v[f+40>>2];e=v[g+M>>2];if(y[t+(e<<2)>>2]>P>>>0){a=o<<3;J=a+D|0;H=a+L|0;Q=v[j+O>>2];R=Q<<2&12;j:{if(c&1){c=k;while(1){S=e<<2;a=v[s+S>>2];k:{if(a&1){break k}E=a>>>1|0;a=E<<3;b=a+L|0;if(y[H+4>>2]<=y[b>>2]|y[b+4>>2]<=y[H>>2]){break k}a=a+D|0;if(y[J+4>>2]<=y[a>>2]|y[a+4>>2]<=y[J>>2]){break k}a=v[(E<<2)+O>>2];if((a|0)==(Q|0)|!w[v[d+120>>2]+(a&3|R)|0]){break k}l:{if((m|0)!=(A|0)){j=v[p+36>>2];break l}F=v[p+36>>2];i=v[d+4>>2];G=i+4|0;a=m<<4;b=v[i+8>>2];g=v[i+4>>2]+(b<<2)|0;j=v[g-4>>2];m:{if((a|0)<=(j-v[i+16>>2]|0)){a=j-a|0;v[f+40>>2]=a;if(b>>>0>=(v[i+12>>2]&2147483647)>>>0){Us(G,f+40|0);j=v[f+40>>2];break m}v[g>>2]=a;v[i+8>>2]=b+1;j=v[f+40>>2];break m}j=0;if(!a){break m}b=v[37696];j=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,17461,99)|0}T=H9(j,F,m<<3);a=v[i+16>>2];n:{if(!(a>>>0<=F>>>0&F>>>0>2]>>>0)){if(!F){break n}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,F);break n}U=v[i+4>>2];a=0;C=v[i+8>>2];b=C;while(1){l=a;a=a+1|0;g=b;b=b-1|0;e=(b<<2)+U|0;if(F>>>0>y[e>>2]){continue}break}o:{if(g>>>0>=C>>>0){break o}a=0;b=l&3;if(b){while(1){v[e>>2]=v[v[G>>2]+(g<<2)>>2];g=g+1|0;e=e+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(l-1>>>0<3){break o}while(1){a=g<<2;v[e>>2]=v[a+v[G>>2]>>2];v[e+4>>2]=v[(a+v[G>>2]|0)+4>>2];v[e+8>>2]=v[(a+v[G>>2]|0)+8>>2];v[e+12>>2]=v[(a+v[G>>2]|0)+12>>2];e=e+16|0;g=g+4|0;if((C|0)!=(g|0)){continue}break}}v[i+8>>2]=C-1}m=m<<1;v[p+36>>2]=T;g=v[d+184>>2]}a=(A<<3)+j|0;v[a+4>>2]=o>>>0>E>>>0?o:E;v[a>>2]=o>>>0>>0?o:E;A=A+1|0}c=c-1|0;e=v[g+S>>2];if(y[t+(e<<2)>>2]>P>>>0){continue}break}break j}a=b;j=((a|0)<0?a^-1:a|-2147483648)+16&-16|4;c=k;while(1){l=e<<2;a=v[l+s>>2];p:{if(!(a&1)){break p}a=a>>>1|0;b=a<<3;if(j>>>0<=y[t+(v[b+K>>2]<<2)>>2]){break p}e=b+L|0;if(y[H+4>>2]<=y[e>>2]|y[e+4>>2]<=y[H>>2]){break p}b=b+D|0;if(y[J+4>>2]<=y[b>>2]|y[b+4>>2]<=y[J>>2]){break p}b=v[(a<<2)+O>>2];if((b|0)==(Q|0)|!w[v[d+120>>2]+(b&3|R)|0]){break p}q:{if((m|0)!=(A|0)){b=v[p+36>>2];break q}b=m;m=m<<1;b=kM(b,m,v[d+4>>2],v[p+36>>2]);v[p+36>>2]=b;g=v[d+184>>2]}b=(A<<3)+b|0;v[b+4>>2]=a>>>0>o>>>0?o:a;v[b>>2]=a>>>0>>0?o:a;A=A+1|0}c=c-1|0;e=v[g+l>>2];if(y[t+(e<<2)>>2]>P>>>0){continue}break}}a=v[d+180>>2];j=a+(e<<2)|0;b=v[j>>2];l=g+M|0;i=v[l>>2];C=a+(i<<2)|0;a=a+M|0;o=v[a>>2];v[C>>2]=o;v[(o<<2)+g>>2]=i;v[a>>2]=b;v[l>>2]=e;v[(b<<2)+g>>2]=k;v[j>>2]=k;while(1){b=h;h=b-8|0;if(y[b>>2]>c>>>0){continue}break}a=v[d+176>>2];if((b|0)==(a|0)|v[b+4>>2]+1>>>0>>0){v[b+8>>2]=c;b=b+8|0}h=b;v[h+4>>2]=k}k=k+1|0;b=k<<2;c=v[b+s>>2];if(!(w[(v[s+(v[b+g>>2]<<2)>>2]>>>1|0)+N|0]?(c&-2)==1073741822|w[(c>>>1|0)+N|0]:1)){continue}break}q=q+1|0;if((n|0)!=(q|0)){continue}break}}v[p+40>>2]=A;v[r>>2]=m;c=a+8|0;if(h>>>0>>0){break b}p=v[d+180>>2];j=v[d+184>>2];while(1){k=a;a=c;c=v[k+8>>2];e=v[k+12>>2];if(c>>>0<=e>>>0){while(1){v[j+(c<<2)>>2]=c;c=c+1|0;e=v[k+12>>2];if(c>>>0<=e>>>0){continue}break}c=v[a>>2]}if(c>>>0<=e>>>0){g=c-1|0;b=v[d+184>>2];while(1){g=v[p+(g<<2)>>2];if((g|0)!=(c|0)){u=v[b+(g<<2)>>2];l=u<<2;r=l+s|0;e=v[r>>2];m=c<<2;i=m+s|0;o=v[i>>2];n=m+t|0;q=v[n>>2];C=n;n=l+t|0;v[C>>2]=v[n>>2];v[i>>2]=v[r>>2];v[n>>2]=q;v[r>>2]=o;i=b+l|0;l=b+m|0;v[i>>2]=v[l>>2];v[b+(v[l>>2]<<2)>>2]=u;v[(K+(e<<2&-8)|0)+((e&1)<<2)>>2]=c;e=v[k+12>>2]}c=c+1|0;if(e>>>0>=c>>>0){continue}break}c=v[a>>2]}c=c-1|0;if(e>>>0>=c>>>0){while(1){b=c+1|0;v[j+(b<<2)>>2]=c;v[p+(c<<2)>>2]=b;c=b;if(b>>>0<=y[k+12>>2]){continue}break}}c=a+8|0;if(h>>>0>=c>>>0){continue}break}}xa=f+48|0;break a}s=v[d+112>>2];i=v[g>>2];c=v[d+136>>2];v[x>>2]=c;a=v[d+140>>2];v[x+8>>2]=a;v[x+4>>2]=a;a=v[d+132>>2];v[x+20>>2]=c;v[x+16>>2]=a;v[x+12>>2]=a;a=u<<2;c=a+d|0;o=v[c+156>>2];h=v[o+4>>2];if((h&-2)==1073741822){break a}I=v[a+(d+132|0)>>2];t=v[c+144>>2];c=(u<<3)+x|0;A=v[c+4>>2];F=v[c>>2];J=v[d+168>>2];G=v[d+116>>2];c=h>>>1|0;z[x+28>>2]=z[a+(s+B(c,24)|0)>>2]-z[v[d+124>>2]+(c<<2)>>2];a=v[x+28>>2];v[t+4>>2]=((a|0)<0?a^-1:a|-2147483648)-16&-16;h=c+J|0;k=w[h|0];b=v[d+108>>2];c=v[d+176>>2];v[c>>2]=0;v[c+4>>2]=0;a=v[o+8>>2];r:{if((a&-2)==1073741822){k=c;break r}j=(b<<1)-k|0;b=w[h|0];k=c;h=2;while(1){s:{t:{u:{f=a>>>1|0;r=w[f+J|0];if((r|b)&255){j=j-r|0;E=h<<2;b=E+t|0;D=a&1;v:{if(D){q=v[d+124>>2];z[x+28>>2]=z[q+(f<<2)>>2]+z[((s+B(f,24)|0)+(u<<2)|0)+12>>2];a=v[x+28>>2];l=((a|0)<0?a^-1:a|-2147483648)+16&-16|4;break v}q=v[d+124>>2];z[x+28>>2]=z[(s+B(f,24)|0)+(u<<2)>>2]-z[q+(f<<2)>>2];a=v[x+28>>2];l=((a|0)<0?a^-1:a|-2147483648)-16&-16}v[b>>2]=l;e=v[d+184>>2];b=v[E+e>>2];if(l>>>0>=y[t+(b<<2)>>2]){b=r;break s}c=f<<2;z[x+28>>2]=z[c+q>>2]+z[((s+B(f,24)|0)+(u<<2)|0)+12>>2];a=v[x+28>>2];n=f<<3;r=n+A|0;n=n+F|0;H=v[c+G>>2];K=H<<2&12;if(!D){break u}a=h;while(1){q=b<<2;c=v[q+o>>2];w:{if(c&1){break w}c=c>>>1|0;b=c<<3;D=b+F|0;if(y[n+4>>2]<=y[D>>2]|y[D+4>>2]<=y[n>>2]){break w}b=b+A|0;if(y[r+4>>2]<=y[b>>2]|y[b+4>>2]<=y[r>>2]){break w}b=v[G+(c<<2)>>2];if((b|0)==(H|0)|!w[v[d+120>>2]+(K|b&3)|0]){break w}x:{if((i|0)!=(m|0)){b=v[p+36>>2];break x}b=i;i=i<<1;b=kM(b,i,v[d+4>>2],v[p+36>>2]);v[p+36>>2]=b;e=v[d+184>>2]}b=(m<<3)+b|0;v[b+4>>2]=c>>>0>>0?f:c;v[b>>2]=c>>>0>f>>>0?f:c;m=m+1|0}a=a-1|0;b=v[e+q>>2];if(l>>>0>2]){continue}break}break t}b=0;if(!j){break r}break s}D=((a|0)<0?a^-1:a|-2147483648)+16&-16|4;a=h;while(1){L=b<<2;c=v[L+o>>2];y:{if(!(c&1)){break y}c=c>>>1|0;b=c<<3;if(D>>>0<=y[t+(v[b+I>>2]<<2)>>2]){break y}q=b+F|0;if(y[n+4>>2]<=y[q>>2]|y[q+4>>2]<=y[n>>2]){break y}b=b+A|0;if(y[r+4>>2]<=y[b>>2]|y[b+4>>2]<=y[r>>2]){break y}b=v[G+(c<<2)>>2];if((b|0)==(H|0)|!w[v[d+120>>2]+(K|b&3)|0]){break y}z:{if((i|0)!=(m|0)){q=v[p+36>>2];break z}b=i;i=i<<1;q=kM(b,i,v[d+4>>2],v[p+36>>2]);v[p+36>>2]=q;e=v[d+184>>2]}b=(m<<3)+q|0;v[b+4>>2]=c>>>0>f>>>0?f:c;v[b>>2]=c>>>0>>0?f:c;m=m+1|0}a=a-1|0;b=v[e+L>>2];if(l>>>0>2]){continue}break}}c=v[d+180>>2];r=c+(b<<2)|0;l=v[r>>2];f=e+E|0;n=v[f>>2];C=c+(n<<2)|0;c=c+E|0;q=v[c>>2];v[C>>2]=q;v[(q<<2)+e>>2]=n;v[c>>2]=l;v[f>>2]=b;v[(l<<2)+e>>2]=h;v[r>>2]=h;while(1){b=k;k=b-8|0;if(y[b>>2]>a>>>0){continue}break}c=v[d+176>>2];if((b|0)==(c|0)|v[b+4>>2]+1>>>0>>0){v[b+8>>2]=a;b=b+8|0}k=b;v[k+4>>2]=h;b=1}h=h+1|0;a=v[o+(h<<2)>>2];if((a&-2)!=1073741822){continue}break}}v[p+40>>2]=m;v[g>>2]=i;g=v[d+184>>2];a=c+8|0;A:{if(k>>>0>>0){h=g;break A}j=v[d+180>>2];h=g;while(1){p=c;c=a;a=v[p+8>>2];b=v[p+12>>2];if(a>>>0<=b>>>0){while(1){v[g+(a<<2)>>2]=a;a=a+1|0;b=v[p+12>>2];if(a>>>0<=b>>>0){continue}break}a=v[c>>2]}if(a>>>0<=b>>>0){e=a-1|0;h=v[d+184>>2];while(1){e=v[j+(e<<2)>>2];if((e|0)!=(a|0)){m=v[(e<<2)+h>>2];b=m<<2;l=b+o|0;r=v[l>>2];f=a<<2;u=f+o|0;i=v[u>>2];s=f+t|0;n=v[s>>2];C=s;s=b+t|0;v[C>>2]=v[s>>2];v[u>>2]=v[l>>2];v[s>>2]=n;v[l>>2]=i;i=b+h|0;b=f+h|0;v[i>>2]=v[b>>2];v[(v[b>>2]<<2)+h>>2]=m;v[(I+(r<<2&-8)|0)+((r&1)<<2)>>2]=a;b=v[p+12>>2]}a=a+1|0;if(b>>>0>=a>>>0){continue}break}a=v[c>>2]}a=a-1|0;if(b>>>0>=a>>>0){while(1){b=a+1|0;v[g+(b<<2)>>2]=a;v[j+(a<<2)>>2]=b;a=b;if(a>>>0<=y[p+12>>2]){continue}break}}a=c+8|0;if(k>>>0>=a>>>0){continue}break}}v[h>>2]=0}xa=x+32|0}function bo(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=xa-272|0;xa=d;a:{if((a|0)!=67174656){v[d>>2]=67174656;v[d+4>>2]=a;a=d+16|0;s9(a,256,2005,d);b=Ba[v[v[b>>2]+4>>2]](b)|0;Ba[v[v[b>>2]+8>>2]](b,4,a,7621,190);a=0;break a}if(!(z[c>>2]>C(0))){a=Ba[v[v[b>>2]+4>>2]](b)|0;Ba[v[v[a>>2]+8>>2]](a,4,77715,7621,196);a=0;break a}a=v[37394];if(!a){c9();v[37425]=-28;v[37422]=-20;v[37423]=-20;v[37420]=-24;v[37421]=-24;v[37416]=-64;v[37417]=-64;v[37426]=-64;v[37427]=-64;v[37418]=-64;v[37419]=-48;v[37428]=-64;v[d+24>>2]=-80;v[d+16>>2]=-80;v[d+20>>2]=-80;a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?30571:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,108,b,7621,211)|0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=121976;b=v[c+4>>2];v[a+16>>2]=v[c>>2];v[a+20>>2]=b;v[37415]=a+16;b=v[d+20>>2];v[37412]=v[d+16>>2];v[37413]=b;v[37414]=v[d+24>>2];v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,512,24422,17745,46)|0;v[a+44>>2]=128;v[a+40>>2]=b;I9(b,0,512);v[a+48>>2]=122176;b=v[37696];c=v[37696];j=a,k=(m=b+12|0,n=28,o=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,l=v[v[b+12>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0),v[j+52>>2]=k;b=xa-16|0;xa=b;xa=b+16|0;v[a+72>>2]=0;v[a+76>>2]=0;b=a- -64|0;v[b>>2]=0;v[b+4>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+80>>2]=1061158912;v[a+84>>2]=-1;mn(a+56|0,64);t[a+100|0]=0;v[a+96>>2]=122216;b=v[37696];c=v[37696];j=a,k=(q=b+12|0,p=28,o=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,n=16755,m=113,l=v[v[b+12>>2]+8>>2],Ba[l](q|0,p|0,o|0,n|0,m|0)|0),v[j+104>>2]=k;b=xa-16|0;xa=b;xa=b+16|0;v[37393]=a;a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?25141:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,3936,b,5382,101)|0;v[b>>2]=140644;a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?37931:63804;j=b,k=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,c,16755,113)|0,v[j+4>>2]=k;a=xa-16|0;xa=a;xa=a+16|0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+32>>2]=1061158912;v[b+36>>2]=-1;wh(b+8|0,64);a=b- -64|0;v[a>>2]=0;v[a+4>>2]=0;v[b+56>>2]=0;v[b+60>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+80>>2]=0;v[b+84>>2]=0;v[b+72>>2]=1061158912;v[b+76>>2]=-1;wh(b+48|0,64);v[b+104>>2]=0;v[b+108>>2]=0;v[b+96>>2]=0;v[b+100>>2]=0;v[b+88>>2]=0;v[b+92>>2]=0;v[b+120>>2]=0;v[b+124>>2]=0;v[b+112>>2]=1061158912;v[b+116>>2]=-1;wh(b+88|0,64);v[b+144>>2]=0;v[b+148>>2]=0;v[b+136>>2]=0;v[b+140>>2]=0;v[b+128>>2]=0;v[b+132>>2]=0;v[b+160>>2]=0;v[b+164>>2]=0;v[b+152>>2]=1061158912;v[b+156>>2]=-1;wh(b+128|0,64);v[b+176>>2]=0;v[b+168>>2]=0;v[b+172>>2]=0;v[b>>2]=121880;v[b+448>>2]=0;v[b+468>>2]=0;v[b+460>>2]=0;v[b+464>>2]=1536;v[b+452>>2]=64;v[b+456>>2]=32;v[b+444>>2]=b+184;t[b+440|0]=1;a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?37931:63804;j=b,k=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,c,16755,113)|0,v[j+472>>2]=k;a=xa-16|0;xa=a;xa=a+16|0;a=v[37696];c=v[37696];a=(k=a+12|0,l=884,m=Ba[v[v[c>>2]+20>>2]](c)|0?34253:63804,n=5382,o=51,j=v[v[a+12>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0);v[a>>2]=121908;c=v[37696];e=v[37696];j=a,o=(m=c+12|0,l=28,k=Ba[v[v[e>>2]+20>>2]](e)|0?37931:63804,p=16755,q=113,n=v[v[c+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+4>>2]=o;c=xa-16|0;xa=c;xa=c+16|0;v[a+568>>2]=0;v[a+292>>2]=4096;v[a+296>>2]=0;v[a+284>>2]=256;v[a+288>>2]=0;v[a+272>>2]=a+12;t[a+268|0]=1;v[a+276>>2]=0;v[a+280>>2]=64;v[a+860>>2]=0;v[a+588>>2]=0;v[a+580>>2]=0;v[a+584>>2]=4096;v[a+572>>2]=64;v[a+576>>2]=64;v[a+564>>2]=a+304;t[a+560|0]=1;v[a+880>>2]=0;v[a+872>>2]=0;v[a+876>>2]=4096;v[a+864>>2]=64;v[a+868>>2]=16;v[a+856>>2]=a+596;t[a+852|0]=1;v[b+480>>2]=0;v[b+484>>2]=0;v[b+476>>2]=a;v[b+488>>2]=0;v[b+492>>2]=0;v[b+496>>2]=0;v[b+500>>2]=0;v[b+512>>2]=0;v[b+516>>2]=0;v[b+504>>2]=1061158912;v[b+508>>2]=-1;Hm(b+480|0,64);v[b+536>>2]=0;v[b+540>>2]=0;v[b+528>>2]=0;v[b+532>>2]=0;v[b+520>>2]=0;v[b+524>>2]=0;v[b+552>>2]=0;v[b+556>>2]=0;v[b+544>>2]=1061158912;v[b+548>>2]=-1;Hm(b+520|0,64);v[b+576>>2]=0;v[b+580>>2]=0;v[b+568>>2]=0;v[b+572>>2]=0;v[b+560>>2]=0;v[b+564>>2]=0;v[b+592>>2]=0;v[b+596>>2]=0;v[b+584>>2]=1061158912;v[b+588>>2]=-1;Hm(b+560|0,64);v[b+616>>2]=0;v[b+620>>2]=0;v[b+608>>2]=0;v[b+612>>2]=0;v[b+600>>2]=0;v[b+604>>2]=0;v[b+632>>2]=0;v[b+636>>2]=0;v[b+624>>2]=1061158912;v[b+628>>2]=-1;Hm(b+600|0,64);v[b+656>>2]=0;v[b+660>>2]=0;v[b+648>>2]=0;v[b+652>>2]=0;v[b+640>>2]=0;v[b+644>>2]=0;v[b+672>>2]=0;v[b+676>>2]=0;v[b+664>>2]=1061158912;v[b+668>>2]=-1;wh(b+640|0,64);v[b+964>>2]=4096;v[b+968>>2]=0;v[b+956>>2]=12;v[b+960>>2]=0;v[b+944>>2]=b+684;t[b+940|0]=1;v[b+948>>2]=0;v[b+952>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+972>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+1260|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+1252|0;v[a>>2]=36;v[a+4>>2]=0;v[b+1240>>2]=b+980;t[b+1236|0]=1;a=b+1244|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(m=a+12|0,l=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,n=v[v[a+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+1268>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+1556|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+1548|0;v[a>>2]=19;v[a+4>>2]=0;v[b+1536>>2]=b+1276;t[b+1532|0]=1;a=b+1540|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+1564>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+1852|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+1844|0;v[a>>2]=93;v[a+4>>2]=0;v[b+1832>>2]=b+1572;t[b+1828|0]=1;a=b+1836|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(m=a+12|0,l=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,n=v[v[a+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+1860>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+2148|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+2140|0;v[a>>2]=33;v[a+4>>2]=0;v[b+2128>>2]=b+1868;t[b+2124|0]=1;a=b+2132|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+2156>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+2444|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+2436|0;v[a>>2]=64;v[a+4>>2]=0;v[b+2424>>2]=b+2164;t[b+2420|0]=1;a=b+2428|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(m=a+12|0,l=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,n=v[v[a+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+2452>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+2740|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+2732|0;v[a>>2]=34;v[a+4>>2]=0;v[b+2720>>2]=b+2460;t[b+2716|0]=1;a=b+2724|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+2748>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+3036|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+3028|0;v[a>>2]=31;v[a+4>>2]=0;v[b+3016>>2]=b+2756;t[b+3012|0]=1;a=b+3020|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(m=a+12|0,l=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,n=v[v[a+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+3044>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+3332|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+3324|0;v[a>>2]=10;v[a+4>>2]=0;v[b+3312>>2]=b+3052;t[b+3308|0]=1;a=b+3316|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+3340>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+3628|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+3620|0;v[a>>2]=10;v[a+4>>2]=0;v[b+3608>>2]=b+3348;t[b+3604|0]=1;a=b+3612|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(m=a+12|0,l=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,n=v[v[a+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+3636>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+3924|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+3916|0;v[a>>2]=10;v[a+4>>2]=0;v[b+3904>>2]=b+3644;t[b+3900|0]=1;a=b+3908|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+3932>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;v[37389]=b;e=xa-16|0;xa=e;c=v[37389];b=v[37393]+96|0;v[e+12>>2]=b;a=v[c+172>>2];b:{if(a>>>0>=(v[c+176>>2]&2147483647)>>>0){a=0;b=v[c+176>>2];g=b&2147483647?b<<1:1;c:{if(!g){break c}b=g<<2;if(!b){break c}a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?56745:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,f,16608,553)|0}f=v[c+172>>2];i=(f<<2)+a|0;if((f|0)>0){h=v[c+168>>2];b=a;while(1){v[b>>2]=v[h>>2];h=h+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[e+12>>2];d:{if(v[c+176>>2]<0){break d}b=v[c+168>>2];if(!b){break d}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,b);f=v[c+172>>2]}v[c+176>>2]=g;v[c+168>>2]=a;v[c+172>>2]=f+1;break b}v[v[c+168>>2]+(a<<2)>>2]=b;v[c+172>>2]=a+1}xa=e+16|0;a=v[37394]}v[37394]=a+1;a=v[37393]}xa=d+272|0;return a|0}function IH(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,u=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0;m=xa-816|0;xa=m;t[m+792|0]=1;v[m+800>>2]=0;v[m+804>>2]=64;v[m+796>>2]=m+24;j=a;while(1){g=w[j+44|0];n=v[j>>2];a:{if(!(t[v[n+44>>2]+44|0]&1)){t[j+44|0]=g&254;v[m+8>>2]=j;v[m+12>>2]=0;v[m+16>>2]=0;e=v[n+28>>2];b:{if(!e){break b}o=v[n+20>>2];i=402653184;b=0;c=0;while(1){e=e-1|0;h=v[o>>2];if(w[h+20|0]==4){h=v[h+24>>2];f=x[v[h+52>>2]>>1]&(w[h+68|0]>>>3&1)-1&6;d=v[h+60>>2];c:{if((n|0)==(d|0)){l=f&4;d=v[h- -64>>2];f=f&2;break c}l=f&2;f=f&4}d:{if(!(t[v[d+44>>2]+44|0]&1?0:d)){if(l){k=k+1|0;c=c&-402653185;i=0;f=-2147483648}else{f=0}f=f|(d?536870912:1073741824);if(!(f>>>0<=c>>>0?b:0)){v[m+12>>2]=h;b=h}c=c|f;break d}e:{f:{if(!(!f|!l)){i=i&-268435457;c=c&-268435457;break f}if(l){i=0;c=c&-402653185;break f}if(!f){break e}c=i&402653184|c|-2147483648}k=k+1|0}c=c+1|0}v[m+16>>2]=c}o=o+4|0;if(e){continue}break}if(c>>>0<2415919104){break b}t[j+44|0]=g|1}e=v[m+800>>2];if(e>>>0>=(v[m+804>>2]&2147483647)>>>0){e=0;c=m+24|0;b=v[c+780>>2];h=b&2147483647?b<<1:1;g:{if(!h){break g}b=B(h,12);if(!(w[c+768|0]|b>>>0>768)){t[c+768|0]=1;e=c;break g}if(!b){break g}e=v[37696];i=e+12|0;e=(C=i,D=b,E=Ba[v[v[e>>2]+20>>2]](e)|0?39671:63804,F=16608,G=553,A=v[v[i>>2]+8>>2],Ba[A](C|0,D|0,E|0,F|0,G|0)|0)}b=v[c+776>>2];if((b|0)>0){f=B(b,12)+e|0;i=v[c+772>>2];b=e;while(1){d=v[i+4>>2];v[b>>2]=v[i>>2];v[b+4>>2]=d;v[b+8>>2]=v[i+8>>2];i=i+12|0;b=b+12|0;if(f>>>0>b>>>0){continue}break}b=v[c+776>>2]}i=v[m+12>>2];b=B(b,12)+e|0;v[b>>2]=v[m+8>>2];v[b+4>>2]=i;v[b+8>>2]=v[m+16>>2];h:{if(v[c+780>>2]<0){break h}b=v[c+772>>2];if((b|0)==(c|0)){t[c+768|0]=0;break h}if(!b){break h}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,b)}v[c+780>>2]=h;v[c+772>>2]=e;v[c+776>>2]=v[c+776>>2]+1;break a}b=v[m+12>>2];e=v[m+796>>2]+B(e,12)|0;v[e>>2]=v[m+8>>2];v[e+4>>2]=b;v[e+8>>2]=v[m+16>>2];v[m+800>>2]=v[m+800>>2]+1;break a}t[j+44|0]=g|1}j=v[j+16>>2];if(j){continue}break}e=w[a+44|0]&7;b=e|64;i:{if(k>>>0>=65){break i}b=e|32;if(k>>>0>=17){break i}b=e|16;if(k>>>0>=5){break i}b=k?e|8:e}t[a+44|0]=b;b=v[m+800>>2];j:{if(!b){break j}n=v[m+796>>2];e=0;i=0;k=0;l=32;d=xa-32|0;xa=d;t[d+12|0]=0;j=d-128|0;xa=j;v[d+8>>2]=j;c=b-1|0;k:{if((c|0)<=0){break k}while(1){l:{if((c|0)<=(e|0)){break l}while(1){if(c-e>>>0<=4){while(1){h=e;e=e+1|0;b=e;f=h;while(1){f=y[(n+B(b,12)|0)+8>>2]>y[(n+B(f,12)|0)+8>>2]?b:f;g=(b|0)<(c|0);b=b+1|0;if(g){continue}break}if((f|0)!=(h|0)){b=n+B(f,12)|0;v[d+24>>2]=v[b+8>>2];f=v[b+4>>2];v[d+16>>2]=v[b>>2];v[d+20>>2]=f;h=n+B(h,12)|0;v[b+8>>2]=v[h+8>>2];f=v[h+4>>2];v[b>>2]=v[h>>2];v[b+4>>2]=f;v[h+8>>2]=v[d+24>>2];b=v[d+20>>2];v[h>>2]=v[d+16>>2];v[h+4>>2]=b}if((c|0)!=(e|0)){continue}break l}}f=n+B(e,12)|0;o=v[f+8>>2];h=n+B((c+e|0)/2|0,12)|0;if(o>>>0>2]){v[d+24>>2]=v[f+8>>2];b=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=b;v[f+8>>2]=v[h+8>>2];b=v[h+4>>2];v[f>>2]=v[h>>2];v[f+4>>2]=b;v[h+8>>2]=v[d+24>>2];b=v[d+20>>2];v[h>>2]=v[d+16>>2];v[h+4>>2]=b;o=v[f+8>>2]}g=n+B(c,12)|0;b=v[g+8>>2];if(o>>>0>>0){v[d+24>>2]=v[f+8>>2];b=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=b;v[f+8>>2]=v[g+8>>2];b=v[g+4>>2];v[f>>2]=v[g>>2];v[f+4>>2]=b;v[g+8>>2]=v[d+24>>2];b=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=b;b=v[g+8>>2]}if(y[h+8>>2]>>0){v[d+24>>2]=v[h+8>>2];b=v[h+4>>2];v[d+16>>2]=v[h>>2];v[d+20>>2]=b;v[h+8>>2]=v[g+8>>2];b=v[g+4>>2];v[h>>2]=v[g>>2];v[h+4>>2]=b;v[g+8>>2]=v[d+24>>2];b=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=b}v[d+24>>2]=v[h+8>>2];b=v[h+4>>2];v[d+16>>2]=v[h>>2];v[d+20>>2]=b;f=c-1|0;o=n+B(f,12)|0;b=o;g=v[b+4>>2];v[h>>2]=v[b>>2];v[h+4>>2]=g;v[h+8>>2]=v[b+8>>2];v[b+8>>2]=v[d+24>>2];b=v[d+20>>2];v[o>>2]=v[d+16>>2];v[o+4>>2]=b;b=e;while(1){q=v[o+8>>2];while(1){h=b;b=b+1|0;g=n+B(b,12)|0;if(q>>>0>2]){continue}break}while(1){f=f-1|0;p=n+B(f,12)|0;if(q>>>0>y[p+8>>2]){continue}break}if((b|0)<(f|0)){v[d+24>>2]=v[g+8>>2];h=v[g+4>>2];v[d+16>>2]=v[g>>2];v[d+20>>2]=h;v[g+8>>2]=v[p+8>>2];h=v[p+4>>2];v[g>>2]=v[p>>2];v[g+4>>2]=h;v[p+8>>2]=v[d+24>>2];h=v[d+20>>2];v[p>>2]=v[d+16>>2];v[p+4>>2]=h;continue}break}v[d+24>>2]=v[g+8>>2];f=v[g+4>>2];v[d+16>>2]=v[g>>2];v[d+20>>2]=f;v[g+8>>2]=v[o+8>>2];f=v[o+4>>2];v[g>>2]=v[o>>2];v[g+4>>2]=f;v[o+8>>2]=v[d+24>>2];f=v[d+20>>2];v[o>>2]=v[d+16>>2];v[o+4>>2]=f;m:{if((b-e|0)<(c-b|0)){if(l-1>>>0<=i>>>0){f=l<<3;if(f){b=v[37696];g=b+12|0;b=(G=g,F=f,E=Ba[v[v[b>>2]+20>>2]](b)|0?39671:63804,D=17218,C=155,A=v[v[g>>2]+8>>2],Ba[A](G|0,F|0,E|0,D|0,C|0)|0)}else{b=0}l=l<<1;b=H9(b,j,i<<2);f=k;k=1;if(!(!f|!j)){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,j)}j=b}b=(i<<2)+j|0;v[b>>2]=e;v[b+4>>2]=h;e=h+2|0;break m}if(l-1>>>0<=i>>>0){f=l<<3;if(f){b=v[37696];g=b+12|0;b=(C=g,D=f,E=Ba[v[v[b>>2]+20>>2]](b)|0?39671:63804,F=17218,G=155,A=v[v[g>>2]+8>>2],Ba[A](C|0,D|0,E|0,F|0,G|0)|0)}else{b=0}l=l<<1;b=H9(b,j,i<<2);f=k;k=1;if(!(!f|!j)){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,j)}j=b}b=(i<<2)+j|0;v[b>>2]=h+2;v[b+4>>2]=c;c=h}i=i+2|0;if((c|0)>(e|0)){continue}break}}if(i){b=i-2|0;e=v[(b<<2)+j>>2];c=v[((i<<2)+j|0)-4>>2];i=b;continue}break}if(!k|!j){break k}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,j)}if(w[d+12|0]){u9(v[d+8>>2])}xa=d+32|0;n:{o:{e=v[m+800>>2]<<2;if(!e){break o}j=v[37696];h=Ba[v[v[j+12>>2]+8>>2]](j+12|0,e,24422,11939,262)|0;if(!h){break o}f=-1879048192;i=v[m+800>>2];j=0;b=0;while(1){k=h;if(b>>>0>>0){p:{while(1){d=j;c=v[m+796>>2]+B(b,12)|0;if(y[c+8>>2]>>0){break p}j=v[c>>2];v[j+40>>2]=v[c+4>>2];q:{if(w[c+11|0]&96){v[k>>2]=j;c=1;break q}r=v[j>>2];e=v[r+28>>2];if(!e){c=0;break q}z=v[c+4>>2];o=v[r+20>>2];c=0;g=k;while(1){e=e-1|0;l=v[o>>2];r:{if(w[l+20|0]!=4){break r}p=v[l+24>>2];if((p|0)==(z|0)){break r}q=x[v[p+52>>2]>>1]&(w[p+68|0]>>>3&1)-1&6;n=v[p+60>>2];s:{if((r|0)==(n|0)){l=q&4;n=v[p- -64>>2];q=q&2;break s}l=q&2;q=q&4}if(!n|t[v[n+44>>2]+44|0]&1|(q?0:l)){break r}l=v[n+164>>2];if(t[l+44|0]&1){break r}v[g>>2]=l;v[l+40>>2]=p;if(j){v[l+36>>2]=v[j+32>>2];v[j+32>>2]=l;v[l+28>>2]=j}t[l+44|0]=w[l+44|0]|1;g=g+4|0;c=c+1|0}o=o+4|0;if(e){continue}break}}v[j+24>>2]=d;k=(c<<2)+k|0;b=b+1|0;if((i|0)!=(b|0)){continue}break}b=i}e=h;if((k|0)!=(e|0)){while(1){c=e+4|0;g=v[e>>2];q=v[g>>2];e=v[q+28>>2];t:{if(!e){i=0;break t}r=v[g+40>>2];o=v[q+20>>2];i=0;f=k;while(1){e=e-1|0;d=v[o>>2];u:{if(w[d+20|0]!=4){break u}p=v[d+24>>2];if((p|0)==(r|0)){break u}d=x[v[p+52>>2]>>1]&(w[p+68|0]>>>3&1)-1&6;n=v[p+60>>2];v:{if((q|0)==(n|0)){l=d&4;n=v[p- -64>>2];d=d&2;break v}l=d&2;d=d&4}if(!n|t[v[n+44>>2]+44|0]&1|(d?0:l)){break u}d=v[n+164>>2];if(t[d+44|0]&1){break u}v[f>>2]=d;v[d+40>>2]=p;if(g){v[d+36>>2]=v[g+32>>2];v[g+32>>2]=d;v[d+28>>2]=g}t[d+44|0]=w[d+44|0]|1;f=f+4|0;i=i+1|0}o=o+4|0;if(e){continue}break}}e=c;k=(i<<2)+k|0;if((c|0)!=(k|0)){continue}break}}}b=b+s|0;s=0;i=b;e=b;c=v[m+800>>2];w:{if(b>>>0>=c>>>0){break w}while(1){f=v[m+796>>2];k=f+B(e,12)|0;if(y[k+8>>2]<2281701376){break w}d=v[k>>2];g=w[d+44|0];x:{if(!(g&1)){t[d+44|0]=g|1;c=f+B(i,12)|0;v[c+8>>2]=v[k+8>>2];f=v[k+4>>2];v[c>>2]=v[k>>2];v[c+4>>2]=f;i=i+1|0;c=v[m+800>>2];break x}s=s+1|0}e=e+1|0;if(c>>>0>e>>>0){continue}break}}f=-2013265920;u=u+1|0;if((u|0)!=2){continue}break}break n}a9(v[37696],16,11939,405,75987,0);break j}if(b>>>0>>0){while(1){i=v[m+796>>2]+B(b,12)|0;k=v[i>>2];e=w[k+44|0];if(!(e&1)){t[k+44|0]=e|1;e=h;d=0;o=v[k>>2];g=v[o+28>>2];if(g){p=v[i+4>>2];l=v[o+20>>2];while(1){g=g-1|0;c=v[l>>2];y:{if(w[c+20|0]!=4){break y}i=v[c+24>>2];if((i|0)==(p|0)){break y}c=x[v[i+52>>2]>>1]&(w[i+68|0]>>>3&1)-1&6;f=v[i+60>>2];z:{if((o|0)==(f|0)){n=c&4;f=v[i- -64>>2];c=c&2;break z}n=c&2;c=c&4}if(!f|t[v[f+44>>2]+44|0]&1|(c?0:n)){break y}c=v[f+164>>2];if(t[c+44|0]&1){break y}v[e>>2]=c;v[c+40>>2]=i;if(k){v[c+36>>2]=v[k+32>>2];v[k+32>>2]=c;v[c+28>>2]=k}t[c+44|0]=w[c+44|0]|1;e=e+4|0;d=d+1|0}l=l+4|0;if(g){continue}break}}if(d){c=h+(d<<2)|0;e=h;while(1){f=e+4|0;p=v[e>>2];s=v[p>>2];e=v[s+28>>2];A:{if(!e){i=0;break A}r=v[p+40>>2];o=v[s+20>>2];i=0;d=c;while(1){e=e-1|0;g=v[o>>2];B:{if(w[g+20|0]!=4){break B}q=v[g+24>>2];if((q|0)==(r|0)){break B}g=x[v[q+52>>2]>>1]&(w[q+68|0]>>>3&1)-1&6;n=v[q+60>>2];C:{if((s|0)==(n|0)){l=g&4;n=v[q- -64>>2];g=g&2;break C}l=g&2;g=g&4}if(!n|t[v[n+44>>2]+44|0]&1|(g?0:l)){break B}g=v[n+164>>2];if(t[g+44|0]&1){break B}v[d>>2]=g;v[g+40>>2]=q;if(p){v[g+36>>2]=v[p+32>>2];v[p+32>>2]=g;v[g+28>>2]=p}t[g+44|0]=w[g+44|0]|1;d=d+4|0;i=i+1|0}o=o+4|0;if(e){continue}break}}e=f;c=(i<<2)+c|0;if((e|0)!=(c|0)){continue}break}}v[k+24>>2]=j;c=v[m+800>>2];j=k}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+20>>2]=j;a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,h)}a=v[m+804>>2];D:{if((a|0)<0|!(a&2147483647)){break D}a=v[m+796>>2];if((a|0)==(m+24|0)|!a){break D}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,a)}xa=m+816|0}function iv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0);f=xa-320|0;xa=f;q=z[c+20>>2];n=z[c+16>>2];s=z[c+24>>2];k=z[c>>2];i=C(k+k);p=z[c+8>>2];j=z[c+4>>2];m=z[c+12>>2];r=C(m+m);c=a;o=z[a+8>>2];l=C(C(C(i*p)-C(j*r))*o);z[f+124>>2]=s-l;j=C(o*C(C(p*r)+C(i*j)));z[f+120>>2]=q-j;z[f+112>>2]=l+s;z[f+108>>2]=q+j;j=C(o*C(C(k*i)+C(C(m*r)+C(-1))));z[f+116>>2]=n-j;z[f+104>>2]=n+j;i=z[e>>2];m=z[a+4>>2];x=z[d+4>>2];n=C(x+x);s=z[d+8>>2];l=C(n*s);p=z[d>>2];q=C(p+p);k=z[d+12>>2];j=C(q*k);z[f+68>>2]=l-j;z[f+60>>2]=l+j;j=C(C(1)-C(p*q));r=C(x*n);z[f+72>>2]=j-r;l=j;j=C(s+s);o=C(s*j);z[f+56>>2]=l-o;s=C(q*s);p=C(n*k);z[f+64>>2]=s+p;l=C(q*x);j=C(j*k);z[f+52>>2]=l-j;z[f+48>>2]=s-p;z[f+44>>2]=l+j;z[f+40>>2]=C(C(1)-r)-o;z[f+76>>2]=z[d+16>>2];z[f+80>>2]=z[d+20>>2];z[f+84>>2]=z[d+24>>2];z[f+88>>2]=z[b+4>>2];z[f+92>>2]=z[b+8>>2];z[f+96>>2]=z[b+12>>2];d=0;I=f+76|0;J=f+88|0;G=F_(f+104|0,f+116|0,I,J,f+40|0,f+36|0,f+24|0);j=C(m+i);a:{if(G>=C(j*j)){break a}h=f- -64|0;b=f+52|0;b:{c:{if(G==C(0)){A=z[f+72>>2];x=z[f+68>>2];E=z[f+64>>2];r=z[f+60>>2];m=z[f+56>>2];o=z[f+52>>2];U=z[f+84>>2];V=z[f+80>>2];W=z[f+76>>2];R=z[f+124>>2];S=z[f+120>>2];T=z[f+116>>2];u=z[f+48>>2];P=z[f+112>>2];y=z[f+44>>2];F=z[f+108>>2];t=z[f+40>>2];Q=z[f+104>>2];break c}P=z[f+112>>2];R=z[f+124>>2];U=z[f+84>>2];A=z[f+72>>2];u=z[f+48>>2];r=z[f+60>>2];Q=z[f+104>>2];T=z[f+116>>2];W=z[f+76>>2];E=z[f+64>>2];t=z[f+40>>2];o=z[f+52>>2];k=z[f+36>>2];F=z[f+108>>2];S=z[f+120>>2];i=z[f+24>>2];y=z[f+44>>2];s=z[f+28>>2];m=z[f+56>>2];j=z[f+32>>2];x=z[f+68>>2];V=z[f+80>>2];p=C(C(C(C(i*y)+C(s*m))+C(j*x))+V);z[f+28>>2]=p;l=C(W+C(C(C(i*t)+C(s*o))+C(j*E)));z[f+24>>2]=l;j=C(U+C(C(C(i*u)+C(s*r))+C(j*A)));z[f+32>>2]=j;i=C(C(P+C(k*C(R-P)))-j);s=C(C(Q+C(k*C(T-Q)))-l);l=C(C(F+C(k*C(S-F)))-p);j=C(K(C(C(i*i)+C(C(s*s)+C(l*l)))));if(!(j>C(0))){break c}j=C(C(1)/j);A=C(i*j);z[f+16>>2]=A;E=C(l*j);z[f+12>>2]=E;x=C(s*j);z[f+8>>2]=x;gZ(g,f+104|0,z[c+4>>2],f+40|0,f+8|0,z[e>>2]);if(v[g+4096>>2]==2){break b}s=z[e>>2];q=z[c+4>>2];d=140784;EV(f+224|0,I,J,f+40|0,b,h);r=z[f+104>>2];z[f+208>>2]=r;o=z[f+108>>2];z[f+212>>2]=o;m=z[f+112>>2];z[f+216>>2]=m;n=z[f+116>>2];z[f+192>>2]=n;k=z[f+120>>2];z[f+196>>2]=k;i=z[f+124>>2];z[f+200>>2]=i;u=C(i-m);t=C(n-r);y=C(k-o);j=C(K(C(C(u*u)+C(C(t*t)+C(y*y)))));if(j>C(0)){p=C(C(.009999999776482582)/j);l=C(u*p);m=C(m-l);z[f+216>>2]=m;j=C(y*p);o=C(o-j);z[f+212>>2]=o;p=C(t*p);r=C(r-p);z[f+208>>2]=r;l=C(i+l);z[f+200>>2]=l;j=C(k+j);z[f+196>>2]=j;y=C(j-o);j=C(n+p);z[f+192>>2]=j;u=C(l-m);t=C(j-r)}z[f+180>>2]=y;z[f+176>>2]=t;z[f+184>>2]=u;i=C(C(t*E)-C(x*y));z[f+168>>2]=-i;l=C(C(u*x)-C(A*t));z[f+164>>2]=-l;p=C(C(y*A)-C(E*u));j=C(-p);z[f+160>>2]=j;z[f+172>>2]=-C(C(C(j*r)-C(o*l))-C(i*m));l=C(D(l));j=C(D(p));o=C(D(i));d:{e:{if(!(!(l>j)|!(l>o))){a=0;e=2;break e}b=2;e=0;a=1;if(!(j>2]*z[h+e>>2])-C(z[e+I>>2]*z[h+J>>2])));m=C(q+s);r=C(-A);o=C(-E);s=C(-x);e=0;while(1){h=w[d|0];J=w[d+1|0];z[f+136>>2]=r;z[f+132>>2]=o;z[f+128>>2]=s;I=B(h,12);h=f+224|0;f:{if(!hZ(f+208|0,f+192|0,f+176|0,f+160|0,a,b,i,f+128|0,I+h|0,h+B(J,12)|0,f+140|0,f+144|0)){break f}k=z[f+140>>2];if(!(k>2];if(h>>>0>63){break f}p=z[f+148>>2];l=z[f+152>>2];j=z[f+144>>2];v[g+4096>>2]=h+1;h=(h<<6)+g|0;z[h+16>>2]=j-C(x*k);z[h+8>>2]=A;z[h+4>>2]=E;z[h>>2]=x;v[h+52>>2]=-1;z[h+12>>2]=k-q;z[h+24>>2]=l-C(A*k);z[h+20>>2]=p-C(E*k)}d=d+2|0;e=e+1|0;if((e|0)!=12){continue}break}if(v[g+4096>>2]){break b}l=z[c+4>>2];z[g+8>>2]=A;z[g+4>>2]=E;z[g>>2]=x;v[g+4096>>2]=1;z[g+16>>2]=z[f+24>>2];z[g+20>>2]=z[f+28>>2];j=z[f+32>>2];v[g+52>>2]=-1;z[g+12>>2]=C(K(G))-l;z[g+24>>2]=j;break b}s=C(C(P*u)+C(C(Q*t)+C(F*y)));p=C(C(R*u)+C(C(T*t)+C(y*S)));a=s>p;L=z[c+4>>2];q=C(L+(a?s:p));l=C(C(U*u)+C(C(W*t)+C(y*V)));M=C(D(C(C(A*u)+C(C(E*t)+C(y*x)))));Z=z[f+96>>2];_=z[f+88>>2];$=z[f+92>>2];H=C(D(C(C(r*u)+C(C(o*t)+C(y*m)))));j=C(C(M*Z)+C(C(C(D(C(C(u*u)+C(C(t*t)+C(y*y)))))*_)+C($*H)));k=C(l-j);if(qk?k:i;if(iN;q=C(L+(a?O:N));n=C(C(U*r)+C(C(W*o)+C(V*m)));G=C(D(C(C(A*r)+C(C(E*o)+C(x*m)))));i=C(C(G*Z)+C(C(H*_)+C($*C(D(C(C(r*r)+C(C(o*o)+C(m*m))))))));k=C(n-i);if(qk?k:i;if(iH;q=C(L+(a?N:H));n=C(C(U*A)+C(C(W*E)+C(V*x)));i=C(C(C(D(C(C(A*A)+C(C(E*E)+C(x*x)))))*Z)+C(C(M*_)+C($*G)));k=C(n-i);if(qk?k:i;if(iC(0)){i=C(C(1)/C(K(i)));O=C(q*i);X=C(n*i);Y=C(k*i)}M=C(C(X*y)-C(t*Y));G=C(C(Y*u)-C(y*O));H=C(C(O*t)-C(u*X));g:{if(!(C(D(M))>C(9.999999974752427e-7)?1:C(D(G))>C(9.999999974752427e-7)|C(D(H))>C(9.999999974752427e-7))){break g}q=C(0);n=C(0);k=C(0);i=C(C(M*M)+C(C(G*G)+C(H*H)));if(i>C(0)){i=C(C(1)/C(K(i)));k=C(M*i);q=C(G*i);n=C(H*i)}N=C(C(P*k)+C(C(Q*q)+C(F*n)));M=C(C(R*k)+C(C(T*q)+C(S*n)));a=N>M;H=C(L+(a?N:M));G=C(C(U*k)+C(C(W*q)+C(V*n)));i=C(C(C(D(C(C(A*k)+C(C(E*q)+C(x*n)))))*Z)+C(C(C(D(C(C(u*k)+C(C(t*q)+C(y*n)))))*_)+C($*C(D(C(C(r*k)+C(C(o*q)+C(m*n))))))));y=C(G-i);if(Hy?y:i;if(!(iC(9.999999974752427e-7)?1:C(D(y))>C(9.999999974752427e-7)|C(D(t))>C(9.999999974752427e-7))){break h}m=C(0);r=C(0);o=C(0);i=C(C(u*u)+C(C(y*y)+C(t*t)));if(i>C(0)){m=C(C(1)/C(K(i)));o=C(u*m);r=C(t*m);m=C(y*m)}z[f+232>>2]=o;z[f+228>>2]=r;z[f+224>>2]=m;if(!iZ(f+224|0,f+104|0,L,f+40|0,f+160|0)){break a}i=z[f+160>>2];if(!(iC(9.999999974752427e-7)?1:C(D(k))>C(9.999999974752427e-7)|C(D(n))>C(9.999999974752427e-7))){break i}r=C(0);o=C(0);m=C(0);i=C(C(q*q)+C(C(k*k)+C(n*n)));if(i>C(0)){r=C(C(1)/C(K(i)));m=C(q*r);o=C(n*r);r=C(k*r)}z[f+232>>2]=m;z[f+228>>2]=o;z[f+224>>2]=r;if(!iZ(f+224|0,f+104|0,L,f+40|0,f+160|0)){break a}i=z[f+160>>2];if(!(i>2]=x;q=a?C(-l):l;z[f+132>>2]=q;n=a?C(-p):p;z[f+128>>2]=n;gZ(g,f+104|0,L,f+40|0,f+128|0,z[e>>2]);if(v[g+4096>>2]==2){break b}r=z[c+4>>2];d=140784;EV(f+224|0,I,J,f+40|0,b,h);A=z[f+104>>2];z[f+208>>2]=A;E=z[f+108>>2];z[f+212>>2]=E;F=z[f+112>>2];z[f+216>>2]=F;k=z[f+116>>2];z[f+192>>2]=k;i=z[f+120>>2];z[f+196>>2]=i;o=z[f+124>>2];z[f+200>>2]=o;u=C(o-F);t=C(k-A);m=C(i-E);j=C(K(C(C(u*u)+C(C(t*t)+C(m*m)))));if(j>C(0)){p=C(C(.009999999776482582)/j);j=C(u*p);F=C(F-j);z[f+216>>2]=F;l=C(m*p);E=C(E-l);z[f+212>>2]=E;p=C(t*p);A=C(A-p);z[f+208>>2]=A;j=C(o+j);z[f+200>>2]=j;u=C(j-F);l=C(i+l);z[f+196>>2]=l;j=C(k+p);z[f+192>>2]=j;t=C(j-A);m=C(l-E)}z[f+176>>2]=t;z[f+184>>2]=u;z[f+180>>2]=m;l=C(C(u*n)-C(x*t));z[f+164>>2]=l;o=C(C(m*x)-C(q*u));z[f+160>>2]=o;j=C(C(t*q)-C(n*m));z[f+168>>2]=j;z[f+172>>2]=-C(C(j*F)+C(C(o*A)+C(E*l)));p=C(D(j));l=C(D(l));j=C(D(o));j:{k:{if(!(!(l>j)|!(l>p))){b=0;e=2;break k}a=2;e=0;b=1;if(!(j>2]*z[h+e>>2])-C(z[e+I>>2]*z[h+J>>2])));e=0;while(1){h=f+224|0;l:{if(!hZ(f+208|0,f+192|0,f+176|0,f+160|0,b,a,o,f+128|0,h+B(w[d|0],12)|0,h+B(w[d+1|0],12)|0,f+8|0,f+144|0)){break l}h=v[g+4096>>2];if(h>>>0>63){break l}p=z[f+148>>2];l=z[f+152>>2];j=z[f+144>>2];m=z[f+8>>2];v[g+4096>>2]=h+1;h=(h<<6)+g|0;z[h+16>>2]=j-C(n*m);z[h+8>>2]=x;z[h+4>>2]=q;z[h>>2]=n;v[h+52>>2]=-1;z[h+12>>2]=-C(r+m);z[h+24>>2]=l-C(x*m);z[h+20>>2]=p-C(q*m)}d=d+2|0;e=e+1|0;if((e|0)!=12){continue}break}if(v[g+4096>>2]){break b}i=z[c+4>>2];m=z[f+116>>2];r=z[f+104>>2];o=z[f+120>>2];p=z[f+108>>2];l=z[f+124>>2];j=z[f+112>>2];z[g+8>>2]=x;z[g+4>>2]=q;z[g>>2]=n;d=1;v[g+4096>>2]=1;v[g+52>>2]=-1;z[g+24>>2]=C(j+l)*C(.5);z[g+20>>2]=C(p+o)*C(.5);z[g+16>>2]=C(r+m)*C(.5);z[g+12>>2]=-C(s+i);break a}d=1}xa=f+320|0;return d|0}function fZ(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=0,s=C(0),x=C(0),y=C(0),A=C(0),B=0,E=C(0),F=C(0),G=0,H=0,I=C(0),J=C(0),K=0,L=0,M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=0,ha=0;v[a+4096>>2]=0;q=z[f+16>>2];y=z[f+20>>2];j=z[f+8>>2];k=z[f>>2];l=z[f+4>>2];p=z[f+12>>2];r=xa-128|0;s=z[f+24>>2];F=C(-z[f+36>>2]);n=z[f+28>>2];I=z[f+40>>2];x=z[f+32>>2];J=z[f+44>>2];N=z[g+36>>2];O=z[g+40>>2];P=z[g+44>>2];A=C(C(C(C(s*F)-C(n*I))-C(x*J))+C(C(C(s*N)+C(n*O))+C(x*P)));Q=z[g>>2];R=z[g+4>>2];S=z[g+8>>2];T=z[e>>2];aa=C(C(C(C(s*Q)+C(n*R))+C(x*S))*T);E=C(A+aa);U=z[g+12>>2];V=z[g+16>>2];W=z[g+20>>2];X=z[e+4>>2];ba=C(C(C(C(s*U)+C(n*V))+C(x*W))*X);Y=z[g+24>>2];Z=z[g+28>>2];_=z[g+32>>2];$=z[e+8>>2];x=C(C(C(C(s*Y)+C(n*Z))+C(x*_))*$);s=C(ba+x);z[r+120>>2]=E+s;ca=C(C(C(C(p*F)-C(q*I))-C(y*J))+C(C(C(p*N)+C(q*O))+C(y*P)));da=C(T*C(C(C(p*Q)+C(q*R))+C(y*S)));n=C(ca+da);ea=C(X*C(C(C(p*U)+C(q*V))+C(y*W)));fa=C($*C(C(C(p*Y)+C(q*Z))+C(y*_)));q=C(ea+fa);z[r+116>>2]=n+q;y=C(A-aa);z[r+104>>2]=y+s;p=C(ca-da);z[r+100>>2]=p+q;z[r+24>>2]=E-s;z[r+20>>2]=n-q;x=C(ba-x);z[r+88>>2]=E-x;A=C(ea-fa);z[r+84>>2]=n-A;z[r+72>>2]=y-x;z[r+68>>2]=p-A;z[r+56>>2]=E+x;z[r+52>>2]=n+A;z[r+40>>2]=y+x;z[r+36>>2]=p+A;x=C(C(C(C(k*F)-C(l*I))-C(j*J))+C(C(C(k*N)+C(l*O))+C(j*P)));E=C(T*C(C(C(k*Q)+C(l*R))+C(j*S)));n=C(x+E);A=C(X*C(C(C(k*U)+C(l*V))+C(j*W)));l=C($*C(C(C(k*Y)+C(l*Z))+C(j*_)));j=C(A+l);z[r+112>>2]=n+j;k=C(x-E);z[r+96>>2]=k+j;z[r+16>>2]=n-j;z[r+8>>2]=y-s;z[r+4>>2]=p-q;z[r>>2]=k-j;q=C(A-l);z[r+80>>2]=n-q;z[r+64>>2]=k-q;z[r+48>>2]=n+q;z[r+32>>2]=k+q;d=C(d+h);c=C(c+h);y=C(-h);i=v[a+4096>>2];e=0;while(1){g=(e<<4)+r|0;q=z[g>>2];a:{if(q>1]=0;break a}t[g+12|0]=1;b:{j=z[g+4>>2];if(!(c>=C(D(j)))){break b}k=z[g+8>>2];if(!(d>=C(D(k)))){break b}t[g+13|0]=1;if(i>>>0>63){break a}g=i+1|0;v[a+4096>>2]=g;i=(i<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];l=z[b+8>>2];z[i+24>>2]=k;z[i+20>>2]=j;z[i+16>>2]=q;z[i+8>>2]=l;v[i+52>>2]=-1;z[i+12>>2]=-q;i=g;break a}t[g+13|0]=0}e=e+1|0;if((e|0)!=8){continue}break}H=100448;q=C(-d);y=C(-c);while(1){e=H;H=e+8|0;o=v[e>>2]<<4;g=o+r|0;m=v[e+4>>2]<<4;c:{if(!(w[(m+r|0)+12|0]?1:w[g+12|0])){break c}e=m+r|0;d:{if(!(!w[(o+r|0)+13|0]|!w[e+13|0])){m=i;break d}K=g+4|0;L=e+4|0;B=z[g+4>>2]>z[e+4>>2];o=B?g:e;G=B?e:g;j=z[G+4>>2];e:{if(!(j>2];if(!(k>=c)){m=i;break e}l=z[G+8>>2];k=C(C(c-j)/C(k-j));l=C(C(C(z[o+8>>2]-l)*k)+l);if(!(d>=C(D(l)))){m=i;break e}p=z[G>>2];k=C(C(C(z[o>>2]-p)*k)+p);if(!(C(k+h)>=C(0))){m=i;break e}if(i>>>0>63){m=i;break e}m=i+1|0;v[a+4096>>2]=m;i=(i<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];p=z[b+8>>2];z[i+24>>2]=l;z[i+20>>2]=c;z[i+16>>2]=k;z[i+8>>2]=p;v[i+52>>2]=-1;z[i+12>>2]=-k}f:{if(!(j>2];if(!(k>=y)){i=m;break f}l=z[G+8>>2];j=C(C(y-j)/C(k-j));k=C(C(C(z[o+8>>2]-l)*j)+l);if(!(d>=C(D(k)))){i=m;break f}l=z[G>>2];j=C(C(C(z[o>>2]-l)*j)+l);if(!(C(j+h)>=C(0))){i=m;break f}if(m>>>0>63){i=m;break f}i=m+1|0;v[a+4096>>2]=i;m=(m<<6)+a|0;z[m>>2]=z[b>>2];z[m+4>>2]=z[b+4>>2];l=z[b+8>>2];z[m+24>>2]=k;z[m+20>>2]=y;z[m+16>>2]=j;z[m+8>>2]=l;v[m+52>>2]=-1;z[m+12>>2]=-j}M=B?L:K;g=g+8|0;e=e+8|0;ga=B?g:e;ha=B?e:g;j=z[G+8>>2];k=z[o+8>>2];m=j>k;g=m?o:G;e=m?G:o;j=m?k:j;g:{if(!(j>2];if(!(l>=d)){o=i;break g}o=B?K:L;k=z[(m?o:M)>>2];l=C(C(d-j)/C(l-j));p=C(C(C(z[(m?M:o)>>2]-k)*l)+k);if(!(c>=C(D(p)))){o=i;break g}k=z[g>>2];k=C(C(C(z[e>>2]-k)*l)+k);if(!(C(k+h)>=C(0))){o=i;break g}if(i>>>0>63){o=i;break g}o=i+1|0;v[a+4096>>2]=o;i=(i<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];l=z[b+8>>2];z[i+24>>2]=d;z[i+20>>2]=p;z[i+16>>2]=k;z[i+8>>2]=l;v[i+52>>2]=-1;z[i+12>>2]=-k}if(!(j>2];if(!(l>=q)){m=o;break d}i=B?K:L;k=z[(m?i:M)>>2];j=C(C(q-j)/C(l-j));k=C(C(C(z[(m?M:i)>>2]-k)*j)+k);if(!(c>=C(D(k)))){m=o;break d}l=z[g>>2];j=C(C(C(z[e>>2]-l)*j)+l);if(!(C(j+h)>=C(0))){m=o;break d}if(o>>>0>63){m=o;break d}m=o+1|0;v[a+4096>>2]=m;i=(o<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];l=z[b+8>>2];z[i+24>>2]=q;z[i+20>>2]=k;z[i+16>>2]=j;z[i+8>>2]=l;v[i+52>>2]=-1;z[i+12>>2]=-j}h:{if(!(w[e+13|0]?1:w[g+12|0])){break h}if(w[e+12|0]){i=m;break c}if(!w[g+13|0]){break h}i=m;break c}j=z[g+4>>2];k=z[g>>2];k=C(C(-k)/C(z[e>>2]-k));j=C(C(C(z[e+4>>2]-j)*k)+j);if(!(c>=C(D(j)))){i=m;break c}l=z[g+8>>2];k=C(C(C(z[e+8>>2]-l)*k)+l);if(!(d>=C(D(k)))){i=m;break c}if(m>>>0>63){i=m;break c}i=m+1|0;v[a+4096>>2]=i;e=(m<<6)+a|0;z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];l=z[b+8>>2];z[e+24>>2]=k;z[e+20>>2]=j;z[e+8>>2]=l;v[e+52>>2]=-1;v[e+12>>2]=0;v[e+16>>2]=0}if((H|0)!=100544){continue}break}g=0;H=0;while(1){e=(g<<4)+100544|0;m=(v[e>>2]<<4)+r|0;i:{if(!w[m+12|0]){break i}o=(v[e+4>>2]<<4)+r|0;if(!w[o+12|0]){break i}G=(v[e+8>>2]<<4)+r|0;if(!w[G+12|0]){break i}B=(v[e+12>>2]<<4)+r|0;if(!w[B+12|0]){break i}if(!(!w[G+13|0]|(!w[m+13|0]|!w[o+13|0]))){if(w[B+13|0]){break i}}j:{if(H&1){e=i;break j}h=z[m+4>>2];j=z[B+4>>2];k=z[B+8>>2];l=z[m+8>>2];if(C(C(C(h-j)*C(q-k))-C(C(y-j)*C(l-k)))>=C(0)){e=i;break j}n=z[o+4>>2];p=C(n-h);x=C(q-l);E=C(y-h);A=z[o+8>>2];s=C(A-l);if(C(C(p*x)-C(E*s))>=C(0)){e=i;break j}F=z[G+4>>2];I=C(C(F-n)*C(q-A));J=C(y-n);n=z[G+8>>2];if(C(I-C(J*C(n-A)))>=C(0)){e=i;break j}if(C(C(C(j-F)*C(q-n))-C(C(y-F)*C(k-n)))>=C(0)){e=i;break j}h=C(j-h);j=C(k-l);k=z[m>>2];l=C(z[B>>2]-k);j=C(C(C(C(E*h)+C(x*j))*l)/C(C(j*j)+C(C(l*l)+C(h*h))));h=C(z[o>>2]-k);h=C(j+C(k+C(C(C(C(E*p)+C(x*s))*h)/C(C(s*s)+C(C(h*h)+C(p*p))))));if(!(h>=C(0))){e=i;break j}H=H|1;if(i>>>0>63){e=i;break j}e=i+1|0;v[a+4096>>2]=e;i=(i<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];j=z[b+8>>2];z[i+24>>2]=q;z[i+20>>2]=y;z[i+16>>2]=h;z[i+8>>2]=j;v[i+52>>2]=-1;z[i+12>>2]=-h}k:{if(H&2){i=e;break k}h=z[m+4>>2];j=z[B+4>>2];k=z[B+8>>2];l=z[m+8>>2];if(C(C(C(h-j)*C(q-k))-C(C(c-j)*C(l-k)))>=C(0)){i=e;break k}n=z[o+4>>2];p=C(n-h);x=C(q-l);E=C(c-h);A=z[o+8>>2];s=C(A-l);if(C(C(p*x)-C(E*s))>=C(0)){i=e;break k}F=z[G+4>>2];I=C(C(F-n)*C(q-A));J=C(c-n);n=z[G+8>>2];if(C(I-C(J*C(n-A)))>=C(0)){i=e;break k}if(C(C(C(j-F)*C(q-n))-C(C(c-F)*C(k-n)))>=C(0)){i=e;break k}h=C(j-h);j=C(k-l);k=z[m>>2];l=C(z[B>>2]-k);j=C(C(C(C(E*h)+C(x*j))*l)/C(C(j*j)+C(C(l*l)+C(h*h))));h=C(z[o>>2]-k);h=C(j+C(k+C(C(C(C(E*p)+C(x*s))*h)/C(C(s*s)+C(C(h*h)+C(p*p))))));if(!(h>=C(0))){i=e;break k}H=H|2;if(e>>>0>63){i=e;break k}i=e+1|0;v[a+4096>>2]=i;e=(e<<6)+a|0;z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];j=z[b+8>>2];z[e+24>>2]=q;z[e+20>>2]=c;z[e+16>>2]=h;z[e+8>>2]=j;v[e+52>>2]=-1;z[e+12>>2]=-h}l:{if(H&4){e=i;break l}h=z[m+4>>2];j=z[B+4>>2];k=z[B+8>>2];l=z[m+8>>2];if(C(C(C(h-j)*C(d-k))-C(C(y-j)*C(l-k)))>=C(0)){e=i;break l}n=z[o+4>>2];p=C(n-h);x=C(d-l);E=C(y-h);A=z[o+8>>2];s=C(A-l);if(C(C(p*x)-C(E*s))>=C(0)){e=i;break l}F=z[G+4>>2];I=C(C(F-n)*C(d-A));J=C(y-n);n=z[G+8>>2];if(C(I-C(J*C(n-A)))>=C(0)){e=i;break l}if(C(C(C(j-F)*C(d-n))-C(C(y-F)*C(k-n)))>=C(0)){e=i;break l}h=C(j-h);j=C(k-l);k=z[m>>2];l=C(z[B>>2]-k);j=C(C(C(C(E*h)+C(x*j))*l)/C(C(j*j)+C(C(l*l)+C(h*h))));h=C(z[o>>2]-k);h=C(j+C(k+C(C(C(C(E*p)+C(x*s))*h)/C(C(s*s)+C(C(h*h)+C(p*p))))));if(!(h>=C(0))){e=i;break l}H=H|4;if(i>>>0>63){e=i;break l}e=i+1|0;v[a+4096>>2]=e;i=(i<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];j=z[b+8>>2];z[i+24>>2]=d;z[i+20>>2]=y;z[i+16>>2]=h;z[i+8>>2]=j;v[i+52>>2]=-1;z[i+12>>2]=-h}if(H&8){i=e;break i}h=z[m+4>>2];j=z[B+4>>2];k=z[B+8>>2];l=z[m+8>>2];if(C(C(C(h-j)*C(d-k))-C(C(c-j)*C(l-k)))>=C(0)){i=e;break i}n=z[o+4>>2];p=C(n-h);x=C(d-l);E=C(c-h);A=z[o+8>>2];s=C(A-l);if(C(C(p*x)-C(E*s))>=C(0)){i=e;break i}F=z[G+4>>2];I=C(C(F-n)*C(d-A));J=C(c-n);n=z[G+8>>2];if(C(I-C(J*C(n-A)))>=C(0)){i=e;break i}if(C(C(C(j-F)*C(d-n))-C(C(c-F)*C(k-n)))>=C(0)){i=e;break i}h=C(j-h);j=C(k-l);k=z[m>>2];l=C(z[B>>2]-k);j=C(C(C(C(E*h)+C(x*j))*l)/C(C(j*j)+C(C(l*l)+C(h*h))));h=C(z[o>>2]-k);h=C(j+C(k+C(C(C(C(E*p)+C(x*s))*h)/C(C(s*s)+C(C(h*h)+C(p*p))))));if(!(h>=C(0))){i=e;break i}H=H|8;if(e>>>0>63){i=e;break i}i=e+1|0;v[a+4096>>2]=i;e=(e<<6)+a|0;z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];j=z[b+8>>2];z[e+24>>2]=d;z[e+20>>2]=c;z[e+16>>2]=h;z[e+8>>2]=j;v[e+52>>2]=-1;z[e+12>>2]=-h}if(g>>>0<=4){g=g+1|0;if((H|0)!=15){continue}}break}if(i){g=0;while(1){q=z[f+36>>2];y=z[f+24>>2];j=z[f+12>>2];k=z[f>>2];l=z[f+40>>2];p=z[f+28>>2];s=z[f+16>>2];n=z[f+4>>2];b=(g<<6)+a|0;c=z[b+16>>2];d=z[b+20>>2];h=z[b+24>>2];z[b+24>>2]=C(C(C(c*z[f+8>>2])+C(d*z[f+20>>2]))+C(h*z[f+32>>2]))+z[f+44>>2];z[b+20>>2]=l+C(C(C(c*n)+C(d*s))+C(h*p));z[b+16>>2]=q+C(C(C(c*k)+C(d*j))+C(h*y));g=g+1|0;if((i|0)!=(g|0)){continue}break}}return i}function TX(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=0,A=C(0),D=C(0),E=0,G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0);l=xa-288|0;xa=l;k=xa-288|0;xa=k;v[k+264>>2]=0;v[k+268>>2]=0;v[k+256>>2]=0;v[k+260>>2]=0;M=z[d+8>>2];H=z[d+4>>2];N=z[d>>2];I=z[e+8>>2];O=z[e+4>>2];x=z[e>>2];v[k+240>>2]=1;p=z[c+8>>2];q=z[c>>2];n=z[c+4>>2];v[k+172>>2]=0;o=C(C(p*p)+C(C(q*q)+C(n*n)))>C(1.1920928955078125e-7);p=o?p:C(0);r=p;q=o?q:C(1);n=o?n:C(0);p=C(C(1)/C(K(C(C(p*p)+C(C(q*q)+C(n*n))))));s=C(r*p);z[k+168>>2]=-s;u=C(n*p);z[k+164>>2]=-u;r=C(q*p);z[k+160>>2]=-r;o=k+160|0;TW(k+224|0,a,o);y=v[b+4>>2];A=z[y+56>>2];S=z[y+52>>2];T=z[y+72>>2];E=y- -64|0;U=z[E>>2];D=z[y+68>>2];G=z[y+88>>2];q=z[y+80>>2];n=z[y+84>>2];p=z[y+48>>2];v[k+172>>2]=0;z[k+168>>2]=C(G*s)+C(C(q*r)+C(u*n));z[k+164>>2]=C(T*s)+C(C(U*r)+C(u*D));z[k+160>>2]=C(A*s)+C(C(p*r)+C(u*S));o=HV(y,o);A=z[E>>2];S=z[y+80>>2];T=z[y+84>>2];U=z[y+52>>2];D=z[y+68>>2];G=z[y+88>>2];o=v[y+152>>2]+B(o,12)|0;J=z[o+8>>2];q=z[y+56>>2];L=z[o>>2];n=z[y+72>>2];r=z[o+4>>2];p=z[y+48>>2];v[k+180>>2]=0;v[k+184>>2]=0;v[k+188>>2]=0;v[k+192>>2]=0;v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;v[k+208>>2]=0;v[k+212>>2]=0;v[k+216>>2]=0;v[k+220>>2]=0;v[k+172>>2]=0;v[k+176>>2]=0;q=C(C(G*J)+C(C(q*L)+C(r*n)));s=C(z[k+232>>2]-q);z[k+168>>2]=s;n=C(C(T*J)+C(C(U*L)+C(r*D)));u=C(z[k+228>>2]-n);z[k+164>>2]=u;p=C(C(S*J)+C(C(p*L)+C(r*A)));r=C(z[k+224>>2]-p);z[k+160>>2]=r;v[k+120>>2]=0;v[k+124>>2]=0;v[k+128>>2]=0;v[k+132>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+112>>2]=0;v[k+116>>2]=0;o=v[k+236>>2];v[k+104>>2]=v[k+232>>2];v[k+108>>2]=o;o=v[k+228>>2];v[k+96>>2]=v[k+224>>2];v[k+100>>2]=o;v[k+52>>2]=0;v[k+56>>2]=0;v[k+60>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+44>>2]=0;v[k+48>>2]=0;z[k+40>>2]=q;z[k+36>>2]=n;z[k+32>>2]=p;D=C(-s);G=C(-u);p=C(-r);a:{b:{A=C(C(s*s)+C(C(r*r)+C(u*u)));q=z[v[b+4>>2]+24>>2];o=v[a+4>>2];n=z[o+24>>2];n=C((n>q?q:n)*C(.10000000149011612));ca=C(n*n);c:{if(!(A>ca)){q=p;n=G;i=D;S=r;T=u;U=s;break c}_=C(n+i);ea=C(_*_);L=C(C(x*C(0))+N);N=C(C(O*C(0))+H);O=C(C(I*C(0))+M);i=D;n=G;q=p;while(1){S=r;T=u;U=s;v[k+28>>2]=0;r=C(C(1)/C(K(C(C(D*D)+C(C(p*p)+C(G*G))))));X=C(D*r);z[k+24>>2]=X;Q=C(p*r);z[k+16>>2]=Q;Y=C(G*r);z[k+20>>2]=Y;o=k+272|0;TW(o,a,k+16|0);fa=z[k+284>>2];$=z[k+280>>2];aa=z[k+272>>2];ba=z[k+276>>2];m=v[b+4>>2];V=z[m+52>>2];J=z[m+56>>2];M=z[m+72>>2];E=m- -64|0;H=z[E>>2];I=z[m+68>>2];x=z[m+88>>2];s=z[m+80>>2];u=z[m+84>>2];r=z[m+48>>2];v[k+284>>2]=0;W=C(-Q);z[k+280>>2]=C(C(s*W)-C(u*Y))-C(x*X);z[k+276>>2]=C(C(H*W)-C(I*Y))-C(M*X);z[k+272>>2]=C(C(r*W)-C(V*Y))-C(J*X);o=HV(m,o);s=z[k+16>>2];o=v[m+152>>2]+B(o,12)|0;H=z[o+8>>2];I=z[o>>2];x=z[o+4>>2];V=C(L+C(C(z[m+80>>2]*H)+C(C(z[m+48>>2]*I)+C(x*z[E>>2]))));P=C(aa-V);u=z[k+20>>2];J=C(N+C(C(z[m+84>>2]*H)+C(C(z[m+52>>2]*I)+C(x*z[m+68>>2]))));Z=C(ba-J);r=z[k+24>>2];M=C(O+C(C(z[m+88>>2]*H)+C(C(z[m+56>>2]*I)+C(x*z[m+72>>2]))));Q=C($-M);H=C(C(C(C(s*C(-P))-C(u*Z))-C(r*Q))-_);if(H>C(0)){I=z[e+8>>2];x=z[e>>2];ga=C(s*x);s=z[e+4>>2];u=C(C(r*I)+C(ga+C(u*s)));if(u>=C(0)){break b}r=R;R=C(r-C(H/u));if(R>r){if(R>C(1)){break b}q=z[d+8>>2];n=z[d+4>>2];i=z[d>>2];v[k+76>>2]=0;v[k+60>>2]=0;v[k+44>>2]=0;u=C(i+C(x*R));x=C(u-L);J=C(x+z[k+64>>2]);z[k+64>>2]=J;r=C(n+C(s*R));n=C(r-N);M=C(n+z[k+68>>2]);z[k+68>>2]=M;A=C(q+C(I*R));i=C(A-O);H=C(i+z[k+72>>2]);z[k+72>>2]=H;I=C(x+z[k+48>>2]);z[k+48>>2]=I;L=C(n+z[k+52>>2]);z[k+52>>2]=L;N=C(i+z[k+56>>2]);z[k+56>>2]=N;O=C(x+z[k+32>>2]);z[k+32>>2]=O;x=C(n+z[k+36>>2]);z[k+36>>2]=x;s=C(i+z[k+40>>2]);z[k+40>>2]=s;q=z[k+96>>2];n=z[k+100>>2];i=z[k+104>>2];v[k+172>>2]=0;z[k+168>>2]=i-s;z[k+164>>2]=n-x;z[k+160>>2]=q-O;q=z[k+112>>2];n=z[k+116>>2];i=z[k+120>>2];v[k+188>>2]=0;z[k+184>>2]=i-N;z[k+180>>2]=n-L;z[k+176>>2]=q-I;q=z[k+128>>2];n=z[k+132>>2];i=z[k+136>>2];v[k+204>>2]=0;z[k+200>>2]=i-H;z[k+196>>2]=n-M;z[k+192>>2]=q-J;m=v[b+4>>2];I=z[m+56>>2];L=z[m+52>>2];N=z[m+72>>2];E=m- -64|0;O=z[E>>2];x=z[m+68>>2];s=z[m+88>>2];q=z[m+80>>2];n=z[m+84>>2];i=z[m+48>>2];v[k+284>>2]=0;H=s;s=C(-X);J=n;n=C(-Y);z[k+280>>2]=C(H*s)+C(C(q*W)+C(J*n));z[k+276>>2]=C(N*s)+C(C(O*W)+C(x*n));z[k+272>>2]=C(I*s)+C(C(i*W)+C(L*n));o=HV(m,k+272|0);o=v[m+152>>2]+B(o,12)|0;q=z[o+8>>2];n=z[o>>2];i=z[o+4>>2];M=C(A+C(C(z[m+88>>2]*q)+C(C(z[m+56>>2]*n)+C(i*z[m+72>>2]))));Q=C($-M);J=C(r+C(C(z[m+84>>2]*q)+C(C(z[m+52>>2]*n)+C(i*z[m+68>>2]))));Z=C(ba-J);V=C(u+C(C(z[m+80>>2]*q)+C(C(z[m+48>>2]*n)+C(i*z[E>>2]))));P=C(aa-V);q=p;n=G;i=D;L=u;N=r;O=A;A=C(34028234663852886e22)}}x=A;E=v[k+240>>2];o=E<<4;m=o+(k+96|0)|0;z[m+12>>2]=fa;z[m+8>>2]=$;z[m+4>>2]=ba;z[m>>2]=aa;m=o+(k+32|0)|0;v[m+12>>2]=0;z[m+8>>2]=M;z[m+4>>2]=J;z[m>>2]=V;o=o+(k+160|0)|0;v[o+12>>2]=0;z[o+8>>2]=Q;z[o+4>>2]=Z;z[o>>2]=P;v[k+240>>2]=E+1;d:{e:{switch(E-1|0){case 0:A=z[k+168>>2];s=C(z[k+184>>2]-A);D=z[k+160>>2];u=C(z[k+176>>2]-D);G=z[k+164>>2];r=C(z[k+180>>2]-G);p=C(C(s*s)+C(C(u*u)+C(r*r)));if(p<=C(1.1920928955078125e-7)){v[k+240>>2]=1;o=v[k+164>>2];v[k+272>>2]=v[k+160>>2];v[k+276>>2]=o;o=v[k+172>>2];v[k+280>>2]=v[k+168>>2];v[k+284>>2]=o;break d}p=C(F(C(C(C(C(C(-D)*u)-C(r*G))-C(A*s))/p),C(1)));p=p>C(0)?p:C(0);z[k+280>>2]=A+C(s*p);z[k+276>>2]=G+C(r*p);z[k+272>>2]=D+C(u*p);break d;case 1:JV(k+272|0,k+160|0,k+96|0,k+32|0,k+240|0);break d;case 2:N_(k+272|0,k+160|0,k+96|0,k+32|0,k+240|0);break d;default:break e}}z[k+280>>2]=Q;z[k+276>>2]=Z;z[k+272>>2]=P}s=z[k+280>>2];D=C(-s);u=z[k+276>>2];G=C(-u);r=z[k+272>>2];p=C(-r);A=C(C(s*s)+C(C(r*r)+C(u*u)));if(eaA){continue}break}m=!(x>A);o=v[a+4>>2]}y=w[o+32|0];P=C(0);x=C(0);d=!(A>ca)|m;D=d?i:D;q=d?q:p;p=d?n:G;i=C(K(C(C(D*D)+C(C(q*q)+C(p*p)))));if(!(i<=C(1.1920928955078125e-7))){i=C(C(1)/i);da=C(D*i);P=C(p*i);x=C(q*i)}v[l+268>>2]=0;z[l+264>>2]=-da;z[l+260>>2]=-P;z[l+256>>2]=-x;z[l+240>>2]=R;v[l+252>>2]=v[k+252>>2];d=v[k+248>>2];v[l+244>>2]=v[k+244>>2];v[l+248>>2]=d;v[k+284>>2]=0;z[k+280>>2]=m?U:s;z[k+276>>2]=m?T:u;z[k+272>>2]=m?S:r;m=v[k+268>>2];o=v[k+264>>2];v[k+24>>2]=o;v[k+28>>2]=m;E=v[k+260>>2];d=v[k+256>>2];v[k+16>>2]=d;v[k+20>>2]=E;v[k+8>>2]=o;v[k+12>>2]=m;v[k>>2]=d;v[k+4>>2]=E;IV(k+160|0,k+96|0,k+32|0,k+272|0,k+16|0,k,v[k+240>>2]);q=z[v[a+4>>2]+16>>2];n=z[k+16>>2];p=z[k+20>>2];i=z[k+24>>2];v[l+284>>2]=0;z[l+280>>2]=i+(y?C(da*q):C(-0));z[l+276>>2]=p+(y?C(P*q):C(-0));z[l+272>>2]=n+(y?C(x*q):C(-0));o=1;break a}o=0}xa=k+288|0;if(o){d=v[l+244>>2];v[f>>2]=v[l+240>>2];v[f+4>>2]=d;d=v[l+252>>2];v[f+8>>2]=v[l+248>>2];v[f+12>>2]=d;if(!(!j|z[l+240>>2]!=C(0))){j=v[a+4>>2];E=v[b+4>>2];z[l+224>>2]=C(z[j+16>>2]+z[E+16>>2])*C(100);t[l+215|0]=0;v[l+168>>2]=0;v[l+172>>2]=0;v[l+160>>2]=0;v[l+164>>2]=0;v[l+152>>2]=0;v[l+156>>2]=0;v[l+144>>2]=0;v[l+148>>2]=0;v[l+136>>2]=0;v[l+140>>2]=0;v[l+128>>2]=0;v[l+132>>2]=0;v[l+192>>2]=0;d=v[a+8>>2];v[l+56>>2]=d;v[l+48>>2]=141516;v[l+52>>2]=j;j=v[d+12>>2];v[l+72>>2]=v[d+8>>2];v[l+76>>2]=j;j=v[d+20>>2];v[l+80>>2]=v[d+16>>2];v[l+84>>2]=j;j=v[d+28>>2];v[l+88>>2]=v[d+24>>2];v[l+92>>2]=j;j=v[d+36>>2];v[l+96>>2]=v[d+32>>2];v[l+100>>2]=j;j=v[d+44>>2];v[l+104>>2]=v[d+40>>2];v[l+108>>2]=j;j=v[d+52>>2];v[l+112>>2]=v[d+48>>2];v[l+116>>2]=j;j=v[d+60>>2];v[l+120>>2]=v[d+56>>2];v[l+124>>2]=j;j=v[d+4>>2];v[l+64>>2]=v[d>>2];v[l+68>>2]=j;n=z[l+68>>2];z[l+68>>2]=z[l+80>>2];p=z[l+88>>2];i=z[l+72>>2];z[l+72>>2]=z[l+96>>2];z[l+80>>2]=n;z[l+96>>2]=i;z[l+88>>2]=z[l+100>>2];z[l+100>>2]=p;v[l+40>>2]=141216;v[l+44>>2]=E;f:{g:{if(UX(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}v[l+16>>2]=1065353216;c=v[l+28>>2];v[l+8>>2]=v[l+24>>2];v[l+12>>2]=c;c=v[l+20>>2];v[l>>2]=v[l+16>>2];v[l+4>>2]=c;if(J_(a,b,l+220|0,l+216|0,w[l+215|0],0,l,l+128|0)-5>>>0<=1){break g}v[l+280>>2]=0;v[l+284>>2]=0;v[l+272>>2]=0;v[l+276>>2]=0;q=z[e+8>>2];n=z[e>>2];p=z[e+4>>2];v[l+268>>2]=0;i=C(C(1)/C(K(C(C(q*q)+C(C(n*n)+C(p*p))))));z[l+264>>2]=i*C(-q);z[l+260>>2]=i*C(-p);z[l+256>>2]=i*C(-n);i=C(0);break f}a=v[l+140>>2];v[l+280>>2]=v[l+136>>2];v[l+284>>2]=a;a=v[l+132>>2];v[l+272>>2]=v[l+128>>2];v[l+276>>2]=a;a=v[l+164>>2];v[l+256>>2]=v[l+160>>2];v[l+260>>2]=a;a=v[l+172>>2];v[l+264>>2]=v[l+168>>2];v[l+268>>2]=a;i=z[l+192>>2]}z[f>>2]=i>2];v[h>>2]=v[l+272>>2];v[h+4>>2]=a;a=v[l+284>>2];v[h+8>>2]=v[l+280>>2];v[h+12>>2]=a;a=v[l+260>>2];v[g>>2]=v[l+256>>2];v[g+4>>2]=a;a=v[l+268>>2];v[g+8>>2]=v[l+264>>2];v[g+12>>2]=a}xa=l+288|0;return o}function pN(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=C(0),t=0,u=0,w=0,y=0,A=0,D=0,E=0,F=C(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=C(0),V=0,W=0,X=0,Y=0,Z=0,_=C(0);d=v[a+32>>2];c=v[a+36>>2];E=v[a+40>>2];b=v[a+28>>2];F=z[b+92>>2];N=v[b+80>>2];R=v[b+84>>2];y=xa-48|0;xa=y;G=v[a+44>>2];a=v[G+368>>2];t=v[a>>2];if(t){v[a>>2]=v[t>>2]}if(!t){a=v[37696];h=Ba[v[v[a>>2]+20>>2]](a)|0?26947:63804;h=Ba[v[v[a+12>>2]+8>>2]](a+12|0,12195,h,19395,82)|0;a=h+19&-16;v[a-4>>2]=a-h;t=gB(a,v[G+372>>2])}f=v[b+100>>2]+4|0;v[b+100>>2]=f;g=v[b+108>>2]+128|0;v[b+108>>2]=g;e=v[b+116>>2]+1|0;v[b+116>>2]=e;J=t+12048|0;i=v[c+4>>2];I=v[E+11896>>2];V=v[d+56>>2];S=v[E+11892>>2];D=v[G+484>>2];W=v[G+472>>2];O=v[d+44>>2];A=v[d+36>>2];h=v[c>>2];T=v[E+11968>>2];K=t+12060|0;a=v[E+12052>>2];if(a>>>0>(v[t+12056>>2]&2147483647)>>>0){yw(J,a);a=v[E+12052>>2]}if((v[t+12068>>2]&2147483647)>>>0>>0){yw(K,a)}o=f-4|0;u=g-128|0;r=e-1|0;k=i&2147483647;v[y+40>>2]=v[J>>2];v[y+44>>2]=v[K>>2];U=C(C(1)/F);a:{if(N>>>0<2){c=0;g=0;l=128;i=4;break a}a=V<<6;H=a+D|0;P=a+W|0;i=4;l=128;g=0;c=0;L=1;while(1){b:{if(v[b+112>>2]>=(p|0)){break b}a=3e4;if(v[b+112>>2]>=(p|0)){break b}while(1){if(v[b+112>>2]>=(p|0)){break b}a=a-1|0;if(a){continue}a=1e4;continue}}c:{if(v[b+120>>2]>=(c|0)){break c}a=3e4;if(v[b+120>>2]>=(c|0)){break c}while(1){if(v[b+120>>2]>=(c|0)){break c}a=a-1|0;if(a){continue}a=1e4;continue}}a=0;e=r-c|0;d:{if(k>>>0<=e>>>0){break d}while(1){d=v[v[E+12144>>2]+B(e,52)>>2];Ba[v[v[d>>2]+136>>2]](d,F,U,v[J>>2],v[K>>2],0,1,s);a=a+1|0;d=v[b+116>>2]+1|0;v[b+116>>2]=d;r=d-1|0;e=r-c|0;if(k>>>0>e>>>0){continue}break}if(!a){break d}v[b+120>>2]=v[b+120>>2]+a}e:{q=c+k|0;if((q|0)<=v[b+120>>2]){break e}a=3e4;if((q|0)<=v[b+120>>2]){break e}while(1){if((q|0)<=v[b+120>>2]){break e}a=a-1|0;if(a){continue}a=1e4;continue}}j=0;n=0;if(I){while(1){f:{if(v[b+104>>2]>=(g|0)){break f}a=3e4;if(v[b+104>>2]>=(g|0)){break f}while(1){if(v[b+104>>2]>=(g|0)){break f}a=a-1|0;if(a){continue}a=1e4;continue}}d=o-g|0;f=v[(n<<2)+S>>2];g:{if(d>>>0>=f>>>0){break g}Q=(j<<3)+O|0;e=0;while(1){a=f-d|0;m=a>>>0>>0?a:i;h:{if(!m){break h}w=Q+(d<<3)|0;a=0;if((m|0)!=1){Z=m&-2;c=0;while(1){M=a<<3;X=M+w|0;Y=y+8|0;Ba[v[(x[X+6>>1]<<2)+132448>>2]](X,A,D,C(-34028234663852886e22),s,Y);M=w+(M|8)|0;Ba[v[(x[M+6>>1]<<2)+132448>>2]](M,A,D,C(-34028234663852886e22),s,Y);a=a+2|0;c=c+2|0;if((Z|0)!=(c|0)){continue}break}}if(!(m&1)){break h}a=w+(a<<3)|0;Ba[v[(x[a+6>>1]<<2)+132448>>2]](a,A,D,C(-34028234663852886e22),s,y+8|0)}e=e+m|0;i=i-m|0;i:{if(i){o=m+o|0;d=d+m|0;break i}i=4;a=v[b+100>>2]+4|0;v[b+100>>2]=a;o=a-4|0;d=o-g|0}if(f>>>0>d>>>0){continue}break}if(!e){break g}v[b+104>>2]=v[b+104>>2]+e}j=f+j|0;g=g+f|0;n=n+1|0;if((I|0)!=(n|0)){continue}break}}j:{if(v[b+104>>2]>=(g|0)){break j}a=3e4;if(v[b+104>>2]>=(g|0)){break j}while(1){if(v[b+104>>2]>=(g|0)){break j}a=a-1|0;if(a){continue}a=1e4;continue}}d=0;c=u-p|0;k:{if(h>>>0<=c>>>0){break k}while(1){a=h-c|0;f=a>>>0>>0?a:l;if(f){a=c<<6;e=a+H|0;j=a+P|0;a=0;while(1){a=a+1|0;n=a<<6;HM(n+j|0,e+n|0,F);if((a|0)!=(f|0)){continue}break}}d=d+f|0;l=l-f|0;l:{if(l){u=f+u|0;c=c+f|0;break l}l=128;a=v[b+108>>2]+128|0;v[b+108>>2]=a;u=a-128|0;c=u-p|0}if(h>>>0>c>>>0){continue}break}if(!d){break k}v[b+112>>2]=v[b+112>>2]+d}a=0;e=r-q|0;m:{if(k>>>0<=e>>>0){break m}while(1){d=v[E+12144>>2]+B(e,52)|0;c=v[(v[v[d>>2]+24>>2]<<2)+149624>>2];if(c){Ba[c|0](d,F,v[y+44>>2])}a=a+1|0;d=v[b+116>>2]+1|0;v[b+116>>2]=d;r=d-1|0;e=r-q|0;if(k>>>0>e>>>0){continue}break}if(!a){break m}v[b+120>>2]=v[b+120>>2]+a}c=k+q|0;p=h+p|0;s=C(s+F);L=L+1|0;if((N|0)!=(L|0)){continue}break}}n:{a=v[b+112>>2]>=(p|0);if(a|a){break n}a=3e4;while(1){if(v[b+112>>2]>=(p|0)){break n}a=a-1|0;if(a){continue}a=1e4;continue}}o:{a=v[b+120>>2]>=(c|0);if(a|a){break o}a=3e4;while(1){if(v[b+120>>2]>=(c|0)){break o}a=a-1|0;if(a){continue}a=1e4;continue}}e=r-c|0;p:{if(k>>>0<=e>>>0){break p}a=0;while(1){d=v[v[E+12144>>2]+B(e,52)>>2];Ba[v[v[d>>2]+136>>2]](d,F,U,v[J>>2],v[K>>2],0,1,s);a=a+1|0;d=v[b+116>>2]+1|0;v[b+116>>2]=d;r=d-1|0;e=r-c|0;if(k>>>0>e>>>0){continue}break}if(!a){break p}v[b+120>>2]=v[b+120>>2]+a}q:{q=c+k|0;if((q|0)<=v[b+120>>2]|(q|0)<=v[b+120>>2]){break q}a=3e4;while(1){if((q|0)<=v[b+120>>2]){break q}a=a-1|0;if(a){continue}a=1e4;continue}}if(I){n=0;j=0;while(1){r:{if(v[b+104>>2]>=(g|0)){break r}a=3e4;if(v[b+104>>2]>=(g|0)){break r}while(1){if(v[b+104>>2]>=(g|0)){break r}a=a-1|0;if(a){continue}a=1e4;continue}}d=o-g|0;f=v[(n<<2)+S>>2];s:{if(d>>>0>=f>>>0){break s}N=(j<<3)+O|0;e=0;while(1){a=f-d|0;m=a>>>0>>0?a:i;t:{if(!m){break t}w=N+(d<<3)|0;a=0;if((m|0)!=1){L=m&-2;c=0;while(1){H=a<<3;P=H+w|0;Q=y+8|0;Ba[v[(x[P+6>>1]<<2)+132544>>2]](P,A,D,s,Q);H=w+(H|8)|0;Ba[v[(x[H+6>>1]<<2)+132544>>2]](H,A,D,s,Q);a=a+2|0;c=c+2|0;if((L|0)!=(c|0)){continue}break}}if(!(m&1)){break t}a=w+(a<<3)|0;Ba[v[(x[a+6>>1]<<2)+132544>>2]](a,A,D,s,y+8|0)}e=e+m|0;i=i-m|0;u:{if(i){o=m+o|0;d=d+m|0;break u}i=4;a=v[b+100>>2]+4|0;v[b+100>>2]=a;o=a-4|0;d=o-g|0}if(f>>>0>d>>>0){continue}break}if(!e){break s}v[b+104>>2]=v[b+104>>2]+e}j=f+j|0;g=g+f|0;n=n+1|0;if((I|0)!=(n|0)){continue}break}}v:{a=v[b+104>>2]>=(g|0);if(a|a){break v}a=3e4;while(1){if(v[b+104>>2]>=(g|0)){break v}a=a-1|0;if(a){continue}a=1e4;continue}}_=z[G+56>>2];c=u-p|0;w:{if(h>>>0<=c>>>0){break w}e=p+128|0;a=V<<6;j=a+D|0;n=a+W|0;d=0;while(1){a=h-c|0;f=a>>>0>>0?a:l;if(f){a=c<<6;m=a+j|0;u=a+n|0;a=0;while(1){a=a+1|0;w=a<<6;HM(w+u|0,m+w|0,F);if((a|0)!=(f|0)){continue}break}}d=d+f|0;l=l-f|0;if(l){c=c+f|0}else{l=128;a=v[b+108>>2]+128|0;v[b+108>>2]=a;c=a-e|0}if(h>>>0>c>>>0){continue}break}if(!d){break w}v[b+112>>2]=v[b+112>>2]+d}a=r-q|0;x:{if(k>>>0<=a>>>0){break x}c=0;while(1){d=v[E+12144>>2]+B(a,52)|0;a=v[v[d>>2]+24>>2];f=v[(a<<2)+149624>>2];if(f){Ba[f|0](d,F,v[y+44>>2]);a=v[v[d>>2]+24>>2]}a=v[(a<<2)+149616>>2];if(a){Ba[a|0](d,_)}c=c+1|0;a=v[b+116>>2]+1|0;v[b+116>>2]=a;r=a-1|0;a=r-q|0;if(k>>>0>a>>>0){continue}break}if(!c){break x}v[b+120>>2]=v[b+120>>2]+c}a=v[G+368>>2];v[t>>2]=v[a>>2];v[a>>2]=t;j=k+q|0;y:{d=h+p|0;if((d|0)<=v[b+112>>2]|(d|0)<=v[b+112>>2]){break y}a=3e4;while(1){if((d|0)<=v[b+112>>2]){break y}a=a-1|0;if(a){continue}a=1e4;continue}}z:{a=v[b+120>>2]>=(j|0);if(a|a){break z}a=3e4;while(1){if(v[b+120>>2]>=(j|0)){break z}a=a-1|0;if(a){continue}a=1e4;continue}}if(R){s=C(s+F);p=0;while(1){A:{if(v[b+104>>2]>=(g|0)){break A}a=3e4;if(v[b+104>>2]>=(g|0)){break A}while(1){if(v[b+104>>2]>=(g|0)){break A}a=a-1|0;if(a){continue}a=1e4;continue}}e=r-j|0;B:{if(k>>>0<=e>>>0){break B}d=R-p|0;a=0;while(1){c=v[E+12144>>2]+B(e,52)|0;h=v[c>>2];Ba[v[v[h>>2]+136>>2]](h,F,U,v[J>>2],v[K>>2],1,1,s);if((d|0)==1){c=v[c>>2];Ba[v[v[c>>2]+140>>2]](c,1)}a=a+1|0;c=v[b+116>>2]+1|0;v[b+116>>2]=c;r=c-1|0;e=r-j|0;if(k>>>0>e>>>0){continue}break}if(!a){break B}v[b+120>>2]=v[b+120>>2]+a}C:{j=j+k|0;if((j|0)<=v[b+120>>2]){break C}a=3e4;if(v[b+120>>2]>=(j|0)){break C}while(1){if(v[b+120>>2]>=(j|0)){break C}a=a-1|0;if(a){continue}a=1e4;continue}}l=0;n=0;if(I){while(1){D:{if(v[b+104>>2]>=(g|0)){break D}a=3e4;if(v[b+104>>2]>=(g|0)){break D}while(1){if(v[b+104>>2]>=(g|0)){break D}a=a-1|0;if(a){continue}a=1e4;continue}}d=o-g|0;h=v[(l<<2)+S>>2];E:{if(d>>>0>=h>>>0){break E}m=(n<<3)+O|0;e=0;while(1){a=h-d|0;f=a>>>0>>0?a:i;F:{if(!f){break F}t=m+(d<<3)|0;a=0;if((f|0)!=1){G=f&-2;c=0;while(1){u=a<<3;q=u+t|0;w=y+8|0;Ba[v[(x[q+6>>1]<<2)+132448>>2]](q,A,D,C(0),s,w);u=t+(u|8)|0;Ba[v[(x[u+6>>1]<<2)+132448>>2]](u,A,D,C(0),s,w);a=a+2|0;c=c+2|0;if((G|0)!=(c|0)){continue}break}}if(!(f&1)){break F}a=t+(a<<3)|0;Ba[v[(x[a+6>>1]<<2)+132448>>2]](a,A,D,C(0),s,y+8|0)}e=f+e|0;i=i-f|0;G:{if(i){o=f+o|0;d=d+f|0;break G}i=4;a=v[b+100>>2]+4|0;v[b+100>>2]=a;o=a-4|0;d=o-g|0}if(h>>>0>d>>>0){continue}break}if(!e){break E}v[b+104>>2]=v[b+104>>2]+e}n=h+n|0;g=g+h|0;l=l+1|0;if((I|0)!=(l|0)){continue}break}}p=p+1|0;if((R|0)!=(p|0)){continue}break}}H:{a=v[b+104>>2]>=(g|0);if(a|a){break H}c=3e4;while(1){if(v[b+104>>2]>=(g|0)){break H}c=c-1|0;if(c){continue}c=1e4;continue}}a=o-g|0;I:{if(T>>>0<=a>>>0){break I}g=g+4|0;d=0;while(1){c=T-a|0;h=c>>>0>>0?c:i;J:{if(!h){break J}f=(a<<3)+O|0;c=0;if((h|0)!=1){j=h&-2;e=0;while(1){k=c<<3;l=k+f|0;Ba[v[(x[l+6>>1]<<2)+132496>>2]](l,A,0);k=f+(k|8)|0;Ba[v[(x[k+6>>1]<<2)+132496>>2]](k,A,0);c=c+2|0;e=e+2|0;if((j|0)!=(e|0)){continue}break}}if(!(h&1)){break J}c=f+(c<<3)|0;Ba[v[(x[c+6>>1]<<2)+132496>>2]](c,A,0)}d=d+h|0;i=i-h|0;if(i){a=a+h|0}else{i=4;a=v[b+100>>2]+4|0;v[b+100>>2]=a;a=a-g|0}if(T>>>0>a>>>0){continue}break}if(!d){break I}v[b+104>>2]=v[b+104>>2]+d}xa=y+48|0}function u2(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=0,x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0;a:{b:{l=w[a+64|0];c:{if(!l){l=0;break c}g=z[e>>2];g=C(g*g);f=z[b+8>>2];h=z[b+4>>2];k=z[b>>2];i=z[c+8>>2];n=z[c+4>>2];o=z[c>>2];R=v[a+76>>2];u=1;while(1){d:{e=B(q,48)+R|0;j=C(z[e+8>>2]-f);m=C(j*j);j=C(z[e>>2]-k);p=C(j*j);j=C(z[e+4>>2]-h);j=C(m+C(p+C(j*j)));p=C(z[e+24>>2]-i);m=C(p*p);p=C(z[e+16>>2]-o);r=C(p*p);p=C(z[e+20>>2]-n);p=C(m+C(r+C(p*p)));if(g>(j>2];v[e>>2]=v[b>>2];v[e+4>>2]=l;l=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=l;l=B(q,48);e=l+v[a+76>>2]|0;q=v[c+4>>2];v[e+16>>2]=v[c>>2];v[e+20>>2]=q;q=v[c+12>>2];v[e+24>>2]=v[c+8>>2];v[e+28>>2]=q;e=l+v[a+76>>2]|0;l=v[d+4>>2];v[e+32>>2]=v[d>>2];v[e+36>>2]=l;l=v[d+12>>2];v[e+40>>2]=v[d+8>>2];v[e+44>>2]=l;if(u){break a}l=w[a+64|0];break d}q=q+1|0;u=q>>>0>>0;if((l|0)!=(q|0)){continue}}break}if(l>>>0>3){break b}}e=v[a+76>>2]+B(l,48)|0;l=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=l;l=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=l;e=v[c+4>>2];b=v[a+76>>2]+B(w[a+64|0],48)|0;v[b+16>>2]=v[c>>2];v[b+20>>2]=e;e=v[c+12>>2];v[b+24>>2]=v[c+8>>2];v[b+28>>2]=e;b=w[a+64|0];t[a+64|0]=b+1;a=v[a+76>>2]+B(b,48)|0;b=v[d+12>>2];v[a+40>>2]=v[d+8>>2];v[a+44>>2]=b;b=v[d+4>>2];v[a+32>>2]=v[d>>2];v[a+36>>2]=b;return 1}l=0;e=xa-256|0;xa=e;t[e+252|0]=0;v[e+248>>2]=0;q=v[a+76>>2];e=H9(e,q,192);u=v[b+12>>2];v[e+200>>2]=v[b+8>>2];v[e+204>>2]=u;u=v[b+4>>2];v[e+192>>2]=v[b>>2];v[e+196>>2]=u;b=v[c+12>>2];v[e+216>>2]=v[c+8>>2];v[e+220>>2]=b;b=v[c+4>>2];v[e+208>>2]=v[c>>2];v[e+212>>2]=b;b=v[d+12>>2];v[e+232>>2]=v[d+8>>2];v[e+236>>2]=b;b=v[d+4>>2];v[e+224>>2]=v[d>>2];v[e+228>>2]=b;g=z[d+12>>2];f=z[e+44>>2];b=g>f;c=!b<<2;g=b?f:g;f=z[e+92>>2];b=g>f;c=b?1:c;g=b?f:g;f=z[e+140>>2];b=g>f;b=z[e+188>>2]<(b?f:g)?3:b?2:c;t[b+(e+248|0)|0]=1;b=e+B(b,48)|0;c=v[b+12>>2];v[q+8>>2]=v[b+8>>2];v[q+12>>2]=c;c=v[b+4>>2];v[q>>2]=v[b>>2];v[q+4>>2]=c;c=v[b+44>>2];v[q+40>>2]=v[b+40>>2];v[q+44>>2]=c;c=v[b+36>>2];v[q+32>>2]=v[b+32>>2];v[q+36>>2]=c;c=v[b+28>>2];v[q+24>>2]=v[b+24>>2];v[q+28>>2]=c;c=v[b+20>>2];v[q+16>>2]=v[b+16>>2];v[q+20>>2]=c;i=z[e+24>>2];b=v[a+76>>2];f=z[b+24>>2];g=C(i-f);m=C(g*g);n=z[e+16>>2];h=z[b+16>>2];g=C(n-h);j=C(g*g);o=z[e+20>>2];k=z[b+20>>2];g=C(o-k);g=C(m+C(j+C(g*g)));if(!w[e+249|0]){j=C(z[e+72>>2]-f);m=C(j*j);j=C(z[e- -64>>2]-h);p=C(j*j);j=C(z[e+68>>2]-k);j=C(m+C(p+C(j*j)));l=j>g;g=l?j:g}if(!w[e+250|0]){j=C(z[e+120>>2]-f);m=C(j*j);j=C(z[e+112>>2]-h);p=C(j*j);j=C(z[e+116>>2]-k);j=C(m+C(p+C(j*j)));c=j>g;g=c?j:g;l=c?2:l}if(!w[e+251|0]){j=C(z[e+168>>2]-f);m=C(j*j);j=C(z[e+160>>2]-h);p=C(j*j);j=C(z[e+164>>2]-k);j=C(m+C(p+C(j*j)));c=j>g;g=c?j:g;l=c?3:l}if(!w[e+252|0]){m=g;g=C(z[e+216>>2]-f);f=C(g*g);g=C(z[e+208>>2]-h);h=C(g*g);g=C(z[e+212>>2]-k);l=m>2];v[b+56>>2]=v[c+8>>2];v[b+60>>2]=d;d=v[c+4>>2];v[b+48>>2]=v[c>>2];v[b+52>>2]=d;d=v[c+44>>2];v[b+88>>2]=v[c+40>>2];v[b+92>>2]=d;d=v[c+36>>2];v[b+80>>2]=v[c+32>>2];v[b+84>>2]=d;d=v[c+28>>2];v[b+72>>2]=v[c+24>>2];v[b+76>>2]=d;d=v[c+20>>2];b=b- -64|0;v[b>>2]=v[c+16>>2];v[b+4>>2]=d;b=v[a+76>>2];g=C(-34028234663852886e22);if(!w[e+248|0]){g=z[b+24>>2];k=C(i-g);f=z[b+16>>2];i=C(n-f);h=z[b+20>>2];n=C(o-h);g=C(z[b+72>>2]-g);f=C(z[b+64>>2]-f);h=C(z[b+68>>2]-h);o=C(C(g*g)+C(C(f*f)+C(h*h)));m=g;g=C(F(C(C(C(k*g)+C(C(i*f)+C(n*h)))/o),C(1)));g=o!=C(0)?g>C(0)?g:C(0):C(0);k=C(k-C(m*g));f=C(i-C(f*g));g=C(n-C(h*g));g=C(C(k*k)+C(C(f*f)+C(g*g)));c=g>C(-34028234663852886e22);g=c?g:C(-34028234663852886e22);l=c?0:l}if(!w[e+249|0]){f=z[b+24>>2];i=C(z[e+72>>2]-f);h=z[b+16>>2];n=C(z[e- -64>>2]-h);k=z[b+20>>2];o=C(z[e+68>>2]-k);f=C(z[b+72>>2]-f);h=C(z[b+64>>2]-h);k=C(z[b+68>>2]-k);j=C(C(f*f)+C(C(h*h)+C(k*k)));m=f;f=C(F(C(C(C(i*f)+C(C(n*h)+C(o*k)))/j),C(1)));f=j!=C(0)?f>C(0)?f:C(0):C(0);i=C(i-C(m*f));h=C(n-C(h*f));f=C(o-C(k*f));f=C(C(i*i)+C(C(h*h)+C(f*f)));c=f>g;g=c?f:g;l=c?1:l}if(!w[e+250|0]){f=z[b+24>>2];i=C(z[e+120>>2]-f);h=z[b+16>>2];n=C(z[e+112>>2]-h);k=z[b+20>>2];o=C(z[e+116>>2]-k);f=C(z[b+72>>2]-f);h=C(z[b+64>>2]-h);k=C(z[b+68>>2]-k);j=C(C(f*f)+C(C(h*h)+C(k*k)));m=f;f=C(F(C(C(C(i*f)+C(C(n*h)+C(o*k)))/j),C(1)));f=j!=C(0)?f>C(0)?f:C(0):C(0);i=C(i-C(m*f));h=C(n-C(h*f));f=C(o-C(k*f));f=C(C(i*i)+C(C(h*h)+C(f*f)));c=f>g;g=c?f:g;l=c?2:l}if(!w[e+251|0]){f=z[b+24>>2];i=C(z[e+168>>2]-f);h=z[b+16>>2];n=C(z[e+160>>2]-h);k=z[b+20>>2];o=C(z[e+164>>2]-k);f=C(z[b+72>>2]-f);h=C(z[b+64>>2]-h);k=C(z[b+68>>2]-k);j=C(C(f*f)+C(C(h*h)+C(k*k)));m=f;f=C(F(C(C(C(i*f)+C(C(n*h)+C(o*k)))/j),C(1)));f=j!=C(0)?f>C(0)?f:C(0):C(0);i=C(i-C(m*f));h=C(n-C(h*f));f=C(o-C(k*f));f=C(C(i*i)+C(C(h*h)+C(f*f)));c=f>g;g=c?f:g;l=c?3:l}if(!w[e+252|0]){f=z[b+24>>2];i=C(z[e+216>>2]-f);h=z[b+16>>2];n=C(z[e+208>>2]-h);k=z[b+20>>2];o=C(z[e+212>>2]-k);f=C(z[b+72>>2]-f);h=C(z[b+64>>2]-h);k=C(z[b+68>>2]-k);j=C(C(f*f)+C(C(h*h)+C(k*k)));m=g;g=C(F(C(C(C(i*f)+C(C(n*h)+C(o*k)))/j),C(1)));g=j!=C(0)?g>C(0)?g:C(0):C(0);f=C(i-C(f*g));i=C(f*f);f=C(n-C(h*g));g=C(o-C(k*g));l=m>2];v[b+104>>2]=v[c+8>>2];v[b+108>>2]=d;d=v[c+4>>2];v[b+96>>2]=v[c>>2];v[b+100>>2]=d;d=v[c+44>>2];v[b+136>>2]=v[c+40>>2];v[b+140>>2]=d;d=v[c+36>>2];v[b+128>>2]=v[c+32>>2];v[b+132>>2]=d;d=v[c+28>>2];v[b+120>>2]=v[c+24>>2];v[b+124>>2]=d;d=v[c+20>>2];v[b+112>>2]=v[c+16>>2];v[b+116>>2]=d;b=v[a+76>>2];g=C(-34028234663852886e22);c=0;while(1){if(!w[(e+248|0)+c|0]){O=z[b+120>>2];j=z[b+24>>2];p=C(O-j);d=e+B(c,48)|0;f=z[d+24>>2];i=C(f-j);P=z[b+112>>2];x=z[b+16>>2];y=C(P-x);h=z[d+16>>2];n=C(h-x);Q=z[b+116>>2];A=z[b+20>>2];D=C(Q-A);k=z[d+20>>2];r=C(k-A);o=C(C(p*i)+C(C(y*n)+C(D*r)));J=z[b+72>>2];E=C(J-j);K=z[b+64>>2];G=C(K-x);L=z[b+68>>2];H=C(L-A);I=C(C(E*i)+C(C(G*n)+C(H*r)));m=C(C(i*i)+C(C(n*n)+C(r*r)));e:{if(!(!(I=C(0))|!(i>=r))){break e}m=C(f-O);M=C(h-P);N=C(k-Q);s=C(C(E*m)+C(C(G*M)+C(H*N)));n=C(C(p*m)+C(C(y*M)+C(D*N)));m=C(C(m*m)+C(C(M*M)+C(N*N)));if(!(!(n>=C(0))|!(n>=s))){break e}if(!(!(i=C(0))))){m=f;f=C(I/C(I-i));i=C(m-C(j+C(E*f)));h=C(h-C(x+C(G*f)));f=C(k-C(A+C(H*f)));m=C(C(i*i)+C(C(h*h)+C(f*f)));break e}if(!(!(n<=s)|(!(C(C(i*n)-C(s*r))=C(0))))){m=f;f=C(o/C(o-n));i=C(m-C(j+C(p*f)));h=C(h-C(x+C(y*f)));f=C(k-C(A+C(D*f)));m=C(C(i*i)+C(C(h*h)+C(f*f)));break e}i=C(C(G*D)-C(y*H));n=C(C(H*p)-C(D*E));o=C(C(E*y)-C(p*G));p=C(C(i*i)+C(C(n*n)+C(o*o)));m=f;f=p>C(0)?C(C(C(i*C(j-f))+C(C(n*C(x-h))+C(o*C(A-k))))/p):C(0);i=C(m-C(m+C(i*f)));h=C(h-C(h+C(n*f)));f=C(k-C(k+C(o*f)));m=C(C(i*i)+C(C(h*h)+C(f*f)))}f=m;d=f>g;l=d?c:l;g=d?f:g}c=c+1|0;if((c|0)!=5){continue}break}d=(e+248|0)+l|0;f:{if(w[d|0]){t[a+64|0]=3;break f}c=1;t[d|0]=1;d=e+B(l,48)|0;l=v[d+12>>2];v[b+152>>2]=v[d+8>>2];v[b+156>>2]=l;l=v[d+4>>2];v[b+144>>2]=v[d>>2];v[b+148>>2]=l;l=v[d+44>>2];v[b+184>>2]=v[d+40>>2];v[b+188>>2]=l;l=v[d+36>>2];v[b+176>>2]=v[d+32>>2];v[b+180>>2]=l;l=v[d+28>>2];v[b+168>>2]=v[d+24>>2];v[b+172>>2]=l;l=v[d+20>>2];v[b+160>>2]=v[d+16>>2];v[b+164>>2]=l;g:{if(!w[e+248|0]){c=0;break g}if(!w[e+249|0]){break g}if(!w[e+250|0]){c=2;break g}if(!w[e+251|0]){c=3;break g}c=!w[e+252|0]<<2}b=v[a+76>>2];a=e+B(c,48)|0;g=z[a+8>>2];f=C(z[b+8>>2]-g);m=C(f*f);f=z[a>>2];h=C(z[b>>2]-f);i=C(h*h);h=z[a+4>>2];k=C(z[b+4>>2]-h);k=C(m+C(i+C(k*k)));k=k>2]-g);m=C(i*i);i=C(z[b+48>>2]-f);j=C(i*i);i=C(z[b+52>>2]-h);i=C(m+C(j+C(i*i)));c=k>i;d=c;k=c?i:k;i=C(z[b+104>>2]-g);m=C(i*i);i=C(z[b+96>>2]-f);j=C(i*i);i=C(z[b+100>>2]-h);i=C(m+C(j+C(i*i)));c=k>i;g=C(z[b+152>>2]-g);m=C(g*g);g=C(z[b+144>>2]-f);f=C(g*g);g=C(z[b+148>>2]-h);c=C(m+C(f+C(g*g)))<(c?i:k)?3:c?2:d;if(!(z[(B(c,48)+b|0)+44>>2]>z[a+44>>2])){break f}b=b+B(c,48)|0;c=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=c;c=v[a+44>>2];v[b+40>>2]=v[a+40>>2];v[b+44>>2]=c;c=v[a+36>>2];v[b+32>>2]=v[a+32>>2];v[b+36>>2]=c;c=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=c;c=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=c;c=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=c}xa=e+256|0}return 0}function MX(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=0,r=C(0),s=0,u=C(0),x=C(0),y=0,A=C(0),D=0,E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0);j=xa-320|0;xa=j;q=v[b+4>>2];k=z[q+20>>2];y=v[a+4>>2];l=z[y+20>>2];A=z[d>>2];da=w[y+32|0];O=z[y+16>>2];ea=w[q+32|0];W=z[q+16>>2];v[j+28>>2]=0;ba=C((k>2];d=0;while(1){c=d<<2;D=w[d+f|0];v[c+(j+48|0)>>2]=D;L=w[d+g|0];v[c+(j+32|0)>>2]=L;c=(D<<4)+101152|0;fa=v[c+8>>2];ga=v[c>>2];ha=v[c+4>>2];c=v[q+152>>2]+B(L,12)|0;k=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];u=z[s+48>>2];x=z[s+32>>2];E=z[s>>2];G=z[s+16>>2];P=z[s+52>>2];I=z[s+36>>2];J=z[s+4>>2];M=z[s+20>>2];N=z[s+56>>2];X=z[s+40>>2];p=z[y+56>>2];Q=z[s+8>>2];n=z[y+48>>2];Y=z[s+24>>2];r=z[y+52>>2];R=z[q+80>>2];Z=z[q+48>>2];S=z[q+64>>2];H=z[q+84>>2];T=z[q+52>>2];_=z[q+68>>2];U=z[q+88>>2];$=z[q+56>>2];aa=z[q+72>>2];c=o;o=c<<4;D=o+(j+128|0)|0;v[D+12>>2]=0;L=o+(j- -64|0)|0;v[L+12>>2]=0;o=o+(j+192|0)|0;v[o+12>>2]=0;U=C(C(U*k)+C(C($*l)+C(m*aa)));z[L+8>>2]=U;H=C(C(H*k)+C(C(T*l)+C(m*_)));z[L+4>>2]=H;R=C(C(R*k)+C(C(Z*l)+C(m*S)));z[L>>2]=R;k=fa?p:C(-p);l=ga?n:C(-n);m=ha?r:C(-r);p=C(N+C(C(X*k)+C(C(Q*l)+C(Y*m))));z[D+8>>2]=p;n=C(P+C(C(I*k)+C(C(J*l)+C(m*M))));z[D+4>>2]=n;k=C(u+C(C(x*k)+C(C(E*l)+C(m*G))));z[D>>2]=k;l=C(p-U);z[o+8>>2]=l;m=C(n-H);z[o+4>>2]=m;k=C(k-R);z[o>>2]=k;o=c+1|0;d=d+1|0;if((ca|0)!=(d|0)){continue}break}v[j+28>>2]=o;g:{h:{switch(c-1|0){case 0:p=z[j+200>>2];k=C(z[j+216>>2]-p);n=z[j+192>>2];l=C(z[j+208>>2]-n);r=z[j+196>>2];m=C(z[j+212>>2]-r);u=C(C(k*k)+C(C(l*l)+C(m*m)));if(!(u<=C(1.1920928955078125e-7))){break g}v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break e;case 1:iY(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}}P_(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e}v[j+316>>2]=0;V=k;k=C(F(C(C(C(C(C(-n)*l)-C(m*r))-C(p*k))/u),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=p+C(V*k);z[j+308>>2]=r+C(m*k);z[j+304>>2]=n+C(l*k);break e}k=z[c+8>>2];m=z[c>>2];l=z[c+4>>2];v[j+268>>2]=0;c=C(C(k*k)+C(C(m*m)+C(l*l)))>C(0);k=c?k:C(0);z[j+264>>2]=k;l=c?l:C(0);z[j+260>>2]=l;m=c?m:C(1);z[j+256>>2]=m;p=C(C(1)/C(K(C(C(k*k)+C(C(m*m)+C(l*l))))));u=C(k*p);x=C(m*p);n=C(34028234663852886e22);r=C(l*p);break d}v[j+316>>2]=0;z[j+312>>2]=l;z[j+308>>2]=m;z[j+304>>2]=k}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));if(!(ba>2]=v[j+296>>2];c=v[j+292>>2];v[j+272>>2]=v[j+288>>2];v[j+276>>2]=c;d=v[a+4>>2];c=v[a+8>>2];o=v[j+28>>2]<<2;n=C(-m);q=C(C(C(z[a+20>>2]*n)-C(z[a+36>>2]*l))-C(z[a+52>>2]*k))>C(0);s=C(C(C(z[a+16>>2]*n)-C(z[a+32>>2]*l))-C(z[a+48>>2]*k))>C(0);y=C(C(C(z[a+24>>2]*n)-C(z[a+40>>2]*l))-C(z[a+56>>2]*k))>C(0);v[o+(j+48|0)>>2]=q<<1|s|y<<2;M=z[c+56>>2];N=z[c+40>>2];Q=z[c+24>>2];Y=z[c+52>>2];R=z[c+36>>2];n=z[d+56>>2];Z=z[c+20>>2];I=z[d+52>>2];S=z[c+8>>2];H=z[c+48>>2];T=z[c+32>>2];_=z[c>>2];U=z[c+16>>2];$=z[c+4>>2];J=z[d+48>>2];aa=z[j+268>>2];c=v[b+4>>2];ia=z[c+56>>2];ja=z[c+52>>2];ka=z[c+72>>2];D=c- -64|0;la=z[D>>2];ma=z[c+68>>2];A=z[c+88>>2];O=z[c+80>>2];na=z[c+84>>2];oa=z[c+48>>2];v[j+316>>2]=0;V=A;A=k;pa=O;O=m;W=l;z[j+312>>2]=C(V*k)+C(C(pa*m)+C(l*na));z[j+308>>2]=C(ka*k)+C(C(la*m)+C(l*ma));z[j+304>>2]=C(ia*k)+C(C(oa*m)+C(l*ja));d=HV(c,j+304|0);v[o+(j+32|0)>>2]=d;k=y?n:C(-n);l=s?J:C(-J);m=q?I:C(-I);Q=C(M+C(C(N*k)+C(C(S*l)+C(Q*m))));d=v[c+152>>2]+B(d,12)|0;n=z[d+8>>2];I=z[d>>2];J=z[d+4>>2];S=C(C(z[c+88>>2]*n)+C(C(z[c+56>>2]*I)+C(J*z[c+72>>2])));M=C(Q-S);H=C(H+C(C(T*k)+C(C(_*l)+C(m*U))));T=C(C(z[c+80>>2]*n)+C(C(z[c+48>>2]*I)+C(J*z[D>>2])));N=C(H-T);l=C(Y+C(C(R*k)+C(C($*l)+C(m*Z))));m=C(C(z[c+84>>2]*n)+C(C(z[c+52>>2]*I)+C(J*z[c+68>>2])));k=C(l-m);n=C(C(u*M)+C(C(x*N)+C(r*k)));if(n>X){o=0;if(!f){break a}a=v[j+28>>2];t[h|0]=a;if(!a){break a}c=0;if((a|0)!=1){h=a&-2;d=0;while(1){b=c<<2;i=j+48|0;t[c+f|0]=v[b+i>>2];q=j+32|0;t[c+g|0]=v[q+b>>2];b=c|1;e=b<<2;t[b+f|0]=v[e+i>>2];t[b+g|0]=v[e+q>>2];c=c+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(a&1)){break a}a=c<<2;t[c+f|0]=v[a+(j+48|0)>>2];t[c+g|0]=v[a+(j+32|0)>>2];break a}c=v[j+28>>2];if(n>C(p*C(.9997749924659729))){i:{if(!f){break i}t[h|0]=c;if(!c){break i}b=0;if((c|0)!=1){o=c&-2;a=0;while(1){d=b<<2;q=j+48|0;t[b+f|0]=v[d+q>>2];s=j+32|0;t[b+g|0]=v[s+d>>2];d=b|1;h=d<<2;t[d+f|0]=v[h+q>>2];t[d+g|0]=v[h+s>>2];b=b+2|0;a=a+2|0;if((o|0)!=(a|0)){continue}break}}if(!(c&1)){break i}a=b<<2;t[b+f|0]=v[a+(j+48|0)>>2];t[b+g|0]=v[a+(j+32|0)>>2]}z[i+32>>2]=x;v[i+44>>2]=0;z[i+40>>2]=u;z[i+36>>2]=r;IV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,c);j:{if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;a=v[j+292>>2];v[i+68>>2]=v[j+288>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+296>>2];break j}k=z[j+304>>2];l=z[j+308>>2];m=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=m-C(E*u);z[i+4>>2]=l-C(E*r);z[i>>2]=k-C(E*x);k=z[j>>2];l=z[j+4>>2];m=z[j+8>>2];v[i+28>>2]=0;z[i+24>>2]=m+C(G*u);z[i+20>>2]=l+C(G*r);z[i+16>>2]=k+C(G*x);p=C(p-P)}z[i+64>>2]=p;o=2;break a}o=c<<4;d=o+(j+128|0)|0;v[d+12>>2]=0;z[d+8>>2]=Q;z[d+4>>2]=l;z[d>>2]=H;d=o+(j- -64|0)|0;v[d+12>>2]=0;z[d+8>>2]=S;z[d+4>>2]=m;z[d>>2]=T;d=o+(j+192|0)|0;v[d+12>>2]=0;z[d+8>>2]=M;z[d+4>>2]=k;z[d>>2]=N;v[j+28>>2]=c+1;k:{l:{switch(c-1|0){case 0:n=z[j+200>>2];k=C(z[j+216>>2]-n);r=z[j+192>>2];l=C(z[j+208>>2]-r);u=z[j+196>>2];m=C(z[j+212>>2]-u);x=C(C(k*k)+C(C(l*l)+C(m*m)));if(x<=C(1.1920928955078125e-7)){v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break k}v[j+316>>2]=0;V=k;k=C(F(C(C(C(C(C(-r)*l)-C(m*u))-C(n*k))/x),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=n+C(V*k);z[j+308>>2]=u+C(m*k);z[j+304>>2]=r+C(l*k);break k;case 1:iY(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:P_(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}}v[j+316>>2]=0;z[j+312>>2]=M;z[j+308>>2]=k;z[j+304>>2]=N}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));x=C(C(1)/n);u=C(k*x);r=C(l*x);x=C(m*x);if(nba){continue}break}b=v[j+28>>2];if(!(n>2];y=j+32|0;t[c+g|0]=v[y+h>>2];h=c|1;o=h<<2;t[f+h|0]=v[o+s>>2];t[g+h|0]=v[o+y>>2];c=c+2|0;a=a+2|0;if((q|0)!=(a|0)){continue}break}}if(!(d&1)){break m}a=c<<2;t[c+f|0]=v[a+(j+48|0)>>2];t[c+g|0]=v[a+(j+32|0)>>2]}v[j+296>>2]=v[j+280>>2];a=v[j+276>>2];v[j+288>>2]=v[j+272>>2];v[j+292>>2]=a;z[j+268>>2]=aa;z[j+256>>2]=O;z[j+260>>2]=W;z[j+264>>2]=A;IV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,b);v[i+60>>2]=0;z[i+56>>2]=u;z[i+52>>2]=r;z[i+48>>2]=x;v[i+44>>2]=0;k=C(C(1)/p);l=C(A*k);z[i+40>>2]=l;m=C(W*k);z[i+36>>2]=m;k=C(O*k);z[i+32>>2]=k;if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;z[i+64>>2]=p;a=v[j+276>>2];v[i+68>>2]=v[j+272>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+280>>2];o=4;break a}n=z[j+304>>2];r=z[j+308>>2];A=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=A-C(E*l);z[i+4>>2]=r-C(E*m);z[i>>2]=n-C(E*k);n=z[j>>2];r=z[j+4>>2];A=z[j+8>>2];z[i+64>>2]=p-P;v[i+28>>2]=0;z[i+24>>2]=A+C(G*l);z[i+20>>2]=r+C(G*m);z[i+16>>2]=n+C(G*k);o=2;if(p<=P){break a}o=4;break a}if(f){break b}o=5;break a}b=v[j+28>>2]}t[h|0]=b;o=5;if(!b){break a}c=0;if((b|0)!=1){h=b&-2;d=0;while(1){a=c<<2;i=j+48|0;t[c+f|0]=v[a+i>>2];q=j+32|0;t[c+g|0]=v[q+a>>2];a=c|1;e=a<<2;t[a+f|0]=v[e+i>>2];t[a+g|0]=v[e+q>>2];c=c+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(b&1)){break a}a=c<<2;t[c+f|0]=v[a+(j+48|0)>>2];t[c+g|0]=v[a+(j+32|0)>>2]}xa=j+320|0;return o}function qU(a,b,c){a=a|0;b=C(b);c=c|0;var d=0,e=C(0),f=0,g=0,h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=0,s=0,t=C(0),u=C(0),w=0,x=0,y=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=0,Ia=0,Ja=0,Ka=0,La=0;d=xa-240|0;xa=d;g=v[a+68>>2];p=v[a+72>>2];f=B(p,24);if(f){j=v[37696]+12|0;x=Ba[v[v[j>>2]+8>>2]](j,f,24422,8633,651)|0}else{x=0}a:{if(!p){v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;break a}f=x;while(1){j=v[g>>2];Ba[v[v[j>>2]+12>>2]](j,d+184|0)|0;da=A[d+184>>3];ea=A[d+192>>3];fa=A[d+200>>3];ga=A[d+208>>3];ha=A[d+216>>3];z[f+20>>2]=A[d+224>>3];z[f+16>>2]=ha;z[f+12>>2]=ga;z[f+8>>2]=fa;z[f+4>>2]=ea;z[f>>2]=da;f=f+24|0;g=g+4|0;p=p-1|0;if(p){continue}break}g=0;v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;if((f|0)==(x|0)){break a}j=v[37696]+12|0;s=f-x|0;w=(s|0)/24|0;p=Ba[v[v[j>>2]+8>>2]](j,w<<2,24422,8633,611)|0;if(w-1>>>0>=3){j=w&-4;f=0;while(1){z[(g<<2)+p>>2]=z[B(g,24)+x>>2];r=g|1;z[(r<<2)+p>>2]=z[B(r,24)+x>>2];r=g|2;z[(r<<2)+p>>2]=z[B(r,24)+x>>2];r=g|3;z[(r<<2)+p>>2]=z[B(r,24)+x>>2];g=g+4|0;f=f+4|0;if((j|0)!=(f|0)){continue}break}}j=w&3;if(j){f=0;while(1){z[(g<<2)+p>>2]=z[B(g,24)+x>>2];g=g+1|0;f=f+1|0;if((j|0)!=(f|0)){continue}break}}y=RU(d+184|0);f=WU(y,p,w);b:{c:{if((s|0)<=0){break c}j=v[f+8>>2];r=j+(w<<2)|0;w=j;while(1){f=w;w=f+4|0;f=v[f>>2];v[d+128>>2]=f;g=(f<<2)+p|0;f=j;while(1){d:{if(f>>>0>=r>>>0){j=f;break d}s=v[f>>2];j=f+4|0;f=j;if(z[(s<<2)+p>>2]>2]){continue}}break}f=j;if(r>>>0>f>>>0){while(1){e:{s=v[f>>2];v[d+40>>2]=s;ia=v[d+128>>2];g=B(ia,24)+x|0;e=z[g+12>>2];if(!(e>=z[(s<<2)+p>>2])){break e}f=f+4|0;f:{if((s|0)==(ia|0)){break f}s=B(s,24)+x|0;if(e>2]|z[g>>2]>z[s+12>>2]|(z[s+4>>2]>z[g+16>>2]|z[g+4>>2]>z[s+16>>2])){break f}if(z[s+8>>2]>z[g+20>>2]|z[g+8>>2]>z[s+20>>2]){break f}g=v[d+12>>2];g:{if(g>>>0>=(v[d+16>>2]&2147483647)>>>0){on(d+8|0,d+128|0);g=v[d+12>>2];break g}v[v[d+8>>2]+(g<<2)>>2]=ia;g=v[d+12>>2]+1|0;v[d+12>>2]=g}if((v[d+16>>2]&2147483647)>>>0<=g>>>0){on(d+8|0,d+40|0);break f}v[v[d+8>>2]+(g<<2)>>2]=v[d+40>>2];v[d+12>>2]=v[d+12>>2]+1}if(f>>>0>>0){continue}}break}if(r>>>0>w>>>0){continue}break c}break}if(!p){break b}}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,p)}SU(y);f=v[d+12>>2];if(f>>>0<2){break a}la=C(b*C(4));w=f>>>1|0;s=d+208|0;p=v[d+8>>2];while(1){w=w-1|0;j=v[a+68>>2];f=v[j+(v[p+4>>2]<<2)>>2];g=v[j+(v[p>>2]<<2)>>2];h:{if(c){if(!(Ja=c,Ka=Ba[v[v[g>>2]+16>>2]](g)|0,La=Ba[v[v[f>>2]+16>>2]](f)|0,Ia=v[v[c>>2]+8>>2],Ba[Ia](Ja|0,Ka|0,La|0)|0)){break h}}r=v[g+4>>2]>v[f+4>>2];j=r?g:f;i:{j:{k:{l:{f=r?f:g;switch(v[f+4>>2]){case 0:break k;case 1:break l;default:break j}}if(v[j+4>>2]!=1){break j}JS(f-8|0,d+184|0);JS(j-8|0,d+128|0);b=z[d+176>>2];e=z[d+232>>2];da=A[d+224>>3];h=C(A[d+200>>3]);z[d+48>>2]=h;i=C(A[d+184>>3]);z[d+40>>2]=i;o=C(A[d+192>>3]);z[d+44>>2]=o;ea=A[d+208>>3];fa=A[d+216>>3];k=C(A[d+128>>3]);z[d+112>>2]=k;m=C(A[d+136>>3]);z[d+116>>2]=m;n=C(A[d+144>>3]);z[d+120>>2]=n;ga=A[d+152>>3];ha=A[d+160>>3];Ha=A[d+168>>3];q=C(da);z[d+104>>2]=q-h;u=C(fa);z[d+100>>2]=u-o;o=C(ea);z[d+96>>2]=o-i;t=C(Ha);z[d+88>>2]=t-n;n=C(ha);z[d+84>>2]=n-m;m=C(ga);z[d+80>>2]=m-k;V=C(0);W=C(0);E=C(0);h=C(K(H_(d+40|0,d+96|0,d+112|0,d+80|0,d+24|0,d+108|0)));b=C(e+b);l=C(0);if(!(h>2];h=C(C(1)-b);e=z[d+108>>2];i=C(C(1)-e);k=C(C(C(h*q)+C(b*z[d+48>>2]))-C(C(i*t)+C(e*z[d+120>>2])));q=z[f+356>>2];o=C(C(C(b*z[d+40>>2])+C(h*o))-C(C(e*z[d+112>>2])+C(i*m)));m=z[f+348>>2];i=C(C(C(h*u)+C(b*z[d+44>>2]))-C(C(i*n)+C(e*z[d+116>>2])));n=z[f+352>>2];b=C(C(k*q)+C(C(o*m)+C(i*n)));e=C(k-C(q*b));h=C(o-C(m*b));b=C(i-C(n*b));i=C(C(e*e)+C(C(h*h)+C(b*b)));if(i>C(0)){l=e;e=C(C(1)/C(K(i)));W=C(l*e);V=C(h*e);l=C(b*e)}else{l=C(0)}break i}if(v[j+4>>2]!=1){break j}PT(f-8|0,d+184|0);JS(j-8|0,d+128|0);z[d+120>>2]=A[d+144>>3];z[d+116>>2]=A[d+136>>3];z[d+112>>2]=A[d+128>>3];z[d+104>>2]=A[d+168>>3];z[d+100>>2]=A[d+160>>3];z[d+96>>2]=A[d+152>>3];e=z[d+220>>2];b=C(e+e);h=z[d+224>>2];i=C(h+h);k=C(C(1)-C(e*b));m=C(h*i);z[d+72>>2]=k-m;e=z[d+228>>2];n=C(i*e);o=z[d+232>>2];q=C(b*o);z[d+68>>2]=n-q;u=C(b*e);i=C(i*o);z[d+64>>2]=u+i;z[d+60>>2]=n+q;X=k;l=e;e=C(e+e);k=C(l*e);z[d+56>>2]=X-k;b=C(b*h);e=C(e*o);z[d+52>>2]=b-e;z[d+48>>2]=u-i;z[d+44>>2]=b+e;z[d+40>>2]=C(C(1)-m)-k;z[d+32>>2]=A[d+200>>3];z[d+28>>2]=A[d+192>>3];z[d+24>>2]=A[d+184>>3];V=C(0);W=C(0);E=C(0);b=C(K(F_(d+112|0,d+96|0,d+24|0,s,d+40|0,d+108|0,d+80|0)));e=z[d+176>>2];l=C(0);if(!(b>2]-C(C(z[d+120>>2]+z[d+104>>2])*C(.5)));h=z[f+356>>2];i=C(z[d+24>>2]-C(C(z[d+112>>2]+z[d+96>>2])*C(.5)));o=z[f+348>>2];k=C(z[d+28>>2]-C(C(z[d+116>>2]+z[d+100>>2])*C(.5)));m=z[f+352>>2];b=C(C(e*h)+C(C(i*o)+C(k*m)));e=C(e-C(h*b));h=C(i-C(o*b));b=C(k-C(m*b));i=C(C(e*e)+C(C(h*h)+C(b*b)));if(i>C(0)){l=e;e=C(C(1)/C(K(i)));W=C(l*e);V=C(h*e);l=C(b*e)}else{l=C(0)}break i}PT(f-8|0,d+184|0);PT(j-8|0,d+128|0);V=C(0);W=C(0);E=C(0);h=z[d+164>>2];n=C(h+h);k=z[d+172>>2];N=C(n*k);q=z[d+168>>2];t=C(q+q);F=z[d+176>>2];O=C(t*F);o=C(N+O);G=z[d+208>>2];ca=z[d+160>>2];H=z[d+220>>2];u=C(H+H);m=z[d+228>>2];Z=C(u*m);b=z[d+224>>2];I=C(b+b);i=z[d+232>>2];_=C(I*i);e=C(Z-_);P=C(C(1)-C(h*n));Q=C(q*t);X=C(P-Q);$=C(b*I);R=C(m+m);Y=C(m*R);h=C(C(C(1)-$)-Y);aa=C(u*b);ba=C(R*i);b=C(aa+ba);t=C(t*k);S=C(n*F);R=C(t-S);ma=C(C(e*X)+C(C(h*o)+C(b*R)));na=C(C(D(ma))+C(9.999999974752427e-7));J=z[d+152>>2];N=C(N-O);l=k;k=C(k+k);T=C(l*k);O=C(C(C(1)-Q)-T);n=C(n*q);k=C(k*F);F=C(n+k);oa=C(C(e*N)+C(C(h*O)+C(b*F)));pa=C(C(D(oa))+C(9.999999974752427e-7));L=z[d+156>>2];Q=C(t+S);S=C(n-k);P=C(P-T);qa=C(C(e*Q)+C(C(h*S)+C(b*P)));ra=C(C(D(qa))+C(9.999999974752427e-7));sa=C(A[d+144>>3]);ta=C(A[d+200>>3]);M=C(sa-ta);ua=C(A[d+128>>3]);va=C(A[d+184>>3]);U=C(ua-va);wa=C(A[d+136>>3]);ya=C(A[d+192>>3]);ja=C(wa-ya);T=C(C(M*e)+C(C(U*h)+C(b*ja)));ka=C(C(G+C(C(ca*na)+C(C(J*pa)+C(L*ra))))-C(D(T)));l=C(0);if(ka>2];I=C(C(M*k)+C(C(U*m)+C(n*ja)));Y=C(C(C(C(ca*ba)+C(C(J*Aa)+C(L*Da)))+H)-C(D(I)));l=C(0);if(Y>2];M=C(C(M*q)+C(C(U*u)+C(t*ja)));U=C(C(C(C(ca*_)+C(C(J*Ea)+C(L*Ga)))+i)-C(D(M)));l=C(0);if(UU;m:{n:{o:{p:{q:{r:{y=g?2:r;i=g?U:i;g=i>J;y=g?3:y;i=g?J:i;g=i>L;y=g?4:y;i=g?L:i;g=i>G;switch((g?5:y)-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}}h=m;b=n;e=k;break m}h=u;b=t;e=q;break m}h=O;b=F;e=N;break m}h=S;b=P;e=Q;break m}h=o;b=R;e=X}E=g?G:i;g=C(C(e*C(ta-sa))+C(C(h*C(va-ua))+C(C(ya-wa)*b)))>2];h=g?C(-h):h;k=z[f+348>>2];m=z[f+352>>2];n=g?C(-b):b;b=C(C(e*o)+C(C(h*k)+C(m*n)));e=C(e-C(o*b));h=C(h-C(k*b));b=C(n-C(m*b));o=C(C(e*e)+C(C(h*h)+C(b*b)));l=C(0);if(!(o>C(0))){break i}l=e;e=C(C(1)/C(K(o)));W=C(l*e);V=C(h*e);l=C(b*e)}i=l;if(E==C(0)){break h}b=E>la?la:E;e=C(C(V*b)*C(.5));z[f+468>>2]=e+z[f+468>>2];h=C(C(i*b)*C(.5));z[f+472>>2]=h+z[f+472>>2];b=C(C(W*b)*C(.5));z[f+476>>2]=b+z[f+476>>2];z[j+468>>2]=z[j+468>>2]-e;z[j+472>>2]=z[j+472>>2]-h;z[j+476>>2]=z[j+476>>2]-b}p=p+8|0;if(w){continue}break}}if(x){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,x)}a=v[d+16>>2];s:{if((a|0)<0|!(a&2147483647)){break s}a=v[d+8>>2];if(!a){break s}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=d+240|0}function lE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=0,q=0,r=C(0),s=0,w=0,y=0;e=xa-224|0;xa=e;n=1;a:{if(!v[a+592>>2]){break a}q=a+4|0;b:{switch(x[b+98>>1]){case 3:if(x[b+96>>1]){n=HD(e+32|0,b+48|0,b+12|0,b);u[e+28>>1]=x[d>>1];v[e+24>>2]=c;v[e+20>>2]=b;v[e+16>>2]=130168;n=mE(v[a+644>>2],v[a+640>>2],q,n,e+16|0);break a}f=z[b+84>>2];g=z[b+88>>2];h=z[b+76>>2];i=z[b+92>>2];j=z[b+80>>2];k=z[b+72>>2];v[e+60>>2]=0;z[e+56>>2]=C(i-j)*C(.5);z[e+52>>2]=C(g-h)*C(.5);v[e+44>>2]=0;z[e+48>>2]=C(f-k)*C(.5);z[e+40>>2]=C(j+i)*C(.5);z[e+36>>2]=C(h+g)*C(.5);z[e+32>>2]=C(k+f)*C(.5);u[e+28>>1]=x[d>>1];v[e+24>>2]=c;v[e+20>>2]=b;v[e+16>>2]=130208;s=v[a+644>>2];w=v[a+640>>2];p=e+16|0;c=xa-1056|0;xa=c;t[c+1040|0]=1;v[c+1048>>2]=256;v[c+1052>>2]=256;v[c+1044>>2]=c+16;v[c+16>>2]=v[q+588>>2];d=1;c:while(1){d=d-1|0;a=v[v[c+1044>>2]+(d<<2)>>2];f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);while(1){d:{e:{o=C(C(f*C(.5))+z[e+48>>2]);f=C(C(h*C(.5))-z[e+32>>2]);f:{if(!(o>=(f>C(0)?f:C(-f)))){break f}f=C(C(g*C(.5))-z[e+36>>2]);if(!(C(C(k*C(.5))+z[e+52>>2])>=(f>C(0)?f:C(-f)))){break f}f=C(C(i*C(.5))-z[e+40>>2]);if(!(C(C(j*C(.5))+z[e+56>>2])>=(f>C(0)?f:C(-f)))){break f}b=a;a=v[a+36>>2];if(v[b+40>>2]){break e}b=v[a>>2];if(!b){break f}a=a+4|0;if((b|0)==1){if(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(v[a>>2],44)|0)|0){break f}break d}while(1){q=v[a>>2];n=w+B(q,24)|0;g=z[n+12>>2];h=z[n>>2];f=C(C(C(h+g)*C(.5))-z[e+32>>2]);g:{if(!(C(C(C(g-h)*C(.5))+z[e+48>>2])>=(f>C(0)?f:C(-f)))){break g}g=z[n+4>>2];h=z[n+16>>2];f=C(C(C(g+h)*C(.5))-z[e+36>>2]);if(!(C(C(C(h-g)*C(.5))+z[e+52>>2])>=(f>C(0)?f:C(-f)))){break g}g=z[n+8>>2];h=z[n+20>>2];f=C(C(C(g+h)*C(.5))-z[e+40>>2]);if(!(C(C(C(h-g)*C(.5))+z[e+56>>2])>=(f>C(0)?f:C(-f)))){break g}if(!(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(q,44)|0)|0)){break d}}a=a+4|0;b=b-1|0;if(b){continue}break}}y=!d;if(d){continue c}break d}v[v[c+1044>>2]+(d<<2)>>2]=a+48;d=d+1|0;if((d|0)==(v[c+1052>>2]&2147483647)){fD(c+16|0,d<<1)}f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);continue}break}break};a=v[c+1052>>2];h:{if((a|0)<0|!(a&2147483647)){break h}a=v[c+1044>>2];if((a|0)==(c+16|0)|!a){break h}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+1056|0;n=y;break a;case 2:h=z[b+60>>2];m=z[b+124>>2];k=z[b+112>>2];l=z[b+116>>2];f=z[b+120>>2];v[e+44>>2]=0;z[e+40>>2]=f;z[e+36>>2]=l;z[e+32>>2]=k;g=z[b+16>>2];j=z[b+20>>2];i=z[b+12>>2];v[e+124>>2]=0;v[e+108>>2]=0;v[e+92>>2]=0;m=C(m*C(1.0099999904632568));z[e+88>>2]=m;z[e+84>>2]=m;v[e+76>>2]=0;z[e+72>>2]=i;z[e+68>>2]=j;v[e+60>>2]=0;z[e+56>>2]=j;z[e+52>>2]=g;r=i>C(0)?i:C(-i);z[e+120>>2]=r;o=j>C(0)?j:C(-j);z[e+116>>2]=o;z[e+104>>2]=o;o=g>C(0)?g:C(-g);z[e+100>>2]=o;z[e+80>>2]=m;z[e+64>>2]=g;z[e+48>>2]=i;z[e+112>>2]=o;z[e+96>>2]=r;v[e+156>>2]=0;v[e+140>>2]=0;m=C(h+h);i:{if(m>=C(34028234663852886e22)){h=g==C(0)?l:g>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);i=i==C(0)?k:i>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);g=f;if(j==C(0)){break i}g=j>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break i}h=C(l+C(m*g));i=C(k+C(m*i));g=C(f+C(m*j))}z[e+152>>2]=f>g?f:g;z[e+148>>2]=h>2]=f>2]=h>l?l:h;z[e+144>>2]=i>2]=i>k?k:i;u[e+28>>1]=x[d>>1];v[e+24>>2]=c;v[e+20>>2]=b;v[e+16>>2]=130240;s=v[a+644>>2];w=v[a+640>>2];p=e+16|0;c=xa-1056|0;xa=c;t[c+1040|0]=1;v[c+1048>>2]=256;v[c+1052>>2]=256;v[c+1044>>2]=c+16;v[c+16>>2]=v[q+588>>2];d=1;j:while(1){d=d-1|0;a=v[v[c+1044>>2]+(d<<2)>>2];f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);while(1){k:{l:{l=C(h*C(.5));f=C(C(f*C(.5))+z[e+80>>2]);m:{if(!(z[e+128>>2]<=C(l+f))|!(z[e+144>>2]>=C(l-f))){break m}h=C(C(k*C(.5))+z[e+84>>2]);g=C(g*C(.5));m=C(z[e+36>>2]-g);l=C(z[e+32>>2]-l);k=C(C(m*z[e+48>>2])-C(l*z[e+64>>2]));if(!(C(C(f*z[e+112>>2])+C(h*z[e+96>>2]))>=(k>C(0)?k:C(-k)))|!(z[e+132>>2]<=C(g+h))|!(z[e+148>>2]>=C(g-h))){break m}g=C(C(j*C(.5))+z[e+88>>2]);o=C(C(h*z[e+116>>2])+C(g*z[e+100>>2]));h=C(i*C(.5));j=C(z[e+40>>2]-h);i=C(C(j*z[e+52>>2])-C(m*z[e+68>>2]));if(!(o>=(i>C(0)?i:C(-i)))|!(z[e+136>>2]<=C(h+g))|!(z[e+152>>2]>=C(h-g))){break m}g=C(C(g*z[e+120>>2])+C(f*z[e+104>>2]));f=C(C(l*z[e+56>>2])-C(j*z[e+72>>2]));if(!(g>=(f>C(0)?f:C(-f)))){break m}b=a;a=v[a+36>>2];if(v[b+40>>2]){break l}b=v[a>>2];if(!b){break m}a=a+4|0;if((b|0)==1){if(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(v[a>>2],44)|0)|0){break m}break k}while(1){q=v[a>>2];n=w+B(q,24)|0;f=z[n>>2];g=z[n+12>>2];h=C(C(f+g)*C(.5));f=C(C(C(g-f)*C(.5))+z[e+80>>2]);n:{if(!(z[e+128>>2]<=C(h+f))|!(z[e+144>>2]>=C(h-f))){break n}i=z[n+16>>2];j=z[n+4>>2];g=C(C(C(i-j)*C(.5))+z[e+84>>2]);i=C(C(j+i)*C(.5));j=C(z[e+36>>2]-i);k=C(z[e+32>>2]-h);h=C(C(j*z[e+48>>2])-C(k*z[e+64>>2]));if(!(C(C(f*z[e+112>>2])+C(g*z[e+96>>2]))>=(h>C(0)?h:C(-h)))|!(z[e+132>>2]<=C(i+g))|!(z[e+148>>2]>=C(i-g))){break n}o=C(g*z[e+116>>2]);h=z[n+20>>2];i=z[n+8>>2];g=C(C(C(h-i)*C(.5))+z[e+88>>2]);h=C(C(i+h)*C(.5));l=C(z[e+40>>2]-h);i=C(C(l*z[e+52>>2])-C(j*z[e+68>>2]));if(!(C(o+C(g*z[e+100>>2]))>=(i>C(0)?i:C(-i)))|!(z[e+136>>2]<=C(h+g))|!(z[e+152>>2]>=C(h-g))){break n}g=C(C(g*z[e+120>>2])+C(f*z[e+104>>2]));f=C(C(k*z[e+56>>2])-C(l*z[e+72>>2]));if(!(g>=(f>C(0)?f:C(-f)))){break n}if(!(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(q,44)|0)|0)){break k}}a=a+4|0;b=b-1|0;if(b){continue}break}}y=!d;if(d){continue j}break k}v[v[c+1044>>2]+(d<<2)>>2]=a+48;d=d+1|0;if((d|0)==(v[c+1052>>2]&2147483647)){fD(c+16|0,d<<1)}f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);continue}break}break};a=v[c+1052>>2];o:{if((a|0)<0|!(a&2147483647)){break o}a=v[c+1044>>2];if((a|0)==(c+16|0)|!a){break o}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+1056|0;n=y;break a;case 0:f=z[b+112>>2];g=z[b+108>>2];n=v[b+104>>2];p=v[b+100>>2];v[e+44>>2]=0;z[e+40>>2]=g;v[e+32>>2]=p;v[e+36>>2]=n;z[e+48>>2]=f*f;u[e+28>>1]=x[d>>1];v[e+24>>2]=c;v[e+20>>2]=b;v[e+16>>2]=130272;s=v[a+644>>2];w=v[a+640>>2];p=e+16|0;c=xa-1056|0;xa=c;t[c+1040|0]=1;v[c+1048>>2]=256;v[c+1052>>2]=256;v[c+1044>>2]=c+16;v[c+16>>2]=v[q+588>>2];d=1;p:while(1){d=d-1|0;a=v[v[c+1044>>2]+(d<<2)>>2];f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);while(1){q:{i=C(z[e+40>>2]-C(i*C(.5)));j=C(j*C(.5));l=i>2]-C(h*C(.5)));f=C(f*C(.5));m=f>h?h:f;g=C(z[e+36>>2]-C(g*C(.5)));k=C(k*C(.5));r=g>2]>=C(C(i*i)+C(o+C(f*f))))){break s}b=a;a=v[a+36>>2];if(v[b+40>>2]){break r}b=v[a>>2];if(!b){break s}a=a+4|0;if((b|0)==1){if(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(v[a>>2],44)|0)|0){break s}break q}while(1){q=v[a>>2];n=w+B(q,24)|0;g=z[n+8>>2];h=z[n+20>>2];f=C(z[e+40>>2]-C(C(g+h)*C(.5)));g=C(C(h-g)*C(.5));h=f>2];k=z[n+12>>2];i=C(z[e+32>>2]-C(C(j+k)*C(.5)));j=C(C(k-j)*C(.5));k=i>2];r=z[n+16>>2];l=C(z[e+36>>2]-C(C(m+r)*C(.5)));m=C(C(r-m)*C(.5));r=l>2]>=C(g+C(i+C(f*f)))){if(!(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(q,44)|0)|0)){break q}}a=a+4|0;b=b-1|0;if(b){continue}break}}y=!d;if(d){continue p}break q}v[v[c+1044>>2]+(d<<2)>>2]=a+48;d=d+1|0;if((d|0)==(v[c+1052>>2]&2147483647)){fD(c+16|0,d<<1)}f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);continue}break}break};a=v[c+1052>>2];t:{if((a|0)<0|!(a&2147483647)){break t}a=v[c+1044>>2];if((a|0)==(c+16|0)|!a){break t}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+1056|0;n=y;break a;case 4:break b;default:break a}}n=HD(e+32|0,b+48|0,b+12|0,b);u[e+28>>1]=x[d>>1];v[e+24>>2]=c;v[e+20>>2]=b;v[e+16>>2]=130168;n=mE(v[a+644>>2],v[a+640>>2],q,n,e+16|0)}xa=e+224|0;return n|0}function KA(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,u=0,w=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;i=xa-1072|0;xa=i;a=i+1052|0;v[a>>2]=-128;v[a+4>>2]=-128;a=i;v[a+1020>>2]=-128;v[a+1024>>2]=-128;v[a+988>>2]=-128;v[a+992>>2]=-128;v[a+956>>2]=-128;v[a+960>>2]=-128;v[a+924>>2]=-128;v[a+928>>2]=-128;v[a+892>>2]=-128;v[a+896>>2]=-128;v[a+860>>2]=-128;v[a+864>>2]=-128;v[a+828>>2]=-128;v[a+832>>2]=-128;v[a+796>>2]=-128;v[a+800>>2]=-128;v[a+764>>2]=-128;v[a+768>>2]=-128;v[a+732>>2]=-128;v[a+736>>2]=-128;v[a+700>>2]=-128;v[a+704>>2]=-128;v[a+668>>2]=-128;v[a+672>>2]=-128;v[a+636>>2]=-128;v[a+640>>2]=-128;v[a+604>>2]=-128;v[a+608>>2]=-128;v[a+572>>2]=-128;v[a+576>>2]=-128;v[a+540>>2]=-128;v[a+544>>2]=-128;v[a+508>>2]=-128;v[a+512>>2]=-128;v[a+476>>2]=-128;v[a+480>>2]=-128;v[a+444>>2]=-128;v[a+448>>2]=-128;v[a+412>>2]=-128;v[a+416>>2]=-128;v[a+380>>2]=-128;v[a+384>>2]=-128;v[a+348>>2]=-128;v[a+352>>2]=-128;v[a+316>>2]=-128;v[a+320>>2]=-128;v[a+284>>2]=-128;v[a+288>>2]=-128;v[a+252>>2]=-128;v[a+256>>2]=-128;v[a+220>>2]=-128;v[a+224>>2]=-128;v[a+188>>2]=-128;v[a+192>>2]=-128;v[a+156>>2]=-128;v[a+160>>2]=-128;v[a+124>>2]=-128;v[a+128>>2]=-128;v[a+92>>2]=-128;v[a+96>>2]=-128;v[a+60>>2]=-128;v[a+64>>2]=-128;v[a+24>>2]=v[b+12>>2];v[a+16>>2]=0;v[a+20>>2]=32;t[a+9|0]=0;v[a+12>>2]=a+48;v[a+44>>2]=v[b+152>>2];v[a+40>>2]=v[b+148>>2];m=v[b+24>>2];s=v[b+52>>2];r=v[b+16>>2];w=v[b+8>>2];l=v[b+28>>2];q=v[b+40>>2];a:{if(!q){if(r){while(1){b=d<<5;a=b+s|0;b=b+w|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[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+B(e,52)|0;d=v[(v[v[b>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](b,v[i+44>>2])}b=m+B(e|1,52)|0;d=v[(v[v[b>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](b,v[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+B(e,52)|0;b=v[(v[v[a>>2]+24>>2]<<2)+149608>>2];if(!b){break a}Ba[b|0](a,v[i+44>>2]);break a}K=v[b+4>>2];F=v[b+108>>2];G=v[b+32>>2];u=v[b+116>>2];H=v[b+112>>2];I=v[b+36>>2];g=v[b>>2];b:{if(!g){p=(u|0)>0;break b}c:{if((q|0)>0){p=g;while(1){J=(p|0)==1?129440:129312;h=0;while(1){o=(h<<3)+I|0;n=x[o+4>>1];k=0;f=0;c=0;C=(v[o>>2]<<5)+G|0;e=v[C+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;A=c-a|0;c=j;a=A+1|0;c=a?c:c+1|0;d=a;a=0;D=a;E=d&7;if(a|E){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((E|0)!=(k|0)|(D|0)!=(a|0)){continue}break}}if(!j&A>>>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}}Ba[v[J+(x[o+6>>1]<<2)>>2]](C,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=(u|0)>0;if((u|0)<=0){break b}n=g<<1;if(!n){break b}J=(u|0)>1?u:1;while(1){C=(n|0)==1?129440:129312;h=0;while(1){o=(h<<3)+H|0;j=x[o+4>>1];k=0;f=0;c=0;D=(v[o>>2]<<5)+F|0;e=v[D+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;A=c-a|0;c=g;a=A+1|0;c=a?c:c+1|0;d=a;a=0;E=a;L=d&7;if(a|L){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((L|0)!=(k|0)|(E|0)!=(a|0)){continue}break}}if(!g&A>>>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}}Ba[v[C+(x[o+6>>1]<<2)>>2]](D,j,i+8|0);h=h+1|0;if((J|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+w|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[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+B(e,52)|0;f=v[(v[v[d>>2]+24>>2]<<2)+149608>>2];if(f){Ba[f|0](d,v[i+44>>2])}d=m+B(e|1,52)|0;f=v[(v[v[d>>2]+24>>2]<<2)+149608>>2];if(f){Ba[f|0](d,v[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+B(e,52)|0;d=v[(v[v[a>>2]+24>>2]<<2)+149608>>2];if(!d){break f}Ba[d|0](a,v[i+44>>2])}n=K-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)+I|0;s=(v[l>>2]<<5)+G|0;e=v[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;w=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)|(w|0)!=(a|0)){continue}break}}a=x[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}}Ba[v[(x[l+6>>1]<<2)+129312>>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)+H|0;s=(v[l>>2]<<5)+F|0;e=v[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;w=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)|(w|0)!=(a|0)){continue}break}}a=x[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}}Ba[v[(x[l+6>>1]<<2)+129312>>2]](s,a,i+8|0);h=h+1|0;if((u|0)!=(h|0)){continue}break}}j=j+1|0;if((n|0)!=(j|0)){continue}break}}a=v[b+140>>2];v[i+4>>2]=a;g=v[b+132>>2];b=v[b+136>>2];v[i+36>>2]=a;t[i+9|0]=1;v[i+32>>2]=b;v[i+28>>2]=g;i:{if(!K){break i}if((q|0)>0){h=0;while(1){k=0;f=0;c=0;j=(h<<3)+I|0;m=(v[j>>2]<<5)+G|0;e=v[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=x[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}}Ba[v[(x[j+6>>1]<<2)+129376>>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)+H|0;l=(v[p>>2]<<5)+F|0;e=v[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=x[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}}Ba[v[(x[p+6>>1]<<2)+129376>>2]](l,a,i+8|0);h=h+1|0;if((u|0)!=(h|0)){continue}break}}a=v[i+16>>2];if(!a){break a}a=a+v[i+4>>2]|0;v[i+4>>2]=a;b=v[i+16>>2];if(!b){break a}d=a-b|0;e=0;while(1){a=v[i+12>>2]+(e<<5)|0;c=v[a+4>>2];b=g+(d+e<<5)|0;v[b>>2]=v[a>>2];v[b+4>>2]=c;c=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=c;c=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=c;c=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=c;e=e+1|0;if(e>>>0>2]){continue}break}}xa=i+1072|0} -function UX(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=0,u=C(0),x=C(0),y=0,A=C(0),D=C(0),E=C(0),G=C(0),H=0,I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=0,ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0);j=xa-320|0;xa=j;q=v[b+4>>2];k=z[q+20>>2];s=v[a+4>>2];l=z[s+20>>2];A=z[d>>2];aa=w[s+32|0];M=z[s+16>>2];ba=w[q+32|0];R=z[q+16>>2];v[j+28>>2]=0;_=C((k>2];d=0;while(1){c=d<<2;H=w[d+f|0];v[c+(j+48|0)>>2]=H;I=w[d+g|0];v[c+(j+32|0)>>2]=I;c=v[s+152>>2]+B(H,12)|0;k=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];c=v[q+152>>2]+B(I,12)|0;o=z[c+8>>2];n=z[c>>2];r=z[c+4>>2];u=z[y+48>>2];x=z[y+32>>2];E=z[y>>2];G=z[y+16>>2];N=z[y+52>>2];S=z[y+36>>2];T=z[y+4>>2];J=z[y+20>>2];L=z[y+56>>2];U=z[y+40>>2];V=z[s+88>>2];W=z[s+56>>2];O=z[s+72>>2];P=z[y+8>>2];X=z[s+80>>2];Y=z[s+48>>2];Z=z[s+64>>2];ca=z[y+24>>2];da=z[s+84>>2];ea=z[s+52>>2];fa=z[s+68>>2];ga=z[q+80>>2];ha=z[q+48>>2];ia=z[q+64>>2];D=z[q+84>>2];ja=z[q+52>>2];ka=z[q+68>>2];Q=z[q+88>>2];la=z[q+56>>2];ma=z[q+72>>2];c=p;p=c<<4;H=p+(j+128|0)|0;v[H+12>>2]=0;I=p+(j- -64|0)|0;v[I+12>>2]=0;p=p+(j+192|0)|0;v[p+12>>2]=0;Q=C(C(Q*o)+C(C(la*n)+C(r*ma)));z[I+8>>2]=Q;D=C(C(D*o)+C(C(ja*n)+C(r*ka)));z[I+4>>2]=D;r=C(C(ga*o)+C(C(ha*n)+C(r*ia)));z[I>>2]=r;o=C(C(V*k)+C(C(W*l)+C(m*O)));n=C(C(X*k)+C(C(Y*l)+C(m*Z)));k=C(C(da*k)+C(C(ea*l)+C(m*fa)));l=C(L+C(C(U*o)+C(C(P*n)+C(ca*k))));z[H+8>>2]=l;m=C(N+C(C(S*o)+C(C(T*n)+C(k*J))));z[H+4>>2]=m;k=C(u+C(C(x*o)+C(C(E*n)+C(k*G))));z[H>>2]=k;l=C(l-Q);z[p+8>>2]=l;m=C(m-D);z[p+4>>2]=m;k=C(k-r);z[p>>2]=k;p=c+1|0;d=d+1|0;if(($|0)!=(d|0)){continue}break}v[j+28>>2]=p;g:{h:{switch(c-1|0){case 0:o=z[j+200>>2];k=C(z[j+216>>2]-o);n=z[j+192>>2];l=C(z[j+208>>2]-n);r=z[j+196>>2];m=C(z[j+212>>2]-r);u=C(C(k*k)+C(C(l*l)+C(m*m)));if(!(u<=C(1.1920928955078125e-7))){break g}v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break e;case 1:iY(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}}P_(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e}v[j+316>>2]=0;D=k;k=C(F(C(C(C(C(C(-n)*l)-C(m*r))-C(o*k))/u),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=o+C(D*k);z[j+308>>2]=r+C(m*k);z[j+304>>2]=n+C(l*k);break e}k=z[c+8>>2];m=z[c>>2];l=z[c+4>>2];v[j+268>>2]=0;c=C(C(k*k)+C(C(m*m)+C(l*l)))>C(0);k=c?k:C(0);z[j+264>>2]=k;l=c?l:C(0);z[j+260>>2]=l;m=c?m:C(1);z[j+256>>2]=m;o=C(C(1)/C(K(C(C(k*k)+C(C(m*m)+C(l*l))))));u=C(k*o);x=C(m*o);n=C(34028234663852886e22);r=C(l*o);break d}v[j+316>>2]=0;z[j+312>>2]=l;z[j+308>>2]=m;z[j+304>>2]=k}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));if(!(_>2]=v[j+296>>2];c=v[j+292>>2];v[j+272>>2]=v[j+288>>2];v[j+276>>2]=c;V=z[j+268>>2];v[j+12>>2]=0;z[j+8>>2]=-k;z[j+4>>2]=-l;z[j>>2]=-m;d=j+304|0;VW(d,a,j,(j+48|0)+(v[j+28>>2]<<2)|0);W=z[j+316>>2];n=z[j+312>>2];S=z[j+304>>2];T=z[j+308>>2];p=v[j+28>>2];c=v[b+4>>2];J=z[c+56>>2];L=z[c+52>>2];O=z[c+72>>2];q=c- -64|0;P=z[q>>2];X=z[c+68>>2];A=z[c+88>>2];M=z[c+80>>2];Y=z[c+84>>2];Z=z[c+48>>2];v[j+316>>2]=0;D=A;A=k;Q=M;M=m;R=l;z[j+312>>2]=C(D*k)+C(C(Q*m)+C(l*Y));z[j+308>>2]=C(O*k)+C(C(P*m)+C(l*X));z[j+304>>2]=C(J*k)+C(C(Z*m)+C(l*L));d=HV(c,d);v[(j+32|0)+(p<<2)>>2]=d;d=v[c+152>>2]+B(d,12)|0;k=z[d+8>>2];l=z[d>>2];m=z[d+4>>2];O=C(C(z[c+88>>2]*k)+C(C(z[c+56>>2]*l)+C(m*z[c+72>>2])));J=C(n-O);P=C(C(z[c+80>>2]*k)+C(C(z[c+48>>2]*l)+C(m*z[q>>2])));L=C(S-P);l=C(C(z[c+84>>2]*k)+C(C(z[c+52>>2]*l)+C(m*z[c+68>>2])));k=C(T-l);m=C(C(u*J)+C(C(x*L)+C(r*k)));if(m>U){p=0;if(!f){break a}a=v[j+28>>2];t[h|0]=a;if(!a){break a}c=0;if((a|0)!=1){h=a&-2;b=0;while(1){d=c<<2;i=j+48|0;t[c+f|0]=v[d+i>>2];q=j+32|0;t[c+g|0]=v[q+d>>2];d=c|1;e=d<<2;t[d+f|0]=v[e+i>>2];t[d+g|0]=v[e+q>>2];c=c+2|0;b=b+2|0;if((h|0)!=(b|0)){continue}break}}if(!(a&1)){break a}a=c<<2;t[c+f|0]=v[a+(j+48|0)>>2];t[c+g|0]=v[a+(j+32|0)>>2];break a}c=v[j+28>>2];if(m>C(o*C(.9997749924659729))){i:{if(!f){break i}t[h|0]=c;if(!c){break i}a=0;if((c|0)!=1){p=c&-2;d=0;while(1){b=a<<2;q=j+48|0;t[a+f|0]=v[b+q>>2];s=j+32|0;t[a+g|0]=v[s+b>>2];b=a|1;h=b<<2;t[b+f|0]=v[h+q>>2];t[b+g|0]=v[h+s>>2];a=a+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(c&1)){break i}b=a<<2;t[a+f|0]=v[b+(j+48|0)>>2];t[a+g|0]=v[b+(j+32|0)>>2]}z[i+32>>2]=x;v[i+44>>2]=0;z[i+40>>2]=u;z[i+36>>2]=r;IV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,c);j:{if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;a=v[j+292>>2];v[i+68>>2]=v[j+288>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+296>>2];break j}k=z[j+304>>2];l=z[j+308>>2];m=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=m-C(E*u);z[i+4>>2]=l-C(E*r);z[i>>2]=k-C(E*x);k=z[j>>2];l=z[j+4>>2];m=z[j+8>>2];v[i+28>>2]=0;z[i+24>>2]=m+C(G*u);z[i+20>>2]=l+C(G*r);z[i+16>>2]=k+C(G*x);o=C(o-N)}z[i+64>>2]=o;p=2;break a}p=c<<4;d=p+(j+128|0)|0;z[d+12>>2]=W;z[d+8>>2]=n;z[d+4>>2]=T;z[d>>2]=S;d=p+(j- -64|0)|0;v[d+12>>2]=0;z[d+8>>2]=O;z[d+4>>2]=l;z[d>>2]=P;d=p+(j+192|0)|0;v[d+12>>2]=0;z[d+8>>2]=J;z[d+4>>2]=k;z[d>>2]=L;v[j+28>>2]=c+1;k:{l:{switch(c-1|0){case 0:n=z[j+200>>2];k=C(z[j+216>>2]-n);r=z[j+192>>2];l=C(z[j+208>>2]-r);u=z[j+196>>2];m=C(z[j+212>>2]-u);x=C(C(k*k)+C(C(l*l)+C(m*m)));if(x<=C(1.1920928955078125e-7)){v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break k}v[j+316>>2]=0;D=k;k=C(F(C(C(C(C(C(-r)*l)-C(m*u))-C(n*k))/x),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=n+C(D*k);z[j+308>>2]=u+C(m*k);z[j+304>>2]=r+C(l*k);break k;case 1:iY(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:P_(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}}v[j+316>>2]=0;z[j+312>>2]=J;z[j+308>>2]=k;z[j+304>>2]=L}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));x=C(C(1)/n);u=C(k*x);r=C(l*x);x=C(m*x);if(n_){continue}break}a=v[j+28>>2];if(!(n>2];y=j+32|0;t[c+g|0]=v[y+h>>2];h=c|1;p=h<<2;t[f+h|0]=v[p+s>>2];t[g+h|0]=v[p+y>>2];c=c+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(b&1)){break m}b=c<<2;t[c+f|0]=v[b+(j+48|0)>>2];t[c+g|0]=v[b+(j+32|0)>>2]}v[j+296>>2]=v[j+280>>2];b=v[j+276>>2];v[j+288>>2]=v[j+272>>2];v[j+292>>2]=b;z[j+268>>2]=V;z[j+256>>2]=M;z[j+260>>2]=R;z[j+264>>2]=A;IV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,a);v[i+60>>2]=0;z[i+56>>2]=u;z[i+52>>2]=r;z[i+48>>2]=x;v[i+44>>2]=0;k=C(C(1)/o);l=C(A*k);z[i+40>>2]=l;m=C(R*k);z[i+36>>2]=m;k=C(M*k);z[i+32>>2]=k;if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;z[i+64>>2]=o;a=v[j+276>>2];v[i+68>>2]=v[j+272>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+280>>2];p=4;break a}n=z[j+304>>2];r=z[j+308>>2];A=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=A-C(E*l);z[i+4>>2]=r-C(E*m);z[i>>2]=n-C(E*k);n=z[j>>2];r=z[j+4>>2];A=z[j+8>>2];z[i+64>>2]=o-N;v[i+28>>2]=0;z[i+24>>2]=A+C(G*l);z[i+20>>2]=r+C(G*m);z[i+16>>2]=n+C(G*k);p=2;if(o<=N){break a}p=4;break a}if(f){break b}p=5;break a}a=v[j+28>>2]}t[h|0]=a;p=5;if(!a){break a}c=0;if((a|0)!=1){h=a&-2;b=0;while(1){d=c<<2;i=j+48|0;t[c+f|0]=v[d+i>>2];q=j+32|0;t[c+g|0]=v[q+d>>2];d=c|1;e=d<<2;t[d+f|0]=v[e+i>>2];t[d+g|0]=v[e+q>>2];c=c+2|0;b=b+2|0;if((h|0)!=(b|0)){continue}break}}if(!(a&1)){break a}a=c<<2;t[c+f|0]=v[a+(j+48|0)>>2];t[c+g|0]=v[a+(j+32|0)>>2]}xa=j+320|0;return p}function EX(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,u=0,x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0);l=xa-208|0;xa=l;k=xa-272|0;xa=k;v[k+248>>2]=0;v[k+252>>2]=0;v[k+240>>2]=0;v[k+244>>2]=0;J=z[d+8>>2];L=z[d+4>>2];O=z[d>>2];R=z[e+8>>2];M=z[e+4>>2];P=z[e>>2];v[k+224>>2]=1;u=v[a+4>>2];Q=z[u+56>>2];S=z[u+52>>2];q=z[u+72>>2];da=z[u+68>>2];fa=z[u+48>>2];T=z[u+64>>2];A=z[c+8>>2];p=z[c>>2];r=z[c+4>>2];o=v[b+4>>2];G=z[o+56>>2];aa=z[o+52>>2];ba=z[o+72>>2];s=o- -64|0;Z=z[s>>2];E=z[o+68>>2];D=z[o+88>>2];x=z[o+80>>2];n=z[o+84>>2];y=z[o+48>>2];v[k+172>>2]=0;I=D;u=C(C(A*A)+C(C(p*p)+C(r*r)))>C(1.1920928955078125e-7);D=u?A:C(0);A=D;p=u?p:C(1);r=u?r:C(0);D=C(C(1)/C(K(C(C(D*D)+C(C(p*p)+C(r*r))))));U=C(A*D);p=C(p*D);V=C(r*D);z[k+168>>2]=C(I*U)+C(C(x*p)+C(n*V));z[k+164>>2]=C(ba*U)+C(C(Z*p)+C(V*E));z[k+160>>2]=C(G*U)+C(C(y*p)+C(V*aa));u=HV(o,k+160|0);I=z[s>>2];A=z[o+80>>2];r=z[o+84>>2];G=z[o+52>>2];aa=z[o+68>>2];D=z[o+88>>2];u=v[o+152>>2]+B(u,12)|0;H=z[u+8>>2];x=z[o+56>>2];N=z[u>>2];n=z[o+72>>2];_=z[u+4>>2];ba=z[o+48>>2];v[k+180>>2]=0;v[k+184>>2]=0;v[k+188>>2]=0;v[k+192>>2]=0;v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;v[k+208>>2]=0;v[k+212>>2]=0;v[k+216>>2]=0;v[k+220>>2]=0;v[k+172>>2]=0;v[k+176>>2]=0;y=C(-p);u=C(C(C(fa*y)-C(S*V))-C(Q*U))>C(C(C(T*y)-C(da*V))-C(q*U));Z=u?Q:q;E=C(C(D*H)+C(C(x*N)+C(_*n)));q=C(Z-E);z[k+168>>2]=q;D=u?S:da;x=C(C(r*H)+C(C(G*N)+C(_*aa)));p=C(D-x);z[k+164>>2]=p;n=u?fa:T;y=C(C(A*H)+C(C(ba*N)+C(_*I)));r=C(n-y);z[k+160>>2]=r;v[k+116>>2]=0;v[k+120>>2]=0;v[k+124>>2]=0;v[k+128>>2]=0;v[k+132>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+108>>2]=0;v[k+112>>2]=0;z[k+104>>2]=Z;z[k+100>>2]=D;z[k+96>>2]=n;v[k+52>>2]=0;v[k+56>>2]=0;v[k+60>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+44>>2]=0;v[k+48>>2]=0;z[k+40>>2]=E;z[k+36>>2]=x;z[k+32>>2]=y;E=C(-q);D=C(-p);y=C(-r);G=C(C(q*q)+C(C(r*r)+C(p*p)));n=z[v[b+4>>2]+24>>2];n=C((nda)){x=y;n=D;i=E;aa=r;ba=p;Z=q;break b}ga=C(n+i);fa=C(ga*ga);O=C(C(P*C(0))+O);P=C(C(M*C(0))+L);I=C(C(R*C(0))+J);i=E;n=D;x=y;while(1){aa=r;ba=p;Z=q;m=v[a+4>>2];U=z[m+52>>2];V=z[m+56>>2];H=z[m+68>>2];N=z[m+72>>2];Q=z[m+48>>2];S=z[m+64>>2];o=v[b+4>>2];T=z[o+52>>2];J=z[o+56>>2];L=z[o+72>>2];u=o- -64|0;R=z[u>>2];M=z[o+68>>2];A=z[o+88>>2];q=z[o+80>>2];p=z[o+84>>2];r=z[o+48>>2];v[k+268>>2]=0;W=q;q=C(C(1)/C(K(C(C(E*E)+C(C(y*y)+C(D*D))))));ea=C(y*q);ca=C(-ea);X=C(D*q);Y=C(E*q);z[k+264>>2]=C(C(W*ca)-C(p*X))-C(A*Y);z[k+260>>2]=C(C(R*ca)-C(M*X))-C(L*Y);z[k+256>>2]=C(C(r*ca)-C(T*X))-C(J*Y);m=HV(o,k+256|0);s=C(C(V*Y)+C(C(Q*ea)+C(X*U)))>C(C(N*Y)+C(C(S*ea)+C(X*H)));_=s?Q:S;m=v[o+152>>2]+B(m,12)|0;q=z[m+8>>2];p=z[m>>2];r=z[m+4>>2];Q=C(O+C(C(z[o+80>>2]*q)+C(C(z[o+48>>2]*p)+C(r*z[u>>2]))));W=C(_-Q);S=s?U:H;J=C(P+C(C(z[o+84>>2]*q)+C(C(z[o+52>>2]*p)+C(r*z[o+68>>2]))));H=C(S-J);T=s?V:N;L=C(I+C(C(z[o+88>>2]*q)+C(C(z[o+56>>2]*p)+C(r*z[o+72>>2]))));N=C(T-L);R=C(C(C(C(ea*C(-W))-C(X*H))-C(Y*N))-ga);if(R>C(0)){m=0;M=z[e+8>>2];A=z[e>>2];q=z[e+4>>2];p=C(C(Y*M)+C(C(ea*A)+C(X*q)));if(p>=C(0)){break a}r=$;$=C(r-C(R/p));if($>r){if($>C(1)){break a}x=z[d+8>>2];n=z[d+4>>2];i=z[d>>2];v[k+76>>2]=0;v[k+60>>2]=0;v[k+44>>2]=0;p=C(i+C(A*$));A=C(p-O);J=C(A+z[k+64>>2]);z[k+64>>2]=J;r=C(n+C(q*$));n=C(r-P);L=C(n+z[k+68>>2]);z[k+68>>2]=L;G=C(x+C(M*$));i=C(G-I);R=C(i+z[k+72>>2]);z[k+72>>2]=R;M=C(A+z[k+48>>2]);z[k+48>>2]=M;O=C(n+z[k+52>>2]);z[k+52>>2]=O;P=C(i+z[k+56>>2]);z[k+56>>2]=P;I=C(A+z[k+32>>2]);z[k+32>>2]=I;A=C(n+z[k+36>>2]);z[k+36>>2]=A;q=C(i+z[k+40>>2]);z[k+40>>2]=q;x=z[k+96>>2];n=z[k+100>>2];i=z[k+104>>2];v[k+172>>2]=0;z[k+168>>2]=i-q;z[k+164>>2]=n-A;z[k+160>>2]=x-I;x=z[k+112>>2];n=z[k+116>>2];i=z[k+120>>2];v[k+188>>2]=0;z[k+184>>2]=i-P;z[k+180>>2]=n-O;z[k+176>>2]=x-M;x=z[k+128>>2];n=z[k+132>>2];i=z[k+136>>2];v[k+204>>2]=0;z[k+200>>2]=i-R;z[k+196>>2]=n-L;z[k+192>>2]=x-J;s=v[b+4>>2];M=z[s+56>>2];O=z[s+52>>2];P=z[s+72>>2];u=s- -64|0;I=z[u>>2];A=z[s+68>>2];q=z[s+88>>2];x=z[s+80>>2];n=z[s+84>>2];i=z[s+48>>2];v[k+268>>2]=0;W=q;q=C(-Y);H=n;n=C(-X);z[k+264>>2]=C(W*q)+C(C(x*ca)+C(H*n));z[k+260>>2]=C(P*q)+C(C(I*ca)+C(A*n));z[k+256>>2]=C(M*q)+C(C(i*ca)+C(O*n));m=HV(s,k+256|0);m=v[s+152>>2]+B(m,12)|0;x=z[m+8>>2];n=z[m>>2];i=z[m+4>>2];L=C(G+C(C(z[s+88>>2]*x)+C(C(z[s+56>>2]*n)+C(i*z[s+72>>2]))));N=C(T-L);J=C(r+C(C(z[s+84>>2]*x)+C(C(z[s+52>>2]*n)+C(i*z[s+68>>2]))));H=C(S-J);Q=C(p+C(C(z[s+80>>2]*x)+C(C(z[s+48>>2]*n)+C(i*z[u>>2]))));W=C(_-Q);x=y;n=D;i=E;O=p;P=r;I=G;G=C(34028234663852886e22)}}A=G;u=v[k+224>>2];m=u<<4;s=m+(k+96|0)|0;v[s+12>>2]=0;z[s+8>>2]=T;z[s+4>>2]=S;z[s>>2]=_;s=m+(k+32|0)|0;v[s+12>>2]=0;z[s+8>>2]=L;z[s+4>>2]=J;z[s>>2]=Q;m=m+(k+160|0)|0;v[m+12>>2]=0;z[m+8>>2]=N;z[m+4>>2]=H;z[m>>2]=W;v[k+224>>2]=u+1;c:{d:{switch(u-1|0){case 0:G=z[k+168>>2];q=C(z[k+184>>2]-G);E=z[k+160>>2];p=C(z[k+176>>2]-E);D=z[k+164>>2];r=C(z[k+180>>2]-D);y=C(C(q*q)+C(C(p*p)+C(r*r)));if(y<=C(1.1920928955078125e-7)){v[k+224>>2]=1;m=v[k+164>>2];v[k+256>>2]=v[k+160>>2];v[k+260>>2]=m;m=v[k+172>>2];v[k+264>>2]=v[k+168>>2];v[k+268>>2]=m;break c}y=C(F(C(C(C(C(C(-E)*p)-C(r*D))-C(G*q))/y),C(1)));y=y>C(0)?y:C(0);z[k+264>>2]=G+C(q*y);z[k+260>>2]=D+C(r*y);z[k+256>>2]=E+C(p*y);break c;case 1:JV(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break c;case 2:N_(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break c;default:break d}}z[k+264>>2]=N;z[k+260>>2]=H;z[k+256>>2]=W}q=z[k+264>>2];E=C(-q);p=z[k+260>>2];D=C(-p);r=z[k+256>>2];y=C(-r);G=C(C(q*q)+C(C(r*r)+C(p*p)));if(faG){continue}break}m=!(A>G)}o=w[v[a+4>>2]+32|0];A=C(0);H=C(0);d=!(G>da)|m;E=d?i:E;x=d?x:y;y=d?n:D;i=C(K(C(C(E*E)+C(C(x*x)+C(y*y)))));if(!(i<=C(1.1920928955078125e-7))){i=C(C(1)/i);ha=C(E*i);H=C(x*i);A=C(y*i)}v[l+188>>2]=0;z[l+184>>2]=-ha;z[l+180>>2]=-A;z[l+176>>2]=-H;z[l+160>>2]=$;v[l+172>>2]=v[k+236>>2];d=v[k+232>>2];v[l+164>>2]=v[k+228>>2];v[l+168>>2]=d;v[k+268>>2]=0;z[k+264>>2]=m?Z:q;z[k+260>>2]=m?ba:p;z[k+256>>2]=m?aa:r;s=v[k+252>>2];m=v[k+248>>2];v[k+24>>2]=m;v[k+28>>2]=s;u=v[k+244>>2];d=v[k+240>>2];v[k+16>>2]=d;v[k+20>>2]=u;v[k+8>>2]=m;v[k+12>>2]=s;v[k>>2]=d;v[k+4>>2]=u;IV(k+160|0,k+96|0,k+32|0,k+256|0,k+16|0,k,v[k+224>>2]);x=z[v[a+4>>2]+16>>2];n=z[k+16>>2];y=z[k+20>>2];i=z[k+24>>2];v[l+204>>2]=0;z[l+200>>2]=i+(o?C(ha*x):C(-0));z[l+196>>2]=y+(o?C(A*x):C(-0));z[l+192>>2]=n+(o?C(H*x):C(-0));m=1}xa=k+272|0;d=m;if(m){m=v[l+164>>2];v[f>>2]=v[l+160>>2];v[f+4>>2]=m;m=v[l+172>>2];v[f+8>>2]=v[l+168>>2];v[f+12>>2]=m;if(!(!j|z[l+160>>2]!=C(0))){u=v[a+4>>2];m=v[b+4>>2];z[l+144>>2]=C(z[u+16>>2]+z[m+16>>2])*C(100);t[l+135|0]=0;v[l+88>>2]=0;v[l+92>>2]=0;v[l+80>>2]=0;v[l+84>>2]=0;v[l+72>>2]=0;v[l+76>>2]=0;j=l- -64|0;v[j>>2]=0;v[j+4>>2]=0;v[l+56>>2]=0;v[l+60>>2]=0;v[l+48>>2]=0;v[l+52>>2]=0;v[l+112>>2]=0;v[l+40>>2]=141148;v[l+44>>2]=u;v[l+32>>2]=141216;v[l+36>>2]=m;e:{f:{if(HX(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}v[l+16>>2]=1065353216;c=v[l+28>>2];v[l+8>>2]=v[l+24>>2];v[l+12>>2]=c;c=v[l+20>>2];v[l>>2]=v[l+16>>2];v[l+4>>2]=c;if(J_(a,b,l+140|0,l+136|0,w[l+135|0],0,l,l+48|0)-5>>>0<=1){break f}v[l+200>>2]=0;v[l+204>>2]=0;v[l+192>>2]=0;v[l+196>>2]=0;x=z[e+8>>2];n=z[e>>2];y=z[e+4>>2];v[l+188>>2]=0;i=C(C(1)/C(K(C(C(x*x)+C(C(n*n)+C(y*y))))));z[l+184>>2]=i*C(-x);z[l+180>>2]=i*C(-y);z[l+176>>2]=i*C(-n);i=C(0);break e}a=v[l+60>>2];v[l+200>>2]=v[l+56>>2];v[l+204>>2]=a;a=v[l+52>>2];v[l+192>>2]=v[l+48>>2];v[l+196>>2]=a;a=v[l+84>>2];v[l+176>>2]=v[l+80>>2];v[l+180>>2]=a;a=v[l+92>>2];v[l+184>>2]=v[l+88>>2];v[l+188>>2]=a;i=z[l+112>>2]}z[f>>2]=i>2];v[h>>2]=v[l+192>>2];v[h+4>>2]=a;a=v[l+204>>2];v[h+8>>2]=v[l+200>>2];v[h+12>>2]=a;a=v[l+180>>2];v[g>>2]=v[l+176>>2];v[g+4>>2]=a;a=v[l+188>>2];v[g+8>>2]=v[l+184>>2];v[g+12>>2]=a}xa=l+208|0;return d}function GD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=C(0),u=0,y=C(0),A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;i=xa-208|0;xa=i;r=1;d=v[a+4>>2];a:{if(!d){break a}b:{switch(x[b+98>>1]){case 3:if(x[b+96>>1]){d=HD(i+16|0,b+48|0,b+12|0,b);r=ID(v[a+296>>2],v[a+292>>2],v[a+4>>2],d,c);break a}f=z[b+84>>2];e=z[b+88>>2];j=z[b+76>>2];h=z[b+92>>2];k=z[b+80>>2];m=z[b+72>>2];v[i+44>>2]=0;z[i+40>>2]=C(h-k)*C(.5);z[i+36>>2]=C(e-j)*C(.5);v[i+28>>2]=0;z[i+32>>2]=C(f-m)*C(.5);z[i+24>>2]=C(k+h)*C(.5);z[i+20>>2]=C(j+e)*C(.5);z[i+16>>2]=C(m+f)*C(.5);r=JD(v[a+296>>2],v[a+292>>2],d,i+16|0,c);break a;case 2:j=z[b+60>>2];l=z[b+124>>2];m=z[b+112>>2];n=z[b+116>>2];f=z[b+120>>2];v[i+28>>2]=0;z[i+24>>2]=f;z[i+20>>2]=n;z[i+16>>2]=m;e=z[b+16>>2];k=z[b+20>>2];h=z[b+12>>2];v[i+108>>2]=0;v[i+92>>2]=0;v[i+76>>2]=0;l=C(l*C(1.0099999904632568));z[i+72>>2]=l;z[i+68>>2]=l;v[i+60>>2]=0;z[i+56>>2]=h;z[i+52>>2]=k;v[i+44>>2]=0;z[i+40>>2]=k;z[i+36>>2]=e;y=h>C(0)?h:C(-h);z[i+104>>2]=y;s=k>C(0)?k:C(-k);z[i+100>>2]=s;z[i+88>>2]=s;s=e>C(0)?e:C(-e);z[i+84>>2]=s;z[i+64>>2]=l;z[i+48>>2]=e;z[i+32>>2]=h;z[i+96>>2]=s;z[i+80>>2]=y;v[i+140>>2]=0;v[i+124>>2]=0;l=C(j+j);c:{if(l>=C(34028234663852886e22)){j=e==C(0)?n:e>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);h=h==C(0)?m:h>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);e=f;if(k==C(0)){break c}e=k>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break c}j=C(n+C(l*e));h=C(m+C(l*h));e=C(f+C(l*k))}z[i+136>>2]=f>e?f:e;z[i+132>>2]=j>2]=f>2]=j>n?n:j;z[i+128>>2]=h>2]=h>m?m:h;r=KD(v[a+296>>2],v[a+292>>2],d,i+16|0,c);break a;case 0:f=z[b+112>>2];e=z[b+108>>2];g=v[b+104>>2];F=v[b+100>>2];v[i+28>>2]=0;z[i+24>>2]=e;v[i+16>>2]=F;v[i+20>>2]=g;z[i+32>>2]=f*f;r=LD(v[a+296>>2],v[a+292>>2],d,i+16|0,c);break a;case 4:break b;default:break a}}d=HD(i+16|0,b+48|0,b+12|0,b);r=ID(v[a+296>>2],v[a+292>>2],v[a+4>>2],d,c)}if(!(!r|!w[a+336|0]|(v[a+156>>2]+v[a+108>>2]|0)==(0-v[a+216>>2]|0))){r=0;d=xa-224|0;xa=d;q=a+52|0;d:{if(v[q+104>>2]!=(0-v[q+56>>2]|0)){D=q+4|0;a=0;g=xa-208|0;xa=g;G=b+12|0;H=b+48|0;A=1;F=1;while(1){o=B(a,48)+D|0;a=v[o+12>>2];e:{if((A^1)&1|(!a|!v[a+588>>2])){break e}f:{switch(x[b+98>>1]){case 3:if(x[b+96>>1]){a=HD(g+16|0,H,G,b);p=v[D+104>>2];A=cD(v[p+12>>2],v[p+8>>2],v[o+12>>2],a,c);break e}f=z[b+84>>2];e=z[b+72>>2];j=z[b+88>>2];h=z[b+76>>2];k=z[b+92>>2];m=z[b+80>>2];v[g+44>>2]=0;v[g+28>>2]=0;z[g+40>>2]=C(k-m)*C(.5);z[g+36>>2]=C(j-h)*C(.5);z[g+32>>2]=C(f-e)*C(.5);z[g+24>>2]=C(m+k)*C(.5);z[g+20>>2]=C(h+j)*C(.5);z[g+16>>2]=C(e+f)*C(.5);o=v[D+104>>2];I=v[o+12>>2];K=v[o+8>>2];A=0;p=xa-1056|0;xa=p;t[p+1040|0]=1;v[p+1048>>2]=256;v[p+1052>>2]=256;v[p+1044>>2]=p+16;v[p+16>>2]=v[a+588>>2];u=1;g:while(1){u=u-1|0;a=v[v[p+1044>>2]+(u<<2)>>2];f=z[a+16>>2];e=z[a>>2];j=C(f+e);f=C(f-e);k=z[a+24>>2];m=z[a+8>>2];h=C(k+m);n=z[a+20>>2];l=z[a+4>>2];e=C(n+l);k=C(k-m);m=C(n-l);while(1){h:{i:{l=C(C(f*C(.5))+z[g+32>>2]);f=C(C(j*C(.5))-z[g+16>>2]);j:{if(!(l>=(f>C(0)?f:C(-f)))){break j}f=C(C(e*C(.5))-z[g+20>>2]);if(!(C(C(m*C(.5))+z[g+36>>2])>=(f>C(0)?f:C(-f)))){break j}f=C(C(h*C(.5))-z[g+24>>2]);if(!(C(C(k*C(.5))+z[g+40>>2])>=(f>C(0)?f:C(-f)))){break j}o=a;a=v[a+36>>2];if(v[o+40>>2]){break i}E=v[a>>2];if(!E){break j}a=a+4|0;if((E|0)==1){if(Ba[v[v[c>>2]>>2]](c,p+12|0,(v[a>>2]<<3)+I|0)|0){break j}break h}while(1){J=v[a>>2];o=B(J,24)+K|0;e=z[o+12>>2];j=z[o>>2];f=C(C(C(j+e)*C(.5))-z[g+16>>2]);k:{if(!(C(C(C(e-j)*C(.5))+z[g+32>>2])>=(f>C(0)?f:C(-f)))){break k}e=z[o+4>>2];j=z[o+16>>2];f=C(C(C(e+j)*C(.5))-z[g+20>>2]);if(!(C(C(C(j-e)*C(.5))+z[g+36>>2])>=(f>C(0)?f:C(-f)))){break k}e=z[o+8>>2];j=z[o+20>>2];f=C(C(C(e+j)*C(.5))-z[g+24>>2]);if(!(C(C(C(j-e)*C(.5))+z[g+40>>2])>=(f>C(0)?f:C(-f)))){break k}if(!(Ba[v[v[c>>2]>>2]](c,p+12|0,(J<<3)+I|0)|0)){break h}}a=a+4|0;E=E-1|0;if(E){continue}break}}A=!u;if(u){continue g}break h}v[v[p+1044>>2]+(u<<2)>>2]=a+48;u=u+1|0;if((u|0)==(v[p+1052>>2]&2147483647)){fD(p+16|0,u<<1)}f=z[a+16>>2];e=z[a>>2];j=C(f+e);f=C(f-e);k=z[a+24>>2];m=z[a+8>>2];h=C(k+m);n=z[a+20>>2];l=z[a+4>>2];e=C(n+l);k=C(k-m);m=C(n-l);continue}break}break};a=v[p+1052>>2];l:{if((a|0)<0|!(a&2147483647)){break l}a=v[p+1044>>2];if((a|0)==(p+16|0)|!a){break l}o=v[37696];Ba[v[v[o+12>>2]+12>>2]](o+12|0,a)}xa=p+1056|0;break e;case 2:j=z[b+60>>2];l=z[b+124>>2];m=z[b+112>>2];n=z[b+116>>2];f=z[b+120>>2];v[g+28>>2]=0;z[g+24>>2]=f;z[g+20>>2]=n;z[g+16>>2]=m;e=z[b+16>>2];k=z[b+20>>2];h=z[b+12>>2];v[g+108>>2]=0;v[g+92>>2]=0;v[g+76>>2]=0;l=C(l*C(1.0099999904632568));z[g+72>>2]=l;z[g+68>>2]=l;z[g+64>>2]=l;v[g+60>>2]=0;z[g+56>>2]=h;z[g+52>>2]=k;z[g+48>>2]=e;v[g+44>>2]=0;z[g+40>>2]=k;z[g+36>>2]=e;z[g+32>>2]=h;l=h>C(0)?h:C(-h);z[g+104>>2]=l;y=k>C(0)?k:C(-k);z[g+100>>2]=y;s=e>C(0)?e:C(-e);z[g+96>>2]=s;z[g+88>>2]=y;z[g+84>>2]=s;z[g+80>>2]=l;v[g+140>>2]=0;v[g+124>>2]=0;l=C(j+j);m:{if(l>=C(34028234663852886e22)){j=e==C(0)?n:e>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);h=h==C(0)?m:h>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);e=f;if(k==C(0)){break m}e=k>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break m}j=C(n+C(l*e));h=C(m+C(l*h));e=C(f+C(l*k))}z[g+136>>2]=f>e?f:e;z[g+132>>2]=j>2]=h>2]=f>2]=j>n?n:j;z[g+112>>2]=h>m?m:h;o=v[D+104>>2];A=dD(v[o+12>>2],v[o+8>>2],a,g+16|0,c);break e;case 0:f=z[b+112>>2];o=v[b+104>>2];p=v[b+100>>2];e=z[b+108>>2];v[g+28>>2]=0;z[g+24>>2]=e;v[g+16>>2]=p;v[g+20>>2]=o;z[g+32>>2]=f*f;o=v[D+104>>2];A=eD(v[o+12>>2],v[o+8>>2],a,g+16|0,c);break e;case 4:break f;default:break e}}a=HD(g+16|0,H,G,b);p=v[D+104>>2];A=cD(v[p+12>>2],v[p+8>>2],v[o+12>>2],a,c)}a=1;o=F;F=0;if(o){continue}break}xa=g+208|0;if(!(A&1)){break d}}r=1;if(!v[q+164>>2]){break d}n:{switch(x[b+98>>1]){case 3:if(x[b+96>>1]){a=HD(d+32|0,b+48|0,b+12|0,b);v[d+28>>2]=v[q+124>>2];v[d+24>>2]=c;v[d+20>>2]=a;v[d+16>>2]=129804;r=ID(v[q+200>>2],v[q+196>>2],v[q+168>>2],a,d+16|0);break d}f=z[b+84>>2];e=z[b+88>>2];j=z[b+76>>2];h=z[b+92>>2];k=z[b+80>>2];m=z[b+72>>2];v[d+60>>2]=0;z[d+56>>2]=C(h-k)*C(.5);z[d+52>>2]=C(e-j)*C(.5);v[d+44>>2]=0;z[d+48>>2]=C(f-m)*C(.5);z[d+40>>2]=C(k+h)*C(.5);z[d+36>>2]=C(j+e)*C(.5);z[d+32>>2]=C(m+f)*C(.5);v[d+28>>2]=v[q+124>>2];v[d+24>>2]=c;v[d+16>>2]=129836;a=d+32|0;v[d+20>>2]=a;r=JD(v[q+200>>2],v[q+196>>2],v[q+168>>2],a,d+16|0);break d;case 2:j=z[b+60>>2];l=z[b+124>>2];m=z[b+112>>2];n=z[b+116>>2];f=z[b+120>>2];v[d+44>>2]=0;z[d+40>>2]=f;z[d+36>>2]=n;z[d+32>>2]=m;e=z[b+16>>2];k=z[b+20>>2];h=z[b+12>>2];v[d+124>>2]=0;v[d+108>>2]=0;v[d+92>>2]=0;l=C(l*C(1.0099999904632568));z[d+88>>2]=l;z[d+84>>2]=l;v[d+76>>2]=0;z[d+72>>2]=h;z[d+68>>2]=k;v[d+60>>2]=0;z[d+56>>2]=k;z[d+52>>2]=e;y=h>C(0)?h:C(-h);z[d+120>>2]=y;s=k>C(0)?k:C(-k);z[d+116>>2]=s;z[d+104>>2]=s;s=e>C(0)?e:C(-e);z[d+100>>2]=s;z[d+80>>2]=l;z[d+64>>2]=e;z[d+48>>2]=h;z[d+112>>2]=s;z[d+96>>2]=y;v[d+156>>2]=0;v[d+140>>2]=0;l=C(j+j);o:{if(l>=C(34028234663852886e22)){j=e==C(0)?n:e>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);h=h==C(0)?m:h>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);e=f;if(k==C(0)){break o}e=k>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break o}j=C(n+C(l*e));h=C(m+C(l*h));e=C(f+C(l*k))}z[d+152>>2]=f>e?f:e;z[d+148>>2]=j>2]=f>2]=j>n?n:j;z[d+144>>2]=h>2]=h>m?m:h;v[d+28>>2]=v[q+124>>2];v[d+24>>2]=c;v[d+16>>2]=129868;a=d+32|0;v[d+20>>2]=a;r=KD(v[q+200>>2],v[q+196>>2],v[q+168>>2],a,d+16|0);break d;case 0:f=z[b+112>>2];e=z[b+108>>2];a=v[b+104>>2];b=v[b+100>>2];v[d+44>>2]=0;z[d+40>>2]=e;v[d+32>>2]=b;v[d+36>>2]=a;z[d+48>>2]=f*f;v[d+28>>2]=v[q+124>>2];v[d+24>>2]=c;v[d+16>>2]=129900;a=d+32|0;v[d+20>>2]=a;r=LD(v[q+200>>2],v[q+196>>2],v[q+168>>2],a,d+16|0);break d;case 4:break n;default:break d}}a=HD(d+32|0,b+48|0,b+12|0,b);v[d+28>>2]=v[q+124>>2];v[d+24>>2]=c;v[d+20>>2]=a;v[d+16>>2]=129804;r=ID(v[q+200>>2],v[q+196>>2],v[q+168>>2],a,d+16|0)}xa=d+224|0}xa=i+208|0;return r|0}function Av(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=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0;h=0;i=xa-672|0;xa=i;o=v[f>>2];f=v[b+40>>2];I=v[b+12>>2];T=v[b+8>>2];J=z[b+4>>2];v[i+668>>2]=0;v[i+660>>2]=T;v[i+664>>2]=I;z[i+656>>2]=J;z[i+640>>2]=z[e>>2];D=z[a+8>>2];O=z[a+4>>2];z[i+624>>2]=O;q=z[c+20>>2];s=z[c+24>>2];r=z[c>>2];k=z[c+4>>2];p=z[c+8>>2];u=z[c+12>>2];E=z[c+16>>2];v[i+620>>2]=0;z[i+616>>2]=s;z[i+612>>2]=q;z[i+608>>2]=E;z[i+604>>2]=u;z[i+600>>2]=p;z[i+596>>2]=k;z[i+592>>2]=r;A=z[d+20>>2];x=z[d+24>>2];m=z[d>>2];n=z[d+4>>2];l=z[d+8>>2];j=z[d+12>>2];y=z[d+16>>2];v[i+588>>2]=0;z[i+584>>2]=x;z[i+580>>2]=A;z[i+576>>2]=y;z[i+572>>2]=j;z[i+568>>2]=l;z[i+564>>2]=n;z[i+560>>2]=m;v[i+556>>2]=0;v[i+540>>2]=0;v[i+524>>2]=0;P=C(-m);y=C(E-y);F=C(q-A);x=C(s-x);G=C(C(C(P*y)-C(F*n))-C(l*x));L=C(C(j*j)+C(-.5));q=C(C(C(j*C(C(n*y)-C(m*F)))+C(L*x))-C(l*G));M=C(q+q);z[i+552>>2]=M;q=C(C(C(L*F)+C(j*C(C(m*x)-C(l*y))))-C(n*G));N=C(q+q);z[i+548>>2]=N;E=C(C(C(k*l)-C(n*p))+C(C(r*j)-C(u*m)));A=C(E+E);s=C(C(C(p*m)-C(l*r))+C(C(k*j)-C(u*n)));H=C(s+s);Q=C(C(1)-C(E*A));R=C(s*H);z[i+536>>2]=Q-R;q=C(C(C(r*n)-C(m*k))+C(C(p*j)-C(u*l)));S=C(q*H);r=C(C(u*j)-C(C(C(P*r)-C(k*n))-C(l*p)));k=C(r*A);z[i+532>>2]=S-k;z[i+520>>2]=S+k;k=C(q+q);p=C(q*k);z[i+516>>2]=Q-p;v[i+508>>2]=0;j=C(C(C(L*y)+C(j*C(C(l*F)-C(n*x))))-C(m*G));m=C(j+j);z[i+544>>2]=m;j=C(q*A);n=C(r*H);z[i+528>>2]=j+n;l=C(s*A);k=C(r*k);z[i+512>>2]=l-k;z[i+504>>2]=j-n;z[i+500>>2]=l+k;z[i+496>>2]=C(C(1)-R)-p;j=C(O*C(.05000000074505806));n=z[e+8>>2];l=C(n*C(.05000000074505806));k=C(J*z[f+52>>2]);p=C(z[f+56>>2]*z[i+660>>2]);k=k<=p?k:p;p=C(z[f+60>>2]*z[i+664>>2]);k=C((k<=p?k:p)*C(.25));l=k>l?l:k;l=j>2];c=c-1|0;d=e+B(c,48)|0;k=z[d+24>>2];y=z[d+40>>2];j=z[d+8>>2];p=z[d>>2];u=z[d+4>>2];F=C(z[i+552>>2]+C(C(z[i+536>>2]*j)+C(C(z[i+504>>2]*p)+C(u*z[i+520>>2]))));x=C(z[i+544>>2]+C(C(z[i+528>>2]*j)+C(C(z[i+496>>2]*p)+C(u*z[i+512>>2]))));G=z[d+16>>2];H=z[d+32>>2];p=C(z[i+548>>2]+C(C(z[i+532>>2]*j)+C(C(z[i+500>>2]*p)+C(u*z[i+516>>2]))));u=z[d+20>>2];J=z[d+36>>2];j=C(C(y*C(F-k))+C(C(C(x-G)*H)+C(C(p-u)*J)));k=C(k-C(F-C(y*j)));y=C(k*k);k=C(G-C(x-C(H*j)));x=C(k*k);k=C(u-C(p-C(J*j)));a:{if(A>2];v[d>>2]=v[e>>2];v[d+4>>2]=h;h=v[e+44>>2];v[d+40>>2]=v[e+40>>2];v[d+44>>2]=h;h=v[e+36>>2];v[d+32>>2]=v[e+32>>2];v[d+36>>2]=h;h=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=h;h=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=h;h=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=h;break a}z[d+44>>2]=j}if(c){continue}break}h=w[o+64|0]}b:{c:{d:{e:{if((a|0)!=(h|0)){break e}c=a<<2;j=C(m-z[o+16>>2]);j=j>C(0)?j:C(-j);k=C(N-z[o+20>>2]);k=k>C(0)?k:C(-k);k=j>=k?j:k;p=j;j=C(M-z[o+24>>2]);j=(j>C(0)?j:C(-j))>=C(0)?p:C(0);if(C(l*z[c+103172>>2])<(j<=k?k:j)){break e}if(!(z[c+103204>>2]>C(C(r*z[o+12>>2])+C(C(q*z[o+8>>2])+C(C(E*z[o>>2])+C(s*z[o+4>>2])))))){break d}}d=0;f:{if(z[b+4>>2]!=C(1)){break f}d=0;if(z[b+8>>2]!=C(1)){break f}d=z[b+12>>2]==C(1)}v[o+28>>2]=0;z[o+24>>2]=M;z[o+20>>2]=N;z[o+16>>2]=m;z[o+12>>2]=r;z[o+8>>2]=q;z[o+4>>2]=s;z[o>>2]=E;c=v[b+16>>2];e=v[b+20>>2];I=v[b+28>>2];v[i+488>>2]=v[b+24>>2];v[i+492>>2]=I;v[i+480>>2]=c;v[i+484>>2]=e;j=z[f+32>>2];b=f;c=v[b+28>>2];e=v[b+24>>2];t[i+352|0]=0;v[i+348>>2]=0;v[i+464>>2]=b;v[i+332>>2]=0;z[i+328>>2]=j;v[i+320>>2]=e;v[i+324>>2]=c;v[i+472>>2]=v[b+40>>2]+B(w[b+39|0],20);t[i+476|0]=w[b+38|0];j=C(z[b+52>>2]*z[i+656>>2]);m=C(z[b+56>>2]*z[i+660>>2]);j=j<=m?j:m;m=C(z[b+60>>2]*z[i+664>>2]);j=j<=m?j:m;z[i+344>>2]=j*C(.02500000037252903);z[i+340>>2]=j*C(.05000000074505806);z[i+336>>2]=j*C(.10000000149011612);FV(i+656|0,i+480|0,i+368|0,i+416|0,i+320|0,d);v[i+468>>2]=v[b+44>>2];v[i+252>>2]=4;b=v[i+552>>2];c=v[i+556>>2];e=v[i+636>>2];v[i+312>>2]=v[i+632>>2];v[i+316>>2]=e;e=v[i+544>>2];f=v[i+548>>2];I=v[i+628>>2];v[i+304>>2]=v[i+624>>2];v[i+308>>2]=I;v[i+224>>2]=e;v[i+228>>2]=f;v[i+232>>2]=b;v[i+236>>2]=c;k=z[i+528>>2];p=z[i+496>>2];u=z[i+512>>2];s=z[i+532>>2];E=z[i+500>>2];A=z[i+516>>2];y=z[i+536>>2];F=z[i+504>>2];x=z[i+520>>2];m=z[i+544>>2];q=z[i+548>>2];r=z[i+552>>2];v[i+300>>2]=0;v[i+284>>2]=0;j=C(D*C(0));G=C(C(y*j)+C(C(F*D)+C(j*x)));z[i+296>>2]=r-G;H=C(C(s*j)+C(C(E*D)+C(j*A)));z[i+292>>2]=q-H;z[i+280>>2]=G+r;z[i+276>>2]=H+q;j=C(C(k*j)+C(C(p*D)+C(j*u)));z[i+288>>2]=m-j;z[i+272>>2]=j+m;j=z[i+304>>2];t[i+256|0]=1;z[i+248>>2]=j;z[i+244>>2]=j;z[i+240>>2]=j;v[i+184>>2]=0;v[i+188>>2]=0;v[i+176>>2]=0;v[i+180>>2]=0;v[i+168>>2]=0;v[i+172>>2]=0;v[i+160>>2]=0;v[i+164>>2]=0;v[i+152>>2]=0;v[i+156>>2]=0;v[i+144>>2]=0;v[i+148>>2]=0;v[i+208>>2]=0;v[i+136>>2]=141148;v[i+140>>2]=i+224;v[i+124>>2]=0;z[i+120>>2]=z[i+232>>2]-z[i+328>>2];z[i+116>>2]=z[i+228>>2]-z[i+324>>2];z[i+112>>2]=z[i+224>>2]-z[i+320>>2];c=0;g:{h:{i:{if(d){v[i+96>>2]=144404;v[i+100>>2]=i+320;b=w1(i+136|0,i+96|0,i+112|0,i+640|0,o+67|0,o+71|0,o+66|0,i+144|0);break i}v[i+96>>2]=141216;v[i+100>>2]=i+320;b=HX(i+136|0,i+96|0,i+112|0,i+640|0,1,o+67|0,o+71|0,o+66|0,i+144|0)}switch(b|0){case 4:break h;case 0:break b;default:break g}}c=x1(i+224|0,i+320|0,i+496|0,i+592|0,i+560|0,g,g,d,o,i+176|0,i+160|0,z[i+336>>2],i+640|0,1,n);break b}z[i+96>>2]=l*C(.05000000074505806);j:{k:{if((b|0)!=2){c=1;l:{if(d){v[i+80>>2]=144404;v[i+84>>2]=i+320;b=w[o+66|0];z[i+48>>2]=n;e=v[i+60>>2];v[i+8>>2]=v[i+56>>2];v[i+12>>2]=e;e=v[i+52>>2];v[i>>2]=v[i+48>>2];v[i+4>>2]=e;b=J_(i+136|0,i+80|0,o+67|0,o+71|0,b,1,i,i+144|0);break l}v[i+80>>2]=141216;v[i+84>>2]=i+320;b=w[o+66|0];z[i+32>>2]=n;e=v[i+44>>2];v[i+24>>2]=v[i+40>>2];v[i+28>>2]=e;e=v[i+36>>2];v[i+16>>2]=v[i+32>>2];v[i+20>>2]=e;b=J_(i+136|0,i+80|0,o+67|0,o+71|0,b,1,i+16|0,i+144|0)}if((b|0)!=5){break k}}v[i+92>>2]=0;j=C(z[i+152>>2]-r);l=C(z[i+144>>2]-m);m=C(z[i+148>>2]-q);z[i+84>>2]=C(x*j)+C(C(u*l)+C(m*A));z[i+80>>2]=C(F*j)+C(C(p*l)+C(m*E));z[i+88>>2]=C(y*j)+C(C(k*l)+C(m*s));z[i+76>>2]=z[i+208>>2];z[i+72>>2]=z[i+184>>2];b=v[i+180>>2];v[i+64>>2]=v[i+176>>2];v[i+68>>2]=b;b=v[i+84>>2];v[g>>2]=v[i+80>>2];v[g+4>>2]=b;b=v[i+92>>2];v[g+8>>2]=v[i+88>>2];v[g+12>>2]=b;b=v[i+172>>2];v[g+24>>2]=v[i+168>>2];v[g+28>>2]=b;b=v[i+164>>2];v[g+16>>2]=v[i+160>>2];v[g+20>>2]=b;b=v[i+76>>2];v[g+40>>2]=v[i+72>>2];v[g+44>>2]=b;b=v[i+68>>2];v[g+32>>2]=v[i+64>>2];v[g+36>>2]=b;v2(o,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=x1(i+224|0,i+320|0,i+496|0,i+592|0,i+560|0,g,g,d,o,i+176|0,i+160|0,z[i+336>>2],i+640|0,c,n);break b}v[i+92>>2]=0;j=z[i+572>>2];n=C(C(j*j)+C(-.5));l=z[i+568>>2];m=z[i+184>>2];q=z[i+560>>2];r=z[i+176>>2];k=z[i+564>>2];p=z[i+180>>2];u=C(C(l*m)+C(C(q*r)+C(k*p)));s=C(C(C(j*C(C(q*p)-C(r*k)))+C(n*m))+C(l*u));z[i+88>>2]=s+s;s=C(C(k*u)+C(C(n*p)+C(j*C(C(l*r)-C(m*q)))));z[i+84>>2]=s+s;j=C(C(q*u)+C(C(r*n)+C(j*C(C(k*m)-C(p*l)))));z[i+80>>2]=j+j;a=i+80|0;r2(o,g,a,a,i+592|0,i+624|0,i+640|0);break c}if(!a){c=0;break b}c=1;b=v[o+76>>2];m=z[b+32>>2];j=m;q=z[b+36>>2];n=q;r=z[b+40>>2];l=r;m:{if((a|0)==1){break m}d=a-1|0;e=d&1;l=r;n=q;j=m;if((a|0)!=2){f=d&-2;d=0;while(1){a=b+B(c,48)|0;j=C(C(j+z[a+32>>2])+z[a+80>>2]);l=C(C(l+z[a+40>>2])+z[a+88>>2]);n=C(C(n+z[a+36>>2])+z[a+84>>2]);c=c+2|0;d=d+2|0;if((f|0)!=(d|0)){continue}break}}if(!e){break m}a=b+B(c,48)|0;j=C(j+z[a+32>>2]);l=C(l+z[a+40>>2]);n=C(n+z[a+36>>2])}v[i+332>>2]=0;k=z[i+568>>2];a=C(C(l*l)+C(C(j*j)+C(n*n)))>C(1.1920928955078125e-7);l=a?l:r;r=z[i+560>>2];m=a?j:m;p=z[i+564>>2];n=a?n:q;q=C(C(k*l)+C(C(r*m)+C(p*n)));j=z[i+572>>2];u=C(C(j*j)+C(-.5));s=C(C(k*q)+C(C(j*C(C(r*n)-C(m*p)))+C(l*u)));s=C(s+s);D=C(C(r*q)+C(C(j*C(C(p*l)-C(n*k)))+C(m*u)));D=C(D+D);j=C(C(p*q)+C(C(j*C(C(k*m)-C(l*r)))+C(n*u)));n=C(j+j);j=C(C(1)/C(K(C(C(s*s)+C(C(D*D)+C(n*n))))));z[i+328>>2]=s*j;z[i+324>>2]=n*j;z[i+320>>2]=D*j;a=i+320|0;r2(o,g,a,a,i+592|0,i+624|0,i+640|0)}c=1}xa=i+672|0;return c|0}function Gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=0,oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=0,ta=0,ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0;d=xa-160|0;xa=d;a:{if(w[a+488|0]){a9(v[37696],8,12959,1569,76702,0);break a}Ea=v[a+448>>2];K=v[c+52>>2];v[d+152>>2]=0;v[d+144>>2]=0;v[d+148>>2]=0;v[d+136>>2]=0;v[d+140>>2]=0;v[d+128>>2]=0;v[d+132>>2]=0;v[d+120>>2]=0;v[d+124>>2]=0;v[d+112>>2]=0;v[d+116>>2]=0;j=d+112|0;ta=Bx(K,Ea,j);v[d+136>>2]=v[c+12>>2];v[d+144>>2]=v[c+24>>2];na=a+112|0;vx(na,j);qx(na);rx(na,b,j);Dx(a,na);sx(na,j);Ex(na,j);Ia=v[d+120>>2];A=v[d+116>>2];if(!(t[v[a+476>>2]]&1)){j=v[d+124>>2];b=v[a+348>>2];e=z[b+32>>2];m=z[b+20>>2];n=z[b+28>>2];D=z[b+16>>2];h=z[b+8>>2];p=z[b+4>>2];k=z[b+24>>2];s=z[b+12>>2];l=z[b>>2];V=C(1);L=C(1);r=C(1);i=C(1);q=z[b+80>>2];W=z[b+84>>2];E=z[b+100>>2];F=z[b+96>>2];ua=z[b+88>>2];M=C(C(W*E)-C(F*ua));da=z[b+72>>2];va=z[b+104>>2];ea=z[b+92>>2];N=C(C(ua*va)-C(E*ea));fa=z[b+76>>2];O=C(va*W);P=C(C(q*M)+C(C(da*N)+C(fa*C(C(ea*F)-O))));if(P!=C(0)){g=C(C(1)/P);i=C(C(C(da*ua)+C(fa*C(-W)))*g);r=C(C(C(da*va)-C(F*q))*g);Q=C(C(C(fa*ea)-C(ua*q))*g);L=C(N*g);o=C(g*C(-C(C(da*E)-C(F*fa))));u=C(g*C(-C(C(da*ea)-C(W*q))));f=C(g*C(-C(O+C(F*C(-ea)))));R=C(g*C(-C(C(fa*va)-C(q*E))));g=C(M*g)}M=C(0);N=C(0);O=C(1);P=C(0);oa=C(1);G=z[b+44>>2];I=C(-s);ga=C(C(C(f*I)-C(l*L))-C(k*g));ha=C(C(C(r*I)-C(l*R))-C(k*o));I=C(C(C(u*I)-C(l*Q))-C(k*i));x=C(G+C(C(C(h*ga)+C(m*ha))+C(e*I)));J=C(-D);ia=C(C(C(f*J)-C(p*L))-C(n*g));ja=C(C(C(r*J)-C(p*R))-C(n*o));qa=C(C(C(u*J)-C(p*Q))-C(n*i));ka=z[b+48>>2];X=C(C(C(C(l*ia)+C(s*ja))+C(k*qa))+ka);S=f;f=C(-m);L=C(C(C(S*f)-C(h*L))-C(e*g));R=C(C(C(r*f)-C(h*R))-C(e*o));Q=C(C(C(u*f)-C(h*Q))-C(e*i));la=z[b- -64>>2];Y=C(C(C(C(p*L)+C(D*R))+C(n*Q))+la);r=z[b+60>>2];g=C(C(C(C(l*L)+C(s*R))+C(k*Q))+r);ma=z[b+52>>2];Z=C(C(C(C(p*ia)+C(D*ja))+C(n*qa))+ma);wa=C(C(X*Y)-C(g*Z));u=z[b+36>>2];o=C(u+C(C(C(l*ga)+C(s*ha))+C(k*I)));_=z[b+68>>2];pa=C(C(C(C(h*L)+C(m*R))+C(e*Q))+_);$=z[b+56>>2];f=C(C(C(C(h*ia)+C(m*ja))+C(e*qa))+$);aa=C(C(Z*pa)-C(Y*f));ba=z[b+40>>2];T=C(ba+C(C(C(p*ga)+C(D*ha))+C(n*I)));ca=C(pa*X);i=C(C(x*wa)+C(C(o*aa)+C(T*C(C(f*g)-ca))));if(i!=C(0)){i=C(C(1)/i);oa=C(C(C(o*Z)+C(T*C(-X)))*i);O=C(C(C(o*pa)-C(g*x))*i);M=C(C(C(T*f)-C(Z*x))*i);ya=C(i*C(-C(C(o*Y)-C(g*T))));P=C(i*C(-C(C(o*f)-C(X*x))));N=C(i*C(-C(ca+C(g*C(-f)))));za=C(wa*i);Aa=C(i*C(-C(C(T*pa)-C(x*Y))));V=C(aa*i)}pa=C(0);wa=C(1);g=C(1);o=C(0);i=C(0);x=C(0);T=C(1);X=C(0);f=C(0);Y=C(0);Z=C(1);aa=C(C(ka*la)-C(r*ma));ca=C(C(ma*_)-C(la*$));ra=C(_*ka);S=C(C(G*aa)+C(C(u*ca)+C(ba*C(C($*r)-ra))));if(S!=C(0)){f=C(C(1)/S);Z=C(C(C(u*ma)+C(ba*C(-ka)))*f);T=C(C(C(u*_)-C(r*G))*f);i=C(C(C(ba*$)-C(ma*G))*f);g=C(ca*f);Y=C(f*C(-C(C(u*la)-C(r*ba))));X=C(f*C(-C(C(u*$)-C(ka*G))));x=C(f*C(-C(ra+C(r*C(-$)))));o=C(f*C(-C(C(ba*_)-C(G*la))));f=C(aa*f)}r=C(0);u=C(0);$=C(1);ba=C(0);ka=C(0);la=C(0);ma=C(1);S=q;q=C(-p);_=C(C(C(x*q)-C(l*g))-C(h*f));aa=C(C(C(T*q)-C(l*o))-C(h*Y));ca=C(C(C(X*q)-C(l*i))-C(h*Z));q=C(S+C(C(C(k*_)+C(n*aa))+C(e*ca)));S=W;W=C(C(C(x*J)-C(s*g))-C(m*f));ra=C(C(C(T*J)-C(s*o))-C(m*Y));J=C(C(C(X*J)-C(s*i))-C(m*Z));G=C(S+C(C(C(l*W)+C(p*ra))+C(h*J)));S=E;E=C(-n);f=C(C(C(x*E)-C(k*g))-C(e*f));x=C(C(C(T*E)-C(k*o))-C(e*Y));E=C(C(C(X*E)-C(k*i))-C(e*Z));g=C(S+C(C(C(s*f)+C(D*x))+C(m*E)));i=C(F+C(C(C(l*f)+C(p*x))+C(h*E)));o=C(ua+C(C(C(s*W)+C(D*ra))+C(m*J)));F=C(C(G*g)-C(i*o));h=C(da+C(C(C(l*_)+C(p*aa))+C(h*ca)));p=C(va+C(C(C(k*f)+C(n*x))+C(e*E)));k=C(ea+C(C(C(k*W)+C(n*ra))+C(e*J)));n=C(C(o*p)-C(g*k));l=C(fa+C(C(C(s*_)+C(D*aa))+C(m*ca)));m=C(p*G);e=C(C(q*F)+C(C(h*n)+C(l*C(C(k*i)-m))));if(e!=C(0)){e=C(C(1)/e);ma=C(C(C(h*o)+C(l*C(-G)))*e);$=C(C(C(h*p)-C(i*q))*e);wa=C(n*e);la=C(e*C(-C(C(h*g)-C(i*l))));ba=C(e*C(-C(C(h*k)-C(G*q))));pa=C(e*C(-C(C(l*p)-C(q*g))));ka=C(F*e);u=C(e*C(-C(m+C(i*C(-k)))));r=C(C(C(l*k)-C(o*q))*e)}z[d+72>>2]=V;z[d+36>>2]=wa;z[d+104>>2]=oa;z[d+100>>2]=ya;z[d+96>>2]=za;z[d+92>>2]=P;z[d+88>>2]=O;z[d+84>>2]=N;z[d+80>>2]=M;z[d+76>>2]=Aa;z[d+68>>2]=ma;b=d- -64|0;z[b>>2]=la;z[d+60>>2]=ka;z[d+56>>2]=ba;z[d+52>>2]=$;z[d+48>>2]=u;z[d+44>>2]=r;z[d+40>>2]=pa;z[d+32>>2]=C(C(I*za)+C(qa*ya))+C(Q*oa);z[d+28>>2]=C(C(ha*za)+C(ja*ya))+C(R*oa);z[d+24>>2]=C(C(ga*za)+C(ia*ya))+C(L*oa);z[d+20>>2]=C(C(I*N)+C(qa*O))+C(Q*P);z[d+16>>2]=C(C(ha*N)+C(ja*O))+C(R*P);z[d+12>>2]=C(C(ga*N)+C(ia*O))+C(L*P);z[d+8>>2]=C(C(I*V)+C(qa*Aa))+C(Q*M);z[d+4>>2]=C(C(ha*V)+C(ja*Aa))+C(R*M);z[d>>2]=C(C(ga*V)+C(ia*Aa))+C(L*M);e=z[j+24>>2];h=z[j+20>>2];V=z[d+60>>2];q=z[d+48>>2];F=z[b>>2];da=z[d+40>>2];ea=z[d+52>>2];fa=z[d+68>>2];M=z[d+44>>2];N=z[d+56>>2];O=z[d+96>>2];P=z[d+84>>2];p=z[d+20>>2];s=z[d+16>>2];oa=z[d+100>>2];G=z[d+76>>2];ga=z[d+88>>2];i=z[d+32>>2];k=z[j+16>>2];g=z[d+28>>2];ha=z[d+104>>2];l=z[j+8>>2];I=z[d+80>>2];m=z[j>>2];J=z[d+92>>2];n=z[j+4>>2];ia=z[d+36>>2];o=z[d+8>>2];f=z[d>>2];D=z[d+4>>2];ja=z[d+72>>2];r=z[d+12>>2];u=z[d+24>>2];v[A+28>>2]=0;v[A+12>>2]=0;z[A+24>>2]=-C(C(C(i*e)+C(C(u*k)+C(g*h)))+C(C(C(m*I)+C(n*J))+C(l*ha)));z[A+20>>2]=-C(C(C(p*e)+C(C(r*k)+C(s*h)))+C(C(C(m*G)+C(n*ga))+C(l*oa)));z[A+16>>2]=-C(C(C(o*e)+C(C(f*k)+C(D*h)))+C(C(C(m*ja)+C(n*P))+C(l*O)));z[A+8>>2]=-C(C(C(C(m*o)+C(n*p))+C(l*i))+C(C(C(k*M)+C(h*N))+C(e*fa)));z[A+4>>2]=-C(C(C(C(m*D)+C(n*s))+C(l*g))+C(C(C(k*da)+C(h*ea))+C(e*F)));z[A>>2]=-C(C(C(C(m*f)+C(n*r))+C(l*u))+C(C(C(k*ia)+C(h*q))+C(e*V)))}if(Ea>>>0>=2){Ja=v[c+16>>2];H=1;while(1){j=v[na+340>>2]+B(H,160)|0;e=z[j+124>>2];Fa=H<<5;b=A+(v[(Fa+v[a+444>>2]|0)+24>>2]<<5)|0;s=z[b>>2];h=z[j+120>>2];i=z[b+4>>2];o=C(C(C(e*s)-C(h*i))+z[b+24>>2]);g=z[b+8>>2];f=C(h*g);h=z[j+128>>2];f=C(C(f-C(h*s))+z[b+20>>2]);D=C(C(C(h*i)-C(e*g))+z[b+16>>2]);b:{c:{b=v[a+456>>2]+B(H,80)|0;U=w[b+76|0];if(U){Ga=(v[b+72>>2]<<2)+Ja|0;b=0;while(1){c=b<<2;sa=c+d|0;q=z[(c+j|0)+132>>2];c=j+(b<<5)|0;z[sa>>2]=q-C(C(C(z[c+24>>2]*g)+C(C(z[c+16>>2]*s)+C(i*z[c+20>>2])))+C(C(z[c+8>>2]*o)+C(C(z[c>>2]*D)+C(f*z[c+4>>2]))));b=b+1|0;if((U|0)!=(b|0)){continue}break}Ka=U&254;La=U&1;b=v[a+360>>2]+B(H,36)|0;sa=0;while(1){Ca=sa<<2;Da=Ga+Ca|0;v[Da>>2]=0;e=C(0);c=0;j=0;if((U|0)!=1){while(1){e=C(C(z[(b+B(c,12)|0)+Ca>>2]*z[(c<<2)+d>>2])+e);z[Da>>2]=e;Ha=c|1;e=C(C(z[(b+B(Ha,12)|0)+Ca>>2]*z[(Ha<<2)+d>>2])+e);z[Da>>2]=e;c=c+2|0;j=j+2|0;if((Ka|0)!=(j|0)){continue}break}}if(La){z[Da>>2]=C(z[(b+B(c,12)|0)+Ca>>2]*z[(c<<2)+d>>2])+e}sa=sa+1|0;if((U|0)!=(sa|0)){continue}break}if(U){break c}}h=C(0);k=C(0);l=C(0);m=C(0);n=C(0);p=C(0);break b}j=v[a+384>>2]+B(H,76)|0;p=C(0);b=0;n=C(0);m=C(0);l=C(0);k=C(0);h=C(0);while(1){e=z[(b<<2)+Ga>>2];c=j+B(b,24)|0;m=C(m+C(e*z[c+12>>2]));l=C(l+C(e*z[c+8>>2]));k=C(k+C(e*z[c+4>>2]));h=C(h+C(e*z[c>>2]));p=C(p+C(e*z[c+20>>2]));n=C(n+C(e*z[c+16>>2]));b=b+1|0;if((U|0)!=(b|0)){continue}break}}b=Fa+Ia|0;e=z[b+20>>2];r=z[b+24>>2];u=z[b>>2];V=z[b+4>>2];q=z[b+8>>2];F=z[b+16>>2];b=A+Fa|0;v[b+28>>2]=0;v[b+12>>2]=0;z[b+16>>2]=m+C(D+F);z[b+8>>2]=l+C(g+q);z[b+4>>2]=k+C(i+V);z[b>>2]=h+C(s+u);z[b+24>>2]=p+C(o+r);z[b+20>>2]=n+C(f+e);H=H+1|0;if((Ea|0)!=(H|0)){continue}break}}a=v[K+16>>2];if(!(a>>>0<=ta>>>0&a+v[K+20>>2]>>>0>ta>>>0)){if(!ta){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,ta);break a}U=v[K+4>>2];a=0;H=v[K+8>>2];j=H;while(1){A=a;a=a+1|0;b=j;j=b-1|0;c=U+(j<<2)|0;if(y[c>>2]>>0){continue}break}d:{if(b>>>0>=H>>>0){break d}j=A&3;if(j){a=0;while(1){v[c>>2]=v[v[K+4>>2]+(b<<2)>>2];b=b+1|0;c=c+4|0;a=a+1|0;if((j|0)!=(a|0)){continue}break}}if(A-1>>>0<3){break d}while(1){a=b<<2;v[c>>2]=v[a+v[K+4>>2]>>2];v[c+4>>2]=v[(a+v[K+4>>2]|0)+4>>2];v[c+8>>2]=v[(a+v[K+4>>2]|0)+8>>2];v[c+12>>2]=v[(a+v[K+4>>2]|0)+12>>2];c=c+16|0;b=b+4|0;if((H|0)!=(b|0)){continue}break}}v[K+8>>2]=H-1}xa=d+160|0}function $X(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=0,B=C(0),D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0);l=xa-288|0;xa=l;k=xa-272|0;xa=k;v[k+264>>2]=0;v[k+268>>2]=0;v[k+256>>2]=0;v[k+260>>2]=0;X=z[d+8>>2];_=z[d+4>>2];$=z[d>>2];aa=z[e+8>>2];ba=z[e+4>>2];ca=z[e>>2];v[k+240>>2]=1;A=v[b+4>>2];P=z[A+52>>2];n=v[a+8>>2];Q=z[n+52>>2];R=z[n+36>>2];T=z[n+20>>2];U=z[A+56>>2];B=z[n+56>>2];G=z[n+40>>2];x=v[a+4>>2];I=z[x+56>>2];J=z[a+56>>2];o=z[a+24>>2];L=z[a+40>>2];S=z[a+48>>2];u=z[a+32>>2];s=z[n+24>>2];V=z[x+52>>2];q=z[a+52>>2];W=z[a+20>>2];y=z[a+36>>2];Y=z[A+48>>2];m=z[n+48>>2];D=z[n+32>>2];da=z[n>>2];ea=z[n+16>>2];E=z[n+4>>2];r=z[n+8>>2];Z=z[x+48>>2];p=z[a+16>>2];H=z[c+8>>2];M=z[c>>2];N=z[c+4>>2];v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;v[k+208>>2]=0;v[k+212>>2]=0;v[k+216>>2]=0;v[k+220>>2]=0;v[k+224>>2]=0;v[k+228>>2]=0;v[k+232>>2]=0;v[k+236>>2]=0;v[k+188>>2]=0;v[k+192>>2]=0;ga=B;ha=G;ia=I;ja=C(-I);ka=o;n=C(C(H*H)+C(C(M*M)+C(N*N)))>C(1.1920928955078125e-7);o=n?M:C(1);M=n?H:C(0);I=n?N:C(0);B=C(C(1)/C(K(C(C(M*M)+C(C(o*o)+C(I*I))))));o=C(o*B);G=C(-o);I=C(I*B);H=J;J=C(M*B);L=C(C(C(ka*G)-C(L*I))-C(H*J))>C(0)?ia:ja;u=C(C(C(p*G)-C(u*I))-C(S*J))>C(0)?Z:C(-Z);p=C(C(C(W*G)-C(y*I))-C(q*J))>C(0)?V:C(-V);W=C(ga+C(C(ha*L)+C(C(r*u)+C(s*p))));y=J>C(0)?U:C(-U);s=C(W-y);z[k+184>>2]=s;E=C(Q+C(C(R*L)+C(C(E*u)+C(p*T))));r=I>C(0)?P:C(-P);q=C(E-r);z[k+180>>2]=q;p=C(m+C(C(D*L)+C(C(da*u)+C(p*ea))));o=o>C(0)?Y:C(-Y);m=C(p-o);z[k+176>>2]=m;v[k+132>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+160>>2]=0;v[k+164>>2]=0;v[k+168>>2]=0;v[k+172>>2]=0;v[k+124>>2]=0;v[k+128>>2]=0;z[k+120>>2]=W;z[k+116>>2]=E;z[k+112>>2]=p;v[k+68>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+96>>2]=0;v[k+100>>2]=0;v[k+104>>2]=0;v[k+108>>2]=0;v[k+60>>2]=0;v[k+64>>2]=0;z[k+56>>2]=y;z[k+52>>2]=r;z[k+48>>2]=o;y=C(-s);E=C(-q);o=C(-m);D=C(C(s*s)+C(C(m*m)+C(q*q)));r=z[A+24>>2];p=z[x+24>>2];p=C((p>r?r:p)*C(.10000000149011612));M=C(p*p);a:{b:{if(!(D>M)){r=o;p=E;i=y;G=C(0);da=m;ea=q;W=s;break b}Y=C(p+i);I=C(Y*Y);J=C(C(ca*C(0))+$);L=C(C(ba*C(0))+_);S=C(C(aa*C(0))+X);G=C(0);i=y;p=E;r=o;while(1){da=m;ea=q;W=s;q=C(C(1)/C(K(C(C(y*y)+C(C(o*o)+C(E*E))))));N=C(o*q);x=v[a+8>>2];n=v[a+4>>2];m=z[n+56>>2];B=C(y*q);P=C(E*q);u=C(C(z[a+56>>2]*B)+C(C(N*z[a+24>>2])+C(P*z[a+40>>2])))>C(0)?m:C(-m);m=z[n+48>>2];s=C(C(z[a+48>>2]*B)+C(C(N*z[a+16>>2])+C(P*z[a+32>>2])))>C(0)?m:C(-m);m=z[n+52>>2];q=C(C(z[a+52>>2]*B)+C(C(N*z[a+20>>2])+C(P*z[a+36>>2])))>C(0)?m:C(-m);Z=C(z[x+48>>2]+C(C(z[x+32>>2]*u)+C(C(z[x>>2]*s)+C(q*z[x+16>>2]))));n=v[b+4>>2];m=z[n+48>>2];aa=N>2]+C(C(z[x+36>>2]*u)+C(C(z[x+4>>2]*s)+C(q*z[x+20>>2]))));m=z[n+52>>2];ba=P>2]+C(C(z[x+40>>2]*u)+C(C(z[x+8>>2]*s)+C(q*z[x+24>>2]))));m=z[n+56>>2];ca=BC(0)){m=B;B=z[e+8>>2];u=z[e>>2];s=z[e+4>>2];q=C(C(m*B)+C(C(N*u)+C(P*s)));if(q>=C(0)){break a}m=G;G=C(m-C(T/q));if(G>m){if(G>C(1)){break a}r=z[d+8>>2];p=z[d+4>>2];i=z[d>>2];v[k+92>>2]=0;v[k+76>>2]=0;v[k+60>>2]=0;q=C(i+C(u*G));u=C(q-J);Q=C(u+z[k+80>>2]);z[k+80>>2]=Q;m=C(p+C(s*G));p=C(m-L);R=C(p+z[k+84>>2]);z[k+84>>2]=R;D=C(r+C(B*G));i=C(D-S);T=C(i+z[k+88>>2]);z[k+88>>2]=T;B=C(u+z[k+64>>2]);z[k+64>>2]=B;J=C(p+z[k+68>>2]);z[k+68>>2]=J;L=C(i+z[k+72>>2]);z[k+72>>2]=L;S=C(u+z[k+48>>2]);z[k+48>>2]=S;u=C(p+z[k+52>>2]);z[k+52>>2]=u;s=C(i+z[k+56>>2]);z[k+56>>2]=s;r=z[k+112>>2];p=z[k+116>>2];i=z[k+120>>2];v[k+188>>2]=0;z[k+184>>2]=i-s;z[k+180>>2]=p-u;z[k+176>>2]=r-S;r=z[k+128>>2];p=z[k+132>>2];i=z[k+136>>2];v[k+204>>2]=0;z[k+200>>2]=i-L;z[k+196>>2]=p-J;z[k+192>>2]=r-B;r=z[k+144>>2];p=z[k+148>>2];i=z[k+152>>2];v[k+220>>2]=0;z[k+216>>2]=i-T;z[k+212>>2]=p-R;z[k+208>>2]=r-Q;R=C(ca+D);H=C($-R);Q=C(ba+m);V=C(_-Q);X=C(aa+q);U=C(Z-X);r=o;p=E;i=y;J=q;L=m;S=D;D=C(34028234663852886e22)}}u=D;x=v[k+240>>2];n=x<<4;A=n+(k+112|0)|0;v[A+12>>2]=0;z[A+8>>2]=$;z[A+4>>2]=_;z[A>>2]=Z;A=n+(k+48|0)|0;v[A+12>>2]=0;z[A+8>>2]=R;z[A+4>>2]=Q;z[A>>2]=X;n=n+(k+176|0)|0;v[n+12>>2]=0;z[n+8>>2]=H;z[n+4>>2]=V;z[n>>2]=U;v[k+240>>2]=x+1;c:{d:{switch(x-1|0){case 0:D=z[k+184>>2];s=C(z[k+200>>2]-D);y=z[k+176>>2];q=C(z[k+192>>2]-y);E=z[k+180>>2];m=C(z[k+196>>2]-E);o=C(C(s*s)+C(C(q*q)+C(m*m)));if(o<=C(1.1920928955078125e-7)){v[k+240>>2]=1;n=v[k+180>>2];v[k+32>>2]=v[k+176>>2];v[k+36>>2]=n;n=v[k+188>>2];v[k+40>>2]=v[k+184>>2];v[k+44>>2]=n;break c}o=C(F(C(C(C(C(C(-y)*q)-C(m*E))-C(D*s))/o),C(1)));o=o>C(0)?o:C(0);z[k+40>>2]=D+C(s*o);z[k+36>>2]=E+C(m*o);z[k+32>>2]=y+C(q*o);break c;case 1:JV(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break c;case 2:N_(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break c;default:break d}}z[k+40>>2]=H;z[k+36>>2]=V;z[k+32>>2]=U}s=z[k+40>>2];y=C(-s);q=z[k+36>>2];E=C(-q);m=z[k+32>>2];o=C(-m);D=C(C(s*s)+C(C(m*m)+C(q*q)));if(ID){continue}break}O=!(u>D)}A=w[v[a+4>>2]+32|0];H=C(0);u=C(0);d=!(D>M)|O;y=d?i:y;r=d?r:o;o=d?p:E;i=C(K(C(C(y*y)+C(C(r*r)+C(o*o)))));if(!(i<=C(1.1920928955078125e-7))){i=C(C(1)/i);fa=C(y*i);H=C(o*i);u=C(r*i)}v[l+268>>2]=0;z[l+264>>2]=-fa;z[l+260>>2]=-H;z[l+256>>2]=-u;z[l+240>>2]=G;v[l+252>>2]=v[k+252>>2];d=v[k+248>>2];v[l+244>>2]=v[k+244>>2];v[l+248>>2]=d;v[k+44>>2]=0;z[k+40>>2]=O?W:s;z[k+36>>2]=O?ea:q;z[k+32>>2]=O?da:m;x=v[k+268>>2];O=v[k+264>>2];v[k+24>>2]=O;v[k+28>>2]=x;n=v[k+260>>2];d=v[k+256>>2];v[k+16>>2]=d;v[k+20>>2]=n;v[k+8>>2]=O;v[k+12>>2]=x;v[k>>2]=d;v[k+4>>2]=n;IV(k+176|0,k+112|0,k+48|0,k+32|0,k+16|0,k,v[k+240>>2]);r=z[v[a+4>>2]+16>>2];p=z[k+16>>2];o=z[k+20>>2];i=z[k+24>>2];v[l+284>>2]=0;z[l+280>>2]=i+(A?C(fa*r):C(-0));z[l+276>>2]=o+(A?C(H*r):C(-0));z[l+272>>2]=p+(A?C(u*r):C(-0));O=1}xa=k+272|0;if(O){d=v[l+244>>2];v[f>>2]=v[l+240>>2];v[f+4>>2]=d;d=v[l+252>>2];v[f+8>>2]=v[l+248>>2];v[f+12>>2]=d;if(!(!j|z[l+240>>2]!=C(0))){j=v[a+4>>2];n=v[b+4>>2];z[l+224>>2]=C(z[j+16>>2]+z[n+16>>2])*C(100);t[l+215|0]=0;v[l+168>>2]=0;v[l+172>>2]=0;v[l+160>>2]=0;v[l+164>>2]=0;v[l+152>>2]=0;v[l+156>>2]=0;v[l+144>>2]=0;v[l+148>>2]=0;v[l+136>>2]=0;v[l+140>>2]=0;v[l+128>>2]=0;v[l+132>>2]=0;v[l+192>>2]=0;d=v[a+8>>2];v[l+56>>2]=d;v[l+48>>2]=141468;v[l+52>>2]=j;j=v[d+12>>2];v[l+72>>2]=v[d+8>>2];v[l+76>>2]=j;j=v[d+20>>2];v[l+80>>2]=v[d+16>>2];v[l+84>>2]=j;j=v[d+28>>2];v[l+88>>2]=v[d+24>>2];v[l+92>>2]=j;j=v[d+36>>2];v[l+96>>2]=v[d+32>>2];v[l+100>>2]=j;j=v[d+44>>2];v[l+104>>2]=v[d+40>>2];v[l+108>>2]=j;j=v[d+52>>2];v[l+112>>2]=v[d+48>>2];v[l+116>>2]=j;j=v[d+60>>2];v[l+120>>2]=v[d+56>>2];v[l+124>>2]=j;j=v[d+4>>2];v[l+64>>2]=v[d>>2];v[l+68>>2]=j;p=z[l+68>>2];z[l+68>>2]=z[l+80>>2];o=z[l+88>>2];i=z[l+72>>2];z[l+72>>2]=z[l+96>>2];z[l+80>>2]=p;z[l+96>>2]=i;z[l+88>>2]=z[l+100>>2];z[l+100>>2]=o;v[l+40>>2]=141808;v[l+44>>2]=n;e:{f:{if(aY(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 f}v[l+16>>2]=1065353216;c=v[l+28>>2];v[l+8>>2]=v[l+24>>2];v[l+12>>2]=c;c=v[l+20>>2];v[l>>2]=v[l+16>>2];v[l+4>>2]=c;if(J_(a,b,l+220|0,l+216|0,w[l+215|0],0,l,l+128|0)-5>>>0<=1){break f}v[l+280>>2]=0;v[l+284>>2]=0;v[l+272>>2]=0;v[l+276>>2]=0;r=z[e+8>>2];p=z[e>>2];o=z[e+4>>2];v[l+268>>2]=0;i=C(C(1)/C(K(C(C(r*r)+C(C(p*p)+C(o*o))))));z[l+264>>2]=i*C(-r);z[l+260>>2]=i*C(-o);z[l+256>>2]=i*C(-p);i=C(0);break e}a=v[l+140>>2];v[l+280>>2]=v[l+136>>2];v[l+284>>2]=a;a=v[l+132>>2];v[l+272>>2]=v[l+128>>2];v[l+276>>2]=a;a=v[l+164>>2];v[l+256>>2]=v[l+160>>2];v[l+260>>2]=a;a=v[l+172>>2];v[l+264>>2]=v[l+168>>2];v[l+268>>2]=a;i=z[l+192>>2]}z[f>>2]=i>2];v[h>>2]=v[l+272>>2];v[h+4>>2]=a;a=v[l+284>>2];v[h+8>>2]=v[l+280>>2];v[h+12>>2]=a;a=v[l+260>>2];v[g>>2]=v[l+256>>2];v[g+4>>2]=a;a=v[l+268>>2];v[g+8>>2]=v[l+264>>2];v[g+12>>2]=a}xa=l+288|0;return O}function ht(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=C(0),h=0,i=0,j=C(0),k=C(0),l=0,m=0,n=C(0),o=C(0),p=0,q=C(0),r=0,s=C(0),y=0,A=0,E=C(0),F=C(0),G=0,H=0,I=0,J=0,K=0,L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0;d=xa-224|0;xa=d;v[d+200>>2]=0;v[d+204>>2]=0;v[d+208>>2]=0;v[d+212>>2]=0;v[d+192>>2]=0;v[d+196>>2]=0;u[d+188>>1]=0;v[d+176>>2]=0;v[d+180>>2]=0;v[d+216>>2]=2139095039;v[d+184>>2]=-1;h=v[c+4>>2];y=v[((v[h+4>>2]>>>22&60)+89188|0)+12>>2]+h|0;K=v[((w[y+9|0]<<2)+149664|0)+40>>2]+y|0;p=v[c>>2];L=v[37419]+(p+16|0)|0;f=w[a+42|0];c=f?2:1;y=c;c=v[a+20>>2];H=u[c+16>>1];y=v[v[a+12>>2]+60>>2]?y:(H|0)>=0?2:y;r=x[a+16>>1];a:{b:{c:{if(f){break c}f=v[a+24>>2];d:{l=v[a+32>>2];if(l){break d}A=v[c+12>>2];m=v[c+8>>2];e=v[c+4>>2];i=v[c>>2];if(!(A|(m|(e|i)))|(A&v[p+28>>2]|(m&v[p+24>>2]|(e&v[p+20>>2]|i&v[p+16>>2])))){break d}a=1;break a}if(!(H&4)|!(f|l)){break c}u[d+80>>1]=r;e:{if(f){y=Ba[v[v[f>>2]>>2]](f,c,L,K,d+80|0)|0;break e}f=v[l+8>>2];if(!f){r=x[d+80>>1]&432|r&-433;break c}v[d+8>>2]=v[c>>2];v[d+12>>2]=v[c+4>>2];v[d+16>>2]=v[c+8>>2];v[d+20>>2]=v[c+12>>2];v[d+144>>2]=v[p+16>>2];v[d+148>>2]=v[p+20>>2];v[d+152>>2]=v[p+24>>2];v[d+156>>2]=v[p+28>>2];y=Ba[f|0](d+8|0,d+144|0,v[l>>2],v[l+4>>2],d+80|0)|0}if(!y){break b}r=x[d+80>>1]&432|r&-433}e=d+144|0;sh(e,p,h);f=v[p+4>>2]&1?v[p+8>>2]- -64|0:p+84|0;J=v[a+72>>2];m=v[a+8>>2];I=v[a+4>>2];c=v[a+12>>2];h=v[c+56>>2];l=v[c+64>>2];c=v[c+60>>2];u[d+136>>1]=x[a+36>>1]|r;l=c>>>0>l>>>0?h+B(l,48)|0:d+176|0;F=z[a+28>>2];c=xa-160|0;xa=c;i=w[a+68|0]?a+44|0:0;g=z[i+20>>2];k=z[i+16>>2];h=v[m+16>>2];A=v[m+12>>2];n=z[i+8>>2];s=z[i+4>>2];o=z[i+12>>2];j=z[i>>2];dV(c+136|0,f,e,C(1));E=z[c+148>>2];q=z[c+136>>2];M=C(C(C(C(o-j)*C(.5))+C(C(E-q)*C(.5)))*C(1.0099999904632568));z[c+120>>2]=M;N=z[c+152>>2];O=z[c+140>>2];P=C(C(C(C(k-s)*C(.5))+C(C(N-O)*C(.5)))*C(1.0099999904632568));z[c+124>>2]=P;Q=z[c+156>>2];R=z[c+144>>2];S=C(C(C(C(g-n)*C(.5))+C(C(Q-R)*C(.5)))*C(1.0099999904632568));z[c+128>>2]=S;z[c+88>>2]=-S;z[c+84>>2]=-P;z[c+80>>2]=-M;z[c+40>>2]=C(C(n+g)*C(.5))-C(C(Q+R)*C(.5));z[c+36>>2]=C(C(s+k)*C(.5))-C(C(N+O)*C(.5));z[c+32>>2]=C(C(j+o)*C(.5))-C(C(E+q)*C(.5));k=z[c+32>>2];i=v[m+4>>2];g=z[i>>2];n=C(D(g));n=n>C(9.999999717180685e-10)?n:C(9.999999717180685e-10);n=C(C(1)/(g>=C(0)?n:C(-n)));g=C(C(C(z[c+80>>2]+C(-9999999747378752e-21))-k)*n);k=C(C(C(z[c+120>>2]+C(9999999747378752e-21))-k)*n);o=g>2];n=z[i+4>>2];j=C(D(n));j=j>C(9.999999717180685e-10)?j:C(9.999999717180685e-10);j=C(C(1)/(n>=C(0)?j:C(-j)));n=C(C(C(z[c+84>>2]+C(-9999999747378752e-21))-s)*j);s=C(C(C(z[c+124>>2]+C(9999999747378752e-21))-s)*j);j=n>2];o=z[i+8>>2];q=C(D(o));q=q>C(9.999999717180685e-10)?q:C(9.999999717180685e-10);q=C(C(1)/(o>=C(0)?q:C(-q)));o=C(C(C(z[c+88>>2]+C(-9999999747378752e-21))-j)*q);j=C(C(C(z[c+128>>2]+C(9999999747378752e-21))-j)*q);q=j>o?o:j;E=q>2]=E>C(0)?E:C(0);g=g>k?g:k;k=n>s?n:s;g=g>2]=g;j=g;g=z[c+116>>2];f:{if(!(j>g)&g>z[c+112>>2]){break f}G=g>C(10);g=G?C(g+C(-10)):C(0);i=v[m+4>>2];n=C(0);s=C(0);if(G){s=C(g*z[i+8>>2]);T=C(g*z[i>>2]);n=C(g*z[i+4>>2])}k=z[e+20>>2];o=z[e+24>>2];j=z[e+16>>2];z[c+80>>2]=z[e>>2];z[c+84>>2]=z[e+4>>2];z[c+88>>2]=z[e+8>>2];E=z[e+12>>2];z[c+104>>2]=o-s;z[c+100>>2]=k-n;z[c+96>>2]=j-T;z[c+92>>2]=E;k=z[c+112>>2];F=C((k>2];k=z[m+20>>2];G=0;g:{h:{switch(v[A>>2]+1|0){case 3:I=e+28|0;m=e;e=x[d+136>>1];m=v[(v[f>>2]<<2)+(e&256?I:m)>>2];u[c+16>>1]=e;if(Ba[m|0](f,c+80|0,A,h,J+100|0,i,F,l,c+16|0,k)|0){break g}break f;case 4:m=x[d+136>>1];e=v[(e+(m&256?84:56)|0)+(v[f>>2]<<2)>>2];u[c+8>>1]=m;if(Ba[e|0](f,c+80|0,A,h,J+12|0,i,F,l,c+8|0,k)|0){break g}break f;case 5:e=v[(e+(v[f>>2]<<2)|0)+112>>2];u[c>>1]=x[d+136>>1];if(Ba[e|0](f,c+80|0,A,h,i,F,l,c,k)|0){break g}break f;case 0:case 2:case 6:case 7:case 8:a9(v[37696],4,7394,306,64262,0);break f;case 1:break h;default:break f}}o=z[A+4>>2];v[c+72>>2]=0;z[c+68>>2]=o;v[c+64>>2]=2;j=z[h+16>>2];z[c+32>>2]=j;E=z[h+20>>2];z[c+36>>2]=E;q=z[h+24>>2];z[c+52>>2]=q;z[c+48>>2]=E;z[c+56>>2]=o;z[c+44>>2]=j;z[c+40>>2]=q;A=e+28|0;m=e;e=x[d+136>>1];m=v[(v[f>>2]<<2)+(e&256?A:m)>>2];u[c+24>>1]=e;if(!(Ba[m|0](f,c+80|0,c- -64|0,h,c+32|0,i,F,l,c+24|0,k)|0)){break f}}z[l+40>>2]=g+z[l+40>>2];z[l+16>>2]=T+z[l+16>>2];z[l+20>>2]=n+z[l+20>>2];z[l+24>>2]=s+z[l+24>>2];G=1}xa=c+160|0;i:{if(!G){break i}H=H&8;J=r&512;m=d+8|4;U=1;r=0;while(1){f=l+B(r,48)|0;v[f+4>>2]=L;v[f>>2]=K;if(!(J|z[f+40>>2]!=C(0))){c=v[v[a+8>>2]+4>>2];g=z[c>>2];F=z[c+4>>2];z[f+36>>2]=-z[c+8>>2];z[f+32>>2]=-F;z[f+28>>2]=-g}c=y;j:{if(w[a+42|0]){break j}e=v[a+24>>2];h=v[a+32>>2];c=y;if(!(e|h)){break j}c=y;if(!H){break j}if(e){c=Ba[v[v[e>>2]+4>>2]](e,v[a+20>>2],f)|0;break j}e=v[h+12>>2];c=y;if(!e){break j}c=v[a+20>>2];v[d+120>>2]=v[c>>2];v[d+124>>2]=v[c+4>>2];v[d+128>>2]=v[c+8>>2];v[d+132>>2]=v[c+12>>2];v[d+104>>2]=v[p+16>>2];v[d+108>>2]=v[p+20>>2];v[d+112>>2]=v[p+24>>2];v[d+116>>2]=v[p+28>>2];c=Ba[e|0](d+120|0,d+104|0,v[h>>2],v[h+4>>2],f)|0}if(!(!w[a+41|0]|!c)){c=v[f+4>>2];b=v[a+12>>2];v[b+4>>2]=v[f>>2];v[b+8>>2]=c;v[b+12>>2]=v[f+8>>2];u[b+16>>1]=x[f+12>>1];z[b+20>>2]=z[f+16>>2];z[b+24>>2]=z[f+20>>2];z[b+28>>2]=z[f+24>>2];z[b+32>>2]=z[f+28>>2];z[b+36>>2]=z[f+32>>2];z[b+40>>2]=z[f+36>>2];z[b+44>>2]=z[f+40>>2];v[b+48>>2]=v[(l+B(r,48)|0)+44>>2];t[v[a+12>>2]+52|0]=1;break i}k:{l:{switch((w[a+40|0]?1:c)-1|0){case 0:c=v[a+12>>2];e=v[c+60>>2];if(!(z[f+40>>2]<=z[a+28>>2])|(!e|!w[a+38|0])){break k}h=v[c+64>>2];m:{if((e|0)!=(h|0)){break m}e=v[a+20>>2];v[d+80>>2]=v[e>>2];v[d+84>>2]=v[e+4>>2];v[d+88>>2]=v[e+8>>2];v[d+92>>2]=v[e+12>>2];u[d+96>>1]=x[e+16>>1]|32768;u[d+24>>1]=0;v[d+20>>2]=-1;v[d+12>>2]=0;v[d+16>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+72>>2]=0;v[d+64>>2]=0;v[d+68>>2]=0;t[d+60|0]=0;v[d+52>>2]=2139095039;v[d+8>>2]=114448;n:{if(w[a+39|0]|!v[c+60>>2]){break n}c=v[a+8>>2];e=v[a+4>>2];u[d>>1]=x[a+16>>1];e=gt(e,c,d+8|0,d,0,d+80|0,v[a+24>>2],v[a+32>>2]);c=v[a+12>>2];if(!e){break n}e=v[m+4>>2];v[c+4>>2]=v[m>>2];v[c+8>>2]=e;v[c+12>>2]=v[m+8>>2];u[c+16>>1]=x[d+24>>1];z[c+20>>2]=z[d+28>>2];z[c+24>>2]=z[d+32>>2];z[c+28>>2]=z[d+36>>2];z[c+32>>2]=z[d+40>>2];z[c+36>>2]=z[d+44>>2];z[c+40>>2]=z[d+48>>2];z[c+44>>2]=z[d+52>>2];v[c+48>>2]=v[d+56>>2];c=v[a+12>>2];t[c+52|0]=1;h=0;g=z[d+52>>2];i=v[c+64>>2];o:{if(!i){i=0;break o}A=v[c+56>>2];while(1){c=A+B(h,48)|0;p:{if(z[c+40>>2]>g){i=i-1|0;e=A+B(i,48)|0;I=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=I;v[c+8>>2]=v[e+8>>2];u[c+12>>1]=x[e+12>>1];z[c+16>>2]=z[e+16>>2];z[c+20>>2]=z[e+20>>2];z[c+24>>2]=z[e+24>>2];z[c+28>>2]=z[e+28>>2];z[c+32>>2]=z[e+32>>2];z[c+36>>2]=z[e+36>>2];z[c+40>>2]=z[e+40>>2];v[c+44>>2]=v[e+44>>2];break p}h=h+1|0}if((h|0)!=(i|0)){continue}break}c=v[a+12>>2];g=z[d+52>>2]}v[c+64>>2]=i;z[a+28>>2]=g;z[b>>2]=g}t[a+39|0]=1;h=v[c+64>>2];if((h|0)!=v[c+60>>2]){break m}c=Ba[v[v[c>>2]>>2]](c,v[c+56>>2],h)|0;t[a+38|0]=c;if(!c){break i}h=0;c=v[a+12>>2];v[c+64>>2]=0}v[c+64>>2]=h+1;c=v[c+56>>2]+B(h,48)|0;v[c+8>>2]=v[f+8>>2];e=v[f+4>>2];v[c>>2]=v[f>>2];v[c+4>>2]=e;u[c+12>>1]=x[f+12>>1];z[c+16>>2]=z[f+16>>2];z[c+20>>2]=z[f+20>>2];z[c+24>>2]=z[f+24>>2];z[c+28>>2]=z[f+28>>2];z[c+32>>2]=z[f+32>>2];z[c+36>>2]=z[f+36>>2];z[c+40>>2]=z[f+40>>2];v[c+44>>2]=v[f+44>>2];break k;case 1:break l;default:break k}}g=z[f+40>>2];if(!(g<=z[a+28>>2])){break k}z[a+28>>2]=g;z[b>>2]=g;e=v[f+4>>2];c=v[a+12>>2];v[c+4>>2]=v[f>>2];v[c+8>>2]=e;v[c+12>>2]=v[f+8>>2];u[c+16>>1]=x[f+12>>1];z[c+20>>2]=z[f+16>>2];z[c+24>>2]=z[f+20>>2];z[c+28>>2]=z[f+24>>2];z[c+32>>2]=z[f+28>>2];z[c+36>>2]=z[f+32>>2];z[c+40>>2]=z[f+36>>2];z[c+44>>2]=z[f+40>>2];v[c+48>>2]=v[f+44>>2];t[v[a+12>>2]+52|0]=1}r=r+1|0;U=G>>>0>r>>>0;if((r|0)!=(G|0)){continue}break}}a=!U;break a}a=1}xa=d+224|0;return a&1}function JM(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,u=0,x=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0,I=C(0),J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;d=v[a+20>>2];y=v[a+36>>2];j=xa-80|0;xa=j;r=v[a+32>>2];O=v[r+408>>2];c=v[a+28>>2];s=vr(v[c+620>>2],32);b=v[c+632>>2];o=v[c+636>>2];v[s+24>>2]=0;v[s+16>>2]=0;v[s+8>>2]=b;v[s+12>>2]=o;v[s+28>>2]=0;v[s>>2]=132716;v[s+20>>2]=d;v[s+24>>2]=1;if(d){Ba[v[v[d>>2]+16>>2]](d);v[s+16>>2]=v[v[s+20>>2]+16>>2]}Ba[v[v[y>>2]+16>>2]](y);v[s+28>>2]=y;J=v[r+412>>2];if(J){P=v[c+108>>2];Q=v[c+104>>2];R=c+576|0;y=0;while(1){v[j+24>>2]=0;v[j+72>>2]=0;v[j+20>>2]=v[c+460>>2]+(S<<2);d=K<<2;v[j+16>>2]=d+v[c+448>>2];v[j+28>>2]=v[c+552>>2]+(T<<4);o=N<<5;v[j+48>>2]=o+v[c+376>>2];v[j+52>>2]=o+v[c+388>>2];v[j+60>>2]=v[c+412>>2]+(N<<3);v[j+56>>2]=o+v[c+400>>2];v[j+64>>2]=v[c+424>>2]+(K<<5);o=v[c+436>>2];b=y;v[j+32>>2]=(b<<2)+O;v[j+68>>2]=d+o;l=v[c+528>>2];v[j+40>>2]=l;v[j+44>>2]=d+v[c+540>>2];D=0;F=0;u=0;G=0;o=0;a:{if(!Q){break a}o=0;if(b>>>0>=J>>>0){break a}o=0;if(!P){break a}d=v[r+256>>2];o=b;while(1){b:{y=o+1|0;o=d+B(v[(o<<2)+O>>2],44)|0;G=v[o+36>>2]+G|0;u=v[o+40>>2]+u|0;D=v[o+12>>2]+D|0;F=v[o+8>>2]+F|0;if(Q>>>0<=F>>>0|y>>>0>=J>>>0){break b}o=y;if(D>>>0

>>0){continue}}break}o=u+G|0}v[j+36>>2]=y-b;v[j+12>>2]=u;v[j+4>>2]=v[j+4>>2]&-2147483648|D&2147483647;v[j>>2]=F;v[j+8>>2]=G;L=v[c+564>>2]+K|0;b=v[c+368>>2];x=v[b>>2];if(x){v[b>>2]=v[x>>2]}if(!x){d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?26947:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,12195,b,19395,82)|0;d=b+19&-16;v[d-4>>2]=d-b;x=gB(d,v[c+372>>2])}h=vr(v[c+620>>2],124);v[h>>2]=x;b=v[j+4>>2];v[h+4>>2]=v[j>>2];v[h+8>>2]=b;b=v[j+12>>2];v[h+12>>2]=v[j+8>>2];v[h+16>>2]=b;b=v[j+20>>2];v[h+20>>2]=v[j+16>>2];v[h+24>>2]=b;b=v[j+28>>2];v[h+28>>2]=v[j+24>>2];v[h+32>>2]=b;b=v[j+36>>2];v[h+36>>2]=v[j+32>>2];v[h+40>>2]=b;b=v[j+44>>2];v[h+44>>2]=v[j+40>>2];v[h+48>>2]=b;b=v[j+52>>2];v[h+52>>2]=v[j+48>>2];v[h+56>>2]=b;b=v[j+60>>2];v[h+60>>2]=v[j+56>>2];v[h+64>>2]=b;b=v[j+68>>2];v[h+68>>2]=v[j+64>>2];v[h+72>>2]=b;v[h+80>>2]=0;v[h+84>>2]=0;v[h+76>>2]=L;u=0;m=0;A=0;g=v[h>>2];v[g+12092>>2]=0;v[g+12112>>2]=0;v[g+12116>>2]=0;v[g+11968>>2]=0;v[g+11956>>2]=0;v[g+11868>>2]=0;v[g+11872>>2]=0;v[g+12132>>2]=v[g+11952>>2];v[g+12140>>2]=v[g+11976>>2];b=g+11876|0;v[b>>2]=0;v[b+4>>2]=0;b=g+11884|0;v[b>>2]=0;v[b+4>>2]=0;M=h+20|0;i=M;v[g+11940>>2]=v[i+48>>2];v[g+11928>>2]=v[i+52>>2];v[g+11932>>2]=v[i>>2];v[g+11936>>2]=v[i+4>>2];v[g+11944>>2]=v[i+24>>2];v[g+11948>>2]=v[i+28>>2];hB(g,0,v[h+8>>2]&2147483647);E=v[i+20>>2];c:{if(!E){break c}n=v[i+16>>2];q=v[g+11948>>2];H=v[g+11944>>2];p=v[g+11936>>2];d=v[g+11932>>2];b=v[g+11928>>2];while(1){f=v[v[r+256>>2]+B(v[n+(A<<2)>>2],44)>>2];if(f>>>0<=4294967167){while(1){f=f>>>7|0;k=v[r+184>>2]+B(f,24)|0;e=v[k+20>>2];d:{if(w[k+5|0]==1){v[p+(m<<2)>>2]=e;m=m+1|0;break d}g=u<<2;v[g+d>>2]=e;v[b+g>>2]=v[e+36>>2];v[g+q>>2]=f;v[H+(v[v[r+196>>2]+(f<<2)>>2]<<2)>>2]=u;u=u+1|0}f=v[k+8>>2];if(f>>>0<4294967168){continue}break}}A=A+1|0;if((E|0)!=(A|0)){continue}break}if(!E){u=0;break c}k=v[i+12>>2];u=0;A=0;while(1){f=v[(v[r+256>>2]+B(v[n+(A<<2)>>2],44)|0)+20>>2];if((f|0)!=-1){while(1){b=v[r+228>>2];d=(f>>>0)/(b>>>0)|0;g=f-B(b,d)|0;q=v[v[r+208>>2]+(d<<2)>>2];d=v[r+148>>2];b=(f>>>0)/(d>>>0)|0;p=v[v[v[r+128>>2]+(b<<2)>>2]+(f-B(b,d)<<2)>>2];e:{if(!p){break e}b=v[r+616>>2];e=v[b>>2];f=f<<1;d=f|1;i=v[b+20>>2];b=(d>>>0)/(i>>>0)|0;m=v[v[e+(b<<2)>>2]+(d-B(b,i)<<2)>>2];b=(f>>>0)/(i>>>0)|0;f=v[v[e+(b<<2)>>2]+(f-B(b,i)<<2)>>2];e=k+(u<<4)|0;v[e+12>>2]=p;d=f>>>7|0;b=v[r+184>>2]+B(d,24)|0;f:{if(w[b+5|0]==1){b=v[b+20>>2];Ba[v[v[b>>2]+188>>2]](b,f>>>1&63,e,e+8|0);break f}if(w[b+4|0]&4){t[e+8|0]=1;v[e>>2]=v[v[r+196>>2]+(d<<2)>>2];break f}t[e+8|0]=0;v[e>>2]=v[H+(v[v[r+196>>2]+(d<<2)>>2]<<2)>>2]}u=u+1|0;if(m>>>0>=4294967168){t[e+9|0]=3;break e}d=m>>>7|0;b=v[r+184>>2]+B(d,24)|0;if(w[b+5|0]==1){b=v[b+20>>2];Ba[v[v[b>>2]+188>>2]](b,m>>>1&63,e+4|0,e+9|0);break e}if(w[b+4|0]&4){t[e+9|0]=1;v[e+4>>2]=v[v[r+196>>2]+(d<<2)>>2];break e}t[e+9|0]=0;v[e+4>>2]=v[H+(v[v[r+196>>2]+(d<<2)>>2]<<2)>>2]}f=v[(q+(g<<4)|0)+8>>2];if((f|0)!=-1){continue}break}}A=A+1|0;if((E|0)!=(A|0)){continue}break}}v[h+12>>2]=u;p=vr(v[c+620>>2],56);d=v[c+632>>2];b=v[c+636>>2];v[p+24>>2]=0;v[p+16>>2]=0;v[p+20>>2]=0;v[p+8>>2]=d;v[p+12>>2]=b;v[p+52>>2]=c;v[p+48>>2]=R;v[p+44>>2]=L;v[p+40>>2]=l;v[p+36>>2]=r;v[p+32>>2]=M;v[p+28>>2]=h;v[p>>2]=132940;d=vr(v[c+620>>2],80);E=v[h+72>>2];H=v[h+20>>2];i=v[h+4>>2];m=v[c+472>>2];n=v[c+484>>2];e=v[c+496>>2];g=v[x+11948>>2];I=z[c+52>>2];q=v[c+632>>2];b=v[c+636>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=q;v[d+12>>2]=b;v[d+72>>2]=c;f=h+84|0;v[d+68>>2]=f;l=h+80|0;v[d+64>>2]=l;z[d+60>>2]=I;k=c+68|0;v[d+56>>2]=k;v[d+52>>2]=i;v[d+48>>2]=g;v[d+32>>2]=H;v[d+28>>2]=E;v[d>>2]=132996;v[d+44>>2]=e+B(L,48);e=L<<6;v[d+40>>2]=e+n;v[d+36>>2]=e+m;b=vr(v[c+620>>2],56);I=z[c+52>>2];g=v[c+632>>2];q=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=g;v[b+12>>2]=q;v[b+48>>2]=c;v[b+44>>2]=f;v[b+40>>2]=l;z[b+36>>2]=I;v[b+32>>2]=k;v[b+28>>2]=h;v[b>>2]=133108;i=vr(v[c+620>>2],40);g=v[c+632>>2];q=v[c+636>>2];v[i+24>>2]=0;v[i+16>>2]=0;v[i+20>>2]=0;v[i+8>>2]=g;v[i+12>>2]=q;v[i+36>>2]=0;v[i+32>>2]=c;v[i+28>>2]=h;v[i>>2]=133164;m=vr(v[c+620>>2],48);f=v[h+52>>2];l=v[c+52>>2];k=v[c+56>>2];g=v[c+632>>2];q=v[c+636>>2];v[m+24>>2]=0;v[m+16>>2]=0;v[m+20>>2]=0;v[m+8>>2]=g;v[m+12>>2]=q;v[m>>2]=133220;v[m+28>>2]=h;v[m+44>>2]=c;v[m+40>>2]=f;v[m+32>>2]=l;v[m+36>>2]=k;n=vr(v[c+620>>2],48);l=v[h+52>>2];k=v[c+472>>2];g=v[c+632>>2];q=v[c+636>>2];v[n+24>>2]=0;v[n+16>>2]=0;v[n+20>>2]=0;v[n+8>>2]=g;v[n+12>>2]=q;v[n+44>>2]=c;v[n+40>>2]=x;v[n+32>>2]=l;v[n+28>>2]=h;v[n>>2]=133276;v[n+36>>2]=(e+k|0)- -64;e=vr(v[c+620>>2],56);k=v[h+56>>2];I=z[c+52>>2];g=v[c+632>>2];q=v[c+636>>2];v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=g;v[e+12>>2]=q;v[e+48>>2]=c;z[e+44>>2]=I;v[e+40>>2]=x;v[e+36>>2]=R;v[e+32>>2]=k;v[e+28>>2]=h;v[e>>2]=133332;f=vr(v[c+620>>2],48);g=v[c+632>>2];q=v[c+636>>2];v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=g;v[f+12>>2]=q;v[f+44>>2]=c;v[f+40>>2]=x;k=h+4|0;v[f+36>>2]=k;v[f+32>>2]=M;v[f+28>>2]=h;v[f>>2]=133500;l=vr(v[c+620>>2],48);g=v[c+632>>2];q=v[c+636>>2];v[l+24>>2]=0;v[l+16>>2]=0;v[l+20>>2]=0;v[l+8>>2]=g;v[l+12>>2]=q;v[l+44>>2]=c;v[l+40>>2]=r;v[l+36>>2]=k;v[l+32>>2]=M;v[l+28>>2]=x;v[l>>2]=133612;k=vr(v[c+620>>2],40);g=v[c+632>>2];q=v[c+636>>2];v[k+24>>2]=0;v[k+16>>2]=0;v[k+8>>2]=g;v[k+12>>2]=q;v[k+32>>2]=c;v[k+28>>2]=x;v[k>>2]=133668;v[k+20>>2]=s;v[k+24>>2]=1;if(s){Ba[v[v[s>>2]+16>>2]](s);v[k+16>>2]=v[v[k+20>>2]+16>>2]}v[l+20>>2]=k;v[l+24>>2]=1;Ba[v[v[k>>2]+16>>2]](k);v[l+16>>2]=v[v[l+20>>2]+16>>2];v[f+20>>2]=l;v[f+24>>2]=1;Ba[v[v[l>>2]+16>>2]](l);v[f+16>>2]=v[v[f+20>>2]+16>>2];v[e+20>>2]=f;v[e+24>>2]=1;Ba[v[v[f>>2]+16>>2]](f);v[e+16>>2]=v[v[e+20>>2]+16>>2];v[n+20>>2]=e;v[n+24>>2]=1;Ba[v[v[e>>2]+16>>2]](e);v[n+16>>2]=v[v[n+20>>2]+16>>2];v[m+20>>2]=n;v[m+24>>2]=1;Ba[v[v[n>>2]+16>>2]](n);v[m+16>>2]=v[v[m+20>>2]+16>>2];v[i+20>>2]=m;v[i+24>>2]=1;Ba[v[v[m>>2]+16>>2]](m);q=v[v[i+20>>2]+16>>2];v[i+36>>2]=e;v[i+16>>2]=q;Ba[v[v[e>>2]+16>>2]](e);v[b+20>>2]=i;v[b+24>>2]=1;Ba[v[v[i>>2]+16>>2]](i);v[b+16>>2]=v[v[b+20>>2]+16>>2];v[d+20>>2]=i;v[d+24>>2]=1;Ba[v[v[i>>2]+16>>2]](i);v[d+16>>2]=v[v[d+20>>2]+16>>2];v[p+20>>2]=i;v[p+24>>2]=1;Ba[v[v[i>>2]+16>>2]](i);v[p+16>>2]=v[v[p+20>>2]+16>>2];Ba[v[v[k>>2]+20>>2]](k);Ba[v[v[l>>2]+20>>2]](l);Ba[v[v[f>>2]+20>>2]](f);Ba[v[v[e>>2]+20>>2]](e);Ba[v[v[n>>2]+20>>2]](n);Ba[v[v[m>>2]+20>>2]](m);Ba[v[v[i>>2]+20>>2]](i);Ba[v[v[b>>2]+20>>2]](b);Ba[v[v[d>>2]+20>>2]](d);Ba[v[v[p>>2]+20>>2]](p);N=(o+N|0)+(D<<6)|0;S=D+S|0;T=G+T|0;K=K+F|0;if(y>>>0>>0){continue}break}}Ba[v[v[s>>2]+20>>2]](s);xa=j+80|0;a=v[a+36>>2];Ba[v[v[a>>2]+20>>2]](a)}function aY(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=0,A=0,B=C(0),D=0,E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0);j=xa-320|0;xa=j;x=v[b+4>>2];k=z[x+20>>2];A=v[a+4>>2];l=z[A+20>>2];J=z[d>>2];Y=w[A+32|0];O=z[A+16>>2];Z=w[x+32|0];P=z[x+16>>2];v[j+44>>2]=0;W=C((k>2];d=0;c=0;while(1){o=d<<2;D=w[d+f|0];v[o+(j- -64|0)>>2]=D;y=w[d+g|0];v[o+(j+48|0)>>2]=y;o=(D<<4)+101152|0;_=v[o+8>>2];$=v[o>>2];aa=v[o+4>>2];o=(y<<4)+101152|0;ba=v[o>>2];ca=v[o+4>>2];S=v[o+8>>2];s=z[p+48>>2];u=z[p+32>>2];E=z[p>>2];G=z[p+16>>2];H=z[p+52>>2];B=z[p+36>>2];M=z[p+4>>2];T=z[p+20>>2];I=z[p+56>>2];U=z[p+40>>2];k=z[A+56>>2];V=z[p+8>>2];l=z[A+48>>2];N=z[p+24>>2];m=z[A+52>>2];q=z[x+48>>2];n=z[x+52>>2];r=z[x+56>>2];y=c<<4;o=y+(j+144|0)|0;v[o+12>>2]=0;D=y+(j+80|0)|0;v[D+12>>2]=0;y=y+(j+208|0)|0;v[y+12>>2]=0;r=S?r:C(-r);z[D+8>>2]=r;n=ca?n:C(-n);z[D+4>>2]=n;q=ba?q:C(-q);z[D>>2]=q;k=_?k:C(-k);l=$?l:C(-l);m=aa?m:C(-m);I=C(I+C(C(U*k)+C(C(V*l)+C(N*m))));z[o+8>>2]=I;H=C(H+C(C(B*k)+C(C(M*l)+C(m*T))));z[o+4>>2]=H;k=C(s+C(C(u*k)+C(C(E*l)+C(m*G))));z[o>>2]=k;l=C(I-r);z[y+8>>2]=l;m=C(H-n);z[y+4>>2]=m;k=C(k-q);z[y>>2]=k;o=c;c=c+1|0;d=d+1|0;if((X|0)!=(d|0)){continue}break}v[j+44>>2]=c;g:{h:{switch(o-1|0){case 0:q=z[j+216>>2];k=C(z[j+232>>2]-q);n=z[j+208>>2];l=C(z[j+224>>2]-n);r=z[j+212>>2];m=C(z[j+228>>2]-r);s=C(C(k*k)+C(C(l*l)+C(m*m)));if(!(s<=C(1.1920928955078125e-7))){break g}v[j+44>>2]=1;c=v[j+212>>2];v[j+16>>2]=v[j+208>>2];v[j+20>>2]=c;c=v[j+220>>2];v[j+24>>2]=v[j+216>>2];v[j+28>>2]=c;break e;case 1:iY(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}}P_(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break e}v[j+28>>2]=0;L=k;k=C(F(C(C(C(C(C(-n)*l)-C(m*r))-C(q*k))/s),C(1)));k=k>C(0)?k:C(0);z[j+24>>2]=q+C(L*k);z[j+20>>2]=r+C(m*k);z[j+16>>2]=n+C(l*k);break e}k=z[c+8>>2];m=z[c>>2];l=z[c+4>>2];v[j+284>>2]=0;c=C(C(k*k)+C(C(m*m)+C(l*l)))>C(0);k=c?k:C(0);z[j+280>>2]=k;l=c?l:C(0);z[j+276>>2]=l;m=c?m:C(1);z[j+272>>2]=m;q=C(C(1)/C(K(C(C(k*k)+C(C(m*m)+C(l*l))))));s=C(k*q);u=C(m*q);n=C(34028234663852886e22);L=C(l*q);break d}v[j+28>>2]=0;z[j+24>>2]=l;z[j+20>>2]=m;z[j+16>>2]=k}c=v[j+20>>2];v[j+272>>2]=v[j+16>>2];v[j+276>>2]=c;c=v[j+28>>2];v[j+280>>2]=v[j+24>>2];v[j+284>>2]=c;k=z[j+280>>2];m=z[j+272>>2];l=z[j+276>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));if(!(W>2]=v[j+312>>2];c=v[j+308>>2];v[j+288>>2]=v[j+304>>2];v[j+292>>2]=c;o=v[a+4>>2];c=v[a+8>>2];d=v[j+44>>2];p=d<<2;n=C(-m);x=C(C(C(z[a+20>>2]*n)-C(z[a+36>>2]*l))-C(z[a+52>>2]*k))>C(0);A=C(C(C(z[a+16>>2]*n)-C(z[a+32>>2]*l))-C(z[a+48>>2]*k))>C(0);D=C(C(C(z[a+24>>2]*n)-C(z[a+40>>2]*l))-C(z[a+56>>2]*k))>C(0);v[p+(j- -64|0)>>2]=x<<1|A|D<<2;I=z[c+52>>2];U=z[c+36>>2];V=z[c+20>>2];N=z[c+56>>2];Q=z[c+40>>2];n=z[o+56>>2];R=z[c+24>>2];B=z[o+52>>2];da=z[c+48>>2];ea=z[c+32>>2];fa=z[c>>2];ga=z[c+16>>2];ha=z[c+4>>2];L=z[c+8>>2];M=z[o+48>>2];c=v[b+4>>2];ia=z[j+284>>2];S=p+(j+48|0)|0;O=m;p=m>C(0);J=l;o=l>C(0);P=k;y=k>C(0);v[S>>2]=p|o<<1|y<<2;k=D?n:C(-n);l=A?M:C(-M);m=x?B:C(-B);M=C(N+C(C(Q*k)+C(C(L*l)+C(R*m))));n=z[c+56>>2];N=y?n:C(-n);n=C(M-N);Q=C(da+C(C(ea*k)+C(C(fa*l)+C(m*ga))));B=z[c+48>>2];R=p?B:C(-B);B=C(Q-R);l=C(I+C(C(U*k)+C(C(ha*l)+C(m*V))));k=z[c+52>>2];m=o?k:C(-k);k=C(l-m);I=C(C(s*n)+C(C(u*B)+C(r*k)));if(I>T){b=0;if(!f){break a}t[h|0]=d;if(!d){break a}c=0;if((d|0)!=1){i=d&-2;a=0;while(1){e=c<<2;o=j- -64|0;t[c+f|0]=v[e+o>>2];p=j+48|0;t[c+g|0]=v[p+e>>2];e=c|1;h=e<<2;t[e+f|0]=v[h+o>>2];t[e+g|0]=v[h+p>>2];c=c+2|0;a=a+2|0;if((i|0)!=(a|0)){continue}break}}if(!(d&1)){break a}a=c<<2;t[c+f|0]=v[a+(j- -64|0)>>2];t[c+g|0]=v[a+(j+48|0)>>2];break a}if(I>C(q*C(.9997749924659729))){i:{if(!f){break i}t[h|0]=d;if(!d){break i}c=0;if((d|0)!=1){o=d&-2;a=0;while(1){b=c<<2;p=j- -64|0;t[c+f|0]=v[b+p>>2];x=j+48|0;t[c+g|0]=v[x+b>>2];b=c|1;h=b<<2;t[b+f|0]=v[h+p>>2];t[b+g|0]=v[h+x>>2];c=c+2|0;a=a+2|0;if((o|0)!=(a|0)){continue}break}}if(!(d&1)){break i}a=c<<2;t[c+f|0]=v[a+(j- -64|0)>>2];t[c+g|0]=v[a+(j+48|0)>>2]}z[i+32>>2]=u;v[i+44>>2]=0;z[i+40>>2]=s;z[i+36>>2]=r;IV(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,d);j:{if(e){a=v[j+20>>2];v[i>>2]=v[j+16>>2];v[i+4>>2]=a;a=v[j+28>>2];v[i+8>>2]=v[j+24>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;a=v[j+308>>2];v[i+68>>2]=v[j+304>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+312>>2];break j}k=z[j+16>>2];l=z[j+20>>2];m=z[j+24>>2];v[i+12>>2]=0;z[i+8>>2]=m-C(E*s);z[i+4>>2]=l-C(E*r);z[i>>2]=k-C(E*u);k=z[j>>2];l=z[j+4>>2];m=z[j+8>>2];v[i+28>>2]=0;z[i+24>>2]=m+C(G*s);z[i+20>>2]=l+C(G*r);z[i+16>>2]=k+C(G*u);q=C(q-H)}z[i+64>>2]=q;b=2;break a}o=d<<4;c=o+(j+144|0)|0;v[c+12>>2]=0;z[c+8>>2]=M;z[c+4>>2]=l;z[c>>2]=Q;c=o+(j+80|0)|0;v[c+12>>2]=0;z[c+8>>2]=N;z[c+4>>2]=m;z[c>>2]=R;c=o+(j+208|0)|0;v[c+12>>2]=0;z[c+8>>2]=n;z[c+4>>2]=k;z[c>>2]=B;v[j+44>>2]=d+1;k:{l:{switch(d-1|0){case 0:n=z[j+216>>2];k=C(z[j+232>>2]-n);r=z[j+208>>2];l=C(z[j+224>>2]-r);s=z[j+212>>2];m=C(z[j+228>>2]-s);u=C(C(k*k)+C(C(l*l)+C(m*m)));if(u<=C(1.1920928955078125e-7)){v[j+44>>2]=1;c=v[j+212>>2];v[j+16>>2]=v[j+208>>2];v[j+20>>2]=c;c=v[j+220>>2];v[j+24>>2]=v[j+216>>2];v[j+28>>2]=c;break k}v[j+28>>2]=0;L=k;k=C(F(C(C(C(C(C(-r)*l)-C(m*s))-C(n*k))/u),C(1)));k=k>C(0)?k:C(0);z[j+24>>2]=n+C(L*k);z[j+20>>2]=s+C(m*k);z[j+16>>2]=r+C(l*k);break k;case 1:iY(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:P_(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}}v[j+28>>2]=0;z[j+24>>2]=n;z[j+20>>2]=k;z[j+16>>2]=B}c=v[j+20>>2];v[j+272>>2]=v[j+16>>2];v[j+276>>2]=c;c=v[j+28>>2];v[j+280>>2]=v[j+24>>2];v[j+284>>2]=c;k=z[j+280>>2];m=z[j+272>>2];l=z[j+276>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));u=C(C(1)/n);s=C(k*u);r=C(l*u);u=C(m*u);if(nW){continue}break}d=v[j+44>>2];if(!(n>2];A=j+48|0;t[c+g|0]=v[A+h>>2];h=c|1;o=h<<2;t[f+h|0]=v[o+x>>2];t[g+h|0]=v[o+A>>2];c=c+2|0;b=b+2|0;if((p|0)!=(b|0)){continue}break}}if(!(a&1)){break m}a=c<<2;t[c+f|0]=v[a+(j- -64|0)>>2];t[c+g|0]=v[a+(j+48|0)>>2]}v[j+312>>2]=v[j+296>>2];a=v[j+292>>2];v[j+304>>2]=v[j+288>>2];v[j+308>>2]=a;z[j+284>>2]=ia;z[j+272>>2]=O;z[j+276>>2]=J;z[j+280>>2]=P;IV(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,d);v[i+60>>2]=0;z[i+56>>2]=s;z[i+52>>2]=r;z[i+48>>2]=u;v[i+44>>2]=0;k=C(C(1)/q);l=C(P*k);z[i+40>>2]=l;m=C(J*k);z[i+36>>2]=m;k=C(O*k);z[i+32>>2]=k;if(e){a=v[j+20>>2];v[i>>2]=v[j+16>>2];v[i+4>>2]=a;a=v[j+28>>2];v[i+8>>2]=v[j+24>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;z[i+64>>2]=q;a=v[j+292>>2];v[i+68>>2]=v[j+288>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+296>>2];b=4;break a}n=z[j+16>>2];r=z[j+20>>2];J=z[j+24>>2];v[i+12>>2]=0;z[i+8>>2]=J-C(E*l);z[i+4>>2]=r-C(E*m);z[i>>2]=n-C(E*k);n=z[j>>2];r=z[j+4>>2];J=z[j+8>>2];z[i+64>>2]=q-H;v[i+28>>2]=0;z[i+24>>2]=J+C(G*l);z[i+20>>2]=r+C(G*m);z[i+16>>2]=n+C(G*k);b=2;if(q<=H){break a}b=4;break a}if(f){break b}b=5;break a}d=v[j+44>>2]}t[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;o=j- -64|0;t[c+f|0]=v[e+o>>2];p=j+48|0;t[c+g|0]=v[p+e>>2];e=c|1;h=e<<2;t[e+f|0]=v[h+o>>2];t[e+g|0]=v[h+p>>2];c=c+2|0;a=a+2|0;if((i|0)!=(a|0)){continue}break}}if(!(d&1)){break a}a=c<<2;t[c+f|0]=v[a+(j- -64|0)>>2];t[c+g|0]=v[a+(j+48|0)>>2]}xa=j+320|0;return b}function wx(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=0,u=0,y=0,A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=0,la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0);j=xa-224|0;xa=j;A=z[b+24>>2];D=z[b+20>>2];p=z[b+8>>2];m=z[b+4>>2];o=z[b>>2];n=z[b+16>>2];v[j+152>>2]=0;v[j+156>>2]=0;v[j+144>>2]=0;v[j+148>>2]=0;v[j+136>>2]=0;v[j+140>>2]=0;v[j+128>>2]=0;v[j+132>>2]=0;v[j+120>>2]=0;v[j+124>>2]=0;v[j+112>>2]=0;v[j+116>>2]=0;v[j+104>>2]=0;v[j+108>>2]=0;v[j+96>>2]=0;v[j+100>>2]=0;a:{if(g){b:{if(x[a+8>>1]!=65535){v[j+220>>2]=0;z[j+216>>2]=A;z[j+212>>2]=D;z[j+208>>2]=n;v[j+188>>2]=0;z[j+184>>2]=p;z[j+180>>2]=m;z[j+176>>2]=o;m=z[e+24>>2];q=v[e+16>>2];g=v[e+20>>2];v[j+92>>2]=0;z[j+88>>2]=m;v[j+80>>2]=q;v[j+84>>2]=g;q=v[e>>2];g=v[e+4>>2];m=z[e+8>>2];v[j+76>>2]=0;z[j+72>>2]=m;v[j+64>>2]=q;v[j+68>>2]=g;F=z[f+12>>2];G=z[f+8>>2];I=z[f+4>>2];m=z[f>>2];v[j>>2]=0;v[j+4>>2]=0;z[j+16>>2]=m;v[j+8>>2]=0;v[j+12>>2]=1065353216;f=j+160|0;g=j+48|0;q=j+192|0;e=j+32|0;break b}v[j+204>>2]=0;z[j+200>>2]=A;z[j+196>>2]=D;z[j+192>>2]=n;v[j+172>>2]=0;z[j+168>>2]=p;z[j+164>>2]=m;z[j+160>>2]=o;m=z[e+24>>2];q=v[e+16>>2];g=v[e+20>>2];v[j+60>>2]=0;z[j+56>>2]=m;v[j+48>>2]=q;v[j+52>>2]=g;q=v[e>>2];g=v[e+4>>2];m=z[e+8>>2];v[j+44>>2]=0;z[j+40>>2]=m;v[j+32>>2]=q;v[j+36>>2]=g;ja=v[f+8>>2];q=v[f+12>>2];g=v[f+4>>2];e=v[f>>2];v[j+16>>2]=0;v[j>>2]=e;v[j+4>>2]=g;v[j+8>>2]=ja;v[j+12>>2]=q;F=C(1);f=j+176|0;g=j+80|0;q=j+208|0;e=j- -64|0}v[e>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[g>>2]=0;v[g+4>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[q>>2]=0;v[q+4>>2]=0;v[q+8>>2]=0;v[q+12>>2]=0;z[j+28>>2]=F;z[j+24>>2]=G;z[j+20>>2]=I;if(w[v[a+24>>2]]==3){tB(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}pB(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(x[a+8>>1]!=65535){v[j+220>>2]=0;z[j+216>>2]=A;z[j+212>>2]=D;z[j+208>>2]=n;z[j+176>>2]=o;f=j+192|0;g=j+160|0;e=j+176|0;break c}v[j+204>>2]=0;z[j+200>>2]=A;z[j+196>>2]=D;z[j+192>>2]=n;z[j+160>>2]=o;f=j+208|0;g=j+176|0;e=j+160|0}v[e+12>>2]=0;z[e+8>>2]=p;z[e+4>>2]=m;v[g>>2]=0;v[g+4>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;if(w[v[a+24>>2]]==3){u=j+208|0;r=j+192|0;s=j+176|0;t=j+160|0;k=xa-96|0;xa=k;f=x[a+22>>1];if(f){e=v[a+24>>2];ja=e+(f<<4)|0;while(1){ka=w[e+3|0];H=w[e+2|0];v[k+88>>2]=0;v[k+92>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;v[k+56>>2]=0;v[k+60>>2]=0;v[k+48>>2]=0;v[k+52>>2]=0;v[k+40>>2]=0;v[k+44>>2]=0;v[k+32>>2]=0;v[k+36>>2]=0;h=z[e+40>>2];g=v[e+32>>2];f=v[e+36>>2];v[k+28>>2]=0;z[k+24>>2]=h;v[k+16>>2]=g;v[k+20>>2]=f;O=z[e+44>>2];f=e- -64|0;g=f;y=k- -64|0;q=f+B(H,112)|0;E=0;i=C(0);v[k>>2]=0;if(H){while(1){l=g+B(E,112)|0;la=z[l+48>>2];J=z[l+52>>2];K=z[l+56>>2];f=q+(E<<2)|0;P=z[f>>2];L=z[l+36>>2];M=z[l+32>>2];Q=z[l+24>>2];R=z[l+8>>2];S=z[l+20>>2];T=z[l+4>>2];U=z[l>>2];V=z[l+16>>2];N=z[t+8>>2];W=z[r+8>>2];A=z[s+8>>2];X=z[k+24>>2];Y=z[u+8>>2];D=z[t+4>>2];o=z[r+4>>2];n=z[s+4>>2];Z=z[k+20>>2];_=z[u+4>>2];p=z[s>>2];$=z[u>>2];m=z[t>>2];h=z[r>>2];aa=z[k+16>>2];v[u+12>>2]=0;m=C(L-C(M*C(C(C(C(C($*aa)+C(U*p))-C(C(aa*h)+C(V*m)))+C(C(C(_*Z)+C(T*n))-C(C(Z*o)+C(S*D))))+C(C(C(Y*X)+C(R*A))-C(C(X*W)+C(Q*N))))));h=C(-P);n=h>2]=Y+C(K*n);z[u+4>>2]=_+C(J*n);z[u>>2]=$+C(la*n);p=z[l+64>>2];m=z[l+68>>2];h=z[l+72>>2];v[s+12>>2]=0;z[s+8>>2]=C(n*h)+z[s+8>>2];z[s+4>>2]=C(n*m)+z[s+4>>2];z[s>>2]=C(n*p)+z[s>>2];p=z[l+80>>2];m=z[l+84>>2];h=z[l+88>>2];v[r+12>>2]=0;z[r+8>>2]=C(n*h)+z[r+8>>2];z[r+4>>2]=C(n*m)+z[r+4>>2];z[r>>2]=C(n*p)+z[r>>2];p=z[l+96>>2];m=z[l+100>>2];h=z[l+104>>2];v[t+12>>2]=0;z[t+8>>2]=C(n*h)+z[t+8>>2];z[t+4>>2]=C(n*m)+z[t+4>>2];z[t>>2]=C(n*p)+z[t>>2];p=z[k+16>>2];m=z[k+20>>2];h=z[k+24>>2];v[k+92>>2]=0;z[k+88>>2]=C(n*h)+z[k+88>>2];z[k+84>>2]=C(n*m)+z[k+84>>2];z[k+80>>2]=C(n*p)+z[k+80>>2];v[k+60>>2]=0;z[k+56>>2]=C(R*n)+z[k+56>>2];z[k+52>>2]=C(T*n)+z[k+52>>2];z[k+48>>2]=C(U*n)+z[k+48>>2];p=z[k+16>>2];m=z[k+20>>2];h=z[k+24>>2];v[y+12>>2]=0;z[y+8>>2]=C(n*h)+z[y+8>>2];z[y+4>>2]=C(n*m)+z[y+4>>2];z[y>>2]=C(n*p)+z[y>>2];v[k+44>>2]=0;z[k+40>>2]=C(Q*n)+z[k+40>>2];z[k+36>>2]=C(S*n)+z[k+36>>2];z[k+32>>2]=C(V*n)+z[k+32>>2];h=C(P+n);z[f>>2]=h;i=C(h+i);E=E+1|0;if((H|0)!=(E|0)){continue}break}z[k>>2]=i}q=q+((H<<2)+12&2032)|0;f=q+(ka<<7)|0;d:{if(!ka){I=z[k+40>>2];ba=z[k+36>>2];ca=z[k+32>>2];da=z[k+72>>2];ea=z[k+68>>2];i=z[k+64>>2];fa=z[k+56>>2];ga=z[k+52>>2];F=z[k+48>>2];ha=z[k+88>>2];ia=z[k+84>>2];G=z[k+80>>2];break d}h=z[k>>2];h=h>O?h:O;ma=C(h*z[e+20>>2]);O=C(-ma);$=C(z[e+16>>2]*h);aa=C(-$);y=0;I=z[k+40>>2];ba=z[k+36>>2];ca=z[k+32>>2];da=z[k+72>>2];ea=z[k+68>>2];i=z[k+64>>2];fa=z[k+56>>2];ga=z[k+52>>2];F=z[k+48>>2];ha=z[k+88>>2];ia=z[k+84>>2];G=z[k+80>>2];E=0;while(1){l=q+(y<<7)|0;la=z[l+64>>2];J=z[l+68>>2];K=z[l+72>>2];P=z[l+12>>2];L=z[l+48>>2];M=z[l+44>>2];Q=z[l+28>>2];R=z[l+24>>2];S=z[l+40>>2];na=z[l+8>>2];T=z[l+20>>2];U=z[l+36>>2];oa=z[l+4>>2];V=z[l+16>>2];pa=z[l>>2];X=z[l+32>>2];N=z[s+8>>2];Y=z[u+8>>2];W=z[t+8>>2];A=z[r+8>>2];D=z[s+4>>2];Z=z[u+4>>2];o=z[t+4>>2];n=z[r+4>>2];_=z[u>>2];p=z[s>>2];m=z[r>>2];h=z[t>>2];v[u+12>>2]=0;h=C(C(P-C(Q*C(M-L)))-C(Q*C(C(C(C(C(pa*_)+C(V*p))-C(C(pa*m)+C(X*h)))+C(C(C(oa*Z)+C(T*D))-C(C(oa*n)+C(U*o))))+C(C(C(na*Y)+C(R*N))-C(C(na*A)+C(S*W))))));H=h>$;g=h>2]=Y+C(K*o);z[u+4>>2]=Z+C(J*o);z[u>>2]=_+C(la*o);p=z[l+80>>2];m=z[l+84>>2];h=z[l+88>>2];v[s+12>>2]=0;z[s+8>>2]=C(h*o)+z[s+8>>2];z[s+4>>2]=C(m*o)+z[s+4>>2];z[s>>2]=z[s>>2]+C(p*o);p=z[l+96>>2];m=z[l+100>>2];h=z[l+104>>2];v[r+12>>2]=0;z[r+8>>2]=C(o*h)+z[r+8>>2];z[r+4>>2]=C(o*m)+z[r+4>>2];z[r>>2]=C(o*p)+z[r>>2];p=z[l+112>>2];m=z[l+116>>2];h=z[l+120>>2];v[t+12>>2]=0;z[t+8>>2]=C(o*h)+z[t+8>>2];z[t+4>>2]=C(o*m)+z[t+4>>2];z[t>>2]=C(o*p)+z[t>>2];z[l+12>>2]=n;I=C(C(S*o)+I);ba=C(C(U*o)+ba);ca=C(C(X*o)+ca);p=C(na*o);da=C(p+da);m=C(oa*o);ea=C(m+ea);h=C(pa*o);i=C(h+i);fa=C(C(R*o)+fa);ga=C(C(T*o)+ga);F=C(C(V*o)+F);ha=C(p+ha);ia=C(m+ia);G=C(h+G);E=0-(g|H|(E|0)!=0)|0;y=y+1|0;if((ka|0)!=(y|0)){continue}break}z[k+48>>2]=F;z[k+80>>2]=G;z[k+64>>2]=i;v[e+52>>2]=E}h=z[e+24>>2];v[j+156>>2]=0;z[j+152>>2]=C(ha*h)+z[j+152>>2];z[j+148>>2]=C(ia*h)+z[j+148>>2];z[j+144>>2]=C(G*h)+z[j+144>>2];h=z[e+4>>2];v[j+124>>2]=0;z[j+120>>2]=C(fa*h)+z[j+120>>2];z[j+116>>2]=C(ga*h)+z[j+116>>2];z[j+112>>2]=C(F*h)+z[j+112>>2];h=z[e+28>>2];v[j+140>>2]=0;z[j+136>>2]=z[j+136>>2]-C(da*h);z[j+132>>2]=z[j+132>>2]-C(ea*h);z[j+128>>2]=z[j+128>>2]-C(i*h);h=z[e+8>>2];v[j+108>>2]=0;z[j+104>>2]=z[j+104>>2]-C(I*h);z[j+100>>2]=z[j+100>>2]-C(ba*h);z[j+96>>2]=z[j+96>>2]-C(ca*h);e=f;if(ja>>>0>e>>>0){continue}break}}xa=k+96|0;break a}rA(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=x[a+8>>1]==65535;a=e?j+96|0:j+112|0;W=z[a+8>>2];A=z[a+4>>2];D=z[a>>2];a=e?j+128|0:j+144|0;o=z[a+8>>2];n=z[a+4>>2];p=z[a>>2];a=e?j+192|0:j+208|0;J=z[a+8>>2];K=z[a+4>>2];L=z[a>>2];a=e?j+160|0:j+176|0;M=z[a+8>>2];N=z[a+4>>2];i=z[b+8>>2];h=z[b+4>>2];m=z[a>>2];z[d>>2]=C(m-z[b>>2])+z[d>>2];z[d+4>>2]=C(N-h)+z[d+4>>2];z[d+8>>2]=C(M-i)+z[d+8>>2];i=z[b+24>>2];h=z[b+20>>2];z[d+16>>2]=C(L-z[b+16>>2])+z[d+16>>2];z[d+20>>2]=C(K-h)+z[d+20>>2];z[d+24>>2]=C(J-i)+z[d+24>>2];z[b+24>>2]=J;z[b+20>>2]=K;z[b+16>>2]=L;z[b+8>>2]=M;z[b+4>>2]=N;z[b>>2]=m;z[c>>2]=z[c>>2]-p;z[c+4>>2]=z[c+4>>2]-n;z[c+8>>2]=z[c+8>>2]-o;z[c+16>>2]=z[c+16>>2]-D;z[c+20>>2]=z[c+20>>2]-A;z[c+24>>2]=z[c+24>>2]-W;xa=j+224|0}function oB(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=0,Y=0,Z=0,_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=0,fa=0,ga=0,ha=C(0),ia=0,ja=0,ka=0;l=xa-976|0;xa=l;u[v[b+16>>2]+22>>1]=0;q=v[a+4>>2];if(q){k=l+16|0;I9(k,0,960);v[l+956>>2]=2139095039;v[l+940>>2]=-8388609;v[l+876>>2]=2139095039;v[l+860>>2]=-8388609;v[l+796>>2]=2139095039;v[l+780>>2]=-8388609;v[l+716>>2]=2139095039;v[l+700>>2]=-8388609;v[l+636>>2]=2139095039;v[l+620>>2]=-8388609;v[l+556>>2]=2139095039;v[l+540>>2]=-8388609;v[l+476>>2]=2139095039;v[l+460>>2]=-8388609;v[l+396>>2]=2139095039;v[l+380>>2]=-8388609;v[l+316>>2]=2139095039;v[l+300>>2]=-8388609;v[l+236>>2]=2139095039;v[l+220>>2]=-8388609;v[l+156>>2]=2139095039;v[l+140>>2]=-8388609;v[l+76>>2]=2139095039;v[l+60>>2]=-8388609;v[b+4>>2]=1065353216;v[b+8>>2]=1065353216;v[b+12>>2]=1065353216;v[b>>2]=1065353216;v[l+8>>2]=0;v[l>>2]=0;v[l+4>>2]=0;ja=b,ka=Ba[q|0](k,l,12,b,v[a+8>>2],b+44|0,b+72|0,w[b+135|0],b+148|0,b+160|0)|0,v[ja+112>>2]=ka;v[b+108>>2]=k;z[b+136>>2]=z[l>>2];z[b+140>>2]=z[l+4>>2];z[b+144>>2]=z[l+8>>2];if(!(!w[v[b+20>>2]+62|0]|v[b+100>>2]==8)){v[b+4>>2]=0}if(!(!w[v[b+24>>2]+62|0]|v[b+104>>2]==8)){v[b+12>>2]=0}P=e;a=xa-560|0;xa=a;q=v[b+16>>2];j=v[b+112>>2];a:{if(!j){v[q+20>>2]=0;v[q+24>>2]=0;v[q+28>>2]=0;break a}k=x[q+10>>1];I=1;if(x[q+8>>1]==65535){ga=w[v[q>>2]+62|0]!=0;I=(k|0)!=65535}Z=(k|0)==65535?w[v[q+4>>2]+62|0]!=0:Z;_=I?160:96;k=B(j,_);c=Ba[v[v[c>>2]>>2]](c,k+192|0)|0;if(c+1>>>0<2){break a}v[q+24>>2]=c;k=k+176|0;u[q+22>>1]=k>>>4;j=v[b+128>>2];u[q+20>>1]=8;v[q+28>>2]=j;I9(c,0,k);c=v[b+112>>2];k=v[q+24>>2];t[k+2|0]=0;t[k+1|0]=c;t[k|0]=I?4:2;e=z[b>>2];z[k+44>>2]=e;z[k+60>>2]=z[b+4>>2];H=z[b+8>>2];z[k+64>>2]=-H;z[k+68>>2]=-z[b+12>>2];z[k+16>>2]=z[b+136>>2];z[k+20>>2]=z[b+140>>2];z[k+24>>2]=z[b+144>>2];n=z[b+116>>2];z[k+4>>2]=n*P;z[k+8>>2]=z[b+120>>2]*P;t[k+3|0]=n!=C(34028234663852886e22)|z[b+120>>2]!=C(34028234663852886e22);p=e;e=z[v[b+36>>2]+32>>2];z[k+12>>2]=p*e;p=H;H=z[v[b+40>>2]+32>>2];z[k+28>>2]=p*H;n=z[b+60>>2];o=z[b- -64>>2];p=z[b+152>>2];N=z[b+148>>2];z[k+40>>2]=z[b+156>>2]-z[b+68>>2];z[k+36>>2]=p-o;z[k+32>>2]=N-n;n=z[b+88>>2];o=z[b+92>>2];p=z[b+164>>2];N=z[b+160>>2];z[k+56>>2]=z[b+168>>2]-z[b+96>>2];z[k+52>>2]=p-o;z[k+48>>2]=N-n;m=v[b+108>>2];b:{if(!c){break b}if((c|0)!=1){Q=c&-2;while(1){s=m+B(i,80)|0;c:{if(!(w[s+76|0]&64)){break c}j=1024;d:{switch(x[s+78>>1]-2048|0){case 1:j=1025;break;case 0:break d;default:break c}}u[s+78>>1]=j}s=m+B(i|1,80)|0;e:{if(!(w[s+76|0]&64)){break e}j=1024;f:{switch(x[s+78>>1]-2048|0){case 1:j=1025;break;case 0:break f;default:break e}}u[s+78>>1]=j}i=i+2|0;r=r+2|0;if((Q|0)!=(r|0)){continue}break}}if(!(c&1)){break b}i=m+B(i,80)|0;if(!(w[i+76|0]&64)){break b}r=1024;g:{switch(x[i+78>>1]-2048|0){case 1:r=1025;break;case 0:break g;default:break b}}u[i+78>>1]=r}oy(a+480|0,m,a+288|0,a+96|0,c,v[b+28>>2]+28|0,v[b+32>>2]+28|0,e,H,b,w[b+132|0]!=0|I,w[b+133|0],0);if(!v[b+112>>2]){break a}i=k+176|0;ha=P>2];r=x[c+76>>1];G=r&32?w[b+134|0]?ha:C(1):C(1);h:{if(!I){m=R<<4;j=m+(a+288|0)|0;K=z[j+8>>2];L=z[j>>2];M=z[j+4>>2];j=m+(a+96|0)|0;O=z[j+8>>2];S=z[j>>2];T=z[j+4>>2];p=z[c+44>>2];U=z[c+60>>2];e=z[c>>2];z[i>>2]=e;o=z[c+4>>2];z[i+4>>2]=o;A=z[c+8>>2];z[i+8>>2]=A;D=z[c+32>>2];z[i+16>>2]=D;E=z[c+36>>2];z[i+20>>2]=E;F=z[c+40>>2];z[i+24>>2]=F;V=z[c+16>>2];z[i+32>>2]=V;$=z[c+20>>2];z[i+36>>2]=$;aa=z[c+24>>2];z[i+40>>2]=aa;ba=z[c+48>>2];z[i+48>>2]=ba;ca=z[c+52>>2];z[i+52>>2]=ca;n=z[c+56>>2];v[i+84>>2]=0;z[i+72>>2]=G*U;z[i+68>>2]=G*p;z[i+56>>2]=n;v[i+92>>2]=1065353216;v[i+76>>2]=0;j=v[b+36>>2];p=C(C(C(A*z[j+8>>2])+C(C(e*z[j>>2])+C(o*z[j+4>>2])))+C(C(aa*z[j+24>>2])+C(C(V*z[j+16>>2])+C($*z[j+20>>2]))));m=v[b+40>>2];n=C(C(C(F*z[m+8>>2])+C(C(D*z[m>>2])+C(E*z[m+4>>2])))+C(C(n*z[m+24>>2])+C(C(ba*z[m+16>>2])+C(ca*z[m+20>>2]))));G=C(p-n);o=C(C(C(C(C(C(A*A)+C(C(e*e)+C(o*o)))*z[j+32>>2])*z[b>>2])+C(C(C(C(F*F)+C(C(D*D)+C(E*E)))*z[m+32>>2])*z[b+8>>2]))+C(C(C(C(K*K)+C(C(L*L)+C(M*M)))*z[b+4>>2])+C(C(C(O*O)+C(C(S*S)+C(T*T)))*z[b+12>>2])));e=H;if(r&64){break h}v[i+92>>2]=0;v[i+56>>2]=0;v[i+48>>2]=0;v[i+52>>2]=0;v[i+40>>2]=0;v[i+32>>2]=0;v[i+36>>2]=0;e=H;break h}Q=v[b+20>>2];j=v[b+28>>2];r=v[b+36>>2];W=x[q+8>>1];u[a+92>>1]=W;v[a+88>>2]=r;v[a+84>>2]=j;v[a+80>>2]=Q;X=v[b+24>>2];m=v[b+32>>2];s=v[b+40>>2];Y=x[q+10>>1];u[a+76>>1]=Y;v[a+72>>2]=s;v[a+68>>2]=m;v[a+64>>2]=X;da=(W|0)!=65535;i:{if(!da){p=z[j+40>>2];A=z[j+52>>2];D=z[j+32>>2];E=z[j+44>>2];F=z[j+56>>2];K=z[j+36>>2];L=z[j+48>>2];e=z[c+20>>2];M=z[j+60>>2];n=z[c+24>>2];O=z[j+28>>2];o=z[c+16>>2];J=z[c>>2];z[a+32>>2]=J;E=C(C(C(o*D)+C(e*E))+C(n*F));F=C(C(C(o*O)+C(e*p))+C(n*A));e=C(C(C(o*K)+C(e*L))+C(n*M));break i}J=z[c>>2];z[a+32>>2]=J;E=z[c+20>>2];F=z[c+16>>2];e=z[c+24>>2]}j=i+128|0;K=z[c+4>>2];L=z[c+8>>2];v[a+60>>2]=0;p=e;z[a+56>>2]=e;z[a+52>>2]=E;z[a+48>>2]=F;v[a+44>>2]=0;z[a+40>>2]=L;z[a+36>>2]=K;A=z[c+56>>2];e=C(-z[c+52>>2]);M=z[c+40>>2];O=C(-M);S=z[c+36>>2];T=C(-S);D=z[c+48>>2];U=z[c+32>>2];V=C(-U);ea=(Y|0)!=65535;j:{if(!ea){n=C(C(C(z[m+48>>2]*e)-C(D*z[m+36>>2]))-C(A*z[m+60>>2]));o=C(C(C(z[m+44>>2]*e)-C(D*z[m+32>>2]))-C(A*z[m+56>>2]));e=C(C(C(z[m+40>>2]*e)-C(D*z[m+28>>2]))-C(A*z[m+52>>2]));break j}n=C(-A);o=e;e=C(-D)}v[a+28>>2]=0;v[a+12>>2]=0;z[a+8>>2]=O;z[a+4>>2]=T;z[a>>2]=V;z[a+16>>2]=e;z[a+20>>2]=o;z[a+24>>2]=n;A=z[c+44>>2];D=z[c+60>>2];v[i+84>>2]=0;z[i+56>>2]=-n;z[i+52>>2]=-o;z[i+48>>2]=-e;z[i+40>>2]=p;z[i+36>>2]=E;z[i+32>>2]=F;z[i+24>>2]=M;z[i+20>>2]=S;z[i+16>>2]=U;z[i+8>>2]=L;z[i+4>>2]=K;z[i>>2]=J;v[i+92>>2]=1065353216;v[i+76>>2]=0;z[i+72>>2]=G*D;z[i+68>>2]=G*A;e=jB(a+80|0,a+32|0,i+96|0,z[b>>2],z[b+4>>2],a- -64|0,a,j,z[b+8>>2],z[b+12>>2]);if(da){Ba[v[v[Q>>2]+116>>2]](a+528|0,Q,W);p=C(C(C(C(z[i>>2]*z[a+528>>2])+C(z[i+32>>2]*z[a+544>>2]))+C(C(z[i+4>>2]*z[a+532>>2])+C(z[i+36>>2]*z[a+548>>2])))+C(C(z[i+8>>2]*z[a+536>>2])+C(z[i+40>>2]*z[a+552>>2])))}else{p=C(C(C(z[r+8>>2]*z[i+8>>2])+C(C(z[r>>2]*z[i>>2])+C(z[r+4>>2]*z[i+4>>2])))+C(C(z[r+24>>2]*z[i+40>>2])+C(C(z[r+16>>2]*z[i+32>>2])+C(z[r+20>>2]*z[i+36>>2]))))}if(ea){Ba[v[v[X>>2]+116>>2]](a+528|0,X,Y);n=C(C(C(C(z[i+16>>2]*z[a+528>>2])+C(z[i+48>>2]*z[a+544>>2]))+C(C(z[i+20>>2]*z[a+532>>2])+C(z[i+52>>2]*z[a+548>>2])))+C(C(z[i+24>>2]*z[a+536>>2])+C(z[i+56>>2]*z[a+552>>2])))}else{n=C(C(C(z[s+8>>2]*z[i+24>>2])+C(C(z[s>>2]*z[i+16>>2])+C(z[s+4>>2]*z[i+20>>2])))+C(C(z[s+24>>2]*z[i+56>>2])+C(C(z[s+16>>2]*z[i+48>>2])+C(z[s+20>>2]*z[i+52>>2]))))}if(!(w[c+76|0]&64)){v[i+92>>2]=0}o=e>2]=0;j=i- -64|0;nB(i+12|0,i+28|0,j,i+80|0,i+44|0,i+60|0,a+528|0,c,G,o,I?C(9999999747378752e-21):z[b+124>>2],J,d,P,x[c+76>>1]&64?N:C(e*h),f,g);o=z[a+528>>2];z[i+88>>2]=o;if(ga){z[j>>2]=z[j>>2]-p}if(Z){z[i+44>>2]=n+z[i+44>>2]}j=x[c+76>>1];if(j&16){v[i+84>>2]=v[i+84>>2]|2}if(j&8){v[i+84>>2]=v[i+84>>2]|4}j=x[c+78>>1];if(j&1){v[i+84>>2]=v[i+84>>2]|64}k:{if(!(ia&!w[b+132|0])){break k}if((j|0)==1024){v[i+84>>2]=v[i+84>>2]|8;m=R<<4;j=m+(a+288|0)|0;n=z[j>>2];p=z[j+4>>2];G=z[j+8>>2];e=z[b+4>>2];j=(fa<<4)+k|0;z[j+92>>2]=o;z[j+88>>2]=e*G;z[j+84>>2]=e*p;z[j+80>>2]=n*e;m=m+(a+96|0)|0;e=z[b+12>>2];z[j+128>>2]=z[m>>2]*e;z[j+132>>2]=e*z[m+4>>2];z[j+136>>2]=e*z[m+8>>2];z[j+140>>2]=z[c+12>>2];fa=fa+1|0;break k}if(!(j&2048)){break k}v[i+84>>2]=v[i+84>>2]|16}i=i+_|0;R=R+1|0;if(R>>>0>2]){continue}break}}xa=a+560|0}xa=l+976|0}function HX(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=0,q=C(0),r=C(0),s=0,u=0,x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=0,W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0);j=xa-320|0;xa=j;p=v[b+4>>2];k=z[p+20>>2];n=v[a+4>>2];l=z[n+20>>2];D=z[d>>2];U=w[n+32|0];J=z[n+16>>2];V=w[p+32|0];O=z[p+16>>2];v[j+28>>2]=0;S=C((k>2]=s;u=c+(j+32|0)|0;c=w[g+n|0];v[u>>2]=c;c=v[p+152>>2]+B(c,12)|0;k=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];s=(1-s<<4)+W|0;q=z[s>>2];o=z[s+4>>2];r=z[s+8>>2];x=z[p+80>>2];y=z[p+48>>2];E=z[p+64>>2];A=z[p+84>>2];L=z[p+52>>2];P=z[p+68>>2];G=z[p+88>>2];H=z[p+56>>2];I=z[p+72>>2];c=d;M=c<<4;u=M+(j+128|0)|0;z[u+12>>2]=z[s+12>>2];z[u+8>>2]=r;z[u+4>>2]=o;z[u>>2]=q;s=M+(j- -64|0)|0;v[s+12>>2]=0;u=M+(j+192|0)|0;v[u+12>>2]=0;G=C(C(G*k)+C(C(H*l)+C(m*I)));z[s+8>>2]=G;A=C(C(A*k)+C(C(L*l)+C(m*P)));z[s+4>>2]=A;k=C(C(x*k)+C(C(y*l)+C(m*E)));z[s>>2]=k;l=C(r-G);z[u+8>>2]=l;m=C(o-A);z[u+4>>2]=m;k=C(q-k);z[u>>2]=k;d=c+1|0;v[j+28>>2]=d;n=n+1|0;if((T|0)!=(n|0)){continue}break}g:{h:{switch(c-1|0){case 0:q=z[j+200>>2];k=C(z[j+216>>2]-q);o=z[j+192>>2];l=C(z[j+208>>2]-o);r=z[j+196>>2];m=C(z[j+212>>2]-r);x=C(C(k*k)+C(C(l*l)+C(m*m)));if(!(x<=C(1.1920928955078125e-7))){break g}v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break e;case 1:iY(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}}P_(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e}v[j+316>>2]=0;N=k;k=C(F(C(C(C(C(C(-o)*l)-C(m*r))-C(q*k))/x),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=q+C(N*k);z[j+308>>2]=r+C(m*k);z[j+304>>2]=o+C(l*k);break e}k=z[c+8>>2];m=z[c>>2];l=z[c+4>>2];v[j+268>>2]=0;c=C(C(k*k)+C(C(m*m)+C(l*l)))>C(0);k=c?k:C(0);z[j+264>>2]=k;l=c?l:C(0);z[j+260>>2]=l;m=c?m:C(1);z[j+256>>2]=m;q=C(C(1)/C(K(C(C(k*k)+C(C(m*m)+C(l*l))))));x=C(k*q);y=C(m*q);o=C(34028234663852886e22);r=C(l*q);break d}v[j+316>>2]=0;z[j+312>>2]=l;z[j+308>>2]=m;z[j+304>>2]=k}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];o=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));if(!(S>2]=v[j+296>>2];c=v[j+292>>2];v[j+272>>2]=v[j+288>>2];v[j+276>>2]=c;c=v[a+4>>2];n=c+52|0;p=v[j+28>>2]<<2;o=C(-m);s=c+56|0;u=c+68|0;M=c+72|0;d=C(C(C(z[c+48>>2]*o)-C(z[n>>2]*l))-C(z[s>>2]*k))>C(C(C(z[c+64>>2]*o)-C(z[u>>2]*l))-C(z[M>>2]*k));v[p+(j+48|0)>>2]=d;o=z[(d?s:M)>>2];P=z[(d?c+48|0:c- -64|0)>>2];G=z[(d?n:u)>>2];Y=z[j+268>>2];c=v[b+4>>2];H=z[c+56>>2];I=z[c+52>>2];Q=z[c+72>>2];n=c- -64|0;R=z[n>>2];Z=z[c+68>>2];D=z[c+88>>2];J=z[c+80>>2];_=z[c+84>>2];$=z[c+48>>2];v[j+316>>2]=0;N=D;D=k;aa=J;J=m;O=l;z[j+312>>2]=C(N*k)+C(C(aa*m)+C(l*_));z[j+308>>2]=C(Q*k)+C(C(R*m)+C(l*Z));z[j+304>>2]=C(H*k)+C(C($*m)+C(l*I));d=HV(c,j+304|0);v[p+(j+32|0)>>2]=d;d=v[c+152>>2]+B(d,12)|0;k=z[d+8>>2];l=z[d>>2];m=z[d+4>>2];Q=C(C(z[c+88>>2]*k)+C(C(z[c+56>>2]*l)+C(m*z[c+72>>2])));H=C(o-Q);R=C(C(z[c+80>>2]*k)+C(C(z[c+48>>2]*l)+C(m*z[n>>2])));I=C(P-R);l=C(C(z[c+84>>2]*k)+C(C(z[c+52>>2]*l)+C(m*z[c+68>>2])));k=C(G-l);m=C(C(x*H)+C(C(y*I)+C(r*k)));if(m>X){b=0;if(!f){break a}d=v[j+28>>2];t[h|0]=d;if(!d){break a}a=0;if((d|0)!=1){i=d&-2;c=0;while(1){e=a<<2;n=j+48|0;t[a+f|0]=v[e+n>>2];p=j+32|0;t[a+g|0]=v[p+e>>2];e=a|1;h=e<<2;t[e+f|0]=v[h+n>>2];t[e+g|0]=v[h+p>>2];a=a+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}}if(!(d&1)){break a}c=a<<2;t[a+f|0]=v[c+(j+48|0)>>2];t[a+g|0]=v[c+(j+32|0)>>2];break a}c=v[j+28>>2];if(m>C(q*C(.9997749924659729))){i:{if(!f){break i}t[h|0]=c;if(!c){break i}n=0;if((c|0)!=1){h=c&-2;d=0;while(1){a=n<<2;p=j+48|0;t[f+n|0]=v[a+p>>2];s=j+32|0;t[g+n|0]=v[s+a>>2];a=n|1;b=a<<2;t[a+f|0]=v[b+p>>2];t[a+g|0]=v[b+s>>2];n=n+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(c&1)){break i}a=n<<2;t[f+n|0]=v[a+(j+48|0)>>2];t[g+n|0]=v[a+(j+32|0)>>2]}z[i+32>>2]=y;v[i+44>>2]=0;z[i+40>>2]=x;z[i+36>>2]=r;IV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,c);j:{if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;a=v[j+292>>2];v[i+68>>2]=v[j+288>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+296>>2];break j}k=z[j+304>>2];l=z[j+308>>2];m=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=m-C(E*x);z[i+4>>2]=l-C(E*r);z[i>>2]=k-C(E*y);k=z[j>>2];l=z[j+4>>2];m=z[j+8>>2];v[i+28>>2]=0;z[i+24>>2]=m+C(A*x);z[i+20>>2]=l+C(A*r);z[i+16>>2]=k+C(A*y);q=C(q-L)}z[i+64>>2]=q;b=2;break a}n=c<<4;d=n+(j+128|0)|0;v[d+12>>2]=0;z[d+8>>2]=o;z[d+4>>2]=G;z[d>>2]=P;d=n+(j- -64|0)|0;v[d+12>>2]=0;z[d+8>>2]=Q;z[d+4>>2]=l;z[d>>2]=R;d=n+(j+192|0)|0;v[d+12>>2]=0;z[d+8>>2]=H;z[d+4>>2]=k;z[d>>2]=I;v[j+28>>2]=c+1;k:{l:{switch(c-1|0){case 0:o=z[j+200>>2];k=C(z[j+216>>2]-o);r=z[j+192>>2];l=C(z[j+208>>2]-r);x=z[j+196>>2];m=C(z[j+212>>2]-x);y=C(C(k*k)+C(C(l*l)+C(m*m)));if(y<=C(1.1920928955078125e-7)){v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break k}v[j+316>>2]=0;N=k;k=C(F(C(C(C(C(C(-r)*l)-C(m*x))-C(o*k))/y),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=o+C(N*k);z[j+308>>2]=x+C(m*k);z[j+304>>2]=r+C(l*k);break k;case 1:iY(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:P_(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}}v[j+316>>2]=0;z[j+312>>2]=H;z[j+308>>2]=k;z[j+304>>2]=I}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];o=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));y=C(C(1)/o);x=C(k*y);r=C(l*y);y=C(m*y);if(oS){continue}break}n=v[j+28>>2];if(!(o>2];u=j+32|0;t[a+g|0]=v[u+c>>2];c=a|1;h=c<<2;t[c+f|0]=v[h+s>>2];t[c+g|0]=v[h+u>>2];a=a+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(b&1)){break m}b=a<<2;t[a+f|0]=v[b+(j+48|0)>>2];t[a+g|0]=v[b+(j+32|0)>>2]}v[j+296>>2]=v[j+280>>2];a=v[j+276>>2];v[j+288>>2]=v[j+272>>2];v[j+292>>2]=a;z[j+268>>2]=Y;z[j+256>>2]=J;z[j+260>>2]=O;z[j+264>>2]=D;IV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,n);v[i+60>>2]=0;z[i+56>>2]=x;z[i+52>>2]=r;z[i+48>>2]=y;v[i+44>>2]=0;k=C(C(1)/q);l=C(D*k);z[i+40>>2]=l;m=C(O*k);z[i+36>>2]=m;k=C(J*k);z[i+32>>2]=k;if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;z[i+64>>2]=q;a=v[j+276>>2];v[i+68>>2]=v[j+272>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+280>>2];b=4;break a}o=z[j+304>>2];r=z[j+308>>2];D=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=D-C(E*l);z[i+4>>2]=r-C(E*m);z[i>>2]=o-C(E*k);o=z[j>>2];r=z[j+4>>2];D=z[j+8>>2];z[i+64>>2]=q-L;v[i+28>>2]=0;z[i+24>>2]=D+C(A*l);z[i+20>>2]=r+C(A*m);z[i+16>>2]=o+C(A*k);b=2;if(q<=L){break a}b=4;break a}if(f){break b}b=5;break a}n=v[j+28>>2]}t[h|0]=n;b=5;if(!n){break a}a=0;if((n|0)!=1){h=n&-2;c=0;while(1){d=a<<2;i=j+48|0;t[a+f|0]=v[d+i>>2];p=j+32|0;t[a+g|0]=v[p+d>>2];d=a|1;e=d<<2;t[d+f|0]=v[e+i>>2];t[d+g|0]=v[e+p>>2];a=a+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(n&1)){break a}c=a<<2;t[a+f|0]=v[c+(j+48|0)>>2];t[a+g|0]=v[c+(j+32|0)>>2]}xa=j+320|0;return b}function tv(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=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0);h=xa-576|0;xa=h;k=v[f>>2];v[h+568>>2]=0;v[h+572>>2]=0;v[h+560>>2]=0;v[h+564>>2]=0;f=v[b+40>>2];T=v[b+8>>2];p=v[b+12>>2];i=z[b+4>>2];v[h+556>>2]=0;v[h+548>>2]=T;v[h+552>>2]=p;z[h+544>>2]=i;D=z[a+4>>2];z[h+528>>2]=z[e>>2];A=z[c+20>>2];E=z[c+24>>2];u=z[c>>2];x=z[c+4>>2];y=z[c+8>>2];m=z[c+12>>2];Q=z[c+16>>2];v[h+524>>2]=0;z[h+520>>2]=E;z[h+516>>2]=A;z[h+512>>2]=Q;z[h+508>>2]=m;z[h+504>>2]=y;z[h+500>>2]=x;z[h+496>>2]=u;q=z[d+20>>2];F=z[d+24>>2];o=z[d>>2];r=z[d+4>>2];n=z[d+8>>2];G=z[d+12>>2];s=z[d+16>>2];v[h+492>>2]=0;z[h+488>>2]=F;z[h+484>>2]=q;z[h+480>>2]=s;z[h+476>>2]=G;z[h+472>>2]=n;z[h+468>>2]=r;z[h+464>>2]=o;L=C(C(C(y*o)-C(n*u))+C(C(x*G)-C(m*r)));N=C(C(C(x*n)-C(r*y))+C(C(u*G)-C(m*o)));H=C(C(C(u*r)-C(o*x))+C(C(y*G)-C(m*n)));R=z[e+8>>2];l=C(R*C(.05000000074505806));j=C(i*z[f+52>>2]);i=C(z[f+56>>2]*z[h+548>>2]);j=i>=j?j:i;i=C(z[f+60>>2]*z[h+552>>2]);i=C((i>=j?j:i)*C(.25));i=i>l?l:i;S=i>D?D:i;i=C(-o);O=C(C(m*G)-C(C(C(u*i)-C(x*r))-C(n*y)));m=C(Q-s);q=C(A-q);s=C(E-F);l=C(C(C(i*m)-C(q*r))-C(n*s));j=C(C(G*G)+C(-.5));i=C(C(C(G*C(C(r*m)-C(o*q)))+C(j*s))-C(n*l));I=C(i+i);i=C(C(C(j*q)+C(G*C(C(o*s)-C(n*m))))-C(r*l));J=C(i+i);i=C(C(C(j*m)+C(G*C(C(n*q)-C(r*s))))-C(o*l));K=C(i+i);a:{b:{c=w[k+64|0];if(c){q=C(N+N);i=C(C(1)-C(N*q));l=C(L+L);j=C(L*l);U=C(i-j);M=i;F=C(H+H);i=C(H*F);V=C(M-i);G=C(C(C(1)-j)-i);i=C(S*C(.05000000074505806));r=C(i*i);j=C(H*l);i=C(O*q);n=C(j-i);s=C(H*q);l=C(O*l);o=C(s+l);u=C(j+i);j=C(L*q);i=C(O*F);x=C(j-i);y=C(s-l);m=C(j+i);a=c;while(1){e=v[k+76>>2];a=a-1|0;p=e+B(a,48)|0;M=z[p+24>>2];A=z[p+40>>2];s=z[p+8>>2];l=z[p>>2];j=z[p+4>>2];i=C(I+C(C(U*s)+C(C(y*l)+C(u*j))));E=C(K+C(C(o*s)+C(C(G*l)+C(x*j))));q=z[p+16>>2];F=z[p+32>>2];s=C(J+C(C(n*s)+C(C(m*l)+C(V*j))));l=z[p+20>>2];j=z[p+36>>2];P=C(C(A*C(i-M))+C(C(C(E-q)*F)+C(C(s-l)*j)));i=C(M-C(i-C(A*P)));A=C(i*i);i=C(q-C(E-C(F*P)));M=C(i*i);i=C(l-C(s-C(j*P)));c:{if(r>2];v[p>>2]=v[e>>2];v[p+4>>2]=d;d=v[e+44>>2];v[p+40>>2]=v[e+40>>2];v[p+44>>2]=d;d=v[e+36>>2];v[p+32>>2]=v[e+32>>2];v[p+36>>2]=d;d=v[e+28>>2];v[p+24>>2]=v[e+24>>2];v[p+28>>2]=d;d=v[e+20>>2];v[p+16>>2]=v[e+16>>2];v[p+20>>2]=d;d=v[e+12>>2];v[p+8>>2]=v[e+8>>2];v[p+12>>2]=d;break c}z[p+44>>2]=P}if(a){continue}break}a=w[k+64|0]}else{a=0}d:{if((a|0)!=(c|0)){break d}a=c<<2;i=C(K-z[k+16>>2]);l=i>C(0)?i:C(-i);i=C(J-z[k+20>>2]);i=i>C(0)?i:C(-i);j=i<=l?l:i;i=C(I-z[k+24>>2]);i=(i>C(0)?i:C(-i))>=C(0)?l:C(0);if(C(S*z[a+103172>>2])<(i<=j?j:i)){break d}if(!(z[a+103204>>2]>C(C(O*z[k+12>>2])+C(C(H*z[k+8>>2])+C(C(N*z[k>>2])+C(L*z[k+4>>2])))))){break b}}v[k+28>>2]=0;z[k+24>>2]=I;z[k+20>>2]=J;z[k+16>>2]=K;z[k+12>>2]=O;z[k+8>>2]=H;z[k+4>>2]=L;z[k>>2]=N;d=v[b+16>>2];c=v[b+20>>2];a=v[b+28>>2];v[h+456>>2]=v[b+24>>2];v[h+460>>2]=a;v[h+448>>2]=d;v[h+452>>2]=c;a=0;e:{if(z[b+4>>2]!=C(1)){break e}a=0;if(z[b+8>>2]!=C(1)){break e}a=z[b+12>>2]==C(1)}i=z[f+32>>2];c=v[f+28>>2];b=v[f+24>>2];t[h+320|0]=0;v[h+316>>2]=0;v[h+432>>2]=f;v[h+300>>2]=0;z[h+296>>2]=i;v[h+288>>2]=b;v[h+292>>2]=c;v[h+440>>2]=v[f+40>>2]+B(w[f+39|0],20);t[h+444|0]=w[f+38|0];j=C(z[f+52>>2]*z[h+544>>2]);i=C(z[f+56>>2]*z[h+548>>2]);j=i>=j?j:i;i=C(z[f+60>>2]*z[h+552>>2]);i=i>=j?j:i;z[h+312>>2]=i*C(.02500000037252903);z[h+308>>2]=i*C(.05000000074505806);z[h+304>>2]=i*C(.10000000149011612);b=a;FV(h+544|0,h+448|0,h+336|0,h+384|0,h+288|0,b);v[h+436>>2]=v[f+44>>2];v[h+268>>2]=0;z[h+264>>2]=I;z[h+260>>2]=J;v[h+252>>2]=0;z[h+248>>2]=I;z[h+244>>2]=J;z[h+272>>2]=D;v[h+204>>2]=0;z[h+200>>2]=I;z[h+196>>2]=J;z[h+192>>2]=K;v[h+220>>2]=4;z[h+256>>2]=K;z[h+240>>2]=K;t[h+224|0]=1;z[h+216>>2]=D;z[h+212>>2]=D;z[h+208>>2]=D;v[h+152>>2]=0;v[h+156>>2]=0;v[h+144>>2]=0;v[h+148>>2]=0;v[h+136>>2]=0;v[h+140>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+120>>2]=0;v[h+124>>2]=0;v[h+112>>2]=0;v[h+116>>2]=0;v[h+176>>2]=0;v[h+104>>2]=141148;v[h+108>>2]=h+192;v[h+92>>2]=0;z[h+88>>2]=I-z[h+296>>2];z[h+84>>2]=J-z[h+292>>2];z[h+80>>2]=K-z[h+288>>2];a=0;f:{g:{h:{i:{j:{if(b){v[h+72>>2]=144404;v[h+76>>2]=h+288;c=w1(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}v[h+72>>2]=141216;v[h+76>>2]=h+288;c=HX(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=v[h+564>>2];c=v[k+76>>2];b=c;v[b>>2]=v[h+560>>2];v[b+4>>2]=a;a=v[h+572>>2];v[b+8>>2]=v[h+568>>2];v[b+12>>2]=a;a=v[h+132>>2];v[b+16>>2]=v[h+128>>2];v[b+20>>2]=a;a=v[h+140>>2];v[b+24>>2]=v[h+136>>2];v[b+28>>2]=a;b=v[h+144>>2];a=v[h+148>>2];i=z[h+176>>2];z[c+40>>2]=z[h+152>>2];z[c+44>>2]=i;v[c+32>>2]=b;v[c+36>>2]=a;a=1;t[k+64|0]=1;n=z[h+152>>2];o=z[h+148>>2];q=z[h+512>>2];F=z[h+516>>2];s=z[h+520>>2];r=z[h+476>>2];u=z[h+472>>2];x=z[h+144>>2];y=z[h+464>>2];m=z[h+468>>2];i=z[h+176>>2];b=v[g+4096>>2];v[g+4096>>2]=b+1;b=(b<<6)+g|0;v[b+52>>2]=-1;z[b+12>>2]=i-D;v[b+28>>2]=0;A=C(C(r*r)+C(-.5));E=C(C(u*n)+C(C(y*x)+C(m*o)));i=C(C(C(r*C(C(y*o)-C(x*m)))+C(n*A))+C(u*E));l=C(i+i);z[b+8>>2]=l;i=C(C(m*E)+C(C(A*o)+C(r*C(C(u*x)-C(n*y)))));j=C(i+i);z[b+4>>2]=j;i=C(C(y*E)+C(C(x*A)+C(r*C(C(m*n)-C(o*u)))));i=C(i+i);z[b>>2]=i;z[b+24>>2]=s-C(D*l);z[b+20>>2]=F-C(D*j);z[b+16>>2]=q-C(D*i);break a}a=f2(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){v[h+72>>2]=144404;v[h+76>>2]=h+288;c=w[k+66|0];z[h+48>>2]=R;a=v[h+60>>2];v[h+8>>2]=v[h+56>>2];v[h+12>>2]=a;a=v[h+52>>2];v[h>>2]=v[h+48>>2];v[h+4>>2]=a;a=J_(h+104|0,h+72|0,k+67|0,k+71|0,c,1,h,h+112|0);break k}v[h+72>>2]=141216;v[h+76>>2]=h+288;c=w[k+66|0];z[h+32>>2]=R;a=v[h+44>>2];v[h+24>>2]=v[h+40>>2];v[h+28>>2]=a;a=v[h+36>>2];v[h+16>>2]=v[h+32>>2];v[h+20>>2]=a;a=J_(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=v[h+564>>2];c=v[k+76>>2];b=c;v[b>>2]=v[h+560>>2];v[b+4>>2]=a;a=v[h+572>>2];v[b+8>>2]=v[h+568>>2];v[b+12>>2]=a;a=v[h+132>>2];v[b+16>>2]=v[h+128>>2];v[b+20>>2]=a;a=v[h+140>>2];v[b+24>>2]=v[h+136>>2];v[b+28>>2]=a;b=v[h+144>>2];a=v[h+148>>2];i=z[h+176>>2];z[c+40>>2]=z[h+152>>2];z[c+44>>2]=i;v[c+32>>2]=b;v[c+36>>2]=a;a=1;t[k+64|0]=1;n=z[h+152>>2];o=z[h+148>>2];q=z[h+512>>2];F=z[h+516>>2];s=z[h+520>>2];r=z[h+476>>2];u=z[h+472>>2];x=z[h+144>>2];y=z[h+464>>2];m=z[h+468>>2];i=z[h+176>>2];b=v[g+4096>>2];v[g+4096>>2]=b+1;b=(b<<6)+g|0;v[b+52>>2]=-1;z[b+12>>2]=i-D;v[b+28>>2]=0;A=C(C(r*r)+C(-.5));E=C(C(u*n)+C(C(y*x)+C(m*o)));i=C(C(C(r*C(C(y*o)-C(x*m)))+C(n*A))+C(u*E));l=C(i+i);z[b+8>>2]=l;i=C(C(m*E)+C(C(A*o)+C(r*C(C(u*x)-C(n*y)))));j=C(i+i);z[b+4>>2]=j;i=C(C(y*E)+C(C(x*A)+C(r*C(C(m*n)-C(o*u)))));i=C(i+i);z[b>>2]=i;z[b+24>>2]=s-C(D*l);z[b+20>>2]=F-C(D*j);z[b+16>>2]=q-C(D*i);break a}a=f2(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=v[k+76>>2];o=z[b+36>>2];u=z[b+40>>2];i=z[b+44>>2];a=1;x=z[b+32>>2];F=z[h+516>>2];s=z[h+520>>2];y=z[h+472>>2];m=z[h+464>>2];A=z[h+468>>2];n=z[h+476>>2];b=v[g+4096>>2];v[g+4096>>2]=b+1;b=(b<<6)+g|0;v[b+28>>2]=0;v[b+52>>2]=-1;z[b+12>>2]=i-D;E=C(C(y*u)+C(C(m*x)+C(o*A)));q=C(C(n*n)+C(-.5));i=C(C(y*E)+C(C(n*C(C(m*o)-C(x*A)))+C(u*q)));l=C(i+i);z[b+8>>2]=l;i=C(C(A*E)+C(C(n*C(C(y*x)-C(u*m)))+C(o*q)));j=C(i+i);z[b+4>>2]=j;i=C(C(m*E)+C(C(n*C(C(A*u)-C(o*y)))+C(x*q)));i=C(i+i);z[b>>2]=i;z[b+24>>2]=s-C(D*l);z[b+20>>2]=F-C(D*j);z[b+16>>2]=Q-C(D*i)}xa=h+576|0;return a|0}function zv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=0,x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=0,Y=C(0),Z=C(0),_=C(0),$=C(0),aa=0,ba=0;h=xa-544|0;xa=h;O=z[b+12>>2];T=z[b+8>>2];f=v[f>>2];R=z[b+4>>2];z[h+528>>2]=z[e>>2];y=z[c+20>>2];L=z[c+24>>2];n=z[c>>2];m=z[c+4>>2];l=z[c+8>>2];q=z[c+12>>2];A=z[c+16>>2];v[h+524>>2]=0;z[h+520>>2]=L;z[h+516>>2]=y;z[h+512>>2]=A;z[h+508>>2]=q;z[h+504>>2]=l;z[h+500>>2]=m;z[h+496>>2]=n;M=z[d+20>>2];G=z[d+24>>2];o=z[d>>2];k=z[d+4>>2];j=z[d+8>>2];i=z[d+12>>2];U=z[d+16>>2];v[h+492>>2]=0;z[h+488>>2]=G;z[h+484>>2]=M;z[h+480>>2]=U;z[h+476>>2]=i;z[h+472>>2]=j;z[h+468>>2]=k;z[h+464>>2]=o;x=C(C(C(m*j)-C(k*l))+C(C(n*i)-C(q*o)));E=C(x+x);s=C(C(C(l*o)-C(j*n))+C(C(m*i)-C(q*k)));I=C(s+s);N=C(C(1)-C(x*E));P=C(s*I);S=C(N-P);p=C(C(C(n*k)-C(o*m))+C(C(l*i)-C(q*j)));Q=C(p+p);J=C(p*Q);N=C(N-J);P=C(C(C(1)-P)-J);J=z[a+4>>2];z[h+448>>2]=J;Z=z[e+8>>2];D=C(Z*C(.15000000596046448));H=R<=T?R:T;_=H<=O?H:O;Y=C(_*C(.15000000596046448));D=DJ?J:D;D=C(p*I);V=C(-o);n=C(C(q*i)-C(C(C(n*V)-C(m*k))-C(j*l)));m=C(n*E);q=C(D-m);l=C(p*E);H=C(n*I);I=C(l+H);D=C(D+m);m=C(s*E);F=C(n*Q);E=C(m-F);Q=C(l-H);H=C(m+F);A=C(A-U);y=C(y-M);L=C(L-G);M=C(C(C(V*A)-C(y*k))-C(j*L));G=C(C(i*i)+C(-.5));m=C(C(C(i*C(C(k*A)-C(o*y)))+C(G*L))-C(j*M));m=C(m+m);l=C(C(C(G*y)+C(i*C(C(o*L)-C(j*A))))-C(k*M));l=C(l+l);i=C(C(C(G*A)+C(i*C(C(j*y)-C(k*L))))-C(o*M));o=C(i+i);k=z[a+8>>2];a=w[f+64|0];if(a){i=C(J*C(.800000011920929));L=C(i*i);c=a;while(1){u=v[f+76>>2];c=c-1|0;d=u+B(c,48)|0;j=z[d+24>>2];M=z[d+40>>2];i=z[d+8>>2];A=z[d>>2];y=z[d+4>>2];G=C(m+C(C(S*i)+C(C(Q*A)+C(D*y))));U=C(o+C(C(I*i)+C(C(P*A)+C(E*y))));V=z[d+16>>2];F=z[d+32>>2];A=C(l+C(C(q*i)+C(C(H*A)+C(N*y))));y=z[d+20>>2];$=z[d+36>>2];i=C(C(M*C(G-j))+C(C(C(U-V)*F)+C(C(A-y)*$)));j=C(j-C(G-C(M*i)));G=C(j*j);j=C(V-C(U-C(F*i)));F=C(j*j);j=C(y-C(A-C($*i)));a:{if(L>2];v[d>>2]=v[u>>2];v[d+4>>2]=r;r=v[u+44>>2];v[d+40>>2]=v[u+40>>2];v[d+44>>2]=r;r=v[u+36>>2];v[d+32>>2]=v[u+32>>2];v[d+36>>2]=r;r=v[u+28>>2];v[d+24>>2]=v[u+24>>2];v[d+28>>2]=r;r=v[u+20>>2];v[d+16>>2]=v[u+16>>2];v[d+20>>2]=r;r=v[u+12>>2];v[d+8>>2]=v[u+8>>2];v[d+12>>2]=r;break a}z[d+44>>2]=i}if(c){continue}break}u=w[f+64|0]}b:{c:{d:{e:{if((a|0)!=(u|0)){break e}c=a<<2;i=C(o-z[f+16>>2]);i=i>C(0)?i:C(-i);j=C(l-z[f+20>>2]);j=j>C(0)?j:C(-j);j=i>=j?i:j;F=i;i=C(m-z[f+24>>2]);i=(i>C(0)?i:C(-i))>=C(0)?F:C(0);if(C(J*z[c+103172>>2])<(i<=j?j:i)){break e}if(!(z[c+103204>>2]>C(C(n*z[f+12>>2])+C(C(p*z[f+8>>2])+C(C(x*z[f>>2])+C(s*z[f+4>>2])))))){break d}}c=0;v[f+28>>2]=0;z[f+24>>2]=m;z[f+20>>2]=l;z[f+16>>2]=o;z[f+12>>2]=n;z[f+8>>2]=p;z[f+4>>2]=s;z[f>>2]=x;v[h+444>>2]=0;z[h+440>>2]=m;z[h+436>>2]=l;v[h+428>>2]=0;z[h+424>>2]=S;z[h+420>>2]=q;v[h+412>>2]=0;z[h+408>>2]=D;z[h+404>>2]=N;z[h+432>>2]=o;v[h+396>>2]=0;z[h+416>>2]=I;z[h+384>>2]=P;z[h+400>>2]=E;z[h+388>>2]=H;z[h+392>>2]=Q;t[h+352|0]=0;v[h+348>>2]=3;d=v[h+488>>2];r=v[h+492>>2];W=v[h+484>>2];X=v[h+480>>2];v[h+380>>2]=0;z[h+376>>2]=O;z[h+372>>2]=T;v[h+320>>2]=X;v[h+324>>2]=W;v[h+328>>2]=d;v[h+332>>2]=r;z[h+368>>2]=R;i=C(_*C(.05000000074505806));z[h+344>>2]=i;z[h+340>>2]=i;z[h+336>>2]=Y;v[h+300>>2]=0;i=C(k*C(0));j=C(C(S*i)+C(C(Q*k)+C(D*i)));z[h+296>>2]=m-j;q=C(C(q*i)+C(C(H*k)+C(N*i)));z[h+292>>2]=l-q;v[h+284>>2]=0;z[h+280>>2]=m+j;z[h+276>>2]=l+q;v[h+252>>2]=4;d=v[h+436>>2];v[h+224>>2]=v[h+432>>2];v[h+228>>2]=d;d=v[h+444>>2];v[h+232>>2]=v[h+440>>2];v[h+236>>2]=d;d=v[h+460>>2];v[h+312>>2]=v[h+456>>2];v[h+316>>2]=d;d=v[h+452>>2];v[h+304>>2]=v[h+448>>2];v[h+308>>2]=d;i=C(C(I*i)+C(C(P*k)+C(E*i)));z[h+288>>2]=o-i;z[h+272>>2]=o+i;i=z[h+304>>2];d=1;t[h+256|0]=1;z[h+248>>2]=i;z[h+244>>2]=i;z[h+240>>2]=i;v[h+216>>2]=141148;v[h+220>>2]=h+224;v[h+208>>2]=141808;v[h+212>>2]=h+320;v[h+168>>2]=0;v[h+172>>2]=0;r=h+160|0;v[r>>2]=0;v[r+4>>2]=0;v[h+152>>2]=0;v[h+156>>2]=0;W=h+144|0;v[W>>2]=0;v[W+4>>2]=0;v[h+136>>2]=0;v[h+140>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+192>>2]=0;v[h+124>>2]=0;z[h+120>>2]=z[h+232>>2]-z[h+328>>2];z[h+116>>2]=z[h+228>>2]-z[h+324>>2];z[h+112>>2]=z[h+224>>2]-z[h+320>>2];X=f+67|0;aa=f+71|0;ba=XX(h+216|0,h+208|0,h+112|0,h+528|0,1,X,aa,f+66|0,h+128|0);v[h+108>>2]=0;f:{g:{h:{i:{switch(ba|0){case 4:z[h+96>>2]=z[b+4>>2];z[h+100>>2]=z[b+8>>2];z[h+104>>2]=z[b+12>>2];c=v1(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,z[h+336>>2],h+528|0,1,z[e+8>>2]);break b;case 2:q=z[h+136>>2];i=C(q-z[h+440>>2]);E=z[h+128>>2];k=C(E-z[h+432>>2]);O=z[h+132>>2];j=C(O-z[h+436>>2]);F=C(C(z[h+392>>2]*i)+C(C(z[h+384>>2]*k)+C(j*z[h+388>>2])));break h;case 0:break b;default:break i}}c=w[f+66|0];z[h+80>>2]=Z;r=v[h+92>>2];v[h+8>>2]=v[h+88>>2];v[h+12>>2]=r;r=v[h+84>>2];v[h>>2]=v[h+80>>2];v[h+4>>2]=r;if((J_(h+216|0,h+208|0,X,aa,c,1,h,h+128|0)|0)!=5){break g}q=z[h+136>>2];i=C(q-z[h+440>>2]);E=z[h+128>>2];k=C(E-z[h+432>>2]);O=z[h+132>>2];j=C(O-z[h+436>>2]);F=C(C(z[h+392>>2]*i)+C(C(z[h+384>>2]*k)+C(j*z[h+388>>2])))}T=F;R=z[h+164>>2];I=z[h+168>>2];S=z[h+160>>2];N=z[h+192>>2];P=z[h+408>>2];D=z[h+400>>2];Q=z[h+404>>2];H=z[h+424>>2];A=z[h+416>>2];y=z[h+420>>2];d=0;v[g+12>>2]=0;z[g>>2]=T;z[g+8>>2]=C(H*i)+C(C(A*k)+C(j*y));z[g+4>>2]=C(P*i)+C(C(D*k)+C(j*Q));c=v[h+148>>2];v[g+16>>2]=v[h+144>>2];v[g+20>>2]=c;c=v[h+156>>2];v[g+24>>2]=v[h+152>>2];v[g+28>>2]=c;v[h+108>>2]=1;z[g+44>>2]=N;z[g+40>>2]=I;z[g+36>>2]=R;z[g+32>>2]=S;if(!a){break g}if((a|0)==(u|0)){break f}}z[h+64>>2]=z[b+4>>2];z[h+68>>2]=z[b+8>>2];z[h+72>>2]=z[b+12>>2];c=v1(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,z[h+336>>2],h+528|0,d,z[e+8>>2]);break b}z[h+48>>2]=J*C(.10000000149011612);z[h+44>>2]=N;z[h+40>>2]=I;z[h+36>>2]=R;z[h+32>>2]=S;v[h+28>>2]=0;i=C(q-m);k=C(E-o);j=C(O-l);o=C(C(p*i)+C(C(x*k)+C(s*j)));m=C(C(n*n)+C(-.5));l=C(C(C(m*i)-C(n*C(C(x*j)-C(k*s))))+C(p*o));z[h+24>>2]=l+l;l=C(C(s*o)+C(C(m*j)-C(n*C(C(p*k)-C(i*x)))));z[h+20>>2]=l+l;i=C(C(x*o)+C(C(m*k)-C(n*C(C(s*i)-C(j*p)))));z[h+16>>2]=i+i;a=h+16|0;v2(f,a,h+144|0,h+32|0,h+48|0);v[h+28>>2]=0;i=z[h+476>>2];k=C(C(i*i)+C(-.5));j=z[h+472>>2];p=z[h+168>>2];s=z[h+464>>2];n=z[h+160>>2];o=z[h+468>>2];x=z[h+164>>2];m=C(C(j*p)+C(C(s*n)+C(o*x)));l=C(C(C(i*C(C(s*x)-C(n*o)))+C(k*p))+C(j*m));z[h+24>>2]=l+l;l=C(C(o*m)+C(C(k*x)+C(i*C(C(j*n)-C(p*s)))));z[h+20>>2]=l+l;i=C(C(s*m)+C(C(n*k)+C(i*C(C(o*p)-C(x*j)))));z[h+16>>2]=i+i;r2(f,g,a,a,h+496|0,h+448|0,h+528|0);break c}if(!a){c=0;break b}c=1;b=v[f+76>>2];p=z[b+32>>2];i=p;s=z[b+36>>2];k=s;n=z[b+40>>2];j=n;j:{if((a|0)==1){break j}d=a-1|0;e=d&1;j=n;k=s;i=p;if((a|0)!=2){u=d&-2;d=0;while(1){a=b+B(c,48)|0;i=C(C(i+z[a+32>>2])+z[a+80>>2]);j=C(C(j+z[a+40>>2])+z[a+88>>2]);k=C(C(k+z[a+36>>2])+z[a+84>>2]);c=c+2|0;d=d+2|0;if((u|0)!=(d|0)){continue}break}}if(!e){break j}a=b+B(c,48)|0;i=C(i+z[a+32>>2]);j=C(j+z[a+40>>2]);k=C(k+z[a+36>>2])}v[h+236>>2]=0;o=z[h+472>>2];a=C(C(j*j)+C(C(i*i)+C(k*k)))>C(1.1920928955078125e-7);j=a?j:n;n=z[h+464>>2];p=a?i:p;x=z[h+468>>2];k=a?k:s;s=C(C(o*j)+C(C(n*p)+C(x*k)));i=z[h+476>>2];m=C(C(i*i)+C(-.5));l=C(C(o*s)+C(C(i*C(C(n*k)-C(p*x)))+C(j*m)));l=C(l+l);q=C(C(n*s)+C(C(i*C(C(x*j)-C(k*o)))+C(p*m)));q=C(q+q);i=C(C(x*s)+C(C(i*C(C(o*p)-C(j*n)))+C(k*m)));k=C(i+i);i=C(C(1)/C(K(C(C(l*l)+C(C(q*q)+C(k*k))))));z[h+232>>2]=l*i;z[h+228>>2]=k*i;z[h+224>>2]=q*i;a=h+224|0;r2(f,g,a,a,h+496|0,h+448|0,h+528|0)}c=1}xa=h+544|0;return c|0}function V1(a,b,c,d,e,f,g,h,i,j){var k=C(0),l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=0,ba=C(0),ca=0,da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=0,la=C(0),ma=C(0),na=C(0),oa=0,pa=0,qa=0,ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=0,wa=C(0),ya=C(0),za=C(0);m=xa+-64|0;xa=m;ja=x[c+16>>1];pa=v[a+32>>2];o=v[e+40>>2];X=z[o+40>>2];Q=z[o+36>>2];R=z[o+24>>2];r=z[o+20>>2];p=z[o+32>>2];n=z[o+16>>2];y=z[c+8>>2];q=z[o+8>>2];L=z[c>>2];l=z[o>>2];M=z[c+4>>2];k=z[o+4>>2];v[m+60>>2]=0;p=C(C(X*y)+C(C(p*L)+C(M*Q)));l=C(C(q*y)+C(C(l*L)+C(M*k)));k=C(C(R*y)+C(C(n*L)+C(M*r)));q=C(C(1)/C(K(C(C(p*p)+C(C(l*l)+C(k*k))))));z[m+56>>2]=p*q;z[m+52>>2]=k*q;z[m+48>>2]=l*q;p2(m,m+48|0);qa=x[d+16>>1];ca=v[b+32>>2];aa=w[c+18|0];S=(m-(aa<<4)|0)-16|0;o=S;xa=o;s=w[d+18|0];o=(s<<4)+16|0;N=S-o|0;xa=N;ka=N-(s+15&496)|0;xa=ka;oa=ka-o|0;xa=oa;Ba[v[v[e>>2]+16>>2]](e,ja+pa|0,aa,v[a+28>>2],S);Ba[v[v[f>>2]+16>>2]](f,ca+qa|0,w[d+18|0],v[b+28>>2],N);O=C(34028234663852886e22);da=C(-34028234663852886e22);T=C(-34028234663852886e22);E=C(-34028234663852886e22);A=C(34028234663852886e22);Y=C(34028234663852886e22);a=w[c+18|0];if(a){L=z[m+40>>2];M=z[m+24>>2];X=z[m+36>>2];Q=z[m+20>>2];l=C(-34028234663852886e22);F=C(34028234663852886e22);R=z[m+8>>2];r=z[m+4>>2];p=z[m+32>>2];n=z[m+16>>2];q=z[m>>2];e=0;k=C(34028234663852886e22);I=C(-34028234663852886e22);while(1){b=(e<<4)+S|0;v[b+12>>2]=0;P=z[b+8>>2];Z=z[b>>2];y=z[b+4>>2];z[b+8>>2]=C(L*P)+C(C(R*Z)+C(y*M));G=C(C(X*P)+C(C(r*Z)+C(y*Q)));z[b+4>>2]=G;y=C(C(p*P)+C(C(q*Z)+C(y*n)));z[b>>2]=y;l=l>G?l:G;I=y>2];sa=z[N+4>>2];ta=z[N>>2];J=z[S+8>>2];e=w[d+18|0];a:{if(!e){e=0;U=C(34028234663852886e22);q=C(-34028234663852886e22);break a}Z=C(J+z[j>>2]);da=z[m+40>>2];H=z[m+24>>2];ea=z[m+36>>2];fa=z[m+20>>2];ga=C(-34028234663852886e22);U=C(34028234663852886e22);y=z[m+56>>2];L=z[m+52>>2];M=z[m+48>>2];ha=z[m+8>>2];ia=z[m+4>>2];F=z[m+32>>2];I=z[m+16>>2];G=z[m>>2];b=0;ba=C(34028234663852886e22);O=C(-34028234663852886e22);while(1){a=b<<4;o=a+N|0;X=z[o+12>>2];Q=z[o+8>>2];p=C(Q-z[g+56>>2]);R=z[o>>2];l=C(R-z[g+48>>2]);r=z[o+4>>2];k=C(r-z[g+52>>2]);n=C(C(z[g+40>>2]*p)+C(C(z[g+32>>2]*l)+C(k*z[g+36>>2])));q=C(C(z[g+8>>2]*p)+C(C(z[g>>2]*l)+C(k*z[g+4>>2])));l=C(C(z[g+24>>2]*p)+C(C(z[g+16>>2]*l)+C(k*z[g+20>>2])));k=C(C(da*n)+C(C(ha*q)+C(l*H)));p=C(k-J);z[a+oa>>2]=p;v[o+12>>2]=0;z[o+8>>2]=J;u=C(C(ea*n)+C(C(ia*q)+C(l*fa)));z[o+4>>2]=u;D=C(C(F*n)+C(C(G*q)+C(l*I)));z[o>>2]=D;pa=uU;aa=D>ba;a=b+ka|0;b:{if(kD|D>T|(uE)){break b}ja=w[c+18|0];if(!ja){break b}a=((ja<<4)+S|0)-16|0;k=z[a>>2];l=z[a+4>>2];s=0;o=0;c:{while(1){q=k;if(k==D&l==u){break c}n=l;a=(s<<4)+S|0;k=z[a>>2];l=z[a+4>>2];if(D==k&u==l){break c}d:{if((n>u|0)==(l>u|0)){break d}P=C(l-n);n=C(C(C(q+C(1.1920928955078125e-7))*P)+C(C(u-n)*C(k-q)));q=C(D*P);a=P>C(0);if(!((a?n:q)>=(a?q:n))){break d}if((o|0)==1){break b}o=o+1|0}s=s+1|0;if((ja|0)!=(s|0)){continue}break}if(!o){break b}}a=B(v[i>>2],48)+h|0;z[a+12>>2]=X;z[a+8>>2]=Q;z[a+4>>2]=r;z[a>>2]=R;a=B(v[i>>2],48)+h|0;z[a+16>>2]=C(ha*J)+C(C(G*D)+C(ia*u));v[a+28>>2]=0;z[a+24>>2]=C(da*J)+C(C(F*D)+C(ea*u));z[a+20>>2]=C(H*J)+C(C(I*D)+C(fa*u));a=v[i>>2];v[i>>2]=a+1;a=B(a,48)+h|0;z[a+32>>2]=M;z[a+44>>2]=p;z[a+40>>2]=y;z[a+36>>2]=L;va=va+1|0;e=w[d+18|0];break b}t[a|0]=0}ga=pa?ga:u;O=qa?O:D;U=ca?U:u;ba=aa?ba:D;b=b+1|0;if(e>>>0>b>>>0){continue}break}da=C(O+C(1.1920928955078125e-7));U=C(U+C(-1.1920928955078125e-7));O=C(ba+C(-1.1920928955078125e-7));q=C(ga+C(1.1920928955078125e-7))}e:{if((e|0)==(va|0)){break e}la=z[m+52>>2];ma=z[m+48>>2];na=z[m+56>>2];a=w[c+18|0];f:{if(!a){a=0;b=0;break f}b=v[f+40>>2];r=z[d+8>>2];p=z[d>>2];l=z[d+4>>2];k=C(C(z[b+40>>2]*r)+C(C(z[b+32>>2]*p)+C(l*z[b+36>>2])));ua=k;n=C(C(z[b+8>>2]*r)+C(C(z[b>>2]*p)+C(l*z[b+4>>2])));l=C(C(z[b+24>>2]*r)+C(C(z[b+16>>2]*p)+C(l*z[b+20>>2])));k=C(C(1)/C(K(C(C(k*k)+C(C(n*n)+C(l*l))))));ea=C(ua*k);fa=C(C(z[g+40>>2]*na)+C(C(z[g+8>>2]*ma)+C(la*z[g+24>>2])));ha=C(n*k);ia=C(C(z[g+32>>2]*na)+C(C(z[g>>2]*ma)+C(la*z[g+16>>2])));F=C(l*k);I=C(C(z[g+36>>2]*na)+C(C(z[g+4>>2]*ma)+C(la*z[g+20>>2])));G=C(C(ea*fa)+C(C(ha*ia)+C(F*I)));P=z[m+40>>2];Z=z[m+36>>2];y=z[m+24>>2];L=z[m+20>>2];M=z[m+32>>2];X=z[m+16>>2];Q=z[m+8>>2];R=z[m+4>>2];r=z[m>>2];f=0;b=0;while(1){ca=(f<<4)+S|0;A=z[ca>>2];g:{if(Ada){break g}E=z[ca+4>>2];if(E>2];l=z[e+4>>2];s=0;o=0;h:{while(1){n=k;if(k==A&l==E){break h}p=l;e=N+(s<<4)|0;k=z[e>>2];l=z[e+4>>2];if(A==k&E==l){break h}i:{if((p>E|0)==(l>E|0)){break i}H=C(l-p);p=C(C(C(n+C(1.1920928955078125e-7))*H)+C(C(E-p)*C(k-n)));n=C(A*H);e=H>C(0);if(!((e?p:n)>=(e?n:p))){break i}if((o|0)==1){break g}o=o+1|0}s=s+1|0;if((aa|0)!=(s|0)){continue}break}if(!o){break g}}k=z[ca+8>>2];Y=C(C(P*k)+C(C(M*A)+C(E*Z)));H=C(C(Q*k)+C(C(r*A)+C(E*R)));p=C(C(y*k)+C(C(X*A)+C(E*L)));n=C(z[g+56>>2]+C(C(z[g+40>>2]*Y)+C(C(z[g+8>>2]*H)+C(p*z[g+24>>2]))));l=C(z[g+48>>2]+C(C(z[g+32>>2]*Y)+C(C(z[g>>2]*H)+C(p*z[g+16>>2]))));k=C(z[g+52>>2]+C(C(z[g+36>>2]*Y)+C(C(z[g+4>>2]*H)+C(p*z[g+20>>2]))));A=C(C(C(ea*C(ra-n))+C(C(ha*C(ta-l))+C(F*C(sa-k))))/G);if(A>z[j>>2]){break g}a=B(v[i>>2],48)+h|0;v[a+12>>2]=0;z[a+8>>2]=n+C(fa*A);z[a+4>>2]=k+C(I*A);z[a>>2]=l+C(ia*A);a=B(v[i>>2],48)+h|0;z[a+16>>2]=H;v[a+28>>2]=0;z[a+24>>2]=Y;z[a+20>>2]=p;a=v[i>>2];v[i>>2]=a+1;a=B(a,48)+h|0;z[a+32>>2]=ma;z[a+44>>2]=A;z[a+40>>2]=na;z[a+36>>2]=la;b=b+1|0;a=w[c+18|0]}f=f+1|0;if(f>>>0<(a&255)>>>0){continue}break}}if((a&255)==(b|0)){break e}f=w[d+18|0];if(!f){break e}e=f-1|0;E=z[m+20>>2];D=z[m+24>>2];A=z[m+36>>2];U=z[m+40>>2];Y=z[m+16>>2];da=z[m+4>>2];H=z[m>>2];ga=z[m+8>>2];ra=z[m+32>>2];o=a;s=0;while(1){b=s;j:{if(!(w[e+ka|0]?1:w[b+ka|0])){break j}if(!(o&255)){o=0;break j}s=b<<4;o=s+N|0;V=z[o+4>>2];f=e<<4;e=f+N|0;_=z[e+4>>2];sa=V>_?V:_;W=z[o>>2];$=z[e>>2];ta=W>$?W:$;ea=V<_?V:_;fa=W<$?W:$;ha=C(_-V);ia=C($-W);F=C(J+z[s+oa>>2]);I=C(C(J+z[f+oa>>2])-F);e=(((a&255)<<4)+S|0)-16|0;k=z[e+4>>2];l=z[e>>2];s=0;while(1){n=l;q=k;e=(s<<4)+S|0;k=z[e+4>>2];l=z[e>>2];k:{if(fa>(l>n?l:n)|ta<(l(k>q?k:q))){break k}r=C(C(C(l-W)*C(q-V))-C(C(k-V)*C(n-W)));p=C(C(C(l-$)*C(q-_))-C(C(k-_)*C(n-$)));if(!(C(r*p)z[j>>2]){break k}P=z[g+48>>2];Z=z[g+32>>2];y=z[g>>2];L=z[g+16>>2];M=z[g+52>>2];X=z[g+36>>2];Q=z[g+4>>2];R=z[g+20>>2];r=z[g+56>>2];p=z[g+40>>2];n=z[g+8>>2];q=z[g+24>>2];a=B(v[i>>2],48)+h|0;v[a+12>>2]=0;wa=r;ya=p;ba=C(W-C(ia*T));r=C(V-C(ha*T));p=C(C(ra*ba)+C(r*A));O=C(C(U*u)+p);za=n;n=C(C(H*ba)+C(r*da));T=C(C(ga*u)+n);ua=q;q=C(C(Y*ba)+C(r*E));r=C(C(D*u)+q);z[a+8>>2]=wa+C(C(ya*O)+C(C(za*T)+C(ua*r)));z[a+4>>2]=M+C(C(X*O)+C(C(Q*T)+C(r*R)));z[a>>2]=P+C(C(Z*O)+C(C(y*T)+C(r*L)));a=B(v[i>>2],48)+h|0;z[a+16>>2]=C(ga*J)+n;v[a+28>>2]=0;z[a+24>>2]=C(U*J)+p;z[a+20>>2]=C(D*J)+q;a=v[i>>2];v[i>>2]=a+1;a=B(a,48)+h|0;z[a+32>>2]=ma;z[a+44>>2]=G;z[a+40>>2]=na;z[a+36>>2]=la;a=w[c+18|0]}s=s+1|0;if(s>>>0<(a&255)>>>0){continue}break}f=w[d+18|0];o=a}e=b;s=b+1|0;if(s>>>0<(f&255)>>>0){continue}break}}xa=m- -64|0}function NW(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0);f=xa-496|0;xa=f;S=v[c+32>>2];a:{if(!e){X=C(1);h=C(0);break a}X=C(1);h=C(0);if(x[e+12>>1]!=2){break a}X=z[e+8>>2];$=z[e>>2];h=z[e+4>>2]}aa=h;L=z[c+8>>2];M=z[c+12>>2];N=z[c+4>>2];v[f+492>>2]=0;z[f+488>>2]=M;z[f+484>>2]=L;z[f+480>>2]=N;g=v[c+16>>2];O=v[c+20>>2];P=v[c+28>>2];v[f+472>>2]=v[c+24>>2];v[f+476>>2]=P;v[f+464>>2]=g;v[f+468>>2]=O;Q=z[a+8>>2];R=z[a+12>>2];A=z[a+4>>2];q=z[d+20>>2];k=z[b+20>>2];D=z[d+24>>2];j=z[b+24>>2];U=z[b+8>>2];V=z[b+4>>2];l=z[b+12>>2];m=z[b>>2];H=z[d+12>>2];I=z[d>>2];i=z[d+16>>2];h=z[b+16>>2];J=z[d+4>>2];r=z[d+8>>2];v[f+460>>2]=0;v[f+444>>2]=0;v[f+428>>2]=0;h=C(h-i);o=C(h+h);h=C(k-q);k=C(h+h);h=C(j-D);j=C(h+h);i=C(C(C(C(-I)*o)-C(k*J))-C(r*j));h=C(C(H*H)+C(-.5));z[f+456>>2]=C(C(j*h)+C(H*C(C(J*o)-C(I*k))))-C(r*i);z[f+452>>2]=C(C(k*h)+C(H*C(C(I*j)-C(r*o))))-C(J*i);d=f+448|0;z[d>>2]=C(C(o*h)+C(H*C(C(r*k)-C(J*j))))-C(I*i);T=C(C(m*J)+C(C(C(H*U)-C(l*r))-C(I*V)));n=C(C(U*I)+C(C(C(H*V)-C(l*J))-C(r*m)));p=C(n+n);i=C(T*p);j=C(C(r*U)+C(C(J*V)+C(C(H*l)+C(I*m))));m=C(C(V*r)+C(C(C(H*m)-C(l*I))-C(J*U)));l=C(m+m);h=C(j*l);z[f+436>>2]=i-h;o=C(T*l);q=C(j*p);z[f+432>>2]=o+q;z[f+424>>2]=h+i;k=C(l*n);D=C(T+T);j=C(j*D);z[f+416>>2]=k-j;h=C(C(1)-C(m*l));i=C(n*p);z[f+440>>2]=h-i;m=h;h=C(T*D);z[f+420>>2]=m-h;v[f+412>>2]=0;z[f+408>>2]=o-q;z[f+404>>2]=k+j;z[f+400>>2]=C(C(1)-i)-h;t[f+272|0]=0;v[f+264>>2]=0;v[f+268>>2]=0;v[f+256>>2]=0;v[f+260>>2]=0;v[f+248>>2]=0;v[f+252>>2]=0;v[f+240>>2]=0;v[f+244>>2]=0;v[f+384>>2]=S+16;v[f+392>>2]=v[S+56>>2]+B(w[S+55|0],20);t[f+396|0]=w[S+54|0];i=C(N*z[S+68>>2]);h=C(L*z[S+72>>2]);i=h>=i?i:h;h=C(M*z[S+76>>2]);h=h>=i?i:h;z[f+264>>2]=h*C(.02500000037252903);z[f+256>>2]=h*C(.10000000149011612);z[f+260>>2]=h*C(.05000000074505806);b=f+240|0;FV(f+480|0,f+464|0,f+288|0,f+336|0,b,N==C(1)&L==C(1)&M==C(1));v[f+388>>2]=v[S+60>>2];v[f+236>>2]=0;z[f+232>>2]=R;z[f+228>>2]=Q;t[f+208|0]=0;v[f+204>>2]=3;v[f+176>>2]=0;v[f+180>>2]=0;v[f+184>>2]=0;v[f+188>>2]=0;z[f+224>>2]=A;h=A<=Q?A:Q;i=h<=R?h:R;h=C(i*C(.05000000074505806));z[f+200>>2]=h;z[f+196>>2]=h;z[f+192>>2]=i*C(.15000000596046448);v[f+32>>2]=141468;v[f+40>>2]=f+400;v[f+36>>2]=f+176;a=v[f+420>>2];c=f- -64|0;v[c>>2]=v[f+416>>2];v[c+4>>2]=a;a=v[f+428>>2];v[f+72>>2]=v[f+424>>2];v[f+76>>2]=a;a=v[f+412>>2];v[f+56>>2]=v[f+408>>2];v[f+60>>2]=a;a=v[f+436>>2];v[f+80>>2]=v[f+432>>2];v[f+84>>2]=a;a=v[f+444>>2];v[f+88>>2]=v[f+440>>2];v[f+92>>2]=a;a=v[d+4>>2];v[f+96>>2]=v[d>>2];v[f+100>>2]=a;a=v[f+460>>2];v[f+104>>2]=v[f+456>>2];v[f+108>>2]=a;a=v[f+404>>2];v[f+48>>2]=v[f+400>>2];v[f+52>>2]=a;j=z[f+52>>2];z[f+52>>2]=z[c>>2];i=z[f+72>>2];h=z[f+56>>2];z[f+56>>2]=z[f+80>>2];z[f+72>>2]=z[f+84>>2];z[f+80>>2]=h;z[f+84>>2]=i;z[c>>2]=j;v[f+24>>2]=141216;v[f+28>>2]=b;v[f>>2]=0;a=0;g=xa-288|0;xa=g;v[g+76>>2]=0;j=z[d+8>>2];i=z[d>>2];h=z[d+4>>2];v[g+60>>2]=0;b=C(C(j*j)+C(C(i*i)+C(h*h)))>C(0);s=b?j:C(0);z[g+56>>2]=s;y=b?h:C(0);z[g+52>>2]=y;E=b?i:C(1);z[g+48>>2]=E;c=v[f+36>>2];O=w[c+32|0];b=v[f+28>>2];P=w[b+32|0];W=C((O?z[c+16>>2]:C(0))+(P?z[b+16>>2]:C(0)));ba=C(z[f>>2]+W);h=C(C(1)/C(K(C(C(s*s)+C(C(E*E)+C(y*y))))));j=C(s*h);i=C(y*h);h=C(E*h);k=z[b+20>>2];D=z[c+20>>2];ca=C(G(C((k>2];v[g+24>>2]=v[g+56>>2];v[g+28>>2]=b;b=v[g+52>>2];v[g+16>>2]=v[g+48>>2];v[g+20>>2]=b;c=v[f+40>>2];da=z[c+56>>2];ea=z[c+40>>2];fa=z[c+24>>2];ga=z[c+52>>2];ha=z[c+36>>2];b=v[f+36>>2];Y=z[b+56>>2];ia=z[c+20>>2];Z=z[b+52>>2];ja=z[c+8>>2];ka=z[c+48>>2];la=z[c+32>>2];ma=z[c>>2];H=z[c+16>>2];I=z[f+88>>2];J=z[f+56>>2];r=z[f+72>>2];U=z[c+4>>2];_=z[b+48>>2];V=z[f+80>>2];T=z[f+48>>2];L=z[f+64>>2];M=z[f+84>>2];N=z[f+52>>2];Q=z[f+68>>2];d=v[f+28>>2];R=z[d+56>>2];A=z[d+52>>2];n=z[d+72>>2];c=d- -64|0;l=z[c>>2];p=z[d+68>>2];m=z[d+88>>2];o=z[d+80>>2];q=z[d+84>>2];k=z[d+48>>2];v[g+284>>2]=0;z[g+280>>2]=C(m*s)+C(C(o*E)+C(y*q));z[g+276>>2]=C(n*s)+C(C(l*E)+C(y*p));z[g+272>>2]=C(R*s)+C(C(k*E)+C(y*A));b=HV(d,g+272|0);m=j;j=C(-E);r=C(C(C(J*j)-C(r*y))-C(I*s))>C(0)?Y:C(-Y);L=C(C(C(T*j)-C(L*y))-C(V*s))>C(0)?_:C(-_);M=C(C(C(N*j)-C(Q*y))-C(M*s))>C(0)?Z:C(-Z);l=C(da+C(C(ea*r)+C(C(ja*L)+C(fa*M))));b=v[d+152>>2]+B(b,12)|0;N=z[b+8>>2];A=z[b>>2];n=z[b+4>>2];p=C(C(z[d+88>>2]*N)+C(C(z[d+56>>2]*A)+C(n*z[d+72>>2])));Q=C(l-p);o=h;k=C(ka+C(C(la*r)+C(C(ma*L)+C(M*H))));j=C(C(z[d+80>>2]*N)+C(C(z[d+48>>2]*A)+C(n*z[c>>2])));R=C(k-j);q=i;i=C(ga+C(C(ha*r)+C(C(U*L)+C(M*ia))));h=C(C(z[d+84>>2]*N)+C(C(z[d+52>>2]*A)+C(n*z[d+68>>2])));A=C(i-h);n=C(C(m*Q)+C(C(o*R)+C(q*A)));if(n>ba){break b}if(!(!(n>W)|!(n>C(D*C(.9997749924659729))))){IV(g+208|0,g+144|0,g+80|0,g+48|0,g+272|0,g,v[g+76>>2]);k=z[v[f+36>>2]+16>>2];j=z[g+272>>2];i=z[g+276>>2];h=z[g+280>>2];v[f+172>>2]=0;z[f+168>>2]=h-(O?C(m*k):C(0));z[f+164>>2]=i-(O?C(q*k):C(0));z[f+160>>2]=j-(O?C(o*k):C(0));k=z[v[f+28>>2]+16>>2];j=z[g>>2];i=z[g+4>>2];h=z[g+8>>2];v[f+156>>2]=0;z[f+152>>2]=h+(P?C(m*k):C(-0));z[f+148>>2]=i+(P?C(q*k):C(-0));z[f+144>>2]=j+(P?C(o*k):C(-0));z[f+112>>2]=G(C(D-W),C(0));v[f+140>>2]=0;z[f+136>>2]=-m;z[f+132>>2]=-q;z[f+128>>2]=-o;a=1;break b}c=v[g+76>>2];b=c<<4;d=b+(g+144|0)|0;v[d+12>>2]=0;z[d+8>>2]=l;z[d+4>>2]=i;z[d>>2]=k;d=b+(g+80|0)|0;v[d+12>>2]=0;z[d+8>>2]=p;z[d+4>>2]=h;z[d>>2]=j;b=b+(g+208|0)|0;v[b+12>>2]=0;z[b+8>>2]=Q;z[b+4>>2]=A;z[b>>2]=R;v[g+76>>2]=c+1;c:{d:{switch(c-1|0){case 0:k=z[g+216>>2];n=C(z[g+232>>2]-k);j=z[g+208>>2];l=C(z[g+224>>2]-j);i=z[g+212>>2];p=C(z[g+228>>2]-i);h=C(C(n*n)+C(C(l*l)+C(p*p)));if(h<=C(1.1920928955078125e-7)){v[g+76>>2]=1;b=v[g+212>>2];v[g+272>>2]=v[g+208>>2];v[g+276>>2]=b;b=v[g+220>>2];v[g+280>>2]=v[g+216>>2];v[g+284>>2]=b;break c}v[g+284>>2]=0;h=C(F(C(C(C(C(C(-j)*l)-C(p*i))-C(k*n))/h),C(1)));h=h>C(0)?h:C(0);z[g+280>>2]=k+C(n*h);z[g+276>>2]=i+C(p*h);z[g+272>>2]=j+C(l*h);break c;case 1:JV(g+272|0,g+208|0,g+144|0,g+80|0,g+76|0);break c;case 2:N_(g+272|0,g+208|0,g+144|0,g+80|0,g+76|0);break c;default:break d}}v[g+284>>2]=0;z[g+280>>2]=Q;z[g+276>>2]=A;z[g+272>>2]=R}b=v[g+276>>2];v[g+48>>2]=v[g+272>>2];v[g+52>>2]=b;b=v[g+284>>2];v[g+56>>2]=v[g+280>>2];v[g+60>>2]=b;s=z[g+56>>2];E=z[g+48>>2];y=z[g+52>>2];k=C(K(C(C(s*s)+C(C(E*E)+C(y*y)))));if(ca>2]=0;a=v[g+276>>2];v[f+116>>2]=v[g+272>>2];v[f+120>>2]=a;v[f+124>>2]=v[g+280>>2];a=2;break b}p=z[v[f+28>>2]+16>>2];k=z[v[f+36>>2]+16>>2];IV(g+208|0,g+144|0,g+80|0,g+16|0,g+272|0,g,v[g+76>>2]);l=z[v[f+36>>2]+16>>2];j=z[g+272>>2];i=z[g+276>>2];h=z[g+280>>2];v[f+172>>2]=0;z[f+168>>2]=h-(O?C(m*l):C(0));z[f+164>>2]=i-(O?C(q*l):C(0));z[f+160>>2]=j-(O?C(o*l):C(0));l=z[v[f+28>>2]+16>>2];j=z[g>>2];i=z[g+4>>2];h=z[g+8>>2];v[f+156>>2]=0;z[f+152>>2]=h+(P?C(m*l):C(-0));z[f+148>>2]=i+(P?C(q*l):C(-0));z[f+144>>2]=j+(P?C(o*l):C(-0));v[f+140>>2]=0;z[f+136>>2]=-m;z[f+132>>2]=-q;z[f+128>>2]=-o;h=C(G(C(D-W),C(0)));z[f+112>>2]=h;a=v[g+40>>2];v[f+116>>2]=v[g+36>>2];v[f+120>>2]=a;v[f+124>>2]=v[g+44>>2];a=h>(W>C(0)?W:C((k>p?p:k)*C(.20000000298023224)))?1:2}xa=g+288|0;if(!(!e|(a|0)!=2)){z[e+8>>2]=X;z[e+4>>2]=aa;z[e>>2]=$}if(e){u[e+12>>1]=((a|0)==2)<<1}xa=f+496|0;return(a|0)==2|0}function z1(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0,m=0,n=C(0),o=0,p=0,q=0,r=0,s=0,u=0,x=C(0),A=C(0),D=0,E=0,F=0,G=0,H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=0;a:{d=v[a+2324>>2];if(!d){break a}u=v[a+2328>>2];if(u>>>0>=2){g=1;while(1){e=(g<<2)+a|0;h=e+2044|0;p=v[h>>2];e=e+2048|0;k=v[e>>2];b:{if(!(z[p+32>>2]>z[k+32>>2])){break b}v[h>>2]=k;v[e>>2]=p;e=g-2|0;if((e|0)<0){break b}while(1){h=(e<<2)+a|0;p=h+2048|0;q=v[p>>2];if(z[k+32>>2]>=z[q+32>>2]){break b}v[h+2052>>2]=q;v[p>>2]=k;h=(e|0)>0;e=e-1|0;if(h){continue}break}}g=g+1|0;if((u|0)!=(g|0)){continue}break}}G=a+2224|0;k=a+2048|0;c:{if(u){d=0;while(1){e=v[k+(d<<2)>>2];v[e+16>>2]=0;q=v[e+52>>2]-v[e+48>>2]|0;v[e+56>>2]=q;v[e+20>>2]=e;v[e+24>>2]=e;i=z[G>>2];g=d;d:{while(1){if(!g){break d}g=g-1|0;p=v[k+(g<<2)>>2];h=v[p+24>>2];if(!(i<=C(C(z[e+8>>2]*z[h+8>>2])+C(C(z[e>>2]*z[h>>2])+C(z[e+4>>2]*z[h+4>>2]))))){continue}break}v[p+16>>2]=e;v[h+20>>2]=e;v[e+24>>2]=h;g=v[p+24>>2];v[g+56>>2]=q+v[g+56>>2]}d=d+1|0;if((u|0)!=(d|0)){continue}break}s=a+2240|0;q=v[a+2320>>2];while(1){e:{d=v[k+(r<<2)>>2];if(!d|v[d+24>>2]!=(d|0)){break e}while(1){g=v[d+16>>2];if(!g){break e}p=d;d=g;e=v[p+52>>2];j=v[p+48>>2];if(e>>>0<=j>>>0){continue}h=v[d+52>>2];if(h>>>0<=y[d+48>>2]){continue}while(1){g=v[d+48>>2];if(h>>>0>g>>>0){o=q+(j<<6)|0;while(1){e=q+(g<<6)|0;i=C(z[e+24>>2]-z[o+24>>2]);A=C(i*i);i=C(z[e+16>>2]-z[o+16>>2]);n=C(i*i);i=C(z[e+20>>2]-z[o+20>>2]);if(z[s>>2]>C(A+C(n+C(i*i)))){h=(q+(h<<6)|0)+-64|0;f=v[h+4>>2];v[e>>2]=v[h>>2];v[e+4>>2]=f;v[e+48>>2]=v[h+48>>2];f=v[h+44>>2];v[e+40>>2]=v[h+40>>2];v[e+44>>2]=f;f=v[h+36>>2];v[e+32>>2]=v[h+32>>2];v[e+36>>2]=f;f=v[h+28>>2];v[e+24>>2]=v[h+24>>2];v[e+28>>2]=f;f=v[h+20>>2];v[e+16>>2]=v[h+16>>2];v[e+20>>2]=f;f=v[h+12>>2];v[e+8>>2]=v[h+8>>2];v[e+12>>2]=f;h=v[d+52>>2]-1|0;v[d+52>>2]=h;g=g-1|0}g=g+1|0;if(g>>>0>>0){continue}break}e=v[p+52>>2]}j=j+1|0;if(j>>>0>>0){continue}break}continue}}r=r+1|0;if((u|0)!=(r|0)){continue}break}d=v[a+2324>>2];g=v[a+2328>>2];break c}g=0}h=g;r=v[a+2320>>2];p=d;q=k;u=b;d=0;j=xa-80|0;xa=j;k=v[a+2216>>2];f:{if(!w[k+62|0]){if(!h){break f}b=k+56|0;while(1){g=v[q+(d<<2)>>2];if(v[g+24>>2]==(g|0)){e=l&255;if(e>>>0>5){break f}B2(j+16|0,(B(w[b+e|0],400)+k|0)- -64|0,r,p,g,u);g=w[k+62|0];z[((w[g+b|0]<<2)+k|0)+32>>2]=z[j+16>>2];l=g+1|0;t[k+62|0]=l}d=d+1|0;if((h|0)!=(d|0)){continue}break}break f}v[j+48>>2]=2139095039;v[j+32>>2]=0;v[j+36>>2]=0;v[j+40>>2]=j+16;if(!h){break f}H=k+56|0;while(1){e=v[q+(E<<2)>>2];g:{if((e|0)!=v[e+24>>2]){break g}h:{i:{f=w[k+62|0];if(!f){break i}g=e;I=z[G>>2];J=z[e+8>>2];L=z[e+4>>2];M=z[e>>2];m=0;while(1){F=k+m|0;s=B(w[F+56|0],400)+k|0;o=s- -64|0;i=z[s+104>>2];n=z[s+100>>2];x=z[s+96>>2];D=v[s+448>>2];j:{if(D>>>0<2){break j}b=1;d=D-1|0;N=d&1;if((D|0)!=2){O=d&-2;l=0;while(1){d=(b<<6)+o|0;x=C(C(x+z[d+32>>2])+z[d+96>>2]);i=C(C(i+z[d+40>>2])+z[d+104>>2]);n=C(C(n+z[d+36>>2])+z[d+100>>2]);b=b+2|0;l=l+2|0;if((O|0)!=(l|0)){continue}break}}if(!N){break j}b=(b<<6)+o|0;x=C(x+z[b+32>>2]);i=C(i+z[b+40>>2]);n=C(n+z[b+36>>2])}A=i;i=C(C(1)/C(K(C(C(i*i)+C(C(x*x)+C(n*n))))));A=C(A*i);x=C(x*i);i=C(n*i);if(C(C(J*A)+C(C(M*x)+C(L*i)))>=I){d=0;l=0;if(!D){break h}while(1){b=(l<<6)+o|0;f=v[b+4>>2];d=(l+p<<6)+r|0;v[d>>2]=v[b>>2];v[d+4>>2]=f;v[d+48>>2]=v[b+48>>2];f=v[b+44>>2];v[d+40>>2]=v[b+40>>2];v[d+44>>2]=f;f=v[b+36>>2];v[d+32>>2]=v[b+32>>2];v[d+36>>2]=f;f=v[b+28>>2];v[d+24>>2]=v[b+24>>2];v[d+28>>2]=f;f=v[b+20>>2];v[d+16>>2]=v[b+16>>2];v[d+20>>2]=f;f=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=f;d=v[s+448>>2];l=l+1|0;if(d>>>0>l>>>0){continue}break}break h}m=m+1|0;if(f>>>0>m>>>0){continue}break}if(f>>>0<6){break i}b=f-1|0;l=b&-2;o=b&1;h=0;g=k+32|0;q=k+56|0;d=1;b=0;while(1){s=d+1|0;h=z[g+(w[d+q|0]<<2)>>2]>z[g+(w[h+q|0]<<2)>>2]?d:h;h=z[g+(w[q+s|0]<<2)>>2]>z[g+(w[h+q|0]<<2)>>2]?s:h;d=d+2|0;b=b+2|0;if((l|0)!=(b|0)){continue}break}if(o){g=d;b=k+56|0;q=w[b+d|0]<<2;d=k+32|0;h=z[q+d>>2]>z[d+(w[b+h|0]<<2)>>2]?g:h}b=h+k|0;d=w[b+56|0];if(!(z[((d<<2)+k|0)+32>>2]>z[e+32>>2])){break f}d=B(d,400)+k|0;v[d+448>>2]=0;B2(j,d- -64|0,r,p,e,u);z[((w[b+56|0]<<2)+k|0)+32>>2]=z[j>>2];break f}B2(j,(B(w[f+H|0],400)+k|0)- -64|0,r,p,e,u);b=w[k+62|0];z[((w[b+H|0]<<2)+k|0)+32>>2]=z[j>>2];t[k+62|0]=b+1;break g}v[j+40>>2]=e;z[j+24>>2]=A;z[j+20>>2]=i;z[j+16>>2]=x;v[j+28>>2]=0;v[j+32>>2]=0;v[j+64>>2]=p;v[j+68>>2]=d+p;v[v[e+20>>2]+16>>2]=j+16;d=v[e+56>>2]+d|0;v[e+56>>2]=d;i=z[((w[F+56|0]<<2)+k|0)+32>>2];n=z[e+32>>2];z[e+32>>2]=i>2]|0;k:{l:{switch(u-1|0){case 0:b=-1;i=C(34028234663852886e22);while(1){d=v[e+48>>2];f=v[e+52>>2];m:{if(d>>>0>=f>>>0){break m}g=f+(d^-1)|0;l=0;m=f-d&3;if(m){while(1){n=z[((d<<6)+r|0)+44>>2];if(n>>0<=2){break m}while(1){n=z[((d<<6)+r|0)+44>>2];if(n>2];if(n>2];if(n>2];if(n>2];if(e){continue}break};z[j>>2]=i;b=(b<<6)+r|0;d=v[b+4>>2];v[o>>2]=v[b>>2];v[o+4>>2]=d;v[o+48>>2]=v[b+48>>2];d=v[b+44>>2];v[o+40>>2]=v[b+40>>2];v[o+44>>2]=d;d=v[b+36>>2];v[o+32>>2]=v[b+32>>2];v[o+36>>2]=d;d=v[b+28>>2];v[o+24>>2]=v[b+24>>2];v[o+28>>2]=d;d=v[b+20>>2];v[o+16>>2]=v[b+16>>2];v[o+20>>2]=d;d=v[b+12>>2];v[o+8>>2]=v[b+8>>2];v[o+12>>2]=d;v[s+448>>2]=1;break k;default:b=0;if(d>>>0<=6){while(1){l=v[e+48>>2];if(l>>>0>2]){while(1){d=(l<<6)+r|0;m=v[d+4>>2];f=(b<<6)+o|0;v[f>>2]=v[d>>2];v[f+4>>2]=m;v[f+48>>2]=v[d+48>>2];m=v[d+44>>2];v[f+40>>2]=v[d+40>>2];v[f+44>>2]=m;m=v[d+36>>2];v[f+32>>2]=v[d+32>>2];v[f+36>>2]=m;m=v[d+28>>2];v[f+24>>2]=v[d+24>>2];v[f+28>>2]=m;m=v[d+20>>2];v[f+16>>2]=v[d+16>>2];v[f+20>>2]=m;m=v[d+12>>2];v[f+8>>2]=v[d+8>>2];v[f+12>>2]=m;b=b+1|0;l=l+1|0;if(l>>>0>2]){continue}break}}e=v[e+16>>2];if(e){continue}break}v[s+448>>2]=b;b=v[g+44>>2];v[j+8>>2]=v[g+40>>2];v[j+12>>2]=b;b=v[g+36>>2];v[j>>2]=v[g+32>>2];v[j+4>>2]=b;break k}x2(j,o,r,l,e);v[s+448>>2]=6;break k;case 2:break l}}b=0;if(d>>>0<=3){while(1){l=v[e+48>>2];if(l>>>0>2]){while(1){d=(l<<6)+r|0;m=v[d+4>>2];f=(b<<6)+o|0;v[f>>2]=v[d>>2];v[f+4>>2]=m;v[f+48>>2]=v[d+48>>2];m=v[d+44>>2];v[f+40>>2]=v[d+40>>2];v[f+44>>2]=m;m=v[d+36>>2];v[f+32>>2]=v[d+32>>2];v[f+36>>2]=m;m=v[d+28>>2];v[f+24>>2]=v[d+24>>2];v[f+28>>2]=m;m=v[d+20>>2];v[f+16>>2]=v[d+16>>2];v[f+20>>2]=m;m=v[d+12>>2];v[f+8>>2]=v[d+8>>2];v[f+12>>2]=m;b=b+1|0;l=l+1|0;if(l>>>0>2]){continue}break}}e=v[e+16>>2];if(e){continue}break}v[s+448>>2]=b;b=v[g+44>>2];v[j+8>>2]=v[g+40>>2];v[j+12>>2]=b;b=v[g+36>>2];v[j>>2]=v[g+32>>2];v[j+4>>2]=b;break k}y2(j,o,r,l,e);v[s+448>>2]=3}z[((w[F+56|0]<<2)+k|0)+32>>2]=z[j>>2]}E=E+1|0;if((h|0)!=(E|0)){continue}break}}xa=j+80|0;v[a+2324>>2]=0;v[a+2328>>2]=0;if(!c){break a}v[a+2048>>2]=a;v[a+2172>>2]=a+1984;v[a+2168>>2]=a+1920;v[a+2164>>2]=a+1856;v[a+2160>>2]=a+1792;v[a+2156>>2]=a+1728;v[a+2152>>2]=a+1664;v[a+2148>>2]=a+1600;v[a+2144>>2]=a+1536;v[a+2140>>2]=a+1472;v[a+2136>>2]=a+1408;v[a+2132>>2]=a+1344;v[a+2128>>2]=a+1280;v[a+2124>>2]=a+1216;v[a+2120>>2]=a+1152;v[a+2116>>2]=a+1088;v[a+2112>>2]=a+1024;v[a+2108>>2]=a+960;v[a+2104>>2]=a+896;v[a+2100>>2]=a+832;v[a+2096>>2]=a+768;v[a+2092>>2]=a+704;v[a+2088>>2]=a+640;v[a+2084>>2]=a+576;v[a+2080>>2]=a+512;v[a+2076>>2]=a+448;v[a+2072>>2]=a+384;v[a+2068>>2]=a+320;v[a+2064>>2]=a+256;v[a+2060>>2]=a+192;v[a+2056>>2]=a+128;v[a+2052>>2]=a- -64}}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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),H=C(0),I=0,J=C(0),L=C(0),M=0,N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=0;b=xa-272|0;xa=b;f=1;l=z[a- -64>>2];q=z[a+48>>2];s=z[c+8>>2];n=z[a+16>>2];k=z[c>>2];y=z[c+4>>2];o=z[a+32>>2];i=C(l+C(C(q*s)+C(C(n*k)+C(y*o))));h=z[d+8>>2];m=z[d>>2];r=z[d+4>>2];j=C(l+C(C(q*h)+C(C(n*m)+C(r*o))));p=i>2];x=C(q*l);u=n;n=z[e>>2];q=z[e+4>>2];o=C(D+C(x+C(C(u*n)+C(q*o))));D=o>p?p:o;p=z[a+80>>2];a:{if(D>p){break a}i=i>j?i:j;if(C(-p)>(i>o?i:o)){break a}o=z[a+68>>2];p=z[a+52>>2];u=z[a+20>>2];x=z[a+36>>2];i=C(o+C(C(p*s)+C(C(u*k)+C(y*x))));j=C(o+C(C(p*h)+C(C(u*m)+C(r*x))));A=i>2];if((o>A?A:o)>p){break a}i=i>j?i:j;if(C(-p)>(i>o?i:o)){break a}o=z[a+72>>2];p=z[a+56>>2];u=z[a+24>>2];x=z[a+40>>2];i=C(o+C(C(p*s)+C(C(u*k)+C(y*x))));j=C(o+C(C(p*h)+C(C(u*m)+C(r*x))));A=i>2];if((o>A?A:o)>p){break a}i=i>j?i:j;if(C(-p)>(i>o?i:o)){break a}b:{if(w[a+369|0]){i=q;j=l;q=r;l=h;r=y;h=s;break b}o=z[a+360>>2];p=z[a+328>>2];u=z[a+344>>2];j=C(C(o*l)+C(C(p*n)+C(q*u)));x=z[a+356>>2];A=z[a+324>>2];E=z[a+340>>2];i=C(C(x*l)+C(C(A*n)+C(q*E)));H=z[a+352>>2];J=z[a+320>>2];L=z[a+336>>2];n=C(C(H*l)+C(C(J*n)+C(q*L)));l=C(C(o*h)+C(C(p*m)+C(r*u)));q=C(C(x*h)+C(C(A*m)+C(r*E)));m=C(C(H*h)+C(C(J*m)+C(r*L)));h=C(C(o*s)+C(C(p*k)+C(y*u)));r=C(C(x*s)+C(C(A*k)+C(y*E)));k=C(C(H*s)+C(C(J*k)+C(y*L)))}v[b+268>>2]=0;z[b+264>>2]=j;z[b+260>>2]=i;z[b+256>>2]=n;v[b+252>>2]=0;z[b+248>>2]=l;z[b+244>>2]=q;z[b+240>>2]=m;v[b+236>>2]=0;z[b+232>>2]=h;z[b+228>>2]=r;t[b+208|0]=0;v[b+200>>2]=2139095039;v[b+204>>2]=5;v[b+188>>2]=0;v[b+192>>2]=0;v[b+196>>2]=2139095039;z[b+184>>2]=C(j+C(l+h))*C(.33333298563957214);z[b+180>>2]=C(i+C(q+r))*C(.33333298563957214);z[b+224>>2]=k;z[b+176>>2]=C(n+C(m+k))*C(.33333298563957214);v[b+40>>2]=a+256;v[b+32>>2]=142420;v[b+36>>2]=b+176;d=v[a+276>>2];c=b- -64|0;v[c>>2]=v[a+272>>2];v[c+4>>2]=d;d=v[a+284>>2];v[b+72>>2]=v[a+280>>2];v[b+76>>2]=d;d=v[a+268>>2];v[b+56>>2]=v[a+264>>2];v[b+60>>2]=d;d=v[a+292>>2];v[b+80>>2]=v[a+288>>2];v[b+84>>2]=d;d=v[a+300>>2];v[b+88>>2]=v[a+296>>2];v[b+92>>2]=d;d=a+304|0;e=v[d+4>>2];v[b+96>>2]=v[d>>2];v[b+100>>2]=e;e=v[a+316>>2];v[b+104>>2]=v[a+312>>2];v[b+108>>2]=e;e=v[a+260>>2];v[b+48>>2]=v[a+256>>2];v[b+52>>2]=e;h=z[b+52>>2];z[b+52>>2]=z[c>>2];i=z[b+72>>2];j=z[b+56>>2];z[b+56>>2]=z[b+80>>2];z[b+72>>2]=z[b+84>>2];z[b+80>>2]=j;z[b+84>>2]=i;z[c>>2]=h;v[b+24>>2]=141216;v[b+28>>2]=a+96;v[b>>2]=0;c=xa-288|0;xa=c;v[c+76>>2]=0;h=z[d+8>>2];i=z[d>>2];j=z[d+4>>2];v[c+60>>2]=0;d=C(C(h*h)+C(C(i*i)+C(j*j)))>C(0);k=d?h:C(0);z[c+56>>2]=k;m=d?j:C(0);z[c+52>>2]=m;n=d?i:C(1);z[c+48>>2]=n;d=v[b+36>>2];f=w[d+32|0];e=v[b+28>>2];g=w[e+32|0];o=C((f?z[d+16>>2]:C(0))+(g?z[e+16>>2]:C(0)));J=C(z[b>>2]+o);h=C(C(1)/C(K(C(C(k*k)+C(C(n*n)+C(m*m))))));l=C(k*h);i=C(m*h);j=C(n*h);h=z[e+20>>2];s=z[d+20>>2];L=C(G(C((h>2];v[c+24>>2]=v[c+56>>2];v[c+28>>2]=d;d=v[c+52>>2];v[c+16>>2]=v[c+48>>2];v[c+20>>2]=d;d=v[b+40>>2];O=z[d+56>>2];P=z[d+40>>2];Q=z[d+24>>2];R=z[d+52>>2];S=z[d+36>>2];T=z[d+20>>2];e=v[b+36>>2];h=z[e+72>>2];y=z[e- -64>>2];r=z[e+68>>2];p=z[e+56>>2];u=z[e+52>>2];x=z[e+88>>2];A=z[e+80>>2];E=z[e+84>>2];U=z[d+8>>2];V=z[d+48>>2];W=z[d+32>>2];X=z[d>>2];Y=z[d+16>>2];Z=z[d+4>>2];H=z[e+48>>2];_=z[b+88>>2];$=z[b+56>>2];aa=z[b+72>>2];ba=z[b+80>>2];ca=z[b+48>>2];da=z[b+64>>2];ea=z[b+84>>2];fa=z[b+52>>2];ga=z[b+68>>2];d=v[b+28>>2];s=z[d+56>>2];D=z[d+52>>2];ha=z[d+72>>2];N=d- -64|0;ia=z[N>>2];ja=z[d+68>>2];ka=z[d+88>>2];la=z[d+80>>2];ma=z[d+84>>2];na=z[d+48>>2];v[c+284>>2]=0;z[c+280>>2]=C(ka*k)+C(C(la*n)+C(m*ma));z[c+276>>2]=C(ha*k)+C(C(ia*n)+C(m*ja));z[c+272>>2]=C(s*k)+C(C(na*n)+C(m*D));oa=HV(d,c+272|0);s=l;D=h;h=C(-n);l=C(C(C($*h)-C(aa*m))-C(_*k));n=C(C(C(ca*h)-C(da*m))-C(ba*k));h=C(C(C(fa*h)-C(ga*m))-C(ea*k));k=C(C(D*l)+C(C(y*n)+C(r*h)));m=C(C(x*l)+C(C(A*n)+C(h*E)));e=k>m;h=C(C(p*l)+C(C(H*n)+C(h*u)));I=!(h>k)|!(h>m);h=I?e?D:x:p;l=I?e?y:A:H;k=I?e?r:E:u;x=C(O+C(C(P*h)+C(C(U*l)+C(Q*k))));e=v[d+152>>2]+B(oa,12)|0;m=z[e+8>>2];n=z[e>>2];p=z[e+4>>2];A=C(C(z[d+88>>2]*m)+C(C(z[d+56>>2]*n)+C(p*z[d+72>>2])));u=C(x-A);y=j;E=C(V+C(C(W*h)+C(C(X*l)+C(k*Y))));H=C(C(z[d+80>>2]*m)+C(C(z[d+48>>2]*n)+C(p*z[N>>2])));j=C(E-H);r=i;l=C(R+C(C(S*h)+C(C(Z*l)+C(k*T))));k=C(C(z[d+84>>2]*m)+C(C(z[d+52>>2]*n)+C(p*z[d+68>>2])));h=C(l-k);i=C(C(s*u)+C(C(y*j)+C(i*h)));if(i>J){break c}if(!(!(i>o)|!(i>C(q*C(.9997749924659729))))){IV(c+208|0,c+144|0,c+80|0,c+48|0,c+272|0,c,v[c+76>>2]);h=z[v[b+36>>2]+16>>2];i=z[c+272>>2];j=z[c+276>>2];l=z[c+280>>2];v[b+172>>2]=0;z[b+168>>2]=l-(f?C(s*h):C(0));z[b+164>>2]=j-(f?C(r*h):C(0));z[b+160>>2]=i-(f?C(y*h):C(0));h=z[v[b+28>>2]+16>>2];i=z[c>>2];j=z[c+4>>2];l=z[c+8>>2];v[b+156>>2]=0;z[b+152>>2]=l+(g?C(s*h):C(-0));z[b+148>>2]=j+(g?C(r*h):C(-0));z[b+144>>2]=i+(g?C(y*h):C(-0));z[b+112>>2]=G(C(q-o),C(0));v[b+140>>2]=0;z[b+136>>2]=-s;z[b+132>>2]=-r;z[b+128>>2]=-y;M=1;break c}e=v[c+76>>2];I=e<<4;d=I+(c+144|0)|0;v[d+12>>2]=0;z[d+8>>2]=x;z[d+4>>2]=l;z[d>>2]=E;d=I+(c+80|0)|0;v[d+12>>2]=0;z[d+8>>2]=A;z[d+4>>2]=k;z[d>>2]=H;d=I+(c+208|0)|0;v[d+12>>2]=0;z[d+8>>2]=u;z[d+4>>2]=h;z[d>>2]=j;v[c+76>>2]=e+1;d:{e:{switch(e-1|0){case 0:l=z[c+216>>2];h=C(z[c+232>>2]-l);k=z[c+208>>2];i=C(z[c+224>>2]-k);m=z[c+212>>2];j=C(z[c+228>>2]-m);n=C(C(h*h)+C(C(i*i)+C(j*j)));if(n<=C(1.1920928955078125e-7)){v[c+76>>2]=1;d=v[c+212>>2];v[c+272>>2]=v[c+208>>2];v[c+276>>2]=d;d=v[c+220>>2];v[c+280>>2]=v[c+216>>2];v[c+284>>2]=d;break d}v[c+284>>2]=0;D=h;h=C(F(C(C(C(C(C(-k)*i)-C(j*m))-C(l*h))/n),C(1)));h=h>C(0)?h:C(0);z[c+280>>2]=l+C(D*h);z[c+276>>2]=m+C(j*h);z[c+272>>2]=k+C(i*h);break d;case 1:JV(c+272|0,c+208|0,c+144|0,c+80|0,c+76|0);break d;case 2:N_(c+272|0,c+208|0,c+144|0,c+80|0,c+76|0);break d;default:break e}}v[c+284>>2]=0;z[c+280>>2]=u;z[c+276>>2]=h;z[c+272>>2]=j}d=v[c+276>>2];v[c+48>>2]=v[c+272>>2];v[c+52>>2]=d;d=v[c+284>>2];v[c+56>>2]=v[c+280>>2];v[c+60>>2]=d;k=z[c+56>>2];n=z[c+48>>2];m=z[c+52>>2];h=C(K(C(C(k*k)+C(C(n*n)+C(m*m)))));if(L>2]=0;d=v[c+276>>2];v[b+116>>2]=v[c+272>>2];v[b+120>>2]=d;v[b+124>>2]=v[c+280>>2];M=2;break c}i=z[v[b+28>>2]+16>>2];j=z[v[b+36>>2]+16>>2];IV(c+208|0,c+144|0,c+80|0,c+16|0,c+272|0,c,v[c+76>>2]);h=z[v[b+36>>2]+16>>2];l=z[c+272>>2];k=z[c+276>>2];m=z[c+280>>2];v[b+172>>2]=0;z[b+168>>2]=m-(f?C(s*h):C(0));z[b+164>>2]=k-(f?C(r*h):C(0));z[b+160>>2]=l-(f?C(y*h):C(0));h=z[v[b+28>>2]+16>>2];l=z[c>>2];k=z[c+4>>2];m=z[c+8>>2];v[b+156>>2]=0;z[b+152>>2]=m+(g?C(s*h):C(-0));z[b+148>>2]=k+(g?C(r*h):C(-0));z[b+144>>2]=l+(g?C(y*h):C(-0));v[b+140>>2]=0;z[b+136>>2]=-s;z[b+132>>2]=-r;z[b+128>>2]=-y;h=C(G(C(q-o),C(0)));z[b+112>>2]=h;d=v[c+40>>2];v[b+116>>2]=v[c+36>>2];v[b+120>>2]=d;v[b+124>>2]=v[c+44>>2];M=h>(o>C(0)?o:C((i>2];s=v[c+32>>2];o=v[a+12>>2];x=v[a+8>>2];q=z[a+4>>2];v[f+620>>2]=0;v[f+612>>2]=x;v[f+616>>2]=o;z[f+608>>2]=q;o=v[a+16>>2];x=v[a+20>>2];I=v[a+28>>2];v[f+600>>2]=v[a+24>>2];v[f+604>>2]=I;v[f+592>>2]=o;v[f+596>>2]=x;g=z[c+12>>2];o=v[c+8>>2];x=v[c+4>>2];v[f+588>>2]=0;z[f+584>>2]=g;v[f+576>>2]=x;v[f+580>>2]=o;o=v[c+16>>2];x=v[c+20>>2];I=v[c+28>>2];v[f+568>>2]=v[c+24>>2];v[f+572>>2]=I;v[f+560>>2]=o;v[f+564>>2]=x;j=z[d+20>>2];k=z[b+20>>2];E=z[d+24>>2];D=z[b+24>>2];y=z[b+8>>2];l=z[b>>2];p=z[b+4>>2];m=z[b+12>>2];g=z[d+12>>2];h=z[d>>2];A=z[d+16>>2];H=z[b+16>>2];i=z[d+4>>2];n=z[d+8>>2];v[f+556>>2]=0;v[f+540>>2]=0;v[f+524>>2]=0;N=C(-h);A=C(H-A);H=C(k-j);E=C(D-E);D=C(C(C(N*A)-C(H*i))-C(n*E));L=C(C(g*g)+C(-.5));j=C(C(C(g*C(C(i*A)-C(h*H)))+C(L*E))-C(n*D));z[f+552>>2]=j+j;j=C(C(C(L*H)+C(g*C(C(h*E)-C(n*A))))-C(i*D));z[f+548>>2]=j+j;k=C(C(C(p*n)-C(i*y))+C(C(l*g)-C(m*h)));j=C(k+k);J=C(C(C(y*h)-C(n*l))+C(C(p*g)-C(m*i)));M=C(J+J);P=C(C(1)-C(k*j));Q=C(J*M);z[f+536>>2]=P-Q;k=C(C(C(l*i)-C(h*p))+C(C(y*g)-C(m*n)));O=C(k*M);y=C(C(m*g)-C(C(C(N*l)-C(p*i))-C(n*y)));l=C(y*j);z[f+532>>2]=O-l;z[f+520>>2]=O+l;l=C(k+k);p=C(k*l);z[f+516>>2]=P-p;v[f+508>>2]=0;g=C(C(C(L*A)+C(g*C(C(n*H)-C(i*E))))-C(h*D));z[f+544>>2]=g+g;g=C(k*j);i=C(y*M);z[f+528>>2]=g+i;n=C(J*j);h=C(y*l);z[f+512>>2]=n-h;z[f+504>>2]=g-i;z[f+500>>2]=n+h;z[f+496>>2]=C(C(1)-Q)-p;o=r+16|0;b=0;a:{if(q!=C(1)){break a}b=0;if(z[a+8>>2]!=C(1)){break a}b=z[a+12>>2]==C(1)}a=s+16|0;d=f+544|0;t[f+368|0]=0;v[f+360>>2]=0;v[f+364>>2]=0;v[f+352>>2]=0;v[f+356>>2]=0;v[f+344>>2]=0;v[f+348>>2]=0;v[f+336>>2]=0;v[f+340>>2]=0;v[f+480>>2]=o;v[f+488>>2]=v[r+56>>2]+B(w[r+55|0],20);t[f+492|0]=w[r+54|0];g=C(q*z[r+68>>2]);i=C(z[r+72>>2]*z[f+612>>2]);g=g<=i?g:i;i=C(z[r+76>>2]*z[f+616>>2]);g=g<=i?g:i;z[f+360>>2]=g*C(.02500000037252903);z[f+352>>2]=g*C(.10000000149011612);z[f+356>>2]=g*C(.05000000074505806);FV(f+608|0,f+592|0,f+384|0,f+432|0,f+336|0,b);v[f+484>>2]=v[r+60>>2];R=z[c+4>>2]!=C(1)|z[c+8>>2]!=C(1)?R:z[c+12>>2]==C(1);t[f+208|0]=0;v[f+200>>2]=0;v[f+204>>2]=0;v[f+192>>2]=0;v[f+196>>2]=0;v[f+184>>2]=0;v[f+188>>2]=0;v[f+176>>2]=0;v[f+180>>2]=0;v[f+320>>2]=a;v[f+328>>2]=v[s+56>>2]+B(w[s+55|0],20);t[f+332|0]=w[s+54|0];g=C(z[s+68>>2]*z[f+576>>2]);i=C(z[s+72>>2]*z[f+580>>2]);g=g<=i?g:i;i=C(z[s+76>>2]*z[f+584>>2]);g=g<=i?g:i;z[f+200>>2]=g*C(.02500000037252903);z[f+192>>2]=g*C(.10000000149011612);z[f+196>>2]=g*C(.05000000074505806);b=f+176|0;FV(f+576|0,f+560|0,f+224|0,f+272|0,b,R);v[f+324>>2]=v[s+60>>2];c=v[f+516>>2];a=f- -64|0;v[a>>2]=v[f+512>>2];v[a+4>>2]=c;c=v[f+508>>2];v[f+56>>2]=v[f+504>>2];v[f+60>>2]=c;c=v[f+524>>2];v[f+72>>2]=v[f+520>>2];v[f+76>>2]=c;c=v[f+532>>2];v[f+80>>2]=v[f+528>>2];v[f+84>>2]=c;c=v[f+540>>2];v[f+88>>2]=v[f+536>>2];v[f+92>>2]=c;c=v[f+548>>2];v[f+96>>2]=v[f+544>>2];v[f+100>>2]=c;c=v[f+556>>2];v[f+104>>2]=v[f+552>>2];v[f+108>>2]=c;c=v[f+500>>2];v[f+48>>2]=v[f+496>>2];v[f+52>>2]=c;g=z[f+52>>2];z[f+52>>2]=z[a>>2];v[f+32>>2]=141516;v[f+40>>2]=f+496;v[f+36>>2]=f+336;i=z[f+56>>2];n=z[f+72>>2];z[a>>2]=g;z[f+56>>2]=z[f+80>>2];z[f+72>>2]=z[f+84>>2];z[f+84>>2]=n;z[f+80>>2]=i;v[f+24>>2]=141216;v[f+28>>2]=b;v[f>>2]=0;a=0;b=xa-288|0;xa=b;v[b+76>>2]=0;g=z[d+8>>2];i=z[d>>2];n=z[d+4>>2];v[b+60>>2]=0;c=C(C(g*g)+C(C(i*i)+C(n*n)))>C(0);j=c?g:C(0);z[b+56>>2]=j;k=c?n:C(0);z[b+52>>2]=k;q=c?i:C(1);z[b+48>>2]=q;s=f+32|0;c=v[s+4>>2];d=w[c+32|0];o=v[f+28>>2];r=w[o+32|0];A=C((d?z[c+16>>2]:C(0))+(r?z[o+16>>2]:C(0)));H=C(z[f>>2]+A);g=C(C(1)/C(K(C(C(j*j)+C(C(q*q)+C(k*k))))));l=C(j*g);p=C(k*g);m=C(q*g);g=z[o+20>>2];i=z[c+20>>2];E=C(G(C((g>2];v[b+40>>2]=v[b+56>>2];v[b+44>>2]=c;c=v[b+52>>2];v[b+32>>2]=v[b+48>>2];v[b+36>>2]=c;v[b+284>>2]=0;z[b+280>>2]=-j;z[b+276>>2]=-k;z[b+272>>2]=-q;o=b+272|0;TW(b+16|0,s,o);c=v[f+28>>2];g=z[c+56>>2];i=z[c+52>>2];n=z[c+72>>2];x=c- -64|0;h=z[x>>2];D=z[c+68>>2];J=z[c+88>>2];M=z[c+80>>2];L=z[c+84>>2];N=z[c+48>>2];v[b+284>>2]=0;z[b+280>>2]=C(J*j)+C(C(M*q)+C(k*L));z[b+276>>2]=C(n*j)+C(C(h*q)+C(k*D));z[b+272>>2]=C(g*j)+C(C(N*q)+C(k*i));o=HV(c,o);g=l;o=v[c+152>>2]+B(o,12)|0;h=z[o+8>>2];l=z[o>>2];j=z[o+4>>2];q=C(C(z[c+88>>2]*h)+C(C(z[c+56>>2]*l)+C(j*z[c+72>>2])));k=C(z[b+24>>2]-q);i=m;D=C(C(z[c+80>>2]*h)+C(C(z[c+48>>2]*l)+C(j*z[x>>2])));m=C(z[b+16>>2]-D);n=p;p=C(C(z[c+84>>2]*h)+C(C(z[c+52>>2]*l)+C(j*z[c+68>>2])));h=C(z[b+20>>2]-p);l=C(C(g*k)+C(C(i*m)+C(n*h)));if(l>H){break b}if(!(!(l>A)|!(l>C(y*C(.9997749924659729))))){IV(b+208|0,b+144|0,b+80|0,b+48|0,b+272|0,b,v[b+76>>2]);h=z[v[s+4>>2]+16>>2];l=z[b+272>>2];p=z[b+276>>2];m=z[b+280>>2];v[f+172>>2]=0;z[f+168>>2]=m-(d?C(g*h):C(0));z[f+164>>2]=p-(d?C(n*h):C(0));z[f+160>>2]=l-(d?C(i*h):C(0));h=z[v[f+28>>2]+16>>2];l=z[b>>2];p=z[b+4>>2];m=z[b+8>>2];v[f+156>>2]=0;z[f+152>>2]=m+(r?C(g*h):C(-0));z[f+148>>2]=p+(r?C(n*h):C(-0));z[f+144>>2]=l+(r?C(i*h):C(-0));z[f+112>>2]=G(C(y-A),C(0));v[f+140>>2]=0;z[f+136>>2]=-g;z[f+132>>2]=-n;z[f+128>>2]=-i;a=1;break b}I=v[b+20>>2];o=v[b+76>>2];x=o<<4;c=x+(b+144|0)|0;v[c>>2]=v[b+16>>2];v[c+4>>2]=I;I=v[b+28>>2];v[c+8>>2]=v[b+24>>2];v[c+12>>2]=I;c=x+(b+80|0)|0;v[c+12>>2]=0;z[c+8>>2]=q;z[c+4>>2]=p;z[c>>2]=D;c=x+(b+208|0)|0;v[c+12>>2]=0;z[c+8>>2]=k;z[c+4>>2]=h;z[c>>2]=m;v[b+76>>2]=o+1;c:{d:{e:{switch(o-1|0){case 0:m=z[b+216>>2];h=C(z[b+232>>2]-m);j=z[b+208>>2];l=C(z[b+224>>2]-j);k=z[b+212>>2];p=C(z[b+228>>2]-k);q=C(C(h*h)+C(C(l*l)+C(p*p)));if(!(q<=C(1.1920928955078125e-7))){break d}v[b+76>>2]=1;c=v[b+212>>2];v[b+272>>2]=v[b+208>>2];v[b+276>>2]=c;c=v[b+220>>2];v[b+280>>2]=v[b+216>>2];v[b+284>>2]=c;break c;case 1:JV(b+272|0,b+208|0,b+144|0,b+80|0,b+76|0);break c;case 2:N_(b+272|0,b+208|0,b+144|0,b+80|0,b+76|0);break c;default:break e}}v[b+284>>2]=0;z[b+280>>2]=k;z[b+276>>2]=h;z[b+272>>2]=m;break c}v[b+284>>2]=0;O=h;h=C(F(C(C(C(C(C(-j)*l)-C(p*k))-C(m*h))/q),C(1)));h=h>C(0)?h:C(0);z[b+280>>2]=m+C(O*h);z[b+276>>2]=k+C(p*h);z[b+272>>2]=j+C(l*h)}c=v[b+276>>2];v[b+48>>2]=v[b+272>>2];v[b+52>>2]=c;c=v[b+284>>2];v[b+56>>2]=v[b+280>>2];v[b+60>>2]=c;j=z[b+56>>2];q=z[b+48>>2];k=z[b+52>>2];h=C(K(C(C(j*j)+C(C(q*q)+C(k*k)))));if(E>2]=0;a=v[b+276>>2];v[f+116>>2]=v[b+272>>2];v[f+120>>2]=a;v[f+124>>2]=v[b+280>>2];a=2;break b}l=z[v[f+28>>2]+16>>2];p=z[v[s+4>>2]+16>>2];IV(b+208|0,b+144|0,b+80|0,b+32|0,b+272|0,b+16|0,v[b+76>>2]);h=z[v[s+4>>2]+16>>2];m=z[b+272>>2];j=z[b+276>>2];k=z[b+280>>2];v[f+172>>2]=0;z[f+168>>2]=k-(d?C(g*h):C(0));z[f+164>>2]=j-(d?C(n*h):C(0));z[f+160>>2]=m-(d?C(i*h):C(0));h=z[v[f+28>>2]+16>>2];m=z[b+16>>2];j=z[b+20>>2];k=z[b+24>>2];v[f+156>>2]=0;z[f+152>>2]=k+(r?C(g*h):C(-0));z[f+148>>2]=j+(r?C(n*h):C(-0));z[f+144>>2]=m+(r?C(i*h):C(-0));v[f+140>>2]=0;z[f+136>>2]=-g;z[f+132>>2]=-n;z[f+128>>2]=-i;g=C(G(C(y-A),C(0)));z[f+112>>2]=g;a=v[b+4>>2];v[f+116>>2]=v[b>>2];v[f+120>>2]=a;v[f+124>>2]=v[b+8>>2];a=g>(A>C(0)?A:C((l>1]=((a|0)==2)<<1}xa=f+624|0;return(a|0)==2|0}function py(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=0,A=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=0,N=C(0),O=0,P=C(0),Q=C(0),R=0,S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=C(0),da=0,ea=0,fa=C(0),ga=C(0);y=xa+-64|0;O=v[a+8>>2];w=z[O+40>>2];P=z[d+16>>2];A=z[d+48>>2];l=z[O+8>>2];U=z[d>>2];L=z[d+32>>2];Q=z[b+40>>2];r=z[c+40>>2];s=z[O+32>>2];V=z[O>>2];H=z[b+32>>2];j=z[c+32>>2];Z=z[O+36>>2];I=z[O+4>>2];J=z[b+36>>2];T=z[c+36>>2];ca=C(C(C(w*C(w*P))+C(A*C(C(C(l*C(l*U))+C(L*C(Q*Q)))+C(r*r))))+C(C(C(s*C(P*s))+C(A*C(C(C(V*C(U*V))+C(L*C(H*H)))+C(j*j))))+C(C(Z*C(P*Z))+C(A*C(C(C(I*C(U*I))+C(L*C(J*J)))+C(T*T))))));R=v[a+4>>2];o=z[R+40>>2];q=C(P*o);p=z[R+8>>2];k=C(U*p);_=z[b+24>>2];$=z[c+24>>2];g=z[R+32>>2];h=C(P*g);W=z[R>>2];i=C(U*W);aa=z[b+16>>2];m=z[c+16>>2];t=z[R+36>>2];f=C(P*t);F=z[R+4>>2];e=C(U*F);N=z[b+20>>2];u=z[c+20>>2];X=C(C(C(q*w)+C(A*C(C(C(k*l)+C(L*C(_*Q)))+C($*r))))+C(C(C(h*s)+C(A*C(C(C(i*V)+C(L*C(aa*H)))+C(m*j))))+C(C(f*Z)+C(A*C(C(C(e*I)+C(L*C(N*J)))+C(u*T))))));x=C(C(C(o*q)+C(A*C(C(C(p*k)+C(L*C(_*_)))+C($*$))))+C(C(C(g*h)+C(A*C(C(C(W*i)+C(L*C(aa*aa)))+C(m*m))))+C(C(t*f)+C(A*C(C(C(F*e)+C(L*C(N*N)))+C(u*u))))));S=v[a>>2];k=z[S+40>>2];G=C(k*P);e=C(G*w);h=z[S+8>>2];w=C(h*U);n=z[b+8>>2];f=C(C(w*l)+C(L*C(n*Q)));l=z[c+8>>2];fa=C(e+C(A*C(f+C(l*r))));i=z[S+32>>2];r=C(i*P);e=C(r*s);Y=z[S>>2];s=C(Y*U);Q=z[b>>2];f=C(C(s*V)+C(L*C(Q*H)));H=z[c>>2];ga=C(e+C(A*C(f+C(H*j))));f=z[S+36>>2];j=C(f*P);e=z[S+4>>2];q=C(e*U);P=C(q*I);I=z[b+4>>2];P=C(P+C(L*C(I*J)));J=z[c+4>>2];T=C(fa+C(ga+C(C(j*Z)+C(A*C(P+C(J*T))))));u=C(C(C(G*o)+C(A*C(C(C(w*p)+C(L*C(n*_)))+C(l*$))))+C(C(C(r*g)+C(A*C(C(C(s*W)+C(L*C(Q*aa)))+C(H*m))))+C(C(j*t)+C(A*C(C(C(q*F)+C(L*C(I*N)))+C(J*u))))));t=C(C(C(k*G)+C(A*C(C(l*l)+C(C(h*w)+C(C(n*n)*L)))))+C(C(C(i*r)+C(A*C(C(H*H)+C(C(Y*s)+C(C(Q*Q)*L)))))+C(C(f*j)+C(A*C(C(J*J)+C(C(e*q)+C(C(I*I)*L)))))));N=C(0);n=C(0);m=C(0);l=C(1);while(1){a:{i=C(N+N);j=C(C(1)-C(N*i));e=C(n+n);q=C(n*e);g=C(j-q);k=C(i*m);h=C(e*l);H=C(k+h);f=C(e*m);e=C(i*l);I=C(f-e);F=C(C(ca*g)+C(C(T*H)+C(X*I)));G=C(C(T*g)+C(C(t*H)+C(u*I)));w=C(C(X*g)+C(C(u*H)+C(x*I)));z[y+56>>2]=C(g*F)+C(C(H*G)+C(I*w));J=C(f+e);i=C(i*n);e=C(m+m);f=C(e*l);o=C(i-f);e=C(m*e);p=C(j-e);r=C(C(ca*J)+C(C(T*o)+C(X*p)));s=C(C(T*J)+C(C(t*o)+C(u*p)));j=C(C(X*J)+C(C(u*o)+C(x*p)));z[y+52>>2]=C(g*r)+C(C(H*s)+C(I*j));A=g;g=C(k-h);k=C(C(C(1)-q)-e);h=C(i+f);i=C(C(ca*g)+C(C(T*k)+C(X*h)));f=C(C(T*g)+C(C(t*k)+C(u*h)));e=C(C(X*g)+C(C(u*k)+C(x*h)));z[y+48>>2]=C(A*i)+C(C(H*f)+C(I*e));z[y+40>>2]=C(J*r)+C(C(o*s)+C(p*j));z[y+36>>2]=C(J*i)+C(C(o*f)+C(p*e));z[y+24>>2]=C(g*i)+C(C(k*f)+C(h*e));f=C(C(g*F)+C(C(k*G)+C(h*w)));z[y+32>>2]=f;e=C(C(g*r)+C(C(k*s)+C(h*j)));z[y+28>>2]=e;i=C(C(J*F)+C(C(o*G)+C(p*w)));z[y+44>>2]=i;f=C(D(f));e=C(D(e));d=f>e?1:2;g=e;e=C(D(i));ba=e>f?g>>1|0)|0)+1|0;da=d&3;ea=(y+24|0)+B(da,12)|0;M=(d+(da>>>1|0)|0)+1&3;d=M<<2;e=z[ea+d>>2];if(e==C(0)){break a}f=C(z[ea+(da<<2)>>2]-z[d+((y+24|0)+B(M,12)|0)>>2]);e=C(e+e);if(C(D(f))>C(C(D(e))*C(2e6))){break a}f=C(f/e);e=C(D(f));b:{if(e>C(1e3)){v[y+16>>2]=0;v[y+20>>2]=1065353216;v[y+8>>2]=0;v[y+12>>2]=0;z[(y+8|0)+(ba<<2)>>2]=C(1)/C(f*C(4));break b}v[y+16>>2]=0;v[y+8>>2]=0;v[y+12>>2]=0;e=C(C(1)/C(e+C(K(C(C(f*f)+C(1))))));e=C(C(1)/C(K(C(C(e*e)+C(1)))));z[y+20>>2]=K(C(C(e+C(1))*C(.5)));e=C(K(C(C(C(1)-e)*C(.5))));z[(y+8|0)+(ba<<2)>>2]=f>=C(0)?e:C(-e)}j=z[y+20>>2];q=z[y+8>>2];k=z[y+12>>2];h=z[y+16>>2];e=C(C(C(C(l*j)-C(q*N))-C(n*k))-C(m*h));g=e;A=C(e*e);i=C(C(C(N*k)+C(C(l*h)+C(m*j)))-C(q*n));f=C(C(C(n*h)+C(C(l*q)+C(N*j)))-C(k*m));e=C(C(C(m*q)+C(C(l*k)+C(n*j)))-C(h*N));h=C(C(1)/C(K(C(A+C(C(i*i)+C(C(f*f)+C(e*e)))))));l=C(g*h);m=C(i*h);n=C(e*h);N=C(f*h);E=E+1|0;if((E|0)!=5){continue}}break}Q=z[R+4>>2];H=z[O+4>>2];I=z[R+8>>2];J=z[O+8>>2];f=C(-n);g=C(f-n);j=C(g*f);o=C(-m);e=C(o-m);q=C(e*o);m=C(C(C(1)-j)-q);t=z[S+12>>2];p=C(C(-N)-N);f=C(p*f);F=C(-l);e=C(e*F);u=C(f+e);G=z[R+12>>2];k=C(p*o);h=C(g*F);x=C(k-h);w=z[O+12>>2];z[S+12>>2]=C(m*t)+C(C(u*G)+C(x*w));r=z[S+8>>2];z[S+8>>2]=C(m*r)+C(C(u*I)+C(x*J));s=z[S+4>>2];z[S+4>>2]=C(s*m)+C(C(u*Q)+C(x*H));z[S>>2]=C(Y*m)+C(C(W*u)+C(V*x));n=C(f-e);i=C(C(N*p)+C(1));l=C(i-q);f=C(g*o);e=C(p*F);o=C(f+e);z[R+12>>2]=C(t*n)+C(C(G*l)+C(w*o));z[R+8>>2]=C(n*r)+C(C(l*I)+C(o*J));z[R+4>>2]=C(s*n)+C(C(l*Q)+C(o*H));z[R>>2]=C(Y*n)+C(C(W*l)+C(V*o));p=C(k+h);A=C(t*p);g=C(f-e);t=C(i-j);z[O+12>>2]=A+C(C(G*g)+C(w*t));z[O+8>>2]=C(p*r)+C(C(g*I)+C(t*J));z[O+4>>2]=C(s*p)+C(C(g*Q)+C(t*H));z[O>>2]=C(Y*p)+C(C(V*t)+C(W*g));M=v[a+4>>2];r=z[M+36>>2];E=v[a+8>>2];s=z[E+36>>2];j=z[M+40>>2];q=z[E+40>>2];d=v[a>>2];k=z[d+32>>2];h=z[M+32>>2];i=z[E+32>>2];z[d+32>>2]=C(m*k)+C(C(u*h)+C(x*i));f=z[d+40>>2];z[d+40>>2]=C(m*f)+C(C(u*j)+C(x*q));e=z[d+36>>2];z[d+36>>2]=C(m*e)+C(C(u*r)+C(x*s));z[M+40>>2]=C(n*f)+C(C(l*j)+C(o*q));z[M+36>>2]=C(n*e)+C(C(l*r)+C(o*s));z[M+32>>2]=C(n*k)+C(C(l*h)+C(o*i));z[E+40>>2]=C(p*f)+C(C(g*j)+C(t*q));z[E+36>>2]=C(p*e)+C(C(g*r)+C(t*s));z[E+32>>2]=C(p*k)+C(C(g*h)+C(t*i));F=z[M+20>>2];G=z[E+20>>2];w=z[M+16>>2];r=z[E+16>>2];s=z[M+28>>2];j=z[E+28>>2];q=z[d+24>>2];k=z[M+24>>2];h=z[E+24>>2];z[d+24>>2]=C(m*q)+C(C(u*k)+C(x*h));i=z[d+28>>2];z[d+28>>2]=C(m*i)+C(C(u*s)+C(x*j));f=z[d+20>>2];z[d+20>>2]=C(m*f)+C(C(u*F)+C(x*G));e=z[d+16>>2];z[d+16>>2]=C(m*e)+C(C(u*w)+C(x*r));z[M+20>>2]=C(n*f)+C(C(l*F)+C(o*G));z[M+24>>2]=C(n*q)+C(C(l*k)+C(o*h));z[M+28>>2]=C(n*i)+C(C(l*s)+C(o*j));z[M+16>>2]=C(n*e)+C(C(l*w)+C(o*r));z[E+28>>2]=C(p*i)+C(C(g*s)+C(t*j));z[E+24>>2]=C(p*q)+C(C(g*k)+C(t*h));z[E+20>>2]=C(p*f)+C(C(g*F)+C(t*G));z[E+16>>2]=C(p*e)+C(C(g*w)+C(t*r));E=v[a+4>>2];r=z[E+52>>2];d=v[a+8>>2];s=z[d+52>>2];j=z[E+56>>2];q=z[d+56>>2];a=v[a>>2];k=z[a+48>>2];h=z[E+48>>2];i=z[d+48>>2];z[a+48>>2]=C(m*k)+C(C(u*h)+C(x*i));f=z[a+56>>2];z[a+56>>2]=C(m*f)+C(C(u*j)+C(x*q));e=z[a+52>>2];z[a+52>>2]=C(m*e)+C(C(u*r)+C(x*s));z[E+56>>2]=C(n*f)+C(C(l*j)+C(o*q));z[E+52>>2]=C(n*e)+C(C(l*r)+C(o*s));z[E+48>>2]=C(n*k)+C(C(l*h)+C(o*i));z[d+56>>2]=C(p*f)+C(C(g*j)+C(t*q));z[d+52>>2]=C(p*e)+C(C(g*r)+C(t*s));z[d+48>>2]=C(p*k)+C(C(g*h)+C(t*i));F=z[b+12>>2];G=z[b+28>>2];w=z[b+44>>2];z[b+44>>2]=C(p*F)+C(C(g*G)+C(t*w));r=z[b+8>>2];s=z[b+24>>2];j=z[b+40>>2];z[b+40>>2]=C(p*r)+C(C(g*s)+C(t*j));q=z[b+4>>2];k=z[b+20>>2];h=z[b+36>>2];z[b+36>>2]=C(p*q)+C(C(g*k)+C(t*h));i=z[b>>2];f=z[b+16>>2];e=z[b+32>>2];z[b+32>>2]=C(p*i)+C(C(g*f)+C(t*e));z[b+28>>2]=C(n*F)+C(C(l*G)+C(o*w));z[b+24>>2]=C(n*r)+C(C(l*s)+C(o*j));z[b+20>>2]=C(n*q)+C(C(l*k)+C(o*h));z[b+16>>2]=C(n*i)+C(C(l*f)+C(o*e));z[b+12>>2]=C(m*F)+C(C(u*G)+C(x*w));z[b+8>>2]=C(m*r)+C(C(u*s)+C(x*j));z[b+4>>2]=C(m*q)+C(C(u*k)+C(x*h));z[b>>2]=C(m*i)+C(C(u*f)+C(x*e));F=z[c+12>>2];G=z[c+28>>2];w=z[c+44>>2];z[c+44>>2]=C(p*F)+C(C(g*G)+C(t*w));r=z[c+8>>2];s=z[c+24>>2];j=z[c+40>>2];z[c+40>>2]=C(p*r)+C(C(g*s)+C(t*j));q=z[c+4>>2];k=z[c+20>>2];h=z[c+36>>2];z[c+36>>2]=C(p*q)+C(C(g*k)+C(t*h));i=z[c>>2];f=z[c+16>>2];e=z[c+32>>2];z[c+32>>2]=C(p*i)+C(C(g*f)+C(t*e));z[c+28>>2]=C(n*F)+C(C(l*G)+C(o*w));z[c+24>>2]=C(n*r)+C(C(l*s)+C(o*j));z[c+20>>2]=C(n*q)+C(C(l*k)+C(o*h));z[c+16>>2]=C(n*i)+C(C(l*f)+C(o*e));z[c+12>>2]=C(m*F)+C(C(u*G)+C(x*w));z[c+8>>2]=C(m*r)+C(C(u*s)+C(x*j));z[c+4>>2]=C(m*q)+C(C(u*k)+C(x*h));z[c>>2]=C(m*i)+C(C(u*f)+C(x*e))}function M$(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=C(f);g=g|0;h=h|0;i=i|0;var k=C(0),m=0,n=0,o=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=0,ja=0;n=xa-160|0;xa=n;y=z[b+12>>2];a:{b:{k=z[b+4>>2];o=z[b+8>>2];if(k!=C(1)|o!=C(1)){break b}D=C(1);if(y!=C(1)){break b}G=z[c+8>>2];k=C(z[d+8>>2]-z[c+24>>2]);r=C(k+k);E=z[c>>2];k=C(z[d>>2]-z[c+16>>2]);y=C(k+k);k=C(z[d+4>>2]-z[c+20>>2]);o=C(k+k);F=z[c+4>>2];k=C(C(G*r)+C(C(E*y)+C(o*F)));A=z[c+12>>2];s=C(C(A*A)+C(-.5));z[n+40>>2]=C(G*k)+C(C(r*s)-C(A*C(C(E*o)-C(y*F))));z[n+36>>2]=C(F*k)+C(C(o*s)-C(A*C(C(G*y)-C(r*E))));z[n+32>>2]=C(E*k)+C(C(y*s)-C(A*C(C(F*r)-C(o*G))));k=z[e+8>>2];r=C(k+k);k=z[e>>2];y=C(k+k);k=z[e+4>>2];o=C(k+k);k=C(C(G*r)+C(C(E*y)+C(F*o)));z[n+8>>2]=C(G*k)+C(C(r*s)-C(A*C(C(E*o)-C(y*F))));z[n+4>>2]=C(F*k)+C(C(o*s)-C(A*C(C(G*y)-C(r*E))));z[n>>2]=C(E*k)+C(C(y*s)-C(A*C(C(F*r)-C(o*G))));Q=0;break a}z[n+40>>2]=C(1)/y;z[n+36>>2]=C(1)/o;z[n+32>>2]=C(1)/k;z[n+44>>2]=z[b+16>>2];z[n+48>>2]=z[b+20>>2];z[n+52>>2]=z[b+24>>2];z[n+56>>2]=z[b+28>>2];F=z[c+8>>2];s=C(z[c+24>>2]*C(-2));A=z[c>>2];r=C(z[c+16>>2]*C(-2));y=C(z[c+20>>2]*C(-2));D=z[c+4>>2];o=C(C(F*s)+C(C(A*r)+C(y*D)));E=z[c+12>>2];k=C(C(E*E)+C(-.5));z[n+24>>2]=C(F*o)+C(C(s*k)-C(E*C(C(A*y)-C(r*D))));z[n+20>>2]=C(D*o)+C(C(y*k)-C(E*C(C(F*r)-C(s*A))));z[n+12>>2]=E;z[n+8>>2]=-F;z[n+4>>2]=-D;z[n>>2]=-A;z[n+16>>2]=C(A*o)+C(C(r*k)-C(E*C(C(D*s)-C(y*F))));aX(n- -64|0,n+32|0,n);T=z[n+80>>2];z[n+128>>2]=T;U=z[n+84>>2];z[n+132>>2]=U;V=z[n+92>>2];z[n+140>>2]=V;W=z[n+96>>2];z[n+144>>2]=W;G=z[n+64>>2];z[n+112>>2]=G;E=z[n+68>>2];z[n+116>>2]=E;F=z[n+72>>2];z[n+120>>2]=F;A=z[n+76>>2];z[n+124>>2]=A;D=z[n+88>>2];z[n+136>>2]=D;s=z[n+100>>2];o=z[n+104>>2];z[n+152>>2]=o;k=z[n+108>>2];z[n+156>>2]=k;z[n+148>>2]=s;H=k;r=z[d>>2];y=z[d+4>>2];k=z[d+8>>2];z[n+40>>2]=H+C(C(C(F*r)+C(U*y))+C(W*k));z[n+36>>2]=o+C(C(C(E*r)+C(T*y))+C(V*k));z[n+32>>2]=s+C(C(C(G*r)+C(A*y))+C(D*k));y=z[e>>2];o=z[e+4>>2];k=z[e+8>>2];s=C(C(C(F*y)+C(U*o))+C(W*k));z[n+8>>2]=s;r=C(C(C(E*y)+C(T*o))+C(V*k));z[n+4>>2]=r;o=C(C(C(G*y)+C(A*o))+C(D*k));z[n>>2]=o;k=C(K(C(C(s*s)+C(C(o*o)+C(r*r)))));D=C(C(1)/k);if(k>C(0)){z[n+8>>2]=s*D;z[n+4>>2]=r*D;z[n>>2]=o*D}f=C(C(k*f)+C(.0010000000474974513));Q=n+112|0}d=1;I=w[b+32|0]&2;d=I?d:w[g|0]>>>7|0;g=x[g>>1];z[n+108>>2]=D;t[n+104|0]=I>>>1;v[n+100>>2]=e;v[n+96>>2]=g;v[n+92>>2]=Q;v[n+88>>2]=c;v[n+84>>2]=b+4;v[n+76>>2]=0;v[n+72>>2]=i;v[n+64>>2]=143152;v[n+80>>2]=h;v[n+68>>2]=h>>>0<2?(g>>>6^-1)&1:2;g=n- -64|0;h=0;i=0;m=xa-288|0;xa=m;c:{if(f==C(0)){y=z[a+60>>2];e=w[a+64|0];c=v[a+28>>2];b=v[a+24>>2];v[m+36>>2]=143208;v[m+56>>2]=0;v[m+32>>2]=143184;ia=m,ja=Vaa(b,c),v[ia+48>>2]=ja;v[m+52>>2]=Aa;v[m+44>>2]=e>>>1&1;v[m+40>>2]=g;A=z[n+32>>2];z[m+60>>2]=A;D=z[n+36>>2];z[m- -64>>2]=D;s=z[n+40>>2];z[m+68>>2]=s;o=z[n>>2];z[m+72>>2]=o;k=z[n+4>>2];z[m+76>>2]=k;r=z[n+8>>2];v[m+112>>2]=0;v[m+116>>2]=0;u[m+108>>1]=0;v[m+104>>2]=-1;z[m+88>>2]=y;t[m+84|0]=d;z[m+80>>2]=r;v[m+120>>2]=0;v[m+124>>2]=0;v[m+128>>2]=0;v[m+132>>2]=0;v[m+144>>2]=0;v[m+136>>2]=2139095039;v[m+140>>2]=0;v[m+96>>2]=0;v[m+100>>2]=0;z[m+92>>2]=f;b=v[g+4>>2];z[m+244>>2]=D;z[m+248>>2]=s;z[m+260>>2]=k;z[m+264>>2]=r;v[m+268>>2]=0;v[m+252>>2]=0;t[m+208|0]=0;z[m+240>>2]=A;z[m+256>>2]=o;t[m+209|0]=(b|0)==1;z[m+24>>2]=s;z[m+20>>2]=D;z[m+16>>2]=A;z[m+8>>2]=s+C(0);z[m+4>>2]=D+C(0);z[m>>2]=A+C(0);B0(a+112|0,m+16|0,m,m+32|4);v[m+36>>2]=143208;v[m+32>>2]=143184;if(!w[m+208|0]){break c}a=v[m+40>>2];Ba[v[v[a>>2]>>2]](a,m+96|0,m+160|0,m+172|0,m+184|0,m+92|0,m+196|0)|0;break c}D=z[a+60>>2];e=w[a+64|0];c=v[a+28>>2];b=v[a+24>>2];v[m+36>>2]=143384;v[m+56>>2]=0;v[m+32>>2]=143360;ia=m,ja=Vaa(b,c),v[ia+48>>2]=ja;v[m+52>>2]=Aa;v[m+44>>2]=e>>>1&1;v[m+40>>2]=g;s=z[n+32>>2];z[m+60>>2]=s;r=z[n+36>>2];z[m- -64>>2]=r;y=z[n+40>>2];z[m+68>>2]=y;o=z[n>>2];z[m+72>>2]=o;k=z[n+4>>2];z[m+76>>2]=k;A=z[n+8>>2];v[m+112>>2]=0;v[m+116>>2]=0;u[m+108>>1]=0;v[m+104>>2]=-1;z[m+88>>2]=D;t[m+84|0]=d;z[m+80>>2]=A;v[m+120>>2]=0;v[m+124>>2]=0;v[m+128>>2]=0;v[m+132>>2]=0;v[m+144>>2]=0;v[m+136>>2]=2139095039;v[m+140>>2]=0;v[m+96>>2]=0;v[m+100>>2]=0;z[m+92>>2]=f;b=v[g+4>>2];z[m+244>>2]=r;z[m+248>>2]=y;z[m+260>>2]=k;z[m+264>>2]=A;v[m+268>>2]=0;v[m+252>>2]=0;t[m+208|0]=0;z[m+240>>2]=s;z[m+256>>2]=o;t[m+209|0]=(b|0)==1;d=m+32|0;J=xa-528|0;xa=J;e=v[a+180>>2];g=e-1|0;d:{if((g|0)<0){break d}I=J+16|4;if(g>>>0>=3){b=e&-4;while(1){Q=h<<2;c=B(g,112);v[Q+I>>2]=c;v[I+(Q|4)>>2]=c-112;v[I+(Q|8)>>2]=c-224;v[I+(Q|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){v[I+(h<<2)>>2]=B(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}k=z[n+8>>2];k=k>C(0)?k:C(-k);o=(l(2,(p(k>C(9.999999717180685e-10)?k:C(9.999999717180685e-10)),j(2))|v[n+8>>2]&-2147483648),q());k=C(C(1)/o);H=C(k*C(C(2)-C(k*o)));N=C(C(0)-C(z[n+40>>2]*H));k=z[n+4>>2];k=k>C(0)?k:C(-k);o=(l(2,(p(k>C(9.999999717180685e-10)?k:C(9.999999717180685e-10)),j(2))|v[n+4>>2]&-2147483648),q());k=C(C(1)/o);L=C(k*C(C(2)-C(k*o)));O=C(C(0)-C(z[n+36>>2]*L));k=z[n>>2];k=k>C(0)?k:C(-k);o=(l(2,(p(k>C(9.999999717180685e-10)?k:C(9.999999717180685e-10)),j(2))|v[n>>2]&-2147483648),q());k=C(C(1)/o);M=C(k*C(C(2)-C(k*o)));P=C(C(0)-C(z[n+32>>2]*M));b=v[a+200>>2];while(1){a=(J+16|0)+(e<<2)|0;c=v[a>>2];e:{if(c&1){v[J+12>>2]=c-1;z[J+8>>2]=f;if(!(Ba[v[v[d>>2]>>2]](d,1,J+12|0,J+8|0)|0)){break d}k=z[J+8>>2];if(k!=f){f=k}e=e-1|0;break e}c=b+c|0;fa=z[c+44>>2];ga=z[c+92>>2];$=z[c+60>>2];aa=z[c+12>>2];ha=z[c+28>>2];T=z[c+76>>2];U=z[c+40>>2];V=z[c+88>>2];ba=z[c+56>>2];ca=z[c+8>>2];W=z[c+24>>2];G=z[c+72>>2];E=z[c+36>>2];F=z[c+84>>2];da=z[c+52>>2];ea=z[c+4>>2];A=z[c+20>>2];D=z[c+68>>2];s=z[c+32>>2];r=z[c+80>>2];R=z[c>>2];S=z[c+48>>2];y=z[c+16>>2];k=z[c+64>>2];v[a>>2]=v[c+96>>2];X=C(P+C(M*R));Y=C(P+C(M*S));o=Xs?s:r;y=kY?X:Y;k=Z>_?Z:_;o=k>o?o:k;k=ro?o:k;a=e-(y>k|(kS|f>2]=v[c+100>>2];R=C(P+C(M*ea));S=C(P+C(M*da));o=Rs?s:r;y=kS?R:S;k=A>D?A:D;o=k>o?o:k;k=ro?o:k;a=a+((y>k^-1)&(!(k>2]=v[c+104>>2];E=C(P+C(M*ca));F=C(P+C(M*ba));o=Es?s:r;y=kF?E:F;k=A>D?A:D;o=k>o?o:k;k=ro?o:k;a=a+((y>k^-1)&(!(k>2]=v[c+108>>2];E=C(P+C(M*aa));F=C(P+C(M*$));o=Es?s:r;y=kF?E:F;k=A>D?A:D;o=k>o?o:k;k=ro?o:k;e=a+((y>k^-1)&(!(k>2]=143384;v[m+32>>2]=143360;if(!w[m+208|0]){break c}a=v[m+40>>2];Ba[v[v[a>>2]>>2]](a,m+96|0,m+160|0,m+172|0,m+184|0,m+92|0,m+196|0)|0}xa=m+288|0;xa=n+160|0;return v[n+76>>2]}function kv(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=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=0,oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0);h=xa-224|0;xa=h;na=w[f+6|0];n=z[c+4>>2];m=C(n+n);l=z[c+8>>2];o=C(m*l);B=z[c>>2];i=C(B+B);k=z[c+12>>2];s=C(i*k);K=C(o-s);z[h+76>>2]=K;o=C(o+s);z[h+68>>2]=o;s=C(C(1)-C(B*i));r=C(n*m);B=C(s-r);z[h+80>>2]=B;q=C(l+l);u=C(l*q);s=C(s-u);z[h- -64>>2]=s;l=C(i*l);m=C(m*k);P=C(l+m);z[h+72>>2]=P;i=C(i*n);k=C(q*k);Q=C(i-k);z[h+60>>2]=Q;n=C(l-m);z[h+56>>2]=n;l=C(i+k);z[h+52>>2]=l;F=C(C(C(1)-r)-u);z[h+48>>2]=F;V=z[c+16>>2];z[h+84>>2]=V;W=z[c+20>>2];z[h+88>>2]=W;X=z[c+24>>2];z[h+92>>2]=X;m=z[d+4>>2];r=C(m+m);i=z[d+8>>2];x=C(r*i);q=z[d>>2];k=C(q+q);u=z[d+12>>2];y=C(k*u);G=C(x-y);z[h+28>>2]=G;H=C(x+y);z[h+20>>2]=H;q=C(C(1)-C(q*k));x=C(m*r);I=C(q-x);z[h+32>>2]=I;A=q;q=C(i+i);y=C(i*q);J=C(A-y);z[h+16>>2]=J;i=C(k*i);r=C(r*u);L=C(i+r);z[h+24>>2]=L;m=C(k*m);k=C(q*u);M=C(m-k);z[h+12>>2]=M;q=C(i-r);z[h+8>>2]=q;k=C(m+k);z[h+4>>2]=k;N=C(C(C(1)-x)-y);z[h>>2]=N;Y=z[d+16>>2];z[h+36>>2]=Y;Z=z[d+20>>2];z[h+40>>2]=Z;_=z[d+24>>2];z[h+44>>2]=_;r=z[e>>2];O=C(_-X);S=C(Y-V);aa=C(Z-W);A=C(C(n*O)+C(C(F*S)+C(l*aa)));z[h+192>>2]=A;i=z[b+12>>2];oa=C(C(n*I)+C(C(F*L)+C(l*G)));ba=C(C(D(oa))+C(9.999999974752427e-7));m=z[b+8>>2];pa=C(C(n*H)+C(C(F*M)+C(l*J)));ca=C(C(D(pa))+C(9.999999974752427e-7));u=z[b+4>>2];qa=C(C(n*q)+C(C(F*N)+C(l*k)));da=C(C(D(qa))+C(9.999999974752427e-7));x=z[a+4>>2];ea=C(r+C(C(C(i*ba)+C(C(m*ca)+C(C(u*da)+x)))-C(D(A))));z[h+160>>2]=ea;a:{if(((p(ea),j(2))|0)<0){c=0;break a}$=C(C(o*O)+C(C(Q*S)+C(s*aa)));z[h+196>>2]=$;ra=C(C(o*I)+C(C(Q*L)+C(s*G)));fa=C(C(D(ra))+C(9.999999974752427e-7));sa=C(C(o*H)+C(C(Q*M)+C(s*J)));ga=C(C(D(sa))+C(9.999999974752427e-7));ta=C(C(o*q)+C(C(Q*N)+C(s*k)));ha=C(C(D(ta))+C(9.999999974752427e-7));y=z[a+8>>2];ia=C(r+C(C(C(i*fa)+C(C(m*ga)+C(C(u*ha)+y)))-C(D($))));z[h+164>>2]=ia;c=0;if(((p(ia),j(2))|0)<0){break a}R=C(C(B*O)+C(C(P*S)+C(K*aa)));z[h+200>>2]=R;ua=C(C(B*I)+C(C(P*L)+C(K*G)));ja=C(C(D(ua))+C(9.999999974752427e-7));va=C(C(B*H)+C(C(P*M)+C(K*J)));ka=C(C(D(va))+C(9.999999974752427e-7));wa=C(C(B*q)+C(C(P*N)+C(K*k)));la=C(C(D(wa))+C(9.999999974752427e-7));E=z[a+12>>2];ma=C(r+C(C(C(i*ja)+C(C(m*ka)+C(C(u*la)+E)))-C(D(R))));z[h+168>>2]=ma;if(((p(ma),j(2))|0)<0){break a}T=C(C(q*O)+C(C(N*S)+C(k*aa)));z[h+204>>2]=T;T=C(r+C(C(C(E*la)+C(C(y*ha)+C(C(x*da)+u)))-C(D(T))));z[h+172>>2]=T;if(((p(T),j(2))|0)<0){break a}U=C(C(H*O)+C(C(M*S)+C(J*aa)));z[h+208>>2]=U;U=C(r+C(C(C(E*ka)+C(C(y*ga)+C(C(x*ca)+m)))-C(D(U))));z[h+176>>2]=U;if(((p(U),j(2))|0)<0){break a}O=C(C(I*O)+C(C(L*S)+C(G*aa)));z[h+212>>2]=O;O=C(r+C(C(C(E*ja)+C(C(y*fa)+C(C(x*ba)+i)))-C(D(O))));z[h+180>>2]=O;if(((p(O),j(2))|0)<0){break a}b:{if(!na){na=0;if(C(D(C(C(R*ta)-C(wa*$))))>C(C(i*ca)+C(C(m*ba)+C(C(E*ha)+C(C(y*la)+r))))){break a}S=C(-$);if(C(D(C(C(R*sa)+C(va*S))))>C(C(i*da)+C(C(u*ba)+C(C(E*ga)+C(C(y*ka)+r))))|C(D(C(C(R*ra)+C(ua*S))))>C(C(m*da)+C(C(u*ca)+C(C(E*fa)+C(C(y*ja)+r))))|C(D(C(C(A*wa)-C(qa*R))))>C(C(i*ga)+C(C(m*fa)+C(C(E*da)+C(C(x*la)+r))))){break a}R=C(-R);if(C(D(C(C(A*va)+C(pa*R))))>C(C(i*ha)+C(C(u*fa)+C(C(E*ca)+C(C(x*ka)+r))))|C(D(C(C(A*ua)+C(oa*R))))>C(C(m*ha)+C(C(u*ga)+C(C(E*ba)+C(C(x*ja)+r))))|C(D(C(C($*qa)-C(ta*A))))>C(C(i*ka)+C(C(m*ja)+C(C(y*da)+C(C(x*ha)+r))))){break a}A=C(-A);if(C(D(C(C($*pa)+C(sa*A))))>C(C(i*la)+C(C(u*ja)+C(C(y*ca)+C(C(x*ga)+r))))){break a}if(!(C(D(C(C($*oa)+C(ra*A))))>C(C(m*la)+C(C(u*ka)+C(C(y*ba)+C(C(x*fa)+r)))))){break b}break a}c=(na<<2)+h|0;z[c+156>>2]=z[c+156>>2]*C(.9990000128746033);O=z[h+180>>2];U=z[h+176>>2];T=z[h+172>>2];ma=z[h+168>>2];ia=z[h+164>>2];ea=z[h+160>>2]}b=b+4|0;d=a+4|0;A=ea>=C(0)?eaia&ia>=C(0);c=a;A=a?ia:A;a=A>ma&ma>=C(0);c=a?2:c;A=a?ma:A;a=A>T&T>=C(0);c=a?3:c;A=a?T:A;a=A>U&U>=C(0);c=a?4:c;e=O>=C(0)?(a?U:A)>O?5:c:c;a=v[(h+192|0)+(e<<2)>>2]&-2147483648;c=0;c:{d:{switch(e|0){case 0:e:{if(a){z[h+96>>2]=F;z[h+112>>2]=F;z[h+104>>2]=n;q=C(X-C(n*x));z[h+100>>2]=l;k=C(W-C(l*x));i=C(V-C(F*x));break e}i=C(-n);z[h+104>>2]=i;m=C(-l);z[h+100>>2]=m;k=C(-F);z[h+96>>2]=k;z[h+112>>2]=k;q=C(X+C(n*x));k=C(W+C(l*x));o=C(-o);s=C(-s);Q=C(-Q);l=m;n=i;i=C(V+C(F*x))}z[h+156>>2]=q;z[h+152>>2]=k;z[h+144>>2]=B;z[h+140>>2]=K;z[h+132>>2]=o;z[h+128>>2]=s;z[h+148>>2]=i;z[h+136>>2]=P;z[h+124>>2]=Q;z[h+120>>2]=n;z[h+116>>2]=l;c=fZ(g,h+96|0,y,E,b,h+112|0,h,r);break c;case 1:z[h+144>>2]=n;z[h+140>>2]=l;z[h+136>>2]=F;f:{if(a){z[h+96>>2]=Q;z[h+112>>2]=Q;z[h+104>>2]=o;l=C(X-C(o*y));z[h+100>>2]=s;F=C(W-C(s*y));n=C(V-C(Q*y));break f}n=C(-o);z[h+104>>2]=n;i=C(-s);z[h+100>>2]=i;l=C(-Q);z[h+96>>2]=l;z[h+112>>2]=l;l=C(X+C(o*y));F=C(W+C(s*y));B=C(-B);K=C(-K);P=C(-P);s=i;o=n;n=C(V+C(Q*y))}z[h+156>>2]=l;z[h+152>>2]=F;z[h+132>>2]=B;z[h+128>>2]=K;z[h+148>>2]=n;z[h+124>>2]=P;z[h+120>>2]=o;z[h+116>>2]=s;c=fZ(g,h+96|0,E,x,b,h+112|0,h,r);break c;case 2:z[h+144>>2]=o;z[h+140>>2]=s;z[h+136>>2]=Q;g:{if(a){z[h+96>>2]=P;z[h+112>>2]=P;z[h+104>>2]=B;k=C(X-C(B*E));z[h+100>>2]=K;o=C(W-C(K*E));s=C(V-C(P*E));break g}s=C(-B);z[h+104>>2]=s;i=C(-K);z[h+100>>2]=i;o=C(-P);z[h+96>>2]=o;z[h+112>>2]=o;k=C(X+C(B*E));o=C(W+C(K*E));n=C(-n);l=C(-l);F=C(-F);K=i;B=s;s=C(V+C(P*E))}z[h+156>>2]=k;z[h+152>>2]=o;z[h+132>>2]=n;z[h+128>>2]=l;z[h+148>>2]=s;z[h+124>>2]=F;z[h+120>>2]=B;z[h+116>>2]=K;c=fZ(g,h+96|0,x,y,b,h+112|0,h,r);break c;case 3:h:{if(a){z[h+96>>2]=N;z[h+112>>2]=-N;z[h+104>>2]=q;n=C(_+C(q*u));z[h+100>>2]=k;l=C(Z+C(k*u));H=C(-H);J=C(-J);M=C(-M);q=C(-q);k=C(-k);o=C(Y+C(N*u));break h}z[h+104>>2]=-q;z[h+100>>2]=-k;z[h+112>>2]=N;z[h+96>>2]=-N;n=C(_-C(q*u));l=C(Z-C(k*u));o=C(Y-C(N*u))}z[h+156>>2]=n;z[h+152>>2]=l;z[h+144>>2]=I;z[h+140>>2]=G;z[h+132>>2]=H;z[h+128>>2]=J;z[h+148>>2]=o;z[h+136>>2]=L;z[h+124>>2]=M;z[h+120>>2]=q;z[h+116>>2]=k;c=fZ(g,h+96|0,m,i,d,h+112|0,h+48|0,r);break c;case 4:z[h+144>>2]=q;z[h+140>>2]=k;z[h+136>>2]=N;i:{if(a){z[h+96>>2]=M;z[h+112>>2]=-M;z[h+104>>2]=H;n=C(_+C(H*m));z[h+100>>2]=J;l=C(Z+C(J*m));I=C(-I);G=C(-G);L=C(-L);H=C(-H);J=C(-J);o=C(Y+C(M*m));break i}z[h+104>>2]=-H;z[h+100>>2]=-J;z[h+112>>2]=M;z[h+96>>2]=-M;n=C(_-C(H*m));l=C(Z-C(J*m));o=C(Y-C(M*m))}z[h+156>>2]=n;z[h+152>>2]=l;z[h+132>>2]=I;z[h+128>>2]=G;z[h+148>>2]=o;z[h+124>>2]=L;z[h+120>>2]=H;z[h+116>>2]=J;c=fZ(g,h+96|0,i,u,d,h+112|0,h+48|0,r);break c;case 5:break d;default:break c}}z[h+144>>2]=H;z[h+140>>2]=J;z[h+136>>2]=M;j:{if(a){z[h+96>>2]=L;z[h+112>>2]=-L;z[h+104>>2]=I;n=C(_+C(I*i));z[h+100>>2]=G;l=C(Z+C(G*i));q=C(-q);k=C(-k);N=C(-N);I=C(-I);G=C(-G);o=C(Y+C(L*i));break j}z[h+104>>2]=-I;z[h+100>>2]=-G;z[h+112>>2]=L;z[h+96>>2]=-L;n=C(_-C(I*i));l=C(Z-C(G*i));o=C(Y-C(L*i))}z[h+156>>2]=n;z[h+152>>2]=l;z[h+132>>2]=q;z[h+128>>2]=k;z[h+148>>2]=o;z[h+124>>2]=N;z[h+120>>2]=I;z[h+116>>2]=G;c=fZ(g,h+96|0,u,m,d,h+112|0,h+48|0,r)}na=e+1|0}t[f+6|0]=c?na:0;xa=h+224|0;return(c|0)!=0|0}function IZ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,u){var x=C(0),y=0,A=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=0,ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=0,ha=0,ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=0,za=0;y=xa-112|0;xa=y;x=z[m>>2];a:{if(r){A=z[m+8>>2];ma=C(-A);E=z[m+4>>2];na=C(-E);U=C(-x);break a}E=z[m+4>>2];na=E;A=z[m+8>>2];ma=A;U=x}sa=U;V=y-(B(a>>>0>g>>>0?a:g,12)+15&-16)|0;xa=V;G=a+15&-16;ga=V-G|0;m=ga;xa=m;aa=m-G|0;xa=aa;G=g+15&-16;ha=aa-G|0;m=ha;xa=m;ia=m-G|0;xa=ia;ya=v[q+4096>>2];m=0;v[y+16>>2]=0;v[y+32>>2]=0;v[y>>2]=0;v[y+44>>2]=0;b:{c:{d:{if(g>>>0<3){break d}oa=C(C(z[j+8>>2]*A)+C(C(z[j>>2]*x)+C(z[j+4>>2]*E)));pa=C(C(z[j+20>>2]*A)+C(C(z[j+12>>2]*x)+C(E*z[j+16>>2])));qa=C(C(z[j+32>>2]*A)+C(C(z[j+24>>2]*x)+C(E*z[j+28>>2])));O=C(C(C(C(-oa)*z[k>>2])-C(z[k+4>>2]*pa))-C(qa*z[k+8>>2]));if(!(O>=C(1.0000000116860974e-7))){break d}Q=z[n+44>>2];R=z[l+32>>2];T=z[n+40>>2];P=z[l+28>>2];M=z[n+36>>2];J=z[l+24>>2];N=z[n+32>>2];K=z[n+28>>2];L=z[n+24>>2];I=z[n+20>>2];H=z[n+16>>2];F=z[n+12>>2];A=z[n+4>>2];E=z[n>>2];x=z[n+8>>2];ra=z[k+12>>2];JZ(y+16|0,y+32|0,y,y+44|0,V,g,h,i,l);if(!a){k=0;break c}ta=C(C(R*Q)+C(C(J*M)+C(P*T)));ua=C(C(R*N)+C(C(J*L)+C(P*K)));va=C(C(R*I)+C(C(J*F)+C(P*H)));wa=C(C(R*x)+C(C(J*E)+C(A*P)));W=C(C(1)/O);X=C(-ra);Y=z[y+44>>2];Z=z[y>>2];_=z[y+32>>2];R=z[y+16>>2];k=0;while(1){S=c+m|0;ba=B(w[S|0],12)+b|0;I=z[ba+8>>2];H=z[ba>>2];x=z[ba+4>>2];F=C(ta+C(C(I*ua)+C(C(H*wa)+C(va*x))));ca=C(W*C(ra+F));A=C(C(qa*ca)+C(C(C(C(H*z[n+8>>2])+C(x*z[n+20>>2]))+C(I*z[n+32>>2]))+z[n+44>>2]));E=C(C(oa*ca)+C(C(C(C(H*z[n>>2])+C(x*z[n+12>>2]))+C(I*z[n+24>>2]))+z[n+36>>2]));x=C(C(pa*ca)+C(C(C(C(H*z[n+4>>2])+C(x*z[n+16>>2]))+C(I*z[n+28>>2]))+z[n+40>>2]));G=KZ(V,g,C(C(C(z[l+8>>2]*A)+C(C(z[l>>2]*E)+C(x*z[l+4>>2])))-R),C(C(C(z[l+20>>2]*A)+C(C(z[l+12>>2]*E)+C(x*z[l+16>>2])))-_),Z,Y,m+aa|0);t[m+ga|0]=G;e:{if(!G){break e}$=$+1|0;if(!(F>2];if(G>>>0>63){break e}v[q+4096>>2]=G+1;t[(y+48|0)+za|0]=w[S|0];G=(G<<6)+q|0;z[G+8>>2]=ma;z[G+4>>2]=na;z[G>>2]=sa;P=z[d+36>>2];J=z[d+24>>2];O=z[d>>2];Q=z[d+12>>2];T=z[s>>2];M=z[d+40>>2];N=z[d+28>>2];K=z[d+4>>2];L=z[d+16>>2];I=z[s+4>>2];H=z[d+44>>2];F=z[d+32>>2];ja=z[ba+8>>2];A=z[d+8>>2];ka=z[ba>>2];E=z[d+20>>2];la=z[ba+4>>2];x=z[s+8>>2];v[G+52>>2]=p;z[G+12>>2]=ca+u;z[G+24>>2]=C(H+C(C(C(ka*A)+C(la*E))+C(ja*F)))+(r?x:C(0));z[G+20>>2]=C(M+C(C(C(ka*K)+C(la*L))+C(ja*N)))+(r?I:C(0));z[G+16>>2]=C(P+C(C(C(ka*O)+C(la*Q))+C(ja*J)))+(r?T:C(0));za=za+1|0}m=m+1|0;if((m|0)!=(a|0)){continue}break}break c}I9(ga,0,a);I9(aa,0,a);break b}m=k}f:{if((a|0)==($|0)){LZ(q,ya,a,f,b,y+48|0);break f}LZ(q,ya,$,f,b,y+48|0);g:{h:{if(a>>>0>=3){Q=z[o+44>>2];W=z[f+32>>2];T=z[o+40>>2];X=z[f+28>>2];M=z[o+36>>2];Y=z[f+24>>2];Z=z[f+20>>2];_=z[f+16>>2];R=z[f+12>>2];N=z[o+32>>2];K=z[o+28>>2];L=z[o+24>>2];I=z[o+20>>2];H=z[o+16>>2];F=z[o+12>>2];P=z[f+4>>2];J=z[f>>2];O=z[f+8>>2];A=z[o+4>>2];E=z[o>>2];x=z[o+8>>2];S=v[q+4096>>2];U=z[e+12>>2];JZ(y+16|0,y+32|0,y,y+44|0,V,a,b,c,f);if(!g){f=0;break h}ca=C(C(W*Q)+C(C(Y*M)+C(X*T)));ja=C(C(Z*Q)+C(C(R*M)+C(_*T)));ka=C(C(W*N)+C(C(Y*L)+C(X*K)));la=C(C(Z*N)+C(C(R*L)+C(_*K)));ra=C(C(W*I)+C(C(Y*F)+C(X*H)));oa=C(C(Z*I)+C(C(R*F)+C(_*H)));pa=C(C(O*Q)+C(C(J*M)+C(P*T)));qa=C(C(O*N)+C(C(J*L)+C(P*K)));ta=C(C(O*I)+C(C(J*F)+C(P*H)));ua=C(C(W*x)+C(C(Y*E)+C(A*X)));va=C(C(Z*x)+C(C(R*E)+C(A*_)));wa=C(C(O*x)+C(C(J*E)+C(P*A)));W=C(-U);f=0;X=z[y+44>>2];Y=z[y>>2];Z=z[y+32>>2];_=z[y+16>>2];$=0;n=0;while(1){G=w[i+n|0];k=B(G,12)+h|0;da=z[k+8>>2];ea=z[k>>2];fa=z[k+4>>2];k=KZ(V,a,C(C(pa+C(C(da*qa)+C(C(ea*wa)+C(ta*fa))))-_),C(C(ja+C(C(da*la)+C(C(ea*va)+C(oa*fa))))-Z),Y,X,n+ia|0);t[n+ha|0]=k;i:{if(!k){break i}f=f+1|0;R=C(ca+C(C(da*ka)+C(C(ea*ua)+C(ra*fa))));if(!(R>2];if(k>>>0>63){break i}v[q+4096>>2]=k+1;t[(y+48|0)+$|0]=G;k=(k<<6)+q|0;z[k+8>>2]=ma;z[k+4>>2]=na;z[k>>2]=sa;P=z[j+36>>2];J=z[j+24>>2];O=z[j>>2];Q=z[j+12>>2];T=z[s>>2];M=z[j+40>>2];N=z[j+28>>2];K=z[j+4>>2];L=z[j+16>>2];I=z[s+4>>2];H=z[j+44>>2];F=z[j+32>>2];A=z[j+8>>2];E=z[j+20>>2];x=z[s+8>>2];v[k+52>>2]=p;z[k+12>>2]=C(U+R)+u;z[k+24>>2]=C(H+C(C(C(ea*A)+C(fa*E))+C(da*F)))+(r?C(0):x);z[k+20>>2]=C(M+C(C(C(ea*K)+C(fa*L))+C(da*N)))+(r?C(0):I);z[k+16>>2]=C(P+C(C(C(ea*O)+C(fa*Q))+C(da*J)))+(r?C(0):T);$=$+1|0}n=n+1|0;if((n|0)!=(g|0)){continue}break}break h}I9(ha,0,g);I9(ia,0,g);break g}if((f|0)==(g|0)){LZ(q,S,g,l,h,y+48|0);break f}LZ(q,S,f,l,h,y+48|0)}if(!g){break f}Q=z[o+44>>2];T=z[o+40>>2];M=z[o+36>>2];N=z[o+32>>2];K=z[o+28>>2];L=z[o+24>>2];I=z[o+20>>2];H=z[o+16>>2];F=z[o+12>>2];A=z[o+8>>2];E=z[o+4>>2];x=z[o>>2];n=0;while(1){j=B(n,12)+V|0;f=B(w[i+n|0],12)+h|0;P=z[f>>2];J=z[f+4>>2];O=z[f+8>>2];z[j+8>>2]=C(C(C(P*A)+C(J*I))+C(O*N))+Q;z[j+4>>2]=C(C(C(P*E)+C(J*H))+C(O*K))+T;z[j>>2]=C(C(C(P*x)+C(J*F))+C(O*L))+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(!(w[h+ia|0]&w[f+ia|0]|(w[h+ha|0]?w[f+ha|0]:0))){S=B(f,12)+V|0;M=z[S>>2];G=B(h,12)+V|0;E=z[G>>2];N=z[S+8>>2];x=z[G+8>>2];A=z[S+4>>2];K=C(z[G+4>>2]-A);z[y+36>>2]=K;F=C(x-N);z[y+40>>2]=F;L=C(E-M);z[y+32>>2]=L;I=z[e+4>>2];E=z[e>>2];x=z[e+8>>2];H=C(C(F*E)-C(x*L));z[y+20>>2]=H;F=C(C(K*x)-C(I*F));z[y+16>>2]=F;x=C(C(L*I)-C(E*K));z[y+24>>2]=x;z[y+28>>2]=-C(C(x*N)+C(C(F*M)+C(A*H)));A=C(D(x));E=C(D(H));x=C(D(F));j:{k:{if(!(!(E>x)|!(A>2]*z[h+e>>2])-C(z[e+l>>2]*z[h+j>>2])));n=0;while(1){h=n;n=n+1|0;j=a>>>0>n>>>0?n:0;l:{if(w[j+aa|0]&w[h+aa|0]|(w[j+ga|0]?w[h+ga|0]:0)){break l}o=y+32|0;l=0;h=B(w[c+h|0],12)+b|0;M=z[h+8>>2];F=z[y+24>>2];N=z[h>>2];K=z[y+16>>2];L=z[h+4>>2];I=z[y+20>>2];x=z[y+28>>2];H=C(C(C(M*F)+C(C(N*K)+C(L*I)))+x);U=x;h=B(w[c+j|0],12)+b|0;A=z[h+8>>2];E=z[h>>2];x=z[h+4>>2];m:{if(C(H*C(U+C(C(A*F)+C(C(E*K)+C(I*x)))))>C(0)){break m}U=F;F=C(A-M);A=C(E-N);E=C(x-L);x=C(C(U*F)+C(C(K*A)+C(I*E)));if(x==C(0)){break m}x=C(H/x);z[y+8>>2]=M-C(F*x);z[y+4>>2]=L-C(E*x);z[y>>2]=N-C(A*x);j=f<<2;h=i<<2;H=C(C(C(z[j+o>>2]*C(z[h+y>>2]-z[h+S>>2]))-C(C(z[j+y>>2]-z[j+S>>2])*z[h+o>>2]))*T);z[y+44>>2]=H;if(H>2];x=z[e+4>>2];F=C(z[y>>2]-C(H*z[e>>2]));z[y>>2]=F;A=C(z[y+4>>2]-C(H*x));z[y+4>>2]=A;x=C(z[y+8>>2]-C(H*E));z[y+8>>2]=x;l=C(C(C(z[S+8>>2]-x)*C(z[G+8>>2]-x))+C(C(C(z[S>>2]-F)*C(z[G>>2]-F))+C(C(z[S+4>>2]-A)*C(z[G+4>>2]-A))))>2];if(h>>>0>63){break l}v[q+4096>>2]=h+1;h=(h<<6)+q|0;z[h+8>>2]=ma;z[h+4>>2]=na;z[h>>2]=sa;M=z[d+36>>2];N=z[d+24>>2];K=z[d>>2];L=z[d+12>>2];I=z[s>>2];H=z[d+40>>2];F=z[d+28>>2];A=z[d+4>>2];E=z[d+16>>2];x=z[s+4>>2];J=z[y>>2];O=z[y+4>>2];Q=z[y+8>>2];z[h+24>>2]=C(C(C(C(J*z[d+8>>2])+C(O*z[d+20>>2]))+C(Q*z[d+32>>2]))+z[d+44>>2])+(r?C(0):z[s+8>>2]);z[h+20>>2]=C(H+C(C(C(J*A)+C(O*E))+C(Q*F)))+(r?C(0):x);z[h+16>>2]=C(M+C(C(C(J*K)+C(O*L))+C(Q*N)))+(r?C(0):I);x=z[y+44>>2];v[h+52>>2]=p;z[h+12>>2]=u-x}if((a|0)!=(n|0)){continue}break}}if((g|0)!=(k|0)){continue}break}}xa=y+112|0;return m}function mp(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,y=0;c=xa-208|0;xa=c;n=a+40|0;f=v[n>>2];v[n>>2]=f?f:1;a:{b:{switch(f+1|0){case 2:a9(v[37696],8,5611,312,19906,0);break a;case 0:a9(v[37696],8,5611,317,16532,0);break a;default:break b}}d=v[a+28>>2];c:{if(!d){break c}f=v[a+60>>2];if(d-1>>>0>=7){g=d&-8;while(1){b=f+B(e,80)|0;v[b+64>>2]=0;v[b+68>>2]=0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;b=f+B(e|1,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|2,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|3,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|4,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|5,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|6,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|7,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;e=e+8|0;j=j+8|0;if((g|0)!=(j|0)){continue}break}}b=d&7;if(!b){break c}while(1){j=f+B(e,80)|0;v[j+64>>2]=0;v[j+68>>2]=0;u[j+70>>1]=0;u[j+72>>1]=0;u[j+74>>1]=0;u[j+76>>1]=0;e=e+1|0;h=h+1|0;if((b|0)!=(h|0)){continue}break}}g=v[a+32>>2];d:{if(!g){break d}f=v[a+76>>2];j=0;h=0;if(g-1>>>0>=7){l=g&-8;e=0;while(1){b=h<<5;d=b+f|0;v[d+16>>2]=0;v[d+20>>2]=0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;d=f+(b|32)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;d=f+(b|64)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;d=f+(b|96)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;d=f+(b|128)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;d=f+(b|160)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;d=f+(b|192)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;b=f+(b|224)|0;u[b+22>>1]=0;u[b+24>>1]=0;u[b+26>>1]=0;u[b+28>>1]=0;v[b+16>>2]=0;v[b+20>>2]=0;h=h+8|0;e=e+8|0;if((l|0)!=(e|0)){continue}break}}b=g&7;if(!b){break d}while(1){e=f+(h<<5)|0;v[e+16>>2]=0;v[e+20>>2]=0;u[e+22>>1]=0;u[e+24>>1]=0;u[e+26>>1]=0;u[e+28>>1]=0;h=h+1|0;j=j+1|0;if((b|0)!=(j|0)){continue}break}}g=v[a+36>>2];e:{if(!g){break e}f=v[a+68>>2];j=0;h=0;if(g-1>>>0>=7){l=g&-8;e=0;while(1){b=h<<6;d=b+f|0;v[d+48>>2]=0;v[d+52>>2]=0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;d=f+(b|64)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;d=f+(b|128)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;d=f+(b|192)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;d=f+(b|256)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;d=f+(b|320)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;d=f+(b|384)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;b=f+(b|448)|0;u[b+54>>1]=0;u[b+56>>1]=0;u[b+58>>1]=0;u[b+60>>1]=0;v[b+48>>2]=0;v[b+52>>2]=0;h=h+8|0;e=e+8|0;if((l|0)!=(e|0)){continue}break}}b=g&7;if(!b){break e}while(1){e=f+(h<<6)|0;v[e+48>>2]=0;v[e+52>>2]=0;u[e+54>>1]=0;u[e+56>>1]=0;u[e+58>>1]=0;u[e+60>>1]=0;h=h+1|0;j=j+1|0;if((b|0)!=(j|0)){continue}break}}y=v[a+88>>2];e=v[a+68>>2];l=v[a+72>>2];q=v[a+92>>2];f=v[a+76>>2];o=v[a+80>>2];r=v[a+84>>2];h=v[a+60>>2];p=v[a- -64>>2];j=v[a+44>>2];b=v[a+48>>2];d=v[a+56>>2];v[c+200>>2]=v[a+52>>2];v[c+204>>2]=d;v[c+192>>2]=j;v[c+196>>2]=b;if(v[a+108>>2]!=-16){d=c+24|4;j=0;while(1){b=v[a+12>>2]+j|0;g=b+40|0;if(v[b+40>>2]){v[b+40>>2]=b- -64;j=76}else{j=64}if(v[g+4>>2]){v[b+44>>2]=b+j;j=j+12|0}if(v[g+16>>2]){v[b+56>>2]=b+j;j=j+28|0}if(v[g+12>>2]){i=0;j=b+j|0;k=v[j>>2];if(!(k>>>0>4|(k|0)==1)){i=j+4|0}v[g+12>>2]=i}j=v[b>>2];f:{g:{switch(t[b+38|0]){case 0:k=v[a+64>>2];i=x[b+36>>1];u[c+40>>1]=0;v[c+36>>2]=-1;v[c+28>>2]=0;v[c+32>>2]=0;v[c+60>>2]=0;v[c+64>>2]=0;v[c+52>>2]=0;v[c+56>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+104>>2]=0;t[c+92|0]=0;v[c+76>>2]=0;v[c+68>>2]=2139095039;v[c+72>>2]=0;u[c+128>>1]=0;v[c+124>>2]=-1;v[c+116>>2]=0;v[c+120>>2]=0;t[c+108|0]=0;v[c+24>>2]=124748;v[c+96>>2]=p;k=p-k>>6;m=r-k|0;v[c+100>>2]=i>>>0>>0?i:m;v[c+148>>2]=0;v[c+152>>2]=0;v[c+140>>2]=0;v[c+144>>2]=0;v[c+132>>2]=0;v[c+136>>2]=0;t[c+184|0]=0;v[c+164>>2]=0;v[c+156>>2]=2139095039;v[c+160>>2]=0;i=v[a+8>>2];u[c+16>>1]=x[b+4>>1];at(i,g,c+24|0,c+16|0,v[b+32>>2],b+8|0,0,c+192|0);i=w[c+108|0]|(k|0)==(r|0)&x[b+36>>1]!=0;t[c+108|0]=i;v[h+72>>2]=v[b+28>>2];g=v[d+4>>2];v[h>>2]=v[d>>2];v[h+4>>2]=g;v[h+8>>2]=v[d+8>>2];u[h+12>>1]=x[c+40>>1];z[h+16>>2]=z[c+44>>2];z[h+20>>2]=z[c+48>>2];z[h+24>>2]=z[c+52>>2];z[h+28>>2]=z[c+56>>2];z[h+32>>2]=z[c+60>>2];z[h+36>>2]=z[c+64>>2];z[h+40>>2]=z[c+68>>2];g=v[c+76>>2];v[h+44>>2]=v[c+72>>2];v[h+48>>2]=g;g=v[c+84>>2];v[h+52>>2]=v[c+80>>2];v[h+56>>2]=g;v[h+60>>2]=v[c+88>>2];t[h+77|0]=w[c+92|0];g=v[c+104>>2];i=i&255;t[h+76|0]=i?2:1;v[h+68>>2]=g;k=v[c+96>>2];v[h+64>>2]=i?g?k:0:k;h=h+80|0;p=(g<<6)+p|0;break f;case 1:k=v[a+80>>2];i=x[b+36>>1];v[c+56>>2]=0;t[c+44|0]=0;v[c+36>>2]=-1;v[c+28>>2]=0;v[c+32>>2]=0;t[c+88|0]=0;v[c+76>>2]=-1;v[c+68>>2]=0;v[c+72>>2]=0;t[c+60|0]=0;v[c+24>>2]=124784;v[c+48>>2]=o;k=o-k>>4;m=q-k|0;v[c+52>>2]=i>>>0>>0?i:m;i=v[a+8>>2];u[c+8>>1]=x[b+4>>1];dt(i,g,c+24|0,c+8|0,v[b+32>>2],b+8|0,0,c+192|0);i=w[c+60|0]|(k|0)==(q|0)&x[b+36>>1]!=0;t[c+60|0]=i;v[f+24>>2]=v[b+28>>2];g=v[d+4>>2];v[f>>2]=v[d>>2];v[f+4>>2]=g;g=v[d+12>>2];v[f+8>>2]=v[d+8>>2];v[f+12>>2]=g;t[f+29|0]=w[c+44|0];g=v[c+56>>2];i=i&255;t[f+28|0]=i?2:1;v[f+20>>2]=g;k=v[c+48>>2];v[f+16>>2]=i?g?k:0:k;f=f+32|0;o=(g<<4)+o|0;break f;case 2:break g;default:break f}}k=v[a+72>>2];i=x[b+36>>1];u[c+40>>1]=0;v[c+36>>2]=-1;v[c+28>>2]=0;v[c+32>>2]=0;v[c+60>>2]=0;v[c+64>>2]=0;v[c+52>>2]=0;v[c+56>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+88>>2]=0;t[c+76|0]=0;v[c+68>>2]=2139095039;u[c+112>>1]=0;v[c+108>>2]=-1;v[c+100>>2]=0;v[c+104>>2]=0;t[c+92|0]=0;v[c+24>>2]=124840;v[c+80>>2]=l;k=((l-k|0)/-48|0)+y|0;v[c+84>>2]=i>>>0>>0?i:k;v[c+132>>2]=0;v[c+136>>2]=0;v[c+124>>2]=0;v[c+128>>2]=0;v[c+116>>2]=0;v[c+120>>2]=0;t[c+152|0]=0;v[c+140>>2]=2139095039;i=v[a+8>>2];u[c>>1]=x[b+4>>1];gt(i,g,c+24|0,c,v[b+32>>2],b+8|0,0,c+192|0);i=w[c+92|0]|(k?0:x[b+36>>1]!=0);t[c+92|0]=i;v[e+56>>2]=v[b+28>>2];g=v[d+4>>2];v[e>>2]=v[d>>2];v[e+4>>2]=g;v[e+8>>2]=v[d+8>>2];u[e+12>>1]=x[c+40>>1];z[e+16>>2]=z[c+44>>2];z[e+20>>2]=z[c+48>>2];z[e+24>>2]=z[c+52>>2];z[e+28>>2]=z[c+56>>2];z[e+32>>2]=z[c+60>>2];z[e+36>>2]=z[c+64>>2];z[e+40>>2]=z[c+68>>2];v[e+44>>2]=v[c+72>>2];t[e+61|0]=w[c+76|0];g=v[c+88>>2];i=i&255;t[e+60|0]=i?2:1;v[e+52>>2]=g;k=v[c+80>>2];v[e+48>>2]=i?g?k:0:k;e=e- -64|0;l=B(g,48)+l|0}b=v[b>>2];if((b|0)!=-16){s=((b|0)!=-16)+s|0;if(s>>>0<1e6){continue}}break}t[a+112|0]=0;v[a+108>>2]=-16;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[n>>2]=0;break a}t[a+112|0]=0;v[a+108>>2]=-16;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[n>>2]=0}xa=c+208|0}function Lz(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,A=0,D=0,E=0,F=0,G=0,H=C(0);A=xa-16|0;xa=A;E=v[a+92>>2]<<5;b=v[a+28>>2];F=v[b+440>>2];D=v[b+452>>2];e=v[v[a+32>>2]>>2];j=v[e+11960>>2];a:{if(!v[e+11896>>2]){n=j;break a}g=v[e+11892>>2];n=j;b=0;while(1){o=s<<2;d=v[o+g>>2]+c|0;b:{if(d>>>0>c>>>0){m=0;l=c;while(1){q=h;k=x[(v[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(!x[g+22>>1]){k=k-1|0;break d}if((b|0)!=(h|0)){p=v[g+4>>2];i=j+(h<<5)|0;v[i>>2]=v[g>>2];v[i+4>>2]=p;p=v[g+28>>2];v[i+24>>2]=v[g+24>>2];v[i+28>>2]=p;p=v[g+20>>2];v[i+16>>2]=v[g+16>>2];v[i+20>>2]=p;p=v[g+12>>2];v[i+8>>2]=v[g+8>>2];v[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=v[e+11964>>2]+(f<<3)|0;u[t+4>>1]=k;v[t>>2]=q;i=w[v[(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){G=i;i=j+(g+q<<5)|0;i=w[v[i+120>>2]]==1?1:w[v[i+88>>2]]==1?1:w[v[i+56>>2]]==1?1:w[v[i+24>>2]]==1?1:G;g=g+4|0;k=k+4|0;if((r|0)!=(k|0)){continue}break}}k=0;if(!p){break e}while(1){i=w[v[(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}}u[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=v[e+11892>>2];c=v[o+g>>2]+c|0;break b}m=0;c=d}v[g+o>>2]=m;s=s+1|0;if(s>>>0>2]){continue}break}b=v[a+28>>2]}v[e+11968>>2]=f;v[e+12080>>2]=h;c=n-j>>5;v[e+11868>>2]=c;v[e+11876>>2]=h-c;if(v[b+112>>2]){v[e+11992>>2]=0;n=v[e+11976>>2];if((v[e+11996>>2]&2147483647)>>>0>>0){dz(e+11988|0,f)}v[e+11908>>2]=0;t=e+11904|0;l=v[e+11988>>2];b=v[e+11900>>2]&2147483647;if(b>>>0>(v[e+11912>>2]&2147483647)>>>0){zw(t,b)}g:{if(!v[e+11896>>2]){k=0;b=n;break g}b=n;k=0;h=0;m=0;s=0;while(1){f=m;c=h;h=v[v[e+11892>>2]+(s<<2)>>2]+c|0;if(c>>>0>>0){while(1){i=v[e+11964>>2]+(c<<3)|0;d=x[i+6>>1];h:{if(d>>>0>8){break h}q=x[i+4>>1];d=1<>2]<<5)|0;g=v[d+24>>2];o=x[g+2>>1];g=g+o|0;p=w[g|0];r=x[d+22>>1];v[b+24>>2]=g;o=(r<<4)-o>>>4|0;u[b+22>>1]=o;v[b>>2]=v[d>>2];v[b+4>>2]=v[d+4>>2];v[b+12>>2]=v[d+12>>2];v[b+16>>2]=v[d+16>>2];u[b+8>>1]=x[d+8>>1];d=x[d+10>>1];v[b+28>>2]=0;u[b+10>>1]=d;u[b+20>>1]=0;d=v[i>>2];v[b+56>>2]=g;u[b+54>>1]=o;d=j+(d<<5)|0;v[b+32>>2]=v[d+32>>2];v[b+36>>2]=v[d+36>>2];v[b+44>>2]=v[d+44>>2];v[b+48>>2]=v[d+48>>2];u[b+40>>1]=x[d+40>>1];d=x[d+42>>1];v[b+60>>2]=0;u[b+42>>1]=d;u[b+52>>1]=0;d=v[i>>2];v[b+88>>2]=g;u[b+86>>1]=o;d=j+(d<<5)|0;v[b+64>>2]=v[d- -64>>2];v[b+68>>2]=v[d+68>>2];v[b+76>>2]=v[d+76>>2];v[b+80>>2]=v[d+80>>2];u[b+72>>1]=x[d+72>>1];d=x[d+74>>1];v[b+92>>2]=0;u[b+74>>1]=d;u[b+84>>1]=0;d=v[i>>2];v[b+120>>2]=g;u[b+118>>1]=o;d=j+(d<<5)|0;v[b+96>>2]=v[d+96>>2];v[b+100>>2]=v[d+100>>2];v[b+108>>2]=v[d+108>>2];v[b+112>>2]=v[d+112>>2];u[b+104>>1]=x[d+104>>1];d=x[d+106>>1];v[b+124>>2]=0;u[b+106>>1]=d;u[b+116>>1]=0;u[l+6>>1]=p;u[l+4>>1]=q;v[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+(v[i>>2]+g<<5)|0;p=x[d+22>>1];r=v[d+24>>2];o=x[r+2>>1];r=o+r|0;v[b+24>>2]=r;u[b+22>>1]=(p<<4)-o>>>4;v[b>>2]=v[d>>2];v[b+4>>2]=v[d+4>>2];v[b+12>>2]=v[d+12>>2];v[b+16>>2]=v[d+16>>2];u[b+8>>1]=x[d+8>>1];d=x[d+10>>1];v[b+28>>2]=0;u[b+10>>1]=d;u[b+20>>1]=0;b=b+32|0;g=g+1|0;if((q|0)!=(g|0)){continue}break}g=w[r|0];d=q}u[l+4>>1]=q;v[l>>2]=k;u[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;v[A+12>>2]=c;m=v[e+11908>>2];if(m>>>0>=(v[e+11912>>2]&2147483647)>>>0){on(t,A+12|0);break j}v[v[e+11904>>2]+(m<<2)>>2]=c;v[e+11908>>2]=v[e+11908>>2]+1}m=f}s=s+1|0;if(s>>>0>2]){continue}break}}v[e+12084>>2]=k;b=b-n>>5;v[e+11872>>2]=b;v[e+11992>>2]=l-v[e+11988>>2]>>3;v[e+11884>>2]=k-b;b=v[a+28>>2]}h=v[e+11976>>2];f=v[e+11960>>2];c=vr(v[b+584>>2],156);v[c>>2]=v[e+12112>>2];j=v[e+12116>>2];v[c+12>>2]=D;m=E+F|0;v[c+8>>2]=m;v[c+4>>2]=j;v[c+20>>2]=v[a+92>>2];v[c+16>>2]=v[v[a+32>>2]+4>>2];v[c+24>>2]=v[e+12144>>2];j=v[e+12148>>2];v[c+68>>2]=0;v[c+72>>2]=0;v[c+32>>2]=f;v[c+28>>2]=j;v[c+76>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;v[c+88>>2]=0;v[c+92>>2]=0;f=v[a+28>>2];j=v[f+4>>2];v[c+132>>2]=v[j+4>>2];j=v[j+8>>2];v[c+140>>2]=b+536;v[c+136>>2]=j;v[c+52>>2]=v[e+11940>>2];b=v[e+11928>>2];v[c+96>>2]=0;v[c+60>>2]=b;v[c+36>>2]=v[e+11964>>2];v[c+40>>2]=v[e+11968>>2];v[c+44>>2]=v[e+11892>>2];v[c+48>>2]=v[e+11896>>2];v[c+64>>2]=v[a+36>>2];v[c+120>>2]=v[e+11904>>2];v[c+124>>2]=v[e+11908>>2];v[c+112>>2]=v[e+11988>>2];b=v[e+11992>>2];v[c+128>>2]=0;v[c+116>>2]=b;v[c+108>>2]=h;v[c+144>>2]=v[e+12128>>2];z[c+100>>2]=z[f+52>>2];z[c+104>>2]=z[f+56>>2];f=v[e+12104>>2];b=v[a+16>>2];b=Ba[v[v[b>>2]+4>>2]](b)|0;b=Ba[v[v[b>>2]+4>>2]](b)|0;f=f<<3;f=f>>>0>1?f:1;f=((f+v[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;v[c+56>>2]=b>>>0>8?b:8;n=1;while(1){b=vr(v[v[a+28>>2]+584>>2],48);f=v[a+28>>2];j=v[f+112>>2];m=v[a+96>>2];e=v[f+600>>2];l=v[f+604>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=e;v[b+12>>2]=l;v[b+40>>2]=m;v[b+36>>2]=j;v[b+32>>2]=f;v[b+28>>2]=c;v[b>>2]=128724;f=v[a+20>>2];v[b+20>>2]=f;v[b+24>>2]=1;if(f){Ba[v[v[f>>2]+16>>2]](f);v[b+16>>2]=v[v[b+20>>2]+16>>2];d=v[b>>2]}else{d=128724}Ba[v[d+20>>2]](b);n=n+1|0;if((h|0)!=(n|0)){continue}break}mz(v[a+28>>2],c,v[a+96>>2]);a=v[a+32>>2];a=(v[a+8>>2]&2147483647)+v[a+4>>2]|0;if((a|0)<=v[c+96>>2]|(a|0)<=v[c+96>>2]){break k}b=3e4;while(1){if((a|0)<=v[c+96>>2]){break k}b=b-1|0;if(b){continue}b=1e4;continue}}v[e+12052>>2]=0;b=v[e+12128>>2];if(b>>>0>(v[e+12056>>2]&2147483647)>>>0){yw(e+12048|0,b);b=v[e+12128>>2]}v[e+12052>>2]=b;v[e+12064>>2]=0;if((v[e+12068>>2]&2147483647)>>>0>>0){yw(e+12060|0,b);b=v[e+12128>>2]}v[e+12064>>2]=b;v[c+148>>2]=v[e+12048>>2];v[c+152>>2]=v[e+12060>>2];b=v[a+28>>2];b=v[((v[b+112>>2]<<2)+b|0)+484>>2];Ba[v[v[b>>2]+16>>2]](b,c);h=v[a+32>>2];if(v[h+4>>2]){n=(B(v[a+92>>2],112)+D|0)+112|0;f=0;while(1){j=f<<5;b=j+v[e+11940>>2]|0;h=n+B(f,112)|0;nz(b,b+16|0,j+m|0,h,z[v[a+28>>2]+52>>2]);c=v[v[a+36>>2]+(f<<2)>>2];b=v[c+36>>2];z[c>>2]=z[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];z[b>>2]=z[h+80>>2];z[b+4>>2]=z[h+84>>2];z[b+8>>2]=z[h+88>>2];z[b+12>>2]=z[h+92>>2];z[b+16>>2]=z[h+96>>2];z[b+20>>2]=z[h+100>>2];z[b+24>>2]=z[h+104>>2];z[b+64>>2]=z[h>>2];z[b+68>>2]=z[h+4>>2];z[b+72>>2]=z[h+8>>2];z[b+80>>2]=z[h+16>>2];z[b+84>>2]=z[h+20>>2];z[b+88>>2]=z[h+24>>2];b=v[a+28>>2];H=z[b+52>>2];q=w[b+64|0];d=w[b+66|0];b=v[a+96>>2];if(oz(c,H,q,d,j+v[e+11940>>2]|0,v[v[b+100>>2]+(v[v[b+204>>2]+((v[h+72>>2]&33554431)<<2)>>2]<<2)>>2]!=0)==C(0)){v[c+64>>2]=0;v[c+68>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+72>>2]=0;v[c+56>>2]=0;u[c+28>>1]=x[c+28>>1]|16}f=f+1|0;h=v[a+32>>2];if(f>>>0>2]){continue}break}}if(!(v[h+8>>2]&2147483647)){break k}b=0;while(1){c=v[e+12144>>2]+B(b,52)|0;f=v[(v[v[c>>2]+24>>2]<<2)+149592>>2];if(f){Ba[f|0](c,z[v[a+28>>2]+52>>2]);h=v[a+32>>2]}b=b+1|0;if(b>>>0<(v[h+8>>2]&2147483647)>>>0){continue}break}}xa=A+16|0}function Mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=0,x=C(0),y=0,A=0,D=C(0),E=0,F=0,G=C(0),H=0,I=0,J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=0,X=0,Y=0,Z=C(0),_=C(0),$=0,aa=0;F=xa-16|0;xa=F;y=v[a+192>>2];E=v[a+180>>2];p=v[a+144>>2];n=v[a+156>>2];t[F+8|0]=w[c|0];u=a+112|0;U=v[a+668>>2];A=U;c=w[F+8|0];if(c&1){Fw(u,n,v[b+12>>2]);A=v[a+668>>2]|4;v[a+668>>2]=A;c=w[F+8|0]}if(c&2){Fw(u,p,v[b+16>>2]);A=v[a+668>>2]|8;v[a+668>>2]=A;c=w[F+8|0]}a:{if(!(c&64)){H=c&4;break a}I=v[a+444>>2];H=c&4;if(H){n=v[b+36>>2];l=z[n+20>>2];m=z[n+24>>2];q=z[n+16>>2];p=v[I+16>>2];j=z[p+44>>2];d=z[n+12>>2];i=z[p+32>>2];e=z[n>>2];g=z[n+4>>2];h=z[p+36>>2];f=z[n+8>>2];k=z[p+40>>2];z[p+12>>2]=C(C(C(d*j)-C(i*e))-C(g*h))-C(f*k);z[p+8>>2]=C(C(e*h)+C(C(d*k)+C(f*j)))-C(i*g);z[p+4>>2]=C(C(f*i)+C(C(d*h)+C(g*j)))-C(k*e);z[p>>2]=C(C(g*k)+C(C(d*i)+C(e*j)))-C(h*f);R=m;j=z[p+56>>2];j=C(j+j);i=z[p+48>>2];i=C(i+i);h=z[p+52>>2];h=C(h+h);k=C(C(f*j)+C(C(e*i)+C(g*h)));m=C(C(d*d)+C(-.5));z[p+24>>2]=R+C(C(f*k)+C(C(j*m)+C(d*C(C(e*h)-C(i*g)))));z[p+20>>2]=l+C(C(g*k)+C(C(h*m)+C(d*C(C(f*i)-C(j*e)))));z[p+16>>2]=q+C(C(e*k)+C(C(i*m)+C(d*C(C(g*j)-C(h*f)))))}if(c&1){p=v[I+16>>2];n=v[b+36>>2];z[p+64>>2]=z[n+28>>2];z[p+68>>2]=z[n+32>>2];z[p+72>>2]=z[n+36>>2];z[p+80>>2]=z[n+40>>2];z[p+84>>2]=z[n+44>>2];z[p+88>>2]=z[n+48>>2]}v[a+668>>2]=A|32}if(H){Fw(u,E,v[b+20>>2]);v[a+668>>2]=v[a+668>>2]|2;c=w[F+8|0]}if(c&8){Fw(u,y,v[b+24>>2]);v[a+668>>2]=v[a+668>>2]|16;c=w[F+8|0]}if(c&4){f=C(0);d=C(0);j=C(0);e=C(0);g=C(0);px(a,u,1);V=v[a+448>>2];if(V>>>0>=2){W=v[a+456>>2];H=v[a+444>>2];X=v[u+68>>2];Y=v[a+432>>2];A=v[u+260>>2];b=1;while(1){y=B(b,80)+W|0;p=(v[y+72>>2]<<2)+X|0;c=(b<<4)+Y|0;i=z[c+12>>2];h=z[c+8>>2];k=z[c+4>>2];m=z[c>>2];I=H+(b<<5)|0;c=v[I+20>>2];q=z[c+16>>2];r=z[c+24>>2];s=z[c+20>>2];D=z[c+52>>2];S=z[c+48>>2];T=z[c+44>>2];n=v[(H+(v[I+24>>2]<<5)|0)+16>>2];Z=z[n+16>>2];J=z[n+12>>2];L=z[n+8>>2];N=z[n+4>>2];O=z[n>>2];_=z[n+24>>2];R=z[n+20>>2];b:{c:{d:{e:{switch(w[c+270|0]){default:l=C(-d);q=C(-e);i=C(-j);break b;case 0:d=C(r+r);e=C(q+q);f=C(s+s);j=C(C(h*d)+C(C(m*e)+C(f*k)));o=C(C(i*i)+C(-.5));l=z[p>>2];c=A+B(b,76)|0;x=C(C(C(C(h*j)+C(C(d*o)+C(i*C(C(m*f)-C(e*k)))))-D)+C(l*z[c+20>>2]));g=C(C(C(C(m*j)+C(C(e*o)+C(i*C(C(k*d)-C(f*h)))))-T)+C(l*z[c+12>>2]));o=C(C(C(C(k*j)+C(C(f*o)+C(i*C(C(h*e)-C(d*m)))))-S)+C(l*z[c+16>>2]));break d;case 1:c=A+B(b,76)|0;e=z[c+8>>2];g=C(z[p>>2]*C(-.5));d=Q9(g);f=C(e*d);e=C(d*z[c+4>>2]);d=C(d*z[c>>2]);g=G9(g);if(g>>0>=3){$=c&254;aa=c&1;n=A+B(b,76)|0;d=C(0);c=0;g=C(0);l=C(0);y=0;while(1){e=z[p+(c<<2)>>2];E=n+B(c,24)|0;M=c|1;f=z[p+(M<<2)>>2];M=n+B(M,24)|0;d=C(C(d-C(e*z[E+8>>2]))-C(f*z[M+8>>2]));g=C(C(g-C(e*z[E+4>>2]))-C(f*z[M+4>>2]));l=C(C(l-C(e*z[E>>2]))-C(f*z[M>>2]));c=c+2|0;y=y+2|0;if(($|0)!=(y|0)){continue}break}if(aa){e=z[p+(c<<2)>>2];c=n+B(c,24)|0;d=C(d-C(e*z[c+8>>2]));l=C(l-C(e*z[c>>2]));g=C(g-C(e*z[c+4>>2]))}e=C(C(d*d)+C(C(l*l)+C(g*g)));if(!(e>2];e=C(z[p+(n<<2)>>2]*C(-.5));d=Q9(e);e=G9(e);g=C(d*z[y+4>>2]);x=C(g*C(0));l=C(d*f);f=C(e*C(0));d=C(d*z[y>>2]);o=C(d*C(0));j=C(C(x+C(l+f))-o);G=C(l*C(0));o=C(C(o+C(g+f))-G);f=C(C(G+C(d+f))-x);l=C(C(l*C(-0))+C(C(g*C(-0))+C(e+C(d*C(-0)))));if(n){break g}d=o;g=j;e=l;break f}f=C(K(e));o=C(f*C(.5));e=Q9(o);f=C(C(1)/f);j=C(e*C(d*f));d=C(e*C(g*f));l=C(e*C(l*f));e=G9(o)}f=C(C(1)/C(K(C(C(e*e)+C(C(j*j)+C(C(l*l)+C(d*d)))))));e=C(e*f);g=C(j*f);d=C(d*f);f=C(l*f);break f}n=c-2|0;c=E+B(n,24)|0;e=z[c+4>>2];g=C(z[p+(n<<2)>>2]*C(-.5));d=Q9(g);G=z[c>>2];x=G9(g);G=C(d*G);P=C(d*e);Q=C(d*z[c+8>>2]);e=C(C(C(C(l*x)-C(G*f))-C(o*P))-C(j*Q));g=C(C(C(f*P)+C(C(l*Q)+C(j*x)))-C(G*o));d=C(C(C(j*G)+C(C(l*P)+C(o*x)))-C(Q*f));f=C(C(C(o*Q)+C(C(l*G)+C(f*x)))-C(P*j))}o=C(C(C(C(e*i)-C(m*f))-C(d*k))-C(g*h));j=C(C(C(f*k)+C(C(e*h)+C(i*g)))-C(m*d));l=C(C(C(d*h)+C(C(e*m)+C(i*f)))-C(k*g));d=C(C(C(g*m)+C(C(e*k)+C(i*d)))-C(h*f));f=C(C(1)/C(K(C(C(o*o)+C(C(j*j)+C(C(l*l)+C(d*d)))))));break c;case 3:break e}}d=C(r+r);e=C(q+q);f=C(s+s);j=C(C(h*d)+C(C(m*e)+C(f*k)));o=C(C(i*i)+C(-.5));x=C(C(C(h*j)+C(C(d*o)+C(i*C(C(m*f)-C(e*k)))))-D);g=C(C(C(m*j)+C(C(e*o)+C(i*C(C(k*d)-C(f*h)))))-T);o=C(C(C(k*j)+C(C(f*o)+C(i*C(C(h*e)-C(d*m)))))-S)}l=C(-k);q=C(-m);e=m;d=k;f=i;j=h;i=C(-h);break b}j=C(j*f);g=C(r+r);e=C(l*f);i=C(q+q);h=C(s+s);d=C(d*f);k=C(C(j*g)+C(C(e*i)+C(h*d)));f=C(o*f);m=C(C(f*f)+C(-.5));x=C(C(C(j*k)+C(C(g*m)+C(f*C(C(e*h)-C(i*d)))))-D);o=C(C(C(d*k)+C(C(h*m)+C(f*C(C(j*i)-C(g*e)))))-S);g=C(C(C(e*k)+C(C(i*m)+C(f*C(C(d*g)-C(h*j)))))-T);l=C(-d);q=C(-e);i=C(-j)}k=C(C(L*j)+C(C(N*d)+C(C(J*f)+C(O*e))));m=C(C(e*N)+C(C(O*l)+C(C(J*i)+C(L*f))));r=C(C(d*L)+C(C(N*i)+C(C(J*q)+C(O*f))));l=C(C(j*O)+C(C(L*q)+C(C(J*l)+C(N*f))));h=C(C(1)/C(K(C(C(k*k)+C(C(m*m)+C(C(r*r)+C(l*l)))))));c=v[I+16>>2];i=C(k*h);z[c+12>>2]=i;k=C(m*h);z[c+8>>2]=k;m=C(l*h);z[c+4>>2]=m;h=C(r*h);z[c>>2]=h;l=C(x+x);q=C(g+g);r=C(o+o);s=C(C(k*l)+C(C(h*q)+C(r*m)));D=C(C(i*i)+C(-.5));z[c+24>>2]=_+C(C(k*s)+C(C(l*D)+C(i*C(C(h*r)-C(q*m)))));z[c+20>>2]=R+C(C(m*s)+C(C(r*D)+C(i*C(C(k*q)-C(l*h)))));z[c+16>>2]=Z+C(C(h*s)+C(C(q*D)+C(i*C(C(m*l)-C(r*k)))));b=b+1|0;if((V|0)!=(b|0)){continue}break}}c=w[F+8|0]}if(c&5){px(a,u,1);A=v[u+336>>2];if(A>>>0>=2){p=v[u+44>>2];n=v[u+332>>2];H=v[u+260>>2];I=v[u+344>>2];c=1;while(1){a=n+(c<<5)|0;b=v[(n+(v[a+24>>2]<<5)|0)+16>>2];d=z[b+80>>2];a=v[a+16>>2];e=C(z[a+20>>2]-z[b+20>>2]);g=C(z[a+16>>2]-z[b+16>>2]);q=z[b+84>>2];o=C(z[b+72>>2]+C(C(d*e)-C(g*q)));x=z[b+88>>2];m=C(x*g);g=C(z[a+24>>2]-z[b+24>>2]);D=C(z[b+68>>2]+C(m-C(g*d)));J=C(z[b+64>>2]+C(C(q*g)-C(e*x)));if(p){e=z[a+12>>2];g=z[a+8>>2];f=z[a+4>>2];r=z[a>>2];b=I+B(c,80)|0;y=w[b+76|0];j:{if(!y){i=C(0);h=C(0);k=C(0);m=C(0);j=C(0);l=C(0);break j}E=p+(v[b+72>>2]<<2)|0;M=H+B(c,76)|0;l=C(0);u=0;j=C(0);m=C(0);k=C(0);h=C(0);i=C(0);while(1){s=z[E+(u<<2)>>2];b=M+B(u,24)|0;k=C(k+C(s*z[b+12>>2]));m=C(m+C(s*z[b+8>>2]));j=C(j+C(s*z[b+4>>2]));l=C(l+C(s*z[b>>2]));i=C(i+C(s*z[b+20>>2]));h=C(h+C(s*z[b+16>>2]));u=u+1|0;if((y|0)!=(u|0)){continue}break}}s=C(i+i);k=C(k+k);h=C(h+h);L=C(C(g*s)+C(C(r*k)+C(f*h)));i=C(C(e*e)+C(-.5));o=C(o+C(C(g*L)+C(C(s*i)+C(e*C(C(r*h)-C(k*f))))));D=C(D+C(C(f*L)+C(C(h*i)+C(e*C(C(g*k)-C(s*r))))));J=C(J+C(C(r*L)+C(C(k*i)+C(e*C(C(f*s)-C(h*g))))));h=C(m+m);k=C(l+l);j=C(j+j);m=C(C(g*h)+C(C(r*k)+C(f*j)));x=C(x+C(C(g*m)+C(C(h*i)+C(e*C(C(r*j)-C(k*f))))));q=C(q+C(C(f*m)+C(C(j*i)+C(e*C(C(g*k)-C(h*r))))));d=C(d+C(C(r*m)+C(C(k*i)+C(e*C(C(f*h)-C(j*g))))))}z[a+80>>2]=d;z[a+64>>2]=J;z[a+88>>2]=x;z[a+84>>2]=q;z[a+72>>2]=o;z[a+68>>2]=D;c=c+1|0;if((A|0)!=(c|0)){continue}break}}}xa=F+16|0;return!U|0}function CX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),y=C(0),A=C(0),B=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=C(0),ca=C(0),da=0;c=xa-48|0;xa=c;l=z[b+20>>2];k=z[b+16>>2];s=z[b+24>>2];p=z[b>>2];m=C(p+p);w=z[b+8>>2];A=z[b+4>>2];n=z[b+12>>2];o=C(n+n);q=z[a+8>>2];D=C(C(C(m*w)-C(A*o))*q);z[c+36>>2]=s-D;w=C(q*C(C(w*o)+C(m*A)));z[c+32>>2]=l-w;z[c+24>>2]=D+s;z[c+20>>2]=l+w;l=C(q*C(C(p*m)+C(C(n*o)+C(-1))));z[c+28>>2]=k-l;z[c+16>>2]=k+l;z[c+40>>2]=z[a+4>>2]+j;i=x[i>>1];j=z[f>>2];l=z[f+4>>2];z[c+8>>2]=-z[f+8>>2];z[c+4>>2]=-l;z[c>>2]=-j;b=0;a=xa-208|0;xa=a;d=c+16|0;p=C(z[e+24>>2]+z[d+24>>2]);a:{b:{c:{d:{e:{f:{if(i&16){break f}g:{l=z[e>>2];n=z[e+12>>2];if(l!=n){break g}k=z[e+4>>2];if(k!=z[e+16>>2]){break g}j=z[e+8>>2];if(j!=z[e+20>>2]){break g}m=z[d+8>>2];j=C(j-m);m=C(z[d+20>>2]-m);n=z[d>>2];l=C(l-n);n=C(z[d+12>>2]-n);q=z[d+4>>2];o=C(z[d+16>>2]-q);k=C(k-q);q=C(C(j*m)+C(C(l*n)+C(o*k)));h:{if(q<=C(0)){break h}s=C(C(m*m)+C(C(n*n)+C(o*o)));if(s<=q){j=C(j-m);k=C(k-o);l=C(l-n);break h}r=m;m=C(q/s);j=C(j-C(r*m));k=C(k-C(o*m));l=C(l-C(n*m))}if(!(C(C(j*j)+C(C(l*l)+C(k*k)))>2];m=z[d+12>>2];if(k!=m){j=z[d+16>>2];q=z[d+4>>2];break i}j=z[d+16>>2];q=z[d+4>>2];if(j!=q){break i}o=z[d+8>>2];if(o!=z[d+20>>2]){break i}m=z[e+8>>2];j=C(o-m);m=C(z[e+20>>2]-m);k=C(k-l);n=C(n-l);l=z[e+4>>2];o=C(z[e+16>>2]-l);l=C(q-l);q=C(C(j*m)+C(C(k*n)+C(o*l)));j:{if(q<=C(0)){break j}s=C(C(m*m)+C(C(n*n)+C(o*o)));if(s<=q){j=C(j-m);l=C(l-o);k=C(k-n);break j}r=m;m=C(q/s);j=C(j-C(r*m));l=C(l-C(o*m));k=C(k-C(n*m))}if(!(C(C(j*j)+C(C(k*k)+C(l*l)))>2];s=z[e+20>>2];w=z[e+4>>2];A=z[e+8>>2];z[a+80>>2]=n-l;z[a+88>>2]=s-A;z[a+84>>2]=o-w;l=z[d+20>>2];n=z[d+8>>2];z[a+196>>2]=j-q;z[a+192>>2]=m-k;z[a+200>>2]=l-n;if(H_(e,a+80|0,d,a+192|0,0,0)>2];R=z[d>>2];V=C(Q-R);m=C(V*C(.5));j=z[e+12>>2];q=C(m+j);G=z[e>>2];W=C(m+G);k=C(q-W);l=z[e+16>>2];S=z[d+16>>2];ba=z[d+4>>2];X=C(S-ba);n=C(X*C(.5));s=C(l-n);H=z[e+4>>2];Y=C(n+H);E=C(s-Y);w=C(j-m);t=C(w-W);A=C(n+l);j=C(A-Y);l=C(C(k*E)-C(t*j));y=j;j=z[e+20>>2];T=z[d+20>>2];ca=z[d+8>>2];Z=C(T-ca);o=C(Z*C(.5));D=C(j-o);r=z[e+8>>2];_=C(o+r);I=C(D-_);F=E;E=C(o+j);J=C(E-_);j=C(C(y*I)-C(F*J));k=C(C(J*t)-C(I*k));t=C(K(C(C(l*l)+C(C(j*j)+C(k*k)))));if(t>C(0)){t=C(C(1)/t);l=C(l*t);k=C(k*t);j=C(j*t)}t=C(G-m);G=C(r-o);H=C(H-n);m=C(p*l);n=C(p*k);o=C(p*j);r=z[c+8>>2];I=z[c>>2];J=z[c+4>>2];if(!(C(C(l*r)+C(C(j*I)+C(k*J)))>=C(0))){break d}F=C(E-m);M=C(A-n);N=C(q-o);k=C(w-o);O=C(G-m);y=C(H-n);U=C(t-o);l=C(D-m);j=C(s-n);break c}v[h+40>>2]=0;g=z[c>>2];j=z[c+4>>2];z[h+36>>2]=-z[c+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;u[c+14>>1]=2;break b}O=C(E+m);y=C(A+n);U=C(q+o);k=C(w+o);F=C(G+m);M=C(H+n);N=C(t+o);l=C(D+m);j=C(s+n)}T=C(C(ca+T)*C(.5));z[a+200>>2]=T;S=C(C(ba+S)*C(.5));z[a+196>>2]=S;Q=C(C(Q+R)*C(.5));z[a+192>>2]=Q;n=C(F-l);o=C(y-j);F=C(U-k);y=C(C(I*o)-C(F*J));N=C(N-k);O=C(O-l);U=C(C(J*O)-C(o*r));M=C(M-j);R=C(C(r*F)-C(O*I));m=C(C(n*y)+C(C(N*U)+C(M*R)));k:{l:{if(mm){break l}l=C(C(C(1)/m)*C(C(O*r)+C(C(F*j)+C(o*l))));if(!(l>=C(0))){break l}if(g>l){break k}}z[a+188>>2]=p;z[a+184>>2]=_;z[a+180>>2]=Y;L=a+176|0;z[L>>2]=W;z[a+172>>2]=G;z[a+168>>2]=H;z[a+160>>2]=p;z[a+156>>2]=_;z[a+152>>2]=Y;$=a+148|0;z[$>>2]=W;z[a+144>>2]=E;z[a+140>>2]=A;z[a+132>>2]=p;z[a+128>>2]=E;z[a+124>>2]=A;aa=a+120|0;z[aa>>2]=q;z[a+116>>2]=D;z[a+112>>2]=s;z[a+100>>2]=D;z[a+96>>2]=s;z[a+164>>2]=t;z[a+136>>2]=q;z[a+108>>2]=w;z[a+104>>2]=p;z[a+92>>2]=w;z[a+88>>2]=G;z[a+84>>2]=H;z[a+80>>2]=t;f=a+192|0;B=a+80|0;P=B;da=B|12;B=a- -64|0;P=ZW(f,c,P,da,p,B);j=z[a+64>>2];aa=ZW(f,c,a+108|0,aa,z[a+132>>2],B);l=z[a+64>>2];$=ZW(f,c,a+136|0,$,z[a+160>>2],B);k=z[a+64>>2];L=ZW(f,c,a+164|0,L,z[a+188>>2],B);P=!(g>=j)|(!(j>=C(0))|P^1);g=P?g:j;f=!(g>=l)|(!(l>=C(0))|aa^1);g=f?g:l;B=!(g>=k)|(!(k>=C(0))|$^1);j=B?g:k;g=z[a+64>>2];L=!(j>=g)|(!(g>=C(0))|L^1);l=L?j:g;if(!f|(!B|(L|0)!=1)){break k}f=0;if(P){break a}}u[c+14>>1]=0;m:{if(!(i&3)){break m}g=z[e+8>>2];j=z[c+8>>2];k=z[e+4>>2];p=z[c+4>>2];n=C(l*z[c>>2]);o=C(z[e>>2]-n);z[a+80>>2]=o;m=k;k=C(l*p);m=C(m-k);z[a+84>>2]=m;r=g;g=C(l*j);j=C(r-g);z[a+88>>2]=j;q=z[e+12>>2];s=z[e+16>>2];p=C(C(z[e+20>>2]-g)-j);z[a+72>>2]=p;m=C(C(s-k)-m);z[a+68>>2]=m;n=C(C(q-n)-o);z[a+64>>2]=n;z[a+56>>2]=Z;z[a+52>>2]=X;z[a+48>>2]=V;H2(a+32|0,a+16|0,a+80|0,a- -64|0,d,a+48|0);if(i&2){k=z[a+16>>2];o=z[a+32>>2];j=z[a+20>>2];q=z[a+36>>2];g=C(z[a+40>>2]-z[a+24>>2]);z[h+36>>2]=g;j=C(q-j);z[h+32>>2]=j;k=C(o-k);z[h+28>>2]=k;o=C(K(C(C(g*g)+C(C(k*k)+C(j*j)))));if(o>C(0)){r=g;g=C(C(1)/o);z[h+36>>2]=r*g;z[h+32>>2]=j*g;z[h+28>>2]=k*g}n:{if(!(o>2]=g;j=C(C(Z*n)-C(p*V));z[h+32>>2]=j;k=C(C(X*p)-C(m*Z));z[h+28>>2]=k;p=C(K(C(C(g*g)+C(C(k*k)+C(j*j)))));if(p>C(0)){m=g;g=C(C(1)/p);z[h+36>>2]=m*g;z[h+32>>2]=j*g;z[h+28>>2]=k*g}if(!(p>2];j=z[e+12>>2];k=z[e+4>>2];p=z[e+16>>2];z[a+8>>2]=z[e+20>>2]-z[e+8>>2];z[a+4>>2]=p-k;z[a>>2]=j-g;H2(a+32|0,a+16|0,e,a,d,a+48|0);k=z[a+16>>2];p=z[a+32>>2];j=z[a+20>>2];m=z[a+36>>2];g=C(z[a+40>>2]-z[a+24>>2]);z[h+36>>2]=g;j=C(m-j);z[h+32>>2]=j;k=C(p-k);z[h+28>>2]=k;p=C(K(C(C(g*g)+C(C(k*k)+C(j*j)))));if(!(p>C(0))){break n}m=g;g=C(C(1)/p);z[h+36>>2]=m*g;z[h+32>>2]=j*g;z[h+28>>2]=k*g}u[c+14>>1]=x[c+14>>1]|2}if(!(i&1)){break m}p=z[a+32>>2];m=z[a+16>>2];n=z[a+36>>2];o=z[a+20>>2];g=z[d+24>>2];j=z[e+24>>2];k=C(C(1)/C(g+j));z[h+24>>2]=k*C(C(g*z[a+40>>2])+C(j*z[a+24>>2]));z[h+20>>2]=k*C(C(g*n)+C(j*o));z[h+16>>2]=k*C(C(g*p)+C(j*m));u[c+14>>1]=x[c+14>>1]|1}z[h+40>>2]=l}f=1}xa=a+208|0;o:{if(!f){break o}a=x[c+14>>1];u[h+12>>1]=a;b=1;if(!(i&512)|z[h+40>>2]!=C(0)){break o}u[h+12>>1]=a|1;b=xa-48|0;xa=b;g=z[e+16>>2];j=z[e>>2];l=z[e+12>>2];k=z[e+4>>2];z[b+40>>2]=z[e+20>>2]-z[e+8>>2];z[b+36>>2]=g-k;z[b+32>>2]=l-j;a=c+16|0;g=z[a+16>>2];j=z[a>>2];l=z[a+12>>2];k=z[a+4>>2];z[b+24>>2]=z[a+20>>2]-z[a+8>>2];z[b+20>>2]=g-k;z[b+16>>2]=l-j;H_(e,b+32|0,a,b+16|0,b+12|0,b+8|0);j=z[e+8>>2];g=z[b+12>>2];k=C(j+C(g*C(z[e+20>>2]-j)));l=z[a+8>>2];j=z[b+8>>2];m=C(l+C(j*C(z[a+20>>2]-l)));l=C(k-m);k=z[e>>2];r=C(k+C(g*C(z[e+12>>2]-k)));k=z[a>>2];n=C(k+C(j*C(z[a+12>>2]-k)));k=C(r-n);p=z[e+4>>2];r=C(p+C(g*C(z[e+16>>2]-p)));g=z[a+4>>2];o=C(g+C(j*C(z[a+16>>2]-g)));g=C(r-o);j=C(C(l*l)+C(C(k*k)+C(g*g)));p=C(K(j));q=z[a+24>>2];s=z[e+24>>2];p:{if(j>2]=l;z[h+36>>2]=j;z[h+32>>2]=g;z[h+40>>2]=p-C(s+q);k=j;j=z[a+24>>2];z[h+24>>2]=m+C(k*j);z[h+20>>2]=o+C(g*j);z[h+16>>2]=n+C(l*j);xa=b+48|0;b=1}xa=c+48|0;return b|0}function q3(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=0,t=0,u=0;while(1){j=c?c+36|0:0;k=v[j+24>>2];a:{l=v[c+24>>2];b:{if(!l){if(!k){v[d+4>>2]=v[d+4>>2]+1;r=z[c+16>>2];k=v[c+28>>2];l=v[c+32>>2];s=v[a>>2];p=z[d+20>>2];o=z[c+12>>2];i=z[c>>2];f=z[c+4>>2];m=z[c+20>>2];n=z[c+8>>2];g=C(C(m-n)*C(.5));z[b+28>>2]=g;h=C(C(r-f)*C(.5));z[b+24>>2]=h;e=C(C(o-i)*C(.5));z[b+20>>2]=e;z[b+16>>2]=C(n+m)*C(.5);z[b+12>>2]=C(f+r)*C(.5);z[b+8>>2]=C(i+o)*C(.5);q=p==C(0);if(!q){z[b+28>>2]=p+g;z[b+24>>2]=p+h;z[b+20>>2]=p+e}v[b+32>>2]=l<<1&30|k-s<<3|1;r=z[j+16>>2];d=v[j+28>>2];a=v[j+32>>2];o=z[j+12>>2];i=z[j>>2];f=z[j+4>>2];m=z[j+20>>2];n=z[j+8>>2];g=C(C(m-n)*C(.5));z[b- -64>>2]=g;h=C(C(r-f)*C(.5));z[b+60>>2]=h;e=C(C(o-i)*C(.5));z[b+56>>2]=e;z[b+52>>2]=C(n+m)*C(.5);z[b+48>>2]=C(f+r)*C(.5);z[b+44>>2]=C(i+o)*C(.5);if(!q){z[b+64>>2]=p+g;z[b+60>>2]=p+h;z[b+56>>2]=p+e}v[b+68>>2]=a<<1&30|d-s<<3|1;f=C(C(C(z[c+8>>2]+z[c+20>>2])*C(.5))-C(C(z[j+8>>2]+z[j+20>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[c>>2]+z[c+12>>2])*C(.5))-C(C(z[j>>2]+z[j+12>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[c+4>>2]+z[c+16>>2])*C(.5))-C(C(z[j+4>>2]+z[j+16>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);a=!(C(i+e)>2]=(C(i+e)>2]=v[d+8>>2]+1;r=z[c+16>>2];s=v[c+28>>2];l=v[c+32>>2];q=v[a>>2];p=z[d+20>>2];o=z[c+12>>2];i=z[c>>2];f=z[c+4>>2];m=z[c+20>>2];n=z[c+8>>2];g=C(C(m-n)*C(.5));z[b+28>>2]=g;h=C(C(r-f)*C(.5));z[b+24>>2]=h;e=C(C(o-i)*C(.5));z[b+20>>2]=e;z[b+16>>2]=C(n+m)*C(.5);z[b+12>>2]=C(f+r)*C(.5);z[b+8>>2]=C(i+o)*C(.5);if(p!=C(0)){z[b+28>>2]=p+g;z[b+24>>2]=p+h;z[b+20>>2]=p+e}v[b+32>>2]=l<<1&30|s-q<<3|1;l=u3(v[a>>2],b,1,k,d);q=u3(v[a>>2],b,2,k+36|0,d);f=C(C(C(z[c+8>>2]+z[c+20>>2])*C(.5))-C(C(z[j+8>>2]+z[j+20>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[c>>2]+z[c+12>>2])*C(.5))-C(C(z[j>>2]+z[j+12>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[c+4>>2]+z[c+16>>2])*C(.5))-C(C(z[j+4>>2]+z[j+16>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);c=!(C(i+e)>2]=(C(i+e)>2]+z[k+20>>2])*C(.5))-C(C(z[k+44>>2]+z[k+56>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[k>>2]+z[k+12>>2])*C(.5))-C(C(z[k+36>>2]+z[k+48>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[k+4>>2]+z[k+16>>2])*C(.5))-C(C(z[k+40>>2]+z[k+52>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);b=!(C(i+e)>2]=(C(i+e)>2],d)}if(!q){break b}break a}if(!k){v[d+12>>2]=v[d+12>>2]+1;r=z[j+16>>2];s=v[j+28>>2];k=v[j+32>>2];q=v[a>>2];p=z[d+20>>2];o=z[j+12>>2];i=z[j>>2];f=z[j+4>>2];m=z[j+20>>2];n=z[j+8>>2];g=C(C(m-n)*C(.5));z[b+100>>2]=g;h=C(C(r-f)*C(.5));z[b+96>>2]=h;e=C(C(o-i)*C(.5));z[b+92>>2]=e;z[b+88>>2]=C(n+m)*C(.5);z[b+84>>2]=C(f+r)*C(.5);z[b+80>>2]=C(i+o)*C(.5);if(p!=C(0)){z[b+100>>2]=p+g;z[b+96>>2]=p+h;z[b+92>>2]=p+e}v[b+104>>2]=k<<1&30|s-q<<3|1;k=u3(v[a>>2],b,0,l,d);q=u3(v[a>>2],b,1,l+36|0,d);f=C(C(C(z[c+8>>2]+z[c+20>>2])*C(.5))-C(C(z[j+8>>2]+z[j+20>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[c>>2]+z[c+12>>2])*C(.5))-C(C(z[j>>2]+z[j+12>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[c+4>>2]+z[c+16>>2])*C(.5))-C(C(z[j+4>>2]+z[j+16>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);c=!(C(i+e)>2]=(C(i+e)>2]+z[l+20>>2])*C(.5))-C(C(z[l+44>>2]+z[l+56>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[l>>2]+z[l+12>>2])*C(.5))-C(C(z[l+36>>2]+z[l+48>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[l+4>>2]+z[l+16>>2])*C(.5))-C(C(z[l+40>>2]+z[l+52>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);b=!(C(i+e)>2]=(C(i+e)>2],d)}k=l;if(q){break a}break b}v[d+16>>2]=v[d+16>>2]+1;t=u3(v[a>>2],b,0,l,d);u=u3(v[a>>2],b,1,l+36|0,d);s=u3(v[a>>2],b,2,k,d);q=u3(v[a>>2],b,3,k+36|0,d);f=C(C(C(z[c+8>>2]+z[c+20>>2])*C(.5))-C(C(z[j+8>>2]+z[j+20>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[c>>2]+z[c+12>>2])*C(.5))-C(C(z[j>>2]+z[j+12>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[c+4>>2]+z[c+16>>2])*C(.5))-C(C(z[j+4>>2]+z[j+16>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);c=!(C(i+e)>2]=(C(i+e)>2]+z[l+20>>2])*C(.5))-C(C(z[l+44>>2]+z[l+56>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[l>>2]+z[l+12>>2])*C(.5))-C(C(z[l+36>>2]+z[l+48>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[l+4>>2]+z[l+16>>2])*C(.5))-C(C(z[l+40>>2]+z[l+52>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);c=!(C(i+e)>2]=(C(i+e)>2]+z[k+20>>2])*C(.5))-C(C(z[k+44>>2]+z[k+56>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[k>>2]+z[k+12>>2])*C(.5))-C(C(z[k+36>>2]+z[k+48>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[k+4>>2]+z[k+16>>2])*C(.5))-C(C(z[k+40>>2]+z[k+52>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);b=!(C(i+e)>2]=(C(i+e)>2],d)}if(u){q3(a,u,v[l+60>>2],d)}if(s){q3(a,s,v[k+24>>2],d)}if(q){break a}}return}c=v[k+60>>2];b=q;continue}}function D1(a,b,c,d,e){var f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),A=0,D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0,S=C(0),T=C(0),U=0;f=xa-224|0;xa=f;v[f+200>>2]=0;v[f+204>>2]=0;v[f+196>>2]=1065353216;v[f+208>>2]=0;v[f+212>>2]=0;v[f+216>>2]=1065353216;v[f+220>>2]=0;v[f+180>>2]=0;v[f+184>>2]=0;v[f+176>>2]=1065353216;v[f+188>>2]=0;v[f+192>>2]=0;j=z[b+12>>2];i=z[b>>2];x=C(j-i);n=z[b+28>>2];k=z[b+4>>2];q=C(n-k);o=z[b+24>>2];D=C(o-i);u=z[b+16>>2];r=C(u-k);l=C(C(x*q)-C(D*r));F=l;L=C(l*l);s=r;r=z[b+32>>2];l=z[b+8>>2];G=C(r-l);H=q;q=z[b+20>>2];J=C(q-l);s=C(C(s*G)-C(H*J));x=C(C(J*D)-C(G*x));D=C(C(1)/C(K(C(L+C(C(s*s)+C(x*x))))));G=C(F*D);s=C(s*D);x=C(x*D);a:{if(C(C(C(z[a+4408>>2]*G)+C(C(z[a+4400>>2]*s)+C(z[a+4404>>2]*x)))-C(C(l*G)+C(C(i*s)+C(k*x))))>2];x=z[a+2288>>2];D=z[a+2272>>2];G=z[a+2308>>2];J=z[a+2292>>2];F=z[a+2260>>2];H=z[a+2276>>2];L=z[a+2312>>2];M=z[a+2296>>2];N=z[a+2264>>2];O=z[a+2280>>2];P=z[a+2256>>2];v[f+172>>2]=0;v[f+156>>2]=0;v[f+140>>2]=0;S=C(L+C(C(M*r)+C(C(N*o)+C(n*O))));z[f+168>>2]=S;T=C(G+C(C(J*r)+C(C(F*o)+C(n*H))));z[f+164>>2]=T;n=C(s+C(C(x*r)+C(C(P*o)+C(n*D))));z[f+160>>2]=n;o=C(L+C(C(M*q)+C(C(N*j)+C(u*O))));z[f+152>>2]=o;r=C(G+C(C(J*q)+C(C(F*j)+C(u*H))));z[f+148>>2]=r;j=C(s+C(C(x*q)+C(C(P*j)+C(u*D))));z[f+144>>2]=j;u=C(L+C(C(M*l)+C(C(N*i)+C(k*O))));z[f+136>>2]=u;q=C(G+C(C(J*l)+C(C(F*i)+C(k*H))));z[f+132>>2]=q;t[f+112|0]=0;v[f+104>>2]=2139095039;v[f+108>>2]=5;v[f+92>>2]=0;v[f+96>>2]=0;v[f+100>>2]=2139095039;z[f+88>>2]=C(S+C(u+o))*C(.33333298563957214);z[f+84>>2]=C(T+C(q+r))*C(.33333298563957214);i=C(s+C(C(x*l)+C(C(P*i)+C(k*D))));z[f+128>>2]=i;z[f+80>>2]=C(n+C(i+j))*C(.33333298563957214);b=v[a+2208>>2];t[f+60|0]=1;v[f+48>>2]=b;v[f+16>>2]=144504;b=f+176|0;v[f+56>>2]=b;v[f+52>>2]=b;h=f+80|0;v[f+64>>2]=h;U=v[a+2324>>2];g=v[a+4416>>2];p=f+16|0;m=v[a+4420>>2];Q=v[a+2320>>2];R=a+2324|0;b=xa-96|0;xa=b;n=z[h+80>>2];o=z[h- -64>>2];j=z[h+68>>2];u=z[h+88>>2];r=z[h+84>>2];i=z[h+52>>2];k=z[h+56>>2];q=z[h+72>>2];l=z[h+48>>2];v[b+60>>2]=0;s=C(j-i);u=C(u-k);r=C(r-i);q=C(q-k);j=C(C(s*u)-C(r*q));F=j;o=C(o-l);H=C(o*r);r=C(n-l);n=C(H-C(r*s));s=C(j*j);j=C(C(q*r)-C(u*o));o=C(C(1)/C(K(C(C(n*n)+C(s+C(j*j))))));u=C(F*o);z[b+48>>2]=u;n=C(n*o);z[b+56>>2]=n;j=C(j*o);z[b+52>>2]=j;Ba[v[v[m>>2]+12>>2]](m,b+48|0,b+80|0,b- -64|0);E=a+2176|0;o=z[E>>2];i=C(C(n*k)+C(C(u*l)+C(i*j)));k=z[b+80>>2];b:{if(i>C(o+z[b+64>>2])?1:C(o+i)>2]=0;A=v[b+52>>2];v[b>>2]=v[b+48>>2];v[b+4>>2]=A;A=v[b+60>>2];v[b+8>>2]=v[b+56>>2];v[b+12>>2]=A;z[b+16>>2]=C(i-k)+C(-1.1920928955078125e-7);if(!l2(g,p,m,E,b+16|0,b+48|0,b,b+44|0)){break b}if(!m2(h,d,g,p,m,E,b+16|0,b,b+44|0)){break b}j=z[h+68>>2];n=z[h+84>>2];i=z[h+52>>2];o=z[h+72>>2];u=z[h+80>>2];r=z[h+88>>2];k=z[h+56>>2];l=z[h+48>>2];q=z[h+64>>2];v[b+92>>2]=0;q=C(q-l);n=C(n-i);l=C(u-l);j=C(j-i);i=C(C(q*n)-C(l*j));F=i;s=C(i*i);i=j;j=C(r-k);k=C(o-k);i=C(C(i*j)-C(n*k));k=C(C(k*l)-C(j*q));l=C(C(1)/C(K(C(s+C(C(i*i)+C(k*k))))));j=C(F*l);z[b+88>>2]=j;k=C(k*l);z[b+84>>2]=k;i=C(i*l);z[b+80>>2]=i;c:{d:{switch(v[b+44>>2]){case 0:p=v[g+24>>2];A=Z1(g,m,b);I=v[b+92>>2];v[f+8>>2]=v[b+88>>2];v[f+12>>2]=I;I=v[b+84>>2];v[f>>2]=v[b+80>>2];v[f+4>>2]=I;n2(h,c,g,p+B(A,20)|0,m,Q,R,E,b+80|0);break c;case 1:p=v[b+48>>2];if(C(C(C(C(-z[b>>2])*i)-C(k*z[b+4>>2]))-C(z[b+8>>2]*j))>C(.7071067690849304)){A=v[g+24>>2];I=v[b+92>>2];v[f+8>>2]=v[b+88>>2];v[f+12>>2]=I;I=v[b+84>>2];v[f>>2]=v[b+80>>2];v[f+4>>2]=I;n2(h,c,g,A+B(p,20)|0,m,Q,R,E,b+80|0);break c}if(w[a+4429|0]?0:d&7){break c}g=v[a+3620>>2];E=v[g+4360>>2];m=E+15|0;if(m>>>0>(v[g+4364>>2]&2147483647)>>>0){FZ(g,m);g=v[a+3620>>2];E=v[g+4360>>2]}v[g+4360>>2]=m;g=v[g+4356>>2]+(E<<2)|0;t[g+56|0]=d;v[g+52>>2]=p;v[g+48>>2]=c;v[g+36>>2]=v[e>>2];v[g+40>>2]=v[e+4>>2];v[g+44>>2]=v[e+8>>2];c=v[h+52>>2];m=v[h+48>>2];z[g+8>>2]=z[h+56>>2];v[g>>2]=m;v[g+4>>2]=c;c=v[h+68>>2];m=v[h+64>>2];z[g+20>>2]=z[h+72>>2];v[g+12>>2]=m;v[g+16>>2]=c;c=v[h+84>>2];m=v[h+80>>2];z[g+32>>2]=z[h+88>>2];v[g+24>>2]=m;v[g+28>>2]=c;break c;default:break d}}A=Z1(g,m,b);v[b+48>>2]=A;p=v[m+40>>2];j=z[p+36>>2];n=z[p+40>>2];A=v[g+24>>2]+B(A,20)|0;i=z[A>>2];k=z[A+4>>2];o=z[p+20>>2];l=z[A+8>>2];u=z[p+24>>2];r=z[p+32>>2];q=z[p+8>>2];s=z[p>>2];x=z[p+4>>2];D=z[p+16>>2];v[b+76>>2]=0;j=C(C(n*l)+C(C(r*i)+C(k*j)));n=C(C(q*l)+C(C(s*i)+C(k*x)));k=C(C(u*l)+C(C(D*i)+C(k*o)));i=C(C(1)/C(K(C(C(j*j)+C(C(n*n)+C(k*k))))));l=C(n*i);z[b+64>>2]=l;k=C(k*i);z[b+68>>2]=k;i=C(j*i);z[b+72>>2]=i;v[f+12>>2]=0;z[f+8>>2]=-i;z[f+4>>2]=-k;z[f>>2]=-l;o2(g,A,h,c,m,Q,R,E,b- -64|0)}}xa=b+96|0;if(y[a+2324>>2]<=U>>>0){break a}E=d&16;e:{if(d&8){break e}g=v[a+3616>>2];if((g|0)==128){break e}m=a+2336|0;b=v[e>>2];c=v[e+4>>2];p=b>>>0>>0?b:c;h=b>>>0>c>>>0?b:c;b=p<<16|h;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=(((b>>>16^b)&127)+a|0)+3488|0;b=w[c|0];if((b|0)!=255){while(1){b=b&255;c=m+(b<<3)|0;if((p|0)==v[c>>2]&(h|0)==v[c+4>>2]){break e}c=(a+b|0)+3360|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=g;t[(a+g|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;c=m+(b<<3)|0;v[c>>2]=p;v[c+4>>2]=h}p=d&32;f:{if(E){break f}h=v[a+3616>>2];if((h|0)==128){break f}g=a+2336|0;b=v[e+4>>2];c=v[e+8>>2];m=b>>>0>>0?b:c;c=b>>>0>c>>>0?b:c;b=m<<16|c;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+a|0)+3488|0;b=w[d|0];if((b|0)!=255){while(1){b=b&255;d=g+(b<<3)|0;if((m|0)==v[d>>2]&(c|0)==v[d+4>>2]){break f}d=(a+b|0)+3360|0;b=w[d|0];if((b|0)!=255){continue}break}}t[d|0]=h;t[(a+h|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;d=g+(b<<3)|0;v[d>>2]=m;v[d+4>>2]=c}g:{if(p){break g}h=v[a+3616>>2];if((h|0)==128){break g}g=a+2336|0;b=v[e+8>>2];c=v[e>>2];m=b>>>0>>0?b:c;c=b>>>0>c>>>0?b:c;b=m<<16|c;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+a|0)+3488|0;b=w[d|0];if((b|0)!=255){while(1){b=b&255;d=g+(b<<3)|0;if((m|0)==v[d>>2]&(c|0)==v[d+4>>2]){break g}d=(a+b|0)+3360|0;b=w[d|0];if((b|0)!=255){continue}break}}t[d|0]=h;t[(a+h|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;d=g+(b<<3)|0;v[d>>2]=m;v[d+4>>2]=c}d=v[a+4396>>2];h:{if((d|0)==128){break h}h=a+3628|0;g=v[e>>2];c=((g&127)+a|0)+4268|0;b=w[c|0];i:{if((b|0)!=255){while(1){b=b&255;if((g|0)==v[h+(b<<2)>>2]){break i}c=(a+b|0)+4140|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+4140|0]=255;b=v[a+4396>>2];v[a+4396>>2]=b+1;v[h+(b<<2)>>2]=g;d=v[a+4396>>2]}if((d|0)==128){break h}g=v[e+4>>2];c=((g&127)+a|0)+4268|0;b=w[c|0];j:{if((b|0)!=255){while(1){b=b&255;if((g|0)==v[h+(b<<2)>>2]){break j}c=(a+b|0)+4140|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+4140|0]=255;b=v[a+4396>>2];v[a+4396>>2]=b+1;v[h+(b<<2)>>2]=g;d=v[a+4396>>2]}if((d|0)==128){break h}e=v[e+8>>2];c=((e&127)+a|0)+4268|0;b=w[c|0];if((b|0)!=255){while(1){b=b&255;if((e|0)==v[h+(b<<2)>>2]){break h}c=(a+b|0)+4140|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+4140|0]=255;b=v[a+4396>>2];v[a+4396>>2]=b+1;v[h+(b<<2)>>2]=e}B1(a,f,U)}xa=f+224|0}function K5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0);f=xa-288|0;xa=f;D5(f+192|0,f+160|0,b,c,d);if(e&1){Ba[v[v[a>>2]+8>>2]](a,f+192|0,f+160|0)}a:{if(!(e&2)){break a}E=z[f+212>>2];H=z[f+180>>2];I=z[f+216>>2];y=z[f+184>>2];J=z[f+168>>2];O=z[f+160>>2];P=z[f+172>>2];L=z[f+164>>2];j=z[f+208>>2];o=z[f+176>>2];i=z[f+196>>2];p=C(i+i);h=z[f+200>>2];m=C(p*h);l=z[f+192>>2];k=C(l+l);g=z[f+204>>2];A=C(k*g);n=C(m-A);z[f+148>>2]=n;m=C(m+A);z[f+140>>2]=m;q=C(C(1)-C(l*k));u=C(i*p);A=C(q-u);z[f+152>>2]=A;x=C(h+h);M=C(h*x);q=C(q-M);z[f+136>>2]=q;t=C(k*h);p=C(p*g);B=C(t+p);z[f+144>>2]=B;k=C(k*i);r=C(x*g);x=C(k-r);z[f+132>>2]=x;t=C(t-p);z[f+128>>2]=t;r=C(k+r);z[f+124>>2]=r;u=C(C(C(1)-u)-M);z[f+120>>2]=u;k=C(o-j);o=C(k+k);k=C(H-E);E=C(k+k);k=C(y-I);H=C(k+k);I=C(C(C(C(-l)*o)-C(E*i))-C(h*H));y=C(C(g*g)+C(-.5));k=C(C(C(H*y)+C(g*C(C(i*o)-C(l*E))))-C(h*I));p=C(C(C(E*y)+C(g*C(C(l*H)-C(h*o))))-C(i*I));o=C(C(C(o*y)+C(g*C(C(h*E)-C(i*H))))-C(l*I));ha=C(C(g*P)+C(l*O));ia=C(i*L);ja=C(C(g*J)-C(P*h));ka=C(l*L);la=C(C(g*L)-C(P*i));ma=C(h*O);na=C(C(C(g*O)-C(P*l))-C(i*J));oa=C(L*h);d=f+208|0;b:{if(!w[b+477|0]){break b}c=f+144|0;e=f+132|0;c:{switch(v[b+456>>2]-1|0){case 0:m=z[b+140>>2];A=z[b+144>>2];q=z[b+136>>2];g=z[b+148>>2];n=z[b+152>>2];B=z[f+216>>2];z[f+80>>2]=C(t*n)+B;x=z[f+212>>2];z[f+76>>2]=C(r*n)+x;z[f+72>>2]=j+C(u*n);z[f+48>>2]=B+C(t*g);z[f+44>>2]=x+C(r*g);z[f+40>>2]=j+C(u*g);s=g;g=m>C(0)?C(0):q>C(0)?C(0):A;Ba[v[v[a>>2]+28>>2]](a,f+72|0,f+40|0,oC(s-g)?16711680:16777215);break b;case 1:A=z[b+168>>2];B=z[b+172>>2];t=z[b+164>>2];g=z[b+176>>2];n=z[b+180>>2];r=z[f+216>>2];z[f+80>>2]=C(n*m)+r;u=z[f+212>>2];z[f+76>>2]=C(n*q)+u;z[f+72>>2]=j+C(x*n);z[f+48>>2]=r+C(g*m);z[f+44>>2]=u+C(g*q);z[f+40>>2]=j+C(x*g);s=g;g=A>C(0)?C(0):t>C(0)?C(0):B;Ba[v[v[a>>2]+28>>2]](a,f+72|0,f+40|0,pC(s-g)?16711680:16777215);break b;case 3:q=z[b+196>>2];x=z[b+200>>2];t=z[b+192>>2];g=z[b+204>>2];m=z[b+208>>2];r=z[f+216>>2];z[f+80>>2]=C(m*A)+r;u=z[f+212>>2];z[f+76>>2]=C(m*n)+u;z[f+72>>2]=j+C(B*m);z[f+48>>2]=r+C(g*A);z[f+44>>2]=u+C(g*n);z[f+40>>2]=j+C(B*g);s=g;g=q>C(0)?C(0):t>C(0)?C(0):x;Ba[v[v[a>>2]+28>>2]](a,f+72|0,f+40|0,kC(s-g)?16711680:16777215);break b;case 2:L5(a,d,f+120|0,b+128|0,o,e,b+156|0,p);break b;case 4:L5(a,d,f+120|0,b+128|0,o,c,b+184|0,k);break b;case 5:L5(a,d,e,b+156|0,p,c,b+184|0,k);break b;case 6:break c;default:break b}}pa=z[b+140>>2];qa=z[b+144>>2];ra=z[b+136>>2];sa=z[b+168>>2];ta=z[b+172>>2];ua=z[b+164>>2];va=z[b+196>>2];wa=z[b+200>>2];ya=z[b+192>>2];g=z[b+204>>2];E=z[b+176>>2];H=z[b+148>>2];I=z[b+208>>2];y=C(I*A);M=z[b+180>>2];Q=C(M*m);S=z[b+152>>2];R=z[f+216>>2];$=C(C(t*S)+R);aa=C(Q+$);z[f+80>>2]=y+aa;N=C(I*n);ba=C(M*q);ca=z[f+212>>2];da=C(C(r*S)+ca);ea=C(ba+da);z[f+76>>2]=N+ea;fa=C(j+C(u*S));s=C(x*M);ga=C(fa+s);T=C(B*I);z[f+72>>2]=ga+T;t=C(R+C(t*H));Q=C(Q+t);z[f+48>>2]=y+Q;r=C(ca+C(r*H));R=C(ba+r);z[f+44>>2]=N+R;j=C(j+C(u*H));u=C(j+s);z[f+40>>2]=u+T;m=C(E*m);t=C(m+t);z[f+16>>2]=y+t;q=C(E*q);r=C(q+r);z[f+12>>2]=N+r;s=j;j=C(x*E);x=C(s+j);z[f+8>>2]=x+T;s=y;y=C(m+$);z[f+112>>2]=s+y;q=C(q+da);z[f+108>>2]=N+q;N=C(fa+j);z[f+104>>2]=N+T;j=C(g*A);z[f+280>>2]=j+aa;n=C(g*n);z[f+276>>2]=n+ea;m=C(B*g);z[f+272>>2]=ga+m;z[f+264>>2]=j+Q;z[f+260>>2]=n+R;z[f+256>>2]=u+m;z[f+248>>2]=j+t;z[f+244>>2]=n+r;z[f+240>>2]=x+m;z[f+232>>2]=j+y;z[f+228>>2]=n+q;z[f+224>>2]=N+m;e=f+72|0;U=f+40|0;s=g;g=va>C(0)?C(0):ya>C(0)?C(0):wa;c=kC(s-g)?16711680:16777215;g=sa>C(0)?C(0):ua>C(0)?C(0):ta;c=pC(E-g)?16711680:c;g=pa>C(0)?C(0):ra>C(0)?C(0):qa;c=oC(H-g)?16711680:c;Ba[v[v[a>>2]+28>>2]](a,e,U,c);V=f+8|0;Ba[v[v[a>>2]+28>>2]](a,U,V,c);W=f+104|0;Ba[v[v[a>>2]+28>>2]](a,V,W,c);Ba[v[v[a>>2]+28>>2]](a,W,e,c);X=f+272|0;Y=f+256|0;Ba[v[v[a>>2]+28>>2]](a,X,Y,c);Z=f+240|0;Ba[v[v[a>>2]+28>>2]](a,Y,Z,c);_=f+224|0;Ba[v[v[a>>2]+28>>2]](a,Z,_,c);Ba[v[v[a>>2]+28>>2]](a,_,X,c);Ba[v[v[a>>2]+28>>2]](a,e,X,c);Ba[v[v[a>>2]+28>>2]](a,U,Y,c);Ba[v[v[a>>2]+28>>2]](a,V,Z,c);Ba[v[v[a>>2]+28>>2]](a,W,_,c)}j=C(ia+ha);n=C(h*J);m=C(ja-ka);A=C(O*i);q=C(la-ma);B=C(J*l);l=C(oa+na);d:{if(!w[b+476|0]){break d}h=C(0);i=C(0);g=C(0);c=v[b+456>>2];if(c&1){g=C(C(o*z[f+128>>2])+C(0));i=C(C(o*z[f+124>>2])+C(0));h=C(C(o*z[f+120>>2])+C(0))}if(c&2){g=C(g+C(p*z[f+140>>2]));i=C(i+C(p*z[f+136>>2]));h=C(h+C(p*z[f+132>>2]))}if(c&4){g=C(g+C(k*z[f+152>>2]));i=C(i+C(k*z[f+148>>2]));h=C(h+C(k*z[f+144>>2]))}h=C(K(C(C(g*g)+C(C(h*h)+C(i*i)))));if(!(h>z[b+464>>2])){break d}Ba[v[v[a>>2]+28>>2]](a,d,f+176|0,h>z[b+124>>2]?16711680:65280)}j=C(n+j);k=C(A+m);p=C(B+q);h=C(0);e:{if(l==C(0)){i=C(1);g=C(0);break e}h=C(C(1)/C(K(C(C(j*j)+C(C(C(l*l)+C(0))+C(0))))));i=C(j*h);g=C(h*C(0));h=C(l*h)}n=C(g*k);m=C(p*g);o=C(n+C(m+C(C(j*i)+C(l*h))));z[f+116>>2]=o;z[f+104>>2]=n+C(C(C(l*i)-C(j*h))-m);j=C(j*C(-g));n=C(g*l);l=C(C(h*p)+C(C(j+C(k*i))-n));z[f+112>>2]=l;j=C(n+C(C(j+C(p*i))-C(k*h)));z[f+108>>2]=j;e=v[b+456>>2];if(e&8){g=C(g*g);g=C(K(C(C(i*i)+C(g+C(g+C(h*h))))));if(g!=C(0)){g=C(C(1)/g);i=C(i*g);h=C(h*g)}g=z[b+236>>2];k=z[b+232>>2];s=k;k=z[b+224>>2]>C(0)?C(0):z[b+220>>2]>C(0)?C(0):z[b+228>>2];i=z9(C(F(C(G(i,C(-1))),C(1))));i=C(i+i);h=h>2]+16>>2]](a,f+192|0,g,s,C(s-k)>2]}if((e&48)==48){if(w[b+478|0]){h=C(o+C(1));i=B9(j,h);h=B9(l,h);g=z[b+264>>2];j=V9(C(g*C(.25)));l=z[b+260>>2];y=V9(C(l*C(.25)));s=C(D(C(i*C(4))));i=z[b+252>>2]>C(0)?C(0):z[b+248>>2]>C(0)?C(0):z[b+256>>2];l=C(C(s+i)/l);h=C(C(C(D(C(h*C(4))))+i)/g);Ba[v[v[a>>2]+20>>2]](a,f+192|0,j,y,!(C(C(l*l)+C(h*h))<=C(1)))}if(!w[b+479|0]){break a}M5(a,b,f+192|0,f+104|0,1,1);break a}d=e&16;if((e>>>5&1)==(d>>>4|0)){break a}i=C(O+O);g=C(L+L);h=C(C(i*J)-C(P*g));k=C(J+J);i=C(C(i*L)+C(P*k));g=C(C(C(1)-C(L*g))-C(J*k));v[f+96>>2]=0;v[f+88>>2]=0;v[f+92>>2]=0;v[f+80>>2]=-1087044365;v[f+84>>2]=1060439283;v[f+72>>2]=-2147483648;v[f+76>>2]=-2147483648;v[f- -64>>2]=0;v[f+56>>2]=0;v[f+60>>2]=0;v[f+48>>2]=0;v[f+52>>2]=1060439283;v[f+40>>2]=0;v[f+44>>2]=1060439283;c=v[b+452>>2];if(d){d=w[b+479|0];if(c&32){if(d){M5(a,b,f+192|0,f+104|0,1,0);break a}c=f+8|0;N5(c,f+192|0,f+72|0);O5(a,z[b+256>>2],c,j,o,z[b+260>>2]);break a}if(d){break a}c=f+8|0;N5(c,f+192|0,f+40|0);P5(a,b,c,C(C(z[f+152>>2]*h)+C(C(z[f+144>>2]*g)+C(i*z[f+148>>2]))),z[b+260>>2]);break a}d=w[b+479|0];if(c&16){if(d){M5(a,b,f+192|0,f+104|0,0,1);break a}c=f+8|0;N5(c,f+192|0,f+40|0);O5(a,z[b+256>>2],c,l,o,z[b+264>>2]);break a}if(d){break a}c=f+8|0;N5(c,f+192|0,f+72|0);P5(a,b,c,C(C(z[f+140>>2]*h)+C(C(z[f+132>>2]*g)+C(i*z[f+136>>2]))),z[b+264>>2])}xa=f+288|0}function rL(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,z=0,A=0,C=0,D=0,E=0;if(v[a+116>>2]){a:{if(!w[a+28|0]){break a}s=v[a+20>>2];C=v[a+12>>2];m=v[a+4>>2];t=v[a>>2];q=v[a+24>>2];b:{if(!q){break b}if(!s){break a}u=v[a+16>>2];o=v[a+8>>2];while(1){n=B(k,24)+m|0;c=v[n>>2];l=v[n+12>>2];while(1){d=e;e=d+1|0;f=v[o+B(d,24)>>2];if(f>>>0>>0){continue}break}if(f>>>0<=l>>>0){r=C+(k<<1)|0;e=d;while(1){c=o+B(e,24)|0;c:{if(v[c+20>>2]-v[n+8>>2]>>>1&1073741824|v[c+16>>2]-v[n+4>>2]&-2147483648|v[n+16>>2]-v[c+4>>2]>>>2&536870912|v[n+20>>2]-v[c+8>>2]>>>3&268435456){break c}i=v[b+28>>2];g=v[b+32>>2];c=v[(t+(x[r>>1]<<3)|0)+4>>2];j=v[i+(v[g+B(c>>>2|0,12)>>2]<<2)>>2];f=v[(t+(x[u+(e<<1)>>1]<<3)|0)+4>>2];g=v[i+(v[g+B(f>>>2|0,12)>>2]<<2)>>2];if((j|0)==(g|0)|!w[v[b+36>>2]+(j<<2&12|g&3)|0]){break c}i=c>>>0>>0?c:f;j=c>>>0>f>>>0?c:f;c=i&65535|j<<16;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;A=c>>>16^c;f=A&v[b+4>>2];d:{g=v[b+12>>2];e:{if(!g){break e}c=v[(f<<2)+g>>2];if((c|0)==-1){break e}D=v[b+16>>2];z=v[b+20>>2];while(1){p=z+(c<<3)|0;if((i|0)==(v[p>>2]&2147483647)){E=v[p+4>>2];if((j|0)==(E&2147483647)){break d}}c=v[D+(c<<2)>>2];if((c|0)!=-1){continue}break}}c=v[b+8>>2];if(c>>>0>=y[b>>2]){f=ZH(b,A);g=v[b+12>>2];c=v[b+8>>2]}v[b+8>>2]=c+1;p=v[b+20>>2]+(c<<3)|0;v[p+4>>2]=j;v[p>>2]=i|-2147483648;f=(f<<2)+g|0;v[v[b+16>>2]+(c<<2)>>2]=v[f>>2];v[f>>2]=c;break c}v[p+4>>2]=E|-2147483648}e=e+1|0;if(l>>>0>=y[o+B(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+B(h,24)|0;f=v[e>>2];n=v[e+12>>2];while(1){d=c;c=c+1|0;e=v[B(d,24)+m>>2];if(e>>>0<=f>>>0){continue}break}if(e>>>0<=n>>>0){p=u+(h<<1)|0;k=o+B(h,24)|0;e=d;while(1){c=B(e,24)+m|0;g:{if(v[c+20>>2]-v[k+8>>2]>>>1&1073741824|v[c+16>>2]-v[k+4>>2]&-2147483648|v[k+16>>2]-v[c+4>>2]>>>2&536870912|v[k+20>>2]-v[c+8>>2]>>>3&268435456){break g}l=v[b+28>>2];g=v[b+32>>2];c=v[(t+(x[C+(e<<1)>>1]<<3)|0)+4>>2];i=v[l+(v[g+B(c>>>2|0,12)>>2]<<2)>>2];f=v[(t+(x[p>>1]<<3)|0)+4>>2];g=v[l+(v[g+B(f>>>2|0,12)>>2]<<2)>>2];if((i|0)==(g|0)|!w[v[b+36>>2]+(i<<2&12|g&3)|0]){break g}l=c>>>0>>0?c:f;i=c>>>0>f>>>0?c:f;c=l&65535|i<<16;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;r=c>>>16^c;f=r&v[b+4>>2];h:{g=v[b+12>>2];i:{if(!g){break i}c=v[(f<<2)+g>>2];if((c|0)==-1){break i}A=v[b+16>>2];D=v[b+20>>2];while(1){j=D+(c<<3)|0;if((l|0)==(v[j>>2]&2147483647)){z=v[j+4>>2];if((i|0)==(z&2147483647)){break h}}c=v[A+(c<<2)>>2];if((c|0)!=-1){continue}break}}c=v[b+8>>2];if(c>>>0>=y[b>>2]){f=ZH(b,r);g=v[b+12>>2];c=v[b+8>>2]}v[b+8>>2]=c+1;j=v[b+20>>2]+(c<<3)|0;v[j+4>>2]=i;v[j>>2]=l|-2147483648;f=(f<<2)+g|0;v[v[b+16>>2]+(c<<2)>>2]=v[f>>2];v[f>>2]=c;break g}v[j+4>>2]=z|-2147483648}e=e+1|0;if(n>>>0>=y[B(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=B(f,24)+m|0;c=v[g>>2];e=d;while(1){h=B(e,24);d=e+1|0;e=d;if(c>>>0>y[h+m>>2]){continue}break}if(d>>>0>=s>>>0){break a}u=v[g+12>>2];if(u>>>0>=y[B(d,24)+m>>2]){l=C+(f<<1)|0;c=d;while(1){e=B(c,24)+m|0;j:{if(v[e+20>>2]-v[g+8>>2]>>>1&1073741824|v[e+16>>2]-v[g+4>>2]&-2147483648|v[g+16>>2]-v[e+4>>2]>>>2&536870912|v[g+20>>2]-v[e+8>>2]>>>3&268435456){break j}o=v[b+28>>2];k=v[b+32>>2];e=v[(t+(x[l>>1]<<3)|0)+4>>2];n=v[o+(v[k+B(e>>>2|0,12)>>2]<<2)>>2];h=v[(t+(x[C+(c<<1)>>1]<<3)|0)+4>>2];k=v[o+(v[k+B(h>>>2|0,12)>>2]<<2)>>2];if((n|0)==(k|0)|!w[v[b+36>>2]+(n<<2&12|k&3)|0]){break j}o=e>>>0>>0?e:h;n=e>>>0>h>>>0?e:h;e=o&65535|n<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;i=e>>>16^e;h=i&v[b+4>>2];k:{k=v[b+12>>2];l:{if(!k){break l}e=v[(h<<2)+k>>2];if((e|0)==-1){break l}j=v[b+16>>2];p=v[b+20>>2];while(1){q=p+(e<<3)|0;if((o|0)==(v[q>>2]&2147483647)){r=v[q+4>>2];if((n|0)==(r&2147483647)){break k}}e=v[j+(e<<2)>>2];if((e|0)!=-1){continue}break}}e=v[b+8>>2];if(e>>>0>=y[b>>2]){h=ZH(b,i);k=v[b+12>>2];e=v[b+8>>2]}v[b+8>>2]=e+1;q=v[b+20>>2]+(e<<3)|0;v[q+4>>2]=n;v[q>>2]=o|-2147483648;h=(h<<2)+k|0;v[v[b+16>>2]+(e<<2)>>2]=v[h>>2];v[h>>2]=e;break j}v[q+4>>2]=r|-2147483648}c=c+1|0;if(u>>>0>=y[B(c,24)+m>>2]){continue}break}}f=f+1|0;if((s|0)!=(f|0)){continue}break}}m:{if(!w[a+60|0]){break m}C=v[a+56>>2];q=v[a+52>>2];k=v[a+48>>2];s=v[a+44>>2];o=v[a+32>>2];n=v[a+40>>2];t=v[a+36>>2];n:{if(!n|!t){break n}h=0;d=0;while(1){m=s+B(h,24)|0;e=v[m>>2];u=v[m+12>>2];while(1){c=d;d=c+1|0;f=v[k+B(c,24)>>2];if(f>>>0>>0){continue}break}if(f>>>0<=u>>>0){p=C+(h<<1)|0;e=c;while(1){d=k+B(e,24)|0;o:{if(v[d+20>>2]-v[m+8>>2]>>>1&1073741824|v[d+16>>2]-v[m+4>>2]&-2147483648|v[m+16>>2]-v[d+4>>2]>>>2&536870912|v[m+20>>2]-v[d+8>>2]>>>3&268435456){break o}l=v[b+28>>2];g=v[b+32>>2];d=v[(o+(x[p>>1]<<3)|0)+4>>2];i=v[l+(v[g+B(d>>>2|0,12)>>2]<<2)>>2];f=v[(o+(x[q+(e<<1)>>1]<<3)|0)+4>>2];g=v[l+(v[g+B(f>>>2|0,12)>>2]<<2)>>2];if((i|0)==(g|0)|!w[v[b+36>>2]+(i<<2&12|g&3)|0]){break o}l=d>>>0>>0?d:f;i=d>>>0>f>>>0?d:f;d=l&65535|i<<16;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;r=d>>>16^d;f=r&v[b+4>>2];p:{g=v[b+12>>2];q:{if(!g){break q}d=v[(f<<2)+g>>2];if((d|0)==-1){break q}A=v[b+16>>2];D=v[b+20>>2];while(1){j=D+(d<<3)|0;if((l|0)==(v[j>>2]&2147483647)){z=v[j+4>>2];if((i|0)==(z&2147483647)){break p}}d=v[A+(d<<2)>>2];if((d|0)!=-1){continue}break}}d=v[b+8>>2];if(d>>>0>=y[b>>2]){f=ZH(b,r);g=v[b+12>>2];d=v[b+8>>2]}v[b+8>>2]=d+1;j=v[b+20>>2]+(d<<3)|0;v[j+4>>2]=i;v[j>>2]=l|-2147483648;f=(f<<2)+g|0;v[v[b+16>>2]+(d<<2)>>2]=v[f>>2];v[f>>2]=d;break o}v[j+4>>2]=z|-2147483648}e=e+1|0;if(u>>>0>=y[k+B(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+B(h,24)|0;e=v[m>>2];u=v[m+12>>2];while(1){c=d;d=c+1|0;f=v[s+B(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+B(e,24)|0;r:{if(v[d+20>>2]-v[m+8>>2]>>>1&1073741824|v[d+16>>2]-v[m+4>>2]&-2147483648|v[m+16>>2]-v[d+4>>2]>>>2&536870912|v[m+20>>2]-v[d+8>>2]>>>3&268435456){break r}l=v[b+28>>2];g=v[b+32>>2];d=v[(o+(x[C+(e<<1)>>1]<<3)|0)+4>>2];i=v[l+(v[g+B(d>>>2|0,12)>>2]<<2)>>2];f=v[(o+(x[p>>1]<<3)|0)+4>>2];g=v[l+(v[g+B(f>>>2|0,12)>>2]<<2)>>2];if((i|0)==(g|0)|!w[v[b+36>>2]+(i<<2&12|g&3)|0]){break r}l=d>>>0>>0?d:f;i=d>>>0>f>>>0?d:f;d=l&65535|i<<16;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;r=d>>>16^d;f=r&v[b+4>>2];s:{g=v[b+12>>2];t:{if(!g){break t}d=v[(f<<2)+g>>2];if((d|0)==-1){break t}A=v[b+16>>2];D=v[b+20>>2];while(1){j=D+(d<<3)|0;if((l|0)==(v[j>>2]&2147483647)){z=v[j+4>>2];if((i|0)==(z&2147483647)){break s}}d=v[A+(d<<2)>>2];if((d|0)!=-1){continue}break}}d=v[b+8>>2];if(d>>>0>=y[b>>2]){f=ZH(b,r);g=v[b+12>>2];d=v[b+8>>2]}v[b+8>>2]=d+1;j=v[b+20>>2]+(d<<3)|0;v[j+4>>2]=i;v[j>>2]=l|-2147483648;f=(f<<2)+g|0;v[v[b+16>>2]+(d<<2)>>2]=v[f>>2];v[f>>2]=d;break r}v[j+4>>2]=z|-2147483648}e=e+1|0;if(u>>>0>=y[s+B(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}}v[a+116>>2]=0}}function vX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=0,U=C(0);c=xa-144|0;xa=c;j=z[b+20>>2];t=z[e+40>>2];D=z[b+24>>2];m=z[e+44>>2];y=z[b+16>>2];E=z[e+36>>2];z[c+80>>2]=z[e>>2];z[c+84>>2]=z[e+4>>2];z[c+88>>2]=z[e+8>>2];z[c+92>>2]=z[e+12>>2];z[c+96>>2]=z[e+16>>2];z[c+100>>2]=z[e+20>>2];z[c+104>>2]=z[e+24>>2];z[c+108>>2]=z[e+28>>2];J=z[e+32>>2];z[c+124>>2]=m-D;z[c+120>>2]=t-j;z[c+112>>2]=J;z[c+116>>2]=E-y;z[c+128>>2]=z[e+48>>2];z[c+132>>2]=z[e+52>>2];z[c+136>>2]=z[e+56>>2];j=z[b+8>>2];t=z[b+4>>2];D=z[b+12>>2];m=z[b>>2];v[c+60>>2]=0;E=C(t+t);J=C(j*E);y=C(m+m);Q=C(D*y);z[c+44>>2]=J-Q;z[c+36>>2]=J+Q;m=C(C(1)-C(m*y));J=C(t*E);z[c+48>>2]=m-J;k=m;m=C(j+j);Q=C(j*m);z[c+32>>2]=k-Q;v[c+52>>2]=0;v[c+56>>2]=0;j=C(y*j);E=C(E*D);z[c+40>>2]=j+E;t=C(y*t);D=C(m*D);z[c+28>>2]=t-D;z[c+24>>2]=j-E;z[c+20>>2]=t+D;z[c+16>>2]=C(C(1)-J)-Q;z[c+64>>2]=z[a+4>>2];z[c+68>>2]=z[a+8>>2];z[c+72>>2]=z[a+12>>2];u[c+8>>1]=x[i>>1];d=c+80|0;e=c+16|0;t=C(0);D=C(0);J=C(0);Q=C(0);a=xa-592|0;xa=a;a:{b:{if(w[c+8|0]&16){break b}i=1;if(!o$(d+48|0,d+36|0,d,e+48|0,e+36|0,e)){break b}v[h+40>>2]=0;u[h+12>>1]=2;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break a}EV(a+496|0,d+36|0,d+48|0,d,d+12|0,d+24|0);EV(a+400|0,e+36|0,e+48|0,e,e+12|0,e+24|0);j=z[d+52>>2];m=z[d+48>>2];y=z[d+56>>2];z[a+232>>2]=-y;z[a+228>>2]=-j;z[a+224>>2]=-m;z[a+88>>2]=y;z[a+84>>2]=j;z[a+80>>2]=m;H=z[d+24>>2];j=C(-z[d+36>>2]);k=z[d+28>>2];m=z[d+40>>2];l=z[d+32>>2];y=z[d+44>>2];L=C(C(C(H*j)-C(k*m))-C(l*y));s=z[d+12>>2];F=z[d+16>>2];G=z[d+20>>2];o=C(C(C(s*j)-C(F*m))-C(G*y));q=z[d>>2];M=z[d+4>>2];N=z[d+8>>2];A=C(C(C(q*j)-C(M*m))-C(N*y));j=z[f>>2];E=z[f+4>>2];n=z[f+8>>2];m=C(-C(C(C(H*j)+C(k*E))+C(l*n)));y=C(-C(C(C(s*j)+C(F*E))+C(G*n)));E=C(-C(C(C(q*j)+C(M*E))+C(N*n)));T=h+28|0;i=0;I=-1;while(1){p=(a+400|0)+B(i,12)|0;j=z[p>>2];n=z[p+4>>2];r=z[p+8>>2];z[a+392>>2]=L+C(C(C(H*j)+C(k*n))+C(l*r));z[a+388>>2]=o+C(C(C(s*j)+C(F*n))+C(G*r));z[a+384>>2]=A+C(C(C(q*j)+C(M*n))+C(N*r));z[a+376>>2]=m;z[a+372>>2]=y;z[a+368>>2]=E;R=q$(a+224|0,a+80|0,a+384|0,a+368|0,a- -64|0,a+48|0);c:{if((R|0)==-1){break c}j=z[a+64>>2];if(j=j)){break c}O=z[d+24>>2];t=z[d>>2];D=z[d+12>>2];J=z[d+28>>2];Q=z[d+4>>2];S=z[d+16>>2];I=B(R,12)+103216|0;g=z[I>>2];n=z[I+4>>2];r=z[I+8>>2];z[h+36>>2]=C(C(g*z[d+8>>2])+C(n*z[d+20>>2]))+C(r*z[d+32>>2]);z[h+32>>2]=C(C(g*Q)+C(n*S))+C(r*J);z[h+28>>2]=C(C(g*t)+C(n*D))+C(r*O);z[h+16>>2]=z[p>>2];z[h+20>>2]=z[p+4>>2];z[h+24>>2]=z[p+8>>2];I=0;g=j}i=i+1|0;if((i|0)!=8){continue}break}j=z[e+52>>2];H=z[e+48>>2];k=z[e+56>>2];z[a+232>>2]=-k;z[a+228>>2]=-j;z[a+224>>2]=-H;z[a+88>>2]=k;z[a+84>>2]=j;z[a+80>>2]=H;j=z[e+40>>2];H=z[e+44>>2];k=z[e+20>>2];l=z[e+16>>2];A=z[e+36>>2];s=z[e+8>>2];F=z[e>>2];G=z[e+4>>2];q=z[e+12>>2];n=z[e+24>>2];M=z[f>>2];r=z[e+28>>2];N=z[f+4>>2];L=z[e+32>>2];o=z[f+8>>2];z[a+392>>2]=C(C(n*M)+C(r*N))+C(L*o);z[a+388>>2]=C(C(q*M)+C(l*N))+C(k*o);z[a+384>>2]=C(C(F*M)+C(G*N))+C(s*o);o=C(-A);M=C(C(C(n*o)-C(r*j))-C(L*H));N=C(C(C(q*o)-C(l*j))-C(k*H));H=C(C(C(F*o)-C(G*j))-C(s*H));i=0;while(1){p=(a+496|0)+B(i,12)|0;j=z[p>>2];o=z[p+4>>2];A=z[p+8>>2];z[a+376>>2]=M+C(C(C(n*j)+C(r*o))+C(L*A));z[a+372>>2]=N+C(C(C(q*j)+C(l*o))+C(k*A));z[a+368>>2]=H+C(C(C(F*j)+C(G*o))+C(s*A));R=q$(a+224|0,a+80|0,a+368|0,a+384|0,a- -64|0,a+48|0);d:{if((R|0)==-1){break d}j=z[a+64>>2];if(j=j)){break d}O=z[e+24>>2];m=z[e+12>>2];y=z[e>>2];E=z[e+28>>2];t=z[e+16>>2];D=z[e+4>>2];I=B(R,12)+103216|0;g=C(-z[I+4>>2]);o=z[I>>2];A=z[I+8>>2];z[h+36>>2]=C(C(z[e+20>>2]*g)-C(o*z[e+8>>2]))-C(A*z[e+32>>2]);z[h+32>>2]=C(C(t*g)-C(o*D))-C(A*E);z[h+28>>2]=C(C(m*g)-C(o*y))-C(A*O);g=z[p>>2];o=z[f>>2];A=z[p+4>>2];O=z[f+4>>2];z[h+24>>2]=C(j*z[f+8>>2])+z[p+8>>2];z[h+20>>2]=A+C(j*O);z[h+16>>2]=g+C(j*o);I=1;g=j}i=i+1|0;if((i|0)!=8){continue}break}s=z[d+32>>2];F=z[d+28>>2];G=z[d+24>>2];q=z[d+20>>2];n=z[d+16>>2];r=z[d+12>>2];L=z[d+8>>2];o=z[d+4>>2];A=z[d>>2];d=0;while(1){p=B(d,12);i=p+(a+224|0)|0;p=p+103296|0;j=z[p>>2];k=z[p+4>>2];l=z[p+8>>2];z[i+8>>2]=C(C(j*L)+C(k*q))+C(l*s);z[i+4>>2]=C(C(j*o)+C(k*n))+C(l*F);z[i>>2]=C(C(j*A)+C(k*r))+C(l*G);d=d+1|0;if((d|0)!=12){continue}break}s=z[e+32>>2];F=z[e+28>>2];G=z[e+24>>2];q=z[e+20>>2];n=z[e+16>>2];r=z[e+12>>2];L=z[e+8>>2];o=z[e+4>>2];A=z[e>>2];e=0;while(1){i=B(e,12);d=i+(a+80|0)|0;i=i+103296|0;j=z[i>>2];k=z[i+4>>2];l=z[i+8>>2];z[d+8>>2]=C(C(j*L)+C(k*q))+C(l*s);z[d+4>>2]=C(C(j*o)+C(k*n))+C(l*F);z[d>>2]=C(C(j*A)+C(k*r))+C(l*G);e=e+1|0;if((e|0)!=12){continue}break}d=0;while(1){e=(a+224|0)+B(d,12)|0;L=z[e+8>>2];o=z[e>>2];A=z[e+4>>2];if(C(C(L*z[f+8>>2])+C(C(o*z[f>>2])+C(A*z[f+4>>2])))>=C(0)){p=a+496|0;i=(d<<1)+140784|0;e=p+B(w[i|0],12)|0;j=z[e>>2];z[a+64>>2]=j;k=z[e+4>>2];z[a+68>>2]=k;l=z[e+8>>2];z[a+72>>2]=l;e=p+B(w[i+1|0],12)|0;s=z[e>>2];z[a+48>>2]=s;F=z[e+4>>2];z[a+52>>2]=F;G=z[e+8>>2];z[a+56>>2]=G;q=C(G-l);n=C(s-j);r=C(F-k);O=C(K(C(C(q*q)+C(C(n*n)+C(r*r)))));if(O>C(0)){P=l;l=C(C(.009999999776482582)/O);q=C(q*l);z[a+72>>2]=P-q;P=k;k=C(r*l);z[a+68>>2]=P-k;P=j;j=C(n*l);z[a+64>>2]=P-j;z[a+56>>2]=G+q;z[a+52>>2]=F+k;z[a+48>>2]=s+j}e=0;while(1){i=(a+80|0)+B(e,12)|0;j=z[i+8>>2];k=z[i>>2];l=z[i+4>>2];e:{if(C(C(j*z[f+8>>2])+C(C(k*z[f>>2])+C(l*z[f+4>>2])))>=C(0)|C(C(L*j)+C(C(o*k)+C(A*l)))>=C(0)){break e}R=a+400|0;p=(e<<1)+140784|0;i=R+B(w[p|0],12)|0;j=z[i>>2];z[a+32>>2]=j;k=z[i+4>>2];z[a+36>>2]=k;l=z[i+8>>2];z[a+40>>2]=l;i=R+B(w[p+1|0],12)|0;s=z[i>>2];z[a+16>>2]=s;F=z[i+4>>2];z[a+20>>2]=F;G=z[i+8>>2];z[a+24>>2]=G;q=C(G-l);n=C(s-j);r=C(F-k);O=C(K(C(C(q*q)+C(C(n*n)+C(r*r)))));if(O>C(0)){P=l;l=C(C(.009999999776482582)/O);q=C(q*l);z[a+40>>2]=P-q;P=k;k=C(r*l);z[a+36>>2]=P-k;P=j;j=C(n*l);z[a+32>>2]=P-j;z[a+24>>2]=G+q;z[a+20>>2]=F+k;z[a+16>>2]=s+j}if(!p$(a- -64|0,a+48|0,f,a+32|0,a+16|0,a+12|0,a)){break e}j=z[a+12>>2];if(!(j<=g)){break e}E=z[a+64>>2];z[a+384>>2]=E;y=z[a+68>>2];z[a+388>>2]=y;m=z[a+72>>2];z[a+392>>2]=m;H=z[a+32>>2];z[a+368>>2]=H;N=z[a+36>>2];z[a+372>>2]=N;M=z[a+40>>2];z[a+376>>2]=M;g=z[f>>2];k=z[f+4>>2];J=z[a+48>>2];D=z[a+52>>2];t=z[a+56>>2];U=z[a+16>>2];S=z[a+20>>2];Q=z[a+24>>2];l=z[a>>2];s=z[a+4>>2];z[h+24>>2]=C(j*z[f+8>>2])+z[a+8>>2];z[h+20>>2]=s+C(j*k);z[h+16>>2]=l+C(j*g);I=2;g=j}e=e+1|0;if((e|0)!=12){continue}break}}d=d+1|0;if((d|0)!=12){continue}break}if((I|0)!=-1){f:{if((I|0)!=2){break f}z[a+232>>2]=t-m;z[a+228>>2]=D-y;z[a+224>>2]=J-E;z[a+88>>2]=Q-M;z[a+84>>2]=S-N;z[a+80>>2]=U-H;O2(T,a+384|0,a+224|0,a+368|0,a+80|0,f,g);j=z[h+36>>2];t=z[h+28>>2];D=z[h+32>>2];m=C(K(C(C(j*j)+C(C(t*t)+C(D*D)))));if(!(m>C(0))){break f}k=j;j=C(C(1)/m);z[h+36>>2]=k*j;z[h+32>>2]=D*j;z[h+28>>2]=t*j}z[h+40>>2]=g;u[h+12>>1]=3}i=(I|0)!=-1}xa=a+592|0;if(!(!i|z[h+40>>2]==C(0))){z[h+16>>2]=z[b+16>>2]+z[h+16>>2];z[h+20>>2]=z[b+20>>2]+z[h+20>>2];z[h+24>>2]=z[b+24>>2]+z[h+24>>2]}xa=c+144|0;return i|0}function On(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=C(0),s=0,A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=0;A=v[37389];o=xa-16|0;xa=o;a=v[37696];e=Ba[v[v[a>>2]+20>>2]](a)|0?40633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,132,e,5452,524)|0;v[a+12>>2]=1;v[a+4>>2]=196610;v[a+88>>2]=0;v[a+92>>2]=1065353216;v[a+80>>2]=0;v[a+84>>2]=0;v[a+120>>2]=0;v[a+124>>2]=1065353216;v[a+112>>2]=0;v[a+116>>2]=0;v[a+104>>2]=0;v[a+108>>2]=1065353216;v[a+96>>2]=0;v[a+100>>2]=0;v[a+8>>2]=142832;v[a>>2]=142748;v[a+36>>2]=-25165825;v[a+28>>2]=-25165825;v[a+32>>2]=-25165825;v[a+40>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;e=a- -64|0;v[e>>2]=0;v[e+4>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+128>>2]=A;i=xa-48|0;xa=i;a:{if(!qX(67,86,88,77,i+36|0,i+35|0,b)){break a}if(y[i+36>>2]<=12){a9(v[37696],32,10646,318,65100,0);break a}gX(w[i+35|0],b);if(!rX(67,76,72,76,i+44|0,i+43|0,b)){break a}if(y[i+44>>2]<=8){if(!rX(67,86,72,76,i+44|0,i+43|0,b)){break a}}lX(i,4,w[i+43|0],b);d=v[i>>2];t[a+54|0]=d;e=v[i+4>>2];u[a+52>>1]=e;f=v[i+8>>2];t[a+55|0]=f;h=B(d&255,15);d=e&32767;h=(h+(d<<1)|0)+(e<<16>>16>=0?0:d<<2)|0;e=v[i+12>>2];d=(h+e|0)+B(f&255,20)|0;f=d&3;d=(f?4-f|0:0)+d|0;f=v[a+56>>2];if(f){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,f)}v[a+80>>2]=e;if(d){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,24422,10646,199)|0}v[a+56>>2]=c;f=x[a+52>>1];c=B(w[a+55|0],20)+c|0;g=w[a+54|0];j=B(g,3);lX(c,j,w[i+43|0],b);d=0;l=f&32767;h=f<<16>>16>=0?0:l<<2;g=c+B(g,12)|0;l=g+(l<<1)|0;f=l+j|0;if(y[i+44>>2]<=6){fX(w[i+43|0],b)}h=f+h|0;Ba[v[v[b>>2]>>2]](b,v[a+56>>2],B(w[a+55|0],20))|0;if(!(!w[i+43|0]|!w[a+55|0])){while(1){c=v[a+56>>2]+B(d,20)|0;j=w[c+3|0];t[c+3|0]=w[c|0];t[c|0]=j;j=w[c+1|0];t[c+1|0]=w[c+2|0];t[c+2|0]=j;j=w[c+4|0];t[c+4|0]=w[c+7|0];t[c+7|0]=j;j=w[c+5|0];t[c+5|0]=w[c+6|0];t[c+6|0]=j;j=w[c+11|0];t[c+11|0]=w[c+8|0];t[c+8|0]=j;j=w[c+10|0];t[c+10|0]=w[c+9|0];t[c+9|0]=j;j=w[c+15|0];t[c+15|0]=w[c+12|0];t[c+12|0]=j;j=w[c+14|0];t[c+14|0]=w[c+13|0];t[c+13|0]=j;j=w[c+17|0];t[c+17|0]=w[c+16|0];t[c+16|0]=j;d=d+1|0;if(d>>>0>2]>>2]](b,h,e)|0;Ba[v[v[b>>2]>>2]](b,g,x[a+52>>1]<<1&65534)|0;c=w[a+54|0];b:{if(y[i+44>>2]<=5){if(!c){break b}d=0;g=1;c:while(1){k=w[a+55|0];if(k){m=v[a+56>>2];e=0;j=0;while(1){d:{c=m+B(e,20)|0;p=w[c+18|0];if(!p){break d}q=x[c+16>>1];c=0;e:{while(1){if(w[h+(c+q|0)|0]!=(d|0)){c=c+1|0;if((p|0)!=(c|0)){continue}break e}break}t[i+j|0]=e;j=j+1|0}if((j|0)!=3){break d}c=l+B(d,3)|0;t[c|0]=w[i|0];t[c+1|0]=w[i+1|0];t[c+2|0]=w[i+2|0];d=d+1|0;g=w[a+54|0];if(d>>>0>>0){continue c}break b}e=e+1|0;if((k|0)!=(e|0)){continue}break}}break}if(!g){break b}c=0;while(1){e=l+B(c,3)|0;t[e|0]=255;t[e+1|0]=255;t[e+2|0]=255;c=c+1|0;if(c>>>0>2]>>2]](b,l,B(c,3))|0}c=u[a+52>>1];f:{if((c|0)>=0){break f}if(y[i+44>>2]<=7){if(!(c&32767)){break f}c=0;while(1){u[f+(c<<1)>>1]=65535;c=c+1|0;if(c>>>0<(x[a+52>>1]<<1&65534)>>>0){continue}break}break f}d=w[i+43|0];j=0;l=0;e=c<<1&65534;Ba[v[v[b>>2]>>2]](b,f,e<<1)|0;g:{if(!e|!d){break g}c=0;if(e-1>>>0>=3){h=e&-4;while(1){d=c<<1;g=d+f|0;k=w[g+1|0];t[g+1|0]=w[g|0];t[g|0]=k;g=f+(d|2)|0;k=w[g+1|0];t[g+1|0]=w[g|0];t[g|0]=k;g=f+(d|4)|0;k=w[g+1|0];t[g+1|0]=w[g|0];t[g|0]=k;d=f+(d|6)|0;g=w[d+1|0];t[d+1|0]=w[d|0];t[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=w[e+1|0];t[e+1|0]=w[e|0];t[e|0]=g;c=c+1|0;j=j+1|0;if((d|0)!=(j|0)){continue}break}}}lX(i,8,w[i+35|0],b);r=z[i+16>>2];D=z[i+4>>2];E=z[i+20>>2];F=z[i+8>>2];G=z[i+24>>2];H=z[i+12>>2];z[a+36>>2]=C(G-H)*C(.5);z[a+32>>2]=C(E-F)*C(.5);z[a+28>>2]=C(r-D)*C(.5);z[a+24>>2]=C(H+G)*C(.5);z[a+20>>2]=C(F+E)*C(.5);z[a+16>>2]=C(D+r)*C(.5);r=z[i+28>>2];z[a+88>>2]=r;if(r!=C(-1)){lX(a+92|0,9,w[i+35|0],b);lX(a+40|0,3,w[i+35|0],b)}if(hX(w[i+35|0],b)!=C(-1)){c=v[a+84>>2];if(c){c=XZ(c);e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[a+84>>2]=0;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?46773:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,28,e,10646,351)|0;v[c>>2]=0;v[c+4>>2]=0;v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[a+84>>2]=c;k=0;m=0;p=0;q=0;j=xa-16|0;xa=j;h:{if(!rX(83,85,80,77,j+12|0,j+11|0,b)){break h}if(!rX(71,65,85,83,j+12|0,j+11|0,b)){break h}J=c,K=gX(w[j+11|0],b),u[J>>1]=K;d=gX(w[j+11|0],b);u[c+2>>1]=d;e=d<<1&131070;i:{if(!e){f=0;break i}d=v[37696];f=Ba[v[v[d+12>>2]+8>>2]](d+12|0,e,24422,13319,161)|0;d=x[c+2>>1]}v[c+4>>2]=f;Ba[v[v[b>>2]>>2]](b,f,(d&65535)<<1)|0;l=xa-16|0;xa=l;j:{if(!rX(86,65,76,69,l+12|0,l+11|0,b)){break j}J=c,K=gX(w[l+11|0],b),v[J+8>>2]=K;e=gX(w[l+11|0],b);v[c+12>>2]=e;d=v[c+24>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d);e=v[c+12>>2]}d=(v[c+8>>2]<<2)+12&-16;e=d+e|0;if(e){f=v[37696];e=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,13319,99)|0}else{e=0}v[c+16>>2]=e;v[c+24>>2]=e;v[c+20>>2]=d+e;d=gX(w[l+11|0],b)&65535;f=v[c+8>>2];g=w[l+11|0];h=xa;I=h;k:{if(d>>>0<=255){h=h-(f+15&-16)|0;xa=h;Ba[v[v[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){u[e+(d<<1)>>1]=w[d+h|0];n=d|1;u[e+(n<<1)>>1]=w[h+n|0];n=d|2;u[e+(n<<1)>>1]=w[h+n|0];n=d|3;u[e+(n<<1)>>1]=w[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){u[e+(d<<1)>>1]=w[d+h|0];d=d+1|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}break k}Ba[v[v[b>>2]>>2]](b,e,f<<1)|0;if(!f|!g){break k}g=0;d=0;if(f-1>>>0>=3){n=f&-4;while(1){h=d<<1;k=h+e|0;s=w[k+1|0];t[k+1|0]=w[k|0];t[k|0]=s;k=e+(h|2)|0;s=w[k+1|0];t[k+1|0]=w[k|0];t[k|0]=s;k=e+(h|4)|0;s=w[k+1|0];t[k+1|0]=w[k|0];t[k|0]=s;h=e+(h|6)|0;k=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=k;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;k=w[f+1|0];t[f+1|0]=w[f|0];t[f|0]=k;d=d+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}xa=I;f=v[c+8>>2];l:{if(!f){break l}g=v[c+16>>2];d=0;if(f-1>>>0>=3){k=f&-4;while(1){h=f+(d^-1)|0;u[g+(h<<2)>>1]=x[e+(h<<1)>>1];h=f-d|0;m=h-2|0;u[g+(m<<2)>>1]=x[e+(m<<1)>>1];m=h-3|0;u[g+(m<<2)>>1]=x[e+(m<<1)>>1];h=h-4|0;u[g+(h<<2)>>1]=x[e+(h<<1)>>1];d=d+4|0;p=p+4|0;if((k|0)!=(p|0)){continue}break}}h=f&3;if(!h){break l}while(1){k=f+(d^-1)|0;u[g+(k<<2)>>1]=x[e+(k<<1)>>1];d=d+1|0;q=q+1|0;if((h|0)!=(q|0)){continue}break}}Ba[v[v[b>>2]>>2]](b,v[c+20>>2],v[c+12>>2])|0;f=0;g=v[c+16>>2];u[g+2>>1]=0;c=v[c+8>>2];if(c>>>0<2){break j}d=c-1|0;h=d&3;e=1;if(c-2>>>0>=3){k=d&-4;d=0;while(1){c=g+(e<<2)|0;f=x[c-4>>1]+f|0;u[c+2>>1]=f;f=f+x[c>>1]|0;u[c+6>>1]=f;f=f+x[c+4>>1]|0;u[c+10>>1]=f;f=f+x[c+8>>1]|0;u[c+14>>1]=f;e=e+4|0;d=d+4|0;if((k|0)!=(d|0)){continue}break}}if(!h){break j}d=0;while(1){c=g+(e<<2)|0;f=x[c-4>>1]+f|0;u[c+2>>1]=f;e=e+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}xa=l+16|0}xa=j+16|0;v[a+60>>2]=v[a+84>>2]}lX(a- -64|0,4,w[i+35|0],b);c=1}xa=i+48|0;m:{if(!c){b=v[a+12>>2]-1|0;v[a+12>>2]=b;if(b){a=0;break m}Ba[v[v[a+8>>2]+8>>2]](a+8|0);a=0;break m}v[o+8>>2]=a;b=qh(A+48|0,o+8|0,o+15|0);if(!w[o+15|0]){v[b>>2]=v[o+8>>2]}}xa=o+16|0;return a|0}function lP(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,y=0,A=0,D=0;r=xa-16|0;xa=r;h=v[a+2396>>2];f=v[h+288>>2];if(!f){p=xa-16|0;xa=p;j=v[h+284>>2];if(j){f=v[37696];n=Ba[v[v[f>>2]+20>>2]](f)|0?37683:63804;n=Ba[v[v[f+12>>2]+8>>2]](f+12|0,j,n,18373,180)|0}else{n=0}v[p+12>>2]=n;f=v[h+268>>2];a:{if(f>>>0>=(v[h+272>>2]&2147483647)>>>0){f=0;j=h+4|0;e=v[j+268>>2];k=e&2147483647?e<<1:1;b:{if(!k){break b}e=k<<2;if(!(w[j+256|0]|e>>>0>256)){t[j+256|0]=1;f=j;break b}if(!e){break b}f=v[37696];g=Ba[v[v[f>>2]+20>>2]](f)|0?37683:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,g,16608,553)|0}g=v[j+264>>2];l=(g<<2)+f|0;if((g|0)>0){m=v[j+260>>2];e=f;while(1){v[e>>2]=v[m>>2];m=m+4|0;e=e+4|0;if(l>>>0>e>>>0){continue}break}}v[l>>2]=v[p+12>>2];c:{if(v[j+268>>2]<0){break c}e=v[j+260>>2];if((e|0)==(j|0)){t[j+256|0]=0;break c}if(!e){break c}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e);g=v[j+264>>2]}v[j+268>>2]=k;v[j+260>>2]=f;v[j+264>>2]=g+1;break a}v[v[h+264>>2]+(f<<2)>>2]=n;v[h+268>>2]=f+1}f=(n+B(v[h+276>>2],80)|0)-80|0;if(n>>>0<=f>>>0){j=v[h+288>>2];while(1){v[f>>2]=j;j=f;f=f-80|0;if(n>>>0<=f>>>0){continue}break}v[h+288>>2]=j}xa=p+16|0;f=v[h+288>>2]}v[h+288>>2]=v[f>>2];v[h+280>>2]=v[h+280>>2]+1;e=0;k=xa-48|0;xa=k;t[f+68|0]=0;v[f+56>>2]=0;n=b;v[f+52>>2]=b;j=a;v[f+48>>2]=a;p=c;a=0;d:{if(!c){break d}a=0;if(!w[p+9|0]){break d}a=v[p>>2]}v[f+60>>2]=a;v[f- -64>>2]=!d|!w[d+9|0]?e:v[d>>2];a=v[j+2364>>2];b=v[a+12>>2];e:{if(b){b=b-1|0;e=v[v[a+8>>2]+(b<<2)>>2];v[a+12>>2]=b;break e}e=v[a+4>>2];v[a+4>>2]=e+1}v[f+40>>2]=e;c=v[j+1004>>2];a=c+164|0;b=v[c+176>>2]&2147483647;f:{if(b>>>0>e>>>0){break f}h=b;b=b<<1;if(h>>>0>=b>>>0){break f}OH(a,b);e=v[f+40>>2]}b=v[c+172>>2];v[k+40>>2]=0;v[k+44>>2]=0;v[k+32>>2]=0;v[k+36>>2]=0;v[k+24>>2]=0;v[k+28>>2]=0;v[k+16>>2]=0;v[k+20>>2]=0;e=e+1|0;b=b>>>0>e>>>0?b:e;if(b>>>0>(v[a+12>>2]&2147483647)>>>0){OH(a,b)}e=v[a+8>>2];if((e|0)<(b|0)){h=v[a+4>>2];g=h+(b<<5)|0;e=h+(e<<5)|0;while(1){z[e>>2]=z[k+16>>2];z[e+4>>2]=z[k+20>>2];z[e+8>>2]=z[k+24>>2];v[e+12>>2]=v[k+28>>2];z[e+16>>2]=z[k+32>>2];z[e+20>>2]=z[k+36>>2];z[e+24>>2]=z[k+40>>2];v[e+28>>2]=v[k+44>>2];e=e+32|0;if(g>>>0>e>>>0){continue}break}}v[a+8>>2]=b;a=v[c+168>>2]+(v[f+40>>2]<<5)|0;v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;l=v[f+48>>2];s=v[f+52>>2];y=v[s+44>>2];a=y;g:{if(a>>>0<=128){b=v[l+1580>>2];if(!b){h=xa-16|0;xa=h;i=l+1292|0;b=v[i+284>>2];if(b){a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?52331:63804;e=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,18373,180)|0}else{e=0}v[h+12>>2]=e;a=v[i+268>>2];h:{if(a>>>0>=(v[i+272>>2]&2147483647)>>>0){a=0;c=i+4|0;b=v[c+268>>2];o=b&2147483647?b<<1:1;i:{if(!o){break i}b=o<<2;if(!(w[c+256|0]|b>>>0>256)){t[c+256|0]=1;a=c;break i}if(!b){break i}a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?52331:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,16608,553)|0}g=v[c+264>>2];q=(g<<2)+a|0;if((g|0)>0){m=v[c+260>>2];b=a;while(1){v[b>>2]=v[m>>2];m=m+4|0;b=b+4|0;if(q>>>0>b>>>0){continue}break}}v[q>>2]=v[h+12>>2];j:{if(v[c+268>>2]<0){break j}b=v[c+260>>2];if((b|0)==(c|0)){t[c+256|0]=0;break j}if(!b){break j}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,b);g=v[c+264>>2]}v[c+268>>2]=o;v[c+260>>2]=a;v[c+264>>2]=g+1;break h}v[v[i+264>>2]+(a<<2)>>2]=e;v[i+268>>2]=a+1}b=(e+(v[i+276>>2]<<7)|0)-128|0;if(e>>>0<=b>>>0){a=v[i+288>>2];while(1){v[b>>2]=a;a=b;b=a-128|0;if(e>>>0<=b>>>0){continue}break}v[i+288>>2]=a}xa=h+16|0;b=v[l+1580>>2]}v[l+1580>>2]=v[b>>2];a=l+1572|0;v[a>>2]=v[a>>2]+1;break g}if(a>>>0<=256){b=v[l+1872>>2];if(!b){h=xa-16|0;xa=h;i=l+1584|0;b=v[i+284>>2];if(b){a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?52633:63804;e=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,18373,180)|0}else{e=0}v[h+12>>2]=e;a=v[i+268>>2];k:{if(a>>>0>=(v[i+272>>2]&2147483647)>>>0){a=0;c=i+4|0;b=v[c+268>>2];o=b&2147483647?b<<1:1;l:{if(!o){break l}b=o<<2;if(!(w[c+256|0]|b>>>0>256)){t[c+256|0]=1;a=c;break l}if(!b){break l}a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?52633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,16608,553)|0}g=v[c+264>>2];q=(g<<2)+a|0;if((g|0)>0){m=v[c+260>>2];b=a;while(1){v[b>>2]=v[m>>2];m=m+4|0;b=b+4|0;if(q>>>0>b>>>0){continue}break}}v[q>>2]=v[h+12>>2];m:{if(v[c+268>>2]<0){break m}b=v[c+260>>2];if((b|0)==(c|0)){t[c+256|0]=0;break m}if(!b){break m}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,b);g=v[c+264>>2]}v[c+268>>2]=o;v[c+260>>2]=a;v[c+264>>2]=g+1;break k}v[v[i+264>>2]+(a<<2)>>2]=e;v[i+268>>2]=a+1}b=(e+(v[i+276>>2]<<8)|0)-256|0;if(e>>>0<=b>>>0){a=v[i+288>>2];while(1){v[b>>2]=a;a=b;b=a-256|0;if(e>>>0<=b>>>0){continue}break}v[i+288>>2]=a}xa=h+16|0;b=v[l+1872>>2]}v[l+1872>>2]=v[b>>2];a=l+1864|0;v[a>>2]=v[a>>2]+1;break g}if(a>>>0<=384){b=v[l+2164>>2];if(!b){h=xa-16|0;xa=h;i=l+1876|0;b=v[i+284>>2];if(b){a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?53263:63804;e=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,18373,180)|0}else{e=0}v[h+12>>2]=e;a=v[i+268>>2];n:{if(a>>>0>=(v[i+272>>2]&2147483647)>>>0){a=0;c=i+4|0;b=v[c+268>>2];o=b&2147483647?b<<1:1;o:{if(!o){break o}b=o<<2;if(!(w[c+256|0]|b>>>0>256)){t[c+256|0]=1;a=c;break o}if(!b){break o}a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?53263:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,16608,553)|0}g=v[c+264>>2];q=(g<<2)+a|0;if((g|0)>0){m=v[c+260>>2];b=a;while(1){v[b>>2]=v[m>>2];m=m+4|0;b=b+4|0;if(q>>>0>b>>>0){continue}break}}v[q>>2]=v[h+12>>2];p:{if(v[c+268>>2]<0){break p}b=v[c+260>>2];if((b|0)==(c|0)){t[c+256|0]=0;break p}if(!b){break p}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,b);g=v[c+264>>2]}v[c+268>>2]=o;v[c+260>>2]=a;v[c+264>>2]=g+1;break n}v[v[i+264>>2]+(a<<2)>>2]=e;v[i+268>>2]=a+1}b=(e+B(v[i+276>>2],384)|0)-384|0;if(e>>>0<=b>>>0){a=v[i+288>>2];while(1){v[b>>2]=a;a=b;b=a-384|0;if(e>>>0<=b>>>0){continue}break}v[i+288>>2]=a}xa=h+16|0;b=v[l+2164>>2]}v[l+2164>>2]=v[b>>2];a=l+2156|0;v[a>>2]=v[a>>2]+1;break g}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,11777,1823)|0}q:{if(!b){a9(v[37696],32,9874,127,65718,0);break q}a=I9(b,0,y);z[f>>2]=z[s+48>>2];z[f+4>>2]=z[s+52>>2];c=x[s>>1];u[f+8>>1]=y;u[f+10>>1]=c;v[f+12>>2]=v[s+36>>2];c=v[s+32>>2];v[f+20>>2]=a;v[f+16>>2]=c;a=v[f+60>>2];e=a?a- -64|0:0;v[f+24>>2]=e;c=v[f- -64>>2];h=c?c- -64|0:0;v[f+28>>2]=h;v[f+32>>2]=a?v[e+36>>2]:0;v[f+36>>2]=c?v[h+36>>2]:0;z[f+44>>2]=z[s+56>>2]}if(b){z[k+16>>2]=z[n+48>>2];z[k+12>>2]=z[n+52>>2];if(z[k+12>>2]>2]>2]=f;a=v[j+1136>>2];r:{if(!(v[(v[v[v[f+48>>2]+1004>>2]+168>>2]+(v[f+40>>2]<<5)|0)+12>>2]?0:w[v[f+52>>2]]&6)){b=v[f+64>>2];c=v[f+60>>2];s:{if(!c){break s}c=v[c+164>>2];if(!c){break s}HH(a,c,f)}if(!b){break r}b=v[b+164>>2];if(!b){break r}HH(a,b,f);break r}BH(a,f)}e=v[v[f+48>>2]+2408>>2];if(p){c=v[p>>2]}else{c=v[j+2380>>2]}if(d){a=v[d>>2]}else{a=v[j+2380>>2]}b=v[e+288>>2];if(!b){PH(e);b=v[e+288>>2]}v[e+288>>2]=v[b>>2];v[e+280>>2]=v[e+280>>2]+1;A=f,D=KH(b,f,c,a),v[A+56>>2]=D}xa=k+48|0;v[r+8>>2]=n;a=qh(j+1096|0,r+8|0,r+15|0);if(!w[r+15|0]){v[a>>2]=v[r+8>>2]}xa=r+16|0}function XX(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,u=0,x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),G=0,H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0);j=xa-320|0;xa=j;s=v[b+4>>2];k=z[s+20>>2];l=v[a+4>>2];m=z[l+20>>2];A=z[d>>2];G=w[l+32|0];H=z[l+16>>2];I=w[s+32|0];J=z[s+16>>2];v[j+44>>2]=0;N=C((k>2]=r;P=w[g+l|0];v[c+(j+48|0)>>2]=P;c=(1-r<<4)+U|0;k=z[c>>2];m=z[c+4>>2];n=z[c+8>>2];p=z[s+48>>2];o=z[s+52>>2];q=z[s+56>>2];u=d<<4;r=u+(j+144|0)|0;z[r+12>>2]=z[c+12>>2];z[r+8>>2]=n;z[r+4>>2]=m;z[r>>2]=k;c=u+(j+80|0)|0;v[c+12>>2]=0;r=u+(j+208|0)|0;v[r+12>>2]=0;u=(P<<4)+101152|0;q=v[u+8>>2]?q:C(-q);z[c+8>>2]=q;o=v[u+4>>2]?o:C(-o);z[c+4>>2]=o;p=v[u>>2]?p:C(-p);z[c>>2]=p;n=C(n-q);z[r+8>>2]=n;m=C(m-o);z[r+4>>2]=m;k=C(k-p);z[r>>2]=k;c=d;d=c+1|0;v[j+44>>2]=d;l=l+1|0;if((O|0)!=(l|0)){continue}break}g:{h:{switch(c-1|0){case 0:p=z[j+216>>2];k=C(z[j+232>>2]-p);o=z[j+208>>2];m=C(z[j+224>>2]-o);q=z[j+212>>2];n=C(z[j+228>>2]-q);x=C(C(k*k)+C(C(m*m)+C(n*n)));if(!(x<=C(1.1920928955078125e-7))){break g}v[j+44>>2]=1;c=v[j+212>>2];v[j+16>>2]=v[j+208>>2];v[j+20>>2]=c;c=v[j+220>>2];v[j+24>>2]=v[j+216>>2];v[j+28>>2]=c;break e;case 1:iY(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}}P_(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break e}v[j+28>>2]=0;E=k;k=C(F(C(C(C(C(C(-o)*m)-C(n*q))-C(p*k))/x),C(1)));k=k>C(0)?k:C(0);z[j+24>>2]=p+C(E*k);z[j+20>>2]=q+C(n*k);z[j+16>>2]=o+C(m*k);break e}k=z[c+8>>2];n=z[c>>2];m=z[c+4>>2];v[j+284>>2]=0;c=C(C(k*k)+C(C(n*n)+C(m*m)))>C(0);k=c?k:C(0);z[j+280>>2]=k;m=c?m:C(0);z[j+276>>2]=m;n=c?n:C(1);z[j+272>>2]=n;p=C(C(1)/C(K(C(C(k*k)+C(C(n*n)+C(m*m))))));x=C(k*p);y=C(n*p);o=C(34028234663852886e22);q=C(m*p);break d}v[j+28>>2]=0;z[j+24>>2]=n;z[j+20>>2]=m;z[j+16>>2]=k}c=v[j+20>>2];v[j+272>>2]=v[j+16>>2];v[j+276>>2]=c;c=v[j+28>>2];v[j+280>>2]=v[j+24>>2];v[j+284>>2]=c;k=z[j+280>>2];n=z[j+272>>2];m=z[j+276>>2];o=C(K(C(C(k*k)+C(C(n*n)+C(m*m)))));if(!(N>2]=v[j+312>>2];c=v[j+308>>2];v[j+288>>2]=v[j+304>>2];v[j+292>>2]=c;d=v[a+4>>2];s=d+52|0;c=v[j+44>>2];r=c<<2;o=C(-n);u=d+56|0;G=d+68|0;I=d+72|0;l=C(C(C(z[d+48>>2]*o)-C(z[s>>2]*m))-C(z[u>>2]*k))>C(C(C(z[d+64>>2]*o)-C(z[G>>2]*m))-C(z[I>>2]*k));v[r+(j- -64|0)>>2]=l;o=z[(l?d+48|0:d- -64|0)>>2];E=z[(l?s:G)>>2];Q=z[(l?u:I)>>2];d=v[b+4>>2];u=r+(j+48|0)|0;H=n;s=n>C(0);A=m;l=m>C(0);J=k;r=k>C(0);v[u>>2]=s|l<<1|r<<2;k=z[d+56>>2];R=r?k:C(-k);k=C(Q-R);m=z[d+48>>2];S=s?m:C(-m);m=C(o-S);n=z[d+52>>2];T=l?n:C(-n);n=C(E-T);M=C(C(x*k)+C(C(y*m)+C(q*n)));if(M>V){a=0;if(!f){break a}t[h|0]=c;if(!c){break a}l=0;if((c|0)!=1){h=c&-2;d=0;while(1){b=l<<2;i=j- -64|0;t[f+l|0]=v[b+i>>2];s=j+48|0;t[g+l|0]=v[s+b>>2];b=l|1;e=b<<2;t[b+f|0]=v[e+i>>2];t[b+g|0]=v[e+s>>2];l=l+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(c&1)){break a}b=l<<2;t[f+l|0]=v[b+(j- -64|0)>>2];t[g+l|0]=v[b+(j+48|0)>>2];break a}if(M>C(p*C(.9997749924659729))){i:{if(!f){break i}t[h|0]=c;if(!c){break i}l=0;if((c|0)!=1){h=c&-2;a=0;while(1){b=l<<2;s=j- -64|0;t[f+l|0]=v[b+s>>2];r=j+48|0;t[g+l|0]=v[r+b>>2];b=l|1;d=b<<2;t[b+f|0]=v[d+s>>2];t[b+g|0]=v[d+r>>2];l=l+2|0;a=a+2|0;if((h|0)!=(a|0)){continue}break}}if(!(c&1)){break i}a=l<<2;t[f+l|0]=v[a+(j- -64|0)>>2];t[g+l|0]=v[a+(j+48|0)>>2]}z[i+32>>2]=y;v[i+44>>2]=0;z[i+40>>2]=x;z[i+36>>2]=q;IV(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,c);j:{if(e){a=v[j+20>>2];v[i>>2]=v[j+16>>2];v[i+4>>2]=a;a=v[j+28>>2];v[i+8>>2]=v[j+24>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;a=v[j+308>>2];v[i+68>>2]=v[j+304>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+312>>2];break j}k=z[j+16>>2];m=z[j+20>>2];n=z[j+24>>2];v[i+12>>2]=0;z[i+8>>2]=n-C(B*x);z[i+4>>2]=m-C(B*q);z[i>>2]=k-C(B*y);k=z[j>>2];m=z[j+4>>2];n=z[j+8>>2];v[i+28>>2]=0;z[i+24>>2]=n+C(D*x);z[i+20>>2]=m+C(D*q);z[i+16>>2]=k+C(D*y);p=C(p-L)}z[i+64>>2]=p;a=2;break a}M=z[j+284>>2];l=c<<4;d=l+(j+144|0)|0;v[d+12>>2]=0;z[d+8>>2]=Q;z[d+4>>2]=E;z[d>>2]=o;d=l+(j+80|0)|0;v[d+12>>2]=0;z[d+8>>2]=R;z[d+4>>2]=T;z[d>>2]=S;d=l+(j+208|0)|0;v[d+12>>2]=0;z[d+8>>2]=k;z[d+4>>2]=n;z[d>>2]=m;v[j+44>>2]=c+1;k:{l:{switch(c-1|0){case 0:o=z[j+216>>2];k=C(z[j+232>>2]-o);q=z[j+208>>2];m=C(z[j+224>>2]-q);x=z[j+212>>2];n=C(z[j+228>>2]-x);y=C(C(k*k)+C(C(m*m)+C(n*n)));if(y<=C(1.1920928955078125e-7)){v[j+44>>2]=1;c=v[j+212>>2];v[j+16>>2]=v[j+208>>2];v[j+20>>2]=c;c=v[j+220>>2];v[j+24>>2]=v[j+216>>2];v[j+28>>2]=c;break k}v[j+28>>2]=0;E=k;k=C(F(C(C(C(C(C(-q)*m)-C(n*x))-C(o*k))/y),C(1)));k=k>C(0)?k:C(0);z[j+24>>2]=o+C(E*k);z[j+20>>2]=x+C(n*k);z[j+16>>2]=q+C(m*k);break k;case 1:iY(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:P_(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}}v[j+28>>2]=0;z[j+24>>2]=k;z[j+20>>2]=n;z[j+16>>2]=m}c=v[j+20>>2];v[j+272>>2]=v[j+16>>2];v[j+276>>2]=c;c=v[j+28>>2];v[j+280>>2]=v[j+24>>2];v[j+284>>2]=c;k=z[j+280>>2];n=z[j+272>>2];m=z[j+276>>2];o=C(K(C(C(k*k)+C(C(n*n)+C(m*m)))));y=C(C(1)/o);x=C(k*y);q=C(m*y);y=C(n*y);if(oN){continue}break}c=v[j+44>>2];if(!(o>2];u=j+48|0;t[g+l|0]=v[u+d>>2];d=l|1;h=d<<2;t[d+f|0]=v[h+r>>2];t[d+g|0]=v[h+u>>2];l=l+2|0;a=a+2|0;if((s|0)!=(a|0)){continue}break}}if(!(b&1)){break m}a=l<<2;t[f+l|0]=v[a+(j- -64|0)>>2];t[g+l|0]=v[a+(j+48|0)>>2]}v[j+312>>2]=v[j+296>>2];a=v[j+292>>2];v[j+304>>2]=v[j+288>>2];v[j+308>>2]=a;z[j+284>>2]=M;z[j+272>>2]=H;z[j+276>>2]=A;z[j+280>>2]=J;IV(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,c);v[i+60>>2]=0;z[i+56>>2]=x;z[i+52>>2]=q;z[i+48>>2]=y;v[i+44>>2]=0;k=C(C(1)/p);m=C(J*k);z[i+40>>2]=m;n=C(A*k);z[i+36>>2]=n;k=C(H*k);z[i+32>>2]=k;if(e){a=v[j+20>>2];v[i>>2]=v[j+16>>2];v[i+4>>2]=a;a=v[j+28>>2];v[i+8>>2]=v[j+24>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;z[i+64>>2]=p;a=v[j+292>>2];v[i+68>>2]=v[j+288>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+296>>2];a=4;break a}o=z[j+16>>2];q=z[j+20>>2];A=z[j+24>>2];v[i+12>>2]=0;z[i+8>>2]=A-C(B*m);z[i+4>>2]=q-C(B*n);z[i>>2]=o-C(B*k);o=z[j>>2];q=z[j+4>>2];A=z[j+8>>2];z[i+64>>2]=p-L;v[i+28>>2]=0;z[i+24>>2]=A+C(D*m);z[i+20>>2]=q+C(D*n);z[i+16>>2]=o+C(D*k);a=2;if(p<=L){break a}a=4;break a}if(f){break b}a=5;break a}c=v[j+44>>2]}t[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;i=j- -64|0;t[f+l|0]=v[b+i>>2];s=j+48|0;t[g+l|0]=v[s+b>>2];b=l|1;e=b<<2;t[b+f|0]=v[e+i>>2];t[b+g|0]=v[e+s>>2];l=l+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(c&1)){break a}b=l<<2;t[f+l|0]=v[b+(j- -64|0)>>2];t[g+l|0]=v[b+(j+48|0)>>2]}xa=j+320|0;return a} -function cV(a,b,c,d){var e=0,f=C(0),g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=0,F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=0,P=C(0);e=xa-32|0;xa=e;f=z[d+52>>2];l=z[d+56>>2];t=z[d+60>>2];n=z[d+20>>2];o=z[d+24>>2];w=z[d+28>>2];p=z[d+36>>2];q=z[d+40>>2];x=z[d+48>>2];y=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];A=z[d+12>>2];r=z[d+16>>2];s=z[d+32>>2];u=z[d+44>>2];z[a+80>>2]=u;z[a+76>>2]=q;z[a+72>>2]=p;z[a+68>>2]=s;z[a- -64>>2]=w;z[a+60>>2]=o;z[a+56>>2]=n;z[a+52>>2]=r;z[a+48>>2]=A;z[a+44>>2]=k;z[a+40>>2]=j;z[a+36>>2]=y;t=C(t+C(0));z[a+96>>2]=t;x=C(x+C(C(C(r*C(0))-C(y*c))+C(s*C(0))));z[a+84>>2]=x;l=C(l+C(C(C(o*C(0))-C(k*c))+C(q*C(0))));z[a+92>>2]=l;B=C(f+C(C(C(n*C(0))-C(j*c))+C(p*C(0))));z[a+88>>2]=B;v[a+32>>2]=0;v[a>>2]=2;f=C(3.1415927410125732);while(1){v[e+24>>2]=0;O=e,P=C(G9(f)*b),z[O+20>>2]=P;O=e,P=C(Q9(f)*b),z[O+16>>2]=P;f=C(f+C(.03141592815518379));g=ZU(a,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;z[e+4>>2]=b;D=C(b*C(1.7484555314695172e-7));z[e>>2]=D;g=ZU(g,e);z[a+96>>2]=t;z[a+92>>2]=l;z[a+88>>2]=B;z[a+84>>2]=x;z[a+80>>2]=w;z[a+76>>2]=o;z[a+72>>2]=n;z[a+68>>2]=r;u=C(-u);z[a+64>>2]=u;q=C(-q);z[a+60>>2]=q;p=C(-p);z[a+56>>2]=p;s=C(-s);z[a+52>>2]=s;z[a+48>>2]=A;z[a+44>>2]=k;z[a+40>>2]=j;z[a+36>>2]=y;v[g>>2]=2;v[a+32>>2]=0;f=C(3.1415927410125732);h=0;while(1){v[e+24>>2]=0;O=e,P=C(G9(f)*b),z[O+20>>2]=P;O=e,P=C(Q9(f)*b),z[O+16>>2]=P;f=C(f+C(.03141592815518379));i=ZU(g,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;z[e+4>>2]=b;z[e>>2]=D;g=ZU(i,e);z[a+96>>2]=t;z[a+92>>2]=l;z[a+88>>2]=B;z[a+84>>2]=x;z[a+80>>2]=A;z[a+76>>2]=k;z[a+72>>2]=j;z[a+68>>2]=y;z[a+64>>2]=u;z[a+60>>2]=q;z[a+56>>2]=p;z[a+52>>2]=s;z[a+48>>2]=-w;z[a+44>>2]=-o;z[a+40>>2]=-n;z[a+36>>2]=-r;v[g>>2]=2;v[a+32>>2]=0;f=C(0);h=0;while(1){v[e+24>>2]=0;O=e,P=C(G9(f)*b),z[O+20>>2]=P;O=e,P=C(Q9(f)*b),z[O+16>>2]=P;f=C(f+C(.06283185631036758));i=ZU(g,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;z[e+4>>2]=b;v[e>>2]=0;g=ZU(i,e);y=z[d+48>>2];B=z[d+52>>2];l=z[d+56>>2];x=z[d+60>>2];n=z[d>>2];o=z[d+4>>2];j=z[d+8>>2];p=z[d+12>>2];k=z[d+16>>2];r=z[d+20>>2];w=z[d+24>>2];q=z[d+28>>2];A=z[d+32>>2];s=z[d+36>>2];t=z[d+40>>2];D=z[d+44>>2];z[a+80>>2]=D;z[a+76>>2]=t;z[a+72>>2]=s;z[a+68>>2]=A;z[a+64>>2]=q;z[a+60>>2]=w;z[a+56>>2]=r;z[a+52>>2]=k;z[a+48>>2]=p;z[a+44>>2]=j;z[a+40>>2]=o;z[a+36>>2]=n;f=C(0);x=C(x+C(0));z[a+96>>2]=x;l=C(l+C(C(C(j*c)+C(w*C(0)))+C(t*C(0))));z[a+92>>2]=l;B=C(B+C(C(C(o*c)+C(r*C(0)))+C(s*C(0))));z[a+88>>2]=B;u=C(y+C(C(C(n*c)+C(k*C(0)))+C(A*C(0))));z[a+84>>2]=u;v[g>>2]=2;v[a+32>>2]=0;h=0;while(1){v[e+24>>2]=0;O=e,P=C(G9(f)*b),z[O+20>>2]=P;O=e,P=C(Q9(f)*b),z[O+16>>2]=P;f=C(f+C(.03141592815518379));i=ZU(g,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;y=C(-b);z[e+4>>2]=y;F=C(b*C(-8.742277657347586e-8));z[e>>2]=F;g=ZU(i,e);z[a+96>>2]=x;z[a+92>>2]=l;z[a+88>>2]=B;z[a+84>>2]=u;z[a+80>>2]=q;z[a+76>>2]=w;z[a+72>>2]=r;z[a+68>>2]=k;D=C(-D);z[a+64>>2]=D;t=C(-t);z[a+60>>2]=t;s=C(-s);z[a+56>>2]=s;A=C(-A);z[a+52>>2]=A;z[a+48>>2]=p;z[a+44>>2]=j;z[a+40>>2]=o;z[a+36>>2]=n;v[g>>2]=2;v[a+32>>2]=0;f=C(0);h=0;while(1){v[e+24>>2]=0;O=e,P=C(G9(f)*b),z[O+20>>2]=P;O=e,P=C(Q9(f)*b),z[O+16>>2]=P;f=C(f+C(.03141592815518379));i=ZU(g,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;z[e+4>>2]=y;z[e>>2]=F;g=ZU(i,e);z[a+96>>2]=x;z[a+92>>2]=l;z[a+88>>2]=B;z[a+84>>2]=u;z[a+80>>2]=p;z[a+76>>2]=j;z[a+72>>2]=o;z[a+68>>2]=n;z[a+64>>2]=D;z[a+60>>2]=t;z[a+56>>2]=s;z[a+52>>2]=A;z[a+48>>2]=-q;z[a+44>>2]=-w;z[a+40>>2]=-r;z[a+36>>2]=-k;v[g>>2]=2;v[a+32>>2]=0;f=C(0);h=0;while(1){v[e+24>>2]=0;O=e,P=C(G9(f)*b),z[O+20>>2]=P;O=e,P=C(Q9(f)*b),z[O+16>>2]=P;f=C(f+C(.06283185631036758));i=ZU(g,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;v[e>>2]=0;z[e+4>>2]=b;K=ZU(i,e);z[a+36>>2]=z[d>>2];z[a+40>>2]=z[d+4>>2];z[a+44>>2]=z[d+8>>2];z[a+48>>2]=z[d+12>>2];z[a+52>>2]=z[d+16>>2];z[a+56>>2]=z[d+20>>2];z[a+60>>2]=z[d+24>>2];z[a+64>>2]=z[d+28>>2];z[a+68>>2]=z[d+32>>2];z[a+72>>2]=z[d+36>>2];z[a+76>>2]=z[d+40>>2];z[a+80>>2]=z[d+44>>2];z[a+84>>2]=z[d+48>>2];z[a+88>>2]=z[d+52>>2];z[a+92>>2]=z[d+56>>2];z[a+96>>2]=z[d+60>>2];x=z[d+8>>2];j=C(x*c);w=z[d+24>>2];H=C(w*b);A=z[d+40>>2];l=C(A*C(0));f=z[d+56>>2];L=C(C(C(j+H)+l)+f);B=z[d+4>>2];k=C(B*c);p=z[d+20>>2];I=C(p*b);s=z[d+36>>2];u=C(s*C(0));n=z[d+52>>2];M=C(C(C(k+I)+u)+n);D=z[d>>2];r=C(D*c);q=z[d+16>>2];J=C(q*b);t=z[d+32>>2];F=C(t*C(0));o=z[d+48>>2];N=C(C(C(r+J)+F)+o);H=C(C(C(H-j)+l)+f);I=C(C(C(I-k)+u)+n);J=C(C(C(J-r)+F)+o);m=v[K+100>>2];g=v[m+20>>2];h=g+1|0;a=v[m+24>>2]&2147483647;a:{if(h>>>0<=a>>>0){i=m;break a}i=m;E=a?a<<1:2;E=h>>>0>E>>>0?h:E;if(E>>>0<=a>>>0){break a}Ak(m+16|0,E);A=z[d+40>>2];l=C(A*C(0));s=z[d+36>>2];u=C(s*C(0));t=z[d+32>>2];F=C(t*C(0));x=z[d+8>>2];j=C(x*c);B=z[d+4>>2];k=C(B*c);D=z[d>>2];r=C(D*c);i=v[K+100>>2];a=v[i+24>>2]&2147483647;f=z[d+56>>2];n=z[d+52>>2];o=z[d+48>>2];w=z[d+24>>2];p=z[d+20>>2];q=z[d+16>>2];g=v[m+20>>2]}v[m+20>>2]=h;g=v[m+16>>2]+(g<<5)|0;z[g+16>>2]=N;z[g+8>>2]=H;z[g+4>>2]=I;z[g>>2]=J;z[g+24>>2]=L;z[g+20>>2]=M;h=v[K+4>>2];v[g+12>>2]=h;v[g+28>>2]=h;H=C(w*y);L=C(C(C(j+H)+l)+f);I=C(p*y);M=C(C(C(k+I)+u)+n);J=C(q*y);N=C(C(C(r+J)+F)+o);l=C(C(C(H-j)+l)+f);u=C(C(C(I-k)+u)+n);F=C(C(C(J-r)+F)+o);E=v[i+20>>2];m=E+1|0;b:{if(m>>>0<=a>>>0){g=i;break b}g=i;G=a?a<<1:2;G=m>>>0>G>>>0?m:G;if(G>>>0<=a>>>0){break b}Ak(i+16|0,G);x=z[d+8>>2];j=C(x*c);B=z[d+4>>2];k=C(B*c);D=z[d>>2];r=C(D*c);g=v[K+100>>2];a=v[g+24>>2]&2147483647;f=z[d+56>>2];n=z[d+52>>2];o=z[d+48>>2];A=z[d+40>>2];s=z[d+36>>2];t=z[d+32>>2];w=z[d+24>>2];p=z[d+20>>2];q=z[d+16>>2];h=v[K+4>>2];E=v[i+20>>2]}v[i+20>>2]=m;i=v[i+16>>2]+(E<<5)|0;v[i+28>>2]=h;z[i+16>>2]=N;z[i+8>>2]=l;z[i+4>>2]=u;z[i>>2]=F;v[i+12>>2]=h;z[i+24>>2]=L;z[i+20>>2]=M;l=C(w*C(0));u=C(A*b);F=C(C(C(j+l)+u)+f);H=C(p*C(0));L=C(s*b);I=C(C(C(k+H)+L)+n);M=C(q*C(0));b=C(t*b);J=C(C(C(r+M)+b)+o);j=C(C(C(l-j)+u)+f);k=C(C(C(H-k)+L)+n);b=C(C(C(M-r)+b)+o);E=v[g+20>>2];i=E+1|0;c:{if(i>>>0<=a>>>0){m=g;break c}m=g;G=a?a<<1:2;G=i>>>0>G>>>0?i:G;if(G>>>0<=a>>>0){break c}Ak(g+16|0,G);m=v[K+100>>2];a=v[m+24>>2]&2147483647;f=z[d+56>>2];n=z[d+52>>2];o=z[d+48>>2];A=z[d+40>>2];s=z[d+36>>2];t=z[d+32>>2];w=z[d+24>>2];p=z[d+20>>2];q=z[d+16>>2];x=z[d+8>>2];B=z[d+4>>2];D=z[d>>2];h=v[K+4>>2];E=v[g+20>>2]}v[g+20>>2]=i;d=v[g+16>>2]+(E<<5)|0;v[d+28>>2]=h;z[d+16>>2]=J;z[d+8>>2]=j;z[d+4>>2]=k;z[d>>2]=b;v[d+12>>2]=h;z[d+24>>2]=F;z[d+20>>2]=I;i=v[m+20>>2];d=i+1|0;d:{if(d>>>0<=a>>>0){break d}g=a;a=a?a<<1:2;a=a>>>0>>0?d:a;if(g>>>0>=a>>>0){break d}Ak(m+16|0,a);h=v[K+4>>2];i=v[m+20>>2]}v[m+20>>2]=d;a=v[m+16>>2]+(i<<5)|0;v[a+28>>2]=h;v[a+12>>2]=h;b=C(x*c);j=C(w*C(0));k=C(A*y);z[a+24>>2]=C(C(b+j)+k)+f;r=C(B*c);w=C(p*C(0));p=C(s*y);z[a+20>>2]=C(C(r+w)+p)+n;c=C(D*c);q=C(q*C(0));y=C(t*y);z[a+16>>2]=C(C(c+q)+y)+o;z[a+8>>2]=C(C(j-b)+k)+f;z[a+4>>2]=C(C(w-r)+p)+n;z[a>>2]=C(C(q-c)+y)+o;xa=e+32|0}function GY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=0,y=C(0),A=C(0),B=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=0,O=0,P=C(0),Q=0,R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=0,X=0,Y=0,Z=C(0),_=C(0),$=0,aa=0,ba=0;m=xa-720|0;xa=m;x=v[b>>2];L=v[x+4>>2];v[m+672>>2]=x;v[m+668>>2]=L;j=z[x+8>>2];n=z[x+12>>2];z[m+664>>2]=C(1)/z[x+16>>2];z[m+656>>2]=C(1)/n;z[m+660>>2]=C(1)/j;v[m+648>>2]=0;v[m+652>>2]=64;t[m+640|0]=1;x=m+384|0;v[m+644>>2]=x;v[m+376>>2]=142020;v[m+380>>2]=x;j=z[e+24>>2];n=z[c+24>>2];p=z[e+16>>2];o=z[c+16>>2];q=C(z[c+20>>2]-z[e+20>>2]);z[m+364>>2]=q;j=C(n-j);z[m+368>>2]=j;n=C(o-p);z[m+360>>2]=n;p=z[f+20>>2];o=z[d+20>>2];r=z[f+16>>2];s=z[d+16>>2];u=C(z[d+24>>2]-z[f+24>>2]);z[m+352>>2]=u;p=C(o-p);z[m+348>>2]=p;o=C(s-r);z[m+344>>2]=o;r=z[a+68>>2];s=z[a+80>>2];w=z[a+64>>2];y=z[a+76>>2];T=C(j-u);j=C(T*C(.5));u=C(C(C(D(j))+z[a+72>>2])+g);j=C(j+z[a+84>>2]);z[m+340>>2]=u+j;U=C(q-p);p=C(U*C(.5));q=C(C(r+C(D(p)))+g);p=C(p+s);z[m+336>>2]=q+p;V=C(n-o);n=C(V*C(.5));o=C(C(w+C(D(n)))+g);n=C(n+y);z[m+332>>2]=o+n;z[m+328>>2]=j-u;z[m+324>>2]=p-q;z[m+320>>2]=n-o;l$(m+656|0,d,m+320|0,1,m+376|0);v[m+312>>2]=0;v[m+304>>2]=0;v[m+308>>2]=0;x=v[m+648>>2];v[m+80>>2]=0;N=x;x=m+80|0;bz(m+304|0,N,x);v[m+296>>2]=0;v[m+288>>2]=0;v[m+292>>2]=0;L=v[m+648>>2];v[m+80>>2]=0;bz(m+288|0,L,x);W=v[m+304>>2];Q=v[m+288>>2];z[m+272>>2]=z[a+76>>2];z[m+276>>2]=z[a+80>>2];z[m+280>>2]=z[a+84>>2];L=0;X=v[m+648>>2];if(X){aa=v[m+644>>2];ba=b+8|0;E=C(C(z[a+72>>2]+g)*C(1.100000023841858));P=C(C(z[a+68>>2]+g)*C(1.100000023841858));R=C(C(z[a+64>>2]+g)*C(1.100000023841858));while(1){Y=(O<<2)+aa|0;m$(m+656|0,ba,m+80|0,0,0,v[Y>>2],1,1);j=z[m+92>>2];y=z[m+80>>2];n=C(j-y);p=z[m+108>>2];B=z[m+84>>2];u=C(p-B);o=z[m+104>>2];w=C(o-y);q=z[m+96>>2];M=C(q-B);A=C(C(n*u)-C(w*M));s=C(-A);r=z[m+100>>2];I=z[m+88>>2];Z=C(r-I);J=C(Z*w);w=z[m+112>>2];_=C(w-I);H=C(J-C(_*n));n=C(-H);M=C(C(M*_)-C(u*Z));u=C(-M);A=C(K(C(C(A*A)+C(C(M*M)+C(H*H)))));if(A>C(0)){A=C(C(1)/A);s=C(A*s);u=C(A*u);n=C(A*n)}a:{if(!(C(C(T*s)+C(C(V*u)+C(U*n)))>=l)){break a}z[m+8>>2]=E;z[m+4>>2]=P;z[m>>2]=R;n=C(F(I,C(85070586659632215e21)));n=nw?r:w;z[m+224>>2]=C(n+r)*C(.5);s=C(F(B,C(85070586659632215e21)));s=q>s?s:q;s=p>s?s:p;u=C(G(B,C(-85070586659632215e21)));q=q>2]=C(s+p)*C(.5);q=C(F(y,C(85070586659632215e21)));q=j>q?q:j;q=o>q?q:o;u=C(G(y,C(-85070586659632215e21)));j=jo?j:o;z[m+216>>2]=C(q+j)*C(.5);z[m+712>>2]=C(C(C(r-n)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[m+708>>2]=C(C(C(p-s)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[m+704>>2]=C(C(C(j-q)*C(.5))+C(.009999999776482582))*C(1.100000023841858);j=rO(m+272|0,m,m+216|0,m+704|0,m+360|0,m+344|0);if(!(j<=C(1))){break a}S=0;x=L;b:{if(!x){break b}while(1){N=x-1|0;$=N<<2;n=z[Q+$>>2];if(n<=j){S=x;break b}x=x<<2;z[x+Q>>2]=n;v[x+W>>2]=v[W+$>>2];x=N;if(x){continue}break}}x=S<<2;v[x+W>>2]=v[Y>>2];z[x+Q>>2]=j;L=L+1|0}O=O+1|0;if((X|0)!=(O|0)){continue}break}}v[h+8>>2]=0;v[h>>2]=0;v[h+4>>2]=0;v[i+8>>2]=0;v[i>>2]=0;v[i+4>>2]=0;l=z[a+4>>2];p=z[d+8>>2];y=z[d+24>>2];j=C(z[a+32>>2]-y);n=C(j+j);o=z[d>>2];B=z[d+16>>2];j=C(z[a+24>>2]-B);s=C(j+j);I=z[d+20>>2];j=C(z[a+28>>2]-I);u=C(j+j);q=z[d+4>>2];w=C(C(p*n)+C(C(o*s)+C(u*q)));j=z[d+12>>2];r=C(C(j*j)+C(-.5));z[m+264>>2]=C(p*w)+C(C(n*r)-C(j*C(C(o*u)-C(s*q))));z[m+260>>2]=C(q*w)+C(C(u*r)-C(j*C(C(p*s)-C(n*o))));z[m+256>>2]=C(o*w)+C(C(s*r)-C(j*C(C(q*n)-C(u*p))));c:{if(!L){A=C(-q);n=C(34028234663852886e22);O=-1;u=C(0);s=C(0);I=C(0);w=C(0);y=C(0);B=C(0);H=C(-o);l=C(-p);break c}n=C(z[e+24>>2]-y);n=C(n+n);s=C(z[e+16>>2]-B);s=C(s+s);u=C(z[e+20>>2]-I);u=C(u+u);w=C(C(p*n)+C(C(o*s)+C(q*u)));M=C(C(p*w)+C(C(n*r)-C(j*C(C(o*u)-C(s*q)))));T=C(C(q*w)+C(C(u*r)-C(j*C(C(p*s)-C(n*o)))));U=C(C(o*w)+C(C(s*r)-C(j*C(C(q*n)-C(u*p)))));V=C(l*l);O=-1;n=C(34028234663852886e22);x=0;B=C(0);y=C(0);w=C(0);I=C(0);s=C(0);u=C(0);while(1){N=(x<<2)+W|0;m$(m+656|0,f,m+216|0,0,0,v[N>>2],0,0);t[m+112|0]=0;v[m+108>>2]=5;v[m+172>>2]=0;j=z[m+248>>2];z[m+168>>2]=j;p=z[m+244>>2];z[m+164>>2]=p;o=z[m+240>>2];z[m+160>>2]=o;v[m+156>>2]=0;q=z[m+236>>2];z[m+152>>2]=q;r=z[m+232>>2];z[m+148>>2]=r;A=z[m+228>>2];z[m+144>>2]=A;v[m+140>>2]=0;H=z[m+224>>2];z[m+136>>2]=H;E=z[m+220>>2];z[m+132>>2]=E;P=z[m+216>>2];z[m+128>>2]=P;v[m+92>>2]=0;z[m+88>>2]=C(j+C(H+q))*C(.33333298563957214);z[m+84>>2]=C(p+C(E+r))*C(.33333298563957214);z[m+80>>2]=C(o+C(P+A))*C(.33333298563957214);v[m+104>>2]=2139095039;v[m+96>>2]=0;v[m+100>>2]=2139095039;Q=v[b>>2];S=v[a>>2];t[m+72|0]=0;v[m+64>>2]=0;v[m+68>>2]=1065353216;v[m+56>>2]=0;v[m+60>>2]=0;v[m+48>>2]=0;v[m+52>>2]=1065353216;v[m+40>>2]=0;v[m+44>>2]=0;v[m+32>>2]=1065353216;v[m+36>>2]=1065353216;v[m+24>>2]=0;v[m+28>>2]=0;v[m+16>>2]=1065353216;v[m+20>>2]=0;v[m+8>>2]=0;v[m+12>>2]=0;v[m>>2]=1065353216;v[m+4>>2]=0;j=C(Ba[v[(v[S>>2]<<2)+142336>>2]](S,Q,c,d,e,f,g,m+200|0,m+184|0,m,m+80|0,C(0)));d:{if(!(j<=C(0))){break d}H=z[m+240>>2];E=z[m+244>>2];P=z[m+248>>2];j=z[m+216>>2];A=z[m+228>>2];p=z[m+220>>2];r=z[m+232>>2];o=z[m+224>>2];q=C(z[m+236>>2]-o);z[m+8>>2]=o+q;r=C(r-p);z[m+4>>2]=p+r;A=C(A-j);z[m>>2]=j+A;J=o;o=C(P-o);z[m+712>>2]=J+o;J=p;p=C(E-p);z[m+708>>2]=J+p;H=C(H-j);z[m+704>>2]=j+H;D_(m+680|0,m+256|0,m+216|0,m,m+704|0,m+700|0,m+696|0);j=C(0);E=C(z[m+688>>2]-z[m+264>>2]);R=C(E*E);E=C(z[m+680>>2]-z[m+256>>2]);J=C(E*E);E=C(z[m+684>>2]-z[m+260>>2]);E=C(R+C(J+C(E*E)));if(!(E>2])+C(C(p*z[m+216>>2])+C(o*z[m+220>>2]))))>C(0)?R:J}if(j>2];p=C(z[m+228>>2]-n);o=z[m+220>>2];q=C(z[m+244>>2]-o);n=C(z[m+240>>2]-n);o=C(z[m+232>>2]-o);B=C(C(p*q)-C(n*o));J=o;o=z[m+224>>2];r=C(z[m+248>>2]-o);o=C(z[m+236>>2]-o);w=C(C(J*r)-C(q*o));y=C(C(o*n)-C(r*p));n=C(K(C(C(B*B)+C(C(w*w)+C(y*y)))));if(n>C(0)){n=C(C(1)/n);B=C(B*n);y=C(y*n);w=C(w*n)}O=v[N>>2];I=z[m+192>>2];s=z[m+188>>2];u=z[m+184>>2];n=j}x=x+1|0;if((L|0)!=(x|0)){continue}break}j=z[d+12>>2];r=C(C(j*j)+C(-.5));q=z[d+4>>2];A=C(-q);o=z[d>>2];H=C(-o);p=z[d+8>>2];l=C(-p)}g=C(B+B);w=C(w+w);y=C(y+y);B=C(C(p*g)+C(C(o*w)+C(y*q)));z[h+8>>2]=C(p*B)+C(C(g*r)+C(j*C(C(o*y)+C(w*A))));z[h+4>>2]=C(q*B)+C(C(y*r)+C(j*C(C(p*w)+C(g*H))));z[h>>2]=C(o*B)+C(C(w*r)+C(j*C(C(q*g)+C(y*l))));z[i+8>>2]=I;z[i+4>>2]=s;z[i>>2]=u;v[k>>2]=O;a=v[m+296>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[m+288>>2];if(!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[m+312>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[m+304>>2];if(!a){break f}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[m+652>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=v[m+644>>2];if((a|0)==(m+384|0)|!a){break g}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=m+720|0;return C(n)}function n2(a,b,c,d,e,f,g,h,i){var j=C(0),k=0,l=0,m=C(0),n=0,o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=C(0),la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0;k=xa-96|0;xa=k;_=v[g>>2];p2(k+48|0,i);E=x[d+16>>1];l=v[c+32>>2];S=w[d+18|0];n=(S<<4)+16|0;X=k-n|0;xa=X;ja=X-n|0;xa=ja;ma=ja-(S+15&496)|0;xa=ma;n=v[a+60>>2];v[k+8>>2]=v[a+56>>2];v[k+12>>2]=n;n=v[a+52>>2];v[k>>2]=v[a+48>>2];v[k+4>>2]=n;n=v[a+76>>2];v[k+24>>2]=v[a+72>>2];v[k+28>>2]=n;p=a- -64|0;n=v[p+4>>2];v[k+16>>2]=v[p>>2];v[k+20>>2]=n;n=v[a+92>>2];v[k+40>>2]=v[a+88>>2];v[k+44>>2]=n;n=v[a+84>>2];v[k+32>>2]=v[a+80>>2];v[k+36>>2]=n;na=l+E|0;Ba[v[v[e>>2]+16>>2]](e,na,S,v[c+28>>2],X);u=z[k+84>>2];N=z[k+24>>2];T=z[k+52>>2];r=z[k+16>>2];H=z[k+20>>2];s=z[k+68>>2];Q=C(C(u*N)+C(C(T*r)+C(H*s)));z[k+20>>2]=Q;y=z[k+88>>2];A=z[k+56>>2];q=z[k+72>>2];z[k+24>>2]=C(N*y)+C(C(r*A)+C(H*q));v[k+12>>2]=0;o=z[k+8>>2];m=z[k>>2];j=z[k+4>>2];R=C(C(y*o)+C(C(A*m)+C(q*j)));z[k+8>>2]=R;Y=C(C(u*o)+C(C(T*m)+C(j*s)));z[k+4>>2]=Y;da=o;o=z[k+80>>2];ea=m;m=z[k+48>>2];Z=j;j=z[k+64>>2];$=C(C(da*o)+C(C(ea*m)+C(Z*j)));z[k>>2]=$;v[k+28>>2]=0;U=C(C(o*N)+C(C(m*r)+C(H*j)));z[k+16>>2]=U;N=z[k+40>>2];r=z[k+36>>2];H=z[k+32>>2];v[k+44>>2]=0;z[k+40>>2]=C(y*N)+C(C(A*H)+C(r*q));y=C(C(u*N)+C(C(T*H)+C(r*s)));z[k+36>>2]=y;A=C(C(o*N)+C(C(m*H)+C(r*j)));z[k+32>>2]=A;a:{if(!w[d+18|0]){break a}da=C(-34028234663852886e22);j=C(G(Y,C(-34028234663852886e22)));j=j>Q?j:Q;fa=C((j>y?j:y)+C(1.1920928955078125e-7));j=C(G($,C(-34028234663852886e22)));j=j>U?j:U;ka=C((j>A?j:A)+C(1.1920928955078125e-7));ea=C(34028234663852886e22);j=C(F(Y,C(34028234663852886e22)));j=j>2]);M=C(y-Q);aa=C(C(U+C(1.1920928955078125e-7))*M);O=C(Q-Y);ba=C(C($+C(1.1920928955078125e-7))*O);P=C(Y-y);ca=C(C(A+C(1.1920928955078125e-7))*P);J=C(A-U);u=C(U-$);N=C($-A);pa=_+5|0;qa=(_<<6)+f|0;n=0;Z=C(34028234663852886e22);L=C(-34028234663852886e22);while(1){p=n<<4;l=p+X|0;T=z[l+12>>2];r=z[k+80>>2];H=z[k+48>>2];s=z[k+64>>2];q=z[k+84>>2];o=z[k+52>>2];m=z[k+68>>2];ga=z[l+8>>2];ha=z[l>>2];ia=z[l+4>>2];j=C(C(z[k+88>>2]*ga)+C(C(z[k+56>>2]*ha)+C(ia*z[k+72>>2])));z[p+ja>>2]=j-R;v[l+12>>2]=0;z[l+8>>2]=R;I=C(C(q*ga)+C(C(o*ha)+C(ia*m)));z[l+4>>2]=I;r=C(C(r*ga)+C(C(H*ha)+C(ia*s)));z[l>>2]=r;ra=Iea;ua=r>Z;la=jka)|I>fa){break b}c:{if(r==A&y==I|r==$&I==Y){break c}S=y>I;l=IC(0);E=0;if(!((p?m:j)>=(p?j:m))){break d}E=1}p=E;if(r==U&I==Q){break c}E=IC(0);if(!((l?m:j)>=(l?j:m))){break e}if(p){break b}p=p+1|0}f:{if((E|0)==(S|0)){break f}m=C(aa+C(C(I-Q)*J));j=C(r*M);l=M>C(0);if(!((l?m:j)>=(l?j:m))){break f}if((p|0)!=1){break c}break b}if(!p){break b}}o=z[a+56>>2];m=z[a+48>>2];j=z[a+52>>2];H=z[i+4>>2];s=z[i+8>>2];q=z[i>>2];p=v[g>>2];l=(p<<6)+f|0;v[l+48>>2]=b;z[l+32>>2]=q;z[l+12>>2]=T;z[l+8>>2]=ga;z[l+4>>2]=ia;z[l>>2]=ha;z[l+40>>2]=s;z[l+36>>2]=H;v[l+28>>2]=0;j=C(C(s*C(o-ga))+C(C(q*C(m-ha))+C(H*C(j-ia))));z[l+44>>2]=-j;z[l+24>>2]=ga+C(s*j);z[l+20>>2]=ia+C(H*j);z[l+16>>2]=ha+C(q*j);p=p+1|0;v[g>>2]=p;oa=oa+1|0;p=p-_|0;if(p>>>0<16){break b}z2(qa,p);v[g>>2]=pa}da=ra?da:I;L=sa?L:r;ea=ta?ea:I;Z=ua?Z:r;t[n+ma|0]=la;n=n+1|0;p=w[d+18|0];if(n>>>0

>>0){continue}break}if((p|0)==(oa|0)){break a}N=C(da+C(1.1920928955078125e-7));T=C(L+C(1.1920928955078125e-7));r=C(ea+C(-1.1920928955078125e-7));H=C(Z+C(-1.1920928955078125e-7));a=v[e+40>>2];q=z[d+8>>2];o=z[d>>2];m=z[d+4>>2];j=C(C(z[a+40>>2]*q)+C(C(z[a+32>>2]*o)+C(m*z[a+36>>2])));u=C(C(z[a+8>>2]*q)+C(C(z[a>>2]*o)+C(m*z[a+4>>2])));s=C(C(z[a+24>>2]*q)+C(C(z[a+16>>2]*o)+C(m*z[a+20>>2])));q=C(C(1)/C(K(C(C(j*j)+C(C(u*u)+C(s*s))))));aa=C(j*q);e=v[e+36>>2];a=v[c+28>>2]+B(w[na|0],12)|0;o=z[a+8>>2];m=z[a>>2];j=z[a+4>>2];ba=C(u*q);ca=C(s*q);s=C(C(aa*C(C(z[e+40>>2]*o)+C(C(z[e+8>>2]*m)+C(j*z[e+24>>2]))))+C(C(ba*C(C(z[e+32>>2]*o)+C(C(z[e>>2]*m)+C(j*z[e+16>>2]))))+C(ca*C(C(z[e+36>>2]*o)+C(C(z[e+4>>2]*m)+C(j*z[e+20>>2]))))));la=_+5|0;S=(_<<6)+f|0;c=0;e=0;while(1){E=(e<<4)+k|0;J=z[E>>2];g:{if(JT){break g}D=z[E+4>>2];if(DN){break g}l=w[d+18|0];if(!l){break g}a=((l<<4)+X|0)-16|0;o=z[a>>2];q=z[a+4>>2];p=0;a=0;h:{while(1){if(o==J&q==D){break h}j=o;m=q;n=(p<<4)+X|0;o=z[n>>2];q=z[n+4>>2];if(J==o&D==q){break h}i:{if((m>D|0)==(q>D|0)){break i}u=C(q-m);m=C(C(C(j+C(1.1920928955078125e-7))*u)+C(C(D-m)*C(o-j)));j=C(J*u);n=u>C(0);if(!((n?m:j)>=(n?j:m))){break i}if((a|0)==1){break g}a=a+1|0}p=p+1|0;if((l|0)!=(p|0)){continue}break}if(!a){break g}}c=c+1|0;j=z[E+8>>2];V=C(C(z[k+88>>2]*j)+C(C(z[k+80>>2]*J)+C(D*z[k+84>>2])));W=C(C(z[k+56>>2]*j)+C(C(z[k+48>>2]*J)+C(D*z[k+52>>2])));D=C(C(z[k+72>>2]*j)+C(C(z[k+64>>2]*J)+C(D*z[k+68>>2])));j=C(C(C(aa*V)+C(C(ba*W)+C(ca*D)))-s);if(j>z[h>>2]){break g}J=z[i+4>>2];u=z[i+8>>2];q=z[i>>2];a=v[g>>2];n=(a<<6)+f|0;v[n+48>>2]=b;z[n+32>>2]=q;z[n+16>>2]=W;v[n+12>>2]=0;o=C(V-C(aa*j));z[n+8>>2]=o;m=C(D-C(ca*j));z[n+4>>2]=m;j=C(W-C(ba*j));z[n>>2]=j;z[n+40>>2]=u;z[n+36>>2]=J;v[n+28>>2]=0;z[n+24>>2]=V;z[n+20>>2]=D;z[n+44>>2]=C(u*C(o-V))+C(C(q*C(j-W))+C(J*C(m-D)));a=a+1|0;v[g>>2]=a;a=a-_|0;if(a>>>0<16){break g}z2(S,a);v[g>>2]=la}e=e+1|0;if((e|0)!=3){continue}break}if((c|0)==3){break a}a=w[d+18|0];e=0;while(1){c=(e<<4)+k|0;m=z[c+4>>2];j=z[c>>2];c=a;a=0;if(c){aa=m>y?m:y;ba=j>A?j:A;ca=m>2];c=n<<4;a=c+X|0;O=z[a>>2];if(ba<(L(L>O?L:O)){break j}M=z[l+4>>2];P=z[a+4>>2];if(aa<(M(M>P?M:P)){break j}s=C(C(C(j-L)*C(y-M))-C(C(A-L)*C(m-M)));q=C(C(C(j-O)*C(y-P))-C(C(A-O)*C(m-P)));if(!(C(s*q)>2]);ka=C(s*C(C(1)/C(q-s)));fa=C(o-C(ka*C(C(R+z[c+ja>>2])-o)));u=C(fa-R);if(u>z[h>>2]){break j}s=z[i+8>>2];n=v[i+4>>2];c=v[i>>2];V=z[k+56>>2];N=z[k+48>>2];T=z[k+52>>2];W=z[k+88>>2];r=z[k+80>>2];H=z[k+84>>2];D=z[k+72>>2];q=z[k+64>>2];o=z[k+68>>2];a=v[g>>2];l=(a<<6)+f|0;v[l+12>>2]=0;v[l+48>>2]=b;v[l+32>>2]=c;v[l+36>>2]=n;v[l+28>>2]=0;z[l+44>>2]=u;z[l+40>>2]=s;u=C(L-C(C(O-L)*ka));Z=o;o=C(M-C(C(P-M)*ka));s=C(C(q*u)+C(Z*o));z[l+4>>2]=C(D*fa)+s;q=C(C(r*u)+C(o*H));z[l+8>>2]=C(W*fa)+q;o=C(C(N*u)+C(o*T));z[l+16>>2]=C(V*R)+o;z[l+20>>2]=C(D*R)+s;z[l+24>>2]=C(W*R)+q;z[l>>2]=C(V*fa)+o;a=a+1|0;v[g>>2]=a;a=a-_|0;if(a>>>0<16){break j}z2(S,a);v[g>>2]=la}a=w[d+18|0];n=p;p=n+1|0;if(a>>>0>p>>>0){continue}break}}y=m;A=j;e=e+1|0;if((e|0)!=3){continue}break}}xa=k+96|0}function HA(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,u=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0;g=xa-1072|0;xa=g;c=g+1052|0;v[c>>2]=-128;v[c+4>>2]=-128;c=g;v[c+1020>>2]=-128;v[c+1024>>2]=-128;v[c+988>>2]=-128;v[c+992>>2]=-128;v[c+956>>2]=-128;v[c+960>>2]=-128;v[c+924>>2]=-128;v[c+928>>2]=-128;v[c+892>>2]=-128;v[c+896>>2]=-128;v[c+860>>2]=-128;v[c+864>>2]=-128;v[c+828>>2]=-128;v[c+832>>2]=-128;v[c+796>>2]=-128;v[c+800>>2]=-128;v[c+764>>2]=-128;v[c+768>>2]=-128;v[c+732>>2]=-128;v[c+736>>2]=-128;v[c+700>>2]=-128;v[c+704>>2]=-128;v[c+668>>2]=-128;v[c+672>>2]=-128;v[c+636>>2]=-128;v[c+640>>2]=-128;v[c+604>>2]=-128;v[c+608>>2]=-128;v[c+572>>2]=-128;v[c+576>>2]=-128;v[c+540>>2]=-128;v[c+544>>2]=-128;v[c+508>>2]=-128;v[c+512>>2]=-128;v[c+476>>2]=-128;v[c+480>>2]=-128;v[c+444>>2]=-128;v[c+448>>2]=-128;v[c+412>>2]=-128;v[c+416>>2]=-128;v[c+380>>2]=-128;v[c+384>>2]=-128;v[c+348>>2]=-128;v[c+352>>2]=-128;v[c+316>>2]=-128;v[c+320>>2]=-128;v[c+284>>2]=-128;v[c+288>>2]=-128;v[c+252>>2]=-128;v[c+256>>2]=-128;v[c+220>>2]=-128;v[c+224>>2]=-128;v[c+188>>2]=-128;v[c+192>>2]=-128;v[c+156>>2]=-128;v[c+160>>2]=-128;v[c+124>>2]=-128;v[c+128>>2]=-128;v[c+92>>2]=-128;v[c+96>>2]=-128;v[c+60>>2]=-128;v[c+64>>2]=-128;v[c+24>>2]=v[b+12>>2];v[c+16>>2]=0;v[c+20>>2]=32;t[c+9|0]=0;v[c+12>>2]=c+48;v[c+40>>2]=v[b+148>>2];v[c+44>>2]=v[b+152>>2];k=v[b+24>>2];j=v[b>>2];q=v[b+4>>2];r=v[b+52>>2];n=v[b+16>>2];u=v[b+8>>2];h=v[b+28>>2];s=v[b+40>>2];a:{if(!s){if(n){while(1){c=d<<5;a=c+r|0;c=c+u|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[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=v[B(e,52)+k>>2];Ba[v[v[a>>2]+136>>2]](a,z[b+100>>2],z[b+104>>2],v[g+40>>2],v[g+44>>2],0,0,C(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=B(e,52)+k|0;d=v[(v[v[c>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](c,v[g+44>>2])}c=B(e|1,52)+k|0;d=v[(v[v[c>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](c,v[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=B(e,52)+k|0;d=v[(v[v[c>>2]+24>>2]<<2)+149608>>2];if(!d){break b}Ba[d|0](c,v[g+44>>2])}if(q){if(a){break a}d=0;while(1){e=0;while(1){c=v[B(e,52)+k>>2];Ba[v[v[c>>2]+136>>2]](c,z[b+100>>2],z[b+104>>2],v[g+40>>2],v[g+44>>2],1,0,C(0));e=e+1|0;if((h|0)!=(e|0)){continue}break}d=d+1|0;if((q|0)!=(d|0)){continue}break}}if(a){break a}e=0;if((h|0)!=1){a=h&-2;f=0;while(1){b=v[B(e,52)+k>>2];Ba[v[v[b>>2]+140>>2]](b,0);b=v[B(e|1,52)+k>>2];Ba[v[v[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=v[B(e,52)+k>>2];Ba[v[v[a>>2]+140>>2]](a,0);break a}E=v[b+32>>2];F=v[b+36>>2];if(j){while(1){t[g+8|0]=w[a+4|0]!=0|j>>>0<4;if((s|0)>0){A=(j|0)==1?129216:129120;l=0;while(1){o=0;i=0;f=0;p=(l<<3)+F|0;G=(v[p>>2]<<5)+E|0;e=v[G+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;D=f-c|0;f=m;c=D+1|0;f=c?f:f+1|0;d=c;c=0;I=c;H=d&7;if(c|H){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((H|0)!=(o|0)|(I|0)!=(c|0)){continue}break}}c=x[p+4>>1];if(!m&D>>>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}}Ba[v[(x[p+6>>1]<<2)+A>>2]](G,c,g+8|0);l=l+1|0;if((s|0)!=(l|0)){continue}break}}e=0;if(h){while(1){c=v[B(e,52)+k>>2];Ba[v[v[c>>2]+136>>2]](c,z[b+100>>2],z[b+104>>2],v[g+40>>2],v[g+44>>2],0,0,C(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+u|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[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=B(e,52)+k|0;d=v[(v[v[c>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](c,v[g+44>>2])}c=B(e|1,52)+k|0;d=v[(v[v[c>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](c,v[g+44>>2])}e=e+2|0;f=f+2|0;if((a|0)!=(f|0)){continue}break}}if(!(h&1)){break d}a=B(e,52)+k|0;c=v[(v[v[a>>2]+24>>2]<<2)+149608>>2];if(!c){break d}Ba[c|0](a,v[g+44>>2])}j=0;if((q|0)>=2){j=q-1|0;u=(s|0)<=0;m=0;while(1){l=0;if(!u){while(1){o=0;i=0;f=0;n=(l<<3)+F|0;p=(v[n>>2]<<5)+E|0;e=v[p+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;r=d-c|0;c=r+1|0;f=c?a:a+1|0;d=c;c=0;D=c;A=d&7;if(c|A){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((A|0)!=(o|0)|(D|0)!=(c|0)){continue}break}}c=x[n+4>>1];if(!a&r>>>0>=7|a){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){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 e}while(1){e=e+1|0;f=f+1|0;if((a|0)!=(f|0)){continue}break}}Ba[v[(x[n+6>>1]<<2)+129120>>2]](p,c,g+8|0);l=l+1|0;if((s|0)!=(l|0)){continue}break}}e=0;if(h){while(1){a=v[B(e,52)+k>>2];Ba[v[v[a>>2]+136>>2]](a,z[b+100>>2],z[b+104>>2],v[g+40>>2],v[g+44>>2],1,0,C(0));e=e+1|0;if((h|0)!=(e|0)){continue}break}}m=m+1|0;if((m|0)!=(j|0)){continue}break}}m=v[b+132>>2];a=v[b+136>>2];n=v[b+140>>2];v[g+36>>2]=n;v[g+32>>2]=a;v[g+28>>2]=m;t[g+9|0]=1;f:{if((j|0)>=(q|0)){break f}if((s|0)>0){l=0;while(1){o=0;i=0;f=0;j=(l<<3)+F|0;r=(v[j>>2]<<5)+E|0;e=v[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;q=d-c|0;c=q+1|0;f=c?a:a+1|0;d=c;c=0;u=c;p=d&7;if(c|p){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((p|0)!=(o|0)|(u|0)!=(c|0)){continue}break}}c=x[j+4>>1];if(!a&q>>>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}}Ba[v[(x[j+6>>1]<<2)+129168>>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=B(e,52)+k|0;c=v[a>>2];Ba[v[v[c>>2]+136>>2]](c,z[b+100>>2],z[b+104>>2],v[g+40>>2],v[g+44>>2],1,0,C(0));a=v[a>>2];Ba[v[v[a>>2]+140>>2]](a,0);e=e+1|0;if((h|0)!=(e|0)){continue}break}}a=v[g+16>>2];if(!a){break a}a=a+v[n>>2]|0;v[n>>2]=a;b=v[g+16>>2];if(!b){break a}c=a-b|0;e=0;while(1){a=v[g+12>>2]+(e<<5)|0;d=v[a+4>>2];b=m+(c+e<<5)|0;v[b>>2]=v[a>>2];v[b+4>>2]=d;d=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=d;d=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=d;d=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=d;e=e+1|0;if(e>>>0>2]){continue}break}}xa=g+1072|0}function N3(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=0,A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0);i=v[a+12>>2];j=v[b+8>>2];f=B(j,12)+12|0;if(f){g=v[37696];g=Ba[v[v[g+12>>2]+8>>2]](g+12|0,f,24422,19733,148)|0;f=v[a+12>>2]}else{f=i}v[i+12>>2]=j;v[i+16>>2]=g;j=w[c+14|0];k=v[b+20>>2];i=B(k,12);a:{b:{if(!i){v[f+72>>2]=0;i=0;if(j){break b}break a}h=v[37696];h=Ba[v[v[h+12>>2]+8>>2]](h+12|0,i,24422,19733,228)|0;v[f+72>>2]=h;if(!j){break a}h=v[37696];l=Ba[v[v[h+12>>2]+8>>2]](h+12|0,i,24422,19733,230)|0;i=v[f+72>>2]}h=i;v[f+56>>2]=l}v[f+68>>2]=k;j=v[a+12>>2];l=v[j+12>>2];if(l){i=v[b>>2];F=l-1|0;f=v[b+4>>2];s=l&3;if(s){j=0;while(1){k=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);n=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[g|0]=n;t[g+1|0]=n>>>8;t[g+2|0]=n>>>16;t[g+3|0]=n>>>24;t[g+4|0]=k;t[g+5|0]=k>>>8;t[g+6|0]=k>>>16;t[g+7|0]=k>>>24;k=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[g+8|0]=k;t[g+9|0]=k>>>8;t[g+10|0]=k>>>16;t[g+11|0]=k>>>24;f=f+i|0;g=g+12|0;l=l-1|0;j=j+1|0;if((s|0)!=(j|0)){continue}break}}if(F>>>0>=3){while(1){j=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);k=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[g|0]=k;t[g+1|0]=k>>>8;t[g+2|0]=k>>>16;t[g+3|0]=k>>>24;t[g+4|0]=j;t[g+5|0]=j>>>8;t[g+6|0]=j>>>16;t[g+7|0]=j>>>24;j=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[g+8|0]=j;t[g+9|0]=j>>>8;t[g+10|0]=j>>>16;t[g+11|0]=j>>>24;f=f+i|0;j=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[g+20|0]=j;t[g+21|0]=j>>>8;t[g+22|0]=j>>>16;t[g+23|0]=j>>>24;j=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);k=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[g+12|0]=k;t[g+13|0]=k>>>8;t[g+14|0]=k>>>16;t[g+15|0]=k>>>24;t[g+16|0]=j;t[g+17|0]=j>>>8;t[g+18|0]=j>>>16;t[g+19|0]=j>>>24;f=f+i|0;j=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[g+32|0]=j;t[g+33|0]=j>>>8;t[g+34|0]=j>>>16;t[g+35|0]=j>>>24;j=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);k=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[g+24|0]=k;t[g+25|0]=k>>>8;t[g+26|0]=k>>>16;t[g+27|0]=k>>>24;t[g+28|0]=j;t[g+29|0]=j>>>8;t[g+30|0]=j>>>16;t[g+31|0]=j>>>24;f=f+i|0;j=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);k=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[g+36|0]=k;t[g+37|0]=k>>>8;t[g+38|0]=k>>>16;t[g+39|0]=k>>>24;t[g+40|0]=j;t[g+41|0]=j>>>8;t[g+42|0]=j>>>16;t[g+43|0]=j>>>24;j=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[g+44|0]=j;t[g+45|0]=j>>>8;t[g+46|0]=j>>>16;t[g+47|0]=j>>>24;g=g+48|0;f=f+i|0;l=l-4|0;if(l){continue}break}}j=v[a+12>>2]}k=x[b+24>>1];f=k&1;i=v[j+68>>2];l=B(i,12)+h|0;g=v[b+16>>2];c:{if(k&2){if((i|0)<=0){break c}i=(f?2:1)<<1;f=(f?1:2)<<1;while(1){v[h>>2]=x[g>>1];v[h+4>>2]=x[g+i>>1];v[h+8>>2]=x[f+g>>1];g=v[b+12>>2]+g|0;h=h+12|0;if(l>>>0>h>>>0){continue}break}break c}if((i|0)<=0){break c}i=(f?2:1)<<2;f=(f?1:2)<<2;while(1){v[h>>2]=v[g>>2];v[h+4>>2]=v[g+i>>2];v[h+8>>2]=v[f+g>>2];g=v[b+12>>2]+g|0;h=h+12|0;if(l>>>0>h>>>0){continue}break}}h=v[b+32>>2];d:{if(!h){break d}i=v[j+68>>2];f=i+i|0;f=f>>>0>>0?-1:f;e:{if(!f){g=0;break e}h=v[37696];i=Ba[v[v[h>>2]+20>>2]](h)|0?27439:63804;g=Ba[v[v[h+12>>2]+8>>2]](h+12|0,f,i,19733,239)|0;h=v[b+32>>2];i=v[v[a+12>>2]+68>>2]}v[j+80>>2]=g;if(!i){break d}b=v[b+28>>2];f=i-1|0;j=i&3;if(j){l=0;while(1){k=w[h|0]|w[h+1|0]<<8;t[g|0]=k;t[g+1|0]=k>>>8;h=b+h|0;g=g+2|0;i=i-1|0;l=l+1|0;if((j|0)!=(l|0)){continue}break}}if(f>>>0<3){break d}while(1){f=w[h|0]|w[h+1|0]<<8;t[g|0]=f;t[g+1|0]=f>>>8;h=b+h|0;f=w[h|0]|w[h+1|0]<<8;t[g+2|0]=f;t[g+3|0]=f>>>8;h=b+h|0;f=w[h|0]|w[h+1|0]<<8;t[g+4|0]=f;t[g+5|0]=f>>>8;h=b+h|0;f=w[h|0]|w[h+1|0]<<8;t[g+6|0]=f;t[g+7|0]=f>>>8;g=g+8|0;h=b+h|0;i=i-4|0;if(i){continue}break}}f:{if(!(e?0:w[c+24|0]&2)){c=0;b=0;j=xa-32|0;xa=j;h=a;a=v[h+8>>2];g:{if(!(t[a+24|0]&1)){break g}p=z[a+28>>2];if(p!=C(0)){break g}a9(v[37696],2,9248,140,73556,0);p=C(0)}a=v[h+12>>2];g=i3(j+8|0,v[a+12>>2],v[a+16>>2],v[a+68>>2],v[a+72>>2],p);l=v[g+4>>2];h:{if(!l){break h}if(e){a=v[h+12>>2];if(v[g>>2]!=v[a+12>>2]|(l|0)!=v[a+68>>2]){break h}}c=v[g+16>>2];i:{if(!c){break i}a=v[h+12>>2];i=v[a+80>>2];if(i){a=0;f=l+l|0;f=f>>>0>>0?-1:f;if(f){b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?27439:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,f,c,9248,171)|0;i=v[v[h+12>>2]+80>>2];c=v[g+16>>2]}if(l-1>>>0>=3){k=l&-4;f=0;while(1){u[(a<<1)+b>>1]=x[(v[(a<<2)+c>>2]<<1)+i>>1];n=a|1;u[(n<<1)+b>>1]=x[(v[(n<<2)+c>>2]<<1)+i>>1];n=a|2;u[(n<<1)+b>>1]=x[(v[(n<<2)+c>>2]<<1)+i>>1];n=a|3;u[(n<<1)+b>>1]=x[(v[(n<<2)+c>>2]<<1)+i>>1];a=a+4|0;f=f+4|0;if((k|0)!=(f|0)){continue}break}}k=l&3;if(k){f=0;while(1){u[(a<<1)+b>>1]=x[(v[(a<<2)+c>>2]<<1)+i>>1];a=a+1|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,i);a=v[h+12>>2];v[a+80>>2]=b}b=v[h+8>>2];if(w[b+14|0]?0:w[b+12|0]){break i}b=l<<2;c=(l|0)!=(l&1073741823)?-1:b;j:{if(!c){c=0;break j}a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,f,9248,181)|0;a=v[h+12>>2]}v[a+48>>2]=c;H9(c,v[g+16>>2],b)}b=v[g>>2];a=v[h+12>>2];i=v[a+12>>2];k:{if((b|0)==(i|0)){c=a;break k}i=0;c=v[a+16>>2];if(c){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,c);b=v[g>>2];a=v[h+12>>2]}v[a+16>>2]=0;c=a;f=B(b,12)+12|0;if(f){c=v[37696];i=Ba[v[v[c+12>>2]+8>>2]](c+12|0,f,24422,19733,148)|0;c=v[h+12>>2]}v[a+12>>2]=b;v[a+16>>2]=i;i=v[c+12>>2]}H9(v[c+16>>2],v[g+8>>2],B(i,12));a=v[h+12>>2];c=v[a+68>>2];i=v[g+4>>2];l:{if((c|0)==(i|0)){b=a;break l}c=0;b=v[a+72>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);i=v[g+4>>2];a=v[h+12>>2]}v[a+72>>2]=0;b=a;f=B(i,12);if(f){b=v[37696];c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,f,24422,19733,228)|0;b=v[h+12>>2]}v[a+68>>2]=i;v[a+72>>2]=c;c=v[b+68>>2]}if(c){p=z[v[h+8>>2]+16>>2];p=C(p*C(p*C(25e4)));c=v[b+16>>2];n=v[b+72>>2];F=v[g+12>>2];a=0;i=0;while(1){m:{k=B(a,12);h=k+F|0;f=v[h>>2];l=v[h+4>>2];k=k+n|0;s=v[h+8>>2];v[k+8>>2]=s;v[k+4>>2]=l;v[k>>2]=f;n:{h=c+B(f,12)|0;o=z[h+8>>2];f=c+B(l,12)|0;q=z[f+8>>2];A=C(o-q);G=C(A*A);A=z[h>>2];r=z[f>>2];D=C(A-r);H=C(D*D);D=z[h+4>>2];E=z[f+4>>2];m=C(D-E);if(C(G+C(H+C(m*m)))>=p){break n}m=q;h=c+B(s,12)|0;q=z[h+8>>2];m=C(m-q);G=C(m*m);m=r;r=z[h>>2];m=C(m-r);H=C(m*m);m=E;E=z[h+4>>2];m=C(m-E);if(C(G+C(H+C(m*m)))>=p){break n}o=C(q-o);q=C(o*o);o=C(r-A);r=C(o*o);o=C(E-D);if(C(q+C(r+C(o*o)))>=p){break n}a=a+1|0;if(a>>>0>2]){continue}c=1;if(i){break m}break h}i=1;a=a+1|0;if(a>>>0>2]){continue}}break}if(d){v[d>>2]=1}a9(v[37696],2,9248,230,72020,0)}c=1}j3(g);xa=j+32|0;h=c;if(e|h){break f}a9(v[37696],32,9248,1043,23915,0);return 0}h=1;if(w[c+12|0]){break f}g=0;f=0;i=v[a+12>>2];l=v[i+68>>2];c=(l&1073741823)!=(l|0)?-1:l<<2;if(c){b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,1053)|0;i=v[a+12>>2];l=v[i+68>>2]}v[i+48>>2]=f;if(!l){break f}while(1){v[(g<<2)+f>>2]=g;g=g+1|0;if(g>>>0>2]){continue}break}}return h}function yx(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=0,da=0,ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=C(0),la=C(0),ma=C(0),na=C(0),oa=0,pa=C(0),qa=0,ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=0,Ha=0,Ia=0;n=xa-224|0;xa=n;s=v[b+456>>2];O=v[b+452>>2];r=v[b+444>>2];v[n+216>>2]=0;v[n+220>>2]=0;v[n+208>>2]=0;v[n+212>>2]=0;v[n+200>>2]=0;v[n+204>>2]=0;v[n+192>>2]=0;v[n+196>>2]=0;ba=j<<5;S=ba+r|0;r=v[b+228>>2]+(v[S+24>>2]<<5)|0;o=z[r+16>>2];p=z[r+8>>2];q=z[r+4>>2];I=z[r>>2];P=z[r+24>>2];Q=z[r+20>>2];G=z[k+24>>2];T=z[k+20>>2];ha=z[k+16>>2];R=z[k+8>>2];J=z[k+4>>2];U=z[k>>2];qa=(O+B(j,160)|0)+120|0;_w(n+160|0,qa,v[b+348>>2]+B(j,112)|0,v[b+360>>2]+B(j,36)|0,v[b+384>>2]+B(j,76)|0,ba+v[b+264>>2]|0,k);k=ba+v[b+228>>2]|0;x=z[k>>2];y=z[k+4>>2];A=z[k+8>>2];D=z[k+16>>2];K=z[k+20>>2];M=z[n+184>>2];V=C(z[k+24>>2]+M);z[n+152>>2]=V;t=K;K=z[n+180>>2];W=C(t+K);z[n+148>>2]=W;v[n+156>>2]=0;X=z[n+176>>2];Y=C(D+X);z[n+144>>2]=Y;v[n+140>>2]=0;Z=z[n+168>>2];A=C(A+Z);z[n+136>>2]=A;_=z[n+164>>2];y=C(y+_);z[n+132>>2]=y;N=z[n+160>>2];D=C(x+N);z[n+128>>2]=D;z[n+120>>2]=M;z[n+116>>2]=K;z[n+104>>2]=Z;z[n+100>>2]=_;z[n+96>>2]=N;z[n+112>>2]=X;z[n+108>>2]=z[n+172>>2];z[n+124>>2]=z[n+188>>2];k=s+B(j,80)|0;ca=w[k+78|0];da=w[k+79|0];if(ca|da){x=z[v[S+20>>2]+264>>2];I=C(U+I);J=C(J+q);R=C(R+p);U=z[n+208>>2];E=z[n+200>>2];F=z[n+196>>2];O=w[k+76|0];if(O){ja=v[b+180>>2]+(v[k+72>>2]<<2)|0;P=C(G+P);Q=C(T+Q);G=C(ha+o);oa=v[b+288>>2];q=C(-x);s=0;T=z[n+216>>2];ha=z[n+212>>2];pa=z[n+192>>2];while(1){a:{if(!(ca>>>s&1)){break a}k=v[l>>2];v[l>>2]=k+1;k=oa+B(k,176)|0;p=z[k+132>>2];o=z[ja+(s<<2)>>2];b:{if(w[k+168|0]){break b}if(o>C(6.2831854820251465)){p=C(p+C(-12.566370964050293));o=C(o+C(-12.566370964050293));break b}if(!(o>2];u=z[k+100>>2];H=z[k+156>>2];L=C(-H);$=z[k+160>>2];ia=C($*z[k+164>>2]);ra=z[k+44>>2];sa=z[k+36>>2];ta=z[k+40>>2];ua=z[k+32>>2];va=z[k+24>>2];wa=z[k+28>>2];ya=z[k+20>>2];za=z[k+12>>2];Aa=z[k+16>>2];Ca=z[k+8>>2];Da=z[k>>2];Ea=z[k+4>>2];Fa=C(C(C(C(ra*A)+C(C(sa*D)+C(ta*y)))+C(C(ua*V)+C(C(va*Y)+C(wa*W))))-C(C(C(ya*R)+C(C(za*I)+C(J*Aa)))+C(C(Ca*P)+C(C(Da*G)+C(Q*Ea)))));aa=z[k+96>>2];ka=C(ia-C(Fa*aa));L=L>ka?L:ka;H=C((H>2]=$+H;L=z[k+148>>2];$=C(-L);ka=C(C(C(C(C(t*u)*i)+p)-o)*z[k+128>>2]);p=t;t=z[k+152>>2];ia=C(C(H*u)+Fa);p=C(ka+C(p+C(C(z[k+144>>2]*t)+C(z[k+136>>2]*ia))));p=p<$?$:p;L=p>L?L:p;p=C(L-t);$=C(H+p);p=C(C(p*u)+ia);c:{d:{if(g){break d}t=z[k+108>>2];r=tt){H=z[k+116>>2];o=C(p+C(C(C(t-u)*d)*(r?z[k+120>>2]:C(1))));o=ox?x:o)-p)*aa));o=C((o>2]=H+o;break c}t=o;o=z[k+104>>2];r=tu)){break d}t=z[k+112>>2];o=C(p+C(C(C(o-u)*d)*(r?z[k+120>>2]:C(1))));o=ox?x:o)-p)*aa));o=C((o>C(0)?o:C(0))-t);z[k+112>>2]=t+o;break c}o=C(aa*C(-p));if(p>C(0)){p=z[k+112>>2];u=C(-p);o=o>u?o:u;z[k+112>>2]=p+o;break c}p=z[k+116>>2];u=C(-p);o=o>2]=p+o}o=C($+o);if(o==C(0)){break a}z[k+152>>2]=L;T=C(T-C(o*ra));ha=C(ha-C(o*ta));U=C(U-C(o*sa));E=C(E-C(ua*o));F=C(F-C(wa*o));pa=C(pa-C(va*o));ea=C(ea+C(ya*o));fa=C(fa+C(Aa*o));ga=C(ga+C(za*o));la=C(la+C(Ca*o));ma=C(ma+C(Ea*o));na=C(na+C(Da*o));p=C(-o);u=C(z[k+72>>2]*p);N=C(u+N);D=C(D+u);I=C(I-C(o*z[k+48>>2]));u=C(z[k+92>>2]*p);M=C(u+M);aa=C(z[k+88>>2]*p);K=C(aa+K);t=C(z[k+84>>2]*p);X=C(t+X);H=C(z[k+80>>2]*p);Z=C(H+Z);p=C(z[k+76>>2]*p);_=C(p+_);V=C(V+u);W=C(W+aa);Y=C(Y+t);A=C(A+H);y=C(y+p);P=C(P-C(o*z[k+68>>2]));Q=C(Q-C(o*z[k- -64>>2]));G=C(G-C(o*z[k+60>>2]));R=C(R-C(o*z[k+56>>2]));J=C(J-C(o*z[k+52>>2]))}s=s+1|0;if((O|0)!=(s|0)){continue}break}z[n+216>>2]=T;z[n+212>>2]=ha;z[n+192>>2]=pa;z[n+120>>2]=M;z[n+116>>2]=K;z[n+96>>2]=N}z[n+200>>2]=E;z[n+196>>2]=F;s=O-da|0;if(O>>>0>s>>>0){ja=v[b+312>>2];ca=ja+(j<<5)|0;oa=v[b+300>>2];k=v[m>>2];o=C(-x);P=z[n+216>>2];Q=z[n+212>>2];while(1){r=k+1|0;v[m>>2]=r;k=oa+B(k,80)|0;E=z[k+56>>2];F=z[k+48>>2];G=z[k+52>>2];p=C(C(C(E*A)+C(C(F*D)+C(G*y)))-C(C(E*R)+C(C(F*I)+C(J*G))));q=C(-p);T=z[k+60>>2];if(!g){da=ja+(v[S+24>>2]<<5)|0;q=C(C(C(z[k+64>>2]-C(C(C(E*z[ca+8>>2])+C(C(F*z[ca>>2])+C(G*z[ca+4>>2])))-C(C(E*z[da+8>>2])+C(C(F*z[da>>2])+C(G*z[da+4>>2])))))*z[k+68>>2])+q)}q=C(p+q);q=o>q?o:q;p=C(T*C((q>x?x:q)-p));if(p!=C(0)){q=C(E*p);P=C(P-q);E=C(G*p);Q=C(Q-E);F=C(F*p);U=C(U-F);ea=C(ea+q);fa=C(fa+E);ga=C(ga+F);R=C(R-C(p*z[k+8>>2]));J=C(J-C(p*z[k+4>>2]));I=C(I-C(p*z[k>>2]));p=C(-p);q=C(z[k+24>>2]*p);N=C(q+N);D=C(D+q);q=C(z[k+44>>2]*p);M=C(q+M);E=C(z[k+40>>2]*p);K=C(E+K);F=C(z[k+36>>2]*p);X=C(F+X);G=C(z[k+32>>2]*p);Z=C(G+Z);p=C(z[k+28>>2]*p);_=C(p+_);V=C(q+V);W=C(E+W);Y=C(F+Y);y=C(y+p);A=C(A+G)}k=r;s=s+1|0;if((O|0)!=(s|0)){continue}break}z[n+216>>2]=P;z[n+212>>2]=Q;z[n+120>>2]=M;z[n+116>>2]=K;z[n+96>>2]=N}z[n+136>>2]=A;z[n+132>>2]=y;z[n+128>>2]=D;z[n+208>>2]=U;z[n+152>>2]=V;z[n+148>>2]=W;z[n+144>>2]=Y;z[n+112>>2]=X;z[n+104>>2]=Z;z[n+100>>2]=_}k=v[b+312>>2];s=j<<2;r=v[s+v[b+408>>2]>>2];O=Ba[v[v[b>>2]+168>>2]](b,j)|0;if(r){ba=k+ba|0;x=g?C(0):C(-34028234663852886e22);k=v[s+v[b+420>>2]>>2];s=0;while(1){wx(v[b+656>>2]+(k<<5)|0,n+128|0,n+192|0,n+96|0,ba,O,h,i,x);k=k+1|0;s=s+1|0;if((r|0)!=(s|0)){continue}break}}o=z[n+216>>2];A=z[n+212>>2];y=z[n+208>>2];D=z[n+200>>2];I=z[n+196>>2];J=z[n+192>>2];k=v[S>>2];r=v[S+4>>2];if(k|r){S=B(j,192);while(1){s=k;yx(n- -64|0,b,c,d,e,f,g,h,i,(Ga=Qaa(k),Ha=Qaa(r)+32|0,Ia=k,Ia?Ga:Ha),n+96|0,l,m);x=z[n+88>>2];o=C(x+o);p=z[n+84>>2];A=C(p+A);q=z[n+80>>2];y=C(q+y);M=z[n+72>>2];D=C(M+D);K=z[n+68>>2];I=C(K+I);N=z[n+64>>2];J=C(N+J);k=k&k-1;r=r&r-!s;if(k|r){s=v[b+336>>2];v[n+28>>2]=0;z[n+24>>2]=-x;z[n+20>>2]=-p;z[n+16>>2]=-q;v[n+12>>2]=0;z[n+8>>2]=-M;z[n+4>>2]=-K;z[n>>2]=-N;Qw(n+32|0,s+S|0,n);z[n+96>>2]=z[n+32>>2]+z[n+96>>2];z[n+100>>2]=z[n+36>>2]+z[n+100>>2];z[n+104>>2]=z[n+40>>2]+z[n+104>>2];z[n+112>>2]=z[n+48>>2]+z[n+112>>2];z[n+116>>2]=z[n+52>>2]+z[n+116>>2];z[n+120>>2]=z[n+56>>2]+z[n+120>>2];continue}break}z[n+216>>2]=o;z[n+212>>2]=A;z[n+208>>2]=y;z[n+200>>2]=D;z[n+196>>2]=I;z[n+192>>2]=J;ea=C(ea+C(0));fa=C(fa+C(0));la=C(la+C(0));ma=C(ma+C(0));na=C(na+C(0));ga=C(ga+C(0))}e=(j<<5)+e|0;v[e+28>>2]=0;z[e+16>>2]=y;v[e+12>>2]=0;z[e+8>>2]=D;z[e+4>>2]=I;z[e>>2]=J;z[e+24>>2]=o;z[e+20>>2]=A;cx(n- -64|0,v[b+396>>2]+B(j,96)|0,qa,v[b+384>>2]+B(j,76)|0,n+192|0);c=z[n+84>>2];d=z[n+88>>2];i=z[n+64>>2];x=z[n+68>>2];o=z[n+72>>2];p=z[n+80>>2];v[a+28>>2]=0;v[a+12>>2]=0;z[a+24>>2]=ea+d;z[a+20>>2]=fa+c;z[a+16>>2]=ga+p;z[a+8>>2]=la+o;z[a+4>>2]=ma+x;z[a>>2]=na+i;xa=n+224|0}function o2(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,u=C(0),y=C(0),A=0,B=C(0),D=C(0),E=0,F=C(0),G=0,H=C(0),I=C(0),J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=0,U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=0,$=0,aa=C(0),ba=0,ca=0,da=0,ea=0,fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0);j=xa-208|0;xa=j;U=v[g>>2];u=z[i+4>>2];r=z[i>>2];F=z[i+8>>2];s=x[b+16>>1];A=v[a+32>>2];p2(j+160|0,i);E=w[b+18|0];G=(j-(E<<4)|0)-16|0;xa=G;Ba[v[v[e>>2]+16>>2]](e,s+A|0,E,v[a+28>>2],G);a=v[c+60>>2];v[j+120>>2]=v[c+56>>2];v[j+124>>2]=a;a=v[c+52>>2];v[j+112>>2]=v[c+48>>2];v[j+116>>2]=a;a=v[c+76>>2];v[j+136>>2]=v[c+72>>2];v[j+140>>2]=a;ba=c- -64|0;a=ba;e=v[a+4>>2];v[j+128>>2]=v[a>>2];v[j+132>>2]=e;a=v[c+92>>2];v[j+152>>2]=v[c+88>>2];v[j+156>>2]=a;ca=c+80|0;a=ca;e=v[a+4>>2];v[j+144>>2]=v[a>>2];v[j+148>>2]=e;Q=z[G+4>>2];R=z[G>>2];y=C(34028234663852886e22);L=C(-34028234663852886e22);I=z[G+8>>2];B=I;M=C(-34028234663852886e22);N=C(-34028234663852886e22);O=C(34028234663852886e22);D=C(34028234663852886e22);s=w[b+18|0];if(s){H=z[j+200>>2];V=z[j+184>>2];W=z[j+196>>2];X=z[j+180>>2];k=C(-34028234663852886e22);o=C(34028234663852886e22);M=z[j+168>>2];N=z[j+164>>2];O=z[j+192>>2];D=z[j+176>>2];P=z[j+160>>2];e=0;m=C(34028234663852886e22);p=C(-34028234663852886e22);while(1){a=(e<<4)+G|0;v[a+12>>2]=0;B=z[a+8>>2];n=z[a>>2];q=z[a+4>>2];z[a+8>>2]=C(H*B)+C(C(M*n)+C(q*V));l=C(C(W*B)+C(C(N*n)+C(q*X)));z[a+4>>2]=l;B=C(C(O*B)+C(C(P*n)+C(q*D)));z[a>>2]=B;k=k>l?k:l;p=p>B?p:B;o=l>o?o:l;m=m>2]}da=c+48|0;V=C(-F);W=C(-r);X=C(-u);_=U+5|0;$=(U<<6)+f|0;Y=C(B+z[h>>2]);e=0;s=0;F=C(34028234663852886e22);H=C(-34028234663852886e22);while(1){A=s<<4;a=A+(j+112|0)|0;aa=z[a+12>>2];v[a+12>>2]=0;q=z[a+8>>2];z[a+8>>2]=B;u=z[a>>2];r=z[a+4>>2];l=C(C(q*z[j+196>>2])+C(C(z[j+164>>2]*u)+C(r*z[j+180>>2])));z[a+4>>2]=l;n=C(C(q*z[j+192>>2])+C(C(u*z[j+160>>2])+C(r*z[j+176>>2])));z[a>>2]=n;k=C(C(q*z[j+200>>2])+C(C(u*z[j+168>>2])+C(r*z[j+184>>2])));z[A+(j- -64|0)>>2]=k-B;S=ly;ea=n>F;a:{if(!(kM|(lN)){break a}E=w[b+18|0];if(!E){break a}a=((E<<4)+G|0)-16|0;m=z[a>>2];k=z[a+4>>2];a=0;A=0;b:{while(1){if(m==n&k==l){break b}p=m;o=k;J=(a<<4)+G|0;m=z[J>>2];k=z[J+4>>2];if(n==m&l==k){break b}c:{if((ll|0)){break c}P=C(k-o);o=C(C(C(p+C(1.1920928955078125e-7))*P)+C(C(l-o)*C(m-p)));p=C(n*P);J=P>C(0);if(!((J?o:p)>=(J?p:o))){break c}if((A|0)==1){break a}A=A+1|0}a=a+1|0;if((E|0)!=(a|0)){continue}break}if(!A){break a}}m=z[i+8>>2];o=z[i>>2];p=z[i+4>>2];A=v[g>>2];a=(A<<6)+f|0;v[a+48>>2]=d;z[a+32>>2]=W;z[a+16>>2]=u;v[a+12>>2]=0;k=C(C(m*C(q-I))+C(C(o*C(u-R))+C(p*C(r-Q))));z[a+44>>2]=k;z[a+40>>2]=V;z[a+36>>2]=X;z[a+28>>2]=aa;z[a+24>>2]=q;z[a+20>>2]=r;z[a+8>>2]=q-C(m*k);z[a+4>>2]=r-C(p*k);z[a>>2]=u-C(o*k);a=A+1|0;v[g>>2]=a;e=e+1|0;a=a-U|0;if(a>>>0<16){break a}z2($,a);v[g>>2]=_}L=S?L:l;H=T?H:n;y=Z?y:l;F=ea?F:n;s=s+1|0;if((s|0)!=3){continue}break}d:{if((e|0)==3){break d}A=0;e=w[b+18|0];e:{if(!e){e=0;E=0;break e}k=z[c+48>>2];l=C(z[c+64>>2]-k);m=z[c+52>>2];p=C(z[c+84>>2]-m);n=C(z[c+80>>2]-k);q=C(z[c+68>>2]-m);o=C(C(l*p)-C(n*q));I=o;D=C(o*o);r=q;o=z[c+56>>2];q=C(z[c+88>>2]-o);u=C(z[c+72>>2]-o);p=C(C(r*q)-C(p*u));l=C(C(u*n)-C(q*l));n=C(C(1)/C(K(C(D+C(C(p*p)+C(l*l))))));M=C(I*n);N=C(p*n);O=C(l*n);P=C(C(M*o)+C(C(N*k)+C(m*O)));Q=C(L+C(1.1920928955078125e-7));R=C(H+C(1.1920928955078125e-7));I=C(y+C(-1.1920928955078125e-7));Y=C(F+C(-1.1920928955078125e-7));n=z[j+128>>2];o=z[j+148>>2];p=z[j+132>>2];L=C(o-p);aa=C(C(n+C(1.1920928955078125e-7))*L);q=z[j+112>>2];l=z[j+116>>2];F=C(p-l);fa=C(C(q+C(1.1920928955078125e-7))*F);u=z[j+144>>2];H=C(l-o);ga=C(C(u+C(1.1920928955078125e-7))*H);ha=C(u-n);ia=C(n-q);ja=C(q-u);E=0;a=0;while(1){c=(a<<4)+G|0;m=z[c>>2];f:{if(mR){break f}k=z[c+4>>2];if(kQ){break f}g:{if(m==u&k==o|m==q&k==l){break g}S=kC(0);J=0;if(!((s?r:y)>=(s?y:r))){break h}J=1}s=J;if(m==n&k==p){break g}Z=kC(0);if(!((T?r:y)>=(T?y:r))){break i}if(s){break f}s=s+1|0}j:{if((S|0)==(Z|0)){break j}r=C(aa+C(C(k-p)*ha));y=C(m*L);S=L>C(0);if(!((S?r:y)>=(S?y:r))){break j}if((s|0)!=1){break g}break f}if(!s){break f}}D=z[c+8>>2];r=C(C(z[j+200>>2]*D)+C(C(z[j+192>>2]*m)+C(k*z[j+196>>2])));y=C(C(z[j+168>>2]*D)+C(C(z[j+160>>2]*m)+C(k*z[j+164>>2])));k=C(C(z[j+184>>2]*D)+C(C(z[j+176>>2]*m)+C(k*z[j+180>>2])));m=C(C(C(M*r)+C(C(N*y)+C(O*k)))-P);if(m>z[h>>2]){break f}v[j+44>>2]=0;z[j+40>>2]=r-C(M*m);z[j+36>>2]=k-C(O*m);z[j+32>>2]=y-C(N*m);eZ(j+32|0,da,ba,ca,j+16|0,j);m=z[j+16>>2];k:{if(!(m>=C(0))){break k}D=z[j>>2];if(!(D>=C(0))|!(C(m+D)<=C(1))){break k}m=z[i+8>>2];D=z[i>>2];ka=z[i+4>>2];la=z[j+40>>2];ma=z[j+32>>2];na=z[j+36>>2];e=v[g>>2];c=(e<<6)+f|0;v[c+12>>2]=0;z[c+8>>2]=r;z[c+4>>2]=k;z[c>>2]=y;s=v[j+36>>2];v[c+16>>2]=v[j+32>>2];v[c+20>>2]=s;s=v[j+44>>2];v[c+24>>2]=v[j+40>>2];v[c+28>>2]=s;v[c+48>>2]=d;z[c+44>>2]=C(m*C(la-r))+C(C(D*C(ma-y))+C(ka*C(na-k)));z[c+40>>2]=V;z[c+36>>2]=X;z[c+32>>2]=W;c=e+1|0;v[g>>2]=c;E=E+1|0;c=c-U|0;if(c>>>0<16){break k}z2($,c);v[g>>2]=_}e=w[b+18|0]}a=a+1|0;if(a>>>0<(e&255)>>>0){continue}break}}if((e&255)==(E|0)){break d}a=2;s=e;while(1){i=j+61|0;c=A;l:{if(!(w[a+i|0]?1:w[i+c|0])){break l}if(!(s&255)){s=0;break l}s=c<<4;i=j+112|0;A=s+i|0;k=z[A+4>>2];a=a<<4;i=a+i|0;o=z[i+4>>2];L=k>o?k:o;m=z[A>>2];p=z[i>>2];F=m>p?m:p;H=k>2];i=(i<<4)+G|0;n=z[i>>2];m:{if(M>(l>n?l:n)|F<(l>2];u=z[i+4>>2];if(H>(q>u?q:u)|L<(q>2]);n=C(r*C(C(1)/C(y-r)));l=C(l-C(n*C(C(B+z[A>>2])-l)));y=C(l-B);if(y>z[h>>2]){break m}q=z[j+168>>2];D=z[j+160>>2];P=z[j+164>>2];u=z[j+184>>2];Q=z[j+176>>2];R=z[j+180>>2];r=z[j+200>>2];I=z[j+192>>2];Y=z[j+196>>2];i=v[g>>2];e=(i<<6)+f|0;v[e+48>>2]=d;z[e+32>>2]=W;v[e+12>>2]=0;z[e+44>>2]=y;z[e+40>>2]=V;z[e+36>>2]=X;v[e+28>>2]=0;y=C(m-C(n*O));n=C(k-C(n*N));I=C(C(I*y)+C(Y*n));z[e+24>>2]=C(r*l)+I;Q=C(C(Q*y)+C(n*R));z[e+20>>2]=C(u*l)+Q;R=C(q*l);l=C(C(D*y)+C(n*P));z[e+16>>2]=R+l;z[e+8>>2]=C(r*B)+I;z[e+4>>2]=C(u*B)+Q;z[e>>2]=C(q*B)+l;e=i+1|0;v[g>>2]=e;e=e-U|0;if(e>>>0<16){break m}z2($,e);v[g>>2]=_}e=w[b+18|0];s=e;i=a;a=a+1|0;if(e>>>0>a>>>0){continue}break}}a=c;A=a+1|0;if((A|0)!=3){continue}break}}xa=j+208|0}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,j=0;i=xa-16|0;xa=i;j=Sv(a,b);if(!(!j|w[a+76|0]==(b|0))){t[i+15|0]=0;e=B(b+3&-4,288);Nv(a+640|0,e,i+15|0);u[a+78>>1]=e;v[a+68>>2]=v[a+640>>2];h=xa-80|0;xa=h;d=b;c=a+112|0;if((v[c+124>>2]&2147483647)>>>0>>0){yw(c+116|0,d)}v[c+120>>2]=d;if((v[c+136>>2]&2147483647)>>>0>>0){yw(c+128|0,d)}v[c+132>>2]=d;if((v[c+148>>2]&2147483647)>>>0>>0){yw(c+140|0,d)}v[c+144>>2]=d;if((v[c+160>>2]&2147483647)>>>0>>0){yw(c+152|0,d)}v[c+156>>2]=d;if((v[c+304>>2]&2147483647)>>>0>>0){zw(c+296|0,d)}v[c+300>>2]=d;if((v[c+316>>2]&2147483647)>>>0>>0){zw(c+308|0,d)}v[c+312>>2]=d;if((v[c+208>>2]&2147483647)>>>0>>0){yw(c+200|0,d)}v[c+204>>2]=d;if((v[c+220>>2]&2147483647)>>>0>>0){Qv(c+212|0,d)}v[c+216>>2]=d;if((v[c+232>>2]&2147483647)>>>0>>0){e=0;a:{if(!d){break a}b=B(d,192);e=0;if(!b){break a}e=v[37696];a=Ba[v[v[e>>2]+20>>2]](e)|0?25945:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,b,a,16608,553)|0}a=v[c+224>>2];b=e;f=b+B(v[c+228>>2],192)|0;if(b>>>0>>0){while(1){z[b>>2]=z[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];z[b+28>>2]=z[a+28>>2];z[b+32>>2]=z[a+32>>2];z[b+36>>2]=z[a+36>>2];z[b+40>>2]=z[a+40>>2];z[b+44>>2]=z[a+44>>2];z[b+48>>2]=z[a+48>>2];z[b+52>>2]=z[a+52>>2];z[b+56>>2]=z[a+56>>2];z[b+60>>2]=z[a+60>>2];z[b+64>>2]=z[a+64>>2];z[b+68>>2]=z[a+68>>2];z[b+72>>2]=z[a+72>>2];z[b+76>>2]=z[a+76>>2];z[b+80>>2]=z[a+80>>2];z[b+84>>2]=z[a+84>>2];z[b+88>>2]=z[a+88>>2];z[b+92>>2]=z[a+92>>2];z[b+96>>2]=z[a+96>>2];z[b+100>>2]=z[a+100>>2];z[b+104>>2]=z[a+104>>2];z[b+108>>2]=z[a+108>>2];z[b+112>>2]=z[a+112>>2];z[b+116>>2]=z[a+116>>2];z[b+120>>2]=z[a+120>>2];z[b+124>>2]=z[a+124>>2];z[b+128>>2]=z[a+128>>2];z[b+132>>2]=z[a+132>>2];z[b+136>>2]=z[a+136>>2];z[b+140>>2]=z[a+140>>2];z[b+144>>2]=z[a+144>>2];z[b+148>>2]=z[a+148>>2];z[b+152>>2]=z[a+152>>2];z[b+156>>2]=z[a+156>>2];z[b+160>>2]=z[a+160>>2];z[b+164>>2]=z[a+164>>2];z[b+168>>2]=z[a+168>>2];z[b+172>>2]=z[a+172>>2];z[b+176>>2]=z[a+176>>2];z[b+180>>2]=z[a+180>>2];z[b+184>>2]=z[a+184>>2];z[b+188>>2]=z[a+188>>2];a=a+192|0;b=b+192|0;if(f>>>0>b>>>0){continue}break}}b:{if(v[c+232>>2]<0){break b}b=v[c+224>>2];if(!b){break b}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}v[c+232>>2]=d;v[c+224>>2]=e}v[c+228>>2]=d;if((v[c+244>>2]&2147483647)>>>0>>0){e=0;c:{if(!d){break c}b=B(d,112);if(!b){break c}e=v[37696];a=Ba[v[v[e>>2]+20>>2]](e)|0?25823:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,b,a,16608,553)|0}f=v[c+236>>2];a=v[c+240>>2];if((a|0)>0){g=B(a,112)+e|0;a=f;b=e;while(1){z[b>>2]=z[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];z[b+28>>2]=z[a+28>>2];z[b+32>>2]=z[a+32>>2];z[b+36>>2]=z[a+36>>2];z[b+40>>2]=z[a+40>>2];z[b+44>>2]=z[a+44>>2];z[b+48>>2]=z[a+48>>2];z[b+52>>2]=z[a+52>>2];z[b+56>>2]=z[a+56>>2];z[b+60>>2]=z[a+60>>2];z[b- -64>>2]=z[a- -64>>2];z[b+68>>2]=z[a+68>>2];z[b+72>>2]=z[a+72>>2];z[b+76>>2]=z[a+76>>2];z[b+80>>2]=z[a+80>>2];z[b+84>>2]=z[a+84>>2];z[b+88>>2]=z[a+88>>2];z[b+92>>2]=z[a+92>>2];z[b+96>>2]=z[a+96>>2];z[b+100>>2]=z[a+100>>2];z[b+104>>2]=z[a+104>>2];v[b+108>>2]=v[a+108>>2];a=a+112|0;b=b+112|0;if(g>>>0>b>>>0){continue}break}}if(!(!f|v[c+244>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,f)}v[c+244>>2]=d;v[c+236>>2]=e}v[c+240>>2]=d;if((v[c+256>>2]&2147483647)>>>0>>0){b=0;d:{if(!d){break d}e=B(d,36);if(!e){break d}b=v[37696];a=Ba[v[v[b>>2]+20>>2]](b)|0?30677:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,a,16608,553)|0}e=v[c+248>>2];a=v[c+252>>2];if((a|0)>0){g=B(a,36)+b|0;a=b;while(1){f=v[e+4>>2];v[a>>2]=v[e>>2];v[a+4>>2]=f;v[a+32>>2]=v[e+32>>2];f=v[e+28>>2];v[a+24>>2]=v[e+24>>2];v[a+28>>2]=f;f=v[e+20>>2];v[a+16>>2]=v[e+16>>2];v[a+20>>2]=f;f=v[e+12>>2];v[a+8>>2]=v[e+8>>2];v[a+12>>2]=f;e=e+36|0;a=a+36|0;if(g>>>0>a>>>0){continue}break}e=v[c+248>>2]}if(!(!e|v[c+256>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,e)}v[c+256>>2]=d;v[c+248>>2]=b}v[c+252>>2]=d;h=I9(h,0,76);g=h;f=c+260|0;if((v[f+8>>2]&2147483647)>>>0>>0){Aw(f,d)}e=v[f+4>>2];if((e|0)<(d|0)){a=v[f>>2];b=a+B(d,76)|0;a=a+B(e,76)|0;while(1){z[a>>2]=z[g>>2];z[a+4>>2]=z[g+4>>2];z[a+8>>2]=z[g+8>>2];z[a+12>>2]=z[g+12>>2];z[a+16>>2]=z[g+16>>2];z[a+20>>2]=z[g+20>>2];z[a+24>>2]=z[g+24>>2];z[a+28>>2]=z[g+28>>2];z[a+32>>2]=z[g+32>>2];z[a+36>>2]=z[g+36>>2];z[a+40>>2]=z[g+40>>2];z[a+44>>2]=z[g+44>>2];z[a+48>>2]=z[g+48>>2];z[a+52>>2]=z[g+52>>2];z[a+56>>2]=z[g+56>>2];z[a+60>>2]=z[g+60>>2];z[a- -64>>2]=z[g+64>>2];z[a+68>>2]=z[g+68>>2];v[a+72>>2]=v[g+72>>2];a=a+76|0;if(b>>>0>a>>>0){continue}break}}v[f+4>>2]=d;if((v[c+280>>2]&2147483647)>>>0>>0){Aw(c+272|0,d)}v[c+276>>2]=d;if((v[c+292>>2]&2147483647)>>>0>>0){e=0;e:{if(!d){break e}b=B(d,96);if(!b){break e}e=v[37696];a=Ba[v[v[e>>2]+20>>2]](e)|0?49623:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,b,a,16608,553)|0}f=v[c+284>>2];a=v[c+288>>2];if((a|0)>0){g=B(a,96)+e|0;a=f;b=e;while(1){z[b>>2]=z[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];z[b+28>>2]=z[a+28>>2];z[b+32>>2]=z[a+32>>2];z[b+36>>2]=z[a+36>>2];z[b+40>>2]=z[a+40>>2];z[b+44>>2]=z[a+44>>2];z[b+48>>2]=z[a+48>>2];z[b+52>>2]=z[a+52>>2];z[b+56>>2]=z[a+56>>2];z[b+60>>2]=z[a+60>>2];z[b+64>>2]=z[a+64>>2];z[b+68>>2]=z[a+68>>2];z[b+72>>2]=z[a+72>>2];z[b+76>>2]=z[a+76>>2];z[b+80>>2]=z[a+80>>2];z[b+84>>2]=z[a+84>>2];z[b+88>>2]=z[a+88>>2];z[b+92>>2]=z[a+92>>2];a=a+96|0;b=b+96|0;if(g>>>0>b>>>0){continue}break}}if(!(!f|v[c+292>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,f)}v[c+292>>2]=d;v[c+284>>2]=e}v[c+288>>2]=d;if((v[c+392>>2]&2147483647)>>>0>>0){Qv(c+384|0,d)}v[c+388>>2]=d;if((v[c+404>>2]&2147483647)>>>0>>0){Rv(c+396|0,d)}v[c+400>>2]=d;if((v[c+112>>2]&2147483647)>>>0>>0){yw(c+104|0,d)}v[c+108>>2]=d;if((v[c+172>>2]&2147483647)>>>0>>0){yw(c+164|0,d)}v[c+168>>2]=d;Pv(c+320|0,d,h);b=v[c+340>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);v[c+340>>2]=0}b=v[c+344>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);v[c+344>>2]=0}b=v[c+348>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);v[c+348>>2]=0}a=v[37696];f=B(d,160);a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,f,24422,9698,172)|0;v[a+144>>2]=0;v[c+340>>2]=a;a=v[37696];e=B(d,80);a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,e,24422,9698,173)|0;t[a+78|0]=0;v[a+72>>2]=-1;v[c+344>>2]=a;b=v[37696];a=B(d,96);b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,9698,174)|0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[c+348>>2]=b;b=d<<5;I9(v[c+116>>2],0,b);I9(v[c+128>>2],0,b);I9(v[c+140>>2],0,b);I9(v[c+152>>2],0,b);I9(v[c+200>>2],0,b);I9(v[c+212>>2],0,B(d,28));I9(v[c+340>>2],0,f);I9(v[c+344>>2],0,e);I9(v[c+348>>2],0,a);xa=h+80|0}xa=i+16|0;return j|0}function Oy(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,y,A,D){var E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=0,U=C(0),V=C(0),W=C(0),X=0,Y=0,Z=0,_=C(0),$=0,aa=0,ba=0,ca=0,da=0;F=xa-32|0;J=F;xa=F;a:{if(!b){s=0;t[d|0]=0;v[e>>2]=0;v[f>>2]=0;v[h>>2]=0;u[g>>1]=0;t[n|0]=0;break a}G=B(b,5);$=G>>>0>1024;t[J+28|0]=$;b:{if(G>>>0>=1025){M=t9(G,12597,87);break b}M=F-(G+15&-16)|0;xa=M}v[J+24>>2]=M;Y=x[m+2>>1];Z=x[m>>1];c:{if(b>>>0<2){G=1;F=0;N=1;K=1;R=1;break c}O=z[a>>2];P=z[a+4>>2];Q=z[a+8>>2];F=0;R=1;K=1;N=b;G=1;T=Z;I=Y;L=1;while(1){X=(L<<6)+a|0;V=z[X+8>>2];W=z[X>>2];S=z[X+4>>2];d:{e:{if(C(C(Q*V)+C(C(O*W)+C(P*S)))>1]!=(T&65535)){break e}if(x[X+2>>1]==(I&65535)){break d}}I=(B(R,5)+M|0)-5|0;t[I+4|0]=G&1;aa=L-F|0;t[I+3|0]=aa;t[I+2|0]=255;t[I+1|0]=L;t[I|0]=F;if(H){t[H+3|0]=aa+w[H+3|0]}f:{g:{if(R>>>0<2){T=0;break g}X=(L<<2)+m|0;T=1;E=1;while(1){h:{G=E-1|0;H=B(G,5)+M|0;if(!w[H+4|0]){break h}F=w[H|0];I=(F<<6)+a|0;if(!(C(C(V*z[I+8>>2])+C(C(W*z[I>>2])+C(S*z[I+4>>2])))>=C(.9990000128746033))){break h}F=(F<<2)+m|0;if(x[X>>1]!=x[F>>1]|x[X+2>>1]!=x[F+2>>1]){break h}while(1){F=B(G,5)+M|0;G=w[F+2|0];if((G|0)!=255){continue}break}t[F+2|0]=R;break f}E=E+1|0;T=R>>>0>E>>>0;if((E|0)!=(R|0)){continue}break}}H=0}R=R+1|0;G=T^1;K=(G&1)+K|0;N=(aa>>>0>1&r)+N|0;F=(L<<2)+m|0;I=x[F+2>>1];T=x[F>>1];F=L;Q=V;P=S;O=W}L=L+1|0;if((L|0)!=(b|0)){continue}break}}I=(B(R,5)+M|0)-5|0;t[I+4|0]=G&1;G=b-F|0;t[I+3|0]=G;t[I+2|0]=255;t[I+1|0]=b;t[I|0]=F;T=(G>>>0>1&r)+N|0;F=i?r?T-b<<2:0:0;if(H){t[H+3|0]=G+w[H+3|0]}H=i+F|0;t[n|0]=K;I=(l^-1)&k;N=B(T,I?64:16);K=B(I?T:K,48)+o|0;i:{j:{k:{l:{m:{n:{if(!(!s|(o|I))){i=N+v[s+4>>2]|0;v[s+4>>2]=i;G=v[s+8>>2];E=(G+v[s>>2]|0)-i|0;q=v[s+12>>2];p=v[s+4>>2];k=K+v[y+4>>2]|0;v[y+4>>2]=k;i=v[y+8>>2];F=(i+v[y>>2]|0)-k|0;p=i>>>0<=v[y+12>>2]+v[y+4>>2]>>>0|G>>>0<=p+q>>>0;if(H){k=v[A+4>>2]+(H<>2]=k;i=v[A+8>>2];if(p|i>>>0<=v[A+12>>2]+v[A+4>>2]>>>0){break k}i=(i+v[A>>2]|0)-k|0;H=D?i+(b<<2)|0:0;s=N+K|0;break l}if(p){break k}s=N+K|0;break n}s=(N+K|0)+15&-16;A=H<>>0>=16385){F=Iy(v[q>>2],G);break o}p:{y=v[q+4>>2];if(y){k=v[q+8>>2];i=k+G|0;if(i>>>0<16385){break p}}F=Jy(v[q>>2],p);v[q+8>>2]=G;v[q+4>>2]=F;break o}v[q+8>>2]=i;F=k+y|0;break o}q=i+15&-16;if(q>>>0>=16385){F=Iy(v[c+500>>2],q);break o}q:{p=v[c+504>>2];if(p){k=v[c+508>>2];i=k+q|0;if(i>>>0<16385){break q}}F=Ky(v[c+500>>2]);v[c+508>>2]=q;v[c+504>>2]=F;break o}v[c+508>>2]=i;F=k+p|0}E=F+K|0;if(A){break m}}H=0;i=0;break l}if(!F){break k}i=s+F|0;H=(ba=I9(i,0,A)+(b<<2)|0,ca=0,da=D,da?ba:ca);break j}if(F){break j}}s=0;t[d|0]=0;v[e>>2]=0;v[f>>2]=0;v[h>>2]=0;u[g>>1]=0;t[n|0]=0;break i}if(c){v[c+7140>>2]=v[c+7140>>2]+s;v[c+7168>>2]=v[c+7168>>2]+s}u[g>>1]=s;b=v[j>>2];c=b+(Z<<5)|0;b=b+(Y<<5)|0;_=My(c,b);g=J+16|0;z[g+4>>2]=1;z[g>>2]=1;Ny(J,g,c,b);L=v[J+8>>2];V=z[J+4>>2];W=z[J>>2];v[e>>2]=F;v[f>>2]=E;v[h>>2]=i;n=o+F|0;r:{if(!I){if(!R){break r}K=0;h=0;while(1){i=B(K,5)+M|0;s:{if(!w[i+4|0]){break s}I=w[i|0];b=(I<<2)+m|0;c=x[b+2>>1];b=x[b>>1];if(!((b|0)==(Z&65535)&(c|0)==(Y&65535))){e=v[j>>2];f=e+(b<<5)|0;e=e+(c<<5)|0;_=My(f,e);g=J+16|0;z[g+4>>2]=1;z[g>>2]=1;Ny(J,g,f,e);L=v[J+8>>2];V=z[J+4>>2];W=z[J>>2];I=w[i|0];Y=c;Z=b}e=(I<<6)+a|0;z[n+16>>2]=z[e>>2];z[n+20>>2]=z[e+4>>2];z[n+24>>2]=z[e+8>>2];g=w[i+3|0];t[n+40|0]=h;t[n+41|0]=g;z[n+36>>2]=W;z[n+32>>2]=V;u[n+46>>1]=c;u[n+44>>1]=b;z[n+28>>2]=_;t[n+43|0]=D;t[n+42|0]=L;v[n+8>>2]=1065353216;v[n+12>>2]=1065353216;v[n>>2]=1065353216;v[n+4>>2]=1065353216;if(!(!r|g>>>0<2)){t[n+41|0]=g+1;O=C(0);P=C(0);Q=C(0);U=C(0);F=K;if((F|0)!=255){while(1){e=B(F,5)+M|0;b=w[e|0];f=w[e+1|0];t:{if(b>>>0>=f>>>0){break t}c=b^-1;u:{if(!(f-b&1)){G=b;break u}G=b+1|0;b=(b<<6)+a|0;O=C(O+z[b+12>>2]);P=C(P+z[b+16>>2]);U=C(U+z[b+24>>2]);Q=C(Q+z[b+20>>2])}if((c|0)==(0-f|0)){break t}while(1){b=(G<<6)+a|0;O=C(C(O+z[b+12>>2])+z[b+76>>2]);P=C(C(P+z[b+16>>2])+z[b+80>>2]);U=C(C(U+z[b+24>>2])+z[b+88>>2]);Q=C(C(Q+z[b+20>>2])+z[b+84>>2]);G=G+2|0;if((f|0)!=(G|0)){continue}break}}F=w[e+2|0];if((F|0)!=255){continue}break}}S=C(C(1)/C(g>>>0));if(H){v[H>>2]=v[((w[M+1275|0]<<6)+a|0)+52>>2];H=H+4|0}else{H=0}z[E+12>>2]=S*O;z[E+8>>2]=S*U;z[E+4>>2]=S*Q;z[E>>2]=S*P;E=E+16|0;h=h+1|0}n=n+48|0;F=K;if((F|0)==255){break s}while(1){i=B(F,5)+M|0;b=w[i|0];g=w[i+1|0];if(b>>>0>>0){f=g+h|0;G=b;while(1){h=(G<<6)+a|0;e=v[h+20>>2];c=v[h+16>>2];z[E+8>>2]=z[h+24>>2];v[E>>2]=c;v[E+4>>2]=e;z[E+12>>2]=z[h+12>>2];if(H){v[H>>2]=v[h+52>>2];H=H+4|0}else{H=0}E=E+16|0;G=G+1|0;if((g|0)!=(G|0)){continue}break}h=f-b|0}F=w[i+2|0];if((F|0)!=255){continue}break}}K=K+1|0;if((R|0)!=(K|0)){continue}break}break r}if(!R){break r}k=(l?6:2)|D;b=0;N=0;while(1){i=B(b,5)+M|0;v:{if(!w[i+4|0]){break v}c=(w[i|0]<<2)+m|0;f=x[c+2>>1];e=x[c>>1];if(!((e|0)==(Z&65535)&(f|0)==(Y&65535))){c=v[j>>2];g=c+(e<<5)|0;c=c+(f<<5)|0;_=My(g,c);h=J+16|0;z[h+4>>2]=1;z[h>>2]=1;Ny(J,h,g,c);L=v[J+8>>2];V=z[J+4>>2];W=z[J>>2];Y=f;Z=e}l=w[i+3|0];t[n+42|0]=L;t[n+40|0]=N;t[n+41|0]=l;z[n+36>>2]=W;z[n+32>>2]=V;u[n+46>>1]=f;u[n+44>>1]=e;z[n+28>>2]=_;z[n+16>>2]=z[a>>2];z[n+20>>2]=z[a+4>>2];z[n+24>>2]=z[a+8>>2];t[n+43|0]=k;v[n+8>>2]=1065353216;v[n+12>>2]=1065353216;v[n>>2]=1065353216;v[n+4>>2]=1065353216;if(!(!r|l>>>0<2)){O=C(0);P=C(0);Q=C(0);U=C(0);F=b;if((b|0)!=255){while(1){h=B(F,5)+M|0;c=w[h|0];i=w[h+1|0];w:{if(c>>>0>=i>>>0){break w}g=c^-1;x:{if(!(i-c&1)){G=c;break x}G=c+1|0;c=(c<<6)+a|0;O=C(O+z[c+12>>2]);U=C(U+z[c+16>>2]);P=C(P+z[c+24>>2]);Q=C(Q+z[c+20>>2])}if((g|0)==(0-i|0)){break w}while(1){c=(G<<6)+a|0;O=C(C(O+z[c+12>>2])+z[c+76>>2]);U=C(C(U+z[c+16>>2])+z[c+80>>2]);P=C(C(P+z[c+24>>2])+z[c+88>>2]);Q=C(C(Q+z[c+20>>2])+z[c+84>>2]);G=G+2|0;if((i|0)!=(G|0)){continue}break}}F=w[h+2|0];if((F|0)!=255){continue}break}}S=C(C(1)/C(l>>>0));if(H){v[H>>2]=v[((w[M+1275|0]<<6)+a|0)+52>>2];H=H+4|0}else{H=0}t[n+41|0]=l+1;z[E+12>>2]=S*O;z[E+8>>2]=S*P;z[E+4>>2]=S*Q;z[E>>2]=S*U;z[E+32>>2]=z[a>>2];z[E+36>>2]=z[a+4>>2];z[E+40>>2]=z[a+8>>2];z[E+60>>2]=V;z[E+56>>2]=W;v[E+24>>2]=0;v[E+28>>2]=2139095039;v[E+16>>2]=0;v[E+20>>2]=0;u[E+54>>1]=f;u[E+52>>1]=e;v[E+48>>2]=L;z[E+44>>2]=_;E=E- -64|0;N=N+1|0}n=n+48|0;F=b;if((b|0)==255){break v}while(1){o=B(F,5)+M|0;c=w[o|0];l=w[o+1|0];if(c>>>0>>0){i=l+N|0;G=c;while(1){p=(G<<6)+a|0;h=v[p+20>>2];g=v[p+16>>2];z[E+8>>2]=z[p+24>>2];v[E>>2]=g;v[E+4>>2]=h;z[E+12>>2]=z[p+12>>2];z[E+32>>2]=z[p>>2];z[E+36>>2]=z[p+4>>2];z[E+40>>2]=z[p+8>>2];z[E+60>>2]=V;z[E+56>>2]=W;v[E+24>>2]=0;v[E+28>>2]=2139095039;v[E+16>>2]=0;v[E+20>>2]=0;u[E+54>>1]=f;u[E+52>>1]=e;v[E+48>>2]=L;z[E+44>>2]=_;if(H){v[H>>2]=v[p+52>>2];H=H+4|0}else{H=0}E=E- -64|0;G=G+1|0;if((l|0)!=(G|0)){continue}break}N=i-c|0}F=w[o+2|0];if((F|0)!=255){continue}break}}b=b+1|0;if((R|0)!=(b|0)){continue}break}}t[d|0]=T;$=w[J+28|0]}if(!$){break a}u9(v[J+24>>2])}xa=J+32|0;return s}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),l=C(0),m=0,n=C(0),o=0,q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),A=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=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;if(w[a+7648|0]){a=1}else{m=c;W=d;G=xa-32|0;xa=G;l=z[b+84>>2];h=z[b+76>>2];i=z[b+88>>2];k=z[b+72>>2];g=z[b+92>>2];f=z[b+80>>2];s=C(C(g+f)*C(.5));z[G+24>>2]=s;t=C(C(i+h)*C(.5));z[G+20>>2]=t;u=C(C(l+k)*C(.5));z[G+16>>2]=u;S=C(C(g-f)*C(.5));z[G+8>>2]=S;T=C(C(i-h)*C(.5));z[G+4>>2]=T;U=C(C(l-k)*C(.5));z[G>>2]=U;o=a+16|0;X=v[o+636>>2];d=v[o+28>>2];a=1;a:{if(!(X|d)){break a}n=z[W>>2];if(n==C(34028234663852886e22)){i=z[o+664>>2];k=z[o+680>>2];r=C(S+C(i+k));g=z[o+660>>2];f=z[o+676>>2];I=C(T+C(g+f));i=C(C(i-k)-S);H=C(C(g-f)-T);g=z[o+656>>2];f=z[o+672>>2];l=C(U+C(g+f));k=C(C(g-f)-U);if(d){F=C(85070586659632215e21);n=C(-85070586659632215e21);f=C(-85070586659632215e21);L=C(-85070586659632215e21);M=C(85070586659632215e21);N=C(85070586659632215e21);while(1){a=B(J,24)+o|0;g=z[a+180>>2];n=g>2];f=f>g?f:g;g=z[a+172>>2];L=g>2];F=g>F?F:g;g=z[a+164>>2];M=g>M?M:g;g=z[a+160>>2];N=g>N?N:g;J=J+1|0;if((J|0)!=(d|0)){continue}break}f=C(T+f);I=fi?i:f;f=C(M-T);H=f>H?H:f;f=C(N-U);k=f>k?k:f;f=C(S+n);r=f>2];g=z[m>>2];f=z[m+4>>2];k=C(C(q*i)+C(C(C(C(l+k)*C(.5))*g)+C(C(C(I+H)*C(.5))*f)));f=C(C(s*i)+C(C(u*g)+C(t*f)));g=C(D(C(C(k-h)-f)));f=C(D(C(C(h+k)-f)));n=C(n+(f>g?g:f));z[W>>2]=n}q=z[m+8>>2];c=q>C(0);i=C(-q);A=z[m+4>>2];b=A>C(0);k=C(-A);E=z[m>>2];a=E>C(0);g=C(-E);b:{if(n>=C(34028234663852886e22)){F=A==C(0)?t:A>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);n=E==C(0)?u:E>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);if(q==C(0)){f=s;break b}f=q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break b}f=C(s+C(n*q));F=C(t+C(n*A));n=C(u+C(n*E))}O=c?q:i;P=b?A:k;Q=a?E:g;L=fF?t:F;N=ns?s:f;F=tu?u:n;if(d){J=0;while(1){a=B(J,24)+o|0;g=z[a+160>>2];f=z[a+172>>2];k=C(C(g+f)*C(.5));H=C(U+C(C(f-g)*C(.5)));c:{if(!(C(k+H)>=n)|!(C(k-H)<=N)){break c}g=z[a+176>>2];f=z[a+164>>2];h=C(T+C(C(g-f)*C(.5)));g=C(C(f+g)*C(.5));i=C(t-g);k=C(u-k);f=C(C(E*i)-C(A*k));if(!(C(C(P*H)+C(Q*h))>=(f>C(0)?f:C(-f)))|!(C(g+h)>=F)|!(C(g-h)<=M)){break c}g=z[a+180>>2];f=z[a+168>>2];l=C(S+C(C(g-f)*C(.5)));r=C(C(O*h)+C(P*l));h=C(C(f+g)*C(.5));f=C(s-h);g=C(C(A*f)-C(q*i));if(!(r>=(g>C(0)?g:C(-g)))|!(C(h+l)>=I)|!(C(h-l)<=L)){break c}f=C(C(q*k)-C(E*f));if(!(C(C(O*H)+C(Q*l))>=(f>C(0)?f:C(-f)))){break c}a=0;if(!(Ba[v[v[e>>2]>>2]](e,W,((J<<3)+o|0)+32|0)|0)){break a}d=v[o+28>>2]}J=J+1|0;if(J>>>0>>0){continue}break}}a=1;if(!X){break a}f=z[o+656>>2];l=C(U+z[o+672>>2]);a=1;if(!(C(f+l)>=n)){break a}a=1;if(!(C(f-l)<=N)){break a}h=C(T+z[o+676>>2]);i=z[o+660>>2];k=C(t-i);g=C(u-f);f=C(C(E*k)-C(A*g));a=1;if(!(C(C(P*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break a}a=1;if(!(C(i+h)>=F)){break a}a=1;if(!(C(i-h)<=M)){break a}r=C(O*h);h=C(S+z[o+680>>2]);i=z[o+664>>2];f=C(s-i);k=C(C(A*f)-C(q*k));a=1;if(!(C(r+C(P*h))>=(k>C(0)?k:C(-k)))){break a}a=1;if(!(C(i+h)>=I)){break a}a=1;if(!(C(i-h)<=L)){break a}f=C(C(q*g)-C(E*f));a=1;if(!(C(C(O*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break a}a=v[o+644>>2]<<2;H=z[a+G>>2];r=z[a+(G+16|0)>>2];fa=a+m|0;g=z[fa>>2];f=z[W>>2];z[G+28>>2]=f;f=C(r+C(f*g));a=(p(C(H+(fr?r:f)-H)),j(2));d=(a|0)<0?a^-1:a|-2147483648;ga=o+688|0;ha=v[m+4>>2]>>>30&2|v[m>>2]>>>29&4|v[m+8>>2]>>>31;ia=ha<<1;_=x[(ga+ia|0)+208>>1];ja=1;d:{while(1){Y=_&7;a=Y<<2;e:{if(!v[a+ga>>2]){break e}b=(Y<<5)+o|0;f=z[b+736>>2];l=C(U+z[b+752>>2]);if(!(C(f+l)>=n)|!(C(f-l)<=N)){break e}h=C(T+z[b+756>>2]);i=z[b+740>>2];k=C(t-i);g=C(u-f);f=C(C(E*k)-C(A*g));if(!(C(C(P*l)+C(Q*h))>=(f>C(0)?f:C(-f)))|!(C(i+h)>=F)|!(C(i-h)<=M)){break e}V=C(O*h);h=C(S+z[b+760>>2]);i=z[b+744>>2];f=C(s-i);k=C(C(A*f)-C(q*k));if(!(C(V+C(P*h))>=(k>C(0)?k:C(-k)))|!(C(i+h)>=I)|!(C(i-h)<=L)){break e}f=C(C(q*g)-C(E*f));if(!(C(C(O*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break e}$=B(Y,224)+o|0;ka=$+912|0;aa=x[(ka+ia|0)+208>>1];ma=a+o|0;ba=0;while(1){b=aa&7;a=b<<2;f:{if(!v[a+ka>>2]){break f}m=(b<<5)+$|0;f=z[m+960>>2];l=C(U+z[m+976>>2]);if(!(C(f+l)>=n)|!(C(f-l)<=N)){break f}h=C(T+z[m+980>>2]);i=z[m+964>>2];k=C(t-i);g=C(u-f);f=C(C(E*k)-C(A*g));if(!(C(C(P*l)+C(Q*h))>=(f>C(0)?f:C(-f)))|!(C(i+h)>=F)|!(C(i-h)<=M)){break f}V=C(O*h);h=C(S+z[m+984>>2]);i=z[m+968>>2];f=C(s-i);k=C(C(A*f)-C(q*k));if(!(C(V+C(P*h))>=(k>C(0)?k:C(-k)))|!(C(i+h)>=I)|!(C(i-h)<=L)){break f}f=C(C(q*g)-C(E*f));if(!(C(C(O*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break f}na=v[(a+$|0)+932>>2]+v[ma+708>>2]|0;la=1;ca=(B(Y,1120)+o|0)+B(b,224)|0;X=ca+2032|0;da=x[(X+(ha<<1)|0)+208>>1];Z=0;while(1){b=d;a=c;g:{h:{m=da&7;c=m<<2;d=v[c+X>>2];if(!d){break h}m=(m<<5)+ca|0;f=z[m+2080>>2];l=C(U+z[m+2096>>2]);if(!(C(f+l)>=n)|!(C(f-l)<=N)){break h}h=C(T+z[m+2100>>2]);i=z[m+2084>>2];k=C(t-i);g=C(u-f);f=C(C(E*k)-C(A*g));if(!(C(C(P*l)+C(Q*h))>=(f>C(0)?f:C(-f)))|!(C(i+h)>=F)|!(C(i-h)<=M)){break h}V=C(O*h);h=C(S+z[m+2104>>2]);i=z[m+2088>>2];f=C(s-i);k=C(C(A*f)-C(q*k));if(!(C(V+C(P*h))>=(k>C(0)?k:C(-k)))|!(C(i+h)>=I)|!(C(i-h)<=L)){break h}f=C(C(q*g)-C(E*f));if(!(C(C(O*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break h}c=v[(c+ca|0)+2052>>2]+na|0;J=v[o+24>>2]+(c<<3)|0;R=v[o+20>>2]+(c<<5)|0;m=R+(d<<5)|0;d=b;c=a;while(1){i:{j:{if(y[R+28>>2]>>0){break j}if(y[R+12>>2]>c>>>0){break g}f=z[R>>2];l=C(U+z[R+16>>2]);if(!(C(f+l)>=n)|!(C(f-l)<=N)){break j}h=C(T+z[R+20>>2]);i=z[R+4>>2];k=C(t-i);g=C(u-f);f=C(C(E*k)-C(A*g));if(!(C(C(P*l)+C(Q*h))>=(f>C(0)?f:C(-f)))|!(C(i+h)>=F)|!(C(i-h)<=M)){break j}V=C(O*h);h=C(S+z[R+24>>2]);i=z[R+8>>2];f=C(s-i);k=C(C(A*f)-C(q*k));if(!(C(V+C(P*h))>=(k>C(0)?k:C(-k)))|!(C(i+h)>=I)|!(C(i-h)<=L)){break j}f=C(C(q*g)-C(E*f));if(!(C(C(O*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break j}f=z[G+28>>2];if(!(Ba[v[v[e>>2]>>2]](e,G+28|0,J)|0)){break i}i=z[G+28>>2];if(!(i>2]));c=(p(C(H+(fr?r:f)-H)),j(2));d=(d|0)<0?d^-1:d|-2147483648;k=C(s+C(q*i));L=ks?s:k;F=g>t?t:g;n=f>u?u:f}J=J+8|0;R=R+32|0;if((m|0)!=(R|0)){continue}break g}break}d=b;c=a;if(la){break d}break f}d=b;c=a}da=da>>>3|0;la=Z>>>0<4;Z=Z+1|0;if((Z|0)!=5){continue}break}}aa=aa>>>3|0;ba=ba+1|0;if((ba|0)!=5){continue}break}}_=_>>>3|0;ja=ea>>>0<4;ea=ea+1|0;if((ea|0)!=5){continue}break}z[W>>2]=z[G+28>>2]}a=!ja}xa=G+32|0;a=a&1}return a|0}function OF(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,z=0,A=0;k=xa-16|0;xa=k;d=xa-16|0;xa=d;b=a;c=v[b+80>>2];a=v[b+56>>2]<<1;a:{if(c>>>0>=a>>>0){break a}f=a;a=v[b+84>>2];f=((f+a|0)-1>>>0)/(a>>>0)|0;e=v[b+68>>2];g=f-e|0;v[b+80>>2]=c+B(a,g);if((e|0)==(f|0)){break a}e=b- -64|0;c=0;while(1){a=0;f=v[b+84>>2]<<3;if(f){a=v[37696];a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,f,24422,16683,84)|0}v[d+12>>2]=a;f=v[b+68>>2];b:{if(f>>>0>=(v[b+72>>2]&2147483647)>>>0){qF(e,d+12|0);break b}v[v[b+64>>2]+(f<<2)>>2]=a;v[b+68>>2]=f+1}c=c+1|0;if((g|0)!=(c|0)){continue}break}}c=v[b+288>>2];if(c){a=0;while(1){g=v[v[b+284>>2]+(a<<2)>>2];f=v[b+60>>2];e=(g>>>0)/(f>>>0)|0;f=v[v[b+40>>2]+(e<<2)>>2]+(g-B(e,f)<<4)|0;if(!(w[f+4|0]&3)){AF(b,g);u[f+4>>1]=x[f+4>>1]|1;c=v[b+288>>2]}a=a+1|0;if(c>>>0>a>>>0){continue}break}}c=v[b+300>>2];if(c){a=0;while(1){g=v[v[b+296>>2]+(a<<2)>>2];f=v[b+60>>2];e=(g>>>0)/(f>>>0)|0;f=v[v[b+40>>2]+(e<<2)>>2]+(g-B(e,f)<<4)|0;if(!(w[f+4|0]&3)){AF(b,g);u[f+4>>1]=x[f+4>>1]|1;c=v[b+300>>2]}a=a+1|0;if(c>>>0>a>>>0){continue}break}}xa=d+16|0;a=v[b+20>>2];v[k+8>>2]=0;c=a;a=k+8|0;bz(b+180|0,c,a);c=v[b+20>>2];v[k+8>>2]=-128;tF(b+192|0,c,a);p=b+240|0;while(1){s=B(r,12)+b|0;if(v[s+288>>2]){q=0;while(1){h=v[b+40>>2];o=v[v[s+284>>2]+(q<<2)>>2];a=v[b+60>>2];c=(o>>>0)/(a>>>0)|0;c:{if(w[(v[h+(c<<2)>>2]+(o-B(a,c)<<4)|0)+4|0]&2){break c}a=v[b+448>>2];f=v[a>>2];e=o<<1;c=e|1;d=v[a+20>>2];a=(c>>>0)/(d>>>0)|0;g=v[v[f+(a<<2)>>2]+(c-B(a,d)<<2)>>2];a=-1;c=-1;i=(e>>>0)/(d>>>0)|0;f=v[v[f+(i<<2)>>2]+(e-B(d,i)<<2)>>2];e=f>>>7|0;m=(e|0)==33554431;if(!m){c=v[v[b+204>>2]+(e<<2)>>2]}l=g>>>7|0;n=(l|0)==33554431;if(!n){a=v[v[b+204>>2]+(l<<2)>>2]}d=0;i=0;i=m?i:(w[(v[b+16>>2]+B(e,24)|0)+4|0]&2)>>>1|0;d=n?d:(w[(v[b+16>>2]+B(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=v[b+180>>2];d=e<<2;e=a+d|0;i=v[e>>2];h=i+1|0;j=a;a=l<<2;l=j+a|0;m=v[l>>2];if(h>>>0>>0){v[l>>2]=h;v[a+v[b+192>>2]>>2]=f;break e}a=m+1|0;if(a>>>0>=i>>>0){break e}v[e>>2]=a;v[d+v[b+192>>2]>>2]=g;break e}if(!j){h=v[b+16>>2];if(!m){j=h+B(e,24)|0;if(!(w[j+4|0]&4)){m=v[b+88>>2];n=B(a,44);c=m+n|0;v[(h+B(v[c+4>>2]>>>7|0,24)|0)+8>>2]=f;v[j+12>>2]=v[c+4>>2];v[c+4>>2]=f;h=c+(w[j+5|0]<<2)|0;v[h+8>>2]=v[h+8>>2]+1;e=e<<2;v[e+v[b+204>>2]>>2]=a;h=v[b+180>>2];v[h+e>>2]=v[h+(l<<2)>>2]+1;v[e+v[b+192>>2]>>2]=g;if((d|i)!=1){c=a;break e}h=1<>2];g=a>>>5<<2;f:{if(h&v[d+g>>2]){break f}c=v[c>>2];e=c>>>7|0;if((e|0)!=33554431){while(1){KF(b,c);c=v[(v[b+16>>2]+B(e,24)|0)+8>>2];e=c>>>7|0;if((e|0)!=33554431){continue}break}m=v[b+88>>2];d=v[b+216>>2]}v[k+8>>2]=a;c=d+g|0;v[c>>2]=h|v[c>>2];c=v[b+244>>2];v[(m+n|0)+16>>2]=c;if(c>>>0>=(v[b+248>>2]&2147483647)>>>0){on(p,k+8|0);break f}v[v[b+240>>2]+(c<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1}if(i){c=a;break e}KF(b,f);c=a;break e}if(i^1|d){c=a;break e}d=v[b+88>>2];g=B(a,44);c=v[d+g>>2];e=c>>>7|0;if((e|0)!=33554431){while(1){KF(b,c);c=v[(v[b+16>>2]+B(e,24)|0)+8>>2];e=c>>>7|0;if((e|0)!=33554431){continue}break}d=v[b+88>>2]}v[k+8>>2]=a;c=v[b+216>>2]+(a>>>3&536870908)|0;v[c>>2]=v[c>>2]|1<>2];v[(d+g|0)+16>>2]=c;if(c>>>0>=(v[b+248>>2]&2147483647)>>>0){on(p,k+8|0);c=a;break e}v[v[b+240>>2]+(c<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1;c=a;break e}c=h+B(l,24)|0;u[c+6>>1]=x[c+6>>1]+1;c=v[b+100>>2]+(a<<2)|0;v[c>>2]=v[c>>2]+1;c=a;break e}if((a|0)==-1){j=v[b+16>>2];if(!n){n=j+B(l,24)|0;if(!(w[n+4|0]&4)){m=v[b+88>>2];t=B(c,44);a=m+t|0;v[(j+B(v[a+4>>2]>>>7|0,24)|0)+8>>2]=g;v[n+12>>2]=v[a+4>>2];v[a+4>>2]=g;j=a+(w[n+5|0]<<2)|0;v[j+8>>2]=v[j+8>>2]+1;l=l<<2;v[l+v[b+204>>2]>>2]=c;j=v[b+180>>2];v[j+l>>2]=v[j+(e<<2)>>2]+1;v[l+v[b+192>>2]>>2]=f;if((d|i)!=1){break d}h=1<>2];f=c>>>5<<2;g:{if(h&v[d+f>>2]){break g}e=v[a>>2];a=e>>>7|0;if((a|0)!=33554431){while(1){KF(b,e);e=v[(v[b+16>>2]+B(a,24)|0)+8>>2];a=e>>>7|0;if((a|0)!=33554431){continue}break}m=v[b+88>>2];d=v[b+216>>2]}v[k+8>>2]=c;a=d+f|0;v[a>>2]=h|v[a>>2];a=v[b+244>>2];v[(m+t|0)+16>>2]=a;if(a>>>0>=(v[b+248>>2]&2147483647)>>>0){on(p,k+8|0);break g}v[v[b+240>>2]+(a<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1}if(i){break e}KF(b,g);break e}if(!d|i){break d}d=v[b+88>>2];g=B(c,44);e=v[d+g>>2];a=e>>>7|0;if((a|0)!=33554431){while(1){KF(b,e);e=v[(v[b+16>>2]+B(a,24)|0)+8>>2];a=e>>>7|0;if((a|0)!=33554431){continue}break}d=v[b+88>>2]}v[k+8>>2]=c;a=v[b+216>>2]+(c>>>3&536870908)|0;v[a>>2]=v[a>>2]|1<>2];v[(d+g|0)+16>>2]=a;if(a>>>0>=(v[b+248>>2]&2147483647)>>>0){on(p,k+8|0);break e}v[v[b+240>>2]+(a<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1;break e}a=j+B(e,24)|0;u[a+6>>1]=x[a+6>>1]+1;a=v[b+100>>2]+(c<<2)|0;v[a>>2]=v[a>>2]+1;break d}h:{if((d|i)!=1){break h}m=1<>2];l=c>>>5<<2;i:{if(m&v[h+l>>2]){break i}i=v[b+88>>2];j=B(c,44);e=v[i+j>>2];d=e>>>7|0;if((d|0)!=33554431){while(1){KF(b,e);e=v[(v[b+16>>2]+B(d,24)|0)+8>>2];d=e>>>7|0;if((d|0)!=33554431){continue}break}h=v[b+216>>2];i=v[b+88>>2]}v[k+8>>2]=c;d=h+l|0;v[d>>2]=m|v[d>>2];d=v[b+244>>2];v[(i+j|0)+16>>2]=d;if(d>>>0>=(v[b+248>>2]&2147483647)>>>0){on(p,k+8|0);h=v[b+216>>2];break i}v[v[b+240>>2]+(d<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1}m=1<>>5<<2;if(m&v[l+h>>2]){break h}i=v[b+88>>2];j=B(a,44);e=v[i+j>>2];d=e>>>7|0;if((d|0)!=33554431){while(1){KF(b,e);e=v[(v[b+16>>2]+B(d,24)|0)+8>>2];d=e>>>7|0;if((d|0)!=33554431){continue}break}h=v[b+216>>2];i=v[b+88>>2]}v[k+8>>2]=a;d=h+l|0;v[d>>2]=m|v[d>>2];d=v[b+244>>2];v[(i+j|0)+16>>2]=d;if(d>>>0>=(v[b+248>>2]&2147483647)>>>0){on(p,k+8|0);break h}v[v[b+240>>2]+(d<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1}e=xa-16|0;xa=e;d=a;j:{k:{h=v[b+88>>2];i=h+B(c,44)|0;a=h+B(a,44)|0;if(v[i+12>>2]+v[i+8>>2]>>>0>v[a+12>>2]+v[a+8>>2]>>>0){PF(b,i,a,c,d,f,g);a=v[b+216>>2]+(d>>>3&536870908)|0;i=v[a>>2];z=a,A=Uaa(-2,d)&i,v[z>>2]=A;v[e+8>>2]=d;if(v[b+12>>2]==(d|0)){v[b+12>>2]=d-1;break k}a=v[b+4>>2];if(a>>>0>=(v[b+8>>2]&2147483647)>>>0){on(b,e+8|0);break k}v[v[b>>2]+(a<<2)>>2]=d;v[b+4>>2]=v[b+4>>2]+1;break k}PF(b,a,i,d,c,g,f);a=v[b+216>>2]+(c>>>3&536870908)|0;i=v[a>>2];z=a,A=Uaa(-2,c)&i,v[z>>2]=A;v[e+12>>2]=c;l:{if(v[b+12>>2]==(c|0)){v[b+12>>2]=c-1;break l}a=v[b+4>>2];if(a>>>0>=(v[b+8>>2]&2147483647)>>>0){on(b,e+12|0);break l}v[v[b>>2]+(a<<2)>>2]=c;v[b+4>>2]=v[b+4>>2]+1}a=f;break j}a=g;g=f;d=c}v[v[b+192>>2]+(a>>>5&134217724)>>2]=g;xa=e+16|0;c=d}if((c|0)==-1){break c}h=v[b+40>>2]}d=v[b+88>>2]+B(c,44)|0;c=v[b+60>>2];a=(o>>>0)/(c>>>0)|0;g=v[(a<<2)+h>>2]+(o-B(a,c)<<4)|0;a=d+(v[g>>2]<<2)|0;d=v[a+28>>2];m:{if((d|0)!=-1){f=(d>>>0)/(c>>>0)|0;v[(v[(f<<2)+h>>2]+(d-B(c,f)<<4)|0)+8>>2]=o;c=v[a+28>>2];break m}v[a+20>>2]=o;c=-1}v[g+12>>2]=c;v[a+28>>2]=o;v[a+36>>2]=v[a+36>>2]+1}q=q+1|0;if(q>>>0>2]){continue}break}}r=r+1|0;if((r|0)!=2){continue}break}xa=k+16|0}function eq(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,u=0,y=0,z=0,A=0,B=0;m=xa-560|0;xa=m;j=v[a+5936>>2]+31>>>5|0;i=a+32|0;if(j>>>0>(v[i+2436>>2]&2147483647)>>>0){h=v[37696]+12|0;e=Ba[v[v[h>>2]+8>>2]](h,j<<2,24422,17999,438)|0;h=v[i+2432>>2];a:{if(!h){break a}H9(e,h,v[i+2436>>2]<<2);if(v[i+2436>>2]<0){break a}f=v[i+2432>>2];if(!f){break a}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,f)}h=v[i+2436>>2];I9(e+(h<<2)|0,0,j-h<<2);v[i+2436>>2]=j;v[i+2432>>2]=e}g=v[i+2372>>2];if(j>>>0>(v[g+24>>2]&2147483647)>>>0){h=v[37696]+12|0;e=Ba[v[v[h>>2]+8>>2]](h,j<<2,24422,17999,438)|0;h=v[g+20>>2];b:{if(!h){break b}H9(e,h,v[g+24>>2]<<2);if(v[g+24>>2]<0){break b}f=v[g+20>>2];if(!f){break b}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,f)}h=v[g+24>>2];I9(e+(h<<2)|0,0,j-h<<2);v[g+24>>2]=j;v[g+20>>2]=e}s=c;if((v[g+40>>2]&2147483647)>>>0>>0){zw(g+32|0,s)}e=v[i+2368>>2];if(j>>>0>(v[e+24>>2]&2147483647)>>>0){c=v[37696]+12|0;f=Ba[v[v[c>>2]+8>>2]](c,j<<2,24422,17999,438)|0;c=v[e+20>>2];c:{if(!c){break c}H9(f,c,v[e+24>>2]<<2);if(v[e+24>>2]<0){break c}h=v[e+20>>2];if(!h){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}c=v[e+24>>2];I9(f+(c<<2)|0,0,j-c<<2);v[e+24>>2]=j;v[e+20>>2]=f}if(s>>>0>(v[e+40>>2]&2147483647)>>>0){zw(e+32|0,s)}v[m+552>>2]=0;v[m+556>>2]=64;z=m+288|0;v[m+548>>2]=z;t[m+544|0]=1;t[m+272|0]=1;v[m+280>>2]=0;v[m+284>>2]=64;c=m+16|0;v[m+276>>2]=c;v[a+2448>>2]=c;c=z;if(s){A=a+16|0;B=a+5584|0;while(1){j=y;y=j+1|0;d:{if(s>>>0<=y>>>0){break d}k=0;h=0;f=0;c=v[(y<<2)+b>>2];e=c+319|0;f=e>>>0<319?1:f;e=(f&63)<<26|e>>>6;g=c>>>6|0;f=(f>>>6|0)-(g>>>0>e>>>0)|0;p=e-g|0;i=f;g=0;n=g;e=p+1|0;f=e?f:f+1|0;o=e&7;if(g|o){while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((o|0)!=(k|0)|(n|0)!=(g|0)){continue}break}}if(!i&p>>>0<7){break d}while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}l=v[(j<<2)+b>>2];c=x[l+4>>1];e:{if((Ba[v[v[l>>2]+28>>2]](l)|0)!=(a|0)){b=v[37696];v[m>>2]=4661;a9(b,8,11709,79,75385,m);break e}v[m+552>>2]=0;v[m+280>>2]=0;f:{g:{h:{switch(c-5|0){case 1:q=l+48|0;c=v[l+52>>2];n=c&1?v[l+56>>2]:(q+v[((c>>>22&60)+89188|0)+12>>2]|0)+8|0;r=l+20|0;c=x[l+24>>1];i:{if(!c){break i}k=0;h=0;f=0;c=v[((c|0)==1?r:v[r>>2])>>2];e=c+207|0;f=e>>>0<207?1:f;e=(f&63)<<26|e>>>6;g=c>>>6|0;f=(f>>>6|0)-(g>>>0>e>>>0)|0;p=e-g|0;i=f;g=0;o=g;e=p+1|0;f=e?f:f+1|0;j=e&7;if(g|j){while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&p>>>0<7){break i}while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}p=w[n|0];k=0;h=0;i=v[l- -64>>2];j:{if(!i){break j}f=0;c=i+51|0;f=c>>>0<51?1:f;g=f>>>6|0;f=(f&63)<<26|c>>>6;e=i>>>6|0;c=g-(e>>>0>f>>>0)|0;u=f-e|0;j=c;f=c;c=u+1|0;f=c?f:f+1|0;e=c;c=0;n=c;o=e&7;k:{if(!(c|o)){c=i;break k}c=i;while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((o|0)!=(k|0)|(n|0)!=(g|0)){continue}break}}if(!j&u>>>0>=7|j){while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}f=0;c=v[i+32>>2];e=c+11|0;f=e>>>0<11?1:f;e=(f&63)<<26|e>>>6;h=c>>>6|0;f=(f>>>6|0)-(h>>>0>e>>>0)|0;n=e-h|0;i=f;h=n+1|0;f=h?f:f+1|0;e=h;h=0;o=h;j=e&7;if(h|j){k=0;while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&n>>>0<7){break j}while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}k=0;h=0;f=0;c=v[(v[a+5932>>2]+(v[a+5936>>2]<<2)|0)-4>>2];e=c+319|0;f=e>>>0<319?1:f;e=(f&63)<<26|e>>>6;g=c>>>6|0;f=(f>>>6|0)-(g>>>0>e>>>0)|0;n=e-g|0;g=0;o=g;i=f;e=n+1|0;f=e?f:f+1|0;j=e&7;if(g|j){while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&n>>>0>=7|i){while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}if(!(p&8)){oh(l+12|0)}hu(r,B,l);Bu(A,q,d,(w[(q+v[((v[l+52>>2]>>>22&60)+89188|0)+12>>2]|0)+8|0]&8)>>>3|0);e=v[l+44>>2];f=v[a+5936>>2]-1|0;v[a+5936>>2]=f;h=v[a+5932>>2];c=e<<2;v[h+c>>2]=v[h+(f<<2)>>2];if(!f|(f|0)==(e|0)){break f}c=v[c+v[a+5932>>2]>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 0:case 1:break g;default:break f};case 0:q=l+48|0;c=v[l+52>>2];n=c&1?v[l+56>>2]:(q+v[((c>>>22&60)+89188|0)+12>>2]|0)+8|0;r=l+20|0;c=x[l+24>>1];l:{if(!c){break l}k=0;h=0;f=0;c=v[((c|0)==1?r:v[r>>2])>>2];e=c+207|0;f=e>>>0<207?1:f;e=(f&63)<<26|e>>>6;g=c>>>6|0;f=(f>>>6|0)-(g>>>0>e>>>0)|0;p=e-g|0;i=f;g=0;o=g;e=p+1|0;f=e?f:f+1|0;j=e&7;if(g|j){while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&p>>>0<7){break l}while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}p=w[n|0];k=0;h=0;i=v[l- -64>>2];m:{if(!i){break m}f=0;c=i+175|0;f=c>>>0<175?1:f;g=f>>>6|0;f=(f&63)<<26|c>>>6;e=i>>>6|0;c=g-(e>>>0>f>>>0)|0;u=f-e|0;j=c;f=c;c=u+1|0;f=c?f:f+1|0;e=c;c=0;n=c;o=e&7;n:{if(!(c|o)){c=i;break n}c=i;while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((o|0)!=(k|0)|(n|0)!=(g|0)){continue}break}}if(!j&u>>>0>=7|j){while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}f=0;c=v[i+32>>2];e=c+11|0;f=e>>>0<11?1:f;e=(f&63)<<26|e>>>6;h=c>>>6|0;f=(f>>>6|0)-(h>>>0>e>>>0)|0;n=e-h|0;i=f;h=n+1|0;f=h?f:f+1|0;e=h;h=0;o=h;j=e&7;if(h|j){k=0;while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&n>>>0<7){break m}while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}k=0;h=0;f=0;c=v[(v[a+5932>>2]+(v[a+5936>>2]<<2)|0)-4>>2];e=c+319|0;f=e>>>0<319?1:f;e=(f&63)<<26|e>>>6;g=c>>>6|0;f=(f>>>6|0)-(g>>>0>e>>>0)|0;n=e-g|0;g=0;o=g;i=f;e=n+1|0;f=e?f:f+1|0;j=e&7;if(g|j){while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&n>>>0>=7|i){while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}if(!(p&8)){oh(l+12|0)}hu(r,B,l);Eu(A,q,d,(w[(q+v[((v[l+52>>2]>>>22&60)+89188|0)+12>>2]|0)+8|0]&8)>>>3|0);e=v[l+44>>2];f=v[a+5936>>2]-1|0;v[a+5936>>2]=f;h=v[a+5932>>2];c=e<<2;v[h+c>>2]=v[h+(f<<2)>>2];if(!f|(f|0)==(e|0)){break f}o:{c=v[c+v[a+5932>>2]>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 0:case 1:break o;default:break f}}v[c+44>>2]=e;break f;default:break h}}a9(v[37696],2,11709,651,22124,0);break e}v[c+44>>2]=e}if((s|0)!=(y|0)){continue}}break}c=v[m+548>>2]}v[a+2448>>2]=0;a=v[m+556>>2];p:{if((a|0)<0|!(a&2147483647)){break p}if((c|0)==(z|0)){t[m+544|0]=0;break p}if(!c){break p}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,c)}a=v[m+284>>2];q:{if((a|0)<0|!(a&2147483647)){break q}b=v[m+276>>2];if((b|0)==(m+16|0)|!b){break q}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}xa=m+560|0}function P4(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=C(0),i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=C(0),q=0,r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=0,U=0,V=0,W=0,X=0;e=xa-96|0;xa=e;v[e+88>>2]=0;v[e+80>>2]=0;v[e+84>>2]=0;j=v[a+32>>2];c=v[j+24>>2];if(c){a:{if(!c){break a}d=B(c,60);if(!d){break a}o=v[37696];b=o+12|0;b=(T=b,U=d,V=Ba[v[v[o>>2]+20>>2]](o)|0?27653:63804,W=16608,X=553,S=v[v[b>>2]+8>>2],Ba[S](T|0,U|0,V|0,W|0,X|0)|0)}f=v[e+80>>2];d=v[e+84>>2];if((d|0)>0){g=B(d,60)+b|0;d=b;while(1){z[d>>2]=z[f>>2];z[d+4>>2]=z[f+4>>2];z[d+8>>2]=z[f+8>>2];z[d+12>>2]=z[f+12>>2];z[d+16>>2]=z[f+16>>2];z[d+20>>2]=z[f+20>>2];z[d+24>>2]=z[f+24>>2];z[d+28>>2]=z[f+28>>2];z[d+32>>2]=z[f+32>>2];z[d+36>>2]=z[f+36>>2];z[d+40>>2]=z[f+40>>2];z[d+44>>2]=z[f+44>>2];o=v[f+52>>2];v[d+48>>2]=v[f+48>>2];v[d+52>>2]=o;v[d+56>>2]=v[f+56>>2];f=f+60|0;d=d+60|0;if(g>>>0>d>>>0){continue}break}f=v[e+80>>2]}if(!(!f|v[e+88>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,f)}v[e+88>>2]=c;v[e+80>>2]=b;j=v[a+32>>2]}b:{if(!v[j+92>>2]){break b}o=e+72|0;d=e+68|0;g=e- -64|0;while(1){D=v[v[j+88>>2]+(l<<2)>>2];if(!v[D+48>>2]){j=v[D>>2];c=v[v[v[j+32>>2]+36>>2]+56>>2];b=v[v[j+36>>2]+56>>2];f=b>>>0>>0?c:b;v[e+68>>2]=f;b=b>>>0>c>>>0?c:b;v[e+64>>2]=b;c=v[v[v[v[j+28>>2]+32>>2]+36>>2]+56>>2];c:{if(c>>>0>>0){v[e+68>>2]=b;v[e+72>>2]=f;b=g;break c}b=o;if(c>>>0>=f>>>0){break c}v[e+72>>2]=f;b=d}v[b>>2]=c;m=e+16|0;r=e+80|0;c=v[r+4>>2];d:{if(c){n=v[m+56>>2];q=v[m+52>>2];i=v[m+48>>2];f=v[r>>2];b=c;while(1){b=b-1|0;k=f+B(b,60)|0;if(!((i|0)!=v[k+48>>2]|(q|0)!=v[k+52>>2])&(n|0)==v[k+56>>2]){break d}if(b){continue}break}}if(c>>>0>=(v[r+8>>2]&2147483647)>>>0){K4(r,m);break d}c=v[r>>2]+B(c,60)|0;z[c>>2]=z[m>>2];z[c+4>>2]=z[m+4>>2];z[c+8>>2]=z[m+8>>2];z[c+12>>2]=z[m+12>>2];z[c+16>>2]=z[m+16>>2];z[c+20>>2]=z[m+20>>2];z[c+24>>2]=z[m+24>>2];z[c+28>>2]=z[m+28>>2];z[c+32>>2]=z[m+32>>2];z[c+36>>2]=z[m+36>>2];z[c+40>>2]=z[m+40>>2];z[c+44>>2]=z[m+44>>2];b=v[m+52>>2];v[c+48>>2]=v[m+48>>2];v[c+52>>2]=b;v[c+56>>2]=v[m+56>>2];v[r+4>>2]=v[r+4>>2]+1}j=v[j+28>>2];if((j|0)!=v[D>>2]){while(1){c=v[v[v[j+32>>2]+36>>2]+56>>2];b=v[v[j+36>>2]+56>>2];f=b>>>0>>0?c:b;v[e+68>>2]=f;b=b>>>0>c>>>0?c:b;v[e+64>>2]=b;c=v[v[v[v[j+28>>2]+32>>2]+36>>2]+56>>2];e:{if(c>>>0>>0){v[e+68>>2]=b;v[e+72>>2]=f;b=g;break e}b=o;if(c>>>0>=f>>>0){break e}v[e+72>>2]=f;b=d}v[b>>2]=c;c=v[e+84>>2];f:{if(c){n=v[e+72>>2];q=v[e+68>>2];i=v[e+64>>2];f=v[e+80>>2];b=c;while(1){b=b-1|0;k=f+B(b,60)|0;if(!((i|0)!=v[k+48>>2]|(q|0)!=v[k+52>>2])&(n|0)==v[k+56>>2]){break f}if(b){continue}break}}if(c>>>0>=(v[e+88>>2]&2147483647)>>>0){K4(e+80|0,e+16|0);break f}c=v[e+80>>2]+B(c,60)|0;z[c>>2]=z[e+16>>2];z[c+4>>2]=z[e+20>>2];z[c+8>>2]=z[e+24>>2];z[c+12>>2]=z[e+28>>2];z[c+16>>2]=z[e+32>>2];z[c+20>>2]=z[e+36>>2];z[c+24>>2]=z[e+40>>2];z[c+28>>2]=z[e+44>>2];z[c+32>>2]=z[e+48>>2];z[c+36>>2]=z[e+52>>2];z[c+40>>2]=z[e+56>>2];z[c+44>>2]=z[e+60>>2];b=v[g+4>>2];v[c+48>>2]=v[g>>2];v[c+52>>2]=b;v[c+56>>2]=v[g+8>>2];v[e+84>>2]=v[e+84>>2]+1}j=v[j+28>>2];if((j|0)!=v[D>>2]){continue}break}}j=v[a+32>>2]}l=l+1|0;c=v[j+92>>2];if(l>>>0>>0){continue}break}g=v[j+24>>2];if(!g|!c){break b}o=v[j+36>>2];d=v[j+88>>2];k=0;while(1){f=o+B(k,24)|0;b=0;while(1){i=v[d+(b<<2)>>2];g:{if(v[i+48>>2]){break g}h=C(C(C(z[i+20>>2]*z[f+8>>2])+C(C(z[i+12>>2]*z[f>>2])+C(z[f+4>>2]*z[i+16>>2])))-z[i+40>>2]);if(!(h>C(0))|!(h>z[i+44>>2])){break g}z[i+44>>2]=h}b=b+1|0;if((c|0)!=(b|0)){continue}break}k=k+1|0;if((g|0)!=(k|0)){continue}break}}h:{i:{k=v[e+84>>2];if(!k){b=0;t[e+20|0]=0;break i}g=v[j+76>>2];f=v[j+64>>2];n=0;o=v[e+80>>2];while(1){i=o+B(n,60)|0;d=v[i+48>>2];b=(d>>>0)/(f>>>0)|0;c=v[g+(b<<2)>>2]+(d-B(b,f)<<6)|0;h=z[c+40>>2];p=z[c+44>>2];d=v[c+16>>2];b=v[c+12>>2];z[i+8>>2]=z[c+20>>2];v[i>>2]=b;v[i+4>>2]=d;z[i+12>>2]=C(-h)-(p>C(0)?p:C(0));d=v[i+52>>2];b=(d>>>0)/(f>>>0)|0;c=v[g+(b<<2)>>2]+(d-B(b,f)<<6)|0;h=z[c+40>>2];p=z[c+44>>2];d=v[c+16>>2];b=v[c+12>>2];z[i+24>>2]=z[c+20>>2];v[i+16>>2]=b;v[i+20>>2]=d;z[i+28>>2]=C(-h)-(p>C(0)?p:C(0));d=v[i+56>>2];b=(d>>>0)/(f>>>0)|0;c=v[g+(b<<2)>>2]+(d-B(b,f)<<6)|0;h=z[c+40>>2];p=z[c+44>>2];d=v[c+16>>2];b=v[c+12>>2];z[i+40>>2]=z[c+20>>2];v[i+32>>2]=b;v[i+36>>2]=d;z[i+44>>2]=C(-h)-(p>C(0)?p:C(0));n=n+1|0;if((n|0)!=(k|0)){continue}break}b=B(k,12);d=b>>>0>1024;t[e+20|0]=d;if(!d){break i}n=t9(b,13134,2169);v[e+16>>2]=n;k=v[e+84>>2];o=1;break h}n=e-(b+15&-16)|0;xa=n;v[e+16>>2]=n;o=0}if(k){f=0;b=v[e+80>>2];while(1){I=C(0);J=C(1);K=C(0);L=C(0);M=C(1);N=C(0);O=C(0);P=C(0);Q=C(1);g=b+B(f,60)|0;u=z[g+32>>2];E=z[g+4>>2];F=z[g+24>>2];w=z[g+8>>2];G=z[g+20>>2];R=C(C(E*F)-C(w*G));x=z[g>>2];H=z[g+40>>2];y=z[g+36>>2];s=C(C(G*H)-C(F*y));A=z[g+16>>2];p=C(H*E);h=C(C(u*R)+C(C(x*s)+C(A*C(C(y*w)-p))));if(h!=C(0)){h=C(C(1)/h);Q=C(C(C(x*G)+C(A*C(-E)))*h);M=C(C(C(x*H)-C(w*u))*h);K=C(C(C(A*y)-C(G*u))*h);J=C(s*h);N=C(h*C(-C(C(x*y)-C(E*u))));L=C(h*C(-C(p+C(w*C(-y)))));I=C(h*C(-C(C(A*H)-C(u*F))));O=C(R*h);P=C(h*C(-C(C(x*F)-C(w*A))))}d=B(f,12)+n|0;s=z[g+12>>2];p=z[g+28>>2];h=z[g+44>>2];z[d+8>>2]=-C(C(C(K*s)+C(N*p))+C(Q*h));z[d+4>>2]=-C(C(C(I*s)+C(M*p))+C(P*h));z[d>>2]=-C(C(C(J*s)+C(L*p))+C(O*h));f=f+1|0;if((k|0)!=(f|0)){continue}break}}d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?38977:63804;l=Ba[v[v[d+12>>2]+8>>2]](d+12|0,320,b,13134,2177)|0;b=v[a+32>>2];z4(l,v[b>>2],v[b+4>>2]);B4(l,v[e+84>>2]);q=v[e+84>>2];v[l+24>>2]=q;j:{if(!q){break j}i=v[l+36>>2];b=0;if((q|0)!=1){d=q&-2;k=0;while(1){c=i+B(b,24)|0;g=B(b,12)+n|0;z[c>>2]=z[g>>2];z[c+4>>2]=z[g+4>>2];h=z[g+8>>2];v[c+12>>2]=b;z[c+8>>2]=h;c=b|1;f=i+B(c,24)|0;g=B(c,12)+n|0;z[f>>2]=z[g>>2];z[f+4>>2]=z[g+4>>2];h=z[g+8>>2];v[f+12>>2]=c;z[f+8>>2]=h;b=b+2|0;k=k+2|0;if((d|0)!=(k|0)){continue}break}}if(!(q&1)){break j}g=i+B(b,24)|0;d=B(b,12)+n|0;z[g>>2]=z[d>>2];z[g+4>>2]=z[d+4>>2];h=z[d+8>>2];v[g+12>>2]=b;z[g+8>>2]=h}f=0;k:{l:{switch(H4(l)|0){case 1:b=v[l+36>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);v[l+36>>2]=0}v[l+92>>2]=0;A4(l);a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,l);f=1;break k;case 0:case 2:case 3:b=v[a+32>>2];g=v[b+36>>2];m:{n:{if(!g){v[b+92>>2]=0;break n}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g);v[b+36>>2]=0;d=b;b=v[a+32>>2];v[d+92>>2]=0;if(!b){break m}}A4(b);d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[a+32>>2]=l;break k;case 4:break l;default:break k}}b=v[l+36>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);v[l+36>>2]=0}v[l+92>>2]=0;A4(l);a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,l);f=3}if(o){u9(n)}a=v[e+88>>2];o:{if((a|0)<0|!(a&2147483647)){break o}b=v[e+80>>2];if(!b){break o}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}xa=e+96|0;return f} -function WX(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0);l=xa-208|0;xa=l;k=xa-272|0;xa=k;v[k+264>>2]=0;v[k+268>>2]=0;v[k+256>>2]=0;v[k+260>>2]=0;I=z[d+8>>2];J=z[d+4>>2];L=z[d>>2];G=z[e+8>>2];D=z[e+4>>2];B=z[e>>2];v[k+240>>2]=1;H=v[b+4>>2];x=z[H+52>>2];y=z[H+56>>2];s=v[a+4>>2];p=z[s+56>>2];u=z[s+52>>2];q=z[s+72>>2];A=z[s+68>>2];T=z[H+48>>2];U=z[s+48>>2];V=z[s+64>>2];m=z[c+8>>2];n=z[c>>2];r=z[c+4>>2];v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;v[k+208>>2]=0;v[k+212>>2]=0;v[k+216>>2]=0;v[k+220>>2]=0;v[k+224>>2]=0;v[k+228>>2]=0;v[k+232>>2]=0;v[k+236>>2]=0;v[k+188>>2]=0;v[k+192>>2]=0;s=C(C(m*m)+C(C(n*n)+C(r*r)))>C(1.1920928955078125e-7);n=s?n:C(1);M=n;m=s?m:C(0);X=C(n*n);n=s?r:C(0);r=C(C(1)/C(K(C(C(m*m)+C(X+C(n*n))))));E=C(M*r);O=C(-E);n=C(n*r);m=C(m*r);s=C(C(C(U*O)-C(u*n))-C(p*m))>C(C(C(V*O)-C(A*n))-C(q*m));r=s?p:q;m=m>C(0)?y:C(-y);p=C(r-m);z[k+184>>2]=p;y=s?u:A;n=n>C(0)?x:C(-x);u=C(y-n);z[k+180>>2]=u;x=s?U:V;A=E>C(0)?T:C(-T);q=C(x-A);z[k+176>>2]=q;v[k+132>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+160>>2]=0;v[k+164>>2]=0;v[k+168>>2]=0;v[k+172>>2]=0;v[k+124>>2]=0;v[k+128>>2]=0;z[k+120>>2]=r;z[k+116>>2]=y;z[k+112>>2]=x;v[k+68>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+96>>2]=0;v[k+100>>2]=0;v[k+104>>2]=0;v[k+108>>2]=0;v[k+60>>2]=0;v[k+64>>2]=0;z[k+56>>2]=m;z[k+52>>2]=n;z[k+48>>2]=A;m=C(-p);n=C(-u);r=C(-q);A=C(C(p*p)+C(C(q*q)+C(u*u)));x=z[H+24>>2];x=C((xZ)){x=r;y=n;i=m;T=q;U=u;V=p;break b}O=C(x+i);ea=C(O*O);L=C(C(B*C(0))+L);J=C(C(D*C(0))+J);I=C(C(G*C(0))+I);i=m;y=n;x=r;while(1){T=q;U=u;V=p;q=C(C(1)/C(K(C(C(m*m)+C(C(r*r)+C(n*n))))));p=C(r*q);o=v[a+4>>2];G=z[o+48>>2];E=z[o+56>>2];u=C(m*q);q=C(n*q);B=z[o+52>>2];P=z[o+72>>2];D=z[o+64>>2];Q=z[o+68>>2];o=C(C(E*u)+C(C(G*p)+C(q*B)))>C(C(P*u)+C(C(D*p)+C(q*Q)));Y=o?G:D;s=v[b+4>>2];G=z[s+48>>2];G=p>2];_=q>2];$=uC(0)){o=0;ba=z[e+8>>2];X=C(u*ba);u=z[e>>2];M=q;q=z[e+4>>2];M=C(X+C(C(p*u)+C(M*q)));if(M>=C(0)){break a}p=N;N=C(p-C(aa/M));if(N>p){if(N>C(1)){break a}y=z[d+8>>2];x=z[d+4>>2];i=z[d>>2];v[k+92>>2]=0;v[k+76>>2]=0;v[k+60>>2]=0;p=C(i+C(u*N));i=C(p-L);A=C(i+z[k+80>>2]);z[k+80>>2]=A;u=C(x+C(q*N));x=C(u-J);L=C(x+z[k+84>>2]);z[k+84>>2]=L;q=C(y+C(ba*N));y=C(q-I);J=C(y+z[k+88>>2]);z[k+88>>2]=J;I=C(i+z[k+64>>2]);z[k+64>>2]=I;D=C(x+z[k+68>>2]);z[k+68>>2]=D;B=C(y+z[k+72>>2]);z[k+72>>2]=B;i=C(i+z[k+48>>2]);z[k+48>>2]=i;x=C(x+z[k+52>>2]);z[k+52>>2]=x;y=C(y+z[k+56>>2]);z[k+56>>2]=y;E=z[k+112>>2];R=z[k+116>>2];S=z[k+120>>2];v[k+188>>2]=0;z[k+184>>2]=S-y;z[k+180>>2]=R-x;z[k+176>>2]=E-i;i=z[k+128>>2];x=z[k+132>>2];y=z[k+136>>2];v[k+204>>2]=0;z[k+200>>2]=y-B;z[k+196>>2]=x-D;z[k+192>>2]=i-I;i=z[k+144>>2];x=z[k+148>>2];y=z[k+152>>2];v[k+220>>2]=0;z[k+216>>2]=y-J;z[k+212>>2]=x-L;z[k+208>>2]=i-A;W=C($+q);E=C(P-W);S=C(_+u);B=C(Q-S);R=C(G+p);D=C(Y-R);x=r;y=n;i=m;L=p;J=u;I=q;p=C(34028234663852886e22)}else{p=A}}else{p=A}G=p;s=v[k+240>>2];H=s<<4;o=H+(k+112|0)|0;v[o+12>>2]=0;z[o+8>>2]=P;z[o+4>>2]=Q;z[o>>2]=Y;o=H+(k+48|0)|0;v[o+12>>2]=0;z[o+8>>2]=W;z[o+4>>2]=S;z[o>>2]=R;o=H+(k+176|0)|0;v[o+12>>2]=0;z[o+8>>2]=E;z[o+4>>2]=B;z[o>>2]=D;v[k+240>>2]=s+1;c:{d:{switch(s-1|0){case 0:p=z[k+184>>2];m=C(z[k+200>>2]-p);u=z[k+176>>2];n=C(z[k+192>>2]-u);q=z[k+180>>2];r=C(z[k+196>>2]-q);A=C(C(m*m)+C(C(n*n)+C(r*r)));if(A<=C(1.1920928955078125e-7)){v[k+240>>2]=1;o=v[k+180>>2];v[k+32>>2]=v[k+176>>2];v[k+36>>2]=o;o=v[k+188>>2];v[k+40>>2]=v[k+184>>2];v[k+44>>2]=o;break c}M=m;m=C(F(C(C(C(C(C(-u)*n)-C(r*q))-C(p*m))/A),C(1)));m=m>C(0)?m:C(0);z[k+40>>2]=p+C(M*m);z[k+36>>2]=q+C(r*m);z[k+32>>2]=u+C(n*m);break c;case 1:JV(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break c;case 2:N_(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break c;default:break d}}z[k+40>>2]=E;z[k+36>>2]=B;z[k+32>>2]=D}p=z[k+40>>2];m=C(-p);u=z[k+36>>2];n=C(-u);q=z[k+32>>2];r=C(-q);A=C(C(p*p)+C(C(q*q)+C(u*u)));if(ea>2]+32|0];D=C(0);B=C(0);s=!(A>Z)|o;i=s?i:m;m=s?x:r;n=s?y:n;r=C(K(C(C(i*i)+C(C(m*m)+C(n*n)))));if(!(r<=C(1.1920928955078125e-7))){y=i;i=C(C(1)/r);ca=C(y*i);B=C(m*i);D=C(n*i)}v[l+188>>2]=0;z[l+184>>2]=-ca;z[l+180>>2]=-D;z[l+176>>2]=-B;z[l+160>>2]=N;v[l+172>>2]=v[k+252>>2];s=v[k+248>>2];v[l+164>>2]=v[k+244>>2];v[l+168>>2]=s;v[k+44>>2]=0;z[k+40>>2]=o?V:p;z[k+36>>2]=o?U:u;z[k+32>>2]=o?T:q;o=v[k+268>>2];H=v[k+264>>2];v[k+24>>2]=H;v[k+28>>2]=o;s=v[k+260>>2];da=v[k+256>>2];v[k+16>>2]=da;v[k+20>>2]=s;v[k+8>>2]=H;v[k+12>>2]=o;v[k>>2]=da;v[k+4>>2]=s;IV(k+176|0,k+112|0,k+48|0,k+32|0,k+16|0,k,v[k+240>>2]);i=z[v[a+4>>2]+16>>2];m=z[k+16>>2];n=z[k+20>>2];r=z[k+24>>2];v[l+204>>2]=0;z[l+200>>2]=r+(d?C(ca*i):C(-0));z[l+196>>2]=n+(d?C(D*i):C(-0));z[l+192>>2]=m+(d?C(B*i):C(-0));o=1}xa=k+272|0;if(o){d=v[l+164>>2];v[f>>2]=v[l+160>>2];v[f+4>>2]=d;d=v[l+172>>2];v[f+8>>2]=v[l+168>>2];v[f+12>>2]=d;if(!(!j|z[l+160>>2]!=C(0))){d=v[a+4>>2];j=v[b+4>>2];z[l+144>>2]=C(z[d+16>>2]+z[j+16>>2])*C(100);t[l+135|0]=0;v[l+88>>2]=0;v[l+92>>2]=0;v[l+80>>2]=0;v[l+84>>2]=0;v[l+72>>2]=0;v[l+76>>2]=0;k=l- -64|0;v[k>>2]=0;v[k+4>>2]=0;v[l+56>>2]=0;v[l+60>>2]=0;v[l+48>>2]=0;v[l+52>>2]=0;v[l+112>>2]=0;v[l+40>>2]=141148;v[l+44>>2]=d;v[l+32>>2]=141808;v[l+36>>2]=j;e:{f:{if(XX(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}v[l+16>>2]=1065353216;c=v[l+28>>2];v[l+8>>2]=v[l+24>>2];v[l+12>>2]=c;c=v[l+20>>2];v[l>>2]=v[l+16>>2];v[l+4>>2]=c;if(J_(a,b,l+140|0,l+136|0,w[l+135|0],0,l,l+48|0)-5>>>0<=1){break f}v[l+200>>2]=0;v[l+204>>2]=0;v[l+192>>2]=0;v[l+196>>2]=0;i=z[e+8>>2];m=z[e>>2];n=z[e+4>>2];v[l+188>>2]=0;r=C(C(1)/C(K(C(C(i*i)+C(C(m*m)+C(n*n))))));z[l+184>>2]=r*C(-i);z[l+180>>2]=r*C(-n);z[l+176>>2]=r*C(-m);i=C(0);break e}a=v[l+60>>2];v[l+200>>2]=v[l+56>>2];v[l+204>>2]=a;a=v[l+52>>2];v[l+192>>2]=v[l+48>>2];v[l+196>>2]=a;a=v[l+84>>2];v[l+176>>2]=v[l+80>>2];v[l+180>>2]=a;a=v[l+92>>2];v[l+184>>2]=v[l+88>>2];v[l+188>>2]=a;i=z[l+112>>2]}z[f>>2]=i>2];v[h>>2]=v[l+192>>2];v[h+4>>2]=a;a=v[l+204>>2];v[h+8>>2]=v[l+200>>2];v[h+12>>2]=a;a=v[l+180>>2];v[g>>2]=v[l+176>>2];v[g+4>>2]=a;a=v[l+188>>2];v[g+8>>2]=v[l+184>>2];v[g+12>>2]=a}xa=l+208|0;return o}function AU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=C(0),i=0,j=0,k=0,l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,t=0,w=0,D=C(0),E=C(0),F=C(0),G=0,H=0,I=0,J=0,K=0,L=0;d=xa-80|0;xa=d;o=-1;a:{b:{c:{switch(v[b>>2]-2|0){case 1:o=wU(a+28|0,v[a+8>>2]<<16|4);v[d+8>>2]=o;c=v[b+12>>2];v[d+24>>2]=v[b+8>>2];v[d+28>>2]=c;c=v[b+20>>2];v[d+32>>2]=v[b+16>>2];v[d+36>>2]=c;c=v[b+28>>2];v[d+40>>2]=v[b+24>>2];v[d+44>>2]=c;c=v[b+4>>2];v[d+16>>2]=v[b>>2];v[d+20>>2]=c;z[d+48>>2]=z[b+32>>2];z[d+52>>2]=z[b+36>>2];z[d+56>>2]=z[b+40>>2];z[d+60>>2]=z[b+44>>2];z[d- -64>>2]=z[b+48>>2];z[d+68>>2]=z[b+52>>2];z[d+72>>2]=z[b+56>>2];b=v[a+8>>2];if(b>>>0>=(v[a+12>>2]&2147483647)>>>0){f=d+8|0;b=v[a+12>>2];s=b&2147483647?b<<1:1;d:{if(!s){break d}c=B(s,72);if(!c){break d}e=v[37696];b=Ba[v[v[e>>2]+20>>2]](e)|0?43365:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,b,16608,553)|0}b=v[a+8>>2];if((b|0)>0){k=B(b,72)+e|0;c=v[a+4>>2];b=e;while(1){v[b>>2]=v[c>>2];g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;g=v[c+20>>2];v[b+16>>2]=v[c+16>>2];v[b+20>>2]=g;g=v[c+28>>2];v[b+24>>2]=v[c+24>>2];v[b+28>>2]=g;g=v[c+36>>2];v[b+32>>2]=v[c+32>>2];v[b+36>>2]=g;z[b+40>>2]=z[c+40>>2];z[b+44>>2]=z[c+44>>2];z[b+48>>2]=z[c+48>>2];z[b+52>>2]=z[c+52>>2];z[b+56>>2]=z[c+56>>2];z[b+60>>2]=z[c+60>>2];z[b- -64>>2]=z[c- -64>>2];c=c+72|0;b=b+72|0;if(k>>>0>b>>>0){continue}break}b=v[a+8>>2]}c=B(b,72)+e|0;v[c>>2]=v[f>>2];b=v[f+12>>2];v[c+8>>2]=v[f+8>>2];v[c+12>>2]=b;b=v[f+20>>2];v[c+16>>2]=v[f+16>>2];v[c+20>>2]=b;b=v[f+28>>2];v[c+24>>2]=v[f+24>>2];v[c+28>>2]=b;b=v[f+36>>2];v[c+32>>2]=v[f+32>>2];v[c+36>>2]=b;z[c+40>>2]=z[f+40>>2];z[c+44>>2]=z[f+44>>2];z[c+48>>2]=z[f+48>>2];z[c+52>>2]=z[f+52>>2];z[c+56>>2]=z[f+56>>2];z[c+60>>2]=z[f+60>>2];z[c- -64>>2]=z[f- -64>>2];e:{if(v[a+12>>2]<0){break e}c=v[a+4>>2];if(!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[a+12>>2]=s;v[a+4>>2]=e;v[a+8>>2]=v[a+8>>2]+1;break b}e=v[a+4>>2]+B(b,72)|0;v[e>>2]=o;b=v[d+20>>2];v[e+8>>2]=v[d+16>>2];v[e+12>>2]=b;b=v[d+28>>2];v[e+16>>2]=v[d+24>>2];v[e+20>>2]=b;b=v[d+36>>2];v[e+24>>2]=v[d+32>>2];v[e+28>>2]=b;b=v[d+44>>2];v[e+32>>2]=v[d+40>>2];v[e+36>>2]=b;z[e+40>>2]=z[d+48>>2];z[e+44>>2]=z[d+52>>2];z[e+48>>2]=z[d+56>>2];z[e+52>>2]=z[d+60>>2];z[e+56>>2]=z[d+64>>2];z[e+60>>2]=z[d+68>>2];z[e- -64>>2]=z[d+72>>2];v[a+8>>2]=v[a+8>>2]+1;break b;case 0:break c;default:break a}}o=wU(a+28|0,v[a+20>>2]<<16|3);v[d+8>>2]=o;c=v[b+12>>2];v[d+24>>2]=v[b+8>>2];v[d+28>>2]=c;c=v[b+20>>2];v[d+32>>2]=v[b+16>>2];v[d+36>>2]=c;c=v[b+28>>2];v[d+40>>2]=v[b+24>>2];v[d+44>>2]=c;c=v[b+4>>2];v[d+16>>2]=v[b>>2];v[d+20>>2]=c;z[d+48>>2]=z[b+32>>2];z[d+52>>2]=z[b+36>>2];z[d+56>>2]=z[b+40>>2];z[d+60>>2]=z[b+44>>2];c=v[b+52>>2];f=d- -64|0;v[f>>2]=v[b+48>>2];v[f+4>>2]=c;b=v[a+20>>2];if(b>>>0>=(v[a+24>>2]&2147483647)>>>0){b=v[a+24>>2];k=b&2147483647?b<<1:1;f:{if(!k){break f}c=k<<6;if(!c){break f}e=v[37696];b=Ba[v[v[e>>2]+20>>2]](e)|0?43535:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,b,16608,553)|0}b=v[a+20>>2];if((b|0)>0){g=(b<<6)+e|0;c=v[a+16>>2];b=e;while(1){v[b>>2]=v[c>>2];f=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=f;f=v[c+20>>2];v[b+16>>2]=v[c+16>>2];v[b+20>>2]=f;f=v[c+28>>2];v[b+24>>2]=v[c+24>>2];v[b+28>>2]=f;f=v[c+36>>2];v[b+32>>2]=v[c+32>>2];v[b+36>>2]=f;z[b+40>>2]=z[c+40>>2];z[b+44>>2]=z[c+44>>2];z[b+48>>2]=z[c+48>>2];z[b+52>>2]=z[c+52>>2];f=v[c+60>>2];v[b+56>>2]=v[c+56>>2];v[b+60>>2]=f;c=c- -64|0;b=b- -64|0;if(g>>>0>b>>>0){continue}break}b=v[a+20>>2]}c=(b<<6)+e|0;v[c>>2]=v[d+8>>2];b=v[d+20>>2];v[c+8>>2]=v[d+16>>2];v[c+12>>2]=b;b=v[d+28>>2];v[c+16>>2]=v[d+24>>2];v[c+20>>2]=b;b=v[d+36>>2];v[c+24>>2]=v[d+32>>2];v[c+28>>2]=b;b=v[d+44>>2];v[c+32>>2]=v[d+40>>2];v[c+36>>2]=b;z[c+40>>2]=z[d+48>>2];z[c+44>>2]=z[d+52>>2];z[c+48>>2]=z[d+56>>2];z[c+52>>2]=z[d+60>>2];b=v[d+68>>2];v[c+56>>2]=v[d+64>>2];v[c+60>>2]=b;g:{if(v[a+24>>2]<0){break g}c=v[a+16>>2];if(!c){break g}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[a+24>>2]=k;v[a+16>>2]=e;v[a+20>>2]=v[a+20>>2]+1;break b}e=v[a+16>>2]+(b<<6)|0;v[e>>2]=o;b=v[d+20>>2];v[e+8>>2]=v[d+16>>2];v[e+12>>2]=b;b=v[d+28>>2];v[e+16>>2]=v[d+24>>2];v[e+20>>2]=b;b=v[d+36>>2];v[e+24>>2]=v[d+32>>2];v[e+28>>2]=b;b=v[d+44>>2];v[e+32>>2]=v[d+40>>2];v[e+36>>2]=b;z[e+40>>2]=z[d+48>>2];z[e+44>>2]=z[d+52>>2];z[e+48>>2]=z[d+56>>2];z[e+52>>2]=z[d+60>>2];b=v[d+68>>2];v[e+56>>2]=v[d+64>>2];v[e+60>>2]=b;v[a+20>>2]=v[a+20>>2]+1}j=xa-32|0;xa=j;G=v[a+56>>2];if(v[G+72>>2]){while(1){i=v[v[G+68>>2]+(H<<2)>>2];t=A[i+432>>3];w=A[i+440>>3];z[j+24>>2]=A[i+448>>3];z[j+20>>2]=w;z[j+16>>2]=t;l=z[i+28>>2];h=z[i+32>>2];z[j+8>>2]=-z[i+36>>2];z[j+4>>2]=-h;z[j>>2]=-l;J=j+16|0;l=C(Ba[v[v[i>>2]+8>>2]](i));m=0;e=xa-80|0;xa=e;v[e+76>>2]=o;h:{if(v[i+264>>2]==-1){break h}v[e+32>>2]=0;v[e+36>>2]=0;v[e+40>>2]=0;v[e+44>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;u[e+20>>1]=0;v[e+16>>2]=-1;v[e+8>>2]=0;v[e+12>>2]=0;v[e+56>>2]=0;v[e+48>>2]=2139095039;v[e+52>>2]=0;s=e+8|0;b=xa+-64|0;xa=b;f=v[a+36>>2];c=v[e+76>>2];k=c&65535;i:{if(f>>>0<=k>>>0){break i}g=x[v[a+40>>2]+(k<<1)>>1];if((g|0)==65535|f>>>0<=g>>>0|x[v[a+48>>2]+(k<<1)>>1]!=(c>>>16|0)){break i}f=v[v[a+28>>2]+(g<<2)>>2];if(!f){break i}c=f>>>16|0;if((f&65535)==4){k=v[35395];g=v[a+4>>2]+B(c,72)|0;f=v[g+60>>2];c=v[g+56>>2];z[b+60>>2]=z[g- -64>>2];v[b+52>>2]=c;v[b+56>>2]=f;v[b+48>>2]=3;I=A[g+16>>3];t=A[g+24>>3];w=A[g+32>>3];z[b+16>>2]=z[g+40>>2];z[b+20>>2]=z[g+44>>2];z[b+24>>2]=z[g+48>>2];h=z[g+52>>2];z[b+40>>2]=w;z[b+36>>2]=t;z[b+32>>2]=I;z[b+28>>2]=h;u[b+8>>1]=0;if(!(Ba[k|0](b+48|0,b+16|0,J,j,l,b+8|0,1,s)|0)){break i}m=g+8|0;break i}k=v[35394];g=v[a+16>>2]+(c<<6)|0;f=v[g+60>>2];c=v[g+56>>2];v[b+48>>2]=2;K=b,L=Vaa(c,f),v[K+52>>2]=L;v[b+56>>2]=Aa;I=A[g+16>>3];t=A[g+24>>3];w=A[g+32>>3];z[b+16>>2]=z[g+40>>2];z[b+20>>2]=z[g+44>>2];z[b+24>>2]=z[g+48>>2];h=z[g+52>>2];z[b+40>>2]=w;z[b+36>>2]=t;z[b+32>>2]=I;z[b+28>>2]=h;u[b>>1]=0;if(!(Ba[k|0](b+48|0,b+16|0,J,j,l,b,1,s)|0)){break i}m=g+8|0}xa=b- -64|0;if(!m){break h}p=z[e+32>>2];r=z[j+8>>2];q=z[e+24>>2];l=z[j>>2];n=z[e+28>>2];h=z[j+4>>2];if(!(C(C(p*r)+C(C(q*l)+C(n*h)))>2]*r)+C(C(z[i+316>>2]*l)+C(h*z[i+320>>2]))))){break h}b=v[e+76>>2];z[i+324>>2]=p;z[i+320>>2]=n;z[i+316>>2]=q;v[i+264>>2]=b;D=z[m+40>>2];h=C(p-C(A[m+24>>3]));E=C(h+h);F=z[m+32>>2];h=C(q-C(A[m+8>>3]));p=C(h+h);q=z[m+36>>2];h=C(n-C(A[m+16>>3]));r=C(h+h);l=C(C(D*E)+C(C(F*p)+C(q*r)));n=z[m+44>>2];h=C(C(n*n)+C(-.5));z[i+312>>2]=C(D*l)+C(C(E*h)-C(n*C(C(F*r)-C(p*q))));z[i+308>>2]=C(q*l)+C(C(r*h)-C(n*C(C(D*p)-C(E*F))));z[i+304>>2]=C(F*l)+C(C(p*h)-C(n*C(C(q*E)-C(r*D))))}xa=e+80|0;H=H+1|0;if(H>>>0>2]){continue}break}}xa=j+32|0}xa=d+80|0;return o|0}function CM(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=C(l);m=m|0;n=n|0;var o=0,p=0,q=0;f=xa+-64|0;xa=f;e=v[j+4>>2];v[a+576>>2]=v[j>>2];v[a+580>>2]=e;v[a+608>>2]=v[j+32>>2];e=v[j+28>>2];v[a+600>>2]=v[j+24>>2];v[a+604>>2]=e;e=v[j+20>>2];v[a+592>>2]=v[j+16>>2];v[a+596>>2]=e;e=v[j+12>>2];v[a+584>>2]=v[j+8>>2];v[a+588>>2]=e;z[a+56>>2]=C(1)/l;z[a+52>>2]=l;z[a+68>>2]=z[m>>2];z[a+72>>2]=z[m+4>>2];z[a+76>>2]=z[m+8>>2];g=v[b+412>>2];h=v[b+320>>2];if(h){i=v[b+316>>2];e=v[b+148>>2];k=v[b+128>>2];j=0;while(1){m=v[i+(j<<2)>>2];n=(m>>>0)/(e>>>0)|0;m=v[v[k+(n<<2)>>2]+(m-B(e,n)<<2)>>2];if(m){t[m+42|0]=0}j=j+1|0;if((h|0)!=(j|0)){continue}break}}e=v[a+180>>2];v[e+608>>2]=v[b+308>>2];a:{if(g){v[e+604>>2]=v[b+284>>2];h=v[b+344>>2];break a}v[e+604>>2]=0;h=0}v[e+600>>2]=h;v[a+568>>2]=0;e=v[a+368>>2];j=v[e>>2];v[e>>2]=0;if(j){m=j;while(1){e=v[m>>2];iB(m);m=e;if(e){continue}break}while(1){e=v[j>>2];h=v[a+368>>2];v[j>>2]=v[h>>2];v[h>>2]=j;j=e;if(e){continue}break}}if(g){Ba[v[v[d>>2]+16>>2]](d);g=vr(v[a+620>>2],40);e=v[a+636>>2];h=v[a+632>>2];v[g+24>>2]=0;v[g+16>>2]=0;v[g+8>>2]=h;v[g+12>>2]=e;v[g+36>>2]=d;v[g+32>>2]=b;v[g+28>>2]=a;v[g>>2]=132604;v[g+20>>2]=c;v[g+24>>2]=1;if(c){Ba[v[v[c>>2]+16>>2]](c);v[g+16>>2]=v[v[g+20>>2]+16>>2]}v[a+192>>2]=0;v[a+196>>2]=0;v[a+216>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+200>>2]=0;n=v[b+304>>2];j=v[b+308>>2];v[a+564>>2]=j;h=a+472|0;k=v[b+296>>2];i=v[b+284>>2];e=i+j|0;c=v[a+480>>2]&2147483647;b:{if(e>>>0<=c>>>0){break b}d=e+32&-32;if(d>>>0>(v[a+536>>2]&2147483647)>>>0){zw(a+528|0,d);c=v[a+480>>2]&2147483647}if(c>>>0>>0){DM(h,d)}if(d>>>0>(v[a+492>>2]&2147483647)>>>0){EM(a+484|0,d)}if(d>>>0<=(v[a+504>>2]&2147483647)>>>0){break b}FM(a+496|0,d)}v[f+56>>2]=0;v[f+60>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;d=e+1|0;if(d>>>0>(v[h+8>>2]&2147483647)>>>0){DM(h,d)}c=v[h+4>>2];if((c|0)<(d|0)){e=v[h>>2];m=e+(d<<6)|0;e=e+(c<<6)|0;while(1){z[e>>2]=z[f>>2];z[e+4>>2]=z[f+4>>2];z[e+8>>2]=z[f+8>>2];v[e+12>>2]=v[f+12>>2];z[e+16>>2]=z[f+16>>2];z[e+20>>2]=z[f+20>>2];z[e+24>>2]=z[f+24>>2];v[e+28>>2]=v[f+28>>2];z[e+32>>2]=z[f+32>>2];z[e+36>>2]=z[f+36>>2];z[e+40>>2]=z[f+40>>2];z[e+44>>2]=z[f+44>>2];z[e+48>>2]=z[f+48>>2];z[e+52>>2]=z[f+52>>2];z[e+56>>2]=z[f+56>>2];v[e+60>>2]=v[f+60>>2];e=e- -64|0;if(m>>>0>e>>>0){continue}break}}v[h+4>>2]=d;v[f+56>>2]=0;v[f+60>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;c=a+484|0;if(d>>>0>(v[c+8>>2]&2147483647)>>>0){EM(c,d)}e=v[c+4>>2];if((e|0)<(d|0)){h=v[c>>2];m=h+(d<<6)|0;e=h+(e<<6)|0;while(1){z[e>>2]=z[f>>2];z[e+4>>2]=z[f+4>>2];z[e+8>>2]=z[f+8>>2];z[e+12>>2]=z[f+12>>2];z[e+16>>2]=z[f+16>>2];z[e+20>>2]=z[f+20>>2];z[e+24>>2]=z[f+24>>2];z[e+28>>2]=z[f+28>>2];z[e+32>>2]=z[f+32>>2];z[e+36>>2]=z[f+36>>2];z[e+40>>2]=z[f+40>>2];z[e+44>>2]=z[f+44>>2];z[e+48>>2]=z[f+48>>2];z[e+52>>2]=z[f+52>>2];z[e+56>>2]=z[f+56>>2];z[e+60>>2]=z[f+60>>2];e=e- -64|0;if(m>>>0>e>>>0){continue}break}}v[c+4>>2]=d;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;e=a+496|0;if(d>>>0>(v[e+8>>2]&2147483647)>>>0){FM(e,d)}c=v[e+4>>2];if((c|0)<(d|0)){h=v[e>>2];m=h+B(d,48)|0;c=h+B(c,48)|0;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];z[c+12>>2]=z[f+12>>2];z[c+16>>2]=z[f+16>>2];z[c+20>>2]=z[f+20>>2];z[c+24>>2]=z[f+24>>2];h=v[f+32>>2];v[c+28>>2]=v[f+28>>2];v[c+32>>2]=h;h=v[f+40>>2];v[c+36>>2]=v[f+36>>2];v[c+40>>2]=h;v[c+44>>2]=v[f+44>>2];c=c+48|0;if(m>>>0>c>>>0){continue}break}}v[e+4>>2]=d;m=0;v[f>>2]=0;bz(a+528|0,d,f);c=v[a+472>>2];z[c>>2]=z[a+192>>2];z[c+4>>2]=z[a+196>>2];z[c+8>>2]=z[a+200>>2];v[c+12>>2]=v[a+204>>2];z[c+16>>2]=z[a+208>>2];z[c+20>>2]=z[a+212>>2];z[c+24>>2]=z[a+216>>2];v[c+28>>2]=v[a+220>>2];z[c+32>>2]=z[a+224>>2];z[c+36>>2]=z[a+228>>2];z[c+40>>2]=z[a+232>>2];z[c+44>>2]=z[a+236>>2];z[c+48>>2]=z[a+240>>2];z[c+52>>2]=z[a+244>>2];z[c+56>>2]=z[a+248>>2];v[c+60>>2]=v[a+252>>2];c=v[a+484>>2];z[c>>2]=z[a+256>>2];z[c+4>>2]=z[a+260>>2];z[c+8>>2]=z[a+264>>2];z[c+12>>2]=z[a+268>>2];z[c+16>>2]=z[a+272>>2];z[c+20>>2]=z[a+276>>2];z[c+24>>2]=z[a+280>>2];z[c+28>>2]=z[a+284>>2];z[c+32>>2]=z[a+288>>2];z[c+36>>2]=z[a+292>>2];z[c+40>>2]=z[a+296>>2];z[c+44>>2]=z[a+300>>2];z[c+48>>2]=z[a+304>>2];z[c+52>>2]=z[a+308>>2];z[c+56>>2]=z[a+312>>2];z[c+60>>2]=z[a+316>>2];c=v[a+496>>2];z[c>>2]=z[a+320>>2];z[c+4>>2]=z[a+324>>2];z[c+8>>2]=z[a+328>>2];z[c+12>>2]=z[a+332>>2];z[c+16>>2]=z[a+336>>2];z[c+20>>2]=z[a+340>>2];z[c+24>>2]=z[a+344>>2];d=v[a+352>>2];v[c+28>>2]=v[a+348>>2];v[c+32>>2]=d;d=v[a+360>>2];v[c+36>>2]=v[a+356>>2];v[c+40>>2]=d;v[c+44>>2]=v[a+364>>2];if(j){d=b+168|0;while(1){c=vr(v[a+620>>2],56);e=v[a+472>>2];h=v[a+484>>2];p=v[a+496>>2];o=v[a+636>>2];q=v[a+632>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=q;v[c+12>>2]=o;v[c+36>>2]=d;o=j-m|0;v[c+32>>2]=o>>>0<1024?o:1024;v[c+28>>2]=n+(m<<2);v[c>>2]=132660;v[c+20>>2]=g;v[c+24>>2]=1;o=m|1;v[c+48>>2]=p+B(o,48);p=h;h=o<<6;v[c+44>>2]=p+h;v[c+40>>2]=e+h;Ba[v[v[g>>2]+16>>2]](g);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);m=m+1024|0;if(j>>>0>m>>>0){continue}break}}d=v[b+344>>2];c=v[b+340>>2];v[a+380>>2]=0;d=d+(c+(k<<6)|0)|0;b=d+63&-64;if(b>>>0>(v[a+384>>2]&2147483647)>>>0){cz(a+376|0,b)}v[a+380>>2]=d;v[a+392>>2]=0;if(b>>>0>(v[a+396>>2]&2147483647)>>>0){cz(a+388|0,b)}v[a+392>>2]=d;v[a+416>>2]=0;if(b>>>0>(v[a+420>>2]&2147483647)>>>0){dz(a+412|0,b)}v[a+416>>2]=d;v[a+404>>2]=0;if(b>>>0>(v[a+408>>2]&2147483647)>>>0){cz(a+400|0,b)}v[a+404>>2]=d;v[a+556>>2]=0;b=c+63&-64;if(b>>>0>(v[a+560>>2]&2147483647)>>>0){ez(a+552|0,b)}v[a+556>>2]=c;v[a+428>>2]=0;b=i+63&-64;if(b>>>0>(v[a+432>>2]&2147483647)>>>0){fz(a+424|0,b)}v[a+428>>2]=i;v[a+440>>2]=0;if(b>>>0>(v[a+444>>2]&2147483647)>>>0){gz(a+436|0,b)}v[a+440>>2]=i;v[a+452>>2]=0;if(b>>>0>(v[a+456>>2]&2147483647)>>>0){hz(a+448|0,b)}v[a+452>>2]=i;v[a+464>>2]=0;d=k+63&-64;if(d>>>0>(v[a+468>>2]&2147483647)>>>0){iz(a+460|0,d)}v[a+464>>2]=k;v[a+544>>2]=0;if(b>>>0>(v[a+548>>2]&2147483647)>>>0){zw(a+540|0,b)}v[a+544>>2]=i;b=v[a+4>>2];v[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>(v[b+12>>2]&2147483647)>>>0){jz(b,c)}v[a+628>>2]=1-v[a+628>>2];Ba[v[v[g>>2]+20>>2]](g)}xa=f- -64|0}function hO(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,y=0,A=0,D=C(0),E=0,F=C(0),G=0,H=0,I=0,J=0,K=C(0);h=xa-16|0;E=h;xa=h;H=v[g>>2];G=v[f>>2];I=v[e>>2];a:{if(!v[a+52>>2]){break a}k=B(c,80);t[E+12|0]=k>>>0>1024;b:{if(k>>>0>=1025){j=t9(k,6023,144);break b}j=h-(k+15&-16)|0;xa=j}v[E+8>>2]=j;if(c){n=v[v[a+48>>2]+1816>>2];while(1){h=v[(m<<2)+b>>2];k=v[a+32>>2]+(h<<4)|0;i=w[k+12|0];if(i){l=v[E+8>>2]+B(m,80)|0;y=v[v[a+28>>2]+(h<<2)>>2];h=v[37412];v[l+8>>2]=v[y+24>>2]+h;v[l+12>>2]=h+v[y+28>>2];h=x[y+40>>1];v[l>>2]=v[y+16>>2]+v[(h&32?149652:149656)>>2];v[l+4>>2]=v[y+20>>2]+v[(h&64?149652:149656)>>2];h=v[n+4>>2];o=h+(v[y+56>>2]<<5)|0;z[l+16>>2]=z[o>>2];z[l+20>>2]=z[o+4>>2];z[l+24>>2]=z[o+8>>2];z[l+28>>2]=z[o+12>>2];z[l+32>>2]=z[o+16>>2];z[l+36>>2]=z[o+20>>2];z[l+40>>2]=z[o+24>>2];h=h+(v[y+60>>2]<<5)|0;z[l+44>>2]=z[h>>2];z[l+48>>2]=z[h+4>>2];z[l+52>>2]=z[h+8>>2];z[l+56>>2]=z[h+12>>2];z[l+60>>2]=z[h+16>>2];z[l- -64>>2]=z[h+20>>2];z[l+68>>2]=z[h+24>>2];p=v[k+4>>2];v[l+76>>2]=p;v[l+72>>2]=i;F=C(34028234663852886e22);D=C(34028234663852886e22);h=x[y+40>>1];D=h&32?z[v[y+16>>2]+128>>2]:D;F=h&64?z[v[y+20>>2]+128>>2]:F;D=D>>0>1?i:1;k=h&7;l=0;r=0;if(h-1>>>0>=7){h=h&248;i=0;while(1){o=r<<6;z[(o+p|0)+28>>2]=D;z[(p+(o|64)|0)+28>>2]=D;z[(p+(o|128)|0)+28>>2]=D;z[(p+(o|192)|0)+28>>2]=D;z[(p+(o|256)|0)+28>>2]=D;z[(p+(o|320)|0)+28>>2]=D;z[(p+(o|384)|0)+28>>2]=D;z[(p+(o|448)|0)+28>>2]=D;r=r+8|0;i=i+8|0;if((h|0)!=(i|0)){continue}break}}if(k){while(1){z[(p+(r<<6)|0)+28>>2]=D;r=r+1|0;l=l+1|0;if((k|0)!=(l|0)){continue}break}}k=w[y+46|0];h=w[y+47|0];h=(B(h>>>0>k>>>0?k:h,28)+d|0)+((h>>>0>>0?k:h)<<2)|0;v[h+304>>2]=v[h+304>>2]+1}m=m+1|0;if((m|0)!=(c|0)){continue}break}j=v[E+8>>2]}h=v[a+52>>2];Ba[v[v[h>>2]>>2]](h,j,c);if(!w[E+12|0]){break a}u9(v[E+8>>2])}if(c){while(1){h=v[(J<<2)+b>>2];q=v[a+32>>2]+(h<<4)|0;k=w[q+13|0];p=v[v[a+28>>2]+(h<<2)>>2];c:{if(!w[q+12|0]){h=0;break c}y=v[q+4>>2];o=v[q>>2];d:{if(!(w[o+43|0]&64)){break d}l=0;m=0;if(!k){break d}while(1){A=o+B(l,48)|0;h=w[A+40|0];s=y+(h<<6)|0;z[A+16>>2]=z[s+32>>2];z[A+20>>2]=z[s+36>>2];z[A+24>>2]=z[s+40>>2];z[A+32>>2]=z[s+60>>2];z[A+36>>2]=z[s+56>>2];z[A+28>>2]=z[s+44>>2];r=w[A+41|0];e:{if(r>>>0<2){break e}K=z[s+40>>2];F=z[s+36>>2];D=z[s+32>>2];j=1;while(1){n=h+j|0;i=y+(n<<6)|0;if(!(!(C(C(K*z[i+40>>2])+C(C(D*z[i+32>>2])+C(F*z[i+36>>2])))>2]>C(0)))){h=k;i=h-1|0;if(l>>>0>>0){while(1){r=o+B(h,48)|0;s=o+B(i,48)|0;h=v[s+4>>2];v[r>>2]=v[s>>2];v[r+4>>2]=h;h=v[s+12>>2];v[r+8>>2]=v[s+8>>2];v[r+12>>2]=h;z[r+16>>2]=z[s+16>>2];z[r+20>>2]=z[s+20>>2];z[r+24>>2]=z[s+24>>2];h=v[s+32>>2];v[r+28>>2]=v[s+28>>2];v[r+32>>2]=h;h=v[s+40>>2];v[r+36>>2]=v[s+36>>2];v[r+40>>2]=h;v[r+44>>2]=v[s+44>>2];h=i;i=h-1|0;if(l>>>0>>0){continue}break}r=w[A+41|0]}u[A+90>>1]=x[A+42>>1];t[A+89|0]=r-j;t[A+88|0]=n;t[A+41|0]=j;k=k+1|0;break e}j=j+1|0;if((r|0)!=(j|0)){continue}break}}m=m+1|0;l=m&255;if(l>>>0>>0){continue}break}}if(w[q+15|0]>>0){n=v[p+48>>2];m=n+32>>>5|0;f:{if(m>>>0<=(v[d+7208>>2]&2147483647)>>>0){j=v[d+7204>>2];break f}h=v[37696]+12|0;j=Ba[v[v[h>>2]+8>>2]](h,m<<2,24422,18067,438)|0;h=v[d+7204>>2];g:{if(!h){break g}H9(j,h,v[d+7208>>2]<<2);if(v[d+7208>>2]<0){break g}i=v[d+7204>>2];if(!i){break g}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,i)}h=v[d+7208>>2];I9((h<<2)+j|0,0,m-h<<2);v[d+7208>>2]=m;v[d+7204>>2]=j}h=(n>>>3&536870908)+j|0;v[h>>2]=v[h>>2]|1<>>0>>0?H:k;m=w[q+12|0];if(!m){h=0;break c}i=0;h=0;j=0;if(m-1>>>0>=3){n=m&252;l=0;while(1){o=h;h=j<<6;h=(((o+(z[(h+y|0)+28>>2]!=C(0))|0)+(z[(y+(h|64)|0)+28>>2]!=C(0))|0)+(z[(y+(h|128)|0)+28>>2]!=C(0))|0)+(z[(y+(h|192)|0)+28>>2]!=C(0))|0;j=j+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}n=m&3;if(!n){break c}while(1){h=(z[(y+(j<<6)|0)+28>>2]!=C(0))+h|0;j=j+1|0;i=i+1|0;if((n|0)!=(i|0)){continue}break}}if(w[q+15|0]>(k&255)>>>0){n=v[p+48>>2];m=n+32>>>5|0;h:{if(m>>>0<=(v[d+7208>>2]&2147483647)>>>0){j=v[d+7204>>2];break h}k=v[37696]+12|0;j=Ba[v[v[k>>2]+8>>2]](k,m<<2,24422,18067,438)|0;k=v[d+7204>>2];i:{if(!k){break i}H9(j,k,v[d+7208>>2]<<2);if(v[d+7208>>2]<0){break i}i=v[d+7204>>2];if(!i){break i}k=v[37696]+12|0;Ba[v[v[k>>2]+12>>2]](k,i)}k=v[d+7208>>2];I9((k<<2)+j|0,0,m-k<<2);v[d+7208>>2]=m;v[d+7204>>2]=j}k=(n>>>3&536870908)+j|0;v[k>>2]=v[k>>2]|1<>2]=0;v[p+36>>2]=0;t[q+13|0]=0;t[q+12|0]=0;if(!w[q+15|0]){break j}i=v[p+48>>2];n=i+32>>>5|0;k:{if(n>>>0<=(v[d+7208>>2]&2147483647)>>>0){j=v[d+7204>>2];break k}h=v[37696]+12|0;j=Ba[v[v[h>>2]+8>>2]](h,n<<2,24422,18067,438)|0;h=v[d+7204>>2];l:{if(!h){break l}H9(j,h,v[d+7208>>2]<<2);if(v[d+7208>>2]<0){break l}k=v[d+7204>>2];if(!k){break l}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,k)}h=v[d+7208>>2];I9((h<<2)+j|0,0,n-h<<2);v[d+7208>>2]=n;v[d+7204>>2]=j}G=G+1|0;h=(i>>>3&536870908)+j|0;v[h>>2]=v[h>>2]|1<>2];if(!k){break j}h=w[q+13|0];i=k;k=v[k+4>>2]+(w[q+12|0]<<5)|0;v[i+4>>2]=k;i=v[d+7172>>2];j=v[i+8>>2];s=v[i>>2];y=v[i+12>>2];l=v[i+4>>2];i=v[d+7176>>2];h=v[i+4>>2]+B(h,48)|0;v[i+4>>2]=h;i=v[d+7176>>2];A=v[i+8>>2];p=v[i>>2];o=w[v[q>>2]+43|0];m=v[i+12>>2];n=v[i+4>>2];i=v[d+7180>>2];r=v[i+4>>2]+(w[q+12|0]<<2)|0;v[i+4>>2]=r;m:{if(!(A>>>0<=m+n>>>0|j>>>0<=l+y>>>0)){m=v[d+7180>>2];i=v[m+8>>2];if(i>>>0>v[m+12>>2]+v[m+4>>2]>>>0){break m}}v[q>>2]=0;v[q+4>>2]=0;u[q+6>>1]=0;u[q+8>>1]=0;u[q+10>>1]=0;u[q+12>>1]=0;break j}n=j+s|0;i=(i+v[m>>2]|0)-r|0;v[q+8>>2]=i;I9(i,0,w[q+12|0]<<2);p=H9((p+A|0)-h|0,v[q>>2],B(w[q+13|0],48));m=w[q+13|0];n:{if(!m){break n}o=o|-128;l=0;j=0;if(m-1>>>0>=7){h=m&248;i=0;while(1){t[(p+B(j,48)|0)+43|0]=o;t[(p+B(j|1,48)|0)+43|0]=o;t[(p+B(j|2,48)|0)+43|0]=o;t[(p+B(j|3,48)|0)+43|0]=o;t[(p+B(j|4,48)|0)+43|0]=o;t[(p+B(j|5,48)|0)+43|0]=o;t[(p+B(j|6,48)|0)+43|0]=o;t[(p+B(j|7,48)|0)+43|0]=o;j=j+8|0;i=i+8|0;if((h|0)!=(i|0)){continue}break}}h=m&7;if(h){while(1){t[(p+B(j,48)|0)+43|0]=o;j=j+1|0;l=l+1|0;if((h|0)!=(l|0)){continue}break}}j=1;if(m>>>0<=1){break n}while(1){h=v[p+4>>2];i=p+B(j,48)|0;v[i>>2]=v[p>>2];v[i+4>>2]=h;h=v[p+12>>2];v[i+8>>2]=v[p+8>>2];v[i+12>>2]=h;j=j+1|0;if(j>>>0>2];l=0;while(1){m=i+(l<<5)|0;n=h+(l<<6)|0;z[m>>2]=z[n>>2];z[m+4>>2]=z[n+4>>2];z[m+8>>2]=z[n+8>>2];z[m+12>>2]=z[n+12>>2];z[m+16>>2]=z[n+16>>2];z[m+20>>2]=z[n+20>>2];z[m+24>>2]=z[n+24>>2];z[m+28>>2]=z[n+28>>2];l=l+1|0;if((k|0)!=(l|0)){continue}break}}v[q>>2]=p;v[q+4>>2]=i}J=J+1|0;if((J|0)!=(c|0)){continue}break}}v[e>>2]=I;v[f>>2]=G;v[g>>2]=H;xa=E+16|0}function ZA(a){var b=C(0),c=C(0),d=C(0),e=C(0),f=C(0),g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=0,Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=0,Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=0,_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=0,Tb=0,Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0);g=v[a+100>>2];Cb=z[g+28>>2];H=z[g+16>>2];h=v[a+96>>2];I=z[h+24>>2];J=z[h+20>>2];Db=z[g+12>>2];K=z[g+8>>2];L=z[g+4>>2];M=z[g>>2];i=v[a+68>>2];Eb=z[i+28>>2];N=z[i+16>>2];j=v[a+64>>2];O=z[j+24>>2];P=z[j+20>>2];Fb=z[i+12>>2];Q=z[i+8>>2];R=z[i+4>>2];S=z[i>>2];k=v[a+36>>2];Gb=z[k+28>>2];T=z[k+16>>2];l=v[a+32>>2];U=z[l+24>>2];V=z[l+20>>2];Hb=z[k+12>>2];W=z[k+8>>2];X=z[k+4>>2];Y=z[k>>2];m=v[a+4>>2];Z=z[m+24>>2];_=z[m+20>>2];n=v[a>>2];$=z[n+24>>2];aa=z[n+20>>2];ba=z[g+24>>2];ca=z[g+20>>2];da=z[i+24>>2];ea=z[i+20>>2];fa=z[k+24>>2];ga=z[k+20>>2];Ib=z[h+28>>2];ha=z[h+16>>2];Jb=z[h+12>>2];ia=z[h+8>>2];ja=z[h+4>>2];ka=z[h>>2];Kb=z[j+28>>2];la=z[j+16>>2];Lb=z[j+12>>2];ma=z[j+8>>2];na=z[j+4>>2];oa=z[j>>2];Mb=z[l+28>>2];pa=z[l+16>>2];Nb=z[l+12>>2];qa=z[l+8>>2];ra=z[l+4>>2];sa=z[l>>2];Ob=z[m+28>>2];ta=z[m+16>>2];Pb=z[n+28>>2];ua=z[n+16>>2];Qb=z[m+12>>2];va=z[m+8>>2];wa=z[m+4>>2];xa=z[m>>2];Rb=z[n+12>>2];ya=z[n+8>>2];za=z[n+4>>2];Aa=z[n>>2];a=v[a+24>>2];Ba=x[a+2>>1];if(Ba){Sb=a+Ba|0;while(1){Za=a+160|0;Pa=w[a+1|0];Ba=Za+B(Pa,176)|0;Ca=z[a+76>>2];Da=z[a+72>>2];Ea=z[a+68>>2];Fa=z[a+60>>2];Ga=z[a+56>>2];Ha=z[a+52>>2];Ia=z[a+44>>2];Ja=z[a+40>>2];Ka=z[a+36>>2];_a=z[a+108>>2];$a=z[a+104>>2];ab=z[a+100>>2];bb=z[a+92>>2];cb=z[a+88>>2];db=z[a+84>>2];La=z[a+64>>2];Ma=z[a+48>>2];Na=z[a+32>>2];eb=z[a+96>>2];fb=z[a+80>>2];a:{if(!Pa){q=C(0);r=C(0);s=C(0);t=C(0);break a}Tb=x[a+2>>1]+(a+96|0)|0;Ub=z[a+140>>2];Vb=z[a+136>>2];Wb=z[a+132>>2];Xb=z[a+124>>2];Yb=z[a+120>>2];Zb=z[a+116>>2];_b=z[a+128>>2];$b=z[a+112>>2];Qa=C(C(C(Aa*Na)+C(za*Ma))+C(ya*La));Ra=C(C(C(sa*Ka)+C(ra*Ha))+C(qa*Ea));Sa=C(C(C(oa*Ja)+C(na*Ga))+C(ma*Da));Ta=C(C(C(ka*Ia)+C(ja*Fa))+C(ia*Ca));Ua=C(C(C(xa*Na)+C(wa*Ma))+C(va*La));Va=C(C(C(Y*Ka)+C(X*Ha))+C(W*Ea));Wa=C(C(C(S*Ja)+C(R*Ga))+C(Q*Da));Xa=C(C(C(M*Ia)+C(L*Fa))+C(K*Ca));t=C(0);G=0;s=C(0);r=C(0);q=C(0);while(1){a=B(G,176)+Za|0;b=z[a+116>>2];d=z[a+52>>2];ac=z[a+100>>2];bc=z[a+84>>2];c=z[a+68>>2];gb=z[a+36>>2];hb=z[a+20>>2];ib=z[a+4>>2];D=z[a+164>>2];jb=z[a+132>>2];kb=z[a+148>>2];E=z[a+120>>2];e=z[a+56>>2];cc=z[a+104>>2];dc=z[a+88>>2];o=z[a+72>>2];lb=z[a+40>>2];mb=z[a+24>>2];nb=z[a+8>>2];ob=z[a+168>>2];pb=z[a+136>>2];qb=z[a+152>>2];F=z[a+124>>2];f=z[a+60>>2];Oa=z[a+108>>2];ec=z[a+92>>2];p=z[a+76>>2];rb=z[a+44>>2];sb=z[a+28>>2];tb=z[a+12>>2];ub=z[a+172>>2];vb=z[a+140>>2];wb=z[a+156>>2];Ya=z[a+48>>2];u=C(-Ya);y=z[a+64>>2];fc=C(C(y*z[a+80>>2])-z[a+96>>2]);A=y;y=z[a>>2];xb=z[a+16>>2];yb=z[a+32>>2];zb=z[a+128>>2];Ab=z[a+144>>2];Bb=z[a+160>>2];A=C(fc-C(A*C(C(Qa+C(C(C(ua*y)+C(aa*xb))+C($*yb)))-C(Ua+C(C(C(ta*zb)+C(_*Ab))+C(Z*Bb))))));u=C(Ya+(u>2];u=u>2]=u;p=C(C(C(p*ec)-Oa)-C(p*C(C(Ta+C(C(C(ha*tb)+C(J*sb))+C(I*rb)))-C(Xa+C(C(C(H*vb)+C(ca*wb))+C(ba*ub))))));Oa=C(-f);p=C(f+(p>Oa?p:Oa));F=p>2]=F;o=C(C(C(o*dc)-cc)-C(o*C(C(Sa+C(C(C(la*nb)+C(P*mb))+C(O*lb)))-C(Wa+C(C(C(N*pb)+C(ea*qb))+C(da*ob))))));p=C(-e);o=C(e+(o>p?o:p));E=o>2]=E;c=C(C(C(c*bc)-ac)-C(c*C(C(Ra+C(C(C(pa*ib)+C(V*hb))+C(U*gb)))-C(Va+C(C(C(T*jb)+C(ga*kb))+C(fa*D))))));o=C(-d);c=C(d+(c>o?c:o));c=b>c?c:b;z[a+52>>2]=c;a=(G<<4)+Tb|0;z[a+12>>2]=F;z[a+8>>2]=E;z[a+4>>2]=c;z[a>>2]=u;b=C(u-Ya);q=C(q+b);f=C(F-f);t=C(t+f);e=C(E-e);s=C(s+e);d=C(c-d);r=C(r+d);Ua=C(Ua-C(eb*b));Qa=C(Qa+C(fb*b));c=C(_b*b);Z=C(Z-C(Bb*c));b=C($b*b);$=C($+C(yb*b));_=C(_-C(Ab*c));aa=C(aa+C(xb*b));ta=C(ta-C(zb*c));ua=C(ua+C(y*b));Xa=C(Xa-C(_a*f));Wa=C(Wa-C($a*e));Va=C(Va-C(ab*d));Ta=C(Ta+C(bb*f));Sa=C(Sa+C(cb*e));Ra=C(Ra+C(db*d));b=C(Ub*f);ba=C(ba-C(ub*b));c=C(Vb*e);da=C(da-C(ob*c));y=D;D=C(Wb*d);fa=C(fa-C(y*D));f=C(Xb*f);I=C(I+C(rb*f));e=C(Yb*e);O=C(O+C(lb*e));d=C(Zb*d);U=C(U+C(gb*d));ca=C(ca-C(wb*b));ea=C(ea-C(qb*c));ga=C(ga-C(kb*D));J=C(J+C(sb*f));P=C(P+C(mb*e));V=C(V+C(hb*d));H=C(H-C(vb*b));N=C(N-C(pb*c));T=C(T-C(jb*D));ha=C(ha+C(tb*f));la=C(la+C(nb*e));pa=C(pa+C(ib*d));G=G+1|0;if((Pa|0)!=(G|0)){continue}break}}b=C(_a*t);K=C(K-C(Ca*b));f=C($a*s);Q=C(Q-C(Da*f));e=C(ab*r);W=C(W-C(Ea*e));d=C(eb*q);va=C(va-C(La*d));t=C(bb*t);ia=C(ia+C(Ca*t));s=C(cb*s);ma=C(ma+C(Da*s));r=C(db*r);qa=C(qa+C(Ea*r));q=C(fb*q);ya=C(ya+C(La*q));L=C(L-C(Fa*b));R=C(R-C(Ga*f));X=C(X-C(Ha*e));wa=C(wa-C(Ma*d));ja=C(ja+C(Fa*t));na=C(na+C(Ga*s));ra=C(ra+C(Ha*r));za=C(za+C(Ma*q));M=C(M-C(Ia*b));S=C(S-C(Ja*f));Y=C(Y-C(Ka*e));xa=C(xa-C(Na*d));ka=C(ka+C(Ia*t));oa=C(oa+C(Ja*s));sa=C(sa+C(Ka*r));Aa=C(Aa+C(Na*q));a=Ba;if(Sb>>>0>a>>>0){continue}break}}z[n+12>>2]=Rb;z[n+8>>2]=ya;z[n+4>>2]=za;z[n>>2]=Aa;z[l+12>>2]=Nb;z[l+8>>2]=qa;z[l+4>>2]=ra;z[l>>2]=sa;z[j+12>>2]=Lb;z[j+8>>2]=ma;z[j+4>>2]=na;z[j>>2]=oa;z[h+12>>2]=Jb;z[h+8>>2]=ia;z[h+4>>2]=ja;z[h>>2]=ka;z[m+12>>2]=Qb;z[m+8>>2]=va;z[m+4>>2]=wa;z[m>>2]=xa;z[k+12>>2]=Hb;z[k+8>>2]=W;z[k+4>>2]=X;z[k>>2]=Y;z[i+12>>2]=Fb;z[i+8>>2]=Q;z[i+4>>2]=R;z[i>>2]=S;z[g+12>>2]=Db;z[g+8>>2]=K;z[g+4>>2]=L;z[g>>2]=M;z[n+28>>2]=Pb;z[n+24>>2]=$;z[n+20>>2]=aa;z[n+16>>2]=ua;z[l+28>>2]=Mb;z[l+24>>2]=U;z[l+20>>2]=V;z[l+16>>2]=pa;z[j+28>>2]=Kb;z[j+24>>2]=O;z[j+20>>2]=P;z[j+16>>2]=la;z[h+28>>2]=Ib;z[h+24>>2]=I;z[h+20>>2]=J;z[h+16>>2]=ha;z[m+28>>2]=Ob;z[m+24>>2]=Z;z[m+20>>2]=_;z[m+16>>2]=ta;z[k+28>>2]=Gb;z[k+24>>2]=fa;z[k+20>>2]=ga;z[k+16>>2]=T;z[i+28>>2]=Eb;z[i+24>>2]=da;z[i+20>>2]=ea;z[i+16>>2]=N;z[g+28>>2]=Cb;z[g+24>>2]=ba;z[g+20>>2]=ca;z[g+16>>2]=H}function BE(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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;v[a+32>>2]=0;v[a+28>>2]=b;a:{switch(b|0){case 0:b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?32269:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,7696,c,8548,83)|0;v[c>>2]=129652;b=c+16|0;v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b+608>>2]=0;v[b+612>>2]=0;v[b+632>>2]=0;v[b+624>>2]=0;v[b+628>>2]=0;v[b+616>>2]=0;v[b+620>>2]=0;v[b+644>>2]=0;v[b+636>>2]=0;v[b+640>>2]=0;iC(b+688|0);iC(b+912|0);d=b+1136|0;iC(d);e=b+1360|0;iC(e);f=b+1584|0;iC(f);g=b+1808|0;iC(g);iC(b+2032|0);h=b+2256|0;iC(h);i=b+2480|0;iC(i);j=b+2704|0;iC(j);k=b+2928|0;iC(k);l=b+3152|0;iC(l);m=b+3376|0;iC(m);n=b+3600|0;iC(n);o=b+3824|0;iC(o);p=b+4048|0;iC(p);q=b+4272|0;iC(q);r=b+4496|0;iC(r);s=b+4720|0;iC(s);u=b+4944|0;iC(u);w=b+5168|0;iC(w);x=b+5392|0;iC(x);y=b+5616|0;iC(y);z=b+5840|0;iC(z);A=b+6064|0;iC(A);B=b+6288|0;iC(B);C=b+6512|0;iC(C);D=b+6736|0;iC(D);E=b+6960|0;iC(E);F=b+7184|0;iC(F);G=b+7408|0;iC(G);t[b+7633|0]=0;t[b+7632|0]=1;v[b+688>>2]=0;v[b+692>>2]=0;v[b+680>>2]=-25165825;v[b+672>>2]=-25165825;v[b+676>>2]=-25165825;v[b+664>>2]=0;v[b+656>>2]=0;v[b+660>>2]=0;v[b+696>>2]=0;v[b+700>>2]=0;v[b+704>>2]=0;v[b+708>>2]=0;v[b+712>>2]=0;v[b+716>>2]=0;v[b+720>>2]=0;v[b+724>>2]=0;v[b+912>>2]=0;v[b+916>>2]=0;v[b+920>>2]=0;v[b+924>>2]=0;v[b+928>>2]=0;v[b+932>>2]=0;v[b+936>>2]=0;v[b+940>>2]=0;v[b+944>>2]=0;v[b+948>>2]=0;v[d>>2]=0;v[d+4>>2]=0;d=b+1144|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1152|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1160|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1168|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1392|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1384|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1376|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1368|0;v[d>>2]=0;v[d+4>>2]=0;v[e>>2]=0;v[e+4>>2]=0;d=b+1616|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1608|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1600|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1592|0;v[d>>2]=0;v[d+4>>2]=0;v[f>>2]=0;v[f+4>>2]=0;d=b+1840|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1832|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1824|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1816|0;v[d>>2]=0;v[d+4>>2]=0;v[g>>2]=0;v[g+4>>2]=0;d=b+2064|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2056|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2048|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2040|0;v[d>>2]=0;v[d+4>>2]=0;v[b+2032>>2]=0;v[b+2036>>2]=0;d=b+2288|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2280|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2272|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2264|0;v[d>>2]=0;v[d+4>>2]=0;v[h>>2]=0;v[h+4>>2]=0;v[i>>2]=0;v[i+4>>2]=0;d=b+2488|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2496|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2504|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2512|0;v[d>>2]=0;v[d+4>>2]=0;v[j>>2]=0;v[j+4>>2]=0;d=b+2712|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2720|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2728|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2736|0;v[d>>2]=0;v[d+4>>2]=0;v[k>>2]=0;v[k+4>>2]=0;d=b+2936|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2944|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2952|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2960|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3184|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3176|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3168|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3160|0;v[d>>2]=0;v[d+4>>2]=0;v[l>>2]=0;v[l+4>>2]=0;d=b+3408|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3400|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3392|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3384|0;v[d>>2]=0;v[d+4>>2]=0;v[m>>2]=0;v[m+4>>2]=0;d=b+3632|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3624|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3616|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3608|0;v[d>>2]=0;v[d+4>>2]=0;v[n>>2]=0;v[n+4>>2]=0;d=b+3856|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3848|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3840|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3832|0;v[d>>2]=0;v[d+4>>2]=0;v[o>>2]=0;v[o+4>>2]=0;d=b+4080|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4072|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4064|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4056|0;v[d>>2]=0;v[d+4>>2]=0;v[p>>2]=0;v[p+4>>2]=0;d=b+4304|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4296|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4288|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4280|0;v[d>>2]=0;v[d+4>>2]=0;v[q>>2]=0;v[q+4>>2]=0;d=b+4528|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4520|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4512|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4504|0;v[d>>2]=0;v[d+4>>2]=0;v[r>>2]=0;v[r+4>>2]=0;d=b+4752|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4744|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4736|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4728|0;v[d>>2]=0;v[d+4>>2]=0;v[s>>2]=0;v[s+4>>2]=0;d=b+4976|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4968|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4960|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4952|0;v[d>>2]=0;v[d+4>>2]=0;v[u>>2]=0;v[u+4>>2]=0;d=b+5200|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5192|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5184|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5176|0;v[d>>2]=0;v[d+4>>2]=0;v[w>>2]=0;v[w+4>>2]=0;d=b+5424|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5416|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5408|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5400|0;v[d>>2]=0;v[d+4>>2]=0;v[x>>2]=0;v[x+4>>2]=0;d=b+5648|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5640|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5632|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5624|0;v[d>>2]=0;v[d+4>>2]=0;v[y>>2]=0;v[y+4>>2]=0;d=b+5872|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5864|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5856|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5848|0;v[d>>2]=0;v[d+4>>2]=0;v[z>>2]=0;v[z+4>>2]=0;d=b+6096|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6088|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6080|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6072|0;v[d>>2]=0;v[d+4>>2]=0;v[A>>2]=0;v[A+4>>2]=0;d=b+6320|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6312|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6304|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6296|0;v[d>>2]=0;v[d+4>>2]=0;v[B>>2]=0;v[B+4>>2]=0;d=b+6544|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6536|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6528|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6520|0;v[d>>2]=0;v[d+4>>2]=0;v[C>>2]=0;v[C+4>>2]=0;d=b+6768|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6760|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6752|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6744|0;v[d>>2]=0;v[d+4>>2]=0;v[D>>2]=0;v[D+4>>2]=0;d=b+6992|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6984|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6976|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6968|0;v[d>>2]=0;v[d+4>>2]=0;v[E>>2]=0;v[E+4>>2]=0;d=b+7216|0;v[d>>2]=0;v[d+4>>2]=0;d=b+7208|0;v[d>>2]=0;v[d+4>>2]=0;d=b+7200|0;v[d>>2]=0;v[d+4>>2]=0;d=b+7192|0;v[d>>2]=0;v[d+4>>2]=0;v[F>>2]=0;v[F+4>>2]=0;d=b+7440|0;v[d>>2]=0;v[d+4>>2]=0;d=b+7432|0;v[d>>2]=0;v[d+4>>2]=0;d=b+7424|0;v[d>>2]=0;v[d+4>>2]=0;b=b+7416|0;v[b>>2]=0;v[b+4>>2]=0;v[G>>2]=0;v[G+4>>2]=0;b=c+7664|0;v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=-1;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[a>>2]=c;return;case 1:b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?32519:63804;H=a,I=yD(Ba[v[v[b+12>>2]+8>>2]](b+12|0,376,e,8548,84)|0,1,c,d),v[H>>2]=I;return;case 2:b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?32519:63804;e=yD(Ba[v[v[b+12>>2]+8>>2]](b+12|0,376,e,8548,85)|0,0,c,d);break;default:break a}}v[a>>2]=e}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=C(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=v[a+20>>2];e=v[a+28>>2];v[v[v[e+1004>>2]+4>>2]+8>>2]=0;i=v[e+1e3>>2];a=v[i+284>>2];v[e+2704>>2]=0;v[e+2708>>2]=0;o=v[v[e+976>>2]+1156>>2];b=v[e+1012>>2];Ba[v[v[b>>2]+124>>2]](b,a);j=v[e+2360>>2]&8;d=v[e+2448>>2]&2147483647;a:{if(!d){break a}g=v[e+2444>>2];a=1;while(1){c=v[g+(f<<2)>>2];if(!c){a=a+1|0;f=f+1|0;if((d|0)!=(f|0)){continue}break a}break}b=Qaa(c)|f<<5;c=c&c-1;b:{if(c){break b}a=a>>>0>d>>>0?a:d;while(1){f=f+1|0;if(d>>>0<=f>>>0){c=0;f=a;break b}c=v[g+(f<<2)>>2];if(!c){continue}break}}if((b|0)==-1){break a}while(1){a=vr(o,1072);k=z[e+1080>>2];d=v[e+1e3>>2];g=v[e+1012>>2];l=v[e+16>>2];m=v[e+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=l;v[a+12>>2]=m;t[a+1068|0]=(j|0)!=0;v[a+1064>>2]=g;v[a+1060>>2]=d;z[a+1056>>2]=k;v[a+28>>2]=-128;v[a+32>>2]=-128;d=a+1044|0;v[d>>2]=-128;v[d+4>>2]=-128;d=a+1036|0;v[d>>2]=-128;v[d+4>>2]=-128;d=a+1028|0;v[d>>2]=-128;v[d+4>>2]=-128;v[a+1020>>2]=-128;v[a+1024>>2]=-128;v[a+1012>>2]=-128;v[a+1016>>2]=-128;v[a+1004>>2]=-128;v[a+1008>>2]=-128;v[a+996>>2]=-128;v[a+1e3>>2]=-128;v[a+988>>2]=-128;v[a+992>>2]=-128;v[a+980>>2]=-128;v[a+984>>2]=-128;v[a+972>>2]=-128;v[a+976>>2]=-128;v[a+964>>2]=-128;v[a+968>>2]=-128;v[a+956>>2]=-128;v[a+960>>2]=-128;v[a+948>>2]=-128;v[a+952>>2]=-128;v[a+940>>2]=-128;v[a+944>>2]=-128;v[a+932>>2]=-128;v[a+936>>2]=-128;v[a+924>>2]=-128;v[a+928>>2]=-128;v[a+916>>2]=-128;v[a+920>>2]=-128;v[a+908>>2]=-128;v[a+912>>2]=-128;v[a+900>>2]=-128;v[a+904>>2]=-128;v[a+892>>2]=-128;v[a+896>>2]=-128;v[a+884>>2]=-128;v[a+888>>2]=-128;v[a+876>>2]=-128;v[a+880>>2]=-128;v[a+868>>2]=-128;v[a+872>>2]=-128;v[a+860>>2]=-128;v[a+864>>2]=-128;v[a+852>>2]=-128;v[a+856>>2]=-128;v[a+844>>2]=-128;v[a+848>>2]=-128;v[a+836>>2]=-128;v[a+840>>2]=-128;v[a+828>>2]=-128;v[a+832>>2]=-128;v[a+820>>2]=-128;v[a+824>>2]=-128;v[a+812>>2]=-128;v[a+816>>2]=-128;v[a+804>>2]=-128;v[a+808>>2]=-128;v[a+796>>2]=-128;v[a+800>>2]=-128;v[a+788>>2]=-128;v[a+792>>2]=-128;v[a+780>>2]=-128;v[a+784>>2]=-128;v[a+772>>2]=-128;v[a+776>>2]=-128;v[a+764>>2]=-128;v[a+768>>2]=-128;v[a+756>>2]=-128;v[a+760>>2]=-128;v[a+748>>2]=-128;v[a+752>>2]=-128;v[a+740>>2]=-128;v[a+744>>2]=-128;v[a+732>>2]=-128;v[a+736>>2]=-128;v[a+724>>2]=-128;v[a+728>>2]=-128;v[a+716>>2]=-128;v[a+720>>2]=-128;v[a+708>>2]=-128;v[a+712>>2]=-128;v[a+700>>2]=-128;v[a+704>>2]=-128;v[a+692>>2]=-128;v[a+696>>2]=-128;v[a+684>>2]=-128;v[a+688>>2]=-128;v[a+676>>2]=-128;v[a+680>>2]=-128;v[a+668>>2]=-128;v[a+672>>2]=-128;v[a+660>>2]=-128;v[a+664>>2]=-128;v[a+652>>2]=-128;v[a+656>>2]=-128;v[a+644>>2]=-128;v[a+648>>2]=-128;v[a+636>>2]=-128;v[a+640>>2]=-128;v[a+628>>2]=-128;v[a+632>>2]=-128;v[a+620>>2]=-128;v[a+624>>2]=-128;v[a+612>>2]=-128;v[a+616>>2]=-128;v[a+604>>2]=-128;v[a+608>>2]=-128;v[a+596>>2]=-128;v[a+600>>2]=-128;v[a+588>>2]=-128;v[a+592>>2]=-128;v[a+580>>2]=-128;v[a+584>>2]=-128;v[a+572>>2]=-128;v[a+576>>2]=-128;v[a+564>>2]=-128;v[a+568>>2]=-128;v[a+556>>2]=-128;v[a+560>>2]=-128;v[a+548>>2]=-128;v[a+552>>2]=-128;v[a+540>>2]=-128;v[a+544>>2]=-128;v[a+532>>2]=-128;v[a+536>>2]=-128;v[a+524>>2]=-128;v[a+528>>2]=-128;v[a+516>>2]=-128;v[a+520>>2]=-128;v[a+508>>2]=-128;v[a+512>>2]=-128;v[a+500>>2]=-128;v[a+504>>2]=-128;v[a+492>>2]=-128;v[a+496>>2]=-128;v[a+484>>2]=-128;v[a+488>>2]=-128;v[a+476>>2]=-128;v[a+480>>2]=-128;v[a+468>>2]=-128;v[a+472>>2]=-128;v[a+460>>2]=-128;v[a+464>>2]=-128;v[a+452>>2]=-128;v[a+456>>2]=-128;v[a+444>>2]=-128;v[a+448>>2]=-128;v[a+436>>2]=-128;v[a+440>>2]=-128;v[a+428>>2]=-128;v[a+432>>2]=-128;v[a+420>>2]=-128;v[a+424>>2]=-128;v[a+412>>2]=-128;v[a+416>>2]=-128;v[a+404>>2]=-128;v[a+408>>2]=-128;v[a+396>>2]=-128;v[a+400>>2]=-128;v[a+388>>2]=-128;v[a+392>>2]=-128;v[a+380>>2]=-128;v[a+384>>2]=-128;v[a+372>>2]=-128;v[a+376>>2]=-128;v[a+364>>2]=-128;v[a+368>>2]=-128;v[a+356>>2]=-128;v[a+360>>2]=-128;v[a+348>>2]=-128;v[a+352>>2]=-128;v[a+340>>2]=-128;v[a+344>>2]=-128;v[a+332>>2]=-128;v[a+336>>2]=-128;v[a+324>>2]=-128;v[a+328>>2]=-128;v[a+316>>2]=-128;v[a+320>>2]=-128;v[a+308>>2]=-128;v[a+312>>2]=-128;v[a+300>>2]=-128;v[a+304>>2]=-128;v[a+292>>2]=-128;v[a+296>>2]=-128;v[a+284>>2]=-128;v[a+288>>2]=-128;v[a+276>>2]=-128;v[a+280>>2]=-128;v[a+268>>2]=-128;v[a+272>>2]=-128;v[a+260>>2]=-128;v[a+264>>2]=-128;v[a+252>>2]=-128;v[a+256>>2]=-128;v[a+244>>2]=-128;v[a+248>>2]=-128;v[a+236>>2]=-128;v[a+240>>2]=-128;v[a+228>>2]=-128;v[a+232>>2]=-128;v[a+220>>2]=-128;v[a+224>>2]=-128;v[a+212>>2]=-128;v[a+216>>2]=-128;v[a+204>>2]=-128;v[a+208>>2]=-128;v[a+196>>2]=-128;v[a+200>>2]=-128;v[a+188>>2]=-128;v[a+192>>2]=-128;v[a+180>>2]=-128;v[a+184>>2]=-128;v[a+172>>2]=-128;v[a+176>>2]=-128;v[a+164>>2]=-128;v[a+168>>2]=-128;v[a+156>>2]=-128;v[a+160>>2]=-128;v[a+148>>2]=-128;v[a+152>>2]=-128;v[a+140>>2]=-128;v[a+144>>2]=-128;v[a+132>>2]=-128;v[a+136>>2]=-128;v[a+124>>2]=-128;v[a+128>>2]=-128;v[a+116>>2]=-128;v[a+120>>2]=-128;v[a+108>>2]=-128;v[a+112>>2]=-128;v[a+100>>2]=-128;v[a+104>>2]=-128;v[a+92>>2]=-128;v[a+96>>2]=-128;v[a+84>>2]=-128;v[a+88>>2]=-128;v[a+76>>2]=-128;v[a+80>>2]=-128;v[a+68>>2]=-128;v[a+72>>2]=-128;v[a+60>>2]=-128;v[a+64>>2]=-128;v[a+52>>2]=-128;v[a+56>>2]=-128;v[a+44>>2]=-128;v[a+48>>2]=-128;v[a+36>>2]=-128;v[a+40>>2]=-128;v[a>>2]=135284;l=v[e+2444>>2];m=v[i+184>>2];d=0;while(1){g=v[(B(b&33554431,24)+m|0)+20>>2];c:{if(g){v[(a+(d<<2)|0)+28>>2]=b<<7;d=d+1|0;if(t[v[g+36>>2]+28|0]<0){break c}}g=(b>>>3&536870908)+l|0;n=v[g>>2];r=g,s=Uaa(-2,b)&n,v[r>>2]=s}d:{if(!c){c=0;b=-1;break d}n=f<<5;p=Qaa(c);c=c-1&c;e:{if(c){break e}b=f+1|0;g=v[e+2448>>2]&2147483647;b=b>>>0>g>>>0?b:g;q=v[e+2444>>2];while(1){f=f+1|0;if(g>>>0<=f>>>0){c=0;f=b;break e}c=v[(f<<2)+q>>2];if(!c){continue}break}}b=n|p;if(d>>>0>255){break d}if((b|0)!=-1){continue}}break}v[a+24>>2]=1;v[a+1052>>2]=d;v[a+20>>2]=h;if(h){Ba[v[v[h>>2]+16>>2]](h);v[a+16>>2]=v[v[a+20>>2]+16>>2]}Ba[v[v[a>>2]+20>>2]](a);if((b|0)!=-1){continue}break}}f=v[i+296>>2];if(f){d=v[i+292>>2];i=j>>>3|0;c=0;while(1){a=vr(o,48);k=z[e+1080>>2];b=v[e+1e3>>2];j=v[e+16>>2];g=v[e+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=j;v[a+12>>2]=g;t[a+44|0]=i;v[a+40>>2]=b;z[a+36>>2]=k;b=f-c|0;v[a+32>>2]=b>>>0<32?b:32;v[a+28>>2]=d+(c<<2);v[a>>2]=135340;v[a+20>>2]=h;v[a+24>>2]=1;if(h){Ba[v[v[h>>2]+16>>2]](h);v[a+16>>2]=v[v[a+20>>2]+16>>2];b=v[a>>2]}else{b=135340}Ba[v[b+20>>2]](a);c=c+32|0;if(f>>>0>c>>>0){continue}break}}v[e+1064>>2]=0;Ey(v[e+976>>2]+24|0)}function qn(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=v[37394]-1|0;v[37394]=a;if(!a){e=v[37389];a=0;c=xa-16|0;xa=c;v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;g=v[e+516>>2];if(g){a:{if(!g){break a}b=g<<2;if(!b){break a}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?58935:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c>>2];b=v[c+4>>2];if((b|0)>0){i=(b<<2)+a|0;b=a;while(1){v[b>>2]=v[d>>2];d=d+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}d=v[c>>2]}if(!(!d|v[c+8>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[c+8>>2]=g;v[c>>2]=a}b:{if(!v[e+496>>2]){break b}b=v[e+492>>2];a=v[b>>2];if((a|0)==-1){d=v[e+500>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break b}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){j=a<<2;i=j+v[e+484>>2]|0;a=v[c+4>>2];c:{if(a>>>0>=(v[c+8>>2]&2147483647)>>>0){a=0;b=v[c+8>>2];h=b&2147483647?b<<1:1;d:{if(!h){break d}b=h<<2;if(!b){break d}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?58935:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c+4>>2];k=(d<<2)+a|0;if((d|0)>0){g=v[c>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[i>>2];e:{if(v[c+8>>2]<0){break e}b=v[c>>2];if(!b){break e}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b);d=v[c+4>>2]}v[c+8>>2]=h;v[c>>2]=a;v[c+4>>2]=d+1;break c}v[v[c>>2]+(a<<2)>>2]=v[i>>2];v[c+4>>2]=a+1}a=v[j+v[e+488>>2]>>2];if((a|0)!=-1){continue}b=v[e+492>>2];d=v[e+500>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break b}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(v[c+4>>2]){a=0;while(1){b=v[v[c>>2]+(a<<2)>>2];Ba[v[v[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=v[c+8>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[c>>2];if(!a){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;f=v[e+596>>2];if(f){a=0;g:{if(!f){break g}b=f<<2;if(!b){break g}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?56071:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c>>2];b=v[c+4>>2];if((b|0)>0){g=(b<<2)+a|0;b=a;while(1){v[b>>2]=v[d>>2];d=d+4|0;b=b+4|0;if(g>>>0>b>>>0){continue}break}d=v[c>>2]}if(!(!d|v[c+8>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[c+8>>2]=f;v[c>>2]=a}h:{if(!v[e+576>>2]){break h}f=0;b=v[e+572>>2];a=v[b>>2];if((a|0)==-1){d=v[e+580>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break h}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){j=a<<2;i=j+v[e+564>>2]|0;a=v[c+4>>2];i:{if(a>>>0>=(v[c+8>>2]&2147483647)>>>0){a=0;b=v[c+8>>2];h=b&2147483647?b<<1:1;j:{if(!h){break j}b=h<<2;if(!b){break j}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?56071:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c+4>>2];k=(d<<2)+a|0;if((d|0)>0){g=v[c>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[i>>2];k:{if(v[c+8>>2]<0){break k}b=v[c>>2];if(!b){break k}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b);d=v[c+4>>2]}v[c+8>>2]=h;v[c>>2]=a;v[c+4>>2]=d+1;break i}v[v[c>>2]+(a<<2)>>2]=v[i>>2];v[c+4>>2]=a+1}a=v[j+v[e+568>>2]>>2];if((a|0)!=-1){continue}b=v[e+572>>2];d=v[e+580>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break h}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(v[c+4>>2]){a=0;while(1){b=v[v[c>>2]+(a<<2)>>2];Ba[v[v[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=v[c+8>>2];l:{if((a|0)<0|!(a&2147483647)){break l}a=v[c>>2];if(!a){break l}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;f=v[e+556>>2];if(f){a=0;m:{if(!f){break m}b=f<<2;if(!b){break m}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?59305:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c>>2];b=v[c+4>>2];if((b|0)>0){g=(b<<2)+a|0;b=a;while(1){v[b>>2]=v[d>>2];d=d+4|0;b=b+4|0;if(g>>>0>b>>>0){continue}break}d=v[c>>2]}if(!(!d|v[c+8>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[c+8>>2]=f;v[c>>2]=a}n:{if(!v[e+536>>2]){break n}f=0;b=v[e+532>>2];a=v[b>>2];if((a|0)==-1){d=v[e+540>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break n}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){j=a<<2;i=j+v[e+524>>2]|0;a=v[c+4>>2];o:{if(a>>>0>=(v[c+8>>2]&2147483647)>>>0){a=0;b=v[c+8>>2];h=b&2147483647?b<<1:1;p:{if(!h){break p}b=h<<2;if(!b){break p}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?59305:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c+4>>2];k=(d<<2)+a|0;if((d|0)>0){g=v[c>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[i>>2];q:{if(v[c+8>>2]<0){break q}b=v[c>>2];if(!b){break q}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b);d=v[c+4>>2]}v[c+8>>2]=h;v[c>>2]=a;v[c+4>>2]=d+1;break o}v[v[c>>2]+(a<<2)>>2]=v[i>>2];v[c+4>>2]=a+1}a=v[j+v[e+528>>2]>>2];if((a|0)!=-1){continue}b=v[e+532>>2];d=v[e+540>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break n}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(v[c+4>>2]){a=0;while(1){b=v[v[c>>2]+(a<<2)>>2];Ba[v[v[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=v[c+8>>2];r:{if((a|0)<0|!(a&2147483647)){break r}a=v[c>>2];if(!a){break r}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;a=v[e+636>>2];if(a){Km(c,a)}s:{if(!v[e+616>>2]){break s}f=0;b=v[e+612>>2];a=v[b>>2];if((a|0)==-1){d=v[e+620>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break s}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){d=a<<2;a=d+v[e+604>>2]|0;b=v[c+4>>2];t:{if(b>>>0>=(v[c+8>>2]&2147483647)>>>0){Lm(c,a);break t}v[v[c>>2]+(b<<2)>>2]=v[a>>2];v[c+4>>2]=b+1}a=v[d+v[e+608>>2]>>2];if((a|0)!=-1){continue}b=v[e+612>>2];d=v[e+620>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break s}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(v[c+4>>2]){a=0;while(1){b=v[v[c>>2]+(a<<2)>>2];Ba[v[v[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=v[c+8>>2];u:{if((a|0)<0|!(a&2147483647)){break u}a=v[c>>2];if(!a){break u}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[e+676>>2]){while(1){a=v[v[e+644>>2]>>2];b=v[a+16>>2]-1|0;v[a+16>>2]=b;if(!b){Ba[v[v[a+12>>2]+8>>2]](a+12|0)}if(v[e+676>>2]){continue}break}}if(v[e+44>>2]){while(1){a=v[v[e+12>>2]>>2];Ba[v[v[a>>2]>>2]](a);if(v[e+44>>2]){continue}break}}if(v[e+84>>2]){while(1){a=v[v[e+52>>2]>>2];Ba[v[v[a>>2]>>2]](a);if(v[e+84>>2]){continue}break}}if(v[e+124>>2]){while(1){a=v[v[e+92>>2]>>2];Ba[v[v[a>>2]>>2]](a);if(v[e+124>>2]){continue}break}}if(v[e+164>>2]){while(1){a=v[v[e+132>>2]>>2];Ba[v[v[a>>2]>>2]](a);if(v[e+164>>2]){continue}break}}Ba[v[v[e>>2]+4>>2]](e);xa=c+16|0;v[37389]=0;a=v[37393];if(a){Ba[v[v[a>>2]+4>>2]](a)}v[37393]=0;d9()}}function Wx(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0);l=xa-160|0;xa=l;m=a+112|0;E=v[a+444>>2];a:{if(v[(E+(d<<5)|0)+24>>2]==(c|0)){n=z[f+20>>2];o=z[f+24>>2];p=z[f>>2];q=z[f+4>>2];w=z[f+8>>2];s=z[f+16>>2];y=z[g+20>>2];u=z[g>>2];r=z[g+4>>2];x=z[g+8>>2];D=z[g+16>>2];z[l+152>>2]=-z[g+24>>2];z[l+148>>2]=-y;v[l+156>>2]=0;v[l+140>>2]=0;z[l+144>>2]=-D;z[l+136>>2]=-x;z[l+132>>2]=-r;z[l+128>>2]=-u;f=B(d,76);g=l+128|0;cx(l+96|0,v[a+396>>2]+B(d,96)|0,(v[m+340>>2]+B(d,160)|0)+120|0,f+v[a+384>>2]|0,g);z[l+88>>2]=o-z[l+120>>2];z[l+84>>2]=n-z[l+116>>2];v[l+92>>2]=0;v[l+76>>2]=0;z[l+80>>2]=s-z[l+112>>2];z[l+72>>2]=w-z[l+104>>2];z[l+68>>2]=q-z[l+100>>2];z[l+64>>2]=p-z[l+96>>2];ix(c,m,e,l- -64|0);hx(l,b,c,m,e,j);b=v[l+24>>2];v[l+52>>2]=v[l+20>>2];v[l+56>>2]=b;v[l+44>>2]=0;v[l+60>>2]=0;z[l+32>>2]=z[l>>2];b=v[l+8>>2];v[l+36>>2]=v[l+4>>2];v[l+40>>2]=b;z[l+48>>2]=z[l+16>>2];Yw(l,(v[m+340>>2]+B(d,160)|0)+120|0,v[a+348>>2]+B(d,112)|0,v[a+360>>2]+B(d,36)|0,f+v[a+384>>2]|0,g,j,l+32|0);n=z[l+24>>2];a=v[l+16>>2];b=v[l+20>>2];c=v[l+4>>2];d=v[l>>2];o=z[l+8>>2];z[h>>2]=z[l+48>>2];z[h+4>>2]=z[l+52>>2];z[h+8>>2]=z[l+56>>2];z[h+16>>2]=z[l+32>>2];z[h+20>>2]=z[l+36>>2];z[h+24>>2]=z[l+40>>2];z[i+24>>2]=o;v[i+16>>2]=d;v[i+20>>2]=c;z[i+8>>2]=n;v[i>>2]=a;v[i+4>>2]=b;break a}k=xa-2432|0;xa=k;e=c;if((d|0)!=(c|0)){b=c;e=d;while(1){b:{if(b>>>0>>0){e=v[((e<<5)+E|0)+24>>2];break b}b=v[((b<<5)+E|0)+24>>2]}if((b|0)!=(e|0)){continue}break}}n=z[f+20>>2];p=z[f>>2];q=z[f+4>>2];o=z[f+8>>2];s=z[f+16>>2];w=C(-z[f+24>>2]);z[k+120>>2]=w;y=C(-n);z[k+116>>2]=y;b=0;v[k+124>>2]=0;u=C(-s);z[k+112>>2]=u;v[k+108>>2]=0;o=C(-o);z[k+104>>2]=o;r=C(-q);z[k+100>>2]=r;n=C(-p);z[k+96>>2]=n;q=z[g+20>>2];p=z[g+24>>2];A=z[g+16>>2];D=z[g+8>>2];s=z[g+4>>2];x=z[g>>2];f=k+128|0;a=f+(c<<5)|0;v[a+28>>2]=0;z[a+24>>2]=w;z[a+20>>2]=y;z[a+16>>2]=u;v[a+12>>2]=0;z[a+8>>2]=o;z[a+4>>2]=r;z[a>>2]=n;p=C(-p);z[k+88>>2]=p;q=C(-q);z[k+84>>2]=q;a=f+(d<<5)|0;x=C(-x);z[a>>2]=x;s=C(-s);z[a+4>>2]=s;D=C(-D);z[a+8>>2]=D;A=C(-A);z[a+16>>2]=A;z[a+20>>2]=q;z[a+24>>2]=p;v[a+28>>2]=0;v[a+12>>2]=0;v[k+92>>2]=0;v[k+76>>2]=0;z[k+80>>2]=A;z[k+72>>2]=D;z[k+68>>2]=s;z[k+64>>2]=x;if((c|0)!=(e|0)){while(1){cx(k+32|0,v[m+284>>2]+B(c,96)|0,(v[m+340>>2]+B(c,160)|0)+120|0,v[m+272>>2]+B(c,76)|0,k+96|0);v[k+108>>2]=0;v[k+124>>2]=0;n=z[k+32>>2];z[k+96>>2]=n;r=z[k+36>>2];z[k+100>>2]=r;o=z[k+40>>2];z[k+104>>2]=o;u=z[k+48>>2];z[k+112>>2]=u;y=z[k+52>>2];z[k+116>>2]=y;w=z[k+56>>2];z[k+120>>2]=w;a=v[((c<<5)+E|0)+24>>2];v[(k+2176|0)+(b<<2)>>2]=c;c=(k+128|0)+(a<<5)|0;v[c+28>>2]=0;z[c+16>>2]=u;v[c+12>>2]=0;z[c+8>>2]=o;z[c+4>>2]=r;z[c>>2]=n;z[c+24>>2]=w;z[c+20>>2]=y;b=b+1|0;c=a;if((e|0)!=(c|0)){continue}break}}a=b;if((d|0)!=(e|0)){while(1){cx(k+32|0,v[m+284>>2]+B(d,96)|0,(v[m+340>>2]+B(d,160)|0)+120|0,v[m+272>>2]+B(d,76)|0,k- -64|0);v[k+76>>2]=0;v[k+92>>2]=0;x=z[k+32>>2];z[k+64>>2]=x;s=z[k+36>>2];z[k+68>>2]=s;D=z[k+40>>2];z[k+72>>2]=D;A=z[k+48>>2];z[k+80>>2]=A;q=z[k+52>>2];z[k+84>>2]=q;p=z[k+56>>2];z[k+88>>2]=p;c=v[((d<<5)+E|0)+24>>2];v[(k+2176|0)+(a<<2)>>2]=d;d=(k+128|0)+(c<<5)|0;v[d+28>>2]=0;z[d+16>>2]=A;v[d+12>>2]=0;z[d+8>>2]=D;z[d+4>>2]=s;z[d>>2]=x;z[d+24>>2]=p;z[d+20>>2]=q;a=a+1|0;d=c;if((c|0)!=(e|0)){continue}break}w=z[k+120>>2];y=z[k+116>>2];u=z[k+112>>2];r=z[k+100>>2];o=z[k+104>>2];n=z[k+96>>2]}c=(k+128|0)+(e<<5)|0;v[c+28>>2]=0;z[c+16>>2]=u+A;v[c+12>>2]=0;z[c+8>>2]=o+D;z[c+4>>2]=r+s;z[c>>2]=n+x;z[c+24>>2]=w+p;z[c+20>>2]=y+q;d=a;if(e){while(1){c=e<<5;f=k+128|0;cx(k+32|0,v[m+284>>2]+B(e,96)|0,(v[m+340>>2]+B(e,160)|0)+120|0,v[m+260>>2]+B(e,76)|0,c+f|0);c=v[(c+E|0)+24>>2];f=(c<<5)+f|0;z[f>>2]=z[k+32>>2];v[f+12>>2]=0;g=v[k+40>>2];v[f+4>>2]=v[k+36>>2];v[f+8>>2]=g;z[f+16>>2]=z[k+48>>2];v[f+28>>2]=0;g=v[k+56>>2];v[f+20>>2]=v[k+52>>2];v[f+24>>2]=g;v[(k+2176|0)+(d<<2)>>2]=e;d=d+1|0;e=c;if(c){continue}break}}c:{if(!(t[v[m+364>>2]]&1)){o=z[k+148>>2];s=z[k+144>>2];p=z[k+136>>2];w=z[k+132>>2];q=z[k+128>>2];n=z[k+152>>2];break c}v[k+152>>2]=0;v[k+156>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+128>>2]=0;v[k+132>>2]=0;o=C(0);s=C(0);p=C(0);w=C(0);q=C(0);n=C(0)}L=z[m+472>>2];M=z[m+460>>2];N=z[m+448>>2];O=z[m+476>>2];P=z[m+464>>2];Q=z[m+452>>2];R=z[m+480>>2];S=z[m+468>>2];T=z[m+456>>2];r=z[m+420>>2];D=z[m+416>>2];U=z[m+508>>2];V=z[m+496>>2];W=z[m+484>>2];A=z[m+432>>2];F=z[m+424>>2];G=z[m+428>>2];y=z[m+512>>2];X=z[m+500>>2];Y=z[m+488>>2];H=z[m+412>>2];I=z[m+436>>2];u=C(-s);J=z[m+440>>2];K=z[m+444>>2];x=C(-w);w=C(C(C(C(I*u)-C(J*o))-C(K*n))+C(C(C(z[m+504>>2]*x)-C(q*z[m+492>>2]))-C(p*z[m+516>>2])));z[k+56>>2]=w;y=C(C(C(C(F*u)-C(G*o))-C(A*n))+C(C(C(X*x)-C(q*Y))-C(p*y)));z[k+52>>2]=y;v[k+60>>2]=0;v[k+44>>2]=0;u=C(C(C(C(H*u)-C(D*o))-C(r*n))+C(C(C(V*x)-C(q*W))-C(p*U)));z[k+48>>2]=u;r=C(C(C(A*x)-C(q*r))-C(p*K));A=C(-o);o=C(r+C(C(C(S*A)-C(s*T))-C(n*R)));z[k+40>>2]=o;r=C(C(C(C(G*x)-C(q*D))-C(p*J))+C(C(C(P*A)-C(s*Q))-C(n*O)));z[k+36>>2]=r;n=C(C(C(C(F*x)-C(q*H))-C(p*I))+C(C(C(M*A)-C(s*N))-C(n*L)));z[k+32>>2]=n;if(a>>>0>>0){while(1){d=d-1|0;c=v[(k+2176|0)+(d<<2)>>2];Yw(k,(v[m+340>>2]+B(c,160)|0)+120|0,v[m+236>>2]+B(c,112)|0,v[m+248>>2]+B(c,36)|0,v[m+272>>2]+B(c,76)|0,(k+128|0)+(c<<5)|0,j,k+32|0);v[k+44>>2]=0;v[k+60>>2]=0;n=z[k>>2];z[k+32>>2]=n;r=z[k+4>>2];z[k+36>>2]=r;o=z[k+8>>2];z[k+40>>2]=o;u=z[k+16>>2];z[k+48>>2]=u;y=z[k+20>>2];z[k+52>>2]=y;w=z[k+24>>2];z[k+56>>2]=w;if(a>>>0>>0){continue}break}}p=w;q=y;x=u;s=o;D=r;A=n;if(a>>>0>b>>>0){while(1){a=a-1|0;c=v[(k+2176|0)+(a<<2)>>2];Yw(k,(v[m+340>>2]+B(c,160)|0)+120|0,v[m+236>>2]+B(c,112)|0,v[m+248>>2]+B(c,36)|0,v[m+272>>2]+B(c,76)|0,(k+128|0)+(c<<5)|0,j,k+32|0);if(a>>>0>b>>>0){continue}break}p=z[k+24>>2];q=z[k+20>>2];x=z[k+16>>2];s=z[k+8>>2];D=z[k+4>>2];w=z[k+56>>2];y=z[k+52>>2];u=z[k+48>>2];r=z[k+36>>2];o=z[k+40>>2];A=z[k>>2];n=z[k+32>>2]}if(b){while(1){b=b-1|0;a=v[(k+2176|0)+(b<<2)>>2];Yw(k,(v[m+340>>2]+B(a,160)|0)+120|0,v[m+236>>2]+B(a,112)|0,v[m+248>>2]+B(a,36)|0,v[m+272>>2]+B(a,76)|0,(k+128|0)+(a<<5)|0,j,k+32|0);if(b){continue}break}w=z[k+24>>2];y=z[k+20>>2];u=z[k+16>>2];o=z[k+8>>2];r=z[k+4>>2];n=z[k>>2]}z[h+16>>2]=n;z[h+8>>2]=w;z[h+4>>2]=y;z[h>>2]=u;z[h+24>>2]=o;z[h+20>>2]=r;z[i+24>>2]=s;z[i+20>>2]=D;z[i+16>>2]=A;z[i+8>>2]=p;z[i+4>>2]=q;z[i>>2]=x;xa=k+2432|0}xa=l+160|0}function yC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=0,N=C(0),O=0,P=C(0),Q=C(0),R=0,S=0,T=0,U=0,V=0,W=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;if(w[a+7648|0]){a=1}else{R=d;O=xa-16|0;xa=O;r=a+16|0;M=v[r+636>>2];a=v[r+28>>2];d=1;a:{if(!(M|a)){break a}l=z[R>>2];if(l==C(34028234663852886e22)){i=z[r+664>>2];l=z[r+680>>2];m=C(i-l);s=z[r+660>>2];n=z[r+676>>2];o=C(s-n);t=C(C(i+l)+C(0));n=C(C(s+n)+C(0));i=z[r+656>>2];l=z[r+672>>2];A=C(i-l);E=C(C(i+l)+C(0));if(a){s=C(85070586659632215e21);q=C(-85070586659632215e21);G=C(-85070586659632215e21);H=C(-85070586659632215e21);l=C(85070586659632215e21);i=C(85070586659632215e21);while(1){d=B(I,24)+r|0;u=z[d+180>>2];q=q>u?q:u;u=z[d+176>>2];G=G>u?G:u;u=z[d+172>>2];H=H>u?H:u;u=z[d+168>>2];s=s>2];l=l>2];i=iq?n:q;q=C(H+C(0));E=qo?o:l;A=i>A?A:i;m=m>2];l=z[c>>2];s=z[c+4>>2];o=C(C(f*m)+C(C(C(C(E+A)*C(.5))*l)+C(C(C(n+o)*C(.5))*s)));m=C(C(z[b+8>>2]*m)+C(C(z[b>>2]*l)+C(s*z[b+4>>2])));l=C(D(C(C(o-i)-m)));i=C(D(C(C(i+o)-m)));l=C(g+(i>l?l:i));z[R>>2]=l}o=z[c+8>>2];d=o>C(0);q=C(-o);t=z[c+4>>2];I=t>C(0);G=C(-t);n=z[c>>2];S=n>C(0);H=C(-n);m=z[b+8>>2];A=z[b+4>>2];E=z[b>>2];b:{if(l>=C(34028234663852886e22)){s=t==C(0)?A:t>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);l=n==C(0)?E:n>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);if(o==C(0)){i=m;break b}i=o>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break b}i=C(m+C(l*o));s=C(A+C(l*t));l=C(E+C(l*n))}q=d?o:q;G=I?t:G;H=S?n:H;u=im?m:i;s=s>A?A:s;l=l>E?E:l;if(a){I=0;while(1){d=B(I,24)+r|0;g=z[d+160>>2];h=z[d+172>>2];f=C(C(g+h)*C(.5));g=C(C(h-g)*C(.5));c:{if(!(C(f+g)>=l)|!(C(f-g)<=Q)){break c}k=z[d+176>>2];F=z[d+164>>2];h=C(C(k-F)*C(.5));k=C(C(F+k)*C(.5));F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))|!(C(k+h)>=s)|!(C(k-h)<=P)){break c}N=C(q*h);f=z[d+180>>2];k=z[d+168>>2];h=C(C(f-k)*C(.5));f=C(C(k+f)*C(.5));L=C(m-f);k=C(C(t*L)-C(o*F));if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))|!(C(f+h)>=i)|!(C(f-h)<=u)){break c}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));if(!(f>=(g>C(0)?g:C(-g)))){break c}d=0;if(!(Ba[v[v[e>>2]>>2]](e,R,((I<<3)+r|0)+32|0)|0)){break a}a=v[r+28>>2]}I=I+1|0;if(I>>>0>>0){continue}break}}d=1;if(!M){break a}f=z[r+656>>2];g=z[r+672>>2];d=1;if(!(C(f+g)>=l)){break a}d=1;if(!(C(f-g)<=Q)){break a}h=z[r+676>>2];k=z[r+660>>2];F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));d=1;if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))){break a}d=1;if(!(C(k+h)>=s)){break a}d=1;if(!(C(k-h)<=P)){break a}N=C(q*h);h=z[r+680>>2];f=z[r+664>>2];L=C(m-f);k=C(C(t*L)-C(o*F));d=1;if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))){break a}d=1;if(!(C(f+h)>=i)){break a}d=1;if(!(C(f-h)<=u)){break a}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));d=1;if(!(f>=(g>C(0)?g:C(-g)))){break a}a=v[r+644>>2]<<2;aa=a+b|0;g=z[aa>>2];ba=a+c|0;h=z[ba>>2];f=z[R>>2];z[O+12>>2]=f;h=C(g+C(f*h));a=(p(g>h?g:h),j(2));b=(a|0)<0?a^-1:a|-2147483648;a=(p(g>2]>>>30&2|v[c>>2]>>>29&4|v[c+8>>2]>>>31;ea=da<<1;S=x[(ca+ea|0)+208>>1];fa=1;d:{while(1){T=S&7;d=T<<2;e:{if(!v[d+ca>>2]){break e}c=(T<<5)+r|0;f=z[c+736>>2];g=z[c+752>>2];if(!(C(f+g)>=l)|!(C(f-g)<=Q)){break e}h=z[c+756>>2];k=z[c+740>>2];F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))|!(C(k+h)>=s)|!(C(k-h)<=P)){break e}N=C(q*h);h=z[c+760>>2];f=z[c+744>>2];L=C(m-f);k=C(C(t*L)-C(o*F));if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))|!(C(f+h)>=i)|!(C(f-h)<=u)){break e}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));if(!(f>=(g>C(0)?g:C(-g)))){break e}W=B(T,224)+r|0;ga=W+912|0;X=x[(ga+ea|0)+208>>1];ja=d+r|0;Y=0;while(1){d=X&7;I=d<<2;f:{if(!v[I+ga>>2]){break f}c=(d<<5)+W|0;f=z[c+960>>2];g=z[c+976>>2];if(!(C(f+g)>=l)|!(C(f-g)<=Q)){break f}h=z[c+980>>2];k=z[c+964>>2];F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))|!(C(k+h)>=s)|!(C(k-h)<=P)){break f}N=C(q*h);h=z[c+984>>2];f=z[c+968>>2];L=C(m-f);k=C(C(t*L)-C(o*F));if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))|!(C(f+h)>=i)|!(C(f-h)<=u)){break f}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));if(!(f>=(g>C(0)?g:C(-g)))){break f}ka=v[(I+W|0)+932>>2]+v[ja+708>>2]|0;ha=1;Z=(B(T,1120)+r|0)+B(d,224)|0;ia=Z+2032|0;_=x[(ia+(da<<1)|0)+208>>1];U=0;while(1){c=a;d=b;g:{h:{a=_&7;b=a<<2;V=v[b+ia>>2];if(!V){break h}a=(a<<5)+Z|0;f=z[a+2080>>2];g=z[a+2096>>2];if(!(C(f+g)>=l)|!(C(f-g)<=Q)){break h}h=z[a+2100>>2];k=z[a+2084>>2];F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))|!(C(k+h)>=s)|!(C(k-h)<=P)){break h}N=C(q*h);h=z[a+2104>>2];f=z[a+2088>>2];L=C(m-f);k=C(C(t*L)-C(o*F));if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))|!(C(f+h)>=i)|!(C(f-h)<=u)){break h}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));if(!(f>=(g>C(0)?g:C(-g)))){break h}a=v[(b+Z|0)+2052>>2]+ka|0;I=v[r+24>>2]+(a<<3)|0;M=v[r+20>>2]+(a<<5)|0;V=M+(V<<5)|0;a=c;b=d;while(1){i:{j:{if(y[M+28>>2]>>0){break j}if(y[M+12>>2]>b>>>0){break g}f=z[M>>2];g=z[M+16>>2];if(!(C(f+g)>=l)|!(C(f-g)<=Q)){break j}h=z[M+20>>2];k=z[M+4>>2];F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))|!(C(k+h)>=s)|!(C(k-h)<=P)){break j}N=C(q*h);h=z[M+24>>2];f=z[M+8>>2];L=C(m-f);k=C(C(t*L)-C(o*F));if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))|!(C(f+h)>=i)|!(C(f-h)<=u)){break j}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));if(!(f>=(g>C(0)?g:C(-g)))){break j}g=z[O+12>>2];if(!(Ba[v[v[e>>2]>>2]](e,O+12|0,I)|0)){break i}f=g;g=z[O+12>>2];if(!(f>g)){break j}i=z[aa>>2];l=C(i+C(g*z[ba>>2]));a=(p(i>l?i:l),j(2));b=(a|0)<0?a^-1:a|-2147483648;a=(p(im?m:i;s=l>A?A:l;l=g>E?E:g}I=I+8|0;M=M+32|0;if((V|0)!=(M|0)){continue}break g}break}a=c;b=d;if(ha){break d}break f}a=c;b=d}_=_>>>3|0;ha=U>>>0<4;U=U+1|0;if((U|0)!=5){continue}break}}X=X>>>3|0;Y=Y+1|0;if((Y|0)!=5){continue}break}}S=S>>>3|0;fa=$>>>0<4;$=$+1|0;if(($|0)!=5){continue}break}z[R>>2]=z[O+12>>2]}d=!fa}xa=O+16|0;a=d&1}return a|0}function Bq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;if(!v[a+4656>>2]){e=a+32|0;c=v[e+2352>>2];d=v[e+976>>2]+1164|0;a=I9(b,0,900);v[a+704>>2]=v[c+16>>2]+v[a+704>>2];f=v[c+20>>2]+v[a+708>>2]|0;v[a+708>>2]=f;v[a+732>>2]=v[c+20>>2]+v[a+732>>2];v[a+712>>2]=v[c+24>>2]+v[a+712>>2];v[a+760>>2]=v[c+24>>2]+v[a+760>>2];v[a+716>>2]=v[c+28>>2]+v[a+716>>2];v[a+788>>2]=v[c+28>>2]+v[a+788>>2];v[a+720>>2]=v[c+32>>2]+v[a+720>>2];v[a+816>>2]=v[c+32>>2]+v[a+816>>2];v[a+724>>2]=v[c+36>>2]+v[a+724>>2];v[a+844>>2]=v[c+36>>2]+v[a+844>>2];v[a+728>>2]=v[c+40>>2]+v[a+728>>2];v[a+872>>2]=v[c+40>>2]+v[a+872>>2];v[a+732>>2]=v[c+44>>2]+v[a+732>>2];v[a+708>>2]=f+v[c+44>>2];v[a+736>>2]=v[c+48>>2]+v[a+736>>2];v[a+740>>2]=v[c+52>>2]+v[a+740>>2];v[a+764>>2]=v[c+52>>2]+v[a+764>>2];v[a+744>>2]=v[c+56>>2]+v[a+744>>2];v[a+792>>2]=v[c+56>>2]+v[a+792>>2];v[a+748>>2]=v[c+60>>2]+v[a+748>>2];v[a+820>>2]=v[c+60>>2]+v[a+820>>2];f=c- -64|0;v[a+752>>2]=v[f>>2]+v[a+752>>2];v[a+848>>2]=v[f>>2]+v[a+848>>2];v[a+756>>2]=v[c+68>>2]+v[a+756>>2];v[a+876>>2]=v[c+68>>2]+v[a+876>>2];v[a+760>>2]=v[c+72>>2]+v[a+760>>2];v[a+712>>2]=v[c+72>>2]+v[a+712>>2];v[a+764>>2]=v[c+76>>2]+v[a+764>>2];v[a+740>>2]=v[c+76>>2]+v[a+740>>2];v[a+768>>2]=v[c+80>>2]+v[a+768>>2];v[a+772>>2]=v[c+84>>2]+v[a+772>>2];v[a+796>>2]=v[c+84>>2]+v[a+796>>2];v[a+776>>2]=v[c+88>>2]+v[a+776>>2];v[a+824>>2]=v[c+88>>2]+v[a+824>>2];v[a+780>>2]=v[c+92>>2]+v[a+780>>2];v[a+852>>2]=v[c+92>>2]+v[a+852>>2];v[a+784>>2]=v[c+96>>2]+v[a+784>>2];v[a+880>>2]=v[c+96>>2]+v[a+880>>2];v[a+788>>2]=v[c+100>>2]+v[a+788>>2];v[a+716>>2]=v[c+100>>2]+v[a+716>>2];v[a+792>>2]=v[c+104>>2]+v[a+792>>2];v[a+744>>2]=v[c+104>>2]+v[a+744>>2];v[a+796>>2]=v[c+108>>2]+v[a+796>>2];v[a+772>>2]=v[c+108>>2]+v[a+772>>2];v[a+800>>2]=v[c+112>>2]+v[a+800>>2];v[a+804>>2]=v[c+116>>2]+v[a+804>>2];v[a+828>>2]=v[c+116>>2]+v[a+828>>2];v[a+808>>2]=v[c+120>>2]+v[a+808>>2];v[a+856>>2]=v[c+120>>2]+v[a+856>>2];v[a+812>>2]=v[c+124>>2]+v[a+812>>2];v[a+884>>2]=v[c+124>>2]+v[a+884>>2];v[a+816>>2]=v[c+128>>2]+v[a+816>>2];v[a+720>>2]=v[c+128>>2]+v[a+720>>2];v[a+820>>2]=v[c+132>>2]+v[a+820>>2];v[a+748>>2]=v[c+132>>2]+v[a+748>>2];v[a+824>>2]=v[c+136>>2]+v[a+824>>2];v[a+776>>2]=v[c+136>>2]+v[a+776>>2];v[a+828>>2]=v[c+140>>2]+v[a+828>>2];v[a+804>>2]=v[c+140>>2]+v[a+804>>2];v[a+832>>2]=v[c+144>>2]+v[a+832>>2];v[a+836>>2]=v[c+148>>2]+v[a+836>>2];v[a+860>>2]=v[c+148>>2]+v[a+860>>2];v[a+840>>2]=v[c+152>>2]+v[a+840>>2];v[a+888>>2]=v[c+152>>2]+v[a+888>>2];v[a+108>>2]=v[c>>2];v[a+112>>2]=v[c+4>>2];v[a+116>>2]=v[d>>2];v[a+508>>2]=v[d+392>>2];v[a+312>>2]=v[d+196>>2];c=v[d+4>>2];v[a+144>>2]=c;v[a+120>>2]=c;c=v[d+396>>2];v[a+536>>2]=c;v[a+512>>2]=c;c=v[d+200>>2];v[a+340>>2]=c;v[a+316>>2]=c;c=v[d+8>>2];v[a+172>>2]=c;v[a+124>>2]=c;c=v[d+400>>2];v[a+564>>2]=c;v[a+516>>2]=c;c=v[d+204>>2];v[a+368>>2]=c;v[a+320>>2]=c;c=v[d+12>>2];v[a+200>>2]=c;v[a+128>>2]=c;c=v[d+404>>2];v[a+592>>2]=c;v[a+520>>2]=c;c=v[d+208>>2];v[a+396>>2]=c;v[a+324>>2]=c;c=v[d+16>>2];v[a+228>>2]=c;v[a+132>>2]=c;c=v[d+408>>2];v[a+620>>2]=c;v[a+524>>2]=c;c=v[d+212>>2];v[a+424>>2]=c;v[a+328>>2]=c;c=v[d+20>>2];v[a+256>>2]=c;v[a+136>>2]=c;c=v[d+412>>2];v[a+648>>2]=c;v[a+528>>2]=c;c=v[d+216>>2];v[a+452>>2]=c;v[a+332>>2]=c;c=v[d+24>>2];v[a+284>>2]=c;v[a+140>>2]=c;c=v[d+416>>2];v[a+676>>2]=c;v[a+532>>2]=c;c=v[d+220>>2];v[a+480>>2]=c;v[a+336>>2]=c;v[a+148>>2]=v[d+32>>2];v[a+540>>2]=v[d+424>>2];v[a+344>>2]=v[d+228>>2];c=v[d+36>>2];v[a+176>>2]=c;v[a+152>>2]=c;c=v[d+428>>2];v[a+568>>2]=c;v[a+544>>2]=c;c=v[d+232>>2];v[a+372>>2]=c;v[a+348>>2]=c;c=v[d+40>>2];v[a+204>>2]=c;v[a+156>>2]=c;c=v[d+432>>2];v[a+596>>2]=c;v[a+548>>2]=c;c=v[d+236>>2];v[a+400>>2]=c;v[a+352>>2]=c;c=v[d+44>>2];v[a+232>>2]=c;v[a+160>>2]=c;c=v[d+436>>2];v[a+624>>2]=c;v[a+552>>2]=c;c=v[d+240>>2];v[a+428>>2]=c;v[a+356>>2]=c;c=v[d+48>>2];v[a+260>>2]=c;v[a+164>>2]=c;c=v[d+440>>2];v[a+652>>2]=c;v[a+556>>2]=c;c=v[d+244>>2];v[a+456>>2]=c;v[a+360>>2]=c;c=v[d+52>>2];v[a+288>>2]=c;v[a+168>>2]=c;c=v[d+444>>2];v[a+680>>2]=c;v[a+560>>2]=c;c=v[d+248>>2];v[a+484>>2]=c;v[a+364>>2]=c;v[a+180>>2]=v[d- -64>>2];v[a+572>>2]=v[d+456>>2];v[a+376>>2]=v[d+260>>2];c=v[d+68>>2];v[a+208>>2]=c;v[a+184>>2]=c;c=v[d+460>>2];v[a+600>>2]=c;v[a+576>>2]=c;c=v[d+264>>2];v[a+404>>2]=c;v[a+380>>2]=c;c=v[d+72>>2];v[a+236>>2]=c;v[a+188>>2]=c;c=v[d+464>>2];v[a+628>>2]=c;v[a+580>>2]=c;c=v[d+268>>2];v[a+432>>2]=c;v[a+384>>2]=c;c=v[d+76>>2];v[a+264>>2]=c;v[a+192>>2]=c;c=v[d+468>>2];v[a+656>>2]=c;v[a+584>>2]=c;c=v[d+272>>2];v[a+460>>2]=c;v[a+388>>2]=c;c=v[d+80>>2];v[a+292>>2]=c;v[a+196>>2]=c;c=v[d+472>>2];v[a+684>>2]=c;v[a+588>>2]=c;c=v[d+276>>2];v[a+488>>2]=c;v[a+392>>2]=c;v[a+212>>2]=v[d+96>>2];v[a+604>>2]=v[d+488>>2];v[a+408>>2]=v[d+292>>2];c=v[d+100>>2];v[a+240>>2]=c;v[a+216>>2]=c;c=v[d+492>>2];v[a+632>>2]=c;v[a+608>>2]=c;c=v[d+296>>2];v[a+436>>2]=c;v[a+412>>2]=c;c=v[d+104>>2];v[a+268>>2]=c;v[a+220>>2]=c;c=v[d+496>>2];v[a+660>>2]=c;v[a+612>>2]=c;c=v[d+300>>2];v[a+464>>2]=c;v[a+416>>2]=c;c=v[d+108>>2];v[a+296>>2]=c;v[a+224>>2]=c;c=v[d+500>>2];v[a+688>>2]=c;v[a+616>>2]=c;c=v[d+304>>2];v[a+492>>2]=c;v[a+420>>2]=c;v[a+244>>2]=v[d+128>>2];v[a+636>>2]=v[d+520>>2];v[a+440>>2]=v[d+324>>2];c=v[d+132>>2];v[a+272>>2]=c;v[a+248>>2]=c;c=v[d+524>>2];v[a+664>>2]=c;v[a+640>>2]=c;c=v[d+328>>2];v[a+468>>2]=c;v[a+444>>2]=c;c=v[d+136>>2];v[a+300>>2]=c;v[a+252>>2]=c;c=v[d+528>>2];v[a+692>>2]=c;v[a+644>>2]=c;c=v[d+332>>2];v[a+496>>2]=c;v[a+448>>2]=c;v[a+276>>2]=v[d+160>>2];v[a+668>>2]=v[d+552>>2];v[a+472>>2]=v[d+356>>2];c=v[d+164>>2];v[a+304>>2]=c;v[a+280>>2]=c;c=v[d+556>>2];v[a+696>>2]=c;v[a+672>>2]=c;c=v[d+360>>2];v[a+500>>2]=c;v[a+476>>2]=c;v[a+308>>2]=v[d+192>>2];v[a+700>>2]=v[d+584>>2];v[a+504>>2]=v[d+388>>2];v[a+76>>2]=v[d+588>>2];v[a+80>>2]=v[d+592>>2];v[a+84>>2]=v[d+596>>2];v[a>>2]=v[d+600>>2];v[a+4>>2]=v[d+604>>2];v[a+8>>2]=v[d+608>>2];v[a+60>>2]=v[d+612>>2];v[a+72>>2]=v[d+624>>2]<<14;v[a+64>>2]=v[d+616>>2];v[a+68>>2]=v[d+620>>2];v[a+88>>2]=v[d+628>>2];v[a+92>>2]=v[d+632>>2];v[a+96>>2]=v[d+636>>2];v[a+100>>2]=v[d+640>>2];v[a+104>>2]=v[d+644>>2];v[b+12>>2]=v[e+2664>>2];v[b+16>>2]=v[e+2668>>2];v[b+20>>2]=v[e+2672>>2];v[b+56>>2]=v[e+1236>>2];v[b+52>>2]=v[v[e+980>>2]+368>>2];v[b+24>>2]=v[e+2676>>2];v[b+28>>2]=v[e+2680>>2];v[b+32>>2]=v[e+2684>>2];v[b+36>>2]=v[e+2688>>2];v[b+40>>2]=v[e+2692>>2];v[b+44>>2]=v[e+2696>>2];v[b+48>>2]=v[e+2700>>2];return}a9(v[37696],2,11709,1551,68230,0)}function U3(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=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0;v[a+112>>2]=0;g=a+104|0;b=v[a+12>>2];v[g>>2]=v[b+12>>2];v[a+116>>2]=v[b+68>>2];d=v[b+72>>2];c=w[b+8|0];v[a+108>>2]=v[b+16>>2];v[a+120>>2]=c&2?0:d;v[a+124>>2]=d&c<<30>>31;e=a+128|0;b=v[a+8>>2];if(v[b+40>>2]==1){b=v[b+32>>2]}else{b=4}c=xa-176|0;xa=c;i=v[g+12>>2];d=c+88|0;v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;a:{if(!l3(d,g,b)){break a}d=i<<2;if(d){f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,d,24422,12274,1483)|0}v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+56>>2]=0;v[c+60>>2]=0;d=c- -64|0;v[d>>2]=0;v[d+4>>2]=0;v[c+72>>2]=0;v[c+76>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+12>>2]=i;v[c+8>>2]=0;v[c+4>>2]=b;v[c>>2]=f;v[c+80>>2]=g;v[c+152>>2]=0;v[c+136>>2]=0;n3(v[c+92>>2],c+152|0,c+136|0,2957,c);w$(g,f);if(f){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,f)}d=v[g+12>>2];if(d>>>0<=b>>>0){j=x$(e,g,v[c+92>>2]);break a}b=v[c+92>>2];if(d>>>0<=4){j=x$(e,g,b);break a}p3(v[b+24>>2]);v[c+12>>2]=0;v[c+16>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=1;z[c+20>>2]=.00019999999494757503;b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?46279:63804;d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,37900,d,12274,509)|0;i=d+37892|0;f=d+4|0;b=f;while(1){v[b+8>>2]=0;v[b+12>>2]=0;v[b+32>>2]=-1;v[b+36>>2]=0;v[b+24>>2]=-1082130432;v[b+28>>2]=-1082130432;v[b+16>>2]=0;v[b+20>>2]=-1082130432;v[b+44>>2]=0;v[b+48>>2]=0;v[b+68>>2]=-1;v[b+72>>2]=0;v[b+60>>2]=-1082130432;v[b+64>>2]=-1082130432;v[b+52>>2]=0;v[b+56>>2]=-1082130432;v[b+80>>2]=0;v[b+84>>2]=0;v[b+104>>2]=-1;v[b+108>>2]=0;v[b+96>>2]=-1082130432;v[b+100>>2]=-1082130432;v[b+88>>2]=0;v[b+92>>2]=-1082130432;v[b+116>>2]=0;v[b+120>>2]=0;v[b+140>>2]=-1;v[b+144>>2]=0;v[b+132>>2]=-1082130432;v[b+136>>2]=-1082130432;v[b+124>>2]=0;v[b+128>>2]=-1082130432;v[b+156>>2]=0;v[b+160>>2]=0;v[b+180>>2]=-1;v[b+184>>2]=0;v[b+172>>2]=-1082130432;v[b+176>>2]=-1082130432;v[b+164>>2]=0;v[b+168>>2]=-1082130432;v[b+192>>2]=0;v[b+196>>2]=0;v[b+216>>2]=-1;v[b+220>>2]=0;v[b+208>>2]=-1082130432;v[b+212>>2]=-1082130432;v[b+200>>2]=0;v[b+204>>2]=-1082130432;v[b+228>>2]=0;v[b+232>>2]=0;v[b+252>>2]=-1;v[b+256>>2]=0;v[b+244>>2]=-1082130432;v[b+248>>2]=-1082130432;v[b+236>>2]=0;v[b+240>>2]=-1082130432;v[b+264>>2]=0;v[b+268>>2]=0;v[b+288>>2]=-1;v[b+292>>2]=0;v[b+280>>2]=-1082130432;v[b+284>>2]=-1082130432;v[b+272>>2]=0;v[b+276>>2]=-1082130432;b=b+296|0;if((i|0)!=(b|0)){continue}break}i=0;v[d+37896>>2]=0;v[c+24>>2]=d;v[d+37892>>2]=1;q3(c+88|0,f,v[v[c+92>>2]+24>>2],c);j=x$(e,g,v[c+92>>2]);if(j){t[e+57|0]=1;b=(((v[d+72>>2]!=-1)+(v[d+36>>2]!=-1)|0)+(v[d+108>>2]!=-1)|0)+(v[d+144>>2]!=-1)|0;h=v[c+16>>2]+(v[c+12>>2]+(v[c+8>>2]+v[c+4>>2]|0)|0)|0;k=h<<6;if(k){d=v[37696];i=Ba[v[v[d+12>>2]+8>>2]](d+12|0,k,24422,12274,1090)|0}v[c+172>>2]=4;b=b-2|0;v[e+28>>2]=b>>>0<3?b<<1:-1;v[c+168>>2]=0;v[c+164>>2]=0;if(w[e+57|0]){v[c+128>>2]=-8388609;v[c+120>>2]=-8388609;v[c+124>>2]=-8388609;v[c+112>>2]=-8388609;v[c+104>>2]=-8388609;v[c+108>>2]=-8388609;r3(f,c+120|0,c+104|0);l=z[c+120>>2];m=z[c+124>>2];n=z[c+128>>2];o=z[c+104>>2];p=z[c+108>>2];q=z[c+112>>2];z[e+52>>2]=q/C(32767);z[e+48>>2]=p/C(32767);z[e+44>>2]=o/C(32767);z[e+40>>2]=n/C(32767);z[e+36>>2]=m/C(32767);z[e+32>>2]=l/C(32767);z[c+160>>2]=n!=C(0)?C(C(32767)/n):C(0);z[c+156>>2]=m!=C(0)?C(C(32767)/m):C(0);z[c+152>>2]=l!=C(0)?C(C(32767)/l):C(0);z[c+144>>2]=q!=C(0)?C(C(32767)/q):C(0);z[c+140>>2]=p!=C(0)?C(C(32767)/p):C(0);z[c+136>>2]=o!=C(0)?C(C(32767)/o):C(0);s3(i,0,c+172|0,f,c+168|0,c+164|0,c+152|0,c+136|0,e+32|0,e+44|0)}b=v[c+24>>2];if(b){while(1){d=v[b+37896>>2];f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,b);b=d;if(b){continue}break}}g=h<<2;v[c+24>>2]=0;b:{if(!w[e+57|0]){break b}d=(g|0)!=(g&268435455)?-1:g<<4;c:{d:{if(d){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?51265:63804;r=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,f,12274,1218)|0;b=H9(r,i,k);h=h&1073741823;if(h){break d}if(b){break c}break b}H9(0,i,k);h=h&1073741823;if(!h){break b}}f=0;while(1){d=f<<6;b=d+i|0;d=d+r|0;u[b>>1]=x[d+2>>1];u[b+16>>1]=x[d+6>>1];u[b+32>>1]=x[d+10>>1];u[b+2>>1]=x[d>>1];u[b+18>>1]=x[d+4>>1];u[b+34>>1]=x[d+8>>1];v[b+48>>2]=v[d+12>>2];u[b+4>>1]=x[d+18>>1];u[b+20>>1]=x[d+22>>1];u[b+36>>1]=x[d+26>>1];u[b+6>>1]=x[d+16>>1];u[b+22>>1]=x[d+20>>1];u[b+38>>1]=x[d+24>>1];v[b+52>>2]=v[d+28>>2];u[b+8>>1]=x[d+34>>1];u[b+24>>1]=x[d+38>>1];u[b+40>>1]=x[d+42>>1];u[b+10>>1]=x[d+32>>1];u[b+26>>1]=x[d+36>>1];u[b+42>>1]=x[d+40>>1];v[b+56>>2]=v[d+44>>2];u[b+12>>1]=x[d+50>>1];u[b+28>>1]=x[d+54>>1];u[b+44>>1]=x[d+58>>1];u[b+14>>1]=x[d+48>>1];u[b+30>>1]=x[d+52>>1];u[b+46>>1]=x[d+56>>1];v[b+60>>2]=v[d+60>>2];f=f+1|0;if((h|0)!=(f|0)){continue}break}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,r)}v[e+24>>2]=i;v[e+20>>2]=g}b=v[c+24>>2];if(b){while(1){d=v[b+37896>>2];e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);b=d;if(b){continue}break}}v[c+24>>2]=0}k3(c+88|0);xa=c+176|0;if(!j){a9(v[37696],32,9248,1150,67357,0);return}f=v[a+112>>2];d=v[a+12>>2];if(v[d+80>>2]){e=v[d+68>>2];b=e+e|0;c=b>>>0>>0?-1:b;e:{if(!c){c=0;break e}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?27439:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,1159)|0;d=v[a+12>>2];e=v[d+68>>2]}g=v[d+80>>2];f:{g:{if(e){i=e&3;d=0;b=0;if(e-1>>>0>=3){j=e&-4;e=0;while(1){u[(b<<1)+c>>1]=x[g+(v[f+(b<<2)>>2]<<1)>>1];h=b|1;u[(h<<1)+c>>1]=x[g+(v[f+(h<<2)>>2]<<1)>>1];h=b|2;u[(h<<1)+c>>1]=x[g+(v[f+(h<<2)>>2]<<1)>>1];h=b|3;u[(h<<1)+c>>1]=x[g+(v[f+(h<<2)>>2]<<1)>>1];b=b+4|0;e=e+4|0;if((j|0)!=(e|0)){continue}break}}if(!i){break g}while(1){u[(b<<1)+c>>1]=x[g+(v[f+(b<<2)>>2]<<1)>>1];b=b+1|0;d=d+1|0;if((i|0)!=(d|0)){continue}break}break g}if(!g){break f}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);d=v[a+12>>2]}v[d+80>>2]=c}b=v[a+8>>2];if(!(w[b+14|0]?0:w[b+12|0])){b=v[d+68>>2];c=(b&1073741823)!=(b|0)?-1:b<<2;h:{if(!c){c=0;break h}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,1168)|0;d=v[a+12>>2];b=v[d+68>>2]}e=v[d+48>>2];i:{j:{k:{if(b){b=0;if(e){break k}while(1){e=b<<2;v[e+c>>2]=v[e+f>>2];b=b+1|0;if(b>>>0>2]){continue}break}break i}if(!e){break i}break j}while(1){g=b<<2;v[g+c>>2]=v[e+(v[f+g>>2]<<2)>>2];b=b+1|0;if(b>>>0>2]){continue}break}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);d=v[a+12>>2]}v[d+48>>2]=c}b=v[a+112>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[a+112>>2]=0}function UD(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,u=0,x=0;a:{e=v[a+268>>2];if(!w[a+337|0]&(e|0)!=6){break a}t[a+337|0]=0;c=v[a+4>>2];if(!(w[a+336|0]?c:0)){d=xa-16|0;xa=d;b=v[a+4>>2];if(b){e=JB(b);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e)}v[a+4>>2]=0;c=v[a+284>>2];b:{if(!c){break b}e=v[37696];b=e+12|0;e=IB((q=b,r=64,s=Ba[v[v[e>>2]+20>>2]](e)|0?44169:63804,u=8103,x=750,p=v[v[b>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0));v[a+4>>2]=e;v[d+4>>2]=c;v[d+12>>2]=0;b=v[a+292>>2];v[d>>2]=4;v[d+8>>2]=b;MB(e,d);v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;e=v[d+12>>2];if(e){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e)}if(!w[a+336|0]){break b}b=v[a+40>>2];jD(a+312|0,b>>>0>>0?c:b,v[a+4>>2])}xa=d+16|0;return}if((e|0)!=6){if(!v[a+284>>2]){break a}pD(a+52|0,v[a+292>>2]);TB(c,v[a+292>>2]);return}c=JB(c);e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);c=v[a+36>>2];if(c){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[a+268>>2]=0;v[a+36>>2]=0;e=1;d=v[a+44>>2];c=v[a+272>>2];c:{if(d>>>0<=c>>>0){e=-1;if(c>>>0<=d>>>0){break c}}v[a+280>>2]=v[a+280>>2]+e}d=v[a+32>>2];v[a+32>>2]=0;v[a+4>>2]=d;g=a+312|0;c=v[a+284>>2];e=v[a+40>>2];jD(g,c>>>0>e>>>0?c:e,d);if(v[a+344>>2]>0){e=v[a+340>>2];while(1){f=v[e>>2];d:{if(f>>>0>=y[a+316>>2]){break d}c=v[v[g>>2]+(f<<2)>>2];if((c|0)==-1){break d}RB(v[a+4>>2],c);f=v[e>>2]}kD(g,f,v[e+4>>2],v[a+4>>2]);e=e+8|0;if(e>>>0>2]+(v[a+344>>2]<<3)>>>0){continue}break}}v[a+344>>2]=0;d=v[a+356>>2];if(d){e=0;while(1){c=v[v[a+352>>2]+(e<<2)>>2];e:{if(c>>>0>=y[a+316>>2]){break e}c=v[v[g>>2]+(c<<2)>>2];if((c|0)==-1){break e}RB(v[a+4>>2],c)}e=e+1|0;if((d|0)!=(e|0)){continue}break}}v[a+356>>2]=0;e=v[a+4>>2];if(!(!e|!v[a+284>>2])){pD(a+52|0,v[a+292>>2]);TB(e,v[a+292>>2])}o=v[a+48>>2]-1|0;c=0;e=0;i=xa-16|0;xa=i;h=a+52|0;j=h+4|0;g=v[j+4>>2];n=B(g,48)+j|0;d=v[n+12>>2];if(!(!d|!v[d+588>>2])){k=j+B(g,48)|0;j=v[k+52>>2];g=v[k+36>>2];if(!(!g|!j)){I9(v[k+28>>2],255,g<<2);f=v[k+24>>2];d=v[k+32>>2];l=d-1|0;if(l){if(d-2>>>0>=3){j=l&-4;d=0;while(1){g=e|1;v[f+(e<<2)>>2]=g;m=f+(g<<2)|0;g=e|2;v[m>>2]=g;m=f+(g<<2)|0;g=e|3;v[m>>2]=g;e=e+4|0;v[f+(g<<2)>>2]=e;d=d+4|0;if((j|0)!=(d|0)){continue}break}}d=l&3;if(d){while(1){g=f+(e<<2)|0;e=e+1|0;v[g>>2]=e;b=b+1|0;if((d|0)!=(b|0)){continue}break}}b=v[k+32>>2]-1|0}else{b=0}v[f+(b<<2)>>2]=-1;v[k+52>>2]=0;v[k+44>>2]=0;d=v[n+12>>2]}v[k+8>>2]=0;HC(d)}g=v[h+204>>2];f:{if(!g){break f}e=-1;g:{h:{i:{d=v[h+200>>2];b=g-1|0;if((o|0)!=v[(d+(b<<3)|0)+4>>2]){j:{if((o|0)!=v[d+4>>2]){break j}while(1){e=c;c=c+1|0;if((g|0)==(c|0)){e=b;break j}if((o|0)==v[((c<<3)+d|0)+4>>2]){continue}break}}if((e|0)==-1){break f}k=e+1|0;v[h+204>>2]=g-k;if((g|0)==(k|0)){c=0;break h}f=0;while(1){c=v[h+196>>2]+B(f,24)|0;j=f+k<<3;g=j+d|0;b=v[v[g>>2]+8>>2];z[c>>2]=z[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];c=f<<3;b=c+d|0;v[b+4>>2]=v[g+4>>2];b=v[b>>2];KB(b,1);d=v[h+200>>2];g=j+d|0;v[c+d>>2]=v[g>>2];v[g+4>>2]=0;v[g>>2]=b;f=f+1|0;c=v[h+204>>2];if(f>>>0>>0){continue}break}break i}f=0;b=0;if(v[h+204>>2]){e=v[h+200>>2];while(1){d=f<<3;KB(v[d+e>>2],1);e=v[h+200>>2];v[(d+e|0)+4>>2]=0;f=f+1|0;if(f>>>0>2]){continue}break}}e=v[h+148>>2];if(!(!e|!v[h+164>>2])){I9(v[h+140>>2],255,e<<2);f=0;g=v[h+136>>2];e=v[h+144>>2];j=e-1|0;if(j){if(e-2>>>0>=3){d=j&-4;while(1){e=f|1;v[g+(f<<2)>>2]=e;m=g+(e<<2)|0;e=f|2;v[m>>2]=e;m=g+(e<<2)|0;e=f|3;v[m>>2]=e;f=f+4|0;v[g+(e<<2)>>2]=f;c=c+4|0;if((d|0)!=(c|0)){continue}break}}e=j&3;if(e){while(1){c=g+(f<<2)|0;f=f+1|0;v[c>>2]=f;b=b+1|0;if((e|0)!=(b|0)){continue}break}}b=v[h+144>>2]-1|0}else{b=0}v[g+(b<<2)>>2]=-1;v[h+164>>2]=0;v[h+156>>2]=0}v[h+204>>2]=0;KB(v[h+168>>2],1);break f}if(c>>>0>e>>>0){break g}}while(1){b=c<<3;KB(v[b+d>>2],1);d=v[h+200>>2];v[(b+d|0)+4>>2]=0;c=c+1|0;if(e>>>0>=c>>>0){continue}break}c=v[h+204>>2]}v[i+4>>2]=c;v[i+12>>2]=0;b=v[h+196>>2];v[i>>2]=4;v[i+8>>2]=b;MB(v[h+168>>2],i);jD(h+172|0,v[h+204>>2],v[h+168>>2]);v[i+8>>2]=0;v[i>>2]=0;v[i+4>>2]=0;e=v[i+12>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}v[i+8>>2]=h+128;e=v[h+148>>2];k:{if(!e){break k}b=v[h+140>>2];d=0;l:{while(1){c=b+(d<<2)|0;if(v[c>>2]!=-1){break l}d=d+1|0;v[i+4>>2]=d;if((d|0)!=(e|0)){continue}break}break k}v[i>>2]=c;v[i+4>>2]=d+1;b=v[h+132>>2];if(!b){break k}d=b+B(v[c>>2],20)|0;e=0;while(1){b=v[d+8>>2];m:{if((b|0)==(o|0)){e=e+1|0;break m}v[d+16>>2]=v[d+16>>2]-k}f=v[i>>2];n:{o:{p:{q:{if((b|0)==(o|0)){if(!f){break q}l=v[f>>2];d=l<<2;h=v[i+8>>2];v[f>>2]=v[d+v[h+8>>2]>>2];g=v[h+36>>2]-1|0;v[h+36>>2]=g;v[h+32>>2]=v[h+32>>2]+1;if((g|0)!=(l|0)){b=v[h+4>>2];c=B(l,20);j=b+c|0;g=b+B(g,20)|0;b=v[g+4>>2];v[j>>2]=v[g>>2];v[j+4>>2]=b;b=v[g+12>>2];v[j+8>>2]=v[g+8>>2];v[j+12>>2]=b;v[j+16>>2]=v[g+16>>2];n=v[h+8>>2];v[n+d>>2]=v[n+(v[h+36>>2]<<2)>>2];j=v[h+12>>2];c=c+v[h+4>>2]|0;b=v[c+4>>2];d=v[c>>2];c=b;b=-1;f=b+d|0;g=(d^-1)+c|0;g=b>>>0>f>>>0?g+1|0:g;b=f;b=b^((g&4194303)<<10|b>>>22);d=b;c=g^g>>>22;g=c<<13|b>>>19;b=b<<13^-1;d=d+b|0;c=(g^-1)+c|0;c=b>>>0>d>>>0?c+1|0:c;b=d;b=Raa(b^((c&255)<<24|b>>>8),c^c>>>8,9,0);d=Aa;c=d>>>15|0;b=b^((d&32767)<<17|b>>>15);c=c^d;g=c;f=j;d=c<<27|b>>>5;c=b<<27^-1;j=c+b|0;b=(d^-1)+g|0;b=c>>>0>j>>>0?b+1|0:b;c=j;b=f+((v[h+20>>2]-1&(c^((b&2147483647)<<1|c>>>31)))<<2)|0;f=v[b>>2];c=v[h+36>>2];if((f|0)!=(c|0)){while(1){b=n+(f<<2)|0;f=v[b>>2];if((c|0)!=(f|0)){continue}break}}v[b>>2]=l;f=v[i>>2]}v[h+28>>2]=v[h+28>>2]-1;b=v[f>>2];if((b|0)!=-1){b=v[v[i+8>>2]+4>>2]+B(b,20)|0;break n}b=0;v[i>>2]=0;f=v[i+4>>2];d=v[i+8>>2];j=v[d+20>>2];if(f>>>0>=j>>>0){break n}g=v[d+12>>2];while(1){c=g+(f<<2)|0;if(v[c>>2]!=-1){break o}f=f+1|0;v[i+4>>2]=f;if((f|0)!=(j|0)){continue}break}break n}if(f){break p}}b=0;v[i>>2]=0;f=v[i+4>>2];d=v[i+8>>2];j=v[d+20>>2];if(f>>>0>=j>>>0){break n}g=v[d+12>>2];while(1){c=g+(f<<2)|0;if(v[c>>2]!=-1){break o}f=f+1|0;v[i+4>>2]=f;if((f|0)!=(j|0)){continue}break}break n}d=v[i+8>>2];c=v[d+8>>2]+(v[f>>2]<<2)|0;b=v[c>>2];if((b|0)==-1){b=0;v[i>>2]=0;f=v[i+4>>2];j=v[d+20>>2];if(f>>>0>=j>>>0){break n}g=v[d+12>>2];while(1){c=g+(f<<2)|0;if(v[c>>2]!=-1){break o}f=f+1|0;v[i+4>>2]=f;if((f|0)!=(j|0)){continue}break}break n}v[i>>2]=c;b=v[d+4>>2]+B(b,20)|0;break n}v[i>>2]=c;v[i+4>>2]=f+1;b=v[d+4>>2]+B(v[c>>2],20)|0}d=b;if(b){continue}break}}}xa=i+16|0;t[a+338|0]=(v[a+156>>2]+v[a+108>>2]|0)!=(0-v[a+216>>2]|0)}}function w1(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=0,l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=0,D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=0,Q=0,R=0,S=C(0),T=C(0);i=xa-320|0;xa=i;q=v[b+4>>2];j=z[q+20>>2];k=v[a+4>>2];l=z[k+20>>2];D=z[d>>2];P=w[k+32|0];E=z[k+16>>2];Q=w[q+32|0];G=z[q+16>>2];v[i+44>>2]=0;J=C((j>2]=n;A=c+(i+48|0)|0;c=w[f+k|0];v[A>>2]=c;c=v[q+152>>2]+B(c,12)|0;j=z[c>>2];l=z[c+4>>2];m=z[c+8>>2];n=(1-n<<4)+R|0;o=z[n>>2];p=z[n+4>>2];r=z[n+8>>2];c=d;A=c<<4;x=A+(i+144|0)|0;z[x+12>>2]=z[n+12>>2];z[x+8>>2]=r;z[x+4>>2]=p;z[x>>2]=o;n=A+(i+80|0)|0;v[n+12>>2]=0;z[n+8>>2]=m;z[n+4>>2]=l;z[n>>2]=j;n=A+(i+208|0)|0;v[n+12>>2]=0;m=C(r-m);z[n+8>>2]=m;l=C(p-l);z[n+4>>2]=l;j=C(o-j);z[n>>2]=j;d=c+1|0;v[i+44>>2]=d;k=k+1|0;if((L|0)!=(k|0)){continue}break}g:{h:{switch(c-1|0){case 0:o=z[i+216>>2];j=C(z[i+232>>2]-o);p=z[i+208>>2];l=C(z[i+224>>2]-p);r=z[i+212>>2];m=C(z[i+228>>2]-r);s=C(C(j*j)+C(C(l*l)+C(m*m)));if(!(s<=C(1.1920928955078125e-7))){break g}v[i+44>>2]=1;c=v[i+212>>2];v[i+16>>2]=v[i+208>>2];v[i+20>>2]=c;c=v[i+220>>2];v[i+24>>2]=v[i+216>>2];v[i+28>>2]=c;break e;case 1:iY(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}}P_(i+16|0,i+208|0,i+144|0,i+80|0,i- -64|0,i+48|0,i+44|0);break e}v[i+28>>2]=0;y=j;j=C(F(C(C(C(C(C(-p)*l)-C(m*r))-C(o*j))/s),C(1)));j=j>C(0)?j:C(0);z[i+24>>2]=o+C(y*j);z[i+20>>2]=r+C(m*j);z[i+16>>2]=p+C(l*j);break e}j=z[c+8>>2];m=z[c>>2];l=z[c+4>>2];v[i+284>>2]=0;c=C(C(j*j)+C(C(m*m)+C(l*l)))>C(0);j=c?j:C(0);z[i+280>>2]=j;l=c?l:C(0);z[i+276>>2]=l;m=c?m:C(1);z[i+272>>2]=m;p=C(C(1)/C(K(C(C(j*j)+C(C(m*m)+C(l*l))))));s=C(j*p);u=C(m*p);o=C(34028234663852886e22);y=C(l*p);break d}v[i+28>>2]=0;z[i+24>>2]=m;z[i+20>>2]=l;z[i+16>>2]=j}c=v[i+20>>2];v[i+272>>2]=v[i+16>>2];v[i+276>>2]=c;c=v[i+28>>2];v[i+280>>2]=v[i+24>>2];v[i+284>>2]=c;j=z[i+280>>2];m=z[i+272>>2];l=z[i+276>>2];o=C(K(C(C(j*j)+C(C(m*m)+C(l*l)))));if(!(J>2]=v[i+312>>2];c=v[i+308>>2];v[i+288>>2]=v[i+304>>2];v[i+292>>2]=c;D=m;c=v[a+4>>2];k=c+52|0;E=l;G=j;q=v[i+44>>2]<<2;m=C(-m);n=c+56|0;x=c+68|0;A=c+72|0;d=C(C(C(z[c+48>>2]*m)-C(z[k>>2]*l))-C(z[n>>2]*j))>C(C(C(z[c+64>>2]*m)-C(z[x>>2]*l))-C(z[A>>2]*j));v[q+(i- -64|0)>>2]=d;j=z[(d?n:A)>>2];l=z[(d?c+48|0:c- -64|0)>>2];m=z[(d?k:x)>>2];T=z[i+284>>2];c=v[b+4>>2];d=HV(c,i+272|0);v[q+(i+48|0)>>2]=d;c=v[c+152>>2]+B(d,12)|0;M=z[c+8>>2];o=C(j-M);N=z[c>>2];H=C(l-N);O=z[c+4>>2];I=C(m-O);y=C(C(s*o)+C(C(u*H)+C(r*I)));if(y>S){a=0;if(!e){break a}b=v[i+44>>2];t[g|0]=b;if(!b){break a}k=0;if((b|0)!=1){h=b&-2;d=0;while(1){c=k<<2;q=i- -64|0;t[e+k|0]=v[c+q>>2];n=i+48|0;t[f+k|0]=v[n+c>>2];c=k|1;g=c<<2;t[c+e|0]=v[g+q>>2];t[c+f|0]=v[g+n>>2];k=k+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(b&1)){break a}b=k<<2;t[e+k|0]=v[b+(i- -64|0)>>2];t[f+k|0]=v[b+(i+48|0)>>2];break a}d=v[i+44>>2];if(C(p*C(.9997749924659729))>2];n=i+48|0;t[c+f|0]=v[n+b>>2];b=c|1;g=b<<2;t[b+e|0]=v[g+q>>2];t[b+f|0]=v[g+n>>2];c=c+2|0;a=a+2|0;if((k|0)!=(a|0)){continue}break}}if(!(d&1)){break i}a=c<<2;t[c+e|0]=v[a+(i- -64|0)>>2];t[c+f|0]=v[a+(i+48|0)>>2]}z[h+32>>2]=u;v[h+44>>2]=0;z[h+40>>2]=s;z[h+36>>2]=r;IV(i+208|0,i+144|0,i+80|0,i+272|0,i+16|0,i,d);a=v[i+20>>2];v[h>>2]=v[i+16>>2];v[h+4>>2]=a;a=v[i+28>>2];v[h+8>>2]=v[i+24>>2];v[h+12>>2]=a;a=v[i+4>>2];v[h+16>>2]=v[i>>2];v[h+20>>2]=a;a=v[i+12>>2];v[h+24>>2]=v[i+8>>2];v[h+28>>2]=a;a=v[i+308>>2];v[h+68>>2]=v[i+304>>2];v[h+72>>2]=a;v[h+76>>2]=v[i+312>>2];z[h+64>>2]=p;a=2;break a}k=d<<4;c=k+(i+144|0)|0;v[c+12>>2]=0;z[c+8>>2]=j;z[c+4>>2]=m;z[c>>2]=l;c=k+(i+80|0)|0;v[c+12>>2]=0;z[c+8>>2]=M;z[c+4>>2]=O;z[c>>2]=N;c=k+(i+208|0)|0;v[c+12>>2]=0;z[c+8>>2]=o;z[c+4>>2]=I;z[c>>2]=H;v[i+44>>2]=d+1;j:{k:{switch(d-1|0){case 0:o=z[i+216>>2];j=C(z[i+232>>2]-o);r=z[i+208>>2];l=C(z[i+224>>2]-r);s=z[i+212>>2];m=C(z[i+228>>2]-s);u=C(C(j*j)+C(C(l*l)+C(m*m)));if(u<=C(1.1920928955078125e-7)){v[i+44>>2]=1;c=v[i+212>>2];v[i+16>>2]=v[i+208>>2];v[i+20>>2]=c;c=v[i+220>>2];v[i+24>>2]=v[i+216>>2];v[i+28>>2]=c;break j}v[i+28>>2]=0;y=j;j=C(F(C(C(C(C(C(-r)*l)-C(m*s))-C(o*j))/u),C(1)));j=j>C(0)?j:C(0);z[i+24>>2]=o+C(y*j);z[i+20>>2]=s+C(m*j);z[i+16>>2]=r+C(l*j);break j;case 1:iY(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:P_(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}}v[i+28>>2]=0;z[i+24>>2]=o;z[i+20>>2]=I;z[i+16>>2]=H}c=v[i+20>>2];v[i+272>>2]=v[i+16>>2];v[i+276>>2]=c;c=v[i+28>>2];v[i+280>>2]=v[i+24>>2];v[i+284>>2]=c;j=z[i+280>>2];m=z[i+272>>2];l=z[i+276>>2];o=C(K(C(C(j*j)+C(C(m*m)+C(l*l)))));u=C(C(1)/o);s=C(j*u);r=C(l*u);u=C(m*u);if(oJ){continue}break}c=v[i+44>>2];if(!(o>2];x=i+48|0;t[f+k|0]=v[x+d>>2];d=k|1;g=d<<2;t[d+e|0]=v[g+n>>2];t[d+f|0]=v[g+x>>2];k=k+2|0;a=a+2|0;if((q|0)!=(a|0)){continue}break}}if(!(b&1)){break l}a=k<<2;t[e+k|0]=v[a+(i- -64|0)>>2];t[f+k|0]=v[a+(i+48|0)>>2]}v[i+312>>2]=v[i+296>>2];a=v[i+292>>2];v[i+304>>2]=v[i+288>>2];v[i+308>>2]=a;z[i+284>>2]=T;z[i+272>>2]=D;z[i+276>>2]=E;z[i+280>>2]=G;IV(i+208|0,i+144|0,i+80|0,i+272|0,i+16|0,i,c);v[h+60>>2]=0;z[h+56>>2]=s;z[h+52>>2]=r;z[h+48>>2]=u;v[h+44>>2]=0;j=C(C(1)/p);z[h+40>>2]=G*j;z[h+36>>2]=E*j;z[h+32>>2]=D*j;a=v[i+20>>2];v[h>>2]=v[i+16>>2];v[h+4>>2]=a;a=v[i+28>>2];v[h+8>>2]=v[i+24>>2];v[h+12>>2]=a;a=v[i+4>>2];v[h+16>>2]=v[i>>2];v[h+20>>2]=a;a=v[i+12>>2];v[h+24>>2]=v[i+8>>2];v[h+28>>2]=a;z[h+64>>2]=p;a=v[i+292>>2];v[h+68>>2]=v[i+288>>2];v[h+72>>2]=a;v[h+76>>2]=v[i+296>>2];a=4;break a}if(e){break b}a=5;break a}c=v[i+44>>2]}t[g|0]=c;a=5;if(!c){break a}k=0;if((c|0)!=1){h=c&-2;d=0;while(1){b=k<<2;q=i- -64|0;t[e+k|0]=v[b+q>>2];n=i+48|0;t[f+k|0]=v[n+b>>2];b=k|1;g=b<<2;t[b+e|0]=v[g+q>>2];t[b+f|0]=v[g+n>>2];k=k+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(c&1)){break a}b=k<<2;t[e+k|0]=v[b+(i- -64|0)>>2];t[f+k|0]=v[b+(i+48|0)>>2]}xa=i+320|0;return a}function F1(a,b,c,d,e){var f=0,g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=0,q=C(0),r=0,s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;f=xa-96|0;xa=f;s=z[a+3640>>2];g=z[b+12>>2];i=z[b>>2];R=C(g-i);q=z[b+28>>2];n=z[b+4>>2];S=C(q-n);y=z[b+24>>2];T=C(y-i);k=z[b+16>>2];U=C(k-n);D=C(C(R*S)-C(T*U));Z=z[b+32>>2];o=z[b+8>>2];V=C(Z-o);l=z[b+20>>2];W=C(l-o);E=C(C(U*V)-C(S*W));F=C(C(W*T)-C(V*R));ea=C(C(D*D)+C(C(E*E)+C(F*F)));A=C(C(1)/C(K(ea)));_=C(D*A);u=z[a+3632>>2];$=C(E*A);x=z[a+3636>>2];A=C(F*A);a:{if(C(C(C(s*_)+C(C(u*$)+C(x*A)))-C(C(o*_)+C(C(i*$)+C(n*A))))>2]=o;z[f+84>>2]=n;z[f+80>>2]=i;v[f+92>>2]=0;m=(d&40)!=0;g=C(C(G*G)+C(C(H*H)+C(I*I)));break d}J=C(s-l);L=C(u-g);M=C(x-k);ca=C(C(V*J)+C(C(T*L)+C(S*M)));X=C(C(W*J)+C(C(R*L)+C(U*M)));if(!(!(X>=C(0))|!(X>=ca))){z[f+88>>2]=l;z[f+84>>2]=k;z[f+80>>2]=g;v[f+92>>2]=0;m=(d&24)!=0;o=l;n=k;i=g;g=C(C(J*J)+C(C(L*L)+C(M*M)));break d}N=C(s-Z);O=C(u-y);P=C(x-q);da=C(C(W*N)+C(C(R*O)+C(U*P)));Y=C(C(V*N)+C(C(T*O)+C(S*P)));if(!(!(Y>=C(0))|!(Y>=da))){z[f+88>>2]=Z;z[f+84>>2]=q;z[f+80>>2]=y;v[f+92>>2]=0;m=(d&48)!=0;o=Z;n=q;i=y;g=C(C(N*N)+C(C(O*O)+C(P*P)));break d}if(!(!(X=C(0))))){v[f+92>>2]=0;g=C(ba/C(ba-X));o=C(o+C(W*g));z[f+88>>2]=o;n=C(n+C(U*g));z[f+84>>2]=n;i=C(i+C(R*g));z[f+80>>2]=i;m=d>>>3&1;g=C(s-o);k=C(g*g);g=C(u-i);l=C(g*g);g=C(x-n);g=C(k+C(l+C(g*g)));break d}if(!(!(Y<=da)|(!(C(C(D*C(C(L*P)-C(O*M)))+C(C(E*C(C(M*N)-C(P*J)))+C(F*C(C(J*O)-C(N*L)))))>2]=0;i=C(ca-X);i=C(i/C(i+C(da-Y)));o=C(l+C(C(Z-l)*i));z[f+88>>2]=o;n=C(k+C(C(q-k)*i));z[f+84>>2]=n;i=C(g+C(C(y-g)*i));z[f+80>>2]=i;m=d>>>4&1;g=C(s-o);k=C(g*g);g=C(u-i);l=C(g*g);g=C(x-n);g=C(k+C(l+C(g*g)));break d}if(!(Y=C(0)))){break c}v[f+92>>2]=0;g=C(aa/C(aa-Y));o=C(o+C(V*g));z[f+88>>2]=o;n=C(n+C(S*g));z[f+84>>2]=n;i=C(i+C(T*g));z[f+80>>2]=i;m=d>>>5&1;g=C(s-o);k=C(g*g);g=C(u-i);l=C(g*g);g=C(x-n);g=C(k+C(l+C(g*g)))}if(!(g>2])){break a}k=C(s-o);y=C(u-i);l=C(x-n);q=C(C(1)/C(K(C(C(k*k)+C(C(y*y)+C(l*l))))));k=C(k*q);z[f+72>>2]=k;l=C(l*q);z[f+68>>2]=l;q=C(y*q);z[f+64>>2]=q;break b}v[f+92>>2]=0;i=C(C(C(D*C(o-s))+C(C(E*C(i-u))+C(F*C(n-x))))/ea);g=C(D*i);o=C(s+g);z[f+88>>2]=o;k=C(F*i);n=C(x+k);z[f+84>>2]=n;l=C(E*i);i=C(u+l);z[f+80>>2]=i;g=C(C(g*g)+C(C(l*l)+C(k*k)));if(!(g>2])){break a}z[f+72>>2]=_;z[f+68>>2]=A;z[f+64>>2]=$;m=1;k=_;l=A;q=$}v[f+76>>2]=0;if(C(C(k*_)+C(C(q*$)+C(A*l)))>C(.9959999918937683)){i=C(K(g));b=v[a+3616>>2];e:{if((b|0)==128){break e}Q=a+2336|0;d=v[e>>2];m=v[e+4>>2];h=d>>>0>>0?d:m;j=d>>>0>m>>>0?d:m;d=h<<16|j;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;p=(((d>>>16^d)&127)+a|0)+3488|0;d=w[p|0];f:{if((d|0)!=255){while(1){d=d&255;p=Q+(d<<3)|0;if((h|0)==v[p>>2]&(j|0)==v[p+4>>2]){break f}p=(a+d|0)+3360|0;d=w[p|0];if((d|0)!=255){continue}break}}t[p|0]=b;t[(a+b|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;d=Q+(b<<3)|0;v[d>>2]=h;v[d+4>>2]=j;m=v[e+4>>2];b=v[a+3616>>2]}if((b|0)==128){break e}h=v[e+8>>2];r=h>>>0>m>>>0?m:h;j=h>>>0>>0?m:h;d=r<<16|j;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;p=(((d>>>16^d)&127)+a|0)+3488|0;d=w[p|0];g:{if((d|0)!=255){while(1){d=d&255;m=Q+(d<<3)|0;if((r|0)==v[m>>2]&(j|0)==v[m+4>>2]){break g}p=(a+d|0)+3360|0;d=w[p|0];if((d|0)!=255){continue}break}}t[p|0]=b;t[(a+b|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;d=Q+(b<<3)|0;v[d>>2]=r;v[d+4>>2]=j;b=v[a+3616>>2];h=v[e+8>>2]}if((b|0)==128){break e}d=v[e>>2];m=d>>>0>h>>>0?h:d;j=d>>>0>>0?h:d;d=m<<16|j;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;e=(((d>>>16^d)&127)+a|0)+3488|0;d=w[e|0];if((d|0)!=255){while(1){d=d&255;e=Q+(d<<3)|0;if((m|0)==v[e>>2]&(j|0)==v[e+4>>2]){break e}e=(a+d|0)+3360|0;d=w[e|0];if((d|0)!=255){continue}break}}t[e|0]=b;t[(a+b|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;d=Q+(b<<3)|0;v[d>>2]=m;v[d+4>>2]=j}z[f+48>>2]=i;b=v[f+60>>2];v[f+8>>2]=v[f+56>>2];v[f+12>>2]=b;b=v[f+52>>2];v[f>>2]=v[f+48>>2];v[f+4>>2]=b;G1(a,f+80|0,f- -64|0,f,c);break a}d=v[a+3620>>2];p=v[d+4360>>2];b=p+15|0;if(b>>>0>(v[d+4364>>2]&2147483647)>>>0){FZ(d,b);d=v[a+3620>>2];p=v[d+4360>>2]}v[d+4360>>2]=b;d=v[d+4356>>2];z[f+16>>2]=g;b=v[a+5736>>2];v[f+32>>2]=b;j=d+(p<<2)|0;h:{if(b>>>0>=(v[a+5740>>2]&2147483647)>>>0){b=0;a=a+3680|0;d=v[a+2060>>2];p=d&2147483647?d<<1:1;i:{if(!p){break i}d=p<<5;if(!(w[a+2048|0]|d>>>0>2048)){t[a+2048|0]=1;b=a;break i}if(!d){break i}b=v[37696];h=b+12|0;b=(ga=h,ha=d,ia=Ba[v[v[b>>2]+20>>2]](b)|0?43241:63804,ja=16608,ka=553,fa=v[v[h>>2]+8>>2],Ba[fa](ga|0,ha|0,ia|0,ja|0,ka|0)|0)}d=v[a+2056>>2];if((d|0)>0){Q=(d<<5)+b|0;h=v[a+2052>>2];d=b;while(1){r=v[h+4>>2];v[d>>2]=v[h>>2];v[d+4>>2]=r;r=v[h+28>>2];v[d+24>>2]=v[h+24>>2];v[d+28>>2]=r;r=v[h+20>>2];v[d+16>>2]=v[h+16>>2];v[d+20>>2]=r;r=v[h+12>>2];v[d+8>>2]=v[h+8>>2];v[d+12>>2]=r;h=h+32|0;d=d+32|0;if(Q>>>0>d>>>0){continue}break}d=v[a+2056>>2]}h=v[f+20>>2];d=(d<<5)+b|0;v[d>>2]=v[f+16>>2];v[d+4>>2]=h;h=v[f+44>>2];v[d+24>>2]=v[f+40>>2];v[d+28>>2]=h;h=v[f+36>>2];v[d+16>>2]=v[f+32>>2];v[d+20>>2]=h;h=v[f+28>>2];v[d+8>>2]=v[f+24>>2];v[d+12>>2]=h;j:{if(v[a+2060>>2]<0){break j}d=v[a+2052>>2];if((d|0)==(a|0)){t[a+2048|0]=0;break j}if(!d){break j}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,d)}v[a+2060>>2]=p;v[a+2052>>2]=b;v[a+2056>>2]=v[a+2056>>2]+1;break h}d=v[f+20>>2];b=v[a+5732>>2]+(b<<5)|0;v[b>>2]=v[f+16>>2];v[b+4>>2]=d;d=v[f+44>>2];v[b+24>>2]=v[f+40>>2];v[b+28>>2]=d;d=v[f+36>>2];v[b+16>>2]=v[f+32>>2];v[b+20>>2]=d;d=v[f+28>>2];v[b+8>>2]=v[f+24>>2];v[b+12>>2]=d;v[a+5736>>2]=v[a+5736>>2]+1}t[j+56|0]=m;v[j+52>>2]=0;v[j+48>>2]=c;v[j+36>>2]=v[e>>2];v[j+40>>2]=v[e+4>>2];a=v[e+8>>2];z[j+32>>2]=g;z[j+28>>2]=g;z[j+24>>2]=g;z[j+20>>2]=k;z[j+16>>2]=l;z[j+12>>2]=q;z[j+8>>2]=o;z[j+4>>2]=n;z[j>>2]=i;v[j+44>>2]=a}xa=f+96|0}function xA(a,b){var c=C(0),d=0,e=0,f=0,g=C(0),h=C(0),i=0,j=0,k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=0,za=0,Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=0,Ma=0,Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=0,Xa=0,Ya=0,Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=0,mb=0,nb=0;i=v[a>>2];j=v[a+32>>2];k=v[a+64>>2];l=v[a+96>>2];d=v[a+24>>2];m=x[a+22>>1];Wa=xa-16|0;a=Wa;v[a+8>>2]=2139095039;v[a+12>>2]=2139095039;v[a>>2]=2139095039;v[a+4>>2]=2139095039;X=z[l+24>>2];Y=z[l+20>>2];Z=z[k+24>>2];_=z[k+20>>2];$=z[j+24>>2];aa=z[j+20>>2];ba=z[i+24>>2];ca=z[i+20>>2];db=z[l+28>>2];da=z[l+16>>2];eb=z[l+12>>2];ea=z[l+8>>2];fa=z[l+4>>2];ga=z[l>>2];fb=z[k+28>>2];ha=z[k+16>>2];gb=z[k+12>>2];ia=z[k+8>>2];ja=z[k+4>>2];ka=z[k>>2];hb=z[j+28>>2];la=z[j+16>>2];ib=z[j+12>>2];ma=z[j+8>>2];na=z[j+4>>2];oa=z[j>>2];jb=z[i+28>>2];pa=z[i+16>>2];kb=z[i+12>>2];qa=z[i+8>>2];ra=z[i+4>>2];sa=z[i>>2];if(m){lb=(m<<4)+d|0;Sa=z[d+76>>2];Ta=z[d+72>>2];Ua=z[d+68>>2];Va=z[d+64>>2];La=d+288|0;while(1){a=d;Ma=a+192|0;V=w[a+1|0];d=V<<4;ya=Ma+d|0;K=t[a+3|0]&1;f=d&0-K;d=ya+B(V,96)|0;za=f+d|0;f=w[a+2|0];Xa=za+(((f|0)!=0)<<7)|0;Ya=Xa+(f<<4)|0;mb=B(f,96);Ca=z[a+172>>2];L=z[a+168>>2];M=z[a+164>>2];Da=z[a+156>>2];Ea=z[a+152>>2];N=z[a+148>>2];Fa=z[a+140>>2];Ga=z[a+136>>2];O=z[a+132>>2];Za=z[a+108>>2];_a=z[a+104>>2];$a=z[a+100>>2];Ha=z[a+160>>2];Ia=z[a+144>>2];Ja=z[a+128>>2];ab=z[a+96>>2];a:{if(!V){s=C(0);u=C(0);y=C(0);A=C(0);c=C(0);P=C(0);Q=C(0);R=C(0);break a}nb=K?d:Wa;Aa=C(C(C(sa*Ja)+C(ra*Ia))+C(qa*Ha));E=C(C(C(oa*O)+C(na*N))+C(ma*M));F=C(C(C(ka*Ga)+C(ja*Ea))+C(ia*L));Ba=C(C(C(ga*Fa)+C(fa*Da))+C(ea*Ca));R=C(0);m=0;Q=C(0);P=C(0);c=C(0);A=C(0);y=C(0);u=C(0);s=C(0);while(1){D=((K?m:0)<<4)+nb|0;g=z[D>>2];S=z[D+4>>2];T=z[D+8>>2];e=Ma+(m<<4)|0;n=z[e>>2];d=ya+B(m,96)|0;G=z[d+80>>2];ta=z[d+48>>2];Na=z[d+32>>2];Oa=z[d>>2];Pa=z[d+16>>2];h=z[e+4>>2];H=z[d+84>>2];ua=z[d+52>>2];Qa=z[d+36>>2];q=z[d+4>>2];va=z[d+20>>2];o=z[e+8>>2];I=z[d+88>>2];wa=z[d+56>>2];r=z[d+40>>2];Ra=z[d+8>>2];J=z[d+24>>2];U=z[e+12>>2];p=C(-U);W=z[d+12>>2];bb=z[d+28>>2];cb=z[d+44>>2];Ka=C(z[d+92>>2]-C(C(C(C(Ba+C(da*W))+C(Y*bb))+C(X*cb))*z[d+60>>2]));p=C(U+(p>2];p=p>2]=p;I=C(I-C(wa*C(C(C(F+C(ha*Ra))+C(_*J))+C(Z*r))));wa=C(-o);I=C(o+(I>wa?I:wa));T=T>I?I:T;z[e+8>>2]=T;H=C(H-C(ua*C(C(C(E+C(la*q))+C(aa*va))+C($*Qa))));ua=C(-h);H=C(h+(H>ua?H:ua));S=S>H?H:S;z[e+4>>2]=S;G=C(G-C(ta*C(C(C(Aa+C(pa*Oa))+C(ca*Pa))+C(ba*Na))));ta=C(-n);G=C(n+(G>ta?G:ta));g=g>G?G:g;z[e>>2]=g;R=C(R+p);Q=C(Q+T);P=C(P+S);c=C(c+g);U=C(p-U);A=C(A+U);o=C(T-o);y=C(y+o);h=C(S-h);u=C(u+h);n=C(g-n);s=C(s+n);Ba=C(Ba+C(Sa*U));F=C(F+C(Ta*o));E=C(E+C(Ua*h));Aa=C(Aa+C(Va*n));g=C(Za*U);X=C(X+C(cb*g));o=C(_a*o);Z=C(Z+C(r*o));h=C($a*h);$=C($+C(Qa*h));n=C(ab*n);ba=C(ba+C(Na*n));Y=C(Y+C(bb*g));_=C(_+C(J*o));aa=C(aa+C(va*h));ca=C(ca+C(Pa*n));da=C(da+C(W*g));ha=C(ha+C(Ra*o));la=C(la+C(q*h));pa=C(pa+C(Oa*n));La=La+192|0;m=m+1|0;if((V|0)!=(m|0)){continue}break}}d=Ya+mb|0;A=C(Sa*A);ea=C(ea+C(Ca*A));y=C(Ta*y);ia=C(ia+C(L*y));u=C(Ua*u);ma=C(ma+C(M*u));s=C(Va*s);qa=C(qa+C(Ha*s));fa=C(fa+C(Da*A));ja=C(ja+C(Ea*y));na=C(na+C(N*u));ra=C(ra+C(Ia*s));ga=C(ga+C(Fa*A));ka=C(ka+C(Ga*y));oa=C(oa+C(O*u));sa=C(sa+C(Ja*s));if(!(!w[b|0]|!f)){Na=C(c*z[a+32>>2]);Oa=C(R*z[a+44>>2]);Pa=C(Q*z[a+40>>2]);Qa=C(P*z[a+36>>2]);s=C(c*z[a+48>>2]);u=C(-s);R=C(R*z[a+60>>2]);y=C(-R);Q=C(Q*z[a+56>>2]);A=C(-Q);P=C(P*z[a+52>>2]);Aa=C(-P);Ma=f>>>0>1?f:1;m=0;V=0;D=0;ya=0;K=0;while(1){a=B(m,96)+Ya|0;q=z[a+48>>2];f=(m<<4)+Xa|0;E=z[f>>2];va=z[a+64>>2];e=((m&1)<<4)+za|0;F=z[e+96>>2];Ba=z[e+32>>2];n=z[e- -64>>2];h=z[a+32>>2];o=z[a>>2];Ca=z[a+16>>2];L=z[f+4>>2];r=z[a+52>>2];Ra=z[a+68>>2];M=z[e+100>>2];Da=z[e+36>>2];Ea=z[e+68>>2];N=z[a+36>>2];Fa=z[a+20>>2];Ga=z[a+4>>2];O=z[f+8>>2];J=z[a+56>>2];U=z[a+72>>2];Ha=z[e+104>>2];Ia=z[e+40>>2];Ja=z[e+72>>2];g=z[a+40>>2];S=z[a+24>>2];T=z[a+8>>2];p=z[f+12>>2];G=z[e+44>>2];ta=z[e+76>>2];H=z[e+108>>2];ua=z[a+12>>2];I=z[a+28>>2];wa=z[a+44>>2];c=C(C(p-z[a+60>>2])-C(C(C(C(C(ga*G)+C(fa*ta))+C(ea*H))+C(C(C(da*ua)+C(Y*I))+C(X*wa)))*z[a+76>>2]));W=cC(0)?c:C(-c));W=a?R>2]=W;c=C(C(O-J)-C(U*C(C(C(C(ka*Ia)+C(ja*Ja))+C(ia*Ha))+C(C(C(ha*T)+C(_*S))+C(Z*g)))));J=cC(0)?c:C(-c));J=e?Q>2]=J;c=C(C(L-r)-C(Ra*C(C(C(C(oa*Da)+C(na*Ea))+C(ma*M))+C(C(C(la*Ga)+C(aa*Fa))+C($*N)))));r=cC(0)?c:C(-c));r=D?r>P?P:r:c;z[f+4>>2]=r;K=f;c=C(C(E-q)-C(va*C(C(C(C(sa*Ba)+C(ra*n))+C(qa*F))+C(C(C(pa*o)+C(ca*Ca))+C(ba*h)))));q=cC(0)?c:C(-c));q=f?s>2]=q;va=C(W-p);c=C(Za*va);X=C(X+C(wa*c));p=g;g=C(J-O);O=C(_a*g);Z=C(Z+C(p*O));r=C(r-L);L=C($a*r);$=C($+C(N*L));q=C(q-E);E=C(ab*q);ba=C(ba+C(h*E));h=C(Sa*va);ea=C(ea+C(H*h));N=C(Ta*g);ia=C(ia+C(Ha*N));g=M;M=C(Ua*r);ma=C(ma+C(g*M));g=F;F=C(Va*q);qa=C(qa+C(g*F));Y=C(Y+C(I*c));_=C(_+C(S*O));aa=C(aa+C(Fa*L));ca=C(ca+C(Ca*E));fa=C(fa+C(ta*h));ja=C(ja+C(Ja*N));na=C(na+C(Ea*M));ra=C(ra+C(n*F));da=C(da+C(ua*c));ha=C(ha+C(T*O));la=C(la+C(Ga*L));pa=C(pa+C(o*E));ga=C(ga+C(G*h));ka=C(ka+C(Ia*N));oa=C(oa+C(Da*M));sa=C(sa+C(Ba*F));K=0-a|0;ya=0-e|0;D=0-D|0;V=0-f|0;La=La+192|0;m=m+1|0;if((Ma|0)!=(m|0)){continue}break}v[za+12>>2]=K;v[za+8>>2]=ya;v[za+4>>2]=D;v[za>>2]=V}if(d>>>0>>0){continue}break}}z[i+12>>2]=kb;z[i+8>>2]=qa;z[i+4>>2]=ra;z[i>>2]=sa;z[j+12>>2]=ib;z[j+8>>2]=ma;z[j+4>>2]=na;z[j>>2]=oa;z[k+12>>2]=gb;z[k+8>>2]=ia;z[k+4>>2]=ja;z[k>>2]=ka;z[l+12>>2]=eb;z[l+8>>2]=ea;z[l+4>>2]=fa;z[l>>2]=ga;z[i+28>>2]=jb;z[i+24>>2]=ba;z[i+20>>2]=ca;z[i+16>>2]=pa;z[j+28>>2]=hb;z[j+24>>2]=$;z[j+20>>2]=aa;z[j+16>>2]=la;z[k+28>>2]=fb;z[k+24>>2]=Z;z[k+20>>2]=_;z[k+16>>2]=ha;z[l+28>>2]=db;z[l+24>>2]=X;z[l+20>>2]=Y;z[l+16>>2]=da}function PQ(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=C(0);h=v[a+20>>2];m=xa-2048|0;xa=m;e=v[a+28>>2];a=v[v[e+976>>2]+1816>>2];t[a+20|0]=0;c=v[e+1140>>2];t[c+16|0]=0;d=v[e+1012>>2];Ba[v[v[d>>2]+76>>2]](d,a,c,h);a=v[e+2704>>2];f=v[e+1e3>>2];i=v[f+432>>2];if(a>>>0>>0){l=v[e+980>>2]+160|0;g=v[f+428>>2];while(1){c=v[(v[f+184>>2]+B(v[g+(a<<2)>>2]>>>7|0,24)|0)+20>>2];j=c-20|0;d=v[j>>2];b=v[c+36>>2];z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];z[b+12>>2]=z[c+12>>2];z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];z[b+24>>2]=z[c+24>>2];k=c+-64|0;eH(k,l);j=w[v[j>>2]+9|0];b=v[e+1012>>2];v[m+1024>>2]=v[c+80>>2];Ba[v[v[b>>2]+44>>2]](b,(j|0)==2,m+1024|0);b=x[c+28>>1];if(b&2){tH(k,v[e+980>>2]+160|0);b=x[c+28>>1]}v[d+104>>2]=0;v[d+96>>2]=0;v[d+100>>2]=0;v[d+88>>2]=0;v[d+80>>2]=0;v[d+84>>2]=0;v[d+156>>2]=0;u[c+28>>1]=b&1;a=a+1|0;if((i|0)!=(a|0)){continue}break}}a:{if(!v[e+1172>>2]){break a}d=v[v[e+976>>2]+1156>>2];b=0;while(1){a=vr(d,40);c=v[e+1172>>2];f=v[e+1168>>2];i=v[e+16>>2];l=v[e+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=i;v[a+12>>2]=l;v[a>>2]=135396;v[a+20>>2]=h;v[a+24>>2]=1;v[a+28>>2]=f+(b<<2);c=c-b|0;v[a+32>>2]=c>>>0<256?c:256;if(h){Ba[v[v[h>>2]+16>>2]](h);v[a+16>>2]=v[v[a+20>>2]+16>>2];c=v[a>>2]}else{c=135396}Ba[v[c+20>>2]](a);a=v[e+1172>>2];b=b+256|0;if(a>>>0>b>>>0){continue}break}if(!a){break a}c=v[e+980>>2];d=0;while(1){b=v[v[e+1168>>2]+(d<<2)>>2];b:{if(t[b+92|0]&1){break b}f=v[b+32>>2];if(!f){break b}while(1){i=v[f+8>>2];if((i|0)<0){l=i&2147483647;b=l+32>>>5|0;c:{if(b>>>0<=(v[c+164>>2]&2147483647)>>>0){a=v[c+160>>2];break c}a=v[c+168>>2];a=Ba[v[v[a>>2]+8>>2]](a,b<<2,17999,438)|0;g=v[c+160>>2];d:{if(!g){break d}H9(a,g,v[c+164>>2]<<2);if(v[c+164>>2]<0){break d}g=v[c+160>>2];if(!g){break d}j=v[c+168>>2];Ba[v[v[j>>2]+12>>2]](j,g)}g=v[c+164>>2];I9((g<<2)+a|0,0,b-g<<2);v[c+164>>2]=b;v[c+160>>2]=a}a=(l>>>3&268435452)+a|0;v[a>>2]=v[a>>2]|1<>2];if(f){continue}break}a=v[e+1172>>2]}d=d+1|0;if(d>>>0>>0){continue}break}if(!a){break a}d=0;b=0;while(1){c=a-b|0;i=c>>>0<256?c:256;e:{if(!i){break e}a=a+d|0;a=a>>>0<256?a:256;l=a&1;c=v[e+1168>>2];f=0;if((a|0)!=1){g=a&510;a=0;while(1){j=f<<2;k=m+1024|0;o=c+(b+f<<2)|0;v[j+k>>2]=v[o>>2]- -64;v[j+m>>2]=v[v[o>>2]+144>>2]>>>7;n=k;j=f|1;k=j<<2;j=c+(b+j<<2)|0;v[n+k>>2]=v[j>>2]- -64;v[k+m>>2]=v[v[j>>2]+144>>2]>>>7;f=f+2|0;a=a+2|0;if((g|0)!=(a|0)){continue}break}}if(!l){break e}a=f<<2;c=c+(b+f<<2)|0;v[a+(m+1024|0)>>2]=v[c>>2]- -64;v[a+m>>2]=v[v[c>>2]+144>>2]>>>7}a=v[e+1012>>2];Ba[v[v[a>>2]+28>>2]](a,m+1024|0,m,i);d=d-256|0;a=v[e+1172>>2];b=b+256|0;if(a>>>0>b>>>0){continue}break}}a=0;c=0;d=0;l=xa-16|0;xa=l;f=v[e+36>>2];f:{if(!f){break f}i=v[e+24>>2];g=v[v[e+976>>2]+1156>>2];g:{if(!h){while(1){d=v[v[v[i+(a<<2)>>2]>>2]+36>>2]+d|0;h:{if(d>>>0<=1023){a=a+1|0;break h}b=vr(g,48);j=v[v[e+976>>2]+1816>>2];k=v[e+1140>>2];o=v[e+16>>2];q=v[e+20>>2];d=0;v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=o;v[b+12>>2]=q;v[b+40>>2]=k;v[b+36>>2]=j;a=a+1|0;v[b+32>>2]=a-c;v[b+28>>2]=i+(c<<2);v[b>>2]=135060;v[b+24>>2]=1;c=v[b+16>>2];Ba[v[v[c>>2]+72>>2]](c,b);c=a}if((a|0)!=(f|0)){continue}break}break g}while(1){d=v[v[v[i+(a<<2)>>2]>>2]+36>>2]+d|0;i:{if(d>>>0<=1023){a=a+1|0;break i}b=vr(g,48);j=v[v[e+976>>2]+1816>>2];k=v[e+1140>>2];o=v[e+16>>2];q=v[e+20>>2];d=0;v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=o;v[b+12>>2]=q;v[b+40>>2]=k;v[b+36>>2]=j;a=a+1|0;v[b+32>>2]=a-c;v[b+28>>2]=i+(c<<2);v[b>>2]=135060;v[b+20>>2]=h;v[b+24>>2]=1;Ba[v[v[h>>2]+16>>2]](h);v[b+16>>2]=v[v[b+20>>2]+16>>2];Ba[v[v[b>>2]+20>>2]](b);c=a}if((a|0)!=(f|0)){continue}break}}if(d){a=vr(g,48);d=v[v[e+976>>2]+1816>>2];b=v[e+1140>>2];g=v[e+16>>2];j=v[e+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=g;v[a+12>>2]=j;v[a+40>>2]=b;v[a+36>>2]=d;v[a+32>>2]=f-c;v[a+28>>2]=i+(c<<2);v[a>>2]=135060;v[a+20>>2]=h;v[a+24>>2]=1;if(h){Ba[v[v[h>>2]+16>>2]](h);v[a+16>>2]=v[v[a+20>>2]+16>>2];c=v[a>>2]}else{c=135060}Ba[v[c+20>>2]](a)}if(!f){break f}b=v[e+980>>2];t[v[v[e+976>>2]+1816>>2]+20|0]=1;t[v[e+1140>>2]+16|0]=1;c=0;while(1){a=v[v[i+(c<<2)>>2]>>2];d=v[a+32>>2];if(d){while(1){if(w[v[d+28>>2]- -64|0]&5){g=v[d+8>>2];j=v[b+160>>2]+(g>>>3&268435452)|0;v[j>>2]=v[j>>2]|1<>2];if(d){continue}break}}d=v[e+1012>>2];v[l+8>>2]=v[a+144>>2];Ba[v[v[d>>2]+44>>2]](d,0,l+8|0);c=c+1|0;if((f|0)!=(c|0)){continue}break}}xa=l+16|0;l=v[e+1e3>>2];c=v[l+296>>2];if(c){f=l+168|0;j=v[l+292>>2];i=v[v[e+976>>2]+1156>>2];b=0;while(1){a=vr(i,48);s=z[e+1080>>2];d=v[e+16>>2];g=v[e+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=d;v[a+12>>2]=g;z[a+40>>2]=s;d=c-b|0;v[a+36>>2]=d>>>0<64?d:64;v[a+32>>2]=j+(b<<2);v[a+28>>2]=f;v[a>>2]=135452;v[a+20>>2]=h;v[a+24>>2]=1;if(h){Ba[v[v[h>>2]+16>>2]](h);v[a+16>>2]=v[v[a+20>>2]+16>>2];k=v[a>>2]}else{k=135452}Ba[v[k+20>>2]](a);b=b- -64|0;if(c>>>0>b>>>0){continue}break}o=c>>>0>1?c:1;q=e+1156|0;h=v[e+980>>2];c=0;while(1){f=0;d=0;k=0;a=0;i=v[v[(v[l+184>>2]+B(v[j+(c<<2)>>2]>>>7|0,24)|0)+20>>2]+16>>2];b=v[i+28>>2];if(b){g=m+1024|0;n=b&1;j:{if((b|0)==1){break j}b=b&-2;while(1){p=d<<2;r=v[p+v[i+24>>2]>>2];if(w[v[r+100>>2]+28|0]&4){v[g+(a<<2)>>2]=r;a=a+1|0}p=v[v[i+24>>2]+(p|4)>>2];if(w[v[p+100>>2]+28|0]&4){v[g+(a<<2)>>2]=p;a=a+1|0}d=d+2|0;k=k+2|0;if((b|0)!=(k|0)){continue}break}}k:{if(!n){break k}d=v[v[i+24>>2]+(d<<2)>>2];if(!(w[v[d+100>>2]+28|0]&4)){break k}v[g+(a<<2)>>2]=d;a=a+1|0}}if(a){while(1){d=(m+1024|0)+(f<<2)|0;b=v[e+1160>>2];l:{if(b>>>0>=(v[e+1164>>2]&2147483647)>>>0){pG(q,d);break l}v[v[e+1156>>2]+(b<<2)>>2]=v[d>>2];v[e+1160>>2]=b+1}f=f+1|0;if((a|0)!=(f|0)){continue}break}}d=0;a=v[i+28>>2];if(a){while(1){b=v[v[v[i+24>>2]+(d<<2)>>2]+32>>2];if(b){while(1){g=v[b+8>>2];if((g|0)<0){k=g&2147483647;f=k+32>>>5|0;m:{if(f>>>0<=(v[h+164>>2]&2147483647)>>>0){a=v[h+160>>2];break m}a=v[h+168>>2];a=Ba[v[v[a>>2]+8>>2]](a,f<<2,17999,438)|0;n=v[h+160>>2];n:{if(!n){break n}H9(a,n,v[h+164>>2]<<2);if(v[h+164>>2]<0){break n}n=v[h+160>>2];if(!n){break n}p=v[h+168>>2];Ba[v[v[p>>2]+12>>2]](p,n)}n=v[h+164>>2];I9((n<<2)+a|0,0,f-n<<2);v[h+164>>2]=f;v[h+160>>2]=a}a=(k>>>3&268435452)+a|0;v[a>>2]=v[a>>2]|1<>2];if(b){continue}break}a=v[i+28>>2]}d=d+1|0;if(d>>>0>>0){continue}break}}c=c+1|0;if((o|0)!=(c|0)){continue}break}}BP(e,0);xa=m+2048|0}function uC(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,k=0,l=0,m=0,n=0,o=0,q=C(0),r=0,s=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=0,H=0,I=0,J=0,K=C(0),L=0,M=0;i=xa-10368|0;xa=i;a=a+16|0;a:{if(!w[a+7632|0]){break a}t[a+7632|0]=0;d=v[a>>2];if(!d){v[a+636>>2]=0;break a}b=d<<2;if(b){g=v[37696];k=Ba[v[v[g+12>>2]+8>>2]](g+12|0,b,24422,7935,1093)|0}m=v[a+12>>2];b=0;h=d-1|0;if(h>>>0>=3){l=d&-4;g=0;while(1){c=m+(b<<3)|0;v[(b<<2)+k>>2]=v[c>>2];v[c>>2]=b;c=b|1;e=m+(c<<3)|0;v[(c<<2)+k>>2]=v[e>>2];v[e>>2]=c;c=b|2;e=m+(c<<3)|0;v[(c<<2)+k>>2]=v[e>>2];v[e>>2]=c;c=b|3;e=m+(c<<3)|0;v[(c<<2)+k>>2]=v[e>>2];v[e>>2]=c;b=b+4|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}g=d&3;if(g){while(1){c=m+(b<<3)|0;v[(b<<2)+k>>2]=v[c>>2];v[c>>2]=b;b=b+1|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}b:{if(d>>>0<=256){g=i+8288|0;m=i+96|0;break b}m=0;g=0;b=d<<3;if(b){g=v[37696];g=Ba[v[v[g+12>>2]+8>>2]](g+12|0,b,24422,7935,1108)|0}b=d<<5;if(!b){break b}f=v[37696];m=Ba[v[v[f+12>>2]+8>>2]](f+12|0,b,24422,7935,1109)|0}c=v[a+8>>2];e=d-1|0;b=c+B(e,24)|0;s=z[b+12>>2];x=z[b+8>>2];y=z[b+4>>2];A=z[b>>2];E=z[b+20>>2];F=z[b+16>>2];if(e){f=0;while(1){b=c+B(f,24)|0;q=z[b+12>>2];s=q>2];x=q>x?x:q;q=z[b+4>>2];y=q>y?y:q;q=z[b>>2];A=q>A?A:q;q=z[b+20>>2];E=q>2];F=q>2];q=C(C(E-x)*C(.5));z[a+680>>2]=q;K=C(C(F-y)*C(.5));z[a+676>>2]=K;z[a+672>>2]=C(s-A)*C(.5);z[a+664>>2]=C(E+x)*C(.5);z[a+660>>2]=C(F+y)*C(.5);z[a+656>>2]=C(s+A)*C(.5);l=C(D(K))>>0>=3){o=d&-4;e=0;while(1){h=l<<2;z[(b<<2)+g>>2]=z[h+(c+B(b,24)|0)>>2];n=b|1;z[(n<<2)+g>>2]=z[h+(c+B(n,24)|0)>>2];n=b|2;z[(n<<2)+g>>2]=z[h+(c+B(n,24)|0)>>2];n=b|3;z[(n<<2)+g>>2]=z[h+(c+B(n,24)|0)>>2];b=b+4|0;e=e+4|0;if((o|0)!=(e|0)){continue}break}}e=d&3;if(e){while(1){z[(b<<2)+g>>2]=z[(c+B(b,24)|0)+(l<<2)>>2];b=b+1|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}o=RU(i);e=v[WU(o,g,d)+8>>2];f=0;while(1){n=v[e>>2];h=c+B(n,24)|0;x=z[h+4>>2];y=z[h+16>>2];A=z[h+8>>2];E=z[h+20>>2];F=z[h>>2];b=(f<<5)+m|0;s=z[h+12>>2];z[b+28>>2]=C(C(0)-s)*C(.5);z[b+16>>2]=C(s-F)*C(.5);z[b+12>>2]=C(s+C(0))*C(.5);z[b>>2]=C(F+s)*C(.5);z[b+24>>2]=C(E-A)*C(.5);z[b+20>>2]=C(y-x)*C(.5);z[b+8>>2]=C(A+E)*C(.5);z[b+4>>2]=C(x+y)*C(.5);h=r+(n<<3)|0;n=v[h+4>>2];b=(f<<3)+g|0;v[b>>2]=v[h>>2];v[b+4>>2]=n;e=e+4|0;f=f+1|0;if((d|0)!=(f|0)){continue}break}SU(o);v[a+644>>2]=l;v[a+636>>2]=d;b=v[a+640>>2];if(!(b>>>0>=d>>>0&d>>>0>=b>>>1>>>0)){b=d|d>>>1;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0;v[a+640>>2]=b;f=v[a+24>>2];if(f){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}f=v[a+20>>2];if(f){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}f=b<<5;if(f){c=v[37696];f=Ba[v[v[c+12>>2]+8>>2]](c+12|0,f,24422,7935,484)|0}else{f=0}v[a+20>>2]=f;b=(b<<3)+15&-16;if(b){f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,b,24422,7935,485)|0}else{f=0}v[a+24>>2]=f}h=a+688|0;b=v[a+644>>2];jC(h,z[a+656>>2],z[(a+656|0)+((b|0)==1?8:4)>>2],d,m,g,v[a+20>>2],v[a+24>>2],0,b);l=a+912|0;kC(m,g,h,l,v[a+20>>2],v[a+24>>2],v[a+644>>2]);b=v[a+708>>2];kC(m,g,l,a+2032|0,v[a+20>>2]+(b<<5)|0,v[a+24>>2]+(b<<3)|0,v[a+644>>2]);r=a+1136|0;b=v[a+712>>2];kC(m,g,r,a+3152|0,v[a+20>>2]+(b<<5)|0,v[a+24>>2]+(b<<3)|0,v[a+644>>2]);o=a+1360|0;b=v[a+716>>2];kC(m,g,o,a+4272|0,v[a+20>>2]+(b<<5)|0,v[a+24>>2]+(b<<3)|0,v[a+644>>2]);n=a+1584|0;b=v[a+720>>2];kC(m,g,n,a+5392|0,v[a+20>>2]+(b<<5)|0,v[a+24>>2]+(b<<3)|0,v[a+644>>2]);L=a+1808|0;b=v[a+724>>2];kC(m,g,L,a+6512|0,v[a+20>>2]+(b<<5)|0,v[a+24>>2]+(b<<3)|0,v[a+644>>2]);c=d>>>0>1?d:1;J=v[a+20>>2];G=v[a+644>>2]<<2;b=0;while(1){f=J+(b<<5)|0;e=f+G|0;s=z[e>>2];x=z[e+16>>2];e=(p(C(s+x)),j(2));v[f+28>>2]=(e|0)<0?e^-1:e|-2147483648;e=f;f=(p(C(s-x)),j(2));v[e+12>>2]=(f|0)<0?f^-1:f|-2147483648;b=b+1|0;if((c|0)!=(b|0)){continue}break}c:{if(d>>>0<=256){break c}if(m){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,m)}if(!g){break c}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g)}g=v[a+16>>2];m=v[a+12>>2];e=v[a+24>>2];b=0;if(d>>>0>=2){J=c&-2;f=0;while(1){G=e+(b<<3)|0;H=v[G>>2];I=H<<2;d=v[I+k>>2];v[G>>2]=d;v[m+(H<<3)>>2]=d;if(g){v[g+I>>2]=b}G=b|1;H=e+(G<<3)|0;I=v[H>>2];M=I<<2;d=v[M+k>>2];v[H>>2]=d;v[m+(I<<3)>>2]=d;if(g){v[g+M>>2]=G}b=b+2|0;f=f+2|0;if((J|0)!=(f|0)){continue}break}}d:{if(!(c&1)){break d}f=e+(b<<3)|0;c=v[f>>2];e=c<<2;d=v[e+k>>2];v[f>>2]=d;v[m+(c<<3)>>2]=d;if(!g){break d}v[e+g>>2]=b}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,k);v[i+88>>2]=-1089221318;v[i+92>>2]=-1089221318;v[i+80>>2]=1058262330;v[i+84>>2]=-1089221318;b=i- -64|0;v[b>>2]=1058262330;v[b+4>>2]=-1089221318;v[i+56>>2]=1058262330;v[i+60>>2]=-1089221318;v[i+40>>2]=-1089221318;v[i+44>>2]=-1089221318;v[i+32>>2]=1058262330;v[i+36>>2]=1058262330;v[i+16>>2]=1058262330;v[i+20>>2]=-1089221318;v[i+72>>2]=-1089221318;v[i+76>>2]=-1089221318;v[i+48>>2]=-1089221318;v[i+52>>2]=1058262330;v[i+24>>2]=1058262330;v[i+28>>2]=-1089221318;v[i+8>>2]=1058262330;v[i+12>>2]=1058262330;v[i>>2]=1058262330;v[i+4>>2]=1058262330;lC(h);lC(l);lC(r);lC(o);lC(n);lC(L);g=0;while(1){f=0;while(1){m=0;b=(a+B(g,1120)|0)+B(f,224)|0;e:{if((((v[b+2036>>2]+v[b+2032>>2]|0)+v[b+2040>>2]|0)+v[b+2044>>2]|0)+v[b+2048>>2]>>>0<=15){d=b+2248|0;v[d>>2]=1183336072;v[d+4>>2]=1183336072;b=b+2240|0;v[b>>2]=1183336072;v[b+4>>2]=1183336072;break e}while(1){v[i+10364>>2]=i+10336;d=v[i+10364>>2];k=v[d+16>>2]&2147483640|4;c=v[d+12>>2]&2147483640|3;e=v[d+8>>2]&2147483640|2;h=v[d+4>>2]&2147483640|1;d=v[d>>2]&2147483640;l=d>>>0>>0?h:d;r=e>>>0>l>>>0?e:l;o=c>>>0>r>>>0?c:r;n=k>>>0>o>>>0?k:o;k=k>>>0>>0?k:o;c=c>>>0>>0?c:r;e=e>>>0>>0?e:l;d=d>>>0>h>>>0?h:d;h=d>>>0>>0?e:d;l=c>>>0>h>>>0?c:h;r=k>>>0>l>>>0?k:l;o=n>>>0>>0?n:r;k=k>>>0>>0?k:l;c=c>>>0>>0?c:h;e=d>>>0>e>>>0?e:d;h=c>>>0>e>>>0?c:e;l=h>>>0>>0?k:h;d=l>>>0>o>>>0?o:l;r=n>>>0>r>>>0?n:r;l=l>>>0>>0?o:l;o=l>>>0>r>>>0?r:l;h=h>>>0>k>>>0?k:h;c=c>>>0>>0?c:e;e=c>>>0>>0?h:c;n=d>>>0>e>>>0?d:e;k=n>>>0>>0?o:n;e=(n>>>0>o>>>0?o:n)<<6&448|((d>>>0>>0?d:e)<<3&56|(c>>>0>h>>>0?h:c)&7);d=l>>>0>>0?r:l;u[(b+(m<<1)|0)+2240>>1]=e|(d>>>0>>0?d:k)<<9&3584|(d>>>0>k>>>0?d:k)<<12&28672;m=m+1|0;if((m|0)!=8){continue}break}}f=f+1|0;if((f|0)!=5){continue}break}g=g+1|0;if((g|0)!=5){continue}break}}xa=i+10368|0}function DA(a){var b=C(0),c=C(0),d=C(0),e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=0,za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=0,rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0);e=v[a+100>>2];rb=z[e+28>>2];B=z[e+16>>2];f=v[a+96>>2];D=z[f+24>>2];E=z[f+20>>2];sb=z[e+12>>2];F=z[e+8>>2];G=z[e+4>>2];H=z[e>>2];g=v[a+68>>2];tb=z[g+28>>2];I=z[g+16>>2];h=v[a+64>>2];J=z[h+24>>2];K=z[h+20>>2];ub=z[g+12>>2];L=z[g+8>>2];M=z[g+4>>2];N=z[g>>2];i=v[a+36>>2];vb=z[i+28>>2];O=z[i+16>>2];j=v[a+32>>2];P=z[j+24>>2];Q=z[j+20>>2];wb=z[i+12>>2];R=z[i+8>>2];S=z[i+4>>2];T=z[i>>2];k=v[a+4>>2];U=z[k+24>>2];V=z[k+20>>2];l=v[a>>2];W=z[l+24>>2];X=z[l+20>>2];Y=z[e+24>>2];Z=z[e+20>>2];_=z[g+24>>2];$=z[g+20>>2];aa=z[i+24>>2];ba=z[i+20>>2];xb=z[f+28>>2];ca=z[f+16>>2];yb=z[f+12>>2];da=z[f+8>>2];ea=z[f+4>>2];fa=z[f>>2];zb=z[h+28>>2];ga=z[h+16>>2];Ab=z[h+12>>2];ha=z[h+8>>2];ia=z[h+4>>2];ja=z[h>>2];Bb=z[j+28>>2];ka=z[j+16>>2];Cb=z[j+12>>2];la=z[j+8>>2];ma=z[j+4>>2];na=z[j>>2];Db=z[k+28>>2];oa=z[k+16>>2];Eb=z[l+28>>2];pa=z[l+16>>2];Fb=z[k+12>>2];qa=z[k+8>>2];ra=z[k+4>>2];sa=z[k>>2];Gb=z[l+12>>2];ta=z[l+8>>2];ua=z[l+4>>2];va=z[l>>2];a=v[a+24>>2];ya=v[a+4>>2];if(ya){Hb=z[a+108>>2];Ib=z[a+104>>2];Jb=z[a+100>>2];Kb=z[a+92>>2];Lb=z[a+88>>2];Mb=z[a+84>>2];Nb=z[a+76>>2];Ob=z[a+72>>2];Pb=z[a+68>>2];Qb=z[a+60>>2];Rb=z[a+56>>2];Sb=z[a+52>>2];Tb=z[a+96>>2];Ub=z[a+80>>2];Vb=z[a+64>>2];Wb=z[a+48>>2];a=a+160|0;while(1){c=z[a+212>>2];d=z[a+228>>2];wa=z[a+196>>2];o=z[a+244>>2];Xb=z[a+148>>2];Yb=z[a+180>>2];za=z[a+36>>2];Aa=z[a+20>>2];p=z[a+84>>2];Ba=z[a+52>>2];Ca=z[a+68>>2];q=z[a+308>>2];Da=z[a+276>>2];Ea=z[a+292>>2];r=z[a+356>>2];Fa=z[a+324>>2];Ga=z[a+340>>2];m=z[a+216>>2];n=z[a+232>>2];Zb=z[a+200>>2];s=z[a+248>>2];_b=z[a+152>>2];$b=z[a+184>>2];Ha=z[a+40>>2];Ia=z[a+24>>2];t=z[a+88>>2];Ja=z[a+56>>2];Ka=z[a+72>>2];u=z[a+312>>2];La=z[a+280>>2];Ma=z[a+296>>2];w=z[a+360>>2];Na=z[a+328>>2];Oa=z[a+344>>2];x=z[a+220>>2];b=z[a+236>>2];xa=z[a+204>>2];Pa=z[a+252>>2];ac=z[a+156>>2];bc=z[a+188>>2];Qa=z[a+44>>2];Ra=z[a+28>>2];Sa=z[a+92>>2];Ta=z[a+60>>2];Ua=z[a+76>>2];Va=z[a+316>>2];Wa=z[a+284>>2];Xa=z[a+300>>2];Ya=z[a+364>>2];Za=z[a+332>>2];_a=z[a+348>>2];$a=z[a+4>>2];ab=z[a+8>>2];bb=z[a+12>>2];y=z[a+208>>2];A=z[a+224>>2];cb=z[a+240>>2];db=z[a>>2];eb=z[a+16>>2];fb=z[a+32>>2];gb=z[a+48>>2];hb=z[a+64>>2];ib=z[a+80>>2];jb=z[a+272>>2];kb=z[a+288>>2];lb=z[a+304>>2];mb=z[a+320>>2];nb=z[a+336>>2];ob=z[a+352>>2];pb=C(C(cb*z[a+192>>2])+C(C(C(C(C(C(C(va*db)+C(ua*eb))+C(ta*fb))+C(C(C(pa*gb)+C(X*hb))+C(W*ib)))-C(C(C(C(sa*jb)+C(ra*kb))+C(qa*lb))+C(C(C(oa*mb)+C(V*nb))+C(U*ob))))*z[a+176>>2])+z[a+144>>2]));A=AA?y:A;z[a+240>>2]=y;xa=C(C(Pa*xa)+C(ac+C(bc*C(C(C(C(C(fa*bb)+C(ea*Ra))+C(da*Qa))+C(C(C(ca*Ta)+C(E*Ua))+C(D*Sa)))-C(C(C(C(H*Wa)+C(G*Xa))+C(F*Va))+C(C(C(B*Za)+C(Z*_a))+C(Y*Ya)))))));b=b>2]=x;b=C(C(s*Zb)+C(_b+C($b*C(C(C(C(C(ja*ab)+C(ia*Ia))+C(ha*Ha))+C(C(C(ga*Ja)+C(K*Ka))+C(J*t)))-C(C(C(C(N*La)+C(M*Ma))+C(L*u))+C(C(C(I*Na)+C($*Oa))+C(_*w)))))));n=nn?m:n;z[a+248>>2]=b;m=C(C(o*wa)+C(Xb+C(Yb*C(C(C(C(C(na*$a)+C(ma*Aa))+C(la*za))+C(C(C(ka*Ba)+C(Q*Ca))+C(P*p)))-C(C(C(C(T*Da)+C(S*Ea))+C(R*q))+C(C(C(O*Fa)+C(ba*Ga))+C(aa*r)))))));d=dd?c:d;z[a+244>>2]=wa;c=C(y-cb);d=C(Tb*c);U=C(U-C(ob*d));m=C(Ub*c);W=C(W+C(ib*m));n=C(Vb*c);qa=C(qa-C(lb*n));c=C(Wb*c);ta=C(ta+C(fb*c));V=C(V-C(nb*d));X=C(X+C(hb*m));ra=C(ra-C(kb*n));ua=C(ua+C(eb*c));oa=C(oa-C(mb*d));pa=C(pa+C(gb*m));sa=C(sa-C(jb*n));va=C(va+C(db*c));c=C(x-Pa);m=C(Hb*c);Y=C(Y-C(Ya*m));d=C(b-s);n=C(Ib*d);_=C(_-C(w*n));b=r;o=C(wa-o);r=C(Jb*o);aa=C(aa-C(b*r));s=C(Kb*c);D=C(D+C(Sa*s));b=t;t=C(Lb*d);J=C(J+C(b*t));b=p;p=C(Mb*o);P=C(P+C(b*p));w=C(Nb*c);F=C(F-C(Va*w));b=u;u=C(Ob*d);L=C(L-C(b*u));b=q;q=C(Pb*o);R=C(R-C(b*q));c=C(Qb*c);da=C(da+C(Qa*c));d=C(Rb*d);ha=C(ha+C(Ha*d));o=C(Sb*o);la=C(la+C(za*o));Z=C(Z-C(_a*m));$=C($-C(Oa*n));ba=C(ba-C(Ga*r));E=C(E+C(Ua*s));K=C(K+C(Ka*t));Q=C(Q+C(Ca*p));G=C(G-C(Xa*w));M=C(M-C(Ma*u));S=C(S-C(Ea*q));ea=C(ea+C(Ra*c));ia=C(ia+C(Ia*d));ma=C(ma+C(Aa*o));B=C(B-C(Za*m));I=C(I-C(Na*n));O=C(O-C(Fa*r));ca=C(ca+C(Ta*s));ga=C(ga+C(Ja*t));ka=C(ka+C(Ba*p));H=C(H-C(Wa*w));N=C(N-C(La*u));T=C(T-C(Da*q));fa=C(fa+C(bb*c));ja=C(ja+C(ab*d));na=C(na+C($a*o));a=a+368|0;qb=qb+1|0;if((ya|0)!=(qb|0)){continue}break}}z[l+12>>2]=Gb;z[l+8>>2]=ta;z[l+4>>2]=ua;z[l>>2]=va;z[j+12>>2]=Cb;z[j+8>>2]=la;z[j+4>>2]=ma;z[j>>2]=na;z[h+12>>2]=Ab;z[h+8>>2]=ha;z[h+4>>2]=ia;z[h>>2]=ja;z[f+12>>2]=yb;z[f+8>>2]=da;z[f+4>>2]=ea;z[f>>2]=fa;z[k+12>>2]=Fb;z[k+8>>2]=qa;z[k+4>>2]=ra;z[k>>2]=sa;z[i+12>>2]=wb;z[i+8>>2]=R;z[i+4>>2]=S;z[i>>2]=T;z[g+12>>2]=ub;z[g+8>>2]=L;z[g+4>>2]=M;z[g>>2]=N;z[e+12>>2]=sb;z[e+8>>2]=F;z[e+4>>2]=G;z[e>>2]=H;z[l+28>>2]=Eb;z[l+24>>2]=W;z[l+20>>2]=X;z[l+16>>2]=pa;z[j+28>>2]=Bb;z[j+24>>2]=P;z[j+20>>2]=Q;z[j+16>>2]=ka;z[h+28>>2]=zb;z[h+24>>2]=J;z[h+20>>2]=K;z[h+16>>2]=ga;z[f+28>>2]=xb;z[f+24>>2]=D;z[f+20>>2]=E;z[f+16>>2]=ca;z[k+28>>2]=Db;z[k+24>>2]=U;z[k+20>>2]=V;z[k+16>>2]=oa;z[i+28>>2]=vb;z[i+24>>2]=aa;z[i+20>>2]=ba;z[i+16>>2]=O;z[g+28>>2]=tb;z[g+24>>2]=_;z[g+20>>2]=$;z[g+16>>2]=I;z[e+28>>2]=rb;z[e+24>>2]=Y;z[e+20>>2]=Z;z[e+16>>2]=B}function CJ(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=C(0),n=0,o=0;b=xa-2768|0;xa=b;I9(b+2560|0,0,140);t[b+2556|0]=0;t[b+2532|0]=0;t[b+2508|0]=0;t[b+2484|0]=0;t[b+2460|0]=0;t[b+2436|0]=0;t[b+2412|0]=0;t[b+2388|0]=0;t[b+2364|0]=0;t[b+2340|0]=0;t[b+2316|0]=0;t[b+2292|0]=0;t[b+2268|0]=0;t[b+2244|0]=0;t[b+2220|0]=0;t[b+2196|0]=0;t[b+2172|0]=0;t[b+2148|0]=0;t[b+2124|0]=0;t[b+2100|0]=0;t[b+2076|0]=0;t[b+2052|0]=0;t[b+2028|0]=0;t[b+2004|0]=0;t[b+1980|0]=0;t[b+1956|0]=0;t[b+1932|0]=0;t[b+1908|0]=0;t[b+1884|0]=0;t[b+1860|0]=0;t[b+1836|0]=0;t[b+1812|0]=0;t[b+1788|0]=0;t[b+1764|0]=0;t[b+1740|0]=0;t[b+1716|0]=0;t[b+1692|0]=0;t[b+1668|0]=0;t[b+1644|0]=0;t[b+1620|0]=0;t[b+1596|0]=0;t[b+1572|0]=0;t[b+1548|0]=0;t[b+1524|0]=0;t[b+1500|0]=0;t[b+1476|0]=0;t[b+1452|0]=0;t[b+1428|0]=0;t[b+1404|0]=0;t[b+1380|0]=0;t[b+1356|0]=0;t[b+1332|0]=0;t[b+1308|0]=0;t[b+1284|0]=0;t[b+1260|0]=0;t[b+1236|0]=0;t[b+1212|0]=0;t[b+1188|0]=0;t[b+1164|0]=0;t[b+1140|0]=0;t[b+1116|0]=0;t[b+1092|0]=0;t[b+1068|0]=0;t[b+1044|0]=0;u[b+276>>1]=65535;u[b+288>>1]=65535;u[b+300>>1]=65535;u[b+312>>1]=65535;u[b+324>>1]=65535;u[b+336>>1]=65535;u[b+348>>1]=65535;u[b+360>>1]=65535;u[b+264>>1]=65535;v[b+256>>2]=-1;v[b+260>>2]=-1;v[b+268>>2]=-1;v[b+272>>2]=-1;v[b+280>>2]=-1;v[b+284>>2]=-1;v[b+292>>2]=-1;v[b+296>>2]=-1;v[b+304>>2]=-1;v[b+308>>2]=-1;v[b+316>>2]=-1;v[b+320>>2]=-1;v[b+328>>2]=-1;v[b+332>>2]=-1;v[b+340>>2]=-1;v[b+344>>2]=-1;v[b+352>>2]=-1;v[b+356>>2]=-1;u[b+372>>1]=65535;u[b+384>>1]=65535;u[b+396>>1]=65535;u[b+408>>1]=65535;u[b+420>>1]=65535;u[b+432>>1]=65535;u[b+444>>1]=65535;u[b+456>>1]=65535;u[b+468>>1]=65535;v[b+364>>2]=-1;v[b+368>>2]=-1;v[b+376>>2]=-1;v[b+380>>2]=-1;v[b+388>>2]=-1;v[b+392>>2]=-1;v[b+400>>2]=-1;v[b+404>>2]=-1;v[b+412>>2]=-1;v[b+416>>2]=-1;v[b+424>>2]=-1;v[b+428>>2]=-1;v[b+436>>2]=-1;v[b+440>>2]=-1;v[b+448>>2]=-1;v[b+452>>2]=-1;v[b+460>>2]=-1;v[b+464>>2]=-1;u[b+480>>1]=65535;u[b+492>>1]=65535;u[b+504>>1]=65535;u[b+516>>1]=65535;u[b+528>>1]=65535;u[b+540>>1]=65535;u[b+552>>1]=65535;u[b+564>>1]=65535;u[b+576>>1]=65535;v[b+472>>2]=-1;v[b+476>>2]=-1;v[b+484>>2]=-1;v[b+488>>2]=-1;v[b+496>>2]=-1;v[b+500>>2]=-1;v[b+508>>2]=-1;v[b+512>>2]=-1;v[b+520>>2]=-1;v[b+524>>2]=-1;v[b+532>>2]=-1;v[b+536>>2]=-1;v[b+544>>2]=-1;v[b+548>>2]=-1;v[b+556>>2]=-1;v[b+560>>2]=-1;v[b+568>>2]=-1;v[b+572>>2]=-1;u[b+588>>1]=65535;v[b+580>>2]=-1;v[b+584>>2]=-1;u[b+600>>1]=65535;v[b+592>>2]=-1;v[b+596>>2]=-1;u[b+612>>1]=65535;v[b+604>>2]=-1;v[b+608>>2]=-1;u[b+624>>1]=65535;v[b+616>>2]=-1;v[b+620>>2]=-1;u[b+636>>1]=65535;v[b+628>>2]=-1;v[b+632>>2]=-1;u[b+648>>1]=65535;v[b+640>>2]=-1;v[b+644>>2]=-1;u[b+660>>1]=65535;v[b+652>>2]=-1;v[b+656>>2]=-1;u[b+672>>1]=65535;v[b+664>>2]=-1;v[b+668>>2]=-1;u[b+684>>1]=65535;v[b+676>>2]=-1;v[b+680>>2]=-1;u[b+696>>1]=65535;v[b+688>>2]=-1;v[b+692>>2]=-1;u[b+708>>1]=65535;v[b+700>>2]=-1;v[b+704>>2]=-1;u[b+720>>1]=65535;v[b+712>>2]=-1;v[b+716>>2]=-1;u[b+732>>1]=65535;v[b+724>>2]=-1;v[b+728>>2]=-1;u[b+744>>1]=65535;v[b+736>>2]=-1;v[b+740>>2]=-1;u[b+756>>1]=65535;v[b+748>>2]=-1;v[b+752>>2]=-1;u[b+768>>1]=65535;v[b+760>>2]=-1;v[b+764>>2]=-1;u[b+780>>1]=65535;v[b+772>>2]=-1;v[b+776>>2]=-1;u[b+792>>1]=65535;v[b+784>>2]=-1;v[b+788>>2]=-1;u[b+804>>1]=65535;v[b+796>>2]=-1;v[b+800>>2]=-1;u[b+816>>1]=65535;v[b+808>>2]=-1;v[b+812>>2]=-1;u[b+828>>1]=65535;v[b+820>>2]=-1;v[b+824>>2]=-1;u[b+840>>1]=65535;v[b+832>>2]=-1;v[b+836>>2]=-1;u[b+852>>1]=65535;v[b+844>>2]=-1;v[b+848>>2]=-1;u[b+864>>1]=65535;v[b+856>>2]=-1;v[b+860>>2]=-1;u[b+876>>1]=65535;v[b+868>>2]=-1;v[b+872>>2]=-1;u[b+888>>1]=65535;v[b+880>>2]=-1;v[b+884>>2]=-1;u[b+900>>1]=65535;v[b+892>>2]=-1;v[b+896>>2]=-1;u[b+912>>1]=65535;v[b+904>>2]=-1;v[b+908>>2]=-1;u[b+924>>1]=65535;v[b+916>>2]=-1;v[b+920>>2]=-1;u[b+936>>1]=65535;v[b+928>>2]=-1;v[b+932>>2]=-1;u[b+948>>1]=65535;v[b+940>>2]=-1;v[b+944>>2]=-1;u[b+960>>1]=65535;v[b+952>>2]=-1;v[b+956>>2]=-1;u[b+972>>1]=65535;v[b+964>>2]=-1;v[b+968>>2]=-1;u[b+984>>1]=65535;v[b+976>>2]=-1;v[b+980>>2]=-1;u[b+996>>1]=65535;v[b+988>>2]=-1;v[b+992>>2]=-1;u[b+1008>>1]=65535;v[b+1e3>>2]=-1;v[b+1004>>2]=-1;u[b+1020>>1]=65535;v[b+1012>>2]=-1;v[b+1016>>2]=-1;a:{if(!v[a+32>>2]){break a}while(1){d=v[v[a+28>>2]+(l<<2)>>2];d=d?d-4|0:0;j=x[d+56>>1];c=v[d+28>>2];f=v[v[c+28>>2]+68>>2];e=v[d+32>>2];g=v[v[e+28>>2]+68>>2];k=((b+2560|0)+B(f,28)|0)+(g<<2)|0;v[k>>2]=v[k>>2]+1;g=(f|0)>(g|0);f=g?e:c;g=g?c:e;k=v[(B(v[v[f+28>>2]+68>>2],28)+141264|0)+(v[v[g+28>>2]+68>>2]<<2)>>2];n=b+2736|0;YR(f,n);o=b+2704|0;YR(g,o);f=Ba[k|0](v[f+28>>2]+68|0,n,v[g+28>>2]+68|0,o,d+40|0)|0;g=w[d+58|0];t[d+58|0]=f;g=g?f?0:16:f?4:0;k=g&j;if(k){f=(b+1024|0)+B(h,24)|0;v[f>>2]=v[37419]+v[c+28>>2];j=v[37419]+v[e+28>>2]|0;t[f+20|0]=0;v[f+16>>2]=g;v[f+8>>2]=j;g=v[v[e+4>>2]+44>>2];j=v[v[c+4>>2]+44>>2];v[f+4>>2]=v[((w[j+9|0]<<2)+149664|0)+40>>2]+j;v[f+12>>2]=g+v[((w[g+9|0]<<2)+149664|0)+40>>2];f=w[j+7|0];j=v[c+32>>2];e=v[e+32>>2];c=(b+256|0)+B(h,12)|0;t[c+9|0]=w[g+7|0];t[c+8|0]=f;v[c+4>>2]=e;v[c>>2]=j}c=(k|0)!=0;e=x[d+56>>1];b:{if(!(e&32)){break b}u[d+56>>1]=e&65503;if(qS(d)){break b}t[d+25|0]=w[d+25|0]&223;v[(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=v[a+48>>2];e=v[c+1188>>2]&2147483647;f=v[c+1184>>2];g=f+h|0;m=C(C(g>>>0)*C(1.5));c:{if(m=C(0)){d=~~m>>>0;break c}d=0}if(e>>>0>>0){gP(c+1180|0,d)}v[c+1184>>2]=g;v[b+2736>>2]=v[c+1180>>2]+B(f,24);e=v[c+1192>>2];if(d>>>0>(v[e+8>>2]&2147483647)>>>0){hP(e,d);e=v[c+1192>>2]}v[e+4>>2]=g;v[b+2704>>2]=v[e>>2]+B(f,12);H9(v[b+2736>>2],b+1024|0,B(h,24));H9(v[b+2704>>2],b+256|0,B(h,12))}if(!i){break a}h=v[a+44>>2];d=v[h>>2]+i|0;v[h>>2]=d;c=v[a+40>>2]+(d<<2)|0;d=i<<2;H9(c-d|0,b,d)}a=v[v[a+48>>2]+2352>>2];i=0;while(1){d=B(i,28);h=d+(b+2560|0)|0;c=v[h>>2];if(c){e=a+d|0;v[e+16>>2]=c+v[e+16>>2]}c=v[h+4>>2];if(c){e=a+d|0;v[e+20>>2]=c+v[e+20>>2]}c=v[h+8>>2];if(c){e=a+d|0;v[e+24>>2]=c+v[e+24>>2]}c=v[h+12>>2];if(c){e=a+d|0;v[e+28>>2]=c+v[e+28>>2]}c=v[h+16>>2];if(c){e=a+d|0;v[e+32>>2]=c+v[e+32>>2]}c=v[h+20>>2];if(c){e=a+d|0;v[e+36>>2]=c+v[e+36>>2]}h=v[h+24>>2];if(h){d=a+d|0;v[d+40>>2]=h+v[d+40>>2]}i=i+1|0;if((i|0)!=5){continue}break}xa=b+2768|0}function nx(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,u=0,y=0,z=0;o=32;c=xa-48|0;xa=c;t[c+12|0]=0;j=c-128|0;xa=j;v[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){b=m;m=b+1|0;i=m;e=b;while(1){g=(i<<5)+a|0;k=x[g+8>>1];d=(e<<5)+a|0;f=x[d+8>>1];e=(((k|0)==65535?x[g+10>>1]:k)&65535)>>>0<(((f|0)==65535?x[d+10>>1]:f)&65535)>>>0?i:e;d=(i|0)<(l|0);i=i+1|0;if(d){continue}break}if((b|0)!=(e|0)){d=(e<<5)+a|0;e=v[d+28>>2];v[c+40>>2]=v[d+24>>2];v[c+44>>2]=e;e=v[d+20>>2];v[c+32>>2]=v[d+16>>2];v[c+36>>2]=e;e=v[d+12>>2];v[c+24>>2]=v[d+8>>2];v[c+28>>2]=e;e=v[d+4>>2];v[c+16>>2]=v[d>>2];v[c+20>>2]=e;e=(b<<5)+a|0;b=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=b;b=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=b;b=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=b;b=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b}if((l|0)!=(m|0)){continue}break b}}f=((l+m|0)/2<<5)+a|0;b=x[f+8>>1];g=(m<<5)+a|0;e=x[g+10>>1];k=x[g+8>>1];if((((b|0)==65535?x[f+10>>1]:b)&65535)>>>0<(((k|0)==65535?e:k)&65535)>>>0){b=v[g+28>>2];v[c+40>>2]=v[g+24>>2];v[c+44>>2]=b;b=v[g+20>>2];v[c+32>>2]=v[g+16>>2];v[c+36>>2]=b;b=v[g+12>>2];v[c+24>>2]=v[g+8>>2];v[c+28>>2]=b;b=v[g+4>>2];v[c+16>>2]=v[g>>2];v[c+20>>2]=b;b=v[f+28>>2];v[g+24>>2]=v[f+24>>2];v[g+28>>2]=b;b=v[f+20>>2];v[g+16>>2]=v[f+16>>2];v[g+20>>2]=b;b=v[f+12>>2];v[g+8>>2]=v[f+8>>2];v[g+12>>2]=b;b=v[f+4>>2];v[g>>2]=v[f>>2];v[g+4>>2]=b;b=v[c+44>>2];v[f+24>>2]=v[c+40>>2];v[f+28>>2]=b;b=v[c+36>>2];v[f+16>>2]=v[c+32>>2];v[f+20>>2]=b;b=v[c+28>>2];v[f+8>>2]=v[c+24>>2];v[f+12>>2]=b;b=v[c+20>>2];v[f>>2]=v[c+16>>2];v[f+4>>2]=b;k=x[g+8>>1];e=x[g+10>>1]}d=(l<<5)+a|0;b=x[d+10>>1];i=x[d+8>>1];if((((i|0)==65535?b:i)&65535)>>>0<(((k&65535)==65535?e:k)&65535)>>>0){b=v[g+28>>2];v[c+40>>2]=v[g+24>>2];v[c+44>>2]=b;b=v[g+20>>2];v[c+32>>2]=v[g+16>>2];v[c+36>>2]=b;b=v[g+12>>2];v[c+24>>2]=v[g+8>>2];v[c+28>>2]=b;b=v[g+4>>2];v[c+16>>2]=v[g>>2];v[c+20>>2]=b;b=v[d+28>>2];v[g+24>>2]=v[d+24>>2];v[g+28>>2]=b;b=v[d+20>>2];v[g+16>>2]=v[d+16>>2];v[g+20>>2]=b;b=v[d+12>>2];v[g+8>>2]=v[d+8>>2];v[g+12>>2]=b;b=v[d+4>>2];v[g>>2]=v[d>>2];v[g+4>>2]=b;b=v[c+44>>2];v[d+24>>2]=v[c+40>>2];v[d+28>>2]=b;b=v[c+36>>2];v[d+16>>2]=v[c+32>>2];v[d+20>>2]=b;b=v[c+28>>2];v[d+8>>2]=v[c+24>>2];v[d+12>>2]=b;b=v[c+20>>2];v[d>>2]=v[c+16>>2];v[d+4>>2]=b;i=x[d+8>>1];e=x[d+10>>1]}else{e=b}b=x[f+8>>1];if((((i|0)==65535?e:i)&65535)>>>0<(((b|0)==65535?x[f+10>>1]:b)&65535)>>>0){b=v[f+28>>2];v[c+40>>2]=v[f+24>>2];v[c+44>>2]=b;b=v[f+20>>2];v[c+32>>2]=v[f+16>>2];v[c+36>>2]=b;b=v[f+12>>2];v[c+24>>2]=v[f+8>>2];v[c+28>>2]=b;b=v[f+4>>2];v[c+16>>2]=v[f>>2];v[c+20>>2]=b;b=v[d+28>>2];v[f+24>>2]=v[d+24>>2];v[f+28>>2]=b;b=v[d+20>>2];v[f+16>>2]=v[d+16>>2];v[f+20>>2]=b;b=v[d+12>>2];v[f+8>>2]=v[d+8>>2];v[f+12>>2]=b;b=v[d+4>>2];v[f>>2]=v[d>>2];v[f+4>>2]=b;b=v[c+44>>2];v[d+24>>2]=v[c+40>>2];v[d+28>>2]=b;b=v[c+36>>2];v[d+16>>2]=v[c+32>>2];v[d+20>>2]=b;b=v[c+28>>2];v[d+8>>2]=v[c+24>>2];v[d+12>>2]=b;b=v[c+20>>2];v[d>>2]=v[c+16>>2];v[d+4>>2]=b}b=v[f+28>>2];v[c+40>>2]=v[f+24>>2];v[c+44>>2]=b;b=v[f+20>>2];v[c+32>>2]=v[f+16>>2];v[c+36>>2]=b;b=v[f+12>>2];v[c+24>>2]=v[f+8>>2];v[c+28>>2]=b;b=v[f+4>>2];v[c+16>>2]=v[f>>2];v[c+20>>2]=b;k=l-1|0;i=(k<<5)+a|0;e=i;b=v[e+4>>2];v[f>>2]=v[e>>2];v[f+4>>2]=b;b=v[e+28>>2];v[f+24>>2]=v[e+24>>2];v[f+28>>2]=b;b=v[e+20>>2];v[f+16>>2]=v[e+16>>2];v[f+20>>2]=b;b=v[e+12>>2];v[f+8>>2]=v[e+8>>2];v[f+12>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b;b=m;while(1){e=x[i+8>>1];d=(e|0)==65535?x[i+10>>1]:e;while(1){e=b;b=b+1|0;h=(b<<5)+a|0;g=x[h+8>>1];f=((g|0)==65535?x[h+10>>1]:g)&65535;g=d&65535;if(f>>>0>>0){continue}break}while(1){k=k-1|0;d=(k<<5)+a|0;f=x[d+8>>1];if(g>>>0<(((f|0)==65535?x[d+10>>1]:f)&65535)>>>0){continue}break}if((b|0)<(k|0)){e=v[h+28>>2];v[c+40>>2]=v[h+24>>2];v[c+44>>2]=e;e=v[h+20>>2];v[c+32>>2]=v[h+16>>2];v[c+36>>2]=e;e=v[h+12>>2];v[c+24>>2]=v[h+8>>2];v[c+28>>2]=e;e=v[h+4>>2];v[c+16>>2]=v[h>>2];v[c+20>>2]=e;e=v[d+28>>2];v[h+24>>2]=v[d+24>>2];v[h+28>>2]=e;e=v[d+20>>2];v[h+16>>2]=v[d+16>>2];v[h+20>>2]=e;e=v[d+12>>2];v[h+8>>2]=v[d+8>>2];v[h+12>>2]=e;e=v[d+4>>2];v[h>>2]=v[d>>2];v[h+4>>2]=e;e=v[c+44>>2];v[d+24>>2]=v[c+40>>2];v[d+28>>2]=e;e=v[c+36>>2];v[d+16>>2]=v[c+32>>2];v[d+20>>2]=e;e=v[c+28>>2];v[d+8>>2]=v[c+24>>2];v[d+12>>2]=e;e=v[c+20>>2];v[d>>2]=v[c+16>>2];v[d+4>>2]=e;continue}break}d=v[h+28>>2];v[c+40>>2]=v[h+24>>2];v[c+44>>2]=d;d=v[h+20>>2];v[c+32>>2]=v[h+16>>2];v[c+36>>2]=d;d=v[h+12>>2];v[c+24>>2]=v[h+8>>2];v[c+28>>2]=d;d=v[h+4>>2];v[c+16>>2]=v[h>>2];v[c+20>>2]=d;d=v[i+28>>2];v[h+24>>2]=v[i+24>>2];v[h+28>>2]=d;d=v[i+20>>2];v[h+16>>2]=v[i+16>>2];v[h+20>>2]=d;d=v[i+12>>2];v[h+8>>2]=v[i+8>>2];v[h+12>>2]=d;d=v[i+4>>2];v[h>>2]=v[i>>2];v[h+4>>2]=d;d=v[c+44>>2];v[i+24>>2]=v[c+40>>2];v[i+28>>2]=d;d=v[c+36>>2];v[i+16>>2]=v[c+32>>2];v[i+20>>2]=d;d=v[c+28>>2];v[i+8>>2]=v[c+24>>2];v[i+12>>2]=d;d=v[c+20>>2];v[i>>2]=v[c+16>>2];v[i+4>>2]=d;c:{if((b-m|0)<(l-b|0)){if(o-1>>>0<=n>>>0){d=o<<3;if(d){g=v[37696];b=g+12|0;b=(r=b,s=d,u=Ba[v[v[g>>2]+20>>2]](g)|0?45645:63804,y=17218,z=155,q=v[v[b>>2]+8>>2],Ba[q](r|0,s|0,u|0,y|0,z|0)|0)}else{b=0}o=o<<1;d=H9(b,j,n<<2);b=p;p=1;if(!(!b|!j)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,j)}j=d}b=(n<<2)+j|0;v[b>>2]=m;v[b+4>>2]=e;m=e+2|0;break c}if(o-1>>>0<=n>>>0){d=o<<3;if(d){g=v[37696];b=g+12|0;b=(z=b,y=d,u=Ba[v[v[g>>2]+20>>2]](g)|0?45645:63804,s=17218,r=155,q=v[v[b>>2]+8>>2],Ba[q](z|0,y|0,u|0,s|0,r|0)|0)}else{b=0}o=o<<1;d=H9(b,j,n<<2);b=p;p=1;if(!(!b|!j)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,j)}j=d}b=(n<<2)+j|0;v[b>>2]=e+2;v[b+4>>2]=l;l=e}n=n+2|0;if((l|0)>(m|0)){continue}break}}if(n){b=n-2|0;m=v[(b<<2)+j>>2];l=v[((n<<2)+j|0)-4>>2];n=b;continue}break}if(!p|!j){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,j)}if(w[c+12|0]){u9(v[c+8>>2])}xa=c+48|0}function $V(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0);U=z[d+24>>2];V=z[d+20>>2];ba=z[c+8>>2];ca=z[c+12>>2];W=z[d+16>>2];da=z[c+4>>2];q=z[d+8>>2];r=z[d+4>>2];m=z[d+12>>2];g=z[d>>2];d=xa+-64|0;i=z[f+4>>2];w=C(i+i);l=z[f+8>>2];t=C(w*l);s=z[f>>2];j=C(s+s);x=z[f+12>>2];u=C(j*x);H=C(t-u);z[d+28>>2]=H;I=C(t+u);z[d+20>>2]=I;s=C(C(1)-C(s*j));t=C(i*w);J=C(s-t);z[d+32>>2]=J;h=s;s=C(l+l);u=C(l*s);L=C(h-u);z[d+16>>2]=L;l=C(j*l);w=C(w*x);M=C(l+w);z[d+24>>2]=M;i=C(j*i);j=C(s*x);N=C(i-j);z[d+12>>2]=N;O=C(l-w);z[d+8>>2]=O;P=C(i+j);z[d+4>>2]=P;Q=C(C(C(1)-t)-u);z[d>>2]=Q;R=z[f+16>>2];z[d+36>>2]=R;S=z[f+20>>2];z[d+40>>2]=S;T=z[f+24>>2];z[d+44>>2]=T;X=z[e+4>>2];z[d+48>>2]=X;Y=z[e+8>>2];z[d+52>>2]=Y;Z=z[e+12>>2];z[d+56>>2]=Z;f=0;l=C(g+g);j=C(q*l);i=C(r+r);u=C(m*i);w=C(j-u);t=C(r*i);x=C(q+q);y=C(q*x);s=C(C(C(1)-t)-y);r=C(l*r);A=C(x*m);x=C(r+A);h=C(C(U*w)+C(C(W*s)+C(V*x)));g=C(C(1)-C(g*l));t=C(g-t);u=C(j+u);q=C(i*q);l=C(l*m);F=C(q-l);i=C(D(C(C(t*w)+C(C(u*s)+C(x*F)))));G=C(q+l);A=C(r-A);y=C(g-y);q=C(D(C(C(G*w)+C(C(A*s)+C(x*y)))));r=C(C(ca*i)+C(C(da*C(D(C(C(w*w)+C(C(s*s)+C(x*x))))))+C(ba*q)));m=C(h+r);l=C(C(T*w)+C(C(R*s)+C(x*S)));j=C(D(C(C(J*w)+C(C(M*s)+C(x*H)))));k=C(D(C(C(O*w)+C(C(Q*s)+C(x*P)))));v=C(D(C(C(I*w)+C(C(N*s)+C(x*L)))));g=C(C(Z*j)+C(C(X*k)+C(Y*v)));p=C(l-g);a:{if(mm?m:g;m=mg){m=g;r=y;l=G;q=A}g=C(C(U*t)+C(C(W*u)+C(V*F)));i=C(C(C(D(C(C(t*t)+C(C(u*u)+C(F*F)))))*ca)+C(C(i*da)+C(ba*n)));h=C(g+i);p=C(C(T*t)+C(C(R*u)+C(F*S)));n=C(D(C(C(J*t)+C(C(M*u)+C(F*H)))));o=C(D(C(C(O*t)+C(C(Q*u)+C(F*P)))));$=C(D(C(C(I*t)+C(C(N*u)+C(F*L)))));aa=C(C(n*Z)+C(C(o*X)+C(Y*$)));ea=C(p-aa);if(hi?i:g;if(gi?i:g;if(gi?i:g;if(gi?i:g;if(g>2];v=z[e>>2];h=C(C(s*k)+C(v*ja));p=z[e+8>>2];n=C(C(w*v)+C(p*ka));o=C(C(x*p)+C(k*la));b:{if(!(C(D(h))>C(9.999999974752427e-7)?1:C(D(o))>C(9.999999974752427e-7)|C(D(n))>C(9.999999974752427e-7))){break b}g=C(0);i=C(0);j=C(0);E=C(C(h*h)+C(C(o*o)+C(n*n)));if(E>C(0)){g=C(C(1)/C(K(E)));j=C(h*g);i=C(n*g);g=C(o*g)}h=C(C(U*j)+C(C(W*g)+C(V*i)));n=C(C(C(D(C(C(t*j)+C(C(u*g)+C(F*i)))))*ca)+C(C(C(D(C(C(w*j)+C(C(s*g)+C(x*i)))))*da)+C(ba*C(D(C(C(G*j)+C(C(A*g)+C(y*i))))))));o=C(h+n);E=C(C(T*j)+C(C(R*g)+C(S*i)));fa=C(C(C(D(C(C(J*j)+C(C(M*g)+C(H*i)))))*Z)+C(C(C(D(C(C(O*j)+C(C(Q*g)+C(P*i)))))*X)+C(Y*C(D(C(C(I*j)+C(C(N*g)+C(L*i))))))));ga=C(E-fa);if(on?n:h;if(!(hC(9.999999974752427e-7)?1:C(D(o))>C(9.999999974752427e-7)|C(D(n))>C(9.999999974752427e-7))){break c}g=C(0);i=C(0);j=C(0);E=C(C(h*h)+C(C(o*o)+C(n*n)));if(E>C(0)){g=C(C(1)/C(K(E)));j=C(h*g);i=C(n*g);g=C(o*g)}h=C(C(U*j)+C(C(W*g)+C(V*i)));n=C(C(C(D(C(C(t*j)+C(C(u*g)+C(F*i)))))*ca)+C(C(C(D(C(C(w*j)+C(C(s*g)+C(x*i)))))*da)+C(ba*C(D(C(C(G*j)+C(C(A*g)+C(y*i))))))));o=C(h+n);E=C(C(T*j)+C(C(R*g)+C(S*i)));fa=C(C(C(D(C(C(J*j)+C(C(M*g)+C(H*i)))))*Z)+C(C(C(D(C(C(O*j)+C(C(Q*g)+C(P*i)))))*X)+C(Y*C(D(C(C(I*j)+C(C(N*g)+C(L*i))))))));ga=C(E-fa);if(on?n:h;if(!(hC(9.999999974752427e-7)?1:C(D(k))>C(9.999999974752427e-7)|C(D(v))>C(9.999999974752427e-7))){break d}g=C(0);i=C(0);j=C(0);p=C(C(h*h)+C(C(k*k)+C(v*v)));if(p>C(0)){g=C(C(1)/C(K(p)));j=C(h*g);i=C(v*g);g=C(k*g)}h=C(C(U*j)+C(C(W*g)+C(V*i)));k=C(C(C(D(C(C(t*j)+C(C(u*g)+C(F*i)))))*ca)+C(C(C(D(C(C(w*j)+C(C(s*g)+C(x*i)))))*da)+C(ba*C(D(C(C(G*j)+C(C(A*g)+C(y*i))))))));v=C(h+k);p=C(C(T*j)+C(C(R*g)+C(S*i)));n=C(C(C(D(C(C(J*j)+C(C(M*g)+C(H*i)))))*Z)+C(C(C(D(C(C(O*j)+C(C(Q*g)+C(P*i)))))*X)+C(Y*C(D(C(C(I*j)+C(C(N*g)+C(L*i))))))));o=C(p-n);if(vk?k:h;if(!(h>2]=c?l:C(-l);z[a+4>>2]=c?r:C(-r);z[a>>2]=c?q:C(-q);z[b>>2]=m>C(0)?m:C(0);f=1}return f|0}function eB(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=0,Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=0,Qa=0,Ra=0,Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=0,Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0);g=v[a+100>>2];lb=z[g+28>>2];L=z[g+16>>2];h=v[a+96>>2];M=z[h+24>>2];N=z[h+20>>2];mb=z[g+12>>2];O=z[g+8>>2];P=z[g+4>>2];Q=z[g>>2];i=v[a+68>>2];nb=z[i+28>>2];R=z[i+16>>2];j=v[a+64>>2];S=z[j+24>>2];T=z[j+20>>2];ob=z[i+12>>2];U=z[i+8>>2];V=z[i+4>>2];W=z[i>>2];k=v[a+36>>2];pb=z[k+28>>2];X=z[k+16>>2];l=v[a+32>>2];Y=z[l+24>>2];Z=z[l+20>>2];qb=z[k+12>>2];_=z[k+8>>2];$=z[k+4>>2];aa=z[k>>2];m=v[a+4>>2];ba=z[m+24>>2];ca=z[m+20>>2];n=v[a>>2];da=z[n+24>>2];ea=z[n+20>>2];fa=z[g+24>>2];ga=z[g+20>>2];ha=z[i+24>>2];ia=z[i+20>>2];ja=z[k+24>>2];ka=z[k+20>>2];rb=z[h+28>>2];la=z[h+16>>2];sb=z[h+12>>2];ma=z[h+8>>2];na=z[h+4>>2];oa=z[h>>2];tb=z[j+28>>2];pa=z[j+16>>2];ub=z[j+12>>2];qa=z[j+8>>2];ra=z[j+4>>2];sa=z[j>>2];vb=z[l+28>>2];ta=z[l+16>>2];wb=z[l+12>>2];ua=z[l+8>>2];va=z[l+4>>2];wa=z[l>>2];xb=z[m+28>>2];xa=z[m+16>>2];yb=z[n+28>>2];ya=z[n+16>>2];zb=z[m+12>>2];za=z[m+8>>2];Aa=z[m+4>>2];Ba=z[m>>2];Ab=z[n+12>>2];Ca=z[n+8>>2];Da=z[n+4>>2];Ea=z[n>>2];c=x[a+22>>1];if(c){b=v[a+24>>2];Bb=b+(c<<4)|0;while(1){a=b;Qa=a+96|0;Ra=Qa+(w[a+1|0]<<4)|0;Pa=w[a+2|0];b=Ra+B(Pa,192)|0;if(Pa){Cb=z[a+92>>2];Db=z[a+88>>2];Eb=z[a+84>>2];Fb=z[a+76>>2];Gb=z[a+72>>2];Hb=z[a+68>>2];Ib=z[a+60>>2];Jb=z[a+56>>2];Kb=z[a+52>>2];Lb=z[a+44>>2];Mb=z[a+40>>2];Nb=z[a+36>>2];Ob=z[a+28>>2];Pb=z[a+24>>2];Qb=z[a+20>>2];Rb=z[a+80>>2];Sb=z[a+64>>2];Tb=z[a+48>>2];Ub=z[a+32>>2];Vb=z[a+16>>2];K=0;while(1){Fa=(K>>>v[a+12>>2]<<4)+Qa|0;Ga=z[Fa+4>>2];c=B(K,192)+Ra|0;D=z[c+100>>2];Wb=z[c+132>>2];f=z[c+116>>2];E=z[c+84>>2];Sa=z[c+52>>2];Ta=z[c+68>>2];t=z[c+36>>2];Ha=z[c+20>>2];Ia=z[c+4>>2];F=z[c+180>>2];Ua=z[c+148>>2];Va=z[c+164>>2];Ja=z[Fa+8>>2];G=z[c+104>>2];Xb=z[c+136>>2];d=z[c+120>>2];H=z[c+88>>2];Wa=z[c+56>>2];Xa=z[c+72>>2];u=z[c+40>>2];Ka=z[c+24>>2];La=z[c+8>>2];I=z[c+184>>2];Ya=z[c+152>>2];Za=z[c+168>>2];A=z[Fa+12>>2];J=z[c+108>>2];Ma=z[c+140>>2];e=z[c+124>>2];_a=z[c+92>>2];$a=z[c+60>>2];ab=z[c+76>>2];y=z[c+44>>2];Na=z[c+28>>2];Oa=z[c+12>>2];bb=z[c+188>>2];cb=z[c+156>>2];db=z[c+172>>2];r=z[c>>2];s=z[c+16>>2];q=z[c+32>>2];eb=z[c+48>>2];fb=z[c+64>>2];gb=z[c+80>>2];hb=z[c+144>>2];ib=z[c+160>>2];jb=z[c+176>>2];o=z[c+112>>2];kb=z[c+96>>2];p=C(C(C(C(C(C(C(Ea*r)+C(Da*s))+C(Ca*q))+C(C(C(ya*eb)+C(ea*fb))+C(da*gb)))-C(C(C(C(Ba*r)+C(Aa*s))+C(za*q))+C(C(C(xa*hb)+C(ca*ib))+C(ba*jb))))*o)+C(kb-C(o*z[c+128>>2])));o=C(Vb*z[Fa>>2]);p=o>p?p:o;o=C(-o);o=o>2]=o;Ma=C(C(e*C(C(C(C(C(oa*Oa)+C(na*Na))+C(ma*y))+C(C(C(la*$a)+C(N*ab))+C(M*_a)))-C(C(C(C(Q*Oa)+C(P*Na))+C(O*y))+C(C(C(L*cb)+C(ga*db))+C(fa*bb)))))+C(J-C(e*Ma)));e=C(Ob*A);A=e>Ma?Ma:e;e=C(-e);A=e>2]=A;e=C(C(d*C(C(C(C(C(sa*La)+C(ra*Ka))+C(qa*u))+C(C(C(pa*Wa)+C(T*Xa))+C(S*H)))-C(C(C(C(W*La)+C(V*Ka))+C(U*u))+C(C(C(R*Ya)+C(ia*Za))+C(ha*I)))))+C(G-C(d*Xb)));d=C(Pb*Ja);e=d>e?e:d;d=C(-d);Ja=d>2]=Ja;d=C(C(f*C(C(C(C(C(wa*Ia)+C(va*Ha))+C(ua*t))+C(C(C(ta*Sa)+C(Z*Ta))+C(Y*E)))-C(C(C(C(aa*Ia)+C($*Ha))+C(_*t))+C(C(C(X*Ua)+C(ka*Va))+C(ja*F)))))+C(D-C(f*Wb)));f=C(Qb*Ga);d=df?d:f;z[c+100>>2]=Ga;f=C(o-kb);d=C(Rb*f);ba=C(ba-C(jb*d));e=C(Sb*f);da=C(da+C(gb*e));o=C(Tb*f);za=C(za-C(q*o));p=q;q=C(Ub*f);Ca=C(Ca+C(p*q));ca=C(ca-C(ib*d));ea=C(ea+C(fb*e));Aa=C(Aa-C(s*o));Da=C(Da+C(s*q));xa=C(xa-C(hb*d));ya=C(ya+C(eb*e));Ba=C(Ba-C(r*o));Ea=C(Ea+C(r*q));r=C(A-J);f=C(Cb*r);fa=C(fa-C(bb*f));s=C(Ja-G);G=C(Db*s);ha=C(ha-C(I*G));q=C(Ga-D);D=C(Eb*q);ja=C(ja-C(F*D));F=C(Fb*r);M=C(M+C(_a*F));d=C(Gb*s);S=C(S+C(H*d));p=E;E=C(Hb*q);Y=C(Y+C(p*E));H=C(Ib*r);O=C(O-C(y*H));I=C(Jb*s);U=C(U-C(u*I));J=C(Kb*q);_=C(_-C(t*J));p=y;y=C(Lb*r);ma=C(ma+C(p*y));p=u;u=C(Mb*s);qa=C(qa+C(p*u));p=t;t=C(Nb*q);ua=C(ua+C(p*t));ga=C(ga-C(db*f));ia=C(ia-C(Za*G));ka=C(ka-C(Va*D));N=C(N+C(ab*F));T=C(T+C(Xa*d));Z=C(Z+C(Ta*E));P=C(P-C(Na*H));V=C(V-C(Ka*I));$=C($-C(Ha*J));na=C(na+C(Na*y));ra=C(ra+C(Ka*u));va=C(va+C(Ha*t));L=C(L-C(cb*f));R=C(R-C(Ya*G));X=C(X-C(Ua*D));la=C(la+C($a*F));pa=C(pa+C(Wa*d));ta=C(ta+C(Sa*E));Q=C(Q-C(Oa*H));W=C(W-C(La*I));aa=C(aa-C(Ia*J));oa=C(oa+C(Oa*y));sa=C(sa+C(La*u));wa=C(wa+C(Ia*t));K=K+1|0;if((Pa|0)!=(K|0)){continue}break}}if(b>>>0>>0){continue}break}}z[n+12>>2]=Ab;z[n+8>>2]=Ca;z[n+4>>2]=Da;z[n>>2]=Ea;z[l+12>>2]=wb;z[l+8>>2]=ua;z[l+4>>2]=va;z[l>>2]=wa;z[j+12>>2]=ub;z[j+8>>2]=qa;z[j+4>>2]=ra;z[j>>2]=sa;z[h+12>>2]=sb;z[h+8>>2]=ma;z[h+4>>2]=na;z[h>>2]=oa;z[m+12>>2]=zb;z[m+8>>2]=za;z[m+4>>2]=Aa;z[m>>2]=Ba;z[k+12>>2]=qb;z[k+8>>2]=_;z[k+4>>2]=$;z[k>>2]=aa;z[i+12>>2]=ob;z[i+8>>2]=U;z[i+4>>2]=V;z[i>>2]=W;z[g+12>>2]=mb;z[g+8>>2]=O;z[g+4>>2]=P;z[g>>2]=Q;z[n+28>>2]=yb;z[n+24>>2]=da;z[n+20>>2]=ea;z[n+16>>2]=ya;z[l+28>>2]=vb;z[l+24>>2]=Y;z[l+20>>2]=Z;z[l+16>>2]=ta;z[j+28>>2]=tb;z[j+24>>2]=S;z[j+20>>2]=T;z[j+16>>2]=pa;z[h+28>>2]=rb;z[h+24>>2]=M;z[h+20>>2]=N;z[h+16>>2]=la;z[m+28>>2]=xb;z[m+24>>2]=ba;z[m+20>>2]=ca;z[m+16>>2]=xa;z[k+28>>2]=pb;z[k+24>>2]=ja;z[k+20>>2]=ka;z[k+16>>2]=X;z[i+28>>2]=nb;z[i+24>>2]=ha;z[i+20>>2]=ia;z[i+16>>2]=R;z[g+28>>2]=lb;z[g+24>>2]=fa;z[g+20>>2]=ga;z[g+16>>2]=L}function W1(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),w=C(0),x=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0);o=xa-224|0;xa=o;I=v[c+32>>2];L=z[I+20>>2];s=v[d+32>>2];M=z[s+20>>2];O=z[I+24>>2];P=z[s+24>>2];J=z[I+16>>2];R=z[s+16>>2];p=z[s+8>>2];r=z[I>>2];E=z[s>>2];x=z[I+8>>2];q=z[s+4>>2];t=z[I+12>>2];A=z[s+12>>2];u=z[I+4>>2];v[o+220>>2]=0;v[o+204>>2]=0;v[o+188>>2]=0;w=C(C(C(x*q)-C(u*p))+C(C(t*E)-C(r*A)));F=C(w+w);H=C(C(C(r*p)-C(x*E))+C(C(t*q)-C(u*A)));G=C(H+H);N=C(C(1)-C(w*F));V=C(H*G);_=C(N-V);z[o+200>>2]=_;w=C(C(C(u*E)-C(r*q))+C(C(t*p)-C(x*A)));W=C(w*G);U=C(-r);S=C(C(t*A)-C(C(C(E*U)-C(q*u))-C(x*p)));Q=C(S*F);$=C(W-Q);z[o+196>>2]=$;W=C(W+Q);z[o+184>>2]=W;T=N;N=C(w+w);Q=C(w*N);aa=C(T-Q);z[o+180>>2]=aa;J=C(R-J);L=C(M-L);M=C(P-O);O=C(C(C(U*J)-C(L*u))-C(x*M));P=C(C(t*t)+C(-.5));R=C(C(C(t*C(C(u*J)-C(r*L)))+C(P*M))-C(x*O));z[o+216>>2]=R+R;R=C(C(C(P*L)+C(t*C(C(r*M)-C(x*J))))-C(u*O));z[o+212>>2]=R+R;v[o+172>>2]=0;w=C(w*F);G=C(S*G);R=C(w+G);z[o+192>>2]=R;F=C(H*F);H=C(S*N);N=C(F-H);z[o+176>>2]=N;z[o+168>>2]=w-G;z[o+164>>2]=F+H;V=C(C(C(1)-V)-Q);z[o+160>>2]=V;t=C(C(C(P*J)+C(t*C(C(x*L)-C(u*M))))-C(r*O));z[o+208>>2]=t+t;L=z[s+20>>2];M=z[I+20>>2];O=z[s+24>>2];P=z[I+24>>2];J=z[s+16>>2];U=z[I+16>>2];t=z[I>>2];x=z[I+4>>2];u=z[I+8>>2];r=z[I+12>>2];v[o+156>>2]=0;v[o+140>>2]=0;v[o+124>>2]=0;F=C(C(C(q*t)-C(E*x))+C(C(A*u)-C(p*r)));w=C(C(C(E*u)-C(p*t))+C(C(A*x)-C(q*r)));G=C(w+w);Q=C(F*G);X=C(-E);S=C(C(A*r)-C(C(C(t*X)-C(x*q))-C(p*u)));u=C(C(C(p*x)-C(q*u))+C(C(A*t)-C(E*r)));H=C(u+u);x=C(S*H);t=C(Q-x);z[o+132>>2]=t;x=C(Q+x);z[o+120>>2]=x;J=C(U-J);L=C(M-L);M=C(P-O);O=C(C(C(X*J)-C(L*q))-C(p*M));P=C(C(A*A)+C(-.5));r=C(C(C(A*C(C(q*J)-C(E*L)))+C(P*M))-C(p*O));U=C(r+r);z[o+152>>2]=U;r=C(C(C(P*L)+C(A*C(C(E*M)-C(p*J))))-C(q*O));Q=C(r+r);z[o+148>>2]=Q;r=C(C(1)-C(u*H));X=C(w*G);u=C(r-X);z[o+136>>2]=u;ba=C(F+F);ca=C(F*ba);r=C(r-ca);z[o+116>>2]=r;v[o+108>>2]=0;Y=C(F*H);G=C(S*G);F=C(Y+G);z[o+128>>2]=F;T=C(w*H);S=C(S*ba);w=C(T-S);z[o+112>>2]=w;H=C(Y-G);z[o+104>>2]=H;G=C(T+S);z[o+100>>2]=G;A=C(C(C(P*J)+C(A*C(C(p*L)-C(q*M))))-C(E*O));J=C(A+A);z[o+144>>2]=J;A=C(C(C(1)-X)-ca);z[o+96>>2]=A;a:{b:{if(m){v[o+92>>2]=0;v[o+64>>2]=2139095039;v[o+56>>2]=0;v[o+60>>2]=0;v[o+48>>2]=0;v[o+52>>2]=0;if(!X1(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(!X1(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}p=z[o+168>>2];q=z[o+164>>2];j=B(v[o+44>>2],20);I=B(v[o+40>>2],20);m=0;while(1){c:{d:{if(m&1){h=Y1(a,b,c,d,o+96|0,o+160|0,g,o- -64|0,o+48|0,o+92|0);if(!h|v[o+92>>2]!=2){break a}break d}e:{switch(v[o+92>>2]){case 0:h=v[a+24>>2];v[o+28>>2]=0;k=z[o+56>>2];l=z[o+48>>2];n=z[o+52>>2];z[o+24>>2]=C(u*k)+C(C(H*l)+C(n*x));z[o+20>>2]=C(t*k)+C(C(G*l)+C(n*r));z[o+16>>2]=C(F*k)+C(C(A*l)+C(n*w));V1(a,b,h+j|0,v[b+24>>2]+B(Z1(b,d,o+16|0),20)|0,c,d,o+96|0,e,f,g);if(!v[f>>2]){break c}k=C(-z[o+24>>2]);l=C(-z[o+20>>2]);n=C(-z[o+16>>2]);i=0;while(1){h=B(i,48)+e|0;s=v[h+20>>2];v[o>>2]=v[h+16>>2];v[o+4>>2]=s;s=v[h+4>>2];v[h+16>>2]=v[h>>2];v[h+20>>2]=s;s=v[h+28>>2];v[o+8>>2]=v[h+24>>2];v[o+12>>2]=s;s=v[h+12>>2];v[h+24>>2]=v[h+8>>2];v[h+28>>2]=s;s=v[o+4>>2];v[h>>2]=v[o>>2];v[h+4>>2]=s;s=v[o+12>>2];Z=v[o+8>>2];z[h+36>>2]=l;z[h+40>>2]=k;v[h+8>>2]=Z;v[h+12>>2]=s;z[h+32>>2]=n;i=i+1|0;if(i>>>0>2]){continue}break};break c;case 1:break e;default:break d}}h=v[a+24>>2];i=v[b+24>>2];v[o+28>>2]=0;k=z[o+56>>2];l=z[o+48>>2];n=z[o+52>>2];z[o+24>>2]=C(_*k)+C(C(p*l)+C(W*n));z[o+20>>2]=C($*k)+C(C(q*l)+C(aa*n));z[o+16>>2]=C(R*k)+C(C(V*l)+C(N*n));V1(b,a,i+I|0,h+B(Z1(a,c,o+16|0),20)|0,d,c,o+160|0,e,f,g);break c}h=v[a+24>>2];v[o+28>>2]=0;k=z[o+56>>2];z[o+24>>2]=-k;l=z[o+52>>2];z[o+20>>2]=-l;n=z[o+48>>2];z[o+16>>2]=-n;i=o+16|0;s=Z1(a,c,i);Z=v[b+24>>2];v[o+28>>2]=0;z[o+24>>2]=C(u*k)+C(C(H*n)+C(l*x));z[o+20>>2]=C(t*k)+C(C(G*n)+C(l*r));z[o+16>>2]=C(F*k)+C(C(A*n)+C(l*w));V1(b,a,B(Z1(b,d,i),20)+Z|0,h+B(s,20)|0,d,c,o+160|0,e,f,g)}h=v[f>>2]!=0|m;m=1;if(!(h&1)){continue}break}break b}p=z[h>>2];q=z[h+4>>2];E=z[h+8>>2];v[o+76>>2]=0;z[o+72>>2]=-E;z[o+68>>2]=-q;z[o+64>>2]=-p;v[o+60>>2]=0;z[o+56>>2]=C(u*E)+C(C(F*p)+C(t*q));z[o+52>>2]=C(x*E)+C(C(w*p)+C(r*q));z[o+48>>2]=C(H*E)+C(C(A*p)+C(q*G));p=C(n*C(.05000000074505806));n=C(n*C(.009999999776482582));l=lp?p:l);l=z[i+8>>2];q=z[i>>2];E=z[i+4>>2];v[o+28>>2]=0;l=C(l-U);q=C(q-J);E=C(E-Q);z[o+24>>2]=C(u*l)+C(C(F*q)+C(t*E));z[o+20>>2]=C(x*l)+C(C(w*q)+C(r*E));z[o+16>>2]=C(H*l)+C(C(A*q)+C(E*G));k=kp?p:k);h=v[d+40>>2];i=v[b+24>>2]+B(j,20)|0;k=z[i+8>>2];l=z[i>>2];n=z[i+4>>2];p=C(C(z[h+40>>2]*k)+C(C(z[h+32>>2]*l)+C(n*z[h+36>>2])));T=p;N=C(p*p);p=C(C(z[h+8>>2]*k)+C(C(z[h>>2]*l)+C(n*z[h+4>>2])));k=C(C(z[h+24>>2]*k)+C(C(z[h+16>>2]*l)+C(n*z[h+20>>2])));l=C(C(1)/C(K(C(N+C(C(p*p)+C(k*k))))));Y=C(D(C(C(C(T*l)*z[o+72>>2])+C(C(C(p*l)*z[o+64>>2])+C(C(k*l)*z[o+68>>2])))));h=v[c+40>>2];j=v[a+24>>2]+B(m,20)|0;k=z[j+8>>2];l=z[j>>2];n=z[j+4>>2];p=C(C(z[h+40>>2]*k)+C(C(z[h+32>>2]*l)+C(n*z[h+36>>2])));T=p;N=C(p*p);p=C(C(z[h+8>>2]*k)+C(C(z[h>>2]*l)+C(n*z[h+4>>2])));n=C(C(z[h+24>>2]*k)+C(C(z[h+16>>2]*l)+C(n*z[h+20>>2])));q=C(C(1)/C(K(C(N+C(C(p*p)+C(n*n))))));k=C(T*q);l=C(p*q);n=C(n*q);if(Y>=C(D(C(C(k*z[o+56>>2])+C(C(l*z[o+48>>2])+C(z[o+52>>2]*n)))))){V1(b,a,i,j,d,c,o+160|0,e,f,g);break b}V1(a,b,j,i,c,d,o+96|0,e,f,g);if(!v[f>>2]){break b}p=C(-C(C(u*k)+C(C(H*l)+C(x*n))));q=C(-C(C(t*k)+C(C(G*l)+C(r*n))));k=C(-C(C(F*k)+C(C(A*l)+C(w*n))));i=0;while(1){a=B(i,48)+e|0;b=v[a+20>>2];v[o+16>>2]=v[a+16>>2];v[o+20>>2]=b;b=v[a+4>>2];v[a+16>>2]=v[a>>2];v[a+20>>2]=b;b=v[a+28>>2];v[o+24>>2]=v[a+24>>2];v[o+28>>2]=b;b=v[a+12>>2];v[a+24>>2]=v[a+8>>2];v[a+28>>2]=b;b=v[o+20>>2];v[a>>2]=v[o+16>>2];v[a+4>>2]=b;b=v[o+28>>2];c=v[o+24>>2];z[a+36>>2]=q;z[a+40>>2]=p;v[a+8>>2]=c;v[a+12>>2]=b;z[a+32>>2]=k;i=i+1|0;if(i>>>0>2]){continue}break}}h=1}xa=o+224|0;return h}function NQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),A=C(0),D=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0);e=v[a+100>>2];F=xa-16|0;xa=F;a=v[e+988>>2];if(a){b=v[a+212>>2];if(b){c=v[a+208>>2];while(1){g=v[c+(d<<2)>>2];f=w[v[g-20>>2]+9|0];a=v[e+1012>>2];v[F+8>>2]=v[g+80>>2];Ba[v[v[a>>2]+44>>2]](a,(f|0)==2,F+8|0);d=d+1|0;if((b|0)!=(d|0)){continue}break}a=v[e+988>>2]}v[a+212>>2]=0}i=v[e+4628>>2];if(i){f=v[e+976>>2];a=v[f+16>>2];a:{if(!(a>>>0<=i>>>0&i>>>0>2]>>>0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,i);break a}k=v[f+4>>2];c=0;h=v[f+8>>2];b=h;while(1){g=c;c=c+1|0;a=b;b=a-1|0;d=k+(b<<2)|0;if(i>>>0>y[d>>2]){continue}break}b:{if(a>>>0>=h>>>0){break b}b=g&3;if(b){c=0;while(1){v[d>>2]=v[v[f+4>>2]+(a<<2)>>2];a=a+1|0;d=d+4|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}if(g-1>>>0<3){break b}while(1){b=a<<2;v[d>>2]=v[b+v[f+4>>2]>>2];v[d+4>>2]=v[(b+v[f+4>>2]|0)+4>>2];v[d+8>>2]=v[(b+v[f+4>>2]|0)+8>>2];v[d+12>>2]=v[(b+v[f+4>>2]|0)+12>>2];d=d+16|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}}v[f+8>>2]=h-1}v[e+4628>>2]=0}d=xa-32|0;xa=d;c:{if(!v[e+2344>>2]){break c}k=v[e+4668>>2];if(!k){break c}v[e+2324>>2]=0;f=e+2320|0;if(k>>>0>(v[e+2328>>2]&2147483647)>>>0){b=0;d:{if(!k){break d}c=k<<2;if(!c){break d}a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?54985:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,b,16608,553)|0}c=v[f>>2];a=v[f+4>>2];if((a|0)>0){g=(a<<2)+b|0;a=b;while(1){v[a>>2]=v[c>>2];c=c+4|0;a=a+4|0;if(g>>>0>a>>>0){continue}break}c=v[f>>2]}if(!(!c|v[f+8>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,c)}v[f+8>>2]=k;v[f>>2]=b}v[e+2336>>2]=0;i=e+2332|0;if(k>>>0>(v[e+2340>>2]&2147483647)>>>0){Qv(i,k)}Q=v[e+4636>>2];while(1){a=v[(J<<2)+Q>>2];e:{if(t[a+92|0]&1){break e}c=v[a+44>>2];a=c;b=v[((w[a+9|0]<<2)+149664|0)+40>>2]+a|0;v[d>>2]=b;a=v[e+2324>>2];f:{if(a>>>0>=(v[e+2328>>2]&2147483647)>>>0){b=0;a=v[f+8>>2];o=a&2147483647?a<<1:1;g:{if(!o){break g}g=o<<2;if(!g){break g}a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?54985:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,g,b,16608,553)|0}g=v[f+4>>2];G=(g<<2)+b|0;if((g|0)>0){h=v[f>>2];a=b;while(1){v[a>>2]=v[h>>2];h=h+4|0;a=a+4|0;if(G>>>0>a>>>0){continue}break}}v[G>>2]=v[d>>2];h:{if(v[f+8>>2]<0){break h}a=v[f>>2];if(!a){break h}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,a);g=v[f+4>>2]}v[f+8>>2]=o;v[f>>2]=b;v[f+4>>2]=g+1;break f}v[v[e+2320>>2]+(a<<2)>>2]=b;v[e+2324>>2]=a+1}R=z[c+32>>2];S=z[c+36>>2];q=z[c+40>>2];H=z[c- -64>>2];I=z[c+72>>2];r=z[c+68>>2];s=z[c+24>>2];l=z[c+56>>2];A=z[c+20>>2];m=z[c+52>>2];n=z[c+28>>2];j=z[c+60>>2];p=z[c+48>>2];D=z[c+16>>2];M=C(C(s*l)+C(C(A*m)+C(C(n*j)+C(p*D))));z[d+12>>2]=M;N=C(C(p*A)+C(C(C(j*s)-C(n*l))-C(D*m)));z[d+8>>2]=N;O=C(C(l*D)+C(C(C(j*A)-C(n*m))-C(s*p)));z[d+4>>2]=O;P=C(C(m*s)+C(C(C(j*D)-C(n*p))-C(A*l)));z[d>>2]=P;T=q;q=C(I*C(-2));H=C(H*C(-2));I=C(r*C(-2));K=C(C(l*q)+C(C(p*H)+C(m*I)));L=C(C(j*j)+C(-.5));r=C(C(l*K)+C(C(q*L)-C(j*C(C(p*I)-C(H*m)))));r=C(r+r);E=C(C(p*K)+C(C(H*L)-C(j*C(C(m*q)-C(I*l)))));E=C(E+E);j=C(C(m*K)+C(C(I*L)-C(j*C(C(l*H)-C(q*p)))));j=C(j+j);l=C(C(s*r)+C(C(D*E)+C(A*j)));m=C(C(n*n)+C(-.5));p=C(T+C(C(s*l)+C(C(r*m)+C(n*C(C(D*j)-C(E*A))))));z[d+24>>2]=p;q=C(S+C(C(A*l)+C(C(j*m)+C(n*C(C(s*E)-C(r*D))))));z[d+20>>2]=q;n=C(R+C(C(D*l)+C(C(E*m)+C(n*C(C(A*r)-C(j*s))))));z[d+16>>2]=n;b=v[e+2336>>2];if(b>>>0>=(v[e+2340>>2]&2147483647)>>>0){c=0;a=v[i+8>>2];G=a&2147483647?a<<1:1;i:{if(!G){break i}b=B(G,28);if(!b){break i}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?37437:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}o=v[i+4>>2];h=B(o,28)+c|0;g=v[i>>2];if((o|0)>0){b=g;a=c;while(1){z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];b=b+28|0;a=a+28|0;if(h>>>0>a>>>0){continue}break}}z[h>>2]=z[d>>2];z[h+4>>2]=z[d+4>>2];z[h+8>>2]=z[d+8>>2];z[h+12>>2]=z[d+12>>2];z[h+16>>2]=z[d+16>>2];z[h+20>>2]=z[d+20>>2];z[h+24>>2]=z[d+24>>2];if(!(!g|v[i+8>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,g);o=v[i+4>>2]}v[i+8>>2]=G;v[i>>2]=c;v[i+4>>2]=o+1;break e}a=v[e+2332>>2]+B(b,28)|0;z[a+16>>2]=n;z[a+12>>2]=M;z[a+8>>2]=N;z[a+4>>2]=O;z[a>>2]=P;z[a+24>>2]=p;z[a+20>>2]=q;v[e+2336>>2]=b+1}J=J+1|0;if((k|0)!=(J|0)){continue}break}a=v[e+2324>>2];if(!a){break c}b=v[e+2344>>2];Ba[v[v[b>>2]+20>>2]](b,v[e+2320>>2],v[e+2332>>2],a)}xa=d+32|0;d=v[e+1288>>2];if(d){J=v[e+1256>>2];while(1){d=d-1|0;f=v[J+(d<<2)>>2];b=v[f+48>>2];if(v[(v[v[b+1004>>2]+168>>2]+(v[f+40>>2]<<5)|0)+12>>2]){t[f+68|0]=w[f+68|0]|8;i=xa-16|0;xa=i;c=v[f+52>>2];v[i+12>>2]=c;a=v[b+1244>>2];j:{if(a>>>0>=(v[b+1248>>2]&2147483647)>>>0){a=0;c=b+1240|0;b=v[c+8>>2];k=b&2147483647?b<<1:1;k:{if(!k){break k}b=k<<2;if(!b){break k}a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?59663:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,16608,553)|0}g=v[c+4>>2];o=(g<<2)+a|0;if((g|0)>0){h=v[c>>2];b=a;while(1){v[b>>2]=v[h>>2];h=h+4|0;b=b+4|0;if(o>>>0>b>>>0){continue}break}}v[o>>2]=v[i+12>>2];l:{if(v[c+8>>2]<0){break l}b=v[c>>2];if(!b){break l}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,b);g=v[c+4>>2]}v[c+8>>2]=k;v[c>>2]=a;v[c+4>>2]=g+1;break j}v[v[b+1240>>2]+(a<<2)>>2]=c;v[b+1244>>2]=a+1}xa=i+16|0;a=v[f+52>>2];u[a>>1]=x[a>>1]|1;LH(v[f+56>>2]);a=v[f+56>>2];b=v[a>>2];a=v[a+4>>2];WE(y[b+28>>2]>2]?b:a,1,1)}if(d){continue}break}}b=v[e+2376>>2];a=b;if(v[a+36>>2]){g=b+8|0;a=0;while(1){c=v[v[b+32>>2]+(a<<2)>>2];v[F+12>>2]=c;m:{if((c|0)==(v[b+4>>2]-1|0)){v[b+4>>2]=c;break m}d=v[b+12>>2];if(d>>>0>=(v[b+16>>2]&2147483647)>>>0){on(g,F+12|0);break m}v[v[b+8>>2]+(d<<2)>>2]=c;v[b+12>>2]=v[b+12>>2]+1}a=a+1|0;if(a>>>0>2]){continue}break}a=v[e+2376>>2]}v[b+36>>2]=0;I9(v[a+20>>2],0,v[a+24>>2]<<2);d=v[e+4592>>2];b=v[e+4600>>2]+2|0;if(d>>>0>b>>>0){while(1){d=d-1|0;a=v[v[e+4588>>2]+(d<<2)>>2];v[e+4592>>2]=d;if(a){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a);d=v[e+4592>>2]}if(b>>>0>>0){continue}break}}v[e+4600>>2]=0;v[e+4604>>2]=0;v[e+1092>>2]=v[e+1092>>2]+1;xa=F+16|0}function t2(a,b,c,d){var e=0,f=0,g=0,h=C(0),i=C(0),j=0,k=0,l=0,m=0,n=C(0),o=0,p=C(0),q=0,r=0,s=0,u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=0,M=0;i=z[b+44>>2];j=xa+-64|0;t[j|0]=0;D=C(-34028234663852886e22);a:{if(c>>>0<2){break a}e=1;g=c-1|0;m=g&1;b:{if((c|0)==2){g=0;break b}q=g&-2;g=0;while(1){t[e+j|0]=e;l=B(e,48)+b|0;h=z[l+44>>2];o=e+1|0;t[o+j|0]=o;u=z[l+92>>2];r=hu?h:u;s=l?o:r?e:s;g=l?o:r?e:g;e=e+2|0;k=k+2|0;if((q|0)!=(k|0)){continue}break}}if(!m){break a}t[e+j|0]=e;h=z[(B(e,48)+b|0)+44>>2];k=h>2];F=z[g+20>>2];G=z[g+16>>2];o=w[j|0];if(r>>>0>=2){e=B(o,48)+b|0;h=C(z[e+24>>2]-u);p=C(h*h);h=C(z[e+16>>2]-G);J=C(h*h);h=C(z[e+20>>2]-F);h=C(p+C(J+C(h*h)));e=1;while(1){m=w[e+j|0];l=B(m,48)+b|0;n=C(z[l+24>>2]-u);p=C(n*n);n=C(z[l+16>>2]-G);J=C(n*n);n=C(z[l+20>>2]-F);n=C(p+C(J+C(n*n)));l=n>h;h=l?n:h;o=l?m:o;f=l?e:f;e=e+1|0;if((r|0)!=(e|0)){continue}break}}m=c-2|0;t[f+j|0]=w[m+j|0];e=B(o&255,48)+b|0;y=C(z[e+16>>2]-G);h=z[g+36>>2];n=z[g+32>>2];A=C(z[e+20>>2]-F);p=C(C(y*h)-C(n*A));J=p;E=C(p*p);p=z[g+40>>2];H=C(z[e+24>>2]-u);A=C(C(A*p)-C(h*H));y=C(C(H*n)-C(p*y));E=C(E+C(C(A*A)+C(y*y)));H=C(C(1)/C(K(E)));e=E>C(0);E=e?C(J*H):p;y=e?C(y*H):h;A=e?C(A*H):n;e=0;c:{if(!m){r=-1;g=-1;l=-1;break c}n=C(34028234663852886e22);h=C(-34028234663852886e22);l=-1;g=-1;r=-1;while(1){q=w[e+j|0];f=B(q,48)+b|0;p=C(C(C(z[f+24>>2]-u)*E)+C(C(C(z[f+16>>2]-G)*A)+C(y*C(z[f+20>>2]-F))));f=pC(0)}f=c-3|0;t[j+k|0]=w[f+j|0];g=(f|0)==(g|0)?k:g;if(!(!e|!f)){e=B(s&255,48)+b|0;u=z[e+16>>2];F=z[e+24>>2];G=z[e+20>>2];h=C(-34028234663852886e22);e=0;while(1){m=w[e+j|0];k=B(m,48)+b|0;n=C(C(C(z[k+24>>2]-F)*E)+C(C(C(z[k+16>>2]-u)*A)+C(y*C(z[k+20>>2]-G))));k=n>h;h=k?n:h;g=k?e:g;r=k?m:r;e=e+1|0;if((f|0)!=(e|0)){continue}break}}k=c-4|0;t[g+j|0]=w[k+j|0];d:{e:{f:{g:{d=C(d*C(.019999999552965164));if(!(!(d>i)|!(d>2];if(!(d>2];e=v[a+76>>2];v[e>>2]=v[c>>2];v[e+4>>2]=f;f=v[c+36>>2];v[e+32>>2]=v[c+32>>2];v[e+36>>2]=f;f=v[c+20>>2];v[e+16>>2]=v[c+16>>2];v[e+20>>2]=f;f=v[c+44>>2];v[e+40>>2]=v[c+40>>2];v[e+44>>2]=f;f=v[c+28>>2];v[e+24>>2]=v[c+24>>2];v[e+28>>2]=f;f=v[c+12>>2];v[e+8>>2]=v[c+8>>2];v[e+12>>2]=f;c=B(o&255,48)+b|0;f=v[c+4>>2];e=v[a+76>>2];v[e+48>>2]=v[c>>2];v[e+52>>2]=f;j=v[c+20>>2];f=e- -64|0;v[f>>2]=v[c+16>>2];v[f+4>>2]=j;f=v[c+36>>2];v[e+80>>2]=v[c+32>>2];v[e+84>>2]=f;f=v[c+12>>2];v[e+56>>2]=v[c+8>>2];v[e+60>>2]=f;f=v[c+28>>2];v[e+72>>2]=v[c+24>>2];v[e+76>>2]=f;f=v[c+44>>2];v[e+88>>2]=v[c+40>>2];v[e+92>>2]=f;c=B(l&255,48)+b|0;f=v[c+12>>2];e=v[a+76>>2];v[e+104>>2]=v[c+8>>2];v[e+108>>2]=f;f=v[c+44>>2];v[e+136>>2]=v[c+40>>2];v[e+140>>2]=f;f=v[c+4>>2];v[e+96>>2]=v[c>>2];v[e+100>>2]=f;f=v[c+20>>2];v[e+112>>2]=v[c+16>>2];v[e+116>>2]=f;f=v[c+28>>2];v[e+120>>2]=v[c+24>>2];v[e+124>>2]=f;f=v[c+36>>2];v[e+128>>2]=v[c+32>>2];v[e+132>>2]=f;l=r&255;break d}L=k&-2;f=-1;e=0;g=0;while(1){i=z[(B(w[e+j|0],48)+b|0)+44>>2];q=!(ii);i=q?h:i;M=e|1;h=z[(B(w[M+j|0],48)+b|0)+44>>2];x=!(i>h)|!(d>h);f=x?q?f:e:M;h=x?i:h;e=e+2|0;g=g+2|0;if((L|0)!=(g|0)){continue}break}}if(I){i=z[(B(w[e+j|0],48)+b|0)+44>>2];f=h>i?i>>0>=k>>>0){break e}e=f+j|0;m=w[e|0];t[e|0]=s}f=B(m,48)+b|0;g=v[f+4>>2];e=v[a+76>>2];v[e>>2]=v[f>>2];v[e+4>>2]=g;g=v[f+44>>2];v[e+40>>2]=v[f+40>>2];v[e+44>>2]=g;g=v[f+36>>2];v[e+32>>2]=v[f+32>>2];v[e+36>>2]=g;g=v[f+28>>2];v[e+24>>2]=v[f+24>>2];v[e+28>>2]=g;g=v[f+20>>2];v[e+16>>2]=v[f+16>>2];v[e+20>>2]=g;g=v[f+12>>2];v[e+8>>2]=v[f+8>>2];v[e+12>>2]=g;m=o&255;h=z[(B(m,48)+b|0)+44>>2];h:{if(!(d>2];s=!(ii);i=s?h:i;L=e|1;h=z[(B(w[L+j|0],48)+b|0)+44>>2];q=!(i>h)|!(d>h);f=q?s?f:e:L;h=q?i:h;e=e+2|0;g=g+2|0;if((I|0)!=(g|0)){continue}break}}if(x){i=z[(B(w[e+j|0],48)+b|0)+44>>2];f=h>i?i>>0>=k>>>0){break h}e=f+j|0;m=w[e|0];t[e|0]=o}e=B(m,48)+b|0;g=v[e+4>>2];f=v[a+76>>2];v[f+48>>2]=v[e>>2];v[f+52>>2]=g;g=v[e+44>>2];v[f+88>>2]=v[e+40>>2];v[f+92>>2]=g;g=v[e+36>>2];v[f+80>>2]=v[e+32>>2];v[f+84>>2]=g;g=v[e+28>>2];v[f+72>>2]=v[e+24>>2];v[f+76>>2]=g;o=v[e+20>>2];g=f- -64|0;v[g>>2]=v[e+16>>2];v[g+4>>2]=o;g=v[e+12>>2];v[f+56>>2]=v[e+8>>2];v[f+60>>2]=g;o=l&255;h=z[(B(o,48)+b|0)+44>>2];j:{if(!(d>2];s=!(ii);i=s?h:i;I=e|1;h=z[(B(w[I+j|0],48)+b|0)+44>>2];m=!(i>h)|!(d>h);f=m?s?f:e:I;h=m?i:h;e=e+2|0;g=g+2|0;if((x|0)!=(g|0)){continue}break}}if(q){i=z[(B(w[e+j|0],48)+b|0)+44>>2];f=h>i?i>>0>=k>>>0){break j}e=f+j|0;o=w[e|0];t[e|0]=l}f=B(o,48)+b|0;g=v[f+4>>2];e=v[a+76>>2];v[e+96>>2]=v[f>>2];v[e+100>>2]=g;g=v[f+44>>2];v[e+136>>2]=v[f+40>>2];v[e+140>>2]=g;g=v[f+36>>2];v[e+128>>2]=v[f+32>>2];v[e+132>>2]=g;g=v[f+28>>2];v[e+120>>2]=v[f+24>>2];v[e+124>>2]=g;g=v[f+20>>2];v[e+112>>2]=v[f+16>>2];v[e+116>>2]=g;g=v[f+12>>2];v[e+104>>2]=v[f+8>>2];v[e+108>>2]=g;l=r&255;h=z[(B(l,48)+b|0)+44>>2];if(!(d>2];c=!(ii);i=c?h:i;q=e|1;h=z[(B(w[q+j|0],48)+b|0)+44>>2];o=!(i>h)|!(d>h);f=o?c?f:e:q;h=o?i:h;e=e+2|0;g=g+2|0;if((m|0)!=(g|0)){continue}break}}if(s){p=d;d=z[(B(w[e+j|0],48)+b|0)+44>>2];f=dd?e:f:f}if(f>>>0>=k>>>0){break d}c=f+j|0;l=w[c|0];t[c|0]=r}c=v[a+76>>2];a=B(l,48)+b|0;b=v[a+4>>2];v[c+144>>2]=v[a>>2];v[c+148>>2]=b;b=v[a+44>>2];v[c+184>>2]=v[a+40>>2];v[c+188>>2]=b;b=v[a+36>>2];v[c+176>>2]=v[a+32>>2];v[c+180>>2]=b;b=v[a+28>>2];v[c+168>>2]=v[a+24>>2];v[c+172>>2]=b;b=v[a+20>>2];v[c+160>>2]=v[a+16>>2];v[c+164>>2]=b;b=v[a+12>>2];v[c+152>>2]=v[a+8>>2];v[c+156>>2]=b}function qy(a,b,c,d,e){var f=0,g=0,h=C(0),i=0,j=C(0),k=C(0),l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=0,s=C(0),A=C(0),D=0,E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=0,M=0,N=0,O=0,P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0);i=xa-560|0;xa=i;E=v[a+16>>2];g=v[a+116>>2];a:{if(!g){v[E+20>>2]=0;v[E+24>>2]=0;v[E+28>>2]=0;f=0;break a}b:{if(!(x[E+8>>1]!=65535|x[E+10>>1]!=65535)){O=96;L=0;break b}O=160;L=1}g=B(g,O);b=Ba[v[v[b>>2]>>2]](b,g- -64|0)|0;f=0;if(b+1>>>0<2){break a}v[E+24>>2]=b;f=g+48|0;u[E+22>>1]=f>>>4;g=v[a+132>>2];u[E+20>>1]=8;v[E+28>>2]=g;I9(b,0,f);f=v[a+116>>2];b=v[E+24>>2];t[b+2|0]=0;t[b+1|0]=f;t[b|0]=L?4:2;j=z[a>>2];z[b+32>>2]=j;z[b+36>>2]=z[a+4>>2];h=z[a+8>>2];z[b+40>>2]=-h;z[b+44>>2]=-z[a+12>>2];z[b+16>>2]=z[a+140>>2];z[b+20>>2]=z[a+144>>2];z[b+24>>2]=z[a+148>>2];p=z[a+120>>2];z[b+4>>2]=p*c;z[b+8>>2]=z[a+124>>2]*c;t[b+3|0]=p!=C(34028234663852886e22)|z[a+124>>2]!=C(34028234663852886e22);k=j;g=v[a+28>>2];j=z[g+12>>2];z[b+12>>2]=k*j;k=h;l=v[a+32>>2];h=z[l+12>>2];z[b+28>>2]=k*h;oy(i+128|0,v[a+112>>2],i+368|0,i+176|0,f,g+32|0,l+32|0,j,h,a,w[a+136|0]!=0|L,w[a+137|0],1);b=b+48|0;if(v[a+116>>2]){T=c>2];j=w[f+76|0]&32?w[a+138|0]?T:C(1):C(1);p=z[a+128>>2];c:{if(!L){l=M<<4;g=l+(i+368|0)|0;h=z[g>>2];k=z[g+4>>2];m=z[g+8>>2];g=l+(i+176|0)|0;o=z[g>>2];F=z[g+4>>2];G=z[g+8>>2];P=z[f+44>>2];Q=z[f+60>>2];q=z[f>>2];z[b>>2]=q;I=z[f+4>>2];z[b+4>>2]=I;H=z[f+8>>2];z[b+8>>2]=H;s=z[f+32>>2];z[b+16>>2]=s;K=z[f+36>>2];z[b+20>>2]=K;A=z[f+40>>2];z[b+84>>2]=j*Q;z[b+80>>2]=j*P;z[b+56>>2]=G;z[b+52>>2]=F;z[b+48>>2]=o;z[b+40>>2]=m;z[b+36>>2]=k;z[b+32>>2]=h;z[b+24>>2]=A;v[b+88>>2]=0;v[b+92>>2]=0;z[b+64>>2]=z[f+16>>2];z[b+68>>2]=z[f+20>>2];z[b+72>>2]=z[f+24>>2];g=v[a+28>>2];l=v[a+32>>2];j=C(C(C(C(C(C(H*H)+C(C(q*q)+C(I*I)))*z[g+12>>2])*z[a>>2])+C(z[a+4>>2]*C(C(m*m)+C(C(h*h)+C(k*k)))))+C(C(C(C(C(A*A)+C(C(s*s)+C(K*K)))*z[l+12>>2])*z[a+8>>2])+C(z[a+12>>2]*C(C(G*G)+C(C(o*o)+C(F*F))))));k=C(C(C(C(z[g+8>>2]*z[f+8>>2])+C(C(z[g>>2]*z[f>>2])+C(z[g+4>>2]*z[f+4>>2])))+C(C(z[g+24>>2]*z[f+24>>2])+C(C(z[g+16>>2]*z[f+16>>2])+C(z[g+20>>2]*z[f+20>>2]))))-C(C(C(z[l+8>>2]*z[f+40>>2])+C(C(z[l>>2]*z[f+32>>2])+C(z[l+4>>2]*z[f+36>>2])))+C(C(z[l+24>>2]*z[f+56>>2])+C(C(z[l+16>>2]*z[f+48>>2])+C(z[l+20>>2]*z[f+52>>2])))));m=k;break c}h=z[f+44>>2];k=z[f+60>>2];z[b>>2]=z[f>>2];z[b+4>>2]=z[f+4>>2];z[b+8>>2]=z[f+8>>2];z[b+16>>2]=z[f+32>>2];z[b+20>>2]=z[f+36>>2];z[b+24>>2]=z[f+40>>2];z[b+32>>2]=z[f+16>>2];z[b+36>>2]=z[f+20>>2];z[b+40>>2]=z[f+24>>2];z[b+48>>2]=z[f+48>>2];z[b+52>>2]=z[f+52>>2];m=z[f+56>>2];z[b+84>>2]=j*k;z[b+80>>2]=j*h;z[b+56>>2]=m;v[b+88>>2]=0;v[b+92>>2]=0;g=v[a+20>>2];l=v[a+28>>2];u[i+120>>1]=x[E+8>>1];v[i+116>>2]=l;v[i+112>>2]=g;g=v[a+24>>2];l=v[a+32>>2];u[i+104>>1]=x[E+10>>1];v[i+100>>2]=l;v[i+96>>2]=g;l=i- -64|0;J=i+112|0;ly(l,b,b+32|0,J);j=z[b+20>>2];h=z[b+16>>2];z[i+24>>2]=-z[b+24>>2];z[i+20>>2]=-j;z[i+16>>2]=-h;j=z[b+52>>2];h=z[b+48>>2];z[i+8>>2]=-z[b+56>>2];z[i+4>>2]=-j;z[i>>2]=-h;n=i+32|0;N=i+96|0;ly(n,i+16|0,i,N);r=b+96|0;j=z[a>>2];h=z[a+4>>2];D=b+128|0;k=z[a+8>>2];m=z[a+12>>2];g=xa-32|0;xa=g;S=x[J+8>>1];d:{if((S|0)==65535){A=z[l>>2];G=z[l+4>>2];o=z[v[J+4>>2]+12>>2];F=C(C(o*z[l+8>>2])*j);z[r+8>>2]=F;G=C(C(o*G)*j);z[r+4>>2]=G;j=C(C(o*A)*j);z[r>>2]=j;A=z[l+20>>2];q=z[l+16>>2];o=C(z[l+24>>2]*h);z[r+24>>2]=o;A=C(A*h);z[r+20>>2]=A;h=C(q*h);z[r+16>>2]=h;break d}J=v[J>>2];o=z[l+20>>2];F=z[l>>2];G=z[l+4>>2];A=z[l+8>>2];q=z[l+16>>2];z[g+24>>2]=z[l+24>>2]*h;z[g+20>>2]=o*h;v[g+28>>2]=0;v[g+12>>2]=0;z[g+16>>2]=q*h;z[g+8>>2]=A*j;z[g+4>>2]=G*j;z[g>>2]=F*j;Ba[v[v[J>>2]+104>>2]](J,S,e,g,r);o=z[r+24>>2];A=z[r+20>>2];h=z[r+16>>2];F=z[r+8>>2];G=z[r+4>>2];j=z[r>>2]}K=z[l+24>>2];P=z[l+20>>2];Q=z[l+16>>2];V=z[l+8>>2];W=z[l+4>>2];X=z[l>>2];r=x[N+8>>1];e:{if((r|0)==65535){s=z[n>>2];H=z[n+4>>2];q=z[v[N+4>>2]+12>>2];I=C(C(q*z[n+8>>2])*k);z[D+8>>2]=I;H=C(C(q*H)*k);z[D+4>>2]=H;k=C(C(q*s)*k);z[D>>2]=k;s=z[n+20>>2];R=z[n+16>>2];q=C(z[n+24>>2]*m);z[D+24>>2]=q;s=C(s*m);z[D+20>>2]=s;m=C(R*m);z[D+16>>2]=m;break e}l=v[N>>2];q=z[n+20>>2];I=z[n>>2];H=z[n+4>>2];s=z[n+8>>2];R=z[n+16>>2];z[g+24>>2]=z[n+24>>2]*m;z[g+20>>2]=q*m;v[g+28>>2]=0;v[g+12>>2]=0;z[g+16>>2]=R*m;z[g+8>>2]=s*k;z[g+4>>2]=H*k;z[g>>2]=I*k;Ba[v[v[l>>2]+104>>2]](l,r,e,g,D);q=z[D+24>>2];s=z[D+20>>2];m=z[D+16>>2];I=z[D+8>>2];H=z[D+4>>2];k=z[D>>2]}xa=g+32|0;j=C(C(C(C(V*F)+C(C(X*j)+C(W*G)))+C(C(K*o)+C(C(Q*h)+C(P*A))))+C(C(C(z[n+8>>2]*I)+C(C(z[n>>2]*k)+C(z[n+4>>2]*H)))+C(C(z[n+24>>2]*q)+C(C(z[n+16>>2]*m)+C(z[n+20>>2]*s)))));z[b+64>>2]=z[f+16>>2];z[b+68>>2]=z[f+20>>2];z[b+72>>2]=z[f+24>>2];z[b>>2]=z[i+64>>2];z[b+4>>2]=z[i+68>>2];z[b+8>>2]=z[i+72>>2];z[b+32>>2]=z[i+80>>2];z[b+36>>2]=z[i+84>>2];z[b+40>>2]=z[i+88>>2];h=z[i+32>>2];k=z[i+36>>2];z[b+24>>2]=-z[i+40>>2];z[b+20>>2]=-k;z[b+16>>2]=-h;h=z[i+48>>2];k=z[i+52>>2];z[b+56>>2]=-z[i+56>>2];z[b+52>>2]=-k;z[b+48>>2]=-h;g=x[f+76>>1];f:{if(!(g&4|(g&3)==3|x[i+120>>1]==65535)){k=C(0);m=C(0);if(x[i+104>>1]!=65535){break f}}m=iy(i+112|0,f,f+16|0);h=iy(i+96|0,f+32|0,f+48|0);k=C(m-h);if(x[i+120>>1]==65535){break f}m=x[i+104>>1]==65535?C(-h):C(0)}p=p>C(9999999747378752e-21)?p:C(9999999747378752e-21)}p=j<=p?C(0):C(C(1)/j);h=z[f+12>>2];g=x[f+76>>1];g:{if(g&1){o=z[f+64>>2];F=z[f+68>>2];k=C(C(U*o)+C(F*c));o=C(C(C(F*z[f+28>>2])-C(h*o))*c);h:{if(g&2){j=C(C(1)/C(k+C(1)));h=C(p*j);p=C(p*C(-j));break h}h=j!=C(0)?C(C(1)/C(C(k*j)+C(1))):C(0);p=C(-h);j=h}z[b+60>>2]=C(1)-j;j=C(k*p);z[b+44>>2]=j;h=C(o*h);k=h;break g}v[b+60>>2]=1065353216;j=C(-p);z[b+44>>2]=j;i:{if(!(g&4)){break i}k=C(-k);if(!(k>z[f+68>>2])){break i}h=C(C(p*z[f+64>>2])*k);k=h;break g}k=C(p*C(z[f+28>>2]-C(h*d)));z[b+12>>2]=k;h=C(p*C(z[f+28>>2]-C(z[f+72>>2]*d)))}j=C(m*j);z[b+28>>2]=j+h;z[b+12>>2]=k+j;if(g&16){v[b+92>>2]=v[b+92>>2]|2}b=b+O|0;M=M+1|0;if(M>>>0>2]){continue}break}}v[b>>2]=0;v[b+4>>2]=0;f=v[a+116>>2]}xa=i+560|0;return f}function MC(a,b,c,d,e,f){var g=0,h=C(0),i=0,j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=0,q=C(0),r=0,s=C(0),t=C(0),u=C(0),w=C(0),x=0,A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0;r=xa-16|0;xa=r;b=b+36|0;j=v[b+(d<<2)>>2];i=v[b+(!d<<2)>>2];s=C(z[i+24>>2]+z[i+8>>2]);b=v[j+36>>2];l=C(s-C(z[b+24>>2]+z[b+8>>2]));k=C(l*l);l=C(z[i+16>>2]+z[i>>2]);m=C(l-C(z[b+16>>2]+z[b>>2]));o=C(m*m);m=C(z[i+20>>2]+z[i+4>>2]);h=C(m-C(z[b+20>>2]+z[b+4>>2]));k=C(k+C(o+C(h*h)));b=v[j+40>>2];h=C(s-C(z[b+24>>2]+z[b+8>>2]));o=C(h*h);h=C(l-C(z[b+16>>2]+z[b>>2]));q=C(h*h);h=C(m-C(z[b+20>>2]+z[b+4>>2]));b=v[(j+36|0)+((k>C(o+C(q+C(h*h))))<<2)>>2];d=v[b+40>>2];if(d){while(1){g=b+36|0;b=v[b+36>>2];h=C(s-C(z[b+24>>2]+z[b+8>>2]));k=C(h*h);h=C(l-C(z[b+16>>2]+z[b>>2]));o=C(h*h);h=C(m-C(z[b+20>>2]+z[b+4>>2]));k=C(k+C(o+C(h*h)));h=C(s-C(z[d+24>>2]+z[d+8>>2]));o=C(h*h);h=C(l-C(z[d+16>>2]+z[d>>2]));q=C(h*h);h=C(m-C(z[d+20>>2]+z[d+4>>2]));b=v[g+((k>C(o+C(q+C(h*h))))<<2)>>2];d=v[b+40>>2];if(d){continue}break}}a:{b:{j=v[c+4>>2];if(!j){d=0;break b}g=v[c>>2];d=0;while(1){if(v[g+(d<<2)>>2]==(b|0)){break b}d=d+1|0;if((j|0)!=(d|0)){continue}break}break a}if((d|0)==(j|0)){break a}j=j-1|0;v[c+4>>2]=j;g=d<<2;d=v[c>>2];v[g+d>>2]=v[d+(j<<2)>>2]}j=v[b+32>>2];v[r+12>>2]=j;I=v[j+36>>2];g=I;if((g|0)==(b|0)){g=v[j+40>>2]}d=v[g+20>>2];v[j+16>>2]=v[g+16>>2];v[j+20>>2]=d;d=v[g+28>>2];v[j+24>>2]=v[g+24>>2];v[j+28>>2]=d;d=v[g+4>>2];v[j>>2]=v[g>>2];v[j+4>>2]=d;d=v[g+12>>2];v[j+8>>2]=v[g+8>>2];v[j+12>>2]=d;d=v[g+40>>2];p=v[g+36>>2];v[j+36>>2]=p;c:{if(!d){d=0;v[j+40>>2]=0;d:{e:{p=v[c+4>>2];if(!p){break e}j=v[c>>2];while(1){if(v[j+(d<<2)>>2]==(g|0)){break e}d=d+1|0;if((p|0)!=(d|0)){continue}break}break d}if((d|0)==(p|0)){break d}p=p-1|0;v[c+4>>2]=p;g=d<<2;d=v[c>>2];v[g+d>>2]=v[d+(p<<2)>>2]}if((v[c+8>>2]&2147483647)>>>0<=p>>>0){NC(c,r+12|0);break c}v[v[c>>2]+(p<<2)>>2]=v[r+12>>2];v[c+4>>2]=p+1;break c}v[p+32>>2]=j;d=v[g+40>>2];v[j+40>>2]=d;v[d+32>>2]=j}d=v[v[r+12>>2]+32>>2];if(d){OC(d,e)}d=v[i+40>>2];f:{if(!d){v[r+8>>2]=i;j=0;p=0;break f}s=C(z[b+16>>2]+z[b>>2]);l=C(z[b+24>>2]+z[b+8>>2]);m=C(z[b+20>>2]+z[b+4>>2]);h=z[d+24>>2];o=z[d+20>>2];j=v[i+36>>2];k=z[j+24>>2];q=z[j+20>>2];t=z[d+8>>2];A=z[d+4>>2];B=z[d>>2];D=z[d+16>>2];E=z[j+8>>2];F=z[j+4>>2];G=z[j>>2];H=z[j+16>>2];p=0;g=1;j=0;g:{if(!f){break g}u=C(C(C(D-B)*C(o-A))*C(h-t));w=C(C(C(H-G)*C(q-F))*C(k-E));if(!(u>C(w*C(3)))){j=0;if(!(w>C(u*C(3)))){break g}}n=1;g=0;j=!(w>u)}d=i+36|0;k=C(l-C(k+E));u=C(k*k);k=C(s-C(H+G));w=C(k*k);k=C(m-C(q+F));h=C(l-C(h+t));q=C(h*h);h=C(s-C(D+B));t=C(h*h);h=C(m-C(o+A));x=C(u+C(w+C(k*k)))>C(q+C(t+C(h*h)));if(!g){g=v[v[d+(j<<2)>>2]+40>>2];p=g?i:0;f=!g&f}i=v[d+(x<<2)>>2];v[r+8>>2]=i;d=v[i+40>>2];if(!d){break f}while(1){h=z[d+24>>2];o=z[d+20>>2];g=v[i+36>>2];k=z[g+24>>2];q=z[g+20>>2];t=z[d+8>>2];A=z[d+4>>2];B=z[d>>2];D=z[d+16>>2];E=z[g+8>>2];F=z[g+4>>2];G=z[g>>2];H=z[g+16>>2];h:{if(!(f&1)){break h}u=C(C(C(D-B)*C(o-A))*C(h-t));w=C(C(C(H-G)*C(q-F))*C(k-E));if(!(u>C(w*C(3))|w>C(u*C(3)))){break h}n=1;j=!(w>u)}d=i+36|0;k=C(l-C(k+E));u=C(k*k);k=C(s-C(H+G));w=C(k*k);k=C(m-C(q+F));h=C(l-C(h+t));q=C(h*h);h=C(s-C(D+B));t=C(h*h);h=C(m-C(o+A));g=C(u+C(w+C(k*k)))>C(q+C(t+C(h*h)));i:{if(p){break i}if(!n){p=0;break i}p=i;i=v[v[d+(j<<2)>>2]+40>>2];p=i?p:0;f=!i&f}i=v[d+(g<<2)>>2];v[r+8>>2]=i;d=v[i+40>>2];if(d){continue}break}}f=v[b+36>>2];g=v[f>>2];d=v[i+36>>2];j:{if(g+v[d>>2]>>>0<=4){if(g){g=0;while(1){n=v[(f+(g<<2)|0)+4>>2];x=v[d>>2];v[d>>2]=x+1;v[(d+(x<<2)|0)+4>>2]=n;g=g+1|0;if(g>>>0>2]){continue}break}}g=v[c>>2];d=0;k:{l:{m:{f=v[c+4>>2];if(!f){break m}while(1){if(v[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>=(v[c+8>>2]&2147483647)>>>0){NC(c,r+8|0);break k}v[g+(f<<2)>>2]=i;v[c+4>>2]=f+1}d=v[b+36>>2];if(d){v[a+284>>2]=v[a+284>>2]-1;v[d>>2]=v[a+292>>2];v[a+292>>2]=d}s=z[b>>2];l=z[b+4>>2];m=z[b+8>>2];d=v[r+8>>2];h=z[d+12>>2];o=z[b+12>>2];z[d+12>>2]=h>2];z[d+8>>2]=h>2];z[d+4>>2]=l>m?m:l;l=z[d>>2];z[d>>2]=l>2];l=z[b+20>>2];m=z[d+24>>2];h=z[b+24>>2];o=z[d+16>>2];k=z[b+16>>2];f=v[r+8>>2];q=z[d+28>>2];t=z[b+28>>2];z[f+28>>2]=q>t?q:t;z[f+24>>2]=h>2]=l>2]=k>2];if(!g){JC(a+296|0);g=v[a+584>>2]}v[a+584>>2]=v[g>>2];v[a+576>>2]=v[a+576>>2]+1;v[r+4>>2]=g;f=g+48|0;v[r>>2]=f;v[g+80>>2]=i;v[g+32>>2]=i;n=v[i+36>>2];d=0;v[g+40>>2]=0;v[g+36>>2]=n;n=v[i+4>>2];v[g>>2]=v[i>>2];v[g+4>>2]=n;x=i+8|0;J=v[x+4>>2];n=g+8|0;v[n>>2]=v[x>>2];v[n+4>>2]=J;n=v[i+20>>2];v[g+16>>2]=v[i+16>>2];v[g+20>>2]=n;n=v[i+28>>2];v[g+24>>2]=v[i+24>>2];v[g+28>>2]=n;n=v[b+36>>2];v[g+88>>2]=0;v[g+84>>2]=n;n=v[b+4>>2];v[g+48>>2]=v[b>>2];v[g+52>>2]=n;x=v[b+12>>2];n=g+56|0;v[n>>2]=v[b+8>>2];v[n+4>>2]=x;x=v[b+20>>2];n=g- -64|0;v[n>>2]=v[b+16>>2];v[n+4>>2]=x;n=v[b+28>>2];v[g+72>>2]=v[b+24>>2];v[g+76>>2]=n;v[i+40>>2]=f;v[i+36>>2]=g;s=z[g+52>>2];l=z[g+56>>2];m=z[g+8>>2];h=z[g+48>>2];o=z[g>>2];k=z[g+4>>2];q=z[g+12>>2];t=z[g+60>>2];z[i+12>>2]=q>2]=l>m?m:l;z[i+4>>2]=k>2]=h>o?o:h;f=v[r>>2];s=z[f+20>>2];g=v[r+4>>2];l=z[g+20>>2];m=z[f+24>>2];h=z[g+24>>2];o=z[f+28>>2];k=z[g+28>>2];b=v[r+8>>2];q=z[g+16>>2];t=z[f+16>>2];z[b+16>>2]=q>t?q:t;z[b+28>>2]=k>o?k:o;z[b+24>>2]=h>m?h:m;z[b+20>>2]=l>s?l:s;LC(b);n:{o:{i=v[c+4>>2];if(!i){break o}f=v[c>>2];while(1){if((b|0)==v[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;v[c+4>>2]=i;b=v[c>>2];v[b+(d<<2)>>2]=v[b+(i<<2)>>2]}b=v[c+8>>2]&2147483647;p:{if(i>>>0>=b>>>0){NC(c,r+4|0);b=v[c+8>>2]&2147483647;d=v[c+4>>2];break p}v[v[c>>2]+(i<<2)>>2]=v[r+4>>2];d=i+1|0;v[c+4>>2]=d}if(b>>>0<=d>>>0){NC(c,r);break j}v[v[c>>2]+(d<<2)>>2]=v[r>>2];v[c+4>>2]=d+1}if(I){v[a+576>>2]=v[a+576>>2]-1;v[I>>2]=v[a+584>>2];v[a+584>>2]=I}if(p){MC(a,p,c,j,e,0)}xa=r+16|0}function G2(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=C(0),Z=C(0);j=xa-896|0;xa=j;a:{b:{if(w[i|0]&16){break b}m=z[b+4>>2];n=C(m+m);l=z[b+8>>2];r=C(n*l);q=z[b>>2];o=C(q+q);E=z[b+12>>2];A=C(o*E);z[j+492>>2]=r-A;z[j+484>>2]=r+A;q=C(C(1)-C(q*o));r=C(m*n);z[j+496>>2]=q-r;k=q;q=C(l+l);A=C(l*q);z[j+480>>2]=k-A;l=C(o*l);n=C(n*E);z[j+488>>2]=l+n;m=C(o*m);o=C(q*E);z[j+476>>2]=m-o;z[j+472>>2]=l-n;z[j+468>>2]=m+o;z[j+464>>2]=C(C(1)-r)-A;k=F_(a,a+12|0,b+16|0,c,j+464|0,0,0);l=z[a+24>>2];if(!(k>2]=0;e=z[d>>2];l=z[d+4>>2];z[h+8>>2]=-z[d+8>>2];z[h+4>>2]=-l;z[h>>2]=-e;c=1;break a}o=z[a+16>>2];n=z[a+20>>2];L=z[a>>2];M=z[a+12>>2];q=z[a+4>>2];E=z[a+8>>2];l=z[c>>2];m=z[c+4>>2];r=z[c+8>>2];z[j+28>>2]=r;z[j+24>>2]=m;z[j+20>>2]=l;z[j+16>>2]=-r;z[j+12>>2]=-m;z[j+8>>2]=-l;t[j+4|0]=1;c=t9(3024,5770,198);v[j>>2]=c;N=C(n-E);Q=C(C(o-q)*C(.5));zV(j+8|0,j+368|0);l=z[b+12>>2];m=C(C(l*l)+C(-.5));E=z[b+24>>2];r=z[b+20>>2];A=z[b+16>>2];o=z[b+4>>2];D=C(-o);n=z[b>>2];x=C(-n);q=z[b+8>>2];y=C(-q);i=0;while(1){H=j+368|0;W=B(i,3)+103520|0;b=H+B(w[W+1|0],12)|0;F=z[b+8>>2];O=z[b+4>>2];P=z[b>>2];b=B(w[W+2|0],12)+H|0;G=z[b+8>>2];J=z[b+4>>2];K=z[b>>2];b=(j+464|0)+B(i,36)|0;H=B(w[W|0],12)+H|0;k=z[H+8>>2];k=C(k+k);p=z[H>>2];p=C(p+p);s=z[H+4>>2];s=C(s+s);I=C(C(q*k)+C(C(n*p)+C(s*o)));z[b+8>>2]=E+C(C(q*I)+C(C(k*m)+C(l*C(C(n*s)+C(p*D)))));z[b+4>>2]=r+C(C(o*I)+C(C(s*m)+C(l*C(C(q*p)+C(k*x)))));z[b>>2]=A+C(C(n*I)+C(C(p*m)+C(l*C(C(o*k)+C(s*y)))));k=C(G+G);p=C(K+K);s=C(J+J);G=C(C(q*k)+C(C(n*p)+C(s*o)));z[b+32>>2]=E+C(C(q*G)+C(C(k*m)+C(l*C(C(n*s)+C(p*D)))));z[b+28>>2]=r+C(C(o*G)+C(C(s*m)+C(l*C(C(q*p)+C(k*x)))));z[b+24>>2]=A+C(C(n*G)+C(C(p*m)+C(l*C(C(o*k)+C(s*y)))));k=C(F+F);p=C(P+P);s=C(O+O);F=C(C(q*k)+C(C(n*p)+C(s*o)));z[b+20>>2]=E+C(C(q*F)+C(C(k*m)+C(l*C(C(n*s)+C(p*D)))));z[b+16>>2]=r+C(C(o*F)+C(C(s*m)+C(l*C(C(q*p)+C(k*x)))));z[b+12>>2]=A+C(C(n*F)+C(C(p*m)+C(l*C(C(o*k)+C(s*y)))));i=i+1|0;if((i|0)!=12){continue}break}R=C(N*C(.5));S=C(C(M-L)*C(.5));r=z[d>>2];i=0;b=j+32|0;while(1){H=(j+464|0)+B(i,36)|0;p=z[H+12>>2];x=z[H>>2];l=C(p-x);P=z[H+28>>2];y=z[H+4>>2];m=C(P-y);O=z[H+24>>2];o=C(O-x);s=z[H+16>>2];n=C(s-y);X=C(C(l*m)-C(o*n));q=n;G=z[H+32>>2];k=z[H+8>>2];n=C(G-k);D=m;F=z[H+20>>2];m=C(F-k);Y=C(C(q*n)-C(D*m));Z=C(C(m*o)-C(n*l));if(!(C(C(X*z[d+8>>2])+C(C(Y*r)+C(z[d+4>>2]*Z)))>C(0))){r=C(G-R);A=C(P-Q);D=C(O-S);l=C(F-R);m=C(s-Q);o=C(p-S);n=C(k-R);q=C(y-Q);E=C(x-S);L=C(S+x);x=L;M=C(Q+y);y=M;N=C(R+k);k=N;T=C(S+p);p=T;U=C(Q+s);s=U;V=C(R+F);F=V;J=C(S+O);O=J;K=C(Q+P);P=K;I=C(R+G);G=I;if(!(C(C(X*R)+C(C(Y*S)+C(Q*Z)))>=C(0))){y=q;k=n;p=o;s=m;F=l;O=D;P=A;G=r;x=E}z[c+24>>2]=O;z[c+12>>2]=p;z[c+8>>2]=k;z[c+4>>2]=y;z[c>>2]=x;z[c+32>>2]=G;z[c+28>>2]=P;z[c+20>>2]=F;z[c+16>>2]=s;v[b>>2]=i;z[c+68>>2]=I;z[c- -64>>2]=K;z[c+60>>2]=J;z[c+56>>2]=V;z[c+52>>2]=U;z[c+48>>2]=T;z[c+44>>2]=l;z[c+40>>2]=m;z[c+36>>2]=o;p=C(T-o);x=C(K-m);y=C(J-o);k=C(U-m);G=C(C(C(p*x)-C(y*k))*z[d+8>>2]);F=k;k=C(I-l);s=C(V-l);if(C(G+C(C(C(C(F*k)-C(x*s))*z[d>>2])+C(C(C(s*y)-C(k*p))*z[d+4>>2])))>C(0)){z[c+68>>2]=V;z[c+64>>2]=U;z[c+60>>2]=T;z[c+56>>2]=I;z[c+52>>2]=K;z[c+48>>2]=J}v[b+4>>2]=i;z[c+104>>2]=r;z[c+100>>2]=A;z[c+96>>2]=D;z[c+92>>2]=I;z[c+88>>2]=K;z[c+84>>2]=J;z[c+80>>2]=l;z[c+76>>2]=m;z[c+72>>2]=o;p=C(A-m);s=C(D-o);G=C(C(C(y*p)-C(s*x))*z[d+8>>2]);F=x;x=C(r-l);if(C(G+C(C(C(C(F*x)-C(p*k))*z[d>>2])+C(C(C(k*s)-C(x*y))*z[d+4>>2])))>C(0)){z[c+104>>2]=I;z[c+100>>2]=K;z[c+96>>2]=J;z[c+92>>2]=r;z[c+88>>2]=A;z[c+84>>2]=D}v[b+8>>2]=i;z[c+140>>2]=I;z[c+136>>2]=K;z[c+132>>2]=J;z[c+128>>2]=r;z[c+124>>2]=A;z[c+120>>2]=D;z[c+116>>2]=n;z[c+112>>2]=q;z[c+108>>2]=E;p=C(D-E);x=C(K-q);y=C(J-E);k=C(A-q);G=C(C(C(p*x)-C(y*k))*z[d+8>>2]);F=k;k=C(I-n);s=C(r-n);if(C(G+C(C(C(C(F*k)-C(x*s))*z[d>>2])+C(C(C(s*y)-C(k*p))*z[d+4>>2])))>C(0)){z[c+140>>2]=r;z[c+136>>2]=A;z[c+132>>2]=D;z[c+128>>2]=I;z[c+124>>2]=K;z[c+120>>2]=J}v[b+12>>2]=i;z[c+176>>2]=N;z[c+172>>2]=M;z[c+168>>2]=L;z[c+164>>2]=I;z[c+160>>2]=K;z[c+156>>2]=J;z[c+152>>2]=n;z[c+148>>2]=q;z[c+144>>2]=E;r=C(M-q);A=C(L-E);D=C(N-n);if(C(C(C(C(y*r)-C(A*x))*z[d+8>>2])+C(C(C(C(x*D)-C(r*k))*z[d>>2])+C(C(C(k*A)-C(D*y))*z[d+4>>2])))>C(0)){z[c+176>>2]=I;z[c+172>>2]=K;z[c+168>>2]=J;z[c+164>>2]=N;z[c+160>>2]=M;z[c+156>>2]=L}v[b+16>>2]=i;z[c+212>>2]=l;z[c+208>>2]=m;z[c+204>>2]=o;z[c+200>>2]=V;z[c+196>>2]=U;z[c+192>>2]=T;z[c+188>>2]=N;z[c+184>>2]=M;z[c+180>>2]=L;x=C(T-L);r=C(m-M);A=C(o-L);D=C(U-M);p=C(C(C(x*r)-C(A*D))*z[d+8>>2]);k=D;D=C(l-N);y=C(V-N);if(C(p+C(C(C(C(k*D)-C(r*y))*z[d>>2])+C(C(C(y*A)-C(D*x))*z[d+4>>2])))>C(0)){z[c+212>>2]=V;z[c+208>>2]=U;z[c+204>>2]=T;z[c+200>>2]=l;z[c+196>>2]=m;z[c+192>>2]=o}v[b+20>>2]=i;z[c+248>>2]=n;z[c+244>>2]=q;z[c+240>>2]=E;z[c+236>>2]=l;z[c+232>>2]=m;z[c+228>>2]=o;z[c+224>>2]=N;z[c+220>>2]=M;z[c+216>>2]=L;x=C(q-M);y=C(E-L);p=C(C(C(A*x)-C(y*r))*z[d+8>>2]);k=C(n-N);x=C(C(r*k)-C(x*D));r=z[d>>2];if(C(p+C(C(x*r)+C(C(C(D*y)-C(k*A))*z[d+4>>2])))>C(0)){z[c+248>>2]=l;z[c+244>>2]=m;z[c+240>>2]=o;z[c+236>>2]=n;z[c+232>>2]=q;z[c+228>>2]=E;r=z[d>>2]}v[b+24>>2]=i;c=c+252|0;b=b+28|0}i=i+1|0;if((i|0)!=12){continue}break}v[j+488>>2]=0;v[j+492>>2]=0;v[j+496>>2]=0;v[j+500>>2]=0;v[j+480>>2]=0;v[j+484>>2]=0;u[j+476>>1]=0;v[j+472>>2]=-1;v[j+464>>2]=0;v[j+468>>2]=0;v[j+504>>2]=2139095039;i=v[j>>2];l=z[a+12>>2];m=z[a>>2];o=z[a+16>>2];n=z[a+4>>2];z[j+376>>2]=C(z[a+8>>2]+z[a+20>>2])*C(.5);z[j+372>>2]=C(n+o)*C(.5);z[j+368>>2]=C(m+l)*C(.5);c=b;b=j+32|0;c=L2(c-b>>2,i,j+368|0,z[a+24>>2],d,e,0,j+464|0,b,0,0,0,0);if(c){z[f>>2]=z[j+480>>2];z[f+4>>2]=z[j+484>>2];z[f+8>>2]=z[j+488>>2];e=z[j+504>>2];z[h>>2]=z[j+492>>2];z[h+4>>2]=z[j+496>>2];z[h+8>>2]=z[j+500>>2]}if(w[j+4|0]){u9(i)}z[g>>2]=e}xa=j+896|0;return c}function qO(a,b){var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=0,E=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0);d=xa-224|0;xa=d;pO(a);k=v[a+12>>2];q=v[a+8>>2];c=v[a+64>>2];m=v[a+60>>2];B=(c|0)<(m|0);e=B?k:q;z[d+192>>2]=z[e+36>>2];z[d+196>>2]=z[e+40>>2];z[d+200>>2]=z[e+44>>2];z[d+204>>2]=z[e+48>>2];f=z[e+52>>2];z[d+208>>2]=f;g=z[e+56>>2];z[d+212>>2]=g;h=z[e+60>>2];z[d+216>>2]=h;z[d+160>>2]=z[e+8>>2];z[d+164>>2]=z[e+12>>2];z[d+168>>2]=z[e+16>>2];z[d+172>>2]=z[e+20>>2];i=z[e+24>>2];z[d+176>>2]=i;l=z[e+28>>2];z[d+180>>2]=l;j=z[e+32>>2];z[d+184>>2]=j;h=C(h-j);z[d+88>>2]=h;i=C(f-i);z[d+80>>2]=i;g=C(g-l);z[d+84>>2]=g;k=B?q:k;z[d+128>>2]=z[k+36>>2];z[d+132>>2]=z[k+40>>2];z[d+136>>2]=z[k+44>>2];z[d+140>>2]=z[k+48>>2];f=z[k+52>>2];z[d+144>>2]=f;l=z[k+56>>2];z[d+148>>2]=l;j=z[k+60>>2];z[d+152>>2]=j;z[d+96>>2]=z[k+8>>2];z[d+100>>2]=z[k+12>>2];z[d+104>>2]=z[k+16>>2];z[d+108>>2]=z[k+20>>2];r=z[k+24>>2];z[d+112>>2]=r;o=z[k+28>>2];z[d+116>>2]=o;n=z[k+32>>2];z[d+120>>2]=n;j=C(j-n);z[d+72>>2]=j;r=C(f-r);z[d+64>>2]=r;l=C(l-o);z[d+68>>2]=l;f=z[v[a+52>>2]+52>>2];o=z[k+4>>2];n=z[e+4>>2];v[a+104>>2]=0;h=C(h-j);j=C(h*h);h=C(i-r);g=C(g-l);j=C(j+C(C(h*h)+C(g*g)));g=C(n+o);r=b>g?g:b;a:{if(j<=C(r*r)){v[a+28>>2]=2139095039;b=C(34028234663852886e22);break a}b=f>C(0)?f:C(0);b:{c:{switch(((c|0)>(m|0)?c:m)-5|0){case 0:c=xa-400|0;xa=c;m=v[k>>2];q=m+4|0;IX(c+320|0,q,m+16|0);f=z[d+184>>2];g=z[d+216>>2];h=z[d+176>>2];i=z[d+208>>2];l=C(z[d+212>>2]-z[d+180>>2]);z[c+308>>2]=l;f=C(g-f);z[c+312>>2]=f;h=C(i-h);z[c+304>>2]=h;g=z[d+116>>2];k=d+128|0;i=z[k+20>>2];j=z[d+112>>2];o=z[k+16>>2];n=C(z[k+24>>2]-z[d+120>>2]);z[c+296>>2]=n;g=C(i-g);z[c+292>>2]=g;i=C(o-j);z[c+288>>2]=i;f=C(f-n);z[c+280>>2]=f;g=C(l-g);z[c+276>>2]=g;h=C(h-i);z[c+272>>2]=h;z[c+264>>2]=f;z[c+260>>2]=g;z[c+256>>2]=h;i=C(K(C(C(f*f)+C(C(h*h)+C(g*g)))));if(i>C(0)){j=f;f=C(C(1)/i);z[c+264>>2]=j*f;z[c+260>>2]=g*f;z[c+256>>2]=h*f}v[c+248>>2]=1065353216;v[c+232>>2]=1065353216;v[c+236>>2]=0;v[c+240>>2]=0;v[c+244>>2]=0;v[c+224>>2]=0;v[c+228>>2]=0;v[c+216>>2]=1065353216;v[c+220>>2]=0;B=c+152|0;CV(B,e- -64|0,e+76|0,c+216|0,c+256|0,i);H=c+88|0;q_(H,B,k,q);z[c+140>>2]=z[c+140>>2]+b;z[c+144>>2]=z[c+144>>2]+b;z[c+136>>2]=z[c+136>>2]+b;z[c+72>>2]=z[e+76>>2];z[c+76>>2]=z[e+80>>2];z[c+80>>2]=z[e+84>>2];f=z[e+68>>2];g=z[e+64>>2];z[c+64>>2]=z[e+72>>2]+b;z[c+60>>2]=f+b;z[c+56>>2]=g+b;v[c+44>>2]=k;z[c+20>>2]=r;v[c+8>>2]=142092;v[c+12>>2]=2;v[c+16>>2]=2139095039;v[c+52>>2]=c+56;v[c+48>>2]=c+72;v[c+40>>2]=c+288;v[c+36>>2]=c+304;v[c+32>>2]=c+272;v[c+28>>2]=c+320;v[c+24>>2]=m;e=v[m+40>>2];Ba[v[(x[e+4>>1]<<2)+142064>>2]](e,H,c+8|0,1,1);xa=c+400|0;b=z[c+16>>2];break b;case 1:c=xa-464|0;xa=c;m=v[k>>2];q=v[m+4>>2];v[c+456>>2]=m;v[c+452>>2]=q;f=z[m+8>>2];g=z[m+12>>2];z[c+448>>2]=C(1)/z[m+16>>2];z[c+440>>2]=C(1)/g;z[c+444>>2]=C(1)/f;v[c+432>>2]=0;v[c+436>>2]=64;t[c+424|0]=1;m=c+168|0;v[c+428>>2]=m;v[c+160>>2]=142020;v[c+164>>2]=m;f=z[d+184>>2];g=z[d+216>>2];h=z[d+176>>2];i=z[d+208>>2];l=C(z[d+212>>2]-z[d+180>>2]);z[c+148>>2]=l;f=C(g-f);z[c+152>>2]=f;g=C(i-h);z[c+144>>2]=g;h=z[d+116>>2];m=d+128|0;i=z[m+20>>2];j=z[d+112>>2];o=z[m+16>>2];n=C(z[m+24>>2]-z[d+120>>2]);z[c+136>>2]=n;h=C(i-h);z[c+132>>2]=h;i=C(o-j);z[c+128>>2]=i;j=z[e+68>>2];o=z[e+80>>2];p=z[e+64>>2];u=z[e+76>>2];I=C(f-n);f=C(I*C(.5));n=C(C(C(D(f))+z[e+72>>2])+b);f=C(f+z[e+84>>2]);z[c+124>>2]=n+f;J=C(l-h);h=C(J*C(.5));l=C(C(j+C(D(h)))+b);h=C(h+o);z[c+120>>2]=l+h;L=C(g-i);g=C(L*C(.5));b=C(C(p+C(D(g)))+b);g=C(g+u);z[c+116>>2]=b+g;z[c+112>>2]=f-n;z[c+108>>2]=h-l;z[c+104>>2]=g-b;l$(c+440|0,m,c+104|0,1,c+160|0);z[c+88>>2]=z[e+76>>2];z[c+92>>2]=z[e+80>>2];z[c+96>>2]=z[e+84>>2];m=v[c+428>>2];q=v[c+432>>2];d:{if(!q){b=C(34028234663852886e22);break d}k=k+8|0;O=C(z[e+72>>2]*C(1.100000023841858));P=C(z[e+68>>2]*C(1.100000023841858));Q=C(z[e+64>>2]*C(1.100000023841858));b=C(34028234663852886e22);e=0;while(1){m$(c+440|0,k,c+48|0,0,0,v[(e<<2)+m>>2],1,1);f=z[c+60>>2];o=z[c+48>>2];w=C(f-o);g=z[c+76>>2];n=z[c+52>>2];y=C(g-n);h=z[c+72>>2];j=C(h-o);i=z[c+64>>2];A=C(i-n);s=C(C(w*y)-C(j*A));p=C(-s);l=z[c+68>>2];u=z[c+56>>2];M=C(l-u);E=C(M*j);j=z[c+80>>2];N=C(j-u);E=C(E-C(N*w));w=C(-E);A=C(C(A*N)-C(y*M));y=C(-A);s=C(K(C(C(s*s)+C(C(A*A)+C(E*E)))));if(s>C(0)){s=C(C(1)/s);p=C(s*p);y=C(s*y);w=C(s*w)}if(r<=C(C(I*p)+C(C(L*y)+C(J*w)))){z[c+40>>2]=O;z[c+36>>2]=P;z[c+32>>2]=Q;p=C(F(u,C(85070586659632215e21)));p=l>p?p:l;p=j>p?p:j;u=C(G(u,C(-85070586659632215e21)));l=l>2]=C(p+l)*C(.5);j=C(F(n,C(85070586659632215e21)));j=i>j?j:i;j=g>j?j:g;n=C(G(n,C(-85070586659632215e21)));i=i>2]=C(j+g)*C(.5);i=C(F(o,C(85070586659632215e21)));i=f>i?i:f;i=h>i?i:h;o=C(G(o,C(-85070586659632215e21)));f=fh?f:h;z[c+16>>2]=C(i+f)*C(.5);z[c+8>>2]=C(C(C(l-p)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[c+4>>2]=C(C(C(g-j)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[c>>2]=C(C(C(f-i)*C(.5))+C(.009999999776482582))*C(1.100000023841858);f=rO(c+88|0,c+32|0,c+16|0,c,c+144|0,c+128|0);b=b>2]}e=v[c+436>>2];if(!((e|0)<0|!(e&2147483647)|(!m|(c+168|0)==(m|0)))){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,m)}xa=c+464|0;break b;default:break c}}z[d+48>>2]=z[e+76>>2];z[d+52>>2]=z[e+80>>2];z[d+56>>2]=z[e+84>>2];f=z[e+68>>2];g=z[e+72>>2];h=z[e+64>>2];z[d+32>>2]=z[k+76>>2];z[d+36>>2]=z[k+80>>2];z[d+40>>2]=z[k+84>>2];i=z[k+68>>2];l=z[k+72>>2];j=z[k+64>>2];z[d+24>>2]=C(b+g)*C(1.100000023841858);z[d+20>>2]=C(b+f)*C(1.100000023841858);z[d+16>>2]=C(b+h)*C(1.100000023841858);z[d+8>>2]=l*C(1.100000023841858);z[d+4>>2]=i*C(1.100000023841858);z[d>>2]=j*C(1.100000023841858);b=rO(d+48|0,d+16|0,d+32|0,d,d+80|0,d- -64|0)}z[a+28>>2]=b}xa=d+224|0;return b}function _D(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=C(0),m=C(0),n=0,o=C(0),p=C(0),q=0,r=0,s=0,u=0,x=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0;j=xa-32|0;xa=j;c=v[a+4>>2];a:{if(!c){break a}e=v[b+4>>2];f=v[b>>2];d=v[b+12>>2];b=v[b+8>>2];v[j+24>>2]=v[a+284>>2]-b;v[j+20>>2]=d;v[j+16>>2]=b;v[j+8>>2]=f;v[j+12>>2]=e;if(!w[a+336|0]){b=c;a=v[b+4>>2];d=j+8|0;c=a+v[d+8>>2]<<2;b:{if(!c){c=0;break b}a=v[37696];c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,24422,12118,840)|0;a=v[b+4>>2]}c=H9(c,v[b>>2],a<<2);a=v[b>>2];if(a){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,a)}v[b>>2]=c;a=v[d+8>>2];v[b+44>>2]=a+v[b+44>>2];if(a){e=v[d+12>>2];a=0;while(1){v[c+(v[b+4>>2]+a<<2)>>2]=v[e+(a<<2)>>2]+v[d+16>>2];a=a+1|0;if(a>>>0>2]){continue}break}}a=(v[b+40>>2]+v[d>>2]|0)+1|0;a=(a>>>5|0)+((a&31)!=0)|0;if(a>>>0>y[b+56>>2]){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,a<<2,24422,12118,337)|0;e=v[b+56>>2];I9(c+(e<<2)|0,0,a-e<<2);c=H9(c,v[b+52>>2],v[b+56>>2]<<2);e=v[b+52>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[b+56>>2]=a;v[b+52>>2]=c}if(!v[b+36>>2]){c=v[b+40>>2];a=c<<2;c:{if(!a){a=0;break c}c=v[37696];a=Ba[v[v[c+12>>2]+8>>2]](c+12|0,a,24422,12118,859)|0;c=v[b+40>>2]}v[b+36>>2]=a;f=a;a=v[b+8>>2];SB(c,f,a,a,a)}d:{e:{a=v[b+8>>2];c=v[d+4>>2];if(z[a>>2]>z[c>>2]|z[a+4>>2]>z[c+4>>2]|(z[a+12>>2]>2]|z[a+8>>2]>z[c+8>>2])){break e}if(t[a+24|0]&1|(z[a+16>>2]>2]|z[a+20>>2]>2])){break e}c=0;i=v[b+8>>2];g=v[d+4>>2];l=z[g>>2];while(1){e=c;f=a;h=v[a+24>>2];c=h>>>1|0;a=i+B(c,28)|0;f:{if(l>2]|z[a+4>>2]>z[g+4>>2]|(z[a+12>>2]>2]|z[a+8>>2]>z[g+8>>2])){break f}if(z[a+16>>2]>2]){break f}if(!(z[a+20>>2]>2])){continue}}g:{if(l>2]){break g}a=a+28|0;if(z[a+4>>2]>z[g+4>>2]|z[a+8>>2]>z[g+8>>2]|(z[a+12>>2]>2]|z[a+16>>2]>2])){break g}if(z[a+20>>2]>2]){break g}c=c+1|0;continue}break}h:{if(h&1){UB(b,f,d,e);break h}VB(b,f,d,e)}break d}i:{if(t[a+24|0]&1){UB(b,a,d,0);break i}VB(b,a,d,0)}c=v[d+4>>2];l=z[c>>2];o=z[c+4>>2];a=v[b+8>>2];m=z[a+8>>2];p=z[c+8>>2];z[a+8>>2]=m>2];z[a+4>>2]=m>2];z[a>>2]=l>o?o:l;l=z[c+16>>2];o=z[c+12>>2];m=z[a+20>>2];p=z[c+20>>2];z[a+20>>2]=m>p?m:p;m=z[a+16>>2];z[a+16>>2]=l>2];z[a+12>>2]=l>o?l:o}v[b+4>>2]=v[b+4>>2]+v[d+8>>2];break a}s=v[a+48>>2];g=xa-32|0;xa=g;d=a+52|0;e=v[d+204>>2];if((e|0)==v[d+208>>2]){a=e<<1;b=B(a,24)+24|0;if(b){c=v[37696];b=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,8015,201)|0}else{b=0}b=H9(b,v[d+196>>2],B(v[d+208>>2],24));c=v[d+196>>2];if(c){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+196>>2]=b;b=a<<3;if(b){c=v[37696];e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,8015,208)|0}else{e=0}b=H9(e,v[d+200>>2],v[d+208>>2]<<3);c=v[d+200>>2];if(c){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,c)}v[d+200>>2]=b;h=v[d+208>>2];if(a>>>0>h>>>0){while(1){c=h<<3;v[(c+e|0)+4>>2]=0;b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?44169:63804;b=IB(Ba[v[v[b+12>>2]+8>>2]](b+12|0,64,e,8015,217)|0);e=v[d+200>>2];v[c+e>>2]=b;h=h+1|0;if((a|0)!=(h|0)){continue}break}}v[d+208>>2]=a;e=v[d+204>>2]}v[d+204>>2]=e+1;f=v[v[d+124>>2]+12>>2];i=v[j+24>>2];a=v[d+200>>2]+(e<<3)|0;v[a+4>>2]=s;q=v[a>>2];b=q;k=v[j+16>>2];a=k<<2;j:{if(!a){h=0;a=0;break j}c=v[37696];h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,a,24422,12118,168)|0;k=v[j+16>>2];a=k<<2}v[b+4>>2]=k;v[b>>2]=h;H9(h,v[j+20>>2],a);c=v[37696];k=v[j+8>>2];a=Raa(k,0,28,0);h=a+4|0;a=(E=c+12|0,F=Aa?-1:a>>>0>h>>>0?-1:h,G=Ba[v[v[c>>2]+20>>2]](c)|0?44527:63804,H=12118,I=173,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,G|0,H|0,I|0)|0);v[a>>2]=k;a=a+4|0;v[b+8>>2]=a;c=b;b=v[j+8>>2];v[c+40>>2]=b;H9(a,v[j+12>>2],B(b,28));a=v[d+196>>2]+B(e,24)|0;b=v[j+12>>2];z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];jD(d+184|0,v[j+16>>2],q);v[g+20>>2]=0;v[g+12>>2]=v[d+204>>2];a=v[d+196>>2];v[g+8>>2]=4;v[g+16>>2]=a;MB(v[d+168>>2],g+8|0);jD(d+172|0,v[d+204>>2],v[d+168>>2]);v[g+16>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;a=v[g+20>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[j+16>>2]){A=f+(i<<3)|0;i=d+128|0;k=0;while(1){r=-1;r=y[d+188>>2]>k>>>0?v[v[d+184>>2]+(k<<2)>>2]:r;a=A+(k<<3)|0;b=v[a+4>>2];v[g+8>>2]=v[a>>2];v[g+12>>2]=b;b=0;k:{l:{h=v[i+20>>2];m:{if(!h){break m}n=v[i+12>>2];u=v[g+8>>2];b=u;a=0;f=b|a;a=a^-1;f=f+a|0;x=v[g+12>>2];b=x+(b^-1)|0;c=f;b=a>>>0>c>>>0?b+1|0:b;f=b;a=b>>>22|0;b=c^((b&4194303)<<10|c>>>22);c=a^f;a=b;b=c<<13|a>>>19;f=a<<13^-1;a=a+f|0;c=(b^-1)+c|0;c=a>>>0>>0?c+1|0:c;a=Raa(a^((c&255)<<24|a>>>8),c^c>>>8,9,0);b=Aa;c=b>>>15|0;a=a^((b&32767)<<17|a>>>15);c=b^c;b=a;a=c<<27|a>>>5;f=b<<27^-1;b=b+f|0;a=(a^-1)+c|0;a=b>>>0>>0?a+1|0:a;b=h-1&(b^((a&2147483647)<<1|b>>>31));c=v[(b<<2)+n>>2];if((c|0)==-1){break m}f=v[i+8>>2];n=v[i+4>>2];while(1){a=n+B(c,20)|0;if((u|0)==v[a>>2]&(x|0)==v[a+4>>2]){break l}c=v[f+(c<<2)>>2];if((c|0)!=-1){continue}break}}t[g+31|0]=0;if(v[i+36>>2]==v[i+16>>2]){a=h?h<<1:16;if(a>>>0>h>>>0){lD(i,a);h=v[i+20>>2]}c=v[g+8>>2];a=0;f=a^-1;b=(c|a)+f|0;a=v[g+12>>2]+(c^-1)|0;a=b>>>0>>0?a+1|0:a;f=a;c=a>>>22|0;a=b^((a&4194303)<<10|b>>>22);c=c^f;f=c;b=a;a=c<<13|a>>>19;n=b<<13^-1;c=b+n|0;b=(a^-1)+f|0;b=c>>>0>>0?b+1|0:b;a=Raa(c^((b&255)<<24|c>>>8),b^b>>>8,9,0);c=Aa;b=c>>>15|0;a=a^((c&32767)<<17|a>>>15);b=b^c;f=b;c=b<<27|a>>>5;n=a<<27^-1;b=n+a|0;a=(c^-1)+f|0;a=b>>>0>>0?a+1|0:a;b=h-1&(b^((a&2147483647)<<1|b>>>31))}a=v[i+28>>2];v[i+28>>2]=a+1;b=v[i+12>>2]+(b<<2)|0;v[v[i+8>>2]+(a<<2)>>2]=v[b>>2];v[b>>2]=a;v[i+36>>2]=v[i+36>>2]+1;v[i+32>>2]=v[i+32>>2]+1;a=v[i+4>>2]+B(a,20)|0;break k}t[g+31|0]=1}if(!w[g+31|0]){b=v[g+12>>2];c=v[g+8>>2];v[a+8>>2]=s;v[a>>2]=c;v[a+4>>2]=b;v[a+16>>2]=e;v[a+12>>2]=r}k=k+1|0;if(k>>>0>2]){continue}break}}a=v[j+24>>2];c=0;if(v[q+4>>2]){b=v[q>>2];while(1){e=b+(c<<2)|0;v[e>>2]=a+v[e>>2];c=c+1|0;if(c>>>0>2]){continue}break}}xa=g+32|0}xa=j+32|0}function xv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0);h=xa+-64|0;xa=h;F=z[d+20>>2];r=z[d+24>>2];f=v[f>>2];G=z[d+16>>2];n=z[d+8>>2];H=z[d>>2];I=z[d+4>>2];x=z[d+12>>2];N=z[c+20>>2];O=z[c+24>>2];j=z[c>>2];k=z[c+4>>2];A=z[c+8>>2];i=z[c+12>>2];o=z[c+16>>2];v[h+60>>2]=0;z[h+56>>2]=O;z[h+52>>2]=N;z[h+48>>2]=o;z[h+44>>2]=i;z[h+40>>2]=A;z[h+36>>2]=k;z[h+32>>2]=j;J=z[b+12>>2];S=v[b+40>>2];q=z[S+60>>2];m=z[S+52>>2];Q=z[b+8>>2];y=z[S+56>>2];$=z[e+8>>2];L=z[b+4>>2];v[h+28>>2]=0;l=C(j+j);p=C(i+i);s=C(C(A*l)-C(k*p));D=C(C(C(j*l)+C(i*p))+C(-1));l=C(C(l*k)+C(A*p));p=C(C(1)/C(K(C(C(s*s)+C(C(D*D)+C(l*l))))));z[h+24>>2]=p*C(-s);z[h+20>>2]=p*C(-l);z[h+16>>2]=p*C(-D);z[h>>2]=z[e>>2];s=C(C(C(I*A)-C(k*n))+C(C(H*i)-C(x*j)));D=C(s+s);p=C(C(C(n*j)-C(A*H))+C(C(I*i)-C(x*k)));M=C(p+p);T=C(C(1)-C(s*D));U=C(p*M);V=C(T-U);l=C(C(C(H*k)-C(j*I))+C(C(n*i)-C(x*A)));P=C(l+l);u=C(l*P);T=C(T-u);U=C(C(C(1)-U)-u);u=C($*C(.05000000074505806));m=C(L*m);y=C(Q*y);m=m<=y?m:y;q=C(J*q);q=C((m<=q?m:q)*C(.25));q=C((q>u?u:q)*C(.20000000298023224));m=C(l*M);y=C(-j);n=C(C(x*i)-C(C(C(H*y)-C(I*k))-C(A*n)));x=C(n*D);H=C(m-x);u=C(l*D);M=C(n*M);I=C(u+M);x=C(m+x);m=C(p*D);P=C(n*P);D=C(m-P);M=C(u-M);P=C(m+P);o=C(G-o);F=C(F-N);r=C(r-O);G=C(C(C(y*o)-C(F*k))-C(A*r));m=C(C(i*i)+C(-.5));N=C(C(C(i*C(C(k*o)-C(j*F)))+C(m*r))-C(A*G));N=C(N+N);O=C(C(C(m*F)+C(i*C(C(j*r)-C(A*o))))-C(k*G));O=C(O+O);i=C(C(C(m*o)+C(i*C(C(A*F)-C(k*r))))-C(j*G));A=C(i+i);c=w[f+64|0];if(c){F=C(q*q);a=c;while(1){e=v[f+76>>2];a=a-1|0;d=e+B(a,48)|0;j=z[d+24>>2];r=z[d+40>>2];i=z[d+8>>2];k=z[d>>2];o=z[d+4>>2];G=C(N+C(C(V*i)+C(C(M*k)+C(x*o))));m=C(A+C(C(I*i)+C(C(U*k)+C(D*o))));y=z[d+16>>2];u=z[d+32>>2];k=C(O+C(C(H*i)+C(C(P*k)+C(T*o))));o=z[d+20>>2];R=z[d+36>>2];i=C(C(r*C(G-j))+C(C(C(m-y)*u)+C(C(k-o)*R)));j=C(j-C(G-C(r*i)));r=C(j*j);j=C(y-C(m-C(u*i)));m=C(j*j);j=C(o-C(k-C(R*i)));a:{if(F>2];v[d>>2]=v[e>>2];v[d+4>>2]=E;E=v[e+44>>2];v[d+40>>2]=v[e+40>>2];v[d+44>>2]=E;E=v[e+36>>2];v[d+32>>2]=v[e+32>>2];v[d+36>>2]=E;E=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=E;E=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=E;E=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=E;break a}z[d+44>>2]=i}if(a){continue}break}a=w[f+64|0]}else{a=0}b:{c:{if((a|0)!=(c|0)){break c}i=C(A-z[f+16>>2]);i=i>C(0)?i:C(-i);j=C(O-z[f+20>>2]);j=j>C(0)?j:C(-j);j=i>=j?i:j;k=i;i=C(N-z[f+24>>2]);i=(i>C(0)?i:C(-i))>=C(0)?k:C(0);if(q<(i<=j?j:i)){break c}if(!(C(C(n*z[f+12>>2])+C(C(l*z[f+8>>2])+C(C(s*z[f>>2])+C(p*z[f+4>>2]))))>2];k=z[b+16>>2];q=z[b+28>>2];j=z[b+20>>2];c=0;v[f+28>>2]=0;z[f+24>>2]=N;z[f+20>>2]=O;z[f+16>>2]=A;z[f+12>>2]=n;z[f+8>>2]=l;z[f+4>>2]=p;z[f>>2]=s;t[f+64|0]=0;d=w[S+38|0];if(d){n=k;k=C(k+k);X=C(C(1)-C(n*k));o=C(j+j);y=C(j*o);l=C(X-y);p=C(J*l);R=C(o*i);W=C(k*q);n=C(R-W);s=C(Q*n);r=C(k*i);m=C(o*q);o=C(r+m);G=C(L*o);F=C(C(p*l)+C(C(G*o)+C(n*s)));r=C(r-m);m=C(J*r);u=C(i+i);Y=C(i*u);i=C(C(C(1)-y)-Y);y=C(L*i);Z=C(k*j);_=C(u*q);j=C(Z+_);u=C(Q*j);q=C(C(m*l)+C(C(y*o)+C(n*u)));k=C(R+W);R=C(J*k);aa=C(R*l);l=C(Z-_);W=C(L*l);L=C(W*o);J=n;n=C(X-Y);o=C(Q*n);J=C(aa+C(L+C(J*o)));X=C(C(V*F)+C(C(M*q)+C(x*J)));Y=C(C(H*F)+C(C(P*q)+C(T*J)));Z=C(C(I*F)+C(C(U*q)+C(D*J)));Q=C(C(p*k)+C(C(G*l)+C(n*s)));L=C(C(m*k)+C(C(y*l)+C(n*u)));n=C(C(R*k)+C(C(W*l)+C(n*o)));_=C(C(V*Q)+C(C(M*L)+C(x*n)));aa=C(C(H*Q)+C(C(P*L)+C(T*n)));ba=C(C(I*Q)+C(C(U*L)+C(D*n)));p=C(C(p*r)+C(C(G*i)+C(j*s)));s=C(C(m*r)+C(C(y*i)+C(j*u)));k=x;x=C(C(R*r)+C(C(W*i)+C(j*o)));V=C(C(V*p)+C(C(M*s)+C(k*x)));H=C(C(H*p)+C(C(P*s)+C(T*x)));I=C(C(I*p)+C(C(U*s)+C(D*x)));e=v[S+40>>2]+B(w[S+39|0],20)|0;D=z[h>>2];a=0;while(1){b=e+B(a,12)|0;i=z[b+8>>2];j=z[b>>2];k=z[b+4>>2];l=C(A+C(C(Z*i)+C(C(I*j)+C(ba*k))));d:{if(!(l>2]=l-l;v[b+12>>2]=0;z[b+44>>2]=l;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;z[b+8>>2]=C(F*i)+C(C(p*j)+C(Q*k));z[b+4>>2]=C(J*i)+C(C(x*j)+C(n*k));z[b>>2]=C(q*i)+C(C(s*j)+C(L*k));l=C(l*C(0));z[b+24>>2]=C(N+C(C(X*i)+C(C(V*j)+C(_*k))))-l;z[b+20>>2]=C(O+C(C(Y*i)+C(C(H*j)+C(aa*k))))-l;c=c+1|0;if(c>>>0<64){break d}t2(f,g,c,$);b=v[f+76>>2];c=v[b+4>>2];v[g>>2]=v[b>>2];v[g+4>>2]=c;c=v[b+44>>2];v[g+40>>2]=v[b+40>>2];v[g+44>>2]=c;c=v[b+36>>2];v[g+32>>2]=v[b+32>>2];v[g+36>>2]=c;c=v[b+28>>2];v[g+24>>2]=v[b+24>>2];v[g+28>>2]=c;c=v[b+20>>2];v[g+16>>2]=v[b+16>>2];v[g+20>>2]=c;c=v[b+12>>2];v[g+8>>2]=v[b+8>>2];v[g+12>>2]=c;b=v[f+76>>2];c=v[b+52>>2];v[g+48>>2]=v[b+48>>2];v[g+52>>2]=c;c=v[b+92>>2];v[g+88>>2]=v[b+88>>2];v[g+92>>2]=c;c=v[b+84>>2];v[g+80>>2]=v[b+80>>2];v[g+84>>2]=c;c=v[b+76>>2];v[g+72>>2]=v[b+72>>2];v[g+76>>2]=c;c=b- -64|0;S=v[c+4>>2];v[g+64>>2]=v[c>>2];v[g+68>>2]=S;c=v[b+60>>2];v[g+56>>2]=v[b+56>>2];v[g+60>>2]=c;b=v[f+76>>2];c=v[b+100>>2];v[g+96>>2]=v[b+96>>2];v[g+100>>2]=c;c=v[b+140>>2];v[g+136>>2]=v[b+136>>2];v[g+140>>2]=c;c=v[b+124>>2];v[g+120>>2]=v[b+120>>2];v[g+124>>2]=c;c=v[b+116>>2];v[g+112>>2]=v[b+112>>2];v[g+116>>2]=c;c=v[b+132>>2];v[g+128>>2]=v[b+128>>2];v[g+132>>2]=c;c=v[b+108>>2];v[g+104>>2]=v[b+104>>2];v[g+108>>2]=c;b=v[f+76>>2];c=v[b+148>>2];v[g+144>>2]=v[b+144>>2];v[g+148>>2]=c;c=v[b+164>>2];v[g+160>>2]=v[b+160>>2];v[g+164>>2]=c;c=v[b+180>>2];v[g+176>>2]=v[b+176>>2];v[g+180>>2]=c;c=v[b+188>>2];v[g+184>>2]=v[b+184>>2];v[g+188>>2]=c;c=v[b+172>>2];v[g+168>>2]=v[b+168>>2];v[g+172>>2]=c;c=v[b+156>>2];v[g+152>>2]=v[b+152>>2];v[g+156>>2]=c;c=4}a=a+1|0;if((d|0)!=(a|0)){continue}break}}s2(f,g,c,$)}q2(f,g,h+16|0,h+32|0,h);xa=h- -64|0;return w[f+64|0]!=0|0}function x0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0),u=C(0),y=C(0),A=0,E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=0,L=0,M=0,N=0;e=xa-736|0;xa=e;r=0;a:{if(z[a+4>>2]!=C(1)){break a}r=0;if(z[a+8>>2]!=C(1)){break a}r=z[a+12>>2]==C(1)}I=z[c+4>>2]!=C(1)|z[c+8>>2]!=C(1)?I:z[c+12>>2]==C(1);A=a+4|0;K=v[c+36>>2];q=v[a+32>>2];v[e+720>>2]=0;v[e+724>>2]=1065353216;v[e+712>>2]=0;v[e+716>>2]=0;v[e+704>>2]=0;v[e+708>>2]=1065353216;v[e+696>>2]=0;v[e+700>>2]=0;v[e+688>>2]=1065353216;v[e+692>>2]=1065353216;v[e+672>>2]=1065353216;v[e+676>>2]=0;t[e+728|0]=0;v[e+680>>2]=0;v[e+684>>2]=0;v[e+664>>2]=0;v[e+668>>2]=0;v[e+656>>2]=1065353216;v[e+660>>2]=0;if(!r){IX(e+656|0,A,a+16|0)}v[e+640>>2]=0;v[e+644>>2]=1065353216;v[e+632>>2]=0;v[e+636>>2]=0;v[e+624>>2]=0;v[e+628>>2]=1065353216;v[e+616>>2]=0;v[e+620>>2]=0;v[e+608>>2]=1065353216;v[e+612>>2]=1065353216;v[e+592>>2]=1065353216;v[e+596>>2]=0;t[e+648|0]=0;v[e+600>>2]=0;v[e+604>>2]=0;v[e+584>>2]=0;v[e+588>>2]=0;v[e+576>>2]=1065353216;v[e+580>>2]=0;if(!I){IX(e+576|0,c+4|0,c+16|0)}l=z[b+4>>2];k=C(l+l);i=z[b+8>>2];h=C(k*i);g=z[b>>2];n=C(g+g);m=z[b+12>>2];f=C(n*m);z[e+556>>2]=h-f;z[e+548>>2]=h+f;f=C(C(1)-C(g*n));o=C(l*k);z[e+560>>2]=f-o;g=f;f=C(i+i);j=C(i*f);z[e+544>>2]=g-j;i=C(n*i);g=C(k*m);z[e+552>>2]=i+g;h=C(n*l);f=C(f*m);z[e+540>>2]=h-f;z[e+536>>2]=i-g;z[e+532>>2]=h+f;z[e+528>>2]=C(C(1)-o)-j;z[e+564>>2]=z[b+16>>2];z[e+568>>2]=z[b+20>>2];z[e+572>>2]=z[b+24>>2];l=z[d+4>>2];k=C(l+l);i=z[d+8>>2];h=C(k*i);g=z[d>>2];n=C(g+g);m=z[d+12>>2];f=C(n*m);z[e+508>>2]=h-f;z[e+500>>2]=h+f;f=C(C(1)-C(g*n));o=C(l*k);z[e+512>>2]=f-o;g=f;f=C(i+i);j=C(i*f);z[e+496>>2]=g-j;i=C(n*i);g=C(k*m);z[e+504>>2]=i+g;h=C(n*l);f=C(f*m);z[e+492>>2]=h-f;z[e+488>>2]=i-g;z[e+484>>2]=h+f;z[e+480>>2]=C(C(1)-o)-j;z[e+516>>2]=z[d+16>>2];z[e+520>>2]=z[d+20>>2];z[e+524>>2]=z[d+24>>2];i=z[q+16>>2];g=z[e+664>>2];E=z[q+20>>2];h=z[e+676>>2];s=z[q+24>>2];f=z[e+688>>2];k=C(C(C(i*g)+C(E*h))+C(s*f));u=z[q+28>>2];l=z[q+32>>2];n=z[q+36>>2];m=C(C(C(D(C(g*u)))+C(D(C(h*l))))+C(D(C(f*n))));z[e+476>>2]=k+m;g=z[e+660>>2];h=z[e+672>>2];f=z[e+684>>2];o=C(C(C(i*g)+C(E*h))+C(s*f));j=C(C(C(D(C(g*u)))+C(D(C(h*l))))+C(D(C(f*n))));z[e+472>>2]=o+j;h=i;i=z[e+656>>2];g=z[e+668>>2];f=z[e+680>>2];h=C(C(C(h*i)+C(E*g))+C(s*f));f=C(C(C(D(C(i*u)))+C(D(C(g*l))))+C(D(C(f*n))));z[e+468>>2]=h+f;z[e+464>>2]=k-m;z[e+460>>2]=o-j;z[e+456>>2]=h-f;p=e+392|0;a=e+576|0;p_(p,e+456|0,C(0),e+528|0,e+480|0,a,I);c=a;a=xa-192|0;xa=a;v[e+4>>2]=2;v[e+96>>2]=0;v[e+100>>2]=0;v[e+16>>2]=1065353216;r=e- -64|0;v[r>>2]=0;v[r+4>>2]=0;v[e>>2]=143748;v[e+72>>2]=0;v[e+76>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+32>>2]=0;v[e+40>>2]=0;v[e+44>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+56>>2]=1065353216;v[e+60>>2]=0;v[e+36>>2]=1065353216;v[e+104>>2]=0;v[e+108>>2]=0;v[e+112>>2]=0;v[e+116>>2]=0;v[e+120>>2]=0;v[e+124>>2]=0;t[e+128|0]=0;v[e+312>>2]=0;v[e+316>>2]=0;v[e+304>>2]=0;v[e+308>>2]=0;v[e+268>>2]=0;v[e+272>>2]=0;v[e+260>>2]=0;v[e+264>>2]=0;v[e+288>>2]=0;v[e+292>>2]=0;v[e+280>>2]=0;v[e+284>>2]=0;t[e+368|0]=0;v[e+296>>2]=1065353216;v[e+300>>2]=0;v[e+276>>2]=1065353216;v[e+256>>2]=1065353216;t[e+369|0]=I;if(!I){g=z[c+32>>2];h=z[c+20>>2];f=z[c+8>>2];L=v[c>>2];M=v[c+4>>2];N=v[c+12>>2];J=v[c+16>>2];r=v[c+28>>2];c=v[c+24>>2];v[e+332>>2]=0;z[e+344>>2]=h;v[e+348>>2]=0;v[e+364>>2]=0;z[e+360>>2]=g;v[e+352>>2]=c;v[e+356>>2]=r;v[e+336>>2]=N;v[e+340>>2]=J;v[e+320>>2]=L;v[e+324>>2]=M;z[e+328>>2]=f}j=z[A>>2];i=z[A+4>>2];g=z[A+8>>2];v[a+188>>2]=0;z[a+184>>2]=g;z[a+180>>2]=i;z[a+176>>2]=j;J=v[A+12>>2];r=v[A+16>>2];c=v[A+24>>2];v[a+168>>2]=v[A+20>>2];v[a+172>>2]=c;v[a+160>>2]=J;v[a+164>>2]=r;t[a+32|0]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=0;v[a+4>>2]=0;v[a+144>>2]=q+16;v[a+152>>2]=v[q+56>>2]+B(w[q+55|0],20);t[a+156|0]=w[q+54|0];h=C(j*z[q+68>>2]);f=C(i*z[q+72>>2]);h=f>=h?h:f;f=C(g*z[q+76>>2]);f=f>=h?h:f;z[a+24>>2]=f*C(.02500000037252903);z[a+16>>2]=f*C(.10000000149011612);z[a+20>>2]=f*C(.05000000074505806);FV(a+176|0,a+160|0,a+48|0,a+96|0,a,j==C(1)&i==C(1)&g==C(1));v[a+148>>2]=v[q+60>>2];H9(e+96|0,a,157);o=z[b+20>>2];j=z[d+20>>2];i=z[b+24>>2];g=z[d+24>>2];E=z[d+8>>2];s=z[d+4>>2];u=z[d+12>>2];k=z[d>>2];y=z[b+12>>2];F=z[b>>2];h=z[b+16>>2];f=z[d+16>>2];G=z[b+4>>2];H=z[b+8>>2];t[e+369|0]=I;v[e+316>>2]=0;v[e+300>>2]=0;v[e+284>>2]=0;v[e+268>>2]=0;f=C(f-h);m=C(f+f);f=C(j-o);j=C(f+f);f=C(g-i);g=C(f+f);h=C(C(C(C(-F)*m)-C(j*G))-C(H*g));f=C(C(y*y)+C(-.5));z[e+312>>2]=C(C(g*f)+C(y*C(C(G*m)-C(F*j))))-C(H*h);z[e+308>>2]=C(C(j*f)+C(y*C(C(F*g)-C(H*m))))-C(G*h);z[e+304>>2]=C(C(m*f)+C(y*C(C(H*j)-C(G*g))))-C(F*h);l=C(C(k*G)+C(C(C(y*E)-C(u*H))-C(F*s)));n=C(C(E*F)+C(C(C(y*s)-C(u*G))-C(H*k)));m=C(n+n);h=C(l*m);g=C(C(H*E)+C(C(G*s)+C(C(y*u)+C(F*k))));o=C(C(s*H)+C(C(C(y*k)-C(u*F))-C(G*E)));k=C(o+o);f=C(g*k);z[e+292>>2]=h-f;j=C(l*k);i=C(g*m);z[e+288>>2]=j+i;z[e+280>>2]=f+h;h=C(k*n);f=g;g=C(l+l);f=C(f*g);z[e+272>>2]=h-f;z[e+264>>2]=j-i;z[e+260>>2]=h+f;f=C(C(1)-C(o*k));h=C(n*m);z[e+296>>2]=f-h;i=f;f=C(l*g);z[e+276>>2]=i-f;z[e+256>>2]=C(C(1)-h)-f;s=z[p+40>>2];u=z[p+44>>2];l=z[p+16>>2];n=z[p+28>>2];k=z[p+20>>2];m=z[p+32>>2];f=z[p+36>>2];o=z[p>>2];j=z[p+12>>2];i=z[p+24>>2];g=z[p+4>>2];h=z[p+8>>2];v[e+76>>2]=0;v[e+60>>2]=0;z[e+56>>2]=m;z[e+52>>2]=k;z[e+48>>2]=h;v[e+44>>2]=0;z[e+40>>2]=n;z[e+36>>2]=l;z[e+32>>2]=g;v[e+28>>2]=0;z[e+24>>2]=i;z[e+20>>2]=j;z[e+16>>2]=o;f=C(-f);z[e+72>>2]=C(C(i*f)-C(n*s))-C(m*u);z[e+68>>2]=C(C(j*f)-C(l*s))-C(k*u);z[e+64>>2]=C(C(o*f)-C(g*s))-C(h*u);g=z[p+52>>2];h=z[p+56>>2];f=z[p+48>>2];v[e+92>>2]=0;z[e+88>>2]=h+C(.0010000000474974513);z[e+84>>2]=g+C(.0010000000474974513);z[e+80>>2]=f+C(.0010000000474974513);xa=a+192|0;Ba[v[(x[K+4>>1]<<2)+143760>>2]](K,p,e,1,0);xa=e+736|0;return w[e+368|0]}function Az(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,u=0,x=0;n=32;c=xa-48|0;xa=c;t[c+12|0]=0;j=c-128|0;xa=j;v[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=y[v[((b<<5)+a|0)+24>>2]+40>>2]>y[v[((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=v[d+28>>2];v[c+40>>2]=v[d+24>>2];v[c+44>>2]=b;b=v[d+20>>2];v[c+32>>2]=v[d+16>>2];v[c+36>>2]=b;b=v[d+12>>2];v[c+24>>2]=v[d+8>>2];v[c+28>>2]=b;b=v[d+4>>2];v[c+16>>2]=v[d>>2];v[c+20>>2]=b;e=(e<<5)+a|0;b=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=b;b=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=b;b=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=b;b=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b}if((k|0)!=(l|0)){continue}break b}}d=(l<<5)+a|0;b=v[v[d+24>>2]+40>>2];f=((k+l|0)/2<<5)+a|0;if(b>>>0>2]+40>>2]){b=v[d+28>>2];v[c+40>>2]=v[d+24>>2];v[c+44>>2]=b;b=v[d+20>>2];v[c+32>>2]=v[d+16>>2];v[c+36>>2]=b;b=v[d+12>>2];v[c+24>>2]=v[d+8>>2];v[c+28>>2]=b;b=v[d+4>>2];v[c+16>>2]=v[d>>2];v[c+20>>2]=b;b=v[f+28>>2];v[d+24>>2]=v[f+24>>2];v[d+28>>2]=b;b=v[f+20>>2];v[d+16>>2]=v[f+16>>2];v[d+20>>2]=b;b=v[f+12>>2];v[d+8>>2]=v[f+8>>2];v[d+12>>2]=b;b=v[f+4>>2];v[d>>2]=v[f>>2];v[d+4>>2]=b;b=v[c+44>>2];v[f+24>>2]=v[c+40>>2];v[f+28>>2]=b;b=v[c+36>>2];v[f+16>>2]=v[c+32>>2];v[f+20>>2]=b;b=v[c+28>>2];v[f+8>>2]=v[c+24>>2];v[f+12>>2]=b;b=v[c+20>>2];v[f>>2]=v[c+16>>2];v[f+4>>2]=b;h=v[v[d+24>>2]+40>>2]}else{h=b}e=(k<<5)+a|0;b=v[v[e+24>>2]+40>>2];if(h>>>0>>0){b=v[d+28>>2];v[c+40>>2]=v[d+24>>2];v[c+44>>2]=b;b=v[d+20>>2];v[c+32>>2]=v[d+16>>2];v[c+36>>2]=b;b=v[d+12>>2];v[c+24>>2]=v[d+8>>2];v[c+28>>2]=b;b=v[d+4>>2];v[c+16>>2]=v[d>>2];v[c+20>>2]=b;b=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=b;b=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=b;b=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=b;b=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b;b=v[v[e+24>>2]+40>>2]}if(y[v[f+24>>2]+40>>2]>>0){b=v[f+28>>2];v[c+40>>2]=v[f+24>>2];v[c+44>>2]=b;b=v[f+20>>2];v[c+32>>2]=v[f+16>>2];v[c+36>>2]=b;b=v[f+12>>2];v[c+24>>2]=v[f+8>>2];v[c+28>>2]=b;b=v[f+4>>2];v[c+16>>2]=v[f>>2];v[c+20>>2]=b;b=v[e+28>>2];v[f+24>>2]=v[e+24>>2];v[f+28>>2]=b;b=v[e+20>>2];v[f+16>>2]=v[e+16>>2];v[f+20>>2]=b;b=v[e+12>>2];v[f+8>>2]=v[e+8>>2];v[f+12>>2]=b;b=v[e+4>>2];v[f>>2]=v[e>>2];v[f+4>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b}b=v[f+28>>2];v[c+40>>2]=v[f+24>>2];v[c+44>>2]=b;b=v[f+20>>2];v[c+32>>2]=v[f+16>>2];v[c+36>>2]=b;b=v[f+12>>2];v[c+24>>2]=v[f+8>>2];v[c+28>>2]=b;b=v[f+4>>2];v[c+16>>2]=v[f>>2];v[c+20>>2]=b;h=k-1|0;i=(h<<5)+a|0;e=i;b=v[e+4>>2];v[f>>2]=v[e>>2];v[f+4>>2]=b;b=v[e+28>>2];v[f+24>>2]=v[e+24>>2];v[f+28>>2]=b;b=v[e+20>>2];v[f+16>>2]=v[e+16>>2];v[f+20>>2]=b;b=v[e+12>>2];v[f+8>>2]=v[e+8>>2];v[f+12>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b;b=l;while(1){f=v[v[i+24>>2]+40>>2];while(1){e=b;b=b+1|0;g=(b<<5)+a|0;if(y[v[g+24>>2]+40>>2]>f>>>0){continue}break}while(1){h=h-1|0;d=(h<<5)+a|0;if(y[v[d+24>>2]+40>>2]>>0){continue}break}if((b|0)<(h|0)){e=v[g+28>>2];v[c+40>>2]=v[g+24>>2];v[c+44>>2]=e;e=v[g+20>>2];v[c+32>>2]=v[g+16>>2];v[c+36>>2]=e;e=v[g+12>>2];v[c+24>>2]=v[g+8>>2];v[c+28>>2]=e;e=v[g+4>>2];v[c+16>>2]=v[g>>2];v[c+20>>2]=e;e=v[d+28>>2];v[g+24>>2]=v[d+24>>2];v[g+28>>2]=e;e=v[d+20>>2];v[g+16>>2]=v[d+16>>2];v[g+20>>2]=e;e=v[d+12>>2];v[g+8>>2]=v[d+8>>2];v[g+12>>2]=e;e=v[d+4>>2];v[g>>2]=v[d>>2];v[g+4>>2]=e;e=v[c+44>>2];v[d+24>>2]=v[c+40>>2];v[d+28>>2]=e;e=v[c+36>>2];v[d+16>>2]=v[c+32>>2];v[d+20>>2]=e;e=v[c+28>>2];v[d+8>>2]=v[c+24>>2];v[d+12>>2]=e;e=v[c+20>>2];v[d>>2]=v[c+16>>2];v[d+4>>2]=e;continue}break}d=v[g+28>>2];v[c+40>>2]=v[g+24>>2];v[c+44>>2]=d;d=v[g+20>>2];v[c+32>>2]=v[g+16>>2];v[c+36>>2]=d;d=v[g+12>>2];v[c+24>>2]=v[g+8>>2];v[c+28>>2]=d;d=v[g+4>>2];v[c+16>>2]=v[g>>2];v[c+20>>2]=d;d=v[i+28>>2];v[g+24>>2]=v[i+24>>2];v[g+28>>2]=d;d=v[i+20>>2];v[g+16>>2]=v[i+16>>2];v[g+20>>2]=d;d=v[i+12>>2];v[g+8>>2]=v[i+8>>2];v[g+12>>2]=d;d=v[i+4>>2];v[g>>2]=v[i>>2];v[g+4>>2]=d;d=v[c+44>>2];v[i+24>>2]=v[c+40>>2];v[i+28>>2]=d;d=v[c+36>>2];v[i+16>>2]=v[c+32>>2];v[i+20>>2]=d;d=v[c+28>>2];v[i+8>>2]=v[c+24>>2];v[i+12>>2]=d;d=v[c+20>>2];v[i>>2]=v[c+16>>2];v[i+4>>2]=d;c:{if((b-l|0)<(k-b|0)){if(n-1>>>0<=m>>>0){d=n<<3;if(d){h=v[37696];b=h+12|0;b=(q=b,r=d,s=Ba[v[v[h>>2]+20>>2]](h)|0?45645:63804,u=17218,x=155,p=v[v[b>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}else{b=0}n=n<<1;d=H9(b,j,m<<2);b=o;o=1;if(!(!b|!j)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,j)}j=d}b=(m<<2)+j|0;v[b>>2]=l;v[b+4>>2]=e;l=e+2|0;break c}if(n-1>>>0<=m>>>0){d=n<<3;if(d){h=v[37696];b=h+12|0;b=(x=b,u=d,s=Ba[v[v[h>>2]+20>>2]](h)|0?45645:63804,r=17218,q=155,p=v[v[b>>2]+8>>2],Ba[p](x|0,u|0,s|0,r|0,q|0)|0)}else{b=0}n=n<<1;d=H9(b,j,m<<2);b=o;o=1;if(!(!b|!j)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,j)}j=d}b=(m<<2)+j|0;v[b>>2]=e+2;v[b+4>>2]=k;k=e}m=m+2|0;if((k|0)>(l|0)){continue}break}}if(m){b=m-2|0;l=v[(b<<2)+j>>2];k=v[((m<<2)+j|0)-4>>2];m=b;continue}break}if(!o|!j){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,j)}if(w[c+12|0]){u9(v[c+8>>2])}xa=c+48|0}function l4(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=C(0),j=0,k=C(0),l=0,m=C(0),n=C(0),o=0,p=0,q=0,r=C(0),s=C(0),t=0,u=C(0),w=0,x=C(0),A=C(0),E=0,F=0,G=0,H=0,I=0,J=0;E=xa-16|0;xa=E;v[g>>2]=0;v[a+44>>2]=0;v[a+32>>2]=0;a:{if(!b){break a}h=xa-16|0;xa=h;v[a+44>>2]=0;v[a+32>>2]=0;m=C(-85070586659632215e21);u=C(85070586659632215e21);p=b;b:{if(!b){n=C(85070586659632215e21);k=C(85070586659632215e21);A=C(-85070586659632215e21);x=C(-85070586659632215e21);break b}b=c;x=C(-85070586659632215e21);A=C(-85070586659632215e21);k=C(85070586659632215e21);n=C(85070586659632215e21);while(1){s=z[b+8>>2];m=m>s?m:s;r=z[b+4>>2];x=r>2];A=in?n:i;b=b+d|0;o=o+1|0;if((p|0)!=(o|0)){continue}break}}z[a+24>>2]=C(u+m)*C(.5);z[a+20>>2]=C(k+x)*C(.5);z[a+16>>2]=C(n+A)*C(.5);s=C(C(m-u)*C(1.0010000467300415));m=C(s*C(.5));z[a+12>>2]=m;r=C(C(x-k)*C(1.0010000467300415));k=C(r*C(.5));z[a+8>>2]=k;i=C(C(A-n)*C(1.0010000467300415));n=C(i*C(.5));z[a+4>>2]=n;if(i==C(0)){v[a+4>>2]=1065353216;n=C(1)}if(r==C(0)){v[a+8>>2]=1065353216;k=C(1)}if(s==C(0)){v[a+12>>2]=1065353216;m=C(1)}if(p){l=a+28|0;x=C(C(1)/m);u=C(C(1)/k);s=C(C(1)/n);b=0;while(1){r=z[a+16>>2];n=z[c>>2];m=z[a+20>>2];i=z[c+4>>2];k=C(x*C(z[c+8>>2]-z[a+24>>2]));z[h+8>>2]=k;m=C(u*C(i-m));z[h+4>>2]=m;i=C(s*C(n-r));z[h>>2]=i;o=v[a+32>>2];c:{if(o>>>0>=(v[a+36>>2]&2147483647)>>>0){I3(l,h);break c}j=v[a+28>>2]+B(o,12)|0;z[j+8>>2]=k;z[j+4>>2]=m;z[j>>2]=i;v[a+32>>2]=o+1}c=c+d|0;b=b+1|0;if((p|0)!=(b|0)){continue}break}}xa=h+16|0;c=0;d=0;l=B(p,12);if(l){b=v[37696];d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,l,24422,7858,229)|0}l=p<<2;if(l){b=v[37696];c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,l,24422,7858,230)|0}w=v[a+28>>2];o=0;l=f<<2;if(l){b=v[37696];l=Ba[v[v[b+12>>2]+8>>2]](b+12|0,l,24422,7858,61)|0}else{l=0}d:{e:{f:{g:{if(f>>>0>=p>>>0){if(!p){break f}h=0;if(!c){while(1){b=B(h,12);f=b+d|0;b=b+w|0;z[f>>2]=z[b>>2];z[f+4>>2]=z[b+4>>2];z[f+8>>2]=z[b+8>>2];v[(h<<2)+l>>2]=1;h=h+1|0;if((p|0)!=(h|0)){continue}break}f=p;break g}while(1){f=h<<2;v[f+c>>2]=h;b=B(h,12);j=b+d|0;b=b+w|0;z[j>>2]=z[b>>2];z[j+4>>2]=z[b+4>>2];z[j+8>>2]=z[b+8>>2];v[f+l>>2]=1;h=h+1|0;if((p|0)!=(h|0)){continue}break}f=p;break g}h=0;j=B(f,12);if(j){b=v[37696];t=Ba[v[v[b+12>>2]+8>>2]](b+12|0,j,24422,7858,78)|0}if(f){while(1){j=B(h,12)+d|0;b=w+B((B(h,p)>>>0)/(f>>>0)|0,12)|0;z[j>>2]=z[b>>2];z[j+4>>2]=z[b+4>>2];z[j+8>>2]=z[b+8>>2];h=h+1|0;if((h|0)!=(f|0)){continue}break}}G=p>>>0>1?p:1;H=f&-2;I=f&1;o=64;m=C(34028234663852886e22);while(1){h:{if(!f){break h}h=0;q=0;if((f|0)!=1){while(1){v[(h<<2)+l>>2]=0;b=B(h,12)+t|0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;b=h|1;v[(b<<2)+l>>2]=0;b=B(b,12)+t|0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;h=h+2|0;q=q+2|0;if((H|0)!=(q|0)){continue}break}}if(!I){break h}v[(h<<2)+l>>2]=0;b=B(h,12)+t|0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0}j=0;n=C(0);while(1){b=w+B(j,12)|0;u=z[b+8>>2];s=z[b+4>>2];r=z[b>>2];i:{if(!f){k=C(34028234663852886e22);break i}b=(j<<2)+c|0;k=C(34028234663852886e22);h=0;while(1){F=B(h,12)+d|0;i=C(u-z[F+8>>2]);x=C(i*i);i=C(r-z[F>>2]);A=C(i*i);i=C(s-z[F+4>>2]);i=C(x+C(A+C(i*i)));if(i>2]=h;k=i}h=h+1|0;if((h|0)!=(f|0)){continue}break}}b=v[(j<<2)+c>>2];h=B(b,12)+t|0;z[h>>2]=r+z[h>>2];z[h+4>>2]=s+z[h+4>>2];z[h+8>>2]=u+z[h+8>>2];b=(b<<2)+l|0;v[b>>2]=v[b>>2]+1;n=C(n+k);j=j+1|0;if((G|0)!=(j|0)){continue}break}q=0;if(f){while(1){b=v[(q<<2)+l>>2];if(b){i=C(C(1)/C(b>>>0));b=B(q,12);j=b+t|0;r=C(i*z[j>>2]);z[j>>2]=r;k=C(i*z[j+4>>2]);z[j+4>>2]=k;i=C(i*z[j+8>>2]);z[j+8>>2]=i;b=b+d|0;z[b+8>>2]=i;z[b+4>>2]=k;z[b>>2]=r}q=q+1|0;if((q|0)!=(f|0)){continue}break}}o=o-1|0;if(!(!o|nC(.009999999776482582)){continue}}break}if(!t){break g}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,t)}if(!f){o=0;break e}H=p&-4;F=p&3;q=0;I=p-1>>>0<3;o=0;while(1){j:{if(!v[(q<<2)+l>>2]){break j}t=!p;w=!c;k:{if(!o){b=0;h=0;break k}j=0;b=0;h=B(q,12)+d|0;n=z[h+8>>2];i=C(n-z[d+8>>2]);r=C(i*i);k=z[h>>2];i=C(k-z[d>>2]);s=C(i*i);m=z[h+4>>2];i=C(m-z[d+4>>2]);h=1;if(C(r+C(s+C(i*i)))>2]);r=C(i*i);i=C(k-z[b>>2]);s=C(i*i);i=C(m-z[b+4>>2]);if(!(C(r+C(s+C(i*i)))>>0>>0}J=h;n:{if(t|(w|!(h|(o|0)!=(q|0)))){break n}t=0;h=0;G=0;if(!I){while(1){w=h<<2;j=w+c|0;if(v[j>>2]==(q|0)){v[j>>2]=b}j=(w|4)+c|0;if(v[j>>2]==(q|0)){v[j>>2]=b}j=(w|8)+c|0;if(v[j>>2]==(q|0)){v[j>>2]=b}j=(w|12)+c|0;if(v[j>>2]==(q|0)){v[j>>2]=b}h=h+4|0;G=G+4|0;if((H|0)!=(G|0)){continue}break}}if(!F){break n}while(1){j=(h<<2)+c|0;if(v[j>>2]==(q|0)){v[j>>2]=b}h=h+1|0;t=t+1|0;if((F|0)!=(t|0)){continue}break}}if(J){break j}j=B(o,12)+d|0;b=B(q,12)+d|0;z[j>>2]=z[b>>2];z[j+4>>2]=z[b+4>>2];z[j+8>>2]=z[b+8>>2];o=o+1|0}q=q+1|0;if((q|0)!=(f|0)){continue}break}}if(!l){break d}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,l)}v[g>>2]=o;if(o){p=a+40|0;o:{if(!e){b=0;while(1){l=B(b,12)+d|0;f=v[a+44>>2];p:{if(f>>>0>=(v[a+48>>2]&2147483647)>>>0){I3(p,l);break p}e=v[a+40>>2]+B(f,12)|0;z[e>>2]=z[l>>2];z[e+4>>2]=z[l+4>>2];z[e+8>>2]=z[l+8>>2];v[a+44>>2]=f+1}b=b+1|0;if(b>>>0>2]){continue}break}break o}b=0;while(1){e=B(b,12)+d|0;u=z[e>>2];s=z[e+4>>2];r=z[a+16>>2];n=z[a+4>>2];m=z[a+20>>2];i=z[a+8>>2];k=C(C(z[e+8>>2]*z[a+12>>2])+z[a+24>>2]);z[E+8>>2]=k;m=C(m+C(s*i));z[E+4>>2]=m;i=C(r+C(u*n));z[E>>2]=i;f=v[a+44>>2];q:{if(f>>>0>=(v[a+48>>2]&2147483647)>>>0){I3(p,E);break q}e=v[a+40>>2]+B(f,12)|0;z[e+8>>2]=k;z[e+4>>2]=m;z[e>>2]=i;v[a+44>>2]=f+1}b=b+1|0;if(b>>>0>2]){continue}break}}h=v[p>>2]}else{h=0}if(d){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,d)}if(!c){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,c)}xa=E+16|0;return h|0}function bP(a){var b=0,c=0,d=0,e=0,f=C(0),g=0,h=0,i=0,j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=0,u=0,A=0,E=C(0),F=0,G=0,H=0,I=C(0),J=0,K=0,L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0);t[a+4620|0]=0;v[a+1092>>2]=v[a+1092>>2]+1;v[a+1196>>2]=v[v[a+2368>>2]+36>>2];b=v[a+976>>2];Ba[v[v[b+212>>2]+44>>2]](b+212|0);v[a+1244>>2]=0;a:{if(!w[a+2660|0]){break a}t[a+2660|0]=0;if(!(z[v[a+976>>2]+1056>>2]!=C(0)|z[v[a+976>>2]+1060>>2]!=C(0)|z[v[a+976>>2]+1064>>2]!=C(0))){if(z[v[a+976>>2]+1068>>2]==C(0)){break a}}v[a+2356>>2]=v[a+2356>>2]|4}g=xa-144|0;xa=g;if(z[a+2656>>2]!=C(0)){h=v[a+976>>2];b=g- -64|0;v[b>>2]=0;v[b+4>>2]=0;v[g+56>>2]=0;v[g+60>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+80>>2]=0;v[g+84>>2]=0;v[g+72>>2]=0;v[g+76>>2]=1065353216;v[g+88>>2]=0;v[g+92>>2]=0;v[g+100>>2]=0;v[g+104>>2]=0;v[g+96>>2]=1065353216;v[g+108>>2]=0;v[g+112>>2]=0;v[g+120>>2]=0;v[g+124>>2]=0;v[g+116>>2]=1065353216;v[g+128>>2]=0;v[g+132>>2]=0;v[g+136>>2]=1065353216;v[g+40>>2]=0;v[g+44>>2]=0;v[g+140>>2]=h+212;if(z[h+1088>>2]!=C(0)){e=v[a+980>>2];d=xa+-64|0;xa=d;v[d+56>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+40>>2]=0;v[d+44>>2]=1065353216;v[d+32>>2]=0;v[d+36>>2]=0;k=g+40|0;YU(k,d+32|0);h=v[e+380>>2];if(h){while(1){b=v[v[e+376>>2]+(i<<2)>>2];if(v[b+8>>2]){v[k+4>>2]=-16711936;b=v[v[e+276>>2]+4>>2]+B(v[b>>2],24)|0;z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];n=z[b+20>>2];t[d+24|0]=1;z[d+20>>2]=n;_U(k,d)}i=i+1|0;if((h|0)!=(i|0)){continue}break}}xa=d- -64|0}d=v[a+1132>>2];if(d){e=v[a+1100>>2];i=0;while(1){k=v[a+976>>2]+212|0;b=xa-160|0;xa=b;s=v[v[e+(i<<2)>>2]+60>>2];if(w[v[s+52>>2]]&16){p=v[s+28>>2];h=v[s+24>>2];v[b+152>>2]=0;v[b+144>>2]=0;v[b+148>>2]=0;v[b+136>>2]=0;v[b+140>>2]=1065353216;v[b+128>>2]=0;v[b+132>>2]=0;u=b+128|0;G=h?v[h+36>>2]:u;u=p?v[p+36>>2]:u;p=v[s+48>>2];l=z[p+2656>>2];h=v[p+976>>2];m=z[h+1112>>2];f=z[p+2656>>2];n=z[h+1116>>2];v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;h=b- -64|0;v[h>>2]=0;v[h+4>>2]=0;v[b+56>>2]=0;v[b+60>>2]=1065353216;v[b+72>>2]=0;v[b+76>>2]=0;v[b+84>>2]=0;v[b+88>>2]=0;v[b+80>>2]=1065353216;v[b+92>>2]=0;v[b+96>>2]=0;v[b+104>>2]=0;v[b+108>>2]=0;v[b+100>>2]=1065353216;v[b+112>>2]=0;v[b+116>>2]=0;v[b+120>>2]=1065353216;v[b+24>>2]=0;v[b+28>>2]=0;v[b+124>>2]=k;v[b+8>>2]=120416;f=C(f*n);z[b+16>>2]=f;n=C(l*m);z[b+12>>2]=n;v[b+20>>2]=b+24;h=n!=C(0);Ba[v[v[s+52>>2]+40>>2]](b+8|0,v[s+20>>2],G,u,f!=C(0)?h|2:h)}xa=b+160|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}b=v[v[a+976>>2]+1024>>2];Ba[v[v[b>>2]+84>>2]](g,b);j=g+40|0;a=v[v[a+2168>>2]>>2];b:{if(z[a+2656>>2]==C(0)){break b}H=v[a+88>>2];if(!H){break b}L=v[a+52>>2];while(1){a=0;k=0;h=0;c=xa-128|0;xa=c;A=v[L>>2]-4|0;if(v[A+56>>2]){E=y[v[A+28>>2]+4>>2]>2]+4>>2]?C(1):C(-1);G=v[v[A+4>>2]+40>>2];I=z[G+2656>>2];o=C(I*C(.10000000149011612));while(1){i=v[A+56>>2];c:{d:{if(i){e=v[i+68>>2];e:{if((e|0)<0){b=v[v[v[v[A+4>>2]+40>>2]+976>>2]+1024>>2];b=Ba[v[v[b>>2]+80>>2]](b,e)|0;break e}b=v[g+32>>2]+(v[((e&7)<<2)+g>>2]+(e>>>3|0)<<4)|0}d=v[i+32>>2];F=0;e=0;f:{if(!w[b+12|0]){break f}e=1;if(h){break f}F=v[b+8>>2];J=w[b+13|0];i=v[b+4>>2];e=v[b>>2];b=(d|0)!=0;break c}if(!d){break d}while(1){if((e|0)==(h|0)){i=d- -64|0;e=d+16|0;F=(x[d+4>>1]+15&131056)+d|0;J=1;b=(v[d>>2]!=0)+h|0;break c}e=e+1|0;d=v[d>>2];if(d){continue}break}}F=0}J=0;i=0;e=0;b=h}d=v[G+976>>2];n=z[d+1068>>2];M=z[d+1060>>2];N=z[d+1064>>2];Q=z[d+1056>>2];g:{if(!e){K=0;break g}a=w[e+43|0];K=a&128?32:a&2?64:16;k=e;a=i}if(J){s=0;u=(F|0)!=0&n!=C(0);O=C(I*n);n=C(I*M);P=C(I*N);i=0;e=0;while(1){if(i){p=a;a=w[k+41|0];a=p+(a>>>0>e>>>0?B(a-e|0,K):0)|0;k=k+48|0}i=i+1|0;h:{if(!w[k+41|0]){e=0;break h}a=(s?K:0)+a|0;i:{j:{if(!u){e=255;f=n;if(M!=C(0)){break j}if(N==C(0)){break i}e=16776960;f=C(D(C(P*z[a+12>>2])));break j}e=16711680;f=C(O*z[F>>2])}if(f==C(0)){break i}v[j+32>>2]=0;v[j>>2]=1;v[j+4>>2]=e;z[c+112>>2]=z[a>>2];z[c+116>>2]=z[a+4>>2];z[c+120>>2]=z[a+8>>2];e=ZU(j,c+112|0);q=z[a>>2];r=z[k+16>>2];l=z[a+4>>2];m=z[k+20>>2];z[c+104>>2]=C(E*C(f*z[k+24>>2]))+z[a+8>>2];z[c+100>>2]=l+C(E*C(f*m));z[c+96>>2]=q+C(E*C(f*r));ZU(e,c+96|0)}p=Q==C(0);if(!p){f=z[a>>2];q=z[a+4>>2];r=z[a+8>>2];v[j+32>>2]=0;v[j>>2]=1;v[j+4>>2]=-65536;l=C(r+C(0));z[c+88>>2]=l;m=C(q+C(0));z[c+84>>2]=m;z[c+80>>2]=f-o;e=ZU(j,c+80|0);z[c+72>>2]=l;z[c+68>>2]=m;z[c+64>>2]=o+f;ZU(e,c- -64|0);z[c+56>>2]=l;z[c+52>>2]=q-o;f=C(f+C(0));z[c+48>>2]=f;e=ZU(j,c+48|0);z[c+40>>2]=l;z[c+36>>2]=o+q;z[c+32>>2]=f;ZU(e,c+32|0);z[c+24>>2]=r-o;z[c+20>>2]=m;z[c+16>>2]=f;e=ZU(j,c+16|0);z[c+8>>2]=o+r;z[c+4>>2]=m;z[c>>2]=f;ZU(e,c)}s=1;if(w[k+41|0]<2){e=1;break h}e=1;while(1){a=a+K|0;k:{l:{if(u){d=16711680;f=C(O*z[F>>2]);break l}d=255;f=n;if(M!=C(0)){break l}if(N==C(0)){break k}d=16776960;f=C(D(C(P*z[a+12>>2])))}if(f==C(0)){break k}v[j+32>>2]=0;v[j>>2]=1;v[j+4>>2]=d;z[c+112>>2]=z[a>>2];z[c+116>>2]=z[a+4>>2];z[c+120>>2]=z[a+8>>2];d=ZU(j,c+112|0);q=z[a>>2];r=z[k+16>>2];l=z[a+4>>2];m=z[k+20>>2];z[c+104>>2]=C(E*C(f*z[k+24>>2]))+z[a+8>>2];z[c+100>>2]=l+C(E*C(f*m));z[c+96>>2]=q+C(E*C(f*r));ZU(d,c+96|0)}e=e+1|0;if(!p){f=z[a>>2];q=z[a+4>>2];r=z[a+8>>2];v[j+32>>2]=0;v[j>>2]=1;v[j+4>>2]=-65536;l=C(r+C(0));z[c+88>>2]=l;m=C(q+C(0));z[c+84>>2]=m;z[c+80>>2]=f-o;d=ZU(j,c+80|0);z[c+72>>2]=l;z[c+68>>2]=m;z[c+64>>2]=o+f;ZU(d,c- -64|0);z[c+56>>2]=l;z[c+52>>2]=q-o;f=C(f+C(0));z[c+48>>2]=f;d=ZU(j,c+48|0);z[c+40>>2]=l;z[c+36>>2]=o+q;z[c+32>>2]=f;ZU(d,c+32|0);z[c+24>>2]=r-o;z[c+20>>2]=m;z[c+16>>2]=f;d=ZU(j,c+16|0);z[c+8>>2]=o+r;z[c+4>>2]=m;z[c>>2]=f;ZU(d,c)}if(w[k+41|0]>e>>>0){continue}break}}if((i|0)!=(J|0)){continue}break}}i=(b|0)!=(h|0);h=b;if(i){continue}break}}xa=c+128|0;L=L+4|0;H=H-1|0;if(H){continue}break}}}xa=g+144|0}function W2(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,y=0,A=0,D=0,E=0,F=0,G=0;o=xa-240|0;xa=o;v[o+192>>2]=v[b+32>>2];e=v[b+28>>2];v[o+184>>2]=v[b+24>>2];v[o+188>>2]=e;e=v[b+20>>2];v[o+176>>2]=v[b+16>>2];v[o+180>>2]=e;e=v[b+12>>2];v[o+168>>2]=v[b+8>>2];v[o+172>>2]=e;e=v[b+4>>2];v[o+160>>2]=v[b>>2];v[o+164>>2]=e;f=x[b+36>>1];u[o+196>>1]=f;e=x[b+38>>1]|x[b+40>>1]<<16;u[o+198>>1]=e;u[o+200>>1]=e>>>16;b=0;if(f&2){if(f&128){b=e&65535;u[o+198>>1]=b>>>0<64?b:64}e=v[37696];b=Ba[v[v[e>>2]+20>>2]](e)|0?46147:63804;b=L4(Ba[v[v[e+12>>2]+8>>2]](e+12|0,48,b,10899,283)|0,o+160|0,a+4|0)}a:{b:{g=d4(o+8|0,w[a+18|0]);if(!V2(a,o+160|0,g,b,d)){break b}h=Ba[v[v[a>>2]+12>>2]](a)|0;q=xa-16|0;xa=q;a=0;c:{if(!oX(67,86,88,77,13,h,c)){break c}jX(0,h,c);i=xa-32|0;xa=i;m=pX(67,76,72,76,9,h,c);d:{if(!m){break d}f=v[g+28>>2];e=x[f+36>>1];a=w[g+32|0];jX(w[f+38|0],h,c);jX(e&32767|a<<15&32768,h,c);jX(w[v[g+28>>2]+39|0],h,c);f=w[v[g+28>>2]+39|0];e:{if(!f){break e}l=v[g+4>>2];a=0;if(f-1>>>0>=3){e=f&252;while(1){r=w[(l+B(a|3,20)|0)+18|0]+(w[(l+B(a|2,20)|0)+18|0]+(w[(l+B(a|1,20)|0)+18|0]+(w[(l+B(a,20)|0)+18|0]+r|0)|0)|0)|0;a=a+4|0;n=n+4|0;if((e|0)!=(n|0)){continue}break}}e=f&3;if(!e){break e}while(1){r=w[(l+B(a,20)|0)+18|0]+r|0;a=a+1|0;p=p+1|0;if((e|0)!=(p|0)){continue}break}}jX(r,h,c);mX(v[g>>2],B(w[v[g+28>>2]+38|0],3),h,c);j=v[g+28>>2];f:{if(!w[j+39|0]){break f}a=0;if(h){while(1){k=v[g+4>>2]+B(a,20)|0;e=k;p=v[e>>2];z[i+8>>2]=z[e>>2];l=v[e+4>>2];z[i+12>>2]=z[e+4>>2];f=v[e+8>>2];z[i+16>>2]=z[e+8>>2];e=v[e+12>>2];z[i+20>>2]=z[k+12>>2];k=v[k+16>>2];v[i+24>>2]=k;t[i+25|0]=k;t[i+24|0]=k>>>8;t[i+11|0]=p;t[i+8|0]=p>>>24;t[i+15|0]=l;t[i+12|0]=l>>>24;t[i+10|0]=p>>>8;t[i+9|0]=p>>>16;t[i+19|0]=f;t[i+16|0]=f>>>24;t[i+14|0]=l>>>8;t[i+13|0]=l>>>16;t[i+23|0]=e;t[i+20|0]=e>>>24;t[i+18|0]=f>>>8;t[i+17|0]=f>>>16;t[i+22|0]=e>>>8;t[i+21|0]=e>>>16;Ba[v[v[c>>2]>>2]](c,i+8|0,20)|0;a=a+1|0;j=v[g+28>>2];if(a>>>0>2]+B(a,20)|0;z[i+8>>2]=z[e>>2];z[i+12>>2]=z[e+4>>2];z[i+16>>2]=z[e+8>>2];z[i+20>>2]=z[e+12>>2];v[i+24>>2]=v[e+16>>2];Ba[v[v[c>>2]>>2]](c,i+8|0,20)|0;a=a+1|0;j=v[g+28>>2];if(a>>>0>2]>>2]](c,v[g+8>>2]+a|0,1)|0;Ba[v[v[c>>2]>>2]](c,v[g+8>>2]+(a|1)|0,1)|0;a=a+2|0;j=j+2|0;if((e|0)!=(j|0)){continue}break}}if(r&1){Ba[v[v[c>>2]>>2]](c,v[g+8>>2]+a|0,1)|0}j=v[g+28>>2]}Ba[v[v[c>>2]>>2]](c,v[g+12>>2],x[j+36>>1]<<1&65534)|0;Ba[v[v[c>>2]>>2]](c,v[g+16>>2],B(w[v[g+28>>2]+38|0],3))|0;if(!w[g+32|0]){break d}nX(v[g+24>>2],x[v[g+28>>2]+36>>1]<<1&65534,h,c)}xa=i+32|0;a=0;if(!m){break c}kX(C(0),h,c);kX(C(z[g+44>>2]-z[g+56>>2]),h,c);kX(C(z[g+48>>2]-z[g+60>>2]),h,c);a=g- -64|0;kX(C(z[g+52>>2]-z[a>>2]),h,c);kX(C(z[g+44>>2]+z[g+56>>2]),h,c);kX(C(z[g+48>>2]+z[g+60>>2]),h,c);kX(C(z[g+52>>2]+z[a>>2]),h,c);kX(z[g+112>>2],h,c);mX(g+116|0,9,h,c);mX(g+68|0,3,h,c);g:{if(v[g+108>>2]){kX(C(1),h,c);a=v[g>>2];v[q+4>>2]=v[g+108>>2];v[q+8>>2]=a;v[q>>2]=g+44;p=0;n=0;h:{if(!pX(83,85,80,77,0,h,c)){break h}if(!pX(71,65,85,83,0,h,c)){break h}jX(x[v[q+4>>2]>>1],h,c);jX(x[v[q+4>>2]+2>>1],h,c);a=v[q+4>>2];Ba[v[v[c>>2]>>2]](c,v[a+4>>2],x[a+2>>1]<<1)|0;if(pX(86,65,76,69,2,h,c)){jX(v[v[q+4>>2]+8>>2],h,c);jX(v[v[q+4>>2]+12>>2],h,c);e=v[q+4>>2];j=v[e+8>>2];a=j+j|0;f=a>>>0>>0?-1:a;i:{if(!f){a=0;break i}e=v[37696];a=e+12|0;a=(A=a,D=f,E=Ba[v[v[e>>2]+20>>2]](e)|0?27439:63804,F=9427,G=345,y=v[v[a>>2]+8>>2],Ba[y](A|0,D|0,E|0,F|0,G|0)|0);e=v[q+4>>2];j=v[e+8>>2]}j:{if(!j){break j}m=v[e+16>>2];e=0;if(j-1>>>0>=3){l=j&-4;while(1){u[(e<<1)+a>>1]=x[m+(e<<2)>>1];f=e|1;u[(f<<1)+a>>1]=x[m+(f<<2)>>1];f=e|2;u[(f<<1)+a>>1]=x[m+(f<<2)>>1];f=e|3;u[(f<<1)+a>>1]=x[m+(f<<2)>>1];e=e+4|0;p=p+4|0;if((l|0)!=(p|0)){continue}break}}f=j&3;if(!f){break j}while(1){u[(e<<1)+a>>1]=x[m+(e<<2)>>1];e=e+1|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}e=a;r=0;n=0;k:{if(!j){j=0;break k}s=j&3;l:{if(j-1>>>0<3){j=0;break l}i=j&-4;j=0;while(1){k=x[e+6>>1];m=x[e+4>>1];p=x[e+2>>1];l=x[e>>1];f=j&65535;f=f>>>0>>0?l:f;f=f>>>0

>>0?p:f;f=f>>>0>>0?m:f;j=f>>>0>>0?k:f;e=e+8|0;r=r+4|0;if((i|0)!=(r|0)){continue}break}}if(!s){break k}while(1){l=x[e>>1];f=j&65535;j=f>>>0>>0?l:f;e=e+2|0;n=n+1|0;if((s|0)!=(n|0)){continue}break}}e=j&65535;jX(e,h,c);m=v[v[q+4>>2]+8>>2];k=xa-16|0;xa=k;m:{if(e>>>0>=256){if(!m){break m}if(!h){e=0;if((m|0)!=1){l=m&-2;n=0;while(1){f=e<<1;u[k+14>>1]=x[f+a>>1];Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;u[k+14>>1]=x[(f|2)+a>>1];Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;e=e+2|0;n=n+2|0;if((l|0)!=(n|0)){continue}break}}if(!(m&1)){break m}u[k+14>>1]=x[(e<<1)+a>>1];Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;break m}e=0;if((m|0)!=1){p=m&-2;n=0;while(1){l=e<<1;f=x[l+a>>1];u[k+14>>1]=f<<8|f>>>8;Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;f=x[(l|2)+a>>1];u[k+14>>1]=f<<8|f>>>8;Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;e=e+2|0;n=n+2|0;if((p|0)!=(n|0)){continue}break}}if(!(m&1)){break m}e=x[(e<<1)+a>>1];u[k+14>>1]=e<<8|e>>>8;Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;break m}if(!m){break m}e=0;if((m|0)!=1){l=m&-2;n=0;while(1){f=e<<1;t[k+13|0]=w[f+a|0];Ba[v[v[c>>2]>>2]](c,k+13|0,1)|0;t[k+13|0]=w[(f|2)+a|0];Ba[v[v[c>>2]>>2]](c,k+13|0,1)|0;e=e+2|0;n=n+2|0;if((l|0)!=(n|0)){continue}break}}if(!(m&1)){break m}t[k+13|0]=w[(e<<1)+a|0];Ba[v[v[c>>2]>>2]](c,k+13|0,1)|0}xa=k+16|0;if(a){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,a)}a=v[q+4>>2];Ba[v[v[c>>2]>>2]](c,v[a+20>>2],v[a+12>>2])|0}}break g}kX(C(-1),h,c)}kX(z[g+92>>2],h,c);kX(z[g+96>>2],h,c);kX(z[g+100>>2],h,c);kX(z[g+104>>2],h,c);a=1}xa=q+16|0;if(!a){if(!d){break b}v[d>>2]=3;break b}a=1;break a}a=0}if(b){Ba[v[v[b>>2]+4>>2]](b)}e4(g);xa=o+240|0;return a|0}function caa(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,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,u=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0;m=xa-560|0;xa=m;v[m+44>>2]=0;o(+b);g=j(1)|0;j(0)|0;a:{if((g|0)<0){x=1;A=2078;b=-b;o(+b);g=j(1)|0;j(0)|0;break a}if(e&2048){x=1;A=2081;break a}x=e&1;A=x?2084:2079;F=!x}b:{if((g&2146435072)==2146435072){d=x+3|0;baa(a,32,c,d,e&-65537);Z9(a,A,x);f=f&32;Z9(a,b!=b?f?14751:62605:f?20613:62745,3);baa(a,32,c,d,e^8192);i=(c|0)<(d|0)?d:c;break b}z=m+16|0;c:{d:{e:{b=W9(b,m+44|0);b=b+b;if(b!=0){g=v[m+44>>2];v[m+44>>2]=g-1;u=f|32;if((u|0)!=97){break e}break c}u=f|32;if((u|0)==97){break c}l=v[m+44>>2];n=(d|0)<0?6:d;break d}l=g-29|0;v[m+44>>2]=l;b=b*268435456;n=(d|0)<0?6:d}r=(m+48|0)+((l|0)<0?0:288)|0;h=r;while(1){if(b<4294967296&b>=0){d=~~b>>>0}else{d=0}v[h>>2]=d;h=h+4|0;b=(b-+(d>>>0))*1e9;if(b!=0){continue}break}f:{if((l|0)<=0){d=l;g=h;k=r;break f}k=r;d=l;while(1){d=(d|0)<29?d:29;g=h-4|0;g:{if(k>>>0>g>>>0){break g}i=0;while(1){q=v[g>>2];p=d&31;C=i;if((d&63)>>>0>=32){i=q<>>32-p;q=q<>>0>>0?i+1|0:i;i=Saa(p,i,1e9);q=Raa(i,Aa,1e9,0);v[g>>2]=p-q;g=g-4|0;if(k>>>0<=g>>>0){continue}break}if(!i){break g}k=k-4|0;v[k>>2]=i}while(1){g=h;if(k>>>0>>0){h=g-4|0;if(!v[h>>2]){continue}}break}d=v[m+44>>2]-d|0;v[m+44>>2]=d;h=g;if((d|0)>0){continue}break}}if((d|0)<0){y=((n+25>>>0)/9|0)+1|0;p=(u|0)==102;while(1){d=0-d|0;i=(d|0)<9?d:9;h:{if(g>>>0<=k>>>0){h=v[k>>2];break h}q=1e9>>>i|0;E=-1<>2];v[h>>2]=C+(d>>>i|0);d=B(q,d&E);h=h+4|0;if(h>>>0>>0){continue}break}h=v[k>>2];if(!d){break h}v[g>>2]=d;g=g+4|0}d=i+v[m+44>>2]|0;v[m+44>>2]=d;k=(!h<<2)+k|0;h=p?r:k;g=g-h>>2>(y|0)?h+(y<<2)|0:g;if((d|0)<0){continue}break}}d=0;i:{if(g>>>0<=k>>>0){break i}d=B(r-k>>2,9);h=10;i=v[k>>2];if(i>>>0<10){break i}while(1){d=d+1|0;h=B(h,10);if(i>>>0>=h>>>0){continue}break}}h=(n-((u|0)==102?0:d)|0)-((u|0)==103&(n|0)!=0)|0;if((h|0)<(B(g-r>>2,9)-9|0)){i=h+9216|0;p=(i|0)/9|0;l=((((l|0)<0?4:292)+m|0)+(p<<2)|0)-4048|0;h=10;i=i-B(p,9)|0;if((i|0)<=7){while(1){h=B(h,10);i=i+1|0;if((i|0)!=8){continue}break}}p=v[l>>2];y=(p>>>0)/(h>>>0)|0;i=p-B(h,y)|0;q=l+4|0;j:{if(!i&(q|0)==(g|0)){break j}k:{if(!(y&1)){b=9007199254740992;if(!(t[l-4|0]&1)|((h|0)!=1e9|k>>>0>=l>>>0)){break k}}b=9007199254740994}s=(g|0)==(q|0)?1:1.5;q=h>>>1|0;s=i>>>0>>0?.5:(q|0)==(i|0)?s:1.5;if(!(w[A|0]!=45|F)){s=-s;b=-b}i=p-i|0;v[l>>2]=i;if(b+s==b){break j}d=h+i|0;v[l>>2]=d;if(d>>>0>=1e9){while(1){v[l>>2]=0;l=l-4|0;if(l>>>0>>0){k=k-4|0;v[k>>2]=0}d=v[l>>2]+1|0;v[l>>2]=d;if(d>>>0>999999999){continue}break}}d=B(r-k>>2,9);h=10;i=v[k>>2];if(i>>>0<10){break j}while(1){d=d+1|0;h=B(h,10);if(i>>>0>=h>>>0){continue}break}}h=l+4|0;g=g>>>0>h>>>0?h:g}while(1){h=g;i=g>>>0<=k>>>0;if(!i){g=h-4|0;if(!v[g>>2]){continue}}break}l:{if((u|0)!=103){l=e&8;break l}g=n?n:1;l=(g|0)>(d|0)&(d|0)>-5;n=(l?d^-1:-1)+g|0;f=(l?-1:-2)+f|0;l=e&8;if(l){break l}g=-9;m:{if(i){break m}p=v[h-4>>2];if(!p){break m}i=10;g=0;if((p>>>0)%10|0){break m}while(1){l=g;g=g+1|0;i=B(i,10);if(!((p>>>0)%(i>>>0)|0)){continue}break}g=l^-1}i=B(h-r>>2,9);if((f&-33)==70){l=0;g=(g+i|0)-9|0;g=(g|0)>0?g:0;n=(g|0)>(n|0)?n:g;break l}l=0;g=((d+i|0)+g|0)-9|0;g=(g|0)>0?g:0;n=(g|0)>(n|0)?n:g}i=-1;u=l|n;if(((u?2147483645:2147483646)|0)<(n|0)){break b}p=(((u|0)!=0)+n|0)+1|0;q=f&-33;n:{if((q|0)==70){if((2147483647-p|0)<(d|0)){break b}g=(d|0)>0?d:0;break n}g=d>>31;g=aaa((g^d)-g|0,0,z);if((z-g|0)<=1){while(1){g=g-1|0;t[g|0]=48;if((z-g|0)<2){continue}break}}y=g-2|0;t[y|0]=f;t[g-1|0]=(d|0)<0?45:43;g=z-y|0;if((g|0)>(2147483647-p|0)){break b}}d=g+p|0;if((d|0)>(x^2147483647)){break b}f=d+x|0;baa(a,32,c,f,e);Z9(a,A,x);baa(a,48,c,f,e^65536);o:{p:{q:{if((q|0)==70){g=m+16|0;d=g|8;l=g|9;i=k>>>0>r>>>0?r:k;k=i;while(1){g=aaa(v[k>>2],0,l);r:{if((i|0)!=(k|0)){if(m+16>>>0>=g>>>0){break r}while(1){g=g-1|0;t[g|0]=48;if(m+16>>>0>>0){continue}break}break r}if((g|0)!=(l|0)){break r}t[m+24|0]=48;g=d}Z9(a,g,l-g|0);k=k+4|0;if(r>>>0>=k>>>0){continue}break}if(u){Z9(a,70749,1)}if((n|0)<=0|h>>>0<=k>>>0){break q}while(1){g=aaa(v[k>>2],0,l);if(g>>>0>m+16>>>0){while(1){g=g-1|0;t[g|0]=48;if(m+16>>>0>>0){continue}break}}Z9(a,g,(n|0)<9?n:9);g=n-9|0;k=k+4|0;if(h>>>0<=k>>>0){break p}d=(n|0)>9;n=g;if(d){continue}break}break p}s:{if((n|0)<0){break s}i=h>>>0>k>>>0?h:k+4|0;g=m+16|0;d=g|8;r=g|9;h=k;while(1){g=aaa(v[h>>2],0,r);if((r|0)==(g|0)){t[m+24|0]=48;g=d}t:{if((h|0)!=(k|0)){if(m+16>>>0>=g>>>0){break t}while(1){g=g-1|0;t[g|0]=48;if(m+16>>>0>>0){continue}break}break t}Z9(a,g,1);g=g+1|0;if(!(l|n)){break t}Z9(a,70749,1)}C=g;g=r-g|0;Z9(a,C,(g|0)>(n|0)?n:g);n=n-g|0;h=h+4|0;if(i>>>0<=h>>>0){break s}if((n|0)>=0){continue}break}}baa(a,48,n+18|0,18,0);Z9(a,y,z-y|0);break o}g=n}baa(a,48,g+9|0,9,0)}baa(a,32,c,f,e^8192);i=(c|0)<(f|0)?f:c;break b}n=(f<<26>>31&9)+A|0;u:{if(d>>>0>11){break u}g=12-d|0;s=16;while(1){s=s*16;g=g-1|0;if(g){continue}break}if(w[n|0]==45){b=-(s+(-b-s));break u}b=b+s-s}h=v[m+44>>2];g=h>>31;g=aaa((g^h)-g|0,0,z);if((z|0)==(g|0)){t[m+15|0]=48;g=m+15|0}l=x|2;k=f&32;h=v[m+44>>2];r=g-2|0;t[r|0]=f+15;t[g-1|0]=(h|0)<0?45:43;i=e&8;h=m+16|0;while(1){f=h;if(D(b)<2147483648){g=~~b}else{g=-2147483648}t[h|0]=k|w[g+109616|0];b=(b-+(g|0))*16;h=f+1|0;if(!(!((d|0)>0|i)&b==0|(h-(m+16|0)|0)!=1)){t[f+1|0]=46;h=f+2|0}if(b!=0){continue}break}i=-1;p=z-r|0;f=p+l|0;if((2147483645-f|0)<(d|0)){break b}v:{w:{if(!d){break w}k=h-(m+16|0)|0;if((k-2|0)>=(d|0)){break w}g=d+2|0;break v}k=h-(m+16|0)|0;g=k}d=g+f|0;baa(a,32,c,d,e);Z9(a,n,l);baa(a,48,c,d,e^65536);Z9(a,m+16|0,k);baa(a,48,g-k|0,0,0);Z9(a,r,p);baa(a,32,c,d,e^8192);i=(c|0)<(d|0)?d:c}xa=m+560|0;return i|0}function v1(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var q=C(0),r=C(0),s=C(0),u=0,y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,L=0,M=C(0),N=0,O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0);u=xa-416|0;xa=u;N=u+344|0;j2(y_(u+120|0,c),N);v[u+88>>2]=0;v[u+92>>2]=0;v[u+84>>2]=1065353216;v[u+96>>2]=0;v[u+100>>2]=0;v[u+104>>2]=1065353216;v[u+108>>2]=0;v[u+68>>2]=0;v[u+72>>2]=0;v[u+64>>2]=1065353216;v[u+76>>2]=0;v[u+80>>2]=0;t[u+44|0]=1;v[u+32>>2]=f;v[u+48>>2]=b;v[u>>2]=141108;b=u- -64|0;v[u+40>>2]=b;v[u+36>>2]=b;b=v[h>>2];L=xa-32|0;xa=L;a:{b:{if(o){if(c2(a,N,u,n,L+16|0,k)){c=v[N+24>>2];m=z[k>>2];p=z[k+4>>2];q=z[k+8>>2];v[L+12>>2]=0;z[L+8>>2]=-q;z[L+4>>2]=-p;z[L>>2]=-m;c=c+B(Z1(N,u,L),20)|0;break b}o=0;break a}q=z[k>>2];r=z[k+4>>2];s=z[k+8>>2];v[L+28>>2]=0;z[L+24>>2]=-s;z[L+20>>2]=-r;z[L+16>>2]=-q;q=C(p*C(.05000000074505806));p=C(p*C(.009999999776482582));m=mq?q:m);c=v[N+24>>2]+B(c,20)|0}l=xa+-64|0;xa=l;D=z[n>>2];F=z[a+80>>2];o=v[u+40>>2];r=z[o+40>>2];s=z[o+36>>2];E=z[o+24>>2];G=z[o+20>>2];y=z[o+32>>2];M=z[o+16>>2];m=z[c+8>>2];H=z[o+8>>2];p=z[c>>2];S=z[o>>2];q=z[c+4>>2];O=z[o+4>>2];v[l+60>>2]=0;r=C(C(r*m)+C(C(y*p)+C(q*s)));s=C(C(H*m)+C(C(S*p)+C(q*O)));E=C(C(E*m)+C(C(M*p)+C(q*G)));m=C(C(1)/C(K(C(C(r*r)+C(C(s*s)+C(E*E))))));p=C(r*m);z[l+56>>2]=p;q=C(s*m);z[l+48>>2]=q;m=C(E*m);z[l+52>>2]=m;o=v[u+36>>2];I=v[N+32>>2]+x[c+16>>1]|0;A=v[N+28>>2]+B(w[I|0],12)|0;r=z[A+8>>2];s=z[A>>2];E=z[A+4>>2];G=C(C(z[o+40>>2]*r)+C(C(z[o+8>>2]*s)+C(E*z[o+24>>2])));y=C(C(z[o+32>>2]*r)+C(C(z[o>>2]*s)+C(E*z[o+16>>2])));r=C(C(z[o+36>>2]*r)+C(C(z[o+4>>2]*s)+C(E*z[o+20>>2])));s=C(C(p*z[k+8>>2])+C(C(q*z[k>>2])+C(m*z[k+4>>2])));s=s>C(0)?C(C(1)/s):C(0);E=C(C(C(p*C(z[a+72>>2]-G))+C(C(q*C(z[a+64>>2]-y))+C(m*C(z[a+68>>2]-r))))*s);S=C(F+D);M=C(C(C(p*C(z[a+56>>2]-G))+C(C(q*C(z[a+48>>2]-y))+C(m*C(z[a+52>>2]-r))))*s);J=S>=M;c:{if(!(J|E<=S)){break c}p2(l,l+48|0);o=w[c+18|0];Q=(l-(o<<4)|0)-16|0;xa=Q;Ba[v[v[u>>2]+16>>2]](u,I,o,v[N+28>>2],Q);I=w[c+18|0];d:{if(!I){D=C(34028234663852886e22);p=C(-34028234663852886e22);F=C(-34028234663852886e22);G=C(34028234663852886e22);break d}y=z[l+40>>2];H=z[l+24>>2];O=z[l+36>>2];T=z[l+20>>2];F=C(-34028234663852886e22);G=C(34028234663852886e22);U=z[l+8>>2];R=z[l+4>>2];V=z[l+32>>2];P=z[l+16>>2];W=z[l>>2];o=0;D=C(34028234663852886e22);p=C(-34028234663852886e22);while(1){A=(o<<4)+Q|0;v[A+12>>2]=0;q=z[A+8>>2];r=z[A>>2];s=z[A+4>>2];z[A+8>>2]=C(y*q)+C(C(U*r)+C(s*H));m=C(C(O*q)+C(C(R*r)+C(s*T)));z[A+4>>2]=m;q=C(C(V*q)+C(C(W*r)+C(s*P)));z[A>>2]=q;F=mq?p:q;G=m>G?G:m;D=q>D?D:q;o=o+1|0;if((I|0)!=(o|0)){continue}break}}e:{if(!J){break e}V=z[a+56>>2];O=C(V-C(M*z[k+8>>2]));P=z[a+48>>2];T=C(P-C(M*z[k>>2]));W=z[a+52>>2];U=C(W-C(M*z[k+4>>2]));H=C(C(z[l+32>>2]*O)+C(C(z[l>>2]*T)+C(U*z[l+16>>2])));if(H>2]*O)+C(C(z[l+4>>2]*T)+C(U*z[l+20>>2])));if(!I|(yF)){break e}o=((I<<4)+Q|0)-16|0;q=z[o>>2];m=z[o+4>>2];A=0;o=0;f:{while(1){if(q==H&m==y){break f}s=q;r=m;J=(A<<4)+Q|0;q=z[J>>2];m=z[J+4>>2];if(H==q&y==m){break f}g:{if((r>y|0)==(m>y|0)){break g}R=C(m-r);r=C(C(C(s+C(1.1920928955078125e-7))*R)+C(C(y-r)*C(q-s)));s=C(H*R);J=R>C(0);if(!((J?r:s)>=(J?s:r))){break g}if((o|0)==1){break e}o=o+1|0}A=A+1|0;if((I|0)!=(A|0)){continue}break}if(!o){break e}}s=z[d+20>>2];y=z[d+24>>2];r=z[d+36>>2];H=z[d+52>>2];m=z[d+40>>2];q=z[d+56>>2];R=z[d+8>>2];Y=z[d+4>>2];Z=z[d>>2];_=z[d+16>>2];$=z[d+32>>2];aa=z[d+48>>2];o=B(v[h>>2],48)+g|0;v[o+12>>2]=0;X=m;m=C(V-q);q=C(P-aa);P=r;r=C(W-H);z[o+8>>2]=C(X*m)+C(C($*q)+C(P*r));z[o+4>>2]=C(y*m)+C(C(_*q)+C(r*s));z[o>>2]=C(R*m)+C(C(Z*q)+C(r*Y));o=B(v[h>>2],48)+g|0;z[o+16>>2]=T;v[o+28>>2]=0;z[o+24>>2]=O;z[o+20>>2]=U;m=z[k+8>>2];A=v[k+4>>2];I=v[k>>2];o=v[h>>2];v[h>>2]=o+1;o=B(o,48)+g|0;v[o+32>>2]=I;v[o+36>>2]=A;z[o+44>>2]=M;z[o+40>>2]=m}if(!(E<=S)){break c}m=D;S=z[a+72>>2];y=C(S-C(E*z[k+8>>2]));O=z[a+64>>2];M=C(O-C(E*z[k>>2]));T=z[a+68>>2];H=C(T-C(E*z[k+4>>2]));D=C(C(z[l+32>>2]*y)+C(C(z[l>>2]*M)+C(H*z[l+16>>2])));if(m>D|p>2]*y)+C(C(z[l+4>>2]*M)+C(H*z[l+20>>2])));if(sF){break c}I=w[c+18|0];if(!I){break c}o=((I<<4)+Q|0)-16|0;p=z[o>>2];m=z[o+4>>2];A=0;o=0;h:{while(1){r=p;q=m;if(r==D&m==s){break h}J=(A<<4)+Q|0;p=z[J>>2];m=z[J+4>>2];if(D==p&s==m){break h}i:{if((q>s|0)==(m>s|0)){break i}F=C(m-q);q=C(C(C(r+C(1.1920928955078125e-7))*F)+C(C(s-q)*C(p-r)));r=C(D*F);J=F>C(0);if(!((J?q:r)>=(J?r:q))){break i}if((o|0)==1){break c}o=o+1|0}A=A+1|0;if((I|0)!=(A|0)){continue}break}if(!o){break c}}r=z[d+20>>2];s=z[d+24>>2];q=z[d+36>>2];D=z[d+52>>2];m=z[d+40>>2];p=z[d+56>>2];F=z[d+8>>2];G=z[d+4>>2];U=z[d>>2];R=z[d+16>>2];V=z[d+32>>2];P=z[d+48>>2];o=B(v[h>>2],48)+g|0;v[o+12>>2]=0;X=m;m=C(S-p);p=C(O-P);P=q;q=C(T-D);z[o+8>>2]=C(X*m)+C(C(V*p)+C(P*q));z[o+4>>2]=C(s*m)+C(C(R*p)+C(q*r));z[o>>2]=C(F*m)+C(C(U*p)+C(q*G));o=B(v[h>>2],48)+g|0;z[o+16>>2]=M;v[o+28>>2]=0;z[o+24>>2]=y;z[o+20>>2]=H;m=z[k+8>>2];A=v[k+4>>2];Q=v[k>>2];o=v[h>>2];v[h>>2]=o+1;o=B(o,48)+g|0;v[o+32>>2]=Q;v[o+36>>2]=A;z[o+44>>2]=E;z[o+40>>2]=m}xa=l- -64|0;o=1;if(v[h>>2]-b>>>0>1){break a}b2(a,N,c,u,d,g,h,n,k)}xa=L+32|0;if(o){c=v[h>>2];j:{if(!b){break j}if((b|0)==(c|0)){c=b;break j}c=c-1|0;v[h>>2]=c;g=g+48|0}w2(j,g,c);m=z[f+12>>2];p=z[f+8>>2];q=z[f>>2];r=z[f+4>>2];v[k+12>>2]=0;s=z[k+8>>2];E=z[k>>2];D=z[k+4>>2];F=C(C(p*s)+C(C(q*E)+C(r*D)));G=C(C(m*m)+C(-.5));y=C(C(C(m*C(C(q*D)-C(r*E)))+C(G*s))+C(p*F));z[k+8>>2]=y+y;y=C(C(r*F)+C(C(G*D)+C(m*C(C(p*E)-C(s*q)))));z[k+4>>2]=y+y;m=C(C(q*F)+C(C(E*G)+C(m*C(C(r*s)-C(D*p)))));z[k>>2]=m+m;r2(j,i,k,k,e,a+80|0,n)}xa=u+416|0;return o}function js(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=C(0),l=0,m=0,n=C(0),o=0,p=0,q=0,r=C(0),s=C(0),u=C(0);l=xa-16|0;xa=l;a:{if(w[a+4801|0]){a9(v[37696],2,11709,2838,68519,0);break a}i=v[a+5932>>2];f=v[a+5936>>2];if(f>>>0>=4){m=f&3;o=f-5|0;p=f>>>2|0;q=p-1|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(o-(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=v[e+i>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 0:break e;case 1:break f;default:break d}}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];XG(c- -64|0,b);break c}z[c+96>>2]=z[c+96>>2]-z[b>>2];z[c+100>>2]=z[c+100>>2]-z[b+4>>2];z[c+104>>2]=z[c+104>>2]-z[b+8>>2];break c}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];XG(c- -64|0,b)}g:{h:{i:{j:{c=v[i+(e|4)>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 1:break i;case 0:break j;default:break h}}z[c+96>>2]=z[c+96>>2]-z[b>>2];z[c+100>>2]=z[c+100>>2]-z[b+4>>2];z[c+104>>2]=z[c+104>>2]-z[b+8>>2];break g}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];XG(c- -64|0,b);break g}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];XG(c- -64|0,b)}k:{l:{m:{n:{c=v[i+(e|8)>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 1:break m;case 0:break n;default:break l}}z[c+96>>2]=z[c+96>>2]-z[b>>2];z[c+100>>2]=z[c+100>>2]-z[b+4>>2];z[c+104>>2]=z[c+104>>2]-z[b+8>>2];break k}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];XG(c- -64|0,b);break k}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];XG(c- -64|0,b)}o:{p:{q:{r:{c=v[i+(e|12)>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 1:break q;case 0:break r;default:break p}}z[c+96>>2]=z[c+96>>2]-z[b>>2];z[c+100>>2]=z[c+100>>2]-z[b+4>>2];z[c+104>>2]=z[c+104>>2]-z[b+8>>2];break o}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];XG(c- -64|0,b);break o}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];XG(c- -64|0,b)}g=g+1|0;if((p|0)!=(g|0)){continue}break}}if(d>>>0>>0){while(1){s:{t:{u:{v:{c=v[i+(d<<2)>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 0:break u;case 1:break v;default:break t}}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];XG(c- -64|0,b);break s}z[c+96>>2]=z[c+96>>2]-z[b>>2];z[c+100>>2]=z[c+100>>2]-z[b+4>>2];z[c+104>>2]=z[c+104>>2]-z[b+8>>2];break s}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];XG(c- -64|0,b)}d=d+1|0;if((f|0)!=(d|0)){continue}break}}if(v[a+5980>>2]){f=v[a+5948>>2];e=0;while(1){c=v[f+(e<<2)>>2];g=v[(Ba[v[v[c>>2]+100>>2]](c)|0)+84>>2];h=0;if(Ba[v[v[c>>2]+76>>2]](c)|0){while(1){w:{x:{y:{z:{d=v[g+(h<<2)>>2];switch(Ba[v[v[d>>2]+24>>2]](d)|0){case 0:break y;case 1:break z;default:break x}}z[d+272>>2]=z[d+272>>2]-z[b>>2];z[d+276>>2]=z[d+276>>2]-z[b+4>>2];z[d+280>>2]=z[d+280>>2]-z[b+8>>2];XG(d- -64|0,b);break w}z[d+96>>2]=z[d+96>>2]-z[b>>2];z[d+100>>2]=z[d+100>>2]-z[b+4>>2];z[d+104>>2]=z[d+104>>2]-z[b+8>>2];break w}z[d+272>>2]=z[d+272>>2]-z[b>>2];z[d+276>>2]=z[d+276>>2]-z[b+4>>2];z[d+280>>2]=z[d+280>>2]-z[b+8>>2];XG(d- -64|0,b)}h=h+1|0;if(Ba[v[v[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=v[f+976>>2];m=v[d+1816>>2];c=v[m+12>>2];e=c&2147483647;A:{if(!e){break A}j=z[b+8>>2];k=z[b+4>>2];n=z[b>>2];o=c&1;i=v[m+4>>2];c=0;if((e|0)!=1){p=e-o|0;while(1){q=c<<5;e=q+i|0;z[e+16>>2]=z[e+16>>2]-n;z[e+20>>2]=z[e+20>>2]-k;z[e+24>>2]=z[e+24>>2]-j;e=i+(q|32)|0;z[e+16>>2]=z[e+16>>2]-n;z[e+20>>2]=z[e+20>>2]-k;z[e+24>>2]=z[e+24>>2]-j;c=c+2|0;g=g+2|0;if((p|0)!=(g|0)){continue}break}}if(!o){break A}c=i+(c<<5)|0;z[c+16>>2]=z[c+16>>2]-n;z[c+20>>2]=z[c+20>>2]-k;z[c+24>>2]=z[c+24>>2]-j}t[m+20|0]=1;n=z[d+1140>>2];r=z[d+1136>>2];s=z[d+1128>>2];u=z[d+1132>>2];B:{C:{if(!(!(s!=C(-85070586659632215e21)|u!=C(-85070586659632215e21))&r==C(-85070586659632215e21))){j=z[d+1148>>2];k=z[d+1144>>2];break C}j=z[d+1148>>2];k=z[d+1144>>2];if(n!=C(85070586659632215e21)|k!=C(85070586659632215e21)){break C}if(j==C(85070586659632215e21)){break B}}z[d+1128>>2]=s-z[b>>2];z[d+1132>>2]=u-z[b+4>>2];z[d+1136>>2]=r-z[b+8>>2];z[d+1140>>2]=n-z[b>>2];z[d+1144>>2]=k-z[b+4>>2];z[d+1148>>2]=j-z[b+8>>2]}c=v[f+1140>>2];e=v[c+8>>2];if(e){g=v[c+4>>2];while(1){d=g+B(h,24)|0;z[d>>2]=z[d>>2]-z[b>>2];z[d+4>>2]=z[d+4>>2]-z[b+4>>2];z[d+8>>2]=z[d+8>>2]-z[b+8>>2];z[d+12>>2]=z[d+12>>2]-z[b>>2];z[d+16>>2]=z[d+16>>2]-z[b+4>>2];z[d+20>>2]=z[d+20>>2]-z[b+8>>2];h=h+1|0;if((e|0)!=(h|0)){continue}break}}t[c+16|0]=1;d=v[f+980>>2];c=v[d+272>>2];Ba[v[v[c>>2]+72>>2]](c,b,v[v[d+276>>2]+4>>2],v[v[d+192>>2]+4>>2]);t[d+364|0]=1;e=v[f+1132>>2];D:{if(!e){break D}h=v[f+1100>>2];d=0;if((e|0)!=1){f=e&-2;c=0;while(1){g=d<<2;i=v[v[g+h>>2]+28>>2];Ba[v[v[i>>2]+16>>2]](i,b);g=v[v[h+(g|4)>>2]+28>>2];Ba[v[v[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=v[v[h+(d<<2)>>2]+28>>2];Ba[v[v[d>>2]+16>>2]](d,b)}d=a+5584|0;c=v[d>>2];Ba[v[v[c>>2]+48>>2]](c,b);c=v[d+36>>2];Ba[v[v[c>>2]+48>>2]](c,b);d=v[d+72>>2];Ba[v[v[d>>2]+44>>2]](d,b);j=z[b>>2];k=z[b+4>>2];z[l+8>>2]=-z[b+8>>2];z[l+4>>2]=-k;z[l>>2]=-j;ks(a+5828|0,l)}xa=l+16|0}function Y9(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,x=0,y=0,z=0,C=0,D=0,E=0,F=0,G=0;j=xa-80|0;xa=j;v[j+76>>2]=b;E=j+55|0;s=j+56|0;a:{b:{c:{d:{e:while(1){l=b;if((2147483647-p|0)<(h|0)){break d}p=h+p|0;f:{g:{h:{h=l;i=w[h|0];if(i){while(1){i:{b=i&255;j:{if(!b){b=h;break j}if((b|0)!=37){break i}i=h;while(1){if(w[i+1|0]!=37){b=i;break j}h=h+1|0;k=w[i+2|0];b=i+2|0;i=b;if((k|0)==37){continue}break}}h=h-l|0;D=2147483647-p|0;if((h|0)>(D|0)){break d}if(a){Z9(a,l,h)}if(h){continue e}v[j+76>>2]=b;h=b+1|0;q=-1;if(!(w[b+2|0]!=36|t[b+1|0]-48>>>0>=10)){q=t[b+1|0]-48|0;y=1;h=b+3|0}v[j+76>>2]=h;n=0;i=t[h|0];b=i-32|0;k:{if(b>>>0>31){k=h;break k}k=h;b=1<>2]=k;n=b|n;i=t[h+1|0];b=i-32|0;if(b>>>0>=32){break k}h=k;b=1<>>0>=10)){v[((t[k+1|0]<<2)+e|0)-192>>2]=10;i=k+3|0;y=1;b=v[((t[k+1|0]<<3)+d|0)-384>>2];break m}if(y){break h}i=k+1|0;if(!a){v[j+76>>2]=i;y=0;r=0;break l}b=v[c>>2];v[c>>2]=b+4;y=0;b=v[b>>2]}r=b;v[j+76>>2]=i;if((r|0)>=0){break l}r=0-r|0;n=n|8192;break l}r=_9(j+76|0);if((r|0)<0){break d}i=v[j+76>>2]}h=0;m=-1;n:{if(w[i|0]!=46){b=i;C=0;break n}if(w[i+1|0]==42){o:{if(!(w[i+3|0]!=36|t[i+2|0]-48>>>0>=10)){v[((t[i+2|0]<<2)+e|0)-192>>2]=10;b=i+4|0;m=v[((t[i+2|0]<<3)+d|0)-384>>2];break o}if(y){break h}b=i+2|0;m=0;if(!a){break o}i=v[c>>2];v[c>>2]=i+4;m=v[i>>2]}v[j+76>>2]=b;C=(m^-1)>>>31|0;break n}v[j+76>>2]=i+1;m=_9(j+76|0);b=v[j+76>>2];C=1}p:{while(1){o=h;x=b;h=t[b|0];if(h-123>>>0<4294967238){break p}b=x+1|0;h=w[(h+B(o,58)|0)+109087|0];if(h-1>>>0<8){continue}break}v[j+76>>2]=b;k=28;q:{r:{if((h|0)!=27){if(!h){break c}if((q|0)>=0){v[(q<<2)+e>>2]=h;h=(q<<3)+d|0;i=v[h+4>>2];v[j+64>>2]=v[h>>2];v[j+68>>2]=i;break r}if(!a){break f}$9(j- -64|0,h,c,g);break q}if((q|0)>=0){break c}}h=0;if(!a){continue e}}i=n&-65537;n=n&8192?i:n;q=0;z=2068;k=s;s:{t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{h=t[x|0];h=o?(h&15)==3?h&-33:h:h;switch(h-88|0){case 11:break s;case 9:case 13:case 14:case 15:break t;case 27:break y;case 12:case 17:break B;case 23:break C;case 0:case 32:break D;case 24:break E;case 22:break F;case 29:break G;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 H}}I:{switch(h-65|0){case 0:case 4:case 5:case 6:break t;case 2:break w;case 1:case 3:break g;default:break I}}if((h|0)==83){break x}break g}o=v[j+64>>2];i=v[j+68>>2];z=2068;break A}h=0;J:{switch(o&255){case 0:v[v[j+64>>2]>>2]=p;continue e;case 1:v[v[j+64>>2]>>2]=p;continue e;case 2:l=v[j+64>>2];v[l>>2]=p;v[l+4>>2]=p>>31;continue e;case 3:u[v[j+64>>2]>>1]=p;continue e;case 4:t[v[j+64>>2]]=p;continue e;case 6:v[v[j+64>>2]>>2]=p;continue e;case 7:break J;default:continue e}}l=v[j+64>>2];v[l>>2]=p;v[l+4>>2]=p>>31;continue e}m=m>>>0>8?m:8;n=n|8;h=120}l=s;F=h&32;o=v[j+64>>2];i=v[j+68>>2];if(o|i){while(1){l=l-1|0;t[l|0]=F|w[(o&15)+109616|0];G=!i&o>>>0>15|(i|0)!=0;x=i;i=i>>>4|0;o=(x&15)<<28|o>>>4;if(G){continue}break}}if(!(v[j+64>>2]|v[j+68>>2])|!(n&8)){break z}z=(h>>>4|0)+2068|0;q=2;break z}h=s;l=v[j+68>>2];i=l;o=v[j+64>>2];if(i|o){while(1){h=h-1|0;t[h|0]=o&7|48;x=!i&o>>>0>7|(i|0)!=0;l=i;i=i>>>3|0;o=(l&7)<<29|o>>>3;if(x){continue}break}}l=h;if(!(n&8)){break z}h=s-l|0;m=(h|0)<(m|0)?m:h+1|0;break z}h=v[j+68>>2];i=h;o=v[j+64>>2];if((h|0)<0){i=0-(i+((o|0)!=0)|0)|0;o=0-o|0;v[j+64>>2]=o;v[j+68>>2]=i;q=1;z=2068;break A}if(n&2048){q=1;z=2069;break A}q=n&1;z=q?2070:2068}l=aaa(o,i,s)}if((m|0)<0?C:0){break d}n=C?n&-65537:n;i=v[j+64>>2];h=v[j+68>>2];if(!(m|(i|h)!=0)){l=s;k=l;m=0;break g}h=!(h|i)+(s-l|0)|0;m=(h|0)<(m|0)?m:h;break g}o=m>>>0<2147483647?m:2147483647;k=o;n=(k|0)!=0;h=v[j+64>>2];l=h?h:70751;h=l;K:{L:{M:{N:{if(!(h&3)|!k){break N}while(1){if(!w[h|0]){break M}k=k-1|0;n=(k|0)!=0;h=h+1|0;if(!(h&3)){break N}if(k){continue}break}}if(!n){break L}}O:{if(!(!w[h|0]|k>>>0<4)){while(1){n=v[h>>2];if((n^-1)&n-16843009&-2139062144){break O}h=h+4|0;k=k-4|0;if(k>>>0>3){continue}break}}if(!k){break L}}while(1){if(!w[h|0]){break K}h=h+1|0;k=k-1|0;if(k){continue}break}}h=0}h=h?h-l|0:o;k=h+l|0;if((m|0)>=0){n=i;m=h;break g}n=i;m=h;if(w[k|0]){break d}break g}if(m){i=v[j+64>>2];break v}h=0;baa(a,32,r,0,n);break u}v[j+12>>2]=0;v[j+8>>2]=v[j+64>>2];i=j+8|0;v[j+64>>2]=i;m=-1}h=0;P:{while(1){l=v[i>>2];if(!l){break P}l=gaa(j+4|0,l);k=(l|0)<0;if(!(k|l>>>0>m-h>>>0)){i=i+4|0;h=h+l|0;if(m>>>0>h>>>0){continue}break P}break}if(k){break b}}k=61;if((h|0)<0){break c}baa(a,32,r,h,n);if(!h){h=0;break u}k=0;i=v[j+64>>2];while(1){l=v[i>>2];if(!l){break u}l=gaa(j+4|0,l);k=l+k|0;if(k>>>0>h>>>0){break u}Z9(a,j+4|0,l);i=i+4|0;if(h>>>0>k>>>0){continue}break}}baa(a,32,r,h,n^8192);h=(h|0)<(r|0)?r:h;continue e}if((m|0)<0?C:0){break d}k=61;h=Ba[f|0](a,A[j+64>>3],r,m,n,h)|0;if((h|0)>=0){continue e}break c}t[j+55|0]=v[j+64>>2];m=1;l=E;n=i;break g}v[j+76>>2]=x;break h}i=w[h+1|0];h=h+1|0;continue}}if(a){break a}if(!y){break f}h=1;while(1){a=v[(h<<2)+e>>2];if(a){$9((h<<3)+d|0,a,c,g);p=1;h=h+1|0;if((h|0)!=10){continue}break a}break}p=1;if(h>>>0>=10){break a}while(1){if(v[(h<<2)+e>>2]){break h}h=h+1|0;if((h|0)!=10){continue}break}break a}k=28;break c}o=k-l|0;m=(m|0)>(o|0)?m:o;if((m|0)>(2147483647-q|0)){break d}k=61;i=m+q|0;h=(i|0)<(r|0)?r:i;if((D|0)<(h|0)){break c}baa(a,32,h,i,n);Z9(a,z,q);baa(a,48,h,i,n^65536);baa(a,48,m,o,0);Z9(a,l,o);baa(a,32,h,i,n^8192);continue}break}p=0;break a}k=61}v[37699]=k}p=-1}xa=j+80|0;return p}function LZ(a,b,c,d,e,f){var g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=0,n=0,o=0,p=0,q=0,r=0,s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0);i=xa-96|0;a:{b:{q=v[a+4096>>2]-b|0;if(q>>>0>=5){g=(b<<6)+a|0;if((c|0)==(q|0)){h=z[g+12>>2];e=0;if(c>>>0<2){break a}d=c-1|0;Q=d&3;if(c-2>>>0<3){d=1;l=h;break b}n=d&-4;l=h;d=1;while(1){j=z[((d<<6)+g|0)+12>>2];q=j>2];l=q?j:l;E=k>2];l=E?k:l;H=j>2];l=H?j:l;m=k>2]=1053028119;v[i+80>>2]=0;v[i+84>>2]=-1083407522;c=i- -64|0;v[c>>2]=1064076126;v[c+4>>2]=0;v[i+56>>2]=0;v[i+60>>2]=-1094455528;v[i+40>>2]=1064076126;v[i+44>>2]=0;v[i+32>>2]=0;v[i+36>>2]=1053028117;v[i+16>>2]=1053028118;v[i+20>>2]=0;v[i+72>>2]=-1087044365;v[i+76>>2]=1060439283;v[i+48>>2]=-1287930578;v[i+52>>2]=1065353216;v[i+24>>2]=1060439283;v[i+28>>2]=1060439283;v[i+8>>2]=0;v[i+12>>2]=1064076126;v[i>>2]=1065353216;v[i+4>>2]=0;R=z[d+28>>2];S=z[d+16>>2];T=z[d+24>>2];U=z[d+12>>2];V=z[d+4>>2];W=z[d>>2];d=0;l=C(-34028234663852886e22);s=C(34028234663852886e22);I=C(34028234663852886e22);J=C(34028234663852886e22);K=C(34028234663852886e22);L=C(34028234663852886e22);M=C(34028234663852886e22);N=C(34028234663852886e22);O=C(34028234663852886e22);P=C(-34028234663852886e22);t=C(-34028234663852886e22);u=C(-34028234663852886e22);y=C(-34028234663852886e22);A=C(-34028234663852886e22);F=C(-34028234663852886e22);D=C(-34028234663852886e22);while(1){c=B(w[d+f|0],12)+e|0;j=z[c>>2];k=z[c+4>>2];h=z[c+8>>2];x=C(C(C(j*W)+C(k*U))+C(h*T));G=C(C(C(j*V)+C(k*S))+C(h*R));h=C(C(x*C(-.9238795042037964))+C(G*C(.38268348574638367)));l=hs?s:h;k=C(G*C(.7071067690849304));h=C(C(x*C(-.7071067690849304))+k);P=hI?I:h;h=C(G*C(.9238795042037964));j=C(C(x*C(-.38268351554870605))+h);t=jJ?J:j;j=C(C(x*C(-4.371138828673793e-8))+G);u=jK?K:j;h=C(C(x*C(.3826834261417389))+h);y=hL?L:h;h=C(C(x*C(.7071067690849304))+k);A=hM?M:h;h=C(C(x*C(.9238795042037964))+C(G*C(.3826834559440613)));F=hN?N:h;h=C(x+C(G*C(0)));D=hO?O:h;d=d+1|0;if((q|0)!=(d|0)){continue}break}j=C(F-N);h=C(D-O);c=j>h;d=c;k=C(A-M);h=c?j:h;c=k>h;d=c?2:d;j=C(y-L);h=c?k:h;c=j>h;d=c?3:d;k=C(u-K);h=c?j:h;c=k>h;d=c?4:d;j=C(t-J);h=c?k:h;c=j>h;d=c?5:d;k=C(P-I);h=c?j:h;c=k>h;c=i+B(C(l-s)>(c?k:h)?7:c?6:d,12)|0;y=z[c>>2];A=z[c+4>>2];F=C(-A);n=q>>>0>1?q:1;t=C(34028234663852886e22);u=C(-34028234663852886e22);d=0;c=0;l=C(-34028234663852886e22);s=C(34028234663852886e22);while(1){i=B(w[d+f|0],12)+e|0;D=z[i>>2];j=z[i+4>>2];h=z[i+8>>2];k=C(C(C(D*W)+C(j*U))+C(h*T));h=C(C(C(D*V)+C(j*S))+C(h*R));j=C(C(F*k)+C(y*h));H=j>u;u=H?j:u;p=jl;l=m?h:l;i=h>>0>1?q:1;o=0;f=0;while(1){c:{if(!((o|0)==(r|0)|(o|0)==(p|0)|(i|0)==(o|0))){if((e|0)!=(o|0)){break c}}m=(f<<6)+g|0;n=(o<<6)+g|0;z[m>>2]=z[n>>2];z[m+4>>2]=z[n+4>>2];z[m+8>>2]=z[n+8>>2];z[m+12>>2]=z[n+12>>2];z[m+16>>2]=z[n+16>>2];z[m+20>>2]=z[n+20>>2];z[m+24>>2]=z[n+24>>2];z[m+28>>2]=z[n+28>>2];z[m+32>>2]=z[n+32>>2];z[m+36>>2]=z[n+36>>2];z[m+40>>2]=z[n+40>>2];c=v[n+48>>2];v[m+44>>2]=v[n+44>>2];v[m+48>>2]=c;c=v[n+56>>2];v[m+52>>2]=v[n+52>>2];v[m+56>>2]=c;v[m+60>>2]=v[n+60>>2];f=f+1|0}o=o+1|0;if((d|0)!=(o|0)){continue}break}v[a+4096>>2]=b+f}return}if(!Q){break a}while(1){k=z[((d<<6)+g|0)+12>>2];f=k>2]=h;d=c<<14&1073725440;p=d>>>16|0;f=(p<<6)+g|0;z[g+64>>2]=z[f>>2];z[g+68>>2]=z[f+4>>2];z[g+72>>2]=z[f+8>>2];z[g+76>>2]=z[f+12>>2];z[g+80>>2]=z[f+16>>2];z[g+84>>2]=z[f+20>>2];z[g+88>>2]=z[f+24>>2];z[g+92>>2]=z[f+28>>2];z[g+96>>2]=z[f+32>>2];z[g+100>>2]=z[f+36>>2];z[g+104>>2]=z[f+40>>2];c=v[f+48>>2];v[g+108>>2]=v[f+44>>2];v[g+112>>2]=c;c=v[f+56>>2];v[g+116>>2]=v[f+52>>2];v[g+120>>2]=c;v[g+124>>2]=v[f+60>>2];i=d>>>15|0;f=(i<<6)+g|0;z[g+128>>2]=z[f>>2];z[g+132>>2]=z[f+4>>2];z[g+136>>2]=z[f+8>>2];z[g+140>>2]=z[f+12>>2];z[g+144>>2]=z[f+16>>2];z[g+148>>2]=z[f+20>>2];z[g+152>>2]=z[f+24>>2];z[g+156>>2]=z[f+28>>2];z[g+160>>2]=z[f+32>>2];z[g+164>>2]=z[f+36>>2];z[g+168>>2]=z[f+40>>2];c=v[f+48>>2];v[g+172>>2]=v[f+44>>2];v[g+176>>2]=c;c=v[f+56>>2];v[g+180>>2]=v[f+52>>2];v[g+184>>2]=c;v[g+188>>2]=v[f+60>>2];f=B(d,3)>>>16|0;d=(f<<6)+g|0;z[g+192>>2]=z[d>>2];z[g+196>>2]=z[d+4>>2];z[g+200>>2]=z[d+8>>2];z[g+204>>2]=z[d+12>>2];z[g+208>>2]=z[d+16>>2];z[g+212>>2]=z[d+20>>2];z[g+216>>2]=z[d+24>>2];z[g+220>>2]=z[d+28>>2];z[g+224>>2]=z[d+32>>2];z[g+228>>2]=z[d+36>>2];z[g+232>>2]=z[d+40>>2];c=v[d+48>>2];v[g+236>>2]=v[d+44>>2];v[g+240>>2]=c;c=v[d+56>>2];v[g+244>>2]=v[d+52>>2];v[g+248>>2]=c;v[g+252>>2]=v[d+60>>2];d=4;if(!((e|0)==(f|0)|(e|0)==(i|0)|(!e|(e|0)==(p|0)))){d=(e<<6)+g|0;z[g+256>>2]=z[d>>2];z[g+260>>2]=z[d+4>>2];z[g+264>>2]=z[d+8>>2];z[g+268>>2]=z[d+12>>2];z[g+272>>2]=z[d+16>>2];z[g+276>>2]=z[d+20>>2];z[g+280>>2]=z[d+24>>2];z[g+284>>2]=z[d+28>>2];z[g+288>>2]=z[d+32>>2];z[g+292>>2]=z[d+36>>2];z[g+296>>2]=z[d+40>>2];c=v[d+48>>2];v[g+300>>2]=v[d+44>>2];v[g+304>>2]=c;c=v[d+56>>2];v[g+308>>2]=v[d+52>>2];v[g+312>>2]=c;v[g+316>>2]=v[d+60>>2];d=5}v[a+4096>>2]=b+d}function XV(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=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0);h=xa-112|0;xa=h;l=z[d+20>>2];o=z[d+16>>2];m=z[d+24>>2];n=z[d>>2];r=C(n+n);q=z[d+8>>2];p=z[d+4>>2];g=z[d+12>>2];i=C(g+g);j=z[c+8>>2];t=C(C(C(r*q)-C(p*i))*j);z[h+84>>2]=m-t;q=C(j*C(C(q*i)+C(r*p)));z[h+80>>2]=l-q;z[h+72>>2]=t+m;z[h+68>>2]=l+q;l=C(j*C(C(n*r)+C(C(g*i)+C(-1))));z[h+76>>2]=o-l;z[h+64>>2]=o+l;z[h+88>>2]=z[c+4>>2];o=z[f+4>>2];r=C(o+o);l=z[f+8>>2];j=C(r*l);g=z[f>>2];n=C(g+g);i=z[f+12>>2];m=C(n*i);z[h+28>>2]=j-m;z[h+20>>2]=j+m;g=C(C(1)-C(g*n));j=C(o*r);z[h+32>>2]=g-j;k=g;g=C(l+l);m=C(l*g);z[h+16>>2]=k-m;l=C(n*l);r=C(r*i);z[h+24>>2]=l+r;o=C(n*o);n=C(g*i);z[h+12>>2]=o-n;z[h+8>>2]=l-r;z[h+4>>2]=o+n;z[h>>2]=C(C(1)-j)-m;z[h+36>>2]=z[f+16>>2];z[h+40>>2]=z[f+20>>2];z[h+44>>2]=z[f+24>>2];z[h+48>>2]=z[e+4>>2];z[h+52>>2]=z[e+8>>2];z[h+56>>2]=z[e+12>>2];d=0;l=F_(h- -64|0,h+76|0,h+36|0,h+48|0,h,h+108|0,h+96|0);w=z[h+88>>2];a:{if(l>C(w*w)){break a}b:{c:{if(l==C(0)){t=z[h+32>>2];u=z[h+28>>2];x=z[h+24>>2];y=z[h+20>>2];A=z[h+16>>2];B=z[h+12>>2];P=z[h+44>>2];Q=z[h+40>>2];R=z[h+36>>2];M=z[h+84>>2];N=z[h+80>>2];O=z[h+76>>2];E=z[h+8>>2];H=z[h+72>>2];F=z[h+4>>2];I=z[h+68>>2];G=z[h>>2];J=z[h+64>>2];break c}H=z[h+72>>2];o=z[h+108>>2];M=z[h+84>>2];n=z[h+96>>2];E=z[h+8>>2];r=z[h+100>>2];y=z[h+20>>2];g=z[h+104>>2];t=z[h+32>>2];P=z[h+44>>2];i=C(C(H+C(o*C(M-H)))-C(C(C(C(n*E)+C(r*y))+C(g*t))+P));J=z[h+64>>2];O=z[h+76>>2];G=z[h>>2];B=z[h+12>>2];x=z[h+24>>2];R=z[h+36>>2];j=C(C(J+C(o*C(O-J)))-C(C(C(C(n*G)+C(r*B))+C(g*x))+R));I=z[h+68>>2];N=z[h+80>>2];F=z[h+4>>2];A=z[h+16>>2];u=z[h+28>>2];Q=z[h+40>>2];o=C(C(I+C(o*C(N-I)))-C(C(C(C(n*F)+C(r*A))+C(g*u))+Q));n=C(K(C(C(i*i)+C(C(j*j)+C(o*o)))));if(n==C(0)){break c}n=C(C(1)/n);z[a+8>>2]=i*n;z[a+4>>2]=o*n;z[a>>2]=j*n;l=C(w-C(K(l)));z[b>>2]=l>C(0)?l:C(0);break b}l=C(C(H*E)+C(C(J*G)+C(I*F)));o=C(C(M*E)+C(C(O*G)+C(F*N)));c=l>o;g=C(w+(c?l:o));n=C(C(P*E)+C(C(R*G)+C(F*Q)));j=C(D(C(C(t*E)+C(C(x*G)+C(F*u)))));S=z[h+56>>2];T=z[h+48>>2];U=z[h+52>>2];m=C(D(C(C(y*E)+C(C(B*G)+C(F*A)))));r=C(C(j*S)+C(C(C(D(C(C(E*E)+C(C(G*G)+C(F*F)))))*T)+C(U*m)));i=C(n-r);if(gi;q=C(w+(c?g:i));p=C(C(P*y)+C(C(R*B)+C(Q*A)));k=C(D(C(C(t*y)+C(C(x*B)+C(u*A)))));m=C(C(k*S)+C(C(m*T)+C(U*C(D(C(C(y*y)+C(C(B*B)+C(A*A))))))));s=C(p-m);if(qi?i:g;if(gi;m=C(w+(c?g:i));q=C(C(P*t)+C(C(R*x)+C(Q*u)));j=C(C(C(D(C(C(t*t)+C(C(x*x)+C(u*u)))))*S)+C(C(j*T)+C(U*k)));p=C(q-j);if(mi?i:g;if(gC(0)){p=g;g=C(C(1)/C(K(k)));p=C(p*g);q=C(j*g);m=C(i*g)}k=C(C(m*F)-C(G*q));v=C(C(q*E)-C(F*p));s=C(C(p*G)-C(E*m));d:{if(!(C(D(k))>C(9.999999974752427e-7)?1:C(D(v))>C(9.999999974752427e-7)|C(D(s))>C(9.999999974752427e-7))){break d}g=C(0);i=C(0);j=C(0);L=C(C(k*k)+C(C(v*v)+C(s*s)));if(L>C(0)){g=C(C(1)/C(K(L)));j=C(k*g);i=C(s*g);g=C(v*g)}k=C(C(H*j)+C(C(J*g)+C(I*i)));s=C(C(M*j)+C(C(O*g)+C(N*i)));c=k>s;v=C(w+(c?k:s));L=C(C(P*j)+C(C(R*g)+C(Q*i)));V=C(C(C(D(C(C(t*j)+C(C(x*g)+C(u*i)))))*S)+C(C(C(D(C(C(E*j)+C(C(G*g)+C(F*i)))))*T)+C(U*C(D(C(C(y*j)+C(C(B*g)+C(A*i))))))));W=C(L-V);if(vs?s:k;if(!(kC(9.999999974752427e-7)?1:C(D(v))>C(9.999999974752427e-7)|C(D(s))>C(9.999999974752427e-7))){break e}g=C(0);i=C(0);j=C(0);X=C(C(k*k)+C(C(v*v)+C(s*s)));if(X>C(0)){g=C(C(1)/C(K(X)));j=C(k*g);i=C(s*g);g=C(v*g)}k=C(C(H*j)+C(C(J*g)+C(I*i)));s=C(C(M*j)+C(C(O*g)+C(N*i)));c=k>s;v=C(C(P*j)+C(C(R*g)+C(Q*i)));X=C(C(C(D(C(C(t*j)+C(C(x*g)+C(u*i)))))*S)+C(C(C(D(C(C(E*j)+C(C(G*g)+C(F*i)))))*T)+C(U*C(D(C(C(y*j)+C(C(B*g)+C(A*i))))))));Y=C(v-X);Z=C(w+(c?k:s));if(Y>Z){break a}v=C(v+X);k=C((c?s:k)-w);if(vs?s:k;if(!(kC(9.999999974752427e-7)?1:C(D(j))>C(9.999999974752427e-7)|C(D(i))>C(9.999999974752427e-7))){break f}m=C(0);q=C(0);p=C(0);k=C(C(g*g)+C(C(j*j)+C(i*i)));if(k>C(0)){p=g;g=C(C(1)/C(K(k)));p=C(p*g);q=C(i*g);m=C(j*g)}g=C(C(H*p)+C(C(J*m)+C(I*q)));i=C(C(M*p)+C(C(O*m)+C(N*q)));c=g>i;j=C(w+(c?g:i));k=C(C(P*p)+C(C(R*m)+C(Q*q)));t=C(C(C(D(C(C(t*p)+C(C(x*m)+C(u*q)))))*S)+C(C(C(D(C(C(E*p)+C(C(G*m)+C(F*q)))))*T)+C(U*C(D(C(C(y*p)+C(C(B*m)+C(A*q))))))));u=C(k-t);if(ji?i:g;if(!(g>2]=l>C(0)?l:C(0);b=C(C(r*C(C(C(H+M)*C(.5))-P))+C(C(o*C(C(C(J+O)*C(.5))-R))+C(C(C(C(I+N)*C(.5))-Q)*n)))>2]=b?C(-r):r;z[a+4>>2]=b?C(-n):n;z[a>>2]=b?C(-o):o}d=1}xa=h+112|0;return d|0}function KN(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=xa-48|0;xa=h;v[h+44>>2]=b;e=w[b+47|0];f=w[b+46|0];v[h+8>>2]=0;v[h+12>>2]=0;l=v[a+4>>2];a:{if(!b|!w[l+1812|0]){break a}if(w[e+(B(f,7)+131536|0)|0]){if(!(f>>>0>4|e>>>0>4)){b:{if(!(e?f:0)){e=v[l+932>>2];if(!e){m=xa-16|0;xa=m;i=l+644|0;f=v[i+284>>2];if(f){e=v[37696];g=Ba[v[v[e>>2]+20>>2]](e)|0?45213:63804;j=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,g,18373,180)|0}else{j=0}v[m+12>>2]=j;e=v[i+268>>2];c:{if(e>>>0>=(v[i+272>>2]&2147483647)>>>0){e=0;g=i+4|0;f=v[g+268>>2];n=f&2147483647?f<<1:1;d:{if(!n){break d}f=n<<2;if(!(w[g+256|0]|f>>>0>256)){t[g+256|0]=1;e=g;break d}if(!f){break d}e=v[37696];k=Ba[v[v[e>>2]+20>>2]](e)|0?45213:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,k,16608,553)|0}k=v[g+264>>2];p=(k<<2)+e|0;if((k|0)>0){o=v[g+260>>2];f=e;while(1){v[f>>2]=v[o>>2];o=o+4|0;f=f+4|0;if(p>>>0>f>>>0){continue}break}}v[p>>2]=v[m+12>>2];e:{if(v[g+268>>2]<0){break e}f=v[g+260>>2];if((f|0)==(g|0)){t[g+256|0]=0;break e}if(!f){break e}k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,f);k=v[g+264>>2]}v[g+268>>2]=n;v[g+260>>2]=e;v[g+264>>2]=k+1;break c}v[v[i+264>>2]+(e<<2)>>2]=j;v[i+268>>2]=e+1}e=(j+(v[i+276>>2]<<7)|0)-128|0;if(j>>>0<=e>>>0){f=v[i+288>>2];while(1){v[e>>2]=f;f=e;e=e-128|0;if(j>>>0<=e>>>0){continue}break}v[i+288>>2]=f}xa=m+16|0;e=v[l+932>>2]}v[l+932>>2]=v[e>>2];v[l+924>>2]=v[l+924>>2]+1;g=e+80|0;f=1;break b}e=v[l+640>>2];if(!e){m=xa-16|0;xa=m;i=l+352|0;f=v[i+284>>2];if(f){e=v[37696];g=Ba[v[v[e>>2]+20>>2]](e)|0?45371:63804;j=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,g,18373,180)|0}else{j=0}v[m+12>>2]=j;e=v[i+268>>2];f:{if(e>>>0>=(v[i+272>>2]&2147483647)>>>0){e=0;g=i+4|0;f=v[g+268>>2];n=f&2147483647?f<<1:1;g:{if(!n){break g}f=n<<2;if(!(w[g+256|0]|f>>>0>256)){t[g+256|0]=1;e=g;break g}if(!f){break g}e=v[37696];k=Ba[v[v[e>>2]+20>>2]](e)|0?45371:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,k,16608,553)|0}k=v[g+264>>2];p=(k<<2)+e|0;if((k|0)>0){o=v[g+260>>2];f=e;while(1){v[f>>2]=v[o>>2];o=o+4|0;f=f+4|0;if(p>>>0>f>>>0){continue}break}}v[p>>2]=v[m+12>>2];h:{if(v[g+268>>2]<0){break h}f=v[g+260>>2];if((f|0)==(g|0)){t[g+256|0]=0;break h}if(!f){break h}k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,f);k=v[g+264>>2]}v[g+268>>2]=n;v[g+260>>2]=e;v[g+264>>2]=k+1;break f}v[v[i+264>>2]+(e<<2)>>2]=j;v[i+268>>2]=e+1}e=(j+B(v[i+276>>2],272)|0)-272|0;if(j>>>0<=e>>>0){f=v[i+288>>2];while(1){v[e>>2]=f;f=e;e=e-272|0;if(j>>>0<=e>>>0){continue}break}v[i+288>>2]=f}xa=m+16|0;e=v[l+640>>2]}v[l+640>>2]=v[e>>2];v[l+632>>2]=v[l+632>>2]+1;g=e+80|0;f=4}v[e+76>>2]=g;t[e+66|0]=0;t[e+65|0]=f;t[e+64|0]=0;v[e+16>>2]=2139095039;v[e+20>>2]=2139095039;v[e+48>>2]=0;v[e+52>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+8>>2]=0;v[e+12>>2]=1065353216;v[e>>2]=0;v[e+4>>2]=0;v[e+24>>2]=2139095039;v[e+28>>2]=0;v[e+56>>2]=0;v[e+60>>2]=1065353216;v[e+40>>2]=0;v[e+44>>2]=1065353216;v[h+8>>2]=e;t[h+15|0]=w[h+15|0]|1;t[e+64|0]=0;t[e+66|0]=0;v[e+24>>2]=2139095039;v[e+28>>2]=0;v[e+16>>2]=2139095039;v[e+20>>2]=2139095039;v[e+8>>2]=0;v[e+12>>2]=1065353216;v[e>>2]=0;v[e+4>>2]=0;break a}v[h+8>>2]=0;t[h+15|0]=w[h+15|0]|3;break a}t[h+15|0]=0;v[h+8>>2]=0}v[h+24>>2]=0;v[h+28>>2]=0;v[h+16>>2]=0;v[h+20>>2]=0;t[h+29|0]=d;t[h+30|0]=w[b+40|0]<<2&8|((c|0)>0?2:c>>>31|0)|32;c=w[b+43|0];if(c&2){t[b+43|0]=c|64}c=v[a+72>>2];i:{if(c>>>0>=(v[a+76>>2]&2147483647)>>>0){c=0;d=v[a+76>>2];f=d&2147483647?d<<1:1;j:{if(!f){break j}d=f<<4;if(!d){break j}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?27179:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,e,16608,553)|0}d=v[a+72>>2];if((d|0)>0){g=(d<<4)+c|0;e=v[a+68>>2];d=c;while(1){j=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=j;j=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=j;e=e+16|0;d=d+16|0;if(g>>>0>d>>>0){continue}break}d=v[a+72>>2]}e=v[h+20>>2];d=(d<<4)+c|0;v[d>>2]=v[h+16>>2];v[d+4>>2]=e;e=v[h+28>>2];v[d+8>>2]=v[h+24>>2];v[d+12>>2]=e;k:{if(v[a+76>>2]<0){break k}d=v[a+68>>2];if(!d){break k}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}v[a+76>>2]=f;v[a+68>>2]=c;break i}d=v[h+20>>2];c=v[a+68>>2]+(c<<4)|0;v[c>>2]=v[h+16>>2];v[c+4>>2]=d;d=v[h+28>>2];v[c+8>>2]=v[h+24>>2];v[c+12>>2]=d}v[a+72>>2]=v[a+72>>2]+1;c=v[a+96>>2];l:{if(c>>>0>=(v[a+100>>2]&2147483647)>>>0){c=0;d=v[a+100>>2];f=d&2147483647?d<<1:1;m:{if(!f){break m}d=f<<3;if(!d){break m}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?43713:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,e,16608,553)|0}d=v[a+96>>2];if((d|0)>0){g=(d<<3)+c|0;e=v[a+92>>2];d=c;while(1){j=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=j;e=e+8|0;d=d+8|0;if(g>>>0>d>>>0){continue}break}d=v[a+96>>2]}e=v[h+12>>2];d=(d<<3)+c|0;v[d>>2]=v[h+8>>2];v[d+4>>2]=e;n:{if(v[a+100>>2]<0){break n}d=v[a+92>>2];if(!d){break n}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}v[a+100>>2]=f;v[a+92>>2]=c;break l}d=v[h+12>>2];c=v[a+92>>2]+(c<<3)|0;v[c>>2]=v[h+8>>2];v[c+4>>2]=d}v[a+96>>2]=v[a+96>>2]+1;c=v[a+84>>2];o:{if(c>>>0>=(v[a+88>>2]&2147483647)>>>0){b=0;c=v[a+88>>2];f=c&2147483647?c<<1:1;p:{if(!f){break p}c=f<<2;if(!c){break p}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?57149:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,16608,553)|0}d=v[a+84>>2];g=(d<<2)+b|0;if((d|0)>0){e=v[a+80>>2];c=b;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}v[g>>2]=v[h+44>>2];q:{if(v[a+88>>2]<0){break q}c=v[a+80>>2];if(!c){break q}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);d=v[a+84>>2]}v[a+88>>2]=f;v[a+80>>2]=b;v[a+84>>2]=d+1;break o}v[v[a+80>>2]+(c<<2)>>2]=b;v[a+84>>2]=c+1}v[v[h+44>>2]+68>>2]=v[a+64>>2]|(v[a+72>>2]<<3)+2147483640|-2147483648;xa=h+48|0}function K1(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0);j=xa-112|0;xa=j;t=z[b>>2];J=z[c>>2];q=z[b+4>>2];F=z[c+4>>2];B=z[b+8>>2];y=z[c+8>>2];v[j+108>>2]=0;z[j+104>>2]=y-B;z[j+100>>2]=F-q;S=C(J-t);z[j+96>>2]=S;G=z[d>>2];D=z[e>>2];L=z[d+4>>2];A=z[e+4>>2];P=z[d+8>>2];E=z[e+8>>2];v[j+92>>2]=0;k=C(E-P);z[j+88>>2]=k;l=C(A-L);z[j+84>>2]=l;o=C(D-G);z[j+80>>2]=o;H=z[f>>2];Q=z[f+4>>2];R=z[f+8>>2];v[j+76>>2]=0;s=C(R-P);z[j+72>>2]=s;w=C(Q-L);z[j+68>>2]=w;I=C(H-G);z[j+64>>2]=I;v[j+60>>2]=0;z[j+56>>2]=R-E;z[j+52>>2]=Q-A;z[j+48>>2]=H-D;Q=C(C(C(o*o)+C(l*l))+C(k*k));R=C(C(C(I*I)+C(w*w))+C(s*s));D=C(C(C(o*I)+C(l*w))+C(k*s));A=C(C(1)/C(C(Q*R)-C(D*D)));H=C(C(o*w)-C(I*l));M=C(C(l*s)-C(w*k));N=C(C(k*I)-C(s*o));E=C(C(1)/C(K(C(C(H*H)+C(C(M*M)+C(N*N))))));a:{b:{m=C(B-P);B=C(H*E);H=C(M*E);r=C(q-L);q=C(N*E);E=C(C(m*B)+C(C(C(t-G)*H)+C(r*q)));t=C(C(C(y-P)*B)+C(C(C(J-G)*H)+C(C(F-L)*q)));if(!(C(E*t)>2];V=z[b+4>>2];r=z[b>>2];break b}F=z[j+104>>2];y=z[j+100>>2];J=C(C(C(-1)/C(C(B*F)+C(C(H*S)+C(q*y))))*E);S=z[b+8>>2];F=C(C(C(F*J)+S)-P);r=z[b>>2];M=C(C(r+C(z[j+96>>2]*J))-G);V=z[b+4>>2];y=C(C(V+C(y*J))-L);N=C(C(F*k)+C(C(M*o)+C(l*y)));y=C(C(F*s)+C(C(M*I)+C(w*y)));F=C(A*C(C(R*N)-C(D*y)));if(!(F>=C(-1.1920928955078125e-7))|!(F<=C(1.0000001192092896))){break b}y=C(A*C(C(Q*y)-C(D*N)));if(!(y>=C(-1.1920928955078125e-7))|!(y<=C(1.0000001192092896))|!(C(F+y)>2]=J;z[h>>2]=F;z[i>>2]=y;v[a>>2]=0;break a}F=C(t*t);y=C(E*E);J=C(C(z[c>>2]-C(H*t))-G);M=C(C(z[c+4>>2]-C(q*t))-L);t=C(C(z[c+8>>2]-C(B*t))-P);N=C(C(C(J*o)+C(M*l))+C(t*k));t=C(C(C(J*I)+C(M*w))+C(t*s));M=C(A*C(C(R*N)-C(D*t)));N=C(A*C(C(Q*t)-C(D*N)));f=M>=C(-1.1920928955078125e-7)&M<=C(1.0000001192092896)&(N>=C(-1.1920928955078125e-7)&N<=C(1.0000001192092896))&C(M+N)=C(-1.1920928955078125e-7)&S<=C(1.0000001192092896)&(V>=C(-1.1920928955078125e-7)&V<=C(1.0000001192092896))&C(S+V)>2]=b?C(0):C(1);z[h>>2]=b?S:M;z[i>>2]=b?V:N;z[a>>2]=b?y:F;break a}c=j+80|0;P=z[c+8>>2];ca=z[e+8>>2];da=z[e>>2];ea=z[e+4>>2];D=z[j+56>>2];A=z[j+48>>2];E=z[j+52>>2];e=j- -64|0;t=z[e+8>>2];B=z[e>>2];H=z[e+4>>2];k=z[j+104>>2];l=z[j+96>>2];o=z[j+100>>2];q=C(C(k*k)+C(C(l*l)+C(o*o)));r=C(C(1)/q);W=z[c+8>>2];s=z[c>>2];w=z[c+4>>2];x=C(C(k*W)+C(C(l*s)+C(o*w)));aa=C(C(s*s)+C(w*w));p=C(C(W*W)+aa);n=C(C(q*p)-C(x*x));c=j+32|0;Z=x;I=z[b+8>>2];J=z[d+8>>2];U=C(I-J);G=z[b>>2];Q=z[d>>2];T=C(G-Q);L=z[b+4>>2];R=z[d+4>>2];u=C(L-R);m=C(C(W*U)+C(C(s*T)+C(w*u)));U=C(C(k*U)+C(C(l*T)+C(o*u)));x=n!=C(0)?C(C(C(x*m)-C(p*U))/n):C(1);x=xC(0)?x:C(0))))):C(1);x=xC(0)?x:C(0);b=q!=C(0);p=b?C(r*C(C(Z*x)-U)):C(1);p=pC(0)?p:C(0);z[c+12>>2]=U;n=C(C(t*t)+C(C(B*B)+C(H*H)));p=C(C(k*t)+C(C(l*B)+C(o*H)));T=C(C(q*n)-C(p*p));X=p;Z=C(I-J);u=Z;fa=C(G-Q);m=fa;ga=C(L-R);O=ga;Y=C(C(t*u)+C(C(B*m)+C(H*O)));u=C(C(k*u)+C(C(l*m)+C(o*O)));p=T!=C(0)?C(C(C(p*Y)-C(n*u))/T):C(1);p=pC(0)?p:C(0))))):C(1);p=pC(0)?p:C(0);n=b?C(r*C(C(X*p)-u)):C(1);n=nC(0)?n:C(0);z[c+8>>2]=T;u=C(C(D*D)+C(C(A*A)+C(E*E)));n=C(C(k*D)+C(C(l*A)+C(o*E)));m=C(C(q*u)-C(n*n));_=n;O=C(I-ca);Y=C(G-da);X=C(L-ea);$=C(C(D*O)+C(C(A*Y)+C(E*X)));O=C(C(k*O)+C(C(l*Y)+C(o*X)));n=m!=C(0)?C(C(C(n*$)-C(u*O))/m):C(1);n=nC(0)?n:C(0))))):C(1);n=nC(0)?n:C(0);u=b?C(r*C(C(_*n)-O)):C(1);u=uC(0)?u:C(0);z[c+4>>2]=u;O=q;q=C(C(P*P)+aa);m=C(C(k*P)+C(C(l*s)+C(o*w)));O=C(C(O*q)-C(m*m));aa=r;_=m;r=Z;Y=fa;X=ga;$=C(C(P*r)+C(C(s*Y)+C(w*X)));r=C(C(k*r)+C(C(l*Y)+C(o*X)));m=O!=C(0)?C(C(C(m*$)-C(q*r))/O):C(1);m=mC(0)?m:C(0))))):C(1);q=qC(0)?q:C(0);r=b?C(aa*C(C(_*q)-r)):C(1);r=rC(0)?r:C(0);z[c>>2]=r;z[j+28>>2]=x;z[j+24>>2]=p;z[j+20>>2]=n;z[j+16>>2]=q;m=C(C(G+C(l*U))-C(Q+C(s*x)));Z=C(m*m);m=C(C(L+C(o*U))-C(R+C(w*x)));W=C(C(I+C(k*U))-C(J+C(W*x)));z[j+12>>2]=Z+C(C(m*m)+C(W*W));B=C(C(G+C(l*T))-C(Q+C(B*p)));m=C(B*B);B=C(C(L+C(o*T))-C(R+C(H*p)));t=C(C(I+C(k*T))-C(J+C(t*p)));z[j+8>>2]=m+C(C(B*B)+C(t*t));A=C(C(G+C(l*u))-C(da+C(A*n)));m=C(A*A);A=C(C(L+C(o*u))-C(ea+C(E*n)));D=C(C(I+C(k*u))-C(ca+C(D*n)));z[j+4>>2]=m+C(C(A*A)+C(D*D));l=C(C(G+C(l*r))-C(Q+C(s*q)));m=C(l*l);l=C(C(L+C(o*r))-C(R+C(w*q)));k=C(C(I+C(k*r))-C(J+C(P*q)));z[j>>2]=m+C(C(l*l)+C(k*k));o=z[j+20>>2];k=z[j+8>>2];s=z[j+4>>2];b=k>s;w=z[j>>2];d=!(ww);l=d?b?C(C(1)-o):C(0):z[j+16>>2];o=d?b?o:z[j+24>>2]:C(0);k=d?b?s:k:w;s=z[(d?b?c|4:c|8:c)>>2];c:{if(ba){b=k>y;z[g>>2]=b?C(0):s;z[h>>2]=b?S:l;z[i>>2]=b?V:o;k=b?y:k;break c}if(f){b=k>F;z[g>>2]=b?C(1):s;z[h>>2]=b?M:l;z[i>>2]=b?N:o;k=b?F:k;break c}z[g>>2]=s;z[h>>2]=l;z[i>>2]=o}z[a>>2]=k}xa=j+112|0}function Yx(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=C(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=C(0),u=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;e=xa-1328|0;xa=e;a:{if(w[a+488|0]){a9(v[37696],8,12859,1211,76502,0);break a}m=a+112|0;Dx(a,m);f=v[a+448>>2];D=v[a+468>>2];H=I9(v[d+40>>2],0,B(D,c)<<2);g=w[v[a+476>>2]];l=v[d+52>>2];v[e+1320>>2]=0;d=e+1312|0;v[d>>2]=0;v[d+4>>2]=0;d=e+1304|0;v[d>>2]=0;v[d+4>>2]=0;d=e+1296|0;v[d>>2]=0;v[d+4>>2]=0;d=e+1288|0;v[d>>2]=0;v[d+4>>2]=0;v[e+1280>>2]=0;v[e+1284>>2]=0;r=Bx(l,f,e+1280|0);u=v[e+1292>>2];n=l+4|0;o=v[a+468>>2];j=(o<<3)+15&-16;f=v[l+4>>2];d=v[l+8>>2];h=v[(f+(d<<2)|0)-4>>2];if((j|0)<=(h-v[l+16>>2]|0)){h=h-j|0;v[e+320>>2]=h;b:{if(d>>>0>=(v[l+12>>2]&2147483647)>>>0){Us(n,e+320|0);break b}v[f+(d<<2)>>2]=h;v[l+8>>2]=d+1}E=v[e+320>>2]}if(!c){break a}s=g&1;F=o<<2;p=F+E|0;t=C(C(1)/z[a+464>>2]);I=o&-4;G=o&3;J=o-1>>>0<3;while(1){g=B(A,12)+b|0;d=v[g+8>>2];I9(e+320|0,0,960);v[e+1260>>2]=2139095039;v[e+1244>>2]=-8388609;v[e+1180>>2]=2139095039;v[e+1164>>2]=-8388609;v[e+1100>>2]=2139095039;v[e+1084>>2]=-8388609;v[e+1020>>2]=2139095039;v[e+1004>>2]=-8388609;v[e+940>>2]=2139095039;v[e+924>>2]=-8388609;v[e+860>>2]=2139095039;v[e+844>>2]=-8388609;v[e+780>>2]=2139095039;v[e+764>>2]=-8388609;v[e+700>>2]=2139095039;v[e+684>>2]=-8388609;v[e+620>>2]=2139095039;v[e+604>>2]=-8388609;v[e+540>>2]=2139095039;v[e+524>>2]=-8388609;v[e+460>>2]=2139095039;v[e+444>>2]=-8388609;v[e+380>>2]=2139095039;v[e+364>>2]=-8388609;c:{if(v[d+24>>2]){f=v[d+32>>2];z[e+288>>2]=z[f>>2];z[e+292>>2]=z[f+4>>2];z[e+296>>2]=z[f+8>>2];z[e+300>>2]=z[f+12>>2];z[e+304>>2]=z[f+16>>2];z[e+308>>2]=z[f+20>>2];i=z[f+24>>2];break c}v[e+304>>2]=0;v[e+308>>2]=0;v[e+296>>2]=0;v[e+300>>2]=1065353216;v[e+288>>2]=0;v[e+292>>2]=0;i=C(0)}z[e+312>>2]=i;d:{if(v[d+28>>2]){f=v[d+36>>2];z[e+256>>2]=z[f>>2];z[e+260>>2]=z[f+4>>2];z[e+264>>2]=z[f+8>>2];z[e+268>>2]=z[f+12>>2];z[e+272>>2]=z[f+16>>2];z[e+276>>2]=z[f+20>>2];i=z[f+24>>2];break d}v[e+272>>2]=0;v[e+276>>2]=0;v[e+264>>2]=0;v[e+268>>2]=1065353216;v[e+256>>2]=0;v[e+260>>2]=0;i=C(0)}z[e+280>>2]=i;v[e+248>>2]=0;v[e+240>>2]=0;v[e+244>>2]=0;j=Ba[v[d+12>>2]](e+320|0,e+240|0,12,e+192|0,v[d+20>>2],e+288|0,e+256|0,(x[d+10>>1]&512)>>>9|0,e+224|0,e+208|0)|0;h=v[g+4>>2];g=v[g>>2];k=I9(E,0,F);e:{if(!j){break e}f:{if((g|0)==-2147483648){break f}f=0;if((h|0)==-2147483648){break f}while(1){d=(e+320|0)+B(f,80)|0;z[e+160>>2]=z[d>>2];z[e+164>>2]=z[d+4>>2];i=z[d+8>>2];v[e+172>>2]=0;z[e+168>>2]=i;z[e+176>>2]=z[d+16>>2];z[e+180>>2]=z[d+20>>2];i=z[d+24>>2];v[e+188>>2]=0;z[e+184>>2]=i;z[e+128>>2]=z[d+32>>2];z[e+132>>2]=z[d+36>>2];i=z[d+40>>2];v[e+140>>2]=0;z[e+136>>2]=i;z[e+144>>2]=z[d+48>>2];z[e+148>>2]=z[d+52>>2];i=z[d+56>>2];v[e+156>>2]=0;z[e+152>>2]=i;g:{if(g>>>0<=h>>>0){Wx(a,s,g,h,u,e+160|0,e+128|0,e+96|0,e- -64|0,k);break g}Wx(a,s,h,g,u,e+128|0,e+160|0,e- -64|0,e+96|0,k)}f=f+1|0;if((j|0)!=(f|0)){continue}break}break e}d=0;if((g|0)==-2147483648){while(1){f=(e+320|0)+B(d,80)|0;z[e+160>>2]=z[f+32>>2];z[e+164>>2]=z[f+36>>2];i=z[f+40>>2];v[e+172>>2]=0;z[e+168>>2]=i;z[e+176>>2]=z[f+48>>2];z[e+180>>2]=z[f+52>>2];i=z[f+56>>2];v[e+188>>2]=0;z[e+184>>2]=i;Xx(e+32|0,a,s,h,u,e+160|0,k);d=d+1|0;if((j|0)!=(d|0)){continue}break e}}while(1){f=(e+320|0)+B(d,80)|0;z[e+160>>2]=z[f>>2];z[e+164>>2]=z[f+4>>2];i=z[f+8>>2];v[e+172>>2]=0;z[e+168>>2]=i;z[e+176>>2]=z[f+16>>2];z[e+180>>2]=z[f+20>>2];i=z[f+24>>2];v[e+188>>2]=0;z[e+184>>2]=i;Xx(e,a,s,g,u,e+160|0,k);d=d+1|0;if((j|0)!=(d|0)){continue}break}}h:{if(!o){break h}h=0;d=0;g=0;if(!J){while(1){f=d<<2;z[f+p>>2]=t*z[f+k>>2];j=f|4;z[j+p>>2]=t*z[k+j>>2];j=f|8;z[j+p>>2]=t*z[k+j>>2];f=f|12;z[f+p>>2]=t*z[f+k>>2];d=d+4|0;g=g+4|0;if((I|0)!=(g|0)){continue}break}}if(!G){break h}while(1){f=d<<2;z[f+p>>2]=t*z[f+k>>2];d=d+1|0;h=h+1|0;if((G|0)!=(h|0)){continue}break}}qx(m);v[e+1308>>2]=p;v[e+1296>>2]=0;v[e+1304>>2]=0;v[e+1312>>2]=(B(A,D)<<2)+H;i:{if(s){v[e+168>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;d=e+1280|0;vx(m,d);I9(v[e+1288>>2],0,v[a+448>>2]<<5);rx(m,e+160|0,d);Hx(m,d);Jx(m,d);Ix(m,d);break i}v[e+168>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;d=e+1280|0;vx(m,d);I9(v[e+1288>>2],0,v[a+448>>2]<<5);rx(m,e+160|0,d);Hx(m,d);Jx(m,d);Lx(m,d);Mx(m,d)}d=v[l+16>>2];j:{if(!(d>>>0<=k>>>0&k>>>0>2]>>>0)){if(!k){break j}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,k);break j}K=v[l+4>>2];h=0;q=v[l+8>>2];g=q;while(1){j=h;h=h+1|0;f=g;g=f-1|0;d=(g<<2)+K|0;if(k>>>0>y[d>>2]){continue}break}k:{if(f>>>0>=q>>>0){break k}g=0;h=j&3;if(h){while(1){v[d>>2]=v[v[n>>2]+(f<<2)>>2];f=f+1|0;d=d+4|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}if(j-1>>>0<3){break k}while(1){g=f<<2;v[d>>2]=v[g+v[n>>2]>>2];v[d+4>>2]=v[(g+v[n>>2]|0)+4>>2];v[d+8>>2]=v[(g+v[n>>2]|0)+8>>2];v[d+12>>2]=v[(g+v[n>>2]|0)+12>>2];d=d+16|0;f=f+4|0;if((q|0)!=(f|0)){continue}break}}v[l+8>>2]=q-1}d=v[l+16>>2];l:{if(!(d>>>0<=r>>>0&d+v[l+20>>2]>>>0>r>>>0)){if(!r){break l}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,r);break l}q=v[l+4>>2];f=0;k=v[l+8>>2];h=k;while(1){j=f;f=f+1|0;g=h;h=g-1|0;d=q+(h<<2)|0;if(y[d>>2]>>0){continue}break}m:{if(g>>>0>=k>>>0){break m}f=0;h=j&3;if(h){while(1){v[d>>2]=v[v[n>>2]+(g<<2)>>2];g=g+1|0;d=d+4|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}}if(j-1>>>0<3){break m}while(1){f=g<<2;v[d>>2]=v[f+v[n>>2]>>2];v[d+4>>2]=v[(f+v[n>>2]|0)+4>>2];v[d+8>>2]=v[(f+v[n>>2]|0)+8>>2];v[d+12>>2]=v[(f+v[n>>2]|0)+12>>2];d=d+16|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}v[l+8>>2]=k-1}A=A+1|0;if((A|0)!=(c|0)){continue}break}}xa=e+1328|0}function dV(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=0,x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0);i=xa-80|0;xa=i;a:{b:{c:{d:{e:{f:{g:{switch(v[b>>2]+1|0){case 1:e=z[c+20>>2];f=z[c+16>>2];d=C(C(z[b+4>>2]+C(0))*d);z[a+8>>2]=z[c+24>>2]-d;z[a+4>>2]=e-d;z[a>>2]=f-d;e=z[c+20>>2];f=z[c+16>>2];z[a+20>>2]=d+z[c+24>>2];z[a+16>>2]=d+e;z[a+12>>2]=d+f;break a;case 2:e=z[c>>2];f=C(e+e);j=z[c+8>>2];m=z[c+4>>2];h=z[c+12>>2];g=C(h+h);n=C(C(f*j)-C(m*g));k=C(C(e*f)+C(C(h*g)+C(-1)));g=C(C(j*g)+C(f*m));f=C(C(z[c+24>>2]*n)+C(C(z[c+16>>2]*k)+C(g*z[c+20>>2])));h=C(-f);e=C(D(g));m=C(D(n));b=mC(.9999989867210388))))){if(k>C(0)){k=C(f+C(0));g=C(-85070586659632215e21);break f}g=C(h-C(0));j=C(-85070586659632215e21);break c}if(!(!(e>C(.9999989867210388))|(!b|!(jC(0)){g=C(-85070586659632215e21);k=C(85070586659632215e21);e=C(f+C(0));break e}j=C(h-C(0));g=C(-85070586659632215e21);break c}g=C(-85070586659632215e21);k=C(85070586659632215e21);if(!(eC(.9999989867210388))|!(jC(0)){e=C(85070586659632215e21);f=C(f+C(0));break d}e=C(85070586659632215e21);f=C(85070586659632215e21);j=C(-85070586659632215e21);h=C(h-C(0));break b;case 3:n=z[c+20>>2];m=z[c+16>>2];e=z[c>>2];f=C(e+e);l=z[c+8>>2];o=z[c+4>>2];h=z[c+12>>2];g=C(h+h);k=z[b+8>>2];j=z[b+4>>2];p=C(C(C(C(C(D(C(C(f*l)-C(o*g))))*k)+j)+C(0))*d);z[a+8>>2]=z[c+24>>2]-p;q=n;n=C(C(C(j+C(k*C(D(C(C(l*g)+C(f*o))))))+C(0))*d);z[a+4>>2]=q-n;d=C(C(C(j+C(k*C(D(C(C(e*f)+C(C(h*g)+C(-1)))))))+C(0))*d);z[a>>2]=m-d;e=z[c+20>>2];f=z[c+16>>2];z[a+20>>2]=p+z[c+24>>2];z[a+16>>2]=n+e;z[a+12>>2]=d+f;break a;case 4:k=z[c+20>>2];j=z[c+16>>2];n=z[b+4>>2];m=z[c>>2];f=C(m+m);e=z[c+8>>2];y=C(f*e);h=z[c+4>>2];l=C(h+h);o=z[c+12>>2];A=C(l*o);g=C(n*C(y-A));E=z[c+24>>2];r=C(C(1)-C(m*f));s=C(h*l);m=z[b+12>>2];p=C(C(r-s)*m);F=p>C(0)?p:C(-p);q=g>C(0)?g:C(-g);p=C(l*e);G=C(f*o);g=z[b+8>>2];l=C(C(p+G)*g);l=C(C(C(F+C(q+(l>C(0)?l:C(-l))))+C(0))*d);z[a+20>>2]=E+l;z[a+8>>2]=E-l;l=C(m*C(p-G));F=l>C(0)?l:C(-l);h=C(f*h);l=C(e+e);o=C(o*l);f=C(n*C(h+o));q=f>C(0)?f:C(-f);f=C(e*l);e=C(g*C(r-f));l=C(C(C(F+C(q+(e>C(0)?e:C(-e))))+C(0))*d);z[a+16>>2]=k+l;e=C(n*C(C(C(1)-s)-f));f=e>C(0)?e:C(-e);e=C(g*C(h-o));h=C(f+(e>C(0)?e:C(-e)));e=C(m*C(y+A));d=C(C(C(h+(e>C(0)?e:C(-e)))+C(0))*d);z[a+12>>2]=j+d;z[a+4>>2]=k-l;z[a>>2]=j-d;break a;case 5:u=v[b+32>>2];if(t[b+36|0]&1){f=z[c+4>>2];g=C(f+f);e=z[c+8>>2];m=C(g*e);k=z[c>>2];h=C(k+k);j=z[c+12>>2];l=C(h*j);n=C(m-l);z[i+68>>2]=n;m=C(m+l);z[i+60>>2]=m;k=C(C(1)-C(k*h));r=C(f*g);l=C(k-r);z[i+72>>2]=l;q=k;k=C(e+e);s=C(e*k);o=C(q-s);z[i+56>>2]=o;e=C(h*e);g=C(g*j);p=C(e+g);z[i+64>>2]=p;f=C(h*f);h=C(k*j);y=C(f-h);z[i+52>>2]=y;A=C(e-g);z[i+48>>2]=A;E=C(f+h);z[i+44>>2]=E;r=C(C(C(1)-r)-s);z[i+40>>2]=r;if(v[b+12>>2]-1065353216|(v[b+8>>2]-1065353216|v[b+4>>2]-1065353216)){eV(i+40|0,b+4|0);l=z[i+72>>2];p=z[i+64>>2];m=z[i+60>>2];o=z[i+56>>2];y=z[i+52>>2];A=z[i+48>>2];E=z[i+44>>2];r=z[i+40>>2];n=z[i+68>>2]}b=v[u+56>>2]+B(w[u+55|0],20)|0;e=z[b>>2];f=z[b+4>>2];g=z[b+8>>2];h=C(C(C(e*A)+C(f*m))+C(g*l));k=C(C(C(e*E)+C(f*o))+C(g*n));g=C(C(C(e*r)+C(f*y))+C(g*p));u=w[u+54|0]-1|0;h:{if(!u){j=g;f=k;e=h;break h}e=h;f=k;j=g;while(1){x=z[b+12>>2];F=z[b+16>>2];q=z[b+20>>2];s=C(C(C(A*x)+C(m*F))+C(l*q));e=e>s?e:s;G=C(C(C(E*x)+C(o*F))+C(n*q));f=f>G?f:G;x=C(C(C(r*x)+C(y*F))+C(p*q));j=j>x?j:x;h=h>2];m=z[c+24>>2];q=C(j+C(0));j=z[c+16>>2];l=C(q+j);g=C(C(g-C(0))+j);j=C(C(l+g)*C(.5));d=C(d*C(.5));g=C(d*C(l-g));z[a+12>>2]=j+g;z[a>>2]=j-g;e=C(m+C(e+C(0)));h=C(m+C(h-C(0)));g=C(C(e+h)*C(.5));e=C(d*C(e-h));z[a+20>>2]=g+e;f=C(n+C(f+C(0)));h=C(n+C(k-C(0)));k=C(C(f+h)*C(.5));d=C(d*C(f-h));z[a+16>>2]=k+d;z[a+8>>2]=g-e;z[a+4>>2]=k-d;break a}fV(c,u+16|0,b+4|0,i+40|0,i+24|0);e=z[i+40>>2];h=z[i+24>>2];f=z[i+44>>2];g=z[i+28>>2];k=C(C(z[i+32>>2]+C(0))*d);j=z[i+48>>2];z[a+20>>2]=k+j;g=C(C(g+C(0))*d);z[a+16>>2]=f+g;d=C(C(h+C(0))*d);z[a+12>>2]=e+d;z[a+8>>2]=j-k;z[a+4>>2]=f-g;z[a>>2]=e-d;break a;case 6:fV(c,v[b+36>>2]+32|0,b+4|0,i+40|0,i+24|0);e=z[i+40>>2];h=z[i+24>>2];f=z[i+44>>2];g=z[i+28>>2];k=C(C(z[i+32>>2]+C(0))*d);j=z[i+48>>2];z[a+20>>2]=k+j;g=C(C(g+C(0))*d);z[a+16>>2]=f+g;d=C(C(h+C(0))*d);z[a+12>>2]=e+d;z[a+8>>2]=j-k;z[a+4>>2]=f-g;z[a>>2]=e-d;break a;case 7:e=z[b+12>>2];f=z[b+8>>2];h=z[b+16>>2];v[i+60>>2]=0;v[i+64>>2]=1065353216;v[i+52>>2]=0;v[i+56>>2]=0;z[i+48>>2]=h;z[i+44>>2]=f;z[i+40>>2]=e;fV(c,v[b+4>>2]+16|0,i+40|0,i+24|0,i+8|0);e=z[i+24>>2];h=z[i+8>>2];f=z[i+28>>2];g=z[i+12>>2];k=C(C(z[i+16>>2]+C(0))*d);j=z[i+32>>2];z[a+20>>2]=k+j;g=C(C(g+C(0))*d);z[a+16>>2]=f+g;d=C(C(h+C(0))*d);z[a+12>>2]=e+d;z[a+8>>2]=j-k;z[a+4>>2]=f-g;z[a>>2]=e-d;break a;case 0:case 8:break g;default:break a}}a9(v[37696],32,7548,364,66912,0);break a}e=C(85070586659632215e21)}f=C(85070586659632215e21)}j=C(-85070586659632215e21);h=C(-85070586659632215e21);break b}k=C(85070586659632215e21);e=C(85070586659632215e21);f=C(85070586659632215e21);h=C(-85070586659632215e21)}if(d!=C(1)){n=C(C(f+h)*C(.5));h=C(C(C(f-h)*C(.5))*d);f=C(n+h);m=C(C(e+j)*C(.5));j=C(C(C(e-j)*C(.5))*d);e=C(m+j);l=C(C(k+g)*C(.5));d=C(C(C(k-g)*C(.5))*d);k=C(l+d);j=C(m-j);g=C(l-d);h=C(n-h)}z[a+12>>2]=k;z[a+8>>2]=h;z[a+4>>2]=j;z[a>>2]=g;z[a+20>>2]=f;z[a+16>>2]=e}xa=i+80|0}function bY(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=0,E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0);j=xa-272|0;xa=j;v[j+264>>2]=0;v[j+268>>2]=0;v[j+256>>2]=0;v[j+260>>2]=0;t=z[d+8>>2];u=z[d+4>>2];B=z[d>>2];L=z[e+8>>2];E=z[e+4>>2];M=z[e>>2];v[j+240>>2]=1;D=v[b+4>>2];q=z[D+52>>2];s=z[D+56>>2];r=v[a+4>>2];x=z[r+72>>2];m=z[r- -64>>2];n=z[r+68>>2];o=z[r+56>>2];y=z[r+52>>2];N=z[r+88>>2];S=z[r+80>>2];T=z[r+84>>2];H=z[D+48>>2];I=z[r+48>>2];k=z[c+8>>2];l=z[c>>2];p=z[c+4>>2];v[j+196>>2]=0;v[j+200>>2]=0;v[j+204>>2]=0;v[j+208>>2]=0;v[j+212>>2]=0;v[j+216>>2]=0;v[j+220>>2]=0;v[j+224>>2]=0;v[j+228>>2]=0;v[j+232>>2]=0;c=0;v[j+236>>2]=0;v[j+188>>2]=0;v[j+192>>2]=0;O=x;G=N;r=C(C(k*k)+C(C(l*l)+C(p*p)))>C(1.1920928955078125e-7);l=r?l:C(1);J=l;A=r?k:C(0);k=r?p:C(0);l=C(C(1)/C(K(C(C(A*A)+C(C(l*l)+C(k*k))))));Q=C(J*l);p=C(-Q);k=C(k*l);l=C(A*l);x=C(C(C(m*p)-C(n*k))-C(x*l));N=C(C(C(S*p)-C(T*k))-C(N*l));r=x>N;p=C(C(C(I*p)-C(y*k))-C(o*l));V=!(p>x)|!(p>N);p=V?r?O:G:o;l=l>C(0)?s:C(-s);o=C(p-l);z[j+184>>2]=o;s=V?r?n:T:y;k=k>C(0)?q:C(-q);n=C(s-k);z[j+180>>2]=n;q=V?r?m:S:I;x=Q>C(0)?H:C(-H);m=C(q-x);z[j+176>>2]=m;v[j+132>>2]=0;v[j+136>>2]=0;v[j+140>>2]=0;v[j+144>>2]=0;v[j+148>>2]=0;v[j+152>>2]=0;v[j+156>>2]=0;v[j+160>>2]=0;v[j+164>>2]=0;v[j+168>>2]=0;v[j+172>>2]=0;v[j+124>>2]=0;v[j+128>>2]=0;z[j+120>>2]=p;z[j+116>>2]=s;z[j+112>>2]=q;v[j+68>>2]=0;v[j+72>>2]=0;v[j+76>>2]=0;v[j+80>>2]=0;v[j+84>>2]=0;v[j+88>>2]=0;v[j+92>>2]=0;v[j+96>>2]=0;v[j+100>>2]=0;v[j+104>>2]=0;v[j+108>>2]=0;v[j+60>>2]=0;v[j+64>>2]=0;z[j+56>>2]=l;z[j+52>>2]=k;z[j+48>>2]=x;k=C(-o);l=C(-n);p=C(-m);y=C(C(o*o)+C(C(m*m)+C(n*n)));q=z[D+24>>2];q=C((qW)){q=p;s=l;x=k;N=m;S=n;T=o;break b}Q=C(q+i);$=C(Q*Q);i=C(C(M*C(0))+B);H=C(C(E*C(0))+u);I=C(C(L*C(0))+t);x=k;s=l;q=p;while(1){N=m;S=n;T=o;m=C(C(1)/C(K(C(C(k*k)+C(C(p*p)+C(l*l))))));o=C(p*m);c=v[a+4>>2];A=z[c- -64>>2];B=z[c+72>>2];n=C(k*m);m=C(l*m);u=z[c+68>>2];t=C(C(B*n)+C(C(A*o)+C(m*u)));R=z[c+88>>2];L=z[c+80>>2];M=z[c+84>>2];E=C(C(R*n)+C(C(L*o)+C(m*M)));r=t>E;O=t;J=z[c+56>>2];t=z[c+48>>2];G=z[c+52>>2];U=C(C(J*n)+C(C(t*o)+C(m*G)));c=!(O>2];A=z[D+48>>2];A=o>2];U=m>2];X=nC(0)){c=0;Z=z[e+8>>2];aa=C(n*Z);n=z[e>>2];O=m;m=z[e+4>>2];O=C(aa+C(C(o*n)+C(O*m)));if(O>=C(0)){break a}o=P;P=C(o-C(Y/O));if(P>o){if(P>C(1)){break a}s=z[d+8>>2];q=z[d+4>>2];x=z[d>>2];v[j+92>>2]=0;v[j+76>>2]=0;v[j+60>>2]=0;o=C(x+C(n*P));i=C(o-i);x=C(i+z[j+80>>2]);z[j+80>>2]=x;n=C(q+C(m*P));q=C(n-H);y=C(q+z[j+84>>2]);z[j+84>>2]=y;m=C(s+C(Z*P));s=C(m-I);H=C(s+z[j+88>>2]);z[j+88>>2]=H;I=C(i+z[j+64>>2]);z[j+64>>2]=I;t=C(q+z[j+68>>2]);z[j+68>>2]=t;u=C(s+z[j+72>>2]);z[j+72>>2]=u;i=C(i+z[j+48>>2]);z[j+48>>2]=i;q=C(q+z[j+52>>2]);z[j+52>>2]=q;s=C(s+z[j+56>>2]);z[j+56>>2]=s;B=z[j+112>>2];E=z[j+116>>2];G=z[j+120>>2];v[j+188>>2]=0;z[j+184>>2]=G-s;z[j+180>>2]=E-q;z[j+176>>2]=B-i;i=z[j+128>>2];q=z[j+132>>2];s=z[j+136>>2];v[j+204>>2]=0;z[j+200>>2]=s-u;z[j+196>>2]=q-t;z[j+192>>2]=i-I;i=z[j+144>>2];q=z[j+148>>2];s=z[j+152>>2];v[j+220>>2]=0;z[j+216>>2]=s-H;z[j+212>>2]=q-y;z[j+208>>2]=i-x;J=C(X+m);B=C(R-J);G=C(U+n);u=C(M-G);E=C(A+o);t=C(L-E);q=p;s=l;x=k;i=o;H=n;I=m;k=C(34028234663852886e22)}else{k=y}}else{k=y}A=k;r=v[j+240>>2];D=r<<4;c=D+(j+112|0)|0;v[c+12>>2]=0;z[c+8>>2]=R;z[c+4>>2]=M;z[c>>2]=L;c=D+(j+48|0)|0;v[c+12>>2]=0;z[c+8>>2]=J;z[c+4>>2]=G;z[c>>2]=E;c=D+(j+176|0)|0;v[c+12>>2]=0;z[c+8>>2]=B;z[c+4>>2]=u;z[c>>2]=t;v[j+240>>2]=r+1;c:{d:{switch(r-1|0){case 0:o=z[j+184>>2];k=C(z[j+200>>2]-o);n=z[j+176>>2];l=C(z[j+192>>2]-n);m=z[j+180>>2];p=C(z[j+196>>2]-m);y=C(C(k*k)+C(C(l*l)+C(p*p)));if(y<=C(1.1920928955078125e-7)){v[j+240>>2]=1;c=v[j+180>>2];v[j+32>>2]=v[j+176>>2];v[j+36>>2]=c;c=v[j+188>>2];v[j+40>>2]=v[j+184>>2];v[j+44>>2]=c;break c}t=k;k=C(F(C(C(C(C(C(-n)*l)-C(p*m))-C(o*k))/y),C(1)));k=k>C(0)?k:C(0);z[j+40>>2]=o+C(t*k);z[j+36>>2]=m+C(p*k);z[j+32>>2]=n+C(l*k);break c;case 1:JV(j+32|0,j+176|0,j+112|0,j+48|0,j+240|0);break c;case 2:N_(j+32|0,j+176|0,j+112|0,j+48|0,j+240|0);break c;default:break d}}z[j+40>>2]=B;z[j+36>>2]=u;z[j+32>>2]=t}o=z[j+40>>2];k=C(-o);n=z[j+36>>2];l=C(-n);m=z[j+32>>2];p=C(-m);y=C(C(o*o)+C(C(m*m)+C(n*n)));if($>2]+32|0];t=C(0);u=C(0);d=!(y>W)|c;i=d?x:k;k=d?q:p;l=d?s:l;p=C(K(C(C(i*i)+C(C(k*k)+C(l*l)))));if(!(p<=C(1.1920928955078125e-7))){x=i;i=C(C(1)/p);_=C(x*i);u=C(k*i);t=C(l*i)}v[g+12>>2]=0;z[g+8>>2]=-_;z[g+4>>2]=-t;z[g>>2]=-u;z[f>>2]=P;v[f+12>>2]=v[j+252>>2];d=v[j+248>>2];v[f+4>>2]=v[j+244>>2];v[f+8>>2]=d;v[j+44>>2]=0;z[j+40>>2]=c?T:o;z[j+36>>2]=c?S:n;z[j+32>>2]=c?N:m;c=v[j+268>>2];e=v[j+264>>2];v[j+24>>2]=e;v[j+28>>2]=c;d=v[j+260>>2];f=v[j+256>>2];v[j+16>>2]=f;v[j+20>>2]=d;v[j+8>>2]=e;v[j+12>>2]=c;v[j>>2]=f;v[j+4>>2]=d;IV(j+176|0,j+112|0,j+48|0,j+32|0,j+16|0,j,v[j+240>>2]);i=z[v[a+4>>2]+16>>2];k=z[j+16>>2];l=z[j+20>>2];p=z[j+24>>2];v[h+12>>2]=0;z[h+8>>2]=p+(b?C(_*i):C(-0));z[h+4>>2]=l+(b?C(t*i):C(-0));z[h>>2]=k+(b?C(u*i):C(-0));c=1}xa=j+272|0;return c}function $_(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=C(0),s=C(0),A=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(!(t[a+6|0]&1)){break a}d=v[a+60>>2];if(!d){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}v[a+72>>2]=v[b+8>>2];c=v[b>>2];v[a+40>>2]=c;d=v[b+4>>2];v[a+44>>2]=d;z[a- -64>>2]=z[b+20>>2];u[a+68>>1]=x[b+24>>1];e=v[b+12>>2];v[a+84>>2]=2139095039;v[a+88>>2]=-8388609;v[a+60>>2]=0;z[a+56>>2]=d>>>0;z[a+52>>2]=d-2>>>0;z[a+48>>2]=c-2>>>0;v[a+76>>2]=e;e=B(c,d);if(e){b:{d=e<<2;if(d){c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,24422,12435,308)|0;v[a+60>>2]=d;if(d){break b}}a9(v[37696],16,12435,311,76028,0);return 0}l=e&1;c=v[b+16>>2];c:{if((e|0)==1){e=32767;f=32768;break c}m=e&-2;e=32767;f=32768;while(1){g=x[c>>1]|x[c+2>>1]<<16;u[d>>1]=g;u[d+2>>1]=g>>>16;g=u[c>>1];c=v[b+12>>2]+c|0;h=x[c>>1]|x[c+2>>1]<<16;u[d+4>>1]=h;u[d+6>>1]=h>>>16;h=u[c>>1];f=f<<16>>16;f=(f|0)<(g|0)?g:f;f=(f|0)<(h|0)?h:f;e=e<<16>>16;e=(e|0)>(g|0)?g:e;e=(e|0)>(h|0)?h:e;d=d+8|0;c=c+v[b+12>>2]|0;k=k+2|0;if((m|0)!=(k|0)){continue}break}}if(l){b=x[c>>1]|x[c+2>>1]<<16;u[d>>1]=b;u[d+2>>1]=b>>>16;b=u[c>>1];d=f<<16>>16;f=(b|0)>(d|0)?b:d;e=(b|0)<(e|0)?b:e}z[a+88>>2]=f<<16>>16;z[a+84>>2]=e<<16>>16}l=0;e=xa-256|0;xa=e;d=a;A=v[a+40>>2];m=v[a+44>>2];v[e+12>>2]=0;v[e+16>>2]=0;v[e>>2]=0;v[e+4>>2]=0;d:{e:{if(m>>>0>4294967263){break e}b=m+32>>>5|0;v[e+4>>2]=b;c=v[37696]+12|0;a=b<<2;l=Ba[v[v[c>>2]+8>>2]](c,a,24422,17999,461)|0;v[e>>2]=l;I9(l,0,a);v[e+16>>2]=b;b=v[37696]+12|0;D=Ba[v[v[b>>2]+8>>2]](b,a,24422,17999,461)|0;v[e+12>>2]=D;I9(D,0,a);if(m){break e}b=1;break d}a=v[d+60>>2];b=w[a+3|0]&127;if(!((w[a+2|0]&127)!=127&(b|0)!=127)){v[l>>2]=v[l>>2]|3}c=1;f:{if(t[d+68|0]&1){break f}g:{if(__(d,0,0,e+128|0)){a=v[d+60>>2];break g}a=v[d+60>>2];if(w[e+128|0]){break g}b=w[a+3|0]&127;break f}b=w[a+3|0]|-128}t[a+3|0]=b;b=0;if((m|0)==1){break d}while(1){b=c<<2;f=b+a|0;if(!((w[f+2|0]&127)!=127&(w[f+3|0]&127)!=127)){f=(c>>>3&536870908)+l|0;v[f>>2]=v[f>>2]|1<>>3&536870908)+l|0;v[g>>2]=v[g>>2]|1<>2];break j}a=v[d+60>>2];if(!w[e+128|0]){break i}if(v[d+44>>2]-1>>>0<=c>>>0){break j}f=a+b|0;f=(u[f>>1]<<1)-(u[f+4>>1]+u[f-4>>1]|0)|0;if((f|0)>=0|!(z[d+64>>2]>>0<2){break k}I=A-1|0;if(!b){L=m-1|0;J=1;k=1;while(1){M=B(m,k);N=e+B(J,12)|0;E=e+B(K,12)|0;h=v[d+60>>2];f=0;while(1){p=f+M|0;F=p<<2;b=F+h|0;j=w[b+3|0];if(!((w[b+2|0]&127)!=127&(j&127)!=127)){a=v[E>>2];c=f>>>3&536870908;g=a+c|0;n=g;q=v[g>>2];g=1<>2]=q|g;n=a;a=f+1|0;i=a>>>3&536870908;o=n+i|0;a=1<>2]=a|v[o>>2];n=c;c=v[N>>2];o=n+c|0;v[o>>2]=g|v[o>>2];c=c+i|0;v[c>>2]=a|v[c>>2]}l:{m:{n:{o:{if(!(!f|(f|0)==(L|0)|(k|0)==(I|0))){if(!(v[v[E>>2]+(f>>>3&536870908)>>2]>>>f&1)){break o}}if(t[d+68|0]&1){if(!f|v[d+40>>2]-1>>>0<=k>>>0|v[d+44>>2]-1>>>0<=f>>>0){break m}}G=Z_(d,p,k,f,e+128|0);if(G){break n}break m}i=u[b>>1]<<1;c=v[d+44>>2];p:{q:{r:{if(v[d+40>>2]-1>>>0>k>>>0){g=i-(u[(c+p<<2)+h>>1]+u[(p-c<<2)+h>>1]|0)|0;a=0;if(c-1>>>0>f>>>0){break r}break q}g=0;if(c-1>>>0<=f>>>0){break p}}a=i-(u[b+4>>1]+u[b-4>>1]|0)|0}if(!(z[d+64>>2]=0){break l}}t[b+3|0]=j|128;break l}H=v[d+44>>2];o=H-1|0;q=v[d+40>>2]-1|0;h=v[d+60>>2];c=0;g=e+32|0;while(1){a=(e+128|0)+(c<<4)|0;i=v[a+12>>2];n=v[a+8>>2];b=0;s:{t:{u:{v:{w:{j=v[a+4>>2];switch(v[a>>2]+B(j,-3)|0){case 0:break u;case 1:break v;case 2:break w;default:break s}}if(q>>>0<=n>>>0){break s}if(i){v[g>>2]=(j<<1)-1;a=1}else{a=0}if(i>>>0>=o>>>0){b=a;break s}i=j<<1;b=a+1|0;break t}if(q>>>0<=n>>>0|i>>>0>=o>>>0){break s}a=1;b=j<<1;v[g>>2]=b;i=b|1;b=2;break t}if(i>>>0>=o>>>0){break s}if(n){a=j-H|0;v[g>>2]=a<<1|t[((a<<2)+h|0)+2|0]>=0;a=1}else{a=0}if(q>>>0<=n>>>0){b=a;break s}i=j<<1;b=a+1|0;if(t[((j<<2)+h|0)+2|0]>=0){break t}i=i|1;b=a+1|0}v[(a<<2)+g>>2]=i}v[(e+96|0)+(c<<2)>>2]=b;g=g+8|0;b=1;c=c+1|0;if((G|0)!=(c|0)){continue}break}a=e+32|0;g=0;c=0;while(1){x:{j=v[a>>2];j=w[((j<<1&-4)+h|0)+(j&1?3:2)|0]&127;y:{if(y[(e+96|0)+(c<<2)>>2]<=1){if((j|0)!=127){break x}break y}i=v[a+4>>2];i=w[((i<<1&-4)+h|0)+(i&1?3:2)|0]&127;if((j|0)!=127){g=1;if((i|0)!=127){break y}break x}if((i|0)==127){break y}g=1;break x}a=a+8|0;c=c+1|0;b=G>>>0>c>>>0;if((c|0)!=(G|0)){continue}}break}z:{if(b&1){break z}if(!g){break m}a=h+F|0;b=u[a>>1]<<1;c=0;g=k>>>0>=q>>>0;c=g?c:b-(u[(p+H<<2)+h>>1]+u[(p-H<<2)+h>>1]|0)|0;A:{if(!(!f|f>>>0>=o>>>0)){a=b-(u[a+4>>1]+u[a-4>>1]|0)|0;break A}a=0;if(g){break z}}if(!(z[d+64>>2]=0){break m}}a=h+F|0;t[a+3|0]=w[a+3|0]|128;break l}h=v[d+60>>2];a=F+h|0;t[a+3|0]=w[a+3|0]&127}f=f+1|0;if((m|0)!=(f|0)){continue}break}I9(v[E>>2],0,v[E+4>>2]<<2);K=K^1;J=J^1;k=k+1|0;if((A|0)!=(k|0)){continue}break}break k}if((A|0)!=2){a=v[e+4>>2]<<2;b=I&-2;f=v[e+16>>2]<<2;g=v[e+12>>2];h=v[e>>2];c=0;while(1){I9(h,0,a);I9(g,0,f);c=c+2|0;if((b|0)!=(c|0)){continue}break}}if(!(I&1)){break k}I9(v[e>>2],0,v[e+4>>2]<<2)}if(!(!D|v[e+16>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,D)}if(!(!l|v[e+4>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,l)}xa=e+256|0;a=v[d+44>>2];b=v[d+40>>2];v[d+80>>2]=B(a,b);r=z[d+88>>2];s=z[d+84>>2];z[d+32>>2]=C(r-s)*C(.5);z[d+20>>2]=C(s+r)*C(.5);r=C(C(a-1>>>0)*C(.5));z[d+36>>2]=r;s=C(C(b-1>>>0)*C(.5));z[d+28>>2]=s;z[d+24>>2]=r;z[d+16>>2]=s;return 1}function bt(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=C(0),s=0,y=0,A=0,B=0,D=0;d=xa-256|0;xa=d;v[d+216>>2]=0;v[d+220>>2]=0;v[d+224>>2]=0;v[d+228>>2]=0;v[d+208>>2]=0;v[d+212>>2]=0;u[d+204>>1]=0;v[d+192>>2]=0;v[d+196>>2]=0;v[d+240>>2]=0;v[d+232>>2]=2139095039;v[d+236>>2]=0;v[d+200>>2]=-1;s=v[c+4>>2];j=v[((v[s+4>>2]>>>22&60)+89188|0)+12>>2]+s|0;y=v[((w[j+9|0]<<2)+149664|0)+40>>2]+j|0;k=v[c>>2];A=v[37419]+(k+16|0)|0;m=w[a+42|0];c=m?2:1;g=v[a+20>>2];l=u[g+16>>1];j=v[v[a+12>>2]+76>>2]?c:(l|0)>=0?2:c;n=x[a+16>>1];a:{b:{c:{if(m){break c}o=v[a+24>>2];d:{p=v[a+32>>2];if(p){break d}c=v[g+12>>2];m=v[g+8>>2];e=v[g+4>>2];q=v[g>>2];if(!(c|(m|(e|q)))|(c&v[k+28>>2]|(m&v[k+24>>2]|(e&v[k+20>>2]|q&v[k+16>>2])))){break d}a=1;break a}if(!(l&4)|!(o|p)){break c}u[d+104>>1]=n;e:{if(o){j=Ba[v[v[o>>2]>>2]](o,g,A,y,d+104|0)|0;break e}c=v[p+8>>2];if(!c){n=x[d+104>>1]&432|n&-433;break c}v[d+16>>2]=v[g>>2];v[d+20>>2]=v[g+4>>2];v[d+24>>2]=v[g+8>>2];v[d+28>>2]=v[g+12>>2];v[d+160>>2]=v[k+16>>2];v[d+164>>2]=v[k+20>>2];v[d+168>>2]=v[k+24>>2];v[d+172>>2]=v[k+28>>2];j=Ba[c|0](d+16|0,d+160|0,v[p>>2],v[p+4>>2],d+104|0)|0}if(!j){break b}n=x[d+104>>1]&432|n&-433}o=d+160|0;sh(o,k,s);r=z[a+28>>2];c=v[a+12>>2];p=v[c+72>>2];h=v[c+80>>2];g=v[c+76>>2];s=v[k+4>>2]&1?v[k+8>>2]- -64|0:k+84|0;e=v[s>>2];q=v[v[v[a+4>>2]+5728>>2]+(e<<2)>>2];c=v[a+8>>2];m=v[c+4>>2];c=v[c>>2];u[d+16>>1]=x[a+36>>1]|n;f=o;i=c;D=m;m=g>>>0>h>>>0;c=m?g-h|0:1;o=m?p+(h<<6)|0:d+192|0;p=Ba[q|0](s,f,i,D,r,d+16|0,(e|0)==5?n&32?c:1:c,o)|0;f:{if(!p){break f}s=l&8;q=d- -64|0;m=d+16|4;B=1;n=0;while(1){f=o+(n<<6)|0;v[f+4>>2]=A;v[f>>2]=y;c=j;g:{if(w[a+42|0]){break g}e=v[a+24>>2];g=v[a+32>>2];c=j;if(!(e|g)){break g}c=j;if(!s){break g}if(e){c=Ba[v[v[e>>2]+4>>2]](e,v[a+20>>2],f)|0;break g}e=v[g+12>>2];c=j;if(!e){break g}c=v[a+20>>2];v[d+144>>2]=v[c>>2];v[d+148>>2]=v[c+4>>2];v[d+152>>2]=v[c+8>>2];v[d+156>>2]=v[c+12>>2];v[d+128>>2]=v[k+16>>2];v[d+132>>2]=v[k+20>>2];v[d+136>>2]=v[k+24>>2];v[d+140>>2]=v[k+28>>2];c=Ba[e|0](d+144|0,d+128|0,v[g>>2],v[g+4>>2],f)|0}if(!(!w[a+41|0]|!c)){b=v[f+4>>2];j=v[a+12>>2];c=j;v[c+4>>2]=v[f>>2];v[c+8>>2]=b;v[c+12>>2]=v[f+8>>2];u[c+16>>1]=x[f+12>>1];z[c+20>>2]=z[f+16>>2];z[c+24>>2]=z[f+20>>2];z[c+28>>2]=z[f+24>>2];z[c+32>>2]=z[f+28>>2];z[c+36>>2]=z[f+32>>2];z[c+40>>2]=z[f+36>>2];z[c+44>>2]=z[f+40>>2];c=o+(n<<6)|0;b=v[c+48>>2];v[j+48>>2]=v[c+44>>2];v[j+52>>2]=b;b=v[c+56>>2];v[j+56>>2]=v[c+52>>2];v[j+60>>2]=b;v[j- -64>>2]=v[c+60>>2];t[v[a+12>>2]+68|0]=1;break f}h:{i:{switch((w[a+40|0]?1:c)-1|0){case 0:c=v[a+12>>2];e=v[c+76>>2];if(!(z[f+40>>2]<=z[a+28>>2])|(!e|!w[a+38|0])){break h}l=v[c+80>>2];j:{if((e|0)!=(l|0)){break j}e=v[a+20>>2];v[d+104>>2]=v[e>>2];v[d+108>>2]=v[e+4>>2];v[d+112>>2]=v[e+8>>2];v[d+116>>2]=v[e+12>>2];u[d+120>>1]=x[e+16>>1]|32768;u[d+32>>1]=0;v[d+28>>2]=-1;v[d+20>>2]=0;v[d+24>>2]=0;v[d+52>>2]=0;v[d+56>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;v[d+96>>2]=0;v[d+88>>2]=0;v[d+92>>2]=0;t[d+84|0]=0;v[d+68>>2]=0;v[d+60>>2]=2139095039;v[d+64>>2]=0;v[d+16>>2]=114128;k:{if(w[a+39|0]|!v[c+76>>2]){break k}e=v[a+8>>2];c=v[a+4>>2];u[d+8>>1]=x[a+16>>1];e=at(c,e,d+16|0,d+8|0,0,d+104|0,v[a+24>>2],v[a+32>>2]);c=v[a+12>>2];if(!e){break k}e=v[m+4>>2];v[c+4>>2]=v[m>>2];v[c+8>>2]=e;v[c+12>>2]=v[m+8>>2];u[c+16>>1]=x[d+32>>1];z[c+20>>2]=z[d+36>>2];z[c+24>>2]=z[d+40>>2];z[c+28>>2]=z[d+44>>2];z[c+32>>2]=z[d+48>>2];z[c+36>>2]=z[d+52>>2];z[c+40>>2]=z[d+56>>2];z[c+44>>2]=z[d+60>>2];e=v[q+4>>2];v[c+48>>2]=v[q>>2];v[c+52>>2]=e;e=v[q+12>>2];v[c+56>>2]=v[q+8>>2];v[c+60>>2]=e;v[c- -64>>2]=v[q+16>>2];c=v[a+12>>2];t[c+68|0]=1;l=0;r=z[d+60>>2];g=v[c+80>>2];l:{if(!g){g=0;break l}e=v[c+72>>2];while(1){i=e+(l<<6)|0;m:{if(z[i+40>>2]>r){g=g-1|0;h=e+(g<<6)|0;c=v[h+4>>2];v[i>>2]=v[h>>2];v[i+4>>2]=c;v[i+8>>2]=v[h+8>>2];u[i+12>>1]=x[h+12>>1];z[i+16>>2]=z[h+16>>2];z[i+20>>2]=z[h+20>>2];z[i+24>>2]=z[h+24>>2];z[i+28>>2]=z[h+28>>2];z[i+32>>2]=z[h+32>>2];z[i+36>>2]=z[h+36>>2];z[i+40>>2]=z[h+40>>2];v[i+60>>2]=v[h+60>>2];c=v[h+56>>2];v[i+52>>2]=v[h+52>>2];v[i+56>>2]=c;c=v[h+48>>2];v[i+44>>2]=v[h+44>>2];v[i+48>>2]=c;break m}l=l+1|0}if((g|0)!=(l|0)){continue}break}c=v[a+12>>2];r=z[d+60>>2]}v[c+80>>2]=g;z[a+28>>2]=r;z[b>>2]=r}t[a+39|0]=1;l=v[c+80>>2];if((l|0)!=v[c+76>>2]){break j}c=Ba[v[v[c>>2]>>2]](c,v[c+72>>2],l)|0;t[a+38|0]=c;if(!c){break f}l=0;c=v[a+12>>2];v[c+80>>2]=0}v[c+80>>2]=l+1;e=v[c+72>>2]+(l<<6)|0;v[e+8>>2]=v[f+8>>2];c=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=c;u[e+12>>1]=x[f+12>>1];z[e+16>>2]=z[f+16>>2];z[e+20>>2]=z[f+20>>2];z[e+24>>2]=z[f+24>>2];z[e+28>>2]=z[f+28>>2];z[e+32>>2]=z[f+32>>2];z[e+36>>2]=z[f+36>>2];z[e+40>>2]=z[f+40>>2];c=v[f+48>>2];v[e+44>>2]=v[f+44>>2];v[e+48>>2]=c;c=v[f+56>>2];v[e+52>>2]=v[f+52>>2];v[e+56>>2]=c;v[e+60>>2]=v[f+60>>2];break h;case 1:break i;default:break h}}r=z[f+40>>2];if(!(r<=z[a+28>>2])){break h}z[a+28>>2]=r;z[b>>2]=r;c=v[f+4>>2];e=v[a+12>>2];v[e+4>>2]=v[f>>2];v[e+8>>2]=c;v[e+12>>2]=v[f+8>>2];u[e+16>>1]=x[f+12>>1];z[e+20>>2]=z[f+16>>2];z[e+24>>2]=z[f+20>>2];z[e+28>>2]=z[f+24>>2];z[e+32>>2]=z[f+28>>2];z[e+36>>2]=z[f+32>>2];z[e+40>>2]=z[f+36>>2];z[e+44>>2]=z[f+40>>2];c=v[f+48>>2];v[e+48>>2]=v[f+44>>2];v[e+52>>2]=c;c=v[f+56>>2];v[e+56>>2]=v[f+52>>2];v[e+60>>2]=c;v[e- -64>>2]=v[f+60>>2];t[v[a+12>>2]+68|0]=1}n=n+1|0;B=p>>>0>n>>>0;if((n|0)!=(p|0)){continue}break}}a=!B;break a}a=1}xa=d+256|0;return a&1}function yv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0);f=xa-112|0;xa=f;l=z[d+24>>2];L=z[c+24>>2];k=z[d+20>>2];M=z[c+20>>2];E=z[e>>2];S=z[b+4>>2];u=z[a+4>>2];i=z[b+8>>2];x=z[d+4>>2];j=z[d>>2];y=z[d+8>>2];o=z[d+12>>2];G=z[d+16>>2];N=z[c+16>>2];q=z[a+8>>2];A=z[c+4>>2];m=z[c>>2];B=z[c+8>>2];r=z[c+12>>2];v[f+108>>2]=0;n=M;M=C(C(M+k)*C(.5));I=C(n-M);O=C(m+m);H=C(r+r);n=C(q*C(C(A*O)+C(B*H)));s=C(I+n);z[f+100>>2]=s;p=L;L=C(C(L+l)*C(.5));t=C(p-L);A=C(q*C(C(O*B)-C(A*H)));B=C(t+A);z[f+104>>2]=B;p=N;N=C(C(N+G)*C(.5));J=C(p-N);q=C(q*C(C(C(m*O)+C(r*H))+C(-1)));m=C(J+q);z[f+96>>2]=m;v[f+92>>2]=0;A=C(t-A);H=C(A-B);z[f+88>>2]=H;B=C(I-n);I=C(B-s);z[f+84>>2]=I;O=C(J-q);J=C(O-m);z[f+80>>2]=J;v[f+76>>2]=0;r=C(k-M);q=C(j+j);m=C(o+o);k=C(i*C(C(x*q)+C(y*m)));t=C(r+k);z[f+68>>2]=t;l=C(l-L);x=C(i*C(C(q*y)-C(x*m)));y=C(l+x);z[f+72>>2]=y;G=C(G-N);i=C(i*C(C(C(j*q)+C(o*m))+C(-1)));j=C(G+i);z[f+64>>2]=j;v[f+60>>2]=0;n=C(l-x);P=C(n-y);z[f+56>>2]=P;s=C(r-k);Q=C(s-t);z[f+52>>2]=Q;t=C(G-i);p=C(t-j);z[f+48>>2]=p;i=z[f+80>>2];j=z[f+84>>2];o=z[f+88>>2];q=C(C(C(i*i)+C(j*j))+C(o*o));m=z[f+48>>2];r=z[f+52>>2];l=z[f+56>>2];k=C(C(C(i*m)+C(j*r))+C(o*l));x=C(C(C(m*m)+C(r*r))+C(l*l));y=C(C(q*x)-C(k*k));w=q>C(1.1920928955078125e-7)?C(C(1)/q):C(0);a=f- -64|0;q=C(z[f+104>>2]-z[a+8>>2]);G=C(l*q);T=m;m=C(z[f+96>>2]-z[a>>2]);l=C(z[f+100>>2]-z[a+4>>2]);r=C(G+C(C(T*m)+C(l*r)));j=C(C(C(m*i)+C(l*j))+C(q*o));i=C(F(C(C(C(k*r)-C(j*x))/y),C(1)));i=C(F(C((x>C(1.1920928955078125e-7)?C(C(1)/x):C(0))*C(r+C(k*(yC(0)?i:C(0))))),C(1)));i=i>C(0)?i:C(0);j=C(F(C(w*C(C(k*i)-j)),C(1)));j=j>C(0)?j:C(0);z[f+32>>2]=j;z[f+16>>2]=i;o=C(C(z[f+104>>2]+C(z[f+88>>2]*j))-C(C(z[f+56>>2]*i)+z[a+8>>2]));m=C(o*o);o=C(C(z[f+96>>2]+C(z[f+80>>2]*j))-C(z[a>>2]+C(z[f+48>>2]*i)));i=C(C(z[f+100>>2]+C(z[f+84>>2]*j))-C(z[a+4>>2]+C(z[f+52>>2]*i)));z[f>>2]=m+C(C(o*o)+C(i*i));x=C(u+S);i=C(E+x);y=C(i*i);S=z[f>>2];e=y>=S;a:{if(!e){break a}U=C(C(H*H)+C(C(J*J)+C(I*I)));i=C(C(1)/C(K(U)));G=z[f+88>>2];a=U>2];b=o>2];P=z[f+48>>2];I=z[f+84>>2];Q=z[f+52>>2];b:{c:{if(!(C(D(C(C((a?C(0):C(i*G))*(b?C(0):C(j*J)))+C(C((a?C(0):C(i*H))*(b?C(0):C(j*P)))+C((a?C(0):C(i*I))*(b?C(0):C(j*Q)))))))>C(.9998000264167786))){o=z[f+72>>2];q=z[f+68>>2];m=z[f+64>>2];i=z[f+104>>2];j=z[f+100>>2];r=z[f+96>>2];break c}m=z[f+64>>2];i=C(t-m);q=z[f+68>>2];j=C(s-q);o=z[f+72>>2];l=C(n-o);Y=C(C(C(C(O-m)*i)+C(C(B-q)*j))+C(C(A-o)*l));R=C(C(l*l)+C(C(i*i)+C(j*j)));c=R!=C(0);r=z[f+96>>2];p=j;j=z[f+100>>2];p=C(C(i*C(r-m))+C(p*C(j-q)));i=z[f+104>>2];Z=C(C(p+C(l*C(i-o)))/R);k=C(A-i);p=C(O-r);E=C(B-j);w=C(C(k*k)+C(C(p*p)+C(E*E)));a=w!=C(0);l=a?C(C(C(C(C(t-r)*p)+C(C(s-j)*E))+C(C(n-i)*k))/w):C(0);b=0;k=a?C(C(C(C(C(m-r)*p)+C(C(q-j)*E))+C(C(o-i)*k))/w):C(0);d:{if(!(k>=C(0))|!(k<=C(1))){break d}V=C(i+C(G*k));p=C(V-o);W=C(r+C(H*k));E=C(W-m);X=C(j+C(I*k));k=C(X-q);w=C(C(p*p)+C(C(E*E)+C(k*k)));if(!(w>C(9.999999974752427e-7))|!(y>w)){break d}b=1;a=v[g+4096>>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;v[a+52>>2]=-1;w=C(K(w));z[a+12>>2]=w-x;T=p;p=C(C(1)/w);w=C(T*p);z[a+8>>2]=w;k=C(k*p);z[a+4>>2]=k;p=C(E*p);z[a>>2]=p;z[a+24>>2]=L+C(V-C(u*w));z[a+20>>2]=M+C(X-C(u*k));z[a+16>>2]=N+C(W-C(u*p))}p=C(Y/R);k=c?Z:C(0);e:{if(!(l>=C(0))|!(l<=C(1))){break e}E=C(i+C(l*G));n=C(E-n);R=C(r+C(l*H));t=C(R-t);w=C(j+C(l*I));l=C(w-s);s=C(C(n*n)+C(C(t*t)+C(l*l)));if(!(s>C(9.999999974752427e-7))|!(s>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;v[a+52>>2]=-1;s=C(K(s));z[a+12>>2]=s-x;T=n;n=C(C(1)/s);s=C(T*n);z[a+8>>2]=s;l=C(l*n);z[a+4>>2]=l;n=C(t*n);z[a>>2]=n;z[a+24>>2]=L+C(E-C(u*s));z[a+20>>2]=M+C(w-C(u*l));z[a+16>>2]=N+C(R-C(u*n));b=b+1|0}l=c?p:C(0);f:{if(!(k>=C(0))|!(k<=C(1))){break f}n=C(i-C(C(k*J)+o));s=C(r-C(C(k*P)+m));k=C(j-C(C(k*Q)+q));t=C(C(n*n)+C(C(s*s)+C(k*k)));if(!(t>C(9.999999974752427e-7))|!(t>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;v[a+52>>2]=-1;t=C(K(t));z[a+12>>2]=t-x;p=n;n=C(C(1)/t);t=C(p*n);z[a+8>>2]=t;k=C(k*n);z[a+4>>2]=k;n=C(s*n);z[a>>2]=n;z[a+24>>2]=L+C(i-C(u*t));z[a+20>>2]=M+C(j-C(u*k));z[a+16>>2]=N+C(r-C(u*n));b=b+1|0}g:{if(!(l>=C(0))|!(l<=C(1))){break g}k=C(A-C(C(l*J)+o));n=C(O-C(C(l*P)+m));l=C(B-C(C(l*Q)+q));s=C(C(k*k)+C(C(n*n)+C(l*l)));if(!(s>C(9.999999974752427e-7))|!(s>2];v[g+4096>>2]=a+1;b=(a<<6)+g|0;i=C(K(s));j=C(C(1)/i);m=C(n*j);z[b>>2]=m;o=C(k*j);q=C(A-C(u*o));m=C(O-C(u*m));j=C(l*j);u=C(B-C(u*j));break b}if(b){break a}}l=z[f+32>>2];k=z[f+16>>2];a=v[g+4096>>2];v[g+4096>>2]=a+1;b=(a<<6)+g|0;d=U>C(9.999999974752427e-7);A=C(C(H*l)+r);c=S>2]=m;o=C(i*r);q=C(B-C(u*o));m=C(A-C(u*m));i=c?C(0):C(K(S));j=C(j*r);u=C(l-C(u*j))}z[b+8>>2]=o;z[b+4>>2]=j;z[b+12>>2]=i-x;a=(a<<6)+g|0;v[a+52>>2]=-1;z[a+16>>2]=N+m;z[a+24>>2]=L+q;z[a+20>>2]=M+u}xa=f+112|0;return e|0}function Ok(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=0,n=0,o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=0,u=C(0),A=C(0),D=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0);t=xa-32|0;xa=t;if(w[a+72|0]){Pk(a+12|0)}m=b- -64|0;F=v[a+24>>2];if(F){b=c;c=0;n=xa-4112|0;xa=n;k=v[F+16>>2]<<5;I9(n+16|0,0,k);I9(n+2064|0,0,k);k=v[m>>2];m=-2147483648;p=v[F+28>>2];a:{if(!p){break a}G=v[F+24>>2];while(1){if((k|0)==v[G+(c<<2)>>2]){m=c;break a}c=c+1|0;if((p|0)!=(c|0)){continue}break}}f=z[d>>2];g=z[d+4>>2];h=z[d+8>>2];G=0;k=n+16|0;c=k+(m<<5)|0;v[c+12>>2]=0;z[c+8>>2]=-h;z[c+4>>2]=-g;z[c>>2]=-f;f=z[e>>2];g=z[e+4>>2];h=z[e+8>>2];v[c+28>>2]=0;z[c+24>>2]=-h;z[c+20>>2]=-g;z[c+16>>2]=-f;da=n+2064|0;m=xa-3072|0;xa=m;$=b+x[b+6>>1]|0;c=x[b+18>>1];aa=(c+b|0)+144|0;e=x[b+4>>1];if(e>>>0>=2){while(1){e=e-1|0;d=e<<5;c=d+k|0;o=z[c+16>>2];q=z[c+20>>2];d=d+$|0;h=z[d+24>>2];i=z[c+8>>2];r=z[c+24>>2];j=z[c>>2];s=z[d+20>>2];g=z[d+16>>2];l=z[c+4>>2];c=m+(e<<4)|0;v[c+12>>2]=0;f=C(r+C(C(j*s)-C(g*l)));z[c+8>>2]=f;g=C(q+C(C(i*g)-C(h*j)));z[c+4>>2]=g;h=C(o+C(C(l*h)-C(s*i)));z[c>>2]=h;c=B(e,160)+aa|0;u=z[c+24>>2];A=z[c+56>>2];K=z[c+88>>2];L=z[c+20>>2];M=z[c+52>>2];N=z[c+84>>2];s=z[d>>2];O=z[c+16>>2];P=z[c+48>>2];Q=z[c+80>>2];D=z[d+4>>2];E=z[d+8>>2];d=k+(w[(b+e|0)- -64|0]<<5)|0;R=z[d>>2];S=z[c>>2];T=z[c+32>>2];U=z[c+64>>2];V=z[d+4>>2];W=z[c+4>>2];H=z[c+36>>2];I=z[c+68>>2];J=z[d+8>>2];Y=z[c+8>>2];X=z[c+40>>2];Z=z[c+72>>2];v[d+12>>2]=0;v[d+28>>2]=0;i=C(i-C(C(h*Y)+C(C(g*X)+C(f*Z))));z[d+8>>2]=J+i;l=C(l-C(C(h*W)+C(C(g*H)+C(f*I))));z[d+4>>2]=V+l;j=C(j-C(C(h*S)+C(C(g*T)+C(f*U))));z[d>>2]=R+j;z[d+16>>2]=C(C(o-C(C(h*O)+C(C(g*P)+C(f*Q))))+C(C(D*i)-C(l*E)))+z[d+16>>2];z[d+20>>2]=C(C(q-C(C(h*L)+C(C(g*M)+C(f*N))))+C(C(E*j)-C(i*s)))+z[d+20>>2];z[d+24>>2]=C(C(r-C(C(h*u)+C(C(g*A)+C(f*K))))+C(C(s*l)-C(j*D)))+z[d+24>>2];if(e>>>0>1){continue}break}c=x[b+18>>1]}c=b+c|0;u=z[c+32>>2];A=z[c>>2];K=z[c+16>>2];L=z[c+36>>2];M=z[c+20>>2];N=z[c+4>>2];O=z[c+40>>2];P=z[c+24>>2];Q=z[c+8>>2];o=z[c+56>>2];q=z[c+52>>2];r=z[c+48>>2];R=z[c+96>>2];S=z[c+112>>2];T=z[c+128>>2];s=z[c+72>>2];D=z[c- -64>>2];E=z[c+68>>2];U=z[c+100>>2];V=z[c+116>>2];W=z[c+132>>2];H=z[c+80>>2];f=C(-z[k>>2]);I=z[c+84>>2];g=z[k+4>>2];J=z[c+88>>2];h=z[k+8>>2];i=C(-z[k+16>>2]);j=z[k+20>>2];l=z[k+24>>2];z[m+1048>>2]=C(C(C(H*f)-C(I*g))-C(J*h))+C(C(C(z[c+104>>2]*i)-C(z[c+120>>2]*j))-C(z[c+136>>2]*l));z[m+1044>>2]=C(C(C(D*f)-C(E*g))-C(s*h))+C(C(C(U*i)-C(V*j))-C(W*l));v[m+1036>>2]=0;z[m+1040>>2]=C(C(C(r*f)-C(q*g))-C(o*h))+C(C(C(R*i)-C(S*j))-C(T*l));z[m+1032>>2]=C(C(C(Q*f)-C(P*g))-C(O*h))+C(C(C(o*i)-C(s*j))-C(J*l));z[m+1028>>2]=C(C(C(N*f)-C(M*g))-C(L*h))+C(C(C(q*i)-C(E*j))-C(I*l));z[m+1024>>2]=C(C(C(A*f)-C(K*g))-C(u*h))+C(C(C(r*i)-C(D*j))-C(H*l));d=1;c=x[b+4>>1];if(c>>>0>1){while(1){ba=d<<5;k=ba+$|0;s=z[k+24>>2];D=z[k+16>>2];E=z[k+20>>2];e=B(d,160)+aa|0;K=z[e+128>>2];L=z[e+112>>2];M=z[e+96>>2];N=z[e+24>>2];O=z[e+20>>2];P=z[e+16>>2];Q=z[e+8>>2];R=z[e>>2];S=z[e+4>>2];A=z[e+132>>2];T=z[e+100>>2];U=z[e+116>>2];V=z[e+56>>2];W=z[e+52>>2];H=z[e+48>>2];I=z[e+40>>2];J=z[e+32>>2];Y=z[e+36>>2];p=m+(d<<4)|0;i=z[p+8>>2];o=z[e+136>>2];j=z[p>>2];X=z[e+104>>2];l=z[p+4>>2];Z=z[e+120>>2];ea=z[e+88>>2];fa=z[e+84>>2];ga=z[e+80>>2];ha=z[e+72>>2];ca=m+1024|0;p=ca+(w[(b+d|0)- -64|0]<<5)|0;ia=z[p+8>>2];ja=z[e+64>>2];ka=z[p>>2];f=z[p+20>>2];q=z[k+4>>2];la=z[e+68>>2];ma=z[p+4>>2];r=z[k>>2];g=z[p+24>>2];u=z[k+8>>2];h=z[p+16>>2];e=ba+ca|0;v[e+28>>2]=0;v[e+12>>2]=0;X=C(C(o*i)+C(C(X*j)+C(l*Z)));o=C(ia+C(C(q*h)-C(r*f)));q=C(ka+C(C(u*f)-C(q*g)));r=C(ma+C(C(r*g)-C(u*h)));u=C(X+C(C(C(ha*o)+C(C(ja*q)+C(la*r)))+C(C(ea*g)+C(C(ga*h)+C(f*fa)))));z[e+24>>2]=g-u;A=C(C(C(A*i)+C(C(T*j)+C(l*U)))+C(C(C(I*o)+C(C(J*q)+C(r*Y)))+C(C(V*g)+C(C(H*h)+C(f*W)))));z[e+20>>2]=f-A;f=C(C(C(K*i)+C(C(M*j)+C(l*L)))+C(C(C(Q*o)+C(C(R*q)+C(r*S)))+C(C(N*g)+C(C(P*h)+C(f*O)))));z[e+16>>2]=h-f;z[e+8>>2]=o-C(C(D*A)-C(f*E));z[e+4>>2]=r-C(C(s*f)-C(u*D));z[e>>2]=q-C(C(E*u)-C(A*s));d=d+1|0;if((c|0)!=(d|0)){continue}break}c=x[b+4>>1]}if(c){while(1){c=_<<5;d=c+(m+1024|0)|0;f=z[d>>2];g=z[d+4>>2];h=z[d+8>>2];c=c+da|0;v[c+12>>2]=0;z[c+8>>2]=h+z[c+8>>2];z[c+4>>2]=g+z[c+4>>2];z[c>>2]=f+z[c>>2];f=z[d+16>>2];g=z[d+20>>2];h=z[d+24>>2];v[c+28>>2]=0;z[c+24>>2]=h+z[c+24>>2];z[c+20>>2]=g+z[c+20>>2];z[c+16>>2]=f+z[c+16>>2];_=_+1|0;if(_>>>0>1]){continue}break}}xa=m+3072|0;if(v[F+16>>2]){while(1){c=(n+2064|0)+(G<<5)|0;f=z[c+16>>2];g=z[c+20>>2];h=z[c+24>>2];i=z[c>>2];j=z[c+4>>2];b=v[v[v[F+24>>2]+(G<<2)>>2]+44>>2];l=z[b+80>>2];o=z[b+84>>2];z[n+8>>2]=z[c+8>>2]+z[b+88>>2];z[n+4>>2]=j+o;z[n>>2]=i+l;BG(b,n);i=z[b+96>>2];j=z[b+100>>2];z[n+8>>2]=h+z[b+104>>2];z[n+4>>2]=g+j;z[n>>2]=f+i;CG(b,n);G=G+1|0;if(G>>>0>2]){continue}break}}xa=n+4112|0}if(v[a+100>>2]){d=0;while(1){c=d<<2;b=v[c+v[a+96>>2]>>2];z[t+16>>2]=z[b+144>>2];z[t+20>>2]=z[b+148>>2];z[t+24>>2]=z[b+152>>2];z[t>>2]=z[b+160>>2];z[t+4>>2]=z[b+164>>2];z[t+8>>2]=z[b+168>>2];Ba[v[v[b>>2]+160>>2]](b,t+16|0,1);b=v[c+v[a+96>>2]>>2];Ba[v[v[b>>2]+168>>2]](b,t,1);d=d+1|0;if(d>>>0>2]){continue}break}}xa=t+32|0}function _y(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=C(l);m=m|0;n=n|0;var o=0;f=xa-160|0;xa=f;e=v[j+4>>2];v[a+544>>2]=v[j>>2];v[a+548>>2]=e;v[a+576>>2]=v[j+32>>2];e=v[j+28>>2];v[a+568>>2]=v[j+24>>2];v[a+572>>2]=e;e=v[j+20>>2];v[a+560>>2]=v[j+16>>2];v[a+564>>2]=e;e=v[j+12>>2];v[a+552>>2]=v[j+8>>2];v[a+556>>2]=e;z[a+56>>2]=l==C(0)?C(0):C(C(1)/l);z[a+52>>2]=l;z[a+68>>2]=z[m>>2];z[a+72>>2]=z[m+4>>2];z[a+76>>2]=z[m+8>>2];g=v[b+412>>2];h=v[b+320>>2];if(h){i=v[b+316>>2];e=v[b+148>>2];k=v[b+128>>2];j=0;while(1){m=v[i+(j<<2)>>2];n=(m>>>0)/(e>>>0)|0;m=v[v[k+(n<<2)>>2]+(m-B(e,n)<<2)>>2];if(m){t[m+42|0]=0}j=j+1|0;if((h|0)!=(j|0)){continue}break}}e=v[a+180>>2];v[e+608>>2]=v[b+308>>2];a:{if(g){v[e+604>>2]=v[b+284>>2];h=v[b+344>>2];break a}v[e+604>>2]=0;h=0}v[e+600>>2]=h;v[a+536>>2]=0;e=v[a+336>>2];j=v[e>>2];v[e>>2]=0;if(j){m=j;while(1){e=v[m>>2];iB(m);m=e;if(e){continue}break}while(1){e=v[j>>2];h=v[a+336>>2];v[j>>2]=v[h>>2];v[h>>2]=j;j=e;if(e){continue}break}}if(g){Ba[v[v[d>>2]+16>>2]](d);h=vr(v[a+584>>2],40);e=v[a+604>>2];g=v[a+600>>2];v[h+24>>2]=0;v[h+16>>2]=0;v[h+8>>2]=g;v[h+12>>2]=e;v[h+36>>2]=d;v[h+32>>2]=b;v[h+28>>2]=a;v[h>>2]=128836;v[h+20>>2]=c;v[h+24>>2]=1;if(c){Ba[v[v[c>>2]+16>>2]](c);v[h+16>>2]=v[v[h+20>>2]+16>>2]}v[a+192>>2]=0;v[a+196>>2]=0;v[a+216>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+200>>2]=0;n=v[b+304>>2];j=v[b+308>>2];v[a+532>>2]=j;d=a+440|0;k=v[b+296>>2];i=v[b+284>>2];c=i+j|0;e=v[a+448>>2]&2147483647;b:{if(c>>>0<=e>>>0){break b}g=e;e=c+31&-32;if(g>>>0>>0){$y(d,e)}e=c+32&-32;if(e>>>0>(v[a+460>>2]&2147483647)>>>0){az(a+452|0,e)}if(e>>>0<=(v[a+504>>2]&2147483647)>>>0){break b}zw(a+496|0,e)}v[f+152>>2]=0;v[f+156>>2]=0;v[f+144>>2]=0;v[f+148>>2]=0;v[f+136>>2]=0;v[f+140>>2]=0;v[f+128>>2]=0;v[f+132>>2]=0;if(c>>>0>(v[d+8>>2]&2147483647)>>>0){$y(d,c)}e=v[d+4>>2];if((e|0)<(c|0)){g=v[d>>2];m=g+(c<<5)|0;g=g+(e<<5)|0;while(1){z[g>>2]=z[f+128>>2];z[g+4>>2]=z[f+132>>2];z[g+8>>2]=z[f+136>>2];v[g+12>>2]=v[f+140>>2];z[g+16>>2]=z[f+144>>2];z[g+20>>2]=z[f+148>>2];z[g+24>>2]=z[f+152>>2];v[g+28>>2]=v[f+156>>2];g=g+32|0;if(m>>>0>g>>>0){continue}break}}v[d+4>>2]=c;m=0;I9(f+16|0,0,112);c=c+1|0;d=a+452|0;if(c>>>0>(v[d+8>>2]&2147483647)>>>0){az(d,c)}e=v[d+4>>2];if((e|0)<(c|0)){g=v[d>>2];o=g+B(c,112)|0;e=g+B(e,112)|0;while(1){z[e>>2]=z[f+16>>2];z[e+4>>2]=z[f+20>>2];z[e+8>>2]=z[f+24>>2];z[e+12>>2]=z[f+28>>2];z[e+16>>2]=z[f+32>>2];z[e+20>>2]=z[f+36>>2];z[e+24>>2]=z[f+40>>2];z[e+28>>2]=z[f+44>>2];z[e+32>>2]=z[f+48>>2];z[e+36>>2]=z[f+52>>2];z[e+40>>2]=z[f+56>>2];z[e+44>>2]=z[f+60>>2];z[e+48>>2]=z[f+64>>2];z[e+52>>2]=z[f+68>>2];z[e+56>>2]=z[f+72>>2];z[e+60>>2]=z[f+76>>2];z[e- -64>>2]=z[f+80>>2];g=v[f+88>>2];v[e+68>>2]=v[f+84>>2];v[e+72>>2]=g;v[e+76>>2]=v[f+92>>2];z[e+80>>2]=z[f+96>>2];z[e+84>>2]=z[f+100>>2];z[e+88>>2]=z[f+104>>2];z[e+92>>2]=z[f+108>>2];z[e+96>>2]=z[f+112>>2];z[e+100>>2]=z[f+116>>2];z[e+104>>2]=z[f+120>>2];v[e+108>>2]=v[f+124>>2];e=e+112|0;if(o>>>0>e>>>0){continue}break}}v[d+4>>2]=c;v[f+12>>2]=0;bz(a+496|0,i,f+12|0);c=v[a+452>>2];z[c>>2]=z[a+224>>2];z[c+4>>2]=z[a+228>>2];z[c+8>>2]=z[a+232>>2];z[c+12>>2]=z[a+236>>2];z[c+16>>2]=z[a+240>>2];z[c+20>>2]=z[a+244>>2];z[c+24>>2]=z[a+248>>2];z[c+28>>2]=z[a+252>>2];z[c+32>>2]=z[a+256>>2];z[c+36>>2]=z[a+260>>2];z[c+40>>2]=z[a+264>>2];z[c+44>>2]=z[a+268>>2];z[c+48>>2]=z[a+272>>2];z[c+52>>2]=z[a+276>>2];z[c+56>>2]=z[a+280>>2];z[c+60>>2]=z[a+284>>2];z[c- -64>>2]=z[a+288>>2];d=v[a+296>>2];v[c+68>>2]=v[a+292>>2];v[c+72>>2]=d;v[c+76>>2]=v[a+300>>2];z[c+80>>2]=z[a+304>>2];z[c+84>>2]=z[a+308>>2];z[c+88>>2]=z[a+312>>2];z[c+92>>2]=z[a+316>>2];z[c+96>>2]=z[a+320>>2];z[c+100>>2]=z[a+324>>2];z[c+104>>2]=z[a+328>>2];v[c+108>>2]=v[a+332>>2];I9(v[a+440>>2],0,j<<5);if(j){d=b+168|0;while(1){c=vr(v[a+584>>2],48);e=v[a+452>>2];g=v[a+604>>2];o=v[a+600>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=o;v[c+12>>2]=g;v[c+36>>2]=d;g=j-m|0;v[c+32>>2]=g>>>0<1024?g:1024;v[c+28>>2]=n+(m<<2);v[c>>2]=128892;v[c+20>>2]=h;v[c+24>>2]=1;v[c+40>>2]=e+B(m,112);Ba[v[v[h>>2]+16>>2]](h);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);m=m+1024|0;if(j>>>0>m>>>0){continue}break}}d=v[b+344>>2];c=v[b+340>>2];v[a+348>>2]=0;d=d+(c+(k<<6)|0)|0;b=d+63&-64;if(b>>>0>(v[a+352>>2]&2147483647)>>>0){cz(a+344|0,b)}v[a+348>>2]=d;v[a+360>>2]=0;if(b>>>0>(v[a+364>>2]&2147483647)>>>0){cz(a+356|0,b)}v[a+360>>2]=d;v[a+372>>2]=0;if(b>>>0>(v[a+376>>2]&2147483647)>>>0){cz(a+368|0,b)}v[a+372>>2]=d;v[a+384>>2]=0;if(b>>>0>(v[a+388>>2]&2147483647)>>>0){dz(a+380|0,b)}v[a+384>>2]=d;v[a+524>>2]=0;b=c+63&-64;if(b>>>0>(v[a+528>>2]&2147483647)>>>0){ez(a+520|0,b)}v[a+524>>2]=c;v[a+396>>2]=0;b=i+63&-64;if(b>>>0>(v[a+400>>2]&2147483647)>>>0){fz(a+392|0,b)}v[a+396>>2]=i;v[a+408>>2]=0;if(b>>>0>(v[a+412>>2]&2147483647)>>>0){gz(a+404|0,b)}v[a+408>>2]=i;v[a+420>>2]=0;if(b>>>0>(v[a+424>>2]&2147483647)>>>0){hz(a+416|0,b)}v[a+420>>2]=i;v[a+432>>2]=0;d=k+63&-64;if(d>>>0>(v[a+436>>2]&2147483647)>>>0){iz(a+428|0,d)}v[a+432>>2]=k;v[a+512>>2]=0;if(b>>>0>(v[a+516>>2]&2147483647)>>>0){zw(a+508|0,b)}v[a+512>>2]=i;b=v[a+4>>2];v[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>(v[b+12>>2]&2147483647)>>>0){jz(b,c)}v[a+592>>2]=1-v[a+592>>2];Ba[v[v[h>>2]+20>>2]](h)}xa=f+160|0}function TK(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=C(0),u=0,w=0,x=0,y=0,A=0,D=0,E=0,F=0,G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0,S=0,T=C(0),U=0,V=0,W=0,X=0,Y=0,Z=0,_=C(0);w=xa-5168|0;xa=w;E=v[a+40>>2];a:{if(!E){if(!v[a+88>>2]){break a}SK(a,b);break a}g=E<<2;U=v[a+8>>2];V=v[a+4>>2];m=v[a+36>>2];while(1){h=v[m+(d<<2)>>2];b:{if((h|0)==-1){break b}if((h|0)<0){if(!(!g|n)){n=v[37696]+12|0;n=Ba[v[v[n>>2]+8>>2]](n,g,24422,13489,1402)|0}e=h&2147483647;z[(o<<2)+n>>2]=z[B(e,24)+V>>2]-z[(h<<2)+U>>2];c:{if(i){break c}i=v[c>>2];if(i){i=Cx(i,g,1);break c}if(!g){i=0;break c}i=v[37696]+12|0;i=Ba[v[v[i>>2]+8>>2]](i,g,24422,13489,373)|0}v[((o^-1)+E<<2)+i>>2]=e;o=o+1|0;break b}d:{if(i){break d}i=v[c>>2];if(i){i=Cx(i,g,1);break d}if(!g){i=0;break d}i=v[37696]+12|0;i=Ba[v[v[i>>2]+8>>2]](i,g,24422,13489,373)|0}v[(f<<2)+i>>2]=d;f=f+1|0}d=d+1|0;if((E|0)!=(d|0)){continue}break}u=v[a+68>>2];e:{if(f){if(u){F=v[a+56>>2];g=v[F+(v[i>>2]<<3)>>2];W=v[a+84>>2];X=v[a+60>>2];Q=v[a+80>>2];l=v[Q>>2];Y=v[a+64>>2];Z=v[a+36>>2];m=0;h=f+u|0;q=h-v[a+88>>2]|0;d=q+6|0;e=d<<3;if(e){m=v[37696]+12|0;m=Ba[v[v[m>>2]+8>>2]](m,e,24422,13489,1521)|0}d=d<<4;if(d){e=v[37696]+12|0;x=Ba[v[v[e>>2]+8>>2]](e,d,24422,13489,1522)|0}d=(q<<3)+m|0;v[d>>2]=-1;v[d+40>>2]=-1;v[d+32>>2]=-1;v[d+24>>2]=-1;v[d+16>>2]=-1;v[d+8>>2]=-1;d=q<<2;if(d){e=v[37696]+12|0;y=Ba[v[v[e>>2]+8>>2]](e,d,24422,13489,1525)|0}if(h){e=0;d=0;while(1){f:{if(g>>>0>l>>>0){r=v[(e<<2)+Y>>2];if((r|0)!=-1){v[(d<<2)+y>>2]=r;l=(d<<3)+m|0;k=(e<<3)+Q|0;v[l>>2]=v[k>>2];v[l+4>>2]=v[k+4>>2];l=(e<<4)+W|0;A=v[l>>2];R=v[l+4>>2];S=v[l+12>>2];k=(d<<4)+x|0;v[k+8>>2]=v[l+8>>2];v[k+12>>2]=S;v[k>>2]=A;v[k+4>>2]=R}l=-1;e=e+1|0;if(u>>>0<=e>>>0){break f}l=v[(e<<3)+Q>>2];break f}g=v[(D<<2)+i>>2];r=v[(g<<2)+Z>>2];v[(d<<2)+y>>2]=r;k=(d<<3)+m|0;A=(g<<3)+F|0;v[k>>2]=v[A>>2];v[k+4>>2]=v[A+4>>2];g=(g<<4)+X|0;A=v[g>>2];R=v[g+4>>2];S=v[g+12>>2];k=(d<<4)+x|0;v[k+8>>2]=v[g+8>>2];v[k+12>>2]=S;v[k>>2]=A;v[k+4>>2]=R;g=-1;D=D+1|0;if(D>>>0>=f>>>0){break f}g=v[(v[(D<<2)+i>>2]<<3)+F>>2]}h=h-1|0;if((r|0)!=-1){v[(r<<2)+b>>2]=v[a>>2]|d<<3|4;d=d+1|0}if(h){continue}break}}d=v[a+84>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d);v[a+84>>2]=0}d=v[a+80>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+84>>2]=x;v[a+80>>2]=m;v[a+72>>2]=q;v[a+76>>2]=q;d=v[a+64>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+88>>2]=0;v[a+68>>2]=q;v[a+64>>2]=y;break e}g:{if(LK(a+72|0,f)){d=f<<2;if(d){g=v[37696]+12|0;g=Ba[v[v[g>>2]+8>>2]](g,d,24422,13489,1604)|0}else{g=0}d=v[a+64>>2];if(d){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,d)}v[a+64>>2]=g;break g}g=v[a+64>>2]}u=v[a+84>>2];r=v[a+60>>2];l=v[a+56>>2];x=v[a+80>>2];d=x+(f<<3)|0;v[d>>2]=-1;v[d+40>>2]=-1;v[d+32>>2]=-1;v[d+24>>2]=-1;v[d+16>>2]=-1;v[d+8>>2]=-1;d=0;while(1){e=d<<2;h=v[e+i>>2];q=v[m+(h<<2)>>2];v[g+e>>2]=q;y=d<<3;e=y+x|0;k=l+(h<<3)|0;v[e>>2]=v[k>>2];v[e+4>>2]=v[k+4>>2];h=r+(h<<4)|0;k=v[h>>2];D=v[h+4>>2];F=v[h+12>>2];e=u+(d<<4)|0;v[e+8>>2]=v[h+8>>2];v[e+12>>2]=F;v[e>>2]=k;v[e+4>>2]=D;v[(q<<2)+b>>2]=y|v[a>>2]|4;d=d+1|0;if((f|0)!=(d|0)){continue}break}v[a+68>>2]=f;break e}if(!u|!v[a+88>>2]){break e}SK(a,b)}h:{if(o){d=o<<2;f=v[c>>2];i:{j:{if(f){g=Cx(f,d,1);break j}if(!d){g=0;e=0;break i}f=v[37696]+12|0;g=Ba[v[v[f>>2]+8>>2]](f,d,24422,13489,373)|0}f=v[c>>2];if(f){e=Cx(f,d,1);break i}e=0;if(!d){break i}f=v[37696]+12|0;e=Ba[v[v[f>>2]+8>>2]](f,d,24422,13489,373)|0}d=w+5128|0;v[d+8>>2]=0;v[d+12>>2]=0;t[d+32|0]=1;v[d+4>>2]=-2147483648;v[d>>2]=140592;v[d+16>>2]=0;v[d+20>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;f=w+1024|0;if((g|0)!=0&(e|0)!=0&(f|0)!=0&(w|0)!=0){t[d+32|0]=0;v[d+20>>2]=w;v[d+16>>2]=f;v[d+12>>2]=e;v[d+8>>2]=g;v[d+4>>2]=v[d+4>>2]|-2147483648}f=v[QU(d,n,o)+8>>2];k:{if(LK(a+48|0,o)){d=v[a+36>>2];if(d){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,d)}v[a+36>>2]=n;break k}if(n){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,n)}n=v[a+36>>2]}m=v[a+56>>2];d=m+(o<<3)|0;v[d>>2]=-1;v[d+40>>2]=-1;v[d+32>>2]=-1;v[d+24>>2]=-1;v[d+16>>2]=-1;v[d+8>>2]=-1;q=v[a+60>>2];u=v[a>>2];K=C(-34028234663852886e22);L=C(34028234663852886e22);h=0;M=C(34028234663852886e22);N=C(34028234663852886e22);O=C(-34028234663852886e22);P=C(-34028234663852886e22);while(1){d=v[((v[f>>2]^-1)+E<<2)+i>>2];v[(h<<2)+n>>2]=d;r=d<<2;l=h<<3;v[r+b>>2]=l|u;d=B(d,24)+V|0;_=z[d+4>>2];G=z[d+8>>2];H=z[d+16>>2];I=z[d+20>>2];J=z[d>>2];l=l+m|0;s=z[r+U>>2];T=C(s+z[d+12>>2]);d=(p(T),j(2));v[l+4>>2]=(d|0)<0?d^-1:d|-2147483648;J=C(J-s);d=(p(J),j(2));v[l>>2]=(d|0)<0?d^-1:d|-2147483648;d=q+(h<<4)|0;I=C(s+I);z[d+12>>2]=I;H=C(s+H);z[d+8>>2]=H;G=C(G-s);z[d+4>>2]=G;s=C(_-s);z[d>>2]=s;K=K>I?K:I;O=O>H?O:H;P=P>T?P:T;L=LM?M:s;N=N>2]=N;z[a+32>>2]=K;z[a+28>>2]=O;z[a+24>>2]=P;z[a+20>>2]=L;z[a+16>>2]=M;JK(c,e);JK(c,g);break h}if(n){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,n)}b=v[a+60>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+60>>2]=0}b=v[a+56>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+48>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;b=v[a+36>>2];if(!b){break h}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+36>>2]=0}v[a+40>>2]=o;v[a+44>>2]=o;if(!i){break a}JK(c,i)}xa=w+5168|0}function QU(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=C(0),r=C(0),s=0,t=0,u=0,x=0,y=0,A=0;a:{if(!b|(c|0)<=0){break a}v[a+24>>2]=v[a+24>>2]+1;I9(v[a+16>>2],0,4096);m=c<<2;g=m+b|0;f=v[a+16>>2];h=f+3072|0;n=f+2048|0;o=f+1024|0;b:{if(v[a+4>>2]<0){if(m){q=z[b>>2];d=b;while(1){r=q;e=v[d>>2];q=z[d>>2];if(r>q){break b}e=f+((e&255)<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[d+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[d+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[d+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;d=d+4|0;if((g|0)!=(d|0)){continue}break}}v[a+28>>2]=v[a+28>>2]+1;c=c>>>0>1?c:1;h=c&7;b=v[a+8>>2];f=0;d=0;if(c-1>>>0>=7){c=c&-8;e=0;while(1){v[b+(d<<2)>>2]=d;g=d|1;v[b+(g<<2)>>2]=g;g=d|2;v[b+(g<<2)>>2]=g;g=d|3;v[b+(g<<2)>>2]=g;g=d|4;v[b+(g<<2)>>2]=g;g=d|5;v[b+(g<<2)>>2]=g;g=d|6;v[b+(g<<2)>>2]=g;g=d|7;v[b+(g<<2)>>2]=g;d=d+8|0;e=e+8|0;if((c|0)!=(e|0)){continue}break}}if(!h){break a}while(1){v[b+(d<<2)>>2]=d;d=d+1|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}break a}if(m){e=v[a+8>>2];q=z[(v[e>>2]<<2)+b>>2];d=b;while(1){r=q;q=z[(v[e>>2]<<2)+b>>2];if(r>q){break b}l=f+(w[d|0]<<2)|0;v[l>>2]=v[l>>2]+1;l=o+(w[d+1|0]<<2)|0;v[l>>2]=v[l>>2]+1;l=n+(w[d+2|0]<<2)|0;v[l>>2]=v[l>>2]+1;l=h+(w[d+3|0]<<2)|0;v[l>>2]=v[l>>2]+1;e=e+4|0;d=d+4|0;if((g|0)!=(d|0)){continue}break}}v[a+28>>2]=v[a+28>>2]+1;return a}if((d|0)!=(g|0)){while(1){e=f+(w[d|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[d+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[d+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[d+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;d=d+4|0;if((g|0)!=(d|0)){continue}break}}f=128;l=0;while(1){d=f<<2;l=v[h+(d|12)>>2]+(v[h+(d|8)>>2]+(v[h+(d|4)>>2]+(v[d+h>>2]+l|0)|0)|0)|0;f=f+4|0;if((f|0)!=256){continue}break}u=m-4|0;A=u&4;d=c>>>0>1?c:1;x=d&-4;o=d&3;s=d&-2;t=d&1;m=d-1|0;n=0;while(1){h=v[a+16>>2]+(n<<10)|0;g=b+n|0;f=w[g|0];d=v[h+(f<<2)>>2]==(c|0);h=d?0:h;c:{d:{e:{f:{if((n|0)!=3){if(!h){break c}d=v[a+20>>2];e=v[a+12>>2];v[d>>2]=e;f=1;while(1){i=f<<2;j=i+d|0;k=e;e=h+i|0;k=k+(v[e-4>>2]<<2)|0;v[j>>2]=k;i=i+4|0;e=k+(v[e>>2]<<2)|0;v[i+d>>2]=e;e=e+(v[h+i>>2]<<2)|0;v[j+8>>2]=e;f=f+3|0;if((f|0)!=256){continue}break}if(v[a+4>>2]<0){h=0;f=0;if(!m){break f}while(1){i=d+(w[g+(h<<2)|0]<<2)|0;e=v[i>>2];v[i>>2]=e+4;v[e>>2]=h;i=h|1;j=d+(w[g+(i<<2)|0]<<2)|0;e=v[j>>2];v[j>>2]=e+4;v[e>>2]=i;h=h+2|0;f=f+2|0;if((s|0)!=(f|0)){continue}break}break f}f=v[a+8>>2];h=f;if(!A){e=v[f>>2];i=d+(w[g+(e<<2)|0]<<2)|0;h=v[i>>2];v[i>>2]=h+4;v[h>>2]=e;h=f+4|0}if(!u){break e}e=f+(c<<2)|0;while(1){i=v[h>>2];j=d+(w[g+(i<<2)|0]<<2)|0;f=v[j>>2];v[j>>2]=f+4;v[f>>2]=i;i=v[h+4>>2];j=d+(w[g+(i<<2)|0]<<2)|0;f=v[j>>2];v[j>>2]=f+4;v[f>>2]=i;h=h+8|0;if((e|0)!=(h|0)){continue}break}break e}g:{if(!d){d=v[a+20>>2];e=v[a+12>>2]+(l<<2)|0;v[d>>2]=e;f=1;while(1){k=e;e=f<<2;i=e+h|0;g=k+(v[i-4>>2]<<2)|0;v[d+e>>2]=g;e=e+4|0;g=g+(v[i>>2]<<2)|0;v[e+d>>2]=g;i=f+2<<2;e=g+(v[e+h>>2]<<2)|0;v[i+d>>2]=e;g=f+3|0;if((g|0)!=128){e=e+(v[h+i>>2]<<2)|0;v[d+(g<<2)>>2]=e;f=f+4|0;continue}break}v[d+1020>>2]=v[a+12>>2];f=0;while(1){e=254-f<<2;g=e+d|0;i=255-f<<2;v[g>>2]=v[i+d>>2]+(v[h+i>>2]<<2);if((f|0)==126){e=128;while(1){f=e<<2;g=f+d|0;v[g>>2]=v[g>>2]+(v[f+h>>2]<<2);g=f|4;i=g+d|0;v[i>>2]=v[i>>2]+(v[h+g>>2]<<2);g=f|8;i=g+d|0;v[i>>2]=v[i>>2]+(v[h+g>>2]<<2);f=f|12;g=f+d|0;v[g>>2]=v[g>>2]+(v[f+h>>2]<<2);e=e+4|0;if((e|0)!=256){continue}break}if(v[a+4>>2]<0){h=0;e=0;if(!m){break g}while(1){i=v[(h<<2)+b>>2];j=d+(i>>>22&1020)|0;f=v[j>>2];g=f-4|0;i=(i|0)>=0;v[j>>2]=i?f+4|0:g;v[(i?f:g)>>2]=h;i=h|1;j=v[(i<<2)+b>>2];k=d+(j>>>22&1020)|0;f=v[k>>2];g=f-4|0;j=(j|0)>=0;v[k>>2]=j?f+4|0:g;v[(j?f:g)>>2]=i;h=h+2|0;e=e+2|0;if((s|0)!=(e|0)){continue}break}break g}f=v[a+8>>2];h=0;e=0;if(m){while(1){j=h<<2;k=v[j+f>>2];p=v[(k<<2)+b>>2];y=d+(p>>>22&1020)|0;g=v[y>>2];i=g-4|0;p=(p|0)>=0;v[y>>2]=p?g+4|0:i;v[(p?g:i)>>2]=k;j=v[f+(j|4)>>2];k=v[(j<<2)+b>>2];p=d+(k>>>22&1020)|0;g=v[p>>2];i=g-4|0;k=(k|0)>=0;v[p>>2]=k?g+4|0:i;v[(k?g:i)>>2]=j;h=h+2|0;e=e+2|0;if((s|0)!=(e|0)){continue}break}}if(!t){break e}f=v[f+(h<<2)>>2];e=v[(f<<2)+b>>2];g=d+(e>>>22&1020)|0;d=v[g>>2];h=d-4|0;e=(e|0)>=0;v[g>>2]=e?d+4|0:h;v[(e?d:h)>>2]=f;break e}else{v[d+(253-f<<2)>>2]=v[g>>2]+(v[e+h>>2]<<2);f=f+2|0;continue}}}if(f<<24>>24>=0){break a}h:{if(v[a+4>>2]<0){h=v[a+12>>2];e=0;d=0;f=0;if(m>>>0<3){break h}while(1){g=d<<2;v[g+h>>2]=(d^-1)+c;i=c-d|0;v[(g|4)+h>>2]=i-2;v[(g|8)+h>>2]=i-3;v[(g|12)+h>>2]=i-4;d=d+4|0;f=f+4|0;if((x|0)!=(f|0)){continue}break}break h}h=v[a+12>>2];e=v[a+8>>2];f=0;d=0;i=0;if(m>>>0>=3){while(1){g=d<<2;v[g+h>>2]=v[((d^-1)+c<<2)+e>>2];j=(c-d<<2)+e|0;v[(g|4)+h>>2]=v[j-8>>2];v[(g|8)+h>>2]=v[j-12>>2];v[(g|12)+h>>2]=v[j-16>>2];d=d+4|0;i=i+4|0;if((x|0)!=(i|0)){continue}break}}if(!o){break d}while(1){v[(d<<2)+h>>2]=v[((d^-1)+c<<2)+e>>2];d=d+1|0;f=f+1|0;if((o|0)!=(f|0)){continue}break}break d}if(o){while(1){v[(d<<2)+h>>2]=(d^-1)+c;d=d+1|0;e=e+1|0;if((o|0)!=(e|0)){continue}break}}v[a+4>>2]=v[a+4>>2]&2147483647;e=v[a+8>>2];break d}if(t){e=v[(h<<2)+b>>2];g=d+(e>>>22&1020)|0;d=v[g>>2];f=d-4|0;e=(e|0)>=0;v[g>>2]=e?d+4|0:f;v[(e?d:f)>>2]=h}v[a+4>>2]=v[a+4>>2]&2147483647;break e}if(t){f=d+(w[g+(h<<2)|0]<<2)|0;d=v[f>>2];v[f>>2]=d+4;v[d>>2]=h}v[a+4>>2]=v[a+4>>2]&2147483647}h=v[a+12>>2];e=v[a+8>>2]}v[a+12>>2]=e;v[a+8>>2]=h}n=n+1|0;if((n|0)!=4){continue}break}}return a}function z2(a,b){var c=0,d=0,e=0,f=0,g=C(0),h=C(0),i=0,j=0,k=0,l=0,m=C(0),n=0,o=0,p=C(0),q=C(0),r=0,s=0,u=C(0),x=C(0),y=C(0),A=C(0),B=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0);c=xa-256|0;xa=c;g=z[a+44>>2];k=c-(b+15&-16)|0;t[k|0]=0;if(b>>>0>=2){e=1;d=b-1|0;r=d&1;if((b|0)!=2){s=d&-2;d=0;while(1){t[e+k|0]=e;p=z[((e<<6)+a|0)+44>>2];l=e+1|0;t[l+k|0]=l;q=z[((l<<6)+a|0)+44>>2];j=g>p;g=j?p:g;o=q>2]>2];E=z[l+36>>2];F=z[l+32>>2];J=z[l+28>>2];p=z[l+24>>2];q=z[l+20>>2];y=z[l+16>>2];d=v[l+48>>2];v[c+216>>2]=v[l+44>>2];v[c+220>>2]=d;f=w[k|0];if(i>>>0>=2){d=(f<<6)+a|0;g=C(z[d+24>>2]-p);u=C(g*g);g=C(z[d+16>>2]-y);x=C(g*g);g=C(z[d+20>>2]-q);g=C(u+C(x+C(g*g)));e=1;while(1){j=w[e+k|0];d=(j<<6)+a|0;h=C(z[d+24>>2]-p);u=C(h*h);h=C(z[d+16>>2]-y);x=C(h*h);h=C(z[d+20>>2]-q);h=C(u+C(x+C(h*h)));d=h>g;g=d?h:g;n=d?e:n;f=d?j:f;e=e+1|0;if((i|0)!=(e|0)){continue}break}}j=b-2|0;t[k+n|0]=w[j+k|0];d=255;f=((f&255)<<6)+a|0;e=v[f+12>>2];v[c+244>>2]=v[f+8>>2];v[c+248>>2]=e;e=v[f+4>>2];v[c+236>>2]=v[f>>2];v[c+240>>2]=e;G=z[f+20>>2];H=z[f+24>>2];I=z[f+16>>2];e=v[f+48>>2];v[c+144>>2]=v[f+44>>2];v[c+148>>2]=e;e=v[f+40>>2];v[c+136>>2]=v[f+36>>2];v[c+140>>2]=e;e=v[f+32>>2];v[c+128>>2]=v[f+28>>2];v[c+132>>2]=e;h=C(I-y);m=C(G-q);g=C(C(h*E)-C(F*m));x=g;u=C(g*g);g=C(m*D);m=C(H-p);g=C(g-C(E*m));h=C(C(m*F)-C(D*h));A=C(u+C(C(g*g)+C(h*h)));m=C(C(1)/C(K(A)));f=A>C(0);A=f?C(x*m):D;u=f?C(h*m):E;x=f?C(g*m):F;e=0;a:{if(!j){f=-1;break a}g=C(34028234663852886e22);h=C(-34028234663852886e22);f=-1;d=-1;while(1){r=w[e+k|0];i=(r<<6)+a|0;m=C(C(C(z[i+24>>2]-p)*A)+C(C(C(z[i+16>>2]-y)*x)+C(u*C(z[i+20>>2]-q))));i=mC(0)}i=b-3|0;t[k+n|0]=w[i+k|0];d=(d<<6)+a|0;v[c+212>>2]=v[d+48>>2];j=v[d+44>>2];v[c+204>>2]=v[d+40>>2];v[c+208>>2]=j;j=v[d+36>>2];v[c+196>>2]=v[d+32>>2];v[c+200>>2]=j;j=v[d+28>>2];v[c+188>>2]=v[d+24>>2];v[c+192>>2]=j;j=v[d+20>>2];v[c+180>>2]=v[d+16>>2];v[c+184>>2]=j;j=v[d+12>>2];v[c+172>>2]=v[d+8>>2];v[c+176>>2]=j;j=v[d+4>>2];v[c+164>>2]=v[d>>2];v[c+168>>2]=j;d=(f|0)==(i|0)?n:f;if(!(!e|!i)){g=C(-34028234663852886e22);e=0;while(1){n=w[e+k|0];f=(n<<6)+a|0;h=C(C(C(z[f+24>>2]-p)*A)+C(C(C(z[f+16>>2]-y)*x)+C(u*C(z[f+20>>2]-q))));f=h>g;g=f?h:g;d=f?e:d;o=f?n:o;e=e+1|0;if((i|0)!=(e|0)){continue}break}}f=b-4|0;t[d+k|0]=w[f+k|0];d=((o&255)<<6)+a|0;v[c+124>>2]=v[d+48>>2];e=v[d+44>>2];v[c+116>>2]=v[d+40>>2];v[c+120>>2]=e;e=v[d+36>>2];v[c+108>>2]=v[d+32>>2];v[c+112>>2]=e;e=v[d+28>>2];v[c+100>>2]=v[d+24>>2];v[c+104>>2]=e;e=v[d+20>>2];v[c+92>>2]=v[d+16>>2];v[c+96>>2]=e;e=v[d+12>>2];v[c+84>>2]=v[d+8>>2];v[c+88>>2]=e;e=v[d+4>>2];v[c+76>>2]=v[d>>2];v[c+80>>2]=e;if(f){o=b&1;b:{if((b|0)==5){g=C(34028234663852886e22);d=-1;e=0;break b}j=f&-2;g=C(34028234663852886e22);f=-1;e=0;d=-1;i=0;while(1){r=w[e+k|0];h=z[((r<<6)+a|0)+44>>2];b=h>2];n=g>h;d=n?B:b?r:d;g=n?h:g;f=n?s:b?e:f;e=e+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(o){b=w[e+k|0];d=z[((b<<6)+a|0)+44>>2]>2]=v[b+48>>2];d=v[b+44>>2];v[c+52>>2]=v[b+40>>2];v[c+56>>2]=d;d=v[b+36>>2];v[c+44>>2]=v[b+32>>2];v[c+48>>2]=d;d=v[b+28>>2];v[c+36>>2]=v[b+24>>2];v[c+40>>2]=d;d=v[b+20>>2];v[c+28>>2]=v[b+16>>2];v[c+32>>2]=d;d=v[b+12>>2];v[c+20>>2]=v[b+8>>2];v[c+24>>2]=d;d=v[b+4>>2];v[c+12>>2]=v[b>>2];v[c+16>>2]=d;b=v[l+8>>2];d=v[l+12>>2];f=v[l>>2];e=v[l+4>>2];z[a+40>>2]=D;z[a+36>>2]=E;z[a+32>>2]=F;z[a+28>>2]=J;z[a+24>>2]=p;z[a+20>>2]=q;z[a+16>>2]=y;v[a+8>>2]=b;v[a+12>>2]=d;v[a>>2]=f;v[a+4>>2]=e;b=v[c+220>>2];v[a+44>>2]=v[c+216>>2];v[a+48>>2]=b;b=v[c+240>>2];v[a+64>>2]=v[c+236>>2];v[a+68>>2]=b;b=v[c+248>>2];v[a+72>>2]=v[c+244>>2];v[a+76>>2]=b;z[a+88>>2]=H;z[a+84>>2]=G;z[a+80>>2]=I;b=v[c+148>>2];v[a+108>>2]=v[c+144>>2];v[a+112>>2]=b;b=v[c+140>>2];v[a+100>>2]=v[c+136>>2];v[a+104>>2]=b;b=v[c+132>>2];v[a+92>>2]=v[c+128>>2];v[a+96>>2]=b;b=v[c+168>>2];v[a+128>>2]=v[c+164>>2];v[a+132>>2]=b;b=v[c+176>>2];v[a+136>>2]=v[c+172>>2];v[a+140>>2]=b;b=v[c+184>>2];v[a+144>>2]=v[c+180>>2];v[a+148>>2]=b;b=v[c+192>>2];v[a+152>>2]=v[c+188>>2];v[a+156>>2]=b;b=v[c+200>>2];v[a+160>>2]=v[c+196>>2];v[a+164>>2]=b;b=v[c+208>>2];v[a+168>>2]=v[c+204>>2];v[a+172>>2]=b;v[a+176>>2]=v[c+212>>2];v[a+240>>2]=v[c+124>>2];b=v[c+120>>2];v[a+232>>2]=v[c+116>>2];v[a+236>>2]=b;b=v[c+112>>2];v[a+224>>2]=v[c+108>>2];v[a+228>>2]=b;b=v[c+104>>2];v[a+216>>2]=v[c+100>>2];v[a+220>>2]=b;b=v[c+96>>2];v[a+208>>2]=v[c+92>>2];v[a+212>>2]=b;b=v[c+88>>2];v[a+200>>2]=v[c+84>>2];v[a+204>>2]=b;b=v[c+80>>2];v[a+192>>2]=v[c+76>>2];v[a+196>>2]=b;b=v[c+16>>2];v[a+256>>2]=v[c+12>>2];v[a+260>>2]=b;b=v[c+24>>2];v[a+264>>2]=v[c+20>>2];v[a+268>>2]=b;b=v[c+32>>2];v[a+272>>2]=v[c+28>>2];v[a+276>>2]=b;b=v[c+40>>2];v[a+280>>2]=v[c+36>>2];v[a+284>>2]=b;b=v[c+48>>2];v[a+288>>2]=v[c+44>>2];v[a+292>>2]=b;b=v[c+56>>2];v[a+296>>2]=v[c+52>>2];v[a+300>>2]=b;v[a+304>>2]=v[c+60>>2];xa=c+256|0}function Bv(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=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0);i=xa-4944|0;xa=i;f=v[f>>2];D=z[a+4>>2];z[i+4928>>2]=D;s=z[e>>2];z[i+4912>>2]=s;H=z[c+20>>2];u=z[c+24>>2];k=z[c>>2];F=z[c+4>>2];p=z[c+8>>2];y=z[c+12>>2];E=z[c+16>>2];v[i+4908>>2]=0;z[i+4904>>2]=u;z[i+4900>>2]=H;z[i+4896>>2]=E;z[i+4892>>2]=y;z[i+4888>>2]=p;z[i+4884>>2]=F;z[i+4880>>2]=k;o=z[d+20>>2];G=z[d+24>>2];n=z[d>>2];m=z[d+4>>2];l=z[d+8>>2];j=z[d+12>>2];q=z[d+16>>2];v[i+4876>>2]=0;z[i+4872>>2]=G;z[i+4868>>2]=o;z[i+4864>>2]=q;z[i+4860>>2]=j;z[i+4856>>2]=l;z[i+4852>>2]=m;z[i+4848>>2]=n;N=C(C(C(p*n)-C(l*k))+C(C(F*j)-C(y*m)));Q=C(C(C(F*l)-C(m*p))+C(C(k*j)-C(y*n)));I=C(C(C(k*m)-C(n*F))+C(C(p*j)-C(y*l)));A=k;k=C(-n);F=C(C(y*j)-C(C(C(A*k)-C(F*m))-C(l*p)));A=k;k=C(E-q);p=C(H-o);y=C(u-G);H=C(C(C(A*k)-C(p*m))-C(l*y));u=C(C(j*j)+C(-.5));E=C(C(C(u*k)+C(j*C(C(l*p)-C(m*y))))-C(n*H));T=C(E+E);E=C(T-z[f+16>>2]);E=E>C(0)?E:C(-E);o=C(C(C(u*p)+C(j*C(C(n*y)-C(l*k))))-C(m*H));U=C(o+o);o=C(U-z[f+20>>2]);o=o>C(0)?o:C(-o);o=o<=E?E:o;j=C(C(C(j*C(C(m*k)-C(n*p)))+C(u*y))-C(l*H));V=C(j+j);j=C(V-z[f+24>>2]);j=(j>C(0)?j:C(-j))>=C(0)?E:C(0);a:{if(C(C(F*z[f+12>>2])+C(C(I*z[f+8>>2])+C(C(Q*z[f>>2])+C(N*z[f+4>>2]))))>2]=D*C(.0010000000474974513);r=i+4816|0;v[r>>2]=0;v[r+4>>2]=1065353216;r=i+4808|0;v[r>>2]=0;v[r+4>>2]=0;r=i+4800|0;v[r>>2]=0;v[r+4>>2]=1065353216;r=i+4792|0;v[r>>2]=0;v[r+4>>2]=0;r=i+4784|0;v[r>>2]=1065353216;v[r+4>>2]=1065353216;r=i+4768|0;v[r>>2]=1065353216;v[r+4>>2]=0;t[i+4824|0]=0;v[i+4776>>2]=0;v[i+4780>>2]=0;v[i+4760>>2]=0;v[i+4764>>2]=0;v[i+4752>>2]=1065353216;v[i+4756>>2]=0;r=z[b+4>>2]==C(1)&z[b+8>>2]==C(1)&z[b+12>>2]==C(1);if(!r){IX(i+4752|0,b+4|0,b+16|0)}Y=z[e>>2];Z=z[a+4>>2];p=z[d+20>>2];y=z[c+20>>2];D=z[d+16>>2];H=z[c+16>>2];u=z[d+24>>2];E=z[c+24>>2];j=z[d+8>>2];n=z[d+12>>2];m=z[d+4>>2];l=z[d>>2];o=z[a+8>>2];K=z[c+8>>2];G=z[c+12>>2];O=z[c+4>>2];q=z[c>>2];c=v[i+4940>>2];a=i+4744|0;v[a>>2]=v[i+4936>>2];v[a+4>>2]=c;v[i+4732>>2]=0;v[i+4716>>2]=0;k=C(E-u);s=C(k+k);k=C(H-D);A=C(k+k);k=C(y-p);J=C(k+k);W=C(C(j*s)+C(C(l*A)+C(m*J)));k=C(C(n*n)+C(-.5));L=C(C(j*W)+C(C(s*k)-C(n*C(C(l*J)-C(A*m)))));z[i+4664>>2]=L;M=C(q+q);P=C(G+G);R=C(o*C(C(K*M)-C(O*P)));S=C(R+R);G=C(o*C(C(q*M)+C(C(G*P)+C(-1))));q=C(G+G);o=C(o*C(C(K*P)+C(M*O)));K=C(o+o);O=C(C(j*S)+C(C(l*q)+C(m*K)));P=C(C(j*O)+C(C(S*k)-C(n*C(C(l*K)-C(q*m)))));z[i+4728>>2]=L-P;M=C(C(m*W)+C(C(J*k)-C(n*C(C(j*A)-C(s*l)))));z[i+4660>>2]=M;X=C(C(m*O)+C(C(K*k)-C(n*C(C(j*q)-C(S*l)))));z[i+4724>>2]=M-X;z[i+4712>>2]=L+P;z[i+4708>>2]=M+X;a=v[i+4932>>2];v[i+4736>>2]=v[i+4928>>2];v[i+4740>>2]=a;v[i+4668>>2]=0;v[i+4684>>2]=4;t[i+4688|0]=1;L=z[i+4736>>2];z[i+4680>>2]=L;z[i+4676>>2]=L;z[i+4672>>2]=L;s=C(C(l*W)+C(C(A*k)-C(n*C(C(m*s)-C(J*j)))));z[i+4656>>2]=s;q=C(C(l*O)+C(C(q*k)-C(n*C(C(m*S)-C(K*j)))));z[i+4720>>2]=s-q;z[i+4704>>2]=s+q;q=C(C(E-R)-u);q=C(q+q);s=C(C(H-G)-D);s=C(s+s);A=C(C(y-o)-p);A=C(A+A);J=C(C(j*q)+C(C(l*s)+C(m*A)));z[i+4644>>2]=C(j*J)+C(C(q*k)-C(n*C(C(l*A)-C(s*m))));z[i+4640>>2]=C(m*J)+C(C(A*k)-C(n*C(C(j*s)-C(q*l))));z[i+4648>>2]=Z+Y;z[i+4636>>2]=C(l*J)+C(C(s*k)-C(n*C(C(m*q)-C(A*j))));u=C(C(R+E)-u);u=C(u+u);D=C(C(H+G)-D);D=C(D+D);p=C(C(y+o)-p);p=C(p+p);y=C(C(j*u)+C(C(l*D)+C(m*p)));z[i+4632>>2]=C(j*y)+C(C(u*k)-C(n*C(C(l*p)-C(D*m))));z[i+4628>>2]=C(m*y)+C(C(p*k)-C(n*C(C(j*D)-C(u*l))));z[i+4624>>2]=C(l*y)+C(C(D*k)-C(n*C(C(m*u)-C(p*j))));a=v[b+40>>2];v[f+28>>2]=0;z[f+24>>2]=V;z[f+20>>2]=U;z[f+16>>2]=T;z[f+12>>2]=F;z[f+8>>2]=I;z[f+4>>2]=N;z[f>>2]=Q;t[f+62|0]=0;b=v[a+56>>2];v[i+932>>2]=0;t[i+80|0]=r;v[i+76>>2]=b;v[i+68>>2]=2;v[i+64>>2]=144452;v[i+72>>2]=i+4752;e=y1(i+944|0,i+4912|0,i+4832|0,i+4880|0,i+4848|0,f,g,0,h);j=C(z[i+4736>>2]+z[i+4912>>2]);z[i+4576>>2]=j;z[i+4592>>2]=j*j;v[i+4608>>2]=i+4656;DV(i,i+4624|0);if(!r){mZ(i+4752|0,i+36|0,i+48|0,i)}Ba[v[(x[a+4>>1]<<2)+144476>>2]](a,i,i- -64|0,1,1);h=v[i+932>>2];if(h){a=i+660|0;b=i+852|0;c=i+916|0;d=i+84|0;while(1){L1(e,d,v[b>>2],w[c|0]);c=c+1|0;b=b+4|0;a=a+12|0;d=d+36|0;h=h-1|0;if(h){continue}break}v[i+932>>2]=0}z1(e,3,0);break a}a=0;v[i+124>>2]=0;z[i+120>>2]=V;z[i+116>>2]=U;v[i+108>>2]=0;v[i+92>>2]=0;m=C(N+N);l=C(I*m);j=C(Q+Q);n=C(F*j);z[i+100>>2]=l-n;z[i+88>>2]=l+n;l=C(C(1)-C(Q*j));n=C(N*m);z[i+104>>2]=l-n;A=l;l=C(I+I);k=C(I*l);z[i+84>>2]=A-k;z[i+112>>2]=T;v[i+76>>2]=0;I=C(I*j);m=C(F*m);z[i+96>>2]=I+m;j=C(N*j);l=C(F*l);z[i+80>>2]=j-l;z[i+72>>2]=I-m;z[i+68>>2]=j+l;z[i+64>>2]=C(C(1)-n)-k;z[i+4752>>2]=D*C(.05000000074505806);z[i>>2]=D+s;if(!w[f+62|0]){break a}while(1){c=a+f|0;b=w[c+56|0];d=f+B(b,400)|0;A2(i+4656|0,d- -64|0,i- -64|0,i+4752|0);b:{if(!v[d+448>>2]){d=w[f+62|0]-1|0;t[f+62|0]=d;d=f+(d&255)|0;e=w[d+56|0];t[d+56|0]=b;t[c+56|0]=e;a=a-1|0;break b}z[(f+(b<<2)|0)+32>>2]=z[i+4656>>2]}a=a+1|0;if(a>>>0>2];a:{if((f|0)==v[a+4>>2]){Ba[v[v[f>>2]+152>>2]](f,x[a+8>>1],x[a+10>>1],e+160|0,e+128|0);d=v[e+172>>2];v[e+344>>2]=v[e+168>>2];v[e+348>>2]=d;d=v[e+164>>2];v[e+336>>2]=v[e+160>>2];v[e+340>>2]=d;d=v[e+180>>2];v[e+320>>2]=v[e+176>>2];v[e+324>>2]=d;d=v[e+188>>2];v[e+328>>2]=v[e+184>>2];v[e+332>>2]=d;d=v[e+132>>2];v[e+304>>2]=v[e+128>>2];v[e+308>>2]=d;d=v[e+140>>2];v[e+312>>2]=v[e+136>>2];v[e+316>>2]=d;d=v[e+148>>2];v[e+288>>2]=v[e+144>>2];v[e+292>>2]=d;d=v[e+156>>2];v[e+296>>2]=v[e+152>>2];v[e+300>>2]=d;d=v[a>>2];Ba[v[v[d>>2]+120>>2]](e+96|0,d,x[a+8>>1]);d=v[a+4>>2];Ba[v[v[d>>2]+120>>2]](e- -64|0,d,x[a+10>>1]);d=v[e+116>>2];v[e+256>>2]=v[e+112>>2];v[e+260>>2]=d;d=v[e+108>>2];v[e+280>>2]=v[e+104>>2];v[e+284>>2]=d;d=v[e+100>>2];v[e+272>>2]=v[e+96>>2];v[e+276>>2]=d;d=v[e+124>>2];v[e+264>>2]=v[e+120>>2];v[e+268>>2]=d;d=v[e+68>>2];v[e+240>>2]=v[e+64>>2];v[e+244>>2]=d;d=v[e+76>>2];v[e+248>>2]=v[e+72>>2];v[e+252>>2]=d;d=v[e+84>>2];v[e+224>>2]=v[e+80>>2];v[e+228>>2]=d;d=v[e+92>>2];v[e+232>>2]=v[e+88>>2];v[e+236>>2]=d;d=v[a>>2];d=Ba[v[v[d>>2]+168>>2]](d,x[a+8>>1])|0;f=v[d>>2];g=v[d+4>>2];h=v[d+12>>2];v[e+216>>2]=v[d+8>>2];v[e+220>>2]=h;v[e+208>>2]=f;v[e+212>>2]=g;d=v[a+4>>2];d=Ba[v[v[d>>2]+168>>2]](d,x[a+10>>1])|0;f=v[d>>2];g=v[d+4>>2];h=v[d+12>>2];v[e+200>>2]=v[d+8>>2];v[e+204>>2]=h;v[e+192>>2]=f;v[e+196>>2]=g;break a}g=x[a+8>>1];b:{if((g|0)==65535){g=v[f+4>>2];h=v[f>>2];i=z[f+8>>2];v[e+348>>2]=0;z[e+344>>2]=i;v[e+336>>2]=h;v[e+340>>2]=g;i=z[f+24>>2];g=v[f+16>>2];h=v[f+20>>2];v[e+332>>2]=0;z[e+328>>2]=i;v[e+320>>2]=g;v[e+324>>2]=h;i=z[f+56>>2];g=v[f+48>>2];h=v[f+52>>2];v[e+284>>2]=0;z[e+280>>2]=i;v[e+272>>2]=g;v[e+276>>2]=h;i=z[f+40>>2];g=v[f+32>>2];f=v[f+36>>2];v[e+268>>2]=0;z[e+264>>2]=i;v[e+256>>2]=g;v[e+260>>2]=f;f=(v[a+12>>2]<<6)+d|0;i=z[f+12>>2];k=z[f+8>>2];l=z[f+4>>2];z[e+208>>2]=z[f>>2];break b}Ba[v[v[f>>2]+156>>2]](e+160|0,f,g);f=v[a>>2];f=Ba[v[v[f>>2]+168>>2]](f,x[a+8>>1])|0;i=z[f+12>>2];k=z[f+8>>2];l=z[f+4>>2];z[e+208>>2]=z[f>>2];f=v[a>>2];Ba[v[v[f>>2]+120>>2]](e+128|0,f,x[a+8>>1]);f=v[e+172>>2];v[e+344>>2]=v[e+168>>2];v[e+348>>2]=f;f=v[e+164>>2];v[e+336>>2]=v[e+160>>2];v[e+340>>2]=f;f=v[e+180>>2];v[e+320>>2]=v[e+176>>2];v[e+324>>2]=f;f=v[e+188>>2];v[e+328>>2]=v[e+184>>2];v[e+332>>2]=f;f=v[e+132>>2];v[e+272>>2]=v[e+128>>2];v[e+276>>2]=f;f=v[e+140>>2];v[e+280>>2]=v[e+136>>2];v[e+284>>2]=f;f=v[e+148>>2];v[e+256>>2]=v[e+144>>2];v[e+260>>2]=f;f=v[e+156>>2];v[e+264>>2]=v[e+152>>2];v[e+268>>2]=f}z[e+220>>2]=i;z[e+216>>2]=k;z[e+212>>2]=l;f=x[a+10>>1];if((f|0)==65535){f=v[a+4>>2];g=v[f+4>>2];h=v[f>>2];i=z[f+8>>2];v[e+316>>2]=0;z[e+312>>2]=i;v[e+304>>2]=h;v[e+308>>2]=g;i=z[f+24>>2];g=v[f+16>>2];h=v[f+20>>2];v[e+300>>2]=0;z[e+296>>2]=i;v[e+288>>2]=g;v[e+292>>2]=h;i=z[f+56>>2];g=v[f+48>>2];h=v[f+52>>2];v[e+252>>2]=0;z[e+248>>2]=i;v[e+240>>2]=g;v[e+244>>2]=h;i=z[f+40>>2];g=v[f+32>>2];f=v[f+36>>2];v[e+236>>2]=0;z[e+232>>2]=i;v[e+224>>2]=g;v[e+228>>2]=f;d=(v[a+16>>2]<<6)+d|0;f=v[d+8>>2];g=v[d+12>>2];h=v[d+4>>2];v[e+192>>2]=v[d>>2];v[e+196>>2]=h;v[e+200>>2]=f;v[e+204>>2]=g;break a}d=v[a+4>>2];Ba[v[v[d>>2]+156>>2]](e+160|0,d,f);d=v[a+4>>2];d=Ba[v[v[d>>2]+168>>2]](d,x[a+10>>1])|0;f=v[d>>2];g=v[d+4>>2];h=v[d+12>>2];v[e+200>>2]=v[d+8>>2];v[e+204>>2]=h;v[e+192>>2]=f;v[e+196>>2]=g;d=v[a+4>>2];Ba[v[v[d>>2]+120>>2]](e+128|0,d,x[a+10>>1]);d=v[e+172>>2];v[e+312>>2]=v[e+168>>2];v[e+316>>2]=d;d=v[e+164>>2];v[e+304>>2]=v[e+160>>2];v[e+308>>2]=d;d=v[e+180>>2];v[e+288>>2]=v[e+176>>2];v[e+292>>2]=d;d=v[e+188>>2];v[e+296>>2]=v[e+184>>2];v[e+300>>2]=d;d=v[e+132>>2];v[e+240>>2]=v[e+128>>2];v[e+244>>2]=d;d=v[e+140>>2];v[e+248>>2]=v[e+136>>2];v[e+252>>2]=d;d=v[e+148>>2];v[e+224>>2]=v[e+144>>2];v[e+228>>2]=d;d=v[e+156>>2];v[e+232>>2]=v[e+152>>2];v[e+236>>2]=d}pB(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=x[a+8>>1];d=v[a>>2];c:{if((d|0)==v[a+4>>2]){Ba[v[v[d>>2]+132>>2]](d,f,e+160|0,e+96|0,x[a+10>>1],e+128|0,e- -64|0,v[c+32>>2],v[c+36>>2]);break c}d:{if((f|0)==65535){f=v[e+336>>2];g=v[e+340>>2];z[d+8>>2]=z[e+344>>2];v[d>>2]=f;v[d+4>>2]=g;b=z[e+328>>2];f=v[e+324>>2];d=v[a>>2];v[d+16>>2]=v[e+320>>2];v[d+20>>2]=f;z[d+24>>2]=b;break d}g=v[c+36>>2];h=v[c+32>>2];m=v[v[d>>2]+128>>2];j=v[e+172>>2];v[e+56>>2]=v[e+168>>2];v[e+60>>2]=j;j=v[e+164>>2];v[e+48>>2]=v[e+160>>2];v[e+52>>2]=j;j=v[e+100>>2];v[e+32>>2]=v[e+96>>2];v[e+36>>2]=j;j=v[e+108>>2];v[e+40>>2]=v[e+104>>2];v[e+44>>2]=j;Ba[m|0](d,f,e+48|0,e+32|0,h,g)}d=x[a+10>>1];if((d|0)==65535){d=v[e+304>>2];f=v[e+308>>2];c=v[a+4>>2];z[c+8>>2]=z[e+312>>2];v[c>>2]=d;v[c+4>>2]=f;b=z[e+296>>2];c=v[e+292>>2];a=v[a+4>>2];v[a+16>>2]=v[e+288>>2];v[a+20>>2]=c;z[a+24>>2]=b;break c}f=v[c+36>>2];c=v[c+32>>2];a=v[a+4>>2];g=v[v[a>>2]+128>>2];h=v[e+140>>2];v[e+24>>2]=v[e+136>>2];v[e+28>>2]=h;h=v[e+132>>2];v[e+16>>2]=v[e+128>>2];v[e+20>>2]=h;h=v[e+68>>2];v[e>>2]=v[e+64>>2];v[e+4>>2]=h;h=v[e+76>>2];v[e+8>>2]=v[e+72>>2];v[e+12>>2]=h;Ba[g|0](a,d,e+16|0,e,c,f)}xa=e+352|0}function F_(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);j=xa+-64|0;xa=j;p=z[b>>2];r=z[b+4>>2];t=z[b+8>>2];h=z[e+16>>2];i=z[e+20>>2];m=z[e+8>>2];o=z[e>>2];w=z[e+4>>2];x=z[e+12>>2];s=z[a+8>>2];k=C(s-z[c+8>>2]);y=z[e+32>>2];A=z[a>>2];u=C(A-z[c>>2]);B=z[e+24>>2];D=z[a+4>>2];q=C(D-z[c+4>>2]);E=z[e+28>>2];l=C(C(k*y)+C(C(u*B)+C(q*E)));z[j+40>>2]=l;n=C(C(k*i)+C(C(u*x)+C(q*h)));z[j+36>>2]=n;k=C(C(k*m)+C(C(u*o)+C(q*w)));z[j+32>>2]=k;q=C(t-s);p=C(p-A);r=C(r-D);u=C(C(y*q)+C(C(B*p)+C(E*r)));z[j+24>>2]=u;x=C(C(q*i)+C(C(p*x)+C(r*h)));z[j+20>>2]=x;w=C(C(q*m)+C(C(p*o)+C(r*w)));z[j+16>>2]=w;a:{if(!(w>2]=h;k=C(-k);z[j+32>>2]=k}b:{if(!(x>2]=i;n=C(-n);z[j+36>>2]=n}c:{if(!(u>2]=m;l=C(-l);z[j+40>>2]=l}v[j+12>>2]=0;d:{if(h>C(0)){if(i>C(0)){if(m>C(0)){q=z[d>>2];p=z[d+4>>2];o=C(l-z[d+8>>2]);z[j+56>>2]=o;n=C(n-p);z[j+52>>2]=n;k=C(k-q);z[j+48>>2]=k;if(C(i*k)>=C(h*n)){if(C(m*k)>=C(h*o)){G_(0,1,2,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}G_(2,0,1,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}if(C(m*n)>=C(i*o)){G_(1,2,0,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}G_(2,0,1,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}o=z[d>>2];m=C(k-o);t=C(m*i);r=z[d+4>>2];q=C(n-r);s=C(q*h);e:{if(t>=s){z[j+32>>2]=o;p=C(0);q=C(n+r);k=C(t-C(h*q));if(k>=C(0)){z[j+36>>2]=-r;o=C(C(1)/C(C(h*h)+C(i*i)));p=C(C(C(k*k)*o)+C(0));z[j+12>>2]=p;m=C(C(h*m)+C(q*i));break e}o=C(C(1)/h);z[j+36>>2]=n-C(t*o);break e}z[j+36>>2]=r;p=C(0);n=C(k+o);m=C(s-C(i*n));if(m>=C(0)){z[j+32>>2]=-o;o=C(C(1)/C(C(h*h)+C(i*i)));p=C(C(C(m*m)*o)+C(0));z[j+12>>2]=p;m=C(C(h*n)+C(q*i));break e}o=C(C(1)/i);z[j+32>>2]=k-C(s*o);m=q}z[j+8>>2]=o*C(-m);h=z[d+8>>2];k=C(-h);f:{if(l>2]=k;z[j+12>>2]=h;break d}i=z[d>>2];if(m>C(0)){o=C(k-i);t=C(o*m);r=z[d+8>>2];q=C(l-r);s=C(q*h);g:{if(t>=s){z[j+32>>2]=i;p=C(0);k=C(l+r);i=C(t-C(h*k));if(i>=C(0)){z[j+40>>2]=-r;q=C(i*i);i=C(C(1)/C(C(h*h)+C(m*m)));p=C(C(q*i)+C(0));z[j+12>>2]=p;o=C(C(h*o)+C(k*m));break g}i=C(C(1)/h);z[j+40>>2]=l-C(t*i);break g}z[j+40>>2]=r;p=C(0);l=C(k+i);o=C(s-C(m*l));if(o>=C(0)){z[j+32>>2]=-i;i=C(C(1)/C(C(h*h)+C(m*m)));p=C(C(C(o*o)*i)+C(0));z[j+12>>2]=p;o=C(C(h*l)+C(q*m));break g}i=C(C(1)/m);z[j+32>>2]=k-C(s*i);o=q}z[j+8>>2]=i*C(-o);h=z[d+4>>2];k=C(-h);h:{if(n>2]=k;z[j+12>>2]=h;break d}z[j+32>>2]=i;z[j+8>>2]=C(i-k)/h;h=z[d+4>>2];i=C(-h);i:{j:{if(n>2]=i;z[j+12>>2]=k}i=z[d+8>>2];h=C(-i);k:{if(l>2]=h;z[j+12>>2]=l;break d}if(i>C(0)){h=z[d+4>>2];if(m>C(0)){o=C(n-h);t=C(o*m);r=z[d+8>>2];q=C(l-r);s=C(q*i);l:{if(t>=s){z[j+36>>2]=h;p=C(0);n=C(l+r);h=C(t-C(i*n));if(h>=C(0)){z[j+40>>2]=-r;q=C(h*h);h=C(C(1)/C(C(i*i)+C(m*m)));p=C(C(q*h)+C(0));z[j+12>>2]=p;o=C(C(i*o)+C(n*m));break l}h=C(C(1)/i);z[j+40>>2]=l-C(t*h);break l}z[j+40>>2]=r;p=C(0);l=C(n+h);o=C(s-C(m*l));if(o>=C(0)){z[j+36>>2]=-h;h=C(C(1)/C(C(i*i)+C(m*m)));p=C(C(C(o*o)*h)+C(0));z[j+12>>2]=p;o=C(C(i*l)+C(q*m));break l}h=C(C(1)/m);z[j+36>>2]=n-C(s*h);o=q}z[j+8>>2]=h*C(-o);h=z[d>>2];n=C(-h);m:{if(n>k){h=C(k+h);h=C(C(h*h)+p);break m}if(!(h>2]=n;z[j+12>>2]=h;break d}z[j+36>>2]=h;z[j+8>>2]=C(h-n)/i;h=z[d>>2];i=C(-h);n:{o:{if(k>2]=i;z[j+12>>2]=n}i=z[d+8>>2];h=C(-i);p:{if(l>2]=h;z[j+12>>2]=l;break d}if(m>C(0)){h=z[d+8>>2];z[j+40>>2]=h;z[j+8>>2]=C(h-l)/m;h=z[d>>2];i=C(-h);q:{r:{if(k>2]=i;z[j+12>>2]=l}i=z[d+4>>2];h=C(-i);s:{if(n>2]=h;z[j+12>>2]=l;break d}i=z[d>>2];m=C(-i);t:{u:{if(m>k){h=C(k+i);h=C(C(h*h)+C(0));break u}h=C(0);if(!(i>2]=m;z[j+12>>2]=h}k=z[d+4>>2];i=C(-k);v:{w:{if(n>2]=i;z[j+12>>2]=h}i=z[d+8>>2];k=C(-i);x:{y:{if(l>2]=k;z[j+12>>2]=l}v[j+8>>2]=0}if(w>2]=-z[j+32>>2]}if(x>2]=-z[j+36>>2]}h=z[j+8>>2];z:{if(h>=C(0)){if(h<=C(1)){if(f){z[f>>2]=h}i=z[j+12>>2];if(!g){break z}h=z[j+36>>2];k=z[j+32>>2];m=z[j+40>>2];z[g+8>>2]=u>2]=h;z[g>>2]=k;break z}if(f){v[f>>2]=1065353216}i=C_(b,c,d,e,g);break z}if(f){v[f>>2]=0}i=C_(a,c,d,e,g)}xa=j- -64|0;return i}function rB(a,b,c){var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=0,ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0);d=v[a+24>>2];if(d){m=v[a+4>>2];y=z[m+24>>2];A=z[m+20>>2];n=v[a>>2];B=z[n+24>>2];D=z[n+20>>2];E=z[m+16>>2];F=z[n+16>>2];G=z[m+8>>2];H=z[m+4>>2];I=z[m>>2];J=z[n+8>>2];K=z[n+4>>2];L=z[n>>2];sa=w[d+1|0];if(sa){U=z[d+120>>2];M=z[n+40>>2];V=z[d+112>>2];N=z[n+32>>2];O=z[n+36>>2];W=z[d+116>>2];X=z[d+168>>2];P=z[m+40>>2];Y=z[d+160>>2];Q=z[m+32>>2];R=z[m+36>>2];Z=z[d+164>>2];Aa=C(z[d+172>>2]+C(C(C(U*M)+C(C(V*N)+C(O*W)))-C(C(X*P)+C(C(Y*Q)+C(R*Z)))));_=z[d+104>>2];$=z[d+96>>2];aa=z[d+100>>2];ba=z[d+152>>2];ca=z[d+144>>2];da=z[d+148>>2];Ba=C(z[d+156>>2]+C(C(C(_*M)+C(C($*N)+C(O*aa)))-C(C(ba*P)+C(C(ca*Q)+C(R*da)))));ea=z[d+88>>2];fa=z[d+80>>2];ga=z[d+84>>2];ha=z[d+136>>2];ia=z[d+128>>2];ja=z[d+132>>2];Ca=C(z[d+140>>2]+C(C(C(ea*M)+C(C(fa*N)+C(O*ga)))-C(C(ha*P)+C(C(ia*Q)+C(R*ja)))));s=(v[a+16>>2]<<6)+b|0;e=z[s+12>>2];i=z[s+8>>2];k=z[d+56>>2];j=z[s>>2];h=z[d+48>>2];o=z[s+4>>2];g=z[d+52>>2];p=C(C(i*k)+C(C(j*h)+C(o*g)));q=C(C(e*e)+C(-.5));l=C(C(C(e*C(C(j*g)-C(h*o)))+C(q*k))+C(i*p));ka=C(l+l);Da=C(C(ka+z[m+56>>2])-k);l=C(C(o*p)+C(C(q*g)+C(e*C(C(i*h)-C(k*j)))));la=C(l+l);Ea=C(C(la+z[m+52>>2])-g);e=C(C(j*p)+C(C(q*h)+C(e*C(C(o*k)-C(g*i)))));ma=C(e+e);Fa=C(C(ma+z[m+48>>2])-h);a=(v[a+12>>2]<<6)+b|0;e=z[a+12>>2];i=z[a+8>>2];k=z[d+40>>2];j=z[a>>2];h=z[d+32>>2];o=z[a+4>>2];g=z[d+36>>2];p=C(C(i*k)+C(C(j*h)+C(o*g)));q=C(C(e*e)+C(-.5));l=C(C(C(e*C(C(j*g)-C(h*o)))+C(q*k))+C(i*p));na=C(l+l);Ga=C(C(na+z[n+56>>2])-k);l=C(C(o*p)+C(C(q*g)+C(e*C(C(i*h)-C(k*j)))));oa=C(l+l);Ha=C(C(oa+z[n+52>>2])-g);e=C(C(j*p)+C(C(q*h)+C(e*C(C(o*k)-C(g*i)))));pa=C(e+e);Ia=C(C(pa+z[n+48>>2])-h);Ja=z[d+124>>2];Ka=z[d+108>>2];La=z[d+92>>2];Ma=z[s+28>>2];Na=z[a+28>>2];Oa=z[s+60>>2];Pa=z[s+56>>2];Qa=z[s+52>>2];Ra=z[s+48>>2];Sa=z[s+44>>2];Ta=z[s+40>>2];Ua=z[s+36>>2];Va=z[s+32>>2];Wa=z[a+60>>2];Xa=z[a+56>>2];Ya=z[a+52>>2];Za=z[a+48>>2];_a=z[a+44>>2];$a=z[a+40>>2];ab=z[a+36>>2];bb=z[a+32>>2];S=z[d+68>>2];T=z[d+60>>2];ta=z[d+28>>2];ua=z[d+12>>2];a=d+176|0;cb=C(-la);db=C(-ma);eb=C(-ka);fb=C(-oa);gb=C(-pa);hb=C(-na);b=0;while(1){o=z[a+4>>2];p=z[a>>2];h=C(C(C(pa*o)+C(p*fb))+z[a+40>>2]);q=z[a+8>>2];g=C(C(C(oa*q)+C(o*hb))+z[a+32>>2]);i=C(C(C(na*p)+C(q*gb))+z[a+36>>2]);e=C(C(Wa*h)+C(C(ab*g)+C(Za*i)));k=C(C(Xa*h)+C(C(bb*g)+C(_a*i)));h=C(C(Ya*h)+C(C(Na*g)+C($a*i)));l=z[a+20>>2];u=z[a+16>>2];j=C(C(C(ma*l)+C(u*cb))+z[a+56>>2]);x=z[a+24>>2];f=C(C(C(la*x)+C(l*eb))+z[a+48>>2]);r=C(C(C(ka*u)+C(x*db))+z[a+52>>2]);g=C(C(Oa*j)+C(C(Ua*f)+C(Ra*r)));i=C(C(Pa*j)+C(C(Va*f)+C(Sa*r)));j=C(C(Qa*j)+C(C(Ma*f)+C(Ta*r)));qa=z[a+80>>2];d=v[a+84>>2];va=d&64?C(-34028234663852886e22):C(-qa);ra=z[a+12>>2];wa=z[a+68>>2];xa=z[a+72>>2];ib=z[a+44>>2];ya=z[a+76>>2];jb=z[a+60>>2];za=z[a+64>>2];kb=z[a+28>>2];lb=z[a+92>>2];if(d&16){f=C(La*C(C(C(ea*e)+C(ha*g))+C(C(C(fa*h)+C(ia*j))+C(C(ga*k)+C(ja*i)))));r=C(Ka*C(C(C(_*e)+C(ba*g))+C(C(C($*h)+C(ca*j))+C(C(aa*k)+C(da*i)))));t=C(Ja*C(C(C(U*e)+C(X*g))+C(C(C(V*h)+C(Y*j))+C(C(W*k)+C(Z*i)))));ra=C(ra-C(C(Ca*f)+C(C(Ba*r)+C(Aa*t))));g=C(g-C(C(ha*f)+C(C(ba*r)+C(X*t))));i=C(i-C(C(ja*f)+C(C(da*r)+C(Z*t))));j=C(j-C(C(ia*f)+C(C(ca*r)+C(Y*t))));k=C(k-C(C(ga*f)+C(C(aa*r)+C(W*t))));h=C(h-C(C(fa*f)+C(C($*r)+C(V*t))));e=C(e-C(C(ea*f)+C(C(_*r)+C(U*t))))}f=C(C(C(ta*C(C(x*x)+C(C(u*u)+C(l*l))))-C(C(C(j*C(S*j))+C(i*C(S*i)))+C(g*C(S*g))))+C(C(ua*C(C(q*q)+C(C(p*p)+C(o*o))))+C(C(C(h*C(T*h))+C(k*C(T*k)))+C(e*C(T*e)))));f=f>C(0)?C(C(1)/f):C(0);t=C(C(C(C(C(C(L*p)+C(F*h))-C(C(I*u)+C(E*j)))+C(C(C(K*o)+C(D*k))-C(C(H*l)+C(A*i))))+C(C(C(J*q)+C(B*e))-C(C(G*x)+C(y*g))))*C(ib*f));r=f;f=C(kb*C(C(C(C(C(C(Ga*q)+C(C(Ia*p)+C(Ha*o)))-C(C(Da*x)+C(C(Fa*u)+C(Ea*l))))+ra)+C(lb*C(C(C(e*M)+C(C(h*N)+C(O*k)))-C(C(g*P)+C(C(j*Q)+C(R*i))))))-C(za*c)));f=f>qa?qa:f;f=C(C(jb*ya)+C(t+C(r*C(za+(f>va?f:va)))));f=f>xa?xa:f;f=f>wa?f:wa;z[a+76>>2]=f;r=g;g=C(f-ya);f=C(S*g);y=C(y+C(r*f));A=C(A+C(i*f));E=C(E+C(j*f));f=e;e=C(T*g);B=C(B+C(f*e));D=C(D+C(k*e));F=C(F+C(h*e));e=C(ta*g);G=C(G-C(x*e));H=C(H-C(l*e));I=C(I-C(u*e));e=C(ua*g);J=C(J+C(q*e));K=C(K+C(o*e));L=C(L+C(p*e));a=a+96|0;b=b+1|0;if((sa|0)!=(b|0)){continue}break}}z[n+24>>2]=B;z[n+20>>2]=D;z[n+16>>2]=F;z[n+8>>2]=J;z[n+4>>2]=K;z[n>>2]=L;z[m+24>>2]=y;z[m+20>>2]=A;z[m+16>>2]=E;z[m+8>>2]=G;z[m+4>>2]=H;z[m>>2]=I}}function hV(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),w=C(0),x=0,y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0;q=xa+-64|0;xa=q;l=z[c+12>>2];V=C(D(l));a:{if(!(V>2];n=C(i+i);e=z[c+8>>2];o=C(n*e);t=z[c>>2];h=C(t+t);f=C(h*l);w=C(o-f);B=C(h*e);E=C(n*l);m=C(B+E);r=C(o+f);g=C(h*i);j=C(e+e);k=C(j*l);o=C(g-k);f=C(B-E);t=C(C(1)-C(t*h));n=C(i*n);h=C(t-n);e=C(e*j);i=C(t-e);n=C(C(C(1)-n)-e);e=C(g+k)}z[a+12>>2]=n;z[a+44>>2]=h;z[a+40>>2]=w;z[a+36>>2]=m;z[a+32>>2]=r;z[a+28>>2]=i;z[a+24>>2]=o;z[a+20>>2]=f;z[a+16>>2]=e;t=z[c+16>>2];z[a+48>>2]=t;B=z[c+20>>2];z[a+52>>2]=B;E=z[c+24>>2];z[a+56>>2]=E;b:{c:{switch(v[b>>2]){case 0:e=z[b+4>>2];d=C(C(C(e+d)+C(0))*C(1.0099999904632568));z[a+92>>2]=E+d;z[a+88>>2]=B+d;z[a+84>>2]=t+d;z[a+80>>2]=E-d;z[a+76>>2]=B-d;z[a+72>>2]=t-d;x=v[c+20>>2];X=v[c+16>>2];d=z[c+24>>2];z[a+112>>2]=e;z[a+108>>2]=d;v[a+100>>2]=X;v[a+104>>2]=x;break b;case 2:i=z[b+8>>2];h=z[b+4>>2];v[a+96>>2]=2143289344;d=C(h+d);m=C(C(C(i*C(D(f)))+d)*C(1.0099999904632568));z[a+92>>2]=E+m;e=C(C(C(i*C(D(e)))+d)*C(1.0099999904632568));z[a+88>>2]=B+e;d=C(C(C(i*C(D(n)))+d)*C(1.0099999904632568));z[a+84>>2]=t+d;z[a+80>>2]=E-m;z[a+76>>2]=B-e;z[a+72>>2]=t-d;o=z[c+16>>2];f=z[c+20>>2];d=z[c>>2];e=C(d+d);w=z[c+8>>2];r=z[c+4>>2];m=C(l+l);n=C(i*C(C(e*w)-C(r*m)));z[a+108>>2]=n+z[c+24>>2];k=f;f=C(i*C(C(w*m)+C(e*r)));z[a+104>>2]=k+f;d=C(i*C(C(d*e)+C(C(l*m)+C(-1))));z[a+100>>2]=o+d;e=z[c+16>>2];m=z[c+20>>2];o=z[c+24>>2];z[a+124>>2]=h;z[a+60>>2]=i;w=C(h*C(1.0099999904632568));z[a+8>>2]=w;z[a+4>>2]=w;z[a>>2]=C(h+i)*C(1.0099999904632568);z[a+120>>2]=o-n;z[a+116>>2]=m-f;z[a+112>>2]=e-d;break b;case 3:l=z[b+8>>2];g=z[b+4>>2];j=z[b+12>>2];z[a+68>>2]=j;z[a- -64>>2]=l;k=z[a+60>>2];z[a+60>>2]=g;p=k;k=C(o*g);s=k>C(0)?k:C(-k);k=C(m*l);s=C(s+(k>C(0)?k:C(-k)));k=C(t*j);z[a+96>>2]=p+C(C(C(s+(k>C(0)?k:C(-k)))+d)*C(1.0099999904632568));f=C(f*g);k=f>C(0)?f:C(-f);f=C(r*l);h=C(h*j);h=C(C(C(C(k+(f>C(0)?f:C(-f)))+(h>C(0)?h:C(-h)))+d)*C(1.0099999904632568));z[a+92>>2]=E+h;e=C(e*g);f=e>C(0)?e:C(-e);e=C(i*l);f=C(f+(e>C(0)?e:C(-e)));e=C(w*j);i=C(C(C(f+(e>C(0)?e:C(-e)))+d)*C(1.0099999904632568));z[a+88>>2]=B+i;e=C(n*g);f=e>C(0)?e:C(-e);e=C(o*l);f=C(f+(e>C(0)?e:C(-e)));e=C(m*j);d=C(C(C(f+(e>C(0)?e:C(-e)))+d)*C(1.0099999904632568));z[a+84>>2]=t+d;z[a+80>>2]=E-h;z[a+76>>2]=B-i;z[a+72>>2]=t-d;d=z[b+8>>2];e=z[b+4>>2];z[a+8>>2]=z[b+12>>2]*C(1.0099999904632568);z[a+4>>2]=d*C(1.0099999904632568);z[a>>2]=e*C(1.0099999904632568);break b;case 4:break c;default:break b}}l=z[b+12>>2];x=v[b+32>>2];k=z[b+4>>2];g=z[b+8>>2];d:{if(!(k!=C(1)|g!=C(1)|l!=C(1))){l=z[x+16>>2];g=z[x+20>>2];j=z[x+24>>2];k=C(C(C(l*f)+C(g*r))+C(j*h));A=C(C(C(l*e)+C(g*i))+C(j*w));l=C(C(C(l*n)+C(g*o))+C(j*m));g=z[x+36>>2];h=C(h*g);w=C(w*g);m=C(m*g);g=z[x+32>>2];r=C(r*g);i=C(i*g);g=C(o*g);j=z[x+28>>2];f=C(f*j);o=C(e*j);e=C(n*j);break d}I=z[b+16>>2];A=C(I+I);j=z[b+24>>2];H=C(A*j);p=z[b+20>>2];F=C(p+p);J=z[b+28>>2];L=C(F*J);s=C(H-L);K=C(l*s);M=C(p*F);N=C(j+j);O=C(j*N);y=C(C(C(1)-M)-O);S=C(k*y);P=C(A*p);G=C(N*J);p=C(P+G);N=C(g*p);T=z[x+16>>2];U=C(C(s*K)+C(C(y*S)+C(p*N)));Q=C(F*j);W=C(A*J);j=C(Q+W);J=C(l*j);F=C(P-G);P=C(k*F);G=C(C(1)-C(I*A));A=C(G-O);I=C(g*A);O=C(C(s*J)+C(C(y*P)+C(p*I)));R=s;s=l;l=C(G-M);s=C(s*l);G=y;y=k;k=C(H+L);y=C(y*k);H=p;p=g;g=C(Q-W);p=C(p*g);H=C(C(R*s)+C(C(G*y)+C(H*p)));Q=C(C(C(f*U)+C(O*r))+C(H*h));L=z[x+20>>2];M=C(C(j*K)+C(C(F*S)+C(A*N)));G=C(C(j*J)+C(C(F*P)+C(A*I)));j=C(C(j*s)+C(C(F*y)+C(A*p)));F=C(C(C(f*M)+C(G*r))+C(j*h));R=f;f=C(C(l*K)+C(C(k*S)+C(g*N)));K=C(C(l*J)+C(C(k*P)+C(g*I)));R=C(C(R*f)+C(K*r));r=C(C(l*s)+C(C(k*y)+C(g*p)));g=C(R+C(r*h));h=z[x+24>>2];k=C(C(C(T*Q)+C(L*F))+C(g*h));p=C(C(C(e*U)+C(i*O))+C(H*w));s=C(C(C(e*M)+C(i*G))+C(j*w));i=C(C(C(e*f)+C(i*K))+C(r*w));A=C(C(C(T*p)+C(s*L))+C(i*h));y=C(C(C(n*U)+C(o*O))+C(H*m));j=C(C(C(n*M)+C(o*G))+C(j*m));m=C(C(C(n*f)+C(o*K))+C(r*m));l=C(C(C(y*T)+C(j*L))+C(m*h));e=z[x+36>>2];h=C(g*e);w=C(i*e);m=C(m*e);e=z[x+32>>2];r=C(F*e);i=C(s*e);g=C(j*e);e=z[x+28>>2];f=C(Q*e);o=C(p*e);e=C(y*e)}v[a+96>>2]=2143289344;n=C(E+k);h=C(C(C(C(C(D(f))+C(D(r)))+C(D(h)))+d)*C(1.0099999904632568));z[a+92>>2]=n+h;f=C(B+A);i=C(C(C(C(C(D(o))+C(D(i)))+C(D(w)))+d)*C(1.0099999904632568));z[a+88>>2]=f+i;o=C(t+l);d=C(C(C(C(C(D(e))+C(D(g)))+C(D(m)))+d)*C(1.0099999904632568));z[a+84>>2]=o+d;z[a+80>>2]=n-h;z[a+76>>2]=f-i;z[a+72>>2]=o-d;s_(q,b,x,c);z[a+12>>2]=z[q>>2];z[a+16>>2]=z[q+4>>2];z[a+20>>2]=z[q+8>>2];z[a+24>>2]=z[q+12>>2];z[a+28>>2]=z[q+16>>2];z[a+32>>2]=z[q+20>>2];z[a+36>>2]=z[q+24>>2];z[a+40>>2]=z[q+28>>2];z[a+44>>2]=z[q+32>>2];d=z[q+52>>2];e=z[q+48>>2];z[a+8>>2]=z[q+56>>2]*C(1.0099999904632568);z[a+4>>2]=d*C(1.0099999904632568);z[a>>2]=e*C(1.0099999904632568);z[a+48>>2]=z[q+36>>2];z[a+52>>2]=z[q+40>>2];z[a+56>>2]=z[q+44>>2]}u[a+96>>1]=V>1]=v[b>>2];xa=q- -64|0;return a}function O$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0);f=xa-208|0;xa=f;X=z[d+8>>2];a:{b:{aa=z[d>>2];Y=z[d+4>>2];if(aa!=C(1)|Y!=C(1)){break b}q=C(1);if(X!=C(1)){break b}y=z[c+20>>2];r=z[c+24>>2];D=z[a+40>>2];o=z[a+44>>2];s=z[a+16>>2];k=z[a+20>>2];l=z[a+28>>2];p=z[a+32>>2];X=z[a+52>>2];Y=z[a+8>>2];M=z[a>>2];U=z[a+4>>2];O=z[a+48>>2];K=z[c+16>>2];E=z[a+36>>2];h=z[a+12>>2];g=z[c+8>>2];i=z[c+4>>2];A=z[a+24>>2];m=z[c>>2];j=z[c+12>>2];R=z[a+56>>2];z[f+160>>2]=R;z[f+156>>2]=X;G=C(-m);A=C(A+A);H=C(l+l);p=C(p+p);F=C(C(C(G*A)-C(H*i))-C(g*p));l=C(C(j*j)+C(-.5));I=C(C(C(p*l)+C(j*C(C(i*A)-C(m*H))))-C(g*F));z[f+136>>2]=I;B=C(C(C(H*l)+C(j*C(C(m*p)-C(g*A))))-C(i*F));z[f+132>>2]=B;h=C(h+h);x=C(s+s);n=C(k+k);J=C(C(C(G*h)-C(x*i))-C(g*n));s=C(C(C(n*l)+C(j*C(C(i*h)-C(m*x))))-C(g*J));z[f+124>>2]=s;k=C(C(C(x*l)+C(j*C(C(m*n)-C(g*h))))-C(i*J));z[f+120>>2]=k;E=C(E+E);D=C(D+D);o=C(o+o);L=C(C(C(G*E)-C(D*i))-C(g*o));r=C(r*C(-2));K=C(K*C(-2));y=C(y*C(-2));T=C(C(g*r)+C(C(m*K)+C(i*y)));N=C(C(C(g*T)+C(C(r*l)-C(j*C(C(m*y)-C(K*i)))))+C(C(C(o*l)+C(j*C(C(i*E)-C(m*D))))-C(g*L)));z[f+148>>2]=N;S=C(C(C(i*T)+C(C(y*l)-C(j*C(C(g*K)-C(r*m)))))+C(C(C(D*l)+C(j*C(C(m*o)-C(g*E))))-C(i*L)));z[f+144>>2]=S;z[f+152>>2]=O;A=C(C(C(A*l)+C(j*C(C(g*H)-C(i*p))))-C(m*F));z[f+128>>2]=A;F=C(C(C(h*l)+C(j*C(C(g*x)-C(i*n))))-C(m*J));z[f+116>>2]=F;p=C(M+M);h=C(U+U);x=C(Y+Y);n=C(C(C(G*p)-C(h*i))-C(g*x));G=C(C(C(x*l)+C(j*C(C(i*p)-C(m*h))))-C(g*n));z[f+112>>2]=G;H=C(C(C(h*l)+C(j*C(C(m*x)-C(g*p))))-C(i*n));z[f+108>>2]=H;p=C(C(C(p*l)+C(j*C(C(g*h)-C(i*x))))-C(m*n));z[f+104>>2]=p;i=C(C(C(m*T)+C(C(K*l)-C(j*C(C(i*r)-C(y*g)))))+C(C(C(E*l)+C(j*C(C(g*D)-C(i*o))))-C(m*L)));z[f+140>>2]=i;m=C(0);j=C(0);l=C(0);h=C(1);x=C(0);g=C(0);n=C(0);J=C(1);E=C(C(F*B)-C(A*k));D=C(C(k*I)-C(B*s));o=C(I*F);L=C(C(G*E)+C(C(p*D)+C(H*C(C(s*A)-o))));if(L!=C(0)){g=C(C(1)/L);J=C(C(C(p*k)+C(H*C(-F)))*g);h=C(C(C(p*I)-C(A*G))*g);j=C(C(C(H*s)-C(k*G))*g);q=C(D*g);n=C(g*C(-C(C(p*B)-C(A*H))));x=C(g*C(-C(C(p*s)-C(F*G))));l=C(g*C(-C(o+C(A*C(-s)))));m=C(g*C(-C(C(H*I)-C(G*B))));g=C(E*g)}z[f+200>>2]=J;z[f+196>>2]=n;z[f+188>>2]=x;z[f+184>>2]=h;z[f+192>>2]=g;z[f+180>>2]=l;z[f+168>>2]=q;z[f+172>>2]=m;z[f+176>>2]=j;z[f+76>>2]=R;z[f+72>>2]=X;s=C(-S);z[f+92>>2]=-C(C(C(x*s)-C(i*j))-C(N*J));z[f+88>>2]=-C(C(C(h*s)-C(i*m))-C(N*n));u[f+16>>1]=0;v[f+12>>2]=e;v[f+4>>2]=2;v[f>>2]=143596;z[f+68>>2]=O;z[f+84>>2]=-C(C(C(l*s)-C(i*q))-C(N*g));v[f+8>>2]=f+168;G$(f+104|0,1,b,f,1);break a}ba=f+104|0;q_(ba,a,c,d);g=z[d+20>>2];F=z[d+24>>2];B=z[d+16>>2];i=z[a+16>>2];m=z[a+20>>2];q=z[a+40>>2];h=z[a+44>>2];x=z[c+20>>2];j=z[a+28>>2];n=z[c+24>>2];l=z[a+32>>2];k=z[c+4>>2];J=z[c+12>>2];E=z[c>>2];s=z[c+8>>2];D=z[d+8>>2];o=z[d+4>>2];L=z[d>>2];r=z[d+12>>2];A=z[a+8>>2];G=z[a>>2];H=z[a+4>>2];p=z[a+12>>2];y=z[a+36>>2];K=z[c+16>>2];I=z[a+24>>2];v[f+92>>2]=0;y=C(-y);z[f- -64>>2]=C(C(C(I*y)-C(j*q))-C(l*h))+C(C(C(I*K)+C(j*x))+C(l*n));z[f+60>>2]=C(C(C(p*y)-C(i*q))-C(m*h))+C(C(C(p*K)+C(i*x))+C(m*n));z[f+56>>2]=C(C(C(G*y)-C(H*q))-C(A*h))+C(C(C(G*K)+C(H*x))+C(A*n));q=C(r+r);V=C(g*q);y=C(B+B);P=C(F*y);h=C(V+P);x=C(L*h);Z=C(y*g);_=C(q*F);n=C(Z-_);K=C(n*o);$=C(C(1)-C(r*q));R=C(B*y);r=C($-R);y=C(r*D);N=C(E+E);ca=C(s*N);M=C(k+k);da=C(J*M);U=C(ca+da);O=C(C(C(h*x)+C(n*K))+C(r*y));ea=C(k*M);W=C(s+s);fa=C(s*W);T=C(C(C(1)-ea)-fa);S=C(g+g);ga=C(g*S);g=C(C(C(1)-R)-ga);R=C(L*g);q=C(q*B);Q=C(S*F);B=C(q+Q);S=C(o*B);F=C(V-P);V=C(D*F);P=C(C(C(h*R)+C(n*S))+C(r*V));ha=C(N*k);ia=C(W*J);W=C(ha-ia);k=C(q-Q);L=C(L*k);Q=n;q=C($-ga);n=C(o*q);Q=C(C(h*L)+C(Q*n));h=C(Z+_);D=C(D*h);o=C(Q+C(r*D));r=C(C(U*O)+C(C(T*P)+C(W*o)));Z=C(M*s);_=C(N*J);s=C(Z-_);J=C(ha+ia);M=C(C(1)-C(E*N));E=C(M-fa);N=C(C(s*O)+C(C(J*P)+C(E*o)));M=C(M-ea);Q=C(M*O);O=C(ca-da);$=C(O*P);P=C(Z+_);o=C(Q+C($+C(P*o)));z[f+52>>2]=C(C(I*r)+C(j*N))+C(l*o);z[f+48>>2]=C(m*o)+C(C(p*r)+C(i*N));z[f+44>>2]=C(A*o)+C(C(G*r)+C(H*N));o=C(C(C(k*x)+C(q*K))+C(h*y));r=C(C(C(k*R)+C(q*S))+C(h*V));k=C(C(C(k*L)+C(q*n))+C(h*D));q=C(C(U*o)+C(C(T*r)+C(W*k)));h=C(C(s*o)+C(C(J*r)+C(E*k)));k=C(C(M*o)+C(C(O*r)+C(P*k)));z[f+40>>2]=C(C(I*q)+C(j*h))+C(l*k);z[f+36>>2]=C(m*k)+C(C(p*q)+C(i*h));z[f+32>>2]=C(A*k)+C(C(G*q)+C(H*h));Q=I;I=C(C(C(g*x)+C(B*K))+C(F*y));k=C(C(C(g*R)+C(B*S))+C(F*V));g=C(C(C(g*L)+C(B*n))+C(F*D));B=C(C(U*I)+C(C(T*k)+C(W*g)));n=j;j=C(C(s*I)+C(C(J*k)+C(E*g)));g=C(C(M*I)+C(C(O*k)+C(P*g)));z[f+28>>2]=C(C(Q*B)+C(n*j))+C(l*g);z[f+24>>2]=C(g*m)+C(C(p*B)+C(i*j));t[f+17|0]=C(C(aa*Y)*X)>2]=e;v[f+4>>2]=2;v[f+84>>2]=0;v[f+88>>2]=0;v[f>>2]=143628;z[f+20>>2]=C(A*g)+C(C(G*B)+C(H*j));v[f+8>>2]=f+168;c=v[a+52>>2];d=v[a+48>>2];z[f+76>>2]=z[a+56>>2];v[f+68>>2]=d;v[f+72>>2]=c;G$(ba,1,b,f,1)}xa=f+208|0;return w[f+16|0]!=0|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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,x=0,z=0,A=0,C=0,D=0,E=0,F=0;l=xa-32|0;xa=l;a:{if(!c){break a}t[a+337|0]=1;i=a+52|0;x=a+312|0;u=a+284|0;while(1){h=v[(s<<2)+b>>2];d=v[a+300>>2]+(h<<2)|0;e=v[a+296>>2]+(v[d>>2]<<3)|0;o=v[e+4>>2];v[l+24>>2]=v[e>>2];v[l+28>>2]=o;n=v[d>>2];o=hC(u,h);b:{if(!w[a+336|0]){break b}d=v[a+4>>2];if(!d){break b}t[a+338|0]=1;c:{d:{if(n>>>0>=y[a+316>>2]){h=v[a+296>>2]+(n<<3)|0;d=v[h+4>>2];v[l+16>>2]=v[h>>2];v[l+20>>2]=d;break d}h=v[v[a+312>>2]+(n<<2)>>2];e=v[a+296>>2]+(n<<3)|0;f=v[e+4>>2];v[l+16>>2]=v[e>>2];v[l+20>>2]=f;if((h|0)==-1){break d}RB(d,h);qD(i,n,l+16|0,o,1);break c}r=l+16|0;h=o;m=xa-32|0;xa=m;v[m+24>>2]=0;v[m+16>>2]=0;v[m+20>>2]=0;v[m+8>>2]=0;v[m+12>>2]=0;e:{f:{g:{if(!v[i+164>>2]){break g}k=v[i+140>>2];j=v[l+24>>2];e=j;d=0;q=d^-1;g=(e|d)+q|0;p=v[l+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=Raa(f^((d&255)<<24|f>>>8),d^d>>>8,9,0);f=Aa;d=f>>>15|0;e=e^((f&32767)<<17|e>>>15);d=d^f;g=k;k=e<<27^-1;f=k+e|0;e=((d<<27|e>>>5)^-1)+d|0;d=f;e=d>>>0>>0?e+1|0:e;e=g+((v[i+148>>2]-1&(d^((e&2147483647)<<1|d>>>31)))<<2)|0;d=v[e>>2];if((d|0)==-1){break g}k=v[i+136>>2];g=v[i+132>>2];f=g+B(d,20)|0;if((j|0)==v[f>>2]&(p|0)==v[f+4>>2]){break f}while(1){e=(d<<2)+k|0;d=v[e>>2];if((d|0)==-1){break g}f=g+B(d,20)|0;if((j|0)!=v[f>>2]|(p|0)!=v[f+4>>2]){continue}break}break f}g=0;break e}j=v[f+4>>2];v[m+8>>2]=v[f>>2];v[m+12>>2]=j;d=g+B(d,20)|0;f=v[d+12>>2];v[m+16>>2]=v[d+8>>2];v[m+20>>2]=f;v[m+24>>2]=v[d+16>>2];j=v[e>>2];f=j<<2;v[e>>2]=v[f+v[i+136>>2]>>2];e=v[i+164>>2]-1|0;v[i+164>>2]=e;v[i+160>>2]=v[i+160>>2]+1;if((e|0)!=(j|0)){g=v[i+132>>2];k=B(j,20);d=g+k|0;e=g+B(e,20)|0;g=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=g;g=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=g;v[d+16>>2]=v[e+16>>2];p=v[i+136>>2];v[p+f>>2]=v[p+(v[i+164>>2]<<2)>>2];q=v[i+140>>2];e=k+v[i+132>>2]|0;d=v[e+4>>2];e=v[e>>2];k=-1;g=e+k|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;k=e<<13^-1;f=e+k|0;e=(d^-1)+g|0;e=f>>>0>>0?e+1|0:e;d=Raa(f^((e&255)<<24|f>>>8),e^e>>>8,9,0);f=Aa;e=f>>>15|0;d=d^((f&32767)<<17|d>>>15);e=e^f;k=d<<27^-1;f=k+d|0;d=((e<<27|d>>>5)^-1)+e|0;e=f;d=e>>>0>>0?d+1|0:d;e=((v[i+148>>2]-1&(e^((d&2147483647)<<1|e>>>31)))<<2)+q|0;d=v[e>>2];f=v[i+164>>2];if((d|0)!=(f|0)){while(1){e=p+(d<<2)|0;d=v[e>>2];if((f|0)!=(d|0)){continue}break}}v[e>>2]=j}v[i+156>>2]=v[i+156>>2]-1;g=1}h:{if(!g){qD(i,n,r,h,0);d=xa-32|0;xa=d;v[d+20>>2]=h;v[d+24>>2]=n;v[d+8>>2]=0;v[d+12>>2]=0;e=i+4|0;g=bD((B(v[e+4>>2],48)+e|0)+16|0,d+24|0,d+8|0);f=v[e>>2];g=g?v[e+4>>2]:f;i:{if((f|0)==(g|0)){if(!bD((e+B(f,48)|0)+16|0,d+24|0,d+8|0)){break i}}f=e+B(g,48)|0;v[l+8>>2]=v[f+8>>2];f=RC(v[f+12>>2],v[d+12>>2],v[d+24>>2],v[v[e+104>>2]+8>>2]);j:{if(!f|v[f+40>>2]){break j}j=v[f+36>>2];if(!v[j>>2]){break j}r=(e+B(g,48)|0)+16|0;h=0;while(1){v[d>>2]=v[((h<<2)+j|0)+4>>2];g=aD(r,d,d+31|0);if(!w[d+31|0]){v[g>>2]=v[d>>2]}v[g+4>>2]=f;h=h+1|0;j=v[f+36>>2];if(h>>>0>2]){continue}break}h=v[d+20>>2]}if(v[d+24>>2]==(h|0)){break i}v[d>>2]=0;v[d+4>>2]=0;h=bD((e+B(v[e>>2],48)|0)+16|0,d+20|0,d);f=v[e+4>>2];h=h?v[e>>2]:f;if((f|0)==(h|0)){if(!bD((e+B(f,48)|0)+16|0,d+20|0,d)){break i}}g=v[d+4>>2];f=aD((e+B(h,48)|0)+16|0,d+24|0,d+31|0);if(!w[d+31|0]){j=v[d+24>>2];v[f+4>>2]=0;v[f>>2]=j}v[f+4>>2]=g;SC(v[d+4>>2],v[d+20>>2],v[d+24>>2])}xa=d+32|0;break h}RB(v[v[i+200>>2]+(v[m+24>>2]<<3)>>2],v[m+20>>2]);e=v[i+168>>2];d=v[m+24>>2];if(d>>>0>2]){g=v[v[i+172>>2]+(d<<2)>>2]}else{g=-1}RB(e,g);d=v[v[i+200>>2]+(v[m+24>>2]<<3)>>2];p=v[d+8>>2]+B(v[m+20>>2],28)|0;e=v[p+24>>2];f=e>>>1&15;k:{if(!f){break k}g=v[d>>2]+(e>>>3&536870908)|0;d=0;while(1){j=g+(d<<2)|0;if((n|0)==v[j>>2]){k=e&-31;e=f-1|0;v[p+24>>2]=k|e<<1;v[j>>2]=-1;if((d|0)==(e|0)){break k}d=g+(e<<2)|0;v[j>>2]=v[d>>2];v[d>>2]=-1;break k}d=d+1|0;if((f|0)!=(d|0)){continue}break}}qD(i,n,r,h,1);t[i+212|0]=1}xa=m+32|0}kD(x,n,o,v[a+4>>2]);if(!v[a+32>>2]){break b}v[l+12>>2]=o;v[l+8>>2]=n;h=v[a+344>>2];if(h>>>0>=(v[a+348>>2]&2147483647)>>>0){h=0;d=v[a+348>>2];o=d&2147483647?d<<1:1;l:{if(!o){break l}d=o<<3;if(!d){break l}h=v[37696];e=h+12|0;h=(A=e,C=d,D=Ba[v[v[h>>2]+20>>2]](h)|0?35195:63804,E=16608,F=553,z=v[v[e>>2]+8>>2],Ba[z](A|0,C|0,D|0,E|0,F|0)|0)}d=v[a+344>>2];if((d|0)>0){f=(d<<3)+h|0;e=v[a+340>>2];d=h;while(1){g=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=g;e=e+8|0;d=d+8|0;if(f>>>0>d>>>0){continue}break}d=v[a+344>>2]}e=v[l+12>>2];d=(d<<3)+h|0;v[d>>2]=v[l+8>>2];v[d+4>>2]=e;m:{if(v[a+348>>2]<0){break m}d=v[a+340>>2];if(!d){break m}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}v[a+348>>2]=o;v[a+340>>2]=h;v[a+344>>2]=v[a+344>>2]+1;break b}d=v[l+12>>2];h=v[a+340>>2]+(h<<3)|0;v[h>>2]=v[l+8>>2];v[h+4>>2]=d;v[a+344>>2]=v[a+344>>2]+1}s=s+1|0;if((s|0)!=(c|0)){continue}break}if(v[u>>2]){break a}AD(a);t[a+337|0]=1}xa=l+32|0}function oy(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=0,p=0,q=0,r=C(0),s=0,t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=0,X=C(0),Y=C(0),Z=C(0),_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=C(0);o=xa-832|0;xa=o;a:{if(!e){break a}while(1){F=B(q,80)+b|0;s=0;b:{if(!q){break b}W=x[F+78>>1];n=q;while(1){G=n-1|0;V=v[(G<<2)+a>>2];if(W>>>0>=x[V+78>>1]){s=n;break b}v[(n<<2)+a>>2]=V;n=G;if(n){continue}break}}v[(s<<2)+a>>2]=F;q=q+1|0;if((q|0)!=(e|0)){continue}break}if(!e){break a}n=0;if((e|0)!=1){s=e&-2;F=0;while(1){r=C(0);t=C(0);q=B(n,80)+b|0;if(w[q+76|0]&8){t=z[q+12>>2]}z[q+72>>2]=t;q=B(n|1,80)+b|0;if(w[q+76|0]&8){r=z[q+12>>2]}z[q+72>>2]=r;n=n+2|0;F=F+2|0;if((s|0)!=(F|0)){continue}break}}if(!(e&1)){break a}r=C(0);b=B(n,80)+b|0;if(w[b+76|0]&8){r=z[b+12>>2]}z[b+72>>2]=r}if(e){H=z[g+32>>2];I=z[g+28>>2];J=z[g+20>>2];K=z[g+16>>2];L=z[f+32>>2];D=z[f+28>>2];M=z[f+20>>2];N=z[f+16>>2];O=z[g+24>>2];P=z[g+12>>2];Q=z[g+8>>2];R=z[g+4>>2];S=z[g>>2];T=z[f+24>>2];U=z[f+12>>2];X=z[f+8>>2];Y=z[f+4>>2];Z=z[f>>2];f=0;while(1){b=v[(f<<2)+a>>2];r=z[b+56>>2];t=z[b+52>>2];u=z[b+48>>2];y=z[b+24>>2];A=z[b+20>>2];E=z[b+16>>2];g=f<<4;b=g+c|0;v[b+12>>2]=0;z[b+8>>2]=C(L*y)+C(C(X*E)+C(M*A));z[b+4>>2]=C(D*y)+C(C(Y*E)+C(N*A));z[b>>2]=C(T*y)+C(C(Z*E)+C(U*A));b=d+g|0;v[b+12>>2]=0;z[b+8>>2]=C(H*r)+C(C(Q*u)+C(J*t));z[b+4>>2]=C(I*r)+C(C(R*u)+C(K*t));z[b>>2]=C(O*r)+C(C(S*u)+C(P*t));f=f+1|0;if((f|0)!=(e|0)){continue}break}}c:{if(k){break c}z[o>>2]=z[j>>2]*h;z[o+16>>2]=z[j+8>>2]*i;z[o+32>>2]=z[j+4>>2];z[o+48>>2]=z[j+12>>2];if(!e){break c}f=0;while(1){b=f;g=b+1|0;k=e>>>0>g>>>0?e:g;j=k-1|0;_=(b<<2)+a|0;W=w[v[_>>2]+79|0];while(1){d:{g=f;if((j|0)==(g|0)){g=j;f=k;break d}f=g+1|0;if((W|0)==w[v[(f<<2)+a>>2]+79|0]){continue}}break}e:{f:{switch(W-1|0){case 7:if(!m){break e}case 3:n=b;g:{if(n>>>0>g>>>0){break g}j=g+1|0;while(1){if(w[v[(n<<2)+a>>2]+78|0]){break g}k=(g|0)!=(n|0);n=n+1|0;if(k){continue}break}n=j}if((b|0)!=(f|0)){V=n-b|0;ga=f-b|0;j=b<<4;da=j+d|0;ea=c+j|0;q=0;while(1){k=q<<4;s=k+da|0;T=z[s+12>>2];E=z[s+8>>2];H=z[s+4>>2];I=z[s>>2];G=k+ea|0;U=z[G+12>>2];J=z[G+8>>2];K=z[G+4>>2];L=z[G>>2];$=(q<<2)+_|0;j=v[$>>2];D=z[j+48>>2];t=z[j+32>>2];M=z[j+28>>2];N=z[j+16>>2];O=z[j+12>>2];i=z[j+8>>2];r=z[j+4>>2];u=z[j>>2];P=z[j+56>>2];Q=z[j+52>>2];y=z[j+40>>2];A=z[j+36>>2];R=z[j+24>>2];S=z[j+20>>2];F=0;fa=q>>>0>V>>>0?V:q;if(fa){while(1){n=F<<4;p=n+(o+736|0)|0;aa=n+(o+352|0)|0;ba=n+(o+640|0)|0;ca=n+(o+256|0)|0;h=C(C(C(C(C(t*z[p>>2])+C(u*z[aa>>2]))+C(C(I*z[ba>>2])+C(L*z[ca>>2])))+C(C(C(A*z[p+4>>2])+C(r*z[aa+4>>2]))+C(C(H*z[ba+4>>2])+C(K*z[ca+4>>2]))))+C(C(C(y*z[p+8>>2])+C(i*z[aa+8>>2]))+C(C(E*z[ba+8>>2])+C(J*z[ca+8>>2]))));p=n+da|0;T=C(T-C(h*z[p+12>>2]));E=C(E-C(h*z[p+8>>2]));H=C(H-C(h*z[p+4>>2]));I=C(I-C(h*z[p>>2]));p=n+ea|0;U=C(U-C(h*z[p+12>>2]));J=C(J-C(h*z[p+8>>2]));K=C(K-C(h*z[p+4>>2]));L=C(L-C(h*z[p>>2]));p=n+(o+448|0)|0;P=C(P-C(h*z[p+8>>2]));Q=C(Q-C(h*z[p+4>>2]));D=C(D-C(h*z[p>>2]));p=n+(o+544|0)|0;y=C(y-C(h*z[p+8>>2]));A=C(A-C(h*z[p+4>>2]));t=C(t-C(h*z[p>>2]));p=n+(o- -64|0)|0;M=C(M-C(h*z[p+12>>2]));R=C(R-C(h*z[p+8>>2]));S=C(S-C(h*z[p+4>>2]));N=C(N-C(h*z[p>>2]));n=n+(o+160|0)|0;O=C(O-C(z[n+12>>2]*h));i=C(i-C(z[n+8>>2]*h));r=C(r-C(z[n+4>>2]*h));u=C(u-C(z[n>>2]*h));F=F+1|0;if((fa|0)!=(F|0)){continue}break}}z[j+12>>2]=O;z[j+8>>2]=i;z[j+4>>2]=r;z[j>>2]=u;j=v[$>>2];z[j+28>>2]=M;z[j+16>>2]=N;z[j+24>>2]=R;z[j+20>>2]=S;j=v[$>>2];z[j+48>>2]=D;z[j+32>>2]=t;z[j+56>>2]=P;z[j+52>>2]=Q;z[j+40>>2]=y;z[j+36>>2]=A;z[G+12>>2]=U;z[G+8>>2]=J;z[G+4>>2]=K;z[G>>2]=L;z[s+12>>2]=T;z[s+8>>2]=E;z[s+4>>2]=H;z[s>>2]=I;if(q>>>0>>0){j=k+(o+160|0)|0;z[j+12>>2]=O;z[j+8>>2]=i;z[j+4>>2]=r;z[j>>2]=u;j=k+(o- -64|0)|0;z[j+12>>2]=M;z[j+8>>2]=R;z[j+4>>2]=S;z[j>>2]=N;j=k+(o+544|0)|0;v[j+12>>2]=0;z[j+8>>2]=y;z[j+4>>2]=A;z[j>>2]=t;j=k+(o+448|0)|0;v[j+12>>2]=0;z[j+8>>2]=P;z[j+4>>2]=Q;z[j>>2]=D;h=z[o>>2];D=z[o+16>>2];M=z[o+32>>2];N=z[o+48>>2];j=k+(o+736|0)|0;v[j+12>>2]=0;n=k+(o+640|0)|0;v[n+12>>2]=0;s=k+(o+352|0)|0;ha=i;i=C(i*h);O=y;y=C(y*D);P=J;J=C(J*M);Q=E;E=C(E*N);R=u;u=C(u*h);S=t;t=C(t*D);T=L;L=C(L*M);U=I;I=C(I*N);X=r;r=C(r*h);Y=A;A=C(A*D);Z=K;K=C(K*M);h=H;H=C(H*N);h=C(C(C(C(ha*i)+C(O*y))+C(C(P*J)+C(Q*E)))+C(C(C(C(R*u)+C(S*t))+C(C(T*L)+C(U*I)))+C(C(C(X*r)+C(Y*A))+C(C(Z*K)+C(h*H)))));h=h>C(0)?C(C(1)/h):C(0);D=C(h*C(0));z[s+12>>2]=D;z[s+8>>2]=i*h;z[s+4>>2]=r*h;z[s>>2]=u*h;k=k+(o+256|0)|0;z[k>>2]=L*h;z[k+4>>2]=K*h;z[k+8>>2]=J*h;z[k+12>>2]=D;z[j>>2]=t*h;z[j+4>>2]=A*h;z[j+8>>2]=y*h;z[n>>2]=I*h;z[n+4>>2]=H*h;z[n+8>>2]=E*h}q=q+1|0;if((ga|0)!=(q|0)){continue}break}}if((W|0)!=1){break e}break;case 0:break f;default:break e}}if(!l){break e}n=b;h:{if(n>>>0>g>>>0){break h}j=g+1|0;while(1){if(w[v[(n<<2)+a>>2]+78|0]==2){break h}k=(g|0)!=(n|0);n=n+1|0;if(k){continue}break}n=j}if((n+2|0)==(g|0)){g=n<<4;py((n<<2)+a|0,g+c|0,d+g|0,o)}b=b<<4;py(_,b+c|0,b+d|0,o)}if(e>>>0>f>>>0){continue}break}}xa=o+832|0} -function CZ(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0);h=xa-304|0;xa=h;i=z[d>>2];n=v[a+2188>>2];j=z[d+4>>2];m=z[d+8>>2];k=z[e+8>>2];q=C(C(z[a+2176>>2]-C(C(C(C(i*z[n+8>>2])+C(j*z[n+20>>2]))+C(m*z[n+32>>2]))+z[n+44>>2]))*k);l=z[e>>2];A=C(C(z[a+2168>>2]-C(C(C(C(i*z[n>>2])+C(j*z[n+12>>2]))+C(m*z[n+24>>2]))+z[n+36>>2]))*l);P=C(z[a+2172>>2]-C(C(C(C(i*z[n+4>>2])+C(j*z[n+16>>2]))+C(m*z[n+28>>2]))+z[n+40>>2]));i=z[e+4>>2];if(C(q+C(A+C(P*i)))>2]=k;i=C(-i);z[e+4>>2]=i;l=C(-l);z[e>>2]=l}n=v[a+2192>>2];I=v[a+2180>>2];O=v[I+68>>2];d=v[a+2184>>2];j=z[d+20>>2];m=z[d+16>>2];o=z[d+32>>2];p=z[d+28>>2];r=z[d+12>>2];G=z[d+24>>2];l=C(-l);z[h+192>>2]=C(C(z[d>>2]*l)-C(z[d+4>>2]*i))-C(z[d+8>>2]*k);z[h+200>>2]=C(C(G*l)-C(p*i))-C(o*k);z[h+196>>2]=C(C(r*l)-C(m*i))-C(j*k);I=Ba[O|0](I,n,h+192|0)|0;O=v[a+2180>>2];W=v[O+24>>2];d=W+B(I,20)|0;Q=w[a+2205|0];a:{if(Q){k=z[d>>2];i=z[d+4>>2];l=z[d+8>>2];z[h+300>>2]=z[d+12>>2];z[h+296>>2]=l;z[h+292>>2]=i;break a}n=v[a+2192>>2];k=z[d+8>>2];i=z[d>>2];l=z[d+4>>2];j=C(C(z[n+68>>2]*k)+C(C(z[n+60>>2]*i)+C(l*z[n- -64>>2])));m=C(C(z[n+44>>2]*k)+C(C(z[n+36>>2]*i)+C(z[n+40>>2]*l)));i=C(C(z[n+56>>2]*k)+C(C(z[n+48>>2]*i)+C(l*z[n+52>>2])));k=C(C(1)/C(K(C(C(j*j)+C(C(m*m)+C(i*i))))));z[h+300>>2]=z[d+12>>2]*k;l=C(j*k);z[h+296>>2]=l;i=C(i*k);z[h+292>>2]=i;k=C(m*k)}z[h+288>>2]=k;d=v[a+2184>>2];j=z[d+28>>2];m=z[d+16>>2];o=z[d+4>>2];p=z[d+24>>2];r=z[d>>2];G=z[d+12>>2];X=C(C(C(k*z[d+8>>2])+C(i*z[d+20>>2]))+C(l*z[d+32>>2]));z[h+280>>2]=X;Y=C(C(C(k*r)+C(i*G))+C(l*p));z[h+272>>2]=Y;Z=C(C(C(k*o)+C(i*m))+C(l*j));z[h+276>>2]=Z;R=z[e+8>>2];S=z[e+4>>2];T=z[e>>2];e=v[a+2188>>2];j=z[e+28>>2];m=z[e+16>>2];o=z[e+24>>2];p=z[e>>2];r=z[e+12>>2];G=z[e+4>>2];k=z[b>>2];i=z[b+4>>2];l=z[b+8>>2];_=C(C(C(k*z[e+8>>2])+C(i*z[e+20>>2]))+C(l*z[e+32>>2]));z[h+264>>2]=_;$=C(C(C(k*G)+C(i*m))+C(l*j));z[h+260>>2]=$;aa=C(C(C(k*p)+C(i*r))+C(l*o));z[h+256>>2]=aa;G=C((f<=C(0)?C(-f):C(0))+z[a+2208>>2]);j=C(T*G);z[h+240>>2]=j;m=C(S*G);z[h+244>>2]=m;o=C(R*G);z[h+248>>2]=o;z[h+192>>2]=z[d>>2];z[h+196>>2]=z[d+4>>2];z[h+200>>2]=z[d+8>>2];z[h+204>>2]=z[d+12>>2];z[h+208>>2]=z[d+16>>2];z[h+212>>2]=z[d+20>>2];z[h+216>>2]=z[d+24>>2];z[h+220>>2]=z[d+28>>2];z[h+224>>2]=z[d+32>>2];p=z[d+40>>2];e=v[a+2212>>2];k=z[e+8>>2];i=z[e+4>>2];f=z[e+12>>2];l=z[e>>2];r=z[d+36>>2];J=C(z[d+44>>2]-o);z[h+236>>2]=J;L=C(p-m);z[h+232>>2]=L;U=C(r-j);z[h+228>>2]=U;d=v[a+2216>>2];ba=z[d+20>>2];ca=z[d+24>>2];da=z[d+16>>2];m=z[d+4>>2];ea=C(l*m);j=z[d+12>>2];fa=C(k*j);o=z[d+8>>2];ga=C(f*o);p=z[d>>2];ha=C(i*p);E=C(ea+C(C(fa-ga)-ha));ia=C(k*p);ja=C(j*i);ka=C(f*m);la=C(o*l);H=C(ia+C(C(ja-ka)-la));M=C(H+H);s=C(E*M);r=C(C(o*k)+C(C(m*i)+C(C(j*f)+C(l*p))));ma=C(i*o);na=C(j*l);oa=C(f*p);pa=C(m*k);A=C(ma+C(C(na-oa)-pa));F=C(A+A);y=C(r*F);z[h+172>>2]=s-y;z[h+164>>2]=s+y;s=C(U-da);s=C(s+s);y=C(L-ba);y=C(y+y);q=C(J-ca);q=C(q+q);N=C(C(C(C(-p)*s)-C(y*m))-C(o*q));V=C(C(j*j)+C(-.5));z[h+188>>2]=C(C(q*V)+C(j*C(C(m*s)-C(p*y))))-C(o*N);z[h+184>>2]=C(C(y*V)+C(j*C(C(p*q)-C(o*s))))-C(m*N);A=C(C(1)-C(A*F));qa=C(H*M);z[h+176>>2]=A-qa;P=A;A=C(E+E);ra=C(E*A);z[h+160>>2]=P-ra;E=C(E*F);M=C(r*M);z[h+168>>2]=E+M;H=C(H*F);F=C(r*A);z[h+156>>2]=H-F;z[h+152>>2]=E-M;z[h+148>>2]=H+F;z[h+180>>2]=C(C(s*V)+C(j*C(C(o*y)-C(m*q))))-C(p*N);z[h+144>>2]=C(C(1)-qa)-ra;j=C(da-U);o=C(j+j);j=C(ba-L);p=C(j+j);j=C(ca-J);E=C(j+j);H=C(C(C(C(-l)*o)-C(p*i))-C(k*E));y=C(C(f*f)+C(-.5));z[h+140>>2]=C(C(E*y)+C(f*C(C(i*o)-C(l*p))))-C(k*H);z[h+136>>2]=C(C(p*y)+C(f*C(C(l*E)-C(k*o))))-C(i*H);m=C(pa+C(C(oa-na)-ma));j=C(m+m);F=C(la+C(C(ka-ja)-ia));s=C(F+F);q=C(C(1)-C(m*j));N=C(F*s);z[h+128>>2]=q-N;m=C(ha+C(C(ga-fa)-ea));J=C(m*s);L=C(r*j);z[h+124>>2]=J-L;z[h+116>>2]=J+L;A=q;q=C(m+m);J=C(m*q);z[h+112>>2]=A-J;z[h+132>>2]=C(C(o*y)+C(f*C(C(k*p)-C(i*E))))-C(l*H);f=C(m*j);k=C(r*s);z[h+120>>2]=f+k;i=C(F*j);l=C(r*q);z[h+108>>2]=i-l;z[h+104>>2]=f-k;z[h+100>>2]=i+l;z[h+96>>2]=C(C(1)-N)-J;e=B(I,20)+W|0;n=w[e+18|0];d=0;I=0;if(!Q){d=h-(B(n,12)+15&8176)|0;xa=d;I=d-(n+15&496)|0;xa=I}VZ(h+92|0,h+88|0,d,I,(Q|0)!=0,v[O+28>>2],v[O+32>>2]+x[e+16>>1]|0,n,v[a+2192>>2]);t[h+86|0]=w[100866];u[h+84>>1]=w[100864]|w[100865]<<8;HZ(h+48|0,h+288|0);HZ(h+8|0,b);b:{c:{if(C(D(C(C(X*R)+C(C(Y*T)+C(Z*S)))))>C(D(C(C(_*R)+C(C(aa*T)+C(S*$)))))){d=1;if(!IZ(w[e+18|0],v[h+92>>2],v[h+88>>2],h+192|0,h+288|0,h+48|0,3,c,h+84|0,v[a+2188>>2],b,h+8|0,h+272|0,h+144|0,h+96|0,g,v[a+2220>>2],1,h+240|0,G)){break c}break b}d=1;if(IZ(3,c,h+84|0,v[a+2188>>2],b,h+8|0,w[e+18|0],v[h+92>>2],v[h+88>>2],h+192|0,h+288|0,h+48|0,h+256|0,h+96|0,h+144|0,g,v[a+2220>>2],0,h+240|0,G)){break b}}d=0}xa=h+304|0;return d}function SX(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=0,E=C(0),F=0,G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0;j=xa-672|0;xa=j;F=v[c+32>>2];m=v[a+32>>2];v[j+664>>2]=0;v[j+668>>2]=0;v[j+656>>2]=0;v[j+660>>2]=0;v[j+640>>2]=0;D=v[a+12>>2];H=v[a+8>>2];I=z[a+4>>2];v[j+636>>2]=0;v[j+628>>2]=H;v[j+632>>2]=D;z[j+624>>2]=I;D=v[a+16>>2];H=v[a+20>>2];M=v[a+28>>2];v[j+616>>2]=v[a+24>>2];v[j+620>>2]=M;v[j+608>>2]=D;v[j+612>>2]=H;q=z[c+12>>2];D=v[c+8>>2];H=v[c+4>>2];v[j+604>>2]=0;z[j+600>>2]=q;v[j+592>>2]=H;v[j+596>>2]=D;D=v[c+16>>2];H=v[c+20>>2];M=v[c+28>>2];v[j+584>>2]=v[c+24>>2];v[j+588>>2]=M;v[j+576>>2]=D;v[j+580>>2]=H;R=z[d+20>>2];N=z[b+20>>2];S=z[d+24>>2];O=z[b+24>>2];k=z[b+8>>2];l=z[b>>2];r=z[b+4>>2];y=z[b+12>>2];T=z[d+16>>2];P=z[b+16>>2];q=z[d+8>>2];o=z[d>>2];E=z[e+4>>2];s=z[d+4>>2];p=z[e>>2];A=z[d+12>>2];n=z[e+8>>2];v[j+572>>2]=0;n=C(n*f);p=C(p*f);J=C(E*f);L=C(C(q*n)+C(C(o*p)+C(s*J)));E=C(C(A*A)+C(-.5));G=C(C(C(E*n)-C(A*C(C(o*J)-C(s*p))))+C(q*L));z[j+568>>2]=G+G;G=C(C(s*L)+C(C(E*J)-C(A*C(C(q*p)-C(n*o)))));z[j+564>>2]=G+G;n=C(C(o*L)+C(C(E*p)-C(A*C(C(s*n)-C(J*q)))));z[j+560>>2]=n+n;v[j+556>>2]=0;J=C(-o);L=C(P-T);N=C(N-R);O=C(O-S);P=C(C(C(J*L)-C(N*s))-C(q*O));n=C(C(C(A*C(C(s*L)-C(o*N)))+C(E*O))-C(q*P));z[j+552>>2]=n+n;n=C(C(C(E*N)+C(A*C(C(o*O)-C(q*L))))-C(s*P));z[j+548>>2]=n+n;v[j+540>>2]=0;p=C(C(C(r*q)-C(s*k))+C(C(l*A)-C(y*o)));n=C(p+p);G=C(C(C(k*o)-C(q*l))+C(C(r*A)-C(y*s)));Q=C(G+G);U=C(C(1)-C(p*n));V=C(G*Q);z[j+536>>2]=U-V;p=C(C(C(l*s)-C(o*r))+C(C(k*A)-C(y*q)));W=C(p*Q);k=C(C(y*A)-C(C(C(J*l)-C(r*s))-C(q*k)));l=C(k*n);z[j+532>>2]=W-l;v[j+524>>2]=0;z[j+520>>2]=W+l;l=C(p+p);r=C(p*l);z[j+516>>2]=U-r;y=C(C(C(E*L)+C(A*C(C(q*N)-C(s*O))))-C(o*P));z[j+544>>2]=y+y;y=C(p*n);p=C(k*Q);z[j+528>>2]=y+p;n=C(G*n);k=C(k*l);z[j+512>>2]=n-k;v[j+508>>2]=0;z[j+504>>2]=y-p;z[j+500>>2]=n+k;z[j+496>>2]=C(C(1)-V)-r;H=m+16|0;D=0;a:{if(I!=C(1)){break a}D=0;if(z[a+8>>2]!=C(1)){break a}D=z[a+12>>2]==C(1)}M=F+16|0;t[j+368|0]=0;v[j+360>>2]=0;v[j+364>>2]=0;v[j+352>>2]=0;v[j+356>>2]=0;v[j+344>>2]=0;v[j+348>>2]=0;v[j+336>>2]=0;v[j+340>>2]=0;v[j+480>>2]=H;v[j+488>>2]=v[m+56>>2]+B(w[m+55|0],20);t[j+492|0]=w[m+54|0];k=C(I*z[m+68>>2]);l=C(z[m+72>>2]*z[j+628>>2]);k=k<=l?k:l;l=C(z[m+76>>2]*z[j+632>>2]);k=k<=l?k:l;z[j+360>>2]=k*C(.02500000037252903);z[j+352>>2]=k*C(.10000000149011612);z[j+356>>2]=k*C(.05000000074505806);FV(j+624|0,j+608|0,j+384|0,j+432|0,j+336|0,D);v[j+484>>2]=v[m+60>>2];X=z[c+4>>2]!=C(1)|z[c+8>>2]!=C(1)?X:z[c+12>>2]==C(1);t[j+208|0]=0;v[j+204>>2]=0;c=v[j+660>>2];v[j+176>>2]=v[j+656>>2];v[j+180>>2]=c;c=v[j+668>>2];v[j+184>>2]=v[j+664>>2];v[j+188>>2]=c;v[j+320>>2]=M;v[j+328>>2]=v[F+56>>2]+B(w[F+55|0],20);t[j+332|0]=w[F+54|0];k=C(z[F+68>>2]*z[j+592>>2]);l=C(z[F+72>>2]*z[j+596>>2]);k=k<=l?k:l;l=C(z[F+76>>2]*z[j+600>>2]);k=k<=l?k:l;z[j+200>>2]=k*C(.02500000037252903);z[j+196>>2]=k*C(.05000000074505806);z[j+192>>2]=k*C(.10000000149011612);c=j+176|0;FV(j+592|0,j+576|0,j+224|0,j+272|0,c,X);v[j+324>>2]=v[F+60>>2];F=x[h>>1];m=v[j+516>>2];v[j+80>>2]=v[j+512>>2];v[j+84>>2]=m;m=v[j+508>>2];v[j+72>>2]=v[j+504>>2];v[j+76>>2]=m;m=v[j+524>>2];v[j+88>>2]=v[j+520>>2];v[j+92>>2]=m;m=v[j+532>>2];v[j+96>>2]=v[j+528>>2];v[j+100>>2]=m;m=v[j+540>>2];v[j+104>>2]=v[j+536>>2];v[j+108>>2]=m;m=v[j+548>>2];v[j+112>>2]=v[j+544>>2];v[j+116>>2]=m;m=v[j+556>>2];v[j+120>>2]=v[j+552>>2];v[j+124>>2]=m;m=v[j+500>>2];v[j+64>>2]=v[j+496>>2];v[j+68>>2]=m;k=z[j+68>>2];z[j+68>>2]=z[j+80>>2];v[j+48>>2]=141516;v[j+56>>2]=j+496;v[j+52>>2]=j+336;l=z[j+72>>2];r=z[j+88>>2];z[j+80>>2]=k;z[j+72>>2]=z[j+96>>2];z[j+88>>2]=z[j+100>>2];z[j+100>>2]=r;z[j+96>>2]=l;v[j+40>>2]=141216;v[j+44>>2]=c;c=F&512;F=TX(j+48|0,j+40|0,j+544|0,j+656|0,j+560|0,j+160|0,j+128|0,j+144|0,i,c>>>9|0);b:{if(!F){break b}m=v[d>>2];D=v[d+4>>2];M=v[d+12>>2];v[j+8>>2]=v[d+8>>2];v[j+12>>2]=M;v[j>>2]=m;v[j+4>>2]=D;m=v[d+16>>2];D=v[d+20>>2];i=z[d+24>>2];v[j+28>>2]=0;z[j+24>>2]=i;v[j+16>>2]=m;v[j+20>>2]=D;if(FX(g,e,j+160|0,j+128|0,j+144|0,j,(c|0)!=0,0)){break b}u[g+12>>1]=x[g+12>>1]|1;i=z[j+132>>2];k=z[j+128>>2];l=z[j+136>>2];r=z[j+152>>2];y=z[j+144>>2];n=z[j+148>>2];z[g+40>>2]=z[j+160>>2]*f;p=C(-s);f=C(C(q*r)+C(C(o*y)+C(s*n)));I=C(C(C(A*C(C(o*n)+C(y*p)))+C(E*r))+C(q*f));z[g+24>>2]=S+C(I+I);I=C(C(s*f)+C(C(E*n)+C(A*C(C(q*y)+C(r*J)))));z[g+20>>2]=R+C(I+I);G=C(E*y);y=C(-q);f=C(C(o*f)+C(G+C(A*C(C(s*r)+C(n*y)))));z[g+16>>2]=T+C(f+f);f=C(C(q*l)+C(C(o*k)+C(s*i)));r=C(C(C(A*C(C(o*i)+C(k*p)))+C(E*l))+C(q*f));r=C(r+r);o=C(C(o*f)+C(C(E*k)+C(A*C(C(s*l)+C(i*y)))));o=C(o+o);f=C(C(s*f)+C(C(E*i)+C(A*C(C(q*k)+C(l*J)))));f=C(f+f);i=C(C(1)/C(K(C(C(r*r)+C(C(o*o)+C(f*f))))));z[g+36>>2]=i*C(-r);z[g+32>>2]=i*C(-f);z[g+28>>2]=i*C(-o);GX(g,x[h>>1],a,H,b,e)}xa=j+672|0;return F|0}function Kd(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=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,w=0,y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=0;i=xa+-64|0;xa=i;z[i+32>>2]=z[d>>2];z[i+36>>2]=z[d+4>>2];z[i+40>>2]=z[d+8>>2];z[i+44>>2]=z[d+12>>2];z[i+48>>2]=z[c>>2];z[i+52>>2]=z[c+4>>2];z[i+56>>2]=z[c+8>>2];z[i>>2]=z[g>>2];z[i+4>>2]=z[g+4>>2];z[i+8>>2]=z[g+8>>2];z[i+12>>2]=z[g+12>>2];z[i+16>>2]=z[f>>2];z[i+20>>2]=z[f+4>>2];z[i+24>>2]=z[f+8>>2];c=v[37696];d=Ba[v[v[c>>2]+20>>2]](c)|0?28507:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,88,d,6908,49)|0;g=Ba[v[v[a>>2]+20>>2]](a)|0;r=xa-16|0;xa=r;u[r+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[r+8>>1];u[c+4>>1]=261;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=145824;v[c>>2]=145556;v[c+8>>2]=0;d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,480,24422,17141,454)|0;h=z[i+44>>2];l=z[i+40>>2];m=z[i+32>>2];j=z[i+36>>2];s=v[i+52>>2];w=v[i+48>>2];z[c+44>>2]=z[i+56>>2];v[c+36>>2]=w;v[c+40>>2]=s;k=j;j=C(C(1)/C(K(C(C(h*h)+C(C(l*l)+C(C(m*m)+C(j*j)))))));z[c+24>>2]=k*j;z[c+28>>2]=l*j;z[c+32>>2]=h*j;z[c+20>>2]=m*j;h=z[i+12>>2];l=z[i+8>>2];m=z[i>>2];j=z[i+4>>2];s=v[i+20>>2];w=v[i+16>>2];z[c+72>>2]=z[i+24>>2];F=c- -64|0;v[F>>2]=w;v[F+4>>2]=s;k=j;j=C(C(1)/C(K(C(C(h*h)+C(C(l*l)+C(C(m*m)+C(j*j)))))));z[c+52>>2]=k*j;z[c+56>>2]=l*j;z[c+60>>2]=h*j;z[c+48>>2]=m*j;Y4(f,b);q=z[i+52>>2];y=z[i+56>>2];A=z[i+48>>2];B=z[f+20>>2];D=z[f+24>>2];E=z[f+16>>2];l=z[f+8>>2];k=z[i+40>>2];m=z[f+4>>2];n=z[i+36>>2];h=z[f+12>>2];o=z[i+44>>2];j=z[f>>2];p=z[i+32>>2];z[d+28>>2]=C(l*k)+C(C(m*n)+C(C(h*o)+C(j*p)));z[d+24>>2]=C(p*m)+C(C(C(h*k)-C(o*l))-C(j*n));z[d+20>>2]=C(k*j)+C(C(C(h*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(h*p)-C(o*j))-C(m*k));k=C(A-E);k=C(k+k);n=C(q-B);n=C(n+n);o=C(y-D);o=C(o+o);p=C(C(C(C(-j)*k)-C(n*m))-C(l*o));q=C(C(h*h)+C(-.5));z[d+40>>2]=C(C(o*q)+C(h*C(C(m*k)-C(j*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(h*C(C(j*o)-C(l*k))))-C(m*p);z[d+32>>2]=C(C(k*q)+C(h*C(C(l*n)-C(m*o))))-C(j*p);Y4(f,e);q=z[i+20>>2];y=z[i+24>>2];A=z[i+16>>2];B=z[f+20>>2];D=z[f+24>>2];E=z[f+16>>2];l=z[f+8>>2];k=z[i+8>>2];m=z[f+4>>2];n=z[i+4>>2];h=z[f+12>>2];o=z[i+12>>2];j=z[f>>2];p=z[i>>2];z[d+56>>2]=C(l*k)+C(C(m*n)+C(C(h*o)+C(j*p)));z[d+52>>2]=C(p*m)+C(C(C(h*k)-C(o*l))-C(j*n));z[d+48>>2]=C(k*j)+C(C(C(h*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(h*p)-C(o*j))-C(m*k));k=C(A-E);k=C(k+k);n=C(q-B);n=C(n+n);o=C(y-D);o=C(o+o);p=C(C(C(C(-j)*k)-C(n*m))-C(l*o));q=C(C(h*h)+C(-.5));z[d+68>>2]=C(C(o*q)+C(h*C(C(m*k)-C(j*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(h*C(C(j*o)-C(l*k))))-C(m*p);z[d+60>>2]=C(C(k*q)+C(h*C(C(l*n)-C(m*o))))-C(j*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;t[c+84|0]=1;v[c+12>>2]=145428;v[c>>2]=145152;d=v[c+80>>2];v[d+212>>2]=0;v[d+216>>2]=1056964608;v[d+96>>2]=0;v[d+100>>2]=0;v[d+88>>2]=0;v[d+92>>2]=0;v[d+80>>2]=0;v[d+84>>2]=0;v[d+300>>2]=1070141403;v[d+292>>2]=1070141403;v[d+296>>2]=-1077342245;v[d+284>>2]=0;v[d+288>>2]=-1077342245;v[d+276>>2]=0;v[d+280>>2]=0;v[d+272>>2]=1056964608;v[d+264>>2]=1070141403;v[d+268>>2]=0;v[d+256>>2]=1036831949;v[d+260>>2]=1070141403;v[d+248>>2]=0;v[d+252>>2]=0;v[d+244>>2]=1056964608;v[d+236>>2]=-1077342245;v[d+240>>2]=0;v[d+228>>2]=1036831949;v[d+232>>2]=1070141403;v[d+220>>2]=0;v[d+224>>2]=0;h=z[g>>2];v[d+112>>2]=0;v[d+116>>2]=0;v[d+104>>2]=0;v[d+108>>2]=0;v[d+124>>2]=2139095039;z[d+120>>2]=h*C(.009999999776482582);h=z[g>>2];v[d+148>>2]=2125114026;v[d+152>>2]=-22369622;v[d+136>>2]=0;v[d+140>>2]=0;v[d+128>>2]=0;z[d+132>>2]=h+h;z[d+464>>2]=h*C(9.999999974752427e-7);h=C(h*C(.009999999776482582));z[d+144>>2]=h>2];v[d+176>>2]=2125114026;v[d+180>>2]=-22369622;v[d+164>>2]=0;v[d+168>>2]=0;v[d+156>>2]=0;z[d+160>>2]=h+h;h=C(h*C(.009999999776482582));z[d+172>>2]=h>2];v[d+392>>2]=2139095039;v[d+384>>2]=0;v[d+388>>2]=0;v[d+376>>2]=2139095039;v[d+380>>2]=0;v[d+368>>2]=0;v[d+372>>2]=0;v[d+360>>2]=2139095039;v[d+364>>2]=0;v[d+352>>2]=0;v[d+356>>2]=0;v[d+344>>2]=2139095039;v[d+348>>2]=0;v[d+336>>2]=0;v[d+340>>2]=0;v[d+328>>2]=2139095039;v[d+332>>2]=0;v[d+320>>2]=0;v[d+324>>2]=0;v[d+312>>2]=2139095039;v[d+316>>2]=0;v[d+304>>2]=0;v[d+308>>2]=0;v[d+204>>2]=2125114026;v[d+208>>2]=-22369622;v[d+192>>2]=0;v[d+196>>2]=0;v[d+184>>2]=0;z[d+188>>2]=h+h;h=C(h*C(.009999999776482582));z[d+200>>2]=h>2]=0;v[d+408>>2]=0;v[d+396>>2]=0;v[d+400>>2]=0;v[d+412>>2]=1065353216;v[d+416>>2]=0;v[d+420>>2]=0;v[d+424>>2]=0;v[d+428>>2]=0;v[d+432>>2]=0;v[d+436>>2]=0;v[d+440>>2]=0;v[d+444>>2]=0;v[d+448>>2]=0;v[d+476>>2]=0;v[d+468>>2]=1343554297;v[d+472>>2]=1078530011;xa=r+16|0;a=Ba[v[v[a>>2]+108>>2]](a,b,e,c+12|0,145472,480)|0;v[c+76>>2]=a;if(!a){Ba[v[v[c>>2]+16>>2]](c);c=0}xa=i- -64|0;return c|0}function x2(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=0,j=C(0),k=0,l=C(0),m=0,n=0,o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=0,A=0,B=C(0),D=C(0),E=C(0);f=xa-48|0;m=f;xa=f;f=f-(d+15&-16)|0;xa=f;y=I9(f,0,d);g=C(-34028234663852886e22);k=-1;f=e;while(1){d=v[f+48>>2];n=v[f+52>>2];a:{if(d>>>0>=n>>>0){break a}i=d+1|0;if(n-d&1){p=(d<<6)+c|0;h=z[p+24>>2];l=C(h*h);h=z[p+16>>2];r=C(h*h);h=z[p+20>>2];h=C(l+C(r+C(h*h)));p=h>g;g=p?h:g;k=p?d:k;d=i}if((i|0)==(n|0)){break a}while(1){i=(d<<6)+c|0;h=z[i+24>>2];l=C(h*h);h=z[i+16>>2];r=C(h*h);h=z[i+20>>2];h=C(l+C(r+C(h*h)));i=h>g;A=d+1|0;p=(A<<6)+c|0;o=z[p+24>>2];l=C(o*o);o=z[p+16>>2];r=C(o*o);o=z[p+20>>2];o=C(l+C(r+C(o*o)));g=i?h:g;p=o>g;g=p?o:g;k=p?A:i?d:k;d=d+2|0;if((n|0)!=(d|0)){continue}break}}f=v[f+16>>2];if(f){continue}break}t[k+y|0]=1;d=(k<<6)+c|0;h=z[d+24>>2];o=z[d+20>>2];B=z[d+16>>2];v[b+48>>2]=v[d+48>>2];f=v[d+44>>2];v[b+40>>2]=v[d+40>>2];v[b+44>>2]=f;f=v[d+36>>2];v[b+32>>2]=v[d+32>>2];v[b+36>>2]=f;f=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=f;f=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=f;f=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=f;f=v[d+4>>2];v[b>>2]=v[d>>2];v[b+4>>2]=f;k=v[e+48>>2];f=(k<<6)+c|0;g=C(z[f+24>>2]-h);l=C(g*g);g=C(z[f+16>>2]-B);r=C(g*g);g=C(z[f+20>>2]-o);g=C(l+C(r+C(g*g)));s=z[d+44>>2];i=e;while(1){d=v[i+48>>2];n=v[i+52>>2];if(d>>>0>>0){while(1){f=(d<<6)+c|0;j=C(z[f+24>>2]-h);l=C(j*j);j=C(z[f+16>>2]-B);r=C(j*j);j=C(z[f+20>>2]-o);j=C(l+C(r+C(j*j)));f=j>g;g=f?j:g;k=f?d:k;d=d+1|0;if((n|0)!=(d|0)){continue}break}}i=v[i+16>>2];if(i){continue}break}t[k+y|0]=1;d=(k<<6)+c|0;g=z[d+16>>2];l=z[d+20>>2];x=z[d+24>>2];v[b+112>>2]=v[d+48>>2];f=v[d+44>>2];v[b+104>>2]=v[d+40>>2];v[b+108>>2]=f;f=v[d+36>>2];v[b+96>>2]=v[d+32>>2];v[b+100>>2]=f;f=v[d+28>>2];v[b+88>>2]=v[d+24>>2];v[b+92>>2]=f;f=v[d+20>>2];v[b+80>>2]=v[d+16>>2];v[b+84>>2]=f;f=v[d+12>>2];v[b+72>>2]=v[d+8>>2];v[b+76>>2]=f;f=v[d+4>>2];v[b+64>>2]=v[d>>2];v[b+68>>2]=f;u=C(g-B);g=z[b+36>>2];j=z[b+32>>2];q=C(l-o);l=C(C(u*g)-C(j*q));r=l;E=C(l*l);l=z[b+40>>2];D=C(q*l);q=C(x-h);x=C(D-C(g*q));u=C(C(q*j)-C(l*u));D=C(E+C(C(x*x)+C(u*u)));q=C(C(1)/C(K(D)));f=D>C(0);l=f?C(r*q):l;u=f?C(u*q):g;x=f?C(x*q):j;g=z[d+44>>2];q=g>2];p=v[f+52>>2];if(d>>>0

>>0){while(1){if(!w[d+y|0]){n=(d<<6)+c|0;j=C(C(C(z[n+24>>2]-h)*l)+C(C(C(z[n+16>>2]-B)*x)+C(u*C(z[n+20>>2]-o))));n=js;s=A?j:s;k=n?d:k;i=A?d:i}d=d+1|0;if((p|0)!=(d|0)){continue}break}}f=v[f+16>>2];if(f){continue}break}t[i+y|0]=1;d=(i<<6)+c|0;f=v[d+4>>2];v[b+128>>2]=v[d>>2];v[b+132>>2]=f;v[b+176>>2]=v[d+48>>2];f=v[d+44>>2];v[b+168>>2]=v[d+40>>2];v[b+172>>2]=f;f=v[d+36>>2];v[b+160>>2]=v[d+32>>2];v[b+164>>2]=f;f=v[d+28>>2];v[b+152>>2]=v[d+24>>2];v[b+156>>2]=f;f=v[d+20>>2];v[b+144>>2]=v[d+16>>2];v[b+148>>2]=f;f=v[d+12>>2];v[b+136>>2]=v[d+8>>2];v[b+140>>2]=f;j=z[d+44>>2];j=j>2]=j;if(C(g*s)>C(0)){g=C(-34028234663852886e22);i=e;while(1){d=v[i+48>>2];n=v[i+52>>2];if(d>>>0>>0){while(1){if(!w[d+y|0]){f=(d<<6)+c|0;s=C(C(C(z[f+24>>2]-h)*l)+C(C(C(z[f+16>>2]-B)*x)+C(u*C(z[f+20>>2]-o))));f=s>g;g=f?s:g;k=f?d:k}d=d+1|0;if((n|0)!=(d|0)){continue}break}}i=v[i+16>>2];if(i){continue}break}}t[k+y|0]=1;d=(k<<6)+c|0;f=v[d+4>>2];v[b+192>>2]=v[d>>2];v[b+196>>2]=f;v[b+240>>2]=v[d+48>>2];f=v[d+44>>2];v[b+232>>2]=v[d+40>>2];v[b+236>>2]=f;f=v[d+36>>2];v[b+224>>2]=v[d+32>>2];v[b+228>>2]=f;f=v[d+28>>2];v[b+216>>2]=v[d+24>>2];v[b+220>>2]=f;f=v[d+20>>2];v[b+208>>2]=v[d+16>>2];v[b+212>>2]=f;f=v[d+12>>2];v[b+200>>2]=v[d+8>>2];v[b+204>>2]=f;g=z[d+44>>2];v[m+32>>2]=2139095039;v[m+16>>2]=2139095039;v[m+8>>2]=0;v[m+12>>2]=0;i=m+32|0;while(1){d=v[e+48>>2];n=v[e+52>>2];if(d>>>0>>0){while(1){b:{if(w[d+y|0]){break b}h=z[((d<<6)+c|0)+44>>2];c:{if(h>2]){v[m+12>>2]=v[m+8>>2];f=v[m+28>>2];v[i+8>>2]=v[m+24>>2];v[i+12>>2]=f;f=v[m+20>>2];v[i>>2]=v[m+16>>2];v[i+4>>2]=f;k=0;f=m+16|0;break c}k=1;f=i;if(!(h>2])){break b}}z[f>>2]=h;v[(m+8|k<<2)>>2]=d}d=d+1|0;if(n>>>0>d>>>0){continue}break}}e=v[e+16>>2];if(e){continue}break}d=(v[m+8>>2]<<6)+c|0;e=v[d+4>>2];v[b+256>>2]=v[d>>2];v[b+260>>2]=e;v[b+304>>2]=v[d+48>>2];e=v[d+44>>2];v[b+296>>2]=v[d+40>>2];v[b+300>>2]=e;e=v[d+36>>2];v[b+288>>2]=v[d+32>>2];v[b+292>>2]=e;e=v[d+28>>2];v[b+280>>2]=v[d+24>>2];v[b+284>>2]=e;e=v[d+20>>2];v[b+272>>2]=v[d+16>>2];v[b+276>>2]=e;e=v[d+12>>2];v[b+264>>2]=v[d+8>>2];v[b+268>>2]=e;h=z[m+16>>2];c=(v[m+12>>2]<<6)+c|0;d=v[c+4>>2];v[b+320>>2]=v[c>>2];v[b+324>>2]=d;d=v[c+20>>2];v[b+336>>2]=v[c+16>>2];v[b+340>>2]=d;d=v[c+36>>2];v[b+352>>2]=v[c+32>>2];v[b+356>>2]=d;v[b+368>>2]=v[c+48>>2];d=v[c+44>>2];v[b+360>>2]=v[c+40>>2];v[b+364>>2]=d;d=v[c+28>>2];v[b+344>>2]=v[c+24>>2];v[b+348>>2]=d;d=v[c+12>>2];v[b+328>>2]=v[c+8>>2];v[b+332>>2]=d;o=z[m+32>>2];g=gh?h:g;z[a>>2]=g>o?o:g;xa=m+48|0}function VU(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,x=0;q=xa-5120|0;xa=q;if(!(!b|(c|0)<=0)){f=v[a+4>>2]&2147483647;if((f|0)!=(c|0)){if(c>>>0>f>>>0){UU(a,c)}v[a+4>>2]=c|-2147483648}v[a+20>>2]=q;v[a+16>>2]=q+1024;l=c;a:{if(!b|(c|0)<=0){break a}v[a+24>>2]=v[a+24>>2]+1;I9(v[a+16>>2],0,4096);m=l<<2;j=m+b|0;g=v[a+16>>2];h=g+3072|0;n=g+2048|0;o=g+1024|0;c=v[a+4>>2];b:{c:{d:{if((d|0)==1){e:{if((c|0)<0){if(m){f=v[b>>2];c=b;while(1){e=f;f=v[c>>2];if(e>>>0>f>>>0){break e}e=g+((f&255)<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[c+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[c+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[c+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;c=c+4|0;if((j|0)!=(c|0)){continue}break}}v[a+28>>2]=v[a+28>>2]+1;d=l>>>0>1?l:1;l=d&7;b=v[a+8>>2];f=0;c=0;if(d-1>>>0>=7){d=d&-8;e=0;while(1){v[b+(c<<2)>>2]=c;g=c|1;v[b+(g<<2)>>2]=g;g=c|2;v[b+(g<<2)>>2]=g;g=c|3;v[b+(g<<2)>>2]=g;g=c|4;v[b+(g<<2)>>2]=g;g=c|5;v[b+(g<<2)>>2]=g;g=c|6;v[b+(g<<2)>>2]=g;g=c|7;v[b+(g<<2)>>2]=g;c=c+8|0;e=e+8|0;if((d|0)!=(e|0)){continue}break}}if(!l){break a}while(1){v[b+(c<<2)>>2]=c;c=c+1|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}break a}if(!m){break d}k=v[a+8>>2];f=v[(v[k>>2]<<2)+b>>2];c=b;while(1){e=f;f=v[(v[k>>2]<<2)+b>>2];if(e>>>0>f>>>0){break e}e=g+(w[c|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[c+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[c+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[c+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;k=k+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}break d}if((c|0)==(j|0)){break b}while(1){f=g+(w[c|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=o+(w[c+1|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=n+(w[c+2|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=h+(w[c+3|0]<<2)|0;v[f>>2]=v[f>>2]+1;c=c+4|0;if((j|0)!=(c|0)){continue}break}break b}if((c|0)<0){if(m){f=v[b>>2];c=b;while(1){e=f;f=v[c>>2];if((e|0)>(f|0)){break c}e=g+((f&255)<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[c+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[c+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[c+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;c=c+4|0;if((j|0)!=(c|0)){continue}break}}v[a+28>>2]=v[a+28>>2]+1;d=l>>>0>1?l:1;l=d&7;b=v[a+8>>2];f=0;c=0;if(d-1>>>0>=7){d=d&-8;e=0;while(1){v[b+(c<<2)>>2]=c;g=c|1;v[b+(g<<2)>>2]=g;g=c|2;v[b+(g<<2)>>2]=g;g=c|3;v[b+(g<<2)>>2]=g;g=c|4;v[b+(g<<2)>>2]=g;g=c|5;v[b+(g<<2)>>2]=g;g=c|6;v[b+(g<<2)>>2]=g;g=c|7;v[b+(g<<2)>>2]=g;c=c+8|0;e=e+8|0;if((d|0)!=(e|0)){continue}break}}if(!l){break a}while(1){v[b+(c<<2)>>2]=c;c=c+1|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}break a}if(!m){break d}k=v[a+8>>2];f=v[(v[k>>2]<<2)+b>>2];c=b;while(1){e=f;f=v[(v[k>>2]<<2)+b>>2];if((e|0)>(f|0)){break c}e=g+(w[c|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[c+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[c+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[c+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;k=k+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}v[a+28>>2]=v[a+28>>2]+1;break a}if((c|0)==(j|0)){break b}while(1){f=g+(w[c|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=o+(w[c+1|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=n+(w[c+2|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=h+(w[c+3|0]<<2)|0;v[f>>2]=v[f>>2]+1;c=c+4|0;if((j|0)!=(c|0)){continue}break}}k=0;e=0;if(!d){c=g+3072|0;f=128;while(1){g=f<<2;e=v[c+(g|12)>>2]+(v[c+(g|8)>>2]+(v[c+(g|4)>>2]+(v[c+g>>2]+e|0)|0)|0)|0;f=f+4|0;if((f|0)!=256){continue}break}}n=m-4|0;o=n&4;m=l>>>0>1;c=m?l:1;r=c&-2;s=c&1;t=e<<2;while(1){c=v[a+16>>2];g=c+(k<<10)|0;j=b+k|0;if(!((l|0)==v[g+(w[j|0]<<2)>>2]|!c)){e=v[a+12>>2];c=v[a+20>>2];f:{if(!((k|0)==3&(d|0)!=1)){v[c>>2]=e;f=1;while(1){h=f<<2;i=h+c|0;p=e;e=g+h|0;p=p+(v[e-4>>2]<<2)|0;v[i>>2]=p;h=h+4|0;e=p+(v[e>>2]<<2)|0;v[h+c>>2]=e;e=e+(v[g+h>>2]<<2)|0;v[i+8>>2]=e;f=f+3|0;if((f|0)!=256){continue}break}break f}e=e+t|0;v[c>>2]=e;f=1;while(1){p=e;e=f<<2;i=e+g|0;h=p+(v[i-4>>2]<<2)|0;v[c+e>>2]=h;e=e+4|0;h=h+(v[i>>2]<<2)|0;v[e+c>>2]=h;i=f+2<<2;e=h+(v[e+g>>2]<<2)|0;v[i+c>>2]=e;h=f+3|0;if((h|0)!=128){e=e+(v[g+i>>2]<<2)|0;v[c+(h<<2)>>2]=e;f=f+4|0;continue}break}e=v[a+12>>2];v[c+512>>2]=e;f=129;while(1){p=e;e=f<<2;i=e+g|0;h=p+(v[i-4>>2]<<2)|0;v[c+e>>2]=h;e=e+4|0;h=h+(v[i>>2]<<2)|0;v[e+c>>2]=h;i=f+2<<2;e=h+(v[e+g>>2]<<2)|0;v[i+c>>2]=e;h=f+3|0;if((h|0)==256){break f}e=e+(v[g+i>>2]<<2)|0;v[c+(h<<2)>>2]=e;f=f+4|0;continue}}g:{h:{if(v[a+4>>2]<0){e=0;f=0;if(!m){break h}while(1){h=c+(w[j+(e<<2)|0]<<2)|0;g=v[h>>2];v[h>>2]=g+4;v[g>>2]=e;h=e|1;i=c+(w[j+(h<<2)|0]<<2)|0;g=v[i>>2];v[i>>2]=g+4;v[g>>2]=h;e=e+2|0;f=f+2|0;if((r|0)!=(f|0)){continue}break}break h}f=v[a+8>>2];e=f;if(!o){g=v[f>>2];h=c+(w[j+(g<<2)|0]<<2)|0;e=v[h>>2];v[h>>2]=e+4;v[e>>2]=g;e=f+4|0}if(!n){break g}g=f+(l<<2)|0;while(1){h=v[e>>2];i=c+(w[j+(h<<2)|0]<<2)|0;f=v[i>>2];v[i>>2]=f+4;v[f>>2]=h;h=v[e+4>>2];i=c+(w[j+(h<<2)|0]<<2)|0;f=v[i>>2];v[i>>2]=f+4;v[f>>2]=h;e=e+8|0;if((g|0)!=(e|0)){continue}break}break g}if(s){f=c+(w[j+(e<<2)|0]<<2)|0;c=v[f>>2];v[f>>2]=c+4;v[c>>2]=e}v[a+4>>2]=v[a+4>>2]&2147483647}u=a,x=Vaa(v[a+8>>2],v[a+12>>2]),v[u+8>>2]=x;v[a+12>>2]=Aa}k=k+1|0;if((k|0)!=4){continue}break}}}xa=q+5120|0;return a}function kx(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=0,A=0,D=C(0),E=C(0);k=xa-160|0;xa=k;a:{if(v[((g<<5)+a|0)+24>>2]==(d|0)){l=z[e+20>>2];m=z[e+24>>2];n=z[h+20>>2];o=z[e>>2];p=z[e+4>>2];q=z[e+8>>2];w=z[e+16>>2];r=z[h>>2];s=z[h+4>>2];t=z[h+8>>2];u=z[h+16>>2];z[k+152>>2]=-z[h+24>>2];z[k+148>>2]=-n;v[k+156>>2]=0;z[k+144>>2]=-u;v[k+140>>2]=0;z[k+136>>2]=-t;z[k+132>>2]=-s;z[k+128>>2]=-r;a=B(g,160);b=B(g,76);e=k+128|0;cx(k+96|0,v[c+284>>2]+B(g,96)|0,(a+v[c+340>>2]|0)+120|0,b+v[c+272>>2]|0,e);z[k+88>>2]=m-z[k+120>>2];z[k+84>>2]=l-z[k+116>>2];v[k+92>>2]=0;v[k+76>>2]=0;z[k+80>>2]=w-z[k+112>>2];z[k+72>>2]=q-z[k+104>>2];z[k+68>>2]=p-z[k+100>>2];z[k+64>>2]=o-z[k+96>>2];h=k+32|0;Qw(h,v[c+224>>2]+B(d,192)|0,k- -64|0);_w(k,(a+v[c+340>>2]|0)+120|0,v[c+236>>2]+B(g,112)|0,v[c+248>>2]+B(g,36)|0,b+v[c+272>>2]|0,e,h);l=z[k+56>>2];a=v[k+52>>2];b=v[k+48>>2];v[f+12>>2]=0;z[f+8>>2]=l;v[f>>2]=b;v[f+4>>2]=a;a=v[k+36>>2];b=v[k+32>>2];l=z[k+40>>2];v[f+28>>2]=0;z[f+24>>2]=l;v[f+16>>2]=b;v[f+20>>2]=a;l=z[k+24>>2];a=v[k+20>>2];b=v[k+16>>2];v[i+12>>2]=0;z[i+8>>2]=l;v[i>>2]=b;v[i+4>>2]=a;a=v[k+4>>2];b=v[k>>2];l=z[k+8>>2];v[i+28>>2]=0;z[i+24>>2]=l;v[i+16>>2]=b;v[i+20>>2]=a;break a}A=a;y=b;j=xa-448|0;xa=j;b=d;if((g|0)!=(b|0)){a=d;b=g;while(1){b:{if(a>>>0>>0){b=v[((b<<5)+A|0)+24>>2];break b}a=v[((a<<5)+A|0)+24>>2]}if((a|0)!=(b|0)){continue}break}}m=z[e+20>>2];q=z[e>>2];p=z[e+4>>2];o=z[e+8>>2];n=z[e+16>>2];l=C(-z[e+24>>2]);z[j+184>>2]=l;m=C(-m);z[j+180>>2]=m;a=0;v[j+188>>2]=0;n=C(-n);z[j+176>>2]=n;v[j+172>>2]=0;o=C(-o);z[j+168>>2]=o;p=C(-p);z[j+164>>2]=p;q=C(-q);z[j+160>>2]=q;r=z[h+20>>2];x=z[h>>2];u=z[h+4>>2];t=z[h+8>>2];s=z[h+16>>2];w=C(-z[h+24>>2]);z[j+152>>2]=w;r=C(-r);z[j+148>>2]=r;v[j+156>>2]=0;v[j+140>>2]=0;s=C(-s);z[j+144>>2]=s;t=C(-t);z[j+136>>2]=t;u=C(-u);z[j+132>>2]=u;x=C(-x);z[j+128>>2]=x;e=(d<<5)+y|0;v[e+28>>2]=0;z[e+24>>2]=l;z[e+20>>2]=m;z[e+16>>2]=n;v[e+12>>2]=0;z[e+8>>2]=o;z[e+4>>2]=p;z[e>>2]=q;e=(g<<5)+y|0;v[e+28>>2]=0;z[e+24>>2]=w;z[e+20>>2]=r;z[e+16>>2]=s;v[e+12>>2]=0;z[e+8>>2]=t;z[e+4>>2]=u;z[e>>2]=x;if((b|0)!=(d|0)){while(1){cx(j+96|0,v[c+284>>2]+B(d,96)|0,(v[c+340>>2]+B(d,160)|0)+120|0,v[c+272>>2]+B(d,76)|0,j+160|0);v[j+172>>2]=0;v[j+188>>2]=0;q=z[j+96>>2];z[j+160>>2]=q;p=z[j+100>>2];z[j+164>>2]=p;o=z[j+104>>2];z[j+168>>2]=o;n=z[j+112>>2];z[j+176>>2]=n;m=z[j+116>>2];z[j+180>>2]=m;l=z[j+120>>2];z[j+184>>2]=l;e=v[((d<<5)+A|0)+24>>2];h=(e<<5)+y|0;v[h+28>>2]=0;z[h+16>>2]=n;v[h+12>>2]=0;z[h+8>>2]=o;z[h+4>>2]=p;z[h>>2]=q;z[h+24>>2]=l;z[h+20>>2]=m;v[(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){cx(j+96|0,v[c+284>>2]+B(g,96)|0,(v[c+340>>2]+B(g,160)|0)+120|0,v[c+272>>2]+B(g,76)|0,j+128|0);v[j+140>>2]=0;v[j+156>>2]=0;x=z[j+96>>2];z[j+128>>2]=x;u=z[j+100>>2];z[j+132>>2]=u;t=z[j+104>>2];z[j+136>>2]=t;s=z[j+112>>2];z[j+144>>2]=s;r=z[j+116>>2];z[j+148>>2]=r;w=z[j+120>>2];z[j+152>>2]=w;e=v[((g<<5)+A|0)+24>>2];h=(e<<5)+y|0;v[h+28>>2]=0;z[h+16>>2]=s;v[h+12>>2]=0;z[h+8>>2]=t;z[h+4>>2]=u;z[h>>2]=x;z[h+24>>2]=w;z[h+20>>2]=r;v[(j+192|0)+(d<<2)>>2]=g;d=d+1|0;g=e;if((e|0)!=(b|0)){continue}break}}e=v[c+224>>2];z[j+88>>2]=-C(l+w);z[j+84>>2]=-C(m+r);v[j+92>>2]=0;z[j+80>>2]=-C(n+s);v[j+76>>2]=0;z[j+72>>2]=-C(o+t);z[j+68>>2]=-C(p+u);z[j+64>>2]=-C(q+x);Qw(j+96|0,e+B(b,192)|0,j- -64|0);w=z[j+116>>2];z[j+84>>2]=w;r=z[j+120>>2];z[j+88>>2]=r;s=z[j+96>>2];z[j+64>>2]=s;t=z[j+100>>2];z[j+68>>2]=t;u=z[j+104>>2];z[j+72>>2]=u;D=z[j+108>>2];z[j+76>>2]=D;x=z[j+112>>2];z[j+80>>2]=x;E=z[j+124>>2];z[j+92>>2]=E;l=r;m=w;n=x;o=u;p=t;q=s;if(a>>>0>>0){while(1){d=d-1|0;b=v[(j+192|0)+(d<<2)>>2];_w(j+32|0,(v[c+340>>2]+B(b,160)|0)+120|0,v[c+236>>2]+B(b,112)|0,v[c+248>>2]+B(b,36)|0,v[c+272>>2]+B(b,76)|0,(b<<5)+y|0,j- -64|0);v[j+76>>2]=0;v[j+92>>2]=0;s=z[j+32>>2];z[j+64>>2]=s;t=z[j+36>>2];z[j+68>>2]=t;u=z[j+40>>2];z[j+72>>2]=u;x=z[j+48>>2];z[j+80>>2]=x;w=z[j+52>>2];z[j+84>>2]=w;r=z[j+56>>2];z[j+88>>2]=r;if(a>>>0>>0){continue}break}E=z[j+124>>2];m=z[j+116>>2];n=z[j+112>>2];D=z[j+108>>2];o=z[j+104>>2];p=z[j+100>>2];q=z[j+96>>2];l=z[j+120>>2]}z[j+56>>2]=l;z[j+52>>2]=m;z[j+60>>2]=E;z[j+48>>2]=n;z[j+44>>2]=D;z[j+40>>2]=o;z[j+36>>2]=p;z[j+32>>2]=q;if(a){while(1){a=a-1|0;b=v[(j+192|0)+(a<<2)>>2];_w(j,(v[c+340>>2]+B(b,160)|0)+120|0,v[c+236>>2]+B(b,112)|0,v[c+248>>2]+B(b,36)|0,v[c+272>>2]+B(b,76)|0,(b<<5)+y|0,j+32|0);v[j+44>>2]=0;v[j+60>>2]=0;q=z[j>>2];z[j+32>>2]=q;p=z[j+4>>2];z[j+36>>2]=p;o=z[j+8>>2];z[j+40>>2]=o;n=z[j+16>>2];z[j+48>>2]=n;m=z[j+20>>2];z[j+52>>2]=m;l=z[j+24>>2];z[j+56>>2]=l;if(a){continue}break}}z[f+16>>2]=q;z[f+8>>2]=l;z[f+4>>2]=m;z[f>>2]=n;z[f+24>>2]=o;z[f+20>>2]=p;z[i+24>>2]=u;z[i+20>>2]=t;z[i+16>>2]=s;z[i+8>>2]=r;z[i+4>>2]=w;z[i>>2]=x;xa=j+448|0}xa=k+160|0}function AX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),y=C(0),A=0,B=0,D=C(0),E=C(0),F=C(0);c=xa-48|0;xa=c;k=z[a+4>>2];z[c+32>>2]=z[b+16>>2];z[c+36>>2]=z[b+20>>2];l=z[b+24>>2];z[c+44>>2]=k+j;z[c+40>>2]=l;j=z[f>>2];k=z[f+4>>2];z[c+16>>2]=-z[f+8>>2];z[c+12>>2]=-k;z[c+8>>2]=-j;u[c+24>>1]=x[i>>1];b=0;q=c+8|0;A=h+40|0;d=h+28|0;a=xa-48|0;xa=a;D=z[e+24>>2];f=c+32|0;y=z[f+12>>2];o=C(D+y);a:{b:{if(w[c+24|0]&16){t=z[e+12>>2];j=z[e>>2];break b}j=z[e+8>>2];k=C(z[f+8>>2]-j);n=C(z[e+20>>2]-j);j=z[e>>2];l=C(z[f>>2]-j);t=z[e+12>>2];p=C(t-j);m=z[e+4>>2];r=C(z[e+16>>2]-m);m=C(z[f+4>>2]-m);s=C(C(k*n)+C(C(l*p)+C(r*m)));c:{if(s<=C(0)){break c}E=C(C(n*n)+C(C(p*p)+C(r*r)));if(s>=E){k=C(k-n);m=C(m-r);l=C(l-p);break c}F=n;n=C(s/E);k=C(k-C(F*n));m=C(m-C(r*n));l=C(l-C(p*n))}if(!(C(C(k*k)+C(C(l*l)+C(m*m)))>2]=0;g=z[q>>2];j=z[q+4>>2];z[d+8>>2]=-z[q+8>>2];z[d+4>>2]=-j;z[d>>2]=-g;q=1;break a}k=z[e+16>>2];l=z[e+4>>2];if(!(j!=t|k!=l|z[e+8>>2]!=z[e+20>>2])){j=z[q>>2];k=z[q+4>>2];z[a+24>>2]=C(-z[q+8>>2])*g;z[a+20>>2]=C(-k)*g;z[a+16>>2]=C(-j)*g;d:{e:{f:{g:{h:{j=z[e+8>>2];k=z[f+8>>2];l=C(j-k);m=z[e>>2];o=z[f>>2];n=C(m-o);p=z[e+4>>2];r=z[f+4>>2];t=C(p-r);s=C(y+D);s=C(C(C(l*l)+C(C(n*n)+C(t*t)))-C(s*s));if(!(s<=C(0))){k=C(C(C(j+z[a+24>>2])-j)-C(k-k));m=C(C(C(m+z[a+16>>2])-m)-C(o-o));o=C(C(C(p+z[a+20>>2])-p)-C(r-r));j=C(C(k*k)+C(C(m*m)+C(o*o)));if(j!=C(0)){break h}}v[A>>2]=0;break g}k=C(C(k*l)+C(C(m*n)+C(t*o)));k=C(k+k);l=C(C(k*k)+C(s*C(j*C(-4))));if(!(l>=C(0))){break d}j=C(C(1)/C(j+j));m=C(K(l));l=C(j*C(C(-k)-m));k=C(j*C(m-k));q=l>2]=j;if((q?k:l)C(1)){break d}if(j!=C(0)){break f}}k=C(-z[a+24>>2]);l=C(-z[a+20>>2]);j=C(-z[a+16>>2]);break e}k=C(C(C(j*z[a+24>>2])+z[e+8>>2])-z[f+8>>2]);l=C(C(C(j*z[a+20>>2])+z[e+4>>2])-z[f+4>>2]);j=C(C(C(j*z[a+16>>2])+z[e>>2])-z[f>>2])}z[d+8>>2]=k;z[d+4>>2]=l;z[d>>2]=j;B=1;m=C(K(C(C(k*k)+C(C(j*j)+C(l*l)))));if(!(m>C(0))){break d}n=k;k=C(C(1)/m);z[d+8>>2]=n*k;z[d+4>>2]=l*k;z[d>>2]=j*k}q=0;if(!B){break a}z[A>>2]=z[A>>2]*g;j=z[f>>2];k=z[d>>2];l=z[f+4>>2];m=z[d+4>>2];g=z[f+12>>2];z[h+24>>2]=C(g*z[d+8>>2])+z[f+8>>2];z[h+20>>2]=l+C(g*m);z[h+16>>2]=j+C(g*k);q=1;break a}z[a+20>>2]=l;z[a+16>>2]=j;j=z[e+8>>2];z[a+32>>2]=k;z[a+28>>2]=t;z[a+24>>2]=j;z[a+36>>2]=z[e+20>>2];z[a+40>>2]=o;v[a+12>>2]=0;j=C(0);B=ZW(f,q,a+16|0,a+28|0,o,a+12|0)^1;k=z[a+12>>2];B=B|!(k>=C(0))|!(g>=k);if(!B){z[A>>2]=k;m=z[q+8>>2];l=z[q+4>>2];o=C(k*z[q>>2]);g=C(z[a+16>>2]-o);z[a+16>>2]=g;n=C(k*l);l=C(z[a+20>>2]-n);z[a+20>>2]=l;m=C(k*m);k=C(z[a+24>>2]-m);z[a+24>>2]=k;n=C(z[a+32>>2]-n);z[a+32>>2]=n;o=C(z[a+28>>2]-o);z[a+28>>2]=o;m=C(C(z[a+36>>2]-m)-k);o=C(o-g);n=C(n-l);p=C(C(C(z[f+8>>2]-k)*m)+C(C(C(z[f>>2]-g)*o)+C(n*C(z[f+4>>2]-l))));i:{if(p<=C(0)){break i}j=C(1);r=C(C(m*m)+C(C(o*o)+C(n*n)));if(r<=p){break i}j=C(p/r)}k=C(k+C(m*j));z[h+24>>2]=k;l=C(l+C(n*j));z[h+20>>2]=l;g=C(g+C(o*j));z[h+16>>2]=g;m=z[f>>2];j=z[f+4>>2];k=C(k-z[f+8>>2]);z[d+8>>2]=k;j=C(l-j);z[d+4>>2]=j;g=C(g-m);z[d>>2]=g;l=C(K(C(C(k*k)+C(C(g*g)+C(j*j)))));if(l>C(0)){l=C(C(1)/l);k=C(k*l);z[d+8>>2]=k;j=C(j*l);z[d+4>>2]=j;g=C(g*l);z[d>>2]=g}l=z[e+24>>2];z[h+16>>2]=z[h+16>>2]-C(l*g);z[h+20>>2]=z[h+20>>2]-C(l*j);z[h+24>>2]=z[h+24>>2]-C(l*k)}q=B^1}xa=a+48|0;j:{if(!q){break j}b=1;if(w[i+1|0]&2){u[h+12>>1]=3;if(z[h+40>>2]!=C(0)){break j}k:{g=z[e>>2];if(g!=z[e+12>>2]){break k}j=z[e+4>>2];if(j!=z[e+16>>2]){break k}k=z[e+8>>2];if(k!=z[e+20>>2]){break k}z[c+20>>2]=z[e+24>>2];z[c+16>>2]=k;z[c+12>>2]=j;z[c+8>>2]=g;g=C(z[c+16>>2]-z[c+40>>2]);k=C(z[c+8>>2]-z[c+32>>2]);l=C(z[c+12>>2]-z[c+36>>2]);j=C(C(g*g)+C(C(k*k)+C(l*l)));m=C(K(j));n=z[c+20>>2];p=z[c+44>>2];l:{if(j>2]=g;z[h+36>>2]=j;z[h+32>>2]=k;z[h+40>>2]=m-C(p+n);l=z[c+32>>2];m=z[c+36>>2];n=j;j=z[c+44>>2];z[h+24>>2]=C(n*j)+z[c+40>>2];z[h+20>>2]=m+C(k*j);z[h+16>>2]=l+C(g*j);break j}g=C(0);o=z[e+8>>2];k=C(z[e+20>>2]-o);n=z[e>>2];l=C(z[e+12>>2]-n);t=z[c+40>>2];s=z[c+32>>2];p=z[e+4>>2];m=C(z[e+16>>2]-p);D=z[c+36>>2];r=C(C(C(t-o)*k)+C(C(C(s-n)*l)+C(m*C(D-p))));j=C(0);m:{if(r<=C(0)){break m}y=C(C(k*k)+C(C(l*l)+C(m*m)));j=C(1);if(y<=r){break m}j=C(r/y)}r=z[e+24>>2];y=z[c+44>>2];o=C(C(o+C(k*j))-t);l=C(C(n+C(l*j))-s);m=C(C(p+C(m*j))-D);p=C(C(o*o)+C(C(l*l)+C(m*m)));n=C(K(p));j=C(1);k=C(0);if(!(p>2]=j;z[h+36>>2]=k;z[h+32>>2]=g;z[h+40>>2]=n-C(y+r);l=z[c+32>>2];m=z[c+36>>2];n=k;k=z[c+44>>2];z[h+24>>2]=C(n*k)+z[c+40>>2];z[h+20>>2]=m+C(g*k);z[h+16>>2]=l+C(j*k);break j}if(z[h+40>>2]!=C(0)){u[h+12>>1]=3;break j}u[h+12>>1]=2}xa=c+48|0;return b|0}function WF(a){var b=0,c=0,d=0,e=0,f=0;f=xa-16|0;xa=f;b=v[a+440>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+432>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+428>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+420>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+416>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+408>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+404>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+396>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+384>>2];if(!(!b|v[a+388>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+384>>2]=0;b=v[a+380>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+372>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+364>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+356>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+348>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+344>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+336>>2];if(!b){break g}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+332>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[a+324>>2];if(!b){break h}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+308>>2];if(!(!b|v[a+312>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+308>>2]=0;b=v[a+304>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=v[a+296>>2];if(!b){break i}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+292>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=v[a+284>>2];if(!b){break j}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+280>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=v[a+272>>2];if(!b){break k}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+268>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=v[a+260>>2];if(!b){break l}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+248>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=v[a+240>>2];if(!b){break m}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+228>>2];if(!(!b|v[a+232>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+228>>2]=0;b=v[a+216>>2];if(!(!b|v[a+220>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+216>>2]=0;b=v[a+212>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=v[a+204>>2];if(!b){break n}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+200>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=v[a+192>>2];if(!b){break o}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+188>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=v[a+180>>2];if(!b){break p}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+168>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=v[a+160>>2];if(!b){break q}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+156>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=v[a+148>>2];if(!b){break r}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+144>>2];s:{if((b|0)<0|!(b&2147483647)){break s}b=v[a+136>>2];if(!b){break s}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+132>>2];t:{if((b|0)<0|!(b&2147483647)){break t}b=v[a+124>>2];if(!b){break t}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+120>>2];u:{if((b|0)<0|!(b&2147483647)){break u}b=v[a+112>>2];if(!b){break u}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+108>>2];v:{if((b|0)<0|!(b&2147483647)){break v}b=v[a+100>>2];if(!b){break v}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=0;c=v[a+96>>2];w:{if((c|0)<0|!(c&2147483647)){break w}c=v[a+88>>2];if(!c){break w}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}d=a- -64|0;c=v[a+68>>2];if(c){while(1){e=v[v[d>>2]+(b<<2)>>2];if(e){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e);c=v[a+68>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}b=0;v[f+8>>2]=0;c=v[d+4>>2];if((c|0)<0){e=v[d>>2];c=e+(c<<2)|0;while(1){v[c>>2]=v[f+8>>2];c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[d+4>>2]=0;c=v[a+72>>2];x:{if((c|0)<0|!(c&2147483647)){break x}c=v[a+64>>2];if(!c){break x}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}d=a+40|0;c=v[a+44>>2];if(c){while(1){e=v[v[d>>2]+(b<<2)>>2];if(e){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e);c=v[a+44>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[f+12>>2]=0;b=v[d+4>>2];if((b|0)<0){c=v[d>>2];b=c+(b<<2)|0;while(1){v[b>>2]=v[f+12>>2];b=b+4|0;if(c>>>0>b>>>0){continue}break}}v[d+4>>2]=0;b=v[a+48>>2];y:{if((b|0)<0|!(b&2147483647)){break y}b=v[a+40>>2];if(!b){break y}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+36>>2];z:{if((b|0)<0|!(b&2147483647)){break z}b=v[a+28>>2];if(!b){break z}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+24>>2];A:{if((b|0)<0|!(b&2147483647)){break A}b=v[a+16>>2];if(!b){break A}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+8>>2];B:{if((b|0)<0|!(b&2147483647)){break B}a=v[a>>2];if(!a){break B}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=f+16|0}function CY(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;var g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,u=C(0),w=C(0),x=C(0),A=0,D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=C(0),W=C(0),X=C(0),Y=C(0);i=xa+-64|0;xa=i;z[i+60>>2]=d;M=v[a+36>>2];a:{if(M){break a}M=0;G=v[a+20>>2];T=G<<2;if(T){U=v[37696];M=Ba[v[v[U+12>>2]+8>>2]](U+12|0,T,24422,11302,133)|0;G=v[a+20>>2]}v[a+36>>2]=M;if(!G){break a}while(1){v[(A<<2)+M>>2]=A;A=A+1|0;if(A>>>0>2]){continue}break}}j=z[b+16>>2];o=z[b+20>>2];l=z[b+4>>2];h=z[b+8>>2];g=z[b+12>>2];d=z[b>>2];z[i+48>>2]=C(g-d)*C(.5);z[i+56>>2]=C(o-h)*C(.5);z[i+52>>2]=C(j-l)*C(.5);v[i+40>>2]=0;v[i+36>>2]=e;v[i+32>>2]=f;b=v[a+40>>2];v[i+28>>2]=v[a+32>>2];v[i+24>>2]=b;U=v[a+28>>2];z[i+8>>2]=C(o+h)*C(.5);z[i+4>>2]=C(j+l)*C(.5);z[i>>2]=C(g+d)*C(.5);s=xa-1040|0;xa=s;d=z[c+8>>2];p=C(d+d);e=p>C(0);o=C(-p);d=z[c+4>>2];q=C(d+d);b=q>C(0);l=C(-q);d=z[c>>2];r=C(d+d);a=r>C(0);h=C(-r);H=z[i+56>>2];m=z[i+52>>2];j=z[i+48>>2];d=z[i+8>>2];u=C(d+d);d=z[i+4>>2];w=C(d+d);d=z[i>>2];x=C(d+d);g=z[i+60>>2];b:{if(g>=C(34028234663852886e22)){d=q==C(0)?w:q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);E=r==C(0)?x:r>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);g=u;if(p==C(0)){break b}g=p>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break b}d=C(w+C(q*g));E=C(x+C(r*g));g=C(u+C(p*g))}J=e?p:o;K=b?q:l;L=a?r:h;V=C(H+H);W=C(m+m);X=C(j+j);t[s+1024|0]=1;v[s+1032>>2]=256;v[s+1036>>2]=256;v[s+1028>>2]=s;e=v[i+24>>2];v[s>>2]=e;O=gE?x:E;H=g>u?u:g;d=d>w?w:d;E=x>2]+(f<<2)>>2];h=z[c>>2];g=z[c+12>>2];l=C(h+g);k=C(X+C(g-h));d:{e:{if(!(C(l+k)>=E)|!(C(l-k)<=Q)){break e}h=z[c+16>>2];g=z[c+4>>2];j=C(W+C(h-g));h=C(g+h);o=C(w-h);l=C(x-l);g=C(C(r*o)-C(q*l));if(!(C(C(K*k)+C(L*j))>=(g>C(0)?g:C(-g)))|!(C(h+j)>=d)|!(C(h-j)<=P)){break e}h=z[c+20>>2];g=z[c+8>>2];m=C(V+C(h-g));n=C(C(J*j)+C(K*m));j=C(g+h);g=C(u-j);h=C(C(q*g)-C(p*o));if(!(n>=(h>C(0)?h:C(-h)))|!(C(j+m)>=H)|!(C(j-m)<=O)){break e}g=C(C(p*l)-C(r*g));if(!(C(C(J*k)+C(L*m))>=(g>C(0)?g:C(-g)))){break e}R=z[i+60>>2];A=v[c+24>>2];if(!(A&1)){while(1){c=B(A>>>1|0,28)+e|0;h=z[c+28>>2];g=z[c+40>>2];I=C(h+g);m=C(X+C(g-h));h=z[c+44>>2];g=z[c+32>>2];j=C(W+C(h-g));D=C(g+h);o=C(w-D);l=C(x-I);g=C(C(r*o)-C(q*l));a=C(I+m)>=E&C(I-m)<=Q&C(C(K*m)+C(L*j))>=(g>C(0)?g:C(-g))&C(D+j)>=d&C(D-j)<=P;k=C(J*j);h=z[c+48>>2];g=z[c+36>>2];j=C(V+C(h-g));N=C(g+h);g=C(u-N);h=C(C(q*g)-C(p*o));g=C(C(p*l)-C(r*g));b=a&C(k+C(K*j))>=(h>C(0)?h:C(-h))&C(N+j)>=H&C(N-j)<=O&C(C(J*m)+C(L*j))>=(g>C(0)?g:C(-g));h=z[c+16>>2];g=z[c+4>>2];m=C(W+C(h-g));F=C(g+h);o=C(w-F);h=z[c>>2];g=z[c+12>>2];n=C(h+g);l=C(x-n);j=C(C(r*o)-C(q*l));k=C(X+C(g-h));a=C(n+k)>=E&C(n-k)<=Q&C(C(K*k)+C(L*m))>=(j>C(0)?j:C(-j))&C(F+m)>=d&C(F-m)<=P;S=C(J*m);h=z[c+20>>2];g=z[c+8>>2];m=C(V+C(h-g));j=C(g+h);g=C(u-j);h=C(C(q*g)-C(p*o));g=C(C(p*l)-C(r*g));a=a&C(S+C(K*m))>=(h>C(0)?h:C(-h))&C(j+m)>=H&C(j-m)<=O&C(C(J*k)+C(L*m))>=(g>C(0)?g:C(-g));f:{if(!(!a|!b)){a=C(C(C(N-j)*p)+C(C(C(I-n)*r)+C(q*C(D-F))))>C(0);v[v[s+1028>>2]+(f<<2)>>2]=c+B(a,28);c=c+B(!a,28)|0;f=f+1|0;if((f|0)!=(v[s+1036>>2]&2147483647)){break f}BY(s,f<<1);break f}if(!(a|b)){break e}c=a?c:c+28|0}A=v[c+24>>2];if(!(A&1)){continue}break}}a=v[c+24>>2];G=a>>>1&15;if(!G){break e}l=C(u+C(p*R));m=lu?u:l;h=h>w?w:h;g=g>x?x:g;A=v[i+28>>2]+(a>>>3&536870908)|0;T=R>2];c=v[i+32>>2];if((G|0)!=1){while(1){a=v[A>>2];b=U+B(a,24)|0;n=z[b>>2];k=z[b+12>>2];F=C(n+k);S=C(X+C(k-n));g:{if(!(C(F+S)>=E)|!(C(F-S)<=Q)){break g}n=z[b+16>>2];k=z[b+4>>2];D=C(W+C(n-k));n=C(k+n);N=C(w-n);F=C(x-F);k=C(C(r*N)-C(q*F));if(!(C(C(K*S)+C(L*D))>=(k>C(0)?k:C(-k)))|!(C(n+D)>=d)|!(C(n-D)<=P)){break g}n=z[b+20>>2];k=z[b+8>>2];I=C(V+C(n-k));Y=C(C(J*D)+C(K*I));D=C(k+n);k=C(u-D);n=C(C(q*k)-C(p*N));if(!(Y>=(n>C(0)?n:C(-n)))|!(C(D+I)>=H)|!(C(D-I)<=O)){break g}k=C(C(p*F)-C(r*k));if(!(C(C(J*S)+C(L*I))>=(k>C(0)?k:C(-k)))){break g}b=v[(a<<2)+M>>2];a=v[i+40>>2];v[i+40>>2]=a+1;v[c+(a<<2)>>2]=b;if(v[i+40>>2]==v[i+36>>2]){break c}if(!T){break g}z[i+60>>2]=R;E=g;d=h;H=l;Q=o;P=j;O=m}A=A+4|0;G=G-1|0;if(G){continue}break e}}b=v[(v[A>>2]<<2)+M>>2];a=v[i+40>>2];v[i+40>>2]=a+1;v[c+(a<<2)>>2]=b;c=v[i+36>>2];b=v[i+40>>2];if(!T){if((b|0)!=(c|0)){break d}break c}if((b|0)==(c|0)){break c}z[i+60>>2]=R;E=g;d=h;H=l;Q=o;P=j;O=m}}a=f;f=a-1|0;if(a){continue}}break}a=v[s+1036>>2];h:{if((a|0)<0|!(a&2147483647)){break h}b=v[s+1028>>2];if((b|0)==(s|0)|!b){break h}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}xa=s+1040|0;xa=i- -64|0;return v[i+40>>2]}function tB(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=C(0),q=0,r=0,s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=0,fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=0,Fa=0,Ga=C(0),Ha=C(0),Ia=C(0),Ja=0,Ka=0,La=C(0);q=x[a+22>>1];if(q){Ga=C(z[f+8>>2]-z[g+8>>2]);Ha=C(z[f+4>>2]-z[g+4>>2]);Ia=C(z[f>>2]-z[g>>2]);r=v[a+24>>2];Ja=r+(q<<4)|0;while(1){aa=r+80|0;a=r;q=w[r+2|0];P=aa+B(q,112)|0;Ea=P+((q<<2)+12&2032)|0;ea=w[r+3|0];Ka=ea<<7;a:{if(!q){t=C(0);Q=C(0);R=C(0);S=C(0);T=C(0);U=C(0);V=C(0);W=C(0);X=C(0);Y=C(0);Z=C(0);_=C(0);$=C(0);break a}u=z[a+40>>2];y=z[a+32>>2];K=z[a+36>>2];fa=C(C(u*C(z[f+8>>2]-z[g+8>>2]))+C(C(y*C(z[f>>2]-z[g>>2]))+C(K*C(z[f+4>>2]-z[g+4>>2]))));ga=z[i+8>>2];ha=z[i+4>>2];ia=z[i>>2];A=z[e+8>>2];E=z[e+4>>2];s=z[e>>2];L=C(-z[a+44>>2]);F=0;Q=C(0);R=C(0);S=C(0);T=C(0);U=C(0);V=C(0);W=C(0);X=C(0);Y=C(0);Z=C(0);_=C(0);$=C(0);t=C(0);while(1){r=aa+B(F,112)|0;ja=z[r+96>>2];ka=z[r+100>>2];la=z[r+104>>2];ma=z[r+80>>2];na=z[r+84>>2];oa=z[r+88>>2];pa=z[r+48>>2];qa=z[r+52>>2];ra=z[r+56>>2];Fa=P+(F<<2)|0;G=z[Fa>>2];sa=z[r+28>>2];ta=z[r+36>>2];ua=z[r+12>>2];p=z[r+32>>2];H=z[r+24>>2];I=z[r+20>>2];J=z[r+16>>2];M=z[r+8>>2];N=z[r>>2];O=z[r+4>>2];va=z[c+8>>2];wa=z[d+8>>2];ba=z[b+8>>2];xa=z[c+4>>2];ya=z[d+4>>2];ca=z[b+4>>2];za=z[d>>2];da=z[b>>2];Aa=z[c>>2];Ba=z[h+8>>2];Ca=z[h>>2];Da=z[h+4>>2];v[b+12>>2]=0;La=p;p=C(ua+C(C(fa+C(C(C(Ba*M)+C(C(Ca*N)+C(O*Da)))-C(C(ga*H)+C(C(ia*J)+C(ha*I)))))-C(p*o)));p=C(ta*(n>p?n:p));p=C(sa*C(C(La+(pA?p:A;z[b+8>>2]=ba+C(ra*p);z[b+4>>2]=ca+C(qa*p);z[b>>2]=da+C(pa*p);v[d+12>>2]=0;z[d+8>>2]=C(oa*p)+z[d+8>>2];z[d+4>>2]=C(na*p)+z[d+4>>2];z[d>>2]=C(ma*p)+z[d>>2];A=z[r+64>>2];E=z[r+68>>2];s=z[r+72>>2];v[c+12>>2]=0;z[c+8>>2]=C(p*s)+z[c+8>>2];z[c+4>>2]=C(p*E)+z[c+4>>2];z[c>>2]=C(p*A)+z[c>>2];v[e+12>>2]=0;A=C(C(la*p)+z[e+8>>2]);z[e+8>>2]=A;E=C(C(ka*p)+z[e+4>>2]);z[e+4>>2]=E;s=C(C(ja*p)+z[e>>2]);z[e>>2]=s;G=C(G+p);z[Fa>>2]=G;t=C(t+G);Q=C(Q+C(H*p));R=C(R+C(I*p));S=C(S+C(J*p));H=C(u*p);W=C(W+H);I=C(K*p);X=C(X+I);J=C(y*p);Y=C(Y+J);T=C(T+C(M*p));U=C(U+C(O*p));V=C(V+C(N*p));Z=C(Z+H);_=C(_+I);$=C($+J);F=F+1|0;if((q|0)!=(F|0)){continue}break}}r=Ea+Ka|0;if(ea){p=z[a+52>>2];p=p>2]);A=C(-O);ca=C(z[a+16>>2]*p);F=0;P=0;while(1){q=(F<<7)+Ea|0;da=z[q+112>>2];fa=z[q+116>>2];ga=z[q+120>>2];ha=z[q+96>>2];ia=z[q+100>>2];ja=z[q+104>>2];ka=z[q+64>>2];la=z[q+68>>2];ma=z[q+72>>2];E=z[q+52>>2];na=z[q+48>>2];oa=z[q+12>>2];p=z[q+28>>2];s=z[q+44>>2];K=z[q+24>>2];H=z[q+40>>2];t=z[q+8>>2];I=z[q+20>>2];J=z[q+36>>2];u=z[q+4>>2];M=z[q+16>>2];y=z[q>>2];N=z[q+32>>2];pa=z[h+8>>2];qa=z[h+4>>2];ra=z[h>>2];sa=z[i+8>>2];ta=z[i+4>>2];ua=z[i>>2];va=z[d+8>>2];L=z[b+8>>2];wa=z[e+8>>2];xa=z[c+8>>2];ya=z[d+4>>2];G=z[b+4>>2];za=z[e+4>>2];Aa=z[c+4>>2];ba=z[b>>2];Ba=z[d>>2];Ca=z[c>>2];Da=z[e>>2];v[b+12>>2]=0;p=C(C(E-C(s*C(C(na*C(oa+C(C(p*o)+C(C(C(t*Ga)+C(C(y*Ia)+C(Ha*u)))+C(C(C(K*pa)+C(C(M*ra)+C(I*qa)))-C(C(H*sa)+C(C(N*ua)+C(J*ta))))))))-p)))-C(s*C(C(C(C(C(y*ba)+C(M*Ba))-C(C(y*Ca)+C(N*Da)))+C(C(C(u*G)+C(I*ya))-C(C(u*Aa)+C(J*za))))+C(C(C(t*L)+C(K*va))-C(C(t*xa)+C(H*wa))))));s=p>2]=L+C(ma*p);z[b+4>>2]=G+C(la*p);z[b>>2]=ba+C(ka*p);v[d+12>>2]=0;z[d+8>>2]=z[d+8>>2]+C(ja*p);z[d+4>>2]=z[d+4>>2]+C(ia*p);z[d>>2]=z[d>>2]+C(ha*p);E=z[q+80>>2];L=z[q+84>>2];G=z[q+88>>2];v[c+12>>2]=0;z[c+8>>2]=C(p*G)+z[c+8>>2];z[c+4>>2]=C(p*L)+z[c+4>>2];z[c>>2]=C(p*E)+z[c>>2];v[e+12>>2]=0;z[e+8>>2]=C(ga*p)+z[e+8>>2];z[e+4>>2]=C(fa*p)+z[e+4>>2];z[e>>2]=C(da*p)+z[e>>2];z[q+52>>2]=s;Q=C(Q+C(H*p));R=C(R+C(J*p));S=C(S+C(N*p));t=C(t*p);W=C(W+t);u=C(u*p);X=C(X+u);y=C(y*p);Y=C(Y+y);T=C(T+C(K*p));U=C(U+C(I*p));V=C(V+C(M*p));Z=C(Z+t);_=C(_+u);$=C($+y);P=0-(aa|(P|0)!=0)|0;F=F+1|0;if((ea|0)!=(F|0)){continue}break}v[a+56>>2]=P}p=z[a+24>>2];v[j+12>>2]=0;z[j+8>>2]=C(Z*p)+z[j+8>>2];z[j+4>>2]=C(_*p)+z[j+4>>2];z[j>>2]=C($*p)+z[j>>2];p=z[a+4>>2];v[l+12>>2]=0;z[l+8>>2]=C(T*p)+z[l+8>>2];z[l+4>>2]=C(U*p)+z[l+4>>2];z[l>>2]=C(V*p)+z[l>>2];p=z[a+28>>2];v[k+12>>2]=0;z[k+8>>2]=z[k+8>>2]-C(W*p);z[k+4>>2]=z[k+4>>2]-C(X*p);z[k>>2]=z[k>>2]-C(Y*p);p=z[a+8>>2];v[m+12>>2]=0;z[m+8>>2]=z[m+8>>2]-C(Q*p);z[m+4>>2]=z[m+4>>2]-C(R*p);z[m>>2]=z[m>>2]-C(S*p);if(r>>>0>>0){continue}break}}}function x3(a){v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+28>>2]=-1082130432;v[a+32>>2]=-1;v[a+20>>2]=-1082130432;v[a+24>>2]=-1082130432;v[a+60>>2]=-1082130432;v[a+64>>2]=-1;v[a+52>>2]=-1082130432;v[a+56>>2]=-1082130432;v[a+44>>2]=0;v[a+48>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+124>>2]=-1082130432;v[a+128>>2]=-1;v[a+92>>2]=-1082130432;v[a+96>>2]=-1;v[a+84>>2]=-1082130432;v[a+88>>2]=-1082130432;v[a+76>>2]=0;v[a+80>>2]=0;v[a+68>>2]=0;v[a+72>>2]=0;v[a+108>>2]=0;v[a+112>>2]=0;v[a+116>>2]=-1082130432;v[a+120>>2]=-1082130432;v[a+100>>2]=0;v[a+104>>2]=0;v[a+160>>2]=-1;v[a+144>>2]=0;v[a+188>>2]=-1082130432;v[a+192>>2]=-1;v[a+156>>2]=-1082130432;v[a+148>>2]=-1082130432;v[a+152>>2]=-1082130432;v[a+140>>2]=0;v[a+132>>2]=0;v[a+136>>2]=0;v[a+172>>2]=0;v[a+176>>2]=0;v[a+180>>2]=-1082130432;v[a+184>>2]=-1082130432;v[a+164>>2]=0;v[a+168>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+220>>2]=-1082130432;v[a+224>>2]=-1;v[a+212>>2]=-1082130432;v[a+216>>2]=-1082130432;v[a+196>>2]=0;v[a+200>>2]=0;v[a+252>>2]=-1082130432;v[a+256>>2]=-1;v[a+236>>2]=0;v[a+240>>2]=0;v[a+272>>2]=0;v[a+288>>2]=-1;v[a+228>>2]=0;v[a+232>>2]=0;v[a+244>>2]=-1082130432;v[a+248>>2]=-1082130432;v[a+320>>2]=-1;v[a+304>>2]=0;v[a+284>>2]=-1082130432;v[a+276>>2]=-1082130432;v[a+280>>2]=-1082130432;v[a+268>>2]=0;v[a+260>>2]=0;v[a+264>>2]=0;v[a+352>>2]=-1;v[a+336>>2]=0;v[a+316>>2]=-1082130432;v[a+308>>2]=-1082130432;v[a+312>>2]=-1082130432;v[a+300>>2]=0;v[a+292>>2]=0;v[a+296>>2]=0;v[a+384>>2]=-1;v[a+368>>2]=0;v[a+348>>2]=-1082130432;v[a+340>>2]=-1082130432;v[a+344>>2]=-1082130432;v[a+332>>2]=0;v[a+324>>2]=0;v[a+328>>2]=0;v[a+416>>2]=-1;v[a+400>>2]=0;v[a+380>>2]=-1082130432;v[a+372>>2]=-1082130432;v[a+376>>2]=-1082130432;v[a+364>>2]=0;v[a+356>>2]=0;v[a+360>>2]=0;v[a+448>>2]=-1;v[a+432>>2]=0;v[a+412>>2]=-1082130432;v[a+404>>2]=-1082130432;v[a+408>>2]=-1082130432;v[a+396>>2]=0;v[a+388>>2]=0;v[a+392>>2]=0;v[a+480>>2]=-1;v[a+464>>2]=0;v[a+444>>2]=-1082130432;v[a+436>>2]=-1082130432;v[a+440>>2]=-1082130432;v[a+428>>2]=0;v[a+420>>2]=0;v[a+424>>2]=0;v[a+512>>2]=-1;v[a+496>>2]=0;v[a+476>>2]=-1082130432;v[a+468>>2]=-1082130432;v[a+472>>2]=-1082130432;v[a+460>>2]=0;v[a+452>>2]=0;v[a+456>>2]=0;v[a+544>>2]=-1;v[a+528>>2]=0;v[a+508>>2]=-1082130432;v[a+500>>2]=-1082130432;v[a+504>>2]=-1082130432;v[a+492>>2]=0;v[a+484>>2]=0;v[a+488>>2]=0;v[a+576>>2]=-1;v[a+560>>2]=0;v[a+540>>2]=-1082130432;v[a+532>>2]=-1082130432;v[a+536>>2]=-1082130432;v[a+524>>2]=0;v[a+516>>2]=0;v[a+520>>2]=0;v[a+608>>2]=-1;v[a+592>>2]=0;v[a+572>>2]=-1082130432;v[a+564>>2]=-1082130432;v[a+568>>2]=-1082130432;v[a+556>>2]=0;v[a+548>>2]=0;v[a+552>>2]=0;v[a+640>>2]=-1;v[a+624>>2]=0;v[a+604>>2]=-1082130432;v[a+596>>2]=-1082130432;v[a+600>>2]=-1082130432;v[a+588>>2]=0;v[a+580>>2]=0;v[a+584>>2]=0;v[a+672>>2]=-1;v[a+656>>2]=0;v[a+636>>2]=-1082130432;v[a+628>>2]=-1082130432;v[a+632>>2]=-1082130432;v[a+620>>2]=0;v[a+612>>2]=0;v[a+616>>2]=0;v[a+704>>2]=-1;v[a+688>>2]=0;v[a+668>>2]=-1082130432;v[a+660>>2]=-1082130432;v[a+664>>2]=-1082130432;v[a+652>>2]=0;v[a+644>>2]=0;v[a+648>>2]=0;v[a+736>>2]=-1;v[a+720>>2]=0;v[a+700>>2]=-1082130432;v[a+692>>2]=-1082130432;v[a+696>>2]=-1082130432;v[a+684>>2]=0;v[a+676>>2]=0;v[a+680>>2]=0;v[a+768>>2]=-1;v[a+752>>2]=0;v[a+732>>2]=-1082130432;v[a+724>>2]=-1082130432;v[a+728>>2]=-1082130432;v[a+716>>2]=0;v[a+708>>2]=0;v[a+712>>2]=0;v[a+800>>2]=-1;v[a+784>>2]=0;v[a+764>>2]=-1082130432;v[a+756>>2]=-1082130432;v[a+760>>2]=-1082130432;v[a+748>>2]=0;v[a+740>>2]=0;v[a+744>>2]=0;v[a+832>>2]=-1;v[a+816>>2]=0;v[a+796>>2]=-1082130432;v[a+788>>2]=-1082130432;v[a+792>>2]=-1082130432;v[a+780>>2]=0;v[a+772>>2]=0;v[a+776>>2]=0;v[a+864>>2]=-1;v[a+848>>2]=0;v[a+828>>2]=-1082130432;v[a+820>>2]=-1082130432;v[a+824>>2]=-1082130432;v[a+812>>2]=0;v[a+804>>2]=0;v[a+808>>2]=0;v[a+896>>2]=-1;v[a+880>>2]=0;v[a+860>>2]=-1082130432;v[a+852>>2]=-1082130432;v[a+856>>2]=-1082130432;v[a+844>>2]=0;v[a+836>>2]=0;v[a+840>>2]=0;v[a+928>>2]=-1;v[a+912>>2]=0;v[a+892>>2]=-1082130432;v[a+884>>2]=-1082130432;v[a+888>>2]=-1082130432;v[a+876>>2]=0;v[a+868>>2]=0;v[a+872>>2]=0;v[a+960>>2]=-1;v[a+944>>2]=0;v[a+924>>2]=-1082130432;v[a+916>>2]=-1082130432;v[a+920>>2]=-1082130432;v[a+908>>2]=0;v[a+900>>2]=0;v[a+904>>2]=0;v[a+992>>2]=-1;v[a+976>>2]=0;v[a+956>>2]=-1082130432;v[a+948>>2]=-1082130432;v[a+952>>2]=-1082130432;v[a+940>>2]=0;v[a+932>>2]=0;v[a+936>>2]=0;v[a+1024>>2]=-1;v[a+1008>>2]=0;v[a+988>>2]=-1082130432;v[a+980>>2]=-1082130432;v[a+984>>2]=-1082130432;v[a+972>>2]=0;v[a+964>>2]=0;v[a+968>>2]=0;v[a+1028>>2]=0;v[a+1020>>2]=-1082130432;v[a+1012>>2]=-1082130432;v[a+1016>>2]=-1082130432;v[a+1004>>2]=0;v[a+996>>2]=0;v[a+1e3>>2]=0;return a}function hw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=0,l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=0,N=0,O=0,P=0,Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=0,ja=0,ka=0,la=0,ma=0,na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=0,Da=0,Ea=0;m=xa-2304|0;xa=m;f=v[b+100>>2];P=f+128|0;ia=v[f+8>>2];d=f+x[f+18>>1]|0;ja=d+144|0;h=ja+B(c,160)|0;q=v[h+152>>2];b=ia&q;ka=v[f+12>>2];k=v[h+156>>2];h=ka&k;e=h;if(b|e){g=x[f+4>>1]<<5;Q=g+P|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}R=z[d+136>>2];S=z[d+104>>2];T=z[d+120>>2];U=z[d+132>>2];V=z[d+100>>2];W=z[d+116>>2];X=z[d+112>>2];Y=z[d+128>>2];u=z[d- -64>>2];F=z[d+80>>2];H=z[d+84>>2];y=z[d+52>>2];I=z[d+68>>2];n=z[d+20>>2];o=z[d+36>>2];J=z[d+88>>2];j=z[f+56>>2];A=z[d+56>>2];r=z[f+48>>2];D=z[d+72>>2];l=z[f+52>>2];t=z[d+24>>2];i=z[f+36>>2];Z=z[d+40>>2];p=z[f+40>>2];_=z[d+96>>2];$=z[f+128>>2];aa=z[d+32>>2];ba=z[d>>2];ca=z[d+16>>2];K=z[d+48>>2];da=z[f+132>>2];ea=z[d+4>>2];s=z[f+136>>2];fa=z[d+8>>2];ga=z[f+32>>2];v[f+140>>2]=0;v[f+156>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+56>>2]=0;v[f+60>>2]=0;ha=s;s=C(-ga);r=C(-r);t=C(C(C(C(fa*s)-C(t*i))-C(Z*p))+C(C(C(A*r)-C(D*l))-C(J*j)));z[f+136>>2]=ha+t;n=C(C(C(C(ea*s)-C(n*i))-C(o*p))+C(C(C(y*r)-C(I*l))-C(H*j)));z[f+132>>2]=da+n;o=C(C(C(C(ba*s)-C(ca*i))-C(aa*p))+C(C(C(K*r)-C(u*l))-C(F*j)));z[f+128>>2]=$+o;y=C(C(C(C(K*s)-C(y*i))-C(A*p))+C(C(C(_*r)-C(X*l))-C(Y*j)));z[f+144>>2]=y+z[f+144>>2];u=C(C(C(C(u*s)-C(I*i))-C(D*p))+C(C(C(V*r)-C(W*l))-C(U*j)));z[f+148>>2]=u+z[f+148>>2];i=C(C(C(C(F*s)-C(H*i))-C(J*p))+C(C(C(S*r)-C(T*l))-C(R*j)));z[f+152>>2]=i+z[f+152>>2];v[m+28>>2]=0;z[m+24>>2]=i;z[m+20>>2]=u;z[m+16>>2]=y;v[m+12>>2]=0;z[m+8>>2]=t;z[m+4>>2]=n;z[m>>2]=o;v[m+2048>>2]=0;L=v[d+288>>2];M=v[d+292>>2];N=1;d=q-!h|0;b=h-1|0}if(b|d){la=f+x[f+6>>1]|0;ma=g+(g+Q|0)|0;while(1){e=b;O=(Ca=Qaa(e),Da=Qaa(d)+32|0,Ea=e,Ea?Ca:Da);e=O<<5;k=e+P|0;R=z[k>>2];S=z[k+4>>2];G=e+la|0;H=z[G+24>>2];T=z[k+8>>2];I=z[G+16>>2];J=z[G+20>>2];g=B(O,160)+ja|0;U=z[g+136>>2];V=z[g+104>>2];W=z[g+120>>2];X=z[g+88>>2];Y=z[g+84>>2];Z=z[g+80>>2];_=z[g+72>>2];$=z[g+64>>2];aa=z[g+68>>2];ba=z[g+132>>2];ca=z[g+100>>2];da=z[g+116>>2];ea=z[g+56>>2];fa=z[g+52>>2];ga=z[g+48>>2];ha=z[g+40>>2];na=z[g+32>>2];oa=z[g+36>>2];pa=z[g+128>>2];E=(O<<4)+ma|0;s=z[E+8>>2];r=z[E+4>>2];qa=z[g+112>>2];ra=z[g+96>>2];F=z[E>>2];sa=z[g+24>>2];ta=z[g+20>>2];ua=z[g+16>>2];va=z[g+8>>2];e=e+Q|0;j=z[e+8>>2];wa=z[g>>2];ya=z[e>>2];l=z[e+20>>2];A=z[G+4>>2];za=z[g+4>>2];Aa=z[e+4>>2];D=z[G>>2];Ba=z[e+24>>2];K=z[G+8>>2];p=z[e+16>>2];v[k+12>>2]=0;v[k+28>>2]=0;t=C(t+j);j=C(y+p);l=C(u+l);p=C(t+C(C(j*A)-C(D*l)));i=C(i+Ba);o=C(C(o+ya)+C(C(l*K)-C(A*i)));n=C(C(n+Aa)+C(C(i*D)-C(K*j)));A=C(C(C(pa*s)+C(C(ra*F)+C(r*qa)))+C(C(C(va*p)+C(C(wa*o)+C(za*n)))+C(C(sa*i)+C(C(ua*j)+C(l*ta)))));y=C(j-A);z[k+16>>2]=y+z[k+16>>2];D=C(C(C(ba*s)+C(C(ca*F)+C(r*da)))+C(C(C(ha*p)+C(C(na*o)+C(n*oa)))+C(C(ea*i)+C(C(ga*j)+C(l*fa)))));u=C(l-D);z[k+20>>2]=u+z[k+20>>2];j=C(C(C(U*s)+C(C(V*F)+C(r*W)))+C(C(C(_*p)+C(C($*o)+C(n*aa)))+C(C(X*i)+C(C(Z*j)+C(l*Y)))));i=C(i-j);z[k+24>>2]=i+z[k+24>>2];t=C(p-C(C(I*D)-C(A*J)));z[k+8>>2]=T+t;n=C(n-C(C(H*A)-C(j*I)));z[k+4>>2]=S+n;o=C(o-C(C(J*j)-C(D*H)));z[k>>2]=R+o;v[e+24>>2]=0;v[e+28>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e>>2]=0;v[e+4>>2]=0;v[E+8>>2]=0;v[E+12>>2]=0;v[E>>2]=0;v[E+4>>2]=0;v[(m+2048|0)+(O<<2)>>2]=N;k=v[g+144>>2];g=v[g+148>>2];e=(N<<5)+m|0;v[e+28>>2]=0;z[e+24>>2]=i;z[e+20>>2]=u;z[e+16>>2]=y;v[e+12>>2]=0;z[e+8>>2]=t;z[e+4>>2]=n;z[e>>2]=o;N=N+1|0;L=k|L;M=g|M;e=b;b=e-1&e;d=d&d-!e;if(b|d){continue}break}}g=h^-1;b=g&L;q=q^-1;d=q&M;if(b|d){while(1){h=b;h=(Ca=Qaa(h),Da=Qaa(d)+32|0,Ea=h,Ea?Ca:Da);e=(v[(m+2048|0)+(w[(h+f|0)- -64|0]<<2)>>2]<<5)+m|0;j=z[e>>2];l=z[e+4>>2];i=z[e+8>>2];h=(h<<5)+Q|0;v[h+12>>2]=0;z[h+8>>2]=i+z[h+8>>2];z[h+4>>2]=l+z[h+4>>2];z[h>>2]=j+z[h>>2];j=z[e+16>>2];l=z[e+20>>2];i=z[e+24>>2];v[h+28>>2]=0;z[h+24>>2]=i+z[h+24>>2];z[h+20>>2]=l+z[h+20>>2];z[h+16>>2]=j+z[h+16>>2];h=b;b=h-1&h;d=d&d-!h;if(b|d){continue}break}}v[f+8>>2]=g&(L|ia);v[f+12>>2]=q&(M|ka)}b=(c<<5)+P|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c;c=v[b+20>>2];v[a+16>>2]=v[b+16>>2];v[a+20>>2]=c;c=v[b+28>>2];v[a+24>>2]=v[b+24>>2];v[a+28>>2]=c;xa=m+2304|0}function qI(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=xa-16|0;xa=m;v[a+356>>2]=g;v[a+352>>2]=d;t[a+365|0]=w[a+365|0]!=0|e;a:{if(b>>>0<2){break a}v[a+128>>2]=g;v[a+124>>2]=d;v[a+120>>2]=b;v[a+116>>2]=a;v[a+112>>2]=1;v[a+108>>2]=f;if(!f){break a}Ba[v[v[f>>2]+16>>2]](f);v[a+104>>2]=v[v[a+108>>2]+16>>2]}n=a+224|0;b:{if(y[a+232>>2]>=(v[a+236>>2]>>>1&1073741823)>>>0){v[a+232>>2]=0;break b}v[m+8>>2]=0;hI(n,0,m+8|0);iI(n,v[a+232>>2])}j=v[a+136>>2];if(j){e=v[a+140>>2]&2147483647;c:{while(1){i=0;if(!e){break c}e=e-1|0;i=v[j+(e<<2)>>2];if(!i){continue}break}i=(E(i)|e<<5)^31}l=i>>>5|0;while(1){e=v[j+(k<<2)>>2];if(e){o=k<<5;while(1){h=Qaa(e)|o;v[m+8>>2]=h;i=v[a+232>>2];d:{if(i>>>0>=(v[a+236>>2]&2147483647)>>>0){mI(n,m+8|0);break d}v[v[a+228>>2]+(i<<2)>>2]=h;v[a+232>>2]=v[a+232>>2]+1}e=e-1&e;if(e){continue}break}}e=(k|0)==(l|0);k=k+1|0;if(!e){continue}break}}p=a+240|0;e:{if(y[a+248>>2]>=(v[a+252>>2]>>>1&1073741823)>>>0){v[a+248>>2]=0;break e}v[m+8>>2]=0;hI(p,0,m+8|0);iI(p,v[a+248>>2])}f:{if(!w[a+364|0]){q=v[a+160>>2];if(q){e=v[a+164>>2]&2147483647;g:{while(1){i=1;if(!e){break g}e=e-1|0;if(!v[q+(e<<2)>>2]){continue}break}i=(e&134217727)+1|0}j=a+388|0;k=0;while(1){l=k<<2;e=v[q+l>>2];if(e){o=k<<5;while(1){h=Qaa(e);n=h|o;v[m>>2]=n;h:{if(v[v[a+136>>2]+l>>2]>>>h&1){break h}h=v[(v[a+196>>2]+(n<<3)|0)+4>>2];if((h|0)==-1){h=v[a+248>>2];if(h>>>0>=(v[a+252>>2]&2147483647)>>>0){mI(p,m);break h}v[v[a+244>>2]+(h<<2)>>2]=n;v[a+248>>2]=v[a+248>>2]+1;break h}n=v[v[a+376>>2]+(h<<1&-4)>>2];if(v[n+20>>2]!=-1){break h}h=v[a+392>>2];v[n+20>>2]=h;v[m+8>>2]=n;if(h>>>0>=(v[a+396>>2]&2147483647)>>>0){lI(j,m+8|0);break h}v[v[a+388>>2]+(h<<2)>>2]=n;v[a+392>>2]=h+1}e=e-1&e;if(e){continue}break}}k=k+1|0;if((i|0)!=(k|0)){continue}break}}e=v[a+392>>2];if(!e){break f}l=0;while(1){h=v[v[a+388>>2]+(l<<2)>>2];eI(h);i:{if(b>>>0>=2){k=v[h>>2];break i}fI(h,v[v[a+276>>2]+4>>2],v[v[a+192>>2]+4>>2]);k=v[h>>2];i=v[v[a+276>>2]+4>>2]+B(k,24)|0;z[i>>2]=z[h+36>>2];z[i+4>>2]=z[h+40>>2];z[i+8>>2]=z[h+44>>2];z[i+12>>2]=z[h+48>>2];z[i+16>>2]=z[h+52>>2];z[i+20>>2]=z[h+56>>2]}j:{if(v[v[a+136>>2]+(k>>>3&536870908)>>2]>>>k&1){break j}i=v[a+248>>2];if(i>>>0>=(v[a+252>>2]&2147483647)>>>0){mI(p,h);break j}v[v[a+244>>2]+(i<<2)>>2]=k;v[a+248>>2]=v[a+248>>2]+1}l=l+1|0;if((l|0)!=(e|0)){continue}break}if(b>>>0>=2){k=b>>>0>>0?(e>>>0)/(b>>>0)|0:e;o=a+88|0;l=0;while(1){j=vr(c,48);h=v[a+556>>2];i=v[a+552>>2];v[j+24>>2]=0;v[j+16>>2]=0;v[j+8>>2]=i;v[j+12>>2]=h;v[j+28>>2]=0;v[j+32>>2]=0;v[j>>2]=130648;v[j+36>>2]=0;v[j+40>>2]=0;v[j+40>>2]=v[a+388>>2];i=e>>>0>>0?e:k;v[j+36>>2]=i;v[j+32>>2]=l;v[j+28>>2]=a;v[j+24>>2]=1;v[j+20>>2]=o;Ba[v[v[a+88>>2]+16>>2]](o);v[j+16>>2]=v[v[j+20>>2]+16>>2];Ba[v[v[j>>2]+20>>2]](j);l=i+l|0;e=e-i|0;if(e){continue}break}}t[a+365|0]=1;zz(v[a+244>>2],v[a+248>>2]);break f}c=0;h=xa-16|0;xa=h;u[a+364>>1]=256;v[h+8>>2]=0;if(v[a+360>>2]){k=a+240|0;i=a+388|0;while(1){k:{if(v[v[a+180>>2]+(c<<2)>>2]==-1){break k}e=v[(v[a+196>>2]+(c<<3)|0)+4>>2];if((e|0)==-1){if(v[v[a+136>>2]+(c>>>3&536870908)>>2]>>>c&1){break k}e=v[a+248>>2];if(e>>>0>=(v[a+252>>2]&2147483647)>>>0){mI(k,h+8|0);break k}v[v[a+244>>2]+(e<<2)>>2]=c;v[a+248>>2]=v[a+248>>2]+1;break k}if(!(e&1)){break k}e=v[v[a+376>>2]+(e<<1&-4)>>2];if(!v[e+8>>2]){break k}l:{if(v[e+20>>2]!=-1){break l}c=v[a+392>>2];v[e+20>>2]=c;v[h+12>>2]=e;if(c>>>0>=(v[a+396>>2]&2147483647)>>>0){lI(i,h+12|0);break l}v[v[a+388>>2]+(c<<2)>>2]=e;v[a+392>>2]=c+1}eI(e);fI(e,v[v[a+276>>2]+4>>2],v[v[a+192>>2]+4>>2]);c=v[v[a+276>>2]+4>>2]+B(v[e>>2],24)|0;z[c>>2]=z[e+36>>2];z[c+4>>2]=z[e+40>>2];z[c+8>>2]=z[e+44>>2];z[c+12>>2]=z[e+48>>2];z[c+16>>2]=z[e+52>>2];z[c+20>>2]=z[e+56>>2];e=v[h+8>>2];if(v[v[a+136>>2]+(e>>>3&536870908)>>2]>>>e&1){break k}c=v[a+248>>2];if(c>>>0>=(v[a+252>>2]&2147483647)>>>0){mI(k,h+8|0);break k}v[v[a+244>>2]+(c<<2)>>2]=e;v[a+248>>2]=v[a+248>>2]+1}c=v[h+8>>2]+1|0;v[h+8>>2]=c;if(y[a+360>>2]>c>>>0){continue}break}}xa=h+16|0}j=a+256|0;m:{if(y[a+264>>2]>=(v[a+268>>2]>>>1&1073741823)>>>0){v[a+264>>2]=0;break m}v[m+8>>2]=0;hI(j,0,m+8|0);iI(j,v[a+264>>2])}l=v[a+148>>2];if(l){e=v[a+152>>2]&2147483647;n:{while(1){c=1;if(!e){break n}e=e-1|0;if(!v[l+(e<<2)>>2]){continue}break}c=(e&134217727)+1|0}k=0;while(1){e=v[l+(k<<2)>>2];if(e){o=k<<5;while(1){h=Qaa(e)|o;v[m+8>>2]=h;i=v[a+264>>2];o:{if(i>>>0>=(v[a+268>>2]&2147483647)>>>0){mI(j,m+8|0);break o}v[v[a+260>>2]+(i<<2)>>2]=h;v[a+264>>2]=v[a+264>>2]+1}e=e-1&e;if(e){continue}break}}k=k+1|0;if((c|0)!=(k|0)){continue}break}}p:{if(b>>>0<=1){pI(a,b,d,f,g);break p}b=v[a+104>>2];Ba[v[v[b>>2]+72>>2]](b,a+88|0)}xa=m+16|0}function fR(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=C(0),o=0,p=0,q=0;i=v[a+20>>2];e=v[a+28>>2];m=v[v[e+976>>2]+1156>>2];a=v[e+4728>>2]&2147483647;a:{if(!a){break a}b=v[e+4724>>2];while(1){g=v[b+(f<<2)>>2];if(g){break a}f=f+1|0;if((a|0)!=(f|0)){continue}break}g=0;f=a}b=vr(m,560);a=v[v[e+1144>>2]+4>>2];n=z[e+1080>>2];c=v[e+1140>>2];d=v[e+16>>2];h=v[e+20>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=d;v[b+12>>2]=h;v[b+552>>2]=c;v[b+548>>2]=0;z[b+32>>2]=n;v[b+28>>2]=a;v[b>>2]=134780;d=w[e+1148|0]!=0;h=v[e+980>>2];o=v[e+1e3>>2];b:{if(!g){break b}while(1){c=Qaa(g)|f<<5;g=g-1&g;c:{if(g){break c}a=f+1|0;k=v[e+4728>>2]&2147483647;a=a>>>0>k>>>0?a:k;j=v[e+4724>>2];while(1){f=f+1|0;if(k>>>0<=f>>>0){g=0;f=a;break c}g=v[j+(f<<2)>>2];if(!g){continue}break}}if((c|0)!=-1){a=v[(v[o+184>>2]+B(c&33554431,24)|0)+20>>2];d:{if(!a){break d}d=v[b+548>>2];c=d+1|0;v[b+548>>2]=c;v[((d<<2)+b|0)+36>>2]=a+-64;a=v[a-32>>2];if(a){while(1){if(t[v[a+28>>2]- -64|0]&1){k=v[a+8>>2];j=k&2147483647;d=j+32>>>5|0;e:{if(d>>>0<=(v[h+164>>2]&2147483647)>>>0){c=v[h+160>>2];break e}c=v[h+168>>2];c=Ba[v[v[c>>2]+8>>2]](c,d<<2,17999,438)|0;l=v[h+160>>2];f:{if(!l){break f}H9(c,l,v[h+164>>2]<<2);if(v[h+164>>2]<0){break f}l=v[h+160>>2];if(!l){break f}p=v[h+168>>2];Ba[v[v[p>>2]+12>>2]](p,l)}l=v[h+164>>2];I9((l<<2)+c|0,0,d-l<<2);v[h+164>>2]=d;v[h+160>>2]=c}c=(j>>>3&268435452)+c|0;v[c>>2]=v[c>>2]|1<>2];if(a){continue}break}c=v[b+548>>2]}d=1;if((c|0)!=128){break d}v[b+20>>2]=i;v[b+24>>2]=1;if(i){Ba[v[v[i>>2]+16>>2]](i);v[b+16>>2]=v[v[b+20>>2]+16>>2]}Ba[v[v[b>>2]+20>>2]](b);b=vr(m,560);a=v[v[e+1144>>2]+4>>2];n=z[e+1080>>2];c=v[e+1140>>2];k=v[e+16>>2];j=v[e+20>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=k;v[b+12>>2]=j;v[b+552>>2]=c;v[b+548>>2]=0;z[b+32>>2]=n;v[b+28>>2]=a;v[b>>2]=134780}if(g){continue}}break}if(!v[b+548>>2]){break b}v[b+20>>2]=i;v[b+24>>2]=1;if(i){Ba[v[v[i>>2]+16>>2]](i);v[b+16>>2]=v[v[b+20>>2]+16>>2]}Ba[v[v[b>>2]+20>>2]](b)}b=v[e+4740>>2]&2147483647;g:{if(!b){break g}c=v[e+4736>>2];a=0;while(1){f=v[c+(a<<2)>>2];if(!f){a=a+1|0;if((b|0)!=(a|0)){continue}break g}break}while(1){c=Qaa(f)|a<<5;f=f-1&f;h:{if(f){break h}f=a+1|0;g=v[e+4740>>2]&2147483647;b=f>>>0>g>>>0?f:g;k=v[e+4736>>2];while(1){a=a+1|0;if(g>>>0<=a>>>0){f=0;a=b;break h}f=v[k+(a<<2)>>2];if(!f){continue}break}}if((c|0)==-1){break g}c=v[v[(v[o+184>>2]+B(c&33554431,24)|0)+20>>2]+16>>2];if(c){b=vr(m,48);d=v[v[e+1144>>2]+4>>2];n=z[e+1080>>2];g=v[e+1140>>2];k=v[e+16>>2];j=v[e+20>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=k;v[b+12>>2]=j;v[b+40>>2]=g;z[b+32>>2]=n;v[b+28>>2]=d;v[b>>2]=134836;v[b+36>>2]=c;v[b+20>>2]=i;v[b+24>>2]=1;if(i){Ba[v[v[i>>2]+16>>2]](i);v[b+16>>2]=v[v[b+20>>2]+16>>2];c=v[b>>2]}else{c=134836}Ba[v[c+20>>2]](b);d=1}if(f){continue}break}}t[e+1148|0]=d;a=0;f=0;b=v[e+2520>>2]&2147483647;i:{if(!b){break i}c=v[e+2516>>2];while(1){f=v[c+(a<<2)>>2];if(f){break i}a=a+1|0;if((b|0)!=(a|0)){continue}break}f=0;a=b}o=v[v[e+976>>2]+1816>>2];k=v[v[e+980>>2]+276>>2];d=vr(m,1064);b=v[e+16>>2];c=v[e+20>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=b;v[d+12>>2]=c;v[d+1060>>2]=0;v[d+32>>2]=k;v[d+28>>2]=o;v[d>>2]=134892;j:{if(!f){break j}j=0;while(1){p=Qaa(f);b=a;g=p|b<<5;f=f-1&f;k:{if(f){break k}a=b+1|0;l=v[e+2520>>2]&2147483647;c=a>>>0>l>>>0?a:l;q=v[e+2516>>2];a=b;while(1){a=a+1|0;if(l>>>0<=a>>>0){f=0;a=c;break k}f=v[q+(a<<2)>>2];if(!f){continue}break}}if((g|0)!=-1){c=v[e+980>>2];l:{if(g>>>0>=y[c+200>>2]){break l}l=v[v[c+196>>2]+(g<<3)>>2]&-4;if(!l){break l}g=g+32>>>5|0;m:{if(g>>>0<=(v[h+164>>2]&2147483647)>>>0){c=v[h+160>>2];break m}c=v[h+168>>2];c=Ba[v[v[c>>2]+8>>2]](c,g<<2,17999,438)|0;j=v[h+160>>2];n:{if(!j){break n}H9(c,j,v[h+164>>2]<<2);if(v[h+164>>2]<0){break n}j=v[h+160>>2];if(!j){break n}q=v[h+168>>2];Ba[v[v[q>>2]+12>>2]](q,j)}j=v[h+164>>2];I9((j<<2)+c|0,0,g-j<<2);v[h+164>>2]=g;v[h+160>>2]=c}j=1;b=((b&134217727)<<2)+c|0;v[b>>2]=v[b>>2]|1<>2];c=b+1|0;v[d+1060>>2]=c;v[((b<<2)+d|0)+36>>2]=l;if((c|0)!=256){break l}v[d+20>>2]=i;v[d+24>>2]=1;if(i){Ba[v[v[i>>2]+16>>2]](i);v[d+16>>2]=v[v[d+20>>2]+16>>2]}Ba[v[v[d>>2]+20>>2]](d);d=vr(m,1064);b=v[e+16>>2];c=v[e+20>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=b;v[d+12>>2]=c;v[d+1060>>2]=0;v[d+32>>2]=k;v[d+28>>2]=o;v[d>>2]=134892}if(f){continue}}break}if(!j){break j}t[v[e+1140>>2]+16|0]=1;t[v[v[e+976>>2]+1816>>2]+20|0]=1}if(v[d+1060>>2]){v[d+20>>2]=i;v[d+24>>2]=1;if(i){Ba[v[v[i>>2]+16>>2]](i);v[d+16>>2]=v[v[d+20>>2]+16>>2]}Ba[v[v[d>>2]+20>>2]](d)}I9(v[e+2516>>2],0,v[e+2520>>2]<<2)}function O3(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;n=xa-16|0;xa=n;a:{if(!oX(77,69,83,72,15,c,b)){break a}jX(Ba[v[v[a>>2]+8>>2]](a)|0,c,b);f=v[a+12>>2];g=v[f+80>>2]!=0;g=v[f+48>>2]?g|2:g;g=v[f+52>>2]?g|16:g;q=w[d+14|0]?g|32:g;g=v[f+72>>2];h=v[f+68>>2];b:{c:{if(h){f=0;if((h|0)!=1){l=h&-2;while(1){k=g+B(f|1,12)|0;j=v[k+8>>2];m=v[k+4>>2];o=v[k>>2];k=g+B(f,12)|0;p=v[k+8>>2];r=v[k+4>>2];k=v[k>>2];e=e>>>0>>0?k:e;e=e>>>0>>0?r:e;e=e>>>0

>>0?p:e;e=e>>>0>>0?o:e;e=e>>>0>>0?m:e;e=e>>>0>>0?j:e;f=f+2|0;i=i+2|0;if((l|0)!=(i|0)){continue}break}}if(h&1){f=g+B(f,12)|0;i=v[f+8>>2];h=v[f+4>>2];f=v[f>>2];e=e>>>0>>0?f:e;e=e>>>0>>0?h:e;e=e>>>0>>0?i:e}i=(w[d+24|0]&8)>>>3|e>>>0>65535;h=8;if(e>>>0>255){break b}break c}i=(w[d+24|0]&8)>>>3|0}h=4}f=0;k=q|(i?0:h);jX(k,c,b);jX(v[v[a+12>>2]+12>>2],c,b);jX(v[v[a+12>>2]+68>>2],c,b);e=v[a+12>>2];mX(v[e+16>>2],B(v[e+12>>2],3),c,b);q=k&4;d:{if(q){e=v[a+12>>2];if(!B(v[e+68>>2],3)){break d}while(1){t[n+15|0]=v[g+(f<<2)>>2];Ba[v[v[b>>2]>>2]](b,n+15|0,1)|0;f=f+1|0;e=v[a+12>>2];if(f>>>0>2],3)>>>0){continue}break}break d}e=v[a+12>>2];f=B(v[e+68>>2],3);if(k&8){if(!f){break d}f=0;while(1){iX(x[g+(f<<2)>>1],c,b);f=f+1|0;e=v[a+12>>2];if(f>>>0>2],3)>>>0){continue}break}break d}mX(g,f,c,b);e=v[a+12>>2]}g=v[e+80>>2];if(g){nX(g,v[e+68>>2],c,b);e=v[a+12>>2]}f=v[e+48>>2];if(f){i=0;g=0;e=v[e+68>>2];e:{if(!e){break e}h=e&3;f:{if(e-1>>>0<3){e=0;break f}l=e&-4;e=0;while(1){j=v[f+12>>2];m=v[f+8>>2];o=v[f+4>>2];p=v[f>>2];e=e>>>0

>>0?p:e;e=e>>>0>>0?o:e;e=e>>>0>>0?m:e;e=e>>>0>>0?j:e;f=f+16|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}if(h){while(1){g=v[f>>2];e=e>>>0>>0?g:e;f=f+4|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}}g=e}jX(g,c,b);f=v[a+12>>2];e=v[f+68>>2];i=v[f+48>>2];h=xa-16|0;xa=h;g:{if(g>>>0<=255){if(!e){break g}g=e&1;f=0;if((e|0)!=1){l=e&-2;e=0;while(1){j=f<<2;t[h+9|0]=v[j+i>>2];Ba[v[v[b>>2]>>2]](b,h+9|0,1)|0;t[h+9|0]=v[(j|4)+i>>2];Ba[v[v[b>>2]>>2]](b,h+9|0,1)|0;f=f+2|0;e=e+2|0;if((l|0)!=(e|0)){continue}break}}if(!g){break g}t[h+9|0]=v[(f<<2)+i>>2];Ba[v[v[b>>2]>>2]](b,h+9|0,1)|0;break g}if(g>>>0<=65535){if(!e){break g}if(!c){g=e&1;f=0;if((e|0)!=1){l=e&-2;e=0;while(1){j=f<<2;u[h+10>>1]=v[j+i>>2];Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;u[h+10>>1]=v[(j|4)+i>>2];Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;f=f+2|0;e=e+2|0;if((l|0)!=(e|0)){continue}break}}if(!g){break g}u[h+10>>1]=v[(f<<2)+i>>2];Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;break g}g=e&1;f=0;if((e|0)!=1){l=e&-2;e=0;while(1){j=f<<2;m=x[j+i>>1];u[h+10>>1]=m<<8|m>>>8;Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;j=x[(j|4)+i>>1];u[h+10>>1]=j<<8|j>>>8;Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;f=f+2|0;e=e+2|0;if((l|0)!=(e|0)){continue}break}}if(!g){break g}g=x[(f<<2)+i>>1];u[h+10>>1]=g<<8|g>>>8;Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;break g}if(c){if(!e){break g}while(1){g=v[i>>2];v[h+12>>2]=g<<24|g<<8&16711680|(g>>>8&65280|g>>>24);Ba[v[v[b>>2]>>2]](b,h+12|0,4)|0;i=i+4|0;e=e-1|0;if(e){continue}break}break g}Ba[v[v[b>>2]>>2]](b,i,e<<2)|0}xa=h+16|0;e=v[a+12>>2]}g=v[e+52>>2];if(g){mX(g,B(v[e+68>>2],3),c,b)}Ba[v[v[a>>2]+16>>2]](a,b,c);kX(z[v[a+12>>2]+44>>2],c,b);kX(z[v[a+12>>2]+20>>2],c,b);kX(z[v[a+12>>2]+24>>2],c,b);kX(z[v[a+12>>2]+28>>2],c,b);kX(z[v[a+12>>2]+32>>2],c,b);kX(z[v[a+12>>2]+36>>2],c,b);kX(z[v[a+12>>2]+40>>2],c,b);g=v[a+12>>2];h:{if(v[g+76>>2]){jX(v[g+68>>2],c,b);g=v[a+12>>2];Ba[v[v[b>>2]>>2]](b,v[g+76>>2],v[g+68>>2])|0;break h}jX(0,c,b)}if(!w[d+14|0]){break a}d=v[a+12>>2];g=v[d+56>>2];i:{if(q){e=v[d+68>>2];if(!B(e,3)){break i}f=0;while(1){t[n+14|0]=v[g+(f<<2)>>2];Ba[v[v[b>>2]>>2]](b,n+14|0,1)|0;f=f+1|0;d=v[a+12>>2];e=v[d+68>>2];if(f>>>0>>0){continue}break}break i}e=v[d+68>>2];f=B(e,3);if(k&8){if(!f){break i}f=0;while(1){iX(x[g+(f<<2)>>1],c,b);f=f+1|0;d=v[a+12>>2];e=v[d+68>>2];if(f>>>0>>0){continue}break}break i}mX(g,f,c,b);d=v[a+12>>2];e=v[d+68>>2]}mX(v[d+60>>2],e<<2,c,b);d=v[a+12>>2];mX(v[d+64>>2],v[d+68>>2],c,b);a=v[v[a+12>>2]+84>>2];e=0;d=xa-16|0;xa=d;t[d+15|0]=66;t[d+14|0]=86;t[d+13|0]=51;t[d+12|0]=50;Ba[v[v[b>>2]>>2]](b,d+15|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+14|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+13|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+12|0,1)|0;jX(2,c,b);kX(z[a+4>>2],c,b);kX(z[a+8>>2],c,b);kX(z[a+12>>2],c,b);kX(z[a+16>>2],c,b);jX(v[a+36>>2],c,b);jX(v[a+32>>2],c,b);if(v[a+32>>2]){while(1){g=v[a+28>>2]+B(e,1168)|0;f=v[g+1152>>2];jX(f,c,b);mX(g+1024|0,v[g+1152>>2],c,b);f=f<<2;mX(g,f,c,b);mX(g+512|0,f,c,b);e=e+1|0;if(e>>>0>2]){continue}break}}xa=d+16|0}xa=n+16|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;g=v[a+256>>2];a:{if(!g){break a}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break a}j=v[d+4>>2];h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}b:{if(b>>>0>=h>>>0){break b}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break b}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+264>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;g=v[a+268>>2];c:{if(!g){break c}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break c}j=v[d+4>>2];c=0;h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}d:{if(b>>>0>=h>>>0){break d}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break d}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+268>>2]=0;v[a+272>>2]=0;v[a+276>>2]=0;v[a+280>>2]=0;g=v[a+204>>2];e:{if(!g){break e}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break e}j=v[d+4>>2];c=0;h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}f:{if(b>>>0>=h>>>0){break f}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break f}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+212>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;g=v[a+324>>2];g:{if(!g){break g}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break g}j=v[d+4>>2];c=0;h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}h:{if(b>>>0>=h>>>0){break h}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break h}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+324>>2]=0;v[a+328>>2]=0;v[a+332>>2]=0;g=v[a+372>>2];i:{if(!g){break i}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break i}j=v[d+4>>2];c=0;h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}j:{if(b>>>0>=h>>>0){break j}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break j}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+372>>2]=0;v[a+376>>2]=0;v[a+380>>2]=0;g=v[a+420>>2];k:{if(!g){break k}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break k}j=v[d+4>>2];c=0;h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}l:{if(b>>>0>=h>>>0){break l}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break l}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+420>>2]=0;v[a+424>>2]=0;v[a+428>>2]=0;a=a+216|0;b=v[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;f=v[a+8>>2];m:{if((b|0)==(f|0)){break m}c=v[a+16>>2];if(c>>>0>b>>>0&(c|0)==(f|0)){break m}f=b>>>0>c>>>0;b=f?b:c;v[a+8>>2]=b;v[a+36>>2]=b-1;c=1;TL(a,b>>>0<=v[a+12>>2]>>>2>>>0|f?c:b>>>0<=v[a+32>>2]>>>2>>>0)}}function uB(a,b,c,d){var e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0;e=xa-320|0;xa=e;f=v[a>>2];a:{if((f|0)==v[a+4>>2]){Ba[v[v[f>>2]+152>>2]](f,x[a+8>>1],x[a+10>>1],e+160|0,e+128|0);f=v[e+172>>2];v[e+312>>2]=v[e+168>>2];v[e+316>>2]=f;f=v[e+164>>2];v[e+304>>2]=v[e+160>>2];v[e+308>>2]=f;f=v[e+180>>2];v[e+288>>2]=v[e+176>>2];v[e+292>>2]=f;f=v[e+188>>2];v[e+296>>2]=v[e+184>>2];v[e+300>>2]=f;f=v[e+132>>2];v[e+272>>2]=v[e+128>>2];v[e+276>>2]=f;f=v[e+140>>2];v[e+280>>2]=v[e+136>>2];v[e+284>>2]=f;f=v[e+148>>2];v[e+256>>2]=v[e+144>>2];v[e+260>>2]=f;f=v[e+156>>2];v[e+264>>2]=v[e+152>>2];v[e+268>>2]=f;f=v[a>>2];Ba[v[v[f>>2]+120>>2]](e+96|0,f,x[a+8>>1]);f=v[a+4>>2];Ba[v[v[f>>2]+120>>2]](e- -64|0,f,x[a+10>>1]);f=v[e+108>>2];v[e+248>>2]=v[e+104>>2];v[e+252>>2]=f;f=v[e+100>>2];v[e+240>>2]=v[e+96>>2];v[e+244>>2]=f;f=v[e+116>>2];v[e+224>>2]=v[e+112>>2];v[e+228>>2]=f;f=v[e+124>>2];v[e+232>>2]=v[e+120>>2];v[e+236>>2]=f;f=v[e+68>>2];v[e+208>>2]=v[e+64>>2];v[e+212>>2]=f;f=v[e+76>>2];v[e+216>>2]=v[e+72>>2];v[e+220>>2]=f;f=v[e+84>>2];v[e+192>>2]=v[e+80>>2];v[e+196>>2]=f;f=v[e+92>>2];v[e+200>>2]=v[e+88>>2];v[e+204>>2]=f;break a}g=x[a+8>>1];b:{if((g|0)==65535){g=v[f+4>>2];h=v[f>>2];i=z[f+8>>2];v[e+316>>2]=0;z[e+312>>2]=i;v[e+304>>2]=h;v[e+308>>2]=g;i=z[f+24>>2];g=v[f+20>>2];h=v[f+16>>2];v[e+300>>2]=0;z[e+296>>2]=i;v[e+288>>2]=h;v[e+292>>2]=g;i=z[f+56>>2];g=v[f+52>>2];h=v[f+48>>2];v[e+252>>2]=0;z[e+248>>2]=i;v[e+240>>2]=h;v[e+244>>2]=g;i=z[f+40>>2];g=v[f+36>>2];f=v[f+32>>2];v[e+236>>2]=0;z[e+232>>2]=i;v[e+224>>2]=f;v[e+228>>2]=g;break b}Ba[v[v[f>>2]+156>>2]](e+160|0,f,g);f=v[a>>2];Ba[v[v[f>>2]+120>>2]](e+128|0,f,x[a+8>>1]);f=v[e+172>>2];v[e+312>>2]=v[e+168>>2];v[e+316>>2]=f;f=v[e+164>>2];v[e+304>>2]=v[e+160>>2];v[e+308>>2]=f;f=v[e+180>>2];v[e+288>>2]=v[e+176>>2];v[e+292>>2]=f;f=v[e+188>>2];v[e+296>>2]=v[e+184>>2];v[e+300>>2]=f;f=v[e+132>>2];v[e+240>>2]=v[e+128>>2];v[e+244>>2]=f;f=v[e+140>>2];v[e+248>>2]=v[e+136>>2];v[e+252>>2]=f;f=v[e+148>>2];v[e+224>>2]=v[e+144>>2];v[e+228>>2]=f;f=v[e+156>>2];v[e+232>>2]=v[e+152>>2];v[e+236>>2]=f}f=x[a+10>>1];if((f|0)==65535){f=v[a+4>>2];g=v[f+4>>2];h=v[f>>2];i=z[f+8>>2];v[e+284>>2]=0;z[e+280>>2]=i;v[e+272>>2]=h;v[e+276>>2]=g;i=z[f+24>>2];g=v[f+20>>2];h=v[f+16>>2];v[e+268>>2]=0;z[e+264>>2]=i;v[e+256>>2]=h;v[e+260>>2]=g;i=z[f+56>>2];g=v[f+52>>2];h=v[f+48>>2];v[e+220>>2]=0;z[e+216>>2]=i;v[e+208>>2]=h;v[e+212>>2]=g;i=z[f+40>>2];g=v[f+36>>2];f=v[f+32>>2];v[e+204>>2]=0;z[e+200>>2]=i;v[e+192>>2]=f;v[e+196>>2]=g;break a}g=v[a+4>>2];Ba[v[v[g>>2]+156>>2]](e+160|0,g,f);f=v[a+4>>2];Ba[v[v[f>>2]+120>>2]](e+128|0,f,x[a+10>>1]);f=v[e+172>>2];v[e+280>>2]=v[e+168>>2];v[e+284>>2]=f;f=v[e+164>>2];v[e+272>>2]=v[e+160>>2];v[e+276>>2]=f;f=v[e+180>>2];v[e+256>>2]=v[e+176>>2];v[e+260>>2]=f;f=v[e+188>>2];v[e+264>>2]=v[e+184>>2];v[e+268>>2]=f;f=v[e+132>>2];v[e+208>>2]=v[e+128>>2];v[e+212>>2]=f;f=v[e+140>>2];v[e+216>>2]=v[e+136>>2];v[e+220>>2]=f;f=v[e+148>>2];v[e+192>>2]=v[e+144>>2];v[e+196>>2]=f;f=v[e+156>>2];v[e+200>>2]=v[e+152>>2];v[e+204>>2]=f}v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;v[e+136>>2]=0;v[e+140>>2]=0;v[e+128>>2]=0;v[e+132>>2]=0;v[e+104>>2]=0;v[e+108>>2]=0;v[e+96>>2]=0;v[e+100>>2]=0;v[e+72>>2]=0;v[e+76>>2]=0;v[e+64>>2]=0;v[e+68>>2]=0;tB(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=x[a+8>>1];f=v[a>>2];c:{if((f|0)==v[a+4>>2]){Ba[v[v[f>>2]+132>>2]](f,g,e+160|0,e+96|0,x[a+10>>1],e+128|0,e- -64|0,v[d+32>>2],v[d+36>>2]);break c}d:{if((g|0)==65535){g=v[e+308>>2];h=v[e+304>>2];z[f+8>>2]=z[e+312>>2];v[f>>2]=h;v[f+4>>2]=g;b=z[e+296>>2];g=v[e+292>>2];f=v[a>>2];v[f+16>>2]=v[e+288>>2];v[f+20>>2]=g;z[f+24>>2]=b;break d}h=v[d+36>>2];j=v[d+32>>2];l=v[v[f>>2]+128>>2];k=v[e+172>>2];v[e+56>>2]=v[e+168>>2];v[e+60>>2]=k;k=v[e+164>>2];v[e+48>>2]=v[e+160>>2];v[e+52>>2]=k;k=v[e+100>>2];v[e+32>>2]=v[e+96>>2];v[e+36>>2]=k;k=v[e+108>>2];v[e+40>>2]=v[e+104>>2];v[e+44>>2]=k;Ba[l|0](f,g,e+48|0,e+32|0,j,h)}f=x[a+10>>1];if((f|0)==65535){f=v[e+276>>2];g=v[e+272>>2];d=v[a+4>>2];z[d+8>>2]=z[e+280>>2];v[d>>2]=g;v[d+4>>2]=f;b=z[e+264>>2];d=v[e+260>>2];a=v[a+4>>2];v[a+16>>2]=v[e+256>>2];v[a+20>>2]=d;z[a+24>>2]=b;break c}g=v[d+36>>2];d=v[d+32>>2];a=v[a+4>>2];h=v[v[a>>2]+128>>2];j=v[e+140>>2];v[e+24>>2]=v[e+136>>2];v[e+28>>2]=j;j=v[e+132>>2];v[e+16>>2]=v[e+128>>2];v[e+20>>2]=j;j=v[e+68>>2];v[e>>2]=v[e+64>>2];v[e+4>>2]=j;j=v[e+76>>2];v[e+8>>2]=v[e+72>>2];v[e+12>>2]=j;Ba[h|0](a,f,e+16|0,e,d,g)}xa=e+320|0}function BZ(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=0;j=xa-6752|0;xa=j;ea=v[c+4>>2];v[j+6744>>2]=c;v[j+6740>>2]=ea;u=z[c+8>>2];r=z[c+12>>2];z[j+6736>>2]=C(1)/z[c+16>>2];z[j+6728>>2]=C(1)/r;z[j+6732>>2]=C(1)/u;p=z[d+4>>2];m=C(p+p);u=z[d+8>>2];k=C(m*u);l=z[d>>2];r=C(l+l);s=z[d+12>>2];x=C(r*s);M=C(k-x);z[j+6708>>2]=M;P=C(k+x);z[j+6700>>2]=P;k=C(C(1)-C(l*r));x=C(p*m);Q=C(k-x);z[j+6712>>2]=Q;q=k;k=C(u+u);n=C(u*k);R=C(q-n);z[j+6696>>2]=R;o=C(r*u);m=C(m*s);S=C(o+m);z[j+6704>>2]=S;T=C(C(C(1)-x)-n);z[j+6680>>2]=T;r=C(r*p);k=C(k*s);U=C(r-k);z[j+6692>>2]=U;V=C(r+k);z[j+6684>>2]=V;W=C(o-m);z[j+6688>>2]=W;K=z[d+16>>2];z[j+6716>>2]=K;L=z[d+20>>2];z[j+6720>>2]=L;E=z[d+24>>2];z[j+6724>>2]=E;m=z[e+4>>2];o=C(m+m);r=z[e+8>>2];q=C(o*r);x=z[e>>2];n=C(x+x);k=z[e+12>>2];A=C(n*k);z[j+6660>>2]=q-A;z[j+6652>>2]=q+A;q=C(C(1)-C(x*n));A=C(m*o);z[j+6664>>2]=q-A;y=q;q=C(r+r);F=C(r*q);z[j+6648>>2]=y-F;y=C(n*r);o=C(o*k);z[j+6656>>2]=y+o;n=C(n*m);q=C(q*k);z[j+6644>>2]=n-q;z[j+6640>>2]=y-o;z[j+6636>>2]=n+q;z[j+6632>>2]=C(C(1)-A)-F;F=z[e+16>>2];z[j+6668>>2]=F;y=z[e+20>>2];z[j+6672>>2]=y;G=z[e+24>>2];z[j+6676>>2]=G;v[j+6628>>2]=1088;t[j+6616|0]=1;c=j+2264|0;v[j+6620>>2]=c;n=z[f>>2];o=z[f+8>>2];q=z[f+4>>2];v[j+1312>>2]=0;v[j+24>>2]=142612;v[j+28>>2]=c;I9(j+1184|0,255,128);v[j+2084>>2]=0;I9(j+1956|0,255,128);v[j+2248>>2]=g;v[j+2244>>2]=e;v[j+2240>>2]=d;z[j+2236>>2]=q;t[j+2233|0]=i;z[j+2228>>2]=o;z[j+2224>>2]=n;v[j+2220>>2]=h;v[j+2208>>2]=a;n=C(F-K);n=C(n+n);o=C(y-L);o=C(o+o);q=C(G-E);q=C(q+q);A=C(C(C(C(-l)*n)-C(o*p))-C(u*q));H=C(C(s*s)+C(-.5));z[j+2180>>2]=C(C(q*H)+C(s*C(C(p*n)-C(l*o))))-C(u*A);z[j+2176>>2]=C(C(o*H)+C(s*C(C(l*q)-C(u*n))))-C(p*A);z[j+2172>>2]=C(C(n*H)+C(s*C(C(u*o)-C(p*q))))-C(l*A);H=C(m*u);B=C(s*x);N=C(k*l);J=C(p*r);o=C(H+C(C(B-N)-J));n=C(o+o);O=C(r*l);I=C(s*m);X=C(k*p);Y=C(u*x);q=C(O+C(C(I-X)-Y));A=C(q+q);Z=C(C(1)-C(o*n));_=C(q*A);z[j+2168>>2]=Z-_;$=C(x*p);aa=C(s*r);ba=C(k*u);ca=C(l*m);o=C($+C(C(aa-ba)-ca));da=C(o*A);u=C(C(r*u)+C(C(m*p)+C(C(k*s)+C(l*x))));p=C(u*n);z[j+2164>>2]=da-p;s=C(o*n);l=C(u*A);z[j+2160>>2]=s+l;z[j+2156>>2]=da+p;p=C(o+o);o=C(o*p);z[j+2152>>2]=Z-o;n=C(q*n);p=C(u*p);z[j+2148>>2]=n-p;z[j+2144>>2]=s-l;z[j+2140>>2]=n+p;z[j+2136>>2]=C(C(1)-_)-o;p=C(K-F);p=C(p+p);s=C(L-y);s=C(s+s);l=C(E-G);l=C(l+l);n=C(C(C(C(-x)*p)-C(s*m))-C(r*l));o=C(C(k*k)+C(-.5));q=C(C(C(l*o)+C(k*C(C(m*p)-C(x*s))))-C(r*n));z[j+2132>>2]=q;A=C(C(C(s*o)+C(k*C(C(x*l)-C(r*p))))-C(m*n));z[j+2128>>2]=A;x=C(C(C(p*o)+C(k*C(C(r*s)-C(m*l))))-C(x*n));z[j+2124>>2]=x;s=C(J+C(C(N-B)-H));m=C(s+s);p=C(Y+C(C(X-I)-O));k=C(p+p);l=C(C(1)-C(s*m));J=C(p*k);n=C(l-J);z[j+2120>>2]=n;r=C(ca+C(C(ba-aa)-$));y=C(r*k);G=C(u*m);o=C(y-G);z[j+2116>>2]=o;B=C(r*m);k=C(u*k);F=C(B+k);z[j+2112>>2]=F;y=C(y+G);z[j+2108>>2]=y;I=l;l=C(r+r);O=C(r*l);G=C(I-O);z[j+2104>>2]=G;m=C(p*m);l=C(u*l);H=C(m-l);z[j+2100>>2]=H;B=C(B-k);z[j+2096>>2]=B;N=C(m+l);z[j+2092>>2]=N;J=C(C(C(1)-J)-O);z[j+2088>>2]=J;v[j+2216>>2]=j+6632;v[j+2212>>2]=j+6680;c=j+2252|0;t[c|0]=0;v[j+6624>>2]=0;m=z[a>>2];k=z[a+4>>2];l=z[a+8>>2];z[j+2204>>2]=E+C(C(C(W*m)+C(P*k))+C(Q*l));z[j+2200>>2]=L+C(C(C(V*m)+C(R*k))+C(M*l));z[j+2196>>2]=K+C(C(C(T*m)+C(U*k))+C(S*l));z[j+2192>>2]=q+C(C(C(B*m)+C(y*k))+C(n*l));z[j+2188>>2]=A+C(C(C(N*m)+C(G*k))+C(o*l));z[j+2184>>2]=x+C(C(C(J*m)+C(H*k))+C(F*l));a=j+6728|0;v[j+2256>>2]=a;k=z[b+12>>2];l=z[b>>2];K=C(C(k-l)*C(.5));I=y;E=z[b+16>>2];y=z[b+4>>2];L=C(C(E-y)*C(.5));M=C(C(D(C(B*K)))+C(D(C(I*L))));I=n;m=z[b+20>>2];B=z[b+8>>2];n=C(C(m-B)*C(.5));M=C(M+C(D(C(I*n))));I=q;m=C(C(B+m)*C(.5));m=C(m+m);k=C(C(l+k)*C(.5));k=C(k+k);l=C(C(y+E)*C(.5));l=C(l+l);E=C(C(r*m)+C(C(s*k)+C(p*l)));q=C(C(u*u)+C(-.5));y=C(I+C(C(r*E)+C(C(m*q)+C(u*C(C(s*l)-C(k*p))))));z[j+20>>2]=M+y;o=C(C(C(D(C(N*K)))+C(D(C(G*L))))+C(D(C(o*n))));A=C(A+C(C(p*E)+C(C(l*q)+C(u*C(C(r*k)-C(m*s))))));z[j+16>>2]=o+A;n=C(C(C(D(C(J*K)))+C(D(C(H*L))))+C(D(C(F*n))));u=C(x+C(C(s*E)+C(C(k*q)+C(u*C(C(p*m)-C(l*r))))));z[j+12>>2]=n+u;z[j+8>>2]=y-M;z[j+4>>2]=A-o;z[j>>2]=u-n;b=a;a=j+24|0;l$(b,e,j,0,a);zZ(a|4);b=w[c|0];a=v[j+6628>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=v[j+6620>>2];if((a|0)==(j+2264|0)|!a){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=j+6752|0;return(b|0)!=0}function Rz(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,u=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0;l=v[a+36>>2];b=xa-80|0;xa=b;o=v[a+32>>2];p=v[o+412>>2];g=v[a+28>>2];F=v[g+108>>2];G=v[g+104>>2];k=vr(v[g+584>>2],32);d=v[g+604>>2];e=v[g+600>>2];v[k+24>>2]=0;v[k+16>>2]=0;v[k+8>>2]=e;v[k+12>>2]=d;v[k+28>>2]=g;v[k>>2]=128948;v[k+20>>2]=l;v[k+24>>2]=1;if(l){Ba[v[v[l>>2]+16>>2]](l);v[k+16>>2]=v[v[k+20>>2]+16>>2]}if(p){C=v[o+408>>2];x=g+544|0;d=0;l=0;while(1){v[b+32>>2]=0;v[b+28>>2]=v[g+428>>2]+(D<<2);e=u<<2;v[b+24>>2]=e+v[g+416>>2];v[b+36>>2]=v[g+520>>2]+(E<<4);c=y<<5;v[b+56>>2]=c+v[g+344>>2];v[b+60>>2]=c+v[g+356>>2];v[b+64>>2]=c+v[g+368>>2];v[b+68>>2]=v[g+380>>2]+(y<<3);v[b+72>>2]=v[g+392>>2]+(u<<5);c=v[g+404>>2];v[b+40>>2]=(d<<2)+C;v[b+76>>2]=c+e;i=v[g+496>>2];v[b+48>>2]=i;v[b+52>>2]=e+v[g+508>>2];z=0;m=0;n=0;e=0;q=0;a:{if(d>>>0>=p>>>0){break a}f=v[o+256>>2];l=d;while(1){if(!(!z|n>>>0>>0)|m>>>0>=F>>>0){break a}c=f+B(v[(l<<2)+C>>2],44)|0;q=v[c+36>>2]+q|0;e=v[c+40>>2]+e|0;z=q+e|0;n=v[c+8>>2]+n|0;m=v[c+12>>2]+m|0;l=l+1|0;if((p|0)!=(l|0)){continue}break}l=p}v[b+44>>2]=l-d;v[b+20>>2]=e;v[b+16>>2]=q;d=m&2147483647;v[b+12>>2]=d|v[b+12>>2]&-2147483648;v[b+8>>2]=n;if((d|0)!=(0-n|0)){r=v[g+532>>2]+u|0;e=v[g+540>>2];A=w[g+65|0];f=v[g+584>>2];j=vr(f,20);v[j>>2]=0;d=v[b+12>>2];v[j+4>>2]=v[b+8>>2];v[j+8>>2]=d;d=v[b+20>>2];v[j+12>>2]=v[b+16>>2];v[j+16>>2]=d;d=vr(f,120);c=v[g+532>>2];h=v[g+600>>2];s=v[g+604>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=h;v[d+12>>2]=s;v[d+32>>2]=j;v[d+28>>2]=g;v[d>>2]=128444;h=v[b+28>>2];v[d+36>>2]=v[b+24>>2];v[d+40>>2]=h;h=v[b+36>>2];v[d+44>>2]=v[b+32>>2];v[d+48>>2]=h;h=v[b+44>>2];v[d+52>>2]=v[b+40>>2];v[d+56>>2]=h;h=v[b+52>>2];v[d+60>>2]=v[b+48>>2];v[d+64>>2]=h;h=v[b+60>>2];v[d+68>>2]=v[b+56>>2];v[d+72>>2]=h;h=v[b+68>>2];v[d+76>>2]=v[b+64>>2];v[d+80>>2]=h;h=v[b+76>>2];v[d+84>>2]=v[b+72>>2];v[d+88>>2]=h;t[d+116|0]=A;v[d+112>>2]=x;v[d+108>>2]=e;v[d+104>>2]=i;v[d+100>>2]=o;v[d+96>>2]=c;v[d+92>>2]=r;e=vr(f,104);c=v[g+600>>2];i=v[g+604>>2];v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=c;v[e+12>>2]=i;v[e+32>>2]=j;v[e+28>>2]=g;v[e>>2]=128612;c=v[b+28>>2];v[e+36>>2]=v[b+24>>2];v[e+40>>2]=c;c=v[b+36>>2];v[e+44>>2]=v[b+32>>2];v[e+48>>2]=c;c=v[b+44>>2];v[e+52>>2]=v[b+40>>2];v[e+56>>2]=c;c=v[b+52>>2];v[e+60>>2]=v[b+48>>2];v[e+64>>2]=c;c=v[b+60>>2];v[e+68>>2]=v[b+56>>2];v[e+72>>2]=c;c=v[b+68>>2];v[e+76>>2]=v[b+64>>2];v[e+80>>2]=c;c=v[b+76>>2];v[e+84>>2]=v[b+72>>2];v[e+88>>2]=c;v[e+96>>2]=x;v[e+92>>2]=r;i=vr(f,48);c=v[g+600>>2];h=v[g+604>>2];v[i+24>>2]=0;v[i+16>>2]=0;v[i+20>>2]=0;v[i+8>>2]=c;v[i+12>>2]=h;t[i+44|0]=A;v[i+40>>2]=x;v[i+36>>2]=r;v[i+32>>2]=j;v[i+28>>2]=g;v[i>>2]=128344;c=vr(f,104);h=v[g+600>>2];s=v[g+604>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=h;v[c+12>>2]=s;v[c+32>>2]=j;v[c+28>>2]=g;v[c>>2]=128668;h=v[b+28>>2];v[c+36>>2]=v[b+24>>2];v[c+40>>2]=h;h=v[b+36>>2];v[c+44>>2]=v[b+32>>2];v[c+48>>2]=h;h=v[b+44>>2];v[c+52>>2]=v[b+40>>2];v[c+56>>2]=h;h=v[b+52>>2];v[c+60>>2]=v[b+48>>2];v[c+64>>2]=h;h=v[b+60>>2];v[c+68>>2]=v[b+56>>2];v[c+72>>2]=h;h=v[b+68>>2];v[c+76>>2]=v[b+64>>2];v[c+80>>2]=h;h=v[b+76>>2];v[c+84>>2]=v[b+72>>2];v[c+88>>2]=h;v[c+96>>2]=o+168;v[c+92>>2]=r;f=vr(f,104);h=v[g+600>>2];s=v[g+604>>2];v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=h;v[f+12>>2]=s;v[f+32>>2]=j;v[f+28>>2]=g;v[f>>2]=128780;j=v[b+28>>2];v[f+36>>2]=v[b+24>>2];v[f+40>>2]=j;j=v[b+36>>2];v[f+44>>2]=v[b+32>>2];v[f+48>>2]=j;j=v[b+44>>2];v[f+52>>2]=v[b+40>>2];v[f+56>>2]=j;j=v[b+52>>2];v[f+60>>2]=v[b+48>>2];v[f+64>>2]=j;j=v[b+60>>2];v[f+68>>2]=v[b+56>>2];v[f+72>>2]=j;j=v[b+68>>2];v[f+76>>2]=v[b+64>>2];v[f+80>>2]=j;j=v[b+76>>2];v[f+84>>2]=v[b+72>>2];v[f+88>>2]=j;t[f+96|0]=A;v[f+92>>2]=r;v[e+20>>2]=k;v[e+24>>2]=1;if(k){Ba[v[v[k>>2]+16>>2]](k);v[e+16>>2]=v[v[e+20>>2]+16>>2]}v[c+20>>2]=e;v[c+24>>2]=1;Ba[v[v[e>>2]+16>>2]](e);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[e>>2]+20>>2]](e);v[i+20>>2]=c;v[i+24>>2]=1;Ba[v[v[c>>2]+16>>2]](c);v[i+16>>2]=v[v[i+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);v[f+20>>2]=i;v[f+24>>2]=1;Ba[v[v[i>>2]+16>>2]](i);v[f+16>>2]=v[v[f+20>>2]+16>>2];Ba[v[v[i>>2]+20>>2]](i);v[d+20>>2]=f;v[d+24>>2]=1;Ba[v[v[f>>2]+16>>2]](f);v[d+16>>2]=v[v[d+20>>2]+16>>2];Ba[v[v[f>>2]+20>>2]](f);Ba[v[v[d>>2]+20>>2]](d)}E=q+E|0;D=m+D|0;u=n+u|0;y=(y+z|0)+(m<<6)|0;d=l;if(p>>>0>d>>>0){continue}break}}Ba[v[v[k>>2]+20>>2]](k);xa=b+80|0;a=v[a+36>>2];Ba[v[v[a>>2]+20>>2]](a)}function by(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=0,x=0,A=0,D=0,E=0,F=0,G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=0,R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0);f=xa+-64|0;xa=f;a:{if(w[a+488|0]){a9(v[37696],8,12859,2024,76600,0);break a}k=v[a+468>>2];d=v[a+448>>2];A=v[b+8>>2];g=v[b+52>>2];v[f+56>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;s=Bx(g,d,f+16|0);n=g+4|0;b=0;h=k<<2;i=h+15&-16;e=v[g+4>>2];d=v[g+8>>2];c=v[(e+(d<<2)|0)-4>>2];if((i|0)<=(c-v[g+16>>2]|0)){b=c-i|0;v[f>>2]=b;b:{if(d>>>0>=(v[g+12>>2]&2147483647)>>>0){Us(n,f);break b}v[e+(d<<2)>>2]=b;v[g+8>>2]=d+1}b=v[f>>2]}v[f+40>>2]=0;v[f+44>>2]=b;v[f+32>>2]=0;d=w[v[a+476>>2]];h=I9(b,0,h);c:{if(!k){break c}b=0;if(!(d&1)){d=a+112|0;while(1){v[f+48>>2]=(B(b,k)<<2)+A;c=h+(b<<2)|0;v[c>>2]=1065353216;v[f+8>>2]=0;v[f>>2]=0;v[f+4>>2]=0;e=f+16|0;vx(d,e);I9(v[f+24>>2],0,v[a+448>>2]<<5);rx(d,f,e);Hx(d,e);Jx(d,e);Lx(d,e);Mx(d,e);v[c>>2]=0;b=b+1|0;if((k|0)!=(b|0)){continue}break}break c}while(1){v[f+48>>2]=(B(b,k)<<2)+A;D=h+(b<<2)|0;v[D>>2]=1065353216;E=v[a+448>>2];t=f+16|0;P=v[t+28>>2];d=v[t+12>>2];u=v[t+4>>2];e=u;v[e+16>>2]=0;v[e+20>>2]=0;v[e>>2]=0;v[e+4>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[d>>2]=0;v[d+4>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;F=a+112|0;if(E>>>0>=2){e=1;while(1){i=v[F+340>>2]+B(e,160)|0;l=z[i+124>>2];x=e<<5;c=u+(v[(x+v[a+444>>2]|0)+24>>2]<<5)|0;o=z[c>>2];j=z[i+120>>2];p=z[c+4>>2];r=C(C(C(l*o)-C(j*p))+z[c+24>>2]);q=j;j=z[c+8>>2];m=z[i+128>>2];q=C(C(C(q*j)-C(m*o))+z[c+20>>2]);l=C(C(C(m*p)-C(l*j))+z[c+16>>2]);c=v[a+456>>2]+B(e,80)|0;G=w[c+76|0];if(G){Q=(v[c+72>>2]<<2)+P|0;R=v[a+384>>2]+B(e,76)|0;i=0;while(1){m=z[(i<<2)+Q>>2];c=B(i,24)+R|0;l=C(l+C(m*z[c+12>>2]));j=C(j+C(m*z[c+8>>2]));p=C(p+C(m*z[c+4>>2]));o=C(o+C(m*z[c>>2]));r=C(r+C(m*z[c+20>>2]));q=C(q+C(m*z[c+16>>2]));i=i+1|0;if((G|0)!=(i|0)){continue}break}}c=u+x|0;v[c+28>>2]=0;z[c+16>>2]=l;v[c+12>>2]=0;z[c+8>>2]=j;z[c+4>>2]=p;z[c>>2]=o;z[c+24>>2]=r;z[c+20>>2]=q;c=v[a+348>>2]+B(e,112)|0;S=z[c+60>>2];T=z[c+48>>2];U=z[c+36>>2];V=z[c- -64>>2];W=z[c+40>>2];X=z[c+52>>2];Y=z[c+68>>2];Z=z[c+44>>2];_=z[c+56>>2];$=z[c+96>>2];aa=z[c+84>>2];ba=z[c+72>>2];m=z[c+8>>2];H=z[c>>2];I=z[c+4>>2];J=z[c+20>>2];K=z[c+16>>2];L=z[c+12>>2];ca=z[c+100>>2];da=z[c+76>>2];ea=z[c+88>>2];M=z[c+32>>2];N=z[c+28>>2];O=z[c+24>>2];fa=z[c+104>>2];ga=z[c+80>>2];ha=z[c+92>>2];c=d+x|0;v[c+28>>2]=0;v[c+12>>2]=0;z[c+24>>2]=C(C(M*r)+C(C(O*l)+C(q*N)))+C(C(C(o*ga)+C(p*ha))+C(j*fa));z[c+20>>2]=C(C(J*r)+C(C(L*l)+C(q*K)))+C(C(C(o*da)+C(p*ea))+C(j*ca));z[c+16>>2]=C(C(m*r)+C(C(H*l)+C(q*I)))+C(C(C(o*ba)+C(p*aa))+C(j*$));z[c+8>>2]=C(C(C(o*m)+C(p*J))+C(j*M))+C(C(C(l*Z)+C(q*_))+C(r*Y));z[c+4>>2]=C(C(C(o*I)+C(p*K))+C(j*N))+C(C(C(l*W)+C(q*X))+C(r*V));z[c>>2]=C(C(C(o*H)+C(p*L))+C(j*O))+C(C(C(l*U)+C(q*T))+C(r*S));e=e+1|0;if((E|0)!=(e|0)){continue}break}}Ix(F,t);v[D>>2]=0;b=b+1|0;if((k|0)!=(b|0)){continue}break}}a=v[g+16>>2];d:{if(!(a>>>0<=h>>>0&h>>>0>2]>>>0)){if(!h){break d}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,h);break d}i=v[g+4>>2];a=0;k=v[g+8>>2];e=k;while(1){c=a;a=c+1|0;d=e;e=d-1|0;b=i+(e<<2)|0;if(h>>>0>y[b>>2]){continue}break}e:{if(d>>>0>=k>>>0){break e}e=c&3;if(e){a=0;while(1){v[b>>2]=v[v[n>>2]+(d<<2)>>2];d=d+1|0;b=b+4|0;a=a+1|0;if((e|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break e}while(1){a=d<<2;v[b>>2]=v[a+v[n>>2]>>2];v[b+4>>2]=v[(a+v[n>>2]|0)+4>>2];v[b+8>>2]=v[(a+v[n>>2]|0)+8>>2];v[b+12>>2]=v[(a+v[n>>2]|0)+12>>2];b=b+16|0;d=d+4|0;if((k|0)!=(d|0)){continue}break}}v[g+8>>2]=k-1}a=v[g+16>>2];if(!(a>>>0<=s>>>0&a+v[g+20>>2]>>>0>s>>>0)){if(!s){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,s);break a}k=v[g+4>>2];a=0;h=v[g+8>>2];e=h;while(1){c=a;a=c+1|0;d=e;e=d-1|0;b=k+(e<<2)|0;if(y[b>>2]>>0){continue}break}f:{if(d>>>0>=h>>>0){break f}e=c&3;if(e){a=0;while(1){v[b>>2]=v[v[n>>2]+(d<<2)>>2];d=d+1|0;b=b+4|0;a=a+1|0;if((e|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break f}while(1){a=d<<2;v[b>>2]=v[a+v[n>>2]>>2];v[b+4>>2]=v[(a+v[n>>2]|0)+4>>2];v[b+8>>2]=v[(a+v[n>>2]|0)+8>>2];v[b+12>>2]=v[(a+v[n>>2]|0)+12>>2];b=b+16|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}v[g+8>>2]=h-1}xa=f- -64|0}function E0(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=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=0;g=xa-288|0;xa=g;a:{b:{if(t[a+9|0]&1){H=w[a+12|0];i=H?e:d;h=z[i+8>>2];l=z[i>>2];m=z[i+4>>2];i=v[a+20>>2];k=z[i+40>>2];A=z[i+28>>2];B=z[i+16>>2];D=z[i+36>>2];s=z[c+8>>2];u=z[i+24>>2];x=z[c>>2];j=z[i>>2];n=z[c+4>>2];o=z[i+12>>2];E=z[i+4>>2];F=z[i+44>>2];p=z[i+8>>2];c=H?d:e;q=z[c>>2];G=z[i+20>>2];r=z[c+4>>2];y=z[i+32>>2];I=z[c+8>>2];z[g+80>>2]=F+C(C(C(p*q)+C(G*r))+C(y*I));z[g+76>>2]=k+C(C(C(E*q)+C(B*r))+C(A*I));z[g+68>>2]=F+C(C(C(p*l)+C(G*m))+C(y*h));z[g- -64>>2]=k+C(C(C(E*l)+C(B*m))+C(A*h));z[g+48>>2]=D+C(C(C(x*j)+C(n*o))+C(s*u));z[g+72>>2]=D+C(C(C(j*q)+C(o*r))+C(u*I));z[g+60>>2]=D+C(C(C(j*l)+C(o*m))+C(u*h));z[g+56>>2]=F+C(C(C(x*p)+C(n*G))+C(s*y));z[g+52>>2]=k+C(C(C(x*E)+C(n*B))+C(s*A));v[g+144>>2]=2139095039;d=F2(g+48|0,v[a+48>>2]+48|0,v[a+52>>2],a+164|0,z[a+24>>2],g+144|0,!w[a+176|0]);if(d){h=z[g+144>>2];if(!(h<=z[a+24>>2])){break b}z[a+24>>2]=h;z[f>>2]=h*z[a+16>>2];l=z[g+48>>2];m=z[g+52>>2];k=z[g+56>>2];v[a+124>>2]=0;z[a+120>>2]=k;z[a+116>>2]=m;z[a+112>>2]=l;c=v[a+56>>2];A=z[c>>2];B=z[c+4>>2];D=z[c+8>>2];v[a+140>>2]=0;t[a+10|0]=1;z[a+136>>2]=-D;z[a+132>>2]=-B;z[a+128>>2]=-A;v[a+160>>2]=v[b+8>>2];z[a+64>>2]=l;z[a+68>>2]=m;z[a+72>>2]=k;z[a+76>>2]=z[g+60>>2];z[a+80>>2]=z[g+64>>2];z[a+84>>2]=z[g+68>>2];z[a+88>>2]=z[g+72>>2];z[a+92>>2]=z[g+76>>2];z[a+96>>2]=z[g+80>>2];if(h!=C(0)){break b}t[a+11|0]=1}a=!d;break a}v[g+224>>2]=0;i=v[a+20>>2];h=z[i+44>>2];u=z[i+8>>2];J=w[a+12|0];H=J?d:e;l=z[H>>2];x=z[i+20>>2];m=z[H+4>>2];j=z[i+32>>2];k=z[H+8>>2];A=C(h+C(C(C(u*l)+C(x*m))+C(j*k)));n=z[i+40>>2];o=z[i+4>>2];E=z[i+16>>2];F=z[i+28>>2];B=C(n+C(C(C(o*l)+C(E*m))+C(F*k)));s=z[i+36>>2];p=z[i>>2];q=z[i+12>>2];G=z[i+24>>2];D=C(s+C(C(C(p*l)+C(q*m))+C(G*k)));d=J?e:d;k=z[d>>2];r=z[d+4>>2];y=z[d+8>>2];l=C(h+C(C(C(u*k)+C(x*r))+C(j*y)));m=C(n+C(C(C(o*k)+C(E*r))+C(F*y)));k=C(s+C(C(C(p*k)+C(q*r))+C(G*y)));r=z[c>>2];y=C(r*p);p=z[c+4>>2];y=C(y+C(p*q));q=z[c+8>>2];s=C(C(y+C(q*G))+s);u=C(C(C(C(r*u)+C(p*x))+C(q*j))+h);x=C(C(C(C(r*o)+C(p*E))+C(q*F))+n);if(!w[a+176|0]){h=C(D-k);j=C(x-m);n=C(s-k);o=C(B-m);r=C(C(C(h*j)-C(n*o))*z[a+152>>2]);p=o;o=C(u-l);q=j;j=C(A-l);if(C(r+C(C(C(C(p*o)-C(q*j))*z[a+144>>2])+C(C(C(j*n)-C(o*h))*z[a+148>>2])))>=C(0)){break b}}v[g+216>>2]=0;v[g+220>>2]=0;v[g+208>>2]=0;v[g+212>>2]=0;c=v[a+48>>2];h=z[c+52>>2];j=z[c+56>>2];n=z[c+48>>2];v[g+204>>2]=0;z[g+200>>2]=j;z[g+196>>2]=h;t[g+176|0]=0;v[g+172>>2]=3;v[g+144>>2]=0;v[g+148>>2]=0;v[g+152>>2]=0;v[g+156>>2]=0;z[g+192>>2]=n;h=h>=n?n:h;h=h<=j?h:j;j=C(h*C(.05000000074505806));z[g+168>>2]=j;z[g+164>>2]=j;z[g+160>>2]=h*C(.15000000596046448);v[g+140>>2]=0;z[g+136>>2]=A;z[g+132>>2]=B;z[g+128>>2]=D;v[g+124>>2]=0;z[g+120>>2]=l;z[g+116>>2]=m;z[g+112>>2]=k;v[g+108>>2]=0;z[g+104>>2]=u;z[g+100>>2]=x;t[g+80|0]=0;v[g+72>>2]=2139095039;v[g+76>>2]=5;v[g+60>>2]=0;v[g+64>>2]=0;v[g+68>>2]=2139095039;z[g+96>>2]=s;h=C(C(C(s+k)+D)*C(.33333298563957214));z[g+48>>2]=h;j=C(C(C(x+m)+B)*C(.33333298563957214));z[g+52>>2]=j;n=C(C(C(u+l)+A)*C(.33333298563957214));z[g+56>>2]=n;v[g+24>>2]=141856;v[g+28>>2]=g+48;v[g+16>>2]=141808;v[g+20>>2]=g+144;v[g+12>>2]=0;z[g+8>>2]=n-z[g+152>>2];z[g+4>>2]=j-z[g+148>>2];z[g>>2]=h-z[g+144>>2];c:{c=bY(g+24|0,g+16|0,g,g+208|0,a+144|0,g+240|0,g+256|0,g+272|0,z[a+60>>2]);if(c){h=z[g+240>>2];d=v[g+276>>2];v[a+112>>2]=v[g+272>>2];v[a+116>>2]=d;d=v[g+284>>2];v[a+120>>2]=v[g+280>>2];v[a+124>>2]=d;d=v[g+260>>2];v[g+32>>2]=v[g+256>>2];v[g+36>>2]=d;d=v[g+268>>2];v[g+40>>2]=v[g+264>>2];v[g+44>>2]=d;t[a+10|0]=1;v[a+160>>2]=v[b+8>>2];if(!(h<=z[g+224>>2])){break c}t[a+11|0]=1;v[f>>2]=0;b=v[g+236>>2];v[a+40>>2]=v[g+232>>2];v[a+44>>2]=b;b=v[g+228>>2];v[a+32>>2]=v[g+224>>2];v[a+36>>2]=b;v[a+24>>2]=0;b=v[a+56>>2];h=z[b>>2];l=z[b+4>>2];m=z[b+8>>2];v[a+140>>2]=0;z[a+136>>2]=-m;z[a+132>>2]=-l;z[a+128>>2]=-h}a=c^1;break a}v[a+156>>2]=0;j=C(h*z[a+24>>2]);z[a+24>>2]=j;z[a+144>>2]=h*z[a+144>>2];z[a+32>>2]=h*z[a+32>>2];z[a+148>>2]=h*z[a+148>>2];z[a+152>>2]=h*z[a+152>>2];b=v[g+44>>2];v[a+136>>2]=v[g+40>>2];v[a+140>>2]=b;b=v[g+36>>2];v[a+128>>2]=v[g+32>>2];v[a+132>>2]=b;h=C(j*z[a+16>>2]);if(h>2]){z[f>>2]=h}z[a+64>>2]=s;z[a+96>>2]=A;z[a+92>>2]=B;z[a+88>>2]=D;z[a+84>>2]=l;z[a+80>>2]=m;z[a+76>>2]=k;z[a+72>>2]=u;z[a+68>>2]=x}a=1}xa=g+288|0;return a|0}function VY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=0;k=xa-576|0;xa=k;b=v[b>>2];a=v[a>>2];t[k+192|0]=0;v[k+184>>2]=0;v[k+188>>2]=0;v[k+176>>2]=0;v[k+180>>2]=0;v[k+168>>2]=0;v[k+172>>2]=0;v[k+160>>2]=0;v[k+164>>2]=0;D=v[a+40>>2];j=z[a+8>>2];l=z[a+12>>2];q=z[a+4>>2];v[k+12>>2]=0;z[k+8>>2]=l;z[k+4>>2]=j;z[k>>2]=q;G=v[a+16>>2];K=v[a+20>>2];M=v[a+28>>2];v[k+344>>2]=v[a+24>>2];v[k+348>>2]=M;v[k+336>>2]=G;v[k+340>>2]=K;v[k+304>>2]=D;v[k+312>>2]=v[D+40>>2]+B(w[D+39|0],20);t[k+316|0]=w[D+38|0];m=C(q*z[D+52>>2]);s=C(j*z[D+56>>2]);m=m<=s?m:s;s=C(l*z[D+60>>2]);m=m<=s?m:s;z[k+184>>2]=m*C(.02500000037252903);z[k+176>>2]=m*C(.10000000149011612);z[k+180>>2]=m*C(.05000000074505806);G=k+336|0;K=k+160|0;FV(k,G,k+208|0,k+256|0,K,q==C(1)&j==C(1)&l==C(1));v[k+308>>2]=v[D+44>>2];t[k+32|0]=0;v[k+24>>2]=0;v[k+28>>2]=0;v[k+16>>2]=0;v[k+20>>2]=0;v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;a=v[b+40>>2];j=z[b+8>>2];l=z[b+12>>2];q=z[b+4>>2];v[k+348>>2]=0;z[k+344>>2]=l;z[k+340>>2]=j;z[k+336>>2]=q;D=v[b+16>>2];M=v[b+20>>2];R=v[b+28>>2];v[k+504>>2]=v[b+24>>2];v[k+508>>2]=R;v[k+496>>2]=D;v[k+500>>2]=M;v[k+144>>2]=a;v[k+152>>2]=v[a+40>>2]+B(w[a+39|0],20);t[k+156|0]=w[a+38|0];m=C(q*z[a+52>>2]);s=C(j*z[a+56>>2]);m=m<=s?m:s;s=C(l*z[a+60>>2]);m=m<=s?m:s;z[k+24>>2]=m*C(.02500000037252903);z[k+16>>2]=m*C(.10000000149011612);z[k+20>>2]=m*C(.05000000074505806);b=k+496|0;FV(G,b,k+48|0,k+96|0,k,q==C(1)&j==C(1)&l==C(1));v[k+148>>2]=v[a+44>>2];v[k+568>>2]=0;v[k+572>>2]=0;v[k+560>>2]=0;v[k+564>>2]=0;N=z[f+20>>2];H=z[e+20>>2];F=z[f+24>>2];I=z[e+24>>2];o=z[c+8>>2];u=z[c>>2];x=z[c+4>>2];r=z[c+12>>2];q=z[d+12>>2];m=z[d>>2];O=z[f+16>>2];J=z[e+16>>2];j=z[d+4>>2];l=z[d+8>>2];v[k+556>>2]=0;v[k+540>>2]=0;v[k+524>>2]=0;L=C(-m);n=C(J-O);p=C(H-N);A=C(I-F);E=C(C(C(L*n)-C(p*j))-C(l*A));s=C(C(q*q)+C(-.5));y=C(C(C(q*C(C(j*n)-C(m*p)))+C(s*A))-C(l*E));z[k+552>>2]=y+y;y=C(C(C(s*p)+C(q*C(C(m*A)-C(l*n))))-C(j*E));z[k+548>>2]=y+y;a=k+544|0;n=C(C(C(s*n)+C(q*C(C(l*p)-C(j*A))))-C(m*E));z[a>>2]=n+n;p=C(C(C(x*l)-C(j*o))+C(C(u*q)-C(r*m)));n=C(p+p);A=C(C(C(o*m)-C(l*u))+C(C(x*q)-C(r*j)));E=C(A+A);y=C(C(1)-C(p*n));P=C(A*E);z[k+536>>2]=y-P;p=C(C(C(u*j)-C(m*x))+C(C(o*q)-C(r*l)));Q=C(p*E);o=C(C(r*q)-C(C(C(L*u)-C(x*j))-C(l*o)));u=C(o*n);z[k+532>>2]=Q-u;x=C(p*n);r=C(o*E);z[k+528>>2]=x+r;z[k+520>>2]=Q+u;u=C(p+p);p=C(p*u);z[k+516>>2]=y-p;n=C(A*n);o=C(o*u);z[k+512>>2]=n-o;v[k+508>>2]=0;z[k+504>>2]=x-r;z[k+500>>2]=n+o;z[k+496>>2]=C(C(1)-P)-p;x=z[d+20>>2];r=z[c+20>>2];o=z[d+24>>2];u=z[c+24>>2];n=z[d+16>>2];p=z[c+16>>2];v[k+492>>2]=0;E=C(u-I);o=C(C(o-F)-E);I=C(p-J);u=C(C(n-O)-I);H=C(r-H);x=C(C(x-N)-H);r=C(C(l*o)+C(C(m*u)+C(j*x)));n=C(C(C(s*o)-C(q*C(C(m*x)-C(j*u))))+C(l*r));z[k+488>>2]=n+n;n=C(C(j*r)+C(C(s*x)-C(q*C(C(l*u)-C(o*m)))));z[k+484>>2]=n+n;o=C(C(m*r)+C(C(s*u)-C(q*C(C(j*o)-C(x*l)))));z[k+480>>2]=o+o;v[k+416>>2]=0;v[k+336>>2]=141516;v[k+344>>2]=b;v[k+340>>2]=K;b=v[k+516>>2];v[k+368>>2]=v[k+512>>2];v[k+372>>2]=b;b=v[k+524>>2];v[k+376>>2]=v[k+520>>2];v[k+380>>2]=b;b=v[k+508>>2];v[k+360>>2]=v[k+504>>2];v[k+364>>2]=b;b=v[k+532>>2];v[k+384>>2]=v[k+528>>2];v[k+388>>2]=b;b=v[k+540>>2];v[k+392>>2]=v[k+536>>2];v[k+396>>2]=b;b=v[a+4>>2];v[k+400>>2]=v[a>>2];v[k+404>>2]=b;b=v[k+556>>2];v[k+408>>2]=v[k+552>>2];v[k+412>>2]=b;b=v[k+500>>2];v[k+352>>2]=v[k+496>>2];v[k+356>>2]=b;o=z[k+356>>2];z[k+356>>2]=z[k+368>>2];u=z[k+376>>2];x=z[k+360>>2];z[k+360>>2]=z[k+384>>2];z[k+376>>2]=z[k+388>>2];z[k+384>>2]=x;z[k+388>>2]=u;z[k+368>>2]=o;v[k+328>>2]=141216;v[k+332>>2]=k;o=C(34028234663852886e22);if(TX(G,k+328|0,a,k+560|0,k+480|0,k+464|0,k+432|0,k+448|0,C(g+C(0)),1)){o=z[k+464>>2];g=z[k+456>>2];u=z[k+448>>2];x=z[k+452>>2];r=z[k+440>>2];n=z[k+432>>2];p=z[k+436>>2];A=C(C(l*r)+C(C(m*n)+C(j*p)));J=C(-j);y=C(C(C(q*C(C(m*p)+C(n*J)))+C(s*r))+C(l*A));z[h+8>>2]=y+y;y=C(C(j*A)+C(C(s*p)+C(q*C(C(l*n)+C(r*L)))));z[h+4>>2]=y+y;y=p;p=C(-l);r=C(C(m*A)+C(C(s*n)+C(q*C(C(j*r)+C(y*p)))));z[h>>2]=r+r;r=o>C(0)?o:C(0);y=F;n=C(C(l*g)+C(C(m*u)+C(j*x)));F=C(C(C(q*C(C(m*x)+C(u*J)))+C(s*g))+C(l*n));z[i+8>>2]=C(E*r)+C(y+C(F+F));l=C(C(j*n)+C(C(s*x)+C(q*C(C(l*u)+C(g*L)))));z[i+4>>2]=C(H*r)+C(N+C(l+l));g=C(C(m*n)+C(C(s*u)+C(q*C(C(j*g)+C(x*p)))));z[i>>2]=C(I*r)+C(O+C(g+g))}xa=k+576|0;return C(o)}function _X(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0);c=xa-384|0;xa=c;v[c+368>>2]=0;v[c+360>>2]=0;v[c+364>>2]=0;v[c+352>>2]=0;v[c+356>>2]=0;B=z[e+52>>2];A=z[e+56>>2];H=z[a+8>>2];I=z[a+12>>2];J=z[d+20>>2];y=z[b+20>>2];L=z[d+24>>2];D=z[b+24>>2];R=z[f+4>>2];S=z[f>>2];T=z[f+8>>2];M=z[e+48>>2];N=z[a+4>>2];k=z[b+8>>2];m=z[b>>2];r=z[b+4>>2];o=z[b+12>>2];s=z[d+12>>2];w=z[d>>2];O=z[d+16>>2];l=z[b+16>>2];n=z[d+4>>2];q=z[d+8>>2];v[c+348>>2]=0;v[c+332>>2]=0;v[c+316>>2]=0;G=C(-w);l=C(l-O);p=C(y-J);D=C(D-L);F=C(C(C(G*l)-C(p*n))-C(q*D));y=C(C(s*s)+C(-.5));E=C(C(C(s*C(C(n*l)-C(w*p)))+C(y*D))-C(q*F));z[c+344>>2]=E+E;E=C(C(C(y*p)+C(s*C(C(w*D)-C(q*l))))-C(n*F));z[c+340>>2]=E+E;a=c+336|0;l=C(C(C(y*l)+C(s*C(C(q*p)-C(n*D))))-C(w*F));z[a>>2]=l+l;p=C(C(C(r*q)-C(n*k))+C(C(m*s)-C(o*w)));l=C(p+p);D=C(C(C(k*w)-C(q*m))+C(C(r*s)-C(o*n)));F=C(D+D);E=C(C(1)-C(p*l));P=C(D*F);z[c+328>>2]=E-P;p=C(C(C(m*n)-C(w*r))+C(C(k*s)-C(o*q)));Q=C(p*F);k=C(C(o*s)-C(C(C(G*m)-C(r*n))-C(q*k)));m=C(k*l);z[c+324>>2]=Q-m;r=C(p*l);o=C(k*F);z[c+320>>2]=r+o;z[c+312>>2]=Q+m;m=C(p+p);p=C(p*m);z[c+308>>2]=E-p;l=C(D*l);k=C(k*m);z[c+304>>2]=l-k;v[c+300>>2]=0;z[c+296>>2]=r-o;z[c+292>>2]=l+k;z[c+288>>2]=C(C(1)-P)-p;v[c+284>>2]=0;z[c+280>>2]=I;z[c+276>>2]=H;t[c+256|0]=0;v[c+252>>2]=3;v[c+224>>2]=0;v[c+228>>2]=0;v[c+232>>2]=0;v[c+236>>2]=0;z[c+272>>2]=N;k=H>=N?N:H;k=k<=I?k:I;m=C(k*C(.05000000074505806));z[c+248>>2]=m;z[c+244>>2]=m;z[c+240>>2]=k*C(.15000000596046448);v[c+220>>2]=0;z[c+216>>2]=A;z[c+212>>2]=B;t[c+192|0]=0;v[c+188>>2]=3;v[c+160>>2]=0;v[c+164>>2]=0;v[c+168>>2]=0;v[c+172>>2]=0;z[c+208>>2]=M;k=B>=M?M:B;k=k<=A?k:A;m=C(k*C(.05000000074505806));z[c+184>>2]=m;z[c+180>>2]=m;z[c+176>>2]=k*C(.15000000596046448);v[c+156>>2]=0;k=C(T*g);m=C(S*g);r=C(R*g);o=C(C(q*k)+C(C(w*m)+C(n*r)));l=C(C(q*o)+C(C(k*y)-C(s*C(C(w*r)-C(m*n)))));z[c+152>>2]=l+l;l=C(C(n*o)+C(C(r*y)-C(s*C(C(q*m)-C(k*w)))));z[c+148>>2]=l+l;k=C(C(w*o)+C(C(m*y)-C(s*C(C(n*k)-C(r*q)))));z[c+144>>2]=k+k;d=x[i>>1];v[c+16>>2]=141468;v[c+24>>2]=c+288;v[c+20>>2]=c+224;b=v[c+308>>2];v[c+48>>2]=v[c+304>>2];v[c+52>>2]=b;b=v[c+316>>2];v[c+56>>2]=v[c+312>>2];v[c+60>>2]=b;b=v[c+300>>2];v[c+40>>2]=v[c+296>>2];v[c+44>>2]=b;e=v[c+324>>2];b=c- -64|0;v[b>>2]=v[c+320>>2];v[b+4>>2]=e;e=v[c+332>>2];v[c+72>>2]=v[c+328>>2];v[c+76>>2]=e;e=v[a+4>>2];v[c+80>>2]=v[a>>2];v[c+84>>2]=e;e=v[c+348>>2];v[c+88>>2]=v[c+344>>2];v[c+92>>2]=e;e=v[c+292>>2];v[c+32>>2]=v[c+288>>2];v[c+36>>2]=e;k=z[c+36>>2];z[c+36>>2]=z[c+48>>2];m=z[c+56>>2];r=z[c+40>>2];z[c+40>>2]=z[b>>2];z[c+56>>2]=z[c+68>>2];z[b>>2]=r;z[c+68>>2]=m;z[c+48>>2]=k;v[c+8>>2]=141808;v[c+12>>2]=c+160;b=a;a=d&512;b=$X(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=C(-q);k=C(-n);u[h+12>>1]=2;A=z[c+128>>2];if(A<=z[c+368>>2]){if(a){u[h+12>>1]=3;g=z[c+100>>2];m=z[c+96>>2];r=z[c+104>>2];o=z[c+120>>2];l=z[c+112>>2];p=z[c+116>>2];z[h+40>>2]=A;B=C(C(q*o)+C(C(w*l)+C(n*p)));A=C(C(C(s*C(C(w*p)+C(l*k)))+C(y*o))+C(q*B));z[h+24>>2]=L+C(A+A);A=C(C(n*B)+C(C(y*p)+C(s*C(C(q*l)+C(o*G)))));z[h+20>>2]=J+C(A+A);o=C(C(w*B)+C(C(y*l)+C(s*C(C(n*o)+C(p*j)))));z[h+16>>2]=O+C(o+o);l=C(C(s*C(C(w*g)+C(m*k)))+C(y*r));k=C(C(q*r)+C(C(w*m)+C(n*g)));o=C(l+C(q*k));o=C(o+o);j=C(C(w*k)+C(C(y*m)+C(s*C(C(n*r)+C(g*j)))));j=C(j+j);g=C(C(n*k)+C(C(y*g)+C(s*C(C(q*m)+C(r*G)))));g=C(g+g);n=C(C(1)/C(K(C(C(o*o)+C(C(j*j)+C(g*g))))));z[h+36>>2]=n*C(-o);z[h+32>>2]=n*C(-g);z[h+28>>2]=n*C(-j);break a}v[h+40>>2]=0;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break a}u[h+12>>1]=3;m=z[c+100>>2];r=z[c+96>>2];o=z[c+104>>2];l=z[c+120>>2];p=z[c+112>>2];B=z[c+116>>2];z[h+40>>2]=A*g;g=C(C(q*l)+C(C(w*p)+C(n*B)));A=C(C(C(s*C(C(w*B)+C(p*k)))+C(y*l))+C(q*g));z[h+24>>2]=L+C(A+A);A=C(C(n*g)+C(C(y*B)+C(s*C(C(q*p)+C(l*G)))));z[h+20>>2]=J+C(A+A);g=C(C(w*g)+C(C(y*p)+C(s*C(C(n*l)+C(B*j)))));z[h+16>>2]=O+C(g+g);g=C(C(q*o)+C(C(w*r)+C(n*m)));k=C(C(C(s*C(C(w*m)+C(r*k)))+C(y*o))+C(q*g));k=C(k+k);j=C(C(w*g)+C(C(y*r)+C(s*C(C(n*o)+C(m*j)))));j=C(j+j);g=C(C(n*g)+C(C(y*m)+C(s*C(C(q*r)+C(o*G)))));g=C(g+g);n=C(C(1)/C(K(C(C(k*k)+C(C(j*j)+C(g*g))))));z[h+36>>2]=n*C(-k);z[h+32>>2]=n*C(-g);z[h+28>>2]=n*C(-j)}xa=c+384|0;return b|0}function QG(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:{i=w[a+44|0];g=w[c|0];if((i|0)==(g|0)){break a}t[a+44|0]=g;k=g&!(i&1);e=v[a>>2];b:{if(!e){break b}f=w[c|0]&16;if((f|0)!=(i&16)){d=xa-16|0;xa=d;c:{if(y[e+152>>2]>4294967293){break c}h=v[e+40>>2]+4632|0;if(f&16){v[d+4>>2]=e;h=qh(h,d+4|0,d+11|0);if(w[d+11|0]){break c}v[h>>2]=v[d+4>>2];break c}v[d+12>>2]=e;Og(h,d+12|0)}xa=d+16|0}d:{if(k){d=v[a+176>>2];if(!d){d=v[b+288>>2];if(!d){FG(b);d=v[b+288>>2]}v[b+288>>2]=v[d>>2];v[b+280>>2]=v[b+280>>2]+1}t[d+24|0]=0;t[d+25|0]=0;t[d+26|0]=0;t[d+27|0]=0;t[d+28|0]=0;t[d+29|0]=0;t[d+30|0]=0;t[d+31|0]=0;t[d|0]=0;t[d+1|0]=0;t[d+2|0]=0;t[d+3|0]=0;t[d+4|0]=0;t[d+5|0]=0;t[d+6|0]=0;t[d+7|0]=0;t[d+56|0]=0;t[d+57|0]=0;t[d+58|0]=0;t[d+59|0]=0;t[d+60|0]=0;t[d+61|0]=0;t[d+62|0]=0;t[d+63|0]=0;t[d+48|0]=0;t[d+49|0]=0;t[d+50|0]=0;t[d+51|0]=0;t[d+52|0]=0;t[d+53|0]=0;t[d+54|0]=0;t[d+55|0]=0;t[d+40|0]=0;t[d+41|0]=0;t[d+42|0]=0;t[d+43|0]=0;t[d+44|0]=0;t[d+45|0]=0;t[d+46|0]=0;t[d+47|0]=0;t[d+32|0]=0;t[d+33|0]=0;t[d+34|0]=0;t[d+35|0]=0;t[d+36|0]=0;t[d+37|0]=0;t[d+38|0]=0;t[d+39|0]=0;t[d+16|0]=0;t[d+17|0]=0;t[d+18|0]=0;t[d+19|0]=0;t[d+20|0]=0;t[d+21|0]=0;t[d+22|0]=0;t[d+23|0]=0;t[d+8|0]=0;t[d+9|0]=0;t[d+10|0]=0;t[d+11|0]=0;t[d+12|0]=0;t[d+13|0]=0;t[d+14|0]=0;t[d+15|0]=0;t[d+31|0]=1;z[d+48>>2]=z[a+120>>2];z[d+52>>2]=z[a+124>>2];z[d+32>>2]=z[a+128>>2];z[d+36>>2]=z[a+132>>2];z[d+40>>2]=z[a+136>>2];z[d+44>>2]=z[a+140>>2];z[d+56>>2]=z[a+112>>2];z[d+60>>2]=z[a+116>>2];v[a+136>>2]=0;v[a+140>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+176>>2]=d;v[a+112>>2]=2139095039;v[a+116>>2]=2139095039;if(y[e+152>>2]<=4294967293){VO(v[e+40>>2],e)}b=v[e+164>>2];if(b){AH(b,v[v[e+40>>2]+1136>>2])}WE(e,5,4);b=v[v[e+40>>2]+1e3>>2];d=v[e+144>>2];TF(b+168|0,d);TF(b+640|0,d);b=v[e+32>>2];if(b){while(1){dS(b);b=v[b>>2];if(b){continue}break}}break d}if(!(!(g&1)&i)){break d}d=v[a+176>>2];if(d){z[a+140>>2]=z[d+44>>2];z[a+128>>2]=z[d+32>>2];z[a+132>>2]=z[d+36>>2];z[a+136>>2]=z[d+40>>2];z[a+120>>2]=z[d+48>>2];z[a+124>>2]=z[d+52>>2];z[a+112>>2]=z[d+56>>2];z[a+116>>2]=z[d+60>>2];v[b+280>>2]=v[b+280>>2]-1;v[d>>2]=v[b+288>>2];v[b+288>>2]=d;v[a+176>>2]=0}b=v[v[e+40>>2]+1e3>>2];d=v[e+144>>2];UF(b+168|0,d);UF(b+640|0,d);b=v[e+44>>2];d=v[b+176>>2];e:{if(t[v[e+100>>2]+28|0]>=0){f:{if(!d|w[v[b+176>>2]+31|0]==1){break f}b=v[b+176>>2];if(!b){break f}v[b+48>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+56>>2]=0;v[b+40>>2]=0;v[b+24>>2]=0}t[e+150|0]=1;break e}g:{if(!d|w[v[b+176>>2]+31|0]==1){break g}b=v[b+176>>2];if(!b){break g}v[b+48>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+56>>2]=0;v[b+40>>2]=0}t[e+150|0]=w[e+150|0]&251}b=v[e+164>>2];if(b){AH(b,v[v[e+40>>2]+1136>>2])}WE(e,5,6);u[e+148>>1]=x[e+148>>1]&63995;if(y[e+152>>2]<=4294967293){VO(v[e+40>>2],e)}b=v[e+32>>2];if(b){while(1){dS(b);b=v[b>>2];if(b){continue}break}}}b=i&32;if((b|0)==(w[c|0]&32)){break b}if(b){g=v[e+144>>2];d=g>>>7|0;b=v[e+40>>2];h:{i:{if(w[v[e+44>>2]+9|0]==2){if(d>>>0>=v[b+4740>>2]<<5>>>0){break h}b=b+4736|0;break i}if(d>>>0>=v[b+4728>>2]<<5>>>0){break h}b=b+4724|0}b=v[b>>2]+(g>>>10&4194300)|0;g=v[b>>2];l=b,m=Uaa(-2,d)&g,v[l>>2]=m}u[e+92>>1]=x[e+92>>1]&65471;break b}j:{if(k){break j}g=v[e+144>>2]>>>7|0;b=v[e+40>>2];if(w[v[e+44>>2]+9|0]==2){h=g+32>>>5|0;k:{if(h>>>0<=(v[b+4740>>2]&2147483647)>>>0){d=v[b+4736>>2];break k}d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,h<<2,24422,17999,438)|0;f=v[b+4736>>2];l:{if(!f){break l}H9(d,f,v[b+4740>>2]<<2);if(v[b+4740>>2]<0){break l}f=v[b+4736>>2];if(!f){break l}j=v[37696]+12|0;Ba[v[v[j>>2]+12>>2]](j,f)}f=v[b+4740>>2];I9((f<<2)+d|0,0,h-f<<2);v[b+4740>>2]=h;v[b+4736>>2]=d}b=(g>>>3&536870908)+d|0;v[b>>2]=v[b>>2]|1<>>5|0;m:{if(h>>>0<=(v[b+4728>>2]&2147483647)>>>0){d=v[b+4724>>2];break m}d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,h<<2,24422,17999,438)|0;f=v[b+4724>>2];n:{if(!f){break n}H9(d,f,v[b+4728>>2]<<2);if(v[b+4728>>2]<0){break n}f=v[b+4724>>2];if(!f){break n}j=v[37696]+12|0;Ba[v[v[j>>2]+12>>2]](j,f)}f=v[b+4728>>2];I9((f<<2)+d|0,0,h-f<<2);v[b+4728>>2]=h;v[b+4724>>2]=d}b=(g>>>3&536870908)+d|0;v[b>>2]=v[b>>2]|1<>1]=x[e+92>>1]|64}if(k){RG(a)}if(!e){break a}b=i&3;a=w[c|0]&3;if(!((b|0)==3|(a|0)!=3)){a=v[e+32>>2];if(a){while(1){aS(a);a=v[a>>2];if(a){continue}break}}return}if((a|0)==3|(b|0)!=3){break a}mH(e)}}function jT(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=0,o=0,p=0,q=C(0),r=0,s=0,y=0,B=0,E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=0;g=xa-160|0;xa=g;v[g+152>>2]=0;v[g+156>>2]=0;v[g+144>>2]=v[e>>2];v[g+148>>2]=v[e+4>>2];l=w[e+8|0];t[g+155|0]=l>>>3&1;t[g+154|0]=l>>>2&1;l=v[b>>2];l=Ba[v[v[l>>2]+360>>2]](l)|0;a:{b:{if((l|0)!=v[a+312>>2]){v[a+312>>2]=l;break b}if(A[a+48>>3]>A[d>>3]|A[a+56>>3]>A[d+8>>3]|(A[a+72>>3]>3]|A[a- -64>>3]>A[d+16>>3])){break b}if(A[a+80>>3]>3]|A[a+88>>3]>3]){break b}l=-16711936;f=v[a+324>>2];if(!(f&128)){break a}v[a+324>>2]=f&-129;f=v[a+112>>2];c:{if(!w[a+328|0]){break c}i=v[a+36>>2];if(!i|(f|0)==(i|0)){break c}y=v[a+32>>2];f=y+(f<<2)|0;i=y+(i<<2)|0;while(1){if(v[f+8>>2]){gU(v[a+332>>2],v[f+4>>2]);f=v[(v[f>>2]<<2)+99008>>2]+f|0;if((i|0)!=(f|0)){continue}}break}f=v[a+112>>2]}v[a+36>>2]=f;f=v[a+116>>2];v[a+24>>2]=f;v[a+12>>2]=f;t[g+152|0]=0;if(w[e+8|0]&2){t[g+153|0]=1}e=a+48|0;sS(b,e,a+8|0,a+20|0,a+32|0,g+144|0,a+240|0,a+320|0);d:{if(!w[a+328|0]){break d}b=v[a+36>>2];if(!b){break d}f=v[a+112>>2];if((f|0)==(b|0)){break d}i=v[a+32>>2];f=i+(f<<2)|0;b=i+(b<<2)|0;while(1){if(!v[f+8>>2]){break d}fU(v[a+332>>2],v[f+4>>2]);f=v[(v[f>>2]<<2)+99008>>2]+f|0;if((b|0)!=(f|0)){continue}break}}iT(a,c,e);u[a+318>>1]=x[a+318>>1]+1;break a}l=v[d+44>>2];v[a+88>>2]=v[d+40>>2];v[a+92>>2]=l;i=v[d+20>>2];l=a- -64|0;v[l>>2]=v[d+16>>2];v[l+4>>2]=i;i=v[d+36>>2];v[a+80>>2]=v[d+32>>2];v[a+84>>2]=i;i=v[d+12>>2];v[a+56>>2]=v[d+8>>2];v[a+60>>2]=i;i=v[d+28>>2];v[a+72>>2]=v[d+24>>2];v[a+76>>2]=i;i=v[d+4>>2];v[a+48>>2]=v[d>>2];v[a+52>>2]=i;h=A[l>>3];j=A[a+88>>3];n=(h+j)*.5;m=z[a+304>>2];o=+C(m*C(C(j-h)*C(.5)));h=n+o;A[a+88>>3]=h;j=A[a+56>>3];k=A[a+80>>3];s=(j+k)*.5;B=+C(m*C(C(k-j)*C(.5)));j=s+B;A[a+80>>3]=j;k=A[a+48>>3];p=A[a+72>>3];E=(k+p)*.5;p=+C(m*C(C(p-k)*C(.5)));k=E+p;A[a+72>>3]=k;n=n-o;A[l>>3]=n;o=s-B;A[a+56>>3]=o;s=E-p;A[a+48>>3]=s;l=a+48|0;m=C(0);q=z[f+8>>2];F=z[f>>2];G=z[f+4>>2];e:{if(!(F!=C(0)|G!=C(0))&q==C(0)){break e}J=C(C(q*q)+C(C(F*F)+C(G*G)));if(J>C(0)){m=C(C(1)/C(K(J)));H=C(q*m);I=C(G*m);m=C(F*m)}r=h;q=C(C(C(D(C(C(C(h-n)*H)+C(C(C(k-s)*m)+C(I*C(j-o))))))-C(D(C(C(C(A[d+40>>3]-A[d+16>>3])*H)+C(C(C(A[d+24>>3]-A[d>>3])*m)+C(I*C(A[d+32>>3]-A[d+8>>3])))))))*C(.44999998807907104));h=+C(H*q);B=r+h;A[a+88>>3]=B;r=j;j=+C(I*q);p=r+j;A[a+80>>3]=p;r=k;k=+C(m*q);E=r+k;A[a+72>>3]=E;h=n+h;A[a+64>>3]=h;j=o+j;A[a+56>>3]=j;k=s+k;A[a+48>>3]=k;r=k;k=A[d>>3];if(r>k){A[l>>3]=k}k=j;j=A[d+8>>3];if(k>j){A[a+56>>3]=j}j=h;h=A[d+16>>3];if(j>h){A[a+64>>3]=h}h=A[d+24>>3];if(h>E){A[a+72>>3]=h}h=A[d+32>>3];if(h>p){A[a+80>>3]=h}h=A[d+40>>3];if(!(h>B)){break e}A[a+88>>3]=h}f:{if(!w[a+328|0]){break f}i=v[a+36>>2];if(!i){break f}f=v[a+32>>2];i=f+(i<<2)|0;while(1){if(!v[f+8>>2]){break f}gU(v[a+332>>2],v[f+4>>2]);f=v[(v[f>>2]<<2)+99008>>2]+f|0;if((i|0)!=(f|0)){continue}break}}v[a+96>>2]=0;v[a+100>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+12>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;u[a+316>>1]=x[a+316>>1]+1;if(t[e+8|0]&1){t[g+152|0]=1}t[g+153|0]=0;f=a+8|0;i=a+20|0;y=a+32|0;L=a+240|0;M=a+320|0;sS(b,l,f,i,y,g+144|0,L,M);v[a+112>>2]=v[a+36>>2];v[a+116>>2]=v[a+12>>2];t[g+152|0]=0;if(w[e+8|0]&2){t[g+153|0]=1}sS(b,l,f,i,y,g+144|0,L,M);g:{if(!w[a+328|0]){break g}b=v[a+36>>2];if(!b){break g}f=v[a+32>>2];b=f+(b<<2)|0;while(1){if(!v[f+8>>2]){break g}fU(v[a+332>>2],v[f+4>>2]);f=v[(v[f>>2]<<2)+99008>>2]+f|0;if((b|0)!=(f|0)){continue}break}}iT(a,c,l);v[a+324>>2]=v[a+324>>2]&-129;l=-65536}b=v[a>>2];h:{if(!b){break h}c=g- -64|0;v[c>>2]=0;v[c+4>>2]=0;v[g+56>>2]=0;v[g+60>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+80>>2]=0;v[g+84>>2]=0;v[g+72>>2]=0;v[g+76>>2]=1065353216;v[g+88>>2]=0;v[g+92>>2]=0;v[g+100>>2]=0;v[g+104>>2]=0;v[g+96>>2]=1065353216;v[g+108>>2]=0;v[g+112>>2]=0;v[g+120>>2]=0;v[g+124>>2]=0;v[g+116>>2]=1065353216;v[g+128>>2]=0;v[g+132>>2]=0;v[g+136>>2]=1065353216;v[g+40>>2]=0;v[g+44>>2]=0;v[g+140>>2]=b;b=v[a+4>>2];if(b&1){b=g+40|0;v[b+4>>2]=-65281;h=A[d+32>>3];j=A[d>>3];k=A[d+8>>3];n=A[d+16>>3];o=A[d+24>>3];z[g+28>>2]=A[d+40>>3];z[g+24>>2]=h;t[g+32|0]=1;z[g+20>>2]=o;z[g+16>>2]=n;z[g+12>>2]=k;z[g+8>>2]=j;_U(b,g+8|0);b=v[a+4>>2]}if(!(b&2)){break h}b=g+40|0;v[b+4>>2]=l;h=A[a+56>>3];j=A[a- -64>>3];k=A[a+72>>3];n=A[a+80>>3];o=A[a+48>>3];z[g+28>>2]=A[a+88>>3];z[g+24>>2]=n;t[g+32|0]=1;z[g+20>>2]=k;z[g+16>>2]=j;z[g+12>>2]=h;z[g+8>>2]=o;_U(b,g+8|0)}xa=g+160|0}function AY(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;var g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=0,A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=C(0);j=xa-48|0;xa=j;z[j+44>>2]=d;L=v[a+36>>2];a:{if(L){break a}L=0;G=v[a+20>>2];T=G<<2;if(T){U=v[37696];L=Ba[v[v[U+12>>2]+8>>2]](U+12|0,T,24422,11302,133)|0;G=v[a+20>>2]}v[a+36>>2]=L;if(!G){break a}while(1){v[(x<<2)+L>>2]=x;x=x+1|0;if(x>>>0>2]){continue}break}}v[j+40>>2]=0;v[j+36>>2]=e;v[j+32>>2]=f;e=v[a+40>>2];v[j+28>>2]=v[a+32>>2];v[j+24>>2]=e;U=v[a+28>>2];v[j+8>>2]=0;v[j>>2]=0;v[j+4>>2]=0;r=xa-1040|0;xa=r;d=z[c+8>>2];o=C(d+d);f=o>C(0);A=C(-o);d=z[c+4>>2];p=C(d+d);e=p>C(0);k=C(-p);d=z[c>>2];q=C(d+d);a=q>C(0);h=C(-q);d=z[b+8>>2];s=C(d+d);d=z[b+4>>2];u=C(d+d);d=z[b>>2];w=C(d+d);g=z[j+44>>2];b:{if(g>=C(34028234663852886e22)){d=p==C(0)?u:p>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);E=q==C(0)?w:q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);g=s;if(o==C(0)){break b}g=o>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break b}d=C(u+C(p*g));E=C(w+C(q*g));g=C(s+C(o*g))}I=f?o:A;J=e?p:k;K=a?q:h;t[r+1024|0]=1;v[r+1032>>2]=256;v[r+1036>>2]=256;v[r+1028>>2]=r;e=v[j+24>>2];v[r>>2]=e;N=gE?w:E;Q=g>s?s:g;d=d>u?u:d;E=w>2]+(c<<2)>>2];h=z[b+12>>2];g=z[b>>2];i=C(h-g);k=C(g+h);d:{e:{if(!(C(i+k)>=E)|!(C(k-i)<=P)){break e}h=z[b+16>>2];g=z[b+4>>2];l=C(h-g);h=C(g+h);A=C(u-h);k=C(w-k);g=C(C(q*A)-C(p*k));if(!(C(C(J*i)+C(K*l))>=(g>C(0)?g:C(-g)))|!(C(l+h)>=d)|!(C(h-l)<=O)){break e}h=z[b+20>>2];g=z[b+8>>2];n=C(h-g);m=C(C(I*l)+C(J*n));l=C(g+h);g=C(s-l);h=C(C(p*g)-C(o*A));if(!(m>=(h>C(0)?h:C(-h)))|!(C(n+l)>=Q)|!(C(l-n)<=N)){break e}g=C(C(o*k)-C(q*g));if(!(C(C(I*i)+C(K*n))>=(g>C(0)?g:C(-g)))){break e}R=z[j+44>>2];x=v[b+24>>2];if(!(x&1)){while(1){f=B(x>>>1|0,28)+e|0;l=z[f+40>>2];k=z[f+28>>2];i=C(l-k);h=z[f+44>>2];g=z[f+32>>2];n=C(h-g);D=C(g+h);A=C(u-D);M=C(k+l);k=C(w-M);g=C(C(q*A)-C(p*k));a=C(M-i)<=P&C(i+M)>=E&C(C(J*i)+C(K*n))>=(g>C(0)?g:C(-g))&C(n+D)>=d&C(D-n)<=O;h=z[f+48>>2];g=z[f+36>>2];l=C(h-g);F=C(g+h);g=C(s-F);h=C(C(p*g)-C(o*A));g=C(C(o*k)-C(q*g));b=a&C(C(I*n)+C(J*l))>=(h>C(0)?h:C(-h))&C(l+F)>=Q&C(F-l)<=N&C(C(I*i)+C(K*l))>=(g>C(0)?g:C(-g));l=z[f+12>>2];k=z[f>>2];H=C(l-k);h=z[f+16>>2];g=z[f+4>>2];n=C(h-g);m=C(g+h);A=C(u-m);i=C(k+l);k=C(w-i);g=C(C(q*A)-C(p*k));a=C(i-H)<=P&C(H+i)>=E&C(C(J*H)+C(K*n))>=(g>C(0)?g:C(-g))&C(n+m)>=d&C(m-n)<=O;S=C(I*n);h=z[f+20>>2];g=z[f+8>>2];n=C(h-g);l=C(g+h);g=C(s-l);h=C(C(p*g)-C(o*A));g=C(C(o*k)-C(q*g));a=a&C(S+C(J*n))>=(h>C(0)?h:C(-h))&C(n+l)>=Q&C(l-n)<=N&C(C(I*H)+C(K*n))>=(g>C(0)?g:C(-g));f:{if(!(!a|!b)){a=C(C(C(F-l)*o)+C(C(C(M-i)*q)+C(p*C(D-m))))>C(0);v[v[r+1028>>2]+(c<<2)>>2]=f+B(a,28);b=f+B(!a,28)|0;c=c+1|0;if((c|0)!=(v[r+1036>>2]&2147483647)){break f}BY(r,c<<1);break f}if(!(a|b)){break e}b=a?f:f+28|0}x=v[b+24>>2];if(!(x&1)){continue}break}}a=v[b+24>>2];G=a>>>1&15;if(!G){break e}k=C(s+C(o*R));n=ks?s:k;h=h>u?u:h;g=g>w?w:g;x=v[j+28>>2]+(a>>>3&536870908)|0;T=R>2];f=v[j+32>>2];if((G|0)!=1){while(1){a=v[x>>2];b=U+B(a,24)|0;m=z[b+12>>2];i=z[b>>2];S=C(m-i);F=C(i+m);g:{if(!(C(S+F)>=E)|!(C(F-S)<=P)){break g}m=z[b+16>>2];i=z[b+4>>2];D=C(m-i);m=C(i+m);M=C(u-m);F=C(w-F);i=C(C(q*M)-C(p*F));if(!(C(C(J*S)+C(K*D))>=(i>C(0)?i:C(-i)))|!(C(D+m)>=d)|!(C(m-D)<=O)){break g}m=z[b+20>>2];i=z[b+8>>2];H=C(m-i);V=C(C(I*D)+C(J*H));D=C(i+m);i=C(s-D);m=C(C(p*i)-C(o*M));if(!(V>=(m>C(0)?m:C(-m)))|!(C(H+D)>=Q)|!(C(D-H)<=N)){break g}i=C(C(o*F)-C(q*i));if(!(C(C(I*S)+C(K*H))>=(i>C(0)?i:C(-i)))){break g}b=v[(a<<2)+L>>2];a=v[j+40>>2];v[j+40>>2]=a+1;v[f+(a<<2)>>2]=b;if(v[j+40>>2]==v[j+36>>2]){break c}if(!T){break g}z[j+44>>2]=R;E=g;d=h;Q=k;P=A;O=l;N=n}x=x+4|0;G=G-1|0;if(G){continue}break e}}b=v[(v[x>>2]<<2)+L>>2];a=v[j+40>>2];v[j+40>>2]=a+1;v[f+(a<<2)>>2]=b;f=v[j+36>>2];b=v[j+40>>2];if(!T){if((b|0)!=(f|0)){break d}break c}if((b|0)==(f|0)){break c}z[j+44>>2]=R;E=g;d=h;Q=k;P=A;O=l;N=n}}a=c;c=a-1|0;if(a){continue}}break}a=v[r+1036>>2];h:{if((a|0)<0|!(a&2147483647)){break h}b=v[r+1028>>2];if((b|0)==(r|0)|!b){break h}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}xa=r+1040|0;xa=j+48|0;return v[j+40>>2]}function hv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=C(0),R=0,S=0,T=0,U=C(0),V=C(0),W=C(0);h=xa-144|0;xa=h;i=z[c+20>>2];k=z[d+20>>2];s=z[c+16>>2];y=z[d+16>>2];f=a;p=z[a+8>>2];t=z[c+8>>2];r=z[c>>2];u=z[c+4>>2];l=z[c+12>>2];T=b;q=C(z[d+24>>2]-z[c+24>>2]);n=z[d>>2];j=C(n+n);A=z[d+8>>2];o=z[d+4>>2];x=z[d+12>>2];H=C(x+x);E=z[b+8>>2];m=C(C(C(j*A)-C(o*H))*E);w=C(q-m);z[h+92>>2]=w;k=C(k-i);i=C(E*C(C(A*H)+C(j*o)));I=C(k-i);z[h+88>>2]=I;J=C(m+q);z[h+80>>2]=J;L=C(i+k);z[h+76>>2]=L;m=C(m*C(-2));z[h+116>>2]=m;i=C(i*C(-2));z[h+112>>2]=i;A=C(r+r);o=C(l+l);k=C(p*C(C(t*A)-C(u*o)));z[h+56>>2]=k;M=C(-k);z[h+68>>2]=M;q=C(p*C(C(t*o)+C(A*u)));z[h+52>>2]=q;N=C(-q);z[h- -64>>2]=N;s=C(y-s);j=C(E*C(C(n*j)+C(C(x*H)+C(-1))));x=C(s-j);z[h+84>>2]=x;t=C(k*C(-2));z[h+104>>2]=t;u=C(q*C(-2));z[h+100>>2]=u;n=C(j*C(-2));z[h+108>>2]=n;r=C(p*C(C(r*A)+C(C(l*o)+C(-1))));z[h+48>>2]=r;p=C(r*C(-2));z[h+96>>2]=p;l=C(j+s);z[h+72>>2]=l;j=C(-r);z[h+60>>2]=j;z[h+8>>2]=M-k;z[h+4>>2]=N-q;z[h>>2]=j-r;z[h+136>>2]=w-J;z[h+132>>2]=I-L;z[h+128>>2]=x-l;I=H_(h+48|0,h,h+72|0,h+128|0,h+44|0,h+40|0);x=z[a+4>>2];H=C(x+z[b+4>>2]);r=C(H+z[e>>2]);A=C(r*r);R=I>=A;a:{if(R){break a}l=C(K(C(C(m*m)+C(C(n*n)+C(i*i)))));z[h+132>>2]=l;r=C(K(C(C(t*t)+C(C(p*p)+C(u*u)))));z[h+128>>2]=r;if(r!=C(0)){k=C(C(1)/r);t=C(t*k);z[h+104>>2]=t;u=C(u*k);z[h+100>>2]=u;p=C(p*k);z[h+96>>2]=p}if(l!=C(0)){k=C(C(1)/l);m=C(k*m);z[h+116>>2]=m;i=C(k*i);z[h+112>>2]=i;n=C(n*k);z[h+108>>2]=n}if(C(D(C(C(t*m)+C(C(p*n)+C(u*i)))))>C(.9998000264167786)){z[h+36>>2]=l*C(.0010000000474974513);z[h+32>>2]=r*C(.0010000000474974513);a=v[g+4096>>2];e=0;while(1){O=e<<2;E=z[O+(h+32|0)>>2];F=B(e,12);b=F+(h+96|0)|0;m=z[b+8>>2];G=h+48|0;d=G+B(e,24)|0;i=z[d+8>>2];n=z[b+4>>2];l=z[d+4>>2];k=z[b>>2];q=z[d>>2];F=h+F|0;b=1-e|0;G=G+B(b,24)|0;j=z[G>>2];z[F>>2]=j;o=z[G+4>>2];z[F+4>>2]=o;s=z[G+8>>2];z[F+8>>2]=s;S=(e|0)==1?f:T;d=B(b,12)+h|0;O=O+(h+128|0)|0;j=C(C(m*C(s-i))+C(C(k*C(j-q))+C(n*C(o-l))));J=C(-E);b:{if(!(j>=J)){b=a;break b}if(!(j<=C(E+z[O>>2]))){b=a;break b}z[d>>2]=q+C(k*j);z[d+4>>2]=l+C(n*j);z[d+8>>2]=i+C(m*j);L=z[h+20>>2];o=C(L-z[h+8>>2]);M=z[h+12>>2];s=C(M-z[h>>2]);N=z[h+16>>2];y=C(N-z[h+4>>2]);w=C(C(o*o)+C(C(s*s)+C(y*y)));if(!(w>C(9.999999974752427e-7))){b=a;break b}if(!(w>>0>63){b=a;break c}U=z[c+16>>2];V=z[c+20>>2];W=z[c+24>>2];j=z[S+4>>2];b=a+1|0;v[g+4096>>2]=b;a=(a<<6)+g|0;v[a+52>>2]=-1;w=C(K(w));z[a+12>>2]=w-H;Q=o;o=C(C(1)/w);w=C(Q*o);z[a+8>>2]=w;y=C(y*o);z[a+4>>2]=y;o=C(s*o);z[a>>2]=o;z[a+24>>2]=W+C(L-C(w*j));z[a+20>>2]=V+C(N-C(y*j));z[a+16>>2]=U+C(M-C(o*j))}P=P+1|0}j=z[G+12>>2];z[F>>2]=j;o=z[G+16>>2];z[F+4>>2]=o;s=z[G+20>>2];z[F+8>>2]=s;j=C(C(m*C(s-i))+C(C(k*C(j-q))+C(C(o-l)*n)));d:{if(!(j>=J)){a=b;break d}if(!(j<=C(E+z[O>>2]))){a=b;break d}z[d>>2]=q+C(k*j);z[d+4>>2]=l+C(n*j);z[d+8>>2]=i+C(m*j);q=z[h+20>>2];i=C(q-z[h+8>>2]);j=z[h+12>>2];n=C(j-z[h>>2]);E=z[h+16>>2];l=C(E-z[h+4>>2]);k=C(C(i*i)+C(C(n*n)+C(l*l)));if(!(k>C(9.999999974752427e-7))){a=b;break d}if(!(k>>0>63){a=b;break e}o=z[c+16>>2];s=z[c+20>>2];y=z[c+24>>2];m=z[S+4>>2];a=b+1|0;v[g+4096>>2]=a;b=(b<<6)+g|0;v[b+52>>2]=-1;k=C(K(k));z[b+12>>2]=k-H;Q=i;i=C(C(1)/k);k=C(Q*i);z[b+8>>2]=k;l=C(l*i);z[b+4>>2]=l;i=C(n*i);z[b>>2]=i;z[b+24>>2]=y+C(q-C(k*m));z[b+20>>2]=s+C(E-C(l*m));z[b+16>>2]=o+C(j-C(i*m))}P=P+1|0}e=e+1|0;if((e|0)!=2){continue}break}if(P){break a}}i=z[h+56>>2];m=z[h+44>>2];k=C(i+C(m*C(z[h+68>>2]-i)));n=z[h+80>>2];i=z[h+40>>2];n=C(k-C(n+C(i*C(z[h+92>>2]-n))));l=z[h+48>>2];q=C(l+C(m*C(z[h+60>>2]-l)));l=z[h+72>>2];l=C(q-C(l+C(i*C(z[h+84>>2]-l))));j=z[h+52>>2];j=C(j+C(m*C(z[h+64>>2]-j)));m=z[h+76>>2];m=C(j-C(m+C(i*C(z[h+88>>2]-m))));i=C(C(n*n)+C(C(l*l)+C(m*m)));f:{if(iC(9.999999974752427e-7)){break f}p=C(1);t=C(0);u=C(0);break f}p=C(C(1)/C(K(i)));t=C(n*p);u=C(m*p);p=C(l*p)}a=v[g+4096>>2];if(a>>>0>63){break a}m=z[c+16>>2];i=z[c+20>>2];n=z[c+24>>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=t;z[a+4>>2]=u;z[a>>2]=p;v[a+52>>2]=-1;z[a+12>>2]=C(K(I))-H;z[a+24>>2]=C(k+n)-C(x*t);z[a+20>>2]=C(j+i)-C(x*u);z[a+16>>2]=C(q+m)-C(x*p)}xa=h+144|0;return!R|0}function xr(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;i=xa-16|0;xa=i;a:{if(v[a+4656>>2]){a9(v[37696],2,11709,2308,23536,0);break a}u[i+6>>1]=0;c=a+4872|0;yr(c,0,i+6|0);zr(c,v[a+4876>>2]);v[i+8>>2]=0;c=a+4884|0;Ar(c,0,i+8|0);Br(c,v[a+4888>>2]);v[i+12>>2]=0;c=a+4896|0;Cr(c,0,i+12|0);Dr(c,v[a+4900>>2]);g=a+32|0;f=xa-32|0;xa=f;b:{if(b){eP(g,1);b=v[g+2168>>2];v[b+60>>2]=-1;v[b+48>>2]=0;dJ(b,1);fP(g);break b}dJ(v[g+2168>>2],1)}OO(g);c=v[g+2168>>2];v[c+60>>2]=-1;v[c+48>>2]=0;b=v[c+56>>2];if((b|0)!=v[c+52>>2]){d=v[c+44>>2];if(d){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d);b=v[c+56>>2]}c:{if(!b){b=0;d=0;break c}d=v[37696];b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,b,24422,17904,169)|0;d=v[c+56>>2]}v[c+52>>2]=d;v[c+44>>2]=b}t[f+28|0]=0;b=g+1180|0;c=v[b+4>>2];if((c|0)<0){d=v[b>>2];c=d+B(c,24)|0;while(1){e=v[f+12>>2];v[c>>2]=v[f+8>>2];v[c+4>>2]=e;v[c+16>>2]=v[f+24>>2];e=v[f+20>>2];v[c+8>>2]=v[f+16>>2];v[c+12>>2]=e;t[c+20|0]=w[f+28|0];c=c+24|0;if(d>>>0>c>>>0){continue}break}}v[b+4>>2]=0;gP(b,v[g+1184>>2]);c=v[g+1192>>2];u[f+16>>1]=65535;v[f+8>>2]=-1;v[f+12>>2]=-1;b=v[c+4>>2];if((b|0)<0){d=v[c>>2];b=d+B(b,12)|0;while(1){e=v[f+12>>2];v[b>>2]=v[f+8>>2];v[b+4>>2]=e;v[b+8>>2]=v[f+16>>2];b=b+12|0;if(d>>>0>b>>>0){continue}break}}v[c+4>>2]=0;hP(c,v[c+4>>2]);d=g+1244|0;v[d>>2]=0;v[f+8>>2]=0;c=g+1240|0;b=v[c+4>>2];if((b|0)<0){e=v[c>>2];b=e+(b<<2)|0;while(1){v[b>>2]=v[f+8>>2];b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[c+4>>2]=0;b=c;c=0;h=v[d>>2];d:{if(!h){break d}d=h<<2;if(!d){break d}c=v[37696];e=c+12|0;c=(m=e,n=d,o=Ba[v[v[c>>2]+20>>2]](c)|0?59663:63804,p=16608,q=553,l=v[v[e>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}e=v[b>>2];d=v[b+4>>2];if((d|0)>0){j=(d<<2)+c|0;d=c;while(1){v[d>>2]=v[e>>2];e=e+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}e=v[b>>2]}if(!(!e|v[b+8>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[b+8>>2]=h;v[b>>2]=c;iP(g);d=g+2284|0;b=0;h=v[g+2288>>2];e:{if(!h){break e}c=h<<2;if(!c){break e}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?56187:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d>>2];c=v[d+4>>2];if((c|0)>0){j=(c<<2)+b|0;c=b;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(j>>>0>c>>>0){continue}break}e=v[d>>2]}if(!(!e|v[d+8>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e)}v[d+8>>2]=h;v[d>>2]=b;c=v[g+2368>>2];if(v[c+36>>2]){e=c+8|0;b=0;while(1){d=v[v[c+32>>2]+(b<<2)>>2];v[f+8>>2]=d;f:{if((d|0)==(v[c+4>>2]-1|0)){v[c+4>>2]=d;break f}h=v[c+12>>2];if(h>>>0>=(v[c+16>>2]&2147483647)>>>0){on(e,f+8|0);break f}v[v[c+8>>2]+(h<<2)>>2]=d;v[c+12>>2]=v[c+12>>2]+1}b=b+1|0;if(b>>>0>2]){continue}break}}b=0;v[c+36>>2]=0;v[f+8>>2]=0;d=c+32|0;bz(d,0,f+8|0);zw(d,v[c+36>>2]);c=v[g+2372>>2];if(v[c+36>>2]){e=c+8|0;while(1){d=v[v[c+32>>2]+(b<<2)>>2];v[f+8>>2]=d;g:{if((d|0)==(v[c+4>>2]-1|0)){v[c+4>>2]=d;break g}h=v[c+12>>2];if(h>>>0>=(v[c+16>>2]&2147483647)>>>0){on(e,f+8|0);break g}v[v[c+8>>2]+(h<<2)>>2]=d;v[c+12>>2]=v[c+12>>2]+1}b=b+1|0;if(b>>>0>2]){continue}break}}v[c+36>>2]=0;v[f+8>>2]=0;b=c+32|0;bz(b,0,f+8|0);zw(b,v[c+36>>2]);jP(g);v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;c=g+2420|0;b=v[c+4>>2];if((b|0)<0){d=v[c>>2];b=d+(b<<4)|0;while(1){e=v[f+12>>2];v[b>>2]=v[f+8>>2];v[b+4>>2]=e;e=v[f+20>>2];v[b+8>>2]=v[f+16>>2];v[b+12>>2]=e;b=b+16|0;if(d>>>0>b>>>0){continue}break}}v[c+4>>2]=0;b=c;d=0;h=v[g+2424>>2];h:{if(!h){break h}e=h<<4;if(!e){break h}c=v[37696];d=c+12|0;d=(q=d,p=e,o=Ba[v[v[c>>2]+20>>2]](c)|0?31019:63804,n=16608,m=553,l=v[v[d>>2]+8>>2],Ba[l](q|0,p|0,o|0,n|0,m|0)|0)}e=v[b>>2];c=v[b+4>>2];if((c|0)>0){j=(c<<4)+d|0;c=d;while(1){k=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=k;k=v[e+12>>2];v[c+8>>2]=v[e+8>>2];v[c+12>>2]=k;e=e+16|0;c=c+16|0;if(j>>>0>c>>>0){continue}break}e=v[b>>2]}if(!(!e|v[b+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[b+8>>2]=h;v[b>>2]=d;QO(g+24|0,v[g+28>>2]);XO(g+52|0,v[g+56>>2]);XO(g- -64|0,v[g+68>>2]);XO(g+76|0,v[g+80>>2]);b=v[g+976>>2];c=v[b+140>>2];if(c){while(1){c=c-1|0;d=v[v[b+136>>2]+(c<<2)>>2];v[b+140>>2]=c;if(d){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d);c=v[b+140>>2]}v[b+164>>2]=v[b+164>>2]-1;if(c){continue}break}}xa=f+32|0;b=xa-16|0;xa=b;a=a+5584|0;if(!v[a+20>>2]){v[b+12>>2]=0;c=a+16|0;bz(c,0,b+12|0);zw(c,v[a+20>>2])}if(!v[a+56>>2]){v[b+12>>2]=0;c=a+52|0;bz(c,0,b+12|0);zw(c,v[a+56>>2])}xa=b+16|0}xa=i+16|0}function KX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=0,P=C(0),Q=C(0),R=C(0),S=C(0);c=xa-544|0;xa=c;G=v[a+32>>2];v[c+536>>2]=0;v[c+540>>2]=0;v[c+528>>2]=0;v[c+532>>2]=0;v[c+512>>2]=0;D=z[d+20>>2];A=z[d+24>>2];k=z[d+8>>2];l=z[d>>2];n=z[d+4>>2];q=z[d+12>>2];m=z[d+16>>2];I=z[b+20>>2];L=z[b+24>>2];p=z[b>>2];s=z[b+4>>2];y=z[b+8>>2];r=z[b+12>>2];P=z[b+16>>2];v[c+508>>2]=0;z[c+504>>2]=L;z[c+500>>2]=I;z[c+496>>2]=P;z[c+492>>2]=r;z[c+488>>2]=y;z[c+484>>2]=s;z[c+480>>2]=p;v[c+476>>2]=0;v[c+460>>2]=0;v[c+444>>2]=0;Q=C(-p);m=C(m-P);o=C(D-I);A=C(A-L);E=C(C(C(Q*m)-C(o*s))-C(y*A));D=C(C(r*r)+C(-.5));F=C(C(C(r*C(C(s*m)-C(p*o)))+C(D*A))-C(y*E));z[c+472>>2]=F+F;F=C(C(C(D*o)+C(r*C(C(p*A)-C(y*m))))-C(s*E));z[c+468>>2]=F+F;d=c+464|0;m=C(C(C(D*m)+C(r*C(C(y*o)-C(s*A))))-C(p*E));z[d>>2]=m+m;o=C(C(C(n*y)-C(s*k))+C(C(l*r)-C(q*p)));m=C(o+o);A=C(C(C(k*p)-C(y*l))+C(C(n*r)-C(q*s)));E=C(A+A);F=C(C(1)-C(o*m));M=C(A*E);z[c+456>>2]=F-M;o=C(C(C(l*s)-C(p*n))+C(C(k*r)-C(q*y)));J=C(o*E);k=C(C(q*r)-C(C(C(Q*l)-C(n*s))-C(y*k)));l=C(k*m);z[c+452>>2]=J-l;n=C(o*m);q=C(k*E);z[c+448>>2]=n+q;z[c+440>>2]=J+l;l=C(o+o);o=C(o*l);z[c+436>>2]=F-o;m=C(A*m);k=C(k*l);z[c+432>>2]=m-k;v[c+428>>2]=0;z[c+424>>2]=n-q;z[c+420>>2]=m+k;z[c+416>>2]=C(C(1)-M)-o;k=z[e+52>>2];l=z[e+56>>2];n=z[e+48>>2];q=z[a+8>>2];m=z[a+12>>2];o=z[a+4>>2];v[c+412>>2]=0;z[c+408>>2]=m;z[c+404>>2]=q;z[c+400>>2]=o;e=v[a+16>>2];N=v[a+20>>2];O=v[a+28>>2];v[c+392>>2]=v[a+24>>2];v[c+396>>2]=O;v[c+384>>2]=e;v[c+388>>2]=N;v[c+380>>2]=0;z[c+376>>2]=l;z[c+372>>2]=k;t[c+352|0]=0;v[c+348>>2]=3;v[c+320>>2]=0;v[c+324>>2]=0;v[c+328>>2]=0;v[c+332>>2]=0;z[c+368>>2]=n;k=k>=n?n:k;k=k<=l?k:l;l=C(k*C(.05000000074505806));z[c+344>>2]=l;z[c+340>>2]=l;z[c+336>>2]=k*C(.15000000596046448);t[c+192|0]=0;v[c+184>>2]=0;v[c+188>>2]=0;v[c+176>>2]=0;v[c+180>>2]=0;v[c+168>>2]=0;v[c+172>>2]=0;v[c+160>>2]=0;v[c+164>>2]=0;N=G+16|0;v[c+304>>2]=N;v[c+312>>2]=v[G+56>>2]+B(w[G+55|0],20);t[c+316|0]=w[G+54|0];k=C(o*z[G+68>>2]);l=C(q*z[G+72>>2]);k=k<=l?k:l;l=C(m*z[G+76>>2]);k=k<=l?k:l;z[c+184>>2]=k*C(.02500000037252903);z[c+176>>2]=k*C(.10000000149011612);z[c+180>>2]=k*C(.05000000074505806);O=c+160|0;FV(c+400|0,c+384|0,c+208|0,c+256|0,O,o==C(1)&q==C(1)&m==C(1));v[c+308>>2]=v[G+60>>2];F=z[f+4>>2];M=z[f>>2];J=z[f+8>>2];v[c+156>>2]=0;k=C(C(-J)*g);l=C(C(-M)*g);n=C(C(-F)*g);q=C(C(y*k)+C(C(p*l)+C(s*n)));m=C(C(C(D*k)-C(r*C(C(p*n)-C(s*l))))+C(y*q));z[c+152>>2]=m+m;m=C(C(s*q)+C(C(D*n)-C(r*C(C(y*l)-C(k*p)))));z[c+148>>2]=m+m;k=C(C(p*q)+C(C(D*l)-C(r*C(C(s*k)-C(n*y)))));z[c+144>>2]=k+k;G=x[i>>1];e=v[c+436>>2];v[c+48>>2]=v[c+432>>2];v[c+52>>2]=e;e=v[c+428>>2];v[c+40>>2]=v[c+424>>2];v[c+44>>2]=e;e=v[c+444>>2];v[c+56>>2]=v[c+440>>2];v[c+60>>2]=e;H=v[c+452>>2];e=c- -64|0;v[e>>2]=v[c+448>>2];v[e+4>>2]=H;H=v[c+460>>2];v[c+72>>2]=v[c+456>>2];v[c+76>>2]=H;H=v[d+4>>2];v[c+80>>2]=v[d>>2];v[c+84>>2]=H;H=v[c+476>>2];v[c+88>>2]=v[c+472>>2];v[c+92>>2]=H;H=v[c+420>>2];v[c+32>>2]=v[c+416>>2];v[c+36>>2]=H;k=z[c+36>>2];z[c+36>>2]=z[c+48>>2];v[c+16>>2]=141468;v[c+24>>2]=c+416;v[c+20>>2]=c+320;l=z[c+40>>2];n=z[c+56>>2];z[c+48>>2]=k;z[c+40>>2]=z[e>>2];z[c+56>>2]=z[c+68>>2];z[c+68>>2]=n;z[e>>2]=l;v[c+8>>2]=141216;v[c+12>>2]=O;e=d;d=G&512;e=LX(c+16|0,c+8|0,e,c+528|0,c+144|0,c+128|0,c+96|0,c+112|0,j,d>>>9|0);a:{if(!e){break a}if(FX(h,f,c+128|0,c+96|0,c+112|0,c+480|0,(d|0)!=0,1)){break a}u[h+12>>1]=x[h+12>>1]|1;j=z[c+100>>2];k=z[c+96>>2];l=z[c+104>>2];n=z[c+120>>2];q=z[c+488>>2];m=z[c+112>>2];o=z[c+480>>2];A=z[c+116>>2];E=z[c+484>>2];g=C(z[c+128>>2]*g);z[h+40>>2]=g;S=C(J*g);R=L;L=C(C(q*n)+C(C(o*m)+C(E*A)));J=C(C(C(r*C(C(o*A)-C(m*E)))+C(D*n))+C(q*L));z[h+24>>2]=S+C(R+C(J+J));R=I;I=C(C(E*L)+C(C(D*A)+C(r*C(C(q*m)-C(n*o)))));z[h+20>>2]=C(F*g)+C(R+C(I+I));I=C(M*g);g=C(C(o*L)+C(C(D*m)+C(r*C(C(E*n)-C(A*q)))));z[h+16>>2]=I+C(P+C(g+g));g=C(C(y*l)+C(C(p*k)+C(s*j)));n=C(C(C(r*C(C(p*j)+C(k*C(-s))))+C(D*l))+C(y*g));n=C(n+n);p=C(C(p*g)+C(C(D*k)+C(r*C(C(s*l)+C(j*C(-y))))));p=C(p+p);g=C(C(s*g)+C(C(D*j)+C(r*C(C(y*k)+C(l*Q)))));g=C(g+g);j=C(C(1)/C(K(C(C(n*n)+C(C(p*p)+C(g*g))))));z[h+36>>2]=n*j;z[h+32>>2]=g*j;z[h+28>>2]=p*j;GX(h,x[i>>1],a,N,b,f)}xa=c+544|0;return e|0}function si(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0,g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0),p=0,q=0,r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=0,E=0,F=C(0),G=C(0),H=0,I=0,J=0,L=0,M=0,N=0,O=0;h=xa-32|0;xa=h;g=v[a+100>>2];a:{b:{if(b){if(g){break b}c=0;a9(v[37696],8,19147,332,73026,0);break a}if(!g){break b}c=0;a9(v[37696],8,19147,338,72967,0);break a}v[a+116>>2]=v[a+116>>2]+1;j=z[c+12>>2];k=z[c+8>>2];l=z[c>>2];o=z[c+4>>2];e=C(C(1)/C(K(C(C(j*j)+C(C(k*k)+C(C(l*l)+C(o*o)))))));z[h+12>>2]=j*e;z[h+8>>2]=k*e;z[h+4>>2]=o*e;z[h>>2]=l*e;z[h+16>>2]=z[c+16>>2];z[h+20>>2]=z[c+20>>2];z[h+24>>2]=z[c+24>>2];c:{if(!v[37391]){a9(v[37696],8,5382,324,70455,0);c=0;break c}g=b;d=xa+-64|0;xa=d;p=v[37389];b=v[p+3336>>2];if(!b){q=xa-16|0;xa=q;m=p+3048|0;c=v[m+284>>2];if(c){b=v[37696];f=b+12|0;f=(J=f,L=c,M=Ba[v[v[b>>2]+20>>2]](b)|0?39419:63804,N=18373,O=180,I=v[v[f>>2]+8>>2],Ba[I](J|0,L|0,M|0,N|0,O|0)|0)}else{f=0}v[q+12>>2]=f;b=v[m+268>>2];d:{if(b>>>0>=(v[m+272>>2]&2147483647)>>>0){b=0;c=m+4|0;i=v[c+268>>2];D=i&2147483647?i<<1:1;e:{if(!D){break e}i=D<<2;if(!(w[c+256|0]|i>>>0>256)){t[c+256|0]=1;b=c;break e}if(!i){break e}b=v[37696];n=Ba[v[v[b>>2]+20>>2]](b)|0?39419:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,i,n,16608,553)|0}n=v[c+264>>2];H=(n<<2)+b|0;if((n|0)>0){E=v[c+260>>2];i=b;while(1){v[i>>2]=v[E>>2];E=E+4|0;i=i+4|0;if(H>>>0>i>>>0){continue}break}}v[H>>2]=v[q+12>>2];f:{if(v[c+268>>2]<0){break f}i=v[c+260>>2];if((i|0)==(c|0)){t[c+256|0]=0;break f}if(!i){break f}n=v[37696];Ba[v[v[n+12>>2]+12>>2]](n+12|0,i);n=v[c+264>>2]}v[c+268>>2]=D;v[c+260>>2]=b;v[c+264>>2]=n+1;break d}v[v[m+264>>2]+(b<<2)>>2]=f;v[m+268>>2]=b+1}b=(B(v[m+276>>2],384)+f|0)-384|0;if(f>>>0<=b>>>0){c=v[m+288>>2];while(1){v[b>>2]=c;c=b;b=b-384|0;if(f>>>0<=b>>>0){continue}break}v[m+288>>2]=c}xa=q+16|0;b=v[p+3336>>2]}v[p+3336>>2]=v[b>>2];c=p+3328|0;v[c>>2]=v[c>>2]+1;c=xa-16|0;xa=c;v[b+4>>2]=65549;v[b+8>>2]=0;v[b>>2]=120136;v[b+16>>2]=0;v[b+12>>2]=0;v[b>>2]=119540;v[b+8>>2]=0;v[b+20>>2]=0;v[b+24>>2]=65536;v[b+28>>2]=0;v[b+32>>2]=65536;v[b+36>>2]=-1;v[b+40>>2]=0;v[b+56>>2]=0;v[b>>2]=119236;v[b+48>>2]=0;v[b+52>>2]=0;zG(b- -64|0,2,h);z[b+256>>2]=z[b+80>>2];f=v[b+88>>2];v[b+260>>2]=v[b+84>>2];v[b+264>>2]=f;f=v[b+96>>2];v[b+268>>2]=v[b+92>>2];v[b+272>>2]=f;f=v[b+104>>2];v[b+276>>2]=v[b+100>>2];v[b+280>>2]=f;f=v[b+148>>2];v[b+284>>2]=v[b+144>>2];v[b+288>>2]=f;z[b+292>>2]=z[b+152>>2];f=v[b+164>>2];v[b+296>>2]=v[b+160>>2];v[b+300>>2]=f;z[b+304>>2]=z[b+168>>2];f=v[b+52>>2];e=z[b+220>>2];v[b+312>>2]=1;v[b+316>>2]=0;z[b+308>>2]=e;v[b+356>>2]=0;v[b+328>>2]=g;v[b+324>>2]=0;v[b+320>>2]=a;v[b>>2]=118828;v[b+368>>2]=-1;v[b+360>>2]=4;v[b+364>>2]=-1;v[b+352>>2]=b+332;t[b+348|0]=1;v[b+52>>2]=f&-251658241|67108864;g:{if(!g){break g}v[c+12>>2]=b;f=v[g+356>>2];if(f>>>0>=(v[g+360>>2]&2147483647)>>>0){Xk(g+332|0,c+12|0);break g}v[v[g+352>>2]+(f<<2)>>2]=b;v[g+356>>2]=f+1}xa=c+16|0;h:{if(g){Ba[v[v[g>>2]+112>>2]](d,g);o=z[h+8>>2];r=z[h+4>>2];s=z[h+12>>2];u=z[h>>2];j=z[d>>2];e=C(z[h+16>>2]-z[d+16>>2]);x=C(e+e);e=C(z[h+20>>2]-z[d+20>>2]);y=C(e+e);k=z[d+4>>2];l=z[d+8>>2];e=C(z[h+24>>2]-z[d+24>>2]);A=C(e+e);F=C(C(C(C(-j)*x)-C(y*k))-C(l*A));e=z[d+12>>2];G=C(C(e*e)+C(-.5));z[d+56>>2]=C(C(A*G)+C(e*C(C(k*x)-C(j*y))))-C(l*F);z[d+52>>2]=C(C(y*G)+C(e*C(C(j*A)-C(l*x))))-C(k*F);z[d+44>>2]=C(l*o)+C(C(k*r)+C(C(e*s)+C(j*u)));z[d+40>>2]=C(u*k)+C(C(C(e*o)-C(s*l))-C(j*r));z[d+36>>2]=C(o*j)+C(C(C(e*r)-C(s*k))-C(l*u));z[d+32>>2]=C(r*l)+C(C(C(e*u)-C(s*j))-C(k*o));z[d+48>>2]=C(C(x*G)+C(e*C(C(l*y)-C(k*A))))-C(j*F);c=0;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;g=Ba[v[v[a>>2]+108>>2]](a,g,d+32|0,b,d)|0;if(!g){Ba[v[v[b>>2]+16>>2]](b);a9(v[37696],32,5382,207,70369,0);break h}v[b+324>>2]=g}c=b}xa=d- -64|0}if(!c){c=0;break a}i:{if((v[a+16>>2]>>>30|0)-3>>>0<4294967294){break i}b=v[a+12>>2];if(!b){break i}b=b-16|0;if(!b){break i}g=b+16|0;zu(g,c+48|0,0,0,0);ju(c+20|0,b,c,0,0,0);b=Ba[v[v[c>>2]+252>>2]](c)|0;if(b){Ku(g,Ba[v[v[b>>2]+48>>2]](b)|0)}if(v[c+16>>2]){ph(c+12|0)}b=Ba[v[v[c>>2]+248>>2]](c)|0;b=v[(Ba[v[v[b>>2]+100>>2]](b)|0)+12>>2];if(b){I=c,O=sG(b,v[c- -64>>2]),v[I+364>>2]=O}}v[h>>2]=c;b=v[a+100>>2];if(b>>>0>=(v[a+104>>2]&2147483647)>>>0){Xk(a+76|0,h);break a}v[v[a+96>>2]+(b<<2)>>2]=c;v[a+100>>2]=b+1}xa=h+32|0;return c|0}function or(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=Ba[v[v[b>>2]+12>>2]](b)|0;i=Ba[v[v[b>>2]+8>>2]](b)|0;g=a+4|0;j=i+v[a+8>>2]|0;if(j>>>0>(v[a+12>>2]&2147483647)>>>0){a:{if(!j){break a}d=j<<4;if(!d){break a}c=v[37696];f=c+12|0;f=(m=f,n=d,o=Ba[v[v[c>>2]+20>>2]](c)|0?27541:63804,p=16608,q=553,l=v[v[f>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}h=v[g>>2];c=v[g+4>>2];if((c|0)>0){k=(c<<4)+f|0;d=h;c=f;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];d=d+16|0;c=c+16|0;if(k>>>0>c>>>0){continue}break}}if(!(!h|v[g+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}v[g+8>>2]=j;v[g>>2]=f}if((i|0)>0){f=(i<<4)+e|0;while(1){d=v[a+8>>2];b:{if(d>>>0>=(v[a+12>>2]&2147483647)>>>0){pr(g,e);break b}c=v[a+4>>2]+(d<<4)|0;z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];v[c+12>>2]=v[e+12>>2];v[a+8>>2]=d+1}e=e+16|0;if(f>>>0>e>>>0){continue}break}}e=Ba[v[v[b>>2]+20>>2]](b)|0;c=Ba[v[v[b>>2]+16>>2]](b)|0;d=a+16|0;f=c+v[a+20>>2]|0;if(f>>>0>(v[a+24>>2]&2147483647)>>>0){Ak(d,f)}if((c|0)>0){h=(c<<5)+e|0;while(1){f=v[a+20>>2];c:{if(f>>>0>=(v[a+24>>2]&2147483647)>>>0){qr(d,e);break c}c=v[a+16>>2]+(f<<5)|0;z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];v[c+12>>2]=v[e+12>>2];z[c+16>>2]=z[e+16>>2];z[c+20>>2]=z[e+20>>2];z[c+24>>2]=z[e+24>>2];v[c+28>>2]=v[e+28>>2];v[a+20>>2]=f+1}e=e+32|0;if(h>>>0>e>>>0){continue}break}}e=Ba[v[v[b>>2]+28>>2]](b)|0;j=Ba[v[v[b>>2]+24>>2]](b)|0;g=a+28|0;i=j+v[g+4>>2]|0;if(i>>>0>(v[g+8>>2]&2147483647)>>>0){f=0;d:{if(!i){break d}d=B(i,48);if(!d){break d}c=v[37696];f=Ba[v[v[c>>2]+20>>2]](c)|0?43123:63804;f=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,f,16608,553)|0}h=v[g>>2];c=v[g+4>>2];if((c|0)>0){k=B(c,48)+f|0;d=h;c=f;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];v[c+44>>2]=v[d+44>>2];d=d+48|0;c=c+48|0;if(k>>>0>c>>>0){continue}break}}if(!(!h|v[g+8>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,h)}v[g+8>>2]=i;v[g>>2]=f}if((j|0)>0){f=B(j,48)+e|0;while(1){d=v[g+4>>2];e:{if(d>>>0>=(v[g+8>>2]&2147483647)>>>0){Ts(g,e);break e}c=v[g>>2]+B(d,48)|0;z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];v[c+12>>2]=v[e+12>>2];z[c+16>>2]=z[e+16>>2];z[c+20>>2]=z[e+20>>2];z[c+24>>2]=z[e+24>>2];v[c+28>>2]=v[e+28>>2];z[c+32>>2]=z[e+32>>2];z[c+36>>2]=z[e+36>>2];z[c+40>>2]=z[e+40>>2];v[c+44>>2]=v[e+44>>2];v[g+4>>2]=d+1}e=e+48|0;if(f>>>0>e>>>0){continue}break}}e=Ba[v[v[b>>2]+36>>2]](b)|0;f=Ba[v[v[b>>2]+32>>2]](b)|0;h=f+v[a+44>>2]|0;if(h>>>0>(v[a+48>>2]&2147483647)>>>0){c=0;f:{if(!h){break f}d=B(h,24);if(!d){break f}b=v[37696];c=b+12|0;c=(q=c,p=d,o=Ba[v[v[b>>2]+20>>2]](b)|0?27069:63804,n=16608,m=553,l=v[v[c>>2]+8>>2],Ba[l](q|0,p|0,o|0,n|0,m|0)|0)}b=v[a+40>>2];d=v[a+44>>2];if((d|0)>0){g=B(d,24)+c|0;d=c;while(1){z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];i=v[b+16>>2];v[d+12>>2]=v[b+12>>2];v[d+16>>2]=i;v[d+20>>2]=v[b+20>>2];b=b+24|0;d=d+24|0;if(g>>>0>d>>>0){continue}break}b=v[a+40>>2]}if(!(!b|v[a+48>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+48>>2]=h;v[a+40>>2]=c}if((f|0)>0){g=B(f,24)+e|0;while(1){b=v[a+44>>2];g:{if(b>>>0>=(v[a+48>>2]&2147483647)>>>0){c=0;b=v[a+48>>2];h=b&2147483647?b<<1:1;h:{if(!h){break h}d=B(h,24);if(!d){break h}b=v[37696];c=b+12|0;c=(m=c,n=d,o=Ba[v[v[b>>2]+20>>2]](b)|0?27069:63804,p=16608,q=553,l=v[v[c>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}b=v[a+44>>2];if((b|0)>0){b=B(b,24)+c|0;f=v[a+40>>2];d=c;while(1){z[d>>2]=z[f>>2];z[d+4>>2]=z[f+4>>2];z[d+8>>2]=z[f+8>>2];i=v[f+16>>2];v[d+12>>2]=v[f+12>>2];v[d+16>>2]=i;v[d+20>>2]=v[f+20>>2];f=f+24|0;d=d+24|0;if(b>>>0>d>>>0){continue}break}b=v[a+44>>2]}b=B(b,24)+c|0;z[b>>2]=z[e>>2];z[b+4>>2]=z[e+4>>2];z[b+8>>2]=z[e+8>>2];v[b+20>>2]=v[e+20>>2];d=v[e+16>>2];v[b+12>>2]=v[e+12>>2];v[b+16>>2]=d;i:{if(v[a+48>>2]<0){break i}b=v[a+40>>2];if(!b){break i}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+48>>2]=h;v[a+40>>2]=c;break g}b=v[a+40>>2]+B(b,24)|0;z[b>>2]=z[e>>2];z[b+4>>2]=z[e+4>>2];z[b+8>>2]=z[e+8>>2];c=v[e+16>>2];v[b+12>>2]=v[e+12>>2];v[b+16>>2]=c;v[b+20>>2]=v[e+20>>2]}v[a+44>>2]=v[a+44>>2]+1;e=e+24|0;if(g>>>0>e>>>0){continue}break}}}function BL(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,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,w=C(0),A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0;i=v[a+88>>2];a=v[i+8>>2];a:{b:{if((a|0)!=-1){l=v[i+12>>2]+B(a,40)|0;v[i+8>>2]=v[l+36>>2];break b}a=v[i>>2];if(a>>>0>=256){a9(v[37696],16,13406,2106,69936,0);a=-1;break a}v[i>>2]=a+1;g=v[i+16>>2];f=g+1|0;h=v[i+20>>2]&2147483647;c:{if(f>>>0<=h>>>0){break c}o=h;h=h?h<<1:2;h=f>>>0>h>>>0?f:h;if(o>>>0>=h>>>0){break c}sL(i+12|0,h);g=v[i+16>>2]}v[i+16>>2]=f;l=v[i+12>>2]+B(g,40)|0}f=v[37696];h=Ba[v[v[f>>2]+20>>2]](f)|0?37221:63804;D=Ba[v[v[f+12>>2]+8>>2]](f+12|0,13008,h,13406,2114)|0;f=D;v[f+32>>2]=0;v[f+36>>2]=0;v[f>>2]=0;v[f+4>>2]=0;v[f+76>>2]=0;v[f+80>>2]=0;v[f+72>>2]=-1;v[f+64>>2]=0;v[f+68>>2]=0;t[f+53|0]=0;t[f+54|0]=0;t[f+55|0]=0;t[f+56|0]=0;t[f+57|0]=0;t[f+58|0]=0;t[f+59|0]=0;t[f+60|0]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;t[f+21|0]=0;t[f+22|0]=0;t[f+23|0]=0;t[f+24|0]=0;t[f+25|0]=0;t[f+26|0]=0;t[f+27|0]=0;t[f+28|0]=0;v[f+84>>2]=0;v[f+88>>2]=0;v[f+92>>2]=0;v[f+96>>2]=0;v[f+100>>2]=0;v[f+104>>2]=0;v[f+108>>2]=0;v[f+112>>2]=0;v[f+116>>2]=0;v[f+120>>2]=0;v[f+124>>2]=0;v[f+128>>2]=0;RU(f+132|0);u[f+168>>1]=256;f=f+176|0;v[f+12800>>2]=0;v[f+12804>>2]=0;v[f+12816>>2]=0;f=f+12808|0;v[f>>2]=0;v[f+4>>2]=0;f=v[b>>2];v[l+4>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;f=v[b+4>>2];v[l+8>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;f=v[b+8>>2];v[l+12>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;f=v[b+12>>2];v[l+16>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;f=v[b+16>>2];v[l+20>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;f=v[b+20>>2];v[l+28>>2]=D;v[l+24>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;v[l+36>>2]=v[b+24>>2];uL(v[i>>2],v[i+12>>2]);if(c){h=xa-32|0;xa=h;E=v[i+4216>>2];if(E){G=v[i+24>>2];H=v[i+12>>2];q=v[i+4220>>2];d:{while(1){f=1;if(!q){break d}q=q-1|0;if(!v[(q<<2)+E>>2]){continue}break}f=(q&134217727)+1|0}while(1){q=v[(A<<2)+E>>2];if(q){I=A<<5;while(1){g=B(Qaa(q)|I,12)+G|0;b=x[g+4>>1];e:{if(b){c=g+8|0;c=(b|0)!=1?v[(i+B(b,12)|0)+92>>2]+(v[g+8>>2]<<2)|0:c;b=v[(B(x[c+2>>1],40)+H|0)+28>>2];c=v[b+76>>2]+(x[c>>1]<<3)|0;g=v[c+4>>2];b=v[(g&1?96:100)+b>>2]+B(v[c>>2],24)|0;c=v[b+12>>2];v[h+16>>2]=v[b+8>>2];v[h+20>>2]=c;c=v[b+20>>2];v[h+24>>2]=v[b+16>>2];v[h+28>>2]=c;c=v[b+4>>2];v[h+8>>2]=v[b>>2];v[h+12>>2]=c;c=v[h+20>>2];break e}c=v[g>>2];b=B(c,24)+d|0;J=z[b+16>>2];K=z[b+20>>2];L=z[b>>2];M=z[b+4>>2];N=z[b+8>>2];w=z[(c<<2)+e>>2];b=(p(C(z[b+12>>2]+w)),j(2));c=((b|0)<0?b^-1:b|-2147483648)>>>1|0;v[h+20>>2]=c;b=(p(C(N-w)),j(2));v[h+16>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=(p(C(M-w)),j(2));v[h+12>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=(p(C(L-w)),j(2));v[h+8>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=(p(C(K+w)),j(2));v[h+28>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=(p(C(J+w)),j(2));v[h+24>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;g=v[g+8>>2]}f:{if(y[l+16>>2]>2]|y[l+4>>2]>c>>>0|(y[h+24>>2]>2]|y[l+20>>2]>2])){break f}if(y[h+28>>2]>2]|y[l+24>>2]>2]){break f}o=h+8|0;m=0;b=xa-1040|0;xa=b;k=g>>>2|0;O=v[i+24>>2];F=g>>>7|0;g:{if(F>>>0>2]){r=k&31;c=v[i+76>>2];break g}c=v[37696];r=k&31;n=(k+128>>>5|0)+((r|0)!=0)|0;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,n<<2,24422,13406,274)|0;s=v[i+80>>2];h:{if(s){H9(c,v[i+76>>2],s<<2);m=v[i+80>>2];if((n|0)==(m|0)){break h}}I9((m<<2)+c|0,0,n-m<<2)}m=v[i+76>>2];if(m){s=v[37696];Ba[v[v[s+12>>2]+12>>2]](s+12|0,m)}v[i+80>>2]=n;v[i+76>>2]=c}n=g&1;c=(F<<2)+c|0;v[c>>2]=v[c>>2]|1<>1];i:{if((k|0)!=1){if(!k){break i}c=v[(i+B(k,12)|0)+92>>2]+(v[m+8>>2]<<2)|0}H9(b,c,k<<2)}c=oL(D,o,g,n);g=k<<2;n=g+b|0;u[n+2>>1]=a;u[n>>1]=c;if(k>>>0>=2){c=v[m+8>>2];g=(i+g|0)+3176|0;v[v[(i+B(k,12)|0)+92>>2]+(c<<2)>>2]=v[g>>2];v[g>>2]=c}c=k+1|0;j:{if(!k){v[m+8>>2]=v[b>>2];break j}k=i+B(c,12)|0;n=k+92|0;r=(i+(c<<2)|0)+3176|0;g=v[r>>2];k:{if((g|0)!=-1){v[m+8>>2]=g;g=v[n>>2]+(g<<2)|0;v[r>>2]=v[g>>2];break k}g=v[k+96>>2];v[m+8>>2]=g;r=c+g|0;o=v[k+100>>2]&2147483647;l:{if(r>>>0<=o>>>0){break l}s=o;o=o?o<<1:2;o=o>>>0>>0?r:o;if(s>>>0>=o>>>0){break l}zw(n,o);g=v[k+96>>2]}n=v[n>>2];v[k+96>>2]=r;g=n+(g<<2)|0}H9(g,b,c<<2)}u[m+4>>1]=c;xa=b+1040|0}q=q-1&q;if(q){continue}break}}A=A+1|0;if((f|0)!=(A|0)){continue}break}}xa=h+32|0}}return a|0}function OV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),L=0,M=0,N=C(0);p=xa-32|0;xa=p;y=z[c+4>>2];I=z[d+16>>2];z[p>>2]=I;J=z[d+20>>2];z[p+4>>2]=J;F=z[d+24>>2];z[p+12>>2]=y;z[p+8>>2]=F;G=v[e+32>>2];d=G;c=xa-448|0;xa=c;m=z[p+8>>2];l=z[p>>2];n=z[p+4>>2];g=z[e+4>>2];k=z[e+8>>2];h=z[e+12>>2];v[c+380>>2]=0;z[c+376>>2]=h;z[c+372>>2]=k;z[c+368>>2]=g;A=v[e+16>>2];L=v[e+20>>2];M=v[e+28>>2];v[c+360>>2]=v[e+24>>2];v[c+364>>2]=M;v[c+352>>2]=A;v[c+356>>2]=L;t[c+224|0]=0;v[c+216>>2]=0;v[c+220>>2]=0;v[c+208>>2]=0;v[c+212>>2]=0;v[c+200>>2]=0;v[c+204>>2]=0;v[c+192>>2]=0;v[c+196>>2]=0;v[c+336>>2]=d+16;v[c+344>>2]=v[d+56>>2]+B(w[d+55|0],20);t[c+348|0]=w[d+54|0];i=C(g*z[d+68>>2]);j=C(k*z[d+72>>2]);i=i<=j?i:j;j=C(h*z[d+76>>2]);i=i<=j?i:j;z[c+216>>2]=i*C(.02500000037252903);z[c+208>>2]=i*C(.10000000149011612);z[c+212>>2]=i*C(.05000000074505806);e=c+192|0;FV(c+368|0,c+352|0,c+240|0,c+288|0,e,g==C(1)&k==C(1)&h==C(1));v[c+340>>2]=v[d+60>>2];k=z[f>>2];g=C(l-z[f+16>>2]);l=C(g+g);g=C(n-z[f+20>>2]);n=C(g+g);h=z[f+4>>2];i=z[f+8>>2];g=C(m-z[f+24>>2]);j=C(g+g);o=C(C(C(C(-k)*l)-C(n*h))-C(i*j));g=z[f+12>>2];D=C(C(g*g)+C(-.5));z[c+180>>2]=C(C(n*D)+C(g*C(C(k*j)-C(i*l))))-C(h*o);v[c+188>>2]=0;v[c+172>>2]=0;v[c+156>>2]=0;z[c+184>>2]=C(C(j*D)+C(g*C(C(h*l)-C(k*n))))-C(i*o);s=C(h*C(0));q=C(g*C(0));x=C(k*C(0));m=C(s+C(C(q-i)-x));u=C(i*C(0));r=C(x+C(C(q-h)-u));H=C(r+r);E=C(m*H);x=C(u+C(s+C(x+g)));q=C(u+C(C(q-k)-s));s=C(q+q);u=C(x*s);z[c+164>>2]=E-u;z[c+152>>2]=E+u;q=C(C(1)-C(q*s));u=C(r*H);z[c+168>>2]=q-u;N=q;q=C(m+m);E=C(m*q);z[c+148>>2]=N-E;z[c+176>>2]=C(C(l*D)+C(g*C(C(i*n)-C(h*j))))-C(k*o);v[c+140>>2]=0;g=C(m*s);k=C(x*H);z[c+160>>2]=g+k;h=C(r*s);i=C(x*q);z[c+144>>2]=h-i;z[c+136>>2]=g-k;z[c+132>>2]=h+i;z[c+128>>2]=C(C(1)-u)-E;v[c+56>>2]=0;v[c+60>>2]=4;d=v[c+180>>2];v[c+32>>2]=v[c+176>>2];v[c+36>>2]=d;d=v[c+188>>2];v[c+40>>2]=v[c+184>>2];v[c+44>>2]=d;v[c+112>>2]=0;d=v[c+188>>2];v[c+88>>2]=v[c+184>>2];v[c+92>>2]=d;d=v[c+180>>2];v[c+80>>2]=v[c+176>>2];v[c+84>>2]=d;d=v[c+188>>2];v[c+104>>2]=v[c+184>>2];v[c+108>>2]=d;t[c+64|0]=1;v[c+48>>2]=0;v[c+52>>2]=0;d=v[c+180>>2];v[c+96>>2]=v[c+176>>2];v[c+100>>2]=d;v[c+24>>2]=141148;v[c+28>>2]=c+32;v[c+16>>2]=141216;v[c+20>>2]=e;v[c>>2]=2139095039;d=GV(c+24|0,c+16|0,c+176|0,c,c+432|0,c+416|0,c+400|0,c+384|0);a:{if((d|0)==2){v[p+28>>2]=0;break a}g=z[c+384>>2];z[p+28>>2]=g*g;e=v[c+400>>2];A=v[c+404>>2];z[a+8>>2]=z[c+408>>2];v[a>>2]=e;v[a+4>>2]=A;e=v[c+416>>2];A=v[c+420>>2];z[p+24>>2]=z[c+424>>2];v[p+16>>2]=e;v[p+20>>2]=A;g=z[f+8>>2];k=z[a+8>>2];l=C(k+k);k=z[f>>2];h=z[a>>2];n=C(h+h);h=z[a+4>>2];j=C(h+h);h=z[f+4>>2];o=C(C(g*l)+C(C(k*n)+C(j*h)));i=z[f+12>>2];m=C(C(i*i)+C(-.5));z[a+8>>2]=C(g*o)+C(C(l*m)+C(i*C(C(k*j)-C(n*h))));z[a+4>>2]=C(h*o)+C(C(j*m)+C(i*C(C(g*n)-C(l*k))));z[a>>2]=C(k*o)+C(C(n*m)+C(i*C(C(h*l)-C(j*g))));r=z[f+16>>2];s=z[f+20>>2];l=z[p+24>>2];l=C(l+l);n=z[p+16>>2];n=C(n+n);j=z[p+20>>2];j=C(j+j);o=C(C(g*l)+C(C(k*n)+C(h*j)));z[p+24>>2]=z[f+24>>2]+C(C(g*o)+C(C(l*m)+C(i*C(C(k*j)-C(n*h)))));z[p+20>>2]=s+C(C(h*o)+C(C(j*m)+C(i*C(C(g*n)-C(l*k)))));z[p+16>>2]=r+C(C(k*o)+C(C(n*m)+C(i*C(C(h*l)-C(j*g)))))}xa=c+448|0;b:{c:{if((d|0)!=2){g=z[p+28>>2];c=0;if(g>C(y*y)){break b}g=C(y-C(K(g)));z[b>>2]=g>C(0)?g:C(0);z[a+8>>2]=-z[a+8>>2];z[a+4>>2]=-z[a+4>>2];z[a>>2]=-z[a>>2];break c}d=w[G+55|0];d:{if(!d){g=C(-34028234663852886e22);break d}h=z[f+8>>2];g=C(F-z[f+24>>2]);g=C(g+g);i=z[f>>2];k=C(I-z[f+16>>2]);k=C(k+k);m=C(J-z[f+20>>2]);j=C(m+m);m=z[f+4>>2];o=C(C(h*g)+C(C(i*k)+C(j*m)));l=z[f+12>>2];n=C(C(l*l)+C(-.5));s=C(C(h*o)+C(C(g*n)-C(l*C(C(i*j)-C(k*m)))));F=C(C(m*o)+C(C(j*n)-C(l*C(C(h*k)-C(g*i)))));D=C(C(i*o)+C(C(k*n)-C(l*C(C(m*g)-C(j*h)))));q=C(-m);x=C(-i);u=C(-h);f=v[G+56>>2];g=C(-34028234663852886e22);while(1){d=d-1|0;j=z[f+8>>2];o=z[f>>2];r=z[f+4>>2];k=C(z[f+12>>2]+C(C(s*j)+C(C(D*o)+C(F*r))));if(k>g){g=C(j+j);j=C(o+o);o=C(r+r);r=C(C(h*g)+C(C(i*j)+C(m*o)));z[a+8>>2]=C(h*r)+C(C(g*n)+C(l*C(C(i*o)+C(j*q))));z[a+4>>2]=C(m*r)+C(C(o*n)+C(l*C(C(h*j)+C(g*x))));z[a>>2]=C(i*r)+C(C(j*n)+C(l*C(C(m*g)+C(o*u))));g=k}f=f+20|0;if(d){continue}break}}g=C(y-g);z[b>>2]=g>C(0)?g:C(0)}c=1}xa=p+32|0;return c|0}function K2(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0;r=xa-48|0;xa=r;t[g|0]=0;i=z[a+16>>2];k=z[a>>2];m=z[a+12>>2];l=z[a+4>>2];s=z[a+8>>2];j=C(z[a+20>>2]-s);z[r+40>>2]=j;i=C(i-l);z[r+36>>2]=i;n=C(m-k);z[r+32>>2]=n;m=z[a+28>>2];o=z[a+24>>2];s=C(z[a+32>>2]-s);z[r+24>>2]=s;x=C(m-l);z[r+20>>2]=x;o=C(o-k);z[r+16>>2]=o;a:{b:{if(h){A=z[r+24>>2];s=z[c+8>>2];j=z[a+8>>2];l=C(s-j);F=z[r+16>>2];x=z[c>>2];i=z[a>>2];m=C(x-i);o=z[c+4>>2];k=z[a+4>>2];n=C(o-k);G=z[r+20>>2];u=C(C(A*l)+C(C(F*m)+C(n*G)));H=z[r+40>>2];I=z[r+32>>2];D=z[r+36>>2];w=C(C(H*l)+C(C(I*m)+C(n*D)));c:{if(w<=C(0)&u<=C(0)){break c}l=z[a+20>>2];q=C(s-l);m=z[a+12>>2];p=C(x-m);n=z[a+16>>2];y=C(o-n);J=C(C(A*q)+C(C(F*p)+C(G*y)));q=C(C(H*q)+C(C(I*p)+C(D*y)));if(!(!(q>=C(0))|!(q>=J))){i=m;k=n;j=l;break c}K=C(C(w*J)-C(u*q));if(!(!(K<=C(0))|(!(q<=C(0))|!(w>=C(0))))){l=C(w/C(w-q));j=C(j+C(H*l));k=C(k+C(D*l));i=C(i+C(I*l));break c}y=s;s=z[a+32>>2];p=C(y-s);y=x;x=z[a+24>>2];E=C(y-x);y=o;o=z[a+28>>2];L=C(y-o);y=C(C(H*p)+C(C(I*E)+C(D*L)));p=C(C(A*p)+C(C(F*E)+C(G*L)));if(!(!(p>=C(0))|!(p>=y))){i=x;k=o;j=s;break c}w=C(C(y*u)-C(p*w));if(!(!(w<=C(0))|(!(p<=C(0))|!(u>=C(0))))){l=C(u/C(u-p));j=C(j+C(A*l));k=C(k+C(G*l));i=C(i+C(F*l));break c}d:{E=C(C(q*p)-C(J*y));if(!(E<=C(0))){break d}u=C(J-q);if(!(u>=C(0))){break d}q=C(y-p);if(!(q>=C(0))){break d}i=C(u/C(u+q));j=C(l+C(C(s-l)*i));k=C(n+C(C(o-n)*i));i=C(m+C(C(x-m)*i));break c}m=C(C(1)/C(K+C(E+w)));l=C(K*m);m=C(w*m);j=C(C(A*l)+C(j+C(H*m)));k=C(C(G*l)+C(k+C(D*m)));i=C(C(F*l)+C(i+C(I*m)))}z[r+8>>2]=j;z[r+4>>2]=k;z[r>>2]=i;j=C(z[r+8>>2]-z[c+8>>2]);i=C(j*j);j=C(z[r>>2]-z[c>>2]);k=C(j*j);j=C(z[r+4>>2]-z[c+4>>2]);if(C(i+C(k+C(j*j)))<=C(d*d)){v[f>>2]=0;break b}i=z[r+36>>2];n=z[r+32>>2];o=z[r+16>>2];x=z[r+20>>2];s=z[r+24>>2];j=z[r+40>>2]}m=z[e>>2];u=z[e+4>>2];F=C(C(m*x)-C(o*u));k=z[e+8>>2];G=C(C(u*s)-C(x*k));H=C(C(k*o)-C(s*m));l=C(C(j*F)+C(C(n*G)+C(H*i)));if(l>C(-9999999747378752e-21)&l>2]*d);p=C(z[b>>2]*d);w=C(z[b+4>>2]*d);b=C(C(k*q)+C(C(m*p)+C(w*u)))>=C(0);A=C(C(1)/l);y=k;k=z[a>>2];p=C(C(z[c>>2]-(b?C(-p):p))-k);l=z[a+4>>2];w=C(C(z[c+4>>2]-(b?C(-w):w))-l);I=C(C(p*i)-C(n*w));D=m;E=i;m=z[a+8>>2];i=C(C(z[c+8>>2]-(b?C(-q):q))-m);q=C(C(w*j)-C(E*i));n=C(C(i*n)-C(j*p));j=C(A*C(C(y*I)+C(C(D*q)+C(u*n))));i=C(A*C(C(i*F)+C(C(p*G)+C(H*w))));b=iC(1)|(jC(1)))){d=C(A*C(C(s*I)+C(C(o*q)+C(x*n))));if(d>2]=d;M=1;t[g|0]=1;break a}e:{f:{g:{h:{if(b){if(j>2];s=C(m-n);x=z[a+32>>2];o=C(C(C(1)-i)-j);w=C(C(C(i*n)+C(j*x))+C(o*m));D=C(s*C(w-n));n=z[a+12>>2];u=C(k-n);q=z[a+24>>2];A=C(C(C(i*n)+C(j*q))+C(o*k));E=C(u*C(A-n));n=z[a+16>>2];p=C(l-n);y=j;j=z[a+28>>2];o=C(C(C(i*n)+C(y*j))+C(o*l));if(!(C(D+C(E+C(p*C(o-n))))C(1))){g=2;b=0;break e}n=z[a+32>>2];s=C(n-m);x=z[a+20>>2];o=C(C(C(1)-i)-j);w=C(C(C(i*x)+C(j*n))+C(o*m));D=C(s*C(w-m));m=z[a+24>>2];u=C(m-k);q=z[a+12>>2];A=C(C(C(i*q)+C(j*m))+C(o*k));E=C(u*C(A-k));k=z[a+28>>2];p=C(k-l);y=i;i=z[a+16>>2];o=C(C(C(y*i)+C(j*k))+C(o*l));if(C(D+C(E+C(p*C(o-l))))C(1))){break f}n=z[a+20>>2];s=C(n-m);x=z[a+32>>2];o=C(C(C(1)-i)-j);w=C(C(C(i*n)+C(j*x))+C(o*m));D=C(s*C(w-m));m=z[a+12>>2];u=C(m-k);q=z[a+24>>2];A=C(C(C(i*m)+C(j*q))+C(o*k));E=C(u*C(A-k));k=z[a+16>>2];p=C(k-l);y=j;j=z[a+28>>2];o=C(C(C(i*k)+C(y*j))+C(o*l));if(C(D+C(E+C(p*C(o-l))))>2]=z[r>>2];break b}g=1;b=0}if(!ZW(c,e,B(b,12)+a|0,B(g,12)+a|0,d,r)){break a}d=z[r>>2];if(!(d>=C(0))){break a}z[f>>2]=d}M=1}xa=r+48|0;return M}function zx(a,b,c,d,e,f,g,h){a=a|0;b=C(b);c=C(c);d=d|0;e=e|0;f=f|0;g=g|0;h=C(h);var i=0,j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=0,D=C(0),E=0,F=C(0),G=C(0),H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0),fa=C(0),ga=0,ha=0,ia=0;i=xa-144|0;xa=i;$=v[a+448>>2];if(v[a+660>>2]?1:v[a+292>>2]|v[a+304>>2]){B=v[a+264>>2];j=v[a+228>>2];E=v[a+444>>2];k=v[a+420>>2];H=v[a+408>>2];I=w[v[a+476>>2]];v[i+104>>2]=0;v[i+108>>2]=0;v[i+96>>2]=0;v[i+100>>2]=0;v[i+88>>2]=0;v[i+92>>2]=0;v[i+80>>2]=0;v[i+84>>2]=0;I=I&1;if(!I){J=z[a+560>>2];K=z[a+572>>2];L=z[a+584>>2];M=z[a+564>>2];N=z[a+576>>2];G=z[a+588>>2];T=z[a+568>>2];U=z[a+580>>2];V=z[a+592>>2];W=z[a+620>>2];X=z[a+608>>2];Y=z[a+596>>2];x=z[a+524>>2];u=z[a+528>>2];m=z[a+532>>2];F=z[a+624>>2];Z=z[a+612>>2];_=z[a+600>>2];A=z[a+536>>2];y=z[a+540>>2];D=z[a+544>>2];O=z[a+548>>2];s=z[B+16>>2];n=C(-s);P=z[a+552>>2];q=z[B+20>>2];Q=z[a+556>>2];l=z[B+24>>2];o=C(-z[B+4>>2]);r=z[B>>2];p=z[B+8>>2];R=C(C(C(C(O*n)-C(P*q))-C(Q*l))+C(C(C(z[a+616>>2]*o)-C(r*z[a+604>>2]))-C(p*z[a+628>>2])));z[i+104>>2]=R;F=C(C(C(C(A*n)-C(y*q))-C(D*l))+C(C(C(Z*o)-C(r*_))-C(p*F)));z[i+100>>2]=F;n=C(C(C(C(x*n)-C(u*q))-C(m*l))+C(C(C(X*o)-C(r*Y))-C(p*W)));z[i+96>>2]=n;D=C(C(C(D*o)-C(r*m))-C(p*Q));m=C(-q);q=C(D+C(C(C(U*m)-C(s*T))-C(l*V)));z[i+88>>2]=q;u=C(C(C(C(y*o)-C(r*u))-C(p*P))+C(C(C(N*m)-C(s*M))-C(l*G)));z[i+84>>2]=u;l=C(C(C(C(A*o)-C(r*x))-C(p*O))+C(C(C(K*m)-C(s*J))-C(l*L)));z[i+80>>2]=l}o=z[j+20>>2];r=z[j>>2];p=z[j+4>>2];s=z[j+8>>2];x=z[j+16>>2];z[i+136>>2]=R+z[j+24>>2];z[i+132>>2]=F+o;j=0;v[i+140>>2]=0;z[i+128>>2]=n+x;v[i+124>>2]=0;z[i+120>>2]=q+s;z[i+116>>2]=u+p;z[i+112>>2]=l+r;v[i+72>>2]=0;v[i+76>>2]=0;S=i- -64|0;v[S>>2]=0;v[S+4>>2]=0;v[i+56>>2]=0;v[i+60>>2]=0;v[i+48>>2]=0;v[i+52>>2]=0;H=v[H>>2];if(H){n=f?C(0):C(-34028234663852886e22);S=v[a+312>>2];da=Ba[v[v[a>>2]+168>>2]](a,0)|0;k=v[k>>2];while(1){wx(v[a+656>>2]+(k<<5)|0,i+112|0,i+48|0,i+80|0,S,da,g,h,n);k=k+1|0;j=j+1|0;if((H|0)!=(j|0)){continue}break}}v[i+44>>2]=0;v[i+40>>2]=0;j=v[E>>2];k=v[E+4>>2];a:{if(!(j|k)){r=z[i+72>>2];n=z[i+68>>2];q=z[i+64>>2];u=z[i+56>>2];l=z[i+52>>2];o=z[i+48>>2];break a}r=z[i+72>>2];n=z[i+68>>2];q=z[i+64>>2];u=z[i+56>>2];l=z[i+52>>2];o=z[i+48>>2];b:{if(!I){while(1){E=j;yx(i,a,b,c,d,e,f,g,h,(ga=Qaa(j),ha=Qaa(k)+32|0,ia=j,ia?ga:ha),i+80|0,i+44|0,i+40|0);p=z[i+24>>2];r=C(p+r);A=z[i+20>>2];n=C(A+n);y=z[i+16>>2];q=C(y+q);s=z[i+8>>2];u=C(s+u);m=z[i+4>>2];l=C(m+l);x=z[i>>2];o=C(x+o);j=j&j-1;k=k&k-!E;if(!(j|k)){break b}T=z[a+628>>2];U=z[a+616>>2];V=z[a+604>>2];W=z[a+624>>2];X=z[a+612>>2];Y=z[a+600>>2];F=z[a+620>>2];Z=z[a+608>>2];_=z[a+596>>2];D=z[a+556>>2];J=z[a+544>>2];K=z[a+532>>2];O=z[a+592>>2];P=z[a+580>>2];Q=z[a+568>>2];L=z[a+552>>2];M=z[a+540>>2];N=z[a+528>>2];R=z[a+588>>2];ea=z[a+576>>2];fa=z[a+564>>2];aa=z[a+536>>2];m=C(-m);ba=z[a+524>>2];ca=z[a+548>>2];G=C(-A);z[i+80>>2]=C(C(C(C(aa*m)-C(x*ba))-C(s*ca))+C(C(C(z[a+572>>2]*G)-C(y*z[a+560>>2]))-C(p*z[a+584>>2])))+z[i+80>>2];z[i+84>>2]=C(C(C(C(M*m)-C(x*N))-C(s*L))+C(C(C(ea*G)-C(y*fa))-C(p*R)))+z[i+84>>2];z[i+88>>2]=C(C(C(C(J*m)-C(x*K))-C(s*D))+C(C(C(P*G)-C(y*Q))-C(p*O)))+z[i+88>>2];y=C(-y);z[i+96>>2]=C(C(C(C(ba*y)-C(N*A))-C(K*p))+C(C(C(Z*m)-C(x*_))-C(s*F)))+z[i+96>>2];z[i+100>>2]=C(C(C(C(aa*y)-C(M*A))-C(J*p))+C(C(C(X*m)-C(x*Y))-C(s*W)))+z[i+100>>2];z[i+104>>2]=C(C(C(C(ca*y)-C(L*A))-C(D*p))+C(C(C(U*m)-C(x*V))-C(s*T)))+z[i+104>>2];continue}}while(1){E=j;yx(i,a,b,c,d,e,f,g,h,(ga=Qaa(j),ha=Qaa(k)+32|0,ia=j,ia?ga:ha),i+80|0,i+44|0,i+40|0);r=C(z[i+24>>2]+r);n=C(z[i+20>>2]+n);q=C(z[i+16>>2]+q);u=C(z[i+8>>2]+u);l=C(z[i+4>>2]+l);o=C(z[i>>2]+o);j=j&j-1;k=k&k-!E;if(j|k){continue}break}}z[i+68>>2]=n;z[i+64>>2]=q;z[i+56>>2]=u;z[i+52>>2]=l;z[i+48>>2]=o}z[d+16>>2]=q;z[d+8>>2]=u;z[d+4>>2]=l;z[d>>2]=o;z[d+24>>2]=r;z[d+20>>2]=n;if($){j=0;while(1){f=j<<5;e=f+B|0;f=d+f|0;z[e>>2]=z[f>>2]+z[e>>2];z[e+4>>2]=z[f+4>>2]+z[e+4>>2];z[e+8>>2]=z[f+8>>2]+z[e+8>>2];z[e+16>>2]=z[f+16>>2]+z[e+16>>2];z[e+20>>2]=z[f+20>>2]+z[e+20>>2];z[e+24>>2]=z[f+24>>2]+z[e+24>>2];j=j+1|0;if(($|0)!=(j|0)){continue}break}}t[a+489|0]=1}xa=i+144|0}function m$(a,b,c,d,e,f,g,h){var i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),x=C(0),y=0,A=0,D=C(0),E=0,F=C(0),G=0,H=0,I=0,J=C(0),K=C(0),L=0,M=0,N=C(0),O=C(0);E=xa-16|0;xa=E;j=v[a+16>>2];k=z[j+16>>2];H=z[j+12>>2]>2];j=f>>>1|0;a:{if(t[(v[A+60>>2]+(j<<2)|0)+2|0]<0){if(!y){y=j+v[A+44>>2]|0;v[E+4>>2]=y;v[I>>2]=j;G=y+1|0;break a}y=j+1|0;v[E+4>>2]=y;v[I>>2]=v[A+44>>2]+y;G=j;break a}if(!y){v[E+4>>2]=j;v[I>>2]=j+1;G=j+v[A+44>>2]|0;y=j;break a}G=j+1|0;M=v[A+44>>2];y=G+M|0;v[E+4>>2]=y;v[I>>2]=j+M}v[L>>2]=G;if(e){G=v[A+60>>2];j=f>>>1|0;M=t[(G+(j<<2)|0)+2|0];I=(H?8:0)+e|0;v[I>>2]=-1;L=f&1;H=(H?0:8)+e|0;b:{c:{if((M|0)<0){if(!L){v[e+4>>2]=f+1;v[H>>2]=-1;e=v[A+44>>2];if((j>>>0)%(e>>>0)|0){v[I>>2]=f-1;e=v[A+44>>2]}if((v[A+40>>2]-2|0)==((j>>>0)/(e>>>0)|0)){break b}e=e+j|0;e=e<<1|w[(G+(e<<2)|0)+2|0]>>>7;break c}v[e+4>>2]=f-1;v[H>>2]=-1;e=v[A+44>>2];if((j>>>0)%(e>>>0)>>>0>>0){v[I>>2]=f+1;e=v[A+44>>2]}if(j>>>0>>0){break b}e=j-e|0;e=e<<1|t[(G+(e<<2)|0)+2|0]>=0;break c}if(!L){v[e+4>>2]=f+1;v[H>>2]=-1;e=v[A+44>>2];if(j>>>0>=e-1>>>0){e=j-e|0;v[I>>2]=e<<1|t[(G+(e<<2)|0)+2|0]>=0;e=v[A+44>>2]}if(!((j>>>0)%(e>>>0)|0)){break b}e=f-1|0;break c}v[e+4>>2]=f-1;v[H>>2]=-1;e=v[A+44>>2];if((v[A+40>>2]-2|0)!=((j>>>0)/(e>>>0)|0)){e=e+j|0;v[I>>2]=e<<1|w[(G+(e<<2)|0)+2|0]>>>7;e=v[A+44>>2]}if(e-2>>>0<=(j>>>0)%(e>>>0)>>>0){break b}e=f+1|0}v[H>>2]=e}}if(d){v[d>>2]=y;v[d+4>>2]=v[E+8>>2];v[d+8>>2]=v[E+12>>2]}d:{if(h){k=z[b+12>>2];q=C(C(k*k)+C(-.5));d=v[a+12>>2];e=v[d+60>>2];d=v[d+44>>2];o=z[b+4>>2];D=C(-o);p=z[b>>2];J=C(-p);n=z[b+8>>2];K=C(-n);a=v[a+16>>2];r=z[a+16>>2];s=z[a+8>>2];x=z[a+12>>2];if(!g){i=C(r*C((y>>>0)%(d>>>0)>>>0));i=C(i+i);l=C(x*C((y>>>0)/(d>>>0)>>>0));l=C(l+l);m=C(s*C(u[e+(y<<2)>>1]));m=C(m+m);F=C(C(n*i)+C(C(p*l)+C(m*o)));z[c+8>>2]=C(n*F)+C(C(i*q)+C(k*C(C(p*m)+C(l*D))));z[c+4>>2]=C(o*F)+C(C(m*q)+C(k*C(C(n*l)+C(i*J))));z[c>>2]=C(p*F)+C(C(l*q)+C(k*C(C(o*i)+C(m*K))));a=v[E+8>>2];b=(a>>>0)/(d>>>0)|0;i=C(r*C(a-B(b,d)>>>0));i=C(i+i);l=C(x*C(b>>>0));l=C(l+l);m=C(s*C(u[e+(a<<2)>>1]));m=C(m+m);F=C(C(n*i)+C(C(p*l)+C(m*o)));z[c+20>>2]=C(n*F)+C(C(i*q)+C(k*C(C(p*m)+C(l*D))));z[c+16>>2]=C(o*F)+C(C(m*q)+C(k*C(C(n*l)+C(i*J))));z[c+12>>2]=C(p*F)+C(C(l*q)+C(k*C(C(o*i)+C(m*K))));a=v[E+12>>2];b=(a>>>0)/(d>>>0)|0;r=C(r*C(a-B(b,d)>>>0));r=C(r+r);x=C(x*C(b>>>0));x=C(x+x);s=C(s*C(u[e+(a<<2)>>1]));s=C(s+s);i=C(C(n*r)+C(C(p*x)+C(s*o)));D=C(C(n*i)+C(C(r*q)+C(k*C(C(p*s)+C(x*D)))));n=C(C(o*i)+C(C(s*q)+C(k*C(C(n*x)+C(r*J)))));k=C(C(p*i)+C(C(x*q)+C(k*C(C(o*r)+C(s*K)))));break d}N=z[b+20>>2];O=z[b+16>>2];a=(y>>>0)/(d>>>0)|0;i=C(r*C(y-B(a,d)>>>0));i=C(i+i);l=C(x*C(a>>>0));l=C(l+l);m=C(s*C(u[e+(y<<2)>>1]));m=C(m+m);F=C(C(n*i)+C(C(p*l)+C(m*o)));z[c+8>>2]=z[b+24>>2]+C(C(n*F)+C(C(i*q)+C(k*C(C(p*m)+C(l*D)))));z[c+4>>2]=N+C(C(o*F)+C(C(m*q)+C(k*C(C(n*l)+C(i*J)))));z[c>>2]=O+C(C(p*F)+C(C(l*q)+C(k*C(C(o*i)+C(m*K)))));N=z[b+20>>2];O=z[b+16>>2];a=v[E+8>>2];f=(a>>>0)/(d>>>0)|0;i=C(r*C(a-B(d,f)>>>0));i=C(i+i);l=C(x*C(f>>>0));l=C(l+l);m=C(s*C(u[e+(a<<2)>>1]));m=C(m+m);F=C(C(n*i)+C(C(p*l)+C(m*o)));z[c+20>>2]=z[b+24>>2]+C(C(n*F)+C(C(i*q)+C(k*C(C(p*m)+C(l*D)))));z[c+16>>2]=N+C(C(o*F)+C(C(m*q)+C(k*C(C(n*l)+C(i*J)))));z[c+12>>2]=O+C(C(p*F)+C(C(l*q)+C(k*C(C(o*i)+C(m*K)))));a=v[E+12>>2];f=(a>>>0)/(d>>>0)|0;r=C(r*C(a-B(d,f)>>>0));r=C(r+r);x=C(x*C(f>>>0));x=C(x+x);s=C(s*C(u[e+(a<<2)>>1]));s=C(s+s);i=C(C(n*r)+C(C(p*x)+C(s*o)));D=C(z[b+24>>2]+C(C(n*i)+C(C(r*q)+C(k*C(C(p*s)+C(x*D))))));n=C(z[b+20>>2]+C(C(o*i)+C(C(s*q)+C(k*C(C(n*x)+C(r*J))))));k=C(z[b+16>>2]+C(C(p*i)+C(C(x*q)+C(k*C(C(o*r)+C(s*K))))));break d}D=z[b+24>>2];e=v[a+12>>2];d=v[e+44>>2];a=v[a+16>>2];q=z[a+16>>2];k=z[a+12>>2];n=z[b+16>>2];o=g?z[b+20>>2]:C(0);p=z[a+8>>2];a=v[e+60>>2];z[c+4>>2]=o+C(p*C(u[a+(y<<2)>>1]));n=g?n:C(0);b=(y>>>0)/(d>>>0)|0;z[c>>2]=n+C(k*C(b>>>0));D=g?D:C(0);z[c+8>>2]=D+C(q*C(y-B(b,d)>>>0));b=v[E+8>>2];e=u[a+(b<<2)>>1];f=(b>>>0)/(d>>>0)|0;z[c+12>>2]=n+C(k*C(f>>>0));z[c+16>>2]=o+C(p*C(e|0));z[c+20>>2]=D+C(q*C(b-B(d,f)>>>0));b=v[E+12>>2];e=(b>>>0)/(d>>>0)|0;k=C(n+C(k*C(e>>>0)));n=C(o+C(p*C(u[a+(b<<2)>>1])));D=C(D+C(q*C(b-B(d,e)>>>0)))}z[c+24>>2]=k;z[c+32>>2]=D;z[c+28>>2]=n;xa=E+16|0}function nE(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=0,U=0,V=0,W=C(0);m=xa+-64|0;xa=m;if(v[a+592>>2]){h=z[b+84>>2];w=z[b+76>>2];q=z[b+88>>2];r=z[b+72>>2];s=z[b+92>>2];y=z[b+80>>2];z[m+56>>2]=C(s-y)*C(.5);z[m+52>>2]=C(q-w)*C(.5);z[m+48>>2]=C(h-r)*C(.5);z[m+40>>2]=C(s+y)*C(.5);z[m+36>>2]=C(q+w)*C(.5);z[m+32>>2]=C(h+r)*C(.5);u[m+28>>1]=x[f>>1];v[m+24>>2]=e;v[m+16>>2]=c;v[m+8>>2]=130332;v[m+20>>2]=m+48;v[m+12>>2]=m+32;U=v[a+644>>2];V=v[a+640>>2];R=m+8|0;e=xa-1056|0;xa=e;h=z[c+8>>2];q=C(h+h);b=q>C(0);G=C(-q);h=z[c+4>>2];r=C(h+h);f=r>C(0);H=C(-r);h=z[c>>2];s=C(h+h);c=s>C(0);I=C(-s);J=z[m+56>>2];K=z[m+52>>2];L=z[m+48>>2];h=z[m+40>>2];w=C(h+h);h=z[m+36>>2];y=C(h+h);h=z[m+32>>2];E=C(h+h);h=z[d>>2];a:{if(h>=C(34028234663852886e22)){A=r==C(0)?y:r>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);D=s==C(0)?E:s>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);h=w;if(q==C(0)){break a}h=q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}A=C(y+C(r*h));D=C(E+C(s*h));h=C(w+C(q*h))}G=b?q:G;H=f?r:H;I=c?s:I;O=C(J+J);P=C(K+K);Q=C(L+L);t[e+1040|0]=1;v[e+1048>>2]=256;v[e+1052>>2]=256;v[e+1044>>2]=e+16;v[e+16>>2]=v[a+592>>2];J=hA?y:A;L=E>D?E:D;h=h>w?w:h;A=y>2]+(c<<2)>>2];g=z[f+16>>2];l=z[f>>2];i=C(g+l);g=C(Q+C(g-l));d:{if(!(C(i+g)>=D)|!(C(i-g)<=L)){break d}j=z[f+20>>2];k=z[f+4>>2];l=C(P+C(j-k));j=C(j+k);k=C(y-j);n=C(E-i);i=C(C(s*k)-C(r*n));if(!(C(C(H*g)+C(I*l))>=(i>C(0)?i:C(-i)))|!(C(j+l)>=A)|!(C(j-l)<=K)){break d}o=C(G*l);i=z[f+24>>2];j=z[f+8>>2];l=C(O+C(i-j));i=C(i+j);p=C(w-i);j=C(C(r*p)-C(q*k));if(!(C(o+C(H*l))>=(j>C(0)?j:C(-j)))|!(C(i+l)>=h)|!(C(i-l)<=J)){break d}i=C(C(G*g)+C(I*l));g=C(C(q*n)-C(s*p));if(!(i>=(g>C(0)?g:C(-g)))){break d}i=z[d>>2];z[e+12>>2]=i;if(v[f+40>>2]){while(1){a=v[f+36>>2];g=z[a- -64>>2];i=z[a+48>>2];l=C(g+i);g=C(Q+C(g-i));j=z[a+68>>2];k=z[a+52>>2];i=C(P+C(j-k));j=C(j+k);n=C(y-j);p=C(E-l);k=C(C(s*n)-C(r*p));b=C(l+g)>=D&C(l-g)<=L&C(C(H*g)+C(I*i))>=(k>C(0)?k:C(-k))&C(j+i)>=A&C(j-i)<=K;F=C(G*i);k=z[a+72>>2];o=z[a+56>>2];i=C(O+C(k-o));k=C(k+o);o=C(w-k);n=C(C(r*o)-C(q*n));M=C(C(G*g)+C(I*i));g=C(C(q*p)-C(s*o));b=b&C(F+C(H*i))>=(n>C(0)?n:C(-n))&C(k+i)>=h&C(k-i)<=J&M>=(g>C(0)?g:C(-g));i=z[a+20>>2];n=z[a+4>>2];g=C(P+C(i-n));i=C(i+n);M=C(y-i);o=z[a+16>>2];F=z[a>>2];n=C(o+F);S=C(E-n);p=C(C(s*M)-C(r*S));o=C(Q+C(o-F));f=C(n+o)>=D&C(n-o)<=L&C(C(H*o)+C(I*g))>=(p>C(0)?p:C(-p))&C(i+g)>=A&C(i-g)<=K;W=C(G*g);p=z[a+24>>2];F=z[a+8>>2];g=C(O+C(p-F));p=C(p+F);F=C(w-p);M=C(C(r*F)-C(q*M));f=f&C(W+C(H*g))>=(M>C(0)?M:C(-M))&C(p+g)>=h&C(p-g)<=J;o=C(C(G*o)+C(I*g));g=C(C(q*S)-C(s*F));f=f&o>=(g>C(0)?g:C(-g));e:{if(!(!f|!b)){b=C(C(C(k-p)*q)+C(C(C(l-n)*s)+C(r*C(j-i))))>C(0);v[v[e+1044>>2]+(c<<2)>>2]=a+B(b,48);f=a+B(!b,48)|0;c=c+1|0;if((c|0)!=(v[e+1052>>2]&2147483647)){break e}fD(e+16|0,c<<1);break e}if(!(b|f)){break d}f=f?a:a+48|0}if(v[f+40>>2]){continue}break}i=z[d>>2]}a=v[f+36>>2];b=v[a>>2];if(!b){break d}f=a+4|0;a=b;while(1){T=v[f>>2];f:{if(b>>>0>=2){N=B(T,24)+V|0;g=z[N>>2];l=z[N+12>>2];j=C(g+l);g=C(Q+C(l-g));if(!(C(j+g)>=D)|!(C(j-g)<=L)){break f}k=z[N+16>>2];n=z[N+4>>2];l=C(P+C(k-n));k=C(n+k);n=C(y-k);p=C(E-j);j=C(C(s*n)-C(r*p));if(!(C(C(H*g)+C(I*l))>=(j>C(0)?j:C(-j)))|!(C(k+l)>=A)|!(C(k-l)<=K)){break f}F=C(G*l);j=z[N+20>>2];k=z[N+8>>2];l=C(O+C(j-k));j=C(k+j);o=C(w-j);k=C(C(r*o)-C(q*n));if(!(C(F+C(H*l))>=(k>C(0)?k:C(-k)))|!(C(j+l)>=h)|!(C(j-l)<=J)){break f}j=C(C(G*g)+C(I*l));g=C(C(q*p)-C(s*o));if(!(j>=(g>C(0)?g:C(-g)))){break f}}if(!(Ba[v[v[R>>2]+8>>2]](R,e+12|0,B(T,44)+U|0)|0)){break c}g=z[e+12>>2];if(!(g>2]=g;h=C(w+C(q*g));J=hA?y:A;D=C(E+C(s*g));L=E>D?E:D;h=h>w?w:h;A=y>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[e+1044>>2];if((b|0)==(e+16|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=e+1056|0}else{a=1}xa=m- -64|0;return a|0}function Dw(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=127872;d=v[a+664>>2];a:{if((d|0)<0|!(d&2147483647)){break a}d=v[a+656>>2];if(!d){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}d=v[a+648>>2];b:{if((d|0)<0|!(d&2147483647)){break b}d=v[a+640>>2];if(!d){break b}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}d=a+112|0;b=v[d+340>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[d+340>>2]=0}b=v[d+344>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[d+344>>2]=0}b=v[d+348>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[d+348>>2]=0}b=v[d+404>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[d+396>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+392>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[d+384>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+328>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[d+320>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+316>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[d+308>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+304>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[d+296>>2];if(!b){break g}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+292>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[d+284>>2];if(!b){break h}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+280>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=v[d+272>>2];if(!b){break i}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+268>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=v[d+260>>2];if(!b){break j}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+256>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=v[d+248>>2];if(!b){break k}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+244>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=v[d+236>>2];if(!b){break l}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+232>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=v[d+224>>2];if(!b){break m}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+220>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=v[d+212>>2];if(!b){break n}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+208>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=v[d+200>>2];if(!b){break o}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+196>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=v[d+188>>2];if(!b){break p}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+184>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=v[d+176>>2];if(!b){break q}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+172>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=v[d+164>>2];if(!b){break r}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+160>>2];s:{if((b|0)<0|!(b&2147483647)){break s}b=v[d+152>>2];if(!b){break s}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+148>>2];t:{if((b|0)<0|!(b&2147483647)){break t}b=v[d+140>>2];if(!b){break t}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+136>>2];u:{if((b|0)<0|!(b&2147483647)){break u}b=v[d+128>>2];if(!b){break u}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+124>>2];v:{if((b|0)<0|!(b&2147483647)){break v}b=v[d+116>>2];if(!b){break v}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+112>>2];w:{if((b|0)<0|!(b&2147483647)){break w}b=v[d+104>>2];if(!b){break w}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+100>>2];x:{if((b|0)<0|!(b&2147483647)){break x}b=v[d+92>>2];if(!b){break x}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+88>>2];y:{if((b|0)<0|!(b&2147483647)){break y}b=v[d+80>>2];if(!b){break y}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+76>>2];z:{if((b|0)<0|!(b&2147483647)){break z}b=v[d+68>>2];if(!b){break z}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d- -64>>2];A:{if((b|0)<0|!(b&2147483647)){break A}b=v[d+56>>2];if(!b){break A}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+52>>2];B:{if((b|0)<0|!(b&2147483647)){break B}b=v[d+44>>2];if(!b){break B}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+40>>2];C:{if((b|0)<0|!(b&2147483647)){break C}d=v[d+32>>2];if(!d){break C}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[a>>2]=127652;d=v[a+88>>2];D:{if((d|0)<0|!(d&2147483647)){break D}d=v[a+80>>2];if(!d){break D}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}return a|0}function IM(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=C(0),m=0,n=0,o=0,p=0,q=0,r=0,s=C(0),t=0,u=0,w=0,y=C(0);s=C(C(1)/e);p=v[b+56>>2];a:{b:{c:{if(v[d+11968>>2]){if(f>>>0>1){break c}k=v[c+4>>2];break b}if(v[c+4>>2]&2147483647){while(1){b=v[d+12144>>2]+B(k,52)|0;l=C(0);j=0;if(f){while(1){h=v[b>>2];Ba[v[v[h>>2]+136>>2]](h,e,s,v[d+12048>>2],v[d+12060>>2],0,1,l);h=v[(v[v[b>>2]+24>>2]<<2)+149624>>2];if(h){Ba[h|0](b,e,v[d+12060>>2])}l=C(l+e);j=j+1|0;if((j|0)!=(f|0)){continue}break}}h=v[(v[v[b>>2]+24>>2]<<2)+149616>>2];if(h){Ba[h|0](b,z[a+56>>2])}j=0;if(g){while(1){h=v[b>>2];Ba[v[v[h>>2]+136>>2]](h,e,s,v[d+12048>>2],v[d+12060>>2],1,1,l);j=j+1|0;if((j|0)!=(g|0)){continue}break}}b=v[b>>2];Ba[v[v[b>>2]+140>>2]](b,1);k=k+1|0;if(k>>>0<(v[c+4>>2]&2147483647)>>>0){continue}break}}b=v[c>>2];if(!b){break a}c=p<<6;f=c+v[a+484>>2]|0;c=c+v[a+472>>2]|0;e=z[a+52>>2];d=0;while(1){d=d+1|0;a=d<<6;HM(a+c|0,a+f|0,e);if((b|0)!=(d|0)){continue}break}break a}k=v[c+4>>2];n=p<<6;q=1;while(1){i=0;if(k&2147483647){while(1){j=v[v[d+12144>>2]+B(i,52)>>2];Ba[v[v[j>>2]+136>>2]](j,e,s,v[d+12048>>2],v[d+12060>>2],0,1,l);i=i+1|0;if(i>>>0<(v[c+4>>2]&2147483647)>>>0){continue}break}}j=v[a+484>>2];m=v[d+11968>>2];if(m){o=v[b+44>>2];r=v[b+36>>2];i=0;if((m|0)!=1){w=m&-2;k=0;while(1){t=i<<3;u=t+o|0;Ba[v[(x[u+6>>1]<<2)+132448>>2]](u,r,j,C(-34028234663852886e22),l,h);t=o+(t|8)|0;Ba[v[(x[t+6>>1]<<2)+132448>>2]](t,r,j,C(-34028234663852886e22),l,h);i=i+2|0;k=k+2|0;if((w|0)!=(k|0)){continue}break}}if(m&1){i=o+(i<<3)|0;Ba[v[(x[i+6>>1]<<2)+132448>>2]](i,r,j,C(-34028234663852886e22),l,h)}j=v[a+484>>2]}k=v[c>>2];if(k){j=j+n|0;m=n+v[a+472>>2]|0;i=0;while(1){i=i+1|0;o=i<<6;HM(o+m|0,j+o|0,e);if((i|0)!=(k|0)){continue}break}}i=0;k=v[c+4>>2];if(k&2147483647){while(1){j=v[d+12144>>2]+B(i,52)|0;m=v[(v[v[j>>2]+24>>2]<<2)+149624>>2];if(m){Ba[m|0](j,e,v[d+12060>>2]);k=v[c+4>>2]}i=i+1|0;if(i>>>0<(k&2147483647)>>>0){continue}break}}l=C(l+e);q=q+1|0;if((q|0)!=(f|0)){continue}break}}if(k&2147483647){i=0;while(1){f=v[v[d+12144>>2]+B(i,52)>>2];Ba[v[v[f>>2]+136>>2]](f,e,s,v[d+12048>>2],v[d+12060>>2],0,1,l);i=i+1|0;if(i>>>0<(v[c+4>>2]&2147483647)>>>0){continue}break}}j=v[a+484>>2];f=v[d+11968>>2];if(f){m=v[b+44>>2];o=v[b+36>>2];i=0;if((f|0)!=1){r=f&-2;k=0;while(1){n=i<<3;q=n+m|0;Ba[v[(x[q+6>>1]<<2)+132544>>2]](q,o,j,l,h);n=m+(n|8)|0;Ba[v[(x[n+6>>1]<<2)+132544>>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;Ba[v[(x[f+6>>1]<<2)+132544>>2]](f,o,j,l,h)}j=v[a+484>>2]}y=z[a+56>>2];f=v[c>>2];if(f){i=p<<6;j=i+j|0;k=i+v[a+472>>2]|0;i=0;while(1){i=i+1|0;p=i<<6;HM(p+k|0,j+p|0,e);if((f|0)!=(i|0)){continue}break}}j=v[c+4>>2];d:{if(!(j&2147483647)){break d}i=0;while(1){f=v[d+12144>>2]+B(i,52)|0;k=v[(v[v[f>>2]+24>>2]<<2)+149624>>2];if(k){Ba[k|0](f,e,v[d+12060>>2]);j=v[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=v[d+12144>>2]+B(i,52)|0;k=v[(v[v[f>>2]+24>>2]<<2)+149616>>2];if(k){Ba[k|0](f,y);j=v[c+4>>2]}i=i+1|0;if(i>>>0<(j&2147483647)>>>0){continue}break}}if(g){l=C(l+e);o=0;while(1){i=0;if(v[c+4>>2]&2147483647){while(1){f=v[v[d+12144>>2]+B(i,52)>>2];Ba[v[v[f>>2]+136>>2]](f,e,s,v[d+12048>>2],v[d+12060>>2],0,1,l);i=i+1|0;if(i>>>0<(v[c+4>>2]&2147483647)>>>0){continue}break}}f=v[d+11968>>2];e:{if(!f){break e}j=v[a+484>>2];p=v[b+44>>2];m=v[b+36>>2];i=0;if((f|0)!=1){r=f&-2;k=0;while(1){n=i<<3;q=n+p|0;Ba[v[(x[q+6>>1]<<2)+132448>>2]](q,m,j,C(0),l,h);n=p+(n|8)|0;Ba[v[(x[n+6>>1]<<2)+132448>>2]](n,m,j,C(0),l,h);i=i+2|0;k=k+2|0;if((r|0)!=(k|0)){continue}break}}if(!(f&1)){break e}f=p+(i<<3)|0;Ba[v[(x[f+6>>1]<<2)+132448>>2]](f,m,j,C(0),l,h)}o=o+1|0;if((o|0)!=(g|0)){continue}break}}a=v[d+11968>>2];f:{if(!a){break f}f=v[b+36>>2];b=v[b+44>>2];i=0;if((a|0)!=1){g=a&-2;k=0;while(1){h=i<<3;j=h+b|0;Ba[v[(x[j+6>>1]<<2)+132496>>2]](j,f,0);h=b+(h|8)|0;Ba[v[(x[h+6>>1]<<2)+132496>>2]](h,f,0);i=i+2|0;k=k+2|0;if((g|0)!=(k|0)){continue}break}}if(!(a&1)){break f}a=b+(i<<3)|0;Ba[v[(x[a+6>>1]<<2)+132496>>2]](a,f,0)}if(!(v[c+4>>2]&2147483647)){break a}i=0;while(1){a=v[v[d+12144>>2]+B(i,52)>>2];Ba[v[v[a>>2]+140>>2]](a,1);i=i+1|0;if(i>>>0<(v[c+4>>2]&2147483647)>>>0){continue}break}}}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,n=0,o=0,p=0,q=0,r=0,s=0,u=0,x=0;n=v[a+28>>2];a:{if((n|0)!=v[a+24>>2]){c=v[a+20>>2];d=n;break a}d=n+1|0;b:{if(!d){break b}o=4;c=a+4|0;if(d>>>0<=4){break b}i=v[a+40>>2];c:{d:{e:{f:{g:{c=n>>>1|n;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=v[i+388>>2];if(!c){j=xa-16|0;xa=j;g=i+100|0;d=v[g+284>>2];if(d){c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?52491:63804;h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,e,18373,180)|0}else{h=0}v[j+12>>2]=h;c=v[g+268>>2];h:{if(c>>>0>=(v[g+272>>2]&2147483647)>>>0){c=0;e=g+4|0;d=v[e+268>>2];k=d&2147483647?d<<1:1;i:{if(!k){break i}d=k<<2;if(!(w[e+256|0]|d>>>0>256)){t[e+256|0]=1;c=e;break i}if(!d){break i}c=v[37696];f=c+12|0;c=(q=f,r=d,s=Ba[v[v[c>>2]+20>>2]](c)|0?52491:63804,u=16608,x=553,p=v[v[f>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}f=v[e+264>>2];m=(f<<2)+c|0;if((f|0)>0){l=v[e+260>>2];d=c;while(1){v[d>>2]=v[l>>2];l=l+4|0;d=d+4|0;if(m>>>0>d>>>0){continue}break}}v[m>>2]=v[j+12>>2];j:{if(v[e+268>>2]<0){break j}d=v[e+260>>2];if((d|0)==(e|0)){t[e+256|0]=0;break j}if(!d){break j}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d);f=v[e+264>>2]}v[e+268>>2]=k;v[e+260>>2]=c;v[e+264>>2]=f+1;break h}v[v[g+264>>2]+(c<<2)>>2]=h;v[g+268>>2]=c+1}c=(h+(v[g+276>>2]<<5)|0)-32|0;if(h>>>0<=c>>>0){d=v[g+288>>2];while(1){v[c>>2]=d;d=c;c=c-32|0;if(h>>>0<=c>>>0){continue}break}v[g+288>>2]=d}xa=j+16|0;c=v[i+388>>2]}v[i+388>>2]=v[c>>2];v[i+380>>2]=v[i+380>>2]+1;break c}c=v[i+680>>2];if(!c){j=xa-16|0;xa=j;g=i+392|0;d=v[g+284>>2];if(d){c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?52957:63804;h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,e,18373,180)|0}else{h=0}v[j+12>>2]=h;c=v[g+268>>2];k:{if(c>>>0>=(v[g+272>>2]&2147483647)>>>0){c=0;e=g+4|0;d=v[e+268>>2];k=d&2147483647?d<<1:1;l:{if(!k){break l}d=k<<2;if(!(w[e+256|0]|d>>>0>256)){t[e+256|0]=1;c=e;break l}if(!d){break l}c=v[37696];f=c+12|0;c=(x=f,u=d,s=Ba[v[v[c>>2]+20>>2]](c)|0?52957:63804,r=16608,q=553,p=v[v[f>>2]+8>>2],Ba[p](x|0,u|0,s|0,r|0,q|0)|0)}f=v[e+264>>2];m=(f<<2)+c|0;if((f|0)>0){l=v[e+260>>2];d=c;while(1){v[d>>2]=v[l>>2];l=l+4|0;d=d+4|0;if(m>>>0>d>>>0){continue}break}}v[m>>2]=v[j+12>>2];m:{if(v[e+268>>2]<0){break m}d=v[e+260>>2];if((d|0)==(e|0)){t[e+256|0]=0;break m}if(!d){break m}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d);f=v[e+264>>2]}v[e+268>>2]=k;v[e+260>>2]=c;v[e+264>>2]=f+1;break k}v[v[g+264>>2]+(c<<2)>>2]=h;v[g+268>>2]=c+1}c=(h+(v[g+276>>2]<<6)|0)+-64|0;if(h>>>0<=c>>>0){d=v[g+288>>2];while(1){v[c>>2]=d;d=c;c=c+-64|0;if(h>>>0<=c>>>0){continue}break}v[g+288>>2]=d}xa=j+16|0;c=v[i+680>>2]}v[i+680>>2]=v[c>>2];v[i+672>>2]=v[i+672>>2]+1;break c}c=v[i+972>>2];if(!c){j=xa-16|0;xa=j;g=i+684|0;d=v[g+284>>2];if(d){c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?54083:63804;h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,e,18373,180)|0}else{h=0}v[j+12>>2]=h;c=v[g+268>>2];n:{if(c>>>0>=(v[g+272>>2]&2147483647)>>>0){c=0;e=g+4|0;d=v[e+268>>2];k=d&2147483647?d<<1:1;o:{if(!k){break o}d=k<<2;if(!(w[e+256|0]|d>>>0>256)){t[e+256|0]=1;c=e;break o}if(!d){break o}c=v[37696];f=c+12|0;c=(q=f,r=d,s=Ba[v[v[c>>2]+20>>2]](c)|0?54083:63804,u=16608,x=553,p=v[v[f>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}f=v[e+264>>2];m=(f<<2)+c|0;if((f|0)>0){l=v[e+260>>2];d=c;while(1){v[d>>2]=v[l>>2];l=l+4|0;d=d+4|0;if(m>>>0>d>>>0){continue}break}}v[m>>2]=v[j+12>>2];p:{if(v[e+268>>2]<0){break p}d=v[e+260>>2];if((d|0)==(e|0)){t[e+256|0]=0;break p}if(!d){break p}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d);f=v[e+264>>2]}v[e+268>>2]=k;v[e+260>>2]=c;v[e+264>>2]=f+1;break n}v[v[g+264>>2]+(c<<2)>>2]=h;v[g+268>>2]=c+1}c=(h+(v[g+276>>2]<<7)|0)-128|0;if(h>>>0<=c>>>0){d=v[g+288>>2];while(1){v[c>>2]=d;d=c;c=c-128|0;if(h>>>0<=c>>>0){continue}break}v[g+288>>2]=d}xa=j+16|0;c=v[i+972>>2]}v[i+972>>2]=v[c>>2];v[i+964>>2]=v[i+964>>2]+1;break c}c=0;d=d<<2;if(!d){break c}c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,24422,11777,1342)|0}}d=v[a+20>>2];q:{if(!d){break q}H9(c,d,n<<2);d=v[a+20>>2];if((d|0)==(a+4|0)){break q}aP(v[a+40>>2],d,v[a+24>>2])}v[a+20>>2]=c;v[a+24>>2]=o;d=v[a+28>>2]}v[a+28>>2]=d+1;v[(d<<2)+c>>2]=b;v[(v[b>>2]==(a|0)?12:16)+b>>2]=n}function Un(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,u=0;d=v[37696];a=Ba[v[v[d>>2]+20>>2]](d)|0?41765:63804;e=Ba[v[v[d+12>>2]+8>>2]](d+12|0,52,a,7621,560)|0;t[e+48|0]=1;v[e+40>>2]=0;v[e+44>>2]=0;v[e+4>>2]=196624;v[e>>2]=129560;v[e+8>>2]=0;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;g=xa-144|0;xa=g;a:{b:{if(!c){break b}u=1;c:{while(1){q=l+1|0;d:{if(q>>>0>=c>>>0){break d}s=0;f=0;i=0;h=v[(q<<2)+b>>2];a=h;d=a+319|0;i=d>>>0<319?1:i;d=i<<26|d>>>6;k=a>>>6|0;a=(i>>>6|0)-(k>>>0>d>>>0)|0;j=d-k|0;i=a;k=0;m=k;d=j+1|0;a=d?a:a+1|0;n=d&7;if(k|n){while(1){k=d;d=d-1|0;a=a-!k|0;h=h- -64|0;k=f;f=s+1|0;k=f?k:k+1|0;s=f;f=k;if((n|0)!=(s|0)|(m|0)!=(f|0)){continue}break}}if(!i&j>>>0<7){break d}while(1){h=h+512|0;a=a-(d>>>0<8)|0;d=d-8|0;if(a|d){continue}break}}e:{k=(l<<2)+b|0;i=v[k>>2];d=x[i+4>>1];switch(v[(v[((d<<2)+86240|0)+72>>2]+i|0)+4>>2]>>>30|0){case 0:case 3:break e;default:break c}}f:{f=Ba[v[v[i>>2]+92>>2]](i)|0;if(f){h=0;g:{if((d|0)!=6){j=0;while(1){Ba[v[v[i>>2]+96>>2]](i,g+16|0,1,h)|0;a=v[g+16>>2];Ba[v[v[a>>2]+156>>2]](g,a);a=(w[g|0]&2)>>>1|0;j=a|j;o=a+o|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}break g}j=0;while(1){Ba[v[v[i>>2]+96>>2]](i,g+16|0,1,h)|0;a=v[g+16>>2];Ba[v[v[a>>2]+156>>2]](g,a);a=(w[g|0]&2)>>>1|0;j=a|j;p=a+p|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}if(j&1){break f}}a9(v[37696],4,11218,190,73432,0);break a}h:{i:{switch(d-5|0){case 1:h=v[k>>2]+40|0;if(!v[h>>2]){break h}a9(v[37696],4,11218,199,73360,0);break a;case 0:h=v[k>>2]+40|0;if(!v[h>>2]){break h}a9(v[37696],4,11218,209,73360,0);break a;default:break i}}a9(v[37696],4,11218,216,72861,0);break a}u=c>>>0>q>>>0;v[h>>2]=e;l=q;if((l|0)!=(c|0)){continue}break}a=0;f=0;j:{if(!p){break j}d=B(p,24)+24|0;f=0;if(!d){break j}f=v[37696]+12|0;f=Ba[v[v[f>>2]+8>>2]](f,d,24422,11218,227)|0}k:{if(!o){break k}d=B(o,24)+24|0;if(!d){break k}a=v[37696]+12|0;a=Ba[v[v[a>>2]+8>>2]](a,d,24422,11218,227)|0}p=v[32386];q=v[32387];j=0;o=0;while(1){l:{m:{n:{m=v[(j<<2)+b>>2];switch(x[m+4>>1]-5|0){case 0:break m;case 1:break n;default:break l}}i=Ba[v[v[m>>2]+92>>2]](m)|0;if(!i){break l}k=m+48|0;d=m+20|0;h=B(o,24)+f|0;l=0;while(1){n=v[(l<<2)+(x[m+24>>1]==1?d:v[m+20>>2])>>2];Ba[v[v[n>>2]+156>>2]](g+16|0,n);if(w[g+16|0]&2){Ba[p|0](h,n+32|0,k);h=h+24|0;o=o+1|0}l=l+1|0;if((i|0)!=(l|0)){continue}break}break l}i=Ba[v[v[m>>2]+92>>2]](m)|0;if(!i){break l}k=m+48|0;d=m+20|0;h=B(r,24)+a|0;l=0;while(1){n=v[(l<<2)+(x[m+24>>1]==1?d:v[m+20>>2])>>2];Ba[v[v[n>>2]+156>>2]](g+16|0,n);if(w[g+16|0]&2){Ba[q|0](h,n+32|0,k);h=h+24|0;r=r+1|0}l=l+1|0;if((i|0)!=(l|0)){continue}break}}j=j+1|0;if((j|0)!=(c|0)){continue}break}p=a;break b}a9(v[37696],4,11218,167,73497,0);break a}i=IB(g+16|0);k=IB(i- -64|0);v[e+24>>2]=o;o:{if(!o){break o}v[g+8>>2]=f;v[g+4>>2]=o;h=0;v[g+12>>2]=0;v[g>>2]=4;MB(i,g);a=v[i+40>>2];v[e+8>>2]=a;d=B(a,28);p:{if(!d){j=0;a=0;break p}a=v[37696]+12|0;j=Ba[v[v[a>>2]+8>>2]](a,d,24422,11218,267)|0;a=B(v[e+8>>2],28)}v[e+16>>2]=j;H9(j,v[i+8>>2],a);d=v[e+24>>2]<<2;q:{if(!d){j=0;break q}a=v[37696]+12|0;j=Ba[v[v[a>>2]+8>>2]](a,d,24422,11218,269)|0;h=v[e+24>>2]<<2}v[e+32>>2]=j;H9(j,v[i>>2],h);if(f){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,f)}v[g+8>>2]=0;v[g>>2]=0;v[g+4>>2]=0;f=v[g+12>>2];if(!f){break o}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,f)}v[e+28>>2]=r;r:{if(!r){break r}v[g+8>>2]=p;v[g+4>>2]=r;h=0;v[g+12>>2]=0;v[g>>2]=4;MB(k,g);a=v[i+104>>2];v[e+12>>2]=a;f=B(a,28);s:{if(!f){j=0;a=0;break s}a=v[37696]+12|0;j=Ba[v[v[a>>2]+8>>2]](a,f,24422,11218,267)|0;a=B(v[e+12>>2],28)}v[e+20>>2]=j;H9(j,v[i+72>>2],a);f=v[e+28>>2]<<2;t:{if(!f){j=0;break t}a=v[37696]+12|0;j=Ba[v[v[a>>2]+8>>2]](a,f,24422,11218,269)|0;h=v[e+28>>2]<<2}v[e+36>>2]=j;H9(j,v[k>>2],h);if(p){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,p)}v[g+8>>2]=0;v[g>>2]=0;v[g+4>>2]=0;f=v[g+12>>2];if(!f){break r}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,f)}v[e+40>>2]=c;c=c<<2;u:{if(!c){l=0;a=0;break u}a=v[37696]+12|0;l=Ba[v[v[a>>2]+8>>2]](a,c,24422,11218,279)|0;a=v[e+40>>2]<<2}v[e+44>>2]=l;H9(l,b,a);JB(i- -64|0);JB(i)}xa=g+144|0;if(!((u^-1)&1)){Ba[v[v[e>>2]+16>>2]](e);e=0}return e|0}function P$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=0;f=xa-240|0;xa=f;j=z[d+8>>2];g=z[d>>2];i=z[d+4>>2];a:{if(!(g!=C(1)|i!=C(1)|j!=C(1))){u[f+144>>1]=0;v[f+140>>2]=e;v[f+132>>2]=2;v[f+128>>2]=143660;v[f+136>>2]=f- -64;l=z[a+24>>2];j=z[c+8>>2];q=z[c+24>>2];i=C(z[a+8>>2]-q);h=C(i+i);i=z[c>>2];s=z[c+16>>2];g=C(z[a>>2]-s);k=C(g+g);y=z[c+20>>2];g=C(z[a+4>>2]-y);n=C(g+g);g=z[c+4>>2];p=C(C(j*h)+C(C(i*k)+C(n*g)));m=z[c+12>>2];o=C(C(m*m)+C(-.5));r=C(C(j*p)+C(C(h*o)-C(m*C(C(i*n)-C(k*g)))));z[f+156>>2]=r;x=C(C(g*p)+C(C(n*o)-C(m*C(C(j*k)-C(h*i)))));z[f+152>>2]=x;A=C(C(i*p)+C(C(k*o)-C(m*C(C(g*h)-C(n*j)))));z[f+148>>2]=A;n=z[a+16>>2];h=z[a+20>>2];k=z[a+12>>2];z[f+172>>2]=l;h=C(h-q);h=C(h+h);k=C(k-s);k=C(k+k);n=C(n-y);n=C(n+n);p=C(C(j*h)+C(C(i*k)+C(g*n)));q=C(C(j*p)+C(C(h*o)-C(m*C(C(i*n)-C(k*g)))));z[f+168>>2]=q;s=C(C(g*p)+C(C(n*o)-C(m*C(C(j*k)-C(h*i)))));z[f+164>>2]=s;g=C(C(i*p)+C(C(k*o)-C(m*C(C(g*h)-C(n*j)))));z[f+160>>2]=g;j=C(q-r);z[f+184>>2]=j;i=C(s-x);z[f+180>>2]=i;g=C(g-A);m=C(C(j*j)+C(C(g*g)+C(i*i)));z[f+188>>2]=m;z[f+192>>2]=m!=C(0)?C(C(1)/m):C(0);z[f+176>>2]=g;z[f+8>>2]=l;z[f+4>>2]=l;z[f>>2]=l;z[f+208>>2]=j;z[f+204>>2]=i;z[f+200>>2]=g;a=xa-288|0;xa=a;i=z[b+60>>2];c=w[b+64|0];d=v[b+28>>2];e=v[b+24>>2];v[a+36>>2]=143304;v[a+56>>2]=f;v[a+32>>2]=143280;J=a,K=Vaa(e,d),v[J+48>>2]=K;v[a+52>>2]=Aa;v[a+44>>2]=c>>>1&1;v[a+40>>2]=f+128;c=f+148|0;g=z[c>>2];z[a+60>>2]=g;m=z[c+4>>2];z[a- -64>>2]=m;o=z[c+8>>2];z[a+68>>2]=o;d=f+200|0;l=z[d>>2];z[a+72>>2]=l;h=z[d+4>>2];z[a+76>>2]=h;j=z[d+8>>2];v[a+112>>2]=0;v[a+116>>2]=0;u[a+108>>1]=0;v[a+104>>2]=-1;z[a+88>>2]=i;t[a+84|0]=1;z[a+80>>2]=j;v[a+120>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+144>>2]=0;v[a+136>>2]=2139095039;v[a+140>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;z[a+92>>2]=1;e=v[f+132>>2];t[a+208|0]=0;t[a+209|0]=(e|0)==1;e=v[f+4>>2];I=v[f>>2];i=z[f+8>>2];v[a+268>>2]=0;z[a+264>>2]=j;z[a+260>>2]=h;v[a+252>>2]=0;z[a+248>>2]=o;z[a+244>>2]=m;v[a+236>>2]=0;z[a+232>>2]=i;z[a+256>>2]=l;z[a+240>>2]=g;v[a+224>>2]=I;v[a+228>>2]=e;A0(b+112|0,c,d,a+32|0,f,C(1));v[a+36>>2]=143304;v[a+32>>2]=143280;if(w[a+208|0]){b=v[a+40>>2];Ba[v[v[b>>2]>>2]](b,a+96|0,a+160|0,a+172|0,a+184|0,a+92|0,a+196|0)|0}xa=a+288|0;break a}o=z[d+12>>2];m=C(o+o);l=z[d+16>>2];h=C(l+l);A=C(C(1)-C(o*m));B=C(l*h);k=C(A-B);n=C(j*k);o=z[d+20>>2];D=C(m*o);r=z[d+24>>2];E=C(h*r);p=C(D+E);q=C(g*p);y=C(h*o);x=C(m*r);h=C(y-x);s=C(i*h);z[f+232>>2]=C(k*n)+C(C(p*q)+C(h*s));y=C(y+x);x=C(j*y);F=C(m*l);l=C(o+o);G=C(r*l);m=C(F-G);r=C(g*m);H=C(o*l);o=C(A-H);A=C(i*o);z[f+228>>2]=C(k*x)+C(C(p*r)+C(h*A));z[f+220>>2]=C(y*n)+C(C(m*q)+C(o*s));z[f+216>>2]=C(y*x)+C(C(m*r)+C(o*A));l=C(D-E);D=C(l*n);n=C(C(C(1)-B)-H);B=C(n*q);q=C(F+G);z[f+208>>2]=D+C(B+C(q*s));z[f+204>>2]=C(l*x)+C(C(n*r)+C(q*A));r=k;k=C(j*l);s=p;p=C(g*n);x=h;h=C(i*q);z[f+224>>2]=C(r*k)+C(C(s*p)+C(x*h));z[f+212>>2]=C(y*k)+C(C(m*p)+C(o*h));z[f+200>>2]=C(l*k)+C(C(n*p)+C(q*h));t[f+145|0]=C(C(g*i)*j)>2]=e;v[f+132>>2]=2;v[f+128>>2]=143692;v[f+136>>2]=f+200;p=z[a+24>>2];j=z[c+8>>2];q=z[c+24>>2];i=C(z[a+8>>2]-q);l=C(i+i);i=z[c>>2];s=z[c+16>>2];g=C(z[a>>2]-s);h=C(g+g);y=z[c+20>>2];g=C(z[a+4>>2]-y);k=C(g+g);g=z[c+4>>2];n=C(C(j*l)+C(C(i*h)+C(k*g)));m=z[c+12>>2];o=C(C(m*m)+C(-.5));r=C(C(j*n)+C(C(l*o)-C(m*C(C(i*k)-C(h*g)))));z[f+156>>2]=r;x=C(C(g*n)+C(C(k*o)-C(m*C(C(j*h)-C(l*i)))));z[f+152>>2]=x;A=C(C(i*n)+C(C(h*o)-C(m*C(C(g*l)-C(k*j)))));z[f+148>>2]=A;k=z[a+16>>2];l=z[a+20>>2];h=z[a+12>>2];z[f+172>>2]=p;l=C(l-q);l=C(l+l);h=C(h-s);h=C(h+h);k=C(k-y);k=C(k+k);n=C(C(j*l)+C(C(i*h)+C(g*k)));p=C(C(j*n)+C(C(l*o)-C(m*C(C(i*k)-C(h*g)))));z[f+168>>2]=p;q=C(C(g*n)+C(C(k*o)-C(m*C(C(j*h)-C(l*i)))));z[f+164>>2]=q;g=C(C(i*n)+C(C(h*o)-C(m*C(C(g*l)-C(k*j)))));z[f+160>>2]=g;j=C(p-r);z[f+184>>2]=j;i=C(q-x);z[f+180>>2]=i;g=C(g-A);z[f+176>>2]=g;j=C(C(j*j)+C(C(g*g)+C(i*i)));z[f+188>>2]=j;z[f+192>>2]=j!=C(0)?C(C(1)/j):C(0);DV(f,a);a=f- -64|0;q_(a,f,c,d);G$(a,1,b,f+128|0,1)}xa=f+240|0;return w[f+144|0]!=0|0}function r1(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=0,D=C(0),E=C(0),F=0,G=0,H=0,I=C(0),J=C(0),L=0,M=0;o=xa-672|0;xa=o;a:{if(!f){break a}F=w[h+64|0];if(F){A=1;H=v[h+76>>2];p=z[H+40>>2];r=z[H+36>>2];s=z[H+32>>2];b:{if((F|0)==1){break b}G=F-1|0;L=G&1;if((F|0)!=2){M=G&-2;F=0;while(1){G=B(A,48)+H|0;s=C(C(s+z[G+32>>2])+z[G+80>>2]);p=C(C(p+z[G+40>>2])+z[G+88>>2]);r=C(C(r+z[G+36>>2])+z[G+84>>2]);A=A+2|0;F=F+2|0;if((M|0)!=(F|0)){continue}break}}if(!L){break b}A=B(A,48)+H|0;s=C(s+z[A+32>>2]);p=C(p+z[A+40>>2]);r=C(r+z[A+36>>2])}q=p;p=C(C(1)/C(K(C(C(p*p)+C(C(s*s)+C(r*r))))));q=C(q*p);y=C(s*p);p=C(r*p)}else{p=C(0)}r=z[k>>2];z[o+32>>2]=n;z[o+48>>2]=r*C(.05000000074505806);k=v[o+60>>2];v[o+24>>2]=v[o+56>>2];v[o+28>>2]=k;k=v[o+44>>2];v[o+8>>2]=v[o+40>>2];v[o+12>>2]=k;k=v[o+36>>2];v[o>>2]=v[o+32>>2];v[o+4>>2]=k;k=v[o+52>>2];v[o+16>>2]=v[o+48>>2];v[o+20>>2]=k;c:{e=$1(a,b,e,f,i,o+16|0,o,g,h);d:{if(e){break d}D=z[g+40>>2];E=z[g+32>>2];u=z[g+36>>2];if(C(C(q*D)+C(C(y*E)+C(p*u)))=j>>>0){break c}}f=g+32|0;b=v[b+4>>2];a=v[a+4>>2];j=v[a+52>>2];k=v[a+48>>2];z[o+592>>2]=z[a+56>>2];v[o+584>>2]=k;v[o+588>>2]=j;j2(y_(o+352|0,o+584|0),o+600|0);v[o+632>>2]=103120;k2(b,m,o+280|0);v[o+248>>2]=0;v[o+252>>2]=0;v[o+244>>2]=1065353216;v[o+256>>2]=0;v[o+260>>2]=0;v[o+264>>2]=1065353216;v[o+268>>2]=0;v[o+228>>2]=0;v[o+232>>2]=0;v[o+224>>2]=1065353216;v[o+236>>2]=0;v[o+240>>2]=0;t[o+204|0]=1;v[o+192>>2]=c;v[o+208>>2]=a;v[o+160>>2]=141108;c=o+224|0;v[o+200>>2]=c;v[o+196>>2]=c;v[o+136>>2]=b+96;v[o+132>>2]=b+48;v[o+128>>2]=d;c=g+16|0;e:{if(m){t[o+140|0]=1;v[o+96>>2]=141020;break e}t[o+140|0]=0;v[o+96>>2]=141068}v[o+144>>2]=b;v[o+92>>2]=0;F=W1(o+600|0,o+280|0,o+160|0,o+96|0,i,o+92|0,l,f,g,c,z[a+16>>2],z[b+16>>2],e,n);if(!F){break a}a=v[o+92>>2];if(a){s2(h,i,a,n);c=v[h+76>>2];n=z[c+32>>2];p=n;x=z[c+36>>2];r=x;q=z[c+40>>2];s=q;a=w[h+64|0];f:{if(a>>>0<2){break f}A=1;b=a-1|0;e=b&1;s=q;r=x;p=n;if((a|0)!=2){f=b&-2;a=0;while(1){b=c+B(A,48)|0;p=C(C(p+z[b+32>>2])+z[b+80>>2]);s=C(C(s+z[b+40>>2])+z[b+88>>2]);r=C(C(r+z[b+36>>2])+z[b+84>>2]);A=A+2|0;a=a+2|0;if((f|0)!=(a|0)){continue}break}}if(!e){break f}a=c+B(A,48)|0;p=C(p+z[a+32>>2]);s=C(s+z[a+40>>2]);r=C(r+z[a+36>>2])}D=z[d+4>>2];E=z[d+8>>2];u=z[d>>2];y=z[d+12>>2];v[o+76>>2]=0;a=C(C(s*s)+C(C(p*p)+C(r*r)))>C(1.1920928955078125e-7);s=a?s:q;n=a?p:n;p=a?r:x;r=C(C(E*s)+C(C(u*n)+C(D*p)));x=C(C(y*y)+C(-.5));q=C(C(E*r)+C(C(y*C(C(u*p)-C(n*D)))+C(s*x)));q=C(q+q);I=q;J=C(q*q);q=C(C(u*r)+C(C(y*C(C(D*s)-C(p*E)))+C(n*x)));q=C(q+q);n=C(C(D*r)+C(C(y*C(C(E*n)-C(s*u)))+C(p*x)));n=C(n+n);p=C(C(1)/C(K(C(J+C(C(q*q)+C(n*n))))));z[o+72>>2]=I*p;z[o+68>>2]=n*p;z[o+64>>2]=q*p;q2(h,i,o- -64|0,d,l);break a}if(e){break a}c=v[h+76>>2];n=z[c+32>>2];p=n;x=z[c+36>>2];r=x;q=z[c+40>>2];s=q;a=w[h+64|0];g:{if(a>>>0<2){break g}A=1;b=a-1|0;e=b&1;s=q;r=x;p=n;if((a|0)!=2){f=b&-2;a=0;while(1){b=c+B(A,48)|0;p=C(C(p+z[b+32>>2])+z[b+80>>2]);s=C(C(s+z[b+40>>2])+z[b+88>>2]);r=C(C(r+z[b+36>>2])+z[b+84>>2]);A=A+2|0;a=a+2|0;if((f|0)!=(a|0)){continue}break}}if(!e){break g}a=c+B(A,48)|0;p=C(p+z[a+32>>2]);s=C(s+z[a+40>>2]);r=C(r+z[a+36>>2])}D=z[d+4>>2];E=z[d+8>>2];u=z[d>>2];y=z[d+12>>2];v[o+76>>2]=0;a=C(C(s*s)+C(C(p*p)+C(r*r)))>C(1.1920928955078125e-7);s=a?s:q;n=a?p:n;p=a?r:x;r=C(C(E*s)+C(C(u*n)+C(D*p)));x=C(C(y*y)+C(-.5));q=C(C(E*r)+C(C(y*C(C(u*p)-C(n*D)))+C(s*x)));q=C(q+q);I=q;J=C(q*q);q=C(C(u*r)+C(C(y*C(C(D*s)-C(p*E)))+C(n*x)));q=C(q+q);n=C(C(D*r)+C(C(y*C(C(E*n)-C(s*u)))+C(p*x)));n=C(n+n);p=C(C(1)/C(K(C(J+C(C(q*q)+C(n*n))))));z[o+72>>2]=I*p;z[o+68>>2]=n*p;z[o+64>>2]=q*p;q2(h,i,o- -64|0,d,l);break a}r=z[d+4>>2];s=z[d+8>>2];x=z[d>>2];n=z[d+12>>2];v[o+364>>2]=0;q=C(q+D);y=C(y+E);p=C(p+u);D=C(C(s*q)+C(C(x*y)+C(r*p)));E=C(C(n*n)+C(-.5));u=C(C(s*D)+C(C(n*C(C(x*p)-C(y*r)))+C(q*E)));u=C(u+u);I=u;J=C(u*u);u=C(C(x*D)+C(C(n*C(C(r*q)-C(p*s)))+C(y*E)));u=C(u+u);n=C(C(r*D)+C(C(n*C(C(s*y)-C(q*x)))+C(p*E)));n=C(n+n);p=C(C(1)/C(K(C(J+C(C(u*u)+C(n*n))))));z[o+360>>2]=I*p;z[o+356>>2]=n*p;z[o+352>>2]=u*p;q2(h,i,o+352|0,d,l);F=1}xa=o+672|0;return F}function Wm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;v[a>>2]=121908;if(v[a+872>>2]){d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[a+880>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];a:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;b:{if(!f){break b}e=f<<2;if(!e){break b}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?53423:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,b,16608,553)|0}h=v[d+20>>2];e=(h<<2)+c|0;if((h|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[e>>2]=v[d+8>>2];c:{if(v[d+24>>2]<0){break c}e=v[d+16>>2];if(!e){break c}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);h=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=c;v[d+20>>2]=h+1;break a}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[a+880>>2]>>2];v[a+880>>2]=c;if(c){continue}break}b=v[d+16>>2];c=v[d+20>>2]}else{c=0}g=b;b=d+8|0;Ym(g,c,b);Ym(v[a+856>>2],v[a+860>>2],b);b=v[d+24>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=v[d+16>>2];if(!c){break d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}xa=d+32|0}c=v[a+856>>2];b=v[a+860>>2];if(b){f=(b<<2)+c|0;while(1){e=v[c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((f|0)!=(c|0)){continue}break}c=v[a+856>>2]}b=v[a+864>>2];e:{if((b|0)<0|!(b&2147483647)){break e}if((a+596|0)==(c|0)){t[a+852|0]=0;break e}if(!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[a+580>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[a+588>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];f:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;g:{if(!f){break g}e=f<<2;if(!e){break g}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?52793:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,b,16608,553)|0}h=v[d+20>>2];e=(h<<2)+c|0;if((h|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[e>>2]=v[d+8>>2];h:{if(v[d+24>>2]<0){break h}e=v[d+16>>2];if(!e){break h}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);h=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=c;v[d+20>>2]=h+1;break f}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[a+588>>2]>>2];v[a+588>>2]=c;if(c){continue}break}b=v[d+16>>2];c=v[d+20>>2]}else{c=0}g=b;b=d+8|0;Zm(g,c,b);Zm(v[a+564>>2],v[a+568>>2],b);b=v[d+24>>2];i:{if((b|0)<0|!(b&2147483647)){break i}c=v[d+16>>2];if(!c){break i}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}xa=d+32|0}c=v[a+564>>2];b=v[a+568>>2];if(b){f=(b<<2)+c|0;while(1){e=v[c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((f|0)!=(c|0)){continue}break}c=v[a+564>>2]}b=v[a+572>>2];j:{if((b|0)<0|!(b&2147483647)){break j}if((a+304|0)==(c|0)){t[a+560|0]=0;break j}if(!c){break j}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[a+288>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[a+296>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];k:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;l:{if(!f){break l}e=f<<2;if(!e){break l}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?53101:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,b,16608,553)|0}h=v[d+20>>2];e=(h<<2)+c|0;if((h|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[e>>2]=v[d+8>>2];m:{if(v[d+24>>2]<0){break m}e=v[d+16>>2];if(!e){break m}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);h=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=c;v[d+20>>2]=h+1;break k}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[a+296>>2]>>2];v[a+296>>2]=c;if(c){continue}break}b=v[d+16>>2];c=v[d+20>>2]}else{c=0}g=b;b=d+8|0;_m(g,c,b);_m(v[a+272>>2],v[a+276>>2],b);b=v[d+24>>2];n:{if((b|0)<0|!(b&2147483647)){break n}c=v[d+16>>2];if(!c){break n}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}xa=d+32|0}c=v[a+272>>2];b=v[a+276>>2];if(b){f=(b<<2)+c|0;while(1){e=v[c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((f|0)!=(c|0)){continue}break}c=v[a+272>>2]}b=v[a+280>>2];o:{if((b|0)<0|!(b&2147483647)){break o}if((a+12|0)==(c|0)){t[a+268|0]=0;break o}if(!c){break o}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+4>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}return a|0}function IR(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=C(0),p=C(0),q=0,r=0,s=0,x=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0;n=xa-16|0;xa=n;q=v[v[a+4>>2]+40>>2];c=v[q+976>>2];r=v[a+44>>2];x=r&2048;s=x>>>11|0;a:{if(!b){d=v[c+328>>2];b:{if(!d){e=B(v[c+312>>2],80);c:{if(!e){break c}d=v[37696];h=Ba[v[v[d>>2]+20>>2]](d)|0?33299:63804;k=Ba[v[v[d+12>>2]+8>>2]](d+12|0,e,h,18447,236)|0;if(!k){break c}d=v[c+316>>2];f=d+1|0;h=v[c+312>>2];i=B(f,h);e=v[c+344>>2];d:{if(i>>>0<=e<<5>>>0){e=v[c+332>>2];break d}d=(i<<1)+31>>>5|0;if(d>>>0>(e&2147483647)>>>0){e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,d<<2,24422,17999,438)|0;h=v[c+340>>2];e:{if(!h){break e}H9(e,h,v[c+344>>2]<<2);if(v[c+344>>2]<0){break e}h=v[c+340>>2];if(!h){break e}i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,h)}h=v[c+344>>2];I9(e+(h<<2)|0,0,d-h<<2);v[c+344>>2]=d;v[c+340>>2]=e}d=v[c+324>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}e=0;d=c;i=f<<3;j=B(i,v[c+312>>2]);if(j){h=v[37696];l=Ba[v[v[h>>2]+20>>2]](h)|0?33299:63804;h=Ba[v[v[h+12>>2]+8>>2]](h+12|0,j,l,18447,248)|0}else{h=0}v[d+324>>2]=h;if(i){d=v[37696];e=Ba[v[v[d>>2]+20>>2]](d)|0?33299:63804;e=Ba[v[v[d+12>>2]+8>>2]](d+12|0,i,e,18447,250)|0}d=v[c+332>>2];f:{if(!d){break f}H9(e,d,f<<2);d=v[c+332>>2];if(!d){break f}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,d)}v[c+332>>2]=e;d=v[c+316>>2];f=d+1|0;h=v[c+312>>2]}v[c+316>>2]=f;v[(d<<2)+e>>2]=k;e=v[c+328>>2];f=h-1|0;if((f|0)>=0){d=B(d,h);while(1){h=tK(k+B(f,80)|0,d+f|0);v[v[c+324>>2]+(e<<2)>>2]=h;e=e+1|0;h=(f|0)>0;f=f-1|0;if(h){continue}break}}v[c+328>>2]=e;f=1}if(!f){break b}d=v[c+328>>2]}g=d-1|0;v[c+328>>2]=g;g=v[v[c+324>>2]+(g<<2)>>2];d=v[g+48>>2];f=v[c+340>>2]+(d>>>3&536870908)|0;v[f>>2]=v[f>>2]|1<>2]=0;v[g+36>>2]=0;t[g+42|0]=0;f=v[g+48>>2];d=v[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=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,d<<2,24422,17999,438)|0;e=v[c+936>>2];h:{if(!e){break h}H9(f,e,v[c+940>>2]<<2);if(v[c+940>>2]<0){break h}e=v[c+936>>2];if(!e){break h}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,e)}e=v[c+940>>2];I9(f+(e<<2)|0,0,d-e<<2);v[c+940>>2]=d;v[c+936>>2]=f;f=v[g+48>>2]}d=v[c+936>>2]+(f>>>3&536870908)|0;v[d>>2]=v[d>>2]|1<>2];d=v[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=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,d<<2,24422,17999,438)|0;e=v[c+948>>2];j:{if(!e){break j}H9(f,e,v[c+952>>2]<<2);if(v[c+952>>2]<0){break j}e=v[c+948>>2];if(!e){break j}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,e)}e=v[c+952>>2];I9(f+(e<<2)|0,0,d-e<<2);v[c+952>>2]=d;v[c+948>>2]=f;f=v[g+48>>2]}c=v[c+948>>2]+(f>>>3&536870908)|0;v[c>>2]=v[c>>2]|1<>2]=0;v[b+36>>2]=0;t[b+42|0]=0;c=b}g=v[a+44>>2];y=g&32768;A=g&98304;h=A?y?1:-1:0;k=g&262144;D=!(r&448)|k>>>18;f=r&2;E=f>>>1|0;F=g&131072;g=v[a+32>>2];i=w[v[v[g+4>>2]+44>>2]+9|0];d=v[a+28>>2];s=w[v[v[d+4>>2]+44>>2]+9|0];l=n+8|0;e=v[d+4>>2];m=w[v[e+44>>2]+9|0]-1>>>0<2?e:0;G=w[v[m+44>>2]+10|0];e=v[g+4>>2];e=w[v[e+44>>2]+9|0]-1>>>0<2?e:0;if(e){j=v[e+44>>2];H=t[j+44|0]&1;j=w[j+10|0]}else{j=0}QP(l,q,G,j);j=v[d+28>>2];l=v[g+28>>2];v[c+12>>2]=a;v[c+4>>2]=e?e- -64|0:0;v[c>>2]=m- -64;v[c+28>>2]=l+32;v[c+24>>2]=j+32;v[c+16>>2]=v[v[d+4>>2]+44>>2]+16;v[c+20>>2]=v[v[g+4>>2]+44>>2]+16;e=v[d+28>>2];m=v[g+28>>2];z[c+52>>2]=z[e+128>>2]+z[m+128>>2];t[c+44|0]=w[n+8|0];t[c+45|0]=w[n+9|0];t[c+46|0]=v[j+68>>2];t[c+47|0]=v[l+68>>2];v[c+56>>2]=v[d+8>>2]&2147483647;v[c+60>>2]=v[g+8>>2]&2147483647;o=z[e+132>>2];p=z[m+132>>2];z[c+72>>2]=o>p?o:p;o=z[m+136>>2];p=z[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=H?g|1024:g;g=k?g|2048:g;g=(f|F)!=0|(x?g|4096:g);u[c+40>>1]=f<<6|(D?g:g|256);v[c+68>>2]=-1;v[c+8>>2]=x>>>10|E;z[c+76>>2]=o>2]=c;t[c+43|0]=(h|0)>0?2:!y&(A|0)!=0;if(!b){b=v[a+60>>2];d=v[q+1e3>>2];f=v[d+148>>2];g=(b>>>0)/(f>>>0)|0;v[v[v[d+128>>2]+(g<<2)>>2]+(b-B(f,g)<<2)>>2]=c;v[c- -64>>2]=b;b=v[v[q+976>>2]+1024>>2];Ba[v[v[b>>2]+28>>2]](b,v[a+56>>2],h,0)}xa=n+16|0}function PC(a,b,c,d){var e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=0,u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=0,N=C(0),O=C(0);h=xa-48|0;xa=h;f=B(b,24)+c|0;i=z[f>>2];m=z[f+4>>2];n=z[f+8>>2];v[h+44>>2]=0;z[h+40>>2]=n;z[h+36>>2]=m;z[h+32>>2]=i;y=z[f+12>>2];A=z[f+16>>2];D=z[f+20>>2];v[h+28>>2]=0;z[h+24>>2]=D;z[h+20>>2]=A;z[h+16>>2]=y;f=v[a+588>>2];a:{if(!f){e=v[a+292>>2];if(!e){KC(a+4|0);e=v[a+292>>2]}v[a+292>>2]=v[e>>2];v[a+284>>2]=v[a+284>>2]+1;v[e+8>>2]=0;v[e+12>>2]=0;v[e+4>>2]=b;v[e>>2]=1;v[e+16>>2]=0;b=v[a+584>>2];if(!b){JC(a+296|0);b=v[a+584>>2]}v[a+584>>2]=v[b>>2];v[a+588>>2]=b;v[a+576>>2]=v[a+576>>2]+1;c=v[h+44>>2];v[b+8>>2]=v[h+40>>2];v[b+12>>2]=c;c=v[h+36>>2];v[b>>2]=v[h+32>>2];v[b+4>>2]=c;c=v[h+20>>2];b=v[a+588>>2];v[b+16>>2]=v[h+16>>2];v[b+20>>2]=c;c=v[h+28>>2];v[b+24>>2]=v[h+24>>2];v[b+28>>2]=c;v[v[a+588>>2]+36>>2]=e;v[v[a+588>>2]+40>>2]=0;e=v[a+588>>2];v[e+32>>2]=0;break a}e=v[f+40>>2];if(!e){e=v[f+36>>2];g=v[e>>2];if(g>>>0<=3){v[e>>2]=g+1;v[(e+(g<<2)|0)+4>>2]=b;k=z[f+12>>2];z[f+12>>2]=k>2];z[f+8>>2]=k>2];z[f+4>>2]=m>n?n:m;m=z[f>>2];z[f>>2]=i>m?m:i;i=z[f+16>>2];z[f+16>>2]=i>y?i:y;i=z[f+20>>2];z[f+20>>2]=i>A?i:A;i=z[f+24>>2];z[f+24>>2]=i>D?i:D;i=z[f+28>>2];z[f+28>>2]=i>C(0)?i:C(0);LC(f);e=v[a+588>>2];break a}e=v[d+4>>2];if(!(!e|(f|0)!=v[v[d>>2]>>2])){v[d+4>>2]=e-1}b=IC(a,f,b,h+32|0,h+16|0,c);v[h+12>>2]=b;c=a;a=v[b+32>>2];v[c+588>>2]=a;e=v[a+36>>2];if((b|0)==(e|0)){e=v[a+40>>2]}v[h+8>>2]=e;b:{if(v[e+40>>2]){break b}a=v[d+4>>2];if(a>>>0>=(v[d+8>>2]&2147483647)>>>0){NC(d,h+8|0);break b}v[v[d>>2]+(a<<2)>>2]=e;v[d+4>>2]=a+1}a=v[d+4>>2];if(a>>>0>=(v[d+8>>2]&2147483647)>>>0){NC(d,h+12|0);e=v[h+12>>2];break a}v[v[d>>2]+(a<<2)>>2]=v[h+12>>2];v[d+4>>2]=a+1;e=v[h+12>>2];break a}k=C(D+n);g=v[f+36>>2];j=z[g+24>>2];s=z[g+8>>2];w=C(k-C(j+s));o=C(w*w);w=C(i+y);l=z[g+16>>2];E=z[g>>2];x=C(w-C(l+E));p=C(x*x);x=C(A+m);F=z[g+20>>2];G=z[g+4>>2];r=C(x-C(F+G));H=C(o+C(p+C(r*r)));r=z[e+24>>2];I=z[e+8>>2];o=C(k-C(r+I));N=C(o*o);o=z[e+16>>2];J=z[e>>2];p=C(w-C(o+J));O=C(p*p);p=z[e+20>>2];K=z[e+4>>2];u=C(x-C(p+K));g=H>C(N+C(O+C(u*u)));j=C(C(C(l-E)*C(F-G))*C(j-s));s=C(C(C(o-J)*C(p-K))*C(r-I));L=C(j*C(3))C(s*C(3));M=L&(j>s^-1);e=f+36|0;c:{if(!L){f=1;break c}t=f;f=v[v[e+(M<<2)>>2]+40>>2];t=f?t:0;f=!f}g=v[e+(g<<2)>>2];v[h+12>>2]=g;e=v[g+40>>2];if(e){while(1){j=z[e+24>>2];s=z[e+20>>2];q=v[g+36>>2];l=z[q+24>>2];E=z[q+20>>2];F=z[e+8>>2];G=z[e+4>>2];r=z[e>>2];I=z[e+16>>2];o=z[q+8>>2];J=z[q+4>>2];p=z[q>>2];K=z[q+16>>2];d:{if(!f){break d}H=C(C(C(I-r)*C(s-G))*C(j-F));u=C(C(C(K-p)*C(E-J))*C(l-o));if(!(H>C(u*C(3))|C(H*C(3))H)}e=g+36|0;l=C(k-C(l+o));o=C(l*l);l=C(w-C(K+p));p=C(l*l);l=C(x-C(E+J));j=C(k-C(j+F));u=C(j*j);j=C(w-C(I+r));r=C(j*j);j=C(x-C(s+G));q=C(o+C(p+C(l*l)))>C(u+C(r+C(j*j)));e:{if(t){break e}if(!L){t=0;break e}t=g;g=v[v[e+(M<<2)>>2]+40>>2];t=g?t:0;f=!g&f}g=v[e+(q<<2)>>2];v[h+12>>2]=g;e=v[g+40>>2];if(e){continue}break}}f=v[g+36>>2];e=v[f>>2];f:{if(e>>>0<=3){v[f>>2]=e+1;v[(f+(e<<2)|0)+4>>2]=b;k=z[g+12>>2];z[g+12>>2]=k>2];z[g+8>>2]=k>2];z[g+4>>2]=m>n?n:m;m=z[g>>2];z[g>>2]=i>m?m:i;i=z[g+16>>2];z[g+16>>2]=i>y?i:y;i=z[g+20>>2];z[g+20>>2]=i>A?i:A;i=z[g+24>>2];z[g+24>>2]=i>D?i:D;i=z[g+28>>2];z[g+28>>2]=i>C(0)?i:C(0);LC(g);e=v[h+12>>2];b=v[d+4>>2];if(b){f=v[d>>2];if(v[f>>2]==(e|0)){break f}if(b>>>0>=(v[d+8>>2]&2147483647)>>>0){NC(d,h+12|0);break f}v[f+(b<<2)>>2]=e;v[d+4>>2]=b+1;break f}if(!(v[d+8>>2]&2147483647)){NC(d,h+12|0);break f}v[v[d>>2]>>2]=e;v[d+4>>2]=1;break f}f=v[d+4>>2];if(!(!f|v[v[d>>2]>>2]!=(g|0))){v[d+4>>2]=f-1}e=IC(a,g,b,h+32|0,h+16|0,c);q=v[e+32>>2];b=q+36|0;g=v[d+8>>2]&2147483647;f=v[d+4>>2];g:{if(g>>>0<=f>>>0){NC(d,b);g=v[d+8>>2]&2147483647;b=v[d+4>>2];break g}v[v[d>>2]+(f<<2)>>2]=v[b>>2];b=f+1|0;v[d+4>>2]=b}f=q+40|0;if(b>>>0>=g>>>0){NC(d,f);break f}v[v[d>>2]+(b<<2)>>2]=v[f>>2];v[d+4>>2]=b+1}if(!t){break a}MC(a,t,d,M,c,1);e=0}xa=h+48|0;return e}function UY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0;k=xa-480|0;xa=k;b=v[b>>2];a=v[a>>2];v[k+168>>2]=0;v[k+172>>2]=0;v[k+160>>2]=0;v[k+164>>2]=0;t[k+192|0]=0;v[k+188>>2]=3;j=z[a+8>>2];l=z[a+12>>2];q=z[a+4>>2];v[k+220>>2]=0;z[k+216>>2]=l;z[k+212>>2]=j;z[k+208>>2]=q;j=j>=q?q:j;j=j<=l?j:l;z[k+184>>2]=j*C(.05000000074505806);z[k+180>>2]=j*C(.004999999888241291);z[k+176>>2]=j*C(.009999999776482582);t[k+32|0]=0;v[k+24>>2]=0;v[k+28>>2]=0;v[k+16>>2]=0;v[k+20>>2]=0;v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;a=v[b+40>>2];j=z[b+8>>2];l=z[b+12>>2];q=z[b+4>>2];v[k+252>>2]=0;z[k+248>>2]=l;z[k+244>>2]=j;z[k+240>>2]=q;I=v[b+16>>2];O=v[b+20>>2];P=v[b+28>>2];v[k+408>>2]=v[b+24>>2];v[k+412>>2]=P;v[k+400>>2]=I;v[k+404>>2]=O;v[k+144>>2]=a;v[k+152>>2]=v[a+40>>2]+B(w[a+39|0],20);t[k+156|0]=w[a+38|0];o=C(q*z[a+52>>2]);x=C(j*z[a+56>>2]);o=o<=x?o:x;x=C(l*z[a+60>>2]);o=o<=x?o:x;z[k+24>>2]=o*C(.02500000037252903);z[k+16>>2]=o*C(.10000000149011612);z[k+20>>2]=o*C(.05000000074505806);b=k+240|0;I=k+400|0;FV(b,I,k+48|0,k+96|0,k,q==C(1)&j==C(1)&l==C(1));v[k+148>>2]=v[a+44>>2];v[k+472>>2]=0;v[k+476>>2]=0;v[k+464>>2]=0;v[k+468>>2]=0;K=z[f+20>>2];F=z[e+20>>2];E=z[f+24>>2];G=z[e+24>>2];n=z[c+8>>2];s=z[c>>2];u=z[c+4>>2];r=z[c+12>>2];q=z[d+12>>2];o=z[d>>2];L=z[f+16>>2];H=z[e+16>>2];j=z[d+4>>2];l=z[d+8>>2];v[k+460>>2]=0;v[k+444>>2]=0;v[k+428>>2]=0;J=C(-o);m=C(H-L);p=C(F-K);A=C(G-E);D=C(C(C(J*m)-C(p*j))-C(l*A));x=C(C(q*q)+C(-.5));y=C(C(C(q*C(C(j*m)-C(o*p)))+C(x*A))-C(l*D));z[k+456>>2]=y+y;y=C(C(C(x*p)+C(q*C(C(o*A)-C(l*m))))-C(j*D));z[k+452>>2]=y+y;a=k+448|0;m=C(C(C(x*m)+C(q*C(C(l*p)-C(j*A))))-C(o*D));z[a>>2]=m+m;p=C(C(C(u*l)-C(j*n))+C(C(s*q)-C(r*o)));m=C(p+p);A=C(C(C(n*o)-C(l*s))+C(C(u*q)-C(r*j)));D=C(A+A);y=C(C(1)-C(p*m));M=C(A*D);z[k+440>>2]=y-M;p=C(C(C(s*j)-C(o*u))+C(C(n*q)-C(r*l)));N=C(p*D);n=C(C(r*q)-C(C(C(J*s)-C(u*j))-C(l*n)));s=C(n*m);z[k+436>>2]=N-s;u=C(p*m);r=C(n*D);z[k+432>>2]=u+r;z[k+424>>2]=N+s;s=C(p+p);p=C(p*s);z[k+420>>2]=y-p;m=C(A*m);n=C(n*s);z[k+416>>2]=m-n;v[k+412>>2]=0;z[k+408>>2]=u-r;z[k+404>>2]=m+n;z[k+400>>2]=C(C(1)-M)-p;u=z[d+20>>2];r=z[c+20>>2];n=z[d+24>>2];s=z[c+24>>2];m=z[d+16>>2];p=z[c+16>>2];v[k+396>>2]=0;D=C(s-G);n=C(C(n-E)-D);G=C(p-H);s=C(C(m-L)-G);F=C(r-F);u=C(C(u-K)-F);r=C(C(l*n)+C(C(o*s)+C(j*u)));m=C(C(C(x*n)-C(q*C(C(o*u)-C(j*s))))+C(l*r));z[k+392>>2]=m+m;m=C(C(j*r)+C(C(x*u)-C(q*C(C(l*s)-C(n*o)))));z[k+388>>2]=m+m;n=C(C(o*r)+C(C(x*s)-C(q*C(C(j*n)-C(u*l)))));z[k+384>>2]=n+n;v[k+320>>2]=0;v[k+240>>2]=141468;v[k+248>>2]=I;v[k+244>>2]=k+160;c=v[k+420>>2];v[k+272>>2]=v[k+416>>2];v[k+276>>2]=c;c=v[k+428>>2];v[k+280>>2]=v[k+424>>2];v[k+284>>2]=c;c=v[k+412>>2];v[k+264>>2]=v[k+408>>2];v[k+268>>2]=c;c=v[k+436>>2];v[k+288>>2]=v[k+432>>2];v[k+292>>2]=c;c=v[k+444>>2];v[k+296>>2]=v[k+440>>2];v[k+300>>2]=c;c=v[a+4>>2];v[k+304>>2]=v[a>>2];v[k+308>>2]=c;c=v[k+460>>2];v[k+312>>2]=v[k+456>>2];v[k+316>>2]=c;c=v[k+404>>2];v[k+256>>2]=v[k+400>>2];v[k+260>>2]=c;n=z[k+260>>2];z[k+260>>2]=z[k+272>>2];s=z[k+280>>2];u=z[k+264>>2];z[k+264>>2]=z[k+288>>2];z[k+280>>2]=z[k+292>>2];z[k+288>>2]=u;z[k+292>>2]=s;z[k+272>>2]=n;v[k+232>>2]=141216;v[k+236>>2]=k;n=C(34028234663852886e22);if(LX(b,k+232|0,a,k+464|0,k+384|0,k+368|0,k+336|0,k+352|0,C(g+C(0)),1)){n=z[k+368>>2];g=z[k+360>>2];s=z[k+352>>2];u=z[k+356>>2];r=z[k+344>>2];m=z[k+336>>2];p=z[k+340>>2];A=C(C(l*r)+C(C(o*m)+C(j*p)));H=C(-j);y=C(C(C(q*C(C(o*p)+C(m*H)))+C(x*r))+C(l*A));z[h+8>>2]=y+y;y=C(C(j*A)+C(C(x*p)+C(q*C(C(l*m)+C(r*J)))));z[h+4>>2]=y+y;y=p;p=C(-l);r=C(C(o*A)+C(C(x*m)+C(q*C(C(j*r)+C(y*p)))));z[h>>2]=r+r;r=n>C(0)?n:C(0);y=E;m=C(C(l*g)+C(C(o*s)+C(j*u)));E=C(C(C(q*C(C(o*u)+C(s*H)))+C(x*g))+C(l*m));z[i+8>>2]=C(D*r)+C(y+C(E+E));l=C(C(j*m)+C(C(x*u)+C(q*C(C(l*s)+C(g*J)))));z[i+4>>2]=C(F*r)+C(K+C(l+l));g=C(C(o*m)+C(C(x*s)+C(q*C(C(j*g)+C(u*p)))));z[i>>2]=C(G*r)+C(L+C(g+g))}xa=k+480|0;return C(n)}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,n=0,o=0,p=0,q=0,r=0,s=0,u=0;v[a+88>>2]=v[b>>2];c=v[b+4>>2];v[a+92>>2]=c;v[a+104>>2]=v[b+8>>2];v[a+108>>2]=v[b+12>>2];v[a+96>>2]=v[b+16>>2];v[a+100>>2]=v[b+20>>2];v[a+112>>2]=v[b+24>>2];v[a+116>>2]=v[b+28>>2];v[a+120>>2]=v[b+32>>2];v[a+124>>2]=v[b+36>>2];j=v[b+40>>2];b=v[a+128>>2];if(j>>>0>b>>>0){g=(j<<3)+15&-16;a:{if(!g){c=0;h=0;break a}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,g,24422,9522,540)|0;i=v[37696]+12|0;i=Ba[v[v[i>>2]+8>>2]](i,g,24422,9522,541)|0;h=v[37696]+12|0;h=Ba[v[v[h>>2]+8>>2]](h,g,24422,9522,542)|0}d=c;c=b<<3;g=H9(d,v[a+132>>2],c);i=H9(i,v[a+136>>2],c);h=H9(h,v[a+140>>2],c);c=b+1|0;if(j-b&1){b=b<<3;f=b+g|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;f=b+i|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;b=b+h|0;v[b>>2]=1073741823;v[b+4>>2]=1073741823;b=c}if((c|0)!=(j|0)){while(1){c=b<<3;f=c+g|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;f=c+i|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;f=c+h|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;c=c+8|0;f=c+g|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;f=c+i|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;c=c+h|0;v[c>>2]=1073741823;v[c+4>>2]=1073741823;b=b+2|0;if((j|0)!=(b|0)){continue}break}}b=v[a+132>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+136>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+140>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+140>>2]=h;v[a+136>>2]=i;v[a+132>>2]=g;v[a+128>>2]=j;b=v[a+168>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=j+15&-16;if(b){c=v[37696]+12|0;b=Ba[v[v[c>>2]+8>>2]](c,b,24422,9522,567)|0}else{b=0}v[a+168>>2]=b;c=v[a+92>>2]}f=c+v[a+188>>2]<<1;k=f+2|0;if(k>>>0>y[a+196>>2]){g=(k<<2)+15&-16;if(g){b=v[37696]+12|0;m=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,575)|0;b=v[37696]+12|0;n=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,576)|0;b=v[37696]+12|0;o=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,577)|0;b=v[37696]+12|0;p=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,578)|0;b=v[37696]+12|0;q=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,579)|0;b=v[37696]+12|0;j=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,580)|0}else{j=0}b=v[a+180>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+184>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b:{if(!g){v[a+180>>2]=0;c=0;break b}b=v[37696]+12|0;s=a,u=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,585)|0,v[s+180>>2]=u;b=v[37696]+12|0;c=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,586)|0}v[a+184>>2]=c;h=v[a+180>>2];b=1;if(f>>>0>=3){r=f&-4;i=0;while(1){e=b-1|0;v[h+(e<<2)>>2]=b;d=b<<2;v[d+c>>2]=e;e=b+1|0;v[d+h>>2]=e;d=e<<2;v[d+c>>2]=b;l=d+h|0;d=b+2|0;v[l>>2]=d;l=d<<2;v[c+l>>2]=e;e=b+3|0;v[h+l>>2]=e;v[c+(e<<2)>>2]=d;b=b+4|0;i=i+4|0;if((r|0)!=(i|0)){continue}break}}e=f&2|1;i=0;while(1){d=b-1|0;v[h+(d<<2)>>2]=b;v[c+(b<<2)>>2]=d;b=b+1|0;i=i+1|0;if((e|0)!=(i|0)){continue}break}b=f|1;v[h+(b<<2)>>2]=b;v[c>>2]=0;b=H9(m,v[a+144>>2],(v[a+188>>2]<<3)+8|0);c=H9(n,v[a+148>>2],(v[a+188>>2]<<3)+8|0);i=H9(o,v[a+152>>2],(v[a+188>>2]<<3)+8|0);h=H9(p,v[a+156>>2],(v[a+188>>2]<<3)+8|0);f=H9(q,v[a+160>>2],(v[a+188>>2]<<3)+8|0);j=H9(j,v[a+164>>2],(v[a+188>>2]<<3)+8|0);e=v[a+144>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=v[a+148>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=v[a+152>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=v[a+156>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=v[a+160>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=v[a+164>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+196>>2]=k;v[a+164>>2]=j;v[a+160>>2]=f;v[a+156>>2]=h;v[a+152>>2]=i;v[a+148>>2]=c;v[a+144>>2]=b;b=v[a+172>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+176>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}if(g){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,619)|0}else{b=0}v[a+172>>2]=b;b=k<<3;if(b){c=v[37696]+12|0;b=Ba[v[v[c>>2]+8>>2]](c,b,24422,9522,620)|0}else{b=0}v[a+176>>2]=b}b=0;I9(v[a+168>>2],0,v[a+128>>2]);if(v[a+108>>2]){while(1){t[v[a+168>>2]+v[v[a+104>>2]+(b<<2)>>2]|0]=1;b=b+1|0;if(b>>>0>2]){continue}break}}v[a+188>>2]=v[a+188>>2]+v[a+92>>2]}function vn(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=xa-16|0;xa=a;t[a+8|0]=w[f|0];l=v[37389];p=b;n=e;e=0;b=0;f=xa-32|0;xa=f;v[f+16>>2]=0;v[f+20>>2]=4;v[f+12>>2]=f;t[f+8|0]=1;u[f+24>>1]=0;if((v[f+20>>2]&2147483647)>>>0>>0){a:{if(!d){break a}g=d<<1;if(!(w[f+8|0]|g>>>0>8)){t[f+8|0]=1;b=f;break a}if(!g){break a}b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?27439:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g,h,16608,553)|0}g=v[f+12>>2];h=v[f+16>>2];if((h|0)>0){m=(h<<1)+b|0;h=g;i=b;while(1){u[i>>1]=x[h>>1];h=h+2|0;i=i+2|0;if(m>>>0>i>>>0){continue}break}}b:{if(v[f+20>>2]<0){break b}if((f|0)==(g|0)){t[f+8|0]=0;break b}if(!g){break b}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,g)}v[f+20>>2]=d;v[f+12>>2]=b}b=v[f+16>>2];if((b|0)<(d|0)){g=v[f+12>>2];h=g+(d<<1)|0;b=g+(b<<1)|0;while(1){u[b>>1]=x[f+24>>1];b=b+2|0;if(h>>>0>b>>>0){continue}break}}v[f+16>>2]=d;c:{if((d|0)==1){u[v[f+12>>2]>>1]=x[v[c>>2]+52>>1];break c}if(!d){break c}b=v[f+12>>2];if(d-1>>>0>=3){g=d&65532;while(1){u[b+(e<<1)>>1]=x[v[(e<<2)+c>>2]+52>>1];h=e|1;u[b+(h<<1)>>1]=x[v[(h<<2)+c>>2]+52>>1];h=e|2;u[b+(h<<1)>>1]=x[v[(h<<2)+c>>2]+52>>1];h=e|3;u[b+(h<<1)>>1]=x[v[(h<<2)+c>>2]+52>>1];e=e+4|0;j=j+4|0;if((g|0)!=(j|0)){continue}break}}g=d&3;if(!g){break c}while(1){u[b+(e<<1)>>1]=x[v[(e<<2)+c>>2]+52>>1];e=e+1|0;k=k+1|0;if((g|0)!=(k|0)){continue}break}}q=v[f+12>>2];e=v[l+1560>>2];if(!e){h=xa-16|0;xa=h;i=l+1272|0;c=v[i+284>>2];if(c){b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?42245:63804;g=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,18373,180)|0}else{g=0}v[h+12>>2]=g;b=v[i+268>>2];d:{if(b>>>0>=(v[i+272>>2]&2147483647)>>>0){c=0;e=i+4|0;b=v[e+268>>2];m=b&2147483647?b<<1:1;e:{if(!m){break e}j=m<<2;if(!(w[e+256|0]|j>>>0>256)){t[e+256|0]=1;c=e;break e}if(!j){break e}b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?42245:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,j,c,16608,553)|0}k=v[e+264>>2];o=(k<<2)+c|0;if((k|0)>0){j=v[e+260>>2];b=c;while(1){v[b>>2]=v[j>>2];j=j+4|0;b=b+4|0;if(o>>>0>b>>>0){continue}break}}v[o>>2]=v[h+12>>2];f:{if(v[e+268>>2]<0){break f}b=v[e+260>>2];if((b|0)==(e|0)){t[e+256|0]=0;break f}if(!b){break f}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,b);k=v[e+264>>2]}v[e+268>>2]=m;v[e+260>>2]=c;v[e+264>>2]=k+1;break d}v[v[i+264>>2]+(b<<2)>>2]=g;v[i+268>>2]=b+1}c=(g+B(v[i+276>>2],208)|0)-208|0;if(g>>>0<=c>>>0){e=v[i+288>>2];while(1){v[c>>2]=e;e=c;c=e-208|0;if(g>>>0<=c>>>0){continue}break}v[i+288>>2]=e}xa=h+16|0;e=v[l+1560>>2]}v[l+1560>>2]=v[e>>2];b=l+1552|0;v[b>>2]=v[b>>2]+1;t[f+24|0]=w[a+8|0];c=xa-16|0;xa=c;v[e+16>>2]=1;v[e+4>>2]=196615;v[e+8>>2]=0;v[e+20>>2]=0;v[e+12>>2]=126968;v[e>>2]=126776;b=w[f+24|0];v[e+40>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;t[c+8|0]=b;b=e+48|0;v[b>>2]=0;v[b+4>>2]=0;v[b+136>>2]=0;v[b+128>>2]=0;v[b+132>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;g=b+68|0;v[g>>2]=-1;t[b+65|0]=1;h=v[37415];kV(g,p);v[b+56>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=0;v[b+44>>2]=1065353216;v[b+32>>2]=0;v[b+36>>2]=0;z[b+60>>2]=z[h>>2]*C(.019999999552965164);t[b- -64|0]=w[c+8|0];ER(b,q,d);b=v[e+36>>2];v[e+36>>2]=b&-251658241|(n?16777216:33554432);v[e+196>>2]=n?-2147483648:0;v[e+192>>2]=0;v[e+8>>2]=0;g:{h:{i:{j:{k:{g=e+116|0;switch(v[g>>2]-4|0){case 1:break i;case 2:break j;case 0:break k;default:break g}}b=v[(b&1?v[e+40>>2]- -64|0:g)+32>>2];if(!b){break g}b=b+8|0;break h}b=v[(b&1?v[e+40>>2]- -64|0:g)+4>>2];if(!b){break g}b=b+8|0;break h}b=v[(b&1?v[e+40>>2]- -64|0:g)+36>>2];if(!b){break g}b=b+8|0}v[b+4>>2]=v[b+4>>2]+1}xa=c+16|0;b=e;if(d){g=b+48|0;e=0;while(1){h=v[37393];l:{if(w[b+36|0]&2){c=v[b+40>>2];c=x[c+124>>1]==1?c+120|0:v[v[b+32>>2]+4856>>2]+(v[c+120>>2]<<1)|0;break l}c=FR(g)}c=v[v[h+40>>2]+(x[c+(e<<1)>>1]<<2)>>2];v[c+16>>2]=v[c+16>>2]+1;e=e+1|0;if((e|0)!=(d|0)){continue}break}}v[f+24>>2]=b;c=qh(l+640|0,f+24|0,f+31|0);if(!w[f+31|0]){v[c>>2]=v[f+24>>2]}c=v[f+20>>2];m:{if((c|0)<0|!(c&2147483647)){break m}c=v[f+12>>2];if((c|0)==(f|0)|!c){break m}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}xa=f+32|0;xa=a+16|0;return b|0}function MQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=v[a+100>>2];t[g+1148|0]=0;b=v[g+976>>2];a=v[b+1024>>2];Ba[v[v[a>>2]+24>>2]](a);a=v[b+1024>>2];Ba[v[v[a>>2]+76>>2]](a);a=v[b+304>>2];f=v[a>>2];v[a>>2]=0;a:{if(!f){break a}i=b+984|0;j=b+972|0;a=f;while(1){h=v[a>>2];v[b+996>>2]=v[b+996>>2]+v[a+7220>>2];v[b+1e3>>2]=v[b+1e3>>2]+v[a+7216>>2];v[b+1008>>2]=v[b+1008>>2]+v[a+7224>>2];v[b+1012>>2]=v[b+1012>>2]+v[a+7228>>2];c=v[a+304>>2];e=v[a+108>>2];v[b+1164>>2]=e+v[b+1164>>2];v[b+1556>>2]=c+v[b+1556>>2];c=e+v[b+1752>>2]|0;v[b+1752>>2]=c;e=v[a+308>>2];d=v[a+112>>2];v[b+1168>>2]=d+v[b+1168>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1560>>2]=e+v[b+1560>>2];e=v[a+312>>2];d=v[a+116>>2];v[b+1172>>2]=d+v[b+1172>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1564>>2]=e+v[b+1564>>2];e=v[a+316>>2];d=v[a+120>>2];v[b+1176>>2]=d+v[b+1176>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1568>>2]=e+v[b+1568>>2];e=v[a+320>>2];d=v[a+124>>2];v[b+1180>>2]=d+v[b+1180>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1572>>2]=e+v[b+1572>>2];e=v[a+324>>2];d=v[a+128>>2];v[b+1184>>2]=d+v[b+1184>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1576>>2]=e+v[b+1576>>2];e=v[a+328>>2];d=v[a+132>>2];v[b+1188>>2]=d+v[b+1188>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1580>>2]=e+v[b+1580>>2];e=v[a+336>>2];d=v[a+140>>2];v[b+1196>>2]=d+v[b+1196>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1588>>2]=e+v[b+1588>>2];e=v[a+340>>2];d=v[a+144>>2];v[b+1200>>2]=d+v[b+1200>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1592>>2]=e+v[b+1592>>2];e=v[a+344>>2];d=v[a+148>>2];v[b+1204>>2]=d+v[b+1204>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1596>>2]=e+v[b+1596>>2];e=v[a+348>>2];d=v[a+152>>2];v[b+1208>>2]=d+v[b+1208>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1600>>2]=e+v[b+1600>>2];e=v[a+352>>2];d=v[a+156>>2];v[b+1212>>2]=d+v[b+1212>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1604>>2]=e+v[b+1604>>2];e=v[a+356>>2];d=v[a+160>>2];v[b+1216>>2]=d+v[b+1216>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1608>>2]=e+v[b+1608>>2];e=v[a+368>>2];d=v[a+172>>2];v[b+1228>>2]=d+v[b+1228>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1620>>2]=e+v[b+1620>>2];e=v[a+372>>2];d=v[a+176>>2];v[b+1232>>2]=d+v[b+1232>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1624>>2]=e+v[b+1624>>2];e=v[a+376>>2];d=v[a+180>>2];v[b+1236>>2]=d+v[b+1236>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1628>>2]=e+v[b+1628>>2];e=v[a+380>>2];d=v[a+184>>2];v[b+1240>>2]=d+v[b+1240>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1632>>2]=e+v[b+1632>>2];e=v[a+384>>2];d=v[a+188>>2];v[b+1244>>2]=d+v[b+1244>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1636>>2]=e+v[b+1636>>2];e=v[a+400>>2];d=v[a+204>>2];v[b+1260>>2]=d+v[b+1260>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1652>>2]=e+v[b+1652>>2];e=v[a+404>>2];d=v[a+208>>2];v[b+1264>>2]=d+v[b+1264>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1656>>2]=e+v[b+1656>>2];e=v[a+408>>2];d=v[a+212>>2];v[b+1268>>2]=d+v[b+1268>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1660>>2]=e+v[b+1660>>2];e=v[a+412>>2];d=v[a+216>>2];v[b+1272>>2]=d+v[b+1272>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1664>>2]=e+v[b+1664>>2];e=v[a+432>>2];d=v[a+236>>2];v[b+1292>>2]=d+v[b+1292>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1684>>2]=e+v[b+1684>>2];e=v[a+436>>2];d=v[a+240>>2];v[b+1296>>2]=d+v[b+1296>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1688>>2]=e+v[b+1688>>2];e=v[a+440>>2];d=v[a+244>>2];v[b+1300>>2]=d+v[b+1300>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1692>>2]=e+v[b+1692>>2];e=v[a+464>>2];d=v[a+268>>2];v[b+1324>>2]=d+v[b+1324>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1716>>2]=e+v[b+1716>>2];e=v[a+468>>2];d=v[a+272>>2];v[b+1328>>2]=d+v[b+1328>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1720>>2]=e+v[b+1720>>2];e=v[a+496>>2];d=v[a+300>>2];v[b+1356>>2]=d+v[b+1356>>2];v[b+1752>>2]=c+d;v[b+1748>>2]=e+v[b+1748>>2];v[b+1756>>2]=v[b+1756>>2]+v[a+7144>>2];v[b+1760>>2]=v[b+1760>>2]+v[a+7148>>2];v[b+1780>>2]=v[b+1780>>2]+v[a+7140>>2];v[a+7148>>2]=0;v[a+7140>>2]=0;v[a+7144>>2]=0;I9(a+108|0,0,392);xK(j,v[a+7192>>2],v[a+7196>>2]&2147483647);xK(i,v[a+7204>>2],v[a+7208>>2]&2147483647);v[b+1828>>2]=v[b+1828>>2]+v[a+7168>>2];c=v[b+1824>>2];e=v[a+7164>>2];v[b+1824>>2]=c>>>0>e>>>0?c:e;v[a+7164>>2]=0;v[a+7168>>2]=0;a=h;if(a){continue}break}if(!f){break a}while(1){a=v[f>>2];h=v[b+304>>2];v[f>>2]=v[h>>2];v[h>>2]=f;f=a;if(a){continue}break}}if(w[g+2282|0]){Gy(v[g+976>>2]+24|0)}}function vv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0);h=xa-160|0;xa=h;f=v[f>>2];u=z[d+20>>2];A=z[d+24>>2];p=z[d>>2];q=z[d+4>>2];x=z[d+8>>2];o=z[d+12>>2];D=z[d+16>>2];v[h+156>>2]=0;z[h+152>>2]=A;z[h+148>>2]=u;z[h+144>>2]=D;z[h+140>>2]=o;z[h+136>>2]=x;z[h+132>>2]=q;z[h+128>>2]=p;E=z[c+20>>2];y=z[c+24>>2];G=z[c+16>>2];j=z[c+4>>2];i=z[c>>2];k=z[c+8>>2];m=z[c+12>>2];v[h+124>>2]=0;l=C(i+i);n=C(m+m);r=C(C(C(i*l)+C(m*n))+C(-1));s=C(C(l*k)-C(j*n));l=C(C(l*j)+C(k*n));n=C(C(1)/C(K(C(C(s*s)+C(C(r*r)+C(l*l))))));r=C(r*n);z[h+112>>2]=r;l=C(l*n);z[h+116>>2]=l;n=C(s*n);z[h+120>>2]=n;v[h+108>>2]=0;z[h+104>>2]=-n;z[h+100>>2]=-l;z[h+96>>2]=-r;N=z[e>>2];z[h+80>>2]=N;F=z[b+4>>2];z[h+64>>2]=F;H=z[b+8>>2];z[h+48>>2]=F*C(.0010000000474974513);r=C(C(C(q*k)-C(j*x))+C(C(p*m)-C(o*i)));s=C(r+r);O=C(r*s);n=C(C(C(p*j)-C(i*q))+C(C(x*m)-C(o*k)));I=C(n*s);J=C(-i);l=C(C(o*m)-C(C(C(p*J)-C(q*j))-C(k*x)));D=C(D-G);E=C(u-E);A=C(A-y);y=C(C(C(J*D)-C(E*j))-C(k*A));G=C(C(m*m)+C(-.5));u=C(C(C(m*C(C(j*D)-C(i*E)))+C(G*A))-C(k*y));u=C(u+u);p=C(C(C(x*i)-C(k*p))+C(C(q*m)-C(o*j)));x=C(p*s);q=C(C(C(G*E)+C(m*C(C(i*A)-C(k*D))))-C(j*y));q=C(q+q);m=C(C(C(G*D)+C(m*C(C(k*E)-C(j*A))))-C(i*y));m=C(m+m);b=w[f+64|0];if(b){i=C(C(1)-O);j=C(p+p);k=C(p*j);D=C(i-k);y=i;i=C(n+n);o=C(n*i);E=C(y-o);A=C(C(C(1)-k)-o);k=C(n*j);o=C(l*s);s=C(k-o);j=C(l*j);y=C(I+j);G=C(k+o);i=C(l*i);J=C(x-i);T=C(I-j);U=C(x+i);j=C(F*C(.05000000074505806));V=C(j*j);a=b;while(1){d=v[f+76>>2];a=a-1|0;c=d+B(a,48)|0;i=z[c+24>>2];L=z[c+40>>2];j=z[c+8>>2];k=z[c>>2];o=z[c+4>>2];M=C(u+C(C(D*j)+C(C(T*k)+C(G*o))));P=C(m+C(C(y*j)+C(C(A*k)+C(J*o))));Q=z[c+16>>2];R=z[c+32>>2];k=C(q+C(C(s*j)+C(C(U*k)+C(E*o))));o=z[c+20>>2];S=z[c+36>>2];j=C(C(L*C(M-i))+C(C(C(P-Q)*R)+C(C(k-o)*S)));i=C(i-C(M-C(L*j)));L=C(i*i);i=C(Q-C(P-C(R*j)));M=C(i*i);i=C(o-C(k-C(S*j)));a:{if(C(L+C(M+C(i*i)))>V){e=w[f+64|0]-1|0;t[f+64|0]=e;d=d+B(e&255,48)|0;e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+44>>2];v[c+40>>2]=v[d+40>>2];v[c+44>>2]=e;e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;break a}z[c+44>>2]=j}if(a){continue}break}a=w[f+64|0]}else{a=0}b:{c:{if((a|0)!=(b|0)){break c}j=C(m-z[f+16>>2]);j=j>C(0)?j:C(-j);i=C(q-z[f+20>>2]);i=i>C(0)?i:C(-i);i=j>=i?j:i;y=j;j=C(u-z[f+24>>2]);j=(j>C(0)?j:C(-j))>=C(0)?y:C(0);if(C(z[h+64>>2]*C(.019999999552965164))<(j<=i?i:j)){break c}if(!(C(C(l*z[f+12>>2])+C(C(n*z[f+8>>2])+C(C(r*z[f>>2])+C(p*z[f+4>>2]))))>2]=0;z[f+24>>2]=u;z[f+20>>2]=q;z[f+16>>2]=m;z[f+12>>2]=l;z[f+8>>2]=n;z[f+4>>2]=p;z[f>>2]=r;t[f+64|0]=0;H=C(N+F);i=C(m+i);if(H>i){v[h+44>>2]=0;E=C(u+I);k=C(E-u);x=C(i-m);A=C(q+D);o=C(A-q);s=C(C(n*k)+C(C(r*x)+C(p*o)));F=C(C(l*l)+C(-.5));y=C(C(C(F*k)-C(l*C(C(r*o)-C(x*p))))+C(n*s));z[h+40>>2]=y+y;y=C(C(p*s)+C(C(F*o)-C(l*C(C(n*x)-C(k*r)))));z[h+36>>2]=y+y;k=C(C(r*s)+C(C(F*x)-C(l*C(C(p*k)-C(o*n)))));z[h+32>>2]=k+k;v[h+28>>2]=0;k=C(i*C(0));z[h+24>>2]=E-k;z[h+20>>2]=A-k;z[h+16>>2]=i-i;z[h+12>>2]=i;v[h+8>>2]=0;v[h>>2]=1065353216;v[h+4>>2]=0;v2(f,h+32|0,h+16|0,h,h+48|0)}if(!(j>2]=0;x=C(u-I);i=C(x-u);m=C(j-m);o=C(q-D);k=C(o-q);u=C(C(n*i)+C(C(r*m)+C(p*k)));q=C(C(l*l)+C(-.5));s=C(C(C(q*i)-C(l*C(C(r*k)-C(m*p))))+C(n*u));z[h+40>>2]=s+s;s=C(C(p*u)+C(C(q*k)-C(l*C(C(n*m)-C(i*r)))));z[h+36>>2]=s+s;l=C(C(r*u)+C(C(q*m)-C(l*C(C(p*i)-C(k*n)))));z[h+32>>2]=l+l;v[h+28>>2]=0;l=C(j*C(0));z[h+24>>2]=x-l;z[h+20>>2]=o-l;z[h+16>>2]=j-j;z[h+12>>2]=j;v[h+8>>2]=0;v[h>>2]=1065353216;v[h+4>>2]=0;v2(f,h+32|0,h+16|0,h,h+48|0)}r2(f,g,h+96|0,h+112|0,h+128|0,h- -64|0,h+80|0);xa=h+160|0;return w[f+64|0]!=0|0}function iq(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=xa-48|0;xa=f;k=Ba[v[v[b>>2]+76>>2]](b)|0;e=Ba[v[v[b>>2]+100>>2]](b)|0;if(v[e+88>>2]){h=v[v[e+84>>2]>>2]}else{h=0}c=h;e=xa-32|0;xa=e;if(C(Ba[v[v[c>>2]+120>>2]](c))==C(0)){a9(v[37696],2,11709,844,64121,0);Ba[v[v[c>>2]+116>>2]](c,C(1))}Ba[v[v[c>>2]+132>>2]](e+16|0,c);if(!(!(z[e+16>>2]==C(0)|z[e+20>>2]==C(0))&z[e+24>>2]!=C(0))){a9(v[37696],2,11709,851,70758,0);v[e+8>>2]=1065353216;v[e>>2]=1065353216;v[e+4>>2]=1065353216;Ba[v[v[c>>2]+128>>2]](c,e)}xa=e+32|0;c=h+48|0;e=1;a:{if(z[h+284>>2]!=C(0)|z[h+288>>2]!=C(0)|(z[h+292>>2]!=C(0)|z[h+296>>2]!=C(0))){break a}if(z[h+300>>2]!=C(0)){break a}e=z[h+304>>2]!=C(0)}i=a+16|0;zu(i,c,0,0,0);ju(h+20|0,a,h,0,0,0);n=Ba[v[v[b>>2]+100>>2]](b)|0;c=n;l=i+5012|0;d=xa-16|0;xa=d;v[c>>2]=i;g=v[c+4>>2];b:{if(!w[i+4785|0]){v[c+4>>2]=g&268435455|-2147483648;j=i+16|0;l=c+12|0;if(v[c+88>>2]){g=v[v[c+84>>2]>>2];g=g?g+48|0:0}else{g=0}nP(j,l,g+16|0);break b}j=g&1073741823;if(g>>>0>=3221225472){v[c+4>>2]=j|-2147483648;if(g&268435456){break b}v[d+4>>2]=c;Og(l,d+4|0);break b}v[c+4>>2]=j|1073741824;v[d+8>>2]=c;g=qh(l,d+8|0,d+15|0);if(w[d+15|0]){break b}v[g>>2]=v[d+8>>2]}xa=d+16|0;t[c+60|0]=z[c+56>>2]==C(0);l=v[n+12>>2];if(l){r=h,s=sG(l,v[h- -64>>2]),v[r+364>>2]=s}v[h+368>>2]=0;c=Ba[v[v[h>>2]+252>>2]](h)|0;if(c){Ku(i,Ba[v[v[c>>2]+48>>2]](c)|0)}if(v[h+16>>2]){ph(h+12|0)}o=k<<2;t[f+12|0]=o>>>0>1024;c:{if(o>>>0>=1025){g=t9(o,11709,888);break c}g=f-(o+15&-16)|0;xa=g}v[f+8>>2]=g;v[g>>2]=h;p=k-1|0;if(p){k=1;while(1){j=v[v[f+8>>2]+(m<<2)>>2];c=v[j+356>>2];d=v[j+352>>2];if(Ba[v[v[j>>2]+260>>2]](j)|0){q=c?d:0;c=e;g=0;while(1){d=v[q+(g<<2)>>2];if(C(Ba[v[v[d>>2]+120>>2]](d))==C(0)){a9(v[37696],2,11709,844,64121,0);Ba[v[v[d>>2]+116>>2]](d,C(1))}Ba[v[v[d>>2]+132>>2]](f+32|0,d);if(!(!(z[f+32>>2]==C(0)|z[f+36>>2]==C(0))&z[f+40>>2]!=C(0))){a9(v[37696],2,11709,851,70758,0);v[f+24>>2]=1065353216;v[f+16>>2]=1065353216;v[f+20>>2]=1065353216;Ba[v[v[d>>2]+128>>2]](d,f+16|0)}e=1;if(!(c&1)){e=0;d:{if(z[d+284>>2]!=C(0)|z[d+288>>2]!=C(0)|(z[d+292>>2]!=C(0)|z[d+296>>2]!=C(0))){break d}if(z[d+300>>2]!=C(0)){break d}e=z[d+304>>2]==C(0)}e=e^1}zu(i,d+48|0,0,0,0);ju(d+20|0,a,d,0,0,0);c=Ba[v[v[d>>2]+252>>2]](d)|0;if(c){Ku(i,Ba[v[v[c>>2]+48>>2]](c)|0)}if(v[d+16>>2]){ph(d+12|0)}c=Ba[v[v[d>>2]+248>>2]](d)|0;c=v[(Ba[v[v[c>>2]+100>>2]](c)|0)+12>>2];if(c){r=d,s=sG(c,v[d- -64>>2]),v[r+364>>2]=s}v[v[f+8>>2]+(k<<2)>>2]=d;k=k+1|0;c=e;g=g+1|0;if(Ba[v[v[j>>2]+260>>2]](j)>>>0>g>>>0){continue}break}}m=m+1|0;if((p|0)!=(m|0)){continue}break}}if(!(!(e&1)|z[n+56>>2]!=C(0))){cj(n,1,0)}v[f+32>>2]=b;e=qh(a+5944|0,f+32|0,f+16|0);if(!w[f+16|0]){v[e>>2]=v[f+32>>2]}e:{if(!l){break e}wG(l);v[v[f+8>>2]>>2]=h;if(!p){break e}m=0;e=1;while(1){i=v[v[f+8>>2]+(m<<2)>>2];c=v[i+356>>2];d=v[i+352>>2];if(Ba[v[v[i>>2]+260>>2]](i)|0){g=c?d:0;k=0;while(1){d=v[g+(k<<2)>>2];c=Ba[v[v[d>>2]+264>>2]](d)|0;j=v[l>>2];r=d,s=Ba[v[v[j>>2]+32>>2]](j,c)|0,v[r+368>>2]=s;f:{if(x[b+4>>1]!=12){break f}g:{h:{c=Ba[v[v[d>>2]+252>>2]](d)|0;switch((Ba[v[v[c>>2]+60>>2]](c)|0)-3|0){case 0:break f;case 1:break h;default:break g}}a9(v[37696],2,11709,952,1723,0);Ba[v[v[c>>2]+56>>2]](c,3);v[d+368>>2]=0}if((Ba[v[v[c>>2]+68>>2]](c,3)|Ba[v[v[c>>2]+68>>2]](c,4)|Ba[v[v[c>>2]+68>>2]](c,5)|Ba[v[v[c>>2]+68>>2]](c,1)|Ba[v[v[c>>2]+68>>2]](c,2)|Ba[v[v[c>>2]+68>>2]](c,0))&255){break f}a9(v[37696],2,11709,973,1623,0);Ba[v[v[c>>2]+56>>2]](c,3);v[d+368>>2]=0}v[v[f+8>>2]+(e<<2)>>2]=d;e=e+1|0;k=k+1|0;if(Ba[v[v[i>>2]+260>>2]](i)>>>0>k>>>0){continue}break}}m=m+1|0;if((p|0)!=(m|0)){continue}break}}i:{if(x[b+4>>1]!=12){break i}if(t[n+48|0]&1){e=v[h- -64>>2];if(e){t[v[e+100>>2]+159|0]=1}}c=a+32|0;a=xa-16|0;xa=a;e=v[n+12>>2];if(e){h=v[e>>2];c=v[c+1012>>2];v[a+8>>2]=v[e+48>>2];Ba[v[v[c>>2]+32>>2]](c,h,a+8|0)}xa=a+16|0;if(!v[b+124>>2]){break i}a=0;while(1){e=v[v[b+120>>2]+(a<<2)>>2];tG(l,v[(Ba[v[v[e>>2]+104>>2]](e)|0)+88>>2]);a=a+1|0;if(a>>>0>2]){continue}break}}if(o>>>0>=1025){u9(v[f+8>>2])}xa=f+48|0}function F2(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0);p=xa-16|0;xa=p;l=z[a+20>>2];i=z[a+32>>2];k=z[a+8>>2];h=z[a>>2];j=C(z[a+12>>2]-h);o=z[a+4>>2];q=C(z[a+28>>2]-o);h=C(z[a+24>>2]-h);o=C(z[a+16>>2]-o);r=C(C(j*q)-C(h*o));z[p+8>>2]=r;l=C(l-k);k=C(i-k);i=C(C(l*h)-C(k*j));z[p+4>>2]=i;k=C(C(o*k)-C(q*l));z[p>>2]=k;xa=p+16|0;a:{if(g){g=0;if(C(C(r*z[c+8>>2])+C(C(k*z[c>>2])+C(i*z[c+4>>2])))>=C(0)){break a}}g=a;k=z[p+8>>2];I=z[b+8>>2];l=z[p>>2];J=z[b>>2];i=z[p+4>>2];K=z[b+4>>2];v=C(C(C(D(k))*I)+C(C(C(D(l))*J)+C(C(D(i))*K)));o=z[a+8>>2];q=z[a>>2];r=z[a+4>>2];h=C(C(o*k)+C(C(q*l)+C(r*i)));w=z[a+20>>2];x=z[a+12>>2];y=z[a+16>>2];j=C(C(w*k)+C(C(x*l)+C(i*y)));A=h>j?h:j;E=z[a+32>>2];F=z[a+24>>2];G=z[a+28>>2];s=C(C(E*k)+C(C(F*l)+C(i*G)));m=C(C(-v)-(s=C(0);b:{c:{s=z[c+8>>2];v=z[c>>2];A=z[c+4>>2];k=C(C(s*k)+C(C(v*l)+C(i*A)));d:{if(!(C(D(k))C(34028234663852886e22)){break c}k=k>l?k:l;if(kC(-34028234663852886e22)?i:C(-34028234663852886e22);break d}if(!a){break c}l=C(34028234663852886e22);k=C(-34028234663852886e22)}i=q>x?q:x;i=C(C(-J)-(i>F?i:F));h=q=C(0);e:{if(!(C(D(v))>2]);i=C(i*j);h=C(h*j);j=h>i?i:h;if(j>l){break c}i=hk?j:k;l=iy?r:y;i=C(C(-K)-(i>G?i:G));h=r=C(0);f:{if(!(C(D(A))>2]);i=C(i*j);h=C(h*j);j=h>i?i:h;if(j>l){break c}i=hk?j:k;l=iw?o:w;i=C(C(-I)-(i>E?i:E));h=o=C(0);g:{if(!(C(D(s))>2]);i=C(i*j);h=C(h*j);j=h>i?i:h;if(j>l){break c}i=hk?j:k;l=i>2];b=g+B(b,12)|0;t=z[b>>2];i=C(z[c+4>>2]-z[b+4>>2]);N=C(i*i);h=C(z[c+8>>2]-z[b+8>>2]);L=C(C(h*h)+C(0));h:{if(!(C(N+L)>=C(9.999999974752427e-7))){break h}H=C(C(C(D(i))*I)+C(C(J*C(0))+C(K*C(D(h)))));j=C(C(o*i)+C(C(q*C(0))-C(r*h)));m=C(C(w*i)+C(C(x*C(0))-C(y*h)));M=j>m?j:m;n=C(C(E*i)+C(C(F*C(0))-C(G*h)));M=C(C(-H)-(n=C(0);d=b&d;j=C(C(s*i)+C(C(v*C(0))-C(A*h)));if(!(C(D(j))l){break c}j=j>m?j:m;if(j=C(9.999999974752427e-7))){break i}L=C(C(C(D(j))*I)+C(C(C(D(h))*J)+P));m=C(C(C(q*h)+S)-C(o*j));n=C(C(C(x*h)+R)-C(w*j));H=m>n?m:n;u=C(C(C(F*h)+Q)-C(E*j));H=C(C(-L)-(u=C(0);d=b&d;h=C(C(C(v*h)+O)-C(s*j));if(!(C(D(h))l){break c}h=h>m?h:m;if(h=C(9.999999974752427e-7))){break j}u=C(C(I*C(0))+C(C(C(D(i))*J)+C(K*C(D(j)))));h=C(C(o*C(0))+C(C(r*j)-C(q*i)));m=C(C(w*C(0))+C(C(y*j)-C(x*i)));t=h>m?h:m;n=C(C(E*C(0))+C(C(G*j)-C(F*i)));t=C(C(-u)-(n=C(0);d=b&d;i=C(C(s*C(0))+C(C(A*j)-C(v*i)));if(!(C(D(i))i?i:h;if(j>l){break c}i=hk?j:k;l=i>2]=k;g=1;break b}g=0}}return g}function GV(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0,x=0,y=C(0),A=C(0),D=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0);i=xa-288|0;xa=i;v[i+76>>2]=0;n=z[c+8>>2];q=z[c>>2];s=z[c+4>>2];v[i+60>>2]=0;c=C(C(n*n)+C(C(q*q)+C(s*s)))>C(0);k=c?n:C(0);z[i+56>>2]=k;l=c?s:C(0);z[i+52>>2]=l;p=c?q:C(1);z[i+48>>2]=p;c=v[a+4>>2];u=w[c+32|0];t=v[b+4>>2];x=w[t+32|0];y=C((u?z[c+16>>2]:C(0))+(x?z[t+16>>2]:C(0)));O=C(z[d>>2]+y);n=C(C(1)/C(K(C(C(k*k)+C(C(p*p)+C(l*l))))));m=C(k*n);r=C(l*n);o=C(p*n);n=z[t+20>>2];q=z[c+20>>2];P=C(G(C((n>2];v[i+24>>2]=v[i+56>>2];v[i+28>>2]=c;c=v[i+52>>2];v[i+16>>2]=v[i+48>>2];v[i+20>>2]=c;c=v[a+4>>2];q=z[c+56>>2];j=z[c+52>>2];s=z[c+72>>2];M=z[c+68>>2];D=z[c+48>>2];E=z[c+64>>2];c=v[b+4>>2];n=z[c+56>>2];H=z[c+52>>2];I=z[c+72>>2];N=c- -64|0;Q=z[N>>2];R=z[c+68>>2];S=z[c+88>>2];T=z[c+80>>2];U=z[c+84>>2];J=z[c+48>>2];v[i+284>>2]=0;z[i+280>>2]=C(S*k)+C(C(T*p)+C(l*U));z[i+276>>2]=C(I*k)+C(C(Q*p)+C(l*R));z[i+272>>2]=C(n*k)+C(C(J*p)+C(l*H));t=HV(c,i+272|0);n=m;m=C(-p);d=C(C(C(D*m)-C(j*l))-C(q*k))>C(C(C(E*m)-C(M*l))-C(s*k));H=d?q:s;t=v[c+152>>2]+B(t,12)|0;m=z[t+8>>2];k=z[t>>2];l=z[t+4>>2];I=C(C(z[c+88>>2]*m)+C(C(z[c+56>>2]*k)+C(l*z[c+72>>2])));p=C(H-I);q=o;D=d?D:E;E=C(C(z[c+80>>2]*m)+C(C(z[c+48>>2]*k)+C(l*z[N>>2])));o=C(D-E);s=r;r=d?j:M;k=C(C(z[c+84>>2]*m)+C(C(z[c+52>>2]*k)+C(l*z[c+68>>2])));j=C(r-k);m=C(C(n*p)+C(C(q*o)+C(s*j)));if(m>O){break a}if(!(!(m>y)|!(m>C(A*C(.9997749924659729))))){IV(i+208|0,i+144|0,i+80|0,i+48|0,i+272|0,i,v[i+76>>2]);j=z[v[a+4>>2]+16>>2];m=z[i+272>>2];r=z[i+276>>2];o=z[i+280>>2];v[e+12>>2]=0;z[e+8>>2]=o-(u?C(n*j):C(0));z[e+4>>2]=r-(u?C(s*j):C(0));z[e>>2]=m-(u?C(q*j):C(0));j=z[v[b+4>>2]+16>>2];m=z[i>>2];r=z[i+4>>2];o=z[i+8>>2];v[f+12>>2]=0;z[f+8>>2]=o+(x?C(n*j):C(-0));z[f+4>>2]=r+(x?C(s*j):C(-0));z[f>>2]=m+(x?C(q*j):C(-0));z[h>>2]=G(C(A-y),C(0));v[g+12>>2]=0;z[g+8>>2]=-n;z[g+4>>2]=-s;z[g>>2]=-q;L=1;break a}d=v[i+76>>2];t=d<<4;c=t+(i+144|0)|0;v[c+12>>2]=0;z[c+8>>2]=H;z[c+4>>2]=r;z[c>>2]=D;c=t+(i+80|0)|0;v[c+12>>2]=0;z[c+8>>2]=I;z[c+4>>2]=k;z[c>>2]=E;c=t+(i+208|0)|0;v[c+12>>2]=0;z[c+8>>2]=p;z[c+4>>2]=j;z[c>>2]=o;v[i+76>>2]=d+1;b:{c:{switch(d-1|0){case 0:o=z[i+216>>2];j=C(z[i+232>>2]-o);k=z[i+208>>2];m=C(z[i+224>>2]-k);l=z[i+212>>2];r=C(z[i+228>>2]-l);p=C(C(j*j)+C(C(m*m)+C(r*r)));if(p<=C(1.1920928955078125e-7)){v[i+76>>2]=1;c=v[i+212>>2];v[i+272>>2]=v[i+208>>2];v[i+276>>2]=c;c=v[i+220>>2];v[i+280>>2]=v[i+216>>2];v[i+284>>2]=c;break b}v[i+284>>2]=0;J=j;j=C(F(C(C(C(C(C(-k)*m)-C(r*l))-C(o*j))/p),C(1)));j=j>C(0)?j:C(0);z[i+280>>2]=o+C(J*j);z[i+276>>2]=l+C(r*j);z[i+272>>2]=k+C(m*j);break b;case 1:JV(i+272|0,i+208|0,i+144|0,i+80|0,i+76|0);break b;case 2:N_(i+272|0,i+208|0,i+144|0,i+80|0,i+76|0);break b;default:break c}}v[i+284>>2]=0;z[i+280>>2]=p;z[i+276>>2]=j;z[i+272>>2]=o}c=v[i+276>>2];v[i+48>>2]=v[i+272>>2];v[i+52>>2]=c;c=v[i+284>>2];v[i+56>>2]=v[i+280>>2];v[i+60>>2]=c;k=z[i+56>>2];p=z[i+48>>2];l=z[i+52>>2];j=C(K(C(C(k*k)+C(C(p*p)+C(l*l)))));if(P>2]=0;a=v[i+276>>2];v[h+4>>2]=v[i+272>>2];v[h+8>>2]=a;v[h+12>>2]=v[i+280>>2];L=2;break a}m=z[v[b+4>>2]+16>>2];r=z[v[a+4>>2]+16>>2];IV(i+208|0,i+144|0,i+80|0,i+16|0,i+272|0,i,v[i+76>>2]);j=z[v[a+4>>2]+16>>2];o=z[i+272>>2];k=z[i+276>>2];l=z[i+280>>2];v[e+12>>2]=0;z[e+8>>2]=l-(u?C(n*j):C(0));z[e+4>>2]=k-(u?C(s*j):C(0));z[e>>2]=o-(u?C(q*j):C(0));j=z[v[b+4>>2]+16>>2];o=z[i>>2];k=z[i+4>>2];l=z[i+8>>2];v[f+12>>2]=0;z[f+8>>2]=l+(x?C(n*j):C(-0));z[f+4>>2]=k+(x?C(s*j):C(-0));z[f>>2]=o+(x?C(q*j):C(-0));v[g+12>>2]=0;z[g+8>>2]=-n;z[g+4>>2]=-s;z[g>>2]=-q;n=C(G(C(A-y),C(0)));z[h>>2]=n;a=v[i+40>>2];v[h+4>>2]=v[i+36>>2];v[h+8>>2]=a;v[h+12>>2]=v[i+44>>2];L=n>(y>C(0)?y:C((m>2];L=k+6360|0;v[L>>2]=v[h+12>>2];y=v[h+8>>2];v[k+6352>>2]=v[h+4>>2];v[k+6356>>2]=y;M=z[b+48>>2];N=z[b+52>>2];O=z[b+56>>2];P=z[a+48>>2];Q=z[a+52>>2];R=z[a+56>>2];S=z[f+52>>2];o=z[f+36>>2];p=z[f+20>>2];T=z[f+56>>2];q=z[f+40>>2];r=z[f+24>>2];U=z[a+44>>2];V=z[b+44>>2];s=z[a>>2];W=z[f+48>>2];H=z[f+32>>2];u=z[f>>2];w=z[f+16>>2];I=z[a+4>>2];D=z[f+4>>2];J=z[a+8>>2];l=z[b+8>>2];E=z[f+8>>2];m=z[b>>2];n=z[b+4>>2];v[k+6284>>2]=0;J=C(C(T+C(C(q*l)+C(C(E*m)+C(n*r))))-J);z[k+6280>>2]=J;I=C(C(S+C(C(o*l)+C(C(D*m)+C(n*p))))-I);z[k+6276>>2]=I;H=C(C(W+C(C(H*l)+C(C(u*m)+C(n*w))))-s);z[k+6272>>2]=H;y=k+6272|0;Ba[v[v[c>>2]+8>>2]](k+6256|0,c,y);o=z[e+36>>2];p=z[e+20>>2];n=z[e+40>>2];m=z[e+24>>2];q=z[e+32>>2];r=z[e>>2];s=z[e+16>>2];u=z[e+4>>2];l=z[e+8>>2];v[k+6252>>2]=0;x=l;l=C(-z[k+6272>>2]);A=m;m=z[k+6276>>2];w=n;n=z[k+6280>>2];z[k+6248>>2]=C(C(x*l)-C(A*m))-C(w*n);z[k+6244>>2]=C(C(u*l)-C(p*m))-C(o*n);z[k+6240>>2]=C(C(r*l)-C(s*m))-C(q*n);t=k+6240|0;Ba[v[v[d>>2]+8>>2]](k+6224|0,d,t);o=z[e+52>>2];p=z[e+36>>2];q=z[e+20>>2];l=z[e+56>>2];m=z[e+40>>2];n=z[e+24>>2];r=z[e+48>>2];s=z[e+32>>2];u=z[e>>2];w=z[e+16>>2];D=z[e+4>>2];E=z[e+8>>2];v[k+6220>>2]=0;x=l;l=z[k+6264>>2];F=C(m*l);m=z[k+6256>>2];A=n;n=z[k+6260>>2];z[k+6216>>2]=x+C(F+C(C(E*m)+C(A*n)));z[k+6212>>2]=o+C(C(p*l)+C(C(D*m)+C(n*q)));z[k+6208>>2]=r+C(C(s*l)+C(C(u*m)+C(n*w)));o=z[f+52>>2];p=z[f+36>>2];q=z[f+20>>2];l=z[f+56>>2];m=z[f+40>>2];n=z[f+24>>2];r=z[f+48>>2];s=z[f+32>>2];u=z[f>>2];w=z[f+16>>2];D=z[f+4>>2];E=z[f+8>>2];v[k+6204>>2]=0;x=l;l=z[k+6232>>2];F=C(m*l);m=z[k+6224>>2];A=n;n=z[k+6228>>2];z[k+6200>>2]=x+C(F+C(C(E*m)+C(A*n)));z[k+6196>>2]=o+C(C(p*l)+C(C(D*m)+C(n*q)));z[k+6192>>2]=r+C(C(s*l)+C(C(u*m)+C(n*w)));v[k+3112>>2]=0;v[k+32>>2]=0;U1(a,c,k+3112|0,k+6192|0,y);U1(b,d,k+32|0,k+6208|0,t);y=v[k+3112>>2];a:{b:{if(!y){break b}a=0;X=v[k+32>>2];if(!X){break b}u=C(-R);w=C(-Q);D=C(-P);E=C(-O);_=C(-N);$=C(-M);aa=k+32|4;ba=k+3112|4;Y=1;while(1){b=B(a,12)+ba|0;A=z[b+4>>2];ca=C(-A);F=z[b>>2];da=C(-F);Z=z[b+8>>2];ea=C(-Z);b=0;while(1){t=B(b,12)+aa|0;l=z[t+8>>2];m=z[t>>2];n=z[t+4>>2];p=C(C(z[f+36>>2]*l)+C(C(z[f+4>>2]*m)+C(n*z[f+20>>2])));q=C(C(z[f+32>>2]*l)+C(C(z[f>>2]*m)+C(n*z[f+16>>2])));o=C(C(F*p)+C(q*ca));l=C(C(z[f+40>>2]*l)+C(C(z[f+8>>2]*m)+C(n*z[f+24>>2])));m=C(C(A*l)+C(p*ea));n=C(C(Z*q)+C(l*da));l=C(C(o*o)+C(C(m*m)+C(n*n)));c:{if(l>2]=0;x=o;o=C(C(1)/C(K(l)));l=C(x*o);z[k+24>>2]=l;m=C(m*o);z[k+16>>2]=m;n=C(n*o);z[k+20>>2]=n;q=z[e+40>>2];r=z[e+8>>2];s=z[e+24>>2];p=z[e+32>>2];x=z[e>>2];fa=z[e+16>>2];o=z[e+36>>2];ga=z[e+4>>2];ha=z[e+20>>2];v[k+12>>2]=0;o=C(C(o*l)+C(C(ga*m)+C(n*ha)));z[k+4>>2]=o;p=C(C(p*l)+C(C(x*m)+C(n*fa)));z[k>>2]=p;q=C(C(q*l)+C(C(r*m)+C(n*s)));z[k+8>>2]=q;r=C(C(l*(l>C(0)?R:u))+C(C(m*(m>C(0)?P:D))+C(n*(n>C(0)?Q:w))));r=r>U?r:U;s=C(-r);l=C(C(J*l)+C(C(H*m)+C(I*n)));m=C(C(q*(q>C(0)?O:E))+C(C(p*(p>C(0)?M:$))+C(o*(o>C(0)?N:_))));m=m>V?m:V;n=C(l+m);l=C(l-m);if(C((nG){break c}Ba[v[v[c>>2]+12>>2]](c,k+16|0,k+6336|0,k+6320|0);l=z[k+24>>2];m=z[k+16>>2];n=z[k+20>>2];Ba[v[v[d>>2]+12>>2]](d,k,k+6304|0,k+6288|0);m=C(C(T*l)+C(C(W*m)+C(S*n)));l=C(m+z[k+6304>>2]);z[k+6304>>2]=l;m=C(m+z[k+6288>>2]);z[k+6288>>2]=m;n=z[k+6320>>2];o=z[g>>2];if(l>C(n+o)|z[k+6336>>2]>C(m+o)){break a}l=C(n-l);if(!(l>2];v[i>>2]=v[k+16>>2];v[i+4>>2]=t;t=v[k+28>>2];v[i+8>>2]=v[k+24>>2];v[i+12>>2]=t;v[j>>2]=2;G=l}b=b+1|0;if((X|0)!=(b|0)){continue}break}a=a+1|0;Y=y>>>0>a>>>0;if((a|0)!=(y|0)){continue}break}}z[h>>2]=G;v[h+12>>2]=v[L>>2];a=v[k+6356>>2];v[h+4>>2]=v[k+6352>>2];v[h+8>>2]=a}xa=k+6368|0;return(Y^-1)&1}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,q=0;a:{if(b>>>0<=16){b=v[a+296>>2];if(!b){h=xa-16|0;xa=h;e=a+8|0;c=v[e+284>>2];if(c){b=v[37696];d=b+12|0;g=(m=d,n=c,o=Ba[v[v[b>>2]+20>>2]](b)|0?53101:63804,p=18373,q=180,l=v[v[d>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}else{g=0}v[h+12>>2]=g;b=v[e+268>>2];b:{if(b>>>0>=(v[e+272>>2]&2147483647)>>>0){b=0;d=e+4|0;c=v[d+268>>2];i=c&2147483647?c<<1:1;c:{if(!i){break c}c=i<<2;if(!(w[d+256|0]|c>>>0>256)){t[d+256|0]=1;b=d;break c}if(!c){break c}b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?53101:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,16608,553)|0}f=v[d+264>>2];k=(f<<2)+b|0;if((f|0)>0){j=v[d+260>>2];c=b;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(k>>>0>c>>>0){continue}break}}v[k>>2]=v[h+12>>2];d:{if(v[d+268>>2]<0){break d}c=v[d+260>>2];if((c|0)==(d|0)){t[d+256|0]=0;break d}if(!c){break d}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,c);f=v[d+264>>2]}v[d+268>>2]=i;v[d+260>>2]=b;v[d+264>>2]=f+1;break b}v[v[e+264>>2]+(b<<2)>>2]=g;v[e+268>>2]=b+1}b=(g+(v[e+276>>2]<<4)|0)-16|0;if(g>>>0<=b>>>0){c=v[e+288>>2];while(1){v[b>>2]=c;c=b;b=b-16|0;if(g>>>0<=b>>>0){continue}break}v[e+288>>2]=c}xa=h+16|0;b=v[a+296>>2]}v[a+296>>2]=v[b>>2];v[a+288>>2]=v[a+288>>2]+1;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;break a}if(b>>>0<=64){b=v[a+588>>2];if(!b){h=xa-16|0;xa=h;e=a+300|0;c=v[e+284>>2];if(c){b=v[37696];d=b+12|0;g=(q=d,p=c,o=Ba[v[v[b>>2]+20>>2]](b)|0?52793:63804,n=18373,m=180,l=v[v[d>>2]+8>>2],Ba[l](q|0,p|0,o|0,n|0,m|0)|0)}else{g=0}v[h+12>>2]=g;b=v[e+268>>2];e:{if(b>>>0>=(v[e+272>>2]&2147483647)>>>0){b=0;d=e+4|0;c=v[d+268>>2];i=c&2147483647?c<<1:1;f:{if(!i){break f}c=i<<2;if(!(w[d+256|0]|c>>>0>256)){t[d+256|0]=1;b=d;break f}if(!c){break f}b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?52793:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,16608,553)|0}f=v[d+264>>2];k=(f<<2)+b|0;if((f|0)>0){j=v[d+260>>2];c=b;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(k>>>0>c>>>0){continue}break}}v[k>>2]=v[h+12>>2];g:{if(v[d+268>>2]<0){break g}c=v[d+260>>2];if((c|0)==(d|0)){t[d+256|0]=0;break g}if(!c){break g}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,c);f=v[d+264>>2]}v[d+268>>2]=i;v[d+260>>2]=b;v[d+264>>2]=f+1;break e}v[v[e+264>>2]+(b<<2)>>2]=g;v[e+268>>2]=b+1}b=(g+(v[e+276>>2]<<6)|0)+-64|0;if(g>>>0<=b>>>0){c=v[e+288>>2];while(1){v[b>>2]=c;c=b;b=b+-64|0;if(g>>>0<=b>>>0){continue}break}v[e+288>>2]=c}xa=h+16|0;b=v[a+588>>2]}v[a+588>>2]=v[b>>2];v[a+580>>2]=v[a+580>>2]+1;v[b+56>>2]=0;v[b+60>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;break a}if(b>>>0<=256){b=v[a+880>>2];if(!b){h=xa-16|0;xa=h;e=a+592|0;c=v[e+284>>2];if(c){b=v[37696];d=b+12|0;g=(m=d,n=c,o=Ba[v[v[b>>2]+20>>2]](b)|0?53423:63804,p=18373,q=180,l=v[v[d>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}else{g=0}v[h+12>>2]=g;b=v[e+268>>2];h:{if(b>>>0>=(v[e+272>>2]&2147483647)>>>0){b=0;d=e+4|0;c=v[d+268>>2];i=c&2147483647?c<<1:1;i:{if(!i){break i}c=i<<2;if(!(w[d+256|0]|c>>>0>256)){t[d+256|0]=1;b=d;break i}if(!c){break i}b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?53423:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,16608,553)|0}f=v[d+264>>2];k=(f<<2)+b|0;if((f|0)>0){j=v[d+260>>2];c=b;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(k>>>0>c>>>0){continue}break}}v[k>>2]=v[h+12>>2];j:{if(v[d+268>>2]<0){break j}c=v[d+260>>2];if((c|0)==(d|0)){t[d+256|0]=0;break j}if(!c){break j}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,c);f=v[d+264>>2]}v[d+268>>2]=i;v[d+260>>2]=b;v[d+264>>2]=f+1;break h}v[v[e+264>>2]+(b<<2)>>2]=g;v[e+268>>2]=b+1}b=(g+(v[e+276>>2]<<8)|0)-256|0;if(g>>>0<=b>>>0){c=v[e+288>>2];while(1){v[b>>2]=c;c=b;b=b-256|0;if(g>>>0<=b>>>0){continue}break}v[e+288>>2]=c}xa=h+16|0;b=v[a+880>>2]}v[a+880>>2]=v[b>>2];v[a+872>>2]=v[a+872>>2]+1;I9(b,0,256);break a}a=b<<2;if(!a){b=0;break a}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,17821,60)|0}return b|0}function H_(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0);n=xa+-64|0;xa=n;g=z[b>>2];z[n+48>>2]=g;h=z[b+4>>2];z[n+52>>2]=h;i=z[b+8>>2];z[n+56>>2]=i;k=z[a>>2];l=z[a+4>>2];z[n+40>>2]=C(i*C(.5))+z[a+8>>2];z[n+36>>2]=l+C(h*C(.5));z[n+32>>2]=k+C(g*C(.5));u=C(K(C(C(i*i)+C(C(g*g)+C(h*h)))));k=u;if(k!=C(0)){v=C(C(1)/u);z[n+56>>2]=i*v;z[n+52>>2]=h*v;z[n+48>>2]=g*v;k=C(u*C(.5))}g=z[d>>2];z[n+16>>2]=g;h=z[d+4>>2];z[n+20>>2]=h;i=z[d+8>>2];z[n+24>>2]=i;l=z[c>>2];s=z[c+4>>2];z[n+8>>2]=C(i*C(.5))+z[c+8>>2];z[n+4>>2]=s+C(h*C(.5));z[n>>2]=l+C(g*C(.5));t=C(K(C(C(i*i)+C(C(g*g)+C(h*h)))));s=t;if(t!=C(0)){w=C(C(1)/t);z[n+24>>2]=i*w;z[n+20>>2]=h*w;z[n+16>>2]=g*w;s=C(t*C(.5))}h=s;g=C(z[n+40>>2]-z[n+8>>2]);i=C(z[n+32>>2]-z[n>>2]);l=C(z[n+36>>2]-z[n+4>>2]);m=C(C(g*g)+C(C(i*i)+C(l*l)));o=z[n+56>>2];p=z[n+48>>2];r=z[n+52>>2];j=C(C(g*o)+C(C(i*p)+C(l*r)));q=g;g=z[n+24>>2];x=i;i=z[n+16>>2];y=l;l=z[n+20>>2];q=C(C(q*g)+C(C(x*i)+C(y*l)));a:{b:{o=C(C(o*g)+C(C(p*i)+C(r*l)));r=C(D(C(C(1)-C(o*o))));if(r>=C(9.999999974752427e-7)){l=C(-q);g=C(r*h);p=C(-o);i=C(C(p*j)+q);q=C(C(o*q)-j);x=C(r*k);if(q>=C(-x)){y=C(-g);if(q<=x){if(i>=y){if(g>=i){h=C(C(1)/r);g=C(q*h);h=C(i*h);j=C(m+C(C(g*C(C(j+j)+C(g+C(p*h))))+C(h*C(C(l+l)+C(h+C(p*g))))));break a}i=C(C(p*h)+j);g=C(-i);if(i>k){j=C(m+C(C(C(C(l+l)+h)*h)-C(k*C(C(g*C(-2))-k))));g=C(-k);break a}if(g<=k){j=C(m+C(C(i*g)+C(C(C(l+l)+h)*h)));break a}j=C(m+C(C(k*C(k-C(g+g)))+C(C(C(l+l)+h)*h)));g=k;break a}i=C(C(o*h)+j);g=C(-i);h=C(-h);if(i>k){j=C(m+C(C(C(C(l+l)+h)*h)-C(k*C(C(g*C(-2))-k))));g=C(-k);break a}if(g<=k){j=C(m+C(C(i*g)+C(C(C(l+l)+h)*h)));break a}j=C(m+C(C(k*C(k-C(g+g)))+C(C(C(l+l)+h)*h)));g=k;break a}if(i>=y){if(g>=i){i=C(C(p*k)+l);g=C(-i);if(hk){j=C(m+C(C(C(C(l+l)+h)*h)-C(k*C(C(g*C(-2))-k))));g=C(-k);break a}if(g<=k){j=C(m+C(C(i*g)+C(C(C(l+l)+h)*h)));break a}i=C(C(p*k)+l);g=C(-i);if(hh){j=C(m+C(C(h*C(h-C(g+g)))+C(C(C(j+j)+k)*k)));g=k;break a}if(h>=l){j=C(m+C(C(l*g)+C(C(C(j+j)+k)*k)));h=g;g=k;break a}j=C(m+C(C(i*C(i-C(g+g)))+C(C(C(j+j)+k)*k)));h=i;g=k;break a}if(i>=C(-g)){if(g>=i){l=C(C(o*k)+l);i=C(-l);g=C(-k);if(h=i){j=C(m+C(C(l*i)+C(C(C(j+j)+g)*g)));h=i;break a}j=C(m+C(C(h*C(h-C(i+i)))+C(C(C(j+j)+g)*g)));break a}i=C(C(p*h)+j);g=C(-i);if(k=i){j=C(m+C(C(l*i)+C(C(C(j+j)+g)*g)));h=i;break a}j=C(m+C(C(h*C(h-C(i+i)))+C(C(C(j+j)+g)*g)));break a}i=C(-h);p=C(C(o*h)+j);g=C(-p);if(k=p){j=C(m+C(C(p*g)+C(C(C(l+l)+i)*i)));h=i;break a}g=C(-k);o=C(C(o*k)+l);l=C(-o);if(h=l){j=C(m+C(C(o*l)+C(C(C(j+j)+g)*g)));h=l;break a}j=C(m+C(C(h*C(h-C(l+l)))+C(C(C(j+j)+g)*g)));break a}o=oi){g=C(-i);break c}g=C(-l);if(!(i>2]=g}if(f){z[f>>2]=h}h=C(G(j,C(0)));if(e){z[e>>2]=u!=C(0)?C(v*C(k+z[e>>2])):C(0)}if(f){z[f>>2]=t!=C(0)?C(w*C(s+z[f>>2])):C(0)}xa=n- -64|0;return h}function oL(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=xa-32|0;xa=j;i=v[a+72>>2];a:{if((i|0)!=-1){v[a+72>>2]=v[v[a+76>>2]+((i&65535)<<3)>>2];e=v[a+64>>2];break a}e=v[a+64>>2];i=e;if(v[a+68>>2]!=(e|0)){break a}g=v[a+68>>2];f=g+128|0;e=(f|0)!=(f&536870911)?-1:f<<3;if(e){i=v[37696];h=Ba[v[v[i>>2]+20>>2]](i)|0?25051:63804;i=Ba[v[v[i+12>>2]+8>>2]](i+12|0,e,h,13406,870)|0}else{i=0}b:{if(!f){break b}e=i;h=g&7;if(h){while(1){v[e+4>>2]=-1;e=e+8|0;k=k+1|0;if((h|0)!=(k|0)){continue}break}}if((g+127&536870911)>>>0<7){break b}g=i+(f<<3)|0;while(1){v[e+4>>2]=-1;v[e+60>>2]=-1;v[e+52>>2]=-1;v[e+44>>2]=-1;v[e+36>>2]=-1;v[e+28>>2]=-1;v[e+20>>2]=-1;v[e+12>>2]=-1;e=e- -64|0;if((g|0)!=(e|0)){continue}break}}e=v[a+64>>2];if(e){H9(i,v[a+76>>2],e<<3)}e=v[a+76>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}v[a+68>>2]=f;v[a+76>>2]=i;e=v[a+64>>2];i=e}v[a+64>>2]=e+1;c:{if(d){e=v[a+84>>2];f=v[a+80>>2];if((e|0)==(f|0)){e=v[a+96>>2];g=f+128|0;h=(o=-1,p=Raa(g,0,24,0),q=Aa,q?o:p);if(h){d=v[37696];k=Ba[v[v[d>>2]+20>>2]](d)|0?49731:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,h,k,13406,884)|0}else{d=0}if(f){H9(d,e,B(f,24))}if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[a+96>>2]=d;e=v[a+104>>2];f=v[a+84>>2];d=g<<1;if(d){h=v[37696];d=Ba[v[v[h+12>>2]+8>>2]](h+12|0,d,24422,13406,893)|0}else{d=0}if(f){H9(d,e,f<<1)}if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[a+80>>2]=g;v[a+104>>2]=d;e=v[a+84>>2]}v[a+84>>2]=e+1;f=v[b+20>>2];d=v[a+96>>2]+B(e,24)|0;v[d+16>>2]=v[b+16>>2];v[d+20>>2]=f;f=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=f;f=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=f;u[v[a+104>>2]+(e<<1)>>1]=i;t[a+168|0]=1;d=v[a+128>>2];k=e>>>5|0;d:{if(d>>>0>k>>>0){h=e&31;b=v[a+124>>2];break d}f=0;b=0;h=e&31;g=(e+128>>>5|0)+((h|0)!=0)|0;if(g){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g<<2,24422,13406,274)|0;d=v[a+128>>2]}if(d){H9(b,v[a+124>>2],d<<2);f=v[a+128>>2]}if((f|0)!=(g|0)){I9((f<<2)+b|0,0,g-f<<2)}d=v[a+124>>2];if(d){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,d)}v[a+128>>2]=g;v[a+124>>2]=b}b=(k<<2)+b|0;v[b>>2]=v[b>>2]|1<>2]+((i&65535)<<3)|0;v[a+4>>2]=c;v[a>>2]=e;break c}e=v[a+92>>2];f=v[a+88>>2];if((e|0)==(f|0)){e=v[a+100>>2];g=f+128|0;h=(o=-1,p=Raa(g,0,24,0),q=Aa,q?o:p);if(h){d=v[37696];k=Ba[v[v[d>>2]+20>>2]](d)|0?49731:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,h,k,13406,884)|0}else{d=0}if(f){H9(d,e,B(f,24))}if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[a+100>>2]=d;e=v[a+108>>2];f=v[a+92>>2];d=g<<1;if(d){h=v[37696];d=Ba[v[v[h+12>>2]+8>>2]](h+12|0,d,24422,13406,893)|0}else{d=0}if(f){H9(d,e,f<<1)}if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[a+88>>2]=g;v[a+108>>2]=d;d=v[a+112>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d);v[a+112>>2]=0}d=(g<<2)+4|0;if(d){e=v[37696];d=Ba[v[v[e+12>>2]+8>>2]](e+12|0,d,24422,13406,974)|0}else{d=0}v[a+112>>2]=d;e=v[a+92>>2]}v[a+92>>2]=e+1;f=v[b+20>>2];g=B(e,24);d=g+v[a+100>>2]|0;v[d+16>>2]=v[b+16>>2];v[d+20>>2]=f;f=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=f;f=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=f;k=v[a+108>>2];m=k+(e<<1)|0;u[m>>1]=i;n=v[a+76>>2];h=n+((i&65535)<<3)|0;v[h+4>>2]=c;v[h>>2]=e;d=v[a+100>>2];f=v[a+116>>2];e:{if((f|0)!=(e|0)){c=d+B(f,24)|0;l=v[c+20>>2];v[j+24>>2]=v[c+16>>2];v[j+28>>2]=l;l=v[c+12>>2];v[j+16>>2]=v[c+8>>2];v[j+20>>2]=l;l=v[c+4>>2];v[j+8>>2]=v[c>>2];v[j+12>>2]=l;l=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=l;l=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=l;l=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=l;c=v[j+20>>2];b=d+g|0;v[b+8>>2]=v[j+16>>2];v[b+12>>2]=c;c=v[j+28>>2];v[b+16>>2]=v[j+24>>2];v[b+20>>2]=c;c=v[j+12>>2];v[b>>2]=v[j+8>>2];v[b+4>>2]=c;c=k+(f<<1)|0;b=x[c>>1];u[c>>1]=i;u[m>>1]=b;v[(b<<3)+n>>2]=e;v[h>>2]=f;break e}c=d+g|0;d=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d}t[a+169|0]=1;v[a+120>>2]=0;v[a+116>>2]=v[a+116>>2]+1}xa=j+32|0;return i&65535}function yZ(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=0;l=xa-6784|0;xa=l;M=l+6764|0;m=z[d+4>>2];y=C(m+m);u=z[d+8>>2];A=C(y*u);q=z[d>>2];o=C(q+q);r=z[d+12>>2];B=C(o*r);z[M>>2]=A-B;N=l+6756|0;z[N>>2]=A+B;O=l+6768|0;A=C(C(1)-C(q*o));B=C(m*y);z[O>>2]=A-B;P=l+6752|0;s=A;A=C(u+u);p=C(u*A);z[P>>2]=s-p;n=C(o*u);y=C(y*r);z[l+6760>>2]=n+y;o=C(o*m);A=C(A*r);z[l+6748>>2]=o-A;z[l+6744>>2]=n-y;z[l+6740>>2]=o+A;z[l+6736>>2]=C(C(1)-B)-p;F=z[d+16>>2];z[l+6772>>2]=F;Q=l+6776|0;H=z[d+20>>2];z[Q>>2]=H;R=l+6780|0;I=z[d+24>>2];z[R>>2]=I;y=z[e+4>>2];n=C(y+y);o=z[e+8>>2];s=C(n*o);B=z[e>>2];p=C(B+B);A=z[e+12>>2];D=C(p*A);z[l+6716>>2]=s-D;z[l+6708>>2]=s+D;s=C(C(1)-C(B*p));D=C(y*n);z[l+6720>>2]=s-D;E=s;s=C(o+o);G=C(o*s);z[l+6704>>2]=E-G;E=C(p*o);n=C(n*A);z[l+6712>>2]=E+n;p=C(p*y);s=C(s*A);z[l+6700>>2]=p-s;z[l+6696>>2]=E-n;z[l+6692>>2]=p+s;z[l+6688>>2]=C(C(1)-D)-G;G=z[e+16>>2];z[l+6724>>2]=G;E=z[e+20>>2];z[l+6728>>2]=E;K=z[e+24>>2];z[l+6732>>2]=K;L=l+6624|0;S=l+6736|0;T=l+6688|0;p_(L,b,z[f>>2],S,T,i,k);b=v[c+40>>2];v[l+6620>>2]=1088;t[l+6608|0]=1;c=l+2256|0;v[l+6612>>2]=c;ga=v[b+56>>2];p=z[f>>2];n=z[f+8>>2];s=z[f+4>>2];v[l+1292>>2]=0;v[l>>2]=142572;v[l+8>>2]=c;v[l+4>>2]=2;I9(l+1164|0,255,128);v[l+2064>>2]=0;I9(l+1936|0,255,128);v[l+2228>>2]=g;v[l+2224>>2]=e;v[l+2220>>2]=d;z[l+2216>>2]=s;t[l+2213|0]=j;z[l+2208>>2]=n;z[l+2204>>2]=p;v[l+2200>>2]=h;v[l+2188>>2]=a;p=C(G-F);p=C(p+p);n=C(E-H);n=C(n+n);s=C(K-I);s=C(s+s);D=C(C(C(C(-q)*p)-C(n*m))-C(u*s));J=C(C(r*r)+C(-.5));z[l+2160>>2]=C(C(s*J)+C(r*C(C(m*p)-C(q*n))))-C(u*D);z[l+2156>>2]=C(C(n*J)+C(r*C(C(q*s)-C(u*p))))-C(m*D);z[l+2152>>2]=C(C(p*J)+C(r*C(C(u*n)-C(m*s))))-C(q*D);J=C(y*u);U=C(r*B);V=C(A*q);W=C(m*o);n=C(J+C(C(U-V)-W));p=C(n+n);X=C(o*q);Y=C(r*y);Z=C(A*m);_=C(u*B);s=C(X+C(C(Y-Z)-_));D=C(s+s);$=C(C(1)-C(n*p));aa=C(s*D);z[l+2148>>2]=$-aa;ba=C(B*m);ca=C(r*o);da=C(A*u);ea=C(q*y);n=C(ba+C(C(ca-da)-ea));fa=C(n*D);u=C(C(o*u)+C(C(y*m)+C(C(A*r)+C(q*B))));m=C(u*p);z[l+2144>>2]=fa-m;r=C(n*p);q=C(u*D);z[l+2140>>2]=r+q;z[l+2136>>2]=fa+m;m=C(n+n);n=C(n*m);z[l+2132>>2]=$-n;p=C(s*p);m=C(u*m);z[l+2128>>2]=p-m;z[l+2124>>2]=r-q;z[l+2120>>2]=p+m;z[l+2116>>2]=C(C(1)-aa)-n;m=C(F-G);m=C(m+m);r=C(H-E);r=C(r+r);q=C(I-K);q=C(q+q);p=C(C(C(C(-B)*m)-C(r*y))-C(o*q));n=C(C(A*A)+C(-.5));s=C(C(C(q*n)+C(A*C(C(y*m)-C(B*r))))-C(o*p));z[l+2112>>2]=s;D=C(C(C(r*n)+C(A*C(C(B*q)-C(o*m))))-C(y*p));z[l+2108>>2]=D;A=C(C(C(m*n)+C(A*C(C(o*r)-C(y*q))))-C(B*p));z[l+2104>>2]=A;m=C(W+C(C(V-U)-J));o=C(m+m);r=C(_+C(C(Z-Y)-X));y=C(r+r);q=C(C(1)-C(m*o));B=C(r*y);p=C(q-B);z[l+2100>>2]=p;m=C(ea+C(C(da-ca)-ba));n=C(m*y);F=C(u*o);H=C(n-F);z[l+2096>>2]=H;I=C(m*o);y=C(u*y);G=C(I+y);z[l+2092>>2]=G;n=C(n+F);z[l+2088>>2]=n;E=q;q=m;m=C(m+m);q=C(q*m);F=C(E-q);z[l+2084>>2]=F;o=C(r*o);u=C(u*m);r=C(o-u);z[l+2080>>2]=r;m=C(I-y);z[l+2076>>2]=m;y=C(o+u);z[l+2072>>2]=y;q=C(C(C(1)-B)-q);z[l+2068>>2]=q;v[l+2196>>2]=T;v[l+2192>>2]=S;c=l+2232|0;t[c|0]=0;v[l+6616>>2]=0;u=z[a>>2];o=z[a+4>>2];E=C(C(m*u)+C(n*o));m=z[a+8>>2];z[l+2172>>2]=s+C(E+C(p*m));z[l+2168>>2]=D+C(C(C(y*u)+C(F*o))+C(H*m));z[l+2164>>2]=A+C(C(C(q*u)+C(r*o))+C(G*m));z[l+2184>>2]=C(C(C(u*z[l+6744>>2])+C(o*z[N>>2]))+C(m*z[O>>2]))+z[R>>2];z[l+2180>>2]=C(C(C(u*z[l+6740>>2])+C(o*z[P>>2]))+C(m*z[M>>2]))+z[Q>>2];z[l+2176>>2]=C(C(C(u*z[l+6736>>2])+C(o*z[l+6748>>2]))+C(m*z[l+6760>>2]))+z[l+6772>>2];v[l+2248>>2]=b;t[l+2244|0]=k;v[l+2240>>2]=ga;v[l+2236>>2]=i;v[l+2252>>2]=L;Ba[v[(x[b+4>>1]<<2)+142584>>2]](b,L,l,0,1);zZ(l+8|0);b=w[c|0];a=v[l+6620>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=v[l+6612>>2];if((a|0)==(l+2256|0)|!a){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=l+6784|0;return(b|0)!=0}function $A(a){var b=0,c=0,d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0,y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=0,aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=0,Qa=0,Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0);b=v[a+96>>2];A=z[b+24>>2];B=z[b+20>>2];c=v[a+64>>2];D=z[c+24>>2];E=z[c+20>>2];d=v[a+32>>2];F=z[d+24>>2];G=z[d+20>>2];e=v[a>>2];H=z[e+24>>2];I=z[e+20>>2];Ha=z[b+28>>2];J=z[b+16>>2];Ia=z[b+12>>2];K=z[b+8>>2];L=z[b+4>>2];M=z[b>>2];Ja=z[c+28>>2];N=z[c+16>>2];Ka=z[c+12>>2];O=z[c+8>>2];P=z[c+4>>2];Q=z[c>>2];La=z[d+28>>2];R=z[d+16>>2];Ma=z[d+12>>2];S=z[d+8>>2];T=z[d+4>>2];U=z[d>>2];Na=z[e+28>>2];V=z[e+16>>2];Oa=z[e+12>>2];W=z[e+8>>2];X=z[e+4>>2];Y=z[e>>2];a=v[a+24>>2];Z=x[a+2>>1];if(Z){Pa=a+Z|0;while(1){fa=a+160|0;$=w[a+1|0];Z=fa+($<<7)|0;ga=z[a+76>>2];ha=z[a+72>>2];ia=z[a+68>>2];ja=z[a+60>>2];ka=z[a+56>>2];la=z[a+52>>2];ma=z[a+44>>2];na=z[a+40>>2];oa=z[a+36>>2];pa=z[a+92>>2];qa=z[a+88>>2];ra=z[a+84>>2];sa=z[a+64>>2];ta=z[a+48>>2];ua=z[a+32>>2];va=z[a+80>>2];a:{if(!$){n=C(0);o=C(0);p=C(0);q=C(0);break a}Qa=(x[a+2>>1]+a|0)+96|0;Ra=z[a+124>>2];Sa=z[a+120>>2];Ta=z[a+116>>2];Ua=z[a+112>>2];aa=C(C(C(Y*ua)+C(X*ta))+C(W*sa));ba=C(C(C(U*oa)+C(T*la))+C(S*ia));ca=C(C(C(Q*na)+C(P*ka))+C(O*ha));da=C(C(C(M*ma)+C(L*ja))+C(K*ga));q=C(0);u=0;p=C(0);o=C(0);n=C(0);while(1){a=(u<<7)+fa|0;l=z[a+116>>2];g=z[a+52>>2];wa=z[a+36>>2];xa=z[a+20>>2];ya=z[a+4>>2];Va=z[a+100>>2];Wa=z[a+84>>2];f=z[a+68>>2];s=z[a+120>>2];h=z[a+56>>2];za=z[a+40>>2];Aa=z[a+24>>2];Ba=z[a+8>>2];Xa=z[a+104>>2];Ya=z[a+88>>2];i=z[a+72>>2];t=z[a+124>>2];j=z[a+60>>2];Ca=z[a+44>>2];Da=z[a+28>>2];Ea=z[a+12>>2];_=z[a+108>>2];Za=z[a+92>>2];k=z[a+76>>2];ea=z[a+48>>2];m=C(-ea);y=z[a+64>>2];_a=C(C(y*z[a+80>>2])-z[a+96>>2]);r=y;y=z[a>>2];Fa=z[a+16>>2];Ga=z[a+32>>2];r=C(_a-C(r*C(aa+C(C(C(V*y)+C(I*Fa))+C(H*Ga)))));m=C(ea+(m>2];m=m>2]=m;k=C(C(C(k*Za)-_)-C(k*C(da+C(C(C(J*Ea)+C(B*Da))+C(A*Ca)))));_=C(-j);k=C(j+(k>_?k:_));t=k>2]=t;i=C(C(C(i*Ya)-Xa)-C(i*C(ca+C(C(C(N*Ba)+C(E*Aa))+C(D*za)))));k=C(-h);i=C(h+(i>k?i:k));s=i>2]=s;f=C(C(C(f*Wa)-Va)-C(f*C(ba+C(C(C(R*ya)+C(G*xa))+C(F*wa)))));i=C(-g);f=C(g+(f>i?f:i));l=f>2]=l;a=(u<<4)+Qa|0;z[a+12>>2]=t;z[a+8>>2]=s;z[a+4>>2]=l;z[a>>2]=m;f=C(m-ea);n=C(n+f);j=C(t-j);q=C(q+j);h=C(s-h);p=C(p+h);g=C(l-g);o=C(o+g);aa=C(aa+C(va*f));l=C(Ua*f);H=C(H+C(Ga*l));I=C(I+C(Fa*l));V=C(V+C(y*l));da=C(da+C(pa*j));ca=C(ca+C(qa*h));ba=C(ba+C(ra*g));j=C(Ra*j);A=C(A+C(Ca*j));h=C(Sa*h);D=C(D+C(za*h));g=C(Ta*g);F=C(F+C(wa*g));B=C(B+C(Da*j));E=C(E+C(Aa*h));G=C(G+C(xa*g));J=C(J+C(Ea*j));N=C(N+C(Ba*h));R=C(R+C(ya*g));u=u+1|0;if(($|0)!=(u|0)){continue}break}}q=C(pa*q);K=C(K+C(ga*q));p=C(qa*p);O=C(O+C(ha*p));o=C(ra*o);S=C(S+C(ia*o));n=C(va*n);W=C(W+C(sa*n));L=C(L+C(ja*q));P=C(P+C(ka*p));T=C(T+C(la*o));X=C(X+C(ta*n));M=C(M+C(ma*q));Q=C(Q+C(na*p));U=C(U+C(oa*o));Y=C(Y+C(ua*n));a=Z;if(Pa>>>0>a>>>0){continue}break}}z[e+12>>2]=Oa;z[e+8>>2]=W;z[e+4>>2]=X;z[e>>2]=Y;z[d+12>>2]=Ma;z[d+8>>2]=S;z[d+4>>2]=T;z[d>>2]=U;z[c+12>>2]=Ka;z[c+8>>2]=O;z[c+4>>2]=P;z[c>>2]=Q;z[b+12>>2]=Ia;z[b+8>>2]=K;z[b+4>>2]=L;z[b>>2]=M;z[e+28>>2]=Na;z[e+24>>2]=H;z[e+20>>2]=I;z[e+16>>2]=V;z[d+28>>2]=La;z[d+24>>2]=F;z[d+20>>2]=G;z[d+16>>2]=R;z[c+28>>2]=Ja;z[c+24>>2]=D;z[c+20>>2]=E;z[c+16>>2]=N;z[b+28>>2]=Ha;z[b+24>>2]=A;z[b+20>>2]=B;z[b+16>>2]=J}function m3(a,b,c,d,e,f){var g=0,h=0,i=0,j=C(0),k=0,l=0,m=0,n=0,o=0,p=C(0),q=C(0),r=0,s=0,t=C(0),u=0,w=0,x=C(0),y=0,A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=0,M=0,N=0,O=C(0),P=C(0);w=xa-16|0;xa=w;L=c+8|0;M=c+4|0;while(1){l=v[a+28>>2];h=v[l>>2];g=B(h,12)+c|0;j=z[g+8>>2];q=z[g+4>>2];t=z[g>>2];g=B(h,24)+b|0;D=z[g+12>>2];E=z[g+8>>2];F=z[g+4>>2];G=z[g>>2];H=z[g+20>>2];I=z[g+16>>2];h=1;s=v[a+32>>2];if(s>>>0>1){while(1){k=v[(h<<2)+l>>2];g=B(k,24)+b|0;p=z[g+12>>2];D=p>2];E=p>E?E:p;p=z[g+4>>2];F=p>F?F:p;p=z[g>>2];G=p>G?G:p;p=z[g+20>>2];H=p>2];I=p>2]);q=C(q+z[g+4>>2]);t=C(t+z[g>>2]);h=h+1|0;if((s|0)!=(h|0)){continue}break}}z[a+12>>2]=D;z[a+8>>2]=E;z[a+4>>2]=F;z[a>>2]=G;z[a+20>>2]=H;z[a+16>>2]=I;if(f>>>0>>0){u=a+12|0;p=C(s>>>0);x=C(C(1)/p);O=C(x*j);P=C(x*q);x=C(x*t);j=C(0);g=0;q=C(0);t=C(0);while(1){J=t;h=B(v[(g<<2)+l>>2],12)+c|0;t=C(z[h+8>>2]-O);t=C(J+C(t*t));J=q;q=C(z[h+4>>2]-P);q=C(J+C(q*q));J=j;j=C(z[h>>2]-x);j=C(J+C(j*j));g=g+1|0;if((s|0)!=(g|0)){continue}break}y=s-1|0;x=C(C(1)/C(y>>>0));j=C(x*j);z[w>>2]=j;q=C(x*q);z[w+4>>2]=q;g=j>2]>2]+z[g+u>>2])*C(.5));k=c+g|0;K=s&1;a:{if(!y){g=0;h=0;break a}o=s&-2;g=0;h=0;n=0;while(1){i=h<<2;m=i+l|0;r=v[m>>2];if(j>2]){A=m;m=(g<<2)+l|0;v[A>>2]=v[m>>2];v[m>>2]=r;g=g+1|0}i=(i|4)+l|0;m=v[i>>2];if(j>2]){r=i;i=(g<<2)+l|0;v[r>>2]=v[i>>2];v[i>>2]=m;g=g+1|0}h=h+2|0;n=n+2|0;if((o|0)!=(n|0)){continue}break}}b:{if(!K){break b}h=(h<<2)+l|0;n=v[h>>2];if(!(j>2])){break b}i=h;h=(g<<2)+l|0;v[i>>2]=v[h>>2];v[h>>2]=n;g=g+1|0}if(!((g|0)!=(s|0)?g:0)){j=C(C(D+G)*C(.5));c:{if(!y){g=0;h=0;break c}n=s&-2;g=0;h=0;k=0;while(1){o=h<<2;i=o+l|0;m=v[i>>2];if(j>2]){r=i;i=(g<<2)+l|0;v[r>>2]=v[i>>2];v[i>>2]=m;g=g+1|0}o=(o|4)+l|0;i=v[o>>2];if(j>2]){m=o;o=(g<<2)+l|0;v[m>>2]=v[o>>2];v[o>>2]=i;g=g+1|0}h=h+2|0;k=k+2|0;if((n|0)!=(k|0)){continue}break}}d:{if(!K){break d}h=(h<<2)+l|0;k=v[h>>2];if(!(j>2])){break d}i=h;h=(g<<2)+l|0;v[i>>2]=v[h>>2];v[h>>2]=k;g=g+1|0}j=C(C(I+F)*C(.5));e:{if(!y){h=0;k=0;break e}o=s&-2;h=0;k=0;n=0;while(1){i=k<<2;m=i+l|0;r=v[m>>2];if(j>2]){A=m;m=(h<<2)+l|0;v[A>>2]=v[m>>2];v[m>>2]=r;h=h+1|0}i=(i|4)+l|0;m=v[i>>2];if(j>2]){r=i;i=(h<<2)+l|0;v[r>>2]=v[i>>2];v[i>>2]=m;h=h+1|0}k=k+2|0;n=n+2|0;if((o|0)!=(n|0)){continue}break}}f:{if(!K){break f}k=(k<<2)+l|0;n=v[k>>2];if(!(j>2])){break f}i=k;k=(h<<2)+l|0;v[i>>2]=v[k>>2];v[k>>2]=n;h=h+1|0}j=C(C(H+E)*C(.5));g:{if(!y){k=0;n=0;break g}i=s&-2;k=0;n=0;o=0;while(1){m=n<<2;r=m+l|0;N=v[r>>2];if(j>2]){A=r;r=(k<<2)+l|0;v[A>>2]=v[r>>2];v[r>>2]=N;k=k+1|0}m=(m|4)+l|0;r=v[m>>2];if(j>2]){A=m;m=(k<<2)+l|0;v[A>>2]=v[m>>2];v[m>>2]=r;k=k+1|0}n=n+2|0;o=o+2|0;if((i|0)!=(o|0)){continue}break}}q=C(g>>>0);t=C(h>>>0);h:{if(!K){break h}g=(n<<2)+l|0;h=v[g>>2];if(!(j>2])){break h}i=g;g=(k<<2)+l|0;v[i>>2]=v[g>>2];v[g>>2]=h;k=k+1|0}j=C(C(q/p)+C(-.5));j=C(j*j);z[w>>2]=j;q=C(C(t/p)+C(-.5));q=C(q*q);z[w+4>>2]=q;t=C(C(k>>>0)/p);z[w+8>>2]=t;g=j>q;j=C(t+C(-.5));g=(z[(g<<2)+w>>2]>C(j*j)?2:g)<<2;j=C(C(z[g+a>>2]+z[g+u>>2])*C(.5));k=c+g|0;i:{if(!y){g=0;h=0;break i}y=s&-2;g=0;h=0;n=0;while(1){u=h<<2;o=u+l|0;i=v[o>>2];if(j>2]){m=o;o=(g<<2)+l|0;v[m>>2]=v[o>>2];v[o>>2]=i;g=g+1|0}u=(u|4)+l|0;o=v[u>>2];if(j>2]){i=u;u=(g<<2)+l|0;v[i>>2]=v[u>>2];v[u>>2]=o;g=g+1|0}h=h+2|0;n=n+2|0;if((y|0)!=(n|0)){continue}break}}j:{if(!K){break j}h=(h<<2)+l|0;n=v[h>>2];if(!(j>2])){break j}i=h;h=(g<<2)+l|0;v[i>>2]=v[h>>2];v[h>>2]=n;g=g+1|0}h=s>>>1|0;g=g?(g|0)==(s|0)?h:g:h}i=a;a=v[d>>2];h=B(a,36)+e|0;v[i+24>>2]=h;v[d>>2]=a+2;v[h+32>>2]=g;v[h+28>>2]=l;a=e?h+36|0:0;v[a+32>>2]=s-g;v[a+28>>2]=(g<<2)+l;m3(h,b,c,d,e,f);continue}break}xa=w+16|0}function kE(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=0,R=0,S=0,T=C(0),U=C(0);E=xa-48|0;xa=E;if(v[a+592>>2]){v[E+40>>2]=0;v[E+32>>2]=0;v[E+36>>2]=0;u[E+28>>1]=x[f>>1];v[E+24>>2]=e;v[E+16>>2]=c;v[E+12>>2]=b;v[E+8>>2]=130304;v[E+20>>2]=E+32;R=v[a+644>>2];S=v[a+640>>2];O=E+8|0;e=xa-1056|0;xa=e;h=z[c+8>>2];o=C(h+h);f=o>C(0);G=C(-o);h=z[c+4>>2];p=C(h+h);J=p>C(0);H=C(-p);h=z[c>>2];q=C(h+h);c=q>C(0);I=C(-q);h=z[b+8>>2];y=C(h+h);h=z[b+4>>2];A=C(h+h);h=z[b>>2];D=C(h+h);h=z[d>>2];a:{if(h>=C(34028234663852886e22)){r=p==C(0)?A:p>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);s=q==C(0)?D:q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);h=y;if(o==C(0)){break a}h=o>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}r=C(A+C(p*h));s=C(D+C(q*h));h=C(y+C(o*h))}G=f?o:G;H=J?p:H;I=c?q:I;t[e+1040|0]=1;v[e+1048>>2]=256;v[e+1052>>2]=256;v[e+1044>>2]=e+16;v[e+16>>2]=v[a+592>>2];L=hr?A:r;N=D>s?D:s;h=h>y?y:h;r=A>2]+(a<<2)>>2];g=z[f+16>>2];l=z[f>>2];i=C(g-l);l=C(g+l);d:{if(!(C(i+l)>=s)|!(C(l-i)<=N)){break d}j=z[f+20>>2];k=z[f+4>>2];g=C(j-k);j=C(j+k);k=C(A-j);m=C(D-l);l=C(C(q*k)-C(p*m));if(!(C(C(H*i)+C(I*g))>=(l>C(0)?l:C(-l)))|!(C(g+j)>=r)|!(C(j-g)<=M)){break d}n=C(G*g);l=z[f+24>>2];j=z[f+8>>2];g=C(l-j);l=C(l+j);w=C(y-l);j=C(C(p*w)-C(o*k));if(!(C(n+C(H*g))>=(j>C(0)?j:C(-j)))|!(C(g+l)>=h)|!(C(l-g)<=L)){break d}g=C(C(G*i)+C(I*g));i=C(C(o*m)-C(q*w));if(!(g>=(i>C(0)?i:C(-i)))){break d}l=z[d>>2];z[e+12>>2]=l;if(v[f+40>>2]){while(1){b=v[f+36>>2];j=z[b- -64>>2];k=z[b+48>>2];i=C(j-k);l=z[b+68>>2];m=z[b+52>>2];g=C(l-m);l=C(l+m);m=C(A-l);j=C(j+k);w=C(D-j);k=C(C(q*m)-C(p*w));c=C(j-i)<=N&C(i+j)>=s&C(C(H*i)+C(I*g))>=(k>C(0)?k:C(-k))&C(g+l)>=r&C(l-g)<=M;F=C(G*g);k=z[b+72>>2];n=z[b+56>>2];g=C(k-n);k=C(k+n);n=C(y-k);m=C(C(p*n)-C(o*m));K=C(C(G*i)+C(I*g));i=C(C(o*w)-C(q*n));c=c&C(F+C(H*g))>=(m>C(0)?m:C(-m))&C(g+k)>=h&C(k-g)<=L&K>=(i>C(0)?i:C(-i));w=z[b+16>>2];n=z[b>>2];i=C(w-n);m=z[b+20>>2];F=z[b+4>>2];g=C(m-F);m=C(m+F);F=C(A-m);w=C(w+n);P=C(D-w);n=C(C(q*F)-C(p*P));f=C(w-i)<=N&C(i+w)>=s&C(C(H*i)+C(I*g))>=(n>C(0)?n:C(-n))&C(g+m)>=r&C(m-g)<=M;T=C(G*g);n=z[b+24>>2];K=z[b+8>>2];g=C(n-K);n=C(n+K);K=C(y-n);F=C(C(p*K)-C(o*F));U=C(C(G*i)+C(I*g));i=C(C(o*P)-C(q*K));f=f&C(T+C(H*g))>=(F>C(0)?F:C(-F))&C(g+n)>=h&C(n-g)<=L&U>=(i>C(0)?i:C(-i));e:{if(!(!f|!c)){c=C(C(C(k-n)*o)+C(C(C(j-w)*q)+C(p*C(l-m))))>C(0);v[v[e+1044>>2]+(a<<2)>>2]=b+B(c,48);f=b+B(!c,48)|0;a=a+1|0;if((a|0)!=(v[e+1052>>2]&2147483647)){break e}fD(e+16|0,a<<1);break e}if(!(c|f)){break d}f=f?b:b+48|0}if(v[f+40>>2]){continue}break}l=z[d>>2]}c=v[f+36>>2];b=v[c>>2];if(!b){break d}f=c+4|0;c=b;while(1){Q=v[f>>2];f:{if(b>>>0>=2){J=B(Q,24)+S|0;g=z[J+12>>2];j=z[J>>2];i=C(g-j);j=C(j+g);if(!(C(i+j)>=s)|!(C(j-i)<=N)){break f}k=z[J+16>>2];m=z[J+4>>2];g=C(k-m);k=C(m+k);m=C(A-k);w=C(D-j);j=C(C(q*m)-C(p*w));if(!(C(C(H*i)+C(I*g))>=(j>C(0)?j:C(-j)))|!(C(g+k)>=r)|!(C(k-g)<=M)){break f}F=C(G*g);j=z[J+20>>2];k=z[J+8>>2];g=C(j-k);j=C(k+j);n=C(y-j);k=C(C(p*n)-C(o*m));if(!(C(F+C(H*g))>=(k>C(0)?k:C(-k)))|!(C(g+j)>=h)|!(C(j-g)<=L)){break f}g=C(C(G*i)+C(I*g));i=C(C(o*w)-C(q*n));if(!(g>=(i>C(0)?i:C(-i)))){break f}}if(!(Ba[v[v[O>>2]+8>>2]](O,e+12|0,B(Q,44)+R|0)|0)){break c}i=z[e+12>>2];if(!(i>2]=i;h=C(y+C(o*i));L=hr?A:r;s=C(D+C(q*i));N=D>s?D:s;h=h>y?y:h;r=A>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[e+1044>>2];if((b|0)==(e+16|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=e+1056|0}else{a=1}xa=E+48|0;return a|0}function fv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0);a=xa-48|0;s=z[d+8>>2];D=z[c>>2];o=z[c+12>>2];t=z[d+4>>2];x=z[d+12>>2];u=z[c+4>>2];G=z[c+8>>2];l=z[d>>2];j=C(C(s*D)+C(C(C(o*t)-C(x*u))-C(G*l)));i=C(C(t*G)+C(C(C(o*l)-C(x*D))-C(u*s)));E=C(i+i);F=C(C(G*s)+C(C(u*t)+C(C(o*x)+C(D*l))));i=C(C(l*u)+C(C(C(o*s)-C(x*G))-C(D*t)));A=C(i+i);k=z[b+8>>2];p=C(C(C(j*E)-C(F*A))*k);B=C(j+j);q=C(C(C(1)-C(j*B))-C(i*A));j=z[b+4>>2];y=C(q*j);m=C(p-y);q=C(C(i*E)+C(F*B));i=z[b+12>>2];w=C(q*i);E=z[e>>2];F=z[d+16>>2];A=C(F-z[c+16>>2]);n=C(A+A);A=z[d+20>>2];B=C(A-z[c+20>>2]);r=C(B+B);B=z[d+24>>2];q=C(B-z[c+24>>2]);q=C(q+q);n=C(E-C(C(C(n*C(C(o*o)+C(-.5)))+C(o*C(C(G*r)-C(u*q))))-C(D*C(C(C(C(-D)*n)-C(r*u))-C(G*q)))));I=C(C(m-w)-n);z[a+20>>2]=I;J=C(C(m+w)-n);z[a+16>>2]=J;m=C(y-p);K=C(C(m-w)-n);z[a+12>>2]=K;L=C(C(m+w)-n);z[a+8>>2]=L;m=C(y+p);M=C(C(m-w)-n);z[a+4>>2]=M;N=C(C(m+w)-n);z[a>>2]=N;p=C(C(-y)-p);O=C(C(p-w)-n);z[a+28>>2]=O;P=C(C(p+w)-n);z[a+24>>2]=P;q=C(t+t);p=C(s*q);r=C(l+l);y=C(x*r);w=C(p-y);m=C(r*s);H=C(q*x);n=C(m+H);p=C(p+y);Q=C(r*t);R=C(s+s);S=C(x*R);x=C(Q-S);y=C(m-H);m=C(Q+S);l=C(C(1)-C(l*r));r=C(t*q);t=C(l-r);q=l;l=C(s*R);s=C(q-l);l=C(C(C(1)-r)-l);q=C(D+D);H=C(o+o);r=C(-C(C(G*q)-C(u*H)));u=C(-C(C(G*H)+C(q*u)));o=C(-C(C(D*q)+C(C(o*H)+C(-1))));v[a+44>>2]=a;b=v[a+44>>2];a:{if(v[b>>2]>=0){break a}a=v[g+4096>>2];if(a>>>0>63){break a}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+N;z[a+24>>2]=B+C(C(C(y*j)+C(p*k))+C(t*i));z[a+20>>2]=A+C(C(C(m*j)+C(s*k))+C(w*i));z[a+16>>2]=F+C(C(C(l*j)+C(x*k))+C(n*i))}b:{if(v[b+4>>2]>=0){break b}a=v[g+4096>>2];if(a>>>0>63){break b}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+M;z[a+24>>2]=B+C(C(C(y*j)+C(p*k))-C(t*i));z[a+20>>2]=A+C(C(C(m*j)+C(s*k))-C(w*i));z[a+16>>2]=F+C(C(C(l*j)+C(x*k))-C(n*i))}c:{if(v[b+8>>2]>=0){break c}a=v[g+4096>>2];if(a>>>0>63){break c}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+L;z[a+24>>2]=B+C(C(C(y*j)-C(p*k))+C(t*i));z[a+20>>2]=A+C(C(C(m*j)-C(s*k))+C(w*i));z[a+16>>2]=F+C(C(C(l*j)-C(x*k))+C(n*i))}d:{if(v[b+12>>2]>=0){break d}a=v[g+4096>>2];if(a>>>0>63){break d}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+K;z[a+24>>2]=B+C(C(C(y*j)-C(p*k))-C(t*i));z[a+20>>2]=A+C(C(C(m*j)-C(s*k))-C(w*i));z[a+16>>2]=F+C(C(C(l*j)-C(x*k))-C(n*i))}e:{if(v[b+16>>2]>=0){break e}a=v[g+4096>>2];if(a>>>0>63){break e}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+J;z[a+24>>2]=B+C(C(C(p*k)-C(y*j))+C(t*i));z[a+20>>2]=A+C(C(C(s*k)-C(m*j))+C(w*i));z[a+16>>2]=F+C(C(C(x*k)-C(l*j))+C(n*i))}f:{if(v[b+20>>2]>=0){break f}a=v[g+4096>>2];if(a>>>0>63){break f}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+I;z[a+24>>2]=B+C(C(C(p*k)-C(y*j))-C(t*i));z[a+20>>2]=A+C(C(C(s*k)-C(m*j))-C(w*i));z[a+16>>2]=F+C(C(C(x*k)-C(l*j))-C(n*i))}g:{if(v[b+24>>2]>=0){break g}a=v[g+4096>>2];if(a>>>0>63){break g}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+P;D=C(-k);z[a+24>>2]=B+C(C(C(p*D)-C(y*j))+C(t*i));z[a+20>>2]=A+C(C(C(s*D)-C(m*j))+C(w*i));z[a+16>>2]=F+C(C(C(x*D)-C(l*j))+C(n*i))}a=v[g+4096>>2];h:{if(v[b+28>>2]>=0){b=a;break h}if(a>>>0>63){b=a;break h}b=a+1|0;v[g+4096>>2]=b;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+O;k=C(-k);z[a+24>>2]=B+C(C(C(p*k)-C(y*j))-C(t*i));z[a+20>>2]=A+C(C(C(s*k)-C(m*j))-C(w*i));z[a+16>>2]=F+C(C(C(x*k)-C(l*j))-C(n*i))}return(b|0)!=0|0}function O1(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=0,H=0,I=0,J=C(0),L=C(0),M=0,N=0;p=xa-384|0;xa=p;a:{if(!f){break a}G=w[h+64|0];if(G){D=1;I=v[h+76>>2];q=z[I+40>>2];s=z[I+36>>2];u=z[I+32>>2];b:{if((G|0)==1){break b}H=G-1|0;M=H&1;if((G|0)!=2){N=H&-2;G=0;while(1){H=B(D,48)+I|0;u=C(C(u+z[H+32>>2])+z[H+80>>2]);q=C(C(q+z[H+40>>2])+z[H+88>>2]);s=C(C(s+z[H+36>>2])+z[H+84>>2]);D=D+2|0;G=G+2|0;if((N|0)!=(G|0)){continue}break}}if(!M){break b}D=B(D,48)+I|0;u=C(u+z[D+32>>2]);q=C(q+z[D+40>>2]);s=C(s+z[D+36>>2])}r=q;q=C(C(1)/C(K(C(C(q*q)+C(C(u*u)+C(s*s))))));r=C(r*q);A=C(u*q);q=C(s*q)}else{q=C(0)}s=z[k>>2];z[p+32>>2]=o;z[p+48>>2]=s*C(.05000000074505806);k=v[p+60>>2];v[p+24>>2]=v[p+56>>2];v[p+28>>2]=k;k=v[p+44>>2];v[p+8>>2]=v[p+40>>2];v[p+12>>2]=k;k=v[p+36>>2];v[p>>2]=v[p+32>>2];v[p+4>>2]=k;k=v[p+52>>2];v[p+16>>2]=v[p+48>>2];v[p+20>>2]=k;c:{e=$1(a,b,e,f,i,p+16|0,p,g,h);d:{if(e){break d}E=z[g+40>>2];F=z[g+32>>2];x=z[g+36>>2];if(C(C(r*E)+C(C(A*F)+C(q*x)))=j>>>0){break c}}b=v[b+4>>2];a=v[a+4>>2];k2(a,m,p+304|0);k2(b,n,p+232|0);v[p+200>>2]=a+96;v[p+196>>2]=a+48;v[p+192>>2]=c;e:{if(m){t[p+204|0]=1;v[p+160>>2]=141020;break e}t[p+204|0]=0;v[p+160>>2]=141068}c=g+32|0;f=g+16|0;v[p+128>>2]=d;v[p+208>>2]=a;v[p+136>>2]=b+96;v[p+132>>2]=b+48;f:{if(n){t[p+140|0]=1;v[p+96>>2]=141020;break f}t[p+140|0]=0;v[p+96>>2]=141068}v[p+144>>2]=b;v[p+92>>2]=0;G=W1(p+304|0,p+232|0,p+160|0,p+96|0,i,p+92|0,l,c,g,f,z[a+16>>2],z[b+16>>2],e,o);if(!G){break a}a=v[p+92>>2];if(a){s2(h,i,a,o);c=v[h+76>>2];o=z[c+32>>2];q=o;y=z[c+36>>2];s=y;r=z[c+40>>2];u=r;a=w[h+64|0];g:{if(a>>>0<2){break g}D=1;b=a-1|0;e=b&1;u=r;s=y;q=o;if((a|0)!=2){f=b&-2;a=0;while(1){b=c+B(D,48)|0;q=C(C(q+z[b+32>>2])+z[b+80>>2]);u=C(C(u+z[b+40>>2])+z[b+88>>2]);s=C(C(s+z[b+36>>2])+z[b+84>>2]);D=D+2|0;a=a+2|0;if((f|0)!=(a|0)){continue}break}}if(!e){break g}a=c+B(D,48)|0;q=C(q+z[a+32>>2]);u=C(u+z[a+40>>2]);s=C(s+z[a+36>>2])}E=z[d+4>>2];F=z[d+8>>2];x=z[d>>2];A=z[d+12>>2];v[p+76>>2]=0;a=C(C(u*u)+C(C(q*q)+C(s*s)))>C(1.1920928955078125e-7);u=a?u:r;o=a?q:o;q=a?s:y;s=C(C(F*u)+C(C(x*o)+C(E*q)));y=C(C(A*A)+C(-.5));r=C(C(F*s)+C(C(A*C(C(x*q)-C(o*E)))+C(u*y)));r=C(r+r);J=r;L=C(r*r);r=C(C(x*s)+C(C(A*C(C(E*u)-C(q*F)))+C(o*y)));r=C(r+r);o=C(C(E*s)+C(C(A*C(C(F*o)-C(u*x)))+C(q*y)));o=C(o+o);q=C(C(1)/C(K(C(L+C(C(r*r)+C(o*o))))));z[p+72>>2]=J*q;z[p+68>>2]=o*q;z[p+64>>2]=r*q;q2(h,i,p- -64|0,d,l);break a}if(e){break a}c=v[h+76>>2];o=z[c+32>>2];q=o;y=z[c+36>>2];s=y;r=z[c+40>>2];u=r;a=w[h+64|0];h:{if(a>>>0<2){break h}D=1;b=a-1|0;e=b&1;u=r;s=y;q=o;if((a|0)!=2){f=b&-2;a=0;while(1){b=c+B(D,48)|0;q=C(C(q+z[b+32>>2])+z[b+80>>2]);u=C(C(u+z[b+40>>2])+z[b+88>>2]);s=C(C(s+z[b+36>>2])+z[b+84>>2]);D=D+2|0;a=a+2|0;if((f|0)!=(a|0)){continue}break}}if(!e){break h}a=c+B(D,48)|0;q=C(q+z[a+32>>2]);u=C(u+z[a+40>>2]);s=C(s+z[a+36>>2])}E=z[d+4>>2];F=z[d+8>>2];x=z[d>>2];A=z[d+12>>2];v[p+76>>2]=0;a=C(C(u*u)+C(C(q*q)+C(s*s)))>C(1.1920928955078125e-7);u=a?u:r;o=a?q:o;q=a?s:y;s=C(C(F*u)+C(C(x*o)+C(E*q)));y=C(C(A*A)+C(-.5));r=C(C(F*s)+C(C(A*C(C(x*q)-C(o*E)))+C(u*y)));r=C(r+r);J=r;L=C(r*r);r=C(C(x*s)+C(C(A*C(C(E*u)-C(q*F)))+C(o*y)));r=C(r+r);o=C(C(E*s)+C(C(A*C(C(F*o)-C(u*x)))+C(q*y)));o=C(o+o);q=C(C(1)/C(K(C(L+C(C(r*r)+C(o*o))))));z[p+72>>2]=J*q;z[p+68>>2]=o*q;z[p+64>>2]=r*q;q2(h,i,p- -64|0,d,l);break a}s=z[d+4>>2];u=z[d+8>>2];y=z[d>>2];o=z[d+12>>2];v[p+316>>2]=0;r=C(r+E);A=C(A+F);q=C(q+x);E=C(C(u*r)+C(C(y*A)+C(s*q)));F=C(C(o*o)+C(-.5));x=C(C(u*E)+C(C(o*C(C(y*q)-C(A*s)))+C(r*F)));x=C(x+x);J=x;L=C(x*x);x=C(C(y*E)+C(C(o*C(C(s*r)-C(q*u)))+C(A*F)));x=C(x+x);o=C(C(s*E)+C(C(o*C(C(u*A)-C(r*y)))+C(q*F)));o=C(o+o);q=C(C(1)/C(K(C(L+C(C(x*x)+C(o*o))))));z[p+312>>2]=J*q;z[p+308>>2]=o*q;z[p+304>>2]=x*q;q2(h,i,p+304|0,d,l);G=1}xa=p+384|0;return G}function DX(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=C(g);h=h|0;i=i|0;j=C(j);var k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0;k=xa-448|0;xa=k;E=v[a+32>>2];v[k+440>>2]=0;v[k+444>>2]=0;v[k+432>>2]=0;v[k+436>>2]=0;v[k+416>>2]=0;D=z[d+20>>2];y=z[d+24>>2];W=z[f+8>>2];X=z[f+4>>2];Y=z[f>>2];J=z[d+16>>2];m=z[d+8>>2];l=z[d>>2];n=z[d+4>>2];r=z[d+12>>2];G=z[b+20>>2];H=z[b+24>>2];o=z[b>>2];p=z[b+4>>2];q=z[b+8>>2];s=z[b+12>>2];Q=z[b+16>>2];v[k+412>>2]=0;z[k+408>>2]=H;z[k+404>>2]=G;z[k+400>>2]=Q;z[k+396>>2]=s;z[k+392>>2]=q;z[k+388>>2]=p;z[k+384>>2]=o;A=z[e+24>>2];I=z[c+8>>2];R=z[a+8>>2];S=z[a+12>>2];T=z[a+4>>2];v[k+380>>2]=0;z[k+376>>2]=S;z[k+372>>2]=R;z[k+368>>2]=T;c=v[a+16>>2];d=v[a+20>>2];ca=v[a+28>>2];v[k+360>>2]=v[a+24>>2];v[k+364>>2]=ca;v[k+352>>2]=c;v[k+356>>2]=d;v[k+332>>2]=0;v[k+316>>2]=0;N=C(-o);J=C(J-Q);O=C(D-G);P=C(y-H);U=C(C(C(N*J)-C(O*p))-C(q*P));D=C(C(s*s)+C(-.5));y=C(C(C(s*C(C(p*J)-C(o*O)))+C(D*P))-C(q*U));V=C(y+y);z[k+264>>2]=V;y=C(C(C(l*p)-C(o*n))+C(C(m*s)-C(r*q)));L=C(C(C(n*q)-C(p*m))+C(C(l*s)-C(r*o)));F=C(L+L);Z=C(y*F);M=C(C(r*s)-C(C(C(N*l)-C(n*p))-C(q*m)));l=C(C(C(m*o)-C(q*l))+C(C(n*s)-C(r*p)));n=C(l+l);r=C(M*n);L=C(C(1)-C(L*F));_=C(l*n);m=C(I*C(0));$=C(y*n);aa=C(M*F);ba=C(C(C(L-_)*m)+C(C(I*C(Z-r))+C(C($+aa)*m)));z[k+328>>2]=V-ba;n=C(C(C(D*O)+C(s*C(C(o*P)-C(q*J))))-C(p*U));n=C(n+n);z[k+260>>2]=n;F=C(l*F);l=C(y+y);M=C(M*l);y=C(y*l);l=C(C(C($-aa)*m)+C(C(I*C(F+M))+C(C(L-y)*m)));z[k+324>>2]=n-l;z[k+312>>2]=V+ba;z[k+308>>2]=n+l;z[k+336>>2]=A;v[k+268>>2]=0;v[k+284>>2]=4;t[k+288|0]=1;z[k+280>>2]=A;z[k+276>>2]=A;z[k+272>>2]=A;l=C(C(C(D*J)+C(s*C(C(q*O)-C(p*P))))-C(o*U));l=C(l+l);z[k+256>>2]=l;m=C(C(C(Z+r)*m)+C(C(I*C(C(C(1)-_)-y))+C(C(F-M)*m)));z[k+320>>2]=l-m;z[k+304>>2]=l+m;t[k+128|0]=0;v[k+120>>2]=0;v[k+124>>2]=0;v[k+112>>2]=0;v[k+116>>2]=0;v[k+104>>2]=0;v[k+108>>2]=0;v[k+96>>2]=0;v[k+100>>2]=0;c=E+16|0;v[k+240>>2]=c;v[k+248>>2]=v[E+56>>2]+B(w[E+55|0],20);t[k+252|0]=w[E+54|0];m=C(T*z[E+68>>2]);l=C(R*z[E+72>>2]);m=m<=l?m:l;l=C(S*z[E+76>>2]);m=m<=l?m:l;z[k+120>>2]=m*C(.02500000037252903);z[k+112>>2]=m*C(.10000000149011612);z[k+116>>2]=m*C(.05000000074505806);d=k+96|0;FV(k+368|0,k+352|0,k+144|0,k+192|0,d,T==C(1)&R==C(1)&S==C(1));v[k+244>>2]=v[E+60>>2];v[k+92>>2]=0;m=C(C(-W)*g);l=C(C(-Y)*g);n=C(C(-X)*g);r=C(C(q*m)+C(C(o*l)+C(p*n)));A=C(C(q*r)+C(C(m*D)-C(s*C(C(o*n)-C(l*p)))));z[k+88>>2]=A+A;A=C(C(p*r)+C(C(n*D)-C(s*C(C(q*l)-C(m*o)))));z[k+84>>2]=A+A;m=C(C(o*r)+C(C(l*D)-C(s*C(C(p*m)-C(n*q)))));z[k+80>>2]=m+m;E=x[i>>1];v[k+24>>2]=141148;v[k+28>>2]=k+256;v[k+16>>2]=141216;v[k+20>>2]=d;v[k+12>>2]=0;z[k+8>>2]=z[k+264>>2]-z[k+104>>2];z[k+4>>2]=z[k+260>>2]-z[k+100>>2];z[k>>2]=z[k+256>>2]-z[k+96>>2];d=E&512;e=EX(k+24|0,k+16|0,k,k+432|0,k+80|0,k- -64|0,k+32|0,k+48|0,C(z[e+24>>2]+j),d>>>9|0);a:{if(!e){break a}if(FX(h,f,k- -64|0,k+32|0,k+48|0,k+384|0,(d|0)!=0,1)){break a}u[h+12>>1]=x[h+12>>1]|1;j=z[k+36>>2];m=z[k+32>>2];l=z[k+40>>2];n=z[k+56>>2];r=z[k+48>>2];A=z[k+52>>2];g=C(z[k+64>>2]*g);z[h+40>>2]=g;F=H;y=C(-p);I=C(C(q*n)+C(C(o*r)+C(p*A)));H=C(C(C(s*C(C(o*A)+C(r*y)))+C(D*n))+C(q*I));z[h+24>>2]=C(W*g)+C(F+C(H+H));H=G;G=C(C(p*I)+C(C(D*A)+C(s*C(C(q*r)+C(n*N)))));z[h+20>>2]=C(X*g)+C(H+C(G+G));G=C(Y*g);g=C(D*r);r=C(-q);g=C(C(o*I)+C(g+C(s*C(C(p*n)+C(A*r)))));z[h+16>>2]=G+C(Q+C(g+g));g=C(C(q*l)+C(C(o*m)+C(p*j)));n=C(C(C(s*C(C(o*j)+C(m*y)))+C(D*l))+C(q*g));n=C(n+n);o=C(C(o*g)+C(C(D*m)+C(s*C(C(p*l)+C(j*r)))));o=C(o+o);g=C(C(p*g)+C(C(D*j)+C(s*C(C(q*m)+C(l*N)))));g=C(g+g);j=C(C(1)/C(K(C(C(n*n)+C(C(o*o)+C(g*g))))));z[h+36>>2]=n*j;z[h+32>>2]=g*j;z[h+28>>2]=o*j;GX(h,x[i>>1],a,c,b,f)}xa=k+448|0;return e|0}function Vz(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=C(0),r=0,s=0,t=0,u=0,w=0,x=0,A=0;c=v[a+28>>2];v[v[c+4>>2]+8>>2]=v[c+536>>2];c=xa-32|0;xa=c;j=v[a+28>>2];i=j+12|0;f=v[j+4>>2];Wz(i,f);e=v[a+28>>2];b=e+464|0;g=v[e+592>>2];p=v[b+(1-g<<2)>>2];h=v[b+(g<<2)>>2];v[h+8>>2]=0;if(v[j+36>>2]){while(1){b=v[j+28>>2]+(d<<3)|0;q=z[b+4>>2];b=v[f+4>>2]+(v[b>>2]<<5)|0;a:{if(!(q>C(z[b+8>>2]*z[v[a+28>>2]+52>>2]))){break a}z[b+20>>2]=q;g=v[h+8>>2];if(g>>>0>=(v[h+12>>2]&2147483647)>>>0){Xz(h,b);break a}e=v[b+4>>2];g=v[h+4>>2]+(g<<5)|0;v[g>>2]=v[b>>2];v[g+4>>2]=e;e=v[b+28>>2];v[g+24>>2]=v[b+24>>2];v[g+28>>2]=e;e=v[b+20>>2];v[g+16>>2]=v[b+16>>2];v[g+20>>2]=e;e=v[b+12>>2];v[g+8>>2]=v[b+8>>2];v[g+12>>2]=e;v[h+8>>2]=v[h+8>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}e=v[a+28>>2]}f=v[e+8>>2];v[f+8>>2]=0;n=v[h+8>>2];o=v[p+8>>2];b:{if(!o){if(n>>>0>(v[f+12>>2]&2147483647)>>>0){jz(f,n)}v[f+8>>2]=n;H9(v[f+4>>2],v[h+4>>2],n<<5);break b}s=e+472|0;Wz(i,p);c:{d:{k=n+o|0;if(k>>>0>(v[e+480>>2]&2147483647)>>>0){zw(s,k);v[e+476>>2]=k;break d}v[e+476>>2]=k;if(k){break d}r=1;break c}a=v[s>>2];e=0;if(k-1>>>0>=7){d=k&-8;while(1){b=e<<2;v[b+a>>2]=1;v[a+(b|4)>>2]=1;v[a+(b|8)>>2]=1;v[a+(b|12)>>2]=1;v[a+(b|16)>>2]=1;v[a+(b|20)>>2]=1;v[a+(b|24)>>2]=1;v[a+(b|28)>>2]=1;e=e+8|0;l=l+8|0;if((d|0)!=(l|0)){continue}break}}b=k&7;if(!b){break c}while(1){v[a+(e<<2)>>2]=1;e=e+1|0;r=r+1|0;if((b|0)!=(r|0)){continue}break}r=0}if(n){w=v[j+28>>2];x=v[j+32>>2];g=v[j+16>>2];A=v[h+4>>2];e=0;while(1){l=(e<<5)+A|0;t=v[l+12>>2];a=t>>>7|0;u=v[l+16>>2];b=u>>>7|0;m=-1;i=b+m|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;m=b<<13^-1;d=b+m|0;b=(a^-1)+i|0;b=d>>>0>>0?b+1|0:b;a=Raa(d^((b&255)<<24|d>>>8),b^b>>>8,9,0);d=Aa;b=d>>>15|0;a=a^((d&32767)<<17|a>>>15);b=b^d;m=a<<27^-1;d=m+a|0;a=((b<<27|a>>>5)^-1)+b|0;b=d;a=b>>>0>>0?a+1|0:a;d=v[(((b^((a&2147483647)<<1|b>>>31))>>>0)%y[j+20>>2]<<2)+g>>2];e:{if((d|0)==-1){break e}b=v[l>>2];i=v[p+4>>2];while(1){l=v[w+(d<<3)>>2];a=(l<<5)+i|0;if(!(!(v[a+12>>2]!=(t|0)|v[a+16>>2]!=(u|0))&v[a>>2]==(b|0))){d=v[x+(d<<2)>>2];if((d|0)!=-1){continue}break e}break}a=v[s>>2];v[a+(l<<2)>>2]=0;v[a+(e+o<<2)>>2]=0}e=e+1|0;if((n|0)!=(e|0)){continue}break}}if(r){break b}d=0;while(1){f:{if(v[v[s>>2]+(d<<2)>>2]){g:{if(d>>>0>>0){a=v[p+4>>2];v[c+12>>2]=-128;v[c+16>>2]=-128;a=a+(d<<5)|0;b=v[a+12>>2];v[c+8>>2]=v[a+8>>2];v[c+12>>2]=b;b=v[a+28>>2];v[c+24>>2]=v[a+24>>2];v[c+28>>2]=b;b=v[a+20>>2];v[c+16>>2]=v[a+16>>2];v[c+20>>2]=b;b=v[a+4>>2];v[c>>2]=v[a>>2];v[c+4>>2]=b;q=C(0);break g}a=v[h+4>>2];v[c+12>>2]=-128;v[c+16>>2]=-128;a=a+(d-o<<5)|0;b=v[a+28>>2];v[c+24>>2]=v[a+24>>2];v[c+28>>2]=b;b=v[a+20>>2];v[c+16>>2]=v[a+16>>2];v[c+20>>2]=b;b=v[a+12>>2];v[c+8>>2]=v[a+8>>2];v[c+12>>2]=b;b=v[a+4>>2];v[c>>2]=v[a>>2];v[c+4>>2]=b;q=z[a+20>>2]}z[c+20>>2]=q;a=v[f+8>>2];if(a>>>0>=(v[f+12>>2]&2147483647)>>>0){Xz(f,c);break f}b=v[c+4>>2];a=v[f+4>>2]+(a<<5)|0;v[a>>2]=v[c>>2];v[a+4>>2]=b;b=v[c+28>>2];v[a+24>>2]=v[c+24>>2];v[a+28>>2]=b;b=v[c+20>>2];v[a+16>>2]=v[c+16>>2];v[a+20>>2]=b;b=v[c+12>>2];v[a+8>>2]=v[c+8>>2];v[a+12>>2]=b;v[f+8>>2]=v[f+8>>2]+1;break f}if(d>>>0>=o>>>0){break f}a=v[p+4>>2];v[c+12>>2]=-128;v[c+16>>2]=-128;a=a+(d<<5)|0;b=v[a+12>>2];v[c+8>>2]=v[a+8>>2];v[c+12>>2]=b;b=v[a+28>>2];v[c+24>>2]=v[a+24>>2];v[c+28>>2]=b;b=v[a+20>>2];v[c+16>>2]=v[a+16>>2];v[c+20>>2]=b;b=v[a+4>>2];v[c>>2]=v[a>>2];v[c+4>>2]=b;z[c+20>>2]=z[a+20>>2];a=v[f+8>>2];if(a>>>0>=(v[f+12>>2]&2147483647)>>>0){Xz(f,c);break f}b=v[c+4>>2];a=v[f+4>>2]+(a<<5)|0;v[a>>2]=v[c>>2];v[a+4>>2]=b;b=v[c+28>>2];v[a+24>>2]=v[c+24>>2];v[a+28>>2]=b;b=v[c+20>>2];v[a+16>>2]=v[c+16>>2];v[a+20>>2]=b;b=v[c+12>>2];v[a+8>>2]=v[c+8>>2];v[a+12>>2]=b;v[f+8>>2]=v[f+8>>2]+1}d=d+1|0;if((k|0)!=(d|0)){continue}break}}xa=c+32|0}function _V(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=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0,S=C(0),T=C(0),U=C(0),V=C(0);h=xa-4320|0;xa=h;j=z[d+20>>2];k=z[d+16>>2];s=z[d+24>>2];l=z[d>>2];m=C(l+l);r=z[d+8>>2];n=z[d+4>>2];u=z[d+12>>2];g=C(u+u);i=z[c+8>>2];x=C(C(C(m*r)-C(n*g))*i);z[h+20>>2]=s-x;r=C(i*C(C(r*g)+C(m*n)));z[h+16>>2]=j-r;z[h+8>>2]=x+s;z[h+4>>2]=j+r;j=C(i*C(C(l*m)+C(C(u*g)+C(-1))));z[h+12>>2]=k-j;z[h>>2]=k+j;z[h+24>>2]=z[c+4>>2];H=h+4288|0;KU(H,h,h+12|0,h+4316|0);v[h+4232>>2]=-1;z[h+56>>2]=z[h+4316>>2];z[h+52>>2]=z[h+24>>2];v[h+48>>2]=2;Q=h+4232|0;R=h+48|0;kV(Q,R);v[h+4176>>2]=-1;L=h+4176|0;kV(L,e);v[h+4168>>2]=0;v[h+4172>>2]=0;d=0;v[h+4144>>2]=0;v[h+40>>2]=1065353216;v[h+32>>2]=0;v[h+36>>2]=0;c=xa-192|0;xa=c;t=z[h+32>>2];E=z[Q+4>>2];j=z[f+8>>2];k=z[Q+8>>2];r=z[H>>2];m=C(r+r);x=z[H+8>>2];F=z[H+4>>2];n=z[H+12>>2];u=C(n+n);p=C(k*C(C(m*x)-C(F*u)));J=z[f+24>>2];N=z[H+24>>2];q=C(J-N);l=C(C(-p)-q);g=C(l+l);l=z[f>>2];o=C(k*C(C(r*m)+C(C(n*u)+C(-1))));K=z[f+16>>2];O=z[H+16>>2];A=C(K-O);i=C(C(-o)-A);i=C(i+i);B=C(k*C(C(x*u)+C(m*F)));G=z[f+20>>2];P=z[H+20>>2];I=C(G-P);k=C(C(-B)-I);s=C(k+k);k=z[f+4>>2];y=C(C(j*g)+C(C(l*i)+C(s*k)));m=z[f+12>>2];u=C(C(m*m)+C(-.5));w=C(C(j*y)+C(C(g*u)-C(m*C(C(l*s)-C(i*k)))));z[c+188>>2]=w;M=C(C(k*y)+C(C(s*u)-C(m*C(C(j*i)-C(g*l)))));z[c+184>>2]=M;p=C(p-q);p=C(p+p);q=C(o-A);q=C(q+q);o=C(B-I);o=C(o+o);A=C(C(j*p)+C(C(l*q)+C(k*o)));B=C(C(l*A)+C(C(q*u)-C(m*C(C(k*p)-C(o*j)))));z[c+168>>2]=B;s=C(C(l*y)+C(C(i*u)-C(m*C(C(k*g)-C(s*j)))));z[c+180>>2]=s;y=C(C(k*A)+C(C(o*u)-C(m*C(C(j*q)-C(p*l)))));z[c+172>>2]=y;p=C(C(j*A)+C(C(p*u)-C(m*C(C(l*o)-C(q*k)))));z[c+176>>2]=p;e=v[L+4>>2];v[c+160>>2]=L;v[c+156>>2]=e;g=z[L+8>>2];i=z[L+12>>2];z[c+152>>2]=C(1)/z[L+16>>2];z[c+144>>2]=C(1)/i;z[c+148>>2]=C(1)/g;z[c+132>>2]=E;z[c+128>>2]=t;g=C(E+t);z[c+124>>2]=g;z[c+84>>2]=J;z[c+80>>2]=G;z[c+76>>2]=K;i=C(l+l);o=C(C(1)-C(l*i));q=C(k+k);t=C(k*q);z[c+72>>2]=o-t;E=C(q*j);A=C(m*i);z[c+68>>2]=E-A;I=C(i*j);q=C(m*q);z[c- -64>>2]=I+q;z[c+60>>2]=A+E;S=o;o=C(j+j);E=C(j*o);z[c+56>>2]=S-E;i=C(i*k);o=C(m*o);z[c+52>>2]=i-o;z[c+48>>2]=I-q;z[c+44>>2]=i+o;z[c+40>>2]=C(C(1)-t)-E;z[c+116>>2]=g+C(D(C(C(p-w)*C(.5))));z[c+112>>2]=g+C(D(C(C(y-M)*C(.5))));z[c+108>>2]=g+C(D(C(C(B-s)*C(.5))));z[c+100>>2]=C(p+w)*C(.5);z[c+96>>2]=C(y+M)*C(.5);z[c+92>>2]=C(B+s)*C(.5);v[c+88>>2]=c+168;v[c+32>>2]=142540;v[c+140>>2]=f;e=c+144|0;v[c+136>>2]=e;v[c+36>>2]=R;y=C(C(F*j)+C(C(C(m*r)-C(n*l))-C(k*x)));p=C(y+y);i=C(C(r*k)+C(C(C(m*x)-C(n*j))-C(l*F)));E=C(p*i);s=C(C(j*x)+C(C(k*F)+C(C(m*n)+C(r*l))));r=C(C(x*l)+C(C(C(m*F)-C(n*k))-C(j*r)));w=C(r+r);M=C(s*w);n=C(O-K);x=C(n+n);n=C(P-G);F=C(n+n);n=C(N-J);q=C(n+n);o=C(C(C(C(-l)*x)-C(F*k))-C(j*q));G=C(C(1)-C(y*p));A=C(r*w);n=C(C(g+g)*C(.5));t=C(g+z[Q+8>>2]);J=C(C(t+t)*C(.5));B=C(s*p);w=C(w*i);N=C(C(D(C(C(G-A)*n)))+C(C(D(C(C(E-M)*J)))+C(D(C(C(B+w)*n)))));g=C(C(g-g)*C(.5));g=C(g+g);O=C(i*g);t=C(C(t-t)*C(.5));t=C(t+t);P=C(r*g);K=C(O+C(C(y*t)+P));I=C(C(s*s)+C(-.5));T=C(g*I);g=C(y*g);U=C(C(C(C(q*u)+C(m*C(C(k*x)-C(l*F))))-C(j*o))+C(C(i*K)+C(T+C(s*C(g-C(t*r))))));z[c+28>>2]=N+U;V=C(D(C(C(w-B)*n)));p=C(p*r);w=C(i+i);B=C(s*w);S=G;G=C(i*w);w=C(V+C(C(D(C(C(p+B)*J)))+C(D(C(C(S-G)*n)))));g=C(C(C(C(F*u)+C(m*C(C(l*q)-C(j*x))))-C(k*o))+C(C(r*K)+C(T+C(s*C(C(i*t)-g)))));z[c+24>>2]=w+g;i=C(C(D(C(C(E+M)*n)))+C(C(D(C(C(C(C(1)-A)-G)*J)))+C(D(C(C(p-B)*n)))));j=C(C(C(C(x*u)+C(m*C(C(F*j)-C(k*q))))-C(l*o))+C(C(y*K)+C(C(t*I)+C(s*C(P-O)))));z[c+20>>2]=i+j;z[c+16>>2]=U-N;z[c+12>>2]=g-w;z[c+8>>2]=j-i;l$(e,f,c+8|0,0,c+32|0);xa=c+192|0;a:{if(!v[R+4096>>2]){break a}if(!QV(a,b,v[h+4144>>2],h+48|0)){break a}d=v[h+4144>>2]!=0}xa=h+4320|0;return d|0}function VX(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=C(g);h=h|0;i=i|0;j=C(j);var k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0);k=xa-288|0;xa=k;v[k+272>>2]=0;v[k+264>>2]=0;v[k+268>>2]=0;v[k+256>>2]=0;v[k+260>>2]=0;L=z[b+20>>2];D=z[d+20>>2];M=z[b+24>>2];F=z[d+24>>2];q=z[a+8>>2];E=z[a+12>>2];P=z[f+4>>2];Q=z[f>>2];R=z[f+8>>2];G=z[e+24>>2];N=z[b+16>>2];A=z[d+16>>2];B=z[c+8>>2];y=z[b>>2];l=z[d+8>>2];o=z[b+8>>2];m=z[d>>2];w=z[b+12>>2];n=z[d+4>>2];r=z[b+4>>2];s=z[d+12>>2];p=z[a+4>>2];v[k+252>>2]=0;z[k+248>>2]=E;z[k+244>>2]=q;t[k+224|0]=0;v[k+220>>2]=3;v[k+192>>2]=0;v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;z[k+240>>2]=p;q=q>=p?p:q;q=q<=E?q:E;E=C(q*C(.05000000074505806));z[k+216>>2]=E;z[k+212>>2]=E;z[k+208>>2]=q*C(.15000000596046448);v[k+172>>2]=0;v[k+156>>2]=0;E=C(-y);A=C(A-N);D=C(D-L);F=C(F-M);O=C(C(C(E*A)-C(D*r))-C(o*F));q=C(C(w*w)+C(-.5));p=C(C(C(w*C(C(r*A)-C(y*D)))+C(q*F))-C(o*O));K=C(p+p);z[k+104>>2]=K;p=C(C(C(m*r)-C(y*n))+C(C(l*w)-C(s*o)));I=C(C(C(n*o)-C(r*l))+C(C(m*w)-C(s*y)));H=C(I+I);S=C(p*H);J=C(C(s*w)-C(C(C(E*m)-C(n*r))-C(o*l)));m=C(C(C(l*y)-C(o*m))+C(C(n*w)-C(s*r)));n=C(m+m);s=C(J*n);I=C(C(1)-C(I*H));T=C(m*n);l=C(B*C(0));U=C(p*n);V=C(J*H);W=C(C(C(I-T)*l)+C(C(B*C(S-s))+C(l*C(U+V))));z[k+168>>2]=K-W;n=C(C(C(q*D)+C(w*C(C(y*F)-C(o*A))))-C(r*O));n=C(n+n);z[k+100>>2]=n;H=C(m*H);m=C(p+p);J=C(J*m);p=C(p*m);m=C(C(C(U-V)*l)+C(C(B*C(H+J))+C(l*C(I-p))));z[k+164>>2]=n-m;z[k+152>>2]=K+W;z[k+148>>2]=n+m;z[k+176>>2]=G;v[k+108>>2]=0;v[k+124>>2]=4;t[k+128|0]=1;z[k+120>>2]=G;z[k+116>>2]=G;z[k+112>>2]=G;m=C(C(C(q*A)+C(w*C(C(o*D)-C(r*F))))-C(y*O));m=C(m+m);z[k+96>>2]=m;l=C(C(C(S+s)*l)+C(C(B*C(C(C(1)-T)-p))+C(l*C(H-J))));z[k+160>>2]=m-l;z[k+144>>2]=m+l;v[k+92>>2]=0;l=C(C(-R)*g);B=C(C(-Q)*g);s=C(C(-P)*g);p=C(C(o*l)+C(C(y*B)+C(r*s)));A=C(C(o*p)+C(C(l*q)-C(w*C(C(y*s)-C(B*r)))));z[k+88>>2]=A+A;A=C(C(r*p)+C(C(s*q)-C(w*C(C(o*B)-C(l*y)))));z[k+84>>2]=A+A;l=C(C(y*p)+C(C(B*q)-C(w*C(C(r*l)-C(s*o)))));z[k+80>>2]=l+l;a=x[i>>1];v[k+64>>2]=2139095039;v[k+24>>2]=141148;v[k+28>>2]=k+96;v[k+16>>2]=141808;v[k+20>>2]=k+192;v[k+12>>2]=0;z[k+8>>2]=K-z[k+200>>2];z[k+4>>2]=n-z[k+196>>2];z[k>>2]=m-z[k+192>>2];a=a&512;b=WX(k+24|0,k+16|0,k,k+256|0,k+80|0,k- -64|0,k+32|0,k+48|0,C(G+j),a>>>9|0);a:{if(!b){break a}G=C(-o);l=C(-r);u[h+12>>1]=2;j=z[k+64>>2];if(j<=z[k+272>>2]){if(a){u[h+12>>1]=3;g=z[k+56>>2];B=z[k+48>>2];m=z[k+52>>2];n=z[k+40>>2];s=z[k+32>>2];p=z[k+36>>2];z[h+40>>2]=j;A=C(C(o*n)+C(C(y*s)+C(r*p)));D=C(C(C(w*C(C(y*p)+C(s*l)))+C(q*n))+C(o*A));D=C(D+D);z[h+36>>2]=D;F=C(C(r*A)+C(C(q*p)+C(w*C(C(o*s)+C(n*E)))));F=C(F+F);z[h+32>>2]=F;n=C(C(y*A)+C(C(q*s)+C(w*C(C(r*n)+C(p*G)))));n=C(n+n);z[h+28>>2]=n;p=C(C(w*C(C(y*m)+C(B*l)))+C(q*g));l=C(C(o*g)+C(C(y*B)+C(r*m)));s=C(p+C(o*l));z[h+24>>2]=C(M+C(s+s))-C(j*D);o=C(C(r*l)+C(C(q*m)+C(w*C(C(o*B)+C(g*E)))));z[h+20>>2]=C(L+C(o+o))-C(j*F);g=C(C(y*l)+C(C(q*B)+C(w*C(C(r*g)+C(m*G)))));z[h+16>>2]=C(N+C(g+g))-C(j*n);break a}v[h+40>>2]=0;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break a}u[h+12>>1]=3;B=z[k+56>>2];m=z[k+48>>2];n=z[k+52>>2];s=z[k+40>>2];p=z[k+32>>2];A=z[k+36>>2];g=C(j*g);z[h+40>>2]=g;j=C(C(o*s)+C(C(y*p)+C(r*A)));D=C(C(C(w*C(C(y*A)+C(p*l)))+C(q*s))+C(o*j));z[h+36>>2]=D+D;D=C(C(r*j)+C(C(q*A)+C(w*C(C(o*p)+C(s*E)))));z[h+32>>2]=D+D;j=C(C(y*j)+C(C(q*p)+C(w*C(C(r*s)+C(A*G)))));z[h+28>>2]=j+j;j=C(C(o*B)+C(C(y*m)+C(r*n)));l=C(C(C(w*C(C(y*n)+C(m*l)))+C(q*B))+C(o*j));z[h+24>>2]=C(R*g)+C(M+C(l+l));o=C(C(r*j)+C(C(q*n)+C(w*C(C(o*m)+C(B*E)))));z[h+20>>2]=C(P*g)+C(L+C(o+o));l=C(Q*g);g=C(C(y*j)+C(C(q*m)+C(w*C(C(r*B)+C(n*G)))));z[h+16>>2]=l+C(N+C(g+g))}xa=k+288|0;return b|0}function PD(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=0,V=C(0);r=xa-1056|0;xa=r;j=z[e+8>>2];s=C(j+j);F=s>C(0);H=C(-s);j=z[e+4>>2];u=C(j+j);K=u>C(0);I=C(-u);j=z[e>>2];w=C(j+j);e=w>C(0);J=C(-w);L=z[g+8>>2];M=z[g+4>>2];N=z[g>>2];j=z[d+8>>2];A=C(j+j);j=z[d+4>>2];D=C(j+j);j=z[d>>2];E=C(j+j);j=z[f>>2];a:{if(j>=C(34028234663852886e22)){x=u==C(0)?D:u>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);y=w==C(0)?E:w>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);j=A;if(s==C(0)){break a}j=s>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}x=C(D+C(u*j));y=C(E+C(w*j));j=C(A+C(s*j))}H=F?s:H;I=K?u:I;J=e?w:J;P=C(L+L);Q=C(M+M);R=C(N+N);t[r+1040|0]=1;v[r+1048>>2]=256;v[r+1052>>2]=256;v[r+1044>>2]=r+16;S=v[c+8>>2];v[r+16>>2]=S;L=jx?D:x;N=E>y?E:y;j=j>A?A:j;x=D>2]+(d<<2)>>2];i=z[e>>2];n=z[e+12>>2];k=C(i+n);i=C(R+C(n-i));d:{if(!(C(k+i)>=y)|!(C(k-i)<=N)){break d}l=z[e+16>>2];m=z[e+4>>2];n=C(Q+C(l-m));l=C(m+l);m=C(D-l);o=C(E-k);k=C(C(w*m)-C(u*o));if(!(C(C(I*i)+C(J*n))>=(k>C(0)?k:C(-k)))|!(C(l+n)>=x)|!(C(l-n)<=M)){break d}p=C(H*n);k=z[e+20>>2];l=z[e+8>>2];n=C(P+C(k-l));k=C(l+k);q=C(A-k);l=C(C(u*q)-C(s*m));if(!(C(p+C(I*n))>=(l>C(0)?l:C(-l)))|!(C(k+n)>=j)|!(C(k-n)<=L)){break d}k=C(C(H*i)+C(J*n));i=C(C(s*o)-C(w*q));if(!(k>=(i>C(0)?i:C(-i)))){break d}k=z[f>>2];z[r+12>>2]=k;g=v[e+24>>2];if(!(g&1)){while(1){e=B(g>>>1|0,28)+S|0;i=z[e+28>>2];k=z[e+40>>2];n=C(i+k);i=C(R+C(k-i));l=z[e+44>>2];m=z[e+32>>2];k=C(Q+C(l-m));l=C(m+l);o=C(D-l);q=C(E-n);m=C(C(w*o)-C(u*q));g=C(n+i)>=y&C(n-i)<=N&C(C(I*i)+C(J*k))>=(m>C(0)?m:C(-m))&C(l+k)>=x&C(l-k)<=M;G=C(H*k);m=z[e+48>>2];p=z[e+36>>2];k=C(P+C(m-p));m=C(p+m);p=C(A-m);o=C(C(u*p)-C(s*o));O=C(C(H*i)+C(J*k));i=C(C(s*q)-C(w*p));g=g&C(G+C(I*k))>=(o>C(0)?o:C(-o))&C(m+k)>=j&C(m-k)<=L&O>=(i>C(0)?i:C(-i));k=z[e+16>>2];o=z[e+4>>2];i=C(Q+C(k-o));k=C(o+k);O=C(D-k);p=z[e>>2];G=z[e+12>>2];o=C(p+G);T=C(E-o);q=C(C(w*O)-C(u*T));p=C(R+C(G-p));F=C(o+p)>=y&C(o-p)<=N&C(C(I*p)+C(J*i))>=(q>C(0)?q:C(-q))&C(k+i)>=x&C(k-i)<=M;V=C(H*i);q=z[e+20>>2];G=z[e+8>>2];i=C(P+C(q-G));q=C(G+q);G=C(A-q);O=C(C(u*G)-C(s*O));F=F&C(V+C(I*i))>=(O>C(0)?O:C(-O))&C(q+i)>=j&C(q-i)<=L;p=C(C(H*p)+C(J*i));i=C(C(s*T)-C(w*G));F=F&p>=(i>C(0)?i:C(-i));e:{if(!(!F|!g)){g=C(C(C(m-q)*s)+C(C(C(n-o)*w)+C(u*C(l-k))))>C(0);v[v[r+1044>>2]+(d<<2)>>2]=e+B(g,28);e=e+B(!g,28)|0;d=d+1|0;if((d|0)!=(v[r+1052>>2]&2147483647)){break e}ND(r+16|0,d<<1);break e}if(!(g|F)){break d}e=F?e:e+28|0}g=v[e+24>>2];if(!(g&1)){continue}break}k=z[f>>2]}e=v[e+24>>2];F=e>>>1&15;if(!F){break d}e=v[c>>2]+(e>>>3&536870908)|0;g=F;while(1){U=v[e>>2];f:{if(F>>>0>=2){K=B(U,24)+b|0;i=z[K>>2];n=z[K+12>>2];l=C(i+n);i=C(R+C(n-i));if(!(C(l+i)>=y)|!(C(l-i)<=N)){break f}m=z[K+16>>2];o=z[K+4>>2];n=C(Q+C(m-o));m=C(o+m);o=C(D-m);q=C(E-l);l=C(C(w*o)-C(u*q));if(!(C(C(I*i)+C(J*n))>=(l>C(0)?l:C(-l)))|!(C(m+n)>=x)|!(C(m-n)<=M)){break f}G=C(H*n);l=z[K+20>>2];m=z[K+8>>2];n=C(P+C(l-m));l=C(m+l);p=C(A-l);m=C(C(u*p)-C(s*o));if(!(C(G+C(I*n))>=(m>C(0)?m:C(-m)))|!(C(l+n)>=j)|!(C(l-n)<=L)){break f}l=C(C(H*i)+C(J*n));i=C(C(s*q)-C(w*p));if(!(l>=(i>C(0)?i:C(-i)))){break f}}if(!(Ba[v[v[h>>2]>>2]](h,r+12|0,(U<<3)+a|0)|0)){break c}i=z[r+12>>2];if(!(i>2]=i;j=C(A+C(s*i));L=jx?D:x;y=C(E+C(w*i));N=E>y?E:y;j=j>A?A:j;x=D>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[r+1044>>2];if((b|0)==(r+16|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=r+1056|0;return a}function Wv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0);d=xa-160|0;xa=d;r=v[a+100>>2];a:{if(w[(r+c|0)- -64|0]==(b|0)){a=(x[r+18>>1]+r|0)+B(c,160)|0;y=z[a+168>>2];A=z[a+200>>2];D=z[a+232>>2];s=z[a+160>>2];t=z[a+192>>2];G=z[a+224>>2];c=(x[r+6>>1]+r|0)+(c<<5)|0;o=z[c+4>>2];H=z[a+164>>2];I=z[a+196>>2];J=z[a+228>>2];p=z[c+8>>2];q=z[c>>2];K=z[a+152>>2];L=z[a+184>>2];M=z[a+216>>2];N=z[a+144>>2];O=z[a+176>>2];P=z[a+208>>2];Q=z[e+24>>2];R=z[e+20>>2];S=z[e+16>>2];T=z[e+8>>2];U=z[e>>2];k=z[f+8>>2];i=z[c+20>>2];l=z[f+4>>2];n=z[c+24>>2];E=z[f+16>>2];m=C(C(C(k*i)-C(l*n))-E);V=C(-l);j=z[f>>2];u=z[c+16>>2];F=z[f+20>>2];n=C(C(C(j*n)-C(k*u))-F);i=C(C(l*u)-C(j*i));u=z[f+24>>2];l=C(i-u);i=C(V-C(C(z[a+148>>2]*m)+C(C(n*z[a+180>>2])+C(l*z[a+212>>2]))));z[d+116>>2]=z[e+4>>2]-i;j=C(C(-j)-C(C(N*m)+C(C(n*O)+C(l*P))));z[d+112>>2]=U-j;v[d+124>>2]=0;k=C(C(-k)-C(C(m*K)+C(C(n*L)+C(l*M))));z[d+120>>2]=T-k;z[d+100>>2]=R-C(C(C(-F)-C(C(m*H)+C(C(n*I)+C(l*J))))+C(C(p*j)-C(k*q)));z[d+96>>2]=S-C(C(C(-E)-C(C(m*s)+C(C(n*t)+C(l*G))))+C(C(o*k)-C(i*p)));v[d+108>>2]=0;z[d+104>>2]=Q-C(C(C(-u)-C(C(m*y)+C(C(n*A)+C(l*D))))+C(C(q*i)-C(j*o)));e=v[d+116>>2];v[d+16>>2]=v[d+112>>2];v[d+20>>2]=e;e=v[d+124>>2];v[d+24>>2]=v[d+120>>2];v[d+28>>2]=e;e=v[d+100>>2];v[d>>2]=v[d+96>>2];v[d+4>>2]=e;e=v[d+108>>2];v[d+8>>2]=v[d+104>>2];v[d+12>>2]=e;vw(d+128|0,r,b,d+16|0,d);b=v[d+132>>2];v[g>>2]=v[d+128>>2];v[g+4>>2]=b;b=v[d+140>>2];v[g+8>>2]=v[d+136>>2];v[g+12>>2]=b;b=v[d+148>>2];v[g+16>>2]=v[d+144>>2];v[g+20>>2]=b;b=v[d+156>>2];v[g+24>>2]=v[d+152>>2];v[g+28>>2]=b;y=z[c+24>>2];A=z[c+16>>2];D=z[c+20>>2];G=z[a+168>>2];H=z[a+160>>2];I=z[a+164>>2];J=z[a+152>>2];K=z[a+144>>2];L=z[a+148>>2];M=z[a+272>>2];N=z[a+240>>2];O=z[a+256>>2];t=z[a+200>>2];P=z[a+192>>2];Q=z[a+196>>2];R=z[a+184>>2];S=z[a+176>>2];T=z[a+180>>2];U=z[a+276>>2];E=z[a+244>>2];u=z[a+260>>2];F=z[a+232>>2];W=z[a+224>>2];X=z[a+228>>2];k=z[a+216>>2];Y=z[a+208>>2];j=z[c+4>>2];Z=z[a+212>>2];i=z[c+8>>2];s=z[c>>2];_=z[a+280>>2];$=z[a+248>>2];aa=z[a+264>>2];ba=z[g+8>>2];o=z[g+20>>2];p=z[g+24>>2];ca=z[g>>2];da=z[g+4>>2];q=z[g+16>>2];v[h+28>>2]=0;v[h+12>>2]=0;V=k;k=C(ba-C(C(s*o)-C(q*j)));j=C(ca-C(C(j*p)-C(o*i)));i=C(da-C(C(i*q)-C(p*s)));s=C(C(C(C(V*k)+C(C(Y*j)+C(Z*i)))+C(C(F*p)+C(C(W*q)+C(o*X))))+C(C(_*l)+C(C($*m)+C(n*aa))));z[h+24>>2]=p-s;t=C(C(C(C(R*k)+C(C(S*j)+C(i*T)))+C(C(t*p)+C(C(P*q)+C(o*Q))))+C(C(U*l)+C(C(E*m)+C(n*u))));z[h+20>>2]=o-t;m=C(C(C(C(J*k)+C(C(K*j)+C(L*i)))+C(C(G*p)+C(C(H*q)+C(o*I))))+C(C(M*l)+C(C(N*m)+C(n*O))));z[h+16>>2]=q-m;z[h+8>>2]=k-C(C(A*t)-C(m*D));z[h+4>>2]=i-C(C(y*m)-C(s*A));z[h>>2]=j-C(C(D*s)-C(t*y));break a}a=v[e+4>>2];v[d+80>>2]=v[e>>2];v[d+84>>2]=a;a=v[e+12>>2];v[d+88>>2]=v[e+8>>2];v[d+92>>2]=a;a=v[e+20>>2];v[d+64>>2]=v[e+16>>2];v[d+68>>2]=a;a=v[e+28>>2];v[d+72>>2]=v[e+24>>2];v[d+76>>2]=a;a=d+128|0;vw(a,r,b,d+80|0,d- -64|0);b=v[d+140>>2];v[g+8>>2]=v[d+136>>2];v[g+12>>2]=b;b=v[d+132>>2];v[g>>2]=v[d+128>>2];v[g+4>>2]=b;b=v[d+156>>2];v[g+24>>2]=v[d+152>>2];v[g+28>>2]=b;b=v[d+148>>2];v[g+16>>2]=v[d+144>>2];v[g+20>>2]=b;b=v[f+12>>2];v[d+56>>2]=v[f+8>>2];v[d+60>>2]=b;b=v[f+4>>2];v[d+48>>2]=v[f>>2];v[d+52>>2]=b;b=v[f+28>>2];v[d+40>>2]=v[f+24>>2];v[d+44>>2]=b;b=v[f+20>>2];v[d+32>>2]=v[f+16>>2];v[d+36>>2]=b;vw(a,r,c,d+48|0,d+32|0);a=v[d+132>>2];v[h>>2]=v[d+128>>2];v[h+4>>2]=a;a=v[d+140>>2];v[h+8>>2]=v[d+136>>2];v[h+12>>2]=a;a=v[d+148>>2];v[h+16>>2]=v[d+144>>2];v[h+20>>2]=a;a=v[d+156>>2];v[h+24>>2]=v[d+152>>2];v[h+28>>2]=a}xa=d+160|0}function Ax(a){a=a|0;var b=C(0),c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=C(0),T=C(0),U=C(0);px(a,a+112|0,0);I=v[a+448>>2];if(I>>>0>=2){O=v[a+228>>2];P=v[a+180>>2];J=v[a+444>>2];L=v[a+372>>2];Q=v[a+432>>2];R=v[a+456>>2];t=1;while(1){M=(v[(B(t,80)+R|0)+72>>2]<<2)+P|0;a=(t<<4)+Q|0;e=z[a+12>>2];f=z[a+8>>2];i=z[a+4>>2];h=z[a>>2];N=t<<5;s=N+J|0;m=v[s+20>>2];k=z[m+16>>2];a=v[s+16>>2];l=z[m+24>>2];p=z[m+20>>2];E=z[m+52>>2];F=z[m+48>>2];G=z[m+44>>2];s=v[((v[s+24>>2]<<5)+J|0)+16>>2];S=z[s+16>>2];q=z[s+12>>2];r=z[s+8>>2];u=z[s+4>>2];x=z[s>>2];T=z[s+24>>2];U=z[s+20>>2];a:{b:{c:{d:{switch(w[m+270|0]){default:k=C(-d);l=C(-c);e=C(-g);break a;case 0:b=C(l+l);d=C(k+k);c=C(p+p);g=C(C(f*b)+C(C(h*d)+C(c*i)));j=C(C(e*e)+C(-.5));k=z[M>>2];m=B(t,76)+L|0;n=C(C(C(C(f*g)+C(C(b*j)+C(e*C(C(h*c)-C(d*i)))))-E)+C(k*z[m+20>>2]));o=C(C(C(C(i*g)+C(C(c*j)+C(e*C(C(f*d)-C(b*h)))))-F)+C(k*z[m+16>>2]));b=C(C(C(C(h*g)+C(C(d*j)+C(e*C(C(i*b)-C(c*f)))))-G)+C(k*z[m+12>>2]));break c;case 1:m=B(t,76)+L|0;b=z[m+8>>2];g=C(z[M>>2]*C(-.5));c=Q9(g);b=C(b*c);d=C(c*z[m+4>>2]);c=C(c*z[m>>2]);g=G9(g);if(g>2];g=z[a+8>>2];j=z[a+4>>2];H=z[a>>2];m=O+N|0;b=z[m+8>>2];n=z[m>>2];y=z[m+4>>2];d=C(C(b*b)+C(C(n*n)+C(y*y)));e:{if(d>2]=e;i=C(h*f);z[a+8>>2]=i;h=C(l*f);z[a+4>>2]=h;f=C(k*f);z[a>>2]=f;k=C(n+n);l=C(j+j);p=C(o+o);q=C(C(i*k)+C(C(f*l)+C(p*h)));r=C(C(e*e)+C(-.5));z[a+24>>2]=T+C(C(i*q)+C(C(k*r)+C(e*C(C(f*p)-C(l*h)))));z[a+20>>2]=U+C(C(h*q)+C(C(p*r)+C(e*C(C(i*l)-C(k*f)))));z[a+16>>2]=S+C(C(f*q)+C(C(l*r)+C(e*C(C(h*k)-C(p*i)))));t=t+1|0;if((I|0)!=(t|0)){continue}break}}}function iT(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,k=C(0),l=0,m=C(0),n=0,p=C(0),q=0,r=0,s=0,t=0,u=C(0),w=C(0),x=C(0),y=0,D=C(0),E=C(0),F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=0,X=0,Y=0;d=xa-160|0;xa=d;l=A[c>>3];n=A[c+24>>3];J=(l+n)*.5;q=A[c+16>>3];r=A[c+40>>3];K=(q+r)*.5;s=A[c+8>>3];t=A[c+32>>3];L=(s+t)*.5;y=v[b>>2];if(y){G=v[b+8>>2];H=v[b+4>>2];P=a+32|0;k=C(r);p=C(q);Q=C(C(k-p)*C(.5));x=C(t);m=C(s);R=C(C(x-m)*C(.5));u=C(n);D=C(l);S=C(C(u-D)*C(.5));T=C(C(p+k)*C(.5));U=C(C(m+x)*C(.5));D=C(C(D+u)*C(.5));V=d+72|0;W=d+60|0;while(1){f=H+B(h,56)|0;k=z[f+44>>2];x=z[f+48>>2];m=z[f+36>>2];p=z[f+40>>2];l=A[f>>3];n=A[f+8>>3];z[d+68>>2]=A[f+16>>3];z[d+64>>2]=n;z[d+60>>2]=l;w=m;m=C(m+m);w=C(C(1)-C(w*m));u=C(p+p);M=C(p*u);z[d+56>>2]=w-M;E=C(u*k);N=C(m*x);z[d+52>>2]=E-N;O=C(m*k);u=C(u*x);z[d+48>>2]=O+u;z[d+44>>2]=E+N;E=w;w=k;k=C(k+k);w=C(w*k);z[d+40>>2]=E-w;p=C(m*p);k=C(k*x);z[d+36>>2]=p-k;z[d+32>>2]=O-u;z[d+28>>2]=p+k;z[d+24>>2]=C(C(1)-M)-w;z[d+72>>2]=z[f+24>>2];z[d+76>>2]=z[f+28>>2];z[d+80>>2]=z[f+32>>2];z[d+152>>2]=T;z[d+148>>2]=U;z[d+144>>2]=D;z[d+136>>2]=Q;z[d+132>>2]=R;z[d+128>>2]=S;v[d+120>>2]=1065353216;v[d+112>>2]=0;v[d+116>>2]=0;v[d+104>>2]=1065353216;v[d+108>>2]=0;v[d+96>>2]=0;v[d+100>>2]=0;v[d+88>>2]=1065353216;v[d+92>>2]=0;if(o$(V,W,d+24|0,d+128|0,d+144|0,d+88|0)){g=v[a+36>>2];e=g+23|0;i=v[a+40>>2]&2147483647;a:{if(e>>>0<=i>>>0){break a}I=i;i=i?i<<1:2;i=e>>>0>i>>>0?e:i;if(I>>>0>=i>>>0){break a}zw(P,i);g=v[a+36>>2]}v[a+36>>2]=e;e=v[a+32>>2]+(g<<2)|0;v[e>>2]=0;g=v[G+(h<<2)>>2];o(+K);i=j(1)|0;X=e,Y=j(0)|0,v[X+28>>2]=Y;v[e+32>>2]=i;o(+L);i=j(1)|0;X=e,Y=j(0)|0,v[X+20>>2]=Y;v[e+24>>2]=i;o(+J);i=j(1)|0;X=e,Y=j(0)|0,v[X+12>>2]=Y;v[e+16>>2]=i;v[e+8>>2]=0;v[e+4>>2]=g;g=v[f+4>>2];v[e+36>>2]=v[f>>2];v[e+40>>2]=g;g=v[f+12>>2];v[e+44>>2]=v[f+8>>2];v[e+48>>2]=g;g=v[f+20>>2];v[e+52>>2]=v[f+16>>2];v[e+56>>2]=g;z[e+60>>2]=z[f+24>>2];z[e- -64>>2]=z[f+28>>2];z[e+68>>2]=z[f+32>>2];z[e+72>>2]=z[f+36>>2];z[e+76>>2]=z[f+40>>2];z[e+80>>2]=z[f+44>>2];z[e+84>>2]=z[f+48>>2]}h=h+1|0;if((y|0)!=(h|0)){continue}break}r=A[c+40>>3];q=A[c+16>>3];t=A[c+32>>3];s=A[c+8>>3];n=A[c+24>>3];l=A[c>>3]}y=v[b+20>>2];G=v[b+16>>2];i=v[b+12>>2];z[d+96>>2]=C(r-q)*C(.5);z[d+92>>2]=C(t-s)*C(.5);z[d+88>>2]=C(n-l)*C(.5);if(i){H=a+32|0;p=C((q+r)*.5);x=C((s+t)*.5);m=C((l+n)*.5);f=0;while(1){e=G+B(f,56)|0;n=A[e>>3];q=A[e+24>>3];b=n>2];l=+k;b:{if(A[c+24>>3]<(b?n:q)-l|A[c>>3]>(b?q:n)+l){break b}r=A[e+8>>3];s=A[e+32>>3];b=r>3]<(b?r:s)-l|A[c+8>>3]>(b?s:r)+l){break b}t=A[e+40>>3];F=A[e+16>>3];b=t>F;if(A[c+40>>3]<(b?F:t)-l|A[c+16>>3]>(b?t:F)+l){break b}z[d+152>>2]=F;z[d+148>>2]=r;z[d+144>>2]=n;z[d+136>>2]=t;z[d+132>>2]=s;z[d+128>>2]=q;z[d+16>>2]=p;z[d+12>>2]=x;z[d+8>>2]=m;v[d+56>>2]=1065353216;v[d+48>>2]=0;v[d+52>>2]=0;v[d+40>>2]=1065353216;v[d+44>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=1065353216;v[d+28>>2]=0;if(F_(d+144|0,d+128|0,d+8|0,d+88|0,d+24|0,0,0)>C(k*k)){break b}g=v[a+36>>2];b=g+23|0;h=v[a+40>>2]&2147483647;c:{if(b>>>0<=h>>>0){break c}I=h;h=h?h<<1:2;h=b>>>0>h>>>0?b:h;if(I>>>0>=h>>>0){break c}zw(H,h);g=v[a+36>>2]}v[a+36>>2]=b;b=v[a+32>>2]+(g<<2)|0;v[b>>2]=1;g=v[y+(f<<2)>>2];o(+K);h=j(1)|0;X=b,Y=j(0)|0,v[X+28>>2]=Y;v[b+32>>2]=h;o(+L);h=j(1)|0;X=b,Y=j(0)|0,v[X+20>>2]=Y;v[b+24>>2]=h;o(+J);h=j(1)|0;X=b,Y=j(0)|0,v[X+12>>2]=Y;v[b+16>>2]=h;v[b+8>>2]=0;v[b+4>>2]=g;g=v[e+4>>2];v[b+36>>2]=v[e>>2];v[b+40>>2]=g;g=v[e+12>>2];v[b+44>>2]=v[e+8>>2];v[b+48>>2]=g;g=v[e+20>>2];v[b+52>>2]=v[e+16>>2];v[b+56>>2]=g;g=v[e+28>>2];v[b+60>>2]=v[e+24>>2];v[b+64>>2]=g;g=v[e+36>>2];v[b+68>>2]=v[e+32>>2];v[b+72>>2]=g;g=v[e+44>>2];v[b+76>>2]=v[e+40>>2];v[b+80>>2]=g;v[b+84>>2]=v[e+48>>2]}f=f+1|0;if((i|0)!=(f|0)){continue}break}}xa=d+160|0}function nP(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=xa-16|0;xa=g;k=c;c=v[37696];d=Ba[v[v[c>>2]+20>>2]](c)|0?37805:63804;d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,68,d,11777,1746)|0;c=d;v[c+12>>2]=0;v[c+16>>2]=0;i=b;v[c+8>>2]=b;j=a;v[c+4>>2]=a;v[c>>2]=0;v[c+52>>2]=0;v[c+56>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+48>>2]=-128;v[c+60>>2]=0;v[c+64>>2]=0;nG(c+12|0,16);if(!(v[c+44>>2]&2147483632)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?58041:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,64,b,16608,553)|0;e=v[d+36>>2];b=v[d+40>>2];if((b|0)>0){c=a+(b<<2)|0;b=a;while(1){v[b>>2]=v[e>>2];e=e+4|0;b=b+4|0;if(c>>>0>b>>>0){continue}break}e=v[d+36>>2]}if(!(!e|v[d+44>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}v[d+44>>2]=16;v[d+36>>2]=a}if(!(v[d+32>>2]&2147483632)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?57927:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,64,b,16608,553)|0;b=v[d+24>>2];c=v[d+28>>2];if((c|0)>0){e=a+(c<<2)|0;c=a;while(1){v[c>>2]=v[b>>2];b=b+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}b=v[d+24>>2]}if(!(!b|v[d+32>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[d+32>>2]=16;v[d+24>>2]=a}a=v[d+4>>2];e=0;h=xa-16|0;xa=h;a:{if(!w[v[d+8>>2]+40|0]){f=v[a+2400>>2];a=v[f+288>>2];b:{if(a){break b}a=v[f+284>>2]+67|0;c:{if(!a){break c}b=v[37696];a=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,18373,180)|0;if(!a){break c}e=a+67&-64;v[e-4>>2]=e-a}v[h+8>>2]=e;a=v[f+268>>2];d:{if(a>>>0>=(v[f+272>>2]&2147483647)>>>0){TP(f+4|0,h+8|0);break d}v[v[f+264>>2]+(a<<2)>>2]=e;v[f+268>>2]=a+1}b=v[f+288>>2];c=(B(v[f+276>>2],192)+e|0)-192|0;if(e>>>0>c>>>0){a=b;break b}while(1){a=c;v[a>>2]=b;b=a;c=a-192|0;if(e>>>0<=c>>>0){continue}break}}v[f+288>>2]=v[a>>2];v[f+280>>2]=v[f+280>>2]+1;v[a+96>>2]=0;u[a+92>>1]=1;v[a+80>>2]=0;v[a+84>>2]=0;v[a+20>>2]=0;v[a+24>>2]=1;v[a+16>>2]=d;v[a+88>>2]=0;v[a>>2]=127452;I9(a+100|0,0,84);break a}f=v[a+2404>>2];a=v[f+288>>2];e:{if(a){break e}a=v[f+284>>2]+67|0;f:{if(!a){break f}b=v[37696];a=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,18373,180)|0;if(!a){break f}e=a+67&-64;v[e-4>>2]=e-a}v[h+12>>2]=e;a=v[f+268>>2];g:{if(a>>>0>=(v[f+272>>2]&2147483647)>>>0){TP(f+4|0,h+12|0);break g}v[v[f+264>>2]+(a<<2)>>2]=e;v[f+268>>2]=a+1}b=v[f+288>>2];c=(B(v[f+276>>2],704)+e|0)-704|0;if(e>>>0>c>>>0){a=b;break e}while(1){a=c;v[a>>2]=b;b=a;c=a-704|0;if(e>>>0<=c>>>0){continue}break}}v[f+288>>2]=v[a>>2];v[f+280>>2]=v[f+280>>2]+1;v[a+96>>2]=0;u[a+92>>1]=1;v[a+80>>2]=0;v[a+84>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a+16>>2]=d;v[a+88>>2]=0;v[a>>2]=127872;I9(a+144|0,0,300);v[a+460>>2]=0;v[a+464>>2]=0;v[a+452>>2]=0;v[a+456>>2]=0;t[a+488|0]=1;v[a+468>>2]=-1;v[a+472>>2]=0;v[a+112>>2]=0;v[a+116>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+496>>2]=0;v[a+500>>2]=0;v[a+504>>2]=0;v[a+508>>2]=0;v[a+512>>2]=0;v[a+516>>2]=0;v[a+640>>2]=0;v[a+644>>2]=0;t[a+645|0]=0;t[a+646|0]=0;t[a+647|0]=0;t[a+648|0]=0;t[a+649|0]=0;t[a+650|0]=0;t[a+651|0]=0;t[a+652|0]=0;v[a+656>>2]=0;v[a+660>>2]=0;v[a+664>>2]=0;v[a+668>>2]=0}xa=h+16|0;v[d>>2]=a;c=v[j+1e3>>2];b=v[c+4>>2];h:{if(b){e=b-1|0;b=v[v[c>>2]+(e<<2)>>2];v[c+4>>2]=e;break h}b=v[c+12>>2];v[c+12>>2]=b+1}b=b<<7;yF(c+168|0,a,b);yF(c+640|0,a,b);v[d+48>>2]=b;a=v[d>>2];i:{if(!a){a9(v[37696],32,10053,71,65770,0);break i}t[a+93|0]=1;oG(d,v[k>>2],0,0);v[v[d+8>>2]>>2]=d;b=v[v[d+4>>2]+1004>>2];a=v[d>>2];v[a+28>>2]=0;v[a+32>>2]=0;v[a+20>>2]=b;v[a+36>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0;b=a- -64|0;v[b>>2]=0;v[b+4>>2]=0;v[a+60>>2]=i+4;v[a+72>>2]=0;v[a+76>>2]=0}a=d;j:{if(!v[a>>2]){a=rG(a);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break j}v[g+8>>2]=i;a=qh(j+1200|0,g+8|0,g+15|0);if(w[g+15|0]){break j}v[a>>2]=v[g+8>>2]}xa=g+16|0}function gD(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0);r=xa-1056|0;xa=r;j=z[e+8>>2];s=C(j+j);J=s>C(0);G=C(-s);j=z[e+4>>2];u=C(j+j);O=u>C(0);H=C(-u);j=z[e>>2];w=C(j+j);e=w>C(0);I=C(-w);K=z[g+8>>2];L=z[g+4>>2];M=z[g>>2];j=z[d+8>>2];A=C(j+j);j=z[d+4>>2];D=C(j+j);j=z[d>>2];E=C(j+j);j=z[f>>2];a:{if(j>=C(34028234663852886e22)){x=u==C(0)?D:u>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);y=w==C(0)?E:w>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);j=A;if(s==C(0)){break a}j=s>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}x=C(D+C(u*j));y=C(E+C(w*j));j=C(A+C(s*j))}G=J?s:G;H=O?u:H;I=e?w:I;P=C(K+K);Q=C(L+L);R=C(M+M);t[r+1040|0]=1;v[r+1048>>2]=256;v[r+1052>>2]=256;v[r+1044>>2]=r+16;v[r+16>>2]=v[c+588>>2];K=jx?D:x;M=E>y?E:y;j=j>A?A:j;x=D>2]+(d<<2)>>2];i=z[e+16>>2];n=z[e>>2];k=C(i+n);i=C(R+C(i-n));d:{if(!(C(k+i)>=y)|!(C(k-i)<=M)){break d}l=z[e+20>>2];m=z[e+4>>2];n=C(Q+C(l-m));l=C(l+m);m=C(D-l);o=C(E-k);k=C(C(w*m)-C(u*o));if(!(C(C(H*i)+C(I*n))>=(k>C(0)?k:C(-k)))|!(C(l+n)>=x)|!(C(l-n)<=L)){break d}p=C(G*n);k=z[e+24>>2];l=z[e+8>>2];n=C(P+C(k-l));k=C(k+l);q=C(A-k);l=C(C(u*q)-C(s*m));if(!(C(p+C(H*n))>=(l>C(0)?l:C(-l)))|!(C(k+n)>=j)|!(C(k-n)<=K)){break d}k=C(C(G*i)+C(I*n));i=C(C(s*o)-C(w*q));if(!(k>=(i>C(0)?i:C(-i)))){break d}k=z[f>>2];z[r+12>>2]=k;if(v[e+40>>2]){while(1){c=v[e+36>>2];i=z[c- -64>>2];k=z[c+48>>2];n=C(i+k);i=C(R+C(i-k));l=z[c+68>>2];m=z[c+52>>2];k=C(Q+C(l-m));l=C(l+m);o=C(D-l);q=C(E-n);m=C(C(w*o)-C(u*q));e=C(n+i)>=y&C(n-i)<=M&C(C(H*i)+C(I*k))>=(m>C(0)?m:C(-m))&C(l+k)>=x&C(l-k)<=L;F=C(G*k);m=z[c+72>>2];p=z[c+56>>2];k=C(P+C(m-p));m=C(m+p);p=C(A-m);o=C(C(u*p)-C(s*o));N=C(C(G*i)+C(I*k));i=C(C(s*q)-C(w*p));e=e&C(F+C(H*k))>=(o>C(0)?o:C(-o))&C(m+k)>=j&C(m-k)<=K&N>=(i>C(0)?i:C(-i));k=z[c+20>>2];o=z[c+4>>2];i=C(Q+C(k-o));k=C(k+o);N=C(D-k);p=z[c+16>>2];F=z[c>>2];o=C(p+F);S=C(E-o);q=C(C(w*N)-C(u*S));p=C(R+C(p-F));g=C(o+p)>=y&C(o-p)<=M&C(C(H*p)+C(I*i))>=(q>C(0)?q:C(-q))&C(k+i)>=x&C(k-i)<=L;T=C(G*i);q=z[c+24>>2];F=z[c+8>>2];i=C(P+C(q-F));q=C(q+F);F=C(A-q);N=C(C(u*F)-C(s*N));g=g&C(T+C(H*i))>=(N>C(0)?N:C(-N))&C(q+i)>=j&C(q-i)<=K;p=C(C(G*p)+C(I*i));i=C(C(s*S)-C(w*F));g=g&p>=(i>C(0)?i:C(-i));e:{if(!(!g|!e)){e=C(C(C(m-q)*s)+C(C(C(n-o)*w)+C(u*C(l-k))))>C(0);v[v[r+1044>>2]+(d<<2)>>2]=c+B(e,48);e=c+B(!e,48)|0;d=d+1|0;if((d|0)!=(v[r+1052>>2]&2147483647)){break e}fD(r+16|0,d<<1);break e}if(!(e|g)){break d}e=g?c:c+48|0}if(v[e+40>>2]){continue}break}k=z[f>>2]}c=v[e+36>>2];g=v[c>>2];if(!g){break d}e=c+4|0;c=g;while(1){O=v[e>>2];f:{if(g>>>0>=2){J=B(O,24)+b|0;i=z[J>>2];n=z[J+12>>2];l=C(i+n);i=C(R+C(n-i));if(!(C(l+i)>=y)|!(C(l-i)<=M)){break f}m=z[J+16>>2];o=z[J+4>>2];n=C(Q+C(m-o));m=C(o+m);o=C(D-m);q=C(E-l);l=C(C(w*o)-C(u*q));if(!(C(C(H*i)+C(I*n))>=(l>C(0)?l:C(-l)))|!(C(m+n)>=x)|!(C(m-n)<=L)){break f}F=C(G*n);l=z[J+20>>2];m=z[J+8>>2];n=C(P+C(l-m));l=C(m+l);p=C(A-l);m=C(C(u*p)-C(s*o));if(!(C(F+C(H*n))>=(m>C(0)?m:C(-m)))|!(C(l+n)>=j)|!(C(l-n)<=K)){break f}l=C(C(G*i)+C(I*n));i=C(C(s*q)-C(w*p));if(!(l>=(i>C(0)?i:C(-i)))){break f}}if(!(Ba[v[v[h>>2]>>2]](h,r+12|0,(O<<3)+a|0)|0)){break c}i=z[r+12>>2];if(!(i>2]=i;j=C(A+C(s*i));K=jx?D:x;y=C(E+C(w*i));M=E>y?E:y;j=j>A?A:j;x=D>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[r+1044>>2];if((b|0)==(r+16|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=r+1056|0;return a}function bw(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0);f=xa-240|0;xa=f;Iv(f,b,c,f+144|0);i=z[d>>2];h=z[d+4>>2];g=z[e>>2];j=z[d+8>>2];v[f+12>>2]=0;k=C(C(j*g)+z[f+8>>2]);z[f+8>>2]=k;h=C(C(h*g)+z[f+4>>2]);z[f+4>>2]=h;i=C(C(i*g)+z[f>>2]);z[f>>2]=i;j=z[d+20>>2];l=z[d+24>>2];n=z[d+16>>2];v[f+28>>2]=0;m=C(C(g*l)+z[f+24>>2]);z[f+24>>2]=m;j=C(C(g*j)+z[f+20>>2]);z[f+20>>2]=j;z[f+16>>2]=C(g*n)+z[f+16>>2];l=z[d+36>>2];n=z[d+40>>2];q=z[d+32>>2];v[f+44>>2]=0;F=C(C(g*n)+z[f+40>>2]);z[f+40>>2]=F;z[f+36>>2]=C(g*l)+z[f+36>>2];z[f+32>>2]=C(g*q)+z[f+32>>2];P=z[f+212>>2];Q=z[f+216>>2];R=z[f+224>>2];S=z[f+228>>2];T=z[f+232>>2];u=z[f+180>>2];w=z[f+184>>2];x=z[f+192>>2];y=z[f+196>>2];A=z[f+200>>2];n=z[f+164>>2];l=z[f+168>>2];U=z[f+208>>2];r=z[f+176>>2];q=z[f+144>>2];s=z[f+148>>2];t=z[f+152>>2];o=z[f+160>>2];v[f+140>>2]=0;v[f+124>>2]=0;v[f+108>>2]=0;v[f+92>>2]=0;v[f+76>>2]=0;g=C(K(C(G(C(C(1)/i),C(0)))));z[f+72>>2]=l*g;z[f+68>>2]=g*n;h=C(h*g);i=C(K(C(G(C(C(1)/C(j-C(h*h))),C(0)))));j=C(C(g*h)*i);z[f+104>>2]=C(A*i)-C(l*j);z[f+100>>2]=C(i*y)-C(j*n);z[f+96>>2]=C(i*x)-C(j*o);z[f+88>>2]=C(i*w)-C(t*j);z[f+84>>2]=C(i*u)-C(s*j);k=C(k*g);m=C(C(m-C(h*k))*i);h=C(K(C(G(C(C(1)/C(C(F-C(m*m))-C(k*k))),C(0)))));p=l;l=C(C(C(m*j)-C(g*k))*h);k=C(C(i*h)*C(-m));z[f+136>>2]=C(p*l)+C(C(A*k)+C(h*T));z[f+132>>2]=C(n*l)+C(C(k*y)+C(h*S));z[f+128>>2]=C(o*l)+C(C(x*k)+C(h*R));z[f+120>>2]=C(t*l)+C(C(Q*h)+C(w*k));z[f+116>>2]=C(s*l)+C(C(P*h)+C(u*k));v[f+60>>2]=0;z[f+64>>2]=g*o;z[f+56>>2]=g*t;z[f+52>>2]=g*s;z[f+48>>2]=g*q;z[f+80>>2]=C(i*r)-C(q*j);z[f+112>>2]=C(q*l)+C(C(U*h)+C(r*k));F=z[b- -64>>2];P=z[b+68>>2];Q=z[b+72>>2];R=z[b+80>>2];S=z[b+84>>2];T=z[b+88>>2];U=z[b+100>>2];W=z[b+104>>2];X=z[b+112>>2];Y=z[b+116>>2];Z=z[b+120>>2];H=z[b+128>>2];g=z[f+132>>2];I=z[b+132>>2];i=z[f+68>>2];h=z[f+100>>2];j=z[f+136>>2];l=z[f+104>>2];J=z[b+136>>2];k=z[f+72>>2];D=z[b+20>>2];E=z[b+24>>2];p=z[b+36>>2];L=z[b+40>>2];n=z[f+116>>2];M=z[b+52>>2];q=z[f+84>>2];s=z[f+120>>2];B=z[b+56>>2];t=z[f+88>>2];o=z[f+128>>2];m=z[f+96>>2];_=z[b>>2];$=z[b+4>>2];aa=z[b+8>>2];ba=z[b+16>>2];N=z[b+32>>2];u=z[f+112>>2];O=z[b+48>>2];w=z[f+48>>2];x=z[f+80>>2];y=z[f+52>>2];A=z[f+56>>2];V=z[b+96>>2];r=z[f+64>>2];v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;z[a+96>>2]=C(C(V-C(r*r))-C(m*m))-C(o*o);z[a+56>>2]=C(C(B-C(A*r))-C(t*m))-C(s*o);z[a+52>>2]=C(C(M-C(y*r))-C(q*m))-C(n*o);z[a+48>>2]=C(C(O-C(w*r))-C(x*m))-C(u*o);z[a+40>>2]=C(C(L-C(A*A))-C(t*t))-C(s*s);B=p;p=C(y*A);L=C(q*t);M=C(n*s);z[a+36>>2]=C(C(B-p)-L)-M;B=C(w*A);V=C(N-B);N=C(x*t);O=C(u*s);z[a+32>>2]=C(V-N)-O;z[a+24>>2]=C(C(E-p)-L)-M;z[a+20>>2]=C(C(D-C(y*y))-C(q*q))-C(n*n);D=C(w*y);E=C(x*q);p=C(u*n);z[a+16>>2]=C(C(ba-D)-E)-p;z[a+8>>2]=C(C(aa-B)-N)-O;z[a+4>>2]=C(C($-D)-E)-p;z[a>>2]=C(C(_-C(w*w))-C(x*x))-C(u*u);z[a+136>>2]=C(C(J-C(k*k))-C(l*l))-C(j*j);p=I;I=C(i*k);J=C(h*l);D=C(g*j);z[a+132>>2]=C(C(p-I)-J)-D;B=H;H=C(r*k);E=C(m*l);p=C(o*j);z[a+128>>2]=C(C(B-H)-E)-p;z[a+120>>2]=C(C(Z-I)-J)-D;z[a+116>>2]=C(C(Y-C(i*i))-C(h*h))-C(g*g);r=C(r*i);m=C(m*h);o=C(o*g);z[a+112>>2]=C(C(X-r)-m)-o;z[a+104>>2]=C(C(W-H)-E)-p;z[a+100>>2]=C(C(U-r)-m)-o;z[a+88>>2]=C(C(T-C(A*k))-C(t*l))-C(s*j);z[a+84>>2]=C(C(S-C(y*k))-C(q*l))-C(n*j);z[a+80>>2]=C(C(R-C(w*k))-C(x*l))-C(u*j);z[a+72>>2]=C(C(Q-C(A*i))-C(t*h))-C(s*g);z[a+68>>2]=C(C(P-C(y*i))-C(q*h))-C(n*g);z[a- -64>>2]=C(C(F-C(w*i))-C(x*h))-C(u*g);xa=f+240|0}function L1(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0,w=0,x=C(0),A=0,B=0,D=C(0),E=C(0),F=0,G=C(0);e=xa-160|0;xa=e;f=z[b>>2];h=z[b+4>>2];i=z[b+8>>2];v[e+156>>2]=0;z[e+152>>2]=i;z[e+148>>2]=h;z[e+144>>2]=f;l=z[b+16>>2];m=z[b+20>>2];g=z[b+12>>2];v[e+140>>2]=0;z[e+136>>2]=m;z[e+132>>2]=l;z[e+128>>2]=g;n=z[b+28>>2];o=z[b+32>>2];x=z[b+24>>2];v[e+124>>2]=0;z[e+120>>2]=o;z[e+116>>2]=n;z[e+112>>2]=x;v[e+108>>2]=0;p=C(m-i);q=C(x-f);D=C(o-i);g=C(g-f);m=C(C(p*q)-C(D*g));E=m;r=g;g=C(n-h);s=q;q=C(l-h);l=C(C(r*g)-C(s*q));g=C(C(q*D)-C(g*p));m=C(C(1)/C(K(C(C(l*l)+C(C(g*g)+C(m*m))))));p=C(E*m);z[e+100>>2]=p;g=C(g*m);z[e+96>>2]=g;l=C(l*m);z[e+104>>2]=l;b=v[a+3664>>2];a:{if(C(C(C(z[b+8>>2]*l)+C(C(z[b>>2]*g)+C(p*z[b+4>>2])))-C(C(i*l)+C(C(f*g)+C(h*p))))>2];if(!(i>2])){break a}j=a+3648|0;b:{c:{d:{e:{h=z[e+64>>2];if(h>2];if(fC(.9999989867210388))){break e}if(!(d&48)){break c}break d}f=z[e+48>>2];if(h>C(.9999989867210388)){if(d&24){break d}if(f=C(.9998999834060669)){break d}break c}if(!(d&32)){break c}}if(i==C(0)){b=v[e+108>>2];v[e+24>>2]=v[e+104>>2];v[e+28>>2]=b;b=v[e+100>>2];v[e+16>>2]=v[e+96>>2];v[e+20>>2]=b;break b}b=v[a+3664>>2];i=z[b+56>>2];g=z[b+72>>2];l=z[b+52>>2];p=z[b+68>>2];m=z[b+48>>2];q=z[b+64>>2];v[e+28>>2]=0;s=i;r=C(g-i);i=z[e+80>>2];g=C(C(1)-C(h+f));o=C(C(s+C(r*i))-C(C(g*z[e+152>>2])+C(C(o*f)+C(h*z[e+136>>2]))));s=o;r=C(o*o);o=C(C(m+C(C(q-m)*i))-C(C(z[e+144>>2]*g)+C(C(x*f)+C(h*z[e+128>>2]))));f=C(C(l+C(C(p-l)*i))-C(C(z[e+148>>2]*g)+C(C(n*f)+C(h*z[e+132>>2]))));h=C(C(1)/C(K(C(r+C(C(o*o)+C(f*f))))));z[e+24>>2]=s*h;z[e+20>>2]=f*h;z[e+16>>2]=o*h;break b}b=v[e+108>>2];v[e+24>>2]=v[e+104>>2];v[e+28>>2]=b;b=v[e+100>>2];v[e+16>>2]=v[e+96>>2];v[e+20>>2]=b}u=v[a+2324>>2];d=e+144|0;k=e+128|0;F=e+112|0;b=e+16|0;t=v[a+3664>>2];A=t+48|0;B=t- -64|0;t=a+2324|0;J1(d,k,F,e+96|0,b,c,A,B,a+3632|0,v[a+2320>>2],t);w=v[a+3664>>2];A=w+48|0;w=w- -64|0;B=v[a+2320>>2];H1(A,w,j,b,c,d,k,B,t);H1(A,w,j,b,c,k,F,B,t);H1(A,w,j,b,c,d,F,B,t);d=v[a+2324>>2];if((u|0)==(d|0)){break a}v[e>>2]=2139095039;if(d>>>0>u>>>0){c=u;while(1){b=v[a+2320>>2]+(c<<6)|0;n=z[b+44>>2];f=z[b+8>>2];h=z[b>>2];i=z[b+4>>2];o=z[a+2304>>2];x=z[a+2288>>2];l=z[a+2256>>2];m=z[a+2272>>2];g=z[a+2308>>2];p=z[a+2292>>2];q=z[a+2260>>2];D=z[a+2276>>2];G=z[a+2312>>2];E=z[a+2296>>2];r=z[a+2264>>2];s=z[a+2280>>2];v[b+12>>2]=0;z[b+8>>2]=G+C(C(E*f)+C(C(r*h)+C(i*s)));z[b+4>>2]=g+C(C(p*f)+C(C(q*h)+C(i*D)));z[b>>2]=o+C(C(x*f)+C(C(l*h)+C(i*m)));f=z[e>>2];z[e>>2]=f>n?n:f;c=c+1|0;d=v[a+2324>>2];if(c>>>0>>0){continue}break}}if(d>>>0>u>>>0){b=u;while(1){c=b;b=b+1|0;if(d>>>0>b>>>0){c=v[a+2320>>2]+(c<<6)|0;f=z[c+16>>2];h=z[c+24>>2];i=z[c+20>>2];c=b;while(1){k=v[a+2320>>2];j=k+(c<<6)|0;n=C(z[j+24>>2]-h);r=C(n*n);n=C(z[j+16>>2]-f);s=C(n*n);n=C(z[j+20>>2]-i);if(z[a+2240>>2]>C(r+C(s+C(n*n)))){d=(k+(d<<6)|0)+-64|0;k=v[d+4>>2];v[j>>2]=v[d>>2];v[j+4>>2]=k;v[j+48>>2]=v[d+48>>2];k=v[d+44>>2];v[j+40>>2]=v[d+40>>2];v[j+44>>2]=k;k=v[d+36>>2];v[j+32>>2]=v[d+32>>2];v[j+36>>2]=k;k=v[d+28>>2];v[j+24>>2]=v[d+24>>2];v[j+28>>2]=k;k=v[d+20>>2];v[j+16>>2]=v[d+16>>2];v[j+20>>2]=k;k=v[d+12>>2];v[j+8>>2]=v[d+8>>2];v[j+12>>2]=k;d=v[t>>2]-1|0;v[t>>2]=d;c=c-1|0}c=c+1|0;if(c>>>0>>0){continue}break}}if(b>>>0>>0){continue}break}}C1(a,e+16|0,e,u);if(y[a+2324>>2]<=15){break a}z1(a,3,1)}xa=e+160|0}function RD(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0);p=xa-1056|0;xa=p;m=z[e+8>>2];m=C(m+m);G=m>C(0);H=C(-m);n=z[e+4>>2];n=C(n+n);I=n>C(0);J=C(-n);o=z[e>>2];o=C(o+o);e=o>C(0);L=C(-o);q=z[d+8>>2];q=C(q+q);r=z[d+4>>2];r=C(r+r);s=z[d>>2];s=C(s+s);A=z[f>>2];a:{if(A>=C(34028234663852886e22)){w=n==C(0)?r:n>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);x=o==C(0)?s:o>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);D=q;if(m==C(0)){break a}D=m>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}w=C(r+C(n*A));x=C(s+C(o*A));D=C(q+C(m*A))}A=G?m:H;H=I?n:J;J=e?o:L;t[p+1040|0]=1;v[p+1048>>2]=256;v[p+1052>>2]=256;v[p+1044>>2]=p+16;R=v[c+8>>2];v[p+16>>2]=R;L=q>D?q:D;P=r>w?r:w;Q=s>x?s:x;D=q>2]+(G<<2)>>2];k=z[e+12>>2];i=z[e>>2];j=C(k-i);i=C(i+k);d:{if(!(C(j+i)>=x)|!(C(i-j)<=Q)){break d}h=z[e+16>>2];l=z[e+4>>2];k=C(h-l);h=C(l+h);l=C(r-h);y=C(s-i);i=C(C(o*l)-C(n*y));if(!(C(C(H*j)+C(J*k))>=(i>C(0)?i:C(-i)))|!(C(k+h)>=w)|!(C(h-k)<=P)){break d}u=C(A*k);i=z[e+20>>2];h=z[e+8>>2];k=C(i-h);i=C(h+i);E=C(q-i);h=C(C(n*E)-C(m*l));if(!(C(u+C(H*k))>=(h>C(0)?h:C(-h)))|!(C(k+i)>=D)|!(C(i-k)<=L)){break d}h=C(C(A*j)+C(J*k));j=C(C(m*y)-C(o*E));if(!(h>=(j>C(0)?j:C(-j)))){break d}i=z[f>>2];z[p+12>>2]=i;d=v[e+24>>2];if(!(d&1)){while(1){d=B(d>>>1|0,28)+R|0;i=z[d+40>>2];h=z[d+28>>2];j=C(i-h);l=z[d+44>>2];y=z[d+32>>2];k=C(l-y);l=C(y+l);S=C(r-l);y=C(h+i);T=C(s-y);E=C(C(o*S)-C(n*T));M=z[d+12>>2];u=z[d>>2];i=C(M-u);K=z[d+16>>2];F=z[d+4>>2];h=C(K-F);K=C(F+K);F=C(r-K);M=C(u+M);U=C(s-M);u=C(C(o*F)-C(n*U));e=C(M-i)<=Q&C(i+M)>=x&C(C(H*i)+C(J*h))>=(u>C(0)?u:C(-u))&C(h+K)>=w&C(K-h)<=P;W=C(A*h);u=z[d+20>>2];N=z[d+8>>2];h=C(u-N);u=C(N+u);N=C(q-u);F=C(C(n*N)-C(m*F));X=C(C(A*i)+C(J*h));i=C(C(m*U)-C(o*N));e=e&C(W+C(H*h))>=(F>C(0)?F:C(-F))&C(h+u)>=D&C(u-h)<=L&X>=(i>C(0)?i:C(-i));I=C(y-j)<=Q&C(j+y)>=x&C(C(H*j)+C(J*k))>=(E>C(0)?E:C(-E))&C(k+l)>=w&C(l-k)<=P;F=C(A*k);i=z[d+48>>2];h=z[d+36>>2];k=C(i-h);i=C(h+i);E=C(q-i);h=C(C(n*E)-C(m*S));N=C(C(A*j)+C(J*k));j=C(C(m*T)-C(o*E));I=I&C(F+C(H*k))>=(h>C(0)?h:C(-h))&C(k+i)>=D&C(i-k)<=L&N>=(j>C(0)?j:C(-j));e:{if(!(!e|!I)){e=C(C(C(i-u)*m)+C(C(C(y-M)*o)+C(n*C(l-K))))>C(0);v[v[p+1044>>2]+(G<<2)>>2]=d+B(e,28);e=d+B(!e,28)|0;G=G+1|0;if((G|0)!=(v[p+1052>>2]&2147483647)){break e}ND(p+16|0,G<<1);break e}if(!(e|I)){break d}e=e?d:d+28|0}d=v[e+24>>2];if(!(d&1)){continue}break}i=z[f>>2]}e=v[e+24>>2];d=e>>>1&15;if(!d){break d}e=v[c>>2]+(e>>>3&536870908)|0;I=d;while(1){V=v[e>>2];f:{if(d>>>0>=2){O=B(V,24)+b|0;k=z[O+12>>2];h=z[O>>2];j=C(k-h);h=C(h+k);if(!(C(j+h)>=x)|!(C(h-j)<=Q)){break f}l=z[O+16>>2];y=z[O+4>>2];k=C(l-y);l=C(y+l);y=C(r-l);E=C(s-h);h=C(C(o*y)-C(n*E));if(!(C(C(H*j)+C(J*k))>=(h>C(0)?h:C(-h)))|!(C(k+l)>=w)|!(C(l-k)<=P)){break f}u=C(A*k);h=z[O+20>>2];l=z[O+8>>2];k=C(h-l);h=C(l+h);K=C(q-h);l=C(C(n*K)-C(m*y));if(!(C(u+C(H*k))>=(l>C(0)?l:C(-l)))|!(C(k+h)>=D)|!(C(h-k)<=L)){break f}h=C(C(A*j)+C(J*k));j=C(C(m*E)-C(o*K));if(!(h>=(j>C(0)?j:C(-j)))){break f}}if(!(Ba[v[v[g>>2]>>2]](g,p+12|0,(V<<3)+a|0)|0)){break c}j=z[p+12>>2];if(!(j>2]=j;w=C(q+C(m*j));L=q>w?q:w;x=C(r+C(n*j));P=r>x?r:x;j=C(s+C(o*j));Q=js?s:j}e=e+4|0;I=I-1|0;if(I){continue}break}}d=G;G=d-1|0;if(d){continue}break}b=1;break b}b=0}a=v[p+1052>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=v[p+1044>>2];if((a|0)==(p+16|0)|!a){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=p+1056|0;return b}function i3(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=C(0),p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=C(0),y=0,A=0,D=C(0),E=C(0),F=0,G=0,I=C(0),J=C(0);g=B(b,12);if(g){n=v[37696]+12|0;t=Ba[v[v[n>>2]+8>>2]](n,g,24422,8181,79)|0}n=B(d,12);if(n){h=v[37696]+12|0;A=Ba[v[v[h>>2]+8>>2]](h,n,24422,8181,82)|0}n=d<<2;if(n){h=v[37696]+12|0;n=Ba[v[v[h>>2]+8>>2]](h,n,24422,8181,84)|0}else{n=0}a:{if(f!=C(0)){g=0;h=b<<2;if(h){j=v[37696]+12|0;w=Ba[v[v[j>>2]+8>>2]](j,h,24422,8181,89)|0}if(!b){break a}f=C(C(1)/f);while(1){v[(g<<2)+w>>2]=g;j=B(g,12);h=j+c|0;x=z[h>>2];o=z[h+4>>2];j=j+t|0;z[j+8>>2]=H(C(C(z[h+8>>2]*f)+C(.5)));z[j+4>>2]=H(C(C(o*f)+C(.5)));z[j>>2]=H(C(C(x*f)+C(.5)));g=g+1|0;if((g|0)!=(b|0)){continue}break}break a}H9(t,c,g)}g=b>>>0>>0?d:b;h=g>>>1|g;h=h>>>2|h;h=h>>>4|h;h=h>>>8|h;F=h>>>16|h;h=F+1|0;g=g+h<<2;if(g){j=v[37696]+12|0;g=Ba[v[v[j>>2]+8>>2]](j,g,24422,8181,108)|0}else{g=0}u=h<<2;m=I9(g,255,u);g=b<<2;if(g){h=v[37696]+12|0;i=Ba[v[v[h>>2]+8>>2]](h,g,24422,8181,113)|0}else{i=0}j=I9(i,255,g);q=B(d,3);b:{if(!q){break b}g=0;if((q|0)!=1){k=q&-2;h=0;while(1){r=g<<2;i=v[r+e>>2];if(i>>>0>>0){v[j+(i<<2)>>2]=0}r=v[(r|4)+e>>2];if(r>>>0>>0){v[j+(r<<2)>>2]=0}g=g+2|0;h=h+2|0;if((k|0)!=(h|0)){continue}break}}if(!(q&1)){break b}g=v[(g<<2)+e>>2];if(g>>>0>=b>>>0){break b}v[j+(g<<2)>>2]=0}r=m+u|0;q=0;h=0;if(b){k=0;while(1){i=j+(k<<2)|0;c:{if(v[i>>2]==-1){break c}g=B(k,12)+t|0;f=z[g+4>>2];x=z[g>>2];o=z[g+8>>2];d:{s=v[g>>2];y=v[g+4>>2];G=v[g+8>>2];g=(s+B(y,11)|0)+B(G,2147483631)|0;l=g&2147483647;l=m+(((l>>>12^g^l>>>22)&F)<<2)|0;g=v[l>>2];if((g|0)!=-1){while(1){p=B(g,12)+t|0;if(!(x!=z[p>>2]|f!=z[p+4>>2])&o==z[p+8>>2]){break d}g=v[r+(g<<2)>>2];if((g|0)!=-1){continue}break}}v[i>>2]=h;g=B(h,12)+t|0;v[g+8>>2]=G;v[g+4>>2]=y;v[g>>2]=s;if(w){v[(h<<2)+w>>2]=k}v[r+(h<<2)>>2]=v[l>>2];v[l>>2]=h;h=h+1|0;break c}v[i>>2]=g}k=k+1|0;if((k|0)!=(b|0)){continue}break}}if(d){g=0;while(1){k=v[e>>2];e:{if(k>>>0>=b>>>0){break e}i=v[e+4>>2];if(i>>>0>=b>>>0){break e}l=v[e+8>>2];if(l>>>0>=b>>>0){break e}p=B(k,12)+c|0;f=z[p>>2];y=B(i,12)+c|0;x=C(f-z[y>>2]);o=z[p+4>>2];s=B(l,12)+c|0;D=C(o-z[s+4>>2]);f=C(f-z[s>>2]);o=C(o-z[y+4>>2]);E=C(C(x*D)-C(f*o));I=C(E*E);J=o;o=z[p+8>>2];E=C(o-z[s+8>>2]);o=C(o-z[y+8>>2]);D=C(C(J*E)-C(D*o));f=C(C(o*f)-C(E*x));if(C(I+C(C(D*D)+C(f*f)))==C(0)){break e}k=v[j+(k<<2)>>2];i=v[j+(i<<2)>>2];if((k|0)==(i|0)){break e}l=v[j+(l<<2)>>2];if((l|0)==(i|0)|(k|0)==(l|0)){break e}p=B(q,12)+A|0;v[p>>2]=k;v[p+8>>2]=l;v[p+4>>2]=i;v[(q<<2)+n>>2]=g;q=q+1|0}e=e+12|0;g=g+1|0;if((g|0)!=(d|0)){continue}break}}if(j){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,j)}u=I9(m,255,u);f:{g:{if(q){d=1;e=0;b=0;while(1){j=B(e,12)+A|0;k=v[j+8>>2];p=v[j>>2];l=v[j+4>>2];m=p-(l+k|0)^k>>>13;i=l-(k+m|0)^m<<8;g=k-(m+i|0)^i>>>13;s=i;i=m-(g+i|0)^g>>>12;m=s-(i+g|0)^i<<16;g=g-(i+m|0)^m>>>5;i=i-(g+m|0)^g>>>3;s=g;g=m-(g+i|0)^i<<10;m=u+(((s-(g+i|0)^g>>>15)&F)<<2)|0;g=v[m>>2];h:{if((g|0)!=-1){while(1){i=B(g,12)+A|0;if(!((p|0)!=v[i>>2]|(l|0)!=v[i+4>>2])&(k|0)==v[i+8>>2]){break h}g=v[r+(g<<2)>>2];if((g|0)!=-1){continue}break}}k=b<<2;i=v[(e<<2)+n>>2];v[k+n>>2]=i;g=B(b,12)+A|0;v[g+8>>2]=v[j+8>>2];l=v[j+4>>2];v[g>>2]=v[j>>2];v[g+4>>2]=l;v[k+r>>2]=v[m>>2];v[m>>2]=b;d=(b|0)==(i|0)&d;b=b+1|0}e=e+1|0;if((q|0)!=(e|0)){continue}break}break g}b=0;d=1;if(!u){break f}}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,u)}if(w){if(h){g=0;while(1){e=B(g,12)+t|0;j=B(v[(g<<2)+w>>2],12)+c|0;z[e>>2]=z[j>>2];z[e+4>>2]=z[j+4>>2];z[e+8>>2]=z[j+8>>2];g=g+1|0;if((h|0)!=(g|0)){continue}break}}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,w)}v[a+12>>2]=A;v[a+8>>2]=t;v[a+4>>2]=b;v[a>>2]=h;if(!d){v[a+16>>2]=n;return a}if(n){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,n)}v[a+16>>2]=0;return a}function ZX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0);c=xa-288|0;xa=c;A=z[a+4>>2];y=z[a+8>>2];v[c+272>>2]=0;v[c+264>>2]=0;v[c+268>>2]=0;v[c+256>>2]=0;v[c+260>>2]=0;K=z[d+20>>2];F=z[b+20>>2];L=z[d+24>>2];G=z[b+24>>2];n=z[e+52>>2];D=z[e+56>>2];T=z[f+4>>2];U=z[f>>2];V=z[f+8>>2];M=z[d+16>>2];B=z[b+16>>2];s=z[d>>2];l=z[b+8>>2];m=z[d+8>>2];k=z[b>>2];r=z[d+12>>2];p=z[b+4>>2];q=z[d+4>>2];w=z[b+12>>2];o=z[e+48>>2];v[c+252>>2]=0;z[c+248>>2]=D;z[c+244>>2]=n;t[c+224|0]=0;v[c+220>>2]=3;v[c+192>>2]=0;v[c+196>>2]=0;v[c+200>>2]=0;v[c+204>>2]=0;z[c+240>>2]=o;n=n>=o?o:n;n=n<=D?n:D;D=C(n*C(.05000000074505806));z[c+216>>2]=D;z[c+212>>2]=D;z[c+208>>2]=n*C(.15000000596046448);v[c+172>>2]=0;v[c+156>>2]=0;D=C(-s);B=C(B-M);F=C(F-K);G=C(G-L);N=C(C(C(D*B)-C(F*q))-C(m*G));n=C(C(r*r)+C(-.5));o=C(C(C(r*C(C(q*B)-C(s*F)))+C(n*G))-C(m*N));J=C(o+o);z[c+104>>2]=J;o=C(C(C(k*q)-C(s*p))+C(C(l*r)-C(w*m)));H=C(C(C(p*m)-C(q*l))+C(C(k*r)-C(w*s)));E=C(H+H);O=C(o*E);I=C(C(w*r)-C(C(C(D*k)-C(p*q))-C(m*l)));k=C(C(C(l*s)-C(m*k))+C(C(p*r)-C(w*q)));p=C(k+k);w=C(I*p);H=C(C(1)-C(H*E));P=C(k*p);l=C(y*C(0));Q=C(o*p);R=C(I*E);S=C(C(C(H-P)*l)+C(C(y*C(O-w))+C(l*C(Q+R))));z[c+168>>2]=J-S;p=C(C(C(n*F)+C(r*C(C(s*G)-C(m*B))))-C(q*N));p=C(p+p);z[c+100>>2]=p;E=C(k*E);k=C(o+o);I=C(I*k);o=C(o*k);k=C(C(C(Q-R)*l)+C(C(y*C(E+I))+C(l*C(H-o))));z[c+164>>2]=p-k;z[c+152>>2]=J+S;z[c+148>>2]=p+k;z[c+176>>2]=A;v[c+108>>2]=0;v[c+124>>2]=4;t[c+128|0]=1;z[c+120>>2]=A;z[c+116>>2]=A;z[c+112>>2]=A;k=C(C(C(n*B)+C(r*C(C(m*F)-C(q*G))))-C(s*N));k=C(k+k);z[c+96>>2]=k;l=C(C(C(O+w)*l)+C(C(y*C(C(C(1)-P)-o))+C(l*C(E-I))));z[c+160>>2]=k-l;z[c+144>>2]=k+l;v[c+92>>2]=0;l=C(V*g);y=C(U*g);w=C(T*g);o=C(C(m*l)+C(C(s*y)+C(q*w)));B=C(C(m*o)+C(C(l*n)-C(r*C(C(s*w)-C(y*q)))));z[c+88>>2]=B+B;B=C(C(q*o)+C(C(w*n)-C(r*C(C(m*y)-C(l*s)))));z[c+84>>2]=B+B;l=C(C(s*o)+C(C(y*n)-C(r*C(C(q*l)-C(w*m)))));z[c+80>>2]=l+l;a=x[i>>1];v[c+28>>2]=0;z[c+24>>2]=J-z[c+200>>2];z[c+20>>2]=p-z[c+196>>2];z[c+16>>2]=k-z[c+192>>2];v[c+8>>2]=141148;v[c+12>>2]=c+96;v[c>>2]=141808;v[c+4>>2]=c+192;a=a&512;b=WX(c+8|0,c,c+16|0,c+256|0,c+80|0,c- -64|0,c+32|0,c+48|0,C(A+j),a>>>9|0);a:{if(!b){break a}j=C(-m);A=C(-q);u[h+12>>1]=2;B=z[c+64>>2];if(B<=z[c+272>>2]){if(a){u[h+12>>1]=3;g=z[c+56>>2];l=z[c+48>>2];y=z[c+52>>2];k=z[c+40>>2];p=z[c+32>>2];w=z[c+36>>2];z[h+40>>2]=B;o=C(C(m*k)+C(C(s*p)+C(q*w)));z[h+36>>2]=C(C(C(r*C(C(s*w)+C(p*A)))+C(n*k))+C(m*o))*C(-2);z[h+32>>2]=C(C(q*o)+C(C(n*w)+C(r*C(C(m*p)+C(k*D)))))*C(-2);z[h+28>>2]=C(C(s*o)+C(C(n*p)+C(r*C(C(q*k)+C(w*j)))))*C(-2);k=C(C(r*C(C(s*y)+C(l*A)))+C(n*g));A=C(C(m*g)+C(C(s*l)+C(q*y)));k=C(k+C(m*A));z[h+24>>2]=L+C(k+k);m=C(C(q*A)+C(C(n*y)+C(r*C(C(m*l)+C(g*D)))));z[h+20>>2]=K+C(m+m);g=C(C(s*A)+C(C(n*l)+C(r*C(C(q*g)+C(y*j)))));z[h+16>>2]=M+C(g+g);break a}v[h+40>>2]=0;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break a}u[h+12>>1]=3;l=z[c+56>>2];y=z[c+48>>2];k=z[c+52>>2];p=z[c+40>>2];w=z[c+32>>2];o=z[c+36>>2];z[h+40>>2]=B*g;g=C(C(m*p)+C(C(s*w)+C(q*o)));z[h+36>>2]=C(C(C(r*C(C(s*o)+C(w*A)))+C(n*p))+C(m*g))*C(-2);z[h+32>>2]=C(C(q*g)+C(C(n*o)+C(r*C(C(m*w)+C(p*D)))))*C(-2);z[h+28>>2]=C(C(s*g)+C(C(n*w)+C(r*C(C(q*p)+C(o*j)))))*C(-2);g=C(C(m*l)+C(C(s*y)+C(q*k)));A=C(C(C(r*C(C(s*k)+C(y*A)))+C(n*l))+C(m*g));z[h+24>>2]=L+C(A+A);m=C(C(q*g)+C(C(n*k)+C(r*C(C(m*y)+C(l*D)))));z[h+20>>2]=K+C(m+m);g=C(C(s*g)+C(C(n*y)+C(r*C(C(q*l)+C(k*j)))));z[h+16>>2]=M+C(g+g)}xa=c+288|0;return b|0}function TY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0);k=xa-384|0;xa=k;b=v[b>>2];a=v[a>>2];v[k+72>>2]=0;v[k+76>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;t[k+96|0]=0;v[k+92>>2]=3;j=z[a+8>>2];l=z[a+12>>2];p=z[a+4>>2];v[k+124>>2]=0;z[k+120>>2]=l;z[k+116>>2]=j;z[k+112>>2]=p;j=j>=p?p:j;j=j<=l?j:l;z[k+88>>2]=j*C(.05000000074505806);z[k+84>>2]=j*C(.004999999888241291);z[k+80>>2]=j*C(.009999999776482582);v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;t[k+32|0]=0;v[k+28>>2]=3;j=z[b+8>>2];l=z[b+12>>2];p=z[b+4>>2];v[k+60>>2]=0;z[k+56>>2]=l;z[k+52>>2]=j;z[k+48>>2]=p;j=j>=p?p:j;j=j<=l?j:l;z[k+24>>2]=j*C(.05000000074505806);z[k+20>>2]=j*C(.004999999888241291);z[k+16>>2]=j*C(.009999999776482582);v[k+376>>2]=0;v[k+380>>2]=0;v[k+368>>2]=0;v[k+372>>2]=0;H=z[f+20>>2];D=z[e+20>>2];B=z[f+24>>2];E=z[e+24>>2];n=z[c+8>>2];r=z[c>>2];s=z[c+4>>2];q=z[c+12>>2];p=z[d+12>>2];w=z[d>>2];I=z[f+16>>2];F=z[e+16>>2];j=z[d+4>>2];l=z[d+8>>2];v[k+364>>2]=0;v[k+348>>2]=0;v[k+332>>2]=0;G=C(-w);m=C(F-I);o=C(D-H);x=C(E-B);A=C(C(C(G*m)-C(o*j))-C(l*x));y=C(C(p*p)+C(-.5));u=C(C(C(p*C(C(j*m)-C(w*o)))+C(y*x))-C(l*A));z[k+360>>2]=u+u;u=C(C(C(y*o)+C(p*C(C(w*x)-C(l*m))))-C(j*A));z[k+356>>2]=u+u;a=k+352|0;m=C(C(C(y*m)+C(p*C(C(l*o)-C(j*x))))-C(w*A));z[a>>2]=m+m;o=C(C(C(s*l)-C(j*n))+C(C(r*p)-C(q*w)));m=C(o+o);x=C(C(C(n*w)-C(l*r))+C(C(s*p)-C(q*j)));A=C(x+x);u=C(C(1)-C(o*m));J=C(x*A);z[k+344>>2]=u-J;o=C(C(C(r*j)-C(w*s))+C(C(n*p)-C(q*l)));K=C(o*A);n=C(C(q*p)-C(C(C(G*r)-C(s*j))-C(l*n)));r=C(n*m);z[k+340>>2]=K-r;s=C(o*m);q=C(n*A);z[k+336>>2]=s+q;z[k+328>>2]=K+r;r=C(o+o);o=C(o*r);z[k+324>>2]=u-o;m=C(x*m);n=C(n*r);z[k+320>>2]=m-n;v[k+316>>2]=0;z[k+312>>2]=s-q;z[k+308>>2]=m+n;z[k+304>>2]=C(C(1)-J)-o;s=z[d+20>>2];q=z[c+20>>2];n=z[d+24>>2];r=z[c+24>>2];m=z[d+16>>2];o=z[c+16>>2];v[k+300>>2]=0;A=C(r-E);n=C(C(n-B)-A);E=C(o-F);r=C(C(m-I)-E);D=C(q-D);s=C(C(s-H)-D);q=C(C(l*n)+C(C(w*r)+C(j*s)));m=C(C(C(y*n)-C(p*C(C(w*s)-C(j*r))))+C(l*q));z[k+296>>2]=m+m;m=C(C(j*q)+C(C(y*s)-C(p*C(C(l*r)-C(n*w)))));z[k+292>>2]=m+m;n=C(C(w*q)+C(C(y*r)-C(p*C(C(j*n)-C(s*l)))));z[k+288>>2]=n+n;v[k+224>>2]=0;v[k+144>>2]=141468;v[k+152>>2]=k+304;v[k+148>>2]=k- -64;b=v[k+324>>2];v[k+176>>2]=v[k+320>>2];v[k+180>>2]=b;b=v[k+332>>2];v[k+184>>2]=v[k+328>>2];v[k+188>>2]=b;b=v[k+316>>2];v[k+168>>2]=v[k+312>>2];v[k+172>>2]=b;b=v[k+340>>2];v[k+192>>2]=v[k+336>>2];v[k+196>>2]=b;b=v[k+348>>2];v[k+200>>2]=v[k+344>>2];v[k+204>>2]=b;b=v[a+4>>2];v[k+208>>2]=v[a>>2];v[k+212>>2]=b;b=v[k+364>>2];v[k+216>>2]=v[k+360>>2];v[k+220>>2]=b;b=v[k+308>>2];v[k+160>>2]=v[k+304>>2];v[k+164>>2]=b;n=z[k+164>>2];z[k+164>>2]=z[k+176>>2];r=z[k+184>>2];s=z[k+168>>2];z[k+168>>2]=z[k+192>>2];z[k+184>>2]=z[k+196>>2];z[k+192>>2]=s;z[k+196>>2]=r;z[k+176>>2]=n;v[k+136>>2]=141808;v[k+140>>2]=k;n=C(34028234663852886e22);if($X(k+144|0,k+136|0,a,k+368|0,k+288|0,k+272|0,k+240|0,k+256|0,C(g+C(0)),1)){n=z[k+272>>2];g=z[k+264>>2];r=z[k+256>>2];s=z[k+260>>2];q=z[k+248>>2];m=z[k+240>>2];o=z[k+244>>2];x=C(C(l*q)+C(C(w*m)+C(j*o)));F=C(-j);u=C(C(C(p*C(C(w*o)+C(m*F)))+C(y*q))+C(l*x));z[h+8>>2]=u+u;u=C(C(j*x)+C(C(y*o)+C(p*C(C(l*m)+C(q*G)))));z[h+4>>2]=u+u;u=o;o=C(-l);q=C(C(w*x)+C(C(y*m)+C(p*C(C(j*q)+C(u*o)))));z[h>>2]=q+q;q=n>C(0)?n:C(0);u=B;m=C(C(l*g)+C(C(w*r)+C(j*s)));B=C(C(C(p*C(C(w*s)+C(r*F)))+C(y*g))+C(l*m));z[i+8>>2]=C(A*q)+C(u+C(B+B));l=C(C(j*m)+C(C(y*s)+C(p*C(C(l*r)+C(g*G)))));z[i+4>>2]=C(D*q)+C(H+C(l+l));g=C(C(w*m)+C(C(y*r)+C(p*C(C(j*g)+C(s*o)))));z[i>>2]=C(E*q)+C(I+C(g+g))}xa=k+384|0;return C(n)}function $W(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=0,da=C(0);g=xa-112|0;xa=g;r=v[a+32>>2];m=z[a+8>>2];i=z[a+4>>2];z[g+40>>2]=C(1)/z[a+12>>2];z[g+36>>2]=C(1)/m;z[g+32>>2]=C(1)/i;z[g+44>>2]=z[a+16>>2];z[g+48>>2]=z[a+20>>2];z[g+52>>2]=z[a+24>>2];z[g+56>>2]=z[a+28>>2];n=z[b+8>>2];p=C(z[b+24>>2]*C(-2));l=z[b>>2];k=C(z[b+16>>2]*C(-2));j=C(z[b+20>>2]*C(-2));o=z[b+4>>2];m=C(C(n*p)+C(C(l*k)+C(j*o)));q=z[b+12>>2];i=C(C(q*q)+C(-.5));z[g+24>>2]=C(n*m)+C(C(p*i)-C(q*C(C(l*j)-C(k*o))));z[g+20>>2]=C(o*m)+C(C(j*i)-C(q*C(C(n*k)-C(p*l))));z[g+12>>2]=q;z[g+8>>2]=-n;z[g+4>>2]=-o;z[g>>2]=-l;z[g+16>>2]=C(l*m)+C(C(k*i)-C(q*C(C(o*p)-C(j*n))));aX(g- -64|0,g+32|0,g);ba=v[r+56>>2];ca=w[r+55|0];j=z[g+104>>2];m=z[g+108>>2];t=z[c+8>>2];y=z[c>>2];G=z[c+4>>2];Q=z[g+92>>2];R=z[g+80>>2];S=z[g+96>>2];q=z[d+8>>2];n=z[d>>2];T=z[g+84>>2];l=z[d+4>>2];i=z[g+100>>2];U=z[g+88>>2];V=z[g+64>>2];W=z[g+76>>2];X=z[g+68>>2];Y=z[g+72>>2];v[h+8>>2]=-1;a:{b:{c:{if(ca){D=C(C(C(Y*n)+C(T*l))+C(S*q));da=C(C(C(X*n)+C(R*l))+C(Q*q));E=C(C(C(V*n)+C(W*l))+C(U*q));H=C(C(C(C(y*Y)+C(G*T))+C(t*S))+m);F=C(C(C(C(y*X)+C(G*R))+C(t*Q))+j);I=C(C(C(C(y*V)+C(G*W))+C(t*U))+i);d=0;o=C(34028234663852886e22);m=C(-34028234663852886e22);c=1;while(1){r=B(d,20)+ba|0;p=z[r+8>>2];k=z[r>>2];i=z[r+4>>2];j=C(z[r+12>>2]+C(C(H*p)+C(C(I*k)+C(F*i))));k=C(C(p*D)+C(C(k*E)+C(da*i)));i=C(C(-j)/k);r=j>C(0);d:{if(k>C(1.0000000116860974e-7)){o=i>o?o:i;break d}if(km)){break d}v[h+8>>2]=d;m=i;break d}if(!r){break d}c=0;break a}c=!r&c;d=d+1|0;if((ca|0)!=(d|0)){continue}break}if(!c){break c}}v[h+48>>2]=0;v[h+8>>2]=-1;v[h+40>>2]=0;v[h+44>>2]=0;z[h+16>>2]=y;z[h+36>>2]=-q;z[h+32>>2]=-l;z[h+28>>2]=-n;z[h+24>>2]=t;z[h+20>>2]=G;c=3;break b}c=0;if(!(m>C(0))|(!(C(e+C(-9999999747378752e-21))>m)|!(m>1];if(d&1){G=z[b+16>>2];q=z[b+20>>2];i=z[a+16>>2];J=C(i+i);j=z[a+24>>2];n=C(J*j);s=z[a+20>>2];e=C(s+s);A=z[a+28>>2];l=C(e*A);L=C(n+l);Z=z[a+4>>2];_=C(L*Z);o=C(e*j);p=C(J*A);M=C(o-p);t=z[a+8>>2];$=C(M*t);k=C(C(1)-C(i*J));e=C(s*e);N=C(k-e);y=z[a+12>>2];aa=C(N*y);O=z[b+8>>2];H=C(H+C(D*m));I=C(I+C(E*m));i=C(C(1)-e);e=C(j+j);j=C(j*e);P=C(i-j);i=C(J*s);e=C(e*A);s=C(i+e);D=C(n-l);l=C(F+C(da*m));E=C(i-e);F=C(k-j);A=C(o+p);e=C(C(H*C(C(C(L*_)+C(M*$))+C(N*aa)))+C(C(I*C(C(C(P*_)+C(s*$))+C(D*aa)))+C(l*C(C(C(E*_)+C(F*$))+C(A*aa)))));n=C(e+e);o=z[b>>2];j=C(Z*P);i=C(s*t);e=C(D*y);e=C(C(H*C(C(C(L*j)+C(M*i))+C(N*e)))+C(C(I*C(C(C(P*j)+C(s*i))+C(D*e)))+C(l*C(C(C(E*j)+C(F*i))+C(A*e)))));p=C(e+e);k=z[b+4>>2];j=C(Z*E);i=C(F*t);e=C(A*y);e=C(C(H*C(C(C(L*j)+C(M*i))+C(N*e)))+C(C(I*C(C(C(P*j)+C(s*i))+C(D*e)))+C(l*C(C(C(E*j)+C(F*i))+C(A*e)))));j=C(e+e);i=C(C(O*n)+C(C(o*p)+C(k*j)));l=z[b+12>>2];e=C(C(l*l)+C(-.5));z[h+24>>2]=z[b+24>>2]+C(C(O*i)+C(C(n*e)+C(l*C(C(o*j)-C(p*k)))));z[h+20>>2]=q+C(C(k*i)+C(C(j*e)+C(l*C(C(O*p)-C(n*o)))));z[h+16>>2]=G+C(C(o*i)+C(C(p*e)+C(l*C(C(k*n)-C(j*O)))));c=1025}v[h+44>>2]=0;v[h+48>>2]=0;z[h+40>>2]=m;v[h+28>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0;if(!(d&2)){break b}a=B(v[h+8>>2],20)+ba|0;m=z[a+8>>2];i=z[a>>2];e=z[a+4>>2];k=C(C(S*m)+C(C(U*i)+C(Q*e)));z[h+36>>2]=k;j=C(C(T*m)+C(C(W*i)+C(R*e)));z[h+32>>2]=j;i=C(C(Y*m)+C(C(V*i)+C(X*e)));z[h+28>>2]=i;c=c|2;e=C(K(C(C(k*k)+C(C(i*i)+C(j*j)))));if(!(e>C(0))){break b}e=C(C(1)/e);z[h+36>>2]=k*e;z[h+32>>2]=j*e;z[h+28>>2]=i*e}u[h+12>>1]=c;c=1}xa=g+112|0;return c|0}function px(a,b,c){var d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=0,J=0,L=C(0),M=C(0),N=0,O=0,P=0,Q=0,R=0,S=C(0),T=C(0),U=C(0);if(c?1:w[a+93|0]){J=v[b+336>>2];if(J>>>0>=2){P=v[b+348>>2];Q=v[b+344>>2];R=v[b+332>>2];x=1;while(1){s=B(x,80)+Q|0;e=v[((x<<5)+R|0)+20>>2];Gw(s,e,c);r=w[e+269|0];if(c?1:r&2){j=v[b+260>>2];d=v[a+432>>2]+(x<<4)|0;f=z[e+36>>2];h=z[e+8>>2];m=z[e+32>>2];g=z[e+4>>2];l=z[e+40>>2];o=z[e+12>>2];p=z[e>>2];q=z[e+28>>2];i=C(C(f*h)+C(C(m*g)+C(C(l*o)+C(p*q))));n=i;u=C(i*i);i=C(C(p*m)+C(C(C(o*f)-C(l*h))-C(q*g)));k=C(C(g*f)+C(C(C(o*q)-C(l*p))-C(m*h)));h=C(C(h*q)+C(C(C(o*m)-C(l*g))-C(f*p)));f=C(C(1)/C(K(C(u+C(C(i*i)+C(C(k*k)+C(h*h)))))));z[d+12>>2]=n*f;z[d+8>>2]=i*f;z[d+4>>2]=h*f;z[d>>2]=k*f;d=j+B(x,76)|0;f=C(0);h=C(0);i=C(0);k=C(0);m=C(0);r=0;u=z[e+52>>2];E=C(-u);G=z[e+48>>2];L=C(-G);H=z[e+44>>2];M=C(-H);a:{b:{switch(w[e+270|0]){case 0:h=z[e+36>>2];f=z[s+20>>2];m=C(f+f);g=z[e+28>>2];f=z[s+12>>2];l=C(f+f);f=z[s+16>>2];o=C(f+f);p=z[e+32>>2];q=C(C(h*m)+C(C(g*l)+C(o*p)));f=z[e+40>>2];n=C(C(f*f)+C(-.5));u=C(C(h*q)+C(C(m*n)+C(f*C(C(g*o)-C(l*p)))));E=C(C(g*q)+C(C(l*n)+C(f*C(C(p*m)-C(o*h)))));f=C(C(p*q)+C(C(o*n)+C(f*C(C(h*l)-C(m*g)))));h=C(C(u*u)+C(C(E*E)+C(f*f)));if(h>C(0)){h=C(C(1)/C(K(h)));k=C(u*h);i=C(f*h);n=C(E*h)}else{n=C(0)}z[d+12>>2]=n;v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;v[d+72>>2]=1;z[d+20>>2]=k;z[d+16>>2]=i;break a;case 1:l=z[e+36>>2];g=z[s+8>>2];o=C(g+g);p=z[e+28>>2];g=z[s>>2];q=C(g+g);g=z[s+4>>2];i=C(g+g);k=z[e+32>>2];n=C(C(l*o)+C(C(p*q)+C(i*k)));g=z[e+40>>2];y=C(C(g*g)+C(-.5));A=C(C(l*n)+C(C(o*y)+C(g*C(C(p*i)-C(q*k)))));D=C(C(p*n)+C(C(q*y)+C(g*C(C(k*o)-C(i*l)))));g=C(C(k*n)+C(C(i*y)+C(g*C(C(l*q)-C(o*p)))));l=C(C(A*A)+C(C(D*D)+C(g*g)));if(l>C(0)){f=C(C(1)/C(K(l)));m=C(A*f);h=C(g*f);f=C(D*f)}z[d+8>>2]=m;z[d+4>>2]=h;z[d>>2]=f;v[d+72>>2]=1;z[d+20>>2]=C(f*L)+C(H*h);z[d+16>>2]=C(m*M)+C(u*f);z[d+12>>2]=C(h*E)+C(G*m);break a;case 2:I=w[s+76|0];v[d+72>>2]=I;if(!I){break a}m=z[e+40>>2];l=C(C(m*m)+C(-.5));o=z[e+32>>2];S=C(-o);p=z[e+36>>2];T=C(-p);q=z[e+28>>2];U=C(-q);while(1){g=C(0);f=C(0);h=C(0);N=B(r,24);j=N+s|0;i=z[j+8>>2];i=C(i+i);k=z[j>>2];k=C(k+k);n=z[j+4>>2];n=C(n+n);y=C(C(p*i)+C(C(q*k)+C(n*o)));A=C(C(p*y)+C(C(i*l)+C(m*C(C(q*n)+C(k*S)))));D=C(C(q*y)+C(C(k*l)+C(m*C(C(o*i)+C(n*T)))));i=C(C(o*y)+C(C(n*l)+C(m*C(C(p*k)+C(i*U)))));k=C(C(A*A)+C(C(D*D)+C(i*i)));if(k>C(0)){g=C(C(1)/C(K(k)));h=C(A*g);f=C(i*g);g=C(D*g)}j=d+N|0;z[j+12>>2]=C(f*E)+C(G*h);z[j+8>>2]=h;z[j+4>>2]=f;z[j>>2]=g;z[j+20>>2]=C(g*L)+C(H*f);z[j+16>>2]=C(h*M)+C(u*g);r=r+1|0;if((I|0)!=(r|0)){continue}break};break a;case 3:break b;default:break a}}v[d+72>>2]=0}r=w[e+269|0]&-3;t[e+269|0]=r}j=B(x,96)+P|0;if(r&8){if(w[e+258|0]){z[j>>2]=z[e+224>>2];d=1}else{d=0}if(w[e+259|0]){z[j+(d<<2)>>2]=z[e+228>>2];d=d+1|0}if(w[e+260|0]){z[j+(d<<2)>>2]=z[e+232>>2];d=d+1|0}if(w[e+261|0]){z[j+(d<<2)>>2]=z[e+236>>2];d=d+1|0}if(w[e+262|0]){z[j+(d<<2)>>2]=z[e+240>>2];d=d+1|0}if(w[e+263|0]){z[j+(d<<2)>>2]=z[e+244>>2]}r=r&247;t[e+269|0]=r}if(r&4){if(w[e+258|0]){z[j+12>>2]=z[e+200>>2];d=1}else{d=0}if(w[e+259|0]){z[(j+(d<<2)|0)+12>>2]=z[e+204>>2];d=d+1|0}if(w[e+260|0]){z[(j+(d<<2)|0)+12>>2]=z[e+208>>2];d=d+1|0}if(w[e+261|0]){z[(j+(d<<2)|0)+12>>2]=z[e+212>>2];d=d+1|0}if(w[e+262|0]){z[(j+(d<<2)|0)+12>>2]=z[e+216>>2];d=d+1|0}if(w[e+263|0]){z[(j+(d<<2)|0)+12>>2]=z[e+220>>2]}t[e+269|0]=r&251}d=w[e+270|0];v[s+72>>2]=F&255;t[e+268|0]=F;O=(d|0)==2|O;F=w[s+76|0]+F|0;x=x+1|0;if((J|0)!=(x|0)){continue}break}d=F&255}if(v[a+468>>2]!=(d|0)){Bw(a+112|0,d);v[a+468>>2]=d}t[a+93|0]=0;t[a+652|0]=O&1}}function IO(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=C(0),m=0,n=0,o=0,p=0,q=0;f=xa+-64|0;xa=f;i=v[a+28>>2];o=v[i+292>>2];if(o){while(1){a=m;m=a+v[v[i+288>>2]+(n<<2)>>2]|0;a:{if(a>>>0>=m>>>0){break a}while(1){e=v[v[i+276>>2]+(a<<2)>>2];if(z[e+28>>2]>C(1)){break a}b:{if(!w[e+68|0]){break b}d=v[e+52>>2];v[d+8>>2]=v[d+8>>2]|4;j=v[d+48>>2];g=j+32>>>5|0;c=v[i+312>>2];b=v[c+976>>2]&2147483647;h=w[d+43|0];c:{if(!(h&2)){d:{if(b>>>0>=g>>>0){b=v[c+972>>2];break d}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g<<2,24422,17999,438)|0;d=v[c+972>>2];e:{if(!d){break e}H9(b,d,v[c+976>>2]<<2);if(v[c+976>>2]<0){break e}d=v[c+972>>2];if(!d){break e}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,d)}d=v[c+976>>2];I9((d<<2)+b|0,0,g-d<<2);v[c+976>>2]=g;v[c+972>>2]=b;d=v[e+52>>2];h=w[d+43|0]}b=(j>>>3&536870908)+b|0;v[b>>2]=v[b>>2]|1<>2];Ba[v[v[b>>2]+36>>2]](b,d);b=v[i+320>>2];Ba[v[v[b>>2]+28>>2]](b,v[e+52>>2],1,0);p=p+1|0;d=v[e+52>>2];break c}f:{if(b>>>0>=g>>>0){b=v[c+972>>2];break f}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g<<2,24422,17999,438)|0;d=v[c+972>>2];g:{if(!d){break g}H9(b,d,v[c+976>>2]<<2);if(v[c+976>>2]<0){break g}d=v[c+972>>2];if(!d){break g}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,d)}d=v[c+976>>2];I9((d<<2)+b|0,0,g-d<<2);v[c+976>>2]=g;v[c+972>>2]=b;d=v[e+52>>2];h=w[d+43|0]}b=(j>>>3&536870908)+b|0;v[b>>2]=v[b>>2]|1<>1];h:{if(b&1){break h}if(!(b&256)){break b}if(v[v[d+16>>2]+92>>2]!=2139095039?b&32:0){break h}if(!(b&64)|v[v[d+20>>2]+92>>2]==2139095039){break b}}h=v[d+48>>2];j=h+32>>>5|0;c=v[i+312>>2];i:{if(j>>>0<=(v[c+964>>2]&2147483647)>>>0){g=v[c+960>>2];break i}b=v[37696];g=Ba[v[v[b+12>>2]+8>>2]](b+12|0,j<<2,24422,17999,438)|0;b=v[c+960>>2];j:{if(!b){break j}H9(g,b,v[c+964>>2]<<2);if(v[c+964>>2]<0){break j}b=v[c+960>>2];if(!b){break j}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+964>>2];I9((b<<2)+g|0,0,j-b<<2);v[c+964>>2]=j;v[c+960>>2]=g;d=v[e+52>>2];b=x[d+40>>1]}c=(h>>>3&536870908)+g|0;v[c>>2]=v[c>>2]|1<>2];z[c+544>>2]=z[e+36>>2];z[c+548>>2]=z[e+40>>2];z[c+552>>2]=z[e+44>>2];k=z[e+20>>2];l=z[e+16>>2];z[c+536>>2]=-z[e+24>>2];z[c+532>>2]=-k;z[c+528>>2]=-l;g=v[e+72>>2];v[c+540>>2]=0;v[c+580>>2]=g;z[c+588>>2]=z[e+88>>2];z[c+584>>2]=z[e+80>>2];k=z[e+84>>2];v[c+568>>2]=0;v[c+560>>2]=0;v[c+564>>2]=0;z[c+572>>2]=k;v[c+556>>2]=2139095039;u[f+56>>1]=x[e+76>>1];u[f+58>>1]=x[e+78>>1];d=v[d+32>>2];k:{if(Oy(c+528|0,1,c,f+41|0,f+48|0,f+44|0,f+42|0,f+52|0,4,v[c+7188>>2],(b&128)>>>7|0,1,f+56|0,f+40|0,16,0,0,0,0,0,0,(g|0)!=-1)){b=x[f+42>>1];c=v[f+48>>2];u[c+6>>1]=0;u[c+4>>1]=b;b=v[e+52>>2];v[b+32>>2]=c;l:{if(!d){v[c>>2]=0;break l}v[c>>2]=d;u[d+6>>1]=1}z[v[f+52>>2]>>2]=z[e+96>>2];break k}if(!d){b=v[e+52>>2];v[b+32>>2]=0;break k}u[d+6>>1]=1;b=v[e+52>>2]}if(w[b+40|0]&24){break b}k=z[e+96>>2];if(k==C(0)){break b}v[f+28>>2]=0;z[f+12>>2]=k;k=C(34028234663852886e22);l=C(34028234663852886e22);b=v[e>>2];if(b){l=z[v[b+36>>2]+92>>2]}b=v[e+4>>2];if(b){k=z[v[b+36>>2]+92>>2]}z[f+16>>2]=k>l?l:k;b=v[v[e+8>>2]+100>>2];v[f+20>>2]=b;e=v[v[e+12>>2]+100>>2];v[f+24>>2]=e;if(b>>>0>e>>>0){v[f+24>>2]=b;v[f+20>>2]=e}b=v[i+316>>2];e=v[b+8>>2];if(e>>>0>=(v[b+12>>2]&2147483647)>>>0){Xz(b,f+8|0);break b}c=v[f+12>>2];e=v[b+4>>2]+(e<<5)|0;v[e>>2]=v[f+8>>2];v[e+4>>2]=c;c=v[f+36>>2];v[e+24>>2]=v[f+32>>2];v[e+28>>2]=c;c=v[f+28>>2];v[e+16>>2]=v[f+24>>2];v[e+20>>2]=c;c=v[f+20>>2];v[e+8>>2]=v[f+16>>2];v[e+12>>2]=c;v[b+8>>2]=v[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=v[i+312>>2];v[a+1e3>>2]=v[a+1e3>>2]+p;v[a+1004>>2]=v[a+1004>>2]+q;xa=f- -64|0}function tS(a,b,c,d){var e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=C(0),s=0,t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0);k=xa-16|0;xa=k;u=z[a+44>>2];a:{if(u==C(0)){break a}l=z[b+12>>2];w=z[b>>2];i=C(l-w);D=z[b+28>>2];x=z[b+4>>2];j=C(D-x);E=z[b+24>>2];f=C(E-w);m=z[b+16>>2];g=C(m-x);n=C(C(i*j)-C(f*g));A=g;F=z[b+32>>2];g=z[b+8>>2];r=C(F-g);y=z[b+20>>2];t=C(y-g);j=C(C(A*r)-C(j*t));i=C(C(t*f)-C(r*i));f=C(K(C(C(n*n)+C(C(j*j)+C(i*i)))));if(f>C(0)){f=C(C(1)/f);n=C(n*f);i=C(i*f);j=C(j*f)}A=n;n=z[a+28>>2];t=z[a+20>>2];f=C(j*t);j=z[a+24>>2];i=C(C(A*n)+C(f+C(i*j)));if(!(i>=C(0))|!(i>2])){break a}f=C(u*n);n=C(g+f);r=C(u*j);j=C(x+r);t=C(u*t);i=C(w+t);a=v[c+8>>2]&2147483647;p=v[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>>0?o:h;e=p;if(h>>>0<=a>>>0){break b}uS(c,h);a=v[c+8>>2]&2147483647;e=v[c+4>>2]}A=C(f+y);G=C(r+m);H=C(l+t);s=p+1|0;v[c+4>>2]=s;h=v[c>>2];e=h+B(e,36)|0;z[e+24>>2]=i;z[e+12>>2]=l;z[e+8>>2]=g;z[e+4>>2]=x;z[e>>2]=w;z[e+32>>2]=n;z[e+28>>2]=j;z[e+20>>2]=y;z[e+16>>2]=m;g=z[b+20>>2];l=z[b+16>>2];m=z[b+12>>2];q=p+3|0;c:{if(q>>>0<=a>>>0){break c}e=a?a<<1:2;e=e>>>0>>0?q:e;if(e>>>0<=a>>>0){break c}uS(c,e);a=v[c+8>>2]&2147483647;h=v[c>>2];s=v[c+4>>2]}u=C(f+F);w=C(r+D);x=C(E+t);v[c+4>>2]=o;e=B(s,36)+h|0;z[e+24>>2]=H;z[e+12>>2]=m;z[e+8>>2]=n;z[e+4>>2]=j;z[e>>2]=i;z[e+32>>2]=A;z[e+28>>2]=G;z[e+20>>2]=g;z[e+16>>2]=l;g=z[b+20>>2];l=z[b+16>>2];m=z[b+12>>2];s=p+4|0;d:{if(s>>>0<=a>>>0){break d}e=a?a<<1:2;e=e>>>0>>0?s:e;if(e>>>0<=a>>>0){break d}uS(c,e);a=v[c+8>>2]&2147483647;h=v[c>>2];o=v[c+4>>2]}v[c+4>>2]=q;e=B(o,36)+h|0;z[e+24>>2]=x;z[e+12>>2]=m;z[e+8>>2]=A;z[e+4>>2]=G;z[e>>2]=H;z[e+32>>2]=u;z[e+28>>2]=w;z[e+20>>2]=g;z[e+16>>2]=l;g=z[b+32>>2];l=z[b+28>>2];m=z[b+24>>2];y=z[b+20>>2];f=z[b+16>>2];r=z[b+12>>2];o=p+5|0;e:{if(o>>>0<=a>>>0){break e}e=a?a<<1:2;e=e>>>0>>0?o:e;if(e>>>0<=a>>>0){break e}uS(c,e);a=v[c+8>>2]&2147483647;h=v[c>>2];q=v[c+4>>2]}v[c+4>>2]=s;e=B(q,36)+h|0;z[e+24>>2]=m;z[e+12>>2]=r;z[e+8>>2]=u;z[e+4>>2]=w;z[e>>2]=x;z[e+32>>2]=g;z[e+28>>2]=l;z[e+20>>2]=y;z[e+16>>2]=f;g=z[b+8>>2];l=z[b+4>>2];m=z[b>>2];y=z[b+32>>2];f=z[b+28>>2];r=z[b+24>>2];q=p+6|0;f:{if(q>>>0<=a>>>0){break f}e=a?a<<1:2;e=e>>>0>>0?q:e;if(e>>>0<=a>>>0){break f}uS(c,e);a=v[c+8>>2]&2147483647;h=v[c>>2];s=v[c+4>>2]}v[c+4>>2]=o;e=B(s,36)+h|0;z[e+24>>2]=m;z[e+12>>2]=r;z[e+8>>2]=n;z[e+4>>2]=j;z[e>>2]=i;z[e+32>>2]=g;z[e+28>>2]=l;z[e+20>>2]=y;z[e+16>>2]=f;g=z[b+32>>2];l=z[b+28>>2];m=z[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>>0?b:a;if(e>>>0>=a>>>0){break g}uS(c,a);h=v[c>>2];o=v[c+4>>2]}v[c+4>>2]=q;a=B(o,36)+h|0;z[a+24>>2]=m;z[a+12>>2]=x;z[a+8>>2]=n;z[a+4>>2]=j;z[a>>2]=i;z[a+32>>2]=g;z[a+28>>2]=l;z[a+20>>2]=u;z[a+16>>2]=w;v[k+12>>2]=-1;a=v[d+4>>2];h:{if(a>>>0>=(v[d+8>>2]&2147483647)>>>0){on(d,k+12|0);b=v[d+4>>2];break h}v[v[d>>2]+(a<<2)>>2]=-1;b=v[d+4>>2]+1|0;v[d+4>>2]=b}i:{if((v[d+8>>2]&2147483647)>>>0<=b>>>0){on(d,k+12|0);b=v[d+4>>2];break i}v[v[d>>2]+(b<<2)>>2]=v[k+12>>2];b=v[d+4>>2]+1|0;v[d+4>>2]=b}j:{if((v[d+8>>2]&2147483647)>>>0<=b>>>0){on(d,k+12|0);b=v[d+4>>2];break j}v[v[d>>2]+(b<<2)>>2]=v[k+12>>2];b=v[d+4>>2]+1|0;v[d+4>>2]=b}k:{if((v[d+8>>2]&2147483647)>>>0<=b>>>0){on(d,k+12|0);b=v[d+4>>2];break k}v[v[d>>2]+(b<<2)>>2]=v[k+12>>2];b=v[d+4>>2]+1|0;v[d+4>>2]=b}l:{if((v[d+8>>2]&2147483647)>>>0<=b>>>0){on(d,k+12|0);b=v[d+4>>2];break l}v[v[d>>2]+(b<<2)>>2]=v[k+12>>2];b=v[d+4>>2]+1|0;v[d+4>>2]=b}m:{if((v[d+8>>2]&2147483647)>>>0<=b>>>0){on(d,k+12|0);break m}v[v[d>>2]+(b<<2)>>2]=v[k+12>>2];v[d+4>>2]=v[d+4>>2]+1}p=6}xa=k+16|0;return p}function fB(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=0,g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0,da=0,ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=0,Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0);f=v[a+96>>2];q=z[f+24>>2];r=z[f+20>>2];g=v[a+64>>2];s=z[g+24>>2];t=z[g+20>>2];h=v[a+32>>2];u=z[h+24>>2];y=z[h+20>>2];i=v[a>>2];A=z[i+24>>2];D=z[i+20>>2];Ea=z[f+28>>2];E=z[f+16>>2];Fa=z[f+12>>2];F=z[f+8>>2];G=z[f+4>>2];H=z[f>>2];Ga=z[g+28>>2];I=z[g+16>>2];Ha=z[g+12>>2];J=z[g+8>>2];K=z[g+4>>2];L=z[g>>2];Ia=z[h+28>>2];M=z[h+16>>2];Ja=z[h+12>>2];N=z[h+8>>2];O=z[h+4>>2];P=z[h>>2];Ka=z[i+28>>2];Q=z[i+16>>2];La=z[i+12>>2];R=z[i+8>>2];S=z[i+4>>2];T=z[i>>2];c=x[a+22>>1];if(c){b=v[a+24>>2];Ma=b+(c<<4)|0;while(1){a=b;ca=a+96|0;da=ca+(w[a+1|0]<<4)|0;Z=w[a+2|0];b=da+B(Z,144)|0;if(Z){Na=z[a+76>>2];Oa=z[a+72>>2];Pa=z[a+68>>2];_=z[a+44>>2];$=z[a+40>>2];aa=z[a+36>>2];Qa=z[a+28>>2];Ra=z[a+24>>2];Sa=z[a+20>>2];Ta=z[a+64>>2];ba=z[a+32>>2];Ua=z[a+16>>2];o=0;while(1){U=(o>>>v[a+12>>2]<<4)+ca|0;V=z[U+4>>2];c=B(o,144)+da|0;l=z[c+100>>2];Va=z[c+132>>2];d=z[c+116>>2];ea=z[c+36>>2];fa=z[c+20>>2];ga=z[c+4>>2];ha=z[c+84>>2];ia=z[c+52>>2];ja=z[c+68>>2];n=z[U+8>>2];m=z[c+104>>2];W=z[c+136>>2];e=z[c+120>>2];ka=z[c+40>>2];la=z[c+24>>2];ma=z[c+8>>2];na=z[c+88>>2];oa=z[c+56>>2];pa=z[c+72>>2];X=z[U+12>>2];qa=z[c+108>>2];Y=z[c+140>>2];j=z[c+124>>2];ra=z[c+44>>2];sa=z[c+28>>2];ta=z[c+12>>2];ua=z[c+92>>2];va=z[c+60>>2];wa=z[c+76>>2];xa=z[c>>2];ya=z[c+16>>2];za=z[c+32>>2];Aa=z[c+48>>2];Ba=z[c+64>>2];Ca=z[c+80>>2];k=z[c+112>>2];Da=z[c+96>>2];p=C(C(C(C(C(C(T*xa)+C(S*ya))+C(R*za))+C(C(C(Q*Aa)+C(D*Ba))+C(A*Ca)))*k)+C(Da-C(k*z[c+128>>2])));k=C(Ua*z[U>>2]);p=k>p?p:k;k=C(-k);k=k>2]=k;Y=C(C(j*C(C(C(C(H*ta)+C(G*sa))+C(F*ra))+C(C(C(E*va)+C(r*wa))+C(q*ua))))+C(qa-C(j*Y)));j=C(Qa*X);X=j>Y?Y:j;j=C(-j);j=j>2]=j;W=C(C(e*C(C(C(C(L*ma)+C(K*la))+C(J*ka))+C(C(C(I*oa)+C(t*pa))+C(s*na))))+C(m-C(e*W)));e=C(Ra*n);n=e>W?W:e;e=C(-e);n=e>2]=n;e=C(C(d*C(C(C(C(P*ga)+C(O*fa))+C(N*ea))+C(C(C(M*ia)+C(y*ja))+C(u*ha))))+C(l-C(d*Va)));d=C(Sa*V);e=d>e?e:d;d=C(-d);V=d>2]=V;d=C(k-Da);R=C(R+C(C(ba*za)*d));S=C(S+C(C(ba*ya)*d));T=C(T+C(C(ba*xa)*d));e=C(Ta*d);A=C(A+C(Ca*e));d=C(j-qa);F=C(F+C(C(_*ra)*d));m=C(n-m);J=C(J+C(C($*ka)*m));l=C(V-l);N=C(N+C(C(aa*ea)*l));D=C(D+C(Ba*e));G=C(G+C(C(_*sa)*d));K=C(K+C(C($*la)*m));O=C(O+C(C(aa*fa)*l));Q=C(Q+C(Aa*e));H=C(H+C(C(_*ta)*d));L=C(L+C(C($*ma)*m));P=C(P+C(C(aa*ga)*l));d=C(Na*d);q=C(q+C(ua*d));m=C(Oa*m);s=C(s+C(na*m));l=C(Pa*l);u=C(u+C(ha*l));r=C(r+C(wa*d));t=C(t+C(pa*m));y=C(y+C(ja*l));E=C(E+C(va*d));I=C(I+C(oa*m));M=C(M+C(ia*l));o=o+1|0;if((Z|0)!=(o|0)){continue}break}}if(b>>>0>>0){continue}break}}z[i+12>>2]=La;z[i+8>>2]=R;z[i+4>>2]=S;z[i>>2]=T;z[h+12>>2]=Ja;z[h+8>>2]=N;z[h+4>>2]=O;z[h>>2]=P;z[g+12>>2]=Ha;z[g+8>>2]=J;z[g+4>>2]=K;z[g>>2]=L;z[f+12>>2]=Fa;z[f+8>>2]=F;z[f+4>>2]=G;z[f>>2]=H;z[i+28>>2]=Ka;z[i+24>>2]=A;z[i+20>>2]=D;z[i+16>>2]=Q;z[h+28>>2]=Ia;z[h+24>>2]=u;z[h+20>>2]=y;z[h+16>>2]=M;z[g+28>>2]=Ga;z[g+24>>2]=s;z[g+20>>2]=t;z[g+16>>2]=I;z[f+28>>2]=Ea;z[f+24>>2]=q;z[f+20>>2]=r;z[f+16>>2]=E}function Gv(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=C(0),l=0,m=C(0),n=C(0),o=0,p=0,q=0,r=C(0),s=C(0),x=C(0),y=C(0),A=0,E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=C(0),O=0,P=C(0);i=xa-560|0;xa=i;M=v[f>>2];q=v[a+40>>2];k=z[c+24>>2];f=v[c>>2];j=v[c+4>>2];l=v[c+8>>2];A=v[c+12>>2];o=v[c+20>>2];E=v[c+16>>2];v[i+556>>2]=0;z[i+552>>2]=k;v[i+544>>2]=E;v[i+548>>2]=o;v[i+536>>2]=l;v[i+540>>2]=A;v[i+528>>2]=f;v[i+532>>2]=j;f=0;a:{if(z[b+4>>2]!=C(1)){break a}f=0;if(z[b+8>>2]!=C(1)){break a}f=z[b+12>>2]==C(1)}v[i+512>>2]=0;v[i+516>>2]=1065353216;v[i+504>>2]=0;v[i+508>>2]=0;v[i+496>>2]=0;v[i+500>>2]=1065353216;v[i+488>>2]=0;v[i+492>>2]=0;v[i+480>>2]=1065353216;v[i+484>>2]=1065353216;v[i+464>>2]=1065353216;v[i+468>>2]=0;t[i+520|0]=0;v[i+472>>2]=0;v[i+476>>2]=0;v[i+456>>2]=0;v[i+460>>2]=0;v[i+448>>2]=1065353216;v[i+452>>2]=0;if(!f){IX(i+448|0,b+4|0,b+16|0)}v[i+432>>2]=0;v[i+436>>2]=1065353216;v[i+424>>2]=0;v[i+428>>2]=0;v[i+416>>2]=0;v[i+420>>2]=1065353216;v[i+408>>2]=0;v[i+412>>2]=0;v[i+400>>2]=1065353216;v[i+404>>2]=1065353216;v[i+384>>2]=1065353216;v[i+388>>2]=0;t[i+440|0]=0;v[i+392>>2]=0;v[i+396>>2]=0;v[i+376>>2]=0;v[i+380>>2]=0;v[i+368>>2]=1065353216;v[i+372>>2]=0;j=i+368|0;A=z[a+4>>2]==C(1)&z[a+8>>2]==C(1)&z[a+12>>2]==C(1);if(!A){IX(j,a+4|0,a+16|0)}k=z[j+28>>2];m=z[j+16>>2];n=z[j+24>>2];r=z[j>>2];I=z[j+12>>2];J=z[j+4>>2];l=v[a+40>>2];F=z[l>>2];s=z[j+8>>2];G=z[l+4>>2];x=z[j+20>>2];H=z[l+8>>2];y=z[j+32>>2];N=C(C(C(F*s)+C(G*x))+C(H*y));K=s;s=z[l+12>>2];L=x;x=z[l+16>>2];P=y;y=z[l+20>>2];K=C(C(C(D(C(K*s)))+C(D(C(L*x))))+C(D(C(P*y))));z[i+364>>2]=N+K;L=C(C(C(F*J)+C(G*m))+C(H*k));k=C(C(C(D(C(J*s)))+C(D(C(m*x))))+C(D(C(k*y))));z[i+360>>2]=L+k;m=C(C(C(F*r)+C(G*I))+C(H*n));n=C(C(C(D(C(r*s)))+C(D(C(I*x))))+C(D(C(n*y))));z[i+356>>2]=m+n;z[i+352>>2]=N-K;z[i+348>>2]=L-k;z[i+344>>2]=m-n;r=z[j+16>>2];I=z[j+28>>2];J=z[j+24>>2];F=z[j>>2];G=z[j+12>>2];H=z[j+4>>2];k=z[l+24>>2];m=z[l+28>>2];n=z[l+32>>2];z[i+280>>2]=C(C(k*z[j+8>>2])+C(m*z[j+20>>2]))+C(n*z[j+32>>2]);z[i+276>>2]=C(C(k*H)+C(m*r))+C(n*I);z[i+272>>2]=C(C(k*F)+C(m*G))+C(n*J);o=w[l+38|0];v[i+284>>2]=o;p=w[l+39|0];v[i+288>>2]=p;j=u[l+36>>1];E=j&32767;v[i+292>>2]=E;O=v[l+40>>2];v[i+296>>2]=O;p=B(p,20)+O|0;v[i+300>>2]=p;p=p+B(o,12)|0;v[i+308>>2]=p;o=B(o,3);v[i+312>>2]=(j|0)>=0?0:o+(p+(j<<1&65534)|0)|0;v[i+304>>2]=(o+(p+(E<<1)|0)|0)+(E<<2&j>>31);v[i+332>>2]=v[l+44>>2];j=v[l+52>>2];v[i+316>>2]=v[l+48>>2];v[i+320>>2]=j;j=v[l+60>>2];v[i+324>>2]=v[l+56>>2];v[i+328>>2]=j;j=v[a+16>>2];l=v[a+20>>2];o=v[a+28>>2];v[i+264>>2]=v[a+24>>2];v[i+268>>2]=o;v[i+256>>2]=j;v[i+260>>2]=l;k=z[a+8>>2];m=z[a+12>>2];n=z[a+4>>2];v[i+252>>2]=0;z[i+248>>2]=m;z[i+244>>2]=k;z[i+240>>2]=n;r=C(z[e+8>>2]*C(.05000000074505806));n=C(n*z[q+52>>2]);k=C(k*z[q+56>>2]);k=k>=n?n:k;m=C(m*z[q+60>>2]);k=k<=m?k:m;m=C(k*C(.25));z[i+224>>2]=m>r?r:m;t[i+96|0]=0;v[i+88>>2]=0;v[i+92>>2]=0;v[i+80>>2]=0;v[i+84>>2]=0;v[i+72>>2]=0;v[i+76>>2]=0;v[i+64>>2]=0;v[i+68>>2]=0;v[i+208>>2]=q;v[i+216>>2]=v[q+40>>2]+B(w[q+39|0],20);a=w[q+38|0];z[i+88>>2]=k*C(.02500000037252903);z[i+80>>2]=k*C(.10000000149011612);z[i+84>>2]=k*C(.05000000074505806);t[i+220|0]=a;a=i+112|0;j=i+160|0;FV(i+240|0,i+256|0,a,j,i- -64|0,A);v[i+212>>2]=v[q+44>>2];b:{if(A){t[i+44|0]=1;v[i+40>>2]=j;v[i+36>>2]=a;v[i>>2]=141020;v[i+32>>2]=i+528;v[i+48>>2]=i- -64;a=S1(i+272|0,i,i+224|0,i+344|0,b,c,d,z[e>>2],g,i+368|0,i+448|0,1,f,M,h);break b}t[i+44|0]=0;v[i+40>>2]=j;v[i+36>>2]=a;v[i>>2]=141068;v[i+32>>2]=i+528;v[i+48>>2]=i- -64;a=S1(i+272|0,i,i+224|0,i+344|0,b,c,d,z[e>>2],g,i+368|0,i+448|0,0,f,M,h)}xa=i+560|0;return a|0}function F9(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,k=0,m=0,n=0,o=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0,E=0,F=0,G=0,I=0;s=xa-16|0;xa=s;x=(p(a),j(2));e=x&2147483647;a:{if(e>>>0<=1305022426){k=+a;d=k*.6366197723675814+6755399441055744+-6755399441055744;w=k+d*-1.5707963109016418+d*-1.5893254773528196e-8;A[b>>3]=w;c=w<-.7853981852531433;if(D(d)<2147483648){e=~~d}else{e=-2147483648}if(c){d=d+-1;A[b>>3]=k+d*-1.5707963109016418+d*-1.5893254773528196e-8;e=e-1|0;break a}if(!(w>.7853981852531433)){break a}d=d+1;A[b>>3]=k+d*-1.5707963109016418+d*-1.5893254773528196e-8;e=e+1|0;break a}if(e>>>0>=2139095040){A[b>>3]=C(a-a);e=0;break a}c=e;e=(e>>>23|0)-150|0;A[s+8>>3]=(l(2,c-(e<<23)|0),q());y=s+8|0;g=xa-560|0;xa=g;c=(e-3|0)/24|0;t=(c|0)>0?c:0;m=e+B(t,-24)|0;n=v[26576];if((n|0)>=0){e=n+1|0;c=t;while(1){A[(g+320|0)+(f<<3)>>3]=(c|0)<0?0:+v[(c<<2)+106320>>2];c=c+1|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}o=m-24|0;e=0;f=(n|0)>0?n:0;while(1){c=0;d=0;while(1){d=A[(c<<3)+y>>3]*A[(g+320|0)+(e-c<<3)>>3]+d;c=c+1|0;if((c|0)!=1){continue}break}A[(e<<3)+g>>3]=d;c=(e|0)==(f|0);e=e+1|0;if(!c){continue}break}G=47-m|0;z=48-m|0;I=m-25|0;e=n;b:{while(1){d=A[(e<<3)+g>>3];c=0;f=e;i=(e|0)<=0;if(!i){while(1){r=(g+480|0)+(c<<2)|0;k=d*5.960464477539063e-8;c:{if(D(k)<2147483648){h=~~k;break c}h=-2147483648}k=+(h|0);d=k*-16777216+d;d:{if(D(d)<2147483648){h=~~d;break d}h=-2147483648}v[r>>2]=h;f=f-1|0;d=A[(f<<3)+g>>3]+k;c=c+1|0;if((e|0)!=(c|0)){continue}break}}d=P9(d,o);d=d+H(d*.125)*-8;e:{if(D(d)<2147483648){r=~~d;break e}r=-2147483648}d=d-+(r|0);f:{g:{h:{E=(o|0)<=0;i:{if(!E){f=(e<<2)+g|0;h=v[f+476>>2];c=h>>z;u=f;f=h-(c<>2]=f;r=c+r|0;h=f>>G;break i}if(o){break h}h=v[((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(!i){while(1){u=(g+480|0)+(c<<2)|0;F=v[u>>2];i=16777215;j:{k:{if(f){break k}i=16777216;if(F){break k}f=0;break j}v[u>>2]=i-F;f=1}c=c+1|0;if((e|0)!=(c|0)){continue}break}}l:{if(E){break l}c=8388607;m:{switch(I|0){case 1:c=4194303;break;case 0:break m;default:break l}}i=(e<<2)+g|0;v[i+476>>2]=v[i+476>>2]&c}r=r+1|0;if((h|0)!=2){break f}d=1-d;h=2;if(!f){break f}d=d-P9(1,o)}if(d==0){f=0;n:{c=e;if((n|0)>=(e|0)){break n}while(1){c=c-1|0;f=v[(g+480|0)+(c<<2)>>2]|f;if((c|0)>(n|0)){continue}break}if(!f){break n}m=o;while(1){m=m-24|0;e=e-1|0;if(!v[(g+480|0)+(e<<2)>>2]){continue}break}break b}c=1;while(1){f=c;c=c+1|0;if(!v[(g+480|0)+(n-f<<2)>>2]){continue}break}f=e+f|0;while(1){e=e+1|0;A[(g+320|0)+(e<<3)>>3]=v[(e+t<<2)+106320>>2];c=0;d=0;while(1){d=A[(c<<3)+y>>3]*A[(g+320|0)+(e-c<<3)>>3]+d;c=c+1|0;if((c|0)!=1){continue}break}A[(e<<3)+g>>3]=d;if((e|0)<(f|0)){continue}break}e=f;continue}break}d=P9(d,24-m|0);o:{if(d>=16777216){o=(g+480|0)+(e<<2)|0;k=d*5.960464477539063e-8;p:{if(D(k)<2147483648){c=~~k;break p}c=-2147483648}d=+(c|0)*-16777216+d;q:{if(D(d)<2147483648){f=~~d;break q}f=-2147483648}v[o>>2]=f;e=e+1|0;break o}if(D(d)<2147483648){c=~~d}else{c=-2147483648}m=o}v[(g+480|0)+(e<<2)>>2]=c}d=P9(1,m);r:{if((e|0)<0){break r}c=e;while(1){f=c;A[(c<<3)+g>>3]=d*+v[(g+480|0)+(c<<2)>>2];c=c-1|0;d=d*5.960464477539063e-8;if(f){continue}break}i=0;if((e|0)<0){break r}m=(n|0)>0?n:0;f=e;while(1){o=m>>>0>>0?m:i;n=e-f|0;c=0;d=0;while(1){d=A[(c<<3)+109088>>3]*A[(c+f<<3)+g>>3]+d;t=(c|0)!=(o|0);c=c+1|0;if(t){continue}break}A[(g+160|0)+(n<<3)>>3]=d;f=f-1|0;c=(e|0)!=(i|0);i=i+1|0;if(c){continue}break}}d=0;if((e|0)>=0){while(1){c=e;e=e-1|0;d=d+A[(g+160|0)+(c<<3)>>3];if(c){continue}break}}A[s>>3]=h?-d:d;xa=g+560|0;e=r&7;d=A[s>>3];if((x|0)<0){A[b>>3]=-d;e=0-e|0;break a}A[b>>3]=d}xa=s+16|0;return e}function hD(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0);p=xa-1056|0;xa=p;i=z[e+8>>2];q=C(i+i);F=q>C(0);G=C(-q);i=z[e+4>>2];r=C(i+i);J=r>C(0);H=C(-r);i=z[e>>2];s=C(i+i);e=s>C(0);I=C(-s);i=z[d+8>>2];y=C(i+i);i=z[d+4>>2];A=C(i+i);i=z[d>>2];D=C(i+i);i=z[f>>2];a:{if(i>=C(34028234663852886e22)){u=r==C(0)?A:r>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);w=s==C(0)?D:s>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);i=y;if(q==C(0)){break a}i=q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}u=C(A+C(r*i));w=C(D+C(s*i));i=C(y+C(q*i))}G=F?q:G;H=J?r:H;I=e?s:I;t[p+1040|0]=1;v[p+1048>>2]=256;v[p+1052>>2]=256;v[p+1044>>2]=p+16;v[p+16>>2]=v[c+588>>2];L=iu?A:u;N=D>w?D:w;i=i>y?y:i;u=A>2]+(c<<2)>>2];h=z[e+16>>2];m=z[e>>2];j=C(h-m);m=C(h+m);d:{if(!(C(j+m)>=w)|!(C(m-j)<=N)){break d}k=z[e+20>>2];l=z[e+4>>2];h=C(k-l);k=C(k+l);l=C(A-k);n=C(D-m);m=C(C(s*l)-C(r*n));if(!(C(C(H*j)+C(I*h))>=(m>C(0)?m:C(-m)))|!(C(h+k)>=u)|!(C(k-h)<=M)){break d}o=C(G*h);m=z[e+24>>2];k=z[e+8>>2];h=C(m-k);m=C(m+k);x=C(y-m);k=C(C(r*x)-C(q*l));if(!(C(o+C(H*h))>=(k>C(0)?k:C(-k)))|!(C(h+m)>=i)|!(C(m-h)<=L)){break d}h=C(C(G*j)+C(I*h));j=C(C(q*n)-C(s*x));if(!(h>=(j>C(0)?j:C(-j)))){break d}m=z[f>>2];z[p+12>>2]=m;if(v[e+40>>2]){while(1){d=v[e+36>>2];k=z[d- -64>>2];l=z[d+48>>2];j=C(k-l);m=z[d+68>>2];n=z[d+52>>2];h=C(m-n);m=C(m+n);n=C(A-m);k=C(k+l);x=C(D-k);l=C(C(s*n)-C(r*x));e=C(k-j)<=N&C(j+k)>=w&C(C(H*j)+C(I*h))>=(l>C(0)?l:C(-l))&C(h+m)>=u&C(m-h)<=M;E=C(G*h);l=z[d+72>>2];o=z[d+56>>2];h=C(l-o);l=C(l+o);o=C(y-l);n=C(C(r*o)-C(q*n));K=C(C(G*j)+C(I*h));j=C(C(q*x)-C(s*o));e=e&C(E+C(H*h))>=(n>C(0)?n:C(-n))&C(h+l)>=i&C(l-h)<=L&K>=(j>C(0)?j:C(-j));x=z[d+16>>2];o=z[d>>2];j=C(x-o);n=z[d+20>>2];E=z[d+4>>2];h=C(n-E);n=C(n+E);E=C(A-n);x=C(x+o);O=C(D-x);o=C(C(s*E)-C(r*O));F=C(x-j)<=N&C(j+x)>=w&C(C(H*j)+C(I*h))>=(o>C(0)?o:C(-o))&C(h+n)>=u&C(n-h)<=M;Q=C(G*h);o=z[d+24>>2];K=z[d+8>>2];h=C(o-K);o=C(o+K);K=C(y-o);E=C(C(r*K)-C(q*E));R=C(C(G*j)+C(I*h));j=C(C(q*O)-C(s*K));F=F&C(Q+C(H*h))>=(E>C(0)?E:C(-E))&C(h+o)>=i&C(o-h)<=L&R>=(j>C(0)?j:C(-j));e:{if(!(!F|!e)){e=C(C(C(l-o)*q)+C(C(C(k-x)*s)+C(r*C(m-n))))>C(0);v[v[p+1044>>2]+(c<<2)>>2]=d+B(e,48);e=d+B(!e,48)|0;c=c+1|0;if((c|0)!=(v[p+1052>>2]&2147483647)){break e}fD(p+16|0,c<<1);break e}if(!(e|F)){break d}e=F?d:d+48|0}if(v[e+40>>2]){continue}break}m=z[f>>2]}d=v[e+36>>2];F=v[d>>2];if(!F){break d}e=d+4|0;d=F;while(1){P=v[e>>2];f:{if(F>>>0>=2){J=B(P,24)+b|0;h=z[J+12>>2];k=z[J>>2];j=C(h-k);k=C(k+h);if(!(C(j+k)>=w)|!(C(k-j)<=N)){break f}l=z[J+16>>2];n=z[J+4>>2];h=C(l-n);l=C(n+l);n=C(A-l);x=C(D-k);k=C(C(s*n)-C(r*x));if(!(C(C(H*j)+C(I*h))>=(k>C(0)?k:C(-k)))|!(C(h+l)>=u)|!(C(l-h)<=M)){break f}E=C(G*h);k=z[J+20>>2];l=z[J+8>>2];h=C(k-l);k=C(l+k);o=C(y-k);l=C(C(r*o)-C(q*n));if(!(C(E+C(H*h))>=(l>C(0)?l:C(-l)))|!(C(h+k)>=i)|!(C(k-h)<=L)){break f}h=C(C(G*j)+C(I*h));j=C(C(q*x)-C(s*o));if(!(h>=(j>C(0)?j:C(-j)))){break f}}if(!(Ba[v[v[g>>2]>>2]](g,p+12|0,(P<<3)+a|0)|0)){break c}j=z[p+12>>2];if(!(j>2]=j;i=C(y+C(q*j));L=iu?A:u;w=C(D+C(s*j));N=D>w?D:w;i=i>y?y:i;u=A>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[p+1044>>2];if((b|0)==(p+16|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=p+1056|0;return a}function WW(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;var i=C(0),j=C(0),k=C(0),m=C(0),n=C(0),o=C(0),p=C(0),r=0,s=C(0),t=0,w=C(0),y=0,A=0,B=0,D=0,E=0,F=C(0),G=C(0),H=0;g=xa+-64|0;xa=g;j=z[b+8>>2];i=C(z[c+8>>2]-z[b+24>>2]);m=C(i+i);i=z[b>>2];k=C(z[c>>2]-z[b+16>>2]);n=C(k+k);k=C(z[c+4>>2]-z[b+20>>2]);p=C(k+k);k=z[b+4>>2];w=C(C(j*m)+C(C(i*n)+C(p*k)));o=z[b+12>>2];s=C(C(o*o)+C(-.5));z[g+56>>2]=C(j*w)+C(C(m*s)-C(o*C(C(i*p)-C(n*k))));z[g+52>>2]=C(k*w)+C(C(p*s)-C(o*C(C(j*n)-C(m*i))));z[g+48>>2]=C(i*w)+C(C(n*s)-C(o*C(C(k*m)-C(p*j))));m=z[d+8>>2];m=C(m+m);n=z[d>>2];n=C(n+n);p=z[d+4>>2];p=C(p+p);w=C(C(j*m)+C(C(i*n)+C(k*p)));z[g+40>>2]=C(j*w)+C(C(m*s)-C(o*C(C(i*p)-C(n*k))));z[g+36>>2]=C(k*w)+C(C(p*s)-C(o*C(C(j*n)-C(m*i))));z[g+32>>2]=C(i*w)+C(C(n*s)-C(o*C(C(k*m)-C(p*j))));j=z[a+8>>2];i=z[a+4>>2];z[g+8>>2]=-z[a+12>>2];z[g+4>>2]=-j;z[g>>2]=-i;y=a+4|0;t=xa-16|0;v[t>>2]=-1082130432;v[t+4>>2]=-1082130432;i=z[g+48>>2];j=z[g>>2];a:{b:{if(i>2]=j;j=z[g+32>>2];if(!v[g+32>>2]){j=C(-1);break a}j=C(C(z[g>>2]-z[g+48>>2])/j);break b}r=1;j=C(-1);m=i;i=z[y>>2];if(!(m>i)){break a}z[g+16>>2]=i;r=0;i=z[g+32>>2];if(!v[g+32>>2]){break a}j=C(C(z[y>>2]-z[g+48>>2])/i)}z[t>>2]=j}D=g+4|0;c:{d:{e:{i=z[g+52>>2];k=z[g+4>>2];if(!(i>2];if(!(m>i)){break c}z[g+20>>2]=i;r=v[g+36>>2];if(!r){break d}a=y+4|0;break e}z[g+20>>2]=k;a=D;r=v[g+36>>2];if(r){break e}r=0;k=C(-1);break c}k=C(C(z[a>>2]-z[g+52>>2])/(l(2,r),q()));z[t+4>>2]=k}r=0}E=g+8|0;f:{g:{h:{i:{i=z[g+56>>2];o=z[g+8>>2];if(!(i>2];if(!(m>i)){break i}z[g+24>>2]=i;r=v[g+40>>2];if(r){a=y+8|0;break h}i=C(-1);break g}z[g+24>>2]=o;a=E;r=v[g+40>>2];if(r){break h}i=C(-1);break g}if(!r){i=C(-1);break g}z[g+16>>2]=z[g+48>>2];z[g+20>>2]=z[g+52>>2];z[g+24>>2]=z[g+56>>2];v[g+12>>2]=0;a=1;break f}i=C(C(z[a>>2]-z[g+56>>2])/(l(2,r),q()));z[t+8>>2]=i}a=0;A=j>2]>2];t=v[t>>2];if((t|0)<0){break f}if(B){i=C(C(j*z[g+32>>2])+z[g+48>>2]);z[g+16>>2]=i;if(i>2]+C(-9999999747378752e-21))|i>C(z[y>>2]+C(9999999747378752e-21))){break f}}if(A?r:1){i=C(C(j*z[g+36>>2])+z[g+52>>2]);z[g+20>>2]=i;if(i>2]+C(-9999999747378752e-21))|i>C(z[y+4>>2]+C(9999999747378752e-21))){break f}}if(!r){j=C(C(j*z[g+40>>2])+z[g+56>>2]);z[g+24>>2]=j;if(j>2]+C(-9999999747378752e-21))|j>C(z[y+8>>2]+C(9999999747378752e-21))){break f}}v[g+12>>2]=t;a=B+1|0}t=a;j:{if(!t){break j}j=z[g+12>>2];if(j>e){break j}v[h+44>>2]=0;v[h+48>>2]=0;v[h+8>>2]=-1;z[h+40>>2]=j;a=0;f=x[f>>1];if(f&1){k:{if(j!=C(0)){F=z[b+24>>2];G=z[b+16>>2];i=z[b+8>>2];e=z[g+24>>2];k=C(e+e);o=z[b>>2];e=z[g+16>>2];s=C(e+e);m=z[b+4>>2];e=z[g+20>>2];n=C(e+e);p=C(C(i*k)+C(C(o*s)+C(m*n)));e=z[b+12>>2];w=C(C(e*e)+C(-.5));z[h+20>>2]=z[b+20>>2]+C(C(m*p)+C(C(n*w)+C(e*C(C(i*s)-C(k*o)))));z[h+16>>2]=G+C(C(o*p)+C(C(s*w)+C(e*C(C(m*k)-C(n*i)))));e=C(F+C(C(i*p)+C(C(k*w)+C(e*C(C(o*n)-C(s*m))))));break k}z[h+16>>2]=z[c>>2];z[h+20>>2]=z[c+4>>2];e=z[c+8>>2]}z[h+24>>2]=e;a=1}l:{if(f&2){a=a|2;if(j==C(0)){e=z[d>>2];j=z[d+4>>2];z[h+36>>2]=-z[d+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-e;break l}v[g+8>>2]=0;v[g>>2]=0;v[g+4>>2]=0;c=(t<<2)-4|0;z[c+g>>2]=z[c+(g+16|0)>>2]>C(0)?C(1):C(-1);j=z[b+8>>2];e=z[g+8>>2];i=C(e+e);k=z[b>>2];e=z[g>>2];o=C(e+e);e=z[g+4>>2];s=C(e+e);m=z[b+4>>2];n=C(C(j*i)+C(C(k*o)+C(s*m)));e=z[b+12>>2];p=C(C(e*e)+C(-.5));z[h+36>>2]=C(j*n)+C(C(i*p)+C(e*C(C(k*s)-C(o*m))));z[h+32>>2]=C(m*n)+C(C(s*p)+C(e*C(C(j*o)-C(i*k))));z[h+28>>2]=C(k*n)+C(C(o*p)+C(e*C(C(m*i)-C(s*j))));break l}v[h+28>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0}u[h+12>>1]=a;H=1}xa=g- -64|0;return H|0}function $q(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=xa-16|0;xa=m;e=c?d:x[a+24>>1];q=e<<2;d=q>>>0>1024;t[m+12|0]=d;a:{b:{c:{if(!d){d=m-(q+15&-16)|0;xa=d;v[m+8>>2]=d;break c}d=t9(q,19068,417);v[m+8>>2]=d;if(!d){break b}}d:{e:{if(c){if(!e){break d}d=0;while(1){a=v[(g<<2)+c>>2];i=a+32|0;k=v[m+8>>2];h=v[b+4>>2];f:{g:{if(!(h&8)){break g}a=v[a+36>>2];if((a&251658240)!=16777216){a=v[b+8>>2];if(!a){a=Pu(v[b>>2],h>>>24&15);v[b+8>>2]=a}h=v[a+28>>2];if(!h){break g}f=v[a+24>>2];a=0;while(1){if((i|0)==v[f+(a<<2)>>2]){break f}a=a+1|0;if((h|0)!=(a|0)){continue}break}break g}if((a&-1073741824)==1073741824){break f}}v[k+(d<<2)>>2]=i;d=d+1|0}g=g+1|0;if((e|0)!=(g|0)){continue}break}break e}if(!e){break d}k=x[a+24>>1]==1?a+20|0:v[a+20>>2];d=0;while(1){a=v[k+(g<<2)>>2];c=v[a+36>>2];h:{if(!(w[(c&64?v[a+40>>2]+52|0:a+112|0)|0]&5)){break h}i=a+32|0;h=v[m+8>>2];a=v[b+4>>2];i:{if(!(a&8)){break i}if((c&251658240)!=16777216){c=v[b+8>>2];if(!c){c=Pu(v[b>>2],a>>>24&15);v[b+8>>2]=c}f=v[c+28>>2];if(!f){break i}c=v[c+24>>2];a=0;while(1){if((i|0)==v[c+(a<<2)>>2]){break h}a=a+1|0;if((f|0)!=(a|0)){continue}break}break i}if((c&-1073741824)==1073741824){break h}}v[h+(d<<2)>>2]=i;d=d+1|0}g=g+1|0;if((e|0)!=(g|0)){continue}break}}if(!d){break d}g=v[m+8>>2];h=0;k=xa-32|0;xa=k;j:{k:{l:{m:{a=v[b+4>>2];switch((a>>>30|0)-2|0){case 1:break k;case 0:break m;default:break l}}if(w[v[b>>2]+4785|0]){break k}}if(!d){break j}a=0;while(1){c=v[g+(a<<2)>>2];e=v[b+4>>2];v[k+16>>2]=128;t[k+8|0]=0;SJ(v[((e>>>22&60)+89188|0)+12>>2]+b|0,c+16|0,k+16|0,k+8|0,0);a=a+1|0;if((d|0)!=(a|0)){continue}break}break j}i=v[b+8>>2];if(!i){i=Pu(v[b>>2],a>>>24&15);v[b+8>>2]=i}c=v[i+88>>2];n:{if(!c){if((d|0)==1){a=v[g>>2];v[i+88>>2]=1;v[i+84>>2]=a;break n}a=v[b>>2];f=v[a+4872>>2];v[k+24>>2]=0;Ar(a+4868|0,d+f|0,k+24|0);a=v[a+4868>>2];if(!a){break j}o:{if(!d){break o}c=a+(f<<2)|0;a=0;if(d-1>>>0>=3){n=d&-4;while(1){e=a<<2;v[e+c>>2]=v[e+g>>2];o=e|4;v[o+c>>2]=v[g+o>>2];o=e|8;v[o+c>>2]=v[g+o>>2];e=e|12;v[e+c>>2]=v[e+g>>2];a=a+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}e=d&3;if(!e){break o}while(1){n=a<<2;v[n+c>>2]=v[g+n>>2];a=a+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}v[i+88>>2]=d;v[i+84>>2]=f;break n}a=v[b>>2];n=v[a+4872>>2];v[k+28>>2]=0;o=c+d|0;Ar(a+4868|0,n+o|0,k+28|0);a=v[a+4868>>2];if(!a){break j}e=a+(n<<2)|0;c=v[i+88>>2];p:{if((c|0)==1){v[e>>2]=v[i+84>>2];if(!d){break p}a=0;if(d-1>>>0>=3){l=d&-4;f=0;while(1){c=a<<2;j=c|4;v[j+e>>2]=v[c+g>>2];p=c|8;v[p+e>>2]=v[g+j>>2];c=c|12;v[c+e>>2]=v[g+p>>2];a=a+4|0;v[e+(a<<2)>>2]=v[c+g>>2];f=f+4|0;if((l|0)!=(f|0)){continue}break}}d=d&3;if(!d){break p}while(1){c=a+1|0;v[e+(c<<2)>>2]=v[g+(a<<2)>>2];a=c;h=h+1|0;if((d|0)!=(h|0)){continue}break}break p}q:{if(!c){break q}h=v[v[b>>2]+4868>>2]+(v[i+84>>2]<<2)|0;a=0;if(c-1>>>0>=3){l=c&-4;while(1){f=a<<2;v[f+e>>2]=v[f+h>>2];j=f|4;v[j+e>>2]=v[h+j>>2];j=f|8;v[j+e>>2]=v[h+j>>2];f=f|12;v[f+e>>2]=v[f+h>>2];a=a+4|0;p=p+4|0;if((l|0)!=(p|0)){continue}break}}f=c&3;if(!f){break q}while(1){l=a<<2;v[l+e>>2]=v[h+l>>2];a=a+1|0;r=r+1|0;if((f|0)!=(r|0)){continue}break}}if(!d){break p}h=0;a=0;if(d-1>>>0>=3){l=d&-4;f=0;while(1){v[e+(a+c<<2)>>2]=v[g+(a<<2)>>2];j=a|1;v[e+(j+c<<2)>>2]=v[g+(j<<2)>>2];j=a|2;v[e+(j+c<<2)>>2]=v[g+(j<<2)>>2];j=a|3;v[e+(j+c<<2)>>2]=v[g+(j<<2)>>2];a=a+4|0;f=f+4|0;if((l|0)!=(f|0)){continue}break}}d=d&3;if(!d){break p}while(1){v[e+(a+c<<2)>>2]=v[g+(a<<2)>>2];a=a+1|0;h=h+1|0;if((d|0)!=(h|0)){continue}break}}v[i+88>>2]=o;v[i+84>>2]=n}Xu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|32}xa=k+32|0}if(q>>>0<1025){break a}}u9(v[m+8>>2])}xa=m+16|0;return 1}function h4(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=C(0),t=0,u=0,w=0;f=xa-48|0;o=f;xa=f;g=1;a:{if(!b){break a}e=v[a>>2];if(!e){break a}h=f-(B(e,12)+15&-16)|0;xa=h;if((e|0)!=1){i=e&-2;g=0;while(1){k=B(d,12);f=k+h|0;k=b+k|0;v[f>>2]=v[k>>2];v[f+4>>2]=v[k+4>>2];v[f+8>>2]=v[k+8>>2];k=B(d|1,12);f=k+h|0;k=b+k|0;v[f>>2]=v[k>>2];v[f+4>>2]=v[k+4>>2];v[f+8>>2]=v[k+8>>2];d=d+2|0;g=g+2|0;if((i|0)!=(g|0)){continue}break}}if(e&1){g=B(d,12);d=g+h|0;g=b+g|0;v[d>>2]=v[g>>2];v[d+4>>2]=v[g+4>>2];v[d+8>>2]=v[g+8>>2]}f=o+24|0;v[f+16>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f+4>>2]=h;v[f>>2]=e;p=o+8|0;h=0;k=xa+-64|0;xa=k;d=v[f+16>>2];if(d){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d)}v[f+16>>2]=0;d=v[f+12>>2];if(d){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d)}v[f+12>>2]=0;e=-1;d=v[f>>2];g=(d&1073741823)!=(d|0)?-1:d<<2;b:{if(!g){v[f+16>>2]=0;break b}d=v[37696];i=Ba[v[v[d>>2]+20>>2]](d)|0?29035:63804;u=f,w=Ba[v[v[d+12>>2]+8>>2]](d+12|0,g,i,7314,75)|0,v[u+16>>2]=w;c:{d=v[f>>2];if((d|0)!=(d&1073741823)){break c}e=d<<2;if(e){break c}break b}d=v[37696];g=Ba[v[v[d>>2]+20>>2]](d)|0?29941:63804;h=Ba[v[v[d+12>>2]+8>>2]](d+12|0,e,g,7314,77)|0;d=v[f>>2]}d:{if(!d){break d}l=d&3;i=v[f+4>>2];g=0;e=0;if(d-1>>>0>=3){n=d&-4;d=0;while(1){z[(e<<2)+h>>2]=z[i+B(e,12)>>2];m=e|1;z[(m<<2)+h>>2]=z[i+B(m,12)>>2];m=e|2;z[(m<<2)+h>>2]=z[i+B(m,12)>>2];m=e|3;z[(m<<2)+h>>2]=z[i+B(m,12)>>2];e=e+4|0;d=d+4|0;if((n|0)!=(d|0)){continue}break}}if(!l){break d}while(1){z[(e<<2)+h>>2]=z[i+B(e,12)>>2];e=e+1|0;g=g+1|0;if((l|0)!=(g|0)){continue}break}}n=RU(k+24|0);VU(n,h,v[f>>2],1);l=v[f>>2];e:{if(!l){break e}i=v[f+4>>2];g=0;e=0;if(l-1>>>0>=3){m=l&-4;d=0;while(1){z[(e<<2)+h>>2]=z[(i+B(e,12)|0)+4>>2];j=e|1;z[(j<<2)+h>>2]=z[(i+B(j,12)|0)+4>>2];j=e|2;z[(j<<2)+h>>2]=z[(i+B(j,12)|0)+4>>2];j=e|3;z[(j<<2)+h>>2]=z[(i+B(j,12)|0)+4>>2];e=e+4|0;d=d+4|0;if((m|0)!=(d|0)){continue}break}}d=l&3;if(!d){break e}while(1){z[(e<<2)+h>>2]=z[(i+B(e,12)|0)+4>>2];e=e+1|0;g=g+1|0;if((d|0)!=(g|0)){continue}break}}VU(n,h,l,1);i=v[f>>2];f:{g:{if(i){l=v[f+4>>2];g=0;e=0;if(i-1>>>0>=3){m=i&-4;d=0;while(1){z[(e<<2)+h>>2]=z[(l+B(e,12)|0)+8>>2];j=e|1;z[(j<<2)+h>>2]=z[(l+B(j,12)|0)+8>>2];j=e|2;z[(j<<2)+h>>2]=z[(l+B(j,12)|0)+8>>2];j=e|3;z[(j<<2)+h>>2]=z[(l+B(j,12)|0)+8>>2];e=e+4|0;d=d+4|0;if((m|0)!=(d|0)){continue}break}}d=i&3;if(d){while(1){z[(e<<2)+h>>2]=z[(l+B(e,12)|0)+8>>2];e=e+1|0;g=g+1|0;if((d|0)!=(g|0)){continue}break}}e=v[VU(n,h,i,1)+8>>2];break g}e=v[VU(n,h,i,1)+8>>2];if(!h){break f}}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,h)}i=0;v[f+8>>2]=0;v[k+16>>2]=-1;v[k+8>>2]=-1;v[k+12>>2]=-1;h=v[f>>2];d=B(h,12);if(d){g=v[37696];i=Ba[v[v[g+12>>2]+8>>2]](g+12|0,d,24422,7314,98)|0;h=v[f>>2]}v[f+12>>2]=i;if(h){t=v[f+16>>2];l=v[f+4>>2];d=k+8|0;while(1){h=h-1|0;h:{i:{q=v[e>>2];m=B(q,12);g=m+l|0;r=v[g>>2];if((r|0)!=v[d>>2]){s=z[(l+m|0)+4>>2];break i}s=z[g+4>>2];if(v[d+4>>2]!=v[g+4>>2]|v[g+8>>2]!=v[d+8>>2]){break i}d=v[f+8>>2];break h}j=v[f+8>>2];d=j+1|0;v[f+8>>2]=d;j=B(j,12)+i|0;z[j+4>>2]=s;v[j>>2]=r;z[j+8>>2]=z[(l+m|0)+8>>2]}e=e+4|0;v[(q<<2)+t>>2]=d-1;d=g;if(h){continue}break}}if(p){v[p+8>>2]=v[f+16>>2];d=v[f+8>>2];v[p>>2]=i;v[p+4>>2]=d}SU(n);xa=k- -64|0;d=v[o+12>>2];g=d>>>0>=y[a>>2];j:{if(g|!c){break j}v[a>>2]=d;if(!d){break j}d=0;h=v[o+8>>2];while(1){e=B(d,12);c=e+b|0;e=e+h|0;v[c>>2]=v[e>>2];v[c+4>>2]=v[e+4>>2];v[c+8>>2]=v[e+8>>2];d=d+1|0;if(d>>>0>2]){continue}break}}a=v[f+16>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[f+16>>2]=0;a=v[f+12>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[f+12>>2]=0}xa=o+48|0;return g}function Fx(a,b,c){var d=C(0),e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=0,o=0,p=C(0),q=0,r=C(0),s=C(0),u=0,x=C(0),y=C(0),A=C(0),E=0,F=0,G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=0,R=0,S=0,T=0,U=0,V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=0,ha=0,ia=0,ja=0,ka=0;E=xa-32|0;xa=E;V=v[c+8>>2];q=v[c+4>>2];l=v[c>>2];i=z[b+352>>2];R=v[b+336>>2];if(!(t[v[b+364>>2]]&1)){N=z[b+448>>2];O=z[b+460>>2];P=z[b+472>>2];W=z[b+452>>2];X=z[b+464>>2];Y=z[b+476>>2];Z=z[b+456>>2];_=z[b+468>>2];$=z[b+480>>2];J=z[b+508>>2];aa=z[b+484>>2];ba=z[b+496>>2];m=z[b+416>>2];r=z[b+420>>2];K=z[b+512>>2];ca=z[b+488>>2];da=z[b+500>>2];x=z[b+424>>2];y=z[b+428>>2];G=z[b+432>>2];L=z[b+516>>2];ea=z[b+492>>2];fa=z[b+504>>2];H=z[b+436>>2];I=z[b+440>>2];h=v[c+12>>2];d=z[h+20>>2];s=z[b+444>>2];f=z[h+24>>2];A=z[b+412>>2];g=z[h+8>>2];j=z[h>>2];k=z[h+4>>2];p=z[h+16>>2];v[q+28>>2]=0;v[q+12>>2]=0;L=C(C(C(C(ea*j)+C(fa*k))+C(L*g))+C(C(s*f)+C(C(H*p)+C(I*d))));z[q+24>>2]=-L;K=C(C(C(C(ca*j)+C(da*k))+C(K*g))+C(C(G*f)+C(C(x*p)+C(y*d))));z[q+20>>2]=-K;J=C(C(C(C(aa*j)+C(ba*k))+C(J*g))+C(C(r*f)+C(C(A*p)+C(m*d))));z[q+16>>2]=-J;r=C(C(C(C(r*j)+C(G*k))+C(s*g))+C(C(C(Z*p)+C(_*d))+C($*f)));z[q+8>>2]=-r;m=C(C(C(C(m*j)+C(y*k))+C(I*g))+C(C(C(W*p)+C(X*d))+C(Y*f)));z[q+4>>2]=-m;d=C(C(C(C(A*j)+C(x*k))+C(H*g))+C(C(C(N*p)+C(O*d))+C(P*f)));z[q>>2]=-d;z[l>>2]=z[l>>2]-C(i*d);z[l+4>>2]=z[l+4>>2]-C(i*m);z[l+8>>2]=z[l+8>>2]-C(i*r);z[l+16>>2]=z[l+16>>2]-C(i*J);z[l+20>>2]=z[l+20>>2]-C(i*K);z[l+24>>2]=z[l+24>>2]-C(i*L)}if(R>>>0>=2){ga=v[c+24>>2];ha=v[c+28>>2];h=1;while(1){n=v[b+340>>2]+B(h,160)|0;d=z[n+124>>2];M=h<<5;e=M+v[b+332>>2]|0;c=(v[e+24>>2]<<5)+q|0;r=z[c>>2];f=z[n+120>>2];x=z[c+4>>2];G=C(C(C(d*r)-C(f*x))+z[c+24>>2]);y=z[c+8>>2];g=C(f*y);f=z[n+128>>2];H=C(C(g-C(f*r))+z[c+20>>2]);I=C(C(C(f*x)-C(d*y))+z[c+16>>2]);a:{b:{c=v[b+344>>2]+B(h,80)|0;u=w[c+76|0];if(u){S=v[c+72>>2]<<2;T=S+ha|0;ia=v[e+20>>2];c=0;while(1){e=c<<2;o=e+E|0;d=z[(e+n|0)+132>>2];e=n+(c<<5)|0;z[o>>2]=d-C(C(C(z[e+24>>2]*y)+C(C(z[e+16>>2]*r)+C(x*z[e+20>>2])))+C(C(z[e+8>>2]*G)+C(C(z[e>>2]*I)+C(H*z[e+4>>2]))));c=c+1|0;if((u|0)!=(c|0)){continue}break}ja=u&254;ka=u&1;e=v[a+360>>2]+B(h,36)|0;n=0;while(1){F=n<<2;o=F+T|0;v[o>>2]=0;d=C(0);c=0;Q=0;if((u|0)!=1){while(1){d=C(C(z[F+(e+B(c,12)|0)>>2]*z[(c<<2)+E>>2])+d);z[o>>2]=d;U=c|1;d=C(C(z[F+(e+B(U,12)|0)>>2]*z[(U<<2)+E>>2])+d);z[o>>2]=d;c=c+2|0;Q=Q+2|0;if((ja|0)!=(Q|0)){continue}break}}if(ka){z[o>>2]=C(z[F+(e+B(c,12)|0)>>2]*z[(c<<2)+E>>2])+d}n=n+1|0;if((u|0)!=(n|0)){continue}break}if(u){break b}}f=C(0);g=C(0);j=C(0);k=C(0);p=C(0);m=C(0);break a}n=ga+S|0;F=v[b+272>>2]+B(h,76)|0;m=C(0);c=0;p=C(0);k=C(0);j=C(0);g=C(0);f=C(0);while(1){s=z[ia+264>>2];o=c<<2;e=o+T|0;o=n+o|0;A=z[o>>2];d=C(C(z[e>>2]*i)+A);if(s>2]=C(d-A)/i}z[o>>2]=d;d=z[e>>2];e=F+B(c,24)|0;k=C(k+C(d*z[e+12>>2]));j=C(j+C(d*z[e+8>>2]));g=C(g+C(d*z[e+4>>2]));f=C(f+C(d*z[e>>2]));m=C(m+C(d*z[e+20>>2]));p=C(p+C(d*z[e+16>>2]));c=c+1|0;if((u|0)!=(c|0)){continue}break}}c=M+V|0;d=z[c+20>>2];s=z[c+24>>2];A=z[c>>2];N=z[c+4>>2];O=z[c+8>>2];P=z[c+16>>2];c=q+M|0;v[c+28>>2]=0;v[c+12>>2]=0;k=C(k+C(I+P));z[c+16>>2]=k;j=C(j+C(y+O));z[c+8>>2]=j;g=C(g+C(x+N));z[c+4>>2]=g;f=C(f+C(r+A));z[c>>2]=f;m=C(m+C(G+s));z[c+24>>2]=m;d=C(p+C(H+d));z[c+20>>2]=d;c=l+M|0;z[c>>2]=C(i*f)+z[c>>2];z[c+4>>2]=C(i*g)+z[c+4>>2];z[c+8>>2]=C(i*j)+z[c+8>>2];z[c+16>>2]=C(i*k)+z[c+16>>2];z[c+20>>2]=C(i*d)+z[c+20>>2];z[c+24>>2]=C(i*m)+z[c+24>>2];h=h+1|0;if((R|0)!=(h|0)){continue}break}}xa=E+32|0}function Vx(a,b,c,d,e,f){a=a|0;b=C(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=C(0),q=0,r=C(0),s=C(0),u=C(0),x=0,A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;h=xa-176|0;xa=h;a:{if(w[a+488|0]){a9(v[37696],8,12859,893,76502,0);break a}o=a+112|0;Dx(a,o);L=v[a+448>>2];g=v[a+444>>2];M=v[a+468>>2];O=I9(v[f+40>>2],0,B(M,e)<<2);if(!e){break a}N=t[v[a+476>>2]]&1;H=C(C(1)/b);P=L<<5;Q=g+(c<<5)|0;while(1){g=B(J,12)+d|0;Ba[v[v[g>>2]+160>>2]](g,h+128|0);g=v[Q+16>>2];m=v[f+52>>2];n=0;v[h+120>>2]=0;v[h+112>>2]=0;v[h+116>>2]=0;v[h+104>>2]=0;v[h+108>>2]=0;v[h+96>>2]=0;v[h+100>>2]=0;v[h+88>>2]=0;v[h+92>>2]=0;v[h+80>>2]=0;v[h+84>>2]=0;I=Bx(m,L,h+80|0);i=I9(v[h+92>>2],0,P);b=z[g+8>>2];A=z[g+12>>2];D=z[g>>2];E=z[g+4>>2];v[h+76>>2]=0;v[h+60>>2]=0;p=z[h+160>>2];r=C(p+p);p=z[h+152>>2];s=C(p+p);p=z[h+156>>2];u=C(p+p);F=C(C(b*r)+C(C(D*s)+C(E*u)));p=C(C(A*A)+C(-.5));z[h+72>>2]=C(b*F)+C(C(r*p)-C(A*C(C(D*u)-C(s*E))));z[h+68>>2]=C(E*F)+C(C(u*p)-C(A*C(C(b*s)-C(r*D))));z[h+64>>2]=C(D*F)+C(C(s*p)-C(A*C(C(E*r)-C(u*b))));r=z[h+136>>2];r=C(r+r);s=z[h+128>>2];s=C(s+s);u=z[h+132>>2];u=C(u+u);F=C(C(b*r)+C(C(D*s)+C(E*u)));z[h+56>>2]=C(b*F)+C(C(r*p)-C(A*C(C(D*u)-C(s*E))));z[h+52>>2]=C(E*F)+C(C(u*p)-C(A*C(C(b*s)-C(r*D))));z[h+48>>2]=C(D*F)+C(C(s*p)-C(A*C(C(E*r)-C(u*b))));ix(c,o,i,h+48|0);x=m+4|0;G=h+16|0;k=v[a+468>>2];q=(k<<3)+15&-16;g=v[m+8>>2];l=v[m+4>>2]+(g<<2)|0;j=v[l-4>>2];if((q|0)<=(j-v[m+16>>2]|0)){n=j-q|0;v[h>>2]=n;b:{if(g>>>0>=(v[m+12>>2]&2147483647)>>>0){Us(x,h);break b}v[l>>2]=n;v[m+8>>2]=g+1}n=v[h>>2]}g=k<<2;j=I9(n,0,g);hx(G,N,c,o,i,j);g=g+j|0;c:{if(!k){break c}n=0;i=0;if(k-1>>>0>=3){K=k&-4;q=0;while(1){l=i<<2;z[l+g>>2]=H*z[j+l>>2];G=l|4;z[G+g>>2]=H*z[j+G>>2];G=l|8;z[G+g>>2]=H*z[j+G>>2];l=l|12;z[l+g>>2]=H*z[j+l>>2];i=i+4|0;q=q+4|0;if((K|0)!=(q|0)){continue}break}}k=k&3;if(!k){break c}while(1){l=i<<2;z[l+g>>2]=H*z[j+l>>2];i=i+1|0;n=n+1|0;if((k|0)!=(n|0)){continue}break}}qx(o);v[h+108>>2]=g;v[h+96>>2]=0;v[h+104>>2]=0;v[h+112>>2]=(B(J,M)<<2)+O;d:{if(N){v[h+8>>2]=0;v[h>>2]=0;v[h+4>>2]=0;g=h+80|0;vx(o,g);I9(v[h+88>>2],0,v[a+448>>2]<<5);rx(o,h,g);Hx(o,g);Jx(o,g);Ix(o,g);break d}v[h+8>>2]=0;v[h>>2]=0;v[h+4>>2]=0;g=h+80|0;vx(o,g);I9(v[h+88>>2],0,v[a+448>>2]<<5);rx(o,h,g);Hx(o,g);Jx(o,g);Lx(o,g);Mx(o,g)}g=v[m+16>>2];e:{if(!(g>>>0<=j>>>0&j>>>0>2]>>>0)){if(!j){break e}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,j);break e}K=v[m+4>>2];k=0;q=v[m+8>>2];n=q;while(1){l=k;k=k+1|0;g=n;n=g-1|0;i=K+(n<<2)|0;if(j>>>0>y[i>>2]){continue}break}f:{if(g>>>0>=q>>>0){break f}j=0;k=l&3;if(k){while(1){v[i>>2]=v[v[x>>2]+(g<<2)>>2];g=g+1|0;i=i+4|0;j=j+1|0;if((k|0)!=(j|0)){continue}break}}if(l-1>>>0<3){break f}while(1){k=g<<2;v[i>>2]=v[k+v[x>>2]>>2];v[i+4>>2]=v[(k+v[x>>2]|0)+4>>2];v[i+8>>2]=v[(k+v[x>>2]|0)+8>>2];v[i+12>>2]=v[(k+v[x>>2]|0)+12>>2];i=i+16|0;g=g+4|0;if((q|0)!=(g|0)){continue}break}}v[m+8>>2]=q-1}g=v[m+16>>2];g:{if(!(g>>>0<=I>>>0&g+v[m+20>>2]>>>0>I>>>0)){if(!I){break g}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,I);break g}q=v[m+4>>2];g=0;l=v[m+8>>2];k=l;while(1){n=g;g=g+1|0;i=k;k=i-1|0;j=q+(k<<2)|0;if(y[j>>2]>>0){continue}break}h:{if(i>>>0>=l>>>0){break h}g=0;k=n&3;if(k){while(1){v[j>>2]=v[v[x>>2]+(i<<2)>>2];i=i+1|0;j=j+4|0;g=g+1|0;if((k|0)!=(g|0)){continue}break}}if(n-1>>>0<3){break h}while(1){g=i<<2;v[j>>2]=v[g+v[x>>2]>>2];v[j+4>>2]=v[(g+v[x>>2]|0)+4>>2];v[j+8>>2]=v[(g+v[x>>2]|0)+8>>2];v[j+12>>2]=v[(g+v[x>>2]|0)+12>>2];j=j+16|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}v[m+8>>2]=l-1}J=J+1|0;if((J|0)!=(e|0)){continue}break}}xa=h+176|0}function jC(a,b,c,d,e,f,g,h,i,j){var k=0,l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=0,u=0,x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0);k=xa-160|0;xa=k;v[a+16>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=0;v[a+4>>2]=0;v[k+104>>2]=2122317823;v[k+108>>2]=0;v[k+24>>2]=-25165825;v[k+28>>2]=0;v[k+120>>2]=2122317823;v[k+124>>2]=0;v[k+40>>2]=-25165825;v[k+44>>2]=0;v[k+136>>2]=2122317823;v[k+140>>2]=0;v[k+56>>2]=-25165825;v[k+60>>2]=0;v[k+152>>2]=2122317823;v[k+156>>2]=0;v[k+80>>2]=2122317823;v[k+84>>2]=2122317823;v[k+88>>2]=2122317823;v[k+92>>2]=0;v[k>>2]=-25165825;v[k+4>>2]=-25165825;v[k+8>>2]=-25165825;v[k+12>>2]=0;v[k+96>>2]=2122317823;v[k+100>>2]=2122317823;v[k+16>>2]=-25165825;v[k+20>>2]=-25165825;v[k+112>>2]=2122317823;v[k+116>>2]=2122317823;v[k+32>>2]=-25165825;v[k+36>>2]=-25165825;v[k+128>>2]=2122317823;v[k+132>>2]=2122317823;v[k+48>>2]=-25165825;v[k+52>>2]=-25165825;v[k+144>>2]=2122317823;v[k+148>>2]=2122317823;v[k+72>>2]=-25165825;v[k+76>>2]=0;v[k+64>>2]=-25165825;v[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=z[t+r>>2];l=z[r+(t+16|0)>>2];i=(C(n-l)>c)<<2|q|(C(n+l)>2];l=z[t+16>>2];x=C(n-l);y=C(n+l);j=w[(i|x>b|(y>2];B=z[m+4>>2];D=z[m+8>>2];E=z[m+12>>2];i=i+(k+80|0)|0;F=z[i>>2];G=z[i+4>>2];H=z[i+8>>2];I=z[t+4>>2];J=z[t+20>>2];K=z[t+8>>2];L=z[t+24>>2];o=z[i+12>>2];p=z[t+12>>2];n=z[t+28>>2];l=C(p-n);z[i+12>>2]=l>o?o:l;l=C(K-L);z[i+8>>2]=l>H?H:l;l=C(I-J);z[i+4>>2]=l>G?G:l;z[i>>2]=x>F?F:x;l=C(p+n);z[m+12>>2]=l>2]=l>2]=l>2]=y>2]=j;i=(j<<2)+a|0;v[i>>2]=v[i>>2]+1;s=s+1|0;if((s|0)!=(d|0)){continue}break}m=v[a+8>>2];r=v[a+4>>2];s=v[a+12>>2];q=v[a>>2]}v[a+20>>2]=0;r=q+r|0;v[a+28>>2]=r;v[a+24>>2]=q;m=m+r|0;v[a+32>>2]=m;i=m+s|0;v[a+36>>2]=i;if(d){while(1){m=(u<<5)+e|0;q=v[m+12>>2];i=(q<<2)+a|0;r=v[i+20>>2];v[i+20>>2]=r+1;j=v[m>>2];i=v[m+4>>2];b=z[m+8>>2];s=(r<<5)+g|0;v[s+12>>2]=q;z[s+8>>2]=b;v[s>>2]=j;v[s+4>>2]=i;q=v[m+24>>2];j=v[m+28>>2];i=v[m+20>>2];v[s+16>>2]=v[m+16>>2];v[s+20>>2]=i;v[s+24>>2]=q;v[s+28>>2]=j;j=(u<<3)+f|0;i=v[j+4>>2];q=(r<<3)+h|0;v[q>>2]=v[j>>2];v[q+4>>2]=i;u=u+1|0;if((u|0)!=(d|0)){continue}break}q=v[a>>2];r=q+v[a+4>>2]|0;m=r+v[a+8>>2]|0;i=m+v[a+12>>2]|0}v[a+36>>2]=i;v[a+32>>2]=m;v[a+28>>2]=r;v[a+24>>2]=q;v[a+20>>2]=0;o=z[k>>2];p=z[k+80>>2];n=z[k+4>>2];l=z[k+84>>2];c=z[k+8>>2];b=z[k+88>>2];z[a+72>>2]=C(c-b)*C(.5);z[a+68>>2]=C(n-l)*C(.5);z[a- -64>>2]=C(o-p)*C(.5);z[a+56>>2]=C(b+c)*C(.5);z[a+52>>2]=C(l+n)*C(.5);z[a+48>>2]=C(p+o)*C(.5);o=z[k+20>>2];p=z[k+100>>2];n=z[k+16>>2];l=z[k+96>>2];c=z[k+24>>2];b=z[k+104>>2];z[a+104>>2]=C(c-b)*C(.5);z[a+100>>2]=C(o-p)*C(.5);z[a+96>>2]=C(n-l)*C(.5);z[a+88>>2]=C(b+c)*C(.5);z[a+84>>2]=C(p+o)*C(.5);z[a+80>>2]=C(l+n)*C(.5);o=z[k+36>>2];p=z[k+116>>2];n=z[k+32>>2];l=z[k+112>>2];c=z[k+40>>2];b=z[k+120>>2];z[a+136>>2]=C(c-b)*C(.5);z[a+132>>2]=C(o-p)*C(.5);z[a+128>>2]=C(n-l)*C(.5);z[a+120>>2]=C(b+c)*C(.5);z[a+116>>2]=C(p+o)*C(.5);z[a+112>>2]=C(l+n)*C(.5);o=z[k+52>>2];p=z[k+132>>2];n=z[k+48>>2];l=z[k+128>>2];c=z[k+56>>2];b=z[k+136>>2];z[a+168>>2]=C(c-b)*C(.5);z[a+164>>2]=C(o-p)*C(.5);z[a+160>>2]=C(n-l)*C(.5);z[a+152>>2]=C(b+c)*C(.5);z[a+148>>2]=C(p+o)*C(.5);z[a+144>>2]=C(l+n)*C(.5);o=z[k+68>>2];p=z[k+148>>2];n=z[k+64>>2];l=z[k+144>>2];c=z[k+72>>2];b=z[k+152>>2];z[a+200>>2]=C(c-b)*C(.5);z[a+196>>2]=C(o-p)*C(.5);z[a+192>>2]=C(n-l)*C(.5);z[a+184>>2]=C(b+c)*C(.5);z[a+180>>2]=C(p+o)*C(.5);z[a+176>>2]=C(l+n)*C(.5);xa=k+160|0}function NZ(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=C(0),q=0,r=C(0),s=C(0);q=xa-256|0;xa=q;l=v[a+24>>2];if(l){a:{c=l-1|0;if((c|0)<=0){break a}h=a+2076|0;while(1){b:{c:{if((c|0)<=(k|0)){break c}while(1){if(c-k>>>0<=4){while(1){e=k;k=e+1|0;b=k;g=e;while(1){g=z[h+(b<<3)>>2]>2]?b:g;d=(b|0)<(c|0);b=b+1|0;if(d){continue}break}if((e|0)!=(g|0)){i=h+(g<<3)|0;g=v[i>>2];d=v[i+4>>2];e=h+(e<<3)|0;b=v[e+4>>2];v[i>>2]=v[e>>2];v[i+4>>2]=b;v[e>>2]=g;v[e+4>>2]=d}if((c|0)!=(k|0)){continue}break c}}f=h+((c+k|0)/2<<3)|0;p=z[f>>2];i=h+(k<<3)|0;r=z[i>>2];if(p>2];d=v[i>>2];e=v[i+4>>2];b=v[f+4>>2];v[i>>2]=v[f>>2];v[i+4>>2]=b;v[f>>2]=d;v[f+4>>2]=e;s=z[i>>2]}else{s=r}g=h+(c<<3)|0;r=z[g>>2];if(s>r){r=z[i>>2];d=v[i>>2];e=v[i+4>>2];b=v[g+4>>2];v[i>>2]=v[g>>2];v[i+4>>2]=b;v[g>>2]=d;v[g+4>>2]=e;p=z[f>>2]}if(p>r){d=v[f>>2];e=v[f+4>>2];b=v[g+4>>2];v[f>>2]=v[g>>2];v[f+4>>2]=b;v[g>>2]=d;v[g+4>>2]=e}p=z[f>>2];d=v[f>>2];e=v[f+4>>2];g=c-1|0;j=h+(g<<3)|0;b=v[j+4>>2];v[f>>2]=v[j>>2];v[f+4>>2]=b;v[j>>2]=d;v[j+4>>2]=e;b=k;while(1){e=b;b=b+1|0;n=h+(b<<3)|0;if(z[n>>2]>2]>p){continue}break}f=v[n>>2];i=v[n+4>>2];if((b|0)<(g|0)){e=v[d+4>>2];v[n>>2]=v[d>>2];v[n+4>>2]=e;v[d>>2]=f;v[d+4>>2]=i;p=z[j>>2];continue}break}d=v[j+4>>2];v[n>>2]=v[j>>2];v[n+4>>2]=d;v[j>>2]=f;v[j+4>>2]=i;d:{if((b-k|0)<(c-b|0)){b=(o<<2)+q|0;v[b>>2]=k;v[b+4>>2]=e;k=e+2|0;break d}b=(o<<2)+q|0;v[b>>2]=e+2;v[b+4>>2]=c;c=e}o=o+2|0;if((c|0)>(k|0)){continue}break}break b}if(!o){break a}}b=o-2|0;k=v[(b<<2)+q>>2];c=v[((o<<2)+q|0)-4>>2];o=b;continue}}i=l>>>0>1?l:1;e=a+2592|0;g=a+28|0;k=0;while(1){o=(k<<3)+a|0;n=g+(v[o+2080>>2]<<5)|0;j=v[n+20>>2];m=v[n+28>>2];h=v[n+24>>2];e:{f:{g:{switch(v[n+12>>2]){case 0:c=v[a+2588>>2];b=e;while(1){if(!c){break f}if(v[b>>2]==(j|0)|v[b+4>>2]==(j|0)){break e}c=c-1|0;d=v[b+8>>2];b=b+12|0;if((d|0)!=(j|0)){continue}break};break e;case 1:c=v[a+2588>>2];b=e;while(1){if(!c){break f}if(v[b>>2]==(h|0)|v[b+4>>2]==(h|0)){break e}c=c-1|0;d=v[b+8>>2];b=b+12|0;if((d|0)!=(h|0)){continue}break};break e;case 2:c=v[a+2588>>2];b=e;while(1){if(!c){break f}if(v[b>>2]==(m|0)|v[b+4>>2]==(m|0)){break e}c=c-1|0;d=v[b+8>>2];b=b+12|0;if((d|0)!=(m|0)){continue}break};break e;case 3:b=e;c=v[a+2588>>2];if(!c){break f}while(1){l=v[b+8>>2];f=v[b+4>>2];d=v[b>>2];h:{if((d|0)==(j|0)){if((f|0)==(h|0)){break e}if((h|0)!=(l|0)){break h}break e}if((f|0)==(j|0)){if((d|0)==(h|0)){break e}if((h|0)!=(l|0)){break h}break e}if((j|0)!=(l|0)){break h}if((f|0)==(h|0)|(d|0)==(h|0)){break e}}b=b+12|0;c=c-1|0;if(c){continue}break};break f;case 4:b=e;c=v[a+2588>>2];if(!c){break f}while(1){l=v[b+8>>2];f=v[b+4>>2];d=v[b>>2];i:{if((d|0)==(h|0)){if((f|0)==(m|0)){break e}if((m|0)!=(l|0)){break i}break e}if((f|0)==(h|0)){if((d|0)==(m|0)){break e}if((m|0)!=(l|0)){break i}break e}if((h|0)!=(l|0)){break i}if((f|0)==(m|0)|(d|0)==(m|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=e;c=v[a+2588>>2];if(!c){break f}while(1){l=v[b+8>>2];f=v[b+4>>2];d=v[b>>2];j:{if((d|0)==(j|0)){if((f|0)==(m|0)){break e}if((m|0)!=(l|0)){break j}break e}if((f|0)==(j|0)){if((d|0)==(m|0)){break e}if((m|0)!=(l|0)){break j}break e}if((j|0)!=(l|0)){break j}if((f|0)==(m|0)|(d|0)==(m|0)){break e}}b=b+12|0;c=c-1|0;if(c){continue}break}}PZ(a,n,z[o+2076>>2],v[n+16>>2])}b=v[a+2588>>2];if(b>>>0<=63){v[a+2588>>2]=b+1;b=B(b,12)+a|0;v[b+2600>>2]=m;v[b+2596>>2]=h;v[b+2592>>2]=j}k=k+1|0;if((i|0)!=(k|0)){continue}break}}xa=q+256|0}function ZW(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0);q=xa-32|0;xa=q;o=z[a+8>>2];g=z[c+8>>2];i=C(o-g);l=C(z[d+8>>2]-g);m=z[a>>2];j=z[c>>2];g=C(m-j);h=C(z[d>>2]-j);j=z[c+4>>2];k=C(z[d+4>>2]-j);r=z[a+4>>2];j=C(r-j);n=C(C(i*l)+C(C(g*h)+C(k*j)));a:{if(n<=C(0)){break a}s=C(C(l*l)+C(C(h*h)+C(k*k)));if(s<=n){i=C(i-l);j=C(j-k);g=C(g-h);break a}y=l;l=C(n/s);i=C(i-C(y*l));j=C(j-C(k*l));g=C(g-C(h*l))}g=C(C(K(C(C(i*i)+C(C(g*g)+C(j*j)))))-e);b:{if(g<=C(0)){v[f>>2]=0;a=1;break b}i=z[b>>2];j=z[b+4>>2];B=g>C(10)?C(g+C(-10)):C(0);z[q+16>>2]=o+C(B*z[b+8>>2]);z[q+12>>2]=r+C(B*j);z[q+8>>2]=m+C(B*i);a=q+8|0;p=q+24|0;j=z[d+8>>2];t=z[c+8>>2];i=C(j-t);n=z[d>>2];u=z[c>>2];h=C(n-u);o=z[d+4>>2];E=z[c+4>>2];k=C(o-E);l=C(K(C(C(i*i)+C(C(h*h)+C(k*k)))));if(l!=C(0)){g=C(C(1)/l);i=C(i*g);k=C(k*g);h=C(h*g)}c:{if(l<=C(9.999999974752427e-7)){g=z[a+8>>2];i=C(g-t);k=C(i*i);i=z[a>>2];l=C(i-u);m=C(l*l);l=z[a+4>>2];h=C(l-E);h=C(k+C(m+C(h*h)));g=C(g-j);k=C(g*g);g=C(i-n);m=C(g*g);g=C(l-o);g=C(k+C(m+C(g*g)));g=C((gC(0))){break d}g=C(i*i);if(C(D(h))>=C(D(k))){g=C(C(1)/C(K(C(C(h*h)+g))));n=C(h*g);g=C(g*C(-i));break d}g=C(C(1)/C(K(C(C(k*k)+g))));n=C(g*C(-k));o=C(i*g);g=C(0)}m=C(C(h*o)-C(g*k));r=C(C(k*n)-C(o*i));s=C(C(i*g)-C(n*h));j=C(K(C(C(m*m)+C(C(r*r)+C(s*s)))));if(j>C(0)){j=C(C(1)/j);m=C(m*j);s=C(s*j);r=C(r*j)}j=z[b+8>>2];w=z[b>>2];x=z[b+4>>2];A=C(C(i*j)+C(C(h*w)+C(k*x)));F=C(C(n*j)+C(C(g*w)+C(o*x)));w=C(C(m*j)+C(C(r*w)+C(s*x)));x=C(K(C(C(A*A)+C(C(F*F)+C(w*w)))));j=x!=C(0)?C(C(1)/x):C(0);t=C(z[a+8>>2]-t);u=C(z[a>>2]-u);y=k;k=C(z[a+4>>2]-E);i=C(C(i*t)+C(C(h*u)+C(y*k)));h=C(C(m*t)+C(C(r*u)+C(s*k)));g=C(C(n*t)+C(C(g*u)+C(o*k)));n=C(e*e);e:{f:{if(!(x=C(.9999998807907104))){break f}}e=C(C(n-C(g*g))-C(h*h));if(!(!(A=C(0)))){e=C(K(e));z[p>>2]=j*C(i+e);z[p+4>>2]=j*C(-C(C(l-i)+e));a=2;break c}d=0;if(!(A>C(0))|!(e>=C(0))){break e}e=C(K(e));z[p+4>>2]=j*C(C(l-i)+e);z[p>>2]=j*C(-C(i+e));a=2;break c}d=0;o=C(F*j);m=C(w*j);k=C(C(g*o)+C(h*m));n=C(C(C(g*g)+C(h*h))-n);g=C(C(o*o)+C(m*m));h=C(C(k*k)-C(n*g));if(hC(0)){a=0;g=C(C(1)/g);h=C(K(h));o=C(g*C(C(-k)-h));m=C(C(o*e)+i);b=!(m>=C(-.0010000000474974513));y=m;m=C(l+C(.0010000000474974513));b=b|!(y<=m);if(!b){z[p>>2]=j*o;a=1}g=C(g*C(h-k));h=C(C(g*e)+i);if(!(h>=C(-.0010000000474974513))|!(h<=m)){break g}d=2;z[(a<<2)+p>>2]=j*g;a=1;if(!b){break e}break g}a=0;g=C(C(-k)/g);h=C(C(g*e)+i);if(!(h>=C(0))|!(h<=l)){break g}z[p>>2]=j*g;a=1;break c}g=C(C(i*e)+k);k=C(C(i*i)+n);h=C(C(g*g)-k);h:{if(h>C(0)){h=C(K(h));n=C(C(-g)-h);i:{if(!(C(C(n*e)+i)<=C(0))){c=a;break i}d=2;z[(a<<2)+p>>2]=j*n;c=1;if(a){break e}}h=C(h-g);if(!(C(C(h*e)+i)<=C(0))){b=c;break h}d=2;z[(c<<2)+p>>2]=j*h;b=1;if(!c){break h}break e}if(h!=C(0)){b=a;break h}if(!(C(i-C(g*e))<=C(0))){b=a;break h}d=2;z[(a<<2)+p>>2]=j*C(-g);b=1;if(a){break e}}g=C(g-C(e*l));h=C(C(g*g)-C(C(l*C(l-C(i+i)))+k));if(h>C(0)){h=C(K(h));k=C(C(-g)-h);j:{k:{if(!(l<=C(C(k*e)+i))){a=b;break k}z[(b<<2)+p>>2]=j*k;a=1;if(b){break j}}g=C(h-g);if(!(l<=C(C(g*e)+i))){break c}z[(a<<2)+p>>2]=j*g;d=1;if(!a){break e}}a=2;break c}a=b;if(h!=C(0)){break c}l:{if(!(l<=C(i-C(g*e)))){break l}d=2;z[(b<<2)+p>>2]=j*C(-g);a=1;if(b){break e}}d=a}a=d}if(a){e=z[q+24>>2];g=z[q+28>>2];z[f>>2]=B+((a|0)==1?e:e>2];O=z[d+20>>2];s=z[c+4>>2];P=z[d+16>>2];r=z[c+8>>2];Q=z[d+8>>2];q=z[d+12>>2];R=z[d+4>>2];A=z[d>>2];c=v[e+32>>2];h=z[e+8>>2];k=z[e+12>>2];n=z[e+4>>2];v[g+348>>2]=0;z[g+344>>2]=k;z[g+340>>2]=h;z[g+336>>2]=n;I=v[e+16>>2];J=v[e+20>>2];W=v[e+28>>2];v[g+328>>2]=v[e+24>>2];v[g+332>>2]=W;v[g+320>>2]=I;v[g+324>>2]=J;t[g+192|0]=0;v[g+184>>2]=0;v[g+188>>2]=0;v[g+176>>2]=0;v[g+180>>2]=0;v[g+168>>2]=0;v[g+172>>2]=0;v[g+160>>2]=0;v[g+164>>2]=0;v[g+304>>2]=c+16;v[g+312>>2]=v[c+56>>2]+B(w[c+55|0],20);t[g+316|0]=w[c+54|0];j=C(n*z[c+68>>2]);i=C(h*z[c+72>>2]);j=i>=j?j:i;i=C(k*z[c+76>>2]);j=i>=j?j:i;z[g+184>>2]=j*C(.02500000037252903);z[g+176>>2]=j*C(.10000000149011612);z[g+180>>2]=j*C(.05000000074505806);I=g+208|0;J=g+256|0;FV(g+336|0,g+320|0,I,J,g+160|0,n==C(1)&h==C(1)&k==C(1));v[g+308>>2]=v[c+60>>2];D=z[d+20>>2];H=z[d+24>>2];l=z[f+20>>2];x=z[f+24>>2];E=z[d+16>>2];i=z[d>>2];o=z[d+4>>2];p=z[d+8>>2];m=z[d+12>>2];j=z[f>>2];k=z[f+4>>2];n=z[f+8>>2];h=z[f+12>>2];y=z[f+16>>2];v[g+156>>2]=0;z[g+152>>2]=x;z[g+148>>2]=l;z[g+144>>2]=y;z[g+140>>2]=h;z[g+136>>2]=n;z[g+132>>2]=k;z[g+128>>2]=j;v[g+120>>2]=0;v[g+124>>2]=0;v[g+112>>2]=0;v[g+116>>2]=0;v[g+96>>2]=0;v[g+76>>2]=0;v[g+60>>2]=0;F=C(-j);y=C(E-y);D=C(D-l);x=C(H-x);H=C(C(C(F*y)-C(D*k))-C(n*x));L=C(C(h*h)+C(-.5));l=C(C(C(h*C(C(k*y)-C(j*D)))+C(L*x))-C(n*H));M=C(l+l);z[g+8>>2]=M;l=C(C(C(i*k)-C(j*o))+C(C(p*h)-C(m*n)));G=C(C(C(o*n)-C(k*p))+C(C(i*h)-C(m*j)));E=C(G+G);S=C(l*E);F=C(C(m*h)-C(C(C(F*i)-C(o*k))-C(n*p)));o=C(C(C(p*j)-C(n*i))+C(C(o*h)-C(m*k)));m=C(o+o);T=C(F*m);G=C(C(1)-C(G*E));U=C(o*m);i=C(A+A);p=C(q+q);V=C(r*C(C(Q*i)-C(R*p)));u=C(C(u-V)-C(V+u));q=C(r*C(C(A*i)+C(C(q*p)+C(-1))));q=C(C(P-q)-C(P+q));i=C(r*C(C(Q*p)+C(i*R)));i=C(C(O-i)-C(O+i));p=C(C(K(C(C(u*u)+C(C(q*q)+C(i*i)))))*C(.5));i=C(p*C(0));r=C(l*m);q=C(F*E);A=C(C(C(G-U)*i)+C(C(C(S-T)*p)+C(i*C(r+q))));z[g+72>>2]=M-A;m=C(C(C(L*D)+C(h*C(C(j*x)-C(n*y))))-C(k*H));m=C(m+m);z[g+4>>2]=m;u=C(C(r-q)*i);o=C(o*E);r=C(l+l);q=C(F*r);l=C(l*r);r=C(u+C(C(C(o+q)*p)+C(i*C(G-l))));z[g+68>>2]=m-r;z[g+56>>2]=A+M;z[g+52>>2]=r+m;z[g+80>>2]=s;v[g+12>>2]=0;v[g+28>>2]=4;t[g+32|0]=1;z[g+24>>2]=s;z[g+20>>2]=s;z[g+16>>2]=s;h=C(C(C(L*y)+C(h*C(C(n*D)-C(k*x))))-C(j*H));h=C(h+h);z[g>>2]=h;k=C(C(C(S+T)*i)+C(C(C(C(C(1)-U)-l)*p)+C(i*C(o-q))));z[g+64>>2]=h-k;z[g+48>>2]=k+h;N=z[e+4>>2]!=C(1)|z[e+8>>2]!=C(1)?N:z[e+12>>2]==C(1);k2(g+160|0,N,g+424|0);v[g+392>>2]=J;v[g+388>>2]=I;v[g+384>>2]=g+128;a:{if(N){t[g+396|0]=1;v[g+352>>2]=141020;break a}t[g+396|0]=0;v[g+352>>2]=141068}v[g+400>>2]=g+160;d=xa-48|0;xa=d;v[d+32>>2]=0;e=g+352|0;c=c2(g,g+424|0,e,d+32|0,d,d+16|0);if(c){e=v[e+32>>2];h=z[e+12>>2];k=z[e+8>>2];n=z[e>>2];j=z[e+4>>2];i=z[d+24>>2];s=z[d+16>>2];o=z[d+20>>2];v[g+124>>2]=0;p=C(C(h*h)+C(-.5));m=C(C(k*i)+C(C(n*s)+C(j*o)));l=C(C(C(h*C(C(n*o)-C(s*j)))+C(i*p))+C(k*m));z[g+120>>2]=l+l;l=C(C(j*m)+C(C(p*o)+C(h*C(C(k*s)-C(i*n)))));z[g+116>>2]=l+l;h=C(C(n*m)+C(C(s*p)+C(h*C(C(j*i)-C(o*k)))));z[g+112>>2]=h+h;e=v[d+12>>2];v[g+104>>2]=v[d+8>>2];v[g+108>>2]=e;e=v[d+4>>2];v[g+96>>2]=v[d>>2];v[g+100>>2]=e}xa=d+48|0;if(c){h=z[g+96>>2];z[b>>2]=h>C(0)?h:C(0);b=v[g+112>>2];d=v[g+116>>2];z[a+8>>2]=z[g+120>>2];v[a>>2]=b;v[a+4>>2]=d}xa=g+496|0;return c|0}function s3(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,w=0,x=0,A=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=0,N=0,O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0;n=xa-32|0;xa=n;k=v[f>>2]+1|0;v[f>>2]=k;if(k>>>0>y[e>>2]){v[e>>2]=k}a:{s=v[d+68>>2];t=v[d+32>>2];w=v[d+104>>2];x=v[d+140>>2];N=((((s|0)!=-1)+((t|0)!=-1)|0)+((w|0)!=-1)|0)+((x|0)!=-1)|0;if(!N){break a}S=z[j+8>>2];T=z[i+8>>2];U=z[j+4>>2];V=z[i+4>>2];W=z[j>>2];X=z[i>>2];Y=z[h+8>>2];Z=z[h+4>>2];_=z[h>>2];$=z[g+8>>2];aa=z[g+4>>2];ba=z[g>>2];b:while(1){E=B(L,36)+d|0;F=z[E+16>>2];G=z[E+28>>2];O=C(F-G);A=C(O*$);c:{if(C(D(A))>2];H=z[E+8>>2];I=z[E+24>>2];J=z[E+12>>2];k=(b+L<<4)+a|0;u[k+10>>1]=r;P=C(J-I);K=C(P*aa);d:{if(C(D(K))>1]=p;K=C(H-A);Q=C(K*ba);e:{if(C(D(Q))>1]=m;F=C(F+G);G=C(F*Y);f:{if(C(D(G))>1]=o;I=C(J+I);J=C(I*Z);g:{if(C(D(J))>1]=q;A=C(H+A);H=C(A*_);h:{if(C(D(H))>1]=l;while(1){M=K>16));R=m&65535;ca=!M|!R;i:{while(1){j:{if(!((l&65535)!=32767&A>C(W*C(l<<16>>16)))){if(!M){break i}if(R){break j}break i}l=l+1|0;u[k>>1]=l;if(ca){continue}}break}m=m-1|0;u[k+2>>1]=m;continue}break}while(1){m=C(V*C(p<<16>>16))>P;l=p&65535;M=!m|!l;k:{while(1){l:{if(!((q&65535)!=32767&I>C(U*C(q<<16>>16)))){if(!m){break k}if(l){break l}break k}q=q+1|0;u[k+4>>1]=q;if(M){continue}}break}p=p-1|0;u[k+6>>1]=p;continue}break}while(1){p=C(T*C(r<<16>>16))>O;m=r&65535;q=!p|!m;while(1){m:{if(!((o&65535)!=32767&F>C(S*C(o<<16>>16)))){if(m?p:0){break m}v[k+12>>2]=v[E+32>>2];L=L+1|0;if((N|0)!=(L|0)){continue b}break a}o=o+1|0;u[k+8>>1]=o;if(q){continue}}break}r=r-1|0;u[k+10>>1]=r;continue}}}v[n+24>>2]=-1;v[n+28>>2]=-1;v[n+16>>2]=-1;v[n+20>>2]=-1;v[n+8>>2]=0;v[n+12>>2]=0;v[n>>2]=0;v[n+4>>2]=0;k=(b<<4)+a|0;n:{if((t|0)!=-1){l=0;if(t&1){break n}l=v[c>>2];v[c>>2]=l+4;o=v[t+140>>2];r=v[t+104>>2];p=v[t+68>>2];m=v[t+32>>2];v[n>>2]=t;v[n+16>>2]=l;v[((b<<4)+a|0)+12>>2]=(l<<11|((((p|0)!=-1)+((m|0)!=-1)|0)+((r|0)!=-1)|0)+((o|0)!=-1)<<1)-4|v[d+36>>2]<<3;l=1;break n}v[k>>2]=0;v[k+4>>2]=0;v[k+8>>2]=0;v[k+12>>2]=-1;l=0}o:{if((s|0)!=-1){if(s&1){break o}b=v[c>>2];v[c>>2]=b+4;o=v[s+140>>2];r=v[s+104>>2];p=v[s+68>>2];m=v[s+32>>2];q=l<<2;v[(q|n)>>2]=s;v[(q|n+16)>>2]=b;v[k+28>>2]=(b<<11|((((p|0)!=-1)+((m|0)!=-1)|0)+((r|0)!=-1)|0)+((o|0)!=-1)<<1)-4|v[d+72>>2]<<3;l=l+1|0;break o}v[k+16>>2]=0;v[k+20>>2]=0;v[k+24>>2]=0;v[k+28>>2]=-1}p:{if((w|0)!=-1){if(w&1){break p}b=v[c>>2];v[c>>2]=b+4;o=v[w+140>>2];r=v[w+104>>2];p=v[w+68>>2];m=v[w+32>>2];q=l<<2;v[(q|n)>>2]=w;v[(q|n+16)>>2]=b;v[k+44>>2]=(b<<11|((((p|0)!=-1)+((m|0)!=-1)|0)+((r|0)!=-1)|0)+((o|0)!=-1)<<1)-4|v[d+108>>2]<<3;l=l+1|0;break p}v[k+32>>2]=0;v[k+36>>2]=0;v[k+40>>2]=0;v[k+44>>2]=-1}q:{r:{s:{if((x|0)!=-1){if(x&1){break s}b=v[c>>2];v[c>>2]=b+4;o=v[x+140>>2];r=v[x+104>>2];p=v[x+68>>2];m=v[x+32>>2];q=l<<2;v[q+n>>2]=x;v[q+(n+16|0)>>2]=b;v[k+60>>2]=(b<<11|((((p|0)!=-1)+((m|0)!=-1)|0)+((r|0)!=-1)|0)+((o|0)!=-1)<<1)-4|v[d+144>>2]<<3;l=l+1|0;break r}v[k+48>>2]=0;v[k+52>>2]=0;v[k+56>>2]=0;v[k+60>>2]=-1}if(!l){break q}}o=0;while(1){b=o<<2;s3(a,v[b+(n+16|0)>>2],c,v[b+n>>2],e,f,g,h,i,j);v[f>>2]=v[f>>2]-1;o=o+1|0;if((o|0)!=(l|0)){continue}break}}xa=n+32|0}function c1(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=0,k=0,l=0,m=0,n=0,o=C(0),p=0,q=0,r=C(0),s=0,u=0;k=xa-16|0;xa=k;a:{if(w[b+64|0]&2){c=v[b+28>>2];v[k+4>>2]=v[b+24>>2];v[k+8>>2]=c;v[k>>2]=144332;break a}c=v[b+28>>2];v[k+4>>2]=v[b+24>>2];v[k+8>>2]=c;v[k>>2]=144372}i=xa-48|0;xa=i;j=v[b+192>>2];if((j|0)>0){s=v[b+200>>2];while(1){m=j;j=j-1|0;u=v[b+200>>2]+B(j,112)|0;n=0;while(1){c=(n<<2)+u|0;b:{if(z[c>>2]>z[c+48>>2]){break b}e=v[c+96>>2];if(e&1){Ba[v[v[k>>2]>>2]](k,e-1|0,i,i+32|0);f=z[i+36>>2];g=z[i+40>>2];d=z[i+32>>2];h=z[i+4>>2];o=z[i+8>>2];z[c>>2]=z[i>>2];z[c+32>>2]=o;z[c+16>>2]=h;z[c+48>>2]=d;z[c+80>>2]=g;z[c- -64>>2]=f;break b}l=c- -64|0;c:{d:{e:{f:{e=e+s|0;f=z[e>>2];g:{h:{if(f>z[e+48>>2]){f=z[e+4>>2];if(f>z[e+52>>2]){break f}z[c>>2]=f;z[c+16>>2]=z[e+20>>2];z[c+32>>2]=z[e+36>>2];g=z[e+52>>2];z[c+48>>2]=g;z[l>>2]=z[e+68>>2];d=z[e+84>>2];break h}z[c>>2]=f;z[c+16>>2]=z[e+16>>2];z[c+32>>2]=z[e+32>>2];g=z[e+48>>2];z[c+48>>2]=g;z[l>>2]=z[e+64>>2];z[c+80>>2]=z[e+80>>2];d=z[e+4>>2];if(d>z[e+52>>2]){break g}f=d>f?f:d;z[c>>2]=f;d=z[c+16>>2];h=z[e+20>>2];z[c+16>>2]=d>2];h=z[e+36>>2];z[c+32>>2]=d>2];g=d>2]=g;d=z[l>>2];h=z[e+68>>2];z[l>>2]=d>h?d:h;d=z[c+80>>2];h=z[e+84>>2];d=d>h?d:h}z[c+80>>2]=d}d=z[e+8>>2];if(d>z[e+56>>2]){break d}f=d>f?f:d;z[c>>2]=f;d=z[c+16>>2];h=z[e+24>>2];z[c+16>>2]=d>2];h=z[e+40>>2];z[c+32>>2]=d>2];g=d>2]=g;d=z[l>>2];h=z[e+72>>2];z[l>>2]=d>h?d:h;d=z[c+80>>2];h=z[e+88>>2];d=d>h?d:h;break e}f=z[e+8>>2];if(f>z[e+56>>2]){break c}z[c>>2]=f;z[c+16>>2]=z[e+24>>2];z[c+32>>2]=z[e+40>>2];g=z[e+56>>2];z[c+48>>2]=g;z[l>>2]=z[e+72>>2];d=z[e+88>>2]}z[c+80>>2]=d}d=z[e+12>>2];if(d>z[e+60>>2]){break b}z[c>>2]=d>f?f:d;f=z[c+16>>2];d=z[e+28>>2];z[c+16>>2]=d>f?f:d;f=z[c+32>>2];d=z[e+44>>2];z[c+32>>2]=d>f?f:d;f=z[e+60>>2];z[c+48>>2]=f>2];g=z[e+76>>2];z[l>>2]=f>g?f:g;f=z[c+80>>2];g=z[e+92>>2];z[c+80>>2]=f>g?f:g;break b}f=z[e+12>>2];if(f>z[e+60>>2]){break b}z[c>>2]=f;z[c+16>>2]=z[e+28>>2];z[c+32>>2]=z[e+44>>2];z[c+48>>2]=z[e+60>>2];z[l>>2]=z[e+76>>2];z[c+80>>2]=z[e+92>>2]}n=n+1|0;if((n|0)!=4){continue}break}if((m|0)>1){continue}break}}i:{if(!a|!v[b+180>>2]){break i}z0(v[b+200>>2],i);c=v[i+4>>2];j=v[i>>2];z[a+8>>2]=z[i+8>>2];v[a>>2]=j;v[a+4>>2]=c;c=v[i+16>>2];j=v[i+12>>2];z[a+20>>2]=z[i+20>>2];v[a+12>>2]=j;v[a+16>>2]=c;j=1;if(y[b+180>>2]<=1){break i}while(1){z0(v[b+200>>2]+B(j,112)|0,i);f=z[i>>2];g=z[i+4>>2];d=z[a+8>>2];h=z[i+8>>2];z[a+8>>2]=d>2];z[a+4>>2]=d>2];z[a>>2]=f>g?g:f;f=z[i+12>>2];g=z[i+16>>2];d=z[a+20>>2];h=z[i+20>>2];z[a+20>>2]=d>h?d:h;d=z[a+16>>2];z[a+16>>2]=d>g?d:g;g=z[a+12>>2];z[a+12>>2]=f>>0>2]){continue}break}}xa=i+48|0;c=v[b+196>>2];j:{if(c&2){break j}v[b+196>>2]=c|2;if(!v[b+56>>2]){break j}c=Ba[v[v[b>>2]+40>>2]](b)|0;if(!c){break j}j=0;if(c-1>>>0>=3){m=c&-4;while(1){e=v[b+56>>2]+j|0;t[e|0]=w[e|0]|56;e=v[b+56>>2]+(j|1)|0;t[e|0]=w[e|0]|56;e=v[b+56>>2]+(j|2)|0;t[e|0]=w[e|0]|56;e=v[b+56>>2]+(j|3)|0;t[e|0]=w[e|0]|56;j=j+4|0;p=p+4|0;if((m|0)!=(p|0)){continue}break}}c=c&3;if(!c){break j}while(1){m=v[b+56>>2]+j|0;t[m|0]=w[m|0]|56;j=j+1|0;q=q+1|0;if((c|0)!=(q|0)){continue}break}}f=z[a+16>>2];g=z[a+20>>2];d=z[a+4>>2];h=z[a+8>>2];o=z[a+12>>2];r=z[a>>2];z[b+44>>2]=C(o-r)*C(.5);z[b+32>>2]=C(r+o)*C(.5);z[b+52>>2]=C(g-h)*C(.5);z[b+48>>2]=C(f-d)*C(.5);z[b+40>>2]=C(h+g)*C(.5);z[b+36>>2]=C(d+f)*C(.5);xa=k+16|0}function D3(a,b,c,d,e,f,g){var h=0,i=0,j=C(0),k=0,l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),w=0,x=0,A=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=xa-48|0;xa=h;i=1;w=v[e>>2];L=g+1|0;v[e>>2]=g?w>>>0>L>>>0?w:L:1;g=c>>>2|0;w=g>>>0>1?g:1;g=v[a+8>>2];m=g+(v[b>>2]<<5)|0;l=z[m+8>>2];o=z[m+4>>2];p=z[m>>2];t=z[m+16>>2];u=z[m+24>>2];q=z[m+20>>2];if(c>>>0>1){while(1){m=g+(v[(i<<2)+b>>2]<<5)|0;j=z[m+8>>2];l=j>l?l:j;j=z[m+4>>2];o=j>o?o:j;j=z[m>>2];p=j>p?p:j;j=z[m+16>>2];t=j>2];u=j>2];q=j>2]=r;n=C(u-l);z[h+40>>2]=n;j=C(q-o);z[h+36>>2]=j;H=v[a+12>>2];D=d;g=v[d+8>>2]&2147483647;N=v[d+4>>2];d=N+4|0;if(g>>>0>>0){C3(D,d)}v[D+4>>2]=d;d=j>n?1:2;M=j0?d:0;O=c-1|0;while(1){E=B(w,x);P=s;if((x|0)==3){d=m}else{if(E>>>0<=O>>>0){A=w;s=O;d=E;while(1){I=(s<<2)+b|0;k=v[I>>2];g=(d+s<<1&-4)+b|0;i=v[g>>2];v[I>>2]=i;v[g>>2]=k;g=d;a:{if(s>>>0<=d>>>0){break a}J=M<<2;j=z[J+(B(i,12)+H|0)>>2];k=d+1|0;i=d;if(s-g&1){i=k;g=j>=z[(B(v[(d<<2)+b>>2],12)+H|0)+J>>2]?i:d}if((k|0)==(s|0)){break a}while(1){K=(i<<2)+b|0;F=v[K>>2];if(j>=z[(B(F,12)+H|0)+J>>2]){G=(g<<2)+b|0;k=v[G>>2];v[G>>2]=F;v[K>>2]=k;g=g+1|0}F=v[K+4>>2];if(j>=z[(B(F,12)+H|0)+J>>2]){G=(g<<2)+b|0;k=v[G>>2];v[G>>2]=F;v[K+4>>2]=k;g=g+1|0}i=i+2|0;if((s|0)!=(i|0)){continue}break}}k=v[I>>2];i=(g<<2)+b|0;v[I>>2]=v[i>>2];v[i>>2]=k;k=(g-d|0)+1|0;if((k|0)!=(A|0)){i=k>>>0>A>>>0;d=i?d:g+1|0;s=i?g-1|0:s;A=A-(i?0:k)|0;continue}break}d=(h+32|0)+(M<<2)|0;z[d>>2]=z[d>>2]*z[(x<<2)+103908>>2];n=z[h+36>>2];j=z[h+40>>2];d=n>j?1:2;l=j;j=z[h+32>>2];M=j>n?l>2]|0;b:{if(d>>>0<=y[a+24>>2]){if(!(!d|c>>>0>>0)){v[i+28>>2]=d;v[i+24>>2]=(b-v[a+4>>2]>>2)+E;k=v[a+8>>2];i=k+(v[(E<<2)+b>>2]<<5)|0;g=v[i+28>>2];v[h+24>>2]=v[i+24>>2];v[h+28>>2]=g;g=v[i+20>>2];v[h+16>>2]=v[i+16>>2];v[h+20>>2]=g;g=v[i+4>>2];v[h>>2]=v[i>>2];v[h+4>>2]=g;g=v[i+12>>2];v[h+8>>2]=v[i+8>>2];v[h+12>>2]=g;if(d>>>0<2){break b}i=1;l=z[h+24>>2];o=z[h+20>>2];p=z[h+16>>2];t=z[h+8>>2];u=z[h+4>>2];q=z[h>>2];while(1){g=k+(v[(i+E<<2)+b>>2]<<5)|0;r=z[g>>2];n=z[g+4>>2];j=z[g+8>>2];v[h+12>>2]=0;t=j>t?t:j;z[h+8>>2]=t;u=n>u?u:n;z[h+4>>2]=u;q=q>2]=q;r=z[g+16>>2];n=z[g+20>>2];j=z[g+24>>2];v[h+28>>2]=0;l=j>2]=l;o=o>n?o:n;z[h+20>>2]=o;p=p>r?p:r;z[h+16>>2]=p;i=i+1|0;if((d|0)!=(i|0)){continue}break}break b}v[h+24>>2]=0;v[h+28>>2]=0;v[h+16>>2]=0;v[h+20>>2]=0;v[h+8>>2]=0;v[h+12>>2]=0;v[h>>2]=0;v[h+4>>2]=0;v[i+16>>2]=-25165825;v[i+20>>2]=-25165825;v[i+8>>2]=2122317823;v[i+12>>2]=-25165825;v[i>>2]=2122317823;v[i+4>>2]=2122317823;v[i+24>>2]=-1;v[i+28>>2]=-1;break b}g=v[D+4>>2];v[i+28>>2]=0;v[i+24>>2]=g;D3(a,(E<<2)+b|0,d,D,e,h,L)}c:{if(!x){d=v[h+4>>2];v[f>>2]=v[h>>2];v[f+4>>2]=d;d=v[h+12>>2];v[f+8>>2]=v[h+8>>2];v[f+12>>2]=d;d=v[h+28>>2];v[f+24>>2]=v[h+24>>2];v[f+28>>2]=d;d=v[h+20>>2];v[f+16>>2]=v[h+16>>2];v[f+20>>2]=d;l=z[h+8>>2];o=z[h+4>>2];p=z[h>>2];break c}p=z[h>>2];o=z[h+4>>2];l=z[h+8>>2];v[f+12>>2]=0;j=z[f+8>>2];z[f+8>>2]=j>2];z[f+4>>2]=j>2];z[f>>2]=j>2];r=z[h+20>>2];n=z[h+24>>2];v[f+28>>2]=0;j=z[f+24>>2];z[f+24>>2]=j>n?j:n;j=z[f+20>>2];z[f+20>>2]=j>r?j:r;j=z[f+16>>2];z[f+16>>2]=j>q?j:q}i=A+v[D>>2]|0;z[i+8>>2]=l;z[i+4>>2]=o;z[i>>2]=p;g=v[h+20>>2];d=v[h+16>>2];z[i+20>>2]=z[h+24>>2];v[i+12>>2]=d;v[i+16>>2]=g;x=x+1|0;if((x|0)!=4){continue}break}xa=h+48|0}function lT(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=C(0),p=0,q=C(0),r=C(0),s=0,u=C(0),x=0,y=C(0),B=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=0,T=0,U=0,V=0,W=C(0),X=0;n=xa-112|0;xa=n;U=v[b+324>>2];t[a|0]=0;V=A[e+24>>3];F=A[e+16>>3];P=z[b+264>>2];S=+P;Q=z[b+260>>2];T=+Q;x=A[e+8>>3];W=z[e+32>>2];p=U&-258;u=z[b+280>>2];q=z[f+8>>2];R=z[b+268>>2];y=z[f>>2];o=z[f+4>>2];B=C(C(q*R)+C(C(y*Q)+C(P*o)));a:{if(B>C(0)){v[b+324>>2]=p|256;u=k?u:C(0);break a}v[b+324>>2]=p}X=v[b+240>>2];v[n+104>>2]=0;v[n+96>>2]=0;v[n+100>>2]=0;v[n+88>>2]=0;v[n+80>>2]=0;v[n+84>>2]=0;r=q;q=C(R*B);L=C(r-q);r=o;o=C(P*B);M=C(r-o);r=C(Q*B);N=C(y-r);b:{if(B<=C(0)){O=n+80|4;z[n+80>>2]=r;G=q;H=o;I=r;r=C(0);y=C(0);p=n+88|0;break b}O=n+96|4;z[n+96>>2]=r;J=o;y=q;p=n+104|0}z[O>>2]=o;z[p>>2]=q;z[n+68>>2]=M;z[n+64>>2]=N;z[n+72>>2]=L;E=C(D(N));q=C(D(M));o=C(D(L));O=E>C(9.999999974752427e-7)|k|q>C(9.999999974752427e-7)|o>C(9.999999974752427e-7);if((O|0)==1){z[n+104>>2]=C(R*u)+y;z[n+100>>2]=C(P*u)+J;z[n+96>>2]=C(Q*u)+r}F=V*+R+(x*T+F*S);k=n+16|0;s=e+8|0;Ba[v[v[e>>2]+8>>2]](e,b,k,s,f);jT(b,c,g,k,i,n- -64|0);v[b+96>>2]=0;v[n+12>>2]=0;k=0;c:{if(w[b+324|0]&2){break c}k=0;if(!kT(b,c,d,g,e,n+96|0,n- -64|0,w[b+300|0]?1:E>C(9.999999974752427e-7)?1:q>C(9.999999974752427e-7)?1:o>C(9.999999974752427e-7)?1:10,n+12|0,h,i,0,l,m)|!v[n+12>>2]){break c}t[a|0]=2;o=C(A[e+24>>3]*+z[b+268>>2]+(A[e+8>>3]*+z[b+260>>2]+A[e+16>>3]*+z[b+264>>2])-F);u=o>2]=1;v[b+324>>2]=v[b+324>>2]&-9;v[n+12>>2]=0;p=n- -64|0;if(!(!kT(b,c,d,g,e,p,p,10,n+12|0,h,i,1,l,m)|!v[n+12>>2])){k=k|1;t[a|0]=k}d:{if(!j|v[e+36>>2]!=1){break d}p=v[b+324>>2];if(p&8){break d}q=C(C(L*L)+C(C(N*N)+C(M*M)));o=C(K(q));E=z[e+40>>2];if(!(oC(0)){o=C(C(1)/o);y=C(L*o);r=C(N*o);J=C(M*o)}z[n+8>>2]=E*y;z[n+4>>2]=E*J;z[n>>2]=E*r;v[b+324>>2]=p&-9;v[n+12>>2]=0;p=v[s+20>>2];v[n+32>>2]=v[s+16>>2];v[n+36>>2]=p;p=v[s+12>>2];v[n+24>>2]=v[s+8>>2];v[n+28>>2]=p;p=v[s+4>>2];v[n+16>>2]=v[s>>2];v[n+20>>2]=p;kT(b,c,d,g,e,n,n- -64|0,1,n+12|0,h,i,3,l,m);p=v[n+36>>2];v[s+16>>2]=v[n+32>>2];v[s+20>>2]=p;p=v[n+28>>2];v[s+8>>2]=v[n+24>>2];v[s+12>>2]=p;p=v[n+20>>2];v[s>>2]=v[n+16>>2];v[s+4>>2]=p}v[b+96>>2]=2;v[n+12>>2]=0;if(O){q=z[b+260>>2];o=z[b+264>>2];z[n+88>>2]=G-C(u*z[b+268>>2]);z[n+84>>2]=H-C(u*o);z[n+80>>2]=I-C(u*q)}x=F-+W;v[b+324>>2]=v[b+324>>2]&-5;v[m>>2]=0;v[l>>2]=0;v[b+176>>2]=-1;e:{f:{g:{if(!(!kT(b,c,d,g,e,n+80|0,n- -64|0,(U&2)>>>1|0?(X|0)==1?10:1:1,n+12|0,h,i,2,l,m)|!v[n+12>>2])){if(B<=C(0)){t[a|0]=k|4}if(!w[b+297|0]){break e}k=v[b+324>>2];if((k&56)!=8){break g}o=C(C(z[b+140>>2]*z[b+268>>2])+C(C(z[b+132>>2]*z[b+260>>2])+C(z[b+136>>2]*z[b+264>>2])));if(!(o>=C(0))|!(o>2])|(!j|!(+z[b+308>>2]>x+ +u))){break g}a=k|1;v[b+324>>2]=a;if(k&2){break f}break e}if(!w[b+297|0]){break e}}a=v[b+324>>2]}if(!(B<=C(0))|a&48|(!(a&4)|!(z[b+280>>2]>2]-x)))){break e}G=z[b+268>>2];H=z[b+260>>2];I=z[b+264>>2];o=C(C(z[b+128>>2]*G)+C(C(z[b+120>>2]*H)+C(z[b+124>>2]*I)));if(!(o>=C(0))|!(o>2])){break e}v[b+324>>2]=a|1;if(!(a&2)){break e}v[b+324>>2]=a|65;J=z[f+8>>2];q=z[f>>2];o=z[f+4>>2];S=A[e+24>>3];T=A[e+8>>3];x=A[e+16>>3];v[n+12>>2]=0;x=S*+G+(T*+H+x*+I);o=C((x>F?C(x-F):C(0))+C(D(C(C(J*G)+C(C(q*H)+C(I*o))))));z[n+24>>2]=o*C(-G);z[n+20>>2]=o*C(-I);z[n+16>>2]=o*C(-H);kT(b,c,d,g,e,n+16|0,n- -64|0,10,n+12|0,h>o?C(o/C(10)):h,i,0,l,m);v[b+324>>2]=v[b+324>>2]&-65}xa=n+112|0}function gM(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;j=xa-544|0;xa=j;a:{if(!v[a+100>>2]){break a}n=v[a+188>>2];v[a+188>>2]=v[a+192>>2];f=v[a+132>>2];l=v[a+156>>2];k=v[a+144>>2];m=v[a+96>>2];c=-1;while(1){d=f+(v[(e<<2)+m>>2]<<3)|0;b=v[d+4>>2];d=v[d>>2];v[(d<<2)+l>>2]=1073741821;v[(b<<2)+l>>2]=1073741821;c=c>>>0>d>>>0?d:c;e=e+1|0;g=v[a+100>>2];if(e>>>0>>0){continue}break}i=(v[a+188>>2]<<1)+2|0;if((i|0)!=(c|0)){h=v[a+132>>2];b=c;while(1){b:{if((c|0)==(i|0)){break b}while(1){e=c<<2;f=e+l|0;if(v[f>>2]==1073741821){c=c+1|0;if((i|0)!=(c|0)){continue}break b}break}c:{if((b|0)==(c|0)){break c}d=b<<2;v[d+k>>2]=v[e+k>>2];e=d+l|0;d=v[f>>2];v[e>>2]=d;if((d&-2)==1073741822){break c}v[(h+(d<<2&-8)|0)+((d&1)<<2)>>2]=b}b=b+1|0;c=c+1|0;if((i|0)!=(c|0)){continue}}break}g=v[a+100>>2]}i=v[a+160>>2];k=v[a+148>>2];d:{e:{if(!g){g=(v[a+188>>2]<<1)+2|0;c=-1;break e}f=v[a+136>>2];g=0;c=-1;while(1){d=f+(v[(g<<2)+m>>2]<<3)|0;b=v[d+4>>2];d=v[d>>2];v[i+(d<<2)>>2]=1073741821;v[i+(b<<2)>>2]=1073741821;c=c>>>0>d>>>0?d:c;b=v[a+100>>2];g=g+1|0;if(b>>>0>g>>>0){continue}break}g=(v[a+188>>2]<<1)+2|0;if((g|0)==(c|0)){break d}}h=v[a+136>>2];b=c;f:while(1){g:{if((c|0)==(g|0)){break g}while(1){e=c<<2;f=e+i|0;if(v[f>>2]!=1073741821){h:{if((b|0)==(c|0)){break h}d=b<<2;v[d+k>>2]=v[e+k>>2];e=d+i|0;d=v[f>>2];v[e>>2]=d;if((d&-2)==1073741822){break h}v[(h+(d<<2&-8)|0)+((d&1)<<2)>>2]=b}b=b+1|0;c=c+1|0;if((g|0)!=(c|0)){continue f}break g}c=c+1|0;if((g|0)!=(c|0)){continue}break}}break}b=v[a+100>>2]}i=v[a+164>>2];k=v[a+152>>2];i:{j:{if(!b){g=(v[a+188>>2]<<1)+2|0;c=-1;break j}f=v[a+140>>2];g=0;c=-1;while(1){d=f+(v[(g<<2)+m>>2]<<3)|0;b=v[d+4>>2];d=v[d>>2];v[i+(d<<2)>>2]=1073741821;v[i+(b<<2)>>2]=1073741821;c=c>>>0>d>>>0?d:c;b=v[a+100>>2];g=g+1|0;if(b>>>0>g>>>0){continue}break}g=(v[a+188>>2]<<1)+2|0;if((g|0)==(c|0)){break i}}h=v[a+140>>2];b=c;k:while(1){l:{if((c|0)==(g|0)){break l}while(1){e=c<<2;f=e+i|0;if(v[f>>2]!=1073741821){m:{if((b|0)==(c|0)){break m}d=b<<2;v[d+k>>2]=v[e+k>>2];e=d+i|0;d=v[f>>2];v[e>>2]=d;if((d&-2)==1073741822){break m}v[(h+(d<<2&-8)|0)+((d&1)<<2)>>2]=b}b=b+1|0;c=c+1|0;if((g|0)!=(c|0)){continue k}break l}c=c+1|0;if((g|0)!=(c|0)){continue}break}}break}b=v[a+100>>2]}if(b){e=v[a+140>>2];f=v[a+136>>2];d=v[a+132>>2];c=0;while(1){h=v[(c<<2)+m>>2]<<3;b=h+d|0;v[b>>2]=1073741821;v[b+4>>2]=1073741821;b=f+h|0;v[b>>2]=1073741821;v[b+4>>2]=1073741821;b=e+h|0;v[b>>2]=1073741821;v[b+4>>2]=1073741821;c=c+1|0;if(c>>>0>2]){continue}break}}b=v[a+128>>2];d=(b>>>5|0)+1|0;f=d<<2;e=j+24|0;if(b>>>0>=4096){b=v[37696]+12|0;e=Ba[v[v[b>>2]+8>>2]](b,f,24422,18213,56)|0}v[j+536>>2]=e;c=0;I9(e,0,f);v[j+12>>2]=d|-2147483648;e=v[j+536>>2];v[j+8>>2]=e;if(v[a+100>>2]){f=v[a+96>>2];while(1){d=v[f+(c<<2)>>2];b=e+(d>>>3&536870908)|0;v[b>>2]=v[b>>2]|1<>>0>2]){continue}break}}h=0;e=a+216|0;c=v[e+28>>2];if(c){f=v[j+8>>2];while(1){b=v[e+20>>2]+(h<<3)|0;d=v[b+4>>2];b=v[b>>2];n:{if(v[(d>>>3&536870908)+f>>2]>>>d&1?1:v[(b>>>3&536870908)+f>>2]>>>b&1){b=b|d<<16;b=(b<<15^-1)+b|0;b=B(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;UL(e,v[e+36>>2]&(b>>16^b),h);c=v[e+28>>2];f=v[j+8>>2];break n}h=h+1|0}if(c>>>0>h>>>0){continue}break}}b=n-v[a+100>>2]|0;v[a+188>>2]=b;v[a+192>>2]=b-v[a+92>>2];b=v[j+8>>2];if(!(!b|v[j+12>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}b=v[j+536>>2];if((b|0)==(j+24|0)|!b){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}xa=j+544|0} -function zZ(a){var b=0,c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=0,j=0,k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=0,x=0,y=0,A=C(0),E=C(0),F=0,G=0,H=0;l=xa-48|0;xa=l;b=v[a>>2];c=v[b+4360>>2];if(!(!c|c>>>0<17)){F=v[b+4356>>2];u=a+1288|0;x=a+4|0;G=(c>>>0)/17|0;while(1){c=B(y,68)+F|0;h=v[c+40>>2];H=v[c>>2];i=v[c+48>>2];j=v[c+44>>2];a:{b:{c:{d:{e:{f:{g:{h:{e=z[c+12>>2];m=C(z[c+24>>2]-e);o=C(z[c+36>>2]-e);d=z[c+4>>2];p=C(z[c+16>>2]-d);q=C(z[c+28>>2]-d);g=z[c+8>>2];r=C(z[c+20>>2]-g);s=C(z[c+32>>2]-g);f=C(C(m*o)+C(C(p*q)+C(r*s)));k=C(e-z[a+2164>>2]);d=C(d-z[a+2156>>2]);g=C(g-z[a+2160>>2]);e=C(C(k*o)+C(C(d*q)+C(s*g)));d=C(C(k*m)+C(C(d*p)+C(r*g)));g=C(C(o*o)+C(C(q*q)+C(s*s)));A=C(C(f*e)-C(d*g));k=C(C(m*m)+C(C(p*p)+C(r*r)));n=C(C(f*d)-C(e*k));E=C(C(k*g)-C(f*f));if(C(A+n)<=C(D(E))){if(A=C(0)){break g}if(g<=C(-e)){break e}break d}if(e>=C(0)){break g}if(!(g<=C(-e))){break d}break e}if(!(n=C(0)){break g}if(!(k<=C(-d))){break c}break f}i:{if(Ad){if(C(g+C(k-C(f+f)))<=C(n-d)){break f}break i}if(n<=C(0)){break e}if(!(e>=C(0))){break d}break g}if(ne){if(C(g+C(k-C(f+f)))<=C(n-e)){break e}break i}if(n<=C(0)){break f}if(!(d>=C(0))){break c}break g}e=C(C(C(g+e)-f)-d);if(e<=C(0)){break e}if(e>=C(g+C(k-C(f+f)))){break f}}h=i>>>0>j>>>0?j:i;i=i>>>0>>0?j:i;b=h<<16|i;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=w[(((b>>>16^b)&127)+a|0)+1156|0];if((b|0)==255){break b}while(1){j=(b<<3)+x|0;if((h|0)==v[j>>2]&(i|0)==v[j+4>>2]){break a}b=w[(a+b|0)+1028|0];if((b|0)!=255){continue}break}break b}if(E!=C(0)){break b}}b=w[((h&127)+a|0)+1928|0];if((b|0)==255){break b}while(1){if((h|0)==v[(b<<2)+u>>2]){break a}b=w[(a+b|0)+1800|0];if((b|0)!=255){continue}break}break b}b=w[((j&127)+a|0)+1928|0];if((b|0)==255){break b}while(1){if((j|0)==v[(b<<2)+u>>2]){break a}b=w[(a+b|0)+1800|0];if((b|0)!=255){continue}break}break b}b=w[((i&127)+a|0)+1928|0];if((b|0)==255){break b}while(1){if((i|0)==v[(b<<2)+u>>2]){break a}b=w[(a+b|0)+1800|0];if((b|0)!=255){continue}break}break b}j=h>>>0>>0?h:i;h=h>>>0>i>>>0?h:i;b=j<<16|h;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=w[(((b>>>16^b)&127)+a|0)+1156|0];if((b|0)==255){break b}while(1){i=(b<<3)+x|0;if((j|0)==v[i>>2]&(h|0)==v[i+4>>2]){break a}b=w[(a+b|0)+1028|0];if((b|0)!=255){continue}break}break b}i=h>>>0>>0?h:j;h=h>>>0>j>>>0?h:j;b=i<<16|h;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=w[(((b>>>16^b)&127)+a|0)+1156|0];if((b|0)==255){break b}while(1){j=(b<<3)+x|0;if((i|0)==v[j>>2]&(h|0)==v[j+4>>2]){break a}b=w[(a+b|0)+1028|0];if((b|0)!=255){continue}break}}f=C(0);e=C(0);d=C(0);g=C(C(p*s)-C(q*r));k=C(C(r*o)-C(s*m));m=C(C(m*q)-C(o*p));o=C(C(g*g)+C(C(k*k)+C(m*m)));if(o>C(0)){f=C(C(1)/C(K(o)));d=C(g*f);e=C(m*f);f=C(k*f)}z[l+40>>2]=d;z[l+32>>2]=f;z[l+36>>2]=e;b=c+4|0;g=z[b+8>>2];k=C(g*d);d=z[b>>2];m=C(d*f);f=z[b+4>>2];z[l+44>>2]=-C(k+C(m+C(e*f)));e=z[c+28>>2];k=z[c+16>>2];m=z[c+32>>2];o=z[c+20>>2];z[l+24>>2]=C(C(g+z[c+24>>2])+z[c+36>>2])*C(.3333333432674408);z[l+20>>2]=C(m+C(f+o))*C(.3333333432674408);z[l+16>>2]=C(e+C(d+k))*C(.3333333432674408);z[l>>2]=z[c+52>>2];z[l+4>>2]=z[c+56>>2];z[l+8>>2]=z[c+60>>2];if(!CZ(a,l+32|0,b,l+16|0,l,z[c+64>>2],H)){break a}t[a+2224|0]=1}y=y+1|0;if((G|0)!=(y|0)){continue}break}}xa=l+48|0}function oz(a,b,c,d,e,f){var g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);h=v[a+36>>2];t=z[h+140>>2];a:{b:{c:{d:{e:{if(c){i=z[h+8>>2];g=z[e+24>>2];k=C(g+g);m=z[h>>2];g=z[e+16>>2];j=C(g+g);g=z[e+20>>2];l=C(g+g);n=z[h+4>>2];o=C(C(i*k)+C(C(m*j)+C(l*n)));x=z[e+8>>2];y=z[e>>2];w=z[e+4>>2];g=z[h+124>>2];A=g==C(0)?C(1):g;g=z[h+12>>2];q=C(C(g*g)+C(-.5));r=C(C(i*o)+C(C(k*q)-C(g*C(C(m*l)-C(j*n)))));p=z[h+120>>2];B=p>C(0)?C(C(1)/p):C(1);p=C(C(m*o)+C(C(j*q)-C(g*C(C(n*k)-C(l*i)))));s=z[h+112>>2];s=s>C(0)?C(C(1)/s):C(1);D=z[h+116>>2];D=D>C(0)?C(C(1)/D):C(1);m=C(C(n*o)+C(C(l*q)-C(g*C(C(i*j)-C(k*m)))));k=C(C(C(C(x*x)+C(C(y*y)+C(w*w)))+C(A*C(C(C(r*r)*B)+C(C(C(p*p)*s)+C(D*C(m*m))))))*C(.5));g=C(0);if(f){c=v[h+152>>2];g=C((c>>>0<10?c:10)>>>0)}j=z[h+136>>2];i=C(z[a+60>>2]-b);l=i>C(0)?i:C(0);z[a+60>>2]=l;i=C(F(C(z[a+76>>2]+b),C(1)));if(k>=C(g*j)){v[a+60>>2]=1069547520;j=f?i:C(1);break e}j=C(1);if(!f){break e}if(g>C(1)){g=C(C(b*C(-.5))+C(1));z[h+72>>2]=g*z[h+72>>2];z[h+68>>2]=g*z[h+68>>2];z[h+64>>2]=g*z[h+64>>2];z[h+80>>2]=g*z[h+80>>2];z[h+84>>2]=g*z[h+84>>2];z[h+88>>2]=g*z[h+88>>2];i=C(C((f?i:C(1))*C(.75))+C(.02500000037252903))}g=z[h+136>>2];z[a+76>>2]=i;f=a+28|0;c=u[a+28>>1]&1;if(!(k>2]=z[a>>2];z[h+4>>2]=z[a+4>>2];z[h+8>>2]=z[a+8>>2];z[h+12>>2]=z[a+12>>2];z[h+16>>2]=z[a+16>>2];z[h+20>>2]=z[a+20>>2];z[h+24>>2]=z[a+24>>2];c=c?1:3;break c}if(d){g=C(1);f:{if(!f){break f}c=v[h+152>>2];if(c>>>0<2){break f}g=C(C(1)/C(c>>>0))}z[a+76>>2]=g}if(!(tt)){break b}o=z[h+120>>2];x=z[h+116>>2];j=z[e+24>>2];n=z[e+20>>2];y=z[h+112>>2];i=z[h>>2];l=z[e+16>>2];g=z[h+12>>2];k=z[h+4>>2];m=z[h+8>>2];r=z[e+8>>2];q=z[e+4>>2];w=C(z[e>>2]+z[a+48>>2]);z[a+48>>2]=w;q=C(q+z[a+52>>2]);z[a+52>>2]=q;r=C(r+z[a+56>>2]);z[a+56>>2]=r;j=C(j+j);l=C(l+l);n=C(n+n);p=C(C(m*j)+C(C(i*l)+C(k*n)));A=C(C(g*g)+C(-.5));B=C(C(C(i*p)+C(C(l*A)-C(g*C(C(k*j)-C(n*m)))))+z[a+64>>2]);z[a+64>>2]=B;s=C(C(C(k*p)+C(C(n*A)-C(g*C(C(m*l)-C(j*i)))))+z[a+68>>2]);z[a+68>>2]=s;g=C(C(C(m*p)+C(C(j*A)-C(g*C(C(i*n)-C(l*k)))))+z[a+72>>2]);z[a+72>>2]=g;i=C(C(C(g*g)*(o>C(0)?C(C(1)/o):C(1)))+C(C(C(B*B)*(y>C(0)?C(C(1)/y):C(1)))+C((x>C(0)?C(C(1)/x):C(1))*C(s*s))));g=z[h+124>>2];i=C(C(C(C(r*r)+C(C(w*w)+C(q*q)))+C(i*(g==C(0)?C(1):g)))*C(.5));k=C(v[h+148>>2]+1>>>0);g=C(z[h+132>>2]*k);if(!(i>=g)){break b}v[a+72>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;v[a+56>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;if(g!=C(0)){g=C(i/g);g=C((g>2]=b;u[a+28>>1]=(t==C(0))<<3;return b}z[a+76>>2]=j;f=a+28|0;c=u[a+28>>1]&1}c=c<<2}u[f>>1]=c;if(!(tt)){break b}g=C(y+z[a+48>>2]);z[a+48>>2]=g;i=C(p+z[a+64>>2]);z[a+64>>2]=i;j=C(w+z[a+52>>2]);z[a+52>>2]=j;l=C(x+z[a+56>>2]);z[a+56>>2]=l;m=C(m+z[a+68>>2]);z[a+68>>2]=m;n=C(r+z[a+72>>2]);z[a+72>>2]=n;o=z[h+132>>2];if(!(k>=o)){break b}g=C(C(C(C(l*l)+C(C(g*g)+C(j*j)))+C(A*C(C(C(n*n)*B)+C(C(C(i*i)*s)+C(D*C(m*m))))))*C(.5));i=C(v[h+148>>2]+1>>>0);k=C(o*i);if(!(g>=k)){break b}v[a+72>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;v[a+56>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;if(o!=C(0)){g=C(g/k);g=C((g>2]=b;if(t!=C(0)){break a}u[f>>1]=c|8;return b}b=C(t-b);b=b>C(0)?b:C(0);z[h+144>>2]=b}return b}function E2(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=C(0),x=C(0),y=C(0),A=0,D=0,E=0,F=0;i=xa-192|0;xa=i;a:{b:{if(w[h|0]&16){break b}z[i+96>>2]=z[c>>2];z[i+100>>2]=z[c+4>>2];k=z[c+8>>2];z[i+108>>2]=b;z[i+104>>2]=k;if(!s$(i+96|0,a)){break b}v[f>>2]=0;b=z[d>>2];e=z[d+4>>2];z[g+8>>2]=-z[d+8>>2];z[g+4>>2]=-e;z[g>>2]=-b;t=1;break a}EV(i+96|0,a+36|0,a+48|0,a,a+12|0,a+24|0);E=i+76|0;h=140784;while(1){F=w[h+1|0];A=i+96|0;s=A+B(w[h|0],12)|0;z[i+64>>2]=z[s>>2];z[i+68>>2]=z[s+4>>2];z[i+72>>2]=z[s+8>>2];s=B(F,12)+A|0;z[i+76>>2]=z[s>>2];z[i+80>>2]=z[s+4>>2];k=z[s+8>>2];z[i+88>>2]=b;z[i+84>>2]=k;c:{if(!ZW(c,d,i- -64|0,E,b,i+48|0)){break c}k=z[i+48>>2];if(!(k>=C(0))|!(e>=k)){break c}q=z[i+72>>2];j=C(z[i+84>>2]-q);r=z[i+64>>2];l=C(z[i+76>>2]-r);p=C(C(k*z[d+8>>2])+z[c+8>>2]);u=C(C(k*z[d>>2])+z[c>>2]);m=z[i+68>>2];n=C(z[i+80>>2]-m);x=C(C(k*z[d+4>>2])+z[c+4>>2]);o=C(C(C(p-q)*j)+C(C(C(u-r)*l)+C(n*C(x-m))));e=C(0);d:{if(o<=C(0)){break d}y=C(C(j*j)+C(C(l*l)+C(n*n)));e=C(1);if(y<=o){break d}e=C(o/y)}j=C(C(q+C(j*e))-p);z[g+8>>2]=j;n=C(C(m+C(n*e))-x);z[g+4>>2]=n;e=C(C(r+C(l*e))-u);z[g>>2]=e;t=1;l=C(K(C(C(j*j)+C(C(e*e)+C(n*n)))));if(l>C(0)){m=j;j=C(C(1)/l);z[g+8>>2]=m*j;z[g+4>>2]=n*j;z[g>>2]=e*j}e=k}h=h+2|0;D=D+1|0;if((D|0)!=12){continue}break}k=z[a+16>>2];j=z[a+20>>2];l=z[a+8>>2];n=z[a+4>>2];q=z[a>>2];r=z[a+12>>2];u=z[a+32>>2];m=C(z[c+8>>2]-z[a+44>>2]);x=z[a+24>>2];o=C(z[c>>2]-z[a+36>>2]);y=z[a+28>>2];p=C(z[c+4>>2]-z[a+40>>2]);z[i+72>>2]=C(u*m)+C(C(x*o)+C(y*p));z[i+68>>2]=C(j*m)+C(C(r*o)+C(k*p));z[i+64>>2]=C(l*m)+C(C(q*o)+C(n*p));m=z[d+8>>2];o=z[d>>2];p=z[d+4>>2];z[i+56>>2]=C(u*m)+C(C(x*o)+C(y*p));z[i+52>>2]=C(j*m)+C(C(r*o)+C(k*p));z[i+48>>2]=C(l*m)+C(C(q*o)+C(n*p));k=z[a+48>>2];j=z[a+52>>2];z[i+28>>2]=j;l=z[a+56>>2];z[i+32>>2]=l;k=C(k+b);z[i+24>>2]=k;z[i+16>>2]=-l;z[i+12>>2]=-j;z[i+8>>2]=-k;c=q$(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=z[i+44>>2];if(!(k>=C(-9999999747378752e-21))|!(e>=k)){break e}n=z[a+24>>2];q=z[a>>2];r=z[a+12>>2];m=z[a+28>>2];o=z[a+4>>2];p=z[a+16>>2];c=B(c,12)+103440|0;e=z[c>>2];j=z[c+4>>2];l=z[c+8>>2];z[g+8>>2]=C(C(e*z[a+8>>2])+C(j*z[a+20>>2]))+C(l*z[a+32>>2]);z[g+4>>2]=C(C(e*o)+C(j*p))+C(l*m);z[g>>2]=C(C(e*q)+C(j*r))+C(l*n);e=k>C(0)?k:C(0);t=1}k=z[a+48>>2];z[i+24>>2]=k;j=z[a+52>>2];l=z[a+56>>2];z[i+32>>2]=l;j=C(j+b);z[i+28>>2]=j;z[i+16>>2]=-l;z[i+12>>2]=-j;z[i+8>>2]=-k;c=q$(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=z[i+44>>2];if(!(k>=C(-9999999747378752e-21))|!(e>=k)){break f}n=z[a+24>>2];q=z[a>>2];r=z[a+12>>2];m=z[a+28>>2];o=z[a+4>>2];p=z[a+16>>2];c=B(c,12)+103440|0;e=z[c>>2];j=z[c+4>>2];l=z[c+8>>2];z[g+8>>2]=C(C(e*z[a+8>>2])+C(j*z[a+20>>2]))+C(l*z[a+32>>2]);z[g+4>>2]=C(C(e*o)+C(j*p))+C(l*m);z[g>>2]=C(C(e*q)+C(j*r))+C(l*n);e=k>C(0)?k:C(0);t=1}k=z[a+48>>2];z[i+24>>2]=k;j=z[a+52>>2];z[i+28>>2]=j;b=C(z[a+56>>2]+b);z[i+32>>2]=b;z[i+16>>2]=-b;z[i+12>>2]=-j;z[i+8>>2]=-k;c=q$(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=z[i+44>>2];if(!(b>=C(-9999999747378752e-21))|!(b<=e)){break g}l=z[a+24>>2];n=z[a>>2];q=z[a+12>>2];r=z[a+28>>2];m=z[a+4>>2];o=z[a+16>>2];c=B(c,12)+103440|0;e=z[c>>2];k=z[c+4>>2];j=z[c+8>>2];z[g+8>>2]=C(C(e*z[a+8>>2])+C(k*z[a+20>>2]))+C(j*z[a+32>>2]);z[g+4>>2]=C(C(e*m)+C(k*o))+C(j*r);z[g>>2]=C(C(e*n)+C(k*q))+C(j*l);e=b>C(0)?b:C(0);t=1}z[f>>2]=e}xa=i+192|0;return t} -function F$(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0);B=z[b+8>>2];t=z[e+8>>2];h=C(B-t);n=z[f+8>>2];D=z[b>>2];u=z[e>>2];j=C(D-u);o=z[f>>2];E=z[b+4>>2];H=z[e+4>>2];g=C(E-H);r=z[f+4>>2];s=C(C(h*n)+C(C(j*o)+C(g*r)));a:{if(s<=C(0)){break a}y=C(C(n*n)+C(C(o*o)+C(r*r)));if(y<=s){h=C(h-n);g=C(g-r);j=C(j-o);break a}s=C(s/y);h=C(h-C(n*s));g=C(g-C(r*s));j=C(j-C(o*s))}b=1;N=z[e+24>>2];b:{if(C(C(h*h)+C(C(j*j)+C(g*g)))<=C(N*N)){break b}b=0;j=z[a+8>>2];g=z[a>>2];h=z[a+4>>2];A=C(N*C(K(C(C(j*j)+C(C(g*g)+C(h*h))))));l=C(C(t*j)+C(C(u*g)+C(H*h)));O=z[e+20>>2];P=z[e+12>>2];Q=z[e+16>>2];m=C(C(O*j)+C(C(P*g)+C(h*Q)));a=l>m;s=z[d+8>>2];y=z[d>>2];I=z[d+4>>2];i=C(C(s*j)+C(C(y*g)+C(h*I)));J=z[c+8>>2];L=z[c>>2];M=z[c+4>>2];k=C(C(J*j)+C(C(L*g)+C(h*M)));j=C(C(B*j)+C(C(D*g)+C(E*h)));g=j>k?k:j;if(C(A+(a?l:m))<(g>i?i:g)){break b}j=j(i>j?i:j)){break b}i=C(J-B);p=C(t-B);k=C(L-D);v=C(u-D);w=C(H-E);l=C(M-E);q=C(C(i*p)+C(C(k*v)+C(w*l)));g=C(-C(C(n*p)+C(C(o*v)+C(w*r))));j=z[f+16>>2];x=C(C(i*i)+C(C(k*k)+C(l*l)));A=z[f+12>>2];m=C(C(i*n)+C(C(k*o)+C(r*l)));h=C(C(x*A)-C(m*m));if(h!=C(0)){h=C(C(C(q*A)+C(m*g))/h)}else{h=C(0)}h=C(F(C(G(h,C(0))),C(1)));g=C(j*C(C(h*m)+g));c:{if(gC(1))){break c}g=C(1);h=C(F(C(G(C(C(q+m)/x),C(0))),C(1)))}i=C(C(p+C(n*g))-C(i*h));k=C(C(v+C(o*g))-C(k*h));g=C(C(w+C(r*g))-C(l*h));m=C(N*C(K(C(C(i*i)+C(C(k*k)+C(g*g))))));q=C(C(t*i)+C(C(u*k)+C(H*g)));p=C(C(O*i)+C(C(P*k)+C(Q*g)));a=q>p;h=C(C(s*i)+C(C(y*k)+C(I*g)));l=C(C(J*i)+C(C(L*k)+C(M*g)));g=C(C(B*i)+C(C(D*k)+C(E*g)));i=g>l?l:g;if(C(m+(a?q:p))<(h(gC(1))){break d}g=C(1);h=C(F(C(G(C(C(q+m)/x),C(0))),C(1)))}i=C(C(p+C(n*g))-C(i*h));k=C(C(v+C(o*g))-C(k*h));g=C(C(w+C(r*g))-C(l*h));m=C(N*C(K(C(C(i*i)+C(C(k*k)+C(g*g))))));q=C(C(t*i)+C(C(u*k)+C(H*g)));p=C(C(O*i)+C(C(P*k)+C(Q*g)));a=q>p;h=C(C(s*i)+C(C(y*k)+C(I*g)));l=C(C(J*i)+C(C(L*k)+C(M*g)));g=C(C(B*i)+C(C(D*k)+C(E*g)));i=g>l?l:g;if(C(m+(a?q:p))<(h(gC(1))){break e}g=C(1);h=C(F(C(G(C(C(q+m)/x),C(0))),C(1)))}j=C(C(p+C(n*g))-C(i*h));n=C(C(v+C(o*g))-C(k*h));g=C(C(w+C(r*g))-C(l*h));r=C(N*C(K(C(C(j*j)+C(C(n*n)+C(g*g))))));t=C(C(t*j)+C(C(u*n)+C(H*g)));u=C(C(O*j)+C(C(P*n)+C(Q*g)));a=t>u;h=C(C(s*j)+C(C(y*n)+C(I*g)));o=C(C(J*j)+C(C(L*n)+C(M*g)));j=C(C(B*j)+C(C(D*n)+C(E*g)));g=j>o?o:j;j=jh?h:g)^-1)&!(C((a?u:t)-r)>(h>j?h:j))}return b}function fL(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=v[b+24>>2];c=v[a+4>>2];e=v[b+36>>2];v[c+232>>2]=e;v[c+228>>2]=d;v[c+104>>2]=e;v[c+100>>2]=d;v[c+12>>2]=e;v[c+8>>2]=d;d=v[b+40>>2];if(y[c+320>>2]>>0){MK(c+316|0,d)}v[a+32>>2]=v[b+28>>2];v[a+36>>2]=v[b+32>>2];k=v[b+20>>2];if(k){j=v[b+16>>2];while(1){c=0;e=0;d=v[a+4>>2];f=v[d+328>>2];g=v[j>>2];l=g>>>5|0;a:{if(f>>>0>l>>>0){h=g&31;c=v[d+324>>2];break a}h=g&31;i=(g+128>>>5|0)+((h|0)!=0)|0;if(i){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,i<<2,24422,13489,855)|0;f=v[d+328>>2]}if(f){H9(c,v[d+324>>2],f<<2);e=v[d+328>>2]}if((e|0)!=(i|0)){I9((e<<2)+c|0,0,i-e<<2)}e=v[d+324>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[d+328>>2]=i;v[d+324>>2]=c}c=(l<<2)+c|0;v[c>>2]=v[c>>2]|1<>2];b:{if(l>>>0>>0){h=g&31;c=v[d+332>>2];break b}e=0;c=0;h=g&31;i=(g+128>>>5|0)+((h|0)!=0)|0;if(i){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,i<<2,24422,13489,855)|0;f=v[d+336>>2]}if(f){H9(c,v[d+332>>2],f<<2);e=v[d+336>>2]}if((e|0)!=(i|0)){I9((e<<2)+c|0,0,i-e<<2)}e=v[d+332>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[d+336>>2]=i;v[d+332>>2]=c}c=(l<<2)+c|0;v[c>>2]=v[c>>2]|1<>2]+(g<<2)|0;e=v[f>>2];switch(e&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=e>>>3|0;g:{if(e&4){v[v[c+64>>2]+(d<<2)>>2]=-1;v[c+88>>2]=v[c+88>>2]+1;break g}v[v[c+36>>2]+(d<<2)>>2]=-1}v[f>>2]=-1;j=j+4|0;k=k-1|0;if(k){continue}break}}c=xa-1584|0;xa=c;e=v[b+4>>2];h:{if(!e){break h}k=v[b+28>>2];j=v[b>>2];v[c+1064>>2]=0;v[c+1068>>2]=0;v[c+544>>2]=0;v[c+548>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;d=c+544|0;v[c+12>>2]=d;v[c+8>>2]=d;v[c>>2]=c+1064;v[c+4>>2]=c+24;while(1){f=v[a+4>>2];h=v[j>>2];i=v[k+(h<<2)>>2]&3;d=v[(c|i<<2)>>2];g=v[d+4>>2];v[d+4>>2]=g>>>0>h>>>0?g:h;g=d+8|0;l=v[d>>2];v[g+(l<<2)>>2]=h;e=e-1|0;h=l+1|0;i:{if((h|0)==128){v[d>>2]=0;j:{switch(i|0){case 0:YK(f,g,128,v[d+4>>2]);v[d+4>>2]=0;break i;case 1:_K(f,g,128,v[d+4>>2]);v[d+4>>2]=0;break i;default:break j}}ZK(f,g,128,v[d+4>>2]);v[d+4>>2]=0;break i}v[d>>2]=h}j=j+4|0;if(e){continue}break}d=v[c+1064>>2];if(d){YK(v[a+4>>2],c+1072|0,d,v[c+1068>>2])}d=v[c+24>>2];if(d){_K(v[a+4>>2],c+32|0,d,v[c+28>>2])}d=v[c+544>>2];if(!d){break h}ZK(v[a+4>>2],c+552|0,d,v[c+548>>2])}xa=c+1584|0;j=v[b+8>>2];k:{if(!j){break k}k=v[b+12>>2];if(!k){break k}while(1){c=0;e=0;b=v[a+4>>2];f=v[b+328>>2];d=v[j>>2];i=d>>>5|0;l:{if(f>>>0>i>>>0){h=d&31;c=v[b+324>>2];break l}h=d&31;g=(d+128>>>5|0)+((h|0)!=0)|0;if(g){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,g<<2,24422,13489,855)|0;f=v[b+328>>2]}if(f){H9(c,v[b+324>>2],f<<2);e=v[b+328>>2]}if((e|0)!=(g|0)){I9((e<<2)+c|0,0,g-e<<2)}e=v[b+324>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[b+328>>2]=g;v[b+324>>2]=c}c=(i<<2)+c|0;v[c>>2]=v[c>>2]|1<>2]+(d<<2)|0;switch(v[c>>2]&3){case 1:break o;case 0:break p;default:break n}}RK(b+4|0,c,d);break m}RK(b+224|0,c,d);break m}RK(b+96|0,c,d)}j=j+4|0;k=k-1|0;if(k){continue}break}}a=v[a+4>>2];if(v[a+44>>2]|v[a+92>>2]?1:v[a+136>>2]|v[a+184>>2]|(v[a+264>>2]|v[a+312>>2])){if(v[a+44>>2]|v[a+92>>2]){TK(a+4|0,v[a+316>>2],a)}TK(a+96|0,v[a+316>>2],a);TK(a+224|0,v[a+316>>2],a);if(w[a+220|0]){b=v[a+200>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+200>>2]=0;b=v[a+196>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+196>>2]=0}v[a+192>>2]=-2147483648}}function mx(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);f=f|0;g=g|0;h=C(h);i=C(i);j=C(j);k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=C(p);var q=0,r=0,s=0,A=0,D=0,E=0,F=0,G=0,H=0,I=C(0),J=0,K=0,L=0,M=0,N=0,O=C(0),P=C(0),Q=C(0),R=0;o=xa-256|0;xa=o;v[o+236>>2]=m;v[o+248>>2]=g+12088;v[o+244>>2]=g+11824;v[o+240>>2]=g+11852;v[o+232>>2]=128228;v[o+224>>2]=0;v[o+216>>2]=0;v[o+220>>2]=0;v[o+208>>2]=0;v[o+212>>2]=1065353216;v[o+200>>2]=0;v[o+204>>2]=0;nx(v[a+656>>2],v[a+660>>2]);if(v[a+660>>2]){while(1){N=G<<5;m=N+v[a+656>>2]|0;E=x[m+10>>1];r=x[m+8>>1];D=(r|0)==65535;R=D?E:r;a:{if(x[m+22>>1]==1){J=v[m+4>>2];A=v[m+12>>2];F=v[m+16>>2];r=v[m+24>>2];H=v[r+68>>2];K=v[((H&7)<<2)+f>>2];q=v[r+20>>2];L=v[m>>2];M=v[f+32>>2];s=v[r+16>>2];z[o+60>>2]=z[s>>2];z[o+64>>2]=z[s+4>>2];z[o+68>>2]=z[s+8>>2];z[o+72>>2]=z[s+12>>2];z[o+76>>2]=z[s+16>>2];z[o+80>>2]=z[s+20>>2];z[o+84>>2]=z[s+24>>2];z[o+88>>2]=z[q>>2];z[o+92>>2]=z[q+4>>2];z[o+96>>2]=z[q+8>>2];z[o+100>>2]=z[q+12>>2];z[o+104>>2]=z[q+16>>2];z[o+108>>2]=z[q+20>>2];z[o+112>>2]=z[q+24>>2];v[o+124>>2]=v[r+12>>2];s=M+(K+(H>>>3|0)<<4)|0;q=v[s+8>>2];E=B((E|0)==65535?F:0,48)+k|0;v[o+56>>2]=E;H=B(D?A:0,48)+k|0;v[o+52>>2]=H;v[o+48>>2]=(F<<6)+l;v[o+44>>2]=(A<<6)+l;v[o+40>>2]=J;v[o+36>>2]=L;v[o+32>>2]=m;v[o+156>>2]=q;q=x[r+40>>1];t[o+137|0]=q>>>2&1;t[o+138|0]=q>>>8&1;A=q&8;v[o+116>>2]=A?8:1;F=q&16;D=8;b:{if(F){break b}D=4;if(q&1024){break b}D=q&64?1:2}v[o+120>>2]=D;I=z[(F?v[r+20>>2]+128|0:E+12|0)>>2];O=z[(A?v[r+16>>2]+128|0:H+12|0)>>2];q=w[r+44|0];P=w[r+45|0]?C(1):C(0);z[o+28>>2]=P;Q=q?C(1):C(0);z[o+16>>2]=Q;z[o+20>>2]=Q;z[o+24>>2]=P;z[o+140>>2]=z[r+52>>2];v[o+148>>2]=v[r+36>>2];q=w[r+42|0];z[o+176>>2]=I>O?O:I;v[o+144>>2]=2139095039;t[o+152|0]=q;z[o+180>>2]=z[r+72>>2];z[o+184>>2]=z[r+76>>2];lB(o+16|0,s,g,d,e,i,j,h,o+232|0);u[m+20>>1]=w[s+12|0];v[m+28>>2]=v[s+8>>2];v[r+36>>2]=v[o+148>>2];t[r+42|0]=w[o+152|0];break a}r=o+200|0;s=r;q=v[m+24>>2];A=v[q+24>>2];if(A){s=v[A+36>>2]}J=x[q+8>>1];H=v[q+20>>2];K=v[q+12>>2];A=v[q+28>>2];if(A){r=v[A+36>>2]}L=v[m+4>>2];A=v[m+12>>2];F=v[m+16>>2];M=v[m>>2];v[o+12>>2]=J;v[o+8>>2]=H;v[o+4>>2]=K;v[o+32>>2]=m;v[o>>2]=q;z[o+60>>2]=z[s>>2];z[o+64>>2]=z[s+4>>2];z[o+68>>2]=z[s+8>>2];z[o+72>>2]=z[s+12>>2];z[o+76>>2]=z[s+16>>2];z[o+80>>2]=z[s+20>>2];z[o+84>>2]=z[s+24>>2];z[o+88>>2]=z[r>>2];z[o+92>>2]=z[r+4>>2];z[o+96>>2]=z[r+8>>2];z[o+100>>2]=z[r+12>>2];z[o+104>>2]=z[r+16>>2];z[o+108>>2]=z[r+20>>2];I=z[r+24>>2];s=(E|0)==65535;v[o+56>>2]=B(s?F:0,48)+k;v[o+52>>2]=B(D?A:0,48)+k;v[o+48>>2]=(F<<6)+l;v[o+44>>2]=(A<<6)+l;v[o+40>>2]=L;v[o+36>>2]=M;z[o+112>>2]=I;z[o+132>>2]=z[q>>2];z[o+136>>2]=z[q+4>>2];v[o+144>>2]=(v[q+40>>2]<<5)+n;r=x[q+10>>1];t[o+151|0]=r>>>9&1;E=r&255;t[o+149|0]=E>>>7;t[o+148|0]=r>>>8&1;t[o+150|0]=E>>>5&1;I=z[q+44>>2];v[o+120>>2]=s?1:8;v[o+116>>2]=D?1:8;z[o+140>>2]=I;oB(o,o+16|0,o+232|0,b,c,d,e,p)}c:{if(v[m+24>>2]){r=(R&65535)<<2;m=r+v[a+408>>2]|0;q=v[m>>2];if(!q){v[r+v[a+420>>2]>>2]=G;q=v[m>>2]}v[m>>2]=q+1;break c}q=v[a+660>>2];r=G+1|0;if(q>>>0>r>>>0){m=v[a+656>>2]+N|0;while(1){q=v[a+656>>2]+(r<<5)|0;s=v[q+4>>2];v[m>>2]=v[q>>2];v[m+4>>2]=s;s=v[q+28>>2];v[m+24>>2]=v[q+24>>2];v[m+28>>2]=s;s=v[q+20>>2];v[m+16>>2]=v[q+16>>2];v[m+20>>2]=s;s=v[q+12>>2];v[m+8>>2]=v[q+8>>2];v[m+12>>2]=s;m=m+32|0;q=v[a+660>>2];r=r+1|0;if(q>>>0>r>>>0){continue}break}}v[a+660>>2]=q-1;G=G-1|0}G=G+1|0;if(G>>>0>2]){continue}break}}xa=o+256|0} -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=0,h=0,i=0,j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0,x=0,y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=0,P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=0,ca=0;f=xa-96|0;xa=f;h=v[a+444>>2];u=v[a+264>>2];i=w[v[a+476>>2]];v[f+88>>2]=0;v[f+92>>2]=0;v[f+80>>2]=0;v[f+84>>2]=0;v[f+72>>2]=0;v[f+76>>2]=0;v[f+64>>2]=0;v[f+68>>2]=0;if(!(i&1)){H=z[a+560>>2];I=z[a+572>>2];J=z[a+584>>2];Q=z[a+564>>2];R=z[a+576>>2];S=z[a+588>>2];T=z[a+568>>2];U=z[a+580>>2];V=z[a+592>>2];W=z[a+620>>2];X=z[a+608>>2];Y=z[a+596>>2];y=z[a+524>>2];r=z[a+528>>2];m=z[a+532>>2];s=z[a+624>>2];Z=z[a+612>>2];_=z[a+600>>2];F=z[a+536>>2];G=z[a+540>>2];D=z[a+544>>2];K=z[a+548>>2];t=z[u+16>>2];n=C(-t);L=z[a+552>>2];l=z[u+20>>2];M=z[a+556>>2];j=z[u+24>>2];o=C(-z[u+4>>2]);p=z[u>>2];q=z[u+8>>2];A=C(C(C(C(K*n)-C(L*l))-C(M*j))+C(C(C(z[a+616>>2]*o)-C(p*z[a+604>>2]))-C(q*z[a+628>>2])));z[f+88>>2]=A;s=C(C(C(C(F*n)-C(G*l))-C(D*j))+C(C(C(Z*o)-C(p*_))-C(q*s)));z[f+84>>2]=s;n=C(C(C(C(y*n)-C(r*l))-C(m*j))+C(C(C(X*o)-C(p*Y))-C(q*W)));z[f+80>>2]=n;D=C(C(C(D*o)-C(p*m))-C(q*M));m=C(-l);l=C(D+C(C(C(U*m)-C(t*T))-C(j*V)));z[f+72>>2]=l;r=C(C(C(C(G*o)-C(p*r))-C(q*L))+C(C(C(R*m)-C(t*Q))-C(j*S)));z[f+68>>2]=r;j=C(C(C(C(F*o)-C(p*y))-C(q*K))+C(C(C(I*m)-C(t*H))-C(j*J)));z[f+64>>2]=j}i=(c<<5)+h|0;N=v[i+8>>2];h=(b<<5)+h|0;g=v[h+8>>2];k=N&g;g=k^g;O=v[i+12>>2];h=v[h+12>>2];P=O&h;i=P;E=i^h;h=k-1|0;i=i-!k|0;if(h|i){while(1){$=v[a+452>>2];x=(aa=Qaa(h),ba=Qaa(i)+32|0,ca=h,ca?aa:ba);_w(f+32|0,($+B(x,160)|0)+120|0,v[a+348>>2]+B(x,112)|0,v[a+360>>2]+B(x,36)|0,v[a+384>>2]+B(x,76)|0,(x<<5)+u|0,f- -64|0);v[f+76>>2]=0;v[f+92>>2]=0;j=z[f+32>>2];z[f+64>>2]=j;r=z[f+36>>2];z[f+68>>2]=r;l=z[f+40>>2];z[f+72>>2]=l;n=z[f+48>>2];z[f+80>>2]=n;s=z[f+52>>2];z[f+84>>2]=s;A=z[f+56>>2];z[f+88>>2]=A;x=h;h=h&h-1;i=i&i-!x;if(h|i){continue}break}}h=k^N;i=O^P;z[f+56>>2]=A;z[f+52>>2]=s;v[f+60>>2]=0;z[f+48>>2]=n;v[f+44>>2]=0;z[f+40>>2]=l;z[f+36>>2]=r;z[f+32>>2]=j;o=A;p=s;q=n;t=l;y=r;m=j;if(g|E){while(1){x=v[a+452>>2];k=(aa=Qaa(g),ba=Qaa(E)+32|0,ca=g,ca?aa:ba);_w(f,(x+B(k,160)|0)+120|0,v[a+348>>2]+B(k,112)|0,v[a+360>>2]+B(k,36)|0,v[a+384>>2]+B(k,76)|0,(k<<5)+u|0,f- -64|0);v[f+76>>2]=0;v[f+92>>2]=0;m=z[f>>2];z[f+64>>2]=m;y=z[f+4>>2];z[f+68>>2]=y;t=z[f+8>>2];z[f+72>>2]=t;q=z[f+16>>2];z[f+80>>2]=q;p=z[f+20>>2];z[f+84>>2]=p;o=z[f+24>>2];z[f+88>>2]=o;k=g;g=g&g-1;E=E&E-!k;if(g|E){continue}break}}if(h|i){while(1){k=v[a+452>>2];g=h;g=(aa=Qaa(g),ba=Qaa(i)+32|0,ca=g,ca?aa:ba);_w(f,(k+B(g,160)|0)+120|0,v[a+348>>2]+B(g,112)|0,v[a+360>>2]+B(g,36)|0,v[a+384>>2]+B(g,76)|0,(g<<5)+u|0,f+32|0);v[f+44>>2]=0;v[f+60>>2]=0;j=z[f>>2];z[f+32>>2]=j;r=z[f+4>>2];z[f+36>>2]=r;l=z[f+8>>2];z[f+40>>2]=l;n=z[f+16>>2];z[f+48>>2]=n;s=z[f+20>>2];z[f+52>>2]=s;A=z[f+24>>2];z[f+56>>2]=A;g=h;h=g-1&g;i=i&i-!g;if(h|i){continue}break}}b=v[a+228>>2]+(b<<5)|0;F=z[b+20>>2];G=z[b+24>>2];D=z[b+16>>2];H=z[b>>2];I=z[b+4>>2];J=z[b+8>>2];v[d+28>>2]=0;z[d+24>>2]=J+t;z[d+20>>2]=I+y;z[d+16>>2]=H+m;v[d+12>>2]=0;z[d>>2]=D+q;z[d+8>>2]=G+o;z[d+4>>2]=F+p;a=v[a+228>>2]+(c<<5)|0;o=z[a+20>>2];p=z[a+24>>2];q=z[a+16>>2];t=z[a>>2];y=z[a+4>>2];m=z[a+8>>2];v[e+28>>2]=0;z[e+24>>2]=m+l;z[e+20>>2]=y+r;z[e+16>>2]=t+j;v[e+12>>2]=0;z[e>>2]=q+n;z[e+8>>2]=p+A;z[e+4>>2]=o+s;xa=f+96|0}function K3(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,u=0,x=0,z=0;m=32;d=xa-32|0;xa=d;t[d+12|0]=0;h=d-128|0;xa=h;v[d+8>>2]=h;j=b-1|0;a:{if((j|0)<=0){break a}while(1){b:{if((j|0)<=(k|0)){break b}while(1){if(j-k>>>0<=4){while(1){f=k;k=f+1|0;c=k;b=f;while(1){e=c;c=B(e,12)+a|0;g=v[c>>2];i=B(b,12)+a|0;n=v[i>>2];if(!(g>>>0>=n>>>0&((g|0)!=(n|0)|y[c+4>>2]>=y[i+4>>2]))){b=e}c=e+1|0;if((e|0)<(j|0)){continue}break}if((b|0)!=(f|0)){b=B(b,12)+a|0;v[d+24>>2]=v[b+8>>2];c=v[b+4>>2];v[d+16>>2]=v[b>>2];v[d+20>>2]=c;c=B(f,12)+a|0;v[b+8>>2]=v[c+8>>2];f=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=f;v[c+8>>2]=v[d+24>>2];b=v[d+20>>2];v[c>>2]=v[d+16>>2];v[c+4>>2]=b}if((j|0)!=(k|0)){continue}break b}}e=B(k,12)+a|0;b=v[e>>2];f=B((j+k|0)/2|0,12)+a|0;c=v[f>>2];c:{if(b>>>0<=c>>>0){if((b|0)!=(c|0)){break c}b=c;if(y[f+4>>2]>=y[e+4>>2]){break c}}v[d+24>>2]=v[e+8>>2];b=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=b;v[e+8>>2]=v[f+8>>2];b=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=b;v[f+8>>2]=v[d+24>>2];b=v[d+20>>2];v[f>>2]=v[d+16>>2];v[f+4>>2]=b;b=v[e>>2]}g=B(j,12)+a|0;c=v[g>>2];d:{if(c>>>0>=b>>>0){if((b|0)!=(c|0)){break d}c=b;if(y[g+4>>2]>=y[e+4>>2]){break d}}v[d+24>>2]=v[e+8>>2];b=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=b;v[e+8>>2]=v[g+8>>2];b=v[g+4>>2];v[e>>2]=v[g>>2];v[e+4>>2]=b;v[g+8>>2]=v[d+24>>2];b=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=b;c=v[g>>2]}b=v[f>>2];if(!(b>>>0<=c>>>0&((b|0)!=(c|0)|y[g+4>>2]>=y[f+4>>2]))){v[d+24>>2]=v[f+8>>2];b=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=b;v[f+8>>2]=v[g+8>>2];b=v[g+4>>2];v[f>>2]=v[g>>2];v[f+4>>2]=b;v[g+8>>2]=v[d+24>>2];b=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=b}v[d+24>>2]=v[f+8>>2];b=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=b;b=j-1|0;g=B(b,12)+a|0;c=g;e=v[c+4>>2];v[f>>2]=v[c>>2];v[f+4>>2]=e;v[f+8>>2]=v[c+8>>2];v[c+8>>2]=v[d+24>>2];c=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=c;c=k;while(1){n=v[g>>2];while(1){f=c;c=c+1|0;e=B(c,12)+a|0;i=v[e>>2];if(i>>>0>>0|(i|0)==(n|0)&y[e+4>>2]>2]){continue}break}while(1){b=b-1|0;i=B(b,12)+a|0;p=v[i>>2];if(n>>>0

>>0|(n|0)==(p|0)&y[g+4>>2]>2]){continue}break}if((b|0)>(c|0)){v[d+24>>2]=v[e+8>>2];f=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=f;v[e+8>>2]=v[i+8>>2];f=v[i+4>>2];v[e>>2]=v[i>>2];v[e+4>>2]=f;v[i+8>>2]=v[d+24>>2];f=v[d+20>>2];v[i>>2]=v[d+16>>2];v[i+4>>2]=f;continue}break}v[d+24>>2]=v[e+8>>2];b=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=b;v[e+8>>2]=v[g+8>>2];b=v[g+4>>2];v[e>>2]=v[g>>2];v[e+4>>2]=b;v[g+8>>2]=v[d+24>>2];b=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=b;e:{if((c-k|0)<(j-c|0)){if(m-1>>>0<=l>>>0){c=m<<3;if(c){b=v[37696];e=b+12|0;b=(r=e,s=c,u=Ba[v[v[b>>2]+20>>2]](b)|0?35339:63804,x=17218,z=155,q=v[v[e>>2]+8>>2],Ba[q](r|0,s|0,u|0,x|0,z|0)|0)}else{b=0}m=m<<1;b=H9(b,h,l<<2);c=o;o=1;if(!(!c|!h)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}h=b}b=(l<<2)+h|0;v[b>>2]=k;v[b+4>>2]=f;k=f+2|0;break e}if(m-1>>>0<=l>>>0){c=m<<3;if(c){b=v[37696];e=b+12|0;b=(z=e,x=c,u=Ba[v[v[b>>2]+20>>2]](b)|0?35339:63804,s=17218,r=155,q=v[v[e>>2]+8>>2],Ba[q](z|0,x|0,u|0,s|0,r|0)|0)}else{b=0}m=m<<1;b=H9(b,h,l<<2);c=o;o=1;if(!(!c|!h)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}h=b}b=(l<<2)+h|0;v[b>>2]=f+2;v[b+4>>2]=j;j=f}l=l+2|0;if((j|0)>(k|0)){continue}break}}if(l){b=l-2|0;k=v[(b<<2)+h>>2];j=v[((l<<2)+h|0)-4>>2];l=b;continue}break}if(!o|!h){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,h)}if(w[d+12|0]){u9(v[d+8>>2])}xa=d+32|0}function VK(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,u=0,x=0,y=0,A=0,B=0,D=0,E=0,F=C(0),G=C(0),H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=C(0),P=C(0),Q=0;h=xa-128|0;xa=h;j=v[e+40>>2];a:{b:{c:{if(!f){break c}d:{e:{if(j){o=v[c>>2];u=v[e+60>>2];x=v[e+56>>2];f=v[e+68>>2];if(f){WK(b,o,j,f,x,v[e+80>>2],u,v[e+84>>2],v[e+36>>2],v[e+64>>2])}N=v[e+36>>2];if(j>>>0>=5001){f=(j<<3)+240|0;k=v[a>>2];f:{if(k){k=Cx(k,f,1);break f}if(!f){f=j<<4;k=0;break e}k=v[37696]+12|0;k=Ba[v[v[k>>2]+8>>2]](k,f,24422,13489,373)|0}f=j<<4;l=v[a>>2];if(!l){break e}l=Cx(l,f,1);break d}XK(b,j,x,u,N,o);break c}if(g){break b}break a}l=0;if(!f){break d}l=v[37696]+12|0;l=Ba[v[v[l>>2]+8>>2]](l,f,24422,13489,373)|0}F=z[e+16>>2];O=z[e+28>>2];G=z[e+20>>2];P=z[e+32>>2];v[h+112>>2]=0;v[h+104>>2]=0;v[h+108>>2]=0;v[h+96>>2]=0;v[h+100>>2]=0;G=C(C(P+G)*C(.5));F=C(C(O+F)*C(.5));f=j<<2;g:{h:{p=v[a>>2];i:{j:{if(p){s=Cx(p,f,1);break j}if(!f){break i}s=v[37696]+12|0;s=Ba[v[v[s>>2]+8>>2]](s,f,24422,13489,373)|0}f=v[a>>2];if(f){break h}}f=v[37696]+12|0;p=Ba[v[v[f>>2]+8>>2]](f,j,24422,13489,373)|0;break g}p=Cx(f,j,1)}f=0;while(1){i=u+(f<<4)|0;i=w[((G>2])<<2|z[i>>2]>F|(G>z[i+12>>2])<<3|(F>z[i+8>>2])<<1)+92304|0];t[f+p|0]=i;i=(h+96|0)+(i<<2)|0;v[i>>2]=v[i>>2]+1;f=f+1|0;if((j|0)!=(f|0)){continue}break}f=v[h+96>>2];i=v[h+108>>2];q=v[h+104>>2];r=v[h+100>>2];v[h+64>>2]=k;B=((f<<3)+k|0)+48|0;v[h+68>>2]=B;v[h+32>>2]=l;H=(f<<4)+l|0;v[h+36>>2]=H;v[h>>2]=s;I=(f<<2)+s|0;v[h+4>>2]=I;J=(r<<4)+H|0;v[h+40>>2]=J;D=((r<<3)+B|0)+48|0;v[h+72>>2]=D;K=(r<<2)+I|0;v[h+8>>2]=K;L=(q<<4)+J|0;v[h+44>>2]=L;M=(q<<2)+K|0;v[h+12>>2]=M;r=(i<<4)+L|0;v[h+48>>2]=r;E=((q<<3)+D|0)+48|0;v[h+76>>2]=E;q=(i<<2)+M|0;v[h+16>>2]=q;i=((i<<3)+E|0)+48|0;v[h+80>>2]=i;f=0;v[h+112>>2]=0;v[h+104>>2]=0;v[h+108>>2]=0;v[h+96>>2]=0;v[h+100>>2]=0;while(1){m=w[f+p|0]<<2;y=m+(h+96|0)|0;n=v[y>>2];v[y>>2]=n+1;y=v[m+(h+32|0)>>2];A=v[m+(h- -64|0)>>2];v[v[h+m>>2]+(n<<2)>>2]=v[(f<<2)+N>>2];m=A+(n<<3)|0;A=x+(f<<3)|0;v[m>>2]=v[A>>2];v[m+4>>2]=v[A+4>>2];m=u+(f<<4)|0;A=v[m>>2];Q=v[m+4>>2];n=(n<<4)+y|0;y=v[m+12>>2];v[n+8>>2]=v[m+8>>2];v[n+12>>2]=y;v[n>>2]=A;v[n+4>>2]=Q;f=f+1|0;if((j|0)!=(f|0)){continue}break}f=v[h+96>>2];JK(a,p);f=(f<<3)+k|0;v[f>>2]=-1;v[f+40>>2]=-1;v[f+32>>2]=-1;v[f+24>>2]=-1;v[f+16>>2]=-1;v[f+8>>2]=-1;f=(v[h+100>>2]<<3)+B|0;v[f>>2]=-1;v[f+40>>2]=-1;v[f+32>>2]=-1;v[f+24>>2]=-1;v[f+16>>2]=-1;v[f+8>>2]=-1;f=(v[h+104>>2]<<3)+D|0;v[f>>2]=-1;v[f+40>>2]=-1;v[f+32>>2]=-1;v[f+24>>2]=-1;v[f+16>>2]=-1;v[f+8>>2]=-1;f=(v[h+108>>2]<<3)+E|0;v[f>>2]=-1;v[f+40>>2]=-1;v[f+32>>2]=-1;v[f+24>>2]=-1;v[f+16>>2]=-1;v[f+8>>2]=-1;f=i+(v[h+112>>2]<<3)|0;v[f>>2]=-1;v[f+40>>2]=-1;v[f+32>>2]=-1;v[f+24>>2]=-1;v[f+16>>2]=-1;v[f+8>>2]=-1;p=v[h+96>>2];XK(b,p,k,l,s,o);u=v[h+100>>2];XK(b,u,B,H,I,o);n=v[h+104>>2];XK(b,n,D,J,K,o);x=v[h+108>>2];XK(b,x,E,L,M,o);f=v[h+112>>2];XK(b,f,i,r,q,o);WK(b,o,p,f,k,i,l,r,s,q);WK(b,o,u,f,B,i,H,r,I,q);WK(b,o,n,f,D,i,J,r,K,q);WK(b,o,x,f,E,i,L,r,M,q);JK(a,s);JK(a,l);JK(a,k)}if(!g){break a}if(!j){break b}a=v[d+40>>2];if(a){WK(b,v[c>>2],j,a,v[e+56>>2],v[d+56>>2],v[e+60>>2],v[d+60>>2],v[e+36>>2],v[d+36>>2])}a=v[d+68>>2];if(!a){break b}WK(b,v[c>>2],j,a,v[e+56>>2],v[d+80>>2],v[e+60>>2],v[d+84>>2],v[e+36>>2],v[d+64>>2])}a=v[d+40>>2];if(!a){break a}f=v[e+68>>2];if(!f){break a}WK(b,v[c>>2],f,a,v[e+80>>2],v[d+56>>2],v[e+84>>2],v[d+60>>2],v[e+64>>2],v[d+36>>2])}xa=h+128|0}function S7(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),y=C(0),A=C(0),B=C(0);c=xa-176|0;xa=c;v[c+60>>2]=a;v[c+56>>2]=a;a=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=a;a=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=a;D5(c+144|0,c+112|0,e,f,g);k=z[f+20>>2];n=z[f+16>>2];m=z[c+132>>2];l=z[c+128>>2];o=z[c+136>>2];z[b+8>>2]=o-z[f+24>>2];z[b+4>>2]=m-k;z[b>>2]=l-n;k=z[f+20>>2];n=z[f+16>>2];z[c+72>>2]=o-z[f+24>>2];z[c+68>>2]=m-k;z[c+64>>2]=l-n;k=z[g+20>>2];n=z[g+24>>2];p=z[g+16>>2];r=z[c+164>>2];z[c+92>>2]=r;z[c+108>>2]=o;z[c+104>>2]=m;s=z[c+168>>2];z[c+96>>2]=s;z[c+84>>2]=o-n;z[c+80>>2]=m-k;t=z[c+160>>2];z[c+88>>2]=t;z[c+100>>2]=l;z[c+76>>2]=l-p;k=z[c+156>>2];w=z[c+124>>2];n=z[c+152>>2];y=z[c+120>>2];p=z[c+144>>2];A=z[c+112>>2];q=z[c+148>>2];B=z[c+116>>2];if(C(C(k*w)+C(C(n*y)+C(C(p*A)+C(q*B))))>2]=-w;z[c+120>>2]=-y;z[c+116>>2]=-B;z[c+112>>2]=-A}b=0;a=x[e+116>>1]&2;b=a?z[e+104>>2]>=z[e+100>>2]:b;o=C(o-s);o=C(o+o);l=C(l-t);l=C(l+l);m=C(m-r);m=C(m+m);r=C(C(n*o)+C(C(p*l)+C(q*m)));s=C(C(k*k)+C(-.5));z[c+48>>2]=C(n*r)+C(C(o*s)-C(k*C(C(p*m)-C(l*q))));z[c+44>>2]=C(q*r)+C(C(m*s)-C(k*C(C(n*l)-C(o*p))));z[c+40>>2]=C(p*r)+C(C(l*s)-C(k*C(C(q*o)-C(m*n))));b=b&1;H5(c+56|0,c+144|0,c+112|0,c+40|0,b?7:6,7,c+24|0,c+8|0);m=z[f+16>>2];l=z[f+20>>2];k=z[c+24>>2];o=z[c+28>>2];z[i+8>>2]=z[c+32>>2]+z[f+24>>2];z[i+4>>2]=o+l;z[i>>2]=k+m;m=z[g+16>>2];l=z[g+20>>2];k=z[c+8>>2];o=z[c+12>>2];z[j+8>>2]=z[c+16>>2]+z[g+24>>2];z[j+4>>2]=o+l;z[j>>2]=k+m;a:{if(b|!a){break a}k=z[c+152>>2];o=z[c+144>>2];l=z[c+148>>2];r=C(l*C(0));p=C(C(k*C(0))+C(C(o+o)+r));n=z[c+156>>2];q=C(C(n*n)+C(-.5));s=C(q*C(0));m=C(C(k*p)+C(s+C(n*C(C(o*C(0))-C(l+l)))));l=C(C(l*p)+C(s+C(n*C(C(k+k)+C(o*C(-0))))));k=C(C(o*p)+C(C(q+q)+C(n*C(r+C(k*C(-0))))));r=z[e+100>>2];o=z[c+40>>2];p=z[e+96>>2];q=z[e+88>>2];n=z[e+92>>2];d=n>C(0);if(rC(0)?C(0):p))){a=v[c+60>>2];v[c+60>>2]=a+80;z[a+8>>2]=m;z[a+4>>2]=l;z[a>>2]=k;u[a+78>>1]=0;n=z[c+72>>2];p=z[c+64>>2];q=z[c+68>>2];z[a+40>>2]=m;z[a+36>>2]=l;z[a+32>>2]=k;z[a+24>>2]=C(p*l)-C(k*q);z[a+20>>2]=C(n*k)-C(m*p);z[a+16>>2]=C(q*m)-C(l*n);n=z[c+84>>2];p=z[c+76>>2];q=z[c+80>>2];r=C(r-o);z[a+12>>2]=r;z[a+56>>2]=C(p*l)-C(k*q);z[a+52>>2]=C(n*k)-C(m*p);z[a+48>>2]=C(q*m)-C(l*n);b=x[a+76>>1];n=z[e+88>>2];b:{if(d|n>C(0)){z[a+64>>2]=n;z[a+68>>2]=z[e+92>>2];b=b|17;break b}u[a+78>>1]=2049;z[a+64>>2]=z[e+80>>2];z[a+68>>2]=z[e+84>>2];b=b|(r>C(0)?24:16);if(!(z[e+80>>2]>C(0))){break b}b=b|4}v[a+44>>2]=0;u[a+76>>1]=b;p=z[e+96>>2];q=z[e+88>>2];n=z[e+92>>2]}s=z[e+104>>2];if(!(C(-s)C(0)?C(0):q>C(0)?C(0):p)-o))){break a}a=v[c+60>>2];v[c+60>>2]=a+80;t=C(-m);z[a+8>>2]=t;w=C(-l);z[a+4>>2]=w;y=C(-k);z[a>>2]=y;u[a+78>>1]=0;p=z[c+72>>2];q=z[c+68>>2];r=z[c+64>>2];z[a+40>>2]=t;z[a+36>>2]=w;z[a+32>>2]=y;z[a+24>>2]=C(k*q)-C(r*l);z[a+20>>2]=C(m*r)-C(p*k);z[a+16>>2]=C(l*p)-C(q*m);p=z[c+84>>2];q=z[c+80>>2];r=z[c+76>>2];o=C(o-s);z[a+12>>2]=o;z[a+56>>2]=C(k*q)-C(r*l);z[a+52>>2]=C(m*r)-C(p*k);z[a+48>>2]=C(l*p)-C(q*m);b=x[a+76>>1];m=z[e+88>>2];c:{if(n>C(0)|m>C(0)){z[a+64>>2]=m;z[a+68>>2]=z[e+92>>2];b=b|17;break c}u[a+78>>1]=2049;z[a+64>>2]=z[e+80>>2];z[a+68>>2]=z[e+84>>2];b=b|(o>C(0)?24:16);if(!(z[e+80>>2]>C(0))){break c}b=b|4}v[a+44>>2]=0;u[a+76>>1]=b}xa=c+176|0;return(v[c+60>>2]-v[c+56>>2]|0)/80|0}function zu(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=xa-288|0;xa=f;a:{if(!c){v[b>>2]=a;c=v[b+4>>2];b:{if(!w[a+4785|0]){v[b+4>>2]=c&268435455|-2147483648;Au(a+16|0,b,d,e);break b}d=c&1073741823;if(c>>>0>=3221225472){v[b+4>>2]=d|-2147483648;if(c&268435456){break b}v[f+16>>2]=b;Og(g,f+16|0);break b}v[b+4>>2]=d|1073741824;v[f+16>>2]=b;c=qh(g,f+16|0,f+12|0);if(w[f+12|0]){break b}v[c>>2]=v[f+16>>2]}c:{d:{if(z[b+260>>2]!=C(0)|z[b+236>>2]!=C(0)|(z[b+240>>2]!=C(0)|z[b+244>>2]!=C(0))){break d}if(z[b+248>>2]!=C(0)|z[b+252>>2]!=C(0)){break d}c=1;if(z[b+256>>2]==C(0)){break c}}c=0}v[b+264>>2]=c;if(!w[a+4785|0]){break a}t[f+272|0]=1;v[f+280>>2]=0;v[f+284>>2]=64;v[f+276>>2]=f+16;a=0;c=Ho(b,f+12|0,0);e:{if(!c){break e}d=v[b+4>>2]&-1073741824;b=v[b>>2];if((c|0)!=1){i=c&-2;e=0;while(1){h=a<<2;g=v[h+v[f+12>>2]>>2];j=v[(g+32|0)+4>>2];if((j&251658240)==16777216){v[g+32>>2]=b;v[g+36>>2]=d|j&1073741823}g=v[v[f+12>>2]+(h|4)>>2];h=v[(g+32|0)+4>>2];if((h&251658240)==16777216){v[g+32>>2]=b;v[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=v[v[f+12>>2]+(a<<2)>>2];c=v[(a+32|0)+4>>2];if((c&251658240)!=16777216){break e}v[a+32>>2]=b;v[a+36>>2]=d|c&1073741823}a=v[f+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[f+276>>2];if((a|0)==(f+16|0)|!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a);break a}c=xa-288|0;xa=c;v[b>>2]=a;d=v[b+4>>2];f:{if(!w[a+4785|0]){v[b+4>>2]=d&268435455|-2147483648;t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;a=0;e=Ho(b,c+12|0,0);g:{if(!e){break g}g=v[b>>2];if((e|0)!=1){h=e&-2;d=0;while(1){j=a<<2;i=v[j+v[c+12>>2]>>2];k=v[i+36>>2];if((k&251658240)==16777216){v[i+32>>2]=g;v[i+36>>2]=k&1073741823|-2147483648}i=v[v[c+12>>2]+(j|4)>>2];j=v[i+36>>2];if((j&251658240)==16777216){v[i+32>>2]=g;v[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=v[v[c+12>>2]+(a<<2)>>2];d=v[a+36>>2];if((d&251658240)!=16777216){break g}v[a+32>>2]=g;v[a+36>>2]=d&1073741823|-2147483648}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break f}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break f}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,a);break f}a=d&1073741823;h:{if(d>>>0>=3221225472){v[b+4>>2]=a|-2147483648;if(d&268435456){break h}v[c+16>>2]=b;Og(g,c+16|0);break h}v[b+4>>2]=a|1073741824;v[c+16>>2]=b;a=qh(g,c+16|0,c+12|0);if(w[c+12|0]){break h}v[a>>2]=v[c+16>>2]}t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;a=0;e=Ho(b,c+12|0,0);i:{if(!e){break i}g=v[b+4>>2]&-1073741824;i=v[b>>2];if((e|0)!=1){j=e&-2;d=0;while(1){k=a<<2;h=v[k+v[c+12>>2]>>2];l=v[h+36>>2];if((l&251658240)==16777216){v[h+32>>2]=i;v[h+36>>2]=g|l&1073741823}h=v[v[c+12>>2]+(k|4)>>2];k=v[h+36>>2];if((k&251658240)==16777216){v[h+32>>2]=i;v[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=v[v[c+12>>2]+(a<<2)>>2];d=v[a+36>>2];if((d&251658240)!=16777216){break i}v[a+32>>2]=i;v[a+36>>2]=g|d&1073741823}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break f}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break f}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,a)}xa=c+288|0;j:{k:{if(z[b+260>>2]!=C(0)|z[b+236>>2]!=C(0)|(z[b+240>>2]!=C(0)|z[b+244>>2]!=C(0))){break k}if(z[b+248>>2]!=C(0)|z[b+252>>2]!=C(0)){break k}a=1;if(z[b+256>>2]==C(0)){break j}}a=0}v[b+264>>2]=a}xa=f+288|0}function TF(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;h=xa-16|0;xa=h;v[h+8>>2]=b;c=v[a+16>>2];m=b>>>7|0;g=c+B(m,24)|0;f=w[g+4|0];a:{if(f&4){break a}b=v[a+204>>2]+(m<<2)|0;i=v[b>>2];p=v[a+88>>2];v[b>>2]=-1;b=c+B(v[h+8>>2]>>>7|0,24)|0;e=v[b+8>>2];d=B(i,44)+p|0;v[(e>>>0<4294967168?(c+B(e>>>7|0,24)|0)+12|0:d+4|0)>>2]=v[b+12>>2];e=v[b+12>>2];v[(e>>>0<4294967168?(c+B(e>>>7|0,24)|0)+8|0:d)>>2]=v[b+8>>2];d=d+(w[b+5|0]<<2)|0;v[d+8>>2]=v[d+8>>2]-1;v[b+8>>2]=-128;v[b+12>>2]=-128;b:{c:{if(f&2){q=v[h+8>>2];b=q>>>7|0;l=w[(c+B(b,24)|0)+5|0];d=B(l,12)+a|0;k=v[a+28>>2];b=k+(b<<2)|0;e=v[b>>2];j=(l<<2)+a|0;n=v[j+252>>2];d:{if(e>>>0>=n>>>0){d=v[d+112>>2];break d}d=v[d+112>>2];n=v[(d+(n<<2)|0)-4>>2];o=k+(n>>>5&134217724)|0;v[b>>2]=v[o>>2];v[o>>2]=e;v[(e<<2)+d>>2]=n;v[(v[b>>2]<<2)+d>>2]=q;v[j+252>>2]=v[j+252>>2]-1;e=v[b>>2]}l=B(l,12)+a|0;j=v[((v[l+116>>2]<<2)+d|0)-4>>2];v[k+(j>>>5&134217724)>>2]=e;v[(v[b>>2]<<2)+d>>2]=j;v[l+116>>2]=v[l+116>>2]-1;break c}if(!(f&32)){break b}b=v[a+28>>2];d=v[a+324>>2];e=v[(d+(v[a+328>>2]<<2)|0)-4>>2];v[b+(e>>>5&134217724)>>2]=v[b+(v[h+8>>2]>>>5&134217724)>>2];v[d+(v[b+(v[h+8>>2]>>>5&134217724)>>2]<<2)>>2]=e;v[a+328>>2]=v[a+328>>2]-1;f=f&223;b=b+(v[h+8>>2]>>>5&134217724)|0}v[b>>2]=33554431}b=f&249|4;t[g+4|0]=b;if(v[(c+B(m,24)|0)+16>>2]){v[v[a+28>>2]+(v[h+8>>2]>>>5&134217724)>>2]=v[a+328>>2];c=v[a+328>>2];e:{if(c>>>0>=(v[a+332>>2]&2147483647)>>>0){YF(a+324|0,h+8|0);b=w[g+4|0];break e}v[v[a+324>>2]+(c<<2)>>2]=v[h+8>>2];v[a+328>>2]=v[a+328>>2]+1}t[g+4|0]=b|32}d=B(i,44)+p|0;m=v[d+8>>2];l=v[d+12>>2];c=v[g>>2];if((c|0)!=-1){while(1){b=v[a+84>>2];f=(c>>>0)/(b>>>0)|0;f=v[v[v[a+64>>2]+(f<<2)>>2]+(c-B(b,f)<<3)>>2];c=c>>>1|0;v[h+4>>2]=c;g=v[a+40>>2];b=v[a+60>>2];e=(c>>>0)/(b>>>0)|0;c=v[g+(e<<2)>>2]+(c-B(b,e)<<4)|0;k=v[c+12>>2];e=v[c+8>>2];f:{if((e|0)!=-1){j=(e>>>0)/(b>>>0)|0;b=(v[g+(j<<2)>>2]+(e-B(b,j)<<4)|0)+12|0;break f}b=(d+(v[c>>2]<<2)|0)+28|0}v[b>>2]=k;e=v[c+8>>2];b=v[c+12>>2];g:{if((b|0)!=-1){k=v[a+60>>2];j=(b>>>0)/(k>>>0)|0;v[(v[g+(j<<2)>>2]+(b-B(k,j)<<4)|0)+8>>2]=e;b=v[c>>2];break g}b=v[c>>2];v[(d+(b<<2)|0)+20>>2]=e}b=d+(b<<2)|0;v[b+36>>2]=v[b+36>>2]-1;v[c+12>>2]=-1;v[c+8>>2]=-1;FF(a,v[h+4>>2]);DF(a,v[h+4>>2]);g=x[c+4>>1];b=g&65534;u[c+4>>1]=b;if(g&4){LF(a,v[h+4>>2]);b=x[c+4>>1]&-5;u[c+4>>1]=b;g=(v[c>>2]<<2)+a|0;v[g+172>>2]=v[g+172>>2]-1}h:{i:{if(!(b&2)){if(b&8){break h}g=B(v[c>>2],12)+a|0;e=g+284|0;k=v[g+288>>2];if(k>>>0>=(v[g+292>>2]&2147483647)>>>0){on(e,h+4|0);b=x[c+4>>1]|8;break i}v[v[e>>2]+(k<<2)>>2]=v[h+4>>2];v[g+288>>2]=v[g+288>>2]+1;b=b|8;break i}b=b|32}u[c+4>>1]=b}c=f;if((c|0)!=-1){continue}break}}if((m|0)!=(0-l|0)){break a}c=v[a+100>>2];f=B(i,44);b=f+p|0;v[b+20>>2]=-1;v[b+24>>2]=-1;v[b+28>>2]=-1;v[b+32>>2]=-1;v[b+36>>2]=0;v[b+40>>2]=0;v[c+(i<<2)>>2]=0;j:{if(v[b+16>>2]==-1){c=Uaa(-2,i);b=v[a+216>>2];f=i>>>5|0;d=v[b+(f<<2)>>2];break j}c=v[a+88>>2];b=c+f|0;f=v[a+240>>2];d=v[(f+(v[a+244>>2]<<2)|0)-4>>2];v[(c+B(d,44)|0)+16>>2]=v[b+16>>2];v[f+(v[b+16>>2]<<2)>>2]=d;v[a+244>>2]=v[a+244>>2]-1;v[b+16>>2]=-1;b=v[a+216>>2];f=i>>>5|0;d=b+(f<<2)|0;o=d;c=Uaa(-2,i);d=c&v[d>>2];v[o>>2]=d}v[(f<<2)+b>>2]=c&d;v[h+12>>2]=i;if(v[a+12>>2]==(i|0)){v[a+12>>2]=i-1;break a}b=v[a+4>>2];if(b>>>0>=(v[a+8>>2]&2147483647)>>>0){on(a,h+12|0);break a}v[v[a>>2]+(b<<2)>>2]=i;v[a+4>>2]=v[a+4>>2]+1}xa=h+16|0}function Jv(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0);U=z[b+20>>2];V=z[b+24>>2];W=z[b+36>>2];X=z[b+40>>2];Y=z[b+52>>2];Z=z[b+56>>2];_=z[b+68>>2];$=z[b+72>>2];aa=z[b+84>>2];ba=z[b+88>>2];ca=z[b+100>>2];da=z[b+104>>2];ea=z[b+112>>2];fa=z[b+116>>2];ga=z[b+120>>2];ha=z[b+128>>2];ia=z[b+132>>2];ja=z[b+136>>2];ka=z[b- -64>>2];la=z[b+80>>2];f=z[c+20>>2];g=z[c+24>>2];E=z[d+36>>2];F=z[d+68>>2];G=z[d+40>>2];H=z[d+72>>2];m=z[d+48>>2];n=z[d+80>>2];o=z[d+20>>2];p=z[d+52>>2];q=z[d+84>>2];r=z[d+24>>2];i=z[c+36>>2];s=z[d+56>>2];j=z[c+40>>2];t=z[d+88>>2];ma=z[b+4>>2];na=z[b+8>>2];oa=z[b+96>>2];pa=z[b>>2];qa=z[b+16>>2];ra=z[b+32>>2];sa=z[b+48>>2];k=z[c+16>>2];I=z[d+4>>2];J=z[d+8>>2];u=z[d+16>>2];l=z[c+32>>2];K=z[c>>2];L=z[d>>2];M=z[c+4>>2];N=z[d+32>>2];h=z[c+8>>2];O=z[d+64>>2];v[e+92>>2]=0;v[e+76>>2]=0;v[e+60>>2]=0;v[e+44>>2]=0;v[e+28>>2]=0;v[e+12>>2]=0;w=C(C(L*K)+C(C(N*M)+C(O*h)));z[e>>2]=w;P=C(C(r*l)+C(C(s*i)+C(t*j)));z[e+88>>2]=P;Q=C(C(o*l)+C(C(p*i)+C(q*j)));z[e+84>>2]=Q;R=C(C(u*l)+C(C(m*i)+C(n*j)));z[e+80>>2]=R;x=C(C(J*l)+C(C(G*i)+C(H*j)));z[e+72>>2]=x;y=C(C(I*l)+C(C(E*i)+C(F*j)));z[e+68>>2]=y;A=C(C(L*l)+C(C(N*i)+C(O*j)));z[e+64>>2]=A;S=C(C(r*k)+C(C(s*f)+C(t*g)));z[e+56>>2]=S;T=C(C(o*k)+C(C(p*f)+C(q*g)));z[e+52>>2]=T;i=C(C(u*k)+C(C(m*f)+C(n*g)));z[e+48>>2]=i;B=C(C(J*k)+C(C(G*f)+C(H*g)));z[e+40>>2]=B;D=C(C(I*k)+C(C(E*f)+C(F*g)));z[e+36>>2]=D;f=C(C(L*k)+C(C(N*f)+C(O*g)));z[e+32>>2]=f;j=C(C(r*K)+C(C(s*M)+C(t*h)));z[e+24>>2]=j;k=C(C(o*K)+C(C(p*M)+C(q*h)));z[e+20>>2]=k;l=C(C(u*K)+C(C(m*M)+C(n*h)));z[e+16>>2]=l;g=C(C(J*K)+C(C(G*M)+C(H*h)));z[e+8>>2]=g;h=C(C(I*K)+C(C(E*M)+C(F*h)));z[e+4>>2]=h;v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;z[a+80>>2]=C(C(la-C(r*w))-C(s*f))-C(t*A);z[a- -64>>2]=C(C(ka-C(o*w))-C(p*f))-C(q*A);z[a+48>>2]=C(C(sa-C(u*w))-C(m*f))-C(n*A);z[a+32>>2]=C(C(ra-C(J*w))-C(G*f))-C(H*A);z[a+16>>2]=C(C(qa-C(I*w))-C(E*f))-C(F*A);z[a>>2]=C(C(pa-C(L*w))-C(N*f))-C(O*A);z[a+136>>2]=C(C(ja-C(r*j))-C(s*S))-C(t*P);z[a+132>>2]=C(C(ia-C(r*k))-C(s*T))-C(t*Q);z[a+128>>2]=C(C(ha-C(r*l))-C(s*i))-C(t*R);z[a+120>>2]=C(C(ga-C(o*j))-C(p*S))-C(q*P);z[a+116>>2]=C(C(fa-C(o*k))-C(p*T))-C(q*Q);z[a+112>>2]=C(C(ea-C(o*l))-C(p*i))-C(q*R);z[a+104>>2]=C(C(da-C(u*j))-C(m*S))-C(n*P);z[a+100>>2]=C(C(ca-C(u*k))-C(m*T))-C(n*Q);z[a+96>>2]=C(C(oa-C(u*l))-C(m*i))-C(n*R);z[a+88>>2]=C(C(ba-C(r*g))-C(s*B))-C(t*x);z[a+84>>2]=C(C(aa-C(r*h))-C(s*D))-C(t*y);z[a+72>>2]=C(C($-C(o*g))-C(p*B))-C(q*x);z[a+68>>2]=C(C(_-C(o*h))-C(p*D))-C(q*y);z[a+56>>2]=C(C(Z-C(u*g))-C(m*B))-C(n*x);z[a+52>>2]=C(C(Y-C(u*h))-C(m*D))-C(n*y);z[a+40>>2]=C(C(X-C(J*g))-C(G*B))-C(H*x);z[a+36>>2]=C(C(W-C(J*h))-C(G*D))-C(H*y);z[a+24>>2]=C(C(V-C(I*g))-C(E*B))-C(F*x);z[a+20>>2]=C(C(U-C(I*h))-C(E*D))-C(F*y);z[a+8>>2]=C(C(na-C(L*g))-C(N*B))-C(O*x);z[a+4>>2]=C(C(ma-C(L*h))-C(N*D))-C(O*y)}function H5(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0);G=z[a+28>>2];H=z[a+24>>2];y=z[a+16>>2];A=z[a+12>>2];I=z[a+20>>2];B=z[a+8>>2];k=v[a+4>>2];E=k;a:{if(!e){break a}l=z[b>>2];n=C(l+l);o=z[b+12>>2];q=C(n*o);j=z[b+4>>2];p=C(j+j);i=z[b+8>>2];r=C(p*i);w=C(n*i);J=C(p*o);m=C(w-J);F=C(n*j);s=C(i+i);K=C(s*o);o=C(F+K);L=C(j*p);M=C(i*s);i=C(C(C(1)-L)-M);s=C(0);E=e&1;if(E){j=z[d>>2];t=C(C(0)-C(m*j));D=C(C(0)-C(o*j));s=C(C(0)-C(i*j))}j=C(r+q);p=C(F-K);F=C(C(1)-C(l*n));n=C(F-M);N=e&2;if(N){l=z[d+4>>2];t=C(t-C(j*l));D=C(D-C(n*l));s=C(s-C(p*l))}l=C(r-q);q=C(w+J);r=C(F-L);O=e&4;if(O){w=z[d+8>>2];t=C(t-C(r*w));D=C(D-C(l*w));s=C(s-C(q*w))}y=C(y+t);A=C(A+D);B=C(B+s);e=k;if(E){s=z[d>>2];z[k+40>>2]=m;z[k+36>>2]=o;z[k+32>>2]=i;z[k+8>>2]=m;z[k+4>>2]=o;z[k>>2]=i;u[k+78>>1]=2048;z[k+56>>2]=C(I*o)-C(i*H);z[k+52>>2]=C(G*i)-C(m*I);z[k+48>>2]=C(H*m)-C(o*G);z[k+24>>2]=C(B*o)-C(i*A);z[k+20>>2]=C(y*i)-C(m*B);z[k+16>>2]=C(A*m)-C(o*y);z[k+12>>2]=-s;e=k+80|0}if(N){m=z[d+4>>2];z[e+40>>2]=j;z[e+36>>2]=n;z[e+32>>2]=p;z[e+8>>2]=j;z[e+4>>2]=n;z[e>>2]=p;u[e+78>>1]=2048;z[e+56>>2]=C(I*n)-C(p*H);z[e+52>>2]=C(G*p)-C(j*I);z[e+48>>2]=C(H*j)-C(n*G);z[e+24>>2]=C(B*n)-C(p*A);z[e+20>>2]=C(y*p)-C(j*B);z[e+16>>2]=C(A*j)-C(n*y);z[e+12>>2]=-m;e=e+80|0}E=e;if(!O){break a}m=z[d+8>>2];z[e+40>>2]=r;z[e+36>>2]=l;z[e+32>>2]=q;z[e+8>>2]=r;z[e+4>>2]=l;z[e>>2]=q;u[e+78>>1]=2048;z[e+56>>2]=C(I*l)-C(q*H);z[e+52>>2]=C(G*q)-C(r*I);z[e+48>>2]=C(H*r)-C(l*G);z[e+24>>2]=C(B*l)-C(q*A);z[e+20>>2]=C(y*q)-C(r*B);z[e+16>>2]=C(A*r)-C(l*y);z[e+12>>2]=-m;E=e+80|0}e=E;b:{if(!f){break b}p=z[b+12>>2];m=z[c+12>>2];r=C(p*m);n=z[b+8>>2];o=z[c+8>>2];s=C(n*o);i=z[b>>2];l=z[c>>2];t=C(i*l);j=z[b+4>>2];q=z[c+4>>2];D=C(j*q);w=C(s+C(t+D));b=C(r+w)!=C(0);r=C(r-w);w=C(p*l);J=C(n*q);L=C(j*m);M=C(p*q);F=C(L+M);P=C(n*l);Q=C(o*i);K=C(P+Q);R=C(n*m);S=C(p*o);p=C(R+S);l=C(l*j);q=C(i*q);n=C(l+q);if(f&1){v[e+32>>2]=0;v[e+36>>2]=0;v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;u[e+78>>1]=2048;v[e+40>>2]=0;T=C(C(K-F)*C(.5));z[e+56>>2]=T;U=C(C(p+n)*C(.5));z[e+52>>2]=U;z[e+24>>2]=T;z[e+20>>2]=U;u[e+76>>1]=x[e+76>>1]|64;z[e+12>>2]=-C(J+C(C(C(-j)*o)+C(w+C(m*C(-i)))));t=C(C(C(t+t)+r)*C(.5));t=b?t:C(t+C(1.1920928955078125e-7));z[e+48>>2]=t;z[e+16>>2]=t;e=e+80|0}m=C(w+C(i*m));o=C(C(j*o)+J);if(f&2){i=C(C(n-p)*C(.5));z[e+48>>2]=i;v[e+32>>2]=0;v[e+36>>2]=0;z[e+16>>2]=i;v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;u[e+78>>1]=2048;i=C(C(m+o)*C(.5));z[e+56>>2]=i;j=C(C(C(D+D)+r)*C(.5));j=b?j:C(j+C(1.1920928955078125e-7));z[e+52>>2]=j;v[e+40>>2]=0;z[e+24>>2]=i;z[e+20>>2]=j;z[e+12>>2]=-C(Q+C(C(M-L)-P));u[e+76>>1]=x[e+76>>1]|64;e=e+80|0}if(!(f&4)){break b}i=C(C(K+F)*C(.5));z[e+48>>2]=i;v[e+32>>2]=0;v[e+36>>2]=0;z[e+16>>2]=i;v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;u[e+78>>1]=2048;i=C(C(C(s+s)+r)*C(.5));i=b?i:C(i+C(1.1920928955078125e-7));z[e+56>>2]=i;m=C(C(o-m)*C(.5));z[e+52>>2]=m;v[e+40>>2]=0;z[e+24>>2]=i;z[e+20>>2]=m;z[e+12>>2]=-C(l+C(C(S-R)-q));u[e+76>>1]=x[e+76>>1]|64;e=e+80|0}z[g+8>>2]=y;z[g+4>>2]=A;z[g>>2]=B;z[h+8>>2]=G;z[h+4>>2]=H;z[h>>2]=I;if(e>>>0>k>>>0){while(1){u[k+76>>1]=x[k+76>>1]|16;k=k+80|0;if(e>>>0>k>>>0){continue}break}}v[a+4>>2]=e}function P_(a,b,c,d,e,f,g){var h=0,i=0,j=C(0),k=0,l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=0,A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0;h=xa-128|0;xa=h;r=z[b+16>>2];q=z[b>>2];s=C(r-q);J=z[b+36>>2];w=z[b+4>>2];A=C(J-w);L=z[b+32>>2];E=C(L-q);B=z[b+20>>2];F=C(B-w);n=C(C(s*A)-C(E*F));M=z[b+40>>2];x=z[b+8>>2];G=C(M-x);t=z[b+24>>2];H=C(t-x);l=C(C(F*G)-C(A*H));j=C(C(H*E)-C(G*s));N=C(C(1)/C(K(C(C(n*n)+C(C(l*l)+C(j*j))))));O=z[b+56>>2];o=C(O-x);P=z[b+48>>2];p=C(P-q);Q=z[b+52>>2];u=C(Q-w);a:{if(C(D(C(C(C(n*N)*o)+C(C(C(l*N)*p)+C(u*C(j*N))))))>2]=3;iY(a,b,c,d,e,f,g);break a}i=C(C(C(n*x)+C(C(l*q)+C(w*j)))*C(C(n*O)+C(C(l*P)+C(Q*j))))>=C(-9.999999974752427e-7);v[h+112>>2]=i?-1:0;n=C(C(p*F)-C(s*u));l=C(C(u*H)-C(F*o));j=C(C(o*s)-C(H*p));n=C(C(C(n*x)+C(C(l*q)+C(w*j)))*C(C(n*M)+C(C(l*L)+C(J*j))));v[h+120>>2]=n>=C(-9.999999974752427e-7)?-1:0;l=C(C(E*u)-C(p*A));j=C(C(A*o)-C(u*G));o=C(C(G*p)-C(o*E));k=C(C(C(l*x)+C(C(j*q)+C(w*o)))*C(C(l*t)+C(C(j*r)+C(B*o))))>=C(-9.999999974752427e-7);v[h+116>>2]=k?-1:0;l=C(P-r);j=C(J-B);o=C(L-r);p=C(Q-B);u=C(C(l*j)-C(o*p));A=C(u*t);s=p;p=C(M-t);t=C(O-t);j=C(C(s*p)-C(j*t));s=C(j*r);r=C(C(t*o)-C(p*l));q=C(C(A+C(s+C(B*r)))*C(C(u*x)+C(C(j*q)+C(w*r))));v[h+124>>2]=q>=C(-9.999999974752427e-7)?-1:0;if(!(i|k|(n>=C(-9.999999974752427e-7)|q>=C(-9.999999974752427e-7)))){v[a>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;break a}v[h+104>>2]=v[25363];i=v[25362];v[h+96>>2]=v[25361];v[h+100>>2]=i;O_(a,b,h+112|0,h+96|0,g);g=v[h+96>>2];I=v[h+100>>2];i=I<<4;a=i+b|0;k=v[a+4>>2];v[h+80>>2]=v[a>>2];v[h+84>>2]=k;k=v[a+12>>2];v[h+88>>2]=v[a+8>>2];v[h+92>>2]=k;y=v[h+104>>2];k=y<<4;a=k+b|0;m=v[a+4>>2];v[h+64>>2]=v[a>>2];v[h+68>>2]=m;m=v[a+12>>2];v[h+72>>2]=v[a+8>>2];v[h+76>>2]=m;a=c+i|0;m=v[a+12>>2];v[h+56>>2]=v[a+8>>2];v[h+60>>2]=m;m=v[a+4>>2];v[h+48>>2]=v[a>>2];v[h+52>>2]=m;a=c+k|0;m=v[a+12>>2];v[h+40>>2]=v[a+8>>2];v[h+44>>2]=m;m=v[a+4>>2];v[h+32>>2]=v[a>>2];v[h+36>>2]=m;a=d+i|0;i=v[a+12>>2];v[h+24>>2]=v[a+8>>2];v[h+28>>2]=i;i=v[a+4>>2];v[h+16>>2]=v[a>>2];v[h+20>>2]=i;a=d+k|0;i=v[a+12>>2];v[h+8>>2]=v[a+8>>2];v[h+12>>2]=i;i=v[a+4>>2];v[h>>2]=v[a>>2];v[h+4>>2]=i;a=g<<2;i=v[a+f>>2];k=I<<2;I=v[k+f>>2];y=y<<2;m=v[y+f>>2];S=v[a+e>>2];k=v[e+k>>2];y=v[e+y>>2];g=g<<4;a=g+b|0;R=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=R;R=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=R;a=v[h+92>>2];v[b+24>>2]=v[h+88>>2];v[b+28>>2]=a;a=v[h+84>>2];v[b+16>>2]=v[h+80>>2];v[b+20>>2]=a;a=v[h+76>>2];v[b+40>>2]=v[h+72>>2];v[b+44>>2]=a;a=v[h+68>>2];v[b+32>>2]=v[h+64>>2];v[b+36>>2]=a;a=c+g|0;b=v[a+4>>2];v[c>>2]=v[a>>2];v[c+4>>2]=b;b=v[a+12>>2];v[c+8>>2]=v[a+8>>2];v[c+12>>2]=b;a=v[h+60>>2];v[c+24>>2]=v[h+56>>2];v[c+28>>2]=a;a=v[h+52>>2];v[c+16>>2]=v[h+48>>2];v[c+20>>2]=a;a=v[h+36>>2];v[c+32>>2]=v[h+32>>2];v[c+36>>2]=a;a=v[h+44>>2];v[c+40>>2]=v[h+40>>2];v[c+44>>2]=a;a=d+g|0;b=v[a+4>>2];v[d>>2]=v[a>>2];v[d+4>>2]=b;b=v[a+12>>2];v[d+8>>2]=v[a+8>>2];v[d+12>>2]=b;a=v[h+20>>2];v[d+16>>2]=v[h+16>>2];v[d+20>>2]=a;a=v[h+28>>2];v[d+24>>2]=v[h+24>>2];v[d+28>>2]=a;a=v[h+12>>2];v[d+40>>2]=v[h+8>>2];v[d+44>>2]=a;a=v[h+4>>2];v[d+32>>2]=v[h>>2];v[d+36>>2]=a;v[e+8>>2]=y;v[e+4>>2]=k;v[e>>2]=S;v[f+8>>2]=m;v[f+4>>2]=I;v[f>>2]=i}xa=h+128|0}function OX(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=0,H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=0,O=C(0);j=xa-448|0;xa=j;D=v[c+32>>2];v[j+440>>2]=0;v[j+444>>2]=0;v[j+432>>2]=0;v[j+436>>2]=0;v[j+416>>2]=0;G=v[c+12>>2];I=v[c+8>>2];p=z[c+4>>2];v[j+412>>2]=0;v[j+404>>2]=I;v[j+408>>2]=G;z[j+400>>2]=p;G=v[c+16>>2];I=v[c+20>>2];N=v[c+28>>2];v[j+392>>2]=v[c+24>>2];v[j+396>>2]=N;v[j+384>>2]=G;v[j+388>>2]=I;J=z[d+20>>2];s=z[b+20>>2];L=z[d+24>>2];H=z[b+24>>2];E=z[a+4>>2];M=z[d+16>>2];O=z[b+16>>2];q=z[d+8>>2];n=z[d>>2];y=z[e+4>>2];r=z[d+4>>2];k=z[e>>2];A=z[d+12>>2];m=z[e+8>>2];v[j+380>>2]=0;m=C(m*f);k=C(k*f);l=C(y*f);o=C(C(q*m)+C(C(n*k)+C(r*l)));y=C(C(A*A)+C(-.5));F=C(C(C(y*m)-C(A*C(C(n*l)-C(r*k))))+C(q*o));z[j+376>>2]=F+F;F=C(C(r*o)+C(C(y*l)-C(A*C(C(q*k)-C(m*n)))));z[j+372>>2]=F+F;m=C(C(n*o)+C(C(y*k)-C(A*C(C(r*m)-C(l*q)))));z[j+368>>2]=m+m;F=C(-n);l=C(O-M);o=C(s-J);s=C(H-L);H=C(C(C(F*l)-C(o*r))-C(q*s));m=C(C(C(A*C(C(r*l)-C(n*o)))+C(y*s))-C(q*H));m=C(m+m);k=C(C(C(y*o)+C(A*C(C(n*s)-C(q*l))))-C(r*H));k=C(k+k);l=C(C(C(y*l)+C(A*C(C(q*o)-C(r*s))))-C(n*H));l=C(l+l);G=D+16|0;b=0;a:{if(p!=C(1)){break a}b=0;if(z[c+8>>2]!=C(1)){break a}b=z[c+12>>2]==C(1)}t[j+240|0]=0;v[j+232>>2]=0;v[j+236>>2]=0;v[j+224>>2]=0;v[j+228>>2]=0;v[j+216>>2]=0;v[j+220>>2]=0;v[j+208>>2]=0;v[j+212>>2]=0;v[j+352>>2]=G;v[j+360>>2]=v[D+56>>2]+B(w[D+55|0],20);t[j+364|0]=w[D+54|0];p=C(p*z[D+68>>2]);o=C(z[D+72>>2]*z[j+404>>2]);p=p<=o?p:o;o=C(z[D+76>>2]*z[j+408>>2]);p=p<=o?p:o;z[j+232>>2]=p*C(.02500000037252903);z[j+224>>2]=p*C(.10000000149011612);z[j+228>>2]=p*C(.05000000074505806);c=j+208|0;FV(j+400|0,j+384|0,j+256|0,j+304|0,c,b);v[j+356>>2]=v[D+60>>2];v[j+188>>2]=0;z[j+184>>2]=m;z[j+180>>2]=k;v[j+172>>2]=0;z[j+168>>2]=m;z[j+164>>2]=k;z[j+192>>2]=E;v[j+124>>2]=0;z[j+120>>2]=m;z[j+116>>2]=k;z[j+112>>2]=l;v[j+140>>2]=4;z[j+176>>2]=l;z[j+160>>2]=l;t[j+144|0]=1;z[j+136>>2]=E;z[j+132>>2]=E;z[j+128>>2]=E;b=x[h>>1];v[j+56>>2]=141148;v[j+60>>2]=j+112;v[j+48>>2]=141216;v[j+52>>2]=c;v[j+44>>2]=0;z[j+40>>2]=m-z[j+216>>2];z[j+36>>2]=k-z[j+212>>2];z[j+32>>2]=l-z[j+208>>2];i=C(z[a+4>>2]+i);a=b&512;b=EX(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);b:{if(!b){break b}c=v[d>>2];h=v[d+4>>2];D=v[d+12>>2];v[j+8>>2]=v[d+8>>2];v[j+12>>2]=D;v[j>>2]=c;v[j+4>>2]=h;c=v[d+16>>2];h=v[d+20>>2];i=z[d+24>>2];v[j+28>>2]=0;z[j+24>>2]=i;v[j+16>>2]=c;v[j+20>>2]=h;if(FX(g,e,j+96|0,j- -64|0,j+80|0,j,(a|0)!=0,0)){break b}u[g+12>>1]=x[g+12>>1]|1;i=z[j+68>>2];E=z[j+64>>2];m=z[j+72>>2];k=z[j+88>>2];l=z[j+80>>2];p=z[j+84>>2];o=z[j+96>>2];v[g+8>>2]=-1;z[g+40>>2]=o*f;o=C(-r);f=C(C(q*k)+C(C(n*l)+C(r*p)));s=C(C(C(A*C(C(n*p)+C(l*o)))+C(y*k))+C(q*f));z[g+24>>2]=L+C(s+s);s=C(C(r*f)+C(C(y*p)+C(A*C(C(q*l)+C(k*F)))));z[g+20>>2]=J+C(s+s);s=C(y*l);l=C(-q);f=C(C(n*f)+C(s+C(A*C(C(r*k)+C(p*l)))));z[g+16>>2]=M+C(f+f);f=C(C(q*m)+C(C(n*E)+C(r*i)));k=C(C(C(A*C(C(n*i)+C(E*o)))+C(y*m))+C(q*f));k=C(k+k);n=C(C(n*f)+C(C(y*E)+C(A*C(C(r*m)+C(i*l)))));n=C(n+n);f=C(C(r*f)+C(C(y*i)+C(A*C(C(q*E)+C(m*F)))));f=C(f+f);i=C(C(1)/C(K(C(C(k*k)+C(C(n*n)+C(f*f))))));z[g+36>>2]=i*C(-k);z[g+32>>2]=i*C(-f);z[g+28>>2]=i*C(-n)}xa=j+448|0;return b|0}function l3(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),t=C(0),u=C(0),w=C(0),y=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=0,L=0,M=0,N=0,O=0;q=xa-16|0;xa=q;i=v[b+12>>2];a:{if(!i){break a}e=i+1|0;d=B(e,24);if(d){k=v[37696]+12|0;k=Ba[v[v[k>>2]+8>>2]](k,d,24422,12274,252)|0}e=B(e,12);if(e){d=v[37696]+12|0;y=Ba[v[v[d>>2]+8>>2]](d,e,24422,12274,253)|0}I=v[b+20>>2];e=v[b+4>>2];r=v[b+16>>2];d=0;while(1){b:{if(r){g=r+B(d,12)|0;b=v[g+8>>2];f=v[g>>2];h=v[g+4>>2];break b}g=B(d,6)+I|0;b=x[g+4>>1];f=x[g>>1];h=x[g+2>>1]}g=e+B(b,12)|0;l=z[g>>2];h=e+B(h,12)|0;j=z[h>>2];f=e+B(f,12)|0;A=z[f>>2];m=z[g+4>>2];n=z[h+4>>2];D=z[f+4>>2];o=z[g+8>>2];p=z[h+8>>2];E=z[f+8>>2];b=B(d,24)+k|0;F=z[f+12>>2];G=z[h+12>>2];s=F>G?F:G;H=z[g+12>>2];s=s>H?s:H;z[b+24>>2]=s;t=p>2]=t;u=n>2]=u;w=j>2]=w;p=p>E?E:p;o=o>p?p:o;z[b+8>>2]=o;n=n>D?D:n;m=m>n?n:m;z[b+4>>2]=m;j=j>A?A:j;l=j>2]=l;b=B(d,12)+y|0;j=F>2]=C(s+(j>2]=C(t+o)*C(.5);z[b+4>>2]=C(u+m)*C(.5);z[b>>2]=C(w+l)*C(.5);d=d+1|0;if((i|0)!=(d|0)){continue}break}e=v[a+4>>2];if(e){g=e-4|0;b=v[g>>2];c:{if(!b){break c}d=B(b,36);b=d+e|0;h=d-36|0;f=((h>>>0)/36|0)+1&3;if(f){d=0;while(1){b=b-36|0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}if(h>>>0<108){break c}while(1){d=b-36|0;v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;d=b-72|0;v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;d=b-108|0;v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;b=b-144|0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;if((b|0)!=(e|0)){continue}break}}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,g);v[a+4>>2]=0}b=v[a>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b)}b=0;v[a>>2]=0;v[q+8>>2]=1;v[q+12>>2]=0;d=0;e=i<<2;if(e){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,e,24422,12274,283)|0}v[a>>2]=d;e=i>>>0>1?i:1;g=e&7;if(e-1>>>0>=7){h=e&-8;e=0;while(1){v[(b<<2)+d>>2]=b;f=b|1;v[(f<<2)+d>>2]=f;f=b|2;v[(f<<2)+d>>2]=f;f=b|3;v[(f<<2)+d>>2]=f;f=b|4;v[(f<<2)+d>>2]=f;f=b|5;v[(f<<2)+d>>2]=f;f=b|6;v[(f<<2)+d>>2]=f;f=b|7;v[(f<<2)+d>>2]=f;b=b+8|0;e=e+8|0;if((h|0)!=(e|0)){continue}break}}if(g){e=0;while(1){v[(b<<2)+d>>2]=b;b=b+1|0;e=e+1|0;if((g|0)!=(e|0)){continue}break}}e=v[37696];d=e+12|0;h=(i<<1)-1|0;b=Raa(h,0,36,0);f=b+4|0;g=(K=d,L=Aa?-1:b>>>0>f>>>0?-1:f,M=Ba[v[v[e>>2]+20>>2]](e)|0?44661:63804,N=12274,O=291,J=v[v[d>>2]+8>>2],Ba[J](K|0,L|0,M|0,N|0,O|0)|0);v[g>>2]=h;e=g+4|0;b=e;f=B(i,72)-72|0;r=((f>>>0)/36|0)+1&7;if(r){d=0;b=e;while(1){v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;b=b+36|0;d=d+1|0;if((r|0)!=(d|0)){continue}break}}if(f>>>0>=252){d=e+B(h,36)|0;while(1){v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+284>>2]=0;v[b+276>>2]=0;v[b+280>>2]=0;v[b+248>>2]=0;v[b+240>>2]=0;v[b+244>>2]=0;v[b+212>>2]=0;v[b+204>>2]=0;v[b+208>>2]=0;v[b+176>>2]=0;v[b+168>>2]=0;v[b+172>>2]=0;v[b+140>>2]=0;v[b+132>>2]=0;v[b+136>>2]=0;v[b+104>>2]=0;v[b+96>>2]=0;v[b+100>>2]=0;v[b+68>>2]=0;v[b+60>>2]=0;v[b+64>>2]=0;b=b+288|0;if((d|0)!=(b|0)){continue}break}}v[a+4>>2]=e;b=v[a>>2];v[g+36>>2]=i;v[g+32>>2]=b;m3(e,k,y,q+8|0,e,c);v[a+8>>2]=v[q+8>>2];if(y){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,y)}if(!k){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,k)}xa=q+16|0;return(i|0)!=0}function X4(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=0,L=0,M=C(0),N=0,O=0,P=C(0),Q=C(0),R=0,S=0,T=C(0),U=0,V=0,W=0,X=0,Y=0,Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=0,na=0,oa=0,pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0);G=z[c>>2];X=v[a+20>>2];if(X){na=v[a+16>>2];O=v[a+4>>2];P=z[c+8>>2];Q=z[c+4>>2];oa=v[a+28>>2];while(1){a=B(R,20)+na|0;Y=w[a+18|0]-2|0;if(Y){pa=z[a+8>>2];qa=z[a+4>>2];ra=z[a>>2];S=x[a+16>>1]+oa|0;a=B(w[S|0],12)+O|0;q=C(z[a+8>>2]-P);Z=C(q*q);sa=C(q*Z);r=C(z[a+4>>2]-Q);_=C(r*r);ta=C(r*_);s=C(z[a>>2]-G);$=C(s*s);ua=C(s*$);T=z[a+12>>2];va=C(T*T);a=0;while(1){aa=C(0);K=B(w[(a+S|0)+2|0],12)+O|0;k=z[K+12>>2];a=a+1|0;L=B(w[S+a|0],12)+O|0;h=z[L+12>>2];j=C(z[L>>2]-G);d=C(j-s);m=C(z[K+4>>2]-Q);e=C(m-r);l=C(z[K>>2]-G);f=C(l-s);D=C(z[L+4>>2]-Q);g=C(D-r);E=C(C(d*e)-C(f*g));i=g;n=C(z[K+8>>2]-P);g=C(n-q);H=e;o=C(z[L+8>>2]-P);e=C(o-q);t=C(C(i*g)-C(H*e));F=C(C(e*f)-C(g*d));a:{if(!(C(C(E*pa)+C(C(t*ra)+C(qa*F)))>3]=h;p=+C(da*C(-.008333333767950535));A[b+48>>3]=p;y=+C(ca*C(-.008333333767950535));A[b+80>>3]=y;A[b+32>>3]=p;N=+C(u*C(-.008333333767950535));A[b+72>>3]=N;A[b- -64>>3]=y;A[b+40>>3]=N;d=C(ka*C(.01666666753590107));e=C(ja*C(.01666666753590107));U=+C(d+e);A[b+88>>3]=U;g=d;d=C(ia*C(.01666666753590107));V=+C(g+d);A[b+56>>3]=V;W=+C(e+d);A[b+24>>3]=W;f=C(C(1)/h);z[b+12>>2]=C(ea*C(.0416666679084301))*f;d=C(C(fa*C(.0416666679084301))*f);z[b+8>>2]=d;e=C(C(ga*C(.0416666679084301))*f);z[b+4>>2]=e;f=C(C(ha*C(.0416666679084301))*f);z[b>>2]=f;J=p+ +C(e*C(h*f));A[b+120>>3]=J;ma=y+ +C(d*C(h*e));A[b+152>>3]=ma;A[b+104>>3]=J;g=C(f*f);i=C(e*e);j=C(g+i);A[b+160>>3]=U-+C(h*j);k=C(d*d);m=C(k+g);A[b+128>>3]=V-+C(h*m);l=C(i+k);A[b+96>>3]=W-+C(h*l);J=N+ +C(f*C(h*d));A[b+144>>3]=J;A[b+136>>3]=ma;A[b+112>>3]=J;g=z[c+8>>2];i=z[c+4>>2];if(!(!(G!=C(0)|i!=C(0))&g==C(0))){g=C(d+g);z[b+8>>2]=g;i=C(e+i);z[b+4>>2]=i;k=C(G+f);z[b>>2]=k;p=p+ +C(h*C(C(f*e)-C(i*k)));A[b+48>>3]=p;y=y+ +C(h*C(C(e*d)-C(g*i)));A[b+80>>3]=y;A[b+32>>3]=p;p=N+ +C(h*C(C(d*f)-C(k*g)));A[b+72>>3]=p;A[b+64>>3]=y;A[b+40>>3]=p;d=C(k*k);e=C(i*i);A[b+88>>3]=U-+C(h*C(j-C(d+e)));f=C(g*g);A[b+56>>3]=V-+C(h*C(m-C(f+d)));A[b+24>>3]=W-+C(h*C(l-C(e+f)))}return 1}function Nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),x=C(0),y=0,A=0,D=C(0),E=C(0),F=0,G=0,H=0,I=0,J=0,K=0,L=C(0),M=C(0),N=C(0);d=w[c|0];if(d&1){H9(v[b+12>>2],v[a+156>>2],v[a+468>>2]<<2);d=w[c|0]}if(d&2){H9(v[b+16>>2],v[a+144>>2],v[a+468>>2]<<2);d=w[c|0]}if(d&4){H9(v[b+20>>2],v[a+180>>2],v[a+468>>2]<<2);d=w[c|0]}if(d&8){H9(v[b+24>>2],v[a+192>>2],v[a+468>>2]<<2);d=w[c|0]}a:{if(!(d&16)){break a}r=v[a+448>>2];if(!r){break a}y=v[a+228>>2];A=v[b+28>>2];while(1){i=e<<5;g=i+A|0;i=i+y|0;z[g>>2]=z[i+16>>2];z[g+4>>2]=z[i+20>>2];z[g+8>>2]=z[i+24>>2];z[g+16>>2]=z[i>>2];z[g+20>>2]=z[i+4>>2];z[g+24>>2]=z[i+8>>2];e=e+1|0;if((r|0)!=(e|0)){continue}break}}b:{if(!(d&32)){break b}y=v[a+448>>2];h=z[a+464>>2];if(h>C(0)){h=C(C(1)/h);G=v[a+168>>2];A=v[a+448>>2];H=v[a+456>>2];d=v[a+240>>2];c:{if(t[v[a+476>>2]]&1){v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;m=C(0);break c}f=z[a+132>>2];e=v[a+228>>2];l=z[e+20>>2];j=z[a+116>>2];n=z[e+4>>2];k=z[a+136>>2];o=z[e+24>>2];p=z[e>>2];m=z[a+120>>2];q=z[e+8>>2];u=z[a+112>>2];z[d+16>>2]=h*C(z[e+16>>2]-z[a+128>>2]);z[d+8>>2]=h*C(q-m);z[d>>2]=h*C(p-u);z[d+24>>2]=h*C(o-k);l=C(h*C(l-f));m=C(h*C(n-j))}z[d+4>>2]=m;z[d+20>>2]=l;if(A>>>0>=2){I=v[a+384>>2];g=1;while(1){e=B(g,80)+H|0;F=w[e+76|0];if(F){J=(v[e+72>>2]<<2)+G|0;K=B(g,76)+I|0;e=d+(g<<5)|0;l=z[e+16>>2];j=z[e+8>>2];n=z[e+4>>2];k=z[e>>2];o=z[e+24>>2];p=z[e+20>>2];r=0;while(1){i=B(r,24)+K|0;m=z[i>>2];q=z[i+4>>2];f=C(h*z[(r<<2)+J>>2]);j=C(C(f*z[i+8>>2])+j);z[e+8>>2]=j;n=C(C(f*q)+n);z[e+4>>2]=n;k=C(C(f*m)+k);z[e>>2]=k;m=z[i+20>>2];q=z[i+16>>2];l=C(C(f*z[i+12>>2])+l);z[e+16>>2]=l;p=C(C(f*q)+p);z[e+20>>2]=p;o=C(C(f*m)+o);z[e+24>>2]=o;r=r+1|0;if((F|0)!=(r|0)){continue}break}}g=g+1|0;if((A|0)!=(g|0)){continue}break}}}if(!y){break b}i=v[a+240>>2];r=v[b+32>>2];e=0;while(1){g=e<<5;d=g+r|0;g=g+i|0;z[d>>2]=z[g+16>>2];z[d+4>>2]=z[g+20>>2];z[d+8>>2]=z[g+24>>2];z[d+16>>2]=z[g>>2];z[d+20>>2]=z[g+4>>2];z[d+24>>2]=z[g+8>>2];e=e+1|0;if((y|0)!=(e|0)){continue}break}}if(w[c|0]&64){d=v[a+228>>2];c=v[v[a+444>>2]+16>>2];L=z[c+16>>2];M=z[c+20>>2];m=z[c+24>>2];q=z[c+48>>2];u=z[c+56>>2];s=z[c+52>>2];b=v[b+36>>2];l=z[c+8>>2];j=z[c+40>>2];n=z[c+4>>2];k=z[c+36>>2];h=z[c+12>>2];f=z[c+44>>2];o=z[c+32>>2];p=z[c>>2];z[b+12>>2]=C(l*j)+C(C(n*k)+C(C(h*f)+C(o*p)));z[b+8>>2]=C(o*n)+C(C(C(f*l)-C(h*j))-C(p*k));z[b+4>>2]=C(j*p)+C(C(C(f*n)-C(h*k))-C(l*o));z[b>>2]=C(k*l)+C(C(C(f*p)-C(h*o))-C(n*j));N=m;m=C(u*C(-2));q=C(q*C(-2));u=C(s*C(-2));D=C(C(j*m)+C(C(o*q)+C(k*u)));E=C(C(f*f)+C(-.5));s=C(C(j*D)+C(C(m*E)-C(f*C(C(o*u)-C(q*k)))));s=C(s+s);x=C(C(o*D)+C(C(q*E)-C(f*C(C(k*m)-C(u*j)))));x=C(x+x);f=C(C(k*D)+C(C(u*E)-C(f*C(C(j*q)-C(m*o)))));f=C(f+f);j=C(C(l*s)+C(C(p*x)+C(n*f)));k=C(C(h*h)+C(-.5));z[b+24>>2]=N+C(C(l*j)+C(C(s*k)+C(h*C(C(p*f)-C(x*n)))));z[b+20>>2]=M+C(C(n*j)+C(C(f*k)+C(h*C(C(l*x)-C(s*p)))));z[b+16>>2]=L+C(C(p*j)+C(C(x*k)+C(h*C(C(n*s)-C(f*l)))));z[b+28>>2]=z[d+16>>2];z[b+32>>2]=z[d+20>>2];z[b+36>>2]=z[d+24>>2];z[b+40>>2]=z[d>>2];z[b+44>>2]=z[d+4>>2];z[b+48>>2]=z[d+8>>2];a=v[a+240>>2];z[b+52>>2]=z[a+16>>2];z[b+56>>2]=z[a+20>>2];z[b+60>>2]=z[a+24>>2];z[b+64>>2]=z[a>>2];z[b+68>>2]=z[a+4>>2];z[b+72>>2]=z[a+8>>2]}}function s_(a,b,c,d){var e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0);f=xa-80|0;xa=f;h=z[b+12>>2];q=z[b+4>>2];m=z[b+8>>2];a:{if(!(q!=C(1)|m!=C(1)|h!=C(1))){J=z[d+20>>2];K=z[d+24>>2];m=z[c+24>>2];y=z[c+20>>2];b=v[c+32>>2];_=v[c+28>>2];L=z[d+16>>2];A=z[c+16>>2];h=z[d+4>>2];i=z[d>>2];e=z[d+12>>2];g=z[d+8>>2];z[a+56>>2]=z[c+36>>2];v[a+48>>2]=_;v[a+52>>2]=b;n=C(i+i);j=C(h*n);k=C(g+g);o=C(e*k);l=C(j+o);z[a+4>>2]=l;s=C(n*g);q=C(h+h);p=C(e*q);w=C(s-p);z[a+8>>2]=w;j=C(j-o);z[a+12>>2]=j;o=C(q*g);e=C(n*e);r=C(o+e);z[a+20>>2]=r;s=C(s+p);z[a+24>>2]=s;e=C(o-e);z[a+28>>2]=e;i=C(C(1)-C(i*n));g=C(g*k);n=C(i-g);z[a+16>>2]=n;h=C(h*q);i=C(i-h);z[a+32>>2]=i;g=C(C(C(1)-h)-g);z[a>>2]=g;z[a+44>>2]=K+C(C(C(A*w)+C(y*r))+C(i*m));z[a+36>>2]=L+C(C(C(A*g)+C(y*j))+C(s*m));z[a+40>>2]=J+C(C(C(A*l)+C(y*n))+C(e*m));break a}y=z[c+28>>2];$=z[d+20>>2];aa=z[d+24>>2];J=z[c+24>>2];K=z[c+20>>2];A=z[c+32>>2];ba=z[d+16>>2];L=z[c+16>>2];e=z[b+16>>2];i=C(e+e);j=z[b+20>>2];g=C(j+j);F=C(C(1)-C(e*i));G=C(j*g);k=C(F-G);o=C(k*h);e=z[b+24>>2];H=C(i*e);D=z[b+28>>2];x=C(g*D);l=C(H+x);s=C(q*l);B=C(g*e);I=C(i*D);p=C(B-I);w=C(m*p);t=z[d>>2];r=C(t+t);n=z[d+8>>2];R=C(r*n);u=z[d+4>>2];E=C(u+u);N=z[d+12>>2];S=C(E*N);O=C(R-S);M=z[c+36>>2];g=C(M*C(0));T=C(C(1)-C(t*r));U=C(u*E);P=C(T-U);Q=C(C(k*o)+C(C(l*s)+C(p*w)));t=C(H-x);H=C(t*h);x=C(e+e);V=C(e*x);e=C(C(C(1)-G)-V);G=C(q*e);W=C(i*j);X=C(x*D);i=C(W+X);D=C(m*i);x=C(C(k*H)+C(C(l*G)+C(p*D)));Y=C(E*n);Z=C(r*N);E=C(Y+Z);ca=k;j=C(B+I);k=C(j*h);B=l;h=C(W-X);l=C(q*h);q=p;p=m;m=C(F-V);p=C(p*m);F=C(C(ca*k)+C(C(B*l)+C(q*p)));q=C(C(P*Q)+C(C(O*x)+C(E*F)));B=C(C(t*o)+C(C(e*s)+C(i*w)));I=C(C(t*H)+C(C(e*G)+C(i*D)));t=C(C(t*k)+C(C(e*l)+C(i*p)));i=C(C(P*B)+C(C(O*I)+C(E*t)));s=C(C(j*o)+C(C(h*s)+C(m*w)));w=C(C(j*H)+C(C(h*G)+C(m*D)));l=C(C(j*k)+C(C(h*l)+C(m*p)));m=C(C(P*s)+C(C(O*w)+C(E*l)));z[f+32>>2]=C(M*q)+C(C(i*g)+C(m*g));h=C(Y-Z);o=C(r*u);e=C(n+n);u=C(N*e);j=C(o+u);r=C(n*e);k=C(T-r);e=C(C(h*Q)+C(C(j*x)+C(k*F)));n=C(C(h*B)+C(C(j*I)+C(k*t)));j=C(C(h*s)+C(C(j*w)+C(k*l)));z[f+28>>2]=C(M*e)+C(C(n*g)+C(j*g));h=C(A*C(0));z[f+20>>2]=C(h*q)+C(C(h*i)+C(A*m));z[f+16>>2]=C(h*e)+C(C(h*n)+C(A*j));z[f+44>>2]=aa+C(C(J*q)+C(C(L*i)+C(K*m)));z[f+40>>2]=$+C(C(J*e)+C(C(L*n)+C(K*j)));p=C(R+S);r=C(C(C(1)-U)-r);u=C(o-u);k=C(C(p*Q)+C(C(r*x)+C(u*F)));o=C(C(p*B)+C(C(r*I)+C(u*t)));l=C(C(p*s)+C(C(r*w)+C(u*l)));z[f+24>>2]=C(M*k)+C(C(o*g)+C(l*g));z[f+12>>2]=C(h*k)+C(C(h*o)+C(A*l));g=C(y*C(0));z[f+8>>2]=C(g*q)+C(C(y*i)+C(g*m));z[f+4>>2]=C(g*e)+C(C(y*n)+C(g*j));z[f>>2]=C(g*k)+C(C(y*o)+C(g*l));z[f+36>>2]=ba+C(C(J*k)+C(C(L*o)+C(K*l)));q9(f- -64|0,f);b=v[f+68>>2];c=v[f+64>>2];g=z[f+72>>2];z[a>>2]=z[f>>2];z[a+4>>2]=z[f+4>>2];z[a+8>>2]=z[f+8>>2];z[a+12>>2]=z[f+12>>2];z[a+16>>2]=z[f+16>>2];z[a+20>>2]=z[f+20>>2];z[a+24>>2]=z[f+24>>2];z[a+28>>2]=z[f+28>>2];z[a+32>>2]=z[f+32>>2];z[a+36>>2]=z[f+36>>2];z[a+40>>2]=z[f+40>>2];h=z[f+44>>2];z[a+56>>2]=g;v[a+48>>2]=c;v[a+52>>2]=b;z[a+44>>2]=h}xa=f+80|0}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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0,L=0;h=xa+-64|0;xa=h;z[h+32>>2]=z[d>>2];z[h+36>>2]=z[d+4>>2];z[h+40>>2]=z[d+8>>2];z[h+44>>2]=z[d+12>>2];z[h+48>>2]=z[c>>2];z[h+52>>2]=z[c+4>>2];z[h+56>>2]=z[c+8>>2];z[h>>2]=z[g>>2];z[h+4>>2]=z[g+4>>2];z[h+8>>2]=z[g+8>>2];z[h+12>>2]=z[g+12>>2];z[h+16>>2]=z[f>>2];z[h+20>>2]=z[f+4>>2];z[h+24>>2]=z[f+8>>2];g=xa-16|0;xa=g;c=v[37696];d=c+12|0;c=(G=d,H=84,I=Ba[v[v[c>>2]+20>>2]](c)|0?28381:63804,J=6820,L=45,F=v[v[d>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,L|0)|0);E=Ba[v[v[a>>2]+20>>2]](a)|0;u[g+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[g+8>>1];u[c+4>>1]=258;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=147844;v[c>>2]=147632;v[c+8>>2]=0;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,128,24422,17141,454)|0;j=z[h+44>>2];l=z[h+40>>2];m=z[h+32>>2];i=z[h+36>>2];r=v[h+52>>2];s=v[h+48>>2];z[c+44>>2]=z[h+56>>2];v[c+36>>2]=s;v[c+40>>2]=r;k=i;i=C(C(1)/C(K(C(C(j*j)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+24>>2]=k*i;z[c+28>>2]=l*i;z[c+32>>2]=j*i;z[c+20>>2]=m*i;j=z[h+12>>2];l=z[h+8>>2];m=z[h>>2];i=z[h+4>>2];r=v[h+20>>2];s=v[h+16>>2];z[c+72>>2]=z[h+24>>2];D=c- -64|0;v[D>>2]=s;v[D+4>>2]=r;k=i;i=C(C(1)/C(K(C(C(j*j)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+52>>2]=k*i;z[c+56>>2]=l*i;z[c+60>>2]=j*i;z[c+48>>2]=m*i;Y4(f,b);q=z[h+52>>2];t=z[h+56>>2];w=z[h+48>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];k=z[h+40>>2];m=z[f+4>>2];n=z[h+36>>2];j=z[f+12>>2];o=z[h+44>>2];i=z[f>>2];p=z[h+32>>2];z[d+28>>2]=C(l*k)+C(C(m*n)+C(C(j*o)+C(i*p)));z[d+24>>2]=C(p*m)+C(C(C(j*k)-C(o*l))-C(i*n));z[d+20>>2]=C(k*i)+C(C(C(j*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(j*p)-C(o*i))-C(m*k));k=C(w-B);k=C(k+k);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*k)-C(n*m))-C(l*o));q=C(C(j*j)+C(-.5));z[d+40>>2]=C(C(o*q)+C(j*C(C(m*k)-C(i*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(j*C(C(i*o)-C(l*k))))-C(m*p);z[d+32>>2]=C(C(k*q)+C(j*C(C(l*n)-C(m*o))))-C(i*p);Y4(f,e);q=z[h+20>>2];t=z[h+24>>2];w=z[h+16>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];k=z[h+8>>2];m=z[f+4>>2];n=z[h+4>>2];j=z[f+12>>2];o=z[h+12>>2];i=z[f>>2];p=z[h>>2];z[d+56>>2]=C(l*k)+C(C(m*n)+C(C(j*o)+C(i*p)));z[d+52>>2]=C(p*m)+C(C(C(j*k)-C(o*l))-C(i*n));z[d+48>>2]=C(k*i)+C(C(C(j*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(j*p)-C(o*i))-C(m*k));k=C(w-B);k=C(k+k);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*k)-C(n*m))-C(l*o));q=C(C(j*j)+C(-.5));z[d+68>>2]=C(C(o*q)+C(j*C(C(m*k)-C(i*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(j*C(C(i*o)-C(l*k))))-C(m*p);z[d+60>>2]=C(C(k*q)+C(j*C(C(l*n)-C(m*o))))-C(i*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;v[c+12>>2]=147528;v[c>>2]=147308;j=z[E>>2];d=0;f=v[c+80>>2];u[f+116>>1]=0;v[f+108>>2]=1343554297;v[f+112>>2]=1078530011;v[f+100>>2]=2125114026;v[f+104>>2]=-22369622;v[f+88>>2]=0;v[f+92>>2]=0;v[f+80>>2]=0;z[f+84>>2]=j+j;j=C(j*C(.009999999776482582));z[f+96>>2]=j>2]+108>>2]](a,b,e,c+12|0,147284,128)|0;v[c+76>>2]=a;a:{if(a){d=c;break a}Ba[v[v[c>>2]+16>>2]](c)}xa=g+16|0;xa=h- -64|0;return d|0}function N$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0);f=xa-256|0;xa=f;g=z[d+8>>2];l=z[d>>2];h=z[d+4>>2];a:{if(!(l!=C(1)|h!=C(1)|g!=C(1))){u[f+16>>1]=0;v[f+12>>2]=e;v[f+4>>2]=2;v[f>>2]=143520;v[f+8>>2]=f- -64;h=z[c+8>>2];g=C(z[a+8>>2]-z[c+24>>2]);l=C(g+g);m=z[c>>2];g=C(z[a>>2]-z[c+16>>2]);i=C(g+g);g=C(z[a+4>>2]-z[c+20>>2]);j=C(g+g);k=z[c+4>>2];n=C(C(h*l)+C(C(m*i)+C(j*k)));g=z[c+12>>2];o=C(C(g*g)+C(-.5));p=C(C(h*n)+C(C(l*o)-C(g*C(C(m*j)-C(i*k)))));z[f+32>>2]=p;q=C(C(k*n)+C(C(j*o)-C(g*C(C(h*i)-C(l*m)))));z[f+28>>2]=q;h=C(C(m*n)+C(C(i*o)-C(g*C(C(k*l)-C(j*h)))));z[f+24>>2]=h;g=z[a+12>>2];z[f+20>>2]=g*g;z[f+224>>2]=p;z[f+220>>2]=q;z[f+216>>2]=h;v[f+184>>2]=0;v[f+176>>2]=1065353216;v[f+180>>2]=0;g=g>C(.0010000000474974513)?g:C(.0010000000474974513);z[f+168>>2]=g;z[f+164>>2]=g;z[f+160>>2]=g;K$(f+216|0,f+176|0,C(0),1,b,f,f+160|0);a=w[f+16|0];break a}i=z[d+12>>2];m=C(i+i);j=z[d+16>>2];k=C(j+j);A=C(C(1)-C(i*m));E=C(j*k);n=C(A-E);o=C(g*n);i=z[d+20>>2];F=C(m*i);r=z[d+24>>2];H=C(k*r);p=C(F+H);q=C(l*p);y=C(k*i);s=C(m*r);k=C(y-s);x=C(h*k);z[f+248>>2]=C(n*o)+C(C(p*q)+C(k*x));y=C(y+s);s=C(g*y);I=C(m*j);j=C(i+i);J=C(r*j);m=C(I-J);r=C(l*m);K=C(i*j);i=C(A-K);A=C(h*i);z[f+244>>2]=C(n*s)+C(C(p*r)+C(k*A));z[f+236>>2]=C(y*o)+C(C(m*q)+C(i*x));z[f+232>>2]=C(y*s)+C(C(m*r)+C(i*A));j=C(F-H);F=C(j*o);o=C(C(C(1)-E)-K);E=C(o*q);q=C(I+J);z[f+224>>2]=F+C(E+C(q*x));z[f+220>>2]=C(j*s)+C(C(o*r)+C(q*A));r=n;n=C(g*j);s=p;p=C(l*o);x=k;k=C(h*q);z[f+240>>2]=C(r*n)+C(C(s*p)+C(x*k));z[f+228>>2]=C(y*n)+C(C(m*p)+C(i*k));z[f+216>>2]=C(j*n)+C(C(o*p)+C(q*k));t[f+193|0]=C(C(l*h)*g)>2]=e;v[f+176>>2]=143564;v[f+184>>2]=f+216;t[f+192|0]=0;v[f+180>>2]=2;h=z[c+8>>2];p=z[a+8>>2];g=C(p-z[c+24>>2]);l=C(g+g);m=z[c>>2];q=z[a>>2];g=C(q-z[c+16>>2]);i=C(g+g);x=z[a+4>>2];g=C(x-z[c+20>>2]);j=C(g+g);k=z[c+4>>2];n=C(C(h*l)+C(C(m*i)+C(j*k)));g=z[c+12>>2];o=C(C(g*g)+C(-.5));z[f+208>>2]=C(h*n)+C(C(l*o)-C(g*C(C(m*j)-C(i*k))));z[f+204>>2]=C(k*n)+C(C(j*o)-C(g*C(C(h*i)-C(l*m))));z[f+200>>2]=C(m*n)+C(C(i*o)-C(g*C(C(k*l)-C(j*h))));g=z[a+12>>2];z[f+196>>2]=g*g;z[f+120>>2]=g;z[f+116>>2]=g;z[f+108>>2]=p;z[f+104>>2]=x;v[f+96>>2]=1065353216;v[f+80>>2]=1065353216;v[f+84>>2]=0;z[f+112>>2]=g;z[f+100>>2]=q;v[f+88>>2]=0;v[f+92>>2]=0;v[f+72>>2]=0;v[f+76>>2]=0;v[f+64>>2]=1065353216;v[f+68>>2]=0;q_(f,f- -64|0,c,d);g=z[f+52>>2];h=z[f+56>>2];e=g>=h;a=z[f+48>>2]>=(g>h?g:h);d=a?2:e?2:1;c=B(d,12)+f|0;m=z[c>>2];i=z[c+4>>2];G=d<<2;d=f+48|0;g=z[G+d>>2];j=z[c+8>>2];G=a?0:e?1:2;c=B(G,12)+f|0;k=z[c>>2];n=z[c+4>>2];e=B(a,12)+f|0;o=z[e>>2];p=z[e+4>>2];h=z[(d|a<<2)>>2];q=z[e+8>>2];x=z[f+40>>2];y=z[f+44>>2];r=z[f+36>>2];l=z[d+(G<<2)>>2];s=C(l*z[c+8>>2]);z[f+152>>2]=s;z[f+168>>2]=y-s;n=C(l*n);z[f+148>>2]=n;z[f+164>>2]=x-n;l=C(l*k);z[f+144>>2]=l;z[f+160>>2]=r-l;z[f+136>>2]=C(C(h*C(D(q)))+C(g*C(D(j))))+C(.0010000000474974513);z[f+132>>2]=C(C(h*C(D(p)))+C(g*C(D(i))))+C(.0010000000474974513);z[f+128>>2]=C(C(h*C(D(o)))+C(g*C(D(m))))+C(.0010000000474974513);K$(f+160|0,f+144|0,C(2),1,b,f+176|0,f+128|0);a=w[f+192|0]}xa=f+256|0;return(a&255)!=0|0}function a2(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=0,A=0,B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0);g=xa-208|0;xa=g;y=v[c+32>>2];D=z[y+20>>2];A=v[d+32>>2];B=z[A+20>>2];H=z[y+24>>2];I=z[A+24>>2];J=z[y+16>>2];K=z[A+16>>2];m=z[A+8>>2];j=z[y>>2];p=z[A>>2];i=z[y+8>>2];q=z[A+4>>2];h=z[y+12>>2];k=z[A+12>>2];n=z[y+4>>2];y=0;v[g+204>>2]=0;v[g+188>>2]=0;v[g+172>>2]=0;L=C(i*q);M=C(n*m);N=C(h*p);O=C(j*k);l=C(C(L-M)+C(N-O));o=C(l+l);P=C(j*m);Q=C(i*p);R=C(h*q);S=C(n*k);r=C(C(P-Q)+C(R-S));u=C(r+r);w=C(C(1)-C(l*o));T=C(r*u);z[g+184>>2]=w-T;U=C(n*p);V=C(j*q);W=C(h*m);X=C(i*k);l=C(C(U-V)+C(W-X));x=C(l*u);Y=C(h*k);s=C(-j);Z=C(n*q);_=C(m*i);F=C(Y-C(C(C(p*s)-Z)-_));t=C(F*o);z[g+180>>2]=x-t;z[g+168>>2]=x+t;$=C(l+l);aa=C(l*$);z[g+164>>2]=w-aa;w=C(K-J);x=C(B-D);t=C(C(s*w)-C(x*n));s=C(I-H);t=C(t-C(i*s));G=C(C(h*h)+C(-.5));E=C(C(C(h*C(C(n*w)-C(j*x)))+C(G*s))-C(i*t));z[g+200>>2]=E+E;E=C(C(C(G*x)+C(h*C(C(j*s)-C(i*w))))-C(n*t));z[g+196>>2]=E+E;v[g+156>>2]=0;l=C(l*o);u=C(F*u);z[g+176>>2]=l+u;o=C(r*o);r=C(F*$);z[g+160>>2]=o-r;z[g+152>>2]=l-u;z[g+148>>2]=o+r;z[g+144>>2]=C(C(1)-T)-aa;h=C(C(C(G*w)+C(h*C(C(i*x)-C(n*s))))-C(j*t));z[g+192>>2]=h+h;v[g+140>>2]=0;s=C(-p);n=C(J-K);o=C(D-B);l=C(H-I);r=C(C(C(s*n)-C(o*q))-C(m*l));x=C(C(k*k)+C(-.5));h=C(C(C(k*C(C(q*n)-C(p*o)))+C(l*x))-C(m*r));z[g+136>>2]=h+h;h=C(C(C(k*C(C(p*l)-C(m*n)))+C(o*x))-C(q*r));z[g+132>>2]=h+h;v[g+124>>2]=0;i=C(C(M-L)+C(O-N));h=C(i+i);u=C(C(Q-P)+C(S-R));w=C(u+u);t=C(C(1)-C(i*h));D=C(u*w);z[g+120>>2]=t-D;i=C(C(V-U)+C(X-W));B=C(i*w);j=C(Y-C(C(C(s*j)-Z)-_));s=C(j*h);z[g+116>>2]=B-s;v[g+108>>2]=0;z[g+104>>2]=B+s;B=t;s=C(i+i);t=C(i*s);z[g+100>>2]=B-t;k=C(C(C(k*C(C(o*m)-C(q*l)))+C(n*x))-C(p*r));z[g+128>>2]=k+k;k=C(i*h);m=C(j*w);z[g+112>>2]=k+m;h=C(u*h);j=C(j*s);z[g+96>>2]=h-j;v[g+92>>2]=0;z[g+88>>2]=k-m;z[g+84>>2]=h+j;z[g+80>>2]=C(C(1)-D)-t;v[g+76>>2]=0;v[g+48>>2]=2139095039;v[g+40>>2]=0;v[g+44>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+16>>2]=0;a:{if(!X1(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(!X1(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(!Y1(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=v[g+52>>2];v[e>>2]=v[g+48>>2];v[e+4>>2]=a;a=v[g+60>>2];v[e+8>>2]=v[g+56>>2];v[e+12>>2]=a;b:{if(v[g+76>>2]==1){a=v[d+32>>2];h=z[a+12>>2];k=z[a+8>>2];m=z[g+40>>2];j=z[a>>2];p=z[g+32>>2];i=z[a+4>>2];q=z[g+36>>2];n=C(C(k*m)+C(C(j*p)+C(i*q)));o=C(C(h*h)+C(-.5));l=C(C(C(h*C(C(j*q)-C(p*i)))+C(o*m))+C(k*n));l=C(l+l);r=C(C(i*n)+C(C(o*q)+C(h*C(C(k*p)-C(m*j)))));r=C(r+r);h=C(C(j*n)+C(C(p*o)+C(h*C(C(i*m)-C(q*k)))));h=C(h+h);break b}a=v[c+32>>2];h=z[a+12>>2];k=z[a+8>>2];m=z[g+40>>2];j=z[a>>2];p=z[g+32>>2];i=z[a+4>>2];q=z[g+36>>2];n=C(C(k*m)+C(C(j*p)+C(i*q)));o=C(C(h*h)+C(-.5));l=C(C(C(C(h*C(C(j*q)-C(p*i)))+C(o*m))+C(k*n))*C(-2));r=C(C(C(i*n)+C(C(o*q)+C(h*C(C(k*p)-C(m*j)))))*C(-2));h=C(C(C(j*n)+C(C(p*o)+C(h*C(C(i*m)-C(q*k)))))*C(-2))}v[f+12>>2]=0;z[f+8>>2]=l;z[f+4>>2]=r;z[f>>2]=h;y=1}xa=g+208|0;return y}function Tx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=0,i=C(0),j=C(0),k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=0,x=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0);d=xa+-64|0;xa=d;a:{if(w[a+488|0]){a9(v[37696],8,12859,545,76983,0);break a}k=v[a+448>>2];h=v[b+52>>2];v[d+56>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;m=Bx(h,k,d+16|0);v[d+40>>2]=0;v[d+44>>2]=0;v[d+48>>2]=v[b+24>>2];l=h+4|0;u=k<<5;e=v[h+4>>2];c=v[h+8>>2];f=v[(e+(c<<2)|0)-4>>2];if((u|0)<=(f-v[h+16>>2]|0)){f=f-u|0;v[d>>2]=f;b:{if(c>>>0>=(v[h+12>>2]&2147483647)>>>0){Us(l,d);break b}v[e+(c<<2)>>2]=f;v[h+8>>2]=c+1}q=v[d>>2]}if(k){u=v[a+444>>2];O=v[b>>2];e=0;while(1){b=e<<5;c=b+O|0;o=z[c>>2];n=z[c+4>>2];f=b+q|0;b=v[(b+u|0)+16>>2];g=z[b+124>>2];z[f+8>>2]=g*z[c+8>>2];z[f+4>>2]=g*n;z[f>>2]=g*o;j=z[b>>2];n=C(j+j);g=z[b+8>>2];p=C(n*g);r=z[b+4>>2];i=C(r+r);s=z[b+12>>2];x=C(i*s);o=C(p-x);J=C(p+x);p=z[b+120>>2];x=C(J*p);K=C(C(1)-C(j*n));A=C(r*i);j=C(K-A);B=z[b+112>>2];D=C(g+g);L=C(g*D);M=C(C(C(1)-A)-L);A=C(B*M);E=C(i*g);G=C(n*s);g=C(E+G);i=z[b+116>>2];H=C(n*r);F=C(D*s);N=C(H-F);n=C(i*N);r=C(C(x*j)+C(C(A*o)+C(g*n)));s=z[c+24>>2];P=C(s*C(C(C(j*p)*j)+C(C(C(B*o)*o)+C(g*C(g*i)))));D=z[c+16>>2];I=z[c+20>>2];E=C(E-G);p=C(E*p);G=C(p*j);j=C(H+F);B=C(B*j);H=C(B*o);F=g;g=C(K-L);o=C(i*g);i=C(G+C(H+C(F*o)));z[f+24>>2]=P+C(C(D*r)+C(I*i));F=C(s*i);i=C(C(x*E)+C(C(A*j)+C(g*n)));z[f+20>>2]=F+C(C(D*i)+C(I*C(C(p*E)+C(C(B*j)+C(g*o)))));z[f+16>>2]=C(s*r)+C(C(D*C(C(x*J)+C(C(A*M)+C(N*n))))+C(I*i));e=e+1|0;if((k|0)!=(e|0)){continue}break}}b=a+112|0;v[d+32>>2]=q;c:{if(t[v[a+476>>2]]&1){v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;c=d+16|0;vx(b,c);I9(v[d+24>>2],0,v[a+448>>2]<<5);rx(b,d,c);Hx(b,c);Jx(b,c);Ix(b,c);break c}v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;c=d+16|0;vx(b,c);I9(v[d+24>>2],0,v[a+448>>2]<<5);rx(b,d,c);Hx(b,c);Jx(b,c);Lx(b,c);Mx(b,c)}a=v[h+16>>2];d:{if(!(a>>>0<=m>>>0&m>>>0>2]>>>0)){if(!m){break d}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,m);break d}u=v[h+4>>2];c=0;k=v[h+8>>2];e=k;while(1){f=c;c=c+1|0;a=e;e=a-1|0;b=u+(e<<2)|0;if(m>>>0>y[b>>2]){continue}break}e:{if(a>>>0>=k>>>0){break e}e=f&3;if(e){c=0;while(1){v[b>>2]=v[v[l>>2]+(a<<2)>>2];a=a+1|0;b=b+4|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}if(f-1>>>0<3){break e}while(1){c=a<<2;v[b>>2]=v[c+v[l>>2]>>2];v[b+4>>2]=v[(c+v[l>>2]|0)+4>>2];v[b+8>>2]=v[(c+v[l>>2]|0)+8>>2];v[b+12>>2]=v[(c+v[l>>2]|0)+12>>2];b=b+16|0;a=a+4|0;if((k|0)!=(a|0)){continue}break}}v[h+8>>2]=k-1}a=v[h+16>>2];if(!(a>>>0<=q>>>0&a+v[h+20>>2]>>>0>q>>>0)){if(!q){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,q);break a}k=v[h+4>>2];c=0;m=v[h+8>>2];e=m;while(1){f=c;c=c+1|0;a=e;e=a-1|0;b=k+(e<<2)|0;if(y[b>>2]>>0){continue}break}f:{if(a>>>0>=m>>>0){break f}e=f&3;if(e){c=0;while(1){v[b>>2]=v[v[l>>2]+(a<<2)>>2];a=a+1|0;b=b+4|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}if(f-1>>>0<3){break f}while(1){c=a<<2;v[b>>2]=v[c+v[l>>2]>>2];v[b+4>>2]=v[(c+v[l>>2]|0)+4>>2];v[b+8>>2]=v[(c+v[l>>2]|0)+8>>2];v[b+12>>2]=v[(c+v[l>>2]|0)+12>>2];b=b+16|0;a=a+4|0;if((m|0)!=(a|0)){continue}break}}v[h+8>>2]=m-1}xa=d- -64|0}function nN(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,A=0,C=0,D=0;n=xa-48|0;xa=n;b=v[a+40>>2];if(v[b+11896>>2]){g=v[a+32>>2];s=v[g+44>>2];m=v[g+36>>2];e=v[b+11892>>2];while(1){t=p<<2;i=v[t+e>>2]+c|0;a:{if(i>>>0>c>>>0){l=0;j=c;while(1){g=d;f=x[((j<<3)+s|0)+4>>1];b:{if(!f){break b}o=f+h|0;while(1){b=(h<<5)+m|0;c:{if(!x[b+22>>1]){f=f-1|0;break c}if((d|0)!=(h|0)){k=v[b+4>>2];e=(d<<5)+m|0;v[e>>2]=v[b>>2];v[e+4>>2]=k;k=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=k;k=v[b+20>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=k;k=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=k}d=d+1|0}h=h+1|0;if((o&65535)!=(h&65535)){continue}break}e=f&65535;if(!e){break b}o=(A<<3)+s|0;u[o+4>>1]=f;v[o>>2]=g;b=w[v[((g<<5)+m|0)+24>>2]];d:{if((b|0)!=5){break d}b=5;if(e>>>0<2){break d}f=e-1|0;k=f&3;e:{if(e-2>>>0<3){e=1;break e}C=f&-4;f=0;e=1;while(1){D=b;b=(e+g<<5)+m|0;b=w[v[b+120>>2]]==1?1:w[v[b+88>>2]]==1?1:w[v[b+56>>2]]==1?1:w[v[b+24>>2]]==1?1:D;e=e+4|0;f=f+4|0;if((C|0)!=(f|0)){continue}break}}f=0;if(!k){break d}while(1){b=w[v[((e+g<<5)+m|0)+24>>2]]==1?1:b;e=e+1|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}u[o+6>>1]=b&255;l=l+1|0;A=A+1|0}j=j+1|0;if((i|0)!=(j|0)){continue}break}b=v[a+40>>2];e=v[b+11892>>2];c=v[t+e>>2]+c|0;break a}l=0;c=i}v[(q<<2)+e>>2]=l;r=l+r|0;q=((l|0)!=0)+q|0;p=p+1|0;if(p>>>0>2]){continue}break}}v[b+11968>>2]=r;v[b+11896>>2]=q;c=v[v[a+36>>2]+4>>2];i=c&2147483647;f:{if(!i){d=0;v[b+12064>>2]=0;v[b+12052>>2]=0;break f}j=c&3;g=v[b+12144>>2];c=0;h=0;d=0;if(i-1>>>0>=3){i=i-j|0;f=0;while(1){e=w[(g+B(h,52)|0)+48|0];d=d>>>0>e>>>0?d:e;e=w[(g+B(h|1,52)|0)+48|0];d=d>>>0>e>>>0?d:e;e=w[(g+B(h|2,52)|0)+48|0];d=d>>>0>e>>>0?d:e;e=w[(g+B(h|3,52)|0)+48|0];d=d>>>0>e>>>0?d:e;h=h+4|0;f=f+4|0;if((i|0)!=(f|0)){continue}break}}if(j){while(1){i=w[(g+B(h,52)|0)+48|0];d=d>>>0>i>>>0?d:i;h=h+1|0;c=c+1|0;if((j|0)!=(c|0)){continue}break}}v[b+12052>>2]=0;if((v[b+12056>>2]&2147483647)>>>0>>0){yw(b+12048|0,d);b=v[a+40>>2]}v[b+12064>>2]=0;v[b+12052>>2]=d;if((v[b+12068>>2]&2147483647)>>>0>=d>>>0){break f}yw(b+12060|0,d);b=v[a+40>>2]}v[b+12064>>2]=d;v[n+40>>2]=v[b+12048>>2];v[n+44>>2]=v[b+12060>>2];g:{if(v[b+11896>>2]){c=v[a+16>>2];c=Ba[v[v[c>>2]+4>>2]](c)|0;d=Ba[v[v[c>>2]+4>>2]](c)|0;c=v[a+40>>2];b=v[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=v[a+44>>2];d=v[a+32>>2];g=v[a+36>>2];a=v[a+28>>2];IM(b,d,g,c,z[a+92>>2],v[a+80>>2],v[a+84>>2],n+8|0);break g}c=v[a+28>>2];v[c+100>>2]=0;v[c+104>>2]=0;v[c+116>>2]=0;v[c+120>>2]=0;v[c+108>>2]=0;v[c+112>>2]=0;c=b>>>3|0;b=c>>>0>d>>>0?d:c;g=vr(v[v[a+44>>2]+620>>2],B(b,48));e=0;while(1){j=v[a+28>>2];i=v[a+32>>2];f=v[a+36>>2];h=v[a+40>>2];d=v[a+44>>2];l=v[d+632>>2];m=v[d+636>>2];c=g+B(e,48)|0;v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=l;v[c+12>>2]=m;v[c>>2]=133556;v[c+44>>2]=d;v[c+36>>2]=f;v[c+40>>2]=h;v[c+28>>2]=j;v[c+32>>2]=i;d=v[a+20>>2];v[c+24>>2]=1;v[c+20>>2]=d;if(d){Ba[v[v[d>>2]+16>>2]](d);v[c+16>>2]=v[v[c+20>>2]+16>>2];d=v[c>>2]}else{d=133556}Ba[v[d+20>>2]](c);e=e+1|0;if((b|0)!=(e|0)){continue}break}break g}c=v[a+44>>2];d=v[a+32>>2];g=v[a+36>>2];a=v[a+28>>2];IM(c,d,g,b,z[a+92>>2],v[a+80>>2],v[a+84>>2],n+8|0)}xa=n+48|0}function Gd(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0;h=xa+-64|0;xa=h;z[h+32>>2]=z[d>>2];z[h+36>>2]=z[d+4>>2];z[h+40>>2]=z[d+8>>2];z[h+44>>2]=z[d+12>>2];z[h+48>>2]=z[c>>2];z[h+52>>2]=z[c+4>>2];z[h+56>>2]=z[c+8>>2];z[h>>2]=z[g>>2];z[h+4>>2]=z[g+4>>2];z[h+8>>2]=z[g+8>>2];z[h+12>>2]=z[g+12>>2];z[h+16>>2]=z[f>>2];z[h+20>>2]=z[f+4>>2];z[h+24>>2]=z[f+8>>2];g=xa-16|0;xa=g;c=v[37696];d=c+12|0;c=(F=d,G=84,H=Ba[v[v[c>>2]+20>>2]](c)|0?28015:63804,I=6562,J=45,E=v[v[d>>2]+8>>2],Ba[E](F|0,G|0,H|0,I|0,J|0)|0);Ba[v[v[a>>2]+20>>2]](a)|0;u[g+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[g+8>>1];u[c+4>>1]=257;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=148496;v[c>>2]=148260;v[c+8>>2]=0;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,144,24422,17141,454)|0;k=z[h+44>>2];l=z[h+40>>2];m=z[h+32>>2];i=z[h+36>>2];r=v[h+52>>2];s=v[h+48>>2];z[c+44>>2]=z[h+56>>2];v[c+36>>2]=s;v[c+40>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+24>>2]=j*i;z[c+28>>2]=l*i;z[c+32>>2]=k*i;z[c+20>>2]=m*i;k=z[h+12>>2];l=z[h+8>>2];m=z[h>>2];i=z[h+4>>2];r=v[h+20>>2];s=v[h+16>>2];z[c+72>>2]=z[h+24>>2];D=c- -64|0;v[D>>2]=s;v[D+4>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+52>>2]=j*i;z[c+56>>2]=l*i;z[c+60>>2]=k*i;z[c+48>>2]=m*i;Y4(f,b);q=z[h+52>>2];t=z[h+56>>2];w=z[h+48>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+40>>2];m=z[f+4>>2];n=z[h+36>>2];k=z[f+12>>2];o=z[h+44>>2];i=z[f>>2];p=z[h+32>>2];z[d+28>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+24>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+20>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+40>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+32>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);Y4(f,e);q=z[h+20>>2];t=z[h+24>>2];w=z[h+16>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+8>>2];m=z[f+4>>2];n=z[h+4>>2];k=z[f+12>>2];o=z[h+12>>2];i=z[f>>2];p=z[h>>2];z[d+56>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+52>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+48>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+68>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+60>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;v[c+12>>2]=148156;v[c>>2]=147912;f=v[c+80>>2];v[f+124>>2]=1078530011;d=0;u[f+128>>1]=0;v[f+88>>2]=1065353216;v[f+92>>2]=0;v[f+80>>2]=0;v[f+84>>2]=2139095039;v[f+116>>2]=-1077342245;v[f+120>>2]=1343554297;v[f+108>>2]=1036831949;v[f+112>>2]=1070141403;v[f+100>>2]=0;v[f+104>>2]=0;v[f+96>>2]=1056964608;a=Ba[v[v[a>>2]+108>>2]](a,b,e,c+12|0,147888,144)|0;v[c+76>>2]=a;a:{if(a){d=c;break a}Ba[v[v[c>>2]+16>>2]](c)}xa=g+16|0;xa=h- -64|0;return d|0}function fN(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,y=0;g=xa+-64|0;xa=g;c=v[a+40>>2];k=v[c+12144>>2];b=v[a+28>>2];d=v[b+8>>2];if(!(!(d&2147483647)|!(d&2147483646))){h=v[a+32>>2];i=v[b+88>>2];j=i+w[k+49|0]|0;c=i;m=1;while(1){i=i- -64|0;d=c- -64|0;l=w[(k+B(m,52)|0)+49|0];if(d+l>>>0>d>>>0){if(l&1){b=h+(d<<5)|0;f=v[b+4>>2];e=h+(j<<5)|0;v[e>>2]=v[b>>2];v[e+4>>2]=f;f=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=f;f=v[b+20>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;j=j+1|0;b=c+65|0}else{b=d}if((l|0)!=1){l=i+l|0;while(1){c=h+(b<<5)|0;f=v[c+4>>2];e=h+(j<<5)|0;v[e>>2]=v[c>>2];v[e+4>>2]=f;f=v[c+28>>2];v[e+24>>2]=v[c+24>>2];v[e+28>>2]=f;f=v[c+20>>2];v[e+16>>2]=v[c+16>>2];v[e+20>>2]=f;f=v[c+12>>2];v[e+8>>2]=v[c+8>>2];v[e+12>>2]=f;f=v[c+36>>2];v[e+32>>2]=v[c+32>>2];v[e+36>>2]=f;f=v[c+60>>2];v[e+56>>2]=v[c+56>>2];v[e+60>>2]=f;f=v[c+44>>2];v[e+40>>2]=v[c+40>>2];v[e+44>>2]=f;f=v[c+52>>2];v[e+48>>2]=v[c+48>>2];v[e+52>>2]=f;j=j+2|0;b=b+2|0;if((l|0)!=(b|0)){continue}break}}b=v[a+28>>2]}c=d;m=m+1|0;if(m>>>0<(v[b+8>>2]&2147483647)>>>0){continue}break}c=v[a+40>>2]}e=0;v[c+11896>>2]=0;i=v[c+11956>>2];v[g>>2]=0;bz(c+11892|0,1,g);b=v[a+40>>2];v[v[b+11892>>2]>>2]=0;d=v[a+36>>2];v[g+12>>2]=k;v[g+8>>2]=64;v[g>>2]=d;v[g+20>>2]=v[a+32>>2];v[g+16>>2]=v[b+12148>>2];d=v[a+28>>2];c=v[d+4>>2];v[g+24>>2]=i;v[g+4>>2]=c;v[g+28>>2]=v[d+56>>2];d=v[d+60>>2];v[g+44>>2]=0;v[g+32>>2]=d;t[g+56|0]=0;v[g+52>>2]=b+11916;v[g+48>>2]=b+11892;v[g+36>>2]=0;v[g+40>>2]=0;b=Py(g);h=v[a+40>>2];v[h+12104>>2]=b;k=v[g+36>>2];v[h+11868>>2]=k;v[h+11876>>2]=v[g+40>>2];p=v[g+44>>2];v[h+11880>>2]=p;s=k+p|0;q=v[h+11956>>2];a:{if(!k){f=v[v[a+28>>2]- -64>>2];break a}y=w[g+56|0]?1:4;a=v[a+28>>2];m=v[a+56>>2];f=v[a- -64>>2];o=v[v[h+11892>>2]>>2];c=0;l=0;i=0;while(1){a=o-c|0;j=a>>>0>>0?a:y;b:{if(!j){b=0;break b}r=(e<<3)+f|0;b=m+(c<<5)|0;a=x[b+22>>1];c:{d:{if(x[b+8>>1]!=65535|x[b+10>>1]!=65535){break d}e:{if((a|0)!=1){if((i|0)==-1|(a|0)!=2|j>>>0<=1){break d}break e}d=1;if((i|0)==-1){b=1;break c}b=1;if(j>>>0<2){break c}}b=1;f:{d=m+(c+1<<5)|0;g:{if((a|0)!=x[d+22>>1]|x[d+8>>1]!=65535|x[d+10>>1]!=65535){break g}d=j&65535;if(d>>>0<3){break f}b=2;n=m+(c+2<<5)|0;if((a|0)!=x[n+22>>1]|x[n+8>>1]!=65535|x[n+10>>1]!=65535){break g}if(d>>>0<4){break f}b=3;n=m+(c+3<<5)|0;if((a|0)!=x[n+22>>1]|x[n+8>>1]!=65535|x[n+10>>1]!=65535){break g}if(d>>>0<5){break f}b=4;d=m+(c+4<<5)|0;if((a|0)!=x[d+22>>1]){break g}b=(x[d+8>>1]&x[d+10>>1])!=65535?4:j}d=a;break c}d=a;b=j;break c}d=a;b=1}e=e+1|0;v[r>>2]=c;u[r+6>>1]=d;u[r+4>>1]=b;l=l+1|0}c=(b&65535)+c|0;if(!((k|0)==(o|0)|(o|0)!=(c|0))){a=v[h+11892>>2];v[a+(i<<2)>>2]=l;i=i+1|0;o=v[a+(i<<2)>>2];l=0}if(c>>>0>>0){continue}break}if(!k){break a}v[v[h+11892>>2]+(i<<2)>>2]=l}v[h+11896>>2]=v[h+12104>>2];b=e;h:{if((q|0)==(s|0)){break h}a=q-s|0;i=a&1;i:{if((k|0)==((p^-1)+q|0)){c=0;break i}j=a&-2;c=0;d=0;while(1){a=(b<<3)+f|0;v[a+4>>2]=262145;v[a>>2]=c+k;v[a+12>>2]=262145;v[a+8>>2]=k+(c|1);c=c+2|0;b=b+2|0;d=d+2|0;if((j|0)!=(d|0)){continue}break}}if(!i){break h}a=(b<<3)+f|0;v[a+4>>2]=262145;v[a>>2]=c+k;b=b+1|0}v[h+12072>>2]=e;v[h+11968>>2]=b;v[h+12076>>2]=b-e;xa=g- -64|0}function J5(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0);a:{if(g){G=z[c+20>>2];y=z[c+24>>2];s=z[e+24>>2];H=z[e+20>>2];A=z[f- -64>>2];B=z[f+60>>2];I=z[f+68>>2];J=z[c+16>>2];L=z[e+16>>2];i=z[c+12>>2];m=z[e+8>>2];l=z[f+52>>2];u=z[e+4>>2];k=z[f+48>>2];j=z[e+12>>2];h=z[f+56>>2];r=z[f+44>>2];n=z[e>>2];q=C(C(m*l)+C(C(u*k)+C(C(j*h)+C(r*n))));o=C(C(k*m)+C(C(C(h*n)-C(j*r))-C(u*l)));v=z[c>>2];w=z[c+4>>2];p=C(C(l*n)+C(C(C(h*u)-C(j*k))-C(m*r)));x=z[c+8>>2];t=C(C(r*u)+C(C(C(h*m)-C(j*l))-C(n*k)));D=C(C(C(C(i*q)-C(o*v))-C(w*p))-C(x*t));z[b+12>>2]=D;E=C(C(C(v*p)+C(C(i*t)+C(q*x)))-C(o*w));z[b+8>>2]=E;F=C(C(C(x*o)+C(C(i*p)+C(q*w)))-C(t*v));z[b+4>>2]=F;q=C(C(C(w*t)+C(C(i*o)+C(q*v)))-C(p*x));z[b>>2]=q;M=y;N=s;o=C(I*C(-2));p=C(B*C(-2));t=C(A*C(-2));A=C(C(l*o)+C(C(r*p)+C(k*t)));B=C(C(h*h)+C(-.5));y=C(C(l*A)+C(C(o*B)-C(h*C(C(r*t)-C(p*k)))));y=C(y+y);s=C(C(r*A)+C(C(p*B)-C(h*C(C(k*o)-C(t*l)))));s=C(s+s);h=C(C(k*A)+C(C(t*B)-C(h*C(C(l*p)-C(o*r)))));h=C(h+h);r=C(C(m*y)+C(C(n*s)+C(u*h)));o=C(C(j*j)+C(-.5));l=C(N+C(C(m*r)+C(C(y*o)+C(j*C(C(n*h)-C(s*u))))));l=C(l+l);k=C(L+C(C(n*r)+C(C(s*o)+C(j*C(C(u*y)-C(h*m))))));k=C(k+k);j=C(H+C(C(u*r)+C(C(h*o)+C(j*C(C(m*s)-C(y*n))))));j=C(j+j);h=C(C(x*l)+C(C(v*k)+C(w*j)));m=C(C(i*i)+C(-.5));z[b+24>>2]=M+C(C(x*h)+C(C(l*m)+C(i*C(C(v*j)-C(k*w)))));z[b+20>>2]=G+C(C(w*h)+C(C(j*m)+C(i*C(C(x*k)-C(l*v)))));z[b+16>>2]=J+C(C(v*h)+C(C(k*m)+C(i*C(C(w*l)-C(j*x)))));i=C(K(C(C(D*D)+C(C(E*E)+C(C(q*q)+C(F*F))))));if(i==C(0)){break a}i=C(C(1)/i);z[b+12>>2]=D*i;z[b+8>>2]=E*i;z[b+4>>2]=F*i;z[b>>2]=q*i;return}G=z[d+20>>2];H=z[d+24>>2];s=z[e+24>>2];I=z[e+20>>2];y=z[f+40>>2];A=z[f+32>>2];B=z[f+36>>2];J=z[d+16>>2];L=z[e+16>>2];i=z[d+12>>2];j=z[e+12>>2];h=z[f+28>>2];m=z[e>>2];l=z[f+16>>2];u=z[e+4>>2];k=z[f+20>>2];r=z[e+8>>2];n=z[f+24>>2];q=C(C(C(C(j*h)-C(m*l))-C(u*k))-C(r*n));o=C(C(C(u*n)+C(C(j*C(-l))-C(h*m)))-C(k*r));v=z[d>>2];w=z[d+4>>2];p=C(C(C(r*l)+C(C(j*C(-k))-C(h*u)))-C(n*m));x=z[d+8>>2];t=C(C(C(m*k)+C(C(j*C(-n))-C(h*r)))-C(l*u));D=C(C(C(C(i*q)-C(o*v))-C(w*p))-C(x*t));z[a+12>>2]=D;E=C(C(C(w*t)+C(C(i*o)+C(q*v)))-C(p*x));z[a>>2]=E;F=C(C(C(v*p)+C(C(i*t)+C(q*x)))-C(o*w));z[a+8>>2]=F;o=C(C(C(x*o)+C(C(i*p)+C(q*w)))-C(t*v));z[a+4>>2]=o;p=C(y*C(-2));t=C(A*C(-2));y=C(B*C(-2));A=C(C(n*p)+C(C(l*t)+C(k*y)));B=C(C(h*h)+C(-.5));q=C(C(C(n*A)+C(C(p*B)-C(h*C(C(l*y)-C(t*k)))))-s);q=C(q+q);s=C(C(C(l*A)+C(C(t*B)-C(h*C(C(k*p)-C(y*n)))))-L);s=C(s+s);h=C(C(C(k*A)+C(C(y*B)-C(h*C(C(n*t)-C(p*l)))))-I);h=C(h+h);l=C(C(C(C(-m)*s)-C(h*u))-C(r*q));p=C(C(j*j)+C(-.5));k=C(C(C(q*p)+C(j*C(C(u*s)-C(m*h))))-C(r*l));k=C(k+k);n=C(C(C(s*p)+C(j*C(C(r*h)-C(u*q))))-C(m*l));n=C(n+n);j=C(C(C(h*p)+C(j*C(C(m*q)-C(r*s))))-C(u*l));j=C(j+j);h=C(C(x*k)+C(C(v*n)+C(w*j)));m=C(C(i*i)+C(-.5));z[a+24>>2]=H+C(C(x*h)+C(C(k*m)+C(i*C(C(v*j)-C(n*w)))));z[a+20>>2]=G+C(C(w*h)+C(C(j*m)+C(i*C(C(x*n)-C(k*v)))));z[a+16>>2]=J+C(C(v*h)+C(C(n*m)+C(i*C(C(w*k)-C(j*x)))));i=C(K(C(C(D*D)+C(C(F*F)+C(C(E*E)+C(o*o))))));if(i==C(0)){break a}i=C(C(1)/i);z[a+12>>2]=D*i;z[a+8>>2]=F*i;z[a+4>>2]=o*i;z[a>>2]=E*i}}function L8(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=C(0),B=C(0),D=C(0);c=xa-176|0;xa=c;v[c+60>>2]=a;v[c+56>>2]=a;h=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=h;h=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=h;D5(c+144|0,c+112|0,e,f,g);l=z[f+20>>2];m=z[f+16>>2];k=z[c+132>>2];q=z[c+128>>2];t=z[c+136>>2];z[b+8>>2]=t-z[f+24>>2];z[b+4>>2]=k-l;z[b>>2]=q-m;l=z[f+20>>2];m=z[f+16>>2];z[c+72>>2]=t-z[f+24>>2];z[c+68>>2]=k-l;z[c+64>>2]=q-m;l=z[g+20>>2];m=z[g+24>>2];n=z[g+16>>2];A=z[c+164>>2];z[c+92>>2]=A;z[c+108>>2]=t;z[c+104>>2]=k;B=z[c+168>>2];z[c+96>>2]=B;z[c+84>>2]=t-m;z[c+80>>2]=k-l;D=z[c+160>>2];z[c+88>>2]=D;z[c+100>>2]=q;z[c+76>>2]=q-n;o=z[c+124>>2];l=z[c+156>>2];r=z[c+120>>2];m=z[c+152>>2];s=z[c+112>>2];p=z[c+144>>2];y=z[c+116>>2];n=z[c+148>>2];if(C(C(o*l)+C(C(r*m)+C(C(s*p)+C(y*n))))>2]=o;r=C(-r);z[c+120>>2]=r;y=C(-y);z[c+116>>2]=y;s=C(-s);z[c+112>>2]=s}if(w[e+112|0]&2){k=C(C(m*r)+C(C(n*y)+C(C(l*o)+C(p*s))));q=C(C(s*n)+C(C(C(l*r)-C(o*m))-C(p*y)));t=C(C(r*p)+C(C(C(l*y)-C(o*n))-C(m*s)));A=C(0);p=C(C(y*m)+C(C(C(l*s)-C(o*p))-C(n*r)));a:{if(p==C(0)){m=C(1);n=C(0);l=C(0);break a}l=C(C(1)/C(K(C(C(k*k)+C(C(C(p*p)+C(0))+C(0))))));m=C(k*l);n=C(l*C(0));l=C(p*l)}o=C(n*q);r=C(t*n);z[c+52>>2]=o+C(r+C(C(k*m)+C(p*l)));z[c+40>>2]=o+C(C(C(p*m)-C(k*l))-r);k=C(k*C(-n));n=C(n*p);z[c+48>>2]=C(l*t)+C(C(k+C(q*m))-n);z[c+44>>2]=n+C(C(k+C(t*m))-C(q*l));b=v[e+104>>2];d=v[e+100>>2];z[c+16>>2]=z[e+92>>2]>C(0)|z[e+88>>2]>C(0)?A:z[e+96>>2];v[c+8>>2]=d;v[c+12>>2]=b;b:{if(!E5(c+8|0,c+40|0,c+24|0,c+20|0)){m=z[c+152>>2];n=z[c+148>>2];p=z[c+144>>2];l=z[c+156>>2];break b}v[c+60>>2]=a+80;m=z[c+152>>2];k=z[c+32>>2];l=z[c+156>>2];p=z[c+144>>2];o=z[c+28>>2];n=z[c+148>>2];q=z[c+24>>2];r=z[c+20>>2];v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;z[a+12>>2]=r;b=x[a+76>>1];d=b|64;u[a+76>>1]=d;k=C(k+k);q=C(q+q);o=C(o+o);s=C(C(m*k)+C(C(p*q)+C(n*o)));y=C(C(l*l)+C(-.5));t=C(C(m*s)+C(C(k*y)+C(l*C(C(p*o)-C(q*n)))));z[a+56>>2]=t;A=C(C(n*s)+C(C(o*y)+C(l*C(C(m*q)-C(k*p)))));z[a+52>>2]=A;k=C(C(p*s)+C(C(q*y)+C(l*C(C(n*k)-C(o*m)))));z[a+48>>2]=k;z[a+24>>2]=t;z[a+20>>2]=A;z[a+16>>2]=k;k=z[e+88>>2];c:{if(z[e+92>>2]>C(0)|k>C(0)){z[a+64>>2]=k;z[a+68>>2]=z[e+92>>2];b=b|81;break c}u[a+78>>1]=2049;z[a+64>>2]=z[e+80>>2];z[a+68>>2]=z[e+84>>2];b=d|(r>C(0)?24:16);if(!(z[e+80>>2]>C(0))){break c}b=b|4}v[a+44>>2]=0;u[a+76>>1]=b}B=z[c+168>>2];t=z[c+136>>2];A=z[c+164>>2];D=z[c+160>>2];q=z[c+128>>2];k=z[c+132>>2]}o=C(t-B);o=C(o+o);q=C(q-D);q=C(q+q);k=C(k-A);k=C(k+k);r=C(C(m*o)+C(C(p*q)+C(k*n)));s=C(C(l*l)+C(-.5));z[c+16>>2]=C(m*r)+C(C(o*s)-C(l*C(C(p*k)-C(q*n))));z[c+12>>2]=C(n*r)+C(C(k*s)-C(l*C(C(m*q)-C(o*p))));z[c+8>>2]=C(p*r)+C(C(q*s)-C(l*C(C(n*o)-C(k*m))));H5(c+56|0,c+144|0,c+112|0,c+8|0,7,0,c+40|0,c+24|0);l=z[f+16>>2];m=z[f+20>>2];n=z[c+40>>2];p=z[c+44>>2];z[i+8>>2]=z[c+48>>2]+z[f+24>>2];z[i+4>>2]=p+m;z[i>>2]=n+l;l=z[g+16>>2];m=z[g+20>>2];n=z[c+24>>2];p=z[c+28>>2];z[j+8>>2]=z[c+32>>2]+z[g+24>>2];z[j+4>>2]=p+m;z[j>>2]=n+l;xa=c+176|0;return(v[c+60>>2]-v[c+56>>2]|0)/80|0}function _i(a,b){a=a|0;b=b|0;var c=C(0),d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=0,A=C(0),B=C(0),D=C(0),E=C(0),F=0,G=C(0);e=xa+-64|0;xa=e;f=z[b+12>>2];g=z[b+8>>2];h=z[b>>2];c=z[b+4>>2];d=C(C(1)/C(K(C(C(f*f)+C(C(g*g)+C(C(h*h)+C(c*c)))))));i=C(f*d);z[e+44>>2]=i;k=C(g*d);z[e+40>>2]=k;c=C(c*d);z[e+36>>2]=c;h=C(h*d);z[e+32>>2]=h;d=z[b+16>>2];z[e+48>>2]=d;f=z[b+20>>2];z[e+52>>2]=f;g=z[b+24>>2];z[e+56>>2]=g;b=v[a+316>>2]&1024?v[a+56>>2]+144|0:a+112|0;m=z[b+8>>2];l=z[b+4>>2];o=z[b+12>>2];p=z[b>>2];u=z[b+24>>2];q=z[b+20>>2];E=z[b+16>>2];$i(a,e+32|0);d=C(E-d);d=C(d+d);f=C(q-f);f=C(f+f);g=C(u-g);g=C(g+g);u=C(C(C(C(-h)*d)-C(f*c))-C(k*g));q=C(C(i*i)+C(-.5));E=C(C(C(g*q)+C(i*C(C(c*d)-C(h*f))))-C(k*u));G=C(C(C(f*q)+C(i*C(C(h*g)-C(k*d))))-C(c*u));u=C(C(C(d*q)+C(i*C(C(k*f)-C(c*g))))-C(h*u));d=C(C(k*m)+C(C(c*l)+C(C(i*o)+C(h*p))));f=C(C(p*c)+C(C(C(i*m)-C(o*k))-C(h*l)));g=C(C(m*h)+C(C(C(i*l)-C(o*c))-C(k*p)));i=C(C(l*k)+C(C(C(i*p)-C(o*h))-C(c*m)));b=v[a+324>>2];a:{if(!b){break a}j=Ba[v[v[b>>2]+48>>2]](b)|0;b=v[j+8>>2];x=v[j+4>>2];n=x&2?b:j+16|0;k=z[n+36>>2];c=z[n+32>>2];h=z[n+40>>2];m=z[n+28>>2];l=z[n+52>>2];l=C(l+l);o=z[n+44>>2];o=C(o+o);p=z[n+48>>2];p=C(p+p);q=C(C(f*l)+C(C(i*o)+C(g*p)));r=C(C(d*d)+C(-.5));s=C(E+C(C(f*q)+C(C(l*r)+C(d*C(C(i*p)-C(o*g))))));z[e+24>>2]=s;t=C(G+C(C(g*q)+C(C(p*r)+C(d*C(C(f*o)-C(l*i))))));z[e+20>>2]=t;A=C(C(C(C(d*h)-C(m*i))-C(g*c))-C(f*k));z[e+12>>2]=A;B=C(C(C(i*c)+C(C(d*k)+C(f*h)))-C(m*g));z[e+8>>2]=B;D=C(C(C(f*m)+C(C(d*c)+C(g*h)))-C(k*i));z[e+4>>2]=D;k=C(C(C(g*k)+C(C(d*m)+C(i*h)))-C(c*f));z[e>>2]=k;c=C(u+C(C(i*q)+C(C(o*r)+C(d*C(C(g*l)-C(p*f))))));z[e+16>>2]=c;b:{c:{switch((x>>>30|0)-2|0){case 0:if(w[v[j>>2]+4785|0]){break b}break;case 1:break b;default:break c}}aF(j+12|0,e);break a}if(!b){b=Pu(v[j>>2],x>>>24&15);v[j+8>>2]=b}z[b+28>>2]=k;z[b+52>>2]=s;z[b+48>>2]=t;z[b+44>>2]=c;z[b+40>>2]=A;z[b+36>>2]=B;z[b+32>>2]=D;Xu(v[j>>2],j);v[j+4>>2]=v[j+4>>2]|2}if(v[a+356>>2]){k=C(C(d*d)+C(-.5));o=C(-g);p=C(-i);q=C(-f);x=0;while(1){b=v[v[a+352>>2]+(x<<2)>>2];j=Ba[v[v[b>>2]+252>>2]](b)|0;b=v[j+16>>2];F=v[j+12>>2];n=F&1?b:j+24|0;r=z[n+24>>2];s=z[n+20>>2];t=z[n+16>>2];c=z[n+8>>2];h=z[n+4>>2];m=z[n+12>>2];l=z[n>>2];A=C(C(q*c)+C(C(o*h)+C(C(d*m)+C(l*p))));z[e+12>>2]=A;B=C(C(C(i*h)+C(C(d*c)+C(f*m)))-C(l*g));z[e+8>>2]=B;D=C(C(C(f*l)+C(C(d*h)+C(g*m)))-C(c*i));z[e+4>>2]=D;l=C(C(C(g*c)+C(C(d*l)+C(i*m)))-C(h*f));z[e>>2]=l;c=C(r+r);h=C(t+t);m=C(s+s);r=C(C(f*c)+C(C(i*h)+C(g*m)));s=C(E+C(C(f*r)+C(C(c*k)+C(d*C(C(i*m)+C(h*o))))));z[e+24>>2]=s;t=C(G+C(C(g*r)+C(C(m*k)+C(d*C(C(f*h)+C(c*p))))));z[e+20>>2]=t;c=C(u+C(C(i*r)+C(C(h*k)+C(d*C(C(g*c)+C(m*q))))));z[e+16>>2]=c;n=j+8|0;d:{e:{f:{switch((F>>>30|0)-2|0){case 0:if(w[v[n>>2]+4785|0]){break e}break;case 1:break e;default:break f}}$E(j+20|0,e);break d}if(!b){b=Pu(v[j+8>>2],F>>>24&15);v[j+16>>2]=b;s=z[e+24>>2];t=z[e+20>>2];A=z[e+12>>2];B=z[e+8>>2];D=z[e+4>>2];l=z[e>>2];c=z[e+16>>2]}z[b+16>>2]=c;z[b+12>>2]=A;z[b+8>>2]=B;z[b+4>>2]=D;z[b>>2]=l;z[b+24>>2]=s;z[b+20>>2]=t;Xu(v[j+8>>2],n);v[j+12>>2]=v[j+12>>2]|1}x=x+1|0;if(x>>>0>2]){continue}break}}xa=e- -64|0}function A0(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),k=C(0),m=C(0),n=C(0),o=C(0),r=C(0),s=C(0),t=0,u=0,w=0,x=0,y=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0);u=xa-528|0;xa=u;t=v[a+68>>2];w=t-1|0;a:{if((w|0)<0){break a}x=u+16|4;if(w>>>0>=3){V=t&-4;while(1){y=N<<2;M=B(w,112);v[y+x>>2]=M;v[(y|4)+x>>2]=M-112;v[(y|8)+x>>2]=M-224;v[(y|12)+x>>2]=M-336;w=w-4|0;N=N+4|0;S=S+4|0;if((S|0)!=(V|0)){continue}break}}M=t&3;if(M){y=0;while(1){v[(N<<2)+x>>2]=B(w,112);w=w-1|0;N=N+1|0;y=y+1|0;if((M|0)!=(y|0)){continue}break}}if(!t){break a}g=z[c+8>>2];g=g>C(0)?g:C(-g);g=(l(2,(p(g>C(9.999999717180685e-10)?g:C(9.999999717180685e-10)),j(2))|v[c+8>>2]&-2147483648),q());o=C(C(1)/g);o=C(o*C(C(2)-C(o*g)));A=C(C(0)-C(z[b+8>>2]*o));g=z[c+4>>2];g=g>C(0)?g:C(-g);g=(l(2,(p(g>C(9.999999717180685e-10)?g:C(9.999999717180685e-10)),j(2))|v[c+4>>2]&-2147483648),q());r=C(C(1)/g);r=C(r*C(C(2)-C(r*g)));D=C(C(0)-C(z[b+4>>2]*r));g=z[c>>2];g=g>C(0)?g:C(-g);g=(l(2,(p(g>C(9.999999717180685e-10)?g:C(9.999999717180685e-10)),j(2))|v[c>>2]&-2147483648),q());s=C(C(1)/g);s=C(s*C(C(2)-C(s*g)));E=C(C(0)-C(z[b>>2]*s));F=C(z[e+8>>2]+C(1.0000000116860974e-7));G=C(z[e+4>>2]+C(1.0000000116860974e-7));H=C(z[e>>2]+C(1.0000000116860974e-7));b=v[a+88>>2];while(1){c=(u+16|0)+(t<<2)|0;a=v[c>>2];b:{if(a&1){v[u+12>>2]=a-1;z[u+8>>2]=f;if(!(Ba[v[v[d>>2]>>2]](d,1,u+12|0,u+8|0)|0)){break a}g=z[u+8>>2];if(g!=f){f=g}t=t-1|0;break b}a=a+b|0;W=z[a+44>>2];X=z[a+92>>2];T=z[a+60>>2];U=z[a+12>>2];Y=z[a+28>>2];Z=z[a+76>>2];_=z[a+40>>2];$=z[a+88>>2];I=z[a+56>>2];O=z[a+8>>2];aa=z[a+24>>2];ba=z[a+72>>2];ca=z[a+36>>2];da=z[a+84>>2];J=z[a+52>>2];P=z[a+4>>2];ea=z[a+20>>2];fa=z[a+68>>2];i=z[a+32>>2];k=z[a+80>>2];K=z[a>>2];Q=z[a+48>>2];m=z[a+16>>2];n=z[a+64>>2];v[c>>2]=v[a+96>>2];g=C(E+C(s*C(K-H)));h=C(E+C(s*C(H+Q)));L=gR?L:R;i=C(A+C(o*C(i-F)));k=C(A+C(o*C(F+k)));R=iR?L:R;g=g>h?g:h;h=m>n?m:n;g=gk?i:k;g=gg|(gQ|f>2]=v[a+100>>2];g=C(E+C(s*C(P-H)));h=C(E+C(s*C(H+J)));i=gk?i:k;i=C(A+C(o*C(ca-F)));k=C(A+C(o*C(F+da)));Q=iQ?K:Q;g=g>h?g:h;h=m>n?m:n;g=gk?i:k;g=gg^-1)&(!(g>2]=v[a+104>>2];g=C(E+C(s*C(O-H)));h=C(E+C(s*C(H+I)));i=gk?i:k;i=C(A+C(o*C(_-F)));k=C(A+C(o*C(F+$)));P=iP?J:P;g=g>h?g:h;h=m>n?m:n;g=gk?i:k;g=gg^-1)&(!(g>2]=v[a+108>>2];g=C(E+C(s*C(U-H)));h=C(E+C(s*C(H+T)));i=gk?i:k;i=C(A+C(o*C(W-F)));k=C(A+C(o*C(F+X)));O=iO?I:O;g=g>h?g:h;h=m>n?m:n;g=gk?i:k;g=gg^-1)&(!(g>2]=l;v[n+248>>2]=e+12088;v[n+244>>2]=e+11824;v[n+240>>2]=e+11852;v[n+232>>2]=128228;v[n+224>>2]=0;v[n+216>>2]=0;v[n+220>>2]=0;v[n+208>>2]=0;v[n+212>>2]=1065353216;v[n+200>>2]=0;v[n+204>>2]=0;H=v[e+12048>>2];nx(v[a+656>>2],v[a+660>>2]);if(v[a+660>>2]){while(1){I=D<<5;o=I+v[a+656>>2]|0;r=x[o+10>>1];l=x[o+8>>1];A=(l|0)==65535;K=A?r:l;a:{if(x[o+22>>1]==1){p=v[o+24>>2];l=v[p+68>>2];q=v[((l&7)<<2)+d>>2];s=v[o+12>>2];G=v[d+32>>2];v[n+48>>2]=B((r|0)==65535?v[o+16>>2]:0,112)+k;v[n+44>>2]=B(A?s:0,112)+k;A=G+(q+(l>>>3|0)<<4)|0;r=v[p+16>>2];s=w[r+28|0];l=v[p+20>>2];if(l){s=w[l+28|0]|s;q=l}else{q=n+200|0}z[n+52>>2]=z[r>>2];z[n+56>>2]=z[r+4>>2];z[n+60>>2]=z[r+8>>2];z[n+64>>2]=z[r+12>>2];z[n+68>>2]=z[r+16>>2];z[n+72>>2]=z[r+20>>2];z[n+76>>2]=z[r+24>>2];z[n+80>>2]=z[q>>2];l=l?l:n+200|0;z[n+84>>2]=z[l+4>>2];z[n+88>>2]=z[l+8>>2];z[n+92>>2]=z[l+12>>2];z[n+96>>2]=z[l+16>>2];z[n+100>>2]=z[l+20>>2];z[n+104>>2]=z[l+24>>2];v[n+128>>2]=v[p+12>>2];v[n+160>>2]=v[A+8>>2];v[n+32>>2]=o;v[n+36>>2]=v[o>>2];v[n+40>>2]=v[o+4>>2];l=x[p+40>>1];t[n+141|0]=l>>>2&1;t[n+142|0]=l>>>8&1;v[n+108>>2]=l&8?8:1;q=8;b:{if(l&16){break b}q=4;if(l&1024){break b}q=l&64?1:2}v[n+112>>2]=q;l=w[p+44|0];E=w[p+45|0]?C(1):C(0);z[n+28>>2]=E;J=l?C(1):C(0);z[n+16>>2]=J;z[n+20>>2]=J;z[n+24>>2]=E;z[n+144>>2]=z[p+52>>2];v[n+152>>2]=v[p+36>>2];l=w[p+42|0];z[n+148>>2]=s&32?j:C(34028234663852886e22);t[n+156|0]=l;sy(n+16|0,A,e,c,g,h,f,i,n+232|0,H);u[o+20>>1]=w[A+12|0];v[o+28>>2]=v[A+8>>2];v[p+36>>2]=v[n+152>>2];t[p+42|0]=w[n+156|0];break a}q=n+200|0;l=q;p=v[o+24>>2];s=v[p+24>>2];if(s){l=v[s+36>>2]}s=x[p+8>>1];G=v[p+20>>2];L=v[p+12>>2];F=v[p+28>>2];if(F){q=v[F+36>>2]}F=v[o+4>>2];M=v[o+12>>2];N=v[o+16>>2];O=v[o>>2];v[n+12>>2]=s;v[n+8>>2]=G;v[n+4>>2]=L;v[n+32>>2]=o;v[n>>2]=p;z[n+52>>2]=z[l>>2];z[n+56>>2]=z[l+4>>2];z[n+60>>2]=z[l+8>>2];z[n+64>>2]=z[l+12>>2];z[n+68>>2]=z[l+16>>2];z[n+72>>2]=z[l+20>>2];z[n+76>>2]=z[l+24>>2];z[n+80>>2]=z[q>>2];z[n+84>>2]=z[q+4>>2];z[n+88>>2]=z[q+8>>2];z[n+92>>2]=z[q+12>>2];z[n+96>>2]=z[q+16>>2];z[n+100>>2]=z[q+20>>2];E=z[q+24>>2];v[n+48>>2]=B((r|0)==65535?N:0,112)+k;v[n+44>>2]=B(A?M:0,112)+k;z[n+104>>2]=E;v[n+40>>2]=F;v[n+36>>2]=O;z[n+136>>2]=z[p>>2];z[n+140>>2]=z[p+4>>2];v[n+148>>2]=(v[p+40>>2]<<5)+m;l=x[p+10>>1];t[n+155|0]=l>>>9&1;q=l&255;t[n+153|0]=q>>>7;t[n+152|0]=l>>>8&1;t[n+154|0]=q>>>5&1;z[n+144>>2]=z[p+44>>2];ry(n,n+16|0,n+232|0,b,c,H)}c:{if(v[o+24>>2]){q=(K&65535)<<2;l=q+v[a+408>>2]|0;o=v[l>>2];if(!o){v[q+v[a+420>>2]>>2]=D;o=v[l>>2]}v[l>>2]=o+1;break c}q=D+1|0;o=v[a+660>>2];if(q>>>0>>0){l=v[a+656>>2]+I|0;while(1){o=v[a+656>>2]+(q<<5)|0;p=v[o+4>>2];v[l>>2]=v[o>>2];v[l+4>>2]=p;p=v[o+28>>2];v[l+24>>2]=v[o+24>>2];v[l+28>>2]=p;p=v[o+20>>2];v[l+16>>2]=v[o+16>>2];v[l+20>>2]=p;p=v[o+12>>2];v[l+8>>2]=v[o+8>>2];v[l+12>>2]=p;l=l+32|0;q=q+1|0;o=v[a+660>>2];if(q>>>0>>0){continue}break}}v[a+660>>2]=o-1;D=D-1|0}D=D+1|0;if(D>>>0>2]){continue}break}}xa=n+256|0}function ZU(a,b){var c=0,d=0,e=0,f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);c=xa-48|0;xa=c;k=z[a+84>>2];n=z[a+68>>2];p=z[a+52>>2];m=z[a+88>>2];q=z[a+72>>2];r=z[a+40>>2];s=z[a+56>>2];t=z[a+36>>2];l=z[b>>2];i=z[b+4>>2];j=z[b+8>>2];h=C(C(C(C(l*z[a+44>>2])+C(i*z[a+60>>2]))+C(j*z[a+76>>2]))+z[a+92>>2]);z[b+8>>2]=h;m=C(m+C(C(C(l*r)+C(i*s))+C(j*q)));z[b+4>>2]=m;l=C(k+C(C(C(l*t)+C(i*p))+C(j*n)));z[b>>2]=l;d=v[a+32>>2]+1|0;v[a+32>>2]=d;a:{b:{c:{d:{e:{f:{switch(v[a>>2]){case 0:d=v[a+100>>2];z[c+8>>2]=h;z[c+4>>2]=m;z[c>>2]=l;g=v[a+4>>2];v[c+12>>2]=g;e=v[d+8>>2];if(e>>>0>=(v[d+12>>2]&2147483647)>>>0){pr(d+4|0,c);break e}f=v[d+4>>2]+(e<<4)|0;v[f+12>>2]=g;z[f+8>>2]=h;z[f+4>>2]=m;z[f>>2]=l;v[d+8>>2]=e+1;break e;case 1:if((d|0)!=2){break d}f=v[a+100>>2];i=z[a+8>>2];z[c>>2]=i;j=z[a+12>>2];z[c+4>>2]=j;k=z[a+16>>2];z[c+8>>2]=k;e=v[a+4>>2];z[c+24>>2]=h;z[c+20>>2]=m;v[c+28>>2]=e;z[c+16>>2]=l;v[c+12>>2]=e;g=v[f+20>>2];if(g>>>0<(v[f+24>>2]&2147483647)>>>0){break c}qr(f+16|0,c);break b;case 2:if(d>>>0<2){break a}f=v[a+100>>2];i=z[a+8>>2];z[c>>2]=i;j=z[a+12>>2];z[c+4>>2]=j;k=z[a+16>>2];z[c+8>>2]=k;e=v[a+4>>2];z[c+24>>2]=h;z[c+20>>2]=m;v[c+28>>2]=e;z[c+16>>2]=l;v[c+12>>2]=e;g=v[f+20>>2];if(g>>>0>=(v[f+24>>2]&2147483647)>>>0){qr(f+16|0,c);break e}d=v[f+16>>2]+(g<<5)|0;v[d+12>>2]=e;z[d+8>>2]=k;z[d+4>>2]=j;z[d>>2]=i;z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];h=z[c+24>>2];v[d+28>>2]=e;z[d+24>>2]=h;v[f+20>>2]=g+1;break e;case 3:if((d|0)!=3){break d}f=v[a+100>>2];i=z[a+20>>2];z[c>>2]=i;j=z[a+24>>2];z[c+4>>2]=j;k=z[a+28>>2];z[c+8>>2]=k;e=v[a+4>>2];v[c+12>>2]=e;z[c+16>>2]=z[a+8>>2];z[c+20>>2]=z[a+12>>2];n=z[a+16>>2];z[c+40>>2]=h;z[c+36>>2]=m;z[c+24>>2]=n;v[c+44>>2]=e;z[c+32>>2]=l;v[c+28>>2]=e;g=v[f+32>>2];if(g>>>0>=(v[f+36>>2]&2147483647)>>>0){Ts(f+28|0,c);break b}d=v[f+28>>2]+B(g,48)|0;v[d+12>>2]=e;z[d+8>>2]=k;z[d+4>>2]=j;z[d>>2]=i;z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];h=z[c+24>>2];v[d+28>>2]=e;z[d+24>>2]=h;z[d+32>>2]=z[c+32>>2];z[d+36>>2]=z[c+36>>2];h=z[c+40>>2];v[d+44>>2]=e;z[d+40>>2]=h;v[f+32>>2]=g+1;break b;case 4:break f;default:break d}}if(d>>>0<3){break d}f=v[a+100>>2];d=d&1;i=z[(d?8:20)+a>>2];z[c>>2]=i;g=a+8|0;o=a+20|0;e=d?g:o;j=z[e+4>>2];z[c+4>>2]=j;k=z[e+8>>2];z[c+8>>2]=k;e=v[a+4>>2];v[c+12>>2]=e;z[c+16>>2]=z[(d?20:8)+a>>2];d=d?o:g;z[c+20>>2]=z[d+4>>2];n=z[d+8>>2];z[c+40>>2]=h;z[c+36>>2]=m;z[c+24>>2]=n;v[c+44>>2]=e;z[c+32>>2]=l;v[c+28>>2]=e;g=v[f+32>>2];if(g>>>0>=(v[f+36>>2]&2147483647)>>>0){Ts(f+28|0,c);break e}d=v[f+28>>2]+B(g,48)|0;v[d+12>>2]=e;z[d+8>>2]=k;z[d+4>>2]=j;z[d>>2]=i;z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];h=z[c+24>>2];v[d+28>>2]=e;z[d+24>>2]=h;z[d+32>>2]=z[c+32>>2];z[d+36>>2]=z[c+36>>2];h=z[c+40>>2];v[d+44>>2]=e;z[d+40>>2]=h;v[f+32>>2]=g+1}d=v[a+32>>2]}if(d>>>0<2){break a}z[a+20>>2]=z[a+8>>2];d=v[a+16>>2];v[a+24>>2]=v[a+12>>2];v[a+28>>2]=d;break a}d=v[f+16>>2]+(g<<5)|0;v[d+12>>2]=e;z[d+8>>2]=k;z[d+4>>2]=j;z[d>>2]=i;z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];h=z[c+24>>2];v[d+28>>2]=e;z[d+24>>2]=h;v[f+20>>2]=g+1}v[a+32>>2]=0}z[a+8>>2]=z[b>>2];z[a+12>>2]=z[b+4>>2];z[a+16>>2]=z[b+8>>2];xa=c+48|0;return a}function bA(a,b,c,d,e,f,g){var h=C(0),i=0,j=C(0),k=C(0),l=0,m=0,n=C(0),o=0,p=0,q=C(0),r=C(0),s=C(0),t=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=0,R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=0,X=0,Y=0,Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0);o=xa-32|0;S=v[a+7688>>2];if(S>>>0>f>>>0){I=z[d+12>>2];P=C(C(I*I)+C(-.5));A=z[c+12>>2];H=C(C(A*A)+C(-.5));Z=C(e*e);L=z[d+4>>2];_=C(-L);M=z[d>>2];$=C(-M);N=z[d+8>>2];aa=C(-N);E=z[c+4>>2];T=C(-E);F=z[c>>2];U=C(-F);G=z[c+8>>2];V=C(-G);while(1){p=B(f,104)+a|0;O=p+2818|0;i=x[O>>1];a:{b:{if(!((i|0)!=2&v[((f<<2)+a|0)+7424>>2]!=65535)){if(!v[((f<<2)+a|0)+7296>>2]){break a}i=B(f,24)+a|0;e=C(z[i+6548>>2]-z[i+6536>>2]);q=C(e*e);e=C(z[i+6540>>2]-z[i+6528>>2]);r=C(e*e);e=C(z[i+6544>>2]-z[i+6532>>2]);h=C(z[p+2864>>2]-z[p+2876>>2]);s=C(h*h);h=C(z[p+2856>>2]-z[p+2868>>2]);j=C(h*h);h=C(z[p+2860>>2]-z[p+2872>>2]);if(C(q+C(r+C(e*e)))<=C(C(s+C(j+C(h*h)))*C(4))){break a}i=0;u[O>>1]=0;t=0;break b}t=0;if((i|0)!=1){break b}y=z[c+16>>2];r=z[c+20>>2];e=z[p+2864>>2];e=C(e+e);h=z[p+2856>>2];h=C(h+h);j=z[p+2860>>2];j=C(j+j);k=C(C(G*e)+C(C(F*h)+C(j*E)));z[o+8>>2]=z[c+24>>2]+C(C(G*k)+C(C(e*H)+C(A*C(C(F*j)+C(h*T)))));z[o+4>>2]=r+C(C(E*k)+C(C(j*H)+C(A*C(C(G*h)+C(e*U)))));e=C(y+C(C(F*k)+C(C(h*H)+C(A*C(C(E*e)+C(j*V))))));z[o>>2]=e;i=1;t=1}l=(f<<2)+a|0;m=v[l+7424>>2];if((m|0)!=65535){W=l+7556|0;X=l+7558|0;h=C(0);j=z[o+20>>2];k=z[o+16>>2];y=z[o+12>>2];J=z[o+8>>2];K=z[o+4>>2];while(1){Q=B(m,44)+a|0;Y=w[Q+5|0];if(Y){m=0;while(1){l=x[Q>>1]+m|0;i=(l<<6)+b|0;c:{if(!(z[i+12>>2]>1]=l;J=z[i+24>>2];K=z[i+20>>2];e=z[i+16>>2];t=1;break c;case 1:t=1;r=z[i+24>>2];h=C(r-J);n=C(h*h);q=z[i+16>>2];h=C(q-e);D=C(h*h);s=z[i+20>>2];h=C(s-K);h=C(n+C(D+C(h*h)));if(!(Z>1]=l;t=2;j=r;k=s;y=q;break c;default:break d}}r=z[i+24>>2];q=C(r-J);n=C(q*q);q=z[i+16>>2];s=C(q-e);R=C(s*s);s=z[i+20>>2];D=C(s-K);D=C(n+C(R+C(D*D)));n=C(r-j);R=C(n*n);n=C(q-y);ba=C(n*n);n=C(s-k);n=C(R+C(ba+C(n*n)));if(D>n){if(!(h>1]=l;j=r;k=s;y=q;h=D;break c}if(!(h>1]=l;J=r;K=s;e=q;h=n}m=m+1|0;if((Y|0)!=(m|0)){continue}break}}m=x[Q+2>>1];if((m|0)!=65535){continue}break}z[o+20>>2]=j;z[o+16>>2]=k;z[o+12>>2]=y;z[o+8>>2]=J;z[o+4>>2]=K;z[o>>2]=e;i=x[O>>1]}i=i&65535;if(t>>>0>i>>>0){while(1){l=B(i,12);m=l+p|0;l=o+l|0;y=z[l+8>>2];e=C(y-z[c+24>>2]);e=C(e+e);r=z[l>>2];h=C(r-z[c+16>>2]);h=C(h+h);q=z[l+4>>2];j=C(q-z[c+20>>2]);j=C(j+j);k=C(C(G*e)+C(C(F*h)+C(j*E)));z[m+2864>>2]=C(G*k)+C(C(e*H)-C(A*C(C(F*j)+C(h*T))));z[m+2860>>2]=C(E*k)+C(C(j*H)-C(A*C(C(G*h)+C(e*U))));z[m+2856>>2]=C(F*k)+C(C(h*H)-C(A*C(C(E*e)+C(j*V))));e=C(y-z[d+24>>2]);e=C(e+e);h=C(r-z[d+16>>2]);h=C(h+h);j=C(q-z[d+20>>2]);j=C(j+j);k=C(C(N*e)+C(C(M*h)+C(j*L)));z[m+2888>>2]=C(N*k)+C(C(e*P)-C(I*C(C(M*j)+C(h*_))));z[m+2884>>2]=C(L*k)+C(C(j*P)-C(I*C(C(N*h)+C(e*$))));z[m+2880>>2]=C(M*k)+C(C(h*P)-C(I*C(C(L*e)+C(j*aa))));i=i+1|0;if((t|0)!=(i|0)){continue}break}}if(!t){v[p+2888>>2]=0;i=p+2880|0;v[i>>2]=0;v[i+4>>2]=0;v[p+2864>>2]=0;i=p+2856|0;v[i>>2]=0;v[i+4>>2]=0}u[O>>1]=t}f=f+1|0;if((S|0)!=(f|0)){continue}break}}}function aW(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=0,D=0,E=0,F=C(0),G=0,H=0,I=0;g=xa-912|0;xa=g;k=z[d+4>>2];s=C(k+k);h=z[d+8>>2];l=C(s*h);u=z[d>>2];r=C(u+u);m=z[d+12>>2];j=C(r*m);p=C(l-j);o=C(r*h);n=C(s*m);i=C(o+n);l=C(l+j);q=C(r*k);x=C(h+h);y=C(x*m);m=C(q-y);j=C(o-n);o=C(q+y);n=C(C(1)-C(u*r));r=C(h*x);h=C(n-r);q=C(k*s);k=C(C(C(1)-q)-r);r=z[c+12>>2];s=z[c+8>>2];x=z[d+24>>2];y=z[d+20>>2];u=z[c+4>>2];F=z[d+16>>2];n=C(n-q);a:{if(n>2]=0;z[g+360>>2]=r;z[g+356>>2]=s;t[g+336|0]=0;v[g+332>>2]=3;v[g+304>>2]=0;v[g+308>>2]=0;v[g+312>>2]=0;v[g+316>>2]=0;z[g+352>>2]=u;i=s>=u?u:s;i=i<=r?i:r;l=C(i*C(.05000000074505806));z[g+328>>2]=l;z[g+324>>2]=l;z[g+320>>2]=i*C(.15000000596046448);d=v[e+32>>2];i=z[e+8>>2];l=z[e+12>>2];m=z[e+4>>2];v[g+300>>2]=0;z[g+296>>2]=l;z[g+292>>2]=i;z[g+288>>2]=m;A=v[e+16>>2];D=v[e+20>>2];E=v[e+28>>2];v[g+280>>2]=v[e+24>>2];v[g+284>>2]=E;v[g+272>>2]=A;v[g+276>>2]=D;t[g+144|0]=0;v[g+136>>2]=0;v[g+140>>2]=0;v[g+128>>2]=0;v[g+132>>2]=0;v[g+120>>2]=0;v[g+124>>2]=0;v[g+112>>2]=0;v[g+116>>2]=0;v[g+256>>2]=d+16;v[g+264>>2]=v[d+56>>2]+B(w[d+55|0],20);t[g+268|0]=w[d+54|0];j=C(m*z[d+68>>2]);o=C(i*z[d+72>>2]);j=j<=o?j:o;o=C(l*z[d+76>>2]);j=j<=o?j:o;z[g+136>>2]=j*C(.02500000037252903);z[g+128>>2]=j*C(.10000000149011612);z[g+132>>2]=j*C(.05000000074505806);A=g+160|0;D=g+208|0;FV(g+288|0,g+272|0,A,D,g+112|0,m==C(1)&i==C(1)&l==C(1));v[g+260>>2]=v[d+60>>2];i=z[f+24>>2];d=v[f>>2];E=v[f+4>>2];G=v[f+8>>2];H=v[f+12>>2];I=v[f+20>>2];f=v[f+16>>2];v[g+108>>2]=0;z[g+104>>2]=x;z[g+100>>2]=y;z[g+96>>2]=F;z[g+92>>2]=h;z[g+88>>2]=k;z[g+84>>2]=n;z[g+80>>2]=p;v[g+76>>2]=0;z[g+72>>2]=i;v[g+64>>2]=f;v[g+68>>2]=I;v[g+56>>2]=G;v[g+60>>2]=H;v[g+48>>2]=d;v[g+52>>2]=E;v[g+40>>2]=0;v[g+44>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+16>>2]=0;c=z[e+4>>2]!=C(1)|z[e+8>>2]!=C(1)?c:z[e+12>>2]==C(1);z[g+8>>2]=r;z[g+4>>2]=s;z[g>>2]=u;j2(y_(g+616|0,g),g+840|0);v[g+872>>2]=103120;k2(g+112|0,c,g+544|0);v[g+520>>2]=0;v[g+524>>2]=0;v[g+516>>2]=1065353216;v[g+528>>2]=0;v[g+532>>2]=0;v[g+536>>2]=1065353216;v[g+540>>2]=0;v[g+500>>2]=0;v[g+504>>2]=0;v[g+496>>2]=1065353216;v[g+508>>2]=0;v[g+512>>2]=0;t[g+476|0]=1;v[g+432>>2]=141108;d=g+496|0;v[g+472>>2]=d;v[g+468>>2]=d;v[g+464>>2]=g+80;v[g+480>>2]=g+304;v[g+408>>2]=D;v[g+404>>2]=A;v[g+400>>2]=g+48;b:{if(c){t[g+412|0]=1;v[g+368>>2]=141020;break b}t[g+412|0]=0;v[g+368>>2]=141068}v[g+416>>2]=g+112;c=a2(g+840|0,g+544|0,g+432|0,g+368|0,g+16|0,g+32|0);if(c){h=z[g+16>>2];z[b>>2]=h>C(0)?h:C(0);b=v[g+32>>2];d=v[g+36>>2];z[a+8>>2]=z[g+40>>2];v[a>>2]=b;v[a+4>>2]=d}xa=g+912|0;return c|0}function Hd(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0;h=xa+-64|0;xa=h;z[h+32>>2]=z[d>>2];z[h+36>>2]=z[d+4>>2];z[h+40>>2]=z[d+8>>2];z[h+44>>2]=z[d+12>>2];z[h+48>>2]=z[c>>2];z[h+52>>2]=z[c+4>>2];z[h+56>>2]=z[c+8>>2];z[h>>2]=z[g>>2];z[h+4>>2]=z[g+4>>2];z[h+8>>2]=z[g+8>>2];z[h+12>>2]=z[g+12>>2];z[h+16>>2]=z[f>>2];z[h+20>>2]=z[f+4>>2];z[h+24>>2]=z[f+8>>2];g=xa-16|0;xa=g;c=v[37696];d=c+12|0;c=(F=d,G=84,H=Ba[v[v[c>>2]+20>>2]](c)|0?27889:63804,I=6474,J=47,E=v[v[d>>2]+8>>2],Ba[E](F|0,G|0,H|0,I|0,J|0)|0);Ba[v[v[a>>2]+20>>2]](a)|0;u[g+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[g+8>>1];u[c+4>>1]=256;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=149084;v[c>>2]=148880;v[c+8>>2]=0;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,128,24422,17141,454)|0;k=z[h+44>>2];l=z[h+40>>2];m=z[h+32>>2];i=z[h+36>>2];r=v[h+52>>2];s=v[h+48>>2];z[c+44>>2]=z[h+56>>2];v[c+36>>2]=s;v[c+40>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+24>>2]=j*i;z[c+28>>2]=l*i;z[c+32>>2]=k*i;z[c+20>>2]=m*i;k=z[h+12>>2];l=z[h+8>>2];m=z[h>>2];i=z[h+4>>2];r=v[h+20>>2];s=v[h+16>>2];z[c+72>>2]=z[h+24>>2];D=c- -64|0;v[D>>2]=s;v[D+4>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+52>>2]=j*i;z[c+56>>2]=l*i;z[c+60>>2]=k*i;z[c+48>>2]=m*i;Y4(f,b);q=z[h+52>>2];t=z[h+56>>2];w=z[h+48>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+40>>2];m=z[f+4>>2];n=z[h+36>>2];k=z[f+12>>2];o=z[h+44>>2];i=z[f>>2];p=z[h+32>>2];z[d+28>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+24>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+20>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+40>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+32>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);Y4(f,e);q=z[h+20>>2];t=z[h+24>>2];w=z[h+16>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+8>>2];m=z[f+4>>2];n=z[h+4>>2];k=z[f+12>>2];o=z[h+12>>2];i=z[f>>2];p=z[h>>2];z[d+56>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+52>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+48>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+68>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+60>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;v[c+12>>2]=148776;v[c>>2]=148564;d=0;f=v[c+80>>2];u[f+112>>1]=0;v[f+80>>2]=0;v[f+84>>2]=1056964608;v[f+96>>2]=1036831949;v[f+100>>2]=1070141403;v[f+88>>2]=0;v[f+92>>2]=0;v[f+104>>2]=1070141403;v[f+108>>2]=1343554297;a=Ba[v[v[a>>2]+108>>2]](a,b,e,c+12|0,148540,128)|0;v[c+76>>2]=a;a:{if(a){d=c;break a}Ba[v[v[c>>2]+16>>2]](c)}xa=g+16|0;xa=h- -64|0;return d|0}function V4(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,A=C(0),D=C(0);a:{if(v[a+36>>2]){e=v[a+36>>2];m=v[e+16>>2];d=m<<2;o=v[e+28>>2];c=B(o,20);p=v[e+4>>2];f=B(p,12);h=((d+c|0)+f|0)+12|0;if(h){e=v[37696]+12|0;g=Ba[v[v[e>>2]+8>>2]](e,h,24422,13134,2527)|0;e=v[a+36>>2]}v[a+40>>2]=g;k=d+g|0;r=H9(k+c|0,v[e>>2],f);i=v[a+36>>2];j=v[i+16>>2];if(j){s=v[i+24>>2];e=0;while(1){f=k+B(l,20)|0;d=1;h=e+1|0;b:{if(j>>>0<=h>>>0){break b}c=j-e|0;n=v[i+12>>2];q=w[(n+(e<<2)|0)+3|0];while(1){if((q|0)!=w[(n+(h<<2)|0)+3|0]){break b}d=d+1|0;h=e+d|0;if((c|0)!=(d|0)){continue}break}d=c}u[f+18>>1]=e;u[f+16>>1]=d;c=s+(l<<4)|0;z[f>>2]=z[c>>2];z[f+4>>2]=z[c+4>>2];z[f+8>>2]=z[c+8>>2];z[f+12>>2]=z[c+12>>2];if(d){f=d-1|0;c=v[i+12>>2];h=0;j=d&3;if(j){while(1){n=e<<2;v[n+g>>2]=w[(c+n|0)+2|0];e=e+1|0;d=d-1|0;h=h+1|0;if((j|0)!=(h|0)){continue}break}}if(f>>>0>=3){while(1){f=e<<2;v[f+g>>2]=w[(c+f|0)+2|0];h=f+4|0;v[h+g>>2]=w[(c+h|0)+2|0];h=f+8|0;v[h+g>>2]=w[(c+h|0)+2|0];f=f+12|0;v[f+g>>2]=w[(c+f|0)+2|0];e=e+4|0;d=d-4|0;if(d){continue}break}}j=v[i+16>>2]}l=l+1|0;if(e>>>0>>0){continue}break}}v[b+24>>2]=4;v[b+8>>2]=p;v[b+4>>2]=r;v[b>>2]=12;v[b+12>>2]=20;v[b+28>>2]=g;v[b+32>>2]=m;v[b+20>>2]=o;v[b+16>>2]=k;f=0;c=0;i=0;h=xa-16|0;xa=h;d=v[b+20>>2];c:{if(d>>>0<2){break c}e=v[b+16>>2];g=d-1|0;j=g&3;d:{if(d-2>>>0<3){g=1;break d}l=g&-4;g=1;while(1){d=e+B(g,20)|0;f=x[(e+B(f,20)|0)+16>>1]>1]?g:f;f=x[(e+B(f,20)|0)+16>>1]>1]?g+1|0:f;f=x[(e+B(f,20)|0)+16>>1]>1]?g+2|0:f;f=x[(e+B(f,20)|0)+16>>1]>1]?g+3|0:f;g=g+4|0;c=c+4|0;if((l|0)!=(c|0)){continue}break}}if(j){while(1){f=x[(e+B(f,20)|0)+16>>1]>1]?g:f;g=g+1|0;i=i+1|0;if((j|0)!=(i|0)){continue}break}}if(!f){break c}j=v[b+28>>2];d=v[b+32>>2]<<2;if(d){c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,24422,13231,313)|0}else{d=0}v[a+12>>2]=d;d=v[e+12>>2];v[h+8>>2]=v[e+8>>2];v[h+12>>2]=d;d=v[e+4>>2];v[h>>2]=v[e>>2];v[h+4>>2]=d;c=e+B(f,20)|0;l=x[c+18>>1];g=x[c+16>>1];d=x[e+16>>1];i=x[e+18>>1];v[e+16>>2]=v[c+16>>2];k=v[c+12>>2];v[e+8>>2]=v[c+8>>2];v[e+12>>2]=k;k=v[c+4>>2];v[e>>2]=v[c>>2];v[e+4>>2]=k;k=v[h+8>>2];m=v[h+12>>2];o=v[h+4>>2];p=v[h>>2];u[c+16>>1]=d;v[c>>2]=p;v[c+4>>2]=o;v[c+8>>2]=k;v[c+12>>2]=m;u[c+18>>1]=i;e:{if(!v[b+20>>2]){break e}H9(v[a+12>>2],j+(l<<2)|0,g<<2);u[e+18>>1]=0;if(y[b+20>>2]<2){break e}l=d<<2;k=j+(i<<2)|0;m=e+B(f,20)|0;i=1;while(1){c=v[a+12>>2]+((g&65535)<<2)|0;f:{if((f|0)==(i|0)){H9(c,k,l);u[m+18>>1]=g;c=d;break f}q=c;c=e+B(i,20)|0;H9(q,j+(x[c+18>>1]<<2)|0,x[c+16>>1]<<2);u[c+18>>1]=g;c=x[c+16>>1]}g=c+g|0;i=i+1|0;if(i>>>0>2]){continue}break}}v[b+28>>2]=v[a+12>>2]}xa=h+16|0;break a}T4(a,b)}if(t[v[a+4>>2]+37|0]&1){d=0;e=v[b+8>>2];if(e){g=v[b+4>>2];while(1){A=z[a+16>>2];D=z[a+20>>2];c=g+B(d,12)|0;z[c+8>>2]=z[c+8>>2]+z[a+24>>2];z[c+4>>2]=D+z[c+4>>2];z[c>>2]=A+z[c>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}c=v[b+20>>2];if(c){e=v[b+16>>2];d=0;while(1){b=e+B(d,20)|0;z[b+12>>2]=z[b+12>>2]-C(C(z[b+8>>2]*z[a+24>>2])+C(C(z[b>>2]*z[a+16>>2])+C(z[b+4>>2]*z[a+20>>2])));d=d+1|0;if((c|0)!=(d|0)){continue}break}}}}function E1(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0);l=xa-224|0;xa=l;v[l+200>>2]=0;v[l+204>>2]=0;v[l+196>>2]=1065353216;v[l+208>>2]=0;v[l+212>>2]=0;v[l+216>>2]=1065353216;v[l+220>>2]=0;v[l+180>>2]=0;v[l+184>>2]=0;v[l+176>>2]=1065353216;v[l+188>>2]=0;v[l+192>>2]=0;n=z[i+56>>2];m=z[i+40>>2];p=z[c+32>>2];o=z[i+8>>2];u=z[c+24>>2];A=z[c+28>>2];x=z[i+24>>2];q=C(n+C(C(m*p)+C(C(o*u)+C(A*x))));s=z[i+52>>2];E=z[i+36>>2];y=z[i+4>>2];I=z[i+20>>2];w=C(s+C(C(E*p)+C(C(y*u)+C(A*I))));F=z[c+20>>2];G=z[c+12>>2];H=z[c+16>>2];r=C(n+C(C(m*F)+C(C(o*G)+C(H*x))));D=C(s+C(C(E*F)+C(C(y*G)+C(H*I))));J=z[i+48>>2];L=z[i+32>>2];N=C(L*p);p=z[i>>2];M=z[i+16>>2];u=C(J+C(N+C(C(p*u)+C(A*M))));A=C(J+C(C(L*F)+C(C(p*G)+C(H*M))));F=z[c+8>>2];H=o;o=z[c>>2];G=z[c+4>>2];n=C(n+C(C(m*F)+C(C(H*o)+C(G*x))));m=C(s+C(C(E*F)+C(C(y*o)+C(G*I))));p=C(J+C(C(L*F)+C(C(p*o)+C(G*M))));a:{if(!g){x=C(A-p);s=C(w-m);E=C(u-p);y=C(D-m);o=C(C(x*s)-C(E*y));H=o;G=C(o*o);o=y;y=C(q-n);F=s;s=C(r-n);o=C(C(o*y)-C(F*s));x=C(C(s*E)-C(y*x));s=C(C(1)/C(K(C(G+C(C(o*o)+C(x*x))))));E=C(H*s);o=C(o*s);x=C(x*s);if(C(C(C(z[b+24>>2]*E)+C(C(z[b+16>>2]*o)+C(x*z[b+20>>2])))-C(C(n*E)+C(C(p*o)+C(m*x))))>2]=0;z[l+168>>2]=q;z[l+164>>2]=w;z[l+160>>2]=u;v[l+156>>2]=0;z[l+152>>2]=r;z[l+148>>2]=D;z[l+144>>2]=A;v[l+140>>2]=0;z[l+136>>2]=n;z[l+132>>2]=m;t[l+112|0]=0;v[l+104>>2]=2139095039;v[l+108>>2]=5;v[l+92>>2]=0;v[l+96>>2]=0;v[l+100>>2]=2139095039;z[l+88>>2]=C(q+C(n+r))*C(.33333298563957214);z[l+84>>2]=C(w+C(m+D))*C(.33333298563957214);z[l+128>>2]=p;z[l+80>>2]=C(u+C(p+A))*C(.33333298563957214);t[l+60|0]=1;v[l+48>>2]=h;v[l+16>>2]=144504;c=l+176|0;v[l+56>>2]=c;v[l+52>>2]=c;g=l+80|0;v[l+64>>2]=g;h=l+16|0;c=xa-96|0;xa=c;w=z[g+80>>2];r=z[g- -64>>2];q=z[g+68>>2];D=z[g+88>>2];u=z[g+84>>2];n=z[g+52>>2];m=z[g+56>>2];A=z[g+72>>2];p=z[g+48>>2];v[c+60>>2]=0;o=C(q-n);D=C(D-m);u=C(u-n);A=C(A-m);q=C(C(o*D)-C(u*A));s=q;r=C(r-p);y=C(r*u);u=C(w-p);w=C(y-C(u*o));o=C(q*q);q=C(C(A*u)-C(D*r));r=C(C(1)/C(K(C(C(w*w)+C(o+C(q*q))))));D=C(s*r);z[c+48>>2]=D;w=C(w*r);z[c+56>>2]=w;q=C(q*r);z[c+52>>2]=q;Ba[v[v[b>>2]+12>>2]](b,c+48|0,c+80|0,c- -64|0);r=z[f>>2];n=C(C(w*m)+C(C(D*p)+C(n*q)));m=z[c+80>>2];b:{if(n>C(r+z[c+64>>2])?1:C(r+n)>2]=0;i=v[c+52>>2];v[c>>2]=v[c+48>>2];v[c+4>>2]=i;i=v[c+60>>2];v[c+8>>2]=v[c+56>>2];v[c+12>>2]=i;z[c+16>>2]=C(n-m)+C(-1.1920928955078125e-7);if(!l2(a,h,b,f,c+16|0,c- -64|0,c,c+44|0)){break b}if(!m2(g,e,a,h,b,f,c+16|0,c,c+44|0)){break b}n=z[g+56>>2];p=C(z[g+72>>2]-n);m=z[g+48>>2];q=C(z[g+80>>2]-m);w=C(z[g+88>>2]-n);m=C(z[g+64>>2]-m);n=C(C(p*q)-C(w*m));o=n;s=m;m=z[g+52>>2];r=C(z[g+84>>2]-m);y=q;q=C(z[g+68>>2]-m);m=C(C(s*r)-C(y*q));p=C(C(q*w)-C(r*p));n=C(C(1)/C(K(C(C(m*m)+C(C(p*p)+C(n*n))))));z[c+84>>2]=o*n;z[c+80>>2]=p*n;v[c+92>>2]=0;z[c+88>>2]=m*n;e=v[c+84>>2];v[l>>2]=v[c+80>>2];v[l+4>>2]=e;e=v[c+92>>2];v[l+8>>2]=v[c+88>>2];v[l+12>>2]=e;h=v[a+24>>2];e=a;a=c+80|0;n2(g,d,e,h+B(Z1(e,b,a),20)|0,b,j,k,f,a)}xa=c+96|0}xa=l+224|0}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(v[a+40>>2]){a9(v[37696],8,19068,247,74291,0);aC(v[a+40>>2],a)}j=a+20|0;k=MU(j,b);if((k|0)!=-1){d=uh(a);a:{if(!d|!(w[(w[b+36|0]&64?v[b+40>>2]+52|0:b+112|0)|0]&2)){break a}IE(d+5584|0,v[j+16>>2],v[(k<<2)+(x[j+12>>1]==1?j+8|0:v[j+8>>2])>>2]);if(v[j+16>>2]==-1|x[j+4>>1]!=1){break a}v[j+16>>2]=-1;d=x[a+4>>1];if((d&65527)!=5){break a}b:{c:{switch(d-5|0){case 0:d=a- -64|0;break b;case 8:break c;default:break a}}d=a- -64|0}d=v[d>>2];if(y[d+152>>2]<=4294967293){e=v[d+40>>2];f=v[d+156>>2];v[d+156>>2]=-2;h=v[e+44>>2]-1|0;if((h|0)!=(f|0)){i=v[e+40>>2];g=v[i+(h<<2)>>2];v[i+(f<<2)>>2]=g;v[v[g>>2]+152>>2]=f}v[e+44>>2]=h}u[d+148>>1]=x[d+148>>1]&61439}e=b+32|0;p=v[b+16>>2]==1;h=xa-16|0;xa=h;f=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;d=v[f+4>>2];d:{if(d>>>0<1073741824){break d}l=v[f>>2];if(!w[l+4785|0]){a=f+v[((d>>>22&60)+89188|0)+12>>2]|0;if(!(w[(d&1?v[f+8>>2]:a+8|0)|0]&8)){RJ(a,e+16|0,c);au(e)}a=v[e+4>>2];if((a&251658240)!=16777216){break d}v[e>>2]=0;v[e+4>>2]=a&1073741823;break d}if((d&-1073741824)==1073741824){a=v[e+4>>2];if((a&251658240)!=16777216){break d}v[e>>2]=0;v[e+4>>2]=a&1073741823;break d}a=v[f+8>>2];if(!a){a=Pu(l,d>>>24&15);v[f+8>>2]=a;d=v[f+4>>2]}e:{if(!(d&32)){break e}g=v[a+88>>2];if((g|0)==1){if((e|0)!=v[a+84>>2]){break e}v[a+84>>2]=0;v[a+88>>2]=0;v[f+4>>2]=v[f+4>>2]&-33;break e}f:{g:{h:{if(g){i=v[l+4868>>2]+(v[a+84>>2]<<2)|0;n=g&1;if((g|0)==1){d=0;break h}q=g&-2;d=0;while(1){m=i+(d<<2)|0;i:{if((e|0)!=v[m>>2]){d=d+1|0;break i}g=g-1|0;v[m>>2]=v[i+(g<<2)>>2]}m=i+(d<<2)|0;j:{if((e|0)!=v[m>>2]){d=d+1|0;break j}g=g-1|0;v[m>>2]=v[i+(g<<2)>>2]}o=o+2|0;if((o|0)!=(q|0)){continue}break}break h}v[a+88>>2]=0;break g}k:{if(!n){break k}n=i+(d<<2)|0;if((e|0)!=v[n>>2]){d=d+1|0;break k}v[n>>2]=v[(i+(g<<2)|0)-4>>2]}v[a+88>>2]=d;switch(d|0){case 1:break f;case 0:break g;default:break e}}v[a+84>>2]=0;v[f+4>>2]=v[f+4>>2]&-33;break e}v[a+84>>2]=v[i>>2]}l:{m:{n:{o:{g=v[a+28>>2];if(!g){d=0;break o}i=v[a+24>>2];d=0;while(1){if((e|0)==v[i+(d<<2)>>2]){break o}d=d+1|0;if((g|0)!=(d|0)){continue}break}break n}if((d|0)==(g|0)){break n}c=g-1|0;v[a+28>>2]=c;a=v[a+24>>2];v[a+(d<<2)>>2]=v[a+(c<<2)>>2];a=v[e+4>>2];if((a&251658240)!=16777216){break l}v[e+4>>2]=a&1073741823|-2147483648;break m}p:{if(!(w[(f+v[((v[f+4>>2]>>>22&60)+89188|0)+12>>2]|0)+8|0]&8)){t[h+12|0]=c;v[h+8>>2]=e;c=v[a+76>>2];if(c>>>0>=(v[a+80>>2]&2147483647)>>>0){gu(a+36|0,h+8|0);break p}d=v[h+12>>2];c=v[a+72>>2]+(c<<3)|0;v[c>>2]=v[h+8>>2];v[c+4>>2]=d;v[a+76>>2]=v[a+76>>2]+1;break p}if(p){if(!(w[e+7|0]&16)){break p}tu(l+4816|0,e);v[e+4>>2]=v[e+4>>2]&-268435457;break p}t[h+12|0]=0;v[h+8>>2]=e;c=v[a+76>>2];if(c>>>0>=(v[a+80>>2]&2147483647)>>>0){gu(a+36|0,h+8|0);break p}d=v[h+12>>2];c=v[a+72>>2]+(c<<3)|0;v[c>>2]=v[h+8>>2];v[c+4>>2]=d;v[a+76>>2]=v[a+76>>2]+1}a=v[e+4>>2];if((a&251658240)!=16777216){break l}v[e+4>>2]=a|-1073741824}v[e>>2]=l}Xu(v[f>>2],f);v[f+4>>2]=v[f+4>>2]|8}xa=h+16|0;a=v[v[37389]+476>>2];PU(j,k,a);PU(j+8|0,k,a);Zt(b)}if((k|0)==-1){a9(v[37696],8,19068,253,72797,0)}}function N_(a,b,c,d,e){var f=0,g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=0,x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0);f=xa-128|0;xa=f;o=z[b+16>>2];n=z[b>>2];p=C(o-n);F=z[b+36>>2];s=z[b+4>>2];u=C(F-s);G=z[b+32>>2];y=C(G-n);x=z[b+20>>2];A=C(x-s);k=C(C(p*u)-C(y*A));H=z[b+40>>2];t=z[b+8>>2];B=C(H-t);q=z[b+24>>2];E=C(q-t);i=C(C(A*B)-C(u*E));g=C(C(E*y)-C(B*p));I=C(C(1)/C(K(C(C(k*k)+C(C(i*i)+C(g*g))))));J=z[b+56>>2];l=C(J-t);L=z[b+48>>2];m=C(L-n);M=z[b+52>>2];r=C(M-s);a:{if(C(D(C(C(C(k*I)*l)+C(C(C(i*I)*m)+C(r*C(g*I))))))>2]=3;JV(a,b,c,d,e);break a}h=C(C(C(k*t)+C(C(i*n)+C(s*g)))*C(C(k*J)+C(C(i*L)+C(M*g))))>=C(-9.999999974752427e-7);v[f+112>>2]=h?-1:0;k=C(C(m*A)-C(p*r));i=C(C(r*E)-C(A*l));g=C(C(l*p)-C(E*m));k=C(C(C(k*t)+C(C(i*n)+C(s*g)))*C(C(k*H)+C(C(i*G)+C(F*g))));v[f+120>>2]=k>=C(-9.999999974752427e-7)?-1:0;i=C(C(y*r)-C(m*u));g=C(C(u*l)-C(r*B));l=C(C(B*m)-C(l*y));w=C(C(C(i*t)+C(C(g*n)+C(s*l)))*C(C(i*q)+C(C(g*o)+C(x*l))))>=C(-9.999999974752427e-7);v[f+116>>2]=w?-1:0;i=C(L-o);g=C(F-x);l=C(G-o);m=C(M-x);r=C(C(i*g)-C(l*m));u=C(r*q);p=m;m=C(H-q);q=C(J-q);g=C(C(p*m)-C(g*q));p=C(g*o);o=C(C(q*l)-C(m*i));n=C(C(u+C(p+C(x*o)))*C(C(r*t)+C(C(g*n)+C(s*o))));v[f+124>>2]=n>=C(-9.999999974752427e-7)?-1:0;if(!(h|w|(k>=C(-9.999999974752427e-7)|n>=C(-9.999999974752427e-7)))){v[a>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;break a}v[f+104>>2]=v[25363];h=v[25362];v[f+96>>2]=v[25361];v[f+100>>2]=h;O_(a,b,f+112|0,f+96|0,e);w=v[f+96>>2];e=v[f+100>>2]<<4;a=e+b|0;h=v[a+4>>2];v[f+80>>2]=v[a>>2];v[f+84>>2]=h;h=v[a+12>>2];v[f+88>>2]=v[a+8>>2];v[f+92>>2]=h;h=v[f+104>>2]<<4;a=h+b|0;j=v[a+4>>2];v[f+64>>2]=v[a>>2];v[f+68>>2]=j;j=v[a+12>>2];v[f+72>>2]=v[a+8>>2];v[f+76>>2]=j;a=c+e|0;j=v[a+12>>2];v[f+56>>2]=v[a+8>>2];v[f+60>>2]=j;j=v[a+4>>2];v[f+48>>2]=v[a>>2];v[f+52>>2]=j;a=c+h|0;j=v[a+12>>2];v[f+40>>2]=v[a+8>>2];v[f+44>>2]=j;j=v[a+4>>2];v[f+32>>2]=v[a>>2];v[f+36>>2]=j;a=d+e|0;e=v[a+12>>2];v[f+24>>2]=v[a+8>>2];v[f+28>>2]=e;e=v[a+4>>2];v[f+16>>2]=v[a>>2];v[f+20>>2]=e;a=d+h|0;e=v[a+4>>2];v[f>>2]=v[a>>2];v[f+4>>2]=e;h=v[a+8>>2];j=v[a+12>>2];e=w<<4;a=e+b|0;w=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=w;v[f+8>>2]=h;v[f+12>>2]=j;h=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=h;a=v[f+92>>2];v[b+24>>2]=v[f+88>>2];v[b+28>>2]=a;a=v[f+84>>2];v[b+16>>2]=v[f+80>>2];v[b+20>>2]=a;a=v[f+68>>2];v[b+32>>2]=v[f+64>>2];v[b+36>>2]=a;a=v[f+76>>2];v[b+40>>2]=v[f+72>>2];v[b+44>>2]=a;a=c+e|0;b=v[a+4>>2];v[c>>2]=v[a>>2];v[c+4>>2]=b;b=v[a+12>>2];v[c+8>>2]=v[a+8>>2];v[c+12>>2]=b;a=v[f+60>>2];v[c+24>>2]=v[f+56>>2];v[c+28>>2]=a;a=v[f+52>>2];v[c+16>>2]=v[f+48>>2];v[c+20>>2]=a;a=v[f+36>>2];v[c+32>>2]=v[f+32>>2];v[c+36>>2]=a;a=v[f+44>>2];v[c+40>>2]=v[f+40>>2];v[c+44>>2]=a;a=d+e|0;b=v[a+4>>2];v[d>>2]=v[a>>2];v[d+4>>2]=b;b=v[a+12>>2];v[d+8>>2]=v[a+8>>2];v[d+12>>2]=b;a=v[f+20>>2];v[d+16>>2]=v[f+16>>2];v[d+20>>2]=a;a=v[f+28>>2];v[d+24>>2]=v[f+24>>2];v[d+28>>2]=a;a=v[f+12>>2];v[d+40>>2]=v[f+8>>2];v[d+44>>2]=a;a=v[f+4>>2];v[d+32>>2]=v[f>>2];v[d+36>>2]=a}xa=f+128|0}function IW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=C(0),G=C(0),H=0,I=C(0),J=0,K=0,L=0,M=C(0),N=C(0),O=0;e=xa-96|0;xa=e;a=v[c+32>>2];o=z[b+8>>2];m=z[b+4>>2];l=z[b+12>>2];n=z[b>>2];f=z[d+8>>2];q=C(z[d+24>>2]*C(-2));i=z[d>>2];r=C(z[d+16>>2]*C(-2));y=C(z[d+20>>2]*C(-2));h=z[d+4>>2];s=C(C(f*q)+C(C(i*r)+C(y*h)));g=z[b+16>>2];A=C(g+g);g=z[b+20>>2];t=C(g+g);g=z[b+24>>2];u=C(g+g);E=C(C(C(C(-i)*A)-C(t*h))-C(f*u));g=z[d+12>>2];k=C(C(g*g)+C(-.5));z[e+48>>2]=C(C(f*s)+C(C(q*k)-C(g*C(C(i*y)-C(r*h)))))+C(C(C(u*k)+C(g*C(C(h*A)-C(i*t))))-C(f*E));z[e+44>>2]=C(C(h*s)+C(C(y*k)-C(g*C(C(f*r)-C(q*i)))))+C(C(C(t*k)+C(g*C(C(i*u)-C(f*A))))-C(h*E));z[e+36>>2]=C(f*o)+C(C(h*m)+C(C(g*l)+C(i*n)));z[e+32>>2]=C(n*h)+C(C(C(g*o)-C(l*f))-C(i*m));z[e+28>>2]=C(o*i)+C(C(C(g*m)-C(l*h))-C(f*n));z[e+24>>2]=C(m*f)+C(C(C(g*n)-C(l*i))-C(h*o));z[e+40>>2]=C(C(i*s)+C(C(r*k)-C(g*C(C(h*q)-C(y*f)))))+C(C(C(A*k)+C(g*C(C(f*t)-C(h*u))))-C(i*E));AV(e+8|0,e+24|0);i=z[c+20>>2];h=C(i+i);f=z[c+24>>2];m=C(f+f);q=C(i*h);r=C(f*m);g=C(C(C(1)-q)-r);y=z[c+4>>2];n=z[c+16>>2];k=C(n+n);t=C(k*f);l=z[c+28>>2];u=C(h*l);o=C(t+u);s=C(y*o);E=C(k*i);G=C(m*l);m=C(E+G);I=C(h*f);M=C(k*l);f=C(I-M);A=z[c+8>>2];i=C(f*A);l=C(t-u);N=C(C(1)-C(n*k));k=C(N-q);t=z[c+12>>2];h=C(k*t);u=z[e+8>>2];n=C(E-G);q=C(N-r);r=C(I+M);E=z[e+12>>2];G=C(C(C(C(C(g*s)+C(m*i))+C(l*h))*u)+C(C(C(C(n*s)+C(q*i))+C(r*h))*E));h=C(C(C(o*s)+C(f*i))+C(k*h));s=z[e+16>>2];i=C(G+C(h*s));z[e+88>>2]=i;h=C(y*n);G=C(q*A);I=C(r*t);h=C(C(C(u*C(C(C(g*h)+C(m*G))+C(l*I)))+C(E*C(C(C(n*h)+C(q*G))+C(r*I))))+C(s*C(C(C(o*h)+C(f*G))+C(k*I))));z[e+84>>2]=h;G=g;g=C(y*g);y=m;m=C(m*A);A=l;l=C(l*t);g=C(C(C(u*C(C(C(G*g)+C(y*m))+C(A*l)))+C(E*C(C(C(n*g)+C(q*m))+C(r*l))))+C(s*C(C(C(o*g)+C(f*m))+C(k*l))));z[e+80>>2]=g;c=v[a+56>>2]+B(w[a+55|0],20)|0;b=v[a+60>>2];a:{if(!b){a=w[a+54|0];b:{if(!(a&1)){f=C(34028234663852886e22);d=a;break b}f=C(F(C(C(z[c+8>>2]*i)+C(C(z[c>>2]*g)+C(h*z[c+4>>2]))),C(34028234663852886e22)));c=c+12|0;d=a-1|0}if((a|0)==1){break a}while(1){k=C(C(z[c+8>>2]*i)+C(C(z[c>>2]*g)+C(h*z[c+4>>2])));f=f>2]*i)+C(C(z[c+12>>2]*g)+C(h*z[c+16>>2])));f=f>1];O=e+80|0;J=(p(h),j(2))&2147483647;H=(p(g),j(2))&2147483647;d=(p(i),j(2))&2147483647;c:{if(!(J>>>0<=H>>>0|J>>>0<=d>>>0)){J=0;H=2;d=1;break c}if(d>>>0<=H>>>0){J=2;H=1;d=0;break c}J=1;H=0;d=2}L=O+(d<<2)|0;f=z[L>>2];L=B(K,d<<1|v[L>>2]>>>31);k=C(C(K-1>>>0)*C(.5));o=C(C(1)/C(D(f)));f=C(C(k*C(C(z[(H<<2)+O>>2]*o)+C(1)))+C(.5));d:{if(f=C(0)){d=~~f>>>0;break d}d=0}K=B(K,d+L|0);H=v[b+4>>2];f=C(C(k*C(C(o*z[(e+80|0)+(J<<2)>>2])+C(1)))+C(.5));e:{if(f=C(0)){d=~~f>>>0;break e}d=0}d=d+K|0;v[e+76>>2]=w[H+d|0];v[e+72>>2]=w[d+(H+x[b+2>>1]|0)|0];z[e+64>>2]=-i;z[e+60>>2]=-h;z[e+56>>2]=-g;t_(e+76|0,e+56|0,c,b);t_(e+72|0,e+80|0,c,v[a+60>>2]);a=B(v[e+76>>2],12)+c|0;f=C(C(z[a+8>>2]*z[e+88>>2])+C(C(z[a>>2]*z[e+80>>2])+C(z[a+4>>2]*z[e+84>>2])))}xa=e+96|0;return C(-z[e+20>>2])>=f|0}function w2(a,b,c){var d=0,e=0,f=0,g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=0,r=0,s=0,u=0,x=0,y=0,A=0,D=C(0);a:{if(c>>>0<=2){if(!c){break a}g=v[b+4>>2];e=v[a+76>>2];v[e>>2]=v[b>>2];v[e+4>>2]=g;g=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=g;g=v[b+20>>2];e=v[a+76>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=g;g=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=g;g=v[b+36>>2];e=v[a+76>>2];v[e+32>>2]=v[b+32>>2];v[e+36>>2]=g;g=v[b+44>>2];v[e+40>>2]=v[b+40>>2];v[e+44>>2]=g;if((c|0)==1){break a}g=v[b+52>>2];e=v[a+76>>2];v[e+48>>2]=v[b+48>>2];v[e+52>>2]=g;g=v[b+60>>2];v[e+56>>2]=v[b+56>>2];v[e+60>>2]=g;d=b- -64|0;f=v[d+4>>2];e=v[a+76>>2];g=e- -64|0;v[g>>2]=v[d>>2];v[g+4>>2]=f;g=v[b+76>>2];v[e+72>>2]=v[b+72>>2];v[e+76>>2]=g;g=v[b+84>>2];e=v[a+76>>2];v[e+80>>2]=v[b+80>>2];v[e+84>>2]=g;g=v[b+92>>2];v[e+88>>2]=v[b+88>>2];v[e+92>>2]=g;t[a+64|0]=c;return}d=xa+-64|0;xa=d;e=c;o=I9(d,0,c);q=c>>>0<2;b:{if(q){break b}d=e-1|0;r=d&3;h=z[b+44>>2];c=0;c:{if(e-2>>>0<3){d=1;break c}A=d&-4;d=1;while(1){i=B(d,48)+b|0;j=z[i+188>>2];k=z[i+44>>2];s=k>2];h=s?k:h;u=m>2];h=u?m:h;i=kj;h=x?j:h;f=x?d+3|0:i?d+2|0:u?d+1|0:s?d:f;d=d+4|0;y=y+4|0;if((A|0)!=(y|0)){continue}break}}if(!r){break b}while(1){j=z[(B(d,48)+b|0)+44>>2];i=j>2];d=v[a+76>>2];v[d>>2]=v[c>>2];v[d+4>>2]=i;i=v[c+44>>2];v[d+40>>2]=v[c+40>>2];v[d+44>>2]=i;i=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=i;i=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=i;i=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=i;i=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=i;t[f+o|0]=1;c=v[a+76>>2];if(!q){j=z[c+24>>2];h=C(z[b+24>>2]-j);l=C(h*h);k=z[c+16>>2];h=C(z[b+16>>2]-k);n=C(h*h);m=z[c+20>>2];h=C(z[b+20>>2]-m);h=C(l+C(n+C(h*h)));d=1;while(1){f=B(d,48)+b|0;l=C(z[f+24>>2]-j);n=C(l*l);l=C(z[f+16>>2]-k);p=C(l*l);l=C(z[f+20>>2]-m);l=C(n+C(p+C(l*l)));f=l>h;h=f?l:h;g=f?d:g;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=B(g,48)+b|0;f=v[d+4>>2];v[c+48>>2]=v[d>>2];v[c+52>>2]=f;f=v[d+44>>2];v[c+88>>2]=v[d+40>>2];v[c+92>>2]=f;f=v[d+36>>2];v[c+80>>2]=v[d+32>>2];v[c+84>>2]=f;f=v[d+28>>2];v[c+72>>2]=v[d+24>>2];v[c+76>>2]=f;i=v[d+20>>2];f=c- -64|0;v[f>>2]=v[d+16>>2];v[f+4>>2]=i;f=v[d+12>>2];v[c+56>>2]=v[d+8>>2];v[c+60>>2]=f;t[g+o|0]=1;d:{if(!e){break d}h=z[d+44>>2];f=v[a+76>>2];d=0;c=g;while(1){e:{if(w[d+o|0]){break e}i=B(d,48)+b|0;j=z[i+24>>2];k=C(z[f+24>>2]-j);n=C(k*k);k=z[i+16>>2];m=C(z[f+16>>2]-k);p=C(m*m);m=z[i+20>>2];l=C(z[f+20>>2]-m);j=C(z[f+72>>2]-j);D=C(j*j);j=C(z[f+64>>2]-k);k=C(j*j);j=C(z[f+68>>2]-m);if(!(C(n+C(p+C(l*l)))>C(D+C(k+C(j*j))))){break e}c=h>z[i+44>>2]?d:c}d=d+1|0;if((e|0)!=(d|0)){continue}break}if((c|0)==(g|0)){break d}b=B(c,48)+b|0;c=v[b+4>>2];e=v[a+76>>2];v[e+48>>2]=v[b>>2];v[e+52>>2]=c;c=v[b+44>>2];v[e+88>>2]=v[b+40>>2];v[e+92>>2]=c;c=v[b+36>>2];v[e+80>>2]=v[b+32>>2];v[e+84>>2]=c;c=v[b+28>>2];v[e+72>>2]=v[b+24>>2];v[e+76>>2]=c;g=v[b+20>>2];c=e- -64|0;v[c>>2]=v[b+16>>2];v[c+4>>2]=g;c=v[b+12>>2];v[e+56>>2]=v[b+8>>2];v[e+60>>2]=c}xa=o- -64|0;c=2}t[a+64|0]=c}function ux(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),u=0,x=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=C(0),L=C(0),M=C(0),N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;Ba[v[v[a>>2]+52>>2]](a);N=v[a+452>>2];O=v[a+444>>2];I=v[a+448>>2];f=Ba[v[v[a>>2]+28>>2]](a)|0;g=v[a+448>>2];F=t[v[a+476>>2]]&1;G=F?0:6;v[d>>2]=f+G;J=G-6|0;v[c>>2]=J+B(g,6);if(!F){c=v[b+4>>2];v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=1065353216;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;f=v[d>>2];e=c+(f<<2)|0;v[e>>2]=0;v[e+4>>2]=1065353216;v[e+8>>2]=0;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;e=c+(f<<3)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+8>>2]=1065353216;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;e=c+B(f,12)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e+12>>2]=1065353216;v[e+16>>2]=0;v[e+20>>2]=0;e=c+(f<<4)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[e+16>>2]=1065353216;v[e+20>>2]=0;c=c+B(f,20)|0;v[c>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=1065353216;e=6}if(I>>>0>=2){P=v[a+372>>2];a=v[a+456>>2];g=v[d>>2];f=v[b+4>>2];d=e;q=1;while(1){m=B(q,160)+N|0;b=(q<<5)+O|0;r=v[b+16>>2];z[m+144>>2]=z[r+76>>2];c=v[b+24>>2];a:{b:{if(c){b=a+B(c,80)|0;break b}b=a;if(F){break a}}u=B(e,g);x=B(g,e+5|0);y=B(g,e+4|0);A=B(g,e+3|0);D=B(g,e+2|0);E=B(g,e|1);c=B(c,6)+J|0;H=B(c,g);b=w[b+76|0]+(v[b+72>>2]+G|0)|0;Q=B(g,c+2|0);R=B(g,c|1);S=B(g,c+5|0);T=B(g,c+4|0);U=B(g,c+3|0);c=0;while(1){k=z[f+(c+U<<2)>>2];j=z[m+120>>2];h=z[f+(c+T<<2)>>2];n=z[m+128>>2];l=z[m+124>>2];i=z[f+(c+S<<2)>>2];z[f+(c+u<<2)>>2]=z[f+(c+H<<2)>>2]+C(C(h*n)-C(l*i));z[f+(c+E<<2)>>2]=C(C(i*j)-C(n*k))+z[f+(c+R<<2)>>2];z[f+(c+D<<2)>>2]=C(C(k*l)-C(j*h))+z[f+(c+Q<<2)>>2];z[f+(c+A<<2)>>2]=k;z[f+(c+y<<2)>>2]=h;z[f+(c+x<<2)>>2]=i;V=b>>>0>c>>>0;c=c+1|0;if(V){continue}break}c=b+1|0;if(d>>>0<=c>>>0){break a}while(1){v[f+(c+u<<2)>>2]=0;v[f+(c+E<<2)>>2]=0;v[f+(c+D<<2)>>2]=0;v[f+(c+A<<2)>>2]=0;v[f+(c+y<<2)>>2]=0;v[f+(c+x<<2)>>2]=0;c=c+1|0;if(d>>>0>c>>>0){continue}break}}m=w[(a+B(q,80)|0)+76|0];if(m){u=B(e,g);x=B(g,e+5|0);y=B(g,e+4|0);A=B(g,e+3|0);D=B(g,e+2|0);E=B(g,e|1);H=B(q,76)+P|0;b=0;while(1){c=H+B(b,24)|0;K=z[c+8>>2];L=z[c+4>>2];M=z[c>>2];k=z[r+8>>2];j=z[c+20>>2];l=C(j+j);j=z[r>>2];h=z[c+12>>2];o=C(h+h);h=z[r+4>>2];i=z[c+16>>2];p=C(i+i);s=C(C(k*l)+C(C(j*o)+C(h*p)));i=z[r+12>>2];n=C(C(i*i)+C(-.5));z[f+(d+u<<2)>>2]=C(j*s)+C(C(o*n)+C(i*C(C(h*l)-C(p*k))));z[f+(d+E<<2)>>2]=C(h*s)+C(C(p*n)+C(i*C(C(k*o)-C(l*j))));z[f+(d+D<<2)>>2]=C(k*s)+C(C(l*n)+C(i*C(C(j*p)-C(o*h))));l=C(K+K);o=C(M+M);p=C(L+L);s=C(C(k*l)+C(C(j*o)+C(h*p)));z[f+(d+A<<2)>>2]=C(j*s)+C(C(o*n)+C(i*C(C(h*l)-C(p*k))));z[f+(d+y<<2)>>2]=C(h*s)+C(C(p*n)+C(i*C(C(k*o)-C(l*j))));z[f+(d+x<<2)>>2]=C(k*s)+C(C(l*n)+C(i*C(C(j*p)-C(o*h))));d=d+1|0;b=b+1|0;if((m|0)!=(b|0)){continue}break}}if(d>>>0>>0){b=B(e,g);r=B(g,e+5|0);m=B(g,e+4|0);u=B(g,e+3|0);x=B(g,e+2|0);y=B(g,e|1);c=d;while(1){v[f+(b+c<<2)>>2]=0;v[f+(c+y<<2)>>2]=0;v[f+(c+x<<2)>>2]=0;v[f+(c+u<<2)>>2]=0;v[f+(c+m<<2)>>2]=0;v[f+(c+r<<2)>>2]=0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}e=e+6|0;q=q+1|0;if((I|0)!=(q|0)){continue}break}}}function YX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);c=xa-288|0;xa=c;v[c+272>>2]=0;v[c+264>>2]=0;v[c+268>>2]=0;v[c+256>>2]=0;v[c+260>>2]=0;F=z[d+20>>2];o=z[b+20>>2];G=z[d+24>>2];m=z[b+24>>2];k=z[e+52>>2];B=z[e+56>>2];D=z[f+4>>2];E=z[f>>2];I=z[f+8>>2];w=z[a+4>>2];q=z[d+12>>2];r=z[d>>2];H=z[d+16>>2];s=z[b+16>>2];p=z[d+4>>2];l=z[d+8>>2];n=z[e+48>>2];v[c+252>>2]=0;z[c+248>>2]=B;z[c+244>>2]=k;t[c+224|0]=0;v[c+220>>2]=3;v[c+192>>2]=0;v[c+196>>2]=0;v[c+200>>2]=0;v[c+204>>2]=0;z[c+240>>2]=n;k=k>=n?n:k;k=k<=B?k:B;B=C(k*C(.05000000074505806));z[c+216>>2]=B;z[c+212>>2]=B;z[c+208>>2]=k*C(.15000000596046448);v[c+172>>2]=0;B=C(-r);n=C(s-H);o=C(o-F);m=C(m-G);s=C(C(C(B*n)-C(o*p))-C(l*m));k=C(C(q*q)+C(-.5));y=C(C(C(q*C(C(p*n)-C(r*o)))+C(k*m))-C(l*s));y=C(y+y);z[c+168>>2]=y;A=C(C(C(k*o)+C(q*C(C(r*m)-C(l*n))))-C(p*s));A=C(A+A);z[c+164>>2]=A;v[c+156>>2]=0;z[c+152>>2]=y;z[c+148>>2]=A;z[c+176>>2]=w;v[c+108>>2]=0;z[c+104>>2]=y;z[c+100>>2]=A;n=C(C(C(k*n)+C(q*C(C(l*o)-C(p*m))))-C(r*s));n=C(n+n);z[c+96>>2]=n;v[c+124>>2]=4;z[c+160>>2]=n;z[c+144>>2]=n;t[c+128|0]=1;z[c+120>>2]=w;z[c+116>>2]=w;z[c+112>>2]=w;v[c+92>>2]=0;o=C(I*g);m=C(E*g);s=C(D*g);D=C(C(l*o)+C(C(r*m)+C(p*s)));E=C(C(l*D)+C(C(o*k)-C(q*C(C(r*s)-C(m*p)))));z[c+88>>2]=E+E;E=C(C(p*D)+C(C(s*k)-C(q*C(C(l*m)-C(o*r)))));z[c+84>>2]=E+E;o=C(C(r*D)+C(C(m*k)-C(q*C(C(p*o)-C(s*l)))));z[c+80>>2]=o+o;a=x[i>>1];v[c+28>>2]=0;z[c+24>>2]=y-z[c+200>>2];z[c+20>>2]=A-z[c+196>>2];z[c+16>>2]=n-z[c+192>>2];v[c+8>>2]=141148;v[c+12>>2]=c+96;v[c>>2]=141808;v[c+4>>2]=c+192;a=a&512;b=WX(c+8|0,c,c+16|0,c+256|0,c+80|0,c- -64|0,c+32|0,c+48|0,C(w+j),a>>>9|0);a:{if(!b){break a}j=C(-l);w=C(-p);u[h+12>>1]=2;D=z[c+64>>2];if(D<=z[c+272>>2]){if(a){u[h+12>>1]=3;g=z[c+56>>2];n=z[c+48>>2];o=z[c+52>>2];m=z[c+40>>2];s=z[c+32>>2];y=z[c+36>>2];z[h+40>>2]=D;A=C(C(l*m)+C(C(r*s)+C(p*y)));z[h+36>>2]=C(C(C(q*C(C(r*y)+C(s*w)))+C(k*m))+C(l*A))*C(-2);z[h+32>>2]=C(C(p*A)+C(C(k*y)+C(q*C(C(l*s)+C(m*B)))))*C(-2);z[h+28>>2]=C(C(r*A)+C(C(k*s)+C(q*C(C(p*m)+C(y*j)))))*C(-2);m=C(C(q*C(C(r*o)+C(n*w)))+C(k*g));w=C(C(l*g)+C(C(r*n)+C(p*o)));m=C(m+C(l*w));z[h+24>>2]=G+C(m+m);l=C(C(p*w)+C(C(k*o)+C(q*C(C(l*n)+C(g*B)))));z[h+20>>2]=F+C(l+l);g=C(C(r*w)+C(C(k*n)+C(q*C(C(p*g)+C(o*j)))));z[h+16>>2]=H+C(g+g);break a}v[h+40>>2]=0;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break a}u[h+12>>1]=3;n=z[c+56>>2];o=z[c+48>>2];m=z[c+52>>2];s=z[c+40>>2];y=z[c+32>>2];A=z[c+36>>2];z[h+40>>2]=D*g;g=C(C(l*s)+C(C(r*y)+C(p*A)));z[h+36>>2]=C(C(C(q*C(C(r*A)+C(y*w)))+C(k*s))+C(l*g))*C(-2);z[h+32>>2]=C(C(p*g)+C(C(k*A)+C(q*C(C(l*y)+C(s*B)))))*C(-2);z[h+28>>2]=C(C(r*g)+C(C(k*y)+C(q*C(C(p*s)+C(A*j)))))*C(-2);g=C(C(l*n)+C(C(r*o)+C(p*m)));w=C(C(C(q*C(C(r*m)+C(o*w)))+C(k*n))+C(l*g));z[h+24>>2]=G+C(w+w);l=C(C(p*g)+C(C(k*m)+C(q*C(C(l*o)+C(n*B)))));z[h+20>>2]=F+C(l+l);g=C(C(r*g)+C(C(k*o)+C(q*C(C(p*n)+C(m*j)))));z[h+16>>2]=H+C(g+g)}xa=c+288|0;return b|0}function PX(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=C(f);g=g|0;h=h|0;i=C(i);var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=0,Y=C(0),Z=C(0);a=xa-96|0;xa=a;G=v[c+32>>2];v[g+8>>2]=-1;I=w[G+54|0];W=w[G+55|0];G=v[G+56>>2];h=x[h>>1];IX(a+16|0,c+4|0,c+16|0);AV(a,b);H=C(z[a+12>>2]-i);z[a+12>>2]=H;z[g+40>>2]=f;a:{if(!I){h=0;break a}X=h&512;b=G+B(W,20)|0;q=z[d+12>>2];n=C(C(q*q)+C(-.5));j=z[d+8>>2];J=C(-j);m=z[d>>2];K=C(-m);o=z[d+4>>2];L=C(-o);M=z[a+44>>2];N=z[a+32>>2];O=z[a+48>>2];P=z[a+36>>2];h=0;Q=z[a+20>>2];R=z[a+40>>2];S=z[a+28>>2];T=z[a+16>>2];U=z[a+24>>2];p=z[a+8>>2];r=z[a+4>>2];s=z[a>>2];while(1){b:{A=z[e+8>>2];t=z[e>>2];E=z[e+4>>2];F=C(C(A*p)+C(C(t*s)+C(E*r)));c:{if(F>C(-1.0000000116860974e-7)&F>2];y=z[b+4>>2];D=z[b+8>>2];i=C(C(C(k*U)+C(y*P))+C(D*O));i=C(i+i);l=C(C(C(k*T)+C(y*S))+C(D*R));l=C(l+l);k=C(C(C(k*Q)+C(y*N))+C(D*M));k=C(k+k);y=C(C(j*i)+C(C(m*l)+C(o*k)));D=C(z[d+24>>2]+C(C(j*y)+C(C(i*n)+C(q*C(C(m*k)+C(l*L))))));V=C(z[d+16>>2]+C(C(m*y)+C(C(l*n)+C(q*C(C(o*i)+C(k*J))))));l=C(z[d+20>>2]+C(C(o*y)+C(C(k*n)+C(C(C(j*l)+C(i*K))*q))));i=C(H+C(C(D*p)+C(C(V*s)+C(r*l))));if(i<=C(0)){break b}i=C(C(-i)/F);if(!(i>C(0))|!(f>=i)){break c}z[g+36>>2]=p;z[g+32>>2]=r;z[g+28>>2]=s;z[g+24>>2]=D+C(A*i);z[g+20>>2]=l+C(E*i);z[g+16>>2]=V+C(t*i);u[g+12>>1]=3;z[g+40>>2]=i;h=1;f=i}b=b+12|0;I=I-1|0;if(I){continue}break a}break}if(X){u[g+12>>1]=3;b=xa-80|0;xa=b;e=v[c+32>>2];IX(b,c+4|0,c+16|0);r=z[d+8>>2];c=v[e+56>>2]+B(w[e+55|0],20)|0;i=z[c>>2];H=z[b+8>>2];q=z[c+4>>2];J=z[b+20>>2];j=z[c+8>>2];K=z[b+32>>2];f=C(C(C(i*H)+C(q*J))+C(j*K));f=C(f+f);s=z[d>>2];L=z[b>>2];M=z[b+12>>2];N=z[b+24>>2];n=C(C(C(i*L)+C(q*M))+C(j*N));n=C(n+n);O=z[b+4>>2];P=z[b+16>>2];Q=z[b+28>>2];i=C(C(C(i*O)+C(q*P))+C(j*Q));j=C(i+i);l=z[d+4>>2];m=C(C(r*f)+C(C(s*n)+C(j*l)));R=z[a+12>>2];S=z[d+24>>2];k=z[d+12>>2];A=C(C(k*k)+C(-.5));i=C(S+C(C(r*m)+C(C(f*A)+C(k*C(C(s*j)-C(n*l))))));E=z[a+8>>2];T=z[d+16>>2];q=C(T+C(C(s*m)+C(C(n*A)+C(k*C(C(l*f)-C(j*r))))));F=z[a>>2];U=z[d+20>>2];n=C(U+C(C(l*m)+C(C(j*A)+C(k*C(C(r*n)-C(f*s))))));y=z[a+4>>2];f=C(R+C(C(i*E)+C(C(q*F)+C(n*y))));d=1;h=w[e+54|0];if(h>>>0>1){V=C(-l);Y=C(-s);Z=C(-r);while(1){e=c+B(d,12)|0;j=z[e>>2];m=z[e+4>>2];t=z[e+8>>2];o=C(C(C(H*j)+C(J*m))+C(K*t));o=C(o+o);p=C(C(C(L*j)+C(M*m))+C(N*t));p=C(p+p);j=C(C(C(O*j)+C(P*m))+C(Q*t));t=C(j+j);D=C(C(r*o)+C(C(s*p)+C(l*t)));j=C(S+C(C(r*D)+C(C(o*A)+C(k*C(C(s*t)+C(p*V))))));m=C(T+C(C(s*D)+C(C(p*A)+C(k*C(C(l*o)+C(t*Z))))));o=C(U+C(C(l*D)+C(C(t*A)+C(k*C(C(r*p)+C(o*Y))))));p=C(R+C(C(j*E)+C(C(m*F)+C(y*o))));if(p>2]=f;z[g+28>>2]=F;z[g+36>>2]=E;z[g+32>>2]=y;j=z[a>>2];m=z[a+4>>2];z[g+24>>2]=i-C(f*z[a+8>>2]);z[g+20>>2]=n-C(f*m);z[g+16>>2]=q-C(f*j);xa=b+80|0;h=1;break a}u[g+12>>1]=2;v[g+40>>2]=0;z[g+36>>2]=-A;z[g+32>>2]=-E;z[g+28>>2]=-t;h=1}xa=a+96|0;return h&1}function vC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=C(0),i=0,k=0;a=a+16|0;f=v[a+28>>2];if(f){while(1){c=a+B(e,24)|0;z[c+160>>2]=z[c+160>>2]-z[b>>2];z[c+164>>2]=z[c+164>>2]-z[b+4>>2];z[c+168>>2]=z[c+168>>2]-z[b+8>>2];z[c+172>>2]=z[c+172>>2]-z[b>>2];z[c+176>>2]=z[c+176>>2]-z[b+4>>2];z[c+180>>2]=z[c+180>>2]-z[b+8>>2];e=e+1|0;if((f|0)!=(e|0)){continue}break}}z[a+656>>2]=z[a+656>>2]-z[b>>2];z[a+660>>2]=z[a+660>>2]-z[b+4>>2];z[a+664>>2]=z[a+664>>2]-z[b+8>>2];e=0;f=v[a+644>>2];c=(a+656|0)+(f<<2)|0;g=z[c>>2];h=z[c+16>>2];c=(p(C(g-h)),j(2));v[a+668>>2]=(c|0)<0?c^-1:c|-2147483648;c=(p(C(g+h)),j(2));v[a+684>>2]=(c|0)<0?c^-1:c|-2147483648;d=v[a>>2];if(d){i=v[a+8>>2];while(1){c=i+B(e,24)|0;z[c>>2]=z[c>>2]-z[b>>2];z[c+4>>2]=z[c+4>>2]-z[b+4>>2];z[c+8>>2]=z[c+8>>2]-z[b+8>>2];z[c+12>>2]=z[c+12>>2]-z[b>>2];z[c+16>>2]=z[c+16>>2]-z[b+4>>2];z[c+20>>2]=z[c+20>>2]-z[b+8>>2];e=e+1|0;if((d|0)!=(e|0)){continue}break}}d=v[a+636>>2];if(d){i=v[a+20>>2];k=f<<2;e=0;while(1){c=i+(e<<5)|0;z[c>>2]=z[c>>2]-z[b>>2];z[c+4>>2]=z[c+4>>2]-z[b+4>>2];z[c+8>>2]=z[c+8>>2]-z[b+8>>2];f=c+k|0;g=z[f>>2];h=z[f+16>>2];f=(p(C(g+h)),j(2));v[c+28>>2]=(f|0)<0?f^-1:f|-2147483648;f=c;c=(p(C(g-h)),j(2));v[f+12>>2]=(c|0)<0?c^-1:c|-2147483648;e=e+1|0;if((d|0)!=(e|0)){continue}break}}z[a+736>>2]=z[a+736>>2]-z[b>>2];z[a+740>>2]=z[a+740>>2]-z[b+4>>2];z[a+744>>2]=z[a+744>>2]-z[b+8>>2];z[a+768>>2]=z[a+768>>2]-z[b>>2];z[a+772>>2]=z[a+772>>2]-z[b+4>>2];z[a+776>>2]=z[a+776>>2]-z[b+8>>2];z[a+800>>2]=z[a+800>>2]-z[b>>2];z[a+804>>2]=z[a+804>>2]-z[b+4>>2];z[a+808>>2]=z[a+808>>2]-z[b+8>>2];z[a+832>>2]=z[a+832>>2]-z[b>>2];z[a+836>>2]=z[a+836>>2]-z[b+4>>2];z[a+840>>2]=z[a+840>>2]-z[b+8>>2];z[a+864>>2]=z[a+864>>2]-z[b>>2];z[a+868>>2]=z[a+868>>2]-z[b+4>>2];z[a+872>>2]=z[a+872>>2]-z[b+8>>2];f=0;e=0;while(1){c=a+B(e,224)|0;z[c+960>>2]=z[c+960>>2]-z[b>>2];z[c+964>>2]=z[c+964>>2]-z[b+4>>2];z[c+968>>2]=z[c+968>>2]-z[b+8>>2];z[c+992>>2]=z[c+992>>2]-z[b>>2];z[c+996>>2]=z[c+996>>2]-z[b+4>>2];z[c+1e3>>2]=z[c+1e3>>2]-z[b+8>>2];d=c+1024|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+1028|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+1032|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+1056|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+1060|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+1064|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+1088|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+1092|0;z[d>>2]=z[d>>2]-z[b+4>>2];c=c+1096|0;z[c>>2]=z[c>>2]-z[b+8>>2];e=e+1|0;if((e|0)!=5){continue}break}while(1){e=0;while(1){c=(a+B(f,1120)|0)+B(e,224)|0;d=c+2080|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+2084|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+2088|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+2112|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+2116|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+2120|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+2144|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+2148|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+2152|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+2176|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+2180|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+2184|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+2208|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+2212|0;z[d>>2]=z[d>>2]-z[b+4>>2];c=c+2216|0;z[c>>2]=z[c>>2]-z[b+8>>2];e=e+1|0;if((e|0)!=5){continue}break}f=f+1|0;if((f|0)!=5){continue}break}}function i0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=0,l=C(0),m=C(0),n=0,o=0,p=C(0),q=C(0),r=C(0),s=C(0),y=0,A=0,D=0,E=0,F=0,H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=0;e=xa-160|0;xa=e;v[e+120>>2]=0;v[e+124>>2]=0;v[e+128>>2]=0;v[e+132>>2]=0;v[e+112>>2]=0;v[e+116>>2]=0;u[e+108>>1]=0;v[e+104>>2]=-1;v[e+96>>2]=0;v[e+100>>2]=0;v[e+144>>2]=0;v[e+136>>2]=2139095039;v[e+140>>2]=0;a:{if(!b){break a}D=a- -64|0;E=a+224|0;F=a+208|0;H=1;while(1){j=v[(y<<2)+c>>2];N=j>>>5|0;O=j>>>1&15;A=0;while(1){I=A+N|0;j=B(I,3);o=v[a+16>>2];b:{if(v[a+12>>2]){k=o+(j<<1)|0;j=x[k+4>>1];o=x[k+2>>1];k=x[k>>1];break b}k=o+(j<<2)|0;j=v[k+8>>2];o=v[k+4>>2];k=v[k>>2]}n=v[a+20>>2];v[e+92>>2]=j;v[e+84>>2]=k;v[e+88>>2]=o;j=n+B(j,12)|0;f=z[j>>2];o=n+B(o,12)|0;g=z[o>>2];k=n+B(k,12)|0;h=z[k>>2];l=z[j+4>>2];i=z[o+4>>2];m=z[k+4>>2];p=z[j+8>>2];q=z[o+8>>2];r=z[k+8>>2];J=z[a+60>>2];K=z[a+192>>2];L=z[a+196>>2];M=z[a+200>>2];v[e+44>>2]=0;s=q>r?r:q;z[e+40>>2]=(p>s?s:p)-M;s=i>m?m:i;z[e+36>>2]=(l>s?s:l)-L;s=g>h?h:g;z[e+32>>2]=(f>s?s:f)-K;v[e+28>>2]=0;q=q>2]=M+(p>2]=L+(i>l?i:l);g=g>2]=K+(f>2]=J+C(C(G(J,C(1)))*C(.0010000000474974513));n=e- -64|0;f=z[E>>2];g=f>C(0)?f:C(-f);g=g>C(9.999999717180685e-10)?g:C(9.999999717180685e-10);g=C(C(1)/(f>=C(0)?g:C(-g)));h=z[F>>2];f=C(g*C(z[e+16>>2]-h));g=C(g*C(z[e+32>>2]-h));p=f>2];l=h>C(0)?h:C(-h);l=l>C(9.999999717180685e-10)?l:C(9.999999717180685e-10);l=C(C(1)/(h>=C(0)?l:C(-l)));i=z[F+4>>2];h=C(l*C(z[e+20>>2]-i));l=C(l*C(z[e+36>>2]-i));q=h>2];m=i>C(0)?i:C(-i);m=m>C(9.999999717180685e-10)?m:C(9.999999717180685e-10);m=C(C(1)/(i>=C(0)?m:C(-m)));r=z[F+8>>2];i=C(m*C(z[e+24>>2]-r));m=C(m*C(z[e+40>>2]-r));r=ir?q:r;p=p>q?p:q;z[n>>2]=p>C(0)?p:C(0);p=z[e>>2];i=i>m?i:m;h=h>l?h:l;h=h>i?i:h;f=f>g?f:g;f=f>h?h:f;f=f>p?p:f;z[e+48>>2]=f;if(f>z[n>>2]){f=z[a+60>>2];z[e+136>>2]=f;v[e+140>>2]=0;v[e+144>>2]=0;u[e+108>>1]=1;v[e+104>>2]=I;c:{if(w[a+177|0]){if(!(f>2])){break c}n=v[e+100>>2];v[D>>2]=v[e+96>>2];v[D+4>>2]=n;v[D+8>>2]=v[e+104>>2];u[a+76>>1]=1;z[a+80>>2]=z[e+112>>2];z[a+84>>2]=z[e+116>>2];z[a+88>>2]=z[e+120>>2];z[a+92>>2]=z[e+124>>2];z[a+96>>2]=z[e+128>>2];g=z[e+132>>2];z[a+104>>2]=f;z[a+100>>2]=g;v[a+124>>2]=v[e+156>>2];n=v[e+152>>2];v[a+116>>2]=v[e+148>>2];v[a+120>>2]=n;n=v[e+144>>2];v[a+108>>2]=v[e+140>>2];v[a+112>>2]=n;g=z[d>>2];z[d>>2]=f>2]=z[k>>2];z[a+132>>2]=z[k+4>>2];z[a+136>>2]=z[k+8>>2];z[a+140>>2]=z[o>>2];z[a+144>>2]=z[o+4>>2];z[a+148>>2]=z[o+8>>2];z[a+152>>2]=z[j>>2];z[a+156>>2]=z[j+4>>2];z[a+160>>2]=z[j+8>>2];v[a+164>>2]=v[e+84>>2];v[a+168>>2]=v[e+88>>2];j=v[e+92>>2];t[a+176|0]=1;v[a+172>>2]=j;break c}z[e+64>>2]=z[d>>2];n=v[a+8>>2];if(!(Ba[v[v[n>>2]>>2]](n,e+96|0,k,o,j,e- -64|0,e+84|0)|0)){break a}f=z[e+64>>2];if(!(f>2])){break c}z[d>>2]=f;z[a+60>>2]=f}if(!v[v[a+8>>2]+4>>2]){break a}}j=(A|0)==(O|0);A=A+1|0;if(!j){continue}break}y=y+1|0;H=y>>>0>>0;if((b|0)!=(y|0)){continue}break}}xa=e+160|0;return(H^-1)&1}function Ru(a){var b=0,c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),A=C(0),B=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0);e=xa-48|0;xa=e;i=v[a+4>>2];B=v[a+268>>2];a:{if(!(B&1048576)){z[a+208>>2]=z[a+32>>2];b=v[a+40>>2];v[a+212>>2]=v[a+36>>2];v[a+216>>2]=b;b=v[a+48>>2];v[a+220>>2]=v[a+44>>2];v[a+224>>2]=b;b=v[a+56>>2];v[a+228>>2]=v[a+52>>2];v[a+232>>2]=b;break a}if(!(B&2097152)){AG(a+16|0,a+208|0);break a}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],i>>>24&15);v[a+8>>2]=c}D=z[c+148>>2];E=z[c+156>>2];F=z[c+152>>2];G=z[c+144>>2];O=z[a+48>>2];f=z[a+52>>2];j=z[a- -64>>2];d=C(z[c+160>>2]-z[a+80>>2]);p=C(d+d);d=C(z[c+164>>2]-z[a+84>>2]);q=C(d+d);k=z[a+68>>2];l=z[a+72>>2];d=C(z[c+168>>2]-z[a+88>>2]);r=C(d+d);s=C(C(C(C(-j)*p)-C(q*k))-C(l*r));m=z[a+40>>2];g=z[a+76>>2];A=C(C(g*g)+C(-.5));d=C(C(C(r*A)+C(g*C(C(k*p)-C(j*q))))-C(l*s));H=C(d+d);n=z[a+32>>2];d=C(C(C(p*A)+C(g*C(C(l*q)-C(k*r))))-C(j*s));I=C(d+d);d=C(C(C(q*A)+C(g*C(C(j*r)-C(l*p))))-C(k*s));J=C(d+d);o=z[a+36>>2];N=C(C(m*H)+C(C(n*I)+C(J*o)));h=z[a+44>>2];d=C(C(h*h)+C(-.5));p=C(C(C(m*N)+C(C(H*d)+C(C(C(n*J)-C(I*o))*h)))+z[a+56>>2]);z[e+40>>2]=p;q=C(f+C(C(o*N)+C(C(J*d)+C(h*C(C(m*I)-C(H*n))))));z[e+36>>2]=q;K=C(C(l*F)+C(C(k*D)+C(C(g*E)+C(j*G))));L=C(C(D*l)+C(C(C(g*G)-C(E*j))-C(k*F)));M=C(C(F*j)+C(C(C(g*D)-C(E*k))-C(l*G)));f=C(C(G*k)+C(C(C(g*F)-C(E*l))-C(j*D)));r=C(C(C(C(h*K)-C(n*L))-C(o*M))-C(m*f));z[e+28>>2]=r;s=C(C(C(n*M)+C(C(h*f)+C(K*m)))-C(L*o));z[e+24>>2]=s;A=C(C(C(m*L)+C(C(h*M)+C(K*o)))-C(f*n));z[e+20>>2]=A;f=C(C(C(o*f)+C(C(h*L)+C(n*K)))-C(M*m));z[e+16>>2]=f;d=C(O+C(C(n*N)+C(C(I*d)+C(h*C(C(o*H)-C(J*m))))));z[e+32>>2]=d;z[a+232>>2]=p;z[a+228>>2]=q;z[a+224>>2]=d;z[a+220>>2]=r;z[a+216>>2]=s;z[a+212>>2]=A;z[a+208>>2]=f;AG(a+16|0,e+16|0)}b:{if(!(i&1)){break b}b=v[a+8>>2];if(!b){b=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}b=w[b|0]&8;i=w[a+24|0]&8;if(!(b|!i)){wu(v[a>>2],a,1);break b}if(!b|i){break b}vu(v[a>>2],a,1)}c:{if(!(B&-131072001)){break c}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=c}b=v[a+268>>2];if(b&1){KG(a+16|0,z[c+92>>2]);b=v[a+268>>2]}if(b&2){LG(a+16|0,c+96|0);b=v[a+268>>2]}if(b&4){MG(a+16|0,z[c+108>>2]);b=v[a+268>>2]}if(b&8){NG(a+16|0,z[c+112>>2]);b=v[a+268>>2]}if(b&16){OG(a+16|0,z[c+116>>2]);b=v[a+268>>2]}if(b&32){PG(a+16|0,z[c+120>>2]);b=v[a+268>>2]}if(b&64){VG(a+16|0,z[c+124>>2]);b=v[a+268>>2]}if(b&512){i=x[c+136>>1];u[a+62>>1]=i;b=v[a+16>>2];if(b){u[b+94>>1]=i}b=v[a+268>>2]}if(b&256){z[a+124>>2]=z[c+132>>2]}if(b&1024){DG(a+16|0,c+144|0);b=v[a+268>>2]}if(b&4096){WG(a+16|0,z[c+176>>2]);b=v[a+268>>2]}if(b&2048){z[a+108>>2]=z[c+172>>2]}if(b&8192){TG(a+16|0,z[c+180>>2]);b=v[a+268>>2]}if(b&128){z[a+92>>2]=z[c+128>>2]}if(!(B&16384)){break c}b=v[v[a>>2]+2428>>2];t[e+8|0]=w[c+268|0];QG(a+16|0,b,e+8|0)}Ou(a);b=a+16|0;d:{if(!(B&33554432)){b=v[b>>2];if(b){b=y[b+152>>2]>4294967293}else{b=1}if(y[a+4>>2]>3221225471){break d}v[a+264>>2]=b;break d}RG(b)}Uu(a);v[a+8>>2]=0;v[a+268>>2]=0;v[a+4>>2]=w[a+7|0]<<24;xa=e+48|0}function Id(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0,L=0;h=xa+-64|0;xa=h;z[h+32>>2]=z[d>>2];z[h+36>>2]=z[d+4>>2];z[h+40>>2]=z[d+8>>2];z[h+44>>2]=z[d+12>>2];z[h+48>>2]=z[c>>2];z[h+52>>2]=z[c+4>>2];z[h+56>>2]=z[c+8>>2];z[h>>2]=z[g>>2];z[h+4>>2]=z[g+4>>2];z[h+8>>2]=z[g+8>>2];z[h+12>>2]=z[g+12>>2];z[h+16>>2]=z[f>>2];z[h+20>>2]=z[f+4>>2];z[h+24>>2]=z[f+8>>2];g=xa-16|0;xa=g;c=v[37696];d=c+12|0;c=(G=d,H=84,I=Ba[v[v[c>>2]+20>>2]](c)|0?28139:63804,J=6649,L=45,F=v[v[d>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,L|0)|0);E=Ba[v[v[a>>2]+20>>2]](a)|0;u[g+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[g+8>>1];u[c+4>>1]=260;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=146692;v[c>>2]=146468;v[c+8>>2]=0;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,112,24422,17141,454)|0;j=z[h+44>>2];l=z[h+40>>2];m=z[h+32>>2];i=z[h+36>>2];r=v[h+52>>2];s=v[h+48>>2];z[c+44>>2]=z[h+56>>2];v[c+36>>2]=s;v[c+40>>2]=r;k=i;i=C(C(1)/C(K(C(C(j*j)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+24>>2]=k*i;z[c+28>>2]=l*i;z[c+32>>2]=j*i;z[c+20>>2]=m*i;j=z[h+12>>2];l=z[h+8>>2];m=z[h>>2];i=z[h+4>>2];r=v[h+20>>2];s=v[h+16>>2];z[c+72>>2]=z[h+24>>2];D=c- -64|0;v[D>>2]=s;v[D+4>>2]=r;k=i;i=C(C(1)/C(K(C(C(j*j)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+52>>2]=k*i;z[c+56>>2]=l*i;z[c+60>>2]=j*i;z[c+48>>2]=m*i;Y4(f,b);q=z[h+52>>2];t=z[h+56>>2];w=z[h+48>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];k=z[h+40>>2];m=z[f+4>>2];n=z[h+36>>2];j=z[f+12>>2];o=z[h+44>>2];i=z[f>>2];p=z[h+32>>2];z[d+28>>2]=C(l*k)+C(C(m*n)+C(C(j*o)+C(i*p)));z[d+24>>2]=C(p*m)+C(C(C(j*k)-C(o*l))-C(i*n));z[d+20>>2]=C(k*i)+C(C(C(j*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(j*p)-C(o*i))-C(m*k));k=C(w-B);k=C(k+k);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*k)-C(n*m))-C(l*o));q=C(C(j*j)+C(-.5));z[d+40>>2]=C(C(o*q)+C(j*C(C(m*k)-C(i*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(j*C(C(i*o)-C(l*k))))-C(m*p);z[d+32>>2]=C(C(k*q)+C(j*C(C(l*n)-C(m*o))))-C(i*p);Y4(f,e);q=z[h+20>>2];t=z[h+24>>2];w=z[h+16>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];k=z[h+8>>2];m=z[f+4>>2];n=z[h+4>>2];j=z[f+12>>2];o=z[h+12>>2];i=z[f>>2];p=z[h>>2];z[d+56>>2]=C(l*k)+C(C(m*n)+C(C(j*o)+C(i*p)));z[d+52>>2]=C(p*m)+C(C(C(j*k)-C(o*l))-C(i*n));z[d+48>>2]=C(k*i)+C(C(C(j*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(j*p)-C(o*i))-C(m*k));k=C(w-B);k=C(k+k);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*k)-C(n*m))-C(l*o));q=C(C(j*j)+C(-.5));z[d+68>>2]=C(C(o*q)+C(j*C(C(m*k)-C(i*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(j*C(C(i*o)-C(l*k))))-C(m*p);z[d+60>>2]=C(C(k*q)+C(j*C(C(l*n)-C(m*o))))-C(i*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;v[c+12>>2]=146364;v[c>>2]=146132;d=v[c+80>>2];v[d+80>>2]=0;v[d+84>>2]=0;v[d+92>>2]=0;v[d+96>>2]=0;j=z[E>>2];u[d+100>>1]=2;z[d+88>>2]=j*C(.02500000037252903);a=Ba[v[v[a>>2]+108>>2]](a,b,e,c+12|0,146108,112)|0;v[c+76>>2]=a;if(!a){Ba[v[v[c>>2]+16>>2]](c);c=0}xa=g+16|0;xa=h- -64|0;return c|0}function vw(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=0,F=0,G=C(0),H=C(0),I=0,J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0);E=xa-1280|0;xa=E;I=x[b+6>>1]+b|0;f=x[b+18>>1]+b|0;J=f+144|0;k=C(-z[e+8>>2]);n=C(-z[e+4>>2]);p=C(-z[e>>2]);h=C(-z[d+8>>2]);i=C(-z[d+4>>2]);j=C(-z[d>>2]);if(c){while(1){F=(c<<5)+I|0;l=z[F+24>>2];q=z[F+20>>2];m=z[F+16>>2];g=(E+256|0)+(r<<4)|0;v[g+12>>2]=0;o=C(k+C(C(j*q)-C(m*i)));z[g+8>>2]=o;m=C(n+C(C(h*m)-C(l*j)));z[g+4>>2]=m;l=C(p+C(C(i*l)-C(q*h)));z[g>>2]=l;g=B(c,160)+J|0;u=z[g+16>>2];y=z[g+80>>2];A=z[g+48>>2];D=z[g+20>>2];G=z[g+84>>2];H=z[g+52>>2];q=z[F+8>>2];K=z[g+8>>2];L=z[g+72>>2];M=z[g+40>>2];N=z[g+24>>2];O=z[g+88>>2];P=z[g+56>>2];s=z[F>>2];Q=z[g+4>>2];R=z[g+68>>2];S=z[g+36>>2];t=z[F+4>>2];T=z[g>>2];U=z[g+64>>2];V=z[g+32>>2];v[(r<<2)+E>>2]=c;i=C(C(C(i-C(o*R))-C(m*S))-C(l*Q));j=C(C(C(j-C(o*U))-C(m*V))-C(l*T));k=C(C(C(C(k-C(o*O))-C(m*P))-C(l*N))+C(C(s*i)-C(t*j)));h=C(C(C(h-C(o*L))-C(m*M))-C(l*K));n=C(C(C(C(n-C(o*G))-C(m*H))-C(l*D))+C(C(q*j)-C(s*h)));p=C(C(C(C(p-C(o*y))-C(m*A))-C(l*u))+C(C(t*h)-C(i*q)));r=r+1|0;c=w[(b+c|0)- -64|0];if(c){continue}break}v[d+12>>2]=0;z[d+8>>2]=h;z[d+4>>2]=i;z[d>>2]=j;v[e+12>>2]=0;z[e+8>>2]=k;z[e+4>>2]=n;z[e>>2]=p}q=z[f+88>>2];t=z[f+80>>2];s=z[f+84>>2];o=C(-C(C(C(q*h)+C(C(t*j)+C(i*s)))+C(C(z[f+136>>2]*k)+C(C(z[f+104>>2]*p)+C(n*z[f+120>>2])))));u=z[f+72>>2];y=z[f- -64>>2];A=z[f+68>>2];m=C(-C(C(C(u*h)+C(C(y*j)+C(i*A)))+C(C(z[f+132>>2]*k)+C(C(z[f+100>>2]*p)+C(n*z[f+116>>2])))));D=z[f+56>>2];G=z[f+48>>2];H=z[f+52>>2];l=C(-C(C(C(D*h)+C(C(G*j)+C(i*H)))+C(C(z[f+128>>2]*k)+C(C(z[f+96>>2]*p)+C(n*z[f+112>>2])))));q=C(-C(C(C(z[f+40>>2]*h)+C(C(z[f+8>>2]*j)+C(i*z[f+24>>2])))+C(C(q*k)+C(C(D*p)+C(n*u)))));s=C(-C(C(C(z[f+36>>2]*h)+C(C(z[f+4>>2]*j)+C(i*z[f+20>>2])))+C(C(s*k)+C(C(H*p)+C(n*A)))));i=C(-C(C(C(z[f+32>>2]*h)+C(C(z[f>>2]*j)+C(i*z[f+16>>2])))+C(C(t*k)+C(C(G*p)+C(n*y)))));if(r){while(1){r=r-1|0;b=v[(r<<2)+E>>2];c=(b<<5)+I|0;j=z[c>>2];k=z[c+4>>2];h=C(q-C(C(j*m)-C(l*k)));y=z[c+16>>2];b=B(b,160)+J|0;n=C(k*o);k=z[c+8>>2];i=C(i-C(n-C(m*k)));j=C(s-C(C(k*l)-C(o*j)));d=(E+256|0)+(r<<4)|0;k=z[d+8>>2];n=z[d>>2];p=z[d+4>>2];t=C(C(C(C(h*z[b+40>>2])+C(C(z[b+32>>2]*i)+C(j*z[b+36>>2])))+C(C(z[b+56>>2]*o)+C(C(z[b+48>>2]*l)+C(m*z[b+52>>2]))))+C(C(z[b+132>>2]*k)+C(C(z[b+100>>2]*n)+C(p*z[b+116>>2]))));u=C(C(C(C(h*z[b+8>>2])+C(C(z[b>>2]*i)+C(z[b+4>>2]*j)))+C(C(z[b+24>>2]*o)+C(C(z[b+16>>2]*l)+C(m*z[b+20>>2]))))+C(C(z[b+128>>2]*k)+C(C(z[b+96>>2]*n)+C(p*z[b+112>>2]))));A=z[c+20>>2];q=C(h-C(C(y*t)-C(u*A)));D=z[c+24>>2];h=C(C(C(C(h*z[b+72>>2])+C(C(z[b+64>>2]*i)+C(j*z[b+68>>2])))+C(C(z[b+88>>2]*o)+C(C(z[b+80>>2]*l)+C(m*z[b+84>>2]))))+C(C(z[b+136>>2]*k)+C(C(z[b+104>>2]*n)+C(p*z[b+120>>2]))));s=C(j-C(C(D*u)-C(h*y)));i=C(i-C(C(A*h)-C(t*D)));o=C(o-h);m=C(m-t);l=C(l-u);if(r){continue}break}}z[a+16>>2]=l;v[a+12>>2]=0;z[a+8>>2]=q;z[a+4>>2]=s;z[a>>2]=i;v[a+28>>2]=0;z[a+24>>2]=o;z[a+20>>2]=m;xa=E+1280|0}function rz(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;i=v[v[a+32>>2]>>2];k=v[i+11868>>2];h=v[i+11880>>2];m=k+h|0;s=v[i+11956>>2];a:{if(!k){break a}p=w[a+44|0]?1:4;j=v[v[i+11892>>2]>>2];while(1){b=j-g|0;b=b>>>0

>>0?b:p;b:{if(!b){d=0;break b}n=v[i+11964>>2]+(f<<3)|0;d=1;q=v[i+11960>>2];c=q+(g<<5)|0;c:{if(x[c+8>>1]!=65535|x[c+10>>1]!=65535){break c}o=x[c+22>>1];d:{if((o|0)!=1){if((l|0)==-1|(o|0)!=2){break c}if(b>>>0>1){break d}break c}if((l|0)==-1|b>>>0<2){break c}}c=q+(g+1<<5)|0;if((o|0)!=x[c+22>>1]|x[c+8>>1]!=65535|x[c+10>>1]!=65535){break c}d=b;e=b&65535;if(e>>>0<3){break c}d=2;c=q+(g+2<<5)|0;if((o|0)!=x[c+22>>1]|x[c+8>>1]!=65535|x[c+10>>1]!=65535){break c}d=b;if(e>>>0<4){break c}d=3;c=q+(g+3<<5)|0;if((o|0)!=x[c+22>>1]|x[c+8>>1]!=65535|x[c+10>>1]!=65535){break c}d=b;if(e>>>0<5){break c}d=4;c=q+(g+4<<5)|0;if((o|0)!=x[c+22>>1]){break c}d=(x[c+8>>1]&x[c+10>>1])!=65535?4:b}f=f+1|0;v[n>>2]=g;u[n+4>>1]=d;r=r+1|0}g=(d&65535)+g|0;if(!((k|0)==(j|0)|(j|0)!=(g|0))){b=v[i+11892>>2];v[b+(l<<2)>>2]=r;l=l+1|0;j=v[b+(l<<2)>>2];r=0}if(g>>>0>>0){continue}break}if(!k){break a}v[v[i+11892>>2]+(l<<2)>>2]=r}v[i+11896>>2]=v[i+12104>>2];c=f;e:{if((m|0)==(s|0)){break e}b=s-m|0;n=b&3;e=v[i+11964>>2];j=0;g=0;if((s+(k^-1)|0)-h>>>0>=3){b=b&-4;d=0;while(1){h=e+(c<<3)|0;u[h+4>>1]=1;v[h>>2]=g+k;u[h+12>>1]=1;v[h+8>>2]=(g|1)+k;u[h+20>>1]=1;v[h+16>>2]=(g|2)+k;u[h+28>>1]=1;v[h+24>>2]=(g|3)+k;g=g+4|0;c=c+4|0;d=d+4|0;if((b|0)!=(d|0)){continue}break}}if(!n){break e}while(1){b=e+(c<<3)|0;u[b+4>>1]=1;v[b>>2]=g+k;g=g+1|0;c=c+1|0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}v[i+12072>>2]=f;v[i+11968>>2]=c;v[i+12076>>2]=c-f;q=v[i+11960>>2];b=v[a+16>>2];b=Ba[v[v[b>>2]+4>>2]](b)|0;d=Ba[v[v[b>>2]+4>>2]](b)|0;b=c+63|0;if(b>>>0>=64){b=b>>>6|0;h=b>>>0>>0?c+15>>>4|0:b;o=((h+c|0)-1>>>0)/(h>>>0)|0;f=h;l=0;while(1){b=h-l|0;b=b>>>0<64?b:64;r=vr(v[v[a+28>>2]+584>>2],b<<6);if(b){s=f>>>0<64?f:64;d=0;while(1){j=v[a+28>>2];m=v[j+452>>2];p=v[a+40>>2];n=v[j+600>>2];e=v[j+604>>2];b=r+(d<<6)|0;v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=n;v[b+12>>2]=e;e=B(o,d+l|0);v[b+52>>2]=e;v[b+48>>2]=p;v[b+44>>2]=j;v[b+40>>2]=i;v[b+36>>2]=m;v[b+32>>2]=q;v[b+28>>2]=k;v[b>>2]=129004;e=e+o|0;v[b+56>>2]=c>>>0>e>>>0?e:c;e=v[a+20>>2];v[b+20>>2]=e;v[b+24>>2]=1;if(e){Ba[v[v[e>>2]+16>>2]](e);v[b+16>>2]=v[v[b+20>>2]+16>>2];e=v[b>>2]}else{e=129004}Ba[v[e+20>>2]](b);d=d+1|0;if((s|0)!=(d|0)){continue}break}}f=f+-64|0;l=l- -64|0;if(h>>>0>l>>>0){continue}break}}p=v[v[a+32>>2]+8>>2]&2147483647;if(p){d=0;while(1){b=vr(v[v[a+28>>2]+584>>2],56);n=v[i+11936>>2];m=v[a+28>>2];e=v[m+452>>2];c=v[a+40>>2];h=v[m+600>>2];f=v[m+604>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=h;v[b+12>>2]=f;v[b+48>>2]=c;v[b+44>>2]=m;v[b+40>>2]=i;v[b+36>>2]=e;f=p-d|0;v[b+32>>2]=f>>>0<32?f:32;v[b+28>>2]=n+(d<<2);v[b>>2]=129060;f=v[a+20>>2];v[b+20>>2]=f;v[b+24>>2]=1;if(f){Ba[v[v[f>>2]+16>>2]](f);v[b+16>>2]=v[v[b+20>>2]+16>>2];f=v[b>>2]}else{f=129060}Ba[v[f+20>>2]](b);d=d+32|0;if(p>>>0>d>>>0){continue}break}}}function NO(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,u=0,x=0;l=32;d=xa-32|0;xa=d;t[d+12|0]=0;g=d-128|0;xa=g;v[d+8>>2]=g;h=b-1|0;a:{if((h|0)<=0){break a}while(1){b:{if((h|0)<=(i|0)){break b}while(1){if(h-i>>>0<=4){while(1){e=i;i=e+1|0;b=i;c=e;while(1){c=y[B(b,12)+a>>2]>2]?b:c;f=(b|0)<(h|0);b=b+1|0;if(f){continue}break}if((c|0)!=(e|0)){b=B(c,12)+a|0;v[d+24>>2]=v[b+8>>2];c=v[b+4>>2];v[d+16>>2]=v[b>>2];v[d+20>>2]=c;e=B(e,12)+a|0;v[b+8>>2]=v[e+8>>2];c=v[e+4>>2];v[b>>2]=v[e>>2];v[b+4>>2]=c;v[e+8>>2]=v[d+24>>2];b=v[d+20>>2];v[e>>2]=v[d+16>>2];v[e+4>>2]=b}if((h|0)!=(i|0)){continue}break b}}c=B(i,12)+a|0;b=v[c>>2];e=B((h+i|0)/2|0,12)+a|0;if(b>>>0>y[e>>2]){v[d+24>>2]=v[c+8>>2];b=v[c+4>>2];v[d+16>>2]=v[c>>2];v[d+20>>2]=b;v[c+8>>2]=v[e+8>>2];b=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=b;v[e+8>>2]=v[d+24>>2];b=v[d+20>>2];v[e>>2]=v[d+16>>2];v[e+4>>2]=b;j=v[c>>2]}else{j=b}f=B(h,12)+a|0;b=v[f>>2];if(j>>>0>b>>>0){v[d+24>>2]=v[c+8>>2];b=v[c+4>>2];v[d+16>>2]=v[c>>2];v[d+20>>2]=b;v[c+8>>2]=v[f+8>>2];b=v[f+4>>2];v[c>>2]=v[f>>2];v[c+4>>2]=b;v[f+8>>2]=v[d+24>>2];b=v[d+20>>2];v[f>>2]=v[d+16>>2];v[f+4>>2]=b;b=v[f>>2]}if(y[e>>2]>b>>>0){v[d+24>>2]=v[e+8>>2];b=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=b;v[e+8>>2]=v[f+8>>2];b=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=b;v[f+8>>2]=v[d+24>>2];b=v[d+20>>2];v[f>>2]=v[d+16>>2];v[f+4>>2]=b}v[d+24>>2]=v[e+8>>2];b=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=b;c=h-1|0;j=B(c,12)+a|0;b=j;f=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=f;v[e+8>>2]=v[b+8>>2];v[b+8>>2]=v[d+24>>2];b=v[d+20>>2];v[j>>2]=v[d+16>>2];v[j+4>>2]=b;b=i;while(1){o=v[j>>2];while(1){e=b;b=b+1|0;f=B(b,12)+a|0;if(y[f>>2]>>0){continue}break}while(1){c=c-1|0;m=B(c,12)+a|0;if(y[m>>2]>o>>>0){continue}break}if((b|0)<(c|0)){v[d+24>>2]=v[f+8>>2];e=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=e;v[f+8>>2]=v[m+8>>2];e=v[m+4>>2];v[f>>2]=v[m>>2];v[f+4>>2]=e;v[m+8>>2]=v[d+24>>2];e=v[d+20>>2];v[m>>2]=v[d+16>>2];v[m+4>>2]=e;continue}break}v[d+24>>2]=v[f+8>>2];c=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=c;v[f+8>>2]=v[j+8>>2];c=v[j+4>>2];v[f>>2]=v[j>>2];v[f+4>>2]=c;v[j+8>>2]=v[d+24>>2];c=v[d+20>>2];v[j>>2]=v[d+16>>2];v[j+4>>2]=c;c:{if((b-i|0)<(h-b|0)){if(l-1>>>0<=k>>>0){c=l<<3;if(c){b=v[37696];f=b+12|0;b=(q=f,r=c,s=Ba[v[v[b>>2]+20>>2]](b)|0?37087:63804,u=17218,x=155,p=v[v[f>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}else{b=0}l=l<<1;b=H9(b,g,k<<2);c=n;n=1;if(!(!c|!g)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,g)}g=b}b=(k<<2)+g|0;v[b>>2]=i;v[b+4>>2]=e;i=e+2|0;break c}if(l-1>>>0<=k>>>0){c=l<<3;if(c){b=v[37696];f=b+12|0;b=(x=f,u=c,s=Ba[v[v[b>>2]+20>>2]](b)|0?37087:63804,r=17218,q=155,p=v[v[f>>2]+8>>2],Ba[p](x|0,u|0,s|0,r|0,q|0)|0)}else{b=0}l=l<<1;b=H9(b,g,k<<2);c=n;n=1;if(!(!c|!g)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,g)}g=b}b=(k<<2)+g|0;v[b>>2]=e+2;v[b+4>>2]=h;h=e}k=k+2|0;if((h|0)>(i|0)){continue}break}}if(k){b=k-2|0;i=v[(b<<2)+g>>2];h=v[((k<<2)+g|0)-4>>2];k=b;continue}break}if(!n|!g){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,g)}if(w[d+12|0]){u9(v[d+8>>2])}xa=d+32|0}function Mx(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=0,l=C(0),m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=0;c=xa-112|0;xa=c;W=v[b+32>>2];j=v[b+4>>2];n=v[b+12>>2];T=v[b+20>>2];Nx(c,T);f=z[n+24>>2];g=z[n+20>>2];y=z[c+60>>2];A=z[c+48>>2];D=z[c- -64>>2];E=z[c+40>>2];F=z[c+52>>2];G=z[c+68>>2];H=z[c+44>>2];I=z[c+56>>2];J=z[c+96>>2];K=z[c+84>>2];l=z[c+20>>2];o=z[c+16>>2];L=z[c+100>>2];M=z[c+76>>2];N=z[c+88>>2];p=z[c+32>>2];h=z[n+16>>2];q=z[c+28>>2];O=z[c+104>>2];i=z[n+8>>2];P=z[c+80>>2];d=z[n>>2];Q=z[c+92>>2];e=z[n+4>>2];R=z[c+36>>2];r=z[c+8>>2];s=z[c>>2];t=z[c+4>>2];S=z[c+72>>2];u=z[c+12>>2];x=z[c+24>>2];v[j+28>>2]=0;v[j+12>>2]=0;z[j+24>>2]=-C(C(C(p*f)+C(C(x*h)+C(q*g)))+C(C(C(d*P)+C(e*Q))+C(i*O)));z[j+20>>2]=-C(C(C(l*f)+C(C(u*h)+C(o*g)))+C(C(C(d*M)+C(e*N))+C(i*L)));z[j+16>>2]=-C(C(C(r*f)+C(C(s*h)+C(t*g)))+C(C(C(d*S)+C(e*K))+C(i*J)));z[j+8>>2]=-C(C(C(C(d*r)+C(e*l))+C(i*p))+C(C(C(h*H)+C(g*I))+C(f*G)));z[j+4>>2]=-C(C(C(C(d*t)+C(e*o))+C(i*q))+C(C(C(h*E)+C(g*F))+C(f*D)));z[j>>2]=-C(C(C(C(d*s)+C(e*u))+C(i*x))+C(C(C(h*R)+C(g*A))+C(f*y)));U=v[a+336>>2];if(U>>>0>=2){X=v[a+332>>2];Y=v[a+272>>2];Z=v[a+344>>2];_=v[a+340>>2];m=1;while(1){b=m<<5;a=(v[(b+X|0)+24>>2]<<5)+j|0;o=z[a+16>>2];p=z[a+20>>2];k=B(m,160)+_|0;e=z[k+128>>2];i=z[a+24>>2];l=z[k+124>>2];d=z[k+120>>2];f=z[a>>2];g=z[a+4>>2];h=z[a+8>>2];a=b+j|0;v[a+28>>2]=0;v[a+12>>2]=0;z[a+8>>2]=h;z[a+4>>2]=g;z[a>>2]=f;i=C(i+C(C(l*f)-C(d*g)));z[a+24>>2]=i;d=C(p+C(C(d*h)-C(e*f)));z[a+20>>2]=d;e=C(o+C(C(e*g)-C(l*h)));z[a+16>>2]=e;b=b+n|0;y=z[b>>2];a=B(m,112)+T|0;A=z[a+60>>2];D=z[a+36>>2];E=z[a+48>>2];F=z[b+4>>2];G=z[a- -64>>2];H=z[a+40>>2];I=z[a+52>>2];J=z[b+8>>2];K=z[a+68>>2];L=z[a+44>>2];M=z[a+56>>2];N=z[b+16>>2];O=z[a+96>>2];P=z[a+72>>2];Q=z[a+84>>2];l=z[a+8>>2];o=z[a>>2];p=z[a+4>>2];R=z[b+20>>2];S=z[a+100>>2];$=z[a+76>>2];aa=z[a+88>>2];q=z[a+20>>2];r=z[a+12>>2];s=z[a+16>>2];ba=z[b+24>>2];ca=z[a+104>>2];da=z[a+80>>2];ea=z[a+92>>2];t=z[a+32>>2];u=z[a+24>>2];x=z[a+28>>2];v[b+28>>2]=0;v[b+12>>2]=0;z[b+24>>2]=ba+C(C(C(t*i)+C(C(u*e)+C(d*x)))+C(C(C(f*da)+C(g*ea))+C(h*ca)));z[b+20>>2]=R+C(C(C(q*i)+C(C(r*e)+C(d*s)))+C(C(C(f*$)+C(g*aa))+C(h*S)));z[b+16>>2]=N+C(C(C(l*i)+C(C(o*e)+C(d*p)))+C(C(C(f*P)+C(g*Q))+C(h*O)));z[b+8>>2]=J+C(C(C(C(f*l)+C(g*q))+C(h*t))+C(C(C(e*L)+C(d*M))+C(i*K)));z[b+4>>2]=F+C(C(C(C(f*p)+C(g*s))+C(h*x))+C(C(C(e*H)+C(d*I))+C(i*G)));z[b>>2]=y+C(C(C(C(f*o)+C(g*r))+C(h*u))+C(C(C(e*D)+C(d*E))+C(i*A)));a=B(m,80)+Z|0;V=w[a+76|0];if(V){fa=(v[a+72>>2]<<2)+W|0;ga=B(m,76)+Y|0;a=0;while(1){k=B(a,24)+ga|0;z[(a<<2)+fa>>2]=C(C(z[k+20>>2]*z[b+8>>2])+C(C(z[k+12>>2]*z[b>>2])+C(z[k+16>>2]*z[b+4>>2])))+C(C(z[k+8>>2]*z[b+24>>2])+C(C(z[k>>2]*z[b+16>>2])+C(z[k+4>>2]*z[b+20>>2])));a=a+1|0;if((V|0)!=(a|0)){continue}break}}m=m+1|0;if((U|0)!=(m|0)){continue}break}}xa=c+112|0}function iaa(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=v[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=v[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=v[d+8>>2];b=b>>>3|0;c=v[d+12>>2];if((c|0)==(e|0)){i=152664,j=v[38166]&Uaa(-2,b),v[i>>2]=j;break b}v[e+12>>2]=c;v[c+8>>2]=e;break b}h=v[d+24>>2];b=v[d+12>>2];c:{if((d|0)!=(b|0)){c=v[d+8>>2];v[c+12>>2]=b;v[b+8>>2]=c;break c}d:{e=d+20|0;c=v[e>>2];if(c){break d}e=d+16|0;c=v[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=v[e>>2];if(c){continue}e=b+16|0;c=v[b+16>>2];if(c){continue}break}v[g>>2]=0}if(!h){break b}e=v[d+28>>2];c=(e<<2)+152968|0;e:{if(v[c>>2]==(d|0)){v[c>>2]=b;if(b){break e}i=152668,j=v[38167]&Uaa(-2,e),v[i>>2]=j;break b}v[h+(v[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}v[b+24>>2]=h;c=v[d+16>>2];if(c){v[b+16>>2]=c;v[c+24>>2]=b}c=v[d+20>>2];if(!c){break b}v[b+20>>2]=c;v[c+24>>2]=b;break b}b=v[f+4>>2];if((b&3)!=3){break b}v[38168]=a;v[f+4>>2]=b&-2;v[d+4>>2]=a|1;v[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=v[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(v[38172]==(f|0)){v[38172]=d;a=v[38169]+a|0;v[38169]=a;v[d+4>>2]=a|1;if(v[38171]!=(d|0)){break a}v[38168]=0;v[38171]=0;return}if(v[38171]==(f|0)){v[38171]=d;a=v[38168]+a|0;v[38168]=a;v[d+4>>2]=a|1;v[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=v[f+8>>2];b=b>>>3|0;c=v[f+12>>2];if((c|0)==(e|0)){i=152664,j=v[38166]&Uaa(-2,b),v[i>>2]=j;break g}v[e+12>>2]=c;v[c+8>>2]=e;break g}h=v[f+24>>2];b=v[f+12>>2];h:{if((f|0)!=(b|0)){c=v[f+8>>2];v[c+12>>2]=b;v[b+8>>2]=c;break h}i:{e=f+20|0;c=v[e>>2];if(c){break i}e=f+16|0;c=v[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=v[e>>2];if(c){continue}e=b+16|0;c=v[b+16>>2];if(c){continue}break}v[g>>2]=0}if(!h){break g}e=v[f+28>>2];c=(e<<2)+152968|0;j:{if(v[c>>2]==(f|0)){v[c>>2]=b;if(b){break j}i=152668,j=v[38167]&Uaa(-2,e),v[i>>2]=j;break g}v[h+(v[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}v[b+24>>2]=h;c=v[f+16>>2];if(c){v[b+16>>2]=c;v[c+24>>2]=b}c=v[f+20>>2];if(!c){break g}v[b+20>>2]=c;v[c+24>>2]=b}v[d+4>>2]=a|1;v[a+d>>2]=a;if(v[38171]!=(d|0)){break f}v[38168]=a;return}v[f+4>>2]=b&-2;v[d+4>>2]=a|1;v[a+d>>2]=a}if(a>>>0<=255){b=(a&-8)+152704|0;c=v[38166];a=1<<(a>>>3);k:{if(!(c&a)){v[38166]=a|c;a=b;break k}a=v[b+8>>2]}v[b+8>>2]=d;v[a+12>>2]=d;v[d+12>>2]=b;v[d+8>>2]=a;return}e=31;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}v[d+28>>2]=e;v[d+16>>2]=0;v[d+20>>2]=0;g=(e<<2)+152968|0;l:{m:{c=v[38167];b=1<>2]=d;v[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=v[g>>2];while(1){c=b;if((v[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=v[g+16>>2];if(b){continue}break}v[g+16>>2]=d;v[d+24>>2]=c}v[d+12>>2]=d;v[d+8>>2]=d;break l}a=v[c+8>>2];v[a+12>>2]=d;v[c+8>>2]=d;v[d+24>>2]=0;v[d+12>>2]=c;v[d+8>>2]=a}a=v[38174]-1|0;v[38174]=a?a:-1}}function l$(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=0,t=0,x=0,y=0,A=C(0),E=C(0),F=C(0),G=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=0,aa=0;y=xa-256|0;xa=y;a:{if(d&1){f=z[b>>2];k=C(-f);m=C(k-f);l=z[b+8>>2];n=C(-l);S=C(m*n);g=z[b+12>>2];i=z[b+4>>2];F=C(-i);h=C(F-i);T=C(g*h);o=z[c+12>>2];r=z[c>>2];M=C(C(o-r)*C(.5));K=C(g*m);L=C(h*n);G=z[c+16>>2];A=z[c+4>>2];N=C(C(G-A)*C(.5));U=C(C(f*m)+C(1));V=C(h*F);h=z[c+20>>2];E=z[c+8>>2];O=C(C(h-E)*C(.5));W=C(C(C(D(C(C(S-T)*M)))+C(D(C(C(K+L)*N))))+C(D(C(C(U-V)*O))));J=k;k=C(C(r+o)*C(.5));k=C(k+k);o=C(C(A+G)*C(.5));o=C(o+o);h=C(C(E+h)*C(.5));r=C(h+h);G=C(C(C(J*k)-C(o*i))-C(l*r));A=C(z[b+24>>2]*C(-2));E=C(z[b+16>>2]*C(-2));J=C(z[b+20>>2]*C(-2));P=C(C(l*A)+C(C(f*E)+C(J*i)));h=C(C(g*g)+C(-.5));X=C(C(C(l*P)+C(C(A*h)-C(g*C(C(f*J)-C(E*i)))))+C(C(C(r*h)+C(g*C(C(i*k)-C(f*o))))-C(l*G)));Y=C(W+X);F=C(m*F);m=C(n-l);Z=C(g*m);n=C(m*n);K=C(C(C(D(C(C(F+Z)*M)))+C(D(C(C(U-n)*N))))+C(D(C(C(L-K)*O))));L=C(C(C(i*P)+C(C(J*h)-C(g*C(C(l*E)-C(A*f)))))+C(C(C(o*h)+C(g*C(C(f*r)-C(l*k))))-C(i*G)));m=C(K+L);n=C(C(C(D(C(C(C(C(1)-V)-n)*M)))+C(D(C(C(F-Z)*N))))+C(D(C(C(S+T)*O))));g=C(C(C(f*P)+C(C(E*h)-C(g*C(C(i*A)-C(J*l)))))+C(C(C(k*h)+C(g*C(C(l*o)-C(i*r))))-C(f*G)));f=C(n+g);l=C(L-K);i=C(g-n);g=C(X-W);break a}Y=z[c+20>>2];m=z[c+16>>2];f=z[c+12>>2];l=z[c+4>>2];i=z[c>>2];g=z[c+8>>2]}k=f;f=z[a>>2];h=C(k*f);i=C(i*f);c=v[a+16>>2];s=z[c+12>>2]>2];j=v[p+40>>2];b=j-1|0;n=C(b>>>0);b:{if(f>n){break b}k=z[a+8>>2];o=C(Y*k);k=C(g*k);q=z[c+16>>2]>2];c=p-1|0;r=C(c>>>0);if(g>r){break b}i=s?i:h;if(iC(t>>>0)){break c}f=C(H(f));if(f=C(0)){t=~~f>>>0;break c}t=0}j=i>n;f=C(I(i));d:{if(f=C(0)){q=~~f>>>0;break d}q=0}Q=j?b:q;b=0;e:{if(gC(b>>>0)){break e}g=C(H(g));if(g=C(0)){b=~~g>>>0;break e}b=0}j=h>r;q=Q-t|0;g=C(I(h));f:{if(g=C(0)){s=~~g>>>0;break f}s=0}R=j?c:s;_=R-b|0;if(!(B(q,_)<<1)){break b}f=z[a+4>>2];q=0;g:{if(t>>>0>=Q>>>0|b>>>0>=R>>>0){break g}g=C(m*f);f=C(l*f);$=d&2;d=B(p,t)+b|0;j=0;h:{while(1){s=b;while(1){x=v[a+12>>2];p=v[x+60>>2];c=d;d=c+1|0;l=C(u[p+(d<<2)>>1]);x=p+(c+v[x+44>>2]<<2)|0;i=C(u[x>>1]);h=C(u[x+4>>1]);x=c<<2;aa=x+p|0;m=C(u[aa>>1]);i:{if(!(!(gg)|!(gi)|(!(f>m)|!(f>l)))){if(f>h){break i}}if((w[aa+2|0]&127)!=127){if(j>>>0>=64){Ba[v[v[e>>2]+8>>2]](e,j,y)|0;j=0}v[(j<<2)+y>>2]=c<<1;q=q+1|0;j=j+1|0;if($){break h}p=v[v[a+12>>2]+60>>2]}if((w[(p+x|0)+3|0]&127)==127){break i}if(j>>>0>=64){Ba[v[v[e>>2]+8>>2]](e,j,y)|0;j=0}v[(j<<2)+y>>2]=c<<1|1;q=q+1|0;j=j+1|0;if($){break h}}s=s+1|0;if((R|0)!=(s|0)){continue}break}d=v[v[a+12>>2]+44>>2]+(d-_|0)|0;t=t+1|0;if((Q|0)!=(t|0)){continue}break}if(!j){break g}}Ba[v[v[e>>2]+8>>2]](e,j,y)|0}}xa=y+256|0}function KY(a,b,c){var d=C(0),e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),y=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=0,M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=0,S=0,T=0,U=0,V=C(0);K=v[a+12>>2];a:{if(!K){d=z[a+48>>2];g=z[a+44>>2];D=z[a+72>>2];E=z[a+68>>2];e=z[a+40>>2];n=z[a+64>>2];break a}k=z[c+12>>2];A=C(C(k*k)+C(-.5));f=v[v[a>>2]+40>>2];T=w[f+64|0]&2;R=v[f+28>>2];L=v[f+24>>2];f=v[a+4>>2];U=v[a+8>>2];r=z[c+4>>2];M=C(-r);s=z[c>>2];N=C(-s);u=z[c+8>>2];O=C(-u);while(1){j=B(v[(P<<2)+U>>2],3);b:{if(T){j=(j<<1)+R|0;y=x[j+4>>1];S=x[j+2>>1];j=x[j>>1];break b}j=(j<<2)+R|0;y=v[j+8>>2];S=v[j+4>>2];j=v[j>>2]}y=B(y,12)+L|0;n=z[y+8>>2];D=z[y>>2];E=z[y+4>>2];y=B(S,12)+L|0;m=z[y+8>>2];q=z[y>>2];F=z[y+4>>2];o=z[c+24>>2];p=z[c+20>>2];j=B(j,12)+L|0;d=z[j>>2];g=z[j+4>>2];h=z[j+8>>2];e=C(C(C(d*z[f+8>>2])+C(g*z[f+20>>2]))+C(h*z[f+32>>2]));e=C(e+e);i=C(C(C(d*z[f>>2])+C(g*z[f+12>>2]))+C(h*z[f+24>>2]));i=C(i+i);d=C(C(C(d*z[f+4>>2])+C(g*z[f+16>>2]))+C(h*z[f+28>>2]));h=C(d+d);l=C(C(u*e)+C(C(s*i)+C(r*h)));d=C(z[c+16>>2]+C(C(s*l)+C(C(i*A)+C(k*C(C(r*e)+C(h*O))))));G=C(z[a+64>>2]+d);z[a+64>>2]=G;g=C(p+C(C(r*l)+C(C(h*A)+C(k*C(C(u*i)+C(e*N))))));H=C(z[a+68>>2]+g);z[a+68>>2]=H;e=C(o+C(C(u*l)+C(C(e*A)+C(k*C(C(s*h)+C(i*M))))));i=C(e+z[a+72>>2]);z[a+72>>2]=i;h=z[a+40>>2];h=d>h?h:d;z[a+40>>2]=h;l=z[a+44>>2];l=g>l?l:g;z[a+44>>2]=l;o=z[a+48>>2];o=e>o?o:e;z[a+48>>2]=o;p=z[a+52>>2];p=d>2]=p;d=z[a+56>>2];I=d>g?d:g;z[a+56>>2]=I;d=z[a+60>>2];Q=d>e?d:e;z[a+60>>2]=Q;V=z[c+16>>2];g=z[c+20>>2];J=i;d=C(C(C(q*z[f+8>>2])+C(F*z[f+20>>2]))+C(m*z[f+32>>2]));e=C(d+d);d=C(C(C(q*z[f>>2])+C(F*z[f+12>>2]))+C(m*z[f+24>>2]));i=C(d+d);d=C(C(C(q*z[f+4>>2])+C(F*z[f+16>>2]))+C(m*z[f+28>>2]));m=C(d+d);q=C(C(u*e)+C(C(s*i)+C(r*m)));d=C(z[c+24>>2]+C(C(u*q)+C(C(e*A)+C(k*C(C(s*m)+C(i*M))))));J=C(J+d);z[a+72>>2]=J;g=C(g+C(C(r*q)+C(C(m*A)+C(k*C(C(u*i)+C(e*N))))));H=C(H+g);z[a+68>>2]=H;e=C(V+C(C(s*q)+C(C(i*A)+C(k*C(C(r*e)+C(m*O))))));G=C(G+e);z[a+64>>2]=G;q=d>2]=q;F=g>2]=F;i=e>2]=i;o=d>o?o:d;z[a+48>>2]=o;l=g>l?l:g;z[a+44>>2]=l;h=e>h?h:e;z[a+40>>2]=h;I=z[c+16>>2];g=z[c+20>>2];d=C(C(C(D*z[f+8>>2])+C(E*z[f+20>>2]))+C(n*z[f+32>>2]));e=C(d+d);d=C(C(C(D*z[f>>2])+C(E*z[f+12>>2]))+C(n*z[f+24>>2]));m=C(d+d);d=C(C(C(D*z[f+4>>2])+C(E*z[f+16>>2]))+C(n*z[f+28>>2]));n=C(d+d);p=C(C(u*e)+C(C(s*m)+C(r*n)));d=C(z[c+24>>2]+C(C(u*p)+C(C(e*A)+C(k*C(C(s*n)+C(m*M))))));D=C(J+d);z[a+72>>2]=D;g=C(g+C(C(r*p)+C(C(n*A)+C(k*C(C(u*m)+C(e*N))))));E=C(H+g);z[a+68>>2]=E;e=C(I+C(C(s*p)+C(C(m*A)+C(k*C(C(r*e)+C(n*O))))));n=C(G+e);z[a+64>>2]=n;z[a+60>>2]=d>2]=g>2]=eo?o:d;z[a+48>>2]=d;g=g>l?l:g;z[a+44>>2]=g;e=e>h?h:e;z[a+40>>2]=e;P=P+1|0;if((K|0)!=(P|0)){continue}break}}t[a+76|0]=1;k=C(C(1)/C(B(K,3)>>>0));z[a+72>>2]=k*D;z[a+68>>2]=k*E;z[a+64>>2]=k*n;z[b+8>>2]=d;z[b+4>>2]=g;z[b>>2]=e;z[b+12>>2]=z[a+52>>2];z[b+16>>2]=z[a+56>>2];z[b+20>>2]=z[a+60>>2]}function mC(a,b,c,d){var e=0,f=C(0),g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=C(0),u=0,w=0,x=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;j=xa-32|0;xa=j;a:{if(v[a+28>>2]){while(1){h=B(e,24)+a|0;f=z[h+172>>2];g=z[h+160>>2];i=z[h+176>>2];k=z[h+164>>2];l=z[h+180>>2];m=z[h+168>>2];z[j+24>>2]=C(l-m)*C(.5);z[j+20>>2]=C(i-k)*C(.5);z[j+16>>2]=C(f-g)*C(.5);z[j+8>>2]=C(m+l)*C(.5);z[j+4>>2]=C(k+i)*C(.5);z[j>>2]=C(g+f)*C(.5);b:{if(!nC(b,j)){break b}v[j>>2]=-1082130432;if(Ba[v[v[c>>2]>>2]](c,j,((e<<3)+a|0)+32|0)|0){break b}h=0;break a}e=e+1|0;if(e>>>0>2]){continue}break}}h=1;if(!v[a+636>>2]){break a}if(!nC(b,a+656|0)){break a}e=(v[a+644>>2]<<2)+d|0;d=v[e>>2];D=(d|0)<0?d^-1:d|-2147483648;d=v[e+12>>2];E=(d|0)<0?d^-1:d|-2147483648;F=a+688|0;x=1;while(1){c:{d=r<<2;d:{if(!v[d+F>>2]){break d}if(!nC(b,((r<<5)+a|0)+736|0)){break d}G=a+d|0;u=B(r,224)+a|0;H=u+912|0;s=0;while(1){d=s<<2;e:{if(!v[d+H>>2]){break e}if(!nC(b,((s<<5)+u|0)+960|0)){break e}I=d+u|0;w=(B(r,1120)+a|0)+B(s,224)|0;J=w+2032|0;h=0;A=1;while(1){f:{q=h<<2;d=v[q+J>>2];g:{if(!d){break g}e=(h<<5)+w|0;f=C(z[b+16>>2]-z[e+2080>>2]);k=z[e+2096>>2];n=C(k+z[b+128>>2]);if(f>n){break g}g=C(z[b+20>>2]-z[e+2084>>2]);l=z[e+2100>>2];o=C(l+z[b+132>>2]);if(g>o){break g}i=C(z[b+24>>2]-z[e+2088>>2]);m=z[e+2104>>2];p=C(m+z[b+136>>2]);if(fp|(g>2])+C(g*z[b+48>>2]))+C(i*z[b+64>>2]));o=C(C(m*z[b+112>>2])+C(C(l*z[b+96>>2])+C(C(k*z[b+80>>2])+z[b>>2])));if(n>o){break g}p=C(C(C(f*z[b+36>>2])+C(g*z[b+52>>2]))+C(i*z[b+68>>2]));t=C(C(m*z[b+116>>2])+C(C(l*z[b+100>>2])+C(C(k*z[b+84>>2])+z[b+4>>2])));if(p>t){break g}f=C(C(C(f*z[b+40>>2])+C(g*z[b+56>>2]))+C(i*z[b+72>>2]));g=C(C(m*z[b+120>>2])+C(C(l*z[b+104>>2])+C(C(k*z[b+88>>2])+z[b+8>>2])));if(ng|(p>2]+(v[I+932>>2]+v[G+708>>2]|0)|0;e=v[a+20>>2]+(q<<5)|0;q=v[a+24>>2]+(q<<3)|0;while(1){h:{if(y[e+28>>2]>>0){break h}if(y[e+12>>2]>E>>>0){break g}f=C(z[b+16>>2]-z[e>>2]);k=z[e+16>>2];n=C(k+z[b+128>>2]);if(f>n){break h}g=C(z[b+20>>2]-z[e+4>>2]);l=z[e+20>>2];o=C(l+z[b+132>>2]);if(g>o){break h}i=C(z[b+24>>2]-z[e+8>>2]);m=z[e+24>>2];p=C(m+z[b+136>>2]);if(fp|(g>2])+C(g*z[b+48>>2]))+C(i*z[b+64>>2]));o=C(C(m*z[b+112>>2])+C(C(l*z[b+96>>2])+C(C(k*z[b+80>>2])+z[b>>2])));if(n>o){break h}p=C(C(C(f*z[b+36>>2])+C(g*z[b+52>>2]))+C(i*z[b+68>>2]));t=C(C(m*z[b+116>>2])+C(C(l*z[b+100>>2])+C(C(k*z[b+84>>2])+z[b+4>>2])));if(p>t){break h}f=C(C(C(f*z[b+40>>2])+C(g*z[b+56>>2]))+C(i*z[b+72>>2]));g=C(C(m*z[b+120>>2])+C(C(l*z[b+104>>2])+C(C(k*z[b+88>>2])+z[b+8>>2])));if(ng|(p>2]=-1082130432;if(!(Ba[v[v[c>>2]>>2]](c,j,q)|0)){break f}}q=q+8|0;e=e+32|0;d=d-1|0;if(d){continue}break}}A=h>>>0<4;h=h+1|0;if((h|0)!=5){continue}break e}break}if(A){break c}}s=s+1|0;if((s|0)!=5){continue}break}}x=r>>>0<4;r=r+1|0;if((r|0)!=5){continue}}break}h=!x}xa=j+32|0;return h&1}function Ht(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=xa-16|0;xa=k;if(w[a+36|0]&2){d=x[v[a+40>>2]+124>>1]}else{l=v[a+116>>2];d=1;a:{if(l-7>>>0<4294967294){break a}d=x[a+168>>1];if((l|0)==5){break a}d=x[a+148>>1]}}l=d;m=l&65535;t[k+12|0]=m>>>0>256;d=m<<2;b:{if(m>>>0>=257){i=t9(d,11562,410);break b}i=k-(d+15&524272)|0;xa=i}v[k+8>>2]=i;f=v[37393];c:{if(w[a+36|0]&2){e=v[a+40>>2];d=x[e+124>>1];e=(d|0)==1?e+120|0:v[v[a+32>>2]+4856>>2]+(v[e+120>>2]<<1)|0;break c}e=FR(a+48|0);g=v[a+116>>2];d=1;d:{if(g-7>>>0<4294967294){break d}d=x[a+168>>1];if((g|0)==5){break d}d=x[a+148>>1]}}g=a+32|0;a=l&65535;h=a>>>0>d>>>0?d:a;e:{if(!h){break e}a=0;if((h|0)!=1){n=h&65534;d=0;while(1){v[(a<<2)+i>>2]=v[v[f+40>>2]+(x[(a<<1)+e>>1]<<2)>>2];j=a|1;v[(j<<2)+i>>2]=v[v[f+40>>2]+(x[(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}v[(a<<2)+i>>2]=v[v[f+40>>2]+(x[(a<<1)+e>>1]<<2)>>2]}i=xa-16|0;xa=i;f:{g:{h:{i:{d=v[g+4>>2];switch((d>>>30|0)-2|0){case 1:break g;case 0:break i;default:break h}}if(w[v[g>>2]+4785|0]){break g}}f=0;h=0;a=xa-32|0;d=a;xa=a;j:{k:{if((c|0)==1){u[d+30>>1]=x[v[b>>2]+52>>1];ER(g+16|0,d+30|0,1);break k}t[d+20|0]=c>>>0>512;e=c<<1;l:{m:{if(c>>>0>=513){e=t9(e,11630,48);v[d+16>>2]=e;if(!e){break m}break l}e=a-(e+15&262128)|0;xa=e;v[d+16>>2]=e;if(c){break l}ER(g+16|0,e,c);break k}a=0;a9(v[37696],16,11630,57,67891,0);u9(0);break j}a=0;if(c-1>>>0>=3){n=c&65532;while(1){u[(a<<1)+e>>1]=x[v[(a<<2)+b>>2]+52>>1];j=a|1;u[(j<<1)+e>>1]=x[v[(j<<2)+b>>2]+52>>1];j=a|2;u[(j<<1)+e>>1]=x[v[(j<<2)+b>>2]+52>>1];j=a|3;u[(j<<1)+e>>1]=x[v[(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){u[(a<<1)+e>>1]=x[v[(a<<2)+b>>2]+52>>1];a=a+1|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}ER(g+16|0,e,c);if(c>>>0<513){break k}u9(e)}a=1;e=v[g>>2];if(!e){break j}e=v[v[e+992>>2]+1024>>2];Ba[v[v[e>>2]+64>>2]](e,g+48|0)}xa=d+32|0;break f}a=v[g+8>>2];if(!a){a=Pu(v[g>>2],d>>>24&15);v[g+8>>2]=a}n:{if((c|0)==1){u[a+124>>1]=1;u[a+120>>1]=x[v[b>>2]+52>>1];break n}f=v[g>>2];d=v[f+4860>>2];e=0;u[i+14>>1]=0;yr(f+4856|0,c+d|0,i+14|0);f=v[f+4856>>2];u[a+124>>1]=c;v[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){u[d+(e<<1)>>1]=x[v[(e<<2)+b>>2]+52>>1];h=e|1;u[d+(h<<1)>>1]=x[v[(h<<2)+b>>2]+52>>1];h=e|2;u[d+(h<<1)>>1]=x[v[(h<<2)+b>>2]+52>>1];h=e|3;u[d+(h<<1)>>1]=x[v[(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){u[d+(e<<1)>>1]=x[v[(e<<2)+b>>2]+52>>1];e=e+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}Xu(v[g>>2],g);v[g+4>>2]=v[g+4>>2]|2;a=1}xa=i+16|0;o:{if(!a){break o}if(c){a=0;while(1){d=v[(a<<2)+b>>2];v[d+16>>2]=v[d+16>>2]+1;a=a+1|0;if((c|0)!=(a|0)){continue}break}}if(!(l&65535)){break o}a=0;d=v[k+8>>2];while(1){b=v[d+(a<<2)>>2];c=v[b+16>>2]-1|0;v[b+16>>2]=c;if(!c){Ba[v[v[b+12>>2]+8>>2]](b+12|0)}a=a+1|0;if((m|0)!=(a|0)){continue}break}}if((l&65535)>>>0>=257){u9(v[k+8>>2])}xa=k+16|0}function b4(a){var b=0,c=0,d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=0,u=C(0),y=0,A=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=C(0),M=C(0),N=0,O=0,P=0;a:{l=v[a>>2];if(!l){break a}K=v[a+4>>2];if(!K){break a}s=v[a+28>>2];if(w[s+39|0]<4){break a}d=z[l+8>>2];e=z[l+4>>2];f=z[l>>2];m=C(-34028234663852886e22);g=w[s+38|0];b:{if(!g){h=f;n=e;o=d;i=C(-34028234663852886e22);j=C(-34028234663852886e22);break b}p=C(-34028234663852886e22);u=C(-34028234663852886e22);o=d;n=e;h=f;while(1){b=B(c,12)+l|0;j=z[b+8>>2];i=z[b+4>>2];k=z[b>>2];c:{if(k>f){f=k;break c}if(!(h>k)){break c}h=k}L=C(D(j));M=C(D(i));k=C(D(k));d:{if(eu;e:{if(d>2];f=C(D(f));h=C(D(h));h=f>h?f:h;e=C(D(e));f=C(D(n));n=C(h+(e>f?e:f));d=C(D(d));e=C(D(o));d=C(C(n+(d>e?d:e))*C(.019999999552965164));n=d>C(.019999999552965164)?d:C(.019999999552965164);e=C(-m);f=C(-i);d=j;h=C(-d);q=0;r=0;f:{while(1){b=B(y,20)+K|0;g:{if(q){break g}q=0;if(!(C(C(C(i*z[b+8>>2])+C(C(m*z[b>>2])+C(d*z[b+4>>2])))+z[b+12>>2])>=C(0))){break g}q=1}h:{if(r){break h}r=0;if(!(C(C(C(f*z[b+8>>2])+C(C(m*z[b>>2])+C(z[b+4>>2]*h)))+z[b+12>>2])>=C(0))){break h}r=1}i:{if(A){break i}A=0;if(!(C(C(C(f*z[b+8>>2])+C(C(m*z[b>>2])+C(d*z[b+4>>2])))+z[b+12>>2])>=C(0))){break i}A=1}j:{if(E){break j}E=0;if(!(C(C(C(i*z[b+8>>2])+C(C(m*z[b>>2])+C(z[b+4>>2]*h)))+z[b+12>>2])>=C(0))){break j}E=1}k:{if(F){break k}F=0;if(!(C(C(C(i*z[b+8>>2])+C(C(e*z[b>>2])+C(d*z[b+4>>2])))+z[b+12>>2])>=C(0))){break k}F=1}l:{if(G){break l}G=0;if(!(C(C(C(i*z[b+8>>2])+C(C(e*z[b>>2])+C(z[b+4>>2]*h)))+z[b+12>>2])>=C(0))){break l}G=1}m:{if(H){break m}H=0;if(!(C(C(C(f*z[b+8>>2])+C(C(e*z[b>>2])+C(d*z[b+4>>2])))+z[b+12>>2])>=C(0))){break m}H=1}n:{if(I){break n}I=0;if(!(C(C(C(f*z[b+8>>2])+C(C(e*z[b>>2])+C(z[b+4>>2]*h)))+z[b+12>>2])>=C(0))){break n}I=1}o:{t=w[s+38|0];p:{if(!t){break p}N=w[b+18|0];q:{if(N){P=x[b+16>>1];g=0;J=1;while(1){c=0;r:{while(1){if(w[(c+P|0)+O|0]==(g&255)){break r}c=c+1|0;if((N|0)!=(c|0)){continue}break}c=B(g,12)+l|0;if(n>2]*z[b+8>>2])+C(C(z[c>>2]*z[b>>2])+C(z[c+4>>2]*z[b+4>>2])))+z[b+12>>2])){break q}}g=g+1|0;J=t>>>0>g>>>0;if((g|0)!=(t|0)){continue}break}break p}o=z[b+8>>2];j=z[b>>2];k=z[b+4>>2];p=z[b+12>>2];if(n>2]*o)+C(C(z[l>>2]*j)+C(z[l+4>>2]*k)))+p)){break o}g=t-1|0;c=0;while(1){if((c|0)==(g|0)){break p}c=c+1|0;b=B(c,12)+l|0;if(!(n>2]*o)+C(C(z[b>>2]*j)+C(z[b+4>>2]*k)))+p))){continue}break}J=c>>>0>>0}g=0;a9(v[37696],32,9064,327,65562,0);if(J){break a}s=v[a+28>>2]}y=y+1|0;if(y>>>0>=w[s+39|0]){break f}continue}break}g=0;a9(v[37696],32,9064,327,65562,0);break a}s:{if(!q|!r|(!A|!E)){break s}if(!H|(!F|!G)){break s}g=1;if(I){break a}}a9(v[37696],32,9064,338,63086,0);return 0}return g}function pD(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0;g=xa-16|0;xa=g;if(w[a+212|0]){a:{b:{e=v[a+204>>2];if(e){while(1){e=e-1|0;c=v[v[a+200>>2]+(e<<3)>>2];TB(c,b);c=v[c+8>>2];k=z[c>>2];h=v[c>>2];c:{if((h&2139095040)==2139095040){i=z[c+4>>2];break c}i=z[c+4>>2];if((v[c+4>>2]&2139095040)==2139095040){break c}l=z[c+8>>2];if((v[c+8>>2]&2139095040)==2139095040){break c}m=z[c+12>>2];if((v[c+12>>2]&2139095040)==2139095040){break c}n=z[c+16>>2];if((v[c+16>>2]&2139095040)==2139095040){break c}o=z[c+20>>2];if((v[c+20>>2]&2139095040)==2139095040){break c}if(!(!(!(k<=m)|!(i<=n))&l<=o)){if(!(k==C(85070586659632215e21)&i==C(85070586659632215e21)&l==C(85070586659632215e21)&m==C(-85070586659632215e21)&n==C(-85070586659632215e21)&o==C(-85070586659632215e21))){break c}}j=j+1|0}d=v[a+196>>2]+B(e,24)|0;z[d+4>>2]=i;v[d>>2]=h;z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];if(e){continue}break}b=v[a+204>>2];if((b|0)!=(j|0)){break b}}TB(v[a+168>>2],v[a+196>>2]);break a}c=v[37696]+12|0;h=Ba[v[v[c>>2]+8>>2]](c,b<<2|1,24422,8015,300)|0;if(v[a+204>>2]){e=v[a+200>>2];c=0;b=0;while(1){f=b<<3;q=f+e|0;p=v[q>>2];d=v[p+8>>2];m=z[d>>2];d:{e:{if((v[d>>2]&2139095040)==2139095040){break e}l=z[d+4>>2];if((v[d+4>>2]&2139095040)==2139095040){break e}n=z[d+8>>2];if((v[d+8>>2]&2139095040)==2139095040){break e}i=z[d+12>>2];if((v[d+12>>2]&2139095040)==2139095040){break e}o=z[d+16>>2];if((v[d+16>>2]&2139095040)==2139095040){break e}k=z[d+20>>2];if((v[d+20>>2]&2139095040)==2139095040){break e}if(!(!(!(i>=m)|!(l<=o))&k>=n)){if(m!=C(85070586659632215e21)|l!=C(85070586659632215e21)|(n!=C(85070586659632215e21)|i!=C(-85070586659632215e21))){break e}if(o!=C(-85070586659632215e21)|k!=C(-85070586659632215e21)){break e}}if((b|0)!=(c|0)){d=(c<<3)+e|0;p=v[d>>2];e=v[q+4>>2];v[d>>2]=v[q>>2];v[d+4>>2]=e;e=v[a+200>>2];v[f+e>>2]=p;f=v[a+196>>2];d=f+B(c,24)|0;f=f+B(b,24)|0;z[d>>2]=z[f>>2];z[d+4>>2]=z[f+4>>2];z[d+8>>2]=z[f+8>>2];z[d+12>>2]=z[f+12>>2];z[d+16>>2]=z[f+16>>2];z[d+20>>2]=z[f+20>>2]}v[h+(b<<2)>>2]=c;c=c+1|0;break d}KB(p,1);e=v[a+200>>2];v[(f+e|0)+4>>2]=0}v[h+(v[a+204>>2]<<2)>>2]=b;b=b+1|0;if(b>>>0>2]){continue}break}}v[a+204>>2]=j;f:{if(j){v[g+4>>2]=j;v[g+12>>2]=0;b=v[a+196>>2];v[g>>2]=4;v[g+8>>2]=b;MB(v[a+168>>2],g);jD(a+172|0,v[a+204>>2],v[a+168>>2]);v[g+8>>2]=0;v[g>>2]=0;v[g+4>>2]=0;b=v[g+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}if(!v[a+144>>2]){break f}c=0;d=v[a+140>>2];b=v[d>>2];if((b|0)==-1){e=v[a+148>>2];while(1){c=c+1|0;if((e|0)==(c|0)){break f}b=v[d+(c<<2)>>2];if((b|0)==-1){continue}break}}d=v[a+148>>2];e=v[a+136>>2];j=v[a+132>>2];while(1){f=j+B(b,20)|0;v[f+16>>2]=v[h+(v[f+16>>2]<<2)>>2];b=v[e+(b<<2)>>2];if((b|0)!=-1){continue}f=v[a+140>>2];while(1){c=c+1|0;if((d|0)==(c|0)){break f}b=v[f+(c<<2)>>2];if((b|0)==-1){continue}break}continue}}KB(v[a+168>>2],1)}if(!h){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,h)}t[a+212|0]=0}xa=g+16|0}function Ed(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0;h=xa+-64|0;xa=h;z[h+32>>2]=z[d>>2];z[h+36>>2]=z[d+4>>2];z[h+40>>2]=z[d+8>>2];z[h+44>>2]=z[d+12>>2];z[h+48>>2]=z[c>>2];z[h+52>>2]=z[c+4>>2];z[h+56>>2]=z[c+8>>2];z[h>>2]=z[g>>2];z[h+4>>2]=z[g+4>>2];z[h+8>>2]=z[g+8>>2];z[h+12>>2]=z[g+12>>2];z[h+16>>2]=z[f>>2];z[h+20>>2]=z[f+4>>2];z[h+24>>2]=z[f+8>>2];g=xa-16|0;xa=g;c=v[37696];d=c+12|0;c=(F=d,G=84,H=Ba[v[v[c>>2]+20>>2]](c)|0?28263:63804,I=6736,J=45,E=v[v[d>>2]+8>>2],Ba[E](F|0,G|0,H|0,I|0,J|0)|0);Ba[v[v[a>>2]+20>>2]](a)|0;u[g+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[g+8>>1];u[c+4>>1]=259;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=147240;v[c>>2]=147056;v[c+8>>2]=0;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,96,24422,17141,454)|0;k=z[h+44>>2];l=z[h+40>>2];m=z[h+32>>2];i=z[h+36>>2];r=v[h+52>>2];s=v[h+48>>2];z[c+44>>2]=z[h+56>>2];v[c+36>>2]=s;v[c+40>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+24>>2]=j*i;z[c+28>>2]=l*i;z[c+32>>2]=k*i;z[c+20>>2]=m*i;k=z[h+12>>2];l=z[h+8>>2];m=z[h>>2];i=z[h+4>>2];r=v[h+20>>2];s=v[h+16>>2];z[c+72>>2]=z[h+24>>2];D=c- -64|0;v[D>>2]=s;v[D+4>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+52>>2]=j*i;z[c+56>>2]=l*i;z[c+60>>2]=k*i;z[c+48>>2]=m*i;Y4(f,b);q=z[h+52>>2];t=z[h+56>>2];w=z[h+48>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+40>>2];m=z[f+4>>2];n=z[h+36>>2];k=z[f+12>>2];o=z[h+44>>2];i=z[f>>2];p=z[h+32>>2];z[d+28>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+24>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+20>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+40>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+32>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);Y4(f,e);q=z[h+20>>2];t=z[h+24>>2];w=z[h+16>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+8>>2];m=z[f+4>>2];n=z[h+4>>2];k=z[f+12>>2];o=z[h+12>>2];i=z[f>>2];p=z[h>>2];z[d+56>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+52>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+48>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+68>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+60>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;v[c+12>>2]=146952;v[c>>2]=146760;d=v[c+80>>2];v[d+80>>2]=1343554297;v[d+84>>2]=1078530011;a=Ba[v[v[a>>2]+108>>2]](a,b,e,c+12|0,146736,96)|0;v[c+76>>2]=a;if(!a){Ba[v[v[c>>2]+16>>2]](c);c=0}xa=g+16|0;xa=h- -64|0;return c|0}function sA(a,b){var c=0,d=0,e=0,f=C(0),g=0,h=0,i=0,j=0;c=xa-224|0;xa=c;d=v[a>>2];a:{if((d|0)==v[a+4>>2]){Ba[v[v[d>>2]+152>>2]](d,x[a+8>>1],x[a+10>>1],c+128|0,c+96|0);d=v[c+140>>2];v[c+216>>2]=v[c+136>>2];v[c+220>>2]=d;d=v[c+132>>2];v[c+208>>2]=v[c+128>>2];v[c+212>>2]=d;d=v[c+148>>2];v[c+192>>2]=v[c+144>>2];v[c+196>>2]=d;d=v[c+156>>2];v[c+200>>2]=v[c+152>>2];v[c+204>>2]=d;d=v[c+100>>2];v[c+176>>2]=v[c+96>>2];v[c+180>>2]=d;d=v[c+108>>2];v[c+184>>2]=v[c+104>>2];v[c+188>>2]=d;d=v[c+116>>2];v[c+160>>2]=v[c+112>>2];v[c+164>>2]=d;d=v[c+124>>2];v[c+168>>2]=v[c+120>>2];v[c+172>>2]=d;break a}e=x[a+8>>1];b:{if((e|0)==65535){e=v[d+4>>2];g=v[d>>2];f=z[d+8>>2];v[c+220>>2]=0;z[c+216>>2]=f;v[c+208>>2]=g;v[c+212>>2]=e;f=z[d+24>>2];e=v[d+20>>2];d=v[d+16>>2];v[c+204>>2]=0;z[c+200>>2]=f;v[c+192>>2]=d;v[c+196>>2]=e;break b}Ba[v[v[d>>2]+156>>2]](c+128|0,d,e);d=v[c+140>>2];v[c+216>>2]=v[c+136>>2];v[c+220>>2]=d;d=v[c+132>>2];v[c+208>>2]=v[c+128>>2];v[c+212>>2]=d;d=v[c+148>>2];v[c+192>>2]=v[c+144>>2];v[c+196>>2]=d;d=v[c+156>>2];v[c+200>>2]=v[c+152>>2];v[c+204>>2]=d}d=x[a+10>>1];if((d|0)==65535){d=v[a+4>>2];e=v[d+4>>2];g=v[d>>2];f=z[d+8>>2];v[c+188>>2]=0;z[c+184>>2]=f;v[c+176>>2]=g;v[c+180>>2]=e;f=z[d+24>>2];e=v[d+20>>2];d=v[d+16>>2];v[c+172>>2]=0;z[c+168>>2]=f;v[c+160>>2]=d;v[c+164>>2]=e;break a}e=v[a+4>>2];Ba[v[v[e>>2]+156>>2]](c+128|0,e,d);d=v[c+140>>2];v[c+184>>2]=v[c+136>>2];v[c+188>>2]=d;d=v[c+132>>2];v[c+176>>2]=v[c+128>>2];v[c+180>>2]=d;d=v[c+148>>2];v[c+160>>2]=v[c+144>>2];v[c+164>>2]=d;d=v[c+156>>2];v[c+168>>2]=v[c+152>>2];v[c+172>>2]=d}v[c+136>>2]=0;v[c+140>>2]=0;v[c+128>>2]=0;v[c+132>>2]=0;v[c+104>>2]=0;v[c+108>>2]=0;v[c+96>>2]=0;v[c+100>>2]=0;v[c+88>>2]=0;v[c+92>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;v[c+72>>2]=0;v[c+76>>2]=0;v[c+64>>2]=0;v[c+68>>2]=0;rA(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=x[a+8>>1];d=v[a>>2];c:{if((d|0)==v[a+4>>2]){Ba[v[v[d>>2]+132>>2]](d,e,c+128|0,c+80|0,x[a+10>>1],c+96|0,c- -64|0,v[b+32>>2],v[b+36>>2]);break c}d:{if((e|0)==65535){e=v[c+212>>2];g=v[c+208>>2];z[d+8>>2]=z[c+216>>2];v[d>>2]=g;v[d+4>>2]=e;f=z[c+200>>2];e=v[c+196>>2];d=v[a>>2];v[d+16>>2]=v[c+192>>2];v[d+20>>2]=e;z[d+24>>2]=f;break d}g=v[b+36>>2];h=v[b+32>>2];j=v[v[d>>2]+128>>2];i=v[c+140>>2];v[c+56>>2]=v[c+136>>2];v[c+60>>2]=i;i=v[c+132>>2];v[c+48>>2]=v[c+128>>2];v[c+52>>2]=i;i=v[c+84>>2];v[c+32>>2]=v[c+80>>2];v[c+36>>2]=i;i=v[c+92>>2];v[c+40>>2]=v[c+88>>2];v[c+44>>2]=i;Ba[j|0](d,e,c+48|0,c+32|0,h,g)}d=x[a+10>>1];if((d|0)==65535){d=v[c+180>>2];e=v[c+176>>2];b=v[a+4>>2];z[b+8>>2]=z[c+184>>2];v[b>>2]=e;v[b+4>>2]=d;f=z[c+168>>2];b=v[c+164>>2];a=v[a+4>>2];v[a+16>>2]=v[c+160>>2];v[a+20>>2]=b;z[a+24>>2]=f;break c}e=v[b+36>>2];b=v[b+32>>2];a=v[a+4>>2];g=v[v[a>>2]+128>>2];h=v[c+108>>2];v[c+24>>2]=v[c+104>>2];v[c+28>>2]=h;h=v[c+100>>2];v[c+16>>2]=v[c+96>>2];v[c+20>>2]=h;h=v[c+68>>2];v[c>>2]=v[c+64>>2];v[c+4>>2]=h;h=v[c+76>>2];v[c+8>>2]=v[c+72>>2];v[c+12>>2]=h;Ba[g|0](a,d,c+16|0,c,b,e)}xa=c+224|0}function pB(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0);a=v[a+24>>2];if(w[a+1|0]){y=z[k+8>>2];q=z[a+56>>2];A=z[k>>2];s=z[a+48>>2];t=z[a+52>>2];B=z[k+4>>2];D=C(C(y*q)+C(C(A*s)+C(t*B)));u=z[k+12>>2];E=C(C(u*u)+C(-.5));x=C(C(y*D)+C(C(u*C(C(A*t)-C(s*B)))+C(q*E)));Y=C(C(C(x+x)+z[g+8>>2])-q);x=C(C(B*D)+C(C(u*C(C(y*s)-C(q*A)))+C(t*E)));Z=C(C(z[g+4>>2]+C(x+x))-t);q=C(C(A*D)+C(C(u*C(C(B*q)-C(t*y)))+C(s*E)));_=C(C(z[g>>2]+C(q+q))-s);y=z[j+8>>2];q=z[a+40>>2];A=z[j>>2];s=z[a+32>>2];t=z[a+36>>2];B=z[j+4>>2];D=C(C(y*q)+C(C(A*s)+C(t*B)));u=z[j+12>>2];E=C(C(u*u)+C(-.5));x=C(C(y*D)+C(C(u*C(C(A*t)-C(s*B)))+C(q*E)));$=C(C(C(x+x)+z[f+8>>2])-q);x=C(C(B*D)+C(C(u*C(C(y*s)-C(q*A)))+C(t*E)));aa=C(C(C(x+x)+z[f+4>>2])-t);q=C(C(A*D)+C(C(u*C(C(B*q)-C(t*y)))+C(s*E)));ba=C(C(z[f>>2]+C(q+q))-s);k=a+176|0;j=0;s=C(0);t=C(0);u=C(0);y=C(0);A=C(0);B=C(0);D=C(0);E=C(0);x=C(0);while(1){q=z[k+80>>2];H=z[k+8>>2];I=z[k>>2];J=z[k+4>>2];K=z[k+24>>2];L=z[k+16>>2];M=z[k+20>>2];N=z[k+40>>2];O=z[k+32>>2];P=z[k+36>>2];Q=z[k+56>>2];R=z[k+48>>2];S=z[k+52>>2];F=z[k+64>>2];r=C(z[k+28>>2]*C(C(C(C(C(C($*H)+C(C(ba*I)+C(aa*J)))-C(C(Y*K)+C(C(_*L)+C(Z*M))))+z[k+12>>2])+C(z[k+92>>2]*C(C(C(N*z[h+8>>2])+C(C(O*z[h>>2])+C(P*z[h+4>>2])))-C(C(Q*z[i+8>>2])+C(C(R*z[i>>2])+C(S*z[i+4>>2]))))))-C(F*l)));r=q>2];T=z[k+76>>2];U=z[k+88>>2];q=v[k+84>>2]&64?C(-34028234663852886e22):C(-q);q=C(C(z[k+60>>2]*T)+C(C(U*C(F+(q>2])*C(C(C(C(C(I*z[b>>2])+C(O*z[d>>2]))-C(C(L*z[c>>2])+C(R*z[e>>2])))+C(C(C(J*z[b+4>>2])+C(P*z[d+4>>2]))-C(C(M*z[c+4>>2])+C(S*z[e+4>>2]))))+C(C(C(H*z[b+8>>2])+C(N*z[d+8>>2]))-C(C(K*z[c+8>>2])+C(Q*z[e+8>>2])))))));q=q>2];q=q>2]=q;r=z[k+104>>2];F=z[k+100>>2];G=z[k+96>>2];v[b+12>>2]=0;q=C(q-T);z[b+4>>2]=z[b+4>>2]+C(F*q);z[b+8>>2]=z[b+8>>2]+C(r*q);z[b>>2]=z[b>>2]+C(G*q);r=z[k+112>>2];F=z[k+116>>2];G=z[k+120>>2];v[d+12>>2]=0;z[d+8>>2]=C(q*G)+z[d+8>>2];z[d+4>>2]=C(q*F)+z[d+4>>2];z[d>>2]=C(r*q)+z[d>>2];r=z[k+132>>2];F=z[k+136>>2];G=z[k+128>>2];v[c+12>>2]=0;z[c+8>>2]=C(q*F)+z[c+8>>2];z[c+4>>2]=C(q*r)+z[c+4>>2];z[c>>2]=C(q*G)+z[c>>2];r=z[k+144>>2];F=z[k+148>>2];G=z[k+152>>2];v[e+12>>2]=0;z[e+8>>2]=C(q*G)+z[e+8>>2];z[e+4>>2]=C(q*F)+z[e+4>>2];z[e>>2]=C(q*r)+z[e>>2];x=C(x+C(Q*q));E=C(E+C(S*q));D=C(D+C(R*q));u=C(u+C(K*q));t=C(t+C(M*q));s=C(s+C(L*q));B=C(B+C(N*q));A=C(A+C(P*q));y=C(y+C(O*q));V=C(V+C(H*q));W=C(W+C(J*q));X=C(X+C(I*q));k=k+160|0;j=j+1|0;if(j>>>0>2];v[m+12>>2]=0;z[m+8>>2]=V*l;z[m+4>>2]=W*l;z[m>>2]=X*l;l=z[a+64>>2];v[n+12>>2]=0;z[n+8>>2]=u*l;z[n+4>>2]=t*l;z[n>>2]=s*l;l=z[a+60>>2];v[o+12>>2]=0;z[o+8>>2]=B*l;z[o+4>>2]=A*l;z[o>>2]=y*l;l=z[a+68>>2];v[p+12>>2]=0;z[p+8>>2]=x*l;z[p+4>>2]=E*l;z[p>>2]=D*l}function e2(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=0,E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0);q=z[a+56>>2];r=z[a+52>>2];s=z[a+48>>2];o=v[c+40>>2];K=z[o>>2];O=z[h>>2];k=C(-O);L=z[o+16>>2];I=z[h+4>>2];M=z[o+32>>2];J=z[h+8>>2];P=C(C(C(K*k)-C(L*I))-C(M*J));N=z[o+8>>2];u=z[o+24>>2];w=z[o+40>>2];Q=C(C(C(N*k)-C(u*I))-C(w*J));x=z[o+4>>2];y=z[o+20>>2];n=z[o+36>>2];R=C(C(C(x*k)-C(y*I))-C(n*J));S=C(z[a+80>>2]+z[g>>2]);A=v[b+16>>2];a:{b:{if(!A){k=C(0);break b}E=C(C(w*q)+C(C(N*s)+C(u*r)));F=C(C(n*q)+C(C(x*s)+C(y*r)));G=C(C(M*q)+C(C(K*s)+C(L*r)));o=v[b+24>>2];j=C(1);H=1;k=C(0);c:{while(1){d:{g=o+B(p,20)|0;t=z[g+8>>2];l=z[g>>2];i=z[g+4>>2];m=C(z[g+12>>2]+C(C(t*E)+C(C(l*G)+C(F*i))));i=C(C(t*Q)+C(C(l*P)+C(R*i)));e:{if(C(D(i))C(0))){break e}break d}l=C(C(-m)/i);g=il?l:j;k=g?k>>0>p>>>0;if((p|0)!=(A|0)){continue}break c}break}k=C(0)}if(H){break a}}if(!(k<=S)){break a}u=z[d+20>>2];w=z[d+24>>2];x=z[d+36>>2];y=z[d+52>>2];t=z[d+40>>2];m=z[d+56>>2];E=z[d+8>>2];F=z[d+4>>2];G=z[d>>2];l=z[d+16>>2];i=z[d+32>>2];j=z[d+48>>2];g=B(v[f>>2],48)+e|0;v[g+12>>2]=0;m=C(q-m);n=i;i=C(s-j);j=C(r-y);z[g+8>>2]=C(t*m)+C(C(n*i)+C(x*j));z[g+4>>2]=C(w*m)+C(C(l*i)+C(j*u));z[g>>2]=C(E*m)+C(C(G*i)+C(j*F));i=z[a+52>>2];j=z[a+56>>2];g=B(v[f>>2],48)+e|0;z[g+16>>2]=z[a+48>>2]-C(O*k);v[g+28>>2]=0;z[g+24>>2]=j-C(J*k);z[g+20>>2]=i-C(I*k);j=z[h+8>>2];H=v[h+4>>2];o=v[h>>2];g=v[f>>2];v[f>>2]=g+1;g=B(g,48)+e|0;v[g+32>>2]=o;v[g+36>>2]=H;z[g+44>>2]=k;z[g+40>>2]=j;c=v[c+40>>2];w=z[c+40>>2];u=z[c+24>>2];n=z[c+36>>2];y=z[c+20>>2];A=v[b+16>>2];N=z[c+8>>2];x=z[c+4>>2];M=z[c+32>>2];L=z[c+16>>2];K=z[c>>2]}q=z[a+64>>2];r=z[a+68>>2];s=z[a+72>>2];f:{g:{if(!A){j=C(0);break g}E=C(C(w*s)+C(C(N*q)+C(r*u)));F=C(C(n*s)+C(C(x*q)+C(r*y)));G=C(C(M*s)+C(C(K*q)+C(r*L)));c=v[b+24>>2];n=C(1);p=0;H=1;j=C(0);h:{while(1){i:{b=c+B(p,20)|0;t=z[b+8>>2];l=z[b>>2];i=z[b+4>>2];m=C(z[b+12>>2]+C(C(t*E)+C(C(l*G)+C(F*i))));i=C(C(t*Q)+C(C(l*P)+C(R*i)));j:{if(C(D(i))C(0))){break j}break i}l=C(C(-m)/i);b=in){break i}p=p+1|0;H=A>>>0>p>>>0;if((p|0)!=(A|0)){continue}break h}break}j=k}if(H){break f}}if(!(j<=S)){break f}u=z[d+20>>2];w=z[d+24>>2];x=z[d+36>>2];y=z[d+52>>2];t=z[d+40>>2];m=z[d+56>>2];E=z[d+8>>2];F=z[d+4>>2];G=z[d>>2];l=z[d+16>>2];i=z[d+32>>2];k=z[d+48>>2];b=B(v[f>>2],48)+e|0;v[b+12>>2]=0;m=C(s-m);n=i;i=C(q-k);k=C(r-y);z[b+8>>2]=C(t*m)+C(C(n*i)+C(x*k));z[b+4>>2]=C(w*m)+C(C(l*i)+C(k*u));z[b>>2]=C(E*m)+C(C(G*i)+C(k*F));i=z[a+68>>2];k=z[a+72>>2];b=B(v[f>>2],48)+e|0;z[b+16>>2]=z[a+64>>2]-C(O*j);v[b+28>>2]=0;z[b+24>>2]=k-C(J*j);z[b+20>>2]=i-C(I*j);k=z[h+8>>2];c=v[h+4>>2];b=v[h>>2];a=v[f>>2];v[f>>2]=a+1;a=B(a,48)+e|0;v[a+32>>2]=b;v[a+36>>2]=c;z[a+44>>2]=j;z[a+40>>2]=k}}function mB(a,b,c){var d=C(0),e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=C(0),ha=C(0),ia=0,ja=0,ka=0,la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0);f=v[a+4>>2];p=z[f+24>>2];q=z[f+20>>2];g=v[a>>2];r=z[g+24>>2];s=z[g+20>>2];t=z[f+16>>2];u=z[g+16>>2];y=z[f+8>>2];A=z[f+4>>2];E=z[f>>2];G=z[g+8>>2];H=z[g+4>>2];I=z[g>>2];e=x[a+22>>1];if(e){Y=C(z[g+56>>2]-z[f+56>>2]);Z=C(z[g+52>>2]-z[f+52>>2]);h=v[a+24>>2];ja=h+(e<<4)|0;_=C(z[g+48>>2]-z[f+48>>2]);$=z[f+40>>2];aa=z[f+36>>2];ba=z[g+40>>2];ca=z[g+36>>2];da=z[f+32>>2];ea=z[g+32>>2];while(1){a=h;N=a+80|0;e=w[a+2|0];U=N+B(e,48)|0;fa=U+((e<<2)+12&2032)|0;W=w[a+3|0];ka=W<<6;O=z[a+48>>2];P=z[a+12>>2];ga=z[a+8>>2];ha=z[a+4>>2];a:{if(!e){i=C(0);break a}j=z[a+40>>2];k=z[a+32>>2];n=z[a+36>>2];X=C(C(Y*j)+C(C(_*k)+C(Z*n)));V=C(O*k);J=C(P*k);la=C(O*j);ma=C(O*n);na=C(P*j);oa=C(P*n);Q=C(-z[a+44>>2]);m=0;i=C(0);while(1){h=N+B(m,48)|0;d=z[h+32>>2];ia=(m<<2)+U|0;l=z[ia>>2];R=C(-l);pa=d;K=z[h+8>>2];L=z[h>>2];M=z[h+4>>2];o=z[h+24>>2];T=z[h+16>>2];S=z[h+20>>2];d=C(z[h+12>>2]+C(C(X+C(C(C(ba*K)+C(C(ea*L)+C(ca*M)))-C(C($*o)+C(C(da*T)+C(aa*S)))))-C(d*c)));d=C(z[h+36>>2]*(b>d?b:d));d=C(z[h+28>>2]*C(C(pa+(dR?d:R)),C(34028234663852886e22)));z[ia>>2]=d;i=C(i+d);d=C(d-l);y=C(y-C(la*d));A=C(A-C(ma*d));E=C(E-C(V*d));G=C(G+C(na*d));H=C(H+C(oa*d));I=C(I+C(J*d));l=C(ga*d);p=C(p-C(o*l));q=C(q-C(S*l));t=C(t-C(T*l));d=C(ha*d);r=C(r+C(K*d));s=C(s+C(M*d));u=C(u+C(L*d));m=m+1|0;if((e|0)!=(m|0)){continue}break}}h=fa+ka|0;if(W){T=C(i*z[a+16>>2]);S=C(i*z[a+20>>2]);X=C(-S);m=0;N=0;while(1){e=(m<<6)+fa|0;n=z[e+56>>2];o=C(n*X);V=z[e+52>>2];d=z[e+44>>2];i=z[e+8>>2];j=z[e>>2];k=z[e+4>>2];Q=z[e+24>>2];l=z[e+16>>2];R=z[e+20>>2];K=z[e+40>>2];L=z[e+32>>2];M=z[e+36>>2];J=z[e+28>>2];d=C(C(V-C(d*C(C(z[e+48>>2]*C(z[e+12>>2]+C(C(C(C(i*Y)+C(C(j*_)+C(Z*k)))+C(C(C(Q*ba)+C(C(l*ea)+C(ca*R)))-C(C(K*$)+C(C(L*da)+C(aa*M)))))-C(J*c))))-J)))-C(d*C(C(C(C(C(I*j)+C(u*l))-C(C(E*j)+C(t*L)))+C(C(C(H*k)+C(s*R))-C(C(A*k)+C(q*M))))+C(C(C(G*i)+C(r*Q))-C(C(y*i)+C(p*K))))));o=dC(T*n);d=e?o>2]=d;d=C(d-V);y=C(y-C(C(O*i)*d));A=C(A-C(C(O*k)*d));E=C(E-C(C(O*j)*d));G=C(G+C(C(P*i)*d));H=C(H+C(C(P*k)*d));I=C(I+C(C(P*j)*d));i=C(ga*d);p=C(p-C(K*i));q=C(q-C(M*i));t=C(t-C(L*i));d=C(ha*d);r=C(r+C(Q*d));s=C(s+C(R*d));u=C(u+C(l*d));N=0-(e|(N|0)!=0)|0;m=m+1|0;if((W|0)!=(m|0)){continue}break}v[a+56>>2]=N}if(h>>>0>>0){continue}break}}z[g+8>>2]=G;z[g+4>>2]=H;z[g>>2]=I;z[f+8>>2]=y;z[f+4>>2]=A;z[f>>2]=E;z[g+24>>2]=r;z[g+20>>2]=s;z[g+16>>2]=u;z[f+24>>2]=p;z[f+20>>2]=q;z[f+16>>2]=t}function Iv(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0);h=z[c+20>>2];i=z[c+24>>2];e=z[c+36>>2];q=z[c+40>>2];r=z[c+56>>2];s=z[c+48>>2];t=z[c+52>>2];R=z[b+20>>2];S=z[b+36>>2];T=z[b+24>>2];U=z[b+40>>2];j=z[b+52>>2];k=z[b+56>>2];B=z[b+112>>2];V=z[b+128>>2];l=z[b- -64>>2];D=z[b+68>>2];E=z[b+72>>2];F=z[b+132>>2];W=z[b+100>>2];X=z[b+116>>2];G=z[b+80>>2];H=z[b+84>>2];f=z[c+68>>2];I=z[b+88>>2];g=z[c+72>>2];J=z[b+136>>2];w=z[c+88>>2];Y=z[b+104>>2];x=z[c+80>>2];Z=z[b+120>>2];y=z[c+84>>2];m=z[c+8>>2];n=z[c>>2];o=z[c+4>>2];p=z[c+16>>2];u=z[c+32>>2];_=z[b+32>>2];$=z[b+16>>2];aa=z[b>>2];ba=z[b+4>>2];ca=z[b+8>>2];K=z[b+48>>2];da=z[b+96>>2];A=z[c+64>>2];v[d+92>>2]=0;v[d+76>>2]=0;v[d+60>>2]=0;v[d+44>>2]=0;v[d+28>>2]=0;v[d+12>>2]=0;L=C(C(C(I*g)+C(C(G*A)+C(f*H)))+C(C(J*w)+C(C(Y*x)+C(y*Z))));z[d+88>>2]=L;M=C(C(C(E*g)+C(C(l*A)+C(f*D)))+C(C(F*w)+C(C(W*x)+C(y*X))));z[d+84>>2]=M;N=C(C(C(k*g)+C(C(K*A)+C(f*j)))+C(C(V*w)+C(C(da*x)+C(y*B))));z[d+80>>2]=N;O=C(C(C(U*g)+C(C(ca*A)+C(f*T)))+C(C(I*w)+C(C(k*x)+C(y*E))));z[d+72>>2]=O;P=C(C(C(S*g)+C(C(ba*A)+C(f*R)))+C(C(H*w)+C(C(j*x)+C(y*D))));z[d+68>>2]=P;Q=C(C(C(_*g)+C(C(aa*A)+C(f*$)))+C(C(G*w)+C(C(K*x)+C(y*l))));z[d+64>>2]=Q;ea=C(C(C(I*q)+C(C(G*u)+C(e*H)))+C(C(J*r)+C(C(Y*s)+C(t*Z))));z[d+56>>2]=ea;fa=C(C(C(E*q)+C(C(l*u)+C(e*D)))+C(C(F*r)+C(C(W*s)+C(t*X))));z[d+52>>2]=fa;ga=C(C(C(k*q)+C(C(K*u)+C(e*j)))+C(C(V*r)+C(C(da*s)+C(t*B))));z[d+48>>2]=ga;ha=C(C(C(U*q)+C(C(ca*u)+C(e*T)))+C(C(I*r)+C(C(k*s)+C(t*E))));z[d+40>>2]=ha;ia=C(C(C(S*q)+C(C(ba*u)+C(e*R)))+C(C(H*r)+C(C(j*s)+C(t*D))));z[d+36>>2]=ia;ja=C(C(C(_*q)+C(C(aa*u)+C(e*$)))+C(C(G*r)+C(C(K*s)+C(t*l))));z[d+32>>2]=ja;J=C(C(C(I*m)+C(C(G*n)+C(o*H)))+C(C(J*i)+C(C(Y*p)+C(h*Z))));z[d+24>>2]=J;F=C(C(C(E*m)+C(C(l*n)+C(o*D)))+C(C(F*i)+C(C(W*p)+C(h*X))));z[d+20>>2]=F;B=C(C(C(k*m)+C(C(K*n)+C(o*j)))+C(C(V*i)+C(C(da*p)+C(h*B))));z[d+16>>2]=B;k=C(C(C(U*m)+C(C(ca*n)+C(o*T)))+C(C(I*i)+C(C(k*p)+C(h*E))));z[d+8>>2]=k;j=C(C(C(S*m)+C(C(ba*n)+C(o*R)))+C(C(H*i)+C(C(j*p)+C(h*D))));z[d+4>>2]=j;l=C(C(C(_*m)+C(C(aa*n)+C(o*$)))+C(C(G*i)+C(C(K*p)+C(h*l))));z[d>>2]=l;v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;z[a+40>>2]=C(C(g*O)+C(C(A*Q)+C(f*P)))+C(C(w*L)+C(C(x*N)+C(y*M)));f=C(C(C(q*O)+C(C(u*Q)+C(e*P)))+C(C(r*L)+C(C(s*N)+C(t*M))));z[a+36>>2]=f;g=C(C(C(m*O)+C(C(n*Q)+C(o*P)))+C(C(i*L)+C(C(p*N)+C(h*M))));z[a+32>>2]=g;z[a+24>>2]=f;z[a+20>>2]=C(C(q*ha)+C(C(u*ja)+C(e*ia)))+C(C(r*ea)+C(C(s*ga)+C(t*fa)));e=C(C(C(m*ha)+C(C(n*ja)+C(o*ia)))+C(C(i*ea)+C(C(p*ga)+C(h*fa))));z[a+16>>2]=e;z[a+8>>2]=g;z[a+4>>2]=e;z[a>>2]=C(C(m*k)+C(C(n*l)+C(o*j)))+C(C(i*J)+C(C(p*B)+C(h*F)))}function lJ(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=xa-48|0;xa=h;VH(b+4|0,e);if(w[b+25|0]&16){e=v[b+36>>2];mJ(v[a>>2],v[b+28>>2],v[b+32>>2],e,c&1);i=v[a+108>>2];v[v[i>>2]+(e<<2)>>2]=v[i+12>>2];v[i+12>>2]=e}a:{b:{switch(w[b+24|0]){case 1:t[h+44|0]=0;u[h+16>>1]=65535;v[h+8>>2]=-1;v[h+12>>2]=-1;e=w[b+58|0];t[b+58|0]=0;c:{if(!(x[b+56>>1]&((e|0)!=0)<<4)){break c}d=v[b+32>>2];f=v[b+28>>2];v[h+24>>2]=v[37419]+v[f+28>>2];g=v[37419]+v[d+28>>2]|0;t[h+44|0]=c<<2&4;v[h+40>>2]=e<<4;v[h+32>>2]=g;c=v[v[d+4>>2]+44>>2];e=v[v[f+4>>2]+44>>2];v[h+28>>2]=v[((w[e+9|0]<<2)+149664|0)+40>>2]+e;v[h+36>>2]=c+v[((w[c+9|0]<<2)+149664|0)+40>>2];e=w[e+7|0];f=v[f+32>>2];d=v[d+32>>2];t[h+17|0]=w[c+7|0];t[h+16|0]=e;v[h+12>>2]=d;v[h+8>>2]=f;c=v[a>>2];d=v[c+1184>>2];d:{if(d>>>0>=(v[c+1188>>2]&2147483647)>>>0){d=0;e=c+1180|0;c=v[e+8>>2];g=c&2147483647?c<<1:1;e:{if(!g){break e}f=B(g,24);if(!f){break e}c=v[37696];d=c+12|0;d=(l=d,m=f,n=Ba[v[v[c>>2]+20>>2]](c)|0?31271:63804,o=16608,p=553,k=v[v[d>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}c=v[e+4>>2];if((c|0)>0){i=B(c,24)+d|0;f=v[e>>2];c=d;while(1){j=v[f+4>>2];v[c>>2]=v[f>>2];v[c+4>>2]=j;v[c+16>>2]=v[f+16>>2];j=v[f+12>>2];v[c+8>>2]=v[f+8>>2];v[c+12>>2]=j;t[c+20|0]=w[f+20|0];f=f+24|0;c=c+24|0;if(i>>>0>c>>>0){continue}break}c=v[e+4>>2]}f=v[h+28>>2];c=B(c,24)+d|0;v[c>>2]=v[h+24>>2];v[c+4>>2]=f;v[c+16>>2]=v[h+40>>2];f=v[h+36>>2];v[c+8>>2]=v[h+32>>2];v[c+12>>2]=f;t[c+20|0]=w[h+44|0];f:{if(v[e+8>>2]<0){break f}c=v[e>>2];if(!c){break f}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,c)}v[e+8>>2]=g;v[e>>2]=d;v[e+4>>2]=v[e+4>>2]+1;break d}e=v[h+28>>2];d=v[c+1180>>2]+B(d,24)|0;v[d>>2]=v[h+24>>2];v[d+4>>2]=e;v[d+16>>2]=v[h+40>>2];e=v[h+36>>2];v[d+8>>2]=v[h+32>>2];v[d+12>>2]=e;t[d+20|0]=w[h+44|0];v[c+1184>>2]=v[c+1184>>2]+1}g=v[v[a>>2]+1192>>2];c=v[g+4>>2];if(c>>>0>=(v[g+8>>2]&2147483647)>>>0){d=0;c=v[g+8>>2];i=c&2147483647?c<<1:1;g:{if(!i){break g}e=B(i,12);if(!e){break g}c=v[37696];d=c+12|0;d=(p=d,o=e,n=Ba[v[v[c>>2]+20>>2]](c)|0?48101:63804,m=16608,l=553,k=v[v[d>>2]+8>>2],Ba[k](p|0,o|0,n|0,m|0,l|0)|0)}c=v[g+4>>2];if((c|0)>0){c=B(c,12)+d|0;f=v[g>>2];e=d;while(1){j=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=j;v[e+8>>2]=v[f+8>>2];f=f+12|0;e=e+12|0;if(c>>>0>e>>>0){continue}break}c=v[g+4>>2]}e=v[h+12>>2];c=B(c,12)+d|0;v[c>>2]=v[h+8>>2];v[c+4>>2]=e;v[c+8>>2]=v[h+16>>2];h:{if(v[g+8>>2]<0){break h}c=v[g>>2];if(!c){break h}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,c)}v[g+8>>2]=i;v[g>>2]=d;v[g+4>>2]=v[g+4>>2]+1;break c}d=v[h+12>>2];c=v[g>>2]+B(c,12)|0;v[c>>2]=v[h+8>>2];v[c+4>>2]=d;v[c+8>>2]=v[h+16>>2];v[g+4>>2]=v[g+4>>2]+1}Ba[v[v[b>>2]>>2]](b)|0;c=a+1268|0;v[c>>2]=v[c>>2]-1;a=a+1276|0;v[b>>2]=v[a>>2];v[a>>2]=b;break a;case 2:Ba[v[v[b>>2]>>2]](b)|0;c=a+1852|0;v[c>>2]=v[c>>2]-1;a=a+1860|0;v[b>>2]=v[a>>2];v[a>>2]=b;break a;case 0:break b;default:break a}}if(c&3){nJ(a,b,c,d,f,g)}Ba[v[v[b>>2]>>2]](b)|0;v[a+976>>2]=v[a+976>>2]-1;v[b>>2]=v[a+984>>2];v[a+984>>2]=b}xa=h+48|0}function xu(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=a+4892|0;e=xa-288|0;xa=e;a:{if(!c){v[b>>2]=a;c=v[b+4>>2];b:{if(!w[a+4785|0]){v[b+4>>2]=c&268435455|-2147483648;yu(a+16|0,b,d);break b}d=c&1073741823;if(c>>>0>=3221225472){v[b+4>>2]=d|-2147483648;if(c&268435456){break b}v[e+16>>2]=b;Og(f,e+16|0);break b}v[b+4>>2]=d|1073741824;v[e+16>>2]=b;c=qh(f,e+16|0,e+12|0);if(w[e+12|0]){break b}v[c>>2]=v[e+16>>2]}if(!w[a+4785|0]){break a}t[e+272|0]=1;v[e+280>>2]=0;v[e+284>>2]=64;v[e+276>>2]=e+16;c=Zo(b,e+12|0);c:{if(!c){break c}d=v[b+4>>2]&-1073741824;b=v[b>>2];a=0;if((c|0)!=1){h=c&-2;while(1){g=a<<2;f=v[g+v[e+12>>2]>>2];j=v[(f+32|0)+4>>2];if((j&251658240)==16777216){v[f+32>>2]=b;v[f+36>>2]=d|j&1073741823}f=v[v[e+12>>2]+(g|4)>>2];g=v[(f+32|0)+4>>2];if((g&251658240)==16777216){v[f+32>>2]=b;v[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=v[v[e+12>>2]+(a<<2)>>2];c=v[(a+32|0)+4>>2];if((c&251658240)!=16777216){break c}v[a+32>>2]=b;v[a+36>>2]=d|c&1073741823}a=v[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a);break a}c=xa-288|0;xa=c;v[b>>2]=a;d=v[b+4>>2];d:{if(!w[a+4785|0]){v[b+4>>2]=d&268435455|-2147483648;t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;d=Zo(b,c+12|0);e:{if(!d){break e}f=v[b>>2];a=0;if((d|0)!=1){g=d&-2;b=0;while(1){j=a<<2;h=v[j+v[c+12>>2]>>2];i=v[h+36>>2];if((i&251658240)==16777216){v[h+32>>2]=f;v[h+36>>2]=i&1073741823|-2147483648}h=v[v[c+12>>2]+(j|4)>>2];j=v[h+36>>2];if((j&251658240)==16777216){v[h+32>>2]=f;v[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=v[v[c+12>>2]+(a<<2)>>2];b=v[a+36>>2];if((b&251658240)!=16777216){break e}v[a+32>>2]=f;v[a+36>>2]=b&1073741823|-2147483648}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break d}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break d}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break d}a=d&1073741823;f:{if(d>>>0>=3221225472){v[b+4>>2]=a|-2147483648;if(d&268435456){break f}v[c+16>>2]=b;Og(f,c+16|0);break f}v[b+4>>2]=a|1073741824;v[c+16>>2]=b;a=qh(f,c+16|0,c+12|0);if(w[c+12|0]){break f}v[a>>2]=v[c+16>>2]}t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;d=Zo(b,c+12|0);g:{if(!d){break g}f=v[b+4>>2]&-1073741824;h=v[b>>2];a=0;if((d|0)!=1){j=d&-2;b=0;while(1){i=a<<2;g=v[i+v[c+12>>2]>>2];k=v[g+36>>2];if((k&251658240)==16777216){v[g+32>>2]=h;v[g+36>>2]=f|k&1073741823}g=v[v[c+12>>2]+(i|4)>>2];i=v[g+36>>2];if((i&251658240)==16777216){v[g+32>>2]=h;v[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=v[v[c+12>>2]+(a<<2)>>2];b=v[a+36>>2];if((b&251658240)!=16777216){break g}v[a+32>>2]=h;v[a+36>>2]=f|b&1073741823}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break d}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break d}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=c+288|0}xa=e+288|0}function vJ(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,z=0,A=0,C=0;i=xa-16|0;xa=i;e=v[b+4>>2];f=v[c+4>>2];g=y[e+48>>2]>y[f+48>>2];k=g?f:e;v[i>>2]=v[k+48>>2];l=g?e:f;v[i+4>>2]=v[l+48>>2];a:{b:{g=a+1916|0;e=v[g+20>>2];c:{if(!e){break c}m=v[i>>2];n=v[i+4>>2];f=m&65535|n<<16;f=(f<<15^-1)+f|0;f=B(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;j=e-1&(f>>>16^f);h=v[v[g+12>>2]+(j<<2)>>2];if((h|0)==-1){break c}o=v[g+8>>2];p=v[g+4>>2];while(1){f=B(h,12)+p|0;if((m|0)==v[f>>2]&v[f+4>>2]==(n|0)){break b}h=v[(h<<2)+o>>2];if((h|0)!=-1){continue}break}}t[i+15|0]=0;if(v[g+36>>2]==v[g+16>>2]){f=e?e<<1:16;if(f>>>0>e>>>0){jI(g,f);e=v[g+20>>2]}f=e-1|0;e=x[i>>1]|v[i+4>>2]<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;j=f&(e>>>16^e)}e=v[g+28>>2];v[g+28>>2]=e+1;f=v[g+12>>2]+(j<<2)|0;v[v[g+8>>2]+(e<<2)>>2]=v[f>>2];v[f>>2]=e;v[g+36>>2]=v[g+36>>2]+1;v[g+32>>2]=v[g+32>>2]+1;f=v[g+4>>2]+B(e,12)|0;break a}t[i+15|0]=1}e=f;d:{e:{f:{g:{if(!w[i+15|0]){f=v[i+4>>2];g=v[i>>2];v[e+8>>2]=0;v[e>>2]=g;v[e+4>>2]=f;j=e+8|0;break g}j=e+8|0;e=v[e+8>>2];if(e){break f}}if(!d){e=v[a+400>>2];if(!e){f=xa-16|0;xa=f;g=a+112|0;c=v[g+284>>2];if(c){b=v[37696];d=b+12|0;e=(r=d,s=c,z=Ba[v[v[b>>2]+20>>2]](b)|0?31157:63804,A=18373,C=180,q=v[v[d>>2]+8>>2],Ba[q](r|0,s|0,z|0,A|0,C|0)|0)}else{e=0}v[f+12>>2]=e;b=v[g+268>>2];h:{if(b>>>0>=(v[g+272>>2]&2147483647)>>>0){b=0;c=g+4|0;d=v[c+268>>2];l=d&2147483647?d<<1:1;i:{if(!l){break i}d=l<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break i}if(!d){break i}b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?31157:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,h,16608,553)|0}h=v[c+264>>2];m=(h<<2)+b|0;if((h|0)>0){k=v[c+260>>2];d=b;while(1){v[d>>2]=v[k>>2];k=k+4|0;d=d+4|0;if(m>>>0>d>>>0){continue}break}}v[m>>2]=v[f+12>>2];j:{if(v[c+268>>2]<0){break j}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break j}if(!d){break j}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,d);h=v[c+264>>2]}v[c+268>>2]=l;v[c+260>>2]=b;v[c+264>>2]=h+1;break h}v[v[g+264>>2]+(b<<2)>>2]=e;v[g+268>>2]=b+1}b=(e+(v[g+276>>2]<<3)|0)-8|0;if(e>>>0<=b>>>0){c=v[g+288>>2];while(1){v[b>>2]=c;c=b;b=c-8|0;if(e>>>0<=b>>>0){continue}break}v[g+288>>2]=c}xa=f+16|0;e=v[a+400>>2]}v[a+400>>2]=v[e>>2];v[a+392>>2]=v[a+392>>2]+1;u[e+4>>1]=0;u[e>>1]=0;u[e+2>>1]=0;break e}f=v[c+4>>2];g=v[b+4>>2];e=v[a+692>>2];if(!e){wJ(a+404|0);e=v[a+692>>2]}v[a+692>>2]=v[e>>2];v[a+684>>2]=v[a+684>>2]+1;v[e+16>>2]=0;v[e+12>>2]=f;v[e+8>>2]=g;u[e+4>>1]=0;v[e>>2]=1;v[j>>2]=e}if(!d|u[e>>1]&1){break d}d=v[k+28>>2];c=v[c+4>>2];f=v[b+4>>2];b=v[k+20>>2];e=v[a+692>>2];if(!e){wJ(a+404|0);e=v[a+692>>2]}v[a+692>>2]=v[e>>2];v[a+684>>2]=v[a+684>>2]+1;v[e+16>>2]=0;v[e+12>>2]=c;v[e+8>>2]=f;u[e+4>>1]=0;v[e>>2]=1;a=v[j>>2];u[e+2>>1]=x[a+2>>1];u[e+4>>1]=x[a+4>>1];if(!d){break e}while(1){d=d-1|0;a=v[b>>2];if(!((l|0)!=v[a>>2]&(l|0)!=v[a+4>>2]|w[a+20|0]|!v[a+44>>2])){v[a+44>>2]=e}b=b+4|0;if(d){continue}break}}v[j>>2]=e}xa=i+16|0;return e}function GM(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),y=C(0),A=0,D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0);if(g){while(1){A=U<<2;l=v[A+a>>2];p=x[l+30>>1];m=C(C(1)-C(z[l+108>>2]*i));n=C(C(1)-C(z[l+104>>2]*i));D=z[l+80>>2];y=z[l+64>>2];F=z[l+100>>2];H=z[l+88>>2];I=z[l+84>>2];r=z[l+72>>2];s=z[l+68>>2];if(!w[l+157|0]){q=z[v[b+A>>2]+76>>2];r=C(r+C(q*C(z[h+8>>2]*i)));s=C(s+C(q*C(z[h+4>>2]*i)));y=C(y+C(q*C(z[h>>2]*i)))}O=z[l+96>>2];o=m>=C(0)?m:C(0);m=C(o*H);q=C(o*I);o=C(o*D);n=n>=C(0)?n:C(0);r=C(n*r);y=C(n*y);s=C(n*s);n=C(C(r*r)+C(C(y*y)+C(s*s)));if(n>F){n=C(K(C(F/n)));r=C(r*n);s=C(s*n);y=C(y*n)}n=C(C(m*m)+C(C(o*o)+C(q*q)));if(n>O){n=C(K(C(O/n)));m=C(m*n);o=C(o*n);q=C(q*n)}E=p>>>8|0;V=E>>>0>V>>>0?E:V;p=p&255;W=p>>>0>W>>>0?p:W;z[l+88>>2]=m;z[l+84>>2]=q;z[l+80>>2]=o;z[l+72>>2]=r;z[l+68>>2]=s;z[l+64>>2]=y;aa=z[l+124>>2];ba=z[l+76>>2];ca=z[l+128>>2];da=v[f+A>>2];ea=z[l+92>>2];N=w[l+158|0];U=U+1|0;p=U<<6;A=p+c|0;E=B(U,48)+e|0;r=z[l>>2];q=C(r+r);m=z[l+8>>2];J=C(q*m);o=z[l+4>>2];s=C(o+o);n=z[l+12>>2];L=C(s*n);y=C(J-L);p=d+p|0;F=C(C(1)-C(r*q));M=C(o*s);r=C(F-M);D=z[l+120>>2];H=D==C(0)?C(0):C(K(D));D=z[l+112>>2];I=D==C(0)?C(0):C(K(D));D=C(s*m);P=C(q*n);s=C(D+P);G=z[l+116>>2];G=G==C(0)?C(0):C(K(G));z[p+60>>2]=C(C(r*H)*r)+C(C(C(y*I)*y)+C(s*C(s*G)));Q=C(q*o);o=C(m+m);R=C(n*o);n=C(Q+R);q=C(n*I);S=C(m*o);F=C(F-S);o=C(F*G);D=C(D-P);T=C(D*H);z[p+44>>2]=C(T*D)+C(C(q*n)+C(F*o));P=C(Q-R);m=C(P*G);Q=C(J+L);J=C(Q*H);R=C(C(C(1)-M)-S);L=C(R*I);z[p+28>>2]=C(J*Q)+C(C(L*R)+C(P*m));M=C(C(J*D)+C(C(L*n)+C(F*m)));z[p+40>>2]=M;z[p+32>>2]=M;m=C(C(J*r)+C(C(L*y)+C(s*m)));z[p+52>>2]=m;z[p+36>>2]=m;m=C(C(T*r)+C(C(q*y)+C(s*o)));z[p+56>>2]=m;z[p+48>>2]=m;z[p+16>>2]=z[l+16>>2];z[p+20>>2]=z[l+20>>2];m=z[l+24>>2];v[p+8>>2]=0;v[p+12>>2]=1065353216;v[p>>2]=0;v[p+4>>2]=0;z[p+24>>2]=m;m=z[l+88>>2];q=z[l+84>>2];o=z[l+80>>2];l=l- -64|0;J=z[l+8>>2];L=z[l+4>>2];M=z[l>>2];if(N){q=N&16?C(0):q;o=N&8?C(0):o;J=N&4?C(0):J;L=N&2?C(0):L;M=N&1?C(0):M;m=N&32?C(0):m}v[A+48>>2]=0;v[A+52>>2]=0;z[A+8>>2]=J;z[A+4>>2]=L;z[A>>2]=M;t[A+62|0]=0;u[A+60>>1]=N;v[A+28>>2]=0;v[A+32>>2]=0;v[A+56>>2]=0;v[A+36>>2]=0;v[A+40>>2]=0;z[A+44>>2]=K(O);H=H==C(0)?C(0):C(C(1)/H);O=C(Q*H);I=I==C(0)?C(0):C(C(1)/I);S=C(R*I);G=G==C(0)?C(0):C(C(1)/G);T=C(P*G);X=C(C(O*r)+C(C(S*y)+C(s*T)));Y=C(D*H);Z=C(n*I);_=C(F*G);$=C(C(Y*r)+C(C(Z*y)+C(s*_)));z[A+24>>2]=C(C(X*o)+C($*q))+C(C(C(C(r*H)*r)+C(C(C(y*I)*y)+C(s*C(s*G))))*m);y=C(C(O*D)+C(C(S*n)+C(F*T)));z[A+20>>2]=C(C(y*o)+C(C(C(Y*D)+C(C(Z*n)+C(F*_)))*q))+C($*m);z[A+16>>2]=C(C(C(C(O*Q)+C(C(S*R)+C(P*T)))*o)+C(y*q))+C(X*m);z[E>>2]=M;z[E+4>>2]=L;z[E+8>>2]=J;z[E+16>>2]=o;z[E+20>>2]=q;z[E+24>>2]=m;z[E+12>>2]=ca;z[E+40>>2]=ea;z[E+28>>2]=ba;z[E+32>>2]=aa;v[E+36>>2]=da;if((g|0)!=(U|0)){continue}break}}v[j>>2]=W;v[k>>2]=V}function WP(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,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;x=v[d>>2];w=v[b>>2];y=a-w|0;m=y;o=(w<<2)+j|0;n=v[f+328>>2];q=m-n|0;p=m>>>0>>0?0:q;j=m-p|0;t=H9(o,v[f+324>>2]+(n-j<<2)|0,j<<2);o=f;r=v[f+328>>2]-j|0;v[f+328>>2]=r;a:{b:{if(m>>>0<=n>>>0){f=j;break b}m=p-1|0;n=v[o+312>>2];f=m+n|0;c:{if(f>>>0>>0){f=j;break c}f=(f>>>0)/(n>>>0)|0;C=f>>>0>1?f:1;while(1){m=B(v[o+312>>2],80);if(!m){break a}f=v[37696];n=f+12|0;u=(E=n,F=m,G=Ba[v[v[f>>2]+20>>2]](f)|0?33299:63804,H=18447,I=135,D=v[v[n>>2]+8>>2],Ba[D](E|0,F|0,G|0,H|0,I|0)|0);if(!u){break a}m=v[o+316>>2];f=m+1|0;n=v[o+312>>2];s=B(f,n);p=v[o+344>>2];d:{if(s>>>0<=p<<5>>>0){p=v[o+332>>2];break d}m=(s<<1)+31>>>5|0;if(m>>>0>(p&2147483647)>>>0){n=v[37696]+12|0;n=Ba[v[v[n>>2]+8>>2]](n,m<<2,24422,17999,438)|0;p=v[o+340>>2];e:{if(!p){break e}H9(n,p,v[o+344>>2]<<2);if(v[o+344>>2]<0){break e}p=v[o+340>>2];if(!p){break e}s=v[37696]+12|0;Ba[v[v[s>>2]+12>>2]](s,p)}p=v[o+344>>2];I9(n+(p<<2)|0,0,m-p<<2);v[o+344>>2]=m;v[o+340>>2]=n}m=v[o+324>>2];if(m){n=v[37696]+12|0;Ba[v[v[n>>2]+12>>2]](n,m)}p=0;m=f<<3;s=B(m,v[o+312>>2]);if(s){n=v[37696];z=n+12|0;n=(I=z,H=s,G=Ba[v[v[n>>2]+20>>2]](n)|0?33299:63804,F=18447,E=147,D=v[v[z>>2]+8>>2],Ba[D](I|0,H|0,G|0,F|0,E|0)|0)}else{n=0}v[o+324>>2]=n;if(m){n=v[37696];p=n+12|0;p=(E=p,F=m,G=Ba[v[v[n>>2]+20>>2]](n)|0?33299:63804,H=18447,I=149,D=v[v[p>>2]+8>>2],Ba[D](E|0,F|0,G|0,H|0,I|0)|0)}m=v[o+332>>2];f:{if(!m){break f}H9(p,m,f<<2);f=v[o+332>>2];if(!f){break f}m=v[37696]+12|0;Ba[v[v[m>>2]+12>>2]](m,f)}v[o+332>>2]=p;m=v[o+316>>2];f=m+1|0;n=v[o+312>>2]}v[o+316>>2]=f;v[(m<<2)+p>>2]=u;p=B(m,n);m=n-1|0;if((q|0)<=(m|0)){while(1){f=tK(B(m,80)+u|0,m+p|0);v[v[o+324>>2]+(r<<2)>>2]=f;r=r+1|0;m=m-1|0;if((q|0)<=(m|0)){continue}break}}f=j;n=q+f|0;if((m|0)>=0){q=(f<<2)+t|0;s=f+1|0;f=m;while(1){j=f;D=q+(f<<2)|0,I=tK(B(f,80)+u|0,f+p|0),v[D>>2]=I;f=f-1|0;if(j){continue}break}f=m+s|0}q=n-f|0;j=f;A=A+1|0;if((A|0)!=(C|0)){continue}break}}v[o+328>>2]=r}g:{if(!f){break g}j=v[o+340>>2];n=0;if((f|0)!=1){m=f&-2;o=0;while(1){q=n<<2;r=v[v[q+t>>2]+48>>2];p=j+(r>>>3&536870908)|0;v[p>>2]=v[p>>2]|1<>2]+48>>2];r=j+(q>>>3&536870908)|0;v[r>>2]=v[r>>2]|1<>2]+48>>2];j=j+(f>>>3&536870908)|0;v[j>>2]=v[j>>2]|1<>2];if(!f){tJ(o);f=v[g+984>>2]}v[g+984>>2]=v[f>>2];v[g+976>>2]=v[g+976>>2]+1;v[(v[b>>2]+j<<2)+k>>2]=f;j=j+1|0;if((y|0)!=(j|0)){continue}break}}if((c|0)!=(x|0)){k=c-x|0;o=g+1572|0;j=0;while(1){f=v[g+1860>>2];if(!f){rJ(o);f=v[g+1860>>2]}v[g+1860>>2]=v[f>>2];v[g+1852>>2]=v[g+1852>>2]+1;v[(v[d>>2]+j<<2)+l>>2]=f;j=j+1|0;if((k|0)!=(j|0)){continue}break}}v[b>>2]=a;v[d>>2]=c;v[h+24>>2]=1;v[h+52>>2]=e;v[h+20>>2]=i;if(i){Ba[v[v[i>>2]+16>>2]](i);v[h+16>>2]=v[v[h+20>>2]+16>>2]}Ba[v[v[h>>2]+20>>2]](h)}function sI(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=xa-16|0;xa=o;if(b){v[a+68>>2]=b;v[a+72>>2]=1;Ba[v[v[b>>2]+16>>2]](b);v[a- -64>>2]=v[v[a+68>>2]+16>>2];v[a+32>>2]=1;e=a+48|0;v[a+28>>2]=e;Ba[v[v[a+48>>2]+16>>2]](e);v[a+24>>2]=v[v[a+28>>2]+16>>2]}v[a+400>>2]=v[a+400>>2]+1;if(v[a+264>>2]?1:v[a+232>>2]|v[a+248>>2]){e=v[a+272>>2];Ba[v[v[e>>2]+48>>2]](e,c)}a:{if(y[a+308>>2]>=(v[a+312>>2]>>>1&1073741823)>>>0){v[a+308>>2]=0;break a}c=a+304|0;tI(c,o);uI(c,v[a+308>>2])}b:{if(y[a+332>>2]>=(v[a+336>>2]>>>1&1073741823)>>>0){v[a+332>>2]=0;break b}c=a+328|0;tI(c,o);uI(c,v[a+332>>2])}c:{if(y[a+320>>2]>=(v[a+324>>2]>>>1&1073741823)>>>0){v[a+320>>2]=0;break c}c=a+316|0;tI(c,o);uI(c,v[a+320>>2])}d:{if(y[a+344>>2]>=(v[a+348>>2]>>>1&1073741823)>>>0){v[a+344>>2]=0;break d}c=a+340|0;tI(c,o);uI(c,v[a+344>>2])}c=v[a+272>>2];j=Ba[v[v[c>>2]+60>>2]](c)|0;c=v[a+272>>2];c=Ba[v[v[c>>2]+64>>2]](c)|0;if(j){i=1073741823;e=1073741823;while(1){j=j-1|0;l=v[c>>2];p=v[c+4>>2];if(!((l|0)==(e|0)&(p|0)==(i|0))){i=xa-16|0;xa=i;g=v[a+196>>2];e=v[c+4>>2];h=g+(e<<3)|0;m=v[h+4>>2];f=v[c>>2];g=g+(f<<3)|0;k=v[g+4>>2];e:{if((m&k)==-1){g=v[g>>2];if(g>>>0<4){break e}h=v[h>>2];if(h>>>0<4){break e}v[i+4>>2]=e;v[i>>2]=f;e=g&3;f=h&3;e=(a+328|0)+B((e|0)>(f|0)?e:f,12)|0;f=v[e+4>>2];if(f>>>0>=(v[e+8>>2]&2147483647)>>>0){rI(e,i);break e}g=v[i+4>>2];f=v[e>>2]+B(f,12)|0;v[f>>2]=v[i>>2];v[f+4>>2]=g;v[f+8>>2]=v[i+8>>2];v[e+4>>2]=v[e+4>>2]+1;break e}g=a+404|0;g=(k|0)==-1?g:(m|0)==-1?g:a+444|0;m=v[g+8>>2];h=e>>>0>>0?e:f;f=e>>>0>f>>>0?e:f;e=h&65535|f<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=v[v[g+12>>2]+((v[g+20>>2]-1&(e>>>16^e))<<2)>>2];g=v[g+4>>2];k=B(e,12)+g|0;if(!(v[k>>2]==(h|0)&(f|0)==v[k+4>>2])){while(1){e=v[m+(e<<2)>>2];k=g+B(e,12)|0;if((h|0)!=v[k>>2]|v[k+4>>2]!=(f|0)){continue}break}}g=v[(g+B(e,12)|0)+8>>2];m=v[g+16>>2];if(m){k=a+328|0;e=0;while(1){n=v[a+196>>2];f=v[g+28>>2]+(e<<3)|0;h=v[f>>2];q=v[n+(h<<3)>>2];f:{if(q>>>0<4){break f}f=v[f+4>>2]&2147483647;n=v[n+(f<<3)>>2];if(n>>>0<4){break f}v[i+4>>2]=f;v[i>>2]=h&2147483647;f=q&3;h=n&3;f=k+B((f|0)>(h|0)?f:h,12)|0;h=v[f+4>>2];if(h>>>0>=(v[f+8>>2]&2147483647)>>>0){rI(f,i);break f}n=v[i+4>>2];h=v[f>>2]+B(h,12)|0;v[h>>2]=v[i>>2];v[h+4>>2]=n;v[h+8>>2]=v[i+8>>2];v[f+4>>2]=v[f+4>>2]+1}e=e+1|0;if((m|0)!=(e|0)){continue}break}}t[g+36|0]=1}xa=i+16|0;i=p;e=l}c=c+8|0;if(j){continue}break}}g:{if(b){c=v[a+392>>2];if(c){e=a+8|0;j=0;while(1){b=vr(d,40);i=v[a+388>>2];l=v[a+556>>2];p=v[a+552>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=p;v[b+12>>2]=l;l=c-j|0;v[b+32>>2]=l>>>0<16?l:16;v[b>>2]=130928;v[b+20>>2]=e;v[b+24>>2]=1;v[b+28>>2]=i+(j<<2);Ba[v[v[a+8>>2]+16>>2]](e);v[b+16>>2]=v[v[b+20>>2]+16>>2];Ba[v[v[b>>2]+20>>2]](b);j=j+16|0;if(c>>>0>j>>>0){continue}break}}v[a+36>>2]=d;b=v[a- -64>>2];Ba[v[v[b>>2]+72>>2]](b,a+48|0);b=v[a+24>>2];Ba[v[v[b>>2]+72>>2]](b,a+8|0);break g}vI(a,0,d);wI(a)}xa=o+16|0}function UF(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=xa-48|0;xa=e;o=v[a+16>>2];m=b>>>7|0;l=o+B(m,24)|0;g=w[l+4|0];a:{if(!(g&4)){break a}d=v[l>>2];if((d|0)!=-1){while(1){i=v[a+84>>2];c=(d>>>0)/(i>>>0)|0;i=v[v[v[a+64>>2]+(c<<2)>>2]+(d-B(c,i)<<3)>>2];f=d^1;h=v[a+448>>2];c=v[h+20>>2];j=(f>>>0)/(c>>>0)|0;h=v[v[v[h>>2]+(j<<2)>>2]+(f-B(c,j)<<2)>>2];g=d>>>1|0;v[e>>2]=g;k=v[a+40>>2];j=v[a+60>>2];c=(g>>>0)/(j>>>0)|0;c=v[k+(c<<2)>>2]+(g-B(c,j)<<4)|0;b:{if(h>>>0>4294967167){break b}n=v[v[a+204>>2]+(h>>>5&134217724)>>2];if((n|0)==-1){break b}h=v[c+12>>2];g=v[a+88>>2];f=v[c+8>>2];c:{if((f|0)!=-1){d=(f>>>0)/(j>>>0)|0;d=(v[k+(d<<2)>>2]+(f-B(d,j)<<4)|0)+12|0;break c}d=((g+B(n,44)|0)+(v[c>>2]<<2)|0)+28|0}v[d>>2]=h;j=v[c+8>>2];f=v[c+12>>2];d:{if((f|0)!=-1){h=v[a+60>>2];d=(f>>>0)/(h>>>0)|0;v[(v[k+(d<<2)>>2]+(f-B(d,h)<<4)|0)+8>>2]=j;d=v[c>>2];break d}d=v[c>>2];v[((g+B(n,44)|0)+(d<<2)|0)+20>>2]=j}d=(g+B(n,44)|0)+(d<<2)|0;v[d+36>>2]=v[d+36>>2]-1;v[c+12>>2]=-1;v[c+8>>2]=-1;g=v[e>>2]}FF(a,g);DF(a,v[e>>2]);d=x[c+4>>1];g=d&65534;u[c+4>>1]=g;if(d&4){u[c+4>>1]=d&65530;LF(a,v[e>>2]);d=(v[c>>2]<<2)+a|0;v[d+172>>2]=v[d+172>>2]-1;g=x[c+4>>1]}e:{f:{if(!(g&2)){if(g&8){break e}f=B(v[c>>2],12)+a|0;h=f+284|0;d=v[f+288>>2];if(d>>>0>=(v[f+292>>2]&2147483647)>>>0){on(h,e);d=x[c+4>>1]|8;break f}v[v[h>>2]+(d<<2)>>2]=v[e>>2];v[f+288>>2]=v[f+288>>2]+1;d=g|8;break f}d=g|32}u[c+4>>1]=d}d=i;if((d|0)!=-1){continue}break}g=w[l+4|0]}g:{if(g&32){break g}f=v[a+28>>2];k=f+(m<<2)|0;if(v[k>>2]==33554431){break g}c=B(m,24);j=c+o|0;h=v[j+16>>2];v[j+16>>2]=0;h:{if(v[(c+v[a+16>>2]|0)+16>>2]){break h}d=v[k>>2];if((d|0)==33554431){break h}i=v[a+136>>2];c=v[(i+(v[a+140>>2]<<2)|0)-4>>2];v[f+(c>>>5&134217724)>>2]=d;v[i+(v[k>>2]<<2)>>2]=c;v[a+140>>2]=v[a+140>>2]-1;v[k>>2]=33554431}v[j+16>>2]=h}t[l+4|0]=g&251;c=v[a+4>>2];i:{if(c){c=c-1|0;d=v[v[a>>2]+(c<<2)>>2];v[a+4>>2]=c;break i}d=v[a+12>>2];v[a+12>>2]=d+1}f=a+88|0;if((v[a+96>>2]&2147483647)==(d|0)){c=d<<1;h=c|1;if(h>>>0>d>>>0){uF(f,h)}k=c+32>>>5|0;if(k>>>0>(v[a+220>>2]&2147483647)>>>0){c=v[37696]+12|0;j=Ba[v[v[c>>2]+8>>2]](c,k<<2,24422,17999,438)|0;c=v[a+216>>2];j:{if(!c){break j}H9(j,c,v[a+220>>2]<<2);if(v[a+220>>2]<0){break j}i=v[a+216>>2];if(!i){break j}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,i)}c=v[a+220>>2];I9(j+(c<<2)|0,0,k-c<<2);v[a+220>>2]=k;v[a+216>>2]=j}v[e>>2]=0;bz(a+100|0,h,e)}i=v[a+216>>2]+(d>>>3&536870908)|0;c=v[i>>2];p=i,q=Uaa(-2,d)&c,v[p>>2]=q;c=v[a+92>>2];v[e+24>>2]=-1;v[e+28>>2]=-1;v[e+32>>2]=-1;v[e+16>>2]=-1;v[e+20>>2]=-1;v[e>>2]=-128;v[e+4>>2]=-128;v[e+36>>2]=0;v[e+40>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;i=d+1|0;vF(f,c>>>0>>0?i:c,e);c=v[a+92>>2];v[e>>2]=0;bz(a+100|0,c>>>0>>0?i:c,e);c=v[a+88>>2]+B(d,44)|0;v[c+4>>2]=b;v[c>>2]=b;v[(c+(w[(B(m,24)+o|0)+5|0]<<2)|0)+8>>2]=1;v[v[a+204>>2]+(m<<2)>>2]=d;v[v[a+100>>2]+(d<<2)>>2]=0;c=w[l+4|0];if(!(c&2)){break a}t[l+4|0]=c&253;wF(a,b)}xa=e+48|0}function C0(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=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=0,A=C(0),B=C(0),E=C(0),F=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0);g=xa-144|0;xa=g;y=w[a+12|0];j=y?e:d;h=z[j+8>>2];i=z[j>>2];k=z[j+4>>2];j=v[a+24>>2];m=z[j+40>>2];n=z[j+28>>2];l=z[j+16>>2];o=z[j+36>>2];q=z[c+8>>2];r=z[j+24>>2];B=z[c>>2];E=z[j>>2];F=z[c+4>>2];H=z[j+12>>2];I=z[j+4>>2];J=z[j+44>>2];L=z[j+8>>2];c=y?d:e;s=z[c>>2];M=z[j+20>>2];N=z[c+4>>2];O=z[j+32>>2];P=z[c+8>>2];R=C(J+C(C(C(L*s)+C(M*N))+C(O*P)));z[g+112>>2]=R;S=C(m+C(C(C(I*s)+C(l*N))+C(n*P)));z[g+108>>2]=S;A=C(J+C(C(C(L*i)+C(M*k))+C(O*h)));z[g+100>>2]=A;p=C(m+C(C(C(I*i)+C(l*k))+C(n*h)));z[g+96>>2]=p;Q=C(o+C(C(C(B*E)+C(F*H))+C(q*r)));z[g+80>>2]=Q;s=C(o+C(C(C(E*s)+C(H*N))+C(r*P)));z[g+104>>2]=s;k=C(o+C(C(C(E*i)+C(H*k))+C(r*h)));z[g+92>>2]=k;i=C(J+C(C(C(B*L)+C(F*M))+C(q*O)));z[g+88>>2]=i;h=C(m+C(C(C(B*I)+C(F*l))+C(q*n)));z[g+84>>2]=h;v[g+56>>2]=0;v[g+60>>2]=0;c=g- -64|0;v[c>>2]=0;v[c+4>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;u[g+44>>1]=0;v[g+40>>2]=-1;v[g+32>>2]=0;v[g+36>>2]=0;v[g+72>>2]=2139095039;m=z[v[a+20>>2]+40>>2];n=C(m+C(C(G(m,C(1)))*C(.0010000000474974513)));d=v[a+40>>2];a:{b:{if(w[a+49|0]){c=x[a+8>>1];j=c&128;y=w[a+48|0];e=v[a+44>>2];m=z[d+24>>2];c:{if(c&16){break c}k=C(k-Q);l=C(S-h);o=C(s-Q);q=C(p-h);h=C(C(k*l)-C(o*q));r=C(A-i);p=C(r*o);o=C(R-i);i=C(p-C(o*k));k=C(C(q*o)-C(l*r));if(!(j|y)){c=1;if(C(C(h*z[e+8>>2])+C(C(k*z[e>>2])+C(i*z[e+4>>2])))>C(0)){break a}}D_(g+120|0,d,g+80|0,g+92|0,g+104|0,g+140|0,g+136|0);l=C(z[g+128>>2]-z[d+8>>2]);A=C(l*l);l=C(z[g+120>>2]-z[d>>2]);p=C(l*l);l=C(z[g+124>>2]-z[d+4>>2]);if(!(C(A+C(p+C(l*l)))<=C(m*m))){break c}m=C(0);n=C(0);l=C(0);o=C(C(h*h)+C(C(k*k)+C(i*i)));if(o>C(0)){p=h;h=C(C(1)/C(K(o)));l=C(p*h);n=C(i*h);m=C(k*h)}z[g+24>>2]=l;z[g+20>>2]=n;z[g+16>>2]=m;u[g+44>>1]=1026;v[g+40>>2]=0;h=z[e>>2];i=z[e+4>>2];z[g+68>>2]=-z[e+8>>2];z[g- -64>>2]=-i;v[g+72>>2]=0;z[g+60>>2]=-h;break b}c=1;if(L2(1,g+80|0,d,m,e,n,0,g+32|0,g+16|0,(y|0)!=0,(j|0)!=0,0,0)){break b}break a}e=v[a+44>>2];u[g+8>>1]=x[a+8>>1];c=1;if(!I2(1,g+80|0,d,e,n,0,g+32|0,g+16|0,g+8|0,w[a+48|0],0)){break a}}h=z[g+72>>2];d:{if(h>z[a+28>>2]){break d}c=v[a+44>>2];k=C(-C(D(C(C(z[g+24>>2]*z[c+8>>2])+C(C(z[g+16>>2]*z[c>>2])+C(z[g+20>>2]*z[c+4>>2]))))));i=z[a+36>>2];m=C(C(G(h>i?h:i,C(1)))*C(.0010000000474974513));e:{if(h>2];if(hk|h==C(0)){break e}if(!(k==n&h>2]=k;z[f>>2]=h*z[a+16>>2];i=z[a+36>>2];z[a+36>>2]=h>i?i:h;d=x[g+44>>1];c=v[a+20>>2];z[c+40>>2]=h;u[c+12>>1]=d;z[c+28>>2]=z[g+60>>2];z[c+32>>2]=z[g- -64>>2];z[c+36>>2]=z[g+68>>2];z[c+16>>2]=z[g+48>>2];z[c+20>>2]=z[g+52>>2];z[c+24>>2]=z[g+56>>2];v[c+8>>2]=v[b+8>>2];t[a+10|0]=1;if(z[g+72>>2]==C(0)){t[a+11|0]=1;c=0;break a}c=0;if(w[a+8|0]&64){break a}}c=1}xa=g+144|0;return c|0}function gv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0);f=xa-80|0;xa=f;a=v[b+40>>2];J=0;a:{if(z[b+4>>2]!=C(1)){break a}J=0;if(z[b+8>>2]!=C(1)){break a}J=z[b+12>>2]==C(1)}o=z[d>>2];q=z[c>>2];r=z[d+12>>2];i=z[c+12>>2];y=z[d+4>>2];j=z[c+4>>2];A=z[d+8>>2];m=z[c+8>>2];n=z[c+24>>2];p=z[d+24>>2];l=z[c+20>>2];G=z[d+20>>2];k=z[c+16>>2];Q=z[d+16>>2];d=w[a+39|0];U=v[a+40>>2];h=w[a+38|0];a=f- -64|0;v[a>>2]=0;v[a+4>>2]=1065353216;v[f+56>>2]=0;v[f+60>>2]=0;v[f+48>>2]=0;v[f+52>>2]=1065353216;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=1065353216;v[f+36>>2]=1065353216;v[f+16>>2]=1065353216;v[f+20>>2]=0;t[f+72|0]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=1065353216;v[f+4>>2]=0;R=n;S=l;T=k;s=i;u=m;D=j;H=C(1);I=C(1);x=C(1);if(!J){IX(f,b+4|0,b+16|0);R=z[c+24>>2];S=z[c+20>>2];s=z[c+12>>2];D=z[c+4>>2];H=z[f+32>>2];K=z[f+28>>2];E=z[f+24>>2];L=z[f+20>>2];I=z[f+16>>2];F=z[f+12>>2];M=z[f+8>>2];N=z[f+4>>2];x=z[f>>2];T=z[c+16>>2];u=z[c+8>>2]}b:{if(!h){c=0;break b}k=C(Q-k);k=C(k+k);l=C(G-l);l=C(l+l);n=C(p-n);n=C(n+n);p=C(C(C(C(-q)*k)-C(l*j))-C(m*n));G=C(C(i*i)+C(-.5));Q=C(C(C(n*G)+C(i*C(C(j*k)-C(q*l))))-C(m*p));V=C(C(C(l*G)+C(i*C(C(q*n)-C(m*k))))-C(j*p));G=C(C(C(k*G)+C(i*C(C(m*l)-C(j*n))))-C(q*p));d=U+B(d,20)|0;n=C(C(o*j)+C(C(C(i*A)-C(r*m))-C(q*y)));k=C(C(y*m)+C(C(C(i*o)-C(r*q))-C(j*A)));l=C(k+k);O=C(n*l);p=C(C(m*A)+C(C(j*y)+C(C(i*r)+C(q*o))));i=C(C(A*q)+C(C(C(i*y)-C(r*j))-C(m*o)));j=C(i+i);r=C(p*j);m=C(O-r);o=C(p*l);y=C(n*j);q=C(o+y);k=C(C(1)-C(k*l));A=C(i*j);j=C(k-A);W=C(C(C(m*E)+C(q*K))+C(j*H));P=C(l*i);l=C(n+n);p=C(p*l);i=C(P+p);X=k;k=C(n*l);n=C(X-k);l=C(y-o);y=C(C(C(i*E)+C(n*K))+C(l*H));k=C(C(C(1)-A)-k);o=C(P-p);r=C(O+r);A=C(C(C(k*E)+C(o*K))+C(r*H));H=C(C(C(m*F)+C(q*I))+C(j*L));K=C(C(C(i*F)+C(n*I))+C(l*L));I=C(C(C(k*F)+C(o*I))+C(r*L));q=C(C(C(m*x)+C(q*N))+C(j*M));n=C(C(C(i*x)+C(n*N))+C(l*M));l=C(C(C(k*x)+C(o*N))+C(r*M));j=C(D+D);k=C(j*u);m=z[c>>2];i=C(m+m);o=C(i*s);r=C(k-o);x=C(i*u);E=C(j*s);L=C(x+E);k=C(k+o);o=C(i*D);F=C(u+u);s=C(F*s);M=C(o-s);i=C(C(1)-C(m*i));j=C(D*j);N=C(i-j);m=i;i=C(u*F);F=C(m-i);x=C(x-E);E=C(-x);s=C(o+s);o=C(-s);p=C(C(C(1)-j)-i);O=C(-p);b=v[g+4096>>2];P=z[e>>2];c=0;while(1){h=h-1|0;j=z[d>>2];m=z[d+4>>2];u=z[d+8>>2];i=C(G+C(C(C(l*j)+C(I*m))+C(A*u)));c:{if(!(i<=P)){break c}c=1;if(b>>>0>63){break c}a=b+1|0;v[g+4096>>2]=a;b=(b<<6)+g|0;z[b+8>>2]=E;z[b+4>>2]=o;z[b>>2]=O;v[b+52>>2]=-1;z[b+12>>2]=i;D=C(Q+C(C(C(q*j)+C(H*m))+C(W*u)));j=C(V+C(C(C(n*j)+C(K*m))+C(y*u)));z[b+24>>2]=R+C(C(N*D)+C(C(x*i)+C(k*j)));z[b+20>>2]=S+C(C(r*D)+C(C(s*i)+C(F*j)));z[b+16>>2]=T+C(C(L*D)+C(C(p*i)+C(M*j)));b=a}d=d+12|0;if(h){continue}break}}xa=f+80|0;return c|0}function jaa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+b|0;c=v[a+4>>2];a:{b:{if(c&1){break b}if(!(c&3)){break a}c=v[a>>2];b=c+b|0;c:{a=a-c|0;if((a|0)!=v[38171]){if(c>>>0<=255){e=v[a+8>>2];c=c>>>3|0;d=v[a+12>>2];if((d|0)!=(e|0)){break c}i=152664,j=v[38166]&Uaa(-2,c),v[i>>2]=j;break b}h=v[a+24>>2];c=v[a+12>>2];d:{if((c|0)!=(a|0)){d=v[a+8>>2];v[d+12>>2]=c;v[c+8>>2]=d;break d}e:{e=a+20|0;d=v[e>>2];if(d){break e}e=a+16|0;d=v[e>>2];if(d){break e}c=0;break d}while(1){g=e;c=d;e=c+20|0;d=v[e>>2];if(d){continue}e=c+16|0;d=v[c+16>>2];if(d){continue}break}v[g>>2]=0}if(!h){break b}e=v[a+28>>2];d=(e<<2)+152968|0;f:{if(v[d>>2]==(a|0)){v[d>>2]=c;if(c){break f}i=152668,j=v[38167]&Uaa(-2,e),v[i>>2]=j;break b}v[h+(v[h+16>>2]==(a|0)?16:20)>>2]=c;if(!c){break b}}v[c+24>>2]=h;d=v[a+16>>2];if(d){v[c+16>>2]=d;v[d+24>>2]=c}d=v[a+20>>2];if(!d){break b}v[c+20>>2]=d;v[d+24>>2]=c;break b}c=v[f+4>>2];if((c&3)!=3){break b}v[38168]=b;v[f+4>>2]=c&-2;v[a+4>>2]=b|1;v[f>>2]=b;return}v[e+12>>2]=d;v[d+8>>2]=e}c=v[f+4>>2];g:{if(!(c&2)){if(v[38172]==(f|0)){v[38172]=a;b=v[38169]+b|0;v[38169]=b;v[a+4>>2]=b|1;if(v[38171]!=(a|0)){break a}v[38168]=0;v[38171]=0;return}if(v[38171]==(f|0)){v[38171]=a;b=v[38168]+b|0;v[38168]=b;v[a+4>>2]=b|1;v[a+b>>2]=b;return}b=(c&-8)+b|0;h:{if(c>>>0<=255){e=v[f+8>>2];c=c>>>3|0;d=v[f+12>>2];if((d|0)==(e|0)){i=152664,j=v[38166]&Uaa(-2,c),v[i>>2]=j;break h}v[e+12>>2]=d;v[d+8>>2]=e;break h}h=v[f+24>>2];c=v[f+12>>2];i:{if((f|0)!=(c|0)){d=v[f+8>>2];v[d+12>>2]=c;v[c+8>>2]=d;break i}j:{d=f+20|0;e=v[d>>2];if(e){break j}d=f+16|0;e=v[d>>2];if(e){break j}c=0;break i}while(1){g=d;c=e;d=c+20|0;e=v[d>>2];if(e){continue}d=c+16|0;e=v[c+16>>2];if(e){continue}break}v[g>>2]=0}if(!h){break h}e=v[f+28>>2];d=(e<<2)+152968|0;k:{if(v[d>>2]==(f|0)){v[d>>2]=c;if(c){break k}i=152668,j=v[38167]&Uaa(-2,e),v[i>>2]=j;break h}v[h+(v[h+16>>2]==(f|0)?16:20)>>2]=c;if(!c){break h}}v[c+24>>2]=h;d=v[f+16>>2];if(d){v[c+16>>2]=d;v[d+24>>2]=c}d=v[f+20>>2];if(!d){break h}v[c+20>>2]=d;v[d+24>>2]=c}v[a+4>>2]=b|1;v[a+b>>2]=b;if(v[38171]!=(a|0)){break g}v[38168]=b;return}v[f+4>>2]=c&-2;v[a+4>>2]=b|1;v[a+b>>2]=b}if(b>>>0<=255){c=(b&-8)+152704|0;d=v[38166];b=1<<(b>>>3);l:{if(!(d&b)){v[38166]=b|d;b=c;break l}b=v[c+8>>2]}v[c+8>>2]=a;v[b+12>>2]=a;v[a+12>>2]=c;v[a+8>>2]=b;return}e=31;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}v[a+28>>2]=e;v[a+16>>2]=0;v[a+20>>2]=0;g=(e<<2)+152968|0;m:{d=v[38167];c=1<>2]=a;v[a+24>>2]=g;break n}e=b<<((e|0)==31?0:25-(e>>>1|0)|0);c=v[g>>2];while(1){d=c;if((v[c+4>>2]&-8)==(b|0)){break m}c=e>>>29|0;e=e<<1;g=d+(c&4)|0;c=v[g+16>>2];if(c){continue}break}v[g+16>>2]=a;v[a+24>>2]=d}v[a+12>>2]=a;v[a+8>>2]=a;return}b=v[d+8>>2];v[b+12>>2]=a;v[d+8>>2]=a;v[a+24>>2]=0;v[a+12>>2]=d;v[a+8>>2]=b}}function c0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=0,s=C(0),y=0,A=C(0),E=C(0),F=0,G=0,H=0,I=0,J=0,K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=0,T=0,U=0;e=xa-80|0;xa=e;v[e+40>>2]=0;v[e+44>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;u[e+28>>1]=0;v[e+24>>2]=-1;v[e+16>>2]=0;v[e+20>>2]=0;a:{if(!b){break a}F=e+60|0;G=a+108|0;Q=a- -64|0;S=1;while(1){g=v[(H<<2)+c>>2];T=g>>>5|0;U=g>>>1&15;I=0;while(1){r=I+T|0;g=B(r,3);o=v[a+16>>2];b:{if(v[a+12>>2]){g=o+(g<<1)|0;J=x[g+4>>1];K=x[g>>1];g=x[g+2>>1];break b}g=o+(g<<2)|0;J=v[g+8>>2];K=v[g>>2];g=v[g+4>>2]}m=v[a+20>>2];v[e+4>>2]=K;v[e+8>>2]=g;v[e+12>>2]=J;o=m+B(g,12)|0;y=m+B(K,12)|0;i=z[y+8>>2];h=C(z[o+8>>2]-i);L=z[a+40>>2];m=m+B(J,12)|0;j=z[y+4>>2];M=C(z[m+4>>2]-j);k=z[y>>2];N=C(z[m>>2]-k);O=z[a+44>>2];q=C(C(L*M)-C(N*O));s=C(z[o>>2]-k);P=C(z[m+8>>2]-i);p=z[a+48>>2];R=C(C(O*P)-C(M*p));n=C(z[o+4>>2]-j);A=C(C(p*N)-C(P*L));f=C(C(h*q)+C(C(s*R)+C(n*A)));l=z[a+56>>2];c:{d:{if(!w[a+52|0]){if(f>2]-i);k=C(z[a+28>>2]-k);j=C(z[a+32>>2]-j);i=C(C(E*q)+C(C(k*R)+C(A*j)));l=C(l*f);q=C(-l);if(i>2]=f*i;z[e+56>>2]=f*C(C(P*p)+C(C(N*n)+C(M*s)));f=C(f*h);break d}if(C(D(f))>2]-i);k=C(z[a+28>>2]-k);j=C(z[a+32>>2]-j);i=C(E*C(C(f*q)+C(C(k*R)+C(A*j))));q=C(-l);if(if|l>2]=i;z[e+56>>2]=E*C(C(P*p)+C(C(N*n)+C(M*h)))}z[e+64>>2]=f;f=z[e+56>>2];if(f>2])){break c}u[e+28>>1]=1;v[e+24>>2]=r;e:{if(w[a+177|0]){if(!(f>2])){break e}r=v[e+20>>2];v[Q>>2]=v[e+16>>2];v[Q+4>>2]=r;v[Q+8>>2]=v[e+24>>2];u[a+76>>1]=1;z[a+80>>2]=z[e+32>>2];z[a+84>>2]=z[e+36>>2];z[a+88>>2]=z[e+40>>2];z[a+92>>2]=z[e+44>>2];z[a+96>>2]=z[e+48>>2];h=z[e+52>>2];z[a+104>>2]=f;z[a+100>>2]=h;v[G+16>>2]=v[F+16>>2];r=v[F+12>>2];v[G+8>>2]=v[F+8>>2];v[G+12>>2]=r;r=v[F+4>>2];v[G>>2]=v[F>>2];v[G+4>>2]=r;h=z[d>>2];z[d>>2]=f>2]=z[y>>2];z[a+132>>2]=z[y+4>>2];z[a+136>>2]=z[y+8>>2];z[a+140>>2]=z[o>>2];z[a+144>>2]=z[o+4>>2];z[a+148>>2]=z[o+8>>2];z[a+152>>2]=z[m>>2];z[a+156>>2]=z[m+4>>2];f=z[m+8>>2];t[a+176|0]=1;v[a+172>>2]=J;v[a+168>>2]=g;v[a+164>>2]=K;z[a+160>>2]=f;break e}z[e>>2]=z[d>>2];g=v[a+8>>2];if(!(Ba[v[v[g>>2]>>2]](g,e+16|0,y,o,m,e,e+4|0)|0)){break a}f=z[e>>2];if(!(f>2])){break e}z[d>>2]=f;z[a+60>>2]=f}if(!v[v[a+8>>2]+4>>2]){break a}}g=(I|0)!=(U|0);I=I+1|0;if(g){continue}break}H=H+1|0;S=H>>>0>>0;if((b|0)!=(H|0)){continue}break}}xa=e+80|0;return(S^-1)&1}function o8(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),y=C(0),A=C(0),B=C(0);c=xa-176|0;xa=c;v[c+60>>2]=a;v[c+56>>2]=a;a=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=a;a=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=a;D5(c+144|0,c+112|0,e,f,g);l=z[f+20>>2];k=z[f+16>>2];m=z[c+132>>2];n=z[c+128>>2];o=z[c+136>>2];z[b+8>>2]=o-z[f+24>>2];z[b+4>>2]=m-l;z[b>>2]=n-k;l=z[f+20>>2];k=z[f+16>>2];z[c+72>>2]=o-z[f+24>>2];z[c+68>>2]=m-l;z[c+64>>2]=n-k;l=z[g+20>>2];k=z[g+24>>2];q=z[g+16>>2];z[c+108>>2]=o;z[c+104>>2]=m;r=z[c+168>>2];z[c+96>>2]=r;s=z[c+164>>2];z[c+92>>2]=s;z[c+84>>2]=o-k;z[c+80>>2]=m-l;z[c+100>>2]=n;t=z[c+160>>2];z[c+88>>2]=t;z[c+76>>2]=n-q;b=0;d=u[e+128>>1]&1;b=d?z[e+116>>2]>=z[e+112>>2]:b;a:{if(h){k=z[c+152>>2];q=z[c+148>>2];p=z[c+144>>2];l=z[c+156>>2];break a}w=z[c+124>>2];l=z[c+156>>2];y=z[c+120>>2];k=z[c+152>>2];A=z[c+112>>2];p=z[c+144>>2];B=z[c+116>>2];q=z[c+148>>2];if(!(C(C(w*l)+C(C(y*k)+C(C(A*p)+C(B*q))))>2]=-w;z[c+120>>2]=-y;z[c+116>>2]=-B;z[c+112>>2]=-A}o=C(o-r);o=C(o+o);n=C(n-t);n=C(n+n);m=C(m-s);m=C(m+m);r=C(C(k*o)+C(C(p*n)+C(m*q)));s=C(C(l*l)+C(-.5));z[c+16>>2]=C(k*r)+C(C(o*s)-C(l*C(C(p*m)-C(n*q))));z[c+12>>2]=C(q*r)+C(C(m*s)-C(l*C(C(k*n)-C(o*p))));z[c+8>>2]=C(p*r)+C(C(n*s)-C(l*C(C(q*o)-C(m*k))));H5(c+56|0,c+144|0,c+112|0,c+8|0,7,b?7:6,c+40|0,c+24|0);l=z[f+16>>2];k=z[f+20>>2];m=z[c+40>>2];n=z[c+44>>2];z[i+8>>2]=z[c+48>>2]+z[f+24>>2];z[i+4>>2]=n+k;z[i>>2]=m+l;l=z[g+16>>2];k=z[g+20>>2];m=z[c+24>>2];n=z[c+28>>2];z[j+8>>2]=z[c+32>>2]+z[g+24>>2];z[j+4>>2]=n+k;z[j>>2]=m+l;if(b){a=v[c+60>>2]-v[c+56>>2]|0}else{l=z[c+152>>2];m=z[c+144>>2];q=z[c+148>>2];o=C(q*C(0));k=C(C(l*C(0))+C(C(m+m)+o));n=z[c+156>>2];p=C(C(n*n)+C(-.5));r=C(p*C(0));z[c+16>>2]=C(l*k)+C(r+C(n*C(C(m*C(0))-C(q+q))));z[c+12>>2]=C(q*k)+C(r+C(n*C(C(l+l)+C(m*C(-0)))));z[c+8>>2]=C(m*k)+C(C(p+p)+C(n*C(o+C(l*C(-0)))));b=x[e+128>>1];if(b&2){a=v[c+60>>2];v[c+60>>2]=a+80;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;k=z[c+8>>2];p=z[c+12>>2];o=z[c+16>>2];v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;o=C(-o);z[a+24>>2]=o;p=C(-p);z[a+20>>2]=p;r=C(-k);z[a+16>>2]=r;k=z[e+88>>2];z[a+56>>2]=k*o;z[a+52>>2]=k*p;z[a+48>>2]=k*r;k=z[e+80>>2];z[a+28>>2]=k;p=z[e+84>>2];z[a+60>>2]=p;z[a+44>>2]=-p;f=x[a+76>>1];u[a+76>>1]=f|64;b:{if(!(b&4)){break b}if(k>C(0)){v[a+44>>2]=0}if(!(k>2]=0}u[a+76>>1]=f|96}if(d){p=z[c+120>>2];o=z[c+116>>2];r=z[c+124>>2];s=z[c+112>>2];k=C(C(l*p)+C(C(q*o)+C(C(n*r)+C(m*s))));l=C(C(o*l)+C(C(C(-q)*p)+C(C(n*s)+C(r*C(-m)))));m=C(K(C(C(k*k)+C(C(C(l*l)+C(0))+C(0)))));if(m!=C(0)){m=C(C(1)/m);k=C(k*m);l=C(l*m)}k=z9(C(F(C(G(k,C(-1))),C(1))));k=C(k+k);F5(c+56|0,l>2],z[e+112>>2],z[e+108>>2],c+8|0,e+92|0)}a=v[c+60>>2]-v[c+56>>2]|0}xa=c+176|0;return(a|0)/80|0}function KQ(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;d=xa-16|0;xa=d;j=v[a+28>>2];a=v[j+1e3>>2]+640|0;a:{if(!v[a+328>>2]){v[a+328>>2]=0;break a}l=a+240|0;k=v[a+244>>2];h=a+136|0;while(1){b=v[v[a+324>>2]+(f<<2)>>2];v[d>>2]=b;c=b>>>7|0;i=c<<2;b=v[i+v[a+204>>2]>>2];g=v[a+16>>2]+B(c,24)|0;e=w[g+4|0]&-33;t[g+4|0]=e;b:{if((b|0)!=-1){e=1<>2]+(b>>>3&536870908)|0;if(!(e&v[g>>2])){v[d+8>>2]=b;c=v[a+88>>2];v[g>>2]=e|v[g>>2];e=c+B(b,44)|0;b=v[a+244>>2];v[e+16>>2]=b;c:{if(b>>>0>=(v[a+248>>2]&2147483647)>>>0){on(l,d+8|0);break c}v[v[a+240>>2]+(b<<2)>>2]=v[d+8>>2];v[a+244>>2]=v[a+244>>2]+1}c=v[d>>2]>>>7|0}v[v[a+28>>2]+(c<<2)>>2]=33554431;KF(a,v[d>>2]);break b}t[g+4|0]=e|2;v[i+v[a+28>>2]>>2]=v[a+140>>2];b=v[a+140>>2];d:{if(b>>>0>=(v[a+144>>2]&2147483647)>>>0){YF(h,d);break d}v[v[a+136>>2]+(b<<2)>>2]=v[d>>2];v[a+140>>2]=v[a+140>>2]+1}b=v[g>>2];if((b|0)==-1){break b}while(1){c=v[a+84>>2];g=(b>>>0)/(c>>>0)|0;g=v[v[a+64>>2]+(g<<2)>>2]+(b-B(c,g)<<3)|0;e=b^1;i=v[a+448>>2];n=v[i+20>>2];c=(e>>>0)/(n>>>0)|0;e:{f:{c=v[v[v[i>>2]+(c<<2)>>2]+(e-B(c,n)<<2)>>2];if(c>>>0<=4294967167){c=v[v[a+204>>2]+(c>>>5&134217724)>>2];if((c|0)!=-1){break f}}c=b>>>1|0;b=v[a+60>>2];e=(c>>>0)/(b>>>0)|0;b=v[v[a+40>>2]+(e<<2)>>2]+(c-B(b,e)<<4)|0;if(w[b+4|0]&4|v[b>>2]==1){break e}BF(a,c);u[b+4>>1]=x[b+4>>1]|4;break e}e=1<>2]+(c>>>3&536870908)|0;if(e&v[b>>2]){break e}v[d+12>>2]=c;i=v[a+88>>2];v[b>>2]=e|v[b>>2];b=v[a+244>>2];v[(i+B(c,44)|0)+16>>2]=b;if(b>>>0>=(v[a+248>>2]&2147483647)>>>0){on(l,d+12|0);break e}v[v[a+240>>2]+(b<<2)>>2]=v[d+12>>2];v[a+244>>2]=v[a+244>>2]+1}b=v[g>>2];if((b|0)!=-1){continue}break}}f=f+1|0;if(f>>>0>2]){continue}break}v[a+328>>2]=0;f=v[a+244>>2];if(k>>>0>=f>>>0){break a}while(1){b=v[v[a+88>>2]+B(v[v[a+240>>2]+(k<<2)>>2],44)>>2];c=b>>>7|0;if((c|0)!=33554431){while(1){KF(a,b);b=v[(v[a+16>>2]+B(c,24)|0)+8>>2];c=b>>>7|0;if((c|0)!=33554431){continue}break}f=v[a+244>>2]}k=k+1|0;if(k>>>0>>0){continue}break}}xa=d+16|0;b=v[j+1e3>>2];g=v[b+792>>2];if(g){l=v[b+788>>2];while(1){d=v[l+(m<<2)>>2];c=v[j+1e3>>2];f=v[c- -64>>2];a=(d>>>0)/(f>>>0)|0;a=v[v[v[c+44>>2]+(a<<2)>>2]+(d-B(a,f)<<2)>>2];g:{if(!a|w[a+21|0]&32){break g}c=v[b+700>>2];f=(d>>>0)/(c>>>0)|0;if(!(w[(v[v[b+680>>2]+(f<<2)>>2]+(d-B(c,f)<<4)|0)+4|0]&4)){break g}h:{i:{switch(w[a+20|0]){case 1:if(qS(a-4|0)){break h}break g;case 4:if(MH(a)){break h}break g;case 5:if(lF(a)){break h}break g;case 0:break i;default:break g}}if(!HR(a-4|0,0)){break g}}c=w[a+20|0];if(c>>>0>2){break g}f=(c<<2)+j|0;d=v[f+88>>2];c=B(c,12)+j|0;if(d>>>0>2]){e=v[c+52>>2];h=e+(d<<2)|0;k=v[h>>2];i=h;h=e;a=v[a+8>>2];e=a<<2;h=v[h+e>>2];v[i>>2]=h;v[e+v[c+52>>2]>>2]=k;v[k+8>>2]=a;v[h+8>>2]=d;d=v[f+88>>2]}v[f+88>>2]=d+1}m=m+1|0;if((g|0)!=(m|0)){continue}break}}a=v[v[j+976>>2]+1024>>2];Ba[v[v[a>>2]+20>>2]](a,z[j+1080>>2],j+2752|0)}function m2(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0;k=xa-144|0;xa=k;P=z[g>>2];v[k+136>>2]=v[g+12>>2];j=v[g+8>>2];v[k+128>>2]=v[g+4>>2];v[k+132>>2]=j;j=v[e+40>>2];o=z[j+40>>2];D=z[a+88>>2];p=z[j+8>>2];E=z[a+80>>2];n=z[j+24>>2];s=z[a+84>>2];r=C(C(o*D)+C(C(p*E)+C(n*s)));J=z[j+36>>2];F=z[j+4>>2];L=z[j+20>>2];G=C(C(J*D)+C(C(F*E)+C(L*s)));H=z[a+72>>2];m=C(o*H);M=z[a- -64>>2];N=z[a+68>>2];l=C(C(p*M)+C(n*N));O=z[a+56>>2];u=z[a+48>>2];y=z[a+52>>2];t=C(C(o*O)+C(C(p*u)+C(y*n)));q=C(C(J*O)+C(C(F*u)+C(y*L)));o=z[j+32>>2];p=z[j>>2];n=z[j+16>>2];s=C(C(o*D)+C(C(p*E)+C(n*s)));u=C(C(o*O)+C(C(p*u)+C(y*n)));if(b&32){v[k+28>>2]=0;z[k+24>>2]=r-t;z[k+20>>2]=G-q;z[k+16>>2]=s-u;A=1}y=C(m+l);m=C(C(J*H)+C(C(F*M)+C(L*N)));l=C(C(o*H)+C(C(p*M)+C(n*N)));if(b&8){a=(k+16|0)+(A<<4)|0;v[a+12>>2]=0;z[a+8>>2]=t-y;z[a+4>>2]=q-m;z[a>>2]=u-l;A=A+1|0}a:{b:{c:{d:{if(b&16){a=(k+16|0)+(A<<4)|0;v[a+12>>2]=0;z[a+8>>2]=y-r;z[a+4>>2]=m-G;z[a>>2]=l-s;A=A+1|0;break d}if(!A){break c}}a=v[c+16>>2];if(a){o=C(l-u);p=C(G-q);n=C(s-u);l=C(m-q);m=C(C(o*p)-C(n*l));q=m;s=C(m*m);m=C(r-t);r=C(l*m);l=C(y-t);p=C(r-C(p*l));m=C(C(l*n)-C(m*o));l=C(C(1)/C(K(C(s+C(C(p*p)+C(m*m))))));G=C(q*l);D=C(m*l);E=C(p*l);while(1){I=v[c+24>>2]+B(Q,20)|0;e:{if(C(C(z[I+8>>2]*G)+C(C(z[I>>2]*E)+C(D*z[I+4>>2])))>C(0)){break e}b=w[I+18|0];if(!b){break e}R=v[c+32>>2]+x[I+16>>1]|0;a=b-1|0;b=0;while(1){j=B(w[a+R|0],12);a=v[c+28>>2];j=j+a|0;a=a+B(w[b+R|0],12)|0;s=C(z[j+4>>2]-z[a+4>>2]);J=C(-s);F=C(z[j>>2]-z[a>>2]);L=C(-F);H=C(z[j+8>>2]-z[a+8>>2]);M=C(-H);a=0;while(1){j=(k+16|0)+(a<<4)|0;m=z[j>>2];l=z[j+8>>2];t=C(C(H*m)+C(l*L));q=C(s*l);l=z[j+4>>2];q=C(q+C(l*M));r=C(C(F*l)+C(m*J));f:{if(!(!((r>C(0)?r:C(-r))C(0)?q:C(-q))C(0)?t:C(-t))C(0))){break f}j=v[e+40>>2];N=z[j+40>>2];O=z[j+36>>2];u=z[j+24>>2];y=z[j+20>>2];o=z[j+32>>2];p=z[j+16>>2];n=z[j+8>>2];m=z[j>>2];l=z[j+4>>2];v[k+12>>2]=0;o=C(C(N*r)+C(C(o*q)+C(t*O)));m=C(C(n*r)+C(C(m*q)+C(t*l)));l=C(C(u*r)+C(C(p*q)+C(t*y)));n=C(C(1)/C(K(C(C(o*o)+C(C(m*m)+C(l*l))))));z[k+8>>2]=o*n;z[k+4>>2]=l*n;z[k>>2]=m*n;Ba[v[v[d>>2]+12>>2]](d,k,k+112|0,k+96|0);Ba[v[v[e>>2]+12>>2]](e,k,k+80|0,k- -64|0);l=z[k+80>>2];n=z[k+96>>2];m=z[f>>2];if(l>C(n+m)|z[k+112>>2]>C(m+z[k+64>>2])){break b}l=C(n-l);if(!(l>2];v[h>>2]=v[k>>2];v[h+4>>2]=j;j=v[k+12>>2];v[h+8>>2]=v[k+8>>2];v[h+12>>2]=j;v[i>>2]=2;P=l}a=a+1|0;if((A|0)!=(a|0)){continue}break}a=b;b=a+1|0;if(b>>>0>2]}Q=Q+1|0;if(Q>>>0>>0){continue}break}}z[g>>2]=P;v[g+12>>2]=v[k+136>>2];a=v[k+132>>2];v[g+4>>2]=v[k+128>>2];v[g+8>>2]=a}a=1;break a}a=0}xa=k+144|0;return a}function lZ(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=0;g=xa-288|0;xa=g;A=z[e>>2];B=z[a+4>>2];m=z[d+8>>2];h=z[a+8>>2];i=z[c>>2];j=C(i+i);q=z[c+8>>2];s=z[c+4>>2];w=z[c+12>>2];y=C(w+w);p=C(h*C(C(j*q)-C(s*y)));r=C(z[d+24>>2]-z[c+24>>2]);n=C(C(-p)-r);t=C(n+n);n=z[d>>2];l=C(h*C(C(i*j)+C(C(w*y)+C(-1))));k=C(z[d+16>>2]-z[c+16>>2]);i=C(C(-l)-k);u=C(i+i);q=C(h*C(C(q*y)+C(j*s)));s=C(z[d+20>>2]-z[c+20>>2]);h=C(C(-q)-s);o=C(h+h);h=z[d+4>>2];E=C(C(m*t)+C(C(n*u)+C(o*h)));i=z[d+12>>2];j=C(C(i*i)+C(-.5));w=C(C(m*E)+C(C(t*j)-C(i*C(C(n*o)-C(u*h)))));z[g+284>>2]=w;y=C(C(h*E)+C(C(o*j)-C(i*C(C(m*u)-C(t*n)))));z[g+280>>2]=y;p=C(p-r);p=C(p+p);r=C(l-k);r=C(r+r);q=C(q-s);l=C(q+q);k=C(C(m*p)+C(C(n*r)+C(h*l)));q=C(C(m*k)+C(C(p*j)-C(i*C(C(n*l)-C(r*h)))));z[g+272>>2]=q;s=C(C(h*k)+C(C(l*j)-C(i*C(C(m*r)-C(p*n)))));z[g+268>>2]=s;p=C(C(n*k)+C(C(r*j)-C(i*C(C(h*p)-C(l*m)))));z[g+264>>2]=p;n=C(C(n*E)+C(C(u*j)-C(i*C(C(h*t)-C(o*m)))));z[g+276>>2]=n;c=v[b+40>>2];z[g+20>>2]=w;z[g+16>>2]=y;m=C(B+A);z[g+24>>2]=m;z[g+12>>2]=n;z[g+8>>2]=q;z[g+4>>2]=s;z[g>>2]=p;DV(g+200|0,g);a:{if(!(z[b+4>>2]!=C(1)|z[b+8>>2]!=C(1)|z[b+12>>2]!=C(1))){E=z[e>>2];r=z[a+4>>2];v[g+8>>2]=f;v[g>>2]=142468;v[g+4>>2]=2;i=z[d+4>>2];t=C(i+i);h=z[d+8>>2];l=C(t*h);u=z[d>>2];j=C(u+u);o=z[d+12>>2];k=C(j*o);z[g+40>>2]=l-k;A=C(j*h);B=C(t*o);z[g+36>>2]=A+B;z[g+32>>2]=l+k;l=C(j*i);k=o;o=C(h+h);k=C(k*o);z[g+24>>2]=l-k;z[g+20>>2]=A-B;z[g+16>>2]=l+k;j=C(C(1)-C(u*j));i=C(i*t);z[g+44>>2]=j-i;h=C(h*o);z[g+28>>2]=j-h;z[g+12>>2]=C(C(1)-i)-h;z[g+48>>2]=z[d+16>>2];z[g+52>>2]=z[d+20>>2];h=z[d+24>>2];z[g+104>>2]=r;z[g+100>>2]=E;z[g+96>>2]=m;z[g+56>>2]=h;z[g+88>>2]=m+C(D(C(C(q-w)*C(.5))));z[g+84>>2]=m+C(D(C(C(s-y)*C(.5))));z[g+80>>2]=m+C(D(C(C(p-n)*C(.5))));z[g+72>>2]=C(q+w)*C(.5);z[g+68>>2]=C(s+y)*C(.5);z[g- -64>>2]=C(p+n)*C(.5);v[g+60>>2]=g+264;v[g+108>>2]=c;Ba[v[(x[c+4>>1]<<2)+142480>>2]](c,g+200|0,g,1,1);break a}F=g+120|0;IX(F,b+4|0,b+16|0);E=z[e>>2];r=z[a+4>>2];v[g+8>>2]=f;v[g+4>>2]=2;i=z[d+4>>2];t=C(i+i);h=z[d+8>>2];l=C(t*h);u=z[d>>2];j=C(u+u);o=z[d+12>>2];k=C(j*o);z[g+40>>2]=l-k;A=C(j*h);B=C(t*o);z[g+36>>2]=A+B;z[g+32>>2]=l+k;l=C(j*i);k=o;o=C(h+h);k=C(k*o);z[g+24>>2]=l-k;z[g+20>>2]=A-B;z[g+16>>2]=l+k;j=C(C(1)-C(u*j));i=C(i*t);z[g+44>>2]=j-i;h=C(h*o);z[g+28>>2]=j-h;z[g+12>>2]=C(C(1)-i)-h;z[g+48>>2]=z[d+16>>2];z[g+52>>2]=z[d+20>>2];h=z[d+24>>2];z[g+104>>2]=r;z[g+100>>2]=E;z[g+96>>2]=m;z[g+56>>2]=h;z[g+88>>2]=m+C(D(C(C(q-w)*C(.5))));z[g+84>>2]=m+C(D(C(C(s-y)*C(.5))));z[g+80>>2]=m+C(D(C(C(p-n)*C(.5))));z[g+72>>2]=C(q+w)*C(.5);z[g+68>>2]=C(s+y)*C(.5);z[g- -64>>2]=C(p+n)*C(.5);v[g+60>>2]=g+264;v[g+108>>2]=c;v[g>>2]=142508;v[g+112>>2]=F;a=g+200|0;mZ(F,g+236|0,g+248|0,a);Ba[v[(x[c+4>>1]<<2)+142480>>2]](c,a,g,1,1)}xa=g+288|0;return v[f+4096>>2]!=0}function _U(a,b){var c=0,d=0,e=0,f=C(0),g=C(0),h=0;c=xa-480|0;xa=c;a:{if(w[b+24|0]){v[a+32>>2]=0;v[a>>2]=2;d=v[b+4>>2];e=v[b>>2];z[c+472>>2]=z[b+8>>2];v[c+464>>2]=e;v[c+468>>2]=d;d=ZU(a,c+464|0);f=z[b+12>>2];g=z[b+4>>2];z[c+456>>2]=z[b+8>>2];z[c+452>>2]=g;z[c+448>>2]=f;d=ZU(d,c+448|0);e=v[b+16>>2];h=v[b+12>>2];z[c+440>>2]=z[b+8>>2];v[c+432>>2]=h;v[c+436>>2]=e;d=ZU(d,c+432|0);f=z[b+16>>2];g=z[b>>2];z[c+424>>2]=z[b+8>>2];z[c+420>>2]=f;z[c+416>>2]=g;d=ZU(d,c+416|0);e=v[b+4>>2];h=v[b>>2];z[c+408>>2]=z[b+8>>2];v[c+400>>2]=h;v[c+404>>2]=e;d=ZU(d,c+400|0);e=v[b+4>>2];h=v[b>>2];z[c+392>>2]=z[b+20>>2];v[c+384>>2]=h;v[c+388>>2]=e;d=ZU(d,c+384|0);f=z[b+12>>2];g=z[b+4>>2];z[c+376>>2]=z[b+20>>2];z[c+372>>2]=g;z[c+368>>2]=f;d=ZU(d,c+368|0);e=v[b+16>>2];h=v[b+12>>2];z[c+360>>2]=z[b+20>>2];v[c+352>>2]=h;v[c+356>>2]=e;d=ZU(d,c+352|0);f=z[b+16>>2];g=z[b>>2];z[c+344>>2]=z[b+20>>2];z[c+340>>2]=f;z[c+336>>2]=g;d=ZU(d,c+336|0);e=v[b+4>>2];h=v[b>>2];z[c+328>>2]=z[b+20>>2];v[c+320>>2]=h;v[c+324>>2]=e;d=ZU(d,c+320|0);v[d>>2]=1;v[a+32>>2]=0;f=z[b+12>>2];g=z[b+4>>2];z[c+312>>2]=z[b+8>>2];z[c+308>>2]=g;z[c+304>>2]=f;d=ZU(d,c+304|0);f=z[b+12>>2];g=z[b+4>>2];z[c+296>>2]=z[b+20>>2];z[c+292>>2]=g;z[c+288>>2]=f;d=ZU(d,c+288|0);e=v[b+16>>2];h=v[b+12>>2];z[c+280>>2]=z[b+8>>2];v[c+272>>2]=h;v[c+276>>2]=e;d=ZU(d,c+272|0);e=v[b+16>>2];h=v[b+12>>2];z[c+264>>2]=z[b+20>>2];v[c+256>>2]=h;v[c+260>>2]=e;d=ZU(d,c+256|0);f=z[b+16>>2];g=z[b>>2];z[c+248>>2]=z[b+8>>2];z[c+244>>2]=f;z[c+240>>2]=g;ZU(d,c+240|0);f=z[b+20>>2];g=z[b+16>>2];z[c+224>>2]=z[b>>2];b=c+224|0;break a}v[a+32>>2]=0;v[a>>2]=4;d=v[b+4>>2];e=v[b>>2];z[c+216>>2]=z[b+8>>2];v[c+208>>2]=e;v[c+212>>2]=d;d=ZU(a,c+208|0);f=z[b+16>>2];g=z[b>>2];z[c+200>>2]=z[b+8>>2];z[c+196>>2]=f;z[c+192>>2]=g;d=ZU(d,c+192|0);f=z[b+12>>2];g=z[b+4>>2];z[c+184>>2]=z[b+8>>2];z[c+180>>2]=g;z[c+176>>2]=f;d=ZU(d,c+176|0);e=v[b+16>>2];h=v[b+12>>2];z[c+168>>2]=z[b+8>>2];v[c+160>>2]=h;v[c+164>>2]=e;d=ZU(d,c+160|0);e=v[b+16>>2];h=v[b+12>>2];z[c+152>>2]=z[b+20>>2];v[c+144>>2]=h;v[c+148>>2]=e;d=ZU(d,c+144|0);f=z[b+16>>2];g=z[b>>2];z[c+136>>2]=z[b+8>>2];z[c+132>>2]=f;z[c+128>>2]=g;d=ZU(d,c+128|0);f=z[b+16>>2];g=z[b>>2];z[c+120>>2]=z[b+20>>2];z[c+116>>2]=f;z[c+112>>2]=g;d=ZU(d,c+112|0);e=v[b+4>>2];h=v[b>>2];z[c+104>>2]=z[b+8>>2];v[c+96>>2]=h;v[c+100>>2]=e;d=ZU(d,c+96|0);e=v[b+4>>2];h=v[b>>2];z[c+88>>2]=z[b+20>>2];v[c+80>>2]=h;v[c+84>>2]=e;d=ZU(d,c+80|0);f=z[b+12>>2];g=z[b+4>>2];z[c+72>>2]=z[b+8>>2];z[c+68>>2]=g;z[c+64>>2]=f;d=ZU(d,c- -64|0);f=z[b+12>>2];g=z[b+4>>2];z[c+56>>2]=z[b+20>>2];z[c+52>>2]=g;z[c+48>>2]=f;d=ZU(d,c+48|0);e=v[b+16>>2];h=v[b+12>>2];z[c+40>>2]=z[b+20>>2];v[c+32>>2]=h;v[c+36>>2]=e;d=ZU(d,c+32|0);e=v[b+4>>2];h=v[b>>2];z[c+24>>2]=z[b+20>>2];v[c+16>>2]=h;v[c+20>>2]=e;ZU(d,c+16|0);f=z[b+20>>2];g=z[b+16>>2];z[c>>2]=z[b>>2];b=c}z[b+8>>2]=f;z[b+4>>2]=g;ZU(a,b);xa=c+480|0}function Eu(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=xa-288|0;xa=e;a:{if(!d){b:{if(!v[b+192>>2]|(v[b+4>>2]&-1073741824)!=1073741824){break b}d=v[b+192>>2];f=b+16|0;g=w[v[f+176>>2]+31|0]==1;c:{if(g){if(d){break c}break b}if(!v[b+192>>2]|(!d|w[v[f+176>>2]+31|0]==1)){break b}}SG(f,v[v[b>>2]+2428>>2],g)}d:{if(!w[a+4785|0]){Fu(a+16|0,b,c);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break d}f=a+4932|0;e:{f:{d=v[b+4>>2];switch((d>>>30|0)-1|0){case 1:break e;case 0:break f;default:break d}}v[b+4>>2]=d&1073741823;v[e+16>>2]=b;Og(f,e+16|0);break d}v[b+4>>2]=d|-1073741824;if(d&268435456){break d}v[e+16>>2]=b;d=qh(f,e+16|0,e+12|0);if(w[e+12|0]){break d}v[d>>2]=v[e+16>>2]}d=v[b+268>>2];g:{if(!(t[(d&16384?v[b+8>>2]+268|0:b+60|0)|0]&1)){v[b+264>>2]=1;v[b+268>>2]=d&-983041;break g}Wk(b)}d=v[b+4>>2]&-33;v[b+4>>2]=d;if(!w[a+4785|0]){break a}if(c){v[b+4>>2]=d|16}t[e+272|0]=1;v[e+280>>2]=0;v[e+284>>2]=64;v[e+276>>2]=e+16;a=0;c=Ho(b,e+12|0,0);h:{if(!c){break h}d=v[b+4>>2]&-1073741824;f=v[b>>2];if((c|0)!=1){h=c&-2;b=0;while(1){j=a<<2;g=v[j+v[e+12>>2]>>2];i=v[g+36>>2];if((i&251658240)==16777216){v[g+32>>2]=f;v[g+36>>2]=d|i&1073741823}g=v[v[e+12>>2]+(j|4)>>2];j=v[g+36>>2];if((j&251658240)==16777216){v[g+32>>2]=f;v[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=v[v[e+12>>2]+(a<<2)>>2];b=v[a+36>>2];if((b&251658240)!=16777216){break h}v[a+32>>2]=f;v[a+36>>2]=d|b&1073741823}a=v[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}d=a+4932|0;c=xa-288|0;xa=c;i:{if(!w[a+4785|0]){Gu(b);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break i}j:{k:{l:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break k;case 0:break l;default:break j}}v[b+4>>2]=a&1073741823;v[c+16>>2]=b;Og(d,c+16|0);break j}v[b+4>>2]=a|-1073741824;if(a&268435456){break j}v[c+16>>2]=b;a=qh(d,c+16|0,c+12|0);if(w[c+12|0]){break j}v[a>>2]=v[c+16>>2]}t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;a=0;d=Ho(b,c+12|0,0);m:{if(!d){break m}f=v[b+4>>2]&-1073741824;g=v[b>>2];if((d|0)!=1){j=d&-2;while(1){i=a<<2;h=v[i+v[c+12>>2]>>2];k=v[(h+32|0)+4>>2];if((k&251658240)==16777216){v[h+32>>2]=g;v[h+36>>2]=f|k&1073741823}h=v[v[c+12>>2]+(i|4)>>2];i=v[(h+32|0)+4>>2];if((i&251658240)==16777216){v[h+32>>2]=g;v[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=v[v[c+12>>2]+(a<<2)>>2];d=v[(a+32|0)+4>>2];if((d&251658240)!=16777216){break m}v[a+32>>2]=g;v[a+36>>2]=f|d&1073741823}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break i}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break i}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,a)}xa=c+288|0;a=v[b+268>>2];n:{if(!(t[(a&16384?v[b+8>>2]+268|0:b+60|0)|0]&1)){v[b+264>>2]=1;v[b+268>>2]=a&-983041;break n}Wk(b)}v[b+4>>2]=v[b+4>>2]&-33}xa=e+288|0}function Y_(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=C(0),j=C(0),k=0,l=C(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=C(0),K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;q=xa-224|0;xa=q;A=Ba[v[v[a>>2]+36>>2]](a)|0;K=Ba[v[v[a>>2]+32>>2]](a)|0;i=z[a+88>>2];j=z[a+84>>2];o=(c|0)>0?c:0;f=v[d>>2]+c|0;f=(f|0)>0?f:0;M=f>>>0>>0?f:K;a:{if(o>>>0>=M>>>0){break a}N=(b|0)>0?b:0;f=v[d+4>>2]+b|0;f=(f|0)>0?f:0;O=f>>>0>>0?f:A;if(N>>>0>=O>>>0){break a}g=v[a+60>>2];while(1){P=(o|0)!=0;Q=o-c|0;R=B(o,A);p=N;while(1){D=p+R|0;L=D<<2;s=L+g|0;f=v[d+16>>2]+((p-b|0)+B(v[d+4>>2],Q)<<2)|0;f=x[f>>1]|x[f+2>>1]<<16;u[s>>1]=f;u[s+2>>1]=f>>>16;b:{c:{if(t[a+68|0]&1){if(!o|!p|(v[a+40>>2]-1>>>0<=o>>>0|v[a+44>>2]-1>>>0<=p>>>0)){break c}}E=Z_(a,D,o,p,q+96|0);if(!E){break c}F=v[a+44>>2];G=F-1|0;H=v[a+40>>2]-1|0;r=v[a+60>>2];g=0;m=q;while(1){f=(q+96|0)+(g<<4)|0;k=v[f+12>>2];I=v[f+8>>2];h=0;d:{e:{f:{g:{h:{n=v[f+4>>2];switch(v[f>>2]+B(n,-3)|0){case 0:break f;case 1:break g;case 2:break h;default:break d}}if(H>>>0<=I>>>0){break d}if(k){v[m>>2]=(n<<1)-1;f=1}else{f=0}if(k>>>0>=G>>>0){h=f;break d}k=n<<1;h=f+1|0;break e}if(H>>>0<=I>>>0|k>>>0>=G>>>0){break d}f=1;h=n<<1;v[m>>2]=h;k=h|1;h=2;break e}if(k>>>0>=G>>>0){break d}if(I){f=n-F|0;v[m>>2]=f<<1|t[((f<<2)+r|0)+2|0]>=0;f=1}else{f=0}if(H>>>0<=I>>>0){h=f;break d}k=n<<1;h=f+1|0;if(t[((n<<2)+r|0)+2|0]>=0){break e}k=k|1;h=f+1|0}v[(f<<2)+m>>2]=k}v[(q- -64|0)+(g<<2)>>2]=h;m=m+8|0;h=1;g=g+1|0;if((E|0)!=(g|0)){continue}break}f=q;m=0;g=0;while(1){i:{n=v[f>>2];n=w[((n<<1&-4)+r|0)+(n&1?3:2)|0]&127;j:{if(y[(q- -64|0)+(g<<2)>>2]<=1){if((n|0)!=127){break i}break j}k=v[f+4>>2];k=w[((k<<1&-4)+r|0)+(k&1?3:2)|0]&127;if((n|0)!=127){m=1;if((k|0)!=127){break j}break i}if((k|0)==127){break j}m=1;break i}f=f+8|0;g=g+1|0;h=E>>>0>g>>>0;if((g|0)!=(E|0)){continue}}break}k:{if(h&1){break k}if(!m){break c}f=r+L|0;h=u[f>>1]<<1;g=0;m=o>>>0>>0&P;g=m?h-(u[(D+F<<2)+r>>1]+u[(D-F<<2)+r>>1]|0)|0:g;l:{if(!(!p|p>>>0>=G>>>0)){f=h-(u[f+4>>1]+u[f-4>>1]|0)|0;break l}f=0;if(!m){break k}}if(!(z[a+64>>2]=0){break c}}t[s+3|0]=w[s+3|0]|128;break b}t[s+3|0]=w[s+3|0]&127}g=v[a+60>>2];l=C(u[L+g>>1]);i=il?l:j;p=p+1|0;if((O|0)!=(p|0)){continue}break}o=o+1|0;if((M|0)!=(o|0)){continue}break}}m:{if(!e){break m}b=B(A,K);if(!b){j=C(34028234663852886e22);i=C(-34028234663852886e22);break m}d=b&1;c=v[a+60>>2];n:{if((b|0)==1){g=0;i=C(-34028234663852886e22);j=C(34028234663852886e22);break n}b=b&-2;g=0;i=C(-34028234663852886e22);j=C(34028234663852886e22);h=0;while(1){e=g<<2;l=C(u[c+(e|4)>>1]);J=C(u[c+e>>1]);i=iJ?J:j;j=j>l?l:j;g=g+2|0;h=h+2|0;if((b|0)!=(h|0)){continue}break}}if(!d){break m}l=C(u[c+(g<<2)>>1]);i=il?l:j}z[a+88>>2]=i;z[a+84>>2]=j;z[a+32>>2]=C(i-j)*C(.5);z[a+20>>2]=C(i+j)*C(.5);v[a+92>>2]=v[a+92>>2]+1;xa=q+224|0;return 1}function Hv(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0);n=z[b+20>>2];u=z[b+24>>2];D=z[b+36>>2];M=z[b+40>>2];c=z[b+88>>2];p=z[b+56>>2];d=z[b+72>>2];i=z[b+84>>2];t=z[b+52>>2];j=z[b+68>>2];o=z[b+80>>2];w=z[b- -64>>2];e=z[b+116>>2];l=z[b+136>>2];m=z[b+100>>2];k=z[b+112>>2];g=z[b+120>>2];x=z[b+132>>2];y=z[b+104>>2];q=z[b+128>>2];h=z[b>>2];F=z[b+8>>2];G=z[b+32>>2];E=z[b+4>>2];H=z[b+16>>2];B=z[b+48>>2];f=z[b+96>>2];v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;A=C(C(h+h)*C(.5));r=C(-B);h=C(C(k+m)*C(.5));m=C(C(x+g)*C(.5));k=C(C(q+y)*C(.5));g=C(C(e+e)*C(.5));e=C(C(h*m)-C(k*g));L=e;s=C(C(l+l)*C(.5));q=C(C(g*s)-C(m*m));l=C(C(f+f)*C(.5));f=C(C(m*k)-C(s*h));e=C(C(1)/C(C(e*k)+C(C(q*l)+C(h*f))));x=C(L*e);y=C(C(C(k*h)-C(l*m))*e);I=C(C(C(l*g)-C(h*h))*e);h=C(C(C(r*x)-C(w*y))-C(o*I));J=C(q*e);q=C(f*e);m=C(C(C(r*J)-C(w*q))-C(o*x));K=C(C(C(s*l)-C(k*k))*e);k=C(C(C(r*q)-C(w*K))-C(o*y));s=C(A+C(C(o*h)+C(C(B*m)+C(w*k))));f=C(C(n+n)*C(.5));n=C(-t);e=C(C(C(n*x)-C(y*j))-C(i*I));l=C(C(C(n*J)-C(q*j))-C(i*x));n=C(C(C(n*q)-C(K*j))-C(i*y));A=C(f+C(C(i*e)+C(C(t*l)+C(j*n))));H=C(C(H+E)*C(.5));E=C(H+C(C(h*i)+C(C(m*t)+C(j*k))));N=C(C(D+u)*C(.5));D=C(N+C(C(e*c)+C(C(l*p)+C(d*n))));f=C(C(G+F)*C(.5));u=C(f+C(C(h*c)+C(C(m*p)+C(d*k))));F=C(C(E*D)-C(u*A));L=f;g=C(-p);f=C(C(C(g*x)-C(y*d))-C(c*I));r=C(C(C(g*J)-C(q*d))-C(c*x));g=C(C(C(g*q)-C(K*d))-C(c*y));G=C(L+C(C(o*f)+C(C(B*r)+C(w*g))));p=C(C(C(M+M)*C(.5))+C(C(f*c)+C(C(r*p)+C(d*g))));d=C(N+C(C(f*i)+C(C(r*t)+C(j*g))));t=C(C(A*p)-C(D*d));c=C(H+C(C(e*o)+C(C(l*B)+C(w*n))));i=C(C(d*u)-C(p*E));j=C(C(1)/C(C(F*G)+C(C(t*s)+C(c*i))));o=C(C(C(s*A)-C(E*c))*j);z[a+40>>2]=o;c=C(C(C(u*c)-C(s*D))*j);z[a+36>>2]=c;d=C(F*j);z[a+32>>2]=d;z[a+24>>2]=c;w=C(C(C(p*s)-C(G*u))*j);z[a+20>>2]=w;i=C(i*j);z[a+16>>2]=i;z[a+8>>2]=d;z[a+4>>2]=i;j=C(t*j);z[a>>2]=j;p=C(C(o*f)+C(C(d*h)+C(e*c)));z[a+88>>2]=p;t=C(C(c*f)+C(C(i*h)+C(e*w)));z[a+84>>2]=t;B=C(C(d*f)+C(C(j*h)+C(e*i)));z[a+80>>2]=B;s=C(C(o*g)+C(C(d*k)+C(n*c)));z[a+72>>2]=s;A=C(C(c*g)+C(C(i*k)+C(n*w)));z[a+68>>2]=A;u=C(C(d*g)+C(C(j*k)+C(n*i)));z[a- -64>>2]=u;o=C(C(o*r)+C(C(d*m)+C(l*c)));z[a+56>>2]=o;c=C(C(c*r)+C(C(i*m)+C(l*w)));z[a+52>>2]=c;d=C(C(d*r)+C(C(j*m)+C(l*i)));z[a+48>>2]=d;z[a+136>>2]=I+C(C(f*p)+C(C(h*B)+C(e*t)));z[a+132>>2]=y+C(C(g*p)+C(C(k*B)+C(n*t)));z[a+128>>2]=x+C(C(r*p)+C(C(m*B)+C(l*t)));z[a+120>>2]=y+C(C(f*s)+C(C(h*u)+C(e*A)));z[a+116>>2]=K+C(C(g*s)+C(C(k*u)+C(n*A)));z[a+112>>2]=q+C(C(r*s)+C(C(m*u)+C(l*A)));z[a+104>>2]=x+C(C(f*o)+C(C(h*d)+C(e*c)));z[a+100>>2]=q+C(C(g*o)+C(C(k*d)+C(n*c)));z[a+96>>2]=J+C(C(r*o)+C(C(m*d)+C(l*c)))}function ex(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=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=0,A=0,D=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=0,U=0;h=xa-128|0;xa=h;t[a+489|0]=1;p=v[a+32>>2];A=b<<5;i=p+A|0;R=v[i+8>>2];S=v[i+12>>2];D=e<<5;i=D+p|0;T=v[i+8>>2];U=v[i+12>>2];y=v[a+452>>2];i=v[a+264>>2];F=z[f>>2];G=z[f+4>>2];H=z[f+8>>2];I=z[g>>2];J=z[g+4>>2];K=z[g+8>>2];L=z[c>>2];M=z[c+4>>2];N=z[c+8>>2];O=z[d>>2];P=z[d+4>>2];Q=z[d+8>>2];j=C(-Q);z[h+120>>2]=j;k=C(-P);z[h+116>>2]=k;v[h+124>>2]=0;l=C(-O);z[h+112>>2]=l;v[h+108>>2]=0;m=C(-N);z[h+104>>2]=m;n=C(-M);z[h+100>>2]=n;o=C(-L);z[h+96>>2]=o;q=C(-K);z[h+88>>2]=q;r=C(-J);z[h+84>>2]=r;v[h+92>>2]=0;s=C(-I);z[h+80>>2]=s;v[h+76>>2]=0;u=C(-H);z[h+72>>2]=u;w=C(-G);z[h+68>>2]=w;x=C(-F);z[h+64>>2]=x;c=i+D|0;z[c>>2]=z[c>>2]-F;z[c+4>>2]=z[c+4>>2]-G;z[c+8>>2]=z[c+8>>2]-H;z[c+16>>2]=z[c+16>>2]-I;z[c+20>>2]=z[c+20>>2]-J;z[c+24>>2]=z[c+24>>2]-K;c=S&U;g=c?E(c)^63:31-E(R&T)|0;if((e|0)!=(g|0)){while(1){cx(h+32|0,v[a+396>>2]+B(e,96)|0,(B(e,160)+y|0)+120|0,v[a+384>>2]+B(e,76)|0,h- -64|0);v[h+76>>2]=0;v[h+92>>2]=0;x=z[h+32>>2];z[h+64>>2]=x;w=z[h+36>>2];z[h+68>>2]=w;u=z[h+40>>2];z[h+72>>2]=u;s=z[h+48>>2];z[h+80>>2]=s;r=z[h+52>>2];z[h+84>>2]=r;q=z[h+56>>2];z[h+88>>2]=q;e=v[((e<<5)+p|0)+24>>2];c=(e<<5)+i|0;z[c>>2]=x+z[c>>2];z[c+4>>2]=w+z[c+4>>2];z[c+8>>2]=u+z[c+8>>2];z[c+16>>2]=s+z[c+16>>2];z[c+20>>2]=r+z[c+20>>2];z[c+24>>2]=q+z[c+24>>2];if((e|0)!=(g|0)){continue}break}}c=i+A|0;z[c>>2]=z[c>>2]-L;z[c+4>>2]=z[c+4>>2]-M;z[c+8>>2]=z[c+8>>2]-N;z[c+16>>2]=z[c+16>>2]-O;z[c+20>>2]=z[c+20>>2]-P;z[c+24>>2]=z[c+24>>2]-Q;if((b|0)!=(g|0)){while(1){cx(h+32|0,v[a+396>>2]+B(b,96)|0,(B(b,160)+y|0)+120|0,v[a+384>>2]+B(b,76)|0,h+96|0);v[h+108>>2]=0;v[h+124>>2]=0;o=z[h+32>>2];z[h+96>>2]=o;n=z[h+36>>2];z[h+100>>2]=n;m=z[h+40>>2];z[h+104>>2]=m;l=z[h+48>>2];z[h+112>>2]=l;k=z[h+52>>2];z[h+116>>2]=k;j=z[h+56>>2];z[h+120>>2]=j;b=v[((b<<5)+p|0)+24>>2];c=(b<<5)+i|0;z[c>>2]=o+z[c>>2];z[c+4>>2]=n+z[c+4>>2];z[c+8>>2]=m+z[c+8>>2];z[c+16>>2]=l+z[c+16>>2];z[c+20>>2]=k+z[c+20>>2];z[c+24>>2]=j+z[c+24>>2];if((b|0)!=(g|0)){continue}break}}z[h+56>>2]=j+q;z[h+52>>2]=k+r;v[h+60>>2]=0;v[h+44>>2]=0;z[h+48>>2]=l+s;z[h+40>>2]=m+u;z[h+36>>2]=n+w;z[h+32>>2]=o+x;if(g){while(1){cx(h,v[a+396>>2]+B(g,96)|0,(B(g,160)+y|0)+120|0,v[a+384>>2]+B(g,76)|0,h+32|0);v[h+44>>2]=0;v[h+60>>2]=0;j=z[h>>2];z[h+32>>2]=j;k=z[h+4>>2];z[h+36>>2]=k;l=z[h+8>>2];z[h+40>>2]=l;m=z[h+16>>2];z[h+48>>2]=m;n=z[h+20>>2];z[h+52>>2]=n;o=z[h+24>>2];z[h+56>>2]=o;g=v[((g<<5)+p|0)+24>>2];b=(g<<5)+i|0;z[b>>2]=j+z[b>>2];z[b+4>>2]=k+z[b+4>>2];z[b+8>>2]=l+z[b+8>>2];z[b+16>>2]=m+z[b+16>>2];z[b+20>>2]=n+z[b+20>>2];z[b+24>>2]=o+z[b+24>>2];if(g){continue}break}}xa=h+128|0}function sX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),v=C(0),w=C(0),y=C(0),A=C(0);c=xa-128|0;xa=c;a:{b:{if(!(z[e>>2]!=z[e+12>>2]|z[e+4>>2]!=z[e+16>>2]|z[e+8>>2]!=z[e+20>>2])){k=z[b+4>>2];l=C(k+k);j=z[b+8>>2];o=C(l*j);m=z[b>>2];n=C(m+m);p=z[b+12>>2];q=C(n*p);z[c+92>>2]=o-q;z[c+84>>2]=o+q;m=C(C(1)-C(m*n));o=C(k*l);z[c+96>>2]=m-o;r=m;m=C(j+j);q=C(j*m);z[c+80>>2]=r-q;j=C(n*j);l=C(l*p);z[c+88>>2]=j+l;k=C(n*k);n=C(m*p);z[c+76>>2]=k-n;z[c+72>>2]=j-l;z[c+68>>2]=k+n;z[c+64>>2]=C(C(1)-o)-q;z[c+100>>2]=z[b+16>>2];z[c+104>>2]=z[b+20>>2];z[c+108>>2]=z[b+24>>2];z[c+112>>2]=z[a+4>>2];z[c+116>>2]=z[a+8>>2];z[c+120>>2]=z[a+12>>2];j=z[e+24>>2];u[c+56>>1]=x[i>>1];if(!E2(c- -64|0,j,e,f,g,h+40|0,h+28|0,c+56|0)){break b}u[h+12>>1]=2;z[h+28>>2]=-z[h+28>>2];z[h+36>>2]=-z[h+36>>2];z[h+32>>2]=-z[h+32>>2];d=1;if(!(t[i|0]&1)){break a}g=z[h+40>>2];if(g==C(0)){break a}j=z[e>>2];k=z[f>>2];n=z[e+4>>2];l=z[f+4>>2];z[c+8>>2]=C(g*z[f+8>>2])+z[e+8>>2];z[c+4>>2]=n+C(g*l);z[c>>2]=j+C(g*k);C_(c,c+100|0,c+112|0,c- -64|0,c+40|0);n=z[c+100>>2];l=z[c+88>>2];m=z[c+64>>2];p=z[c+76>>2];o=z[c+104>>2];q=z[c+92>>2];s=z[c+68>>2];v=z[c+80>>2];r=z[c+108>>2];w=z[c+96>>2];g=z[c+48>>2];y=z[c+72>>2];j=z[c+40>>2];A=z[c+84>>2];k=z[c+44>>2];u[h+12>>1]=x[h+12>>1]|1;z[h+24>>2]=r+C(C(C(j*y)+C(k*A))+C(g*w));z[h+20>>2]=o+C(C(C(j*s)+C(k*v))+C(g*q));z[h+16>>2]=n+C(C(C(j*m)+C(k*p))+C(g*l));break a}u[c+32>>1]=x[i>>1];d=0;if(!G2(e,b,a+4|0,f,g,h+16|0,h+40|0,h+28|0,c+32|0)){break a}u[h+12>>1]=2;d=1;if(!(t[i|0]&1)){break a}g=z[h+40>>2];if(g==C(0)){break a}j=z[e+16>>2];k=z[e+20>>2];n=z[e>>2];l=z[e+4>>2];m=z[e+8>>2];p=z[e+12>>2];z[c+24>>2]=z[e+24>>2];o=z[f>>2];q=z[f+4>>2];r=k;k=C(g*z[f+8>>2]);z[c+20>>2]=r+k;r=j;j=C(g*q);z[c+16>>2]=r+j;g=C(g*o);z[c+12>>2]=p+g;z[c+8>>2]=m+k;z[c+4>>2]=l+j;z[c>>2]=n+g;j=z[b+4>>2];n=C(j+j);g=z[b+8>>2];p=C(n*g);l=z[b>>2];k=C(l+l);m=z[b+12>>2];o=C(k*m);z[c+92>>2]=p-o;z[c+84>>2]=p+o;l=C(C(1)-C(l*k));p=C(j*n);z[c+96>>2]=l-p;r=l;l=C(g+g);o=C(g*l);z[c+80>>2]=r-o;g=C(k*g);n=C(n*m);z[c+88>>2]=g+n;j=C(k*j);k=C(l*m);z[c+76>>2]=j-k;z[c+72>>2]=g-n;z[c+68>>2]=j+k;z[c+64>>2]=C(C(1)-p)-o;z[c+100>>2]=z[b+16>>2];z[c+104>>2]=z[b+20>>2];z[c+108>>2]=z[b+24>>2];z[c+112>>2]=z[a+4>>2];z[c+116>>2]=z[a+8>>2];z[c+120>>2]=z[a+12>>2];F_(c,c+12|0,c+100|0,c+112|0,c- -64|0,0,c+40|0);s=z[b+20>>2];o=z[b+24>>2];v=z[b+16>>2];j=z[b+8>>2];g=z[b+12>>2];k=z[b>>2];n=z[b+4>>2];l=z[c+48>>2];p=z[c+44>>2];m=z[c+40>>2];u[h+12>>1]=x[h+12>>1]|1;r=o;l=C(l+l);m=C(m+m);p=C(p+p);o=C(C(j*l)+C(C(k*m)+C(n*p)));q=C(C(g*g)+C(-.5));z[h+24>>2]=r+C(C(j*o)+C(C(l*q)+C(g*C(C(k*p)-C(m*n)))));z[h+20>>2]=s+C(C(n*o)+C(C(p*q)+C(g*C(C(j*m)-C(l*k)))));z[h+16>>2]=v+C(C(k*o)+C(C(m*q)+C(g*C(C(n*l)-C(p*j)))));break a}d=0}xa=c+128|0;return d|0}function OR(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,y=0,z=0,A=0,C=0;a:{l=v[a+48>>2];b:{if(!l){break b}q=v[v[a+4>>2]+40>>2];o=v[q+2168>>2];h=v[l+16>>2];c:{if(h){break c}i=IJ(o);v[l+16>>2]=i;if(!i){h=0;break c}j=v[l+8>>2];v[i+16>>2]=v[j+48>>2];v[i+20>>2]=v[v[l+12>>2]+48>>2];j=v[j+44>>2];v[i+24>>2]=v[((w[j+9|0]<<2)+149664|0)+40>>2]+j;j=i;i=v[v[l+12>>2]+44>>2];v[j+28>>2]=v[((w[i+9|0]<<2)+149664|0)+40>>2]+i;h=v[l+16>>2]}y=v[q+1092>>2];i=v[h+12>>2];n=v[a+44>>2];z=v[a+32>>2];A=v[l+8>>2];s=v[a+28>>2];C=v[s+4>>2];j=v[q+1088>>2];v[h+12>>2]=j;r=n&28672;d:{e:{f:{g:{if((i|0)!=(j|0)){i=x[h+4>>1];if(!i){u[h+4>>1]=2;i=2}j=x[h+10>>1];h:{if(!(d?0:r)){u[h+10>>1]=j&31;i=GJ(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){u[h+10>>1]=j&31|(k>>>4|0)+((k&15)!=0)<<5;i=GJ(o,i,k,h);break f}i=GJ(o,i,p,h);if(p){break f}}u[h+6>>1]=0;u[h+8>>1]=0;u[h+10>>1]=x[h+10>>1]&65504;break g}p=x[h+6>>1];if(!p){break a}j=v[o+44>>2]+v[h>>2]|0;i:{if(d|!r){break i}k=x[h+8>>1];if(((k?x[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>(x[h+10>>1]>>>1&32752)>>>0){i=x[h+4>>1];i=HJ(o,(i>>>0<=p>>>0)+i|0,m,h)}if(i){PR(h,i,r,v[l+8>>2],v[l+12>>2],e,f,p,k?k:4);if((n&10240)==10240){break e}break d}u[h+10>>1]=x[h+10>>1]|4}i=j}if(!i){break a}break d}if(!i){break a}u[h+6>>1]=0;u[h+8>>1]=0;u[h+10>>1]=x[h+10>>1]&65504;PR(h,i,r,v[l+8>>2],v[l+12>>2],e,f,0,4);if((n&10240)!=10240){break d}}t[q+4620|0]=1}b=e?b|32:b;j=x[h+10>>1]>>>1&32752;f=j+i|0;j:{if(v[a+40>>2]!=(y|0)){i=x[h+6>>1];k:{if(i>>>0>1]){f=f+B(i,40)|0;break k}d=HJ(o,((i>>>1|0)+i|0)+1|0,j,h);f=x[h+10>>1];if(!d){u[h+10>>1]=f|4;return}i=x[h+6>>1];f=(d+(f>>>1&32752)|0)+B(i,40)|0}u[a+64>>1]=i;d=(A|0)==(C|0);i=d?s:z;v[f>>2]=v[37419]+v[i+28>>2];d=d?z:s;j=v[37419]+v[d+28>>2]|0;v[f+8>>2]=0;v[f+12>>2]=0;v[f+4>>2]=j;v[f+16>>2]=0;v[f+20>>2]=0;v[f+24>>2]=0;u[f+30>>1]=b;u[f+28>>1]=c;v[f+32>>2]=v[i+32>>2];v[f+36>>2]=v[d+32>>2];u[h+6>>1]=x[h+6>>1]+1;v[a+40>>2]=y;break j}f=f+B(x[a+64>>1],40)|0;u[f+28>>1]=x[f+28>>1]|c;c=b|x[f+30>>1];u[f+30>>1]=d?c&8?c&65527:c:c}if(!(w[a+45|0]&2)){break b}d=v[a+56>>2];if(v[f+8>>2]|(!d|b&272)){break b}b=v[d+68>>2];l:{if((b|0)<0){a=v[v[v[v[a+4>>2]+40>>2]+976>>2]+1024>>2];c=Ba[v[v[a>>2]+80>>2]](a,b)|0;break l}c=v[g+32>>2]+(v[((b&7)<<2)+g>>2]+(b>>>3|0)<<4)|0}d=v[d+32>>2];a=w[c+13|0];if(a?e:1){if(x[d+6>>1]|(!d|!e)){break b}}m:{if(!e){h=v[c+8>>2];i=v[c+4>>2];b=v[c>>2];c=w[c+12|0];e=B(a,48)+(c<<4)|0;d=e;break m}i=d- -64|0;b=d+16|0;a=x[d+4>>1];e=a-16|0;a=a+15&131056;h=a+d|0;d=a-16|0;c=1;a=1}u[f+26>>1]=e;t[f+25|0]=a;t[f+24|0]=c;v[f+12>>2]=i;v[f+8>>2]=b;v[f+16>>2]=h;a=h?c<<2:0;v[f+20>>2]=a+d;b=x[f+28>>1]|((A|0)!=(C|0))<<5;u[f+28>>1]=a?b|16:b}return}u[h+10>>1]=x[h+10>>1]|2}function AM(a){a=a|0;var b=0,c=0;v[a>>2]=132404;b=v[a+508>>2];a:{if(!b){break a}c=v[b+12>>2];b:{if((c|0)<0|!(c&2147483647)){break b}c=v[b+4>>2];if(!c){break b}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+508>>2];if(!b){break a}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+508>>2]=0;b=v[a+512>>2];c:{if(!b){break c}c=v[b+12>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=v[b+4>>2];if(!c){break d}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+512>>2];if(!b){break c}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+512>>2]=0;b=v[a+560>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+552>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+548>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+540>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+536>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+528>>2];if(!b){break g}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+524>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[a+516>>2];if(!b){break h}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+504>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=v[a+496>>2];if(!b){break i}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+492>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=v[a+484>>2];if(!b){break j}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+480>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=v[a+472>>2];if(!b){break k}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+468>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=v[a+460>>2];if(!b){break l}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+456>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=v[a+448>>2];if(!b){break m}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+444>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=v[a+436>>2];if(!b){break n}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+432>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=v[a+424>>2];if(!b){break o}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+420>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=v[a+412>>2];if(!b){break p}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+408>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=v[a+400>>2];if(!b){break q}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+396>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=v[a+388>>2];if(!b){break r}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+384>>2];s:{if((b|0)<0|!(b&2147483647)){break s}b=v[a+376>>2];if(!b){break s}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}c=v[a+368>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}if(b){while(1){b=Xy(b);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0);c=v[a+368>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}if(b){continue}break}}b=v[a+368>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return Yy(a)|0}function JX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,w=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0);a=xa-112|0;xa=a;v[h+8>>2]=-1;AV(a+96|0,b);z[a+108>>2]=z[a+108>>2]-j;EV(a,e+36|0,e+48|0,e,e+12|0,e+24|0);j=z[a+104>>2];k=z[a+96>>2];l=z[a+100>>2];p=C(C(z[a+92>>2]*j)+C(C(z[a+84>>2]*k)+C(z[a+88>>2]*l)));m=C(C(z[a+20>>2]*j)+C(C(z[a+12>>2]*k)+C(z[a+16>>2]*l)));n=C(C(z[a+8>>2]*j)+C(C(z[a>>2]*k)+C(z[a+4>>2]*l)));n=n>2]*j)+C(C(z[a+24>>2]*k)+C(z[a+28>>2]*l)));m=b?m:n;c=o>2]*j)+C(C(z[a+36>>2]*k)+C(z[a+40>>2]*l)));m=c?o:m;d=n>2]*j)+C(C(z[a+48>>2]*k)+C(z[a+52>>2]*l)));m=d?n:m;s=o>2]*j)+C(C(z[a+60>>2]*k)+C(z[a- -64>>2]*l)));m=s?o:m;t=n>2]*j)+C(C(z[a+72>>2]*k)+C(z[a+76>>2]*l)));l=t?n:m;I=kp;k=J?p:k;a:{b:{c:{i=x[i>>1];if(i&512){if(!(k<=C(-z[a+108>>2]))){break c}u[h+12>>1]=3;b=xa-96|0;xa=b;EV(b,e+36|0,e+48|0,e,e+12|0,e+24|0);p=z[b+92>>2];m=z[b+88>>2];n=z[b+80>>2];o=z[b+76>>2];q=z[b+68>>2];r=z[b- -64>>2];w=z[b+56>>2];y=z[b+52>>2];A=z[b+44>>2];D=z[b+40>>2];E=z[b+32>>2];F=z[b+28>>2];k=z[a+108>>2];G=z[b+20>>2];H=z[b+16>>2];g=z[a+96>>2];j=z[a+100>>2];K=z[b+84>>2];L=z[b+72>>2];M=z[b+60>>2];N=z[b+48>>2];O=z[b+36>>2];P=z[b+24>>2];Q=z[b+8>>2];R=z[b>>2];S=z[b+4>>2];T=z[b+12>>2];l=z[a+104>>2];z[h+36>>2]=l;z[h+32>>2]=j;z[h+28>>2]=g;G=C(k+C(C(G*l)+C(C(T*g)+C(j*H))));H=C(k+C(C(Q*l)+C(C(R*g)+C(S*j))));c=G>2]=g;c=b+B(t?7:s?6:i?5:f?4:e?3:d?2:c,12)|0;j=z[c>>2];k=z[c+4>>2];l=z[a+96>>2];p=z[a+100>>2];z[h+24>>2]=z[c+8>>2]-C(g*z[a+104>>2]);z[h+20>>2]=k-C(g*p);z[h+16>>2]=j-C(g*l);xa=b+96|0;e=1;break a}if(!(k<=C(-z[a+108>>2]))|i&16){break c}v[h+40>>2]=0;u[h+12>>1]=2;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break b}e=0;l=z[a+96>>2];p=z[a+100>>2];k=C(C(z[f+8>>2]*j)+C(C(z[f>>2]*l)+C(z[f+4>>2]*p)));if(k>C(-1.0000000116860974e-7)&k>2];n=z[b>>2];o=z[b+4>>2];k=C(C(-C(z[a+108>>2]+C(C(m*j)+C(C(n*l)+C(p*o)))))/k);z[h+40>>2]=k;q=z[f>>2];r=z[f+4>>2];z[h+24>>2]=m+C(k*z[f+8>>2]);z[h+20>>2]=o+C(k*r);z[h+16>>2]=n+C(q*k);if(!(k>C(0))|!(g>=k)){break a}z[h+28>>2]=l;u[h+12>>1]=3;z[h+36>>2]=j;z[h+32>>2]=p}e=1}xa=a+112|0;return e|0}function iE(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=xa-16|0;xa=i;v[i+8>>2]=b;a:{if(!v[a+684>>2]){break a}c=(b<<15^-1)+b|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[v[a+660>>2]+((v[a+668>>2]-1&(c>>>16^c))<<2)>>2];if((d|0)==-1){break a}g=a+648|0;h=v[a+656>>2];c=v[a+652>>2];while(1){if(v[c+(d<<3)>>2]!=(b|0)){d=v[h+(d<<2)>>2];if((d|0)!=-1){continue}break a}break}h=v[(c+(d<<3)|0)+4>>2];d=h;c=B(d,44);HC(v[c+v[a+644>>2]>>2]);FC(v[c+v[a+644>>2]>>2]);b=v[a+644>>2];e=v[b+c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);b=v[a+644>>2]}b=b+c|0;v[b>>2]=0;b=v[b+8>>2];v[b+4>>2]=0;c=v[b+8>>2];b:{c:{if((c|0)<0|!(c&2147483647)){break c}c=v[b>>2];if(!c){break c}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c);c=v[a+644>>2];b=v[(c+B(d,44)|0)+8>>2];if(!b){break b}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);c=v[a+644>>2]}b=c;c=B(d,44);b=b+c|0;v[b+8>>2]=0;dC(v[b+4>>2]);b=v[a+644>>2];e=v[(c+b|0)+4>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);b=v[a+644>>2]}v[(b+c|0)+4>>2]=0;c=v[a+632>>2]-1|0;v[a+632>>2]=c;if((c|0)!=(d|0)){f=v[a+640>>2];e=f+B(d,24)|0;f=f+B(c,24)|0;z[e>>2]=z[f>>2];z[e+4>>2]=z[f+4>>2];z[e+8>>2]=z[f+8>>2];z[e+12>>2]=z[f+12>>2];z[e+16>>2]=z[f+16>>2];z[e+20>>2]=z[f+20>>2];d=B(d,44)+b|0;e=B(c,44);b=e+b|0;v[d+8>>2]=v[b+8>>2];f=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=f;z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];z[d+24>>2]=z[b+24>>2];z[d+28>>2]=z[b+28>>2];z[d+32>>2]=z[b+32>>2];z[d+36>>2]=z[b+36>>2];v[d+40>>2]=v[b+40>>2];b=e+v[a+644>>2]|0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0}f=a+4|0;e=RC(f,v[v[a+620>>2]+(h<<2)>>2],h,v[a+640>>2]);d:{if(!e|v[e+40>>2]){break d}b=v[e+36>>2];if(!v[b>>2]){break d}d=0;while(1){v[v[a+620>>2]+(v[((d<<2)+b|0)+4>>2]<<2)>>2]=e;d=d+1|0;b=v[e+36>>2];if(d>>>0>2]){continue}break}}if((c|0)!=(h|0)){b=v[a+620>>2];d=h<<2;e=c<<2;v[b+d>>2]=v[e+b>>2];SC(v[d+v[a+620>>2]>>2],c,h);c=e+v[a+688>>2]|0;b=aD(g,c,i+15|0);if(!w[i+15|0]){c=v[c>>2];v[b+4>>2]=0;v[b>>2]=c}v[b+4>>2]=h;a=v[a+688>>2];v[a+d>>2]=v[a+e>>2]}e:{if(!v[g+36>>2]){break e}f=v[g+12>>2];b=v[i+8>>2];a=(b<<15^-1)+b|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;c=f+((v[g+20>>2]-1&(a>>>16^a))<<2)|0;a=v[c>>2];if((a|0)==-1){break e}h=v[g+8>>2];e=v[g+4>>2];d=e+(a<<3)|0;if((b|0)!=v[d>>2]){while(1){c=h+(a<<2)|0;a=v[c>>2];if((a|0)==-1){break e}d=e+(a<<3)|0;if((b|0)!=v[d>>2]){continue}break}}b=c;c=h+(a<<2)|0;v[b>>2]=v[c>>2];b=v[g+36>>2]-1|0;v[g+36>>2]=b;v[g+32>>2]=v[g+32>>2]+1;if((a|0)!=(b|0)){j=e+(b<<3)|0;v[d>>2]=v[j>>2];v[(e+(a<<3)|0)+4>>2]=v[j+4>>2];v[c>>2]=v[h+(b<<2)>>2];b=v[d>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=f+((v[g+20>>2]-1&(b>>>16^b))<<2)|0;b=v[c>>2];d=v[g+36>>2];if((b|0)!=(d|0)){while(1){c=h+(b<<2)|0;b=v[c>>2];if((d|0)!=(b|0)){continue}break}}v[c>>2]=a}v[g+28>>2]=v[g+28>>2]-1}}xa=i+16|0}function Nx(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0);N=C(C(z[b+56>>2]+z[b- -64>>2])*C(.5));s=C(C(z[b+44>>2]+z[b+60>>2])*C(.5));O=C(C(z[b+40>>2]+z[b+48>>2])*C(.5));c=z[b+36>>2];Q=C(C(c+c)*C(.5));c=z[b+68>>2];R=C(C(c+c)*C(.5));c=z[b+52>>2];u=C(C(c+c)*C(.5));i=z[b+32>>2];l=z[b+28>>2];y=z[b+20>>2];G=z[b+16>>2];p=z[b+24>>2];H=z[b+12>>2];m=z[b+8>>2];g=z[b+4>>2];v=z[b>>2];A=C(1);B=C(1);c=C(0);D=C(1);E=C(1);e=C(C(z[b+76>>2]+z[b+84>>2])*C(.5));n=C(C(z[b+92>>2]+z[b+100>>2])*C(.5));f=C(C(z[b+80>>2]+z[b+96>>2])*C(.5));d=z[b+88>>2];h=C(C(d+d)*C(.5));t=C(C(e*n)-C(f*h));d=z[b+104>>2];q=C(C(d+d)*C(.5));j=C(C(h*q)-C(n*n));d=z[b+72>>2];d=C(C(d+d)*C(.5));k=C(C(n*f)-C(q*e));r=C(C(t*f)+C(C(j*d)+C(e*k)));if(r!=C(0)){c=C(C(1)/r);E=C(C(C(d*h)+C(e*C(-e)))*c);w=C(C(C(f*e)+C(d*C(-n)))*c);D=C(C(C(q*d)-C(f*f))*c);x=C(t*c);B=C(j*c);c=C(k*c)}e=C(0);r=C(1);f=C(0);F=C(1);h=C(-H);n=C(C(C(c*h)-C(v*B))-C(p*x));d=C(C(C(D*h)-C(v*c))-C(p*w));h=C(C(C(w*h)-C(v*x))-C(p*E));K=C(O+C(C(C(g*n)+C(G*d))+C(l*h)));j=C(-G);q=C(C(C(c*j)-C(g*B))-C(l*x));t=C(C(C(D*j)-C(g*c))-C(l*w));j=C(C(C(w*j)-C(g*x))-C(l*E));L=C(N+C(C(C(m*q)+C(y*t))+C(i*j)));I=C(s+C(C(C(m*n)+C(y*d))+C(i*h)));M=C(u+C(C(C(g*q)+C(G*t))+C(l*j)));P=C(C(K*L)-C(I*M));J=s;k=C(-y);s=C(C(C(c*k)-C(m*B))-C(i*x));u=C(C(C(D*k)-C(m*c))-C(i*w));k=C(C(C(w*k)-C(m*x))-C(i*E));J=C(J+C(C(C(v*s)+C(H*u))+C(p*k)));m=C(R+C(C(C(m*s)+C(y*u))+C(i*k)));g=C(N+C(C(C(g*s)+C(G*u))+C(l*k)));y=C(C(M*m)-C(L*g));i=C(Q+C(C(C(v*n)+C(H*d))+C(p*h)));l=C(O+C(C(C(v*q)+C(H*t))+C(p*j)));p=C(C(g*I)-C(m*K));g=C(C(P*J)+C(C(y*i)+C(l*p)));if(g!=C(0)){o=C(C(1)/g);F=C(C(C(i*M)-C(K*l))*o);f=C(C(C(I*l)-C(i*L))*o);r=C(C(C(m*i)-C(J*I))*o);e=C(P*o);A=C(y*o);o=C(p*o)}z[a+72>>2]=A;z[a+104>>2]=F;z[a+100>>2]=f;z[a+96>>2]=e;z[a+92>>2]=f;z[a+88>>2]=r;z[a+84>>2]=o;z[a+80>>2]=e;z[a+76>>2]=o;i=C(C(C(h*e)+C(j*f))+C(k*F));z[a+32>>2]=i;l=C(C(C(d*e)+C(t*f))+C(u*F));z[a+28>>2]=l;p=C(C(C(n*e)+C(q*f))+C(s*F));z[a+24>>2]=p;m=C(C(C(h*o)+C(j*r))+C(k*f));z[a+20>>2]=m;g=C(C(C(d*o)+C(t*r))+C(u*f));z[a+16>>2]=g;f=C(C(C(n*o)+C(q*r))+C(s*f));z[a+12>>2]=f;v=C(C(C(h*A)+C(j*o))+C(k*e));z[a+8>>2]=v;r=C(C(C(d*A)+C(t*o))+C(u*e));z[a+4>>2]=r;e=C(C(C(n*A)+C(q*o))+C(s*e));z[a>>2]=e;z[a+68>>2]=E+C(C(C(h*v)+C(j*m))+C(k*i));z[a- -64>>2]=w+C(C(C(d*v)+C(t*m))+C(u*i));z[a+60>>2]=x+C(C(C(n*v)+C(q*m))+C(s*i));z[a+56>>2]=w+C(C(C(h*r)+C(j*g))+C(k*l));z[a+52>>2]=D+C(C(C(d*r)+C(t*g))+C(u*l));z[a+48>>2]=c+C(C(C(n*r)+C(q*g))+C(s*l));z[a+44>>2]=x+C(C(C(h*e)+C(j*f))+C(k*p));z[a+40>>2]=c+C(C(C(d*e)+C(t*f))+C(u*p));z[a+36>>2]=B+C(C(C(n*e)+C(q*f))+C(s*p))}function Wy(a){a=a|0;var b=0,c=0;v[a>>2]=128184;b=v[a+484>>2];Ba[v[v[b>>2]>>2]](b);b=v[a+488>>2];Ba[v[v[b>>2]>>2]](b);b=v[a+492>>2];Ba[v[v[b>>2]>>2]](b);b=v[a+464>>2];a:{if(!b){break a}c=v[b+12>>2];b:{if((c|0)<0|!(c&2147483647)){break b}c=v[b+4>>2];if(!c){break b}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+464>>2];if(!b){break a}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+464>>2]=0;b=v[a+468>>2];c:{if(!b){break c}c=v[b+12>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=v[b+4>>2];if(!c){break d}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+468>>2];if(!b){break c}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+468>>2]=0;b=v[a+528>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+520>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+516>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+508>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+504>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+496>>2];if(!b){break g}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+480>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[a+472>>2];if(!b){break h}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+460>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=v[a+452>>2];if(!b){break i}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+448>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=v[a+440>>2];if(!b){break j}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+436>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=v[a+428>>2];if(!b){break k}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+424>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=v[a+416>>2];if(!b){break l}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+412>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=v[a+404>>2];if(!b){break m}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+400>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=v[a+392>>2];if(!b){break n}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+388>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=v[a+380>>2];if(!b){break o}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+376>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=v[a+368>>2];if(!b){break p}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+364>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=v[a+356>>2];if(!b){break q}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+352>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=v[a+344>>2];if(!b){break r}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}c=v[a+336>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}if(b){while(1){b=Xy(b);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0);c=v[a+336>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}if(b){continue}break}}b=v[a+336>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return Yy(a)|0}function FQ(a){a=a|0;var b=0,c=0,d=C(0),e=0,f=0,g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=0,A=C(0),D=C(0),E=C(0),F=C(0),H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0);if(v[a+36>>2]){while(1){F=z[a+40>>2];g=0;p=C(0);H=0;i=xa-32|0;xa=i;f=v[v[(v[v[a+28>>2]+16>>2]+B(v[v[a+32>>2]+(I<<2)>>2]>>>7|0,24)|0)+20>>2]+16>>2];a:{if(!v[f+28>>2]|y[v[v[f+24>>2]>>2]+152>>2]>4294967293){break a}b=v[f+8>>2];b:{if(v[f+16>>2]){O=z[b+24>>2];A=C(34028234663852886e22);while(1){b=v[f>>2];Ba[v[v[b>>2]+180>>2]](i,b,g);c=v[v[f+24>>2]+(g<<2)>>2];d=z[c+136>>2];q=z[c+132>>2];r=z[c+128>>2];s=z[c+120>>2];t=z[c+116>>2];u=z[c+112>>2];c:{d:{b=v[c+44>>2];D=z[b+156>>2];if(!(DD)){break d}j=z[b+28>>2];k=z[i+20>>2];l=z[i+24>>2];m=z[b+16>>2];n=z[b+24>>2];o=z[i+16>>2];E=z[b+20>>2];e=v[b+176>>2];e:{if(!(!e|w[e+31|0]!=1)){e=e+32|0;break e}e=b+128|0}K=z[e+4>>2];L=z[e>>2];M=z[e+8>>2];s=C(s+z[i+8>>2]);u=C(u+z[i>>2]);t=C(t+z[i+4>>2]);P=C(C(s*s)+C(C(u*u)+C(t*t)));e=v[b+176>>2];f:{if(!(!e|w[e+31|0]!=1)){h=z[e+44>>2];break f}h=z[b+140>>2]}Q=h==C(0)?C(1):h;h=C(l+l);l=C(o+o);k=C(k+k);o=C(C(n*h)+C(C(m*l)+C(E*k)));J=C(C(j*j)+C(-.5));d=C(d+C(C(n*o)+C(C(h*J)-C(j*C(C(m*k)-C(l*E))))));r=C(r+C(C(m*o)+C(C(l*J)-C(j*C(C(E*h)-C(k*n))))));q=C(q+C(C(E*o)+C(C(k*J)-C(j*C(C(n*l)-C(h*m))))));m=C(C(P+C(Q*C(C(C(d*d)*(M>C(0)?C(C(1)/M):C(1)))+C(C(C(r*r)*(L>C(0)?C(C(1)/L):C(1)))+C((K>C(0)?C(C(1)/K):C(1))*C(q*q))))))*C(.5));n=C(v[v[c+100>>2]+148>>2]+1>>>0);j=C(n*O);if(!(m>=j)){break d}v[c+136>>2]=0;v[c+128>>2]=0;v[c+132>>2]=0;v[c+120>>2]=0;v[c+112>>2]=0;v[c+116>>2]=0;if(j!=C(0)){d=C(m/j);h=C((d>2]=d;if(D!=C(0)){break c}bG(v[v[c+40>>2]+1e3>>2],v[c+144>>2]);break c}z[c+136>>2]=d;z[c+132>>2]=q;z[c+128>>2]=r;z[c+120>>2]=s;z[c+116>>2]=t;z[c+112>>2]=u;d=C(D-F);d=d>C(0)?d:C(0);z[b+156>>2]=d}A=d>A?A:d;p=d>2];if(g>>>0>>0){continue}break}z[v[f+8>>2]+32>>2]=p;if(p==C(0)){if(!b){break b}g=0;while(1){b=g<<2;lH(v[b+v[f+24>>2]>>2]);b=v[b+v[f+24>>2]>>2];v[b+136>>2]=0;v[b+128>>2]=0;v[b+132>>2]=0;v[b+120>>2]=0;v[b+112>>2]=0;v[b+116>>2]=0;g=g+1|0;if(g>>>0>2]){continue}break}break b}if(!b|A!=C(0)){break a}c=v[f+24>>2];e=0;if((b|0)!=1){g=b&-2;while(1){x=e<<2;N=v[v[x+c>>2]+44>>2];z[N+156>>2]=G(z[N+156>>2],C(9.999999974752427e-7));x=v[v[c+(x|4)>>2]+44>>2];z[x+156>>2]=G(z[x+156>>2],C(9.999999974752427e-7));e=e+2|0;H=H+2|0;if((g|0)!=(H|0)){continue}break}}if(!(b&1)){break a}b=v[v[c+(e<<2)>>2]+44>>2];z[b+156>>2]=G(z[b+156>>2],C(9.999999974752427e-7));break a}v[b+32>>2]=0}cG(v[v[f+4>>2]+1e3>>2],v[f+48>>2])}xa=i+32|0;uG(f,0);I=I+1|0;if(I>>>0>2]){continue}break}}}function U$(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0;s=z[e+4>>2];r=z[c+4>>2];t=z[d+4>>2];J=z[e>>2];k=z[c>>2];L=z[d>>2];M=z[e+8>>2];l=z[c+8>>2];h=z[b+48>>2];N=z[d+8>>2];i=z[b+44>>2];c=xa-32|0;v[c+24>>2]=v[b+8>>2];d=v[b+4>>2];v[c+16>>2]=v[b>>2];v[c+20>>2]=d;Q=z[b+40>>2];v[c+8>>2]=v[b+60>>2];d=v[b+56>>2];v[c>>2]=v[b+52>>2];v[c+4>>2]=d;d=v[a+20>>2];O=z[d+4>>2];G=z[d+8>>2];P=z[d>>2];e=v[a+24>>2];x=z[e+4>>2];y=z[e>>2];A=z[e+12>>2];H=C(C(A*A)+C(-.5));B=z[e+8>>2];a:{if(!(w[a+32|0]&2)){f=1033;n=i;q=h;break a}n=C(L-k);o=C(s-r);p=C(J-k);m=C(t-r);q=C(C(n*o)-C(p*m));j=C(N-l);I=C(j*p);p=C(M-l);n=C(I-C(p*n));m=C(C(m*p)-C(o*j));b=v[a+28>>2];b:{c:{if(b){o=C(C(z[b+8>>2]*q)+C(C(z[b>>2]*m)+C(n*z[b+4>>2])));p=C(C(z[b+32>>2]*q)+C(C(z[b+24>>2]*m)+C(n*z[b+28>>2])));m=C(C(z[b+20>>2]*q)+C(C(z[b+12>>2]*m)+C(n*z[b+16>>2])));if(!(C(C(P*O)*G)C(0)){j=C(C(1)/j);p=C(p*j);m=C(m*j);o=C(o*j)}f=1035;if(!w[a+40|0]){break a}b=v[a+36>>2];if(!(C(C(p*z[b+8>>2])+C(C(o*z[b>>2])+C(m*z[b+4>>2])))>C(0))){break a}p=C(-p);m=C(-m);o=C(-o)}g=v[a+16>>2];b=v[a+12>>2];if((g|0)!=(b|0)){j=z[d+12>>2];D=z[d+20>>2];E=z[d+24>>2];F=z[d+16>>2];R=z[e+24>>2];S=z[e+20>>2];T=z[e+16>>2];U=z[a+44>>2];v[a+12>>2]=b+1;d=v[c+24>>2];e=v[c+20>>2];V=v[c+16>>2];a=v[a+8>>2]+(b<<6)|0;u[a+12>>1]=f;I=G;G=C(C(C(1)-i)-h);l=C(C(C(G*l)+C(i*N))+C(h*M));l=C(l+l);k=C(C(C(k*G)+C(i*L))+C(h*J));k=C(k+k);h=C(C(C(G*r)+C(i*t))+C(h*s));i=C(h+h);t=C(C(D*l)+C(C(j*k)+C(F*i)));h=C(C(E*E)+C(-.5));r=C(I*C(C(D*t)+C(C(l*h)+C(E*C(C(j*i)-C(k*F))))));r=C(r+r);s=C(P*C(C(j*t)+C(C(k*h)+C(E*C(C(F*l)-C(i*D))))));s=C(s+s);i=C(O*C(C(F*t)+C(C(i*h)+C(E*C(C(D*k)-C(l*j))))));i=C(i+i);t=C(C(D*r)+C(C(j*s)+C(F*i)));k=C(C(D*t)+C(C(r*h)-C(E*C(C(j*i)-C(s*F)))));k=C(k+k);l=C(C(j*t)+C(C(s*h)-C(E*C(C(F*r)-C(i*D)))));l=C(l+l);h=C(C(F*t)+C(C(i*h)-C(E*C(C(D*s)-C(r*j)))));h=C(h+h);i=C(C(B*k)+C(C(y*l)+C(x*h)));z[a+16>>2]=T+C(C(y*i)+C(C(l*H)+C(A*C(C(x*k)-C(h*B)))));z[a+20>>2]=S+C(C(x*i)+C(C(h*H)+C(A*C(C(B*l)-C(k*y)))));z[a+24>>2]=R+C(C(B*i)+C(C(k*H)+C(A*C(C(y*h)-C(l*x)))));z[a+28>>2]=o;z[a+32>>2]=m;z[a+36>>2]=p;z[a+40>>2]=Q*U;z[a+44>>2]=n;z[a+48>>2]=q;v[a+8>>2]=d;v[a>>2]=V;v[a+4>>2]=e;d=v[c+4>>2];v[a+52>>2]=v[c>>2];v[a+56>>2]=d;v[a+60>>2]=v[c+8>>2]}return(b|0)!=(g|0)|0}function zn(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;l=xa-16|0;xa=l;m=v[37389];a=v[m+2152>>2];if(!a){n=xa-16|0;xa=n;i=m+1864|0;b=v[i+284>>2];if(b){a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?28767:63804;j=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,18373,180)|0}else{j=0}v[n+12>>2]=j;a=v[i+268>>2];a:{if(a>>>0>=(v[i+272>>2]&2147483647)>>>0){a=0;g=i+4|0;b=v[g+268>>2];o=b&2147483647?b<<1:1;b:{if(!o){break b}b=o<<2;if(!(w[g+256|0]|b>>>0>256)){t[g+256|0]=1;a=g;break b}if(!b){break b}a=v[37696];k=Ba[v[v[a>>2]+20>>2]](a)|0?28767:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,k,16608,553)|0}k=v[g+264>>2];q=(k<<2)+a|0;if((k|0)>0){p=v[g+260>>2];b=a;while(1){v[b>>2]=v[p>>2];p=p+4|0;b=b+4|0;if(q>>>0>b>>>0){continue}break}}v[q>>2]=v[n+12>>2];c:{if(v[g+268>>2]<0){break c}b=v[g+260>>2];if((b|0)==(g|0)){t[g+256|0]=0;break c}if(!b){break c}k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,b);k=v[g+264>>2]}v[g+268>>2]=o;v[g+260>>2]=a;v[g+264>>2]=k+1;break a}v[v[i+264>>2]+(a<<2)>>2]=j;v[i+268>>2]=a+1}a=(B(v[i+276>>2],124)+j|0)-124|0;if(j>>>0<=a>>>0){b=v[i+288>>2];while(1){v[a>>2]=b;b=a;a=a-124|0;if(j>>>0<=a>>>0){continue}break}v[i+288>>2]=b}xa=n+16|0;a=v[m+2152>>2]}v[m+2152>>2]=v[a>>2];b=m+2144|0;v[b>>2]=v[b>>2]+1;g=xa-48|0;xa=g;v[a+12>>2]=c;v[a+8>>2]=h;v[a+4>>2]=65545;v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a>>2]=118004;b=a+28|0;v[b+4>>2]=0;v[b+8>>2]=0;u[b>>1]=32;v[b+28>>2]=d;v[b+12>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+24>>2]=0;v[b+32>>2]=v[e+4>>2];v[b+36>>2]=v[e>>2];d=v[e+8>>2];v[b+56>>2]=0;v[b+60>>2]=0;v[b+48>>2]=2139095039;v[b+52>>2]=2139095039;v[b+44>>2]=f;v[b+40>>2]=d;u[a+116>>1]=0;v[a+108>>2]=0;v[a+112>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;t[a+120|0]=1;j=v[a+20>>2];v[a+20>>2]=j&-251658241|100663296;d=a+16|0;f=v[e+12>>2];d:{e:{f:{switch((j>>>30|0)-2|0){case 0:if(w[v[d>>2]+4785|0]){break e}break;case 1:break e;default:break f}}u[g+8>>1]=f;uH(b,g+8|0);break d}e=v[a+24>>2];if(!e){e=Pu(v[a+16>>2],6);v[a+24>>2]=e}u[e+16>>1]=f;Xu(v[a+16>>2],d);v[a+20>>2]=v[a+20>>2]|4}g:{h:{i:{if(!h){if(!c){break g}e=0;kh(v[(x[c+4>>1]<<2)+86240>>2]+c|0,0,a);break i}e=0;kh(v[(x[h+4>>1]<<2)+86240>>2]+h|0,0,a);if(!c){Ba[v[v[h>>2]+52>>2]](g+16|0,h);if(!(w[g+16|0]&8)){e=Ba[v[v[h>>2]+28>>2]](h)|0}if(e|!h){break h}break g}kh(v[(x[c+4>>1]<<2)+86240>>2]+c|0,0,a);Ba[v[v[h>>2]+52>>2]](g+32|0,h);if(w[g+32|0]&8){break i}e=Ba[v[v[h>>2]+28>>2]](h)|0}Ba[v[v[c>>2]+52>>2]](g+24|0,c);if(w[g+24|0]&8){break g}b=Ba[v[v[c>>2]+28>>2]](c)|0;if(!b|!e&(h|0)!=0){break g}e=e?e:b}if(!e){break g}v[g+40>>2]=a;b=qh(e+5892|0,g+40|0,g+47|0);if(!w[g+47|0]){v[b>>2]=v[g+40>>2]}Hu(e+16|0,d)}xa=g+48|0;v[l+8>>2]=a;b=Mm(m+560|0,l+8|0,l+15|0);if(!w[l+15|0]){v[b>>2]=v[l+8>>2]}xa=l+16|0;return a|0}function MN(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,u=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0;s=xa-16|0;xa=s;if(v[a+16>>2]){Ba[v[v[a>>2]+104>>2]](a);l=v[a+12>>2];c=v[a+16>>2];n=32;o=xa-16|0;xa=o;t[o+12|0]=0;e=o-128|0;xa=e;v[o+8>>2]=e;h=c-1|0;a:{if((h|0)<=0){break a}while(1){b:{if((f|0)>=(h|0)){break b}while(1){if(h-f>>>0<=4){while(1){i=f;f=f+1|0;d=f;c=i;while(1){c=y[(d<<2)+l>>2]>y[(c<<2)+l>>2]?d:c;g=(d|0)<(h|0);d=d+1|0;if(g){continue}break}if((c|0)!=(i|0)){c=(c<<2)+l|0;d=v[c>>2];g=c;c=(i<<2)+l|0;v[g>>2]=v[c>>2];v[c>>2]=d}if((f|0)!=(h|0)){continue}break b}}g=((f+h|0)/2<<2)+l|0;d=v[g>>2];m=(f<<2)+l|0;c=v[m>>2];if(d>>>0>c>>>0){v[m>>2]=d;v[g>>2]=c;d=c;c=v[m>>2]}p=(h<<2)+l|0;i=v[p>>2];c:{if(i>>>0<=c>>>0){c=i;break c}v[m>>2]=i;v[p>>2]=c;d=v[g>>2]}if(c>>>0>d>>>0){v[g>>2]=c;v[p>>2]=d;d=v[g>>2]}c=g;g=h-1|0;m=(g<<2)+l|0;v[c>>2]=v[m>>2];v[m>>2]=d;c=f;while(1){i=c;c=c+1|0;p=(c<<2)+l|0;q=v[p>>2];if(q>>>0>d>>>0){continue}while(1){g=g-1|0;u=(g<<2)+l|0;x=v[u>>2];if(x>>>0>>0){continue}break}if((c|0)<(g|0)){v[p>>2]=x;v[u>>2]=q;d=v[m>>2];continue}break}v[p>>2]=d;v[m>>2]=q;d:{if((c-f|0)<(h-c|0)){if(n-1>>>0<=j>>>0){d=n<<3;if(d){c=v[37696];g=c+12|0;c=(A=g,B=d,C=Ba[v[v[c>>2]+20>>2]](c)|0?29035:63804,D=17218,E=155,z=v[v[g>>2]+8>>2],Ba[z](A|0,B|0,C|0,D|0,E|0)|0)}else{c=0}n=n<<1;c=H9(c,e,j<<2);d=k;k=1;if(!(!d|!e)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=c}c=(j<<2)+e|0;v[c>>2]=f;v[c+4>>2]=i;f=i+2|0;break d}if(n-1>>>0<=j>>>0){d=n<<3;if(d){c=v[37696];g=c+12|0;c=(E=g,D=d,C=Ba[v[v[c>>2]+20>>2]](c)|0?29035:63804,B=17218,A=155,z=v[v[g>>2]+8>>2],Ba[z](E|0,D|0,C|0,B|0,A|0)|0)}else{c=0}n=n<<1;c=H9(c,e,j<<2);d=k;k=1;if(!(!d|!e)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=c}c=(j<<2)+e|0;v[c>>2]=i+2;v[c+4>>2]=h;h=i}j=j+2|0;if((f|0)<(h|0)){continue}break}}if(j){c=j-2|0;f=v[(c<<2)+e>>2];h=v[((j<<2)+e|0)-4>>2];j=c;continue}break}if(!k|!e){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}if(w[o+12|0]){u9(v[o+8>>2])}xa=o+16|0;if(v[a+16>>2]){d=v[a+44>>2];while(1){d=d-1|0;c=v[v[a+40>>2]+(d<<2)>>2];i=v[v[a+12>>2]+(r<<2)>>2];e=i>>>3|0;f=e&268435455;k=f<<3;wK(v[a+4>>2],k+v[a+52>>2]|0);v[v[a+40>>2]+(f<<2)>>2]=c;f=v[a+52>>2];k=f+k|0;j=d<<3;f=j+f|0;h=v[f+4>>2];v[k>>2]=v[f>>2];v[k+4>>2]=h;f=(d<<4)+b|0;k=v[f+12>>2];e=(e<<4)+b|0;v[e+8>>2]=v[f+8>>2];v[e+12>>2]=k;k=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=k;e=j+v[a+52>>2]|0;v[e>>2]=0;v[e+4>>2]=0;e=v[a+108>>2];f=v[e+456>>2];v[c+68>>2]=i;e:{if(!(w[c+43|0]&2)|w[c+41|0]&8){break e}e=v[v[v[e+444>>2]>>2]+(v[c- -64>>2]<<2)>>2];if(!e){break e}while(1){v[f+(v[e+20>>2]<<2)>>2]=v[c+68>>2];e=v[e+16>>2];if(e){continue}break}}v[a+56>>2]=d;v[a+44>>2]=d;r=r+1|0;if(r>>>0>2]){continue}break}}v[a+16>>2]=0;Ba[v[v[a>>2]+108>>2]](a)}xa=s+16|0}function FC(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=v[a+588>>2];if(c){GC(a,c);v[a+588>>2]=0}nY(a+592|0);if(v[a+576>>2]){d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[a+584>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];a:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;b:{if(!f){break b}e=f<<2;if(!e){break b}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?31931:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,b,16608,553)|0}h=v[d+20>>2];e=(h<<2)+c|0;if((h|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[e>>2]=v[d+8>>2];c:{if(v[d+24>>2]<0){break c}e=v[d+16>>2];if(!e){break c}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);h=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=c;v[d+20>>2]=h+1;break a}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[a+584>>2]>>2];v[a+584>>2]=c;if(c){continue}break}b=v[d+16>>2];c=v[d+20>>2]}else{c=0}g=b;b=d+8|0;WC(g,c,b);WC(v[a+560>>2],v[a+564>>2],b);b=v[d+24>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=v[d+16>>2];if(!c){break d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}xa=d+32|0}c=v[a+560>>2];b=v[a+564>>2];if(b){f=(b<<2)+c|0;while(1){e=v[c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((f|0)!=(c|0)){continue}break}c=v[a+560>>2]}b=v[a+568>>2];e:{if((b|0)<0|!(b&2147483647)){break e}if((a+300|0)==(c|0)){t[a+556|0]=0;break e}if(!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[a+284>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[a+292>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];f:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;g:{if(!f){break g}e=f<<2;if(!e){break g}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?30445:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,b,16608,553)|0}h=v[d+20>>2];e=(h<<2)+c|0;if((h|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[e>>2]=v[d+8>>2];h:{if(v[d+24>>2]<0){break h}e=v[d+16>>2];if(!e){break h}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);h=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=c;v[d+20>>2]=h+1;break f}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[a+292>>2]>>2];v[a+292>>2]=c;if(c){continue}break}b=v[d+16>>2];c=v[d+20>>2]}else{c=0}g=b;b=d+8|0;XC(g,c,b);XC(v[a+268>>2],v[a+272>>2],b);b=v[d+24>>2];i:{if((b|0)<0|!(b&2147483647)){break i}c=v[d+16>>2];if(!c){break i}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}xa=d+32|0}c=v[a+268>>2];b=v[a+272>>2];if(b){f=(b<<2)+c|0;while(1){e=v[c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((f|0)!=(c|0)){continue}break}c=v[a+268>>2]}b=v[a+276>>2];j:{if((b|0)<0|!(b&2147483647)){break j}if((a+8|0)==(c|0)){t[a+264|0]=0;return a}if(!c){break j}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}return a}function tA(a,b,c,d){var e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=C(0),y=C(0),A=C(0),D=C(0),E=0,F=0,G=C(0),H=C(0),I=0,J=0,K=0,L=0,M=0;a:{e=x[a+22>>1];if(!e){break a}o=v[a+24>>2];E=w[o|0]==7?144:96;I=(e<<4)+o|0;f=v[a+60>>2];k=v[a+92>>2];p=v[a+124>>2];e=v[a+28>>2];g=o;while(1){F=g+192|0;q=w[g+1|0];h=q<<4;n=g;m=((F+h|0)+B(q,E)|0)+(h&0-(t[g+3|0]&1))|0;r=w[g+2|0];s=(m+(((r|0)!=0)<<7)|0)+(r<<4)|0;J=w[g+7|0];K=w[g+6|0];L=w[g+5|0];M=w[g+4|0];if(q){g=0;while(1){l=k;h=f;f=(g<<4)+F|0;G=z[f+12>>2];H=z[f+8>>2];i=z[f+4>>2];j=z[f>>2];f=0;b:{if(!e){break b}f=e;if(w[n+8|0]<=g>>>0){break b}z[e>>2]=j;f=e+4|0}e=f;k=0;f=0;c:{if(!h){break c}f=h;if(w[n+9|0]<=g>>>0){break c}z[h>>2]=i;f=h+4|0}d:{if(!l){break d}if(w[n+10|0]<=g>>>0){k=l;break d}z[l>>2]=H;k=l+4|0}e:{if(!p){p=0;break e}if(w[n+11|0]<=g>>>0){break e}z[p>>2]=G;p=p+4|0}u=C(u+G);y=C(y+H);A=C(A+i);D=C(D+j);g=g+1|0;if((q|0)!=(g|0)){continue}break}}g=B(r,E)+s|0;f:{if(!r){break f}s=v[m+12>>2];l=v[m+8>>2];h=v[m+4>>2];if(!(!w[n+12|0]|!v[m>>2])){t[v[m+16>>2]]=1}if(!(!w[n+13|0]|!h)){t[v[m+20>>2]]=1}if(!(!w[n+14|0]|!l)){t[v[m+24>>2]]=1}if(!w[n+15|0]|!s){break f}t[v[m+28>>2]]=1}if(g>>>0>>0){continue}break}k=L&1;g:{if(!(M&1)|x[a+8>>1]!=65535|(x[a+10>>1]!=65535|D==C(0))){break g}f=v[c>>2];i=z[f+28>>2];e=v[d>>2];j=z[e+28>>2];if(!(i>2];h=v[f+72>>2];f=v[o+176>>2];e=v[b+8>>2];v[b+8>>2]=e+1;g=v[b+4>>2]+(e<<5)|0;z[g+8>>2]=i>2]=D;v[g>>2]=f;f=l<<7;e=h<<7;v[g+16>>2]=e>>>0>>0?f:e;v[g+12>>2]=e>>>0>f>>>0?f:e}g=K&1;h:{if(!k|x[a+40>>1]!=65535|(x[a+42>>1]!=65535|A==C(0))){break h}f=v[c+4>>2];i=z[f+28>>2];e=v[d+4>>2];j=z[e+28>>2];if(!(i>2];h=v[e+72>>2];f=v[f+72>>2];e=v[b+8>>2];v[b+8>>2]=e+1;k=v[b+4>>2]+(e<<5)|0;z[k+8>>2]=i>2]=A;v[k>>2]=l;h=h<<7;e=f<<7;v[k+16>>2]=e>>>0>>0?h:e;v[k+12>>2]=e>>>0>h>>>0?h:e}k=J&1;i:{if(!g|x[a+72>>1]!=65535|(x[a+74>>1]!=65535|y==C(0))){break i}f=v[c+8>>2];i=z[f+28>>2];e=v[d+8>>2];j=z[e+28>>2];if(!(i>2];h=v[e+72>>2];f=v[f+72>>2];e=v[b+8>>2];v[b+8>>2]=e+1;g=v[b+4>>2]+(e<<5)|0;z[g+8>>2]=i>2]=y;v[g>>2]=l;h=h<<7;e=f<<7;v[g+16>>2]=e>>>0>>0?h:e;v[g+12>>2]=e>>>0>h>>>0?h:e}if(!k|x[a+104>>1]!=65535|(x[a+106>>1]!=65535|u==C(0))){break a}c=v[c+12>>2];i=z[c+28>>2];a=v[d+12>>2];j=z[a+28>>2];if(!(i>2];d=v[a+72>>2];c=v[c+72>>2];a=v[b+8>>2];v[b+8>>2]=a+1;f=v[b+4>>2]+(a<<5)|0;z[f+8>>2]=i>2]=u;v[f>>2]=e;b=d<<7;a=c<<7;v[f+16>>2]=a>>>0>>0?b:a;v[f+12>>2]=a>>>0>b>>>0?b:a}}function EH(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=xa-16|0;xa=j;f=v[a+372>>2];a:{if(!f){break a}g=v[a+340>>2];while(1){e=v[g+(c<<2)>>2];t[e+44|0]=w[e+44|0]&251;if(v[e+20>>2]){JH(e)}IH(e);c=c+1|0;if((f|0)!=(c|0)){continue}break}c=v[a+356>>2];if(!c|!v[a+372>>2]){break a}I9(v[a+348>>2],255,c<<2);c=v[a+344>>2];f=v[a+352>>2];g=f-1|0;if(g){e=0;if(f-2>>>0>=3){h=g&-4;f=0;while(1){k=d|1;v[c+(d<<2)>>2]=k;i=c+(k<<2)|0;k=d|2;v[i>>2]=k;i=c+(k<<2)|0;k=d|3;v[i>>2]=k;d=d+4|0;v[c+(k<<2)>>2]=d;f=f+4|0;if((h|0)!=(f|0)){continue}break}}f=g&3;if(f){while(1){h=c+(d<<2)|0;d=d+1|0;v[h>>2]=d;e=e+1|0;if((f|0)!=(e|0)){continue}break}}e=v[a+352>>2]-1|0}else{e=0}v[c+(e<<2)>>2]=-1;v[a+372>>2]=0;v[a+364>>2]=0}f=v[a+332>>2];b:{if(!f){break b}v[j>>2]=b;e=v[b+4>>2];c=v[b+8>>2];g=v[(e+(c<<2)|0)-4>>2];c:{if((g-v[b+16>>2]|0)>=272){g=g-272|0;v[j+12>>2]=g;if(c>>>0>=(v[b+12>>2]&2147483647)>>>0){Us(b+4|0,j+12|0);b=v[j+12>>2];break c}v[e+(c<<2)>>2]=g;v[b+8>>2]=c+1;b=v[j+12>>2];break c}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,272,24422,17461,99)|0}v[j+4>>2]=b;if(b){v[b>>2]=0;v[b+4>>2]=0}v[j+8>>2]=b;b=v[a+300>>2];d=0;while(1){FH(a,v[b+(d<<2)>>2],j);d=d+1|0;if((f|0)!=(d|0)){continue}break}d:{c=v[j+4>>2];if(!c){break d}if(!v[c+4>>2]){c=v[c>>2];if(!c){break d}}e=c+8|0;while(1){d=1;while(1){FH(a,v[e>>2],j);if(y[c+4>>2]>d>>>0){e=((d<<2)+c|0)+8|0;d=d+1|0;continue}break}c=v[c>>2];if(!c){break d}e=c+8|0;continue}}c=f>>>0>1?f:1;d=0;while(1){e=v[b+(d<<2)>>2];f=v[e+60>>2];e=zH(v[(f?f:v[e- -64>>2])+164>>2]);if(!v[e+20>>2]){IH(e)}d=d+1|0;if((c|0)!=(d|0)){continue}break}b=v[a+316>>2];if(!(!b|!v[a+332>>2])){I9(v[a+308>>2],255,b<<2);d=0;b=v[a+304>>2];f=v[a+312>>2];c=f-1|0;if(c){e=0;if(f-2>>>0>=3){i=c&-4;f=0;while(1){h=d|1;v[b+(d<<2)>>2]=h;g=b+(h<<2)|0;h=d|2;v[g>>2]=h;g=b+(h<<2)|0;h=d|3;v[g>>2]=h;d=d+4|0;v[b+(h<<2)>>2]=d;f=f+4|0;if((i|0)!=(f|0)){continue}break}}c=c&3;if(c){while(1){f=b+(d<<2)|0;d=d+1|0;v[f>>2]=d;e=e+1|0;if((c|0)!=(e|0)){continue}break}}c=v[a+312>>2]-1|0}else{c=0}v[b+(c<<2)>>2]=-1;v[a+332>>2]=0;v[a+324>>2]=0}b=v[j+4>>2];if(!b){break b}while(1){g=v[b>>2];i=v[j>>2];a=v[i+16>>2];e:{if(!(a>>>0<=b>>>0&a+v[i+20>>2]>>>0>b>>>0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);break e}k=v[i+4>>2];e=0;h=v[i+8>>2];a=h;while(1){f=e;e=f+1|0;c=a;a=c-1|0;d=(a<<2)+k|0;if(y[d>>2]>>0){continue}break}f:{if(c>>>0>=h>>>0){break f}e=0;a=f&3;if(a){while(1){v[d>>2]=v[v[i+4>>2]+(c<<2)>>2];c=c+1|0;d=d+4|0;e=e+1|0;if((a|0)!=(e|0)){continue}break}}if(f-1>>>0<3){break f}while(1){a=c<<2;v[d>>2]=v[a+v[i+4>>2]>>2];v[d+4>>2]=v[(a+v[i+4>>2]|0)+4>>2];v[d+8>>2]=v[(a+v[i+4>>2]|0)+8>>2];v[d+12>>2]=v[(a+v[i+4>>2]|0)+12>>2];d=d+16|0;c=c+4|0;if((h|0)!=(c|0)){continue}break}}v[i+8>>2]=h-1}b=g;if(b){continue}break}}xa=j+16|0}function u$(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),m=C(0),n=C(0),o=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=0,O=0,P=C(0),Q=C(0),R=C(0);g=z[a+8>>2];M=v[d+8>>2];G=z[d+8>>2];N=v[d>>2];O=v[d+4>>2];B=z[d>>2];f=z[a>>2];H=z[d+4>>2];o=z[a+4>>2];a:{if(!(!(B>=(f>C(0)?f:C(-f)))|!(H>=(o>C(0)?o:C(-o))))){a=1;if(G>=(g>C(0)?g:C(-g))){break a}}a=0;w=z[b>>2];r=f>2];if(B<(r>2];A=o>2];if((AH){break a}A=z[b+8>>2];e=g>2];if(G<(ew?f:w;if(C(C(0)-B)>(e>x?e:x)){break a}e=o>r?o:r;if(C(C(0)-H)>(e>D?e:D)){break a}e=g>A?g:A;if(C(C(0)-G)>(e>E?e:E)){break a}e=C(w-f);i=C(D-r);s=C(x-w);k=C(r-o);m=C(C(e*i)-C(s*k));u=C(E-A);h=C(A-g);y=C(C(k*u)-C(i*h));t=C(C(h*s)-C(u*e));n=C(C(m*g)+C(C(y*f)+C(o*t)));b=(p(m),j(2))&-2147483648;c=(p(y),j(2))&-2147483648;d=(p(t),j(2))&-2147483648;if(n>C(C(m*(l(2,M|b),q()))+C(C(y*(l(2,c|N),q()))+C(t*(l(2,O|d),q()))))|nC(0)?e:C(-e);K=h>C(0)?h:C(-h);L=C(C(G*n)+C(B*K));if(F>L){break a}P=k>C(0)?k:C(-k);Q=C(C(H*n)+C(B*P));n=C(C(f*k)-C(o*e));I=C(C(w*k)-C(e*r));F=nF?F:e)){break a}F=C(C(o*h)-C(g*k));J=C(C(r*h)-C(k*A));R=FR?R:k)>h){break a}m=m>y?m:y;if(C(C(0)-L)>(m>t?m:t)){break a}m=n>I?n:I;if(C(C(0)-Q)>(eJ?F:J;if(C(C(0)-h)>(e>k?e:k)){break a}t=s>C(0)?s:C(-s);I=u>C(0)?u:C(-u);F=C(C(G*t)+C(B*I));e=C(C(g*s)-C(f*u));k=C(C(A*s)-C(w*u));m=em?m:h)){break a}J=i>C(0)?i:C(-i);K=C(C(H*t)+C(B*J));m=C(C(f*i)-C(o*s));y=C(C(w*i)-C(r*s));n=mn?n:s)){break a}t=C(C(o*u)-C(g*i));n=C(C(r*u)-C(A*i));L=n>t?t:n;i=C(C(D*u)-C(i*E));u=C(C(G*J)+C(H*I));if((i>L?L:i)>u){break a}e=e>k?e:k;if(C(C(0)-F)>(e>h?e:h)){break a}e=m>y?m:y;if(C(C(0)-K)>(e>s?e:s)){break a}e=n(e>i?e:i)){break a}e=C(f-x);i=C(g-E);s=C(C(g*e)-C(f*i));k=C(C(A*e)-C(w*i));h=k>s?s:k;u=C(C(e*E)-C(x*i));m=e>C(0)?e:C(-e);y=i>C(0)?i:C(-i);t=C(C(G*m)+C(B*y));if((ht){break a}h=f;f=C(o-D);h=C(C(h*f)-C(o*e));w=C(C(w*f)-C(r*e));n=hC(0)?f:C(-f);B=C(C(H*m)+C(B*e));if((nB){break a}g=C(C(o*i)-C(g*f));o=C(C(r*i)-C(A*f));r=gr?r:f;r=C(C(G*e)+C(H*y));if(i>r){break a}g=g>o?g:o;a=!(C(C(0)-r)>(fw?h:w;a=a&(C(C(0)-B)>(g>x?g:x)^-1);g=k(g>u?g:u)^-1)}return a}function ju(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,u=0,y=0,z=0,A=0,C=0;z=b+5584|0;if(f){e=0;i=xa-48|0;xa=i;b=v[((x[c+4>>1]<<2)+86240|0)+72>>2];p=x[a+4>>1];h=p>>>0>256;t[i+44|0]=h;d=p<<2;j=b+c|0;a:{b:{if(p>>>0>=257){A=i,C=t9(d,8812,357),v[A+40>>2]=C;t[i+36|0]=h;A=i,C=t9(d,8812,358),v[A+32>>2]=C;break b}b=d+15&524272;d=i-b|0;xa=d;v[i+40>>2]=d;t[i+36|0]=h;k=d-b|0;xa=k;v[i+32>>2]=k;if(p){break b}e=1;break a}b=x[a+4>>1]==1;k=0;while(1){d=v[(k<<2)+(b?a:v[a>>2])>>2];if(w[(w[d+36|0]&64?v[d+40>>2]+52|0:d+112|0)|0]&2){v[v[i+40>>2]+(e<<2)>>2]=d+32;e=e+1|0}k=k+1|0;if((p|0)!=(k|0)){continue}break}d=v[i+40>>2];k=v[i+32>>2];e=0}b=v[((x[c+4>>1]<<2)+86240|0)+72>>2]+c|0;b=v[v[v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b>>2]+48>>2];v[a+16>>2]=b;Ba[v[v[c>>2]+76>>2]](i,c);c=b;h=j;b=xa-32|0;xa=b;j=b;m=Ba[v[v[f>>2]+40>>2]](f)|0;s=m<<2;t[b+28|0]=s>>>0>1024;c:{if(s>>>0>=1025){n=t9(s,8548,561);break c}n=b-(s+15&-16)|0;b=n;xa=b}v[j+24>>2]=n;u=m<<3;t[j+20|0]=u>>>0>1024;d:{if(u>>>0>=1025){o=t9(u,8548,562);break d}o=b-(u+15&-16)|0;xa=o}v[j+16>>2]=o;e:{if(!m){break e}b=0;if(m-1>>>0>=3){y=m&-4;while(1){l=v[(b<<2)+d>>2];g=(b<<3)+o|0;v[g+4>>2]=h;v[g>>2]=l;g=b|1;l=v[(g<<2)+d>>2];g=(g<<3)+o|0;v[g+4>>2]=h;v[g>>2]=l;g=b|2;l=v[(g<<2)+d>>2];g=(g<<3)+o|0;v[g+4>>2]=h;v[g>>2]=l;g=b|3;l=v[(g<<2)+d>>2];g=(g<<3)+o|0;v[g+4>>2]=h;v[g>>2]=l;b=b+4|0;q=q+4|0;if((y|0)!=(q|0)){continue}break}}y=m&3;if(!y){break e}while(1){l=v[(b<<2)+d>>2];g=(b<<3)+o|0;v[g+4>>2]=h;v[g>>2]=l;b=b+1|0;r=r+1|0;if((y|0)!=(r|0)){continue}break}}d=v[z+72>>2];b=w[(h+v[((v[h+4>>2]>>>22&60)+89188|0)+12>>2]|0)+9|0]==1?2:1;Ba[v[v[d>>2]>>2]](d,n,f,c,i,b,o)|0;h=(b^-1)&1;b=z+B(h,36)|0;v[b+32>>2]=v[b+32>>2]+1;f:{if(!m){break f}r=0;b=0;if(m-1>>>0>=3){d=m&-4;q=0;while(1){f=b<<2;v[f+k>>2]=h|v[f+n>>2]<<1;c=f|4;v[c+k>>2]=h|v[c+n>>2]<<1;c=f|8;v[c+k>>2]=h|v[c+n>>2]<<1;c=f|12;v[c+k>>2]=h|v[c+n>>2]<<1;b=b+4|0;q=q+4|0;if((d|0)!=(q|0)){continue}break}}d=m&3;if(!d){break f}while(1){c=b<<2;v[c+k>>2]=h|v[c+n>>2]<<1;b=b+1|0;r=r+1|0;if((d|0)!=(r|0)){continue}break}}if(u>>>0>=1025){u9(o)}if(s>>>0>=1025){u9(n)}xa=j+32|0;if(!e){h=a+8|0;e=0;f=x[a+4>>1]==1;c=x[a+12>>1]==1;d=0;while(1){b=d<<2;j=v[b+(f?a:v[a>>2])>>2];if(w[(w[j+36|0]&64?v[j+40>>2]+52|0:j+112|0)|0]&2){v[b+(c?h:v[h>>2])>>2]=v[v[i+32>>2]+(e<<2)>>2];e=e+1|0}d=d+1|0;if((p|0)!=(d|0)){continue}break}}if(p>>>0>256){u9(v[i+32>>2]);u9(v[i+40>>2])}xa=i+48|0;return}l=x[a+4>>1];if(l){g=(l|0)==1?a:v[a>>2];h=a+8|0;i=(x[c+4>>1]&-9)==5;f=0;while(1){j=f<<2;b=v[j+g>>2];if(w[(w[b+36|0]&64?v[b+40>>2]+52|0:b+112|0)|0]&2){b=GE(z,b+32|0,v[((x[c+4>>1]<<2)+86240|0)+72>>2]+c|0,i,v[a+16>>2],e?B(f,24)+e|0:0,d);v[j+(x[a+12>>1]==1?h:v[a+8>>2])>>2]=b}f=f+1|0;if((l|0)!=(f|0)){continue}break}}}function W4(a,b,c){var d=0,e=C(0),f=0,g=C(0),h=C(0),i=0,j=0,k=0,l=0,m=C(0),n=0,o=0,p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),y=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=0,L=C(0),M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=C(0),U=C(0),V=C(0),W=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=C(0),ra=C(0),sa=C(0),ta=C(0);Z=v[a+20>>2];if(Z){P=v[a+4>>2];oa=v[a+28>>2];pa=v[a+16>>2];E=z[c+8>>2];F=z[c+4>>2];G=z[c>>2];while(1){a=B(Q,20)+pa|0;R=w[a+18|0];_=R-2|0;if(_){qa=z[a+8>>2];ra=z[a+4>>2];sa=z[a>>2];S=x[a+16>>1]+oa|0;a=B(w[S|0],12)+P|0;T=C(z[a+8>>2]-E);d=+T;$=d*d;U=C(z[a+4>>2]-F);j=+U;aa=j*j;V=C(z[a>>2]-G);k=+V;ba=k*k;a=0;while(1){ca=a+1|0;W=B(w[((ca>>>0)%(R>>>0)|0)+S|0],12)+P|0;p=C(z[W>>2]-G);t=C(p-V);a=B(w[((a+2>>>0)%(R>>>0)|0)+S|0],12)+P|0;g=C(z[a+4>>2]-F);q=C(g-U);h=C(z[a>>2]-G);u=C(h-V);r=C(z[W+4>>2]-F);e=C(r-U);L=C(C(t*q)-C(u*e));H=e;e=C(z[a+8>>2]-E);m=C(e-T);ta=q;q=C(z[W+8>>2]-E);D=C(q-T);H=C(C(H*m)-C(ta*D));D=C(C(D*u)-C(m*t));a:{if(!(C(C(L*qa)+C(C(H*sa)+C(ra*D)))>3]=d;j=ja*-.008333333333333333;A[b+48>>3]=j;k=ia*-.008333333333333333;A[b+80>>3]=k;A[b+32>>3]=j;n=ha*-.008333333333333333;A[b+72>>3]=n;A[b- -64>>3]=k;A[b+40>>3]=n;i=ga*.016666666666666666;l=ea*.016666666666666666;o=i+l;A[b+88>>3]=o;f=da*.016666666666666666;i=i+f;A[b+56>>3]=i;l=l+f;A[b+24>>3]=l;g=C(ka*.041666666666666664/d);z[b+8>>2]=g;h=C(la*.041666666666666664/d);z[b+4>>2]=h;e=C(ma*.041666666666666664/d);z[b>>2]=e;q=C(e*h);f=d*+q+j;A[b+120>>3]=f;t=C(h*g);s=d*+t+k;A[b+152>>3]=s;A[b+104>>3]=f;p=C(e*e);r=C(h*h);u=C(p+r);A[b+160>>3]=o-d*+u;m=C(g*g);E=C(m+p);A[b+128>>3]=i-d*+E;m=C(r+m);A[b+96>>3]=l-d*+m;F=C(e*g);f=d*+F+n;A[b+144>>3]=f;A[b+136>>3]=s;A[b+112>>3]=f;p=z[c+8>>2];G=z[c>>2];r=z[c+4>>2];if(!(!(G!=C(0)|r!=C(0))&p==C(0))){g=C(p+g);z[b+8>>2]=g;h=C(r+h);z[b+4>>2]=h;e=C(G+e);z[b>>2]=e;j=d*+C(q-C(h*e))+j;A[b+48>>3]=j;k=d*+C(t-C(g*h))+k;A[b+80>>3]=k;A[b+32>>3]=j;j=d*+C(F-C(e*g))+n;A[b+72>>3]=j;A[b+64>>3]=k;A[b+40>>3]=j;d=-d;e=C(e*e);h=C(h*h);A[b+88>>3]=d*+C(u-C(e+h))+o;g=C(g*g);A[b+56>>3]=d*+C(E-C(g+e))+i;A[b+24>>3]=d*+C(m-C(h+g))+l}return 1}function vE(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0);b=xa-208|0;xa=b;h=1;a:{if(!(v[c+40>>2]&x[a+12>>1])){break a}J=v[c>>2];if(!v[J+588>>2]){break a}h=v[a+4>>2];F=z[h+20>>2];G=z[h+16>>2];q=z[h+32>>2];r=z[h+24>>2];H=z[h+28>>2];s=z[h+44>>2];t=z[h+36>>2];y=z[h+40>>2];d=z[c+20>>2];e=z[c+36>>2];f=z[h+56>>2];i=z[c+24>>2];g=z[c+32>>2];j=z[h+52>>2];l=z[c+16>>2];k=z[c+28>>2];A=z[h+48>>2];I=z[h+12>>2];m=z[c+12>>2];v[b+44>>2]=0;e=C(f-e);e=C(e+e);f=C(A-k);f=C(f+f);g=C(j-g);g=C(g+g);j=C(C(d*e)+C(C(m*f)+C(l*g)));k=C(C(i*i)+C(-.5));z[b+40>>2]=C(d*j)+C(C(e*k)-C(i*C(C(m*g)-C(f*l))));z[b+36>>2]=C(l*j)+C(C(g*k)-C(i*C(C(d*f)-C(e*m))));z[b+32>>2]=C(m*j)+C(C(f*k)-C(i*C(C(l*e)-C(g*d))));e=z[h+8>>2];f=z[h>>2];g=z[h+4>>2];v[b+204>>2]=0;v[b+188>>2]=0;v[b+172>>2]=0;v[b+156>>2]=0;v[b+140>>2]=0;j=C(m+m);B=C(d*j);k=C(l+l);K=C(i*k);u=C(B+K);p=C(k*d);L=C(i*j);w=C(p-L);o=C(C(1)-C(m*j));M=C(l*k);n=C(o-M);m=C(C(C(t*u)+C(y*w))+C(s*n));k=C((m>C(0)?m:C(-m))+C(9.999999974752427e-7));z[b+136>>2]=k;A=C(C(C(u*r)+C(w*H))+C(n*q));E=C((A>C(0)?A:C(-A))+C(9.999999974752427e-7));z[b+132>>2]=E;u=C(C(C(I*u)+C(G*w))+C(n*F));w=C((u>C(0)?u:C(-u))+C(9.999999974752427e-7));z[b+128>>2]=w;v[b+124>>2]=0;N=C(j*l);D=i;i=C(d+d);O=C(D*i);n=C(N-O);D=C(d*i);o=C(o-D);p=C(L+p);d=C(C(C(t*n)+C(y*o))+C(s*p));i=C((d>C(0)?d:C(-d))+C(9.999999974752427e-7));z[b+120>>2]=i;l=C(C(C(n*r)+C(o*H))+C(p*q));j=C((l>C(0)?l:C(-l))+C(9.999999974752427e-7));z[b+116>>2]=j;n=C(C(p*F)+C(C(I*n)+C(G*o)));o=C((n>C(0)?n:C(-n))+C(9.999999974752427e-7));z[b+112>>2]=o;v[b+108>>2]=0;p=C(C(C(1)-M)-D);D=y;y=C(N+O);B=C(B-K);s=C(C(C(t*p)+C(D*y))+C(s*B));t=C((s>C(0)?s:C(-s))+C(9.999999974752427e-7));z[b+104>>2]=t;q=C(C(C(p*r)+C(y*H))+C(B*q));r=C((q>C(0)?q:C(-q))+C(9.999999974752427e-7));z[b+100>>2]=r;v[b+92>>2]=0;z[b+88>>2]=m;z[b+84>>2]=A;z[b+80>>2]=u;v[b+76>>2]=0;z[b+72>>2]=d;z[b+68>>2]=l;z[b- -64>>2]=n;v[b+60>>2]=0;z[b+56>>2]=s;z[b+52>>2]=q;z[b+200>>2]=C(E*f)+C(w*g);z[b+196>>2]=C(k*f)+C(w*e);z[b+184>>2]=C(j*f)+C(o*g);z[b+180>>2]=C(i*f)+C(o*e);z[b+152>>2]=C(k*e)+C(C(w*f)+C(E*g));z[b+148>>2]=C(i*e)+C(C(o*f)+C(j*g));d=C(C(B*F)+C(C(I*p)+C(G*y)));z[b+48>>2]=d;d=C((d>C(0)?d:C(-d))+C(9.999999974752427e-7));z[b+96>>2]=d;z[b+168>>2]=C(r*f)+C(d*g);z[b+164>>2]=C(t*f)+C(d*e);v[b+28>>2]=0;z[b+24>>2]=e;z[b+20>>2]=g;z[b+16>>2]=f;z[b+192>>2]=C(k*g)+C(E*e);z[b+176>>2]=C(i*g)+C(j*e);z[b+160>>2]=C(t*g)+C(r*e);z[b+144>>2]=C(t*e)+C(C(d*f)+C(r*g));c=v[c+4>>2];h=cD(v[c+12>>2],v[c+8>>2],J,b+16|0,v[a+8>>2])}xa=b+208|0;return h|0}function dW(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0,p=0,q=0,r=0,s=0,u=0,x=0,y=0,A=0,D=0,E=0,F=0,G=0;g=xa-752|0;xa=g;h=v[c+32>>2];j=z[c+8>>2];l=z[c+12>>2];m=z[c+4>>2];v[g+476>>2]=0;z[g+472>>2]=l;z[g+468>>2]=j;z[g+464>>2]=m;o=v[c+16>>2];p=v[c+20>>2];n=v[c+28>>2];v[g+456>>2]=v[c+24>>2];v[g+460>>2]=n;v[g+448>>2]=o;v[g+452>>2]=p;t[g+320|0]=0;v[g+312>>2]=0;v[g+316>>2]=0;v[g+304>>2]=0;v[g+308>>2]=0;v[g+296>>2]=0;v[g+300>>2]=0;v[g+288>>2]=0;v[g+292>>2]=0;v[g+432>>2]=h+16;v[g+440>>2]=v[h+56>>2]+B(w[h+55|0],20);t[g+444|0]=w[h+54|0];i=C(m*z[h+68>>2]);k=C(j*z[h+72>>2]);i=i<=k?i:k;k=C(l*z[h+76>>2]);i=i<=k?i:k;z[g+312>>2]=i*C(.02500000037252903);z[g+304>>2]=i*C(.10000000149011612);z[g+308>>2]=i*C(.05000000074505806);o=g+336|0;p=g+384|0;FV(g+464|0,g+448|0,o,p,g+288|0,m==C(1)&j==C(1)&l==C(1));v[g+436>>2]=v[h+60>>2];h=v[e+32>>2];j=z[e+8>>2];l=z[e+12>>2];m=z[e+4>>2];v[g+284>>2]=0;z[g+280>>2]=l;z[g+276>>2]=j;z[g+272>>2]=m;n=v[e+16>>2];q=v[e+20>>2];r=v[e+28>>2];v[g+264>>2]=v[e+24>>2];v[g+268>>2]=r;v[g+256>>2]=n;v[g+260>>2]=q;t[g+128|0]=0;v[g+120>>2]=0;v[g+124>>2]=0;v[g+112>>2]=0;v[g+116>>2]=0;v[g+104>>2]=0;v[g+108>>2]=0;v[g+96>>2]=0;v[g+100>>2]=0;v[g+240>>2]=h+16;v[g+248>>2]=v[h+56>>2]+B(w[h+55|0],20);t[g+252|0]=w[h+54|0];i=C(m*z[h+68>>2]);k=C(j*z[h+72>>2]);i=i<=k?i:k;k=C(l*z[h+76>>2]);i=i<=k?i:k;z[g+120>>2]=i*C(.02500000037252903);z[g+112>>2]=i*C(.10000000149011612);z[g+116>>2]=i*C(.05000000074505806);n=g+144|0;q=g+192|0;FV(g+272|0,g+256|0,n,q,g+96|0,m==C(1)&j==C(1)&l==C(1));v[g+244>>2]=v[h+60>>2];j=z[f+24>>2];l=z[d+24>>2];h=v[f>>2];r=v[f+4>>2];u=v[f+8>>2];x=v[f+12>>2];y=v[f+16>>2];f=v[f+20>>2];A=v[d>>2];D=v[d+4>>2];E=v[d+8>>2];F=v[d+12>>2];G=v[d+20>>2];d=v[d+16>>2];v[g+92>>2]=0;z[g+88>>2]=l;v[g+80>>2]=d;v[g+84>>2]=G;v[g+72>>2]=E;v[g+76>>2]=F;v[g+64>>2]=A;v[g+68>>2]=D;v[g+60>>2]=0;z[g+56>>2]=j;v[g+48>>2]=y;v[g+52>>2]=f;v[g+40>>2]=u;v[g+44>>2]=x;v[g+32>>2]=h;v[g+36>>2]=r;v[g+24>>2]=0;v[g+28>>2]=0;v[g+16>>2]=0;v[g+20>>2]=0;v[g>>2]=0;d=0;a:{if(z[c+4>>2]!=C(1)){break a}d=0;if(z[c+8>>2]!=C(1)){break a}d=z[c+12>>2]==C(1)}s=z[e+4>>2]!=C(1)|z[e+8>>2]!=C(1)?s:z[e+12>>2]==C(1);k2(g+288|0,d,g+680|0);k2(g+96|0,s,g+608|0);v[g+584>>2]=p;v[g+580>>2]=o;v[g+576>>2]=g- -64;b:{if(d){t[g+588|0]=1;v[g+544>>2]=141020;break b}t[g+588|0]=0;v[g+544>>2]=141068}v[g+520>>2]=q;v[g+516>>2]=n;v[g+512>>2]=g+32;v[g+592>>2]=g+288;c:{if(s){t[g+524|0]=1;v[g+480>>2]=141020;break c}t[g+524|0]=0;v[g+480>>2]=141068}v[g+528>>2]=g+96;c=a2(g+680|0,g+608|0,g+544|0,g+480|0,g,g+16|0);if(c){j=z[g>>2];z[b>>2]=j>C(0)?j:C(0);b=v[g+16>>2];d=v[g+20>>2];z[a+8>>2]=z[g+24>>2];v[a>>2]=b;v[a+4>>2]=d}xa=g+752|0;return c|0}function yW(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0);v[f>>2]=3;n=z[c>>2];h=z[b>>2];t=C(n-h);o=z[d+4>>2];j=z[b+4>>2];u=C(o-j);p=z[d>>2];w=C(p-h);q=z[c+4>>2];x=C(q-j);k=C(C(t*u)-C(w*x));r=z[d+8>>2];i=z[b+8>>2];y=C(r-i);s=z[c+8>>2];A=C(s-i);m=C(C(x*y)-C(u*A));l=C(C(A*w)-C(y*t));B=C(C(k*k)+C(C(m*m)+C(l*l)));if(B==C(0)){z[a>>2]=34028234663852886e22;return}E=C(C(k*C(C(h*q)-C(n*j)))+C(C(m*C(C(j*s)-C(q*i)))+C(C(C(i*n)-C(s*h))*l)));a:{F=C(C(k*C(C(n*o)-C(p*q)))+C(C(m*C(C(q*r)-C(o*s)))+C(C(C(s*p)-C(r*n))*l)));G=C(C(k*C(C(p*j)-C(h*o)))+C(C(m*C(C(o*i)-C(j*r)))+C(C(C(r*h)-C(i*p))*l)));if(!(!(E>=C(0))|(!(F>=C(0))|!(G>=C(0))))){v[g+12>>2]=0;i=C(C(C(k*i)+C(C(m*h)+C(j*l)))/B);h=C(k*i);z[g+8>>2]=h;j=C(l*i);z[g+4>>2]=j;i=C(m*i);z[g>>2]=i;break a}v[f>>2]=2;m=C(-s);l=C(-n);n=C(-q);k=C(C(A*m)+C(C(t*l)+C(x*n)));i=C(-i);q=C(-h);s=C(-j);h=C(C(A*i)+C(C(t*q)+C(x*s)));if(!(!(k<=C(0))|(!(E<=C(0))|!(h>=C(0))))){m=z[b>>2];j=z[b+4>>2];i=z[b+8>>2];v[g+12>>2]=0;l=i;i=h;h=C(h-k);i=C(i*(C(D(h))>C(1.1920928955078125e-7)?C(C(1)/h):C(0)));h=C(l+C(A*i));z[g+8>>2]=h;j=C(j+C(x*i));z[g+4>>2]=j;i=C(m+C(t*i));z[g>>2]=i;break a}r=C(-r);p=C(-p);o=C(-o);j=C(C(y*r)+C(C(w*p)+C(u*o)));b:{m=C(C(y*m)+C(C(w*l)+C(u*n)));if(!(F<=C(0))|!(m>=k)){break b}n=C(C(A*r)+C(C(t*p)+C(x*o)));if(!(n>=j)){break b}h=z[c>>2];t=z[d>>2];i=z[c+4>>2];o=z[d+4>>2];l=z[c+8>>2];u=z[d+8>>2];b=v[e+8>>2];v[e>>2]=v[e+4>>2];v[e+4>>2]=b;v[g+12>>2]=0;k=C(m-k);j=C(k+C(n-j));j=C(k*(C(D(j))>C(1.1920928955078125e-7)?C(C(1)/j):C(0)));k=C(l+C(j*C(u-l)));z[g+8>>2]=k;i=C(i+C(j*C(o-i)));z[g+4>>2]=i;h=C(h+C(j*C(t-h)));z[g>>2]=h;z[a>>2]=C(k*k)+C(C(h*h)+C(i*i));return}i=C(C(y*i)+C(C(w*q)+C(u*s)));if(!(!(j<=C(0))|(!(G<=C(0))|!(i>=C(0))))){v[e+4>>2]=v[e+8>>2];k=z[b>>2];m=z[b+4>>2];h=z[b+8>>2];v[g+12>>2]=0;l=h;h=C(i-j);i=C(i*(C(D(h))>C(1.1920928955078125e-7)?C(C(1)/h):C(0)));h=C(l+C(y*i));z[g+8>>2]=h;j=C(m+C(u*i));z[g+4>>2]=j;i=C(k+C(w*i));z[g>>2]=i;break a}v[f>>2]=1;if(!(!(h<=C(0))|!(i<=C(0)))){c=v[b+4>>2];v[g>>2]=v[b>>2];v[g+4>>2]=c;c=v[b+12>>2];v[g+8>>2]=v[b+8>>2];v[g+12>>2]=c;h=z[b+8>>2];i=C(h*h);h=z[b>>2];l=C(h*h);h=z[b+4>>2];z[a>>2]=i+C(l+C(h*h));return}if(!(!(k>=C(0))|!(k>=m))){v[e>>2]=v[e+4>>2];b=v[c+12>>2];v[g+8>>2]=v[c+8>>2];v[g+12>>2]=b;b=v[c+4>>2];v[g>>2]=v[c>>2];v[g+4>>2]=b;h=z[c+8>>2];i=C(h*h);h=z[c>>2];l=C(h*h);h=z[c+4>>2];z[a>>2]=i+C(l+C(h*h));return}v[e>>2]=v[e+8>>2];b=v[d+12>>2];v[g+8>>2]=v[d+8>>2];v[g+12>>2]=b;b=v[d+4>>2];v[g>>2]=v[d>>2];v[g+4>>2]=b;h=z[d+8>>2];i=C(h*h);h=z[d>>2];l=C(h*h);h=z[d+4>>2];z[a>>2]=i+C(l+C(h*h));return}z[a>>2]=C(h*h)+C(C(i*i)+C(j*j))}function y2(a,b,c,d,e){var f=0,g=C(0),h=0,i=C(0),j=0,k=0,l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=0,u=0,x=0,y=C(0),A=0,B=C(0),D=C(0);f=xa;A=f;f=f-(d+15&-16)|0;xa=f;o=I9(f,0,d);g=C(34028234663852886e22);f=e;j=-1;while(1){d=v[f+48>>2];k=v[f+52>>2];a:{if(d>>>0>=k>>>0){break a}r=k+(d^-1)|0;h=0;p=k-d&3;if(p){while(1){i=z[((d<<6)+c|0)+44>>2];q=i>>0<=2){break a}while(1){i=z[((d<<6)+c|0)+44>>2];h=i>2];g=h?i:g;q=m>2];g=q?m:g;r=i>2];g=r?i:g;p=m>2];if(f){continue}break}t[j+o|0]=1;d=(j<<6)+c|0;f=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=f;f=v[d+4>>2];v[b>>2]=v[d>>2];v[b+4>>2]=f;v[b+48>>2]=v[d+48>>2];f=v[d+44>>2];v[b+40>>2]=v[d+40>>2];v[b+44>>2]=f;f=v[d+36>>2];v[b+32>>2]=v[d+32>>2];v[b+36>>2]=f;f=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=f;f=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=f;h=v[e+48>>2];f=(h<<6)+c|0;m=z[b+24>>2];g=C(z[f+24>>2]-m);i=C(g*g);n=z[b+16>>2];g=C(z[f+16>>2]-n);l=C(g*g);y=z[b+20>>2];g=C(z[f+20>>2]-y);g=C(i+C(l+C(g*g)));i=z[d+44>>2];f=e;while(1){d=v[f+48>>2];k=v[f+52>>2];if(d>>>0>>0){while(1){j=(d<<6)+c|0;l=C(z[j+24>>2]-m);B=C(l*l);l=C(z[j+16>>2]-n);D=C(l*l);l=C(z[j+20>>2]-y);l=C(B+C(D+C(l*l)));j=l>g;g=j?l:g;h=j?d:h;d=d+1|0;if((k|0)!=(d|0)){continue}break}}f=v[f+16>>2];if(f){continue}break}t[h+o|0]=1;d=(h<<6)+c|0;f=v[d+4>>2];v[b+64>>2]=v[d>>2];v[b+68>>2]=f;v[b+112>>2]=v[d+48>>2];f=v[d+44>>2];v[b+104>>2]=v[d+40>>2];v[b+108>>2]=f;f=v[d+36>>2];v[b+96>>2]=v[d+32>>2];v[b+100>>2]=f;f=v[d+28>>2];v[b+88>>2]=v[d+24>>2];v[b+92>>2]=f;f=v[d+20>>2];v[b+80>>2]=v[d+16>>2];v[b+84>>2]=f;f=v[d+12>>2];v[b+72>>2]=v[d+8>>2];v[b+76>>2]=f;m=z[d+44>>2];g=C(34028234663852886e22);while(1){d=v[e+48>>2];j=v[e+52>>2];b:{if(d>>>0>=j>>>0){break b}f=d+1|0;if(j-d&1){if(!w[d+o|0]){n=z[((d<<6)+c|0)+44>>2];k=n>2];f=n>2];k=n>2];if(e){continue}break}c=(h<<6)+c|0;d=v[c+4>>2];v[b+128>>2]=v[c>>2];v[b+132>>2]=d;v[b+176>>2]=v[c+48>>2];d=v[c+44>>2];v[b+168>>2]=v[c+40>>2];v[b+172>>2]=d;d=v[c+36>>2];v[b+160>>2]=v[c+32>>2];v[b+164>>2]=d;d=v[c+28>>2];v[b+152>>2]=v[c+24>>2];v[b+156>>2]=d;d=v[c+20>>2];v[b+144>>2]=v[c+16>>2];v[b+148>>2]=d;d=v[c+12>>2];v[b+136>>2]=v[c+8>>2];v[b+140>>2]=d;g=z[c+44>>2];i=im?m:i;z[a>>2]=g>2]=2139095039;v[k+16>>2]=0;v[k+20>>2]=0;v[k+24>>2]=k;k=(y|64)+a|0;v[k+32>>2]=2139095039;v[k+16>>2]=0;v[k+20>>2]=0;v[k+24>>2]=k;t=t+2|0;if((t|0)!=32){continue}break}k=v[b+4>>2];v[a+2176>>2]=v[b>>2];v[a+2180>>2]=k;t=v[b+12>>2];k=a+2184|0;v[k>>2]=v[b+8>>2];v[k+4>>2]=t;b=v[c+4>>2];v[a+2192>>2]=v[c>>2];v[a+2196>>2]=b;b=v[c+8>>2];k=v[c+12>>2];t=a+2304|0;v[t>>2]=0;v[t+4>>2]=0;v[a+2220>>2]=g;v[a+2216>>2]=f;v[a+2212>>2]=e;v[a+2208>>2]=d;f=a+2260|0;v[f>>2]=0;v[f+4>>2]=0;y=a+2268|0;v[y>>2]=0;v[y+4>>2]=0;D=a+2280|0;v[D>>2]=0;v[D+4>>2]=0;E=a+2288|0;v[E>>2]=0;v[E+4>>2]=0;v[a+2256>>2]=1065353216;H=a+2276|0;v[H>>2]=1065353216;F=a+2296|0;v[F>>2]=1065353216;v[F+4>>2]=0;v[a+3616>>2]=0;G=a+2312|0;v[G>>2]=0;v[G+4>>2]=0;I=a+2200|0;v[I>>2]=b;v[I+4>>2]=k;I9(a+3488|0,255,128);v[a+3624>>2]=i;v[a+3620>>2]=h;v[a+2332>>2]=0;v[a+2324>>2]=0;v[a+2328>>2]=0;p=z[d+20>>2];r=z[e+20>>2];o=z[d+24>>2];u=z[e+24>>2];w=z[e+8>>2];x=z[e>>2];A=z[e+4>>2];B=z[e+12>>2];j=z[d+12>>2];l=z[d>>2];m=z[d+16>>2];s=z[e+16>>2];n=z[d+4>>2];q=z[d+8>>2];v[a+2316>>2]=0;v[a+2300>>2]=0;v[a+2284>>2]=0;v[y>>2]=0;v[a+2320>>2]=g;v[a+2172>>2]=a+1984;v[a+2168>>2]=a+1920;v[a+2164>>2]=a+1856;v[a+2160>>2]=a+1792;v[a+2156>>2]=a+1728;v[a+2152>>2]=a+1664;v[a+2148>>2]=a+1600;v[a+2144>>2]=a+1536;v[a+2140>>2]=a+1472;v[a+2136>>2]=a+1408;v[a+2132>>2]=a+1344;v[a+2128>>2]=a+1280;v[a+2124>>2]=a+1216;v[a+2120>>2]=a+1152;v[a+2116>>2]=a+1088;v[a+2112>>2]=a+1024;v[a+2108>>2]=a+960;v[a+2104>>2]=a+896;v[a+2100>>2]=a+832;v[a+2096>>2]=a+768;v[a+2092>>2]=a+704;v[a+2088>>2]=a+640;v[a+2084>>2]=a+576;v[a+2080>>2]=a+512;v[a+2076>>2]=a+448;v[a+2072>>2]=a+384;v[a+2068>>2]=a+320;v[a+2064>>2]=a+256;v[a+2060>>2]=a+192;v[a+2056>>2]=a+128;v[a+2052>>2]=a- -64;J=C(-l);m=C(s-m);p=C(r-p);r=C(u-o);o=C(C(C(J*m)-C(p*n))-C(q*r));u=C(C(j*j)+C(-.5));s=C(C(C(j*C(C(n*m)-C(l*p)))+C(u*r))-C(q*o));z[G>>2]=s+s;s=C(C(C(u*p)+C(j*C(C(l*r)-C(q*m))))-C(n*o));z[a+2308>>2]=s+s;m=C(C(C(u*m)+C(j*C(C(q*p)-C(n*r))))-C(l*o));z[t>>2]=m+m;o=C(C(C(q*A)-C(n*w))+C(C(j*x)-C(l*B)));m=C(o+o);p=C(C(C(l*w)-C(q*x))+C(C(j*A)-C(n*B)));r=C(p+p);o=C(C(1)-C(o*m));u=C(p*r);z[F>>2]=o-u;l=C(C(C(n*x)-C(l*A))+C(C(j*w)-C(q*B)));s=C(l*r);j=C(C(j*B)-C(C(C(J*x)-C(A*n))-C(q*w)));n=C(j*m);z[a+2292>>2]=s-n;q=C(l*m);w=C(j*r);z[E>>2]=q+w;z[D>>2]=s+n;n=C(l+l);l=C(l*n);z[H>>2]=o-l;x=C(p*m);j=C(j*n);z[a+2272>>2]=x-j;z[a+2264>>2]=q-w;z[f>>2]=x+j;z[a+2256>>2]=C(C(1)-u)-l;v[a+2048>>2]=a;j=z[c>>2];v[a+2224>>2]=1065286107;z[a+2240>>2]=j*j;return a} -function tQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=0,u=0,x=0;e=v[a+40>>2];b=v[e+304>>2];g=v[b>>2];if(g){v[b>>2]=v[g>>2]}if(!g){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?26823:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,7251,f,19395,82)|0;b=f+19&-16;v[b-4>>2]=b-f;g=sK(b,v[e+308>>2])}v[g+7120>>2]=0;a:{if(!v[a+32>>2]){break a}h=g+7116|0;b=v[a+28>>2];while(1){o=xa-48|0;xa=o;u=r<<2;f=v[v[u+b>>2]+20>>2];while(1){e=yH(o,v[f>>2]);v[o+36>>2]=f;b=f;while(1){if(b){while(1){e=b;d=v[b+40>>2];b:{if(!d){break b}c=v[d+60>>2];c:{if(c){b=1;if(!(t[v[c+44>>2]+44|0]&1)){break c}}c=v[d- -64>>2];b=0;if(!c){break c}b=!(t[v[c+44>>2]+44|0]&1)}if(!b|!(!v[(v[v[v[d+48>>2]+1004>>2]+168>>2]+(v[d+40>>2]<<5)|0)+12>>2]&(w[v[d+52>>2]]&6)!=0)){break b}x=v[e>>2];i=C(0);j=C(0);k=C(0);l=C(0);b=xa-80|0;xa=b;s=d- -64|0;p=v[d+28>>2];q=v[d+24>>2];d:{if(q){c=v[q+36>>2];z[b+48>>2]=z[c>>2];i=z[c+20>>2];j=z[c+16>>2];k=z[c+8>>2];l=z[c+4>>2];m=z[c+24>>2];n=z[c+12>>2];break d}v[b+48>>2]=0;m=C(0);n=C(1)}s=v[s>>2];z[b+72>>2]=m;z[b+68>>2]=i;z[b+64>>2]=j;z[b+60>>2]=n;z[b+56>>2]=k;z[b+52>>2]=l;e:{if(p){c=v[p+36>>2];z[b+16>>2]=z[c>>2];j=z[c+16>>2];n=z[c+12>>2];k=z[c+8>>2];l=z[c+4>>2];m=z[c+24>>2];i=z[c+20>>2];break e}v[b+16>>2]=0;n=C(1);l=C(0);k=C(0);j=C(0);m=C(0);i=C(0)}z[b+40>>2]=m;z[b+36>>2]=i;z[b+32>>2]=j;z[b+28>>2]=n;z[b+24>>2]=k;z[b+20>>2]=l;c=(s|0)==(x|0);Ba[v[d+16>>2]](v[d+20>>2],b+48|0,b+16|0,c);f:{if(c){SH(v[p+36>>2],b+16|0);c=v[p+36>>2];z[c>>2]=z[b+16>>2];z[c+4>>2]=z[b+20>>2];z[c+8>>2]=z[b+24>>2];z[c+12>>2]=z[b+28>>2];z[c+16>>2]=z[b+32>>2];z[c+20>>2]=z[b+36>>2];z[c+24>>2]=z[b+40>>2];c=v[d+64>>2];v[b+12>>2]=c;d=v[h+4>>2];if(d>>>0>=(v[h+8>>2]&2147483647)>>>0){pG(h,b+12|0);break f}v[v[h>>2]+(d<<2)>>2]=c;v[h+4>>2]=d+1;break f}SH(v[q+36>>2],b+48|0);c=v[q+36>>2];z[c>>2]=z[b+48>>2];z[c+4>>2]=z[b+52>>2];z[c+8>>2]=z[b+56>>2];z[c+12>>2]=z[b+60>>2];z[c+16>>2]=z[b+64>>2];z[c+20>>2]=z[b+68>>2];z[c+24>>2]=z[b+72>>2];c=v[d+60>>2];v[b+12>>2]=c;d=v[h+4>>2];if(d>>>0>=(v[h+8>>2]&2147483647)>>>0){pG(h,b+12|0);break f}v[v[h>>2]+(d<<2)>>2]=c;v[h+4>>2]=d+1}xa=b+80|0}b=v[e+32>>2];if(b){continue}b=v[e+36>>2];if(b){continue}break}}e=v[e+28>>2];if(e){b=v[e+36>>2];continue}break}f=v[f+24>>2];if(f){continue}break}xa=o+48|0;b=v[a+28>>2];e=v[u+b>>2];t[e+44|0]=w[e+44|0]&253;r=r+1|0;if(r>>>0>2]){continue}break}if(!v[g+7120>>2]){break a}if(v[g+7120>>2]){b=0;while(1){d=v[h>>2]+(b<<2)|0;e=v[a+36>>2];f=v[e+4>>2];g:{if(f>>>0>=(v[e+8>>2]&2147483647)>>>0){pG(e,d);break g}v[v[e>>2]+(f<<2)>>2]=v[d>>2];v[e+4>>2]=f+1}b=b+1|0;if(b>>>0>2]){continue}break}}}a=v[v[a+40>>2]+304>>2];v[g>>2]=v[a>>2];v[a>>2]=g}function UM(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,z=0,A=0,C=0;o=v[a+52>>2];e=v[a+36>>2];j=v[a+40>>2];q=v[a+44>>2];k=xa-32|0;xa=k;l=v[a+32>>2];c=v[l+32>>2];r=v[a+28>>2];t=v[r>>2];s=v[l+20>>2];if(s){z=v[l+16>>2];h=o+192|0;while(1){b=v[(v[e+256>>2]+B(v[(m<<2)+z>>2],44)|0)+24>>2];if((b|0)!=-1){while(1){d=v[e+148>>2];f=(b>>>0)/(d>>>0)|0;A=v[v[v[e+128>>2]+(f<<2)>>2]+(b-B(d,f)<<2)>>2];f=v[e+228>>2];d=(b>>>0)/(f>>>0)|0;n=B(d,f);C=v[v[e+208>>2]+(d<<2)>>2];f=v[o+472>>2];i=b<<1;g=v[e+616>>2];p=v[g+20>>2];d=(i>>>0)/(p>>>0)|0;d=v[v[v[g>>2]+(d<<2)>>2]+(i-B(d,p)<<2)>>2];a:{if(d>>>0>=4294967168){v[c+12>>2]=0;v[c>>2]=h;u[c+8>>1]=65535;break a}p=d>>>7|0;g=v[e+184>>2]+B(p,24)|0;if(w[g+5|0]==1){g=v[g+20>>2];d=d>>>1&63;Ba[v[v[g>>2]+188>>2]](g,d,k+28|0,k+27|0);b:{if(w[k+27|0]==2){v[c>>2]=g;break b}v[c>>2]=h;d=65535}v[c+12>>2]=0;u[c+8>>1]=d;break a}d=v[v[e+196>>2]+(p<<2)>>2];d=w[g+4|0]&4?d:v[(d<<2)+j>>2]+q|0;u[c+8>>1]=65535;d=d+1|0;v[c+12>>2]=d;v[c>>2]=(d<<6)+f}g=b-n|0;d=i|1;i=v[e+616>>2];n=v[i+20>>2];b=(d>>>0)/(n>>>0)|0;b=v[v[v[i>>2]+(b<<2)>>2]+(d-B(b,n)<<2)>>2];c:{if(b>>>0>=4294967168){v[c+16>>2]=0;v[c+4>>2]=h;u[c+10>>1]=65535;break c}i=b>>>7|0;d=v[e+184>>2]+B(i,24)|0;if(w[d+5|0]==1){d=v[d+20>>2];b=b>>>1&63;Ba[v[v[d>>2]+188>>2]](d,b,k+20|0,k+19|0);f=w[k+19|0];v[c+16>>2]=0;n=b;b=(f|0)==2;u[c+10>>1]=b?n:-1;v[c+4>>2]=b?d:h;break c}b=v[v[e+196>>2]+(i<<2)>>2];b=w[d+4|0]&4?b:v[(b<<2)+j>>2]+q|0;u[c+10>>1]=65535;b=b+1|0;v[c+16>>2]=b;v[c+4>>2]=(b<<6)+f}u[c+22>>1]=2;v[c+24>>2]=A;c=c+32|0;b=v[(C+(g<<4)|0)+8>>2];if((b|0)!=-1){continue}break}}m=m+1|0;if((s|0)!=(m|0)){continue}break}b=v[l+32>>2]}else{b=c}Az(b,c-b>>5);if(v[r+12>>2]){b=v[l+12>>2];d=0;while(1){j=v[o+472>>2];h=xa-16|0;v[h+12>>2]=0;v[h+8>>2]=q;d:{e:{f:{g:{h:{m=d<<4;e=m+b|0;b=w[e+8|0];switch(b-2|0){case 1:break g;case 0:break h;default:break f}}v[c>>2]=v[e>>2]&-64;b=x[e>>1];v[c+12>>2]=0;u[c+8>>1]=b&63;break d}b=o+192|0;break e}b=(j+(v[e>>2]+v[(h+8|0)+(b<<2)>>2]<<6)|0)- -64|0}v[c>>2]=b;b=0;f=w[e+8|0];if((f|0)!=3){b=(v[e>>2]+v[(h+8|0)+(f<<2)>>2]|0)+1|0}u[c+8>>1]=65535;v[c+12>>2]=b}i:{j:{k:{l:{m:{b=w[e+9|0];switch(b-2|0){case 1:break l;case 0:break m;default:break k}}v[c+4>>2]=v[e+4>>2]&-64;b=x[e+4>>1];v[c+16>>2]=0;u[c+10>>1]=b&63;break i}b=o+192|0;break j}b=(j+(v[e+4>>2]+v[(h+8|0)+(b<<2)>>2]<<6)|0)- -64|0}v[c+4>>2]=b;b=0;j=w[e+9|0];if((j|0)!=3){b=(v[e+4>>2]+v[(h+8|0)+(j<<2)>>2]|0)+1|0}u[c+10>>1]=65535;v[c+16>>2]=b}b=v[l+12>>2];e=v[(m+b|0)+12>>2];u[c+22>>1]=1;v[c+24>>2]=e;c=c+32|0;d=d+1|0;if(d>>>0>2]){continue}break}}v[t+11956>>2]=c-v[l+32>>2]>>5;xa=k+32|0;a=v[a+28>>2];v[a+88>>2]=v[v[a>>2]+11956>>2]}function q_(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0);e=xa-192|0;xa=e;f=z[d>>2];k=z[d+4>>2];z[e+56>>2]=C(1)/z[d+8>>2];z[e+52>>2]=C(1)/k;z[e+48>>2]=C(1)/f;z[e+60>>2]=z[d+12>>2];z[e- -64>>2]=z[d+16>>2];z[e+68>>2]=z[d+20>>2];z[e+72>>2]=z[d+24>>2];s=z[c+20>>2];t=z[c+24>>2];u=z[c+16>>2];v=z[c+4>>2];w=C(-v);h=C(w-v);x=z[c+8>>2];n=C(-x);g=C(h*n);f=z[c+12>>2];k=z[c>>2];o=C(C(-k)-k);i=C(f*o);z[e+28>>2]=g-i;z[e+20>>2]=i+g;g=C(C(k*o)+C(1));m=C(h*w);z[e+32>>2]=g-m;D=C(n-x);j=C(D*n);z[e+16>>2]=g-j;t=C(t*C(-2));u=C(u*C(-2));s=C(s*C(-2));g=C(C(x*t)+C(C(k*u)+C(v*s)));i=C(C(f*f)+C(-.5));z[e+44>>2]=C(x*g)+C(C(t*i)-C(f*C(C(k*s)-C(u*v))));z[e+40>>2]=C(v*g)+C(C(s*i)-C(f*C(C(x*u)-C(t*k))));n=C(o*n);h=C(f*h);z[e+24>>2]=n+h;o=C(o*w);w=C(f*D);z[e+12>>2]=o-w;z[e+8>>2]=n-h;z[e+4>>2]=o+w;z[e>>2]=C(C(1)-m)-j;z[e+36>>2]=C(k*g)+C(C(u*i)-C(f*C(C(v*t)-C(s*x))));k=z[e+20>>2];v=z[e+16>>2];x=z[e+32>>2];n=z[e+28>>2];o=z[e+8>>2];t=z[e>>2];u=z[e+4>>2];s=z[e+12>>2];w=z[e+24>>2];h=z[e+64>>2];g=C(h+h);f=z[e+68>>2];j=C(f+f);c=e+80|0;E=C(h*g);p=C(f*j);i=C(C(C(1)-E)-p);J=z[e+48>>2];y=z[e+60>>2];m=C(y+y);l=C(m*f);q=z[e+72>>2];r=C(g*q);D=C(l+r);A=C(J*D);F=C(m*h);G=C(j*q);h=C(F+G);H=C(g*f);I=C(m*q);f=C(H-I);K=z[e+52>>2];B=C(f*K);g=C(l-r);q=C(C(1)-C(y*m));m=C(q-E);L=z[e+56>>2];l=C(m*L);j=C(C(C(i*A)+C(h*B))+C(g*l));M=z[e+36>>2];y=C(F-G);q=C(q-p);E=C(H+I);p=C(C(C(y*A)+C(q*B))+C(E*l));F=z[e+40>>2];A=C(C(C(D*A)+C(f*B))+C(m*l));G=z[e+44>>2];z[c+44>>2]=C(C(j*M)+C(p*F))+C(A*G);r=C(J*y);H=C(q*K);I=C(E*L);B=C(C(C(i*r)+C(h*H))+C(g*I));l=C(C(C(y*r)+C(q*H))+C(E*I));r=C(C(C(D*r)+C(f*H))+C(m*I));z[c+40>>2]=C(C(M*B)+C(F*l))+C(G*r);z[c+32>>2]=C(C(j*w)+C(p*n))+C(A*x);z[c+28>>2]=C(C(B*w)+C(l*n))+C(r*x);z[c+20>>2]=C(C(j*s)+C(p*v))+C(A*k);z[c+16>>2]=C(C(B*s)+C(l*v))+C(r*k);z[c+8>>2]=C(o*A)+C(C(t*j)+C(u*p));z[c+4>>2]=C(o*r)+C(C(t*B)+C(u*l));l=i;i=C(J*i);j=C(h*K);p=C(g*L);h=C(C(C(l*i)+C(h*j))+C(g*p));g=C(C(C(y*i)+C(q*j))+C(E*p));f=C(C(C(D*i)+C(f*j))+C(m*p));z[c+36>>2]=C(C(M*h)+C(F*g))+C(G*f);z[c+24>>2]=C(C(h*w)+C(g*n))+C(f*x);z[c+12>>2]=C(C(h*s)+C(g*v))+C(f*k);z[c>>2]=C(o*f)+C(C(t*h)+C(u*g));r_(e+128|0,c,b);z[a>>2]=z[e+128>>2];z[a+4>>2]=z[e+132>>2];z[a+8>>2]=z[e+136>>2];z[a+12>>2]=z[e+140>>2];z[a+16>>2]=z[e+144>>2];z[a+20>>2]=z[e+148>>2];z[a+24>>2]=z[e+152>>2];z[a+28>>2]=z[e+156>>2];z[a+32>>2]=z[e+160>>2];z[a+36>>2]=z[e+164>>2];z[a+40>>2]=z[e+168>>2];z[a+44>>2]=z[e+172>>2];z[a+48>>2]=z[e+176>>2];z[a+52>>2]=z[e+180>>2];z[a+56>>2]=z[e+184>>2];xa=e+192|0}function bk(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=xa-48|0;xa=e;g=w[c|0];if((g&5)==5){a9(v[37696],4,18916,476,69240,0);g=g&251}if((g&36)==36){a9(v[37696],4,18916,483,69097,0);g=g&223}f=uh(a);h=f?f+32|0:0;d=a+48|0;a:{b:{l=g&1;i=w[b|0];c=i&1;c:{if(!(l|!c)){j=a+20|0;m=x[a+24>>1];if(m){o=(m|0)==1?j:v[a+20>>2];c=0;while(1){k=(c<<2)+o|0;n=v[k>>2];Ba[v[v[n>>2]+156>>2]](e+16|0,n);d:{if(!(t[e+16|0]&1)){break d}e:{f:{k=v[v[k>>2]+116>>2];switch(k-1|0){case 0:case 4:break e;default:break f}}if((k|0)!=6){break d}}a9(v[37696],4,18916,513,74978,0);break a}c=c+1|0;if((m|0)!=(c|0)){continue}break}c=w[b|0]}else{c=i}g:{h:{if(!(c&2)){break h}i:{if(w[a+317|0]&128){c=v[a+56>>2];z[e+16>>2]=z[c+192>>2];z[e+20>>2]=z[c+196>>2];z[e+24>>2]=z[c+200>>2];z[e+28>>2]=z[c+204>>2];z[e+32>>2]=z[c+208>>2];z[e+36>>2]=z[c+212>>2];z[e+40>>2]=z[c+216>>2];if(f){break i}break g}if(y[a+52>>2]>3221225471){break h}if(!f|!YG(a- -64|0,e+16|0)){break h}}lu(j,f+5584|0,a);c=f+5652|0;v[c>>2]=v[c>>2]+1}if(!f){break g}v[h+2672>>2]=v[h+2672>>2]-1;v[h+2668>>2]=v[h+2668>>2]+1}if(!v[a+240>>2]|(v[a+52>>2]&-1073741824)!=1073741824){break c}c=v[a+240>>2];h=a- -64|0;j=w[v[h+176>>2]+31|0]==1;j:{if(j){if(c){break j}break c}if(!v[a+240>>2]|(!c|w[v[h+176>>2]+31|0]==1)){break c}}SG(h,v[v[d>>2]+2428>>2],j);break c}if(c|!l){break c}if((Ba[v[v[a>>2]+24>>2]](a)|0)==2){break b}k:{if(!v[a+240>>2]|(v[a+52>>2]&-1073741824)!=1073741824){break k}c=a- -64|0;if(!v[a+240>>2]|w[v[c+176>>2]+31|0]==1){break k}GG(c,v[v[d>>2]+2428>>2])}if(!f){break c}v[h+2668>>2]=v[h+2668>>2]-1;v[h+2672>>2]=v[h+2672>>2]+1}l:{if(!(i&l)|!((w[b|0]^g)&2)){break l}c=!f;m:{if(w[a+317|0]&128){b=v[a+56>>2];z[e+16>>2]=z[b+192>>2];z[e+20>>2]=z[b+196>>2];z[e+24>>2]=z[b+200>>2];z[e+28>>2]=z[b+204>>2];z[e+32>>2]=z[b+208>>2];z[e+36>>2]=z[b+212>>2];z[e+40>>2]=z[b+216>>2];b=1;break m}if(y[a+52>>2]>3221225471){break l}b=YG(a- -64|0,e+16|0)}if(c|!b){break l}lu(a+20|0,f+5584|0,a);a=f+5652|0;v[a>>2]=v[a>>2]+1}t[e+8|0]=g;b=xa-16|0;xa=b;g=w[e+8|0];a=v[d+8>>2];i=v[d+268>>2];f=w[(i&16384?a+268|0:d+60|0)|0];c=g&!(f&1);n:{o:{p:{switch((v[d+4>>2]>>>30|0)-2|0){case 0:if(w[v[d>>2]+4785|0]){break o}break;case 1:break o;default:break p}}if(c){v[d+236>>2]=0;v[d+240>>2]=0;v[d+260>>2]=0;v[d+264>>2]=1;v[d+244>>2]=0;v[d+248>>2]=0;v[d+252>>2]=0;v[d+256>>2]=0}c=d+16|0;a=v[d>>2];if(a){a=v[a+2428>>2]}else{a=0}t[b+8|0]=w[e+8|0];QG(c,a,b+8|0);break n}q:{if(c){Wk(d);a=v[d+8>>2];break q}if(!(f&!(g&1))){break q}v[d+268>>2]=i&-32769}if(!a){a=Pu(v[d>>2],w[d+7|0]&15);v[d+8>>2]=a}t[a+268|0]=w[e+8|0];Xu(v[d>>2],d);v[d+268>>2]=v[d+268>>2]|16384}xa=b+16|0;break a}a9(v[37696],4,18916,540,74901,0)}xa=e+48|0}function bJ(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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;j=xa-112|0;xa=j;v[a>>2]=0;v[a+4>>2]=-1;o=w[v[c+28>>2]- -64|0]<<3&32;k=v[c+4>>2];k=w[v[k+44>>2]+9|0]-1>>>0<2?k:0;a:{if(!k){break a}k=v[k+44>>2];if(w[k+9|0]!=2){o=o|w[k+44|0]<<4&16|1;break a}o=o|2}r=a+2|0;k=v[c+28>>2];s=v[k+28>>2];y=v[k+24>>2];z=v[k+20>>2];A=v[k+16>>2];l=w[v[d+28>>2]- -64|0]<<3&32;i=v[d+4>>2];i=w[v[i+44>>2]+9|0]-1>>>0<2?i:0;k=l;b:{if(!i){break b}k=v[i+44>>2];if(w[k+9|0]!=2){k=l|w[k+44|0]<<4&16|1;break b}k=l|2}i=v[d+28>>2];B=v[i+20>>2];C=v[i+24>>2];D=v[i+28>>2];E=v[i+16>>2];i=v[b>>2];v[j+100>>2]=s;v[j+96>>2]=y;v[j+92>>2]=z;v[j+88>>2]=A;v[j+84>>2]=D;v[j+80>>2]=C;v[j+76>>2]=B;v[j+72>>2]=E;Ba[i|0](j+104|0,o,j+88|0,k,j+72|0,r,v[b+4>>2],v[b+8>>2]);i=x[j+104>>1];u[a>>1]=i;c:{d:{if(!(i&4)){break d}if(v[b+12>>2]){if(!h){break c}e:{if((g|0)!=-1){break e}m=v[b+16>>2];g=v[m+12>>2];if((g|0)==-1){g=v[m+4>>2];v[j+104>>2]=0;if((v[m+8>>2]&2147483647)>>>0<=g>>>0){i=v[m+8>>2];p=i&2147483647?i<<1:1;f:{if(!p){break f}i=p<<2;if(!i){break f}l=v[37696];n=l+12|0;n=(H=n,I=i,J=Ba[v[v[l>>2]+20>>2]](l)|0?57531:63804,K=16608,L=553,G=v[v[n>>2]+8>>2],Ba[G](H|0,I|0,J|0,K|0,L|0)|0)}q=v[m+4>>2];l=(q<<2)+n|0;if((q|0)>0){F=v[m>>2];i=n;while(1){v[i>>2]=v[F>>2];F=F+4|0;i=i+4|0;if(l>>>0>i>>>0){continue}break}}v[l>>2]=v[j+104>>2];g:{if(v[m+8>>2]<0){break g}l=v[m>>2];if(!l){break g}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,l);q=v[m+4>>2]}v[m+8>>2]=p;v[m>>2]=n;v[m+4>>2]=q+1;break e}v[v[m>>2]+(g<<2)>>2]=0;v[m+4>>2]=g+1;break e}n=v[m>>2]+(g<<2)|0;v[m+12>>2]=v[n>>2];v[n>>2]=0}n=v[v[c+4>>2]+44>>2];p=v[((w[n+9|0]<<2)+149664|0)+40>>2]+n|0;l=v[37419];i=l+v[c+28>>2]|0;c=v[v[d+4>>2]+44>>2];n=v[((w[c+9|0]<<2)+149664|0)+40>>2]+c|0;c=l+v[d+28>>2]|0;d=v[b+12>>2];v[j+68>>2]=s;v[j+64>>2]=y;v[j+60>>2]=z;v[j+56>>2]=A;v[j+52>>2]=D;v[j+48>>2]=C;v[j+44>>2]=B;v[j+40>>2]=E;Ba[v[v[d>>2]>>2]](j+104|0,d,g,o,j+56|0,p,i,k,j+40|0,n,c,r);i=x[j+104>>1];u[a>>1]=i;v[a+4>>2]=g;break d}u[a>>1]=i&65523;a9(v[37696],2,11474,270,69674,0);i=x[a>>1]}if((i&3)==3){i=i&65534;u[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=v[b+12>>2];v[j+36>>2]=s;v[j+32>>2]=y;v[j+28>>2]=z;v[j+24>>2]=A;v[j+20>>2]=D;v[j+16>>2]=C;v[j+12>>2]=B;v[j+8>>2]=E;Ba[v[v[c>>2]+4>>2]](c,g,o,j+24|0,k,j+8|0,0);i=x[a>>1];if((i&12)==12){break i}}i=i&65523;u[a>>1]=i}b=v[b+16>>2];v[v[b>>2]+(g<<2)>>2]=v[b+12>>2];v[b+12>>2]=g;v[a+4>>2]=-1}if(!(i&4?h:1)){break c}i=x[a+2>>1];if(!(!e|x[a>>1]&3|(!f|!(t[v[e+44>>2]+44|0]&1)))){i=t[v[f+44>>2]+44|0]&1?i&1?i&-2:i:i}u[r>>1]=i}xa=j+112|0}function B8(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0;h=xa-128|0;xa=h;O=v[a+40>>2];P=v[a+36>>2];z[e+8>>2]=z[a+44>>2];v[e>>2]=P;v[e+4>>2]=O;i=z[a+40>>2];l=z[a+36>>2];z[h+24>>2]=-z[a+44>>2];z[h+20>>2]=-i;z[h+16>>2]=-l;e=h+16|0;z8(a,e);z[d>>2]=z[a+48>>2];z[h+16>>2]=z[a>>2];z[h+20>>2]=z[a+4>>2];z[h+24>>2]=z[a+8>>2];z[h+28>>2]=z[a+12>>2];z[h+32>>2]=z[a+16>>2];z[h+36>>2]=z[a+20>>2];z[h+40>>2]=z[a+24>>2];z[h+44>>2]=z[a+28>>2];z[h+48>>2]=z[a+32>>2];p9(h+72|0,e,c);i=z[h+72>>2];z[b>>2]=i;l=z[h+76>>2];z[b+4>>2]=l;k=z[h+80>>2];z[b+8>>2]=k;if(!(!(!(i>C(0))|!(l>C(0)))&k>C(0))){a=v[37696];v[h>>2]=g;a9(a,2,6223,84,70042,h);Ba[v[v[f>>2]+40>>2]](h+104|0,f,C(1.0099999904632568));Ba[v[v[f>>2]+76>>2]](h+72|0,f);l=z[h+72>>2];o=C(-l);n=C(o-l);k=z[h+80>>2];p=C(-k);G=C(n*p);i=z[h+84>>2];m=z[h+76>>2];r=C(-m);j=C(r-m);H=C(i*j);q=z[h+116>>2];s=z[h+104>>2];A=C(C(q-s)*C(.5));y=C(i*n);I=C(j*p);w=z[h+120>>2];t=z[h+108>>2];B=C(C(w-t)*C(.5));J=C(C(l*n)+C(1));K=C(j*r);j=z[h+124>>2];u=z[h+112>>2];E=C(C(j-u)*C(.5));L=C(C(C(D(C(C(G-H)*A)))+C(D(C(C(y+I)*B))))+C(D(C(C(J-K)*E))));x=o;o=C(C(s+q)*C(.5));o=C(o+o);q=C(C(t+w)*C(.5));q=C(q+q);j=C(C(u+j)*C(.5));s=C(j+j);w=C(C(C(x*o)-C(q*m))-C(k*s));t=C(z[h+96>>2]*C(-2));u=C(z[h+88>>2]*C(-2));x=C(z[h+92>>2]*C(-2));F=C(C(k*t)+C(C(l*u)+C(x*m)));j=C(C(i*i)+C(-.5));M=C(C(C(k*F)+C(C(t*j)-C(i*C(C(l*x)-C(u*m)))))+C(C(C(s*j)+C(i*C(C(m*o)-C(l*q))))-C(k*w)));z[h+124>>2]=L+M;n=C(n*r);r=C(p-k);N=C(i*r);p=C(r*p);r=C(C(C(D(C(C(n+N)*A)))+C(D(C(C(J-p)*B))))+C(D(C(C(I-y)*E))));y=C(C(C(m*F)+C(C(x*j)-C(i*C(C(k*u)-C(t*l)))))+C(C(C(q*j)+C(i*C(C(l*s)-C(k*o))))-C(m*w)));z[h+120>>2]=r+y;n=C(C(C(D(C(C(C(C(1)-K)-p)*A)))+C(D(C(C(n-N)*B))))+C(D(C(C(G+H)*E))));i=C(C(C(l*F)+C(C(u*j)-C(i*C(C(m*t)-C(x*k)))))+C(C(C(o*j)+C(i*C(C(k*q)-C(m*s))))-C(l*w)));z[h+116>>2]=n+i;z[h+112>>2]=M-L;z[h+108>>2]=y-r;z[h+104>>2]=i-n;y8(h+16|0,0);v[h+60>>2]=0;v[h+52>>2]=0;v[h+56>>2]=0;k=C(C(z[h+116>>2]-z[h+104>>2])*C(.5));m=C(C(z[h+120>>2]-z[h+108>>2])*C(.5));j=C(C(z[h+124>>2]-z[h+112>>2])*C(.5));n=C(C(C((k!=C(0)?k:C(1))*(m!=C(0)?m:C(1)))*(j!=C(0)?j:C(1)))*C(8));l=C(z[d>>2]/n);i=C(l*C(0));z[h+36>>2]=i;z[h+44>>2]=i;p=C(k*k);j=C(j*j);k=C(n*C(.3333333432674408));o=C(C(C(p+j)*k)*l);z[h+32>>2]=o;m=C(m*m);p=C(C(C(p+m)*k)*l);z[h+48>>2]=p;z[h+20>>2]=i;z[h+24>>2]=i;z[h+28>>2]=i;z[h+40>>2]=i;z[h+64>>2]=n*l;i=C(C(C(m+j)*k)*l);z[h+16>>2]=i;z[b+8>>2]=p;z[b+4>>2]=o;z[b>>2]=i;v[c+8>>2]=0;v[c+12>>2]=1065353216;v[c>>2]=0;v[c+4>>2]=0}xa=h+128|0}function gE(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=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=0,R=0,S=0,T=0;h=xa-32|0;xa=h;v[h+24>>2]=d;y=z[e+20>>2];M=z[e+16>>2];k=z[e+8>>2];d=v[c+40>>2];m=z[d+8>>2];r=z[d+20>>2];i=C(C(m+r)*C(.5));A=C(i+i);q=z[e>>2];s=z[d>>2];t=z[d+12>>2];i=C(C(s+t)*C(.5));E=C(i+i);o=z[d+4>>2];u=z[d+16>>2];i=C(C(o+u)*C(.5));F=C(i+i);i=z[e+4>>2];G=C(C(k*A)+C(C(q*E)+C(F*i)));p=z[e+12>>2];H=C(C(p*p)+C(-.5));I=C(z[e+24>>2]+C(C(k*G)+C(C(A*H)+C(p*C(C(q*F)-C(E*i))))));r=C(C(r-m)*C(.5));m=C(q+q);x=C(C(1)-C(q*m));l=C(i+i);J=C(i*l);s=C(C(t-s)*C(.5));K=C(m*k);L=C(p*l);t=C(C(u-o)*C(.5));o=C(p*m);l=C(l*k);u=C(C(D(C(r*C(x-J))))+C(C(D(C(s*C(K-L))))+C(D(C(t*C(o+l))))));z[h+20>>2]=I+u;y=C(y+C(C(i*G)+C(C(F*H)+C(p*C(C(k*E)-C(A*q))))));N=C(D(C(r*C(l-o))));m=C(m*i);l=C(k+k);o=C(p*l);l=C(k*l);x=C(N+C(C(D(C(s*C(m+o))))+C(D(C(t*C(x-l))))));z[h+16>>2]=y+x;k=C(M+C(C(q*G)+C(C(E*H)+C(p*C(C(i*A)-C(F*k))))));i=C(C(D(C(r*C(K+L))))+C(C(D(C(s*C(C(C(1)-J)-l))))+C(D(C(t*C(m-o))))));z[h+12>>2]=k+i;z[h+8>>2]=I-u;z[h+4>>2]=y-x;z[h>>2]=k-i;a:{b:{j=a+632|0;d=v[j>>2];if((d|0)==v[j+4>>2]){d=d<<1;if(!cE(j,d>>>0>32?d:32)){break b}d=v[j>>2]}v[j>>2]=d+1;n=v[j+8>>2]+B(d,24)|0;z[n>>2]=z[h>>2];z[n+4>>2]=z[h+4>>2];z[n+8>>2]=z[h+8>>2];z[n+12>>2]=z[h+12>>2];z[n+16>>2]=z[h+16>>2];z[n+20>>2]=z[h+20>>2];n=Ba[v[v[c>>2]+40>>2]](c)|0;j=v[j+12>>2]+B(d,44)|0;z[j+12>>2]=z[e>>2];z[j+16>>2]=z[e+4>>2];z[j+20>>2]=z[e+8>>2];z[j+24>>2]=z[e+12>>2];z[j+28>>2]=z[e+16>>2];z[j+32>>2]=z[e+20>>2];k=z[e+24>>2];v[j+40>>2]=f;z[j+36>>2]=k;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,28,24422,10409,228)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+24>>2]=-1;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;fC(e,n);gC(e,b,Ba[v[v[c>>2]+36>>2]](c)|0,g,n);v[j+4>>2]=e;b=v[37696];e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,12,24422,10409,234)|0;v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;dE(e,n);v[j+8>>2]=e;b=v[37696];f=v[37696];b=EC((P=b+12|0,Q=616,R=Ba[v[v[f>>2]+20>>2]](f)|0?44035:63804,S=10409,T=238,O=v[v[b+12>>2]+8>>2],Ba[O](P|0,Q|0,R|0,S|0,T|0)|0));if(Ba[v[v[c>>2]+40>>2]](c)|0){f=v[b+584>>2];if(!f){JC(b+296|0);f=v[b+584>>2]}v[b+584>>2]=v[f>>2];v[b+576>>2]=v[b+576>>2]+1;f=I9(f,0,96);v[b+588>>2]=f;g=f;f=v[c+40>>2];VC(b,g,f,f,0,v[c+32>>2],e)}v[j>>2]=b;b=d;break a}a9(v[37696],16,10409,207,69870,0);b=-1}v[a+704>>2]=0;hE(a,b,PC(a+4|0,b,v[a+640>>2],a+700|0));c=aD(a+648|0,h+24|0,h+31|0);if(!w[h+31|0]){v[c>>2]=v[h+24>>2]}v[c+4>>2]=b;v[v[a+688>>2]+(b<<2)>>2]=v[h+24>>2];xa=h+32|0;return 1}function HQ(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,y=0,z=0,A=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;b=v[a+28>>2];G=v[a+32>>2];H=v[a+168>>2];I=a+40|0;J=a+104|0;e=xa-48|0;xa=e;A=v[a+36>>2];if(A){b=v[b>>2];K=v[b+2176>>2];L=v[b+2172>>2];M=v[b+2184>>2];N=e|2;O=v[b+2188>>2];C=v[b+2192>>2];P=v[b+2196>>2];while(1){b=B(p,12)+G|0;h=v[b+4>>2];l=v[b>>2];i=v[l+4>>2];b=v[i+44>>2];q=w[b+9|0];s=v[(q<<2)+91852>>2]>>>1|0;j=v[h+4>>2];a:{if(!q){m=0;b=0;break a}m=t[b+44|0]&1;s=m<<4|s;b=i}g=b;h=v[h+28>>2];l=v[l+28>>2];b=v[j+44>>2];r=w[b+9|0];y=v[(r<<2)+91852>>2]>>>1|0;b:{if(!r){n=0;b=0;break b}n=t[b+44|0]&1;y=n<<4|y;b=j}z=(p<<3)+H|0;c:{d:{e:{f:{g:{h:{i:{if(!(m|n)){break i}if(P){if(m&n&(C|0)!=0|(!g|!b)){break d}break h}if(!C){break i}if(m&n){break d}}if(!g){break g}}if(!(t[g+149|0]&1)){o=0;break e}f=v[g+28>>2];c=v[j+28>>2];k=c>>>0>f>>>0?f:c;if(!k){o=0;break e}c=c>>>0>>0;f=c?g:j;d=v[(c?j:g)+20>>2];while(1){c=v[d>>2];if(w[c+20|0]==4){o=0;if((f|0)==v[c>>2]|(f|0)==v[c+4>>2]){break f}}d=d+4|0;k=k-1|0;if(k){continue}break}o=0;break e}if(!b){o=1;break e}o=1;if(!(t[b+149|0]&1)){break e}f=v[b+28>>2];c=v[i+28>>2];k=c>>>0>f>>>0?f:c;if(!k){break e}o=!g;c=c>>>0>>0;f=c?b:i;d=v[(c?i:b)+20>>2];while(1){c=v[d>>2];if(w[c+20|0]==4&((f|0)==v[c>>2]|(f|0)==v[c+4>>2])){break f}d=d+4|0;k=k-1|0;if(k){continue}break}break e}if(!(w[v[v[c+24>>2]+52>>2]]&8)){break d}}j:{if(((q|0)==2|0)==((r|0)==2|0)){break j}if(!(w[v[g+100>>2]+159|0]?!n&(r|0)!=0|o:1)){break d}if(!b|!m&(q|0)!=0){break j}if(w[v[b+100>>2]+159|0]){break d}}k:{l:{if((q|0)!=2|(r|0)!=2){break l}if(w[v[b+100>>2]+159|0]?w[v[g+100>>2]+159|0]:0){break d}c=v[i+28>>2];if(!c){break l}d=v[i+20>>2];while(1){b=v[d>>2];if(w[b+20|0]==5&(v[b>>2]==(j|0)|v[b+4>>2]==(j|0))){break k}d=d+4|0;c=c-1|0;if(c){continue}break}}v[e>>2]=0;v[e+4>>2]=-1;f=v[h+24>>2];c=v[h+28>>2];g=v[h+16>>2];j=v[h+20>>2];i=v[l+16>>2];h=v[l+20>>2];b=v[l+28>>2];v[e+32>>2]=v[l+24>>2];v[e+36>>2]=b;v[e+24>>2]=i;v[e+28>>2]=h;v[e+16>>2]=f;v[e+20>>2]=c;v[e+8>>2]=g;v[e+12>>2]=j;Ba[M|0](e+40|0,s,e+24|0,y,e+8|0,N,L,K);d=x[e+40>>1];m:{if(d&4){if(O){break m}u[e>>1]=d&65523;a9(v[37696],2,11474,318,69674,0);d=x[e>>1]}d=(d&3)==3?d&-2:d}b=x[e+2>>1];if(d&4){break c}b=m?n?d&3?b:b&1?b&-2:b:b:b;break c}v[e>>2]=1;v[e+4>>2]=-1;d=1;b=0;break c}v[e>>2]=2;v[e+4>>2]=-1;d=2;b=0}u[z+2>>1]=b;u[z>>1]=d;v[z+4>>2]=v[e+4>>2];if(!(d&1)){n:{if(d&4){D=D+1|0;b=J;break n}b=d>>>1&1;E=b+E|0;F=!b+F|0;b=I}b=b+(p>>>3&536870908)|0;v[b>>2]=v[b>>2]|1<>2]=F;v[a+176>>2]=E;v[a+180>>2]=D;xa=e+48|0}function F4(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=xa-16|0;xa=j;k=xa-16|0;xa=k;i=a- -64|0;h=v[i+8>>2];l=v[i>>2];a:{if(h>>>0>>0){e=v[v[i+12>>2]+(v[i+4>>2]<<2)>>2];v[i+8>>2]=h+1;f=e+(h<<6)|0;break a}h=l<<6;b:{if(!h){break b}e=v[37696]+12|0;f=Ba[v[v[e>>2]+8>>2]](e,h,24422,13134,137)|0;l=v[i>>2]}v[k+12>>2]=f;h=v[i+4>>2]+1|0;v[i+4>>2]=h;if(l){e=B(h,l);while(1){f=v[k+12>>2]+(g<<6)|0;t[f+60|0]=0;v[f+56>>2]=e+g;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=-8388609;v[f+24>>2]=0;v[f+8>>2]=0;u[f+4>>1]=0;v[f>>2]=0;g=g+1|0;if((g|0)!=(l|0)){continue}break}}e=v[i+16>>2];c:{if(e>>>0>=(v[i+20>>2]&2147483647)>>>0){x4(i+12|0,k+12|0);h=v[i+4>>2];break c}v[v[i+12>>2]+(e<<2)>>2]=v[k+12>>2];v[i+16>>2]=e+1}f=v[v[i+12>>2]+(h<<2)>>2];v[i+8>>2]=1}xa=k+16|0;h=f;f=v[a+48>>2];e=v[a+40>>2];d:{if(f>>>0>>0){e=v[v[a+52>>2]+(v[a+44>>2]<<2)>>2];v[a+48>>2]=f+1;g=e+B(f,44)|0;break d}f=B(e,44);if(f){e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,24422,13134,137)|0}else{e=0}v[j+4>>2]=e;f=v[a+44>>2]+1|0;v[a+44>>2]=f;g=v[a+56>>2];e:{if(g>>>0>=(v[a+60>>2]&2147483647)>>>0){C4(a+52|0,j+4|0);f=v[a+44>>2];break e}v[v[a+52>>2]+(g<<2)>>2]=e;v[a+56>>2]=g+1}g=v[v[a+52>>2]+(f<<2)>>2];v[a+48>>2]=1}v[g+36>>2]=h;z[g>>2]=z[b>>2];z[g+4>>2]=z[b+4>>2];z[g+8>>2]=z[b+8>>2];v[g+20>>2]=v[b+20>>2];e=v[b+16>>2];v[g+12>>2]=v[b+12>>2];v[g+16>>2]=e;e=v[a+48>>2];b=v[a+40>>2];f:{if(e>>>0>>0){b=v[v[a+52>>2]+(v[a+44>>2]<<2)>>2];v[a+48>>2]=e+1;b=b+B(e,44)|0;break f}e=B(b,44);if(e){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,24422,13134,137)|0}else{b=0}v[j+8>>2]=b;f=v[a+44>>2]+1|0;v[a+44>>2]=f;e=v[a+56>>2];g:{if(e>>>0>=(v[a+60>>2]&2147483647)>>>0){C4(a+52|0,j+8|0);f=v[a+44>>2];break g}v[v[a+52>>2]+(e<<2)>>2]=b;v[a+56>>2]=e+1}b=v[v[a+52>>2]+(f<<2)>>2];v[a+48>>2]=1}v[b+36>>2]=h;z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];v[b+20>>2]=v[c+20>>2];e=v[c+16>>2];v[b+12>>2]=v[c+12>>2];v[b+16>>2]=e;e=v[a+48>>2];c=v[a+40>>2];h:{if(e>>>0>>0){c=v[v[a+52>>2]+(v[a+44>>2]<<2)>>2];v[a+48>>2]=e+1;c=c+B(e,44)|0;break h}e=B(c,44);if(e){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,13134,137)|0}else{c=0}v[j+12>>2]=c;f=v[a+44>>2]+1|0;v[a+44>>2]=f;e=v[a+56>>2];i:{if(e>>>0>=(v[a+60>>2]&2147483647)>>>0){C4(a+52|0,j+12|0);f=v[a+44>>2];break i}v[v[a+52>>2]+(e<<2)>>2]=c;v[a+56>>2]=e+1}c=v[v[a+52>>2]+(f<<2)>>2];v[a+48>>2]=1}v[c+36>>2]=h;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];a=v[d+16>>2];v[c+12>>2]=v[d+12>>2];v[c+16>>2]=a;v[c+20>>2]=v[d+20>>2];v[g+28>>2]=b;v[g+24>>2]=c;v[b+28>>2]=c;v[b+24>>2]=g;v[c+28>>2]=g;v[c+24>>2]=b;v[h+52>>2]=0;v[h>>2]=g;y4(h);xa=j+16|0;return h}function rF(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=xa-48|0;xa=g;h=a+16|0;l=e>>>7|0;a:{if((l|0)!=(v[a+24>>2]&2147483647)){break a}f=l<<1;f=f>>>0>256?f:256;if(f>>>0>l>>>0){oF(h,f)}if(f>>>0>(v[a+212>>2]&2147483647)>>>0){zw(a+204|0,f)}if(f>>>0>(v[a+200>>2]&2147483647)>>>0){sF(a+192|0,f)}if(f>>>0>(v[a+188>>2]&2147483647)>>>0){zw(a+180|0,f)}if(f>>>0<=(v[a+36>>2]&2147483647)>>>0){break a}zw(a+28|0,f)}f=v[a+20>>2];v[g+16>>2]=0;v[g+20>>2]=0;v[g+8>>2]=-128;v[g+12>>2]=-128;v[g>>2]=-1;v[g+4>>2]=8;i=l+1|0;f=f>>>0>>0?i:f;if(f>>>0>(v[h+8>>2]&2147483647)>>>0){oF(h,f)}i=v[h+4>>2];if((i|0)<(f|0)){j=v[h>>2];k=j+B(f,24)|0;i=j+B(i,24)|0;while(1){j=v[g+4>>2];v[i>>2]=v[g>>2];v[i+4>>2]=j;j=v[g+20>>2];v[i+16>>2]=v[g+16>>2];v[i+20>>2]=j;j=v[g+12>>2];v[i+8>>2]=v[g+8>>2];v[i+12>>2]=j;i=i+24|0;if(k>>>0>i>>>0){continue}break}}v[h+4>>2]=f;v[g>>2]=0;bz(a+204|0,f,g);v[g>>2]=-128;tF(a+192|0,f,g);v[g>>2]=0;bz(a+180|0,f,g);v[g>>2]=0;bz(a+28|0,f,g);f=l<<2;v[f+v[a+28>>2]>>2]=33554431;i=v[a+16>>2]+B(l,24)|0;h=b^1;t[i+4|0]=c?h|4:h;t[i+5|0]=d;v[f+v[a+204>>2]>>2]=-1;v[f+v[a+192>>2]>>2]=-128;v[f+v[a+180>>2]>>2]=0;if(!c){c=v[a+4>>2];b:{if(c){c=c-1|0;f=v[v[a>>2]+(c<<2)>>2];v[a+4>>2]=c;break b}f=v[a+12>>2];v[a+12>>2]=f+1}i=a+88|0;c:{if((v[a+96>>2]&2147483647)!=(f|0)){break c}c=f<<1;c=c>>>0>256?c:256;if(c>>>0>f>>>0){uF(i,c)}h=c+31>>>5|0;if(h>>>0>(v[a+220>>2]&2147483647)>>>0){j=v[37696]+12|0;j=Ba[v[v[j>>2]+8>>2]](j,h<<2,24422,17999,438)|0;k=v[a+216>>2];d:{if(!k){break d}H9(j,k,v[a+220>>2]<<2);if(v[a+220>>2]<0){break d}k=v[a+216>>2];if(!k){break d}m=v[37696]+12|0;Ba[v[v[m>>2]+12>>2]](m,k)}k=v[a+220>>2];I9(j+(k<<2)|0,0,h-k<<2);v[a+220>>2]=h;v[a+216>>2]=j}if(c>>>0<=(v[a+108>>2]&2147483647)>>>0){break c}zw(a+100|0,c)}h=v[a+92>>2];v[g+24>>2]=-1;v[g+28>>2]=-1;v[g+32>>2]=-1;v[g+16>>2]=-1;v[g+20>>2]=-1;v[g>>2]=-128;v[g+4>>2]=-128;v[g+36>>2]=0;v[g+40>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;c=f+1|0;vF(i,c>>>0>h>>>0?c:h,g);h=v[a+92>>2];v[g>>2]=0;bz(a+100|0,c>>>0>h>>>0?c:h,g);h=v[a+92>>2];j=c>>>0>h>>>0?c:h;h=j+32>>>5|0;e:{if(h>>>0<=(v[a+220>>2]&2147483647)>>>0){c=v[a+216>>2];break e}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,h<<2,24422,17999,438)|0;k=v[a+216>>2];f:{if(!k){break f}H9(c,k,v[a+220>>2]<<2);if(v[a+220>>2]<0){break f}k=v[a+216>>2];if(!k){break f}m=v[37696]+12|0;Ba[v[v[m>>2]+12>>2]](m,k)}k=v[a+220>>2];I9((k<<2)+c|0,0,h-k<<2);v[a+220>>2]=h;v[a+216>>2]=c}c=(j>>>3&536870908)+c|0;h=v[c>>2];n=c,o=Uaa(-2,j)&h,v[n>>2]=o;c=v[i>>2]+B(f,44)|0;v[c+4>>2]=e;v[c>>2]=e;v[(c+(d<<2)|0)+8>>2]=1;v[v[a+204>>2]+(l<<2)>>2]=f;v[v[a+100>>2]+(f<<2)>>2]=0}if(b){wF(a,e)}xa=g+48|0}function WK(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,x=C(0),A=C(0),D=C(0),E=C(0),F=0,G=0,H=0;v[a+40>>2]=b;v[a+36>>2]=j;v[a+32>>2]=i;if(!(d?c:0)){v[a+36>>2]=i;v[a+32>>2]=j;return}while(1){p=(o<<3)+e|0;n=v[p>>2];s=v[p+4>>2];while(1){p=k;k=k+1|0;l=v[(p<<3)+f>>2];if(l>>>0>>0){continue}break}if(l>>>0<=s>>>0){k=(o<<4)+g|0;x=z[k+12>>2];A=z[k+4>>2];D=z[k+8>>2];E=z[k>>2];n=p;while(1){k=(n<<4)+h|0;a:{if(E>z[k+8>>2]|D>2]|(x>2]|A>z[k+12>>2])){break a}m=v[a+28>>2];k=v[v[a+32>>2]+(o<<2)>>2];q=v[m+(k<<2)>>2];l=v[v[a+36>>2]+(n<<2)>>2];m=v[m+(l<<2)>>2];if((q|0)==(m|0)|!w[v[a+44>>2]+(q<<2&12|m&3)|0]){break a}q=k>>>0>>0?k:l;t=k>>>0>l>>>0?k:l;k=q&65535|t<<16;k=(k<<15^-1)+k|0;k=B(k>>>10^k,9);k=k>>>6^k;k=(k<<11^-1)+k|0;u=k>>>16^k;l=u&v[a+4>>2];b:{m=v[a+12>>2];c:{if(!m){break c}k=v[(l<<2)+m>>2];if((k|0)==-1){break c}G=v[a+16>>2];H=v[a+20>>2];while(1){r=(k<<3)+H|0;if((q|0)==(v[r>>2]&2147483647)){F=v[r+4>>2];if((t|0)==(F&2147483647)){break b}}k=v[(k<<2)+G>>2];if((k|0)!=-1){continue}break}}k=v[a+8>>2];if(k>>>0>=y[a>>2]){l=ZH(a,u);m=v[a+12>>2];k=v[a+8>>2]}v[a+8>>2]=k+1;r=v[a+20>>2]+(k<<3)|0;v[r+4>>2]=t;v[r>>2]=q|-2147483648;l=(l<<2)+m|0;v[v[a+16>>2]+(k<<2)>>2]=v[l>>2];v[l>>2]=k;break a}v[r+4>>2]=F|-2147483648}n=n+1|0;if(s>>>0>=y[(n<<3)+f>>2]){continue}break}}if(d>>>0>p>>>0){k=p;o=o+1|0;if(o>>>0>>0){continue}}break}v[a+40>>2]=b;v[a+36>>2]=i;v[a+32>>2]=j;o=0;k=0;while(1){b=(o<<3)+f|0;i=v[b>>2];p=v[b+4>>2];while(1){b=k;k=k+1|0;j=v[(b<<3)+e>>2];if(j>>>0<=i>>>0){continue}break}if(j>>>0<=p>>>0){i=(o<<4)+h|0;x=z[i+12>>2];A=z[i+4>>2];D=z[i+8>>2];E=z[i>>2];n=b;while(1){i=(n<<4)+g|0;d:{if(E>z[i+8>>2]|D>2]|(x>2]|A>z[i+12>>2])){break d}k=v[a+28>>2];i=v[v[a+32>>2]+(o<<2)>>2];l=v[k+(i<<2)>>2];j=v[v[a+36>>2]+(n<<2)>>2];k=v[k+(j<<2)>>2];if((l|0)==(k|0)|!w[v[a+44>>2]+(l<<2&12|k&3)|0]){break d}s=i>>>0>>0?i:j;i=i>>>0>j>>>0?i:j;j=s&65535|i<<16;j=(j<<15^-1)+j|0;j=B(j>>>10^j,9);j=j>>>6^j;j=(j<<11^-1)+j|0;q=j>>>16^j;l=q&v[a+4>>2];e:{m=v[a+12>>2];f:{if(!m){break f}k=v[(l<<2)+m>>2];if((k|0)==-1){break f}t=v[a+16>>2];r=v[a+20>>2];while(1){j=r+(k<<3)|0;if((s|0)==(v[j>>2]&2147483647)){u=v[j+4>>2];if((i|0)==(u&2147483647)){break e}}k=v[t+(k<<2)>>2];if((k|0)!=-1){continue}break}}k=v[a+8>>2];if(k>>>0>=y[a>>2]){l=ZH(a,q);m=v[a+12>>2];k=v[a+8>>2]}v[a+8>>2]=k+1;j=v[a+20>>2]+(k<<3)|0;v[j+4>>2]=i;v[j>>2]=s|-2147483648;i=(l<<2)+m|0;v[v[a+16>>2]+(k<<2)>>2]=v[i>>2];v[i>>2]=k;break d}v[j+4>>2]=u|-2147483648}n=n+1|0;if(p>>>0>=y[(n<<3)+e>>2]){continue}break}}if(b>>>0>>0){k=b;o=o+1|0;if(o>>>0>>0){continue}}break}}function G_(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=C(0),D=C(0),E=C(0),F=0,G=C(0);y=b<<2;s=xa-16|0;F=y+s|0;t=d+y|0;v=f+y|0;D=z[v>>2];z[F>>2]=z[t>>2]+D;w=c<<2;u=w+d|0;x=s+w|0;s=f+w|0;E=z[s>>2];m=C(z[u>>2]+E);z[x>>2]=m;x=a<<2;A=x+g|0;p=z[A>>2];w=e+w|0;k=z[w>>2];o=C(p*k);x=e+x|0;l=z[x>>2];q=C(m*l);a:{b:{c:{d:{n=z[F>>2];e=e+y|0;j=z[e>>2];e:{if(C(l*n)>=C(j*p)){if(o<=q){if(!h){break e}a=a<<2;z[a+d>>2]=z[a+f>>2];p=C(C(1)/z[x>>2]);z[t>>2]=z[t>>2]-C(C(z[A>>2]*z[e>>2])*p);z[u>>2]=z[u>>2]-C(C(z[A>>2]*z[w>>2])*p);z[h>>2]=p*C(-z[A>>2]);return}o=C(C(l*l)+C(k*k));l=C(l*p);k=C(m*k);q=C(C(o*n)-C(C(l+k)*j));if(q<=C(D*C(o+o))){r=k;k=C(q/o);n=C(n-k);l=C(r+C(l+C(j*n)));j=C(C(-l)/C(C(j*j)+o));z[i>>2]=C(C(l*j)+C(C(m*m)+C(C(p*p)+C(n*n))))+z[i>>2];if(!h){break e}break d}r=k;k=z[(b<<2)+g>>2];n=C(r+C(l+C(j*k)));j=C(C(-n)/C(C(j*j)+o));z[i>>2]=z[i>>2]+C(C(n*j)+C(C(m*m)+C(C(p*p)+C(k*k))));if(!h){break e}break c}if(o<=q){o=C(C(l*l)+C(j*j));j=C(C(l*p)+C(n*j));l=C(C(o*m)-C(j*k));if(l<=C(E*C(o+o))){l=C(l/o);m=C(m-l);q=C(C(k*m)+j);j=C(C(-q)/C(C(k*k)+o));z[i>>2]=C(C(q*j)+C(C(m*m)+C(C(p*p)+C(n*n))))+z[i>>2];if(!h){break e}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=-z[v>>2];z[u>>2]=l-z[s>>2];return}m=z[(c<<2)+g>>2];l=C(C(k*m)+j);j=C(C(-l)/C(C(k*k)+o));z[i>>2]=z[i>>2]+C(C(l*j)+C(C(m*m)+C(C(p*p)+C(n*n))));if(!h){break e}break b}G=C(l*l);q=C(k*k);o=C(G+q);r=C(l*p);B=C(m*k);l=C(C(o*n)-C(C(r+B)*j));if(l>=C(0)){if(l<=C(D*C(o+o))){k=C(l/o);n=C(n-k);l=C(B+C(r+C(j*n)));j=C(C(-l)/C(C(j*j)+o));z[i>>2]=C(C(l*j)+C(C(m*m)+C(C(p*p)+C(n*n))))+z[i>>2];if(!h){break e}break d}k=z[(b<<2)+g>>2];n=C(B+C(r+C(j*k)));j=C(C(-n)/C(C(j*j)+o));z[i>>2]=z[i>>2]+C(C(n*j)+C(C(m*m)+C(C(p*p)+C(k*k))));if(!h){break e}break c}l=C(G+C(j*j));j=C(r+C(n*j));o=C(C(l*m)-C(j*k));if(o>=C(0)){if(o<=C(E*C(l+l))){r=k;k=C(o/l);m=C(m-k);o=C(C(r*m)+j);j=C(C(-o)/C(q+l));z[i>>2]=C(C(o*j)+C(C(m*m)+C(C(p*p)+C(n*n))))+z[i>>2];if(!h){break e}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=-z[v>>2];z[u>>2]=k-z[s>>2];return}m=z[(c<<2)+g>>2];k=C(C(k*m)+j);j=C(C(-k)/C(q+l));z[i>>2]=z[i>>2]+C(C(k*j)+C(C(m*m)+C(C(p*p)+C(n*n))));if(!h){break e}break b}k=C(B+j);j=C(C(-k)/C(q+l));z[i>>2]=C(C(k*j)+C(C(m*m)+C(C(p*p)+C(n*n))))+z[i>>2];if(!h){break e}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=-z[v>>2];z[u>>2]=-z[s>>2]}return}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=k-z[v>>2];break a}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=z[v>>2];break a}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=-z[v>>2];z[u>>2]=z[s>>2];return}z[u>>2]=-z[s>>2]}function KD(a,b,c,d,e){var f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=0,r=0,s=0,u=0,w=0;k=xa-1056|0;xa=k;t[k+1040|0]=1;v[k+1048>>2]=256;v[k+1052>>2]=256;v[k+1044>>2]=k+16;s=v[c+8>>2];v[k+16>>2]=s;o=1;a:while(1){o=o-1|0;h=v[v[k+1044>>2]+(o<<2)>>2];f=z[h>>2];g=z[h+12>>2];j=C(f+g);f=C(g-f);l=z[h+8>>2];m=z[h+20>>2];g=C(l+m);n=z[h+4>>2];p=z[h+16>>2];i=C(n+p);l=C(m-l);m=C(p-n);while(1){b:{c:{n=C(j*C(.5));j=C(C(f*C(.5))+z[d+48>>2]);d:{if(!(z[d+96>>2]<=C(n+j))|!(z[d+112>>2]>=C(n-j))){break d}f=C(C(m*C(.5))+z[d+52>>2]);i=C(i*C(.5));p=C(z[d+4>>2]-i);n=C(z[d>>2]-n);m=C(C(p*z[d+16>>2])-C(n*z[d+32>>2]));if(!(C(C(j*z[d+80>>2])+C(f*z[d+64>>2]))>=(m>C(0)?m:C(-m)))|!(z[d+100>>2]<=C(i+f))|!(z[d+116>>2]>=C(i-f))){break d}m=C(f*z[d+84>>2]);f=C(C(l*C(.5))+z[d+56>>2]);g=C(g*C(.5));l=C(z[d+8>>2]-g);i=C(C(l*z[d+20>>2])-C(p*z[d+36>>2]));if(!(C(m+C(f*z[d+68>>2]))>=(i>C(0)?i:C(-i)))|!(z[d+104>>2]<=C(g+f))|!(z[d+120>>2]>=C(g-f))){break d}f=C(C(f*z[d+88>>2])+C(j*z[d+72>>2]));j=C(C(n*z[d+24>>2])-C(l*z[d+40>>2]));if(!(f>=(j>C(0)?j:C(-j)))){break d}h=v[h+24>>2];q=h>>>1|0;if(!(h&1)){break c}r=q&15;if(!r){break d}q=v[c>>2]+(h>>>3&536870908)|0;if((r|0)==1){if(Ba[v[v[e>>2]>>2]](e,k+12|0,(v[q>>2]<<3)+a|0)|0){break d}break b}while(1){u=v[q>>2];h=B(u,24)+b|0;j=z[h>>2];f=z[h+12>>2];g=C(C(j+f)*C(.5));j=C(C(C(f-j)*C(.5))+z[d+48>>2]);e:{if(!(z[d+96>>2]<=C(g+j))|!(z[d+112>>2]>=C(g-j))){break e}i=z[h+16>>2];l=z[h+4>>2];f=C(C(C(i-l)*C(.5))+z[d+52>>2]);i=C(C(l+i)*C(.5));l=C(z[d+4>>2]-i);m=C(z[d>>2]-g);g=C(C(l*z[d+16>>2])-C(m*z[d+32>>2]));if(!(C(C(j*z[d+80>>2])+C(f*z[d+64>>2]))>=(g>C(0)?g:C(-g)))|!(z[d+100>>2]<=C(i+f))|!(z[d+116>>2]>=C(i-f))){break e}p=C(f*z[d+84>>2]);g=z[h+20>>2];i=z[h+8>>2];f=C(C(C(g-i)*C(.5))+z[d+56>>2]);g=C(C(i+g)*C(.5));n=C(z[d+8>>2]-g);i=C(C(n*z[d+20>>2])-C(l*z[d+36>>2]));if(!(C(p+C(f*z[d+68>>2]))>=(i>C(0)?i:C(-i)))|!(z[d+104>>2]<=C(g+f))|!(z[d+120>>2]>=C(g-f))){break e}f=C(C(f*z[d+88>>2])+C(j*z[d+72>>2]));j=C(C(m*z[d+24>>2])-C(n*z[d+40>>2]));if(!(f>=(j>C(0)?j:C(-j)))){break e}if(!(Ba[v[v[e>>2]>>2]](e,k+12|0,(u<<3)+a|0)|0)){break b}}q=q+4|0;r=r-1|0;if(r){continue}break}}w=!o;if(o){continue a}break b}h=B(q,28)+s|0;v[v[k+1044>>2]+(o<<2)>>2]=h+28;o=o+1|0;if((o|0)==(v[k+1052>>2]&2147483647)){ND(k+16|0,o<<1)}f=z[h>>2];g=z[h+12>>2];j=C(f+g);f=C(g-f);l=z[h+8>>2];m=z[h+20>>2];g=C(l+m);n=z[h+4>>2];p=z[h+16>>2];i=C(n+p);l=C(m-l);m=C(p-n);continue}break}break}a=v[k+1052>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[k+1044>>2];if((a|0)==(k+16|0)|!a){break f}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=k+1056|0;return w}function xJ(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=xa+-64|0;xa=h;n=w[b+24|0];if(n>>>0<=2){k=v[b+32>>2];l=v[b+28>>2];a:{if(c){g=x[c>>1];u[h+56>>1]=g;i=x[c+2>>1];c=v[c+4>>2];v[h+60>>2]=c;if((g&13)==13){mJ(v[a>>2],l,k,c,0);j=v[a+108>>2];v[v[j>>2]+(c<<2)>>2]=v[j+12>>2];v[j+12>>2]=c;v[h+60>>2]=-1;c=-1}m=v[k+4>>2];m=w[v[m+44>>2]+9|0]-1>>>0<2?m:0;j=v[l+4>>2];j=w[v[j+44>>2]+9|0]-1>>>0<2?j:0;if(!(!j|g&3|(!m|!(t[v[j+44>>2]+44|0]&1)))){i=t[v[m+44>>2]+44|0]&1?i&1?i&-2:i:i}u[h+58>>1]=i;break a}c=-1;if(w[b+25|0]&16){c=v[b+36>>2];mJ(v[a>>2],l,k,c,0)}i=v[a+108>>2];g=v[a>>2];v[h+24>>2]=v[g+2184>>2];v[h+28>>2]=v[g+2172>>2];v[h+32>>2]=v[g+2176>>2];j=v[g+2188>>2];v[h+40>>2]=i;v[h+36>>2]=j;v[h+44>>2]=v[g+2192>>2];v[h+48>>2]=v[g+2196>>2];eJ(h+8|0,h+24|0,l,k,c,h+23|0,1);g=x[h+8>>1];u[h+56>>1]=g;i=x[h+10>>1];u[h+58>>1]=i;c=v[h+12>>2];v[h+60>>2]=c}j=w[b+25|0];b:{if(!(j&16)|(g&12)==12){break b}t[b+25|0]=j&239;if((c|0)==-1){break b}j=v[a+108>>2];v[v[j>>2]+(c<<2)>>2]=v[j+12>>2];v[j+12>>2]=c;v[h+60>>2]=-1}c=6;c:{if(g&1){break c}c=2;if(g&2){break c}c=1;if(w[v[l+28>>2]- -64|0]&4){break c}c=w[v[k+28>>2]- -64|0]>>>2&1}d:{if((c|0)!=w[b+24|0]){l=xa-16|0;xa=l;i=v[b+32>>2];k=v[b+28>>2];g=v[b+4>>2];if(!(w[v[g+44>>2]+9|0]!=1|y[g+152>>2]<4294967294)){oH(g)}g=v[b+8>>2];if(!(w[v[g+44>>2]+9|0]!=1|y[g+152>>2]<4294967294)){oH(g)}t[b+25|0]=w[b+25|0]&239;g=0;lJ(a,b,5,0,d,e,f);e:{f:{switch(c|0){case 2:b=v[a+1860>>2];if(!b){rJ(a+1572|0);b=v[a+1860>>2]}v[a+1860>>2]=v[b>>2];c=a+1852|0;v[c>>2]=v[c>>2]+1;g=sJ(b,k,i,0);break e;case 0:u[l+8>>1]=x[h+58>>1];g=pJ(a,k,i,l+8|0,0,0);break e;case 1:break f;default:break e}}c=w[v[i+28>>2]- -64|0];d=x[h+58>>1];b=v[a+1276>>2];if(!b){qJ(a+988|0);b=v[a+1276>>2]}v[a+1276>>2]=v[b>>2];e=a+1268|0;v[e>>2]=v[e>>2]+1;e=b;b=c&4;g=nS(e,b?i:k,b?k:i);u[g+56>>1]=x[g+56>>1]&65504|d&20}b=v[h+60>>2];if((b|0)!=-1){t[g+25|0]=w[g+25|0]|16;v[v[v[a+108>>2]>>2]+(b<<2)>>2]=g;v[g+36>>2]=b}xa=l+16|0;b=g;break d}g:{switch(n|0){case 0:c=i&65535;e=v[b+44>>2];h:{if((c|0)==(e&32767)){break h}i:{if(!(c&476)|e&476){break i}d=v[b+48>>2];if(t[d|0]&1?d:0){break i}d=vJ(a,l,k,1);if(v[b+48>>2]){break i}u[d+4>>1]=x[d+4>>1]+1;v[b+48>>2]=d}j:{if(c&8){break j}d=v[b+44>>2];if(!(d&6291456)){break j}if(d&2097152){yJ(a,b);break j}v[b+44>>2]=d&-4194305}if(c&448){if(!(w[b+45|0]&128)|(!(w[b+25|0]&32)|v[b+52>>2]!=-1)){break h}zJ(a,b);break h}if(!(e&448)){break h}c=v[b+44>>2];v[b+44>>2]=c&-1572865;if(!(c&8388608)){break h}AJ(a,b)}v[b+44>>2]=v[b+44>>2]&-32768|i&32767;break d;case 1:break g;default:break d}}u[b+56>>1]=x[b+56>>1]&65504|i&20}g=b}xa=h- -64|0;return g}function FA(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0,o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0);DA(a);c=v[a+124>>2];m=v[a+92>>2];n=v[a+28>>2];o=v[a+60>>2];a:{if(!(m|(n|o))){if(!c){break a}}b=v[a+24>>2];B=v[b+4>>2];if(B){X=w[b|0]==9?368:272;a=b+160|0;while(1){d=w[a+268|0]&2?z[a+252>>2]:C(0);D=C(D+C(d*z[a+140>>2]));p=w[a+264|0]&2?z[a+248>>2]:C(0);E=C(E+C(p*z[a+136>>2]));q=w[a+260|0]&2?z[a+244>>2]:C(0);F=C(F+C(q*z[a+132>>2]));G=C(G+C(d*z[a+124>>2]));H=C(H+C(p*z[a+120>>2]));I=C(I+C(q*z[a+116>>2]));J=C(J+C(d*z[a+108>>2]));L=C(L+C(p*z[a+104>>2]));M=C(M+C(q*z[a+100>>2]));r=C(r+C(d*z[a+44>>2]));f=C(f+C(p*z[a+40>>2]));e=C(e+C(q*z[a+36>>2]));s=C(s+C(d*z[a+28>>2]));g=C(g+C(p*z[a+24>>2]));h=C(h+C(q*z[a+20>>2]));t=C(t+C(d*z[a+12>>2]));u=C(u+C(p*z[a+8>>2]));i=C(i+C(q*z[a+4>>2]));d=w[a+256|0]&2?z[a+240>>2]:C(0);x=C(x+C(d*z[a+128>>2]));y=C(y+C(d*z[a+112>>2]));A=C(A+C(d*z[a+96>>2]));j=C(j+C(d*z[a+32>>2]));k=C(k+C(d*z[a+16>>2]));l=C(l+C(d*z[a>>2]));a=a+X|0;N=N+1|0;if((B|0)!=(N|0)){continue}break}}d=z[b+124>>2];p=z[b+156>>2];q=z[b+140>>2];Y=z[b+44>>2];Z=z[b+28>>2];O=z[b+120>>2];P=z[b+152>>2];Q=z[b+136>>2];_=z[b+40>>2];$=z[b+24>>2];R=z[b+116>>2];S=z[b+148>>2];T=z[b+132>>2];aa=z[b+36>>2];ba=z[b+20>>2];if(n){ca=z[b+16>>2];da=z[b+32>>2];U=z[b+144>>2];V=z[b+112>>2];W=z[b+128>>2];z[n+8>>2]=j;z[n+4>>2]=k;z[n>>2]=l;x=C(x-C(C(k*V)-C(l*W)));z[n+24>>2]=x;y=C(y-C(C(l*U)-C(j*V)));z[n+20>>2]=y;A=C(A-C(C(j*W)-C(k*U)));z[n+16>>2]=A;v[n+12>>2]=(C(K(C(C(x*x)+C(C(y*y)+C(A*A)))))>da|C(K(C(C(j*j)+C(C(k*k)+C(l*l)))))>ca)&w[b+12|0]!=0}if(o){j=C(M-C(C(e*T)-C(h*S)));z[o+16>>2]=j;z[o+8>>2]=e;z[o+4>>2]=h;z[o>>2]=i;k=C(F-C(C(h*R)-C(i*T)));z[o+24>>2]=k;l=C(I-C(C(i*S)-C(e*R)));z[o+20>>2]=l;v[o+12>>2]=(C(K(C(C(k*k)+C(C(j*j)+C(l*l)))))>aa|C(K(C(C(e*e)+C(C(h*h)+C(i*i)))))>ba)&w[b+13|0]!=0}if(m){e=C(L-C(C(f*Q)-C(g*P)));z[m+16>>2]=e;z[m+8>>2]=f;z[m+4>>2]=g;z[m>>2]=u;h=C(E-C(C(g*O)-C(u*Q)));z[m+24>>2]=h;i=C(H-C(C(u*P)-C(f*O)));z[m+20>>2]=i;v[m+12>>2]=(C(K(C(C(h*h)+C(C(e*e)+C(i*i)))))>_|C(K(C(C(f*f)+C(C(g*g)+C(u*u)))))>$)&w[b+14|0]!=0}if(!c){break a}f=C(J-C(C(r*q)-C(s*p)));z[c+16>>2]=f;z[c+8>>2]=r;z[c+4>>2]=s;z[c>>2]=t;e=C(D-C(C(s*d)-C(t*q)));z[c+24>>2]=e;g=C(G-C(C(t*p)-C(r*d)));z[c+20>>2]=g;v[c+12>>2]=(C(K(C(C(e*e)+C(C(f*f)+C(g*g)))))>Y|C(K(C(C(r*r)+C(C(s*s)+C(t*t)))))>Z)&w[b+15|0]!=0}}function xM(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=0,j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0);a=(v[a>>2]<<5)+b|0;h=v[a+124>>2];i=v[a+92>>2];j=v[a+28>>2];k=v[a+60>>2];a:{if(!(i|(j|k))){if(!h){break a}}c=v[a+24>>2];D=v[c+4>>2];if(D){a=c+640|0;b=0;while(1){f=w[a+352|0]&2?z[a+304>>2]:C(0);l=C(l+C(f*z[a+160>>2]));E=C(E+C(f*z[a+144>>2]));e=w[a+364|0]&2?z[a+316>>2]:C(0);F=C(F+C(e*z[a+172>>2]));d=w[a+360|0]&2?z[a+312>>2]:C(0);G=C(G+C(d*z[a+168>>2]));g=w[a+356|0]&2?z[a+308>>2]:C(0);H=C(H+C(g*z[a+164>>2]));I=C(I+C(e*z[a+156>>2]));J=C(J+C(d*z[a+152>>2]));L=C(L+C(g*z[a+148>>2]));M=C(M+C(e*z[a+140>>2]));N=C(N+C(d*z[a+136>>2]));O=C(O+C(g*z[a+132>>2]));o=C(o+C(e*z[a+44>>2]));p=C(p+C(d*z[a+40>>2]));m=C(m+C(g*z[a+36>>2]));q=C(q+C(e*z[a+28>>2]));r=C(r+C(d*z[a+24>>2]));s=C(s+C(g*z[a+20>>2]));t=C(t+C(e*z[a+12>>2]));u=C(u+C(d*z[a+8>>2]));x=C(x+C(g*z[a+4>>2]));P=C(P+C(f*z[a+128>>2]));n=C(n+C(f*z[a+32>>2]));y=C(y+C(f*z[a+16>>2]));A=C(A+C(f*z[a>>2]));a=a+368|0;b=b+1|0;if((D|0)!=(b|0)){continue}break}}g=z[c+140>>2];Q=z[c+156>>2];R=z[c+124>>2];S=z[c+44>>2];T=z[c+28>>2];U=z[c+136>>2];V=z[c+152>>2];W=z[c+120>>2];X=z[c+40>>2];Y=z[c+24>>2];Z=z[c+132>>2];_=z[c+148>>2];$=z[c+116>>2];aa=z[c+36>>2];ba=z[c+20>>2];if(j){e=z[c+128>>2];f=z[c+144>>2];ca=z[c+16>>2];da=z[c+32>>2];d=z[c+112>>2];z[j+8>>2]=n;z[j+4>>2]=y;z[j>>2]=A;B=l;d=C(y*d);l=C(A*f);f=C(B-C(d-l));z[j+24>>2]=f;B=l;l=C(n*e);e=C(E-C(B-l));z[j+20>>2]=e;d=C(P-C(l-d));z[j+16>>2]=d;v[j+12>>2]=(C(K(C(C(f*f)+C(C(e*e)+C(d*d)))))>da|C(K(C(C(n*n)+C(C(y*y)+C(A*A)))))>ca)&w[c+12|0]!=0}if(k){d=C(m*Z);e=C(s*$);f=C(O-C(d-e));z[k+16>>2]=f;z[k+8>>2]=m;z[k+4>>2]=s;z[k>>2]=x;n=C(x*_);e=C(H-C(e-n));z[k+24>>2]=e;d=C(L-C(n-d));z[k+20>>2]=d;v[k+12>>2]=(C(K(C(C(e*e)+C(C(f*f)+C(d*d)))))>aa|C(K(C(C(m*m)+C(C(s*s)+C(x*x)))))>ba)&w[c+13|0]!=0}if(i){d=C(p*U);e=C(r*W);f=C(N-C(d-e));z[i+16>>2]=f;z[i+8>>2]=p;z[i+4>>2]=r;z[i>>2]=u;m=C(u*V);e=C(G-C(e-m));z[i+24>>2]=e;d=C(J-C(m-d));z[i+20>>2]=d;v[i+12>>2]=(C(K(C(C(e*e)+C(C(f*f)+C(d*d)))))>X|C(K(C(C(p*p)+C(C(r*r)+C(u*u)))))>Y)&w[c+14|0]!=0}if(!h){break a}d=C(o*g);e=C(q*R);f=C(M-C(d-e));z[h+16>>2]=f;z[h+8>>2]=o;z[h+4>>2]=q;z[h>>2]=t;g=C(t*Q);e=C(F-C(e-g));z[h+24>>2]=e;d=C(I-C(g-d));z[h+20>>2]=d;v[h+12>>2]=(C(K(C(C(e*e)+C(C(f*f)+C(d*d)))))>S|C(K(C(C(o*o)+C(C(q*q)+C(t*t)))))>T)&w[c+15|0]!=0}}function pR(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,y=0,z=0,A=0;b=v[a+28>>2];t=v[a+20>>2];a=0;d=xa-48|0;xa=d;q=v[b+4712>>2];r=v[v[b+980>>2]+304>>2];c=v[b+4708>>2];if(c){while(1){if(v[c+180>>2]){f=v[v[b+2168>>2]+108>>2];v[d+16>>2]=v[b+2184>>2];v[d+20>>2]=v[b+2172>>2];v[d+24>>2]=v[b+2176>>2];e=v[b+2188>>2];v[d+32>>2]=f;v[d+28>>2]=e;v[d+36>>2]=v[b+2192>>2];v[d+40>>2]=v[b+2196>>2];f=0;while(1){j=(f<<2)+c|0;e=v[j+104>>2];if(e){n=f<<5;while(1){g=v[c+32>>2];m=Qaa(e);o=m|n;l=g+B(o,12)|0;g=v[l+4>>2];i=v[l>>2];l=v[i+4>>2];k=g;g=v[g+4>>2];bJ(d+8|0,d+16|0,i,k,w[v[l+44>>2]+9|0]-1>>>0<2?l:0,w[v[g+44>>2]+9|0]-1>>>0<2?g:0,-1,1);g=v[c+168>>2]+(o<<3)|0;u[g>>1]=x[d+8>>1];u[g+2>>1]=x[d+10>>1];v[g+4>>2]=v[d+12>>2];g=x[d+8>>1];if(!(g&1)){a:{if(!(g&2)){v[c+172>>2]=v[c+172>>2]+1;break a}v[c+176>>2]=v[c+176>>2]+1}v[j+40>>2]=v[j+40>>2]|1<>2]+a|0;h=v[c+172>>2]+h|0;c=v[c+184>>2];if(c){continue}break}}c=h+1|0;if(c>>>0>(v[b+4680>>2]&2147483647)>>>0){uP(b+4672|0,c)}if(c>>>0>(v[b+4692>>2]&2147483647)>>>0){vP(b+4684|0,c)}c=a+1|0;if(c>>>0>(v[b+4704>>2]&2147483647)>>>0){wP(b+4696|0,c)}v[b+4700>>2]=a;v[b+4688>>2]=h;v[b+4676>>2]=h;g=v[b+4672>>2];l=v[b+4684>>2];n=v[b+4696>>2];o=v[v[b+976>>2]+1156>>2];a=vr(o,56);f=v[b+2168>>2];e=v[b+16>>2];h=v[b+20>>2];c=0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=e;v[a+12>>2]=h;v[a+52>>2]=0;v[a+48>>2]=n;v[a+44>>2]=l;v[a+40>>2]=g;v[a+36>>2]=q;v[a+32>>2]=r;v[a+28>>2]=f;v[a>>2]=135564;v[d+16>>2]=0;v[d+8>>2]=0;f=v[b+4708>>2];b:{if(!f){break b}m=0;j=0;while(1){c:{if(!(v[f+176>>2]?1:v[f+172>>2])){break c}h=0;while(1){e=v[((h<<2)+f|0)+40>>2];if(e){z=h<<5;while(1){i=Qaa(e)|z;if(i+y>>>0>c>>>0){p=v[f+32>>2]+B(i,12)|0;A=v[p+4>>2];k=B(c,12)+r|0;v[k>>2]=v[p>>2];v[k+4>>2]=A;v[k+8>>2]=v[p+8>>2];k=(c<<3)+q|0;i=v[f+168>>2]+(i<<3)|0;u[k>>1]=x[i>>1];u[k+2>>1]=x[i+2>>1];v[k+4>>2]=v[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=v[f+172>>2]+m|0;s=v[f+176>>2]+s|0;if(j>>>0<=255){break c}WP(m,d+8|0,s,d+16|0,j,v[b+976>>2],v[b+2168>>2],a,t,g,l,n);a=vr(o,56);e=v[b+2168>>2];h=v[b+16>>2];i=v[b+20>>2];k=v[d+8>>2];p=v[d+16>>2];j=0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=h;v[a+12>>2]=i;v[a+52>>2]=0;v[a+36>>2]=(c<<3)+q;v[a+32>>2]=B(c,12)+r;v[a+28>>2]=e;v[a>>2]=135564;v[a+48>>2]=n+(p<<2);e=k<<2;v[a+44>>2]=e+l;v[a+40>>2]=e+g}y=y+512|0;f=v[f+184>>2];if(f){continue}break}if(!j){break b}WP(m,d+8|0,s,d+16|0,j,v[b+976>>2],v[b+2168>>2],a,t,g,l,n)}xa=d+48|0}function LW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0;f=xa-400|0;xa=f;p=v[c+32>>2];L=C(1);F=C(0);a:{if(!e){break a}F=C(0);if(x[e+12>>1]!=2){break a}L=z[e+8>>2];Q=z[e+4>>2];F=z[e>>2]}I=z[a+4>>2];J=z[a+8>>2];g=z[c+8>>2];q=z[c+12>>2];r=z[c+4>>2];v[f+396>>2]=0;z[f+392>>2]=q;z[f+388>>2]=g;z[f+384>>2]=r;a=v[c+16>>2];R=v[c+20>>2];S=v[c+28>>2];v[f+376>>2]=v[c+24>>2];v[f+380>>2]=S;v[f+368>>2]=a;v[f+372>>2]=R;G=z[d+20>>2];E=z[b+20>>2];k=z[d+24>>2];H=z[b+24>>2];s=z[d+16>>2];K=z[b+16>>2];n=z[b>>2];o=z[d+4>>2];l=z[b+4>>2];y=z[d>>2];j=z[b+8>>2];h=z[d+12>>2];D=z[b+12>>2];A=z[d+8>>2];t[f+240|0]=0;v[f+232>>2]=0;v[f+236>>2]=0;v[f+224>>2]=0;v[f+228>>2]=0;v[f+216>>2]=0;v[f+220>>2]=0;v[f+208>>2]=0;v[f+212>>2]=0;v[f+352>>2]=p+16;v[f+360>>2]=v[p+56>>2]+B(w[p+55|0],20);t[f+364|0]=w[p+54|0];i=C(r*z[p+68>>2]);m=C(g*z[p+72>>2]);i=i<=m?i:m;m=C(q*z[p+76>>2]);i=i<=m?i:m;z[f+232>>2]=i*C(.02500000037252903);z[f+224>>2]=i*C(.10000000149011612);z[f+228>>2]=i*C(.05000000074505806);a=f+208|0;FV(f+384|0,f+368|0,f+256|0,f+304|0,a,r==C(1)&g==C(1)&q==C(1));v[f+356>>2]=v[p+60>>2];v[f+188>>2]=0;v[f+172>>2]=0;g=C(K-s);q=C(g+g);g=C(E-G);r=C(g+g);g=C(H-k);i=C(g+g);G=C(C(C(C(-y)*q)-C(r*o))-C(A*i));H=C(C(h*h)+C(-.5));E=C(C(C(i*H)+C(h*C(C(o*q)-C(y*r))))-C(A*G));z[f+120>>2]=E;g=C(C(n*o)+C(C(C(h*j)-C(D*A))-C(y*l)));s=C(C(l*A)+C(C(C(h*n)-C(D*y))-C(o*j)));k=C(s+s);K=C(g*k);m=C(C(A*j)+C(C(o*l)+C(C(h*D)+C(y*n))));l=C(C(j*y)+C(C(C(h*l)-C(D*o))-C(A*n)));j=C(l+l);D=C(m*j);s=C(C(1)-C(s*k));M=C(l*j);n=C(J*C(0));N=C(m*k);O=C(g*j);P=C(C(C(s-M)*n)+C(C(J*C(K-D))+C(n*C(N+O))));z[f+184>>2]=E-P;j=C(C(C(r*H)+C(h*C(C(y*i)-C(A*q))))-C(o*G));z[f+116>>2]=j;l=C(k*l);k=C(g+g);m=C(m*k);g=C(g*k);k=C(C(C(O-N)*n)+C(C(J*C(l+m))+C(n*C(s-g))));z[f+180>>2]=j-k;z[f+168>>2]=E+P;z[f+164>>2]=j+k;z[f+192>>2]=I;v[f+124>>2]=0;v[f+140>>2]=4;t[f+144|0]=1;z[f+136>>2]=I;z[f+132>>2]=I;z[f+128>>2]=I;h=C(C(C(q*H)+C(h*C(C(A*r)-C(o*i))))-C(y*G));z[f+112>>2]=h;o=C(C(C(K+D)*n)+C(C(J*C(C(C(1)-M)-g))+C(n*C(l-m))));z[f+176>>2]=h-o;z[f+160>>2]=h+o;v[f+40>>2]=141148;v[f+44>>2]=f+112;v[f+32>>2]=141216;v[f+36>>2]=a;v[f+28>>2]=0;z[f+24>>2]=E-z[f+216>>2];z[f+20>>2]=j-z[f+212>>2];z[f+16>>2]=h-z[f+208>>2];v[f>>2]=0;a=GV(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)){z[e+8>>2]=L;z[e+4>>2]=Q;z[e>>2]=F}if(e){u[e+12>>1]=((a|0)==2)<<1}xa=f+400|0;return(a|0)==2|0}function IC(a,b,c,d,e,f){var g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=0,s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=0,E=0,F=0,G=0;p=xa-32|0;xa=p;h=v[a+584>>2];if(!h){JC(a+296|0);h=v[a+584>>2]}v[a+584>>2]=v[h>>2];v[a+576>>2]=v[a+576>>2]+1;G=h+48|0;j=v[a+292>>2];if(!j){KC(a+4|0);j=v[a+292>>2]}v[a+292>>2]=v[j>>2];v[a+284>>2]=v[a+284>>2]+1;i=z[b+20>>2];k=z[b+24>>2];l=z[d>>2];m=z[b>>2];n=z[e>>2];o=z[b+16>>2];s=z[d+4>>2];t=z[b+4>>2];u=z[e+4>>2];w=z[d+8>>2];x=z[b+8>>2];y=z[e+8>>2];A=z[b+12>>2];q=z[d+12>>2];A=q>A?A:q;q=z[b+28>>2];g=z[e+12>>2];q=g>2]=C(A+q)*C(.5);w=w>x?x:w;x=k>y?k:y;z[p+24>>2]=C(w+x)*C(.5);s=s>t?t:s;t=i>u?i:u;z[p+20>>2]=C(s+t)*C(.5);u=l>m?m:l;y=n>2]=C(u+y)*C(.5);i=C(y-u);z[p>>2]=i;k=C(t-s);z[p+4>>2]=k;d=i>2];v[h+80>>2]=b;v[h+32>>2]=b;e=v[b+36>>2];v[h+88>>2]=0;v[h+84>>2]=j;v[h+40>>2]=0;v[h+36>>2]=e;v[j>>2]=0;a:{b:{c:{a=v[e>>2];d:{if(!a){break d}r=i>2];while(1){a=a-1|0;D=e+(a<<2)|0;E=v[D+4>>2];F=d+(B(E,24)+f|0)|0;if(i>=C(C(z[F>>2]+z[F+12>>2])*C(.5))){F=v[j>>2];v[j>>2]=F+1;v[((F<<2)+j|0)+4>>2]=E;E=v[e>>2]-1|0;v[e>>2]=E;v[D+4>>2]=v[(e+(E<<2)|0)+4>>2]}if(a){continue}break}a=v[e>>2];if(!a){break d}d=v[j>>2];if((d|0)!=4){break c}}v[e>>2]=1;a=e+4|0;break b}if((a|0)==4){v[j>>2]=1;a=j+4|0;d=G;break a}D=r<<2;r=D+(B(c,24)+f|0)|0;if(z[(D|p+16)>>2]>=C(C(z[r>>2]+z[r+12>>2])*C(.5))){v[j>>2]=d+1;a=((d<<2)+j|0)+4|0;d=G;break a}v[e>>2]=a+1;a=(e+(a<<2)|0)+4|0}d=h}r=d;v[a>>2]=c;d=1;a=B(v[e+4>>2],24)+f|0;i=z[a+12>>2];k=z[a+8>>2];l=z[a+4>>2];m=z[a>>2];n=z[a+20>>2];o=z[a+16>>2];c=v[e>>2];if(c>>>0>1){while(1){a=B(v[(e+(d<<2)|0)+4>>2],24)+f|0;g=z[a+12>>2];i=g>2];k=g>k?k:g;g=z[a+4>>2];l=g>l?l:g;g=z[a>>2];m=g>m?m:g;g=z[a+20>>2];n=g>2];o=g>2]=i;v[h+12>>2]=0;z[h+8>>2]=k;z[h+4>>2]=l;z[h>>2]=m;v[h+28>>2]=0;z[h+24>>2]=n;z[h+20>>2]=o;e=1;a=B(v[j+4>>2],24)+f|0;i=z[a+12>>2];k=z[a+8>>2];l=z[a+4>>2];m=z[a>>2];n=z[a+20>>2];o=z[a+16>>2];c=v[j>>2];if(c>>>0>1){while(1){a=B(v[((e<<2)+j|0)+4>>2],24)+f|0;g=z[a+12>>2];i=g>2];k=g>k?k:g;g=z[a+4>>2];l=g>l?l:g;g=z[a>>2];m=g>m?m:g;g=z[a+20>>2];n=g>2];o=g>2]=m;v[h+76>>2]=0;z[h+72>>2]=n;z[h+68>>2]=o;z[h- -64>>2]=i;v[h+60>>2]=0;z[h+56>>2]=k;z[h+52>>2]=l;v[b+40>>2]=G;v[b+36>>2]=h;z[b+28>>2]=q;z[b+24>>2]=x;z[b+20>>2]=t;z[b+16>>2]=y;z[b+12>>2]=A;z[b+8>>2]=w;z[b+4>>2]=s;z[b>>2]=u;LC(b);xa=p+32|0;return r}function X2(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,y=0;g=xa-352|0;xa=g;v[g+304>>2]=v[b+32>>2];e=v[b+28>>2];v[g+296>>2]=v[b+24>>2];v[g+300>>2]=e;e=v[b+20>>2];v[g+288>>2]=v[b+16>>2];v[g+292>>2]=e;e=v[b+12>>2];v[g+280>>2]=v[b+8>>2];v[g+284>>2]=e;e=v[b+4>>2];v[g+272>>2]=v[b>>2];v[g+276>>2]=e;e=x[b+36>>1];u[g+308>>1]=e;f=x[b+38>>1]|x[b+40>>1]<<16;u[g+310>>1]=f;u[g+312>>1]=f>>>16;b=0;if(e&2){if(e&128){b=f&65535;u[g+310>>1]=b>>>0<64?b:64}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?46147:63804;b=L4(Ba[v[v[b+12>>2]+8>>2]](b+12|0,48,e,10899,331)|0,g+272|0,a+4|0)}e=d4(g+120|0,w[a+18|0]);a:{if(!V2(a,g+272|0,e,b,d)){a=0;if(!b){break a}Ba[v[v[b>>2]+4>>2]](b);break a}u[g+44>>1]=0;m=xa-16|0;xa=m;v[m+12>>2]=0;a=g+8|0;j=v[e+28>>2];k=w[j+38|0];t[a+38|0]=k;o=x[j+36>>1]&32767;f=o|w[e+32|0]<<15;u[a+36>>1]=f;p=w[j+39|0];t[a+39|0]=p;n=f<<16>>16;i=w[j+39|0];b:{if(!i){break b}h=v[e+4>>2];f=0;if(i-1>>>0>=3){y=i&252;while(1){l=w[(h+B(f|3,20)|0)+18|0]+(w[(h+B(f|2,20)|0)+18|0]+(w[(h+B(f|1,20)|0)+18|0]+(w[(h+B(f,20)|0)+18|0]+l|0)|0)|0)|0;f=f+4|0;q=q+4|0;if((y|0)!=(q|0)){continue}break}}i=i&3;if(!i){break b}while(1){l=w[(h+B(f,20)|0)+18|0]+l|0;f=f+1|0;r=r+1|0;if((i|0)!=(r|0)){continue}break}}v[m+12>>2]=l;f=B(p,20);h=((f+(B(k,15)+(o<<1)|0)|0)+((n|0)>=0?0:o<<2)|0)+l|0;i=h&3;h=(i?4-i|0:0)+h|0;if(h){f=v[37696];s=Ba[v[v[f+12>>2]+8>>2]](f+12|0,h,24422,9064,448)|0;k=w[a+38|0];j=v[e+28>>2];n=x[a+36>>1];f=B(w[a+39|0],20)}v[a+40>>2]=s;f=H9(f+s|0,v[e>>2],B(w[j+38|0],12));H9(v[a+40>>2],v[e+4>>2],B(w[a+39|0],20));i=B(k,3);h=f+B(k,12)|0;j=n&32767;k=h+(j<<1)|0;f=i+k|0;H9(f+(n<<16>>16>=0?0:j<<2)|0,v[e+8>>2],l);H9(h,v[e+12>>2],x[v[e+28>>2]+36>>1]<<1&65534);if(w[e+32|0]){H9(f,v[e+24>>2],(x[v[e+28>>2]+36>>1]&32767)<<2)}H9(k,v[e+16>>2],B(w[v[e+28>>2]+38|0],3));v[a+64>>2]=v[m+12>>2];z[a+72>>2]=z[e+116>>2];z[a+76>>2]=z[e+120>>2];z[a+80>>2]=z[e+124>>2];z[a+84>>2]=z[e+128>>2];z[a+88>>2]=z[e+132>>2];z[a+92>>2]=z[e+136>>2];z[a+96>>2]=z[e+140>>2];z[a+100>>2]=z[e+144>>2];z[a+104>>2]=z[e+148>>2];z[a+68>>2]=z[e+112>>2];z[a>>2]=z[e+44>>2];z[a+4>>2]=z[e+48>>2];z[a+8>>2]=z[e+52>>2];z[a+12>>2]=z[e+56>>2];z[a+16>>2]=z[e+60>>2];z[a+20>>2]=z[e- -64>>2];z[a+24>>2]=z[e+68>>2];z[a+28>>2]=z[e+72>>2];z[a+32>>2]=z[e+76>>2];f=v[e+108>>2];if(f){v[e+108>>2]=0}v[a+108>>2]=f;v[a+44>>2]=f;z[a+48>>2]=z[e+92>>2];z[a+52>>2]=z[e+96>>2];z[a+56>>2]=z[e+100>>2];z[a+60>>2]=z[e+104>>2];xa=m+16|0;a=Ba[v[v[c>>2]>>2]](c,2,a)|0;if(!(a|!d)){v[d>>2]=3}if(!b){break a}Ba[v[v[b>>2]+4>>2]](b)}e4(e);xa=g+352|0;return a|0}function _G(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=C(0);a=TJ(a,b,c);v[a>>2]=130544;z[a+64>>2]=z[c+16>>2];z[a+68>>2]=z[c+20>>2];z[a+72>>2]=z[c+24>>2];z[a+76>>2]=z[c+28>>2];z[a+80>>2]=z[c+32>>2];z[a+84>>2]=z[c+36>>2];n=z[c+40>>2];u[a+92>>1]=0;z[a+88>>2]=n;f=x[c+46>>1];v[a+160>>2]=0;v[a+164>>2]=0;v[a+152>>2]=-1;v[a+156>>2]=-1;t[a+150|0]=1;u[a+148>>1]=0;v[a+144>>2]=-128;v[a+136>>2]=0;v[a+140>>2]=1065353216;v[a+128>>2]=0;v[a+132>>2]=0;v[a+120>>2]=0;v[a+124>>2]=1069547520;v[a+112>>2]=0;v[a+116>>2]=0;v[a+100>>2]=c+16;v[a+96>>2]=0;u[a+94>>1]=f;v[c+164>>2]=0;v[c+168>>2]=0;t[c+173|0]=w[c+8|0]&2;if(w[c+44|0]&32){u[a+92>>1]=64}a:{if(!v[c+176>>2]|w[v[c+176>>2]+31|0]==1){break a}f=v[c+176>>2];if(!f){break a}e=w[f+12|0];b:{if(!e){break b}g=1;if(z[f>>2]!=C(0)|z[f+4>>2]!=C(0)|(z[f+8>>2]!=C(0)|z[f+16>>2]!=C(0))){break b}if(z[f+20>>2]!=C(0)|z[f+24>>2]!=C(0)|(z[f+32>>2]!=C(0)|z[f+36>>2]!=C(0))){break b}if(z[f+40>>2]!=C(0)){break b}g=0;g=(z[f+48>>2]!=C(0)|z[f+52>>2]!=C(0)?g:z[f+56>>2]==C(0))^1}t[a+150|0]=e;t[f+12|0]=0}f=1;c:{if(z[c+156>>2]>C(0)){break c}f=1;if(z[c+80>>2]!=C(0)){break c}f=1;if(z[c+84>>2]!=C(0)){break c}f=1;if(z[c+88>>2]!=C(0)){break c}f=1;if(z[c+96>>2]!=C(0)){break c}f=1;if(z[c+100>>2]!=C(0)){break c}f=z[c+104>>2]!=C(0)|g}e=v[a+44>>2];m=t[e+44|0]&1;j=v[b+1e3>>2];d:{e:{if(w[e+9|0]!=2){k=a- -64|0;e=v[j+4>>2];f:{if(e){i=e-1|0;e=v[v[j>>2]+(i<<2)>>2];v[j+4>>2]=i;break f}e=v[j+12>>2];v[j+12>>2]=e+1}e=e<<7;xF(j+168|0,k,m,f,e);xF(j+640|0,k,m,f,e);break e}e=v[a+160>>2];if(!e){break d}k=v[e>>2];h=v[e+28>>2];g:{if(h){l=v[e+24>>2];e=0;while(1){i=e|k;if((a|0)==v[l+(e<<2)>>2]){break g}e=e+1|0;if((h|0)!=(e|0)){continue}break}}i=k|-2147483648}e=i<<1&126|v[v[a+160>>2]+48>>2]&-128|1}v[a+144>>2]=e}if(!(!g|w[v[a+44>>2]+9|0]==2)){k=v[a+144>>2];i=k>>>7|0;e=i+32>>>5|0;h:{if(e>>>0<=(v[b+2448>>2]&2147483647)>>>0){g=v[b+2444>>2];break h}g=v[37696]+12|0;g=Ba[v[v[g>>2]+8>>2]](g,e<<2,24422,17999,438)|0;h=v[b+2444>>2];i:{if(!h){break i}H9(g,h,v[b+2448>>2]<<2);if(v[b+2448>>2]<0){break i}h=v[b+2444>>2];if(!h){break i}l=v[37696]+12|0;Ba[v[v[l>>2]+12>>2]](l,h)}h=v[b+2448>>2];I9((h<<2)+g|0,0,e-h<<2);v[b+2448>>2]=e;v[b+2444>>2]=g}e=(k>>>10&4194300)+g|0;v[e>>2]=v[e>>2]|1<>1]=x[a+148>>1]|4096}j:{if(f){$G(a);SO(b,a);break j}aH(a);v[a+152>>2]=-2;v[a+156>>2]=-2;cG(j,v[a+144>>2])}if(m){d=v[a+164>>2];if(d){AH(d,v[v[a+40>>2]+1136>>2])}if(v[c+176>>2]?!v[c+176>>2]|w[v[c+176>>2]+31|0]!=1:1){GG(c,v[b+2412>>2]);dG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);return a}u[a+148>>1]=x[a+148>>1]&63483|4}return a}function f2(a,b,c,d,e,f,g,h,i,j){var k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=0,F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=0;m=xa-160|0;xa=m;k2(b,g,m+88|0);v[m+56>>2]=b+96;v[m+52>>2]=b+48;v[m+48>>2]=d;a:{if(g){t[m+60|0]=1;v[m+16>>2]=141020;break a}t[m+60|0]=0;v[m+16>>2]=141068}v[m+64>>2]=b;v[m+12>>2]=0;H=xa-16|0;xa=H;g=m+88|0;E=m+16|0;b=0;b:{if(!d2(a,g,E,j,H,i)){break b}r=z[i+4>>2];w=z[i>>2];s=z[i+8>>2];x=z[j>>2];F=z[a+80>>2];j=v[g+16>>2];if(j){b=v[E+40>>2];q=z[b+40>>2];k=z[a+56>>2];o=z[b+8>>2];l=z[a+48>>2];y=z[b+24>>2];n=z[a+52>>2];I=C(C(q*k)+C(C(o*l)+C(y*n)));A=z[b+36>>2];p=z[b+4>>2];u=z[b+20>>2];L=C(C(A*k)+C(C(p*l)+C(u*n)));G=z[b+32>>2];J=C(G*k);k=z[b>>2];K=C(k*l);l=z[b+16>>2];J=C(J+C(K+C(l*n)));K=k;k=C(-w);G=C(C(C(K*k)-C(l*r))-C(G*s));y=C(C(C(o*k)-C(y*r))-C(q*s));A=C(C(C(p*k)-C(u*r))-C(A*s));M=v[g+24>>2];l=C(1);b=0;E=1;k=C(0);c:{while(1){d:{g=B(b,20)+M|0;n=z[g+8>>2];o=z[g>>2];p=z[g+4>>2];q=C(z[g+12>>2]+C(C(n*I)+C(C(o*J)+C(L*p))));o=C(C(n*y)+C(C(o*G)+C(A*p)));e:{if(C(D(o))C(0))){break e}break d}n=C(C(-q)/o);g=on?n:l;k=g?kl){break d}b=b+1|0;E=j>>>0>b>>>0;if((b|0)!=(j|0)){continue}break c}break}k=C(0)}b=1;if(E){break b}}b=1;if(!(C(F+x)>=k)){break b}b=B(v[m+12>>2],48)+e|0;v[b>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;l=z[a+52>>2];n=z[a+56>>2];b=B(v[m+12>>2],48)+e|0;z[b+16>>2]=z[a+48>>2]-C(w*k);v[b+28>>2]=0;z[b+24>>2]=n-C(s*k);z[b+20>>2]=l-C(r*k);l=z[i+8>>2];g=v[i+4>>2];j=v[i>>2];b=v[m+12>>2];v[m+12>>2]=b+1;b=B(b,48)+e|0;v[b+32>>2]=j;v[b+36>>2]=g;z[b+44>>2]=k;z[b+40>>2]=l;b=1}xa=H+16|0;g=b&v[m+12>>2]!=0;if(g){j=v[e+4>>2];b=v[h+76>>2];v[b>>2]=v[e>>2];v[b+4>>2]=j;j=v[e+12>>2];v[b+8>>2]=v[e+8>>2];v[b+12>>2]=j;j=v[e+20>>2];v[b+16>>2]=v[e+16>>2];v[b+20>>2]=j;j=v[e+28>>2];v[b+24>>2]=v[e+24>>2];v[b+28>>2]=j;j=v[e+36>>2];v[b+32>>2]=v[e+32>>2];v[b+36>>2]=j;j=v[e+44>>2];v[b+40>>2]=v[e+40>>2];v[b+44>>2]=j;t[h+64|0]=1;y=z[c+20>>2];I=z[c+24>>2];x=z[e+44>>2];A=z[c+16>>2];k=z[d+12>>2];l=z[i+8>>2];r=z[d+8>>2];s=z[i>>2];n=z[d>>2];w=z[i+4>>2];q=z[d+4>>2];o=z[a+80>>2];a=v[f+4096>>2];v[f+4096>>2]=a+1;a=(a<<6)+f|0;v[a+52>>2]=-1;z[a+12>>2]=x-o;v[a+28>>2]=0;x=C(C(k*k)+C(-.5));F=C(C(r*l)+C(C(n*s)+C(q*w)));p=C(C(C(k*C(C(n*w)-C(s*q)))+C(l*x))+C(r*F));p=C(p+p);z[a+8>>2]=p;u=C(C(q*F)+C(C(x*w)+C(k*C(C(r*s)-C(l*n)))));u=C(u+u);z[a+4>>2]=u;k=C(C(n*F)+C(C(s*x)+C(k*C(C(q*l)-C(w*r)))));k=C(k+k);z[a>>2]=k;z[a+24>>2]=I-C(o*p);z[a+20>>2]=y-C(o*u);z[a+16>>2]=A-C(o*k)}xa=m+160|0;return g}function dD(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=0,q=0,r=0,s=0;j=xa-1056|0;xa=j;t[j+1040|0]=1;v[j+1048>>2]=256;v[j+1052>>2]=256;v[j+1044>>2]=j+16;v[j+16>>2]=v[c+588>>2];n=1;a:while(1){n=n-1|0;c=v[v[j+1044>>2]+(n<<2)>>2];f=z[c+16>>2];g=z[c>>2];i=C(f+g);f=C(f-g);k=z[c+24>>2];l=z[c+8>>2];g=C(k+l);m=z[c+20>>2];o=z[c+4>>2];h=C(m+o);k=C(k-l);l=C(m-o);while(1){b:{c:{m=C(i*C(.5));i=C(C(f*C(.5))+z[d+48>>2]);d:{if(!(z[d+96>>2]<=C(m+i))|!(z[d+112>>2]>=C(m-i))){break d}f=C(C(l*C(.5))+z[d+52>>2]);h=C(h*C(.5));o=C(z[d+4>>2]-h);m=C(z[d>>2]-m);l=C(C(o*z[d+16>>2])-C(m*z[d+32>>2]));if(!(C(C(i*z[d+80>>2])+C(f*z[d+64>>2]))>=(l>C(0)?l:C(-l)))|!(z[d+100>>2]<=C(h+f))|!(z[d+116>>2]>=C(h-f))){break d}l=C(f*z[d+84>>2]);f=C(C(k*C(.5))+z[d+56>>2]);g=C(g*C(.5));k=C(z[d+8>>2]-g);h=C(C(k*z[d+20>>2])-C(o*z[d+36>>2]));if(!(C(l+C(f*z[d+68>>2]))>=(h>C(0)?h:C(-h)))|!(z[d+104>>2]<=C(g+f))|!(z[d+120>>2]>=C(g-f))){break d}f=C(C(f*z[d+88>>2])+C(i*z[d+72>>2]));i=C(C(m*z[d+24>>2])-C(k*z[d+40>>2]));if(!(f>=(i>C(0)?i:C(-i)))){break d}p=c;c=v[c+36>>2];if(v[p+40>>2]){break c}q=v[c>>2];if(!q){break d}c=c+4|0;if((q|0)==1){if(Ba[v[v[e>>2]>>2]](e,j+12|0,(v[c>>2]<<3)+a|0)|0){break d}break b}while(1){r=v[c>>2];p=B(r,24)+b|0;i=z[p>>2];f=z[p+12>>2];g=C(C(i+f)*C(.5));i=C(C(C(f-i)*C(.5))+z[d+48>>2]);e:{if(!(z[d+96>>2]<=C(g+i))|!(z[d+112>>2]>=C(g-i))){break e}h=z[p+16>>2];k=z[p+4>>2];f=C(C(C(h-k)*C(.5))+z[d+52>>2]);h=C(C(k+h)*C(.5));k=C(z[d+4>>2]-h);l=C(z[d>>2]-g);g=C(C(k*z[d+16>>2])-C(l*z[d+32>>2]));if(!(C(C(i*z[d+80>>2])+C(f*z[d+64>>2]))>=(g>C(0)?g:C(-g)))|!(z[d+100>>2]<=C(h+f))|!(z[d+116>>2]>=C(h-f))){break e}o=C(f*z[d+84>>2]);g=z[p+20>>2];h=z[p+8>>2];f=C(C(C(g-h)*C(.5))+z[d+56>>2]);g=C(C(h+g)*C(.5));m=C(z[d+8>>2]-g);h=C(C(m*z[d+20>>2])-C(k*z[d+36>>2]));if(!(C(o+C(f*z[d+68>>2]))>=(h>C(0)?h:C(-h)))|!(z[d+104>>2]<=C(g+f))|!(z[d+120>>2]>=C(g-f))){break e}f=C(C(f*z[d+88>>2])+C(i*z[d+72>>2]));i=C(C(l*z[d+24>>2])-C(m*z[d+40>>2]));if(!(f>=(i>C(0)?i:C(-i)))){break e}if(!(Ba[v[v[e>>2]>>2]](e,j+12|0,(r<<3)+a|0)|0)){break b}}c=c+4|0;q=q-1|0;if(q){continue}break}}s=!n;if(n){continue a}break b}v[v[j+1044>>2]+(n<<2)>>2]=c+48;n=n+1|0;if((n|0)==(v[j+1052>>2]&2147483647)){fD(j+16|0,n<<1)}f=z[c+16>>2];g=z[c>>2];i=C(f+g);f=C(f-g);k=z[c+24>>2];l=z[c+8>>2];g=C(k+l);m=z[c+20>>2];o=z[c+4>>2];h=C(m+o);k=C(k-l);l=C(m-o);continue}break}break}a=v[j+1052>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[j+1044>>2];if((a|0)==(j+16|0)|!a){break f}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=j+1056|0;return s}function DY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=0,s=0,u=0;e=xa-80|0;xa=e;l=v[a+36>>2];a:{if(l){break a}l=0;m=v[a+20>>2];n=m<<2;if(n){l=v[37696];l=Ba[v[v[l+12>>2]+8>>2]](l+12|0,n,24422,11302,133)|0;m=v[a+20>>2]}v[a+36>>2]=l;if(!m){break a}while(1){v[(i<<2)+l>>2]=i;i=i+1|0;if(i>>>0>2]){continue}break}}v[e+72>>2]=0;v[e+68>>2]=c;v[e+64>>2]=d;c=v[a+40>>2];v[e+60>>2]=v[a+32>>2];v[e+56>>2]=c;f=z[b+16>>2];g=z[b+20>>2];h=z[b+12>>2];o=z[b>>2];j=z[b+4>>2];k=z[b+8>>2];v[e+44>>2]=0;z[e+40>>2]=C(g-k)*C(.5);z[e+36>>2]=C(f-j)*C(.5);v[e+28>>2]=0;z[e+32>>2]=C(h-o)*C(.5);z[e+24>>2]=C(k+g)*C(.5);z[e+20>>2]=C(j+f)*C(.5);z[e+16>>2]=C(o+h)*C(.5);u=v[a+28>>2];c=e- -64|0;a=xa-1040|0;xa=a;t[a+1024|0]=1;v[a+1032>>2]=256;v[a+1036>>2]=256;v[a+1028>>2]=a;s=v[e+56>>2];v[a>>2]=s;d=1;b:while(1){d=d-1|0;b=v[v[a+1028>>2]+(d<<2)>>2];g=z[b>>2];h=z[b+12>>2];f=C(g+h);g=C(h-g);j=z[b+8>>2];k=z[b+20>>2];h=C(j+k);p=z[b+4>>2];q=z[b+16>>2];o=C(p+q);j=C(k-j);k=C(q-p);while(1){c:{d:{f=C(C(f*C(.5))-z[e+16>>2]);e:{if(!(C(C(g*C(.5))+z[e+32>>2])>=(f>C(0)?f:C(-f)))){break e}f=C(C(o*C(.5))-z[e+20>>2]);if(!(C(C(k*C(.5))+z[e+36>>2])>=(f>C(0)?f:C(-f)))){break e}f=C(C(h*C(.5))-z[e+24>>2]);if(!(C(C(j*C(.5))+z[e+40>>2])>=(f>C(0)?f:C(-f)))){break e}b=v[b+24>>2];i=b>>>1|0;if(!(b&1)){break d}m=i&15;if(!m){break e}i=v[e+60>>2]+(b>>>3&536870908)|0;n=v[c>>2];if((m|0)==1){b=v[(v[i>>2]<<2)+l>>2];i=v[c+8>>2];v[c+8>>2]=i+1;v[n+(i<<2)>>2]=b;if(v[c+8>>2]!=v[c+4>>2]){break e}break c}while(1){r=v[i>>2];b=B(r,24)+u|0;g=z[b+12>>2];h=z[b>>2];f=C(C(C(h+g)*C(.5))-z[e+16>>2]);f:{if(!(C(C(C(g-h)*C(.5))+z[e+32>>2])>=(f>C(0)?f:C(-f)))){break f}g=z[b+4>>2];h=z[b+16>>2];f=C(C(C(g+h)*C(.5))-z[e+20>>2]);if(!(C(C(C(h-g)*C(.5))+z[e+36>>2])>=(f>C(0)?f:C(-f)))){break f}g=z[b+8>>2];h=z[b+20>>2];f=C(C(C(g+h)*C(.5))-z[e+24>>2]);if(!(C(C(C(h-g)*C(.5))+z[e+40>>2])>=(f>C(0)?f:C(-f)))){break f}b=v[(r<<2)+l>>2];r=v[c+8>>2];v[c+8>>2]=r+1;v[n+(r<<2)>>2]=b;if(v[c+8>>2]==v[c+4>>2]){break c}}i=i+4|0;m=m-1|0;if(m){continue}break}}if(d){continue b}break c}b=B(i,28)+s|0;v[v[a+1028>>2]+(d<<2)>>2]=b+28;d=d+1|0;if((d|0)==(v[a+1036>>2]&2147483647)){BY(a,d<<1)}g=z[b>>2];h=z[b+12>>2];f=C(g+h);g=C(h-g);j=z[b+8>>2];k=z[b+20>>2];h=C(j+k);p=z[b+4>>2];q=z[b+16>>2];o=C(p+q);j=C(k-j);k=C(q-p);continue}break}break}b=v[a+1036>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+1028>>2];if((b|0)==(a|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=a+1040|0;xa=e+80|0;return v[e+72>>2]}function hj(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0);i=xa-32|0;xa=i;a:{b:{switch(d|0){case 0:I=a+48|0;if(b){g=z[b>>2];f=z[b+4>>2];if(t[a+316|0]&1){e=z[v[a+56>>2]+92>>2]}else{d=a- -64|0;m=v[d+176>>2];c:{if(!(!m|w[m+31|0]!=1)){e=z[m+44>>2];break c}e=z[d+140>>2]}}z[i+24>>2]=e*z[b+8>>2];z[i+20>>2]=e*f;z[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){x=z[c+8>>2];n=x;h=z[a+256>>2];j=C(h+h);k=z[a+264>>2];f=C(j*k);l=z[a+260>>2];g=C(l+l);p=z[a+268>>2];e=C(g*p);q=C(f-e);if(w[a+316|0]&2){b=v[a+56>>2]+96|0}else{b=a- -64|0;m=v[b+176>>2];d:{if(!(!m|w[m+31|0]!=1)){b=m+32|0;break d}b=b+128|0}}o=z[b+8>>2];F=C(f+e);y=C(o*F);G=C(C(1)-C(h*j));e=C(l*g);s=C(G-e);A=z[b>>2];f=C(C(1)-e);e=C(k+k);r=C(k*e);H=C(f-r);B=C(A*H);h=C(g*k);g=C(j*p);u=C(h+g);D=z[b+4>>2];f=C(j*l);e=C(e*p);p=C(f-e);E=C(D*p);k=C(C(y*s)+C(C(B*q)+C(u*E)));J=C(n*C(C(C(o*s)*s)+C(C(C(A*q)*q)+C(u*C(u*D)))));j=z[c>>2];l=z[c+4>>2];n=o;o=C(h-g);h=C(n*o);n=C(f+e);g=C(A*n);r=C(G-r);f=C(D*r);e=C(C(h*s)+C(C(g*q)+C(u*f)));z[i+8>>2]=J+C(C(j*k)+C(l*e));q=C(x*e);e=C(C(y*o)+C(C(B*n)+C(r*E)));z[i+4>>2]=q+C(C(j*e)+C(l*C(C(h*o)+C(C(g*n)+C(r*f)))));z[i>>2]=C(x*k)+C(C(j*C(C(y*F)+C(C(B*H)+C(p*E))))+C(l*e));a=i}else{a=0}ij(I,d,a);break a;case 3:ij(a+48|0,b,c);break a;case 1:I=a+48|0;if(b){g=z[b>>2];f=z[b+4>>2];if(t[a+316|0]&1){e=z[v[a+56>>2]+92>>2]}else{d=a- -64|0;m=v[d+176>>2];e:{if(!(!m|w[m+31|0]!=1)){e=z[m+44>>2];break e}e=z[d+140>>2]}}z[i+24>>2]=e*z[b+8>>2];z[i+20>>2]=e*f;z[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){x=z[c+8>>2];n=x;h=z[a+256>>2];j=C(h+h);k=z[a+264>>2];f=C(j*k);l=z[a+260>>2];g=C(l+l);p=z[a+268>>2];e=C(g*p);q=C(f-e);if(w[a+316|0]&2){b=v[a+56>>2]+96|0}else{b=a- -64|0;m=v[b+176>>2];f:{if(!(!m|w[m+31|0]!=1)){b=m+32|0;break f}b=b+128|0}}o=z[b+8>>2];F=C(f+e);y=C(o*F);G=C(C(1)-C(h*j));e=C(l*g);s=C(G-e);A=z[b>>2];f=C(C(1)-e);e=C(k+k);r=C(k*e);H=C(f-r);B=C(A*H);h=C(g*k);g=C(j*p);u=C(h+g);D=z[b+4>>2];f=C(j*l);e=C(e*p);p=C(f-e);E=C(D*p);k=C(C(y*s)+C(C(B*q)+C(u*E)));J=C(n*C(C(C(o*s)*s)+C(C(C(A*q)*q)+C(u*C(u*D)))));j=z[c>>2];l=z[c+4>>2];n=o;o=C(h-g);h=C(n*o);n=C(f+e);g=C(A*n);r=C(G-r);f=C(D*r);e=C(C(h*s)+C(C(g*q)+C(u*f)));z[i+8>>2]=J+C(C(j*k)+C(l*e));q=C(x*e);e=C(C(y*o)+C(C(B*n)+C(r*E)));z[i+4>>2]=q+C(C(j*e)+C(l*C(C(h*o)+C(C(g*n)+C(r*f)))));z[i>>2]=C(x*k)+C(C(j*C(C(y*F)+C(C(B*H)+C(p*E))))+C(l*e));a=i}else{a=0}ej(I,d,a);break a;case 2:break b;default:break a}}ej(a+48|0,b,c)}xa=i+32|0}function bj(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0);i=xa-32|0;xa=i;a:{b:{switch(d|0){case 0:I=a+48|0;if(b){g=z[b>>2];f=z[b+4>>2];if(t[a+316|0]&1){e=z[v[a+56>>2]+92>>2]}else{d=a- -64|0;m=v[d+176>>2];c:{if(!(!m|w[m+31|0]!=1)){e=z[m+44>>2];break c}e=z[d+140>>2]}}z[i+24>>2]=e*z[b+8>>2];z[i+20>>2]=e*f;z[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){x=z[c+8>>2];n=x;h=z[a+256>>2];j=C(h+h);k=z[a+264>>2];f=C(j*k);l=z[a+260>>2];g=C(l+l);p=z[a+268>>2];e=C(g*p);q=C(f-e);if(w[a+316|0]&2){b=v[a+56>>2]+96|0}else{b=a- -64|0;m=v[b+176>>2];d:{if(!(!m|w[m+31|0]!=1)){b=m+32|0;break d}b=b+128|0}}o=z[b+8>>2];F=C(f+e);y=C(o*F);G=C(C(1)-C(h*j));e=C(l*g);s=C(G-e);A=z[b>>2];f=C(C(1)-e);e=C(k+k);r=C(k*e);H=C(f-r);B=C(A*H);h=C(g*k);g=C(j*p);u=C(h+g);D=z[b+4>>2];f=C(j*l);e=C(e*p);p=C(f-e);E=C(D*p);k=C(C(y*s)+C(C(B*q)+C(u*E)));J=C(n*C(C(C(o*s)*s)+C(C(C(A*q)*q)+C(u*C(u*D)))));j=z[c>>2];l=z[c+4>>2];n=o;o=C(h-g);h=C(n*o);n=C(f+e);g=C(A*n);r=C(G-r);f=C(D*r);e=C(C(h*s)+C(C(g*q)+C(u*f)));z[i+8>>2]=J+C(C(j*k)+C(l*e));q=C(x*e);e=C(C(y*o)+C(C(B*n)+C(r*E)));z[i+4>>2]=q+C(C(j*e)+C(l*C(C(h*o)+C(C(g*n)+C(r*f)))));z[i>>2]=C(x*k)+C(C(j*C(C(y*F)+C(C(B*H)+C(p*E))))+C(l*e));a=i}else{a=0}dj(I,d,a);break a;case 3:dj(a+48|0,b,c);break a;case 1:I=a+48|0;if(b){g=z[b>>2];f=z[b+4>>2];if(t[a+316|0]&1){e=z[v[a+56>>2]+92>>2]}else{d=a- -64|0;m=v[d+176>>2];e:{if(!(!m|w[m+31|0]!=1)){e=z[m+44>>2];break e}e=z[d+140>>2]}}z[i+24>>2]=e*z[b+8>>2];z[i+20>>2]=e*f;z[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){x=z[c+8>>2];n=x;h=z[a+256>>2];j=C(h+h);k=z[a+264>>2];f=C(j*k);l=z[a+260>>2];g=C(l+l);p=z[a+268>>2];e=C(g*p);q=C(f-e);if(w[a+316|0]&2){b=v[a+56>>2]+96|0}else{b=a- -64|0;m=v[b+176>>2];f:{if(!(!m|w[m+31|0]!=1)){b=m+32|0;break f}b=b+128|0}}o=z[b+8>>2];F=C(f+e);y=C(o*F);G=C(C(1)-C(h*j));e=C(l*g);s=C(G-e);A=z[b>>2];f=C(C(1)-e);e=C(k+k);r=C(k*e);H=C(f-r);B=C(A*H);h=C(g*k);g=C(j*p);u=C(h+g);D=z[b+4>>2];f=C(j*l);e=C(e*p);p=C(f-e);E=C(D*p);k=C(C(y*s)+C(C(B*q)+C(u*E)));J=C(n*C(C(C(o*s)*s)+C(C(C(A*q)*q)+C(u*C(u*D)))));j=z[c>>2];l=z[c+4>>2];n=o;o=C(h-g);h=C(n*o);n=C(f+e);g=C(A*n);r=C(G-r);f=C(D*r);e=C(C(h*s)+C(C(g*q)+C(u*f)));z[i+8>>2]=J+C(C(j*k)+C(l*e));q=C(x*e);e=C(C(y*o)+C(C(B*n)+C(r*E)));z[i+4>>2]=q+C(C(j*e)+C(l*C(C(h*o)+C(C(g*n)+C(r*f)))));z[i>>2]=C(x*k)+C(C(j*C(C(y*F)+C(C(B*H)+C(p*E))))+C(l*e));a=i}else{a=0}ej(I,d,a);break a;case 2:break b;default:break a}}ej(a+48|0,b,c)}xa=i+32|0}function iY(a,b,c,d,e,f,g){var h=0,i=0,j=C(0),k=C(0),l=0,m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=0,u=C(0),w=0,x=C(0),y=0;h=xa-144|0;xa=h;v[g>>2]=3;i=v[b+12>>2];v[h+136>>2]=v[b+8>>2];v[h+140>>2]=i;i=v[b+4>>2];v[h+128>>2]=v[b>>2];v[h+132>>2]=i;i=v[b+28>>2];v[h+120>>2]=v[b+24>>2];v[h+124>>2]=i;i=v[b+20>>2];v[h+112>>2]=v[b+16>>2];v[h+116>>2]=i;i=v[b+44>>2];v[h+104>>2]=v[b+40>>2];v[h+108>>2]=i;i=v[b+36>>2];v[h+96>>2]=v[b+32>>2];v[h+100>>2]=i;j=z[h+128>>2];p=C(z[h+112>>2]-j);k=z[h+132>>2];n=C(z[h+100>>2]-k);j=C(z[h+96>>2]-j);k=C(z[h+116>>2]-k);o=C(C(p*n)-C(j*k));q=C(o*o);u=k;k=z[h+136>>2];o=C(z[h+104>>2]-k);k=C(z[h+120>>2]-k);n=C(C(u*o)-C(n*k));j=C(C(k*j)-C(o*p));a:{if(C(q+C(C(n*n)+C(j*j)))<=C(1.1920928955078125e-7)){v[g>>2]=2;n=z[b+8>>2];j=C(z[b+24>>2]-n);o=z[b>>2];p=C(z[b+16>>2]-o);q=z[b+4>>2];k=C(z[b+20>>2]-q);x=C(C(j*j)+C(C(p*p)+C(k*k)));if(x<=C(1.1920928955078125e-7)){v[g>>2]=1;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;break a}v[a+12>>2]=0;u=j;j=C(F(C(C(C(C(C(-o)*p)-C(k*q))-C(n*j))/x),C(1)));j=j>C(0)?j:C(0);z[a+8>>2]=n+C(u*j);z[a+4>>2]=q+C(k*j);z[a>>2]=o+C(p*j);break a}v[h+88>>2]=v[25022];i=v[25021];v[h+80>>2]=v[25020];v[h+84>>2]=i;yW(h+48|0,h+128|0,h+112|0,h+96|0,h+80|0,h+92|0,h- -64|0);y=v[h+92>>2];if((y|0)!=3){s=v[h+80>>2];t=v[h+84>>2];l=t<<4;i=l+b|0;m=v[i+4>>2];v[h+48>>2]=v[i>>2];v[h+52>>2]=m;m=v[i+12>>2];v[h+56>>2]=v[i+8>>2];v[h+60>>2]=m;i=c+l|0;m=v[i+12>>2];v[h+40>>2]=v[i+8>>2];v[h+44>>2]=m;m=v[i+4>>2];v[h+32>>2]=v[i>>2];v[h+36>>2]=m;m=s<<4;i=m+d|0;r=v[i+12>>2];v[h+24>>2]=v[i+8>>2];v[h+28>>2]=r;r=v[i+4>>2];v[h+16>>2]=v[i>>2];v[h+20>>2]=r;i=d+l|0;l=v[i+12>>2];v[h+8>>2]=v[i+8>>2];v[h+12>>2]=l;l=v[i+4>>2];v[h>>2]=v[i>>2];v[h+4>>2]=l;i=s<<2;s=v[i+f>>2];l=t<<2;t=v[l+f>>2];l=v[e+l>>2];r=v[e+i>>2];i=b+m|0;w=v[i+12>>2];v[b+8>>2]=v[i+8>>2];v[b+12>>2]=w;w=v[i+4>>2];v[b>>2]=v[i>>2];v[b+4>>2]=w;i=v[h+52>>2];v[b+16>>2]=v[h+48>>2];v[b+20>>2]=i;i=v[h+60>>2];v[b+24>>2]=v[h+56>>2];v[b+28>>2]=i;b=c+m|0;i=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=i;i=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=i;b=v[h+36>>2];v[c+16>>2]=v[h+32>>2];v[c+20>>2]=b;b=v[h+44>>2];v[c+24>>2]=v[h+40>>2];v[c+28>>2]=b;b=v[h+28>>2];v[d+8>>2]=v[h+24>>2];v[d+12>>2]=b;b=v[h+20>>2];v[d>>2]=v[h+16>>2];v[d+4>>2]=b;b=v[h+12>>2];v[d+24>>2]=v[h+8>>2];v[d+28>>2]=b;b=v[h+4>>2];v[d+16>>2]=v[h>>2];v[d+20>>2]=b;v[e>>2]=r;v[e+4>>2]=l;v[f+4>>2]=t;v[f>>2]=s;v[g>>2]=y}b=v[h+68>>2];v[a>>2]=v[h+64>>2];v[a+4>>2]=b;b=v[h+76>>2];v[a+8>>2]=v[h+72>>2];v[a+12>>2]=b}xa=h+144|0}function et(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=xa-112|0;xa=b;v[b+64>>2]=0;v[b+68>>2]=0;v[b+72>>2]=-1;h=v[c+4>>2];e=v[((v[h+4>>2]>>>22&60)+89188|0)+12>>2]+h|0;n=v[((w[e+9|0]<<2)+149664|0)+40>>2]+e|0;c=v[c>>2];o=v[37419]+(c+16|0)|0;f=w[a+42|0];e=f?2:1;d=v[a+20>>2];m=u[d+16>>1];e=v[v[a+12>>2]+28>>2]?e:(m|0)>=0?2:e;a:{b:{if(f){break b}f=v[a+24>>2];c:{g=v[a+32>>2];if(g){break c}i=v[d+12>>2];j=v[d+8>>2];k=v[d+4>>2];l=v[d>>2];if(!(i|(j|(k|l)))|(i&v[c+28>>2]|(j&v[c+24>>2]|(k&v[c+20>>2]|l&v[c+16>>2])))){break c}f=1;break a}if(!(m&4)|!(f|g)){break b}u[b+104>>1]=x[a+16>>1];d:{if(f){e=Ba[v[v[f>>2]>>2]](f,d,o,n,b+104|0)|0;break d}f=v[g+8>>2];if(!f){break b}v[b+32>>2]=v[d>>2];v[b+36>>2]=v[d+4>>2];v[b+40>>2]=v[d+8>>2];v[b+44>>2]=v[d+12>>2];v[b+88>>2]=v[c+16>>2];v[b+92>>2]=v[c+20>>2];v[b+96>>2]=v[c+24>>2];v[b+100>>2]=v[c+28>>2];e=Ba[f|0](b+32|0,b+88|0,v[g>>2],v[g+4>>2],b+104|0)|0}if(e){break b}f=1;break a}sh(b+32|0,c,h);d=v[a+12>>2];g=v[d+32>>2];p=v[d+28>>2];q=v[d+24>>2];d=v[v[a+4>>2]+5736>>2];f=v[a+8>>2];h=v[f+16>>2];k=v[f+12>>2];l=v[k>>2];j=t[c+4|0]&1?v[c+8>>2]- -64|0:c+84|0;i=v[j>>2];e:{if((l|0)>(i|0)){f=1;if(Ba[v[(d+B(i,28)|0)+(l<<2)>>2]](j,b+32|0,k,h,0)|0){break e}break a}f=1;if(!(Ba[v[(d+B(l,28)|0)+(i<<2)>>2]](k,h,j,b+32|0,0)|0)){break a}}d=g>>>0

>>0?(g<<4)+q|0:b- -64|0;v[d+4>>2]=o;v[d>>2]=n;f:{if(w[a+42|0]){break f}f=v[a+24>>2];g=v[a+32>>2];if(!(f|g)|!(m&8)){break f}if(f){e=Ba[v[v[f>>2]+4>>2]](f,v[a+20>>2],d)|0;break f}f=v[g+12>>2];if(!f){break f}e=v[a+20>>2];v[b+16>>2]=v[e>>2];v[b+20>>2]=v[e+4>>2];v[b+24>>2]=v[e+8>>2];v[b+28>>2]=v[e+12>>2];v[b>>2]=v[c+16>>2];v[b+4>>2]=v[c+20>>2];v[b+8>>2]=v[c+24>>2];v[b+12>>2]=v[c+28>>2];e=Ba[f|0](b+16|0,b,v[g>>2],v[g+4>>2],d)|0}if(!(!w[a+41|0]|!e)){e=v[d+4>>2];c=v[a+12>>2];v[c+4>>2]=v[d>>2];v[c+8>>2]=e;e=v[d+12>>2];v[c+12>>2]=v[d+8>>2];v[c+16>>2]=e;t[v[a+12>>2]+20|0]=1;f=0;break a}f=1;g:{switch((w[a+40|0]?1:e)-1|0){case 0:c=v[a+12>>2];g=v[c+28>>2];if(!(z[a+28>>2]>=C(-1))|(!g|!w[a+38|0])){break a}e=v[c+32>>2];if((g|0)==(e|0)){c=Ba[v[v[c>>2]>>2]](c,v[c+24>>2],g)|0;t[a+38|0]=c;f=0;if(!c){break a}c=v[a+12>>2];v[c+32>>2]=0;e=0}f=1;v[c+32>>2]=e+1;a=v[c+24>>2]+(e<<4)|0;c=v[d+12>>2];v[a+8>>2]=v[d+8>>2];v[a+12>>2]=c;c=v[d+4>>2];v[a>>2]=v[d>>2];v[a+4>>2]=c;break a;case 1:break g;default:break a}}if(!(z[a+28>>2]>=C(-1))){break a}e=v[d+4>>2];c=v[a+12>>2];v[c+4>>2]=v[d>>2];v[c+8>>2]=e;e=v[d+12>>2];v[c+12>>2]=v[d+8>>2];v[c+16>>2]=e;t[v[a+12>>2]+20|0]=1}xa=b+112|0;return f|0}function pZ(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0);F=C(d+h);k=v[b+4096>>2];u=z[e+8>>2];q=C(z[e+20>>2]-u);i=z[f+4>>2];w=z[e>>2];A=C(z[e+24>>2]-w);h=z[f>>2];x=z[e+4>>2];B=C(z[e+28>>2]-x);m=C(C(i*A)-C(h*B));r=C(z[e+12>>2]-w);l=z[f+8>>2];D=C(z[e+32>>2]-u);j=C(C(l*B)-C(i*D));s=C(z[e+16>>2]-x);t=C(C(h*D)-C(l*A));n=C(C(q*m)+C(C(r*j)+C(s*t)));a:{if(n>2];o=C(G-u);p=C(o*m);H=z[c>>2];m=C(H-w);E=C(m*j);I=z[c+4>>2];j=C(I-x);t=C(p+C(E+C(t*j)));y=C(n*C(.0010000000474974513));p=C(-y);if(tm){e=k;break a}if(y>>0>63){e=k;break a}L=z[a+36>>2];M=z[a+40>>2];N=z[a+44>>2];o=z[a+24>>2];m=z[a>>2];j=z[a+12>>2];t=z[a+28>>2];y=z[a+4>>2];p=z[a+16>>2];E=z[a+32>>2];J=z[a+8>>2];K=z[a+20>>2];e=k+1|0;v[b+4096>>2]=e;k=(k<<6)+b|0;v[k+52>>2]=g;z[k+12>>2]=n-d;z[k+8>>2]=C(C(h*J)+C(i*K))+C(l*E);z[k+4>>2]=C(C(h*y)+C(i*p))+C(l*t);z[k>>2]=C(C(h*m)+C(i*j))+C(l*o);h=C(H-C(h*n));i=C(I-C(i*n));l=C(G-C(l*n));z[k+24>>2]=N+C(C(C(J*h)+C(K*i))+C(E*l));z[k+20>>2]=M+C(C(C(y*h)+C(p*i))+C(t*l));z[k+16>>2]=L+C(C(C(m*h)+C(j*i))+C(o*l));h=z[f>>2]}i=z[f+4>>2];o=C(C(i*A)-C(h*B));l=z[f+8>>2];m=C(C(l*B)-C(i*D));j=C(C(h*D)-C(l*A));n=C(C(q*o)+C(C(r*m)+C(s*j)));b:{if(n>2];u=C(t-u);y=z[c+12>>2];w=C(y-w);p=C(w*m);m=z[c+16>>2];x=C(m-x);o=C(C(u*o)+C(p+C(j*x)));j=C(n*C(.0010000000474974513));p=C(-j);if(or|j>>0>63){break b}F=z[a+36>>2];o=z[a+40>>2];j=z[a+44>>2];A=z[a+24>>2];B=z[a>>2];r=z[a+12>>2];D=z[a+28>>2];s=z[a+4>>2];n=z[a+16>>2];u=z[a+32>>2];w=z[a+8>>2];x=z[a+20>>2];v[b+4096>>2]=e+1;a=(e<<6)+b|0;v[a+52>>2]=g;z[a+12>>2]=q-d;z[a+8>>2]=C(C(h*w)+C(i*x))+C(l*u);z[a+4>>2]=C(C(h*s)+C(i*n))+C(l*D);z[a>>2]=C(C(h*B)+C(i*r))+C(l*A);d=C(y-C(h*q));h=C(m-C(i*q));i=C(t-C(l*q));z[a+24>>2]=j+C(C(C(w*d)+C(x*h))+C(u*i));z[a+20>>2]=o+C(C(C(s*d)+C(n*h))+C(D*i));z[a+16>>2]=F+C(C(C(B*d)+C(r*h))+C(A*i))}}function vZ(a,b,c,d,e,f,g,h,i,k,m,n,o,r,s){var t=C(0),u=C(0),x=C(0),y=C(0),A=0,D=C(0),E=C(0),F=0,G=C(0),H=0,I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0),W=C(0),X=0,Y=0;A=xa-32|0;xa=A;v[m>>2]=-1;P=v[a+16>>2];H=B(P,20);if(H){while(1){F=F+128|0;if(H>>>0>F>>>0){continue}break}}a:{b:{if(!P){h=0;H=n;break b}x=z[h>>2];t=z[h+4>>2];u=z[h+8>>2];U=C(C(C(x*z[e+44>>2])+C(t*z[e+56>>2]))+C(u*z[e+68>>2]));V=C(C(C(x*z[e+40>>2])+C(t*z[e+52>>2]))+C(u*z[e- -64>>2]));W=C(C(C(x*z[e+36>>2])+C(t*z[e+48>>2]))+C(u*z[e+60>>2]));X=v[a+24>>2];Y=v[a+28>>2];F=0;h=1;H=n;while(1){I=B(F,20)+X|0;u=z[I+8>>2];y=z[I>>2];D=z[I+4>>2];c:{if(C(C(u*U)+C(C(y*W)+C(V*D)))>2];L=z[e+36>>2];E=z[e+48>>2];t=z[e+64>>2];G=z[e+40>>2];M=z[e+52>>2];x=C(C(C(y*z[e+44>>2])+C(D*z[e+56>>2]))+C(u*z[e+68>>2]));z[A+16>>2]=x;t=C(C(C(y*G)+C(D*M))+C(u*t));z[A+12>>2]=t;u=C(C(C(y*L)+C(D*E))+C(u*J));z[A+8>>2]=u;J=C(K(C(C(x*x)+C(C(u*u)+C(t*t)))));if(J>C(0)){y=C(C(1)/J);x=C(x*y);z[A+16>>2]=x;t=C(t*y);z[A+12>>2]=t;u=C(u*y);z[A+8>>2]=u}L=z[c+8>>2];E=z[c+20>>2];G=z[c+32>>2];y=C(C(C(u*L)+C(t*E))+C(x*G));M=z[c>>2];Q=z[c+12>>2];N=z[c+24>>2];D=C(C(C(u*M)+C(t*Q))+C(x*N));R=u;u=z[c+4>>2];S=t;t=z[c+16>>2];O=z[c+28>>2];x=C(C(C(R*u)+C(S*t))+C(x*O));R=C(C(z[s+8>>2]*y)+C(C(z[s>>2]*D)+C(x*z[s+4>>2])));G=C(C(G*y)+C(C(N*D)+C(O*x)));u=C(C(L*y)+C(C(M*D)+C(u*x)));t=C(C(E*y)+C(C(Q*D)+C(t*x)));t=C(C((l(2,v[a+56>>2]|(p(G),j(2))&-2147483648),q())*G)+C(C((l(2,v[a+48>>2]|(p(u),j(2))&-2147483648),q())*u)+C(t*(l(2,v[a+52>>2]|(p(t),j(2))&-2147483648),q()))));u=z[a+44>>2];S=t>u?t:u;t=C(C(z[d+32>>2]*y)+C(C(z[d+24>>2]*D)+C(x*z[d+28>>2])));u=C((l(2,v[b+56>>2]|(p(t),j(2))&-2147483648),q())*t);t=C(C(z[d+8>>2]*y)+C(C(z[d>>2]*D)+C(x*z[d+4>>2])));E=C((l(2,v[b+48>>2]|(p(t),j(2))&-2147483648),q())*t);t=C(C(z[d+20>>2]*y)+C(C(z[d+12>>2]*D)+C(x*z[d+16>>2])));t=C(u+C(E+C(t*(l(2,v[b+52>>2]|(p(t),j(2))&-2147483648),q()))));u=z[b+44>>2];t=C(S+(t>u?t:u));u=C(R+t);t=C(t-R);if(z[i>>2]<(t>u?u:t)){break c}v[H>>2]=F;T=B(w[I+19|0],12)+Y|0;t=z[T+8>>2];u=z[T>>2];L=z[T+4>>2];E=z[I+12>>2];G=z[I+8>>2];M=z[I>>2];Q=z[I+4>>2];Ba[v[b+64>>2]](b,A+8|0,g,f,A+28|0,A+24|0);N=z[A+28>>2];J=C(C(1)/J);E=C(J*C(-E));if(N>C(E+r)){break a}t=C(J*C(C(G*t)+C(C(M*u)+C(Q*L))));O=z[A+24>>2];if(t>C(O+r)){break a}H=H+4|0;u=C(E-N);t=C(O-t);t=t>u?u:t;if(!(t>2])){break c}z[k+8>>2]=y;z[k+4>>2]=x;z[k>>2]=D;z[i>>2]=t;v[m>>2]=F}F=F+1|0;h=P>>>0>F>>>0;if((F|0)!=(P|0)){continue}break}}v[o>>2]=H-n>>2}xa=A+32|0;return(h^-1)&1}function Rx(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=C(0),l=0,m=C(0),n=0,o=C(0),p=C(0);d=xa+-64|0;xa=d;a:{if(w[a+488|0]){a9(v[37696],8,12859,420,76794,0);break a}g=a+112|0;k=z[b>>2];m=z[b+4>>2];z[d+56>>2]=-z[b+8>>2];z[d+52>>2]=-m;z[d+48>>2]=-k;h=v[a+448>>2];e=v[c+52>>2];if(t[v[a+476>>2]]&1){i=e+4|0;n=h<<5;j=v[e+4>>2];b=v[e+8>>2];l=v[(j+(b<<2)|0)-4>>2];if((n|0)<=(l-v[e+16>>2]|0)){f=l-n|0;v[d>>2]=f;b:{if(b>>>0>=(v[e+12>>2]&2147483647)>>>0){Us(i,d);break b}v[j+(b<<2)>>2]=f;v[e+8>>2]=b+1}f=v[d>>2]}if(h){j=v[a+444>>2];b=0;while(1){a=b<<5;k=z[v[(a+j|0)+16>>2]+124>>2];m=z[d+48>>2];o=z[d+52>>2];p=z[d+56>>2];a=a+f|0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;k=C(C(1)/k);z[a+8>>2]=p*k;z[a+4>>2]=k*o;z[a>>2]=m*k;b=b+1|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=0;v[d+12>>2]=0;v[d+40>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d>>2]=0;v[d+4>>2]=0;v[d+12>>2]=f;v[d+32>>2]=v[c+24>>2];Ix(g,d);a=v[e+16>>2];if(!(a>>>0<=f>>>0&a+v[e+20>>2]>>>0>f>>>0)){if(!f){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,f);break a}l=v[e+4>>2];c=0;j=v[e+8>>2];g=j;while(1){h=c;c=c+1|0;b=g;g=b-1|0;a=l+(g<<2)|0;if(y[a>>2]>>0){continue}break}c:{if(b>>>0>=j>>>0){break c}c=h&3;if(c){f=0;while(1){v[a>>2]=v[v[i>>2]+(b<<2)>>2];b=b+1|0;a=a+4|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}if(h-1>>>0<3){break c}while(1){c=b<<2;v[a>>2]=v[c+v[i>>2]>>2];v[a+4>>2]=v[(c+v[i>>2]|0)+4>>2];v[a+8>>2]=v[(c+v[i>>2]|0)+8>>2];v[a+12>>2]=v[(c+v[i>>2]|0)+12>>2];a=a+16|0;b=b+4|0;if((j|0)!=(b|0)){continue}break}}v[e+8>>2]=j-1;break a}v[d+40>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d>>2]=0;v[d+4>>2]=0;h=Bx(e,h,d);v[d+24>>2]=0;v[d+28>>2]=0;b=v[c+24>>2];v[d+16>>2]=0;v[d+32>>2]=b;vx(g,d);I9(v[d+8>>2],0,v[a+448>>2]<<5);rx(g,d+48|0,d);Hx(g,d);Jx(g,d);Lx(g,d);Mx(g,d);a=v[e+16>>2];if(!(a>>>0<=h>>>0&h>>>0>2]>>>0)){if(!h){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,h);break a}j=v[e+4>>2];i=v[e+8>>2];c=i;while(1){g=f;f=f+1|0;b=c;c=b-1|0;a=j+(c<<2)|0;if(h>>>0>y[a>>2]){continue}break}d:{if(b>>>0>=i>>>0){break d}c=g&3;if(c){f=0;while(1){v[a>>2]=v[v[e+4>>2]+(b<<2)>>2];b=b+1|0;a=a+4|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}if(g-1>>>0<3){break d}while(1){c=b<<2;v[a>>2]=v[c+v[e+4>>2]>>2];v[a+4>>2]=v[(c+v[e+4>>2]|0)+4>>2];v[a+8>>2]=v[(c+v[e+4>>2]|0)+8>>2];v[a+12>>2]=v[(c+v[e+4>>2]|0)+12>>2];a=a+16|0;b=b+4|0;if((i|0)!=(b|0)){continue}break}}v[e+8>>2]=i-1}xa=d- -64|0}function CL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,w=0;e=v[a+88>>2];a:{if(y[e>>2]<=b>>>0){a9(v[37696],4,13406,2139,67056,0);a=0;break a}q=v[e+12>>2];a=q+B(b,40)|0;k=v[a+28>>2];b:{if(!k){a9(v[37696],4,13406,2149,67056,0);break b}v[a+4>>2]=2134900735;v[a+8>>2]=2134900735;v[a+20>>2]=12582912;v[a+24>>2]=12582912;v[a+12>>2]=2134900735;v[a+16>>2]=12582912;r=v[k+68>>2];if(r){s=v[k+76>>2];while(1){f=v[((o<<3)+s|0)+4>>2];if((f|0)!=-1){d=0;p=0;l=xa-1040|0;xa=l;j=v[e+12>>2];n=f>>>2|0;g=v[e+24>>2]+B(n,12)|0;h=g+8|0;c:{d:{i=x[g+4>>1];c=(i|0)==1;if(!c){if(!i){break d}h=v[(e+B(i,12)|0)+92>>2]+(v[g+8>>2]<<2)|0}t=i&1;e:{if(c){c=0;break e}w=i&65534;c=0;while(1){m=(c<<2)+h|0;if(v[(j+B(x[m+2>>1],40)|0)+28>>2]!=(k|0)){v[(d<<2)+l>>2]=x[m>>1]|x[m+2>>1]<<16;d=d+1|0}m=((c|1)<<2)+h|0;if(v[(j+B(x[m+2>>1],40)|0)+28>>2]!=(k|0)){v[(d<<2)+l>>2]=x[m>>1]|x[m+2>>1]<<16;d=d+1|0}c=c+2|0;p=p+2|0;if((w|0)!=(p|0)){continue}break}}f:{if(!t){break f}c=(c<<2)+h|0;if(v[(j+B(x[c+2>>1],40)|0)+28>>2]==(k|0)){break f}v[(d<<2)+l>>2]=x[c>>1]|x[c+2>>1]<<16;d=d+1|0}if(i>>>0>=2){c=v[g+8>>2];h=(e+(i<<2)|0)+3176|0;v[v[(e+B(i,12)|0)+92>>2]+(c<<2)>>2]=v[h>>2];v[h>>2]=c}g:{switch(d|0){case 1:v[g+8>>2]=v[l>>2];u[g+4>>1]=d;break c;case 0:break d;default:break g}}h=e+B(d,12)|0;i=h+92|0;f=(e+(d<<2)|0)+3176|0;c=v[f>>2];h:{if((c|0)!=-1){v[g+8>>2]=c;c=v[i>>2]+(c<<2)|0;v[f>>2]=v[c>>2];break h}c=v[h+96>>2];v[g+8>>2]=c;f=(d&1073741823)+c|0;j=v[h+100>>2]&2147483647;i:{if(f>>>0<=j>>>0){break i}m=j;j=j?j<<1:2;j=f>>>0>j>>>0?f:j;if(m>>>0>=j>>>0){break i}zw(i,j);c=v[h+96>>2]}i=v[i>>2];v[h+96>>2]=f;c=i+(c<<2)|0}H9(c,l,d<<2);u[g+4>>1]=d;break c}u[g+4>>1]=0;v[g+8>>2]=f;d=v[g>>2];v[l+1036>>2]=d;c=v[e+4208>>2];j:{if(c>>>0>=(v[e+4212>>2]&2147483647)>>>0){on(e+4204|0,l+1036|0);break j}v[v[e+4204>>2]+(c<<2)>>2]=d;v[e+4208>>2]=v[e+4208>>2]+1}i=f>>>7|0;k:{if(i>>>0>2]){h=n&31;c=v[e+4216>>2];break k}d=v[37696];h=n&31;g=(n+128>>>5|0)+((h|0)!=0)|0;c=Ba[v[v[d+12>>2]+8>>2]](d+12|0,g<<2,24422,13406,274)|0;d=0;f=v[e+4220>>2];l:{if(f){H9(c,v[e+4216>>2],f<<2);d=v[e+4220>>2];if((g|0)==(d|0)){break l}}I9((d<<2)+c|0,0,g-d<<2)}d=v[e+4216>>2];if(d){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,d)}v[e+4220>>2]=g;v[e+4216>>2]=c}d=(i<<2)+c|0;v[d>>2]=v[d>>2]|1<>2]+12>>2]](d+12|0,k);v[a+28>>2]=0;v[(B(b,40)+q|0)+36>>2]=v[e+8>>2];v[e+8>>2]=b;uL(v[e>>2],v[e+12>>2])}a=(k|0)!=0}return a|0}function E_(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);F=z[e+8>>2];k=z[c+8>>2];t=C(F-k);j=z[b+8>>2];i=C(j-k);G=z[e>>2];n=z[c>>2];u=C(G-n);q=z[b>>2];o=C(q-n);H=z[e+4>>2];l=z[c+4>>2];w=C(H-l);p=z[b+4>>2];r=C(p-l);m=C(C(t*i)+C(C(u*o)+C(w*r)));a:{b:{B=z[d+8>>2];x=C(B-k);D=z[d>>2];y=C(D-n);E=z[d+4>>2];A=C(E-l);o=C(C(x*i)+C(C(y*o)+C(A*r)));if(!(!(o>2]=0;v[g>>2]=0;i=z[c+8>>2];j=z[b+8>>2];m=z[c>>2];k=z[b>>2];n=z[c+4>>2];l=z[b+4>>2];b=v[c+12>>2];v[h+8>>2]=v[c+8>>2];v[h+12>>2]=b;b=v[c+4>>2];v[h>>2]=v[c>>2];v[h+4>>2]=b;break b}i=C(j-B);s=C(q-D);I=C(p-E);r=C(C(t*i)+C(C(u*s)+C(w*I)));i=C(C(x*i)+C(C(y*s)+C(A*I)));if(!(!(i>=C(0))|!(i>=r))){v[f>>2]=1065353216;v[g>>2]=0;i=z[d+8>>2];j=z[b+8>>2];m=z[d>>2];k=z[b>>2];n=z[d+4>>2];l=z[b+4>>2];b=v[d+12>>2];v[h+8>>2]=v[d+8>>2];v[h+12>>2]=b;b=v[d+4>>2];v[h>>2]=v[d>>2];v[h+4>>2]=b;break b}j=C(j-F);s=C(q-G);p=C(p-H);q=C(C(x*j)+C(C(y*s)+C(A*p)));j=C(C(t*j)+C(C(u*s)+C(w*p)));if(!(!(j>=C(0))|!(j>=q))){v[f>>2]=0;v[g>>2]=1065353216;i=z[e+8>>2];j=z[b+8>>2];m=z[e>>2];k=z[b>>2];n=z[e+4>>2];l=z[b+4>>2];b=v[e+12>>2];v[h+8>>2]=v[e+8>>2];v[h+12>>2]=b;b=v[e+4>>2];v[h>>2]=v[e>>2];v[h+4>>2]=b;break b}p=C(C(o*r)-C(i*m));if(!(!(i=C(0))))){i=C(o/C(o-i));z[f>>2]=i;v[g>>2]=0;j=z[b+8>>2];m=z[b>>2];o=z[b+4>>2];v[h+12>>2]=0;k=C(C(x*i)+k);z[h+8>>2]=k;l=C(C(A*i)+l);z[h+4>>2]=l;i=C(C(y*i)+n);z[h>>2]=i;break a}s=C(C(i*j)-C(q*r));if(!(!(j<=q)|(!(s>2]=C(1)-i;z[g>>2]=i;j=z[b+8>>2];m=z[b>>2];k=z[b+4>>2];v[h+12>>2]=0;l=C(C(C(F-B)*i)+B);z[h+8>>2]=l;n=C(C(C(H-E)*i)+E);z[h+4>>2]=n;i=C(C(C(G-D)*i)+D);z[h>>2]=i;j=C(j-l);i=C(m-i);l=C(i*i);i=C(k-n);z[a>>2]=C(j*j)+C(l+C(i*i));return}i=C(C(q*m)-C(o*j));if(!(!(j=C(0))))){v[f>>2]=0;i=C(m/C(m-j));z[g>>2]=i;j=z[b+8>>2];m=z[b>>2];o=z[b+4>>2];v[h+12>>2]=0;k=C(C(t*i)+k);z[h+8>>2]=k;l=C(C(w*i)+l);z[h+4>>2]=l;i=C(C(u*i)+n);z[h>>2]=i;break a}j=C(C(1)/C(s+C(i+p)));i=C(i*j);z[f>>2]=i;j=C(p*j);z[g>>2]=j;v[h+12>>2]=0;m=C(C(C(x*i)+C(t*j))+k);z[h+8>>2]=m;k=C(C(C(A*i)+C(w*j))+l);z[h+4>>2]=k;i=C(C(C(y*i)+C(u*j))+n);z[h>>2]=i;j=C(z[b+8>>2]-m);i=C(z[b>>2]-i);l=C(i*i);i=C(z[b+4>>2]-k);z[a>>2]=C(j*j)+C(l+C(i*i));return}i=C(j-i);j=C(i*i);i=C(k-m);k=C(i*i);i=C(l-n);z[a>>2]=j+C(k+C(i*i));return}j=C(j-k);i=C(m-i);k=C(i*i);i=C(o-l);z[a>>2]=C(j*j)+C(k+C(i*i))}function MF(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=xa-16|0;xa=f;c=v[a+60>>2];k=v[a+244>>2];g=v[a+40>>2];e=v[a+152>>2];if(e){j=v[a+148>>2];while(1){d=v[j+(b<<2)>>2];h=(d>>>0)/(c>>>0)|0;d=v[g+(h<<2)>>2]+(d-B(c,h)<<4)|0;u[d+4>>1]=x[d+4>>1]&65471;b=b+1|0;if((e|0)!=(b|0)){continue}break}}e=v[a+164>>2];if(e){j=v[a+160>>2];b=0;while(1){d=v[j+(b<<2)>>2];h=(d>>>0)/(c>>>0)|0;d=v[g+(h<<2)>>2]+(d-B(c,h)<<4)|0;u[d+4>>1]=x[d+4>>1]&65471;b=b+1|0;if((e|0)!=(b|0)){continue}break}}g=0;v[a+164>>2]=0;v[a+152>>2]=0;a:{if(!v[a+328>>2]){v[a+328>>2]=0;v[a+252>>2]=v[a+116>>2];v[a+256>>2]=v[a+128>>2];break a}j=a+240|0;h=a+136|0;while(1){b=v[v[a+324>>2]+(g<<2)>>2];v[f>>2]=b;b=b>>>7|0;i=b<<2;c=v[i+v[a+204>>2]>>2];e=v[a+16>>2]+B(b,24)|0;d=w[e+4|0]&-33;t[e+4|0]=d;b:{if((c|0)!=-1){d=1<>2]+(c>>>3&536870908)|0;if(!(d&v[e>>2])){v[f+8>>2]=c;b=v[a+88>>2];v[e>>2]=d|v[e>>2];c=b+B(c,44)|0;b=v[a+244>>2];v[c+16>>2]=b;c:{if(b>>>0>=(v[a+248>>2]&2147483647)>>>0){on(j,f+8|0);break c}v[v[a+240>>2]+(b<<2)>>2]=v[f+8>>2];v[a+244>>2]=v[a+244>>2]+1}b=v[f>>2]>>>7|0}v[v[a+28>>2]+(b<<2)>>2]=33554431;KF(a,v[f>>2]);break b}t[e+4|0]=d|2;v[i+v[a+28>>2]>>2]=v[a+140>>2];b=v[a+140>>2];d:{if(b>>>0>=(v[a+144>>2]&2147483647)>>>0){YF(h,f);break d}v[v[a+136>>2]+(b<<2)>>2]=v[f>>2];v[a+140>>2]=v[a+140>>2]+1}c=v[e>>2];if((c|0)==-1){break b}while(1){b=v[a+84>>2];e=(c>>>0)/(b>>>0)|0;e=v[v[a+64>>2]+(e<<2)>>2]+(c-B(b,e)<<3)|0;d=c^1;i=v[a+448>>2];l=v[i+20>>2];b=(d>>>0)/(l>>>0)|0;e:{f:{b=v[v[v[i>>2]+(b<<2)>>2]+(d-B(b,l)<<2)>>2];if(b>>>0<=4294967167){b=v[v[a+204>>2]+(b>>>5&134217724)>>2];if((b|0)!=-1){break f}}c=c>>>1|0;b=v[a+60>>2];d=(c>>>0)/(b>>>0)|0;b=v[v[a+40>>2]+(d<<2)>>2]+(c-B(b,d)<<4)|0;if(w[b+4|0]&4|v[b>>2]==1){break e}BF(a,c);u[b+4>>1]=x[b+4>>1]|4;break e}d=1<>2]+(b>>>3&536870908)|0;if(d&v[c>>2]){break e}v[f+12>>2]=b;i=v[a+88>>2];v[c>>2]=d|v[c>>2];c=i+B(b,44)|0;b=v[a+244>>2];v[c+16>>2]=b;if(b>>>0>=(v[a+248>>2]&2147483647)>>>0){on(j,f+12|0);break e}v[v[a+240>>2]+(b<<2)>>2]=v[f+12>>2];v[a+244>>2]=v[a+244>>2]+1}c=v[e>>2];if((c|0)!=-1){continue}break}}g=g+1|0;if(g>>>0>2]){continue}break}v[a+328>>2]=0;v[a+252>>2]=v[a+116>>2];v[a+256>>2]=v[a+128>>2];g=v[a+244>>2];if(k>>>0>=g>>>0){break a}while(1){c=v[v[a+88>>2]+B(v[v[a+240>>2]+(k<<2)>>2],44)>>2];b=c>>>7|0;if((b|0)!=33554431){while(1){KF(a,c);c=v[(v[a+16>>2]+B(b,24)|0)+8>>2];b=c>>>7|0;if((b|0)!=33554431){continue}break}g=v[a+244>>2]}k=k+1|0;if(k>>>0>>0){continue}break}}xa=f+16|0}function Mv(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=xa+-64|0;xa=c;i=w[a+92|0];a:{if(!i){break a}if(w[a+76|0]!=(b|0)){Ba[v[v[a>>2]+24>>2]](a,b,c+60|0,c+56|0,c+52|0);d=v[c+56>>2];t[c|0]=0;Nv(a+100|0,d,c);v[c+24>>2]=0;v[c+28>>2]=0;v[c+20>>2]=1065353216;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=1065353216;v[c+44>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=1065353216;v[c+12>>2]=0;v[c+16>>2]=0;Ov(a+124|0,b,c);v[c+24>>2]=0;v[c+28>>2]=0;v[c+20>>2]=1065353216;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=1065353216;v[c+44>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=1065353216;v[c+12>>2]=0;v[c+16>>2]=0;Ov(a+112|0,b,c);v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=1065353216;v[c>>2]=0;v[c+4>>2]=0;e=a+148|0;if((v[e+8>>2]&2147483647)>>>0>>0){Qv(e,b)}d=v[e+4>>2];if((d|0)<(b|0)){g=v[e>>2];f=g+B(b,28)|0;d=g+B(d,28)|0;while(1){z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];z[d+24>>2]=z[c+24>>2];d=d+28|0;if(f>>>0>d>>>0){continue}break}}v[e+4>>2]=b;v[c+8>>2]=0;v[c+12>>2]=1065353216;v[c>>2]=0;v[c+4>>2]=0;Pv(a+160|0,b,c);v[a+52>>2]=v[a+124>>2];v[a+56>>2]=v[a+112>>2];d=v[c+52>>2];t[c|0]=0;Nv(a+136|0,d,c);v[a+68>>2]=v[a+136>>2];u[a+78>>1]=v[c+52>>2];u[a+74>>1]=v[c+60>>2];u[a+72>>1]=v[c+56>>2];v[a+48>>2]=v[a+160>>2];v[a+44>>2]=v[a+148>>2];v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=0;v[c+4>>2]=0;f=a+172|0;if((v[f+8>>2]&2147483647)>>>0>>0){g=0;b:{if(!b){break b}e=b<<5;if(!e){break b}d=v[37696];g=Ba[v[v[d>>2]+20>>2]](d)|0?48485:63804;g=Ba[v[v[d+12>>2]+8>>2]](d+12|0,e,g,16608,553)|0}e=v[f>>2];d=v[f+4>>2];if((d|0)>0){j=(d<<5)+g|0;d=g;while(1){h=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=h;h=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=h;h=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=h;h=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=h;e=e+32|0;d=d+32|0;if(j>>>0>d>>>0){continue}break}e=v[f>>2]}if(!(!e|v[f+8>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e)}v[f+8>>2]=b;v[f>>2]=g}d=v[f+4>>2];if((d|0)<(b|0)){e=v[f>>2];g=e+(b<<5)|0;d=e+(d<<5)|0;while(1){e=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=e;e=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=e;e=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=e;e=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=e;d=d+32|0;if(g>>>0>d>>>0){continue}break}}v[f+4>>2]=b;v[a+36>>2]=v[a+172>>2];if(!w[a+92|0]){break a}}if(w[a+76|0]!=(b|0)){v[a+28>>2]=a;v[a+40>>2]=v[a+80>>2]}t[a+92|0]=0}xa=c- -64|0;return(i|0)!=0|0}function E3(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=C(0),p=0,q=0,r=0,s=0,u=0,x=0,y=0,A=C(0),B=0,D=0,E=0,F=0,G=0,H=0;p=32;q=xa-16|0;xa=q;t[q+12|0]=0;g=q-128|0;xa=g;v[q+8>>2]=g;j=b-1|0;a:{if((j|0)<=0){break a}while(1){b:{if((j|0)<=(k|0)){break b}while(1){if(j-k>>>0<=4){f=v[c+4>>2];while(1){l=v[c>>2];b=k;k=b+1|0;e=k;d=b;while(1){i=d;h=l<<2;m=h+(f+(v[(e<<2)+a>>2]<<5)|0)|0;d=h+(f+(v[(d<<2)+a>>2]<<5)|0)|0;d=C(z[m>>2]+z[m+16>>2])>2]+z[d+16>>2])?e:i;h=(e|0)<(j|0);e=e+1|0;if(h){continue}break}if((b|0)!=(d|0)){d=(d<<2)+a|0;e=v[d>>2];b=(b<<2)+a|0;v[d>>2]=v[b>>2];v[b>>2]=e}if((j|0)!=(k|0)){continue}break}break b}b=v[c>>2];i=b<<2;l=v[c+4>>2];h=((j+k|0)/2<<2)+a|0;e=v[h>>2];d=i+(l+(e<<5)|0)|0;m=(k<<2)+a|0;f=v[m>>2];i=i+(l+(f<<5)|0)|0;o=C(z[i>>2]+z[i+16>>2]);c:{if(!(o>C(z[d>>2]+z[d+16>>2]))){d=f;break c}v[m>>2]=e;v[h>>2]=f;d=v[m>>2];b=v[c>>2];e=(l+(d<<5)|0)+(b<<2)|0;o=C(z[e>>2]+z[e+16>>2]);e=f}A=o;i=(j<<2)+a|0;f=v[i>>2];r=(l+(f<<5)|0)+(b<<2)|0;o=C(z[r>>2]+z[r+16>>2]);d:{if(!(A>o)){d=f;break d}v[m>>2]=f;v[i>>2]=d;b=v[c>>2];f=(l+(d<<5)|0)+(b<<2)|0;o=C(z[f>>2]+z[f+16>>2]);e=v[h>>2]}b=(l+(e<<5)|0)+(b<<2)|0;if(C(z[b>>2]+z[b+16>>2])>o){v[h>>2]=d;v[i>>2]=e;e=v[h>>2]}d=h;b=j-1|0;h=(b<<2)+a|0;v[d>>2]=v[h>>2];v[h>>2]=e;d=k;while(1){m=v[c>>2]<<2;f=m+(l+(e<<5)|0)|0;o=C(z[f>>2]+z[f+16>>2]);while(1){f=d;d=d+1|0;i=(d<<2)+a|0;r=v[i>>2];s=m+(l+(r<<5)|0)|0;if(o>C(z[s>>2]+z[s+16>>2])){continue}break}while(1){b=b-1|0;s=(b<<2)+a|0;x=v[s>>2];y=m+(l+(x<<5)|0)|0;if(o>2]+z[y+16>>2])){continue}break}if((b|0)>(d|0)){v[i>>2]=x;v[s>>2]=r;e=v[h>>2];continue}break}v[i>>2]=e;v[h>>2]=r;e:{if((d-k|0)<(j-d|0)){if(p-1>>>0<=n>>>0){d=p<<3;if(d){b=v[37696];e=b+12|0;b=(D=e,E=d,F=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804,G=17218,H=155,B=v[v[e>>2]+8>>2],Ba[B](D|0,E|0,F|0,G|0,H|0)|0)}else{b=0}p=p<<1;b=H9(b,g,n<<2);d=u;u=1;if(!(!d|!g)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,g)}g=b}b=(n<<2)+g|0;v[b>>2]=k;v[b+4>>2]=f;k=f+2|0;break e}if(p-1>>>0<=n>>>0){d=p<<3;if(d){b=v[37696];e=b+12|0;b=(H=e,G=d,F=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804,E=17218,D=155,B=v[v[e>>2]+8>>2],Ba[B](H|0,G|0,F|0,E|0,D|0)|0)}else{b=0}p=p<<1;b=H9(b,g,n<<2);d=u;u=1;if(!(!d|!g)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,g)}g=b}b=(n<<2)+g|0;v[b>>2]=f+2;v[b+4>>2]=j;j=f}n=n+2|0;if((j|0)>(k|0)){continue}break}}if(n){b=n-2|0;k=v[(b<<2)+g>>2];j=v[((n<<2)+g|0)-4>>2];n=b;continue}break}if(!u|!g){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,g)}if(w[q+12|0]){u9(v[q+8>>2])}xa=q+16|0} -function mz(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;d=v[a+336>>2];f=v[d>>2];if(f){v[d>>2]=v[f>>2]}if(!f){d=v[37696];f=Ba[v[v[d>>2]+20>>2]](d)|0?26947:63804;f=Ba[v[v[d+12>>2]+8>>2]](d+12|0,12195,f,19395,82)|0;d=f+19&-16;v[d-4>>2]=d-f;f=gB(d,v[a+340>>2])}v[f+12052>>2]=0;d=v[b+144>>2];if(d>>>0>(v[f+12056>>2]&2147483647)>>>0){yw(f+12048|0,d);d=v[b+144>>2]}v[f+12052>>2]=d;v[f+12064>>2]=0;if((v[f+12068>>2]&2147483647)>>>0>>0){yw(f+12060|0,d);d=v[b+144>>2]}v[f+12064>>2]=d;d=v[((v[a+112>>2]<<2)+a|0)+484>>2];e=Ba[v[v[d>>2]+12>>2]](d,b,v[f+12048>>2],v[f+12060>>2])|0;a:{d=(e|0)<=v[b+72>>2];if(d|d){break a}d=3e4;while(1){if((e|0)<=v[b+72>>2]){break a}d=d-1|0;if(d){continue}d=1e4;continue}}e=128;d=v[b+92>>2]+128|0;v[b+92>>2]=d;q=v[b+64>>2];r=v[b+52>>2];n=v[b+16>>2];d=d-128|0;g=v[b+28>>2];if((d|0)<(g|0)){l=v[b+24>>2];while(1){h=g-d|0;i=(h|0)<128?h:128;e=e-i|0;if((h|0)>0){h=(i|0)>1?i:1;o=h&1;if((h|0)!=1){p=h&-2;i=0;while(1){j=l+B(d,52)|0;k=v[(v[v[j>>2]+24>>2]<<2)+149592>>2];if(k){Ba[k|0](j,z[a+52>>2])}j=j+52|0;k=v[(v[v[j>>2]+24>>2]<<2)+149592>>2];if(k){Ba[k|0](j,z[a+52>>2])}d=d+2|0;i=i+2|0;if((p|0)!=(i|0)){continue}break}}m=h+m|0;if(o){h=l+B(d,52)|0;i=v[(v[v[h>>2]+24>>2]<<2)+149592>>2];if(i){Ba[i|0](h,z[a+52>>2])}d=d+1|0}}if(!e){e=128;d=v[b+92>>2]+128|0;v[b+92>>2]=d;d=d-128|0}if((d|0)<(g|0)){continue}break}}h=d-g|0;if((n|0)>(h|0)){o=(v[b+12>>2]+B(v[b+20>>2],112)|0)+112|0;p=v[b+8>>2];k=-128-g|0;while(1){l=0;d=n-h|0;i=(d|0)<(e|0)?d:e;if((i|0)>0){while(1){d=h<<5;j=d+r|0;g=o+B(h,112)|0;nz(j,j+16|0,d+p|0,g,z[a+52>>2]);e=v[(h<<2)+q>>2];d=v[e+36>>2];z[e>>2]=z[d>>2];z[e+4>>2]=z[d+4>>2];z[e+8>>2]=z[d+8>>2];z[e+12>>2]=z[d+12>>2];z[e+16>>2]=z[d+16>>2];z[e+20>>2]=z[d+20>>2];z[e+24>>2]=z[d+24>>2];z[d>>2]=z[g+80>>2];z[d+4>>2]=z[g+84>>2];z[d+8>>2]=z[g+88>>2];z[d+12>>2]=z[g+92>>2];z[d+16>>2]=z[g+96>>2];z[d+20>>2]=z[g+100>>2];z[d+24>>2]=z[g+104>>2];z[d+64>>2]=z[g>>2];z[d+68>>2]=z[g+4>>2];z[d+72>>2]=z[g+8>>2];z[d+80>>2]=z[g+16>>2];z[d+84>>2]=z[g+20>>2];z[d+88>>2]=z[g+24>>2];if(oz(e,z[a+52>>2],w[a+64|0],w[a+66|0],j,v[v[c+100>>2]+(v[v[c+204>>2]+((v[g+72>>2]&33554431)<<2)>>2]<<2)>>2]!=0)==C(0)){v[e+64>>2]=0;v[e+68>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+72>>2]=0;v[e+56>>2]=0;u[e+28>>1]=x[e+28>>1]|16}h=h+1|0;l=l+1|0;if((i|0)!=(l|0)){continue}break}m=i+m|0}e=128;d=v[b+92>>2]+128|0;v[b+92>>2]=d;h=d+k|0;if((n|0)>(h|0)){continue}break}}v[b+96>>2]=v[b+96>>2]+m;a=v[a+336>>2];v[f>>2]=v[a>>2];v[a>>2]=f}function J1(a,b,c,d,e,f,g,h,i,j,k){var l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0),W=C(0),X=C(0);J=z[h+8>>2];m=z[a+8>>2];W=C(J-m);K=z[h+4>>2];l=z[a+4>>2];X=C(K-l);L=z[h>>2];n=z[a>>2];Q=C(L-n);M=z[i>>2];B=z[g+4>>2];w=z[d+4>>2];R=C(C(B-l)*w);r=z[g+8>>2];x=z[d+8>>2];S=C(C(r-m)*x);y=z[e+8>>2];p=z[d>>2];s=z[e>>2];H=z[e+4>>2];N=C(C(x*y)+C(C(p*s)+C(w*H)));T=N>C(0);t=C(z[b+8>>2]-m);u=C(z[b>>2]-n);o=C(z[b+4>>2]-l);O=C(C(t*t)+C(C(u*u)+C(o*o)));D=C(z[c+8>>2]-m);E=C(z[c>>2]-n);F=C(z[c+4>>2]-l);P=C(C(D*D)+C(C(E*E)+C(F*F)));q=C(C(t*D)+C(C(u*E)+C(o*F)));I=C(C(1)/C(C(O*P)-C(q*q)));A=r;G=z[g>>2];U=C(G-n);r=T?C(C(C(C(p*C(-U))-R)-S)/N):C(0);A=C(A+C(y*r));m=C(A-m);G=C(G+C(s*r));n=C(G-n);B=C(B+C(H*r));l=C(B-l);V=C(C(m*t)+C(C(n*u)+C(o*l)));l=C(C(m*D)+C(C(n*E)+C(F*l)));m=C(I*C(C(P*V)-C(q*l)));a:{if(!(m>=C(-1.1920928955078125e-7))|!(m<=C(1.0000001192092896))){break a}l=C(I*C(C(O*l)-C(q*V)));if(!(l>=C(-1.1920928955078125e-7))|!(l<=C(1.0000001192092896))|(!(C(m+l)>2];b=(v[k>>2]<<6)+j|0;v[b>>2]=v[g>>2];v[b+4>>2]=c;c=v[g+12>>2];v[b+8>>2]=v[g+8>>2];v[b+12>>2]=c;b=(v[k>>2]<<6)+j|0;z[b+16>>2]=G;v[b+28>>2]=0;z[b+24>>2]=A;z[b+20>>2]=B;p=z[e+8>>2];c=v[e+4>>2];b=(v[k>>2]<<6)+j|0;v[b+32>>2]=v[e>>2];v[b+36>>2]=c;z[b+44>>2]=-r;z[b+40>>2]=p;b=v[k>>2];v[k>>2]=b+1;v[((b<<6)+j|0)+48>>2]=f;M=z[i>>2];J=z[h+8>>2];K=z[h+4>>2];L=z[h>>2];y=z[e+8>>2];H=z[e+4>>2];s=z[e>>2];x=z[d+8>>2];w=z[d+4>>2];p=z[d>>2]}n=C(X*w);w=C(W*x);m=T?C(C(C(C(p*C(-Q))-n)-w)/N):C(0);x=C(C(y*m)+J);l=C(x-z[a+8>>2]);A=C(l*t);t=C(L+C(s*m));y=C(t-z[a>>2]);s=C(y*u);r=o;u=C(C(H*m)+K);o=C(u-z[a+4>>2]);s=C(A+C(s+C(r*o)));o=C(C(l*D)+C(C(y*E)+C(F*o)));l=C(I*C(C(P*s)-C(q*o)));b:{if(!(l>=C(-1.1920928955078125e-7))|!(l<=C(1.0000001192092896))){break b}q=C(I*C(C(O*o)-C(q*s)));if(!(q>=C(-1.1920928955078125e-7))|!(q<=C(1.0000001192092896))|(!(C(l+q)>2];a=(v[k>>2]<<6)+j|0;v[a>>2]=v[h>>2];v[a+4>>2]=b;b=v[h+12>>2];v[a+8>>2]=v[h+8>>2];v[a+12>>2]=b;a=(v[k>>2]<<6)+j|0;z[a+16>>2]=t;v[a+28>>2]=0;z[a+24>>2]=x;z[a+20>>2]=u;p=z[e+8>>2];b=v[e+4>>2];a=(v[k>>2]<<6)+j|0;v[a+32>>2]=v[e>>2];v[a+36>>2]=b;z[a+44>>2]=-m;z[a+40>>2]=p;a=v[k>>2];v[k>>2]=a+1;v[((a<<6)+j|0)+48>>2]=f}}function zR(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,u=0,x=0,z=0;c=xa-96|0;xa=c;d=v[a+28>>2];j=v[v[d+988>>2]+128>>2];f=v[d+976>>2];b=c;a=b+76|0;if(a){v[a>>2]=v[f+1e3>>2]}a=b+72|0;if(a){v[a>>2]=v[f+996>>2]}a=b+68|0;if(a){v[a>>2]=v[f+1004>>2]}n=v[b+76>>2]<<3;t[b+60|0]=n>>>0>1024;a:{if(n>>>0>=1025){k=t9(n,11777,3472);break a}k=c-(n+15&-16)|0;c=k;xa=c}v[b+56>>2]=k;o=v[b+72>>2]<<3;t[b+52|0]=o>>>0>1024;b:{if(o>>>0>=1025){l=t9(o,11777,3473);break b}l=c-(o+15&-16)|0;c=l;xa=c}v[b+48>>2]=l;p=v[b+68>>2]<<3;t[b+44|0]=p>>>0>1024;c:{if(p>>>0>=1025){m=t9(p,11777,3474);break c}m=c-(p+15&-16)|0;xa=m}v[b+40>>2]=m;a=v[v[d+976>>2]+1024>>2];Ba[v[v[a>>2]+84>>2]](b,a);a=v[d+2360>>2];zK(v[d+976>>2],k,b+76|0,l,b+72|0,m,b+68|0);g=a&8;if(v[b+76>>2]>0){while(1){a=v[((h<<3)+k|0)+4>>2];uJ(v[d+2168>>2],a);SR(a,j,b,(g|0)!=0);if(!(w[a+46|0]&4)){hG(v[d+1e3>>2],v[a+60>>2])}h=h+1|0;if((h|0)>2]){continue}break}}if(v[b+72>>2]>0){e=d+2420|0;c=0;while(1){i=v[((c<<3)+l|0)+4>>2];d:{if(!TR(i,j,b,(g|0)!=0)|w[i+46|0]&4){break d}a=v[v[i+28>>2]+4>>2];f=w[v[a+44>>2]+9|0]-1>>>0<2?a:0;a=v[v[i+32>>2]+4>>2];a=w[v[a+44>>2]+9|0]-1>>>0<2?a:0;v[b+84>>2]=a;v[b+80>>2]=f;v[b+88>>2]=v[f+48>>2];v[b+92>>2]=v[a+48>>2];a=v[d+2424>>2];if(a>>>0>=(v[d+2428>>2]&2147483647)>>>0){zP(e,b+80|0);break d}f=v[d+2420>>2]+(a<<4)|0;a=v[b+84>>2];v[f>>2]=v[b+80>>2];v[f+4>>2]=a;a=v[b+92>>2];v[f+8>>2]=v[b+88>>2];v[f+12>>2]=a;v[d+2424>>2]=v[d+2424>>2]+1}jG(v[d+1e3>>2],v[i+60>>2]);c=c+1|0;if((c|0)>2]){continue}break}}c=0;h=v[b+68>>2];if((h|0)>0){while(1){a=v[((c<<3)+m|0)+4>>2];if(w[a+44|0]&32){RR(a,32,0,0,j,b);h=v[b+68>>2]}c=c+1|0;if((h|0)>(c|0)){continue}break}}BP(d,j);s=v[d+980>>2]+160|0;q=v[d+1160>>2];if(q){h=0;while(1){e=v[d+1156>>2];x=v[e+(h<<2)>>2];a=h+8|0;e:{if(a>>>0>=q>>>0){break e}r=0;f=0;i=0;c=v[e+(a<<2)>>2];a=c;e=a+511|0;i=e>>>0<511?1:i;e=i<<26|e>>>6;g=a>>>6|0;a=(i>>>6|0)-(g>>>0>e>>>0)|0;u=e-g|0;i=a;g=0;z=g;e=u+1|0;a=e?a:a+1|0;j=e&7;if(g|j){while(1){g=e;e=e-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)|(z|0)!=(f|0)){continue}break}}if(!i&u>>>0<7){break e}while(1){c=c+512|0;a=a-(e>>>0<8)|0;e=e-8|0;if(a|e){continue}break}}eH(x,s);h=h+1|0;if((q|0)!=(h|0)){continue}break}}if(v[d+1236>>2]){a=v[d+1204>>2];c=0;while(1){uG(v[v[a+(c<<2)>>2]>>2],s);c=c+1|0;if(c>>>0>2]){continue}break}}if(p>>>0>=1025){u9(m)}if(o>>>0>=1025){u9(l)}if(n>>>0>=1025){u9(k)}xa=b+96|0}function Lx(a,b){var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=0,l=0,m=0,n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0);c=xa-160|0;xa=c;k=v[b+12>>2];p=v[a+332>>2];d=v[a+336>>2];i=v[b+20>>2];Kx(a,i);d=d-1|0;if(d){while(1){b=B(d,112)+i|0;z[c+48>>2]=z[b>>2];z[c+52>>2]=z[b+4>>2];z[c+56>>2]=z[b+8>>2];z[c+60>>2]=z[b+12>>2];z[c+64>>2]=z[b+16>>2];z[c+68>>2]=z[b+20>>2];z[c+72>>2]=z[b+24>>2];z[c+76>>2]=z[b+28>>2];z[c+80>>2]=z[b+32>>2];z[c+84>>2]=z[b+36>>2];z[c+88>>2]=z[b+40>>2];z[c+92>>2]=z[b+44>>2];z[c+96>>2]=z[b+48>>2];z[c+100>>2]=z[b+52>>2];z[c+104>>2]=z[b+56>>2];z[c+108>>2]=z[b+60>>2];z[c+112>>2]=z[b- -64>>2];z[c+116>>2]=z[b+68>>2];z[c+120>>2]=z[b+72>>2];z[c+124>>2]=z[b+76>>2];z[c+128>>2]=z[b+80>>2];z[c+132>>2]=z[b+84>>2];z[c+136>>2]=z[b+88>>2];z[c+140>>2]=z[b+92>>2];z[c+144>>2]=z[b+96>>2];z[c+148>>2]=z[b+100>>2];z[c+152>>2]=z[b+104>>2];v[c+156>>2]=v[b+108>>2];b=v[a+340>>2]+B(d,160)|0;f=z[b+128>>2];g=z[b+124>>2];h=z[b+120>>2];v[c+40>>2]=0;z[c+36>>2]=-h;z[c+32>>2]=g;z[c+28>>2]=h;v[c+24>>2]=0;z[c+12>>2]=f;v[c+8>>2]=0;z[c+20>>2]=-f;z[c+16>>2]=-g;Ow(c+8|0,c+48|0);e=d<<5;l=e+p|0;b=B(v[l+24>>2],112)+i|0;z[b>>2]=z[c+48>>2]+z[b>>2];z[b+4>>2]=z[c+52>>2]+z[b+4>>2];z[b+8>>2]=z[c+56>>2]+z[b+8>>2];z[b+12>>2]=z[c+60>>2]+z[b+12>>2];z[b+16>>2]=z[c+64>>2]+z[b+16>>2];z[b+20>>2]=z[c+68>>2]+z[b+20>>2];z[b+24>>2]=z[c+72>>2]+z[b+24>>2];z[b+28>>2]=z[c+76>>2]+z[b+28>>2];z[b+32>>2]=z[c+80>>2]+z[b+32>>2];z[b+36>>2]=z[c+84>>2]+z[b+36>>2];z[b+40>>2]=z[c+88>>2]+z[b+40>>2];z[b+44>>2]=z[c+92>>2]+z[b+44>>2];z[b+48>>2]=z[c+96>>2]+z[b+48>>2];z[b+52>>2]=z[c+100>>2]+z[b+52>>2];z[b+56>>2]=z[c+104>>2]+z[b+56>>2];z[b+60>>2]=z[c+108>>2]+z[b+60>>2];m=b- -64|0;z[m>>2]=z[c+112>>2]+z[m>>2];z[b+68>>2]=z[c+116>>2]+z[b+68>>2];z[b+72>>2]=z[c+120>>2]+z[b+72>>2];z[b+76>>2]=z[c+124>>2]+z[b+76>>2];z[b+80>>2]=z[c+128>>2]+z[b+80>>2];z[b+84>>2]=z[c+132>>2]+z[b+84>>2];z[b+88>>2]=z[c+136>>2]+z[b+88>>2];z[b+92>>2]=z[c+140>>2]+z[b+92>>2];z[b+96>>2]=z[c+144>>2]+z[b+96>>2];z[b+100>>2]=z[c+148>>2]+z[b+100>>2];z[b+104>>2]=z[c+152>>2]+z[b+104>>2];e=e+k|0;q=z[e+24>>2];r=z[e+20>>2];b=v[a+340>>2]+B(d,160)|0;h=z[b+120>>2];s=z[e+16>>2];n=z[b+124>>2];o=z[b+128>>2];f=z[e+8>>2];g=z[e+4>>2];b=(v[l+24>>2]<<5)+k|0;j=z[e>>2];z[b>>2]=j+z[b>>2];z[b+4>>2]=g+z[b+4>>2];z[b+8>>2]=f+z[b+8>>2];z[b+16>>2]=C(s+C(C(n*f)-C(g*o)))+z[b+16>>2];z[b+20>>2]=C(r+C(C(o*j)-C(f*h)))+z[b+20>>2];z[b+24>>2]=C(q+C(C(h*g)-C(j*n)))+z[b+24>>2];d=d-1|0;if(d){continue}break}}xa=c+160|0}function I5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),x=C(0),y=0,A=C(0),B=C(0),D=C(0),E=0;e=xa-160|0;xa=e;D5(e+128|0,e+96|0,a,b,c);i=z[e+128>>2];f=C(z[e+112>>2]-z[e+144>>2]);l=C(f+f);f=C(z[e+116>>2]-z[e+148>>2]);m=C(f+f);k=z[e+132>>2];j=z[e+136>>2];f=C(z[e+120>>2]-z[e+152>>2]);o=C(f+f);p=C(C(C(C(-i)*l)-C(m*k))-C(j*o));f=z[e+140>>2];A=C(C(f*f)+C(-.5));B=C(C(C(o*A)+C(f*C(C(k*l)-C(i*m))))-C(j*p));z[e+88>>2]=B;D=C(C(C(m*A)+C(f*C(C(i*o)-C(j*l))))-C(k*p));z[e+84>>2]=D;q=z[e+104>>2];s=z[e+100>>2];u=z[e+108>>2];x=z[e+96>>2];z[e+76>>2]=C(j*q)+C(C(k*s)+C(C(f*u)+C(i*x)));z[e+72>>2]=C(x*k)+C(C(C(f*q)-C(u*j))-C(i*s));z[e+68>>2]=C(q*i)+C(C(C(f*s)-C(u*k))-C(j*x));z[e+64>>2]=C(s*j)+C(C(C(f*x)-C(u*i))-C(k*q));l=C(C(C(l*A)+C(f*C(C(j*m)-C(k*o))))-C(i*p));z[e+80>>2]=l;y=v[a+452>>2];t[e+31|0]=0;f=y&1?l:C(0);m=f;i=y&2?D:C(0);o=i;k=y&4?B:C(0);p=k;q=C(C(k*k)+C(C(f*f)+C(i*i)));j=z[a+468>>2];E=q>C(j*j);if(E){m=C(C(1)/C(K(q)));p=C(j*C(k*m));o=C(j*C(i*m));m=C(j*C(f*m))}z[e+56>>2]=p+C(B-k);z[e+52>>2]=o+C(D-i);z[e+48>>2]=C(l-f)+m;g=e+8|0;h=e- -64|0;f=G9(C(z[a+472>>2]*C(.5)));m=C(0);o=C(0);n=xa-16|0;xa=n;r=e+31|0;t[r|0]=0;a:{b:{switch(y>>>3|0){case 0:z[g>>2]=z[h>>2];z[g+4>>2]=z[h+4>>2];z[g+8>>2]=z[h+8>>2];z[g+12>>2]=z[h+12>>2];break a;case 1:z[g>>2]=z[h>>2];z[g+4>>2]=z[h+4>>2];z[g+8>>2]=z[h+8>>2];z[g+12>>2]=z[h+12>>2];break a;case 2:z[g>>2]=z[h>>2];z[g+4>>2]=z[h+4>>2];z[g+8>>2]=z[h+8>>2];z[g+12>>2]=z[h+12>>2];break a;case 3:v[n+8>>2]=1065353216;v[n>>2]=0;v[n+4>>2]=0;B5(g,h,n,f,r);break a;case 4:z[g>>2]=z[h>>2];z[g+4>>2]=z[h+4>>2];z[g+8>>2]=z[h+8>>2];z[g+12>>2]=z[h+12>>2];break a;case 5:v[n+8>>2]=0;v[n>>2]=0;v[n+4>>2]=1065353216;B5(g,h,n,f,r);break a;case 6:v[n+8>>2]=0;v[n>>2]=1065353216;v[n+4>>2]=0;B5(g,h,n,f,r);break a;case 7:j=z[h>>2];i=z[h+12>>2];c:{if(i>=C(0)){l=z[h+4>>2];k=z[h+8>>2];break c}i=C(-i);j=C(-j);l=C(-z[h+4>>2]);k=C(-z[h+8>>2])}h=f>i;t[r|0]=h;d:{if(!h){f=i;break d}i=C(0);p=C(C(k*k)+C(C(j*j)+C(l*l)));if(p>C(0)){i=C(C(1)/C(K(p)));o=C(k*i);m=C(l*i);i=C(j*i)}j=C(K(C(C(1)-C(f*f))));k=C(j*o);l=C(j*m);j=C(j*i)}z[g+12>>2]=f;z[g+8>>2]=k;z[g+4>>2]=l;z[g>>2]=j;break a;default:break b}}v[g+8>>2]=0;v[g+12>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0}xa=n+16|0;g=v[e+12>>2];v[e+32>>2]=v[e+8>>2];v[e+36>>2]=g;g=v[e+20>>2];v[e+40>>2]=v[e+16>>2];v[e+44>>2]=g;if(w[e+31|0]?1:E){J5(b,c,e+128|0,e+96|0,e+32|0,a,d)}xa=e+160|0}function FV(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0);a:{if(f){v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=1065353216;v[c+24>>2]=0;v[c+28>>2]=0;v[c+20>>2]=1065353216;v[c+40>>2]=1065353216;v[c+44>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[d+4>>2]=0;v[d+8>>2]=0;v[d>>2]=1065353216;v[d+12>>2]=0;v[d+16>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+20>>2]=1065353216;v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=1065353216;a=d+44|0;break a}m=z[a+8>>2];w=C(C(1)/m);n=z[a+4>>2];A=C(C(1)/n);g=z[a>>2];B=C(C(1)/g);b:{if(!(g!=g|g!=n|g!=m)){v[c+44>>2]=0;z[c+40>>2]=m;v[c+28>>2]=0;z[c+20>>2]=n;v[c+12>>2]=0;z[c>>2]=g;h=C(n*C(0));z[c+36>>2]=h;g=C(g*C(0));z[c+32>>2]=g;i=C(m*C(0));z[c+24>>2]=i;z[c+16>>2]=g;z[c+8>>2]=i;z[c+4>>2]=h;z[d+40>>2]=w;g=C(A*C(0));z[d+36>>2]=g;h=C(B*C(0));z[d+32>>2]=h;v[d+28>>2]=0;i=C(w*C(0));z[d+24>>2]=i;z[d+20>>2]=A;z[d+16>>2]=h;v[d+12>>2]=0;z[d+8>>2]=i;z[d+4>>2]=g;z[d>>2]=B;break b}l=z[b+8>>2];o=z[b+4>>2];k=z[b+12>>2];h=z[b>>2];v[c+44>>2]=0;v[c+28>>2]=0;v[c+12>>2]=0;j=C(h+h);r=C(C(1)-C(h*j));p=C(o+o);D=C(o*p);h=C(r-D);s=C(m*h);q=C(p*l);x=C(j*k);i=C(q-x);t=C(n*i);E=C(j*l);F=C(p*k);p=C(E+F);u=C(g*p);z[c+40>>2]=C(s*h)+C(C(u*p)+C(i*t));q=C(q+x);x=C(j*o);y=k;k=C(l+l);y=C(y*k);o=C(x-y);j=C(l*k);l=C(r-j);z[c+24>>2]=C(s*q)+C(C(u*o)+C(l*t));k=C(E-F);r=C(s*k);j=C(C(C(1)-D)-j);s=C(x+y);z[c+8>>2]=r+C(C(u*j)+C(s*t));t=C(m*q);u=C(g*o);r=C(n*l);z[c+36>>2]=C(t*h)+C(C(u*p)+C(i*r));m=C(m*k);g=C(g*j);n=C(n*s);z[c+32>>2]=C(m*h)+C(C(g*p)+C(i*n));z[c+20>>2]=C(t*q)+C(C(u*o)+C(l*r));z[c+16>>2]=C(m*q)+C(C(g*o)+C(l*n));z[c+4>>2]=C(t*k)+C(C(u*j)+C(s*r));z[c>>2]=C(m*k)+C(C(g*j)+C(s*n));g=C(w*h);m=C(B*p);n=C(A*i);z[d+40>>2]=C(g*h)+C(C(m*p)+C(i*n));t=C(w*q);u=C(B*o);r=C(A*l);z[d+36>>2]=C(t*h)+C(C(u*p)+C(i*r));w=C(w*k);x=C(w*h);h=C(B*j);y=i;i=C(A*s);z[d+32>>2]=x+C(C(h*p)+C(y*i));v[d+28>>2]=0;z[d+24>>2]=C(g*q)+C(C(m*o)+C(l*n));z[d+20>>2]=C(t*q)+C(C(u*o)+C(l*r));z[d+16>>2]=C(w*q)+C(C(h*o)+C(l*i));v[d+12>>2]=0;z[d+8>>2]=C(g*k)+C(C(m*j)+C(s*n));z[d+4>>2]=C(t*k)+C(C(u*j)+C(s*r));z[d>>2]=C(w*k)+C(C(h*j)+C(s*i))}v[d+44>>2]=0;p=z[c+36>>2];q=z[c+20>>2];o=z[c+32>>2];l=z[c>>2];k=z[c+16>>2];j=z[c+4>>2];g=z[e+8>>2];h=z[e>>2];i=z[e+4>>2];z[e+8>>2]=C(z[c+40>>2]*g)+C(C(z[c+8>>2]*h)+C(i*z[c+24>>2]));z[e+4>>2]=C(p*g)+C(C(j*h)+C(i*q));z[e>>2]=C(o*g)+C(C(l*h)+C(i*k));a=e+12|0}v[a>>2]=0}function qp(a,b){var c=0,d=0,e=0,f=0,g=0;d=v[a+12>>2];e=d+24|0;c=v[a+8>>2]&2147483647;a:{if(e>>>0<=c>>>0){break a}f=c;c=B(e,3);if(f>>>0>=c>>>0){break a}np(a,c)}op(a,e);f=v[b+4>>2];c=v[a>>2]+v[a+12>>2]|0;v[c>>2]=v[b>>2];v[c+4>>2]=f;f=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=f;f=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=f;v[a+12>>2]=e;c=v[b>>2];if(c){e=d+36|0;d=v[a+8>>2]&2147483647;b:{if(e>>>0<=d>>>0){break b}f=d;d=B(e,3);if(f>>>0>=d>>>0){break b}np(a,d)}op(a,e);d=v[a>>2]+v[a+12>>2]|0;z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];v[a+12>>2]=e}c=v[b+4>>2];if(c){e=e+12|0;d=v[a+8>>2]&2147483647;c:{if(e>>>0<=d>>>0){break c}f=d;d=B(e,3);if(f>>>0>=d>>>0){break c}np(a,d)}op(a,e);d=v[a>>2]+v[a+12>>2]|0;z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];v[a+12>>2]=e}c=v[b+16>>2];if(c){e=e+28|0;d=v[a+8>>2]&2147483647;d:{if(e>>>0<=d>>>0){break d}f=d;d=B(e,3);if(f>>>0>=d>>>0){break d}np(a,d)}op(a,e);d=v[a>>2]+v[a+12>>2]|0;z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];z[d+24>>2]=z[c+24>>2];v[a+12>>2]=e}b=v[b+12>>2];e:{if(!b){break e}d=v[b>>2];c=e+4|0;f=v[a+8>>2]&2147483647;f:{if(c>>>0<=f>>>0){break f}g=B(c,3);if(f>>>0>=g>>>0){break f}np(a,g)}op(a,c);v[v[a>>2]+v[a+12>>2]>>2]=d;v[a+12>>2]=c;g:{h:{switch(d|0){case 2:e=e+16|0;c=v[a+8>>2]&2147483647;i:{if(e>>>0<=c>>>0){break i}d=c;c=B(e,3);if(d>>>0>=c>>>0){break i}np(a,c)}op(a,e);d=v[b+4>>2];c=v[a>>2]+v[a+12>>2]|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;v[c+8>>2]=v[b+8>>2];break g;case 0:e=e+12|0;c=v[a+8>>2]&2147483647;j:{if(e>>>0<=c>>>0){break j}d=c;c=B(e,3);if(d>>>0>=c>>>0){break j}np(a,c)}op(a,e);d=v[b+4>>2];c=v[a>>2]+v[a+12>>2]|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;break g;case 4:e=e+44|0;c=v[a+8>>2]&2147483647;k:{if(e>>>0<=c>>>0){break k}d=c;c=B(e,3);if(d>>>0>=c>>>0){break k}np(a,c)}op(a,e);c=v[a>>2]+v[a+12>>2]|0;v[c>>2]=v[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];z[c+28>>2]=z[b+28>>2];v[c+32>>2]=v[b+32>>2];t[c+36|0]=w[b+36|0];d=w[b+37|0]|w[b+38|0]<<8;t[c+37|0]=d;t[c+38|0]=d>>>8;t[c+39|0]=w[b+39|0];break g;case 3:break h;default:break e}}e=e+20|0;c=v[a+8>>2]&2147483647;l:{if(e>>>0<=c>>>0){break l}d=c;c=B(e,3);if(d>>>0>=c>>>0){break l}np(a,c)}op(a,e);c=v[a>>2]+v[a+12>>2]|0;v[c>>2]=v[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2]}v[a+12>>2]=e}}function NV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0);h=z[f+4>>2];k=C(h+h);g=z[f+8>>2];i=C(k*g);l=z[f>>2];j=C(l+l);m=z[f+12>>2];p=C(j*m);r=C(i-p);o=C(j*g);q=C(k*m);n=C(o+q);i=C(i+p);s=C(j*h);t=C(g+g);m=C(t*m);p=C(s-m);o=C(o-q);q=C(s+m);l=C(C(1)-C(l*j));j=C(g*t);g=C(l-j);k=C(h*k);h=C(C(C(1)-k)-j);s=z[d+24>>2];t=z[d+20>>2];x=z[f+24>>2];u=z[f+20>>2];v=z[d+16>>2];j=z[e+4>>2];w=z[f+16>>2];k=C(l-k);a:{if(k>2];s=C(s-x);i=C(s+s);p=C(C(k*k)+C(-.5));t=C(t-u);o=C(t+t);x=C(v-w);q=C(x+x);v=C(C(i*p)-C(k*C(C(r*o)-C(q*m))));u=C(C(l*i)+C(C(r*q)+C(o*m)));w=C(l*u);g=C(C(m*u)+C(C(o*p)-C(k*C(C(l*q)-C(i*r)))));h=C(-j);i=C(C(r*u)+C(C(q*p)-C(k*C(C(m*i)-C(o*l)))));f=1;b:{if(h>i){break b}h=i;f=0;if(!(j>2];o=C(w+v);i=C(-n);c:{d:{if(i>g){break d}if(!(g>n)){break c}i=n}g=i;f=1}u=z[c+4>>2];v=C(-m);w=C(-r);y=C(-l);e:{f:{g:{i=C(-q);if(!(oq;if((c|f)!=1){break g}i=c?q:o}j=C(i+i);h=C(h+h);g=C(g+g);n=C(C(l*j)+C(C(r*h)+C(m*g)));i=C(s-C(C(l*n)+C(C(j*p)+C(k*C(C(r*g)+C(h*v))))));z[a+8>>2]=i;l=C(t-C(C(m*n)+C(C(g*p)+C(k*C(C(l*h)+C(j*w))))));z[a+4>>2]=l;g=C(x-C(C(r*n)+C(C(h*p)+C(k*C(C(m*j)+C(g*y))))));z[a>>2]=g;h=C(u+C(0));j=C(h*h);h=C(C(i*i)+C(C(g*g)+C(l*l)));c=0;if(j>2]=g;z[a>>2]=g*z[a>>2];z[a+4>>2]=g*z[a+4>>2];z[a+8>>2]=g*z[a+8>>2];i=C(h*z[b>>2]);break f}i=C(q-C(D(o)));n=C(n-C(D(g)));j=C(j-C(D(h)));h:{i:{if(nn){z[b>>2]=-n;h=C(0);j=C(0);g=g>C(0)?C(2):C(-2);break h}z[b>>2]=-i;j=o>C(0)?C(1):C(-1);break i}if(i>j){z[b>>2]=-j;h=h>C(0)?C(2):C(-2);j=C(0);g=C(0);break h}z[b>>2]=-i;j=o>C(0)?C(1):C(-1)}h=C(0);g=C(0)}j=C(j+j);n=C(C(l*j)+C(C(r*h)+C(m*g)));z[a+8>>2]=C(l*n)+C(C(j*p)+C(k*C(C(r*g)+C(h*v))));z[a+4>>2]=C(m*n)+C(C(g*p)+C(k*C(C(l*h)+C(j*w))));z[a>>2]=C(r*n)+C(C(h*p)+C(k*C(C(m*j)+C(g*y))));i=z[b>>2]}g=C(i-u);z[b>>2]=g>2]){j=z[d+16>>2];k=z[d+20>>2];m=v[d+28>>2];o=v[d+32>>2];f=z[e+20>>2];l=z[d+4>>2];h=z[d+8>>2];e=B(c,36)+b|0;g=z[d+12>>2];i=z[d>>2];n=C(C(g-i)*C(.5));z[e+20>>2]=n;z[e+8>>2]=C(i+g)*C(.5);g=C(C(k-h)*C(.5));z[e+28>>2]=g;i=C(C(j-l)*C(.5));z[e+24>>2]=i;z[e+16>>2]=C(h+k)*C(.5);z[e+12>>2]=C(l+j)*C(.5);if(f!=C(0)){z[e+20>>2]=f+n;z[e+24>>2]=f+i;z[e+28>>2]=f+g}d=o<<1&30|m-a<<3|1;a=0;break a}f=z[d+16>>2];j=z[d+20>>2];k=z[d+4>>2];l=z[d+8>>2];a=B(c,36)+b|0;h=z[d+12>>2];g=z[d>>2];i=C(C(h-g)*C(.5));z[a+20>>2]=i;z[a+8>>2]=C(g+h)*C(.5);h=C(C(j-l)*C(.5));z[a+28>>2]=h;g=C(C(f-k)*C(.5));z[a+24>>2]=g;z[a+16>>2]=C(l+j)*C(.5);z[a+12>>2]=C(k+f)*C(.5);f=z[e+20>>2];if(f!=C(0)){z[a+20>>2]=f+i;z[a+24>>2]=f+g;z[a+28>>2]=f+h}v[e>>2]=v[e>>2]+1;a=v[e+24>>2];b:{if(a){d=v[a+37892>>2];if((d|0)!=256){break b}}a=v[37696];d=a+12|0;a=(q=d,r=37900,s=Ba[v[v[a>>2]+20>>2]](a)|0?46279:63804,t=12274,u=509,p=v[v[d>>2]+8>>2],Ba[p](q|0,r|0,s|0,t|0,u|0)|0);m=a+37892|0;d=a+4|0;while(1){v[d+8>>2]=0;v[d+12>>2]=0;v[d+32>>2]=-1;v[d+36>>2]=0;v[d+24>>2]=-1082130432;v[d+28>>2]=-1082130432;v[d+16>>2]=0;v[d+20>>2]=-1082130432;v[d+44>>2]=0;v[d+48>>2]=0;v[d+68>>2]=-1;v[d+72>>2]=0;v[d+60>>2]=-1082130432;v[d+64>>2]=-1082130432;v[d+52>>2]=0;v[d+56>>2]=-1082130432;v[d+80>>2]=0;v[d+84>>2]=0;v[d+104>>2]=-1;v[d+108>>2]=0;v[d+96>>2]=-1082130432;v[d+100>>2]=-1082130432;v[d+88>>2]=0;v[d+92>>2]=-1082130432;v[d+116>>2]=0;v[d+120>>2]=0;v[d+140>>2]=-1;v[d+144>>2]=0;v[d+132>>2]=-1082130432;v[d+136>>2]=-1082130432;v[d+124>>2]=0;v[d+128>>2]=-1082130432;v[d+156>>2]=0;v[d+160>>2]=0;v[d+180>>2]=-1;v[d+184>>2]=0;v[d+172>>2]=-1082130432;v[d+176>>2]=-1082130432;v[d+164>>2]=0;v[d+168>>2]=-1082130432;v[d+192>>2]=0;v[d+196>>2]=0;v[d+216>>2]=-1;v[d+220>>2]=0;v[d+208>>2]=-1082130432;v[d+212>>2]=-1082130432;v[d+200>>2]=0;v[d+204>>2]=-1082130432;v[d+228>>2]=0;v[d+232>>2]=0;v[d+252>>2]=-1;v[d+256>>2]=0;v[d+244>>2]=-1082130432;v[d+248>>2]=-1082130432;v[d+236>>2]=0;v[d+240>>2]=-1082130432;v[d+264>>2]=0;v[d+268>>2]=0;v[d+288>>2]=-1;v[d+292>>2]=0;v[d+280>>2]=-1082130432;v[d+284>>2]=-1082130432;v[d+272>>2]=0;v[d+276>>2]=-1082130432;d=d+296|0;if((m|0)!=(d|0)){continue}break}d=0;v[a+37892>>2]=0;v[a+37896>>2]=v[e+24>>2];v[e+24>>2]=a}v[a+37892>>2]=d+1;d=(B(d,148)+a|0)+4|0;a=d}v[(B(c,36)+b|0)+32>>2]=d;return a}function JV(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=0,t=0;f=xa-144|0;xa=f;v[e>>2]=3;g=v[b+12>>2];v[f+136>>2]=v[b+8>>2];v[f+140>>2]=g;g=v[b+4>>2];v[f+128>>2]=v[b>>2];v[f+132>>2]=g;g=v[b+28>>2];v[f+120>>2]=v[b+24>>2];v[f+124>>2]=g;g=v[b+20>>2];v[f+112>>2]=v[b+16>>2];v[f+116>>2]=g;g=v[b+44>>2];v[f+104>>2]=v[b+40>>2];v[f+108>>2]=g;g=v[b+36>>2];v[f+96>>2]=v[b+32>>2];v[f+100>>2]=g;h=z[f+128>>2];n=C(z[f+112>>2]-h);i=z[f+132>>2];k=C(z[f+100>>2]-i);h=C(z[f+96>>2]-h);i=C(z[f+116>>2]-i);l=C(C(n*k)-C(h*i));o=C(l*l);q=i;i=z[f+136>>2];l=C(z[f+104>>2]-i);i=C(z[f+120>>2]-i);k=C(C(q*l)-C(k*i));h=C(C(i*h)-C(l*n));a:{if(C(o+C(C(k*k)+C(h*h)))<=C(1.1920928955078125e-7)){v[e>>2]=2;k=z[b+8>>2];h=C(z[b+24>>2]-k);l=z[b>>2];n=C(z[b+16>>2]-l);o=z[b+4>>2];i=C(z[b+20>>2]-o);r=C(C(h*h)+C(C(n*n)+C(i*i)));if(r<=C(1.1920928955078125e-7)){v[e>>2]=1;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;break a}v[a+12>>2]=0;q=h;h=C(F(C(C(C(C(C(-l)*n)-C(i*o))-C(k*h))/r),C(1)));h=h>C(0)?h:C(0);z[a+8>>2]=k+C(q*h);z[a+4>>2]=o+C(i*h);z[a>>2]=l+C(n*h);break a}v[f+88>>2]=v[24961];g=v[24960];v[f+80>>2]=v[24959];v[f+84>>2]=g;yW(f+48|0,f+128|0,f+112|0,f+96|0,f+80|0,f+92|0,f- -64|0);s=v[f+92>>2];if((s|0)!=3){p=v[f+80>>2];m=v[f+84>>2]<<4;g=m+b|0;j=v[g+4>>2];v[f+48>>2]=v[g>>2];v[f+52>>2]=j;j=v[g+12>>2];v[f+56>>2]=v[g+8>>2];v[f+60>>2]=j;g=c+m|0;j=v[g+12>>2];v[f+40>>2]=v[g+8>>2];v[f+44>>2]=j;j=v[g+4>>2];v[f+32>>2]=v[g>>2];v[f+36>>2]=j;p=p<<4;g=p+d|0;j=v[g+12>>2];v[f+24>>2]=v[g+8>>2];v[f+28>>2]=j;j=v[g+4>>2];v[f+16>>2]=v[g>>2];v[f+20>>2]=j;g=d+m|0;m=v[g+4>>2];v[f>>2]=v[g>>2];v[f+4>>2]=m;m=v[g+8>>2];j=v[g+12>>2];g=b+p|0;t=v[g+4>>2];v[b>>2]=v[g>>2];v[b+4>>2]=t;v[f+8>>2]=m;v[f+12>>2]=j;m=v[g+12>>2];v[b+8>>2]=v[g+8>>2];v[b+12>>2]=m;g=v[f+52>>2];v[b+16>>2]=v[f+48>>2];v[b+20>>2]=g;g=v[f+60>>2];v[b+24>>2]=v[f+56>>2];v[b+28>>2]=g;b=c+p|0;g=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=g;g=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=g;b=v[f+44>>2];v[c+24>>2]=v[f+40>>2];v[c+28>>2]=b;b=v[f+36>>2];v[c+16>>2]=v[f+32>>2];v[c+20>>2]=b;b=v[f+28>>2];v[d+8>>2]=v[f+24>>2];v[d+12>>2]=b;b=v[f+20>>2];v[d>>2]=v[f+16>>2];v[d+4>>2]=b;b=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=b;b=v[f+12>>2];v[d+24>>2]=v[f+8>>2];v[d+28>>2]=b;v[e>>2]=s}b=v[f+68>>2];v[a>>2]=v[f+64>>2];v[a+4>>2]=b;b=v[f+76>>2];v[a+8>>2]=v[f+72>>2];v[a+12>>2]=b}xa=f+144|0}function D$(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);h=xa-160|0;xa=h;p=z[d>>2];j=C(z[b+16>>2]-z[d+16>>2]);i=C(j+j);j=C(z[b+20>>2]-z[d+20>>2]);n=C(j+j);l=z[d+4>>2];o=z[d+8>>2];j=C(z[b+24>>2]-z[d+24>>2]);m=C(j+j);r=C(C(C(C(-p)*i)-C(n*l))-C(o*m));F=C(o*r);j=z[d+12>>2];u=C(C(j*j)+C(-.5));k=C(C(m*u)+C(j*C(C(l*i)-C(p*n))));q=C(l*r);x=C(C(n*u)+C(j*C(C(p*m)-C(o*i))));y=C(p*r);A=C(C(i*u)+C(j*C(C(o*n)-C(l*m))));i=z[b+4>>2];n=z[b+12>>2];m=z[b>>2];B=C(C(l*i)+C(C(j*n)+C(p*m)));r=z[b+8>>2];E=C(o*r);G=C(C(C(j*r)-C(n*o))-C(p*i));s=C(m*l);H=C(C(C(j*i)-C(n*l))-C(o*m));I=C(r*p);n=C(C(i*o)+C(C(C(j*m)-C(n*p))-C(l*r)));o=C(0);j=C(0);p=C(0);a:{b:{switch(v[a>>2]+1|0){case 3:j=z[a+4>>2];o=C(z[a+8>>2]+j);p=j;break a;case 1:o=z[a+4>>2];j=o;p=j;break a;case 4:p=z[a+12>>2];j=z[a+8>>2];o=z[a+4>>2];break a;case 0:case 2:case 5:case 6:case 7:case 8:break b;default:break a}}t[g|0]=0}r=C(k-F);u=C(x-q);F=C(A-y);m=C(E+B);l=C(s+G);i=C(I+H);c:{if(!(n!=C(0)|i!=C(0)|l!=C(0))){z[h+156>>2]=r+p;z[h+152>>2]=u+j;z[h+148>>2]=F+o;z[h+144>>2]=r-p;z[h+140>>2]=u-j;z[h+136>>2]=F-o;q=C(i+i);A=C(l*q);k=C(n+n);B=C(m*k);x=C(A-B);E=C(l*k);G=C(m*q);y=C(E+G);A=C(B+A);s=C(k*i);H=C(l+l);I=C(m*H);m=C(s-I);B=C(E-G);E=C(s+I);k=C(C(1)-C(n*k));i=C(i*q);n=C(k-i);q=k;k=C(l*H);l=C(q-k);i=C(C(C(1)-i)-k);a=1;break c}k=C(n+n);y=C(l*k);q=C(i+i);G=C(m*q);B=C(y-G);x=C(m*k);s=C(l*q);A=C(x+s);H=C(C(1)-C(n*k));q=C(i*q);n=C(H-q);I=C(C(C(D(C(B*o)))+C(D(C(A*j))))+C(D(C(n*p))));z[h+156>>2]=r+I;k=C(k*i);i=C(l+l);m=C(m*i);E=C(k+m);i=C(l*i);l=C(H-i);x=C(s-x);s=C(C(C(D(C(E*o)))+C(D(C(l*j))))+C(D(C(x*p))));z[h+152>>2]=u+s;z[h+144>>2]=r-I;i=C(C(C(1)-q)-i);m=C(k-m);y=C(y+G);k=C(C(C(D(C(i*o)))+C(D(C(m*j))))+C(D(C(y*p))));z[h+148>>2]=F+k;z[h+140>>2]=u-s;z[h+136>>2]=F-k;a=0}b=v[c+4>>2];v[h+128>>2]=c;v[h+124>>2]=b;k=z[c+8>>2];q=z[c+12>>2];z[h+120>>2]=C(1)/z[c+16>>2];z[h+112>>2]=C(1)/q;z[h+116>>2]=C(1)/k;z[h+96>>2]=p;z[h+92>>2]=j;z[h+88>>2]=o;z[h+84>>2]=r;z[h+80>>2]=u;z[h+76>>2]=F;z[h+72>>2]=n;z[h+68>>2]=x;z[h- -64>>2]=y;z[h+60>>2]=A;z[h+56>>2]=l;z[h+52>>2]=m;z[h+48>>2]=B;z[h+44>>2]=E;v[h+24>>2]=0;v[h+20>>2]=f;v[h+12>>2]=e;t[h+32|0]=0;v[h+28>>2]=0;v[h+16>>2]=0;t[h+104|0]=a;v[h+8>>2]=143092;z[h+40>>2]=i;a=h+112|0;v[h+36>>2]=a;l$(a,d,h+136|0,0,h+8|0);t[g|0]=w[h+32|0];xa=h+160|0;return v[h+16>>2]}function XA(a,b,c,d){var e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=0,l=0,m=0,n=0,o=0,p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=0,y=C(0),A=C(0),B=0,D=0,E=0,F=0,G=0,H=0;a:{n=v[a+24>>2];e=x[n+2>>1];if(!e){break a}B=w[n|0]==7?176:128;D=e+n|0;f=v[a+60>>2];k=v[a+92>>2];p=v[a+124>>2];e=v[a+28>>2];g=n;while(1){m=g;g=g+160|0;E=w[m+11|0];F=w[m+10|0];G=w[m+9|0];H=w[m+8|0];u=w[m+1|0];if(u){o=0;while(1){l=k;h=f;y=z[g+60>>2];A=z[g+56>>2];i=z[g+52>>2];j=z[g+48>>2];f=0;b:{if(!e){break b}f=e;if(w[m+4|0]<=o>>>0){break b}z[e>>2]=j;f=e+4|0}e=f;k=0;f=0;c:{if(!h){break c}f=h;if(w[m+5|0]<=o>>>0){break c}z[h>>2]=i;f=h+4|0}d:{if(!l){break d}if(w[m+6|0]<=o>>>0){k=l;break d}z[l>>2]=A;k=l+4|0}e:{if(!p){p=0;break e}if(w[m+7|0]<=o>>>0){break e}z[p>>2]=y;p=p+4|0}g=g+B|0;q=C(q+y);r=C(r+A);s=C(s+i);t=C(t+j);o=o+1|0;if((u|0)!=(o|0)){continue}break}}if(g>>>0>>0){continue}break}k=G&1;f:{if(!(H&1)|x[a+8>>1]!=65535|(x[a+10>>1]!=65535|t==C(0))){break f}f=v[c>>2];i=z[f+28>>2];e=v[d>>2];j=z[e+28>>2];if(!(i>2];h=v[f+72>>2];f=v[n+144>>2];e=v[b+8>>2];v[b+8>>2]=e+1;g=v[b+4>>2]+(e<<5)|0;z[g+8>>2]=i>2]=t;v[g>>2]=f;f=l<<7;e=h<<7;v[g+16>>2]=e>>>0>>0?f:e;v[g+12>>2]=e>>>0>f>>>0?f:e}g=F&1;g:{if(!k|x[a+40>>1]!=65535|(x[a+42>>1]!=65535|s==C(0))){break g}f=v[c+4>>2];i=z[f+28>>2];e=v[d+4>>2];j=z[e+28>>2];if(!(i>2];h=v[e+72>>2];f=v[f+72>>2];e=v[b+8>>2];v[b+8>>2]=e+1;k=v[b+4>>2]+(e<<5)|0;z[k+8>>2]=i>2]=s;v[k>>2]=l;h=h<<7;e=f<<7;v[k+16>>2]=e>>>0>>0?h:e;v[k+12>>2]=e>>>0>h>>>0?h:e}k=E&1;h:{if(!g|x[a+72>>1]!=65535|(x[a+74>>1]!=65535|r==C(0))){break h}f=v[c+8>>2];i=z[f+28>>2];e=v[d+8>>2];j=z[e+28>>2];if(!(i>2];h=v[e+72>>2];f=v[f+72>>2];e=v[b+8>>2];v[b+8>>2]=e+1;g=v[b+4>>2]+(e<<5)|0;z[g+8>>2]=i>2]=r;v[g>>2]=l;h=h<<7;e=f<<7;v[g+16>>2]=e>>>0>>0?h:e;v[g+12>>2]=e>>>0>h>>>0?h:e}if(!k|x[a+104>>1]!=65535|(x[a+106>>1]!=65535|q==C(0))){break a}c=v[c+12>>2];i=z[c+28>>2];a=v[d+12>>2];j=z[a+28>>2];if(!(i>2];d=v[a+72>>2];c=v[c+72>>2];a=v[b+8>>2];v[b+8>>2]=a+1;f=v[b+4>>2]+(a<<5)|0;z[f+8>>2]=i>2]=q;v[f>>2]=e;b=d<<7;a=c<<7;v[f+16>>2]=a>>>0>>0?b:a;v[f+12>>2]=a>>>0>b>>>0?b:a}}function uZ(a,b,c,d,e,f,g,h,i,k,m,n,o){var r=C(0),s=C(0),t=C(0),u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=0,Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=0;x=xa-32|0;xa=x;v[m>>2]=-1;M=v[a+16>>2];a:{if(!M){break a}t=z[h>>2];r=z[h+4>>2];s=z[h+8>>2];S=C(C(C(t*z[e+44>>2])+C(r*z[e+56>>2]))+C(s*z[e+68>>2]));T=C(C(C(t*z[e+40>>2])+C(r*z[e+52>>2]))+C(s*z[e- -64>>2]));U=C(C(C(t*z[e+36>>2])+C(r*z[e+48>>2]))+C(s*z[e+60>>2]));V=v[a+28>>2];W=v[a+24>>2];Q=1;while(1){h=B(I,20)+W|0;s=z[h+8>>2];u=z[h>>2];y=z[h+4>>2];b:{if(C(C(s*S)+C(C(u*U)+C(T*y)))>2];F=z[e+36>>2];A=z[e+48>>2];r=z[e+64>>2];D=z[e+40>>2];G=z[e+52>>2];t=C(C(C(u*z[e+44>>2])+C(y*z[e+56>>2]))+C(s*z[e+68>>2]));z[x+16>>2]=t;r=C(C(C(u*D)+C(y*G))+C(s*r));z[x+12>>2]=r;s=C(C(C(u*F)+C(y*A))+C(s*E));z[x+8>>2]=s;E=C(K(C(C(t*t)+C(C(s*s)+C(r*r)))));if(E>C(0)){u=C(C(1)/E);t=C(t*u);z[x+16>>2]=t;r=C(r*u);z[x+12>>2]=r;s=C(s*u);z[x+8>>2]=s}F=z[c+8>>2];A=z[c+20>>2];D=z[c+32>>2];u=C(C(C(s*F)+C(r*A))+C(t*D));G=z[c>>2];H=z[c+12>>2];J=z[c+24>>2];y=C(C(C(s*G)+C(r*H))+C(t*J));N=s;s=z[c+4>>2];O=r;r=z[c+16>>2];L=z[c+28>>2];t=C(C(C(N*s)+C(O*r))+C(t*L));R=C(C(z[o+8>>2]*u)+C(C(z[o>>2]*y)+C(t*z[o+4>>2])));D=C(C(D*u)+C(C(J*y)+C(L*t)));s=C(C(F*u)+C(C(G*y)+C(s*t)));r=C(C(A*u)+C(C(H*y)+C(r*t)));r=C(C((l(2,v[a+56>>2]|(p(D),j(2))&-2147483648),q())*D)+C(C((l(2,v[a+48>>2]|(p(s),j(2))&-2147483648),q())*s)+C(r*(l(2,v[a+52>>2]|(p(r),j(2))&-2147483648),q()))));s=z[a+44>>2];H=r>s?r:s;r=C(C(z[d+32>>2]*u)+C(C(z[d+24>>2]*y)+C(t*z[d+28>>2])));N=C((l(2,v[b+56>>2]|(p(r),j(2))&-2147483648),q())*r);r=C(C(z[d+8>>2]*u)+C(C(z[d>>2]*y)+C(t*z[d+4>>2])));O=C((l(2,v[b+48>>2]|(p(r),j(2))&-2147483648),q())*r);r=C(C(z[d+20>>2]*u)+C(C(z[d+12>>2]*y)+C(t*z[d+16>>2])));r=C(N+C(O+C(r*(l(2,v[b+52>>2]|(p(r),j(2))&-2147483648),q()))));s=z[b+44>>2];r=C(H+(r>s?r:s));s=C(R+r);r=C(r-R);if(z[i>>2]<(r>s?s:r)){break b}P=B(w[h+19|0],12)+V|0;r=z[P+8>>2];s=z[P>>2];F=z[P+4>>2];A=z[h+12>>2];D=z[h+8>>2];G=z[h>>2];H=z[h+4>>2];Ba[v[b+64>>2]](b,x+8|0,g,f,x+28|0,x+24|0);J=z[x+28>>2];E=C(C(1)/E);A=C(E*C(-A));if(J>C(A+n)){break a}r=C(E*C(C(D*r)+C(C(G*s)+C(H*F))));L=z[x+24>>2];if(r>C(L+n)){break a}s=C(A-J);r=C(L-r);r=r>s?s:r;if(!(r>2])){break b}z[k+8>>2]=u;z[k+4>>2]=t;z[k>>2]=y;z[i>>2]=r;v[m>>2]=I}I=I+1|0;Q=M>>>0>I>>>0;if((I|0)!=(M|0)){continue}break}}xa=x+32|0;return(Q^-1)&1}function aA(a,b,c,d,e,f){var g=0,h=0,i=C(0),j=C(0),k=0,l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=0,J=C(0),K=0,L=0;o=v[a+7688>>2];g=v[a+7684>>2];if(g>>>0>e>>>0){while(1){k=B(e,44)+a|0;m=(x[k>>1]<<6)+b|0;E=z[m+8>>2];F=z[m+4>>2];G=z[m>>2];a:{b:{c:{d:{e:{m=f;if(m>>>0>=o>>>0){break e}while(1){h=B(m,12)+a|0;f:{if(C(C(E*z[h+6152>>2])+C(C(G*z[h+6144>>2])+C(F*z[h+6148>>2])))>2]!=z[k+16>>2]|z[h+2824>>2]!=z[k+8>>2]){break f}if(z[h+2828>>2]==z[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|H;H=1;if(h&1){break a}h=w[k+4|0];J=z[k+16>>2];K=v[k+12>>2];L=v[k+8>>2];p=z[c+8>>2];q=C(E+E);r=z[c>>2];s=C(G+G);y=C(F+F);A=z[c+4>>2];l=C(C(p*q)+C(C(r*s)+C(y*A)));g=B(o,104)+a|0;i=z[c+12>>2];j=C(C(i*i)+C(-.5));z[g+2840>>2]=C(p*l)+C(C(q*j)-C(i*C(C(r*y)-C(s*A))));z[g+2836>>2]=C(A*l)+C(C(y*j)-C(i*C(C(p*s)-C(q*r))));z[g+2832>>2]=C(r*l)+C(C(s*j)-C(i*C(C(A*q)-C(y*p))));j=z[d+8>>2];n=z[d+4>>2];l=z[d+12>>2];D=z[d>>2];H=0;u[g+2818>>1]=0;I=g+2824|0;v[I>>2]=L;v[I+4>>2]=K;t[g+2816|0]=0;z[g+2820>>2]=J;t[g+2817|0]=h;z[g+2916>>2]=C(p*j)+C(C(A*n)+C(C(i*l)+C(r*D)));z[g+2912>>2]=C(D*A)+C(C(C(i*j)-C(l*p))-C(r*n));z[g+2908>>2]=C(j*r)+C(C(C(i*n)-C(l*A))-C(p*D));z[g+2904>>2]=C(n*p)+C(C(C(i*D)-C(l*r))-C(A*j));i=C(C(j*q)+C(C(D*s)+C(y*n)));p=C(C(l*l)+C(-.5));z[g+2852>>2]=C(j*i)+C(C(q*p)-C(l*C(C(D*y)-C(s*n))));z[g+2848>>2]=C(n*i)+C(C(y*p)-C(l*C(C(j*s)-C(q*D))));z[g+2844>>2]=C(D*i)+C(C(s*p)-C(l*C(C(n*q)-C(y*j))));g=B(o,12)+a|0;z[g+6152>>2]=E;z[g+6148>>2]=F;z[g+6144>>2]=G;h=(o<<2)+a|0;v[h+7296>>2]=w[k+5|0];g=B(o,24)+a|0;z[g+6528>>2]=z[k+20>>2];z[g+6532>>2]=z[k+24>>2];z[g+6536>>2]=z[k+28>>2];z[g+6540>>2]=z[k+32>>2];z[g+6544>>2]=z[k+36>>2];z[g+6548>>2]=z[k+40>>2];v[h+7556>>2]=-1;o=o+1|0;g=65535;break b}l=z[k+20>>2];i=z[k+24>>2];g=B(m,24)+a|0;h=g+6536|0;j=z[h>>2];n=z[k+28>>2];z[h>>2]=j>2];z[h>>2]=i>j?j:i;h=g+6528|0;i=z[h>>2];z[h>>2]=i>2];i=z[k+36>>2];h=g+6548|0;j=z[h>>2];n=z[k+40>>2];z[h>>2]=j>n?j:n;h=g+6544|0;j=z[h>>2];z[h>>2]=i>2];z[g>>2]=i>l?i:l;g=(m<<2)+a|0;h=g+7296|0;v[h>>2]=v[h>>2]+w[k+5|0];g=v[g+7424>>2]}u[k+2>>1]=g;v[((m<<2)+a|0)+7424>>2]=e;g=v[a+7684>>2]}e=e+1|0;if(g>>>0>e>>>0){continue}break}}v[a+7688>>2]=o;return H}function BU(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=v[a+36>>2];a:{if(h>>>0>=j>>>0){break a}d=v[a+40>>2];c=x[d+(h<<1)>>1];if((c|0)==65535|c>>>0>=j>>>0){break a}f=v[a+48>>2];if(x[f+(h<<1)>>1]!=(b>>>16|0)){break a}g=v[a+28>>2];m=g+(c<<2)|0;k=v[m>>2];if(!k){break a}e=k>>>16|0;b:{c:{switch((k&65535)-3|0){case 1:l=v[a+8>>2];if(l>>>0<=e>>>0){break a}i=v[a+32>>2];if(i){f=i-1|0;v[a+32>>2]=f;v[m>>2]=v[g+(f<<2)>>2];d=v[a+40>>2];g=v[a+44>>2];f=g+(f<<1)|0;u[d+(x[f>>1]<<1)>>1]=c;u[g+(c<<1)>>1]=x[f>>1];u[f>>1]=b;c=h<<1;u[c+d>>1]=65535;v[a+52>>2]=v[a+52>>2]+1;f=v[a+48>>2];c=c+f|0;u[c>>1]=x[c>>1]+1}c=l-1|0;d:{if((c|0)==(e|0)){break d}g=v[v[a+4>>2]+B(c,72)>>2];h=g&65535;if(h>>>0>=j>>>0){break d}d=x[(h<<1)+d>>1];if((d|0)==65535|d>>>0>=j>>>0|x[(h<<1)+f>>1]!=(g>>>16|0)){break d}v[v[a+28>>2]+(d<<2)>>2]=k}v[a+8>>2]=c;d=B(e,72);e=v[a+4>>2];d=d+e|0;c=e+B(c,72)|0;v[d>>2]=v[c>>2];e=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=e;e=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=e;e=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=e;e=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=e;z[d+40>>2]=z[c+40>>2];z[d+44>>2]=z[c+44>>2];z[d+48>>2]=z[c+48>>2];z[d+52>>2]=z[c+52>>2];z[d+56>>2]=z[c+56>>2];z[d+60>>2]=z[c+60>>2];z[d- -64>>2]=z[c- -64>>2];break b;case 0:break c;default:break a}}l=v[a+20>>2];if(l>>>0<=e>>>0){break a}i=v[a+32>>2];if(i){f=i-1|0;v[a+32>>2]=f;v[m>>2]=v[g+(f<<2)>>2];d=v[a+40>>2];g=v[a+44>>2];f=g+(f<<1)|0;u[d+(x[f>>1]<<1)>>1]=c;u[g+(c<<1)>>1]=x[f>>1];u[f>>1]=b;c=h<<1;u[c+d>>1]=65535;v[a+52>>2]=v[a+52>>2]+1;f=v[a+48>>2];c=c+f|0;u[c>>1]=x[c>>1]+1}c=l-1|0;e:{if((c|0)==(e|0)){break e}g=v[v[a+16>>2]+(c<<6)>>2];h=g&65535;if(h>>>0>=j>>>0){break e}d=x[(h<<1)+d>>1];if((d|0)==65535|d>>>0>=j>>>0|x[(h<<1)+f>>1]!=(g>>>16|0)){break e}v[v[a+28>>2]+(d<<2)>>2]=k}v[a+20>>2]=c;d=e<<6;e=v[a+16>>2];d=d+e|0;c=e+(c<<6)|0;v[d>>2]=v[c>>2];e=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=e;e=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=e;e=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=e;e=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=e;z[d+40>>2]=z[c+40>>2];z[d+44>>2]=z[c+44>>2];z[d+48>>2]=z[c+48>>2];z[d+52>>2]=z[c+52>>2];e=v[c+60>>2];v[d+56>>2]=v[c+56>>2];v[d+60>>2]=e}d=0;a=v[a+56>>2];if(v[a+72>>2]){while(1){c=v[v[a+68>>2]+(d<<2)>>2];if(v[c+264>>2]==(b|0)){v[c+264>>2]=-1}d=d+1|0;if(d>>>0>2]){continue}break}}i=1}return i|0}function rY(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0),j=0,k=C(0),l=0,m=C(0),n=C(0),o=0,p=0,q=0,r=C(0),s=C(0),t=0,u=0,w=C(0),x=C(0),A=C(0),D=0,E=0,F=0;t=xa-16|0;xa=t;p=v[b+12>>2];j=(v[a+28>>2]<<2)+e|0;f=v[j>>2];e=p+B(f,12)|0;w=z[e+8>>2];x=z[e+4>>2];A=z[e>>2];g=1;l=v[b+8>>2];e=l+B(f,24)|0;i=z[e+12>>2];k=z[e+8>>2];m=z[e+4>>2];n=z[e>>2];r=z[e+20>>2];s=z[e+16>>2];f=v[a+32>>2];if(f>>>0>1){while(1){u=v[j+(g<<2)>>2];e=l+B(u,24)|0;h=z[e+12>>2];i=i>h?i:h;h=z[e+8>>2];k=k>2];m=h>m?m:h;h=z[e>>2];n=h>n?n:h;h=z[e+20>>2];r=h>2];s=h>2]);x=C(x+z[e+4>>2]);A=C(A+z[e>>2]);g=g+1|0;if((f|0)!=(g|0)){continue}break}}z[a+12>>2]=i;z[a+8>>2]=k;z[a+4>>2]=m;z[a>>2]=n;z[a+20>>2]=r;z[a+16>>2]=s;a:{if(f>>>0<=y[b>>2]){break a}l=a+12|0;i=C(C(1)/C(f>>>0));n=C(i*w);r=C(i*x);s=C(i*A);i=C(0);e=0;k=C(0);m=C(0);while(1){h=m;g=p+B(v[j+(e<<2)>>2],12)|0;m=C(z[g+8>>2]-n);m=C(h+C(m*m));h=k;k=C(z[g+4>>2]-r);k=C(h+C(k*k));h=i;i=C(z[g>>2]-s);i=C(h+C(i*i));e=e+1|0;if((f|0)!=(e|0)){continue}break}n=C(C(1)/C(f-1>>>0));i=C(n*i);z[t>>2]=i;k=C(n*k);z[t+4>>2]=k;e=i>2]>2]+z[e+l>>2])*C(.5));p=e+p|0;u=f&1;b:{if((f|0)==1){e=0;g=0;break b}F=f&-2;e=0;g=0;l=0;while(1){o=g<<2;q=o+j|0;E=v[q>>2];if(i>2]){D=q;q=j+(e<<2)|0;v[D>>2]=v[q>>2];v[q>>2]=E;e=e+1|0}o=j+(o|4)|0;q=v[o>>2];if(i>2]){D=o;o=j+(e<<2)|0;v[D>>2]=v[o>>2];v[o>>2]=q;e=e+1|0}g=g+2|0;l=l+2|0;if((F|0)!=(l|0)){continue}break}}c:{if(!u){break c}g=j+(g<<2)|0;l=v[g>>2];if(!(i>2])){break c}o=g;g=j+(e<<2)|0;v[o>>2]=v[g>>2];v[g>>2]=l;e=e+1|0}if(!((e|0)!=(f|0)?e:0)){if(f>>>0<=y[b>>2]){break a}e=f>>>1|0}b=xa-16|0;xa=b;v[d+20>>2]=v[d+20>>2]+2;f=v[d+4>>2]+B(v[d+16>>2],12)|0;j=v[f+4>>2];g=j+2|0;d:{if(g>>>0<=y[f+8>>2]){d=v[f>>2];v[f+4>>2]=g;f=d+B(j,36)|0;break d}f=v[37696];g=Ba[v[v[f>>2]+20>>2]](f)|0?44781:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,36868,g,12194,94)|0;v[f>>2]=1024;f=f+4|0;g=I9(f,0,36864);v[b+4>>2]=2;v[b+8>>2]=1024;v[b>>2]=g;g=v[d+8>>2];e:{if(g>>>0>=(v[d+12>>2]&2147483647)>>>0){qY(d+4|0,b);break e}j=v[b+4>>2];g=v[d+4>>2]+B(g,12)|0;v[g>>2]=v[b>>2];v[g+4>>2]=j;v[g+8>>2]=v[b+8>>2];v[d+8>>2]=v[d+8>>2]+1}v[d+16>>2]=v[d+16>>2]+1}xa=b+16|0;v[a+24>>2]=f;v[c>>2]=v[c>>2]+2;b=v[a+28>>2];v[f+32>>2]=e;v[f+28>>2]=b;v[f- -64>>2]=v[a+28>>2]+e;v[f+68>>2]=v[a+32>>2]-e}xa=t+16|0}function CU(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=0,s=0,t=0;d=b&65535;g=v[a+36>>2];a:{if(d>>>0>=g>>>0){break a}e=x[v[a+40>>2]+(d<<1)>>1];if((e|0)==65535|e>>>0>=g>>>0|x[v[a+48>>2]+(d<<1)>>1]!=(b>>>16|0)){break a}d=v[v[a+28>>2]+(e<<2)>>2];if(!d){break a}e=d&65535;if(v[c>>2]!=(e-1|0)){break a}d=d>>>16|0;b:{c:{switch(e-3|0){case 1:if(d>>>0>=y[a+8>>2]){break a}e=v[c+4>>2];d=v[a+4>>2]+B(d,72)|0;v[d+8>>2]=v[c>>2];v[d+12>>2]=e;e=v[c+28>>2];v[d+32>>2]=v[c+24>>2];v[d+36>>2]=e;e=v[c+20>>2];v[d+24>>2]=v[c+16>>2];v[d+28>>2]=e;e=v[c+12>>2];v[d+16>>2]=v[c+8>>2];v[d+20>>2]=e;z[d+40>>2]=z[c+32>>2];z[d+44>>2]=z[c+36>>2];z[d+48>>2]=z[c+40>>2];z[d+52>>2]=z[c+44>>2];z[d+56>>2]=z[c+48>>2];z[d+60>>2]=z[c+52>>2];z[d- -64>>2]=z[c+56>>2];break b;case 0:break c;default:break a}}if(d>>>0>=y[a+20>>2]){break a}e=v[c+4>>2];d=v[a+16>>2]+(d<<6)|0;v[d+8>>2]=v[c>>2];v[d+12>>2]=e;e=v[c+28>>2];v[d+32>>2]=v[c+24>>2];v[d+36>>2]=e;e=v[c+20>>2];v[d+24>>2]=v[c+16>>2];v[d+28>>2]=e;e=v[c+12>>2];v[d+16>>2]=v[c+8>>2];v[d+20>>2]=e;z[d+40>>2]=z[c+32>>2];z[d+44>>2]=z[c+36>>2];z[d+48>>2]=z[c+40>>2];z[d+52>>2]=z[c+44>>2];e=v[c+52>>2];v[d+56>>2]=v[c+48>>2];v[d+60>>2]=e}e=xa-32|0;xa=e;k=v[a+56>>2];if(v[k+72>>2]){while(1){d=v[v[k+68>>2]+(o<<2)>>2];s=A[d+432>>3];t=A[d+440>>3];z[e+24>>2]=A[d+448>>3];z[e+20>>2]=t;z[e+16>>2]=s;f=z[d+28>>2];j=z[d+32>>2];z[e+8>>2]=-z[d+36>>2];z[e+4>>2]=-j;z[e>>2]=-f;g=e+16|0;f=C(Ba[v[v[d>>2]+8>>2]](d));c=xa-80|0;xa=c;d:{if(v[d+264>>2]!=(b|0)){break d}v[c+40>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;u[c+28>>1]=0;v[c+24>>2]=-1;v[c+16>>2]=0;v[c+20>>2]=0;v[c+64>>2]=0;v[c+56>>2]=2139095039;v[c+60>>2]=0;v[c+12>>2]=-1;g=GU(a,c+16|0,g,e,f,c+12|0);if(!g){break d}r=v[c+12>>2];if((r|0)==v[d+264>>2]){break d}v[d+264>>2]=r;f=z[c+32>>2];z[d+316>>2]=f;i=z[c+36>>2];z[d+320>>2]=i;h=z[c+40>>2];z[d+324>>2]=h;j=z[g+40>>2];h=C(h-C(A[g+24>>3]));h=C(h+h);l=z[g+32>>2];f=C(f-C(A[g+8>>3]));m=C(f+f);n=z[g+36>>2];f=C(i-C(A[g+16>>3]));i=C(f+f);p=C(C(j*h)+C(C(l*m)+C(n*i)));f=z[g+44>>2];q=C(C(f*f)+C(-.5));z[d+312>>2]=C(j*p)+C(C(h*q)-C(f*C(C(l*i)-C(m*n))));z[d+308>>2]=C(n*p)+C(C(i*q)-C(f*C(C(j*m)-C(h*l))));z[d+304>>2]=C(l*p)+C(C(m*q)-C(f*C(C(n*h)-C(i*j))))}xa=c+80|0;o=o+1|0;if(o>>>0>2]){continue}break}}xa=e+32|0;k=1}return k|0}function o$(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0;w=C(z[e+8>>2]-z[b+8>>2]);i=z[c+8>>2];x=C(z[e>>2]-z[b>>2]);k=z[c>>2];y=C(z[e+4>>2]-z[b+4>>2]);h=z[c+4>>2];t=C(C(w*i)+C(C(x*k)+C(y*h)));m=z[a>>2];n=z[d+8>>2];O=z[f+32>>2];o=z[f+24>>2];A=z[f+28>>2];J=C(C(i*O)+C(C(k*o)+C(h*A)));E=C(C(D(J))+C(9.999999974752427e-7));p=z[d>>2];P=z[f+8>>2];q=z[f>>2];B=z[f+4>>2];K=C(C(i*P)+C(C(k*q)+C(h*B)));F=C(C(D(K))+C(9.999999974752427e-7));r=z[d+4>>2];g=i;i=z[f+20>>2];j=k;k=z[f+12>>2];Q=h;h=z[f+16>>2];L=C(C(g*i)+C(C(j*k)+C(Q*h)));G=C(C(D(L))+C(9.999999974752427e-7));a:{if(C(D(t))>C(m+C(C(n*E)+C(C(p*F)+C(r*G))))){break a}g=z[c+20>>2];l=z[c+12>>2];u=z[c+16>>2];v=C(C(w*g)+C(C(x*l)+C(y*u)));s=z[a+4>>2];M=C(C(g*O)+C(C(l*o)+C(u*A)));H=C(C(D(M))+C(9.999999974752427e-7));N=C(C(g*P)+C(C(l*q)+C(u*B)));I=C(C(D(N))+C(9.999999974752427e-7));u=C(C(g*i)+C(C(l*k)+C(u*h)));l=C(C(D(u))+C(9.999999974752427e-7));if(C(D(v))>C(s+C(C(n*H)+C(C(p*I)+C(r*l))))){break a}g=w;w=z[c+32>>2];j=x;x=z[c+24>>2];Q=y;y=z[c+28>>2];g=C(C(g*w)+C(C(j*x)+C(Q*y)));j=z[a+8>>2];A=C(C(w*O)+C(C(x*o)+C(y*A)));o=C(C(D(A))+C(9.999999974752427e-7));B=C(C(w*P)+C(C(x*q)+C(y*B)));q=C(C(D(B))+C(9.999999974752427e-7));k=C(C(w*i)+C(C(x*k)+C(y*h)));i=C(C(D(k))+C(9.999999974752427e-7));if(C(D(g))>C(j+C(C(n*o)+C(C(p*q)+C(r*i))))|C(D(C(C(g*B)+C(C(t*K)+C(v*N)))))>C(C(C(j*q)+C(C(m*F)+C(s*I)))+p)|(C(D(C(C(g*k)+C(C(t*L)+C(v*u)))))>C(C(C(j*i)+C(C(m*G)+C(s*l)))+r)|C(D(C(C(g*A)+C(C(t*J)+C(v*M)))))>C(C(C(j*o)+C(C(m*E)+C(s*H)))+n))){break a}if(C(D(C(C(g*N)-C(B*v))))>C(C(C(s*q)+C(j*I))+C(C(r*E)+C(n*G)))){break a}h=C(-v);if(C(D(C(C(g*u)+C(k*h))))>C(C(C(s*i)+C(j*l))+C(C(p*E)+C(n*F)))|C(D(C(C(g*M)+C(A*h))))>C(C(C(p*G)+C(r*F))+C(C(s*o)+C(j*H)))|C(D(C(C(t*B)-C(K*g))))>C(C(C(r*H)+C(n*l))+C(C(m*q)+C(j*F)))){break a}h=C(-g);if(C(D(C(C(t*k)+C(L*h))))>C(C(C(p*H)+C(I*n))+C(C(m*i)+C(j*G)))|C(D(C(C(t*A)+C(J*h))))>C(C(C(p*l)+C(I*r))+C(C(m*o)+C(j*E)))|C(D(C(C(v*K)-C(N*t))))>C(C(C(r*o)+C(n*i))+C(C(m*I)+C(s*F)))){break a}h=C(-t);if(C(D(C(C(v*L)+C(u*h))))>C(C(C(p*o)+C(q*n))+C(C(m*l)+C(s*G)))|C(D(C(C(v*J)+C(M*h))))>C(C(C(p*i)+C(q*r))+C(C(m*H)+C(s*E)))){break a}R=1}return R}function Bu(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=xa-288|0;xa=e;f=a+4892|0;a:{if(!d){b:{if(!w[a+4785|0]){Cu(a+16|0,b,c);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break b}c:{d:{d=v[b+4>>2];switch((d>>>30|0)-1|0){case 1:break c;case 0:break d;default:break b}}v[b+4>>2]=d&1073741823;v[e+16>>2]=b;Og(f,e+16|0);break b}v[b+4>>2]=d|-1073741824;if(d&268435456){break b}v[e+16>>2]=b;d=qh(f,e+16|0,e+12|0);if(w[e+12|0]){break b}v[d>>2]=v[e+16>>2]}if(!w[a+4785|0]){break a}if(c){v[b+4>>2]=v[b+4>>2]|16}t[e+272|0]=1;v[e+280>>2]=0;v[e+284>>2]=64;v[e+276>>2]=e+16;c=Zo(b,e+12|0);e:{if(!c){break e}d=v[b+4>>2]&-1073741824;f=v[b>>2];a=0;if((c|0)!=1){h=c&-2;while(1){j=a<<2;g=v[j+v[e+12>>2]>>2];i=v[g+36>>2];if((i&251658240)==16777216){v[g+32>>2]=f;v[g+36>>2]=d|i&1073741823}g=v[v[e+12>>2]+(j|4)>>2];j=v[g+36>>2];if((j&251658240)==16777216){v[g+32>>2]=f;v[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=v[v[e+12>>2]+(a<<2)>>2];c=v[a+36>>2];if((c&251658240)!=16777216){break e}v[a+32>>2]=f;v[a+36>>2]=d|c&1073741823}a=v[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[e+276>>2];if((a|0)==(e+16|0)|!a){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a);break a}c=xa-288|0;xa=c;f:{if(!w[a+4785|0]){Du(b);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break f}g:{h:{i:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break h;case 0:break i;default:break g}}v[b+4>>2]=a&1073741823;v[c+16>>2]=b;Og(f,c+16|0);break g}v[b+4>>2]=a|-1073741824;if(a&268435456){break g}v[c+16>>2]=b;a=qh(f,c+16|0,c+12|0);if(w[c+12|0]){break g}v[a>>2]=v[c+16>>2]}t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;d=Zo(b,c+12|0);j:{if(!d){break j}f=v[b+4>>2]&-1073741824;g=v[b>>2];a=0;if((d|0)!=1){j=d&-2;while(1){i=a<<2;h=v[i+v[c+12>>2]>>2];k=v[(h+32|0)+4>>2];if((k&251658240)==16777216){v[h+32>>2]=g;v[h+36>>2]=f|k&1073741823}h=v[v[c+12>>2]+(i|4)>>2];i=v[(h+32|0)+4>>2];if((i&251658240)==16777216){v[h+32>>2]=g;v[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=v[v[c+12>>2]+(a<<2)>>2];d=v[(a+32|0)+4>>2];if((d&251658240)!=16777216){break j}v[a+32>>2]=g;v[a+36>>2]=f|d&1073741823}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break f}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break f}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,a)}xa=c+288|0}v[b+4>>2]=v[b+4>>2]&-33;xa=e+288|0}function wk(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=e|0;var f=0,g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0);h=v[a+12>>2];f=xa-80|0;xa=f;g=z[a+8>>2];if(g!=C(0)){m=YU(h,b),n=e?-65536:-8355712,v[m+4>>2]=n;v[h+32>>2]=0;v[h>>2]=1;v[f+72>>2]=0;v[f+64>>2]=0;v[f+68>>2]=0;i=Q9(c);a=ZU(h,f- -64|0);j=C(i*g);z[f+56>>2]=j;k=C(G9(c)*g);z[f+52>>2]=k;i=C(g*C(0));z[f+48>>2]=i;a=ZU(a,f+48|0);v[f+40>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;l=Q9(d);a=ZU(a,f+32|0);z[f+24>>2]=l*g;m=f,o=C(G9(d)*g),z[m+20>>2]=o;z[f+16>>2]=i;ZU(a,f+16|0);v[h+32>>2]=0;v[h>>2]=2;z[f+8>>2]=j;z[f+4>>2]=k;z[f>>2]=i;ZU(h,f);d=C(C(d-c)/C(20));c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f);c=C(d+c);m=f,o=C(Q9(c)*g),z[m+8>>2]=o;m=f,o=C(G9(c)*g),z[m+4>>2]=o;z[f>>2]=i;ZU(h,f)}xa=f+80|0}function eA(a,b){var c=C(0),d=0,e=0,f=C(0),g=C(0),h=0,i=0,j=0,k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=0;h=v[a+4>>2];o=z[h+24>>2];p=z[h+20>>2];i=v[a>>2];q=z[i+24>>2];r=z[i+20>>2];s=z[h+16>>2];t=z[i+16>>2];u=z[h+8>>2];y=z[h+4>>2];A=z[h>>2];E=z[i+8>>2];F=z[i+4>>2];G=z[i>>2];d=x[a+22>>1];if(d){e=v[a+24>>2];ba=e+(d<<4)|0;while(1){a=e;M=a- -64|0;d=w[a+2|0];U=M+B(d,48)|0;V=U+((d<<2)+12&2032)|0;m=w[a+3|0];ca=m<<6;H=z[a+48>>2];I=z[a+12>>2];W=z[a+8>>2];X=z[a+4>>2];g=C(0);if(d){k=z[a+32>>2];N=C(H*k);S=C(I*k);l=z[a+40>>2];O=C(H*l);n=z[a+36>>2];P=C(H*n);Q=C(I*l);R=C(I*n);j=0;while(1){e=(j<<2)+U|0;c=z[e>>2];f=C(-c);T=e;e=M+B(j,48)|0;J=z[e+44>>2];K=z[e>>2];L=z[e+16>>2];Y=z[e+4>>2];Z=z[e+20>>2];_=z[e+8>>2];$=z[e+24>>2];aa=C(z[e+36>>2]-C(z[e+32>>2]*C(C(C(C(C(k*G)+C(t*K))-C(C(k*A)+C(s*L)))+C(C(C(n*F)+C(r*Y))-C(C(n*y)+C(p*Z))))+C(C(C(l*E)+C(q*_))-C(C(l*u)+C(o*$))))));f=C(c+(fJ?J:f;z[T>>2]=f;g=C(g+f);c=C(f-c);u=C(u-C(O*c));y=C(y-C(P*c));A=C(A-C(N*c));E=C(E+C(Q*c));F=C(F+C(R*c));G=C(G+C(S*c));f=C(W*c);o=C(o-C($*f));p=C(p-C(Z*f));s=C(s-C(L*f));c=C(X*c);q=C(q+C(_*c));r=C(r+C(Y*c));t=C(t+C(K*c));j=j+1|0;if((d|0)!=(j|0)){continue}break}}e=V+ca|0;if(!(!w[b|0]|!m)){S=C(g*z[a+16>>2]);n=C(g*z[a+20>>2]);f=C(-n);M=m>>>0>1?m:1;j=0;m=0;while(1){d=(j<<6)+V|0;O=z[d+12>>2];c=z[d+28>>2];g=z[d>>2];P=z[d+16>>2];Q=z[d+32>>2];k=z[d+4>>2];R=z[d+20>>2];J=z[d+36>>2];l=z[d+8>>2];K=z[d+24>>2];L=z[d+40>>2];c=C(C(O-C(c*C(z[d+44>>2]-z[d+48>>2])))-C(c*C(C(C(C(C(G*g)+C(t*P))-C(C(A*g)+C(s*Q)))+C(C(C(F*k)+C(r*R))-C(C(y*k)+C(p*J))))+C(C(C(E*l)+C(q*K))-C(C(u*l)+C(o*L))))));N=cN?N:n:c;z[T+12>>2]=c;c=C(c-O);u=C(u-C(C(H*l)*c));y=C(y-C(C(H*k)*c));A=C(A-C(C(H*g)*c));E=C(E+C(C(I*l)*c));F=C(F+C(C(I*k)*c));G=C(G+C(C(I*g)*c));g=C(W*c);o=C(o-C(L*g));p=C(p-C(J*g));s=C(s-C(Q*g));c=C(X*c);q=C(q+C(K*c));r=C(r+C(R*c));t=C(t+C(P*c));m=0-(d|(m|0)!=0)|0;j=j+1|0;if((M|0)!=(j|0)){continue}break}v[a+52>>2]=m}if(e>>>0>>0){continue}break}}z[i+8>>2]=E;z[i+4>>2]=F;z[i>>2]=G;z[h+8>>2]=u;z[h+4>>2]=y;z[h>>2]=A;z[i+24>>2]=q;z[i+20>>2]=r;z[i+16>>2]=t;z[h+24>>2]=o;z[h+20>>2]=p;z[h+16>>2]=s}function rU(a,b,c){var d=0,e=0,f=0,g=C(0),h=0,i=C(0),j=0,k=0;e=xa-32|0;xa=e;v[a>>2]=140372;h=gT(a+8|0);f=w[b+92|0];d=a+88|0;v[d>>2]=0;v[d+4>>2]=0;v[d+152>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;v[d+172>>2]=0;t[d+168|0]=f;v[d+160>>2]=0;v[d+164>>2]=0;t[d+156|0]=f;gT(d+240|0);v[d+316>>2]=0;v[d+320>>2]=0;v[d+312>>2]=-1;v[d+324>>2]=0;v[d+332>>2]=0;t[d+328|0]=f;v[d+96>>2]=0;v[d+100>>2]=0;v[d+88>>2]=-1;v[d+92>>2]=-1048577;v[d+80>>2]=-1;v[d+84>>2]=-1048577;v[d+72>>2]=-1;v[d+76>>2]=-1048577;f=d- -64|0;v[f>>2]=-1;v[f+4>>2]=2146435071;v[d+56>>2]=-1;v[d+60>>2]=2146435071;v[d+48>>2]=-1;v[d+52>>2]=2146435071;v[d+104>>2]=0;v[d+108>>2]=0;v[d+112>>2]=0;v[d+116>>2]=0;v[d+180>>2]=0;v[d+184>>2]=0;v[d+176>>2]=-1;v[d+188>>2]=0;v[d+192>>2]=0;v[d+196>>2]=0;v[d+200>>2]=0;v[d+204>>2]=0;v[d+208>>2]=0;v[d+212>>2]=0;v[d+216>>2]=0;v[d+220>>2]=0;v[d+224>>2]=0;v[d+228>>2]=0;v[d+232>>2]=0;v[d+236>>2]=0;v[d+120>>2]=0;v[d+124>>2]=0;v[d+304>>2]=1069547520;v[d+128>>2]=0;v[d+132>>2]=0;v[d+136>>2]=0;v[d+140>>2]=0;v[d+144>>2]=0;v[d+148>>2]=0;v[a+488>>2]=0;v[a+492>>2]=0;v[a+484>>2]=-1;v[a+480>>2]=c;v[a+496>>2]=0;v[a+500>>2]=0;v[a+504>>2]=0;v[a+508>>2]=0;u[a+512>>1]=0;d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?37931:63804;j=a,k=Ba[v[v[d+12>>2]+8>>2]](d+12|0,28,c,16755,113)|0,v[j+516>>2]=k;c=xa-16|0;xa=c;xa=c+16|0;v[a+4>>2]=2147483647;v[a+520>>2]=0;v[h>>2]=v[b+84>>2];g=z[b+44>>2];z[a+40>>2]=g;z[a+44>>2]=z[b+56>>2];z[a+48>>2]=z[b+60>>2];z[a+52>>2]=z[b+48>>2];i=z[b+52>>2];t[a+65|0]=g!=C(0);z[a+56>>2]=i;v[a+72>>2]=v[b+76>>2];v[a+76>>2]=v[b+80>>2];c=v[b+96>>2];v[a+424>>2]=0;v[a+80>>2]=c;c=v[b+12>>2];v[a+432>>2]=v[b+8>>2];v[a+436>>2]=c;c=v[b+20>>2];v[a+440>>2]=v[b+16>>2];v[a+444>>2]=c;c=v[b+28>>2];v[a+448>>2]=v[b+24>>2];v[a+452>>2]=c;z[a+504>>2]=z[b+64>>2];z[a+508>>2]=z[b+68>>2];z[a+392>>2]=z[b+72>>2];c=w[b+92|0];v[a+456>>2]=0;v[a+460>>2]=0;v[a+36>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;t[a+514|0]=c;v[a+464>>2]=0;v[a+468>>2]=0;v[a+472>>2]=0;v[a+476>>2]=0;if(!(!(z[b+32>>2]!=C(0)|z[b+36>>2]!=C(0))&z[b+40>>2]==C(0))){v[e+8>>2]=0;v[e>>2]=1065353216;v[e+4>>2]=0;o9(e+16|0,e,b+32|0);z[a+12>>2]=z[e+16>>2];z[a+16>>2]=z[e+20>>2];z[a+20>>2]=z[e+24>>2];z[a+24>>2]=z[e+28>>2];z[a+28>>2]=z[b+32>>2];z[a+32>>2]=z[b+36>>2];z[a+36>>2]=z[b+40>>2]}xa=e+32|0;return a}function mj(a,b,c){var d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=0;i=xa-32|0;xa=i;j=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(j){j=j-16|0}else{j=0}n=v[a+316>>2];e=n&1024?v[a+56>>2]+144|0:a+112|0;k=z[e+8>>2];l=z[e+4>>2];m=z[e+12>>2];o=z[e>>2];p=z[b+20>>2];E=z[b+16>>2];f=z[b+8>>2];d=z[e+24>>2];q=C(d+d);g=z[b>>2];d=z[e+16>>2];r=C(d+d);d=z[e+20>>2];s=C(d+d);h=z[b+4>>2];t=C(C(f*q)+C(C(g*r)+C(s*h)));d=z[b+12>>2];u=C(C(d*d)+C(-.5));y=C(z[b+24>>2]+C(C(f*t)+C(C(q*u)+C(d*C(C(g*s)-C(r*h))))));z[i+24>>2]=y;p=C(p+C(C(h*t)+C(C(s*u)+C(d*C(C(f*r)-C(q*g))))));z[i+20>>2]=p;A=C(C(C(C(d*m)-C(o*g))-C(h*l))-C(f*k));z[i+12>>2]=A;B=C(C(C(g*l)+C(C(d*k)+C(f*m)))-C(o*h));z[i+8>>2]=B;D=C(C(C(f*o)+C(C(d*l)+C(h*m)))-C(k*g));z[i+4>>2]=D;k=C(C(C(h*k)+C(C(d*o)+C(g*m)))-C(l*f));z[i>>2]=k;d=C(E+C(C(g*t)+C(C(r*u)+C(d*C(C(h*q)-C(s*f))))));z[i+16>>2]=d;z[a+280>>2]=y;z[a+276>>2]=p;z[a+272>>2]=d;z[a+268>>2]=A;z[a+264>>2]=B;z[a+260>>2]=D;z[a+256>>2]=k;b=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:e=v[b>>2];if(w[e+4785|0]){break b}default:AG(a- -64|0,i);break a;case 1:break c}}e=v[b>>2]}v[a+316>>2]=n&-2097153;Xu(e,b);v[a+316>>2]=v[a+316>>2]|1048576}if(!(!j|!c)){b=v[a+320>>2];cj(Ba[v[v[b>>2]+100>>2]](b)|0,0,1)}if(j){a=v[a+320>>2];a=Ba[v[v[a>>2]+100>>2]](a)|0;b=xa-32|0;xa=b;d:{e:{f:{switch((v[a+4>>2]>>>30|0)-2|0){case 0:c=v[a>>2];if(w[c+4785|0]){break e}default:ZE(a+12|0);c=v[a+4>>2];break d;case 1:break f}}c=v[a>>2]}Xu(c,a);c=v[a+4>>2]|2048;v[a+4>>2]=c}g:{h:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break g}break;case 1:break g;default:break h}}n=v[a+88>>2];if(n>>>0<2){break g}F=v[a+84>>2];c=1;while(1){a=v[(c<<2)+F>>2];d=z[a+80>>2];z[b>>2]=d;f=z[a+84>>2];z[b+4>>2]=f;g=z[a+88>>2];z[b+8>>2]=g;h=z[a+92>>2];z[b+12>>2]=h;k=z[a+96>>2];z[b+16>>2]=k;l=z[a+100>>2];z[b+20>>2]=l;m=z[a+104>>2];z[b+24>>2]=m;z[a+280>>2]=m;z[a+276>>2]=l;z[a+272>>2]=k;z[a+268>>2]=h;z[a+264>>2]=g;z[a+260>>2]=f;z[a+256>>2]=d;j=a+48|0;i:{j:{k:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:e=v[j>>2];if(w[e+4785|0]){break j}default:AG(a- -64|0,b);break i;case 1:break k}}e=v[j>>2]}v[a+316>>2]=v[a+316>>2]&-2097153;Xu(e,j);v[a+316>>2]=v[a+316>>2]|1048576}c=c+1|0;if((n|0)!=(c|0)){continue}break}}xa=b+32|0}xa=i+32|0}function Xx(a,b,c,d,e,f,g){var h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=0;h=xa-32|0;xa=h;E=v[b+456>>2];q=v[b+444>>2];j=I9(e,0,v[b+448>>2]<<5);i=z[f+20>>2];l=z[f+24>>2];m=z[f>>2];n=z[f+4>>2];o=z[f+8>>2];k=z[f+16>>2];e=j+(d<<5)|0;v[e+28>>2]=0;v[e+12>>2]=0;z[e+24>>2]=-l;z[e+20>>2]=-i;z[e+16>>2]=-k;z[e+8>>2]=-o;z[e+4>>2]=-n;z[e>>2]=-m;if(d){f=d;while(1){e=f<<5;cx(h,v[b+396>>2]+B(f,96)|0,(v[b+452>>2]+B(f,160)|0)+120|0,v[b+384>>2]+B(f,76)|0,e+j|0);f=e+q|0;e=j+(v[f+24>>2]<<5)|0;z[e>>2]=z[h>>2];z[e+4>>2]=z[h+4>>2];i=z[h+8>>2];v[e+12>>2]=0;z[e+8>>2]=i;z[e+16>>2]=z[h+16>>2];z[e+20>>2]=z[h+20>>2];i=z[h+24>>2];v[e+28>>2]=0;z[e+24>>2]=i;f=v[f+24>>2];if(f){continue}break}}v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;if(!c){F=z[b+560>>2];G=z[b+572>>2];H=z[b+584>>2];I=z[b+564>>2];J=z[b+576>>2];K=z[b+588>>2];L=z[b+568>>2];M=z[b+580>>2];N=z[b+592>>2];O=z[b+620>>2];P=z[b+608>>2];Q=z[b+596>>2];r=z[b+524>>2];s=z[b+528>>2];t=z[b+532>>2];R=z[b+624>>2];S=z[b+612>>2];T=z[b+600>>2];u=z[b+536>>2];w=z[b+540>>2];x=z[b+544>>2];y=z[b+548>>2];o=z[j+16>>2];p=C(-o);A=z[b+552>>2];k=z[j+20>>2];D=z[b+556>>2];i=z[j+24>>2];l=C(-z[j+4>>2]);m=z[j>>2];n=z[j+8>>2];z[a+24>>2]=C(C(C(y*p)-C(A*k))-C(D*i))+C(C(C(z[b+616>>2]*l)-C(m*z[b+604>>2]))-C(n*z[b+628>>2]));z[a+20>>2]=C(C(C(u*p)-C(w*k))-C(x*i))+C(C(C(S*l)-C(m*T))-C(n*R));z[a+16>>2]=C(C(C(r*p)-C(s*k))-C(t*i))+C(C(C(P*l)-C(m*Q))-C(n*O));k=C(-k);z[a+8>>2]=C(C(C(x*l)-C(m*t))-C(n*D))+C(C(C(M*k)-C(o*L))-C(i*N));z[a+4>>2]=C(C(C(w*l)-C(m*s))-C(n*A))+C(C(C(J*k)-C(o*I))-C(i*K));z[a>>2]=C(C(C(u*l)-C(m*r))-C(n*y))+C(C(C(G*k)-C(o*F))-C(i*H))}d=(d<<5)+q|0;e=v[d+8>>2];c=e-1|0;d=v[d+12>>2]-!e|0;if(c|d){while(1){f=v[b+452>>2];e=c;e=(U=Qaa(e),V=Qaa(d)+32|0,W=e,W?U:V);Yw(h,(f+B(e,160)|0)+120|0,v[b+348>>2]+B(e,112)|0,v[b+360>>2]+B(e,36)|0,v[b+384>>2]+B(e,76)|0,j+(e<<5)|0,(v[(B(e,80)+E|0)+72>>2]<<2)+g|0,a);z[a>>2]=z[h>>2];z[a+4>>2]=z[h+4>>2];i=z[h+8>>2];v[a+12>>2]=0;z[a+8>>2]=i;z[a+16>>2]=z[h+16>>2];z[a+20>>2]=z[h+20>>2];i=z[h+24>>2];v[a+28>>2]=0;z[a+24>>2]=i;e=c;c=e-1&e;d=d&d-!e;if(c|d){continue}break}}xa=h+32|0}function vR(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=v[a+20>>2];e=xa-16|0;xa=e;a=v[a+28>>2];if(z[a+1080>>2]!=C(0)){c=a+2876|0;v[c>>2]=v[c>>2]+1;v[a+2872>>2]=v[b+16>>2];v[e+8>>2]=b;c=a+2856|0;d=v[a+2908>>2];a:{if(d>>>0>=(v[a+2912>>2]&2147483647)>>>0){Ks(a+2884|0,e+8|0);break a}v[v[a+2904>>2]+(d<<2)>>2]=b;v[a+2908>>2]=d+1}Ba[v[v[b>>2]+16>>2]](b);t[a+2948|0]=1;Js(c);b:{if(w[a+2360|0]&2){b=a+2980|0;v[b>>2]=c;v[a+2984>>2]=1;Ba[v[v[a+2856>>2]+16>>2]](c);b=v[v[b>>2]+16>>2];v[a+3104>>2]=1;d=a+2976|0;v[d>>2]=b;f=a+3100|0;b=a+2960|0;v[f>>2]=b;Ba[v[v[a+2960>>2]+16>>2]](b);v[a+3096>>2]=v[v[f>>2]+16>>2];d=v[d>>2];Ba[v[v[d>>2]+72>>2]](d,b);break b}b=a+3100|0;v[b>>2]=c;v[a+3104>>2]=1;Ba[v[v[a+2856>>2]+16>>2]](c);v[a+3096>>2]=v[v[b>>2]+16>>2]}b=a+3180|0;f=a+3080|0;v[b>>2]=f;v[a+3184>>2]=1;Ba[v[v[a+3080>>2]+16>>2]](f);b=v[v[b>>2]+16>>2];v[a+3304>>2]=1;v[a+3176>>2]=b;b=a+3300|0;h=a+3160|0;v[b>>2]=h;Ba[v[v[a+3160>>2]+16>>2]](h);b=v[v[b>>2]+16>>2];v[a+3344>>2]=1;v[a+3296>>2]=b;b=a+3340|0;i=a+3280|0;v[b>>2]=i;Ba[v[v[a+3280>>2]+16>>2]](i);v[a+3336>>2]=v[v[b>>2]+16>>2];v[a+3264>>2]=1;b=a+3260|0;j=a+3320|0;v[b>>2]=j;Ba[v[v[a+3320>>2]+16>>2]](j);v[a+3256>>2]=v[v[b>>2]+16>>2];v[a+3224>>2]=1;b=a+3220|0;k=a+3240|0;v[b>>2]=k;Ba[v[v[a+3240>>2]+16>>2]](k);b=v[v[b>>2]+16>>2];v[a+3744>>2]=1;v[a+3216>>2]=b;b=a+3740|0;l=a+3200|0;v[b>>2]=l;Ba[v[v[a+3200>>2]+16>>2]](l);b=v[v[b>>2]+16>>2];v[a+3784>>2]=1;v[a+3736>>2]=b;b=a+3780|0;m=a+3720|0;v[b>>2]=m;Ba[v[v[a+3720>>2]+16>>2]](m);d=a+3776|0;v[d>>2]=v[v[b>>2]+16>>2];b=a+2772|0;v[b>>2]=v[b>>2]+1;v[a+2768>>2]=v[d>>2];d=a+3760|0;v[e+12>>2]=d;b=a+2752|0;g=v[a+2804>>2];c:{if(g>>>0>=(v[a+2808>>2]&2147483647)>>>0){Ks(a+2780|0,e+12|0);break c}v[v[a+2800>>2]+(g<<2)>>2]=d;v[a+2804>>2]=g+1}Ba[v[v[a+3760>>2]+16>>2]](d);t[a+2844|0]=1;Js(b);g=a+2732|0;v[g>>2]=b;v[a+2736>>2]=1;Ba[v[v[a+2752>>2]+16>>2]](b);n=a+2728|0;v[n>>2]=v[v[g>>2]+16>>2];Js(c);c=v[a+3096>>2];Ba[v[v[c>>2]+72>>2]](c,f);c=v[a+3176>>2];Ba[v[v[c>>2]+72>>2]](c,h);c=v[a+3296>>2];Ba[v[v[c>>2]+72>>2]](c,i);c=v[a+3336>>2];Ba[v[v[c>>2]+72>>2]](c,j);c=v[a+3256>>2];Ba[v[v[c>>2]+72>>2]](c,k);c=v[a+3216>>2];Ba[v[v[c>>2]+72>>2]](c,l);c=v[a+3736>>2];Ba[v[v[c>>2]+72>>2]](c,m);c=v[a+3776>>2];Ba[v[v[c>>2]+72>>2]](c,d);Js(b);c=v[n>>2];Ba[v[v[c>>2]+72>>2]](c,a+2712|0)}xa=e+16|0}function uy(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=0,y=C(0),A=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);if(!(!b|!c)){while(1){a:{if(w[b|0]){break a}u=x[b+2>>1];if(!u|w[b+1|0]&2){break a}if(!l){g=z[d>>2];h=C(z[e+16>>2]-z[d+16>>2]);q=C(h+h);h=C(z[e+20>>2]-z[d+20>>2]);r=C(h+h);i=z[d+4>>2];m=z[d+8>>2];h=C(z[e+24>>2]-z[d+24>>2]);s=C(h+h);j=C(C(C(C(-g)*q)-C(r*i))-C(m*s));h=z[d+12>>2];k=C(C(h*h)+C(-.5));E=C(C(C(s*k)+C(h*C(C(i*q)-C(g*r))))-C(m*j));F=C(C(C(r*k)+C(h*C(C(g*s)-C(m*q))))-C(i*j));G=C(C(C(q*k)+C(h*C(C(m*r)-C(i*s))))-C(g*j));j=z[e+8>>2];k=z[e+4>>2];n=z[e+12>>2];o=z[e>>2];q=C(C(m*j)+C(C(i*k)+C(C(h*n)+C(g*o))));r=C(C(o*i)+C(C(C(h*j)-C(n*m))-C(g*k)));s=C(C(j*g)+C(C(C(h*k)-C(n*i))-C(m*o)));h=C(C(k*m)+C(C(C(h*o)-C(n*g))-C(i*j)))}l=1;m=z[b+24>>2];g=z[b+36>>2];i=C(g+g);g=z[b+28>>2];j=C(g+g);g=z[b+32>>2];k=C(g+g);t=C(C(r*i)+C(C(h*j)+C(s*k)));g=C(C(q*q)+C(-.5));n=z[b+16>>2];o=z[b+20>>2];if(!(C(C(m*C(C(r*t)+C(C(i*g)+C(q*C(C(h*k)-C(j*s))))))+C(C(n*C(C(h*t)+C(C(j*g)+C(q*C(C(s*i)-C(k*r))))))+C(o*C(C(s*t)+C(C(k*g)+C(q*C(C(r*j)-C(i*h))))))))>C(.9990000128746033))){break a}y=C(-s);H=C(-h);I=C(-r);p=0;A=1;while(1){l=B(p,12)+b|0;i=z[l+72>>2];i=C(i+i);j=z[l- -64>>2];j=C(j+j);k=z[l+68>>2];k=C(k+k);t=C(C(r*i)+C(C(h*j)+C(s*k)));if(C(D(C(C(C(z[l+48>>2]-C(E+C(C(r*t)+C(C(i*g)+C(q*C(C(h*k)+C(j*y)))))))*m)+C(C(C(z[l+40>>2]-C(G+C(C(h*t)+C(C(j*g)+C(q*C(C(s*i)+C(k*I)))))))*n)+C(o*C(z[l+44>>2]-C(F+C(C(s*t)+C(C(k*g)+C(q*C(C(r*j)+C(i*H))))))))))))>>0>p>>>0;if((p|0)!=(u|0)){continue}}break}l=1;if(A){break a}l=v[a+7688>>2];if((l|0)==32){return 0}p=(l<<2)+a|0;v[p+7556>>2]=-1;i=z[d+8>>2];m=C(m+m);j=z[d>>2];k=C(n+n);n=C(o+o);o=z[d+4>>2];t=C(C(i*m)+C(C(j*k)+C(n*o)));l=B(l,12)+a|0;g=z[d+12>>2];y=C(C(g*g)+C(-.5));z[l+6152>>2]=C(i*t)+C(C(m*y)+C(g*C(C(j*n)-C(k*o))));z[l+6148>>2]=C(o*t)+C(C(n*y)+C(g*C(C(i*k)-C(m*j))));z[l+6144>>2]=C(j*t)+C(C(k*y)+C(g*C(C(o*m)-C(n*i))));v[p+7296>>2]=0;p=v[a+7688>>2];l=B(p,24)+a|0;u=l+6544|0;v[u>>2]=-25165825;v[u+4>>2]=-25165825;u=l+6536|0;v[u>>2]=2122317823;v[u+4>>2]=-25165825;l=l+6528|0;v[l>>2]=2122317823;v[l+4>>2]=2122317823;v[((p<<2)+a|0)+7424>>2]=65535;l=1;p=v[a+7688>>2];v[a+7688>>2]=p+1;H9((B(p,104)+a|0)+2816|0,b,104)}b=b+104|0;c=c-1|0;if(c){continue}break}}return 1}function yn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0;a=xa-32|0;xa=a;g=v[37389];k=z[b+12>>2];l=z[b+8>>2];m=z[b>>2];n=z[b+4>>2];i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(n*n)))))));z[a+12>>2]=k*i;z[a+8>>2]=l*i;z[a+4>>2]=n*i;z[a>>2]=m*i;z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];q=a;h=xa-16|0;xa=h;a=v[g+968>>2];if(!a){j=xa-16|0;xa=j;d=g+680|0;b=v[d+284>>2];if(b){a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?46031:63804;f=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,f,18373,180)|0}else{f=0}v[j+12>>2]=f;a=v[d+268>>2];a:{if(a>>>0>=(v[d+272>>2]&2147483647)>>>0){a=0;b=d+4|0;c=v[b+268>>2];o=c&2147483647?c<<1:1;b:{if(!o){break b}c=o<<2;if(!(w[b+256|0]|c>>>0>256)){t[b+256|0]=1;a=b;break b}if(!c){break b}a=v[37696];e=Ba[v[v[a>>2]+20>>2]](a)|0?46031:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,e,16608,553)|0}e=v[b+264>>2];r=(e<<2)+a|0;if((e|0)>0){p=v[b+260>>2];c=a;while(1){v[c>>2]=v[p>>2];p=p+4|0;c=c+4|0;if(r>>>0>c>>>0){continue}break}}v[r>>2]=v[j+12>>2];c:{if(v[b+268>>2]<0){break c}c=v[b+260>>2];if((c|0)==(b|0)){t[b+256|0]=0;break c}if(!c){break c}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[b+264>>2]}v[b+268>>2]=o;v[b+260>>2]=a;v[b+264>>2]=e+1;break a}v[v[d+264>>2]+(a<<2)>>2]=f;v[d+268>>2]=a+1}a=(B(v[d+276>>2],320)+f|0)-320|0;if(f>>>0<=a>>>0){b=v[d+288>>2];while(1){v[a>>2]=b;b=a;a=a-320|0;if(f>>>0<=a>>>0){continue}break}v[d+288>>2]=b}xa=j+16|0;a=v[g+968>>2]}v[g+968>>2]=v[a>>2];v[g+960>>2]=v[g+960>>2]+1;v[a+4>>2]=196613;v[a+8>>2]=0;v[a>>2]=123728;v[a+16>>2]=0;v[a+12>>2]=0;v[a>>2]=123036;v[a+8>>2]=0;v[a+20>>2]=0;v[a+24>>2]=65536;v[a+28>>2]=0;v[a+32>>2]=65536;v[a+36>>2]=-1;v[a+40>>2]=0;v[a+56>>2]=0;v[a>>2]=122684;v[a+48>>2]=0;v[a+52>>2]=0;zG(a- -64|0,1,q);z[a+256>>2]=z[a+80>>2];b=v[a+88>>2];v[a+260>>2]=v[a+84>>2];v[a+264>>2]=b;b=v[a+96>>2];v[a+268>>2]=v[a+92>>2];v[a+272>>2]=b;b=v[a+104>>2];v[a+276>>2]=v[a+100>>2];v[a+280>>2]=b;b=v[a+148>>2];v[a+284>>2]=v[a+144>>2];v[a+288>>2]=b;z[a+292>>2]=z[a+152>>2];b=v[a+164>>2];v[a+296>>2]=v[a+160>>2];v[a+300>>2]=b;z[a+304>>2]=z[a+168>>2];v[a+52>>2]=v[a+52>>2]&-251658241|50331648;i=z[a+220>>2];v[a+312>>2]=1;v[a+316>>2]=0;z[a+308>>2]=i;v[a>>2]=122256;v[h+8>>2]=a;b=Mm(g+600|0,h+8|0,h+15|0);if(!w[h+15|0]){v[b>>2]=v[h+8>>2]}xa=h+16|0;xa=q+32|0;return a|0}function Uu(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=xa-32|0;xa=h;g=v[a+4>>2];a:{if(!(g&32)){break a}c=g>>>24&15;f=v[((c<<2)+89188|0)+12>>2];b=v[a>>2];d=v[a+8>>2];if(!d){d=Pu(b,c);v[a+8>>2]=d}c=d+84|0;e=v[d+88>>2];if((e|0)!=1){if(!e){break a}c=v[b+4868>>2]+(v[c>>2]<<2)|0}j=a+f|0;b=0;while(1){f=v[(b<<2)+c>>2];if(w[(w[f+4|0]&64?v[f+8>>2]+52|0:f+80|0)|0]&5){t[h+8|0]=0;v[h+16>>2]=128;SJ(j,f+16|0,h+16|0,h+8|0,0);e=v[d+88>>2]}b=b+1|0;if(e>>>0>b>>>0){continue}break}}if(g&8){d=v[a+8>>2];if(!d){d=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=d}b=v[d+28>>2];b:{if(!b){break b}if(y[a+4>>2]<3221225472){c=0;while(1){e=v[v[d+24>>2]+(c<<2)>>2];f=v[e+4>>2];if((f&251658240)==16777216){v[e>>2]=v[a>>2];v[e+4>>2]=f&1073741823|-2147483648}f=v[a+4>>2];g=v[((f>>>22&60)+89188|0)+12>>2]+a|0;if(!(w[(f&1?v[a+8>>2]:g+8|0)|0]&8)){QJ(g,e+16|0);b=e-16|0;v[b>>2]=v[b>>2]+1;b=v[d+28>>2]}c=c+1|0;if(b>>>0>c>>>0){continue}break}break b}f=v[d+24>>2];c=0;if((b|0)!=1){j=b&-2;e=0;while(1){i=c<<2;g=v[i+f>>2];k=v[g+4>>2];if((k&251658240)==16777216){v[g>>2]=v[a>>2];v[g+4>>2]=k&1073741823}g=v[f+(i|4)>>2];i=v[g+4>>2];if((i&251658240)==16777216){v[g>>2]=v[a>>2];v[g+4>>2]=i&1073741823}c=c+2|0;e=e+2|0;if((j|0)!=(e|0)){continue}break}}if(!(b&1)){break b}c=v[f+(c<<2)>>2];b=v[c+4>>2];if((b&251658240)!=16777216){break b}v[c>>2]=v[a>>2];v[c+4>>2]=b&1073741823}v[h+20>>2]=0;c=d+4|0;b=v[c+24>>2];if((b|0)<0){e=v[c+20>>2];b=e+(b<<2)|0;while(1){v[b>>2]=v[h+20>>2];b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[c+24>>2]=0;b=0;f=v[d+28>>2];c:{if(!f){break c}d=f<<2;if(!(w[c+16|0]|d>>>0>16)){t[c+16|0]=1;b=c;break c}if(!d){break c}b=v[37696];e=b+12|0;b=(m=e,n=d,o=Ba[v[v[b>>2]+20>>2]](b)|0?60027:63804,p=16608,q=553,l=v[v[e>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}e=v[c+20>>2];d=v[c+24>>2];if((d|0)>0){g=(d<<2)+b|0;d=b;while(1){v[d>>2]=v[e>>2];e=e+4|0;d=d+4|0;if(g>>>0>d>>>0){continue}break}e=v[c+20>>2]}d:{if(v[c+28>>2]<0){break d}if((c|0)==(e|0)){t[c+16|0]=0;break d}if(!e){break d}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[c+28>>2]=f;v[c+20>>2]=b}c=v[a+4>>2];e:{if(!(c&3)){break e}d=c>>>24&15;e=v[((d<<2)+89188|0)+12>>2];b=v[a+8>>2];if(!b){b=Pu(v[a>>2],d);v[a+8>>2]=b;c=v[a+4>>2]}d=a+e|0;if(c&1){t[h+24|0]=w[b|0];PE(d,h+24|0);c=v[a+4>>2]}if(!(c&2)){break e}QE(d,w[b+1|0])}xa=h+32|0}function p9(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=0,w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=0,V=0,W=0;w=z[b+32>>2];x=z[b+28>>2];y=z[b+20>>2];A=z[b+16>>2];E=z[b+24>>2];F=z[b+12>>2];G=z[b+8>>2];H=z[b+4>>2];I=z[b>>2];b=xa+-64|0;l=C(1);while(1){a:{h=C(p+p);m=C(h*k);f=C(i+i);n=C(f*l);d=C(m+n);j=C(f*k);o=C(h*l);e=C(j-o);g=C(C(1)-C(p*h));q=C(i*f);f=C(g-q);J=C(C(C(d*I)+C(e*H))+C(f*G));L=C(C(C(d*F)+C(e*A))+C(f*y));M=C(C(C(d*E)+C(e*x))+C(f*w));R=C(C(C(d*J)+C(e*L))+C(f*M));z[b+40>>2]=R;s=C(h*i);t=C(k+k);S=C(t*l);h=C(s-S);T=C(k*t);g=C(g-T);j=C(j+o);t=C(C(C(h*I)+C(g*H))+C(j*G));N=C(C(C(h*F)+C(g*A))+C(j*y));O=C(C(C(h*E)+C(g*x))+C(j*w));z[b+36>>2]=C(C(d*t)+C(e*N))+C(f*O);P=d;d=C(C(C(1)-q)-T);o=C(s+S);m=C(m-n);n=C(C(C(d*I)+C(o*H))+C(m*G));q=e;e=C(C(C(d*F)+C(o*A))+C(m*y));s=f;f=C(C(C(d*E)+C(o*x))+C(m*w));z[b+32>>2]=C(C(P*n)+C(q*e))+C(s*f);q=C(C(C(h*t)+C(g*N))+C(j*O));z[b+24>>2]=q;z[b+20>>2]=C(C(h*n)+C(g*e))+C(j*f);n=C(C(C(d*n)+C(o*e))+C(m*f));z[b+8>>2]=n;e=C(C(C(d*J)+C(o*L))+C(m*M));z[b+16>>2]=e;d=C(C(C(d*t)+C(o*N))+C(m*O));z[b+12>>2]=d;f=C(C(C(h*J)+C(g*L))+C(j*M));z[b+28>>2]=f;e=C(D(e));d=C(D(d));r=e>d?1:2;g=d;d=C(D(f));r=d>e?g>>1|0)+r|0)+1|0;Q=u&3;U=(b+8|0)+B(Q,12)|0;u=(u+(Q>>>1|0)|0)+1&3;V=u<<2;d=z[U+V>>2];if(d==C(0)){break a}e=C(z[(Q<<2)+U>>2]-z[((b+8|0)+B(u,12)|0)+V>>2]);d=C(d+d);if(C(D(e))>C(C(D(d))*C(2e6))){break a}d=C(e/d);e=C(D(d));b:{if(e>C(1e3)){v[b+56>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;z[(b+48|0)+(r<<2)>>2]=C(1)/C(d*C(4));d=C(1);break b}v[b+56>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;e=C(C(1)/C(e+C(K(C(C(d*d)+C(1))))));e=C(C(1)/C(K(C(C(e*e)+C(1)))));f=C(K(C(C(C(1)-e)*C(.5))));z[(b+48|0)+(r<<2)>>2]=d>=C(0)?f:C(-f);d=C(K(C(C(e+C(1))*C(.5))))}e=z[b+48>>2];f=z[b+52>>2];h=z[b+56>>2];g=C(C(C(C(l*d)-C(e*p))-C(i*f))-C(k*h));P=g;s=C(g*g);g=C(C(C(p*f)+C(C(l*h)+C(k*d)))-C(e*i));j=C(C(C(i*h)+C(C(l*e)+C(p*d)))-C(f*k));i=C(C(C(k*e)+C(C(l*f)+C(i*d)))-C(h*p));d=C(C(1)/C(K(C(s+C(C(g*g)+C(C(j*j)+C(i*i)))))));l=C(P*d);k=C(g*d);i=C(i*d);p=C(j*d);W=W+1|0;if((W|0)!=24){continue}}break}z[c+12>>2]=l;z[c+8>>2]=k;z[c+4>>2]=i;z[c>>2]=p;z[a+8>>2]=R;z[a+4>>2]=q;z[a>>2]=n}function vy(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,w){var y=0,A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0);y=xa-160|0;xa=y;H=z[q+24>>2];E=z[q+20>>2];L=z[m>>2];M=z[q+12>>2];N=z[i+8>>2];K=z[i>>2];O=z[i+4>>2];G=z[h+8>>2];I=z[h>>2];F=z[q+16>>2];J=z[h+4>>2];A=z[j+8>>2];B=z[j+4>>2];D=z[j>>2];v[y+156>>2]=0;I=C(F-I);J=C(E-J);z[y+152>>2]=C(B*I)-C(D*J);G=C(H-G);z[y+148>>2]=C(D*G)-C(A*I);z[y+144>>2]=C(J*A)-C(B*G);h=y+48|0;my(h,j,y+144|0,b);G=z[j>>2];I=z[j+4>>2];J=z[j+8>>2];v[y+124>>2]=0;z[y+120>>2]=-J;z[y+116>>2]=-I;z[y+112>>2]=-G;v[y+92>>2]=0;F=C(F-K);E=C(E-O);K=C(C(B*F)-C(D*E));z[y+88>>2]=-K;G=D;D=C(H-N);F=C(C(G*D)-C(A*F));z[y+84>>2]=-F;A=C(C(E*A)-C(B*D));z[y+80>>2]=-A;i=y+16|0;m=y+112|0;P=y+80|0;my(i,m,P,c);ny(y,b,h,m,d,f,c,i,P,e,g,t);D=z[j>>2];N=C(C(z[u>>2]*D)+C(z[u+16>>2]*z[y+144>>2]));O=C(C(D*z[w>>2])+C(A*z[w+16>>2]));H=z[j+4>>2];G=C(C(z[u+4>>2]*H)+C(z[u+20>>2]*z[y+148>>2]));I=C(C(H*z[w+4>>2])+C(F*z[w+20>>2]));E=z[j+8>>2];J=C(C(z[u+8>>2]*E)+C(z[u+24>>2]*z[y+152>>2]));K=C(C(E*z[w+8>>2])+C(K*z[w+24>>2]));F=C(C(C(N-O)+C(G-I))+C(J-K));A=C(-F);B=z[o>>2];L=C(M-L);d=F>2]&B>C(0)&A>C(L*z[k>>2]);A=d?C(B*A):C(0);Q=z[s>>2];R=z[l>>2];M=z[n>>2];B=z[y>>2];a:{if(x[b+8>>1]==65535){A=C(A-C(C(N+G)+J));break a}if(x[c+8>>1]!=65535){break a}A=C(C(C(O+I)+K)+A)}B=B>2]*E)+C(C(z[q+32>>2]*D)+C(z[q+36>>2]*H)))));A=C(L*R);A=C(B*(A>2]=E>C(0)?E:C(0);z[r+40>>2]=(d?C(0):C(-(A>C(0)?A:C(0))))+D;z[r+36>>2]=H;z[r+32>>2]=B;z[r+44>>2]=z[q+28>>2];a=v[y+68>>2];v[r>>2]=v[y+64>>2];v[r+4>>2]=a;a=v[y+76>>2];v[r+8>>2]=v[y+72>>2];v[r+12>>2]=a;A=z[y+36>>2];B=z[y+40>>2];D=z[y+32>>2];v[r+28>>2]=0;z[r+24>>2]=-B;z[r+20>>2]=-A;z[r+16>>2]=-D;a=v[y+124>>2];v[r+56>>2]=v[y+120>>2];v[r+60>>2]=a;a=v[y+116>>2];v[r+48>>2]=v[y+112>>2];v[r+52>>2]=a;a=v[y+140>>2];v[r+72>>2]=v[y+136>>2];v[r+76>>2]=a;a=v[y+132>>2];v[r+64>>2]=v[y+128>>2];v[r+68>>2]=a;a=v[y+92>>2];v[r+88>>2]=v[y+88>>2];v[r+92>>2]=a;a=v[y+84>>2];v[r+80>>2]=v[y+80>>2];v[r+84>>2]=a;a=v[y+108>>2];v[r+104>>2]=v[y+104>>2];v[r+108>>2]=a;a=v[y+100>>2];v[r+96>>2]=v[y+96>>2];v[r+100>>2]=a;xa=y+160|0}function wZ(a,b,c,d,e,f,g,h,i,j){var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=0,F=0,G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=C(0),X=0,Y=0,Z=0;E=xa-16|0;xa=E;if(c){X=v[d+32>>2];Y=v[d+24>>2];U=v[d+28>>2];while(1){c=c-1|0;d=B(v[b>>2],20)+Y|0;I=w[d+18|0];if(I){V=x[d+16>>1]+X|0;d=B(w[V|0],12)+U|0;o=z[d>>2];n=z[d+4>>2];m=z[d+8>>2];u=C(C(C(o*z[j+8>>2])+C(n*z[j+20>>2]))+C(m*z[j+32>>2]));y=C(C(C(o*z[j>>2])+C(n*z[j+12>>2]))+C(m*z[j+24>>2]));p=C(C(C(o*z[j+4>>2])+C(n*z[j+16>>2]))+C(m*z[j+28>>2]));F=C(z[f+12>>2]+C(C(u*z[f+8>>2])+C(C(y*z[f>>2])+C(p*z[f+4>>2]))))<=i;d=0;while(1){o=y;n=p;m=u;Z=F;d=d+1|0;F=B(w[(d>>>0>>0?d:0)+V|0],12)+U|0;l=z[F>>2];k=z[F+4>>2];p=z[F+8>>2];u=C(C(C(l*z[j+8>>2])+C(k*z[j+20>>2]))+C(p*z[j+32>>2]));y=C(C(C(l*z[j>>2])+C(k*z[j+12>>2]))+C(p*z[j+24>>2]));p=C(C(C(l*z[j+4>>2])+C(k*z[j+16>>2]))+C(p*z[j+28>>2]));W=C(z[f+12>>2]+C(C(u*z[f+8>>2])+C(C(y*z[f>>2])+C(p*z[f+4>>2]))));a:{if(!(W<=i?1:Z)){break a}k=z[g+36>>2];J=C(m+u);q=z[g+24>>2];t=C(o+y);r=z[g>>2];A=C(n+p);s=z[g+12>>2];G=C(C(k+k)+C(C(J*q)+C(C(t*r)+C(A*s))));l=z[h+12>>2];k=z[h>>2];G=C(G-C(l+k));L=C(u-m);M=C(y-o);N=C(p-n);O=C(C(L*q)+C(C(M*r)+C(N*s)));P=C(D(O));Q=C(l-k);if(C(D(G))>C(P+Q)){break a}k=z[g+40>>2];q=z[g+28>>2];r=z[g+4>>2];s=z[g+16>>2];H=C(C(k+k)+C(C(J*q)+C(C(t*r)+C(A*s))));l=z[h+16>>2];k=z[h+4>>2];H=C(H-C(l+k));R=C(l-k);S=C(C(L*q)+C(C(M*r)+C(N*s)));T=C(D(S));if(C(D(H))>C(R+T)){break a}k=z[g+44>>2];q=z[g+32>>2];r=z[g+8>>2];s=z[g+20>>2];t=C(C(k+k)+C(C(J*q)+C(C(t*r)+C(A*s))));l=z[h+20>>2];k=z[h+8>>2];t=C(t-C(l+k));A=C(l-k);l=C(C(L*q)+C(C(M*r)+C(N*s)));k=C(D(l));if(C(D(t))>C(A+k)|C(D(C(C(S*t)-C(H*l))))>C(C(R*k)+C(T*A))|(C(D(C(C(l*G)-C(t*O))))>C(C(Q*k)+C(P*A))|C(D(C(C(O*H)-C(G*S))))>C(C(Q*T)+C(P*R)))){break a}q=C(0);r=C(0);s=C(0);l=C(o-y);n=C(n-p);m=C(m-u);k=C(C(C(l*z[e+8>>2])+C(n*z[e+20>>2]))+C(m*z[e+32>>2]));o=C(C(C(l*z[e>>2])+C(n*z[e+12>>2]))+C(m*z[e+24>>2]));n=C(C(C(l*z[e+4>>2])+C(n*z[e+16>>2]))+C(m*z[e+28>>2]));m=C(C(k*k)+C(C(o*o)+C(n*n)));if(m>C(0)){m=C(C(1)/C(K(m)));s=C(k*m);q=C(o*m);r=C(n*m)}z[E+8>>2]=s;z[E+4>>2]=r;z[E>>2]=q;sZ(a,E)}F=i>=W;if((d|0)!=(I|0)){continue}break}}b=b+4|0;if(c){continue}break}}xa=E+16|0}function XR(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=0,m=0;h=xa-32|0;xa=h;f=v[v[a+4>>2]+40>>2];l=v[f+1140>>2];b=v[a+8>>2];YR(a,h);g=b&2147483647;e=v[v[f+976>>2]+1816>>2];b=v[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=v[e>>2];d=Ba[v[v[c>>2]+8>>2]](c,b,16608,553)|0}i=v[e+4>>2];b=v[e+8>>2];if((b|0)>0){m=(b<<5)+d|0;c=i;b=d;while(1){z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];z[b+12>>2]=z[c+12>>2];z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];z[b+24>>2]=z[c+24>>2];v[b+28>>2]=v[c+28>>2];c=c+32|0;b=b+32|0;if(m>>>0>b>>>0){continue}break}}if(!(!i|v[e+12>>2]<0)){b=v[e>>2];Ba[v[v[b>>2]+12>>2]](b,i)}v[e+12>>2]=j;v[e+4>>2]=d}v[e+8>>2]=j}b=v[e+16>>2];c=g+1|0;v[e+16>>2]=b>>>0>c>>>0?b:c;b=v[e+4>>2]+(g<<5)|0;z[b>>2]=z[h>>2];z[b+4>>2]=z[h+4>>2];z[b+8>>2]=z[h+8>>2];z[b+12>>2]=z[h+12>>2];z[b+16>>2]=z[h+16>>2];z[b+20>>2]=z[h+20>>2];k=z[h+24>>2];v[b+28>>2]=0;z[b+24>>2]=k;t[e+20|0]=1;dV(v[l+4>>2]+B(g,24)|0,v[a+28>>2]+68|0,h,C(1));t[l+16|0]=1;b=v[a+28>>2];i=w[b- -64|0];b:{if(i&5){k=z[b+60>>2];d=v[a+4>>2];e=v[d+44>>2];j=w[e+9|0];b=2;c:{if(j-3>>>0<4294967294){break c}b=2;if(!d){break c}b=t[e+44|0]&1?1:2}ZI(a,k,j?(b|v[d+48>>2]<<2)+4|0:0,i&4);break b}d=g+1|0;b=v[f+980>>2];if(d>>>0>=y[b+200>>2]){gI(b,d)}d=g<<2;v[d+v[b+180>>2]>>2]=-1;v[d+v[v[b+192>>2]+4>>2]>>2]=0;b=v[b+196>>2]+(g<<3)|0;v[b>>2]=0;v[b+4>>2]=-1}z[v[v[f+1144>>2]+4>>2]+(g<<2)>>2]=z[v[a+28>>2]+60>>2];t[f+1148|0]=1;b=v[f+2520>>2];d:{if(b<<5>>>0>g>>>0){break d}d=b&2147483647;b=b<<6|2;b=(b>>>0>>0?c:b)+31>>>5|0;if(d>>>0>=b>>>0){break d}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,b<<2,24422,17999,438)|0;d=v[f+2516>>2];e:{if(!d){break e}H9(c,d,v[f+2520>>2]<<2);if(v[f+2520>>2]<0){break e}d=v[f+2516>>2];if(!d){break e}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,d)}d=v[f+2520>>2];I9(c+(d<<2)|0,0,b-d<<2);v[f+2520>>2]=b;v[f+2516>>2]=c}c=v[a+4>>2];d=v[c+44>>2];b=w[d+9|0];f:{if(b-1>>>0>1|y[c+152>>2]>4294967293|((w[d+44|0]&3)==3|v[a+36>>2]!=-1)){break f}if(!(w[v[a+28>>2]- -64|0]&2)|(t[c+92|0]&1|w[c+149|0]&16)){break f}jS(v[v[c+40>>2]+1152>>2],a);b=w[v[c+44>>2]+9|0]}v[a+20>>2]=g;v[a+12>>2]=v[a+28>>2]+32;v[a+16>>2]=b?v[v[a+4>>2]+144>>2]:-128;xa=h+32|0}function T1(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0;f=xa-48|0;xa=f;if(v$(v[a+5312>>2],c,d,e)){a:{if(w[a+16|0]){m=z[c>>2];z[f>>2]=m;n=z[c+4>>2];z[f+4>>2]=n;i=z[c+8>>2];z[f+12>>2]=z[d>>2];z[f+16>>2]=z[d+4>>2];z[f+20>>2]=z[d+8>>2];z[f+24>>2]=z[e>>2];z[f+28>>2]=z[e+4>>2];z[f+32>>2]=z[e+8>>2];break a}h=v[a+8>>2];i=z[h+32>>2];o=z[h+20>>2];p=z[h+28>>2];q=z[h+16>>2];F=w[h+72|0];r=z[h+8>>2];s=z[h+4>>2];u=z[c>>2];x=z[h>>2];y=z[c+4>>2];A=z[h+12>>2];D=z[c+8>>2];E=z[h+24>>2];m=C(C(C(u*x)+C(y*A))+C(D*E));z[f>>2]=m;n=C(C(C(u*s)+C(y*q))+C(D*p));z[f+4>>2]=n;c=(F?24:12)+f|0;j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);c=(F?12:24)+f|0;j=z[e>>2];k=z[e+4>>2];l=z[e+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);i=C(C(C(u*r)+C(y*o))+C(D*i))}z[f+8>>2]=i;h=v[b+8>>2];b=v[a+12>>2];if(b){b=w[b+h|0]}else{b=56}e=a+20|0;d=v[a+868>>2];if((d|0)==16){c=a+880|0;D1(c,e,v[a+788>>2],w[a+852|0],a+596|0);D1(c,a+56|0,v[a+792>>2],w[a+853|0],a+608|0);D1(c,a+92|0,v[a+796>>2],w[a+854|0],a+620|0);D1(c,a+128|0,v[a+800>>2],w[a+855|0],a+632|0);D1(c,a+164|0,v[a+804>>2],w[a+856|0],a+644|0);D1(c,a+200|0,v[a+808>>2],w[a+857|0],a+656|0);D1(c,a+236|0,v[a+812>>2],w[a+858|0],a+668|0);D1(c,a+272|0,v[a+816>>2],w[a+859|0],a+680|0);D1(c,a+308|0,v[a+820>>2],w[a+860|0],a+692|0);D1(c,a+344|0,v[a+824>>2],w[a+861|0],a+704|0);D1(c,a+380|0,v[a+828>>2],w[a+862|0],a+716|0);D1(c,a+416|0,v[a+832>>2],w[a+863|0],a+728|0);D1(c,a+452|0,v[a+836>>2],w[a+864|0],a+740|0);D1(c,a+488|0,v[a+840>>2],w[a+865|0],a+752|0);D1(c,a+524|0,v[a+844>>2],w[a+866|0],a+764|0);D1(c,a+560|0,v[a+848>>2],w[a+867|0],a+776|0);i=z[f+8>>2];n=z[f+4>>2];m=z[f>>2];d=0}v[a+868>>2]=d+1;c=e+B(d,36)|0;z[c+8>>2]=i;z[c+4>>2]=n;z[c>>2]=m;z[c+12>>2]=z[f+12>>2];z[c+16>>2]=z[f+16>>2];z[c+20>>2]=z[f+20>>2];z[c+24>>2]=z[f+24>>2];z[c+28>>2]=z[f+28>>2];z[c+32>>2]=z[f+32>>2];a=B(d,12)+a|0;v[a+596>>2]=v[g>>2];v[a+600>>2]=v[g+4>>2];v[a+604>>2]=v[g+8>>2];v[(e+(d<<2)|0)+768>>2]=h;t[(d+e|0)+832|0]=b}xa=f+48|0;return 1}function rZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0;d=xa-112|0;xa=d;if(b){u=a+4|0;while(1){t=v[c>>2];m$(v[a+104>>2],v[a+108>>2],d+56|0,d+100|0,d+44|0,t,0,0);f=z[d+56>>2];g=C(z[d+68>>2]-f);e=z[d+60>>2];l=C(z[d+84>>2]-e);f=C(z[d+80>>2]-f);e=C(z[d+72>>2]-e);s=C(C(g*l)-C(f*e));i=e;e=z[d+64>>2];m=C(z[d+88>>2]-e);e=C(z[d+76>>2]-e);l=C(C(i*m)-C(l*e));m=C(C(e*f)-C(m*g));f=C(K(C(C(s*s)+C(C(l*l)+C(m*m)))));if(f>C(0)){f=C(C(1)/f);s=C(s*f);m=C(m*f);l=C(l*f)}n=v[d+44>>2];j=8;a:{if((n|0)==-1){break a}m$(v[a+104>>2],v[a+108>>2],d+8|0,0,0,n,0,0);e=z[d+8>>2];o=C(z[d+20>>2]-e);h=z[d+12>>2];g=C(z[d+36>>2]-h);p=C(z[d+32>>2]-e);i=C(z[d+24>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+16>>2];q=C(z[d+40>>2]-i);r=C(z[d+28>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+80>>2]-e));e=C(C(r*p)-C(q*o));j=0;if(!(C(C(f*C(z[d+88>>2]-i))+C(k+C(e*C(z[d+84>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2];b:{if((n|0)!=-1){m$(v[a+104>>2],v[a+108>>2],d+8|0,0,0,n,0,0);e=z[d+8>>2];o=C(z[d+20>>2]-e);h=z[d+12>>2];g=C(z[d+36>>2]-h);p=C(z[d+32>>2]-e);i=C(z[d+24>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+16>>2];q=C(z[d+40>>2]-i);r=C(z[d+28>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+56>>2]-e));e=C(C(r*p)-C(q*o));if(!(C(C(f*C(z[d+64>>2]-i))+C(k+C(e*C(z[d+60>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2];c:{if((n|0)!=-1){m$(v[a+104>>2],v[a+108>>2],d+8|0,0,0,n,0,0);e=z[d+8>>2];o=C(z[d+20>>2]-e);h=z[d+12>>2];g=C(z[d+36>>2]-h);p=C(z[d+32>>2]-e);i=C(z[d+24>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+16>>2];q=C(z[d+40>>2]-i);r=C(z[d+28>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+68>>2]-e));e=C(C(r*p)-C(q*o));if(!(C(C(f*C(z[d+76>>2]-i))+C(k+C(e*C(z[d+72>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2]&x[a+20>>1])){break a}K=v[c>>2];if(!v[K+588>>2]){break a}k=z[c+20>>2];q=v[a+4>>2];u=z[c+36>>2];d=C(z[q+8>>2]-u);e=C(d+d);h=z[c+12>>2];w=z[c+28>>2];d=C(z[q>>2]-w);f=C(d+d);A=z[c+32>>2];d=C(z[q+4>>2]-A);g=C(d+d);l=z[c+16>>2];i=C(C(k*e)+C(C(h*f)+C(g*l)));d=z[c+24>>2];n=C(C(d*d)+C(-.5));z[j+56>>2]=C(k*i)+C(C(e*n)-C(d*C(C(h*g)-C(f*l))));z[j+52>>2]=C(l*i)+C(C(g*n)-C(d*C(C(k*f)-C(e*h))));z[j+48>>2]=C(h*i)+C(C(f*n)-C(d*C(C(l*e)-C(g*k))));y=v[a+8>>2];e=z[y+8>>2];e=C(e+e);f=z[y>>2];f=C(f+f);g=z[y+4>>2];g=C(g+g);i=C(C(k*e)+C(C(h*f)+C(l*g)));z[j+40>>2]=C(k*i)+C(C(e*n)-C(d*C(C(h*g)-C(f*l))));z[j+36>>2]=C(l*i)+C(C(g*n)-C(d*C(C(k*f)-C(e*h))));z[j+32>>2]=C(h*i)+C(C(f*n)-C(d*C(C(l*e)-C(g*k))));e=z[q+8>>2];y=v[a+12>>2];f=z[y+8>>2];g=C(e+f);o=z[q+4>>2];m=z[y+4>>2];i=C(o+m);r=C(e-f);o=C(o-m);e=z[q>>2];f=z[y>>2];m=C(e-f);s=C(e+f);if(!(m>s)){B=C(-h);p=C(B-h);e=C(-k);L=C(p*e);f=C(-l);t=C(f-l);M=C(d*t);H=C(C(s-m)*C(.5));E=C(d*p);F=C(t*e);I=C(C(i-o)*C(.5));G=C(C(h*p)+C(1));N=C(t*f);J=C(C(g-r)*C(.5));O=C(C(C(D(C(C(L-M)*H)))+C(D(C(C(E+F)*I))))+C(D(C(C(G-N)*J))));t=C(u*C(-2));u=C(w*C(-2));w=C(A*C(-2));A=C(C(k*t)+C(C(h*u)+C(w*l)));g=C(C(r+g)*C(.5));r=C(g+g);g=C(C(m+s)*C(.5));m=C(g+g);g=C(C(o+i)*C(.5));o=C(g+g);s=C(C(e*r)+C(C(B*m)+C(o*f)));P=C(C(C(k*A)+C(C(t*n)-C(d*C(C(h*w)+C(u*f)))))+C(C(e*s)+C(C(r*n)+C(d*C(C(B*o)+C(l*m))))));g=C(O+P);p=C(p*f);i=C(e-k);Q=C(d*i);R=G;G=C(i*e);E=C(C(C(D(C(C(p+Q)*H)))+C(D(C(C(R-G)*I))))+C(D(C(C(F-E)*J))));F=C(C(C(l*A)+C(C(w*n)-C(d*C(C(k*u)+C(t*B)))))+C(C(f*s)+C(C(o*n)+C(d*C(C(e*m)+C(h*r))))));i=C(E+F);p=C(C(C(D(C(C(C(C(1)-N)-G)*H)))+C(D(C(C(p-Q)*I))))+C(D(C(C(L+M)*J))));d=C(C(C(h*A)+C(C(u*n)-C(d*C(C(l*t)+C(w*e)))))+C(C(B*s)+C(C(m*n)+C(d*C(C(f*r)+C(k*o))))));s=C(p+d);o=C(F-E);m=C(d-p);r=C(P-O)}z[j+24>>2]=C(g-r)*C(.5);z[j+20>>2]=C(i-o)*C(.5);z[j+16>>2]=C(s-m)*C(.5);c=v[c+4>>2];q=gD(v[c+12>>2],v[c+8>>2],K,j+48|0,j+32|0,b,j+16|0,v[a+16>>2])}xa=j- -64|0;return q|0}function zC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=0,n=0,o=0,p=0;d=xa+-64|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;YU(b,d);v[b+4>>2]=c;c=a+16|0;e=z[c+672>>2];f=z[c+676>>2];g=z[c+660>>2];h=z[c+656>>2];i=z[c+664>>2];j=z[c+680>>2];z[d+52>>2]=i+j;z[d+48>>2]=g+f;t[d+56|0]=1;z[d+44>>2]=h+e;z[d+40>>2]=i-j;z[d+36>>2]=g-f;z[d+32>>2]=h-e;_U(b,d+32|0);o=c+688|0;while(1){if(v[(k<<2)+o>>2]){a=c+(k<<5)|0;e=z[a+752>>2];f=z[a+736>>2];g=z[a+756>>2];h=z[a+740>>2];i=z[a+760>>2];j=z[a+744>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;_U(b,d+32|0);n=c+B(k,224)|0;p=n+912|0;l=0;while(1){a:{if(!v[(l<<2)+p>>2]){break a}a=(l<<5)+n|0;e=z[a+976>>2];f=z[a+960>>2];g=z[a+980>>2];h=z[a+964>>2];i=z[a+984>>2];j=z[a+968>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;_U(b,d+32|0);a=(c+B(k,1120)|0)+B(l,224)|0;m=a+2032|0;if(v[m>>2]){e=z[a+2096>>2];f=z[a+2080>>2];g=z[a+2100>>2];h=z[a+2084>>2];i=z[a+2104>>2];j=z[a+2088>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;_U(b,d+32|0)}if(v[m+4>>2]){e=z[a+2128>>2];f=z[a+2112>>2];g=z[a+2132>>2];h=z[a+2116>>2];i=z[a+2136>>2];j=z[a+2120>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;_U(b,d+32|0)}if(v[m+8>>2]){e=z[a+2160>>2];f=z[a+2144>>2];g=z[a+2164>>2];h=z[a+2148>>2];i=z[a+2168>>2];j=z[a+2152>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;_U(b,d+32|0)}if(v[m+12>>2]){e=z[a+2192>>2];f=z[a+2176>>2];g=z[a+2196>>2];h=z[a+2180>>2];i=z[a+2200>>2];j=z[a+2184>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;_U(b,d+32|0)}if(!v[m+16>>2]){break a}e=z[a+2224>>2];f=z[a+2208>>2];g=z[a+2228>>2];h=z[a+2212>>2];i=z[a+2232>>2];j=z[a+2216>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;_U(b,d+32|0)}l=l+1|0;if((l|0)!=5){continue}break}}k=k+1|0;if((k|0)!=5){continue}break}xa=d- -64|0}function TI(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;c=xa-144|0;xa=c;b=v[v[a+272>>2]+560>>2];e=v[b>>2];if(e){v[b>>2]=v[e>>2]}if(!e){b=v[37696];e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,56,24422,8887,2450)|0;b=e;v[b>>2]=0;v[b+4>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0}h=e+4|0;v[a+28>>2]=h;g=v[e+8>>2];f=e+28|0;v[a+52>>2]=f;v[a+32>>2]=g;b=v[e+32>>2];i=e+16|0;v[a+40>>2]=i;v[a+56>>2]=b;d=v[e+20>>2];j=e+40|0;v[a- -64>>2]=j;v[a+44>>2]=d;k=v[e+44>>2];v[a+68>>2]=k;t[c+128|0]=1;v[c+136>>2]=0;v[c+140>>2]=16;v[c+132>>2]=c;if(v[a+268>>2]){g=0;while(1){j=(g<<2)+a|0;b=v[j+76>>2];a:{if(!(Ba[v[v[b>>2]+8>>2]](b,v[a+272>>2],e)|0)){break a}h=((g<<3)+a|0)+140|0;b=v[c+136>>2];b:{if(b>>>0>=(v[c+140>>2]&2147483647)>>>0){b=0;d=v[c+140>>2];i=d&2147483647?d<<1:1;c:{if(!i){break c}d=i<<3;if(!(w[c+128|0]|d>>>0>128)){t[c+128|0]=1;b=c;break c}if(!d){break c}b=v[37696];f=b+12|0;b=(n=f,o=d,p=Ba[v[v[b>>2]+20>>2]](b)|0?31385:63804,q=16608,r=553,m=v[v[f>>2]+8>>2],Ba[m](n|0,o|0,p|0,q|0,r|0)|0)}d=v[c+136>>2];if((d|0)>0){k=(d<<3)+b|0;f=v[c+132>>2];d=b;while(1){l=v[f+4>>2];v[d>>2]=v[f>>2];v[d+4>>2]=l;f=f+8|0;d=d+8|0;if(k>>>0>d>>>0){continue}break}d=v[c+136>>2]}f=v[h+4>>2];d=(d<<3)+b|0;v[d>>2]=v[h>>2];v[d+4>>2]=f;d:{if(v[c+140>>2]<0){break d}d=v[c+132>>2];if((d|0)==(c|0)){t[c+128|0]=0;break d}if(!d){break d}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[c+140>>2]=i;v[c+132>>2]=b;break b}d=v[h+4>>2];b=v[c+132>>2]+(b<<3)|0;v[b>>2]=v[h>>2];v[b+4>>2]=d}v[c+136>>2]=v[c+136>>2]+1;b=v[j+76>>2];if(!b){break a}Ba[v[v[b>>2]+4>>2]](b)}g=g+1|0;if(g>>>0>2]){continue}break}k=v[a+68>>2];j=v[a+64>>2];d=v[a+44>>2];i=v[a+40>>2];f=v[a+52>>2];h=v[a+28>>2];g=v[a+32>>2];b=v[a+56>>2]}v[a+36>>2]=v[h+4>>2]-g;v[a+60>>2]=v[f+4>>2]-b;v[a+48>>2]=v[i+4>>2]-d;v[a+72>>2]=v[j+4>>2]-k;b=v[v[a+272>>2]+560>>2];v[e>>2]=v[b>>2];v[b>>2]=e;if(v[c+136>>2]){g=0;while(1){EI(v[a+276>>2],v[c+132>>2]+(g<<3)|0);g=g+1|0;if(g>>>0>2]){continue}break}}a=v[c+140>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[c+132>>2];if((a|0)==(c|0)|!a){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=c+144|0}function Hz(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,u=0,A=0,D=C(0);h=xa-48|0;xa=h;f=v[a+44>>2];b=v[f+336>>2];d=v[b>>2];if(d){v[b>>2]=v[d>>2]}if(!d){d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?26947:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,12195,b,19395,82)|0;d=b+19&-16;v[d-4>>2]=d-b;d=gB(d,v[f+340>>2])}f=d+11856|0;v[f>>2]=0;v[f+4>>2]=0;g=d+11852|0;a:{if(!v[a+40>>2]){f=0;v[d+12064>>2]=0;v[d+12052>>2]=0;l=d+12060|0;m=d+12048|0;break a}b=v[a+36>>2];f=0;while(1){e=v[v[a+32>>2]+(i<<2)>>2];c=v[e+32>>2];j=B(i,52);b=j+b|0;v[b>>2]=v[e+28>>2];v[b+4>>2]=c;v[b+48>>2]=v[e+76>>2];c=v[e+72>>2];v[b+40>>2]=v[e+68>>2];v[b+44>>2]=c;c=v[e+64>>2];v[b+32>>2]=v[e+60>>2];v[b+36>>2]=c;c=v[e+56>>2];v[b+24>>2]=v[e+52>>2];v[b+28>>2]=c;c=v[e+48>>2];v[b+16>>2]=v[e+44>>2];v[b+20>>2]=c;c=v[e+40>>2];v[b+8>>2]=v[e+36>>2];v[b+12>>2]=c;b=v[a+36>>2];e=w[(j+b|0)+48|0];f=e>>>0>>0?f:e;i=i+1|0;if(i>>>0>2]){continue}break}v[d+12052>>2]=0;m=d+12048|0;if((v[d+12056>>2]&2147483647)>>>0>>0){yw(m,f)}v[d+12052>>2]=f;v[d+12064>>2]=0;l=d+12060|0;if((v[d+12068>>2]&2147483647)>>>0>=f>>>0){break a}yw(l,f)}v[d+12064>>2]=f;n=v[a+48>>2];b=v[a+28>>2];v[h+40>>2]=d+12088;v[h+36>>2]=d+11824;v[h+32>>2]=g;v[h+24>>2]=128228;v[h+28>>2]=b+11836;o=v[a+40>>2];b:{if(!o){i=0;e=0;g=0;j=0;break b}p=v[a+36>>2];j=0;g=0;e=0;b=0;i=0;while(1){u=v[v[a+32>>2]+(b<<2)>>2];A=v[v[a+28>>2]+12132>>2];c=v[a+44>>2];D=z[c+52>>2];z[h+8>>2]=z[c+68>>2];z[h+12>>2]=z[c+72>>2];z[h+16>>2]=z[c+76>>2];k=0;q=B(b,52);r=q+p|0;s=v[(v[v[r>>2]+24>>2]<<2)+149584>>2];if(s){k=Ba[s|0](r,D,h+24|0,(n<<5)+A|0,h+20|0,h+8|0,v[c+600>>2],v[c+604>>2],v[m>>2],v[l>>2])|0;o=v[a+40>>2];p=v[a+36>>2]}c=p+q|0;t[c+49|0]=k;k=x[c+46>>1];i=i>>>0>k>>>0?i:k;c=x[c+44>>1];e=c>>>0>>0?e:c;c=x[v[u+60>>2]+12>>1];k=c&255;g=g>>>0>>0?k:g;c=c>>>8|0;j=c>>>0>j>>>0?c:j;n=n- -64|0;b=b+1|0;if(o>>>0>b>>>0){continue}break}b=v[a+28>>2]}c=b+12112|0;b=v[c>>2];v[c>>2]=(b|0)>(g|0)?b:g;g=v[a+28>>2]+12116|0;b=v[g>>2];v[g>>2]=(b|0)>(j|0)?b:j;g=v[a+28>>2]+12120|0;b=v[g>>2];v[g>>2]=(b|0)>(e|0)?b:e;e=v[a+28>>2]+12124|0;b=v[e>>2];v[e>>2]=(b|0)>(i|0)?b:i;e=v[a+28>>2]+12128|0;b=v[e>>2];v[e>>2]=(b|0)>(f|0)?b:f;a=v[v[a+44>>2]+336>>2];v[d>>2]=v[a>>2];v[a>>2]=d;xa=h+48|0}function GZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0;d=xa-96|0;xa=d;if(b){u=a+4|0;while(1){t=v[c>>2];m$(v[a+2232>>2],v[a+2220>>2],d+48|0,d+84|0,d+36|0,t,0,0);f=z[d+48>>2];g=C(z[d+60>>2]-f);e=z[d+52>>2];l=C(z[d+76>>2]-e);f=C(z[d+72>>2]-f);e=C(z[d+64>>2]-e);s=C(C(g*l)-C(f*e));i=e;e=z[d+56>>2];m=C(z[d+80>>2]-e);e=C(z[d+68>>2]-e);l=C(C(i*m)-C(l*e));m=C(C(e*f)-C(m*g));f=C(K(C(C(s*s)+C(C(l*l)+C(m*m)))));if(f>C(0)){f=C(C(1)/f);s=C(s*f);m=C(m*f);l=C(l*f)}n=v[d+36>>2];j=8;a:{if((n|0)==-1){break a}m$(v[a+2232>>2],v[a+2220>>2],d,0,0,n,0,0);e=z[d>>2];o=C(z[d+12>>2]-e);h=z[d+4>>2];g=C(z[d+28>>2]-h);p=C(z[d+24>>2]-e);i=C(z[d+16>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+8>>2];q=C(z[d+32>>2]-i);r=C(z[d+20>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+72>>2]-e));e=C(C(r*p)-C(q*o));j=0;if(!(C(C(f*C(z[d+80>>2]-i))+C(k+C(e*C(z[d+76>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2];b:{if((n|0)!=-1){m$(v[a+2232>>2],v[a+2220>>2],d,0,0,n,0,0);e=z[d>>2];o=C(z[d+12>>2]-e);h=z[d+4>>2];g=C(z[d+28>>2]-h);p=C(z[d+24>>2]-e);i=C(z[d+16>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+8>>2];q=C(z[d+32>>2]-i);r=C(z[d+20>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+48>>2]-e));e=C(C(r*p)-C(q*o));if(!(C(C(f*C(z[d+56>>2]-i))+C(k+C(e*C(z[d+52>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2];c:{if((n|0)!=-1){m$(v[a+2232>>2],v[a+2220>>2],d,0,0,n,0,0);e=z[d>>2];o=C(z[d+12>>2]-e);h=z[d+4>>2];g=C(z[d+28>>2]-h);p=C(z[d+24>>2]-e);i=C(z[d+16>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+8>>2];q=C(z[d+32>>2]-i);r=C(z[d+20>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+60>>2]-e));e=C(C(r*p)-C(q*o));if(!(C(C(f*C(z[d+68>>2]-i))+C(k+C(e*C(z[d+64>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2];O=z[b+76>>2];P=z[b+88>>2];Q=z[b+96>>2];R=z[b+80>>2];S=z[b+92>>2];T=z[b+100>>2];U=z[b+104>>2];D=z[b+16>>2];E=z[b+20>>2];d=z[a+16>>2];e=z[a+28>>2];p=z[b+48>>2];q=z[b+60>>2];F=z[b+28>>2];r=z[b+40>>2];m=z[b+52>>2];s=z[b- -64>>2];V=z[b+72>>2];G=z[b>>2];H=z[b+4>>2];I=z[b+8>>2];f=z[a+24>>2];g=z[a>>2];h=z[a+12>>2];J=z[b+12>>2];i=z[a+4>>2];K=z[b+24>>2];o=z[b+36>>2];L=z[b+32>>2];j=z[a+32>>2];n=z[b+68>>2];t=C(j*n);u=z[b+44>>2];k=z[a+8>>2];l=z[a+20>>2];v=z[b+56>>2];z[b+32>>2]=L+C(t+C(C(u*k)+C(l*v)));w=C(l*m);z[b+28>>2]=F+C(C(s*j)+C(C(r*k)+w));c=C(k*o);z[b+24>>2]=K+C(C(q*j)+C(c+C(l*p)));x=C(e*n);z[b+20>>2]=E+C(x+C(C(u*i)+C(d*v)));y=C(d*m);z[b+16>>2]=D+C(C(s*e)+C(C(r*i)+y));A=C(i*o);z[b+12>>2]=J+C(C(q*e)+C(A+C(d*p)));B=C(f*n);z[b+8>>2]=I+C(B+C(C(u*g)+C(h*v)));m=C(h*m);z[b+4>>2]=H+C(C(s*f)+C(C(r*g)+m));n=C(g*o);z[b>>2]=G+C(C(q*f)+C(n+C(h*p)));M=C(L+C(t+C(C(k*q)+C(l*s))));o=C(K+C(C(j*u)+C(c+C(l*r))));t=C(F+C(C(j*v)+C(C(k*p)+w)));c=C(C(C(j*M)+C(C(k*o)+C(l*t)))+C(U+C(C(j*L)+C(C(k*K)+C(l*F)))));z[b+104>>2]=C(c+c)*C(.5);w=C(E+C(x+C(C(i*q)+C(d*s))));x=C(J+C(C(e*u)+C(A+C(d*r))));y=C(D+C(C(e*v)+C(C(i*p)+y)));c=C(C(C(C(C(M*e)+C(C(o*i)+C(d*t)))+C(S+C(C(j*E)+C(C(k*J)+C(l*D)))))+C(C(C(j*w)+C(C(k*x)+C(l*y)))+C(T+C(C(e*L)+C(C(i*K)+C(d*F))))))*C(.5));z[b+100>>2]=c;A=C(I+C(B+C(C(g*q)+C(h*s))));B=C(G+C(C(f*u)+C(n+C(h*r))));m=C(H+C(C(f*v)+C(C(g*p)+m)));n=C(C(C(C(R+C(C(j*I)+C(C(k*G)+C(l*H))))+C(C(M*f)+C(C(o*g)+C(h*t))))+C(C(C(j*A)+C(C(k*B)+C(l*m)))+C(Q+C(C(f*L)+C(C(g*K)+C(h*F))))))*C(.5));z[b+96>>2]=n;z[b+92>>2]=c;c=C(C(C(w*e)+C(C(x*i)+C(d*y)))+C(P+C(C(e*E)+C(C(i*J)+C(d*D)))));z[b+88>>2]=C(c+c)*C(.5);c=C(C(C(C(O+C(C(e*I)+C(C(i*G)+C(d*H))))+C(C(w*f)+C(C(x*g)+C(h*y))))+C(C(C(A*e)+C(C(B*i)+C(d*m)))+C(N+C(C(f*E)+C(C(g*J)+C(h*D))))))*C(.5));z[b+84>>2]=c;z[b+80>>2]=n;z[b+76>>2]=c;c=C(C(V+C(C(f*I)+C(C(g*G)+C(h*H))))+C(C(A*f)+C(C(B*g)+C(h*m))));z[b+72>>2]=C(c+c)*C(.5)}function eo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0);if(b-3>>>0<=1){return nV(v[37389],c)|0}a:{b:{switch(b-1|0){case 1:e=v[37389];b=xa-16|0;xa=b;a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?40633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,132,d,5452,514)|0;v[a+12>>2]=1;v[a+4>>2]=196610;u[a+52>>1]=0;v[a+8>>2]=142832;v[a>>2]=142748;v[a+80>>2]=v[c+64>>2];v[a+84>>2]=v[c+108>>2];z[a+88>>2]=z[c+68>>2];z[a+92>>2]=z[c+72>>2];z[a+96>>2]=z[c+76>>2];z[a+100>>2]=z[c+80>>2];z[a+104>>2]=z[c+84>>2];z[a+108>>2]=z[c+88>>2];z[a+112>>2]=z[c+92>>2];z[a+116>>2]=z[c+96>>2];z[a+120>>2]=z[c+100>>2];f=z[c+104>>2];v[a+128>>2]=e;z[a+124>>2]=f;z[a+16>>2]=z[c>>2];z[a+20>>2]=z[c+4>>2];z[a+24>>2]=z[c+8>>2];z[a+28>>2]=z[c+12>>2];z[a+32>>2]=z[c+16>>2];z[a+36>>2]=z[c+20>>2];z[a+40>>2]=z[c+24>>2];z[a+44>>2]=z[c+28>>2];z[a+48>>2]=z[c+32>>2];d=v[c+40>>2];v[a+52>>2]=v[c+36>>2];v[a+56>>2]=d;d=v[c+48>>2];v[a+60>>2]=v[c+44>>2];v[a+64>>2]=d;d=v[c+56>>2];v[a+68>>2]=v[c+52>>2];v[a+72>>2]=d;v[a+76>>2]=v[c+60>>2];v[b+8>>2]=a;c=qh(e+48|0,b+8|0,b+15|0);break a;case 0:e=v[37389];b=xa-16|0;xa=b;a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?45527:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,100,d,5452,570)|0;v[a+12>>2]=1;v[a+4>>2]=196609;v[a+76>>2]=0;v[a+80>>2]=0;v[a+96>>2]=e;u[a+68>>1]=0;v[a+8>>2]=142996;v[a>>2]=142892;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;z[a+16>>2]=z[c>>2];z[a+20>>2]=z[c+4>>2];z[a+24>>2]=z[c+8>>2];z[a+28>>2]=z[c+12>>2];z[a+32>>2]=z[c+16>>2];z[a+36>>2]=z[c+20>>2];d=v[c+28>>2];v[a+40>>2]=v[c+24>>2];v[a+44>>2]=d;d=v[c+36>>2];v[a+48>>2]=v[c+32>>2];v[a+52>>2]=d;d=v[c+44>>2];v[a+56>>2]=v[c+40>>2];v[a+60>>2]=d;v[a- -64>>2]=v[c+48>>2];u[a+68>>1]=x[c+52>>1];v[a+72>>2]=v[c+56>>2];v[c+44>>2]=0;v[b+8>>2]=a;c=qh(e+88|0,b+8|0,b+15|0);break a;case 16:e=v[37389];b=xa-16|0;xa=b;a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?41893:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,44,d,5452,658)|0;v[a+12>>2]=1;v[a+4>>2]=196625;v[a+16>>2]=e;v[a+8>>2]=141960;v[a>>2]=141904;v[a+20>>2]=v[c>>2];v[a+24>>2]=v[c+4>>2];v[a+28>>2]=v[c+8>>2];d=v[c+12>>2];v[a+36>>2]=0;v[a+32>>2]=d;v[a+40>>2]=v[c+16>>2];v[b+8>>2]=a;c=qh(e+128|0,b+8|0,b+15|0);break a;default:break b}}a9(v[37696],32,18663,62,70174,0);return 0}if(!w[b+15|0]){v[c>>2]=v[b+8>>2]}xa=b+16|0;return a|0}function h2(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0;f=xa-48|0;xa=f;a:{if(w[a+16|0]){m=z[c>>2];z[f>>2]=m;n=z[c+4>>2];z[f+4>>2]=n;i=z[c+8>>2];z[f+12>>2]=z[d>>2];z[f+16>>2]=z[d+4>>2];z[f+20>>2]=z[d+8>>2];z[f+24>>2]=z[e>>2];z[f+28>>2]=z[e+4>>2];z[f+32>>2]=z[e+8>>2];break a}h=v[a+8>>2];i=z[h+32>>2];o=z[h+20>>2];p=z[h+28>>2];q=z[h+16>>2];F=w[h+72|0];r=z[h+8>>2];s=z[h+4>>2];u=z[c>>2];x=z[h>>2];y=z[c+4>>2];A=z[h+12>>2];D=z[c+8>>2];E=z[h+24>>2];m=C(C(C(u*x)+C(y*A))+C(D*E));z[f>>2]=m;n=C(C(C(u*s)+C(y*q))+C(D*p));z[f+4>>2]=n;c=(F?24:12)+f|0;j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);c=(F?12:24)+f|0;j=z[e>>2];k=z[e+4>>2];l=z[e+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);i=C(C(C(u*r)+C(y*o))+C(D*i))}z[f+8>>2]=i;h=v[b+8>>2];b=v[a+12>>2];if(b){b=w[b+h|0]}else{b=56}e=a+20|0;d=v[a+868>>2];if((d|0)==16){c=a+880|0;F1(c,e,v[a+788>>2],w[a+852|0],a+596|0);F1(c,a+56|0,v[a+792>>2],w[a+853|0],a+608|0);F1(c,a+92|0,v[a+796>>2],w[a+854|0],a+620|0);F1(c,a+128|0,v[a+800>>2],w[a+855|0],a+632|0);F1(c,a+164|0,v[a+804>>2],w[a+856|0],a+644|0);F1(c,a+200|0,v[a+808>>2],w[a+857|0],a+656|0);F1(c,a+236|0,v[a+812>>2],w[a+858|0],a+668|0);F1(c,a+272|0,v[a+816>>2],w[a+859|0],a+680|0);F1(c,a+308|0,v[a+820>>2],w[a+860|0],a+692|0);F1(c,a+344|0,v[a+824>>2],w[a+861|0],a+704|0);F1(c,a+380|0,v[a+828>>2],w[a+862|0],a+716|0);F1(c,a+416|0,v[a+832>>2],w[a+863|0],a+728|0);F1(c,a+452|0,v[a+836>>2],w[a+864|0],a+740|0);F1(c,a+488|0,v[a+840>>2],w[a+865|0],a+752|0);F1(c,a+524|0,v[a+844>>2],w[a+866|0],a+764|0);F1(c,a+560|0,v[a+848>>2],w[a+867|0],a+776|0);i=z[f+8>>2];n=z[f+4>>2];m=z[f>>2];d=0}v[a+868>>2]=d+1;c=e+B(d,36)|0;z[c+8>>2]=i;z[c+4>>2]=n;z[c>>2]=m;z[c+12>>2]=z[f+12>>2];z[c+16>>2]=z[f+16>>2];z[c+20>>2]=z[f+20>>2];z[c+24>>2]=z[f+24>>2];z[c+28>>2]=z[f+28>>2];z[c+32>>2]=z[f+32>>2];a=B(d,12)+a|0;v[a+596>>2]=v[g>>2];v[a+600>>2]=v[g+4>>2];v[a+604>>2]=v[g+8>>2];v[(e+(d<<2)|0)+768>>2]=h;t[(d+e|0)+832|0]=b;xa=f+48|0;return 1}function ww(a,b){var c=0,d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=0,G=0,H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0);h=xa-32|0;xa=h;E=v[a+168>>2];F=v[a+452>>2];G=v[a+456>>2];H=v[a+444>>2];l=v[a+264>>2];d=v[a+228>>2];a:{if(t[v[a+476>>2]]&1){v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;break a}I=z[a+560>>2];J=z[a+572>>2];K=z[a+584>>2];L=z[a+564>>2];M=z[a+576>>2];N=z[a+588>>2];O=z[a+568>>2];P=z[a+580>>2];Q=z[a+592>>2];R=z[a+620>>2];S=z[a+608>>2];T=z[a+596>>2];s=z[a+524>>2];n=z[a+528>>2];o=z[a+532>>2];U=z[a+624>>2];V=z[a+612>>2];W=z[a+600>>2];u=z[a+536>>2];w=z[a+540>>2];x=z[a+544>>2];X=z[a+628>>2];f=z[a+616>>2];Y=z[a+604>>2];y=z[a+548>>2];A=z[a+552>>2];g=z[l+20>>2];D=z[a+556>>2];e=z[l+24>>2];i=z[l+8>>2];Z=z[l+4>>2];j=z[l>>2];m=z[l+16>>2];v[b+12>>2]=0;q=C(-m);_=f;f=C(-Z);z[b+24>>2]=C(C(C(y*q)-C(A*g))-C(D*e))+C(C(C(_*f)-C(j*Y))-C(i*X));z[b+20>>2]=C(C(C(u*q)-C(w*g))-C(x*e))+C(C(C(V*f)-C(j*W))-C(i*U));z[b+16>>2]=C(C(C(s*q)-C(n*g))-C(o*e))+C(C(C(S*f)-C(j*T))-C(i*R));g=C(-g);o=C(C(C(C(x*f)-C(j*o))-C(i*D))+C(C(C(P*g)-C(m*O))-C(e*Q)));z[b+8>>2]=o;n=C(C(C(C(w*f)-C(j*n))-C(i*A))+C(C(C(M*g)-C(m*L))-C(e*N)));z[b+4>>2]=n;e=C(C(C(C(u*f)-C(j*s))-C(i*y))+C(C(C(J*g)-C(m*I))-C(e*K)));z[b>>2]=e;z[d>>2]=e+z[d>>2];z[d+4>>2]=n+z[d+4>>2];z[d+8>>2]=o+z[d+8>>2];z[d+16>>2]=z[b+16>>2]+z[d+16>>2];z[d+20>>2]=z[b+20>>2]+z[d+20>>2];z[d+24>>2]=z[b+24>>2]+z[d+24>>2]}v[b+28>>2]=0;r=v[a+448>>2];if(r>>>0>=2){k=1;while(1){p=k<<5;Yw(h,(B(k,160)+F|0)+120|0,v[a+348>>2]+B(k,112)|0,v[a+360>>2]+B(k,36)|0,v[a+384>>2]+B(k,76)|0,p+l|0,(v[(B(k,80)+G|0)+72>>2]<<2)+E|0,(v[(p+H|0)+24>>2]<<5)+b|0);c=b+p|0;j=z[h>>2];z[c>>2]=j;f=z[h+4>>2];z[c+4>>2]=f;e=z[h+8>>2];v[c+12>>2]=0;z[c+8>>2]=e;g=z[h+16>>2];z[c+16>>2]=g;m=z[h+20>>2];z[c+20>>2]=m;i=z[h+24>>2];v[c+28>>2]=0;z[c+24>>2]=i;c=d+p|0;z[c>>2]=j+z[c>>2];z[c+4>>2]=f+z[c+4>>2];z[c+8>>2]=e+z[c+8>>2];z[c+16>>2]=g+z[c+16>>2];z[c+20>>2]=m+z[c+20>>2];z[c+24>>2]=i+z[c+24>>2];k=k+1|0;if((r|0)!=(k|0)){continue}break}}I9(l,0,r<<5);xa=h+32|0}function lz(a){a=a|0;var b=0,c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0),n=0,o=C(0),p=0,q=0,r=0,s=C(0),t=C(0),u=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=C(0);b=v[a+68>>2];u=v[a+48>>2]+B(b,112)|0;y=v[a+44>>2]+(b<<5)|0;b=b<<2;A=b+v[a+40>>2]|0;D=b+v[a+36>>2]|0;E=b+v[a+32>>2]|0;F=v[a+64>>2];G=v[a+60>>2];i=z[a+52>>2];n=v[a+72>>2];if(n>>>0>=2){k=1;while(1){H=k-1|0;r=H<<2;b=v[r+E>>2];l=x[b+30>>1];j=C(C(1)-C(i*z[b+108>>2]));c=C(C(1)-C(i*z[b+104>>2]));s=z[b+80>>2];d=z[b+64>>2];m=z[b+100>>2];t=z[b+88>>2];J=z[b+84>>2];e=z[b+72>>2];f=z[b+68>>2];if(!w[b+157|0]){g=z[v[D+r>>2]+76>>2];e=C(e+C(g*C(i*z[a+84>>2])));f=C(f+C(g*C(i*z[a+80>>2])));d=C(d+C(g*C(i*z[a+76>>2])))}o=z[b+96>>2];h=j>=C(0)?j:C(0);j=C(h*t);g=C(h*J);h=C(h*s);c=c>=C(0)?c:C(0);e=C(c*e);d=C(c*d);f=C(c*f);c=C(C(e*e)+C(C(d*d)+C(f*f)));if(c>m){c=C(K(C(m/c)));e=C(e*c);f=C(f*c);d=C(d*c)}c=C(C(j*j)+C(C(h*h)+C(g*g)));if(c>o){c=C(K(C(o/c)));j=C(j*c);h=C(h*c);g=C(g*c)}I=l>>>8|0;p=p>>>0>>0?I:p;l=l&255;q=l>>>0>q>>>0?l:q;z[b+88>>2]=j;z[b+84>>2]=g;z[b+80>>2]=h;z[b+72>>2]=e;z[b+68>>2]=f;z[b+64>>2]=d;cA(b- -64|0,b+80|0,z[b+124>>2],b+112|0,b,z[b+76>>2],z[b+128>>2],v[A+r>>2],z[b+92>>2],B(k,112)+u|0,w[b+158|0]);b=(H<<5)+y|0;v[b+12>>2]=0;v[b+28>>2]=0;k=k+1|0;if((n|0)!=(k|0)){continue}break}}k=n-1|0;b=v[(k<<2)+E>>2];j=C(C(1)-C(i*z[b+108>>2]));c=C(C(1)-C(i*z[b+104>>2]));o=z[b+80>>2];d=z[b+64>>2];m=z[b+100>>2];s=z[b+88>>2];t=z[b+84>>2];e=z[b+72>>2];f=z[b+68>>2];if(!w[b+157|0]){g=z[v[(k<<2)+D>>2]+76>>2];e=C(e+C(g*C(i*z[a+84>>2])));f=C(f+C(g*C(i*z[a+80>>2])));d=C(d+C(g*C(i*z[a+76>>2])))}i=z[b+96>>2];h=j>=C(0)?j:C(0);j=C(h*s);g=C(h*t);h=C(h*o);c=c>=C(0)?c:C(0);e=C(c*e);d=C(c*d);f=C(c*f);c=C(C(e*e)+C(C(d*d)+C(f*f)));if(c>m){c=C(K(C(m/c)));e=C(e*c);f=C(f*c);d=C(d*c)}a=x[b+30>>1];c=C(C(j*j)+C(C(h*h)+C(g*g)));if(c>i){i=C(K(C(i/c)));j=C(j*i);h=C(h*i);g=C(g*i)}z[b+88>>2]=j;z[b+84>>2]=g;z[b+80>>2]=h;z[b+72>>2]=e;z[b+68>>2]=f;z[b+64>>2]=d;cA(b- -64|0,b+80|0,z[b+124>>2],b+112|0,b,z[b+76>>2],z[b+128>>2],v[(k<<2)+A>>2],z[b+92>>2],B(n,112)+u|0,w[b+158|0]);b=(k<<5)+y|0;v[b+12>>2]=0;v[b+28>>2]=0;b=v[G>>2];k=a&255;k=k>>>0>q>>>0?k:q;v[G>>2]=(b|0)>(k|0)?b:k;b=v[F>>2];a=a>>>8|0;a=a>>>0>p>>>0?a:p;v[F>>2]=(a|0)<(b|0)?b:a}function dI(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,u=0,x=0,y=0,z=0,A=0;b=xa+-64|0;e=b;xa=b;t[a+60|0]=0;i=v[a+8>>2];a:{if(i>>>0<2){break a}p=i+1|0;c=p<<2;f=c>>>0>1024;t[e+60|0]=f;b:{if(c>>>0>=1025){g=t9(c,8887,903);break b}g=b-(c+15&-16)|0;xa=g}v[e+56>>2]=g;m=v[a+24>>2];b=v[m>>2];v[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=v[m+(d<<3)>>2];v[(d<<2)+g>>2]=j;b=d+1|0;r=v[m+(b<<3)>>2];v[(b<<2)+g>>2]=r;b=d+2|0;l=v[m+(b<<3)>>2];v[(b<<2)+g>>2]=l;o=d+3|0;b=v[m+(o<<3)>>2];v[(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=v[m+(d<<3)>>2];v[(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=RU(e+16|0);v[(i<<2)+g>>2]=-1;VU(l,g,p,1);b=v[a+8>>2];d:{if(b){v[e+4>>2]=b;v[e+8>>2]=b;c=b<<2;e:{if(!c){c=0;break e}f=v[37696];b=f+12|0;c=(u=b,x=c,y=Ba[v[v[f>>2]+20>>2]](f)|0?29035:63804,z=16608,A=553,s=v[v[b>>2]+8>>2],Ba[s](u|0,x|0,y|0,z|0,A|0)|0);b=v[e+4>>2]}v[e>>2]=c;if((b|0)<=0){break d}f=(b<<2)+c|0;b=v[a+4>>2];while(1){v[c>>2]=v[b>>2];b=b+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}break d}v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0}g=0;h=0;c=(i<<3)+48|0;if(c){b=v[37696];h=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,24422,8887,945)|0}c=i<<4;if(c){b=v[37696];g=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,24422,8887,946)|0}q=i>>>0>1?i:1;o=v[l+8>>2];d=0;while(1){b=d<<2;f=v[b+o>>2];v[b+v[a+4>>2]>>2]=v[v[e>>2]+(f<<2)>>2];c=(d<<3)+h|0;b=v[a+24>>2]+(f<<3)|0;v[c>>2]=v[b>>2];v[c+4>>2]=v[b+4>>2];k=v[a+28>>2]+(f<<4)|0;f=v[k>>2];c=v[k+4>>2];b=v[k+12>>2];j=(d<<4)+g|0;v[j+8>>2]=v[k+8>>2];v[j+12>>2]=b;v[j>>2]=f;v[j+4>>2]=c;d=d+1|0;if((q|0)!=(d|0)){continue}break}b=(i<<3)+h|0;v[b>>2]=-1;v[(p<<3)+h>>2]=-1;v[b+40>>2]=-1;v[b+32>>2]=-1;v[b+24>>2]=-1;v[b+16>>2]=-1;v[a+32>>2]=i;c=v[a+28>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+24>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[a+28>>2]=g;v[a+24>>2]=h;a=v[e+8>>2];f:{if((a|0)<0|!(a&2147483647)){break f}b=v[e>>2];if(!b){break f}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}SU(l);f=w[e+60|0]}if(!f){break a}u9(v[e+56>>2])}xa=e- -64|0}function RZ(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=C(0);D=xa-16|0;xa=D;n=z[e+8>>2];o=z[c+8>>2];s=C(n-o);L=v[a+16>>2];F=z[L+8>>2];i=C(F-o);p=z[e>>2];q=z[c>>2];t=C(p-q);G=z[L>>2];h=C(G-q);j=z[e+4>>2];r=z[c+4>>2];u=C(j-r);H=z[L+4>>2];g=C(H-r);E=C(C(s*i)+C(C(t*h)+C(u*g)));I=z[d+8>>2];w=C(I-o);k=z[d>>2];x=C(k-q);m=z[d+4>>2];y=C(m-r);l=C(C(w*i)+C(C(x*h)+C(y*g)));a:{if(l<=C(0)){c=0;i=r;h=o;e=0;g=q;if(E<=C(0)){break a}}i=C(F-I);h=C(G-k);g=C(H-m);J=C(C(s*i)+C(C(t*h)+C(u*g)));c=0;b:{A=C(C(w*i)+C(C(x*h)+C(y*g)));if(!(A>=C(0))){break b}e=1;if(!(A>=J)){break b}i=m;h=I;g=k;break a}M=C(C(l*J)-C(E*A));if(!(!(M<=C(0))|(!(A<=C(0))|!(l>=C(0))))){g=C(l/C(l-A));h=C(o+C(w*g));i=C(r+C(y*g));e=3;g=C(q+C(x*g));break a}i=C(F-n);h=C(G-p);g=C(H-j);K=C(C(w*i)+C(C(x*h)+C(y*g)));c:{g=C(C(s*i)+C(C(t*h)+C(u*g)));if(!(g>=C(0))){break c}e=2;if(!(g>=K)){break c}i=j;h=n;g=p;break a}l=C(C(K*E)-C(g*l));if(!(!(l<=C(0))|(!(g<=C(0))|!(E>=C(0))))){g=C(E/C(E-g));h=C(o+C(s*g));i=C(r+C(u*g));e=5;g=C(q+C(t*g));break a}d:{h=C(C(A*g)-C(J*K));if(!(h<=C(0))){break d}i=C(J-A);if(!(i>=C(0))){break d}g=C(K-g);if(!(g>=C(0))){break d}g=C(i/C(i+g));h=C(I+C(C(n-I)*g));i=C(m+C(C(j-m)*g));e=4;g=C(k+C(C(p-k)*g));break a}g=C(C(1)/C(M+C(h+l)));j=C(M*g);g=C(l*g);h=C(C(s*j)+C(o+C(w*g)));i=C(C(u*j)+C(r+C(y*g)));e=6;c=1;g=C(C(t*j)+C(q+C(x*g)))}m=C(h-F);n=C(g-G);p=C(i-H);k=C(C(m*m)+C(C(n*n)+C(p*p)));e:{if(k>=z[a+20>>2]){break e}h=C(C(x*u)-C(t*y));j=C(C(y*s)-C(u*w));g=C(C(w*t)-C(s*x));if(C(C(h*F)+C(C(j*G)+C(H*g)))C(9999999747378752e-20);i=d?m:h;z[D+8>>2]=i;h=d?p:g;z[D+4>>2]=h;g=d?n:j;z[D>>2]=g;if(c){PZ(a,D,k,b);e=v[a+2588>>2];if(e>>>0>63){break e}d=v[f+4>>2];c=v[f>>2];b=v[f+8>>2];v[a+2588>>2]=e+1;a=B(e,12)+a|0;v[a+2600>>2]=b;a=a+2592|0;v[a>>2]=c;v[a+4>>2]=d;break e}d=v[a+24>>2];if(d>>>0>63){break e}v[a+24>>2]=d+1;c=(d<<3)+a|0;v[c+2080>>2]=d;z[c+2076>>2]=k;c=(d<<5)+a|0;z[c+36>>2]=i;z[c+32>>2]=h;z[c+28>>2]=g;v[c+48>>2]=v[f>>2];v[c+52>>2]=v[f+4>>2];a=v[f+8>>2];v[c+44>>2]=b;v[c+40>>2]=e;v[c+56>>2]=a}xa=D+16|0}function wL(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a>>2]=131836;c=v[a+88>>2];if(c){d=v[c>>2];if(d){b=v[c+12>>2];while(1){d=d-1|0;e=v[b+28>>2];if(e){nL(e);f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e);v[b+28>>2]=0}b=b+40|0;if(d){continue}break}}v[c+8>>2]=-1;v[c>>2]=0;v[c+4>>2]=-1;d=c+92|0;b=0;while(1){v[(c+B(b,12)|0)+96>>2]=0;v[(c+(b<<2)|0)+3176>>2]=-1;e=b|1;if((e|0)==257){v[c+28>>2]=0;v[c+16>>2]=0;AC(c+36|0);b=v[c+76>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+76>>2]=0;v[c+80>>2]=0;b=v[c+84>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+84>>2]=0;v[c+88>>2]=0;v[c+4208>>2]=0;b=v[c+4216>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+4216>>2]=0;v[c+4220>>2]=0}else{v[(d+B(e,12)|0)+4>>2]=0;f=e<<2;e=c+3176|0;v[f+e>>2]=-1;f=b|2;v[(d+B(f,12)|0)+4>>2]=0;v[e+(f<<2)>>2]=-1;f=b|3;v[(d+B(f,12)|0)+4>>2]=0;v[e+(f<<2)>>2]=-1;b=b+4|0;continue}break}b=c+4216|0;d=v[b>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}v[b>>2]=0;v[b+4>>2]=0;b=v[c+4212>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[c+4204>>2];if(!b){break a}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=c+3176|0;d=c+92|0;while(1){b=b-12|0;e=v[b+8>>2];b:{if((e|0)<0|!(e&2147483647)){break b}e=v[b>>2];if(!e){break b}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}if((b|0)!=(d|0)){continue}break}b=v[c+84>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+84>>2]=0;v[c+88>>2]=0;b=v[c+76>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+76>>2]=0;v[c+80>>2]=0;AC(c+36|0);b=v[c+32>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[c+24>>2];if(!b){break c}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[c+12>>2];if(!b){break d}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c);v[a+88>>2]=0}c=v[a+92>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+120>>2];e:{if((c|0)<0|!(c&2147483647)){break e}c=v[a+112>>2];if(!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+108>>2];f:{if((c|0)<0|!(c&2147483647)){break f}c=v[a+100>>2];if(!c){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[a- -64>>2]=0;v[a+48>>2]=126144;v[a+24>>2]=0;v[a+8>>2]=126144;return a|0}function K$(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0),x=0,y=0;h=xa-288|0;xa=h;a:{if(c==C(0)){i=z[e+60>>2];p=w[e+64|0];q=v[e+28>>2];r=v[e+24>>2];v[h+36>>2]=143304;v[h+32>>2]=143280;x=h,y=Vaa(r,q),v[x+48>>2]=y;v[h+52>>2]=Aa;v[h+44>>2]=p>>>1&1;v[h+56>>2]=g;v[h+40>>2]=f;k=z[a>>2];z[h+60>>2]=k;j=z[a+4>>2];z[h- -64>>2]=j;l=z[a+8>>2];z[h+68>>2]=l;n=z[b>>2];z[h+72>>2]=n;s=z[b+4>>2];z[h+76>>2]=s;o=z[b+8>>2];v[h+112>>2]=0;v[h+116>>2]=0;u[h+108>>1]=0;v[h+104>>2]=-1;z[h+88>>2]=i;t[h+84|0]=d;z[h+80>>2]=o;v[h+120>>2]=0;v[h+124>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+144>>2]=0;v[h+136>>2]=2139095039;v[h+140>>2]=0;v[h+96>>2]=0;v[h+100>>2]=0;z[h+92>>2]=c;a=v[f+4>>2];t[h+208|0]=0;t[h+209|0]=(a|0)==1;c=z[g>>2];i=z[g+4>>2];m=z[g+8>>2];v[h+268>>2]=0;z[h+264>>2]=o;z[h+260>>2]=s;v[h+252>>2]=0;z[h+248>>2]=l;z[h+244>>2]=j;v[h+236>>2]=0;z[h+232>>2]=m;z[h+228>>2]=i;z[h+256>>2]=n;z[h+240>>2]=k;z[h+224>>2]=c;z[h+24>>2]=l-m;z[h+20>>2]=j-i;z[h+16>>2]=k-c;z[h+8>>2]=l+m;z[h+4>>2]=j+i;z[h>>2]=k+c;B0(e+112|0,h+16|0,h,h+32|4);v[h+36>>2]=143304;v[h+32>>2]=143280;if(!w[h+208|0]){break a}a=v[h+40>>2];Ba[v[v[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=z[e+60>>2];p=w[e+64|0];q=v[e+28>>2];r=v[e+24>>2];v[h+36>>2]=143464;v[h+56>>2]=g;v[h+32>>2]=143440;x=h,y=Vaa(r,q),v[x+48>>2]=y;v[h+52>>2]=Aa;v[h+44>>2]=p>>>1&1;v[h+40>>2]=f;l=z[a>>2];z[h+60>>2]=l;i=z[a+4>>2];z[h- -64>>2]=i;m=z[a+8>>2];z[h+68>>2]=m;o=z[b>>2];z[h+72>>2]=o;n=z[b+4>>2];z[h+76>>2]=n;k=z[b+8>>2];v[h+112>>2]=0;v[h+116>>2]=0;u[h+108>>1]=0;v[h+104>>2]=-1;z[h+88>>2]=j;t[h+84|0]=d;z[h+80>>2]=k;v[h+120>>2]=0;v[h+124>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+144>>2]=0;v[h+136>>2]=2139095039;v[h+140>>2]=0;v[h+96>>2]=0;v[h+100>>2]=0;z[h+92>>2]=c;d=v[f+4>>2];t[h+208|0]=0;t[h+209|0]=(d|0)==1;d=v[g+4>>2];f=v[g>>2];j=z[g+8>>2];v[h+268>>2]=0;z[h+264>>2]=k;z[h+260>>2]=n;v[h+252>>2]=0;z[h+248>>2]=m;z[h+244>>2]=i;v[h+236>>2]=0;z[h+232>>2]=j;z[h+256>>2]=o;z[h+240>>2]=l;v[h+224>>2]=f;v[h+228>>2]=d;A0(e+112|0,a,b,h+32|0,g,c);v[h+36>>2]=143464;v[h+32>>2]=143440;if(!w[h+208|0]){break a}a=v[h+40>>2];Ba[v[v[a>>2]>>2]](a,h+96|0,h+160|0,h+172|0,h+184|0,h+92|0,h+196|0)|0}xa=h+288|0}function I6(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=v[37696];d=Ba[v[v[e>>2]+20>>2]](e)|0?33161:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,36,d,8358,39)|0;i=xa-16|0;xa=i;v[e>>2]=145984;J6(e+8|0);d=v[37696];c=v[37696];d=(m=d+12|0,n=28,o=Ba[v[v[c>>2]+20>>2]](c)|0?38053:63804,p=16913,q=103,l=v[v[d+12>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0);v[e+16>>2]=d;v[d>>2]=0;d=v[37696];c=v[37696];d=(q=d+12|0,p=80,o=Ba[v[v[c>>2]+20>>2]](c)|0?38399:63804,n=19659,m=95,l=v[v[d+12>>2]+8>>2],Ba[l](q|0,p|0,o|0,n|0,m|0)|0);v[e+20>>2]=d;t[d+76|0]=0;v[d+72>>2]=0;d=0;u[e+32>>1]=0;v[e+28>>2]=a;a:{b:{if(!b){b=a<<2;if(b){h=v[37696];h=Ba[v[v[h+12>>2]+8>>2]](h+12|0,b,24422,8358,64)|0}else{h=0}if(!a){v[e+24>>2]=0;v[e+4>>2]=0;break b}b=I9(h,0,b)}c=B(a,28);if(c){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,8358,71)|0}v[e+4>>2]=d;c=a<<5;c:{if(!c){c=0;break c}d=v[37696];c=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,8358,73)|0;d=v[e+4>>2]}v[e+24>>2]=c;if(!d){break b}d:{if(!a){break d}d=0;while(1){g=xa-16|0;xa=g;k=B(d,28);f=k+v[e+4>>2]|0;v[f>>2]=145964;c=v[37696];j=Ba[v[v[c>>2]+20>>2]](c)|0?38275:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,36,j,19583,229)|0;v[f+4>>2]=c;v[c+16>>2]=0;v[c+8>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c>>2]=0;v[c+4>>2]=0;v[c+32>>2]=22514;v[c+12>>2]=0;v[f>>2]=145876;J6(f+8|0);c=v[37696];j=v[37696];c=(m=c+12|0,n=28,o=Ba[v[v[j>>2]+20>>2]](j)|0?38053:63804,p=16913,q=103,l=v[v[c+12>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0);v[f+20>>2]=c;v[c>>2]=0;v[f+24>>2]=0;xa=g+16|0;v[(k+v[e+4>>2]|0)+16>>2]=e;d=d+1|0;if((d|0)!=(a|0)){continue}break}if(!a){break d}d=0;while(1){c=v[e+24>>2];if(c){v[i>>2]=d;c=c+(d<<5)|0;s9(c,32,24336,i);v[v[(v[e+4>>2]+B(d,28)|0)+4>>2]+32>>2]=c}c=B(d,28);f=v[(c+v[e+4>>2]|0)+4>>2];g=v[(d<<2)+b>>2];if(g){v[f+28>>2]=g}g=xa-48|0;xa=g;f=c+v[e+4>>2]|0;c=v[f+4>>2];e:{if(v[c+16>>2]){break e}if(!(v[c>>2]|(v[c+4>>2]|!f))){v[c+4>>2]=f}f=v[c+12>>2];v[c+12>>2]=(f|0)==1?1:f;if(!f){while(1){f=v[c+12>>2];v[c+12>>2]=(f|0)==1?1:f;if(!f){continue}break}}if(!v[c+32>>2]){break e}}xa=g+48|0;d=d+1|0;if((d|0)!=(a|0)){continue}break}}if(!h){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,h);break a}v[e+28>>2]=0}xa=i+16|0;return e|0}function sv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0);i=z[d+8>>2];F=z[c+24>>2];G=z[d+24>>2];j=C(F-G);p=z[d>>2];H=z[c+16>>2];I=z[d+16>>2];m=C(H-I);q=z[d+4>>2];J=z[c+20>>2];L=z[d+20>>2];n=C(J-L);k=C(C(i*j)+C(C(p*m)+C(q*n)));s=z[d+12>>2];u=C(C(s*s)+C(-.5));l=C(C(C(u*j)-C(s*C(C(p*n)-C(m*q))))+C(i*k));l=C(l+l);t=z[b+12>>2];w=l>2];A=o>2];n=kw?n:w;D=C(k-n);M=C(C(y*y)+C(C(B*B)+C(D*D)));N=z[a+4>>2];w=C(N+z[e>>2]);e=M=(k>C(0)?k:C(-k)))|(!(t>=(l>C(0)?l:C(-l)))|!(r>=(o>C(0)?o:C(-o)))))){a=v[g+4096>>2];v[g+4096>>2]=a+1;l=j>=C(0)?C(1):C(-1);k=l;o=C(l*C(0));j=C(t-(j>C(0)?j:C(-j)));l=C(r-(m>C(0)?m:C(-m)));t=C(x-(n>C(0)?n:C(-n)));c=j==j&(l>=j&t>=j);o=c?k:o;n=n>=C(0)?C(1):C(-1);k=C(n*C(0));d=l==l&l<=t&j>=l;n=c?k:d?k:n;m=m>=C(0)?C(1):C(-1);k=C(m*C(0));m=c?k:d?m:k;k=C(C(i*o)+C(C(p*m)+C(q*n)));b=(a<<6)+g|0;r=C(C(C(u*o)+C(s*C(C(p*n)+C(m*w))))+C(i*k));r=C(r+r);z[b+8>>2]=r;i=C(C(C(u*n)+C(s*C(C(i*m)+C(o*A))))+C(q*k));x=C(i+i);z[b+4>>2]=x;i=C(C(p*k)+C(C(u*m)+C(s*C(C(q*o)+C(n*E)))));p=C(i+i);z[b>>2]=p;i=c?j:d?l:t;z[b+16>>2]=H+C(i*p);p=C(F+C(i*r));q=C(J+C(i*x));i=C(-i);b=b+16|0;break a}a=v[g+4096>>2];v[g+4096>>2]=a+1;b=(a<<6)+g|0;x=C(C(i*j)+C(C(p*m)+C(q*n)));l=C(C(p*x)+C(C(u*m)+C(s*C(C(q*j)+C(n*E)))));z[b+16>>2]=I+C(l+l);l=C(C(1)/C(K(M)));o=C(y*l);k=C(B*l);t=C(D*l);r=C(C(i*o)+C(C(p*k)+C(q*t)));y=C(C(C(u*o)+C(s*C(C(p*t)+C(k*w))))+C(i*r));z[b+8>>2]=y+y;y=C(C(q*r)+C(C(u*t)+C(s*C(C(i*k)+C(o*A)))));z[b+4>>2]=y+y;o=C(C(p*r)+C(C(u*k)+C(s*C(C(q*o)+C(t*E)))));z[b>>2]=o+o;p=C(C(C(u*j)+C(s*C(C(p*n)+C(m*w))))+C(i*x));p=C(G+C(p+p));i=C(C(C(u*n)+C(s*C(C(i*m)+C(j*A))))+C(q*x));q=C(L+C(i+i));i=C(C(1)/l);b=b+16|0}v[b+12>>2]=0;z[b+8>>2]=p;z[b+4>>2]=q;a=(a<<6)+g|0;v[a+52>>2]=-1;z[a+12>>2]=i-N}return e|0}function yD(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;v[a+4>>2]=0;v[a+8>>2]=1;v[a+12>>2]=0;v[a+16>>2]=0;v[a>>2]=129964;v[a+20>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;f=a+52|0;v[f>>2]=129748;e=f+4|0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=1;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+40>>2]=1061158912;v[e+44>>2]=-1;h=e+16|0;YC(h,64);v[e+80>>2]=0;v[e+84>>2]=0;v[e+72>>2]=0;v[e+76>>2]=0;g=e- -64|0;v[g>>2]=0;v[g+4>>2]=0;v[e+56>>2]=0;v[e+60>>2]=0;v[e+96>>2]=0;v[e+100>>2]=0;v[e+88>>2]=1061158912;v[e+92>>2]=-1;YC(g,64);v[e+116>>2]=0;v[e+108>>2]=0;v[e+112>>2]=0;g=a+284|0;v[e+104>>2]=g;if(y[e+36>>2]<=255){YC(h,256)}if(y[e+84>>2]<=255){YC(e- -64|0,256)}if(!(v[e+116>>2]&2147483616)){ZC(e+108|0,32)}v[f+128>>2]=0;v[f+132>>2]=0;v[f+124>>2]=g;v[f+136>>2]=0;v[f+140>>2]=0;v[f+144>>2]=0;v[f+148>>2]=0;v[f+160>>2]=0;v[f+164>>2]=0;v[f+152>>2]=1061158912;v[f+156>>2]=-1;h=f+128|0;lD(h,64);v[f+168>>2]=0;v[f+172>>2]=0;t[f+212|0]=0;v[f+176>>2]=0;v[f+180>>2]=0;v[f+184>>2]=0;v[f+188>>2]=0;v[f+192>>2]=0;v[f+196>>2]=0;v[f+200>>2]=0;v[f+204>>2]=0;v[f+208>>2]=32;e=v[37696];k=f,l=Ba[v[v[e+12>>2]+8>>2]](e+12|0,792,24422,8015,60)|0,v[k+196>>2]=l;i=v[f+208>>2];g=i<<3;if(g){e=v[37696];j=Ba[v[v[e+12>>2]+8>>2]](e+12|0,g,24422,8015,61)|0;i=v[f+208>>2]}v[f+200>>2]=j;if(y[f+148>>2]>>0){lD(h,i)}g=v[37696];e=Ba[v[v[g>>2]+20>>2]](g)|0?44169:63804;k=f,l=IB(Ba[v[v[g+12>>2]+8>>2]](g+12|0,64,e,8015,65)|0),v[k+168>>2]=l;if(v[f+208>>2]){j=v[f+200>>2];i=0;while(1){g=i<<3;v[(g+j|0)+4>>2]=0;h=v[37696];e=Ba[v[v[h>>2]+20>>2]](h)|0?44169:63804;e=IB(Ba[v[v[h+12>>2]+8>>2]](h+12|0,64,e,8015,71)|0);j=v[f+200>>2];v[g+j>>2]=e;i=i+1|0;if(i>>>0>2]){continue}break}}v[a+280>>2]=0;v[a+268>>2]=0;v[a+272>>2]=100;v[a+284>>2]=0;v[a+288>>2]=0;v[a+308>>2]=-1;v[a+300>>2]=0;v[a+304>>2]=0;v[a+292>>2]=0;v[a+296>>2]=0;v[a+328>>2]=0;v[a+332>>2]=0;v[a+320>>2]=0;v[a+324>>2]=0;v[a+312>>2]=0;v[a+316>>2]=0;v[a+340>>2]=0;v[a+344>>2]=0;t[a+337|0]=0;t[a+338|0]=0;t[a+336|0]=b;v[a+348>>2]=0;v[a+352>>2]=0;v[a+356>>2]=0;v[a+360>>2]=0;v[a+368>>2]=c;v[a+372>>2]=d;return a}function X1(a,b,c,d,e,f,g,h,i,j,k,l){var m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0);p=xa-48|0;xa=p;H=z[j+12>>2];I=z[j+8>>2];J=z[j+4>>2];L=z[j>>2];a:{b:{c:{if(!v[a+16>>2]){f=0;u=C(34028234663852886e22);break c}M=z[f+56>>2];u=z[b+8>>2];m=z[b>>2];n=z[b+4>>2];T=C(M+C(C(z[f+40>>2]*u)+C(C(z[f+8>>2]*m)+C(n*z[f+24>>2]))));N=z[f+52>>2];U=C(N+C(C(z[f+36>>2]*u)+C(C(z[f+4>>2]*m)+C(n*z[f+20>>2]))));O=z[f+48>>2];V=C(O+C(C(z[f+32>>2]*u)+C(C(z[f>>2]*m)+C(n*z[f+16>>2]))));P=z[b+56>>2];W=C(-P);Q=z[b+52>>2];X=C(-Q);R=z[b+48>>2];Y=C(-R);S=z[b+44>>2];u=C(34028234663852886e22);b=0;f=0;while(1){F=v[a+24>>2]+B(b,20)|0;Z=z[F+12>>2];q=v[a+28>>2]+B(w[F+19|0],12)|0;_=z[q+8>>2];$=z[q>>2];aa=z[q+4>>2];q=v[c+40>>2];m=z[q+36>>2];n=z[q+40>>2];t=z[F>>2];s=z[q+20>>2];x=z[F+4>>2];o=z[q+24>>2];E=z[F+8>>2];r=z[q+32>>2];A=z[q+8>>2];D=z[q>>2];G=z[q+4>>2];ba=z[q+16>>2];ca=z[e+40>>2];da=z[e+8>>2];ea=z[e+24>>2];fa=z[e+32>>2];ga=z[e>>2];ha=z[e+16>>2];ia=z[e+36>>2];ja=z[e+4>>2];ka=z[e+20>>2];v[p+12>>2]=0;m=C(C(n*E)+C(C(r*t)+C(x*m)));n=C(C(A*E)+C(C(D*t)+C(x*G)));s=C(C(o*E)+C(C(ba*t)+C(x*s)));o=C(C(1)/C(K(C(C(m*m)+C(C(n*n)+C(s*s))))));m=C(m*o);n=C(n*o);s=C(s*o);r=C(C(ia*m)+C(C(ja*n)+C(ka*s)));z[p+4>>2]=r;A=C(C(fa*m)+C(C(ga*n)+C(ha*s)));z[p>>2]=A;D=C(C(ca*m)+C(C(da*n)+C(s*ea)));z[p+8>>2]=D;G=C(C(T*m)+C(C(V*n)+C(U*s)));r=C(C(D*(D>C(0)?P:W))+C(C(A*(A>C(0)?R:Y))+C(r*(r>C(0)?Q:X))));A=r>S?r:S;D=C(G+A);r=C(o*C(-Z));o=C(C(C(E*_)+C(C(t*$)+C(aa*x)))*o);t=C(G-A);d:{if(C((r>D?D:r)-(o>t?o:t))>u){break d}Ba[v[v[d>>2]+12>>2]](d,p,p+32|0,p+16|0);x=C(C(M*m)+C(C(O*n)+C(N*s)));t=C(x+z[p+32>>2]);z[p+32>>2]=t;x=C(x+z[p+16>>2]);z[p+16>>2]=x;E=z[g>>2];if(t>C(r+E)|o>C(x+E)){break b}o=C(r-t);if(!(o>>0>2]){continue}break}}if(z[h>>2]>u){z[j+12>>2]=H;z[j+8>>2]=I;z[j+4>>2]=J;z[j>>2]=L;z[h>>2]=u;v[l>>2]=k}v[i>>2]=f;a=1;break a}a=0}xa=p+48|0;return a}function m7(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);c=xa+-64|0;xa=c;h=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=h;h=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=h;D5(c+32|0,c,e,f,g);k=z[f+20>>2];d=24;m=z[f+16>>2];l=z[c+20>>2];r=z[c+16>>2];p=z[c+24>>2];z[b+8>>2]=p-z[f+24>>2];z[b+4>>2]=l-k;z[b>>2]=r-m;t=z[f+20>>2];D=z[f+24>>2];s=z[g+20>>2];y=z[g+24>>2];E=z[f+16>>2];A=z[g+16>>2];z[i+8>>2]=p;z[i+4>>2]=l;z[i>>2]=r;z[j+8>>2]=p;z[j+4>>2]=l;z[j>>2]=r;n=C(z[c+56>>2]-p);k=C(z[c+48>>2]-r);o=C(z[c+52>>2]-l);m=C(K(C(C(n*n)+C(C(k*k)+C(o*o)))));if(m>C(0)){q=C(C(1)/m);n=C(n*q);o=C(o*q);k=C(k*q)}b=x[e+100>>1];u[a+76>>1]=16;f=m>2]=n;o=f?C(0):o;z[a+36>>2]=o;q=f?C(1):k;z[a+32>>2]=q;z[a+8>>2]=n;z[a+4>>2]=o;z[a>>2]=q;k=C(r-A);s=C(l-s);A=C(C(k*o)-C(q*s));z[a+56>>2]=A;y=C(p-y);B=C(C(y*q)-C(n*k));z[a+52>>2]=B;s=C(C(s*n)-C(o*y));z[a+48>>2]=s;k=C(r-E);l=C(l-t);r=C(C(k*o)-C(q*l));z[a+24>>2]=r;p=C(p-D);t=C(C(p*q)-C(n*k));z[a+20>>2]=t;p=C(C(l*n)-C(o*p));z[a+16>>2]=p;if(b&8){u[a+76>>1]=17;z[a+64>>2]=z[e+92>>2];z[a+68>>2]=z[e+96>>2];d=25}xa=c- -64|0;k=z[e+84>>2];l=z[e+80>>2];a:{if(!((b&6)!=6|k!=l)){k=C(m-k);m=z[e+88>>2];b:{if(k>m){l=C(k-m);break b}l=C(0);if(!(k>2]=l;b=1;break a}f=b&4;c:{d:{e:{if(b&2){if(k>2];v[a+60>>2]=0;z[a+12>>2]=C(m-k)-n;b=1;break a}if(!f){break d}if(m>2]=q;u[a+76>>1]=d;v[a+60>>2]=2139095039;v[a+44>>2]=0;z[a+136>>2]=A;z[a+132>>2]=B;z[a+128>>2]=s;z[a+120>>2]=n;z[a+116>>2]=o;z[a+112>>2]=q;z[a+104>>2]=r;z[a+100>>2]=t;z[a+96>>2]=p;z[a+88>>2]=n;z[a+84>>2]=o;z[a+12>>2]=m-l;if(w[e+100|0]&8){z[a+144>>2]=z[e+92>>2];z[a+148>>2]=z[e+96>>2];k=z[e+84>>2];b=25}else{b=24}u[a+156>>1]=b;v[a+140>>2]=0;v[a+124>>2]=-8388609;z[a+92>>2]=m-k;b=2;break a}b=1;if(!f){break a}if(!(m>2];v[a+44>>2]=0;z[a+12>>2]=k+C(m-l);b=1;break a}u[a+76>>1]=d;v[a+60>>2]=0;v[a+44>>2]=-8388609;z[a+12>>2]=m-k;b=0;break a}u[a+76>>1]=d;v[a+60>>2]=2139095039;v[a+44>>2]=0;z[a+12>>2]=m-l;b=0}return b|0}function Nj(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(v[a+40>>2]){a9(v[37696],8,19068,233,74192,0);aC(v[a+40>>2],a)}c=a+20|0;d=x[c+4>>1];e=v[v[37389]+476>>2];OU(c,b,e);g=c+8|0;OU(g,-1,e);e=uh(a);if(!(!e|!(w[(w[b+36|0]&64?v[b+40>>2]+52|0:b+112|0)|0]&2))){f=e+5584|0;d=d<<2;e=x[a+4>>1];e=GE(f,v[d+(x[c+4>>1]==1?c:v[c>>2])>>2]+32|0,v[((e<<2)+86240|0)+72>>2]+a|0,(e&65527)==5,v[c+16>>2],0,0);v[d+(x[c+12>>1]==1?g:v[c+8>>2])>>2]=e}h=b+32|0;i=xa-16|0;xa=i;g=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[g+4>>2];a:{if(c>>>0<1073741824){break a}j=v[g>>2];b:{if(!w[j+4785|0]){if(!(w[(c&1?v[g+8>>2]:(g+v[((c>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8)){c=h-16|0;v[c>>2]=v[c>>2]+1;QJ(g+v[((v[g+4>>2]>>>22&60)+89188|0)+12>>2]|0,h+16|0)}d=-2147483648;c=v[h+4>>2];if((c&251658240)==16777216){break b}break a}d=1073741824;if((c&-1073741824)==1073741824){c=v[h+4>>2];if((c&251658240)==16777216){break b}break a}d=v[g+8>>2];if(!d){d=Pu(j,c>>>24&15);v[g+8>>2]=d}c:{d:{e:{e=v[d+76>>2];if(!e){c=0;break e}f=v[d+72>>2];c=0;while(1){if(v[f+(c<<3)>>2]==(h|0)){break e}c=c+1|0;if((e|0)!=(c|0)){continue}break}break d}if((c|0)==(e|0)){break d}e=e-1|0;v[d+76>>2]=e;f=c<<3;c=v[d+72>>2];d=f+c|0;c=c+(e<<3)|0;v[d>>2]=v[c>>2];t[d+4|0]=w[c+4|0];break c}v[i+12>>2]=h;c=v[d+28>>2];if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){c=0;d=d+4|0;e=v[d+28>>2];k=e&2147483647?e<<1:1;f:{if(!k){break f}e=k<<2;if(!(w[d+16|0]|e>>>0>16)){t[d+16|0]=1;c=d;break f}if(!e){break f}c=v[37696];f=c+12|0;c=(o=f,p=e,q=Ba[v[v[c>>2]+20>>2]](c)|0?60027:63804,r=16608,s=553,n=v[v[f>>2]+8>>2],Ba[n](o|0,p|0,q|0,r|0,s|0)|0)}f=v[d+24>>2];m=(f<<2)+c|0;if((f|0)>0){l=v[d+20>>2];e=c;while(1){v[e>>2]=v[l>>2];l=l+4|0;e=e+4|0;if(m>>>0>e>>>0){continue}break}}v[m>>2]=v[i+12>>2];g:{if(v[d+28>>2]<0){break g}e=v[d+20>>2];if((e|0)==(d|0)){t[d+16|0]=0;break g}if(!e){break g}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,e);f=v[d+24>>2]}v[d+28>>2]=k;v[d+20>>2]=c;v[d+24>>2]=f+1;break c}v[v[d+24>>2]+(c<<2)>>2]=h;v[d+28>>2]=c+1}Xu(v[g>>2],g);v[g+4>>2]=v[g+4>>2]|8;d=1073741824;c=v[h+4>>2];if((c&251658240)!=16777216){break a}}v[h>>2]=j;v[h+4>>2]=c&1073741823|d}xa=i+16|0;Yt(b,a);return 1}function un(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0;a=xa-32|0;xa=a;i=v[37389];l=z[b+12>>2];m=z[b+8>>2];n=z[b>>2];o=z[b+4>>2];j=C(C(1)/C(K(C(C(l*l)+C(C(m*m)+C(C(n*n)+C(o*o)))))));z[a+12>>2]=l*j;z[a+8>>2]=m*j;z[a+4>>2]=o*j;z[a>>2]=n*j;z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];f=a;h=xa-16|0;xa=h;a=v[i+1264>>2];if(!a){k=xa-16|0;xa=k;d=i+976|0;b=v[d+284>>2];if(b){a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?45917:63804;g=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,18373,180)|0}else{g=0}v[k+12>>2]=g;a=v[d+268>>2];a:{if(a>>>0>=(v[d+272>>2]&2147483647)>>>0){a=0;b=d+4|0;c=v[b+268>>2];p=c&2147483647?c<<1:1;b:{if(!p){break b}c=p<<2;if(!(w[b+256|0]|c>>>0>256)){t[b+256|0]=1;a=b;break b}if(!c){break b}a=v[37696];e=Ba[v[v[a>>2]+20>>2]](a)|0?45917:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,e,16608,553)|0}e=v[b+264>>2];r=(e<<2)+a|0;if((e|0)>0){q=v[b+260>>2];c=a;while(1){v[c>>2]=v[q>>2];q=q+4|0;c=c+4|0;if(r>>>0>c>>>0){continue}break}}v[r>>2]=v[k+12>>2];c:{if(v[b+268>>2]<0){break c}c=v[b+260>>2];if((c|0)==(b|0)){t[b+256|0]=0;break c}if(!c){break c}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[b+264>>2]}v[b+268>>2]=p;v[b+260>>2]=a;v[b+264>>2]=e+1;break a}v[v[d+264>>2]+(a<<2)>>2]=g;v[d+268>>2]=a+1}a=(B(v[d+276>>2],112)+g|0)-112|0;if(g>>>0<=a>>>0){b=v[d+288>>2];while(1){v[a>>2]=b;b=a;a=a-112|0;if(g>>>0<=a>>>0){continue}break}v[d+288>>2]=b}xa=k+16|0;a=v[i+1264>>2]}v[i+1264>>2]=v[a>>2];b=i+1256|0;v[b>>2]=v[b>>2]+1;v[a+4>>2]=196614;v[a+8>>2]=0;v[a>>2]=124528;v[a+16>>2]=0;v[a+12>>2]=0;v[a>>2]=124260;v[a+8>>2]=0;v[a+20>>2]=0;v[a+24>>2]=65536;v[a+28>>2]=0;v[a+32>>2]=65536;v[a+36>>2]=-1;v[a+40>>2]=0;v[a+56>>2]=0;v[a>>2]=124056;v[a+48>>2]=0;v[a+52>>2]=0;b=a- -64|0;t[b+10|0]=0;t[b+9|0]=0;t[b+8|0]=1;v[b>>2]=0;v[b+4>>2]=16777215;u[a+110>>1]=0;t[a+109|0]=0;z[a+80>>2]=z[f>>2];z[a+84>>2]=z[f+4>>2];z[a+88>>2]=z[f+8>>2];z[a+92>>2]=z[f+12>>2];z[a+96>>2]=z[f+16>>2];z[a+100>>2]=z[f+20>>2];j=z[f+24>>2];t[a+108|0]=0;z[a+104>>2]=j;v[a+52>>2]=v[a+52>>2]&-251658241|83886080;v[h+8>>2]=a;b=Mm(i+600|0,h+8|0,h+15|0);if(!w[h+15|0]){v[b>>2]=v[h+8>>2]}xa=h+16|0;xa=f+32|0;return a|0}function Yw(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=0,t=0,u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=0,K=0;t=xa-32|0;i=z[b>>2];l=z[h+8>>2];j=z[b+8>>2];m=z[h>>2];r=C(C(C(i*l)-C(j*m))+z[h+20>>2]);n=j;j=z[h+4>>2];k=z[b+4>>2];n=C(C(C(n*j)-C(k*l))+z[h+16>>2]);k=C(C(C(k*m)-C(i*j))+z[h+24>>2]);s=v[e+72>>2];a:{if(!s){break a}i=z[c+32>>2];o=z[c+24>>2];p=z[c+28>>2];x=C(C(C(C(i*k)+C(C(o*n)+C(r*p)))+C(C(C(m*z[c+80>>2])+C(j*z[c+92>>2]))+C(l*z[c+104>>2])))+z[f+24>>2]);u=z[c+20>>2];w=z[c+12>>2];y=z[c+16>>2];H=C(C(C(C(u*k)+C(C(w*n)+C(r*y)))+C(C(C(m*z[c+76>>2])+C(j*z[c+88>>2]))+C(l*z[c+100>>2])))+z[f+20>>2]);A=z[c+8>>2];D=z[c>>2];E=z[c+4>>2];I=C(C(C(C(A*k)+C(C(D*n)+C(r*E)))+C(C(C(m*z[c+72>>2])+C(j*z[c+84>>2]))+C(l*z[c+96>>2])))+z[f+16>>2]);i=C(C(C(C(C(m*A)+C(j*u))+C(l*i))+C(C(C(n*z[c+44>>2])+C(r*z[c+56>>2]))+C(k*z[c+68>>2])))+z[f+8>>2]);p=C(C(C(C(C(m*E)+C(j*y))+C(l*p))+C(C(C(n*z[c+40>>2])+C(r*z[c+52>>2]))+C(k*z[c- -64>>2])))+z[f+4>>2]);o=C(C(C(C(C(m*D)+C(j*w))+C(l*o))+C(C(C(n*z[c+36>>2])+C(r*z[c+48>>2]))+C(k*z[c+60>>2])))+z[f>>2]);h=0;while(1){b=B(h,24)+e|0;z[(h<<2)+t>>2]=-C(C(C(z[b+20>>2]*i)+C(C(z[b+12>>2]*o)+C(p*z[b+16>>2])))+C(C(z[b+8>>2]*x)+C(C(z[b>>2]*I)+C(H*z[b+4>>2]))));h=h+1|0;if((s|0)!=(h|0)){continue}break}o=C(0);p=C(0);x=C(0);u=C(0);w=C(0);if(!s){break a}J=s&-4;F=s&3;f=0;K=s-1>>>0<3;while(1){c=0;i=C(0);b=0;if(!K){while(1){h=f<<2;q=c|3;y=C(z[h+(B(q,12)+d|0)>>2]*z[(q<<2)+t>>2]);q=c|2;A=C(z[h+(B(q,12)+d|0)>>2]*z[(q<<2)+t>>2]);q=c|1;i=C(y+C(A+C(C(z[h+(B(q,12)+d|0)>>2]*z[(q<<2)+t>>2])+C(C(z[h+(B(c,12)+d|0)>>2]*z[(c<<2)+t>>2])+i))));c=c+4|0;b=b+4|0;if((J|0)!=(b|0)){continue}break}}h=0;if(F){while(1){i=C(C(z[(B(c,12)+d|0)+(f<<2)>>2]*z[(c<<2)+t>>2])+i);c=c+1|0;h=h+1|0;if((F|0)!=(h|0)){continue}break}}b=(f<<2)+g|0;z[b>>2]=i+z[b>>2];b=B(f,24)+e|0;w=C(w+C(i*z[b+20>>2]));u=C(u+C(i*z[b+16>>2]));x=C(x+C(i*z[b+12>>2]));p=C(p+C(i*z[b+8>>2]));o=C(o+C(i*z[b+4>>2]));G=C(G+C(i*z[b>>2]));f=f+1|0;if((s|0)!=(f|0)){continue}break}}v[a+28>>2]=0;v[a+12>>2]=0;z[a+24>>2]=k+w;z[a+20>>2]=r+u;z[a+16>>2]=n+x;z[a+8>>2]=l+p;z[a+4>>2]=j+o;z[a>>2]=m+G}function tP(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=v[a+980>>2];f=v[j+316>>2];e=v[a+976>>2]+1792|0;k=v[j+320>>2];v[e>>2]=k+v[e>>2];l=v[a+2168>>2];d=xa-48|0;xa=d;if(k){while(1){e=f+B(m,12)|0;g=v[e+4>>2];i=v[e>>2];c=v[l+108>>2];h=v[l>>2];v[d+16>>2]=v[h+2184>>2];v[d+20>>2]=v[h+2172>>2];v[d+24>>2]=v[h+2176>>2];e=v[h+2188>>2];v[d+32>>2]=c;v[d+28>>2]=e;v[d+36>>2]=v[h+2192>>2];v[d+40>>2]=v[h+2196>>2];t[d+15|0]=0;eJ(d,d+16|0,g,i,-1,d+15|0,0);if(!(t[d|0]&1)){fJ(l,d,g,i,0,0,0,w[d+15|0])}m=m+1|0;if((k|0)!=(m|0)){continue}break}}xa=d+48|0;d=v[j+308>>2];j=v[j+304>>2];if(!(v[a+4680>>2]&2147483647)){uP(a+4672|0,1)}if(!(v[a+4692>>2]&2147483647)){vP(a+4684|0,1)}if(!(v[a+4704>>2]&2147483647)){wP(a+4696|0,1)}v[a+4700>>2]=1;v[a+4688>>2]=1;v[a+4676>>2]=1;e=v[a+976>>2];c=e+1792|0;v[c>>2]=d+v[c>>2];v[a+4284>>2]=b;v[a+4288>>2]=1;h=a+4264|0;if(b){Ba[v[v[b>>2]+16>>2]](b);v[a+4280>>2]=v[v[a+4284>>2]+16>>2];e=v[a+976>>2]}l=v[e+1156>>2];v[a+4716>>2]=0;a:{b:{if(d>>>0>(v[a+4720>>2]&2147483647)>>>0){g=a+4712|0;f=0;c:{if(!d){break c}e=d<<3;if(!e){break c}c=v[37696];b=c+12|0;f=(o=b,p=e,q=Ba[v[v[c>>2]+20>>2]](c)|0?35693:63804,r=16608,s=553,n=v[v[b>>2]+8>>2],Ba[n](o|0,p|0,q|0,r|0,s|0)|0)}c=v[g>>2];b=v[g+4>>2];if((b|0)>0){i=(b<<3)+f|0;b=c;e=f;while(1){u[e>>1]=x[b>>1];u[e+2>>1]=x[b+2>>1];v[e+4>>2]=v[b+4>>2];b=b+8|0;e=e+8|0;if(i>>>0>e>>>0){continue}break}}if(!(!c|v[g+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[g+8>>2]=d;v[g>>2]=f;v[a+4708>>2]=0;v[a+4716>>2]=d;b=a+4708|0;break b}v[a+4708>>2]=0;v[a+4716>>2]=d;if(!d){break a}b=a+4708|0}e=0;f=0;while(1){c=vr(l,192);k=v[a+4712>>2];m=v[a+2168>>2];g=v[a+20>>2];i=v[a+16>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=i;v[c+12>>2]=g;i=d-f|0;v[c+36>>2]=i>>>0<512?i:512;v[c+32>>2]=j+B(f,12);v[c+28>>2]=m;v[c>>2]=135508;v[c+168>>2]=k+(f<<3);I9(c+40|0,0,128);v[c+180>>2]=0;v[c+184>>2]=0;v[c+172>>2]=0;v[c+176>>2]=0;v[c+24>>2]=1;v[c+20>>2]=h;Ba[v[v[a+4264>>2]+16>>2]](h);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);d:{if(e){v[e+184>>2]=c;break d}v[b>>2]=c}e=c;f=f+512|0;if(d>>>0>f>>>0){continue}break}}a=v[a+4280>>2];Ba[v[v[a>>2]+72>>2]](a,h)}function GU(a,b,c,d,e,f){var g=0,h=0,i=C(0),j=C(0),k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,w=0,y=0;g=xa-128|0;xa=g;v[g+88>>2]=0;v[g+92>>2]=0;v[g+96>>2]=0;v[g+100>>2]=0;v[g+80>>2]=0;v[g+84>>2]=0;u[g+76>>1]=0;v[g+72>>2]=-1;v[g+64>>2]=0;v[g+68>>2]=0;v[g+112>>2]=0;v[g+104>>2]=2139095039;v[g+108>>2]=0;l=v[a+8>>2];a:{if(!l){j=C(34028234663852886e22);break a}n=v[35395];j=C(34028234663852886e22);while(1){m=B(k,72);h=m+v[a+4>>2]|0;o=v[h+60>>2];p=v[h+56>>2];z[g+60>>2]=z[h- -64>>2];v[g+52>>2]=p;v[g+56>>2]=o;v[g+48>>2]=3;q=A[h+16>>3];r=A[h+24>>3];s=A[h+32>>3];z[g+16>>2]=z[h+40>>2];z[g+20>>2]=z[h+44>>2];z[g+24>>2]=z[h+48>>2];i=z[h+52>>2];z[g+40>>2]=s;z[g+36>>2]=r;z[g+32>>2]=q;z[g+28>>2]=i;u[g+8>>1]=0;b:{if(!(Ba[n|0](g+48|0,g+16|0,c,d,e,g+8|0,1,g- -64|0)|0)){break b}i=z[g+104>>2];if(!(i>2];v[b>>2]=v[g+64>>2];v[b+4>>2]=h;v[b+8>>2]=v[g+72>>2];u[b+12>>1]=x[g+76>>1];z[b+16>>2]=z[g+80>>2];z[b+20>>2]=z[g+84>>2];z[b+24>>2]=z[g+88>>2];z[b+28>>2]=z[g+92>>2];z[b+32>>2]=z[g+96>>2];j=z[g+100>>2];z[b+40>>2]=i;z[b+36>>2]=j;v[b+60>>2]=v[g+124>>2];h=v[g+120>>2];v[b+52>>2]=v[g+116>>2];v[b+56>>2]=h;h=v[g+112>>2];v[b+44>>2]=v[g+108>>2];v[b+48>>2]=h;v[f>>2]=v[m+v[a+4>>2]>>2];j=i}k=k+1|0;if((l|0)!=(k|0)){continue}break}}l=v[a+20>>2];if(l){n=v[35394];k=0;while(1){m=k<<6;h=m+v[a+16>>2]|0;o=v[h+60>>2];p=v[h+56>>2];v[g+48>>2]=2;w=g,y=Vaa(p,o),v[w+52>>2]=y;v[g+56>>2]=Aa;q=A[h+16>>3];r=A[h+24>>3];s=A[h+32>>3];z[g+16>>2]=z[h+40>>2];z[g+20>>2]=z[h+44>>2];z[g+24>>2]=z[h+48>>2];i=z[h+52>>2];z[g+40>>2]=s;z[g+36>>2]=r;z[g+32>>2]=q;z[g+28>>2]=i;u[g>>1]=0;c:{if(!(Ba[n|0](g+48|0,g+16|0,c,d,e,g,1,g- -64|0)|0)){break c}i=z[g+104>>2];if(!(i>2];v[b>>2]=v[g+64>>2];v[b+4>>2]=h;v[b+8>>2]=v[g+72>>2];u[b+12>>1]=x[g+76>>1];z[b+16>>2]=z[g+80>>2];z[b+20>>2]=z[g+84>>2];z[b+24>>2]=z[g+88>>2];z[b+28>>2]=z[g+92>>2];z[b+32>>2]=z[g+96>>2];j=z[g+100>>2];z[b+40>>2]=i;z[b+36>>2]=j;v[b+60>>2]=v[g+124>>2];h=v[g+120>>2];v[b+52>>2]=v[g+116>>2];v[b+56>>2]=h;h=v[g+112>>2];v[b+44>>2]=v[g+108>>2];v[b+48>>2]=h;v[f>>2]=v[m+v[a+16>>2]>>2];j=i}k=k+1|0;if((l|0)!=(k|0)){continue}break}}xa=g+128|0;return t}function gt(a,b,c,d,e,f,g,h){var i=0,j=0,k=C(0),l=0,m=0;i=xa-224|0;xa=i;m=x[f+16>>1];v[i+220>>2]=-1;j=-1;if(e){j=mu(rh(v[e+4>>2]),v[e>>2],i+220|0)}l=a+5584|0;LE(l);v[c+64>>2]=0;t[c+52|0]=0;k=z[b+8>>2];d=x[d>>1];v[i+176>>2]=h;z[i+172>>2]=k>2]=g;u[i+160>>1]=d;v[i+156>>2]=c;v[i+152>>2]=b;v[i+148>>2]=a;v[i+144>>2]=126744;e=d&64;d=m&16;u[i+180>>1]=((e|d)!=0)<<6;t[i+182|0]=1;v[i+164>>2]=f;e=x[f+16>>1];v[i+216>>2]=0;t[i+212|0]=0;t[i+186|0]=0;t[i+185|0]=d>>>4;d=e>>>5&1;t[i+184|0]=d;t[i+183|0]=d;a:{b:{c:{if(!(v[c+60>>2]|(j|0)==-1)){e=HE(l,v[i+220>>2],j);t[i+186|0]=1;d=hV(i+8|0,v[b+12>>2],v[b+16>>2],z[b+20>>2]);z[i+188>>2]=z[d+72>>2];z[i+192>>2]=z[d+76>>2];z[i+196>>2]=z[d+80>>2];z[i+200>>2]=z[d+84>>2];z[i+204>>2]=z[d+88>>2];z[i+208>>2]=z[d+92>>2];v[i+216>>2]=d;t[i+212|0]=1;d=ht(i+144|0,i+140|0,e);v[i+216>>2]=0;t[i+186|0]=0;if(!d){break c}e=x[f+16>>1]}d=i+172|0;g=v[a+5656>>2];h=v[a+5620>>2];j=v[a+5584>>2];a=hV(i+8|0,v[b+12>>2],v[b+16>>2],z[b+20>>2]);z[i+188>>2]=z[a+72>>2];z[i+192>>2]=z[a+76>>2];z[i+196>>2]=z[a+80>>2];z[i+200>>2]=z[a+84>>2];z[i+204>>2]=z[a+88>>2];z[i+208>>2]=z[a+92>>2];v[i+216>>2]=a;t[i+212|0]=1;d:{if(!(e&1)){break d}if(Ba[v[v[j>>2]+32>>2]](j,a,v[b+4>>2],d,i+144|0)|0){break d}b=w[c+52|0];e=v[c+64>>2];d=(b|e)!=0;break b}e:{if(!(e&2)){break e}if(Ba[v[v[h>>2]+32>>2]](h,a,v[b+4>>2],d,i+144|0)|0){break e}d=(w[c+52|0]|v[c+64>>2])!=0;break a}b=v[b+4>>2];u[i>>1]=x[f+16>>1];a=Ba[v[v[g>>2]+32>>2]](g,a,b,d,i+144|0,i)|0;b=w[c+52|0];e=v[c+64>>2];d=(b|e)!=0;if(!a){break a}break b}b=w[c+52|0];e=v[c+64>>2];d=(b|e)!=0}if(b){if(!e){break a}k=z[c+44>>2];g=v[c+56>>2];f=0;while(1){a=g+B(f,48)|0;f:{if(k>2]){e=e-1|0;b=g+B(e,48)|0;h=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=h;v[a+8>>2]=v[b+8>>2];u[a+12>>1]=x[b+12>>1];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];z[a+32>>2]=z[b+32>>2];z[a+36>>2]=z[b+36>>2];z[a+40>>2]=z[b+40>>2];v[a+44>>2]=v[b+44>>2];break f}f=f+1|0}if((e|0)!=(f|0)){continue}break}v[c+64>>2]=e}if(!e){break a}if(!(Ba[v[v[c>>2]>>2]](c,v[c+56>>2],e)|0)){break a}v[c+64>>2]=0}Ba[v[v[c>>2]+4>>2]](c);xa=i+224|0;return d}function VQ(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;j=xa-48|0;xa=j;b=v[a+28>>2];m=v[a+20>>2];a=v[m+20>>2];v[b+3460>>2]=a;v[b+3464>>2]=1;if(a){Ba[v[v[a>>2]+16>>2]](a);v[b+3456>>2]=v[v[b+3460>>2]+16>>2]}a=b+3420|0;k=b+3440|0;v[a>>2]=k;v[b+3424>>2]=1;Ba[v[v[b+3440>>2]+16>>2]](k);v[b+3416>>2]=v[v[a>>2]+16>>2];v[b+3384>>2]=1;a=b+3380|0;l=b+3400|0;v[a>>2]=l;Ba[v[v[b+3400>>2]+16>>2]](l);v[b+3376>>2]=v[v[a>>2]+16>>2];h=xa-16|0;xa=h;d=v[b+976>>2]+24|0;a=v[d+168>>2];e=v[a+8>>2];i=v[a+4>>2];g=v[((e<<2)+i|0)-4>>2];f=v[a+16>>2];n=g-f|0;if((f|0)!=(g|0)){c=a+16|0;a:{if(e>>>0>=(v[a+12>>2]&2147483647)>>>0){Us(a+4|0,c);break a}v[i+(e<<2)>>2]=f;v[a+8>>2]=e+1}c=v[c>>2]}a=n>>>14|0;v[d+164>>2]=a;v[d+160>>2]=c;v[h+12>>2]=0;c=d+88|0;if(a>>>0>(v[c+8>>2]&2147483647)>>>0){zy(c,a)}e=v[c+4>>2];if((e|0)<(a|0)){f=v[c>>2];i=f+(a<<2)|0;e=f+(e<<2)|0;while(1){v[e>>2]=v[h+12>>2];e=e+4|0;if(i>>>0>e>>>0){continue}break}}v[c+4>>2]=a;e=v[d+164>>2];b:{if(!e){break b}c=0;a=0;if(e-1>>>0>=3){i=e&-4;f=0;while(1){v[v[d+88>>2]+(a<<2)>>2]=v[d+160>>2]+(a<<14);g=a|1;v[v[d+88>>2]+(g<<2)>>2]=v[d+160>>2]+(g<<14);g=a|2;v[v[d+88>>2]+(g<<2)>>2]=v[d+160>>2]+(g<<14);g=a|3;v[v[d+88>>2]+(g<<2)>>2]=v[d+160>>2]+(g<<14);a=a+4|0;f=f+4|0;if((i|0)!=(f|0)){continue}break}}e=e&3;if(!e){break b}while(1){v[v[d+88>>2]+(a<<2)>>2]=v[d+160>>2]+(a<<14);a=a+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}xa=h+16|0;a=v[b+976>>2];e=v[a+1824>>2];a=v[a+1024>>2];Ba[v[v[a>>2]+84>>2]](j+8|0,a);a=v[v[b+976>>2]+1024>>2];f=Ba[v[v[a>>2]+68>>2]](a)|0;d=v[b+980>>2];a=v[d+160>>2];h=v[v[b+2376>>2]+4>>2]+31>>>5|0;c=v[d+164>>2];if(h>>>0>(c&2147483647)>>>0){if(!(!a|(c|0)<0)){c=v[d+168>>2];Ba[v[v[c>>2]+12>>2]](c,a)}v[d+164>>2]=h;a=v[d+168>>2];a=Ba[v[v[a>>2]+8>>2]](a,h<<2,17999,461)|0;v[d+160>>2]=a;c=v[d+164>>2]}I9(a,0,c<<2);a=v[b+1004>>2];c=b+3360|0;Ba[v[v[a>>2]+4>>2]](a,v[b+1e3>>2],m,c,v[b+2480>>2],v[b+2484>>2],v[b+2492>>2],v[b+2496>>2],e,j+8|0,f,z[b+1080>>2],b+1052|0,v[d+164>>2]&2147483647);v[v[b+1e3>>2]+96>>2]=0;a=v[b+3456>>2];Ba[v[v[a>>2]+72>>2]](a,k);a=v[b+3416>>2];Ba[v[v[a>>2]+72>>2]](a,l);a=v[b+3376>>2];Ba[v[v[a>>2]+72>>2]](a,c);xa=j+48|0}function _E(a,b,c,d){var e=C(0);v[a>>2]=0;v[a+4>>2]=0;v[a+268>>2]=1120403456;v[a+20>>2]=0;v[a+24>>2]=0;v[a+16>>2]=1065353216;v[a+8>>2]=0;v[a+12>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+336>>2]=1028443341;v[a+320>>2]=1028443341;v[a+52>>2]=0;v[a+56>>2]=0;v[a+44>>2]=1065353216;v[a+48>>2]=0;u[a+262>>1]=0;u[a+264>>1]=0;u[a+266>>1]=0;t[a+273|0]=1;t[a+274|0]=3;t[a+272|0]=0;z[a+4>>2]=z[b>>2];z[a+8>>2]=z[b+4>>2];z[a+12>>2]=z[b+8>>2];z[a+16>>2]=z[b+12>>2];z[a+20>>2]=z[b+16>>2];z[a+24>>2]=z[b+20>>2];z[a+28>>2]=z[b+24>>2];z[a+32>>2]=z[c>>2];z[a+36>>2]=z[c+4>>2];z[a+40>>2]=z[c+8>>2];z[a+44>>2]=z[c+12>>2];z[a+48>>2]=z[c+16>>2];z[a+52>>2]=z[c+20>>2];e=z[c+24>>2];t[a+334|0]=0;v[a+284>>2]=0;v[a+288>>2]=1065353216;v[a+276>>2]=0;v[a+280>>2]=0;z[a+56>>2]=e;v[a+292>>2]=0;v[a+296>>2]=0;v[a+300>>2]=0;v[a+304>>2]=0;v[a+308>>2]=0;v[a+312>>2]=1065353216;v[a+316>>2]=1065353216;a:{if(d){v[a+108>>2]=0;v[a+112>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+68>>2]=0;v[a+72>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;v[a+228>>2]=0;v[a+204>>2]=0;v[a+116>>2]=0;v[a+120>>2]=4;v[a+132>>2]=0;v[a+136>>2]=4;v[a+124>>2]=0;v[a+128>>2]=0;v[a+232>>2]=0;v[a+236>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+148>>2]=0;v[a+152>>2]=4;v[a+140>>2]=0;v[a+144>>2]=0;v[a+216>>2]=0;v[a+164>>2]=0;v[a+168>>2]=4;v[a+240>>2]=0;v[a+156>>2]=0;v[a+160>>2]=0;v[a+244>>2]=0;v[a+248>>2]=0;v[a+180>>2]=0;v[a+184>>2]=4;v[a+172>>2]=0;v[a+176>>2]=0;v[a+220>>2]=0;v[a+224>>2]=0;v[a+196>>2]=0;v[a+200>>2]=4;v[a+188>>2]=0;v[a+192>>2]=0;v[a+360>>2]=0;v[a+352>>2]=0;v[a+356>>2]=0;v[a+344>>2]=0;v[a+348>>2]=0;v[a+336>>2]=0;v[a+340>>2]=0;break a}v[a+320>>2]=1028443341;v[a+336>>2]=1028443341;v[a+340>>2]=1045147567;v[a+76>>2]=1061752795;v[a+80>>2]=1061752795;v[a+68>>2]=1061752795;v[a+72>>2]=1061752795;v[a+360>>2]=1011666824;v[a+352>>2]=1045147567;v[a+356>>2]=-1102336081;v[a+344>>2]=1045147567;v[a+348>>2]=1011666824;v[a+60>>2]=-1085730853;v[a+64>>2]=1061752795}t[a+274|0]=4;u[a+332>>1]=0;v[a+324>>2]=0;v[a+328>>2]=0;v[a+252>>2]=1028443341;u[a+266>>1]=0;u[a+262>>1]=0;u[a+264>>1]=0}function _w(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=0,s=0,t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=0,J=0;s=xa-32|0;h=z[b>>2];k=z[g+8>>2];i=z[b+8>>2];l=z[g>>2];q=C(C(C(h*k)-C(i*l))+z[g+20>>2]);m=i;i=z[g+4>>2];j=z[b+4>>2];m=C(C(C(m*i)-C(j*k))+z[g+16>>2]);j=C(C(C(j*l)-C(h*i))+z[g+24>>2]);r=v[e+72>>2];a:{if(!r){break a}h=z[c+32>>2];n=z[c+24>>2];o=z[c+28>>2];w=C(C(C(C(h*j)+C(C(n*m)+C(q*o)))+C(C(C(l*z[c+80>>2])+C(i*z[c+92>>2]))+C(k*z[c+104>>2])))+z[f+24>>2]);t=z[c+20>>2];u=z[c+12>>2];x=z[c+16>>2];G=C(C(C(C(t*j)+C(C(u*m)+C(q*x)))+C(C(C(l*z[c+76>>2])+C(i*z[c+88>>2]))+C(k*z[c+100>>2])))+z[f+20>>2]);y=z[c+8>>2];A=z[c>>2];D=z[c+4>>2];H=C(C(C(C(y*j)+C(C(A*m)+C(q*D)))+C(C(C(l*z[c+72>>2])+C(i*z[c+84>>2]))+C(k*z[c+96>>2])))+z[f+16>>2]);h=C(C(C(C(C(l*y)+C(i*t))+C(k*h))+C(C(C(m*z[c+44>>2])+C(q*z[c+56>>2]))+C(j*z[c+68>>2])))+z[f+8>>2]);o=C(C(C(C(C(l*D)+C(i*x))+C(k*o))+C(C(C(m*z[c+40>>2])+C(q*z[c+52>>2]))+C(j*z[c- -64>>2])))+z[f+4>>2]);n=C(C(C(C(C(l*A)+C(i*u))+C(k*n))+C(C(C(m*z[c+36>>2])+C(q*z[c+48>>2]))+C(j*z[c+60>>2])))+z[f>>2]);g=0;while(1){b=B(g,24)+e|0;z[(g<<2)+s>>2]=-C(C(C(z[b+20>>2]*h)+C(C(z[b+12>>2]*n)+C(o*z[b+16>>2])))+C(C(z[b+8>>2]*w)+C(C(z[b>>2]*H)+C(G*z[b+4>>2]))));g=g+1|0;if((r|0)!=(g|0)){continue}break}n=C(0);o=C(0);w=C(0);t=C(0);u=C(0);if(!r){break a}I=r&-4;E=r&3;f=0;J=r-1>>>0<3;while(1){c=0;h=C(0);b=0;if(!J){while(1){g=f<<2;p=c|3;x=C(z[g+(B(p,12)+d|0)>>2]*z[(p<<2)+s>>2]);p=c|2;y=C(z[g+(B(p,12)+d|0)>>2]*z[(p<<2)+s>>2]);p=c|1;h=C(x+C(y+C(C(z[g+(B(p,12)+d|0)>>2]*z[(p<<2)+s>>2])+C(C(z[g+(B(c,12)+d|0)>>2]*z[(c<<2)+s>>2])+h))));c=c+4|0;b=b+4|0;if((I|0)!=(b|0)){continue}break}}g=0;if(E){while(1){h=C(C(z[(B(c,12)+d|0)+(f<<2)>>2]*z[(c<<2)+s>>2])+h);c=c+1|0;g=g+1|0;if((E|0)!=(g|0)){continue}break}}b=B(f,24)+e|0;w=C(w+C(h*z[b+12>>2]));o=C(o+C(h*z[b+8>>2]));n=C(n+C(h*z[b+4>>2]));F=C(F+C(h*z[b>>2]));u=C(u+C(h*z[b+20>>2]));t=C(t+C(h*z[b+16>>2]));f=f+1|0;if((r|0)!=(f|0)){continue}break}}v[a+28>>2]=0;v[a+12>>2]=0;z[a+24>>2]=j+u;z[a+20>>2]=q+t;z[a+16>>2]=m+w;z[a+8>>2]=k+o;z[a+4>>2]=i+n;z[a>>2]=l+F}function Ex(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=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=v[a+336>>2]-1|0;if(g){F=v[b+32>>2];q=v[b+12>>2];G=v[b+8>>2];H=v[a+344>>2];r=v[a+340>>2];I=v[a+332>>2];J=v[a+284>>2];K=v[a+272>>2];L=v[a+236>>2];while(1){a=B(g,112)+L|0;j=z[a+32>>2];p=g<<5;b=G+p|0;c=z[b+24>>2];k=z[a+24>>2];d=z[b+16>>2];l=z[a+28>>2];e=z[b+20>>2];f=z[b>>2];h=z[b+4>>2];i=z[b+8>>2];b=q+p|0;s=C(C(C(C(j*c)+C(C(k*d)+C(l*e)))+C(C(C(f*z[a+80>>2])+C(h*z[a+92>>2]))+C(i*z[a+104>>2])))+z[b+24>>2]);m=z[a+20>>2];n=z[a+12>>2];o=z[a+16>>2];t=C(C(C(C(m*c)+C(C(n*d)+C(o*e)))+C(C(C(f*z[a+76>>2])+C(h*z[a+88>>2]))+C(i*z[a+100>>2])))+z[b+20>>2]);u=z[a+8>>2];x=z[a>>2];y=z[a+4>>2];A=C(C(C(C(u*c)+C(C(x*d)+C(y*e)))+C(C(C(f*z[a+72>>2])+C(h*z[a+84>>2]))+C(i*z[a+96>>2])))+z[b+16>>2]);m=C(C(C(C(C(f*u)+C(h*m))+C(i*j))+C(C(C(d*z[a+44>>2])+C(e*z[a+56>>2]))+C(c*z[a+68>>2])))+z[b+8>>2]);l=C(C(C(C(C(f*y)+C(h*o))+C(i*l))+C(C(C(d*z[a+40>>2])+C(e*z[a+52>>2]))+C(c*z[a- -64>>2])))+z[b+4>>2]);k=C(C(C(C(C(f*x)+C(h*n))+C(i*k))+C(C(C(d*z[a+36>>2])+C(e*z[a+48>>2]))+C(c*z[a+60>>2])))+z[b>>2]);a=B(g,80)+H|0;D=w[a+76|0];a:{if(!D){d=C(0);e=C(0);f=C(0);h=C(0);i=C(0);j=C(0);break a}M=(v[a+72>>2]<<2)+F|0;N=B(g,96)+J|0;O=B(g,76)+K|0;j=C(0);b=0;i=C(0);h=C(0);f=C(0);e=C(0);d=C(0);while(1){E=b<<2;a=B(b,24)+O|0;c=C(z[E+M>>2]-C(C(C(z[a+20>>2]*m)+C(C(z[a+12>>2]*k)+C(l*z[a+16>>2])))+C(C(z[a+8>>2]*s)+C(C(z[a>>2]*A)+C(t*z[a+4>>2])))));z[(E+(B(g,160)+r|0)|0)+132>>2]=c;a=(b<<5)+N|0;j=C(j+C(c*z[a+24>>2]));i=C(i+C(c*z[a+20>>2]));h=C(h+C(c*z[a+16>>2]));f=C(f+C(c*z[a+8>>2]));e=C(e+C(c*z[a+4>>2]));d=C(d+C(z[a>>2]*c));b=b+1|0;if((D|0)!=(b|0)){continue}break}}a=B(g,160)+r|0;c=z[a+120>>2];n=z[a+124>>2];o=z[a+128>>2];a=(v[(p+I|0)+24>>2]<<5)+q|0;d=C(k+d);z[a>>2]=d+z[a>>2];e=C(l+e);z[a+4>>2]=e+z[a+4>>2];f=C(m+f);z[a+8>>2]=f+z[a+8>>2];z[a+16>>2]=C(C(A+h)+C(C(n*f)-C(e*o)))+z[a+16>>2];z[a+20>>2]=C(C(t+i)+C(C(o*d)-C(f*c)))+z[a+20>>2];z[a+24>>2]=C(C(s+j)+C(C(c*e)-C(d*n)))+z[a+24>>2];g=g-1|0;if(g){continue}break}}}function $C(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=xa-16|0;xa=h;v[h+8>>2]=c;g=v[a+112>>2];a:{if(g){b:{if(v[d+40>>2]|!d){break b}f=v[d+36>>2];if(!v[f>>2]){break b}c=0;while(1){v[h+4>>2]=v[((c<<2)+f|0)+4>>2];f=aD(b,h+4|0,h+14|0);if(!w[h+14|0]){v[f>>2]=v[h+4>>2]}v[f+4>>2]=d;c=c+1|0;f=v[d+36>>2];if(c>>>0>2]){continue}break}g=v[a+112>>2];if(!g){break a}}while(1){m=0;o=v[v[a+108>>2]+(n<<2)>>2];c=v[o+36>>2];if(v[c>>2]){while(1){j=v[((m<<2)+c|0)+4>>2];d=v[b+20>>2];c:{d:{if(!d){i=0;break d}c=j+(j<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;i=d-1&(c>>>16^c);c=v[v[b+12>>2]+(i<<2)>>2];if((c|0)==-1){break d}e=v[b+8>>2];f=v[b+4>>2];while(1){g=f+(c<<3)|0;if((j|0)==v[g>>2]){break c}c=v[e+(c<<2)>>2];if((c|0)!=-1){continue}break}}q=v[b+36>>2];if((q|0)==v[b+16>>2]){c=d?d<<1:16;e:{if(c>>>0<=d>>>0){break e}k=z[b+24>>2];if(!c|c&c-1){c=c|c>>>1;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;c=(c>>>16|c)+1|0}d=c;k=C(k*C(d>>>0));f:{if(k=C(0)){f=~~k>>>0;break f}f=0}c=d+f<<2;i=(0-c&12)+c|0;e=(f<<3)+i|0;if(e){c=v[37696]+12|0;e=Ba[v[v[c>>2]+8>>2]](c,e,24422,17301,372)|0}else{e=0}c=d<<2;l=I9(e,255,c);r=l+i|0;s=c+l|0;if(v[b+36>>2]){t=d-1|0;g=v[b+4>>2];c=0;while(1){i=c<<3;p=i+g|0;e=v[p>>2];e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=l+(((e>>>16^e)&t)<<2)|0;v[s+(c<<2)>>2]=v[e>>2];v[e>>2]=c;e=i+r|0;v[e>>2]=v[p>>2];v[e+4>>2]=v[p+4>>2];c=c+1|0;if(c>>>0>2]){continue}break}}e=v[b>>2];if(e){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[b+20>>2]=d;v[b+12>>2]=l;v[b>>2]=l;v[b+8>>2]=s;v[b+16>>2]=f;v[b+4>>2]=r;if(v[b+28>>2]!=-1){break e}v[b+28>>2]=q}c=j+(j<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;i=d-1&(c>>>16^c)}d=v[b+28>>2];v[b+28>>2]=d+1;c=v[b+12>>2]+(i<<2)|0;v[v[b+8>>2]+(d<<2)>>2]=v[c>>2];v[c>>2]=d;v[b+36>>2]=v[b+36>>2]+1;v[b+32>>2]=v[b+32>>2]+1;g=v[b+4>>2]+(d<<3)|0;v[g+4>>2]=0;v[g>>2]=j}v[g+4>>2]=o;m=m+1|0;c=v[o+36>>2];if(m>>>0>2]){continue}break}g=v[a+112>>2]}n=n+1|0;if(n>>>0>>0){continue}break}break a}b=aD(b,h+8|0,h+15|0);if(!w[h+15|0]){a=v[h+8>>2];v[b+4>>2]=0;v[b>>2]=a}v[b+4>>2]=d}xa=h+16|0}function f9(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=C(0),k=0,l=0,m=0,n=0,o=0,p=0;g=xa-16|0;xa=g;a:{b:{if((a|0)!=67174656){b=laa(256);v[g+4>>2]=a;v[g>>2]=67174656;s9(b,256,1940,g);Ba[v[v[c>>2]+8>>2]](c,4,b,9796,132);break b}if(!v[37696]){d=Ba[v[v[b>>2]+8>>2]](b,264,14629,9796,141)|0;v[37696]=d;if(d){v[d+8>>2]=c;v[d+4>>2]=b;v[d+192>>2]=-1;t[d+188|0]=0;v[d+84>>2]=d+16;t[d+80|0]=1;v[d>>2]=149136;v[d+100>>2]=c;v[d+96>>2]=b;v[d+12>>2]=149212;v[d+176>>2]=d+108;t[d+172|0]=1;v[d+88>>2]=0;v[d+92>>2]=16;v[d+180>>2]=1;v[d+184>>2]=16;v[d+108>>2]=c;v[d+104>>2]=149284;a=v[37696];o=d,p=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,77785,16755,113)|0,v[o+196>>2]=p;a=xa-16|0;xa=a;xa=a+16|0;v[d+216>>2]=0;v[d+220>>2]=0;v[d+208>>2]=0;v[d+212>>2]=0;v[d+200>>2]=0;v[d+204>>2]=0;v[d+232>>2]=0;v[d+236>>2]=0;v[d+224>>2]=1061158912;v[d+228>>2]=-1;m=v[d+216>>2];j=C(z[d+224>>2]*C(64));c:{if(j=C(0)){a=~~j>>>0;break c}a=0}b=a- -64<<2;b=(0-b&12)+b|0;c=(a<<3)+b|0;if(c){h=v[37696];c=Ba[v[v[h+12>>2]+8>>2]](h+12|0,c,24422,17301,372)|0}else{c=0}c=I9(c,255,256);h=c+b|0;k=c+256|0;if(v[d+236>>2]){n=v[d+204>>2];b=0;while(1){i=b<<3;l=i+n|0;f=v[l>>2];e=(f<<15^-1)+f|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=c+(((e>>>16^e)&63)<<2)|0;v[(b<<2)+k>>2]=v[e>>2];v[e>>2]=b;i=h+i|0;v[i>>2]=f;v[i+4>>2]=v[l+4>>2];b=b+1|0;if(b>>>0>2]){continue}break}}b=v[d+200>>2];if(b){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,b)}v[d+220>>2]=64;v[d+212>>2]=c;v[d+200>>2]=c;v[d+208>>2]=k;v[d+216>>2]=a;v[d+204>>2]=h;if(v[d+228>>2]==-1){v[d+228>>2]=m}a=v[37696];o=d,p=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,77785,16755,113)|0,v[o+240>>2]=p;a=xa-16|0;xa=a;xa=a+16|0;v[d+252>>2]=0;v[d+244>>2]=0;v[d+248>>2]=0;a=v[37696];o=d,p=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,77785,16755,113)|0,v[o+256>>2]=p;a=xa-16|0;xa=a;xa=a+16|0;a=v[37696];o=d,p=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,77785,16755,113)|0,v[o+260>>2]=p;a=xa-16|0;xa=a;xa=a+16|0;v[37698]=1;a=v[37697];v[37697]=(a|0)==-1?1:a+1|0;a=v[37696];break a}Ba[v[v[c>>2]+8>>2]](c,32,69768,9796,158);break b}Ba[v[v[c>>2]+8>>2]](c,8,67732,9796,165)}a=0}xa=g+16|0;return a|0}function daa(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,m=0,o=0,p=0,q=0,r=0,s=0,t=0;d=b;b=v[b>>2]+7&-8;v[d>>2]=b+16;q=a;a=b;k=v[a>>2];b=v[a+4>>2];e=v[a+12>>2];o=e;g=xa-32|0;xa=g;e=e&2147483647;c=e-1006698496|0;f=e-1140785152|0;d=v[a+8>>2];a:{if((c|0)==(f|0)&d>>>0>>0|c>>>0>>0){a=d;d=o<<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(k|(b|0)!=134217728){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=o<<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;p=e>>>16|0;if(p>>>0<15249){break a}c=k;a=b;f=o&65535|65536;e=f;m=d;h=d;j=p-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=r|h;f=d|f;i=j&31;if((j&63)>>>0>=32){d=c<>>32-i|a<>2]=c;v[g+20>>2]=a;v[g+24>>2]=h;v[g+28>>2]=f;d=15361-p|0;c:{if(d&64){b=m;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;m=0;e=0;break c}if(!d){break c}f=m;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=m;f=a&31;if((a&63)>>>0>=32){a=0;m=e>>>f|0}else{a=e>>>f|0;m=((1<>>f}e=a}v[g>>2]=k;v[g+4>>2]=b;v[g+8>>2]=m;v[g+12>>2]=e;b=v[g+8>>2];e=v[g+4>>2];c=b<<4|e>>>28;a=v[g+12>>2]<<4|b>>>28;e=e&268435455;b=v[g>>2]|(v[g+16>>2]|v[g+24>>2]|(v[g+20>>2]|v[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(b|(e|0)!=134217728){break a}b=c+(c&1)|0;a=b>>>0>>0?a+1|0:a;c=b}xa=g+32|0;l(0,c|0);l(1,o&-2147483648|a);s=q,t=+n(),A[s>>3]=t}function HJ(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=xa-16|0;xa=i;l=(((c&15)!=0)<<4)+c|0;k=l&-16;h=k+B(b,40)|0;j=v[d>>2];a:{b:{if((j|0)!=v[a+60>>2]){j=v[a+48>>2];e=j+15&-16;v[i+12>>2]=e;g=v[a+52>>2];if(g>>>0>=e+h>>>0){c=e;f=c+v[a+44>>2]|0;break b}if(w[a+64|0]){break a}c=g;while(1){c=c<<1;v[a+52>>2]=c;if(h+v[i+12>>2]>>>0>c>>>0){continue}break}if(c){f=v[37696]+12|0;c=Ba[v[v[f>>2]+8>>2]](f,c,24422,17904,169)|0}else{c=0}f=H9(c,v[a+44>>2],g);c=v[a+44>>2];if(c){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}v[a+44>>2]=f;c=v[i+12>>2];f=f+c|0;break b}v[a+48>>2]=j;e=j+15&-16;v[i+12>>2]=e;g=v[a+52>>2];c:{if(g>>>0>=e+h>>>0){f=v[a+44>>2];c=e;break c}if(w[a+64|0]){break a}c=g;while(1){c=c<<1;v[a+52>>2]=c;if(h+v[i+12>>2]>>>0>c>>>0){continue}break}if(c){f=v[37696]+12|0;f=Ba[v[v[f>>2]+8>>2]](f,c,24422,17904,169)|0}else{f=0}c=H9(f,v[a+44>>2],g);g=v[a+44>>2];if(g){m=v[37696]+12|0;Ba[v[v[m>>2]+12>>2]](m,g)}v[a+44>>2]=c;c=v[i+12>>2]}f=c+f|0}v[a+60>>2]=c;v[a+48>>2]=v[a+48>>2]+((h-j|0)+e|0)}d:{if(!f){break d}c=v[a+44>>2];a=v[d>>2];e=c+a|0;g=x[d+10>>1]>>>1&32752;e:{if((a|0)!=v[i+12>>2]){f:{if(g>>>0>=k>>>0){H9(f,e,g+B(x[d+6>>1],40)|0);break f}H9(H9(f,e,x[d+8>>1])+k|0,e+g|0,B(x[d+6>>1],40))}v[d>>2]=v[i+12>>2];break e}if(g>>>0>=k>>>0){break e}a=B(x[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){H9(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}t[c|0]=w[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;t[h|0]=w[a+e|0];if(h&3){continue}break}}if(a>>>0<=3){break j}while(1){a=a-4|0;v[c+a>>2]=v[a+e>>2];if(a>>>0>3){continue}break}}if(!a){break g}while(1){a=a-1|0;t[c+a|0]=w[a+e|0];if(a){continue}break}break g}if(a>>>0<=3){break h}while(1){v[c>>2]=v[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){t[c|0]=w[e|0];c=c+1|0;e=e+1|0;a=a-1|0;if(a){continue}break}}}if(x[d+4>>1]>>0){u[d+4>>1]=b}if(g>>>0>=k>>>0){break d}u[d+10>>1]=x[d+10>>1]&31|l<<1&65504}xa=i+16|0;return f}function pU(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=C(0),n=C(0),o=0,p=0,q=C(0);l=xa-16|0;xa=l;if(v[a+72>>2]){while(1){e=v[v[a+68>>2]+(j<<2)>>2];A[e+432>>3]=A[e+432>>3]-+z[b>>2];A[e+440>>3]=A[e+440>>3]-+z[b+4>>2];A[e+448>>3]=A[e+448>>3]-+z[b+8>>2];c=e+88|0;m=z[b>>2];f=+m;A[c+48>>3]=A[c+48>>3]-f;n=z[b+4>>2];g=+n;A[c+56>>3]=A[c+56>>3]-g;q=z[b+8>>2];A[c+72>>3]=A[c+72>>3]-f;A[c+80>>3]=A[c+80>>3]-g;d=c- -64|0;f=+q;A[d>>3]=A[d>>3]-f;A[c+88>>3]=A[c+88>>3]-f;a:{b:{if(v[c+152>>2]){if(x[v[c+164>>2]+4>>1]==6){break a}z[c+204>>2]=z[c+204>>2]-m;z[c+208>>2]=z[c+208>>2]-n;d=c+212|0;break b}if(v[c+176>>2]==-1){break a}z[c+228>>2]=z[c+228>>2]-m;z[c+232>>2]=z[c+232>>2]-n;d=c+236|0}z[d>>2]=z[d>>2]-q}d=v[c+36>>2];if(d){c=v[c+32>>2];d=c+(d<<2)|0;f=+z[b+8>>2];g=+z[b+4>>2];h=+z[b>>2];while(1){A[c+12>>3]=A[c+12>>3]-h;A[c+20>>3]=A[c+20>>3]-g;A[c+28>>3]=A[c+28>>3]-f;c=v[(v[c>>2]<<2)+99008>>2]+c|0;if((d|0)!=(c|0)){continue}break}}j=j+1|0;if(j>>>0>2]){continue}break}}if(v[a+124>>2]){j=0;while(1){c=0;e=0;k=v[v[a+120>>2]+(j<<2)>>2];i=v[k+8>>2];c:{if(!i){break c}o=v[k+4>>2];f=+z[b+8>>2];g=+z[b+4>>2];h=+z[b>>2];if((i|0)!=1){p=i&-2;while(1){d=o+B(c,72)|0;A[d+16>>3]=A[d+16>>3]-h;A[d+24>>3]=A[d+24>>3]-g;A[d+32>>3]=A[d+32>>3]-f;d=o+B(c|1,72)|0;A[d+16>>3]=A[d+16>>3]-h;A[d+24>>3]=A[d+24>>3]-g;A[d+32>>3]=A[d+32>>3]-f;c=c+2|0;e=e+2|0;if((p|0)!=(e|0)){continue}break}}if(!(i&1)){break c}c=o+B(c,72)|0;A[c+16>>3]=A[c+16>>3]-h;A[c+24>>3]=A[c+24>>3]-g;A[c+32>>3]=A[c+32>>3]-f}i=v[k+20>>2];d:{if(!i){break d}k=v[k+16>>2];f=+z[b+8>>2];g=+z[b+4>>2];h=+z[b>>2];c=0;if((i|0)!=1){o=i&-2;e=0;while(1){p=c<<6;d=p+k|0;A[d+16>>3]=A[d+16>>3]-h;A[d+24>>3]=A[d+24>>3]-g;A[d+32>>3]=A[d+32>>3]-f;d=k+(p|64)|0;A[d+16>>3]=A[d+16>>3]-h;A[d+24>>3]=A[d+24>>3]-g;A[d+32>>3]=A[d+32>>3]-f;c=c+2|0;e=e+2|0;if((o|0)!=(e|0)){continue}break}}if(!(i&1)){break d}c=k+(c<<6)|0;A[c+16>>3]=A[c+16>>3]-h;A[c+24>>3]=A[c+24>>3]-g;A[c+32>>3]=A[c+32>>3]-f}j=j+1|0;if(j>>>0>2]){continue}break}}a=v[a+12>>2];if(a){m=z[b>>2];n=z[b+4>>2];z[l+8>>2]=-z[b+8>>2];z[l+4>>2]=-n;z[l>>2]=-m;ks(a,l)}xa=l+16|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,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=xa-6144|0;xa=e;c=1;a:{if(!v[a+32>>2]){break a}c=v[a+48>>2];i=v[c+1140>>2];p=v[c+1e3>>2];while(1){d=v[(v[p+184>>2]+B(v[v[a+28>>2]+(g<<2)>>2]>>>7|0,24)|0)+20>>2];f=v[d-20>>2];z[f+156>>2]=z[f+160>>2];c=d+-64|0;b:{c:{d:{b=x[d+28>>1];if(!(b&1)){v[(e+5120|0)+(j<<2)>>2]=c;fH(c,v[a+44>>2],i);j=j+1|0;b=x[d+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=(q<<2)+e|0;q=q+1|0}v[l>>2]=c}if(w[f+44|0]&4){v[(e+4096|0)+(m<<2)>>2]=c;m=m+1|0}e:{f:{if(b&8){f=(e+3072|0)+(n<<2)|0;n=n+1|0;break f}if(!(b&16)){break e}f=(e+2048|0)+(o<<2)|0;o=o+1|0}v[f>>2]=c}u[d+28>>1]=b&1;g=g+1|0;if(g>>>0>2]){continue}break}if(!j){j=0;c=1;break a}t[v[a+44>>2]+20|0]=1;t[i+16|0]=1;c=0}g:{if(!(j|k|(m|n))){if(!o){break g}}b=v[a+48>>2];d=v[b+980>>2];i=d+160|0;if(!c){g=0;while(1){b=v[v[(e+5120|0)+(g<<2)>>2]+32>>2];if(b){while(1){if(w[v[b+28>>2]- -64|0]&5){l=v[b+8>>2];p=l&2147483647;f=p+32>>>5|0;h:{if(f>>>0<=(v[d+164>>2]&2147483647)>>>0){c=v[i>>2];break h}c=v[d+168>>2];c=Ba[v[v[c>>2]+8>>2]](c,f<<2,17999,438)|0;h=v[d+160>>2];i:{if(!h){break i}H9(c,h,v[d+164>>2]<<2);if(v[d+164>>2]<0){break i}h=v[i>>2];if(!h){break i}r=v[d+168>>2];Ba[v[v[r>>2]+12>>2]](r,h)}h=v[d+164>>2];I9((h<<2)+c|0,0,f-h<<2);v[d+164>>2]=f;v[d+160>>2]=c}c=(p>>>3&268435452)+c|0;v[c>>2]=v[c>>2]|1<>2];if(b){continue}break}}g=g+1|0;if((j|0)!=(g|0)){continue}break}b=v[a+48>>2]}if(m){g=b+1156|0;c=0;while(1){a=(e+4096|0)+(c<<2)|0;d=v[b+1160>>2];j:{if(d>>>0>=(v[b+1164>>2]&2147483647)>>>0){pG(g,a);break j}v[v[b+1156>>2]+(d<<2)>>2]=v[a>>2];v[b+1160>>2]=d+1}c=c+1|0;if((m|0)!=(c|0)){continue}break}}if(k){b=0;while(1){tH(v[(e+1024|0)+(b<<2)>>2],i);b=b+1|0;if((k|0)!=(b|0)){continue}break}}if(q){b=0;while(1){mH(v[(b<<2)+e>>2]);b=b+1|0;if((q|0)!=(b|0)){continue}break}}if(n){b=0;while(1){a=v[(e+3072|0)+(b<<2)>>2];bG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);b=b+1|0;if((n|0)!=(b|0)){continue}break}}if(o){b=0;while(1){lH(v[(e+2048|0)+(b<<2)>>2]);b=b+1|0;if((o|0)!=(b|0)){continue}break}}}xa=e+6144|0}function YD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;a:{if(!w[a+338|0]){break a}b:{c:{d:{e:{switch(v[a+268>>2]){case 0:if(!b){break a}if(Ba[v[v[a>>2]+76>>2]](a)|0){break c}break a;case 1:OB(v[a+32>>2],a+8|0,a+24|0,0,0);v[a+44>>2]=0;v[a+268>>2]=2;f=v[a+4>>2];if(f){e=v[f+44>>2]}d=v[a+12>>2];c=0;f:{if(d>>>0<2){break f}c=1;if(d>>>0<4){break f}c=2;if(d>>>0<8){break f}c=3;if(d>>>0<16){break f}c=4;if(d>>>0<32){break f}c=5;if(d>>>0<64){break f}c=6;if(d>>>0<128){break f}c=7;if(d>>>0<256){break f}c=8;if(d>>>0<512){break f}c=9;if(d>>>0<1024){break f}c=10;if(d>>>0<2048){break f}c=11;if(d>>>0<4096){break f}c=12;if(d>>>0<8192){break f}c=13;if(d>>>0<16384){break f}c=14;if(d>>>0<32768){break f}c=15;if(d>>>0<65536){break f}c=16;if(d>>>0<131072){break f}c=17;if(d>>>0<262144){break f}c=18;if(d>>>0<524288){break f}c=19;if(d>>>0<1048576){break f}c=20;if(d>>>0<2097152){break f}c=21;if(d>>>0<4194304){break f}c=22;if(d>>>0<8388608){break f}c=23;if(d>>>0<16777216){break f}c=24;if(d>>>0<33554432){break f}c=25;if(d>>>0<67108864){break f}c=26;if(d>>>0<134217728){break f}c=27;if(d>>>0<268435456){break f}c=28;if(d>>>0<536870912){break f}c=29;if(d>>>0<1073741824){break f}c=(d|0)>=0?30:31}c=B(c,d);g:{if(!(c>>>0>e<<1>>>0|e>>>1>>>0>c>>>0)){c=e;e=v[a+280>>2];break g}v[a+280>>2]=0;e=0}c=B(d,e)+c|0;v[a+276>>2]=(c|0)>0?c:0;break d;case 2:v[a+44>>2]=v[a+44>>2]+1;if(OB(v[a+32>>2],a+8|0,a+24|0,1,(y[a+276>>2]/y[a+272>>2]|0)+1|0)){break d}v[a+268>>2]=3;break d;case 3:v[a+268>>2]=4;v[a+44>>2]=v[a+44>>2]+1;if(!v[a+344>>2]){break d}e=a+324|0;c=v[a+284>>2];d=v[a+40>>2];jD(e,d>>>0>>0?c:d,v[a+32>>2]);if(v[a+344>>2]>0){c=v[a+340>>2];while(1){kD(e,v[c>>2],v[c+4>>2],v[a+32>>2]);c=c+8|0;if(c>>>0>2]+(v[a+344>>2]<<3)>>>0){continue}break}}v[a+344>>2]=0;break d;case 4:v[a+268>>2]=5;v[a+44>>2]=v[a+44>>2]+1;f=v[a+292>>2];e=v[a+32>>2];c=v[e+40>>2];if(c){g=v[e>>2];e=v[e+8>>2];c=c-1|0;d=e+B(c,28)|0;if(c){while(1){QB(d,f,g,e);c=c-1|0;d=e+B(c,28)|0;if(c){continue}break}}QB(d,f,g,e)}break d;case 5:break e;default:break d}}v[a+268>>2]=6}if(!b){break b}}t[a+337|0]=1}c=v[a+268>>2]==6}return c|0}function tR(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=xa-16|0;xa=k;i=v[a+28>>2];m=v[i+4688>>2];if(m){while(1){a=v[v[i+4684>>2]+(j<<2)>>2];a:{if(!(a&1)){break a}d=a&-2;h=v[d+56>>2];c=d?d+4|0:0;v[k+8>>2]=c;l=w[c+20|0];b=B(l,12)+i|0;e=v[b+56>>2];v[c+8>>2]=e;f=b+52|0;a=e;g=v[b+60>>2]&2147483647;if(!g){XO(f,64);g=v[b+60>>2]&2147483647;a=v[b+56>>2]}b:{if(a>>>0>=g>>>0){YO(f,k+8|0);break b}v[v[f>>2]+(a<<2)>>2]=c;v[b+56>>2]=a+1}if(h){b=(l<<2)+i|0;a=v[b+88>>2];if(e>>>0>a>>>0){g=v[f>>2];h=g+(e<<2)|0;c=v[h>>2];l=h;h=g;g=a<<2;h=v[h+g>>2];v[l>>2]=h;v[g+v[f>>2]>>2]=c;v[c+8>>2]=a;v[h+8>>2]=e;a=v[b+88>>2]}v[b+88>>2]=a+1}gJ(v[i+2168>>2],d);b=v[d+56>>2];if(!b){break a}e=v[b+48>>2];a=v[i+976>>2];f=v[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=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,f<<2,24422,17999,438)|0;c=v[a+936>>2];d:{if(!c){break d}H9(d,c,v[a+940>>2]<<2);if(v[a+940>>2]<0){break d}c=v[a+936>>2];if(!c){break d}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,c)}c=v[a+940>>2];I9(d+(c<<2)|0,0,f-c<<2);v[a+940>>2]=f;v[a+936>>2]=d}f=e>>>5|0;d=v[a+936>>2]+(f<<2)|0;g=d;h=v[d>>2];d=1<>2]=h|d;if(!(!(w[b+8|0]&2)|!(x[b+40>>1]&4096))){b=v[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=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e<<2,24422,17999,438)|0;c=v[a+948>>2];f:{if(!c){break f}H9(b,c,v[a+952>>2]<<2);if(v[a+952>>2]<0){break f}c=v[a+948>>2];if(!c){break f}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,c)}c=v[a+952>>2];I9(b+(c<<2)|0,0,e-c<<2);v[a+952>>2]=e;v[a+948>>2]=b}a=v[a+948>>2]+(f<<2)|0;v[a>>2]=d|v[a>>2]}}j=j+1|0;if((m|0)!=(j|0)){continue}break}}g=v[i+4700>>2];if(g){j=0;while(1){a=v[v[i+4696>>2]+(j<<2)>>2];if(a&1){d=a&-2;b=d?d+4|0:0;v[k+12>>2]=b;e=B(w[b+20|0],12)+i|0;a=v[e+56>>2];v[b+8>>2]=a;f=e+52|0;c=v[e+60>>2]&2147483647;if(!c){XO(f,64);c=v[e+60>>2]&2147483647;a=v[e+56>>2]}g:{if(a>>>0>=c>>>0){YO(f,k+12|0);break g}v[v[f>>2]+(a<<2)>>2]=b;v[e+56>>2]=a+1}gJ(v[i+2168>>2],d)}j=j+1|0;if((g|0)!=(j|0)){continue}break}}xa=k+16|0}function rN(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=C(0),i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c=v[a+44>>2];f=v[a+32>>2];g=v[a+36>>2];b=v[a+40>>2];d=v[a+20>>2];j=v[a+28>>2];Ly(v[j+11848>>2],j+11836|0);a=j+11856|0;v[a>>2]=0;v[a+4>>2]=0;a:{if(!v[g>>2]){break a}i=b+168|0;a=0;if(!d){while(1){b=vr(v[c+620>>2],64);l=v[c+472>>2];m=v[c+484>>2];n=v[c+496>>2];e=v[f+56>>2];k=v[g>>2];h=z[c+56>>2];o=v[c+632>>2];p=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=o;v[b+12>>2]=p;v[b+60>>2]=c;v[b+52>>2]=a;v[b+48>>2]=i;z[b+44>>2]=h;v[b+28>>2]=f;v[b>>2]=132828;v[b+24>>2]=1;a=a+512|0;v[b+56>>2]=a>>>0>>0?a:k;v[b+40>>2]=n+B(e,48);e=e<<6;v[b+36>>2]=e+m;v[b+32>>2]=e+l;e=v[b+16>>2];Ba[v[v[e>>2]+72>>2]](e,b);if(y[g>>2]>a>>>0){continue}break a}}while(1){b=vr(v[c+620>>2],64);l=v[c+472>>2];m=v[c+484>>2];n=v[c+496>>2];e=v[f+56>>2];k=v[g>>2];h=z[c+56>>2];o=v[c+632>>2];p=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=o;v[b+12>>2]=p;v[b+60>>2]=c;v[b+52>>2]=a;v[b+48>>2]=i;z[b+44>>2]=h;v[b+28>>2]=f;v[b>>2]=132828;v[b+20>>2]=d;v[b+24>>2]=1;a=a+512|0;v[b+56>>2]=a>>>0>>0?a:k;v[b+40>>2]=n+B(e,48);e=e<<6;v[b+36>>2]=e+m;v[b+32>>2]=e+l;Ba[v[v[d>>2]+16>>2]](d);v[b+16>>2]=v[v[b+20>>2]+16>>2];Ba[v[v[b>>2]+20>>2]](b);if(y[g>>2]>a>>>0){continue}break}}b:{if(!(v[g+4>>2]&2147483647)){break b}a=0;if(!d){while(1){b=vr(v[c+620>>2],48);d=v[g+4>>2];h=z[c+52>>2];f=v[c+632>>2];i=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=f;v[b+12>>2]=i;v[b+44>>2]=c;z[b+40>>2]=h;v[b+32>>2]=a;v[b+28>>2]=j;v[b>>2]=132884;v[b+24>>2]=1;d=d&2147483647;a=a- -64|0;v[b+36>>2]=a>>>0>d>>>0?d:a;d=v[b+16>>2];Ba[v[v[d>>2]+72>>2]](d,b);if((v[g+4>>2]&2147483647)>>>0>a>>>0){continue}break b}}while(1){b=vr(v[c+620>>2],48);f=v[g+4>>2];h=z[c+52>>2];i=v[c+632>>2];e=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=i;v[b+12>>2]=e;v[b+44>>2]=c;z[b+40>>2]=h;v[b+32>>2]=a;v[b+28>>2]=j;v[b>>2]=132884;v[b+20>>2]=d;v[b+24>>2]=1;f=f&2147483647;a=a- -64|0;v[b+36>>2]=a>>>0>f>>>0?f:a;Ba[v[v[d>>2]+16>>2]](d);v[b+16>>2]=v[v[b+20>>2]+16>>2];Ba[v[v[b>>2]+20>>2]](b);if((v[g+4>>2]&2147483647)>>>0>a>>>0){continue}break}}}function zF(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;j=xa-16|0;xa=j;v[j+8>>2]=c;f=a+40|0;d=v[a+56>>2];a:{if(d>>>0>c>>>0){break a}b:{if(c+2048>>>0<=d>>>0){break b}e=v[a+60>>2];h=((e+c|0)+2047>>>0)/(e>>>0)|0;g=v[a+44>>2];i=h-g|0;d=B(e,i)+d|0;v[a+56>>2]=d;if((h|0)==(g|0)){break b}e=0;while(1){d=0;h=v[a+60>>2]<<4;if(h){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,h,24422,16683,84)|0}v[j+12>>2]=d;h=v[a+44>>2];c:{if(h>>>0>=(v[a+48>>2]&2147483647)>>>0){pF(f,j+12|0);break c}v[v[a+40>>2]+(h<<2)>>2]=d;v[a+44>>2]=h+1}e=e+1|0;if((i|0)!=(e|0)){continue}break}d=v[a+56>>2]}d=d+31>>>5|0;if(d>>>0<=(v[a+232>>2]&2147483647)>>>0){break a}c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d<<2,24422,17999,438)|0;e=v[a+228>>2];d:{if(!e){break d}H9(c,e,v[a+232>>2]<<2);if(v[a+232>>2]<0){break d}e=v[a+228>>2];if(!e){break d}i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,e)}e=v[a+232>>2];I9(c+(e<<2)|0,0,d-e<<2);v[a+232>>2]=d;v[a+228>>2]=c;c=v[j+8>>2]}h=xa-16|0;xa=h;d=v[a+52>>2];e=c+1|0;i=d>>>0>e>>>0?d:e;e=v[f+16>>2];e:{if(i>>>0<=e>>>0){break e}d=v[f+20>>2];g=((d+i|0)-1>>>0)/(d>>>0)|0;k=v[f+4>>2];l=g-k|0;v[f+16>>2]=e+B(l,d);if((g|0)==(k|0)){break e}e=0;while(1){d=0;g=v[f+20>>2]<<4;if(g){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,g,24422,16683,84)|0}v[h+12>>2]=d;g=v[f+4>>2];f:{if(g>>>0>=(v[f+8>>2]&2147483647)>>>0){pF(f,h+12|0);break f}v[v[f>>2]+(g<<2)>>2]=d;v[f+4>>2]=g+1}e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=v[f+12>>2];if(i>>>0>d>>>0){while(1){e=v[f+20>>2];g=(d>>>0)/(e>>>0)|0;e=v[v[f>>2]+(g<<2)>>2]+(d-B(e,g)<<4)|0;v[e+8>>2]=-1;v[e+12>>2]=-1;u[e+4>>1]=16;v[e>>2]=0;d=d+1|0;if((i|0)!=(d|0)){continue}break}}v[f+12>>2]=i;xa=h+16|0;d=v[a+228>>2]+(c>>>3&536870908)|0;f=v[d>>2];m=d,n=Uaa(-2,c)&f,v[m>>2]=n;f=v[j+8>>2];c=v[a+60>>2];d=(f>>>0)/(c>>>0)|0;c=v[v[a+40>>2]+(d<<2)>>2]+(f-B(c,d)<<4)|0;d=x[c+4>>1];g:{h:{if(d&2){a=d&65533;break h}if(d&8){break g}e=d&65519;u[c+4>>1]=e;v[c>>2]=b;a=B(b,12)+a|0;b=a+284|0;d=v[a+288>>2];i:{if(d>>>0>=(v[a+292>>2]&2147483647)>>>0){on(b,j+8|0);e=x[c+4>>1];break i}v[v[b>>2]+(d<<2)>>2]=f;v[a+288>>2]=v[a+288>>2]+1}a=e&-73|8}u[c+4>>1]=a}xa=j+16|0}function nO(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0);a:{if(c){c=v[c+36>>2];g=z[c+8>>2];f=z[c+40>>2];e=C(z[c+56>>2]*C(-2));h=z[c+32>>2];l=C(z[c+48>>2]*C(-2));m=C(z[c+52>>2]*C(-2));k=z[c+36>>2];n=C(C(f*e)+C(C(h*l)+C(m*k)));d=z[c+44>>2];o=C(C(d*d)+C(-.5));i=C(C(f*n)+C(C(e*o)-C(d*C(C(h*m)-C(l*k)))));p=C(i+i);i=z[c>>2];j=C(C(h*n)+C(C(l*o)-C(d*C(C(k*e)-C(m*f)))));q=C(j+j);j=z[c+4>>2];e=C(C(k*n)+C(C(m*o)-C(d*C(C(f*l)-C(e*h)))));o=C(e+e);s=C(C(g*p)+C(C(i*q)+C(j*o)));e=z[c+12>>2];w=C(C(e*e)+C(-.5));l=C(C(h*j)+C(C(C(d*g)-C(e*f))-C(i*k)));b=v[b+92>>2];m=z[b+24>>2];t=C(m+m);m=C(C(k*g)+C(C(C(d*i)-C(e*h))-C(j*f)));n=z[b+16>>2];u=C(n+n);n=C(C(f*i)+C(C(C(d*j)-C(e*k))-C(g*h)));r=z[b+20>>2];r=C(r+r);x=C(C(l*t)+C(C(m*u)+C(n*r)));d=C(C(g*f)+C(C(j*k)+C(C(e*d)+C(h*i))));f=C(C(d*d)+C(-.5));y=C(C(z[c+24>>2]+C(C(g*s)+C(C(p*w)+C(e*C(C(i*o)-C(q*j))))))+C(C(l*x)+C(C(t*f)+C(d*C(C(m*r)-C(u*n))))));A=C(C(z[c+20>>2]+C(C(j*s)+C(C(o*w)+C(e*C(C(g*q)-C(p*i))))))+C(C(n*x)+C(C(r*f)+C(d*C(C(l*u)-C(t*m))))));p=C(C(z[c+16>>2]+C(C(i*s)+C(C(q*w)+C(e*C(C(j*p)-C(o*g))))))+C(C(m*x)+C(C(u*f)+C(d*C(C(n*t)-C(r*l))))));g=z[b+12>>2];e=z[b>>2];f=z[b+4>>2];h=z[b+8>>2];q=C(C(C(C(d*g)-C(e*m))-C(n*f))-C(l*h));o=C(C(C(m*f)+C(C(d*h)+C(l*g)))-C(e*n));s=C(C(C(l*e)+C(C(d*f)+C(n*g)))-C(h*m));g=C(C(C(n*h)+C(C(d*e)+C(m*g)))-C(f*l));break a}c=v[b+96>>2];g=z[c+8>>2];b=v[b+92>>2];d=z[b+24>>2];h=C(d+d);e=z[c>>2];d=z[b+16>>2];k=C(d+d);d=z[b+20>>2];i=C(d+d);f=z[c+4>>2];j=C(C(g*h)+C(C(e*k)+C(i*f)));d=z[c+12>>2];l=C(C(d*d)+C(-.5));y=C(z[c+24>>2]+C(C(g*j)+C(C(h*l)+C(d*C(C(e*i)-C(k*f))))));A=C(z[c+20>>2]+C(C(f*j)+C(C(i*l)+C(d*C(C(g*k)-C(h*e))))));p=C(z[c+16>>2]+C(C(e*j)+C(C(k*l)+C(d*C(C(f*h)-C(i*g))))));h=z[b+12>>2];k=z[b>>2];i=z[b+4>>2];j=z[b+8>>2];q=C(C(C(C(d*h)-C(k*e))-C(f*i))-C(g*j));o=C(C(C(e*i)+C(C(d*j)+C(g*h)))-C(k*f));s=C(C(C(g*k)+C(C(d*i)+C(f*h)))-C(j*e));g=C(C(C(f*j)+C(C(d*k)+C(e*h)))-C(i*g))}z[a+16>>2]=p;z[a+12>>2]=q;z[a+8>>2]=o;z[a+4>>2]=s;z[a>>2]=g;z[a+24>>2]=y;z[a+20>>2]=A}function tx(a){var b=C(0),c=0,d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0,w=0,x=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0;w=v[a+336>>2];if(w>>>0>=2){D=v[a+340>>2];x=v[a+332>>2];E=v[a+348>>2];F=v[a+344>>2];G=v[a+272>>2];H=v[a+260>>2];a=1;while(1){g=B(a,160)+D|0;l=(a<<5)+x|0;c=v[l+16>>2];i=z[c+8>>2];l=v[((v[l+24>>2]<<5)+x|0)+16>>2];h=C(z[c+24>>2]-z[l+24>>2]);n=C(h+h);h=z[c>>2];f=C(z[c+16>>2]-z[l+16>>2]);o=C(f+f);f=C(z[c+20>>2]-z[l+20>>2]);p=C(f+f);f=z[c+4>>2];b=C(C(i*n)+C(C(h*o)+C(p*f)));j=z[c+12>>2];k=C(C(j*j)+C(-.5));z[g+116>>2]=C(i*b)+C(C(n*k)-C(j*C(C(h*p)-C(o*f))));z[g+112>>2]=C(f*b)+C(C(p*k)-C(j*C(C(i*o)-C(n*h))));z[g+108>>2]=C(h*b)+C(C(o*k)-C(j*C(C(f*n)-C(p*i))));n=z[l+16>>2];o=z[c+16>>2];p=z[l+20>>2];b=z[c+20>>2];z[g+128>>2]=z[c+24>>2]-z[l+24>>2];z[g+124>>2]=b-p;z[g+120>>2]=o-n;c=B(a,76);y=c+G|0;A=c+H|0;u=v[A+72>>2];v[y+72>>2]=u;if(u){n=C(-f);o=C(-h);p=C(-i);I=B(a,80)+F|0;l=0;while(1){t=B(l,24);c=A+t|0;m=z[c+20>>2];r=z[c+16>>2];s=z[c+12>>2];g=t+y|0;b=z[c+8>>2];b=C(b+b);d=z[c>>2];d=C(d+d);e=z[c+4>>2];e=C(e+e);q=C(C(i*b)+C(C(h*d)+C(f*e)));z[g+8>>2]=C(i*q)+C(C(b*k)+C(j*C(C(h*e)+C(d*n))));z[g+4>>2]=C(f*q)+C(C(e*k)+C(j*C(C(i*d)+C(b*o))));z[g>>2]=C(h*q)+C(C(d*k)+C(j*C(C(f*b)+C(e*p))));b=C(m+m);d=C(s+s);e=C(r+r);m=C(C(i*b)+C(C(h*d)+C(f*e)));z[g+20>>2]=C(i*m)+C(C(b*k)+C(j*C(C(h*e)+C(d*n))));z[g+16>>2]=C(f*m)+C(C(e*k)+C(j*C(C(i*d)+C(b*o))));z[g+12>>2]=C(h*m)+C(C(d*k)+C(j*C(C(f*b)+C(e*p))));c=t+I|0;m=z[c+8>>2];r=z[c+4>>2];s=z[c>>2];g=(B(a,96)+E|0)+t|0;b=z[c+20>>2];b=C(b+b);d=z[c+12>>2];d=C(d+d);e=z[c+16>>2];e=C(e+e);q=C(C(i*b)+C(C(h*d)+C(f*e)));z[g+44>>2]=C(i*q)+C(C(b*k)+C(j*C(C(h*e)+C(d*n))));z[g+40>>2]=C(f*q)+C(C(e*k)+C(j*C(C(i*d)+C(b*o))));z[g+36>>2]=C(h*q)+C(C(d*k)+C(j*C(C(f*b)+C(e*p))));b=C(m+m);d=C(s+s);e=C(r+r);m=C(C(i*b)+C(C(h*d)+C(f*e)));z[g+32>>2]=C(i*m)+C(C(b*k)+C(j*C(C(h*e)+C(d*n))));z[g+28>>2]=C(f*m)+C(C(e*k)+C(j*C(C(i*d)+C(b*o))));z[g+24>>2]=C(h*m)+C(C(d*k)+C(j*C(C(f*b)+C(e*p))));l=l+1|0;if((u|0)!=(l|0)){continue}break}}a=a+1|0;if((w|0)!=(a|0)){continue}break}}}function MZ(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0;h=xa-3616|0;xa=h;j=z[d+8>>2];i=C(z[c+24>>2]-z[d+24>>2]);k=C(i+i);l=z[d>>2];i=C(z[c+16>>2]-z[d+16>>2]);m=C(i+i);i=C(z[c+20>>2]-z[d+20>>2]);n=C(i+i);o=z[d+4>>2];p=C(C(j*k)+C(C(l*m)+C(n*o)));i=z[d+12>>2];q=C(C(i*i)+C(-.5));r=C(C(j*p)+C(C(k*q)-C(i*C(C(l*n)-C(m*o)))));z[h+3608>>2]=r;s=C(C(o*p)+C(C(n*q)-C(i*C(C(j*m)-C(k*l)))));z[h+3604>>2]=s;j=C(C(l*p)+C(C(m*q)-C(i*C(C(o*k)-C(n*j)))));z[h+3600>>2]=j;i=C(z[a+4>>2]+z[e>>2]);e=v[b+40>>2];a:{if(!(z[b+4>>2]!=C(1)|z[b+8>>2]!=C(1)|z[b+12>>2]!=C(1))){v[h+3504>>2]=g;v[h+2732>>2]=0;v[h+168>>2]=0;z[h+164>>2]=i*i;v[h+156>>2]=f;v[h+152>>2]=d;v[h+148>>2]=c;v[h+3508>>2]=e;v[h+144>>2]=a;v[h+160>>2]=h+3600;v[h+136>>2]=142644;v[h+140>>2]=2;z[h+3576>>2]=i;z[h+3572>>2]=i;z[h+3564>>2]=r;z[h+3560>>2]=s;v[h+3552>>2]=1065353216;a=h+3536|0;v[a>>2]=1065353216;v[a+4>>2]=0;z[h+3568>>2]=i;z[h+3556>>2]=j;v[h+3544>>2]=0;v[h+3548>>2]=0;v[h+3528>>2]=0;v[h+3532>>2]=0;v[h+3520>>2]=1065353216;v[h+3524>>2]=0;Ba[v[(x[e+4>>1]<<2)+142656>>2]](e,h+3520|0,h+136|0,1,1);break a}t=h+3520|0;IX(t,b+4|0,b+16|0);v[h+3504>>2]=g;v[h+2732>>2]=0;v[h+168>>2]=0;z[h+164>>2]=i*i;v[h+156>>2]=f;v[h+152>>2]=d;v[h+148>>2]=c;v[h+3508>>2]=e;v[h+160>>2]=h+3600;v[h+144>>2]=a;v[h+136>>2]=142684;v[h+3512>>2]=t;v[h+140>>2]=2;z[h+128>>2]=r;z[h+124>>2]=s;z[h+120>>2]=j;z[h+112>>2]=i;z[h+108>>2]=i;z[h+104>>2]=i;v[h+96>>2]=1065353216;v[h+80>>2]=1065353216;v[h+84>>2]=0;v[h+88>>2]=0;v[h+92>>2]=0;v[h+72>>2]=0;v[h+76>>2]=0;v[h+64>>2]=1065353216;v[h+68>>2]=0;mZ(t,h+120|0,h+104|0,h- -64|0);a=v[h+88>>2];v[h+20>>2]=v[h+84>>2];v[h+24>>2]=a;a=v[h+96>>2];v[h+28>>2]=v[h+92>>2];v[h+32>>2]=a;z[h+44>>2]=z[h+128>>2];z[h+56>>2]=z[h+112>>2];z[h>>2]=z[h+64>>2];a=v[h+72>>2];v[h+4>>2]=v[h+68>>2];v[h+8>>2]=a;a=v[h+80>>2];v[h+12>>2]=v[h+76>>2];v[h+16>>2]=a;a=v[h+124>>2];v[h+36>>2]=v[h+120>>2];v[h+40>>2]=a;a=v[h+108>>2];v[h+48>>2]=v[h+104>>2];v[h+52>>2]=a;Ba[v[(x[e+4>>1]<<2)+142656>>2]](e,h,h+136|0,1,1)}v[h+136>>2]=142644;NZ(h+144|0);xa=h+3616|0;return v[f+4096>>2]!=0}function A1(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0;f=xa-48|0;xa=f;a:{if(w[a+16|0]){m=z[c>>2];z[f>>2]=m;n=z[c+4>>2];z[f+4>>2]=n;i=z[c+8>>2];z[f+12>>2]=z[d>>2];z[f+16>>2]=z[d+4>>2];z[f+20>>2]=z[d+8>>2];z[f+24>>2]=z[e>>2];z[f+28>>2]=z[e+4>>2];z[f+32>>2]=z[e+8>>2];break a}h=v[a+8>>2];i=z[h+32>>2];o=z[h+20>>2];p=z[h+28>>2];q=z[h+16>>2];F=w[h+72|0];r=z[h+8>>2];s=z[h+4>>2];u=z[c>>2];x=z[h>>2];y=z[c+4>>2];A=z[h+12>>2];D=z[c+8>>2];E=z[h+24>>2];m=C(C(C(u*x)+C(y*A))+C(D*E));z[f>>2]=m;n=C(C(C(u*s)+C(y*q))+C(D*p));z[f+4>>2]=n;c=(F?24:12)+f|0;j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);c=(F?12:24)+f|0;j=z[e>>2];k=z[e+4>>2];l=z[e+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);i=C(C(C(u*r)+C(y*o))+C(D*i))}z[f+8>>2]=i;h=v[b+8>>2];b=v[a+12>>2];if(b){b=w[b+h|0]}else{b=56}e=a+20|0;d=v[a+868>>2];if((d|0)==16){c=a+880|0;L1(c,e,v[a+788>>2],w[a+852|0]);L1(c,a+56|0,v[a+792>>2],w[a+853|0]);L1(c,a+92|0,v[a+796>>2],w[a+854|0]);L1(c,a+128|0,v[a+800>>2],w[a+855|0]);L1(c,a+164|0,v[a+804>>2],w[a+856|0]);L1(c,a+200|0,v[a+808>>2],w[a+857|0]);L1(c,a+236|0,v[a+812>>2],w[a+858|0]);L1(c,a+272|0,v[a+816>>2],w[a+859|0]);L1(c,a+308|0,v[a+820>>2],w[a+860|0]);L1(c,a+344|0,v[a+824>>2],w[a+861|0]);L1(c,a+380|0,v[a+828>>2],w[a+862|0]);L1(c,a+416|0,v[a+832>>2],w[a+863|0]);L1(c,a+452|0,v[a+836>>2],w[a+864|0]);L1(c,a+488|0,v[a+840>>2],w[a+865|0]);L1(c,a+524|0,v[a+844>>2],w[a+866|0]);L1(c,a+560|0,v[a+848>>2],w[a+867|0]);i=z[f+8>>2];n=z[f+4>>2];m=z[f>>2];d=0}v[a+868>>2]=d+1;c=e+B(d,36)|0;z[c+8>>2]=i;z[c+4>>2]=n;z[c>>2]=m;z[c+12>>2]=z[f+12>>2];z[c+16>>2]=z[f+16>>2];z[c+20>>2]=z[f+20>>2];z[c+24>>2]=z[f+24>>2];z[c+28>>2]=z[f+28>>2];z[c+32>>2]=z[f+32>>2];a=B(d,12)+a|0;v[a+596>>2]=v[g>>2];v[a+600>>2]=v[g+4>>2];v[a+604>>2]=v[g+8>>2];v[(e+(d<<2)|0)+768>>2]=h;t[(d+e|0)+832|0]=b;xa=f+48|0;return 1}function nn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;v[a>>2]=121976;b=v[a+8>>2];a:{if(!b){break a}f=v[a+4>>2];if((b|0)!=1){i=b&-2;while(1){g=c<<2;h=g+f|0;e=v[h>>2];if(e){Ba[v[v[e>>2]+4>>2]](e)}v[h>>2]=0;g=f+(g|4)|0;e=v[g>>2];if(e){Ba[v[v[e>>2]+4>>2]](e)}v[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=v[b>>2];if(c){Ba[v[v[c>>2]+4>>2]](c)}v[b>>2]=0}c=0;v[a+8>>2]=0;d=0;e=xa-16|0;xa=e;b=a+24|0;f=v[b+20>>2];if(f){h=b+4|0;while(1){i=v[b+16>>2];g=d<<2;j=v[i+g>>2];if(j){f=x[j+52>>1];v[e+12>>2]=f;b:{if((f|0)==(v[b>>2]-1|0)){v[b>>2]=f;break b}j=v[b+8>>2];if(j>>>0>=(v[b+12>>2]&2147483647)>>>0){on(h,e+12|0);i=v[b+16>>2];break b}v[v[b+4>>2]+(j<<2)>>2]=f;v[b+8>>2]=v[b+8>>2]+1}f=v[g+i>>2];Ba[v[v[f>>2]>>2]](f);v[g+v[b+16>>2]>>2]=0;f=v[b+20>>2]}d=d+1|0;if(d>>>0>>0){continue}break}}b=v[b+16>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}xa=e+16|0;d=v[a+92>>2];c:{if(!d){break c}f=v[a+60>>2];while(1){b=v[(f+(c<<3)|0)+4>>2];if(b){e=v[b>>2];if(e){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,e)}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}c=c+1|0;if((d|0)!=(c|0)){continue}break}c=v[a+76>>2];if(!c|!v[a+92>>2]){break c}I9(v[a+68>>2],255,c<<2);c=0;b=v[a- -64>>2];d=v[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;v[b+(c<<2)>>2]=g;h=b+(g<<2)|0;g=c|2;v[h>>2]=g;h=b+(g<<2)|0;g=c|3;v[h>>2]=g;c=c+4|0;v[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;v[h>>2]=c;f=f+1|0;if((d|0)!=(f|0)){continue}break}}h=v[a+72>>2]-1|0}else{h=0}v[b+(h<<2)>>2]=-1;v[a+92>>2]=0;v[a+84>>2]=0}c=v[a+104>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+56>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+52>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+36>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=v[a+28>>2];if(!c){break d}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[37415]=0;c=v[a+12>>2];e:{if((c|0)<0|!(c&2147483647)){break e}c=v[a+4>>2];if(!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}return a|0}function cw(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0);D=z[c+100>>2];E=z[c+104>>2];F=z[c+112>>2];G=z[c+116>>2];H=z[c+120>>2];I=z[c+128>>2];J=z[c+132>>2];K=z[c+136>>2];s=z[c+52>>2];t=z[c+56>>2];u=z[c+68>>2];w=z[c+72>>2];o=z[c+84>>2];p=z[c+88>>2];x=z[c- -64>>2];y=z[c+80>>2];h=z[c+20>>2];i=z[c+24>>2];q=z[c+28>>2];g=z[c+36>>2];B=z[c+40>>2];r=z[c+44>>2];L=z[c+96>>2];A=z[c+48>>2];d=z[b+8>>2];e=z[b>>2];f=z[b+4>>2];j=z[c>>2];k=z[c+4>>2];l=z[c+8>>2];M=z[c+12>>2];m=z[c+16>>2];n=z[c+32>>2];v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;z[a+44>>2]=r;z[a+40>>2]=B;z[a+36>>2]=g;z[a+32>>2]=n;z[a+28>>2]=q;z[a+24>>2]=i;z[a+20>>2]=h;z[a+16>>2]=m;z[a+12>>2]=M;z[a+8>>2]=l;z[a+4>>2]=k;z[a>>2]=j;q=C(C(e*m)-C(f*j));z[a+80>>2]=y+q;j=C(C(d*j)-C(e*n));z[a- -64>>2]=x+j;m=C(C(f*n)-C(d*m));z[a+48>>2]=A+m;n=C(C(e*i)-C(f*l));z[a+88>>2]=p+n;r=C(C(e*h)-C(f*k));z[a+84>>2]=o+r;l=C(C(d*l)-C(e*B));z[a+72>>2]=w+l;k=C(C(d*k)-C(e*g));z[a+68>>2]=u+k;i=C(C(f*B)-C(d*i));z[a+56>>2]=t+i;h=C(C(f*g)-C(d*h));z[a+52>>2]=s+h;g=C(C(C(C(e*o)+C(p*C(0)))-C(f*y))+C(C(C(n*C(0))+C(C(e*r)-C(f*q)))*C(.5)));z[a+136>>2]=K+C(g+g);g=C(C(C(C(d*y)+C(C(o*C(0))-C(e*p)))+C(C(C(C(d*q)+C(r*C(0)))-C(e*n))*C(.5)))+C(C(C(C(e*u)+C(w*C(0)))-C(f*x))+C(C(C(l*C(0))+C(C(e*k)-C(f*j)))*C(.5))));z[a+132>>2]=J+g;o=C(C(C(C(y*C(0))+C(C(f*p)-C(d*o)))+C(C(C(f*n)+C(C(q*C(0))-C(d*r)))*C(.5)))+C(C(C(C(e*s)+C(t*C(0)))-C(f*A))+C(C(C(i*C(0))+C(C(e*h)-C(f*m)))*C(.5))));z[a+128>>2]=I+o;z[a+120>>2]=H+g;p=C(C(C(d*x)+C(C(u*C(0))-C(e*w)))+C(C(C(C(d*j)+C(k*C(0)))-C(e*l))*C(.5)));z[a+116>>2]=G+C(p+p);e=C(C(C(C(d*A)+C(C(s*C(0))-C(e*t)))+C(C(C(C(d*m)+C(h*C(0)))-C(e*i))*C(.5)))+C(C(C(x*C(0))+C(C(f*w)-C(d*u)))+C(C(C(f*l)+C(C(j*C(0))-C(d*k)))*C(.5))));z[a+112>>2]=F+e;z[a+104>>2]=E+o;z[a+100>>2]=D+e;d=C(C(C(A*C(0))+C(C(f*t)-C(d*s)))+C(C(C(f*i)+C(C(m*C(0))-C(d*h)))*C(.5)));z[a+96>>2]=L+C(d+d)}function vj(a,b,c){var d=0,e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);d=xa-96|0;xa=d;nu(a+20|0,b,c,a);f=v[a+52>>2];a:{if(!(t[(f&1?v[a+56>>2]:(v[((f>>>22&60)+89188|0)+12>>2]+a|0)+56|0)|0]&1)){break a}b:{c:{d:{if(!(!(w[c+5580|0]&32)|!w[c+5248|0])){g=z[c+5152>>2];break d}g=z[v[c+1008>>2]+1032>>2];if(!(w[c+5580|0]&32)){break c}}if(!w[c+5258|0]){break c}e=z[c+5192>>2];break b}e=z[v[c+1008>>2]+1072>>2]}e=C(g*e);if(e!=C(0)){f=d+32|0;Ba[v[v[a>>2]+76>>2]](f,a);f=YU(b,f);v[d+20>>2]=-16776961;v[d+12>>2]=-65536;v[d+16>>2]=-16711936;z[d+8>>2]=e;z[d+4>>2]=e;z[d>>2]=e;aV(f,d)}if(!(w[c+5580|0]&32)|!w[c+5250|0]){e=z[v[c+1008>>2]+1040>>2]}else{e=z[c+5160>>2]}e=C(g*e);if(e!=C(0)){f=YU(b,a+256|0);v[d+52>>2]=-16776961;v[d+44>>2]=-65536;v[d+48>>2]=-16711936;z[d+40>>2]=e;z[d+36>>2]=e;z[d+32>>2]=e;aV(f,d+32|0)}if(!(w[c+5580|0]&32)|!w[c+5252|0]){e=z[v[c+1008>>2]+1048>>2]}else{e=z[c+5168>>2]}e=C(g*e);if(e!=C(0)){v[b+4>>2]=16777215;v[d+44>>2]=0;v[d+48>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;v[d+52>>2]=1065353216;f=d- -64|0;v[f>>2]=0;v[f+4>>2]=0;v[d+76>>2]=0;v[d+80>>2]=0;v[d+72>>2]=1065353216;v[d+84>>2]=0;v[d+88>>2]=0;v[d+92>>2]=1065353216;v[d+36>>2]=0;v[d+40>>2]=0;v[d+32>>2]=1065353216;f=XU(b,d+32|0);k=z[a+284>>2];l=z[a+292>>2];i=z[a+288>>2];h=z[a+272>>2];z[d>>2]=h;m=z[a+276>>2];z[d+4>>2]=m;j=z[a+280>>2];z[d+16>>2]=m+C(e*i);z[d+20>>2]=j+C(e*l);z[d+24>>2]=e*C(.20000000298023224);z[d+12>>2]=h+C(e*k);z[d+8>>2]=j;$U(f,d)}if(!(w[c+5580|0]&32)|!w[c+5253|0]){e=z[v[c+1008>>2]+1052>>2]}else{e=z[c+5172>>2]}g=C(g*e);if(g==C(0)){break a}v[b+4>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;v[d+52>>2]=1065353216;c=d- -64|0;v[c>>2]=0;v[c+4>>2]=0;v[d+76>>2]=0;v[d+80>>2]=0;v[d+72>>2]=1065353216;v[d+84>>2]=0;v[d+88>>2]=0;v[d+92>>2]=1065353216;v[d+36>>2]=0;v[d+40>>2]=0;v[d+32>>2]=1065353216;b=XU(b,d+32|0);j=z[a+296>>2];k=z[a+304>>2];l=z[a+300>>2];i=z[a+272>>2];z[d>>2]=i;h=z[a+276>>2];z[d+4>>2]=h;e=z[a+280>>2];z[d+16>>2]=h+C(g*l);z[d+20>>2]=e+C(g*k);z[d+24>>2]=g*C(.20000000298023224);z[d+12>>2]=i+C(g*j);z[d+8>>2]=e;$U(b,d)}xa=d+96|0}function Zw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=0,W=0;d=xa+-64|0;xa=d;f=v[b+444>>2];m=v[b+264>>2];e=w[v[b+476>>2]];v[d+56>>2]=0;v[d+60>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;if(!(e&1)){F=z[b+560>>2];G=z[b+572>>2];H=z[b+584>>2];I=z[b+564>>2];J=z[b+576>>2];K=z[b+588>>2];L=z[b+568>>2];M=z[b+580>>2];N=z[b+592>>2];O=z[b+620>>2];P=z[b+608>>2];Q=z[b+596>>2];r=z[b+524>>2];n=z[b+528>>2];o=z[b+532>>2];p=z[b+624>>2];R=z[b+612>>2];S=z[b+600>>2];t=z[b+536>>2];u=z[b+540>>2];x=z[b+544>>2];y=z[b+548>>2];q=z[m+16>>2];i=C(-q);A=z[b+552>>2];h=z[m+20>>2];D=z[b+556>>2];g=z[m+24>>2];j=C(-z[m+4>>2]);k=z[m>>2];l=z[m+8>>2];s=C(C(C(C(y*i)-C(A*h))-C(D*g))+C(C(C(z[b+616>>2]*j)-C(k*z[b+604>>2]))-C(l*z[b+628>>2])));z[d+56>>2]=s;p=C(C(C(C(t*i)-C(u*h))-C(x*g))+C(C(C(R*j)-C(k*S))-C(l*p)));z[d+52>>2]=p;i=C(C(C(C(r*i)-C(n*h))-C(o*g))+C(C(C(P*j)-C(k*Q))-C(l*O)));z[d+48>>2]=i;h=C(-h);o=C(C(C(C(x*j)-C(k*o))-C(l*D))+C(C(C(M*h)-C(q*L))-C(g*N)));z[d+40>>2]=o;n=C(C(C(C(u*j)-C(k*n))-C(l*A))+C(C(C(J*h)-C(q*I))-C(g*K)));z[d+36>>2]=n;g=C(C(C(C(t*j)-C(k*r))-C(l*y))+C(C(C(G*h)-C(q*F))-C(g*H)));z[d+32>>2]=g}E=c<<5;f=E+f|0;e=v[f+8>>2];c=e-1|0;f=v[f+12>>2]-!e|0;if(c|f){while(1){T=v[b+452>>2];e=c;e=(U=Qaa(e),V=Qaa(f)+32|0,W=e,W?U:V);_w(d,(T+B(e,160)|0)+120|0,v[b+348>>2]+B(e,112)|0,v[b+360>>2]+B(e,36)|0,v[b+384>>2]+B(e,76)|0,(e<<5)+m|0,d+32|0);v[d+44>>2]=0;v[d+60>>2]=0;g=z[d>>2];z[d+32>>2]=g;n=z[d+4>>2];z[d+36>>2]=n;o=z[d+8>>2];z[d+40>>2]=o;i=z[d+16>>2];z[d+48>>2]=i;p=z[d+20>>2];z[d+52>>2]=p;s=z[d+24>>2];z[d+56>>2]=s;e=c;c=e-1&e;f=f&f-!e;if(c|f){continue}break}}b=E+v[b+228>>2]|0;j=z[b+20>>2];k=z[b+24>>2];l=z[b+16>>2];q=z[b>>2];h=z[b+4>>2];r=z[b+8>>2];v[a+28>>2]=0;z[a+24>>2]=r+o;z[a+20>>2]=h+n;z[a+16>>2]=q+g;v[a+12>>2]=0;z[a>>2]=l+i;z[a+8>>2]=k+s;z[a+4>>2]=j+p;xa=d- -64|0}function jZ(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0,w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0);j=xa-112|0;xa=j;l=z[d>>2];k=z[d+4>>2];z[j+40>>2]=C(1)/z[d+8>>2];z[j+36>>2]=C(1)/k;z[j+32>>2]=C(1)/l;z[j+44>>2]=z[d+12>>2];z[j+48>>2]=z[d+16>>2];z[j+52>>2]=z[d+20>>2];z[j+56>>2]=z[d+24>>2];k=z[b+8>>2];p=C(z[b+24>>2]*C(-2));m=z[b>>2];n=C(z[b+16>>2]*C(-2));q=C(z[b+20>>2]*C(-2));o=z[b+4>>2];r=C(C(k*p)+C(C(m*n)+C(q*o)));l=z[b+12>>2];s=C(C(l*l)+C(-.5));z[j+24>>2]=C(k*r)+C(C(p*s)-C(l*C(C(m*q)-C(n*o))));z[j+20>>2]=C(o*r)+C(C(q*s)-C(l*C(C(k*n)-C(p*m))));z[j+12>>2]=l;z[j+8>>2]=-k;z[j+4>>2]=-o;z[j>>2]=-m;z[j+16>>2]=C(m*r)+C(C(n*s)-C(l*C(C(o*p)-C(q*k))));aX(j- -64|0,j+32|0,j);a:{if(!e){break a}u=v[c+16>>2];if(!u){break a}q=z[j+84>>2];l=C(-z[h+4>>2]);k=z[h>>2];r=z[j+72>>2];m=z[h+8>>2];s=z[j+96>>2];H=C(C(C(q*l)-C(k*r))-C(m*s));w=z[j+80>>2];x=z[j+68>>2];y=z[j+92>>2];I=C(C(C(w*l)-C(k*x))-C(m*y));A=z[j+76>>2];D=z[j+64>>2];E=z[j+88>>2];J=C(C(C(A*l)-C(k*D))-C(m*E));K=C(C(g+i)+C(-9999999747378752e-21));L=v[c+24>>2];M=z[j+108>>2];N=z[j+104>>2];O=z[j+100>>2];t=v[a+4096>>2];c=0;while(1){b=B(c,12)+f|0;m=z[b>>2];o=z[b+4>>2];p=z[b+8>>2];P=C(C(C(C(r*m)+C(q*o))+C(s*p))+M);Q=C(C(C(C(x*m)+C(w*o))+C(y*p))+N);R=C(O+C(C(C(D*m)+C(A*o))+C(E*p)));l=C(34028234663852886e22);b=u;d=L;i=C(-34028234663852886e22);b:{while(1){k=z[d+8>>2];n=z[d>>2];F=z[d+4>>2];G=C(z[d+12>>2]+C(C(P*k)+C(C(R*n)+C(Q*F))));n=C(C(k*H)+C(C(n*J)+C(I*F)));k=C(C(-G)/n);c:{if(n>C(1.0000000116860974e-7)){l=k>l?l:k;break c}if(nk?i:k;break c}if(G>C(0)){break b}}d=d+20|0;b=b-1|0;if(b){continue}break}if(!(i>>0>63|i==C(-34028234663852886e22))){break b}l=z[h>>2];k=z[h+4>>2];n=z[h+8>>2];b=t+1|0;v[a+4096>>2]=b;d=(t<<6)+a|0;z[d+8>>2]=n;z[d+4>>2]=k;z[d>>2]=l;v[d+52>>2]=-1;z[d+12>>2]=i-g;z[d+24>>2]=p-C(i*n);z[d+20>>2]=o-C(i*k);z[d+16>>2]=m-C(i*l);t=b}c=c+1|0;if((e|0)!=(c|0)){continue}break}}xa=j+112|0}function Ev(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=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=0,r=0,s=0,u=0,w=0,x=0;i=xa-720|0;xa=i;q=v[f>>2];j=z[a+8>>2];k=z[a+4>>2];l=z[a+12>>2];z[i+716>>2]=l;z[i+712>>2]=j;z[i+708>>2]=k;z[i+704>>2]=-l;z[i+700>>2]=-j;z[i+696>>2]=-k;f=0;a:{if(z[b+4>>2]!=C(1)){break a}f=0;if(z[b+8>>2]!=C(1)){break a}f=z[b+12>>2]==C(1)}v[i+680>>2]=0;v[i+684>>2]=1065353216;v[i+672>>2]=0;v[i+676>>2]=0;v[i+664>>2]=0;v[i+668>>2]=1065353216;v[i+656>>2]=0;v[i+660>>2]=0;v[i+648>>2]=1065353216;v[i+652>>2]=1065353216;v[i+632>>2]=1065353216;v[i+636>>2]=0;t[i+688|0]=0;v[i+640>>2]=0;v[i+644>>2]=0;v[i+624>>2]=0;v[i+628>>2]=0;v[i+616>>2]=1065353216;v[i+620>>2]=0;if(!f){IX(i+616|0,b+4|0,b+16|0);l=z[a+12>>2];k=z[a+4>>2];j=z[a+8>>2]}v[i+600>>2]=0;v[i+604>>2]=1065353216;v[i+592>>2]=0;v[i+596>>2]=0;v[i+584>>2]=0;v[i+588>>2]=1065353216;v[i+576>>2]=0;v[i+580>>2]=0;v[i+568>>2]=1065353216;v[i+572>>2]=1065353216;v[i+552>>2]=1065353216;v[i+556>>2]=0;t[i+608|0]=0;v[i+560>>2]=0;v[i+564>>2]=0;v[i+544>>2]=0;v[i+548>>2]=0;v[i+536>>2]=1065353216;v[i+540>>2]=0;o=C(z[e+8>>2]*C(.05000000074505806));m=j>=k?k:j;p=l>=m?m:l;m=C(p*C(.15000000596046448));z[i+512>>2]=m>o?o:m;v[i+508>>2]=0;z[i+504>>2]=l;z[i+500>>2]=j;v[i+456>>2]=0;v[i+460>>2]=0;v[i+448>>2]=0;v[i+452>>2]=0;z[i+496>>2]=k;t[i+480|0]=0;v[i+476>>2]=3;j=C(p*C(.05000000074505806));z[i+472>>2]=j;z[i+468>>2]=j;z[i+464>>2]=m;j=z[c+24>>2];n=v[c>>2];r=v[c+4>>2];s=v[c+8>>2];u=v[c+12>>2];w=v[c+20>>2];x=v[c+16>>2];v[i+444>>2]=0;z[i+440>>2]=j;v[i+432>>2]=x;v[i+436>>2]=w;v[i+424>>2]=s;v[i+428>>2]=u;v[i+416>>2]=n;v[i+420>>2]=r;n=y_(i+120|0,a+4|0);a=i+344|0;j2(n,a);v[i+88>>2]=0;v[i+92>>2]=0;v[i+84>>2]=1065353216;v[i+96>>2]=0;v[i+100>>2]=0;v[i+104>>2]=1065353216;v[i+108>>2]=0;v[i+68>>2]=0;v[i+72>>2]=0;v[i+64>>2]=1065353216;v[i+76>>2]=0;v[i+80>>2]=0;t[i+44|0]=1;v[i>>2]=141108;n=i- -64|0;v[i+40>>2]=n;v[i+36>>2]=n;v[i+32>>2]=i+416;v[i+48>>2]=i+448;a=S1(a,i,i+512|0,i+696|0,b,c,d,z[e>>2],g,i+536|0,i+616|0,1,f,q,h);xa=i+720|0;return a|0} -function nJ(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=0;i=xa-16|0;xa=i;g=v[b+44>>2];a:{b:{if(g&32768){c:{if(!(g&476)){break c}g=g&(g&524288?272:16);if(g){RR(b,g,(x[v[b+48>>2]+2>>1]==1)<<3,1,d,e)}g=v[v[b+48>>2]+16>>2];if(!g|v[g+12>>2]!=v[v[v[b+4>>2]+40>>2]+1088>>2]){break c}e=16;d:{if(!(c&1)){break d}e=17;if(!(w[g+10|0]&8)){break d}h=v[b+48>>2];j=v[h+12>>2];d=v[v[v[v[b+4>>2]+40>>2]+2168>>2]+44>>2]+v[g>>2]|0;h=v[v[h+8>>2]+44>>2];e:{if(w[h+9|0]){z[d+12>>2]=z[h+80>>2];z[d+16>>2]=z[h+84>>2];z[d+20>>2]=z[h+88>>2];k=z[h+100>>2];l=z[h+96>>2];m=z[h+104>>2];break e}v[d+20>>2]=0;v[d+12>>2]=0;v[d+16>>2]=0;m=C(0)}z[d+44>>2]=m;z[d+40>>2]=k;z[d+36>>2]=l;h=v[j+44>>2];f:{if(w[h+9|0]){z[d+24>>2]=z[h+80>>2];z[d+28>>2]=z[h+84>>2];z[d+32>>2]=z[h+88>>2];l=z[h+96>>2];n=z[h+104>>2];k=z[h+100>>2];break f}v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;l=C(0);k=C(0)}z[d+56>>2]=n;z[d+52>>2]=k;z[d+48>>2]=l;u[g+10>>1]=x[g+10>>1]&65527}u[g+10>>1]=x[g+10>>1]|e}g=v[v[b+28>>2]+4>>2];h=w[v[g+44>>2]+9|0];j=v[v[b+32>>2]+4>>2];o=w[v[j+44>>2]+9|0];d=v[b+48>>2];e=x[d+2>>1]-1|0;u[d+2>>1]=e;if(!(e&65535?f:1)){break b}e=v[(h-1>>>0<2?g:0)+100>>2];v[e+152>>2]=v[e+152>>2]-1;e=o-1>>>0<2?j:0;if(!e){break b}e=v[e+100>>2];v[e+152>>2]=v[e+152>>2]-1;break b}d=v[b+48>>2];if(!d){break a}}e=x[d+4>>1]-1|0;u[d+4>>1]=e;if(e&65535){break a}e=v[b+4>>2];f=v[b+8>>2];g=y[e+48>>2]>y[f+48>>2];v[i+8>>2]=v[(g?f:e)+48>>2];v[i+12>>2]=v[(g?e:f)+48>>2];EI(a+1916|0,i+8|0);if(!(t[d|0]&1)){v[a+392>>2]=v[a+392>>2]-1;v[d>>2]=v[a+400>>2];v[a+400>>2]=d;break a}e=v[d+16>>2];if(e){f=a+1560|0;v[f>>2]=v[f>>2]-1;f=a+1568|0;v[e>>2]=v[f>>2];v[f>>2]=e;v[d+16>>2]=0}v[a+684>>2]=v[a+684>>2]-1;v[d>>2]=v[a+692>>2];v[a+692>>2]=d}v[b+48>>2]=0;d=v[b+44>>2];g:{if(!(d&32768)){e=v[b+56>>2];h:{if(e){d=w[e+43|0]&3;break h}d=d&98304}if(d){break g}}if(!(c&4)){break g}c=v[v[b+28>>2]+4>>2];c=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;d=v[v[b+32>>2]+4>>2];d=w[v[d+44>>2]+9|0]-1>>>0<2?d:0;if(!(d?c:0)){if(c){oH(c)}if(!d){break g}oH(d);break g}if(w[b+46|0]&4){break g}AP(v[a>>2],c,d)}xa=i+16|0}function UR(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=xa-16|0;xa=g;f=v[a+44>>2];c=v[v[a+4>>2]+40>>2];e=w[a+26|0]|b;a:{if(!(e&33)){break a}b=v[v[a+32>>2]+4>>2];d=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;b=1;h=v[a+44>>2];i=h&262144;b:{c:{j=v[v[a+28>>2]+4>>2];d:{if(t[v[(w[v[j+44>>2]+9|0]-1>>>0<2?j:0)+44>>2]+44|0]&1){if(!d){break d}b=!(t[v[d+44>>2]+44|0]&1)}if(!(f&1)){break d}if(b){break c}}b=h|262144;break b}b=h&-262145}v[a+44>>2]=b;e:{f:{if(!(f&514|z[v[c+976>>2]+1056>>2]!=C(0)|(z[v[c+976>>2]+1060>>2]!=C(0)|z[v[c+976>>2]+1064>>2]!=C(0)))){if(z[v[c+976>>2]+1068>>2]==C(0)){break f}}b=v[a+44>>2]|131072;break e}b=v[a+44>>2]&-131073}v[a+44>>2]=b;d=b&262144;if(!(!d|i)){jG(v[c+1e3>>2],v[a+60>>2]);break a}if(!(b&32768)|(d|!i)){break a}hG(v[c+1e3>>2],v[a+60>>2])}g:{if(!(!v[a+56>>2]|(f^v[a+44>>2])&393694)){b=v[a+32>>2];f=v[a+28>>2];if(e&8){d=g+8|0;h=v[v[a+4>>2]+40>>2];c=v[f+4>>2];i=w[v[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+44>>2]+10|0];c=v[b+4>>2];c=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;if(c){c=w[v[c+44>>2]+10|0]}else{c=0}QP(d,h,i,c);c=v[a+56>>2];t[c+44|0]=w[g+8|0];t[c+45|0]=w[g+9|0]}h:{if(!(e&5)){break h}c=v[b+4>>2];c=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;if(!c){break h}d=v[a+56>>2];u[d+40>>1]=x[d+40>>1]&64511|(t[v[c+44>>2]+44|0]&1)<<10}c=v[a+56>>2];if(e&16){z[c+52>>2]=z[v[f+28>>2]+128>>2]+z[v[b+28>>2]+128>>2]}b=v[c+8>>2]&-7;v[c+8>>2]=(v[a+44>>2]&2048)>>>11|0?b|2:b;break g}if(!(w[a+25|0]&32)){break g}if(e&5){e=v[v[a+28>>2]+4>>2];d=B(v[(w[v[e+44>>2]+9|0]-1>>>0<2?e:0)+144>>2]>>>7|0,24);e=v[v[v[v[a+4>>2]+40>>2]+1e3>>2]+656>>2];b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(!(w[(d+e|0)+4|0]&34|(w[(e+B(v[b+144>>2]>>>7|0,24)|0)+4|0]&34?b:0))){VR(a);$O(c,a+4|0);break g}b=v[a+60>>2];if((b|0)!=-1){kG(v[c+1e3>>2],b)}b=v[v[a+4>>2]+40>>2];c=v[v[b+976>>2]+1024>>2];Ba[v[v[c>>2]+36>>2]](c,v[a+56>>2]);vK(v[b+976>>2],v[a+56>>2]);v[a+56>>2]=0;IR(a,0);break g}b=v[a+60>>2];if((b|0)!=-1){kG(v[c+1e3>>2],b)}b=v[v[a+4>>2]+40>>2];c=v[v[b+976>>2]+1024>>2];Ba[v[v[c>>2]+36>>2]](c,v[a+56>>2]);vK(v[b+976>>2],v[a+56>>2]);v[a+56>>2]=0;IR(a,0)}xa=g+16|0}function CO(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0);a:{if(d){g=z[c+40>>2];f=C(z[c+56>>2]*C(-2));i=z[c+32>>2];m=C(z[c+48>>2]*C(-2));n=C(z[c+52>>2]*C(-2));h=z[c+36>>2];o=C(C(g*f)+C(C(i*m)+C(n*h)));l=z[c+8>>2];e=z[c+44>>2];p=C(C(e*e)+C(-.5));j=C(C(g*o)+C(C(f*p)-C(e*C(C(i*n)-C(m*h)))));q=C(j+j);j=z[c>>2];k=C(C(i*o)+C(C(m*p)-C(e*C(C(h*f)-C(n*g)))));r=C(k+k);k=z[c+4>>2];f=C(C(h*o)+C(C(n*p)-C(e*C(C(g*m)-C(f*i)))));p=C(f+f);t=C(C(l*q)+C(C(j*r)+C(k*p)));f=z[c+12>>2];w=C(C(f*f)+C(-.5));m=C(C(i*k)+C(C(C(e*l)-C(f*g))-C(j*h)));n=z[b+24>>2];u=C(n+n);n=C(C(h*l)+C(C(C(e*j)-C(f*i))-C(k*g)));o=z[b+16>>2];v=C(o+o);o=C(C(g*j)+C(C(C(e*k)-C(f*h))-C(l*i)));s=z[b+20>>2];s=C(s+s);x=C(C(m*u)+C(C(n*v)+C(o*s)));e=C(C(l*g)+C(C(k*h)+C(C(f*e)+C(i*j))));g=C(C(e*e)+C(-.5));y=C(C(z[c+24>>2]+C(C(l*t)+C(C(q*w)+C(f*C(C(j*p)-C(r*k))))))+C(C(m*x)+C(C(u*g)+C(e*C(C(n*s)-C(v*o))))));A=C(C(z[c+20>>2]+C(C(k*t)+C(C(p*w)+C(f*C(C(l*r)-C(q*j))))))+C(C(o*x)+C(C(s*g)+C(e*C(C(m*v)-C(u*n))))));q=C(C(z[c+16>>2]+C(C(j*t)+C(C(r*w)+C(f*C(C(k*q)-C(p*l))))))+C(C(n*x)+C(C(v*g)+C(e*C(C(o*u)-C(s*m))))));f=z[b+12>>2];g=z[b>>2];i=z[b+4>>2];h=z[b+8>>2];r=C(C(C(C(e*f)-C(g*n))-C(o*i))-C(m*h));p=C(C(C(n*i)+C(C(e*h)+C(m*f)))-C(g*o));t=C(C(C(m*g)+C(C(e*i)+C(o*f)))-C(h*n));e=C(C(C(o*h)+C(C(e*g)+C(n*f)))-C(i*m));break a}f=z[c+8>>2];e=z[b+24>>2];h=C(e+e);g=z[c>>2];e=z[b+16>>2];l=C(e+e);e=z[b+20>>2];j=C(e+e);i=z[c+4>>2];k=C(C(f*h)+C(C(g*l)+C(j*i)));e=z[c+12>>2];m=C(C(e*e)+C(-.5));y=C(z[c+24>>2]+C(C(f*k)+C(C(h*m)+C(e*C(C(g*j)-C(l*i))))));A=C(z[c+20>>2]+C(C(i*k)+C(C(j*m)+C(e*C(C(f*l)-C(h*g))))));q=C(z[c+16>>2]+C(C(g*k)+C(C(l*m)+C(e*C(C(i*h)-C(j*f))))));h=z[b+12>>2];l=z[b>>2];j=z[b+4>>2];k=z[b+8>>2];r=C(C(C(C(e*h)-C(l*g))-C(i*j))-C(f*k));p=C(C(C(g*j)+C(C(e*k)+C(f*h)))-C(l*i));t=C(C(C(f*l)+C(C(e*j)+C(i*h)))-C(k*g));e=C(C(C(i*k)+C(C(e*l)+C(g*h)))-C(j*f))}z[a+16>>2]=q;z[a+12>>2]=r;z[a+8>>2]=p;z[a+4>>2]=t;z[a>>2]=e;z[a+24>>2]=y;z[a+20>>2]=A}function rA(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=0;n=v[a+24>>2];if(w[n+1|0]){a=n+48|0;k=z[e+8>>2];l=z[e+4>>2];j=z[e>>2];while(1){m=z[a+80>>2];p=z[a+88>>2];q=z[a>>2];r=z[a+32>>2];s=z[a+16>>2];t=z[a+48>>2];u=z[a+4>>2];x=z[a+36>>2];y=z[a+20>>2];A=z[a+52>>2];o=C(C(C(C(q*z[b>>2])+C(r*z[d>>2]))-C(C(s*z[c>>2])+C(t*j)))+C(C(C(u*z[b+4>>2])+C(x*z[d+4>>2]))-C(C(y*z[c+4>>2])+C(A*l))));j=z[a+8>>2];l=z[a+40>>2];B=z[a+24>>2];D=z[a+56>>2];k=C(C(z[a+60>>2]*p)+C(z[a+12>>2]+C(z[a+44>>2]*C(o+C(C(C(j*z[b+8>>2])+C(l*z[d+8>>2]))-C(C(B*z[c+8>>2])+C(D*k)))))));k=k>2];k=k>2]=k;v[f+12>>2]=0;o=j;j=C(k-p);z[f+8>>2]=z[f+8>>2]+C(o*j);z[f+4>>2]=z[f+4>>2]+C(u*j);z[f>>2]=z[f>>2]+C(q*j);v[h+12>>2]=0;z[h+8>>2]=z[h+8>>2]+C(l*j);z[h+4>>2]=z[h+4>>2]+C(x*j);z[h>>2]=z[h>>2]+C(r*j);v[g+12>>2]=0;z[g+8>>2]=C(B*j)+z[g+8>>2];z[g+4>>2]=C(y*j)+z[g+4>>2];z[g>>2]=C(s*j)+z[g>>2];v[i+12>>2]=0;z[i+8>>2]=C(D*j)+z[i+8>>2];z[i+4>>2]=C(A*j)+z[i+4>>2];z[i>>2]=C(t*j)+z[i>>2];k=z[a+100>>2];l=z[a+104>>2];m=z[a+96>>2];v[b+12>>2]=0;z[b+8>>2]=C(j*l)+z[b+8>>2];z[b+4>>2]=C(j*k)+z[b+4>>2];z[b>>2]=C(j*m)+z[b>>2];k=z[a+112>>2];l=z[a+116>>2];m=z[a+120>>2];v[d+12>>2]=0;z[d+8>>2]=C(j*m)+z[d+8>>2];z[d+4>>2]=C(j*l)+z[d+4>>2];z[d>>2]=C(j*k)+z[d>>2];k=z[a+132>>2];l=z[a+136>>2];m=z[a+128>>2];v[c+12>>2]=0;z[c+8>>2]=C(j*l)+z[c+8>>2];z[c+4>>2]=C(j*k)+z[c+4>>2];z[c>>2]=C(j*m)+z[c>>2];m=z[a+144>>2];l=z[a+148>>2];k=z[a+152>>2];v[e+12>>2]=0;k=C(C(j*k)+z[e+8>>2]);z[e+8>>2]=k;l=C(C(j*l)+z[e+4>>2]);z[e+4>>2]=l;j=C(C(j*m)+z[e>>2]);z[e>>2]=j;a=a+160|0;E=E+1|0;if(E>>>0>2];v[f+12>>2]=0;z[f+8>>2]=j*z[f+8>>2];z[f+4>>2]=j*z[f+4>>2];z[f>>2]=j*z[f>>2];j=z[n+40>>2];v[g+12>>2]=0;z[g+8>>2]=j*z[g+8>>2];z[g+4>>2]=j*z[g+4>>2];z[g>>2]=j*z[g>>2];j=z[n+36>>2];v[h+12>>2]=0;z[h+8>>2]=j*z[h+8>>2];z[h+4>>2]=j*z[h+4>>2];z[h>>2]=j*z[h>>2];j=z[n+44>>2];v[i+12>>2]=0;z[i+8>>2]=j*z[i+8>>2];z[i+4>>2]=j*z[i+4>>2];z[i>>2]=j*z[i>>2]}function p1(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0);l=z[d+40>>2];t=z[c+8>>2];n=z[d+32>>2];m=z[c>>2];j=z[d+36>>2];k=z[c+4>>2];u=C(C(l*t)+C(C(n*m)+C(j*k)));s=C(D(u));i=z[e+8>>2];f=z[e+4>>2];g=z[e>>2];h=z[d+8>>2];q=z[d>>2];r=z[d+4>>2];o=C(C(h*t)+C(C(q*m)+C(r*k)));x=C(D(o));p=z[d+24>>2];w=C(p*t);t=z[d+16>>2];y=C(t*m);m=z[d+20>>2];k=C(w+C(y+C(m*k)));w=C(D(k));a:{if(!(!(x>=w)|!(s<=x))){v[b+12>>2]=0;c=o>C(0);z[b+8>>2]=c?C(-h):h;z[b+4>>2]=c?C(-r):r;z[b>>2]=c?C(-q):q;k=z[d+52>>2];s=z[d+56>>2];u=z[d+48>>2];v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;o=h;h=c?C(-g):g;g=C(s+C(o*h));p=C(f*p);s=C(i*l);o=C(p+s);z[a+40>>2]=g-o;l=C(k+C(r*h));r=C(f*m);m=C(i*j);k=C(r+m);z[a+36>>2]=l-k;j=C(u+C(q*h));f=C(f*t);i=C(i*n);n=C(f+i);z[a+32>>2]=j-n;h=C(p-s);z[a+24>>2]=h+g;q=C(r-m);z[a+20>>2]=q+l;f=C(f-i);z[a+16>>2]=f+j;z[a+8>>2]=o+g;z[a+4>>2]=k+l;z[a>>2]=n+j;i=C(g-h);f=C(j-f);g=C(l-q);break a}if(s<=w){v[b+12>>2]=0;c=k>C(0);z[b+8>>2]=c?C(-p):p;z[b+4>>2]=c?C(-m):m;z[b>>2]=c?C(-t):t;k=z[d+52>>2];s=z[d+56>>2];u=z[d+48>>2];v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;o=p;p=c?C(-f):f;f=C(s+C(o*p));h=C(g*h);s=C(i*l);o=C(h+s);z[a+40>>2]=f-o;l=C(k+C(m*p));r=C(g*r);m=C(i*j);k=C(r+m);z[a+36>>2]=l-k;j=C(u+C(t*p));g=C(g*q);i=C(i*n);n=C(g+i);z[a+32>>2]=j-n;h=C(h-s);z[a+24>>2]=h+f;q=C(r-m);z[a+20>>2]=q+l;g=C(g-i);z[a+16>>2]=g+j;z[a+8>>2]=o+f;z[a+4>>2]=k+l;z[a>>2]=n+j;i=C(f-h);f=C(j-g);g=C(l-q);break a}v[b+12>>2]=0;c=u>C(0);z[b+8>>2]=c?C(-l):l;z[b+4>>2]=c?C(-j):j;z[b>>2]=c?C(-n):n;s=z[d+52>>2];k=z[d+56>>2];u=z[d+48>>2];v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;o=k;k=c?C(-i):i;i=C(o+C(l*k));h=C(g*h);p=C(f*p);o=C(h+p);z[a+40>>2]=i-o;l=C(s+C(j*k));j=C(g*r);r=C(f*m);m=C(j+r);z[a+36>>2]=l-m;n=C(u+C(n*k));g=C(g*q);f=C(f*t);q=C(g+f);z[a+32>>2]=n-q;h=C(h-p);z[a+24>>2]=h+i;j=C(j-r);z[a+20>>2]=j+l;f=C(g-f);z[a+16>>2]=f+n;z[a+8>>2]=o+i;z[a+4>>2]=m+l;z[a>>2]=q+n;i=C(i-h);f=C(n-f);g=C(l-j)}z[a+48>>2]=f;v[a+60>>2]=0;z[a+56>>2]=i;z[a+52>>2]=g}function p4(a,b,c,d,e,f,g,h){var i=C(0),j=0,k=0,l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0);n=xa-16|0;xa=n;a:{if(!b){a=0;break a}if(w[v[a+4>>2]+36|0]&8){k=v[37696];j=Ba[v[v[k>>2]+20>>2]](k)|0?38175:63804;j=Ba[v[v[k+12>>2]+8>>2]](k+12|0,52,j,7858,336)|0;v[j+28>>2]=0;v[j+32>>2]=0;v[j>>2]=144984;v[j+4>>2]=1065353216;v[j+8>>2]=1065353216;v[j+36>>2]=0;v[j+40>>2]=0;v[j+44>>2]=0;v[j+48>>2]=0;v[j+20>>2]=0;v[j+24>>2]=0;v[j+12>>2]=1065353216;v[j+16>>2]=0;k=Ba[v[v[j>>2]>>2]](j,b,c,d,1,x[v[a+4>>2]+40>>1],n+12|0)|0;c=k?k:c;b=k?v[n+12>>2]:b}i=z[v[a+8>>2]+16>>2];v[e>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=1065353216;v[g+4>>2]=1065353216;u=C(i*C(9.999999974752427e-7));y=C(i*C(.009999999776482582));if(q4(b,c,d,u,y,h,g,e,f,0)){a=1;if(!j){break a}Ba[v[v[j>>2]+12>>2]](j);break a}m=z[g>>2];i=z[g+4>>2];A=C(C(1)/z[g+8>>2]);z[h+8>>2]=A*z[h+8>>2];E=C(C(1)/i);z[h+4>>2]=E*z[h+4>>2];F=C(C(1)/m);z[h>>2]=F*z[h>>2];l=v[e>>2];if(b){while(1){o=C(A*z[c+8>>2]);p=C(E*z[c+4>>2]);q=C(F*z[c>>2]);a=0;b:{c:{d:{if(!l){break d}while(1){e:{k=B(a,12)+f|0;r=z[k>>2];if(!(C(D(C(q-r)))>2];if(!(C(D(C(p-G)))>2];if(!(C(D(C(o-s)))>2];i=C(o-H);t=C(i*i);I=z[h>>2];i=C(q-I);K=C(i*i);m=z[h+4>>2];i=C(p-m);t=C(t+C(K+C(i*i)));i=C(s-H);s=C(i*i);i=C(r-I);r=C(i*i);i=C(G-m);if(!(t>C(s+C(r+C(i*i))))){break d}z[k>>2]=q;z[k+8>>2]=o;z[k+4>>2]=p;break d}a=a+1|0;if((l|0)!=(a|0)){continue}break}break c}if((a|0)!=(l|0)){break b}}a=B(l,12)+f|0;z[a+8>>2]=o;z[a+4>>2]=p;z[a>>2]=q;l=l+1|0;v[e>>2]=l}c=c+d|0;J=J+1|0;if((J|0)!=(b|0)){continue}break}}f:{if(l>>>0>=4){b=0;while(1){m=z[g>>2];i=z[g+4>>2];a=B(b,12)+f|0;z[a+8>>2]=z[a+8>>2]*z[g+8>>2];z[a+4>>2]=i*z[a+4>>2];z[a>>2]=m*z[a>>2];b=b+1|0;if((l|0)!=(b|0)){continue}break}q4(l,f,12,u,y,h,g,e,f,1);if(!j){break f}Ba[v[v[j>>2]+12>>2]](j);break f}a9(v[37696],32,13231,277,66054,0)}a=l>>>0>3}xa=n+16|0;return a}function ID(a,b,c,d,e){var f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,u=0,w=0;f=xa-1184|0;xa=f;t[f+1168|0]=1;v[f+1176>>2]=256;v[f+1180>>2]=256;v[f+1172>>2]=f+144;s=v[c+8>>2];v[f+144>>2]=s;m=1;a:while(1){m=m-1|0;g=v[v[f+1172>>2]+(m<<2)>>2];i=z[g>>2];j=z[g+12>>2];n=C(i+j);i=C(j-i);k=z[g+8>>2];l=z[g+20>>2];j=C(k+l);o=z[g+4>>2];p=z[g+16>>2];q=C(o+p);k=C(l-k);l=C(p-o);while(1){b:{z[f+132>>2]=q*C(.5);z[f+128>>2]=n*C(.5);v[f+140>>2]=0;z[f+136>>2]=j*C(.5);z[f+116>>2]=l*C(.5);z[f+112>>2]=i*C(.5);v[f+124>>2]=0;z[f+120>>2]=k*C(.5);h=v[f+132>>2];v[f+48>>2]=v[f+128>>2];v[f+52>>2]=h;h=v[f+140>>2];v[f+56>>2]=v[f+136>>2];v[f+60>>2]=h;h=v[f+116>>2];v[f+32>>2]=v[f+112>>2];v[f+36>>2]=h;h=v[f+124>>2];v[f+40>>2]=v[f+120>>2];v[f+44>>2]=h;c:{d:{if(!MD(d,f+48|0,f+32|0)){break d}g=v[g+24>>2];h=g>>>1|0;if(!(g&1)){break c}r=h&15;if(!r){break d}h=v[c>>2]+(g>>>3&536870908)|0;if((r|0)==1){if(Ba[v[v[e>>2]>>2]](e,f+76|0,(v[h>>2]<<3)+a|0)|0){break d}break b}while(1){u=v[h>>2];g=B(u,24)+b|0;n=z[g+8>>2];i=z[g+20>>2];j=z[g+4>>2];q=z[g+16>>2];k=z[g>>2];l=z[g+12>>2];z[f+96>>2]=C(k+l)*C(.5);z[f+100>>2]=C(j+q)*C(.5);v[f+108>>2]=0;z[f+104>>2]=C(n+i)*C(.5);z[f+80>>2]=C(l-k)*C(.5);z[f+84>>2]=C(q-j)*C(.5);v[f+92>>2]=0;z[f+88>>2]=C(i-n)*C(.5);g=v[f+100>>2];v[f+16>>2]=v[f+96>>2];v[f+20>>2]=g;g=v[f+108>>2];v[f+24>>2]=v[f+104>>2];v[f+28>>2]=g;g=v[f+84>>2];v[f>>2]=v[f+80>>2];v[f+4>>2]=g;g=v[f+92>>2];v[f+8>>2]=v[f+88>>2];v[f+12>>2]=g;if(MD(d,f+16|0,f)){if(!(Ba[v[v[e>>2]>>2]](e,f+76|0,(u<<3)+a|0)|0)){break b}}h=h+4|0;r=r-1|0;if(r){continue}break}}w=!m;if(m){continue a}break b}g=B(h,28)+s|0;v[v[f+1172>>2]+(m<<2)>>2]=g+28;m=m+1|0;if((m|0)==(v[f+1180>>2]&2147483647)){ND(f+144|0,m<<1)}i=z[g>>2];j=z[g+12>>2];n=C(i+j);i=C(j-i);k=z[g+8>>2];l=z[g+20>>2];j=C(k+l);o=z[g+4>>2];p=z[g+16>>2];q=C(o+p);k=C(l-k);l=C(p-o);continue}break}break}a=v[f+1180>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[f+1172>>2];if((a|0)==(f+144|0)|!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=f+1184|0;return w}function M_(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0);h=xa-32|0;xa=h;l=t[c+36|0]<<4;p=l+b|0;r=z[p+8>>2];l=a+l|0;s=z[l+8>>2];u=z[p>>2];G=z[l>>2];H=z[p+4>>2];I=z[l+4>>2];l=t[c+37|0]<<4;p=l+b|0;J=z[p+8>>2];l=a+l|0;K=z[l+8>>2];L=t[c+35|0]<<4;b=L+b|0;M=z[b+8>>2];a=a+L|0;N=z[a+8>>2];O=z[p>>2];P=z[l>>2];Q=z[b>>2];R=z[a>>2];S=z[p+4>>2];T=z[l+4>>2];U=z[b+4>>2];V=z[a+4>>2];B=z[c+8>>2];Y=z[c>>2];k=z[c+16>>2];Z=z[c+4>>2];v[h+28>>2]=0;x=C(N-M);i=C(C(s-r)-x);E=C(R-Q);j=C(C(G-u)-E);F=C(V-U);m=C(C(I-H)-F);W=C(C(i*i)+C(C(j*j)+C(m*m)));n=C(C(K-J)-x);o=C(C(P-O)-E);q=C(C(T-S)-F);X=C(C(n*n)+C(C(o*o)+C(q*q)));y=C(C(i*n)+C(C(j*o)+C(m*q)));A=C(C(W*X)-C(y*y));A=A>C(1.1920928955078125e-7)?C(C(1)/A):C(0);x=C(C(B*k)-x);B=C(x*i);i=C(C(Y*k)-E);k=C(C(Z*k)-F);j=C(B+C(C(i*j)+C(m*k)));i=C(C(x*n)+C(C(i*o)+C(q*k)));k=C(A*C(C(X*j)-C(y*i)));i=C(A*C(C(W*i)-C(y*j)));j=C(C(1)-C(k+i));z[h+24>>2]=C(C(s*k)+C(K*i))+C(N*j);z[h+20>>2]=C(C(I*k)+C(T*i))+C(V*j);z[h+16>>2]=C(C(G*k)+C(P*i))+C(R*j);v[h+12>>2]=0;z[h+8>>2]=C(C(r*k)+C(J*i))+C(M*j);z[h+4>>2]=C(C(H*k)+C(S*i))+C(U*j);z[h>>2]=C(C(u*k)+C(O*i))+C(Q*j);k=z[c+8>>2];n=z[c+4>>2];m=C(-n);o=z[c>>2];q=C(-o);i=C(D(z[c+16>>2]));a:{if(f){a=v[h+20>>2];v[g>>2]=v[h+16>>2];v[g+4>>2]=a;a=v[h+28>>2];v[g+8>>2]=v[h+24>>2];v[g+12>>2]=a;a=v[h+4>>2];v[g+16>>2]=v[h>>2];v[g+20>>2]=a;a=v[h+12>>2];v[g+24>>2]=v[h+8>>2];v[g+28>>2]=a;z[g+36>>2]=m;z[g+32>>2]=q;break a}a=v[e+4>>2];y=z[a+16>>2];a=w[a+32|0];b=v[d+4>>2];j=z[b+16>>2];b=w[b+32|0];r=z[h+16>>2];s=z[h+20>>2];u=z[h+24>>2];v[g+12>>2]=0;j=b?j:C(0);z[g+8>>2]=u+C(k*j);z[g+4>>2]=s+C(n*j);z[g>>2]=r+C(o*j);r=z[h>>2];s=z[h+4>>2];u=z[h+8>>2];z[g+36>>2]=m;z[g+32>>2]=q;v[g+28>>2]=0;m=a?y:C(0);z[g+24>>2]=u-C(k*m);z[g+20>>2]=s-C(n*m);z[g+16>>2]=r-C(o*m);i=C(i+C(j+m))}z[g+64>>2]=-i;v[g+44>>2]=0;z[g+40>>2]=-k;xa=h+32|0}function nV(a,b){var c=0,d=0,e=0,f=0;f=xa-16|0;xa=f;a:{b:{c:{switch(v[b+4>>2]){case 0:c=v[37696];d=Ba[v[v[c>>2]+20>>2]](c)|0?40749:63804;c=K0(Ba[v[v[c+12>>2]+8>>2]](c+12|0,208,d,5452,115)|0,a,b);v[c+8>>2]=144300;v[c>>2]=144204;v[c+196>>2]=0;v[c+200>>2]=0;v[c+184>>2]=0;v[c+188>>2]=0;v[c+176>>2]=4;z[c+112>>2]=z[b+96>>2];z[c+116>>2]=z[b+100>>2];z[c+120>>2]=z[b+104>>2];z[c+124>>2]=z[b+108>>2];z[c+128>>2]=z[b+112>>2];z[c+132>>2]=z[b+116>>2];z[c+136>>2]=z[b+120>>2];z[c+140>>2]=z[b+124>>2];z[c+144>>2]=z[b+128>>2];z[c+148>>2]=z[b+132>>2];z[c+152>>2]=z[b+136>>2];z[c+156>>2]=z[b+140>>2];z[c+160>>2]=z[b+144>>2];z[c+164>>2]=z[b+148>>2];z[c+168>>2]=z[b+152>>2];z[c+172>>2]=z[b+156>>2];d=v[b+164>>2];v[c+176>>2]=v[b+160>>2];v[c+180>>2]=d;d=v[b+172>>2];v[c+184>>2]=v[b+168>>2];v[c+188>>2]=d;d=v[b+180>>2];v[c+192>>2]=v[b+176>>2];v[c+196>>2]=d;v[c+200>>2]=v[b+184>>2];v[b+184>>2]=0;break b;case 1:break c;default:break a}}c=v[37696];d=Ba[v[v[c>>2]+20>>2]](c)|0?40879:63804;c=K0(Ba[v[v[c+12>>2]+8>>2]](c+12|0,184,d,5452,119)|0,a,b);v[c+8>>2]=144172;v[c>>2]=144076;e=c+100|0;v[e>>2]=0;v[e+4>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;d=y$(c+124|0);v[e>>2]=v[b+88>>2];v[e+4>>2]=v[b+92>>2];v[e+12>>2]=v[b+100>>2];v[e+16>>2]=v[b+104>>2];v[e+20>>2]=v[b+108>>2];v[e+8>>2]=v[b+96>>2];v[b+104>>2]=0;v[b+108>>2]=0;v[b+96>>2]=0;v[b+100>>2]=0;v[b+88>>2]=0;v[b+92>>2]=0;v[d>>2]=v[b+112>>2];z[d+4>>2]=z[b+116>>2];z[d+8>>2]=z[b+120>>2];z[d+12>>2]=z[b+124>>2];z[d+16>>2]=z[b+128>>2];v[d+20>>2]=v[b+132>>2];v[d+24>>2]=v[b+136>>2];v[d+28>>2]=v[b+140>>2];z[d+32>>2]=z[b+144>>2];z[d+36>>2]=z[b+148>>2];z[d+40>>2]=z[b+152>>2];z[d+44>>2]=z[b+156>>2];z[d+48>>2]=z[b+160>>2];z[d+52>>2]=z[b+164>>2];t[d+56|0]=w[b+168|0];t[d+57|0]=w[b+169|0];v[b+132>>2]=0;v[b+136>>2]=0;v[b+112>>2]=0;v[b+140>>2]=0;v[b+144>>2]=0;v[b+148>>2]=0;v[b+152>>2]=0;v[b+156>>2]=0;v[b+160>>2]=0;u[b+162>>1]=0;u[b+164>>1]=0;u[b+166>>1]=0;u[b+168>>1]=0;v[d>>2]=e}v[f+8>>2]=c;a=qh(a+8|0,f+8|0,f+15|0);if(!w[f+15|0]){v[a>>2]=v[f+8>>2]}}xa=f+16|0;return c}function oD(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{b:{if(!v[a+164>>2]){break b}g=v[a+140>>2];i=v[b>>2];d=i-1|0;h=v[b+4>>2];b=h+(i^-1)|0;b=(d|0)!=-1?b+1|0:b;d=d^((b&4194303)<<10|d>>>22);j=d;f=b^b>>>22;e=f<<13|d>>>19;d=d<<13^-1;b=j+d|0;f=(e^-1)+f|0;d=b>>>0>>0?f+1|0:f;b=Raa(b^((d&255)<<24|b>>>8),d^d>>>8,9,0);d=Aa;f=d>>>15|0;b=b^((d&32767)<<17|b>>>15);d=d^f;f=d<<27|b>>>5;e=b<<27^-1;b=b+e|0;d=(f^-1)+d|0;b=v[((v[a+148>>2]-1&(b^(((b>>>0>>0?d+1|0:d)&2147483647)<<1|b>>>31)))<<2)+g>>2];if((b|0)==-1){break b}g=v[a+136>>2];d=v[a+132>>2];while(1){f=d+B(b,20)|0;if((i|0)==v[f>>2]&(h|0)==v[f+4>>2]){break a}b=v[g+(b<<2)>>2];if((b|0)!=-1){continue}break}}c:{d:{b=a+4|0;g=v[b+4>>2];d=B(g,48)+b|0;e:{if(!v[d+52>>2]){break e}a=(c<<15^-1)+c|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=v[v[d+28>>2]+((v[d+36>>2]-1&(a>>>16^a))<<2)>>2];if((a|0)==-1){break e}h=v[d+24>>2];d=v[d+20>>2];while(1){i=d+(a<<3)|0;if(v[i>>2]==(c|0)){break d}a=v[h+(a<<2)>>2];if((a|0)!=-1){continue}break}}g=v[b>>2];d=b+B(g,48)|0;if(!v[d+52>>2]){break c}a=(c<<15^-1)+c|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=v[v[d+28>>2]+((v[d+36>>2]-1&(a>>>16^a))<<2)>>2];if((a|0)==-1){break c}h=v[d+24>>2];d=v[d+20>>2];while(1){i=d+(a<<3)|0;if(v[i>>2]==(c|0)){break d}a=v[h+(a<<2)>>2];if((a|0)!=-1){continue}break}break c}v[b+112>>2]=0;j=b+B(g,48)|0;f=v[j+12>>2];d=b+108|0;h=xa-16|0;xa=h;f:{g:{a=v[i+4>>2];g=v[v[b+104>>2]+8>>2];e=g+B(c,24)|0;if(z[a>>2]>z[e+12>>2]|z[a+4>>2]>z[e+16>>2]|z[a+8>>2]>z[e+20>>2]){break g}e=g+B(c,24)|0;if(z[e>>2]>z[a+16>>2]|z[e+4>>2]>z[a+20>>2]|z[e+8>>2]>z[a+24>>2]){break g}OC(a,g);break f}a=RC(f,a,c,g);v[h+12>>2]=a;h:{if(v[a+40>>2]|!a){break h}e=v[d+4>>2];if(e>>>0>=(v[d+8>>2]&2147483647)>>>0){NC(d,h+12|0);break h}v[v[d>>2]+(e<<2)>>2]=a;v[d+4>>2]=e+1}a=PC(f,c,g,d)}xa=h+16|0;if(!(!v[b+112>>2]&v[i+4>>2]==(a|0))){$C(b,j+16|0,c,a)}}return}b=d+B(b,20)|0;RB(v[v[a+200>>2]+(v[b+16>>2]<<3)>>2],v[b+12>>2]);c=v[a+168>>2];b=v[b+16>>2];if(b>>>0>2]){b=v[v[a+172>>2]+(b<<2)>>2]}else{b=-1}RB(c,b);t[a+212|0]=1}function Z5(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0);c=xa-48|0;xa=c;j=v[b+76>>2];Ba[v[v[j>>2]+28>>2]](j,c+44|0,c+40|0);d=C(1);f=C(1);j=v[c+44>>2];if(j){Ba[v[v[j>>2]+76>>2]](c+8|0,j);J=z[c+32>>2];K=z[c+28>>2];L=z[c+24>>2];h=z[c+16>>2];r=z[c+12>>2];s=z[c+8>>2];f=z[c+20>>2]}g=z[b+24>>2];e=z[b+28>>2];k=z[b+32>>2];D=z[b+44>>2];E=z[b+40>>2];F=z[b+36>>2];l=z[b+20>>2];j=v[c+40>>2];if(j){Ba[v[v[j>>2]+76>>2]](c+8|0,j);M=z[c+32>>2];N=z[c+28>>2];O=z[c+24>>2];t=z[c+16>>2];u=z[c+12>>2];w=z[c+8>>2];d=z[c+20>>2]}G=z[b- -64>>2];H=z[b+72>>2];I=z[b+68>>2];x=C(C(C(s*g)+C(C(f*e)+C(h*k)))-C(l*r));m=z[b+52>>2];n=z[b+56>>2];o=z[b+60>>2];p=z[b+48>>2];i=C(C(C(w*m)+C(C(d*n)+C(t*o)))-C(p*u));y=C(C(C(h*l)+C(C(f*g)+C(r*k)))-C(e*s));A=C(C(C(t*p)+C(C(d*m)+C(u*o)))-C(n*w));q=C(C(C(C(f*k)-C(l*s))-C(r*g))-C(h*e));B=C(C(C(C(d*o)-C(p*w))-C(u*m))-C(t*n));g=C(C(C(r*e)+C(C(f*l)+C(s*k)))-C(g*h));e=C(C(C(u*n)+C(C(d*p)+C(w*o)))-C(m*t));z[a+12>>2]=C(x*i)+C(C(y*A)+C(C(q*B)+C(g*e)));z[a+8>>2]=C(e*y)+C(C(C(q*i)-C(B*x))-C(g*A));z[a+4>>2]=C(i*g)+C(C(C(q*A)-C(B*y))-C(x*e));z[a>>2]=C(A*x)+C(C(C(q*e)-C(B*g))-C(y*i));k=C(H+H);l=C(G+G);m=C(I+I);A=C(C(t*k)+C(C(w*l)+C(m*u)));B=C(C(d*d)+C(-.5));n=C(D+D);o=C(F+F);p=C(E+E);D=C(C(h*n)+C(C(s*o)+C(p*r)));E=C(C(f*f)+C(-.5));e=C(C(M+C(C(t*A)+C(C(k*B)+C(d*C(C(w*m)-C(l*u))))))-C(J+C(C(h*D)+C(C(n*E)+C(f*C(C(s*p)-C(o*r)))))));e=C(e+e);i=C(C(O+C(C(w*A)+C(C(l*B)+C(d*C(C(u*k)-C(m*t))))))-C(L+C(C(s*D)+C(C(o*E)+C(f*C(C(r*n)-C(p*h)))))));i=C(i+i);d=C(C(N+C(C(u*A)+C(C(m*B)+C(d*C(C(t*l)-C(k*w))))))-C(K+C(C(r*D)+C(C(p*E)+C(f*C(C(h*o)-C(n*s)))))));d=C(d+d);f=C(C(C(C(-g)*i)-C(d*y))-C(x*e));h=C(C(q*q)+C(-.5));z[a+24>>2]=C(C(e*h)+C(q*C(C(y*i)-C(g*d))))-C(x*f);z[a+20>>2]=C(C(d*h)+C(q*C(C(g*e)-C(x*i))))-C(y*f);z[a+16>>2]=C(C(i*h)+C(q*C(C(x*d)-C(y*e))))-C(g*f);xa=c+48|0}function bU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=C(0),i=0,j=C(0),k=0,l=C(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=xa-16|0;xa=f;a:{if(!(Ba[v[v[b>>2]>>2]](b)|0)){a9(v[37696],4,8633,138,65291,0);break a}b:{c:{switch(v[b+100>>2]){case 0:d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?32635:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,544,c,8633,147)|0;c=v[a+8>>2];i=Ba[v[v[c>>2]+28>>2]](c)|0;e=v[a+8>>2];c=xa-16|0;xa=c;v[d>>2]=140076;e=rU(d+8|0,b,e);v[d>>2]=139852;v[e>>2]=140004;v[d+12>>2]=0;h=z[b+104>>2];z[d+532>>2]=h;l=z[b+108>>2];z[d+536>>2]=l;g=z[b+112>>2];z[d+540>>2]=g;v[c>>2]=3;j=g;g=z[d+516>>2];z[c+12>>2]=j*g;z[c+8>>2]=l*g;z[c+4>>2]=h*g;tU(e,i,c,v[b+88>>2]);xa=c+16|0;break b;case 1:break c;default:break a}}d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?32759:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,544,c,8633,153)|0;c=v[a+8>>2];i=Ba[v[v[c>>2]+28>>2]](c)|0;e=v[a+8>>2];c=xa-16|0;xa=c;v[d>>2]=139620;e=rU(d+8|0,b,e);v[d>>2]=139396;v[e>>2]=139548;v[d+12>>2]=1;g=z[b+104>>2];z[d+532>>2]=g;h=z[b+108>>2];z[d+536>>2]=h;v[d+540>>2]=v[b+112>>2];v[c>>2]=2;j=C(h*C(.5));h=z[d+516>>2];z[c+8>>2]=j*h;z[c+4>>2]=g*h;tU(e,i,c,v[b+88>>2]);xa=c+16|0}c=d+8|0;v[f+8>>2]=c;b=v[a+72>>2];d:{if(b>>>0>=(v[a+76>>2]&2147483647)>>>0){b=0;c=v[a+76>>2];k=c&2147483647?c<<1:1;e:{if(!k){break e}c=k<<2;if(!c){break e}b=v[37696];e=b+12|0;b=(o=e,p=c,q=Ba[v[v[b>>2]+20>>2]](b)|0?56879:63804,r=16608,s=553,n=v[v[e>>2]+8>>2],Ba[n](o|0,p|0,q|0,r|0,s|0)|0)}e=v[a+72>>2];m=(e<<2)+b|0;if((e|0)>0){i=v[a+68>>2];c=b;while(1){v[c>>2]=v[i>>2];i=i+4|0;c=c+4|0;if(m>>>0>c>>>0){continue}break}}v[m>>2]=v[f+8>>2];f:{if(v[a+76>>2]<0){break f}c=v[a+68>>2];if(!c){break f}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,c);e=v[a+72>>2]}v[a+76>>2]=k;v[a+68>>2]=b;v[a+72>>2]=e+1;break d}v[v[a+68>>2]+(b<<2)>>2]=c;v[a+72>>2]=b+1}b=v[f+8>>2];v[b+520>>2]=a;v[b+420>>2]=a;v[b+260>>2]=a;v[b+248>>2]=a;v[f+4>>2]=0;b=Ba[v[v[d>>2]+28>>2]](d)|0;c=f+4|0;Ba[v[v[b>>2]+96>>2]](b,c,1,0)|0;a=Mm(a+80|0,c,f+15|0);if(w[f+15|0]){break a}v[a>>2]=v[f+4>>2]}xa=f+16|0;return d|0}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,n=0,o=0,p=0,q=0,r=0;c=a+68|0;e=v[a+68>>2];d=v[a+88>>2];a:{if((e|0)==(d|0)){b=v[a+84>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+84>>2]=0}b=v[a+80>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;b=v[a+64>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+88>>2]=0;v[a+64>>2]=0;break a}h=e-d|0;b:{if(h>>>0>=v[a+76>>2]>>>1>>>0){i=v[a+80>>2];if(e){g=v[a+84>>2];k=v[a+64>>2];c=0;d=0;while(1){j=v[k+(d<<2)>>2];if((j|0)!=-1){if((c|0)!=(d|0)){v[k+(c<<2)>>2]=j;e=i+(c<<3)|0;f=i+(d<<3)|0;v[e>>2]=v[f>>2];v[e+4>>2]=v[f+4>>2];e=g+(d<<4)|0;l=v[e>>2];m=v[e+4>>2];n=v[e+12>>2];f=g+(c<<4)|0;v[f+8>>2]=v[e+8>>2];v[f+12>>2]=n;v[f>>2]=l;v[f+4>>2]=m;e=v[a+68>>2]}v[(j<<2)+b>>2]=v[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;v[b>>2]=-1;v[b+40>>2]=-1;v[b+32>>2]=-1;v[b+24>>2]=-1;v[b+16>>2]=-1;v[b+8>>2]=-1;v[a+72>>2]=h;break b}c=h+6|0;d=c<<3;if(d){e=v[37696]+12|0;f=Ba[v[v[e>>2]+8>>2]](e,d,24422,13489,1282)|0}c=c<<4;if(c){d=v[37696]+12|0;k=Ba[v[v[d>>2]+8>>2]](d,c,24422,13489,1283)|0}c=(h<<3)+f|0;v[c>>2]=-1;v[c+40>>2]=-1;v[c+32>>2]=-1;v[c+24>>2]=-1;v[c+16>>2]=-1;v[c+8>>2]=-1;d=0;c=h<<2;if(c){e=v[37696]+12|0;j=Ba[v[v[e>>2]+8>>2]](e,c,24422,13489,1285)|0}i=v[a+84>>2];e=v[a+68>>2];if(e){m=v[a+80>>2];n=v[a+64>>2];c=0;while(1){l=v[(d<<2)+n>>2];if((l|0)!=-1){v[(c<<2)+j>>2]=l;o=c<<3;e=o+f|0;g=(d<<3)+m|0;v[e>>2]=v[g>>2];v[e+4>>2]=v[g+4>>2];e=(d<<4)+i|0;p=v[e>>2];q=v[e+4>>2];r=v[e+12>>2];g=(c<<4)+k|0;v[g+8>>2]=v[e+8>>2];v[g+12>>2]=r;v[g>>2]=p;v[g+4>>2]=q;v[(l<<2)+b>>2]=o|v[a>>2]|4;e=v[a+68>>2];c=c+1|0}d=d+1|0;if(e>>>0>d>>>0){continue}break}i=v[a+84>>2]}if(i){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,i);v[a+84>>2]=0}b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+84>>2]=k;v[a+80>>2]=f;v[a+76>>2]=h;v[a+72>>2]=h;b=v[a+64>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+64>>2]=j}v[a+68>>2]=h;c=a+88|0}v[c>>2]=0}function CR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{d=v[a+20>>2];a=v[a+28>>2];b=v[a+988>>2];e=v[b+308>>2];c=v[b+128>>2];v[a+996>>2]=c+1;b:{c:{d:{if(c){if(!v[b+132>>2]){break b}if(v[a+992>>2]){break d}break b}if(!v[a+992>>2]){break c}}f=c&1;h=!f;i=(c|0)==(e-1|0);if(!i){c=B(h,40);b=c+v[a+3048>>2]|0;v[b+20>>2]=d;v[b+24>>2]=1;e:{f:{if(!d){d=v[a+3036>>2];e=c+d|0;v[e+20>>2]=b;v[e+24>>2]=1;e=e+20|0;c=a+3036|0;break f}Ba[v[v[d>>2]+16>>2]](d);v[b+16>>2]=v[v[b+20>>2]+16>>2];d=v[a+3036>>2];e=c+d|0;g=c;c=v[a+3048>>2];b=g+c|0;v[e+20>>2]=b;v[e+24>>2]=1;if(!c){break e}e=e+20|0;c=a+3036|0}Ba[v[v[b>>2]+16>>2]](b);v[(B(h,40)+d|0)+16>>2]=v[v[e>>2]+16>>2];d=v[c>>2]}d=B(h,40)+d|0}c=B(f,40);b=c+v[a+3060>>2]|0;v[b+20>>2]=d;v[b+24>>2]=1;g:{h:{i:{j:{k:{if(!d){d=v[a+3024>>2];c=c+d|0;v[c+20>>2]=b;v[c+24>>2]=1;e=c+20|0;break k}Ba[v[v[d>>2]+16>>2]](d);v[b+16>>2]=v[v[b+20>>2]+16>>2];d=v[a+3024>>2];e=c+d|0;g=c;c=v[a+3060>>2];b=g+c|0;v[e+20>>2]=b;v[e+24>>2]=1;if(!c){break j}e=e+20|0}Ba[v[v[b>>2]+16>>2]](b);c=B(f,40);v[(c+d|0)+16>>2]=v[v[e>>2]+16>>2];e=v[a+3012>>2];d=c+e|0;j=v[a+3024>>2];b=j+c|0;v[d+20>>2]=b;v[d+24>>2]=1;g=d+20|0;if(j){break i}b=v[a+3e3>>2];c=c+b|0;v[c+20>>2]=d;v[c+24>>2]=1;e=a+3e3|0;c=c+20|0;break h}e=v[a+3012>>2];b=B(f,40);c=e+b|0;b=b+d|0;v[c+20>>2]=b;v[c+24>>2]=1;g=c+20|0}c=g;Ba[v[v[b>>2]+16>>2]](b);d=B(f,40);v[(d+e|0)+16>>2]=v[v[c>>2]+16>>2];b=v[a+3e3>>2];c=d+b|0;e=v[a+3012>>2];d=e+d|0;v[c+20>>2]=d;v[c+24>>2]=1;if(!e){break g}e=a+3e3|0;c=c+20|0}Ba[v[v[d>>2]+16>>2]](d);v[(B(f,40)+b|0)+16>>2]=v[v[c>>2]+16>>2];b=v[e>>2]}d=B(f,40);b=d+b|0;f=v[b+16>>2];f=Ba[v[v[f>>2]+4>>2]](f)|0;f=Ba[v[v[f>>2]+4>>2]](f)|0;c=f;f=v[a+976>>2];qI(v[a+980>>2],c,v[f+1156>>2],f,0,b,0);b=d+v[a+3060>>2]|0;Ba[v[v[b>>2]+20>>2]](b);b=d+v[a+3024>>2]|0;Ba[v[v[b>>2]+20>>2]](b);b=d+v[a+3012>>2]|0;Ba[v[v[b>>2]+20>>2]](b);d=d+v[a+3e3>>2]|0;Ba[v[v[d>>2]+20>>2]](d);if(i){break b}d=B(h,40);b=d+v[a+3048>>2]|0;Ba[v[v[b>>2]+20>>2]](b);a=d+v[a+3036>>2]|0;Ba[v[v[a>>2]+20>>2]](a);break a}wO(b)}}}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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=C(0);f=xa-400|0;xa=f;l=v[c+32>>2];a:{if(!e){D=C(1);q=C(0);break a}D=C(1);q=C(0);if(x[e+12>>1]!=2){break a}D=z[e+8>>2];E=z[e>>2];q=z[e+4>>2]}r=z[a+4>>2];h=z[c+8>>2];i=z[c+12>>2];j=z[c+4>>2];v[f+396>>2]=0;z[f+392>>2]=i;z[f+388>>2]=h;z[f+384>>2]=j;a=v[c+16>>2];F=v[c+20>>2];G=v[c+28>>2];v[f+376>>2]=v[c+24>>2];v[f+380>>2]=G;v[f+368>>2]=a;v[f+372>>2]=F;m=z[d+20>>2];n=z[b+20>>2];o=z[d+24>>2];H=z[b+24>>2];k=z[d+12>>2];s=z[d>>2];I=z[d+16>>2];J=z[b+16>>2];y=z[d+4>>2];A=z[d+8>>2];t[f+240|0]=0;v[f+232>>2]=0;v[f+236>>2]=0;v[f+224>>2]=0;v[f+228>>2]=0;v[f+216>>2]=0;v[f+220>>2]=0;v[f+208>>2]=0;v[f+212>>2]=0;v[f+352>>2]=l+16;v[f+360>>2]=v[l+56>>2]+B(w[l+55|0],20);t[f+364|0]=w[l+54|0];g=C(j*z[l+68>>2]);p=C(h*z[l+72>>2]);g=g<=p?g:p;p=C(i*z[l+76>>2]);g=g<=p?g:p;z[f+232>>2]=g*C(.02500000037252903);z[f+224>>2]=g*C(.10000000149011612);z[f+228>>2]=g*C(.05000000074505806);a=f+208|0;FV(f+384|0,f+368|0,f+256|0,f+304|0,a,j==C(1)&h==C(1)&i==C(1));v[f+356>>2]=v[l+60>>2];v[f+188>>2]=0;h=C(J-I);h=C(h+h);i=C(n-m);i=C(i+i);j=C(H-o);j=C(j+j);g=C(C(C(C(-s)*h)-C(i*y))-C(A*j));o=C(C(k*k)+C(-.5));m=C(C(C(j*o)+C(k*C(C(y*h)-C(s*i))))-C(A*g));z[f+184>>2]=m;n=C(C(C(i*o)+C(k*C(C(s*j)-C(A*h))))-C(y*g));z[f+180>>2]=n;v[f+172>>2]=0;z[f+168>>2]=m;z[f+164>>2]=n;z[f+192>>2]=r;v[f+124>>2]=0;z[f+120>>2]=m;z[f+116>>2]=n;k=C(C(C(h*o)+C(k*C(C(A*i)-C(y*j))))-C(s*g));z[f+112>>2]=k;v[f+140>>2]=4;z[f+176>>2]=k;z[f+160>>2]=k;t[f+144|0]=1;z[f+136>>2]=r;z[f+132>>2]=r;z[f+128>>2]=r;v[f+40>>2]=141148;v[f+44>>2]=f+112;v[f+32>>2]=141216;v[f+36>>2]=a;v[f+28>>2]=0;z[f+24>>2]=m-z[f+216>>2];z[f+20>>2]=n-z[f+212>>2];z[f+16>>2]=k-z[f+208>>2];v[f>>2]=0;a=GV(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)){z[e+8>>2]=D;z[e+4>>2]=q;z[e>>2]=E}if(e){u[e+12>>1]=((a|0)==2)<<1}xa=f+400|0;return(a|0)==2|0}function h3(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,w=0,y=0,z=0;q=xa-48|0;xa=q;a:{if(!(c|d?b:0)){a9(v[37696],8,6398,147,73080,0);e=0;break a}e=1;if(v[a+12>>2]){break a}g=(s=-1,t=Raa(b,0,12,0),u=Aa,u?s:t);if(g){e=v[37696];f=e+12|0;e=(t=f,u=g,w=Ba[v[v[e>>2]+20>>2]](e)|0?47485:63804,y=6398,z=155,s=v[v[f>>2]+8>>2],Ba[s](t|0,u|0,w|0,y|0,z|0)|0)}else{e=0}v[a+12>>2]=e;i=B(b,3);e=(i&1073741823)!=(i|0)?-1:i<<2;if(e){g=v[37696];f=g+12|0;l=(z=f,y=e,w=Ba[v[v[g>>2]+20>>2]](g)|0?29035:63804,u=6398,t=156,s=v[v[f>>2]+8>>2],Ba[s](z|0,y|0,w|0,u|0,t|0)|0);g=v[37696]+12|0;j=e;e=v[37696];m=(t=g,u=j,w=Ba[v[v[e>>2]+20>>2]](e)|0?29035:63804,y=6398,z=157,s=v[v[g>>2]+8>>2],Ba[s](t|0,u|0,w|0,y|0,z|0)|0)}g=0;f=(i&536870911)!=(i|0)?-1:i<<3;if(f){e=v[37696];h=e+12|0;n=(z=h,y=f,w=Ba[v[v[e>>2]+20>>2]](e)|0?47869:63804,u=6398,t=158,s=v[v[h>>2]+8>>2],Ba[s](z|0,y|0,w|0,u|0,t|0)|0)}while(1){k=B(g,12);o=k+l|0;b:{c:{d:{if(!c){if(d){break d}e=2;f=0;h=1;p=0;j=1;break b}e=B(g,12)+c|0;f=v[e>>2];h=v[e+4>>2];e=v[e+8>>2];break c}e=B(g,6)+d|0;f=x[e>>1];h=x[e+2>>1];e=x[e+4>>1]}p=f>>>0>>0?f:h;j=f>>>0>h>>>0?f:h}v[o>>2]=p;v[m+k>>2]=j;j=k+4|0;v[j+l>>2]=e>>>0>h>>>0?h:e;v[m+j>>2]=e>>>0>>0?h:e;h=k+8|0;v[h+l>>2]=e>>>0>>0?e:f;v[h+m>>2]=e>>>0>f>>>0?e:f;g=g+1|0;if((g|0)!=(b|0)){continue}break}f=0;k=RU(q+8|0);j=v[VU(VU(k,m,i,0),l,i,0)+8>>2];v[a+8>>2]=b;v[a>>2]=0;e:{if(!i){e=0;break e}f=v[a+12>>2];h=0;c=-1;g=-1;while(1){b=v[j+(h<<2)>>2];d=(b>>>0)/3|0;p=b-B(d,3)|0;o=b<<2;b=v[o+m>>2];e=v[a>>2];r=g;g=v[l+o>>2];if(!((r|0)==(g|0)&(b|0)==(c|0))){c=(e<<3)+n|0;v[c+4>>2]=b;v[c>>2]=g;e=e+1|0;v[a>>2]=e}v[(f+B(d,12)|0)+(p<<2)>>2]=e-1;c=b;h=h+1|0;if((i|0)!=(h|0)){continue}break}b=v[a>>2]<<3;if(!b){f=0;e=0;break e}c=v[37696]+12|0;e=Ba[v[v[c>>2]+8>>2]](c,b,24422,6398,212)|0;f=v[a>>2]<<3}v[a+4>>2]=e;H9(e,n,f);if(n){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,n)}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,m);a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,l);SU(k);e=1}xa=q+48|0;return e}function B0(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,u=0,w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0);f=xa-528|0;xa=f;i=1;g=v[a+68>>2];h=g-1|0;a:{if((h|0)<0){break a}r=g&3;b:{if(h>>>0<3){e=1;break b}u=g&-4;e=1;while(1){i=(f+16|0)+(e<<2)|0;j=B(h,112);v[i>>2]=j;v[i+12>>2]=j-336;v[i+8>>2]=j-224;v[i+4>>2]=j-112;h=h-4|0;e=e+4|0;s=s+4|0;if((u|0)!=(s|0)){continue}break}}i=g+1|0;if(!r){break a}g=0;while(1){v[(f+16|0)+(e<<2)>>2]=B(h,112);h=h-1|0;e=e+1|0;g=g+1|0;if((r|0)!=(g|0)){continue}break}}h=v[a+88>>2];k=z[c+8>>2];l=z[c+4>>2];m=z[c>>2];n=z[b+8>>2];o=z[b+4>>2];p=z[b>>2];g=1;while(1){e=i-1|0;b=h+(g?q:v[(f+16|0)+(e<<2)>>2])|0;w=z[b+80>>2];x=z[b+64>>2];y=z[b+32>>2];A=z[b+16>>2];D=z[b>>2];E=z[b+48>>2];F=z[b+36>>2];G=z[b+20>>2];H=z[b+4>>2];I=z[b+84>>2];J=z[b+52>>2];K=z[b+68>>2];L=z[b+40>>2];M=z[b+24>>2];N=z[b+8>>2];O=z[b+88>>2];P=z[b+56>>2];Q=z[b+72>>2];R=z[b+44>>2];S=z[b+28>>2];T=z[b+12>>2];U=z[b+92>>2];V=z[b+60>>2];W=z[b+76>>2];a=v[b+96>>2]&-2;v[f+12>>2]=a;g=0;c:{d:{if(p>E|o>x|(mw)){break d}if(l>2]>>2]](d,1,f+12|0)|0){break d}break c}v[(f+16|0)+(e<<2)>>2]=a;g=1;q=a;e=i}a=v[b+100>>2]&-2;v[f+12>>2]=a;e:{if(!(!(kJ^-1)&(o>K^-1)&(n>I^-1)&(m>2]>>2]](d,1,f+12|0)|0){break e}break c}v[(f+16|0)+(e<<2)>>2]=a;g=1;e=e+1|0;q=a}a=v[b+104>>2]&-2;v[f+12>>2]=a;f:{if(!(!(kP^-1)&(o>Q^-1)&(n>O^-1)&(m>2]>>2]](d,1,f+12|0)|0){break f}break c}v[(f+16|0)+(e<<2)>>2]=a;g=1;e=e+1|0;q=a}a=v[b+108>>2]&-2;v[f+12>>2]=a;g:{if(!(!(kV^-1)&(o>W^-1)&(n>U^-1)&(m>2]>>2]](d,1,f+12|0)|0){break g}break c}v[(f+16|0)+(e<<2)>>2]=a;g=1;q=a;e=e+1|0}i=e;if((e|0)>1){continue}}break}xa=f+528|0}function QM(a){a=a|0;var b=0,c=0,d=0,e=C(0),f=C(0),g=C(0),h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),y=C(0),A=0,D=0,E=0,F=0,G=0,H=0,I=C(0),J=C(0);s=v[a+60>>2];E=v[a+28>>2];F=v[a+32>>2];G=v[a+36>>2];H=v[a+40>>2];q=z[a+44>>2];A=v[a+48>>2];i=xa-32|0;xa=i;b=v[a+52>>2];D=v[a+56>>2];if(b>>>0>>0){while(1){a=b+1|0;d=a<<6;c=d+G|0;j=z[c+52>>2];k=z[c+40>>2];l=z[c+28>>2];m=z[c+56>>2];n=z[c+44>>2];o=z[c+32>>2];g=z[c+60>>2];h=d+F|0;r=z[h+40>>2];f=z[c+48>>2];p=z[h+36>>2];e=z[c+36>>2];t=z[h+32>>2];y=z[h+52>>2];I=z[h+56>>2];J=z[h+48>>2];v[i+28>>2]=0;v[i+12>>2]=0;z[i>>2]=J*q;z[i+8>>2]=I*q;z[i+4>>2]=y*q;y=e;e=C(t*q);t=f;f=C(p*q);p=g;g=C(r*q);z[i+24>>2]=C(C(y*e)+C(t*f))+C(p*g);z[i+20>>2]=C(C(e*o)+C(f*n))+C(g*m);z[i+16>>2]=C(C(e*l)+C(f*k))+C(g*j);d=v[v[E>>2]+(b<<2)>>2];b=v[d+36>>2];z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];z[d+24>>2]=z[b+24>>2];e=z[c+8>>2];f=z[b>>2];g=z[c+12>>2];j=z[b+4>>2];k=z[b+12>>2];l=z[c+4>>2];m=z[b+8>>2];n=z[c>>2];o=C(C(C(e*f)+C(C(g*j)+C(k*l)))-C(m*n));r=C(C(C(C(g*k)-C(f*n))-C(l*j))-C(e*m));p=C(C(C(n*j)+C(C(g*m)+C(k*e)))-C(f*l));f=C(C(C(l*m)+C(C(g*f)+C(k*n)))-C(j*e));e=C(C(1)/C(K(C(C(r*r)+C(C(p*p)+C(C(f*f)+C(o*o)))))));z[b+4>>2]=o*e;z[b+12>>2]=r*e;z[b>>2]=f*e;z[b+8>>2]=p*e;z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];z[b+24>>2]=z[c+24>>2];z[b+64>>2]=z[h>>2];z[b+68>>2]=z[h+4>>2];z[b+72>>2]=z[h+8>>2];j=z[c+52>>2];k=z[c+28>>2];l=z[c+40>>2];m=z[c+56>>2];n=z[c+32>>2];o=z[c+44>>2];e=z[h+16>>2];f=z[h+20>>2];g=z[h+24>>2];z[b+88>>2]=C(C(e*z[c+36>>2])+C(f*z[c+48>>2]))+C(g*z[c+60>>2]);z[b+84>>2]=C(C(e*n)+C(f*o))+C(g*m);z[b+80>>2]=C(C(e*k)+C(f*l))+C(g*j);if(oz(d,z[s+52>>2],w[s+64|0],w[s+66|0],i,v[v[A+100>>2]+(v[v[A+204>>2]+((v[(B(a,48)+H|0)+36>>2]&33554431)<<2)>>2]<<2)>>2]!=0)==C(0)){v[d+64>>2]=0;v[d+68>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+72>>2]=0;v[d+56>>2]=0;u[d+28>>1]=x[d+28>>1]|16}b=a;if((D|0)!=(b|0)){continue}break}}xa=i+32|0}function Fz(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=C(0),m=0,n=0,o=0,p=0,q=C(0),r=0,s=0,u=0,x=0,y=0,A=0,B=0,D=0;k=32;m=xa-16|0;xa=m;t[m+12|0]=0;f=m-128|0;xa=f;v[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;d=e;while(1){d=z[v[(b<<2)+a>>2]+16>>2]>2]+16>>2]?b:d;c=(b|0)<(g|0);b=b+1|0;if(c){continue}break}if((d|0)!=(e|0)){b=(d<<2)+a|0;c=v[b>>2];d=b;b=(e<<2)+a|0;v[d>>2]=v[b>>2];v[b>>2]=c}if((g|0)!=(h|0)){continue}break b}}j=(h<<2)+a|0;e=v[j>>2];l=z[e+16>>2];d=((g+h|0)/2<<2)+a|0;c=v[d>>2];c:{if(!(l>z[c+16>>2])){b=e;break c}v[j>>2]=c;v[d>>2]=e;b=v[j>>2];l=z[b+16>>2];c=e}n=(g<<2)+a|0;e=v[n>>2];q=z[e+16>>2];d:{if(!(q>2]=e;v[n>>2]=b;c=v[d>>2]}if(z[c+16>>2]>l){v[d>>2]=b;v[n>>2]=c;c=v[d>>2]}b=d;d=g-1|0;j=(d<<2)+a|0;v[b>>2]=v[j>>2];v[j>>2]=c;b=h;while(1){l=z[c+16>>2];while(1){e=b;b=b+1|0;n=(b<<2)+a|0;p=v[n>>2];if(l>z[p+16>>2]){continue}break}while(1){d=d-1|0;r=(d<<2)+a|0;s=v[r>>2];if(l>2]){continue}break}if((b|0)<(d|0)){v[n>>2]=s;v[r>>2]=p;c=v[j>>2];continue}break}v[n>>2]=c;v[j>>2]=p;e:{if((b-h|0)<(g-b|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(x=d,y=c,A=Ba[v[v[b>>2]+20>>2]](b)|0?58811:63804,B=17218,D=155,u=v[v[d>>2]+8>>2],Ba[u](x|0,y|0,A|0,B|0,D|0)|0)}else{b=0}k=k<<1;b=H9(b,f,i<<2);c=o;o=1;if(!(!c|!f)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}f=b}b=(i<<2)+f|0;v[b>>2]=h;v[b+4>>2]=e;h=e+2|0;break e}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(D=d,B=c,A=Ba[v[v[b>>2]+20>>2]](b)|0?58811:63804,y=17218,x=155,u=v[v[d>>2]+8>>2],Ba[u](D|0,B|0,A|0,y|0,x|0)|0)}else{b=0}k=k<<1;b=H9(b,f,i<<2);c=o;o=1;if(!(!c|!f)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}f=b}b=(i<<2)+f|0;v[b>>2]=e+2;v[b+4>>2]=g;g=e}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+f>>2];g=v[((i<<2)+f|0)-4>>2];i=b;continue}break}if(!o|!f){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,f)}if(w[m+12|0]){u9(v[m+8>>2])}xa=m+16|0}function VB(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;h=v[b+24>>2];g=v[37696];f=g+12|0;i=(v[c>>2]+v[a+40>>2]|0)+1|0;e=Raa(i,0,28,0);k=e+4|0;e=(o=f,p=Aa?-1:e>>>0>k>>>0?-1:k,q=Ba[v[v[g>>2]+20>>2]](g)|0?44527:63804,r=12118,s=725,n=v[v[f>>2]+8>>2],Ba[n](o|0,p|0,q|0,r|0,s|0)|0);v[e>>2]=i;f=e+4|0;g=h>>>1|0;e=(v[c>>2]+v[a+40>>2]<<2)+4|0;if(e){i=v[37696]+12|0;e=Ba[v[v[i>>2]+8>>2]](i,e,24422,12118,726)|0}else{e=0}j=B(g,28);f=H9(f,v[a+8>>2],j);k=g<<2;i=H9(e,v[a+36>>2],k);e=f+j|0;z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];z[e+8>>2]=z[b+8>>2];z[e+12>>2]=z[b+12>>2];z[e+16>>2]=z[b+16>>2];z[e+20>>2]=z[b+20>>2];v[e+24>>2]=(v[c>>2]+(v[b+24>>2]>>>1|0)<<1)+2;j=i+k|0;v[j>>2]=d;b=v[a+52>>2];if(!(!b|!(v[b+(d>>>3&536870908)>>2]>>>d&1))){h=h>>>6|0;b=b+(h<<2)|0;v[b>>2]=v[b>>2]|1<>2];v[a+60>>2]=b>>>0>h>>>0?b:h}b=v[a+40>>2];if((b|0)!=(g|0)){H9((e+B(v[c>>2],28)|0)+28|0,v[a+8>>2]+B(g,28)|0,B(b-g|0,28));H9((j+(v[c>>2]<<2)|0)+4|0,v[a+36>>2]+(g<<2)|0,v[a+40>>2]-g<<2)}b=v[a+8>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b-4|0)}v[a+8>>2]=f;b=v[a+36>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b)}v[a+36>>2]=i;h=g+1|0;a:{if(!v[c>>2]){b=0;break a}k=v[a+8>>2];l=v[c+4>>2];j=0;e=h;while(1){b=B(e,28)+k|0;f=B(j,28)+l|0;z[b>>2]=z[f>>2];z[b+4>>2]=z[f+4>>2];z[b+8>>2]=z[f+8>>2];z[b+12>>2]=z[f+12>>2];z[b+16>>2]=z[f+16>>2];z[b+20>>2]=z[f+20>>2];f=v[f+24>>2];b:{if(f&1){v[b+24>>2]=f&30|f+(v[a+4>>2]<<5)&-32|1;break b}m=b;b=h+(f>>>1|0)|0;v[m+24>>2]=b<<1;b=i+(b<<2)|0;v[b>>2]=e;v[b+4>>2]=e}e=e+1|0;b=v[c>>2];j=j+1|0;if(b>>>0>j>>>0){continue}break}}v[a+40>>2]=(v[a+40>>2]+b|0)+1;v[i+(h<<2)>>2]=d;b=h+v[c>>2]|0;if(b>>>0>2]){h=v[a+8>>2];while(1){f=i+(b<<2)|0;e=v[f>>2];c:{if((e|0)==(d|0)){v[f>>2]=g;break c}if(e>>>0>=g>>>0){v[f>>2]=(e+v[c>>2]|0)+1;break c}if(!(b&1)){break c}e=h+B(e,28)|0;v[e+24>>2]=(v[e+24>>2]+(v[c>>2]<<1)|0)+2&-2}e=h+B(b,28)|0;f=v[e+24>>2];if(!(f&1)){v[e+24>>2]=(f+(v[c>>2]<<1)|0)+2&-2}b=b+1|0;if(b>>>0>2]){continue}break}}}function mE(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0;f=xa-1184|0;xa=f;t[f+1168|0]=1;v[f+1176>>2]=256;v[f+1180>>2]=256;v[f+1172>>2]=f+144;v[f+144>>2]=v[c+588>>2];l=1;a:while(1){l=l-1|0;c=v[v[f+1172>>2]+(l<<2)>>2];h=z[c+16>>2];i=z[c>>2];m=C(h+i);h=C(h-i);j=z[c+24>>2];k=z[c+8>>2];i=C(j+k);n=z[c+20>>2];o=z[c+4>>2];p=C(n+o);j=C(j-k);k=C(n-o);while(1){b:{z[f+132>>2]=p*C(.5);z[f+128>>2]=m*C(.5);v[f+140>>2]=0;z[f+136>>2]=i*C(.5);z[f+116>>2]=k*C(.5);z[f+112>>2]=h*C(.5);v[f+124>>2]=0;z[f+120>>2]=j*C(.5);g=v[f+132>>2];v[f+48>>2]=v[f+128>>2];v[f+52>>2]=g;g=v[f+140>>2];v[f+56>>2]=v[f+136>>2];v[f+60>>2]=g;g=v[f+116>>2];v[f+32>>2]=v[f+112>>2];v[f+36>>2]=g;g=v[f+124>>2];v[f+40>>2]=v[f+120>>2];v[f+44>>2]=g;c:{d:{if(!MD(d,f+48|0,f+32|0)){break d}g=c;c=v[c+36>>2];if(v[g+40>>2]){break c}q=v[c>>2];if(!q){break d}c=c+4|0;if((q|0)==1){if(Ba[v[v[e>>2]+8>>2]](e,f+76|0,B(v[c>>2],44)+a|0)|0){break d}break b}while(1){r=v[c>>2];g=B(r,24)+b|0;m=z[g+8>>2];h=z[g+20>>2];i=z[g+4>>2];p=z[g+16>>2];j=z[g>>2];k=z[g+12>>2];z[f+96>>2]=C(j+k)*C(.5);z[f+100>>2]=C(i+p)*C(.5);v[f+108>>2]=0;z[f+104>>2]=C(m+h)*C(.5);z[f+80>>2]=C(k-j)*C(.5);z[f+84>>2]=C(p-i)*C(.5);v[f+92>>2]=0;z[f+88>>2]=C(h-m)*C(.5);g=v[f+100>>2];v[f+16>>2]=v[f+96>>2];v[f+20>>2]=g;g=v[f+108>>2];v[f+24>>2]=v[f+104>>2];v[f+28>>2]=g;g=v[f+84>>2];v[f>>2]=v[f+80>>2];v[f+4>>2]=g;g=v[f+92>>2];v[f+8>>2]=v[f+88>>2];v[f+12>>2]=g;if(MD(d,f+16|0,f)){if(!(Ba[v[v[e>>2]+8>>2]](e,f+76|0,B(r,44)+a|0)|0)){break b}}c=c+4|0;q=q-1|0;if(q){continue}break}}s=!l;if(l){continue a}break b}v[v[f+1172>>2]+(l<<2)>>2]=c+48;l=l+1|0;if((l|0)==(v[f+1180>>2]&2147483647)){fD(f+144|0,l<<1)}h=z[c+16>>2];i=z[c>>2];m=C(h+i);h=C(h-i);j=z[c+24>>2];k=z[c+8>>2];i=C(j+k);n=z[c+20>>2];o=z[c+4>>2];p=C(n+o);j=C(j-k);k=C(n-o);continue}break}break}a=v[f+1180>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[f+1172>>2];if((a|0)==(f+144|0)|!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=f+1184|0;return s}function wE(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);b=xa-144|0;xa=b;m=1;a:{if(!(v[c+40>>2]&x[a+12>>1])){break a}t=v[c>>2];if(!v[t+588>>2]){break a}f=z[c+24>>2];g=z[c+20>>2];i=z[c+16>>2];e=z[c+12>>2];m=v[a+4>>2];u=z[m+60>>2];o=z[c+36>>2];p=z[m+120>>2];q=z[c+32>>2];r=z[m+116>>2];G=z[c+28>>2];H=z[m+112>>2];d=z[m+20>>2];l=z[m+16>>2];j=z[m+124>>2];k=z[m+12>>2];v[b+108>>2]=0;v[b+92>>2]=0;v[b+76>>2]=0;v[b+60>>2]=0;v[b+44>>2]=0;n=C(j*C(1.0099999904632568));z[b+72>>2]=n;z[b+68>>2]=n;h=C(e+e);w=C(g*h);j=C(i+i);y=C(f*j);A=C(j*g);B=C(h*f);s=C(C(1)-C(e*h));D=C(i*j);j=C(C(C(k*C(w+y))+C(l*C(A-B)))+C(d*C(s-D)));z[b+52>>2]=j;z[b+40>>2]=j;E=C(h*i);h=C(g+g);F=C(f*h);I=s;s=C(g*h);h=C(C(C(k*C(E-F))+C(l*C(I-s)))+C(d*C(A+B)));z[b+36>>2]=h;l=C(C(C(k*C(C(C(1)-D)-s))+C(l*C(E+F)))+C(d*C(w-y)));z[b+56>>2]=l;d=j>C(0)?j:C(-j);z[b+100>>2]=d;z[b+88>>2]=d;d=h>C(0)?h:C(-h);z[b+84>>2]=d;k=l>C(0)?l:C(-l);z[b+104>>2]=k;v[b+28>>2]=0;z[b+64>>2]=n;z[b+48>>2]=h;z[b+32>>2]=l;z[b+96>>2]=d;z[b+80>>2]=k;d=C(p-o);n=C(d+d);d=C(H-G);o=C(d+d);d=C(r-q);p=C(d+d);q=C(C(g*n)+C(C(e*o)+C(i*p)));r=C(C(f*f)+C(-.5));d=C(C(g*q)+C(C(n*r)-C(f*C(C(e*p)-C(o*i)))));z[b+24>>2]=d;k=C(C(i*q)+C(C(p*r)-C(f*C(C(g*o)-C(n*e)))));z[b+20>>2]=k;f=C(C(e*q)+C(C(o*r)-C(f*C(C(i*n)-C(p*g)))));z[b+16>>2]=f;e=C(u+u);b:{if(e>=C(34028234663852886e22)){i=h==C(0)?k:h>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);e=l==C(0)?f:l>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);if(j==C(0)){g=d;break b}g=j>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break b}g=C(d+C(j*e));i=C(C(h*e)+k);e=C(f+C(l*e))}v[b+140>>2]=0;v[b+124>>2]=0;z[b+136>>2]=d>g?d:g;z[b+132>>2]=i>2]=d>2]=i>k?k:i;z[b+128>>2]=e>2]=e>f?f:e;c=v[c+4>>2];m=dD(v[c+12>>2],v[c+8>>2],t,b+16|0,v[a+8>>2])}xa=b+144|0;return m|0}function jo(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),y=0,A=C(0),B=C(0),D=C(0),E=C(0),F=C(0);i=xa-32|0;xa=i;o=uh(a);p=z[b+20>>2];F=z[b+16>>2];y=v[a+316>>2];e=y&1024?v[a+56>>2]+144|0:a+112|0;j=z[e+8>>2];q=z[e+4>>2];r=z[e+12>>2];s=z[e>>2];k=z[b+12>>2];f=z[b+8>>2];g=z[b>>2];h=z[b+4>>2];d=C(C(1)/C(K(C(C(k*k)+C(C(f*f)+C(C(g*g)+C(h*h)))))));f=C(f*d);l=z[e+24>>2];l=C(l+l);g=C(g*d);m=z[e+16>>2];m=C(m+m);h=C(h*d);n=z[e+20>>2];n=C(n+n);u=C(C(f*l)+C(C(g*m)+C(h*n)));d=C(k*d);k=C(C(d*d)+C(-.5));A=C(z[b+24>>2]+C(C(f*u)+C(C(l*k)+C(d*C(C(g*n)-C(m*h))))));z[i+24>>2]=A;p=C(p+C(C(h*u)+C(C(n*k)+C(d*C(C(f*m)-C(l*g))))));z[i+20>>2]=p;B=C(C(C(C(d*r)-C(s*g))-C(h*q))-C(f*j));z[i+12>>2]=B;D=C(C(C(g*q)+C(C(d*j)+C(f*r)))-C(s*h));z[i+8>>2]=D;E=C(C(C(f*s)+C(C(d*q)+C(h*r)))-C(j*g));z[i+4>>2]=E;j=C(C(C(h*j)+C(C(d*s)+C(g*r)))-C(q*f));z[i>>2]=j;d=C(F+C(C(g*u)+C(C(m*k)+C(d*C(C(h*l)-C(n*f))))));z[i+16>>2]=d;z[a+280>>2]=A;z[a+276>>2]=p;z[a+272>>2]=d;z[a+268>>2]=B;z[a+264>>2]=D;z[a+260>>2]=E;z[a+256>>2]=j;b=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:e=v[b>>2];if(w[e+4785|0]){break b}default:AG(a- -64|0,i);break a;case 1:break c}}e=v[b>>2]}v[a+316>>2]=y&-2097153;Xu(e,b);v[a+316>>2]=v[a+316>>2]|1048576}if(o){lu(a+20|0,o+5584|0,a);e=o+5652|0;v[e>>2]=v[e>>2]+1}if(v[a+40>>2]){a9(v[37696],8,13059,102,73994,0);aC(v[a+40>>2],a)}d:{if(!o|!c){break d}c=v[a+56>>2];e=v[a+52>>2];if(w[(e&1?c:(b+v[((e>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8|t[(w[a+317|0]&64?c+268|0:a+108|0)|0]&1){break d}d=z[a+308>>2];c=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(c){c=c-16|0}else{c=0}f=z[c+5148>>2];c=d>2]?1:c)){break d}d=c?f:d;e:{f:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:e=v[b>>2];if(w[e+4785|0]){break e}default:z[a+308>>2]=d;v[a+312>>2]=0;UG(a- -64|0,d,1);break d;case 1:break f}}e=v[b>>2]}z[a+308>>2]=d;v[a+312>>2]=0;Xu(e,b);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}xa=i+32|0}function SJ(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=C(0);j=xa-16|0;xa=j;a=v[a>>2];a:{if(!a){break a}a=v[a+32>>2];f=1;b:{if(!a){break b}while(1){f=a;if(v[a+28>>2]==(b|0)){break b}a=v[a>>2];if(a){continue}break}f=1}a=v[c>>2];if(a&1){fS(f,e);a=v[c>>2]}if(a&2){YI(f,2,1);a=v[c>>2]}if(a&128){if(v[f+8>>2]<0){$R(f)}a=v[c>>2]}if(a&4){fS(f,e);a=v[c>>2]}if(a&8){YI(f,1,4);a=v[c>>2]}if(a&64){t[j+8|0]=w[d|0];h=xa-48|0;xa=h;i=v[f+28>>2];g=w[i- -64|0];d=g&5;b=w[j+8|0];a=b&5;c:{d:{if(((d|0)!=0|0)!=((a|0)!=0|0)){if(!(!d|a)){k=v[f+4>>2];e=g&4;e:{if(!e){break e}b=v[f+8>>2];a=b>>>5&67108863;d=v[v[k+40>>2]+980>>2];if(a>>>0>=(v[d+152>>2]&2147483647)>>>0){break e}if(v[v[d+148>>2]+(a<<2)>>2]>>>b&1){break d}}l=z[i+60>>2];b=v[k+44>>2];a=w[b+9|0];d=2;f:{if(a-3>>>0<4294967294){break f}d=2;if(!k){break f}d=t[b+44|0]&1?1:2}ZI(f,l,a?(d|v[k+48>>2]<<2)+4|0:0,e);break c}_I(f);b=h+8|0;d=v[v[f+4>>2]+40>>2];a=v[v[d+976>>2]+1024>>2];Ba[v[v[a>>2]+84>>2]](b,a);oJ(v[d+2168>>2],f,4,b,(v[d+2360>>2]&8)>>>3|0);break c}if(!(b&4)^(g&4)>>>2){break c}}$R(f)}a=w[j+8|0]&2;g:{if(g&2){if(a){break g}b=v[f+4>>2];a=v[b+44>>2];if(w[a+9|0]-3>>>0<4294967294|!b|(v[f+36>>2]!=-1|y[b+152>>2]>4294967293)){break g}if(t[b+92|0]&1|(w[a+44|0]&3)==3|(!(w[v[f+28>>2]- -64|0]&2)|w[b+149|0]&16)){break g}jS(v[v[b+40>>2]+1152>>2],f);break g}if(!a|v[f+36>>2]==-1){break g}lS(v[v[v[f+4>>2]+40>>2]+1152>>2],f)}xa=h+48|0;a=v[c>>2]}if(a&16){h=v[f+8>>2];if((h|0)<0){g=v[v[v[f+4>>2]+40>>2]+980>>2];z[v[v[g+192>>2]+4>>2]+(h<<2)>>2]=z[v[f+28>>2]+60>>2];t[g+365|0]=1;e=h&2147483647;i=e+32>>>5|0;h:{if(i>>>0<=(v[g+164>>2]&2147483647)>>>0){d=v[g+160>>2];break h}a=v[g+168>>2];d=Ba[v[v[a>>2]+8>>2]](a,i<<2,17999,438)|0;a=v[g+160>>2];i:{if(!a){break i}H9(d,a,v[g+164>>2]<<2);if(v[g+164>>2]<0){break i}b=v[g+160>>2];if(!b){break i}a=v[g+168>>2];Ba[v[v[a>>2]+12>>2]](a,b)}a=v[g+164>>2];I9((a<<2)+d|0,0,i-a<<2);v[g+164>>2]=i;v[g+160>>2]=d}a=(e>>>3&268435452)+d|0;v[a>>2]=v[a>>2]|1<>2]}if(!(a&32)){break a}YI(f,16,1)}xa=j+16|0}function cD(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0;f=xa-1184|0;xa=f;t[f+1168|0]=1;v[f+1176>>2]=256;v[f+1180>>2]=256;v[f+1172>>2]=f+144;v[f+144>>2]=v[c+588>>2];l=1;a:while(1){l=l-1|0;c=v[v[f+1172>>2]+(l<<2)>>2];h=z[c+16>>2];i=z[c>>2];m=C(h+i);h=C(h-i);j=z[c+24>>2];k=z[c+8>>2];i=C(j+k);n=z[c+20>>2];o=z[c+4>>2];p=C(n+o);j=C(j-k);k=C(n-o);while(1){b:{z[f+132>>2]=p*C(.5);z[f+128>>2]=m*C(.5);v[f+140>>2]=0;z[f+136>>2]=i*C(.5);z[f+116>>2]=k*C(.5);z[f+112>>2]=h*C(.5);v[f+124>>2]=0;z[f+120>>2]=j*C(.5);g=v[f+132>>2];v[f+48>>2]=v[f+128>>2];v[f+52>>2]=g;g=v[f+140>>2];v[f+56>>2]=v[f+136>>2];v[f+60>>2]=g;g=v[f+116>>2];v[f+32>>2]=v[f+112>>2];v[f+36>>2]=g;g=v[f+124>>2];v[f+40>>2]=v[f+120>>2];v[f+44>>2]=g;c:{d:{if(!MD(d,f+48|0,f+32|0)){break d}g=c;c=v[c+36>>2];if(v[g+40>>2]){break c}q=v[c>>2];if(!q){break d}c=c+4|0;if((q|0)==1){if(Ba[v[v[e>>2]>>2]](e,f+76|0,(v[c>>2]<<3)+a|0)|0){break d}break b}while(1){r=v[c>>2];g=B(r,24)+b|0;m=z[g+8>>2];h=z[g+20>>2];i=z[g+4>>2];p=z[g+16>>2];j=z[g>>2];k=z[g+12>>2];z[f+96>>2]=C(j+k)*C(.5);z[f+100>>2]=C(i+p)*C(.5);v[f+108>>2]=0;z[f+104>>2]=C(m+h)*C(.5);z[f+80>>2]=C(k-j)*C(.5);z[f+84>>2]=C(p-i)*C(.5);v[f+92>>2]=0;z[f+88>>2]=C(h-m)*C(.5);g=v[f+100>>2];v[f+16>>2]=v[f+96>>2];v[f+20>>2]=g;g=v[f+108>>2];v[f+24>>2]=v[f+104>>2];v[f+28>>2]=g;g=v[f+84>>2];v[f>>2]=v[f+80>>2];v[f+4>>2]=g;g=v[f+92>>2];v[f+8>>2]=v[f+88>>2];v[f+12>>2]=g;if(MD(d,f+16|0,f)){if(!(Ba[v[v[e>>2]>>2]](e,f+76|0,(r<<3)+a|0)|0)){break b}}c=c+4|0;q=q-1|0;if(q){continue}break}}s=!l;if(l){continue a}break b}v[v[f+1172>>2]+(l<<2)>>2]=c+48;l=l+1|0;if((l|0)==(v[f+1180>>2]&2147483647)){fD(f+144|0,l<<1)}h=z[c+16>>2];i=z[c>>2];m=C(h+i);h=C(h-i);j=z[c+24>>2];k=z[c+8>>2];i=C(j+k);n=z[c+20>>2];o=z[c+4>>2];p=C(n+o);j=C(j-k);k=C(n-o);continue}break}break}a=v[f+1180>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[f+1172>>2];if((a|0)==(f+144|0)|!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=f+1184|0;return s}function uX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),v=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);c=xa-176|0;xa=c;j=z[b+20>>2];k=z[e+40>>2];m=z[b+24>>2];n=z[e+44>>2];o=z[b+16>>2];p=z[e+36>>2];z[c+112>>2]=z[e>>2];z[c+116>>2]=z[e+4>>2];z[c+120>>2]=z[e+8>>2];z[c+124>>2]=z[e+12>>2];z[c+128>>2]=z[e+16>>2];z[c+132>>2]=z[e+20>>2];z[c+136>>2]=z[e+24>>2];z[c+140>>2]=z[e+28>>2];l=z[e+32>>2];q=C(n-m);z[c+156>>2]=q;r=C(k-j);z[c+152>>2]=r;z[c+144>>2]=l;p=C(p-o);z[c+148>>2]=p;z[c+160>>2]=z[e+48>>2];z[c+164>>2]=z[e+52>>2];z[c+168>>2]=z[e+56>>2];j=z[b>>2];k=C(j+j);l=z[b+8>>2];s=z[b+4>>2];m=z[b+12>>2];n=C(m+m);o=z[a+8>>2];v=C(C(C(k*l)-C(s*n))*o);z[c+88>>2]=v;z[c+100>>2]=-v;l=C(o*C(C(l*n)+C(k*s)));z[c+84>>2]=l;z[c+96>>2]=-l;j=C(o*C(C(j*k)+C(C(m*n)+C(-1))));z[c+80>>2]=j;z[c+92>>2]=-j;z[c+104>>2]=z[a+4>>2];z[c+48>>2]=z[d>>2];z[c+52>>2]=z[d+4>>2];z[c+56>>2]=z[d+8>>2];j=z[d+12>>2];z[c+72>>2]=q;z[c+68>>2]=r;z[c+64>>2]=p;z[c+60>>2]=j;j=z[f>>2];k=z[f+4>>2];z[c+24>>2]=-z[f+8>>2];z[c+20>>2]=-k;z[c+16>>2]=-j;u[c+8>>1]=x[i>>1];a=c+160|0;d=G2(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=z[c+32>>2];j=z[c+36>>2];k=z[c+40>>2];u[h+12>>1]=2;z[h+36>>2]=-k;z[h+32>>2]=-j;z[h+28>>2]=-g;if(!(t[i|0]&1)){break a}g=z[h+40>>2];if(g==C(0)){break a}j=z[f+8>>2];k=z[f+4>>2];z[c+148>>2]=C(g*z[f>>2])+z[c+148>>2];z[c+152>>2]=C(g*k)+z[c+152>>2];z[c+156>>2]=C(g*j)+z[c+156>>2];F_(c+80|0,c+92|0,c+148|0,a,c+112|0,0,c+16|0);m=z[b+16>>2];n=z[b+20>>2];o=z[b+24>>2];p=z[c+148>>2];l=z[c+136>>2];q=z[c+112>>2];r=z[c+124>>2];s=z[c+152>>2];v=z[c+140>>2];w=z[c+116>>2];y=z[c+128>>2];A=z[c+156>>2];B=z[c+144>>2];g=z[c+24>>2];D=z[c+120>>2];j=z[c+16>>2];E=z[c+132>>2];k=z[c+20>>2];u[h+12>>1]=x[h+12>>1]|1;z[h+24>>2]=o+C(A+C(C(C(j*D)+C(k*E))+C(g*B)));z[h+20>>2]=n+C(s+C(C(C(j*w)+C(k*y))+C(g*v)));z[h+16>>2]=m+C(p+C(C(C(j*q)+C(k*r))+C(g*l)))}xa=c+176|0;return d|0}function cW(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=0,B=0,D=C(0);g=xa-4288|0;xa=g;i=z[d+4>>2];k=C(i+i);h=z[d+8>>2];o=C(k*h);q=z[d>>2];j=C(q+q);m=z[d+12>>2];p=C(j*m);l=C(o-p);s=C(j*h);u=C(k*m);n=C(s+u);o=C(o+p);w=C(j*i);x=C(h+h);y=C(x*m);m=C(w-y);p=C(s-u);s=C(w+y);j=C(C(1)-C(q*j));q=C(h*x);h=C(j-q);k=C(i*k);i=C(C(C(1)-k)-q);q=z[c+12>>2];u=z[c+8>>2];w=z[d+24>>2];x=z[d+20>>2];y=z[c+4>>2];D=z[d+16>>2];j=C(j-k);a:{if(j>2]=w;z[g+4276>>2]=x;z[g+4272>>2]=D;z[g+4268>>2]=h;z[g+4264>>2]=i;z[g+4260>>2]=j;z[g+4256>>2]=l;v[g+4200>>2]=-1;z[g+28>>2]=q;z[g+24>>2]=u;z[g+20>>2]=y;v[g+16>>2]=3;r=g+4200|0;A=g+16|0;kV(r,A);v[g+4144>>2]=-1;B=g+4144|0;kV(B,e);v[g+4136>>2]=0;v[g+4140>>2]=0;d=0;v[g+4112>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;c=xa-400|0;xa=c;e=c+328|0;z_(y_(c+104|0,r+4|0),e);i=z[r+8>>2];l=z[r+4>>2];h=z[g>>2];n=C(h+z[r+12>>2]);z[c+100>>2]=n;i=C(h+i);z[c+96>>2]=i;z[c+88>>2]=-n;z[c+84>>2]=-i;h=C(h+l);z[c+92>>2]=h;z[c+80>>2]=-h;r=c- -64|0;v[r>>2]=0;v[r+4>>2]=1065353216;v[c+56>>2]=0;v[c+60>>2]=0;v[c+48>>2]=0;v[c+52>>2]=1065353216;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=1065353216;v[c+36>>2]=1065353216;v[c+16>>2]=1065353216;v[c+20>>2]=0;t[c+72|0]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=1065353216;v[c+4>>2]=0;e=BZ(e,c+80|0,B,g+4256|0,f,g,A,c,1);xa=c+400|0;b:{if(!e){break b}if(!QV(a,b,v[g+4112>>2],g+16|0)){break b}d=v[g+4112>>2]!=0}xa=g+4288|0;return d|0}function ev(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);s=z[b+8>>2];k=z[d>>2];o=z[c+4>>2];m=z[c+12>>2];l=z[d+8>>2];i=z[d+12>>2];p=z[c+8>>2];q=z[c>>2];j=z[d+4>>2];A=C(C(k*o)+C(C(C(m*l)-C(i*p))-C(q*j)));t=C(C(j*p)+C(C(C(m*k)-C(i*q))-C(o*l)));u=C(t+t);B=C(C(l*q)+C(C(C(m*j)-C(i*o))-C(p*k)));w=C(C(p*l)+C(C(o*j)+C(C(m*i)+C(q*k))));x=C(w+w);G=C(s*C(C(A*u)-C(B*x)));F=C(-q);E=z[c+16>>2];k=C(z[d+16>>2]-E);l=C(k+k);H=z[c+20>>2];k=C(z[d+20>>2]-H);i=C(k+k);r=z[c+24>>2];k=C(z[d+24>>2]-r);j=C(k+k);n=C(C(C(F*l)-C(i*o))-C(p*j));k=C(C(m*m)+C(-.5));I=C(C(C(j*k)+C(m*C(C(o*l)-C(q*i))))-C(p*n));A=C(s*C(C(A*x)+C(u*B)));B=C(C(C(i*k)+C(m*C(C(q*j)-C(p*l))))-C(o*n));n=C(C(C(l*k)+C(m*C(C(p*i)-C(o*j))))-C(q*n));D=C(s*C(C(t*u)+C(C(w*x)+C(-1))));y=z[b+4>>2];l=C(C(n-D)-y);i=C(q+q);j=C(m+m);s=C(C(i*p)-C(o*j));t=C(C(p*j)+C(i*o));u=C(C(q*i)+C(C(m*j)+C(-1)));w=C(-p);x=C(-o);i=C(C(n+D)-y);D=z[e>>2];b=i<=D;a:{if(!b){break a}a=v[g+4096>>2];if(a>>>0>63){break a}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=-s;z[a+4>>2]=-t;z[a>>2]=-u;v[a+52>>2]=-1;z[a+12>>2]=i;y=r;j=C(I+G);j=C(j+j);i=C(i+i);n=C(B+A);n=C(n+n);r=C(C(p*j)+C(C(q*i)+C(o*n)));z[a+24>>2]=y+C(C(p*r)+C(C(j*k)+C(m*C(C(q*n)+C(i*x)))));z[a+20>>2]=H+C(C(o*r)+C(C(n*k)+C(m*C(C(p*i)+C(j*F)))));z[a+16>>2]=E+C(C(q*r)+C(C(i*k)+C(m*C(C(o*j)+C(n*w)))))}b:{if(!(l<=D)){break b}b=1;a=v[g+4096>>2];if(a>>>0>63){break b}r=z[c+16>>2];E=z[c+20>>2];i=z[c+24>>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=-s;z[a+4>>2]=-t;z[a>>2]=-u;v[a+52>>2]=-1;z[a+12>>2]=l;y=i;i=C(I-G);i=C(i+i);l=C(l+l);j=C(B-A);j=C(j+j);n=C(C(p*i)+C(C(q*l)+C(o*j)));z[a+24>>2]=y+C(C(p*n)+C(C(i*k)+C(m*C(C(q*j)+C(l*x)))));z[a+20>>2]=E+C(C(o*n)+C(C(j*k)+C(m*C(C(p*l)+C(i*F)))));z[a+16>>2]=r+C(C(q*n)+C(C(l*k)+C(m*C(C(o*i)+C(j*w)))))}return b|0}function J4(a,b,c,d){var e=0,f=0,g=C(0),h=0,i=0,j=0,k=0,l=C(0);j=xa-16|0;xa=j;f=v[b>>2];t[d|0]=0;h=v[b>>2];g=C(-z[a+252>>2]);a:{b:{if(c){l=z[b+24>>2];i=1;while(1){k=v[f+32>>2];c=v[k+36>>2];c:{d:{if(!(z[c+24>>2]>2]+36>>2];if(g>2]*z[e+36>>2])+C(C(z[c+12>>2]*z[e+28>>2])+C(z[e+32>>2]*z[c+16>>2])))-z[c+40>>2])){break b}e=v[f+36>>2];if(g>2]*z[c+36>>2])+C(C(z[e+12>>2]*z[c+28>>2])+C(z[c+32>>2]*z[e+16>>2])))-z[e+40>>2])){break d}break c}e=v[f+36>>2];if(g>2]*z[c+36>>2])+C(C(z[e+12>>2]*z[c+28>>2])+C(z[c+32>>2]*z[e+16>>2])))-z[e+40>>2])){break b}e=v[v[k+32>>2]+36>>2];if(!(g>2]*z[e+36>>2])+C(C(z[c+12>>2]*z[e+28>>2])+C(z[e+32>>2]*z[c+16>>2])))-z[c+40>>2]))){break c}}i=0}f=v[f+28>>2];if((h|0)!=(f|0)){continue}break}e=0;if(i){break a}v[b+48>>2]=2;break a}while(1){e=v[f+36>>2];i=v[f+32>>2];c=v[i+36>>2];if(g>2]*z[c+36>>2])+C(C(z[e+12>>2]*z[c+28>>2])+C(z[c+32>>2]*z[e+16>>2])))-z[e+40>>2])){break b}e=v[v[i+32>>2]+36>>2];if(g>2]*z[e+36>>2])+C(C(z[c+12>>2]*z[e+28>>2])+C(z[e+32>>2]*z[c+16>>2])))-z[c+40>>2])){break b}f=v[f+28>>2];if((h|0)!=(f|0)){continue}break}e=0;break a}e=0;v[a+312>>2]=0;if(!w4(b,f,a+308|0)){t[d|0]=1;break a}c=v[a+312>>2];v[a+100>>2]=v[a+100>>2]-c;if(!c){e=1;break a}i=a+260|0;h=0;while(1){e=v[v[a+308>>2]+(h<<2)>>2];f=v[e+8>>2];if(f){while(1){c=f;v[j+12>>2]=c;f=v[c+20>>2];v[c+20>>2]=0;g=C(C(C(z[b+20>>2]*z[c+8>>2])+C(C(z[b+12>>2]*z[c>>2])+C(z[c+4>>2]*z[b+16>>2])))-z[b+40>>2]);e:{if(g>z[a+252>>2]){z[c+16>>2]=g;d=v[b+8>>2];if(!d){v[b+8>>2]=c;v[c+20>>2]=0;z[c+16>>2]=g;break e}if(g>2]){v[c+20>>2]=v[d+20>>2];v[d+20>>2]=c;break e}v[c+20>>2]=d;v[b+8>>2]=c;break e}d=v[a+264>>2];if(d>>>0>=(v[a+268>>2]&2147483647)>>>0){G4(i,j+12|0);break e}v[v[a+260>>2]+(d<<2)>>2]=c;v[a+264>>2]=d+1}if(f){continue}break}v[e+8>>2]=0;c=v[a+312>>2]}e=1;h=h+1|0;if(h>>>0>>0){continue}break}}xa=j+16|0;return e}function pA(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)-32|0;fA(d,c);f=x[d+22>>1];if(f){d=v[d+24>>2];l=d+(f<<4)|0;while(1){k=w[d|0]==3;e=d- -64|0;g=w[d+3|0];h=w[d+2|0];a:{if(!h){break a}d=k?112:48;if(h-1>>>0>=3){j=h&252;f=0;while(1){z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[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){z[e+36>>2]=z[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){v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[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){v[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)-32|0;fA(a,c);b=x[a+22>>1];if(b){d=v[a+24>>2];h=d+(b<<4)|0;while(1){g=w[d|0]==3;e=d- -64|0;b=w[d+3|0];c=w[d+2|0];c:{if(!c){break c}a=g?112:48;if(c-1>>>0>=3){i=c&252;f=0;while(1){z[e+36>>2]=z[e+40>>2];d=a+e|0;z[d+36>>2]=z[d+40>>2];d=a+d|0;z[d+36>>2]=z[d+40>>2];d=a+d|0;z[d+36>>2]=z[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){z[e+36>>2]=z[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){v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[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){v[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 mA(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)-32|0;eA(d,c);f=x[d+22>>1];if(f){d=v[d+24>>2];l=d+(f<<4)|0;while(1){k=w[d|0]==3;e=d- -64|0;g=w[d+3|0];h=w[d+2|0];a:{if(!h){break a}d=k?112:48;if(h-1>>>0>=3){j=h&252;f=0;while(1){z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[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){z[e+36>>2]=z[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){v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[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){v[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)-32|0;eA(a,c);b=x[a+22>>1];if(b){d=v[a+24>>2];h=d+(b<<4)|0;while(1){g=w[d|0]==3;e=d- -64|0;b=w[d+3|0];c=w[d+2|0];c:{if(!c){break c}a=g?112:48;if(c-1>>>0>=3){i=c&252;f=0;while(1){z[e+36>>2]=z[e+40>>2];d=a+e|0;z[d+36>>2]=z[d+40>>2];d=a+d|0;z[d+36>>2]=z[d+40>>2];d=a+d|0;z[d+36>>2]=z[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){z[e+36>>2]=z[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){v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[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){v[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 Ls(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;f=xa+-64|0;xa=f;t[f+48|0]=1;v[f+56>>2]=0;v[f+60>>2]=10;v[f+52>>2]=f+8;h=v[a+84>>2];a:{b:{if(h>>>0>(v[f+60>>2]&2147483647)>>>0){c=f+8|0;c:{if(!h){break c}b=h<<2;if(!(w[c+40|0]|b>>>0>40)){t[c+40|0]=1;d=c;break c}if(!b){break c}d=v[37696];e=d+12|0;d=(n=e,o=b,p=Ba[v[v[d>>2]+20>>2]](d)|0?58297:63804,q=16608,r=553,m=v[v[e>>2]+8>>2],Ba[m](n|0,o|0,p|0,q|0,r|0)|0)}e=v[c+44>>2];b=v[c+48>>2];if((b|0)>0){i=(b<<2)+d|0;b=d;while(1){v[b>>2]=v[e>>2];e=e+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}e=v[c+44>>2]}d:{if(v[c+52>>2]<0){break d}if((c|0)==(e|0)){t[c+40|0]=0;break d}if(!e){break d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e)}v[c+52>>2]=h;v[c+44>>2]=d;break b}if(!h){break a}}while(1){k=v[a+80>>2]+(g<<2)|0;d=v[f+56>>2];e:{if(d>>>0>=(v[f+60>>2]&2147483647)>>>0){d=0;c=f+8|0;b=v[c+52>>2];j=b&2147483647?b<<1:1;f:{if(!j){break f}b=j<<2;if(!(w[c+40|0]|b>>>0>40)){t[c+40|0]=1;d=c;break f}if(!b){break f}d=v[37696];e=d+12|0;d=(r=e,q=b,p=Ba[v[v[d>>2]+20>>2]](d)|0?58297:63804,o=16608,n=553,m=v[v[e>>2]+8>>2],Ba[m](r|0,q|0,p|0,o|0,n|0)|0)}e=v[c+48>>2];l=(e<<2)+d|0;if((e|0)>0){i=v[c+44>>2];b=d;while(1){v[b>>2]=v[i>>2];i=i+4|0;b=b+4|0;if(l>>>0>b>>>0){continue}break}}v[l>>2]=v[k>>2];g:{if(v[c+52>>2]<0){break g}b=v[c+44>>2];if((b|0)==(c|0)){t[c+40|0]=0;break g}if(!b){break g}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);e=v[c+48>>2]}v[c+52>>2]=j;v[c+44>>2]=d;v[c+48>>2]=e+1;break e}v[v[f+52>>2]+(d<<2)>>2]=v[k>>2];v[f+56>>2]=d+1}g=g+1|0;if((h|0)!=(g|0)){continue}break}}v[a+84>>2]=0;h:{if(w[a+92|0]){Ba[v[v[a>>2]+20>>2]](a);break h}v[a+20>>2]=v[a+20>>2]-1}if(v[f+56>>2]){g=0;while(1){a=v[v[f+52>>2]+(g<<2)>>2];Ba[v[v[a>>2]+20>>2]](a);g=g+1|0;if(g>>>0>2]){continue}break}}a=v[f+60>>2];i:{if((a|0)<0|!(a&2147483647)){break i}a=v[f+52>>2];if((a|0)==(f+8|0)|!a){break i}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,a)}xa=f- -64|0}function l2(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=0,t=C(0),u=C(0),x=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0);i=xa+-64|0;xa=i;j=v[g+4>>2];v[i+48>>2]=v[g>>2];v[i+52>>2]=j;j=v[g+12>>2];v[i+56>>2]=v[g+8>>2];v[i+60>>2]=j;j=v[a+16>>2];a:{b:{c:{d:{e:{if(w[c+44|0]){if(j){break e}break c}if(!j){break c}o=C(34028234663852886e22);j=0;while(1){s=v[a+24>>2]+B(p,20)|0;G=z[s+12>>2];k=v[a+28>>2]+B(w[s+19|0],12)|0;H=z[k+8>>2];I=z[k>>2];J=z[k+4>>2];k=v[c+40>>2];t=z[k+36>>2];u=z[k+40>>2];x=z[s>>2];A=z[k+20>>2];D=z[s+4>>2];E=z[k+24>>2];F=z[s+8>>2];q=z[k+32>>2];n=z[k+8>>2];r=z[k>>2];m=z[k+4>>2];l=z[k+16>>2];v[i+12>>2]=0;q=C(C(u*F)+C(C(q*x)+C(D*t)));m=C(C(n*F)+C(C(r*x)+C(D*m)));l=C(C(E*F)+C(C(l*x)+C(D*A)));n=C(C(1)/C(K(C(C(q*q)+C(C(m*m)+C(l*l))))));z[i+8>>2]=q*n;z[i+4>>2]=l*n;z[i>>2]=m*n;Ba[v[v[b>>2]+12>>2]](b,i,i+32|0,i+16|0);l=z[i+32>>2];r=C(n*C(-G));m=z[d>>2];if(l>C(r+m)|C(m+z[i+16>>2])>2];v[i+56>>2]=v[i+8>>2];v[i+60>>2]=j;j=v[i+4>>2];v[i+48>>2]=v[i>>2];v[i+52>>2]=j;o=l;j=p}p=p+1|0;if(p>>>0>2]){continue}break}break b}o=C(34028234663852886e22);j=0;c=0;while(1){k=v[a+24>>2]+B(c,20)|0;t=z[k+12>>2];p=v[a+28>>2]+B(w[k+19|0],12)|0;q=z[p+8>>2];n=z[p>>2];r=z[p+4>>2];u=z[k>>2];A=z[k+4>>2];E=z[k+8>>2];v[i+12>>2]=0;z[i+8>>2]=E;z[i+4>>2]=A;z[i>>2]=u;Ba[v[v[b>>2]+12>>2]](b,i,i+32|0,i+16|0);l=z[i+32>>2];m=z[d>>2];if(l>C(m-t)|C(C(E*q)+C(C(u*n)+C(r*A)))>C(m+z[i+16>>2])){break d}l=C(C(-t)-l);if(l>2];v[i+56>>2]=v[i+8>>2];v[i+60>>2]=j;j=v[i+4>>2];v[i+48>>2]=v[i>>2];v[i+52>>2]=j;o=l;j=c}c=c+1|0;if(c>>>0>2]){continue}break}break b}a=0;break a}j=0;o=C(34028234663852886e22)}if(z[e>>2]>C(o+C(1.1920928955078125e-7))){a=v[i+52>>2];v[g>>2]=v[i+48>>2];v[g+4>>2]=a;a=v[i+60>>2];v[g+8>>2]=v[i+56>>2];v[g+12>>2]=a;z[e>>2]=o;v[h>>2]=1}v[f>>2]=j;a=1}xa=i- -64|0;return a}function Eh(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);e=xa+-64|0;xa=e;a:{if(v[(Ba[v[v[a>>2]+24>>2]](a)|0)+4656>>2]){a9(v[37696],2,10974,141,66842,0);break a}t[e+56|0]=w[c|0];g=xa-16|0;xa=g;f=v[a+24>>2];if(f){t[g+8|0]=w[e+56|0];i=xa-16|0;xa=i;j=v[f>>2];t[i+8|0]=w[g+8|0];if(Ba[v[v[j>>2]+36>>2]](j,b,i+8|0)|0){b=v[v[f+4>>2]+1012>>2];Ba[v[v[b>>2]+64>>2]](b,v[f>>2],f+48|0)}xa=i+16|0}xa=g+16|0;b=w[c|0];b:{if(!(b&4)){break b}i=v[a+100>>2];if(!i){break b}while(1){b=v[v[a+96>>2]+(h<<2)>>2];k=z[b+80>>2];z[e+24>>2]=k;l=z[b+84>>2];z[e+28>>2]=l;m=z[b+88>>2];z[e+32>>2]=m;n=z[b+92>>2];z[e+36>>2]=n;o=z[b+96>>2];z[e+40>>2]=o;p=z[b+100>>2];z[e+44>>2]=p;q=z[b+104>>2];z[e+48>>2]=q;z[b+280>>2]=q;z[b+276>>2]=p;z[b+272>>2]=o;z[b+268>>2]=n;z[b+264>>2]=m;z[b+260>>2]=l;z[b+256>>2]=k;f=b+48|0;c:{d:{e:{switch((v[b+52>>2]>>>30|0)-2|0){case 0:g=v[f>>2];if(w[g+4785|0]){break d}default:AG(b- -64|0,e+24|0);break c;case 1:break e}}g=v[f>>2]}v[b+316>>2]=v[b+316>>2]&-2097153;Xu(g,f);v[b+316>>2]=v[b+316>>2]|1048576}h=h+1|0;if((i|0)!=(h|0)){continue}break}b=w[c|0]}i=a+12|0;f:{if(!(b&5)){break f}j=v[a+100>>2];if(!j){break f}f=0;while(1){b=v[v[a+96>>2]+(f<<2)>>2];k=z[b+144>>2];z[e+24>>2]=k;l=z[b+148>>2];z[e+28>>2]=l;m=z[b+152>>2];z[e+32>>2]=m;z[e+8>>2]=z[b+160>>2];z[e+12>>2]=z[b+164>>2];z[e+16>>2]=z[b+168>>2];z[b+292>>2]=m;z[b+288>>2]=l;z[b+284>>2]=k;g=b- -64|0;c=b+48|0;g:{h:{i:{switch((v[b+52>>2]>>>30|0)-2|0){case 0:h=v[c>>2];if(w[h+4785|0]){break h}default:BG(g,e+24|0);break g;case 1:break i}}h=v[c>>2]}Xu(h,c);v[b+316>>2]=v[b+316>>2]|4194304}z[b+296>>2]=z[e+8>>2];z[b+300>>2]=z[e+12>>2];z[b+304>>2]=z[e+16>>2];j:{k:{l:{switch((v[b+52>>2]>>>30|0)-2|0){case 0:h=v[c>>2];if(w[h+4785|0]){break k}default:CG(g,e+8|0);break j;case 1:break l}}h=v[c>>2]}Xu(h,c);v[b+316>>2]=v[b+316>>2]|8388608}f=f+1|0;if((j|0)!=(f|0)){continue}break}}cj(i,0,d)}xa=e- -64|0}function Sm(a){var b=0,c=0,d=0;a:{b:{switch((w[a+7|0]&15)-1|0){case 0:case 1:b=a-32|0;c=v[a-24>>2];c:{if(t[a-26|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;d=a+1552|0;v[d>>2]=v[d>>2]-1;a=a+1560|0;v[b>>2]=v[a>>2];v[a>>2]=b;break c}Ba[v[v[b>>2]+12>>2]](b)|0}break a;case 2:b=a-48|0;c=v[a-40>>2];d:{if(t[a-42|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;v[a+960>>2]=v[a+960>>2]-1;v[b>>2]=v[a+968>>2];v[a+968>>2]=b;break d}Ba[v[v[b>>2]+12>>2]](b)|0}break a;case 3:b=a-48|0;c=v[a-40>>2];e:{if(t[a-42|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;d=a+3328|0;v[d>>2]=v[d>>2]-1;a=a+3336|0;v[b>>2]=v[a>>2];v[a>>2]=b;break e}Ba[v[v[b>>2]+12>>2]](b)|0}break a;case 4:b=a-48|0;c=v[a-40>>2];f:{if(t[a-42|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;d=a+1256|0;v[d>>2]=v[d>>2]-1;a=a+1264|0;v[b>>2]=v[a>>2];v[a>>2]=b;break f}Ba[v[v[b>>2]+12>>2]](b)|0}break a;case 5:b=a-16|0;g:{if(t[a-10|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;c=a+2144|0;v[c>>2]=v[c>>2]-1;a=a+2152|0;v[b>>2]=v[a>>2];v[a>>2]=b;break g}Ba[v[v[b>>2]+12>>2]](b)|0}_n(v[37393],b,0,2);return;case 6:b=a-12|0;d=v[a-4>>2];h:{if(t[a-6|0]&1){c=v[37389];i:{if(x[a-8>>1]==11){Ba[v[v[b>>2]+12>>2]](b)|0;a=c+2736|0;v[a>>2]=v[a>>2]-1;a=c+2744|0;break i}Ba[v[v[b>>2]+12>>2]](b)|0;a=c+3032|0;v[a>>2]=v[a>>2]-1;a=c+3040|0}v[b>>2]=v[a>>2];v[a>>2]=b;break h}Ba[v[v[b>>2]+12>>2]](b)|0}_n(v[37393],b,d,2);return;case 7:a=v[a+380>>2];j:{if(t[a+6|0]&1){b=v[37389];if(x[a+4>>1]==14){Ba[v[v[a>>2]+12>>2]](a)|0;c=b+3624|0;v[c>>2]=v[c>>2]-1;b=b+3632|0;v[a>>2]=v[b>>2];v[b>>2]=a;break j}Ba[v[v[a>>2]+12>>2]](a)|0;c=b+3920|0;v[c>>2]=v[c>>2]-1;b=b+3928|0;v[a>>2]=v[b>>2];v[b>>2]=a;break j}Ba[v[v[a>>2]+12>>2]](a)|0}_n(v[37393],a,0,2);return;case 8:b=a-8|0;k:{if(t[a-2|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;c=a+1848|0;v[c>>2]=v[c>>2]-1;a=a+1856|0;v[b>>2]=v[a>>2];v[a>>2]=b;break k}Ba[v[v[b>>2]+12>>2]](b)|0}_n(v[37393],b,0,2);break;default:break b}}return}_n(v[37393],b,c,2)}function B1(a,b,c){var d=0,e=0,f=C(0),g=0,h=0,i=C(0),j=0,k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=0,x=C(0),A=C(0);h=xa-32|0;xa=h;k=z[a+2264>>2];n=z[a+2260>>2];o=z[a+2280>>2];p=z[a+2272>>2];q=z[a+2276>>2];r=z[a+2296>>2];s=z[a+2288>>2];t=z[a+2292>>2];u=z[a+2256>>2];f=z[b+8>>2];i=z[b>>2];l=z[b+4>>2];v[h+28>>2]=0;z[h+24>>2]=C(r*f)+C(C(s*i)+C(l*t));z[h+20>>2]=C(o*f)+C(C(p*i)+C(l*q));z[h+16>>2]=C(k*f)+C(C(u*i)+C(l*n));d=v[a+2324>>2];b=d-c|0;if(b>>>0>=6){z2(v[a+2320>>2]+(c<<6)|0,b);d=c+5|0;v[a+2324>>2]=d}if(c>>>0>>0){b=c;while(1){m=b;b=b+1|0;j=b;if(b>>>0>>0){while(1){g=v[a+2320>>2];e=g+(j<<6)|0;w=(m<<6)+g|0;f=C(z[e+24>>2]-z[w+24>>2]);i=C(f*f);f=C(z[e+16>>2]-z[w+16>>2]);k=C(f*f);f=C(z[e+20>>2]-z[w+20>>2]);if(z[a+2240>>2]>C(i+C(k+C(f*f)))){d=((d<<6)+g|0)+-64|0;g=v[d+4>>2];v[e>>2]=v[d>>2];v[e+4>>2]=g;v[e+48>>2]=v[d+48>>2];g=v[d+44>>2];v[e+40>>2]=v[d+40>>2];v[e+44>>2]=g;g=v[d+36>>2];v[e+32>>2]=v[d+32>>2];v[e+36>>2]=g;g=v[d+28>>2];v[e+24>>2]=v[d+24>>2];v[e+28>>2]=g;g=v[d+20>>2];v[e+16>>2]=v[d+16>>2];v[e+20>>2]=g;g=v[d+12>>2];v[e+8>>2]=v[d+8>>2];v[e+12>>2]=g;d=v[a+2324>>2]-1|0;v[a+2324>>2]=d;j=j-1|0}j=j+1|0;if(j>>>0>>0){continue}break}}if(b>>>0>>0){continue}break}}v[h>>2]=2139095039;if(c>>>0>>0){j=c;while(1){f=z[h+24>>2];e=v[h+20>>2];m=j<<6;b=m+v[a+2320>>2]|0;v[b+32>>2]=v[h+16>>2];v[b+36>>2]=e;z[b+40>>2]=f;f=z[b+44>>2];n=z[a+2296>>2];o=z[a+2292>>2];p=z[a+2288>>2];q=z[a+2280>>2];r=z[a+2276>>2];s=z[a+2272>>2];i=z[a+2264>>2];l=z[a+2312>>2];k=z[a+2260>>2];t=z[a+2308>>2];u=z[a+2256>>2];x=z[a+2304>>2];b=m+v[a+2320>>2]|0;v[b+28>>2]=0;A=i;i=C(z[b+24>>2]-l);l=C(z[b+16>>2]-x);x=k;k=C(z[b+20>>2]-t);z[b+16>>2]=C(A*i)+C(C(u*l)+C(x*k));z[b+20>>2]=C(q*i)+C(C(s*l)+C(k*r));z[b+24>>2]=C(n*i)+C(C(p*l)+C(k*o));i=z[h>>2];z[h>>2]=f>>0>2]){continue}break}}C1(a,h+16|0,h,c);if(y[a+2324>>2]>15){z1(a,6,1)}xa=h+32|0}function av(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0);u=z[c+24>>2];G=z[d+24>>2];y=C(u-G);k=C(y+y);q=z[d+12>>2];t=C(C(q*q)+C(-.5));o=z[d>>2];A=z[c+20>>2];H=z[d+20>>2];B=C(A-H);l=C(B+B);E=z[c+16>>2];I=z[d+16>>2];F=C(E-I);n=C(F+F);r=z[d+4>>2];w=C(C(k*t)-C(q*C(C(o*l)-C(n*r))));p=z[d+8>>2];s=C(C(p*k)+C(C(o*n)+C(l*r)));x=C(p*s);i=C(C(r*s)+C(C(l*t)-C(q*C(C(p*n)-C(k*o)))));j=z[b+4>>2];m=C(-j);k=C(C(o*s)+C(C(n*t)-C(q*C(C(r*k)-C(l*p)))));c=1;a:{if(m>k){break a}m=k;c=0;if(!(j>2];l=C(-k);b:{c:{if(l>i){i=l;break c}if(!(i>k)){break b}i=k}c=1}M=z[e>>2];w=z[a+4>>2];x=C(-r);J=C(-o);L=C(-p);d:{e:{f:{s=z[b+12>>2];l=C(-s);if(!(ns;if((a|c)!=1){break f}l=a?s:n}j=C(w+M);u=C(j*j);j=C(l+l);m=C(m+m);i=C(i+i);k=C(C(p*j)+C(C(o*m)+C(r*i)));l=C(C(p*k)+C(C(j*t)+C(q*C(C(o*i)+C(m*x)))));n=C(y-l);s=C(C(o*k)+C(C(m*t)+C(q*C(C(r*j)+C(i*L)))));o=C(F-s);j=C(C(r*k)+C(C(i*t)+C(q*C(C(p*m)+C(j*J)))));m=C(B-j);i=C(C(n*n)+C(C(o*o)+C(m*m)));a=0;if(uk){m=C(0);l=C(-k);j=C(0);i=i>C(0)?C(2):C(-2);break g}j=n>C(0)?C(1):C(-1);break h}if(jC(0)?C(2):C(-2);l=C(-j);j=C(0);i=C(0);break g}j=n>C(0)?C(1):C(-1)}m=C(0);l=C(-l);i=C(0)}j=C(j+j);n=C(C(p*j)+C(C(o*m)+C(r*i)));k=C(C(p*n)+C(C(j*t)+C(q*C(C(o*i)+C(m*x)))));p=C(C(r*n)+C(C(i*t)+C(q*C(C(p*m)+C(j*J)))));i=C(C(o*n)+C(C(m*t)+C(q*C(C(r*j)+C(i*L)))))}b=v[g+4096>>2];a=1;if(b>>>0>63){break d}v[g+4096>>2]=b+1;a=(b<<6)+g|0;z[a+16>>2]=E;z[a+8>>2]=k;z[a+4>>2]=p;z[a>>2]=i;v[a+52>>2]=-1;z[a+12>>2]=l-w;z[a+24>>2]=u;z[a+20>>2]=A;a=1}return a|0}function oG(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=C(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;i=xa-16|0;xa=i;v[i+12>>2]=d;v[i+8>>2]=b;d=v[a+28>>2];a:{if(d>>>0>=(v[a+32>>2]&2147483647)>>>0){pG(a+24|0,i+8|0);break a}v[v[a+24>>2]+(d<<2)>>2]=b;v[a+28>>2]=d+1}d=v[a+40>>2];b:{if(d>>>0>=(v[a+44>>2]&2147483647)>>>0){d=0;e=v[a+44>>2];h=e&2147483647?e<<1:1;c:{if(!h){break c}e=h<<2;if(!e){break c}d=v[37696];g=d+12|0;d=(q=g,r=e,s=Ba[v[v[d>>2]+20>>2]](d)|0?58041:63804,t=16608,u=553,p=v[v[g>>2]+8>>2],Ba[p](q|0,r|0,s|0,t|0,u|0)|0)}f=v[a+40>>2];j=(f<<2)+d|0;if((f|0)>0){g=v[a+36>>2];e=d;while(1){v[e>>2]=v[g>>2];g=g+4|0;e=e+4|0;if(j>>>0>e>>>0){continue}break}}v[j>>2]=v[i+12>>2];d:{if(v[a+44>>2]<0){break d}e=v[a+36>>2];if(!e){break d}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,e);f=v[a+40>>2]}v[a+44>>2]=h;v[a+36>>2]=d;v[a+40>>2]=f+1;break b}v[v[a+36>>2]+(d<<2)>>2]=v[i+12>>2];v[a+40>>2]=d+1}d=v[a>>2];Ba[v[v[d>>2]+16>>2]](d);j=a+12|0;g=v[a+16>>2];f=g;d=v[a+20>>2]&2147483647;if(f>>>0>=d>>>0){nG(j,d?d<<1:1);f=v[a+16>>2]}v[a+16>>2]=f+1;d=v[b+44>>2];h=v[a+12>>2];e=h+(f<<5)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+16>>2]=d+16;m=qG(b);l=z[v[a+8>>2]+32>>2];e:{if(c){k=v[a+24>>2];o=v[v[k>>2]+152>>2];e=-2147483648;n=v[a+28>>2];f:{if(!n){break f}d=0;while(1){if(v[(d<<2)+k>>2]==(c|0)){e=d;break f}d=d+1|0;if((n|0)!=(d|0)){continue}break}}c=(f<<5)+h|0;v[c+24>>2]=e;d=g&31;if((g&63)>>>0>=32){h=1<>>32-d}k=f;e=v[j>>2]+(e<<5)|0;f=k|v[e+8>>2];d=v[e+12>>2]|h;v[c+8>>2]=f;v[c+12>>2]=d;v[c+20>>2]=v[v[i+12>>2]+24>>2]+4;c=h|v[e+4>>2];v[e>>2]=k|v[e>>2];v[e+4>>2]=c;c=o>>>0>4294967293;break e}f=1;d=0;v[e+8>>2]=1;v[e+12>>2]=0;v[e+20>>2]=0;v[e+24>>2]=-1;c=l==C(0)}d=Taa(d)+Taa(f)|0;e=v[a+64>>2];d=d>>>0>e>>>0?d:e;v[a+64>>2]=d;v[v[a>>2]+96>>2]=d;if(!(m|c^1|v[a+28>>2]==1)){d=0;while(1){pH(v[v[a+24>>2]+(d<<2)>>2],l);d=d+1|0;if(d>>>0>2]-1>>>0){continue}break}}sH(b,a,l,c&m,g);xa=i+16|0}function nz(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0);s=x[d+108>>1];a:{if(!s){break a}if(s&1){v[a>>2]=0;v[c>>2]=0}if(s&2){v[a+4>>2]=0;v[c+4>>2]=0}if(s&4){v[a+8>>2]=0;v[c+8>>2]=0}if(s&8){v[b>>2]=0;v[c+16>>2]=0}if(s&16){v[b+4>>2]=0;v[c+20>>2]=0}if(!(s&32)){break a}v[b+8>>2]=0;v[c+24>>2]=0}h=z[d+44>>2];i=z[d+56>>2];l=z[d+20>>2];k=z[d+36>>2];m=z[d+48>>2];j=z[d+60>>2];f=z[d+24>>2];n=z[d+40>>2];t=z[d+52>>2];y=z[d- -64>>2];o=z[b+8>>2];p=z[b>>2];g=z[b+4>>2];A=z[d+16>>2];B=z[d+32>>2];u=z[a+8>>2];q=z[d+8>>2];w=z[a+4>>2];r=z[d+4>>2];D=z[d>>2];E=C(D+z[a>>2]);z[d+96>>2]=C(E*e)+z[d+96>>2];w=C(r+w);z[d+100>>2]=C(w*e)+z[d+100>>2];F=C(q+u);z[d+104>>2]=C(F*e)+z[d+104>>2];z[d>>2]=D+z[c>>2];z[d+4>>2]=r+z[c+4>>2];z[d+8>>2]=q+z[c+8>>2];q=z[c+16>>2];r=z[c+20>>2];u=z[c+24>>2];z[d+24>>2]=f+C(C(C(n*q)+C(t*r))+C(y*u));z[d+20>>2]=l+C(C(C(k*q)+C(m*r))+C(j*u));z[d+16>>2]=A+C(C(C(B*q)+C(h*r))+C(i*u));f=C(f+C(C(C(p*n)+C(g*t))+C(o*y)));h=C(A+C(C(C(p*B)+C(g*h))+C(o*i)));g=C(l+C(C(C(p*k)+C(g*m))+C(o*j)));m=C(C(f*f)+C(C(h*h)+C(g*g)));b:{if(m==C(0)){o=g;p=f;break b}l=C(1e7);k=C(K(m));c:{if(!(k>C(1e7))){p=f;l=k;i=h;o=g;break c}p=C(0);i=C(0);o=C(0);if(!(m>C(0))){break c}i=f;f=C(C(1)/k);p=C(C(i*f)*C(1e7));i=C(C(h*f)*C(1e7));o=C(C(g*f)*C(1e7))}h=C(C(l*e)*C(.5));j=Q9(h);e=z[d+88>>2];f=z[d+84>>2];g=z[d+80>>2];k=z[d+92>>2];m=G9(h);h=i;j=C(j/l);i=C(h*j);l=C(o*j);j=C(p*j);n=C(C(k*m)+C(C(C(C(k*C(0))-C(g*i))-C(f*l))-C(e*j)));q=n;r=C(n*n);n=C(C(e*m)+C(C(C(i*f)+C(C(e*C(0))+C(k*j)))-C(g*l)));t=C(C(g*m)+C(C(C(l*e)+C(C(g*C(0))+C(k*i)))-C(f*j)));f=C(C(m*f)+C(C(C(j*g)+C(C(f*C(0))+C(k*l)))-C(e*i)));e=C(C(1)/C(K(C(r+C(C(n*n)+C(C(t*t)+C(f*f)))))));z[d+92>>2]=q*e;z[d+88>>2]=n*e;z[d+84>>2]=f*e;z[d+80>>2]=t*e}z[a+8>>2]=F;z[a+4>>2]=w;z[a>>2]=E;z[b+8>>2]=p;z[b+4>>2]=o;z[b>>2]=h}function v2(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=0,u=C(0);a:{f=w[a+64|0];if(!f){f=0;break a}g=z[e>>2];g=C(g*g);k=z[b+8>>2];l=z[b+4>>2];m=z[b>>2];n=z[c+8>>2];q=z[c+4>>2];r=z[c>>2];s=v[a+76>>2];p=1;b:{while(1){c:{e=B(i,48)+s|0;j=C(z[e+8>>2]-k);h=C(j*j);j=C(z[e>>2]-m);o=C(j*j);j=C(z[e+4>>2]-l);j=C(h+C(o+C(j*j)));h=C(z[e+24>>2]-n);o=C(h*h);h=C(z[e+16>>2]-r);u=C(h*h);h=C(z[e+20>>2]-q);h=C(o+C(u+C(h*h)));if(g>(j>2];v[e>>2]=v[b>>2];v[e+4>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;f=B(i,48);e=f+v[a+76>>2]|0;i=v[c+4>>2];v[e+16>>2]=v[c>>2];v[e+20>>2]=i;i=v[c+12>>2];v[e+24>>2]=v[c+8>>2];v[e+28>>2]=i;e=f+v[a+76>>2]|0;f=v[d+4>>2];v[e+32>>2]=v[d>>2];v[e+36>>2]=f;f=v[d+12>>2];v[e+40>>2]=v[d+8>>2];v[e+44>>2]=f;if(p){break b}f=w[a+64|0];break c}i=i+1|0;p=i>>>0>>0;if((f|0)!=(i|0)){continue}}break}d:{switch(f|0){case 0:case 1:break a;case 2:break d;default:break b}}e=v[a+76>>2];k=z[c+8>>2];g=C(z[e+24>>2]-k);i=v[b+4>>2];f=e;j=C(g*g);g=z[c>>2];l=C(z[e+16>>2]-g);h=C(l*l);l=z[c+4>>2];m=C(z[e+20>>2]-l);k=C(z[e+72>>2]-k);g=C(z[e- -64>>2]-g);n=C(g*g);g=C(z[e+68>>2]-l);e=B(C(j+C(h+C(m*m)))>C(C(k*k)+C(n+C(g*g))),48);f=f+e|0;v[f>>2]=v[b>>2];v[f+4>>2]=i;i=v[b+12>>2];v[f+8>>2]=v[b+8>>2];v[f+12>>2]=i;f=v[c+4>>2];b=e+v[a+76>>2]|0;v[b+16>>2]=v[c>>2];v[b+20>>2]=f;f=v[c+12>>2];v[b+24>>2]=v[c+8>>2];v[b+28>>2]=f;b=v[d+4>>2];a=e+v[a+76>>2]|0;v[a+32>>2]=v[d>>2];v[a+36>>2]=b;b=v[d+12>>2];v[a+40>>2]=v[d+8>>2];v[a+44>>2]=b}return}e=v[a+76>>2]+B(f,48)|0;f=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;e=v[c+4>>2];b=v[a+76>>2]+B(w[a+64|0],48)|0;v[b+16>>2]=v[c>>2];v[b+20>>2]=e;e=v[c+12>>2];v[b+24>>2]=v[c+8>>2];v[b+28>>2]=e;b=w[a+64|0];t[a+64|0]=b+1;a=v[a+76>>2]+B(b,48)|0;b=v[d+12>>2];v[a+40>>2]=v[d+8>>2];v[a+44>>2]=b;b=v[d+4>>2];v[a+32>>2]=v[d>>2];v[a+36>>2]=b}function Vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=0,r=C(0),s=C(0),u=0,x=0,y=0;d=C(C(1)/z[b+464>>2]);o=v[b+444>>2];a:{if(!c){if(t[v[b+476>>2]]&1){break a}o=v[o+16>>2];i=z[o+8>>2];c=v[b+228>>2];e=C(d*C(z[c+8>>2]-z[b+120>>2]));f=C(e+e);j=z[o>>2];e=C(d*C(z[c>>2]-z[b+112>>2]));h=C(e+e);e=C(d*C(z[c+4>>2]-z[b+116>>2]));g=C(e+e);k=z[o+4>>2];m=C(C(i*f)+C(C(j*h)+C(g*k)));l=z[o+12>>2];n=C(C(l*l)+C(-.5));e=C(C(i*m)+C(C(f*n)+C(l*C(C(j*g)-C(h*k)))));p=C(C(k*m)+C(C(g*n)+C(l*C(C(i*h)-C(f*j)))));f=C(C(j*m)+C(C(h*n)+C(l*C(C(k*f)-C(g*i)))));h=C(d*C(z[c+24>>2]-z[b+136>>2]));h=C(h+h);g=C(d*C(z[c+16>>2]-z[b+128>>2]));g=C(g+g);d=C(d*C(z[c+20>>2]-z[b+132>>2]));d=C(d+d);m=C(C(i*h)+C(C(j*g)+C(d*k)));r=C(C(i*m)+C(C(h*n)+C(l*C(C(j*d)-C(g*k)))));s=C(C(k*m)+C(C(d*n)+C(l*C(C(i*g)-C(h*j)))));i=C(C(j*m)+C(C(g*n)+C(l*C(C(k*h)-C(d*i)))));break a}u=c<<5;o=v[(o+u|0)+16>>2];q=v[b+456>>2]+B(c,80)|0;x=w[q+76|0];b:{if(!x){f=C(M);h=C(M);p=C(M);e=C(M);i=C(M);d=C(M);break b}y=v[b+168>>2]+(v[q+72>>2]<<2)|0;q=x-1|0;d=C(d*z[y+(q<<2)>>2]);c=(v[b+372>>2]+B(c,76)|0)+B(q,24)|0;b=v[b+240>>2]+u|0;e=C(C(d*z[c+20>>2])+z[b+24>>2]);i=C(e+e);e=C(C(d*z[c+16>>2])+z[b+20>>2]);e=C(e+e);p=C(C(d*z[c+12>>2])+z[b+16>>2]);p=C(p+p);f=C(C(d*z[c+8>>2])+z[b+8>>2]);h=C(f+f);f=C(C(d*z[c+4>>2])+z[b+4>>2]);f=C(f+f);d=C(C(d*z[c>>2])+z[b>>2]);d=C(d+d)}j=z[o+8>>2];k=z[o>>2];l=z[o+4>>2];m=C(C(j*i)+C(C(k*p)+C(e*l)));n=z[o+12>>2];g=C(C(n*n)+C(-.5));r=C(C(j*m)+C(C(i*g)+C(n*C(C(k*e)-C(p*l)))));s=C(C(l*m)+C(C(e*g)+C(n*C(C(j*p)-C(i*k)))));i=C(C(k*m)+C(C(p*g)+C(n*C(C(l*i)-C(e*j)))));m=C(C(j*h)+C(C(k*d)+C(f*l)));e=C(C(j*m)+C(C(h*g)+C(n*C(C(k*f)-C(d*l)))));p=C(C(l*m)+C(C(f*g)+C(n*C(C(j*d)-C(h*k)))));f=C(C(k*m)+C(C(d*g)+C(n*C(C(l*h)-C(f*j)))))}v[a+28>>2]=0;z[a+16>>2]=f;v[a+12>>2]=0;z[a+8>>2]=r;z[a+4>>2]=s;z[a>>2]=i;z[a+24>>2]=e;z[a+20>>2]=p}function AI(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;l=xa-16|0;xa=l;g=vr(c,288);v[g+24>>2]=0;v[g+16>>2]=0;v[g+20>>2]=0;v[g+28>>2]=0;v[g+32>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;v[g+36>>2]=0;v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+56>>2]=0;v[g+60>>2]=0;v[g+64>>2]=0;v[g+68>>2]=0;v[g+72>>2]=0;v[g+284>>2]=e;v[g+280>>2]=b;v[g+276>>2]=a;v[g+272>>2]=b;v[g+268>>2]=0;v[g>>2]=131052;m=v[f+4>>2];a:{if(!v[a+16>>2]){break a}h=v[a+12>>2];i=v[h>>2];if((i|0)==-1){j=v[a+20>>2];while(1){k=k+1|0;if((j|0)==(k|0)){break a}i=v[h+(k<<2)>>2];if((i|0)==-1){continue}break}}while(1){j=B(i,12);n=j+v[a+4>>2]|0;o=v[n+4>>2];h=(v[g+268>>2]<<3)+g|0;v[h+140>>2]=v[n>>2];v[h+144>>2]=o;h=v[(j+v[a+4>>2]|0)+8>>2];j=v[g+268>>2];n=j+1|0;v[g+268>>2]=n;v[((j<<2)+g|0)+76>>2]=h;if((n|0)==16){v[l+12>>2]=g;h=v[f+4>>2];b:{if(h>>>0>=(v[f+8>>2]&2147483647)>>>0){yI(f,l+12|0);break b}v[v[f>>2]+(h<<2)>>2]=g;v[f+4>>2]=h+1}v[g+20>>2]=d;v[g+24>>2]=1;if(d){Ba[v[v[d>>2]+16>>2]](d);v[g+16>>2]=v[v[g+20>>2]+16>>2]}g=vr(c,288);v[g+24>>2]=0;v[g+16>>2]=0;v[g+20>>2]=0;v[g+28>>2]=0;v[g+32>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;v[g+36>>2]=0;v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+56>>2]=0;v[g+60>>2]=0;v[g+64>>2]=0;v[g+68>>2]=0;v[g+72>>2]=0;v[g+284>>2]=e;v[g+280>>2]=b;v[g+276>>2]=a;v[g+272>>2]=b;v[g+268>>2]=0;v[g>>2]=131052}i=v[v[a+8>>2]+(i<<2)>>2];if((i|0)!=-1){continue}h=v[a+12>>2];j=v[a+20>>2];while(1){k=k+1|0;if((j|0)==(k|0)){break a}i=v[h+(k<<2)>>2];if((i|0)==-1){continue}break}continue}}a=v[f+4>>2];if(m>>>0>>0){while(1){a=v[v[f>>2]+(m<<2)>>2];Ba[v[v[a>>2]+20>>2]](a);a=v[f+4>>2];m=m+1|0;if(a>>>0>m>>>0){continue}break}}if(v[g+268>>2]){v[l+8>>2]=g;c:{if((v[f+8>>2]&2147483647)>>>0<=a>>>0){yI(f,l+8|0);break c}v[v[f>>2]+(a<<2)>>2]=g;v[f+4>>2]=a+1}v[g+20>>2]=d;v[g+24>>2]=1;if(d){Ba[v[v[d>>2]+16>>2]](d);v[g+16>>2]=v[v[g+20>>2]+16>>2]}Ba[v[v[g>>2]+20>>2]](g)}xa=l+16|0}function zz(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function ln(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?25589:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?25589:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function kn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?46031:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?46031:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function jn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45917:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45917:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function hn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?42245:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?42245:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function gn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41541:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41541:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function fn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?28767:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?28767:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function en(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?39311:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?39311:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function dn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36971:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36971:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function dQ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?47129:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?47129:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function cn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41391:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41391:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function cQ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?37683:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?37683:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function bn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?39419:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?39419:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function bQ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36573:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36573:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function an(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?27763:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?27763:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function aQ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?44393:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?44393:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function _m(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53101:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53101:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function Zm(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52793:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52793:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function Ym(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53423:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53423:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function XC(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?30445:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?30445:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function WC(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?31931:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?31931:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function Rs(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52491:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52491:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function Qs(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52957:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52957:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function Ps(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?54083:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?54083:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function Os(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52331:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52331:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function OJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?31157:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?31157:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function Ns(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52633:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52633:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function NJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?27313:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?27313:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function Ms(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53263:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53263:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function MJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36843:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36843:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function LJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36711:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36711:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function KJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?46887:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?46887:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function JJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?32891:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?32891:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function CK(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45371:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45371:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function BK(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45213:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45213:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function $m(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41231:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41231:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=H9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function vK(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=v[b+48>>2];a:{if(!(x[b+40>>1]&4096?w[b+8|0]&2:0)){f=g+32>>>5|0;break a}f=g+32>>>5|0;b:{if(f>>>0<=(v[a+952>>2]&2147483647)>>>0){c=v[a+948>>2];break b}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,f<<2,24422,17999,438)|0;d=v[a+948>>2];c:{if(!d){break c}H9(c,d,v[a+952>>2]<<2);if(v[a+952>>2]<0){break c}d=v[a+948>>2];if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}d=v[a+952>>2];I9((d<<2)+c|0,0,f-d<<2);v[a+952>>2]=f;v[a+948>>2]=c}c=(g>>>3&536870908)+c|0;d=v[c>>2];i=c,j=Uaa(-2,g)&d,v[i>>2]=j}d:{if((v[a+940>>2]&2147483647)>>>0>=f>>>0){c=v[a+936>>2];break d}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,f<<2,24422,17999,438)|0;d=v[a+936>>2];e:{if(!d){break e}H9(c,d,v[a+940>>2]<<2);if(v[a+940>>2]<0){break e}d=v[a+936>>2];if(!d){break e}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}d=v[a+940>>2];I9((d<<2)+c|0,0,f-d<<2);v[a+940>>2]=f;v[a+936>>2]=c}d=Uaa(-2,g);g=g>>>5|0;c=(g<<2)+c|0;v[c>>2]=d&v[c>>2];f:{if((v[a+976>>2]&2147483647)>>>0>=f>>>0){c=v[a+972>>2];break f}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,f<<2,24422,17999,438)|0;e=v[a+972>>2];g:{if(!e){break g}H9(c,e,v[a+976>>2]<<2);if(v[a+976>>2]<0){break g}e=v[a+972>>2];if(!e){break g}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,e)}e=v[a+976>>2];I9((e<<2)+c|0,0,f-e<<2);v[a+976>>2]=f;v[a+972>>2]=c}c=(g<<2)+c|0;v[c>>2]=d&v[c>>2];h:{if((v[a+988>>2]&2147483647)>>>0>=f>>>0){c=v[a+984>>2];break h}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,f<<2,24422,17999,438)|0;e=v[a+984>>2];i:{if(!e){break i}H9(c,e,v[a+988>>2]<<2);if(v[a+988>>2]<0){break i}e=v[a+984>>2];if(!e){break i}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,e)}e=v[a+988>>2];I9((e<<2)+c|0,0,f-e<<2);v[a+988>>2]=f;v[a+984>>2]=c}c=(g<<2)+c|0;v[c>>2]=d&v[c>>2];c=v[b+48>>2];f=v[a+340>>2]+(c>>>3&536870908)|0;g=v[f>>2];i=f,j=Uaa(-2,c)&g,v[i>>2]=j;c=v[a+328>>2];v[a+328>>2]=c+1;v[v[a+324>>2]+(c<<2)>>2]=b}function LD(a,b,c,d,e){var f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,u=0,w=0,x=0,y=0;l=xa-1056|0;xa=l;t[l+1040|0]=1;v[l+1048>>2]=256;v[l+1052>>2]=256;v[l+1044>>2]=l+16;w=v[c+8>>2];v[l+16>>2]=w;o=1;a:while(1){o=o-1|0;g=v[v[l+1044>>2]+(o<<2)>>2];i=z[g>>2];h=z[g+12>>2];f=C(i+h);i=C(h-i);j=z[g+8>>2];k=z[g+20>>2];h=C(j+k);n=z[g+4>>2];m=z[g+16>>2];p=C(n+m);j=C(k-j);k=C(m-n);while(1){b:{h=C(z[d+8>>2]-C(h*C(.5)));j=C(j*C(.5));n=h>2]-C(f*C(.5)));i=C(i*C(.5));m=f>2]-C(p*C(.5)));k=C(k*C(.5));r=k>p?p:k;c:{q=h;h=C(-j);h=C(q-(h>2]>=C(C(h*h)+C(q+C(f*f))))){break d}g=v[g+24>>2];s=g>>>1|0;if(!(g&1)){break c}u=s&15;if(!u){break d}s=v[c>>2]+(g>>>3&536870908)|0;if((u|0)==1){if(Ba[v[v[e>>2]>>2]](e,l+12|0,(v[s>>2]<<3)+a|0)|0){break d}break b}while(1){x=v[s>>2];g=B(x,24)+b|0;i=z[g+8>>2];h=z[g+20>>2];f=C(z[d+8>>2]-C(C(i+h)*C(.5)));i=C(C(h-i)*C(.5));h=f>2];k=z[g+12>>2];p=C(z[d>>2]-C(C(j+k)*C(.5)));j=C(C(k-j)*C(.5));k=j>p?p:j;m=z[g+4>>2];r=z[g+16>>2];n=C(z[d+4>>2]-C(C(m+r)*C(.5)));m=C(C(r-m)*C(.5));r=m>n?n:m;q=f;f=C(-i);f=C(q-(f>2]>=C(h+C(q+C(f*f)))){if(!(Ba[v[v[e>>2]>>2]](e,l+12|0,(x<<3)+a|0)|0)){break b}}s=s+4|0;u=u-1|0;if(u){continue}break}}y=!o;if(o){continue a}break b}g=B(s,28)+w|0;v[v[l+1044>>2]+(o<<2)>>2]=g+28;o=o+1|0;if((o|0)==(v[l+1052>>2]&2147483647)){ND(l+16|0,o<<1)}i=z[g>>2];h=z[g+12>>2];f=C(i+h);i=C(h-i);j=z[g+8>>2];k=z[g+20>>2];h=C(j+k);n=z[g+4>>2];m=z[g+16>>2];p=C(n+m);j=C(k-j);k=C(m-n);continue}break}break}a=v[l+1052>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[l+1044>>2];if((a|0)==(l+16|0)|!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=l+1056|0;return y}function $i(a,b){var c=C(0),d=0,e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0);d=xa+-64|0;xa=d;Ba[v[v[a>>2]+76>>2]](d,a);j=z[b+8>>2];l=z[b+4>>2];m=z[b+12>>2];n=z[b>>2];g=z[d+8>>2];c=z[b+24>>2];o=C(c+c);h=z[d>>2];c=z[b+16>>2];p=C(c+c);c=z[b+20>>2];q=C(c+c);i=z[d+4>>2];s=C(C(g*o)+C(C(h*p)+C(q*i)));c=z[d+12>>2];t=C(C(c*c)+C(-.5));u=C(z[d+24>>2]+C(C(g*s)+C(C(o*t)+C(c*C(C(h*q)-C(p*i))))));z[d+56>>2]=u;x=C(z[d+20>>2]+C(C(i*s)+C(C(q*t)+C(c*C(C(g*p)-C(o*h))))));z[d+52>>2]=x;y=C(C(C(C(c*m)-C(n*h))-C(i*l))-C(g*j));z[d+44>>2]=y;A=C(C(C(h*l)+C(C(c*j)+C(g*m)))-C(n*i));z[d+40>>2]=A;B=C(C(C(g*n)+C(C(c*l)+C(i*m)))-C(j*h));z[d+36>>2]=B;j=C(C(C(i*j)+C(C(c*n)+C(h*m)))-C(l*g));z[d+32>>2]=j;c=C(z[d+16>>2]+C(C(h*s)+C(C(p*t)+C(c*C(C(i*o)-C(q*g))))));z[d+48>>2]=c;z[a+280>>2]=u;z[a+276>>2]=x;z[a+272>>2]=c;z[a+268>>2]=y;z[a+264>>2]=A;z[a+260>>2]=B;z[a+256>>2]=j;f=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:if(w[v[f>>2]+4785|0]){break b}break;case 1:break b;default:break c}}AG(a- -64|0,d+32|0);break a}e=v[a+316>>2];if(!(e&1048576)){v[a+316>>2]=e|2097152}Xu(v[a+48>>2],f);v[a+316>>2]=v[a+316>>2]|1048576}d:{e:{f:{g:{k=v[a+52>>2];switch((k>>>30|0)-2|0){case 1:break e;case 0:break g;default:break f}}if(w[v[f>>2]+4785|0]){break e}}DG(a- -64|0,b);break d}e=v[a+56>>2];if(!e){e=Pu(v[a+48>>2],k>>>24&15);v[a+56>>2]=e}z[e+144>>2]=z[b>>2];z[e+148>>2]=z[b+4>>2];z[e+152>>2]=z[b+8>>2];z[e+156>>2]=z[b+12>>2];z[e+160>>2]=z[b+16>>2];z[e+164>>2]=z[b+20>>2];z[e+168>>2]=z[b+24>>2];Xu(v[a+48>>2],f);v[a+316>>2]=v[a+316>>2]|1024}b=0;f=v[a+16>>2];h:{if(!f){e=0;f=0;break h}e=v[f+40>>2];f=v[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(w[r|0]){continue}break}k=v[r+4>>2];if(!k){break i}Fg(k,a);continue}break}xa=d- -64|0}function ML(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=C(0),h=0,i=0,k=0,m=0,n=0,o=0,r=0,s=0,t=C(0),u=C(0),w=0,y=0,A=0,D=0;i=v[a+88>>2];s=v[i+12>>2];h=v[i>>2];if(h){g=z[b+8>>2];t=z[b+4>>2];u=z[b>>2];while(1){a=B(f,40)+s|0;if(v[a+28>>2]){b=v[a+4>>2]<<1;b=(p(C((l(2,(b|0)<0?b&2147483646:b^-1),q())-u)),j(2));v[a+4>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=v[a+24>>2]<<1;b=(p(C((l(2,(b|0)<0?b&2147483646:b^-1),q())-g)),j(2));v[a+24>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=v[a+20>>2]<<1;b=(p(C((l(2,(b|0)<0?b&2147483646:b^-1),q())-t)),j(2));v[a+20>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=v[a+16>>2]<<1;b=(p(C((l(2,(b|0)<0?b&2147483646:b^-1),q())-u)),j(2));v[a+16>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=v[a+12>>2]<<1;b=(p(C((l(2,(b|0)<0?b&2147483646:b^-1),q())-g)),j(2));v[a+12>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=a;a=v[a+8>>2]<<1;a=(p(C((l(2,(a|0)<0?a&2147483646:a^-1),q())-t)),j(2));v[b+8>>2]=((a|0)<0?a^-1:a|-2147483648)>>>1}f=f+1|0;if((h|0)!=(f|0)){continue}break}}w=v[i+28>>2];if(w){A=v[i+24>>2];h=0;while(1){f=B(h,12)+A|0;b=x[f+4>>1];if(b){e=v[f>>2];a=B(e,24)+c|0;g=z[(e<<2)+d>>2];e=(p(C(z[a+12>>2]+g)),j(2));k=(e|0)<0?e^-1:e|-2147483648;e=(p(C(z[a+8>>2]-g)),j(2));m=(e|0)<0?e^-1:e|-2147483648;e=(p(C(z[a+4>>2]-g)),j(2));n=(e|0)<0?e^-1:e|-2147483648;e=(p(C(z[a>>2]-g)),j(2));o=(e|0)<0?e^-1:e|-2147483648;e=(p(C(z[a+20>>2]+g)),j(2));r=(e|0)<0?e^-1:e|-2147483648;a=(p(C(z[a+16>>2]+g)),j(2));a=(a|0)<0?a^-1:a|-2147483648;e=f+8|0;e=(b|0)!=1?v[(B(b,12)+i|0)+92>>2]+(v[e>>2]<<2)|0:e;k=k>>>1|0;m=m>>>1|0;n=n>>>1|0;o=o>>>1|0;r=r>>>1|0;D=a>>>1|0;b=b>>>0>1?b:1;f=0;while(1){a=(f<<2)+e|0;y=v[(B(x[a+2>>1],40)+s|0)+28>>2];a=v[y+76>>2]+(x[a>>1]<<3)|0;a=v[(v[a+4>>2]&1?96:100)+y>>2]+B(v[a>>2],24)|0;v[a+20>>2]=r;v[a+16>>2]=D;v[a+12>>2]=k;v[a+8>>2]=m;v[a+4>>2]=n;v[a>>2]=o;f=f+1|0;if((b|0)!=(f|0)){continue}break}}h=h+1|0;if((w|0)!=(h|0)){continue}break}}}function $x(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=C(0),o=0,p=0,q=0,r=0,s=0,t=0,u=0,x=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0);m=v[a+356>>2];u=v[a+332>>2];p=v[a+344>>2];q=p+B(b,80)|0;i=w[q+76|0];if(i){j=v[a+272>>2]+B(b,76)|0;k=v[q+72>>2];while(1){l=k+B(h+k|0,m)|0;e=(h<<5)+d|0;f=0;while(1){g=j+B(f,24)|0;z[(f+l<<2)+c>>2]=C(C(z[g+20>>2]*z[e+8>>2])+C(C(z[g+12>>2]*z[e>>2])+C(z[g+16>>2]*z[e+4>>2])))+C(C(z[g+8>>2]*z[e+24>>2])+C(C(z[g>>2]*z[e+16>>2])+C(z[g+4>>2]*z[e+20>>2])));f=f+1|0;if((i|0)!=(f|0)){continue}break}h=h+1|0;if((i|0)!=(h|0)){continue}break}}h=(b<<5)+u|0;e=v[h+24>>2];if(e){g=h+24|0;x=B(b,80)+p|0;while(1){f=0;a:{if(!i){i=0;b=e;break a}while(1){e=v[a+340>>2]+B(b,160)|0;y=z[e+128>>2];n=z[e+120>>2];A=z[e+124>>2];e=(f<<5)+d|0;v[e+28>>2]=0;v[e+12>>2]=0;D=z[e+4>>2];E=z[e>>2];z[e+24>>2]=C(C(n*D)-C(A*E))+z[e+24>>2];F=n;n=z[e+8>>2];z[e+20>>2]=z[e+20>>2]+C(C(y*E)-C(F*n));z[e+16>>2]=C(C(A*n)-C(D*y))+z[e+16>>2];f=f+1|0;i=w[q+76|0];if(f>>>0>>0){continue}break}p=v[a+344>>2];b=v[g>>2]}j=B(b,80)+p|0;k=w[j+76|0];b:{if(!k|!i){break b}l=v[a+272>>2]+B(b,76)|0;r=v[j+72>>2];s=v[x+72>>2];g=0;while(1){t=g+r|0;e=l+B(g,24)|0;h=0;while(1){f=(h<<5)+d|0;z[(t+B(h+s|0,m)<<2)+c>>2]=C(C(z[e+20>>2]*z[f+8>>2])+C(C(z[e+12>>2]*z[f>>2])+C(z[e+16>>2]*z[f+4>>2])))+C(C(z[e+8>>2]*z[f+24>>2])+C(C(z[e>>2]*z[f+16>>2])+C(z[e+4>>2]*z[f+20>>2])));h=h+1|0;if((i|0)!=(h|0)){continue}break}g=g+1|0;if((k|0)!=(g|0)){continue}break}if(!k){break b}r=i&254;s=i&1;t=v[j+72>>2];f=v[x+72>>2];h=0;while(1){j=h+t|0;l=B(j,m);e=0;g=0;if((i|0)!=1){while(1){o=e+f|0;z[(o+l<<2)+c>>2]=z[(j+B(m,o)<<2)+c>>2];o=f+(e|1)|0;z[(o+l<<2)+c>>2]=z[(j+B(m,o)<<2)+c>>2];e=e+2|0;g=g+2|0;if((r|0)!=(g|0)){continue}break}}if(s){e=e+f|0;z[(e+l<<2)+c>>2]=z[(j+B(e,m)<<2)+c>>2]}h=h+1|0;if((k|0)!=(h|0)){continue}break}}e=(b<<5)+u|0;g=e+24|0;e=v[e+24>>2];if(e){continue}break}}return b}function ZG(a,b,c,d){var e=0,f=0,g=C(0);f=xa-16|0;xa=f;e=v[a+176>>2];a:{b:{if(e){z[e>>2]=z[c>>2];z[e+4>>2]=z[c+4>>2];z[e+8>>2]=z[c+8>>2];z[e+12>>2]=z[c+12>>2];z[e+16>>2]=z[c+16>>2];z[e+20>>2]=z[c+20>>2];g=z[c+24>>2];t[e+28|0]=1;z[e+24>>2]=g;b=v[a>>2];if(!b){z[a+156>>2]=d;break a}u[b+148>>1]=x[b+148>>1]&63483|4;break b}e=v[b+288>>2];if(!e){FG(b);e=v[b+288>>2]}v[b+288>>2]=v[e>>2];v[b+280>>2]=v[b+280>>2]+1;t[e+24|0]=0;t[e+25|0]=0;t[e+26|0]=0;t[e+27|0]=0;t[e+28|0]=0;t[e+29|0]=0;t[e+30|0]=0;t[e+31|0]=0;t[e+56|0]=0;t[e+57|0]=0;t[e+58|0]=0;t[e+59|0]=0;t[e+60|0]=0;t[e+61|0]=0;t[e+62|0]=0;t[e+63|0]=0;t[e+48|0]=0;t[e+49|0]=0;t[e+50|0]=0;t[e+51|0]=0;t[e+52|0]=0;t[e+53|0]=0;t[e+54|0]=0;t[e+55|0]=0;t[e+40|0]=0;t[e+41|0]=0;t[e+42|0]=0;t[e+43|0]=0;t[e+44|0]=0;t[e+45|0]=0;t[e+46|0]=0;t[e+47|0]=0;t[e+32|0]=0;t[e+33|0]=0;t[e+34|0]=0;t[e+35|0]=0;t[e+36|0]=0;t[e+37|0]=0;t[e+38|0]=0;t[e+39|0]=0;t[e+16|0]=0;t[e+17|0]=0;t[e+18|0]=0;t[e+19|0]=0;t[e+20|0]=0;t[e+21|0]=0;t[e+22|0]=0;t[e+23|0]=0;t[e+8|0]=0;t[e+9|0]=0;t[e+10|0]=0;t[e+11|0]=0;t[e+12|0]=0;t[e+13|0]=0;t[e+14|0]=0;t[e+15|0]=0;t[e|0]=0;t[e+1|0]=0;t[e+2|0]=0;t[e+3|0]=0;t[e+4|0]=0;t[e+5|0]=0;t[e+6|0]=0;t[e+7|0]=0;t[e+31|0]=1;z[e+48>>2]=z[a+120>>2];z[e+52>>2]=z[a+124>>2];z[e+32>>2]=z[a+128>>2];z[e+36>>2]=z[a+132>>2];z[e+40>>2]=z[a+136>>2];z[e+44>>2]=z[a+140>>2];z[e+56>>2]=z[a+112>>2];z[e+60>>2]=z[a+116>>2];v[a+136>>2]=0;v[a+140>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+176>>2]=e;v[a+112>>2]=2139095039;v[a+116>>2]=2139095039;z[e>>2]=z[c>>2];z[e+4>>2]=z[c+4>>2];z[e+8>>2]=z[c+8>>2];z[e+12>>2]=z[c+12>>2];z[e+16>>2]=z[c+16>>2];z[e+20>>2]=z[c+20>>2];g=z[c+24>>2];t[e+28|0]=1;z[e+24>>2]=g}z[a+156>>2]=d;a=v[a>>2];if(!a){break a}b=v[v[a+40>>2]+1012>>2];c=w[v[a+44>>2]+9|0];v[f+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(c|0)==2,f+8|0);nH(a);kH(a,d,1)}xa=f+16|0}function $G(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=xa-16|0;xa=g;b=v[a+44>>2];if(w[b+9|0]!=2){u[a+92>>1]=x[a+92>>1]&65534;e=xa-16|0;xa=e;b=v[a+40>>2];a:{if(!v[b+2344>>2]){break a}c=x[a+148>>1];if(c&64){t[b+2281|0]=0;c=c&65471}u[a+148>>1]=c|128;if(c&32){break a}v[e+8>>2]=v[a+44>>2];b=qh(b+2240|0,e+8|0,e+15|0);if(!w[e+15|0]){v[b>>2]=v[e+8>>2]}u[a+148>>1]=x[a+148>>1]|32}xa=e+16|0;b=v[a+44>>2]}b:{if(!(w[b+44|0]&16)){break b}b=v[a+40>>2];v[g+8>>2]=a;b=qh(b+4632|0,g+8|0,g+15|0);if(w[g+15|0]){break b}v[b>>2]=v[g+8>>2]}c:{if(w[a+149|0]&16|((w[v[a+44>>2]+44|0]&3)==3|y[a+152>>2]>4294967293)){break c}c=v[a+32>>2];if(!c){break c}while(1){ZR(c);c=v[c>>2];if(c){continue}break}}e=v[a+28>>2];if(e){c=0;while(1){b=c;c=b+1|0;f=v[v[a+20>>2]+(b<<2)>>2];b=w[f+20|0];d:{if(!b|(b|0)==2|w[f+21|0]&32){break d}if(!XP(f)|w[f+20|0]>2){break d}_O(v[a+40>>2],f)}if((c|0)!=(e|0)){continue}break}}b=v[a+44>>2];e:{if(!(w[b+44|0]&32)){break e}f:{if(w[b+9|0]==2){h=v[a+144>>2];if(h>>>0>4294967167){break e}e=h>>>7|0;f=e+32>>>5|0;d=v[a+40>>2];if(f>>>0<=(v[d+4740>>2]&2147483647)>>>0){c=v[d+4736>>2];break f}a=v[37696]+12|0;c=Ba[v[v[a>>2]+8>>2]](a,f<<2,24422,17999,438)|0;a=v[d+4736>>2];g:{if(!a){break g}H9(c,a,v[d+4740>>2]<<2);if(v[d+4740>>2]<0){break g}b=v[d+4736>>2];if(!b){break g}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}a=v[d+4740>>2];I9((a<<2)+c|0,0,f-a<<2);v[d+4740>>2]=f;v[d+4736>>2]=c;break f}h=v[a+144>>2];e=h>>>7|0;f=e+32>>>5|0;d=v[a+40>>2];if(f>>>0<=(v[d+4728>>2]&2147483647)>>>0){c=v[d+4724>>2];break f}a=v[37696]+12|0;c=Ba[v[v[a>>2]+8>>2]](a,f<<2,24422,17999,438)|0;a=v[d+4724>>2];h:{if(!a){break h}H9(c,a,v[d+4728>>2]<<2);if(v[d+4728>>2]<0){break h}b=v[d+4724>>2];if(!b){break h}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}a=v[d+4728>>2];I9((a<<2)+c|0,0,f-a<<2);v[d+4728>>2]=f;v[d+4724>>2]=c}a=(h>>>10&4194300)+c|0;v[a>>2]=v[a>>2]|1<>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;hI(a+176|0,f,h+12|0);v[h>>2]=0;v[h+4>>2]=0;e=a+196|0;if(f>>>0>(v[e+8>>2]&2147483647)>>>0){a:{if(!f){break a}d=f<<3;if(!d){break a}b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?47249:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,c,16608,553)|0}b=v[e>>2];d=v[e+4>>2];if((d|0)>0){g=(d<<3)+c|0;d=c;while(1){i=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=i;b=b+8|0;d=d+8|0;if(g>>>0>d>>>0){continue}break}b=v[e>>2]}if(!(!b|v[e+8>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[e+8>>2]=f;v[e>>2]=c}b=v[e+4>>2];if((b|0)<(f|0)){c=v[e>>2];d=c+(f<<3)|0;c=c+(b<<3)|0;while(1){b=v[h+4>>2];v[c>>2]=v[h>>2];v[c+4>>2]=b;c=c+8|0;if(d>>>0>c>>>0){continue}break}}v[e+4>>2]=f;g=v[a+192>>2];if(f>>>0>(v[g+12>>2]&2147483647)>>>0){b=0;b:{if(!f){break b}c=f<<2;if(!c){break b}b=v[g>>2];b=Ba[v[v[b>>2]+8>>2]](b,c,16608,553)|0}d=v[g+4>>2];c=v[g+8>>2];if((c|0)>0){i=(c<<2)+b|0;e=d;c=b;while(1){z[c>>2]=z[e>>2];e=e+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}if(!(!d|v[g+12>>2]<0)){c=v[g>>2];Ba[v[v[c>>2]+12>>2]](c,d)}v[g+12>>2]=f;v[g+4>>2]=b}v[g+8>>2]=f;b=j+32>>>5|0;if(b>>>0>(v[a+140>>2]&2147483647)>>>0){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b<<2,24422,17999,438)|0;d=v[a+136>>2];c:{if(!d){break c}H9(c,d,v[a+140>>2]<<2);if(v[a+140>>2]<0){break c}d=v[a+136>>2];if(!d){break c}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[a+140>>2];I9(c+(d<<2)|0,0,b-d<<2);v[a+140>>2]=b;v[a+136>>2]=c}if(b>>>0>(v[a+152>>2]&2147483647)>>>0){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b<<2,24422,17999,438)|0;d=v[a+148>>2];d:{if(!d){break d}H9(c,d,v[a+152>>2]<<2);if(v[a+152>>2]<0){break d}d=v[a+148>>2];if(!d){break d}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[a+152>>2];I9(c+(d<<2)|0,0,b-d<<2);v[a+152>>2]=b;v[a+148>>2]=c}xa=h+16|0}function b2(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=0,N=C(0),O=C(0),P=C(0);t=xa;M=t;L=w[c+18|0];t=(t-(L<<4)|0)-16|0;xa=t;Ba[v[v[d>>2]+16>>2]](d,x[c+16>>1]+v[b+32>>2]|0,L,v[b+28>>2],t);d=w[c+18|0];if(d){N=C(z[a+80>>2]+z[h>>2]);b=(t+(d<<4)|0)-16|0;G=z[b+8>>2];H=z[b+4>>2];I=z[b>>2];b=0;while(1){j=I;h=t+(b<<4)|0;I=z[h>>2];u=C(j-I);l=z[i+4>>2];o=z[i>>2];j=H;H=z[h+4>>2];y=C(j-H);j=C(C(u*l)-C(o*y));q=z[a+56>>2];p=z[i+8>>2];k=G;G=z[h+8>>2];A=C(k-G);m=C(C(y*p)-C(l*A));D=z[a+48>>2];k=C(C(A*o)-C(p*u));J=z[a+52>>2];E=C(C(j*q)+C(C(m*D)+C(k*J)));F=C(C(j*G)+C(C(m*I)+C(H*k)));n=z[a+72>>2];r=z[a+64>>2];s=z[a+68>>2];a:{if(C(C(E-F)*C(C(C(j*n)+C(C(m*r)+C(k*s)))-F))>C(0)){break a}K=j;j=C(n-q);n=m;m=C(r-D);r=k;k=C(s-J);n=C(C(K*j)+C(C(n*m)+C(r*k)));if(n==C(0)){break a}r=C(C(o*k)-C(m*l));K=q;q=C(C(F-E)/n);F=C(K+C(j*q));E=C(F-G);n=C(C(l*j)-C(k*p));D=C(D+C(m*q));s=C(D-I);j=C(C(p*m)-C(j*o));m=C(J+C(k*q));k=C(m-H);j=C(C(C(r*E)+C(C(n*s)+C(j*k)))/C(C(r*A)+C(C(n*u)+C(y*j))));if(j>C(1.0049999952316284)|j>2];q=z[e>>2];J=z[e+4>>2];E=z[e+24>>2];n=z[e+16>>2];r=z[e+20>>2];l=z[e+40>>2];o=z[e+56>>2];p=z[e+32>>2];s=z[e+48>>2];O=z[e+36>>2];P=z[e+52>>2];d=B(v[g>>2],48)+f|0;v[d+12>>2]=0;K=l;l=C(F-o);o=C(D-s);s=C(p*o);p=C(m-P);z[d+8>>2]=C(K*l)+C(s+C(O*p));z[d+4>>2]=C(E*l)+C(C(n*o)+C(p*r));z[d>>2]=C(k*l)+C(C(q*o)+C(p*J));d=B(v[g>>2],48)+f|0;z[d+16>>2]=D-u;v[d+28>>2]=0;z[d+24>>2]=F-A;z[d+20>>2]=m-j;l=z[i+8>>2];h=v[i+4>>2];L=v[i>>2];d=v[g>>2];v[g>>2]=d+1;d=B(d,48)+f|0;v[d+32>>2]=L;v[d+36>>2]=h;z[d+44>>2]=y;z[d+40>>2]=l;d=w[c+18|0]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}xa=M}function _5(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0);c=xa-96|0;xa=c;e=v[b+76>>2];Ba[v[v[e>>2]+28>>2]](e,c+76|0,c+72|0);Y4(c+40|0,v[c+76>>2]);Y4(c+8|0,v[c+72>>2]);e=v[c+76>>2];f=C(0);a:{if(!e){break a}f=C(0);if(x[e+4>>1]==6){break a}o=c+80|0;Ba[v[v[e>>2]+156>>2]](o,e);k=z[c+88>>2];M=z[c+84>>2];N=z[c+80>>2];Ba[v[v[e>>2]+164>>2]](o,e);E=z[c+88>>2];F=z[c+84>>2];f=z[c+80>>2]}e=v[c+72>>2];g=C(0);b:{if(!e){break b}g=C(0);if(x[e+4>>1]==6){break b}o=c+80|0;Ba[v[v[e>>2]+156>>2]](o,e);h=z[c+88>>2];O=z[c+84>>2];P=z[c+80>>2];Ba[v[v[e>>2]+164>>2]](o,e);G=z[c+88>>2];H=z[c+80>>2];g=z[c+84>>2]}l=z[c+48>>2];i=z[b+44>>2];m=C(i+i);i=z[c+40>>2];j=z[b+36>>2];p=C(j+j);j=z[c+44>>2];d=z[b+40>>2];q=C(d+d);A=C(C(l*m)+C(C(i*p)+C(j*q)));r=z[c+16>>2];d=z[b+72>>2];s=C(d+d);t=z[c+8>>2];d=z[b- -64>>2];u=C(d+d);w=z[c+12>>2];d=z[b+68>>2];y=C(d+d);B=C(C(r*s)+C(C(t*u)+C(w*y)));d=z[c+52>>2];n=C(C(d*d)+C(-.5));I=C(C(j*A)+C(C(q*n)+C(d*C(C(l*p)-C(m*i)))));J=C(C(i*A)+C(C(p*n)+C(d*C(C(j*m)-C(q*l)))));Q=h;h=z[c+20>>2];D=C(C(h*h)+C(-.5));K=C(C(w*B)+C(C(y*D)+C(h*C(C(r*u)-C(s*t)))));L=C(C(t*B)+C(C(u*D)+C(h*C(C(w*s)-C(y*r)))));k=C(C(C(C(f*I)-C(J*F))+C(C(Q-C(C(H*K)-C(L*g)))-k))-z[c- -64>>2]);k=C(k+k);m=C(C(l*A)+C(C(m*n)+C(d*C(C(i*q)-C(p*j)))));h=C(C(r*B)+C(C(s*D)+C(h*C(C(t*y)-C(u*w)))));g=C(C(C(C(F*m)-C(I*E))+C(C(P-C(C(g*h)-C(K*G)))-N))-z[c+56>>2]);g=C(g+g);f=C(C(C(C(E*J)-C(m*f))+C(C(O-C(C(G*L)-C(h*H)))-M))-z[c+60>>2]);f=C(f+f);h=C(C(l*k)+C(C(i*g)+C(j*f)));z[a+8>>2]=C(l*h)+C(C(k*n)-C(d*C(C(i*f)-C(g*j))));z[a+4>>2]=C(j*h)+C(C(f*n)-C(d*C(C(l*g)-C(k*i))));z[a>>2]=C(i*h)+C(C(g*n)-C(d*C(C(j*k)-C(f*l))));xa=c+96|0}function aH(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;f=xa-16|0;xa=f;e=v[a+28>>2];if(e){while(1){b=c;c=b+1|0;d=v[v[a+20>>2]+(b<<2)>>2];b=w[d+20|0];a:{if(!b|(b|0)==2|!(w[d+21|0]&32)){break a}b=0;b:{c:{switch(w[d+20|0]){case 0:b=VR(d-4|0);break b;case 1:b=rS(d-4|0);break b;case 2:b=1;break b;case 4:b=NH(d);break b;case 5:break c;default:break b}}t[d+21|0]=w[d+21|0]&223;b=1}if(!b|w[d+20|0]>2){break a}$O(v[a+40>>2],d)}if((c|0)!=(e|0)){continue}break}}c=v[a+44>>2];d:{if(w[a+148|0]&8){break d}v[c+104>>2]=0;v[c+96>>2]=0;v[c+100>>2]=0;v[c+88>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;b=v[c+176>>2];if(t[v[a+100>>2]+28|0]>=0){d=w[c+173|0];e:{if(!b|w[v[c+176>>2]+31|0]==1){break e}b=v[c+176>>2];if(!b){break e}v[b+48>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+56>>2]=0;v[b+40>>2]=0;v[b+24>>2]=0}if(!d){t[a+150|0]=1;break d}t[a+150|0]=0;break d}f:{if(!b|w[v[c+176>>2]+31|0]==1){break f}b=v[c+176>>2];if(!b){break f}v[b+48>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+56>>2]=0;v[b+40>>2]=0}t[a+150|0]=w[a+150|0]&251}if(w[v[a+44>>2]+9|0]!=2){d=xa-16|0;xa=d;b=x[a+148>>1];e=v[a+40>>2];if(v[e+2344>>2]){if(b&128){t[e+2280|0]=0;b=b&65407}b=b|64;u[a+148>>1]=b}if(!(b&16)){v[d+8>>2]=v[a+44>>2];b=qh(e+2200|0,d+8|0,d+15|0);if(!w[d+15|0]){v[b>>2]=v[d+8>>2]}u[a+148>>1]=x[a+148>>1]|16}xa=d+16|0}if(w[c+44|0]&16){b=v[a+40>>2];v[f+12>>2]=a;Og(b+4632|0,f+12|0)}c=v[a+32>>2];if(c){while(1){aS(c);c=v[c>>2];if(c){continue}break}}b=v[a+44>>2];g:{if(!(w[b+44|0]&32)){break g}h:{if(w[b+9|0]==2){c=v[a+144>>2];if(c>>>0>4294967167){break g}b=c>>>7|0;a=v[a+40>>2];if(b>>>0>=v[a+4740>>2]<<5>>>0){break g}a=a+4736|0;break h}c=v[a+144>>2];b=c>>>7|0;a=v[a+40>>2];if(b>>>0>=v[a+4728>>2]<<5>>>0){break g}a=a+4724|0}a=v[a>>2]+(c>>>10&4194300)|0;c=v[a>>2];g=a,h=Uaa(-2,b)&c,v[g>>2]=h}xa=f+16|0}function kI(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=C(0),p=0;if((Taa(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=C(z[a+24>>2]*C(b>>>0));a:{if(o=C(0)){f=~~o>>>0;break a}f=0}l=v[a+16>>2];j=v[a+28>>2];d=b+f<<2;d=(0-d&12)+d|0;h=d+(f<<3)|0;if(h){c=v[37696]+12|0;e=Ba[v[v[c>>2]+8>>2]](c,h,24422,17301,372)|0}else{e=c}c=b<<2;i=I9(e,255,c);k=i+d|0;h=c+i|0;b:{if((j|0)==-1){if(!v[a+36>>2]){break b}m=b-1|0;d=0;while(1){j=d<<3;c=j+v[a+4>>2]|0;e=v[c+4>>2]<<16|x[c>>1];e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=((m&(e>>>16^e))<<2)+i|0;v[(d<<2)+h>>2]=v[e>>2];v[e>>2]=d;e=v[c+4>>2];j=j+k|0;v[j>>2]=v[c>>2];v[j+4>>2]=e;d=d+1|0;if(d>>>0>2]){continue}break}break b}j=H9(h,v[a+8>>2],v[a+16>>2]<<2);c=v[a+20>>2];if(!c){break b}e=b-1|0;while(1){d=v[v[a+12>>2]+(m<<2)>>2];if((d|0)!=-1){while(1){p=d<<2;n=d<<3;c=n+v[a+4>>2]|0;g=v[c+4>>2]<<16|x[c>>1];g=(g<<15^-1)+g|0;g=B(g>>>10^g,9);g=g>>>6^g;g=(g<<11^-1)+g|0;g=((e&(g>>>16^g))<<2)+i|0;v[p+j>>2]=v[g>>2];v[g>>2]=d;d=k+n|0;n=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=n;d=v[p+v[a+8>>2]>>2];if((d|0)!=-1){continue}break}c=v[a+20>>2]}m=m+1|0;if(m>>>0>>0){continue}break}}d=v[a>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+20>>2]=b;v[a+12>>2]=i;v[a>>2]=i;v[a+8>>2]=h;v[a+16>>2]=f;v[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;v[(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;v[(d<<2)+h>>2]=c;f=(c<<2)+h|0;c=d+2|0;v[f>>2]=c;f=(c<<2)+h|0;c=d+3|0;v[f>>2]=c;f=(c<<2)+h|0;c=d+4|0;v[f>>2]=c;f=(c<<2)+h|0;c=d+5|0;v[f>>2]=c;f=(c<<2)+h|0;c=d+6|0;v[f>>2]=c;f=(c<<2)+h|0;c=d+7|0;v[f>>2]=c;d=d+8|0;v[(c<<2)+h>>2]=d;if((b|0)!=(d|0)){continue}break}}v[(b<<2)+h>>2]=v[a+28>>2];v[a+28>>2]=l}function IX(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);d=z[c+4>>2];k=C(d+d);h=z[c+8>>2];i=C(k*h);l=z[c>>2];e=C(l+l);o=z[c+12>>2];f=C(e*o);g=C(i+f);z[a+28>>2]=g;j=C(e*h);n=C(k*o);p=C(j-n);z[a+24>>2]=p;i=C(i-f);z[a+20>>2]=i;A=C(e*d);r=C(h+h);q=C(o*r);o=C(A+q);z[a+12>>2]=o;f=C(j+n);z[a+8>>2]=f;j=C(A-q);z[a+4>>2]=j;A=C(1);e=C(C(1)-C(l*e));k=C(d*k);d=C(e-k);z[a+32>>2]=d;m=e;e=C(h*r);h=C(m-e);z[a+16>>2]=h;e=C(C(C(1)-k)-e);z[a>>2]=e;k=C(f*C(0));l=C(i*C(0));n=z[b+8>>2];r=C(C(k+l)+C(d*n));m=C(d*C(0));q=z[b>>2];v=C(m+C(l+C(f*q)));B=m;m=z[b+4>>2];w=C(B+C(k+C(i*m)));k=C(C(d*r)+C(C(f*v)+C(i*w)));z[a+32>>2]=k;l=C(j*C(0));s=C(h*C(0));x=C(C(l+s)+C(g*n));u=C(g*C(0));s=C(u+C(s+C(j*q)));u=C(u+C(l+C(h*m)));l=C(C(d*x)+C(C(f*s)+C(i*u)));z[a+28>>2]=l;B=d;d=C(e*C(0));D=C(o*C(0));y=C(C(d+D)+C(p*n));n=f;f=C(p*C(0));q=C(f+C(D+C(e*q)));m=C(f+C(d+C(o*m)));i=C(C(B*y)+C(C(n*q)+C(i*m)));z[a+24>>2]=i;f=C(C(g*r)+C(C(j*v)+C(h*w)));z[a+20>>2]=f;n=C(C(g*x)+C(C(j*s)+C(h*u)));z[a+16>>2]=n;h=C(C(g*y)+C(C(j*q)+C(h*m)));z[a+12>>2]=h;j=C(C(p*r)+C(C(e*v)+C(o*w)));z[a+8>>2]=j;d=C(C(p*x)+C(C(e*s)+C(o*u)));z[a+4>>2]=d;p=C(C(p*y)+C(C(e*q)+C(o*m)));z[a>>2]=p;o=C(0);e=C(0);r=C(0);q=C(1);v=C(0);g=C(0);m=C(0);w=C(1);x=C(C(h*l)-C(i*n));s=C(C(n*k)-C(l*f));u=C(k*h);y=C(C(j*x)+C(C(p*s)+C(d*C(C(f*i)-u))));if(y!=C(0)){g=C(C(1)/y);w=C(C(C(p*n)+C(d*C(-h)))*g);q=C(C(C(p*k)-C(i*j))*g);e=C(C(C(d*f)-C(n*j))*g);A=C(s*g);m=C(g*C(-C(C(p*l)-C(i*d))));v=C(g*C(-C(C(p*f)-C(h*j))));r=C(g*C(-C(u+C(i*C(-f)))));o=C(g*C(-C(C(d*k)-C(j*l))));g=C(x*g)}z[a+36>>2]=A;z[a+68>>2]=w;z[a- -64>>2]=m;z[a+60>>2]=g;z[a+56>>2]=v;z[a+52>>2]=q;z[a+48>>2]=r;z[a+44>>2]=e;z[a+40>>2]=o;t[a+72|0]=C(C(z[b>>2]*z[b+4>>2])*z[b+8>>2])>2];h=z[c+8>>2];s=C(t-h);j=z[b+8>>2];p=C(j-h);y=z[e>>2];k=z[c>>2];q=C(y-k);r=z[b>>2];l=C(r-k);A=z[e+4>>2];m=z[c+4>>2];u=C(A-m);n=z[b+4>>2];o=C(n-m);i=C(C(s*p)+C(C(q*l)+C(u*o)));w=z[d+8>>2];x=C(w-h);B=C(x*p);h=z[d>>2];p=C(h-k);k=C(p*l);l=z[d+4>>2];m=C(l-m);k=C(B+C(k+C(m*o)));if(!(!(k<=C(0))|!(i<=C(0)))){v[f>>2]=0;v[g>>2]=0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];return}o=C(j-w);h=C(r-h);w=C(n-l);l=C(C(s*o)+C(C(q*h)+C(u*w)));h=C(C(x*o)+C(C(p*h)+C(m*w)));if(!(!(h>=C(0))|!(h>=l))){v[f>>2]=1065353216;v[g>>2]=0;z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];return}o=C(C(k*l)-C(i*h));if(!(!(o<=C(0))|(!(h<=C(0))|!(k>=C(0))))){i=C(k/C(k-h));z[f>>2]=i;v[g>>2]=0;h=z[c>>2];j=z[c+4>>2];z[a+8>>2]=C(x*i)+z[c+8>>2];z[a+4>>2]=j+C(m*i);z[a>>2]=h+C(p*i);return}j=C(j-t);t=C(r-y);n=C(n-A);r=C(C(x*j)+C(C(p*t)+C(m*n)));j=C(C(s*j)+C(C(q*t)+C(u*n)));if(!(!(j>=C(0))|!(j>=r))){v[f>>2]=0;v[g>>2]=1065353216;z[a>>2]=z[e>>2];z[a+4>>2]=z[e+4>>2];z[a+8>>2]=z[e+8>>2];return}k=C(C(r*i)-C(j*k));if(!(!(k<=C(0))|(!(j<=C(0))|!(i>=C(0))))){v[f>>2]=0;i=C(i/C(i-j));z[g>>2]=i;h=z[c>>2];j=z[c+4>>2];z[a+8>>2]=C(s*i)+z[c+8>>2];z[a+4>>2]=j+C(u*i);z[a>>2]=h+C(q*i);return}a:{n=C(C(h*j)-C(l*r));if(!(n<=C(0))){break a}i=C(l-h);if(!(i>=C(0))){break a}h=C(r-j);if(!(h>=C(0))){break a}i=C(i/C(i+h));z[f>>2]=C(1)-i;z[g>>2]=i;h=z[d>>2];k=z[e>>2];j=z[d+4>>2];s=z[e+4>>2];q=z[d+8>>2];z[a+8>>2]=q+C(i*C(z[e+8>>2]-q));z[a+4>>2]=j+C(i*C(s-j));z[a>>2]=h+C(i*C(k-h));return}h=C(C(1)/C(o+C(n+k)));i=C(k*h);z[f>>2]=i;h=C(o*h);z[g>>2]=h;j=z[c>>2];k=z[c+4>>2];z[a+8>>2]=C(s*h)+C(C(x*i)+z[c+8>>2]);z[a+4>>2]=C(u*h)+C(k+C(m*i));z[a>>2]=C(q*h)+C(j+C(p*i))}function eD(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=0,s=0,u=0,w=0;k=xa-1056|0;xa=k;t[k+1040|0]=1;v[k+1048>>2]=256;v[k+1052>>2]=256;v[k+1044>>2]=k+16;v[k+16>>2]=v[c+588>>2];n=1;a:while(1){n=n-1|0;c=v[v[k+1044>>2]+(n<<2)>>2];h=z[c+16>>2];g=z[c>>2];f=C(h+g);h=C(h-g);i=z[c+24>>2];j=z[c+8>>2];g=C(i+j);m=z[c+20>>2];l=z[c+4>>2];o=C(m+l);i=C(i-j);j=C(m-l);while(1){b:{g=C(z[d+8>>2]-C(g*C(.5)));i=C(i*C(.5));m=g>2]-C(f*C(.5)));h=C(h*C(.5));l=f>2]-C(o*C(.5)));j=C(j*C(.5));q=j>o?o:j;c:{p=g;g=C(-i);g=C(p-(g>2]>=C(C(g*g)+C(p+C(f*f))))){break d}r=c;c=v[c+36>>2];if(v[r+40>>2]){break c}s=v[c>>2];if(!s){break d}c=c+4|0;if((s|0)==1){if(Ba[v[v[e>>2]>>2]](e,k+12|0,(v[c>>2]<<3)+a|0)|0){break d}break b}while(1){u=v[c>>2];r=B(u,24)+b|0;h=z[r+8>>2];g=z[r+20>>2];f=C(z[d+8>>2]-C(C(h+g)*C(.5)));h=C(C(g-h)*C(.5));g=f>2];j=z[r+12>>2];o=C(z[d>>2]-C(C(i+j)*C(.5)));i=C(C(j-i)*C(.5));j=i>o?o:i;l=z[r+4>>2];q=z[r+16>>2];m=C(z[d+4>>2]-C(C(l+q)*C(.5)));l=C(C(q-l)*C(.5));q=l>m?m:l;p=f;f=C(-h);f=C(p-(f>2]>=C(g+C(p+C(f*f)))){if(!(Ba[v[v[e>>2]>>2]](e,k+12|0,(u<<3)+a|0)|0)){break b}}c=c+4|0;s=s-1|0;if(s){continue}break}}w=!n;if(n){continue a}break b}v[v[k+1044>>2]+(n<<2)>>2]=c+48;n=n+1|0;if((n|0)==(v[k+1052>>2]&2147483647)){fD(k+16|0,n<<1)}h=z[c+16>>2];g=z[c>>2];f=C(h+g);h=C(h-g);i=z[c+24>>2];j=z[c+8>>2];g=C(i+j);m=z[c+20>>2];l=z[c+4>>2];o=C(m+l);i=C(i-j);j=C(m-l);continue}break}break}a=v[k+1052>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[k+1044>>2];if((a|0)==(k+16|0)|!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=k+1056|0;return w}function CV(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0,p=C(0),q=C(0),r=0,s=0,t=C(0),u=C(0),v=C(0);n=xa-16|0;k=z[e+8>>2];l=z[e>>2];m=z[e+4>>2];g=C(D(C(C(z[d+8>>2]*k)+C(C(z[d>>2]*l)+C(m*z[d+4>>2])))));z[n+4>>2]=g;h=C(D(C(C(k*z[d+20>>2])+C(C(l*z[d+12>>2])+C(m*z[d+16>>2])))));z[n+8>>2]=h;i=C(D(C(C(k*z[d+32>>2])+C(C(l*z[d+24>>2])+C(m*z[d+28>>2])))));z[n+12>>2]=i;o=g(o?h:g);s=r?1:2;o=!(o|r);n=n+4|0;n=B(z[n+(s<<2)>>2]>2]?s:o,12)+d|0;g=z[n+8>>2];h=z[n>>2];j=z[n+4>>2];i=C(C(g*k)+C(C(l*h)+C(m*j)));g=C(g-C(k*i));h=C(h-C(l*i));i=C(j-C(m*i));j=C(K(C(C(g*g)+C(C(h*h)+C(i*i)))));if(j>C(0)){j=C(C(1)/j);g=C(g*j);i=C(i*j);h=C(h*j)}z[a+12>>2]=h;z[a+8>>2]=k;z[a+4>>2]=m;z[a>>2]=l;z[a+20>>2]=g;z[a+16>>2]=i;j=C(C(l*i)-C(h*m));z[a+32>>2]=j;p=C(C(k*h)-C(g*l));z[a+28>>2]=p;q=C(C(m*g)-C(i*k));z[a+24>>2]=q;t=z[e+8>>2];u=z[e>>2];v=z[e+4>>2];z[a+48>>2]=C(C(D(C(C(z[d+32>>2]*k)+C(C(z[d+24>>2]*l)+C(m*z[d+28>>2])))))*z[b+8>>2])+C(C(C(D(C(C(z[d+20>>2]*k)+C(C(z[d+12>>2]*l)+C(m*z[d+16>>2])))))*z[b+4>>2])+C(C(f*C(.5))+C(z[b>>2]*C(D(C(C(z[d+8>>2]*k)+C(C(z[d>>2]*l)+C(z[d+4>>2]*m))))))));z[a+52>>2]=C(C(D(C(C(z[d+32>>2]*g)+C(C(z[d+24>>2]*h)+C(i*z[d+28>>2])))))*z[b+8>>2])+C(C(C(D(C(C(z[d+20>>2]*g)+C(C(z[d+12>>2]*h)+C(i*z[d+16>>2])))))*z[b+4>>2])+C(C(C(C(C(t*g)+C(C(u*h)+C(i*v)))*f)*C(.5))+C(z[b>>2]*C(D(C(C(z[d+8>>2]*g)+C(C(z[d>>2]*h)+C(z[d+4>>2]*i))))))));z[a+56>>2]=C(C(D(C(C(z[d+32>>2]*j)+C(C(z[d+24>>2]*q)+C(p*z[d+28>>2])))))*z[b+8>>2])+C(C(C(D(C(C(z[d+20>>2]*j)+C(C(z[d+12>>2]*q)+C(p*z[d+16>>2])))))*z[b+4>>2])+C(C(C(C(C(t*j)+C(C(u*q)+C(p*v)))*f)*C(.5))+C(z[b>>2]*C(D(C(C(z[d+8>>2]*j)+C(C(z[d>>2]*q)+C(z[d+4>>2]*p))))))));k=z[c>>2];l=z[e>>2];m=z[c+4>>2];g=z[e+4>>2];z[a+44>>2]=C(C(z[e+8>>2]*f)*C(.5))+z[c+8>>2];z[a+40>>2]=m+C(C(g*f)*C(.5));z[a+36>>2]=k+C(C(l*f)*C(.5))}function AF(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;i=1;e=xa-16|0;xa=e;h=b<<1;d=h+2|0;c=v[a+76>>2];f=c>>>0>>0?d:c;c=a- -64|0;g=v[c+16>>2];a:{if(f>>>0<=g>>>0){break a}d=v[c+20>>2];j=((d+f|0)-1>>>0)/(d>>>0)|0;m=v[c+4>>2];k=j-m|0;v[c+16>>2]=g+B(d,k);if((j|0)==(m|0)){break a}g=0;while(1){d=0;j=v[c+20>>2]<<3;if(j){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,j,24422,16683,84)|0}v[e+12>>2]=d;j=v[c+4>>2];b:{if(j>>>0>=(v[c+8>>2]&2147483647)>>>0){qF(c,e+12|0);break b}v[v[c>>2]+(j<<2)>>2]=d;v[c+4>>2]=j+1}g=g+1|0;if((k|0)!=(g|0)){continue}break}}d=v[c+12>>2];if(f>>>0>d>>>0){while(1){k=v[c+20>>2];g=(d>>>0)/(k>>>0)|0;k=v[v[c>>2]+(g<<2)>>2]+(d-B(g,k)<<3)|0;v[k>>2]=-1;v[k+4>>2]=-1;d=d+1|0;if((f|0)!=(d|0)){continue}break}}v[c+12>>2]=f;xa=e+16|0;j=v[a+60>>2];m=(b>>>0)/(j>>>0)|0;k=v[v[a+40>>2]+(m<<2)>>2];c=v[a+448>>2];e=v[c>>2];d=h|1;f=v[c+20>>2];c=(d>>>0)/(f>>>0)|0;g=v[v[e+(c<<2)>>2]+(d-B(c,f)<<2)>>2];c=0;l=(h>>>0)/(f>>>0)|0;f=v[v[e+(l<<2)>>2]+(h-B(f,l)<<2)>>2]>>>7|0;if((f|0)!=33554431){l=v[a+64>>2];c=v[a+84>>2];i=(h>>>0)/(c>>>0)|0;n=v[l+(i<<2)>>2]+(h-B(c,i)<<3)|0;e=v[a+16>>2]+B(f,24)|0;i=v[e>>2];v[n>>2]=i;if((i|0)!=-1){o=(i>>>0)/(c>>>0)|0;v[(v[l+(o<<2)>>2]+(i-B(c,o)<<3)|0)+4>>2]=h}v[e>>2]=h;v[n+4>>2]=-1;c=w[e+4|0];i=(c&4)>>>2|0;c=(c&34)!=0}c:{d:{e:{h=g>>>7|0;if(!((h|0)==(f|0)|(h|0)==33554431)){l=v[a+64>>2];f=v[a+84>>2];e=(d>>>0)/(f>>>0)|0;n=v[l+(e<<2)>>2]+(d-B(e,f)<<3)|0;g=v[a+16>>2];o=g+B(h,24)|0;e=v[o>>2];v[n>>2]=e;if((e|0)!=-1){p=(e>>>0)/(f>>>0)|0;v[(v[l+(p<<2)>>2]+(e-B(f,p)<<3)|0)+4>>2]=d}v[o>>2]=d;v[n+4>>2]=-1;d=1;f:{if(c){break f}c=w[(g+B(h,24)|0)+4|0];if(c&2){break f}d=(c&32)>>>5|0}if(i){break e}c=d}if(c){break d}break c}if(!d){break c}i=(w[(g+B(h,24)|0)+4|0]&4)>>>2|0}d=b-B(j,m)|0;if(v[k+(d<<4)>>2]?i:0){break c}BF(a,b);a=k+(d<<4)|0;u[a+4>>1]=x[a+4>>1]|4}}function L2(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),w=C(0),x=0,y=0,A=C(0),E=C(0),F=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0);n=xa-48|0;xa=n;x=0;a:{if(!a){break a}H=g?v[g>>2]:H;O=j|k;P=C(C(z[c+8>>2]*z[e+8>>2])+C(C(z[c>>2]*z[e>>2])+C(z[c+4>>2]*z[e+4>>2])));I=C(2);g=-1;q=f;b:{c:{while(1){d:{x=y?(y|0)==(H|0)?0:y:H;s=B(x,36)+b|0;e:{if(J2(c,e,q,d,s,P)){break e}o=z[s>>2];w=C(z[s+12>>2]-o);p=z[s+4>>2];r=C(z[s+28>>2]-p);t=C(z[s+24>>2]-o);A=C(z[s+16>>2]-p);o=C(C(w*r)-C(t*A));p=z[s+8>>2];E=C(z[s+20>>2]-p);F=C(E*t);t=C(z[s+32>>2]-p);p=C(F-C(t*w));r=C(C(A*t)-C(r*E));if(!O&C(C(o*z[e+8>>2])+C(C(r*z[e>>2])+C(p*z[e+4>>2])))>C(0)){break e}w=C(K(C(C(o*o)+C(C(r*r)+C(p*p)))));if(w==C(0)){break e}t=o;o=C(C(1)/w);w=C(t*o);z[n+40>>2]=w;p=C(p*o);z[n+36>>2]=p;r=C(r*o);z[n+32>>2]=r;if(!K2(s,n+32|0,c,d,e,n+16|0,n+15|0,m)){break e}o=z[n+16>>2];if(o>f){break e}F=C(C(G(o>q?o:q,C(1)))*C(.0010000000474974513));A=z[e+8>>2];E=z[e>>2];N=z[e+4>>2];t=C(-C(D(C(C(w*A)+C(C(r*E)+C(p*N))))));if(!(o>2]=-A;z[i+4>>2]=-N;z[i>>2]=-E;u[h+12>>1]=1026;v[h+8>>2]=x;d=z[e>>2];f=z[e+4>>2];q=z[e+8>>2];v[h+40>>2]=0;z[h+36>>2]=-q;z[h+32>>2]=-f;z[h+28>>2]=-d;x=1;break a}g=x;q=o;M=w;L=p;J=r}if((g|0)!=-1){M2(n+32|0,n+16|0,c,e,q,B(g,36)+b|0);if(!(!(C(C(M*z[e+8>>2])+C(C(J*z[e>>2])+C(L*z[e+4>>2])))>C(0))|(j|!k))){z[n+24>>2]=-z[n+24>>2];z[n+20>>2]=-z[n+20>>2];z[n+16>>2]=-z[n+16>>2]}z[h+16>>2]=z[n+32>>2];z[h+20>>2]=z[n+36>>2];z[h+24>>2]=z[n+40>>2];z[h+28>>2]=z[n+16>>2];z[h+32>>2]=z[n+20>>2];d=z[n+24>>2];z[h+40>>2]=q;z[h+36>>2]=d;u[h+12>>1]=3;v[h+8>>2]=g;z[i+8>>2]=M;z[i+4>>2]=L;z[i>>2]=J}x=(g|0)!=-1}xa=n+48|0;return x}function fQ(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;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,(k<<3)+67|0,24422,17218,155)|0;e:{if(!b){d=0;break e}d=b+67&-64;v[d-4>>2]=d-b}k=k<<1;b=H9(d,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e-v[e-4>>2]|0)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,(k<<3)+67|0,24422,17218,155)|0;f:{if(!b){c=0;break f}c=b+67&-64;v[c-4>>2]=c-b}k=k<<1;b=H9(c,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e-v[e-4>>2]|0)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e-v[e-4>>2]|0)}if(w[l+12|0]){u9(v[l+8>>2])}xa=l+16|0}function x1(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=0,q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=0,A=0,D=C(0),E=0,F=C(0),G=C(0),H=0;p=xa-160|0;xa=p;k2(b,h,p+88|0);v[p+56>>2]=b+96;v[p+52>>2]=b+48;v[p+48>>2]=e;a:{if(h){t[p+60|0]=1;v[p+16>>2]=141020;break a}t[p+60|0]=0;v[p+16>>2]=141068}v[p+64>>2]=b;v[p+12>>2]=0;b=p+88|0;y=p+16|0;h=xa-48|0;xa=h;A=p+12|0;H=v[A>>2];E=v[j+12>>2];v[h+40>>2]=v[j+8>>2];v[h+44>>2]=E;E=v[j+4>>2];v[h+32>>2]=v[j>>2];v[h+36>>2]=E;b:{c:{d:{if(n){if(!c2(a,b,y,m,h+16|0,h+32|0)){break c}e2(a,b,y,c,f,A,m,h+32|0);if(v[A>>2]-H>>>0>1){break d}k=v[b+24>>2];v[h+12>>2]=0;z[h+8>>2]=-z[h+40>>2];z[h+4>>2]=-z[h+36>>2];z[h>>2]=-z[h+32>>2];b2(a,b,k+B(Z1(b,y,h),20)|0,y,c,f,A,m,h+32|0);break d}e2(a,b,y,c,f,A,m,h+32|0);if(v[A>>2]-H>>>0>1){break d}v[h+28>>2]=0;z[h+24>>2]=-z[h+40>>2];z[h+20>>2]=-z[h+36>>2];z[h+16>>2]=-z[h+32>>2];q=C(o*C(.05000000074505806));o=C(o*C(.009999999776482582));l=lq?q:l);b2(a,b,v[b+24>>2]+B(k,20)|0,y,c,f,A,m,h+32|0)}b=v[h+36>>2];v[j>>2]=v[h+32>>2];v[j+4>>2]=b;b=v[h+44>>2];v[j+8>>2]=v[h+40>>2];v[j+12>>2]=b;b=1;break b}b=0}xa=h+48|0;e:{if(!b){break e}c=v[p+12>>2];f:{if(c){w2(i,f,c);l=z[e+12>>2];o=C(C(l*l)+C(-.5));q=z[e+8>>2];r=z[j+8>>2];s=z[e>>2];u=z[j>>2];w=z[e+4>>2];x=z[j+4>>2];D=C(C(q*r)+C(C(s*u)+C(w*x)));F=C(C(C(l*C(C(s*x)-C(u*w)))+C(o*r))+C(q*D));G=C(C(w*D)+C(C(o*x)+C(l*C(C(q*u)-C(r*s)))));l=C(C(s*D)+C(C(u*o)+C(l*C(C(w*r)-C(x*q)))));break f}if(n){break e}l=z[e+12>>2];o=C(C(l*l)+C(-.5));q=z[e+8>>2];r=z[j+8>>2];s=z[e>>2];u=z[j>>2];w=z[e+4>>2];x=z[j+4>>2];D=C(C(q*r)+C(C(s*u)+C(w*x)));F=C(C(C(l*C(C(s*x)-C(u*w)))+C(o*r))+C(q*D));G=C(C(w*D)+C(C(o*x)+C(l*C(C(q*u)-C(r*s)))));l=C(C(s*D)+C(C(u*o)+C(l*C(C(w*r)-C(x*q)))))}v[j+12>>2]=0;z[j+8>>2]=F+F;z[j+4>>2]=G+G;z[j>>2]=l+l;r2(i,g,j,j,d,a+80|0,m)}xa=p+160|0;return b}function _I(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=xa-16|0;xa=g;j=v[v[a+4>>2]+40>>2];c=v[j+980>>2];d=v[c+196>>2];h=v[a+8>>2]&2147483647;b=v[(d+(h<<3)|0)+4>>2];a:{if((b|0)==-1){e=h>>>5<<2;f=e+v[c+136>>2]|0;i=v[f>>2];b=1<>2]=i&(b^-1);break b}e=e+v[c+148>>2]|0;v[e>>2]=b|v[e>>2]}t[c+365|0]=1;break a}c:{d:{e:{f:{g:{h:{e=v[v[c+376>>2]+(b<<1&-4)>>2];b=v[e+8>>2];if(!b){d=0;break h}f=v[e+4>>2];d=0;while(1){if((h|0)==v[f+(d<<2)>>2]){break h}d=d+1|0;if((b|0)!=(d|0)){continue}break}break g}if((b|0)!=(d|0)){b=b-1|0;v[e+8>>2]=b;f=d<<2;d=v[e+4>>2];v[f+d>>2]=v[d+(b<<2)>>2];b=v[e+8>>2]}if(b){break g}b=v[e>>2];d=b>>>5<<2;f=d+v[c+136>>2]|0;i=v[f>>2];b=1<>2]=i&(b^-1);break e}if(v[e+20>>2]!=-1){break c}b=v[c+392>>2];v[e+20>>2]=b;v[g+12>>2]=e;if(b>>>0<(v[c+396>>2]&2147483647)>>>0){break d}lI(c+388|0,g+12|0);break c}d=d+v[c+148>>2]|0;v[d>>2]=b|v[d>>2]}b=v[e+20>>2];if((b|0)==-1){break c}d=v[c+392>>2]-1|0;v[c+392>>2]=d;f=v[c+388>>2];i=b<<2;v[f+i>>2]=v[f+(d<<2)>>2];if(b>>>0>>0){v[v[i+v[c+388>>2]>>2]+20>>2]=b}v[e+20>>2]=-1;break c}v[v[c+388>>2]+(b<<2)>>2]=e;v[c+392>>2]=b+1}t[c+365|0]=1;d=v[c+196>>2]}b=h<<2;v[b+v[c+180>>2]>>2]=-1;v[b+v[v[c+192>>2]+4>>2]>>2]=0;b=(h<<3)+d|0;v[b>>2]=0;v[b+4>>2]=-1;xa=g+16|0;d=v[a+8>>2];h=d&2147483647;e=h+32>>>5|0;b=v[j+980>>2];i:{if(e>>>0<=(v[b+164>>2]&2147483647)>>>0){c=v[b+160>>2];break i}c=v[b+168>>2];c=Ba[v[v[c>>2]+8>>2]](c,e<<2,17999,438)|0;g=v[b+160>>2];j:{if(!g){break j}H9(c,g,v[b+164>>2]<<2);if(v[b+164>>2]<0){break j}g=v[b+160>>2];if(!g){break j}f=v[b+168>>2];Ba[v[v[f>>2]+12>>2]](f,g)}g=v[b+164>>2];I9((g<<2)+c|0,0,e-g<<2);v[b+164>>2]=e;v[b+160>>2]=c}b=(h>>>3&268435452)+c|0;c=v[b>>2];k=b,l=Uaa(-2,d)&c,v[k>>2]=l;v[a+8>>2]=v[a+8>>2]&2147483647;a=v[j+2352>>2];v[a+12>>2]=v[a+12>>2]+1}function vS(a,b,c,d){var e=0,f=0,g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=0;f=xa-48|0;xa=f;u[a+44>>1]=x[a+44>>1]+1;a:{if(!t$(a+16|0,a+28|0,b,c,d)){break a}h=z[a+40>>2];j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];m=z[c>>2];n=z[b>>2];o=z[c+4>>2];p=z[b+4>>2];q=z[b+8>>2];r=z[c+8>>2];z[f+40>>2]=C(q+r)*C(.5);z[f+36>>2]=C(p+o)*C(.5);z[f+32>>2]=C(n+m)*C(.5);z[f+24>>2]=C(r+l)*C(.5);z[f+20>>2]=C(o+k)*C(.5);z[f+16>>2]=C(m+j)*C(.5);z[f+8>>2]=C(q+l)*C(.5);z[f+4>>2]=C(p+k)*C(.5);z[f>>2]=C(n+j)*C(.5);b:{c:{d:{e:{f:{g:{h:{i:{g=C(r-l);s=C(g*g);g=C(m-j);t=C(g*g);g=C(o-k);e=(h>2];b=v[c+4>>2];d=b;i=b+2|0;e=v[c+8>>2]&2147483647;j:{if(i>>>0<=e>>>0){break j}d=b;w=e;e=e?e<<1:2;e=e>>>0>>0?i:e;if(w>>>0>=e>>>0){break j}uS(c,e);d=v[c+4>>2]}v[c+4>>2]=b+1;b=v[c>>2]+B(d,36)|0;z[b+24>>2]=j;z[b+12>>2]=m;z[b+8>>2]=q;z[b+4>>2]=p;z[b>>2]=n;z[b+32>>2]=l;z[b+28>>2]=k;z[b+20>>2]=r;z[b+16>>2]=o;c=a+4|0;b=v[a+12>>2];d=v[b+4>>2];k:{if(d>>>0>=(v[b+8>>2]&2147483647)>>>0){on(b,c);break k}v[v[b>>2]+(d<<2)>>2]=v[c>>2];v[b+4>>2]=v[b+4>>2]+1}v[a>>2]=v[a>>2]+1;break a}e=b;b=f+32|0;vS(a,e,b,d);vS(a,b,c,d);break a}e=c;c=f+16|0;vS(a,b,e,c);vS(a,b,c,d);break a}i=f+32|0;e=f+16|0;vS(a,b,i,e);vS(a,b,e,d);vS(a,i,c,e);break a}vS(a,b,c,f);vS(a,c,d,f);break a}e=b;b=f+32|0;vS(a,e,b,f);vS(a,b,c,f);vS(a,f,c,d);break a}e=c;c=f+16|0;vS(a,b,e,c);vS(a,b,c,f);vS(a,f,c,d);break a}e=b;b=f+32|0;vS(a,e,b,f);e=c;c=f+16|0;vS(a,b,e,c);vS(a,f,c,d);vS(a,b,c,f)}xa=f+48|0}function JD(a,b,c,d,e){var f=0,g=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=0,r=0,s=C(0),u=0,w=0;h=xa-1056|0;xa=h;t[h+1040|0]=1;v[h+1048>>2]=256;v[h+1052>>2]=256;v[h+1044>>2]=h+16;r=v[c+8>>2];v[h+16>>2]=r;k=1;a:while(1){k=k-1|0;f=v[v[h+1044>>2]+(k<<2)>>2];i=z[f>>2];j=z[f+12>>2];g=C(i+j);i=C(j-i);l=z[f+8>>2];m=z[f+20>>2];j=C(l+m);o=z[f+4>>2];p=z[f+16>>2];s=C(o+p);l=C(m-l);m=C(p-o);while(1){b:{c:{g=C(C(g*C(.5))-z[d>>2]);d:{if(!(C(C(i*C(.5))+z[d+16>>2])>=(g>C(0)?g:C(-g)))){break d}g=C(C(s*C(.5))-z[d+4>>2]);if(!(C(C(m*C(.5))+z[d+20>>2])>=(g>C(0)?g:C(-g)))){break d}g=C(C(j*C(.5))-z[d+8>>2]);if(!(C(C(l*C(.5))+z[d+24>>2])>=(g>C(0)?g:C(-g)))){break d}f=v[f+24>>2];n=f>>>1|0;if(!(f&1)){break c}q=n&15;if(!q){break d}n=v[c>>2]+(f>>>3&536870908)|0;if((q|0)==1){if(Ba[v[v[e>>2]>>2]](e,h+12|0,(v[n>>2]<<3)+a|0)|0){break d}break b}while(1){u=v[n>>2];f=B(u,24)+b|0;i=z[f+12>>2];j=z[f>>2];g=C(C(C(j+i)*C(.5))-z[d>>2]);e:{if(!(C(C(C(i-j)*C(.5))+z[d+16>>2])>=(g>C(0)?g:C(-g)))){break e}i=z[f+4>>2];j=z[f+16>>2];g=C(C(C(i+j)*C(.5))-z[d+4>>2]);if(!(C(C(C(j-i)*C(.5))+z[d+20>>2])>=(g>C(0)?g:C(-g)))){break e}i=z[f+8>>2];j=z[f+20>>2];g=C(C(C(i+j)*C(.5))-z[d+8>>2]);if(!(C(C(C(j-i)*C(.5))+z[d+24>>2])>=(g>C(0)?g:C(-g)))){break e}if(!(Ba[v[v[e>>2]>>2]](e,h+12|0,(u<<3)+a|0)|0)){break b}}n=n+4|0;q=q-1|0;if(q){continue}break}}w=!k;if(k){continue a}break b}f=B(n,28)+r|0;v[v[h+1044>>2]+(k<<2)>>2]=f+28;k=k+1|0;if((k|0)==(v[h+1052>>2]&2147483647)){ND(h+16|0,k<<1)}i=z[f>>2];j=z[f+12>>2];g=C(i+j);i=C(j-i);l=z[f+8>>2];m=z[f+20>>2];j=C(l+m);o=z[f+4>>2];p=z[f+16>>2];s=C(o+p);l=C(m-l);m=C(p-o);continue}break}break}a=v[h+1052>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[h+1044>>2];if((a|0)==(h+16|0)|!a){break f}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=h+1056|0;return w}function C6(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),w=C(0),x=0,y=0;j=xa-32|0;xa=j;h=C(C(f*C(0))+e);l=G9(h);i=C(C(d*C(0))+c);m=G9(i);h=Q9(h);i=Q9(i);u=z[b+20>>2];w=z[b+16>>2];p=z[b+8>>2];n=C(m*C(0));o=C(C(C(C(n+C(0))-i)+C(0))+C(C(m+C(C(i*C(0))+C(0)))*C(0)));o=C(o+o);q=z[b>>2];k=C(h*C(-0));t=C(i*C(-0));r=C(l*C(0));k=C(C(C(n+C(C(l*i)+k))*C(0))+C(C(t+C(C(m*l)+k))+C(C(C(r-h)+C(0))*C(0))));k=C(k+k);h=C(C(C(n+C(C(h*i)+r))*C(0))+C(C(t+C(C(m*h)+r))+C(C(C(l+C(h*C(0)))+C(0))*C(0))));i=C(h+h);l=z[b+4>>2];m=C(C(p*o)+C(C(q*k)+C(i*l)));h=z[b+12>>2];n=C(C(h*h)+C(-.5));z[j+8>>2]=C(C(p*m)+C(C(o*n)+C(h*C(C(q*i)-C(k*l)))))+z[b+24>>2];z[j+4>>2]=u+C(C(l*m)+C(C(i*n)+C(h*C(C(p*k)-C(o*q)))));z[j>>2]=w+C(C(q*m)+C(C(k*n)+C(h*C(C(l*o)-C(i*p)))));x=b+16|0;Ba[v[v[a>>2]+28>>2]](a,x,j,g);z[j+24>>2]=z[j+8>>2];s=v[j+4>>2];v[j+16>>2]=v[j>>2];v[j+20>>2]=s;s=1;while(1){h=C(C(s>>>0)/C(7));i=C(C(1)-h);p=C(C(h*f)+C(i*e));l=G9(p);i=C(C(h*d)+C(i*c));m=G9(i);h=Q9(p);i=Q9(i);u=z[b+16>>2];w=z[b+20>>2];p=z[b+8>>2];n=C(m*C(0));o=C(C(C(C(n+C(0))-i)+C(0))+C(C(m+C(C(i*C(0))+C(0)))*C(0)));o=C(o+o);q=z[b>>2];k=C(h*C(-0));t=C(i*C(-0));r=C(l*C(0));k=C(C(C(n+C(C(l*i)+k))*C(0))+C(C(t+C(C(m*l)+k))+C(C(C(r-h)+C(0))*C(0))));k=C(k+k);h=C(C(C(n+C(C(h*i)+r))*C(0))+C(C(t+C(C(m*h)+r))+C(C(C(l+C(h*C(0)))+C(0))*C(0))));i=C(h+h);l=z[b+4>>2];m=C(C(p*o)+C(C(q*k)+C(i*l)));h=z[b+12>>2];n=C(C(h*h)+C(-.5));z[j+8>>2]=C(C(p*m)+C(C(o*n)+C(h*C(C(q*i)-C(k*l)))))+z[b+24>>2];z[j+4>>2]=w+C(C(l*m)+C(C(i*n)+C(h*C(C(p*k)-C(o*q)))));z[j>>2]=u+C(C(q*m)+C(C(k*n)+C(h*C(C(l*o)-C(i*p)))));Ba[v[v[a>>2]+28>>2]](a,x,j,g);Ba[v[v[a>>2]+28>>2]](a,j+16|0,j,g);z[j+16>>2]=z[j>>2];y=v[j+8>>2];v[j+20>>2]=v[j+4>>2];v[j+24>>2]=y;s=s+1|0;if((s|0)!=8){continue}break}xa=j+32|0}function c2(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=0,k=C(0),l=0,m=0,n=C(0),o=0,p=C(0),q=C(0),r=0,s=0,t=0,u=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0);g=xa-80|0;xa=g;v[g+64>>2]=2139095039;v[g+24>>2]=0;v[g+28>>2]=0;v[g+16>>2]=0;v[g+20>>2]=1065353216;l=0;a:{if(!d2(a,b,c,d,g- -64|0,g+16|0)){break a}b:{l=v[b+16>>2];if(l){u=C(z[a+68>>2]-z[a+52>>2]);E=C(-u);y=C(z[a+64>>2]-z[a+48>>2]);F=C(-y);A=C(z[a+72>>2]-z[a+56>>2]);G=C(-A);while(1){t=v[b+24>>2]+B(s,20)|0;r=w[t+18|0];if(r){D=v[b+32>>2]+x[t+16>>1]|0;j=r-1|0;l=0;while(1){m=v[c+40>>2];o=v[b+28>>2];j=o+B(w[j+D|0],12)|0;o=o+B(w[l+D|0],12)|0;k=C(z[j+8>>2]-z[o+8>>2]);h=C(z[j>>2]-z[o>>2]);i=C(z[j+4>>2]-z[o+4>>2]);p=C(C(z[m+24>>2]*k)+C(C(z[m+16>>2]*h)+C(i*z[m+20>>2])));q=C(C(z[m+8>>2]*k)+C(C(z[m>>2]*h)+C(i*z[m+4>>2])));n=C(C(y*p)+C(q*E));h=C(C(z[m+40>>2]*k)+C(C(z[m+32>>2]*h)+C(i*z[m+36>>2])));k=C(C(u*h)+C(p*G));h=C(C(A*q)+C(h*F));i=C(C(n*n)+C(C(k*k)+C(h*h)));if(!(i>2]=0;i=C(C(1)/C(K(i)));z[g+8>>2]=n*i;z[g+4>>2]=h*i;z[g>>2]=k*i;Ba[v[v[c>>2]+12>>2]](c,g,g+48|0,g+32|0);h=z[g+8>>2];i=z[g>>2];n=z[g+4>>2];k=C(C(z[a+72>>2]*h)+C(C(z[a+64>>2]*i)+C(n*z[a+68>>2])));h=C(C(z[a+56>>2]*h)+C(C(z[a+48>>2]*i)+C(z[a+52>>2]*n)));j=k>2];q=C((j?k:h)-p);i=z[g+32>>2];n=z[d>>2];if(q>C(i+n)|z[g+48>>2]>C(n+C(p+(j?h:k)))){break b}k=C(i-q);if(k>2]){z[g+64>>2]=k;j=v[g+4>>2];v[g+16>>2]=v[g>>2];v[g+20>>2]=j;j=v[g+12>>2];v[g+24>>2]=v[g+8>>2];v[g+28>>2]=j}r=w[t+18|0]}j=l;l=j+1|0;if(r>>>0>l>>>0){continue}break}l=v[b+16>>2]}s=s+1|0;if(s>>>0>>0){continue}break}}a=v[g+20>>2];v[f>>2]=v[g+16>>2];v[f+4>>2]=a;a=v[g+28>>2];v[f+8>>2]=v[g+24>>2];v[f+12>>2]=a;a=v[g+68>>2];v[e>>2]=v[g+64>>2];v[e+4>>2]=a;a=v[g+76>>2];v[e+8>>2]=v[g+72>>2];v[e+12>>2]=a;l=1;break a}l=0}xa=g+80|0;return l}function vx(a,b){var c=0,d=C(0),e=0,f=C(0),g=0,h=C(0),i=C(0),j=0,k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0,x=0,y=0,A=0,D=0,E=0,F=0;u=v[b+24>>2];e=v[b+4>>2];c=v[b>>2];x=v[a+336>>2];b=w[v[a+364>>2]];y=v[a+340>>2];A=v[a+332>>2];g=v[A+16>>2];z[y+144>>2]=z[g+76>>2];a:{if(b&1){v[c>>2]=0;v[c+4>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;f=z[c+8>>2];h=z[c+4>>2];i=z[c>>2];break a}d=z[g+72>>2];f=z[g+88>>2];i=z[g+80>>2];e=v[g+68>>2];b=v[g+64>>2];h=z[g+84>>2];z[c+4>>2]=h;z[c+8>>2]=f;v[c+12>>2]=0;v[c+28>>2]=0;z[c+24>>2]=d;v[c+16>>2]=b;v[c+20>>2]=e;z[c>>2]=i}v[a+12>>2]=0;z[a+8>>2]=f;z[a+4>>2]=h;z[a>>2]=i;z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];d=z[c+24>>2];v[a+28>>2]=0;z[a+24>>2]=d;if(x>>>0>=2){E=v[a+272>>2];F=v[a+344>>2];j=1;while(1){b=B(j,160)+y|0;D=j<<5;a=D+A|0;z[b+144>>2]=z[v[a+16>>2]+76>>2];f=z[b+124>>2];a=(v[a+24>>2]<<5)+c|0;m=z[a>>2];d=z[b+120>>2];n=z[a+4>>2];s=C(C(C(f*m)-C(d*n))+z[a+24>>2]);o=z[a+8>>2];h=C(d*o);d=z[b+128>>2];t=C(C(h-C(d*m))+z[a+20>>2]);d=C(C(C(d*n)-C(f*o))+z[a+16>>2]);if(u){a=B(j,80)+F|0;g=w[a+76|0];b:{if(!g){i=C(0);h=C(0);p=C(0);q=C(0);r=C(0);f=C(0);break b}e=(v[a+72>>2]<<2)+u|0;a=E+B(j,76)|0;f=C(0);b=0;r=C(0);q=C(0);p=C(0);h=C(0);i=C(0);while(1){k=z[(b<<2)+e>>2];l=B(b,24)+a|0;q=C(q+C(k*z[l+12>>2]));p=C(p+C(k*z[l+8>>2]));h=C(h+C(k*z[l+4>>2]));i=C(i+C(k*z[l>>2]));f=C(f+C(k*z[l+20>>2]));r=C(r+C(k*z[l+16>>2]));b=b+1|0;if((g|0)!=(b|0)){continue}break}}s=C(s+f);t=C(t+r);o=C(o+p);n=C(n+h);m=C(m+i);d=C(d+q)}a=c+D|0;v[a+28>>2]=0;z[a+16>>2]=d;v[a+12>>2]=0;z[a+8>>2]=o;z[a+4>>2]=n;z[a>>2]=m;z[a+24>>2]=s;z[a+20>>2]=t;j=j+1|0;if((x|0)!=(j|0)){continue}break}}}function IP(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;i=xa-16|0;xa=i;b=v[b+32>>2];if(b){while(1){v[i+12>>2]=b;g=v[c+264>>2];a:{if(g>>>0>=(v[c+268>>2]&2147483647)>>>0){g=0;f=v[c+268>>2];j=f&2147483647?f<<1:1;b:{if(!j){break b}f=j<<2;if(!(w[c+256|0]|f>>>0>256)){t[c+256|0]=1;g=c;break b}if(!f){break b}g=v[37696];h=g+12|0;g=(n=h,o=f,p=Ba[v[v[g>>2]+20>>2]](g)|0?58181:63804,q=16608,r=553,m=v[v[h>>2]+8>>2],Ba[m](n|0,o|0,p|0,q|0,r|0)|0)}h=v[c+264>>2];l=(h<<2)+g|0;if((h|0)>0){k=v[c+260>>2];f=g;while(1){v[f>>2]=v[k>>2];k=k+4|0;f=f+4|0;if(l>>>0>f>>>0){continue}break}}v[l>>2]=v[i+12>>2];c:{if(v[c+268>>2]<0){break c}f=v[c+260>>2];if((f|0)==(c|0)){t[c+256|0]=0;break c}if(!f){break c}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,f);h=v[c+264>>2]}v[c+268>>2]=j;v[c+260>>2]=g;v[c+264>>2]=h+1;break a}v[v[c+260>>2]+(g<<2)>>2]=b;v[c+264>>2]=g+1}f=v[v[i+12>>2]+28>>2];v[i+8>>2]=f;g=v[d+264>>2];d:{if(g>>>0>=(v[d+268>>2]&2147483647)>>>0){g=0;f=v[d+268>>2];j=f&2147483647?f<<1:1;e:{if(!j){break e}f=j<<2;if(!(w[d+256|0]|f>>>0>256)){t[d+256|0]=1;g=d;break e}if(!f){break e}g=v[37696];h=g+12|0;g=(r=h,q=f,p=Ba[v[v[g>>2]+20>>2]](g)|0?59791:63804,o=16608,n=553,m=v[v[h>>2]+8>>2],Ba[m](r|0,q|0,p|0,o|0,n|0)|0)}h=v[d+264>>2];l=(h<<2)+g|0;if((h|0)>0){k=v[d+260>>2];f=g;while(1){v[f>>2]=v[k>>2];k=k+4|0;f=f+4|0;if(l>>>0>f>>>0){continue}break}}v[l>>2]=v[i+8>>2];f:{if(v[d+268>>2]<0){break f}f=v[d+260>>2];if((f|0)==(d|0)){t[d+256|0]=0;break f}if(!f){break f}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,f);h=v[d+264>>2]}v[d+268>>2]=j;v[d+260>>2]=g;v[d+264>>2]=h+1;break d}v[v[d+260>>2]+(g<<2)>>2]=f;v[d+264>>2]=g+1}b=v[b>>2];if(b){continue}break}}if(v[c+264>>2]){b=0;while(1){JP(a,v[v[c+260>>2]+(b<<2)>>2],e);b=b+1|0;if(b>>>0>2]){continue}break}}xa=i+16|0}function Cj(a,b,c){a=a|0;b=b|0;c=C(c);var d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=0,u=0,w=C(0),y=C(0),A=0;e=xa-32|0;xa=e;d=xa-96|0;xa=d;v[e+16>>2]=2122317823;v[e+20>>2]=-25165825;v[e+8>>2]=2122317823;v[e+12>>2]=2122317823;v[e+24>>2]=-25165825;v[e+28>>2]=-25165825;m=b+20|0;s=x[m+4>>1];Ba[v[v[b>>2]+76>>2]](d- -64|0,b);if(s){A=x[m+4>>1]==1?m:v[m>>2];k=C(85070586659632215e21);l=C(85070586659632215e21);m=0;while(1){r=v[(m<<2)+A>>2];t=v[r+40>>2];u=v[r+36>>2];b=u&4?t:r+80|0;q=z[b+24>>2];w=z[b+20>>2];y=z[b+16>>2];f=z[d+76>>2];j=z[b+12>>2];n=z[b>>2];g=z[d+64>>2];h=z[d+68>>2];o=z[b+4>>2];i=z[d+72>>2];p=z[b+8>>2];z[d+20>>2]=C(C(C(f*j)-C(n*g))-C(h*o))-C(i*p);z[d+16>>2]=C(C(g*o)+C(C(f*p)+C(i*j)))-C(n*h);z[d+12>>2]=C(C(i*n)+C(C(f*o)+C(h*j)))-C(p*g);z[d+8>>2]=C(C(h*p)+C(C(f*n)+C(g*j)))-C(o*i);j=C(q+q);n=C(y+y);o=C(w+w);p=C(C(i*j)+C(C(g*n)+C(h*o)));q=C(C(f*f)+C(-.5));z[d+32>>2]=z[d+88>>2]+C(C(i*p)+C(C(j*q)+C(f*C(C(g*o)-C(n*h)))));z[d+28>>2]=z[d+84>>2]+C(C(h*p)+C(C(o*q)+C(f*C(C(i*n)-C(j*g)))));z[d+24>>2]=z[d+80>>2]+C(C(g*p)+C(C(n*q)+C(f*C(C(h*j)-C(o*i)))));dV(d+40|0,u&1?t- -64|0:r+116|0,d+8|0,C(1));f=z[d+40>>2];g=z[d+44>>2];h=z[e+16>>2];i=z[d+48>>2];z[e+16>>2]=hk?k:g;z[e+12>>2]=k;l=f>l?l:f;z[e+8>>2]=l;f=z[d+52>>2];g=z[d+56>>2];h=z[e+28>>2];i=z[d+60>>2];z[e+28>>2]=h>i?h:i;h=z[e+24>>2];z[e+24>>2]=g>2];z[e+20>>2]=f>2];g=z[e+20>>2];h=z[e+8>>2];i=z[e+12>>2];k=z[e+16>>2];l=z[e+28>>2];j=C(C(k+l)*C(.5));k=C(C(C(l-k)*C(.5))*c);z[a+20>>2]=j+k;l=C(C(i+f)*C(.5));f=C(C(C(f-i)*C(.5))*c);z[a+16>>2]=l+f;i=C(C(h+g)*C(.5));c=C(C(C(g-h)*C(.5))*c);z[a+12>>2]=i+c;z[a+8>>2]=j-k;z[a+4>>2]=l-f;z[a>>2]=i-c;xa=e+32|0}function Ln(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0,p=0,q=0,r=0,s=0,x=0,A=C(0);h=v[37389];f=xa-16|0;xa=f;a=v[37696];c=a+12|0;a=Q_((p=c,q=100,r=Ba[v[v[a>>2]+20>>2]](a)|0?45527:63804,s=5452,x=580,o=v[v[c>>2]+8>>2],Ba[o](p|0,q|0,r|0,s|0,x|0)|0),h);c=xa-16|0;xa=c;if(t[a+6|0]&1){e=v[a+60>>2];if(e){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e)}v[a+60>>2]=0}e=0;a:{if(!qX(72,70,72,70,c+12|0,c+11|0,b)){break a}o=a,x=gX(w[c+11|0],b),v[o+40>>2]=x;o=a,x=gX(w[c+11|0],b),v[o+44>>2]=x;o=a,A=hX(w[c+11|0],b),z[o+48>>2]=A;o=a,A=hX(w[c+11|0],b),z[o+52>>2]=A;o=a,A=hX(w[c+11|0],b),z[o+56>>2]=A;hX(w[c+11|0],b);o=a- -64|0,A=hX(w[c+11|0],b),z[o>>2]=A;o=a,x=fX(w[c+11|0],b),u[o+68>>1]=x;o=a,x=gX(w[c+11|0],b),v[o+72>>2]=x;g=hX(w[c+11|0],b);i=hX(w[c+11|0],b);j=hX(w[c+11|0],b);k=hX(w[c+11|0],b);l=hX(w[c+11|0],b);m=hX(w[c+11|0],b);z[a+32>>2]=C(l-i)*C(.5);z[a+28>>2]=C(k-g)*C(.5);z[a+20>>2]=C(i+l)*C(.5);z[a+16>>2]=C(g+k)*C(.5);z[a+36>>2]=C(m-j)*C(.5);z[a+24>>2]=C(j+m)*C(.5);o=a,x=gX(w[c+11|0],b),v[o+76>>2]=x;o=a,x=gX(w[c+11|0],b),v[o+80>>2]=x;o=a,A=hX(w[c+11|0],b),z[o+84>>2]=A;g=hX(w[c+11|0],b);v[a+60>>2]=0;z[a+88>>2]=g;e=1;d=B(v[a+44>>2],v[a+40>>2]);if(!d){break a}b:{d=d<<2;if(d){n=v[37696];d=Ba[v[v[n+12>>2]+8>>2]](n+12|0,d,24422,12435,259)|0;v[a+60>>2]=d;if(d){break b}}e=0;a9(v[37696],16,12435,262,76028,0);break a}Ba[v[v[b>>2]>>2]](b,d,v[a+80>>2]<<2)|0;if(!w[c+11|0]|!v[a+80>>2]){break a}b=0;while(1){e=v[a+60>>2]+(b<<2)|0;d=w[e+1|0];t[e+1|0]=w[e|0];t[e|0]=d;e=1;b=b+1|0;if(b>>>0>2]){continue}break}}xa=c+16|0;c:{if(!e){b=v[a+12>>2]-1|0;v[a+12>>2]=b;if(b){a=0;break c}Ba[v[v[a+8>>2]+8>>2]](a+8|0);a=0;break c}v[f+8>>2]=a;b=qh(h+88|0,f+8|0,f+15|0);if(!w[f+15|0]){v[b>>2]=v[f+8>>2]}}xa=f+16|0;return a|0}function at(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=C(0),m=0;i=xa-96|0;xa=i;m=x[f+16>>1];v[i+92>>2]=-1;j=-1;if(e){j=mu(rh(v[e+4>>2]),v[e>>2],i+92|0)}k=a+5584|0;LE(k);v[c+80>>2]=0;t[c+68|0]=0;l=z[b+8>>2];d=x[d>>1];v[i+48>>2]=h;z[i+44>>2]=l;v[i+40>>2]=g;u[i+32>>1]=d;v[i+28>>2]=c;v[i+24>>2]=b;v[i+20>>2]=a;v[i+16>>2]=126672;e=d&64;d=m&16;u[i+52>>1]=((e|d)!=0)<<6;t[i+54|0]=1;v[i+36>>2]=f;e=x[f+16>>1];v[i+88>>2]=0;t[i+84|0]=0;t[i+58|0]=0;t[i+57|0]=d>>>4;d=e>>>5&1;t[i+56|0]=d;t[i+55|0]=d;a:{b:{c:{if(!(v[c+76>>2]|(j|0)==-1)){d=HE(k,v[i+92>>2],j);t[i+58|0]=1;d=bt(i+16|0,i+12|0,d);t[i+58|0]=0;if(!d){break c}e=x[f+16>>1]}d=i+44|0;g=v[a+5656>>2];a=v[a+5620>>2];d:{if(!(e&1)){break d}h=v[k>>2];if(Ba[v[v[h>>2]+24>>2]](h,v[b>>2],v[b+4>>2],d,i+16|0)|0){break d}b=w[c+68|0];e=v[c+80>>2];f=(b|e)!=0;break b}e:{if(!(e&2)){break e}if(Ba[v[v[a>>2]+24>>2]](a,v[b>>2],v[b+4>>2],d,i+16|0)|0){break e}f=(w[c+68|0]|v[c+80>>2])!=0;break a}a=v[b+4>>2];b=v[b>>2];u[i+8>>1]=x[f+16>>1];a=Ba[v[v[g>>2]+24>>2]](g,b,a,d,i+16|0,i+8|0)|0;b=w[c+68|0];e=v[c+80>>2];f=(b|e)!=0;if(!a){break a}break b}b=w[c+68|0];e=v[c+80>>2];f=(b|e)!=0}if(b){if(!e){break a}l=z[c+44>>2];g=v[c+72>>2];a=0;while(1){b=g+(a<<6)|0;f:{if(l>2]){e=e-1|0;d=g+(e<<6)|0;h=v[d+4>>2];v[b>>2]=v[d>>2];v[b+4>>2]=h;v[b+8>>2]=v[d+8>>2];u[b+12>>1]=x[d+12>>1];z[b+16>>2]=z[d+16>>2];z[b+20>>2]=z[d+20>>2];z[b+24>>2]=z[d+24>>2];z[b+28>>2]=z[d+28>>2];z[b+32>>2]=z[d+32>>2];z[b+36>>2]=z[d+36>>2];z[b+40>>2]=z[d+40>>2];v[b+60>>2]=v[d+60>>2];h=v[d+56>>2];v[b+52>>2]=v[d+52>>2];v[b+56>>2]=h;h=v[d+48>>2];v[b+44>>2]=v[d+44>>2];v[b+48>>2]=h;break f}a=a+1|0}if((a|0)!=(e|0)){continue}break}v[c+80>>2]=e}if(!e){break a}if(!(Ba[v[v[c>>2]>>2]](c,v[c+72>>2],e)|0)){break a}v[c+80>>2]=0}Ba[v[v[c>>2]+4>>2]](c);xa=i+96|0;return f}function PR(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=C(0),n=C(0),o=C(0);j=xa-32|0;xa=j;u[b>>1]=f;l=b+i|0;u[l+2>>1]=h;t[l|0]=3;h=l+4|0;a:{if(!(c&8192)){b=h;break a}t[h|0]=1;b=h+52|0;if(!f){u[a+10>>1]=x[a+10>>1]|8;break a}k=v[d+44>>2];b:{if(w[k+9|0]){z[h+4>>2]=z[k+80>>2];z[h+8>>2]=z[k+84>>2];z[h+12>>2]=z[k+88>>2];n=z[k+100>>2];o=z[k+96>>2];m=z[k+104>>2];break b}v[h+4>>2]=0;v[h+8>>2]=0;v[h+12>>2]=0;m=C(0)}z[h+28>>2]=o;z[h+36>>2]=m;z[h+32>>2]=n;k=v[e+44>>2];if(w[k+9|0]){z[h+16>>2]=z[k+80>>2];z[h+20>>2]=z[k+84>>2];z[h+24>>2]=z[k+88>>2];z[h+40>>2]=z[k+96>>2];z[h+44>>2]=z[k+100>>2];z[h+48>>2]=z[k+104>>2];break a}v[h+48>>2]=0;v[h+40>>2]=0;v[h+44>>2]=0;v[h+24>>2]=0;v[h+16>>2]=0;v[h+20>>2]=0}if(c&4096){t[b|0]=0;c:{d:{e:{f:{h=v[d+44>>2];g:{if(w[h+9|0]){if(f){BO(j,d- -64|0);z[b+4>>2]=z[j>>2];z[b+8>>2]=z[j+4>>2];z[b+12>>2]=z[j+8>>2];z[b+28>>2]=z[j+16>>2];z[b+32>>2]=z[j+20>>2];z[b+36>>2]=z[j+24>>2];h=v[e+44>>2];if(!w[h+9|0]){break g}if(w[b|0]==1){break d}break e}z[b+4>>2]=z[h+80>>2];z[b+8>>2]=z[h+84>>2];z[b+12>>2]=z[h+88>>2];z[b+28>>2]=z[h+96>>2];z[b+32>>2]=z[h+100>>2];z[b+36>>2]=z[h+104>>2];h=v[e+44>>2];if(!w[h+9|0]){break g}break d}v[b+28>>2]=0;v[b+32>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+36>>2]=0;v[b+12>>2]=0;h=v[e+44>>2];if(w[h+9|0]){break f}}v[b+48>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;break c}if(!f){break d}}BO(j,e- -64|0);z[b+16>>2]=z[j>>2];z[b+20>>2]=z[j+4>>2];z[b+24>>2]=z[j+8>>2];z[b+40>>2]=z[j+16>>2];z[b+44>>2]=z[j+20>>2];z[b+48>>2]=z[j+24>>2];break c}z[b+16>>2]=z[h+80>>2];z[b+20>>2]=z[h+84>>2];z[b+24>>2]=z[h+88>>2];z[b+40>>2]=z[h+96>>2];z[b+44>>2]=z[h+100>>2];z[b+48>>2]=z[h+104>>2]}b=b+52|0}if(c&16384){t[b|0]=2;c=(f|0)!=0;QR(b,0,d,c,g);QR(b,1,e,c,g);b=b+60|0}u[a+8>>1]=(i-l|0)+b;xa=j+32|0}function ny(a,b,c,d,e,f,g,h,i,j,k,l){var m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0);n=xa-32|0;xa=n;E=x[b+8>>1];a:{if((E|0)==65535){o=z[c>>2];r=z[c+4>>2];m=z[c+8>>2];s=z[e>>2];t=z[v[b+4>>2]+12>>2];v[d+12>>2]=0;p=m;m=C(t*s);s=C(p*m);z[d+8>>2]=s;r=C(r*m);z[d+4>>2]=r;t=C(o*m);z[d>>2]=t;o=z[c+20>>2];u=z[c+24>>2];w=z[c+16>>2];m=z[f>>2];v[d+28>>2]=0;u=C(u*m);z[d+24>>2]=u;B=C(o*m);z[d+20>>2]=B;w=C(w*m);z[d+16>>2]=w;break a}b=v[b>>2];s=z[c+20>>2];r=z[c+24>>2];t=z[c>>2];u=z[c+4>>2];m=z[e>>2];B=z[c+8>>2];w=z[c+16>>2];o=z[f>>2];v[n+28>>2]=0;z[n+24>>2]=r*o;z[n+20>>2]=s*o;v[n+12>>2]=0;z[n+16>>2]=w*o;z[n+8>>2]=B*m;z[n+4>>2]=u*m;z[n>>2]=t*m;Ba[v[v[b>>2]+108>>2]](b,E,l,n,d);u=z[d+24>>2];B=z[d+20>>2];w=z[d+16>>2];s=z[d+8>>2];r=z[d+4>>2];t=z[d>>2]}F=z[c+24>>2];G=z[c+20>>2];H=z[c+16>>2];I=z[c+8>>2];J=z[c+4>>2];K=z[c>>2];c=x[g+8>>1];b:{if((c|0)==65535){y=z[h>>2];A=z[h+4>>2];m=z[h+8>>2];o=z[j>>2];q=z[v[g+4>>2]+12>>2];v[i+12>>2]=0;p=m;m=C(q*o);o=C(p*m);z[i+8>>2]=o;A=C(A*m);z[i+4>>2]=A;y=C(y*m);z[i>>2]=y;p=z[h+20>>2];q=z[h+24>>2];D=z[h+16>>2];m=z[k>>2];v[i+28>>2]=0;q=C(q*m);z[i+24>>2]=q;p=C(p*m);z[i+20>>2]=p;m=C(D*m);z[i+16>>2]=m;break b}b=v[g>>2];A=z[h+20>>2];y=z[h+24>>2];q=z[h>>2];p=z[h+4>>2];m=z[j>>2];D=z[h+8>>2];L=z[h+16>>2];o=z[k>>2];v[n+28>>2]=0;z[n+24>>2]=y*o;z[n+20>>2]=A*o;v[n+12>>2]=0;z[n+16>>2]=L*o;z[n+8>>2]=D*m;z[n+4>>2]=p*m;z[n>>2]=q*m;Ba[v[v[b>>2]+108>>2]](b,c,l,n,i);q=z[i+24>>2];p=z[i+20>>2];m=z[i+16>>2];o=z[i+8>>2];A=z[i+4>>2];y=z[i>>2]}z[a>>2]=C(C(C(C(K*t)+C(H*w))+C(C(z[h>>2]*y)+C(z[h+16>>2]*m)))+C(C(C(J*r)+C(G*B))+C(C(z[h+4>>2]*A)+C(z[h+20>>2]*p))))+C(C(C(I*s)+C(F*u))+C(C(z[h+8>>2]*o)+C(z[h+24>>2]*q)));xa=n+32|0}function kB(a,b,c,d,e,f,g,h,i,j,k){var l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0);m=xa-32|0;xa=m;D=x[b+12>>1];a:{if((D|0)==65535){n=z[c>>2];q=z[c+4>>2];l=z[c+8>>2];r=z[e>>2];s=z[v[b+8>>2]+32>>2];v[d+12>>2]=0;o=l;l=C(s*r);r=C(o*l);z[d+8>>2]=r;q=C(q*l);z[d+4>>2]=q;s=C(n*l);z[d>>2]=s;n=z[c+20>>2];t=z[c+24>>2];u=z[c+16>>2];l=z[f>>2];v[d+28>>2]=0;t=C(t*l);z[d+24>>2]=t;A=C(n*l);z[d+20>>2]=A;u=C(u*l);z[d+16>>2]=u;break a}b=v[b>>2];r=z[c+20>>2];q=z[c+24>>2];s=z[c>>2];t=z[c+4>>2];l=z[e>>2];A=z[c+8>>2];u=z[c+16>>2];n=z[f>>2];v[m+28>>2]=0;z[m+24>>2]=q*n;z[m+20>>2]=r*n;v[m+12>>2]=0;z[m+16>>2]=u*n;z[m+8>>2]=A*l;z[m+4>>2]=t*l;z[m>>2]=s*l;Ba[v[v[b>>2]+108>>2]](b,D,0,m,d);t=z[d+24>>2];A=z[d+20>>2];u=z[d+16>>2];r=z[d+8>>2];q=z[d+4>>2];s=z[d>>2]}E=z[c+24>>2];F=z[c+20>>2];G=z[c+16>>2];H=z[c+8>>2];I=z[c+4>>2];J=z[c>>2];c=x[g+12>>1];b:{if((c|0)==65535){w=z[h>>2];y=z[h+4>>2];l=z[h+8>>2];n=z[j>>2];p=z[v[g+8>>2]+32>>2];v[i+12>>2]=0;o=l;l=C(p*n);n=C(o*l);z[i+8>>2]=n;y=C(y*l);z[i+4>>2]=y;w=C(w*l);z[i>>2]=w;o=z[h+20>>2];p=z[h+24>>2];B=z[h+16>>2];l=z[k>>2];v[i+28>>2]=0;p=C(p*l);z[i+24>>2]=p;o=C(o*l);z[i+20>>2]=o;l=C(B*l);z[i+16>>2]=l;break b}b=v[g>>2];y=z[h+20>>2];w=z[h+24>>2];p=z[h>>2];o=z[h+4>>2];l=z[j>>2];B=z[h+8>>2];K=z[h+16>>2];n=z[k>>2];v[m+28>>2]=0;z[m+24>>2]=w*n;z[m+20>>2]=y*n;v[m+12>>2]=0;z[m+16>>2]=K*n;z[m+8>>2]=B*l;z[m+4>>2]=o*l;z[m>>2]=p*l;Ba[v[v[b>>2]+108>>2]](b,c,0,m,i);p=z[i+24>>2];o=z[i+20>>2];l=z[i+16>>2];n=z[i+8>>2];y=z[i+4>>2];w=z[i>>2]}z[a>>2]=C(C(C(C(J*s)+C(G*u))+C(C(z[h>>2]*w)+C(z[h+16>>2]*l)))+C(C(C(I*q)+C(F*A))+C(C(z[h+4>>2]*y)+C(z[h+20>>2]*o))))+C(C(C(H*r)+C(E*t))+C(C(z[h+8>>2]*n)+C(z[h+24>>2]*p)));xa=m+32|0}function OD(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0;o=xa-48|0;xa=o;f=v[a+4>>2];if(f){i=z[b+84>>2];j=z[b+76>>2];k=z[b+88>>2];l=z[b+72>>2];m=z[b+92>>2];n=z[b+80>>2];z[o+40>>2]=C(m-n)*C(.5);z[o+36>>2]=C(k-j)*C(.5);z[o+32>>2]=C(i-l)*C(.5);g=v[a+292>>2];h=v[a+296>>2];z[o+16>>2]=C(m+n)*C(.5);z[o+12>>2]=C(k+j)*C(.5);z[o+8>>2]=C(i+l)*C(.5);f=PD(h,g,f,o+8|0,c,d,o+32|0,e)}else{f=1}if(!(!f|!w[a+336|0]|(v[a+156>>2]+v[a+108>>2]|0)==(0-v[a+216>>2]|0))){g=xa+-64|0;xa=g;a:{if(v[a+156>>2]!=(0-v[a+108>>2]|0)){f=xa-48|0;xa=f;h=1;p=v[a+68>>2];if(!(!p|!v[p+588>>2])){i=z[b+72>>2];j=z[b+84>>2];k=z[b+76>>2];l=z[b+88>>2];m=z[b+92>>2];n=z[b+80>>2];z[f+40>>2]=C(m-n)*C(.5);z[f+36>>2]=C(l-k)*C(.5);z[f+32>>2]=C(j-i)*C(.5);h=v[a+160>>2];q=v[h+8>>2];h=v[h+12>>2];z[f+16>>2]=C(m+n)*C(.5);z[f+12>>2]=C(l+k)*C(.5);z[f+8>>2]=C(j+i)*C(.5);h=gD(h,q,p,f+8|0,c,d,f+32|0,e)}p=v[a+116>>2];if(!(!p|(!v[p+588>>2]|h^1))){i=z[b+72>>2];j=z[b+84>>2];k=z[b+76>>2];l=z[b+88>>2];m=z[b+92>>2];n=z[b+80>>2];z[f+40>>2]=C(m-n)*C(.5);z[f+36>>2]=C(l-k)*C(.5);z[f+32>>2]=C(j-i)*C(.5);h=v[a+160>>2];q=v[h+8>>2];h=v[h+12>>2];z[f+16>>2]=C(m+n)*C(.5);z[f+12>>2]=C(l+k)*C(.5);z[f+8>>2]=C(j+i)*C(.5);h=gD(h,q,p,f+8|0,c,d,f+32|0,e)}xa=f+48|0;if(!h){break a}}if(!v[a+216>>2]){r=1;break a}i=z[b+84>>2];j=z[b+76>>2];k=z[b+88>>2];l=z[b+72>>2];m=z[b+92>>2];n=z[b+80>>2];z[g+56>>2]=C(m-n)*C(.5);z[g+52>>2]=C(k-j)*C(.5);z[g+48>>2]=C(i-l)*C(.5);z[g+40>>2]=C(m+n)*C(.5);z[g+36>>2]=C(k+j)*C(.5);z[g+32>>2]=C(i+l)*C(.5);v[g+28>>2]=v[a+176>>2];v[g+24>>2]=e;v[g+16>>2]=c;v[g+8>>2]=129932;b=g+48|0;v[g+20>>2]=b;e=g+32|0;v[g+12>>2]=e;r=PD(v[a+252>>2],v[a+248>>2],v[a+220>>2],e,c,d,b,g+8|0)}xa=g- -64|0;f=r}xa=o+48|0;return f|0}function hx(a,b,c,d,e,f){var g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=0,U=0;i=xa-32|0;xa=i;v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;if(!b){A=z[d+448>>2];D=z[d+460>>2];E=z[d+472>>2];F=z[d+452>>2];G=z[d+464>>2];H=z[d+476>>2];I=z[d+456>>2];J=z[d+468>>2];K=z[d+480>>2];L=z[d+508>>2];M=z[d+496>>2];N=z[d+484>>2];p=z[d+416>>2];q=z[d+420>>2];O=z[d+512>>2];P=z[d+500>>2];Q=z[d+488>>2];r=z[d+424>>2];s=z[d+428>>2];t=z[d+432>>2];u=z[d+412>>2];w=z[d+436>>2];n=z[e+16>>2];o=C(-n);x=z[d+440>>2];j=z[e+20>>2];y=z[d+444>>2];h=z[e+24>>2];k=C(-z[e+4>>2]);l=z[e>>2];m=z[e+8>>2];z[a+24>>2]=C(C(C(w*o)-C(x*j))-C(y*h))+C(C(C(z[d+504>>2]*k)-C(l*z[d+492>>2]))-C(m*z[d+516>>2]));z[a+20>>2]=C(C(C(r*o)-C(s*j))-C(t*h))+C(C(C(P*k)-C(l*Q))-C(m*O));z[a+16>>2]=C(C(C(u*o)-C(p*j))-C(q*h))+C(C(C(M*k)-C(l*N))-C(m*L));j=C(-j);z[a+8>>2]=C(C(C(t*k)-C(l*q))-C(m*y))+C(C(C(J*j)-C(n*I))-C(h*K));z[a+4>>2]=C(C(C(s*k)-C(l*p))-C(m*x))+C(C(C(G*j)-C(n*F))-C(h*H));z[a>>2]=C(C(C(r*k)-C(l*u))-C(m*w))+C(C(C(D*j)-C(n*A))-C(h*E))}c=v[d+332>>2]+(c<<5)|0;g=v[c+8>>2];b=g-1|0;c=v[c+12>>2]-!g|0;if(b|c){while(1){R=v[d+340>>2];g=b;g=(S=Qaa(g),T=Qaa(c)+32|0,U=g,U?S:T);Yw(i,(R+B(g,160)|0)+120|0,v[d+236>>2]+B(g,112)|0,v[d+248>>2]+B(g,36)|0,v[d+272>>2]+B(g,76)|0,(g<<5)+e|0,(v[(v[d+344>>2]+B(g,80)|0)+72>>2]<<2)+f|0,a);z[a>>2]=z[i>>2];z[a+4>>2]=z[i+4>>2];h=z[i+8>>2];v[a+12>>2]=0;z[a+8>>2]=h;z[a+16>>2]=z[i+16>>2];z[a+20>>2]=z[i+20>>2];h=z[i+24>>2];v[a+28>>2]=0;z[a+24>>2]=h;g=b;b=g-1&g;c=c&c-!g;if(b|c){continue}break}}xa=i+32|0}function gZ(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);g=xa-80|0;xa=g;k=z[d+48>>2];z[g+64>>2]=k;h=z[d+52>>2];z[g+68>>2]=h;i=z[d+56>>2];z[g+72>>2]=i;z[g+56>>2]=-i;z[g+52>>2]=-h;z[g+48>>2]=-k;k=z[d+20>>2];h=z[d+16>>2];i=z[d+8>>2];m=z[d>>2];p=z[d+4>>2];q=z[d+12>>2];r=z[d+32>>2];l=z[e+8>>2];s=z[d+24>>2];n=z[e>>2];o=z[e+4>>2];t=z[d+28>>2];z[g+40>>2]=-C(C(r*l)+C(C(s*n)+C(o*t)));z[g+36>>2]=-C(C(k*l)+C(C(q*n)+C(o*h)));z[g+32>>2]=-C(C(i*l)+C(C(m*n)+C(p*o)));l=C(z[b+8>>2]-z[d+44>>2]);n=C(z[b>>2]-z[d+36>>2]);o=C(z[b+4>>2]-z[d+40>>2]);z[g+24>>2]=C(r*l)+C(C(s*n)+C(t*o));z[g+20>>2]=C(k*l)+C(C(q*n)+C(o*h));z[g+16>>2]=C(i*l)+C(C(m*n)+C(o*p));k=C(c+f);a:{if((q$(g+48|0,g- -64|0,g+16|0,g+32|0,g+12|0,g+8|0)|0)==-1){break a}f=z[g+12>>2];if(!(f>2];if(j>>>0>63){break a}p=z[b>>2];q=z[b+4>>2];l=z[b+8>>2];h=z[e>>2];i=z[e+4>>2];m=z[e+8>>2];v[a+4096>>2]=j+1;j=(j<<6)+a|0;z[j+8>>2]=m;z[j+4>>2]=i;z[j>>2]=h;v[j+52>>2]=-1;z[j+12>>2]=f-c;z[j+24>>2]=l-C(f*m);z[j+20>>2]=q-C(f*i);z[j+16>>2]=p-C(f*h)}m=z[d+8>>2];p=z[d>>2];q=z[d+4>>2];l=z[d+20>>2];n=z[d+12>>2];o=z[d+16>>2];f=C(z[b+20>>2]-z[d+44>>2]);h=C(z[b+12>>2]-z[d+36>>2]);i=C(z[b+16>>2]-z[d+40>>2]);z[g+24>>2]=C(z[d+32>>2]*f)+C(C(z[d+24>>2]*h)+C(i*z[d+28>>2]));z[g+20>>2]=C(l*f)+C(C(n*h)+C(i*o));z[g+16>>2]=C(m*f)+C(C(p*h)+C(i*q));b:{if((q$(g+48|0,g- -64|0,g+16|0,g+32|0,g+12|0,g+8|0)|0)==-1){break b}f=z[g+12>>2];if(!(f>2];if(d>>>0>63){break b}m=z[b+12>>2];p=z[b+16>>2];q=z[b+20>>2];k=z[e>>2];h=z[e+4>>2];i=z[e+8>>2];v[a+4096>>2]=d+1;a=(d<<6)+a|0;z[a+8>>2]=i;z[a+4>>2]=h;z[a>>2]=k;v[a+52>>2]=-1;z[a+12>>2]=f-c;z[a+24>>2]=q-C(f*i);z[a+20>>2]=p-C(f*h);z[a+16>>2]=m-C(f*k)}xa=g+80|0}function gK(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;e=xa-32|0;xa=e;v[e+28>>2]=c;if(b){v[b+16>>2]=a;Ba[v[v[b>>2]+32>>2]](b)}a:{b:{c:{d:{if(!v[a+48>>2]){break d}f=v[a+32>>2];i=5381;g=w[c|0];if(g){h=c;while(1){i=B(i,33)^g&255;g=w[h+1|0];h=h+1|0;if(g){continue}break}}g=v[v[a+24>>2]+((f-1&i)<<2)>>2];if((g|0)==-1){break d}i=v[a+20>>2];h=v[a+16>>2];while(1){if(!S9(v[h+(g<<3)>>2],c)){break c}g=v[i+(g<<2)>>2];if((g|0)!=-1){continue}break}}v[a+52>>2]=v[a+52>>2]+1;g=v[a+76>>2];c=0;e:{f:{f=a+12|0;k=v[f+20>>2];g:{if(!k){break g}i=5381;h=v[e+28>>2];j=w[h|0];if(j){c=h;while(1){i=B(i,33)^j&255;j=w[c+1|0];c=c+1|0;if(j){continue}break}}c=k-1&i;j=v[v[f+12>>2]+(c<<2)>>2];if((j|0)==-1){break g}l=v[f+8>>2];m=v[f+4>>2];while(1){i=(j<<3)+m|0;if(!S9(v[i>>2],h)){break f}j=v[l+(j<<2)>>2];if((j|0)!=-1){continue}break}}t[e+8|0]=0;if(v[f+36>>2]==v[f+16>>2]){c=k?k<<1:16;if(c>>>0>k>>>0){XJ(f,c);k=v[f+20>>2]}i=5381;j=v[e+28>>2];c=w[j|0];if(c){while(1){i=B(i,33)^c&255;c=w[j+1|0];j=j+1|0;if(c){continue}break}}c=k-1&i}h=v[f+28>>2];v[f+28>>2]=h+1;c=v[f+12>>2]+(c<<2)|0;v[v[f+8>>2]+(h<<2)>>2]=v[c>>2];v[c>>2]=h;v[f+36>>2]=v[f+36>>2]+1;v[f+32>>2]=v[f+32>>2]+1;c=v[f+4>>2]+(h<<3)|0;break e}t[e+8|0]=1;c=i}if(!w[e+8|0]){h=v[e+28>>2];v[c+4>>2]=0;v[c>>2]=h}v[c+4>>2]=g;if(b){v[b+20>>2]=g}v[e+20>>2]=-1;v[e+24>>2]=-1;v[e+12>>2]=1;v[e+16>>2]=d;v[e+8>>2]=b;b=v[a+76>>2];if(b>>>0<(v[a+80>>2]&2147483647)>>>0){break b}hK(a+72|0,e+8|0);break a}g=v[(h+(g<<3)|0)+4>>2];if(!b){break a}a=v[a+72>>2]+B(g,20)|0;v[a+8>>2]=d;v[a>>2]=b;v[b+20>>2]=g;break a}c=v[e+12>>2];b=v[a+72>>2]+B(b,20)|0;v[b>>2]=v[e+8>>2];v[b+4>>2]=c;v[b+16>>2]=v[e+24>>2];c=v[e+20>>2];v[b+8>>2]=v[e+16>>2];v[b+12>>2]=c;v[a+76>>2]=v[a+76>>2]+1}xa=e+32|0;return g|0}function B2(a,b,c,d,e,f){var g=0,h=C(0),i=0,j=0,k=C(0),l=0;a:{b:{switch(f-1|0){case 0:v[a>>2]=2139095039;k=C(34028234663852886e22);d=-1;while(1){f=v[e+48>>2];i=v[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=z[((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=z[((f<<6)+c|0)+44>>2];if(h>2]=h;k=h;d=f}g=f+1|0;h=z[((g<<6)+c|0)+44>>2];if(h>2]=h;k=h;d=g}g=f+2|0;h=z[((g<<6)+c|0)+44>>2];if(h>2]=h;k=h;d=g}g=f+3|0;h=z[((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=v[e+16>>2];if(e){continue}break};c=(d<<6)+c|0;a=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=a;v[b+48>>2]=v[c+48>>2];a=v[c+44>>2];v[b+40>>2]=v[c+40>>2];v[b+44>>2]=a;a=v[c+36>>2];v[b+32>>2]=v[c+32>>2];v[b+36>>2]=a;a=v[c+28>>2];v[b+24>>2]=v[c+24>>2];v[b+28>>2]=a;a=v[c+20>>2];v[b+16>>2]=v[c+16>>2];v[b+20>>2]=a;a=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=a;v[b+384>>2]=1;return;default:if(y[e+56>>2]<=6){break a}x2(a,b,c,d,e);v[b+384>>2]=6;return;case 2:break b}}if(y[e+56>>2]<=3){break a}y2(a,b,c,d,e);v[b+384>>2]=3;return}f=0;d=e;while(1){l=v[d+48>>2];if(l>>>0>2]){while(1){i=(l<<6)+c|0;g=v[i+4>>2];j=(f<<6)+b|0;v[j>>2]=v[i>>2];v[j+4>>2]=g;v[j+48>>2]=v[i+48>>2];g=v[i+44>>2];v[j+40>>2]=v[i+40>>2];v[j+44>>2]=g;g=v[i+36>>2];v[j+32>>2]=v[i+32>>2];v[j+36>>2]=g;g=v[i+28>>2];v[j+24>>2]=v[i+24>>2];v[j+28>>2]=g;g=v[i+20>>2];v[j+16>>2]=v[i+16>>2];v[j+20>>2]=g;g=v[i+12>>2];v[j+8>>2]=v[i+8>>2];v[j+12>>2]=g;f=f+1|0;l=l+1|0;if(l>>>0>2]){continue}break}}d=v[d+16>>2];if(d){continue}break}v[b+384>>2]=f;b=v[e+44>>2];v[a+8>>2]=v[e+40>>2];v[a+12>>2]=b;b=v[e+36>>2];v[a>>2]=v[e+32>>2];v[a+4>>2]=b}function qL(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=xa-32|0;xa=e;j=v[a+76>>2];h=j+(c<<3)|0;a:{if(!(t[h+4|0]&1)){c=v[h>>2];if(c>>>0>=y[a+120>>2]){t[a+169|0]=1}g=v[a+100>>2];i=v[a+116>>2];if(i>>>0<=c>>>0){b:{if((c|0)!=(i|0)){k=v[a+108>>2];d=g+B(i,24)|0;f=v[d+20>>2];v[e+24>>2]=v[d+16>>2];v[e+28>>2]=f;f=v[d+12>>2];v[e+16>>2]=v[d+8>>2];v[e+20>>2]=f;f=v[d+4>>2];v[e+8>>2]=v[d>>2];v[e+12>>2]=f;f=v[b+20>>2];v[d+16>>2]=v[b+16>>2];v[d+20>>2]=f;f=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=f;f=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=f;d=v[e+20>>2];b=g+B(c,24)|0;v[b+8>>2]=v[e+16>>2];v[b+12>>2]=d;d=v[e+28>>2];v[b+16>>2]=v[e+24>>2];v[b+20>>2]=d;d=v[e+12>>2];v[b>>2]=v[e+8>>2];v[b+4>>2]=d;d=(i<<1)+k|0;b=x[d>>1];f=d;d=(c<<1)+k|0;u[f>>1]=x[d>>1];u[d>>1]=b;v[(b<<3)+j>>2]=c;v[h>>2]=i;break b}d=v[b+4>>2];c=g+B(c,24)|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d}v[a+116>>2]=v[a+116>>2]+1;break a}a=g+B(c,24)|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;c=v[b+20>>2];v[a+16>>2]=v[b+16>>2];v[a+20>>2]=c;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c;break a}d=v[b+4>>2];c=v[a+96>>2]+B(v[h>>2],24)|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;t[a+168|0]=1;g=v[a+128>>2];d=v[h>>2];i=d>>>5|0;c:{if(g>>>0>i>>>0){h=d&31;b=v[a+124>>2];break c}c=0;b=0;h=d&31;d=(d+128>>>5|0)+((h|0)!=0)|0;if(d){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,d<<2,24422,13406,274)|0;g=v[a+128>>2]}if(g){H9(b,v[a+124>>2],g<<2);c=v[a+128>>2]}if((c|0)!=(d|0)){I9((c<<2)+b|0,0,d-c<<2)}c=v[a+124>>2];if(c){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}v[a+128>>2]=d;v[a+124>>2]=b}a=(i<<2)+b|0;v[a>>2]=v[a>>2]|1<>2];f=v[b>>2];l=v[f+12144>>2];c=v[b+8>>2];a:{if(!(c&2147483647)){g=v[f+11956>>2];break a}g=w[l+49|0];if(c&2147483646){i=v[f+12132>>2];k=1;m=64;while(1){h=k<<6;j=w[(B(k,52)+l|0)+49|0];if(h>>>0>>0){if(j&1){b=(h<<5)+i|0;d=v[b+4>>2];c=(g<<5)+i|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[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=v[b+4>>2];c=(g<<5)+i|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;d=v[b+36>>2];v[c+32>>2]=v[b+32>>2];v[c+36>>2]=d;d=v[b+60>>2];v[c+56>>2]=v[b+56>>2];v[c+60>>2]=d;d=v[b+44>>2];v[c+40>>2]=v[b+40>>2];v[c+44>>2]=d;d=v[b+52>>2];v[c+48>>2]=v[b+48>>2];v[c+52>>2]=d;g=g+2|0;h=h+2|0;if((j|0)!=(h|0)){continue}break}}b=v[a+32>>2]}m=m- -64|0;k=k+1|0;if(k>>>0<(v[b+8>>2]&2147483647)>>>0){continue}break}}g=v[f+11956>>2]+g|0;v[f+11956>>2]=g}c=v[a+92>>2];h=v[v[a+28>>2]+440>>2];v[f+11868>>2]=0;v[f+11872>>2]=0;i=f+11876|0;v[i>>2]=0;v[i+4>>2]=0;i=f+11884|0;v[i>>2]=0;v[i+4>>2]=0;b:{if(g){v[e+20>>2]=v[f+11952>>2];v[e+12>>2]=l;v[e+8>>2]=32;v[e>>2]=h+(c<<5);v[e+16>>2]=v[f+12148>>2];b=v[b+4>>2];v[e+24>>2]=g;v[e+4>>2]=b;v[e+28>>2]=v[f+11960>>2];b=v[f+11972>>2];v[e+44>>2]=0;v[e+32>>2]=b;v[e+52>>2]=f+11916;v[e+48>>2]=f+11892;v[e+36>>2]=0;v[e+40>>2]=0;t[e+56|0]=w[a+96|0];n=f,o=Py(e),v[n+12104>>2]=o;v[f+11868>>2]=v[e+36>>2];v[f+11876>>2]=v[e+40>>2];v[f+11880>>2]=v[e+44>>2];break b}I9(v[f+11892>>2],0,v[f+11900>>2]<<2)}xa=e- -64|0}function z8(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);c=z[b+8>>2];d=z[b>>2];h=z[b+4>>2];if(!(!(d!=C(0)|h!=C(0))&c==C(0))){f=z[a+44>>2];i=C(f+c);c=z[a+40>>2];m=C(h+c);e=C(-c);h=z[a+36>>2];k=C(-h);d=C(d+h);a:{if(!(d!=C(0)|m!=C(0)|i!=C(0))){i=C(C(0)-C(f*f));m=C(c*e);e=z[a+48>>2];z[a>>2]=C(C(i+m)*e)+z[a>>2];d=C(f*C(0));j=C(d+d);d=C(c*h);z[a+4>>2]=C(e*C(j+d))+z[a+4>>2];j=C(c*C(-0));g=j;j=C(f*h);z[a+8>>2]=C(e*C(g+C(g+j)))+z[a+8>>2];q=C(f*C(-0));z[a+12>>2]=C(e*C(C(q+q)+d))+z[a+12>>2];d=i;i=C(h*k);z[a+16>>2]=C(e*C(d+i))+z[a+16>>2];d=C(h*C(0));g=d;d=C(f*c);z[a+20>>2]=C(e*C(g+C(g+d)))+z[a+20>>2];k=C(c*C(0));z[a+24>>2]=C(e*C(k+C(k+j)))+z[a+24>>2];k=C(h*C(-0));z[a+28>>2]=C(e*C(k+C(d+k)))+z[a+28>>2];z[a+32>>2]=C(e*C(C(m+i)+C(0)))+z[a+32>>2];break a}j=C(C(0)-C(f*f));q=C(c*e);r=C(m*C(-m));n=C(C(0)-C(i*i));e=z[a+48>>2];z[a>>2]=C(C(C(j+q)-C(r+n))*e)+z[a>>2];o=C(f*C(0));p=C(o+o);o=C(c*h);s=C(m*d);g=C(i*C(0));z[a+4>>2]=C(e*C(C(p+o)-C(s+C(g+g))))+z[a+4>>2];g=C(c*C(-0));l=g;g=C(f*h);p=C(m*C(-0));t=p;p=C(d*i);z[a+8>>2]=C(e*C(C(l+C(l+g))-C(t+C(t+p))))+z[a+8>>2];l=C(f*C(-0));l=C(C(l+l)+o);o=C(i*C(-0));z[a+12>>2]=C(e*C(l-C(s+C(o+o))))+z[a+12>>2];k=C(h*k);l=C(j+k);j=C(d*C(-d));z[a+16>>2]=C(e*C(l-C(j+n)))+z[a+16>>2];n=C(h*C(0));f=C(f*c);l=C(n+C(n+f));n=C(d*C(0));i=C(m*i);z[a+20>>2]=C(e*C(l-C(n+C(n+i))))+z[a+20>>2];c=C(c*C(0));g=C(c+C(c+g));c=C(m*C(0));z[a+24>>2]=C(e*C(g-C(c+C(c+p))))+z[a+24>>2];c=C(h*C(-0));g=C(c+C(f+c));f=C(d*C(-0));z[a+28>>2]=C(e*C(g-C(f+C(f+i))))+z[a+28>>2];z[a+32>>2]=C(e*C(C(C(q+k)+C(0))-C(C(r+j)+C(0))))+z[a+32>>2];f=z[a+44>>2];c=z[a+40>>2]}z[a+36>>2]=h+z[b>>2];z[a+40>>2]=z[b+4>>2]+c;z[a+44>>2]=z[b+8>>2]+f}}function cR(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;g=v[a+28>>2];a=0;j=xa-48|0;xa=j;b=v[g+1e3>>2];e=v[b+432>>2];if(e){d=v[b+428>>2];while(1){c=v[b+184>>2]+B(v[d+(a<<2)>>2]>>>7|0,24)|0;f=v[c+20>>2];if(!(!f|w[c+4|0]&2)){bH(f+-64|0,0)}a=a+1|0;if((e|0)!=(a|0)){continue}break}}e=v[b+444>>2];if(e){d=v[b+440>>2];a=0;while(1){c=v[b+184>>2]+B(v[d+(a<<2)>>2]>>>7|0,24)|0;f=v[v[c+20>>2]+16>>2];if(!(!f|w[c+4|0]&2)){xG(f,0)}a=a+1|0;if((e|0)!=(a|0)){continue}break}}a=0;e=v[g+1e3>>2];k=v[e+1064>>2];if(k){m=v[e+1060>>2];while(1){d=v[(a<<2)+m>>2];c=v[g+1e3>>2];f=v[c- -64>>2];b=(d>>>0)/(f>>>0)|0;b=v[v[v[c+44>>2]+(b<<2)>>2]+(d-B(b,f)<<2)>>2];a:{if(!b|!(w[b+21|0]&32)){break a}c=v[e+700>>2];f=(d>>>0)/(c>>>0)|0;if(w[(v[v[e+680>>2]+(f<<2)>>2]+(d-B(c,f)<<4)|0)+4|0]&4){break a}b:{c:{d:{e:{f:{g:{d=w[b+20|0];switch(d|0){case 2:break b;case 0:break d;case 5:break e;case 4:break f;case 1:break g;default:break a}}if(rS(b-4|0)){break c}break a}if(NH(b)){break c}break a}t[b+21|0]=w[b+21|0]&223;break c}if(!VR(b-4|0)){break a}}d=w[b+20|0];if(d>>>0>2){break a}}f=g+(d<<2)|0;c=v[f+88>>2];if(c>>>0>=2){l=g+B(d,12)|0;i=v[l+52>>2];c=c-1|0;h=i+(c<<2)|0;d=v[h>>2];n=h;h=i;b=v[b+8>>2];i=b<<2;h=v[h+i>>2];v[n>>2]=h;v[i+v[l+52>>2]>>2]=d;v[d+8>>2]=b;v[h+8>>2]=c;c=v[f+88>>2]}v[f+88>>2]=c-1}a=a+1|0;if((k|0)!=(a|0)){continue}break}}d=j+8|0;a=v[v[g+976>>2]+1024>>2];Ba[v[v[a>>2]+84>>2]](d,a);a=v[g+2168>>2];b=v[a+28>>2];if(b){a=v[a+16>>2];while(1){b=b-1|0;g=v[a>>2];h:{if((v[g+44>>2]&1032)!=1032){break h}e=v[v[g+32>>2]+4>>2];e=w[v[e+44>>2]+9|0]-1>>>0<2?e:0;c=v[v[g+28>>2]+4>>2];if((!e|y[e+152>>2]>4294967293)&y[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+152>>2]>=4294967294){break h}RR(g,8,0,0,0,d)}a=a+4|0;if(b){continue}break}}xa=j+48|0}function w4(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=xa-16|0;xa=h;d=v[v[b+32>>2]+36>>2];v[h+12>>2]=d;e=v[c+4>>2];a:{if(e>>>0>=(v[c+8>>2]&2147483647)>>>0){x4(c,h+12|0);break a}v[v[c>>2]+(e<<2)>>2]=d;v[c+4>>2]=e+1}f=v[h+12>>2];v[f+48>>2]=1;e=v[b+28>>2];g=v[b+32>>2];j=v[g+24>>2];d=v[b+24>>2];i=d;b:{while(1){g=v[g+28>>2];if((f|0)!=v[v[i+32>>2]+36>>2]){d=e;c:{d:{e:{f:{while(1){k=v[d+32>>2];if((f|0)!=v[k+36>>2]){f=v[j+28>>2];if((f|0)!=(g|0)){e=g;while(1){v[e+36>>2]=a;e=v[e+28>>2];if((f|0)!=(e|0)){continue}break}}e=v[a>>2];if((e|0)==(b|0)){v[a>>2]=d;e=d}f=v[v[j+32>>2]+36>>2];if((f|0)!=v[k+36>>2]){break d}if((e|0)==(j|0)){v[a>>2]=d}if(x[f+4>>1]!=3){break f}e=v[v[k+24>>2]+32>>2];v[f+48>>2]=1;b=f;break e}j=v[j+24>>2];d=v[d+28>>2];if((e|0)!=(d|0)){continue}break}a=0;break b}e=v[k+28>>2];b=v[e+24>>2];if((b|0)==v[f>>2]){v[f>>2]=e}b=v[b+24>>2];v[e+24>>2]=b;v[b+28>>2]=e;b=0}k=v[j+24>>2];v[d+24>>2]=k;v[k+28>>2]=d;v[d+32>>2]=e;v[e+32>>2]=d;y4(f);v[h+8>>2]=b;if(!b){break c}d=v[c+4>>2];if(d>>>0>=(v[c+8>>2]&2147483647)>>>0){x4(c,h+8|0);break c}v[v[c>>2]+(d<<2)>>2]=b;v[c+4>>2]=d+1;break c}v[j+28>>2]=d;v[d+24>>2]=j;v[h+8>>2]=0}d=v[v[i+32>>2]+36>>2];b=v[g+32>>2];g:{if((d|0)==v[b+36>>2]){if(v[a>>2]==(i|0)){v[a>>2]=g}h:{if(x[d+4>>1]==3){e=v[v[b+24>>2]+32>>2];v[d+48>>2]=1;b=d;break h}e=v[b+28>>2];b=v[e+24>>2];if((b|0)==v[d>>2]){v[d>>2]=e}b=v[b+24>>2];v[e+24>>2]=b;v[b+28>>2]=e;b=0}f=v[i+24>>2];v[g+24>>2]=f;v[f+28>>2]=g;v[g+32>>2]=e;v[e+32>>2]=g;y4(d);v[h+8>>2]=b;if(!b){break g}d=v[c+4>>2];if(d>>>0>=(v[c+8>>2]&2147483647)>>>0){x4(c,h+8|0);break g}v[v[c>>2]+(d<<2)>>2]=b;v[c+4>>2]=d+1;break g}v[i+28>>2]=g;v[g+24>>2]=i;v[h+8>>2]=0}y4(a);a=1;break b}i=v[i+24>>2];if((d|0)!=(i|0)){continue}break}a=0}xa=h+16|0;return a}function p8(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=0,w=0,x=C(0);e=xa-96|0;xa=e;D5(e- -64|0,e+32|0,a,b,c);g=z[e+68>>2];o=z[e+36>>2];i=z[e+76>>2];q=z[e+44>>2];r=z[e+32>>2];m=z[e+64>>2];x=C(C(g*o)+C(C(i*q)+C(r*m)));k=z[e+72>>2];s=z[e+40>>2];t=C(k*s);f=C(z[e+48>>2]-z[e+80>>2]);j=C(f+f);f=C(z[e+52>>2]-z[e+84>>2]);l=C(f+f);f=C(z[e+56>>2]-z[e+88>>2]);p=C(f+f);u=C(C(C(C(-m)*j)-C(l*g))-C(k*p));h=C(C(i*i)+C(-.5));f=C(C(C(p*h)+C(i*C(C(g*j)-C(m*l))))-C(k*u));n=C(C(C(j*h)+C(i*C(C(k*l)-C(g*p))))-C(m*u));j=C(C(C(l*h)+C(i*C(C(m*p)-C(k*j))))-C(g*u));l=C(C(f*f)+C(C(n*n)+C(j*j)));h=z[a+120>>2];w=l>C(h*h);if(w){l=C(C(1)/C(K(l)));f=C(h*C(f*l));n=C(h*C(n*l));j=C(h*C(j*l))}h=C(t+x);l=C(C(r*g)+C(C(C(i*s)-C(q*k))-C(m*o)));p=C(C(s*m)+C(C(C(i*o)-C(q*g))-C(k*r)));z[e+24>>2]=f;z[e+20>>2]=j;z[e+16>>2]=n;j=C(0);g=C(C(o*k)+C(C(C(i*r)-C(q*m))-C(g*s)));a:{if(g==C(0)){m=C(1);i=C(0);break a}f=C(C(1)/C(K(C(C(h*h)+C(C(C(g*g)+C(0))+C(0))))));m=C(h*f);j=C(g*f);i=C(f*C(0))}n=C(i*l);k=C(p*i);f=C(n+C(k+C(C(h*m)+C(g*j))));k=C(n+C(C(C(g*m)-C(h*j))-k));q=C(-i);n=C(h*q);g=C(i*g);h=C(C(j*p)+C(C(n+C(l*m))-g));n=C(g+C(C(n+C(p*m))-C(l*j)));g=C(z[a+124>>2]*C(.5));o=Q9(g);g=G9(g);b:{c:{d:{if(o>C(.9998999834060669)){break d}v=f>=C(0);r=v?h:C(-h);s=v?k:C(-k);l=v?n:C(-n);p=C(C(r*r)+C(C(s*s)+C(l*l)));if(!(p>C(o*o))){break d}f=C(C(1)/C(K(p)));h=C(C(o*r)*f);n=C(C(o*l)*f);k=C(C(o*s)*f);f=g;break c}if(!w){break b}}g=C(n*i);z[e+12>>2]=C(C(C(f*m)-C(j*k))-g)-C(h*i);t=C(k*i);i=C(f*i);z[e+8>>2]=C(C(-j)*n)+C(t+C(i+C(m*h)));z[e+4>>2]=C(q*k)+C(C(h*j)+C(i+C(m*n)));z[e>>2]=C(q*h)+C(g+C(C(f*j)+C(m*k)));J5(b,c,e- -64|0,e+32|0,e,a,d)}xa=e+96|0}function C2(a,b,c,d,e){var f=C(0),g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),u=0,x=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=0,J=0,L=0,M=C(0);t[a+63|0]=0;H=w[a+62|0];if(H){while(1){g=B(w[(a+I|0)+56|0],400)+a|0;u=v[g+448>>2];t[a+63|0]=u+w[a+63|0];J=g- -64|0;i=z[g+104>>2];j=z[g+100>>2];k=z[g+96>>2];a:{if(u>>>0<2){break a}g=1;h=u-1|0;L=h&1;if((u|0)!=2){h=h&-2;o=0;while(1){x=(g<<6)+J|0;k=C(C(k+z[x+32>>2])+z[x+96>>2]);i=C(C(i+z[x+40>>2])+z[x+104>>2]);j=C(C(j+z[x+36>>2])+z[x+100>>2]);g=g+2|0;o=o+2|0;if((h|0)!=(o|0)){continue}break}}if(!L){break a}g=(g<<6)+J|0;k=C(k+z[g+32>>2]);i=C(i+z[g+40>>2]);j=C(j+z[g+36>>2])}if(!(!u|m>>>0>=64)){p=z[d+8>>2];q=z[d>>2];r=z[d+4>>2];s=C(C(p*i)+C(C(q*k)+C(j*r)));n=z[d+12>>2];l=C(C(n*n)+C(-.5));f=C(C(p*s)+C(C(n*C(C(q*j)-C(k*r)))+C(i*l)));y=C(f+f);f=C(C(q*s)+C(C(n*C(C(r*i)-C(j*p)))+C(k*l)));A=C(f+f);f=C(C(r*s)+C(C(n*C(C(p*k)-C(i*q)))+C(j*l)));f=C(f+f);l=C(C(1)/C(K(C(C(y*y)+C(C(A*A)+C(f*f))))));p=C(y*l);q=C(f*l);r=C(A*l);o=0;g=m;while(1){b:{m=(o<<6)+J|0;E=z[m+4>>2];F=z[m>>2];G=z[m+8>>2];l=z[m+44>>2];y=z[c+16>>2];A=z[c+20>>2];f=z[c+24>>2];i=z[c+8>>2];j=z[c>>2];k=z[c+4>>2];D=z[c+12>>2];n=z[e>>2];h=(g<<6)+b|0;v[h+28>>2]=0;z[h+8>>2]=p;z[h+4>>2]=q;z[h>>2]=r;z[h+12>>2]=l-n;M=f;s=C(C(D*D)+C(-.5));l=C(C(i*G)+C(C(j*F)+C(k*E)));f=C(C(C(D*C(C(j*E)-C(F*k)))+C(G*s))+C(i*l));z[h+24>>2]=C(M+C(f+f))-C(p*n);f=C(C(k*l)+C(C(s*E)+C(D*C(C(i*F)-C(G*j)))));z[h+20>>2]=C(A+C(f+f))-C(q*n);f=C(C(j*l)+C(C(s*F)+C(D*C(C(k*G)-C(E*i)))));z[h+16>>2]=C(y+C(f+f))-C(r*n);v[h+52>>2]=v[m+48>>2];m=g+1|0;o=o+1|0;if(u>>>0<=o>>>0){break b}h=g>>>0<63;g=m;if(h){continue}}break}H=w[a+62|0]}I=I+1|0;if(H>>>0>I>>>0){continue}break}}v[b+4096>>2]=m;return(m|0)!=0}function Xy(a){var b=0,c=0;b=v[a+12152>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+12144>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12068>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+12060>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12056>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+12048>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12044>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+12036>>2];if(!b){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12032>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+12024>>2];if(!b){break e}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12020>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+12012>>2];if(!b){break f}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12008>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+12e3>>2];if(!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11996>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[a+11988>>2];if(!b){break h}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11984>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=v[a+11976>>2];if(!b){break i}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11924>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=v[a+11916>>2];if(!b){break j}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11912>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=v[a+11904>>2];if(!b){break k}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11900>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=v[a+11892>>2];if(!b){break l}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11844>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=v[a+11836>>2];if(!b){break m}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a}function C1(a,b,c,d){var e=0,f=0,g=0,h=C(0),i=0,j=0,k=0,l=C(0),m=0,n=0,o=C(0);a:{b:{e=v[a+2328>>2];if(!e){break b}m=e-1|0;i=(m<<6)+a|0;if(!(z[a+2224>>2]>2]*z[b+8>>2])+C(C(z[i>>2]*z[b>>2])+C(z[i+4>>2]*z[b+4>>2]))))){break b}b=v[i+52>>2];j=v[i+48>>2];if(b>>>0<=j>>>0){f=v[a+2324>>2];break a}f=v[a+2324>>2];if(f>>>0<=d>>>0){break a}while(1){g=d;if(f>>>0>g>>>0){while(1){k=v[a+2320>>2];n=g<<6;b=k+n|0;e=(j<<6)+k|0;h=C(z[b+24>>2]-z[e+24>>2]);l=C(h*h);h=C(z[b+16>>2]-z[e+16>>2]);o=C(h*h);h=C(z[b+20>>2]-z[e+20>>2]);if(z[a+2240>>2]>C(l+C(o+C(h*h)))){if(z[e+44>>2]>z[b+44>>2]){f=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=f;v[e+48>>2]=v[b+48>>2];f=v[b+44>>2];v[e+40>>2]=v[b+40>>2];v[e+44>>2]=f;f=v[b+36>>2];v[e+32>>2]=v[b+32>>2];v[e+36>>2]=f;f=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=f;f=v[b+20>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;k=v[a+2320>>2];f=v[a+2324>>2]}b=((f<<6)+k|0)+-64|0;f=v[b+4>>2];e=k+n|0;v[e>>2]=v[b>>2];v[e+4>>2]=f;v[e+48>>2]=v[b+48>>2];f=v[b+44>>2];v[e+40>>2]=v[b+40>>2];v[e+44>>2]=f;f=v[b+36>>2];v[e+32>>2]=v[b+32>>2];v[e+36>>2]=f;f=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=f;f=v[b+20>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;f=v[a+2324>>2]-1|0;v[a+2324>>2]=f;g=g-1|0}g=g+1|0;if(g>>>0>>0){continue}break}b=v[i+52>>2]}j=j+1|0;if(j>>>0>>0){continue}break}break a}g=(e<<6)+a|0;v[g+48>>2]=d;v[g+52>>2]=v[a+2324>>2];d=v[c+4>>2];v[g+32>>2]=v[c>>2];v[g+36>>2]=d;d=v[c+12>>2];v[g+40>>2]=v[c+8>>2];v[g+44>>2]=d;v[a+2328>>2]=e+1;a=v[b+12>>2];v[g+8>>2]=v[b+8>>2];v[g+12>>2]=a;a=v[b+4>>2];v[g>>2]=v[b>>2];v[g+4>>2]=a;return}v[i+52>>2]=f;a=(m<<6)+a|0;h=z[a+32>>2];l=z[c>>2];z[a+32>>2]=h>l?l:h}function Bn(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=v[37389];a=0;g=xa-16|0;xa=g;a:{if(!v[37392]){a9(v[37696],8,5382,279,70455,0);break a}h=v[37389];a=v[h+3040>>2];if(!a){i=xa-16|0;xa=i;d=h+2752|0;b=v[d+284>>2];if(b){a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?41391:63804;f=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,f,18373,180)|0}else{f=0}v[i+12>>2]=f;a=v[d+268>>2];b:{if(a>>>0>=(v[d+272>>2]&2147483647)>>>0){a=0;b=d+4|0;c=v[b+268>>2];j=c&2147483647?c<<1:1;c:{if(!j){break c}c=j<<2;if(!(w[b+256|0]|c>>>0>256)){t[b+256|0]=1;a=b;break c}if(!c){break c}a=v[37696];e=Ba[v[v[a>>2]+20>>2]](a)|0?41391:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,e,16608,553)|0}e=v[b+264>>2];l=(e<<2)+a|0;if((e|0)>0){k=v[b+260>>2];c=a;while(1){v[c>>2]=v[k>>2];k=k+4|0;c=c+4|0;if(l>>>0>c>>>0){continue}break}}v[l>>2]=v[i+12>>2];d:{if(v[b+268>>2]<0){break d}c=v[b+260>>2];if((c|0)==(b|0)){t[b+256|0]=0;break d}if(!c){break d}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[b+264>>2]}v[b+268>>2]=j;v[b+260>>2]=a;v[b+264>>2]=e+1;break b}v[v[d+264>>2]+(a<<2)>>2]=f;v[d+268>>2]=a+1}a=(B(v[d+276>>2],132)+f|0)-132|0;if(f>>>0<=a>>>0){b=v[d+288>>2];while(1){v[a>>2]=b;b=a;a=a-132|0;if(f>>>0<=a>>>0){continue}break}v[d+288>>2]=b}xa=i+16|0;a=v[h+3040>>2]}v[h+3040>>2]=v[a>>2];b=h+3032|0;v[b>>2]=v[b>>2]+1;v[a+4>>2]=196620;v[a+8>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a>>2]=118576;XE(a+24|0,1);v[a+100>>2]=0;u[a+72>>1]=1;v[a+112>>2]=0;v[a+116>>2]=0;v[a+104>>2]=4;v[a+108>>2]=0;v[a+96>>2]=a+76;t[a+92|0]=1;v[a+128>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a>>2]=118268;z[a+68>>2]=z[a+56>>2];v[a+16>>2]=v[a+16>>2]&-251658241|117440512;v[g+8>>2]=a;b=Mm(m+520|0,g+8|0,g+15|0);if(!w[g+15|0]){v[b>>2]=v[g+8>>2]}}xa=g+16|0;return a|0}function jE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0);a:{if(!v[a+684>>2]){break a}d=(b<<15^-1)+b|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=v[v[a+660>>2]+((v[a+668>>2]-1&(d>>>16^d))<<2)>>2];if((d|0)==-1){break a}G=v[a+656>>2];i=v[a+652>>2];while(1){if(v[i+(d<<3)>>2]!=(b|0)){d=v[G+(d<<2)>>2];if((d|0)!=-1){continue}break a}break}i=v[(i+(d<<3)|0)+4>>2];b=v[a+644>>2]+B(i,44)|0;d=v[v[b>>2]+588>>2];z[b+12>>2]=z[c>>2];z[b+16>>2]=z[c+4>>2];z[b+20>>2]=z[c+8>>2];z[b+24>>2]=z[c+12>>2];z[b+28>>2]=z[c+16>>2];z[b+32>>2]=z[c+20>>2];z[b+36>>2]=z[c+24>>2];r=z[c+20>>2];H=z[c+16>>2];f=z[c+8>>2];h=z[d+8>>2];m=z[d+24>>2];e=C(C(h+m)*C(.5));s=C(e+e);l=z[c>>2];n=z[d>>2];o=z[d+16>>2];e=C(C(n+o)*C(.5));t=C(e+e);j=z[d+4>>2];p=z[d+20>>2];e=C(C(j+p)*C(.5));u=C(e+e);e=z[c+4>>2];w=C(C(f*s)+C(C(l*t)+C(u*e)));d=v[a+640>>2];b=d+B(i,24)|0;k=z[c+12>>2];x=C(C(k*k)+C(-.5));y=C(z[c+24>>2]+C(C(f*w)+C(C(s*x)+C(k*C(C(l*u)-C(t*e))))));m=C(C(m-h)*C(.5));h=C(l+l);q=C(C(1)-C(l*h));g=C(e+e);A=C(e*g);n=C(C(o-n)*C(.5));E=C(h*f);F=C(k*g);o=C(C(p-j)*C(.5));j=C(k*h);g=C(g*f);p=C(C(D(C(m*C(q-A))))+C(C(D(C(n*C(E-F))))+C(D(C(o*C(j+g))))));z[b+20>>2]=y+p;r=C(r+C(C(e*w)+C(C(u*x)+C(k*C(C(f*t)-C(s*l))))));I=C(D(C(m*C(g-j))));h=C(h*e);g=C(f+f);j=C(k*g);g=C(f*g);q=C(I+C(C(D(C(n*C(h+j))))+C(D(C(o*C(q-g))))));z[b+16>>2]=r+q;f=C(H+C(C(l*w)+C(C(t*x)+C(k*C(C(e*s)-C(u*f))))));e=C(C(D(C(m*C(E+F))))+C(C(D(C(n*C(C(C(1)-A)-g))))+C(D(C(o*C(h-j))))));z[b+12>>2]=f+e;z[b+8>>2]=y-p;z[b+4>>2]=r-q;z[b>>2]=f-e;v[a+704>>2]=0;hE(a,i,QC(a+4|0,v[v[a+620>>2]+(i<<2)>>2],i,d,a+700|0))}}function T4(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=C(0),w=C(0);d=v[a+32>>2];i=v[d+92>>2];if(i){f=v[d+88>>2];while(1){e=v[f+(c<<2)>>2];if(!v[e+48>>2]){e=x[e+4>>1];m=e>>>0>x[v[f+(m<<2)>>2]+4>>1]?c:m;j=e+j|0;g=g+1|0}c=c+1|0;if((i|0)!=(c|0)){continue}break}}d=v[d+24>>2];c=d<<2;f=j<<2;d=B(d,12)+12|0;e=(c+(f+B(g,22)|0)|0)+d|0;if(e){c=v[37696]+12|0;l=Ba[v[v[c>>2]+8>>2]](c,e,24422,13134,2410)|0;c=v[v[a+32>>2]+24>>2]<<2}v[a+40>>2]=l;h=f+l|0;p=h+d|0;d=p+B(g,20)|0;v[a+44>>2]=d;n=I9(d+(g<<1)|0,255,c);d=0;if(i){r=v[v[a+32>>2]+88>>2];f=0;while(1){c=v[(f<<2)+r>>2];a:{if(v[c+48>>2]){break a}e=v[c>>2];k=(v[e+12>>2]<<2)+n|0;if(v[k>>2]==-1){c=h+B(d,12)|0;z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];v[k>>2]=d;d=d+1|0}c=v[e+28>>2];if((e|0)==(c|0)){break a}while(1){q=(v[c+12>>2]<<2)+n|0;if(v[q>>2]==-1){k=h+B(d,12)|0;z[k>>2]=z[c>>2];z[k+4>>2]=z[c+4>>2];z[k+8>>2]=z[c+8>>2];v[q>>2]=d;d=d+1|0}c=v[c+28>>2];if((e|0)!=(c|0)){continue}break}}f=f+1|0;if((i|0)!=(f|0)){continue}break}}v[b+4>>2]=h;v[b+8>>2]=d;v[b>>2]=12;v[b+24>>2]=4;v[b+12>>2]=20;v[b+32>>2]=j;v[b+28>>2]=l;v[b+20>>2]=g;v[b+16>>2]=p;if(i){g=0;f=0;while(1){j=g?(g|0)==(m|0)?0:g:m;b=v[v[v[a+32>>2]+88>>2]+(j<<2)>>2];if(!v[b+48>>2]){e=v[b>>2];v[e+40>>2]=-1;h=f&65535;v[(h<<2)+l>>2]=v[(v[e+12>>2]<<2)+n>>2];d=1;c=v[e+28>>2];if((e|0)!=(c|0)){while(1){v[(d+h<<2)+l>>2]=v[(v[c+12>>2]<<2)+n>>2];v[c+40>>2]=-1;d=d+1|0;c=v[c+28>>2];if((e|0)!=(c|0)){continue}break}}s=z[b+20>>2];e=v[b+16>>2];h=v[b+12>>2];w=z[b+40>>2];d=x[b+4>>1];c=B(o,20)+p|0;u[c+18>>1]=f;u[c+16>>1]=d;z[c+12>>2]=-w;z[c+8>>2]=s;v[c>>2]=h;v[c+4>>2]=e;u[v[a+44>>2]+(o<<1)>>1]=j;t[b+60|0]=o;o=o+1|0;f=d+f|0}g=g+1|0;if((i|0)!=(g|0)){continue}break}}}function PA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0,g=0,h=0,i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=0,V=0,W=0;if(b){c=0;while(1){d=(c<<5)+a|0;g=v[d+4>>2];m=z[g+24>>2];n=z[g+20>>2];h=v[d>>2];o=z[h+24>>2];p=z[h+20>>2];q=z[g+16>>2];r=z[h+16>>2];s=z[g+8>>2];t=z[g+4>>2];u=z[g>>2];y=z[h+8>>2];A=z[h+4>>2];B=z[h>>2];f=x[d+22>>1];if(f){d=v[d+24>>2];Q=d+(f<<4)|0;while(1){H=d+32|0;f=w[d+1|0];I=H+((f<<2)+12&2032)|0;l=w[d+2|0];k=(l>>>0)/(f>>>0)|0;a:{if(!l){break a}if(f>>>0<=l>>>0){R=z[d+20>>2];S=z[d+16>>2];F=z[d+12>>2];G=z[d+8>>2];T=z[d+4>>2];U=k>>>0>1?k:1;k=0;f=0;while(1){V=f+U|0;W=(k<<2)+H|0;while(1){e=C(T*z[W>>2]);d=(f<<6)+I|0;i=z[d+28>>2];j=z[d+8>>2];D=z[d>>2];E=z[d+4>>2];J=z[d+24>>2];K=z[d+16>>2];L=z[d+20>>2];M=z[d+40>>2];N=z[d+32>>2];O=z[d+36>>2];P=z[d+12>>2];i=C(C(i*C(C(C(C(j*y)+C(C(D*B)+C(A*E)))+C(C(J*o)+C(C(K*r)+C(p*L))))-C(C(C(j*s)+C(C(D*u)+C(t*E)))+C(C(M*m)+C(C(N*q)+C(n*O))))))+C(P-C(i*z[d+48>>2])));i=e>2]=e;e=C(e-P);s=C(s-C(C(F*j)*e));t=C(t-C(C(F*E)*e));u=C(u-C(C(F*D)*e));y=C(y+C(C(G*j)*e));A=C(A+C(C(G*E)*e));B=C(B+C(C(G*D)*e));j=C(R*e);m=C(m-C(M*j));n=C(n-C(O*j));q=C(q-C(N*j));e=C(S*e);o=C(o+C(J*e));p=C(p+C(L*e));r=C(r+C(K*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)+I|0;if(Q>>>0>d>>>0){continue}break}}z[h+8>>2]=y;z[h+4>>2]=A;z[h>>2]=B;z[g+8>>2]=s;z[g+4>>2]=t;z[g>>2]=u;z[h+24>>2]=o;z[h+20>>2]=p;z[h+16>>2]=r;z[g+24>>2]=m;z[g+20>>2]=n;z[g+16>>2]=q;c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function V$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=C(0),h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=C(0),s=0,y=0,A=0,D=0;e=xa-80|0;xa=e;v[e+40>>2]=0;v[e+44>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;u[e+28>>1]=0;v[e+24>>2]=-1;v[e+16>>2]=0;v[e+20>>2]=0;v[e+64>>2]=0;v[e+56>>2]=2139095039;v[e+60>>2]=0;a:{if(!b){break a}k=e+60|0;l=a+108|0;s=a- -64|0;y=1;while(1){f=v[(n<<2)+c>>2];A=f>>>5|0;D=f>>>1&15;o=0;while(1){i=o+A|0;f=B(i,3);j=v[a+16>>2];b:{if(v[a+12>>2]){f=j+(f<<1)|0;j=x[f+4>>1];p=x[f+2>>1];f=x[f>>1];break b}f=j+(f<<2)|0;j=v[f+8>>2];p=v[f+4>>2];f=v[f>>2]}h=v[a+20>>2];u[e+28>>1]=1;v[e+24>>2]=i;v[e+12>>2]=j;i=h+B(j,12)|0;v[e+8>>2]=p;q=h+B(p,12)|0;v[e+4>>2]=f;h=h+B(f,12)|0;c:{if(w[a+177|0]){g=z[e+56>>2];if(!(g>2])){break c}m=v[e+20>>2];v[s>>2]=v[e+16>>2];v[s+4>>2]=m;v[s+8>>2]=v[e+24>>2];u[a+76>>1]=1;z[a+80>>2]=z[e+32>>2];z[a+84>>2]=z[e+36>>2];z[a+88>>2]=z[e+40>>2];z[a+92>>2]=z[e+44>>2];z[a+96>>2]=z[e+48>>2];r=z[e+52>>2];z[a+104>>2]=g;z[a+100>>2]=r;v[l+16>>2]=v[k+16>>2];m=v[k+12>>2];v[l+8>>2]=v[k+8>>2];v[l+12>>2]=m;m=v[k+4>>2];v[l>>2]=v[k>>2];v[l+4>>2]=m;r=z[d>>2];z[d>>2]=g>2]=z[h>>2];z[a+132>>2]=z[h+4>>2];z[a+136>>2]=z[h+8>>2];z[a+140>>2]=z[q>>2];z[a+144>>2]=z[q+4>>2];z[a+148>>2]=z[q+8>>2];z[a+152>>2]=z[i>>2];z[a+156>>2]=z[i+4>>2];g=z[i+8>>2];t[a+176|0]=1;v[a+172>>2]=j;v[a+168>>2]=p;v[a+164>>2]=f;z[a+160>>2]=g;break c}z[e>>2]=z[d>>2];f=v[a+8>>2];if(!(Ba[v[v[f>>2]>>2]](f,e+16|0,h,q,i,e,e+4|0)|0)){break a}g=z[e>>2];if(!(g>2])){break c}z[d>>2]=g;z[a+60>>2]=g}if(!v[v[a+8>>2]+4>>2]){break a}f=(o|0)==(D|0);o=o+1|0;if(!f){continue}break}n=n+1|0;y=n>>>0>>0;if((b|0)!=(n|0)){continue}break}}xa=e+80|0;return(y^-1)&1}function rO(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0);n=z[d+8>>2];o=z[b+8>>2];p=z[c+8>>2];q=z[a+8>>2];a:{h=z[a>>2];j=z[c>>2];k=z[b>>2];i=z[d>>2];r=z[a+4>>2];s=z[c+4>>2];t=z[b+4>>2];u=z[d+4>>2];if(!(!(C(D(C(h-j)))<=C(k+i))|!(C(D(C(r-s)))<=C(t+u)))&C(D(C(q-p)))<=C(o+n)){break a}g=C(j-i);i=C(j+i);l=C(h-k);k=C(h+k);w=z[e+4>>2];x=z[f+4>>2];b:{c:{m=C(z[f>>2]-z[e>>2]);d:{if(mk){h=C(C(k-g)/m);j=h>C(0)?h:C(0)}h=C(1);if(!(i>l)){break d}h=C(C(l-i)/m);h=hC(9.999999974752427e-7))){break c}v=C(34028234663852886e22);if(g>k){break a}j=C(0);if(iC(0)?h:C(0)}h=C(1);if(!(gh)){break b}break a}v=C(34028234663852886e22);if(ik){break a}j=C(0);h=C(1)}g=C(s-u);i=C(s+u);l=C(r-t);k=C(r+t);m=C(x-w);e:{if(!(mC(9.999999974752427e-7))){if(ik)){break e}break a}if(g>k){break a}if(ik){g=C(C(k-g)/m);j=g>j?g:j}if(!(i>l)){break e}g=C(C(l-i)/m);h=gh){break a}g=C(p-n);i=C(p+n);l=C(q-o);k=C(q+o);m=C(z[f+8>>2]-z[e+8>>2]);f:{if(!(mC(9.999999974752427e-7))){if(ik)){break f}break a}if(g>k){break a}if(ik){g=C(C(k-g)/m);j=g>j?g:j}if(!(i>l)){break f}g=C(C(l-i)/m);h=gh){break a}return j}return v}function qH(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0);p=w[a+150|0];a:{if(!(p&6)){break a}i=v[a+44>>2];if(!v[i+176>>2]|w[v[i+176>>2]+31|0]==1){break a}i=v[i+176>>2];if(!i){break a}if(c){q=c;c=v[e>>2];r=c<<2;v[q+r>>2]=a- -64;q=v[a+144>>2];v[e>>2]=c+1;v[d+r>>2]=q>>>7}d=p&2;b:{if(!(p&4)){break b}k=z[i+56>>2];l=z[i+52>>2];m=z[i+40>>2];n=z[i+36>>2];o=z[i+48>>2];s=z[i+32>>2];if(g){j=C(C(1)/b);z[f+24>>2]=j*k;z[f+20>>2]=j*l;z[f+16>>2]=j*o;z[f+8>>2]=j*m;z[f+4>>2]=j*n;z[f>>2]=j*s;break b}c=v[a+44>>2];z[c+80>>2]=s+z[c+80>>2];z[c+84>>2]=n+z[c+84>>2];z[c+88>>2]=m+z[c+88>>2];z[c+96>>2]=o+z[c+96>>2];z[c+100>>2]=l+z[c+100>>2];z[c+104>>2]=k+z[c+104>>2]}if(!d){break a}j=z[i+24>>2];k=z[i+20>>2];l=z[i+16>>2];m=z[i+8>>2];n=z[i+4>>2];o=z[i>>2];if(f){z[f+16>>2]=l;z[f+8>>2]=m;z[f+4>>2]=n;z[f>>2]=o;z[f+24>>2]=j;z[f+20>>2]=k;break a}c:{if(!h){break c}c=v[v[a+40>>2]+1e3>>2];if(!v[v[c+268>>2]+(v[v[c+372>>2]+(v[a+144>>2]>>>5&134217724)>>2]<<2)>>2]){break c}b=C(z[a+140>>2]*b)}c=v[a+44>>2];z[c+80>>2]=C(o*b)+z[c+80>>2];z[c+84>>2]=C(n*b)+z[c+84>>2];z[c+88>>2]=C(m*b)+z[c+88>>2];z[c+96>>2]=C(l*b)+z[c+96>>2];z[c+100>>2]=C(k*b)+z[c+100>>2];z[c+104>>2]=C(j*b)+z[c+104>>2]}c=v[a+44>>2];d=v[c+176>>2];if(t[v[a+100>>2]+28|0]>=0){e=w[a+150|0];d:{if(!d|w[v[c+176>>2]+31|0]==1){break d}c=v[c+176>>2];if(!c){break d}v[c+48>>2]=0;v[c+52>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;v[c+56>>2]=0;v[c+40>>2]=0;v[c+24>>2]=0}t[a+150|0]=e>>>1&1;return}e:{if(!d|w[v[c+176>>2]+31|0]==1){break e}c=v[c+176>>2];if(!c){break e}v[c+48>>2]=0;v[c+52>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+56>>2]=0;v[c+40>>2]=0}t[a+150|0]=w[a+150|0]&-5}function r3(a,b,c){var d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);g=v[a+32>>2];a:{if((g|0)==-1){break a}e=z[a+28>>2];h=z[a+16>>2];f=z[a+12>>2];i=z[a+24>>2];d=C(f-i);j=z[a+8>>2];k=z[a+20>>2];l=C(D(C(j-k)));if(l>z[b>>2]){z[b>>2]=l}d=C(D(d));if(d>z[b+4>>2]){z[b+4>>2]=d}d=C(D(C(h-e)));if(d>z[b+8>>2]){z[b+8>>2]=d}d=C(D(C(j+k)));if(d>z[c>>2]){z[c>>2]=d}f=C(D(C(f+i)));if(f>z[c+4>>2]){z[c+4>>2]=f}e=C(D(C(h+e)));if(e>z[c+8>>2]){z[c+8>>2]=e}if(g&1){break a}r3(g,b,c)}g=v[a+68>>2];b:{if((g|0)==-1){break b}e=z[a- -64>>2];h=z[a+52>>2];f=z[a+48>>2];i=z[a+60>>2];d=C(f-i);j=z[a+44>>2];k=z[a+56>>2];l=C(D(C(j-k)));if(l>z[b>>2]){z[b>>2]=l}d=C(D(d));if(d>z[b+4>>2]){z[b+4>>2]=d}d=C(D(C(h-e)));if(d>z[b+8>>2]){z[b+8>>2]=d}d=C(D(C(j+k)));if(d>z[c>>2]){z[c>>2]=d}f=C(D(C(f+i)));if(f>z[c+4>>2]){z[c+4>>2]=f}e=C(D(C(h+e)));if(e>z[c+8>>2]){z[c+8>>2]=e}if(g&1){break b}r3(g,b,c)}g=v[a+104>>2];c:{if((g|0)==-1){break c}e=z[a+100>>2];h=z[a+88>>2];f=z[a+84>>2];i=z[a+96>>2];d=C(f-i);j=z[a+80>>2];k=z[a+92>>2];l=C(D(C(j-k)));if(l>z[b>>2]){z[b>>2]=l}d=C(D(d));if(d>z[b+4>>2]){z[b+4>>2]=d}d=C(D(C(h-e)));if(d>z[b+8>>2]){z[b+8>>2]=d}d=C(D(C(j+k)));if(d>z[c>>2]){z[c>>2]=d}f=C(D(C(f+i)));if(f>z[c+4>>2]){z[c+4>>2]=f}e=C(D(C(h+e)));if(e>z[c+8>>2]){z[c+8>>2]=e}if(g&1){break c}r3(g,b,c)}g=v[a+140>>2];d:{if((g|0)==-1){break d}e=z[a+136>>2];h=z[a+124>>2];f=z[a+120>>2];i=z[a+132>>2];d=C(f-i);j=z[a+116>>2];k=z[a+128>>2];l=C(D(C(j-k)));if(l>z[b>>2]){z[b>>2]=l}d=C(D(d));if(d>z[b+4>>2]){z[b+4>>2]=d}d=C(D(C(h-e)));if(d>z[b+8>>2]){z[b+8>>2]=d}d=C(D(C(j+k)));if(d>z[c>>2]){z[c>>2]=d}f=C(D(C(f+i)));if(f>z[c+4>>2]){z[c+4>>2]=f}e=C(D(C(h+e)));if(e>z[c+8>>2]){z[c+8>>2]=e}if(g&1){break d}r3(g,b,c)}}function Hm(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=0,o=0;l=v[a+16>>2];f=v[a+28>>2];if((Taa(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=C(z[a+24>>2]*C(b>>>0));a:{if(m=C(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=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,h,24422,17301,372)|0}h=I9(c,255,d);k=e+h|0;e=d+h|0;b:{if((f|0)==-1){if(!v[a+36>>2]){break b}i=b-1|0;d=0;while(1){c=d<<2;j=v[c+v[a+4>>2]>>2];f=(j<<15^-1)+j|0;f=B(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;f=((i&(f>>>16^f))<<2)+h|0;v[c+e>>2]=v[f>>2];v[f>>2]=d;v[c+k>>2]=j;d=d+1|0;if(d>>>0>2]){continue}break}break b}n=H9(e,v[a+8>>2],v[a+16>>2]<<2);d=v[a+20>>2];if(!d){break b}o=b-1|0;while(1){c=v[v[a+12>>2]+(j<<2)>>2];if((c|0)!=-1){while(1){d=c<<2;f=v[d+v[a+4>>2]>>2];i=(f<<15^-1)+f|0;i=B(i>>>10^i,9);i=i>>>6^i;i=(i<<11^-1)+i|0;i=((o&(i>>>16^i))<<2)+h|0;v[d+n>>2]=v[i>>2];v[i>>2]=c;v[d+k>>2]=f;c=v[d+v[a+8>>2]>>2];if((c|0)!=-1){continue}break}d=v[a+20>>2]}j=j+1|0;if(j>>>0>>0){continue}break}}d=v[a>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+20>>2]=b;v[a+12>>2]=h;v[a>>2]=h;v[a+8>>2]=e;v[a+16>>2]=g;v[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;v[(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;v[(d<<2)+e>>2]=c;g=(c<<2)+e|0;c=d+2|0;v[g>>2]=c;g=(c<<2)+e|0;c=d+3|0;v[g>>2]=c;g=(c<<2)+e|0;c=d+4|0;v[g>>2]=c;g=(c<<2)+e|0;c=d+5|0;v[g>>2]=c;g=(c<<2)+e|0;c=d+6|0;v[g>>2]=c;g=(c<<2)+e|0;c=d+7|0;v[g>>2]=c;d=d+8|0;v[(c<<2)+e>>2]=d;if((b|0)!=(d|0)){continue}break}}v[(b<<2)+e>>2]=v[a+28>>2];v[a+28>>2]=l}function y3(a,b,c,d,e){var f=0,g=0,h=0,i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0;g=xa-128|0;xa=g;h=31;k=c;l=I9(g,0,128);c=b+1028|0;B3(k,0,31,l,c);while(1){a:{b:{if(f>>>0>=h>>>0){break b}while(1){if(!v[(f<<2)+l>>2]){break b}f=f+1|0;if((h|0)!=(f|0)){continue}break}break a}c:{if(f>>>0>=h>>>0){break c}while(1){if(v[(h<<2)+l>>2]){break c}h=h-1|0;if(h>>>0>f>>>0){continue}break}break a}if((f|0)!=(h|0)){g=(h<<2)+l|0;p=v[g>>2];k=g;g=(f<<2)+l|0;v[k>>2]=v[g>>2];v[g>>2]=p}if(f>>>0>>0){continue}}break}v[e>>2]=v[e>>2]+v[c>>2];c=v[c>>2];if(c){h=0;while(1){f=v[(h<<2)+l>>2];d:{if(!f){break d}if(!v[f+24>>2]){p=v[a>>2];i=z[f+16>>2];j=z[f+20>>2];k=v[f+28>>2];q=v[f+32>>2];m=z[f+4>>2];n=z[f+8>>2];g=(h<<5)+b|0;z[g+4>>2]=C(z[f>>2]+z[f+12>>2])*C(.5);z[g+12>>2]=C(n+j)*C(.5);z[g+8>>2]=C(m+i)*C(.5);i=z[f+16>>2];j=z[f>>2];m=z[f+12>>2];n=z[f+4>>2];o=C(C(z[f+20>>2]-z[f+8>>2])*C(.5));z[g+28>>2]=o;i=C(C(i-n)*C(.5));z[g+24>>2]=i;j=C(C(m-j)*C(.5));z[g+20>>2]=j;if(d!=C(0)){z[g+20>>2]=j+d;z[g+24>>2]=i+d;z[g+28>>2]=o+d}v[g+32>>2]=q<<1&126|k-p<<5|1;break d}i=z[f+16>>2];j=z[f+20>>2];m=z[f+4>>2];n=z[f+8>>2];c=(h<<5)+b|0;z[c+4>>2]=C(z[f>>2]+z[f+12>>2])*C(.5);z[c+12>>2]=C(n+j)*C(.5);z[c+8>>2]=C(m+i)*C(.5);i=z[f+16>>2];j=z[f>>2];m=z[f+12>>2];n=z[f+4>>2];o=C(C(z[f+20>>2]-z[f+8>>2])*C(.5));z[c+28>>2]=o;i=C(C(i-n)*C(.5));z[c+24>>2]=i;j=C(C(m-j)*C(.5));z[c+20>>2]=j;if(d!=C(0)){z[c+20>>2]=j+d;z[c+24>>2]=i+d;z[c+28>>2]=o+d}k=c;c=v[37696];g=c+12|0;c=x3((s=g,t=1032,u=Ba[v[v[c>>2]+20>>2]](c)|0?45015:63804,w=12354,x=147,r=v[v[g>>2]+8>>2],Ba[r](s|0,t|0,u|0,w|0,x|0)|0));v[k+32>>2]=c;y3(a,c,f,d,e);c=v[b+1028>>2]}h=h+1|0;if(h>>>0>>0){continue}break}}xa=l+128|0}function Af(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=v[a>>2];g=(v[a+4>>2]-d|0)/12|0;if(g>>>0>>0){d=c;h=a;a:{e=b-g|0;f=v[a+8>>2];c=v[a+4>>2];if(e>>>0<=(f-c|0)/12>>>0){b:{if(!e){break b}a=B(e,12);g=a;e=a-12|0;f=((e>>>0)/12|0)+1&3;c:{if(!f){a=c;break c}b=0;a=c;while(1){z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];a=a+12|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}c=c+g|0;if(e>>>0<36){break b}while(1){z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];z[a+12>>2]=z[d>>2];z[a+16>>2]=z[d+4>>2];z[a+20>>2]=z[d+8>>2];z[a+24>>2]=z[d>>2];z[a+28>>2]=z[d+4>>2];z[a+32>>2]=z[d+8>>2];z[a+36>>2]=z[d>>2];z[a+40>>2]=z[d+4>>2];z[a+44>>2]=z[d+8>>2];a=a+48|0;if((c|0)!=(a|0)){continue}break}}v[h+4>>2]=c;break a}d:{g=v[h>>2];b=(c-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>>0?i:a:357913941;if(f){if(f>>>0>=357913942){break d}j=laa(B(f,12))}b=B(b,12)+j|0;a=b;e=B(e,12);i=e-12|0;k=((i>>>0)/12|0)+1&3;if(k){a=b;while(1){z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+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){z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];z[a+12>>2]=z[d>>2];z[a+16>>2]=z[d+4>>2];z[a+20>>2]=z[d+8>>2];z[a+24>>2]=z[d>>2];z[a+28>>2]=z[d+4>>2];z[a+32>>2]=z[d+8>>2];z[a+36>>2]=z[d>>2];z[a+40>>2]=z[d+4>>2];z[a+44>>2]=z[d+8>>2];a=a+48|0;if((e|0)!=(a|0)){continue}break}}if((c|0)!=(g|0)){while(1){b=b-12|0;c=c-12|0;z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];if((c|0)!=(g|0)){continue}break}}v[h+8>>2]=B(f,12)+j;v[h+4>>2]=e;v[h>>2]=b;if(g){iaa(g)}break a}da();L()}Uf();L()}return}if(b>>>0>>0){v[a+4>>2]=d+B(b,12)}}function HW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0);a=xa-16|0;xa=a;o=z[d+24>>2];p=z[d+20>>2];q=z[d+16>>2];g=z[d+4>>2];k=z[d+12>>2];i=z[d>>2];f=z[d+8>>2];AV(a,b);xa=a+16|0;r=z[a+12>>2];j=C(i+i);l=C(f*j);h=C(g+g);s=C(k*h);E=C(l-s);x=z[c+4>>2];t=C(-x);F=C(E*t);m=C(h*f);u=C(j*k);I=C(m+u);y=z[c+8>>2];v=C(-y);J=C(I*v);K=C(F+J);G=C(C(1)-C(i*j));w=C(g*h);L=C(G-w);h=z[c+12>>2];n=C(-h);A=C(L*n);i=z[a+8>>2];B=C(C(1)-w);D=f;f=C(f+f);w=C(D*f);M=C(B-w);N=C(M*t);j=C(j*g);H=C(f*k);O=C(j-H);P=C(O*v);B=C(N+P);l=C(l+s);k=C(l*n);f=z[a>>2];g=z[a+4>>2];s=C(j+H);H=C(s*t);G=C(G-w);w=C(G*v);D=C(H+w);m=C(m-u);j=C(m*n);a:{b:{if(C(r+C(C(C(o+C(K+A))*i)+C(C(C(q+C(B+k))*f)+C(g*C(p+C(D+j))))))<=C(0)){break b}t=C(L*h);v=C(l*h);h=C(m*h);if(C(r+C(C(C(o+C(K+t))*i)+C(C(C(q+C(B+v))*f)+C(g*C(p+C(D+h))))))<=C(0)){break b}n=C(I*y);l=C(F+n);F=C(O*y);m=C(N+F);y=C(G*y);u=C(H+y);if(C(r+C(C(C(o+C(l+A))*i)+C(C(C(q+C(m+k))*f)+C(g*C(p+C(u+j))))))<=C(0)|C(r+C(C(C(o+C(l+t))*i)+C(C(C(q+C(m+v))*f)+C(g*C(p+C(u+h))))))<=C(0)){break b}l=C(E*x);E=C(l+J);m=C(M*x);u=C(m+P);x=C(s*x);s=C(x+w);if(C(r+C(C(C(o+C(E+A))*i)+C(C(C(q+C(u+k))*f)+C(g*C(p+C(s+j))))))<=C(0)|C(r+C(C(C(o+C(E+t))*i)+C(C(C(q+C(u+v))*f)+C(g*C(p+C(s+h))))))<=C(0)){break b}n=C(l+n);B=C(C(o+C(n+A))*i);A=C(m+F);D=C(C(q+C(A+k))*f);k=C(x+y);if(C(r+C(B+C(D+C(g*C(p+C(k+j))))))<=C(0)){break b}a=0;if(!(C(r+C(C(C(o+C(n+t))*i)+C(C(C(q+C(A+v))*f)+C(g*C(p+C(k+h))))))<=C(0))){break a}}a=1}return a|0}function PF(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;i=v[a+180>>2];h=i+(g>>>5&134217724)|0;j=i+(f>>>5&134217724)|0;g=v[c>>2]>>>7|0;a:{if((g|0)==33554431){f=v[a+16>>2];break a}m=(v[j>>2]+v[h>>2]|0)+1|0;f=v[a+16>>2];n=v[a+204>>2];while(1){k=g<<2;l=i+k|0;v[l>>2]=v[l>>2]+m;v[n+k>>2]=d;g=v[(B(g,24)+f|0)+8>>2]>>>7|0;if((g|0)!=33554431){continue}break}}v[h>>2]=v[j>>2]+1;g=v[c>>2];v[(B(v[b+4>>2]>>>7|0,24)+f|0)+8>>2]=g;v[(B(g>>>7|0,24)+f|0)+12>>2]=v[b+4>>2];v[b+4>>2]=v[c+4>>2];v[b+8>>2]=v[b+8>>2]+v[c+8>>2];v[b+12>>2]=v[b+12>>2]+v[c+12>>2];f=d<<2;d=v[a+100>>2];f=f+d|0;g=d+(e<<2)|0;v[f>>2]=v[f>>2]+v[g>>2];i=v[c+20>>2];d=v[a+40>>2];f=v[b+28>>2];b:{if((f|0)!=-1){h=v[a+60>>2];j=(f>>>0)/(h>>>0)|0;f=(v[d+(j<<2)>>2]+(f-B(h,j)<<4)|0)+8|0;break b}f=b+20|0}v[f>>2]=i;f=v[c+20>>2];if((f|0)!=-1){i=v[a+60>>2];h=(f>>>0)/(i>>>0)|0;v[(v[d+(h<<2)>>2]+(f-B(i,h)<<4)|0)+12>>2]=v[b+28>>2];v[b+28>>2]=v[c+28>>2]}v[b+36>>2]=v[b+36>>2]+v[c+36>>2];v[c+36>>2]=0;v[c+28>>2]=-1;v[c+20>>2]=-1;i=v[c+24>>2];f=v[b+32>>2];c:{if((f|0)!=-1){h=v[a+60>>2];j=(f>>>0)/(h>>>0)|0;f=(v[d+(j<<2)>>2]+(f-B(h,j)<<4)|0)+8|0;break c}f=b+24|0}v[f>>2]=i;f=v[c+24>>2];if((f|0)!=-1){i=v[a+60>>2];h=(f>>>0)/(i>>>0)|0;v[(v[d+(h<<2)>>2]+(f-B(i,h)<<4)|0)+12>>2]=v[b+32>>2];v[b+32>>2]=v[c+32>>2]}v[b+40>>2]=v[b+40>>2]+v[c+40>>2];v[c+40>>2]=0;v[c+32>>2]=-1;v[c+24>>2]=-1;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=-128;v[c+4>>2]=-128;v[g>>2]=0;if(v[c+16>>2]!=-1){c=v[a+88>>2];b=c+B(e,44)|0;d=v[a+240>>2];f=v[(d+(v[a+244>>2]<<2)|0)-4>>2];v[(c+B(f,44)|0)+16>>2]=v[b+16>>2];v[d+(v[b+16>>2]<<2)>>2]=f;v[a+244>>2]=v[a+244>>2]-1;v[b+16>>2]=-1;a=v[a+216>>2]+(e>>>3&536870908)|0;b=v[a>>2];o=a,p=Uaa(-2,e)&b,v[o>>2]=p}}function IE(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=xa-16|0;xa=j;t[a+140|0]=1;g=c>>>1|0;v[j+12>>2]=g;d=c&1;e=B(d,36)+a|0;v[e+32>>2]=v[e+32>>2]+1;a:{b:{c:{if((b|0)==-1){b=v[e+4>>2]+(c>>>4&268435452)|0;c=v[b>>2];h=1<>2]=c&(h^-1);b=B(d,36)+a|0;c=v[b+20>>2];if(!c){a=0;break c}d=v[b+16>>2];a=0;while(1){if((g|0)==v[d+(a<<2)>>2]){break c}a=a+1|0;if((c|0)!=(a|0)){continue}break}break b}d:{if(!v[a+112>>2]){break d}c=(b<<15^-1)+b|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;e=B(c>>>16^c^1016421269,1000007);c=g+(g<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;e=v[a+88>>2]+((v[a+96>>2]-1&(e^(c>>>16^c)))<<2)|0;c=v[e>>2];if((c|0)==-1){break d}d=v[a+84>>2];h=v[a+80>>2];f=h+(c<<3)|0;if(!(v[f>>2]==(b|0)&(g|0)==v[f+4>>2])){while(1){e=d+(c<<2)|0;c=v[e>>2];if((c|0)==-1){break d}f=h+(c<<3)|0;if(v[f>>2]!=(b|0)|(g|0)!=v[f+4>>2]){continue}break}}c=e;h=v[a+84>>2];e=v[e>>2];f=h+(e<<2)|0;v[c>>2]=v[f>>2];c=v[a+112>>2]-1|0;v[a+112>>2]=c;v[a+108>>2]=v[a+108>>2]+1;if((c|0)!=(e|0)){i=v[a+80>>2];d=i+(e<<3)|0;i=i+(c<<3)|0;v[d>>2]=v[i>>2];v[d+4>>2]=v[i+4>>2];v[f>>2]=v[h+(c<<2)>>2];c=v[d>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;f=B(c>>>16^c^1016421269,1000007);c=v[d+4>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[a+88>>2]+((v[a+96>>2]-1&(f^(c>>>16^c)))<<2)|0;c=v[d>>2];f=v[a+112>>2];if((c|0)!=(f|0)){while(1){d=h+(c<<2)|0;c=v[d>>2];if((f|0)!=(c|0)){continue}break}}v[d>>2]=e}v[a+104>>2]=v[a+104>>2]-1}a=v[a+72>>2];Ba[v[v[a>>2]+16>>2]](a,b,g);break a}if((a|0)==(c|0)){break b}g=v[b+16>>2];d=b;b=c-1|0;v[d+20>>2]=b;v[g+(a<<2)>>2]=v[g+(b<<2)>>2]}a=v[e>>2];Ba[v[v[a>>2]+4>>2]](a,j+12|0,1)}xa=j+16|0}function no(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=0,x=C(0);c=xa-96|0;xa=c;i=z[b+12>>2];f=z[b+8>>2];g=z[b>>2];h=z[b+4>>2];d=C(C(1)/C(K(C(C(i*i)+C(C(f*f)+C(C(g*g)+C(h*h)))))));z[c+76>>2]=i*d;z[c+72>>2]=f*d;z[c+68>>2]=h*d;z[c+64>>2]=g*d;z[c+80>>2]=z[b+16>>2];z[c+84>>2]=z[b+20>>2];z[c+88>>2]=z[b+24>>2];b=v[a+316>>2]&1024?v[a+56>>2]+144|0:a+112|0;j=z[b+16>>2];i=z[b+12>>2];m=z[b+8>>2];n=z[b+4>>2];o=z[b>>2];k=z[b+24>>2];l=z[b+20>>2];$i(a,c- -64|0);b=v[a+56>>2];w=v[a+316>>2];a:{if(!(t[(w&16384?b+268|0:a+108|0)|0]&1)){break a}b:{if(w&32768){f=z[b+192>>2];z[c+32>>2]=f;g=z[b+196>>2];z[c+36>>2]=g;h=z[b+200>>2];z[c+40>>2]=h;d=z[b+204>>2];z[c+44>>2]=d;q=z[b+208>>2];z[c+48>>2]=q;r=z[b+212>>2];z[c+52>>2]=r;e=z[b+216>>2];z[c+56>>2]=e;break b}if(y[a+52>>2]>3221225471){break a}if(!YG(a- -64|0,c+32|0)){break a}e=z[c+56>>2];r=z[c+52>>2];q=z[c+48>>2];h=z[c+40>>2];g=z[c+36>>2];f=z[c+32>>2];d=z[c+44>>2]}x=e;e=C(k*C(-2));j=C(j*C(-2));k=C(l*C(-2));s=C(C(m*e)+C(C(o*j)+C(n*k)));u=C(C(i*i)+C(-.5));l=C(C(m*s)+C(C(e*u)-C(i*C(C(o*k)-C(j*n)))));l=C(l+l);p=C(C(o*s)+C(C(j*u)-C(i*C(C(n*e)-C(k*m)))));p=C(p+p);e=C(C(n*s)+C(C(k*u)-C(i*C(C(m*j)-C(e*o)))));e=C(e+e);j=C(C(h*l)+C(C(f*p)+C(e*g)));k=C(C(d*d)+C(-.5));z[c+24>>2]=x+C(C(h*j)+C(C(l*k)+C(d*C(C(f*e)-C(p*g)))));z[c+20>>2]=r+C(C(g*j)+C(C(e*k)+C(d*C(C(h*p)-C(l*f)))));z[c+12>>2]=C(h*m)+C(C(g*n)+C(C(d*i)+C(o*f)));z[c+8>>2]=C(o*g)+C(C(C(i*h)-C(d*m))-C(f*n));z[c+4>>2]=C(m*f)+C(C(C(i*g)-C(d*n))-C(h*o));z[c>>2]=C(n*h)+C(C(C(i*f)-C(d*o))-C(g*m));z[c+16>>2]=q+C(C(f*j)+C(C(p*k)+C(d*C(C(g*l)-C(e*h)))));lo(a,c)}xa=c+96|0}function _L(a){a=a|0;var b=0,c=0;v[a>>2]=132220;b=v[a+132>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+136>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+140>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+144>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+148>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+152>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+156>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+160>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+164>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+180>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+184>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+172>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+176>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+168>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+216>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+220>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+236>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+240>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+216>>2]=0;v[a+220>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;v[a+232>>2]=0;v[a+236>>2]=0;v[a+224>>2]=0;v[a+228>>2]=0;v[a+428>>2]=0;v[a+420>>2]=0;v[a+380>>2]=0;v[a+372>>2]=0;v[a+332>>2]=0;v[a+324>>2]=0;v[a+400>>2]=0;v[a+384>>2]=126144;v[a+268>>2]=0;v[a+256>>2]=0;v[a+204>>2]=0;v[a+352>>2]=0;v[a+336>>2]=126144;v[a+304>>2]=0;v[a+288>>2]=126144;v[a- -64>>2]=0;v[a+48>>2]=126144;v[a+24>>2]=0;v[a+8>>2]=126144;return a|0}function An(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=v[37389];a=0;g=xa-16|0;xa=g;a:{if(!v[37390]){a9(v[37696],8,5382,263,70455,0);break a}h=v[37389];a=v[h+2744>>2];if(!a){i=xa-16|0;xa=i;d=h+2456|0;b=v[d+284>>2];if(b){a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?36971:63804;f=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,f,18373,180)|0}else{f=0}v[i+12>>2]=f;a=v[d+268>>2];b:{if(a>>>0>=(v[d+272>>2]&2147483647)>>>0){a=0;b=d+4|0;c=v[b+268>>2];j=c&2147483647?c<<1:1;c:{if(!j){break c}c=j<<2;if(!(w[b+256|0]|c>>>0>256)){t[b+256|0]=1;a=b;break c}if(!c){break c}a=v[37696];e=Ba[v[v[a>>2]+20>>2]](a)|0?36971:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,e,16608,553)|0}e=v[b+264>>2];l=(e<<2)+a|0;if((e|0)>0){k=v[b+260>>2];c=a;while(1){v[c>>2]=v[k>>2];k=k+4|0;c=c+4|0;if(l>>>0>c>>>0){continue}break}}v[l>>2]=v[i+12>>2];d:{if(v[b+268>>2]<0){break d}c=v[b+260>>2];if((c|0)==(b|0)){t[b+256|0]=0;break d}if(!c){break d}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[b+264>>2]}v[b+268>>2]=j;v[b+260>>2]=a;v[b+264>>2]=e+1;break b}v[v[d+264>>2]+(a<<2)>>2]=f;v[d+268>>2]=a+1}a=(B(v[d+276>>2],120)+f|0)-120|0;if(f>>>0<=a>>>0){b=v[d+288>>2];while(1){v[a>>2]=b;b=a;a=a-120|0;if(f>>>0<=a>>>0){continue}break}v[d+288>>2]=b}xa=i+16|0;a=v[h+2744>>2]}v[h+2744>>2]=v[a>>2];b=h+2736|0;v[b>>2]=v[b>>2]+1;v[a+4>>2]=196619;v[a+8>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a>>2]=120728;XE(a+24|0,0);v[a+100>>2]=0;u[a+72>>1]=1;v[a+112>>2]=0;v[a+116>>2]=0;v[a+104>>2]=4;v[a+108>>2]=0;v[a+96>>2]=a+76;t[a+92|0]=1;v[a>>2]=120476;z[a+68>>2]=z[a+56>>2];v[a+16>>2]=v[a+16>>2]&-251658241|117440512;v[g+8>>2]=a;b=Mm(m+520|0,g+8|0,g+15|0);if(!w[g+15|0]){v[b>>2]=v[g+8>>2]}}xa=g+16|0;return a|0}function tT(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=C(0),i=0,j=0,k=0,m=0,o=C(0);g=xa-192|0;xa=g;v[g+144>>2]=3;z[g+148>>2]=z[b+40>>2];z[g+152>>2]=z[b+44>>2];z[g+156>>2]=z[b+48>>2];i=A[c+12>>3];z[g+128>>2]=A[d>>3]-i;j=A[c+20>>3];z[g+132>>2]=A[d+8>>3]-j;k=A[c+28>>3];z[g+136>>2]=A[d+16>>3]-k;z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];b=0;v[g+104>>2]=0;v[g+96>>2]=2;d=v[c+40>>2];l(0,v[c+36>>2]);l(1,d|0);m=g,o=C(+n()-i),z[m+176>>2]=o;d=v[c+48>>2];l(0,v[c+44>>2]);l(1,d|0);m=g,o=C(+n()-j),z[m+180>>2]=o;d=v[c+56>>2];l(0,v[c+52>>2]);l(1,d|0);m=g,o=C(+n()-k),z[m+184>>2]=o;d=v[c+64>>2];l(0,v[c+60>>2]);l(1,d|0);m=g,o=C(+n()-i),z[m+160>>2]=o;d=v[c+72>>2];l(0,v[c+68>>2]);l(1,d|0);m=g,o=C(+n()-j),z[m+164>>2]=o;d=v[c+80>>2];l(0,v[c+76>>2]);l(1,d|0);m=g,o=C(+n()-k),z[m+168>>2]=o;z[g+100>>2]=z[c+84>>2];KU(g+16|0,g+176|0,g+160|0,g+104|0);d=v[g+40>>2];v[g+84>>2]=v[g+36>>2];v[g+88>>2]=d;z[g+64>>2]=z[g+16>>2];d=v[g+24>>2];v[g+68>>2]=v[g+20>>2];v[g+72>>2]=d;d=v[g+32>>2];v[g+76>>2]=v[g+28>>2];v[g+80>>2]=d;if(z[g+104>>2]==C(0)){v[g+104>>2]=872415232}v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!iV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];b=1}xa=g+192|0;return b|0}function Xu(a,b){var c=0,d=0;c=xa-16|0;xa=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{d=v[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}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=qh(a+4816|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=qh(a+4932|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=qh(a+4932|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=qh(a+4892|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=qh(a+4972|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=qh(a+5012|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=qh(a+5052|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=qh(a+5092|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2]}xa=c+16|0} -function MD(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0;f=C(z[a+16>>2]-z[b>>2]);j=z[c>>2];d=C(j+z[a+128>>2]);a:{if(f>d){break a}g=C(z[a+20>>2]-z[b+4>>2]);k=z[c+4>>2];e=C(k+z[a+132>>2]);if(g>e){break a}h=C(z[a+24>>2]-z[b+8>>2]);i=z[c+8>>2];l=C(i+z[a+136>>2]);if(fl|(g>2];e=z[a+48>>2];l=z[a- -64>>2];n=C(C(C(f*d)+C(g*e))+C(h*l));m=z[a+112>>2];p=z[a+96>>2];q=z[a+80>>2];o=C(C(i*m)+C(C(k*p)+C(C(j*q)+z[a>>2])));if(n>o){break a}r=z[a+36>>2];s=z[a+52>>2];t=z[a+68>>2];F=C(C(C(f*r)+C(g*s))+C(h*t));u=z[a+116>>2];v=z[a+100>>2];w=z[a+84>>2];G=C(C(i*u)+C(C(k*v)+C(C(j*w)+z[a+4>>2])));if(F>G){break a}x=z[a+40>>2];y=z[a+56>>2];A=z[a+72>>2];H=C(C(C(f*x)+C(g*y))+C(h*A));B=z[a+120>>2];D=z[a+104>>2];E=z[a+88>>2];I=C(C(i*B)+C(C(k*D)+C(C(j*E)+z[a+8>>2])));if(nI|(C(-G)>F|C(-I)>H)){break a}n=C(C(h*e)-C(g*l));o=C(C(i*p)+C(C(k*m)+z[a+144>>2]));l=C(C(f*l)-C(h*d));m=C(C(i*q)+C(C(j*m)+z[a+160>>2]));d=C(C(g*d)-C(f*e));e=C(C(k*q)+C(C(j*p)+z[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=C(C(f*A)-C(h*x));i=C(C(i*E)+C(C(j*B)+z[a+168>>2]));f=C(C(g*x)-C(f*y));g=C(C(k*E)+C(C(j*D)+z[a+184>>2]));J=((b|(d>e|di|hg|f>2]=2;h=z[b+44>>2];z[g+148>>2]=z[b+40>>2];z[g+152>>2]=h*C(.5);i=A[c+12>>3];z[g+128>>2]=A[d>>3]-i;j=A[c+20>>3];z[g+132>>2]=A[d+8>>3]-j;k=A[c+28>>3];z[g+136>>2]=A[d+16>>3]-k;z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];d=0;v[g+104>>2]=0;v[g+96>>2]=2;b=v[c+40>>2];l(0,v[c+36>>2]);l(1,b|0);m=g,o=C(+n()-i),z[m+176>>2]=o;b=v[c+48>>2];l(0,v[c+44>>2]);l(1,b|0);m=g,o=C(+n()-j),z[m+180>>2]=o;b=v[c+56>>2];l(0,v[c+52>>2]);l(1,b|0);m=g,o=C(+n()-k),z[m+184>>2]=o;b=v[c+64>>2];l(0,v[c+60>>2]);l(1,b|0);m=g,o=C(+n()-i),z[m+160>>2]=o;b=v[c+72>>2];l(0,v[c+68>>2]);l(1,b|0);m=g,o=C(+n()-j),z[m+164>>2]=o;b=v[c+80>>2];l(0,v[c+76>>2]);l(1,b|0);m=g,o=C(+n()-k),z[m+168>>2]=o;z[g+100>>2]=z[c+84>>2];KU(g+16|0,g+176|0,g+160|0,g+104|0);b=v[g+40>>2];v[g+84>>2]=v[g+36>>2];v[g+88>>2]=b;z[g+64>>2]=z[g+16>>2];b=v[g+24>>2];v[g+68>>2]=v[g+20>>2];v[g+72>>2]=b;b=v[g+32>>2];v[g+76>>2]=v[g+28>>2];v[g+80>>2]=b;if(z[g+104>>2]==C(0)){v[g+104>>2]=872415232}v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!iV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];d=1}xa=g+192|0;return d|0}function ty(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=C(0),o=0,p=0,q=0,r=0,s=0;o=w[b+13|0];k=v[b+4>>2];j=v[b>>2];m=xa-16|0;v[m+8>>2]=0;v[m+12>>2]=0;v[m+4>>2]=0;a:{b:{if(!j){p=a+4096|0;b=v[a+4096>>2];break b}p=a+4096|0;b=v[a+4096>>2];l=w[j+43|0];if(l&4){break b}z[e>>2]=z[j>>2];z[f>>2]=z[j+8>>2];z[g>>2]=z[j+4>>2];z[h>>2]=z[j+12>>2];t[c|0]=l>>>5&1;t[d|0]=l>>>4&1;if(!o){break b}g=l&128?32:l&2?64:16;e=l&130;q=w[c|0];c=b;h=0;f=0;while(1){if(h){d=w[j+41|0];k=(d>>>0>f>>>0?B(d-f|0,g):0)+k|0;j=j+48|0}h=h+1|0;f=w[j+41|0];c:{if(!f){f=0;break c}k=(r?g:0)+k|0;n=i;d:{e:{if(q){if(!e){n=C(34028234663852886e22);break e}n=z[k+28>>2]}if(n==C(0)){break d}}d=(c<<6)+a|0;z[d>>2]=z[j+16>>2];z[d+4>>2]=z[j+20>>2];z[d+8>>2]=z[j+24>>2];z[d+16>>2]=z[k>>2];z[d+20>>2]=z[k+4>>2];z[d+24>>2]=z[k+8>>2];z[d+12>>2]=z[k+12>>2];l=w[j+42|0];z[d+28>>2]=n;t[d+48|0]=l;z[d+44>>2]=z[j+36>>2];z[d+56>>2]=z[j+32>>2];z[d+60>>2]=z[j+28>>2];z[d+32>>2]=z[(e?k+16|0:m+12|0)>>2];z[d+36>>2]=z[(e?k+20|0:m+8|0)>>2];z[d+40>>2]=z[(e?k+24|0:m+4|0)>>2];c=c+1|0}r=1;if((f|0)==1){f=1;break c}l=1;while(1){l=l+1|0;k=g+k|0;n=i;f:{g:{if(q){if(!e){n=C(34028234663852886e22);break g}n=z[k+28>>2]}if(n==C(0)){break f}}d=(c<<6)+a|0;z[d>>2]=z[j+16>>2];z[d+4>>2]=z[j+20>>2];z[d+8>>2]=z[j+24>>2];z[d+16>>2]=z[k>>2];z[d+20>>2]=z[k+4>>2];z[d+24>>2]=z[k+8>>2];z[d+12>>2]=z[k+12>>2];s=w[j+42|0];z[d+28>>2]=n;t[d+48|0]=s;z[d+44>>2]=z[j+36>>2];z[d+56>>2]=z[j+32>>2];z[d+60>>2]=z[j+28>>2];z[d+32>>2]=z[(e?k+16|0:m+12|0)>>2];z[d+36>>2]=z[(e?k+20|0:m+8|0)>>2];z[d+40>>2]=z[(e?k+24|0:m+4|0)>>2];c=c+1|0}if((f|0)!=(l|0)){continue}break}}if((h|0)!=(o|0)){continue}break}break a}c=b}v[p>>2]=c;return c-b|0}function aX(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0);d=z[c+8>>2];i=z[c+4>>2];w=z[c+12>>2];e=z[c>>2];h=z[b+16>>2];j=C(h+h);f=z[b+20>>2];l=C(f+f);x=C(h*j);m=C(f*l);s=C(C(C(1)-x)-m);G=z[b>>2];t=z[b+12>>2];r=C(t+t);n=C(r*f);o=z[b+24>>2];p=C(j*o);F=C(n+p);k=C(G*F);y=C(r*h);A=C(l*o);h=C(y+A);g=C(j*f);q=C(r*o);f=C(g-q);H=z[b+4>>2];u=C(f*H);j=C(n-p);o=C(C(1)-C(t*r));r=C(o-x);I=z[b+8>>2];n=C(r*I);l=C(C(C(s*k)+C(h*u))+C(j*n));J=z[c+16>>2];t=C(y-A);o=C(o-m);x=C(g+q);m=C(C(C(t*k)+C(o*u))+C(x*n));y=z[c+20>>2];k=C(C(C(F*k)+C(f*u))+C(r*n));A=z[c+24>>2];z[a+44>>2]=C(C(l*J)+C(m*y))+C(k*A);p=C(G*t);g=C(o*H);q=C(x*I);u=C(C(C(s*p)+C(h*g))+C(j*q));n=C(C(C(t*p)+C(o*g))+C(x*q));p=C(C(C(F*p)+C(f*g))+C(r*q));z[a+40>>2]=C(C(J*u)+C(y*n))+C(A*p);v=e;e=C(e+e);v=C(C(1)-C(v*e));g=C(i+i);L=C(i*g);q=C(v-L);B=C(e*d);M=C(g*w);K=C(B+M);D=C(g*d);E=C(e*w);g=C(D-E);z[a+32>>2]=C(k*q)+C(C(l*K)+C(m*g));z[a+28>>2]=C(p*q)+C(C(u*K)+C(n*g));D=C(D+E);i=C(e*i);e=C(d+d);E=C(w*e);w=C(i-E);d=C(d*e);e=C(v-d);z[a+20>>2]=C(k*D)+C(C(l*w)+C(m*e));z[a+16>>2]=C(p*D)+C(C(u*w)+C(n*e));v=k;k=C(B-M);B=l;l=C(C(C(1)-L)-d);d=m;m=C(i+E);z[a+8>>2]=C(v*k)+C(C(B*l)+C(d*m));z[a+4>>2]=C(p*k)+C(C(u*l)+C(n*m));v=s;s=C(G*s);B=h;h=C(h*H);d=j;j=C(j*I);d=C(C(C(v*s)+C(B*h))+C(d*j));i=C(C(C(t*s)+C(o*h))+C(x*j));f=C(C(C(F*s)+C(f*h))+C(r*j));z[a+36>>2]=C(C(J*d)+C(y*i))+C(A*f);z[a+24>>2]=C(f*q)+C(C(d*K)+C(i*g));z[a+12>>2]=C(f*D)+C(C(d*w)+C(i*e));z[a>>2]=C(f*k)+C(C(d*l)+C(i*m))}function lo(a,b){var c=C(0),d=0,e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0);e=xa-32|0;xa=e;d=v[a+316>>2]&1024?v[a+56>>2]+144|0:a+112|0;j=z[d+8>>2];k=z[d+4>>2];l=z[d+12>>2];m=z[d>>2];t=z[b+20>>2];u=z[b+16>>2];f=z[b+8>>2];c=z[d+24>>2];n=C(c+c);g=z[b>>2];c=z[d+16>>2];o=C(c+c);c=z[d+20>>2];p=C(c+c);h=z[b+4>>2];q=C(C(f*n)+C(C(g*o)+C(p*h)));c=z[b+12>>2];r=C(C(c*c)+C(-.5));z[e+24>>2]=z[b+24>>2]+C(C(f*q)+C(C(n*r)+C(c*C(C(g*p)-C(o*h)))));z[e+20>>2]=t+C(C(h*q)+C(C(p*r)+C(c*C(C(f*o)-C(n*g)))));z[e+12>>2]=C(C(C(c*l)-C(m*g))-C(h*k))-C(f*j);z[e+8>>2]=C(C(g*k)+C(C(c*j)+C(f*l)))-C(m*h);z[e+4>>2]=C(C(f*m)+C(C(c*k)+C(h*l)))-C(j*g);z[e>>2]=C(C(h*j)+C(C(c*m)+C(g*l)))-C(k*f);z[e+16>>2]=u+C(C(g*q)+C(C(o*r)+C(c*C(C(h*n)-C(p*f)))));b=a+48|0;i=v[b>>2];c=z[i+5132>>2];a:{b:{c:{d:{s=v[b+4>>2];switch((s>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[i+4785|0]){break b}}ZG(b+16|0,v[i+2428>>2],e,c);z[b+260>>2]=c;v[b+264>>2]=0;break a}d=v[b+8>>2];if(!d){d=Pu(i,s>>>24&15);v[b+8>>2]=d;i=v[b>>2]}z[d+192>>2]=z[e>>2];z[d+196>>2]=z[e+4>>2];z[d+200>>2]=z[e+8>>2];z[d+204>>2]=z[e+12>>2];z[d+208>>2]=z[e+16>>2];z[d+212>>2]=z[e+20>>2];z[d+216>>2]=z[e+24>>2];Xu(i,b);v[b+268>>2]=v[b+268>>2]|32768;e:{f:{switch((v[b+4>>2]>>>30|0)-2|0){case 0:d=v[b>>2];if(w[d+4785|0]){break e}default:z[b+260>>2]=c;v[b+264>>2]=0;UG(b+16|0,c,1);break a;case 1:break f}}d=v[b>>2]}z[b+260>>2]=c;v[b+264>>2]=0;Xu(d,b);v[b+268>>2]=v[b+268>>2]&-117440513|83886080}b=uh(a);if(!(!b|!(w[(w[a+317|0]&64?v[a+56>>2]+268|0:a+108|0)|0]&2))){lu(a+20|0,b+5584|0,a);a=b+5652|0;v[a>>2]=v[a>>2]+1}xa=e+32|0}function G5(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0),p=C(0),q=C(0);l=z[b+20>>2];n=z[b+12>>2]>C(0);if(l>2]>C(0)?C(0):z[b+16>>2])+c)){e=v[a+4>>2];v[a+4>>2]=e+80;u[e+78>>1]=0;z[e>>2]=z[d>>2];z[e+4>>2]=z[d+4>>2];z[e+8>>2]=z[d+8>>2];f=z[a+16>>2];g=z[d+8>>2];h=z[a+8>>2];i=z[d+4>>2];j=z[d>>2];k=z[a+12>>2];z[e+24>>2]=C(h*i)-C(j*k);z[e+20>>2]=C(f*j)-C(g*h);z[e+16>>2]=C(k*g)-C(i*f);z[e+32>>2]=z[d>>2];z[e+36>>2]=z[d+4>>2];z[e+40>>2]=z[d+8>>2];f=z[a+28>>2];g=z[a+24>>2];h=z[d+8>>2];i=z[a+20>>2];j=z[d+4>>2];k=z[d>>2];l=C(l-c);z[e+12>>2]=l;z[e+56>>2]=C(i*j)-C(k*g);z[e+52>>2]=C(f*k)-C(h*i);z[e+48>>2]=C(g*h)-C(j*f);m=x[e+76>>1];f=z[b+8>>2];a:{if(f>C(0)|n){z[e+64>>2]=f;z[e+68>>2]=z[b+12>>2];m=m|17;break a}u[e+78>>1]=2049;z[e+64>>2]=z[b>>2];z[e+68>>2]=z[b+4>>2];m=m|(l>C(0)?24:16);if(!(z[b>>2]>C(0))){break a}m=m|4}v[e+44>>2]=0;u[e+76>>1]=m}l=z[b+24>>2];e=z[b+12>>2]>C(0);if(C(-l)>2]>C(0)?C(0):z[b+16>>2])-c)){f=z[d>>2];g=z[d+4>>2];h=z[d+8>>2];d=v[a+4>>2];v[a+4>>2]=d+80;o=C(-h);z[d+8>>2]=o;p=C(-g);z[d+4>>2]=p;q=C(-f);z[d>>2]=q;u[d+78>>1]=0;i=z[a+16>>2];j=z[a+12>>2];k=z[a+8>>2];z[d+40>>2]=o;z[d+36>>2]=p;z[d+32>>2]=q;z[d+24>>2]=C(f*j)-C(k*g);z[d+20>>2]=C(h*k)-C(i*f);z[d+16>>2]=C(g*i)-C(j*h);i=z[a+28>>2];j=z[a+24>>2];k=z[a+20>>2];c=C(c-l);z[d+12>>2]=c;z[d+56>>2]=C(f*j)-C(k*g);z[d+52>>2]=C(h*k)-C(i*f);z[d+48>>2]=C(g*i)-C(j*h);a=x[d+76>>1];f=z[b+8>>2];b:{if(e|f>C(0)){z[d+64>>2]=f;z[d+68>>2]=z[b+12>>2];a=a|17;break b}u[d+78>>1]=2049;z[d+64>>2]=z[b>>2];z[d+68>>2]=z[b+4>>2];a=a|(c>C(0)?24:16);if(!(z[b>>2]>C(0))){break b}a=a|4}v[d+44>>2]=0;u[d+76>>1]=a}}function B4(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;g=xa-16|0;xa=g;c=b>>>0>8?b:8;v[a+20>>2]=c;e=B(c,24);if(e){c=v[37696];f=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,13134,733)|0;c=v[a+20>>2]}v[a+36>>2]=f;c=B(c,9)-18|0;v[a+40>>2]=c;c=B(c,44);if(c){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,13134,83)|0}v[g+12>>2]=d;c=v[a+56>>2];a:{if(c>>>0>=(v[a+60>>2]&2147483647)>>>0){C4(a+52|0,g+12|0);break a}v[v[a+52>>2]+(c<<2)>>2]=d;v[a+56>>2]=c+1}c=(v[a+20>>2]<<1)-4|0;D4(a- -64|0,c<<1);if(c>>>0>(v[a+96>>2]&2147483647)>>>0){E4(a+88|0,c)}if((v[a+268>>2]&2147483647)>>>0>>0){c=0;b:{if(!b){break b}d=b<<2;if(!d){break b}c=v[37696];e=c+12|0;c=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?55463:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}e=v[a+260>>2];d=v[a+264>>2];if((d|0)>0){f=(d<<2)+c|0;d=c;while(1){v[d>>2]=v[e>>2];e=e+4|0;d=d+4|0;if(f>>>0>d>>>0){continue}break}e=v[a+260>>2]}if(!(!e|v[a+268>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+268>>2]=b;v[a+260>>2]=c}if(!(v[a+292>>2]&2147483616)){E4(a+284|0,32)}if(!(v[a+304>>2]&2147483616)){E4(a+296|0,32)}if(!(v[a+316>>2]&2147483616)){E4(a+308|0,32)}d=b>>>0<128?b:128;if(d>>>0>(v[a+280>>2]&2147483647)>>>0){b=0;c:{if(!d){break c}c=d<<2;if(!c){break c}b=v[37696];e=b+12|0;b=(m=e,l=c,k=Ba[v[v[b>>2]+20>>2]](b)|0?60363:63804,j=16608,i=553,h=v[v[e>>2]+8>>2],Ba[h](m|0,l|0,k|0,j|0,i|0)|0)}e=v[a+272>>2];c=v[a+276>>2];if((c|0)>0){f=(c<<2)+b|0;c=b;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}e=v[a+272>>2]}if(!(!e|v[a+280>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+280>>2]=d;v[a+272>>2]=b}xa=g+16|0}function hB(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;v[a+11980>>2]=0;h=b+63&-64;if(h>>>0>(v[a+11984>>2]&2147483647)>>>0){g=a+11976|0;a:{if(!h){break a}d=h<<5;if(!d){break a}b=v[37696];f=b+12|0;f=(k=f,l=d,m=Ba[v[v[b>>2]+20>>2]](b)|0?45645:63804,n=16608,o=553,j=v[v[f>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}d=v[g>>2];b=v[g+4>>2];if((b|0)>0){i=(b<<5)+f|0;b=f;while(1){e=v[d+4>>2];v[b>>2]=v[d>>2];v[b+4>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;d=d+32|0;b=b+32|0;if(i>>>0>b>>>0){continue}break}d=v[g>>2]}if(!(!d|v[g+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d)}v[g+8>>2]=h;v[g>>2]=f}v[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>(v[a+12152>>2]&2147483647)>>>0){g=a+12144|0;f=0;b:{if(!h){break b}d=B(h,52);if(!d){break b}b=v[37696];f=b+12|0;f=(o=f,n=d,m=Ba[v[v[b>>2]+20>>2]](b)|0?45777:63804,l=16608,k=553,j=v[v[f>>2]+8>>2],Ba[j](o|0,n|0,m|0,l|0,k|0)|0)}d=v[g>>2];b=v[g+4>>2];if((b|0)>0){i=B(b,52)+f|0;b=f;while(1){e=v[d+4>>2];v[b>>2]=v[d>>2];v[b+4>>2]=e;v[b+48>>2]=v[d+48>>2];e=v[d+44>>2];v[b+40>>2]=v[d+40>>2];v[b+44>>2]=e;e=v[d+36>>2];v[b+32>>2]=v[d+32>>2];v[b+36>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;d=d+52|0;b=b+52|0;if(i>>>0>b>>>0){continue}break}d=v[g>>2]}if(!(!d|v[g+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d)}v[g+8>>2]=h;v[g>>2]=f}v[a+12148>>2]=c;v[a+12132>>2]=v[a+11952>>2];v[a+12140>>2]=v[a+11976>>2]}function vM(a,b,c,d,e,f,g,h,i,j){var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0);k=z[d>>2];l=z[c>>2];v=z[g>>2];O=z[b>>2];w=z[f>>2];x=z[a>>2];y=z[e>>2];m=z[d+4>>2];n=z[c+4>>2];A=z[g+4>>2];P=z[b+4>>2];B=z[f+4>>2];D=z[a+4>>2];E=z[e+4>>2];o=z[d+8>>2];p=z[c+8>>2];F=z[g+8>>2];Q=z[b+8>>2];G=z[f+8>>2];H=z[a+8>>2];I=z[e+8>>2];J=z[g+12>>2];r=z[c+12>>2];K=z[f+12>>2];R=z[b+12>>2];L=z[e+12>>2];M=z[a+12>>2];S=C(C(J*r)+C(C(K*R)+C(L*M)));q=z[d+12>>2];T=C(C(q*q)+C(-.5));s=C(C(C(T*L)+C(q*C(C(J*R)-C(K*r))))+C(M*S));z[h+12>>2]=s+s;s=C(C(o*o)+C(-.5));U=C(C(F*p)+C(C(G*Q)+C(I*H)));t=C(C(C(I*s)+C(o*C(C(F*Q)-C(G*p))))+C(H*U));z[h+8>>2]=t+t;t=C(C(m*m)+C(-.5));V=C(C(A*n)+C(C(B*P)+C(E*D)));u=C(C(C(E*t)+C(m*C(C(A*P)-C(B*n))))+C(D*V));z[h+4>>2]=u+u;u=C(C(k*k)+C(-.5));W=C(C(v*l)+C(C(w*O)+C(y*x)));N=C(C(C(y*u)+C(k*C(C(v*O)-C(w*l))))+C(x*W));z[h>>2]=N+N;N=z[b>>2];X=z[b+4>>2];Y=z[b+8>>2];r=C(C(C(T*K)+C(q*C(C(L*r)-C(J*M))))+C(S*z[b+12>>2]));z[i+12>>2]=r+r;p=C(C(C(s*G)+C(o*C(C(I*p)-C(F*H))))+C(U*Y));z[i+8>>2]=p+p;n=C(C(C(t*B)+C(m*C(C(E*n)-C(A*D))))+C(V*X));z[i+4>>2]=n+n;l=C(C(C(u*w)+C(k*C(C(y*l)-C(v*x))))+C(W*N));z[i>>2]=l+l;l=z[c>>2];n=z[c+4>>2];p=z[c+8>>2];q=C(C(C(T*J)+C(q*C(C(K*M)-C(L*R))))+C(S*z[c+12>>2]));z[j+12>>2]=q+q;o=C(C(C(s*F)+C(o*C(C(G*H)-C(I*Q))))+C(U*p));z[j+8>>2]=o+o;m=C(C(C(t*A)+C(m*C(C(B*D)-C(E*P))))+C(V*n));z[j+4>>2]=m+m;k=C(C(C(u*v)+C(k*C(C(w*x)-C(y*O))))+C(W*l));z[j>>2]=k+k}function iV(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0);i=xa-112|0;xa=i;a:{b:{switch(v[c>>2]){case 0:j=z[c+4>>2];v[i+104>>2]=0;z[i+100>>2]=j;v[i+96>>2]=2;l=z[d+16>>2];z[i+16>>2]=l;k=z[d+20>>2];z[i+20>>2]=k;m=z[d+24>>2];z[i+36>>2]=m;z[i+32>>2]=k;z[i+40>>2]=j;z[i+28>>2]=l;z[i+24>>2]=m;c=x[h>>1];h=v[(v[e>>2]<<2)+(c&256?141688:141660)>>2];u[i+88>>1]=c;o=Ba[h|0](e,f,i+96|0,d,i+16|0,a,b,g,i+88|0,C(0))|0;break a;case 2:j=z[d+20>>2];l=z[d+16>>2];q=z[d+24>>2];k=z[d>>2];m=C(k+k);r=z[d+8>>2];t=z[d+4>>2];n=z[d+12>>2];s=C(n+n);p=z[c+8>>2];w=C(C(C(m*r)-C(t*s))*p);z[i+36>>2]=q-w;r=C(p*C(C(r*s)+C(m*t)));z[i+32>>2]=j-r;z[i+24>>2]=w+q;z[i+20>>2]=j+r;j=C(p*C(C(k*m)+C(C(n*s)+C(-1))));z[i+28>>2]=l-j;z[i+16>>2]=l+j;z[i+40>>2]=z[c+4>>2];h=x[h>>1];o=v[(v[e>>2]<<2)+(h&256?141688:141660)>>2];u[i+80>>1]=h;o=Ba[o|0](e,f,c,d,i+16|0,a,b,g,i+80|0,C(0))|0;break a;case 3:l=z[d+4>>2];m=C(l+l);j=z[d+8>>2];p=C(m*j);n=z[d>>2];k=C(n+n);s=z[d+12>>2];q=C(k*s);z[i+44>>2]=p-q;z[i+36>>2]=p+q;n=C(C(1)-C(n*k));p=C(l*m);z[i+48>>2]=n-p;r=n;n=C(j+j);q=C(j*n);z[i+32>>2]=r-q;j=C(k*j);m=C(m*s);z[i+40>>2]=j+m;l=C(k*l);k=C(n*s);z[i+28>>2]=l-k;z[i+24>>2]=j-m;z[i+20>>2]=l+k;z[i+16>>2]=C(C(1)-p)-q;z[i+52>>2]=z[d+16>>2];z[i+56>>2]=z[d+20>>2];z[i+60>>2]=z[d+24>>2];z[i+64>>2]=z[c+4>>2];z[i+68>>2]=z[c+8>>2];z[i+72>>2]=z[c+12>>2];h=x[h>>1];o=v[((h&256?84:56)+141660|0)+(v[e>>2]<<2)>>2];u[i+8>>1]=h;o=Ba[o|0](e,f,c,d,i+16|0,a,b,g,i+8|0,C(0))|0;break a;case 4:break b;default:break a}}o=v[e>>2];u[i>>1]=x[h>>1];o=Ba[v[((o<<2)+141660|0)+112>>2]](e,f,c,d,a,b,g,i,C(0))|0}xa=i+112|0;return o}function vO(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(!(v[a+132>>2]?v[a+128>>2]!=(v[a+308>>2]-1|0):0)){b=v[a+136>>2];c=v[a+148>>2];h=v[(b+(c<<3)|0)+4>>2]+(c<<7)|0;if(h){while(1){j=(d&127)<<6;k=d>>>7<<3;l=j+v[k+b>>2]|0;c=v[l+40>>2];b=v[c+32>>2];a:{if(!b|!w[b+35|0]){break a}b=v[a+212>>2];if(b>>>0>=(v[a+216>>2]&2147483647)>>>0){b=0;c=v[a+216>>2];i=c&2147483647?c<<1:1;b:{if(!i){break b}c=i<<2;if(!c){break b}b=v[37696];e=b+12|0;b=(n=e,o=c,p=Ba[v[v[b>>2]+20>>2]](b)|0?55111:63804,q=16608,r=553,m=v[v[e>>2]+8>>2],Ba[m](n|0,o|0,p|0,q|0,r|0)|0)}g=v[a+212>>2];f=(g<<2)+b|0;if((g|0)>0){e=v[a+208>>2];c=b;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}}v[f>>2]=v[l+40>>2];c:{if(v[a+216>>2]<0){break c}c=v[a+208>>2];if(!c){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,c);g=v[a+212>>2]}v[a+216>>2]=i;v[a+208>>2]=b;v[a+212>>2]=g+1;break a}v[v[a+208>>2]+(b<<2)>>2]=c;v[a+212>>2]=b+1}b=v[a+136>>2];c=v[(v[k+b>>2]+j|0)+40>>2];v[c+32>>2]=0;t[v[c+36>>2]+156|0]=0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}v[a+148>>2]=0;v[v[a+136>>2]+4>>2]=0}v[a+180>>2]=0;v[v[a+168>>2]+4>>2]=0;b=v[a+240>>2];if(!(!b|!v[a+256>>2])){I9(v[a+232>>2],255,b<<2);d=0;c=v[a+228>>2];b=v[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;v[c+(d<<2)>>2]=f;h=c+(f<<2)|0;f=d|2;v[h>>2]=f;h=c+(f<<2)|0;f=d|3;v[h>>2]=f;d=d+4|0;v[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;v[f>>2]=d;e=e+1|0;if((b|0)!=(e|0)){continue}break}}b=v[a+236>>2]-1|0}else{b=0}v[c+(b<<2)>>2]=-1;v[a+256>>2]=0;v[a+248>>2]=0}v[a+128>>2]=v[a+128>>2]+1}function UP(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=v[a+2376>>2];f=v[d+12>>2];a:{if(f){g=f-1|0;f=v[v[d+8>>2]+(g<<2)>>2];v[d+12>>2]=g;d=f+1|0;break a}e=d;f=v[d+4>>2];d=f+1|0;v[e+4>>2]=d}g=v[a+1140>>2];e=v[g+12>>2]&2147483647;if(e>>>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>e>>>0){XI(g,d)}v[g+8>>2]=d}a=v[a+980>>2];g=xa-16|0;xa=g;d=v[37696];e=Ba[v[v[d>>2]+20>>2]](d)|0?41651:63804;e=Ba[v[v[d+12>>2]+8>>2]](d+12|0,64,e,8887,1319)|0;d=e;t[d+60|0]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+4>>2]=0;v[d+8>>2]=0;v[d>>2]=f;v[d+20>>2]=-1;v[d+24>>2]=0;v[d+12>>2]=0;if(c){c=v[37696];h=Ba[v[v[c>>2]+20>>2]](c)|0?30137:63804;h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,44,h,8887,883)|0;c=h;v[c+4>>2]=-1;v[c>>2]=130904;v[c+8>>2]=0;v[c+12>>2]=0;v[c+32>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+40>>2]=d;v[c>>2]=130624;t[c+36|0]=0}v[d+16>>2]=h;v[g+12>>2]=e;d=v[a+372>>2];b:{if((d|0)==-1){d=v[a+380>>2];if(d>>>0>=(v[a+384>>2]&2147483647)>>>0){lI(a+376|0,g+12|0);break b}v[v[a+376>>2]+(d<<2)>>2]=e;v[a+380>>2]=d+1;break b}c=v[a+376>>2]+(d<<2)|0;v[a+372>>2]=v[c>>2];v[c>>2]=e}c=v[a+504>>2];c:{if(c){e=c-1|0;c=v[v[a+500>>2]+(e<<2)>>2];v[a+504>>2]=e;break c}c=v[a+496>>2];v[a+496>>2]=c-1;c=c<<2|3}e=f+1|0;if(e>>>0>=y[a+200>>2]){gI(a,e)}h=v[a+360>>2];v[a+360>>2]=e>>>0>h>>>0?e:h;e=f<<2;v[e+v[a+180>>2]>>2]=c;v[e+v[v[a+192>>2]+4>>2]>>2]=0;c=v[a+196>>2]+(f<<3)|0;v[c+4>>2]=d<<1|1;v[c>>2]=b;c=v[a+276>>2];b=v[c+4>>2]+B(f,24)|0;v[b+8>>2]=2122317823;v[b+12>>2]=-25165825;v[b>>2]=2122317823;v[b+4>>2]=2122317823;v[b+16>>2]=-25165825;v[b+20>>2]=-25165825;t[c+16|0]=1;v[a+368>>2]=v[a+368>>2]+1;xa=g+16|0;return d}function pO(a){var b=0,c=0,d=C(0),e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);b=xa-96|0;xa=b;c=v[a>>2];a:{if(!c){break a}e=v[a+8>>2];if(v[v[c+32>>2]+48>>2]==v[e+88>>2]){break a}f=b- -64|0;nO(f,e,c);oO(b+32|0,v[a+8>>2],v[a>>2]);g=z[b+52>>2];d=z[b+84>>2];h=z[b+56>>2];j=z[b+88>>2];i=z[b+48>>2];k=z[b+80>>2];gV(b+16|0,b,v[v[a+8>>2]+92>>2]+36|0,f);l=z[b+16>>2];m=z[b+20>>2];c=v[a+8>>2];z[c+84>>2]=z[b+24>>2]-C(j-h);z[c+80>>2]=m-C(d-g);z[c+76>>2]=l-C(k-i);z[c+64>>2]=z[b>>2];z[c+68>>2]=z[b+4>>2];z[c+72>>2]=z[b+8>>2];z[c+8>>2]=z[b+32>>2];z[c+12>>2]=z[b+36>>2];z[c+16>>2]=z[b+40>>2];d=z[b+44>>2];z[c+32>>2]=h;z[c+28>>2]=g;z[c+24>>2]=i;z[c+20>>2]=d;z[c+36>>2]=z[b+64>>2];z[c+40>>2]=z[b+68>>2];z[c+44>>2]=z[b+72>>2];z[c+48>>2]=z[b+76>>2];z[c+52>>2]=z[b+80>>2];z[c+56>>2]=z[b+84>>2];z[c+60>>2]=z[b+88>>2];v[c+88>>2]=v[v[v[a>>2]+32>>2]+48>>2]}c=v[a+4>>2];b:{if(!c){break b}e=v[a+12>>2];if(v[v[c+32>>2]+48>>2]==v[e+88>>2]){break b}f=b- -64|0;nO(f,e,c);oO(b+32|0,v[a+12>>2],v[a+4>>2]);g=z[b+52>>2];d=z[b+84>>2];h=z[b+56>>2];j=z[b+88>>2];i=z[b+48>>2];k=z[b+80>>2];gV(b+16|0,b,v[v[a+12>>2]+92>>2]+36|0,f);l=z[b+16>>2];m=z[b+20>>2];c=v[a+12>>2];z[c+84>>2]=z[b+24>>2]-C(j-h);z[c+80>>2]=m-C(d-g);z[c+76>>2]=l-C(k-i);z[c+64>>2]=z[b>>2];z[c+68>>2]=z[b+4>>2];z[c+72>>2]=z[b+8>>2];z[c+8>>2]=z[b+32>>2];z[c+12>>2]=z[b+36>>2];z[c+16>>2]=z[b+40>>2];d=z[b+44>>2];z[c+32>>2]=h;z[c+28>>2]=g;z[c+24>>2]=i;z[c+20>>2]=d;z[c+36>>2]=z[b+64>>2];z[c+40>>2]=z[b+68>>2];z[c+44>>2]=z[b+72>>2];z[c+48>>2]=z[b+76>>2];z[c+52>>2]=z[b+80>>2];z[c+56>>2]=z[b+84>>2];z[c+60>>2]=z[b+88>>2];v[c+88>>2]=v[v[v[a+4>>2]+32>>2]+48>>2]}xa=b+96|0}function E5(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0);e=z[b>>2];l=z[b+4>>2];f=z[b+12>>2];h=C(f+C(1));j=C(B9(l,h)*C(4));m=C(D(j));i=z[a+8>>2];g=z[a>>2];k=C(C(m+i)/g);o=C(k*k);q=i;k=z[b+8>>2];i=C(B9(k,h)*C(4));p=C(D(i));h=z[a+4>>2];n=C(C(q+p)/h);a=C(o+C(n*n))<=C(1);if(!a){n=C(e+e);r=C(f+f);u=C(C(n*k)-C(l*r));v=C(C(k*r)+C(n*l));r=C(C(e*n)+C(C(f*r)+C(-1)));a:{b:{if(g>=h){if(!(pC(0)?g:C(-g);break a}if(!(mC(0)?h:C(-h);f=C(0);break a}n=C(m*g);f=C(g*g);e=C(n-f);p=C(p*h);l=C(h*h);m=C(p-l);e=e>m?e:m;b=0;while(1){m=C(C(1)/C(f+e));k=C(n*m);s=C(k*k);k=C(C(1)/C(l+e));o=C(p*k);o=C(o*o);t=C(C(s+o)+C(-1));if(t>2]=l;j=C(o*j);g=C(C(C(j*g)-C(e*m))*f);z[c+4>>2]=g;e=C(C(C(i*e)-C(h*j))*f);z[c>>2]=e;z[d>>2]=C(C(C(m*g)-C(e*i))*u)+C(C(C(C(i*l)-C(g*j))*r)+C(v*C(C(j*e)-C(l*m))))}return!a}function WV(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0);g=xa-112|0;xa=g;m=z[d+20>>2];k=z[d+16>>2];p=z[d+24>>2];h=z[d>>2];i=C(h+h);n=z[d+8>>2];q=z[d+4>>2];l=z[d+12>>2];j=C(l+l);o=z[c+8>>2];r=C(C(C(i*n)-C(q*j))*o);u=C(p-r);z[g+60>>2]=u;n=C(o*C(C(n*j)+C(i*q)));q=C(m-n);z[g+56>>2]=q;h=C(o*C(C(h*i)+C(C(l*j)+C(-1))));v=C(k-h);z[g+52>>2]=v;w=C(k+h);z[g+40>>2]=w;n=C(m+n);z[g+44>>2]=n;p=C(r+p);z[g+48>>2]=p;z[g+64>>2]=z[c+4>>2];m=z[f+20>>2];k=z[f+16>>2];r=z[f+24>>2];h=z[f>>2];i=C(h+h);s=z[f+8>>2];t=z[f+4>>2];l=z[f+12>>2];j=C(l+l);o=z[e+8>>2];x=C(C(C(i*s)-C(t*j))*o);y=C(r-x);z[g+28>>2]=y;s=C(o*C(C(s*j)+C(i*t)));t=C(m-s);z[g+24>>2]=t;h=C(o*C(C(h*i)+C(C(l*j)+C(-1))));i=C(k-h);z[g+20>>2]=i;k=C(k+h);z[g+8>>2]=k;m=C(m+s);z[g+12>>2]=m;h=C(x+r);z[g+16>>2]=h;z[g+32>>2]=z[e+4>>2];z[g+104>>2]=u-p;z[g+100>>2]=q-n;z[g+96>>2]=v-w;z[g+88>>2]=y-h;z[g+84>>2]=t-m;z[g+80>>2]=i-k;i=H_(g+40|0,g+96|0,g+8|0,g+80|0,g+76|0,g+72|0);m=C(z[g+64>>2]+z[g+32>>2]);c=i>C(m*m);if(!c){h=z[g+48>>2];k=z[g+76>>2];j=C(h+C(k*C(z[g+60>>2]-h)));i=z[g+16>>2];h=z[g+72>>2];i=C(j-C(i+C(h*C(z[g+28>>2]-i))));l=z[g+40>>2];j=C(l+C(k*C(z[g+52>>2]-l)));l=z[g+8>>2];l=C(j-C(l+C(h*C(z[g+20>>2]-l))));j=z[g+44>>2];j=C(j+C(k*C(z[g+56>>2]-j)));k=z[g+12>>2];k=C(j-C(k+C(h*C(z[g+24>>2]-k))));n=C(C(i*i)+C(C(l*l)+C(k*k)));h=C(K(n));j=C(1);o=C(0);p=C(0);if(!(n>2]=p;z[a+4>>2]=o;z[a>>2]=j;m=C(m-h);z[b>>2]=m>C(0)?m:C(0)}xa=g+112|0;return!c|0}function rg(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;f=xa-32|0;xa=f;d=v[a+8>>2];if(d){lh(d+v[(x[d+4>>1]<<2)+86240>>2]|0,0,a)}d=v[a+12>>2];if(d){lh(d+v[(x[d+4>>1]<<2)+86240>>2]|0,0,a)}a:{b:{c:{d:{e:{if(!b){if(c){break c}v[a+8>>2]=0;v[a+12>>2]=0;d=0;break e}d=0;kh(v[(x[b+4>>1]<<2)+86240>>2]+b|0,0,a);if(c){break d}v[a+12>>2]=0;v[a+8>>2]=b;Ba[v[v[b>>2]+52>>2]](f,b);d=0;if(w[f|0]&8){break e}d=Ba[v[v[b>>2]+28>>2]](b)|0}i=1;break a}kh(v[(x[c+4>>1]<<2)+86240>>2]+c|0,0,a);v[a+12>>2]=c;v[a+8>>2]=b;Ba[v[v[b>>2]+52>>2]](f+16|0,b);if(w[f+16|0]&8){break b}d=Ba[v[v[b>>2]+28>>2]](b)|0;break b}d=0;kh(v[(x[c+4>>1]<<2)+86240>>2]+c|0,0,a);v[a+12>>2]=c;v[a+8>>2]=0}Ba[v[v[c>>2]+52>>2]](f+8|0,c);if(!(w[f+8|0]&8)){e=Ba[v[v[c>>2]+28>>2]](c)|0}e=e?d?d:e:0;d=b?d?e:0:e}g=a+16|0;f:{g:{h:{i:{if((v[a+20>>2]>>>30|0)-3>>>0<4294967294){break i}e=v[a+16>>2];if(!e){break i}e=e-16|0;if((e|0)==(d|0)){break h}if(!e){break g}v[f+20>>2]=a;Og(e+5892|0,f+20|0);Iu(e+16|0,g);break g}if(d){break g}}d=0;a=0;j:{if(!b){break j}k:{switch(x[b+4>>1]-5|0){case 0:a=b+48|0;break j;case 8:a=b+48|0;break j;default:break k}}a=b+48|0}l:{if(i){break l}m:{switch(x[c+4>>1]-5|0){case 0:d=c+48|0;break l;case 8:d=c+48|0;break l;default:break m}}d=c+48|0}sg(g,a,d);break f}e=0;n:{if(!b){break n}o:{switch(x[b+4>>1]-5|0){case 0:e=b+48|0;break n;case 8:e=b+48|0;break n;default:break o}}e=b+48|0}p:{if(i){break p}q:{switch(x[c+4>>1]-5|0){case 0:h=c+48|0;break p;case 8:h=c+48|0;break p;default:break q}}h=c+48|0}sg(g,e,h);if(!d){break f}v[f+24>>2]=a;a=qh(d+5892|0,f+24|0,f+31|0);if(!w[f+31|0]){v[a>>2]=v[f+24>>2]}Hu(d+16|0,g)}xa=f+32|0}function BX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);a=xa-48|0;xa=a;AV(a+32|0,b);r=z[e+24>>2];v[h+8>>2]=-1;k=z[e>>2];z[a>>2]=k;p=z[e+4>>2];z[a+4>>2]=p;q=z[e+8>>2];z[a+8>>2]=q;m=z[e+12>>2];z[a+12>>2]=m;l=z[e+16>>2];z[a+16>>2]=l;n=z[e+20>>2];z[a+20>>2]=n;o=n;n=z[a+40>>2];s=m;m=z[a+32>>2];t=l;l=z[a+36>>2];o=C(C(o*n)+C(C(s*m)+C(t*l)));k=C(C(q*n)+C(C(k*m)+C(p*l)));k=k>1];if(c&512){if(!(k<=C(j-z[a+44>>2]))){break c}u[h+12>>1]=3;j=z[e+8>>2];q=z[a+40>>2];n=z[e>>2];o=z[a+32>>2];m=z[e+4>>2];s=z[a+36>>2];l=z[a+44>>2];g=C(C(C(j*q)+C(C(n*o)+C(m*s)))+l);p=l;l=z[e+20>>2];k=z[e+12>>2];r=z[e+16>>2];p=C(p+C(C(l*q)+C(C(k*o)+C(s*r))));if(!(g>2]=o;z[h+36>>2]=q;z[h+32>>2]=s;l=z[e+24>>2];z[h+24>>2]=j-C(q*g);z[h+20>>2]=m-C(s*g);z[h+16>>2]=n-C(o*g);z[h+40>>2]=g-l;e=1;break a}if(!(k<=C(j-z[a+44>>2]))|c&16){break c}v[h+40>>2]=0;u[h+12>>1]=2;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break b}e=0;k=C(C(z[f+8>>2]*n)+C(C(z[f>>2]*m)+C(l*z[f+4>>2])));if(k>C(-1.0000000116860974e-7)&k>2]-C(j*n));p=C(z[b>>2]-C(j*m));q=C(z[b+4>>2]-C(j*l));j=C(C(-C(z[a+44>>2]+C(C(r*n)+C(C(p*m)+C(l*q)))))/k);z[h+40>>2]=j;k=z[f>>2];o=z[f+4>>2];z[h+24>>2]=r+C(j*z[f+8>>2]);z[h+20>>2]=q+C(o*j);z[h+16>>2]=p+C(k*j);if(!(j>C(0))|!(g>=j)){break a}z[h+28>>2]=m;u[h+12>>1]=3;z[h+36>>2]=n;z[h+32>>2]=l}e=1}xa=a+48|0;return e|0}function En(a,b,c,d){a=a|0;b=C(b);c=C(c);d=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;p=a;f=xa-32|0;xa=f;k=v[37389];a=v[k+2448>>2];if(!a){l=xa-16|0;xa=l;h=k+2160|0;e=v[h+284>>2];if(e){a=v[37696];j=Ba[v[v[a>>2]+20>>2]](a)|0?39311:63804;j=Ba[v[v[a+12>>2]+8>>2]](a+12|0,e,j,18373,180)|0}else{j=0}v[l+12>>2]=j;a=v[h+268>>2];a:{if(a>>>0>=(v[h+272>>2]&2147483647)>>>0){a=0;e=h+4|0;g=v[e+268>>2];m=g&2147483647?g<<1:1;b:{if(!m){break b}g=m<<2;if(!(w[e+256|0]|g>>>0>256)){t[e+256|0]=1;a=e;break b}if(!g){break b}a=v[37696];i=Ba[v[v[a>>2]+20>>2]](a)|0?39311:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,g,i,16608,553)|0}i=v[e+264>>2];o=(i<<2)+a|0;if((i|0)>0){n=v[e+260>>2];g=a;while(1){v[g>>2]=v[n>>2];n=n+4|0;g=g+4|0;if(o>>>0>g>>>0){continue}break}}v[o>>2]=v[l+12>>2];c:{if(v[e+268>>2]<0){break c}g=v[e+260>>2];if((g|0)==(e|0)){t[e+256|0]=0;break c}if(!g){break c}i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,g);i=v[e+264>>2]}v[e+268>>2]=m;v[e+260>>2]=a;v[e+264>>2]=i+1;break a}v[v[h+264>>2]+(a<<2)>>2]=j;v[h+268>>2]=a+1}a=((v[h+276>>2]<<6)+j|0)+-64|0;if(j>>>0<=a>>>0){e=v[h+288>>2];while(1){v[a>>2]=e;e=a;a=a+-64|0;if(j>>>0<=a>>>0){continue}break}v[h+288>>2]=e}xa=l+16|0;a=v[k+2448>>2]}v[k+2448>>2]=v[a>>2];e=k+2440|0;v[e>>2]=v[e>>2]+1;v[f+20>>2]=-842137601;v[f+12>>2]=-855638016;v[f+16>>2]=0;z[f+8>>2]=d;z[f+4>>2]=b;z[f>>2]=c;v[a+16>>2]=1;v[a+4>>2]=196616;v[a+8>>2]=0;v[a+12>>2]=121812;v[a>>2]=121708;e=v[f+4>>2];v[a+32>>2]=v[f>>2];v[a+36>>2]=e;v[a+40>>2]=v[f+8>>2];u[a+44>>1]=x[f+12>>1];u[a+46>>1]=x[f+14>>1];e=v[f+20>>2];v[a+48>>2]=v[f+16>>2];v[a+52>>2]=e;v[a+48>>2]=a;xa=f+32|0;return Dn(p,a)|0}function pJ(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=xa-16|0;xa=j;a:{b:{k=v[b+4>>2];h=w[v[k+44>>2]+9|0];l=v[c+4>>2];g=w[v[l+44>>2]+9|0];c:{d:{if(!((h|0)!=2|(g|0)!=2)){i=v[b+4>>2];i=w[v[(w[v[i+44>>2]+9|0]-1>>>0<2?i:0)+100>>2]+159|0]!=0;break d}if(!h){break c}}if(i|(h|0)==2&(g|0)==1){break c}if(!((h|0)!=1|(g|0)!=1)){i=v[b+4>>2];if(t[v[(w[v[i+44>>2]+9|0]-1>>>0<2?i:0)+44>>2]+44|0]&1){break c}}if((g|0)!=(h|0)|y[k+48>>2]>=y[l+48>>2]){break b}}g=c;break a}g=b;b=c}if(!f){f=v[a+984>>2];if(!f){tJ(a+696|0);f=v[a+984>>2]}v[a+984>>2]=v[f>>2];v[a+976>>2]=v[a+976>>2]+1}u[j+8>>1]=x[d>>1];a=TH(f+4|0,v[g+4>>2],v[b+4>>2],0,5);v[f+32>>2]=b;v[f+28>>2]=g;u[f+64>>1]=0;v[f+56>>2]=0;v[f+60>>2]=-1;v[f+48>>2]=0;v[f+52>>2]=-1;v[f+36>>2]=-1;v[f+40>>2]=-1;v[f>>2]=139148;v[f+44>>2]=x[j+8>>1]&32767;b=v[v[a>>2]+40>>2];c=v[v[f+32>>2]+4>>2];c=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;d=x[j+8>>1];h=1;e:{f:{g=v[g+4>>2];g=w[v[g+44>>2]+9|0]-1>>>0<2?g:0;g:{if(t[v[g+44>>2]+44|0]&1){if(!c){break g}h=!(t[v[c+44>>2]+44|0]&1)}if(!(d&1)){break g}if(h){break f}}h=v[f+44>>2]|262144;break e}h=v[f+44>>2]&-262145}v[f+44>>2]=h;h:{i:{if(!(d&514|z[v[b+976>>2]+1056>>2]!=C(0)|(z[v[b+976>>2]+1060>>2]!=C(0)|z[v[b+976>>2]+1064>>2]!=C(0)))){if(z[v[b+976>>2]+1068>>2]==C(0)){break i}}d=v[f+44>>2]|131072;break h}d=v[f+44>>2]&-131073}v[f+44>>2]=d;j:{if(!e){e=v[g+144>>2];d=v[g+100>>2];v[d+148>>2]=v[d+148>>2]+1;k:{if(!c){d=-128;break k}d=v[c+144>>2];c=v[c+100>>2];v[c+148>>2]=v[c+148>>2]+1}m=f,n=ZF(v[b+1e3>>2],0,e,d,a),v[m+60>>2]=n;c=XP(a);UE(v[a>>2],a);UE(v[f+8>>2],a);gJ(v[b+2168>>2],f);WO(b,a,c);break j}HR(f,e)}xa=j+16|0;return f}function dw(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0);e=v[a+100>>2];f=(e+x[e+18>>1]|0)+144|0;m=C(-z[d+8>>2]);n=C(-z[d+4>>2]);o=C(-z[d>>2]);j=C(-z[c+8>>2]);k=C(-z[c+4>>2]);l=C(-z[c>>2]);if(b){a=x[e+4>>1]<<5;t=(((a+e|0)+a|0)+a|0)+128|0;u=x[e+6>>1]+e|0;a=b;while(1){c=B(a,160)+f|0;y=z[c+16>>2];A=z[c+48>>2];D=z[c+80>>2];E=z[c+20>>2];F=z[c+52>>2];G=z[c+84>>2];d=(a<<5)+u|0;p=z[d+8>>2];H=z[c+8>>2];I=z[c+40>>2];J=z[c+72>>2];K=z[c+24>>2];L=z[c+56>>2];M=z[c+88>>2];q=z[d>>2];N=z[c+4>>2];O=z[c+36>>2];P=z[c+68>>2];r=z[d+4>>2];Q=z[c>>2];R=z[c+32>>2];S=z[c+64>>2];c=(a<<4)+t|0;T=z[c>>2];U=z[c+4>>2];g=z[d+24>>2];i=z[c+8>>2];s=z[d+20>>2];h=z[d+16>>2];v[c+12>>2]=0;V=i;i=C(m+C(C(l*s)-C(h*k)));z[c+8>>2]=V+i;h=C(n+C(C(j*h)-C(g*l)));z[c+4>>2]=U+h;g=C(o+C(C(k*g)-C(s*j)));z[c>>2]=T+g;k=C(k-C(C(N*g)+C(C(h*O)+C(i*P))));l=C(l-C(C(Q*g)+C(C(h*R)+C(i*S))));m=C(C(m-C(C(g*K)+C(C(h*L)+C(i*M))))+C(C(q*k)-C(r*l)));j=C(j-C(C(g*H)+C(C(h*I)+C(i*J))));n=C(C(n-C(C(g*E)+C(C(h*F)+C(i*G))))+C(C(p*l)-C(q*j)));o=C(C(o-C(C(g*y)+C(C(h*A)+C(i*D))))+C(C(r*j)-C(k*p)));a=w[(a+e|0)- -64|0];if(a){continue}break}}v[e+44>>2]=0;v[e+60>>2]=0;z[e+32>>2]=l+z[e+32>>2];z[e+40>>2]=j+z[e+40>>2];z[e+36>>2]=k+z[e+36>>2];z[e+48>>2]=o+z[e+48>>2];z[e+52>>2]=n+z[e+52>>2];z[e+56>>2]=m+z[e+56>>2];a=B(b,160)+f|0;b=v[a+152>>2];a=v[e+12>>2]|v[a+156>>2];v[e+8>>2]=v[e+8>>2]|b;v[e+12>>2]=a}function OY(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);c=xa-160|0;xa=c;d=v[a+16>>2];e=v[a+20>>2];v[c+128>>2]=-25165825;v[c+132>>2]=-25165825;v[c+120>>2]=2122317823;v[c+124>>2]=-25165825;t[c+141|0]=0;t[c+142|0]=0;t[c+143|0]=0;t[c+144|0]=0;t[c+145|0]=0;t[c+146|0]=0;t[c+147|0]=0;t[c+148|0]=0;v[c+136>>2]=0;v[c+140>>2]=0;v[c+112>>2]=2122317823;v[c+116>>2]=2122317823;v[c+84>>2]=1;v[c+80>>2]=b+8;v[c+72>>2]=d;v[c+76>>2]=e;v[c+88>>2]=c+156;b=v[a+36>>2];JY(c+48|0,c+72|0);i=z[b+8>>2];h=z[c+56>>2];j=C(h+h);k=z[b>>2];h=z[c+48>>2];l=C(h+h);h=z[c+52>>2];m=C(h+h);n=z[b+4>>2];o=C(C(i*j)+C(C(k*l)+C(m*n)));d=v[a+24>>2];h=z[b+12>>2];p=C(C(h*h)+C(-.5));if(z[a+12>>2]<=C(C(C(z[d>>2]*C(-C(C(k*o)+C(C(l*p)+C(h*C(C(n*j)-C(m*i)))))))-C(z[d+4>>2]*C(C(n*o)+C(C(m*p)+C(h*C(C(i*l)-C(j*k)))))))-C(z[d+8>>2]*C(C(i*o)+C(C(j*p)+C(h*C(C(k*m)-C(l*n)))))))){KY(c+72|0,c+48|0,v[a+36>>2]);d=v[a+40>>2];b=v[a+44>>2];h=z[b>>2];i=z[b+4>>2];z[c+40>>2]=z[b+8>>2]*C(1.100000023841858);z[c+36>>2]=i*C(1.100000023841858);z[c+32>>2]=h*C(1.100000023841858);h=z[c+56>>2];i=z[c+68>>2];z[c+24>>2]=C(h+i)*C(.5);j=z[c+52>>2];k=z[c- -64>>2];z[c+20>>2]=C(j+k)*C(.5);l=z[c+48>>2];m=z[c+60>>2];z[c+16>>2]=C(l+m)*C(.5);z[c+8>>2]=C(C(C(i-h)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[c+4>>2]=C(C(C(k-j)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[c>>2]=C(C(C(m-l)*C(.5))+C(.009999999776482582))*C(1.100000023841858);h=rO(d,c+32|0,c+16|0,c,v[a+28>>2],v[a+32>>2]);i=z[a+8>>2];h=h>i?i:h;z[a+8>>2]=h;z[f>>2]=h}xa=c+160|0;return z[a+8>>2]>C(0)|0}function w_(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=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=0,n=C(0),o=0,p=0,q=C(0),r=C(0),s=0,t=C(0),u=C(0),y=C(0),A=C(0),E=0;h=xa-48|0;xa=h;p=v[a+28>>2];q=z[d+32>>2];r=z[d+20>>2];t=z[d+28>>2];u=z[d+16>>2];y=z[d+8>>2];A=z[d+4>>2];g=z[b+8>>2];i=z[b>>2];j=z[b+4>>2];l=C(C(z[c+8>>2]*g)+C(C(z[c>>2]*i)+C(z[c+4>>2]*j)));n=C(C(z[c+20>>2]*g)+C(C(z[c+12>>2]*i)+C(j*z[c+16>>2])));g=C(C(z[c+32>>2]*g)+C(C(z[c+24>>2]*i)+C(j*z[c+28>>2])));i=C(C(C(l*z[d>>2])+C(n*z[d+12>>2]))+C(g*z[d+24>>2]));z[h+32>>2]=i;j=C(C(C(l*A)+C(n*u))+C(g*t));z[h+36>>2]=j;g=C(C(C(l*y)+C(n*r))+C(g*q));z[h+40>>2]=g;a=v[a+60>>2];d=x[a>>1];l=C(-g);z[h+16>>2]=l;n=C(-j);z[h+12>>2]=n;q=C(-i);z[h+8>>2]=q;g=C(D(g));i=C(D(i));m=g>i;j=C(D(j));o=j>i&g>2]>>>31);r=C(C(d-1>>>0)*C(.5));i=C(C(1)/(o?j:m?g:i));m=(k+(k>>>1|0)|0)+1|0;o=m&3;g=C(r*C(C(i*z[(o<<2)+s>>2])+C(1)));a:{if(g=C(0)){k=~~g>>>0;break a}k=0}k=B(d,(E+k|0)+(C(g-C(k>>>0))>C(.5))|0);g=C(r*C(C(i*z[(h+8|0)+(((m+(o>>>1|0)|0)+1&3)<<2)>>2])+C(1)));b:{if(g=C(0)){d=~~g>>>0;break b}d=0}m=v[a+4>>2];d=k+(d+(C(g-C(d>>>0))>C(.5))|0)|0;v[h+28>>2]=w[m+d|0];v[h+24>>2]=w[d+(m+x[a+2>>1]|0)|0];z[h+16>>2]=l;z[h+12>>2]=n;z[h+8>>2]=q;t_(h+28|0,h+8|0,p,a);t_(h+24|0,h+32|0,p,a);g=C(C(z[c+44>>2]*z[b+8>>2])+C(C(z[c+36>>2]*z[b>>2])+C(z[c+40>>2]*z[b+4>>2])));a=B(v[h+28>>2],12)+p|0;i=z[h+40>>2];j=z[h+32>>2];l=z[h+36>>2];z[e>>2]=g+C(C(z[a+8>>2]*i)+C(C(z[a>>2]*j)+C(z[a+4>>2]*l)));a=B(v[h+24>>2],12)+p|0;z[f>>2]=g+C(C(i*z[a+8>>2])+C(C(j*z[a>>2])+C(l*z[a+4>>2])));xa=h+48|0}function fA(a,b){var c=C(0),d=0,e=C(0),f=0,g=0,h=C(0),i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=0,F=C(0),G=C(0),H=C(0),I=0,J=0,K=0,L=C(0),M=C(0),N=C(0),O=0,P=0;g=v[a>>2];k=z[g+24>>2];l=z[g+20>>2];m=z[g+16>>2];n=z[g+8>>2];o=z[g+4>>2];p=z[g>>2];d=x[a+22>>1];if(d){f=v[a+24>>2];O=f+(d<<4)|0;while(1){a=f;E=a- -64|0;d=w[a+2|0];J=E+B(d,48)|0;K=J+((d<<2)+12&2032)|0;j=w[a+3|0];P=j<<6;q=z[a+12>>2];L=z[a+4>>2];c=C(0);if(d){r=z[a+32>>2];H=C(q*r);s=z[a+40>>2];F=C(q*s);t=z[a+36>>2];G=C(q*t);i=0;while(1){f=(i<<2)+J|0;e=z[f>>2];h=C(-e);I=f;f=E+B(i,48)|0;u=z[f+44>>2];y=z[f>>2];A=z[f+4>>2];M=z[f+8>>2];N=C(z[f+36>>2]-C(z[f+32>>2]*C(C(C(C(r*p)+C(m*y))+C(C(t*o)+C(l*A)))+C(C(s*n)+C(k*M)))));h=C(e+(hu?u:h;z[I>>2]=h;c=C(c+h);e=C(h-e);n=C(n+C(F*e));o=C(o+C(G*e));p=C(p+C(H*e));e=C(L*e);k=C(k+C(M*e));l=C(l+C(A*e));m=C(m+C(y*e));i=i+1|0;if((d|0)!=(i|0)){continue}break}}f=K+P|0;if(!(!w[b|0]|!j)){H=C(c*z[a+16>>2]);E=j>>>0>1?j:1;e=C(c*z[a+20>>2]);h=C(-e);i=0;j=0;while(1){d=(i<<6)+K|0;s=z[d+12>>2];c=z[d+28>>2];F=z[d>>2];t=z[d+16>>2];G=z[d+4>>2];u=z[d+20>>2];y=z[d+8>>2];A=z[d+24>>2];c=C(C(s-C(c*C(z[d+44>>2]-z[d+48>>2])))-C(c*C(C(C(C(p*F)+C(m*t))+C(C(o*G)+C(l*u)))+C(C(n*y)+C(k*A)))));r=cr?r:e:c;z[I+12>>2]=c;c=C(c-s);n=C(n+C(C(q*y)*c));o=C(o+C(C(q*G)*c));p=C(p+C(C(q*F)*c));c=C(L*c);k=C(k+C(A*c));l=C(l+C(u*c));m=C(m+C(t*c));j=0-(d|(j|0)!=0)|0;i=i+1|0;if((E|0)!=(i|0)){continue}break}v[a+52>>2]=j}if(f>>>0>>0){continue}break}}z[g+24>>2]=k;z[g+20>>2]=l;z[g+16>>2]=m;z[g+8>>2]=n;z[g+4>>2]=o;z[g>>2]=p}function KE(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=xa-16|0;xa=j;c=v[a+20>>2];if(c){g=v[32386];h=v[a+16>>2];while(1){d=v[h+(b<<2)>>2];e=v[a+4>>2]+(d>>>3&536870908)|0;i=v[e>>2];l=e,m=Uaa(-2,d)&i,v[l>>2]=m;e=v[a>>2];d=Ba[v[v[e>>2]+40>>2]](e,d,j+12|0)|0;Ba[g|0](v[j+12>>2],v[d>>2],v[d+4>>2]);b=b+1|0;if((c|0)!=(b|0)){continue}break}b=v[a>>2];Ba[v[v[b>>2]+8>>2]](b,h,c);v[a+20>>2]=0;v[a+32>>2]=c+v[a+32>>2]}c=v[a+56>>2];if(c){h=v[a+52>>2];g=v[32387];b=0;while(1){d=v[h+(b<<2)>>2];e=v[a+40>>2]+(d>>>3&536870908)|0;i=v[e>>2];l=e,m=Uaa(-2,d)&i,v[l>>2]=m;e=v[a+36>>2];d=Ba[v[v[e>>2]+40>>2]](e,d,j+12|0)|0;Ba[g|0](v[j+12>>2],v[d>>2],v[d+4>>2]);b=b+1|0;if((c|0)!=(b|0)){continue}break}b=v[a+36>>2];Ba[v[v[b>>2]+8>>2]](b,h,c);v[a+56>>2]=0;v[a+68>>2]=c+v[a+68>>2]}b=0;h=xa-16|0;xa=h;g=v[a+112>>2];a:{if(!g){break a}e=v[a+80>>2];while(1){c=v[a+72>>2];d=e+(b<<3)|0;i=v[d+4>>2];f=v[d>>2];c=v[Ba[v[v[c>>2]+40>>2]](c,i,f,h+12|0)>>2];d=v[c+8>>2];k=v[c+4>>2];dV(v[h+12>>2],k&1?d- -64|0:c+84|0,k&4?d:c+48|0,C(1.0099999904632568));c=v[a+72>>2];Ba[v[v[c>>2]+12>>2]](c,f,i);b=b+1|0;if((g|0)!=(b|0)){continue}break}b=v[a+96>>2];if(!b|!v[a+112>>2]){break a}I9(v[a+88>>2],255,b<<2);b=0;c=v[a+84>>2];e=v[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;v[c+(b<<2)>>2]=f;k=c+(f<<2)|0;f=b|2;v[k>>2]=f;k=c+(f<<2)|0;f=b|3;v[k>>2]=f;b=b+4|0;v[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;v[e>>2]=b;g=g+1|0;if((d|0)!=(g|0)){continue}break}}b=v[a+92>>2]-1|0}else{b=0}v[c+(b<<2)>>2]=-1;v[a+112>>2]=0;v[a+104>>2]=0}xa=h+16|0;xa=j+16|0}function OP(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,w=0;if(c){j=d+144|0;u=j-1|0;w=0-!j|0;while(1){s=p+1|0;a:{if(s>>>0>=c>>>0){break a}o=0;j=0;i=w;m=v[(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=v[a+2384>>2];j=v[h+12>>2]+B(v[h+8>>2],12)|0;l=v[j+4>>2];b:{if(l){v[j+4>>2]=v[l>>2];break b}c:{i=v[j+8>>2];if((i|0)==v[h>>2]){break c}k=v[h+4>>2];v[j+8>>2]=i+1;j=v[j>>2];if(!j){break c}l=j+B(i,k)|0;break b}l=MO(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=v[(p<<2)+b>>2]+d|0;_R(v[f>>2],e,i);h=B(p,24)+g|0;k=v[f>>2];j=v[v[a+1140>>2]+4>>2]+B(v[k+8>>2]&2147483647,24)|0;z[h>>2]=z[j>>2];z[h+4>>2]=z[j+4>>2];z[h+8>>2]=z[j+8>>2];z[h+12>>2]=z[j+12>>2];z[h+16>>2]=z[j+16>>2];z[h+20>>2]=z[j+20>>2];j=v[a+1012>>2];Ba[v[v[j>>2]+16>>2]](j,k+12|0,v[k+32>>2]);v[f>>2]=l;j=((v[i+68>>2]<<2)+a|0)+2676|0;v[j>>2]=v[j>>2]+1;j=v[v[a+976>>2]+1024>>2];Ba[v[v[j>>2]+44>>2]](j,i+32|0);p=s;if((p|0)!=(c|0)){continue}break}}}function ks(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=v[a+8>>2];a:{if(!e){break a}g=v[a+4>>2];if((e|0)!=1){i=e&-2;while(1){h=d<<4;c=g+h|0;z[c>>2]=z[b>>2]+z[c>>2];z[c+4>>2]=z[b+4>>2]+z[c+4>>2];z[c+8>>2]=z[b+8>>2]+z[c+8>>2];c=g+(h|16)|0;z[c>>2]=z[b>>2]+z[c>>2];z[c+4>>2]=z[b+4>>2]+z[c+4>>2];z[c+8>>2]=z[b+8>>2]+z[c+8>>2];d=d+2|0;f=f+2|0;if((i|0)!=(f|0)){continue}break}}if(!(e&1)){break a}d=g+(d<<4)|0;z[d>>2]=z[b>>2]+z[d>>2];z[d+4>>2]=z[b+4>>2]+z[d+4>>2];z[d+8>>2]=z[b+8>>2]+z[d+8>>2]}f=v[a+20>>2];if(f){e=v[a+16>>2];d=0;while(1){c=e+(d<<5)|0;z[c>>2]=z[b>>2]+z[c>>2];z[c+4>>2]=z[b+4>>2]+z[c+4>>2];z[c+8>>2]=z[b+8>>2]+z[c+8>>2];z[c+16>>2]=z[b>>2]+z[c+16>>2];z[c+20>>2]=z[b+4>>2]+z[c+20>>2];z[c+24>>2]=z[b+8>>2]+z[c+24>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}}f=v[a+32>>2];if(f){e=v[a+28>>2];d=0;while(1){c=e+B(d,48)|0;z[c>>2]=z[b>>2]+z[c>>2];z[c+4>>2]=z[b+4>>2]+z[c+4>>2];z[c+8>>2]=z[b+8>>2]+z[c+8>>2];z[c+16>>2]=z[b>>2]+z[c+16>>2];z[c+20>>2]=z[b+4>>2]+z[c+20>>2];z[c+24>>2]=z[b+8>>2]+z[c+24>>2];z[c+32>>2]=z[b>>2]+z[c+32>>2];z[c+36>>2]=z[b+4>>2]+z[c+36>>2];z[c+40>>2]=z[b+8>>2]+z[c+40>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}}c=v[a+44>>2];b:{if(!c){break b}e=v[a+40>>2];d=0;if((c|0)!=1){g=c&-2;f=0;while(1){a=e+B(d,24)|0;z[a>>2]=z[b>>2]+z[a>>2];z[a+4>>2]=z[b+4>>2]+z[a+4>>2];z[a+8>>2]=z[b+8>>2]+z[a+8>>2];a=e+B(d|1,24)|0;z[a>>2]=z[b>>2]+z[a>>2];z[a+4>>2]=z[b+4>>2]+z[a+4>>2];z[a+8>>2]=z[b+8>>2]+z[a+8>>2];d=d+2|0;f=f+2|0;if((g|0)!=(f|0)){continue}break}}if(!(c&1)){break b}a=e+B(d,24)|0;z[a>>2]=z[b>>2]+z[a>>2];z[a+4>>2]=z[b+4>>2]+z[a+4>>2];z[a+8>>2]=z[b+8>>2]+z[a+8>>2]}}function eJ(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=v[c+4>>2];k=w[v[k+44>>2]+9|0]-1>>>0<2?k:0;h=v[d+4>>2];m=w[v[h+44>>2]+9|0]-1>>>0<2?h:0;i=f;f=w[v[d+28>>2]- -64|0];h=w[v[c+28>>2]- -64|0];j=(f|h)&4;t[i|0]=j>>>2;a:{b:{c:{if(j){if(!(f&h&4)){break c}break a}d:{e:{f:{g:{h:{if(k){f=t[v[k+44>>2]+44|0]&1;if(m){break h}if(v[b+24>>2]?f:0){break b}j=v[d+4>>2];i=v[c+4>>2];break g}f=0;if(m){break h}j=v[d+4>>2];i=v[c+4>>2];break d}h=v[b+20>>2];i:{j=t[v[m+44>>2]+44|0]&1;if(!(j?1:f)){break i}if(!(v[b+24>>2]?k:1)){break b}if(!h|!(f&j)){break i}break b}j=v[d+4>>2];i=v[c+4>>2];if(!k){break f}}if(!(t[k+149|0]&1)){break d}f=v[k+28>>2];h=v[j+28>>2];l=f>>>0>>0?f:h;if(!l){break d}f=f>>>0>h>>>0;n=f?k:j;f=v[(f?j:k)+20>>2];while(1){h=v[f>>2];if(w[h+20|0]==4&((n|0)==v[h>>2]|(n|0)==v[h+4>>2])){break e}f=f+4|0;l=l-1|0;if(l){continue}break}break d}if(!(t[m+149|0]&1)){break d}f=v[m+28>>2];h=v[i+28>>2];l=f>>>0>>0?f:h;if(!l){break d}f=f>>>0>h>>>0;n=f?m:i;f=v[(f?i:m)+20>>2];while(1){h=v[f>>2];if(w[h+20|0]==4&((n|0)==v[h>>2]|(n|0)==v[h+4>>2])){break e}f=f+4|0;l=l-1|0;if(l){continue}break}break d}if(w[v[v[h+24>>2]+52>>2]]&8){break d}break b}if(w[v[i+44>>2]+9|0]!=2|w[v[j+44>>2]+9|0]!=2){break c}h=v[i+28>>2];if(!h){break c}f=v[i+20>>2];while(1){i=v[f>>2];if(w[i+20|0]==5&(v[i>>2]==(j|0)|v[i+4>>2]==(j|0))){break a}f=f+4|0;h=h-1|0;if(h){continue}break}}bJ(a,b,c,d,k,m,e,g);return}if((e|0)!=-1){b=v[b+16>>2];v[v[b>>2]+(e<<2)>>2]=v[b+12>>2];v[b+12>>2]=e}v[a>>2]=2;v[a+4>>2]=-1;return}if((e|0)!=-1){b=v[b+16>>2];v[v[b>>2]+(e<<2)>>2]=v[b+12>>2];v[b+12>>2]=e}v[a>>2]=1;v[a+4>>2]=-1}function GX(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0);l=xa-80|0;xa=l;if(b&1024){h=z[e+20>>2];r=z[a+20>>2];j=z[e+24>>2];n=z[a+24>>2];A=w[d+39|0];m=z[e+8>>2];g=z[e+4>>2];s=z[e+16>>2];t=z[a+16>>2];o=z[f>>2];i=z[e>>2];p=z[f+4>>2];k=z[e+12>>2];q=z[f+8>>2];IX(l,c+4|0,c+16|0);a:{if(!A){c=0;break a}j=C(C(n-C(q*C(.009999999776482582)))-j);j=C(j+j);n=C(C(t-C(o*C(.009999999776482582)))-s);n=C(n+n);h=C(C(r-C(p*C(.009999999776482582)))-h);r=C(h+h);s=C(C(m*j)+C(C(i*n)+C(r*g)));h=C(C(k*k)+C(-.5));t=C(C(m*s)+C(C(j*h)-C(k*C(C(i*r)-C(n*g)))));D=C(C(g*s)+C(C(r*h)-C(k*C(C(m*n)-C(j*i)))));n=C(C(i*s)+C(C(n*h)-C(k*C(C(g*j)-C(r*m)))));q=C(q+q);o=C(o+o);p=C(p+p);j=C(C(m*q)+C(C(i*o)+C(p*g)));r=C(C(m*j)+C(C(q*h)-C(k*C(C(i*p)-C(o*g)))));s=C(C(g*j)+C(C(p*h)-C(k*C(C(m*o)-C(q*i)))));o=C(C(i*j)+C(C(o*h)-C(k*C(C(g*q)-C(p*m)))));d=v[d+40>>2];p=z[l+68>>2];q=z[l- -64>>2];j=z[l+60>>2];E=z[l+56>>2];F=z[l+52>>2];G=z[l+48>>2];H=z[l+44>>2];I=z[l+40>>2];m=C(34028234663852886e22);c=0;J=z[l+36>>2];f=0;while(1){b=d+B(f,20)|0;g=z[b+8>>2];i=z[b>>2];k=z[b+4>>2];h=C(C(p*g)+C(C(j*i)+C(q*k)));y=h;L=C(h*h);h=C(C(H*g)+C(C(J*i)+C(I*k)));i=C(C(E*g)+C(C(G*i)+C(F*k)));g=C(C(1)/C(K(C(L+C(C(h*h)+C(i*i))))));k=C(y*g);y=C(z[b+12>>2]*g);h=C(h*g);g=C(i*g);i=C(y+C(C(t*k)+C(C(n*h)+C(D*g))));if(!(i>2]=c;u[a+12>>1]=x[a+12>>1]|1024}xa=l+80|0}function iU(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=xa-16|0;xa=e;b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?26695:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,60,c,8633,288)|0;v[b+4>>2]=0;v[b+8>>2]=0;v[b>>2]=140412;v[b+12>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+24>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=2;c=v[37696];i=b,j=Ba[v[v[c+12>>2]+8>>2]](c+12|0,8,24422,6126,44)|0,v[i+28>>2]=j;a:{b:{c=v[b+36>>2]<<1;c:{if(!c){v[b+40>>2]=0;break c}d=v[37696];i=b,j=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,6126,45)|0,v[i+40>>2]=j;c=v[b+36>>2]<<1;if(c){break b}}v[b+44>>2]=0;c=0;d=0;break a}d=v[37696];i=b,j=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,6126,46)|0,v[i+44>>2]=j;c=v[b+36>>2]<<1;if(!c){c=0;d=0;break a}d=v[37696];c=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,6126,47)|0;d=v[b+36>>2]<<1}v[b+48>>2]=c;I9(v[b+40>>2],255,d);I9(v[b+44>>2],255,v[b+36>>2]<<1);I9(v[b+48>>2],0,v[b+36>>2]<<1);v[b+56>>2]=a;v[e+12>>2]=b;c=v[a+124>>2];d:{if(c>>>0>=(v[a+128>>2]&2147483647)>>>0){b=0;c=v[a+128>>2];f=c&2147483647?c<<1:1;e:{if(!f){break e}c=f<<2;if(!c){break e}b=v[37696];d=b+12|0;b=(j=d,k=c,l=Ba[v[v[b>>2]+20>>2]](b)|0?55703:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}d=v[a+124>>2];h=(d<<2)+b|0;if((d|0)>0){g=v[a+120>>2];c=b;while(1){v[c>>2]=v[g>>2];g=g+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[e+12>>2];f:{if(v[a+128>>2]<0){break f}c=v[a+120>>2];if(!c){break f}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c);d=v[a+124>>2]}v[a+128>>2]=f;v[a+120>>2]=b;v[a+124>>2]=d+1;break d}v[v[a+120>>2]+(c<<2)>>2]=b;v[a+124>>2]=c+1}xa=e+16|0;return v[e+12>>2]}function _1(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=0,n=0,o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0);n=xa-1024|0;xa=n;l=v[a+24>>2];b=v[b+40>>2];r=z[b+40>>2];g=z[d+8>>2];s=z[b+8>>2];k=z[d>>2];f=z[d+4>>2];t=z[b+24>>2];i=C(C(r*g)+C(C(s*k)+C(f*t)));u=z[b+32>>2];w=z[b>>2];x=z[b+16>>2];j=C(C(u*g)+C(C(w*k)+C(f*x)));y=z[b+36>>2];A=z[b+4>>2];E=z[b+20>>2];o=C(C(y*g)+C(C(A*k)+C(f*E)));g=C(z[l+12>>2]+C(C(i*z[l+8>>2])+C(C(j*z[l>>2])+C(o*z[l+4>>2]))));p=C(-e);k=p<=g?C(D(g)):C(34028234663852886e22);z[n>>2]=k;b=1;d=0;q=v[a+16>>2];a:{if(q>>>0<=1){a=0;break a}a=0;while(1){m=B(b,20)+l|0;f=C(z[m+12>>2]+C(C(i*z[m+8>>2])+C(C(j*z[m>>2])+C(o*z[m+4>>2]))));h=f>=p?C(D(f)):C(34028234663852886e22);z[(b<<2)+n>>2]=h;m=hg;g=G?f:g;a=m?b:a;d=G?b:d;b=b+1|0;if((q|0)!=(b|0)){continue}break}}b:{if(k==C(34028234663852886e22)){break b}if(!q){d=a;break b}b=B(a,20)+l|0;g=z[b+8>>2];f=z[b>>2];h=z[b+4>>2];i=C(C(r*g)+C(C(u*f)+C(y*h)));j=i;F=C(i*i);i=C(C(s*g)+C(C(w*f)+C(A*h)));g=C(C(t*g)+C(C(x*f)+C(E*h)));f=C(C(1)/C(K(C(F+C(C(i*i)+C(g*g))))));o=z[c+8>>2];p=z[c>>2];H=z[c+4>>2];g=C(C(C(j*f)*o)+C(C(C(i*f)*p)+C(H*C(g*f))));b=0;d=a;while(1){if(!(!(C(z[(b<<2)+n>>2]-k)>2];h=z[c>>2];i=z[c+4>>2];j=C(C(r*f)+C(C(u*h)+C(y*i)));F=j;I=C(j*j);j=C(C(s*f)+C(C(w*h)+C(A*i)));f=C(C(t*f)+C(C(x*h)+C(E*i)));h=C(C(1)/C(K(C(I+C(C(j*j)+C(f*f))))));f=C(C(C(F*h)*o)+C(C(C(j*h)*p)+C(H*C(f*h))));c=f>2]){e=v[a>>2];b=0;while(1){v[e+(b<<2)>>2]=1073741823;b=b+1|0;if(b>>>0>2]){continue}break}}if(v[a+28>>2]){e=v[a+4>>2];c=v[a>>2];g=v[a+20>>2];b=0;while(1){d=g+(b<<3)|0;d=v[d+4>>2]<<16|v[d>>2];d=(d<<15^-1)+d|0;d=B(d>>10^d,9);d=d>>6^d;d=(d<<11^-1)+d|0;d=c+((v[a+36>>2]&(d>>16^d))<<2)|0;v[e+(b<<2)>>2]=v[d>>2];v[d>>2]=b;b=b+1|0;if(b>>>0>2]){continue}break}}return}b=v[a>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b)}c=v[a+8>>2];v[a+32>>2]=c;v[a+12>>2]=c;b=0;e=c<<2;if(e){c=v[37696]+12|0;g=Ba[v[v[c>>2]+8>>2]](c,e,24422,5684,413)|0;c=v[a+8>>2]}v[a>>2]=g;a:{if(!c){g=0;e=0;break a}while(1){v[(b<<2)+g>>2]=1073741823;b=b+1|0;c=v[a+8>>2];if(b>>>0>>0){continue}break}b=0;g=0;e=c<<3;if(e){c=v[37696]+12|0;g=Ba[v[v[c>>2]+8>>2]](c,e,24422,5684,421)|0;c=v[a+8>>2]}e=c<<2;if(e){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,e,24422,5684,422)|0;c=v[a+8>>2]}e=0;if(!c){break a}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,c,24422,5684,423)|0}c=v[a+28>>2];b:{if(!c){break b}H9(g,v[a+20>>2],c<<3);H9(e,v[a+24>>2],v[a+28>>2]);if(!v[a+28>>2]){break b}d=v[a>>2];h=v[a+20>>2];c=0;while(1){f=(c<<3)+h|0;f=v[f+4>>2]<<16|v[f>>2];f=(f<<15^-1)+f|0;f=B(f>>10^f,9);f=f>>6^f;f=(f<<11^-1)+f|0;f=d+((v[a+36>>2]&(f>>16^f))<<2)|0;v[(c<<2)+b>>2]=v[f>>2];v[f>>2]=c;c=c+1|0;if(c>>>0>2]){continue}break}}c=v[a+4>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c=v[a+20>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c=v[a+24>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+24>>2]=e;v[a+20>>2]=g;v[a+4>>2]=b}function tY(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=0,u=0,w=0;h=v[a+4>>2];i=!v[d>>2]&(h|0)!=0;if(i){v[c>>2]=1;c=h<<2;if(c){e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,24422,12194,273)|0}v[d>>2]=e;c=0;d=0;if(h-1>>>0>=7){k=h&-8;while(1){v[(d<<2)+e>>2]=d;f=d|1;v[(f<<2)+e>>2]=f;f=d|2;v[(f<<2)+e>>2]=f;f=d|3;v[(f<<2)+e>>2]=f;f=d|4;v[(f<<2)+e>>2]=f;f=d|5;v[(f<<2)+e>>2]=f;f=d|6;v[(f<<2)+e>>2]=f;f=d|7;v[(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){v[(d<<2)+e>>2]=d;d=d+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}c=v[a>>2];e=xa-16|0;xa=e;d=(h<<1)-1|0;if(d>>>0>=1025){d=(d>>>0)/(c>>>0)|0}g=v[37696];c=Raa(d,0,36,0);f=c+4|0;g=(r=g+12|0,s=Aa?-1:c>>>0>f>>>0?-1:f,t=Ba[v[v[g>>2]+20>>2]](g)|0?44781:63804,u=12194,w=67,q=v[v[g+12>>2]+8>>2],Ba[q](r|0,s|0,t|0,u|0,w|0)|0);v[g>>2]=d;g=g+4|0;v[b>>2]=g;I9(g,0,c);c=v[b>>2];v[c+32>>2]=h;v[c+28>>2]=0;v[e+8>>2]=d;v[e+4>>2]=1;v[e>>2]=c;c=v[b+8>>2];a:{if(c>>>0>=(v[b+12>>2]&2147483647)>>>0){qY(b+4|0,e);break a}d=v[e+4>>2];c=v[b+4>>2]+B(c,12)|0;v[c>>2]=v[e>>2];v[c+4>>2]=d;v[c+8>>2]=v[e+8>>2];v[b+8>>2]=v[b+8>>2]+1}v[b+16>>2]=0;v[b+20>>2]=1;xa=e+16|0;e=0;g=0;b=B(h,12)+12|0;if(b){c=v[37696];g=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,12194,282)|0}v[a+12>>2]=g;c=h>>>0>1?h:1;d=v[a+8>>2];while(1){a=d+B(e,24)|0;l=z[a+4>>2];m=z[a+16>>2];n=z[a+8>>2];o=z[a+20>>2];p=z[a+24>>2];b=B(e,12)+g|0;j=z[a+12>>2];z[b>>2]=C(z[a>>2]+j)*C(.5);z[b+12>>2]=C(j+p)*C(.5);z[b+8>>2]=C(n+o)*C(.5);z[b+4>>2]=C(l+m)*C(.5);e=e+1|0;if((c|0)!=(e|0)){continue}break}}return i}function Vu(a){var b=0,c=0,d=0,e=0,f=0;if(v[a+4928>>2]){while(1){Wu(v[v[a+4896>>2]+(b<<2)>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}if(v[a+4968>>2]){b=0;while(1){Wu(v[v[a+4936>>2]+(b<<2)>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}a:{if(!v[a+5008>>2]){break a}d=a+16|0;b=0;while(1){c=v[v[a+4976>>2]+(b<<2)>>2];b:{if(y[c+4>>2]<3221225472){break b}mP(d,c+12|0);if(w[c+7|0]&16){break b}Su(c)}b=b+1|0;c=v[a+5008>>2];if(b>>>0>>0){continue}break}if(!c){break a}d=v[a+4976>>2];b=0;while(1){e=v[d+(b<<2)>>2];if((v[e+4>>2]&268435457)==268435457){xH(e+12|0);c=v[a+5008>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}c=v[a+5088>>2];if(c){b=0;while(1){d=v[v[a+5056>>2]+(b<<2)>>2];if(y[d+4>>2]>=3221225472){qP(d+12|0);c=v[a+5088>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}c=v[a+4928>>2];if(c){d=a+16|0;b=0;while(1){e=v[v[a+4896>>2]+(b<<2)>>2];f=v[e+4>>2];if(f>>>0>=3221225472){Cu(d,e,(f&16)>>>4|0);c=v[a+4928>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}if(v[a+4968>>2]){d=a+16|0;b=0;while(1){c=v[v[a+4936>>2]+(b<<2)>>2];e=v[c+4>>2];c:{if(e>>>0<3221225472){break c}Fu(d,c,(e&16)>>>4|0);if(w[c+7|0]&16){break c}Ru(c)}b=b+1|0;if(b>>>0>2]){continue}break}}if(v[a+5048>>2]){d=a+16|0;b=0;while(1){c=v[v[a+5016>>2]+(b<<2)>>2];e=v[c+4>>2];d:{if(e>>>0<3221225472){break d}v[c+4>>2]=e&-769;oP(d,c+12|0);if(w[c+7|0]&16){break d}Tu(c)}b=b+1|0;if(b>>>0>2]){continue}break}}c=v[a+5128>>2];if(c){e=a+16|0;b=0;while(1){d=v[v[a+5096>>2]+(b<<2)>>2];if(y[d+4>>2]>=3221225472){Qu(d,a);VP(e,v[d+16>>2]);c=v[a+5128>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}}function Q6(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=xa-1040|0;xa=f;a=4767;a:{b:{c:{switch(b+1|0){case 5:a=4947;break b;case 9:a=14503;break b;case 17:a=1467;break b;case 2:a=14161;break b;case 3:a=20176;break b;default:if((b|0)!=128){break a}a=20164;break b;case 65:a=2139;break b;case 33:a=4790;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=4776}v[f>>2]=d;v[f+4>>2]=e;v[f+8>>2]=a;v[f+12>>2]=c;d=xa-16|0;xa=d;v[d+12>>2]=f;a=xa-160|0;xa=a;g=a+8|0;H9(g,109632,144);c=f+16|0;v[a+52>>2]=c;v[a+28>>2]=c;e=-2-c|0;e=e>>>0>2147483647?2147483647:e;v[a+56>>2]=e;h=c+e|0;v[a+36>>2]=h;v[a+24>>2]=h;X9(g,77696,f,0,0);if(e){e=v[a+28>>2];t[e-((e|0)==v[a+24>>2])|0]=0}xa=a+160|0;xa=d+16|0;O9(c);if((b|0)!=64){break a}while(1){O9(f+16|0);c=xa-16|0;xa=c;v[c+12>>2]=0;v[c+8>>2]=1e3;while(1){d=xa-16|0;xa=d;b=28;a=c+8|0;d:{if(!a){break d}e=v[a+4>>2];if(e>>>0>999999999){break d}a=v[a>>2];if((a|0)<0){break d}i=+(a|0)*1e3+ +(e|0)/1e6;j=+ra();while(1){if(+ra()-j>>0>=4294963201){v[37699]=0-a;a=-1}if((a|0)==-1){continue}break}xa=c+16|0;continue}}xa=f+1040|0}function IV(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);o=xa-32|0;xa=o;a:{b:{switch(g-1|0){case 0:a=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=a;a=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=a;a=v[c+4>>2];v[f>>2]=v[c>>2];v[f+4>>2]=a;a=v[c+12>>2];v[f+8>>2]=v[c+8>>2];v[f+12>>2]=a;break a;case 1:i=z[d>>2];h=C(z[a>>2]-i);j=z[d+4>>2];l=C(z[a+4>>2]-j);k=z[d+8>>2];m=C(z[a+8>>2]-k);k=C(C(z[a+24>>2]-k)-m);i=C(C(z[a+16>>2]-i)-h);j=C(C(z[a+20>>2]-j)-l);n=C(C(k*k)+C(C(i*i)+C(j*j)));z[o+16>>2]=C(C(C(C(-h)*i)-C(j*l))-C(m*k))*(n>C(0)?C(C(1)/n):C(0));p=z[c+20>>2];q=z[c+24>>2];r=z[b+20>>2];s=z[b+24>>2];l=z[c>>2];t=z[c+16>>2];m=z[c+4>>2];k=z[c+8>>2];i=z[b>>2];u=z[b+16>>2];j=z[b+4>>2];n=z[b+8>>2];h=z[o+16>>2];v[e+12>>2]=0;z[e+8>>2]=n+C(h*C(s-n));z[e+4>>2]=j+C(h*C(r-j));z[e>>2]=i+C(h*C(u-i));v[f+12>>2]=0;z[f+8>>2]=k+C(h*C(q-k));z[f+4>>2]=m+C(h*C(p-m));z[f>>2]=l+C(h*C(t-l));break a;case 2:break b;default:break a}}eZ(d,a,a+16|0,a+32|0,o+16|0,o);q=z[c+20>>2];r=z[c+36>>2];s=z[c+24>>2];t=z[c+40>>2];u=z[b+20>>2];w=z[b+36>>2];x=z[b+24>>2];y=z[b+40>>2];A=z[c+16>>2];B=z[c+32>>2];m=z[c>>2];k=z[c+4>>2];i=z[c+8>>2];D=z[b+16>>2];E=z[b+32>>2];j=z[b>>2];n=z[b+4>>2];p=z[b+8>>2];h=z[o+16>>2];l=z[o>>2];v[e+12>>2]=0;z[e+8>>2]=p+C(C(h*C(x-p))+C(l*C(y-p)));z[e+4>>2]=n+C(C(h*C(u-n))+C(l*C(w-n)));z[e>>2]=j+C(C(h*C(D-j))+C(l*C(E-j)));v[f+12>>2]=0;z[f+8>>2]=i+C(C(h*C(s-i))+C(l*C(t-i)));z[f+4>>2]=k+C(C(h*C(q-k))+C(l*C(r-k)));z[f>>2]=m+C(C(h*C(A-m))+C(l*C(B-m)))}xa=o+32|0}function xX(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0);f=z[c+12>>2];m=C(f+f);e=z[c+20>>2];A=C(m*e);n=z[c+16>>2];g=C(n+n);q=z[c+24>>2];i=C(g*q);d=C(A+i);r=z[c>>2];s=C(d*r);j=C(g*e);B=C(m*q);o=C(j-B);t=z[c+4>>2];E=C(o*t);u=C(C(1)-C(f*m));D=C(n*g);g=C(u-D);v=z[c+8>>2];F=C(g*v);w=z[b>>2];p=C(w+w);f=z[b+8>>2];I=C(p*f);h=z[b+4>>2];x=C(h+h);k=z[b+12>>2];J=C(x*k);G=C(I-J);K=C(C(1)-C(w*p));L=C(h*x);w=C(K-L);y=C(C(C(d*s)+C(o*E))+C(g*F));l=C(e+e);M=C(e*l);e=C(C(C(1)-D)-M);D=C(r*e);N=C(m*n);l=C(l*q);m=C(N+l);q=C(m*t);n=C(A-i);A=C(n*v);i=C(C(C(d*D)+C(o*q))+C(g*A));O=C(x*f);P=C(p*k);x=C(O+P);H=d;d=C(N-l);r=C(r*d);l=o;o=C(u-M);t=C(o*t);u=g;g=C(j+B);v=C(g*v);j=C(C(C(H*r)+C(l*t))+C(u*v));z[a+32>>2]=C(w*y)+C(C(G*i)+C(x*j));B=C(O-P);u=C(p*h);h=C(f+f);l=C(k*h);p=C(u+l);k=C(f*h);f=C(K-k);z[a+28>>2]=C(B*y)+C(C(p*i)+C(f*j));h=C(I+J);H=C(h*y);k=C(C(C(1)-L)-k);y=C(u-l);z[a+24>>2]=H+C(C(k*i)+C(y*j));i=C(C(C(d*s)+C(o*E))+C(g*F));j=C(C(C(d*D)+C(o*q))+C(g*A));d=C(C(C(d*r)+C(o*t))+C(g*v));z[a+20>>2]=C(w*i)+C(C(G*j)+C(x*d));z[a+16>>2]=C(B*i)+C(C(p*j)+C(f*d));z[a+12>>2]=C(h*i)+C(C(k*j)+C(y*d));d=C(C(C(e*s)+C(m*E))+C(n*F));s=C(C(C(e*D)+C(m*q))+C(n*A));e=C(C(C(e*r)+C(m*t))+C(n*v));z[a+8>>2]=C(w*d)+C(C(G*s)+C(x*e));z[a+4>>2]=C(B*d)+C(C(p*s)+C(f*e));z[a>>2]=C(h*d)+C(C(k*s)+C(y*e));z[a+36>>2]=z[b+16>>2];z[a+40>>2]=z[b+20>>2];z[a+44>>2]=z[b+24>>2]}function MP(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=xa-16|0;xa=m;g=v[a+2392>>2];h=v[g+12>>2]+B(v[g+8>>2],12)|0;j=v[h+4>>2];a:{if(j){v[h+4>>2]=v[j>>2];break a}b:{j=v[h+8>>2];if((j|0)==v[g>>2]){break b}k=v[g+4>>2];v[h+8>>2]=j+1;h=v[h>>2];if(!h){break b}j=h+B(j,k)|0;break a}j=MO(g)}h=_G(j,a,b,f);c:{if(!(w[v[h+100>>2]+28|0]&32)|y[h+152>>2]>4294967293){break c}d:{if(w[v[h+44>>2]+9|0]==2){j=v[h+144>>2];if(j>>>0>4294967167){break c}f=j>>>7|0;k=f+32>>>5|0;if(k>>>0<=(v[a+4740>>2]&2147483647)>>>0){g=v[a+4736>>2];break d}g=v[37696]+12|0;g=Ba[v[v[g>>2]+8>>2]](g,k<<2,24422,17999,438)|0;i=v[a+4736>>2];e:{if(!i){break e}H9(g,i,v[a+4740>>2]<<2);if(v[a+4740>>2]<0){break e}i=v[a+4736>>2];if(!i){break e}l=v[37696]+12|0;Ba[v[v[l>>2]+12>>2]](l,i)}i=v[a+4740>>2];I9((i<<2)+g|0,0,k-i<<2);v[a+4740>>2]=k;v[a+4736>>2]=g;break d}j=v[h+144>>2];f=j>>>7|0;k=f+32>>>5|0;if(k>>>0<=(v[a+4728>>2]&2147483647)>>>0){g=v[a+4724>>2];break d}g=v[37696]+12|0;g=Ba[v[v[g>>2]+8>>2]](g,k<<2,24422,17999,438)|0;i=v[a+4724>>2];f:{if(!i){break f}H9(g,i,v[a+4728>>2]<<2);if(v[a+4728>>2]<0){break f}i=v[a+4724>>2];if(!i){break f}l=v[37696]+12|0;Ba[v[v[l>>2]+12>>2]](l,i)}i=v[a+4728>>2];I9((i<<2)+g|0,0,k-i<<2);v[a+4728>>2]=k;v[a+4724>>2]=g}g=(j>>>10&4194300)+g|0;v[g>>2]=v[g>>2]|1<>2];if(g>>>0<=4294967167){f=v[a+1012>>2];v[m+8>>2]=g;Ba[v[v[f>>2]+24>>2]](f,h- -64|0,m+8|0)}g:{h:{if(!v[b+176>>2]|w[v[b+176>>2]+31|0]!=1){break h}b=v[b+176>>2];if(w[(w[b+31|0]==1?b:0)+31|0]!=1){break h}v[a+2672>>2]=v[a+2672>>2]+1;break g}v[a+2668>>2]=v[a+2668>>2]+1}HP(a,c,d,h,e);xa=m+16|0}function kC(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=C(0),l=C(0),m=0;m=(g|0)==1?2:1;i=v[c>>2];a:{if(!i){v[d>>2]=0;v[d+4>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;break a}h=v[c+20>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;jC(d,z[c+48>>2],z[(c+48|0)+(m<<2)>>2],i,j,h,a,b,0,g);H9(j,a,i<<5);H9(h,b,i<<3)}i=v[c+4>>2];b:{if(i){h=c+80|0;k=z[h>>2];l=z[h+(m<<2)>>2];h=v[c+24>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;jC(d+224|0,k,l,i,j,h,a,b,0,g);H9(j,a,i<<5);H9(h,b,i<<3);break b}v[d+224>>2]=0;v[d+228>>2]=0;v[d+256>>2]=0;v[d+260>>2]=0;v[d+248>>2]=0;v[d+252>>2]=0;v[d+240>>2]=0;v[d+244>>2]=0;v[d+232>>2]=0;v[d+236>>2]=0}i=v[c+8>>2];c:{if(i){h=c+112|0;k=z[h>>2];l=z[h+(m<<2)>>2];h=v[c+28>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;jC(d+448|0,k,l,i,j,h,a,b,0,g);H9(j,a,i<<5);H9(h,b,i<<3);break c}v[d+448>>2]=0;v[d+452>>2]=0;v[d+480>>2]=0;v[d+484>>2]=0;v[d+472>>2]=0;v[d+476>>2]=0;v[d+464>>2]=0;v[d+468>>2]=0;v[d+456>>2]=0;v[d+460>>2]=0}i=v[c+12>>2];d:{if(i){h=c+144|0;k=z[h>>2];l=z[h+(m<<2)>>2];h=v[c+32>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;jC(d+672|0,k,l,i,j,h,a,b,0,g);H9(j,a,i<<5);H9(h,b,i<<3);break d}v[d+672>>2]=0;v[d+676>>2]=0;v[d+704>>2]=0;v[d+708>>2]=0;v[d+696>>2]=0;v[d+700>>2]=0;v[d+688>>2]=0;v[d+692>>2]=0;v[d+680>>2]=0;v[d+684>>2]=0}i=v[c+16>>2];if(i){h=d+896|0;d=c+176|0;k=z[d>>2];l=z[d+(m<<2)>>2];c=v[c+36>>2];d=(c<<5)+e|0;c=(c<<3)+f|0;jC(h,k,l,i,d,c,a,b,1,g);H9(d,a,i<<5);H9(c,b,i<<3);return}v[d+896>>2]=0;v[d+900>>2]=0;v[d+928>>2]=0;v[d+932>>2]=0;v[d+920>>2]=0;v[d+924>>2]=0;v[d+912>>2]=0;v[d+916>>2]=0;v[d+904>>2]=0;v[d+908>>2]=0}function Cn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=b;g=xa-16|0;xa=g;h=v[37389];a=v[h+1856>>2];if(!a){j=xa-16|0;xa=j;e=h+1568|0;b=v[e+284>>2];if(b){a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?41541:63804;i=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,18373,180)|0}else{i=0}v[j+12>>2]=i;a=v[e+268>>2];a:{if(a>>>0>=(v[e+272>>2]&2147483647)>>>0){a=0;d=e+4|0;b=v[d+268>>2];k=b&2147483647?b<<1:1;b:{if(!k){break b}b=k<<2;if(!(w[d+256|0]|b>>>0>256)){t[d+256|0]=1;a=d;break b}if(!b){break b}a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?41541:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,f,16608,553)|0}f=v[d+264>>2];n=(f<<2)+a|0;if((f|0)>0){l=v[d+260>>2];b=a;while(1){v[b>>2]=v[l>>2];l=l+4|0;b=b+4|0;if(n>>>0>b>>>0){continue}break}}v[n>>2]=v[j+12>>2];c:{if(v[d+268>>2]<0){break c}b=v[d+260>>2];if((b|0)==(d|0)){t[d+256|0]=0;break c}if(!b){break c}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,b);f=v[d+264>>2]}v[d+268>>2]=k;v[d+260>>2]=a;v[d+264>>2]=f+1;break a}v[v[e+264>>2]+(a<<2)>>2]=i;v[e+268>>2]=a+1}a=(B(v[e+276>>2],44)+i|0)-44|0;if(i>>>0<=a>>>0){b=v[e+288>>2];while(1){v[a>>2]=b;b=a;a=a-44|0;if(i>>>0<=a>>>0){continue}break}v[e+288>>2]=b}xa=j+16|0;a=v[h+1856>>2]}v[h+1856>>2]=v[a>>2];b=h+1848|0;v[b>>2]=v[b>>2]+1;v[a+4>>2]=196618;v[a+36>>2]=0;v[a+8>>2]=0;v[a+12>>2]=150994944;t[a+32|0]=c;v[a+28>>2]=m;v[a+24>>2]=-1;v[a+20>>2]=a;v[a+16>>2]=0;v[a>>2]=118148;b=m<<2;if(b){c=v[37696];b=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,11066,60)|0}else{b=0}v[a+40>>2]=b;v[g+8>>2]=a;b=Mm(h+480|0,g+8|0,g+15|0);if(!w[g+15|0]){v[b>>2]=v[g+8>>2]}xa=g+16|0;return a|0}function Rw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0);c=xa-32|0;xa=c;a=v[a+336>>2]+B(b,192)|0;l=z[a+164>>2];m=z[a+100>>2];n=z[a+68>>2];o=z[a+36>>2];p=z[a+132>>2];q=z[a+168>>2];r=z[a+104>>2];s=z[a+72>>2];t=z[a+40>>2];u=z[a+136>>2];w=z[a+176>>2];x=z[a+112>>2];y=z[a+80>>2];A=z[a+48>>2];D=z[a+144>>2];E=z[a+180>>2];F=z[a+116>>2];G=z[a+84>>2];H=z[a+20>>2];I=z[a+52>>2];J=z[a+148>>2];K=z[a+184>>2];L=z[a+120>>2];M=z[a+88>>2];N=z[a+24>>2];O=z[a+56>>2];P=z[a+152>>2];f=z[d+24>>2];g=z[d+20>>2];Q=z[a+4>>2];R=z[a+8>>2];S=z[a+16>>2];T=z[a+160>>2];U=z[a+128>>2];h=z[d+16>>2];V=z[a+96>>2];i=z[d+8>>2];W=z[a+64>>2];j=z[d>>2];X=z[a>>2];k=z[d+4>>2];Y=z[a+32>>2];v[c+28>>2]=0;v[c+12>>2]=0;z[c>>2]=C(C(C(C(C(X*j)+C(Y*k))+C(W*i))+C(V*h))+C(U*g))+C(T*f);z[c+24>>2]=C(C(C(C(C(N*j)+C(O*k))+C(M*i))+C(L*h))+C(P*g))+C(K*f);z[c+20>>2]=C(C(C(C(C(H*j)+C(I*k))+C(G*i))+C(F*h))+C(J*g))+C(E*f);z[c+16>>2]=C(C(C(C(C(S*j)+C(A*k))+C(y*i))+C(x*h))+C(D*g))+C(w*f);z[c+8>>2]=C(C(C(C(C(R*j)+C(t*k))+C(s*i))+C(r*h))+C(u*g))+C(q*f);z[c+4>>2]=C(C(C(C(C(Q*j)+C(o*k))+C(n*i))+C(m*h))+C(p*g))+C(l*f);a=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=a;a=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=a;a=v[c+4>>2];v[e+16>>2]=v[c>>2];v[e+20>>2]=a;a=v[c+12>>2];v[e+24>>2]=v[c+8>>2];v[e+28>>2]=a;xa=c+32|0}function x7(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0);c=xa-176|0;xa=c;v[c+60>>2]=a;v[c+56>>2]=a;a=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=a;a=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=a;D5(c+144|0,c+112|0,e,f,g);n=z[f+20>>2];o=z[f+16>>2];k=z[c+132>>2];l=z[c+128>>2];m=z[c+136>>2];z[b+8>>2]=m-z[f+24>>2];z[b+4>>2]=k-n;z[b>>2]=l-o;n=z[f+20>>2];o=z[f+16>>2];z[c+72>>2]=m-z[f+24>>2];z[c+68>>2]=k-n;z[c+64>>2]=l-o;n=z[g+20>>2];o=z[g+24>>2];p=z[g+16>>2];q=z[c+164>>2];z[c+92>>2]=q;z[c+108>>2]=m;z[c+104>>2]=k;r=z[c+168>>2];z[c+96>>2]=r;z[c+84>>2]=m-o;z[c+80>>2]=k-n;t=z[c+160>>2];z[c+88>>2]=t;z[c+100>>2]=l;z[c+76>>2]=l-p;n=z[c+156>>2];u=z[c+124>>2];o=z[c+152>>2];w=z[c+120>>2];p=z[c+144>>2];x=z[c+112>>2];s=z[c+148>>2];y=z[c+116>>2];if(C(C(n*u)+C(C(o*w)+C(C(p*x)+C(s*y))))>2]=-u;z[c+120>>2]=-w;z[c+116>>2]=-y;z[c+112>>2]=-x}m=C(m-r);m=C(m+m);l=C(l-t);l=C(l+l);k=C(k-q);k=C(k+k);q=C(C(o*m)+C(C(p*l)+C(s*k)));r=C(C(n*n)+C(-.5));z[c+16>>2]=C(o*q)+C(C(m*r)-C(n*C(C(p*k)-C(l*s))));z[c+12>>2]=C(s*q)+C(C(k*r)-C(n*C(C(o*l)-C(m*p))));z[c+8>>2]=C(p*q)+C(C(l*r)-C(n*C(C(s*m)-C(k*o))));H5(c+56|0,c+144|0,c+112|0,c+8|0,7,7,c+40|0,c+24|0);k=z[f+16>>2];l=z[f+20>>2];n=z[c+40>>2];m=z[c+44>>2];z[i+8>>2]=z[c+48>>2]+z[f+24>>2];z[i+4>>2]=m+l;z[i>>2]=n+k;k=z[g+16>>2];l=z[g+20>>2];n=z[c+24>>2];m=z[c+28>>2];z[j+8>>2]=z[c+32>>2]+z[g+24>>2];z[j+4>>2]=m+l;z[j>>2]=n+k;xa=c+176|0;return(v[c+60>>2]-v[c+56>>2]|0)/80|0}function s2(a,b,c,d){var e=0,f=0,g=0,h=0;a:{if(c>>>0<=4){if(!c){break a}f=v[b+4>>2];e=v[a+76>>2];v[e>>2]=v[b>>2];v[e+4>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;f=v[b+20>>2];e=v[a+76>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=f;f=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=f;f=v[b+36>>2];e=v[a+76>>2];v[e+32>>2]=v[b+32>>2];v[e+36>>2]=f;f=v[b+44>>2];v[e+40>>2]=v[b+40>>2];v[e+44>>2]=f;if((c|0)==1){break a}f=v[b+52>>2];e=v[a+76>>2];v[e+48>>2]=v[b+48>>2];v[e+52>>2]=f;f=v[b+60>>2];v[e+56>>2]=v[b+56>>2];v[e+60>>2]=f;g=b- -64|0;h=v[g+4>>2];e=v[a+76>>2];f=e- -64|0;v[f>>2]=v[g>>2];v[f+4>>2]=h;f=v[b+76>>2];v[e+72>>2]=v[b+72>>2];v[e+76>>2]=f;f=v[b+84>>2];e=v[a+76>>2];v[e+80>>2]=v[b+80>>2];v[e+84>>2]=f;f=v[b+92>>2];v[e+88>>2]=v[b+88>>2];v[e+92>>2]=f;if((c|0)==2){break a}f=v[b+100>>2];e=v[a+76>>2];v[e+96>>2]=v[b+96>>2];v[e+100>>2]=f;f=v[b+108>>2];v[e+104>>2]=v[b+104>>2];v[e+108>>2]=f;f=v[b+116>>2];e=v[a+76>>2];v[e+112>>2]=v[b+112>>2];v[e+116>>2]=f;f=v[b+124>>2];v[e+120>>2]=v[b+120>>2];v[e+124>>2]=f;f=v[b+132>>2];e=v[a+76>>2];v[e+128>>2]=v[b+128>>2];v[e+132>>2]=f;f=v[b+140>>2];v[e+136>>2]=v[b+136>>2];v[e+140>>2]=f;if((c|0)==3){break a}f=v[b+148>>2];e=v[a+76>>2];v[e+144>>2]=v[b+144>>2];v[e+148>>2]=f;f=v[b+156>>2];v[e+152>>2]=v[b+152>>2];v[e+156>>2]=f;f=v[b+164>>2];e=v[a+76>>2];v[e+160>>2]=v[b+160>>2];v[e+164>>2]=f;f=v[b+172>>2];v[e+168>>2]=v[b+168>>2];v[e+172>>2]=f;f=v[b+180>>2];e=v[a+76>>2];v[e+176>>2]=v[b+176>>2];v[e+180>>2]=f;f=v[b+188>>2];v[e+184>>2]=v[b+184>>2];v[e+188>>2]=f;t[a+64|0]=c;return}t2(a,b,c,d);c=4}t[a+64|0]=c}function HD(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0;q=v[b+4>>2];r=v[b>>2];e=z[b+8>>2];v[a+28>>2]=0;z[a+24>>2]=e;v[a+16>>2]=r;v[a+20>>2]=q;e=z[d+8>>2];f=z[d+4>>2];g=z[d>>2];z[a>>2]=g;z[a+4>>2]=f;v[a+12>>2]=0;z[a+8>>2]=e;h=z[c+16>>2];i=z[c+28>>2];j=z[c+20>>2];k=z[c+32>>2];l=z[c>>2];m=z[c+12>>2];n=z[c+24>>2];o=z[c+4>>2];p=z[c+8>>2];v[a+188>>2]=0;v[a+172>>2]=0;v[a+156>>2]=0;v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;v[a+92>>2]=0;v[a+76>>2]=0;z[a+72>>2]=k;z[a+68>>2]=j;z[a- -64>>2]=p;v[a+60>>2]=0;z[a+56>>2]=i;z[a+52>>2]=h;z[a+48>>2]=o;v[a+44>>2]=0;z[a+40>>2]=n;z[a+36>>2]=m;z[a+32>>2]=l;k=C((k>C(0)?k:C(-k))+C(9.999999974752427e-7));z[a+120>>2]=k;j=C((j>C(0)?j:C(-j))+C(9.999999974752427e-7));z[a+116>>2]=j;p=C((p>C(0)?p:C(-p))+C(9.999999974752427e-7));z[a+112>>2]=p;i=C((i>C(0)?i:C(-i))+C(9.999999974752427e-7));z[a+104>>2]=i;h=C((h>C(0)?h:C(-h))+C(9.999999974752427e-7));z[a+100>>2]=h;o=C((o>C(0)?o:C(-o))+C(9.999999974752427e-7));z[a+96>>2]=o;n=C((n>C(0)?n:C(-n))+C(9.999999974752427e-7));z[a+88>>2]=n;m=C((m>C(0)?m:C(-m))+C(9.999999974752427e-7));z[a+84>>2]=m;l=C((l>C(0)?l:C(-l))+C(9.999999974752427e-7));z[a+80>>2]=l;z[a+184>>2]=C(f*p)+C(g*j);z[a+180>>2]=C(e*p)+C(g*k);z[a+176>>2]=C(e*j)+C(f*k);z[a+168>>2]=C(f*o)+C(g*h);z[a+164>>2]=C(e*o)+C(g*i);z[a+160>>2]=C(e*h)+C(f*i);z[a+152>>2]=C(f*l)+C(g*m);z[a+148>>2]=C(e*l)+C(g*n);z[a+144>>2]=C(e*m)+C(f*n);z[a+136>>2]=C(k*e)+C(C(p*g)+C(f*j));z[a+132>>2]=C(i*e)+C(C(o*g)+C(f*h));z[a+128>>2]=C(n*e)+C(C(l*g)+C(f*m));return a}function Tt(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=xa-16|0;xa=f;c=w[b|0];g=v[a+116>>2]-5|0;a:{if(!(!(c&4)|g>>>0>1)){a9(v[37696],4,11562,545,74822,0);break a}if((c&5)==5){a9(v[37696],4,11562,552,65471,0);break a}h=w[(w[a+36|0]&64?v[a+40>>2]+52|0:a+112|0)|0];b:{d=v[a+20>>2];if(!d){break b}e=x[d+4>>1];if((e|0)==5){Ba[v[v[d>>2]+216>>2]](f,d);i=t[f|0]&1}if(!(c&1)|h&1|(i|(e|0)==6)){break b}if(v[a+116>>2]!=1&g>>>0>=2){break b}a9(v[37696],4,11562,576,76329,0);break a}g=w[b|0];t[f+8|0]=g;d=a+48|0;c=xa-16|0;xa=c;c:{d:{e:{f:{b=a+32|0;e=v[b+4>>2];i=e>>>30|0;switch(i-2|0){case 0:break f;case 1:break d;default:break e}}if(w[v[b>>2]+4785|0]){break d}}e=d- -64|0;j=w[e|0];t[e|0]=w[f+8|0];b=v[b-12>>2];if(!b){break c}g:{h:{switch(x[b+4>>1]-5|0){case 0:b=b- -64|0;break g;case 8:b=b- -64|0;break g;default:break h}}b=b- -64|0}if((i|0)==1){break c}t[c|0]=j;v[c+8>>2]=64;SJ(b,d,c+8|0,c,0);break c}d=v[b+8>>2];if(!d){d=Pu(v[b>>2],e>>>24&15);v[b+8>>2]=d}t[d+52|0]=w[f+8|0];Xu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|64}xa=c+16|0;d=g&2;if(!(h&2)^d>>>1){break a}b=v[a+20>>2];if(!b){break a}c=uh(b);b=rh(v[a+20>>2]);i:{if(!c){break i}c=c+5584|0;if(d){d=v[a+20>>2];h=MU(b,a)<<2;e=c;c=x[d+4>>1];c=GE(e,v[h+(x[b+4>>1]==1?b:v[b>>2])>>2]+32|0,d+v[((c<<2)+86240|0)+72>>2]|0,(c&65527)==5,v[b+16>>2],0,0);v[h+(x[b+12>>1]==1?b+8|0:v[b+8>>2])>>2]=c;break i}d=MU(b,a)<<2;e=c;c=b+8|0;IE(e,v[b+16>>2],v[d+(x[b+12>>1]==1?c:v[b+8>>2])>>2]);v[d+(x[b+12>>1]==1?c:v[b+8>>2])>>2]=-1}if(!v[b+20>>2]){break a}a9(v[37696],8,11562,602,73707,0);aC(v[b+20>>2],v[a+20>>2])}xa=f+16|0}function WD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=xa-32|0;xa=e;d=v[a+4>>2];if(!(!d|!v[d+8>>2])){v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=1065353216;v[e>>2]=0;v[e+4>>2]=0;YU(b,e);v[b+4>>2]=c;d=v[d+8>>2];XD(d,d,b)}v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=1065353216;v[e>>2]=0;v[e+4>>2]=0;YU(b,e);v[b+4>>2]=-1;if(!(!w[a+336|0]|(v[a+156>>2]+v[a+108>>2]|0)==(0-v[a+216>>2]|0))){f=xa-32|0;xa=f;d=v[a+220>>2];if(!(!d|!v[d+8>>2])){v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=1065353216;v[f>>2]=0;v[f+4>>2]=0;YU(b,f);v[b+4>>2]=c;d=v[d+8>>2];rD(d,d,b)}g=v[a+256>>2];if(g){while(1){d=v[v[a+252>>2]+(h<<3)>>2];if(!(!d|!v[d+8>>2])){v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=1065353216;v[f>>2]=0;v[f+4>>2]=0;YU(b,f);v[b+4>>2]=c;d=v[d+8>>2];rD(d,d,b);g=v[a+256>>2]}h=h+1|0;if(g>>>0>h>>>0){continue}break}}d=xa-32|0;xa=d;g=v[a+68>>2];if(!(!g|!v[g+588>>2])){v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;YU(b,d);v[b+4>>2]=c;g=v[v[a+68>>2]+588>>2];iD(g,g,b);v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;YU(b,d);v[b+4>>2]=-1}g=v[a+116>>2];if(!(!g|!v[g+588>>2])){v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;YU(b,d);v[b+4>>2]=c;a=v[v[a+116>>2]+588>>2];iD(a,a,b);v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;YU(b,d);v[b+4>>2]=-1}xa=d+32|0;xa=f+32|0}xa=e+32|0}function bi(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,u=0,x=0;a=v[37389];f=v[a+3928>>2];if(!f){l=xa-16|0;xa=l;j=a+3640|0;g=v[j+284>>2];if(g){f=v[37696];k=Ba[v[v[f>>2]+20>>2]](f)|0?41231:63804;k=Ba[v[v[f+12>>2]+8>>2]](f+12|0,g,k,18373,180)|0}else{k=0}v[l+12>>2]=k;f=v[j+268>>2];a:{if(f>>>0>=(v[j+272>>2]&2147483647)>>>0){f=0;g=j+4|0;h=v[g+268>>2];m=h&2147483647?h<<1:1;b:{if(!m){break b}h=m<<2;if(!(w[g+256|0]|h>>>0>256)){t[g+256|0]=1;f=g;break b}if(!h){break b}f=v[37696];i=f+12|0;f=(q=i,r=h,s=Ba[v[v[f>>2]+20>>2]](f)|0?41231:63804,u=16608,x=553,p=v[v[i>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}i=v[g+264>>2];o=(i<<2)+f|0;if((i|0)>0){n=v[g+260>>2];h=f;while(1){v[h>>2]=v[n>>2];n=n+4|0;h=h+4|0;if(o>>>0>h>>>0){continue}break}}v[o>>2]=v[l+12>>2];c:{if(v[g+268>>2]<0){break c}h=v[g+260>>2];if((h|0)==(g|0)){t[g+256|0]=0;break c}if(!h){break c}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,h);i=v[g+264>>2]}v[g+268>>2]=m;v[g+260>>2]=f;v[g+264>>2]=i+1;break a}v[v[j+264>>2]+(f<<2)>>2]=k;v[j+268>>2]=f+1}f=(B(v[j+276>>2],400)+k|0)-400|0;if(k>>>0<=f>>>0){g=v[j+288>>2];while(1){v[f>>2]=g;g=f;f=f-400|0;if(k>>>0<=f>>>0){continue}break}v[j+288>>2]=g}xa=l+16|0;f=v[a+3928>>2]}v[a+3928>>2]=v[f>>2];a=a+3920|0;v[a>>2]=v[a>>2]+1;v[f+4>>2]=65551;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;v[f>>2]=121580;_E(f+20|0,c,e,1);v[f+396>>2]=d;v[f+392>>2]=b;v[f+12>>2]=v[f+12>>2]&-251658241|134217728;a=v[b+320>>2];a=Ba[v[v[a>>2]+100>>2]](a)|0;v[f+388>>2]=f;v[f>>2]=121384;v[f+384>>2]=a+12;return f|0}function Rk(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,u=0,x=0;a=v[37389];f=v[a+3632>>2];if(!f){l=xa-16|0;xa=l;j=a+3344|0;g=v[j+284>>2];if(g){f=v[37696];k=Ba[v[v[f>>2]+20>>2]](f)|0?27763:63804;k=Ba[v[v[f+12>>2]+8>>2]](f+12|0,g,k,18373,180)|0}else{k=0}v[l+12>>2]=k;f=v[j+268>>2];a:{if(f>>>0>=(v[j+272>>2]&2147483647)>>>0){f=0;g=j+4|0;h=v[g+268>>2];m=h&2147483647?h<<1:1;b:{if(!m){break b}h=m<<2;if(!(w[g+256|0]|h>>>0>256)){t[g+256|0]=1;f=g;break b}if(!h){break b}f=v[37696];i=f+12|0;f=(q=i,r=h,s=Ba[v[v[f>>2]+20>>2]](f)|0?27763:63804,u=16608,x=553,p=v[v[i>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}i=v[g+264>>2];o=(i<<2)+f|0;if((i|0)>0){n=v[g+260>>2];h=f;while(1){v[h>>2]=v[n>>2];n=n+4|0;h=h+4|0;if(o>>>0>h>>>0){continue}break}}v[o>>2]=v[l+12>>2];c:{if(v[g+268>>2]<0){break c}h=v[g+260>>2];if((h|0)==(g|0)){t[g+256|0]=0;break c}if(!h){break c}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,h);i=v[g+264>>2]}v[g+268>>2]=m;v[g+260>>2]=f;v[g+264>>2]=i+1;break a}v[v[j+264>>2]+(f<<2)>>2]=k;v[j+268>>2]=f+1}f=(B(v[j+276>>2],400)+k|0)-400|0;if(k>>>0<=f>>>0){g=v[j+288>>2];while(1){v[f>>2]=g;g=f;f=f-400|0;if(k>>>0<=f>>>0){continue}break}v[j+288>>2]=g}xa=l+16|0;f=v[a+3632>>2]}v[a+3632>>2]=v[f>>2];a=a+3624|0;v[a>>2]=v[a>>2]+1;v[f+4>>2]=65550;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;v[f>>2]=121200;_E(f+20|0,c,e,0);v[f+396>>2]=d;v[f+392>>2]=b;v[f+12>>2]=v[f+12>>2]&-251658241|134217728;a=v[b+320>>2];a=Ba[v[v[a>>2]+100>>2]](a)|0;v[f+388>>2]=f;v[f>>2]=120912;v[f+384>>2]=a+12;return f|0}function OC(a,b){var c=C(0),d=C(0),e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0);f=v[a+36>>2];e=v[a+40>>2];a:{if(!e){m=1;e=B(v[f+4>>2],24)+b|0;c=z[e+12>>2];i=z[e+8>>2];j=z[e+4>>2];k=z[e>>2];g=z[e+20>>2];h=z[e+16>>2];n=v[f>>2];if(n>>>0>1){while(1){e=B(v[(f+(m<<2)|0)+4>>2],24)+b|0;d=z[e+12>>2];c=c>d?c:d;d=z[e+8>>2];i=d>i?i:d;d=z[e+4>>2];j=d>j?j:d;d=z[e>>2];k=d>k?k:d;d=z[e+20>>2];g=d>2];h=d>2]=0;z[a+8>>2]=i;z[a+4>>2]=j;z[a>>2]=k;i=C(0);break a}i=z[e>>2];c=z[f>>2];g=z[e+4>>2];h=z[f+4>>2];j=z[e+8>>2];k=z[f+8>>2];d=z[f+12>>2];l=z[e+12>>2];z[a+12>>2]=d>2]=j>k?k:j;z[a+4>>2]=g>h?h:g;z[a>>2]=c>2];c=z[e+28>>2];i=c>2];g=z[e+24>>2];g=c>g?c:g;c=z[f+20>>2];h=z[e+20>>2];h=c>h?c:h;c=z[f+16>>2];j=z[e+16>>2];c=c>j?c:j}z[a+16>>2]=c;z[a+28>>2]=i;z[a+24>>2]=g;z[a+20>>2]=h;a=v[a+32>>2];b:{if(!a){break b}while(1){b=v[a+36>>2];i=z[b+16>>2];f=v[a+40>>2];c=z[f+16>>2];i=c>2];g=z[f+12>>2];c=c>2];h=z[f+8>>2];g=g>2];j=z[f+4>>2];h=h>2];k=z[f+28>>2];j=j>k?j:k;k=z[b+24>>2];d=z[f+24>>2];k=d>2];l=z[f+20>>2];d=d>l?d:l;l=z[b>>2];o=z[f>>2];l=l>2]|h!=z[a+4>>2]|(g!=z[a+8>>2]|c!=z[a+12>>2])){break c}if(i!=z[a+16>>2]|d!=z[a+20>>2]|k!=z[a+24>>2]){break c}if(j==z[a+28>>2]){break b}}z[a+16>>2]=i;z[a+12>>2]=c;z[a+8>>2]=g;z[a+4>>2]=h;z[a>>2]=l;z[a+28>>2]=j;z[a+24>>2]=k;z[a+20>>2]=d;a=v[a+32>>2];if(a){continue}break}}}function cM(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,w=0,x=0,y=0,z=0,A=0,B=0;f=xa-16|0;a:{if(!v[a+188>>2]){break a}b=v[a+144>>2];d=v[b+4>>2];t=v[a+164>>2];h=v[t+4>>2];u=v[a+160>>2];l=v[u+4>>2];w=v[a+152>>2];i=v[w+4>>2];c=v[a+148>>2];e=v[c+4>>2];x=v[a+156>>2];p=v[x+4>>2];v[f+12>>2]=f+8;g=v[f+12>>2];v[f+12>>2]=f+4;m=v[f+12>>2];v[f+12>>2]=f;n=v[f+12>>2];v[g>>2]=(d|0)<0?d&2147483647:d^-1;v[m>>2]=(e|0)<0?e&2147483647:e^-1;v[n>>2]=(i|0)<0?i&2147483647:i^-1;d=v[g>>2];d=(d|0)<0?d^-1:d|-2147483648;v[b+4>>2]=p&1?d+16&-16|1:d-16&-16;d=v[m>>2];d=(d|0)<0?d^-1:d|-2147483648;v[c+4>>2]=l&1?d+16&-16|1:d-16&-16;d=v[n>>2];d=(d|0)<0?d^-1:d|-2147483648;i=h&1?d+16&-16|1:d-16&-16;v[w+4>>2]=i;if(!(v[a+188>>2]&2147483647)){break a}d=v[x+4>>2]&1;m=v[u+4>>2]&1;n=v[t+4>>2]&1;q=v[b+4>>2];r=v[c+4>>2];s=2;while(1){e=s<<2;y=e+b|0;g=v[y>>2];z=v[e+x>>2];A=v[e+u>>2];B=v[e+t>>2];l=e+w|0;h=v[l>>2];p=c+e|0;e=v[p>>2];v[f+12>>2]=f+8;o=v[f+12>>2];v[f+12>>2]=f+4;j=v[f+12>>2];v[f+12>>2]=f;k=v[f+12>>2];v[o>>2]=(g|0)<0?g&2147483647:g^-1;v[j>>2]=(e|0)<0?e&2147483647:e^-1;e=k;k=(h|0)<0?h&2147483647:h^-1;v[e>>2]=k;e=v[o>>2];g=(e|0)<0?e^-1:e|-2147483648;e=A&1;h=z&1;o=h?g+16&-16|1:g-16&-16;g=B&1;j=v[j>>2];j=(j|0)<0?j^-1:j|-2147483648;k=(k|0)<0?k^-1:k|-2147483648;q=o>>>0>>0?(d^h)+q|0:o;v[y>>2]=q;d=e?j+16&-16|1:j-16&-16;r=d>>>0>>0?(e^m)+r|0:d;v[p>>2]=r;d=g?k+16&-16|1:k-16&-16;i=d>>>0>>0?(g^n)+i|0:d;v[l>>2]=i;l=v[a+188>>2]<<1>>>0>s>>>0;d=h;m=e;n=g;s=s+1|0;if(l){continue}break}}}function V5(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0;h=xa-32|0;xa=h;s=v[a+76>>2];Ba[v[v[s>>2]+32>>2]](s,b,c);Y4(h,b);m=z[a+36>>2];n=z[a+40>>2];o=z[a+44>>2];p=z[h+20>>2];q=z[h+24>>2];r=z[h+16>>2];b=v[a+80>>2];i=z[h+8>>2];d=z[a+28>>2];j=z[h+4>>2];e=z[a+24>>2];g=z[h+12>>2];f=z[a+32>>2];k=z[h>>2];l=z[a+20>>2];z[b+28>>2]=C(i*d)+C(C(j*e)+C(C(g*f)+C(k*l)));z[b+24>>2]=C(l*j)+C(C(C(g*d)-C(f*i))-C(k*e));z[b+20>>2]=C(d*k)+C(C(C(g*e)-C(f*j))-C(i*l));z[b+16>>2]=C(e*i)+C(C(C(g*l)-C(f*k))-C(j*d));d=C(m-r);d=C(d+d);e=C(n-p);e=C(e+e);f=C(o-q);f=C(f+f);l=C(C(C(C(-k)*d)-C(e*j))-C(i*f));m=C(C(g*g)+C(-.5));z[b+40>>2]=C(C(f*m)+C(g*C(C(j*d)-C(k*e))))-C(i*l);z[b+36>>2]=C(C(e*m)+C(g*C(C(k*f)-C(i*d))))-C(j*l);z[b+32>>2]=C(C(d*m)+C(g*C(C(i*e)-C(j*f))))-C(k*l);Y4(h,c);m=z[a- -64>>2];n=z[a+68>>2];o=z[a+72>>2];p=z[h+20>>2];q=z[h+24>>2];r=z[h+16>>2];b=v[a+80>>2];i=z[h+8>>2];d=z[a+56>>2];j=z[h+4>>2];e=z[a+52>>2];g=z[h+12>>2];f=z[a+60>>2];k=z[h>>2];l=z[a+48>>2];z[b+56>>2]=C(i*d)+C(C(j*e)+C(C(g*f)+C(k*l)));z[b+52>>2]=C(l*j)+C(C(C(g*d)-C(f*i))-C(k*e));z[b+48>>2]=C(d*k)+C(C(C(g*e)-C(f*j))-C(i*l));z[b+44>>2]=C(e*i)+C(C(C(g*l)-C(f*k))-C(j*d));d=C(m-r);d=C(d+d);e=C(n-p);e=C(e+e);f=C(o-q);f=C(f+f);l=C(C(C(C(-k)*d)-C(e*j))-C(i*f));m=C(C(g*g)+C(-.5));z[b+68>>2]=C(C(f*m)+C(g*C(C(j*d)-C(k*e))))-C(i*l);z[b- -64>>2]=C(C(e*m)+C(g*C(C(k*f)-C(i*d))))-C(j*l);z[b+60>>2]=C(C(d*m)+C(g*C(C(i*e)-C(j*f))))-C(k*l);a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a);xa=h+32|0}function lr(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=v[a+980>>2];e=v[b+284>>2];if(e){f=v[a+2368>>2];h=v[a+2348>>2];if(!h){break b}g=v[b+280>>2];while(1){d=c<<2;b=v[d+g>>2];d=v[d+v[a+2504>>2]>>2];i=d>>>5|0;if(!(i>>>0<(v[f+24>>2]&2147483647)>>>0&(v[v[f+20>>2]+(i<<2)>>2]>>>d&1))){d=v[37419]+v[b+28>>2]|0;b=v[v[b+4>>2]+44>>2];Ba[v[v[h>>2]+8>>2]](h,d,v[((w[b+9|0]<<2)+149664|0)+40>>2]+b|0)}c=c+1|0;if((e|0)!=(c|0)){continue}break}b=v[a+980>>2]}a=0;break a}h=v[f+24>>2]&2147483647;g=v[a+2504>>2];a=0;while(1){d=v[g+(c<<2)>>2];i=d>>>5|0;a=i>>>0>>0&(v[v[f+20>>2]+(i<<2)>>2]>>>d&1)?a:1;c=c+1|0;if((e|0)!=(c|0)){continue}break}}v[b+284>>2]=0;b=a;a=v[k+1012>>2];c=v[a+292>>2];f=v[a+296>>2];c:{if(!f){break c}e=v[k+2380>>2];if(e){a=0;if((f|0)!=1){h=f&-2;while(1){g=a<<2;d=v[g+c>>2];if(y[d+12>>2]<=3221225471){Ba[v[v[e>>2]+12>>2]](e,d)}g=v[c+(g|4)>>2];if(y[g+12>>2]<=3221225471){Ba[v[v[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=v[c+(a<<2)>>2];if(y[a+12>>2]>3221225471){break c}Ba[v[v[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|(y[v[c+(b|12)>>2]+12>>2]<3221225472|y[v[c+(b|8)>>2]+12>>2]<3221225472|y[v[c+(b|4)>>2]+12>>2]<3221225472|y[v[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=y[v[c+(a<<2)>>2]+12>>2]<3221225472|b;a=a+1|0;j=j+1|0;if((e|0)!=(j|0)){continue}break}}v[v[k+1012>>2]+296>>2]=0;if(b&1){a9(v[37696],2,11709,2040,64859,0)}}function RV(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=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=C(0),t=C(0),u=C(0),w=0,x=0;g=xa-4288|0;xa=g;h=z[d+24>>2];w=v[d+16>>2];x=v[d+20>>2];i=z[c+4>>2];v[g+4232>>2]=-1;z[g+52>>2]=i;d=0;v[g+48>>2]=0;p=g+4232|0;q=g+48|0;kV(p,q);v[g+4176>>2]=-1;j=g+4176|0;kV(j,e);v[g+4168>>2]=0;v[g+4172>>2]=0;v[g+4144>>2]=0;z[g+40>>2]=h;v[g+32>>2]=w;v[g+36>>2]=x;v[g+24>>2]=0;v[g+28>>2]=1065353216;v[g+16>>2]=0;v[g+20>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;c=xa-3440|0;xa=c;e=v[j+4>>2];v[c+3432>>2]=j;v[c+3428>>2]=e;h=z[j+8>>2];i=z[j+12>>2];z[c+3424>>2]=C(1)/z[j+16>>2];z[c+3416>>2]=C(1)/i;z[c+3420>>2]=C(1)/h;i=z[f+8>>2];h=C(z[g+40>>2]-z[f+24>>2]);k=C(h+h);l=z[f>>2];h=C(z[g+32>>2]-z[f+16>>2]);m=C(h+h);h=C(z[g+36>>2]-z[f+20>>2]);n=C(h+h);o=z[f+4>>2];r=C(C(i*k)+C(C(l*m)+C(n*o)));h=z[f+12>>2];s=C(C(h*h)+C(-.5));t=C(C(l*r)+C(C(m*s)-C(h*C(C(o*k)-C(n*i)))));z[c+3400>>2]=t;u=C(C(o*r)+C(C(n*s)-C(h*C(C(i*m)-C(k*l)))));z[c+3404>>2]=u;i=C(C(i*r)+C(C(k*s)-C(h*C(C(l*n)-C(m*o)))));z[c+3408>>2]=i;h=C(z[p+4>>2]+z[g>>2]);z[c+3396>>2]=i+h;z[c+3392>>2]=u+h;z[c+3388>>2]=t+h;z[c+3384>>2]=i-h;z[c+3380>>2]=u-h;z[c+3376>>2]=t-h;v[c+3364>>2]=0;v[c+2592>>2]=0;v[c+28>>2]=0;z[c+24>>2]=h*h;v[c+16>>2]=q;v[c+12>>2]=f;v[c+8>>2]=g+16;v[c+20>>2]=c+3400;v[c+4>>2]=p;v[c>>2]=142716;e=c+3416|0;v[c+3368>>2]=e;l$(e,f,c+3376|0,0,c);NZ(c|4);xa=c+3440|0;a:{if(!v[q+4096>>2]){break a}if(!QV(a,b,v[g+4144>>2],g+48|0)){break a}d=v[g+4144>>2]!=0}xa=g+4288|0;return d|0}function zI(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=xa-16|0;xa=d;v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;a:{if(!v[a+16>>2]){break a}e=v[a+12>>2];f=v[e>>2];if((f|0)==-1){c=v[a+20>>2];while(1){h=h+1|0;if((c|0)==(h|0)){break a}f=v[e+(h<<2)>>2];if((f|0)==-1){continue}break}}b:while(1){e=B(f,12);i=v[(e+v[a+4>>2]|0)+8>>2];if(Ba[v[v[i>>2]+8>>2]](i,b,0)|0){j=e+v[a+4>>2]|0;e=v[d+4>>2];c:{if(e>>>0>=(v[d+8>>2]&2147483647)>>>0){e=0;c=v[d+8>>2];k=c&2147483647?c<<1:1;d:{if(!k){break d}c=k<<3;if(!c){break d}e=v[37696];g=e+12|0;e=(o=g,p=c,q=Ba[v[v[e>>2]+20>>2]](e)|0?31385:63804,r=16608,s=553,n=v[v[g>>2]+8>>2],Ba[n](o|0,p|0,q|0,r|0,s|0)|0)}c=v[d+4>>2];if((c|0)>0){l=(c<<3)+e|0;g=v[d>>2];c=e;while(1){m=v[g+4>>2];v[c>>2]=v[g>>2];v[c+4>>2]=m;g=g+8|0;c=c+8|0;if(l>>>0>c>>>0){continue}break}c=v[d+4>>2]}g=v[j+4>>2];c=(c<<3)+e|0;v[c>>2]=v[j>>2];v[c+4>>2]=g;e:{if(v[d+8>>2]<0){break e}c=v[d>>2];if(!c){break e}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}v[d+8>>2]=k;v[d>>2]=e;break c}c=v[j+4>>2];e=v[d>>2]+(e<<3)|0;v[e>>2]=v[j>>2];v[e+4>>2]=c}v[d+4>>2]=v[d+4>>2]+1;Ba[v[v[i>>2]+4>>2]](i)}f=v[v[a+8>>2]+(f<<2)>>2];if((f|0)!=-1){continue}e=v[a+12>>2];c=v[a+20>>2];while(1){h=h+1|0;if((c|0)!=(h|0)){f=v[e+(h<<2)>>2];if((f|0)==-1){continue}continue b}break}break}if(!v[d+4>>2]){break a}f=0;while(1){EI(a,v[d>>2]+(f<<3)|0);f=f+1|0;if(f>>>0>2]){continue}break}}a=v[d+8>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[d>>2];if(!a){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+16|0}function oO(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0,w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0);D=z[c+20>>2];b=v[b+92>>2];w=z[b+24>>2];A=z[b+20>>2];l=z[c+24>>2];u=v[c+36>>2];x=z[u+48>>2];y=z[u+56>>2];E=z[u+52>>2];F=z[c+16>>2];B=z[b+16>>2];o=z[c+8>>2];e=z[u+40>>2];p=z[c+4>>2];f=z[u+36>>2];m=z[c+12>>2];d=z[u+44>>2];g=z[u+32>>2];q=z[c>>2];n=C(C(o*e)+C(C(p*f)+C(C(m*d)+C(g*q))));h=z[b+12>>2];i=z[b>>2];r=C(C(f*o)+C(C(C(d*q)-C(m*g))-C(p*e)));s=C(C(e*q)+C(C(C(d*p)-C(m*f))-C(o*g)));j=z[b+4>>2];t=C(C(g*p)+C(C(C(d*o)-C(m*e))-C(q*f)));k=z[b+8>>2];z[a+12>>2]=C(C(C(n*h)-C(i*r))-C(s*j))-C(t*k);z[a+8>>2]=C(C(r*j)+C(C(n*k)+C(t*h)))-C(i*s);z[a+4>>2]=C(C(t*i)+C(C(n*j)+C(s*h)))-C(k*r);z[a>>2]=C(C(s*k)+C(C(n*i)+C(r*h)))-C(j*t);G=l;h=C(y*C(-2));i=C(x*C(-2));j=C(E*C(-2));x=C(C(e*h)+C(C(g*i)+C(f*j)));y=C(C(d*d)+C(-.5));k=C(C(e*x)+C(C(h*y)-C(d*C(C(g*j)-C(i*f)))));k=C(k+k);l=C(C(g*x)+C(C(i*y)-C(d*C(C(f*h)-C(j*e)))));l=C(l+l);d=C(C(f*x)+C(C(j*y)-C(d*C(C(e*i)-C(h*g)))));d=C(d+d);h=C(C(o*k)+C(C(q*l)+C(p*d)));i=C(C(m*m)+C(-.5));e=C(w+w);f=C(B+B);g=C(A+A);j=C(C(t*e)+C(C(r*f)+C(s*g)));w=C(C(n*n)+C(-.5));z[a+24>>2]=C(G+C(C(o*h)+C(C(k*i)+C(m*C(C(q*d)-C(l*p))))))+C(C(t*j)+C(C(e*w)+C(n*C(C(r*g)-C(f*s)))));z[a+20>>2]=C(D+C(C(p*h)+C(C(d*i)+C(m*C(C(o*l)-C(k*q))))))+C(C(s*j)+C(C(g*w)+C(n*C(C(t*f)-C(e*r)))));z[a+16>>2]=C(F+C(C(q*h)+C(C(l*i)+C(m*C(C(p*k)-C(d*o))))))+C(C(r*j)+C(C(f*w)+C(n*C(C(s*e)-C(g*t)))))}function jB(a,b,c,d,e,f,g,h,i,j){var k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0;k=xa-2112|0;xa=k;q=x[a+12>>1];a:{if((q|0)==65535){o=z[b>>2];l=z[b+4>>2];m=z[v[a+8>>2]+32>>2];n=C(C(m*z[b+8>>2])*d);z[c+8>>2]=n;l=C(C(m*l)*d);z[c+4>>2]=l;d=C(C(m*o)*d);z[c>>2]=d;o=z[b+20>>2];p=z[b+16>>2];m=C(z[b+24>>2]*e);z[c+24>>2]=m;o=C(o*e);z[c+20>>2]=o;e=C(p*e);z[c+16>>2]=e;break a}a=v[a>>2];n=z[b+20>>2];l=z[b>>2];m=z[b+4>>2];o=z[b+8>>2];p=z[b+16>>2];z[k+56>>2]=z[b+24>>2]*e;z[k+52>>2]=n*e;v[k+60>>2]=0;v[k+44>>2]=0;z[k+48>>2]=p*e;z[k+40>>2]=o*d;z[k+36>>2]=m*d;z[k+32>>2]=l*d;Ba[v[v[a>>2]+104>>2]](a,q,k- -64|0,k+32|0,c);m=z[c+24>>2];o=z[c+20>>2];e=z[c+16>>2];n=z[c+8>>2];l=z[c+4>>2];d=z[c>>2]}o=C(C(C(z[b+8>>2]*n)+C(C(z[b>>2]*d)+C(z[b+4>>2]*l)))+C(C(z[b+24>>2]*m)+C(C(z[b+16>>2]*e)+C(z[b+20>>2]*o))));b=x[f+12>>1];b:{if((b|0)==65535){l=z[g>>2];n=z[g+4>>2];e=z[v[f+8>>2]+32>>2];d=C(C(e*z[g+8>>2])*i);z[h+8>>2]=d;n=C(C(e*n)*i);z[h+4>>2]=n;i=C(C(e*l)*i);z[h>>2]=i;e=z[g+20>>2];p=z[g+16>>2];l=C(z[g+24>>2]*j);z[h+24>>2]=l;m=C(e*j);z[h+20>>2]=m;j=C(p*j);z[h+16>>2]=j;break b}a=v[f>>2];d=z[g+20>>2];e=z[g>>2];n=z[g+4>>2];l=z[g+8>>2];m=z[g+16>>2];z[k+56>>2]=z[g+24>>2]*j;z[k+52>>2]=d*j;v[k+60>>2]=0;v[k+44>>2]=0;z[k+48>>2]=m*j;z[k+40>>2]=l*i;z[k+36>>2]=n*i;z[k+32>>2]=e*i;Ba[v[v[a>>2]+104>>2]](a,b,k- -64|0,k+32|0,h);l=z[h+24>>2];m=z[h+20>>2];j=z[h+16>>2];d=z[h+8>>2];n=z[h+4>>2];i=z[h>>2]}xa=k+2112|0;return C(o+C(C(C(z[g+8>>2]*d)+C(C(z[g>>2]*i)+C(z[g+4>>2]*n)))+C(C(z[g+24>>2]*l)+C(C(z[g+16>>2]*j)+C(z[g+20>>2]*m)))))}function _M(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=C(0),u=0,w=C(0);g=xa-16|0;xa=g;v[g+12>>2]=0;v[g+8>>2]=0;j=v[a+48>>2];p=v[a+32>>2];t=z[a+36>>2];k=v[a+20>>2];l=v[a+28>>2];h=v[l+8>>2]&2147483647;if(h){u=v[v[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=v[s>>2];f=v[d+32>>2];e=v[v[l>>2]+12144>>2]+B(b,52)|0;v[e>>2]=v[d+28>>2];v[e+4>>2]=f;v[e+48>>2]=v[d+76>>2];f=v[d+72>>2];v[e+40>>2]=v[d+68>>2];v[e+44>>2]=f;f=v[d+64>>2];v[e+32>>2]=v[d+60>>2];v[e+36>>2]=f;f=v[d+56>>2];v[e+24>>2]=v[d+52>>2];v[e+28>>2]=f;f=v[d+48>>2];v[e+16>>2]=v[d+44>>2];v[e+20>>2]=f;f=v[d+40>>2];v[e+8>>2]=v[d+36>>2];v[e+12>>2]=f;d=x[v[v[s>>2]+60>>2]+12>>1];e=d&255;n=e>>>0>n>>>0?e:n;d=d>>>8|0;o=d>>>0>o>>>0?d:o;b=b+1|0;if((q|0)!=(b|0)){continue}break}}d=v[l>>2];b=vr(v[j+620>>2],56);d=v[d+12144>>2];e=v[j+636>>2];q=v[j+632>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=q;v[b+12>>2]=e;v[b+36>>2]=r-c;v[b+28>>2]=j;v[b>>2]=132772;v[b+32>>2]=d+B(c,52);z[b+40>>2]=z[p>>2];z[b+44>>2]=z[p+4>>2];w=z[p+8>>2];z[b+52>>2]=t;z[b+48>>2]=w;v[b+24>>2]=1;v[b+20>>2]=k;if(k){Ba[v[v[k>>2]+16>>2]](k);v[b+16>>2]=v[v[b+20>>2]+16>>2];c=v[b>>2]}else{c=132772}Ba[v[c+20>>2]](b);m=m+32|0;c=i;if(h>>>0>c>>>0){continue}break}}c=v[g+8>>2];v[g+8>>2]=c>>>0>>0?o:c;c=v[g+12>>2];v[g+12>>2]=c>>>0>>0?n:c;b=v[a+40>>2];c=v[b>>2];i=b;b=v[g+12>>2];v[i>>2]=(b|0)<(c|0)?c:b;c=v[a+44>>2];a=v[c>>2];b=c;c=v[g+8>>2];v[b>>2]=(a|0)>(c|0)?a:c;xa=g+16|0}function UB(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;f=v[37696];g=f+12|0;h=(v[c>>2]+v[a+40>>2]|0)+1|0;e=Raa(h,0,28,0);i=e+4|0;e=(n=g,o=Aa?-1:e>>>0>i>>>0?-1:i,p=Ba[v[v[f>>2]+20>>2]](f)|0?44527:63804,q=12118,r=659,m=v[v[g>>2]+8>>2],Ba[m](n|0,o|0,p|0,q|0,r|0)|0);v[e>>2]=h;g=e+4|0;f=v[a+40>>2];e=(f+v[c>>2]<<2)+4|0;a:{if(!e){e=0;break a}f=v[37696]+12|0;e=Ba[v[v[f>>2]+8>>2]](f,e,24422,12118,660)|0;f=v[a+40>>2]}g=H9(g,v[a+8>>2],B(f,28));h=H9(e,v[a+36>>2],v[a+40>>2]<<2);f=v[a+40>>2];e=g+B(f,28)|0;z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];z[e+8>>2]=z[b+8>>2];z[e+12>>2]=z[b+12>>2];z[e+16>>2]=z[b+16>>2];z[e+20>>2]=z[b+20>>2];v[e+24>>2]=v[b+24>>2];v[h+(f<<2)>>2]=d;b=v[a+52>>2];if(!(!b|!(v[b+(d>>>3&536870908)>>2]>>>d&1))){e=f>>>5|0;b=b+(e<<2)|0;v[b>>2]=v[b>>2]|1<>2];v[a+60>>2]=b>>>0>e>>>0?b:e}b=v[a+8>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b-4|0)}v[a+8>>2]=g;b=v[a+36>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b)}v[a+36>>2]=h;b:{if(!v[c>>2]){e=v[a+8>>2];break b}e=v[a+8>>2];k=v[c+4>>2];i=f+1|0;g=i;while(1){b=B(g,28)+e|0;f=k+B(j,28)|0;z[b>>2]=z[f>>2];z[b+4>>2]=z[f+4>>2];z[b+8>>2]=z[f+8>>2];z[b+12>>2]=z[f+12>>2];z[b+16>>2]=z[f+16>>2];z[b+20>>2]=z[f+20>>2];f=v[f+24>>2];c:{if(f&1){v[b+24>>2]=f&30|f+(v[a+4>>2]<<5)&-32|1;break c}l=b;b=(f>>>1|0)+i|0;v[l+24>>2]=b<<1;b=h+(b<<2)|0;v[b>>2]=g;v[b+4>>2]=g}g=g+1|0;j=j+1|0;if(j>>>0>2]){continue}break}}v[(h+(v[a+40>>2]<<2)|0)+4>>2]=d;b=v[a+40>>2];v[(B(d,28)+e|0)+24>>2]=b<<1;v[a+40>>2]=(b+v[c>>2]|0)+1}function QQ(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=v[a+20>>2];e=v[a+28>>2];b:{if(!v[e+1132>>2]){break b}c=v[e+1e3>>2];a=v[c+284>>2];if(!a){break b}f=v[c+280>>2];b=Cx(v[e+976>>2],a<<2,1);v[e+4628>>2]=b;if(b){while(1){a=a-1|0;b=v[v[(v[c+184>>2]+B(v[f+(d<<2)>>2]>>>7|0,24)|0)+20>>2]+100>>2];c:{if(!b){break c}b=zH(b);h=w[b+44|0];if(h&2|!v[b+20>>2]){break c}v[v[e+4628>>2]+(i<<2)>>2]=b;t[b+44|0]=h|2;i=i+1|0}d=d+1|0;if(a){continue}break}if(!i){break b}h=v[v[e+976>>2]+1156>>2];j=e+1168|0;d=0;a=0;b=0;while(1){f=w[v[v[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=vr(h,48);f=v[e+4628>>2];c=v[e+976>>2];k=v[c+1836>>2];l=v[c+1832>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=l;v[b+12>>2]=k;v[b+40>>2]=c;v[b+36>>2]=j;d=d+1|0;v[b+32>>2]=d-a;v[b+28>>2]=f+(a<<2);v[b>>2]=135116;v[b+20>>2]=g;v[b+24>>2]=1;if(g){Ba[v[v[g>>2]+16>>2]](g);v[b+16>>2]=v[v[b+20>>2]+16>>2];a=v[b>>2]}else{a=135116}Ba[v[a+20>>2]](b);b=0;a=d}if((d|0)!=(i|0)){continue}break}if(!b){break b}b=vr(h,48);c=v[e+4628>>2];d=v[e+976>>2];f=v[d+1836>>2];h=v[d+1832>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=h;v[b+12>>2]=f;v[b+40>>2]=d;v[b+36>>2]=e+1168;v[b+32>>2]=i-a;v[b+28>>2]=c+(a<<2);v[b>>2]=135116;v[b+20>>2]=g;v[b+24>>2]=1;if(g){Ba[v[v[g>>2]+16>>2]](g);v[b+16>>2]=v[v[b+20>>2]+16>>2];a=v[b>>2]}else{a=135116}Ba[v[a+20>>2]](b);break a}a=v[37696];a=Ba[v[v[a>>2]+4>>2]](a)|0;Ba[v[v[a>>2]+8>>2]](a,16,67254,11777,3430)}}}function KH(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;f=TH(a,c,d,4,2);v[f+24>>2]=b;XP(f);UE(v[f>>2],f);UE(v[f+4>>2],f);e=v[f+24>>2];a=v[e- -64>>2];b=v[e+60>>2];if(b){u[b+148>>1]=x[b+148>>1]|256;c=v[b+100>>2];v[c+148>>2]=v[c+148>>2]+1}if(a){u[a+148>>1]=x[a+148>>1]|256;c=v[a+100>>2];v[c+148>>2]=v[c+148>>2]+1}d=v[v[f>>2]+40>>2];c=-128;c=b?v[b+144>>2]:c;b=v[d+1e3>>2];a=a?v[a+144>>2]:-128;j=xa-16|0;xa=j;d=v[b+20>>2];a:{if(d){h=d-1|0;d=v[v[b+16>>2]+(h<<2)>>2];v[b+20>>2]=h;break a}d=v[b+28>>2];v[b+28>>2]=d+1}h=d<<1;if((h|0)==v[b+116>>2]){_F(b+104|0,(d<<2)+4|0);g=h+2|0;$F(b+128|0,g);aG(b+44|0,g)}g=v[b+124>>2];i=(h>>>0)/(g>>>0)|0;v[v[v[b+104>>2]+(i<<2)>>2]+(h-B(g,i)<<2)>>2]=c;c=h|1;g=v[b+124>>2];i=(c>>>0)/(g>>>0)|0;v[v[v[b+104>>2]+(i<<2)>>2]+(c-B(g,i)<<2)>>2]=a;a=v[b+148>>2];c=(d>>>0)/(a>>>0)|0;v[v[v[b+128>>2]+(c<<2)>>2]+(d-B(a,c)<<2)>>2]=e;a=v[b- -64>>2];c=(d>>>0)/(a>>>0)|0;v[v[v[b+44>>2]+(c<<2)>>2]+(d-B(a,c)<<2)>>2]=f;HF(b+168|0,d);HF(b+640|0,d);a=v[b+156>>2];b:{if(a<<5!=(d|0)){break b}c=a&2147483647;a=a<<1&134217726|1;if(c>>>0>=a>>>0){break b}c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,a<<2,24422,17999,438)|0;e=v[b+152>>2];c:{if(!e){break c}H9(c,e,v[b+156>>2]<<2);if(v[b+156>>2]<0){break c}e=v[b+152>>2];if(!e){break c}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}e=v[b+156>>2];I9(c+(e<<2)|0,0,a-e<<2);v[b+156>>2]=a;v[b+152>>2]=c}if((v[b+88>>2]&2147483647)==(d|0)){v[j+12>>2]=0;VF(b+80|0,h+2|0,j+12|0)}a=v[b+152>>2]+(d>>>3&536870908)|0;v[a>>2]=v[a>>2]|1<>2]=d;return f}function p_(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0);I=z[e+40>>2];J=z[d+40>>2];K=z[e+44>>2];L=z[d+44>>2];h=z[d+16>>2];i=z[d+20>>2];t=z[e+16>>2];u=z[e+20>>2];n=z[d+28>>2];j=z[e+28>>2];o=z[d+32>>2];k=z[e+32>>2];A=z[b+16>>2];B=z[b+20>>2];M=z[e+36>>2];N=z[d+36>>2];p=z[d+8>>2];m=z[d+4>>2];s=z[d>>2];q=z[d+12>>2];v=z[e+8>>2];w=z[e+4>>2];x=z[e>>2];y=z[e+12>>2];r=z[d+24>>2];l=z[e+24>>2];D=z[b+4>>2];E=z[b+8>>2];z[a+48>>2]=C(C(z[b+12>>2]-z[b>>2])*C(.5))+c;z[a+56>>2]=C(C(B-E)*C(.5))+c;z[a+52>>2]=C(C(A-D)*C(.5))+c;A=z[b+16>>2];B=z[b+20>>2];D=z[b+12>>2];E=z[b>>2];O=z[b+4>>2];P=z[b+8>>2];F=C(C(k*o)+C(C(l*r)+C(j*n)));z[a+32>>2]=F;G=C(C(u*o)+C(C(y*r)+C(t*n)));z[a+28>>2]=G;n=C(C(v*o)+C(C(x*r)+C(w*n)));z[a+24>>2]=n;o=C(C(k*i)+C(C(l*q)+C(j*h)));z[a+20>>2]=o;r=C(C(u*i)+C(C(y*q)+C(t*h)));z[a+16>>2]=r;q=C(C(v*i)+C(C(x*q)+C(w*h)));z[a+12>>2]=q;h=C(C(k*p)+C(C(l*s)+C(m*j)));z[a+8>>2]=h;H=C(C(u*p)+C(C(y*s)+C(m*t)));z[a+4>>2]=H;p=C(C(v*p)+C(C(x*s)+C(w*m)));z[a>>2]=p;c=C(L-K);m=C(k*c);k=C(N-M);i=j;j=C(J-I);m=C(m+C(C(l*k)+C(i*j)));l=C(C(E+D)*C(.5));s=C(h*l);h=C(C(O+A)*C(.5));i=C(C(P+B)*C(.5));z[a+44>>2]=m+C(C(s+C(o*h))+C(F*i));z[a+40>>2]=C(C(u*c)+C(C(y*k)+C(t*j)))+C(C(C(H*l)+C(r*h))+C(G*i));z[a+36>>2]=C(C(v*c)+C(C(x*k)+C(w*j)))+C(C(C(p*l)+C(q*h))+C(n*i));if(!g){mZ(f,a+36|0,a+48|0,a)}}function rs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;c=v[37696];d=Ba[v[v[c>>2]+20>>2]](c)|0?25247:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,116,d,11709,3060)|0;v[c>>2]=124644;d=v[37696];f=Ba[v[v[d>>2]+20>>2]](d)|0?38399:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,80,f,19659,95)|0;v[c+4>>2]=d;t[d+76|0]=0;v[d+72>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+8>>2]=a;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;d=v[b+4>>2];v[c+44>>2]=v[b>>2];v[c+48>>2]=d;d=v[b+12>>2];v[c+52>>2]=v[b+8>>2];v[c+56>>2]=d;d=v[b+20>>2];v[c+60>>2]=v[b+16>>2];v[c+64>>2]=d;d=v[b+28>>2];v[c+68>>2]=v[b+24>>2];v[c+72>>2]=d;d=v[b+36>>2];v[c+76>>2]=v[b+32>>2];v[c+80>>2]=d;d=v[b+44>>2];v[c+84>>2]=v[b+40>>2];v[c+88>>2]=d;d=v[b+52>>2];v[c+92>>2]=v[b+48>>2];v[c+96>>2]=d;d=v[b+60>>2];v[c+100>>2]=v[b+56>>2];v[c+104>>2]=d;t[c+112|0]=0;v[c+108>>2]=-16;v[e+12>>2]=c;b=v[a+6028>>2];a:{if(b>>>0>=(v[a+6032>>2]&2147483647)>>>0){b=0;c=a+6024|0;a=v[c+8>>2];g=a&2147483647?a<<1:1;b:{if(!g){break b}d=g<<2;if(!d){break b}a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?54869:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,d,b,16608,553)|0}d=v[c+4>>2];h=(d<<2)+b|0;if((d|0)>0){f=v[c>>2];a=b;while(1){v[a>>2]=v[f>>2];f=f+4|0;a=a+4|0;if(h>>>0>a>>>0){continue}break}}v[h>>2]=v[e+12>>2];c:{if(v[c+8>>2]<0){break c}a=v[c>>2];if(!a){break c}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,a);d=v[c+4>>2]}v[c+8>>2]=g;v[c>>2]=b;v[c+4>>2]=d+1;break a}v[v[a+6024>>2]+(b<<2)>>2]=c;v[a+6028>>2]=b+1}xa=e+16|0;return v[e+12>>2]}function YP(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=v[a+4>>2];j=v[d+1e3>>2];k=v[j+284>>2];if(!k){break a}h=v[j+280>>2];l=v[d+1004>>2];i=v[d+976>>2];m=v[i+1816>>2];n=v[i+1156>>2];b:{if(!b){d=0;while(1){if(e>>>0>=256){c=vr(n,56);g=v[a+4>>2];o=v[g+16>>2];p=v[g+20>>2];e=0;v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=o;v[c+12>>2]=p;v[c+48>>2]=g;v[c+44>>2]=m;v[c+40>>2]=l;v[c+36>>2]=i;v[c+32>>2]=d-f;v[c+28>>2]=(f<<2)+h;v[c>>2]=134684;v[c+24>>2]=1;f=v[c+16>>2];Ba[v[v[f>>2]+72>>2]](f,c);f=d}c=v[v[(v[j+184>>2]+B(v[(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=vr(n,56);g=v[a+4>>2];o=v[g+20>>2];p=v[g+16>>2];e=0;v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=p;v[c+12>>2]=o;v[c+48>>2]=g;v[c+44>>2]=m;v[c+40>>2]=l;v[c+36>>2]=i;v[c+32>>2]=d-f;v[c+28>>2]=(f<<2)+h;v[c>>2]=134684;v[c+20>>2]=b;v[c+24>>2]=1;Ba[v[v[b>>2]+16>>2]](b);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);f=d}c=v[v[(v[j+184>>2]+B(v[(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=vr(n,56);a=v[a+4>>2];c=v[a+20>>2];e=v[a+16>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+8>>2]=e;v[d+12>>2]=c;v[d+48>>2]=a;v[d+44>>2]=m;v[d+40>>2]=l;v[d+36>>2]=i;v[d+32>>2]=k-f;v[d+28>>2]=(f<<2)+h;v[d>>2]=134684;v[d+20>>2]=b;v[d+24>>2]=1;if(b){Ba[v[v[b>>2]+16>>2]](b);v[d+16>>2]=v[v[d+20>>2]+16>>2];a=v[d>>2]}else{a=134684}Ba[v[a+20>>2]](d)}}function B_(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),u=0,x=0,y=C(0);k=z[c+8>>2];g=C(k*C(-.7071067690849304));l=z[c>>2];p=C(l*C(0));m=z[c+4>>2];t=C(m*C(-.7071067690849304));h=C(p+t);o=C(g+h);a=v[a+24>>2];j=C(C(z[a+108>>2]*k)+C(C(z[a+100>>2]*l)+C(m*z[a+104>>2])));d=C(C(z[a+28>>2]*k)+C(C(z[a+20>>2]*l)+C(m*z[a+24>>2])));i=C(C(z[a+8>>2]*k)+C(C(z[a>>2]*l)+C(z[a+4>>2]*m)));b=d>i;n=C(C(z[a+48>>2]*k)+C(C(z[a+40>>2]*l)+C(m*z[a+44>>2])));d=b?d:i;c=n>d;i=C(C(z[a+68>>2]*k)+C(C(z[a+60>>2]*l)+C(m*z[a- -64>>2])));d=c?n:d;q=i>d;n=C(C(z[a+88>>2]*k)+C(C(z[a+80>>2]*l)+C(m*z[a+84>>2])));d=q?i:d;u=n>d;d=u?n:d;x=dd;f=e?1:f;o=C(m*C(.7071067690849304));s=C(p+o);y=C(g+s);d=e?r:d;e=y>d;f=e?2:f;p=C(l*C(-.7071067690849304));i=C(p+i);r=C(g+i);d=e?y:d;e=r>d;f=e?3:f;g=C(k*C(.7071067690849304));s=C(g+s);d=e?r:d;e=s>d;f=e?4:f;n=C(g+n);d=e?s:d;e=n>d;f=e?5:f;h=C(g+h);d=e?n:d;e=h>d;f=e?6:f;i=C(g+i);h=e?h:d;e=i>h;f=e?7:f;g=C(k*C(0));d=C(g+C(j+t));h=e?i:h;e=d>h;f=e?8:f;j=C(g+C(j+o));h=e?d:h;e=j>h;f=e?9:f;o=C(g+C(p+o));j=e?j:h;e=o>j;e=C(g+C(p+t))>(e?o:j)?11:e?10:f;if((e|0)==-1){return(x?5:u?4:q?3:c?2:b)|0}b=v[((e<<3)+101312|0)+4>>2]+101408|0;c=w[b|0];q=w[b+1|0];b=a+B(q,20)|0;a=a+B(c,20)|0;return(C(C(z[a+8>>2]*k)+C(C(z[a>>2]*l)+C(m*z[a+4>>2])))>C(C(z[b+8>>2]*k)+C(C(z[b>>2]*l)+C(m*z[b+4>>2])))?c:q)|0}function st(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=v[b>>2];e=a+116|0;if((c|0)!=v[e>>2]){a9(v[37696],4,11562,258,67473,0);return}a:{b:{c:{switch(c-4|0){case 0:c=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:e)+32>>2];if(!c){break a}c=c+8|0;break b;case 2:c=v[(t[a+36|0]&1?v[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=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:e)+36>>2];if(!c){break a}c=c+8|0}d=v[c+4>>2]-1|0;v[c+4>>2]=d;if(d){break a}Ba[v[v[c>>2]+8>>2]](c)}f=xa-16|0;xa=f;d:{e:{f:{g:{h:{i:{j:{c=a+32|0;switch((v[c+4>>2]>>>30|0)-2|0){case 0:break i;case 1:break f;default:break j}}d=v[c>>2];if(d){break h}d=c+16|0;GR(d,b);break g}d=v[c>>2];if(w[d+4785|0]){break e}}g=d+16|0;h=v[v[g+976>>2]+1024>>2];d=c+16|0;Ba[v[v[h>>2]+48>>2]](h,d+32|0);GR(d,b);b=v[v[g+976>>2]+1024>>2];Ba[v[v[b>>2]+44>>2]](b,d+32|0)}b=v[c-12>>2];if(!b){break d}k:{l:{switch(x[b+4>>1]-5|0){case 0:b=b- -64|0;break k;case 8:b=b- -64|0;break k;default:break l}}b=b- -64|0}t[f|0]=0;v[f+8>>2]=1;SJ(b,d,f+8|0,f,0);break d}d=v[c>>2]}Xu(d,c);g=v[c+4>>2];v[c+4>>2]=g|1;d=v[c+8>>2];if(!d){d=Pu(v[c>>2],g>>>24&15);v[c+8>>2]=d}kV(d- -64|0,b)}xa=f+16|0;m:{n:{o:{switch(v[a+116>>2]-4|0){case 0:b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:e)+32>>2];if(!b){break m}b=b+8|0;break n;case 2:b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:e)+4>>2];if(!b){break m}b=b+8|0;break n;case 1:break o;default:break m}}b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:e)+36>>2];if(!b){break m}b=b+8|0}v[b+4>>2]=v[b+4>>2]+1}qt(a,73613)}function PN(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;e=v[b+68>>2];a:{if((e|0)>=0){f=v[a+28>>2];c=e>>>3|0;d=f+(c<<4)|0;k=w[d+14|0];m=w[d+13|0];h=v[a+44>>2]-1|0;g=v[v[a+40>>2]+(h<<2)>>2];i=e&-8;wK(v[a+4>>2],i+v[a+52>>2]|0);v[v[a+40>>2]+(c<<2)>>2]=g;c=v[a+52>>2];i=c+i|0;j=h<<3;c=j+c|0;l=v[c+4>>2];v[i>>2]=v[c>>2];v[i+4>>2]=l;c=f+(h<<4)|0;f=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=f;f=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=f;d=j+v[a+52>>2]|0;v[d>>2]=0;v[d+4>>2]=0;d=v[a+108>>2];c=v[d+456>>2];v[g+68>>2]=e;b:{if(!(w[g+43|0]&2)|w[g+41|0]&8){break b}e=v[v[v[d+444>>2]>>2]+(v[g- -64>>2]<<2)>>2];if(!e){break b}while(1){v[c+(v[e+20>>2]<<2)>>2]=v[g+68>>2];e=v[e+16>>2];if(e){continue}break}}v[a+44>>2]=h;v[a+56>>2]=h;e=a+32|0;break a}f=v[a+68>>2];c=e>>>3|0;d=f+(c<<4)|0;k=w[d+14|0];m=w[d+13|0];h=v[a+84>>2]-1|0;g=v[v[a+80>>2]+(h<<2)>>2];c=c&268435455;i=c<<3;wK(v[a+4>>2],i+v[a+92>>2]|0);v[v[a+80>>2]+(c<<2)>>2]=g;c=v[a+92>>2];i=c+i|0;j=h<<3;c=j+c|0;l=v[c+4>>2];v[i>>2]=v[c>>2];v[i+4>>2]=l;c=f+(h<<4)|0;f=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=f;f=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=f;d=j+v[a+92>>2]|0;v[d>>2]=0;v[d+4>>2]=0;d=v[a+108>>2];c=v[d+456>>2];v[g+68>>2]=e;c:{if(!(w[g+43|0]&2)|w[g+41|0]&8){break c}e=v[v[v[d+444>>2]>>2]+(v[g- -64>>2]<<2)>>2];if(!e){break c}while(1){v[c+(v[e+20>>2]<<2)>>2]=v[g+68>>2];e=v[e+16>>2];if(e){continue}break}}v[a+84>>2]=h;v[a+96>>2]=h;e=a+72|0}v[e>>2]=v[e>>2]-1;Ba[v[v[a>>2]+28>>2]](a,b,k&2?1:0-(k&1)|0,m)}function MA(a){var b=C(0),c=C(0),d=0,e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),y=C(0),A=0,D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0),W=0;d=v[a+4>>2];g=z[d+24>>2];h=z[d+20>>2];e=v[a>>2];i=z[e+24>>2];j=z[e+20>>2];k=z[d+16>>2];l=z[e+16>>2];m=z[d+8>>2];n=z[d+4>>2];o=z[d>>2];p=z[e+8>>2];q=z[e+4>>2];r=z[e>>2];a=v[a+24>>2];s=x[a+2>>1];if(s){M=a+s|0;while(1){D=a+48|0;A=w[a+1|0];s=D+B(A,48)|0;if(A){t=z[a+16>>2];b=z[a+12>>2];N=C(t*b);c=z[a+8>>2];O=C(t*c);u=z[a+24>>2];P=C(u*b);y=z[a+20>>2];Q=C(y*b);R=C(u*c);S=C(y*c);T=(x[a+2>>1]+a|0)+32|0;U=z[a+28>>2];V=z[a+4>>2];f=0;while(1){a=(f<<2)+T|0;b=z[a>>2];c=C(-b);W=a;a=B(f,48)+D|0;E=z[a+44>>2];F=z[a>>2];G=z[a+16>>2];H=z[a+4>>2];I=z[a+20>>2];J=z[a+8>>2];K=z[a+24>>2];L=C(z[a+36>>2]-C(z[a+32>>2]*C(C(C(C(C(t*r)+C(l*F))-C(C(t*o)+C(k*G)))+C(C(C(y*q)+C(j*H))-C(C(y*n)+C(h*I))))+C(C(C(u*p)+C(i*J))-C(C(u*m)+C(g*K))))));c=C(b+(cE?E:c;z[W>>2]=c;b=C(c-b);m=C(m-C(P*b));n=C(n-C(Q*b));o=C(o-C(N*b));p=C(p+C(R*b));q=C(q+C(S*b));r=C(r+C(O*b));c=C(U*b);g=C(g-C(K*c));h=C(h-C(I*c));k=C(k-C(G*c));b=C(V*b);i=C(i+C(J*b));j=C(j+C(H*b));l=C(l+C(F*b));f=f+1|0;if((A|0)!=(f|0)){continue}break}}a=s;if(M>>>0>a>>>0){continue}break}}z[e+8>>2]=p;z[e+4>>2]=q;z[e>>2]=r;z[d+8>>2]=m;z[d+4>>2]=n;z[d>>2]=o;z[e+24>>2]=i;z[e+20>>2]=j;z[e+16>>2]=l;z[d+24>>2]=g;z[d+20>>2]=h;z[d+16>>2]=k}function sK(a,b){var c=0,d=0,e=0;v[a>>2]=0;v[a+4>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;v[a+40>>2]=1065353216;v[a+52>>2]=0;v[a+56>>2]=0;c=a- -64|0;v[c>>2]=0;v[c+4>>2]=0;v[a+60>>2]=1065353216;v[a+72>>2]=0;v[a+76>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+80>>2]=1065353216;v[a+92>>2]=0;v[a+96>>2]=0;v[a+504>>2]=0;v[a+508>>2]=0;c=b+24|0;v[a+500>>2]=c;v[a+104>>2]=b+212;v[a+100>>2]=1065353216;v[a+516>>2]=0;v[a+520>>2]=0;v[a+512>>2]=c;v[a+7088>>2]=0;v[a+6688>>2]=0;v[a+6288>>2]=0;v[a+5888>>2]=0;v[a+5488>>2]=0;v[a+5088>>2]=0;u[a+4702>>1]=0;c=a+4664|0;v[c>>2]=2139095039;v[c+4>>2]=0;c=a+4656|0;v[c>>2]=2139095039;v[c+4>>2]=2139095039;c=a+4648|0;v[c>>2]=0;v[c+4>>2]=1065353216;v[a+4640>>2]=0;v[a+4644>>2]=0;c=v[b+204>>2];d=v[b+208>>2];u[a+7136>>1]=0;v[a+7124>>2]=0;v[a+7116>>2]=0;v[a+7120>>2]=0;e=a+7108|0;v[e>>2]=c;v[e+4>>2]=d;v[a+7104>>2]=0;d=w[b+276|0];c=a+7144|0;t[c|0]=0;t[c+1|0]=0;t[c+2|0]=0;t[c+3|0]=0;t[c+4|0]=0;t[c+5|0]=0;t[c+6|0]=0;t[c+7|0]=0;t[a+7139|0]=0;t[a+7140|0]=0;t[a+7141|0]=0;t[a+7142|0]=0;t[a+7143|0]=0;t[a+7144|0]=0;t[a+7145|0]=0;t[a+7146|0]=0;v[a+7164>>2]=0;v[a+7168>>2]=0;t[a+7138|0]=d;v[a+7172>>2]=v[b+280>>2];v[a+7176>>2]=v[b+284>>2];v[a+7180>>2]=v[b+288>>2];b=v[b+296>>2];v[a+7204>>2]=0;v[a+7208>>2]=0;v[a+7192>>2]=0;v[a+7196>>2]=0;v[a+7188>>2]=b;v[c>>2]=0;I9(a+108|0,0,392);b=a+7224|0;v[b>>2]=0;v[b+4>>2]=0;v[a+7216>>2]=0;v[a+7220>>2]=0;return a}function kV(a,b){var c=0,d=0,e=0,f=0;a:{switch(v[b>>2]){case 3:v[a>>2]=3;z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];return;case 2:c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;v[a+8>>2]=v[b+8>>2];return;case 0:c=v[b>>2];b=v[b+4>>2];v[a+8>>2]=0;v[a>>2]=c;v[a+4>>2]=b;return;case 1:v[a>>2]=1;return;case 4:v[a>>2]=4;z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];c=v[b+32>>2];v[a+32>>2]=c;t[a+36|0]=w[b+36|0];d=w[b+37|0]|w[b+38|0]<<8;t[a+37|0]=d;t[a+38|0]=d>>>8;t[a+39|0]=w[b+39|0];v[a+40>>2]=c+16;e=a,f=Ba[v[v[c>>2]+60>>2]](c)|0,t[e+44|0]=f;return;case 5:v[a>>2]=5;z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];t[a+32|0]=w[b+32|0];c=w[b+33|0]|w[b+34|0]<<8|(w[b+35|0]<<16|w[b+36|0]<<24);t[a+33|0]=c;t[a+34|0]=c>>>8;t[a+35|0]=c>>>16;t[a+36|0]=c>>>24;b=w[b+36|0]|w[b+37|0]<<8|(w[b+38|0]<<16|w[b+39|0]<<24);t[a+36|0]=b;t[a+37|0]=b>>>8;t[a+38|0]=b>>>16;t[a+39|0]=b>>>24;b=v[a+36>>2];v[a+40>>2]=b;v[a+44>>2]=v[b+68>>2];v[a+48>>2]=0;v[a+52>>2]=-842203136;return;case 6:v[a>>2]=6;c=v[b+8>>2];d=v[b+4>>2];v[a+4>>2]=d;v[a+8>>2]=c;c=v[b+16>>2];v[a+12>>2]=v[b+12>>2];v[a+16>>2]=c;t[a+20|0]=w[b+20|0];t[a+23|0]=w[b+23|0];b=w[b+21|0]|w[b+22|0]<<8;t[a+21|0]=b;t[a+22|0]=b>>>8;v[a+28>>2]=0;v[a+32>>2]=-842203136;v[a+24>>2]=d+16;break;default:break a}}}function FE(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=xa-32|0;xa=e;t[a+140|0]=1;d=c>>>1|0;f=c&1;a:{if((b|0)==-1){v[e+12>>2]=d;b=B(f,36)+a|0;c=v[b+4>>2]+(c>>>4&268435452)|0;g=v[c>>2];d=1<>2]=d|g;c=b+16|0;d=v[b+20>>2];b:{if(d>>>0>=(v[b+24>>2]&2147483647)>>>0){on(c,e+12|0);break b}v[v[c>>2]+(d<<2)>>2]=v[e+12>>2];v[b+20>>2]=v[b+20>>2]+1}a=B(f,36)+a|0;v[a+32>>2]=v[a+32>>2]+1;break a}c=B(f,36)+a|0;v[c+32>>2]=v[c+32>>2]+1;v[e+20>>2]=d;v[e+16>>2]=b;c=0;c:{d:{d=a+76|0;a=v[d+20>>2];e:{if(!a){break e}g=v[e+16>>2];b=(g<<15^-1)+g|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=B(b>>>16^b^-57320555,1000007);h=v[e+20>>2];b=(h<<15^-1)+h|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=a-1&(c^(b>>>16^b));f=v[v[d+12>>2]+(c<<2)>>2];if((f|0)==-1){break e}i=v[d+8>>2];j=v[d+4>>2];while(1){b=(f<<3)+j|0;if((g|0)==v[b>>2]&(h|0)==v[b+4>>2]){break d}f=v[(f<<2)+i>>2];if((f|0)!=-1){continue}break}}t[e+31|0]=0;if(v[d+36>>2]==v[d+16>>2]){b=a?a<<1:16;if(b>>>0>a>>>0){DE(d,b);a=v[d+20>>2]}b=a-1|0;a=v[e+16>>2];a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;c=B(a>>>16^a^-57320555,1000007);a=v[e+20>>2];a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;c=b&(c^(a>>>16^a))}a=v[d+28>>2];v[d+28>>2]=a+1;b=v[d+12>>2]+(c<<2)|0;v[v[d+8>>2]+(a<<2)>>2]=v[b>>2];v[b>>2]=a;v[d+36>>2]=v[d+36>>2]+1;v[d+32>>2]=v[d+32>>2]+1;a=v[d+4>>2]+(a<<3)|0;break c}t[e+31|0]=1;a=b}if(w[e+31|0]){break a}v[a>>2]=v[e+16>>2];v[a+4>>2]=v[e+20>>2]}xa=e+32|0}function Wz(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=C(0),p=0,q=0;h=v[b+8>>2];if(!h){v[a+8>>2]=0;v[a+12>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;c=v[a>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a>>2]=0;return}j=h<<1|1;c=v[a+28>>2];a:{if(!(c>>>0>>0|c>>>2>>>0>h>>>0)){g=j<<2;f=v[a+4>>2];break a}d=v[a>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}e=h<<3;g=j<<2;k=B(h,12);d=g+k|0;if(d){c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,d,24422,19305,198)|0}else{c=0}v[a+16>>2]=c;v[a>>2]=c;v[a+28>>2]=h;v[a+12>>2]=j;v[a+20>>2]=c+e;f=c+k|0;v[a+4>>2]=f}I9(f,255,g);v[a+8>>2]=j;f=0;v[a+24>>2]=0;l=v[a+16>>2];m=v[a+20>>2];k=v[a+4>>2];n=v[b+4>>2];g=0;while(1){b=n+(g<<5)|0;o=z[b+4>>2];p=v[b+16>>2];d=p>>>7|0;q=v[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=Raa(b^((c&255)<<24|b>>>8),c^c>>>8,9,0);d=Aa;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;e=(((b^((c&2147483647)<<1|b>>>31))>>>0)%(j>>>0)<<2)+k|0;d=v[e>>2];b=d;b:{if((b|0)!=-1){while(1){i=l+(b<<3)|0;c=n+(v[i>>2]<<5)|0;if(!(v[c+12>>2]!=(q|0)|v[c+16>>2]!=(p|0))){z[i+4>>2]=o+z[i+4>>2];break b}b=v[m+(b<<2)>>2];if((b|0)!=-1){continue}break}}v[m+(f<<2)>>2]=d;v[e>>2]=f;b=l+(f<<3)|0;z[b+4>>2]=o;v[b>>2]=g;f=f+1|0}g=g+1|0;if((h|0)!=(g|0)){continue}break}v[a+24>>2]=f}function w$(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=v[a+12>>2];if(e){a:{if(v[a+16>>2]){c=Raa(e,0,12,0);h=c+4|0;g=Aa?-1:c>>>0>h>>>0?-1:h;if(g){c=v[37696];f=c+12|0;f=(j=f,k=g,l=Ba[v[v[c>>2]+20>>2]](c)|0?54545:63804,m=13740,n=92,i=v[v[f>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}v[f>>2]=e;c=f+4|0;if(v[a+12>>2]){while(1){g=v[a+16>>2]+B(v[(d<<2)+b>>2],12)|0;h=v[g+4>>2];e=c+B(d,12)|0;v[e>>2]=v[g>>2];v[e+4>>2]=h;v[e+8>>2]=v[g+8>>2];d=d+1|0;e=v[a+12>>2];if(d>>>0>>0){continue}break}d=B(e,12)}H9(v[a+16>>2],c,d);break a}c=Raa(e,0,6,0);h=c+4|0;g=Aa?-1:c>>>0>h>>>0?-1:h;if(g){c=v[37696];f=c+12|0;f=(n=f,m=g,l=Ba[v[v[c>>2]+20>>2]](c)|0?54227:63804,k=13740,j=102,i=v[v[f>>2]+8>>2],Ba[i](n|0,m|0,l|0,k|0,j|0)|0)}v[f>>2]=e;c=f+4|0;if(v[a+12>>2]){while(1){e=c+B(d,6)|0;g=v[a+20>>2]+B(v[(d<<2)+b>>2],6)|0;h=x[g>>1]|x[g+2>>1]<<16;u[e>>1]=h;u[e+2>>1]=h>>>16;u[e+4>>1]=x[g+4>>1];d=d+1|0;e=v[a+12>>2];if(d>>>0>>0){continue}break}d=B(e,6)}H9(v[a+20>>2],c,d)}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f);d=v[a+12>>2];c=d<<2;b:{if(!c){f=0;break b}d=v[37696]+12|0;f=Ba[v[v[d>>2]+8>>2]](d,c,24422,13740,111)|0;d=v[a+12>>2]}c=v[a+8>>2];c:{d:{e:{if(d){d=0;if(c){break e}while(1){c=d<<2;v[c+f>>2]=v[b+c>>2];d=d+1|0;if(d>>>0>2]){continue}break}a=a+8|0;break c}a=a+8|0;if(!c){break c}break d}while(1){e=d<<2;v[e+f>>2]=v[c+(v[b+e>>2]<<2)>>2];d=d+1|0;if(d>>>0>2]){continue}break}a=a+8|0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a>>2]=f}}function nR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+20>>2];a=v[a+28>>2];jP(a);v[a+4324>>2]=b;v[a+4328>>2]=1;d=a+4304|0;a:{if(!b){v[a+4368>>2]=1;v[a+4408>>2]=1;v[a+4364>>2]=0;v[a+4404>>2]=0;v[a+4444>>2]=0;v[a+4448>>2]=1;break a}Ba[v[v[b>>2]+16>>2]](b);c=v[v[a+4324>>2]+16>>2];v[a+4368>>2]=1;v[a+4320>>2]=c;c=a+4364|0;v[c>>2]=b;Ba[v[v[b>>2]+16>>2]](b);c=v[v[c>>2]+16>>2];v[a+4408>>2]=1;v[a+4360>>2]=c;c=a+4404|0;v[c>>2]=b;Ba[v[v[b>>2]+16>>2]](b);c=v[v[c>>2]+16>>2];v[a+4448>>2]=1;v[a+4400>>2]=c;c=a+4444|0;v[c>>2]=b;Ba[v[v[b>>2]+16>>2]](b);v[a+4440>>2]=v[v[c>>2]+16>>2]}b=v[a+4320>>2];Ba[v[v[b>>2]+72>>2]](b,d);b=v[a+4360>>2];Ba[v[v[b>>2]+72>>2]](b,a+4344|0);b=v[a+4400>>2];Ba[v[v[b>>2]+72>>2]](b,a+4384|0);b=v[a+4440>>2];Ba[v[v[b>>2]+72>>2]](b,a+4424|0);d=v[a+4676>>2];if(d){b=0;while(1){c=v[v[a+4672>>2]+(b<<2)>>2];if(!(c&1)){d=v[a+976>>2];e=v[c+48>>2];f=v[d+340>>2]+(e>>>3&536870908)|0;g=v[f>>2];h=f,i=Uaa(-2,e)&g,v[h>>2]=i;e=v[d+328>>2];v[d+328>>2]=e+1;v[v[d+324>>2]+(e<<2)>>2]=c;d=v[a+4676>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}e=v[a+4688>>2];if(e){d=v[a+2168>>2];f=v[a+4684>>2];b=0;while(1){c=v[f+(b<<2)>>2];if(!(c&1|!c)){v[d+976>>2]=v[d+976>>2]-1;v[c>>2]=v[d+984>>2];v[d+984>>2]=c}b=b+1|0;if((e|0)!=(b|0)){continue}break}}c=v[a+4700>>2];if(c){b=v[a+2168>>2];e=v[a+4696>>2];a=0;while(1){d=v[e+(a<<2)>>2];if(!(d&1|!d)){v[b+1852>>2]=v[b+1852>>2]-1;v[d>>2]=v[b+1860>>2];v[b+1860>>2]=d}a=a+1|0;if((c|0)!=(a|0)){continue}break}}}function V2(a,b,c,d,e){var f=0,g=0,h=0;f=xa-48|0;xa=f;if(e){v[e>>2]=3}a:{b:{g=v[b+8>>2];c:{if(g>>>0<3){break c}d:{if(g>>>0>=65536){if(t[b+36|0]&1){break c}if(v[b+4>>2]){break d}break c}if(!v[b+4>>2]){break c}}if(y[b>>2]<12|x[b+40>>1]<4){break c}e:{if(v[b+16>>2]){if(!v[b+28>>2]|y[b+20>>2]<4){break c}g=x[b+36>>1];if(y[b+24>>2]<(g&1?2:4)>>>0){break c}if(y[b+12>>2]>19){break e}break c}g=x[b+36>>1];if(!(g&2)){break c}}h=x[b+38>>1];if(g&32){if((h-4&65535)>>>0>=253){break c}break b}if((h-8&65535)>>>0<249){break b}}g=0;a9(v[37696],4,10899,193,74390,0);break a}if(z[a+4>>2]<=C(0)){g=0;a9(v[37696],4,10899,199,74546,0);break a}if(z[a+8>>2]>2]=v[b+32>>2];h=v[b+28>>2];v[f+24>>2]=v[b+24>>2];v[f+28>>2]=h;h=v[b+20>>2];v[f+16>>2]=v[b+16>>2];v[f+20>>2]=h;h=v[b+12>>2];v[f+8>>2]=v[b+8>>2];v[f+12>>2]=h;h=v[b+4>>2];v[f>>2]=v[b>>2];v[f+4>>2]=h;u[f+36>>1]=g;b=x[b+38>>1]|x[b+40>>1]<<16;u[f+38>>1]=b;u[f+40>>1]=b>>>16;b=0;f:{if(!(g&2)){break f}v[f+20>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+32>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;u[f+36>>1]=g&65534;g=0;g:{h:{i:{h=Ba[v[v[d>>2]+8>>2]](d)|0;switch(h|0){case 0:case 2:break h;case 1:break i;default:break g}}v[e>>2]=1;break a}Ba[v[v[d>>2]+12>>2]](d,f);b=(h|0)==2}switch(h|0){case 0:case 2:break f;default:break a}}if(y[f+8>>2]>=256){g=0;a9(v[37696],32,10899,247,72618,0);break a}g=f4(c,f,v[a+48>>2],0,d);if(!e|!g){break a}v[e>>2]=b?2:0;g=1}xa=f+48|0;return g}function Fy(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=xa-16|0;xa=g;v[a+172>>2]=0;v[a+176>>2]=0;d=v[a+8>>2];if(d){f=a+88|0;i=a+112|0;while(1){b=d-1|0;c=v[v[a+4>>2]+(b<<2)>>2];v[a+8>>2]=b;v[g+12>>2]=c;b=v[a+168>>2];d=v[b+16>>2];a:{if(!(d>>>0>c>>>0|c>>>0>=d+v[b+20>>2]>>>0)){b=v[a+92>>2];if(b>>>0>=(v[a+96>>2]&2147483647)>>>0){Cy(f,g+12|0);break a}v[v[a+88>>2]+(b<<2)>>2]=c;v[a+92>>2]=b+1;break a}b=v[a+116>>2];b:{if(b>>>0>=(v[a+120>>2]&2147483647)>>>0){Cy(i,g+12|0);break b}v[v[a+112>>2]+(b<<2)>>2]=c;v[a+116>>2]=b+1}v[a+152>>2]=v[a+152>>2]-1}d=v[a+8>>2];if(d){continue}break}}c=v[a+104>>2];if(c){d=0;while(1){b=v[v[a+100>>2]+(d<<2)>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);c=v[a+104>>2]}d=d+1|0;if(d>>>0>>0){continue}break}}v[a+104>>2]=0;v[a+92>>2]=0;h=v[a+160>>2];if(h){e=v[a+168>>2];c=v[e+16>>2];c:{if(!(c>>>0<=h>>>0&c+v[e+20>>2]>>>0>h>>>0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,h);break c}k=v[e+4>>2];b=0;j=v[e+8>>2];f=j;while(1){i=b;b=b+1|0;c=f;f=c-1|0;d=(f<<2)+k|0;if(y[d>>2]>>0){continue}break}d:{if(c>>>0>=j>>>0){break d}f=i&3;if(f){b=0;while(1){v[d>>2]=v[v[e+4>>2]+(c<<2)>>2];c=c+1|0;d=d+4|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}if(i-1>>>0<3){break d}while(1){b=c<<2;v[d>>2]=v[b+v[e+4>>2]>>2];v[d+4>>2]=v[(b+v[e+4>>2]|0)+4>>2];v[d+8>>2]=v[(b+v[e+4>>2]|0)+8>>2];v[d+12>>2]=v[(b+v[e+4>>2]|0)+12>>2];d=d+16|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}v[e+8>>2]=j-1}v[a+160>>2]=0;v[a+164>>2]=0}xa=g+16|0}function L_(a,b,c,d,e){var f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0;f=v[a+5916>>2];a:{if(f){f=f-1|0;v[a+5916>>2]=f;g=v[((f<<2)+a|0)+5660>>2];break a}g=v[a+5656>>2];v[a+5656>>2]=g+1}f=B(g,48)+a|0;t[f+2357|0]=d;t[f+2356|0]=c;t[f+2355|0]=b;u[f+2358>>1]=0;v[f+2348>>2]=0;t[f+2354|0]=255;h=f+2340|0;v[h>>2]=0;v[h+4>>2]=0;t[f+2360|0]=g;u[f+2352>>1]=65535;g=a+1296|0;h=c<<4;c=g+h|0;i=z[c+4>>2];p=h;h=a+272|0;q=p+h|0;m=z[q+4>>2];r=d<<4;d=r+g|0;s=z[d+4>>2];r=h+r|0;n=z[r+4>>2];p=b<<4;b=g+p|0;j=z[b+4>>2];g=h+p|0;k=z[g+4>>2];w=z[c+8>>2];y=z[q+8>>2];A=z[d>>2];D=z[r>>2];E=z[d+8>>2];F=z[r+8>>2];G=z[b+8>>2];H=z[g+8>>2];l=z[c>>2];x=z[q>>2];I=z[b>>2];J=z[g>>2];v[f+2332>>2]=0;o=C(x-l);l=C(J-I);x=C(o-l);o=C(n-s);s=C(k-j);n=C(o-s);j=C(C(D-A)-l);m=C(C(m-i)-s);i=C(C(x*n)-C(j*m));o=m;m=C(H-G);k=C(C(F-E)-m);w=C(C(y-w)-m);n=C(C(o*k)-C(n*w));j=C(C(w*j)-C(k*x));k=C(C(i*i)+C(C(n*n)+C(j*j)));b=k>C(1.1920928955078125e-7);o=i;i=C(C(1)/C(K(b?k:C(1))));k=C(o*i);z[f+2328>>2]=k;j=C(j*i);z[f+2324>>2]=j;g=f+2320|0;i=C(n*i);z[g>>2]=i;l=C(C(k*m)+C(C(i*l)+C(s*j)));z[f+2336>>2]=l;p=f+2359|0;if(!(!b|!(l<=z[e>>2]))){c=v[a>>2];b:{if(!c){d=0;break b}b=c;while(1){h=v[a+4>>2];e=b-1|0;d=e>>>1|0;q=v[h+(d<<2)>>2];if(!(l>2])){d=b;break b}v[h+(b<<2)>>2]=q;b=d;if(e>>>0>1){continue}break}}v[v[a+4>>2]+(d<<2)>>2]=g;v[a>>2]=c+1;L=1}t[p|0]=L;return g}function SH(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0);n=w[a+158|0];if(n){r=z[a+24>>2];o=z[b+24>>2];s=z[a+20>>2];p=z[b+20>>2];f=z[a>>2];c=z[b+4>>2];i=z[a+12>>2];d=z[b+8>>2];j=z[b+12>>2];k=z[a+8>>2];l=z[b>>2];m=z[a+4>>2];e=C(C(f*c)+C(C(C(i*d)-C(j*k))-C(l*m)));g=C(C(k*l)+C(C(C(i*c)-C(j*m))-C(d*f)));h=C(C(m*d)+C(C(C(i*l)-C(j*f))-C(c*k)));t=z[a+16>>2];q=z[b+16>>2];d=C(C(d*k)+C(C(c*m)+C(C(j*i)+C(f*l))));if(d>2]=r+(n&4?C(0):u);z[b+20>>2]=s+(n&2?C(0):p);z[b+16>>2]=t+(n&1?C(0):q);h=n&32?C(0):C(l*c);e=n&8?C(0):C(j*c);g=n&16?C(0):C(v*c);c=C(C(h*h)+C(C(e*e)+C(g*g)));if(c!=C(0)){l=e;c=C(K(c));e=C(c*C(.5));d=C(Q9(e)/c);c=C(l*d);e=G9(e);g=C(g*d);h=C(h*d);d=C(C(i*e)+C(C(C(C(i*C(0))-C(f*c))-C(g*m))-C(h*k)));l=d;o=C(d*d);d=C(C(k*e)+C(C(C(-f)*g)+C(C(c*m)+C(C(k*C(0))+C(i*h)))));j=C(C(f*e)+C(C(C(-m)*h)+C(C(g*k)+C(C(f*C(0))+C(i*c)))));f=C(C(m*e)+C(C(C(-k)*c)+C(C(h*f)+C(C(m*C(0))+C(i*g)))));c=C(C(1)/C(K(C(o+C(C(d*d)+C(C(j*j)+C(f*f)))))));i=C(l*c);k=C(d*c);m=C(f*c);f=C(j*c)}z[b+12>>2]=i;z[b+8>>2]=k;z[b+4>>2]=m;z[b>>2]=f}}function bW(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=0,y=0,A=C(0);g=xa-4288|0;xa=g;i=z[d+4>>2];k=C(i+i);h=z[d+8>>2];n=C(k*h);q=z[d>>2];j=C(q+q);m=z[d+12>>2];o=C(j*m);l=C(n-o);r=C(j*h);s=C(k*m);p=C(r+s);n=C(n+o);t=C(j*i);u=C(h+h);w=C(u*m);m=C(t-w);o=C(r-s);r=C(t+w);j=C(C(1)-C(q*j));q=C(h*u);h=C(j-q);k=C(i*k);i=C(C(C(1)-k)-q);q=z[c+12>>2];s=z[c+8>>2];t=z[d+24>>2];u=z[d+20>>2];w=z[c+4>>2];A=z[d+16>>2];j=C(j-k);a:{if(j>2]=t;z[g+4276>>2]=u;z[g+4272>>2]=A;z[g+4268>>2]=h;z[g+4264>>2]=i;z[g+4260>>2]=j;z[g+4256>>2]=l;v[g+4200>>2]=-1;z[g+28>>2]=q;z[g+24>>2]=s;z[g+20>>2]=w;v[g+16>>2]=3;c=g+4200|0;x=g+16|0;kV(c,x);v[g+4144>>2]=-1;y=g+4144|0;kV(y,e);v[g+4136>>2]=0;v[g+4140>>2]=0;d=0;v[g+4112>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;b:{if(!AZ(c,y,g+4256|0,f,g,x)){break b}if(!QV(a,b,v[g+4112>>2],g+16|0)){break b}d=v[g+4112>>2]!=0}xa=g+4288|0;return d|0}function sx(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=0,u=C(0),x=C(0),y=C(0),A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;A=v[b+24>>2];r=v[a+336>>2];s=v[b+8>>2];c=s;v[c>>2]=0;v[c+4>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;if(r>>>0>=2){D=v[a+272>>2];E=v[b>>2];F=v[a+344>>2];G=v[a+340>>2];H=v[a+332>>2];a=1;while(1){k=a<<5;b=(v[(k+H|0)+24>>2]<<5)+E|0;i=z[b>>2];j=z[b+8>>2];c=B(a,160)+G|0;d=z[c+120>>2];f=z[c+128>>2];e=C(C(j*d)-C(i*f));l=z[b+4>>2];g=C(l*f);f=z[c+124>>2];g=C(g-C(f*j));o=C(C(i*e)-C(g*l));d=C(C(i*f)-C(d*l));p=C(C(j*g)-C(d*i));q=C(C(l*d)-C(e*j));c=k+s|0;b=B(a,80)+F|0;t=w[b+76|0];a:{if(!t){d=C(0);j=C(0);i=C(0);break a}I=(v[b+72>>2]<<2)+A|0;u=C(-l);x=C(-i);y=C(-j);J=B(a,76)+D|0;f=C(0);b=0;d=C(0);e=C(0);g=C(0);m=C(0);n=C(0);while(1){h=z[(b<<2)+I>>2];k=B(b,24)+J|0;e=C(e+C(h*z[k+12>>2]));g=C(g+C(h*z[k+8>>2]));m=C(m+C(h*z[k+4>>2]));n=C(n+C(h*z[k>>2]));f=C(f+C(h*z[k+20>>2]));d=C(d+C(h*z[k+16>>2]));b=b+1|0;if((t|0)!=(b|0)){continue}break}h=C(C(i*d)+C(e*u));o=C(o+C(C(C(n*d)-C(e*m))+C(h+h)));h=C(C(g*e)-C(f*n));e=C(C(j*e)+C(f*x));p=C(p+C(h+C(e+e)));e=C(C(m*f)-C(d*g));d=C(C(l*f)+C(d*y));q=C(q+C(e+C(d+d)));d=C(C(i*m)+C(n*u));j=C(C(j*n)+C(g*x));i=C(C(l*g)+C(m*y))}z[c+8>>2]=d;z[c+4>>2]=j;z[c>>2]=i;v[c+28>>2]=0;z[c+16>>2]=q;v[c+12>>2]=0;z[c+24>>2]=o;z[c+20>>2]=p;a=a+1|0;if((r|0)!=(a|0)){continue}break}}}function y4(a){var b=C(0),c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),x=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;c=v[a>>2];h=v[c+28>>2];k=v[h+28>>2];x=h;p=c;b=z[h+8>>2];e=C(z[c+8>>2]-b);m=C(e*e);e=z[h>>2];f=C(z[c>>2]-e);j=C(f*f);f=z[h+4>>2];g=C(z[c+4>>2]-f);g=C(m+C(j+C(g*g)));c=g>C(0);j=b;b=z[k+8>>2];d=C(j-b);q=C(d*d);j=e;e=z[k>>2];d=C(j-e);m=C(d*d);j=f;f=z[k+4>>2];d=C(j-f);d=C(q+C(m+C(d*d)));g=c?g:C(0);h=d>g;p=h?x:c?p:0;c=v[k+28>>2];b=C(b-z[c+8>>2]);m=C(b*b);b=C(e-z[c>>2]);j=C(b*b);b=C(f-z[c+4>>2]);h=C(m+C(j+C(b*b)))>(h?d:g)?k:p;c=v[h+28>>2];b=z[c+8>>2];e=z[c>>2];i=z[c+4>>2];f=z[h>>2];g=z[h+4>>2];d=z[h+8>>2];z[a+36>>2]=d;z[a+32>>2]=g;z[a+28>>2]=f;i=C(i-g);n=C(-i);r=C(e-f);q=C(-r);s=C(b-d);m=C(-s);b=C(0);e=C(0);k=1;while(1){f=C(z[c>>2]+f);z[a+28>>2]=f;g=C(z[c+4>>2]+g);z[a+32>>2]=g;d=C(z[c+8>>2]+d);z[a+36>>2]=d;o=z[h+8>>2];c=v[c+28>>2];j=z[c+8>>2];t=C(z[c+4>>2]-z[h+4>>2]);w=C(z[c>>2]-z[h>>2]);l=C(C(C(r*t)+C(w*n))+l);z[a+20>>2]=l;o=C(j-o);b=C(C(C(s*w)+C(o*q))+b);z[a+16>>2]=b;e=C(e+C(C(i*o)+C(t*m)));z[a+12>>2]=e;k=k+1|0;if((c|0)!=(h|0)){continue}break}u[a+4>>1]=k;i=C(K(C(C(l*l)+C(C(e*e)+C(b*b)))));if(i>C(0)){n=C(C(1)/i);l=C(l*n);z[a+20>>2]=l;b=C(b*n);z[a+16>>2]=b;e=C(e*n);z[a+12>>2]=e}z[a+24>>2]=i;i=C(C(1)/C((k&65535)>>>0));d=C(i*d);z[a+36>>2]=d;g=C(i*g);z[a+32>>2]=g;f=C(i*f);z[a+28>>2]=f;z[a+40>>2]=C(l*d)+C(C(e*f)+C(g*b))}function vI(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=xa-16|0;xa=h;a:{b:{c:{i=v[a+392>>2];if(i){k=a+484|0;if(b){break c}while(1){d=vr(c,88);e=v[a+388>>2];f=v[a+552>>2];j=v[a+556>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+8>>2]=f;v[d+12>>2]=j;v[d+36>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;v[d+64>>2]=0;v[d+68>>2]=0;v[d+72>>2]=0;v[d+84>>2]=a;f=i-g|0;v[d+80>>2]=f>>>0<16?f:16;v[d>>2]=130984;v[d+76>>2]=e+(g<<2);xI(d);v[h+12>>2]=d;e=v[a+488>>2];d:{if(e>>>0>=(v[a+492>>2]&2147483647)>>>0){yI(k,h+12|0);break d}v[v[a+484>>2]+(e<<2)>>2]=d;v[a+488>>2]=e+1}g=g+16|0;if(i>>>0>g>>>0){continue}break}}if(b){break b}zI(a+444|0,a);zI(a+404|0,a);break a}while(1){d=vr(c,88);e=v[a+388>>2];f=v[a+552>>2];j=v[a+556>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+8>>2]=f;v[d+12>>2]=j;v[d+36>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;v[d+64>>2]=0;v[d+68>>2]=0;v[d+72>>2]=0;v[d+84>>2]=a;f=i-g|0;v[d+80>>2]=f>>>0<16?f:16;v[d>>2]=130984;v[d+20>>2]=b;v[d+24>>2]=1;v[d+76>>2]=e+(g<<2);Ba[v[v[b>>2]+16>>2]](b);v[d+16>>2]=v[v[d+20>>2]+16>>2];Ba[v[v[d>>2]+20>>2]](d);v[h+12>>2]=d;e=v[a+488>>2];e:{if(e>>>0>=(v[a+492>>2]&2147483647)>>>0){yI(k,h+12|0);break e}v[v[a+484>>2]+(e<<2)>>2]=d;v[a+488>>2]=e+1}g=g+16|0;if(i>>>0>g>>>0){continue}break}}d=a+484|0;AI(a+444|0,a,c,b,3466,d);AI(a+404|0,a,c,b,3452,d)}xa=h+16|0}function q4(a,b,c,d,e,f,g,h,i,j){var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0;l=C(-85070586659632215e21);n=C(85070586659632215e21);a:{if(!a){o=C(85070586659632215e21);k=C(85070586659632215e21);p=C(-85070586659632215e21);m=C(-85070586659632215e21);break a}m=C(-85070586659632215e21);p=C(-85070586659632215e21);k=C(85070586659632215e21);o=C(85070586659632215e21);while(1){q=z[b+8>>2];l=l>q?l:q;r=z[b+4>>2];m=m>r?m:r;s=z[b>>2];p=p>s?p:s;n=n>2]=q;r=C(C(k+m)*C(.5));z[f+4>>2]=r;s=C(C(o+p)*C(.5));z[f>>2]=s;l=C(l-n);b:{p=C(p-o);b=p>>0<3)){if(!(d>l)){break b}}n=e;o=n;m=dk?o:C(k*C(.5));e=b?o:C(p*C(.5));if(d>l){break c}o=C(l*C(.5))}b=j?0:v[h>>2];a=B(b,12)+i|0;d=C(q-o);z[a+8>>2]=d;l=C(r-n);z[a+4>>2]=l;k=C(s-e);z[a>>2]=k;e=C(s+e);z[a+12>>2]=e;z[a+20>>2]=d;z[a+16>>2]=l;z[a+32>>2]=d;n=C(r+n);z[a+28>>2]=n;z[a+24>>2]=e;z[a+44>>2]=d;z[a+40>>2]=n;z[a+36>>2]=k;d=C(q+o);z[a+56>>2]=d;z[a+52>>2]=l;z[a+48>>2]=k;z[a+68>>2]=d;z[a- -64>>2]=l;z[a+60>>2]=e;z[a+80>>2]=d;z[a+76>>2]=n;z[a+72>>2]=e;v[h>>2]=b+8;z[a+92>>2]=d;z[a+88>>2]=n;z[a+84>>2]=k;return 1}z[g+8>>2]=l;z[g+4>>2]=k;z[g>>2]=p;return 0}function tX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0);c=xa-112|0;xa=c;k=z[b+20>>2];l=z[e+40>>2];m=z[b+24>>2];n=z[e+44>>2];o=z[b+16>>2];p=z[e+36>>2];z[c+48>>2]=z[e>>2];z[c+52>>2]=z[e+4>>2];z[c+56>>2]=z[e+8>>2];z[c+60>>2]=z[e+12>>2];z[c- -64>>2]=z[e+16>>2];z[c+68>>2]=z[e+20>>2];z[c+72>>2]=z[e+24>>2];z[c+76>>2]=z[e+28>>2];q=z[e+32>>2];z[c+92>>2]=n-m;z[c+88>>2]=l-k;z[c+80>>2]=q;z[c+84>>2]=p-o;z[c+96>>2]=z[e+48>>2];z[c+100>>2]=z[e+52>>2];z[c+104>>2]=z[e+56>>2];k=z[a+4>>2];v[c+40>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;l=z[f>>2];m=z[f+4>>2];z[c+24>>2]=-z[f+8>>2];z[c+20>>2]=-m;z[c+16>>2]=-l;u[c+8>>1]=x[i>>1];a=E2(c+48|0,C(k+j),c+32|0,c+16|0,g,h+40|0,h+28|0,c+8|0);a:{if(!a){break a}u[h+12>>1]=2;if(!(t[i|0]&1)){break a}g=z[h+40>>2];if(g==C(0)){break a}j=z[f>>2];k=z[f+4>>2];l=C(g*z[f+8>>2]);z[c+40>>2]=-l;m=C(g*k);z[c+36>>2]=-m;n=C(g*j);z[c+32>>2]=-n;C_(c+32|0,c+84|0,c+96|0,c+48|0,c+16|0);o=z[e+36>>2];p=z[e+40>>2];q=z[e+44>>2];r=z[c+72>>2];s=z[c+48>>2];w=z[c+60>>2];y=z[c+76>>2];A=z[c+52>>2];B=z[c+64>>2];D=z[c+80>>2];g=z[c+24>>2];E=z[c+56>>2];j=z[c+16>>2];F=z[c+68>>2];k=z[c+20>>2];u[h+12>>1]=x[h+12>>1]|1;z[h+24>>2]=l+C(q+C(C(C(j*E)+C(k*F))+C(g*D)));z[h+20>>2]=m+C(p+C(C(C(j*A)+C(k*B))+C(g*y)));z[h+16>>2]=n+C(o+C(C(C(j*s)+C(k*w))+C(g*r)))}xa=c+112|0;return a|0}function G1(a,b,c,d,e){var f=0,g=0,h=0,i=C(0),j=0,k=C(0);a:{b:{f=v[a+2328>>2];if(!f){break b}g=f-1|0;f=(g<<6)+a|0;if(!(z[a+2224>>2]>2]*z[c+8>>2])+C(C(z[f>>2]*z[c>>2])+C(z[f+4>>2]*z[c+4>>2]))))){break b}i=z[d>>2];if(!(i>2])){break a}g=(g<<6)+a|0;h=v[a+2320>>2]+(v[g+48>>2]<<6)|0;v[h>>2]=0;v[h+4>>2]=0;v[h+8>>2]=0;v[h+12>>2]=0;j=v[b+4>>2];h=v[a+2320>>2]+(v[g+48>>2]<<6)|0;v[h+16>>2]=v[b>>2];v[h+20>>2]=j;j=v[b+12>>2];v[h+24>>2]=v[b+8>>2];v[h+28>>2]=j;k=z[c+8>>2];h=v[c+4>>2];b=v[a+2320>>2]+(v[g+48>>2]<<6)|0;v[b+32>>2]=v[c>>2];v[b+36>>2]=h;z[b+44>>2]=i;z[b+40>>2]=k;v[(v[a+2320>>2]+(v[g+48>>2]<<6)|0)+48>>2]=e;b=v[d+12>>2];v[f+40>>2]=v[d+8>>2];v[f+44>>2]=b;b=v[d+4>>2];v[f+32>>2]=v[d>>2];v[f+36>>2]=b;break a}f=v[a+2320>>2]+(v[a+2324>>2]<<6)|0;v[f>>2]=0;v[f+4>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;g=v[b+4>>2];f=v[a+2320>>2]+(v[a+2324>>2]<<6)|0;v[f+16>>2]=v[b>>2];v[f+20>>2]=g;g=v[b+12>>2];v[f+24>>2]=v[b+8>>2];v[f+28>>2]=g;i=z[c+8>>2];k=z[d>>2];f=v[c+4>>2];b=v[a+2320>>2]+(v[a+2324>>2]<<6)|0;v[b+32>>2]=v[c>>2];v[b+36>>2]=f;z[b+44>>2]=k;z[b+40>>2]=i;f=v[a+2324>>2];g=f+1|0;v[a+2324>>2]=g;v[(v[a+2320>>2]+(f<<6)|0)+48>>2]=e;e=v[a+2328>>2];b=(e<<6)+a|0;v[b+52>>2]=g;v[b+48>>2]=f;f=v[d+4>>2];v[b+32>>2]=v[d>>2];v[b+36>>2]=f;f=v[d+12>>2];v[b+40>>2]=v[d+8>>2];v[b+44>>2]=f;v[a+2328>>2]=e+1;d=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=d;d=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=d}if(y[a+2324>>2]>=16){z1(a,1,1)}}function lW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=C(0),x=C(0),y=C(0),A=C(0),D=C(0);e=xa-32|0;xa=e;a=v[a+48>>2];l=z[a+56>>2];m=z[a+52>>2];h=z[a+72>>2];n=z[a- -64>>2];o=z[a+68>>2];i=z[a+88>>2];p=z[a+80>>2];q=z[a+84>>2];r=z[a+48>>2];f=z[b+8>>2];g=z[b>>2];j=z[b+4>>2];v[e+28>>2]=0;i=C(C(i*f)+C(C(p*g)+C(j*q)));z[e+24>>2]=i;h=C(C(h*f)+C(C(n*g)+C(j*o)));z[e+20>>2]=h;l=C(C(l*f)+C(C(r*g)+C(j*m)));z[e+16>>2]=l;a:{if(v[a+148>>2]){k=jW(a,e+16|0);v[e+12>>2]=0;z[e+8>>2]=-z[e+24>>2];z[e+4>>2]=-z[e+20>>2];z[e>>2]=-z[e+16>>2];s=jW(a,e);t=v[a+152>>2];k=t+B(k,12)|0;f=z[k+8>>2];g=z[k>>2];j=z[k+4>>2];k=c;m=z[a+88>>2];c=B(s,12)+t|0;i=z[c+8>>2];n=z[a+56>>2];h=z[c>>2];o=z[a+72>>2];l=z[c+4>>2];x=C(z[b+8>>2]*C(C(m*i)+C(C(n*h)+C(o*l))));p=z[a+80>>2];q=z[a+48>>2];r=z[a+64>>2];y=C(z[b>>2]*C(C(p*i)+C(C(q*h)+C(r*l))));u=z[a+84>>2];A=C(u*i);i=z[a+52>>2];D=C(i*h);h=z[a+68>>2];z[k>>2]=x+C(y+C(C(A+C(D+C(h*l)))*z[b+4>>2]));f=C(C(z[b+8>>2]*C(C(m*f)+C(C(n*g)+C(j*o))))+C(C(z[b>>2]*C(C(p*f)+C(C(q*g)+C(j*r))))+C(C(C(u*f)+C(C(i*g)+C(j*h)))*z[b+4>>2])));break a}b=v[a+152>>2];f=C(C(z[b+8>>2]*i)+C(C(z[b>>2]*l)+C(h*z[b+4>>2])));s=w[a+156|0];b:{if(s>>>0<2){g=f;break b}a=1;g=f;while(1){k=b+B(a,12)|0;j=C(C(z[k+8>>2]*i)+C(C(z[k>>2]*l)+C(h*z[k+4>>2])));g=g>j?j:g;f=f>2]=g}z[d>>2]=f;xa=e+32|0}function VP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=xa-16|0;xa=j;k=xa-16|0;xa=k;c=v[a+980>>2];e=v[v[c+376>>2]+(b<<2)>>2];h=v[e>>2];d=v[e+20>>2];if((d|0)!=-1){f=v[c+392>>2]-1|0;v[c+392>>2]=f;g=v[c+388>>2];v[g+(d<<2)>>2]=v[g+(f<<2)>>2];if(d>>>0>>0){v[v[v[c+388>>2]+(d<<2)>>2]+20>>2]=d}v[e+20>>2]=-1}f=h>>>5|0;g=v[c+136>>2]+(f<<2)|0;i=v[g>>2];d=1<>2]=i&(d^-1);break a}if(!v[e+8>>2]){break a}f=v[c+148>>2]+(f<<2)|0;v[f>>2]=d|v[f>>2]}cI(e);d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);v[v[c+376>>2]+(b<<2)>>2]=v[c+372>>2];v[c+372>>2]=b;v[j+12>>2]=h;b=v[c+180>>2];e=b+(h<<2)|0;v[j+8>>2]=v[e>>2];d=v[e>>2];v[k+12>>2]=d;e=v[c+504>>2];b:{if(e>>>0>=(v[c+508>>2]&2147483647)>>>0){b=0;e=v[c+508>>2];i=e&2147483647?e<<1:1;c:{if(!i){break c}e=i<<2;if(!e){break c}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?37307:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,d,16608,553)|0}g=v[c+504>>2];l=(g<<2)+b|0;e=v[c+500>>2];if((g|0)>0){d=e;f=b;while(1){v[f>>2]=v[d>>2];d=d+4|0;f=f+4|0;if(l>>>0>f>>>0){continue}break}}v[l>>2]=v[k+12>>2];if(!(!e|v[c+508>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);g=v[c+504>>2]}v[c+508>>2]=i;v[c+500>>2]=b;v[c+504>>2]=g+1;b=v[c+180>>2];break b}v[v[c+500>>2]+(e<<2)>>2]=d;v[c+504>>2]=e+1}f=b;b=h<<2;v[f+b>>2]=-1;v[b+v[v[c+192>>2]+4>>2]>>2]=0;b=v[c+196>>2]+(h<<3)|0;v[b>>2]=0;v[b+4>>2]=-1;t[c+365|0]=1;v[c+368>>2]=v[c+368>>2]-1;xa=k+16|0;RH(v[a+2376>>2],v[j+12>>2]);xa=j+16|0}function YW(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);g=xa-48|0;xa=g;i=z[b+20>>2];k=z[b+16>>2];r=z[b+24>>2];j=z[b>>2];l=C(j+j);m=z[b+8>>2];s=z[b+4>>2];n=z[b+12>>2];o=C(n+n);p=z[a+8>>2];q=C(C(C(l*m)-C(s*o))*p);z[g+36>>2]=r-q;m=C(p*C(C(m*o)+C(l*s)));z[g+32>>2]=i-m;z[g+24>>2]=q+r;z[g+20>>2]=i+m;i=C(p*C(C(j*l)+C(C(n*o)+C(-1))));z[g+28>>2]=k-i;z[g+16>>2]=k+i;i=z[a+4>>2];z[g+40>>2]=i;b=0;v[g+12>>2]=0;a:{if(!ZW(c,d,g+16|0,g+28|0,i,g+12|0)){break a}i=z[g+12>>2];if(i>2];k=z[d>>2];o=z[c+4>>2];j=z[d+4>>2];n=z[c+8>>2];l=z[d+8>>2];z[h+40>>2]=i;v[h+44>>2]=0;v[h+48>>2]=0;v[h+8>>2]=-1;n=C(n+C(i*l));z[h+24>>2]=n;o=C(o+C(i*j));z[h+20>>2]=o;p=C(e+C(i*k));z[h+16>>2]=p;b:{if(w[f|0]&2){e=C(0);if(i==C(0)){z[h+36>>2]=-l;z[h+32>>2]=-j;z[h+28>>2]=-k;b=3;break b}l=z[g+24>>2];i=C(z[g+36>>2]-l);r=z[g+16>>2];k=C(z[g+28>>2]-r);m=z[g+20>>2];j=C(z[g+32>>2]-m);s=C(C(C(n-l)*i)+C(C(C(p-r)*k)+C(j*C(o-m))));c:{if(s<=C(0)){break c}e=C(1);q=C(C(i*i)+C(C(k*k)+C(j*j)));if(q<=s){break c}e=C(s/q)}i=C(n-C(l+C(i*e)));z[h+36>>2]=i;j=C(o-C(m+C(j*e)));z[h+32>>2]=j;e=C(p-C(r+C(k*e)));z[h+28>>2]=e;b=3;k=C(K(C(C(i*i)+C(C(e*e)+C(j*j)))));if(!(k>C(0))){break b}q=i;i=C(C(1)/k);z[h+36>>2]=q*i;z[h+32>>2]=j*i;z[h+28>>2]=e*i;break b}v[h+28>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0;b=1}u[h+12>>1]=b;b=1}xa=g+48|0;return b|0}function fV(a,b,c,d,e){var f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);h=xa-48|0;xa=h;l=z[a+4>>2];n=C(l+l);j=z[a+8>>2];q=C(n*j);i=z[a>>2];f=C(i+i);o=z[a+12>>2];r=C(f*o);s=C(q-r);z[h+36>>2]=s;q=C(q+r);z[h+28>>2]=q;i=C(C(1)-C(i*f));m=C(l*n);r=C(i-m);z[h+40>>2]=r;g=i;k=C(j+j);i=C(j*k);t=C(g-i);z[h+24>>2]=t;g=C(f*j);n=C(n*o);j=C(g+n);z[h+32>>2]=j;p=C(f*l);o=C(k*o);l=C(p-o);z[h+20>>2]=l;f=C(g-n);z[h+16>>2]=f;n=C(p+o);z[h+12>>2]=n;o=C(C(C(1)-m)-i);z[h+8>>2]=o;if(v[c+8>>2]-1065353216|(v[c+4>>2]-1065353216|v[c>>2]-1065353216)){eV(h+8|0,c);i=z[h+44>>2];r=z[h+40>>2];s=z[h+36>>2];q=z[h+28>>2];t=z[h+24>>2];l=z[h+20>>2];f=z[h+16>>2];n=z[h+12>>2];o=z[h+8>>2];j=z[h+32>>2]}p=z[a+20>>2];u=z[a+24>>2];w=z[a+16>>2];m=z[b>>2];k=z[b+4>>2];g=z[b+8>>2];z[d+12>>2]=C(C(C(l*m)+C(j*k))+C(i*g))+C(0);z[d+8>>2]=u+C(C(C(f*m)+C(q*k))+C(r*g));z[d+4>>2]=p+C(C(C(n*m)+C(t*k))+C(s*g));z[d>>2]=w+C(C(C(o*m)+C(l*k))+C(j*g));m=z[b+12>>2];k=C(l*m);p=k>C(0)?k:C(-k);k=z[b+16>>2];g=C(j*k);p=C(p+(g>C(0)?g:C(-g)));g=i;i=z[b+20>>2];g=C(g*i);z[e+12>>2]=p+(g>C(0)?g:C(-g));f=C(f*m);g=f>C(0)?f:C(-f);f=C(q*k);g=C(g+(f>C(0)?f:C(-f)));f=C(r*i);z[e+8>>2]=g+(f>C(0)?f:C(-f));f=C(n*m);g=f>C(0)?f:C(-f);f=C(t*k);g=C(g+(f>C(0)?f:C(-f)));f=C(s*i);z[e+4>>2]=g+(f>C(0)?f:C(-f));f=C(o*m);l=C(l*k);j=C(j*i);z[e>>2]=C((f>C(0)?f:C(-f))+(l>C(0)?l:C(-l)))+(j>C(0)?j:C(-j));xa=h+48|0}function UN(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=v[a+44>>2];g=v[a+84>>2];f=h+g|0;b=v[a+48>>2]&2147483647;a:{if(f>>>0<=b>>>0){break a}c=b;b=b<<1;b=b>>>0>f>>>0?b:f;d=b>>>0>256?b:256;if(c>>>0>>0){uP(a+40|0,d)}if(d>>>0>(v[a+36>>2]&2147483647)>>>0){b:{if(!d){break b}c=d<<4;if(!c){break b}b=v[37696];e=b+12|0;e=(l=e,m=c,n=Ba[v[v[b>>2]+20>>2]](b)|0?27179:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}c=v[a+28>>2];b=v[a+32>>2];if((b|0)>0){i=(b<<4)+e|0;b=e;while(1){j=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=j;j=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=j;c=c+16|0;b=b+16|0;if(i>>>0>b>>>0){continue}break}c=v[a+28>>2]}if(!(!c|v[a+36>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+36>>2]=d;v[a+28>>2]=e}if(d>>>0<=(v[a+60>>2]&2147483647)>>>0){break a}VN(a+52|0,d)}v[a+44>>2]=f;v[a+56>>2]=f;v[a+32>>2]=f;H9(v[a+40>>2]+(h<<2)|0,v[a+80>>2],g<<2);H9(v[a+28>>2]+(h<<4)|0,v[a+68>>2],g<<4);H9(v[a+52>>2]+(h<<3)|0,v[a+92>>2],g<<3);c=v[a+84>>2];if(c){f=v[a+108>>2];g=v[f+456>>2];i=v[a+80>>2];e=0;while(1){d=v[i+(e<<2)>>2];v[d+68>>2]=v[a+24>>2]|e+h<<3;b=w[d+43|0];c:{if(!(b&64)){break c}t[d+43|0]=b&191;if(w[d+41|0]&8){break c}b=v[v[v[f+444>>2]>>2]+(v[d- -64>>2]<<2)>>2];if(!b){break c}while(1){v[g+(v[b+20>>2]<<2)>>2]=v[d+68>>2];b=v[b+16>>2];if(b){continue}break}c=v[a+84>>2]}e=e+1|0;if(c>>>0>e>>>0){continue}break}}v[a+84>>2]=0;v[a+96>>2]=0;v[a+72>>2]=0}function kP(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=C(0),t=C(0);f=v[v[a+2168>>2]+44>>2]+v[d>>2]|0;g=x[d+10>>1];o=f+(g>>>1&32752)|0;p=g&31;i=x[d+6>>1];if(!(!(p&e)|!i)){e=v[a+2368>>2];j=v[e+24>>2]&2147483647;k=v[e+20>>2];g=0;while(1){h=B(g,40)+o|0;e=x[h+28>>1];q=v[h+36>>2];l=v[h+32>>2];r=l>>>5|0;e=j>>>0<=r>>>0|!(v[k+(r<<2)>>2]>>>l&1)?e:e|1;l=q>>>5|0;u[h+28>>1]=l>>>0>=j>>>0|!(v[k+(l<<2)>>2]>>>q&1)?e:e|2;g=g+1|0;if((i|0)!=(g|0)){continue}break}}a=v[a+2372>>2];v[b>>2]=v[v[c+16>>2]+24>>2];v[b+4>>2]=v[v[c+16>>2]+28>>2];g=v[c+16>>2];h=v[g+16>>2];j=h>>>5|0;k=v[a+24>>2]&2147483647;a:{if(j>>>0>>0){e=1;if(v[v[a+20>>2]+(j<<2)>>2]>>>h&1){break a}}e=0}g=v[g+20>>2];h=g>>>5|0;e=h>>>0>=k>>>0|!(v[v[a+20>>2]+(h<<2)>>2]>>>g&1)?e:e|2;v[b+20>>2]=i;v[b+16>>2]=o;u[b+14>>1]=e;e=x[d+8>>1];if(!e){v[b+8>>2]=0;u[b+12>>1]=0;return}v[b+8>>2]=f+4;if(p&8){i=v[c+12>>2];a=v[v[c+8>>2]+44>>2];b:{if(w[a+9|0]){z[f+12>>2]=z[a+80>>2];z[f+16>>2]=z[a+84>>2];z[f+20>>2]=z[a+88>>2];m=z[a+100>>2];n=z[a+96>>2];s=z[a+104>>2];break b}v[f+20>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;s=C(0)}z[f+44>>2]=s;z[f+40>>2]=m;z[f+36>>2]=n;a=v[i+44>>2];c:{if(w[a+9|0]){z[f+24>>2]=z[a+80>>2];z[f+28>>2]=z[a+84>>2];z[f+32>>2]=z[a+88>>2];n=z[a+96>>2];t=z[a+104>>2];m=z[a+100>>2];break c}v[f+32>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;n=C(0);m=C(0)}z[f+56>>2]=t;z[f+52>>2]=m;z[f+48>>2]=n;u[d+10>>1]=x[d+10>>1]&65527}u[b+12>>1]=e-4}function rx(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=0,u=C(0),x=0,y=0,A=0,D=0;r=v[a+336>>2];if(r){d=z[a+352>>2];s=d>2];x=v[c+12>>2];y=v[c>>2];A=v[a+236>>2];D=v[a+332>>2];while(1){i=n<<5;a=v[(i+D|0)+16>>2];c=i+y|0;d=z[c+8>>2];e=z[c>>2];g=z[c+4>>2];f=C(K(C(C(d*d)+C(C(e*e)+C(g*g)))));if(f>C(0)){h=C(C(1)/f);d=C(d*h);g=C(g*h);e=C(e*h)}h=f>2]);k=C(-z[b>>2]);j=C(-z[b+8>>2])}f=C(C(1)/z[a+124>>2]);o=C(j*f);z[c+8>>2]=o;l=C(l*f);z[c+4>>2]=l;k=C(k*f);z[c>>2]=k;a=B(n,112)+A|0;j=z[a+104>>2];p=z[a+92>>2];m=z[a+80>>2];e=C(h*e);g=C(h*g);h=C(C(C(e*z[a+76>>2])+C(g*z[a+88>>2]))+C(d*z[a+100>>2]));q=C(C(C(e*z[a+72>>2])+C(g*z[a+84>>2]))+C(d*z[a+96>>2]));u=C(C(e*h)-C(q*g));z[c+24>>2]=u;j=C(C(C(e*m)+C(g*p))+C(d*j));p=C(C(d*q)-C(j*e));z[c+20>>2]=p;g=C(C(g*j)-C(h*d));z[c+16>>2]=g;if(t){i=i+t|0;d=z[i+24>>2];h=z[i+20>>2];e=z[i+16>>2];j=z[i>>2];m=z[i+4>>2];z[c+8>>2]=o-C(f*z[i+8>>2]);z[c+4>>2]=l-C(f*m);z[c>>2]=k-C(f*j);k=z[a+104>>2];l=z[a+92>>2];o=z[a+80>>2];j=z[a+100>>2];m=z[a+88>>2];q=z[a+76>>2];f=C(-h);z[c+16>>2]=g+C(C(C(z[a+84>>2]*f)-C(e*z[a+72>>2]))-C(d*z[a+96>>2]));z[c+20>>2]=p+C(C(C(m*f)-C(e*q))-C(d*j));z[c+24>>2]=u+C(C(C(l*f)-C(e*o))-C(d*k))}n=n+1|0;if((r|0)!=(n|0)){continue}break}}}function H8(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0);d=xa-80|0;xa=d;f=z[b>>2];a:{if((v[b>>2]&2139095040)==2139095040){break a}k=z[b+4>>2];if((v[b+4>>2]&2139095040)==2139095040){break a}j=z[b+8>>2];if(!(C(D(C(C(K(C(C(j*j)+C(C(f*f)+C(k*k)))))+C(-1))))>2]&2139095040)==2139095040){break a}e=xa-48|0;xa=e;k=C(1);g=z[b+8>>2];h=z[b>>2];i=z[b+4>>2];f=C(C(1)/C(K(C(C(g*g)+C(C(h*h)+C(i*i))))));j=C(z[b+12>>2]*f);z[e+44>>2]=j;g=C(g*f);z[e+40>>2]=g;i=C(i*f);z[e+36>>2]=i;f=C(h*f);z[e+32>>2]=f;b:{if((((f==C(0))+(i==C(0))|0)+(g==C(0))|0)==2){h=C(0);if(f>C(0)){break b}m=C(1);if(f>2]=0;v[e>>2]=1065353216;v[e+4>>2]=0;o9(e+16|0,e,e+32|0);k=z[e+28>>2];m=z[e+24>>2];n=z[e+16>>2];j=z[e+44>>2];g=z[e+40>>2];i=z[e+36>>2];f=z[e+32>>2];h=z[e+20>>2]}z[d+52>>2]=k;z[d+48>>2]=m;z[d+44>>2]=h;z[d+40>>2]=n;z[d+64>>2]=j*C(-g);z[d+60>>2]=j*C(-i);z[d+56>>2]=j*C(-f);xa=e+48|0;v[d+32>>2]=1;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;t[d+72|0]=11;v[d+76>>2]=c;b=Ba[v[v[a>>2]+96>>2]](a,d+32|0,d+76|0,1,1,d+72|0)|0;if(!b){break a}Ba[v[v[b>>2]+76>>2]](b,d);l=Ba[v[v[a>>2]+84>>2]](a,d+40|0)|0;if(l){Ba[v[v[l>>2]+84>>2]](l,b)|0}Ba[v[v[b>>2]>>2]](b)}xa=d+80|0;return l|0}function x5(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+80>>2];a:{if(!w[a+84|0]){break a}t[a+84|0]=0;v[b+460>>2]=0;v[b+452>>2]=0;v[b+456>>2]=0;a=0;b:{c:{d:{g=v[b+80>>2];switch(g|0){case 0:break c;case 1:break d;default:break b}}a=1;v[b+456>>2]=1;break b}c=1;v[b+452>>2]=1}e:{f:{g:{h=v[b+84>>2];switch(h|0){case 1:break f;case 0:break g;default:break e}}c=c|2;v[b+452>>2]=c;break e}a=a|2;v[b+456>>2]=a}h:{i:{j:{i=v[b+88>>2];switch(i|0){case 0:break j;case 1:break i;default:break h}}c=c|4;v[b+452>>2]=c;break h}a=a|4;v[b+456>>2]=a}k:{l:{m:{f=v[b+92>>2];switch(f|0){case 1:break l;case 0:break m;default:break k}}c=c|8;v[b+452>>2]=c;break k}a=a|8;v[b+456>>2]=a}n:{o:{p:{d=v[b+96>>2];switch(d|0){case 1:break o;case 0:break p;default:break n}}c=c|16;v[b+452>>2]=c;break n}a=a|16;v[b+456>>2]=a}q:{r:{s:{e=v[b+100>>2];switch(e|0){case 1:break r;case 0:break s;default:break q}}v[b+452>>2]=c|32;break q}v[b+456>>2]=a|32}a=0;if(!(!g|z[b+308>>2]==C(0)&z[b+304>>2]==C(0))){a=1;v[b+460>>2]=1}if(!(!h|z[b+324>>2]==C(0)&z[b+320>>2]==C(0))){a=a|2;v[b+460>>2]=a}if(!(!i|z[b+340>>2]==C(0)&z[b+336>>2]==C(0))){a=a|4;v[b+460>>2]=a}t:{if(!(!f|(!e|(z[b+384>>2]!=C(0)?!d:!d|z[b+388>>2]==C(0))))){a=a|32;break t}if(!(!f|z[b+368>>2]==C(0)&z[b+372>>2]==C(0))){a=a|16;v[b+460>>2]=a}u:{if(z[b+352>>2]==C(0)){if(z[b+356>>2]==C(0)){break a}if(d|e){break u}break a}if(!(d|e)){break a}}a=a|8}v[b+460>>2]=a}return b|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=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0;b=v[a+28>>2];f=v[v[b>>2]+11968>>2];if(f){g=v[b- -64>>2];while(1){b=vr(v[v[a+48>>2]+620>>2],72);h=v[a+32>>2];i=v[a+36>>2];e=v[a+28>>2];m=z[e+92>>2];n=z[a+44>>2];o=z[e+96>>2];c=v[a+48>>2];p=z[c+56>>2];e=v[e+80>>2];j=v[a+40>>2];k=v[c+632>>2];l=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=k;v[b+12>>2]=l;v[b+68>>2]=j;v[b+64>>2]=c;v[b+60>>2]=e;z[b+56>>2]=p;z[b+52>>2]=o;z[b+48>>2]=n;z[b+44>>2]=m;v[b+40>>2]=i;c=f-d|0;v[b+36>>2]=c>>>0<64?c:64;v[b+32>>2]=g+(d<<3);v[b+28>>2]=h;v[b>>2]=133388;c=v[a+20>>2];v[b+20>>2]=c;v[b+24>>2]=1;if(c){Ba[v[v[c>>2]+16>>2]](c);v[b+16>>2]=v[v[b+20>>2]+16>>2];c=v[b>>2]}else{c=133388}Ba[v[c+20>>2]](b);d=d- -64|0;if(f>>>0>d>>>0){continue}break}b=v[a+28>>2]}f=v[b+8>>2]&2147483647;if(f){d=0;while(1){b=vr(v[v[a+48>>2]+620>>2],64);e=v[a+40>>2];g=v[e+11936>>2];c=v[a+48>>2];h=v[c+496>>2];i=v[c+484>>2];j=v[a+36>>2];k=v[a+28>>2];l=v[c+632>>2];q=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=l;v[b+12>>2]=q;v[b+56>>2]=k;v[b+52>>2]=j;v[b+48>>2]=c;v[b+44>>2]=e;v[b+40>>2]=i;v[b+36>>2]=h;c=f-d|0;v[b+32>>2]=c>>>0<64?c:64;v[b>>2]=133444;v[b+28>>2]=g+(d<<2);c=v[a+20>>2];v[b+20>>2]=c;v[b+24>>2]=1;if(c){Ba[v[v[c>>2]+16>>2]](c);v[b+16>>2]=v[v[b+20>>2]+16>>2];c=v[b>>2]}else{c=133444}Ba[v[c+20>>2]](b);d=d- -64|0;if(f>>>0>d>>>0){continue}break}}}function _F(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;h=xa-16|0;xa=h;e=v[a+16>>2];a:{if(e>>>0>=b>>>0){break a}f=v[a+20>>2];d=((f+b|0)-1>>>0)/(f>>>0)|0;c=v[a+4>>2];k=d-c|0;v[a+16>>2]=e+B(f,k);if((d|0)==(c|0)){break a}while(1){d=0;e=v[a+20>>2]<<2;if(e){c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,16683,84)|0}v[h+12>>2]=d;c=v[a+4>>2];b:{if(c>>>0>=(v[a+8>>2]&2147483647)>>>0){d=0;c=v[a+8>>2];f=c&2147483647?c<<1:1;c:{if(!f){break c}e=f<<2;if(!e){break c}d=v[37696];c=d+12|0;d=(m=c,n=e,o=Ba[v[v[d>>2]+20>>2]](d)|0?55585:63804,p=16608,q=553,l=v[v[c>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}i=v[a+4>>2];e=(i<<2)+d|0;if((i|0)>0){j=v[a>>2];c=d;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[h+12>>2];d:{if(v[a+8>>2]<0){break d}e=v[a>>2];if(!e){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e);i=v[a+4>>2]}v[a+8>>2]=f;v[a>>2]=d;v[a+4>>2]=i+1;break b}v[v[a>>2]+(c<<2)>>2]=d;v[a+4>>2]=c+1}g=g+1|0;if((k|0)!=(g|0)){continue}break}}d=v[a+12>>2];e:{if(d>>>0>=b>>>0){break e}e=d^-1;f=v[a>>2];if(b-d&1){g=v[a+20>>2];c=(d>>>0)/(g>>>0)|0;v[v[f+(c<<2)>>2]+(d-B(c,g)<<2)>>2]=-128;d=d+1|0}if((e|0)==(0-b|0)){break e}while(1){g=v[a+20>>2];c=(d>>>0)/(g>>>0)|0;v[v[f+(c<<2)>>2]+(d-B(c,g)<<2)>>2]=-128;e=d+1|0;g=v[a+20>>2];c=(e>>>0)/(g>>>0)|0;v[v[f+(c<<2)>>2]+(e-B(c,g)<<2)>>2]=-128;d=d+2|0;if((d|0)!=(b|0)){continue}break}}v[a+12>>2]=b;xa=h+16|0}function q9(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=0,m=0,n=C(0),o=0,p=C(0),q=0;c=z[b+20>>2];d=z[b+16>>2];f=z[b+32>>2];g=z[b+28>>2];i=z[b+12>>2];j=z[b+24>>2];e=z[b+8>>2];n=C(e*e);e=z[b>>2];p=C(e*e);e=z[b+4>>2];e=C(n+C(p+C(e*e)));z[a>>2]=e;f=C(C(f*f)+C(C(j*j)+C(g*g)));z[a+8>>2]=f;c=C(C(c*c)+C(C(i*i)+C(d*d)));z[a+4>>2]=c;l=c>e;h=!l;o=f>z[(h<<2)+a>>2]?2:h;h=z[(l<<2)+a>>2]>2];m=h?o:l;k=B(m,12)+b|0;m=(m<<2)+a|0;i=z[m>>2];c=C(C(1)/C(K(i)));d=C(z[k>>2]*c);z[k>>2]=d;f=C(c*z[k+4>>2]);z[k+4>>2]=f;g=C(c*z[k+8>>2]);z[k+8>>2]=g;q=m;p=C(i*c);m=h?l:o;h=B(m,12)+b|0;j=z[h+8>>2];e=z[h>>2];n=z[h+4>>2];c=C(C(g*j)+C(C(d*e)+C(f*n)));l=(l?2:3)-o|0;b=B(l,12)+b|0;i=C(C(g*z[b+8>>2])+C(C(d*z[b>>2])+C(f*z[b+4>>2])));z[q>>2]=p+C(C(D(c))+C(D(i)));z[h+8>>2]=j-C(g*c);z[h+4>>2]=n-C(f*c);z[h>>2]=e-C(d*c);c=z[k+8>>2];d=z[k+4>>2];g=C(z[b>>2]-C(i*z[k>>2]));z[b>>2]=g;j=C(z[b+4>>2]-C(i*d));z[b+4>>2]=j;i=C(z[b+8>>2]-C(i*c));z[b+8>>2]=i;c=z[h+8>>2];d=z[h>>2];f=z[h+4>>2];e=C(K(C(C(c*c)+C(C(d*d)+C(f*f)))));if(e>C(0)){g=C(C(1)/e);d=C(d*g);z[h>>2]=d;f=C(f*g);z[h+4>>2]=f;c=C(c*g);z[h+8>>2]=c;i=z[b+8>>2];j=z[b+4>>2];g=z[b>>2]}n=e;e=C(C(c*i)+C(C(d*g)+C(f*j)));z[(m<<2)+a>>2]=n+C(D(e));d=C(g-C(d*e));z[b>>2]=d;f=C(j-C(f*e));z[b+4>>2]=f;c=C(i-C(c*e));z[b+8>>2]=c;g=C(K(C(C(c*c)+C(C(d*d)+C(f*f)))));if(g>C(0)){e=d;d=C(C(1)/g);z[b>>2]=e*d;z[b+4>>2]=f*d;z[b+8>>2]=c*d}z[(l<<2)+a>>2]=g}function cA(a,b,c,d,e,f,g,h,i,j,k){var l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);v[j+72>>2]=h;r=z[e>>2];m=C(r+r);l=z[e+8>>2];s=C(m*l);w=z[e+4>>2];t=C(w+w);n=z[e+12>>2];E=C(t*n);D=C(s-E);o=z[d+8>>2];o=o==C(0)?C(0):C(K(o));y=C(C(1)-C(r*m));F=C(w*t);r=C(y-F);p=z[d>>2];p=p==C(0)?C(0):C(K(p));x=C(t*l);A=C(m*n);t=C(x+A);q=z[d+4>>2];q=q==C(0)?C(0):C(K(q));z[j- -64>>2]=C(C(o*r)*r)+C(C(C(p*D)*D)+C(t*C(t*q)));G=C(m*w);B=n;n=C(l+l);H=C(B*n);m=C(G+H);w=C(p*m);I=C(l*n);n=C(y-I);y=C(q*n);x=C(x-A);A=C(o*x);z[j+48>>2]=C(A*x)+C(C(w*m)+C(n*y));B=q;q=C(G-H);l=C(B*q);s=C(s+E);o=C(o*s);B=C(o*s);s=C(C(C(1)-F)-I);p=C(p*s);z[j+32>>2]=B+C(C(p*s)+C(q*l));m=C(C(o*x)+C(C(p*m)+C(n*l)));z[j+44>>2]=m;z[j+36>>2]=m;l=C(C(o*r)+C(C(p*D)+C(t*l)));z[j+56>>2]=l;z[j+40>>2]=l;l=C(C(A*r)+C(C(w*D)+C(t*y)));z[j+60>>2]=l;z[j+52>>2]=l;z[j>>2]=z[a>>2];z[j+4>>2]=z[a+4>>2];z[j+8>>2]=z[a+8>>2];z[j+16>>2]=z[b>>2];z[j+20>>2]=z[b+4>>2];z[j+24>>2]=z[b+8>>2];a:{if(!k){break a}if(k&1){v[j>>2]=0}if(k&2){v[j+4>>2]=0}if(k&4){v[j+8>>2]=0}if(k&8){v[j+16>>2]=0}if(k&16){v[j+20>>2]=0}if(!(k&32)){break a}v[j+24>>2]=0}z[j+76>>2]=g;z[j+68>>2]=f;z[j+12>>2]=c;z[j+80>>2]=z[e>>2];z[j+84>>2]=z[e+4>>2];z[j+88>>2]=z[e+8>>2];z[j+92>>2]=z[e+12>>2];z[j+96>>2]=z[e+16>>2];z[j+100>>2]=z[e+20>>2];c=z[e+24>>2];u[j+108>>1]=k;z[j+104>>2]=c;z[j+28>>2]=i}function Jz(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,u=0,y=0;e=v[v[a+32>>2]>>2];c=e+12168|0;v[c>>2]=v[c>>2]+v[e+12092>>2];p=v[e+12004>>2];if(p){q=v[a+96>>2];u=v[e+12e3>>2];while(1){c=B(n,36)+u|0;b=v[c+12>>2];v[b>>2]=v[c+16>>2];v[b+4>>2]=v[c+20>>2];r=w[b+12|0];t[b+12|0]=w[c+24|0];t[b+13|0]=w[c+25|0];t[b+14|0]=w[c+26|0];s=v[b+8>>2];v[b+8>>2]=v[c+28>>2];f=x[c+4>>1];a:{if(f>>>0<2){break a}b=1;j=f-1|0;o=j&1;d=v[c+8>>2];g=v[e+12012>>2];h=v[c>>2];if((f|0)!=2){j=j&-2;f=0;while(1){i=g+(b+h<<2)|0;k=v[v[i>>2]+12>>2];v[k+36>>2]=v[d+20>>2];t[k+42|0]=w[d+26|0];i=v[v[i+4>>2]+12>>2];v[i+36>>2]=v[d+20>>2];t[i+42|0]=w[d+26|0];b=b+2|0;f=f+2|0;if((j|0)!=(f|0)){continue}break}}if(!o){break a}b=v[v[g+(b+h<<2)>>2]+12>>2];v[b+36>>2]=v[d+20>>2];t[b+42|0]=w[d+26|0]}if(!(!s|!r)){j=v[c+32>>2];o=v[q+32>>2];i=v[e+12012>>2];f=v[c>>2];c=0;b=0;d=0;while(1){g=x[j+(c<<1)>>1];while(1){h=v[v[v[i+(f<<2)>>2]+12>>2]+68>>2];k=o+(v[((h&7)<<2)+q>>2]+(h>>>3|0)<<4)|0;h=w[k+12|0];b:{while(1){l=d>>>0>>0;if(!(h?l:1)){break b}y=d;d=g-d|0;l=(l?h:0)&255;m=l-b|0;m=d>>>0>>0?d:m;d=y+m|0;b=b+m|0;if((l|0)!=(b|0)){continue}break}f=f+1|0;b=0;continue}break}g=v[k+8>>2];if(g){z[g+(b<<2)>>2]=z[(c<<2)+s>>2]}c=c+1|0;if((r|0)!=(c|0)){continue}break}}n=n+1|0;if((p|0)!=(n|0)){continue}break}}v[e+12004>>2]=0;Ly(v[e+11848>>2],e+11836|0);a=v[v[a+28>>2]+336>>2];v[e>>2]=v[a>>2];v[a>>2]=e}function tU(a,b,c,d){var e=0,f=0,g=C(0),h=0,i=0,j=0,k=C(0),l=C(0),m=C(0);e=xa-48|0;xa=e;i=A[a+440>>3];j=A[a+432>>3];z[e+32>>2]=A[a+448>>3];z[e+28>>2]=i;z[e+24>>2]=j;z[e+8>>2]=z[a+12>>2];z[e+12>>2]=z[a+16>>2];z[e+16>>2]=z[a+20>>2];z[e+20>>2]=z[a+24>>2];f=Ba[v[v[b>>2]+88>>2]](b,e+8|0)|0;v[a+424>>2]=f;if(f){t[e+40|0]=11;v[e+44>>2]=d;b=Ba[v[v[b>>2]+96>>2]](b,c,e+44|0,1,1,e+40|0)|0;c=v[a+424>>2];Ba[v[v[c>>2]+84>>2]](c,b)|0;Ba[v[v[b>>2]>>2]](b);b=v[a+424>>2];Ba[v[v[b>>2]+208>>2]](b,1,1);b=v[a+424>>2];d=xa-16|0;xa=d;z[d+12>>2]=z[a+504>>2];c=xa-128|0;xa=c;v[c+124>>2]=1065353216;v[c+120>>2]=1065353216;v[c+112>>2]=1065353216;v[c+116>>2]=1065353216;v[c+104>>2]=0;v[c+108>>2]=1065353216;v[c+96>>2]=0;v[c+100>>2]=0;v[c+80>>2]=0;z[c+88>>2]=0;z[c+84>>2]=0;f=d+12|0;a:{if(f){h=c+24|0;y8(h,1);b:{c:{if(A8(b,f,0,h)){if(z[c+72>>2]==C(0)){break c}B8(c+24|0,c+112|0,c+96|0,c+124|0,c+80|0,b,24738);k=z[c+88>>2];l=z[c+84>>2];m=z[c+80>>2];g=z[c+124>>2];break b}f=v[37696];v[c>>2]=24738;a9(f,4,6223,280,70878,c)}g=C(1)}break a}f=v[37696];v[c+16>>2]=24738;a9(f,4,6223,288,70960,c+16|0);g=C(1)}Ba[v[v[b>>2]+116>>2]](b,g);Ba[v[v[b>>2]+128>>2]](b,c+112|0);z[c+48>>2]=k;z[c+44>>2]=l;f=v[c+100>>2];v[c+24>>2]=v[c+96>>2];v[c+28>>2]=f;z[c+40>>2]=m;f=v[c+108>>2];v[c+32>>2]=v[c+104>>2];v[c+36>>2]=f;Ba[v[v[b>>2]+108>>2]](b,c+24|0);xa=c+128|0;xa=d+16|0;b=v[a+480>>2];Ba[v[v[b>>2]+44>>2]](b,v[a+424>>2],0)}xa=e+48|0}function DF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=v[a+448>>2];c=v[f>>2];d=b<<1;e=d|1;b=v[f+20>>2];f=(e>>>0)/(b>>>0)|0;f=v[v[c+(f<<2)>>2]+(e-B(b,f)<<2)>>2];e=(d>>>0)/(b>>>0)|0;h=v[v[c+(e<<2)>>2]+(d-B(b,e)<<2)>>2];b=h>>>7|0;a:{if((b|0)==33554431){break a}c=v[a+16>>2];d=v[a+192>>2]+(b<<2)|0;if((f^v[d>>2])>>>0<=127){v[d>>2]=-128}g=c+B(b,24)|0;c=w[g+4|0];if(c&16){break a}e=b+32>>>5|0;b:{if(e>>>0<=(v[a+312>>2]&2147483647)>>>0){d=v[a+308>>2];break b}c=v[37696]+12|0;d=Ba[v[v[c>>2]+8>>2]](c,e<<2,24422,17999,438)|0;c=v[a+308>>2];c:{if(!c){break c}H9(d,c,v[a+312>>2]<<2);if(v[a+312>>2]<0){break c}c=v[a+308>>2];if(!c){break c}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,c)}c=v[a+312>>2];I9((c<<2)+d|0,0,e-c<<2);v[a+312>>2]=e;v[a+308>>2]=d;c=w[g+4|0]}d=(h>>>10&4194300)+d|0;v[d>>2]=v[d>>2]|1<>>7|0;d:{if((d|0)==33554431){break d}c=v[a+16>>2];e=v[a+192>>2]+(d<<2)|0;if((b|0)==(v[e>>2]>>>7|0)){v[e>>2]=-128}g=c+B(d,24)|0;b=w[g+4|0];if(b&16){break d}e=d+32>>>5|0;e:{if(e>>>0<=(v[a+312>>2]&2147483647)>>>0){c=v[a+308>>2];break e}b=v[37696]+12|0;c=Ba[v[v[b>>2]+8>>2]](b,e<<2,24422,17999,438)|0;b=v[a+308>>2];f:{if(!b){break f}H9(c,b,v[a+312>>2]<<2);if(v[a+312>>2]<0){break f}b=v[a+308>>2];if(!b){break f}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,b)}b=v[a+312>>2];I9((b<<2)+c|0,0,e-b<<2);v[a+312>>2]=e;v[a+308>>2]=c;b=w[g+4|0]}a=(f>>>10&4194300)+c|0;v[a>>2]=v[a>>2]|1<>2];g=xa-48|0;xa=g;b=v[a+28>>2];a=b+3940|0;c=b+3320|0;v[a>>2]=c;v[b+3944>>2]=1;Ba[v[v[b+3320>>2]+16>>2]](c);c=b+3936|0;v[c>>2]=v[v[a>>2]+16>>2];v[b+3904>>2]=1;d=b+3900|0;a=b+3920|0;v[d>>2]=a;Ba[v[v[b+3920>>2]+16>>2]](a);e=b+3896|0;v[e>>2]=v[v[d>>2]+16>>2];c=v[c>>2];Ba[v[v[c>>2]+72>>2]](c,a);a=v[e>>2];Ba[v[v[a>>2]+72>>2]](a,b+3880|0);c=xa-16|0;xa=c;d=v[b+976>>2];v[c+4>>2]=0;if(c+12|0){v[c+12>>2]=v[d+1e3>>2]}a=c+8|0;if(a){v[a>>2]=v[d+996>>2]}v[b+2460>>2]=0;a=v[c+12>>2];if(a>>>0>(v[b+2464>>2]&2147483647)>>>0){yP(b+2456|0,a);a=v[c+12>>2]}v[b+2460>>2]=a;v[b+2472>>2]=0;a=v[c+8>>2];if(a>>>0>(v[b+2476>>2]&2147483647)>>>0){yP(b+2468|0,a);a=v[c+8>>2]}v[b+2472>>2]=a;zK(d,v[b+2456>>2],c+12|0,v[b+2468>>2],c+8|0,0,c+4|0);a=v[c+12>>2];v[b+2460>>2]=a;e=v[c+8>>2];v[b+2472>>2]=e;v[d+1804>>2]=e;v[d+1800>>2]=a;xa=c+16|0;v[b+3860>>2]=f;v[b+3864>>2]=1;a=b+3840|0;a:{if(!f){d=v[b+3856>>2];break a}Ba[v[v[f>>2]+16>>2]](f);d=v[v[b+3860>>2]+16>>2];v[b+3856>>2]=d}Ba[v[v[d>>2]+72>>2]](d,a);a=v[v[b+976>>2]+1024>>2];Ba[v[v[a>>2]+84>>2]](g+8|0,a);c=v[b+2460>>2];if(c){f=(v[b+2360>>2]&8)!=0;a=c;while(1){d=c-h|0;if(d>>>0<256?d:256){e=a>>>0<256?a:256;d=0;while(1){i=v[(v[b+2456>>2]+(d+h<<3)|0)+4>>2];uJ(v[b+2168>>2],i);SR(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}}xa=g+48|0}function Ou(a){var b=0,c=0;c=v[a+268>>2];a:{if(!(c&4194304)){z[a+236>>2]=z[a+96>>2];b=v[a+104>>2];v[a+240>>2]=v[a+100>>2];v[a+244>>2]=b;break a}BG(a+16|0,a+236|0);c=c&-4194305}b:{if(!(c&8388608)){z[a+248>>2]=z[a+112>>2];b=v[a+120>>2];v[a+252>>2]=v[a+116>>2];v[a+256>>2]=b;break b}CG(a+16|0,a+248|0);c=c&-8388609}if(!(!(c&32768)|!(t[a+60|0]&1))){b=v[a+8>>2];if(!b){b=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}ZG(a+16|0,v[v[a>>2]+2428>>2],b+192|0,z[a+260>>2]);c=c&-32769}if(c&402653184){HG(a+16|0,(c&134217728)>>>27|0,(c&268435456)>>>28|0);c=c&-402653185}if(c&196608){b=v[a+8>>2];if(!b){b=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}EG(a+16|0,v[v[a>>2]+2428>>2],b+220|0,b+232|0);v[b+236>>2]=0;v[b+240>>2]=0;v[b+228>>2]=0;v[b+232>>2]=0;v[b+220>>2]=0;v[b+224>>2]=0;c=c&-196609}if(c&1610612736){JG(a+16|0,(c&536870912)>>>29|0,(c&1073741824)>>>30|0);c=c&-1610612737}if(c&786432){b=v[a+8>>2];if(!b){b=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}IG(a+16|0,v[v[a>>2]+2428>>2],b+244|0,b+256|0);v[b+260>>2]=0;v[b+264>>2]=0;v[b+252>>2]=0;v[b+256>>2]=0;v[b+244>>2]=0;v[b+248>>2]=0;c=c&-786433}if(!(c&16777216)){z[a+260>>2]=z[a+172>>2];v[a+268>>2]=c;return}if(!(c&100663296)){UG(a+16|0,z[a+260>>2],0);v[a+268>>2]=c&-16777217;return}c:{if(!(c&67108864)){break c}b=v[a+8>>2];if(!b){b=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}if((w[a+60|0]^w[b+268|0])&1?c&16384:0){break c}UG(a+16|0,z[a+260>>2],1);c=c&-83886081}v[a+268>>2]=c}function $U(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0);c=xa-128|0;xa=c;j=z[b+20>>2];h=z[b+8>>2];i=C(j-h);p=z[b+12>>2];k=z[b>>2];f=C(p-k);o=z[b+16>>2];q=z[b+4>>2];g=C(o-q);e=C(K(C(C(i*i)+C(C(f*f)+C(g*g)))));if(e>C(0)){e=C(C(1)/e);i=C(i*e);g=C(g*e);f=C(f*e)}l=C(D(f))C(0)){d=C(C(1)/d);e=C(e*d);n=C(n*d);m=C(m*d)}d=z[b+24>>2];v[a+32>>2]=0;v[a>>2]=1;z[c+120>>2]=h;z[c+116>>2]=q;z[c+112>>2]=k;l=ZU(a,c+112|0);z[c+96>>2]=z[b+12>>2];z[c+100>>2]=z[b+16>>2];z[c+104>>2]=z[b+20>>2];l=ZU(l,c+96|0);v[l>>2]=4;v[a+32>>2]=0;z[c+80>>2]=z[b+12>>2];z[c+84>>2]=z[b+16>>2];z[c+88>>2]=z[b+20>>2];a=ZU(l,c+80|0);h=C(d*C(.25));k=C(e*h);q=C(j-C(i*d));t=C(k+C(k+q));z[c+72>>2]=t;j=C(n*h);u=C(o-C(g*d));w=C(j+C(j+u));z[c+68>>2]=w;o=C(m*h);p=C(p-C(f*d));x=C(o+C(o+p));z[c+64>>2]=x;a=ZU(a,c- -64|0);k=C(q-k);d=C(h*C(1.7320507764816284));h=C(C(C(f*n)+C(m*r))*d);z[c+56>>2]=k-h;j=C(u-j);f=C(C(C(i*m)-C(e*f))*d);z[c+52>>2]=j-f;i=C(p-o);g=C(C(C(g*e)+C(n*s))*d);z[c+48>>2]=i-g;a=ZU(a,c+48|0);z[c+40>>2]=k+h;z[c+36>>2]=j+f;z[c+32>>2]=i+g;a=ZU(a,c+32|0);z[c+16>>2]=z[b+12>>2];z[c+20>>2]=z[b+16>>2];z[c+24>>2]=z[b+20>>2];a=ZU(a,c+16|0);z[c+8>>2]=t;z[c+4>>2]=w;z[c>>2]=x;a=ZU(a,c);xa=c+128|0;return a}function Z1(a,b,c){var d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=0,j=C(0),k=0,l=0,m=C(0),n=0,o=C(0),p=C(0),q=0,r=C(0);b=v[b+36>>2];d=z[c+8>>2];f=z[c>>2];e=z[c+4>>2];h=C(C(z[b+40>>2]*d)+C(C(z[b+32>>2]*f)+C(e*z[b+36>>2])));i=v[a+24>>2];j=C(C(z[b+8>>2]*d)+C(C(z[b>>2]*f)+C(e*z[b+4>>2])));f=C(C(z[b+24>>2]*d)+C(C(z[b+16>>2]*f)+C(e*z[b+20>>2])));d=C(C(h*z[i+8>>2])+C(C(j*z[i>>2])+C(f*z[i+4>>2])));b=v[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=B(c,20)+i|0;e=C(C(h*z[b+28>>2])+C(C(j*z[b+20>>2])+C(f*z[b+24>>2])));m=C(C(h*z[b+8>>2])+C(C(j*z[b>>2])+C(f*z[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=B(c,20)+i|0;e=C(C(h*z[b+8>>2])+C(C(j*z[b>>2])+C(f*z[b+4>>2])));b=e>2];c:{if(!n){break c}j=C(-j);h=C(-h);f=C(-f);c=v[a+36>>2];d=C(d*d);b=0;a=-1;while(1){l=c+(b<<1)|0;k=B(w[l|0],20)+i|0;l=B(w[l+1|0],20)+i|0;e=C(z[k+8>>2]+z[l+8>>2]);m=C(z[k>>2]+z[l>>2]);o=C(z[k+4>>2]+z[l+4>>2]);p=C(C(e*h)+C(C(m*j)+C(o*f)));r=C(p*p);e=C(C(e*e)+C(C(m*m)+C(o*o)));k=!(p>=C(0))|!(C(d*e)>2]*h)+C(C(z[b>>2]*j)+C(z[b+4>>2]*f)))>C(C(z[a+8>>2]*h)+C(C(z[a>>2]*j)+C(z[a+4>>2]*f)))?g:c}return g}function qD(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(!v[a+164>>2]){break c}k=v[a+140>>2];i=v[c>>2];h=i;g=h;j=v[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=Raa(c^((f&255)<<24|c>>>8),f^f>>>8,9,0);h=Aa;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=v[((v[a+148>>2]-1&(c^((f&2147483647)<<1|c>>>31)))<<2)+k>>2];if((c|0)==-1){break c}h=v[a+136>>2];g=v[a+132>>2];while(1){f=g+B(c,20)|0;if(v[f>>2]==(i|0)&v[f+4>>2]==(j|0)){break b}c=v[(c<<2)+h>>2];if((c|0)!=-1){continue}break}}if(!e){break a}f=xa-32|0;xa=f;v[f+20>>2]=d;v[f+24>>2]=b;v[f+8>>2]=0;v[f+12>>2]=0;e=a+4|0;a=bD((B(v[e>>2],48)+e|0)+16|0,f+20|0,f+8|0);b=v[e+4>>2];d=a?v[e>>2]:b;d:{if((b|0)==(d|0)){if(!bD((e+B(b,48)|0)+16|0,f+20|0,f+8|0)){break d}}b=v[f+12>>2];c=aD((e+B(d,48)|0)+16|0,f+24|0,f+31|0);if(!w[f+31|0]){a=v[f+24>>2];v[c+4>>2]=0;v[c>>2]=a}v[c+4>>2]=b;SC(v[f+12>>2],v[f+20>>2],v[f+24>>2])}xa=f+32|0;return}e=v[a+200>>2];a=g+B(c,20)|0;c=v[e+(v[a+16>>2]<<3)>>2];a=v[(v[c+8>>2]+B(v[a+12>>2],28)|0)+24>>2];f=a>>>1&15;if(!f){break a}e=v[c>>2]+(a>>>3&536870908)|0;c=0;while(1){a=e+(c<<2)|0;if(v[a>>2]!=(d|0)){c=c+1|0;if((f|0)!=(c|0)){continue}break a}break}v[a>>2]=b}}function Tv(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);d=z[c+8>>2];g=z[c>>2];i=z[c+12>>2];k=z[c+4>>2];e=C(C(1)/z[b+124>>2]);z[a+40>>2]=e;z[a+20>>2]=e;z[a>>2]=e;f=z[b+120>>2];l=z[b+116>>2];t=z[b+112>>2];v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;h=C(g+g);m=C(C(1)-C(g*h));j=C(k+k);u=C(k*j);g=C(m-u);y=C(h*d);D=C(j*i);e=C(y-D);q=C(e*C(0));n=C(j*d);w=C(h*i);j=C(n+w);r=C(j*C(0));o=C(C(1)/f);s=C(C(q+r)+C(g*o));f=C(g*C(0));p=r;r=C(C(1)/t);A=C(f+C(p+C(e*r)));p=q;q=C(C(1)/l);B=C(f+C(p+C(j*q)));f=C(C(g*s)+C(C(e*A)+C(j*B)));z[a+136>>2]=C(f+f)*C(.5);f=C(h*k);p=i;i=C(d+d);l=C(p*i);k=C(f+l);h=C(k*C(0));x=C(d*i);d=C(m-x);m=C(d*C(0));i=C(n-w);t=C(C(h+m)+C(i*o));n=C(i*C(0));m=C(n+C(m+C(k*r)));n=C(n+C(h+C(d*q)));w=C(C(C(C(i*s)+C(C(k*A)+C(d*B)))+C(C(g*t)+C(C(e*m)+C(j*n))))*C(.5));z[a+132>>2]=w;h=C(C(C(1)-u)-x);u=C(h*C(0));f=C(f-l);x=C(f*C(0));l=C(y+D);o=C(C(u+x)+C(l*o));y=C(g*o);p=e;e=C(l*C(0));g=C(e+C(x+C(h*r)));e=C(e+C(u+C(f*q)));j=C(C(C(C(l*s)+C(C(h*A)+C(f*B)))+C(y+C(C(p*g)+C(j*e))))*C(.5));z[a+128>>2]=j;z[a+120>>2]=w;s=C(C(i*t)+C(C(k*m)+C(d*n)));z[a+116>>2]=C(s+s)*C(.5);d=C(C(C(C(l*t)+C(C(h*m)+C(f*n)))+C(C(i*o)+C(C(k*g)+C(d*e))))*C(.5));z[a+112>>2]=d;z[a+104>>2]=j;z[a+100>>2]=d;d=C(C(l*o)+C(C(h*g)+C(f*e)));z[a+96>>2]=C(d+d)*C(.5)}function v_(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=0,g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=0,n=0,o=C(0),p=C(0),q=0;h=v[a+24>>2];d=z[c>>2];g=z[c+4>>2];e=z[c+8>>2];k=C(C(C(d*z[b+8>>2])+C(g*z[b+20>>2]))+C(e*z[b+32>>2]));l=C(C(C(d*z[b>>2])+C(g*z[b+12>>2]))+C(e*z[b+24>>2]));g=C(C(C(d*z[b+4>>2])+C(g*z[b+16>>2]))+C(e*z[b+28>>2]));d=C(C(z[h+8>>2]*k)+C(C(z[h>>2]*l)+C(g*z[h+4>>2])));b=v[a+16>>2];a:{if(b>>>0<2){break a}c=1;f=b-1|0;j=f&1;b:{if((b|0)==2){f=0;break b}n=f&-2;f=0;while(1){b=B(c,20)+h|0;e=C(C(z[b+28>>2]*k)+C(C(z[b+20>>2]*l)+C(g*z[b+24>>2])));i=C(C(z[b+8>>2]*k)+C(C(z[b>>2]*l)+C(g*z[b+4>>2])));b=i>d;d=b?i:d;m=d>2]*k)+C(C(z[b>>2]*l)+C(g*z[b+4>>2])));b=e>d;d=b?e:d;f=b?c:f}n=v[a+20>>2];c:{if(!n){break c}c=v[a+36>>2];d=C(d*d);b=0;a=-1;while(1){j=c+(b<<1)|0;m=B(w[j|0],20)+h|0;j=B(w[j+1|0],20)+h|0;e=C(z[m+8>>2]+z[j+8>>2]);i=C(z[m>>2]+z[j>>2]);o=C(z[m+4>>2]+z[j+4>>2]);p=C(C(e*k)+C(C(i*l)+C(g*o)));d:{if(!(p>=C(0))){break d}e=C(C(e*e)+C(C(i*i)+C(o*o)));i=C(p*p);if(!(C(d*e)>2]*k)+C(C(z[b>>2]*l)+C(g*z[b+4>>2])))>C(C(z[a+8>>2]*k)+C(C(z[a>>2]*l)+C(g*z[a+4>>2])))?f:c}return f|0}function UV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0);c=xa-176|0;xa=c;k=z[f+4>>2];h=C(k+k);j=z[f+8>>2];m=C(h*j);g=z[f>>2];l=C(g+g);i=z[f+12>>2];n=C(l*i);z[c+44>>2]=m-n;z[c+36>>2]=m+n;g=C(C(1)-C(g*l));m=C(k*h);z[c+48>>2]=g-m;o=g;g=C(j+j);n=C(j*g);z[c+32>>2]=o-n;j=C(l*j);h=C(h*i);z[c+40>>2]=j+h;k=C(l*k);l=C(g*i);z[c+28>>2]=k-l;z[c+24>>2]=j-h;z[c+20>>2]=k+l;z[c+16>>2]=C(C(1)-m)-n;z[c+52>>2]=z[f+16>>2];z[c+56>>2]=z[f+20>>2];z[c+60>>2]=z[f+24>>2];z[c+64>>2]=z[e+4>>2];z[c+68>>2]=z[e+8>>2];z[c+72>>2]=z[e+12>>2];AV(c,d);EV(c+80|0,c+52|0,c- -64|0,c+16|0,c+28|0,c+40|0);j=z[c+8>>2];k=z[c>>2];l=z[c+4>>2];h=z[c+12>>2];g=C(C(C(z[c+88>>2]*j)+C(C(z[c+80>>2]*k)+C(z[c+84>>2]*l)))+h);i=C(h+C(C(z[c+100>>2]*j)+C(C(z[c+92>>2]*k)+C(l*z[c+96>>2]))));g=g>2]*j)+C(C(z[c+104>>2]*k)+C(l*z[c+108>>2]))));g=g>2]*j)+C(C(z[c+116>>2]*k)+C(l*z[c+120>>2]))));g=g>2]*j)+C(C(z[c+128>>2]*k)+C(l*z[c+132>>2]))));g=g>2]*j)+C(C(z[c+140>>2]*k)+C(l*z[c+144>>2]))));g=g>2]*j)+C(C(z[c+152>>2]*k)+C(l*z[c+156>>2]))));g=g>2]*j)+C(C(z[c+164>>2]*k)+C(l*z[c+168>>2]))));h=gC(0);if(!d){z[a+8>>2]=-j;z[a+4>>2]=-l;z[a>>2]=-k;z[b>>2]=h>2];a:{if(e>>>0>=b>>>0){break a}f=v[a+20>>2];d=((f+b|0)-1>>>0)/(f>>>0)|0;c=v[a+4>>2];k=d-c|0;v[a+16>>2]=e+B(k,f);if((d|0)==(c|0)){break a}while(1){d=0;e=v[a+20>>2]<<2;if(e){c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,16683,84)|0}v[h+12>>2]=d;c=v[a+4>>2];b:{if(c>>>0>=(v[a+8>>2]&2147483647)>>>0){d=0;c=v[a+8>>2];f=c&2147483647?c<<1:1;c:{if(!f){break c}e=f<<2;if(!e){break c}d=v[37696];c=d+12|0;d=(m=c,n=e,o=Ba[v[v[d>>2]+20>>2]](d)|0?54657:63804,p=16608,q=553,l=v[v[c>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}i=v[a+4>>2];e=(i<<2)+d|0;if((i|0)>0){j=v[a>>2];c=d;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[h+12>>2];d:{if(v[a+8>>2]<0){break d}e=v[a>>2];if(!e){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e);i=v[a+4>>2]}v[a+8>>2]=f;v[a>>2]=d;v[a+4>>2]=i+1;break b}v[v[a>>2]+(c<<2)>>2]=d;v[a+4>>2]=c+1}g=g+1|0;if((k|0)!=(g|0)){continue}break}}d=v[a+12>>2];e:{if(d>>>0>=b>>>0){break e}g=d^-1;e=v[a+20>>2];if(b-d&1){c=(d>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(d-B(c,e)<<2)>>2]=0;d=d+1|0}if((g|0)==(0-b|0)){break e}while(1){c=(d>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(d-B(c,e)<<2)>>2]=0;g=d+1|0;c=(g>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(g-B(c,e)<<2)>>2]=0;d=d+2|0;if((d|0)!=(b|0)){continue}break}}v[a+12>>2]=b;xa=h+16|0}function $F(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;h=xa-16|0;xa=h;e=v[a+16>>2];a:{if(e>>>0>=b>>>0){break a}f=v[a+20>>2];d=((f+b|0)-1>>>0)/(f>>>0)|0;c=v[a+4>>2];k=d-c|0;v[a+16>>2]=e+B(k,f);if((d|0)==(c|0)){break a}while(1){d=0;e=v[a+20>>2]<<2;if(e){c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,16683,84)|0}v[h+12>>2]=d;c=v[a+4>>2];b:{if(c>>>0>=(v[a+8>>2]&2147483647)>>>0){d=0;c=v[a+8>>2];f=c&2147483647?c<<1:1;c:{if(!f){break c}e=f<<2;if(!e){break c}d=v[37696];c=d+12|0;d=(m=c,n=e,o=Ba[v[v[d>>2]+20>>2]](d)|0?54781:63804,p=16608,q=553,l=v[v[c>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}i=v[a+4>>2];e=(i<<2)+d|0;if((i|0)>0){j=v[a>>2];c=d;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[h+12>>2];d:{if(v[a+8>>2]<0){break d}e=v[a>>2];if(!e){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e);i=v[a+4>>2]}v[a+8>>2]=f;v[a>>2]=d;v[a+4>>2]=i+1;break b}v[v[a>>2]+(c<<2)>>2]=d;v[a+4>>2]=c+1}g=g+1|0;if((k|0)!=(g|0)){continue}break}}d=v[a+12>>2];e:{if(d>>>0>=b>>>0){break e}g=d^-1;e=v[a+20>>2];if(b-d&1){c=(d>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(d-B(c,e)<<2)>>2]=0;d=d+1|0}if((g|0)==(0-b|0)){break e}while(1){c=(d>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(d-B(c,e)<<2)>>2]=0;g=d+1|0;c=(g>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(g-B(c,e)<<2)>>2]=0;d=d+2|0;if((d|0)!=(b|0)){continue}break}}v[a+12>>2]=b;xa=h+16|0}function ON(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=v[b+68>>2];a:{if((b|0)>=0){h=v[a+44>>2]-1|0;f=v[v[a+40>>2]+(h<<2)>>2];c=v[a+28>>2];d=b&-8;wK(v[a+4>>2],d+v[a+52>>2]|0);e=b>>>3|0;v[v[a+40>>2]+(e<<2)>>2]=f;i=d;d=v[a+52>>2];g=i+d|0;i=h<<3;d=i+d|0;j=v[d+4>>2];v[g>>2]=v[d>>2];v[g+4>>2]=j;d=c+(e<<4)|0;c=c+(h<<4)|0;e=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=e;e=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=e;c=i+v[a+52>>2]|0;v[c>>2]=0;v[c+4>>2]=0;c=v[a+108>>2];d=v[c+456>>2];v[f+68>>2]=b;b:{if(!(w[f+43|0]&2)|w[f+41|0]&8){break b}b=v[v[v[c+444>>2]>>2]+(v[f- -64>>2]<<2)>>2];if(!b){break b}while(1){v[d+(v[b+20>>2]<<2)>>2]=v[f+68>>2];b=v[b+16>>2];if(b){continue}break}}v[a+44>>2]=h;v[a+56>>2]=h;a=a+32|0;break a}h=v[a+84>>2]-1|0;f=v[v[a+80>>2]+(h<<2)>>2];c=v[a+68>>2];d=b>>>3|0;e=d&268435455;g=e<<3;wK(v[a+4>>2],g+v[a+92>>2]|0);v[v[a+80>>2]+(e<<2)>>2]=f;e=v[a+92>>2];g=e+g|0;i=e;e=h<<3;i=i+e|0;j=v[i+4>>2];v[g>>2]=v[i>>2];v[g+4>>2]=j;d=c+(d<<4)|0;c=c+(h<<4)|0;g=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=g;g=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=g;c=e+v[a+92>>2]|0;v[c>>2]=0;v[c+4>>2]=0;c=v[a+108>>2];d=v[c+456>>2];v[f+68>>2]=b;c:{if(!(w[f+43|0]&2)|w[f+41|0]&8){break c}b=v[v[v[c+444>>2]>>2]+(v[f- -64>>2]<<2)>>2];if(!b){break c}while(1){v[d+(v[b+20>>2]<<2)>>2]=v[f+68>>2];b=v[b+16>>2];if(b){continue}break}}v[a+84>>2]=h;v[a+96>>2]=h;a=a+72|0}v[a>>2]=v[a>>2]-1}function C$(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);h=xa-96|0;xa=h;v[h+84>>2]=0;v[h+80>>2]=f;v[h+72>>2]=e;t[h+92|0]=0;v[h+88>>2]=0;v[h+76>>2]=0;e=v[c+36>>2];a:{b:{switch(v[a>>2]){case 3:k=z[b+4>>2];m=C(k+k);i=z[b+8>>2];n=C(m*i);j=z[b>>2];l=C(j+j);p=z[b+12>>2];o=C(l*p);z[h+36>>2]=n-o;z[h+28>>2]=n+o;j=C(C(1)-C(j*l));n=C(k*m);z[h+40>>2]=j-n;q=j;j=C(i+i);o=C(i*j);z[h+24>>2]=q-o;i=C(l*i);m=C(m*p);z[h+32>>2]=i+m;k=C(l*k);l=C(j*p);z[h+20>>2]=k-l;z[h+16>>2]=i-m;z[h+12>>2]=k+l;z[h+8>>2]=C(C(1)-n)-o;z[h+44>>2]=z[b+16>>2];z[h+48>>2]=z[b+20>>2];z[h+52>>2]=z[b+24>>2];z[h+56>>2]=z[a+4>>2];z[h+60>>2]=z[a+8>>2];z[h- -64>>2]=z[a+12>>2];Ba[v[(x[e+4>>1]<<2)+143048>>2]](h+8|0,e,d,c+4|0,h+72|0)|0;break a;case 2:i=z[b+20>>2];k=z[b+16>>2];o=z[b+24>>2];l=z[b>>2];m=C(l+l);q=z[b+8>>2];r=z[b+4>>2];j=z[b+12>>2];p=C(j+j);n=z[a+8>>2];s=C(C(C(m*q)-C(r*p))*n);z[h+28>>2]=o-s;q=C(n*C(C(q*p)+C(m*r)));z[h+24>>2]=i-q;z[h+16>>2]=s+o;z[h+12>>2]=i+q;i=C(n*C(C(l*m)+C(C(j*p)+C(-1))));z[h+20>>2]=k-i;z[h+8>>2]=k+i;z[h+32>>2]=z[a+4>>2];Ba[v[(x[e+4>>1]<<2)+143056>>2]](h+8|0,e,d,c+4|0,h+72|0)|0;break a;case 0:break b;default:break a}}i=z[a+4>>2];z[h+8>>2]=z[b+16>>2];z[h+12>>2]=z[b+20>>2];k=z[b+24>>2];z[h+20>>2]=i;z[h+16>>2]=k;Ba[v[(x[e+4>>1]<<2)+143064>>2]](h+8|0,e,d,c+4|0,h+72|0)|0}t[g|0]=w[h+92|0];xa=h+96|0;return v[h+76>>2]}function A4(a){var b=0,c=0,d=0;b=v[a+316>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+308>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+304>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+296>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+292>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+284>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+280>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+272>>2];if(!b){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+268>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+260>>2];if(!b){break e}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+96>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+88>>2];if(!b){break f}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}c=v[a+80>>2];if(c){b=0;while(1){d=v[v[a+76>>2]+(b<<2)>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);c=v[a+80>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}b=0;v[a+80>>2]=0;c=v[a+84>>2];g:{if((c|0)<0|!(c&2147483647)){break g}c=v[a+76>>2];if(!c){break g}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c=v[a+56>>2];if(c){while(1){d=v[v[a+52>>2]+(b<<2)>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);c=v[a+56>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+56>>2]=0;b=v[a+60>>2];h:{if((b|0)<0|!(b&2147483647)){break h}a=v[a+52>>2];if(!a){break h}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}}function AD(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=xa-16|0;xa=f;g=xa-16|0;xa=g;c=a+52|0;_C(c+4|0);v[g+8>>2]=0;b=c+172|0;bz(b,0,g+8|0);zw(b,v[c+176>>2]);v[g+12>>2]=0;b=c+184|0;bz(b,0,g+12|0);zw(b,v[c+188>>2]);b=v[c+148>>2];if(!(!b|!v[c+164>>2])){I9(v[c+140>>2],255,b<<2);b=0;e=v[c+136>>2];i=v[c+144>>2];h=i-1|0;if(h){if(i-2>>>0>=3){i=h&-4;while(1){d=b|1;v[e+(b<<2)>>2]=d;j=e+(d<<2)|0;d=b|2;v[j>>2]=d;j=e+(d<<2)|0;d=b|3;v[j>>2]=d;b=b+4|0;v[e+(d<<2)>>2]=b;k=k+4|0;if((i|0)!=(k|0)){continue}break}}h=h&3;if(h){while(1){d=e+(b<<2)|0;b=b+1|0;v[d>>2]=b;l=l+1|0;if((h|0)!=(l|0)){continue}break}}b=v[c+144>>2]-1|0}else{b=0}v[e+(b<<2)>>2]=-1;v[c+164>>2]=0;v[c+156>>2]=0}if(v[c+208>>2]){b=0;while(1){e=v[c+200>>2]+(b<<3)|0;v[e+4>>2]=0;KB(v[e>>2],1);b=b+1|0;if(b>>>0>2]){continue}break}}v[c+204>>2]=0;xa=g+16|0;v[a+48>>2]=0;v[f+8>>2]=0;c=a+312|0;bz(c,0,f+8|0);zw(c,v[a+316>>2]);v[f+12>>2]=0;c=a+324|0;bz(c,0,f+12|0);zw(c,v[a+328>>2]);c=v[a+36>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+36>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;c=v[a+20>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+20>>2]=0;c=v[a+32>>2];if(c){c=JB(c);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+32>>2]=0;c=v[a+4>>2];if(c){c=JB(c);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+268>>2]=0;v[a+40>>2]=0;v[a+4>>2]=0;t[a+337|0]=0;v[a+344>>2]=0;xa=f+16|0}function OI(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,x=0;a:{h=v[a+40>>2];if(w[h+60|0]){dI(h);h=v[a+40>>2]}o=v[h+8>>2];if(!o){break a}q=v[h+28>>2];n=v[h+24>>2];a=0;while(1){c=(m<<3)+n|0;d=v[c>>2];r=v[c+4>>2];while(1){j=a<<3;c=a+1|0;a=c;if(d>>>0>y[j+n>>2]){continue}break}if(y[(c<<3)+n>>2]<=r>>>0){j=(m<<4)+q|0;d=c;while(1){a=(d<<4)+q|0;b:{if(z[a+8>>2]>2]|z[j+8>>2]>2]|(z[a+12>>2]>2]|z[j+12>>2]>2])){break b}g=v[h+4>>2];a=v[g+(m<<2)>>2];i=v[(a<<2)+e>>2];g=v[g+(d<<2)>>2];k=v[(g<<2)+e>>2];if((i|0)==(k|0)|!w[(i<<2&12|k&3)+f|0]){break b}k=a>>>0>>0?a:g;p=a>>>0>g>>>0?a:g;a=k&65535|p<<16;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;s=a>>>16^a;g=s&v[b+4>>2];c:{i=v[b+12>>2];d:{if(!i){break d}a=v[(g<<2)+i>>2];if((a|0)==-1){break d}u=v[b+16>>2];x=v[b+20>>2];while(1){l=(a<<3)+x|0;if((k|0)==(v[l>>2]&2147483647)){t=v[l+4>>2];if((t&2147483647)==(p|0)){break c}}a=v[(a<<2)+u>>2];if((a|0)!=-1){continue}break}}a=v[b+8>>2];if(a>>>0>=y[b>>2]){g=ZH(b,s);i=v[b+12>>2];a=v[b+8>>2]}v[b+8>>2]=a+1;l=v[b+20>>2]+(a<<3)|0;v[l+4>>2]=p;v[l>>2]=k|-2147483648;g=(g<<2)+i|0;v[v[b+16>>2]+(a<<2)>>2]=v[g>>2];v[g>>2]=a;break b}v[l+4>>2]=t|-2147483648}d=d+1|0;if(y[(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 WZ(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0);t=z[a+4>>2]==C(1)&z[a+8>>2]==C(1)&z[a+12>>2]==C(1);if(!t){IX(b,a+4|0,a+16|0);h=z[b+28>>2];i=z[b+16>>2];j=z[b+24>>2];p=z[b>>2];q=z[b+12>>2];r=z[b+4>>2];a=v[a+40>>2];m=z[a>>2];e=z[b+8>>2];n=z[a+4>>2];f=z[b+20>>2];o=z[a+8>>2];g=z[b+32>>2];s=C(C(C(m*e)+C(n*f))+C(o*g));k=e;e=z[a+12>>2];l=f;f=z[a+16>>2];u=g;g=z[a+20>>2];k=C(C(C(D(C(k*e)))+C(D(C(l*f))))+C(D(C(u*g))));z[c+20>>2]=s+k;l=C(C(C(m*r)+C(n*i))+C(o*h));h=C(C(C(D(C(r*e)))+C(D(C(i*f))))+C(D(C(h*g))));z[c+16>>2]=l+h;i=C(C(C(m*p)+C(n*q))+C(o*j));j=C(C(C(D(C(p*e)))+C(D(C(q*f))))+C(D(C(j*g))));z[c+12>>2]=i+j;z[c+8>>2]=s-k;z[c+4>>2]=l-h;z[c>>2]=i-j;u_(d,a,b);v[d+52>>2]=0;v[d+56>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;return t}h=z[b+28>>2];i=z[b+16>>2];j=z[b+24>>2];p=z[b>>2];q=z[b+12>>2];r=z[b+4>>2];a=v[a+40>>2];m=z[a>>2];e=z[b+8>>2];n=z[a+4>>2];f=z[b+20>>2];o=z[a+8>>2];g=z[b+32>>2];s=C(C(C(m*e)+C(n*f))+C(o*g));k=e;e=z[a+12>>2];l=f;f=z[a+16>>2];u=g;g=z[a+20>>2];k=C(C(C(D(C(k*e)))+C(D(C(l*f))))+C(D(C(u*g))));z[c+20>>2]=s+k;l=C(C(C(m*r)+C(n*i))+C(o*h));h=C(C(C(D(C(r*e)))+C(D(C(i*f))))+C(D(C(h*g))));z[c+16>>2]=l+h;i=C(C(C(m*p)+C(n*q))+C(o*j));j=C(C(C(D(C(p*e)))+C(D(C(q*f))))+C(D(C(j*g))));z[c+12>>2]=i+j;z[c+8>>2]=s-k;z[c+4>>2]=l-h;z[c>>2]=i-j;u_(d,a,b);return t}function Wu(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=xa-16|0;xa=f;b=v[a+4>>2];if(b&8){c=v[a+8>>2];if(!c){c=Pu(v[a>>2],b>>>24&15);v[a+8>>2]=c;b=v[a+4>>2]}a:{if((b&-1073741824)!=-2147483648){break a}d=v[c+76>>2];if(!d){break a}while(1){h=v[c+72>>2]+(e<<3)|0;b=v[h>>2];g=v[b+4>>2];if((g&251658240)==16777216){v[b>>2]=0;v[b+4>>2]=g&1073741823}g=v[((v[a+4>>2]>>>22&60)+89188|0)+12>>2]+a|0;if(!(w[g+8|0]&8)){d=v[a>>2];RJ(g,b+16|0,w[h+4|0]!=0);if(w[b+7|0]&16){Yu(b);v[f+4>>2]=b;Og(d+4816|0,f+4|0);v[b+4>>2]=v[b+4>>2]&-268435457}au(b);d=v[c+76>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}t[f+12|0]=0;v[f+8>>2]=0;a=c+36|0;b=v[a+40>>2];if((b|0)<0){d=v[a+36>>2];b=d+(b<<3)|0;while(1){e=v[f+12>>2];v[b>>2]=v[f+8>>2];v[b+4>>2]=e;b=b+8|0;if(d>>>0>b>>>0){continue}break}}v[a+40>>2]=0;b=0;e=v[c+76>>2];b:{if(!e){break b}c=e<<3;if(!(w[a+32|0]|c>>>0>32)){t[a+32|0]=1;b=a;break b}if(!c){break b}b=v[37696];d=b+12|0;b=(j=d,k=c,l=Ba[v[v[b>>2]+20>>2]](b)|0?42347:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}d=v[a+36>>2];c=v[a+40>>2];if((c|0)>0){h=(c<<3)+b|0;c=b;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;d=d+8|0;c=c+8|0;if(h>>>0>c>>>0){continue}break}d=v[a+36>>2]}c:{if(v[a+44>>2]<0){break c}if((a|0)==(d|0)){t[a+32|0]=0;break c}if(!d){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+44>>2]=e;v[a+36>>2]=b}xa=f+16|0}function GE(a,b,c,d,e,f,g){var h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0;h=xa+-64|0;xa=h;t[a+140|0]=1;v[h+60>>2]=c;v[h+56>>2]=b;i=B(d,36)+a|0;v[i+32>>2]=v[i+32>>2]+1;a:{if((e|0)==-1){b:{if(f){k=z[f+16>>2];l=z[f+12>>2];m=z[f>>2];n=z[f+4>>2];j=z[f+20>>2];o=z[f+8>>2];p=C(C(j-o)*C(.004999999888241291));z[h+44>>2]=j+p;j=k;k=C(C(k-n)*C(.004999999888241291));z[h+40>>2]=j+k;j=l;l=C(C(l-m)*C(.004999999888241291));z[h+36>>2]=j+l;z[h+24>>2]=m-l;z[h+32>>2]=o-p;z[h+28>>2]=n-k;break b}Ba[v[(d<<2)+129544>>2]](h+24|0,b,c)}a=v[i>>2];Ba[v[v[a>>2]>>2]](a,h+52|0,h+24|0,h+56|0,1,g)|0;b=v[h+52>>2];a=v[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=v[37696];a=Ba[v[v[e+12>>2]+8>>2]](e+12|0,a>>>3|0,24422,17999,438)|0;e=v[i+4>>2];d:{if(!e){break d}H9(a,e,v[i+8>>2]<<2);if(v[i+8>>2]<0){break d}e=v[i+4>>2];if(!e){break d}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}e=v[i+8>>2];I9(a+(e<<2)|0,0,c-e<<2);v[i+8>>2]=c;v[i+4>>2]=a}a=v[i+4>>2]+(b>>>3&536870908)|0;c=v[a>>2];q=a,r=Uaa(-2,b)&c,v[q>>2]=r;break a}c=h+24|0;f=v[b+8>>2];g=v[b+4>>2];dV(c,g&1?f- -64|0:b+84|0,g&4?f:b+48|0,C(1.0099999904632568));a=v[a+72>>2];b=v[h+60>>2];f=v[h+56>>2];v[h+16>>2]=f;v[h+20>>2]=b;g=v[v[a>>2]+20>>2];v[h+8>>2]=f;v[h+12>>2]=b;Ba[g|0](a,e,h+52|0,c,h+8|0)|0}xa=h- -64|0;return v[h+52>>2]<<1|d}function q$(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0);v[e>>2]=-8388609;v[f>>2]=2139095039;h=z[d>>2];a:{b:{if(!(!(h>C(-1.1920928955078125e-7))|!(h>2];if(g>2]){return-1}h=C(34028234663852886e22);l=-1;if(!(g>z[b>>2])){break b}break a}g=C(C(1)/h);i=z[c>>2];h=C(g*C(z[a>>2]-i));j=C(g*C(z[b>>2]-i));k=h>j;i=k?h:j;g=z[e>>2];h=k?j:h;c:{if(!(g>2]=h;k=k?3:0;g=h;h=z[f>>2]}if(i>2]=i;g=z[e>>2];h=i}l=-1;if(hh){break a}}g=z[d+4>>2];d:{if(!(g>C(-1.1920928955078125e-7)&g>2];j=C(g*C(z[a+4>>2]-i));m=C(g*C(z[b+4>>2]-i));l=j>m;i=l?j:m;g=z[e>>2];j=l?m:j;if(g>2]=j;k=l?4:1;g=j;h=z[f>>2]}if(h>i){z[f>>2]=i;g=z[e>>2];h=i}l=-1;if(g>h){break a}if(!(h>2];if(g>2]|g>z[b+4>>2]){break a}}g=z[d+8>>2];e:{if(!(g>C(-1.1920928955078125e-7)&g>2];j=C(g*C(z[a+8>>2]-i));m=C(g*C(z[b+8>>2]-i));a=j>m;i=a?j:m;g=z[e>>2];j=a?m:j;if(g>2]=j;k=a?5:2;g=j;h=z[f>>2]}if(h>i){z[f>>2]=i;g=z[e>>2];h=i}if(g>h){break a}if(!(h>2];if(g>2]|g>z[b+8>>2]){break a}g=z[e>>2]}l=g>h?-1:h>2];r=v[a+316>>2];a:{if(!(t[(r&16384?g+268|0:a+108|0)|0]&1)){break a}b:{if(r&32768){s=g+216|0;x=z[g+212>>2];A=z[g+208>>2];h=z[g+204>>2];i=z[g+200>>2];j=z[g+196>>2];B=g+192|0;break b}if(y[a+52>>2]>3221225471){break a}if(!YG(a- -64|0,f)){break a}s=f+24|0;g=v[a+56>>2];r=v[a+316>>2];x=z[f+20>>2];A=z[f+16>>2];i=z[f+8>>2];j=z[f+4>>2];h=z[f+12>>2];B=f}a=r&1024?g+144|0:a+112|0;o=z[a+16>>2];p=z[a+24>>2];q=z[a+20>>2];k=z[s>>2];d=z[a+8>>2];e=z[a+4>>2];c=z[a+12>>2];l=z[a>>2];m=z[B>>2];z[b+12>>2]=C(i*d)+C(C(j*e)+C(C(h*c)+C(l*m)));z[b+8>>2]=C(l*j)+C(C(C(c*i)-C(h*d))-C(m*e));z[b+4>>2]=C(d*m)+C(C(C(c*j)-C(h*e))-C(i*l));z[b>>2]=C(e*i)+C(C(C(c*m)-C(h*l))-C(j*d));D=k;p=C(p*C(-2));o=C(o*C(-2));q=C(q*C(-2));u=C(C(d*p)+C(C(l*o)+C(e*q)));w=C(C(c*c)+C(-.5));k=C(C(d*u)+C(C(p*w)-C(c*C(C(l*q)-C(o*e)))));k=C(k+k);n=C(C(l*u)+C(C(o*w)-C(c*C(C(e*p)-C(q*d)))));n=C(n+n);c=C(C(e*u)+C(C(q*w)-C(c*C(C(d*o)-C(p*l)))));c=C(c+c);d=C(C(i*k)+C(C(m*n)+C(j*c)));e=C(C(h*h)+C(-.5));z[b+24>>2]=D+C(C(i*d)+C(C(k*e)+C(h*C(C(m*c)-C(n*j)))));z[b+20>>2]=x+C(C(j*d)+C(C(c*e)+C(h*C(C(i*n)-C(k*m)))));z[b+16>>2]=A+C(C(m*d)+C(C(n*e)+C(h*C(C(j*k)-C(c*i)))));s=1}xa=f+32|0;return s|0}function Th(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=xa-16|0;xa=g;v[g+12>>2]=b;c=v[a+124>>2];d=v[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=v[37696];e=c+12|0;c=(j=e,k=d,l=Ba[v[v[c>>2]+20>>2]](c)|0?55965:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}e=v[a+120>>2];d=v[a+124>>2];if((d|0)>0){h=(d<<2)+c|0;d=c;while(1){v[d>>2]=v[e>>2];e=e+4|0;d=d+4|0;if(h>>>0>d>>>0){continue}break}e=v[a+120>>2]}if(!(!e|v[a+128>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+128>>2]=f;v[a+120>>2]=c;d=v[a+128>>2]&2147483647;c=v[a+124>>2]}c:{if(c>>>0>=d>>>0){b=0;c=v[a+128>>2];f=c&2147483647?c<<1:1;d:{if(!f){break d}c=f<<2;if(!c){break d}b=v[37696];d=b+12|0;b=(n=d,m=c,l=Ba[v[v[b>>2]+20>>2]](b)|0?55965:63804,k=16608,j=553,i=v[v[d>>2]+8>>2],Ba[i](n|0,m|0,l|0,k|0,j|0)|0)}d=v[a+124>>2];h=(d<<2)+b|0;if((d|0)>0){e=v[a+120>>2];c=b;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[g+12>>2];e:{if(v[a+128>>2]<0){break e}c=v[a+120>>2];if(!c){break e}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c);d=v[a+124>>2]}v[a+128>>2]=f;v[a+120>>2]=b;v[a+124>>2]=d+1;break c}v[v[a+120>>2]+(c<<2)>>2]=b;v[a+124>>2]=c+1}a=v[a+24>>2];b=v[g+12>>2];b=Ba[v[v[b>>2]+104>>2]](b)|0;if(a){tG(a,v[b+88>>2])}xa=g+16|0}function HM(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);k=x[a+60>>1];a:{if(!k){break a}if(k&1){v[a>>2]=0}if(k&2){v[a+4>>2]=0}if(k&4){v[a+8>>2]=0}if(k&8){v[a+16>>2]=0}if(k&16){v[a+20>>2]=0}if(!(k&32)){break a}v[a+24>>2]=0}o=z[a+20>>2];p=z[a+24>>2];q=z[a+16>>2];f=z[a+8>>2];d=z[a+4>>2];s=C(z[a>>2]*c);z[b+16>>2]=s+z[b+16>>2];t=C(d*c);z[b+20>>2]=t+z[b+20>>2];d=z[b+36>>2];l=z[b+48>>2];m=z[b+60>>2];i=z[b+40>>2];g=z[b+52>>2];h=z[b+32>>2];e=z[b+44>>2];n=z[b+56>>2];r=z[b+28>>2];u=C(f*c);z[b+24>>2]=u+z[b+24>>2];j=C(C(C(q*d)+C(o*l))+C(p*m));g=C(C(C(q*r)+C(o*i))+C(p*g));h=C(C(C(q*h)+C(o*e))+C(p*n));d=C(C(j*j)+C(C(g*g)+C(h*h)));if(d!=C(0)){f=z[b+4>>2];e=C(K(d));i=C(C(e*c)*C(.5));n=Q9(i);d=z[b>>2];l=z[b+8>>2];m=z[b+12>>2];i=G9(i);e=C(n/e);g=C(g*e);h=C(h*e);j=C(j*e);e=C(C(m*i)+C(C(C(C(m*C(0))-C(d*g))-C(f*h))-C(l*j)));r=e;w=C(e*e);e=C(C(i*l)+C(C(C(g*f)+C(C(l*C(0))+C(j*m)))-C(d*h)));n=C(C(i*d)+C(C(C(h*l)+C(C(d*C(0))+C(g*m)))-C(f*j)));d=C(C(i*f)+C(C(C(j*d)+C(C(f*C(0))+C(h*m)))-C(l*g)));f=C(C(1)/C(K(C(w+C(C(e*e)+C(C(n*n)+C(d*d)))))));z[b+12>>2]=r*f;z[b+8>>2]=e*f;z[b+4>>2]=d*f;z[b>>2]=n*f}z[a+32>>2]=C(q*c)+z[a+32>>2];z[a+48>>2]=s+z[a+48>>2];z[a+36>>2]=C(o*c)+z[a+36>>2];z[a+40>>2]=C(p*c)+z[a+40>>2];z[a+52>>2]=t+z[a+52>>2];z[a+56>>2]=u+z[a+56>>2]}function Au(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;e=xa-288|0;xa=e;f=v[b+4>>2];a:{if(!(w[(f&1?v[b+8>>2]:(v[((f>>>22&60)+89188|0)+12>>2]+b|0)+8|0)|0]&8)){t[e+272|0]=1;v[e+280>>2]=0;v[e+284>>2]=64;v[e+276>>2]=e+16;f=0;g=Ho(b,e+12|0,0);MP(a,b+16|0,v[e+12>>2],g,c,(d|0)!=0);if(g){b=v[b>>2];while(1){a=v[v[e+12>>2]+(f<<2)>>2]+32|0;c=v[a+4>>2];if((c&251658240)==16777216){v[a>>2]=b;v[a+4>>2]=c&1073741823|-2147483648}a=a-16|0;v[a>>2]=v[a>>2]+1;f=f+1|0;if((g|0)!=(f|0)){continue}break}}a=v[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}t[e+272|0]=1;v[e+280>>2]=0;v[e+284>>2]=64;v[e+276>>2]=e+16;f=0;a=Ho(b,e+12|0,0);b:{if(!a){break b}c=v[b>>2];if((a|0)!=1){g=a&-2;b=0;while(1){h=f<<2;d=v[h+v[e+12>>2]>>2];i=v[d+36>>2];if((i&251658240)==16777216){v[d+32>>2]=c;v[d+36>>2]=i&1073741823|-2147483648}d=v[v[e+12>>2]+(h|4)>>2];h=v[d+36>>2];if((h&251658240)==16777216){v[d+32>>2]=c;v[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=v[v[e+12>>2]+(f<<2)>>2];b=v[a+36>>2];if((b&251658240)!=16777216){break b}v[a+32>>2]=c;v[a+36>>2]=b&1073741823|-2147483648}a=v[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=e+288|0}function U1(a,b,c,d,e){var f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=0,o=C(0),p=0,q=0,r=0,s=C(0),t=C(0),u=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=0;n=xa-16|0;xa=n;h=v[a+16>>2];if(h){i=z[e+8>>2];j=z[e>>2];g=z[e+4>>2];f=C(C(1)/C(K(C(C(i*i)+C(C(j*j)+C(g*g))))));t=C(i*f);u=C(g*f);y=C(j*f);while(1){r=v[a+24>>2]+B(q,20)|0;p=w[r+18|0];if(p){e=v[b+36>>2];A=v[a+32>>2]+x[r+16>>1]|0;h=v[a+28>>2]+B(w[A|0],12)|0;f=z[h+8>>2];g=z[h>>2];l=z[h+4>>2];i=C(C(z[e+40>>2]*f)+C(C(z[e+8>>2]*g)+C(l*z[e+24>>2])));j=C(C(z[e+32>>2]*f)+C(C(z[e>>2]*g)+C(l*z[e+16>>2])));g=C(C(z[e+36>>2]*f)+C(C(z[e+4>>2]*g)+C(l*z[e+20>>2])));f=C(C(t*C(i-z[d+8>>2]))+C(C(y*C(j-z[d>>2]))+C(u*C(g-z[d+4>>2]))));h=p-1|0;e=0;while(1){G=f>C(0);k=v[b+36>>2];h=v[a+28>>2]+B(w[h+A|0],12)|0;f=z[h+8>>2];m=z[h>>2];o=z[h+4>>2];l=C(C(z[k+40>>2]*f)+C(C(z[k+8>>2]*m)+C(o*z[k+24>>2])));s=C(C(z[k+32>>2]*f)+C(C(z[k>>2]*m)+C(o*z[k+16>>2])));m=C(C(z[k+36>>2]*f)+C(C(z[k+4>>2]*m)+C(o*z[k+20>>2])));o=C(C(t*C(l-z[d+8>>2]))+C(C(y*C(s-z[d>>2]))+C(u*C(m-z[d+4>>2]))));if(G|o>C(0)){D=C(0);f=C(0);E=C(0);i=C(i-l);j=C(j-s);g=C(g-m);F=C(C(i*i)+C(C(j*j)+C(g*g)));if(F>C(0)){f=C(C(1)/C(K(F)));E=C(i*f);D=C(j*f);f=C(g*f)}z[n+8>>2]=E;z[n+4>>2]=f;z[n>>2]=D;sZ(c,n);p=w[r+18|0]}i=l;g=m;j=s;f=o;h=e;e=e+1|0;if(p>>>0>e>>>0){continue}break}h=v[a+16>>2]}q=q+1|0;if(q>>>0>>0){continue}break}}xa=n+16|0}function FJ(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=v[a>>2];e=v[f+2356>>2];a:{if(!(e&6)){break a}d=v[f+56>>2];if(!d){break a}g=e<<2&8|e<<3&32;f=v[f+52>>2];while(1){d=d-1|0;e=v[f>>2];b:{if(!(w[e+21|0]&8)){UR(e-4|0,g);break b}t[e+22|0]=g|w[e+22|0]}f=f+4|0;if(d){continue}break}}l=v[a+104>>2];c:{if(!l){break c}n=v[a+72>>2];f=0;while(1){d=v[(f<<2)+n>>2];d:{if(!(!(t[d+21|0]&1)|!(t[d+22|0]&1))){e=xJ(a,d-4|0,0,0,b,c);if((d|0)!=((e?e+4|0:0)|0)){break d}}e:{f:{switch(w[d+20|0]){case 0:UR(d-4|0,0);break e;case 4:break f;default:break e}}j=0;g=v[d+24>>2];e=v[g- -64>>2];k=1;m=1;i=v[g+60>>2];if(i){m=y[i+152>>2]<4294967294}k=e?y[e+152>>2]<4294967294:k;j=i?!(t[v[i+44>>2]+44|0]&1):j;g:{if(!(k|m)|!(j|(e?!(t[v[e+44>>2]+44|0]&1):h))){break g}t[d+21|0]=w[d+21|0]|32;if((w[g+68|0]&6)!=2){break g}rP(v[v[d>>2]+40>>2],g)}}VH(d,0)}f=f+1|0;if((l|0)!=(f|0)){continue}break}b=v[a+88>>2];if(!b|!v[a+104>>2]){break c}I9(v[a+80>>2],255,b<<2);d=0;b=v[a+76>>2];e=v[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;v[b+(d<<2)>>2]=h;g=b+(h<<2)|0;h=d|2;v[g>>2]=h;g=b+(h<<2)|0;h=d|3;v[g>>2]=h;d=d+4|0;v[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;v[e>>2]=d;f=f+1|0;if((c|0)!=(f|0)){continue}break}}c=v[a+84>>2]-1|0}else{c=0}v[b+(c<<2)>>2]=-1;v[a+104>>2]=0;v[a+96>>2]=0}}function t0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),A=C(0),B=0,D=C(0),E=C(0);f=xa+-64|0;xa=f;g=v[a+8>>2];m=z[g+28>>2];n=z[g+16>>2];o=z[g+4>>2];i=z[g+24>>2];p=z[g>>2];j=z[g+12>>2];k=z[c>>2];h=z[c+4>>2];s=z[g+20>>2];l=z[c+8>>2];u=z[g+32>>2];x=C(C(C(k*z[g+8>>2])+C(h*s))+C(l*u));z[f+56>>2]=x;p=C(C(C(k*p)+C(h*j))+C(l*i));z[f+48>>2]=p;k=C(C(C(k*o)+C(h*n))+C(l*m));z[f+52>>2]=k;A=z[g+4>>2];q=z[g>>2];B=w[a+17|0];c=B?e:d;h=z[c>>2];l=z[c+4>>2];o=z[c+8>>2];D=C(C(C(h*z[g+8>>2])+C(s*l))+C(u*o));z[f+40>>2]=D;q=C(C(C(h*q)+C(j*l))+C(i*o));z[f+32>>2]=q;l=C(C(C(h*A)+C(n*l))+C(m*o));z[f+36>>2]=l;o=z[g+8>>2];A=z[g+4>>2];c=B?d:e;h=z[c>>2];r=j;j=z[c+4>>2];E=i;i=z[c+8>>2];r=C(C(C(h*z[g>>2])+C(r*j))+C(E*i));z[f+16>>2]=r;m=C(C(C(h*A)+C(n*j))+C(m*i));z[f+20>>2]=m;n=C(C(C(h*o)+C(s*j))+C(u*i));z[f+24>>2]=n;i=C(p-q);m=C(k-m);j=C(p-r);k=C(k-l);z[f+8>>2]=C(i*m)-C(j*k);h=C(x-D);n=C(x-n);z[f+4>>2]=C(h*j)-C(n*i);z[f>>2]=C(k*n)-C(m*h);c=1;a:{if(!F$(f,f+48|0,f+32|0,f+16|0,a+20|0,a+48|0)){break a}d=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];c=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;c=1;break a}c=v[a+16>>2];if(c>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=d;c=1;break a}v[a+16>>2]=c+1;c=1}xa=f- -64|0;return c|0}function XK(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=C(0),r=C(0),s=C(0),t=C(0),u=0,x=0;v[a+40>>2]=f;v[a+36>>2]=e;v[a+32>>2]=e;a:{if(!b){break a}e=0;while(1){f=(k<<3)+c|0;g=v[f>>2];n=v[f+4>>2];while(1){f=e<<3;l=e+1|0;e=l;if(g>>>0>y[c+f>>2]){continue}break}if(y[(l<<3)+c>>2]<=n>>>0){e=(k<<4)+d|0;q=z[e+12>>2];r=z[e+4>>2];s=z[e+8>>2];t=z[e>>2];f=l;while(1){e=(f<<4)+d|0;b:{if(z[e+8>>2]>2]>s|(z[e+12>>2]>2]>q)){break b}h=v[a+28>>2];e=v[v[a+32>>2]+(k<<2)>>2];i=v[h+(e<<2)>>2];g=v[v[a+36>>2]+(f<<2)>>2];h=v[h+(g<<2)>>2];if((i|0)==(h|0)|!w[v[a+44>>2]+(i<<2&12|h&3)|0]){break b}i=e>>>0>>0?e:g;m=e>>>0>g>>>0?e:g;e=i&65535|m<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;o=e>>>16^e;g=o&v[a+4>>2];c:{h=v[a+12>>2];d:{if(!h){break d}e=v[(g<<2)+h>>2];if((e|0)==-1){break d}u=v[a+16>>2];x=v[a+20>>2];while(1){j=(e<<3)+x|0;if((i|0)==(v[j>>2]&2147483647)){p=v[j+4>>2];if((p&2147483647)==(m|0)){break c}}e=v[(e<<2)+u>>2];if((e|0)!=-1){continue}break}}e=v[a+8>>2];if(e>>>0>=y[a>>2]){g=ZH(a,o);h=v[a+12>>2];e=v[a+8>>2]}v[a+8>>2]=e+1;j=v[a+20>>2]+(e<<3)|0;v[j+4>>2]=m;v[j>>2]=i|-2147483648;g=(g<<2)+h|0;v[v[a+16>>2]+(e<<2)>>2]=v[g>>2];v[g>>2]=e;break b}v[j+4>>2]=p|-2147483648}f=f+1|0;if(y[(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 dA(a){var b=0,c=C(0),d=C(0),e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0);b=v[a+24>>2];if(b){e=v[a+4>>2];h=z[e+24>>2];i=z[e+20>>2];f=v[a>>2];j=z[f+24>>2];k=z[f+20>>2];l=z[e+16>>2];m=z[f+16>>2];n=z[e+8>>2];o=z[e+4>>2];p=z[e>>2];q=z[f+8>>2];r=z[f+4>>2];s=z[f>>2];t=w[b+1|0];if(t){K=z[b+44>>2];L=z[b+36>>2];M=z[b+28>>2];N=z[b+12>>2];b=b+48|0;a=0;while(1){c=z[b+80>>2];d=z[b+88>>2];u=z[b>>2];x=z[b+32>>2];y=z[b+16>>2];A=z[b+48>>2];B=z[b+4>>2];D=z[b+36>>2];E=z[b+20>>2];F=z[b+52>>2];G=z[b+8>>2];H=z[b+40>>2];I=z[b+24>>2];J=z[b+56>>2];g=C(C(z[b+60>>2]*d)+C(z[b+12>>2]+C(z[b+44>>2]*C(C(C(C(C(s*u)+C(m*x))-C(C(p*y)+C(l*A)))+C(C(C(r*B)+C(k*D))-C(C(o*E)+C(i*F))))+C(C(C(q*G)+C(j*H))-C(C(n*I)+C(h*J)))))));c=c>g?c:g;g=z[b+84>>2];c=c>2]=c;c=C(c-d);d=C(K*c);h=C(h+C(J*d));i=C(i+C(F*d));l=C(l+C(A*d));d=C(L*c);j=C(j+C(H*d));k=C(k+C(D*d));m=C(m+C(x*d));d=C(M*c);n=C(n-C(I*d));o=C(o-C(E*d));p=C(p-C(y*d));c=C(N*c);q=C(q+C(G*c));r=C(r+C(B*c));s=C(s+C(u*c));b=b+96|0;a=a+1|0;if((t|0)!=(a|0)){continue}break}}z[f+24>>2]=j;z[f+20>>2]=k;z[f+16>>2]=m;z[f+8>>2]=q;z[f+4>>2]=r;z[f>>2]=s;z[e+24>>2]=h;z[e+20>>2]=i;z[e+16>>2]=l;z[e+8>>2]=n;z[e+4>>2]=o;z[e>>2]=p}}function vaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=xa+-64|0;xa=f;a:{if(naa(b,110196,0)){v[c>>2]=0;d=1;break a}b:{if(w[a+8|0]&24){e=1}else{if(!b){break b}e=paa(b,109908);if(!e){break b}e=(w[e+8|0]&24)!=0}g=naa(a,b,e)}if(g){d=1;a=v[c>>2];if(!a){break a}v[c>>2]=v[a>>2];break a}c:{if(!b){break c}e=paa(b,109956);if(!e){break a}b=v[c>>2];if(b){v[c>>2]=v[b>>2]}g=v[e+8>>2];b=v[a+8>>2];if(g&(b^-1)&7|b&(g^-1)&96){break a}d=1;if(naa(v[a+12>>2],v[e+12>>2],0)){break a}if(naa(v[a+12>>2],110164,0)){a=v[e+12>>2];if(!a){break a}d=!paa(a,110008);break a}g=v[a+12>>2];if(!g){break c}d=0;b=paa(g,109956);if(b){if(!(t[a+8|0]&1)){break a}a=v[e+12>>2];c=0;d:{e:{while(1){d=0;if(!a){break d}a=paa(a,109956);if(!a|v[a+8>>2]&(v[b+8>>2]^-1)){break e}d=1;if(naa(v[b+12>>2],v[a+12>>2],0)){break d}if(!(t[b+8|0]&1)){break e}d=v[b+12>>2];if(!d){break e}b=paa(d,109956);if(b){a=v[a+12>>2];continue}break}b=paa(d,110068);if(!b){break e}c=waa(b,v[a+12>>2])}d=c}break a}b=paa(g,110068);if(b){if(!(t[a+8|0]&1)){break a}d=waa(b,v[e+12>>2]);break a}b=paa(g,109860);if(!b){break a}a=v[e+12>>2];if(!a){break a}a=paa(a,109860);if(!a){break a}d=f+8|0;I9(d|4,0,52);v[f+56>>2]=1;v[f+20>>2]=-1;v[f+16>>2]=b;v[f+8>>2]=a;Ba[v[v[a>>2]+28>>2]](a,d,v[c>>2],1);a=v[f+32>>2];if(!(!v[c>>2]|(a|0)!=1)){v[c>>2]=v[f+24>>2]}d=(a|0)==1;break a}d=0}xa=f- -64|0;return d|0}function P3(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{c=v[a+12>>2];if(y[c+12>>2]>65535){break a}b=w[c+8|0];if(b&2){break a}i=v[c+72>>2];v[c+72>>2]=0;t[c+8|0]=b|2;b=v[c+68>>2];g=B(b,3);h=v[c+56>>2];e=B(b,6);b:{c:{if(!e){e=0;if(h){break c}break b}d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,e,24422,19733,228)|0;v[c+72>>2]=d;if(!h){break b}d=v[37696]+12|0;e=Ba[v[v[d>>2]+8>>2]](d,e,24422,19733,230)|0;d=v[c+72>>2]}v[c+56>>2]=e}v[c+68>>2]=b;d:{e:{f:{if(g){e=0;b=0;if(g-1>>>0>=3){f=g&-4;while(1){u[(b<<1)+d>>1]=v[i+(b<<2)>>2];j=b|1;u[(j<<1)+d>>1]=v[i+(j<<2)>>2];j=b|2;u[(j<<1)+d>>1]=v[i+(j<<2)>>2];j=b|3;u[(j<<1)+d>>1]=v[i+(j<<2)>>2];b=b+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}f=g&3;if(!f){break f}while(1){u[(b<<1)+d>>1]=v[i+(b<<2)>>2];b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break f}if(i){break f}if(!h){break d}break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,i);if(!h){break d}if(!g){break e}c=v[c+56>>2];d=0;b=0;if(g-1>>>0>=3){i=g&-4;e=0;while(1){u[c+(b<<1)>>1]=v[(b<<2)+h>>2];f=b|1;u[c+(f<<1)>>1]=v[(f<<2)+h>>2];f=b|2;u[c+(f<<1)>>1]=v[(f<<2)+h>>2];f=b|3;u[c+(f<<1)>>1]=v[(f<<2)+h>>2];b=b+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}g=g&3;if(!g){break e}while(1){u[c+(b<<1)>>1]=v[(b<<2)+h>>2];b=b+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,h)}Ba[v[v[a>>2]+20>>2]](a)}}function iP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;if(v[a+2236>>2]){d=v[a+2204>>2];while(1){f=v[v[d+(c<<2)>>2]>>2];u[f+148>>1]=x[f+148>>1]&65423;c=c+1|0;f=v[a+2236>>2];if(c>>>0>>0){continue}break}}a:{if(!v[a+2276>>2]){c=0;break a}f=v[a+2244>>2];while(1){c=v[v[f+(b<<2)>>2]>>2];u[c+148>>1]=x[c+148>>1]&65359;b=b+1|0;c=v[a+2276>>2];if(b>>>0>>0){continue}break}f=v[a+2236>>2]}b=v[a+2220>>2];if(!(!b|!f)){I9(v[a+2212>>2],255,b<<2);b=0;c=v[a+2208>>2];d=v[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;v[c+(b<<2)>>2]=e;h=c+(e<<2)|0;e=b|2;v[h>>2]=e;h=c+(e<<2)|0;e=b|3;v[h>>2]=e;b=b+4|0;v[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;v[e>>2]=b;f=f+1|0;if((d|0)!=(f|0)){continue}break}}b=v[a+2216>>2]-1|0}else{b=0}v[c+(b<<2)>>2]=-1;v[a+2236>>2]=0;v[a+2228>>2]=0;c=v[a+2276>>2]}b=v[a+2260>>2];if(!(!b|!c)){I9(v[a+2252>>2],255,b<<2);b=0;c=v[a+2248>>2];d=v[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;v[c+(b<<2)>>2]=e;h=c+(e<<2)|0;e=b|2;v[h>>2]=e;h=c+(e<<2)|0;e=b|3;v[h>>2]=e;b=b+4|0;v[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;v[e>>2]=b;f=f+1|0;if((d|0)!=(f|0)){continue}break}}b=v[a+2256>>2]-1|0}else{b=0}v[c+(b<<2)>>2]=-1;v[a+2276>>2]=0;v[a+2268>>2]=0}u[a+2280>>1]=257}function Xn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=xa-16|0;xa=g;a:{if(!v[a+92>>2]){break a}c=(b<<15^-1)+b|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[v[a+68>>2]+((v[a+76>>2]-1&(c>>>16^c))<<2)>>2];if((c|0)==-1){break a}f=v[a- -64>>2];d=v[a+60>>2];while(1){if(v[d+(c<<3)>>2]!=(b|0)){c=v[f+(c<<2)>>2];if((c|0)!=-1){continue}break a}break}i=v[(d+(c<<3)|0)+4>>2];v[g+12>>2]=b;b:{if(!v[a+92>>2]){break b}j=v[a+68>>2];e=v[g+12>>2];b=(e<<15^-1)+e|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=j+((v[a+76>>2]-1&(b>>>16^b))<<2)|0;d=v[c>>2];if((d|0)==-1){break b}f=v[a+64>>2];h=v[a+60>>2];b=h+(d<<3)|0;if((e|0)!=v[b>>2]){while(1){c=f+(d<<2)|0;d=v[c>>2];if((d|0)==-1){break b}b=(d<<3)+h|0;if((e|0)!=v[b>>2]){continue}break}}e=f+(d<<2)|0;v[c>>2]=v[e>>2];c=v[a+92>>2]-1|0;v[a+92>>2]=c;v[a+88>>2]=v[a+88>>2]+1;if((c|0)!=(d|0)){l=b;k=(c<<3)+h|0;b=v[k>>2];v[l>>2]=b;v[((d<<3)+h|0)+4>>2]=v[k+4>>2];v[e>>2]=v[f+(c<<2)>>2];b=b+(b<<15^-1)|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=((v[a+76>>2]-1&(b>>>16^b))<<2)+j|0;b=v[c>>2];e=v[a+92>>2];if((b|0)!=(e|0)){while(1){c=f+(b<<2)|0;b=v[c>>2];if((e|0)!=(b|0)){continue}break}}v[c>>2]=d}v[a+84>>2]=v[a+84>>2]-1}if(!i){break a}b=v[i>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,i)}t[a+100|0]=v[a+92>>2]!=0;xa=g+16|0}function yu(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;d=xa-288|0;xa=d;e=v[b+4>>2];a:{if(!(w[(e&1?v[b+8>>2]:(v[((e>>>22&60)+89188|0)+12>>2]+b|0)+8|0)|0]&8)){t[d+272|0]=1;v[d+280>>2]=0;v[d+284>>2]=64;v[d+276>>2]=d+16;e=Zo(b,d+12|0);KP(a,b+16|0,v[d+12>>2],e,c);if(e){c=v[b>>2];b=0;while(1){a=v[v[d+12>>2]+(b<<2)>>2]+32|0;g=v[a+4>>2];if((g&251658240)==16777216){v[a>>2]=c;v[a+4>>2]=g&1073741823|-2147483648}a=a-16|0;v[a>>2]=v[a>>2]+1;b=b+1|0;if((e|0)!=(b|0)){continue}break}}a=v[d+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[d+276>>2];if((a|0)==(d+16|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}t[d+272|0]=1;v[d+280>>2]=0;v[d+284>>2]=64;v[d+276>>2]=d+16;a=Zo(b,d+12|0);b:{if(!a){break b}c=v[b>>2];b=0;if((a|0)!=1){g=a&-2;while(1){f=b<<2;e=v[f+v[d+12>>2]>>2];h=v[e+36>>2];if((h&251658240)==16777216){v[e+32>>2]=c;v[e+36>>2]=h&1073741823|-2147483648}e=v[v[d+12>>2]+(f|4)>>2];f=v[e+36>>2];if((f&251658240)==16777216){v[e+32>>2]=c;v[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=v[v[d+12>>2]+(b<<2)>>2];b=v[a+36>>2];if((b&251658240)!=16777216){break b}v[a+32>>2]=c;v[a+36>>2]=b&1073741823|-2147483648}a=v[d+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[d+276>>2];if((a|0)==(d+16|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+288|0}function vL(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=xa-16|0;xa=h;n=v[a+8>>2];if(n){p=c+112|0;q=c+100|0;while(1){g=v[a+20>>2]+(l<<3)|0;f=v[g+4>>2];i=v[g>>2];a:{if((i|0)<0){i=v[B(i>>>2&536870911,12)+b>>2];f=v[B(f>>>2&536870911,12)+b>>2];v[h+12>>2]=f>>>0>>0?i:f;v[h+8>>2]=f>>>0>i>>>0?i:f;f=v[c+104>>2];b:{if(f>>>0>=(v[c+108>>2]&2147483647)>>>0){aL(q,h+8|0);break b}i=v[h+12>>2];f=v[c+100>>2]+(f<<3)|0;v[f>>2]=v[h+8>>2];v[f+4>>2]=i;v[c+104>>2]=v[c+104>>2]+1}v[g>>2]=v[g>>2]&2147483647;v[g+4>>2]=v[g+4>>2]&2147483647;l=l+1|0;break a}c:{if((f|0)<0){v[g+4>>2]=f&2147483647;break c}g=f>>>2|0;k=i>>>7|0;m=v[d+4>>2];j=i>>>2|0;if(!(k>>>0>>0&(v[v[d>>2]+(k<<2)>>2]>>>j&1))){o=f>>>7|0;if(m>>>0<=o>>>0|!(v[v[d>>2]+(o<<2)>>2]>>>g&1)){break c}}m=v[e+4>>2];d:{if(v[v[e>>2]+(k<<2)>>2]>>>j&1&m>>>0>k>>>0){break d}k=f>>>7|0;if(k>>>0>>0&(v[v[e>>2]+(k<<2)>>2]>>>g&1)){break d}j=v[B(j,12)+b>>2];g=v[B(g,12)+b>>2];v[h+12>>2]=g>>>0>>0?j:g;v[h+8>>2]=g>>>0>j>>>0?j:g;g=v[c+116>>2];if(g>>>0>=(v[c+120>>2]&2147483647)>>>0){aL(p,h+8|0);break d}j=v[h+12>>2];g=v[c+112>>2]+(g<<3)|0;v[g>>2]=v[h+8>>2];v[g+4>>2]=j;v[c+116>>2]=v[c+116>>2]+1}f=i&65535|f<<16;f=(f<<15^-1)+f|0;f=B(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;_H(a,v[a+4>>2]&(f>>>16^f),l);n=n-1|0;break a}l=l+1|0}if(l>>>0>>0){continue}break}}XH(a);xa=h+16|0}function IJ(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=v[a+1568>>2];if(!b){h=xa-16|0;xa=h;e=a+1280|0;c=v[e+284>>2];if(c){b=v[37696];f=b+12|0;f=(m=f,n=c,o=Ba[v[v[b>>2]+20>>2]](b)|0?46887:63804,p=18373,q=180,l=v[v[f>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}else{f=0}v[h+12>>2]=f;b=v[e+268>>2];a:{if(b>>>0>=(v[e+272>>2]&2147483647)>>>0){b=0;c=e+4|0;d=v[c+268>>2];i=d&2147483647?d<<1:1;b:{if(!i){break b}d=i<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];g=Ba[v[v[b>>2]+20>>2]](b)|0?46887:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,g,16608,553)|0}g=v[c+264>>2];k=(g<<2)+b|0;if((g|0)>0){j=v[c+260>>2];d=b;while(1){v[d>>2]=v[j>>2];j=j+4|0;d=d+4|0;if(k>>>0>d>>>0){continue}break}}v[k>>2]=v[h+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d);g=v[c+264>>2]}v[c+268>>2]=i;v[c+260>>2]=b;v[c+264>>2]=g+1;break a}v[v[e+264>>2]+(b<<2)>>2]=f;v[e+268>>2]=b+1}b=((v[e+276>>2]<<5)+f|0)-32|0;if(f>>>0<=b>>>0){c=v[e+288>>2];while(1){v[b>>2]=c;c=b;b=b-32|0;if(f>>>0<=b>>>0){continue}break}v[e+288>>2]=c}xa=h+16|0;b=v[a+1568>>2]}v[a+1568>>2]=v[b>>2];a=a+1560|0;v[a>>2]=v[a>>2]+1;v[b+28>>2]=0;v[b+20>>2]=-1;v[b+24>>2]=0;v[b+12>>2]=-1;v[b+16>>2]=-1;u[b+10>>1]=0;u[b+4>>1]=0;return b}function AN(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,y=0,z=0,A=0,C=0;o=B(w[a+13|0],48);f=w[a+12|0];p=f<<4;k=o+p|0;if(k){l=f<<(e?3:2);q=v[a+8>>2];r=v[a>>2];a:{b:{f=v[c+7172>>2];if(f){y=v[a+4>>2];i=p+v[f+4>>2]|0;v[f+4>>2]=i;f=v[c+7172>>2];s=v[f+8>>2];z=v[f>>2];m=v[f+12>>2];h=v[f+4>>2];g=v[c+7176>>2];f=o+v[g+4>>2]|0;v[g+4>>2]=f;g=v[c+7176>>2];k=v[g>>2];j=v[g+8>>2];m=j>>>0<=v[g+12>>2]+v[g+4>>2]>>>0|s>>>0<=h+m>>>0;c:{if(l){g=v[c+7180>>2];h=v[g+4>>2]+l|0;v[g+4>>2]=h;n=v[c+7180>>2];g=v[n+8>>2];if(m|g>>>0<=v[n+12>>2]+v[n+4>>2]>>>0){break c}h=(v[n>>2]+g|0)-h|0;break b}h=0;if(!m){break b}}h=0;u[a+12>>1]=0;f=0;g=0;break a}j=(l+k|0)+15&65520;d:{if(j>>>0>=16385){g=Iy(v[c+500>>2],j);break d}e:{g=v[c+504>>2];if(g){i=v[c+508>>2];f=i+j|0;if(f>>>0<16385){break e}}g=Ky(v[c+500>>2]);v[c+508>>2]=j;v[c+504>>2]=g;break d}v[c+508>>2]=f;g=g+i|0}i=w[a+13|0];f=H9(g,r,k);h=l?f+k|0:0;f=f+B(i,48)|0;if(!e){break a}e=w[a+12|0]<<2;H9(e+h|0,e+q|0,e);break a}g=(k+j|0)-f|0;H9(g,r,o);f=(s+z|0)-i|0;H9(f,y,p);if(!e){break a}e=w[a+12|0]<<2;H9(e+h|0,e+q|0,e)}if(l){I9(h,0,l)}v[a+8>>2]=h;v[a+4>>2]=f;v[a>>2]=g}e=x[b+4>>1];f:{if(!e){break f}if(w[b+7|0]&2){A=b,C=H9(rK(c+512|0,e),v[b>>2],x[b+4>>1]),v[A>>2]=C;t[b+7|0]=w[b+7|0]|3;return}if(!d){break f}a=v[b>>2];A=b,C=H9(rK(c+512|0,e+15&65520),a,x[b+4>>1]),v[A>>2]=C}}function VW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=0,g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0);i=xa-16|0;xa=i;g=z[b+56>>2];h=z[b+24>>2];l=z[b+40>>2];m=z[b+48>>2];n=z[b+32>>2];o=z[b+52>>2];p=z[b+20>>2];q=z[b+36>>2];f=v[b+8>>2];r=z[b+16>>2];e=z[c+8>>2];j=z[c>>2];k=z[c+4>>2];b=v[b+4>>2];s=z[b+56>>2];t=z[b+52>>2];u=z[b+72>>2];c=b- -64|0;w=z[c>>2];x=z[b+68>>2];y=z[b+88>>2];A=z[b+80>>2];D=z[b+84>>2];E=z[b+48>>2];v[i+12>>2]=0;g=C(C(g*e)+C(C(h*j)+C(k*l)));h=C(C(m*e)+C(C(r*j)+C(k*n)));e=C(C(o*e)+C(C(p*j)+C(k*q)));z[i+8>>2]=C(y*g)+C(C(A*h)+C(D*e));z[i+4>>2]=C(u*g)+C(C(w*h)+C(e*x));z[i>>2]=C(s*g)+C(C(E*h)+C(e*t));F=d;d=HV(b,i);v[F>>2]=d;g=z[b+88>>2];h=z[b+56>>2];l=z[b+72>>2];m=z[c>>2];n=z[b+80>>2];o=z[b+84>>2];c=v[b+152>>2]+B(d,12)|0;e=z[c+8>>2];p=z[b+52>>2];j=z[c>>2];q=z[b+68>>2];k=z[c+4>>2];r=z[b+48>>2];s=z[f+52>>2];t=z[f+36>>2];u=z[f+20>>2];w=z[f+56>>2];x=z[f+40>>2];y=z[f+24>>2];A=z[f+48>>2];D=z[f+32>>2];E=z[f>>2];G=z[f+16>>2];H=z[f+4>>2];I=z[f+8>>2];v[a+12>>2]=0;g=C(C(g*e)+C(C(h*j)+C(k*l)));h=C(C(n*e)+C(C(r*j)+C(k*m)));e=C(C(o*e)+C(C(p*j)+C(k*q)));z[a+8>>2]=w+C(C(x*g)+C(C(I*h)+C(y*e)));z[a+4>>2]=s+C(C(t*g)+C(C(H*h)+C(e*u)));z[a>>2]=A+C(C(D*g)+C(C(E*h)+C(e*G)));xa=i+16|0}function D5(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);q=z[d+20>>2];r=z[d+24>>2];n=z[c+36>>2];o=z[c+32>>2];p=z[c+40>>2];s=z[d+16>>2];f=z[d+12>>2];g=z[c+28>>2];h=z[c+16>>2];j=z[d>>2];k=z[d+4>>2];i=z[c+20>>2];l=z[d+8>>2];m=z[c+24>>2];z[a+12>>2]=C(C(C(f*g)-C(h*j))-C(k*i))-C(l*m);z[a+8>>2]=C(C(j*i)+C(C(f*m)+C(l*g)))-C(h*k);z[a+4>>2]=C(C(l*h)+C(C(f*i)+C(k*g)))-C(m*j);z[a>>2]=C(C(k*m)+C(C(f*h)+C(j*g)))-C(i*l);g=C(p+p);h=C(o+o);i=C(n+n);m=C(C(l*g)+C(C(j*h)+C(k*i)));n=C(C(f*f)+C(-.5));z[a+24>>2]=r+C(C(l*m)+C(C(g*n)+C(f*C(C(j*i)-C(h*k)))));z[a+20>>2]=q+C(C(k*m)+C(C(i*n)+C(f*C(C(l*h)-C(g*j)))));z[a+16>>2]=s+C(C(j*m)+C(C(h*n)+C(f*C(C(k*g)-C(i*l)))));q=z[e+20>>2];r=z[e+24>>2];n=z[c- -64>>2];o=z[c+60>>2];p=z[c+68>>2];s=z[e+16>>2];f=z[e+12>>2];g=z[c+56>>2];h=z[c+44>>2];j=z[e>>2];k=z[e+4>>2];i=z[c+48>>2];l=z[e+8>>2];m=z[c+52>>2];z[b+12>>2]=C(C(C(f*g)-C(h*j))-C(k*i))-C(l*m);z[b+8>>2]=C(C(j*i)+C(C(f*m)+C(l*g)))-C(h*k);z[b+4>>2]=C(C(l*h)+C(C(f*i)+C(k*g)))-C(m*j);z[b>>2]=C(C(k*m)+C(C(f*h)+C(j*g)))-C(i*l);g=C(p+p);h=C(o+o);i=C(n+n);m=C(C(l*g)+C(C(j*h)+C(k*i)));n=C(C(f*f)+C(-.5));z[b+24>>2]=r+C(C(l*m)+C(C(g*n)+C(f*C(C(j*i)-C(h*k)))));z[b+20>>2]=q+C(C(k*m)+C(C(i*n)+C(f*C(C(l*h)-C(g*j)))));z[b+16>>2]=s+C(C(j*m)+C(C(h*n)+C(f*C(C(k*g)-C(i*l)))))}function pL(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=v[a+76>>2];k=h+(b<<3)|0;g=v[k>>2];a:{if(!(t[k+4|0]&1)){t[a+169|0]=1;v[a+120>>2]=0;c=v[a+116>>2];if(g>>>0>>0){if(v[a+92>>2]!=(c|0)){i=v[a+108>>2];f=c-1|0;d=x[i+(f<<1)>>1];c=v[a+100>>2];e=c+B(g,24)|0;c=c+B(f,24)|0;j=v[c+4>>2];v[e>>2]=v[c>>2];v[e+4>>2]=j;j=v[c+20>>2];v[e+16>>2]=v[c+16>>2];v[e+20>>2]=j;j=v[c+12>>2];v[e+8>>2]=v[c+8>>2];v[e+12>>2]=j;u[i+(g<<1)>>1]=d;v[h+(d<<3)>>2]=g;c=v[a+116>>2];g=f}v[a+116>>2]=c-1}c=v[a+92>>2]-1|0;v[a+92>>2]=c;d=v[a+100>>2];f=v[a+108>>2];break a}t[a+168|0]=1;d=v[a+128>>2];i=g>>>5|0;b:{if(d>>>0>i>>>0){h=g&31;c=v[a+124>>2];break b}h=g&31;e=(g+128>>>5|0)+((h|0)!=0)|0;if(e){c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,e<<2,24422,13406,274)|0;d=v[a+128>>2]}if(d){H9(c,v[a+124>>2],d<<2);f=v[a+128>>2]}if((e|0)!=(f|0)){I9((f<<2)+c|0,0,e-f<<2)}f=v[a+124>>2];if(f){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,f)}v[a+128>>2]=e;v[a+124>>2]=c}f=(i<<2)+c|0;v[f>>2]=v[f>>2]|1<>2]-1|0;v[a+84>>2]=c;d=v[a+96>>2];f=v[a+104>>2]}h=x[f+(c<<1)>>1];i=v[a+76>>2];e=d+B(g,24)|0;c=d+B(c,24)|0;d=v[c+4>>2];v[e>>2]=v[c>>2];v[e+4>>2]=d;d=v[c+20>>2];v[e+16>>2]=v[c+16>>2];v[e+20>>2]=d;d=v[c+12>>2];v[e+8>>2]=v[c+8>>2];v[e+12>>2]=d;u[(g<<1)+f>>1]=h;v[i+(h<<3)>>2]=g;v[k>>2]=v[a+72>>2];v[k+4>>2]=-1;v[a+72>>2]=b;v[a+64>>2]=v[a+64>>2]-1}function qx(a){var b=0,c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),w=C(0),x=0,y=0;r=v[a+336>>2];if(r){x=v[a+236>>2];y=v[a+332>>2];a=0;while(1){b=v[((a<<5)+y|0)+16>>2];j=z[b+120>>2];k=z[b+112>>2];f=z[b+116>>2];c=z[b+8>>2];h=z[b+4>>2];l=z[b+12>>2];d=z[b>>2];e=z[b+124>>2];b=B(a,112)+x|0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b- -64>>2]=0;v[b+56>>2]=0;v[b+60>>2]=0;v[b+48>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;e=e==C(0)?C(0):C(C(1)/e);z[b+68>>2]=e;z[b+52>>2]=e;z[b+36>>2]=e;g=j==C(0)?C(0):C(C(1)/j);i=d;d=C(d+d);n=C(C(1)-C(i*d));e=C(h+h);s=C(h*e);j=C(n-s);i=k==C(0)?C(0):C(C(1)/k);q=C(d*c);t=C(e*l);k=C(q-t);m=C(e*c);o=C(d*l);e=C(m+o);f=f==C(0)?C(0):C(C(1)/f);z[b+104>>2]=C(C(g*j)*j)+C(C(C(i*k)*k)+C(e*C(e*f)));p=C(d*h);d=C(c+c);u=C(l*d);h=C(p+u);l=C(i*h);w=C(c*d);d=C(n-w);n=C(f*d);m=C(m-o);o=C(g*m);z[b+88>>2]=C(o*m)+C(C(l*h)+C(d*n));p=C(p-u);c=C(f*p);f=g;g=C(q+t);f=C(f*g);q=C(f*g);g=i;i=C(C(C(1)-s)-w);g=C(g*i);z[b+72>>2]=q+C(C(g*i)+C(p*c));h=C(C(f*m)+C(C(g*h)+C(d*c)));z[b+84>>2]=h;z[b+76>>2]=h;c=C(C(f*j)+C(C(g*k)+C(e*c)));z[b+96>>2]=c;z[b+80>>2]=c;c=C(C(o*j)+C(C(l*k)+C(e*n)));z[b+92>>2]=c;z[b+100>>2]=c;a=a+1|0;if((r|0)!=(a|0)){continue}break}}}function OB(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=xa-16|0;xa=g;j=-1;a:{b:{switch(d|0){case 0:d=v[b+4>>2];if(!d){break a}KB(a,1);v[a+4>>2]=d;if(!tY(b,a+12|0,c,a)){break a}b=v[37696];c=b+12|0;b=(p=c,q=16,r=Ba[v[v[b>>2]+20>>2]](b)|0?40519:63804,s=12118,t=281,o=v[v[c>>2]+8>>2],Ba[o](p|0,q|0,r|0,s|0,t|0)|0);v[b>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[a+48>>2]=b;v[g+4>>2]=v[a+12>>2];PB(b,g+4|0);j=0;break a;case 1:break b;default:break a}}if(v[v[a+48>>2]+4>>2]){if(!e){j=1;break a}n=a+12|0;j=1;while(1){d=v[a+48>>2];f=v[d+4>>2];if(!f){break a}i=v[d+12>>2];h=i+1|0;v[d+12>>2]=h;i=v[v[d>>2]+(i<<2)>>2];if((f|0)==(h|0)){v[d+12>>2]=0;v[d+4>>2]=0}rY(i,b,c,n,v[a>>2]);h=v[i+24>>2];c:{if(!h){break c}l=h+36|0;v[g+8>>2]=l;k=v[d+8>>2]&2147483647;f=v[d+4>>2];d:{if(k>>>0<=f>>>0){PB(d,g+8|0);k=v[d+8>>2]&2147483647;f=v[d+4>>2];break d}v[v[d>>2]+(f<<2)>>2]=l;f=f+1|0;v[d+4>>2]=f}v[g+12>>2]=h;if(f>>>0>=k>>>0){PB(d,g+12|0);break c}v[v[d>>2]+(f<<2)>>2]=h;v[d+4>>2]=f+1}d=v[i+32>>2];v[c+4>>2]=d+v[c+4>>2];m=d+m|0;if(m>>>0>>0){continue}break}break a}LB(a,b,c);b=v[a+48>>2];if(b){c=v[b+8>>2];e:{if((c|0)<0|!(c&2147483647)){break e}c=v[b>>2];if(!c){break e}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}j=0;v[a+48>>2]=0}xa=g+16|0;return j}function tE(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=xa-16|0;xa=j;a:{if(!v[a+684>>2]){break a}g=(b<<15^-1)+b|0;g=B(g>>>10^g,9);g=g>>>6^g;g=(g<<11^-1)+g|0;h=v[v[a+660>>2]+((v[a+668>>2]-1&(g>>>16^g))<<2)>>2];if((h|0)==-1){break a}g=v[a+656>>2];f=v[a+652>>2];while(1){if(v[f+(h<<3)>>2]!=(b|0)){h=v[g+(h<<2)>>2];if((h|0)!=-1){continue}break a}break}k=v[a+644>>2];g=f+(h<<3)|0;i=v[g+4>>2];f=v[e+4>>2];b=v[e>>2];v[j>>2]=b;v[j+4>>2]=f;v[j+8>>2]=b;v[j+12>>2]=f;f=xa-16|0;xa=f;i=k+B(i,44)|0;gC(v[i+4>>2],c,d,j,1);c=v[v[v[i+4>>2]+16>>2]+(v[c>>2]<<2)>>2];v[f+8>>2]=0;v[f>>2]=0;v[f+4>>2]=0;ZC(f,8);d=PC(v[i>>2],c,v[v[i+4>>2]+8>>2],f);b=v[f+4>>2];b:{if(b){c:{if(v[d+40>>2]|!d){break c}h=v[d+36>>2];if(!v[h>>2]){break c}c=0;while(1){v[v[v[i+8>>2]>>2]+(v[((c<<2)+h|0)+4>>2]<<2)>>2]=d;c=c+1|0;h=v[d+36>>2];if(c>>>0>2]){continue}break}}b=b>>>0>1?b:1;d=0;while(1){c=0;e=v[v[f>>2]+(d<<2)>>2];h=v[e+36>>2];if(v[h>>2]){while(1){v[v[v[i+8>>2]>>2]+(v[((c<<2)+h|0)+4>>2]<<2)>>2]=e;c=c+1|0;h=v[e+36>>2];if(c>>>0>2]){continue}break}}d=d+1|0;if((b|0)!=(d|0)){continue}break}break b}v[v[v[i+8>>2]>>2]+(c<<2)>>2]=d}b=v[f+8>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=v[f>>2];if(!c){break d}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+16|0;rE(a,v[g+4>>2]);i=1}xa=j+16|0;return i|0}function TW(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0);h=xa-16|0;xa=h;f=z[b+56>>2];g=z[b+24>>2];k=z[b+40>>2];l=z[b+48>>2];m=z[b+32>>2];n=z[b+52>>2];o=z[b+20>>2];p=z[b+36>>2];e=v[b+8>>2];q=z[b+16>>2];d=z[c+8>>2];i=z[c>>2];j=z[c+4>>2];b=v[b+4>>2];r=z[b+56>>2];s=z[b+52>>2];t=z[b+72>>2];c=b- -64|0;u=z[c>>2];w=z[b+68>>2];x=z[b+88>>2];y=z[b+80>>2];A=z[b+84>>2];D=z[b+48>>2];v[h+12>>2]=0;f=C(C(f*d)+C(C(g*i)+C(j*k)));g=C(C(l*d)+C(C(q*i)+C(j*m)));d=C(C(n*d)+C(C(o*i)+C(j*p)));z[h+8>>2]=C(x*f)+C(C(y*g)+C(A*d));z[h+4>>2]=C(t*f)+C(C(u*g)+C(d*w));z[h>>2]=C(r*f)+C(C(D*g)+C(d*s));E=HV(b,h);f=z[b+88>>2];g=z[b+56>>2];k=z[b+72>>2];l=z[c>>2];m=z[b+80>>2];n=z[b+84>>2];c=v[b+152>>2]+B(E,12)|0;d=z[c+8>>2];o=z[b+52>>2];i=z[c>>2];p=z[b+68>>2];j=z[c+4>>2];q=z[b+48>>2];r=z[e+52>>2];s=z[e+36>>2];t=z[e+20>>2];u=z[e+56>>2];w=z[e+40>>2];x=z[e+24>>2];y=z[e+48>>2];A=z[e+32>>2];D=z[e>>2];F=z[e+16>>2];G=z[e+4>>2];H=z[e+8>>2];v[a+12>>2]=0;f=C(C(f*d)+C(C(g*i)+C(j*k)));g=C(C(m*d)+C(C(q*i)+C(j*l)));d=C(C(n*d)+C(C(o*i)+C(j*p)));z[a+8>>2]=u+C(C(w*f)+C(C(H*g)+C(x*d)));z[a+4>>2]=r+C(C(s*f)+C(C(G*g)+C(d*t)));z[a>>2]=y+C(C(A*f)+C(C(D*g)+C(d*F)));xa=h+16|0}function Ql(a,b){a=a|0;b=b|0;var c=C(0),d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);d=xa+-64|0;xa=d;a=a+8|0;n=v[a+384>>2];a:{if(!n){break a}Ba[v[v[n>>2]+112>>2]](d,n);g=z[b+12>>2];e=z[b+8>>2];o=z[b>>2];h=z[b+4>>2];i=z[d>>2];c=C(z[b+16>>2]-z[d+16>>2]);f=C(c+c);c=C(z[b+20>>2]-z[d+20>>2]);l=C(c+c);j=z[d+4>>2];k=z[d+8>>2];c=C(z[b+24>>2]-z[d+24>>2]);m=C(c+c);p=C(C(C(C(-i)*f)-C(l*j))-C(k*m));c=z[d+12>>2];q=C(C(c*c)+C(-.5));r=C(C(C(m*q)+C(c*C(C(j*f)-C(i*l))))-C(k*p));z[d+56>>2]=r;s=C(C(C(l*q)+C(c*C(C(i*m)-C(k*f))))-C(j*p));z[d+52>>2]=s;l=C(C(C(f*q)+C(c*C(C(k*l)-C(j*m))))-C(i*p));z[d+48>>2]=l;f=e;e=C(C(1)/C(K(C(C(g*g)+C(C(e*e)+C(C(o*o)+C(h*h)))))));f=C(f*e);h=C(h*e);g=C(g*e);e=C(o*e);o=C(C(k*f)+C(C(j*h)+C(C(c*g)+C(i*e))));z[d+44>>2]=o;m=C(C(e*j)+C(C(C(c*f)-C(g*k))-C(i*h)));z[d+40>>2]=m;p=C(C(f*i)+C(C(C(c*h)-C(g*j))-C(k*e)));z[d+36>>2]=p;c=C(C(h*k)+C(C(C(c*e)-C(g*i))-C(j*f)));z[d+32>>2]=c;b:{c:{d:{n=v[a+4>>2];switch((n>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}$E(a+12|0,d+32|0);break a}b=v[a+8>>2];if(!b){b=Pu(v[a>>2],n>>>24&15);v[a+8>>2]=b}z[b+16>>2]=l;z[b+12>>2]=o;z[b+8>>2]=m;z[b+4>>2]=p;z[b>>2]=c;z[b+24>>2]=r;z[b+20>>2]=s;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=d- -64|0}function Hx(a,b){var c=0,d=C(0),e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=C(0),u=C(0),x=C(0),A=0,D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);q=v[b+28>>2];s=v[b+8>>2];k=v[b+4>>2];b=k;v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;if(y[a+336>>2]>=2){b=1;while(1){f=v[a+340>>2]+B(b,160)|0;d=z[f+124>>2];l=b<<5;c=(v[(l+v[a+332>>2]|0)+24>>2]<<5)+k|0;m=z[c>>2];e=z[f+120>>2];n=z[c+4>>2];t=C(C(C(d*m)-C(e*n))+z[c+24>>2]);o=z[c+8>>2];g=C(e*o);e=z[f+128>>2];u=C(C(g-C(e*m))+z[c+20>>2]);x=C(C(C(e*n)-C(d*o))+z[c+16>>2]);p=C(0);a:{if(!q){e=C(0);g=C(0);h=C(0);i=C(0);j=C(0);break a}e=C(0);g=C(0);h=C(0);i=C(0);j=C(0);c=v[a+344>>2]+B(b,80)|0;r=w[c+76|0];if(!r){break a}A=(v[c+72>>2]<<2)+q|0;D=v[a+272>>2]+B(b,76)|0;f=0;while(1){d=z[(f<<2)+A>>2];c=B(f,24)+D|0;h=C(h+C(d*z[c+12>>2]));g=C(g+C(d*z[c+8>>2]));e=C(e+C(d*z[c+4>>2]));p=C(p+C(d*z[c>>2]));j=C(j+C(d*z[c+20>>2]));i=C(i+C(d*z[c+16>>2]));f=f+1|0;if((r|0)!=(f|0)){continue}break}}c=l+s|0;d=z[c+20>>2];E=z[c+24>>2];F=z[c>>2];G=z[c+4>>2];H=z[c+8>>2];I=z[c+16>>2];c=k+l|0;v[c+28>>2]=0;v[c+12>>2]=0;z[c+16>>2]=h+C(x+I);z[c+8>>2]=g+C(o+H);z[c+4>>2]=e+C(n+G);z[c>>2]=p+C(m+F);z[c+24>>2]=j+C(t+E);z[c+20>>2]=i+C(u+d);b=b+1|0;if(b>>>0>2]){continue}break}}}function eV(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);v=z[a+8>>2];l=z[b+12>>2];f=C(l+l);d=z[b+20>>2];n=C(f*d);k=z[b+16>>2];c=C(k+k);e=z[b+24>>2];h=C(c*e);m=C(n+h);g=z[b>>2];q=C(k*c);i=C(d+d);r=C(d*i);u=C(C(C(1)-q)-r);w=C(g*u);s=C(c*d);j=C(f*e);d=C(s-j);c=C(f*k);e=C(i*e);k=C(c+e);i=z[b+4>>2];x=C(k*i);t=C(C(1)-C(l*f));f=C(t-q);l=C(n-h);h=z[b+8>>2];q=C(l*h);o=C(C(C(m*w)+C(d*x))+C(f*q));c=C(c-e);y=C(g*c);e=C(t-r);r=C(e*i);n=C(s+j);s=C(n*h);j=C(C(C(m*y)+C(d*r))+C(f*s));t=z[a+20>>2];A=m;m=C(g*m);g=d;d=C(d*i);p=f;f=C(f*h);g=C(C(C(A*m)+C(g*d))+C(p*f));i=z[a+32>>2];z[a+32>>2]=C(C(v*o)+C(j*t))+C(g*i);h=z[a+4>>2];B=z[a+16>>2];D=z[a+28>>2];z[a+28>>2]=C(C(h*o)+C(j*B))+C(g*D);E=z[a>>2];A=C(E*o);o=z[a+12>>2];p=g;g=z[a+24>>2];z[a+24>>2]=C(A+C(j*o))+C(p*g);j=C(C(C(c*w)+C(e*x))+C(n*q));p=C(C(C(c*y)+C(e*r))+C(n*s));c=C(C(C(c*m)+C(e*d))+C(n*f));z[a+20>>2]=C(C(v*j)+C(t*p))+C(i*c);z[a+16>>2]=C(C(h*j)+C(p*B))+C(c*D);z[a+12>>2]=C(C(E*j)+C(p*o))+C(c*g);c=C(C(C(u*w)+C(k*x))+C(l*q));e=C(C(C(u*y)+C(k*r))+C(l*s));d=C(C(C(u*m)+C(k*d))+C(l*f));z[a+8>>2]=C(C(v*c)+C(t*e))+C(i*d);z[a+4>>2]=C(C(h*c)+C(e*B))+C(d*D);z[a>>2]=C(C(E*c)+C(e*o))+C(d*g)}function dR(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:{c=v[a+20>>2];d=v[v[a+28>>2]+2168>>2];f=v[d>>2];e=v[f+92>>2];if(e){g=v[f- -64>>2];a=e<<2;h=Cx(v[f+976>>2],(a+B(e>>>6|0,56)|0)+56|0,1);if(h){b=v[f+4612>>2];b=Ba[v[v[b>>2]+4>>2]](b)|0;b=Ba[v[v[b>>2]+4>>2]](b)|0;v[d+1904>>2]=h;k=e>>>0>64&b>>>0>1;b:{if(k){v[d+1884>>2]=c;v[d+1888>>2]=1;if(c){Ba[v[v[c>>2]+16>>2]](c);v[d+1880>>2]=v[v[d+1884>>2]+16>>2]}c=d+1864|0;a=a+h|0;i=d+1912|0;j=d+1908|0;while(1){b=v[f+16>>2];l=v[f+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=b;v[a+12>>2]=l;v[a+48>>2]=f;v[a+44>>2]=i;v[a+40>>2]=h;v[a+36>>2]=j;v[a+28>>2]=g;v[a>>2]=131248;v[a+20>>2]=c;v[a+24>>2]=1;b=e>>>0<64?e:64;v[a+32>>2]=b;Ba[v[v[c>>2]+16>>2]](c);v[a+16>>2]=v[v[a+20>>2]+16>>2];Ba[v[v[a>>2]+20>>2]](a);a=a+56|0;g=(b<<2)+g|0;e=e-b|0;if(e){continue}break}break b}a=a+h|0;b=d+1912|0;i=d+1908|0;while(1){c=v[f+16>>2];j=v[f+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=c;v[a+12>>2]=j;v[a+48>>2]=f;v[a+44>>2]=b;v[a+40>>2]=h;v[a+36>>2]=i;v[a+28>>2]=g;v[a>>2]=131248;c=e>>>0<64?e:64;v[a+32>>2]=c;CJ(a);a=a+56|0;g=(c<<2)+g|0;e=e-c|0;if(e){continue}break}}if(k){a=v[d+1880>>2];Ba[v[v[a>>2]+72>>2]](a,d+1864|0);break a}DJ(v[d+1892>>2]);break a}a=v[37696];a=Ba[v[v[a>>2]+4>>2]](a)|0;Ba[v[v[a>>2]+8>>2]](a,16,67142,11474,1473)}}}function Tl(a,b){a=a|0;b=b|0;var c=C(0),d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0);d=xa+-64|0;xa=d;a=a+8|0;p=v[a+388>>2];Ba[v[v[p>>2]+112>>2]](d,p);g=z[b+12>>2];e=z[b+8>>2];n=z[b>>2];h=z[b+4>>2];i=z[d>>2];c=C(z[b+16>>2]-z[d+16>>2]);f=C(c+c);c=C(z[b+20>>2]-z[d+20>>2]);l=C(c+c);j=z[d+4>>2];k=z[d+8>>2];c=C(z[b+24>>2]-z[d+24>>2]);m=C(c+c);o=C(C(C(C(-i)*f)-C(l*j))-C(k*m));c=z[d+12>>2];q=C(C(c*c)+C(-.5));r=C(C(C(m*q)+C(c*C(C(j*f)-C(i*l))))-C(k*o));z[d+56>>2]=r;s=C(C(C(l*q)+C(c*C(C(i*m)-C(k*f))))-C(j*o));z[d+52>>2]=s;l=C(C(C(f*q)+C(c*C(C(k*l)-C(j*m))))-C(i*o));z[d+48>>2]=l;f=e;e=C(C(1)/C(K(C(C(g*g)+C(C(e*e)+C(C(n*n)+C(h*h)))))));f=C(f*e);h=C(h*e);g=C(g*e);e=C(n*e);n=C(C(k*f)+C(C(j*h)+C(C(c*g)+C(i*e))));z[d+44>>2]=n;m=C(C(e*j)+C(C(C(c*f)-C(g*k))-C(i*h)));z[d+40>>2]=m;o=C(C(f*i)+C(C(C(c*h)-C(g*j))-C(k*e)));z[d+36>>2]=o;c=C(C(h*k)+C(C(C(c*e)-C(g*i))-C(j*f)));z[d+32>>2]=c;a:{b:{c:{d:{p=v[a+4>>2];switch((p>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}aF(a+12|0,d+32|0);break a}b=v[a+8>>2];if(!b){b=Pu(v[a>>2],p>>>24&15);v[a+8>>2]=b}z[b+28>>2]=c;z[b+52>>2]=r;z[b+48>>2]=s;z[b+44>>2]=l;z[b+40>>2]=n;z[b+36>>2]=m;z[b+32>>2]=o;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|2}xa=d- -64|0}function Kx(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=0,u=C(0),w=C(0),x=C(0),y=C(0),A=0;t=v[a+336>>2];if(t){A=v[a+332>>2];while(1){i=v[((q<<5)+A|0)+16>>2];c=z[i+124>>2];a=B(q,112)+b|0;v[a+32>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=0;v[a+4>>2]=0;v[a- -64>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;v[a+48>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;c=c==C(0)?C(0):C(C(1)/c);z[a+68>>2]=c;z[a+52>>2]=c;z[a+36>>2]=c;j=z[i>>2];d=C(j+j);c=z[i+8>>2];r=C(d*c);l=z[i+4>>2];k=C(l+l);f=z[i+12>>2];u=C(k*f);s=C(r-u);n=C(C(1)-C(j*d));w=C(l*k);j=C(n-w);g=z[i+120>>2];g=g==C(0)?C(0):C(C(1)/g);h=z[i+112>>2];h=h==C(0)?C(0):C(C(1)/h);m=C(k*c);o=C(d*f);k=C(m+o);e=z[i+116>>2];e=e==C(0)?C(0):C(C(1)/e);z[a+104>>2]=C(C(j*g)*j)+C(C(C(s*h)*s)+C(k*C(k*e)));p=C(d*l);d=f;f=C(c+c);x=C(d*f);d=C(p+x);l=C(d*h);y=C(c*f);f=C(n-y);n=C(f*e);m=C(m-o);o=C(m*g);z[a+88>>2]=C(o*m)+C(C(l*d)+C(f*n));p=C(p-x);c=C(p*e);e=C(r+u);g=C(e*g);r=C(g*e);e=C(C(C(1)-w)-y);h=C(e*h);z[a+72>>2]=r+C(C(h*e)+C(p*c));d=C(C(g*m)+C(C(h*d)+C(f*c)));z[a+84>>2]=d;z[a+76>>2]=d;c=C(C(g*j)+C(C(h*s)+C(k*c)));z[a+96>>2]=c;z[a+80>>2]=c;c=C(C(o*j)+C(C(l*s)+C(k*n)));z[a+100>>2]=c;z[a+92>>2]=c;q=q+1|0;if((t|0)!=(q|0)){continue}break}}}function Qw(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0);j=z[b+164>>2];k=z[b+100>>2];l=z[b+68>>2];m=z[b+36>>2];n=z[b+132>>2];o=z[b+168>>2];p=z[b+104>>2];q=z[b+72>>2];r=z[b+40>>2];s=z[b+136>>2];t=z[b+176>>2];u=z[b+112>>2];w=z[b+80>>2];x=z[b+48>>2];y=z[b+144>>2];A=z[b+180>>2];B=z[b+116>>2];D=z[b+84>>2];E=z[b+20>>2];F=z[b+52>>2];G=z[b+148>>2];H=z[b+184>>2];I=z[b+120>>2];J=z[b+88>>2];K=z[b+24>>2];L=z[b+56>>2];M=z[b+152>>2];d=z[c+24>>2];e=z[c+20>>2];N=z[b+4>>2];O=z[b+8>>2];P=z[b+16>>2];Q=z[b+160>>2];R=z[b+128>>2];f=z[c+16>>2];S=z[b+96>>2];g=z[c+8>>2];T=z[b+64>>2];h=z[c>>2];U=z[b>>2];i=z[c+4>>2];V=z[b+32>>2];v[a+28>>2]=0;v[a+12>>2]=0;z[a>>2]=C(C(C(C(C(U*h)+C(V*i))+C(T*g))+C(S*f))+C(R*e))+C(Q*d);z[a+24>>2]=C(C(C(C(C(K*h)+C(L*i))+C(J*g))+C(I*f))+C(M*e))+C(H*d);z[a+20>>2]=C(C(C(C(C(E*h)+C(F*i))+C(D*g))+C(B*f))+C(G*e))+C(A*d);z[a+16>>2]=C(C(C(C(C(P*h)+C(x*i))+C(w*g))+C(u*f))+C(y*e))+C(t*d);z[a+8>>2]=C(C(C(C(C(O*h)+C(r*i))+C(q*g))+C(p*f))+C(s*e))+C(o*d);z[a+4>>2]=C(C(C(C(C(N*h)+C(m*i))+C(l*g))+C(k*f))+C(n*e))+C(j*d)}function H1(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0);a:{s=z[f>>2];n=C(z[g>>2]-s);u=z[d+4>>2];w=z[d>>2];B=z[f+4>>2];t=C(z[g+4>>2]-B);j=C(C(n*u)-C(w*t));p=z[a+8>>2];x=z[d+8>>2];q=z[f+8>>2];o=C(z[g+8>>2]-q);k=C(C(t*x)-C(u*o));D=z[a>>2];l=C(C(o*w)-C(x*n));E=z[a+4>>2];y=C(C(j*p)+C(C(k*D)+C(l*E)));r=C(C(j*q)+C(C(k*s)+C(B*l)));m=z[b+8>>2];A=z[b>>2];G=z[b+4>>2];if(C(C(y-r)*C(C(C(j*m)+C(C(k*A)+C(l*G)))-r))>C(0)){break a}H=j;j=C(m-p);m=k;k=C(A-D);F=l;l=C(G-E);m=C(C(H*j)+C(C(m*k)+C(F*l)));if(m==C(0)){break a}A=C(C(w*l)-C(k*u));F=p;p=C(C(r-y)/m);r=C(F+C(j*p));y=C(r-q);m=C(C(u*j)-C(l*x));q=C(D+C(k*p));s=C(q-s);j=C(C(x*k)-C(j*w));k=C(E+C(l*p));l=C(k-B);j=C(C(C(A*y)+C(C(m*s)+C(j*l)))/C(C(A*o)+C(C(m*n)+C(t*j))));if(!(j<=C(1))|!(j>=C(0))){break a}o=C(y-C(o*j));n=C(s-C(n*j));j=C(l-C(t*j));if(!(z[c>>2]>C(C(o*o)+C(C(n*n)+C(j*j))))){break a}a=(v[i>>2]<<6)+h|0;v[a+12>>2]=0;z[a+8>>2]=r;z[a+4>>2]=k;z[a>>2]=q;a=(v[i>>2]<<6)+h|0;z[a+16>>2]=q-n;v[a+28>>2]=0;z[a+24>>2]=r-o;z[a+20>>2]=k-j;t=z[d+8>>2];b=v[d+4>>2];a=(v[i>>2]<<6)+h|0;v[a+32>>2]=v[d>>2];v[a+36>>2]=b;z[a+44>>2]=C(o*x)+C(C(n*w)+C(j*u));z[a+40>>2]=t;a=v[i>>2];v[i>>2]=a+1;v[((a<<6)+h|0)+48>>2]=e}}function LI(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,x=0,A=0,D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0;a:{if(!g|!c){break a}while(1){n=(s<<3)+e|0;o=v[n>>2];u=v[n+4>>2];while(1){n=l;l=l+1|0;m=v[(n<<3)+i>>2];if(m>>>0<=o>>>0){continue}break}if(m>>>0<=u>>>0){D=(s<<2)+d|0;l=(s<<4)+f|0;E=z[l+12>>2];F=z[l+4>>2];G=z[l+8>>2];H=z[l>>2];o=n;while(1){l=(o<<4)+j|0;b:{if(z[l+8>>2]>2]>G|(z[l+12>>2]>2]>E)){break b}l=v[D>>2];p=v[(l<<2)+k>>2];m=v[(o<<2)+h>>2];q=v[(m<<2)+k>>2];if((p|0)==(q|0)|!w[(p<<2&12|q&3)+b|0]){break b}q=l>>>0>>0?l:m;t=l>>>0>m>>>0?l:m;l=q&65535|t<<16;l=(l<<15^-1)+l|0;l=B(l>>>10^l,9);l=l>>>6^l;l=(l<<11^-1)+l|0;x=l>>>16^l;m=x&v[a+4>>2];c:{p=v[a+12>>2];d:{if(!p){break d}l=v[(m<<2)+p>>2];if((l|0)==-1){break d}I=v[a+16>>2];J=v[a+20>>2];while(1){r=(l<<3)+J|0;if((q|0)==(v[r>>2]&2147483647)){A=v[r+4>>2];if((A&2147483647)==(t|0)){break c}}l=v[(l<<2)+I>>2];if((l|0)!=-1){continue}break}}l=v[a+8>>2];if(l>>>0>=y[a>>2]){m=ZH(a,x);p=v[a+12>>2];l=v[a+8>>2]}v[a+8>>2]=l+1;r=v[a+20>>2]+(l<<3)|0;v[r+4>>2]=t;v[r>>2]=q|-2147483648;m=(m<<2)+p|0;v[v[a+16>>2]+(l<<2)>>2]=v[m>>2];v[m>>2]=l;break b}v[r+4>>2]=A|-2147483648}o=o+1|0;if(y[(o<<3)+i>>2]<=u>>>0){continue}break}}if(g>>>0<=n>>>0){break a}l=n;s=s+1|0;if(s>>>0>>0){continue}break}}}function KI(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,x=0,A=0,D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0;a:{if(!g|!c){break a}while(1){n=(s<<3)+e|0;o=v[n>>2];u=v[n+4>>2];while(1){n=l;l=l+1|0;m=v[(n<<3)+i>>2];if(m>>>0>>0){continue}break}if(m>>>0<=u>>>0){D=(s<<2)+d|0;l=(s<<4)+f|0;E=z[l+12>>2];F=z[l+4>>2];G=z[l+8>>2];H=z[l>>2];o=n;while(1){l=(o<<4)+j|0;b:{if(z[l+8>>2]>2]>G|(z[l+12>>2]>2]>E)){break b}l=v[D>>2];p=v[(l<<2)+k>>2];m=v[(o<<2)+h>>2];q=v[(m<<2)+k>>2];if((p|0)==(q|0)|!w[(p<<2&12|q&3)+b|0]){break b}q=l>>>0>>0?l:m;t=l>>>0>m>>>0?l:m;l=q&65535|t<<16;l=(l<<15^-1)+l|0;l=B(l>>>10^l,9);l=l>>>6^l;l=(l<<11^-1)+l|0;x=l>>>16^l;m=x&v[a+4>>2];c:{p=v[a+12>>2];d:{if(!p){break d}l=v[(m<<2)+p>>2];if((l|0)==-1){break d}I=v[a+16>>2];J=v[a+20>>2];while(1){r=(l<<3)+J|0;if((q|0)==(v[r>>2]&2147483647)){A=v[r+4>>2];if((A&2147483647)==(t|0)){break c}}l=v[(l<<2)+I>>2];if((l|0)!=-1){continue}break}}l=v[a+8>>2];if(l>>>0>=y[a>>2]){m=ZH(a,x);p=v[a+12>>2];l=v[a+8>>2]}v[a+8>>2]=l+1;r=v[a+20>>2]+(l<<3)|0;v[r+4>>2]=t;v[r>>2]=q|-2147483648;m=(m<<2)+p|0;v[v[a+16>>2]+(l<<2)>>2]=v[m>>2];v[m>>2]=l;break b}v[r+4>>2]=A|-2147483648}o=o+1|0;if(y[(o<<3)+i>>2]<=u>>>0){continue}break}}if(g>>>0<=n>>>0){break a}l=n;s=s+1|0;if(s>>>0>>0){continue}break}}}function I1(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),G=C(0),H=C(0),I=C(0);a:{w=z[f>>2];y=C(z[g>>2]-w);n=z[d+4>>2];r=z[d>>2];D=z[f+4>>2];A=C(z[g+4>>2]-D);k=C(C(y*n)-C(r*A));q=z[a+8>>2];s=z[d+8>>2];o=z[f+8>>2];m=C(z[g+8>>2]-o);j=C(C(A*s)-C(n*m));E=z[a>>2];l=C(C(m*r)-C(s*y));G=z[a+4>>2];x=C(C(k*q)+C(C(j*E)+C(l*G)));t=C(C(k*o)+C(C(j*w)+C(D*l)));p=z[b+8>>2];B=z[b>>2];I=z[b+4>>2];if(C(C(x-t)*C(C(C(k*p)+C(C(j*B)+C(l*I)))-t))>C(0)){break a}u=k;k=C(p-q);H=j;j=C(B-E);p=l;l=C(I-G);p=C(C(u*k)+C(C(H*j)+C(p*l)));if(p==C(0)){break a}u=q;q=C(C(t-x)/p);t=C(u+C(k*q));o=C(t-o);u=o;H=m;x=C(C(r*l)-C(j*n));B=C(o*x);p=C(C(n*k)-C(l*s));o=C(E+C(j*q));w=C(o-w);j=C(C(s*j)-C(k*r));k=C(G+C(l*q));l=C(k-D);m=C(F(C(C(B+C(C(p*w)+C(j*l)))/C(C(x*m)+C(C(p*y)+C(A*j)))),C(1)));m=m>C(0)?m:C(0);j=C(u-C(H*m));u=C(j*s);s=C(w-C(y*m));q=n;n=C(l-C(A*m));r=C(u+C(C(s*r)+C(q*n)));if(!(r>2])){break a}a=(v[i>>2]<<6)+h|0;v[a+12>>2]=0;z[a+8>>2]=t;z[a+4>>2]=k;z[a>>2]=o;a=(v[i>>2]<<6)+h|0;z[a+16>>2]=o-s;v[a+28>>2]=0;z[a+24>>2]=t-j;z[a+20>>2]=k-n;n=z[d+8>>2];b=v[d+4>>2];a=(v[i>>2]<<6)+h|0;v[a+32>>2]=v[d>>2];v[a+36>>2]=b;z[a+44>>2]=r;z[a+40>>2]=n;a=v[i>>2];v[i>>2]=a+1;v[((a<<6)+h|0)+48>>2]=e}}function lq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;f=xa-16|0;xa=f;c=b+8|0;j=v[b+36>>2];a:{b:{c:{d:{switch(v[b+12>>2]>>>30|0){case 3:if((v[c>>2]-16|0)!=(a|0)){break c}break;case 0:break d;default:break c}}d=xa-16|0;xa=d;e=a+16|0;v[c>>2]=e;e:{if(!w[e+4785|0]){n=c,o=UP(e+16|0,v[c+12>>2],w[c+24|0]),v[n+16>>2]=o;v[c+4>>2]=v[c+4>>2]&268435455|-2147483648;break e}e=e+5092|0;g=v[c+4>>2];h=g&1073741823;if(g>>>0>=3221225472){v[c+4>>2]=h|-2147483648;if(g&268435456){break e}v[d+4>>2]=c;Og(e,d+4|0);break e}v[c+4>>2]=h|1073741824;v[d+8>>2]=c;c=qh(e,d+8|0,d+15|0);if(w[d+15|0]){break e}v[c>>2]=v[d+8>>2]}xa=d+16|0;if(!j){break b}while(1){f:{g:{e=v[v[b+40>>2]+(i<<2)>>2];k=e+v[(x[e+4>>1]<<2)+86240>>2]|0;c=v[k+4>>2];if(!c){break g}h=v[c+40>>2];if(!h){break g}m=v[c+36>>2];c=0;g=1;d=0;h:{i:{while(1){l=m+(d<<3)|0;if(w[l|0]==3&g){c=v[l+4>>2];g=0;d=d+1|0;if((h|0)==(d|0)){break i}continue}d=d+1|0;if((h|0)!=(d|0)){continue}break}if(g){break h}}lh(k,3,c)}Pg(b,e,a,c);if(!c){break f}d=v[c+12>>2]-1|0;v[c+12>>2]=d;if(d){break f}Ba[v[v[c+8>>2]+8>>2]](c+8|0);break f}Pg(b,e,a,0)}i=i+1|0;if((i|0)!=(j|0)){continue}break}break b}a9(v[37696],8,11709,1179,75711,0);break a}v[f+8>>2]=b;a=qh(a+5984|0,f+8|0,f+15|0);if(w[f+15|0]){break a}v[a>>2]=v[f+8>>2]}xa=f+16|0}function kq(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;f=xa-32|0;xa=f;h=Ba[v[v[b>>2]+76>>2]](b)|0;a:{if(!d){break a}if(!(Ba[v[v[b>>2]+96>>2]](b)|0)){break a}Ug(Ba[v[v[b>>2]+96>>2]](b)|0,b,0)}j=h<<2;t[f+20|0]=j>>>0>1024;b:{if(j>>>0>=1025){e=t9(j,11709,1038);break b}e=f-(j+15&-16)|0;xa=e}v[f+16>>2]=e;o=e,p=v[v[(Ba[v[v[b>>2]+100>>2]](b)|0)+84>>2]>>2],v[o>>2]=p;k=h-1|0;c:{if(k){d=1;while(1){g=v[v[f+16>>2]+(i<<2)>>2];l=v[g+356>>2];m=v[g+352>>2];if(Ba[v[v[g>>2]+260>>2]](g)|0){e=0;l=l?m:0;while(1){v[v[f+16>>2]+(d<<2)>>2]=v[l+(e<<2)>>2];d=d+1|0;e=e+1|0;if(Ba[v[v[g>>2]+260>>2]](g)>>>0>e>>>0){continue}break}}i=i+1|0;if((k|0)!=(i|0)){continue}break}if((h|0)<=0){break c}}k=a+16|0;l=a+5584|0;m=v[f+16>>2];g=0;while(1){d=h-1|0;e=v[m+(d<<2)>>2];n=w[e+108|0];i=Ba[v[v[e>>2]+252>>2]](e)|0;oh(e+12|0);hu(e+20|0,l,e);if(i){Lu(k,Ba[v[v[i>>2]+48>>2]](i)|0)}g=g|n;Eu(k,e+48|0,c,0);e=h>>>0>1;h=d;if(e){continue}break}if(!(g&32)){break c}c=v[(Ba[v[v[b>>2]+100>>2]](b)|0)+12>>2];if(c){c=v[c+48>>2]}else{c=-128}if(c>>>0>4294967167){break c}d=c>>>7|0;if(d>>>0>=v[a+4772>>2]<<5>>>0){break c}c=v[a+4768>>2]+(c>>>10&4194300)|0;h=v[c>>2];o=c,p=Uaa(-2,d)&h,v[o>>2]=p}Ju(a+16|0,Ba[v[v[b>>2]+100>>2]](b)|0);v[f+28>>2]=b;Og(a+5944|0,f+28|0);if(j>>>0>=1025){u9(v[f+16>>2])}xa=f+32|0}function nQ(a){a=a|0;var b=0,c=0,d=0,e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),u=C(0),x=0,y=C(0),A=C(0),D=0,E=0,F=C(0),G=C(0);b=v[a+32>>2];if(b){while(1){q=0;x=v[v[a+28>>2]+(r<<2)>>2];d=v[x+32>>2];if(d){while(1){if(w[v[d+28>>2]- -64|0]&5){b=xa-96|0;xa=b;c=v[d+28>>2];j=c+68|0;y=gV(b+80|0,b- -64|0,j,v[v[v[v[v[d+4>>2]+40>>2]+976>>2]+1816>>2]+4>>2]+(v[d+8>>2]<<5)|0);g=z[b+64>>2];k=z[b+80>>2];h=z[b+68>>2];l=z[b+84>>2];i=z[b+72>>2];e=z[b+88>>2];f=v[d+4>>2];f=w[v[f+44>>2]+9|0]-1>>>0<2?f:0;E=c+32|0;c=b+32|0;th(f- -64|0,E,v[f+44>>2]+48|0,c);dV(b+8|0,j,c,C(1));n=C(e+i);o=C(l+h);p=C(k+g);i=C(e-i);h=C(l-h);g=C(k-g);k=z[b+16>>2];l=z[b+28>>2];e=C(C(C(k+l)*C(.5))-z[b+88>>2]);F=C(e*e);e=z[b+8>>2];s=z[b+20>>2];m=C(C(C(e+s)*C(.5))-z[b+80>>2]);G=C(m*m);m=z[b+12>>2];u=z[b+24>>2];A=C(C(C(m+u)*C(.5))-z[b+84>>2]);j=C(F+C(G+C(A*A)))>=C(y*y);if(j){o=o>u?o:u;p=p>s?p:s;i=i>2]+40>>2]+1140>>2];c=v[f+4>>2]+B(v[d+8>>2]&2147483647,24)|0;z[c+12>>2]=p;z[c+8>>2]=i;z[c+4>>2]=h;z[c>>2]=g;z[c+20>>2]=n;z[c+16>>2]=o;t[f+16|0]=1;xa=b+96|0;D=j+D|0;q=q|j}d=v[d>>2];if(d){continue}break}b=v[a+32>>2]}t[v[x+100>>2]+156|0]=(q|0)!=0;r=r+1|0;if(r>>>0>>0){continue}break}}a=v[a+36>>2];v[a>>2]=v[a>>2]+D}function Ux(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=xa+-64|0;xa=c;a:{if(w[a+488|0]){a9(v[37696],8,12859,596,76892,0);break a}d=a+112|0;e=v[b+52>>2];v[c+56>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+44>>2]=v[b+16>>2];v[c+48>>2]=v[b+24>>2];g=Bx(e,v[a+448>>2],c+16|0);b:{if(t[v[a+476>>2]]&1){v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;b=c+16|0;vx(d,b);I9(v[c+24>>2],0,v[a+448>>2]<<5);rx(d,c,b);Hx(d,b);Jx(d,b);Ix(d,b);break b}v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;b=c+16|0;vx(d,b);I9(v[c+24>>2],0,v[a+448>>2]<<5);rx(d,c,b);Hx(d,b);Jx(d,b);Lx(d,b);Mx(d,b)}a=v[e+16>>2];if(!(a>>>0<=g>>>0&a+v[e+20>>2]>>>0>g>>>0)){if(!g){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,g);break a}j=v[e+4>>2];b=0;h=v[e+8>>2];f=h;while(1){i=b;b=b+1|0;d=f;f=d-1|0;a=(f<<2)+j|0;if(y[a>>2]>>0){continue}break}c:{if(d>>>0>=h>>>0){break c}f=i&3;if(f){b=0;while(1){v[a>>2]=v[v[e+4>>2]+(d<<2)>>2];d=d+1|0;a=a+4|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}if(i-1>>>0<3){break c}while(1){b=d<<2;v[a>>2]=v[b+v[e+4>>2]>>2];v[a+4>>2]=v[(b+v[e+4>>2]|0)+4>>2];v[a+8>>2]=v[(b+v[e+4>>2]|0)+8>>2];v[a+12>>2]=v[(b+v[e+4>>2]|0)+12>>2];a=a+16|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}v[e+8>>2]=h-1}xa=c- -64|0}function Qm(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=v[a+468>>2];if(!b){h=xa-16|0;xa=h;e=a+180|0;c=v[e+284>>2];if(c){b=v[37696];f=b+12|0;f=(m=f,n=c,o=Ba[v[v[b>>2]+20>>2]](b)|0?25589:63804,p=18373,q=180,l=v[v[f>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}else{f=0}v[h+12>>2]=f;b=v[e+268>>2];a:{if(b>>>0>=(v[e+272>>2]&2147483647)>>>0){b=0;c=e+4|0;d=v[c+268>>2];i=d&2147483647?d<<1:1;b:{if(!i){break b}d=i<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];g=Ba[v[v[b>>2]+20>>2]](b)|0?25589:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,g,16608,553)|0}g=v[c+264>>2];k=(g<<2)+b|0;if((g|0)>0){j=v[c+260>>2];d=b;while(1){v[d>>2]=v[j>>2];j=j+4|0;d=d+4|0;if(k>>>0>d>>>0){continue}break}}v[k>>2]=v[h+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d);g=v[c+264>>2]}v[c+268>>2]=i;v[c+260>>2]=b;v[c+264>>2]=g+1;break a}v[v[e+264>>2]+(b<<2)>>2]=f;v[e+268>>2]=b+1}b=(B(v[e+276>>2],48)+f|0)-48|0;if(f>>>0<=b>>>0){c=v[e+288>>2];while(1){v[b>>2]=c;c=b;b=b-48|0;if(f>>>0<=b>>>0){continue}break}v[e+288>>2]=c}xa=h+16|0;b=v[a+468>>2]}v[a+468>>2]=v[b>>2];v[a+460>>2]=v[a+460>>2]+1;t[b+32|0]=1;v[b+40>>2]=0;v[b+44>>2]=4;v[b+36>>2]=b;return b}function A$(a,b,c,d){var e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0;e=xa-48|0;xa=e;f=v[a+36>>2];xX(e,b,a+4|0);b=C(C(z[a+4>>2]*z[a+8>>2])*z[a+12>>2])>2];j=z[e+40>>2];k=z[e+16>>2];l=z[e+28>>2];m=z[e+36>>2];n=z[e+24>>2];o=z[e>>2];p=z[e+12>>2];q=z[e+4>>2];r=v[f+24>>2];a:{if(w[f+64|0]&2){f=a+B(c,6)|0;a=x[f+4>>1];c=x[f+2>>1];f=x[f>>1];break a}f=a+B(c,12)|0;a=v[f+8>>2];c=v[f+4>>2];f=v[f>>2]}f=r+B(f,12)|0;g=z[f>>2];h=z[f+4>>2];i=z[f+8>>2];z[d+8>>2]=C(C(C(g*z[e+8>>2])+C(h*z[e+20>>2]))+C(i*z[e+32>>2]))+z[e+44>>2];z[d+4>>2]=j+C(C(C(g*q)+C(h*k))+C(i*l));z[d>>2]=m+C(C(C(g*o)+C(h*p))+C(i*n));j=z[e+40>>2];k=z[e+28>>2];l=z[e+16>>2];m=z[e+36>>2];n=z[e+24>>2];o=z[e>>2];p=z[e+12>>2];q=z[e+4>>2];f=r+B(b?a:c,12)|0;g=z[f>>2];h=z[f+4>>2];i=z[f+8>>2];z[d+20>>2]=C(C(C(g*z[e+8>>2])+C(h*z[e+20>>2]))+C(i*z[e+32>>2]))+z[e+44>>2];z[d+16>>2]=j+C(C(C(g*q)+C(h*l))+C(i*k));z[d+12>>2]=m+C(C(C(g*o)+C(h*p))+C(i*n));j=z[e+40>>2];k=z[e+28>>2];l=z[e+16>>2];m=z[e+36>>2];n=z[e+24>>2];o=z[e>>2];p=z[e+12>>2];q=z[e+4>>2];a=r+B(b?c:a,12)|0;g=z[a>>2];h=z[a+4>>2];i=z[a+8>>2];z[d+32>>2]=C(C(C(g*z[e+8>>2])+C(h*z[e+20>>2]))+C(i*z[e+32>>2]))+z[e+44>>2];z[d+28>>2]=j+C(C(C(g*q)+C(h*l))+C(i*k));z[d+24>>2]=m+C(C(C(g*o)+C(h*p))+C(i*n));xa=e+48|0}function tG(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=xa-16|0;xa=e;g=v[b- -64>>2];d=-2147483648;c=-2147483648;f=v[b+60>>2];a:{if(!f){break a}h=v[a+28>>2];if(!h){break a}i=v[a+24>>2];c=0;while(1){if((f|0)==v[(c<<2)+i>>2]){break a}c=c+1|0;if((h|0)!=(c|0)){continue}break}c=-2147483648}v[e>>2]=c;b:{if(!g){break b}f=v[a+28>>2];if(!f){break b}h=v[a+24>>2];c=0;while(1){if((g|0)==v[h+(c<<2)>>2]){d=c;break b}c=c+1|0;if((f|0)!=(c|0)){continue}break}}v[e+8>>2]=b;v[e+4>>2]=d;b=v[a+56>>2];c:{if(b>>>0>=(v[a+60>>2]&2147483647)>>>0){b=0;c=v[a+60>>2];g=c&2147483647?c<<1:1;d:{if(!g){break d}c=B(g,12);if(!c){break d}b=v[37696];d=b+12|0;b=(k=d,l=c,m=Ba[v[v[b>>2]+20>>2]](b)|0?28619:63804,n=16608,o=553,j=v[v[d>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}c=v[a+56>>2];if((c|0)>0){f=B(c,12)+b|0;d=v[a+52>>2];c=b;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}c=v[a+56>>2]}d=v[e+4>>2];c=B(c,12)+b|0;v[c>>2]=v[e>>2];v[c+4>>2]=d;v[c+8>>2]=v[e+8>>2];e:{if(v[a+60>>2]<0){break e}c=v[a+52>>2];if(!c){break e}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+60>>2]=g;v[a+52>>2]=b;break c}c=v[e+4>>2];b=v[a+52>>2]+B(b,12)|0;v[b>>2]=v[e>>2];v[b+4>>2]=c;v[b+8>>2]=v[e+8>>2]}v[a+56>>2]=v[a+56>>2]+1;xa=e+16|0}function DZ(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0;f=xa-48|0;xa=f;if(v$(v[a+2252>>2],c,d,e)){h=v[a+2236>>2];a:{if(w[a+2244|0]){z[f>>2]=z[c>>2];z[f+4>>2]=z[c+4>>2];z[f+8>>2]=z[c+8>>2];z[f+12>>2]=z[d>>2];z[f+16>>2]=z[d+4>>2];z[f+20>>2]=z[d+8>>2];z[f+24>>2]=z[e>>2];z[f+28>>2]=z[e+4>>2];c=2;i=z[e+8>>2];break a}l=z[h+28>>2];m=z[h+16>>2];n=z[h+32>>2];o=z[h+20>>2];r=w[h+72|0];p=z[h+4>>2];q=z[h+8>>2];i=z[c>>2];j=z[c+4>>2];k=z[c+8>>2];z[f>>2]=C(C(i*z[h>>2])+C(j*z[h+12>>2]))+C(k*z[h+24>>2]);z[f+8>>2]=C(C(i*q)+C(j*o))+C(k*n);z[f+4>>2]=C(C(i*p)+C(j*m))+C(k*l);l=z[h+28>>2];m=z[h+16>>2];n=z[h+24>>2];o=z[h>>2];p=z[h+12>>2];q=z[h+4>>2];c=(r?24:12)+f|0;i=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];z[c+8>>2]=C(C(i*z[h+8>>2])+C(j*z[h+20>>2]))+C(k*z[h+32>>2]);z[c+4>>2]=C(C(i*q)+C(j*m))+C(k*l);z[c>>2]=C(C(i*o)+C(j*p))+C(k*n);l=z[h+32>>2];m=z[h+20>>2];n=z[h+8>>2];o=z[h+24>>2];p=z[h>>2];q=z[h+12>>2];c=r?1:2;d=B(c,12)+f|0;i=z[e>>2];j=z[e+4>>2];k=z[e+8>>2];z[d+4>>2]=C(C(i*z[h+4>>2])+C(j*z[h+16>>2]))+C(k*z[h+28>>2]);z[d>>2]=C(C(i*p)+C(j*q))+C(k*o);i=C(C(C(i*n)+C(j*m))+C(k*l))}z[(B(c,12)+f|0)+8>>2]=i;c=a+8|0;b=v[b+8>>2];a=v[a+2240>>2];if(a){a=w[a+b|0]}else{a=56}EZ(c,f,b,a,g)}xa=f+48|0;return 1} -function vG(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=v[a+28>>2];a:{if(!e){break a}d=v[a+24>>2];while(1){if(v[d+(c<<2)>>2]==(b|0)){g=c;break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}}sH(b,0,C(0),1,0);b=g+1|0;h=v[a+16>>2];if(b>>>0>>0){c=g;while(1){d=v[a+12>>2];e=d+(c<<5)|0;f=d+(b<<5)|0;d=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=d;d=v[f+28>>2];v[e+24>>2]=v[f+24>>2];v[e+28>>2]=d;d=v[f+20>>2];v[e+16>>2]=v[f+16>>2];v[e+20>>2]=d;d=v[f+12>>2];v[e+8>>2]=v[f+8>>2];v[e+12>>2]=d;d=v[a+24>>2];c=c<<2;f=d+c|0;e=d;d=b<<2;v[f>>2]=v[e+d>>2];e=c;c=v[a+36>>2];v[e+c>>2]=v[c+d>>2];c=b;b=c+1|0;h=v[a+16>>2];if(b>>>0>>0){continue}break}}v[a+64>>2]=0;if(h){b=g&31;if((g&63)>>>0>=32){c=1<>>32-b;b=d}k=b-1|0;m=(k|b)^-1;l=c-!b|0;n=(c|l)^-1;p=v[a+12>>2];b=0;while(1){c=p+(b<<5)|0;i=v[c+8>>2];d=v[c+12>>2];e=v[c+24>>2];if(!((e|0)==-1|e>>>0<=g>>>0)){e=d&l;f=d&n;d=i&m;i=i&k|((f&1)<<31|d>>>1);v[c+8>>2]=i;d=f>>>1|e;v[c+12>>2]=d}o=v[c+4>>2];f=n&o;e=f>>>1|0;q=(f&1)<<31;f=v[c>>2];v[c>>2]=q|(m&f)>>>1|f&k;v[c+4>>2]=l&o|e;c=Taa(d)+Taa(i)|0;j=c>>>0>j>>>0?c:j;b=b+1|0;if((h|0)!=(b|0)){continue}break}v[a+64>>2]=j}v[a+16>>2]=h-1;v[a+28>>2]=v[a+28>>2]-1;v[a+40>>2]=v[a+40>>2]-1;a=v[a>>2];v[a+96>>2]=j;Ba[v[v[a>>2]+20>>2]](a)}function Rn(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=v[37389];f=xa-16|0;xa=f;a=v[37696];c=a+12|0;a=(l=c,m=44,n=Ba[v[v[a>>2]+20>>2]](a)|0?41893:63804,o=5452,p=668,k=v[v[c>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0);v[a+12>>2]=1;v[a+4>>2]=196625;v[a+20>>2]=0;v[a+24>>2]=0;v[a+16>>2]=i;v[a+8>>2]=141960;v[a>>2]=141904;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;c=0;e=xa-16|0;xa=e;j=qX(66,86,72,83,e+12|0,e+11|0,b);a:{if(!j){break a}lX(a+20|0,2,w[e+11|0],b);d=v[a+20>>2];h=d<<2;if(h){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,h,24422,11302,82)|0;d=v[a+20>>2]}v[a+32>>2]=c;lX(c,d,w[e+11|0],b);c=v[a+20>>2];d=B(c,24)+24|0;if(d){c=v[37696];g=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,24422,11302,86)|0;c=v[a+20>>2]}v[a+28>>2]=g;lX(g,B(c,6),w[e+11|0],b);g=0;c=0;d=v[a+24>>2];h=B(d,28);if(h){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,h,24422,11302,90)|0;d=v[a+24>>2]}v[a+40>>2]=c;if(!d){break a}while(1){c=B(g,28);lX((c+v[a+40>>2]|0)+24|0,1,w[e+11|0],b);lX(c+v[a+40>>2]|0,6,w[e+11|0],b);g=g+1|0;if(g>>>0>2]){continue}break}}xa=e+16|0;b:{if(!j){b=v[a+12>>2]-1|0;v[a+12>>2]=b;if(b){a=0;break b}Ba[v[v[a+8>>2]+8>>2]](a+8|0);a=0;break b}v[f+8>>2]=a;b=qh(i+128|0,f+8|0,f+15|0);if(!w[f+15|0]){v[b>>2]=v[f+8>>2]}}xa=f+16|0;return a|0}function th(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);t=z[a+20>>2];s=z[a+24>>2];u=z[c+20>>2];v=z[b+20>>2];w=z[c+24>>2];x=z[b+24>>2];y=z[a+16>>2];A=z[c+16>>2];B=z[b+16>>2];h=z[b+12>>2];e=z[c+12>>2];i=z[c+8>>2];f=z[b+8>>2];j=z[c>>2];m=z[b>>2];n=z[b+4>>2];g=z[c+4>>2];k=C(C(h*e)+C(C(i*f)+C(C(j*m)+C(n*g))));o=z[a+12>>2];p=z[a+8>>2];l=C(C(C(C(m*g)-C(j*n))+C(f*e))-C(h*i));q=z[a>>2];r=C(C(C(C(n*i)-C(g*f))+C(m*e))-C(h*j));f=C(C(C(C(f*j)-C(i*m))+C(n*e))-C(h*g));h=z[a+4>>2];z[d+12>>2]=C(k*o)-C(C(p*l)+C(C(q*r)+C(f*h)));z[d+8>>2]=C(k*p)+C(C(C(q*f)-C(r*h))+C(l*o));z[d+4>>2]=C(k*h)+C(C(C(p*r)-C(l*q))+C(f*o));z[d>>2]=C(k*q)+C(C(C(h*l)-C(f*p))+C(r*o));D=s;f=C(x-w);m=C(B-A);n=C(v-u);r=C(C(i*f)+C(C(j*m)+C(g*n)));s=C(C(e*e)+C(-.5));k=C(C(i*r)+C(C(e*C(C(m*g)-C(j*n)))+C(f*s)));k=C(k+k);l=C(C(j*r)+C(C(e*C(C(n*i)-C(g*f)))+C(m*s)));l=C(l+l);e=C(C(g*r)+C(C(e*C(C(f*j)-C(i*m)))+C(n*s)));e=C(e+e);i=C(C(p*k)+C(C(q*l)+C(h*e)));j=C(C(o*o)+C(-.5));g=C(C(p*i)+C(C(o*C(C(q*e)-C(l*h)))+C(k*j)));z[d+24>>2]=D+C(g+g);g=C(C(h*i)+C(C(o*C(C(p*l)-C(k*q)))+C(e*j)));z[d+20>>2]=t+C(g+g);e=C(C(q*i)+C(C(o*C(C(h*k)-C(e*p)))+C(l*j)));z[d+16>>2]=y+C(e+e)}function O_(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0);f=xa+-64|0;xa=f;v[f+56>>2]=v[25363];g=v[25362];v[f+48>>2]=v[25361];v[f+52>>2]=g;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=0;v[a+4>>2]=0;h=C(34028234663852886e22);if(v[c>>2]==-1){yW(f+32|0,b,b+16|0,b+32|0,d,e,a);h=z[f+32>>2]}a:{if(v[c+4>>2]!=-1){break a}v[f+56>>2]=3;v[f+48>>2]=0;v[f+52>>2]=2;v[f+28>>2]=3;yW(f,b,b+32|0,b+48|0,f+48|0,f+28|0,f+32|0);i=z[f>>2];if(!(i>2];v[a>>2]=v[f+32>>2];v[a+4>>2]=g;g=v[f+44>>2];v[a+8>>2]=v[f+40>>2];v[a+12>>2]=g;v[d>>2]=v[f+48>>2];v[d+4>>2]=v[f+52>>2];v[d+8>>2]=v[f+56>>2];v[e>>2]=v[f+28>>2];h=i}b:{if(v[c+8>>2]!=-1){break b}v[f+56>>2]=1;v[f+48>>2]=0;v[f+52>>2]=3;v[f+28>>2]=3;yW(f,b,b+48|0,b+16|0,f+48|0,f+28|0,f+32|0);i=z[f>>2];if(!(i>2];v[a>>2]=v[f+32>>2];v[a+4>>2]=g;g=v[f+44>>2];v[a+8>>2]=v[f+40>>2];v[a+12>>2]=g;v[d>>2]=v[f+48>>2];v[d+4>>2]=v[f+52>>2];v[d+8>>2]=v[f+56>>2];v[e>>2]=v[f+28>>2];h=i}c:{if(v[c+12>>2]!=-1){break c}v[f+56>>2]=2;v[f+48>>2]=1;v[f+52>>2]=3;v[f+28>>2]=3;yW(f,b+16|0,b+48|0,b+32|0,f+48|0,f+28|0,f+32|0);if(!(z[f>>2]>2];v[a>>2]=v[f+32>>2];v[a+4>>2]=b;b=v[f+44>>2];v[a+8>>2]=v[f+40>>2];v[a+12>>2]=b;v[d>>2]=v[f+48>>2];v[d+4>>2]=v[f+52>>2];v[d+8>>2]=v[f+56>>2];v[e>>2]=v[f+28>>2]}xa=f- -64|0}function Sx(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=xa+-64|0;xa=c;a:{if(w[a+488|0]){a9(v[37696],8,12859,515,76983,0);break a}d=a+112|0;f=v[a+448>>2];e=v[b+52>>2];v[c+56>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;g=Bx(e,f,c+16|0);v[c+40>>2]=v[b+12>>2];v[c+44>>2]=0;b=v[b+24>>2];v[c+32>>2]=0;v[c+48>>2]=b;b:{if(t[v[a+476>>2]]&1){v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;a=c+16|0;vx(d,a);sx(d,a);rx(d,c,a);Hx(d,a);Jx(d,a);Ix(d,a);break b}v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;a=c+16|0;vx(d,a);sx(d,a);rx(d,c,a);Hx(d,a);Jx(d,a);Lx(d,a);Mx(d,a)}a=v[e+16>>2];if(!(a>>>0<=g>>>0&a+v[e+20>>2]>>>0>g>>>0)){if(!g){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,g);break a}j=v[e+4>>2];b=0;h=v[e+8>>2];f=h;while(1){i=b;b=b+1|0;d=f;f=d-1|0;a=(f<<2)+j|0;if(y[a>>2]>>0){continue}break}c:{if(d>>>0>=h>>>0){break c}f=i&3;if(f){b=0;while(1){v[a>>2]=v[v[e+4>>2]+(d<<2)>>2];d=d+1|0;a=a+4|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}if(i-1>>>0<3){break c}while(1){b=d<<2;v[a>>2]=v[b+v[e+4>>2]>>2];v[a+4>>2]=v[(b+v[e+4>>2]|0)+4>>2];v[a+8>>2]=v[(b+v[e+4>>2]|0)+8>>2];v[a+12>>2]=v[(b+v[e+4>>2]|0)+12>>2];a=a+16|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}v[e+8>>2]=h-1}xa=c- -64|0}function jW(a,b){var c=0,d=0,e=0,f=C(0),g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=0;h=v[a+148>>2];q=v[h+20>>2];r=v[h+16>>2];c=xa-48|0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;d=v[b>>2];k=z[b>>2];g=v[b+4>>2];l=z[b+4>>2];e=v[b+8>>2];m=z[b+8>>2];z[c+8>>2]=m;z[c+4>>2]=l;z[c>>2]=k;b=e&2147483647;e=x[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=z[i>>2];i=B(b<<1|v[i>>2]>>>31,e);j=C(C(e-1>>>0)*C(.5));n=C(C(1)/C(D(f)));f=C(C(j*C(C(z[(d<<2)+c>>2]*n)+C(1)))+C(.5));b:{if(f=C(0)){b=~~f>>>0;break b}b=0}d=B(e,b+i|0);f=C(C(j*C(C(n*z[(g<<2)+c>>2])+C(1)))+C(.5));c:{if(f=C(0)){b=~~f>>>0;break c}b=0}g=v[a+152>>2];a=w[v[h+4>>2]+(b+d|0)|0];b=g+B(a,12)|0;f=C(C(z[b+8>>2]*m)+C(C(z[b>>2]*k)+C(l*z[b+4>>2])));while(1){h=a;a=(h<<2)+r|0;i=x[a>>1];if(i){s=x[a+2>>1];b=0;a=h;while(1){d=w[(b+s|0)+q|0];e=g+B(d,12)|0;j=C(C(z[e+8>>2]*m)+C(C(z[e>>2]*k)+C(l*z[e+4>>2])));d:{if(!(j>f)){break d}e=(c+16|0)+(d>>>3&28)|0;o=v[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 TB(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0),n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0;q=v[a+52>>2];if(q){k=v[a+60>>2];c=k+1|0;if(c){r=v[a+8>>2];w=v[a>>2];while(1){s=k;t=(k<<2)+q|0;u=v[t>>2];if(u){o=c<<5;p=-2147483648;k=31;while(1){o=o-1|0;if(p&u){l=B(o,28)+r|0;c=v[l+24>>2];g=c>>>1|0;a:{if(c&1){g=g&15;if(!g){i=C(0x382c5fc0000000);e=C(-0x382c5fc0000000);h=C(-0x382c5fc0000000);m=C(-0x382c5fc0000000);f=C(0x382c5fc0000000);j=C(0x382c5fc0000000);break a}n=(c>>>3&536870908)+w|0;c=B(v[n>>2],24)+b|0;e=z[c+12>>2];j=z[c+8>>2];f=z[c+4>>2];i=z[c>>2];m=z[c+20>>2];h=z[c+16>>2];if((g|0)==1){break a}c=n+4|0;n=n+(g<<2)|0;while(1){g=B(v[c>>2],24)+b|0;d=z[g+12>>2];e=e>d?e:d;d=z[g+8>>2];j=d>j?j:d;d=z[g+4>>2];f=d>f?f:d;d=z[g>>2];i=d>i?i:d;d=z[g+20>>2];m=d>2];h=d>2];e=z[c+28>>2];i=e>i?i:e;e=z[c+20>>2];h=z[c+48>>2];m=e>h?e:h;e=z[c+16>>2];h=z[c+44>>2];h=e>h?e:h;e=z[c+12>>2];f=z[c+40>>2];e=e>f?e:f;f=z[c+8>>2];j=z[c+36>>2];j=f>2];d=z[c+32>>2];f=d>f?f:d}z[l+12>>2]=e;z[l+8>>2]=j;z[l+4>>2]=f;z[l>>2]=i;z[l+20>>2]=m;z[l+16>>2]=h}c=k;k=c-1|0;p=p>>>1|0;if(c){continue}break}v[t>>2]=0}k=s-1|0;c=s;if(c){continue}break}}v[a+60>>2]=0}}function lx(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=v[a+660>>2];if(c>>>0>=(v[a+664>>2]&2147483647)>>>0){c=v[a+664>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=g<<5;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?45645:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+660>>2];if((c|0)>0){h=(c<<5)+e|0;d=v[a+656>>2];c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=f;f=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=f;f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;d=d+32|0;c=c+32|0;if(h>>>0>c>>>0){continue}break}c=v[a+660>>2]}d=v[b+4>>2];c=(c<<5)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;b:{if(v[a+664>>2]<0){break b}b=v[a+656>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+664>>2]=g;v[a+656>>2]=e;v[a+660>>2]=v[a+660>>2]+1;return 1}e=v[a+656>>2]+(c<<5)|0;c=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=c;c=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=c;c=v[b+20>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=c;c=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=c;v[a+660>>2]=v[a+660>>2]+1;return 1}function vQ(a){a=a|0;var b=C(0),c=0,d=0,e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),y=C(0),A=C(0);r=v[a+32>>2];if(r){l=z[a+36>>2];a=v[a+28>>2];while(1){s=C(0);e=xa-16|0;xa=e;d=v[v[a>>2]>>2];h=v[d+44>>2];c=x[d+148>>1];a:{if(c&4){u[d+148>>1]=c&63999;d=v[d+44>>2];b=z[d+16>>2];c=v[h+176>>2];c=w[c+31|0]==1?c:0;f=z[c+4>>2];j=z[c+8>>2];k=z[d+28>>2];i=z[c+12>>2];m=z[d+24>>2];n=z[c>>2];o=z[d+20>>2];g=C(C(b*f)+C(C(C(j*k)-C(i*m))-C(n*o)));p=C(C(m*n)+C(C(C(f*k)-C(i*o))-C(j*b)));q=C(C(o*j)+C(C(C(n*k)-C(i*b))-C(f*m)));t=C(z[c+16>>2]-z[d+32>>2]);y=C(z[c+24>>2]-z[d+40>>2]);A=C(z[c+20>>2]-z[d+36>>2]);f=C(C(j*m)+C(C(f*o)+C(C(i*k)+C(n*b))));if(f>2]=n;z[h+84>>2]=o;z[h+80>>2]=m;z[h+104>>2]=C(k*b)*l;z[h+100>>2]=C(s*b)*l;z[h+96>>2]=C(j*b)*l;break a}if(c&2048){break a}v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;BG(h,e);v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;CG(h,e)}xa=e+16|0;a=a+4|0;r=r-1|0;if(r){continue}break}}}function sh(a,b,c){var d=C(0),e=0,f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),t=C(0),u=C(0);e=xa-32|0;xa=e;g=w[b+4|0]&4?v[b+8>>2]:b+48|0;q=v[c+4>>2];a:{if((q&251658240)==83886080){b=q&64?v[c+8>>2]+96|0:c+32|0;s=z[b+16>>2];t=z[b+20>>2];u=z[b+24>>2];m=z[g+24>>2];n=z[g+20>>2];o=z[g+16>>2];d=z[b+12>>2];h=z[g+12>>2];i=z[b+8>>2];j=z[g+8>>2];k=z[b>>2];f=z[g>>2];l=z[b+4>>2];p=z[g+4>>2];z[a+12>>2]=C(d*h)-C(C(i*j)+C(C(k*f)+C(l*p)));z[a+8>>2]=C(i*h)+C(C(C(k*p)-C(f*l))+C(d*j));z[a+4>>2]=C(l*h)+C(C(d*p)+C(C(i*f)-C(j*k)));z[a>>2]=C(k*h)+C(C(d*f)+C(C(l*j)-C(p*i)));h=C(C(d*d)+C(-.5));j=C(C(i*m)+C(C(k*o)+C(l*n)));f=C(C(C(m*h)+C(d*C(C(k*n)-C(o*l))))+C(i*j));z[a+24>>2]=u+C(f+f);f=C(C(l*j)+C(C(n*h)+C(d*C(C(i*o)-C(m*k)))));z[a+20>>2]=t+C(f+f);d=C(C(k*j)+C(C(o*h)+C(d*C(C(l*m)-C(n*i)))));z[a+16>>2]=s+C(d+d);break a}b=v[c+8>>2];r=v[c+268>>2];b:{c:{if((w[(r&16384?b+268|0:c+60|0)|0]&3)!=3){break c}if(r&32768){z[e>>2]=z[b+192>>2];z[e+4>>2]=z[b+196>>2];z[e+8>>2]=z[b+200>>2];z[e+12>>2]=z[b+204>>2];z[e+16>>2]=z[b+208>>2];z[e+20>>2]=z[b+212>>2];z[e+24>>2]=z[b+216>>2];b=e;break b}if(q>>>0>3221225471){break c}b=e;if(YG(c+16|0,b)){break b}}b=c+208|0}th(b,g,v[c+268>>2]&1024?v[c+8>>2]+144|0:c- -64|0,a)}xa=e+32|0}function GG(a,b){var c=0;c=v[a+176>>2];if(!c){c=v[b+288>>2];if(!c){FG(b);c=v[b+288>>2]}v[b+288>>2]=v[c>>2];v[b+280>>2]=v[b+280>>2]+1}t[c+24|0]=0;t[c+25|0]=0;t[c+26|0]=0;t[c+27|0]=0;t[c+28|0]=0;t[c+29|0]=0;t[c+30|0]=0;t[c+31|0]=0;t[c|0]=0;t[c+1|0]=0;t[c+2|0]=0;t[c+3|0]=0;t[c+4|0]=0;t[c+5|0]=0;t[c+6|0]=0;t[c+7|0]=0;t[c+56|0]=0;t[c+57|0]=0;t[c+58|0]=0;t[c+59|0]=0;t[c+60|0]=0;t[c+61|0]=0;t[c+62|0]=0;t[c+63|0]=0;t[c+48|0]=0;t[c+49|0]=0;t[c+50|0]=0;t[c+51|0]=0;t[c+52|0]=0;t[c+53|0]=0;t[c+54|0]=0;t[c+55|0]=0;t[c+40|0]=0;t[c+41|0]=0;t[c+42|0]=0;t[c+43|0]=0;t[c+44|0]=0;t[c+45|0]=0;t[c+46|0]=0;t[c+47|0]=0;t[c+32|0]=0;t[c+33|0]=0;t[c+34|0]=0;t[c+35|0]=0;t[c+36|0]=0;t[c+37|0]=0;t[c+38|0]=0;t[c+39|0]=0;t[c+16|0]=0;t[c+17|0]=0;t[c+18|0]=0;t[c+19|0]=0;t[c+20|0]=0;t[c+21|0]=0;t[c+22|0]=0;t[c+23|0]=0;t[c+8|0]=0;t[c+9|0]=0;t[c+10|0]=0;t[c+11|0]=0;t[c+12|0]=0;t[c+13|0]=0;t[c+14|0]=0;t[c+15|0]=0;t[c+31|0]=1;t[c+28|0]=0;z[c+48>>2]=z[a+120>>2];z[c+52>>2]=z[a+124>>2];z[c+32>>2]=z[a+128>>2];z[c+36>>2]=z[a+132>>2];z[c+40>>2]=z[a+136>>2];z[c+44>>2]=z[a+140>>2];z[c+56>>2]=z[a+112>>2];z[c+60>>2]=z[a+116>>2];v[a+136>>2]=0;v[a+140>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+112>>2]=2139095039;v[a+116>>2]=2139095039;v[a+176>>2]=c}function a4(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;f=xa-256|0;xa=f;e=w[v[a+28>>2]+38|0];if(e){d=v[37696];g=d+12|0;g=(m=g,n=B(e,3),o=Ba[v[v[d>>2]+20>>2]](d)|0?35013:63804,p=9064,q=485,l=v[v[g>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0);d=w[v[a+28>>2]+38|0]}else{d=0}v[a+16>>2]=g;e=d&255;h=I9(f,0,e);if(b){f=0;while(1){e=v[a+4>>2]+B(f,20)|0;g=w[e+18|0];if(g){d=0;while(1){j=w[v[a+8>>2]+(x[e+16>>1]+d|0)|0];k=j+h|0;i=w[k|0];if(i>>>0<=2){g=v[a+16>>2];t[k|0]=i+1;t[g+(i+B(j,3)|0)|0]=f;g=w[e+18|0]}d=d+1|0;if(d>>>0<(g&255)>>>0){continue}break}}f=f+1|0;if((f|0)!=(b|0)){continue}break}e=w[v[a+28>>2]+38|0];d=e}b=1;a:{if(!(d&255)){break a}b=e&3;g=0;b:{if(e-1>>>0<3){d=0;f=0;break b}i=e&252;d=0;f=0;e=0;while(1){f=w[(d|3)+h|0]!=3|w[(d|2)+h|0]!=3|w[(d|1)+h|0]!=3|w[d+h|0]!=3|f;d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}if(b){while(1){f=w[d+h|0]!=3|f;d=d+1|0;g=g+1|0;if((b|0)!=(g|0)){continue}break}}b=1;if(!(f&1)){break a}b=v[37696];c:{if(!c){a9(b,32,9064,514,65354,0);break c}a9(b,32,9064,516,65824,0)}d=0;b=0;if(!w[v[a+28>>2]+38|0]){break a}while(1){b=B(d,3);t[b+v[a+16>>2]|0]=255;t[(b+v[a+16>>2]|0)+1|0]=255;t[(b+v[a+16>>2]|0)+2|0]=255;d=d+1|0;if(d>>>0>2]+38|0]){continue}break}b=f^1}xa=h+256|0;return b&1}function mZ(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0;n=xa-16|0;xa=n;h=z[a+48>>2];i=z[a+60>>2];o=a- -64|0;j=z[o>>2];k=z[a+40>>2];l=z[a+52>>2];m=z[a+36>>2];e=z[c>>2];f=C(e*z[d>>2]);g=C(e*z[d+4>>2]);e=C(e*z[d+8>>2]);z[d+8>>2]=C(C(f*z[a+44>>2])+C(g*z[a+56>>2]))+C(e*z[a+68>>2]);z[d+4>>2]=C(C(f*k)+C(g*l))+C(e*j);z[d>>2]=C(C(f*m)+C(g*h))+C(e*i);h=z[a+48>>2];i=z[a+60>>2];j=z[o>>2];k=z[a+40>>2];l=z[a+52>>2];m=z[a+36>>2];e=z[c+4>>2];f=C(e*z[d+12>>2]);g=C(e*z[d+16>>2]);e=C(e*z[d+20>>2]);z[d+20>>2]=C(C(f*z[a+44>>2])+C(g*z[a+56>>2]))+C(e*z[a+68>>2]);z[d+16>>2]=C(C(f*k)+C(g*l))+C(e*j);z[d+12>>2]=C(C(f*m)+C(g*h))+C(e*i);h=z[a+48>>2];i=z[a+60>>2];j=z[o>>2];k=z[a+40>>2];l=z[a+52>>2];m=z[a+36>>2];e=z[c+8>>2];f=C(e*z[d+24>>2]);g=C(e*z[d+28>>2]);e=C(e*z[d+32>>2]);z[d+32>>2]=C(C(f*z[a+44>>2])+C(g*z[a+56>>2]))+C(e*z[a+68>>2]);z[d+28>>2]=C(C(f*k)+C(g*l))+C(e*j);z[d+24>>2]=C(C(f*m)+C(g*h))+C(e*i);h=z[a+60>>2];i=z[a+48>>2];j=z[o>>2];k=z[a+40>>2];l=z[a+52>>2];m=z[a+36>>2];e=z[b>>2];f=z[b+4>>2];g=z[b+8>>2];z[b+8>>2]=C(C(e*z[a+44>>2])+C(f*z[a+56>>2]))+C(g*z[a+68>>2]);z[b+4>>2]=C(C(e*k)+C(f*l))+C(g*j);z[b>>2]=C(C(e*m)+C(f*i))+C(g*h);q9(n,d);z[c>>2]=z[n>>2];z[c+4>>2]=z[n+4>>2];z[c+8>>2]=z[n+8>>2];xa=n+16|0}function lD(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=0,o=0,p=0,q=0,r=0;if((Taa(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=C(z[a+24>>2]*C(b>>>0));a:{if(m=C(0)){j=~~m>>>0;break a}j=0}q=v[a+16>>2];c=b+j<<2;e=(0-c&12)+c|0;d=e+B(j,20)|0;if(d){c=v[37696]+12|0;d=Ba[v[v[c>>2]+8>>2]](c,d,24422,17301,372)|0}else{d=0}c=b<<2;h=I9(d,255,c);n=h+e|0;o=c+h|0;if(v[a+36>>2]){r=b-1|0;while(1){k=(i<<2)+o|0;p=B(i,20);g=p+v[a+4>>2]|0;c=v[g+4>>2];e=v[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=Raa(c^((d&255)<<24|c>>>8),d^d>>>8,9,0);e=Aa;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;v[l>>2]=v[c>>2];v[c>>2]=i;c=v[g+4>>2];d=n+p|0;v[d>>2]=v[g>>2];v[d+4>>2]=c;v[d+16>>2]=v[g+16>>2];c=v[g+12>>2];v[d+8>>2]=v[g+8>>2];v[d+12>>2]=c;i=i+1|0;if(i>>>0>2]){continue}break}}d=v[a>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+20>>2]=b;v[a+12>>2]=h;v[a>>2]=h;v[a+8>>2]=o;v[a+16>>2]=j;v[a+4>>2]=n;if(v[a+28>>2]==-1){v[a+28>>2]=q}}function p$(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),u=0;k=z[a>>2];h=z[b>>2];i=z[a+8>>2];l=z[b+8>>2];q=xa-16|0;p=z[a+4>>2];j=C(z[b+4>>2]-p);z[q+4>>2]=j;l=C(l-i);z[q+8>>2]=l;n=C(h-k);z[q>>2]=n;r=z[c+4>>2];m=z[c>>2];h=C(C(n*r)-C(m*j));o=C(h*i);s=j;j=z[c+8>>2];i=C(C(s*j)-C(r*l));s=C(i*k);k=C(C(l*m)-C(j*n));j=C(o+C(s+C(p*k)));l=z[d+8>>2];n=z[d>>2];p=z[d+4>>2];r=C(C(C(l*h)+C(C(n*i)+C(k*p)))-j);m=z[e+8>>2];o=z[e>>2];t=z[e+4>>2];a:{if(C(r*C(C(C(m*h)+C(C(o*i)+C(k*t)))-j))>C(0)){break a}j=C(m-l);m=C(o-n);o=C(t-p);t=C(C(h*j)+C(C(i*m)+C(k*o)));if(t==C(0)){break a}s=j;j=C(r/t);z[g+8>>2]=l-C(s*j);z[g+4>>2]=p-C(o*j);z[g>>2]=n-C(m*j);k=C(D(k));i=C(D(i));h=C(D(h));b:{c:{if(!(!(k>i)|!(k>h))){e=0;u=2;break c}d=2;e=1;if(!(h>i)){break b}}d=e;e=u}d=d<<2;h=z[d+q>>2];e=e<<2;i=z[e+q>>2];h=C(C(C(i*C(z[d+g>>2]-z[a+d>>2]))-C(C(z[e+g>>2]-z[a+e>>2])*h))/C(C(i*z[c+d>>2])-C(z[c+e>>2]*h)));z[f>>2]=h;u=0;if(h>2];k=z[c+4>>2];i=C(z[g>>2]-C(h*z[c>>2]));z[g>>2]=i;k=C(z[g+4>>2]-C(h*k));z[g+4>>2]=k;h=C(z[g+8>>2]-C(h*j));z[g+8>>2]=h;u=C(C(C(z[a+8>>2]-h)*C(z[b+8>>2]-h))+C(C(C(z[a>>2]-i)*C(z[b>>2]-i))+C(C(z[a+4>>2]-k)*C(z[b+4>>2]-k))))>2];a:{if(w[g+9|0]){c=c- -64|0;c=e?d?c:g+16|0:c;x=z[c+20>>2];y=z[c+24>>2];q=z[c+16>>2];r=z[g+68>>2];s=z[g- -64>>2];l=z[g+72>>2];d=B(b,28)+a|0;m=z[c+8>>2];h=z[g+56>>2];n=z[c+4>>2];i=z[g+52>>2];j=z[c+12>>2];f=z[g+60>>2];k=z[g+48>>2];o=z[c>>2];z[d+16>>2]=C(m*h)+C(C(n*i)+C(C(j*f)+C(k*o)));z[d+12>>2]=C(k*n)+C(C(C(f*m)-C(j*h))-C(o*i));z[d+8>>2]=C(h*o)+C(C(C(f*n)-C(j*i))-C(m*k));z[d+4>>2]=C(i*m)+C(C(C(f*o)-C(j*k))-C(n*h));A=q;q=C(l*C(-2));s=C(s*C(-2));r=C(r*C(-2));t=C(C(h*q)+C(C(k*s)+C(i*r)));u=C(C(f*f)+C(-.5));l=C(C(h*t)+C(C(q*u)-C(f*C(C(k*r)-C(s*i)))));l=C(l+l);p=C(C(k*t)+C(C(s*u)-C(f*C(C(i*q)-C(r*h)))));p=C(p+p);f=C(C(i*t)+C(C(r*u)-C(f*C(C(h*s)-C(q*k)))));f=C(f+f);h=C(C(m*l)+C(C(o*p)+C(n*f)));i=C(C(j*j)+C(-.5));z[d+20>>2]=A+C(C(o*h)+C(C(p*i)+C(j*C(C(n*l)-C(f*m)))));k=C(y+C(C(m*h)+C(C(l*i)+C(j*C(C(o*f)-C(p*n))))));j=C(x+C(C(n*h)+C(C(f*i)+C(j*C(C(m*p)-C(l*o))))));break a}c=B(b,28)+a|0;z[c+4>>2]=z[g+16>>2];z[c+8>>2]=z[g+20>>2];z[c+12>>2]=z[g+24>>2];z[c+16>>2]=z[g+28>>2];z[c+20>>2]=z[g+32>>2];k=z[g+40>>2];j=z[g+36>>2]}a=B(b,28)+a|0;z[a+28>>2]=k;z[a+24>>2]=j}function rE(a,b){var c=C(0),d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=0,y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0);h=v[a+644>>2]+B(b,44)|0;G=z[h+28>>2];q=z[h+32>>2];e=z[h+20>>2];d=v[v[h>>2]+588>>2];g=z[d+8>>2];l=z[d+24>>2];c=C(C(g+l)*C(.5));r=C(c+c);k=z[h+12>>2];m=z[d>>2];n=z[d+16>>2];c=C(C(m+n)*C(.5));s=C(c+c);i=z[d+4>>2];o=z[d+20>>2];c=C(C(i+o)*C(.5));t=C(c+c);c=z[h+16>>2];u=C(C(e*r)+C(C(k*s)+C(t*c)));x=v[a+640>>2];d=x+B(b,24)|0;j=z[h+24>>2];w=C(C(j*j)+C(-.5));y=C(z[h+36>>2]+C(C(e*u)+C(C(r*w)+C(j*C(C(k*t)-C(s*c))))));l=C(C(l-g)*C(.5));g=C(k+k);p=C(C(1)-C(k*g));f=C(c+c);A=C(c*f);m=C(C(n-m)*C(.5));E=C(g*e);F=C(j*f);n=C(C(o-i)*C(.5));i=C(j*g);f=C(f*e);o=C(C(D(C(l*C(p-A))))+C(C(D(C(m*C(E-F))))+C(D(C(n*C(i+f))))));z[d+20>>2]=y+o;q=C(q+C(C(c*u)+C(C(t*w)+C(j*C(C(e*s)-C(r*k))))));H=C(D(C(l*C(f-i))));g=C(g*c);f=C(e+e);i=C(j*f);f=C(e*f);p=C(H+C(C(D(C(m*C(g+i))))+C(D(C(n*C(p-f))))));z[d+16>>2]=q+p;e=C(G+C(C(k*u)+C(C(s*w)+C(j*C(C(c*r)-C(t*e))))));c=C(C(D(C(l*C(E+F))))+C(C(D(C(m*C(C(C(1)-A)-f))))+C(D(C(n*C(g-i))))));z[d+12>>2]=e+c;z[d+8>>2]=y-o;z[d+4>>2]=q-p;z[d>>2]=e-c;v[a+704>>2]=0;hE(a,b,QC(a+4|0,v[v[a+620>>2]+(b<<2)>>2],b,x,a+700|0))}function kw(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=0,m=0,n=0,o=0,p=0;c=xa-32|0;xa=c;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=0;v[c+4>>2]=0;d=v[a+84>>2];a:{if(d>>>0>=(v[a+88>>2]&2147483647)>>>0){b=v[a+88>>2];h=b&2147483647?b<<1:1;b:{if(!h){break b}d=h<<5;if(!d){break b}b=v[37696];f=b+12|0;f=(l=f,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?30897:63804,o=16608,p=553,k=v[v[f>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}g=v[a+84>>2];e=(g<<5)+f|0;i=v[a+80>>2];if((g|0)>0){b=i;d=f;while(1){z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];z[d+24>>2]=z[b+24>>2];z[d+28>>2]=z[b+28>>2];b=b+32|0;d=d+32|0;if(e>>>0>d>>>0){continue}break}}z[e>>2]=z[c>>2];z[e+4>>2]=z[c+4>>2];z[e+8>>2]=z[c+8>>2];z[e+12>>2]=z[c+12>>2];z[e+16>>2]=z[c+16>>2];z[e+20>>2]=z[c+20>>2];z[e+24>>2]=z[c+24>>2];z[e+28>>2]=z[c+28>>2];if(!(!i|v[a+88>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,i);g=v[a+84>>2]}v[a+88>>2]=h;v[a+80>>2]=f;v[a+84>>2]=g+1;break a}b=v[a+80>>2]+(d<<5)|0;v[b>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];j=z[c+24>>2];v[b+28>>2]=0;z[b+24>>2]=j;v[a+84>>2]=d+1}t[a+92|0]=1;xa=c+32|0}function d2(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=0,N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0);o=v[b+16>>2];a:{b:{if(!o){k=C(34028234663852886e22);p=C(1);d=0;break b}y=z[a+72>>2];A=z[a+68>>2];D=z[a+56>>2];E=z[a+52>>2];c=v[c+40>>2];F=z[c+40>>2];G=z[c+36>>2];H=z[c+24>>2];I=z[c+20>>2];s=z[d>>2];t=z[a+80>>2];J=z[a+64>>2];L=z[a+48>>2];M=v[b+28>>2];N=v[b+24>>2];O=z[c+32>>2];P=z[c+16>>2];Q=z[c+8>>2];R=z[c+4>>2];S=z[c>>2];k=C(34028234663852886e22);a=0;d=1;p=C(1);while(1){b=B(a,20)+N|0;l=z[b+8>>2];m=z[b>>2];n=z[b+4>>2];h=C(C(F*l)+C(C(O*m)+C(n*G)));i=C(C(Q*l)+C(C(S*m)+C(n*R)));j=C(C(H*l)+C(C(P*m)+C(n*I)));g=C(C(1)/C(K(C(C(h*h)+C(C(i*i)+C(j*j))))));h=C(h*g);i=C(i*g);j=C(j*g);q=C(C(y*h)+C(C(J*i)+C(A*j)));r=C(C(D*h)+C(C(L*i)+C(E*j)));c=q>2]));if(u>C(x+s)){break a}b=B(w[b+19|0],12)+M|0;if(C(s+C(t+(c?r:q)))>2])+C(C(m*z[b>>2])+C(z[b+4>>2]*n)))*g)){break a}g=C(x-u);if(g>>0>a>>>0;if((a|0)!=(o|0)){continue}break}}v[f+12>>2]=0;z[f+8>>2]=U;z[f+4>>2]=p;z[f>>2]=T;z[e>>2]=k}return(d^-1)&1}function QA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0,g=0,h=C(0),i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=0,J=0,K=0;if(b){c=0;while(1){d=(c<<5)+a|0;g=v[d>>2];k=z[g+24>>2];l=z[g+20>>2];m=z[g+16>>2];n=z[g+8>>2];o=z[g+4>>2];p=z[g>>2];f=x[d+22>>1];if(f){d=v[d+24>>2];G=d+(f<<4)|0;while(1){s=d+32|0;f=w[d+1|0];t=s+((f<<2)+12&2032)|0;j=w[d+2|0];i=(j>>>0)/(f>>>0)|0;a:{if(!j){break a}if(f>>>0<=j>>>0){H=z[d+4>>2];q=z[d+16>>2];r=z[d+8>>2];I=i>>>0>1?i:1;i=0;f=0;while(1){J=f+I|0;K=(i<<2)+s|0;while(1){e=C(H*z[K>>2]);d=(f<<6)+t|0;h=z[d+28>>2];u=z[d+8>>2];y=z[d>>2];A=z[d+4>>2];B=z[d+24>>2];D=z[d+16>>2];E=z[d+20>>2];F=z[d+12>>2];h=C(C(h*C(C(C(u*n)+C(C(y*p)+C(o*A)))+C(C(B*k)+C(C(D*m)+C(l*E)))))+C(F-C(h*z[d+48>>2])));h=e>2]=e;e=C(e-F);k=C(k+C(C(q*B)*e));l=C(l+C(C(q*E)*e));m=C(m+C(C(q*D)*e));n=C(n+C(C(r*u)*e));o=C(o+C(C(r*A)*e));p=C(p+C(C(r*y)*e));f=f+1|0;if((J|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(G>>>0>d>>>0){continue}break}}z[g+24>>2]=k;z[g+20>>2]=l;z[g+16>>2]=m;z[g+8>>2]=n;z[g+4>>2]=o;z[g>>2]=p;c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function jR(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=v[a+20>>2];h=xa-16|0;xa=h;a=v[a+28>>2];v[a+996>>2]=0;d=a+4180|0;v[d>>2]=v[d>>2]+1;v[a+4176>>2]=v[b+16>>2];v[h+12>>2]=b;d=v[a+4212>>2];a:{if(d>>>0>=(v[a+4216>>2]&2147483647)>>>0){Ks(a+4188|0,h+12|0);break a}v[v[a+4208>>2]+(d<<2)>>2]=b;v[a+4212>>2]=d+1}Ba[v[v[b>>2]+16>>2]](b);t[a+4252|0]=1;f=a+4140|0;d=a+4160|0;v[f>>2]=d;v[a+4144>>2]=1;Ba[v[v[a+4160>>2]+16>>2]](d);i=a+4136|0;v[i>>2]=v[v[f>>2]+16>>2];v[a+4104>>2]=1;g=a+4100|0;f=a+4120|0;v[g>>2]=f;Ba[v[v[a+4120>>2]+16>>2]](f);j=a+4096|0;v[j>>2]=v[v[g>>2]+16>>2];v[a+4064>>2]=1;e=a+4060|0;g=a+4080|0;v[e>>2]=g;Ba[v[v[a+4080>>2]+16>>2]](g);e=v[v[e>>2]+16>>2];v[a+4488>>2]=1;k=a+4056|0;v[k>>2]=e;c=a+4484|0;e=a+4040|0;v[c>>2]=e;Ba[v[v[a+4040>>2]+16>>2]](e);l=a+4480|0;v[l>>2]=v[v[c>>2]+16>>2];v[a+4024>>2]=1;c=a+4020|0;v[c>>2]=b;Ba[v[v[b>>2]+16>>2]](b);c=v[v[c>>2]+16>>2];v[a+4016>>2]=c;m=a+4e3|0;Ba[v[v[c>>2]+76>>2]](c,m);yK(v[a+976>>2]);c=v[v[a+976>>2]+1024>>2];Ba[v[v[c>>2]+12>>2]](c,z[a+1080>>2],w[v[a+1140>>2]+16|0],w[a+1148|0],b,m);Js(d);b=v[i>>2];Ba[v[v[b>>2]+72>>2]](b,f);b=v[j>>2];Ba[v[v[b>>2]+72>>2]](b,g);b=v[k>>2];Ba[v[v[b>>2]+72>>2]](b,e);b=v[l>>2];Ba[v[v[b>>2]+72>>2]](b,a+4464|0);xa=h+16|0}function Gw(a,b,c){if(c?1:t[b+269|0]&1){t[a+79|0]=0;u[a+76>>1]=0;if(w[b+258|0]){v[a>>2]=1065353216;if(w[b+258|0]==1){t[a+77|0]=1}t[a+76|0]=1;t[b+252|0]=0}if(w[b+259|0]){c=w[a+76|0];v[(B(c,24)+a|0)+4>>2]=1065353216;if(w[b+259|0]==1){t[a+77|0]=w[a+77|0]+1}t[a+76|0]=c+1;t[(b+c|0)+252|0]=1}if(w[b+260|0]){c=w[a+76|0];v[(B(c,24)+a|0)+8>>2]=1065353216;if(w[b+260|0]==1){t[a+77|0]=w[a+77|0]+1}t[a+76|0]=c+1;t[(b+c|0)+252|0]=2}if(w[b+261|0]){c=w[a+76|0];v[(B(c,24)+a|0)+12>>2]=1065353216;if(w[b+261|0]==1){t[a+77|0]=w[a+77|0]+1}t[a+76|0]=c+1;t[(b+c|0)+252|0]=3}if(w[b+262|0]){c=w[a+76|0];v[(B(c,24)+a|0)+16>>2]=1065353216;if(w[b+262|0]==1){t[a+77|0]=w[a+77|0]+1}t[a+76|0]=c+1;t[(b+c|0)+252|0]=4}if(w[b+263|0]){c=w[a+76|0];v[(B(c,24)+a|0)+20>>2]=1065353216;if(w[b+263|0]==1){t[a+77|0]=w[a+77|0]+1}t[a+76|0]=c+1;t[(b+c|0)+252|0]=5}t[a+79|0]=0;a:{if(w[b+270|0]!=2|w[a+76|0]!=2){break a}if(!w[b+258|0]){t[a+76|0]=3;v[a+48>>2]=1065353216;t[b+254|0]=0;t[a+79|0]=w[a+79|0]+1}if(!w[b+259|0]){c=w[a+76|0];v[(B(c,24)+a|0)+4>>2]=1065353216;t[a+76|0]=c+1;t[(b+c|0)+252|0]=1;t[a+79|0]=w[a+79|0]+1}if(w[b+260|0]){break a}c=w[a+76|0];v[(B(c,24)+a|0)+8>>2]=1065353216;t[a+76|0]=c+1;t[(b+c|0)+252|0]=2;t[a+79|0]=w[a+79|0]+1}t[b+269|0]=w[b+269|0]&254}}function Hf(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=v[a>>2];d=v[a+4>>2]-f>>2;if(d>>>0>>0){f=a;a:{g=b-d|0;d=v[a+8>>2];b=v[a+4>>2];if(g>>>0<=d-b>>2>>>0){b:{if(!g){break b}a=b;d=g&7;if(d){while(1){v[a>>2]=v[c>>2];a=a+4|0;h=h+1|0;if((d|0)!=(h|0)){continue}break}}b=(g<<2)+b|0;if((g-1&1073741823)>>>0<7){break b}while(1){v[a>>2]=v[c>>2];v[a+4>>2]=v[c>>2];v[a+8>>2]=v[c>>2];v[a+12>>2]=v[c>>2];v[a+16>>2]=v[c>>2];v[a+20>>2]=v[c>>2];v[a+24>>2]=v[c>>2];v[a+28>>2]=v[c>>2];a=a+32|0;if((b|0)!=(a|0)){continue}break}}v[f+4>>2]=b;break a}c:{e=v[f>>2];i=b-e>>2;a=i+g|0;if(a>>>0<1073741824){d=d-e|0;e=d>>1;e=d>>>0<2147483644?a>>>0>>0?e:a:1073741823;if(e){if(e>>>0>=1073741824){break c}j=laa(e<<2)}d=(i<<2)+j|0;a=d;i=g&7;if(i){a=d;while(1){v[a>>2]=v[c>>2];a=a+4|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}h=d+(g<<2)|0;if((g-1&1073741823)>>>0>=7){while(1){v[a>>2]=v[c>>2];v[a+4>>2]=v[c>>2];v[a+8>>2]=v[c>>2];v[a+12>>2]=v[c>>2];v[a+16>>2]=v[c>>2];v[a+20>>2]=v[c>>2];v[a+24>>2]=v[c>>2];v[a+28>>2]=v[c>>2];a=a+32|0;if((h|0)!=(a|0)){continue}break}}a=v[f>>2];b=b-a|0;c=d-b|0;if((b|0)>0){H9(c,a,b)}v[f+8>>2]=(e<<2)+j;v[f+4>>2]=h;v[f>>2]=c;if(a){iaa(a)}break a}da();L()}Uf();L()}return}if(b>>>0>>0){v[a+4>>2]=f+(b<<2)}}function dt(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0;i=xa-224|0;xa=i;l=x[f+16>>1];v[i+220>>2]=-1;j=-1;if(e){j=mu(rh(v[e+4>>2]),v[e>>2],i+220|0)}k=a+5584|0;LE(k);v[c+32>>2]=0;t[c+20|0]=0;d=x[d>>1];v[i+176>>2]=h;v[i+172>>2]=2139095039;v[i+168>>2]=g;u[i+160>>1]=d;v[i+156>>2]=c;v[i+152>>2]=b;v[i+148>>2]=a;v[i+144>>2]=126712;e=d&64;d=l&16;u[i+180>>1]=((e|d)!=0)<<6;t[i+182|0]=1;v[i+164>>2]=f;e=x[f+16>>1];v[i+216>>2]=0;t[i+212|0]=0;t[i+186|0]=0;t[i+185|0]=d>>>4;d=e>>>5&1;t[i+184|0]=d;t[i+183|0]=d;a:{b:{c:{if(!(v[c+28>>2]|(j|0)==-1)){d=HE(k,v[i+220>>2],j);t[i+186|0]=1;d=et(i+144|0,i+16|0,d);t[i+186|0]=0;if(!d){break c}e=x[f+16>>1]}d=v[a+5656>>2];g=v[a+5620>>2];h=v[a+5584>>2];a=hV(i+16|0,v[b+12>>2],v[b+16>>2],z[b+20>>2]);v[i+216>>2]=a;d:{if(!(e&1)){break d}if(Ba[v[v[h>>2]+28>>2]](h,a,i+144|0)|0){break d}f=v[c+32>>2];a=(f|w[c+20|0])!=0;break b}e:{if(!(e&2)){break e}if(Ba[v[v[g>>2]+28>>2]](g,a,i+144|0)|0){break e}a=(w[c+20|0]|v[c+32>>2])!=0;break a}u[i+8>>1]=x[f+16>>1];b=Ba[v[v[d>>2]+28>>2]](d,a,i+144|0,i+8|0)|0;f=v[c+32>>2];a=(f|w[c+20|0])!=0;if(!b){break a}break b}f=v[c+32>>2];a=(f|w[c+20|0])!=0}if(!f){break a}if(!(Ba[v[v[c>>2]>>2]](c,v[c+24>>2],f)|0)){break a}v[c+32>>2]=0}Ba[v[v[c>>2]+4>>2]](c);xa=i+224|0;return a}function $K(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;h=xa-16|0;xa=h;k=v[a+8>>2];if(k){l=b+20|0;m=b+8|0;while(1){f=v[a+20>>2]+(j<<3)|0;g=v[f>>2];a:{if((g|0)<0){e=g&2147483647;g=v[f+4>>2]&2147483647;v[h+12>>2]=e>>>0>g>>>0?e:g;v[h+8>>2]=e>>>0>>0?e:g;e=v[b+12>>2];b:{if(e>>>0>=(v[b+16>>2]&2147483647)>>>0){aL(m,h+8|0);break b}g=v[h+12>>2];e=v[b+8>>2]+(e<<3)|0;v[e>>2]=v[h+8>>2];v[e+4>>2]=g;v[b+12>>2]=v[b+12>>2]+1}v[f>>2]=v[f>>2]&2147483647;v[f+4>>2]=v[f+4>>2]&2147483647;j=j+1|0;break a}c:{e=v[f+4>>2];if((e|0)<0){v[f+4>>2]=e&2147483647;break c}f=g>>>5|0;i=v[c+4>>2];if(!(f>>>0>>0&(v[v[c>>2]+(f<<2)>>2]>>>g&1))){n=i;i=e>>>5|0;if(n>>>0<=i>>>0|!(v[v[c>>2]+(i<<2)>>2]>>>e&1)){break c}}i=v[d+4>>2];d:{if(v[v[d>>2]+(f<<2)>>2]>>>g&1&i>>>0>f>>>0){break d}f=e>>>5|0;if(f>>>0>>0&(v[v[d>>2]+(f<<2)>>2]>>>e&1)){break d}v[h+12>>2]=e>>>0>>0?g:e;v[h+8>>2]=e>>>0>g>>>0?g:e;f=v[b+24>>2];if(f>>>0>=(v[b+28>>2]&2147483647)>>>0){aL(l,h+8|0);break d}i=v[h+12>>2];f=v[b+20>>2]+(f<<3)|0;v[f>>2]=v[h+8>>2];v[f+4>>2]=i;v[b+24>>2]=v[b+24>>2]+1}e=g&65535|e<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;_H(a,v[a+4>>2]&(e>>>16^e),j);k=k-1|0;break a}j=j+1|0}if(j>>>0>>0){continue}break}}XH(a);xa=h+16|0}function p0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);f=xa-128|0;xa=f;g=v[a+8>>2];k=z[g+28>>2];l=z[g+16>>2];m=z[g+32>>2];n=z[g+20>>2];o=z[g+4>>2];p=z[g+8>>2];h=z[c+8>>2];q=z[g+24>>2];i=z[c>>2];r=z[g>>2];j=z[c+4>>2];s=z[g+12>>2];v[f+124>>2]=0;z[f+112>>2]=C(C(i*r)+C(j*s))+C(h*q);z[f+120>>2]=C(C(i*p)+C(j*n))+C(h*m);z[f+116>>2]=C(C(i*o)+C(j*l))+C(h*k);g=w[a+17|0];c=g?e:d;h=z[c+8>>2];i=z[c>>2];j=z[c+4>>2];v[f+108>>2]=0;z[f+104>>2]=C(C(i*p)+C(n*j))+C(m*h);z[f+100>>2]=C(C(i*o)+C(l*j))+C(k*h);z[f+96>>2]=C(C(i*r)+C(j*s))+C(q*h);c=g?d:e;h=z[c+8>>2];i=z[c>>2];j=z[c+4>>2];v[f+92>>2]=0;z[f+88>>2]=C(C(i*p)+C(n*j))+C(m*h);z[f+84>>2]=C(C(i*o)+C(l*j))+C(k*h);z[f+80>>2]=C(C(i*r)+C(j*s))+C(q*h);k=z[a+32>>2];c=v[a+28>>2];d=v[a+24>>2];v[f+12>>2]=0;z[f+8>>2]=k;v[f>>2]=d;v[f+4>>2]=c;E_(f+16|0,f,f+112|0,f+96|0,f+80|0,f- -64|0,f+48|0,f+32|0);xa=f+128|0;c=1;a:{if(!(z[f+16>>2]<=z[a+20>>2])){break a}d=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];c=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;c=1;break a}c=v[a+16>>2];if(c>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=d;c=1;break a}v[a+16>>2]=c+1;c=1}return c|0}function it(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a+12>>2]=126968;v[a>>2]=126776;a:{b:{c:{d:{e:{b=a+116|0;switch(v[b>>2]-4|0){case 1:break c;case 2:break d;case 0:break e;default:break a}}b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:b)+32>>2];if(!b){break a}b=b+8|0;break b}b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:b)+4>>2];if(!b){break a}b=b+8|0;break b}b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:b)+36>>2];if(!b){break a}b=b+8|0}c=v[b+4>>2]-1|0;v[b+4>>2]=c;if(c){break a}Ba[v[v[b>>2]+8>>2]](b)}if(w[a+36|0]&2){b=x[v[a+40>>2]+124>>1]}else{c=v[a+116>>2];b=1;f:{if(c-7>>>0<4294967294){break f}b=x[a+168>>1];if((c|0)==5){break f}b=x[a+148>>1]}}e=b&65535;if(e){f=a+48|0;b=0;while(1){d=v[37393];g:{if(w[a+36|0]&2){c=v[a+40>>2];c=x[c+124>>1]==1?c+120|0:v[v[a+32>>2]+4856>>2]+(v[c+120>>2]<<1)|0;break g}c=FR(f)}c=v[v[d+40>>2]+(x[c+(b<<1)>>1]<<2)>>2];d=v[c+16>>2]-1|0;v[c+16>>2]=d;if(!d){Ba[v[v[c+12>>2]+8>>2]](c+12|0)}b=b+1|0;if((e|0)!=(b|0)){continue}break}}h:{i:{switch(v[a+116>>2]-5|0){case 0:if(!w[a+113|0]){break h}b=v[a+164>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}u[a+168>>1]=0;break h;case 1:break i;default:break h}}if(!w[a+113|0]){break h}b=v[a+144>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}u[a+148>>1]=0}return a|0}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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);t=z[a+4>>2];A=C(t+z[b+4>>2]);s=C(A+z[e>>2]);B=z[d+24>>2];x=C(z[c+24>>2]-B);i=z[d>>2];j=C(i+i);r=z[d+8>>2];p=z[d+4>>2];k=z[d+12>>2];m=C(k+k);q=z[b+8>>2];u=C(C(C(j*r)-C(p*m))*q);n=C(x-u);o=C(C(-u)-u);D=z[d+16>>2];y=C(z[c+16>>2]-D);w=C(C(C(i*j)+C(C(k*m)+C(-1)))*q);i=C(y-w);k=C(C(-w)-w);q=C(q*C(C(r*m)+C(j*p)));m=C(C(-q)-q);E=z[d+20>>2];r=C(z[c+20>>2]-E);j=C(r-q);p=C(C(n*o)+C(C(i*k)+C(m*j)));a:{if(p<=C(0)){break a}l=C(C(o*o)+C(C(k*k)+C(m*m)));if(l<=p){n=C(n-o);j=C(j-m);i=C(i-k);l=C(1);break a}l=C(p/l);n=C(n-C(o*l));j=C(j-C(m*l));i=C(i-C(k*l))}p=C(s*s);s=C(C(n*n)+C(C(i*i)+C(j*j)));b=p<=s;b:{if(b){break b}n=C(0);i=C(1);j=C(0);o=C(x-C(u+C(o*l)));k=C(y-C(w+C(k*l)));l=C(r-C(q+C(m*l)));m=C(C(o*o)+C(C(k*k)+C(l*l)));if(m!=C(0)){i=C(C(1)/C(K(m)));j=C(o*i);n=C(l*i);i=C(k*i)}a=v[g+4096>>2];if(a>>>0>63){break b}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+16>>2]=C(D+y)-C(t*i);z[a+8>>2]=j;z[a+4>>2]=n;z[a>>2]=i;v[a+52>>2]=-1;z[a+12>>2]=C(K(s))-A;z[a+24>>2]=C(B+x)-C(t*j);z[a+20>>2]=C(E+r)-C(t*n)}return!b|0}function U4(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,z=0,A=0,B=0,C=0;m=v[a+36>>2];a:{if(m){break a}if(b){g=v[37696];h=g+12|0;j=(s=h,z=b,A=Ba[v[v[g>>2]+20>>2]](g)|0?35013:63804,B=13134,C=2318,r=v[v[h>>2]+8>>2],Ba[r](s|0,z|0,A|0,B|0,C|0)|0)}g=b+b|0;b=b>>>0>g>>>0?-1:g;if(b){g=v[37696];h=g+12|0;k=(C=h,B=b,A=Ba[v[v[g>>2]+20>>2]](g)|0?27439:63804,z=13134,s=2319,r=v[v[h>>2]+8>>2],Ba[r](C|0,B|0,A|0,z|0,s|0)|0);g=v[37696]+12|0;h=b;b=v[37696];n=(s=g,z=h,A=Ba[v[v[b>>2]+20>>2]](b)|0?27439:63804,B=13134,C=2320,r=v[v[g>>2]+8>>2],Ba[r](s|0,z|0,A|0,B|0,C|0)|0)}v[d>>2]=j;v[f>>2]=k;v[e>>2]=n;b=v[a+32>>2];if(!v[b+100>>2]){break a}h=0;g=0;while(1){f=g;o=v[v[b+88>>2]+(x[v[a+44>>2]+(l<<1)>>1]<<2)>>2];i=v[o>>2];b=i;while(1){e=v[b+40>>2];b:{if((e|0)==-1){e=h&65535;u[(e<<2)+k>>1]=w[c+f|0];p=e<<1;q=p|1;d=f+1|0;u[(q<<1)+k>>1]=w[(v[b+28>>2]==(i|0)?g:d)+c|0];t[j+p|0]=w[v[b+36>>2]+60|0];t[j+q|0]=w[v[v[v[b+28>>2]+32>>2]+36>>2]+60|0];v[b+40>>2]=e;v[v[v[v[b+28>>2]+32>>2]+24>>2]+40>>2]=e;e=h;h=e+1|0;break b}d=f+1|0}u[(f<<1)+n>>1]=e;f=d;b=v[b+28>>2];i=v[o>>2];if((b|0)!=(i|0)){continue}break}g=f;l=l+1|0;b=v[a+32>>2];if(l>>>0>2]){continue}break}}return!m|0}function N8(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=0,x=C(0),y=C(0),A=0;i=xa+-64|0;xa=i;D5(i+32|0,i,b,c,d);if(e&1){Ba[v[v[a>>2]+8>>2]](a,i+32|0,i)}if(!(!(e&2)|!(w[b+112|0]&2))){m=z[i+44>>2];f=z[i+12>>2];n=z[i+40>>2];g=z[i+8>>2];o=z[i+32>>2];h=z[i>>2];p=z[i+36>>2];j=z[i+4>>2];if(C(C(m*f)+C(C(n*g)+C(C(o*h)+C(p*j))))>2]=f;g=C(-g);z[i+8>>2]=g;j=C(-j);z[i+4>>2]=j;h=C(-h);z[i>>2]=h}k=C(C(n*g)+C(C(p*j)+C(C(m*f)+C(o*h))));q=C(C(g*o)+C(C(C(m*j)-C(f*p))-C(n*h)));l=C(C(h*p)+C(C(C(m*g)-C(f*n))-C(o*j)));g=C(C(j*n)+C(C(C(m*h)-C(f*o))-C(p*g)));a:{if(g==C(0)){h=C(1);f=C(0);break a}f=C(C(1)/C(K(C(C(k*k)+C(C(C(g*g)+C(0))+C(0))))));h=C(k*f);r=C(g*f);f=C(f*C(0))}j=C(C(l*f)+C(C(q*f)+C(C(k*h)+C(g*r))));k=C(k*C(-f));f=C(f*g);g=C(C(r*q)+C(C(k+C(l*h))-f));h=C(f+C(C(k+C(q*h))-C(l*r)));f=C(0);f=z[b+92>>2]>C(0)|z[b+88>>2]>C(0)?f:z[b+96>>2];l=h;h=C(j+C(1));j=B9(l,h);h=B9(g,h);g=z[b+104>>2];l=V9(C(g*C(.25)));k=z[b+100>>2];j=C(C(f+C(D(C(j*C(4)))))/k);f=C(C(f+C(D(C(h*C(4)))))/g);t=a,u=i+32|0,x=l,y=V9(C(k*C(.25))),A=!(C(C(j*j)+C(f*f))<=C(1)),s=v[v[a>>2]+20>>2],Ba[s](t|0,u|0,C(x),C(y),A|0)}xa=i- -64|0}function yT(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=C(0);g=xa-160|0;xa=g;v[g+144>>2]=3;z[g+148>>2]=z[b+40>>2];z[g+152>>2]=z[b+44>>2];z[g+156>>2]=z[b+48>>2];z[g+128>>2]=A[d>>3]-A[c+12>>3];z[g+132>>2]=A[d+8>>3]-A[c+20>>3];z[g+136>>2]=A[d+16>>3]-A[c+28>>3];z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];b=0;v[g+104>>2]=0;v[g+96>>2]=2;z[g+100>>2]=z[c+60>>2];KU(g+16|0,c+36|0,c+48|0,g+104|0);d=v[g+40>>2];v[g+84>>2]=v[g+36>>2];v[g+88>>2]=d;z[g+64>>2]=z[g+16>>2];d=v[g+24>>2];v[g+68>>2]=v[g+20>>2];v[g+72>>2]=d;d=v[g+32>>2];v[g+76>>2]=v[g+28>>2];v[g+80>>2]=d;if(z[g+104>>2]==C(0)){v[g+104>>2]=872415232}v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!iV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];b=1}xa=g+160|0;return b|0}function __(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=xa-224|0;xa=i;j=Z_(a,b,0,c,i+96|0);a:{if(!j){a=0;t[d|0]=0;break a}c=i;while(1){n=(i- -64|0)+(g<<2)|0;e=0;m=v[a+40>>2];h=v[a+44>>2];b=(i+96|0)+(g<<4)|0;k=v[b+12>>2];l=v[b+8>>2];b:{c:{d:{e:{f:{f=v[b+4>>2];switch(v[b>>2]+B(f,-3)|0){case 2:break d;case 1:break e;case 0:break f;default:break b}}if(h-1>>>0<=k>>>0){break b}if(l){b=f-h|0;v[c>>2]=b<<1|t[(v[a+60>>2]+(b<<2)|0)+2|0]>=0;b=1}else{b=0}e=b;if(m-1>>>0<=l>>>0){break b}h=f<<1;if(t[(v[a+60>>2]+(f<<2)|0)+2|0]<0){h=h|1;e=b+1|0;break c}e=b+1|0;break c}if(m-1>>>0<=l>>>0|h-1>>>0<=k>>>0){break b}b=1;e=f<<1;v[c>>2]=e;h=e|1;e=2;break c}if(m-1>>>0<=l>>>0){break b}if(k){v[c>>2]=(f<<1)-1;b=1}else{b=0}e=b;if(h-1>>>0<=k>>>0){break b}h=f<<1;e=b+1|0}v[(b<<2)+c>>2]=h}v[n>>2]=e;c=c+8|0;g=g+1|0;if((j|0)!=(g|0)){continue}break}g=0;t[d|0]=0;b=v[a+60>>2];c=i;a=1;while(1){e=v[c>>2];e=w[(b+(e<<1&-4)|0)+(e&1?3:2)|0]&127;g:{if(y[(i- -64|0)+(g<<2)>>2]>=2){f=v[c+4>>2];f=w[(b+(f<<1&-4)|0)+(f&1?3:2)|0]&127;if((e|0)!=127){t[d|0]=1;if((f|0)!=127){break g}break a}if((f|0)==127){break g}t[d|0]=1;break a}if((e|0)!=127){break a}}c=c+8|0;g=g+1|0;a=j>>>0>g>>>0;if((g|0)!=(j|0)){continue}break}}xa=i+224|0;return a}function pT(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=B(g,56);if(!c){break a}f=v[37696];d=f+12|0;f=(j=d,k=c,l=Ba[v[v[f>>2]+20>>2]](f)|0?42783:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=B(c,56)+f|0;d=v[a>>2];c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+52>>2];v[c+48>>2]=v[d+48>>2];v[c+52>>2]=e;e=v[d+44>>2];v[c+40>>2]=v[d+40>>2];v[c+44>>2]=e;e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+56|0;c=c+56|0;if(h>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=B(c,56)+f|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+52>>2];v[c+48>>2]=v[b+48>>2];v[c+52>>2]=d;d=v[b+44>>2];v[c+40>>2]=v[b+40>>2];v[c+44>>2]=d;d=v[b+36>>2];v[c+32>>2]=v[b+32>>2];v[c+36>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=g;v[a>>2]=f;v[a+4>>2]=v[a+4>>2]+1}function JY(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0);c=B(v[v[b+8>>2]>>2],3);h=v[v[b>>2]+40>>2];i=v[h+28>>2];t=v[h+24>>2];a:{if(w[h+64|0]&2){c=i+(c<<1)|0;h=x[c+4>>1];i=x[c+2>>1];c=x[c>>1];break a}c=i+(c<<2)|0;h=v[c+8>>2];i=v[c+4>>2];c=v[c>>2]}c=t+B(c,12)|0;f=z[c>>2];b=v[b+4>>2];g=z[b>>2];d=z[c+4>>2];e=z[b+12>>2];j=z[c+8>>2];k=z[b+24>>2];F=C(C(C(f*g)+C(d*e))+C(j*k));h=t+B(h,12)|0;l=z[h>>2];i=t+B(i,12)|0;m=z[i>>2];c=w[b+72|0];u=c?l:m;n=z[h+4>>2];q=z[i+4>>2];y=c?n:q;r=z[h+8>>2];s=z[i+8>>2];A=c?r:s;G=C(F-C(C(C(g*u)+C(y*e))+C(A*k)));o=z[b+4>>2];D=z[b+16>>2];E=z[b+28>>2];p=C(C(C(f*o)+C(d*D))+C(j*E));l=c?m:l;m=c?q:n;n=c?s:r;q=C(p-C(C(C(l*o)+C(m*D))+C(n*E)));k=C(F-C(C(C(g*l)+C(m*e))+C(n*k)));e=C(p-C(C(C(u*o)+C(y*D))+C(A*E)));g=C(C(G*q)-C(k*e));r=e;s=f;f=z[b+8>>2];p=d;d=z[b+20>>2];e=z[b+32>>2];j=C(C(C(s*f)+C(p*d))+C(j*e));o=C(j-C(C(C(l*f)+C(m*d))+C(n*e)));d=C(j-C(C(C(u*f)+C(y*d))+C(A*e)));f=C(C(r*o)-C(q*d));d=C(C(d*k)-C(o*G));e=C(C(g*g)+C(C(f*f)+C(d*d)));if(e>C(0)){p=g;g=C(C(1)/C(K(e)));H=C(p*g);I=C(f*g);J=C(d*g)}z[a+8>>2]=H;z[a+4>>2]=J;z[a>>2]=I}function $z(a,b,c){var d=0,e=0,f=C(0),g=C(0),h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=C(0),r=0;i=v[a+7684>>2];if((i|0)!=64){if(c){g=z[b+44>>2];h=v[b+60>>2];e=v[b+56>>2];d=B(i,44)+a|0;t[d+4|0]=w[b+48|0];o=1;t[d+5|0]=1;v[d>>2]=0;v[d+12>>2]=e;v[d+16>>2]=h;z[d+8>>2]=g;i=i+1|0;g=z[b+24>>2];j=z[b+20>>2];k=z[b+16>>2];a:{if((c|0)==1){l=g;m=j;n=k;break a}h=1;l=g;m=j;n=k;while(1){e=(o<<6)+b|0;f=z[e+44>>2];p=(r<<6)+b|0;b:{if(!(f!=z[p+44>>2]|z[e+56>>2]!=z[p+56>>2]|(!(C(C(z[e+8>>2]*z[p+8>>2])+C(C(z[e>>2]*z[p>>2])+C(z[e+4>>2]*z[p+4>>2])))>=C(.9990000128746033))|z[e+60>>2]!=z[p+60>>2]))){f=z[e+16>>2];k=fn?n:f;f=z[e+24>>2];g=g>f?g:f;q=z[e+20>>2];j=j>q?j:q;l=f>l?l:f;m=m>2]=n;t[d+5|0]=h;z[d+40>>2]=g;z[d+36>>2]=j;z[d+32>>2]=k;z[d+28>>2]=l;z[d+24>>2]=m;h=v[e+60>>2];r=v[e+56>>2];d=B(i,44)+a|0;t[d+4|0]=w[e+48|0];u[d+2>>1]=0;t[d+5|0]=1;u[d>>1]=o;v[d+12>>2]=r;v[d+16>>2]=h;z[d+8>>2]=f;i=i+1|0;n=z[e+16>>2];k=n;m=z[e+20>>2];j=m;l=z[e+24>>2];g=l;r=o;h=1}o=o+1|0;if((o|0)!=(c|0)){continue}break}if((h&255)==1){break a}t[d+5|0]=h}z[d+20>>2]=n;z[d+40>>2]=g;z[d+36>>2]=j;z[d+32>>2]=k;z[d+28>>2]=l;z[d+24>>2]=m}v[a+7684>>2]=i;a=1}else{a=0}return a}function Yu(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=xa-16|0;xa=e;d=v[a+4>>2];h=d&16777215;a:{if(!h){break a}k=w[a+80|0];b=v[a+8>>2];if(!b){b=Pu(v[a>>2],d>>>24&15);v[a+8>>2]=b}f=a+16|0;c=v[a>>2];b:{c:{if(d&1){if(!c){break c}g=c+16|0;i=v[v[g+976>>2]+1024>>2];j=f+32|0;Ba[v[v[i>>2]+48>>2]](i,j);GR(f,b- -64|0);g=v[v[g+976>>2]+1024>>2];Ba[v[v[g>>2]+44>>2]](g,j)}if(!(d&2)|!c){break b}d=x[b+124>>1];ER(f,(d|0)==1?b+120|0:v[c+4856>>2]+(v[b+120>>2]<<1)|0,d);c=v[v[c+992>>2]+1024>>2];Ba[v[v[c>>2]+64>>2]](c,f+32|0);break b}GR(f,b- -64|0)}c=v[a+4>>2];if(c&4){z[a+48>>2]=z[b>>2];z[a+52>>2]=z[b+4>>2];z[a+56>>2]=z[b+8>>2];z[a+60>>2]=z[b+12>>2];z[a- -64>>2]=z[b+16>>2];z[a+68>>2]=z[b+20>>2];z[a+72>>2]=z[b+24>>2]}if(c&8){v[a+32>>2]=v[b+28>>2];v[a+36>>2]=v[b+32>>2];v[a+40>>2]=v[b+36>>2];v[a+44>>2]=v[b+40>>2]}if(c&16){z[a+76>>2]=z[b+44>>2]}if(c&32){z[a+144>>2]=z[b+48>>2]}if(c&64){t[a+80|0]=w[b+52|0]}if(c&128){z[a+148>>2]=z[b+56>>2]}if(c&256){z[a+152>>2]=z[b+60>>2]}c=v[a-12>>2];b=0;d:{if(!c){break d}e:{switch(x[c+4>>1]-5|0){case 0:b=c- -64|0;break d;case 8:b=c- -64|0;break d;default:break e}}b=c- -64|0}if(!b){break a}t[e|0]=k;v[e+8>>2]=h;SJ(b,f,e+8|0,e,1)}v[a+8>>2]=0;v[a+4>>2]=w[a+7|0]<<24;xa=e+16|0}function K4(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=B(f,60);if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?27653:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=B(c,60)+e|0;d=v[a>>2];c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];h=v[d+52>>2];v[c+48>>2]=v[d+48>>2];v[c+52>>2]=h;v[c+56>>2]=v[d+56>>2];d=d+60|0;c=c+60|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}c=B(c,60)+e|0;z[c>>2]=z[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];z[c+28>>2]=z[b+28>>2];z[c+32>>2]=z[b+32>>2];z[c+36>>2]=z[b+36>>2];z[c+40>>2]=z[b+40>>2];z[c+44>>2]=z[b+44>>2];v[c+56>>2]=v[b+56>>2];d=v[b+52>>2];v[c+48>>2]=v[b+48>>2];v[c+52>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function KM(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=0,n=C(0);if(v[a+32>>2]){while(1){f=v[v[a+28>>2]+(e<<2)>>2]>>>7|0;d=v[(v[v[a+36>>2]+16>>2]+B(f,24)|0)+20>>2];c=v[d+36>>2];h=z[c+76>>2];i=z[c+92>>2];j=z[c+128>>2];k=z[c+96>>2];l=v[a+48>>2];m=v[a+40>>2];g=e<<6;b=g+v[a+44>>2]|0;z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];n=z[c+24>>2];v[b+28>>2]=0;v[b+32>>2]=0;v[b+8>>2]=0;v[b+12>>2]=1065353216;v[b>>2]=0;v[b+4>>2]=0;z[b+24>>2]=n;v[b+36>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+56>>2]=0;v[b+60>>2]=0;b=m+g|0;t[b+62|0]=1;u[b+54>>1]=0;u[b+56>>1]=0;u[b+58>>1]=0;u[b+60>>1]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+40>>2]=0;v[b+8>>2]=0;z[b+44>>2]=K(k);b=B(e,48)+l|0;z[b+12>>2]=j;z[b+40>>2]=i;z[b+28>>2]=h;v[b+32>>2]=0;v[b+36>>2]=f;z[b>>2]=z[c+64>>2];z[b+4>>2]=z[c+68>>2];z[b+8>>2]=z[c+72>>2];z[b+16>>2]=z[c+80>>2];z[b+20>>2]=z[c+84>>2];z[b+24>>2]=z[c+88>>2];b=v[d+36>>2];z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];z[d+24>>2]=z[b+24>>2];e=e+1|0;if(e>>>0>2]){continue}break}}}function ET(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=C(0);g=xa-160|0;xa=g;v[g+144>>2]=2;h=z[b+44>>2];z[g+148>>2]=z[b+40>>2];z[g+152>>2]=h*C(.5);z[g+128>>2]=A[d>>3]-A[c+12>>3];z[g+132>>2]=A[d+8>>3]-A[c+20>>3];z[g+136>>2]=A[d+16>>3]-A[c+28>>3];z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];d=0;v[g+104>>2]=0;v[g+96>>2]=2;z[g+100>>2]=z[c+60>>2];KU(g+16|0,c+36|0,c+48|0,g+104|0);b=v[g+40>>2];v[g+84>>2]=v[g+36>>2];v[g+88>>2]=b;z[g+64>>2]=z[g+16>>2];b=v[g+24>>2];v[g+68>>2]=v[g+20>>2];v[g+72>>2]=b;b=v[g+32>>2];v[g+76>>2]=v[g+28>>2];v[g+80>>2]=b;if(z[g+104>>2]==C(0)){v[g+104>>2]=872415232}v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!iV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];d=1}xa=g+160|0;return d|0}function F6(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a+24>>2]=151512;b=v[a+4>>2];c=v[b+8>>2];v[b+8>>2]=c;if(!c){while(1){c=v[a+16>>2];t[v[c+20>>2]+76|0]=0;if(w[c+32|0]){c=v[c+20>>2];if(!w[c+76|0]){t[c+76|0]=1;v[c+72>>2]=v[c+72>>2]+1}}c=v[a+20>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}a:{b:{c:{if(b){c=v[b+4>>2];d:{if(w[b+8|0]){v[b+4>>2]=0;d=v[a+12>>2];v[b>>2]=v[d>>2];v[d>>2]=b;break d}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b-v[b-4>>2]|0)}if(c){break c}}d=v[a+16>>2];c=v[d+16>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}e:{if(b){c=v[b+4>>2];f:{if(w[b+8|0]){v[b+4>>2]=0;e=v[d+12>>2];v[b>>2]=v[e>>2];v[e>>2]=b;break f}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b-v[b-4>>2]|0)}if(c){break e}}c=0;if(!v[d+28>>2]){break e}e=0;while(1){f=v[d+4>>2]+B(e,28)|0;c=v[f+20>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}c=0;g:{if(!b){break g}c=v[b+4>>2];if(w[b+8|0]){v[b+4>>2]=0;f=v[f+12>>2];v[b>>2]=v[f>>2];v[f>>2]=b;break g}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,b-v[b-4>>2]|0)}if(c){break e}e=e+1|0;if(e>>>0>2]){continue}break}c=0}if(!c){break b}}Ba[v[v[c>>2]+8>>2]](c);Ba[v[v[c>>2]+28>>2]](c);break a}v9(v[v[a+16>>2]+20>>2],-1)}b=v[a+4>>2];c=v[b+8>>2];v[b+8>>2]=c;if(!c){continue}break}}v[v[a+4>>2]+16>>2]=2;ta(0);L()}function W8(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;v[a>>2]=149136;e=a+244|0;c=v[a+248>>2];if(c){while(1){b=v[v[e>>2]+(f<<2)>>2];if(b){while(1){c=v[b>>2];if(b){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,b)}b=c;if(b){continue}break}c=v[a+248>>2]}f=f+1|0;if(f>>>0>>0){continue}break}}v[d+12>>2]=0;X8(e,0,d+12|0);Y8(e,v[a+248>>2]);b=v[a+260>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+256>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+252>>2];if(!((b|0)<0|!(b&2147483647))){b=v[e>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}}b=v[a+240>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+200>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+196>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+104>>2]=149328;v[a+180>>2]=0;b=v[a+184>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+176>>2];if((b|0)==(a+108|0)){t[a+172|0]=0;break a}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+12>>2]=149260;v[a+88>>2]=0;b=v[a+92>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+84>>2];if((b|0)==(a+16|0)){t[a+80|0]=0;break b}if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}xa=d+16|0;return a|0}function Pa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0;d=laa(252);v[d+16>>2]=0;v[d+20>>2]=0;v[d+52>>2]=0;v[d+56>>2]=0;v[d+48>>2]=2;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+60>>2]=0;v[d+64>>2]=0;v[d+68>>2]=0;v[d+72>>2]=0;v[d+76>>2]=0;v[d+80>>2]=0;v[d+84>>2]=0;v[d+88>>2]=0;v[d+92>>2]=0;z[d+96>>2]=z[a+4>>2]*C(.20000000298023224);e=z[a>>2];v[d+240>>2]=0;v[d+232>>2]=262144;v[d+236>>2]=8;v[d+224>>2]=1048576;v[d+228>>2]=67108864;v[d+216>>2]=524288;v[d+220>>2]=81920;v[d+208>>2]=25165824;v[d+212>>2]=16777216;v[d+200>>2]=2122317823;v[d+204>>2]=33554432;v[d+192>>2]=2122317823;v[d+196>>2]=2122317823;v[d+184>>2]=-25165825;v[d+188>>2]=-25165825;v[d+176>>2]=1053609164;v[d+180>>2]=-25165825;v[d+168>>2]=1;v[d+172>>2]=2139095039;v[d+160>>2]=2139095039;v[d+164>>2]=8192;v[d+152>>2]=0;v[d+156>>2]=65536;v[d+144>>2]=128;v[d+148>>2]=16;v[d+136>>2]=0;v[d+140>>2]=0;v[d+128>>2]=1;v[d+132>>2]=100;v[d+120>>2]=0;v[d+124>>2]=1;v[d+108>>2]=0;e=C(e*C(.03999999910593033));z[d+104>>2]=e;z[d+100>>2]=e;f=v[a>>2];a=v[a+4>>2];v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=-1055066685;v[d+244>>2]=f;v[d+248>>2]=a;a=I6(b,0);v[d+32>>2]=1;v[d+116>>2]=a;v[d+112>>2]=66;v[d+40>>2]=0;v[d+44>>2]=0;v[d+12>>2]=c;return d|0}function sT(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=C(0),i=0,j=0,k=0,l=C(0);g=xa-160|0;xa=g;v[g+144>>2]=3;z[g+148>>2]=z[b+40>>2];z[g+152>>2]=z[b+44>>2];z[g+156>>2]=z[b+48>>2];i=A[c+12>>3];z[g+128>>2]=A[d>>3]-i;j=A[c+20>>3];z[g+132>>2]=A[d+8>>3]-j;k=A[c+28>>3];z[g+136>>2]=A[d+16>>3]-k;z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];v[g+96>>2]=3;z[g+100>>2]=z[c+60>>2];z[g+104>>2]=z[c- -64>>2];z[g+108>>2]=z[c+68>>2];z[g+80>>2]=A[c+36>>3]-i;z[g+84>>2]=A[c+44>>3]-j;z[g+88>>2]=A[c+52>>3]-k;z[g+64>>2]=z[c+72>>2];z[g+68>>2]=z[c+76>>2];z[g+72>>2]=z[c+80>>2];z[g+76>>2]=z[c+84>>2];v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;b=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!iV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];l=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+36>>2]=h;z[f+32>>2]=l;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];b=1}xa=g+160|0;return b|0}function dy(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=v[a+4>>2];if(!e){break a}d=v[e+32768>>2];c=d+(b+15&-16)|0;if(c>>>0>32767){break a}v[e+32768>>2]=c;return d+e|0}c=v[a+20>>2];if(c>>>0>2]){v[a+20>>2]=c+1;c=v[v[a+8>>2]+(c<<2)>>2];v[a+4>>2]=c;a=b+15&-16;b=a>>>0<32768;v[c+32768>>2]=b?a:0;return(b?c:0)|0}c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,32772,24422,12859,1518)|0;v[d+32768>>2]=0;v[a+4>>2]=d;c=v[a+12>>2];b:{if(c>>>0>=(v[a+16>>2]&2147483647)>>>0){c=0;d=v[a+16>>2];g=d&2147483647?d<<1:1;c:{if(!g){break c}d=g<<2;if(!d){break c}e=v[37696];c=e+12|0;c=(j=c,k=d,l=Ba[v[v[e>>2]+20>>2]](e)|0?60597:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+12>>2];e=(f<<2)+c|0;if((f|0)>0){h=v[a+8>>2];d=c;while(1){v[d>>2]=v[h>>2];h=h+4|0;d=d+4|0;if(e>>>0>d>>>0){continue}break}}v[e>>2]=v[a+4>>2];d:{if(v[a+16>>2]<0){break d}e=v[a+8>>2];if(!e){break d}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e);f=v[a+12>>2]}v[a+16>>2]=g;v[a+8>>2]=c;v[a+12>>2]=f+1;d=v[a+12>>2];break b}v[v[a+8>>2]+(c<<2)>>2]=d;d=c+1|0;v[a+12>>2]=d}v[a+20>>2]=d;d=b+15&-16;c=v[a+4>>2];b=v[c+32768>>2];a=d+b|0;if(a>>>0<=32767){v[c+32768>>2]=a;a=b+c|0}else{a=0}return a|0}function F5(a,b,c,d,e,f,g){var h=0,i=0,j=C(0),k=C(0),l=C(0),m=0,n=0;i=z[g+12>>2]>C(0);e=i?C(0):z[g+8>>2]>C(0)?C(0):e;if(C(e+c)>b){j=z[f>>2];k=z[f+4>>2];l=z[f+8>>2];h=v[a+4>>2];v[a+4>>2]=h+80;l=C(-l);z[h+56>>2]=l;k=C(-k);z[h+52>>2]=k;j=C(-j);z[h+48>>2]=j;v[h+40>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0;z[h+24>>2]=l;z[h+20>>2]=k;z[h+16>>2]=j;v[h+8>>2]=0;v[h>>2]=0;v[h+4>>2]=0;u[h+78>>1]=0;c=C(c-b);z[h+12>>2]=-c;m=x[h+76>>1];n=m|64;u[h+76>>1]=n;j=z[g+8>>2];a:{if(i|j>C(0)){z[h+64>>2]=j;z[h+68>>2]=z[g+12>>2];i=m|81;break a}u[h+78>>1]=2049;z[h+64>>2]=z[g>>2];z[h+68>>2]=z[g+4>>2];i=(c>2]>C(0))){break a}i=i|4}v[h+44>>2]=0;u[h+76>>1]=i}if(C(d-e)>2];v[i+4>>2]=a+80;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;z[a+16>>2]=z[f>>2];z[a+20>>2]=z[f+4>>2];c=z[f+8>>2];v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=c;z[a+48>>2]=z[f>>2];z[a+52>>2]=z[f+4>>2];c=z[f+8>>2];b=C(d-b);z[a+12>>2]=b;z[a+56>>2]=c;f=x[a+76>>1];h=f|64;u[a+76>>1]=h;c=z[g+8>>2];b:{if(z[g+12>>2]>C(0)|c>C(0)){z[a+64>>2]=c;z[a+68>>2]=z[g+12>>2];f=f|81;break b}u[a+78>>1]=2049;z[a+64>>2]=z[g>>2];z[a+68>>2]=z[g+4>>2];f=h|(b>C(0)?24:16);if(!(z[g>>2]>C(0))){break b}f=f|4}v[a+44>>2]=0;u[a+76>>1]=f}}function Bh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=v[a+24>>2];if(d){i=xa-16|0;xa=i;if(v[d+28>>2]){b=v[d+12>>2];e=v[d>>2];c=v[d+16>>2];Ba[v[v[e>>2]+12>>2]](e,c)|0;t[e+76|0]=c;v[e+32>>2]=b;Ba[v[v[e>>2]+8>>2]](e)}c=v[d>>2];c=Ba[v[v[c>>2]+28>>2]](c)|0;g=v[d+16>>2];b=(B((c<<2)+16|0,c)+B(g,B(c,24)+240|0)|0)+136|0;if(b){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,10053,524)|0}else{c=0}c=I9(c,0,b);b=v[d>>2];h=Ba[v[v[b>>2]+28>>2]](b)|0;v[c+40>>2]=0;v[c+44>>2]=0;e=g<<5;b=e+60|0;v[c+4>>2]=c+b;v[c>>2]=c+60;f=h<<2;b=B(B(g,f+24|0),6)+b|0;v[c+8>>2]=b+c;b=b+B(f,h)|0;v[c+12>>2]=b+c;b=b+f|0;v[c+16>>2]=b+c;b=b+f|0;v[c+20>>2]=b+c;b=b+f|0;v[c+24>>2]=b+c;b=b+f|0;v[c+28>>2]=b+c;b=b+e|0;v[c+32>>2]=b+c;v[c+36>>2]=c+(b+e|0);b=v[d>>2];b=Ba[v[v[b>>2]+28>>2]](b)|0;f=B(v[d+16>>2],272)+B(b,20)|0;if(f){b=v[37696];j=Ba[v[v[b+12>>2]+8>>2]](b+12|0,f,24422,10053,567)|0}v[c+48>>2]=j;b=v[37696];d=yG(Ba[v[v[b+12>>2]+8>>2]](b+12|0,24,24422,10053,570)|0);v[c+52>>2]=d;v[d+20>>2]=f;v[d+16>>2]=j;h=v[d+8>>2];g=h-1|0;v[d+8>>2]=g;e=v[d+4>>2];b=f+j|0;v[i+12>>2]=b;a:{if(g>>>0>=(v[d+12>>2]&2147483647)>>>0){Us(d+4|0,i+12|0);break a}v[e+(g<<2)>>2]=b;v[d+8>>2]=h}xa=i+16|0}v[c+56>>2]=v[a+116>>2];return c|0}function gA(a,b,c,d){var e=0,f=0,g=0,h=C(0),i=0,j=C(0),k=C(0),l=0,m=0,n=0,o=0,p=0,q=C(0),r=C(0),s=0,u=0,y=0,A=0,D=0;a:{e=x[a+22>>1];if(!e){break a}g=v[a+24>>2];s=g+(e<<4)|0;e=v[a+28>>2];while(1){f=w[g+2|0];u=(f<<2)+12&2032;o=w[g|0]==3;i=(B(f,o?112:48)+g|0)- -64|0;y=w[g+3|0];A=w[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}D=f&252;f=0;n=0;while(1){l=f<<2;h=z[i+l>>2];z[e>>2]=h;j=z[i+(l|4)>>2];z[e+4>>2]=j;q=z[i+(l|8)>>2];z[e+8>>2]=q;r=z[i+(l|12)>>2];z[e+12>>2]=r;k=C(r+C(q+C(j+C(k+h))));f=f+4|0;e=e+16|0;n=n+4|0;if((D|0)!=(n|0)){continue}break}}if(!p){break b}while(1){h=z[i+(f<<2)>>2];z[e>>2]=h;f=f+1|0;e=e+4|0;k=C(k+h);m=m+1|0;if((m|0)!=(p|0)){continue}break}}f=i+u|0;i=o?128:64;d:{if(!v[g+52>>2]){break d}g=v[g+56>>2];if(!g){break d}t[g|0]=1}g=f+B(i,y)|0;if(s>>>0>g>>>0){continue}break}if(!(A&1)|x[a+8>>1]!=65535|(x[a+10>>1]!=65535|k==C(0))){break a}h=z[c+28>>2];j=z[d+28>>2];if(!(h>2];c=v[c+72>>2];e=v[v[a+24>>2]+60>>2];a=v[b+8>>2];v[b+8>>2]=a+1;a=v[b+4>>2]+(a<<5)|0;z[a+8>>2]=h>2]=k;v[a>>2]=e;b=d<<7;c=c<<7;v[a+16>>2]=b>>>0>c>>>0?b:c;v[a+12>>2]=b>>>0>>0?b:c}}function FH(a,b,c){var d=0,e=0,f=0,g=0;g=xa-16|0;xa=g;t[b+68|0]=w[b+68|0]&254;d=v[b+60>>2];a:{if(!d|v[d+164>>2]){break a}f=v[d+28>>2];if(!f){break a}d=v[d+20>>2];while(1){f=f-1|0;e=v[d>>2];b:{if(w[e+20|0]!=4){break b}e=v[e+24>>2];v[g+8>>2]=e;if(t[e+68|0]&1|(b|0)==(e|0)){break b}GH(c,g+8|0)}d=d+4|0;if(f){continue}break}}d=v[b- -64>>2];c:{if(!d){d=0;break c}if(v[d+164>>2]){break c}f=v[d+28>>2];if(!f){break c}d=v[d+20>>2];while(1){f=f-1|0;e=v[d>>2];d:{if(w[e+20|0]!=4){break d}e=v[e+24>>2];v[g+12>>2]=e;if(t[e+68|0]&1|(b|0)==(e|0)){break d}GH(c,g+12|0)}d=d+4|0;if(f){continue}break}d=v[b+64>>2]}b=v[b+60>>2];c=b?b:d;f=c;d=(b|0)==(c|0)?d:b;b=v[c+164>>2];e:{if(!b){c=v[a+292>>2];if(!c){DH(a+4|0);c=v[a+292>>2]}v[a+292>>2]=v[c>>2];v[a+284>>2]=v[a+284>>2]+1;c=yH(c,f);v[f+164>>2]=c;break e}c=zH(b);if(!v[c+20>>2]){break e}JH(c)}f:{if(!d){break f}b=v[d+164>>2];g:{if(!b){b=v[a+292>>2];if(!b){DH(a+4|0);b=v[a+292>>2]}v[a+292>>2]=v[b>>2];v[a+284>>2]=v[a+284>>2]+1;b=yH(b,d);v[d+164>>2]=b;break g}b=zH(b);if(!v[b+20>>2]){break g}JH(b)}if((b|0)==(c|0)){break f}a=v[b+12>>2];h:{if(a>>>0>2]){a=c;c=b;break h}v[b+12>>2]=a+1;a=b}v[c+4>>2]=a;v[v[a+8>>2]+16>>2]=c;v[a+8>>2]=v[c+8>>2]}xa=g+16|0}function PZ(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0);a:{if(c>C(9999999747378752e-20)){l=C(K(c));c=C(C(1)/l);e=C(c*z[b+8>>2]);f=C(c*z[b>>2]);c=C(c*z[b+4>>2]);break a}c=C(0);g=z[b+8>>2];h=z[b>>2];i=z[b+4>>2];j=C(C(g*g)+C(C(h*h)+C(i*i)));if(j>C(0)){c=C(C(1)/C(K(j)));e=C(g*c);k=C(i*c);c=C(h*c)}e=C(-e);f=C(-c);c=C(-k)}p=v[a+12>>2];q=v[p+4096>>2];if(q>>>0<=63){b=v[a+8>>2];t=z[b+20>>2];u=z[b+24>>2];w=z[b+16>>2];r=v[a+16>>2];x=z[r+4>>2];y=z[r>>2];A=z[r+8>>2];g=z[b+8>>2];h=z[b+12>>2];i=z[b>>2];j=z[b+4>>2];k=z[v[a>>2]+4>>2];v[p+4096>>2]=q+1;a=(q<<6)+p|0;v[a+52>>2]=d;z[a+12>>2]=l-k;m=C(e+e);n=C(f+f);o=C(c+c);s=C(C(g*m)+C(C(i*n)+C(j*o)));l=C(C(h*h)+C(-.5));z[a+8>>2]=-C(C(g*s)+C(C(m*l)+C(h*C(C(i*o)-C(n*j)))));z[a+4>>2]=-C(C(j*s)+C(C(o*l)+C(h*C(C(g*n)-C(m*i)))));z[a>>2]=-C(C(i*s)+C(C(n*l)+C(h*C(C(j*m)-C(o*g)))));e=C(A+C(e*k));e=C(e+e);f=C(y+C(f*k));f=C(f+f);c=C(x+C(c*k));c=C(c+c);k=C(C(g*e)+C(C(i*f)+C(j*c)));z[a+24>>2]=u+C(C(g*k)+C(C(e*l)+C(h*C(C(i*c)-C(f*j)))));z[a+20>>2]=t+C(C(j*k)+C(C(c*l)+C(h*C(C(g*f)-C(e*i)))));z[a+16>>2]=w+C(C(i*k)+C(C(f*l)+C(h*C(C(j*e)-C(c*g)))))}}function vk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);c=v[a+12>>2];f=xa+-64|0;xa=f;n=z[a+8>>2];if(n!=C(0)){l=z[b+20>>2];w=z[b+16>>2];g=z[b>>2];k=C(g+g);h=z[b+8>>2];i=z[b+4>>2];j=z[b+12>>2];m=C(j+j);o=C(C(C(C(k*h)-C(i*m))*d)+z[b+24>>2]);z[f+56>>2]=o;l=C(l+C(C(C(h*m)+C(k*i))*d));z[f+52>>2]=l;p=C(j*C(.7071067690849304));q=C(g*C(-0));r=C(i*C(.7071067690849304));s=C(h*C(0));z[f+44>>2]=C(C(p+q)-r)-s;t=C(g*C(.7071067690849304));u=C(j*C(0));z[f+40>>2]=C(i*C(-0))+C(t+C(u+C(h*C(.7071067690849304))));z[f+36>>2]=q+C(s+C(p+r));z[f+32>>2]=C(h*C(-.7071067690849304))+C(C(i*C(0))+C(u+t));k=C(w+C(C(C(g*k)+C(C(j*m)+C(-1)))*d));z[f+48>>2]=k;v[c+4>>2]=e?-65536:-8355712;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=1065353216;v[f>>2]=0;v[f+4>>2]=0;YU(c,f);d=z[b+20>>2];g=z[b+16>>2];i=z[b+24>>2];h=C(o-i);z[f+20>>2]=i+h;j=C(l-d);z[f+16>>2]=d+j;z[f+8>>2]=i;z[f+4>>2]=d;z[f>>2]=g;d=C(k-g);z[f+12>>2]=g+d;z[f+24>>2]=C(K(C(C(h*h)+C(C(d*d)+C(j*j)))))*C(.15000000596046448);$U(c,f);a=YU(c,f+32|0);z[f+4>>2]=n*C(.30000001192092896);v[f>>2]=20;bV(a,f)}xa=f- -64|0}function JP(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=xa-16|0;xa=h;d=v[v[a+976>>2]+1024>>2];Ba[v[v[d>>2]+48>>2]](d,v[b+28>>2]+32|0);d=v[a+1012>>2];Ba[v[v[d>>2]+20>>2]](d,v[b+32>>2]);d=((v[v[b+28>>2]+68>>2]<<2)+a|0)+2676|0;v[d>>2]=v[d>>2]-1;d=xa-48|0;xa=d;if(v[b+8>>2]<0){_I(b);g=d+8|0;e=v[v[b+4>>2]+40>>2];f=v[v[e+976>>2]+1024>>2];Ba[v[v[f>>2]+84>>2]](g,f);oJ(v[e+2168>>2],b,c?4:0,g,(v[e+2360>>2]&8)>>>3|0)}xa=d+48|0;e=v[a+2384>>2];a=v[v[b+4>>2]+40>>2];c=v[b+8>>2];d=v[a+2516>>2]+(c>>>3&268435452)|0;g=v[d>>2];j=d,k=Uaa(-2,c)&g,v[j>>2]=k;if(v[b+36>>2]!=-1){lS(v[a+1152>>2],b)}RH(v[a+2368>>2],v[b+32>>2]);RH(v[v[v[b+4>>2]+40>>2]+2376>>2],v[b+8>>2]&2147483647);a=0;g=v[b+4>>2];f=g+32|0;c=f;a:{while(1){d=a;c=v[c>>2];if(!c){break a}a=c;if((b|0)!=(a|0)){continue}break}v[(d?d:f)>>2]=v[b>>2];v[g+36>>2]=v[g+36>>2]-1}c=b;if(w[e+24|0]){NO(v[e+12>>2],v[e+16>>2])}b=0;a=v[e+16>>2]-1|0;b:{if((a|0)<0){break b}i=B(v[e+4>>2],v[e>>2]);g=v[e+12>>2];while(1){d=a+b>>1;f=v[g+B(d,12)>>2];if(!(f>>>0>c>>>0|c>>>0>=f+i>>>0)){a=g+B(d,12)|0;v[c>>2]=v[a+4>>2];v[a+4>>2]=c;if(w[e+24|0]){v[e+8>>2]=d}t[e+24|0]=0;break b}f=c>>>0>f>>>0;b=f?d+1|0:b;a=f?a:d-1|0;if((b|0)<=(a|0)){continue}break}}xa=h+16|0}function yA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;vA(a,c);c=x[a+22>>1];if(c){b=v[a+24>>2];g=b+(c<<4)|0;while(1){d=0;e=w[b+1|0];a=e<<4;c=(a+b|0)+192|0;f=w[b+2|0];a=(((c+B(e,144)|0)+(a&0-(t[b+3|0]&1))|0)+(f<<4)|0)+(((f|0)!=0)<<7)|0;if(e){while(1){z[c+80>>2]=z[c+80>>2]-z[c+64>>2];z[c+92>>2]=z[c+92>>2]-z[c+76>>2];z[c+88>>2]=z[c+88>>2]-z[c+72>>2];z[c+84>>2]=z[c+84>>2]-z[c+68>>2];c=c+144|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}b=B(f,144)+a|0;a:{if(!f){break a}if(f-1>>>0>=3){e=f&252;c=0;while(1){d=v[a+84>>2];v[a+48>>2]=v[a+80>>2];v[a+52>>2]=d;d=v[a+228>>2];v[a+192>>2]=v[a+224>>2];v[a+196>>2]=d;d=v[a+372>>2];v[a+336>>2]=v[a+368>>2];v[a+340>>2]=d;d=v[a+516>>2];v[a+480>>2]=v[a+512>>2];v[a+484>>2]=d;d=v[a+92>>2];v[a+56>>2]=v[a+88>>2];v[a+60>>2]=d;d=v[a+236>>2];v[a+200>>2]=v[a+232>>2];v[a+204>>2]=d;d=v[a+380>>2];v[a+344>>2]=v[a+376>>2];v[a+348>>2]=d;d=v[a+524>>2];v[a+488>>2]=v[a+520>>2];v[a+492>>2]=d;a=a+576|0;c=c+4|0;if((e|0)!=(c|0)){continue}break}}c=0;f=f&3;if(!f){break a}while(1){e=v[a+84>>2];v[a+48>>2]=v[a+80>>2];v[a+52>>2]=e;e=v[a+92>>2];v[a+56>>2]=v[a+88>>2];v[a+60>>2]=e;a=a+144|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(b>>>0>>0){continue}break}}}function yaa(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(naa(a,v[b+8>>2],e)){if(!(v[b+28>>2]==1|v[b+4>>2]!=(c|0))){v[b+28>>2]=d}return}a:{if(naa(a,v[b>>2],e)){if(!(v[b+16>>2]!=(c|0)&v[b+20>>2]!=(c|0))){if((d|0)!=1){break a}v[b+32>>2]=1;return}v[b+32>>2]=d;if(v[b+44>>2]!=4){f=a+16|0;h=f+(v[a+12>>2]<<3)|0;d=0;b:{c:{while(1){d:{if(f>>>0>=h>>>0){break d}u[b+52>>1]=0;zaa(f,b,c,c,1,e);if(w[b+54|0]){break d}e:{if(!w[b+53|0]){break e}if(w[b+52|0]){d=1;if(v[b+24>>2]==1){break c}g=1;if(w[a+8|0]&2){break e}break c}g=1;if(!(t[a+8|0]&1)){break c}}f=f+8|0;continue}break}a=4;if(!g){break b}}a=3}v[b+44>>2]=a;if(d&1){break a}}v[b+20>>2]=c;v[b+40>>2]=v[b+40>>2]+1;if(v[b+36>>2]!=1|v[b+24>>2]!=2){break a}t[b+54|0]=1;return}g=v[a+12>>2];h=a+16|0;Aaa(h,b,c,d,e);f=a+24|0;g=h+(g<<3)|0;if(f>>>0>=g>>>0){break a}a=v[a+8>>2];if(!(!(a&2)&v[b+36>>2]!=1)){while(1){if(w[b+54|0]){break a}Aaa(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break}break a}if(!(a&1)){while(1){if(w[b+54|0]|v[b+36>>2]==1){break a}Aaa(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break a}}while(1){if(w[b+54|0]|v[b+36>>2]==1&v[b+24>>2]==1){break a}Aaa(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break}}}function zA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;xA(a,c);c=x[a+22>>1];if(c){b=v[a+24>>2];g=b+(c<<4)|0;while(1){d=0;e=w[b+1|0];a=e<<4;c=(a+b|0)+192|0;f=w[b+2|0];a=(((c+B(e,96)|0)+(a&0-(t[b+3|0]&1))|0)+(f<<4)|0)+(((f|0)!=0)<<7)|0;if(e){while(1){z[c+80>>2]=z[c+80>>2]-z[c+64>>2];z[c+92>>2]=z[c+92>>2]-z[c+76>>2];z[c+88>>2]=z[c+88>>2]-z[c+72>>2];z[c+84>>2]=z[c+84>>2]-z[c+68>>2];c=c+96|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}b=B(f,96)+a|0;a:{if(!f){break a}if(f-1>>>0>=3){e=f&252;c=0;while(1){d=v[a+84>>2];v[a+48>>2]=v[a+80>>2];v[a+52>>2]=d;d=v[a+180>>2];v[a+144>>2]=v[a+176>>2];v[a+148>>2]=d;d=v[a+276>>2];v[a+240>>2]=v[a+272>>2];v[a+244>>2]=d;d=v[a+372>>2];v[a+336>>2]=v[a+368>>2];v[a+340>>2]=d;d=v[a+92>>2];v[a+56>>2]=v[a+88>>2];v[a+60>>2]=d;d=v[a+188>>2];v[a+152>>2]=v[a+184>>2];v[a+156>>2]=d;d=v[a+284>>2];v[a+248>>2]=v[a+280>>2];v[a+252>>2]=d;d=v[a+380>>2];v[a+344>>2]=v[a+376>>2];v[a+348>>2]=d;a=a+384|0;c=c+4|0;if((e|0)!=(c|0)){continue}break}}c=0;f=f&3;if(!f){break a}while(1){e=v[a+84>>2];v[a+48>>2]=v[a+80>>2];v[a+52>>2]=e;e=v[a+92>>2];v[a+56>>2]=v[a+88>>2];v[a+60>>2]=e;a=a+96|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(b>>>0>>0){continue}break}}}function ou(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0);a=B(a,3);a:{if(!f){d=(a<<2)+d|0;f=v[d>>2];a=v[d+8>>2];d=v[d+4>>2];break a}d=(a<<1)+d|0;f=x[d>>1];a=x[d+4>>1];d=x[d+2>>1]}a=B(a,12)+c|0;o=z[a>>2];p=z[a+4>>2];q=z[a+8>>2];a=B(d,12)+c|0;j=z[a>>2];k=z[a+4>>2];l=z[a+8>>2];m=z[e+40>>2];n=z[e+16>>2];r=z[e+28>>2];s=z[e+36>>2];t=z[e+24>>2];u=z[e>>2];w=z[e+12>>2];y=z[e+4>>2];a=B(f,12)+c|0;g=z[a>>2];h=z[a+4>>2];i=z[a+8>>2];z[b+8>>2]=C(C(C(g*z[e+8>>2])+C(h*z[e+20>>2]))+C(i*z[e+32>>2]))+z[e+44>>2];z[b+4>>2]=m+C(C(C(g*y)+C(h*n))+C(i*r));z[b>>2]=s+C(C(C(g*u)+C(h*w))+C(i*t));g=z[e+40>>2];h=z[e+16>>2];i=z[e+28>>2];m=z[e+36>>2];n=z[e+24>>2];r=z[e>>2];s=z[e+12>>2];t=z[e+4>>2];z[b+20>>2]=C(C(C(j*z[e+8>>2])+C(k*z[e+20>>2]))+C(l*z[e+32>>2]))+z[e+44>>2];z[b+16>>2]=g+C(C(C(j*t)+C(k*h))+C(l*i));z[b+12>>2]=m+C(C(C(j*r)+C(k*s))+C(l*n));j=z[e+40>>2];k=z[e+16>>2];l=z[e+28>>2];g=z[e+36>>2];h=z[e+24>>2];i=z[e>>2];m=z[e+12>>2];n=z[e+4>>2];z[b+32>>2]=C(C(C(o*z[e+8>>2])+C(p*z[e+20>>2]))+C(q*z[e+32>>2]))+z[e+44>>2];z[b+28>>2]=j+C(C(C(o*n)+C(p*k))+C(q*l));z[b+24>>2]=g+C(C(C(o*i)+C(p*m))+C(q*h))}function VV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0);c=xa-16|0;xa=c;AV(c,d);m=z[f+8>>2];e=v[e+32>>2];d=v[e+56>>2]+B(w[e+55|0],20)|0;j=z[d+8>>2];k=C(j+j);j=z[f>>2];h=z[d>>2];g=C(h+h);h=z[d+4>>2];i=C(h+h);h=z[f+4>>2];l=C(C(m*k)+C(C(j*g)+C(i*h)));t=z[c+12>>2];u=z[f+24>>2];n=z[f+12>>2];o=C(C(n*n)+C(-.5));p=z[c+8>>2];x=z[f+16>>2];q=z[c>>2];y=z[f+20>>2];r=z[c+4>>2];k=C(t+C(C(C(u+C(C(m*l)+C(C(k*o)+C(n*C(C(j*i)-C(g*h))))))*p)+C(C(C(x+C(C(j*l)+C(C(g*o)+C(n*C(C(h*k)-C(i*m))))))*q)+C(C(y+C(C(h*l)+C(C(i*o)+C(n*C(C(m*g)-C(k*j))))))*r))));f=1;A=w[e+54|0];if(A>>>0>1){D=C(-h);E=C(-j);F=C(-m);while(1){e=d+B(f,12)|0;g=z[e+8>>2];g=C(g+g);i=z[e>>2];i=C(i+i);l=z[e+4>>2];l=C(l+l);s=C(C(m*g)+C(C(j*i)+C(h*l)));g=C(t+C(C(C(u+C(C(m*s)+C(C(g*o)+C(n*C(C(j*l)+C(i*D))))))*p)+C(C(C(x+C(C(j*s)+C(C(i*o)+C(n*C(C(h*g)+C(l*F))))))*q)+C(r*C(y+C(C(h*s)+C(C(l*o)+C(n*C(C(m*i)+C(g*E))))))))));k=g>k?k:g;f=f+1|0;if((A|0)!=(f|0)){continue}break}}d=k>C(0);if(!d){z[a+8>>2]=-p;z[a+4>>2]=-r;z[a>>2]=-q;z[b>>2]=k>2]-z[a+1320>>2])-C(z[a+280>>2]-z[a+1304>>2]));k=g>C(0)?g:C(-g);h=C(C(z[a+292>>2]-z[a+1316>>2])-C(z[a+276>>2]-z[a+1300>>2]));j=h>C(0)?h:C(-h);i=C(C(z[a+288>>2]-z[a+1312>>2])-C(z[a+272>>2]-z[a+1296>>2]));m=i>C(0)?i:C(-i);a:{if(j>2]=0;k=C(C(j*g)-C(h*o));h=C(C(n*h)-C(i*j));g=C(C(o*i)-C(g*n));i=C(C(1)/C(K(C(C(h*h)+C(C(k*k)+C(g*g))))));j=C(k*i);z[f>>2]=j;g=C(g*i);z[f+4>>2]=g;h=C(h*i);z[f+8>>2]=h;v[f+28>>2]=0;z[f+24>>2]=-h;z[f+20>>2]=-g;z[f+16>>2]=-j;p=f+16|0;Ba[v[v[b>>2]+4>>2]](f+32|0,b,p);Ba[v[v[c>>2]+4>>2]](p,c,f);b=v[f+36>>2];v[a+304>>2]=v[f+32>>2];v[a+308>>2]=b;b=v[f+44>>2];v[a+312>>2]=v[f+40>>2];v[a+316>>2]=b;c=v[f+20>>2];b=a+1328|0;v[b>>2]=v[f+16>>2];v[b+4>>2]=c;c=v[f+28>>2];b=a+1336|0;v[b>>2]=v[f+24>>2];v[b+4>>2]=c;v[d>>2]=3;b=L_(a,0,1,2,e);c=L_(a,1,0,2,e);a=v[a>>2];if(a){t[b+32|0]=0;v[b+20>>2]=c;t[c+32|0]=0;v[c+20>>2]=b;t[b+33|0]=2;v[b+24>>2]=c;t[c+34|0]=1;v[c+28>>2]=b;t[b+34|0]=1;v[b+28>>2]=c;t[c+33|0]=2;v[c+24>>2]=b}xa=f+48|0;return(a|0)!=0}function zT(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=C(0),i=0,j=0,k=0;g=xa-160|0;xa=g;v[g+144>>2]=2;h=z[b+44>>2];z[g+148>>2]=z[b+40>>2];z[g+152>>2]=h*C(.5);i=A[c+12>>3];z[g+128>>2]=A[d>>3]-i;j=A[c+20>>3];z[g+132>>2]=A[d+8>>3]-j;k=A[c+28>>3];z[g+136>>2]=A[d+16>>3]-k;z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];v[g+96>>2]=3;z[g+100>>2]=z[c+60>>2];z[g+104>>2]=z[c- -64>>2];z[g+108>>2]=z[c+68>>2];z[g+80>>2]=A[c+36>>3]-i;z[g+84>>2]=A[c+44>>3]-j;z[g+88>>2]=A[c+52>>3]-k;z[g+64>>2]=z[c+72>>2];z[g+68>>2]=z[c+76>>2];z[g+72>>2]=z[c+80>>2];z[g+76>>2]=z[c+84>>2];v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;d=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!iV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];d=1}xa=g+160|0;return d|0}function ZF(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=xa-16|0;xa=j;f=v[a+20>>2];a:{if(f){i=f-1|0;f=v[v[a+16>>2]+(i<<2)>>2];v[a+20>>2]=i;break a}f=v[a+28>>2];v[a+28>>2]=f+1}i=f<<1;if((i|0)==v[a+116>>2]){g=i+2048|0;_F(a+104|0,g);$F(a+128|0,g);aG(a+44|0,g)}g=v[a+124>>2];h=(i>>>0)/(g>>>0)|0;v[v[v[a+104>>2]+(h<<2)>>2]+(i-B(g,h)<<2)>>2]=c;g=i|1;h=v[a+124>>2];k=(g>>>0)/(h>>>0)|0;v[v[v[a+104>>2]+(k<<2)>>2]+(g-B(h,k)<<2)>>2]=d;g=v[a+148>>2];h=(f>>>0)/(g>>>0)|0;v[v[v[a+128>>2]+(h<<2)>>2]+(f-B(g,h)<<2)>>2]=b;g=v[a- -64>>2];h=(f>>>0)/(g>>>0)|0;v[v[v[a+44>>2]+(h<<2)>>2]+(f-B(g,h)<<2)>>2]=e;GF(a+640|0,b,c,d,f);if(b){v[b- -64>>2]=f}b=v[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=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,b<<2,24422,17999,438)|0;d=v[a+152>>2];c:{if(!d){break c}H9(c,d,v[a+156>>2]<<2);if(v[a+156>>2]<0){break c}d=v[a+152>>2];if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}d=v[a+156>>2];I9(c+(d<<2)|0,0,b-d<<2);v[a+156>>2]=b;v[a+152>>2]=c}if((v[a+88>>2]&2147483647)==(f|0)){v[j+12>>2]=0;VF(a+80|0,i+2|0,j+12|0)}a=v[a+152>>2]+(f>>>3&536870908)|0;b=v[a>>2];l=a,m=Uaa(-2,f)&b,v[l>>2]=m;xa=j+16|0;return f}function Ov(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((v[a+8>>2]&2147483647)>>>0>>0){a:{if(!b){break a}e=B(b,48);if(!e){break a}d=v[37696];f=d+12|0;f=(j=f,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?48717:63804,m=16608,n=553,i=v[v[f>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}e=v[a>>2];d=v[a+4>>2];if((d|0)>0){h=B(d,48)+f|0;d=f;while(1){g=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=g;g=v[e+44>>2];v[d+40>>2]=v[e+40>>2];v[d+44>>2]=g;g=v[e+36>>2];v[d+32>>2]=v[e+32>>2];v[d+36>>2]=g;g=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=g;g=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=g;g=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=g;e=e+48|0;d=d+48|0;if(h>>>0>d>>>0){continue}break}e=v[a>>2]}if(!(!e|v[a+8>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+8>>2]=b;v[a>>2]=f}d=v[a+4>>2];if((d|0)<(b|0)){f=v[a>>2];e=f+B(b,48)|0;d=f+B(d,48)|0;while(1){f=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=f;f=v[c+44>>2];v[d+40>>2]=v[c+40>>2];v[d+44>>2]=f;f=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=f;f=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=f;f=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=f;f=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=f;d=d+48|0;if(e>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function rv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);u=C(1);w=z[c+24>>2];n=z[d+24>>2];j=z[d>>2];o=C(j+j);r=z[d+8>>2];i=z[d+4>>2];k=z[d+12>>2];p=C(k+k);q=z[b+8>>2];l=C(C(C(o*r)-C(i*p))*q);x=C(n+l);s=C(w-x);y=z[c+16>>2];m=z[d+16>>2];j=C(C(C(C(j*o)+C(k*p))+C(-1))*q);A=C(m+j);t=C(y-A);B=z[c+20>>2];k=z[d+20>>2];i=C(C(C(o*i)+C(r*p))*q);p=C(k+i);q=C(B-p);l=C(C(n-l)-x);m=C(C(m-j)-A);j=C(C(k-i)-p);k=C(C(l*l)+C(C(m*m)+C(j*j)));o=z[a+4>>2];r=C(o+z[b+4>>2]);i=C(r+z[e>>2]);n=C(i*i);i=C(F(C(C(C(s*l)+C(C(t*m)+C(q*j)))/k),C(1)));k=k!=C(0)?i>C(0)?i:C(0):C(0);l=C(l*k);i=C(s-l);s=C(i*i);m=C(m*k);i=C(t-m);t=C(i*i);j=C(j*k);i=C(q-j);k=C(s+C(t+C(i*i)));b=n>k;if(b){n=C(0);a=v[g+4096>>2];v[g+4096>>2]=a+1;l=C(w-C(x+l));m=C(y-C(A+m));j=C(B-C(p+j));i=C(K(C(C(l*l)+C(C(m*m)+C(j*j)))));if(!(i<=C(1.1920928955078125e-7))){i=C(C(1)/i);n=C(l*i);u=C(m*i);D=C(j*i)}a=(a<<6)+g|0;z[a+16>>2]=y-C(o*u);z[a+8>>2]=n;z[a+4>>2]=D;z[a>>2]=u;v[a+52>>2]=-1;z[a+12>>2]=C(K(k))-r;v[a+28>>2]=0;z[a+24>>2]=w-C(o*n);z[a+20>>2]=B-C(o*D)}return b|0}function fI(a,b,c){var d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),q=C(0),r=C(0),s=C(0),u=0,w=0,x=C(0),y=0,A=0,D=0,E=C(0);y=v[a+4>>2];e=v[y>>2];u=v[a+8>>2];d=u-1|0;d=B(e,24)+b|0;g=z[d+4>>2];h=z[d+8>>2];i=z[d+16>>2];k=z[d+20>>2];l=z[d>>2];w=v[a+24>>2];f=z[(e<<2)+c>>2];m=C(f+z[d+12>>2]);d=(p(m),j(2));v[w+4>>2]=(d|0)<0?d^-1:d|-2147483648;l=C(l-f);d=(p(l),j(2));v[w>>2]=(d|0)<0?d^-1:d|-2147483648;n=v[a+28>>2];k=C(f+k);z[n+12>>2]=k;i=C(f+i);z[n+8>>2]=i;h=C(h-f);z[n+4>>2]=h;g=C(g-f);z[n>>2]=g;d=1;if(u>>>0>1){while(1){A=v[(d<<2)+y>>2];e=B(A,24)+b|0;E=z[e+4>>2];o=z[e+8>>2];q=z[e+16>>2];r=z[e+20>>2];s=z[e>>2];D=(d<<3)+w|0;f=z[(A<<2)+c>>2];x=C(f+z[e+12>>2]);e=(p(x),j(2));v[D+4>>2]=(e|0)<0?e^-1:e|-2147483648;s=C(s-f);e=(p(s),j(2));v[D>>2]=(e|0)<0?e^-1:e|-2147483648;e=(d<<4)+n|0;r=C(f+r);z[e+12>>2]=r;q=C(f+q);z[e+8>>2]=q;o=C(o-f);z[e+4>>2]=o;f=C(E-f);z[e>>2]=f;m=m>x?m:x;h=hg?g:f;l=lr?k:r;i=i>q?i:q;d=d+1|0;if((u|0)!=(d|0)){continue}break}}z[a+36>>2]=l;z[a+56>>2]=k;z[a+52>>2]=i;z[a+48>>2]=m;z[a+44>>2]=h;z[a+40>>2]=g;b=(u<<3)+w|0;v[b>>2]=-1;v[b+40>>2]=-1;v[b+32>>2]=-1;v[b+24>>2]=-1;v[b+16>>2]=-1;v[b+8>>2]=-1;t[a+60|0]=1}function OO(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=xa-16|0;xa=e;b=v[a+2368>>2];c=b;if(v[b+36>>2]){g=b+8|0;while(1){c=v[v[b+32>>2]+(d<<2)>>2];v[e+4>>2]=c;a:{if((c|0)==(v[b+4>>2]-1|0)){v[b+4>>2]=c;break a}f=v[b+12>>2];if(f>>>0>=(v[b+16>>2]&2147483647)>>>0){on(g,e+4|0);break a}v[v[b+8>>2]+(f<<2)>>2]=c;v[b+12>>2]=v[b+12>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}c=v[a+2368>>2]}d=0;v[b+36>>2]=0;I9(v[c+20>>2],0,v[c+24>>2]<<2);b=v[a+2372>>2];c=b;if(v[b+36>>2]){g=b+8|0;while(1){c=v[v[b+32>>2]+(d<<2)>>2];v[e+8>>2]=c;b:{if((c|0)==(v[b+4>>2]-1|0)){v[b+4>>2]=c;break b}f=v[b+12>>2];if(f>>>0>=(v[b+16>>2]&2147483647)>>>0){on(g,e+8|0);break b}v[v[b+8>>2]+(f<<2)>>2]=c;v[b+12>>2]=v[b+12>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}c=v[a+2372>>2]}d=0;v[b+36>>2]=0;I9(v[c+20>>2],0,v[c+24>>2]<<2);b=v[a+2364>>2];c=b;if(v[b+36>>2]){g=b+8|0;while(1){c=v[v[b+32>>2]+(d<<2)>>2];v[e+12>>2]=c;c:{if((c|0)==(v[b+4>>2]-1|0)){v[b+4>>2]=c;break c}f=v[b+12>>2];if(f>>>0>=(v[b+16>>2]&2147483647)>>>0){on(g,e+12|0);break c}v[v[b+8>>2]+(f<<2)>>2]=c;v[b+12>>2]=v[b+12>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}c=v[a+2364>>2]}v[b+36>>2]=0;I9(v[c+20>>2],0,v[c+24>>2]<<2);xa=e+16|0}function C8(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0);d=z[c>>2];i=C(d+d);h=z[c+8>>2];p=C(i*h);e=z[c+4>>2];f=C(e+e);g=z[c+12>>2];D=C(f*g);j=C(p-D);s=z[b>>2];t=z[b+4>>2];E=C(f*h);F=C(i*g);k=C(E+F);m=C(C(1)-C(d*i));f=C(e*f);d=C(m-f);u=z[b+8>>2];l=C(C(C(j*s)+C(t*k))+C(d*u));v=z[b+12>>2];w=z[b+16>>2];x=z[b+20>>2];n=C(C(C(j*v)+C(k*w))+C(d*x));y=z[b+24>>2];A=z[b+28>>2];B=z[b+32>>2];o=C(C(C(j*y)+C(k*A))+C(d*B));z[a+32>>2]=C(C(j*l)+C(k*n))+C(d*o);r=C(i*e);e=C(h+h);g=C(g*e);i=C(r+g);q=m;m=C(h*e);h=C(q-m);e=C(E-F);z[a+20>>2]=C(C(i*l)+C(h*n))+C(e*o);f=C(C(C(1)-f)-m);q=C(f*l);l=C(r-g);g=C(p+D);z[a+8>>2]=C(q+C(l*n))+C(g*o);n=C(C(C(s*i)+C(t*h))+C(e*u));o=C(C(C(i*v)+C(h*w))+C(e*x));p=C(C(C(i*y)+C(h*A))+C(e*B));z[a+28>>2]=C(C(j*n)+C(k*o))+C(d*p);r=j;j=C(C(C(s*f)+C(t*l))+C(g*u));m=k;k=C(C(C(f*v)+C(l*w))+C(g*x));q=d;d=C(C(C(f*y)+C(l*A))+C(g*B));z[a+24>>2]=C(C(r*j)+C(m*k))+C(q*d);z[a+16>>2]=C(C(i*n)+C(h*o))+C(e*p);z[a+12>>2]=C(C(i*j)+C(h*k))+C(e*d);z[a+4>>2]=C(C(f*n)+C(l*o))+C(g*p);z[a>>2]=C(C(f*j)+C(l*k))+C(g*d)}function qE(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(!v[a+684>>2]){break a}d=(b<<15^-1)+b|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=v[v[a+660>>2]+((v[a+668>>2]-1&(d>>>16^d))<<2)>>2];if((d|0)==-1){break a}e=v[a+656>>2];f=v[a+652>>2];while(1){if(v[f+(d<<3)>>2]!=(b|0)){d=v[e+(d<<2)>>2];if((d|0)!=-1){continue}break a}break}b=xa-16|0;xa=b;h=f+(d<<3)|0;f=v[a+644>>2]+B(v[h+4>>2],44)|0;d=v[f+4>>2];c=v[v[d+16>>2]+(c<<2)>>2];d=v[d+8>>2];v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;ZC(b,8);e=c<<2;d=QC(v[f>>2],v[e+v[v[f+8>>2]>>2]>>2],c,d,b);g=v[b+4>>2];b:{if(g){c:{if(v[d+40>>2]|!d){break c}e=v[d+36>>2];if(!v[e>>2]){break c}c=0;while(1){v[v[v[f+8>>2]>>2]+(v[((c<<2)+e|0)+4>>2]<<2)>>2]=d;c=c+1|0;e=v[d+36>>2];if(c>>>0>2]){continue}break}}i=g>>>0>1?g:1;d=0;while(1){c=0;g=v[v[b>>2]+(d<<2)>>2];e=v[g+36>>2];if(v[e>>2]){while(1){v[v[v[f+8>>2]>>2]+(v[((c<<2)+e|0)+4>>2]<<2)>>2]=g;c=c+1|0;e=v[g+36>>2];if(c>>>0>2]){continue}break}}d=d+1|0;if((i|0)!=(d|0)){continue}break}break b}v[e+v[v[f+8>>2]>>2]>>2]=d}c=v[b+8>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=v[b>>2];if(!c){break d}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}xa=b+16|0;rE(a,v[h+4>>2])}}function dU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a:{if((x[b+4>>1]-5&65535)>>>0>2){break a}b:{c:{if(!v[a+180>>2]){break c}c=(b<<15^-1)+b|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[v[a+156>>2]+((v[a+164>>2]-1&(c>>>16^c))<<2)>>2];if((d|0)==-1){break c}e=v[a+152>>2];f=v[a+148>>2];while(1){c=f+(d<<3)|0;if(v[c>>2]==(b|0)){break b}d=v[e+(d<<2)>>2];if((d|0)!=-1){continue}break}}c=0}if(!c|!v[a+72>>2]){break a}c=0;while(1){d=v[v[a+68>>2]+(c<<2)>>2]+88|0;d:{if(v[d+164>>2]==(b|0)){e:{if(!w[d+156|0]){break e}e=v[d+152>>2];if(!e){break e}gU(v[d+160>>2],e)}v[d+152>>2]=0;f:{if(!w[d+168|0]){break f}e=v[d+164>>2];if(!e){break f}gU(v[d+172>>2],e)}v[d+164>>2]=0;break d}f=v[d+36>>2];g:{if(!f){break g}e=v[d+32>>2];f=e+(f<<2)|0;while(1){if(v[e+4>>2]!=(b|0)){e=v[(v[e>>2]<<2)+99008>>2]+e|0;if((f|0)!=(e|0)){continue}break g}break}v[d+48>>2]=-1;v[d+52>>2]=2146435071;v[d+88>>2]=-1;v[d+92>>2]=-1048577;v[d+80>>2]=-1;v[d+84>>2]=-1048577;v[d+72>>2]=-1;v[d+76>>2]=-1048577;e=d- -64|0;v[e>>2]=-1;v[e+4>>2]=2146435071;v[d+56>>2]=-1;v[d+60>>2]=2146435071}if(v[d+152>>2]==(b|0)){if(w[d+156|0]){gU(v[d+160>>2],b)}v[d+152>>2]=0}}c=c+1|0;if(c>>>0>2]){continue}break}}}function _C(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+12>>2];if(b){b=FC(b);d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+12>>2]=0}b=v[a+36>>2];if(!(!b|!v[a+52>>2])){I9(v[a+28>>2],255,b<<2);b=0;d=v[a+24>>2];e=v[a+32>>2];f=e-1|0;if(f){if(e-2>>>0>=3){i=f&-4;e=0;while(1){c=b|1;v[d+(b<<2)>>2]=c;g=d+(c<<2)|0;c=b|2;v[g>>2]=c;g=d+(c<<2)|0;c=b|3;v[g>>2]=c;b=b+4|0;v[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;v[c>>2]=b;h=h+1|0;if((e|0)!=(h|0)){continue}break}}b=v[a+32>>2]-1|0}else{b=0}v[d+(b<<2)>>2]=-1;v[a+52>>2]=0;v[a+44>>2]=0}v[a+8>>2]=0;b=v[a+60>>2];if(b){b=FC(b);d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+60>>2]=0}b=v[a+84>>2];if(!(!b|!v[a+100>>2])){I9(v[a+76>>2],255,b<<2);b=0;d=v[a+72>>2];e=v[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;v[d+(b<<2)>>2]=c;g=d+(c<<2)|0;c=b|2;v[g>>2]=c;g=d+(c<<2)|0;c=b|3;v[g>>2]=c;b=b+4|0;v[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;v[c>>2]=b;h=h+1|0;if((e|0)!=(h|0)){continue}break}}b=v[a+80>>2]-1|0}else{b=0}v[d+(b<<2)>>2]=-1;v[a+100>>2]=0;v[a+92>>2]=0}v[a>>2]=1;v[a+4>>2]=0;v[a+56>>2]=0}function v$(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0);e=xa-96|0;xa=e;k=z[a+28>>2];l=z[a+32>>2];u=z[d>>2];w=z[d+4>>2];x=z[d+8>>2];y=z[c>>2];A=z[c+4>>2];B=z[c+8>>2];m=z[a+24>>2];n=z[a+8>>2];o=z[a+4>>2];p=z[a>>2];h=z[a+20>>2];i=z[a+44>>2];f=C(z[b+8>>2]-i);q=z[a+12>>2];r=z[a+36>>2];g=C(z[b>>2]-r);s=z[a+40>>2];j=C(z[b+4>>2]-s);t=z[a+16>>2];z[e+84>>2]=C(h*f)+C(C(q*g)+C(j*t));z[e+80>>2]=C(n*f)+C(C(p*g)+C(j*o));z[e+88>>2]=C(l*f)+C(C(m*g)+C(j*k));f=C(B-i);g=C(y-r);j=C(A-s);z[e+68>>2]=C(h*f)+C(C(q*g)+C(t*j));z[e+64>>2]=C(n*f)+C(C(p*g)+C(o*j));z[e+72>>2]=C(l*f)+C(C(m*g)+C(k*j));g=h;h=C(x-i);i=C(u-r);f=C(w-s);z[e+52>>2]=C(g*h)+C(C(q*i)+C(t*f));z[e+48>>2]=C(n*h)+C(C(p*i)+C(o*f));z[e+56>>2]=C(l*h)+C(C(m*i)+C(k*f));b=v[e+84>>2];v[e+32>>2]=v[e+80>>2];v[e+36>>2]=b;b=v[e+92>>2];v[e+40>>2]=v[e+88>>2];v[e+44>>2]=b;b=v[e+68>>2];v[e+16>>2]=v[e+64>>2];v[e+20>>2]=b;b=v[e+76>>2];v[e+24>>2]=v[e+72>>2];v[e+28>>2]=b;b=v[e+52>>2];v[e>>2]=v[e+48>>2];v[e+4>>2]=b;b=v[e+60>>2];v[e+8>>2]=v[e+56>>2];v[e+12>>2]=b;a=u$(e+32|0,e+16|0,e,a+48|0);xa=e+96|0;return a}function sp(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=C(k);var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,A=0,D=0,E=0,F=0;l=xa-32|0;xa=l;a:{if(y[a+36>>2]>=y[a+100>>2]){break a}o=a+40|0;m=v[o>>2];v[o>>2]=m?m:-1;if((m|0)==1){a9(v[37696],8,5611,541,64431,0);break a}v[a+36>>2]=v[a+36>>2]+1;m=a+12|0;r=x[h+16>>1];s=v[h+12>>2];A=v[h+8>>2];D=v[h+4>>2];E=v[h>>2];F=x[g>>1];p=v[a+24>>2];n=p+40|0;h=v[a+20>>2]&2147483647;b:{if(n>>>0<=h>>>0){break b}q=B(n,3);if(h>>>0>=q>>>0){break b}np(m,q)}op(m,n);h=v[a+12>>2]+v[a+24>>2]|0;v[h+28>>2]=i;v[h+8>>2]=E;u[h+4>>1]=F;v[h>>2]=-16;t[h+38|0]=2;u[h+36>>1]=f;v[h+32>>2]=j;u[h+24>>1]=r;v[h+20>>2]=s;v[h+16>>2]=A;v[h+12>>2]=D;v[a+24>>2]=n;f=v[a+108>>2];v[((f|0)==-16?a+108|0:f+v[a+12>>2]|0)>>2]=p;v[a+108>>2]=p;f=a;h=w[a+112|0];a=x[g>>1];t[f+112|0]=h|a>>>9&1;c:{if((a&768)!=768){a=x[g>>1];break c}a9(v[37696],4,5611,551,13931,0);a=x[g>>1]&-257;u[g>>1]=a}if((a&528)==528){a9(v[37696],4,5611,557,23643,0);a=x[g>>1]&-17;u[g>>1]=a}if(!(!(k>C(0))|!(a&256))){a9(v[37696],4,5611,565,14060,0);k=C(0)}z[l+16>>2]=e;v[l+8>>2]=0;z[l+28>>2]=k;v[l+24>>2]=c;v[l+20>>2]=b;v[l+12>>2]=d;qp(m,l+8|0);v[o>>2]=0}xa=l+32|0}function wT(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=C(0),i=C(0);g=xa-160|0;xa=g;v[g+144>>2]=3;z[g+148>>2]=z[b+40>>2];z[g+152>>2]=z[b+44>>2];z[g+156>>2]=z[b+48>>2];z[g+128>>2]=A[d>>3]-A[c+12>>3];z[g+132>>2]=A[d+8>>3]-A[c+20>>3];z[g+136>>2]=A[d+16>>3]-A[c+28>>3];z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];v[g+96>>2]=3;z[g+100>>2]=z[c+48>>2];z[g+104>>2]=z[c+52>>2];z[g+108>>2]=z[c+56>>2];z[g+80>>2]=z[c+36>>2];z[g+84>>2]=z[c+40>>2];z[g+88>>2]=z[c+44>>2];z[g+64>>2]=z[c+60>>2];z[g+68>>2]=z[c- -64>>2];z[g+72>>2]=z[c+68>>2];z[g+76>>2]=z[c+72>>2];v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;b=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!iV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];i=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+36>>2]=h;z[f+32>>2]=i;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];b=1}xa=g+160|0;return b|0}function QK(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;g=v[a+40>>2];f=g+c|0;e=v[a+44>>2];a:{if(f>>>0>e>>>0){e=e<<1;e=e>>>0>>0?f:e;e=e>>>0>1024?e:1024;v[a+44>>2]=e;i=v[a+36>>2];e=e<<2;if(e){h=v[37696]+12|0;e=Ba[v[v[h>>2]+8>>2]](h,e,24422,13489,890)|0}else{e=0}if(g){H9(e,i,g<<2)}if(!i){break a}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,i);break a}e=v[a+36>>2]}v[a+40>>2]=f;v[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){v[a>>2]=v[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){v[a>>2]=v[b>>2]|-2147483648;v[a+4>>2]=v[b+4>>2]|-2147483648;v[a+8>>2]=v[b+8>>2]|-2147483648;v[a+12>>2]=v[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=v[d+8>>2];if(c&1){e=v[b>>2];v[a>>2]=e|-2147483648;g=d+(e>>>3&536870908)|0;v[g>>2]=v[g>>2]|1<>2];v[a>>2]=f|-2147483648;e=d+(f>>>3&536870908)|0;v[e>>2]=v[e>>2]|1<>2];v[a+4>>2]=f|-2147483648;e=d+(f>>>3&536870908)|0;v[e>>2]=v[e>>2]|1<>2];k=v[h+40>>2];e=v[k+980>>2];h=v[v[h+44>>2]+4>>2]&16777215;f=(h|0)==16777215?-1:h;i=(d|0)!=0;h=xa-16|0;xa=h;d=v[a+8>>2]&2147483647;g=d+1|0;if(g>>>0>=y[e+200>>2]){gI(e,g)}j=v[e+360>>2];v[e+360>>2]=g>>>0>j>>>0?g:j;g=d<<2;v[g+v[e+180>>2]>>2]=c;z[g+v[v[e+192>>2]+4>>2]>>2]=b;c=v[e+196>>2]+(d<<3)|0;v[c>>2]=i|a&-4;a:{if((f|0)==-1){v[c+4>>2]=-1;f=d>>>5|0;g=v[e+148>>2]+(f<<2)|0;i=v[g>>2];c=1<>2]=i&(c^-1);break b}d=v[e+136>>2]+(f<<2)|0;v[d>>2]=c|v[d>>2]}t[e+365|0]=1;break a}v[c+4>>2]=f<<1;t[e+365|0]=1;c=v[v[e+376>>2]+(f<<2)>>2];c:{if(v[c+8>>2]){break c}f=v[c>>2];g=f>>>5<<2;i=g+v[e+148>>2]|0;j=v[i>>2];f=1<>2]=j&(f^-1);break c}g=g+v[e+136>>2]|0;v[g>>2]=f|v[g>>2]}v[h+8>>2]=d;f=v[c+8>>2];d:{if(f>>>0>=(v[c+12>>2]&2147483647)>>>0){on(c+4|0,h+8|0);break d}v[v[c+4>>2]+(f<<2)>>2]=d;v[c+8>>2]=v[c+8>>2]+1}if(v[c+20>>2]!=-1){break a}d=v[e+392>>2];v[c+20>>2]=d;v[h+12>>2]=c;if(d>>>0>=(v[e+396>>2]&2147483647)>>>0){lI(e+388|0,h+12|0);break a}v[v[e+388>>2]+(d<<2)>>2]=c;v[e+392>>2]=d+1}xa=h+16|0;v[a+8>>2]=v[a+8>>2]|-2147483648;a=v[k+2352>>2];v[a+8>>2]=v[a+8>>2]+1}function JZ(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),t=C(0),u=C(0),v=C(0),x=C(0),y=C(0),A=C(0);a:{if(!f){n=C(-34028234663852886e22);l=C(34028234663852886e22);j=C(34028234663852886e22);o=C(-34028234663852886e22);break a}p=z[i+20>>2];u=z[i+16>>2];v=z[i+12>>2];x=z[i+8>>2];y=z[i+4>>2];A=z[i>>2];i=0;n=C(-34028234663852886e22);k=C(34028234663852886e22);m=C(34028234663852886e22);o=C(-34028234663852886e22);while(1){r=(i<<3)+e|0;q=B(w[h+i|0],12)+g|0;j=z[q+8>>2];s=z[q>>2];t=z[q+4>>2];l=C(C(p*j)+C(C(v*s)+C(t*u)));z[r+4>>2]=l;j=C(C(x*j)+C(C(A*s)+C(y*t)));z[r>>2]=j;o=lm?m:l;k=j>k?k:j;i=i+1|0;if((i|0)!=(f|0)){continue}break}l=C(m+C(-9.999999974752427e-7));j=C(k+C(-9.999999974752427e-7));if(!f){break a}m=C(C(o+m)*C(.5));p=C(C(n+k)*C(.5));i=0;while(1){g=(i<<3)+e|0;k=z[g>>2];z[g>>2]=C(k-j)+(C(k-p)>=C(0)?C(9.999999974752427e-7):C(-9.999999974752427e-7));k=z[g+4>>2];z[g+4>>2]=C(k-l)+(C(k-m)>=C(0)?C(9.999999974752427e-7):C(-9.999999974752427e-7));i=i+1|0;if((i|0)!=(f|0)){continue}break}}z[a>>2]=j;z[b>>2]=l;z[c>>2]=C(n+C(9.999999974752427e-7))-j;z[d>>2]=C(o+C(9.999999974752427e-7))-l}function OM(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=v[a+36>>2];a:{if(!d){break a}b=v[a+32>>2];if(d-1>>>0>=3){g=d&-4;while(1){f=w[(b+B(e,52)|0)+48|0];c=c>>>0>f>>>0?c:f;f=w[(b+B(e|1,52)|0)+48|0];c=c>>>0>f>>>0?c:f;f=w[(b+B(e|2,52)|0)+48|0];c=c>>>0>f>>>0?c:f;f=w[(b+B(e|3,52)|0)+48|0];c=c>>>0>f>>>0?c:f;e=e+4|0;h=h+4|0;if((g|0)!=(h|0)){continue}break}}d=d&3;if(!d){break a}while(1){g=w[(b+B(e,52)|0)+48|0];c=c>>>0>g>>>0?c:g;e=e+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}e=v[a+28>>2];d=v[e+368>>2];b=v[d>>2];if(b){v[d>>2]=v[b>>2]}if(!b){b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?26947:63804;d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,12195,d,19395,82)|0;b=d+19&-16;v[b-4>>2]=b-d;b=gB(b,v[e+372>>2])}v[b+12052>>2]=0;d=b+12048|0;if((v[b+12056>>2]&2147483647)>>>0>>0){yw(d,c)}v[b+12052>>2]=c;v[b+12064>>2]=0;g=b+12060|0;if((v[b+12068>>2]&2147483647)>>>0>>0){yw(g,c)}v[b+12064>>2]=c;c=v[a+36>>2];if(c){f=a+40|0;e=0;while(1){h=v[a+32>>2]+B(e,52)|0;i=v[(v[v[h>>2]+24>>2]<<2)+149632>>2];if(i){Ba[i|0](h,z[a+52>>2],f,v[a+8>>2],v[a+12>>2],v[d>>2],v[g>>2]);c=v[a+36>>2]}e=e+1|0;if(c>>>0>e>>>0){continue}break}}a=v[v[a+28>>2]+368>>2];v[b>>2]=v[a>>2];v[a>>2]=b}function y_(a,b){var c=C(0),d=C(0),e=C(0);v[a>>2]=b;c=z[b>>2];d=z[b+4>>2];e=z[b+8>>2];t[a+118|0]=4;z[a+96>>2]=e;z[a+92>>2]=d;z[a+84>>2]=e;z[a+80>>2]=d;z[a+76>>2]=c;z[a+72>>2]=e;z[a- -64>>2]=c;z[a+60>>2]=e;z[a+44>>2]=d;z[a+32>>2]=d;z[a+28>>2]=c;z[a+16>>2]=c;c=C(-c);z[a+88>>2]=c;d=C(-d);z[a+68>>2]=d;z[a+56>>2]=d;z[a+52>>2]=c;e=C(-e);z[a+48>>2]=e;z[a+40>>2]=c;z[a+36>>2]=e;z[a+24>>2]=e;z[a+20>>2]=d;z[a+12>>2]=e;z[a+8>>2]=d;z[a+4>>2]=c;t[a+138|0]=4;u[a+116>>1]=0;t[a+158|0]=4;u[a+136>>1]=4;t[a+178|0]=4;u[a+156>>1]=8;t[a+198|0]=4;u[a+176>>1]=12;t[a+218|0]=4;u[a+196>>1]=16;u[a+216>>1]=20;v[a+120>>2]=1065353216;v[a+124>>2]=0;v[a+128>>2]=0;c=z[b>>2];v[a+168>>2]=0;v[a+160>>2]=-1082130432;v[a+164>>2]=0;z[a+132>>2]=-c;c=z[b>>2];v[a+188>>2]=0;v[a+180>>2]=0;v[a+184>>2]=1065353216;t[a+179|0]=1;t[a+139|0]=0;z[a+172>>2]=-c;c=z[b+4>>2];v[a+208>>2]=0;v[a+200>>2]=0;v[a+204>>2]=-1082130432;z[a+192>>2]=-c;c=z[b+4>>2];t[a+219|0]=2;t[a+199|0]=0;v[a+148>>2]=1065353216;v[a+140>>2]=0;v[a+144>>2]=0;z[a+212>>2]=-c;c=z[b+8>>2];v[a+108>>2]=-1082130432;v[a+100>>2]=0;v[a+104>>2]=0;z[a+152>>2]=-c;c=z[b+8>>2];t[a+159|0]=0;t[a+119|0]=4;z[a+112>>2]=-c;return a}function CT(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=C(0);g=xa-160|0;xa=g;v[g+144>>2]=2;h=z[b+44>>2];z[g+148>>2]=z[b+40>>2];z[g+152>>2]=h*C(.5);z[g+128>>2]=A[d>>3]-A[c+12>>3];z[g+132>>2]=A[d+8>>3]-A[c+20>>3];z[g+136>>2]=A[d+16>>3]-A[c+28>>3];z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];v[g+96>>2]=3;z[g+100>>2]=z[c+48>>2];z[g+104>>2]=z[c+52>>2];z[g+108>>2]=z[c+56>>2];z[g+80>>2]=z[c+36>>2];z[g+84>>2]=z[c+40>>2];z[g+88>>2]=z[c+44>>2];z[g+64>>2]=z[c+60>>2];z[g+68>>2]=z[c- -64>>2];z[g+72>>2]=z[c+68>>2];z[g+76>>2]=z[c+72>>2];v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;d=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!iV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];d=1}xa=g+160|0;return d|0}function kc(a){a=a|0;var b=0,c=C(0),d=0;b=laa(252);v[b>>2]=0;v[b+4>>2]=0;v[b+52>>2]=0;v[b+56>>2]=0;v[b+48>>2]=2;v[b+40>>2]=1;v[b+44>>2]=1;v[b+32>>2]=0;v[b+36>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b+60>>2]=0;v[b+64>>2]=0;v[b+68>>2]=0;v[b+72>>2]=0;v[b+76>>2]=0;v[b+80>>2]=0;v[b+84>>2]=0;v[b+88>>2]=0;v[b+92>>2]=0;z[b+96>>2]=z[a+4>>2]*C(.20000000298023224);c=z[a>>2];v[b+236>>2]=8;v[b+240>>2]=0;v[b+228>>2]=67108864;v[b+232>>2]=262144;v[b+220>>2]=81920;v[b+224>>2]=1048576;v[b+212>>2]=16777216;v[b+216>>2]=524288;v[b+204>>2]=33554432;v[b+208>>2]=25165824;v[b+196>>2]=2122317823;v[b+200>>2]=2122317823;v[b+188>>2]=-25165825;v[b+192>>2]=2122317823;v[b+180>>2]=-25165825;v[b+184>>2]=-25165825;v[b+172>>2]=2139095039;v[b+176>>2]=1053609164;v[b+164>>2]=8192;v[b+168>>2]=1;v[b+156>>2]=65536;v[b+160>>2]=2139095039;v[b+148>>2]=16;v[b+152>>2]=0;v[b+140>>2]=0;v[b+144>>2]=128;v[b+132>>2]=100;v[b+136>>2]=0;v[b+124>>2]=1;v[b+128>>2]=1;v[b+116>>2]=0;v[b+120>>2]=0;v[b+108>>2]=0;v[b+112>>2]=64;c=C(c*C(.03999999910593033));z[b+104>>2]=c;z[b+100>>2]=c;d=v[a+4>>2];v[b+244>>2]=v[a>>2];v[b+248>>2]=d;return b|0}function dN(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=C(0),m=C(0),n=0,o=0,p=0;b=v[a+28>>2];e=b;l=z[a+32>>2];m=z[b+96>>2];n=v[a+40>>2]+(v[b+88>>2]<<5)|0;f=xa-2064|0;xa=f;i=v[b+8>>2]&2147483647;o=v[v[b>>2]+11936>>2];h=v[a+44>>2];b=v[h+368>>2];a=v[b>>2];if(a){v[b>>2]=v[a>>2]}if(!a){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?26947:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,12195,b,19395,82)|0;a=b+19&-16;v[a-4>>2]=a-b;a=gB(a,v[h+372>>2])}b=a+11856|0;v[b>>2]=0;v[b+4>>2]=0;if(i){p=a+11852|0;while(1){c=v[(g<<2)+o>>2];d=v[c+32>>2];b=v[v[e>>2]+12144>>2]+B(g,52)|0;v[b>>2]=v[c+28>>2];v[b+4>>2]=d;v[b+48>>2]=v[c+76>>2];d=v[c+72>>2];v[b+40>>2]=v[c+68>>2];v[b+44>>2]=d;d=v[c+64>>2];v[b+32>>2]=v[c+60>>2];v[b+36>>2]=d;d=v[c+56>>2];v[b+24>>2]=v[c+52>>2];v[b+28>>2]=d;d=v[c+48>>2];v[b+16>>2]=v[c+44>>2];v[b+20>>2]=d;d=v[c+40>>2];v[b+8>>2]=v[c+36>>2];v[b+12>>2]=d;c=0;d=v[(v[v[b>>2]+24>>2]<<2)+149640>>2];if(d){c=Ba[d|0](b,p,(j<<5)+n|0,z[e+92>>2],m,l,f+12|0,v[e>>2]+11836|0,f+16|0)|0}t[b+49|0]=c;j=j- -64|0;k=c+k|0;g=g+1|0;if((i|0)!=(g|0)){continue}break}}b=v[h+368>>2];v[a>>2]=v[b>>2];v[b>>2]=a;a=v[e>>2];v[a+11956>>2]=v[a+11956>>2]+k;xa=f+2064|0}function yK(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;a:{b=v[a+304>>2];e=v[b>>2];v[b>>2]=0;if(!e){break a}b=e;while(1){h=v[b>>2];f=v[a+976>>2]<<5;v[b+504>>2]=0;v[b+508>>2]=0;v[b+516>>2]=0;v[b+520>>2]=0;c=b+7196|0;I9(v[b+7192>>2],0,v[c>>2]<<2);d=f+31>>>5|0;if(d>>>0>(v[c>>2]&2147483647)>>>0){c=v[37696];g=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d<<2,24422,17999,438)|0;c=v[b+7192>>2];b:{if(!c){break b}H9(g,c,v[b+7196>>2]<<2);if(v[b+7196>>2]<0){break b}f=v[b+7192>>2];if(!f){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}c=v[b+7196>>2];I9(g+(c<<2)|0,0,d-c<<2);v[b+7196>>2]=d;v[b+7192>>2]=g}c=b+7208|0;I9(v[b+7204>>2],0,v[c>>2]<<2);if(d>>>0>(v[c>>2]&2147483647)>>>0){c=v[37696];g=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d<<2,24422,17999,438)|0;c=v[b+7204>>2];c:{if(!c){break c}H9(g,c,v[b+7208>>2]<<2);if(v[b+7208>>2]<0){break c}f=v[b+7204>>2];if(!f){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}c=v[b+7208>>2];I9(g+(c<<2)|0,0,d-c<<2);v[b+7208>>2]=d;v[b+7204>>2]=g}v[b+7216>>2]=0;v[b+7220>>2]=0;b=b+7224|0;v[b>>2]=0;v[b+4>>2]=0;b=h;if(b){continue}break}if(!e){break a}while(1){b=v[e>>2];h=v[a+304>>2];v[e>>2]=v[h>>2];v[h>>2]=e;e=b;if(b){continue}break}}}function hR(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=xa-16|0;xa=f;b=v[a+28>>2];a=v[b+976>>2];e=v[a+1008>>2];v[f+12>>2]=e;a=v[a+1012>>2];v[f+8>>2]=a;l=b+2484|0;v[l>>2]=0;xP(b+2480|0,e);m=b+2496|0;v[m>>2]=0;xP(b+2492|0,a);n=v[b+2480>>2];o=v[b+2492>>2];a=0;i=xa-48|0;xa=i;g=v[b+976>>2];b=v[g+988>>2]&2147483647;a:{b:{if(!b){b=0;break b}e=v[g+984>>2];while(1){c=v[e+(a<<2)>>2];if(c){b=a;break a}a=a+1|0;if((b|0)!=(a|0)){continue}break}}c=0}a=v[g+1024>>2];Ba[v[v[a>>2]+84>>2]](i+8|0,a);a=o;e=n;c:{if(!c){break c}p=v[g+312>>2]-1|0;k=v[g+988>>2]&2147483647;q=v[g+320>>2];while(1){d=Qaa(c)|b<<5;c=c-1&c;d:{if(c){break d}h=b+1|0;h=h>>>0>k>>>0?h:k;j=v[g+984>>2];while(1){b=b+1|0;if(k>>>0<=b>>>0){c=0;b=h;break d}c=v[j+(b<<2)>>2];if(!c){continue}break}}if((d|0)==-1){break c}h=v[v[g+332>>2]+(d>>>q<<2)>>2]+B(d&p,80)|0;d=v[h+68>>2];d=v[i+40>>2]+(v[(i+8|0)+((d&7)<<2)>>2]+(d>>>3|0)<<4)|0;j=w[d+13|0];d=w[d+15|0];e:{if(j>>>0>d>>>0){v[e>>2]=h;e=e+4|0;break e}if(d>>>0<=j>>>0){break e}v[a>>2]=h;a=a+4|0}if(c){continue}break}}v[f+12>>2]=e-n>>2;v[f+8>>2]=a-o>>2;xa=i+48|0;v[l>>2]=v[f+12>>2];v[m>>2]=v[f+8>>2];xa=f+16|0}function NP(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=xa-288|0;xa=g;e=v[b>>2];a:{if(!e){break a}f=v[a+2416>>2];b:{if(f){IP(a,e,f,c,d);break b}t[g+264|0]=1;v[g+272>>2]=0;v[g+276>>2]=64;f=g+8|0;v[g+268>>2]=f;IP(a,e,f,c,d);c=v[g+276>>2];if((c|0)<0|!(c&2147483647)){break b}c=v[g+268>>2];if((c|0)==(g+8|0)|!c){break b}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c:{if(!(w[v[e+100>>2]+28|0]&32)|w[v[e+44>>2]+9|0]==2){break c}d=v[e+144>>2];f=d>>>7|0;c=v[e+40>>2];if(f>>>0>=v[c+4728>>2]<<5>>>0){break c}c=v[c+4724>>2]+(d>>>10&4194300)|0;d=v[c>>2];j=c,k=Uaa(-2,f)&d,v[j>>2]=k}d:{e:{if(!v[b+176>>2]|w[v[b+176>>2]+31|0]!=1){break e}b=v[b+176>>2];if(w[(w[b+31|0]==1?b:0)+31|0]!=1){break e}v[a+2672>>2]=v[a+2672>>2]-1;break d}v[a+2668>>2]=v[a+2668>>2]-1}c=v[a+2392>>2];Ba[v[v[e>>2]>>2]](e)|0;if(w[c+24|0]){NO(v[c+12>>2],v[c+16>>2])}a=0;b=v[c+16>>2]-1|0;if((b|0)<0){break a}i=B(v[c+4>>2],v[c>>2]);f=v[c+12>>2];while(1){d=a+b>>1;h=v[f+B(d,12)>>2];if(!(h>>>0>e>>>0|h+i>>>0<=e>>>0)){a=f+B(d,12)|0;v[e>>2]=v[a+4>>2];v[a+4>>2]=e;if(w[c+24|0]){v[c+8>>2]=d}t[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}}xa=g+288|0}function aI(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0;j=xa-16|0;xa=j;if(v[a+4>>2]!=(b|0)){v[a+4>>2]=b;m=a+8|0;Ba[v[v[a>>2]+12>>2]](a,m,c,d,e,f);e=v[a+16>>2];if(e){f=0;while(1){b=v[a+28>>2]+(f<<3)|0;k=v[b+4>>2];c=k&2147483647;l=v[b>>2];d=l&2147483647;a:{if((l|0)<0){k=v[g>>2];l=v[k+(d<<3)>>2];k=v[k+(c<<3)>>2];v[j+4>>2]=c;v[j>>2]=d;c=l&3;d=k&3;c=B((c|0)>(d|0)?c:d,12)+h|0;d=v[c+4>>2];b:{if(d>>>0>=(v[c+8>>2]&2147483647)>>>0){rI(c,j);break b}k=v[j+4>>2];d=v[c>>2]+B(d,12)|0;v[d>>2]=v[j>>2];v[d+4>>2]=k;v[d+8>>2]=v[j+8>>2];v[c+4>>2]=v[c+4>>2]+1}v[b>>2]=v[b>>2]&2147483647;v[b+4>>2]=v[b+4>>2]&2147483647;f=f+1|0;break a}if((k|0)<0){v[b+4>>2]=c;f=f+1|0;break a}b=v[g>>2];n=v[b+(d<<3)>>2];c:{if(n>>>0<4){break c}b=v[b+(c<<3)>>2];if(b>>>0<4){break c}v[j+4>>2]=c;v[j>>2]=d;c=n&3;b=b&3;b=B((b|0)<(c|0)?c:b,12)+i|0;c=v[b+4>>2];if(c>>>0>=(v[b+8>>2]&2147483647)>>>0){rI(b,j);break c}d=v[j+4>>2];c=v[b>>2]+B(c,12)|0;v[c>>2]=v[j>>2];v[c+4>>2]=d;v[c+8>>2]=v[j+8>>2];v[b+4>>2]=v[b+4>>2]+1}b=l&65535|k<<16;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;_H(m,v[a+12>>2]&(b>>>16^b),f);e=e-1|0}if(e>>>0>f>>>0){continue}break}}XH(m)}xa=j+16|0}function WL(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=v[d+28>>2];a:{if((g|0)==1073741823){break a}h=a>>>0>>0?a:b;i=a>>>0>b>>>0?a:b;a=h|i<<16;a=(a<<15^-1)+a|0;a=B(a>>10^a,9);a=a>>6^a;a=(a<<11^-1)+a|0;j=a>>16^a;a=j&v[d+36>>2];k=v[d+8>>2];b:{if(!k){break b}b=v[v[d>>2]+(a<<2)>>2];if((b|0)==1073741823){break b}l=v[d+4>>2];m=v[d+20>>2];while(1){f=(b<<3)+m|0;if(v[f>>2]==(h|0)&v[f+4>>2]==(i|0)){break a}b=v[(b<<2)+l>>2];if((b|0)!=1073741823){continue}break}}if(g>>>0>=k>>>0){a=g+1|0;a=a>>>1|a;a=a>>>2|a;a=a>>>4|a;a=a>>>8|a;a=a>>>16|a;v[d+36>>2]=a;a=a+1|0;v[d+8>>2]=a;TL(d,a>>>0>y[d+12>>2]);g=v[d+28>>2];a=v[d+36>>2]&j}f=v[d+20>>2]+(g<<3)|0;v[f+4>>2]=i;v[f>>2]=h;t[v[d+24>>2]+g|0]=8;a=v[d>>2]+(a<<2)|0;v[v[d+4>>2]+(v[d+28>>2]<<2)>>2]=v[a>>2];b=v[d+28>>2];v[d+28>>2]=b+1;v[a>>2]=b}b=f;if(b){f=b-v[d+20>>2]>>3;a=v[d+24>>2];g=f+a|0;if(w[g|0]&8){t[g|0]=0;a=v[d+24>>2]+(b-v[d+20>>2]>>3)|0;t[a|0]=w[a|0]|1;f=b-v[d+20>>2]|0;g=f>>>3|0;a=v[e+4>>2];if((a|0)==v[e+8>>2]){VL(e,c);f=b-v[d+20>>2]|0;a=v[e+4>>2]}v[e+4>>2]=a+1;v[v[e>>2]+(a<<2)>>2]=g;a=v[d+24>>2]+(f>>3)|0;t[a|0]=w[a|0]|4;f=b-v[d+20>>2]>>3;a=v[d+24>>2]}a=a+f|0;t[a|0]=w[a|0]&253}}function i4(a,b,c,d,e){var f=C(0),g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=0,A=0,D=C(0),E=C(0),F=C(0);if(!(!a|!b|(!c|!d))){q=a&1;f=C(C(1)/C(a>>>0));a:{if((a|0)==1){a=0;break a}r=a&-2;a=0;while(1){g=B(a|1,12)+b|0;h=B(a,12)+b|0;n=C(C(z[g+8>>2]*f)+C(C(z[h+8>>2]*f)+n));o=C(C(z[g+4>>2]*f)+C(C(z[h+4>>2]*f)+o));p=C(C(z[g>>2]*f)+C(C(z[h>>2]*f)+p));a=a+2|0;i=i+2|0;if((r|0)!=(i|0)){continue}break}}if(q){a=B(a,12)+b|0;n=C(C(z[a+8>>2]*f)+n);p=C(C(z[a>>2]*f)+p);o=C(C(z[a+4>>2]*f)+o)}q=c>>>0>1?c:1;r=e^1;c=0;i=1;while(1){f=C(0);s=C(0);t=C(0);a=B(c,12)+d|0;y=v[a+4>>2];e=B(y,12)+b|0;g=B(v[a>>2],12)+b|0;u=z[g>>2];j=C(z[e>>2]-u);A=v[a+8>>2];h=B(A,12)+b|0;w=z[g+4>>2];k=C(z[h+4>>2]-w);m=C(z[h>>2]-u);l=C(z[e+4>>2]-w);x=C(C(j*k)-C(m*l));F=l;l=z[g+8>>2];D=C(z[h+8>>2]-l);E=C(z[e+8>>2]-l);k=C(C(F*D)-C(k*E));j=C(C(E*m)-C(D*j));m=C(C(x*x)+C(C(k*k)+C(j*j)));if(m>C(0)){f=C(C(1)/C(K(m)));t=C(x*f);s=C(j*f);f=C(k*f)}e=!(C(C(C(n*t)+C(C(p*f)+C(o*s)))-C(C(l*t)+C(C(u*f)+C(w*s))))>C(0));b:{if(e|r){i=e&i;break b}v[a+8>>2]=y;v[a+4>>2]=A;i=0}c=c+1|0;if((q|0)!=(c|0)){continue}break}}return i}function r0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),A=C(0);f=xa-48|0;xa=f;l=z[a+56>>2];m=z[a+44>>2];n=z[a+32>>2];o=z[a+60>>2];p=z[a+48>>2];q=z[a+24>>2];r=z[a+36>>2];s=z[a+20>>2];h=z[c>>2];k=z[a+28>>2];i=z[c+4>>2];u=z[a+40>>2];j=z[c+8>>2];x=z[a+52>>2];A=z[a- -64>>2];z[f+40>>2]=C(C(C(h*k)+C(i*u))+C(j*x))+A;z[f+36>>2]=o+C(C(C(h*q)+C(i*r))+C(j*p));z[f+32>>2]=l+C(C(C(h*s)+C(i*n))+C(j*m));g=w[a+17|0];c=g?e:d;h=z[c>>2];i=z[c+4>>2];j=z[c+8>>2];z[f+24>>2]=A+C(C(C(k*h)+C(u*i))+C(x*j));z[f+20>>2]=o+C(C(C(q*h)+C(r*i))+C(p*j));z[f+16>>2]=l+C(C(C(s*h)+C(n*i))+C(m*j));c=g?d:e;h=z[c>>2];j=C(k*h);k=z[c+4>>2];i=z[c+8>>2];z[f+8>>2]=A+C(C(j+C(u*k))+C(x*i));z[f+4>>2]=o+C(C(C(q*h)+C(r*k))+C(p*i));z[f>>2]=l+C(C(C(s*h)+C(n*k))+C(m*i));c=1;a:{if(!t$(a+84|0,a+68|0,f+32|0,f+16|0,f)){break a}d=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];c=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;c=1;break a}c=v[a+16>>2];if(c>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=d;c=1;break a}v[a+16>>2]=c+1;c=1}xa=f+48|0;return c|0}function nT(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=B(g,56);if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?25709:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=B(c,56)+e|0;d=v[a>>2];c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=f;f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];z[c+48>>2]=z[d+48>>2];d=d+56|0;c=c+56|0;if(h>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=B(c,56)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;z[c+24>>2]=z[b+24>>2];z[c+28>>2]=z[b+28>>2];z[c+32>>2]=z[b+32>>2];z[c+36>>2]=z[b+36>>2];z[c+40>>2]=z[b+40>>2];z[c+44>>2]=z[b+44>>2];z[c+48>>2]=z[b+48>>2];b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=g;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function J2(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0);q=z[e+8>>2];r=z[e+20>>2];s=z[e+32>>2];i=C(C(C(q+r)+s)*C(.3333333432674408));g=C(i-z[a+8>>2]);j=z[b+8>>2];t=z[e>>2];u=z[e+12>>2];v=z[e+24>>2];k=C(C(C(t+u)+v)*C(.3333333432674408));l=C(k-z[a>>2]);n=z[b>>2];w=z[e+4>>2];x=z[e+16>>2];y=z[e+28>>2];p=C(C(C(w+x)+y)*C(.3333333432674408));m=C(p-z[a+4>>2]);o=z[b+4>>2];h=C(C(g*j)+C(C(l*n)+C(m*o)));h=h>C(0)?h:C(0);h=c>h?h:c;g=C(g-C(j*h));A=C(g*g);g=C(l-C(n*h));h=C(m-C(o*h));h=C(C(C(K(C(A+C(C(g*g)+C(h*h)))))-d)+C(-9999999747378752e-20));a:{b:{if(hk?k:j)){break a}f=C(f-i);a=f>j&(c>2];v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;a:{if(!f){break a}Km(c,f);while(1){b:{c:{d:{e:{f:{g:{h:{d=v[v[b+48>>2]+(g<<4)>>2];switch(x[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(v[d+40>>2]){break b}v[c+12>>2]=d;if(Ba[v[v[d>>2]+72>>2]](d)|0){break b}e=v[c+4>>2];if(e>>>0>=(v[c+8>>2]&2147483647)>>>0){Lm(c,c+12|0);break b}v[v[c>>2]+(e<<2)>>2]=d;v[c+4>>2]=e+1;break b}if(v[d+40>>2]){break b}v[c+12>>2]=d;if(Ba[v[v[d>>2]+72>>2]](d)|0){break b}e=v[c+4>>2];if(e>>>0>=(v[c+8>>2]&2147483647)>>>0){Lm(c,c+12|0);break b}v[v[c>>2]+(e<<2)>>2]=d;v[c+4>>2]=e+1;break b}if(Ba[v[v[d>>2]+96>>2]](d)|0){break b}Ba[v[v[a>>2]+36>>2]](a,d);break b}if(Ba[v[v[d>>2]+96>>2]](d)|0){break b}Ba[v[v[a>>2]+36>>2]](a,d);break b}Ba[v[v[a>>2]+64>>2]](a,d);break b}Ba[v[v[a>>2]+52>>2]](a,d)}g=g+1|0;if((g|0)!=(f|0)){continue}break}b=v[c+4>>2];if(!b){break a}$p(a,v[c>>2],b,0)}a=v[c+8>>2];i:{if((a|0)<0|!(a&2147483647)){break i}a=v[c>>2];if(!a){break i}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+16|0}function X5(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0);h=xa-48|0;xa=h;n=z[c+20>>2];d=z[c+12>>2];i=z[c+8>>2];j=z[c>>2];k=z[c+4>>2];p=z[c+16>>2];q=B(b,28);l=q+a|0;r=z[c+24>>2];z[l+44>>2]=r;z[l+40>>2]=n;z[l+36>>2]=p;o=d;d=C(C(1)/C(K(C(C(d*d)+C(C(i*i)+C(C(j*j)+C(k*k)))))));e=C(o*d);z[l+32>>2]=e;f=C(i*d);z[l+28>>2]=f;g=C(k*d);z[l+24>>2]=g;m=C(j*d);z[l+20>>2]=m;c=v[a+76>>2];l=h+40|0;Ba[v[v[c>>2]+28>>2]](c,l,h+44|0);Y4(h+8|0,v[l+(b<<2)>>2]);s=z[h+28>>2];t=z[h+32>>2];o=z[h+24>>2];b=v[a+80>>2]+q|0;i=z[h+16>>2];j=z[h+12>>2];d=z[h+20>>2];k=z[h+8>>2];z[b+28>>2]=C(i*f)+C(C(j*g)+C(C(d*e)+C(m*k)));z[b+24>>2]=C(m*j)+C(C(C(d*f)-C(e*i))-C(k*g));z[b+20>>2]=C(f*k)+C(C(C(d*g)-C(e*j))-C(i*m));z[b+16>>2]=C(g*i)+C(C(C(d*m)-C(e*k))-C(j*f));e=C(p-o);e=C(e+e);f=C(n-s);f=C(f+f);g=C(r-t);g=C(g+g);m=C(C(C(C(-k)*e)-C(f*j))-C(i*g));n=C(C(d*d)+C(-.5));z[b+40>>2]=C(C(g*n)+C(d*C(C(j*e)-C(k*f))))-C(i*m);z[b+36>>2]=C(C(f*n)+C(d*C(C(k*g)-C(i*e))))-C(j*m);z[b+32>>2]=C(C(e*n)+C(d*C(C(i*f)-C(j*g))))-C(k*m);a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a);xa=h+48|0}function dJ(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;h=xa-16|0;xa=h;d=a+4|0;g=v[a+8>>2];if(g){i=a+1916|0;while(1){f=v[v[d>>2]+(e<<2)>>2];c=x[f+4>>1];u[f+4>>1]=c-1;a:{if(c>>>0>=2){u[f>>1]=x[f>>1]&65533;break a}c=v[f+16>>2];g=v[c+16>>2];c=v[c+20>>2];v[h+4>>2]=c>>>0>>0?g:c;v[h>>2]=c>>>0>g>>>0?g:c;EI(i,h);c=v[f+16>>2];if(c){v[a+1560>>2]=v[a+1560>>2]-1;v[c>>2]=v[a+1568>>2];v[a+1568>>2]=c;v[f+16>>2]=0}v[a+684>>2]=v[a+684>>2]-1;v[f>>2]=v[a+692>>2];v[a+692>>2]=f;g=v[a+8>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}b:{if(!b){v[a+8>>2]=0;break b}v[h+12>>2]=0;b=v[d+4>>2];if((b|0)<0){c=v[d>>2];b=c+(b<<2)|0;while(1){v[b>>2]=v[h+12>>2];b=b+4|0;if(c>>>0>b>>>0){continue}break}}v[d+4>>2]=0;b=0;i=v[a+8>>2];c:{if(!i){break c}c=i<<2;if(!c){break c}b=v[37696];a=b+12|0;b=(k=a,l=c,m=Ba[v[v[b>>2]+20>>2]](b)|0?55835:63804,n=16608,o=553,j=v[v[a>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}e=v[d>>2];a=v[d+4>>2];if((a|0)>0){c=(a<<2)+b|0;a=b;while(1){v[a>>2]=v[e>>2];e=e+4|0;a=a+4|0;if(c>>>0>a>>>0){continue}break}e=v[d>>2]}if(!(!e|v[d+8>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}v[d+8>>2]=i;v[d>>2]=b}xa=h+16|0}function dh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=Ba[v[v[b>>2]+4>>2]](b)|0;c=v[a+4>>2];a:{if(!c){break a}g=v[c+40>>2];b:{if(!g){h=1;break b}h=g&1;if((g|0)!=1){i=g&-2;c=0;while(1){j=d;d=f<<3;d=(j+(Ba[v[v[e>>2]+8>>2]](e,v[(d+v[v[a+4>>2]+36>>2]|0)+4>>2])^1)|0)+(Ba[v[v[e>>2]+8>>2]](e,v[(v[v[a+4>>2]+36>>2]+(d|8)|0)+4>>2])^1)|0;f=f+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}}if(h){d=(Ba[v[v[e>>2]+8>>2]](e,v[(v[v[a+4>>2]+36>>2]+(f<<3)|0)+4>>2])^1)+d|0}if(!d){c=v[a+4>>2];h=1;break b}h=0;c=Qm(v[37389]);if(d>>>0>=g>>>0){break b}f=g-d|0;if(f>>>0>(v[c+44>>2]&2147483647)>>>0){eh(c,f)}h=!d;f=0;while(1){d=v[v[a+4>>2]+36>>2]+(f<<3)|0;c:{if(!(Ba[v[v[e>>2]+8>>2]](e,v[d+4>>2])|0)){break c}i=v[c+40>>2];if(i>>>0>=(v[c+44>>2]&2147483647)>>>0){fh(c,d);break c}j=v[c+36>>2]+(i<<3)|0;t[j|0]=w[d|0];v[j+4>>2]=v[d+4>>2];v[c+40>>2]=i+1}f=f+1|0;if((g|0)!=(f|0)){continue}break}}Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,c,48);d:{if(w[c+32|0]){break d}e=v[c+36>>2];if(!e){break d}d=v[c+44>>2];if(!(v[c+40>>2]|d&2147483647)){break d}Ba[v[v[b>>2]+8>>2]](b,e,d<<3)}if(h){break a}Rm(v[37389],c)}Ba[v[v[b>>2]+16>>2]](b,v[a>>2])}function WM(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=xa-16|0;xa=e;f=v[a+52>>2];a:{if(f>>>0>=513){while(1){b=vr(v[v[a+72>>2]+620>>2],80);i=v[a+64>>2];j=v[a+68>>2];k=z[a+60>>2];l=v[a+56>>2];m=v[a+48>>2];n=v[a+44>>2];o=v[a+40>>2];p=v[a+36>>2];q=v[a+32>>2];r=v[a+28>>2];h=v[a+72>>2];g=v[h+632>>2];c=v[h+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=g;v[b+12>>2]=c;v[b>>2]=133052;g=d<<2;v[b+28>>2]=g+r;v[b+32>>2]=g+q;c=d<<6;v[b+36>>2]=c+p;v[b+40>>2]=c+o;v[b+44>>2]=B(d,48)+n;v[b+48>>2]=g+m;c=f-d|0;v[b+52>>2]=c>>>0<512?c:512;v[b+56>>2]=l;z[b+60>>2]=k;v[b+72>>2]=h;v[b+64>>2]=i;v[b+68>>2]=j;c=v[a+20>>2];v[b+24>>2]=1;v[b+20>>2]=c;if(c){Ba[v[v[c>>2]+16>>2]](c);v[b+16>>2]=v[v[b+20>>2]+16>>2];c=v[b>>2]}else{c=133052}Ba[v[c+20>>2]](b);f=v[a+52>>2];d=d+512|0;if(f>>>0>d>>>0){continue}break}break a}v[e+12>>2]=0;v[e+8>>2]=0;GM(v[a+28>>2],v[a+32>>2],v[a+36>>2],v[a+40>>2],v[a+44>>2],v[a+48>>2],f,v[a+56>>2],z[a+60>>2],e+12|0,e+8|0);b=v[a+64>>2];c=v[b>>2];d=b;b=v[e+12>>2];v[d>>2]=(b|0)<(c|0)?c:b;a=v[a+68>>2];b=v[a>>2];d=a;a=v[e+8>>2];v[d>>2]=(a|0)<(b|0)?b:a}xa=e+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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?47129:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?47129:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=((v[a+276>>2]<<6)+f|0)+-64|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c+-64|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function Bt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0;c=xa-32|0;xa=c;g=z[b+12>>2];h=z[b+8>>2];i=z[b>>2];j=z[b+4>>2];f=C(C(1)/C(K(C(C(g*g)+C(C(h*h)+C(C(i*i)+C(j*j)))))));z[c+12>>2]=g*f;z[c+8>>2]=h*f;z[c+4>>2]=j*f;z[c>>2]=i*f;z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];b=a+48|0;e=xa-16|0;xa=e;a:{b:{c:{d:{d=a+32|0;k=v[d+4>>2];l=k>>>30|0;switch(l-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[d>>2]+4785|0]){break b}}z[b+32>>2]=z[c>>2];z[b+36>>2]=z[c+4>>2];z[b+40>>2]=z[c+8>>2];z[b+44>>2]=z[c+12>>2];z[b+48>>2]=z[c+16>>2];z[b+52>>2]=z[c+20>>2];z[b+56>>2]=z[c+24>>2];d=v[d-12>>2];if(!d){break a}e:{f:{switch(x[d+4>>1]-5|0){case 0:d=d- -64|0;break e;case 8:d=d- -64|0;break e;default:break f}}d=d- -64|0}if((l|0)==1){break a}t[e|0]=w[b- -64|0];v[e+8>>2]=4;SJ(d,b,e+8|0,e,0);break a}b=v[d+8>>2];if(!b){b=Pu(v[d>>2],k>>>24&15);v[d+8>>2]=b}z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];z[b+12>>2]=z[c+12>>2];z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];z[b+24>>2]=z[c+24>>2];Xu(v[d>>2],d);v[d+4>>2]=v[d+4>>2]|4}xa=e+16|0;qt(a,73797);xa=c+32|0}function wJ(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?27313:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?27313:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],20)+f|0)-20|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-20|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function tJ(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?36843:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?36843:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],68)+f|0)-68|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-68|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function rJ(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?32891:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?32891:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],40)+f|0)-40|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-40|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function qJ(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?36711:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?36711:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],60)+f|0)-60|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-60|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function KC(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?30445:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?30445:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],20)+f|0)-20|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-20|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function JC(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?31931:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?31931:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],96)+f|0)-96|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-96|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function FX(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),x=C(0),y=0;u[a+12>>1]=2;y=z[c>>2]<=C(0);if(y){a:{if(g){u[a+12>>1]=3;i=z[f+12>>2];s=C(C(i*i)+C(-.5));j=z[f+8>>2];m=z[d+8>>2];p=z[f>>2];k=z[d>>2];q=z[f+4>>2];l=z[d+4>>2];r=C(C(j*m)+C(C(p*k)+C(q*l)));n=C(C(C(i*C(C(p*l)-C(k*q)))+C(s*m))+C(j*r));n=C(n+n);o=C(C(p*r)+C(C(s*k)+C(i*C(C(q*m)-C(l*j)))));o=C(o+o);m=C(C(q*r)+C(C(s*l)+C(i*C(C(j*k)-C(m*p)))));k=C(m+m);l=C(C(1)/C(K(C(C(n*n)+C(C(o*o)+C(k*k))))));m=C(n*l);k=C(k*l);l=C(o*l);r=z[e+8>>2];n=z[e>>2];o=z[e+4>>2];x=C(C(j*r)+C(C(p*n)+C(q*o)));t=C(C(C(i*C(C(p*o)-C(n*q)))+C(s*r))+C(j*x));t=C(z[f+24>>2]+C(t+t));w=C(C(q*x)+C(C(s*o)+C(i*C(C(j*n)-C(r*p)))));w=C(z[f+20>>2]+C(w+w));i=C(C(p*x)+C(C(s*n)+C(i*C(C(q*r)-C(o*j)))));j=C(z[f+16>>2]+C(i+i));i=z[c>>2];b:{if(h){t=C(t-C(i*m));w=C(w-C(i*k));j=C(j-C(i*l));break b}m=C(-m);k=C(-k);l=C(-l)}z[a+28>>2]=l;z[a+40>>2]=i;z[a+16>>2]=j;z[a+36>>2]=m;z[a+32>>2]=k;z[a+24>>2]=t;z[a+20>>2]=w;break a}v[a+40>>2]=0;i=z[b>>2];j=z[b+4>>2];z[a+36>>2]=-z[b+8>>2];z[a+32>>2]=-j;z[a+28>>2]=-i}v[a+8>>2]=-1}return y}function DH(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?44393:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?44393:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],48)+f|0)-48|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-48|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function x_(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=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);l=z[b+4>>2];m=z[b>>2];n=z[b+8>>2];j=v[a+12>>2];a:{if(!j){g=C(34028234663852886e22);h=C(-34028234663852886e22);break a}g=C(C(z[c+8>>2]*n)+C(C(z[c>>2]*m)+C(z[c+4>>2]*l)));h=C(C(z[c+20>>2]*n)+C(C(z[c+12>>2]*m)+C(l*z[c+16>>2])));i=C(C(z[c+32>>2]*n)+C(C(z[c+24>>2]*m)+C(l*z[c+28>>2])));q=C(C(C(g*z[d+8>>2])+C(h*z[d+20>>2]))+C(i*z[d+32>>2]));k=C(C(C(g*z[d+4>>2])+C(h*z[d+16>>2]))+C(i*z[d+28>>2]));i=C(C(C(g*z[d>>2])+C(h*z[d+12>>2]))+C(i*z[d+24>>2]));d=v[a+28>>2];b:{if(!(j&1)){h=C(-34028234663852886e22);g=C(34028234663852886e22);b=j;break b}g=C(C(z[d+8>>2]*q)+C(C(z[d>>2]*i)+C(k*z[d+4>>2])));h=C(G(g,C(-34028234663852886e22)));g=C(F(g,C(34028234663852886e22)));d=d+12|0;b=j-1|0}if((j|0)==1){break a}while(1){o=C(C(z[d+8>>2]*q)+C(C(z[d>>2]*i)+C(k*z[d+4>>2])));h=h>o?h:o;p=C(C(z[d+20>>2]*q)+C(C(z[d+12>>2]*i)+C(k*z[d+16>>2])));h=h>p?h:p;g=g>2]*n)+C(C(z[c+36>>2]*m)+C(l*z[c+40>>2])));z[e>>2]=k+g;z[f>>2]=h+g}function wX(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);c=z[a+16>>2];d=z[a+20>>2];f=z[a+4>>2];e=z[a+8>>2];z[b+36>>2]=C(z[a>>2]+z[a+12>>2])*C(.5);z[b+44>>2]=C(e+d)*C(.5);z[b+40>>2]=C(f+c)*C(.5);d=z[a+20>>2];f=z[a+16>>2];e=z[a+8>>2];h=z[a+12>>2];g=z[a>>2];i=z[a+4>>2];c=z[a+24>>2];z[b+56>>2]=c;z[b+52>>2]=c;j=c;c=C(e-d);d=C(c*c);c=C(g-h);g=C(c*c);c=C(i-f);k=C(K(C(d+C(g+C(c*c)))));z[b+48>>2]=j+C(k*C(.5));e=C(0);h=C(1);c=C(0);d=C(0);j=C(1);g=C(0);f=C(0);i=C(1);a:{if(k==C(0)){break a}c=C(z[a+20>>2]-z[a+8>>2]);h=C(z[a+12>>2]-z[a>>2]);e=C(z[a+16>>2]-z[a+4>>2]);d=C(K(C(C(c*c)+C(C(h*h)+C(e*e)))));if(d>C(0)){d=C(C(1)/d);c=C(c*d);h=C(h*d);e=C(e*d)}if(C(D(e))<=C(.9998999834060669)){j=C(0);f=C(-h);g=f;d=c;i=C(K(C(C(h*h)+C(C(c*c)+C(0)))));if(i>C(0)){d=C(C(1)/i);g=C(d*f);j=C(d*C(0));d=C(c*d)}f=C(C(c*d)+C(g*f));l=C(e*g);i=C(d*C(-e));break a}j=C(0);i=C(-e);d=C(1);f=C(K(C(C(e*e)+C(C(c*c)+C(0)))));if(!(f>C(0))){f=c;break a}g=C(C(1)/f);i=C(g*i);f=C(c*g);l=C(g*C(0));g=C(0)}z[b+24>>2]=l;z[b+12>>2]=d;z[b+8>>2]=c;z[b+4>>2]=e;z[b>>2]=h;z[b+32>>2]=i;z[b+28>>2]=f;z[b+20>>2]=g;z[b+16>>2]=j}function az(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=v[37696];d=c+12|0;c=(i=d,j=B(b,112)+131|0,k=Ba[v[v[c>>2]+20>>2]](c)|0?46527:63804,l=16608,m=553,h=v[v[d>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0);if(!c){break a}e=c+131&-128;v[e-4>>2]=e-c}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=B(c,112)+e|0;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];z[c+48>>2]=z[d+48>>2];z[c+52>>2]=z[d+52>>2];z[c+56>>2]=z[d+56>>2];z[c+60>>2]=z[d+60>>2];z[c- -64>>2]=z[d- -64>>2];g=v[d+72>>2];v[c+68>>2]=v[d+68>>2];v[c+72>>2]=g;v[c+76>>2]=v[d+76>>2];z[c+80>>2]=z[d+80>>2];z[c+84>>2]=z[d+84>>2];z[c+88>>2]=z[d+88>>2];z[c+92>>2]=z[d+92>>2];z[c+96>>2]=z[d+96>>2];z[c+100>>2]=z[d+100>>2];z[c+104>>2]=z[d+104>>2];v[c+108>>2]=v[d+108>>2];d=d+112|0;c=c+112|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-v[d-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=e}function PH(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?36573:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?36573:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=((v[a+276>>2]<<5)+f|0)-32|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-32|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function Xo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0);c=xa-32|0;xa=c;d=uh(a);g=z[b+12>>2];h=z[b+8>>2];i=z[b>>2];j=z[b+4>>2];e=C(C(1)/C(K(C(C(g*g)+C(C(h*h)+C(C(i*i)+C(j*j)))))));g=C(g*e);z[c+12>>2]=g;h=C(h*e);z[c+8>>2]=h;j=C(j*e);z[c+4>>2]=j;e=C(i*e);z[c>>2]=e;i=z[b+16>>2];z[c+16>>2]=i;m=z[b+20>>2];z[c+20>>2]=m;n=z[b+24>>2];z[c+24>>2]=n;k=a+48|0;a:{b:{c:{d:{f=v[a+52>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[k>>2]+4785|0]){break b}}mS(a- -64|0,c);break a}b=v[a+56>>2];if(!b){b=Pu(v[a+48>>2],f>>>24&15);v[a+56>>2]=b}z[b+96>>2]=e;z[b+120>>2]=n;z[b+116>>2]=m;z[b+112>>2]=i;z[b+108>>2]=g;z[b+104>>2]=h;z[b+100>>2]=j;Xu(v[a+48>>2],k);v[a+52>>2]=v[a+52>>2]|64}if(d){lu(a+20|0,d+5584|0,a);b=d+5616|0;v[b>>2]=v[b>>2]+1}if(v[a+40>>2]){a9(v[37696],8,12785,101,73892,0);aC(v[a+40>>2],a)}b=0;d=v[a+16>>2];e:{if(!d){k=0;d=0;break e}k=v[d+40>>2];d=v[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(w[l|0]){continue}break}f=v[l+4>>2];if(!f){break f}Fg(f,a);continue}break}xa=c+32|0}function cZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0);e=v[b+8>>2];t=z[e+52>>2];u=z[e+36>>2];w=z[e+20>>2];i=z[e+56>>2];x=z[e+40>>2];y=z[e+24>>2];h=v[b+4>>2];j=z[h+72>>2];k=z[h- -64>>2];l=z[h+68>>2];m=z[h+56>>2];n=z[h+52>>2];o=z[h+88>>2];A=z[b+56>>2];B=z[b+24>>2];D=z[b+40>>2];p=z[h+80>>2];E=z[b+48>>2];F=z[b+32>>2];q=z[h+84>>2];G=z[b+52>>2];H=z[b+20>>2];I=z[b+36>>2];J=z[e+48>>2];K=z[e+32>>2];L=z[e>>2];M=z[e+16>>2];N=z[e+4>>2];O=z[e+8>>2];r=z[h+48>>2];P=z[b+16>>2];d=z[c+8>>2];f=z[c>>2];g=z[c+4>>2];v[a+12>>2]=0;Q=i;s=j;j=C(C(A*d)+C(C(B*f)+C(g*D)));i=C(C(E*d)+C(C(P*f)+C(g*F)));d=C(C(G*d)+C(C(H*f)+C(g*I)));f=C(C(s*j)+C(C(k*i)+C(l*d)));g=C(C(o*j)+C(C(p*i)+C(d*q)));b=f>g;d=C(C(m*j)+C(C(r*i)+C(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;z[a+8>>2]=Q+C(C(x*d)+C(C(O*f)+C(y*g)));z[a+4>>2]=t+C(C(u*d)+C(C(N*f)+C(g*w)));z[a>>2]=J+C(C(K*d)+C(C(L*f)+C(g*M)))}function iJ(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=xa-16|0;xa=g;c=v[b+28>>2];b=v[b+32>>2];d=c>>>0>b>>>0;v[g+12>>2]=d?c:b;v[g+8>>2]=d?b:c;a=a+1956|0;a:{if(!v[a+36>>2]){break a}e=v[g+12>>2];h=v[g+8>>2];b=e<<14&-65536|h>>>2&65535;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=v[a+12>>2]+((v[a+20>>2]-1&(b>>>16^b))<<2)|0;b=v[d>>2];if((b|0)==-1){break a}i=v[a+8>>2];f=v[a+4>>2];c=f+B(b,12)|0;if(!(v[c>>2]==(h|0)&(e|0)==v[c+4>>2])){while(1){d=(b<<2)+i|0;b=v[d>>2];if((b|0)==-1){break a}c=f+B(b,12)|0;if(v[c>>2]!=(h|0)|(e|0)!=v[c+4>>2]){continue}break}}e=b<<2;v[d>>2]=v[e+i>>2];d=v[a+36>>2]-1|0;v[a+36>>2]=d;v[a+32>>2]=v[a+32>>2]+1;if((b|0)!=(d|0)){d=f+B(d,12)|0;h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;c=B(b,12);v[(c+f|0)+8>>2]=v[d+8>>2];f=v[a+8>>2];v[f+e>>2]=v[f+(v[a+36>>2]<<2)>>2];c=c+v[a+4>>2]|0;c=v[c+4>>2]<<14&-65536|v[c>>2]>>>2&65535;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[a+12>>2]+((v[a+20>>2]-1&(c>>>16^c))<<2)|0;c=v[d>>2];e=v[a+36>>2];if((c|0)!=(e|0)){while(1){d=f+(c<<2)|0;c=v[d>>2];if((e|0)!=(c|0)){continue}break}}v[d>>2]=b}v[a+28>>2]=v[a+28>>2]-1}xa=g+16|0}function Oa(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=laa((g=-1,h=Raa(a,0,48,0),i=Aa,i?g:h));a:{if(!a){break a}b=d;c=B(a,48);e=c-48|0;f=((e>>>0)/48|0)+1&3;if(f){a=0;while(1){v[b+16>>2]=0;v[b+20>>2]=0;u[b+12>>1]=0;v[b+8>>2]=-1;v[b>>2]=0;v[b+4>>2]=0;v[b+40>>2]=2139095039;v[b+24>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;b=b+48|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}if(e>>>0<144){break a}a=d+c|0;while(1){v[b+16>>2]=0;v[b+20>>2]=0;u[b+12>>1]=0;v[b+8>>2]=-1;v[b>>2]=0;v[b+4>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=2139095039;v[b+96>>2]=0;v[b+100>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;c=b- -64|0;v[c>>2]=0;v[c+4>>2]=0;u[b+60>>1]=0;v[b+56>>2]=-1;v[b+72>>2]=0;v[b+76>>2]=0;v[b+80>>2]=0;v[b+84>>2]=0;u[b+108>>1]=0;v[b+104>>2]=-1;v[b+88>>2]=2139095039;v[b+128>>2]=0;v[b+132>>2]=0;v[b+120>>2]=0;v[b+124>>2]=0;v[b+112>>2]=0;v[b+116>>2]=0;v[b+152>>2]=-1;v[b+144>>2]=0;v[b+148>>2]=0;u[b+156>>1]=0;v[b+136>>2]=2139095039;v[b+160>>2]=0;v[b+164>>2]=0;v[b+168>>2]=0;v[b+172>>2]=0;v[b+176>>2]=0;v[b+180>>2]=0;v[b+184>>2]=2139095039;b=b+192|0;if((a|0)!=(b|0)){continue}break}}return d|0}function Jx(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=0,p=0,q=C(0),r=0,s=0,t=0,u=C(0);p=v[a+336>>2];if(p){r=v[b+12>>2];s=v[b+4>>2];t=v[a+332>>2];while(1){a=o<<5;b=v[(a+t|0)+16>>2];f=z[b+112>>2];g=z[b+120>>2];q=z[b+116>>2];h=z[b+4>>2];m=a+s|0;l=z[m+4>>2];i=z[b+12>>2];j=z[b+8>>2];e=z[m>>2];k=z[b>>2];d=z[m+8>>2];n=z[m+24>>2];u=z[m+20>>2];a=a+r|0;c=z[b+124>>2];c=c==C(0)?C(0):C(C(1)/c);z[a>>2]=C(c*z[m+16>>2])+z[a>>2];z[a+4>>2]=C(c*u)+z[a+4>>2];z[a+8>>2]=C(c*n)+z[a+8>>2];c=g==C(0)?C(0):C(C(1)/g);d=C(d+d);e=C(e+e);l=C(l+l);n=C(C(j*d)+C(C(k*e)+C(h*l)));g=C(C(i*i)+C(-.5));c=C(c*C(C(j*n)+C(C(d*g)-C(i*C(C(k*l)-C(e*h))))));c=C(c+c);f=C((f==C(0)?C(0):C(C(1)/f))*C(C(k*n)+C(C(e*g)-C(i*C(C(h*d)-C(l*j))))));f=C(f+f);d=C((q==C(0)?C(0):C(C(1)/q))*C(C(h*n)+C(C(l*g)-C(i*C(C(j*e)-C(d*k))))));d=C(d+d);e=C(C(j*c)+C(C(k*f)+C(h*d)));z[a+16>>2]=z[a+16>>2]+C(C(k*e)+C(C(f*g)+C(i*C(C(h*c)-C(d*j)))));z[a+20>>2]=C(C(h*e)+C(C(d*g)+C(i*C(C(j*f)-C(c*k)))))+z[a+20>>2];z[a+24>>2]=C(C(j*e)+C(C(c*g)+C(i*C(C(k*d)-C(f*h)))))+z[a+24>>2];o=o+1|0;if((p|0)!=(o|0)){continue}break}}}function H9(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){pa(a|0,b|0,c|0);return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){t[c|0]=w[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){v[c>>2]=v[b>>2];v[c+4>>2]=v[b+4>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=v[b+12>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=v[b+20>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=v[b+28>>2];v[c+32>>2]=v[b+32>>2];v[c+36>>2]=v[b+36>>2];v[c+40>>2]=v[b+40>>2];v[c+44>>2]=v[b+44>>2];v[c+48>>2]=v[b+48>>2];v[c+52>>2]=v[b+52>>2];v[c+56>>2]=v[b+56>>2];v[c+60>>2]=v[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){v[c>>2]=v[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){t[c|0]=w[b|0];t[c+1|0]=w[b+1|0];t[c+2|0]=w[b+2|0];t[c+3|0]=w[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){t[c|0]=w[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function H2(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);g=z[f+8>>2];q=z[c+8>>2];h=C(z[e+8>>2]-q);i=z[f>>2];r=z[c>>2];j=C(z[e>>2]-r);s=z[c+4>>2];l=C(z[e+4>>2]-s);k=z[f+4>>2];t=C(C(g*h)+C(C(i*j)+C(l*k)));m=z[d+8>>2];o=z[d>>2];n=l;l=z[d+4>>2];p=C(C(m*h)+C(C(o*j)+C(n*l)));h=C(0);j=C(C(m*m)+C(C(o*o)+C(l*l)));n=C(C(g*g)+C(C(i*i)+C(k*k)));k=C(C(m*g)+C(C(o*i)+C(l*k)));g=C(C(j*n)-C(k*k));a:{if(g==C(0)){break a}g=C(C(C(p*n)-C(k*t))/g);if(gC(1))){break a}h=C(1)}b:{if(n!=C(0)){g=C(0);i=C(C(C(h*k)-t)/n);if(iC(1)){break b}g=h;break b}g=h;if(!(i>C(1))){break b}g=C(0);if(j==C(0)){i=C(1);break b}i=C(1);h=C(C(p+k)/j);if(hC(1))){break b}g=C(1);break b}g=C(0);i=C(0);if(j==C(0)){break b}h=C(p/j);if(hC(1)){break b}g=h}z[a+8>>2]=q+C(m*g);z[a+4>>2]=s+C(l*g);z[a>>2]=r+C(o*g);g=z[e>>2];h=z[f>>2];j=z[e+4>>2];m=z[f+4>>2];z[b+8>>2]=C(i*z[f+8>>2])+z[e+8>>2];z[b+4>>2]=j+C(i*m);z[b>>2]=g+C(i*h)}function DV(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0);c=z[b+16>>2];d=z[b+20>>2];e=z[b+4>>2];f=z[b+8>>2];z[a+36>>2]=C(z[b>>2]+z[b+12>>2])*C(.5);z[a+44>>2]=C(f+d)*C(.5);z[a+40>>2]=C(e+c)*C(.5);c=C(z[b+20>>2]-z[b+8>>2]);d=C(z[b+12>>2]-z[b>>2]);e=C(z[b+16>>2]-z[b+4>>2]);i=C(K(C(C(c*c)+C(C(d*d)+C(e*e)))));a:{if(i!=C(0)){f=C(C(1)/i);c=C(c*f);z[a+8>>2]=c;g=C(e*f);z[a+4>>2]=g;h=C(d*f);z[a>>2]=h;if(C(D(g))<=C(.9998999834060669)){z[a+12>>2]=c;d=C(-h);z[a+20>>2]=d;v[a+16>>2]=0;e=c;f=d;h=C(K(C(C(h*h)+C(C(c*c)+C(0)))));if(h>C(0)){e=C(C(1)/h);f=C(e*d);z[a+20>>2]=f;z[a+16>>2]=e*C(0);e=C(c*e);z[a+12>>2]=e}z[a+24>>2]=g*f;z[a+32>>2]=e*C(-g);z[a+28>>2]=C(c*e)+C(f*d);break a}v[a+12>>2]=1065353216;v[a+16>>2]=0;e=C(-g);z[a+32>>2]=e;z[a+28>>2]=c;v[a+20>>2]=0;v[a+24>>2]=0;d=C(K(C(C(g*g)+C(C(c*c)+C(0)))));if(!(d>C(0))){break a}d=C(C(1)/d);z[a+32>>2]=d*e;z[a+28>>2]=c*d;z[a+24>>2]=d*C(0);break a}v[a+24>>2]=0;v[a+28>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=1065353216;v[a+4>>2]=0;v[a+32>>2]=1065353216;v[a+16>>2]=1065353216;v[a+20>>2]=0}c=z[b+24>>2];z[a+56>>2]=c;z[a+52>>2]=c;z[a+48>>2]=c+C(i*C(.5))}function eC(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=B(b,24)+24|0;if(d){e=v[37696]+12|0;f=Ba[v[v[e>>2]+8>>2]](e,d,24422,10330,61)|0}d=b<<3;if(d){e=v[37696]+12|0;g=Ba[v[v[e>>2]+8>>2]](e,d,24422,10330,62)|0}d=b<<2;a:{if(!d){e=0;d=0;break a}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,d,24422,10330,63)|0;h=v[37696]+12|0;d=Ba[v[v[h>>2]+8>>2]](h,d,24422,10330,64)|0}h=!d|(!e|(!f|!g));b:{if(h){if(f){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,f)}if(g){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,g)}if(e){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(!d){break b}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,d);break b}c=v[a+8>>2];if(c){H9(f,c,B(v[a>>2],24))}c=v[a+12>>2];if(c){H9(g,c,v[a>>2]<<3)}c=v[a+20>>2];if(c){H9(e,c,v[a>>2]<<2)}c=v[a+16>>2];if(c){H9(d,c,v[a+4>>2]<<2)}v[a+4>>2]=b;b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+16>>2]=0;b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+20>>2]=e;v[a+16>>2]=d;v[a+12>>2]=g;v[a+8>>2]=f}return!h}function ep(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=xa-16|0;xa=h;e=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(e){e=e-16|0}else{e=0}f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15;i=w[(d&1?v[c+8>>2]:(v[((g<<2)+89188|0)+12>>2]+c|0)+8|0)|0];j=i&8;a:{if(!(b|!j)){Ba[v[v[a>>2]+128>>2]](a);b=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[b+4>>2];g=c>>>24&15;f=v[((g<<2)+89188|0)+12>>2];d=i&247;b:{c:{d:{switch((c>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break c}break;case 1:break c;default:break d}}t[h|0]=d;PE(b+f|0,h);break b}c=v[b+8>>2];if(!c){c=Pu(v[b>>2],g);v[b+8>>2]=c}t[c|0]=d;Xu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}if(!e|!v[a+16>>2]){break a}ph(a+12|0);break a}if(!b|j){break a}if(e){oh(a+12|0);f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15}b=a+f|0;e=i|8;f=v[((g<<2)+89188|0)+12>>2];e:{f:{g:{switch((d>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break f}break;case 1:break f;default:break g}}t[h+8|0]=e;PE(c+f|0,h+8|0);break e}d=v[b+8>>2];if(!d){d=Pu(v[b>>2],g);v[b+8>>2]=d}t[d|0]=e;Xu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}Ba[v[v[a>>2]+124>>2]](a)}xa=h+16|0}function Qo(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=xa-16|0;xa=h;e=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(e){e=e-16|0}else{e=0}f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15;i=w[(d&1?v[c+8>>2]:(v[((g<<2)+89188|0)+12>>2]+c|0)+8|0)|0];j=i&8;a:{if(!(b|!j)){Ba[v[v[a>>2]+340>>2]](a);b=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[b+4>>2];g=c>>>24&15;f=v[((g<<2)+89188|0)+12>>2];d=i&247;b:{c:{d:{switch((c>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break c}break;case 1:break c;default:break d}}t[h|0]=d;PE(b+f|0,h);break b}c=v[b+8>>2];if(!c){c=Pu(v[b>>2],g);v[b+8>>2]=c}t[c|0]=d;Xu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}if(!e|!v[a+16>>2]){break a}ph(a+12|0);break a}if(!b|j){break a}if(e){oh(a+12|0);f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15}b=a+f|0;e=i|8;f=v[((g<<2)+89188|0)+12>>2];e:{f:{g:{switch((d>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break f}break;case 1:break f;default:break g}}t[h+8|0]=e;PE(c+f|0,h+8|0);break e}d=v[b+8>>2];if(!d){d=Pu(v[b>>2],g);v[b+8>>2]=d}t[d|0]=e;Xu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}Ba[v[v[a>>2]+336>>2]](a)}xa=h+16|0}function Ej(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=xa-16|0;xa=h;e=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(e){e=e-16|0}else{e=0}f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15;i=w[(d&1?v[c+8>>2]:(v[((g<<2)+89188|0)+12>>2]+c|0)+8|0)|0];j=i&8;a:{if(!(b|!j)){Ba[v[v[a>>2]+292>>2]](a);b=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[b+4>>2];g=c>>>24&15;f=v[((g<<2)+89188|0)+12>>2];d=i&247;b:{c:{d:{switch((c>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break c}break;case 1:break c;default:break d}}t[h|0]=d;PE(b+f|0,h);break b}c=v[b+8>>2];if(!c){c=Pu(v[b>>2],g);v[b+8>>2]=c}t[c|0]=d;Xu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}if(!e|!v[a+16>>2]){break a}ph(a+12|0);break a}if(!b|j){break a}if(e){oh(a+12|0);f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15}b=a+f|0;e=i|8;f=v[((g<<2)+89188|0)+12>>2];e:{f:{g:{switch((d>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break f}break;case 1:break f;default:break g}}t[h+8|0]=e;PE(c+f|0,h+8|0);break e}d=v[b+8>>2];if(!d){d=Pu(v[b>>2],g);v[b+8>>2]=d}t[d|0]=e;Xu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}Ba[v[v[a>>2]+288>>2]](a)}xa=h+16|0}function A2(a,b,c,d){var e=0,f=C(0),g=C(0),h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);f=z[d>>2];v[a>>2]=0;i=v[b+384>>2];a:{if(!i){break a}s=C(f*f);while(1){i=i-1|0;d=(i<<6)+b|0;g=z[d+24>>2];l=z[d+40>>2];f=z[d+8>>2];j=z[d>>2];k=z[d+4>>2];m=C(z[c+56>>2]+C(C(z[c+40>>2]*f)+C(C(z[c+8>>2]*j)+C(k*z[c+24>>2]))));o=C(z[c+48>>2]+C(C(z[c+32>>2]*f)+C(C(z[c>>2]*j)+C(k*z[c+16>>2]))));p=z[d+16>>2];q=z[d+32>>2];j=C(z[c+52>>2]+C(C(z[c+36>>2]*f)+C(C(z[c+4>>2]*j)+C(k*z[c+20>>2]))));k=z[d+20>>2];r=z[d+36>>2];f=C(C(l*C(m-g))+C(C(C(o-p)*q)+C(C(j-k)*r)));g=C(g-C(m-C(l*f)));l=C(g*g);g=C(p-C(o-C(q*f)));m=C(g*g);g=C(k-C(j-C(r*f)));if(C(l+C(m+C(g*g)))>s){e=v[b+384>>2]-1|0;v[b+384>>2]=e;e=(e<<6)+b|0;h=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=h;v[d+48>>2]=v[e+48>>2];h=v[e+44>>2];v[d+40>>2]=v[e+40>>2];v[d+44>>2]=h;h=v[e+36>>2];v[d+32>>2]=v[e+32>>2];v[d+36>>2]=h;h=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=h;h=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=h;h=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=h;if(i){continue}break a}z[d+44>>2]=f;n=f>2]=n;if(i){continue}break}}}function NR(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=xa-16|0;xa=f;d=v[a+48>>2];a:{if(!d){break a}c=v[v[v[a+4>>2]+40>>2]+2168>>2];a=x[d>>1];if(!(a&2)){u[d>>1]=a|2;v[f+12>>2]=d;a=v[c+8>>2];b:{if(a>>>0>=(v[c+12>>2]&2147483647)>>>0){a=0;b=v[c+12>>2];g=b&2147483647?b<<1:1;c:{if(!g){break c}b=g<<2;if(!b){break c}a=v[37696];e=a+12|0;a=(k=e,l=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?55835:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}e=v[c+8>>2];i=(e<<2)+a|0;if((e|0)>0){h=v[c+4>>2];b=a;while(1){v[b>>2]=v[h>>2];h=h+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[f+12>>2];d:{if(v[c+12>>2]<0){break d}b=v[c+4>>2];if(!b){break d}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);e=v[c+8>>2]}v[c+12>>2]=g;v[c+4>>2]=a;v[c+8>>2]=e+1;break b}v[v[c+4>>2]+(a<<2)>>2]=d;v[c+8>>2]=a+1}u[d+4>>1]=x[d+4>>1]+1}if(v[d+16>>2]){break a}a=IJ(c);v[d+16>>2]=a;if(!a){break a}b=v[d+8>>2];v[a+16>>2]=v[b+48>>2];v[a+20>>2]=v[v[d+12>>2]+48>>2];b=v[b+44>>2];v[a+24>>2]=v[((w[b+9|0]<<2)+149664|0)+40>>2]+b;b=a;a=v[v[d+12>>2]+44>>2];v[b+28>>2]=v[((w[a+9|0]<<2)+149664|0)+40>>2]+a}xa=f+16|0}function L5(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0);i=xa+-64|0;xa=i;F=z[d+12>>2];G=z[d+16>>2];H=z[d+8>>2];I=z[g+12>>2];J=z[g+16>>2];K=z[g+8>>2];j=z[g+20>>2];q=z[d+20>>2];l=z[c>>2];m=z[f>>2];n=z[c+4>>2];o=z[f+4>>2];p=z[b>>2];t=z[b+4>>2];r=z[g+24>>2];u=z[f+8>>2];k=C(r*u);s=z[d+24>>2];w=z[c+8>>2];x=z[b+8>>2];y=C(C(s*w)+x);z[i+56>>2]=k+y;A=C(r*o);B=C(t+C(s*n));z[i+52>>2]=A+B;D=C(r*m);E=C(p+C(s*l));z[i+48>>2]=D+E;L=k;k=C(x+C(q*w));z[i+40>>2]=L+k;n=C(t+C(q*n));z[i+36>>2]=A+n;l=C(p+C(q*l));z[i+32>>2]=D+l;p=C(j*u);z[i+24>>2]=p+k;o=C(j*o);z[i+20>>2]=o+n;m=C(j*m);z[i+16>>2]=m+l;z[i+8>>2]=p+y;z[i+4>>2]=o+B;z[i>>2]=m+E;c=i+48|0;d=i+32|0;k=j;j=I>C(0)?C(0):K>C(0)?C(0):J;b=C(r+j)>h?16711680:C(k-j)C(0)?C(0):H>C(0)?C(0):G;b=C(s+h)>e?16711680:C(q-h)>2]+28>>2]](a,c,d,b);f=d;d=i+16|0;Ba[v[v[a>>2]+28>>2]](a,f,d,b);Ba[v[v[a>>2]+28>>2]](a,d,i,b);Ba[v[v[a>>2]+28>>2]](a,i,c,b);xa=i- -64|0}function cP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0;h=v[a+24>>2];g=v[v[a+976>>2]+1156>>2];f=v[a+36>>2];a:{if(!f){break a}if(!b){while(1){c=vr(g,40);i=z[a+1084>>2];d=v[a+16>>2];j=v[a+20>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=d;v[c+12>>2]=j;z[c+36>>2]=i;d=f-e|0;v[c+32>>2]=d>>>0<1024?d:1024;v[c+28>>2]=(e<<2)+h;v[c>>2]=135172;v[c+24>>2]=1;d=v[c+16>>2];Ba[v[v[d>>2]+72>>2]](d,c);e=e+1024|0;if(f>>>0>e>>>0){continue}break a}}while(1){c=vr(g,40);i=z[a+1084>>2];d=v[a+16>>2];j=v[a+20>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=d;v[c+12>>2]=j;z[c+36>>2]=i;d=f-e|0;v[c+32>>2]=d>>>0<1024?d:1024;v[c+28>>2]=(e<<2)+h;v[c>>2]=135172;v[c+20>>2]=b;v[c+24>>2]=1;Ba[v[v[b>>2]+16>>2]](b);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);e=e+1024|0;if(f>>>0>e>>>0){continue}break}}if(w[a+2361|0]&32){c=vr(g,40);e=v[a+1012>>2];g=v[a+16>>2];a=v[a+20>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=g;v[c+12>>2]=a;v[c+36>>2]=e;v[c+32>>2]=f;v[c+28>>2]=h;v[c>>2]=135228;v[c+20>>2]=b;v[c+24>>2]=1;if(b){Ba[v[v[b>>2]+16>>2]](b);v[c+16>>2]=v[v[c+20>>2]+16>>2];a=v[c>>2]}else{a=135228}Ba[v[a+20>>2]](c)}}function ED(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=C(0),i=0,j=C(0),k=C(0),l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0);i=xa-16|0;xa=i;a:{if(!e){break a}t[a+337|0]=1;m=v[a+292>>2];n=v[a+300>>2];while(1){l=g<<2;f=B(v[l+c>>2],24)+d|0;o=z[f+4>>2];j=z[f+16>>2];p=z[f+8>>2];k=z[f+20>>2];h=z[f+12>>2];q=z[f>>2];r=C(C(h-q)*C(.004999999888241291));f=m+B(v[n+(v[b+l>>2]<<2)>>2],24)|0;z[f+12>>2]=h+r;z[f>>2]=q-r;h=k;k=C(C(k-p)*C(.004999999888241291));z[f+20>>2]=h+k;h=j;j=C(C(j-o)*C(.004999999888241291));z[f+16>>2]=h+j;z[f+8>>2]=p-k;z[f+4>>2]=o-j;g=g+1|0;if((g|0)!=(e|0)){continue}break}if(!w[a+336|0]|!v[a+4>>2]){break a}t[a+338|0]=1;m=a+352|0;n=a+52|0;l=v[a+296>>2];g=0;while(1){f=v[v[a+300>>2]+(v[(g<<2)+b>>2]<<2)>>2];v[i+12>>2]=f;b:{c:{if(f>>>0>=y[a+316>>2]){break c}c=v[v[a+312>>2]+(f<<2)>>2];if((c|0)==-1){break c}RB(v[a+4>>2],c);break b}oD(n,l+(f<<3)|0,f)}d:{if(v[a+268>>2]-3>>>0>1){break d}f=v[a+356>>2];if(f>>>0>=(v[a+360>>2]&2147483647)>>>0){on(m,i+12|0);break d}v[v[a+352>>2]+(f<<2)>>2]=v[i+12>>2];v[a+356>>2]=v[a+356>>2]+1}g=g+1|0;if((g|0)!=(e|0)){continue}break}}xa=i+16|0}function Hy(a,b,c,d,e){var f=0,g=0,h=0;f=xa-16|0;xa=f;if(!(!c|!d)){h=d;g=v[c>>2]+1|0;d=v[d>>2];v[h>>2]=d>>>0>>0?g:d;v[c>>2]=v[c>>2]+1}a:{b:{if(!e){break b}c=v[a+92>>2];if(!c){break b}d=c-1|0;c=v[v[a+88>>2]+(d<<2)>>2];v[a+92>>2]=d;v[f+12>>2]=c;a=v[b+4>>2];if(a>>>0>=(v[b+8>>2]&2147483647)>>>0){Cy(b,f+12|0);c=v[f+12>>2];break a}v[v[b>>2]+(a<<2)>>2]=c;v[b+4>>2]=a+1;c=v[f+12>>2];break a}c=v[a+116>>2];if(c){d=c-1|0;c=v[v[a+112>>2]+(d<<2)>>2];v[a+116>>2]=d;v[f+8>>2]=c;d=v[b+4>>2];c:{if(d>>>0>=(v[b+8>>2]&2147483647)>>>0){Cy(b,f+8|0);break c}v[v[b>>2]+(d<<2)>>2]=c;v[b+4>>2]=d+1}b=v[a+152>>2]+1|0;v[a+152>>2]=b;c=a;a=v[a+156>>2];v[c+156>>2]=a>>>0>>0?b:a;c=v[f+8>>2];break a}d=v[a+140>>2];c=0;if((d|0)==v[a+144>>2]){break a}v[a+140>>2]=d+1;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,16384,24422,10233,234)|0;v[f+4>>2]=c;if(c){d=v[b+4>>2];d:{if(d>>>0>=(v[b+8>>2]&2147483647)>>>0){Cy(b,f+4|0);break d}v[v[b>>2]+(d<<2)>>2]=c;v[b+4>>2]=d+1}b=v[a+152>>2]+1|0;v[a+152>>2]=b;c=a;a=v[a+156>>2];v[c+156>>2]=a>>>0>>0?b:a;c=v[f+4>>2];break a}v[a+140>>2]=v[a+140>>2]-1;c=0}xa=f+16|0;return c}function lC(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=xa-32|0;a:{if(v[a+16>>2]+(v[a+12>>2]+(v[a+8>>2]+(v[a+4>>2]+v[a>>2]|0)|0)|0)>>>0>15){while(1){v[k+28>>2]=k;b=v[k+28>>2];d=v[b+16>>2]&2147483640|4;c=v[b+12>>2]&2147483640|3;e=v[b+8>>2]&2147483640|2;f=v[b+4>>2]&2147483640|1;b=v[b>>2]&2147483640;g=b>>>0>>0?f:b;h=e>>>0>g>>>0?e:g;i=c>>>0>h>>>0?c:h;j=d>>>0>i>>>0?d:i;d=d>>>0>>0?d:i;c=c>>>0>>0?c:h;e=e>>>0>>0?e:g;b=b>>>0>f>>>0?f:b;f=b>>>0>>0?e:b;g=c>>>0>f>>>0?c:f;h=d>>>0>g>>>0?d:g;i=h>>>0>j>>>0?j:h;d=d>>>0>>0?d:g;c=c>>>0>>0?c:f;e=b>>>0>e>>>0?e:b;f=c>>>0>e>>>0?c:e;g=d>>>0>f>>>0?d:f;b=g>>>0>i>>>0?i:g;h=h>>>0>>0?j:h;g=g>>>0>>0?i:g;i=g>>>0>h>>>0?h:g;f=d>>>0>>0?d:f;c=c>>>0>>0?c:e;e=c>>>0>>0?f:c;j=b>>>0>e>>>0?b:e;d=i>>>0>j>>>0?i:j;c=(i>>>0>>0?i:j)<<6&448|((b>>>0>>0?b:e)<<3&56|(c>>>0>f>>>0?f:c)&7);b=g>>>0>>0?h:g;u[((l<<1)+a|0)+208>>1]=c|(b>>>0>>0?b:d)<<9&3584|(b>>>0>d>>>0?b:d)<<12&28672;l=l+1|0;if((l|0)!=8){continue}break}break a}v[a+208>>2]=1183336072;v[a+212>>2]=1183336072;v[a+216>>2]=1183336072;v[a+220>>2]=1183336072}}function Z_(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=v[a+40>>2];k=v[a+44>>2];a:{b:{if(!c){j=0;if(k-1>>>0>d>>>0){break b}break a}v[e+12>>2]=d;l=c-1|0;v[e+8>>2]=l;h=b-k|0;v[e+4>>2]=h;f=B(h,3);v[e>>2]=f+2;g=1;if(k-1>>>0<=d>>>0){break a}j=1;if(t[(v[a+60>>2]+(h<<2)|0)+2|0]<0){break b}v[e+28>>2]=d;v[e+24>>2]=l;v[e+20>>2]=h;v[e+16>>2]=f+1;j=2}f=j;g=(f<<4)+e|0;v[g+12>>2]=d;v[g+8>>2]=c;v[g+4>>2]=b;h=B(b,3);v[g>>2]=h;g=f+1|0;if(i-1>>>0<=c>>>0|t[(v[a+60>>2]+(b<<2)|0)+2|0]>=0){break a}g=(g<<4)+e|0;v[g+12>>2]=d;v[g+8>>2]=c;v[g+4>>2]=b;v[g>>2]=h+1;g=f+2|0}c:{d:{e:{if(i-1>>>0>c>>>0){f=(g<<4)+e|0;v[f+12>>2]=d;v[f+8>>2]=c;v[f+4>>2]=b;v[f>>2]=B(b,3)+2;f=g+1|0;if(d){break e}return f}if(!d){break c}h=b-1|0;break d}h=b-1|0;if(t[(v[a+60>>2]+(h<<2)|0)+2|0]<0){g=f;break d}f=(f<<4)+e|0;v[f+12>>2]=d-1;v[f+8>>2]=c;v[f+4>>2]=h;v[f>>2]=B(h,3)+1;g=g+2|0}f=(g<<4)+e|0;i=d-1|0;v[f+12>>2]=i;v[f+8>>2]=c;v[f+4>>2]=h;v[f>>2]=B(h,3);d=g+1|0;if(!c){return d}b=(k^-1)+b|0;if(t[(v[a+60>>2]+(b<<2)|0)+2|0]>=0){return d}a=(d<<4)+e|0;v[a+12>>2]=i;v[a+8>>2]=c-1;v[a+4>>2]=b;v[a>>2]=B(b,3)+1;g=g+2|0}return g}function nF(a,b,c,d,e){v[a>>2]=0;v[a+4>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;v[a+228>>2]=0;v[a+232>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+56>>2]=0;v[a+60>>2]=2048;v[a+72>>2]=0;v[a+76>>2]=0;v[a+248>>2]=0;v[a+80>>2]=0;v[a+84>>2]=2048;I9(a+88|0,0,84);v[a+220>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+196>>2]=0;v[a+200>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;v[a+180>>2]=0;v[a+184>>2]=0;v[a+260>>2]=0;v[a+264>>2]=0;v[a+268>>2]=0;v[a+272>>2]=0;v[a+276>>2]=0;v[a+280>>2]=0;v[a+284>>2]=0;v[a+288>>2]=0;v[a+292>>2]=0;v[a+296>>2]=0;v[a+300>>2]=0;v[a+304>>2]=0;v[a+308>>2]=0;v[a+312>>2]=0;I9(a+320|0,0,72);v[a+436>>2]=0;v[a+440>>2]=0;v[a+428>>2]=0;v[a+432>>2]=0;v[a+420>>2]=0;v[a+424>>2]=0;v[a+412>>2]=0;v[a+416>>2]=0;v[a+404>>2]=0;v[a+408>>2]=0;v[a+396>>2]=0;v[a+400>>2]=0;v[a+464>>2]=e;v[a+468>>2]=0;v[a+452>>2]=d;v[a+448>>2]=c;v[a+444>>2]=b;v[a+456>>2]=0;v[a+252>>2]=0;v[a+256>>2]=0;v[a+172>>2]=0;v[a+176>>2]=0;return a}function ST(a){a=a|0;var b=0,c=0;v[a+4>>2]=140304;v[a>>2]=140216;b=v[a+12>>2];if(b){Ba[v[v[b>>2]+4>>2]](b)}v[a+12>>2]=0;b=v[a+184>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+144>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+128>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+120>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+80>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+76>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+68>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a- -64>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+56>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+52>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+44>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+40>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+32>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+28>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+20>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function OA(a,b,c,d){var e=0,f=0,g=0,h=C(0),i=C(0),j=0,k=0,l=C(0),m=0,n=0,o=0,p=0,q=C(0),r=C(0),s=0,t=0,u=0,y=0,A=0;a:{f=v[a+24>>2];e=x[f+2>>1];if(!e){break a}s=w[f|0]==3?112:48;t=e+f|0;g=v[a+28>>2];e=f;while(1){u=e+48|0;j=w[e+1|0];y=w[e+36|0];b:{if(!g){g=0;break b}if(!j){break b}k=(x[e+2>>1]+e|0)+32|0;p=j&3;n=0;c:{if(j-1>>>0<3){e=0;break c}A=j&252;e=0;o=0;while(1){m=e<<2;q=z[m+k>>2];z[g>>2]=q;r=z[(m|4)+k>>2];z[g+4>>2]=r;i=z[(m|8)+k>>2];z[g+8>>2]=i;h=z[(m|12)+k>>2];z[g+12>>2]=h;l=C(h+C(i+C(r+C(l+q))));e=e+4|0;g=g+16|0;o=o+4|0;if((A|0)!=(o|0)){continue}break}}if(!p){break b}while(1){h=z[(e<<2)+k>>2];z[g>>2]=h;e=e+1|0;g=g+4|0;l=C(l+h);n=n+1|0;if((n|0)!=(p|0)){continue}break}}e=B(j,s)+u|0;if(t>>>0>e>>>0){continue}break}if(!(y&1)|x[a+8>>1]!=65535|(x[a+10>>1]!=65535|l==C(0))){break a}i=z[c+28>>2];h=z[d+28>>2];if(!(i>2];d=v[c+72>>2];c=v[f+32>>2];a=v[b+8>>2];v[b+8>>2]=a+1;f=v[b+4>>2]+(a<<5)|0;z[f+8>>2]=h>i?i:h;z[f+4>>2]=l;v[f>>2]=c;b=e<<7;a=d<<7;v[f+16>>2]=a>>>0>>0?b:a;v[f+12>>2]=a>>>0>b>>>0?b:a}}function $1(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0;j=xa-96|0;xa=j;a:{b:{c:{switch(d-2|0){case 2:o=z[h+40>>2];p=z[h+32>>2];q=z[h+36>>2];d=1;if(!(C(C(z[h+56>>2]*o)+C(C(z[h+48>>2]*p)+C(q*z[h+52>>2])))>C(.9998999834060669))){break a}Ba[v[v[a>>2]+16>>2]](j+80|0,a);Ba[v[v[b>>2]+16>>2]](j- -64|0,b);k=C(z[j+88>>2]-z[j+72>>2]);l=C(z[j+80>>2]-z[j+64>>2]);m=C(z[j+84>>2]-z[j+68>>2]);n=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(m*m))))));a=C(C(C(k*n)*o)+C(C(C(l*n)*p)+C(q*C(m*n))))>C(.7070000171661377);if(a){b=v[f+4>>2];v[j+32>>2]=v[f>>2];v[j+36>>2]=b;b=v[f+12>>2];v[j+40>>2]=v[f+8>>2];v[j+44>>2]=b;D2(e,i,h,c,j+32|0)}d=!a;break a;case 0:a=v[f+4>>2];v[j+48>>2]=v[f>>2];v[j+52>>2]=a;a=v[f+12>>2];v[j+56>>2]=v[f+8>>2];v[j+60>>2]=a;D2(e,i,h,c,j+48|0);break b;default:break c}}r=w[i+66|0];d=v[g+4>>2];v[j+16>>2]=v[g>>2];v[j+20>>2]=d;d=v[g+12>>2];v[j+24>>2]=v[g+8>>2];v[j+28>>2]=d;d=1;if((J_(a,b,i+67|0,i+71|0,r,1,j+16|0,h)|0)!=5){break a}a=v[f+4>>2];v[j>>2]=v[f>>2];v[j+4>>2]=a;a=v[f+12>>2];v[j+8>>2]=v[f+8>>2];v[j+12>>2]=a;D2(e,i,h,c,j)}d=0}xa=j+96|0;return d}function _x(a){a=a|0;var b=0,c=0,d=0,e=0;v[a+52>>2]=128132;v[a>>2]=128088;d=a- -64|0;c=v[d>>2];if(c){while(1){e=v[v[a+60>>2]+(b<<2)>>2];if(e){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e);c=v[d>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+72>>2]=0;v[a+56>>2]=0;v[d>>2]=0;b=v[a+68>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+60>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+28>>2]=128132;c=v[a+40>>2];if(c){b=0;while(1){d=v[v[a+36>>2]+(b<<2)>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);c=v[a+40>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+48>>2]=0;v[a+32>>2]=0;v[a+40>>2]=0;b=v[a+44>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+36>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=128132;c=v[a+16>>2];if(c){b=0;while(1){d=v[v[a+12>>2]+(b<<2)>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);c=v[a+16>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+16>>2]=0;v[a+24>>2]=0;v[a+8>>2]=0;b=v[a+20>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+12>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function HO(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=C(0),u=0;g=v[a+20>>2];c=v[a+28>>2];e=v[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=v[c+304>>2];h=v[c+288>>2];while(1){f=v[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=vr(v[v[c+312>>2]+1156>>2],88);m=v[c+308>>2];n=v[c+276>>2];o=v[c+280>>2];p=v[c+196>>2];q=w[c+124|0];r=v[c+184>>2];h=v[c+128>>2];s=z[v[c+300>>2]+7152>>2];i=v[c+312>>2];u=v[i+1836>>2];v[b+8>>2]=v[i+1832>>2];v[b+12>>2]=u;v[b+24>>2]=0;v[b>>2]=134356;v[b+36>>2]=i;v[b+40>>2]=c;z[b+44>>2]=s;v[b+48>>2]=h;v[b+52>>2]=l;v[b+56>>2]=d;v[b+60>>2]=a-d;v[b+64>>2]=e;v[b+68>>2]=j;v[b+72>>2]=r;t[b+85|0]=q;v[b+80>>2]=k;v[b+76>>2]=p;v[b+28>>2]=n;v[b+32>>2]=o;t[b+84|0]=(h|0)==(m-1|0);d=v[v[c+312>>2]+1152>>2];v[b+20>>2]=g;v[b+24>>2]=1;v[b+16>>2]=d;j=f+j|0;if(g){Ba[v[v[g>>2]+16>>2]](g);d=v[b>>2]}else{d=134356}Ba[v[d+20>>2]](b);d=a;if(a>>>0>>0){continue}break}}}function Dn(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=v[a+32>>2];a:{if(g){c=g-1|0;g=v[v[a+28>>2]+(c<<2)>>2];v[a+32>>2]=c;break a}g=v[a+24>>2];v[a+24>>2]=g+1}if(g>>>0<=65534){d=v[a+44>>2];b:{if(d>>>0>g>>>0){i=v[a+40>>2];break b}c=d<<1;c=c>>>0<65535?c:65535;v[a+44>>2]=c;if(c){e=v[37696]+12|0;i=Ba[v[v[e>>2]+8>>2]](e,c<<2,24422,17745,126)|0;c=v[a+44>>2]<<2}else{c=0}c=I9(i,0,c);c:{if(!d){break c}e=0;if(d-1>>>0>=3){m=d&-4;while(1){f=e<<2;v[f+c>>2]=v[f+v[a+40>>2]>>2];h=f|4;v[h+c>>2]=v[h+v[a+40>>2]>>2];h=f|8;v[h+c>>2]=v[h+v[a+40>>2]>>2];f=f|12;v[f+c>>2]=v[f+v[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;v[f+c>>2]=v[f+v[a+40>>2]>>2];e=e+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}e=v[a+40>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+40>>2]=c}v[(g<<2)+i>>2]=b;u[b+52>>1]=g}d:{if(g>>>0<65535){if(!v[a+8>>2]){break d}while(1){Fr(v[v[a+4>>2]+(j<<2)>>2],b);j=j+1|0;if(j>>>0>2]){continue}break}break d}a9(v[37696],4,7621,413,69983,0);Ba[v[v[b>>2]>>2]](b);b=0}return b}function Kv(a){a=a|0;var b=0,c=0;v[a>>2]=127452;b=v[a+180>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+172>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+168>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+160>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+156>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+148>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+144>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+136>>2];if(!b){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+132>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+124>>2];if(!b){break e}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+120>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+112>>2];if(!b){break f}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+108>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+100>>2];if(!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a>>2]=127652;b=v[a+88>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[a+80>>2];if(!b){break h}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function am(a,b,c,d,e,f){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);f=f|0;var g=0,h=0;a:{b:{c:{d:{a=a+8|0;h=v[a+4>>2];switch((h>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}kF(a+12|0,b,c,d,e,f);break a}g=v[a+8>>2];e:{if(!(h&2097152)){if(!g){g=Pu(v[a>>2],h>>>24&15);v[a+8>>2]=g}z[g+204>>2]=z[a+120>>2];z[g+208>>2]=z[a+124>>2];z[g+212>>2]=z[a+128>>2];v[g+216>>2]=v[a+132>>2];z[g+220>>2]=z[a+136>>2];z[g+224>>2]=z[a+140>>2];z[g+228>>2]=z[a+144>>2];v[g+232>>2]=v[a+148>>2];z[g+236>>2]=z[a+152>>2];z[g+240>>2]=z[a+156>>2];z[g+244>>2]=z[a+160>>2];v[g+248>>2]=v[a+164>>2];z[g+252>>2]=z[a+168>>2];z[g+256>>2]=z[a+172>>2];z[g+260>>2]=z[a+176>>2];v[g+264>>2]=v[a+180>>2];z[g+268>>2]=z[a+184>>2];z[g+272>>2]=z[a+188>>2];z[g+276>>2]=z[a+192>>2];v[g+280>>2]=v[a+196>>2];z[g+284>>2]=z[a+200>>2];z[g+288>>2]=z[a+204>>2];z[g+292>>2]=z[a+208>>2];v[g+296>>2]=v[a+212>>2];break e}if(g){break e}g=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=g}b=(b<<4)+g|0;v[b+216>>2]=f;z[b+212>>2]=e;z[b+208>>2]=d;z[b+204>>2]=c;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|2097152}}function re(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0);d=xa+-64|0;xa=d;Ba[v[v[b>>2]+76>>2]](d+32|0,b);Ba[v[v[b>>2]+112>>2]](d,b);j=z[d+56>>2];p=z[d+52>>2];k=z[d+20>>2];l=z[d+24>>2];u=z[d+48>>2];e=z[d+36>>2];g=z[d+44>>2];h=z[d+40>>2];o=z[d+16>>2];i=z[d+32>>2];f=z[c+4>>2];m=z[c>>2];n=z[c+8>>2];Ba[v[v[b>>2]+156>>2]](a,b);Ba[v[v[b>>2]+164>>2]](d,b);w=z[d>>2];x=z[d+4>>2];n=C(n+n);m=C(m+m);q=C(f+f);t=C(C(h*n)+C(C(i*m)+C(e*q)));f=C(C(g*g)+C(-.5));r=C(j+C(C(h*t)+C(C(n*f)+C(g*C(C(i*q)-C(m*e))))));s=j;j=C(l+l);l=C(o+o);k=C(k+k);o=C(C(h*j)+C(C(i*l)+C(e*k)));s=C(r-C(s+C(C(h*o)+C(C(j*f)+C(g*C(C(i*k)-C(l*e)))))));p=C(C(p+C(C(e*t)+C(C(q*f)+C(g*C(C(h*m)-C(n*i))))))-C(p+C(C(e*o)+C(C(k*f)+C(g*C(C(h*l)-C(j*i)))))));r=z[d+8>>2];z[a>>2]=C(C(x*s)-C(p*r))+z[a>>2];e=C(C(u+C(C(i*t)+C(C(m*f)+C(g*C(C(e*n)-C(q*h))))))-C(u+C(C(i*o)+C(C(l*f)+C(g*C(C(e*j)-C(k*h)))))));z[a+4>>2]=C(C(r*e)-C(s*w))+z[a+4>>2];z[a+8>>2]=C(C(w*p)-C(e*x))+z[a+8>>2];xa=d- -64|0}function gR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=v[a+28>>2];b=v[d+2460>>2];if(b){a=0;while(1){e=v[(v[d+2456>>2]+(a<<3)|0)+4>>2];if(!(w[e+46|0]&4)){hG(v[d+1e3>>2],v[e+60>>2])}a=a+1|0;if((b|0)!=(a|0)){continue}break}}b=0;e=xa-16|0;xa=e;a=v[d+1e3>>2];c=a+168|0;MF(c);OF(c);NF(c);SF(c,a+32|0,0,0);if(v[a+36>>2]){while(1){c=v[v[a+32>>2]+(b<<2)>>2]>>>7|0;v[e+12>>2]=c;a:{if((c|0)==v[a+12>>2]){v[a+12>>2]=c-1;break a}f=v[a+4>>2];if(f>>>0>=(v[a+8>>2]&2147483647)>>>0){on(a,e+12|0);break a}v[v[a>>2]+(f<<2)>>2]=c;v[a+4>>2]=v[a+4>>2]+1}b=b+1|0;if(b>>>0>2]){continue}break}}v[a+36>>2]=0;xa=e+16|0;d=v[d+1e3>>2];b=v[d+284>>2];a=v[d+420>>2];if((b|0)!=(a|0)){b=b-a|0;e=v[d+280>>2]+(a<<2)|0;a=0;while(1){c=v[d+184>>2]+B(v[e+(a<<2)>>2]>>>7|0,24)|0;f=v[c+20>>2];if(!(!f|!(w[c+4|0]&2))){bH(f+-64|0,1)}a=a+1|0;if((b|0)!=(a|0)){continue}break}}b=v[d+296>>2];a=v[d+424>>2];if((b|0)!=(a|0)){b=b-a|0;e=v[d+292>>2]+(a<<2)|0;a=0;while(1){c=v[d+184>>2]+B(v[e+(a<<2)>>2]>>>7|0,24)|0;f=v[v[c+20>>2]+16>>2];if(!(!f|!(w[c+4|0]&2))){xG(f,1)}a=a+1|0;if((b|0)!=(a|0)){continue}break}}}function FF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=v[a+448>>2];l=v[c>>2];b=b<<1;g=v[c+20>>2];c=(b>>>0)/(g>>>0)|0;h=v[v[l+(c<<2)>>2]+(b-B(c,g)<<2)>>2]>>>7|0;if((h|0)!=33554431){i=v[a+64>>2];c=v[a+84>>2];d=(b>>>0)/(c>>>0)|0;j=v[i+(d<<2)>>2];k=b-B(c,d)|0;d=j+(k<<3)|0;e=v[a+16>>2]+B(h,24)|0;a:{if((b|0)==v[e>>2]){f=e;e=v[d>>2];v[f>>2]=e;break a}e=v[d+4>>2];f=(e>>>0)/(c>>>0)|0;v[v[i+(f<<2)>>2]+(e-B(c,f)<<3)>>2]=v[d>>2];e=v[d>>2]}if((e|0)!=-1){f=(e>>>0)/(c>>>0)|0;v[(v[i+(f<<2)>>2]+(e-B(c,f)<<3)|0)+4>>2]=v[((k<<3)+j|0)+4>>2]}v[d>>2]=-1;v[((k<<3)+j|0)+4>>2]=-1}d=b|1;b=(d>>>0)/(g>>>0)|0;g=v[v[(b<<2)+l>>2]+(d-B(b,g)<<2)>>2]>>>7|0;if(!((g|0)==33554431|(g|0)==(h|0))){h=v[a+64>>2];b=v[a+84>>2];c=(d>>>0)/(b>>>0)|0;e=v[h+(c<<2)>>2];i=d-B(b,c)|0;c=e+(i<<3)|0;a=v[a+16>>2]+B(g,24)|0;b:{if((d|0)==v[a>>2]){f=a;a=v[c>>2];v[f>>2]=a;break b}a=v[c+4>>2];d=(a>>>0)/(b>>>0)|0;v[v[h+(d<<2)>>2]+(a-B(b,d)<<3)>>2]=v[c>>2];a=v[c>>2]}if((a|0)!=-1){d=(a>>>0)/(b>>>0)|0;v[(v[h+(d<<2)>>2]+(a-B(b,d)<<3)|0)+4>>2]=v[(e+(i<<3)|0)+4>>2]}v[c>>2]=-1;v[(e+(i<<3)|0)+4>>2]=-1}}function q0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);g=xa-48|0;xa=g;f=v[a+8>>2];o=z[f+28>>2];p=z[f+16>>2];k=z[f+32>>2];l=z[f+20>>2];m=z[f+4>>2];n=z[f+8>>2];h=z[c>>2];i=z[c+4>>2];q=z[f+12>>2];j=z[c+8>>2];r=z[f+24>>2];z[g+32>>2]=C(C(h*z[f>>2])+C(i*q))+C(j*r);z[g+40>>2]=C(C(h*n)+C(i*l))+C(j*k);z[g+36>>2]=C(C(h*m)+C(i*p))+C(j*o);m=z[f>>2];n=z[f+4>>2];h=z[d>>2];i=z[d+4>>2];j=z[d+8>>2];z[g+24>>2]=C(C(h*z[f+8>>2])+C(l*i))+C(k*j);z[g+20>>2]=C(C(h*n)+C(p*i))+C(o*j);z[g+16>>2]=C(C(h*m)+C(q*i))+C(r*j);i=z[f>>2];j=z[f+4>>2];h=z[e>>2];m=l;l=z[e+4>>2];n=k;k=z[e+8>>2];z[g+8>>2]=C(C(h*z[f+8>>2])+C(m*l))+C(n*k);z[g+4>>2]=C(C(h*j)+C(p*l))+C(o*k);z[g>>2]=C(C(h*i)+C(q*l))+C(r*k);c=1;a:{if(!t$(a+84|0,a+68|0,g+32|0,g+16|0,g)){break a}d=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];c=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;c=1;break a}c=v[a+16>>2];if(c>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=d;c=1;break a}v[a+16>>2]=c+1;c=1}xa=g+48|0;return c|0}function e3(a,b){var c=0,d=0,e=0,f=C(0),g=0,h=C(0),i=C(0),j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0;c=xa-48|0;xa=c;j=v[b+8>>2];e=B(j,24)+24|0;if(e){d=v[37696]+12|0;e=Ba[v[v[d>>2]+8>>2]](d,e,24422,9340,128)|0}else{e=0}v[a>>2]=e;if(j){p=v[b>>2];d=v[b+4>>2];while(1){h=z[d+16>>2];i=z[d+20>>2];l=z[d+4>>2];m=z[d+8>>2];f=z[d+12>>2];n=z[d>>2];o=C(C(f-n)*C(.004999999888241291));g=B(k,24)+e|0;z[g+12>>2]=f+o;z[g>>2]=n-o;f=i;i=C(C(i-m)*C(.004999999888241291));z[g+20>>2]=f+i;f=h;h=C(C(h-l)*C(.004999999888241291));z[g+16>>2]=f+h;z[g+8>>2]=m-i;z[g+4>>2]=l-h;d=d+p|0;k=k+1|0;if((k|0)!=(j|0)){continue}break}}v[a+4>>2]=j;v[c+44>>2]=0;b=v[b+8>>2];v[c+40>>2]=e;v[c+36>>2]=b;v[c+32>>2]=4;v[c+24>>2]=0;v[c+28>>2]=0;v[c>>2]=0;v[c+4>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;uY(c+32|0,c,c+24|0,a+16|0);b=v[c+24>>2];v[a+8>>2]=b;d=0;b=B(b,28);if(b){e=v[37696]+12|0;d=Ba[v[v[e>>2]+8>>2]](e,b,24422,9340,154)|0}v[a+12>>2]=d;HB(c,d);pY(c);nY(c);v[c+40>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;a=v[c+44>>2];if(a){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+48|0;return 1}function DT(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=C(0);g=xa-144|0;xa=g;v[g+128>>2]=2;h=z[b+44>>2];z[g+132>>2]=z[b+40>>2];z[g+136>>2]=h*C(.5);z[g+112>>2]=A[d>>3]-A[c+12>>3];z[g+116>>2]=A[d+8>>3]-A[c+20>>3];z[g+120>>2]=A[d+16>>3]-A[c+28>>3];z[g+96>>2]=z[a+244>>2];z[g+100>>2]=z[a+248>>2];z[g+104>>2]=z[a+252>>2];z[g+108>>2]=z[a+256>>2];d=0;v[g+88>>2]=0;z[g+92>>2]=z[c+48>>2];z[g+72>>2]=z[c+36>>2];z[g+76>>2]=z[c+40>>2];z[g+80>>2]=z[c+44>>2];v[g+64>>2]=0;v[g+68>>2]=1065353216;v[g+56>>2]=0;v[g+60>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+40>>2]=0;v[g+44>>2]=0;v[g+24>>2]=0;v[g+28>>2]=0;u[g+20>>1]=0;v[g+16>>2]=-1;v[g+8>>2]=0;v[g+12>>2]=0;v[g+48>>2]=2139095039;h=z[f+36>>2];u[g>>1]=w[a+299|0]?1283:1027;a:{if(!iV(e,h,g+128|0,g+96|0,g+88|0,g+56|0,g+8|0,g)){break a}h=z[g+48>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+36>>2];z[f+28>>2]=z[g+40>>2];h=z[g+44>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+24>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+28>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+32>>2];d=1}xa=g+144|0;return d|0}function FN(a,b,c){a=a|0;b=C(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=v[a+84>>2];if(!g){break a}if(!c){while(1){c=vr(v[v[a+4>>2]+1156>>2],56);d=v[a+4>>2];e=v[d+1832>>2];h=v[d+1836>>2];i=v[a+80>>2];j=v[a+68>>2];k=v[a+92>>2];l=v[a+104>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+52>>2]=l;v[c+48>>2]=d;z[c+44>>2]=b;d=g-f|0;d=d>>>0<128?d:128;v[c+40>>2]=d;v[c+36>>2]=k+(f<<3);v[c+32>>2]=j+(f<<4);v[c+28>>2]=i+(f<<2);v[c+8>>2]=e;v[c+12>>2]=h;v[c>>2]=134244;v[c+24>>2]=1;e=v[c+16>>2];Ba[v[v[e>>2]+72>>2]](e,c);f=d+f|0;if(g>>>0>f>>>0){continue}break a}}while(1){d=vr(v[v[a+4>>2]+1156>>2],56);e=v[a+4>>2];h=v[e+1836>>2];i=v[e+1832>>2];j=v[a+80>>2];k=v[a+68>>2];l=v[a+92>>2];m=v[a+104>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+52>>2]=m;v[d+48>>2]=e;z[d+44>>2]=b;e=g-f|0;e=e>>>0<128?e:128;v[d+40>>2]=e;v[d+36>>2]=l+(f<<3);v[d+32>>2]=k+(f<<4);v[d+28>>2]=j+(f<<2);v[d+8>>2]=i;v[d+12>>2]=h;v[d>>2]=134244;v[d+20>>2]=c;v[d+24>>2]=1;Ba[v[v[c>>2]+16>>2]](c);v[d+16>>2]=v[v[d+20>>2]+16>>2];Ba[v[v[d>>2]+20>>2]](d);f=f+e|0;if(g>>>0>f>>>0){continue}break}}}function z0(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0);d=z[a>>2];e=z[a+48>>2];a:{if(d>e){f=C(34028234663852886e22);g=C(34028234663852886e22);h=C(34028234663852886e22);i=C(-34028234663852886e22);j=C(-34028234663852886e22);d=C(-34028234663852886e22);break a}f=C(F(d,C(34028234663852886e22)));j=C(G(z[a+80>>2],C(-34028234663852886e22)));i=C(G(z[a+64>>2],C(-34028234663852886e22)));h=C(F(z[a+32>>2],C(34028234663852886e22)));g=C(F(z[a+16>>2],C(34028234663852886e22)));d=C(G(e,C(-34028234663852886e22)))}e=z[a+4>>2];k=z[a+52>>2];if(!(e>k)){c=z[a+84>>2];j=c>2];i=c>2];h=c>h?h:c;c=z[a+20>>2];g=c>g?g:c;f=fk?d:k}e=z[a+8>>2];k=z[a+56>>2];if(!(e>k)){c=z[a+88>>2];j=c>2];i=c>2];h=c>h?h:c;c=z[a+24>>2];g=c>g?g:c;f=fk?d:k}e=z[a+12>>2];k=z[a+60>>2];if(!(e>k)){c=z[a+92>>2];j=c>2];i=c>2];h=c>h?h:c;c=z[a+28>>2];g=c>g?g:c;f=fk?d:k}z[b+20>>2]=j;z[b+16>>2]=i;z[b+12>>2]=d;z[b+8>>2]=h;z[b+4>>2]=g;z[b>>2]=f}function j1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=C(0),u=C(0),w=C(0),x=0,y=0,A=0;s=v[a+4>>2];x=v[a+8>>2];y=b>>>5|0;a=x+B(y,12)|0;q=s+B(v[a>>2],12)|0;e=z[q+8>>2];r=B(v[a+4>>2],12)+s|0;f=z[r+8>>2];h=e>f?e:f;a=B(v[a+8>>2],12)+s|0;g=z[a+8>>2];h=g>2];l=z[r+4>>2];i=k>l?k:l;m=z[a+4>>2];i=i>m?i:m;n=z[q>>2];o=z[r>>2];j=n>o?n:o;p=z[a>>2];j=j>p?j:p;e=e>>1&15;if(A){while(1){b=B(a+y|0,12)+x|0;q=B(v[b>>2],12)+s|0;k=z[q+8>>2];h=h>k?h:k;r=B(v[b+4>>2],12)+s|0;l=z[r+8>>2];h=h>l?h:l;b=B(v[b+8>>2],12)+s|0;m=z[b+8>>2];h=h>m?h:m;n=z[q+4>>2];i=i>n?i:n;o=z[r+4>>2];i=i>o?i:o;p=z[b+4>>2];i=i>p?i:p;t=z[q>>2];j=j>t?j:t;u=z[r>>2];j=j>u?j:u;w=z[b>>2];j=j>w?j:w;e=e>2]=0;z[c+8>>2]=e;z[c+4>>2]=f;z[c>>2]=g;v[d+12>>2]=0;z[d+8>>2]=h;z[d+4>>2]=i;z[d>>2]=j}function i1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=C(0),u=C(0),w=C(0),y=0,A=0,D=0;s=v[a+4>>2];y=v[a+8>>2];A=b>>>5|0;a=y+B(A,6)|0;q=s+B(x[a>>1],12)|0;e=z[q+8>>2];r=B(x[a+2>>1],12)+s|0;f=z[r+8>>2];h=e>f?e:f;a=B(x[a+4>>1],12)+s|0;g=z[a+8>>2];h=g>2];l=z[r+4>>2];i=k>l?k:l;m=z[a+4>>2];i=i>m?i:m;n=z[q>>2];o=z[r>>2];j=n>o?n:o;p=z[a>>2];j=j>p?j:p;e=e>>1&15;if(D){while(1){b=B(a+A|0,6)+y|0;q=B(x[b>>1],12)+s|0;k=z[q+8>>2];h=h>k?h:k;r=B(x[b+2>>1],12)+s|0;l=z[r+8>>2];h=h>l?h:l;b=B(x[b+4>>1],12)+s|0;m=z[b+8>>2];h=h>m?h:m;n=z[q+4>>2];i=i>n?i:n;o=z[r+4>>2];i=i>o?i:o;p=z[b+4>>2];i=i>p?i:p;t=z[q>>2];j=j>t?j:t;u=z[r>>2];j=j>u?j:u;w=z[b>>2];j=j>w?j:w;e=e>2]=0;z[c+8>>2]=e;z[c+4>>2]=f;z[c>>2]=g;v[d+12>>2]=0;z[d+8>>2]=h;z[d+4>>2]=i;z[d>>2]=j}function r_(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);j=xa-16|0;xa=j;k=z[b+16>>2];l=z[b+28>>2];m=z[b+24>>2];n=z[b>>2];o=z[b+12>>2];p=z[b+4>>2];g=z[c+48>>2];d=C(g*z[c>>2]);h=z[b+8>>2];e=C(g*z[c+4>>2]);i=z[b+20>>2];f=C(g*z[c+8>>2]);g=z[b+32>>2];z[a+8>>2]=C(C(d*h)+C(e*i))+C(f*g);z[a+4>>2]=C(C(d*p)+C(e*k))+C(f*l);z[a>>2]=C(C(d*n)+C(e*o))+C(f*m);d=z[c+52>>2];e=C(d*z[c+12>>2]);f=C(d*z[c+16>>2]);d=C(d*z[c+20>>2]);z[a+20>>2]=C(C(h*e)+C(i*f))+C(g*d);z[a+16>>2]=C(C(p*e)+C(k*f))+C(l*d);z[a+12>>2]=C(C(n*e)+C(o*f))+C(m*d);d=z[c+56>>2];e=C(d*z[c+24>>2]);f=C(d*z[c+28>>2]);d=C(d*z[c+32>>2]);z[a+32>>2]=C(C(h*e)+C(i*f))+C(g*d);z[a+28>>2]=C(C(p*e)+C(k*f))+C(l*d);z[a+24>>2]=C(C(n*e)+C(o*f))+C(m*d);d=z[b+40>>2];e=z[b+36>>2];f=h;h=z[c+36>>2];q=i;i=z[c+40>>2];r=g;g=z[c+44>>2];z[a+44>>2]=C(C(C(f*h)+C(q*i))+C(r*g))+z[b+44>>2];z[a+40>>2]=d+C(C(C(p*h)+C(k*i))+C(l*g));z[a+36>>2]=e+C(C(C(n*h)+C(o*i))+C(m*g));q9(j,a);z[a+48>>2]=z[j>>2];z[a+52>>2]=z[j+4>>2];z[a+56>>2]=z[j+8>>2];xa=j+16|0}function mD(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=129748;b=v[a+168>>2];if(b){b=JB(b);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+168>>2]=0}c=v[a+208>>2];if(c){b=0;while(1){d=v[v[a+200>>2]+(b<<3)>>2];if(d){c=JB(d);d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);c=v[a+208>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}b=v[a+196>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+200>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+192>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+184>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+180>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+172>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+128>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=a+4|0;_C(b);c=v[b+116>>2];c:{if((c|0)<0|!(c&2147483647)){break c}c=v[b+108>>2];if(!c){break c}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}c=v[b- -64>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}b=v[b+16>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function wU(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=v[a+24>>2];a:{if(e){d=v[a+4>>2];c=x[v[a+16>>2]+(d<<1)>>1];v[v[a>>2]+(d<<2)>>2]=b;v[a+4>>2]=d+1;u[v[a+12>>2]+(c<<1)>>1]=d;v[a+24>>2]=e-1;break a}c=v[a+4>>2];if((c|0)==v[a+8>>2]){c=c<<1;d=c>>>0<65535?c:65535;v[a+8>>2]=d;e=0;b:{if(!d){break b}c=v[37696]+12|0;g=Ba[v[v[c>>2]+8>>2]](c,d<<2,24422,6126,94)|0;d=v[a+8>>2]<<1;e=0;if(!d){break b}c=v[37696]+12|0;f=Ba[v[v[c>>2]+8>>2]](c,d,24422,6126,95)|0;c=v[a+8>>2]<<1;e=0;if(!c){break b}d=v[37696]+12|0;h=Ba[v[v[d>>2]+8>>2]](d,c,24422,6126,96)|0;d=v[a+8>>2]<<1;e=0;if(!d){break b}c=v[37696]+12|0;e=Ba[v[v[c>>2]+8>>2]](c,d,24422,6126,97)|0}c=e;g=H9(g,v[a>>2],v[a+4>>2]<<2);d=H9(f,v[a+12>>2],v[a+4>>2]<<1);e=H9(h,v[a+16>>2],v[a+4>>2]<<1);c=H9(c,v[a+20>>2],v[a+4>>2]<<1);f=v[a+4>>2];I9(d+(f<<1)|0,255,v[a+8>>2]-f<<1);f=v[a+4>>2];I9(e+(f<<1)|0,255,v[a+8>>2]-f<<1);f=v[a+4>>2];I9(c+(f<<1)|0,0,v[a+8>>2]-f<<1);vU(a,g,d,e,c);c=v[a+4>>2]}v[v[a>>2]+(c<<2)>>2]=b;b=c<<1;u[b+v[a+12>>2]>>1]=c;u[b+v[a+16>>2]>>1]=c;v[a+4>>2]=c+1}return x[v[a+20>>2]+(c<<1)>>1]<<16|c}function xx(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=xa-160|0;xa=g;a:{if(!v[a+660>>2]){break a}if(b){while(1){b=v[a+656>>2]+(f<<5)|0;b:{if(w[v[b+24>>2]]!=3){sB(b);break b}c=x[b+22>>1];if(c){d=v[b+24>>2];m=d+(c<<4)|0;b=v[b+28>>2];while(1){c=w[d+2|0];n=(c<<2)+12&2032;k=w[d|0]==3;e=(B(c,k?112:48)+d|0)+80|0;o=w[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;z[b>>2]=z[e+h>>2];z[b+4>>2]=z[e+(h|4)>>2];z[b+8>>2]=z[e+(h|8)>>2];z[b+12>>2]=z[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){z[b>>2]=z[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(!v[d+56>>2]){break e}d=v[d+60>>2];if(!d){break e}t[d|0]=1}d=c+B(e,o)|0;if(m>>>0>d>>>0){continue}break}}}f=f+1|0;if(f>>>0>2]){continue}break a}}while(1){b=v[a+656>>2]+(f<<5)|0;f:{if(w[v[b+24>>2]]==3){gA(b,g+120|0,g,g);break f}hA(b)}f=f+1|0;if(f>>>0>2]){continue}break}}xa=g+160|0}function ij(a,b,c){var d=0,e=0;a:{b:{c:{d:{e=v[a+4>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break d}}d=v[a>>2];break b}d=v[a>>2];if(w[d+4785|0]){break a}}e=v[d+2428>>2];d=v[a+16>>2];if(d){hH(d)}d=v[a+192>>2];e:{f:{if(d){if(w[d+31|0]){break f}break e}d=v[e+288>>2];if(!d){FG(e);d=v[e+288>>2]}v[e+288>>2]=v[d>>2];v[e+280>>2]=v[e+280>>2]+1}v[d>>2]=0;v[d+4>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[a+192>>2]=d}t[d+12|0]=w[d+12|0]|2;if(b){z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2]}if(c){z[d+16>>2]=z[c>>2];z[d+20>>2]=z[c+4>>2];z[d+24>>2]=z[c+8>>2]}return}d=v[a+8>>2];if(!d){d=Pu(v[a>>2],e>>>24&15);v[a+8>>2]=d}if(b){z[d+220>>2]=z[b>>2];z[d+224>>2]=z[b+4>>2];z[d+228>>2]=z[b+8>>2];b=65536}else{b=0}if(c){z[d+232>>2]=z[c>>2]+z[d+232>>2];z[d+236>>2]=z[c+4>>2]+z[d+236>>2];z[d+240>>2]=z[c+8>>2]+z[d+240>>2];b=b|131072}Xu(v[a>>2],a);v[a+268>>2]=v[a+268>>2]|b}function Uy(a,b,c,d,e,f,g,h,i,j,k,l){var m=C(0),n=C(0),o=C(0);if(l){v[a>>2]=0;v[b>>2]=0;v[c>>2]=0;v[d>>2]=0;return}l=x[e+76>>1];a:{if(!(l&4)){m=C(0);if((l&3)!=3){break a}}m=C(C(C(C(z[j+8>>2]*z[e+8>>2])+C(C(z[j>>2]*z[e>>2])+C(z[j+4>>2]*z[e+4>>2])))+C(C(z[j+24>>2]*z[e+24>>2])+C(C(z[j+16>>2]*z[e+16>>2])+C(z[j+20>>2]*z[e+20>>2]))))-C(C(C(z[k+8>>2]*z[e+40>>2])+C(C(z[k>>2]*z[e+32>>2])+C(z[k+4>>2]*z[e+36>>2])))+C(C(z[k+24>>2]*z[e+56>>2])+C(C(z[k+16>>2]*z[e+48>>2])+C(z[k+20>>2]*z[e+52>>2])))))}n=f<=g?C(0):C(C(1)/f);o=z[e+12>>2];if(l&1){i=z[e+64>>2];m=z[e+68>>2];g=C(C(C(h*h)*i)+C(m*h));h=C(C(C(m*z[e+28>>2])-C(o*i))*h);b:{if(l&2){f=h;h=C(C(1)/C(g+C(1)));f=C(f*C(n*h));z[b>>2]=f;z[a>>2]=f;f=C(n*C(-h));break b}i=h;h=f!=C(0)?C(C(1)/C(C(g*f)+C(1))):C(0);f=C(i*h);z[b>>2]=f;z[a>>2]=f;f=C(-h)}z[c>>2]=g*f;z[d>>2]=C(1)-h;return}z[c>>2]=-n;v[d>>2]=1065353216;c:{if(!(l&4)){break c}f=C(-m);if(!(f>z[e+68>>2])){break c}f=C(C(n*z[e+64>>2])*f);z[a>>2]=f;z[b>>2]=f;return}z[a>>2]=n*C(z[e+28>>2]-C(o*i));z[b>>2]=n*C(z[e+28>>2]-C(z[e+72>>2]*i))}function Pi(a,b){a=a|0;b=b|0;var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);l=v[b+316>>2]&1024?v[b+56>>2]+144|0:b+112|0;n=z[l+16>>2];o=z[l+24>>2];p=z[l+20>>2];s=z[b+272>>2];t=z[b+276>>2];f=z[b+280>>2];h=z[b+264>>2];d=z[l+8>>2];i=z[b+260>>2];e=z[l+4>>2];g=z[b+268>>2];c=z[l+12>>2];j=z[l>>2];k=z[b+256>>2];z[a+12>>2]=C(h*d)+C(C(i*e)+C(C(g*c)+C(j*k)));z[a+8>>2]=C(j*i)+C(C(C(c*h)-C(g*d))-C(k*e));z[a+4>>2]=C(d*k)+C(C(C(c*i)-C(g*e))-C(h*j));z[a>>2]=C(e*h)+C(C(C(c*k)-C(g*j))-C(i*d));u=f;o=C(o*C(-2));n=C(n*C(-2));p=C(p*C(-2));q=C(C(d*o)+C(C(j*n)+C(e*p)));r=C(C(c*c)+C(-.5));f=C(C(d*q)+C(C(o*r)-C(c*C(C(j*p)-C(n*e)))));f=C(f+f);m=C(C(j*q)+C(C(n*r)-C(c*C(C(e*o)-C(p*d)))));m=C(m+m);c=C(C(e*q)+C(C(p*r)-C(c*C(C(d*n)-C(o*j)))));c=C(c+c);d=C(C(h*f)+C(C(k*m)+C(i*c)));e=C(C(g*g)+C(-.5));z[a+24>>2]=u+C(C(h*d)+C(C(f*e)+C(g*C(C(k*c)-C(m*i)))));z[a+20>>2]=t+C(C(i*d)+C(C(c*e)+C(g*C(C(h*m)-C(f*k)))));z[a+16>>2]=s+C(C(k*d)+C(C(m*e)+C(g*C(C(i*f)-C(c*h)))))}function MV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0);s=C(z[e+4>>2]+z[c+4>>2]);u=z[d+24>>2];i=z[f>>2];g=C(i+i);m=z[f+8>>2];n=z[f+4>>2];j=z[f+12>>2];k=C(j+j);p=z[e+8>>2];o=C(C(C(g*m)-C(n*k))*p);q=z[f+24>>2];t=C(o+q);h=C(u-t);r=z[f+20>>2];v=C(p*C(C(m*k)+C(g*n)));n=C(r+v);m=C(C(q-o)-t);q=z[d+16>>2];o=z[f+16>>2];g=C(C(C(i*g)+C(C(j*k)+C(-1)))*p);p=C(o+g);i=C(q-p);j=C(C(o-g)-p);k=C(C(r-v)-n);r=z[d+20>>2];g=C(r-n);o=C(C(h*m)+C(C(i*j)+C(k*g)));a:{if(o<=C(0)){break a}l=C(C(m*m)+C(C(j*j)+C(k*k)));if(l<=o){h=C(h-m);g=C(g-k);i=C(i-j);l=C(1);break a}l=C(o/l);h=C(h-C(m*l));g=C(g-C(k*l));i=C(i-C(j*l))}c=C(C(h*h)+C(C(i*i)+C(g*g)))>C(s*s);if(!c){h=C(u-C(t+C(m*l)));i=C(q-C(p+C(j*l)));g=C(r-C(n+C(k*l)));n=C(C(h*h)+C(C(i*i)+C(g*g)));l=C(K(n));m=C(1);j=C(0);k=C(0);if(!(n>2]=k;z[a+4>>2]=j;z[a>>2]=m;h=C(s-l);z[b>>2]=h>C(0)?h:C(0)}return!c|0}function DN(a,b,c,d){a=a|0;b=C(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=v[a+44>>2];if(!h){break a}if(!d){while(1){d=vr(v[v[a+4>>2]+1156>>2],56);e=v[a+4>>2];f=v[e+1832>>2];i=v[e+1836>>2];j=v[a+40>>2];k=v[a+52>>2];l=v[a+104>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+52>>2]=l;v[d+48>>2]=e;z[d+44>>2]=b;e=h-g|0;e=e>>>0<128?e:128;v[d+40>>2]=e;v[d+36>>2]=k+(g<<3);v[d+32>>2]=(g<<4)+c;v[d+28>>2]=j+(g<<2);v[d+8>>2]=f;v[d+12>>2]=i;v[d>>2]=134244;v[d+24>>2]=1;f=v[d+16>>2];Ba[v[v[f>>2]+72>>2]](f,d);g=e+g|0;if(h>>>0>g>>>0){continue}break a}}while(1){e=vr(v[v[a+4>>2]+1156>>2],56);f=v[a+4>>2];i=v[f+1836>>2];j=v[f+1832>>2];k=v[a+40>>2];l=v[a+52>>2];m=v[a+104>>2];v[e+24>>2]=0;v[e+16>>2]=0;v[e+52>>2]=m;v[e+48>>2]=f;z[e+44>>2]=b;f=h-g|0;f=f>>>0<128?f:128;v[e+40>>2]=f;v[e+36>>2]=l+(g<<3);v[e+32>>2]=(g<<4)+c;v[e+28>>2]=k+(g<<2);v[e+8>>2]=j;v[e+12>>2]=i;v[e>>2]=134244;v[e+20>>2]=d;v[e+24>>2]=1;Ba[v[v[d>>2]+16>>2]](d);v[e+16>>2]=v[v[e+20>>2]+16>>2];Ba[v[v[e>>2]+20>>2]](e);g=g+f|0;if(h>>>0>g>>>0){continue}break}}}function AZ(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=C(0),k=0;g=xa-480|0;xa=g;z_(y_(g+184|0,a+4|0),g+408|0);h=z[a+8>>2];i=z[a+4>>2];j=z[a+12>>2];z[g+180>>2]=j;z[g+176>>2]=h;z[g+172>>2]=i;z[g+168>>2]=-j;z[g+164>>2]=-h;z[g+160>>2]=-i;a=0;a:{if(z[b+4>>2]!=C(1)){break a}a=0;if(z[b+8>>2]!=C(1)){break a}a=z[b+12>>2]==C(1)}v[g+144>>2]=0;v[g+148>>2]=1065353216;v[g+136>>2]=0;v[g+140>>2]=0;v[g+128>>2]=0;v[g+132>>2]=1065353216;v[g+120>>2]=0;v[g+124>>2]=0;v[g+112>>2]=1065353216;v[g+116>>2]=1065353216;v[g+96>>2]=1065353216;v[g+100>>2]=0;t[g+152|0]=0;v[g+104>>2]=0;v[g+108>>2]=0;v[g+88>>2]=0;v[g+92>>2]=0;v[g+80>>2]=1065353216;v[g+84>>2]=0;if(!a){IX(g+80|0,b+4|0,b+16|0)}k=g- -64|0;v[k>>2]=0;v[k+4>>2]=1065353216;v[g+56>>2]=0;v[g+60>>2]=0;v[g+48>>2]=0;v[g+52>>2]=1065353216;v[g+40>>2]=0;v[g+44>>2]=0;v[g+32>>2]=1065353216;v[g+36>>2]=1065353216;v[g+16>>2]=1065353216;v[g+20>>2]=0;t[g+72|0]=0;v[g+24>>2]=0;v[g+28>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;v[g>>2]=1065353216;v[g+4>>2]=0;a=yZ(g+408|0,g+160|0,b,c,d,e,f,g,g+80|0,1,a);xa=g+480|0;return a}function M6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if(!v[a+28>>2]){Ba[v[v[b>>2]+8>>2]](b);Ba[v[v[b>>2]+28>>2]](b);return}a:{if(!v[a+28>>2]){break a}while(1){f=0;g=v[a+4>>2]+B(d,28)|0;b:{if(v[g+24>>2]!=151512){break b}e=v[g+12>>2];c=v[e>>2];if(c){v[e>>2]=v[c>>2]}c:{if(c){v[c+4>>2]=b;break c}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?24921:63804;e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,27,e,18281,127)|0;if(!e){break b}c=e+11&-8;v[c-4>>2]=c-e;if(!c){break b}t[c+8|0]=0;v[c+4>>2]=b;v[c>>2]=0}f=v[g+20>>2];v[c>>2]=v[f>>2];v[f>>2]=c;f=1}if(!f){d=d+1|0;if(d>>>0>2]){continue}break a}break}a=v[a+20>>2];if(!w[a+76|0]){t[a+76|0]=1;v[a+72>>2]=v[a+72>>2]+1}return}c=v[a+12>>2];d=v[c>>2];if(d){v[c>>2]=v[d>>2]}d:{e:{if(d){v[d+4>>2]=b;break e}d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?24921:63804;c=Ba[v[v[d+12>>2]+8>>2]](d+12|0,27,c,18281,127)|0;if(!c){break d}d=c+11&-8;v[d-4>>2]=d-c;if(!d){break d}t[d+8|0]=0;v[d+4>>2]=b;v[d>>2]=0}b=v[a+16>>2];v[d>>2]=v[b>>2];v[b>>2]=d;a=v[a+20>>2];if(!w[a+76|0]){t[a+76|0]=1;v[a+72>>2]=v[a+72>>2]+1}}}function B5(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);l=z[b+8>>2];i=z[c+8>>2];m=z[b>>2];j=z[c>>2];p=z[b+4>>2];f=z[c+4>>2];h=C(C(l*i)+C(C(m*j)+C(p*f)));a:{if(!(C(D(h))>=C(9.999999974752427e-7))){g=z[b+12>>2];k=C(1);h=C(0);break a}g=z[b+12>>2];i=C(i*h);j=C(j*h);f=C(f*h);h=C(C(1)/C(K(C(C(g*g)+C(C(i*i)+C(C(j*j)+C(f*f)))))));k=C(g*h);n=C(i*h);o=C(f*h);h=C(j*h)}i=C(C(h*p)+C(C(C(l*k)-C(g*n))-C(m*o)));j=C(C(n*m)+C(C(C(p*k)-C(g*o))-C(l*h)));f=C(C(o*l)+C(C(C(m*k)-C(g*h))-C(p*n)));g=C(C(l*n)+C(C(p*o)+C(C(g*k)+C(m*h))));if(!(g>=C(0))){i=C(-i);j=C(-j);f=C(-f);g=C(-g)}p=C(-n);r=C(-o);s=C(-h);b=d>g;t[e|0]=b;b:{if(!b){d=g;break b}g=C(0);l=C(0);m=C(0);q=C(C(i*i)+C(C(f*f)+C(j*j)));if(q>C(0)){g=C(C(1)/C(K(q)));m=C(i*g);l=C(j*g);g=C(f*g)}f=C(K(C(C(1)-C(d*d))));i=C(f*m);j=C(f*l);f=C(f*g)}z[a+12>>2]=C(C(C(d*k)-C(h*f))-C(j*o))-C(i*n);z[a+8>>2]=C(s*j)+C(C(f*o)+C(C(d*n)+C(k*i)));z[a+4>>2]=C(p*f)+C(C(i*h)+C(C(d*o)+C(k*j)));z[a>>2]=C(r*i)+C(C(j*n)+C(C(d*h)+C(k*f)))}function lv(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=C(0),j=C(0),k=C(0),l=0;f=xa-576|0;xa=f;v[f+560>>2]=0;v[f+564>>2]=1065353216;v[f+552>>2]=0;v[f+556>>2]=0;v[f+544>>2]=0;v[f+548>>2]=1065353216;v[f+536>>2]=0;v[f+540>>2]=0;v[f+528>>2]=1065353216;v[f+532>>2]=1065353216;v[f+512>>2]=1065353216;v[f+516>>2]=0;t[f+568|0]=0;v[f+520>>2]=0;v[f+524>>2]=0;v[f+504>>2]=0;v[f+508>>2]=0;v[f+496>>2]=1065353216;v[f+500>>2]=0;i=z[a+8>>2];j=z[a+4>>2];k=z[a+12>>2];z[f+492>>2]=k;z[f+488>>2]=i;z[f+484>>2]=j;z[f+480>>2]=-k;z[f+476>>2]=-i;z[f+472>>2]=-j;h=y_(f+176|0,a+4|0);a=f+400|0;z_(h,a);v[f+160>>2]=0;v[f+164>>2]=1065353216;v[f+152>>2]=0;v[f+156>>2]=0;v[f+144>>2]=0;v[f+148>>2]=1065353216;v[f+136>>2]=0;v[f+140>>2]=0;v[f+128>>2]=1065353216;v[f+132>>2]=1065353216;v[f+112>>2]=1065353216;v[f+116>>2]=0;t[f+168|0]=0;v[f+120>>2]=0;v[f+124>>2]=0;v[f+104>>2]=0;v[f+108>>2]=0;v[f+96>>2]=1065353216;v[f+100>>2]=0;h=a;a=f+72|0;l=c;c=f+96|0;a=tZ(h,f,f+472|0,a,l,d,e,g,f+496|0,c,1,WZ(b,c,a,f));xa=f+576|0;return a|0}function xT(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=C(0);g=xa-144|0;xa=g;v[g+128>>2]=3;z[g+132>>2]=z[b+40>>2];z[g+136>>2]=z[b+44>>2];z[g+140>>2]=z[b+48>>2];z[g+112>>2]=A[d>>3]-A[c+12>>3];z[g+116>>2]=A[d+8>>3]-A[c+20>>3];z[g+120>>2]=A[d+16>>3]-A[c+28>>3];z[g+96>>2]=z[a+244>>2];z[g+100>>2]=z[a+248>>2];z[g+104>>2]=z[a+252>>2];z[g+108>>2]=z[a+256>>2];v[g+88>>2]=0;z[g+92>>2]=z[c+48>>2];z[g+72>>2]=z[c+36>>2];z[g+76>>2]=z[c+40>>2];z[g+80>>2]=z[c+44>>2];v[g+64>>2]=0;v[g+68>>2]=1065353216;v[g+56>>2]=0;v[g+60>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+40>>2]=0;v[g+44>>2]=0;v[g+24>>2]=0;v[g+28>>2]=0;u[g+20>>1]=0;v[g+16>>2]=-1;v[g+8>>2]=0;v[g+12>>2]=0;v[g+48>>2]=2139095039;h=z[f+36>>2];u[g>>1]=w[a+299|0]?1283:1027;a=iV(e,h,g+128|0,g+96|0,g+88|0,g+56|0,g+8|0,g);if(a){z[f+36>>2]=z[g+48>>2];z[f+24>>2]=z[g+36>>2];z[f+28>>2]=z[g+40>>2];h=z[g+44>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+24>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+28>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+32>>2]}xa=g+144|0;return a|0}function dZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);g=v[b+8>>2];t=d;d=v[b+4>>2];o=z[d+72>>2];e=z[c+8>>2];f=z[c>>2];h=z[c+4>>2];i=C(C(z[b+56>>2]*e)+C(C(z[b+24>>2]*f)+C(h*z[b+40>>2])));p=z[d- -64>>2];j=C(C(z[b+48>>2]*e)+C(C(z[b+16>>2]*f)+C(h*z[b+32>>2])));e=C(C(z[b+52>>2]*e)+C(C(z[b+20>>2]*f)+C(h*z[b+36>>2])));h=z[d+68>>2];f=C(C(o*i)+C(C(p*j)+C(e*h)));q=z[d+88>>2];r=z[d+80>>2];s=z[d+84>>2];k=C(C(q*i)+C(C(r*j)+C(e*s)));b=f>k;l=f;f=z[d+56>>2];m=C(f*i);i=z[d+48>>2];n=C(i*j);j=z[d+52>>2];e=C(m+C(n+C(e*j)));c=!(lk);v[t>>2]=c?b?1:2:0;k=z[g+52>>2];u=z[g+36>>2];w=z[g+20>>2];e=z[g+56>>2];x=z[g+40>>2];y=z[g+24>>2];A=z[g+48>>2];B=z[g+32>>2];D=z[g>>2];E=z[g+16>>2];m=z[g+4>>2];n=z[g+8>>2];v[a+12>>2]=0;l=e;e=c?b?o:q:f;f=c?b?p:r:i;h=c?b?h:s:j;z[a+8>>2]=l+C(C(x*e)+C(C(n*f)+C(y*h)));z[a+4>>2]=k+C(C(u*e)+C(C(m*f)+C(h*w)));z[a>>2]=A+C(C(B*e)+C(C(D*f)+C(h*E)))}function _2(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=xa-144|0;xa=f;a:{if(y[b+4>>2]<2|y[b>>2]<2|(v[b+8>>2]!=1|y[b+12>>2]<4)){break a}if(x[b+24>>1]>1|z[b+20>>2]>2]+12>>2]](a)|0;a=oX(72,70,72,70,1,b,c);b:{if(!a){break b}jX(v[d+40>>2],b,c);jX(v[d+44>>2],b,c);kX(z[d+48>>2],b,c);kX(z[d+52>>2],b,c);kX(z[d+56>>2],b,c);kX(C(0),b,c);kX(z[d- -64>>2],b,c);iX(x[d+68>>1],b,c);jX(v[d+72>>2],b,c);kX(C(z[d+16>>2]-z[d+28>>2]),b,c);kX(C(z[d+20>>2]-z[d+32>>2]),b,c);kX(C(z[d+24>>2]-z[d+36>>2]),b,c);kX(C(z[d+16>>2]+z[d+28>>2]),b,c);kX(C(z[d+20>>2]+z[d+32>>2]),b,c);kX(C(z[d+24>>2]+z[d+36>>2]),b,c);jX(v[d+76>>2],b,c);jX(v[d+80>>2],b,c);kX(z[d+84>>2],b,c);kX(z[d+88>>2],b,c);if(!v[d+80>>2]){break b}while(1){g=v[d+60>>2]+(e<<2)|0;iX(x[g>>1],b,c);Ba[v[v[c>>2]>>2]](c,g+2|0,1)|0;Ba[v[v[c>>2]>>2]](c,g+3|0,1)|0;e=e+1|0;if(e>>>0>2]){continue}break}}e=a}if(t[d+6|0]&1){a=v[d+60>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[d+60>>2]=0}R_(d)}xa=f+144|0;return e|0}function Ts(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=v[a+8>>2];i=f&2147483647?f<<1:1;a:{if(!i){break a}c=B(i,48);if(!c){break a}g=v[37696];f=g+12|0;g=(k=f,l=c,m=Ba[v[v[g>>2]+20>>2]](g)|0?43123:63804,n=16608,o=553,j=v[v[f>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}h=v[a+4>>2];e=B(h,48)+g|0;f=v[a>>2];if((h|0)>0){d=f;c=g;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];v[c+44>>2]=v[d+44>>2];d=d+48|0;c=c+48|0;if(e>>>0>c>>>0){continue}break}}z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];z[e+8>>2]=z[b+8>>2];v[e+12>>2]=v[b+12>>2];z[e+16>>2]=z[b+16>>2];z[e+20>>2]=z[b+20>>2];z[e+24>>2]=z[b+24>>2];v[e+28>>2]=v[b+28>>2];z[e+32>>2]=z[b+32>>2];z[e+36>>2]=z[b+36>>2];z[e+40>>2]=z[b+40>>2];v[e+44>>2]=v[b+44>>2];if(!(!f|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,f);h=v[a+4>>2]}v[a+8>>2]=i;v[a>>2]=g;v[a+4>>2]=h+1}function $N(a){a=a|0;var b=0,c=0;v[a+8>>2]=134112;v[a>>2]=133964;b=v[a+112>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+100>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+92>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+88>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+80>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+76>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+68>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+60>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+52>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+48>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+40>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+36>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+28>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+20>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+12>>2];if(!b){break g}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function cH(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;v[a>>2]=130544;i=v[a+152>>2];c=v[a+44>>2];d=v[a+40>>2];SG(c,v[d+2412>>2],t[c+44|0]&1);u[a+148>>1]=x[a+148>>1]|8;c=xa-16|0;xa=c;b=v[a+164>>2];if(b){HH(v[d+1136>>2],b,0)}b=v[a+44>>2];v[c+8>>2]=b;Og(d+2200|0,c+8|0);v[c+4>>2]=b;Og(d+2240|0,c+4|0);if(!(!(w[b+44|0]&16)|y[a+152>>2]>4294967293)){v[c+12>>2]=a;Og(d+4632|0,c+12|0)}g=v[a+48>>2];f=g+32>>>5|0;a:{if(f>>>0<=(v[d+2436>>2]&2147483647)>>>0){b=v[d+2432>>2];break a}b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,f<<2,24422,17999,438)|0;e=v[d+2432>>2];b:{if(!e){break b}H9(b,e,v[d+2436>>2]<<2);if(v[d+2436>>2]<0){break b}e=v[d+2432>>2];if(!e){break b}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,e)}e=v[d+2436>>2];I9((e<<2)+b|0,0,f-e<<2);v[d+2436>>2]=f;v[d+2432>>2]=b}b=(g>>>3&536870908)+b|0;v[b>>2]=v[b>>2]|1<>2];c:{if(c){vG(c,a);if(v[a+160>>2]){break c}}c=v[a+144>>2];if(c&126){break c}XF(v[d+1e3>>2],c)}if(i>>>0<=4294967293){UO(d,a)}v[a+152>>2]=-1;v[a+156>>2]=-1;v[v[a+44>>2]>>2]=0;return UJ(a)|0}function tM(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=C(0),o=C(0),p=C(0);c=(v[a>>2]<<5)+b|0;a=x[c+22>>1];if(a){d=v[c+24>>2];l=d+(a<<4)|0;b=v[c+60>>2];a=v[c+92>>2];h=v[c+124>>2];i=v[c+28>>2];while(1){c=d;k=c+240|0;g=w[c+1|0];f=g<<4;j=w[c+2|0];m=(((k+f|0)+B(g,160)|0)+(f&0-(t[c+3|0]&1))|0)+(j<<4)|0;if(g){d=0;while(1){f=a;e=(d<<4)+k|0;n=z[e+12>>2];o=z[e+8>>2];p=z[e+4>>2];a=0;a:{if(!i){break a}a=i;if(w[c+8|0]<=d>>>0){break a}z[i>>2]=z[e>>2];a=i+4|0}i=a;a=0;e=0;b:{if(!b){break b}e=b;if(w[c+9|0]<=d>>>0){break b}z[b>>2]=p;e=b+4|0}b=e;c:{if(!f){break c}if(w[c+10|0]<=d>>>0){a=f;break c}z[f>>2]=o;a=f+4|0}d:{if(!h){h=0;break d}if(w[c+11|0]<=d>>>0){break d}z[h>>2]=n;h=h+4|0}d=d+1|0;if((g|0)!=(d|0)){continue}break}}d=B(j,208)+m|0;e:{if(!j){break e}f=v[c+220>>2];e=v[c+216>>2];g=v[c+212>>2];if(!(!w[c+8|0]|!v[c+208>>2])){t[v[c+224>>2]]=1}if(!(!w[c+9|0]|!g)){t[v[c+228>>2]]=1}if(!(!w[c+10|0]|!e)){t[v[c+232>>2]]=1}if(!w[c+11|0]|!f){break e}t[v[c+236>>2]]=1}if(d>>>0>>0){continue}break}}}function gU(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=xa-16|0;xa=f;v[f+8>>2]=b;b=Wn(a+144|0,f+8|0,f+15|0);a:{if(!w[f+15|0]){v[b>>2]=v[f+8>>2];v[b+4>>2]=-1;break a}e=b;b=v[b+4>>2]-1|0;v[e+4>>2]=b;if(b){break a}b:{if(!v[a+180>>2]){break b}i=v[a+156>>2];d=v[f+8>>2];b=(d<<15^-1)+d|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=i+((v[a+164>>2]-1&(b>>>16^b))<<2)|0;b=v[c>>2];if((b|0)==-1){break b}h=v[a+152>>2];g=v[a+148>>2];e=g+(b<<3)|0;if((d|0)!=v[e>>2]){while(1){c=(b<<2)+h|0;b=v[c>>2];if((b|0)==-1){break b}e=g+(b<<3)|0;if((d|0)!=v[e>>2]){continue}break}}d=(b<<2)+h|0;v[c>>2]=v[d>>2];c=v[a+180>>2]-1|0;v[a+180>>2]=c;v[a+176>>2]=v[a+176>>2]+1;if((b|0)!=(c|0)){j=e;e=g+(c<<3)|0;c=v[e>>2];v[j>>2]=c;v[(g+(b<<3)|0)+4>>2]=v[e+4>>2];v[d>>2]=v[(v[a+180>>2]<<2)+h>>2];c=c+(c<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=((v[a+164>>2]-1&(c>>>16^c))<<2)+i|0;d=v[c>>2];g=v[a+180>>2];if((d|0)!=(g|0)){while(1){c=(d<<2)+h|0;d=v[c>>2];if((g|0)!=(d|0)){continue}break}}v[c>>2]=b}v[a+172>>2]=v[a+172>>2]-1}}xa=f+16|0}function RX(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);j=xa-96|0;xa=j;l=z[b+4>>2];o=C(l+l);k=z[b+8>>2];p=C(o*k);m=z[b>>2];n=C(m+m);r=z[b+12>>2];q=C(n*r);z[j+60>>2]=p-q;z[j+52>>2]=p+q;m=C(C(1)-C(m*n));p=C(l*o);z[j- -64>>2]=m-p;s=m;m=C(k+k);q=C(k*m);z[j+48>>2]=s-q;k=C(n*k);o=C(o*r);z[j+56>>2]=k+o;l=C(n*l);n=C(m*r);z[j+44>>2]=l-n;z[j+40>>2]=k-o;z[j+36>>2]=l+n;z[j+32>>2]=C(C(1)-p)-q;z[j+68>>2]=z[b+16>>2];z[j+72>>2]=z[b+20>>2];z[j+76>>2]=z[b+24>>2];z[j+80>>2]=z[a+4>>2];z[j+84>>2]=z[a+8>>2];z[j+88>>2]=z[a+12>>2];k=z[e>>2];l=z[e+4>>2];n=z[e+8>>2];u[j+8>>1]=x[h>>1]&64511;z[j+24>>2]=-n;z[j+20>>2]=-l;z[j+16>>2]=-k;a=KX(c,d,a,b,j+32|0,j+16|0,f,g,j+8|0,i);if(a){if(t[g+12|0]&1){i=z[e+8>>2];k=z[e+4>>2];f=z[g+40>>2];z[g+16>>2]=C(f*z[e>>2])+z[g+16>>2];z[g+20>>2]=C(f*k)+z[g+20>>2];z[g+24>>2]=C(f*i)+z[g+24>>2]}v[g+8>>2]=-1;z[g+28>>2]=-z[g+28>>2];z[g+36>>2]=-z[g+36>>2];z[g+32>>2]=-z[g+32>>2]}xa=j+96|0;return a|0}function zG(a,b,c){var d=C(0),e=0,f=C(0);t[a+10|0]=0;t[a+9|0]=b;t[a+8|0]=1;v[a>>2]=0;v[a+4>>2]=16777215;v[a+176>>2]=0;u[a+174>>1]=0;v[a+44>>2]=0;e=v[37415];f=z[e>>2];d=z[e+4>>2];z[a+16>>2]=z[c>>2];z[a+20>>2]=z[c+4>>2];z[a+24>>2]=z[c+8>>2];z[a+28>>2]=z[c+12>>2];z[a+32>>2]=z[c+16>>2];z[a+36>>2]=z[c+20>>2];z[a+40>>2]=z[c+24>>2];t[a+174|0]=0;u[a+172>>1]=0;z[a+156>>2]=z[23002];z[a+152>>2]=d*C(d*C(2499999936844688e-20));z[a+148>>2]=d*C(d*C(4999999873689376e-20));v[a+140>>2]=1065353216;v[a+144>>2]=1956496814;v[a+132>>2]=1065353216;v[a+136>>2]=1065353216;v[a+124>>2]=1028443341;v[a+128>>2]=1065353216;b=(b|0)==1;z[a+120>>2]=b?C(0):C(.05000000074505806);z[a+116>>2]=b?C(10000000331813535e16):C(f*C(f*C(1e4)));z[a+112>>2]=b?C(1e4):C(2500);v[a+104>>2]=0;v[a+108>>2]=2139095039;v[a+96>>2]=0;v[a+100>>2]=0;v[a+88>>2]=0;v[a+92>>2]=-190986834;v[a+80>>2]=0;v[a+84>>2]=0;v[a+72>>2]=0;v[a+76>>2]=1041865114;b=a- -64|0;v[b>>2]=0;v[b+4>>2]=0;v[a+56>>2]=0;v[a+60>>2]=1065353216;v[a+48>>2]=0;v[a+52>>2]=0;v[a+44>>2]=17039616}function HR(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=v[a+44>>2];if(!(!(c&476)|!(c&4194304))){d=v[v[v[a+4>>2]+40>>2]+2168>>2];f=xa-16|0;xa=f;e=a;v[f+12>>2]=a;v[a+44>>2]=v[a+44>>2]|2097152;h=d+16|0;c=v[d+20>>2];g=v[d+28>>2];a:{if((c|0)==(g|0)){v[e+52>>2]=c;if((v[d+24>>2]&2147483647)>>>0<=c>>>0){BJ(h,f+12|0);c=v[d+28>>2];break a}v[v[d+16>>2]+(c<<2)>>2]=e;v[d+20>>2]=c+1;break a}j=v[d+16>>2];i=v[j+(g<<2)>>2];v[f+8>>2]=i;v[i+52>>2]=c;b:{if((v[d+24>>2]&2147483647)>>>0<=c>>>0){BJ(h,f+8|0);c=v[d+28>>2];break b}v[(c<<2)+j>>2]=i;v[d+20>>2]=c+1;e=v[f+12>>2];c=g}v[e+52>>2]=c;v[v[h>>2]+(c<<2)>>2]=e}v[d+28>>2]=c+1;xa=f+16|0;v[a+44>>2]=v[a+44>>2]&-4194305}c=v[v[a+32>>2]+4>>2];e=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;g=v[v[v[v[a+4>>2]+40>>2]+1e3>>2]+656>>2];c=v[v[a+28>>2]+4>>2];c:{if(!(w[(g+B(v[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+144>>2]>>>7|0,24)|0)+4|0]&2)){c=0;if(!e|!(w[(g+B(v[e+144>>2]>>>7|0,24)|0)+4|0]&2)){break c}}d:{if(v[a+56>>2]){break d}IR(a,b);if(v[a+56>>2]){break d}return 0}t[a+25|0]=w[a+25|0]|32;c=1}return c}function Mi(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;_n(v[37393],a,v[a+8>>2],1);Ni(a);a:{b:{d=v[a+320>>2];d=Ba[v[v[d>>2]+100>>2]](d)|0;c=v[d+88>>2];if(!c){break b}e=v[d+84>>2];while(1){if(v[e+(b<<2)>>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;v[d+88>>2]=c;e=b<<2;b=v[d+84>>2];v[e+b>>2]=v[b+(c<<2)>>2]}c=v[a+328>>2];c:{if(!c){break c}d:{e=v[c+356>>2];if(!e){b=0;break d}f=v[c+352>>2];b=0;while(1){if(v[f+(b<<2)>>2]==(a|0)){break d}b=b+1|0;if((e|0)!=(b|0)){continue}break}break c}if((b|0)==(e|0)){break c}e=e-1|0;v[c+356>>2]=e;f=b<<2;b=v[c+352>>2];v[f+b>>2]=v[b+(e<<2)>>2]}b=v[a+324>>2];if(b){Ba[v[v[b>>2]>>2]](b)}b=uh(a);if(b){Eu(b+16|0,a+48|0,1,0);e:{f:{switch((v[d+4>>2]>>>30|0)-2|0){case 0:if(w[v[d>>2]+4785|0]){break e}break;case 1:break e;default:break f}}c=v[d+12>>2];if(!c){break e}e=v[d+88>>2];if(e>>>0<2){break e}d=v[d+84>>2];b=1;while(1){f=v[d+(b<<2)>>2];g=f,h=sG(c,v[f- -64>>2]),v[g+364>>2]=h;b=b+1|0;if((e|0)!=(b|0)){continue}break}}}su(a+48|0)}function o1(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);y=z[b+52>>2];A=z[c+52>>2];B=z[b+56>>2];n=z[c+56>>2];o=z[c+20>>2];p=z[c+24>>2];h=z[b+20>>2];i=z[b+24>>2];q=z[c+36>>2];d=z[b+36>>2];r=z[c+40>>2];e=z[b+40>>2];D=z[b+48>>2];s=z[c+48>>2];t=z[c+16>>2];j=z[b+16>>2];u=z[c+32>>2];f=z[b+32>>2];w=z[c+8>>2];k=z[b+8>>2];x=z[c>>2];l=z[b>>2];g=z[c+4>>2];m=z[b+4>>2];v[a+60>>2]=0;v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;z[a>>2]=C(k*w)+C(C(l*x)+C(m*g));z[a+40>>2]=C(e*r)+C(C(f*u)+C(d*q));z[a+36>>2]=C(i*r)+C(C(j*u)+C(h*q));z[a+32>>2]=C(k*r)+C(C(l*u)+C(m*q));z[a+24>>2]=C(e*p)+C(C(f*t)+C(d*o));z[a+20>>2]=C(i*p)+C(C(j*t)+C(h*o));z[a+16>>2]=C(k*p)+C(C(l*t)+C(m*o));z[a+8>>2]=C(e*w)+C(C(f*x)+C(d*g));z[a+4>>2]=C(i*w)+C(C(j*x)+C(h*g));g=e;e=C(n-B);n=f;f=C(s-D);s=d;d=C(A-y);z[a+56>>2]=C(g*e)+C(C(n*f)+C(s*d));z[a+52>>2]=C(i*e)+C(C(j*f)+C(d*h));z[a+48>>2]=C(k*e)+C(C(l*f)+C(d*m))}function tO(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);e=v[a+36>>2];if(z[e+124>>2]!=C(0)){a:{if(d){z[e+16>>2]=z[a+16>>2];z[e+20>>2]=z[a+20>>2];z[e+24>>2]=z[a+24>>2];z[e>>2]=z[a>>2];z[e+4>>2]=z[a+4>>2];z[e+8>>2]=z[a+8>>2];z[e+12>>2]=z[a+12>>2];b=C(C(1)-b);break a}j=C(1);f=z[a+20>>2];g=z[a+24>>2];b=C(C(1)-b);z[e+16>>2]=C(b*C(z[e+64>>2]*c))+z[a+16>>2];z[e+24>>2]=g+C(b*C(z[e+72>>2]*c));z[e+20>>2]=f+C(b*C(z[e+68>>2]*c));f=C(b*C(z[e+88>>2]*c));g=C(b*C(z[e+80>>2]*c));c=C(b*C(z[e+84>>2]*c));i=C(K(C(C(f*f)+C(C(g*g)+C(c*c)))));if(i>C(9999999682655225e-36)){h=f;f=C(C(1)/i);m=C(h*f);k=C(c*f);j=C(g*f)}c=z[a+12>>2];g=C(i*C(.5));f=G9(g);h=Q9(g);j=C(h*j);g=z[a>>2];i=z[a+4>>2];k=C(h*k);l=z[a+8>>2];h=C(h*m);z[e+12>>2]=C(C(C(c*f)-C(j*g))-C(i*k))-C(l*h);z[e+8>>2]=C(C(g*k)+C(C(c*h)+C(f*l)))-C(j*i);z[e+4>>2]=C(C(l*j)+C(C(c*k)+C(f*i)))-C(h*g);z[e>>2]=C(C(i*h)+C(C(c*j)+C(f*g)))-C(k*l)}a=v[a+32>>2];b=C(b*z[a+36>>2]);z[a+36>>2]=b>C(.009999999776482582)?b:C(.009999999776482582)}}function yE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0;f=xa+-64|0;xa=f;d=1;a:{if(!(v[c+40>>2]&x[a+20>>1])){break a}o=v[c>>2];if(!v[o+588>>2]){break a}k=z[c+20>>2];d=v[a+4>>2];j=C(z[d+8>>2]-z[c+36>>2]);g=C(j+j);j=z[c+12>>2];e=C(z[d>>2]-z[c+28>>2]);h=C(e+e);e=C(z[d+4>>2]-z[c+32>>2]);i=C(e+e);e=z[c+16>>2];m=C(C(k*g)+C(C(j*h)+C(i*e)));l=z[c+24>>2];n=C(C(l*l)+C(-.5));z[f+56>>2]=C(k*m)+C(C(g*n)-C(l*C(C(j*i)-C(h*e))));z[f+52>>2]=C(e*m)+C(C(i*n)-C(l*C(C(k*h)-C(g*j))));z[f+48>>2]=C(j*m)+C(C(h*n)-C(l*C(C(e*g)-C(i*k))));d=v[a+8>>2];g=z[d+8>>2];g=C(g+g);h=z[d>>2];h=C(h+h);i=z[d+4>>2];i=C(i+i);m=C(C(k*g)+C(C(j*h)+C(e*i)));z[f+40>>2]=C(k*m)+C(C(g*n)-C(l*C(C(j*i)-C(h*e))));z[f+36>>2]=C(e*m)+C(C(i*n)-C(l*C(C(k*h)-C(g*j))));z[f+32>>2]=C(j*m)+C(C(h*n)-C(l*C(C(e*g)-C(i*k))));d=v[a+12>>2];z[f+16>>2]=z[d>>2];z[f+20>>2]=z[d+4>>2];z[f+24>>2]=z[d+8>>2];c=v[c+4>>2];d=hD(v[c+12>>2],v[c+8>>2],o,f+48|0,f+32|0,b,v[a+16>>2])}xa=f- -64|0;return d|0}function qZ(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),t=C(0);g=xa-48|0;xa=g;f=v[a+112>>2];m=z[f+28>>2];n=z[f+16>>2];h=z[f+32>>2];j=z[f+20>>2];r=w[f+72|0];o=z[f+4>>2];p=z[f+8>>2];i=z[c>>2];k=z[c+4>>2];s=z[f+12>>2];l=z[c+8>>2];t=z[f+24>>2];z[g+8>>2]=C(C(i*z[f>>2])+C(k*s))+C(l*t);z[g+16>>2]=C(C(i*p)+C(k*j))+C(l*h);z[g+12>>2]=C(C(i*o)+C(k*n))+C(l*m);k=z[f>>2];l=z[f+4>>2];q=g+8|0;c=q+(r?24:12)|0;i=z[d>>2];o=j;j=z[d+4>>2];p=h;h=z[d+8>>2];z[c+8>>2]=C(C(i*z[f+8>>2])+C(o*j))+C(p*h);z[c+4>>2]=C(C(i*l)+C(n*j))+C(m*h);z[c>>2]=C(C(i*k)+C(s*j))+C(t*h);j=z[f+28>>2];i=z[f+16>>2];k=z[f+24>>2];l=z[f>>2];o=z[f+12>>2];p=z[f+4>>2];c=(r?12:24)+q|0;m=z[e>>2];n=z[e+4>>2];h=z[e+8>>2];z[c+8>>2]=C(C(m*z[f+8>>2])+C(n*z[f+20>>2]))+C(h*z[f+32>>2]);z[c+4>>2]=C(C(m*p)+C(n*i))+C(h*j);z[c>>2]=C(C(m*l)+C(n*o))+C(h*k);c=a+8|0;b=v[b+8>>2];a=v[v[a+108>>2]+56>>2];if(a){a=w[a+b|0]}else{a=56}oZ(c,b,q,a);xa=g+48|0;return 1}function O2(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0);j=z[c+8>>2];t=z[d+8>>2];g=C(g+C(-.10000000149011612));u=C(C(g*z[f+8>>2])+z[b+8>>2]);h=C(t-u);k=z[c>>2];v=z[d>>2];w=C(C(g*z[f>>2])+z[b>>2]);i=C(v-w);x=z[d+4>>2];y=C(C(g*z[f+4>>2])+z[b+4>>2]);g=C(x-y);l=z[c+4>>2];q=C(C(j*h)+C(C(k*i)+C(g*l)));m=z[e+8>>2];n=z[e>>2];o=z[e+4>>2];i=C(-C(C(m*h)+C(C(n*i)+C(g*o))));g=C(0);r=C(C(j*j)+C(C(k*k)+C(l*l)));s=C(C(m*m)+C(C(n*n)+C(o*o)));p=C(C(j*m)+C(C(k*n)+C(l*o)));h=C(C(r*s)-C(p*p));a:{if(h==C(0)){break a}h=C(C(C(q*s)+C(p*i))/h);if(hC(1))){break a}g=C(1)}i=C(C(C(g*p)+i)/s);b:{if(iC(1)){break b}g=h;break b}if(!(i>C(1))){break b}g=C(0);i=C(1);h=C(C(q+p)/r);if(hC(1))){break b}g=C(1)}z[a+8>>2]=C(u+C(j*g))-C(t+C(m*i));z[a+4>>2]=C(y+C(l*g))-C(x+C(o*i));z[a>>2]=C(w+C(k*g))-C(v+C(n*i))}function L3(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);n=e>>>0>f>>>0?e:f;l=e>>>0>>0?e:f;m=B(d,3);if(m>>>0>=2){d=m;while(1){a:{b:{j=d+k>>>1|0;o=B(j,12)+h|0;p=v[o>>2];if(p>>>0>>0){break b}if((l|0)!=(p|0)){d=j;break a}if(y[o+4>>2]<=n>>>0){break b}d=j;break a}k=j}if(d-k>>>0>1){continue}break}}while(1){c:{d=k;if(!d){break c}k=d-1|0;j=B(k,12)+h|0;if(v[j>>2]!=(l|0)){break c}if(v[j+4>>2]==(n|0)){continue}}break}j=-1;d:{if(d>>>0>=m>>>0){break d}k=e+f|0;w=z[g+12>>2];q=z[g+8>>2];r=z[g+4>>2];s=z[g>>2];t=C(-34028234663852886e22);while(1){e=B(d,12)+h|0;if(v[e>>2]!=(l|0)|v[e+4>>2]!=(n|0)){break d}e:{e=v[e+8>>2];f:{if((e|0)==(i|0)){break f}g=B(e,12);f=g+c|0;f=B(((v[f>>2]-k|0)+v[f+4>>2]|0)+v[f+8>>2]|0,12)+a|0;if(C(C(C(z[f+8>>2]*q)+C(C(z[f>>2]*s)+C(z[f+4>>2]*r)))+w)>=C(0)){break e}f=b+g|0;u=C(C(q*z[f+8>>2])+C(C(s*z[f>>2])+C(r*z[f+4>>2])));if(!(u>t)){break f}t=u;j=e}d=d+1|0;if((m|0)!=(d|0)){continue}break d}break}j=e|-2147483648}return j}function ry(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;g=xa-1008|0;xa=g;u[v[b+16>>2]+22>>1]=0;i=v[a+4>>2];if(i){h=g+48|0;I9(h,0,960);v[g+988>>2]=2139095039;v[g+972>>2]=-8388609;v[g+908>>2]=2139095039;v[g+892>>2]=-8388609;v[g+828>>2]=2139095039;v[g+812>>2]=-8388609;v[g+748>>2]=2139095039;v[g+732>>2]=-8388609;v[g+668>>2]=2139095039;v[g+652>>2]=-8388609;v[g+588>>2]=2139095039;v[g+572>>2]=-8388609;v[g+508>>2]=2139095039;v[g+492>>2]=-8388609;v[g+428>>2]=2139095039;v[g+412>>2]=-8388609;v[g+348>>2]=2139095039;v[g+332>>2]=-8388609;v[g+268>>2]=2139095039;v[g+252>>2]=-8388609;v[g+188>>2]=2139095039;v[g+172>>2]=-8388609;v[g+108>>2]=2139095039;v[g+92>>2]=-8388609;v[b+4>>2]=1065353216;v[b+8>>2]=1065353216;v[b+12>>2]=1065353216;v[b>>2]=1065353216;v[g+40>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;j=b,k=Ba[i|0](h,g+32|0,12,b,v[a+8>>2],b+36|0,b- -64|0,w[b+139|0],g+16|0,g)|0,v[j+116>>2]=k;v[b+112>>2]=h;z[b+140>>2]=z[g+32>>2];z[b+144>>2]=z[g+36>>2];z[b+148>>2]=z[g+40>>2];h=qy(b,c,d,e,f)}xa=g+1008|0;return h}function bx(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0;e=xa+-64|0;xa=e;t[a+489|0]=1;m=v[a+452>>2];n=v[a+32>>2];f=v[a+264>>2];g=z[c>>2];h=z[c+4>>2];i=z[c+8>>2];j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];z[e+56>>2]=-l;z[e+52>>2]=-k;v[e+60>>2]=0;z[e+48>>2]=-j;v[e+44>>2]=0;z[e+40>>2]=-i;z[e+36>>2]=-h;z[e+32>>2]=-g;c=(b<<5)+f|0;z[c>>2]=z[c>>2]-g;z[c+4>>2]=z[c+4>>2]-h;z[c+8>>2]=z[c+8>>2]-i;z[c+16>>2]=z[c+16>>2]-j;z[c+20>>2]=z[c+20>>2]-k;z[c+24>>2]=z[c+24>>2]-l;if(b){while(1){cx(e,v[a+396>>2]+B(b,96)|0,(B(b,160)+m|0)+120|0,v[a+384>>2]+B(b,76)|0,e+32|0);v[e+44>>2]=0;v[e+60>>2]=0;g=z[e>>2];z[e+32>>2]=g;h=z[e+4>>2];z[e+36>>2]=h;i=z[e+8>>2];z[e+40>>2]=i;j=z[e+16>>2];z[e+48>>2]=j;k=z[e+20>>2];z[e+52>>2]=k;l=z[e+24>>2];z[e+56>>2]=l;b=v[((b<<5)+n|0)+24>>2];c=(b<<5)+f|0;z[c>>2]=g+z[c>>2];z[c+4>>2]=h+z[c+4>>2];z[c+8>>2]=i+z[c+8>>2];z[c+16>>2]=j+z[c+16>>2];z[c+20>>2]=k+z[c+20>>2];z[c+24>>2]=l+z[c+24>>2];if(b){continue}break}}xa=e- -64|0}function EI(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{b:{if(!v[a+36>>2]){break b}e=v[b>>2];g=v[b+4>>2];b=e&65535|g<<16;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=v[a+12>>2]+((v[a+20>>2]-1&(b>>>16^b))<<2)|0;b=v[d>>2];if((b|0)==-1){break b}h=v[a+8>>2];f=v[a+4>>2];c=f+B(b,12)|0;if((e|0)==v[c>>2]&v[c+4>>2]==(g|0)){break a}while(1){d=(b<<2)+h|0;b=v[d>>2];if((b|0)==-1){break b}c=f+B(b,12)|0;if((e|0)!=v[c>>2]|v[c+4>>2]!=(g|0)){continue}break}break a}return}e=b<<2;v[d>>2]=v[e+h>>2];d=v[a+36>>2]-1|0;v[a+36>>2]=d;v[a+32>>2]=v[a+32>>2]+1;if((b|0)!=(d|0)){d=f+B(d,12)|0;g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;c=B(b,12);v[(c+f|0)+8>>2]=v[d+8>>2];f=v[a+8>>2];v[f+e>>2]=v[f+(v[a+36>>2]<<2)>>2];c=c+v[a+4>>2]|0;c=v[c+4>>2]<<16|x[c>>1];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[a+12>>2]+((v[a+20>>2]-1&(c>>>16^c))<<2)|0;c=v[d>>2];e=v[a+36>>2];if((c|0)!=(e|0)){while(1){d=f+(c<<2)|0;c=v[d>>2];if((e|0)!=(c|0)){continue}break}}v[d>>2]=b}v[a+28>>2]=v[a+28>>2]-1}function QB(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=0,m=C(0),n=C(0);i=v[a+24>>2];l=i>>>1|0;a:{if(i&1){l=l&15;if(!l){j=C(0x382c5fc0000000);f=C(-0x382c5fc0000000);h=C(-0x382c5fc0000000);m=C(-0x382c5fc0000000);g=C(0x382c5fc0000000);k=C(0x382c5fc0000000);break a}i=(i>>>3&536870908)+c|0;c=B(v[i>>2],24)+b|0;f=z[c+12>>2];k=z[c+8>>2];g=z[c+4>>2];j=z[c>>2];m=z[c+20>>2];h=z[c+16>>2];if((l|0)==1){break a}d=i+4|0;i=i+(l<<2)|0;n=z[c+24>>2];while(1){c=B(v[d>>2],24)+b|0;e=z[c+12>>2];f=f>e?f:e;e=z[c+8>>2];k=e>k?k:e;e=z[c+4>>2];g=e>g?g:e;e=z[c>>2];j=e>j?j:e;e=z[c+24>>2];n=e>2];m=e>2];h=e>2];f=z[b+28>>2];j=f>j?j:f;f=z[b+20>>2];h=z[b+48>>2];m=f>h?f:h;f=z[b+16>>2];h=z[b+44>>2];h=f>h?f:h;f=z[b+12>>2];g=z[b+40>>2];f=f>g?f:g;g=z[b+8>>2];k=z[b+36>>2];k=g>2];n=z[b+32>>2];g=g>2]=f;z[a+8>>2]=k;z[a+4>>2]=g;z[a>>2]=j;z[a+20>>2]=m;z[a+16>>2]=h}function BF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;h=xa-16|0;xa=h;v[h+12>>2]=b;e=v[a+60>>2];c=(b>>>0)/(e>>>0)|0;f=v[v[a+40>>2]+(c<<2)>>2]+(b-B(c,e)<<4)|0;u[f+4>>1]=x[f+4>>1]|64;g=v[f>>2];d=B(g,12)+a|0;e=d+148|0;c=v[d+152>>2];a:{if(c>>>0>=(v[d+156>>2]&2147483647)>>>0){on(e,h+12|0);g=v[f>>2];break a}v[v[e>>2]+(c<<2)>>2]=b;v[d+152>>2]=v[d+152>>2]+1}b=(g<<2)+a|0;v[b+172>>2]=v[b+172>>2]+1;if(!g){c=v[h+12>>2];b=v[a+228>>2]+(c>>>3&536870908)|0;v[b>>2]=v[b>>2]|1<>2]<<1;g=e|1;b=v[a+448>>2];d=v[b+20>>2];f=(g>>>0)/(d>>>0)|0;b=v[b>>2];c=(e>>>0)/(d>>>0)|0;e=v[v[b+(c<<2)>>2]+(e-B(c,d)<<2)>>2];c=e>>>7|0;b:{if((c|0)==33554431){break b}b=v[v[b+(f<<2)>>2]+(g-B(d,f)<<2)>>2];g=b>>>7|0;if((g|0)==33554431){break b}f=v[a+16>>2];c=f+B(c,24)|0;d=v[c+16>>2];c:{if(d){break c}d=0;if((w[c+4|0]&38)!=4){break c}CF(a,e);f=v[a+16>>2];d=v[c+16>>2]}v[c+16>>2]=d+1;c=B(g,24)+f|0;d=v[c+16>>2];d:{if(d){break d}d=0;if((w[(B(g,24)+f|0)+4|0]&38)!=4){break d}CF(a,b);d=v[c+16>>2]}v[c+16>>2]=d+1}xa=h+16|0}function $Y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0);d=v[b+8>>2];q=z[d+52>>2];r=z[d+36>>2];s=z[d+20>>2];i=z[d+56>>2];t=z[d+40>>2];u=z[d+24>>2];h=v[b+4>>2];j=z[h+56>>2];k=z[h+52>>2];l=z[h+72>>2];w=z[b+56>>2];x=z[b+24>>2];y=z[b+40>>2];A=z[b+48>>2];B=z[b+32>>2];m=z[h+68>>2];D=z[b+52>>2];E=z[b+20>>2];F=z[b+36>>2];G=z[d+48>>2];H=z[d+32>>2];I=z[d>>2];J=z[d+16>>2];K=z[d+4>>2];L=z[d+8>>2];n=z[h+48>>2];o=z[h+64>>2];M=z[b+16>>2];e=z[c+8>>2];f=z[c>>2];g=z[c+4>>2];v[a+12>>2]=0;N=i;p=j;j=C(C(w*e)+C(C(x*f)+C(g*y)));i=C(C(A*e)+C(C(M*f)+C(g*B)));e=C(C(D*e)+C(C(E*f)+C(g*F)));b=C(C(p*j)+C(C(n*i)+C(k*e)))>C(C(l*j)+C(C(o*i)+C(e*m)));e=b?p:l;f=b?n:o;g=b?k:m;z[a+8>>2]=N+C(C(t*e)+C(C(L*f)+C(u*g)));z[a+4>>2]=q+C(C(r*e)+C(C(K*f)+C(g*s)));z[a>>2]=G+C(C(H*e)+C(C(I*f)+C(g*J)))}function xI(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=v[v[a+84>>2]+560>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}if(!b){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,56,24422,8887,2450)|0;v[b>>2]=0;v[b+4>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0}e=b+4|0;v[a+28>>2]=e;c=v[b+8>>2];f=b+28|0;v[a+52>>2]=f;v[a+32>>2]=c;c=v[b+32>>2];v[a+40>>2]=b+16;v[a+56>>2]=c;c=v[b+20>>2];v[a- -64>>2]=b+40;v[a+44>>2]=c;v[a+68>>2]=v[b+44>>2];c=v[a+80>>2];if(c){while(1){g=v[v[v[a+76>>2]+(d<<2)>>2]+16>>2];if(g){c=v[a+84>>2];aI(g,v[c+400>>2],v[v[c+276>>2]+4>>2],v[v[c+192>>2]+4>>2],v[c+180>>2],c+208|0,c+196|0,e,f);c=v[a+80>>2]}d=d+1|0;if(d>>>0>>0){continue}break}}v[a+36>>2]=v[v[a+28>>2]+4>>2]-v[a+32>>2];v[a+60>>2]=v[v[a+52>>2]+4>>2]-v[a+56>>2];v[a+48>>2]=v[v[a+40>>2]+4>>2]-v[a+44>>2];v[a+72>>2]=v[v[a+64>>2]+4>>2]-v[a+68>>2];a=v[v[a+84>>2]+560>>2];v[b>>2]=v[a>>2];v[a>>2]=b}function lO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=0,m=0,n=0,o=0,p=0,q=0;if((Taa(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=C(z[a+24>>2]*C(b>>>0));a:{if(k=C(0)){j=~~k>>>0;break a}j=0}n=v[a+16>>2];c=b+j<<2;c=(0-c&12)+c|0;f=c+B(j,12)|0;if(f){i=v[37696]+12|0;f=Ba[v[v[i>>2]+8>>2]](i,f,24422,17301,372)|0}else{f=0}d=c;c=b<<2;f=I9(f,255,c);i=d+f|0;m=c+f|0;if(v[a+36>>2]){o=b-1|0;p=v[a+4>>2];c=0;while(1){g=B(c,12);h=g+p|0;l=v[h+4>>2];d=l+(l<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;q=d>>>16^d;d=v[h>>2];e=(d<<15^-1)+d|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=f+(((q^B(e>>>16^e^1016421269,1000007))&o)<<2)|0;v[(c<<2)+m>>2]=v[e>>2];v[e>>2]=c;g=i+g|0;v[g+4>>2]=l;v[g>>2]=d;v[g+8>>2]=v[h+8>>2];c=c+1|0;if(c>>>0>2]){continue}break}}c=v[a>>2];if(c){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,c)}v[a+20>>2]=b;v[a+12>>2]=f;v[a>>2]=f;v[a+8>>2]=m;v[a+16>>2]=j;v[a+4>>2]=i;if(v[a+28>>2]==-1){v[a+28>>2]=n}}function yk(a,b,c,d){a=a|0;b=b|0;c=C(c);d=d|0;var e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0);f=v[a+12>>2];e=xa-96|0;xa=e;h=z[a+8>>2];if(h!=C(0)){k=YU(f,b),l=d?-65536:-8355712,v[k+4>>2]=l;c=V9(c);v[f+32>>2]=0;v[f>>2]=2;i=C(c*h);b=0;while(1){z[e+80>>2]=i;g=C(C(b>>>0)*C(.19634954631328583));k=e,m=C(Q9(g)*h),z[k+88>>2]=m;k=e,m=C(G9(g)*h),z[k+84>>2]=m;ZU(f,e+80|0);b=b+1|0;if((b|0)!=33){continue}break}v[f+32>>2]=0;v[f>>2]=2;c=C(C(-c)*h);b=0;while(1){z[e+64>>2]=c;g=C(C(b>>>0)*C(.19634954631328583));k=e,m=C(Q9(g)*h),z[k+72>>2]=m;k=e,m=C(G9(g)*h),z[k+68>>2]=m;ZU(f,e- -64|0);b=b+1|0;if((b|0)!=33){continue}break}v[f+32>>2]=0;v[f>>2]=1;b=0;while(1){v[e+56>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;a=ZU(f,e+48|0);z[e+32>>2]=c;g=C(C(b>>>0)*C(.19634954631328583));j=C(Q9(g)*h);z[e+40>>2]=j;g=C(G9(g)*h);z[e+36>>2]=g;ZU(a,e+32|0);v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;a=ZU(f,e+16|0);z[e+8>>2]=j;z[e+4>>2]=g;z[e>>2]=i;ZU(a,e);b=b+1|0;if((b|0)!=32){continue}break}}xa=e+96|0}function ZQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=v[a+28>>2];v[d+3704>>2]=1;a=v[d+3460>>2];v[d+3700>>2]=a;if(a){Ba[v[v[a>>2]+16>>2]](a);v[d+3696>>2]=v[v[d+3700>>2]+16>>2]}a=v[d+1e3>>2];v[a+1216>>2]=1;v[a+604>>2]=0;v[a+592>>2]=0;v[a+444>>2]=0;v[a+432>>2]=0;c=d+3680|0;v[a+1212>>2]=c;if(c){Ba[v[v[c>>2]+16>>2]](c);v[a+1208>>2]=v[v[a+1212>>2]+16>>2]}b=a+1132|0;c=a+1192|0;v[b>>2]=c;v[a+1136>>2]=1;Ba[v[v[a+1192>>2]+16>>2]](c);b=v[v[b>>2]+16>>2];v[a+1176>>2]=1;e=a+1128|0;v[e>>2]=b;b=a+1172|0;v[b>>2]=c;Ba[v[v[a+1192>>2]+16>>2]](c);f=a+1168|0;v[f>>2]=v[v[b>>2]+16>>2];b=v[e>>2];Ba[v[v[b>>2]+72>>2]](b,a+1112|0);b=v[f>>2];Ba[v[v[b>>2]+72>>2]](b,a+1152|0);a=v[a+1208>>2];Ba[v[v[a>>2]+72>>2]](a,c);a=v[d+980>>2];d=v[a+332>>2];if(d){c=v[a+328>>2];while(1){d=d-1|0;a=v[c+8>>2];a:{if(!a|w[a+24|0]){break a}b=v[a+56>>2];if(!b){break a}e=v[v[a+4>>2]+40>>2];f=v[v[e+976>>2]+1024>>2];Ba[v[v[f>>2]+36>>2]](f,b);vK(v[e+976>>2],v[a+56>>2]);v[a+56>>2]=0}c=c+12|0;if(d){continue}break}}}function NA(a){var b=C(0),c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=0;c=v[a>>2];f=z[c+24>>2];g=z[c+20>>2];h=z[c+16>>2];i=z[c+8>>2];j=z[c+4>>2];k=z[c>>2];a=v[a+24>>2];l=x[a+2>>1];if(l){A=a+l|0;while(1){n=a+48|0;m=w[a+1|0];l=n+B(m,48)|0;if(m){o=z[a+16>>2];b=z[a+8>>2];D=C(o*b);p=z[a+24>>2];E=C(p*b);q=z[a+20>>2];F=C(q*b);G=(x[a+2>>1]+a|0)+32|0;H=z[a+4>>2];e=0;while(1){a=(e<<2)+G|0;b=z[a>>2];d=C(-b);I=a;a=B(e,48)+n|0;r=z[a+44>>2];s=z[a>>2];t=z[a+4>>2];u=z[a+8>>2];y=C(z[a+36>>2]-C(z[a+32>>2]*C(C(C(C(o*k)+C(h*s))+C(C(q*j)+C(g*t)))+C(C(p*i)+C(f*u)))));d=C(b+(dr?r:d;z[I>>2]=d;b=C(d-b);i=C(i+C(E*b));j=C(j+C(F*b));k=C(k+C(D*b));b=C(H*b);f=C(f+C(u*b));g=C(g+C(t*b));h=C(h+C(s*b));e=e+1|0;if((m|0)!=(e|0)){continue}break}}a=l;if(A>>>0>a>>>0){continue}break}}z[c+24>>2]=f;z[c+20>>2]=g;z[c+16>>2]=h;z[c+8>>2]=i;z[c+4>>2]=j;z[c>>2]=k}function lg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=xa-32|0;xa=d;v[a+56>>2]=b;v[a- -64>>2]=v[c>>2];v[a+60>>2]=v[c+4>>2];v[a+68>>2]=v[c+8>>2];c=v[a+8>>2];b=0;a:{if(!c){break a}c=c+v[(x[c+4>>1]<<2)+86240>>2]|0;b=0;if((jh(c,a)|0)!=-1){break a}kh(c,0,a);b=1}b:{c:{d:{c=v[a+12>>2];if(!c){break d}c=c+v[(x[c+4>>1]<<2)+86240>>2]|0;if((jh(c,a)|0)!=-1){break d}kh(c,0,a);break c}if(!b){break b}}c=v[a+12>>2];g=a+16|0;e=v[a+8>>2];e:{if(e){Ba[v[v[e>>2]+52>>2]](d+16|0,e);b=0;if(w[d+16|0]&8){break e}b=Ba[v[v[e>>2]+28>>2]](e)|0;break e}b=0}f:{if(c){Ba[v[v[c>>2]+52>>2]](d+8|0,c);f=0;if(w[d+8|0]&8){break f}f=Ba[v[v[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((v[a+20>>2]>>>30|0)-3>>>0<4294967294){break g}c=v[a+16>>2];if(!c){break g}c=c-16|0;if((c|0)==(b|0)){break b}if(c){v[d+20>>2]=a;Og(c+5892|0,d+20|0);Iu(c+16|0,g)}}if(!b){break b}v[d+24>>2]=a;a=qh(b+5892|0,d+24|0,d+31|0);if(!w[d+31|0]){v[a>>2]=v[d+24>>2]}Hu(b+16|0,g)}xa=d+32|0}function Pu(a,b){var c=0;a:{switch(b-1|0){case 0:case 1:a=vr(a+4788|0,128);v[a+28>>2]=0;v[a+32>>2]=0;u[a+124>>1]=0;v[a+120>>2]=0;v[a+64>>2]=-1;t[a+52|0]=0;v[a+36>>2]=0;v[a+40>>2]=0;return a;case 4:a=vr(a+4788|0,128);t[a|0]=0;v[a+88>>2]=0;v[a+76>>2]=0;v[a+28>>2]=0;v[a+32>>2]=4;v[a+24>>2]=a+4;t[a+20|0]=1;v[a+80>>2]=4;v[a+84>>2]=0;v[a+72>>2]=a+36;t[a+68|0]=1;return a;case 5:a=vr(a+4788|0,24);u[a+16>>1]=0;return a;case 6:return vr(a+4788|0,28);case 7:return vr(a+4788|0,376);case 8:c=vr(a+4788|0,16);a=c;v[a+8>>2]=-1;v[a+12>>2]=0;v[a>>2]=-1;v[a+4>>2]=0;default:return c;case 2:case 3:break a}}a=vr(a+4788|0,272);t[a|0]=0;v[a+220>>2]=0;v[a+224>>2]=0;t[a+184|0]=0;v[a+88>>2]=0;v[a+76>>2]=0;v[a+28>>2]=0;v[a+32>>2]=4;v[a+24>>2]=a+4;t[a+20|0]=1;v[a+80>>2]=4;v[a+84>>2]=0;v[a+72>>2]=a+36;t[a+68|0]=1;v[a+228>>2]=0;v[a+232>>2]=0;v[a+236>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;v[a+264>>2]=0;t[a+268|0]=0;return a}function Bc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;var g=0,h=0;h=xa-16|0;xa=h;u[h+8>>1]=1027;g=xa-128|0;xa=g;v[g+60>>2]=0;v[g+64>>2]=0;u[g+56>>1]=0;v[g+52>>2]=-1;v[g+68>>2]=0;v[g+72>>2]=0;v[g+76>>2]=0;v[g+80>>2]=0;v[g+92>>2]=0;v[g+84>>2]=2139095039;v[g+88>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+120>>2]=0;v[g+112>>2]=0;v[g+116>>2]=0;t[g+108|0]=0;v[g+40>>2]=114128;v[g+16>>2]=v[f>>2];v[g+20>>2]=v[f+4>>2];v[g+24>>2]=v[f+8>>2];v[g+28>>2]=v[f+12>>2];u[g+32>>1]=x[f+16>>1];u[g+8>>1]=x[h+8>>1];Ba[v[v[a>>2]+348>>2]](a,b,c,d,g+40|0,g+8|0,g+16|0,0,0)|0;v[e+8>>2]=v[g+52>>2];a=v[g+48>>2];v[e>>2]=v[g+44>>2];v[e+4>>2]=a;u[e+12>>1]=x[g+56>>1];z[e+16>>2]=z[g+60>>2];z[e+20>>2]=z[g- -64>>2];z[e+24>>2]=z[g+68>>2];z[e+28>>2]=z[g+72>>2];z[e+32>>2]=z[g+76>>2];z[e+36>>2]=z[g+80>>2];z[e+40>>2]=z[g+84>>2];a=v[g+92>>2];v[e+44>>2]=v[g+88>>2];v[e+48>>2]=a;a=v[g+100>>2];v[e+52>>2]=v[g+96>>2];v[e+56>>2]=a;v[e+60>>2]=v[g+104>>2];xa=g+128|0;xa=h+16|0;return w[g+108|0]}function jA(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)-32|0;dA(c);d=v[c+24>>2];a:{if(!d){break a}f=w[d+1|0];if(!f){break a}c=w[d|0]==4?160:96;d=d+48|0;if(f-1>>>0>=3){h=f&252;e=0;while(1){z[d+12>>2]=z[d+28>>2];d=c+d|0;z[d+12>>2]=z[d+28>>2];d=c+d|0;z[d+12>>2]=z[d+28>>2];d=c+d|0;z[d+12>>2]=z[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){z[d+12>>2]=z[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)-32|0;dA(a);b=v[a+24>>2];b:{if(!b){break b}c=w[b+1|0];if(!c){break b}a=w[b|0]==4?160:96;d=b+48|0;if(c-1>>>0>=3){g=c&252;e=0;while(1){z[d+12>>2]=z[d+28>>2];b=a+d|0;z[b+12>>2]=z[b+28>>2];b=a+b|0;z[b+12>>2]=z[b+28>>2];b=a+b|0;z[b+12>>2]=z[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){z[d+12>>2]=z[d+28>>2];d=a+d|0;e=e+1|0;if((b|0)!=(e|0)){continue}break}}}function cL(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=131688;b=v[a+4>>2];if(b){PK(b+4|0);PK(b+96|0);PK(b+224|0);c=v[b+316>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+316>>2]=0;v[b+320>>2]=0;AC(b+340|0);c=v[b+324>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+324>>2]=0;v[b+328>>2]=0;c=v[b+332>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+332>>2]=0;v[b+336>>2]=0;AC(b+340|0);c=v[b+332>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+332>>2]=0;v[b+336>>2]=0;c=v[b+324>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+324>>2]=0;v[b+328>>2]=0;OK(b+224|0);SU(b+188|0);OK(b+96|0);OK(b+4|0);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+4>>2]=0}b=v[a+28>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+20>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+16>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+8>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function z9(a){var b=C(0),c=0,d=0,e=C(0);d=(p(a),j(2));c=d&2147483647;if(c>>>0>=1065353216){if((c|0)==1065353216){return(d|0)>=0?C(0):C(3.141592502593994)}return C(C(0)/C(a-a))}a:{if(c>>>0<=1056964607){b=C(1.570796251296997);if(c>>>0<847249409){break a}b=C(a*a);return C(C(C(C(7.549789415861596e-8)-C(a*C(C(C(C(b*C(C(b*C(-.008656363002955914))+C(-.04274342209100723)))+C(.16666586697101593))*b)/C(C(b*C(-.7066296339035034))+C(1)))))-a)+C(1.570796251296997))}if((d|0)<0){a=C(C(a+C(1))*C(.5));b=C(K(a));a=C(C(1.570796251296997)-C(b+C(C(b*C(C(C(C(a*C(C(a*C(-.008656363002955914))+C(-.04274342209100723)))+C(.16666586697101593))*a)/C(C(a*C(-.7066296339035034))+C(1))))+C(-7.549789415861596e-8))));return C(a+a)}a=C(C(C(1)-a)*C(.5));e=C(K(a));b=(l(2,(p(e),j(2))&-4096),q());a=C(C(C(e*C(C(C(C(a*C(C(a*C(-.008656363002955914))+C(-.04274342209100723)))+C(.16666586697101593))*a)/C(C(a*C(-.7066296339035034))+C(1))))+C(C(a-C(b*b))/C(e+b)))+b);b=C(a+a)}return b}function wi(a,b,c){a=a|0;b=b|0;c=C(c);var d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=0;e=xa-32|0;xa=e;a:{if(!v[b+100>>2]){j=C(-85070586659632215e21);k=C(85070586659632215e21);f=C(85070586659632215e21);g=C(85070586659632215e21);h=C(-85070586659632215e21);i=C(-85070586659632215e21);break a}g=C(85070586659632215e21);i=C(-85070586659632215e21);h=C(-85070586659632215e21);j=C(-85070586659632215e21);f=C(85070586659632215e21);k=C(85070586659632215e21);while(1){m=v[v[b+96>>2]+(l<<2)>>2];Ba[v[v[m>>2]+40>>2]](e+8|0,m,C(1.0099999904632568));d=z[e+28>>2];i=d>2];h=d>2];j=d>2];g=d>g?g:d;d=z[e+12>>2];f=d>f?f:d;d=z[e+8>>2];k=d>k?k:d;l=l+1|0;if(l>>>0>2]){continue}break}}d=C(C(g+i)*C(.5));g=C(C(C(i-g)*C(.5))*c);z[a+20>>2]=d+g;i=C(C(f+h)*C(.5));f=C(C(C(h-f)*C(.5))*c);z[a+16>>2]=i+f;h=C(C(k+j)*C(.5));c=C(C(C(j-k)*C(.5))*c);z[a+12>>2]=h+c;z[a+8>>2]=d-g;z[a+4>>2]=i-f;z[a>>2]=h-c;xa=e+32|0}function KF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=xa-16|0;xa=e;g=b>>>7|0;h=v[a+16>>2]+B(g,24)|0;c=w[h+4|0];if(!(c&2)){f=v[h>>2];if((f|0)!=-1){while(1){c=f>>>1|0;d=v[a+60>>2];i=(c>>>0)/(d>>>0)|0;d=v[v[a+40>>2]+(i<<2)>>2]+(c-B(d,i)<<4)|0;if(!(w[d+4|0]&4)){BF(a,c);u[d+4>>1]=x[d+4>>1]|4}c=v[a+84>>2];d=(f>>>0)/(c>>>0)|0;f=v[v[v[a+64>>2]+(d<<2)>>2]+(f-B(c,d)<<3)>>2];if((f|0)!=-1){continue}break}c=w[h+4|0]}a:{if(c&4){v[e>>2]=b;if(v[(v[a+16>>2]+B(g,24)|0)+16>>2]){break a}b=v[a+28>>2]+(g<<2)|0;if(v[b>>2]!=33554431){break a}v[b>>2]=v[a+140>>2];b=v[a+140>>2];if(b>>>0>=(v[a+144>>2]&2147483647)>>>0){YF(a+136|0,e);break a}v[v[a+136>>2]+(b<<2)>>2]=v[e>>2];v[a+140>>2]=v[a+140>>2]+1;break a}v[e+8>>2]=b;b=v[a+28>>2]+(g<<2)|0;a=B(w[(v[a+16>>2]+B(g,24)|0)+5|0],12)+a|0;v[b>>2]=v[a+116>>2];b=a+112|0;c=v[a+116>>2];if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){YF(b,e+8|0);break a}v[v[b>>2]+(c<<2)>>2]=v[e+8>>2];v[a+116>>2]=v[a+116>>2]+1}t[h+4|0]=w[h+4|0]|2}xa=e+16|0}function nL(a){var b=0,c=0,d=0;b=v[a+76>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+76>>2]=0}b=v[a+112>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+112>>2]=0}b=v[a+108>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+108>>2]=0}b=v[a+104>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+104>>2]=0}b=v[a+100>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+100>>2]=0}b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+96>>2]=0}b=a+176|0;c=v[b+12808>>2];if(!(!c|(c|0)==(b+12288|0))){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c);v[b+12808>>2]=0}c=v[b+12812>>2];if(!((c|0)==(b|0)|!c)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c);v[b+12812>>2]=0}c=v[b+12816>>2];if(!((c|0)==(b+6144|0)|!c)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c);v[b+12816>>2]=0}v[b+12800>>2]=0;v[b+12804>>2]=0;SU(a+132|0);b=v[a+124>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+124>>2]=0;v[a+128>>2]=0}function r2(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=0,y=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0;k=w[a+64|0];a:{if(!k){break a}i=z[g>>2];l=z[f>>2];while(1){h=v[a+76>>2]+B(y,48)|0;j=C(z[h+44>>2]-l);if(j<=i){n=z[h+4>>2];o=z[h>>2];p=z[h+8>>2];D=z[d>>2];E=z[e+16>>2];F=z[d+4>>2];q=z[e+20>>2];G=z[d+8>>2];m=z[e+24>>2];r=z[e+8>>2];s=z[e>>2];t=z[e+4>>2];i=z[e+12>>2];k=v[c+4>>2];H=v[c>>2];u=z[c+8>>2];h=(x<<6)+b|0;v[h+28>>2]=0;z[h+8>>2]=u;v[h>>2]=H;v[h+4>>2]=k;v[h+52>>2]=-1;z[h+12>>2]=j;A=m;j=C(C(i*i)+C(-.5));m=C(C(r*p)+C(C(s*o)+C(t*n)));u=C(C(C(i*C(C(s*n)-C(o*t)))+C(p*j))+C(r*m));z[h+24>>2]=C(A+C(u+u))-C(l*G);A=q;q=C(C(t*m)+C(C(j*n)+C(i*C(C(r*o)-C(p*s)))));z[h+20>>2]=C(A+C(q+q))-C(l*F);i=C(C(s*m)+C(C(j*o)+C(i*C(C(t*p)-C(n*r)))));z[h+16>>2]=C(E+C(i+i))-C(l*D);k=w[a+64|0];i=z[g>>2];x=x+1|0;l=z[f>>2]}if(x>>>0>63){break a}y=y+1|0;if(k>>>0>y>>>0){continue}break}}v[b+4096>>2]=x}function m1(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=C(0),o=0,p=0;m=xa-256|0;xa=m;c=v[c+28>>2];j=c>>>1&1023;a:{if(!j){v[b+1152>>2]=j;break a}o=c>>>11|0;k=v[a+24>>2];while(1){h=k+(g+o<<5)|0;l=v[h+4>>2];i=v[h>>2];n=z[h+8>>2];c=(g<<4)+b|0;v[c+12>>2]=0;z[c+8>>2]=n;v[c>>2]=i;v[c+4>>2]=l;l=v[h+20>>2];i=v[h+16>>2];n=z[h+24>>2];v[c+524>>2]=0;z[c+520>>2]=n;v[c+512>>2]=i;v[c+516>>2]=l;v[((g<<2)+b|0)+1024>>2]=v[h+28>>2];g=g+1|0;if((j|0)!=(g|0)){continue}break}v[b+1152>>2]=j;I9(m+128|0,255,128);g=0;h=I9(m,0,128);if(!j){break a}l=v[a+24>>2];c=0;while(1){k=(c+o<<5)+l|0;i=v[k+28>>2];if(!(i&1)){p=v[e>>2];v[e>>2]=(p+(i>>>1&1023)|0)-v[k+12>>2];i=((c<<2)+b|0)+1024|0;v[i>>2]=v[i>>2]&2047|d+g<<11;i=g<<2;v[i+h>>2]=k;v[i+(h+128|0)>>2]=p;g=g+1|0}c=c+1|0;if((j|0)!=(c|0)){continue}break}v[f>>2]=v[f>>2]+g;if(!g){break a}c=0;while(1){b=c<<2;m1(a,v[a+28>>2]+B(c+d|0,1168)|0,v[b+h>>2],v[b+(h+128|0)>>2],e,f);c=c+1|0;if((g|0)!=(c|0)){continue}break}}xa=m+256|0}function DE(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0,m=0,n=0,o=0;if((Taa(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}i=C(z[a+24>>2]*C(b>>>0));a:{if(i=C(0)){h=~~i>>>0;break a}h=0}l=v[a+16>>2];d=b+h<<2;d=(0-d&12)+d|0;e=d+(h<<3)|0;if(e){f=v[37696]+12|0;e=Ba[v[v[f>>2]+8>>2]](f,e,24422,17301,372)|0}else{e=0}c=d;d=b<<2;e=I9(e,255,d);j=c+e|0;k=d+e|0;if(v[a+36>>2]){m=b-1|0;n=v[a+4>>2];d=0;while(1){g=d<<3;f=g+n|0;c=v[f+4>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;o=c>>>16^c;c=v[f>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=e+(((o^B(c>>>16^c^1016421269,1000007))&m)<<2)|0;v[(d<<2)+k>>2]=v[c>>2];v[c>>2]=d;g=g+j|0;v[g>>2]=v[f>>2];v[g+4>>2]=v[f+4>>2];d=d+1|0;if(d>>>0>2]){continue}break}}d=v[a>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=k;v[a+16>>2]=h;v[a+4>>2]=j;if(v[a+28>>2]==-1){v[a+28>>2]=l}}function SN(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=v[b+68>>2];a:{if((i|0)>=0){d=(i<<1&-16)+c|0;j=w[d+14|0];k=w[d+13|0];Ba[v[v[a>>2]+112>>2]](a,b,c);break a}f=v[a+68>>2];e=i>>>3|0;d=f+(e<<4)|0;j=w[d+14|0];k=w[d+13|0];g=v[a+84>>2]-1|0;c=v[v[a+80>>2]+(g<<2)>>2];e=e&268435455;h=e<<3;wK(v[a+4>>2],h+v[a+92>>2]|0);v[v[a+80>>2]+(e<<2)>>2]=c;e=v[a+92>>2];h=e+h|0;l=g<<3;e=l+e|0;m=v[e+4>>2];v[h>>2]=v[e>>2];v[h+4>>2]=m;e=f+(g<<4)|0;f=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=f;f=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=f;d=l+v[a+92>>2]|0;v[d>>2]=0;v[d+4>>2]=0;d=v[a+108>>2];e=v[d+456>>2];v[c+68>>2]=i;b:{if(!(w[c+43|0]&2)|w[c+41|0]&8){break b}d=v[v[v[d+444>>2]>>2]+(v[c- -64>>2]<<2)>>2];if(!d){break b}while(1){v[e+(v[d+20>>2]<<2)>>2]=v[c+68>>2];d=v[d+16>>2];if(d){continue}break}}v[a+84>>2]=g;v[a+96>>2]=g;v[a+72>>2]=v[a+72>>2]-1}c:{if(j&2){t[b+43|0]=w[b+43|0]|64;c=1;break c}c=0-(j&1)|0}Ba[v[v[a>>2]+28>>2]](a,b,c,k)}function q6(a,b){a=a|0;b=b|0;var c=0,d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);d=xa-48|0;xa=d;c=v[a+76>>2];n=d+40|0;Ba[v[v[c>>2]+28>>2]](c,n,d+44|0);Y4(d+8|0,v[(b<<2)+n>>2]);c=B(b,28);b=c+a|0;m=z[b+36>>2];o=z[b+40>>2];p=z[b+44>>2];q=z[d+28>>2];r=z[d+32>>2];s=z[d+24>>2];c=c+v[a+80>>2]|0;i=z[d+16>>2];e=z[b+28>>2];j=z[d+12>>2];f=z[b+24>>2];h=z[d+20>>2];g=z[b+32>>2];k=z[d+8>>2];l=z[b+20>>2];z[c+28>>2]=C(i*e)+C(C(j*f)+C(C(h*g)+C(k*l)));z[c+24>>2]=C(l*j)+C(C(C(h*e)-C(g*i))-C(k*f));z[c+20>>2]=C(e*k)+C(C(C(h*f)-C(g*j))-C(i*l));z[c+16>>2]=C(f*i)+C(C(C(h*l)-C(g*k))-C(j*e));e=C(m-s);e=C(e+e);f=C(o-q);f=C(f+f);g=C(p-r);g=C(g+g);l=C(C(C(C(-k)*e)-C(f*j))-C(i*g));m=C(C(h*h)+C(-.5));z[c+40>>2]=C(C(g*m)+C(h*C(C(j*e)-C(k*f))))-C(i*l);z[c+36>>2]=C(C(f*m)+C(h*C(C(k*g)-C(i*e))))-C(j*l);z[c+32>>2]=C(C(e*m)+C(h*C(C(i*f)-C(j*g))))-C(k*l);a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a);xa=d+48|0}function xN(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;f=v[c+4624>>2];a:{if(x[b+88>>1]>=2){if(!f){break a}h=c+528|0;i=v[b+80>>2];g=v[b+84>>2];a=x[a+34>>1];b=0;if((f|0)!=1){j=f&-2;c=0;while(1){e=(b<<2)+d|0;u[e>>1]=a;u[e+2>>1]=x[g+(x[i+(v[(h+(b<<6)|0)+52>>2]<<1)>>1]<<1)>>1];e=b|1;k=(e<<2)+d|0;u[k>>1]=a;u[k+2>>1]=x[g+(x[i+(v[(h+(e<<6)|0)+52>>2]<<1)>>1]<<1)>>1];b=b+2|0;c=c+2|0;if((j|0)!=(c|0)){continue}break}}if(!(f&1)){break a}c=(b<<2)+d|0;u[c>>1]=a;u[c+2>>1]=x[g+(x[i+(v[(h+(b<<6)|0)+52>>2]<<1)>>1]<<1)>>1];return 1}if(!f){break a}h=x[b+34>>1];i=x[a+34>>1];a=0;b=0;if(f-1>>>0>=3){j=f&-4;c=0;while(1){g=b<<2;e=g+d|0;u[e+2>>1]=h;u[e>>1]=i;e=(g|4)+d|0;u[e+2>>1]=h;u[e>>1]=i;e=(g|8)+d|0;u[e+2>>1]=h;u[e>>1]=i;g=(g|12)+d|0;u[g+2>>1]=h;u[g>>1]=i;b=b+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}c=f&3;if(!c){break a}while(1){f=(b<<2)+d|0;u[f+2>>1]=h;u[f>>1]=i;b=b+1|0;a=a+1|0;if((c|0)!=(a|0)){continue}break}}return 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=0,h=C(0),i=0,j=0,k=0,l=0;g=xa-4256|0;xa=g;v[g+4200>>2]=-1;i=g+4200|0;kV(i,c);v[g+4144>>2]=-1;k=g+4144|0;kV(k,e);v[g+4136>>2]=0;v[g+4140>>2]=0;c=0;v[g+4112>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;e=xa-176|0;xa=e;v[e+160>>2]=0;v[e+164>>2]=1065353216;v[e+152>>2]=0;v[e+156>>2]=0;v[e+144>>2]=0;v[e+148>>2]=1065353216;v[e+136>>2]=0;v[e+140>>2]=0;v[e+128>>2]=1065353216;v[e+132>>2]=1065353216;v[e+112>>2]=1065353216;v[e+116>>2]=0;t[e+168|0]=0;v[e+120>>2]=0;v[e+124>>2]=0;v[e+104>>2]=0;v[e+108>>2]=0;v[e+96>>2]=1065353216;v[e+100>>2]=0;j=i;i=e+96|0;l=e+72|0;j=WZ(j,i,l,e);h=z[g>>2];z[e+88>>2]=h+z[e+88>>2];z[e+92>>2]=h+z[e+92>>2];z[e+72>>2]=z[e+72>>2]-h;z[e+76>>2]=z[e+76>>2]-h;z[e+80>>2]=z[e+80>>2]-h;z[e+84>>2]=h+z[e+84>>2];d=BZ(e,l,k,d,f,g,g+16|0,i,j);xa=e+176|0;a:{if(!d){break a}if(!QV(a,b,v[g+4112>>2],g+16|0)){break a}c=v[g+4112>>2]!=0}xa=g+4256|0;return c|0}function xk(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0;k=v[a+12>>2];f=xa+-64|0;xa=f;l=z[a+8>>2];if(l!=C(0)){r=YU(k,b),s=e?-65536:-8355712,v[r+4>>2]=s;v[k+32>>2]=0;v[k>>2]=1;q=C(-d);b=0;d=C(0);while(1){z[f+56>>2]=j;z[f+52>>2]=g;z[f+48>>2]=d;d=C(C(b>>>0)*C(.19634954631328583));i=Q9(d);d=G9(d);a=ZU(k,f+48|0);h=C(d*c);g=C(i*q);j=C(C(h*h)+C(C(g*g)+C(0)));d=C(C(1)/C(j+C(1)));h=C(C(h+h)*d);i=C(d*C(0));g=C(C(g+g)*d);o=C(g*C(0));m=C(C(h*C(0))+C(C(i+i)+o));d=C(C(C(1)-j)*d);n=C(C(d*d)+C(-.5));p=C(n*C(0));j=C(C(C(h*m)+C(p+C(d*C(C(i*C(0))-C(g+g)))))*l);z[f+40>>2]=j;g=C(C(C(g*m)+C(p+C(d*C(C(h+h)+C(i*C(-0))))))*l);z[f+36>>2]=g;d=C(C(C(i*m)+C(C(n+n)+C(d*C(o+C(h*C(-0))))))*l);z[f+32>>2]=d;a=ZU(a,f+32|0);v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;a=ZU(a,f+16|0);z[f+8>>2]=j;z[f+4>>2]=g;z[f>>2]=d;ZU(a,f);b=b+1|0;if((b|0)!=33){continue}break}}xa=f- -64|0}function yO(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{e=v[a+20>>2];b:{if(!e){break b}g=v[b>>2];d=g+(g<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;f=B(d>>>16^d^-57320555,1000007);h=v[b+4>>2];d=h+(h<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;f=e-1&(f^(d>>>16^d));d=v[v[a+12>>2]+(f<<2)>>2];if((d|0)==-1){break b}j=v[a+8>>2];k=v[a+4>>2];while(1){i=B(d,12)+k|0;if(v[i>>2]==(g|0)&v[i+4>>2]==(h|0)){break a}d=v[(d<<2)+j>>2];if((d|0)!=-1){continue}break}}t[c|0]=0;if(v[a+36>>2]==v[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){lO(a,c);e=v[a+20>>2]}c=v[b>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;b=v[b+4>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;f=e-1&(B(c>>>16^c^-57320555,1000007)^(b>>>16^b))}b=v[a+28>>2];v[a+28>>2]=b+1;c=v[a+12>>2]+(f<<2)|0;v[v[a+8>>2]+(b<<2)>>2]=v[c>>2];v[c>>2]=b;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return v[a+4>>2]+B(b,12)|0}t[c|0]=1;return i}function kj(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=v[a+52>>2];switch((b>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[g>>2]+4785|0]){break b}}HG(a- -64|0,c,d);return}e=v[a+56>>2];if(!e){e=Pu(v[a+48>>2],b>>>24&15);v[a+56>>2]=e}b=v[a+316>>2];if(c){v[e+220>>2]=0;v[e+224>>2]=0;v[e+228>>2]=0;f=134217728;b=b&-65537}if(d){v[e+232>>2]=0;v[e+236>>2]=0;v[e+240>>2]=0;f=f|268435456;b=b&-131073}v[a+316>>2]=b|f;Xu(v[a+48>>2],g);return;case 1:case 2:g=a+48|0;e:{f:{g:{b=v[a+52>>2];switch((b>>>30|0)-2|0){case 1:break e;case 0:break g;default:break f}}if(w[v[g>>2]+4785|0]){break e}}JG(a- -64|0,c,d);return}e=v[a+56>>2];if(!e){e=Pu(v[a+48>>2],b>>>24&15);v[a+56>>2]=e}b=v[a+316>>2];if(c){v[e+244>>2]=0;v[e+248>>2]=0;v[e+252>>2]=0;f=536870912;b=b&-262145}if(d){v[e+256>>2]=0;v[e+260>>2]=0;v[e+264>>2]=0;f=f|1073741824;b=b&-524289}v[a+316>>2]=b|f;Xu(v[a+48>>2],g);break;default:break a}}}function fP(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=v[a+1184>>2];a:{if(!h){break a}i=v[a+2344>>2];if(!i){break a}k=v[a+1180>>2];g=v[a+2368>>2];b=v[g+36>>2];if(b){l=v[a+1192>>2];b:{if(b>>>0<=y[a+1196>>2]){while(1){j=B(e,24)+k|0;if(w[j+20|0]&4){c=v[g+24>>2]&2147483647;d=v[l>>2]+B(e,12)|0;b=v[d>>2];m=b>>>5|0;c:{if(c>>>0>m>>>0){f=1;if(v[v[g+20>>2]+(m<<2)>>2]>>>b&1){break c}}f=0}b=f;f=c;c=v[d+4>>2];d=c>>>5|0;t[j+20|0]=f>>>0<=d>>>0|!(v[v[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=v[g+24>>2]&2147483647;l=v[l>>2];while(1){c=l+B(e,12)|0;d=v[c>>2];b=d>>>5|0;d:{if(b>>>0>>0){f=1;if(v[v[g+20>>2]+(b<<2)>>2]>>>d&1){break d}}f=0}b=f;c=v[c+4>>2];d=c>>>5|0;t[(B(e,24)+k|0)+20|0]=d>>>0>=j>>>0|!(v[v[g+20>>2]+(d<<2)>>2]>>>c&1)?b:b|2;e=e+1|0;if((h|0)!=(e|0)){continue}break}}Ba[v[v[i>>2]+16>>2]](i,k,h);break a}Ba[v[v[i>>2]+16>>2]](i,k,h)}v[a+1184>>2]=0;v[v[a+1192>>2]+4>>2]=0}function WH(a){var b=0,c=0,d=0,e=0,f=0,g=0;b=v[a+12>>2];if(b){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,b);v[a+12>>2]=0}f=0;b=v[a>>2];e=b<<2;if(e){b=v[37696]+12|0;d=Ba[v[v[b>>2]+8>>2]](b,e,24422,12699,83)|0;b=v[a>>2]}v[a+12>>2]=d;e=0;a:{if(!b){break a}I9(d,255,b<<2);b=v[a>>2];d=b<<3;if(d){b=v[37696]+12|0;f=Ba[v[v[b>>2]+8>>2]](b,d,24422,12699,87)|0;b=v[a>>2]}b=b<<2;if(!b){break a}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,b,24422,12699,88)|0}b=v[a+8>>2];b:{if(!b){break b}H9(f,v[a+20>>2],b<<3);if(!v[a+8>>2]){break b}d=v[a+12>>2];g=v[a+20>>2];b=0;while(1){c=(b<<3)+g|0;c=v[c+4>>2]<<16|x[c>>1];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=d+((v[a+4>>2]&(c>>>16^c))<<2)|0;v[(b<<2)+e>>2]=v[c>>2];v[c>>2]=b;b=b+1|0;if(b>>>0>2]){continue}break}}b=v[a+16>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+16>>2]=0}b=v[a+20>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+16>>2]=e;v[a+20>>2]=f}function QN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=xa-16|0;xa=i;b=v[b+68>>2];v[i+12>>2]=b;a:{if((b|0)>=0){c=v[a+16>>2];if(c>>>0>=(v[a+20>>2]&2147483647)>>>0){on(a+12|0,i+12|0);break a}v[v[a+12>>2]+(c<<2)>>2]=b;v[a+16>>2]=v[a+16>>2]+1;break a}h=v[a+84>>2]-1|0;c=v[v[a+80>>2]+(h<<2)>>2];d=v[a+68>>2];e=b>>>3|0;g=e&268435455;f=g<<3;wK(v[a+4>>2],f+v[a+92>>2]|0);v[v[a+80>>2]+(g<<2)>>2]=c;g=v[a+92>>2];f=g+f|0;j=g;g=h<<3;j=j+g|0;k=v[j+4>>2];v[f>>2]=v[j>>2];v[f+4>>2]=k;e=d+(e<<4)|0;d=d+(h<<4)|0;f=v[d+12>>2];v[e+8>>2]=v[d+8>>2];v[e+12>>2]=f;f=v[d+4>>2];v[e>>2]=v[d>>2];v[e+4>>2]=f;d=g+v[a+92>>2]|0;v[d>>2]=0;v[d+4>>2]=0;d=v[a+108>>2];e=v[d+456>>2];v[c+68>>2]=b;b:{if(!(w[c+43|0]&2)|w[c+41|0]&8){break b}b=v[v[v[d+444>>2]>>2]+(v[c- -64>>2]<<2)>>2];if(!b){break b}while(1){v[e+(v[b+20>>2]<<2)>>2]=v[c+68>>2];b=v[b+16>>2];if(b){continue}break}}v[a+84>>2]=h;v[a+96>>2]=h;v[a+72>>2]=v[a+72>>2]-1}xa=i+16|0}function xO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;c=v[a>>2];b=v[a+12>>2];e=v[(c+(b<<3)|0)+4>>2];if((e|0)==128){b=b+1|0;if((b|0)==v[a+4>>2]){b=0;c=v[37696];e=c+12|0;c=(g=e,h=13312,i=Ba[v[v[c>>2]+20>>2]](c)|0?40335:63804,j=19811,k=260,f=v[v[e>>2]+8>>2],Ba[f](g|0,h|0,i|0,j|0,k|0)|0);while(1){v[(c+B(b,104)|0)+100>>2]=-128;v[(c+B(b|1,104)|0)+100>>2]=-128;v[(c+B(b|2,104)|0)+100>>2]=-128;v[(c+B(b|3,104)|0)+100>>2]=-128;v[(c+B(b|4,104)|0)+100>>2]=-128;v[(c+B(b|5,104)|0)+100>>2]=-128;v[(c+B(b|6,104)|0)+100>>2]=-128;v[(c+B(b|7,104)|0)+100>>2]=-128;b=b+8|0;if((b|0)!=128){continue}break}v[d+12>>2]=0;v[d+8>>2]=c;b=v[a+4>>2];a:{if(b>>>0>=(v[a+8>>2]&2147483647)>>>0){kO(a,d+8|0);break a}c=v[d+12>>2];b=v[a>>2]+(b<<3)|0;v[b>>2]=v[d+8>>2];v[b+4>>2]=c;v[a+4>>2]=v[a+4>>2]+1}c=v[a>>2];b=v[a+12>>2]+1|0}v[a+12>>2]=b;v[((b<<3)+c|0)+4>>2]=0;e=0}a=(b<<3)+c|0;v[a+4>>2]=e+1;xa=d+16|0;return v[a>>2]+B(e,104)|0}function n1(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),H=C(0);i=z[a+20>>2];h=z[a+16>>2];l=z[a+24>>2];m=w[a+64|0];n=z[a+48>>2];o=z[d>>2];p=z[a+52>>2];q=z[d+4>>2];r=z[a+56>>2];s=z[d+8>>2];t=z[a+60>>2];u=z[d+12>>2];v=z[a+32>>2];x=z[c>>2];y=z[a+36>>2];A=z[c+4>>2];B=z[a+40>>2];D=z[c+8>>2];E=z[a+44>>2];H=z[c+12>>2];a=1;c=m<<2;j=C(z[e>>2]*z[c+103152>>2]);h=C(z[b+16>>2]-h);h=h>C(0)?h:C(-h);i=C(z[b+20>>2]-i);i=i>C(0)?i:C(-i);i=h>=i?h:i;k=h;h=C(z[b+24>>2]-l);h=(h>C(0)?h:C(-h))>=C(0)?k:C(0);a:{if(j<(h<=i?i:h)){break a}i=z[c+103184>>2];h=C(C(H*E)+C(C(D*B)+C(C(x*v)+C(A*y))));if(i>h){break a}k=i;i=C(C(u*t)+C(C(s*r)+C(C(o*n)+C(q*p))));if(k>i){break a}if(h>2])>j;if(i>2])>j}return a}function XT(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=xa-16|0;xa=f;a:{if(!v[a+72>>2]){break a}while(1){d=v[v[a+68>>2]+(c<<2)>>2];if((Ba[v[v[d>>2]+16>>2]](d)|0)==(b|0)){d=v[a+72>>2]-1|0;v[a+72>>2]=d;e=c<<2;c=v[a+68>>2];v[e+c>>2]=v[c+(d<<2)>>2];break a}c=c+1|0;if(c>>>0>2]){continue}break}}v[f+12>>2]=0;c=Ba[v[v[b>>2]+28>>2]](b)|0;Ba[v[v[c>>2]+96>>2]](c,f+12|0,1,0)|0;b:{if(!v[a+116>>2]){break b}d=v[f+12>>2];c=(d<<15^-1)+d|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;e=v[a+92>>2]+((v[a+100>>2]-1&(c>>>16^c))<<2)|0;c=v[e>>2];if((c|0)==-1){break b}g=v[a+88>>2];h=v[a+84>>2];if((d|0)!=v[h+(c<<2)>>2]){while(1){e=(c<<2)+g|0;c=v[e>>2];if((c|0)==-1){break b}if((d|0)!=v[(c<<2)+h>>2]){continue}break}}d=(c<<2)+g|0;v[e>>2]=v[d>>2];v[a+116>>2]=v[a+116>>2]-1;v[a+112>>2]=v[a+112>>2]+1;v[d>>2]=v[a+108>>2];v[a+108>>2]=c}c:{if((Ba[v[v[b>>2]>>2]](b)|0)!=1){if(Ba[v[v[b>>2]>>2]](b)|0){break c}}Ba[v[v[b>>2]+104>>2]](b)}xa=f+16|0}function Ix(a,b){var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0),p=C(0),q=C(0),r=0,s=0;d=v[a+336>>2]-1|0;if(d){n=v[b+32>>2];i=v[b+12>>2];while(1){e=d<<5;b=e+i|0;o=z[b+24>>2];p=z[b+20>>2];c=v[a+340>>2]+B(d,160)|0;j=z[c+120>>2];q=z[b+16>>2];k=z[c+124>>2];l=z[c+128>>2];f=z[b+8>>2];g=z[b+4>>2];c=(v[(e+v[a+332>>2]|0)+24>>2]<<5)+i|0;h=z[b>>2];z[c>>2]=h+z[c>>2];z[c+4>>2]=g+z[c+4>>2];z[c+8>>2]=f+z[c+8>>2];z[c+16>>2]=C(q+C(C(k*f)-C(g*l)))+z[c+16>>2];z[c+20>>2]=C(p+C(C(l*h)-C(f*j)))+z[c+20>>2];z[c+24>>2]=C(o+C(C(j*g)-C(h*k)))+z[c+24>>2];c=v[a+344>>2]+B(d,80)|0;m=w[c+76|0];if(m){r=(v[c+72>>2]<<2)+n|0;s=v[a+272>>2]+B(d,76)|0;e=0;while(1){c=B(e,24)+s|0;z[(e<<2)+r>>2]=C(C(z[c+20>>2]*z[b+8>>2])+C(C(z[c+12>>2]*z[b>>2])+C(z[c+16>>2]*z[b+4>>2])))+C(C(z[c+8>>2]*z[b+24>>2])+C(C(z[c>>2]*z[b+16>>2])+C(z[c+4>>2]*z[b+20>>2])));e=e+1|0;if((m|0)!=(e|0)){continue}break}}d=d-1|0;if(d){continue}break}}}function Ii(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=v[a+320>>2];if(c){j=a,k=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[j+320>>2]=k}c=v[a+324>>2];if(c){j=a,k=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[j+324>>2]=k}c=v[a+328>>2];if(c){j=a,k=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[j+328>>2]=k}d=x[a+24>>1];if(d){h=(d|0)==1?a+20|0:v[a+20>>2];c=0;while(1){e=h+(c<<2)|0;f=Ba[v[v[b>>2]>>2]](b,-2147483648,v[e>>2])|0;v[e>>2]=f;Yt(f,a);c=c+1|0;if((d|0)!=(c|0)){continue}break}}hh(a+12|0,b);d=v[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+v[a+352>>2]|0;i=v[g>>2];if(i){j=g,k=Ba[v[v[b>>2]>>2]](b,-2147483648,i)|0,v[j>>2]=k}e=v[a+352>>2]+(e|4)|0;g=v[e>>2];if(g){j=e,k=Ba[v[v[b>>2]>>2]](b,-2147483648,g)|0,v[j>>2]=k}c=c+2|0;f=f+2|0;if((h|0)!=(f|0)){continue}break}}if(!(d&1)){break a}a=v[a+352>>2]+(c<<2)|0;c=v[a>>2];if(!c){break a}j=a,k=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[j>>2]=k}}function mq(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=xa-16|0;xa=e;a:{if((Ba[v[v[b>>2]+52>>2]](b)|0)!=(a|0)){a=v[37696];v[e>>2]=21238;a9(a,8,11709,79,75385,e);break a}if((Ba[v[v[b>>2]+52>>2]](b)|0)!=(a|0)){break a}h=v[b+36>>2];if(h){i=b+8|0;while(1){b:{c:{d:{d=v[v[b+40>>2]+(g<<2)>>2];if((Ba[v[v[d>>2]+24>>2]](d)|0)!=2){ru(i,d+v[((x[d+4>>1]<<2)+86240|0)+72>>2]|0,0);e:{switch(Ba[v[v[d>>2]+24>>2]](d)|0){case 1:cq(a,d,c,0);break b;case 0:break d;case 2:break e;default:break b}}a9(v[37696],2,11709,689,22124,0);break b}if(!(Ba[v[v[d>>2]+28>>2]](d)|0)){break b}d=v[d+320>>2];j=v[(Ba[v[v[d>>2]+100>>2]](d)|0)+84>>2];f=0;if(!(Ba[v[v[d>>2]+76>>2]](d)|0)){break c}while(1){ru(i,v[(f<<2)+j>>2]+48|0,0);f=f+1|0;if(Ba[v[v[d>>2]+76>>2]](d)>>>0>f>>>0){continue}break}break c}bq(a,d,c,0);break b}kq(a,d,c,0)}g=g+1|0;if((h|0)!=(g|0)){continue}break}}Mu(a+16|0,b+8|0);v[e+12>>2]=b;Og(a+5984|0,e+12|0)}xa=e+16|0}function DR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=v[a+20>>2];b=v[a+28>>2];h=v[v[b+976>>2]+1156>>2];a=v[b+988>>2];d=v[a+128>>2];v[b+992>>2]=0;a:{if(v[a+132>>2]?0:d){break a}c=v[b+1160>>2];if(!c){break a}i=b+992|0;d=0;if(!e){while(1){a=vr(h,40);e=v[b+1156>>2];f=v[b+16>>2];g=v[b+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=f;v[a+12>>2]=g;v[a+36>>2]=i;c=c-d|0;v[a+32>>2]=c>>>0<256?c:256;v[a>>2]=134948;v[a+24>>2]=1;v[a+28>>2]=e+(d<<2);e=v[a+16>>2];Ba[v[v[e>>2]+72>>2]](e,a);d=d+256|0;c=v[b+1160>>2];if(d>>>0>>0){continue}break a}}while(1){a=vr(h,40);f=v[b+1156>>2];g=v[b+16>>2];j=v[b+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=g;v[a+12>>2]=j;v[a+36>>2]=i;c=c-d|0;v[a+32>>2]=c>>>0<256?c:256;v[a>>2]=134948;v[a+20>>2]=e;v[a+24>>2]=1;v[a+28>>2]=(d<<2)+f;Ba[v[v[e>>2]+16>>2]](e);v[a+16>>2]=v[v[a+20>>2]+16>>2];Ba[v[v[a>>2]+20>>2]](a);d=d+256|0;c=v[b+1160>>2];if(d>>>0>>0){continue}break}}}function QD(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=xa-32|0;xa=j;f=v[a+4>>2];if(f){h=v[a+292>>2];g=v[a+296>>2];v[j+16>>2]=0;v[j+8>>2]=0;v[j+12>>2]=0;f=RD(g,h,f,b,c,d,e)}else{f=1}if(!(!f|!w[a+336|0]|(v[a+156>>2]+v[a+108>>2]|0)==(0-v[a+216>>2]|0))){f=xa-48|0;xa=f;a:{if(v[a+156>>2]!=(0-v[a+108>>2]|0)){h=xa-32|0;xa=h;g=1;i=v[a+68>>2];if(!(!i|!v[i+588>>2])){g=v[a+160>>2];k=v[g+8>>2];g=v[g+12>>2];v[h+16>>2]=0;v[h+8>>2]=0;v[h+12>>2]=0;g=hD(g,k,i,b,c,d,e)}i=v[a+116>>2];if(!(!i|(!v[i+588>>2]|g^1))){g=v[a+160>>2];k=v[g+8>>2];g=v[g+12>>2];v[h+16>>2]=0;v[h+8>>2]=0;v[h+12>>2]=0;g=hD(g,k,i,b,c,d,e)}xa=h+32|0;if(!g){break a}}if(!v[a+216>>2]){l=1;break a}v[f+40>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+28>>2]=v[a+176>>2];v[f+24>>2]=e;v[f+16>>2]=c;v[f+12>>2]=b;v[f+8>>2]=129772;e=f+32|0;v[f+20>>2]=e;l=RD(v[a+252>>2],v[a+248>>2],v[a+220>>2],b,c,d,f+8|0)}xa=f+48|0;f=l}xa=j+32|0;return f|0}function KW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);e=xa-96|0;xa=e;g=z[b+20>>2];h=z[d+20>>2];i=z[b+24>>2];j=z[d+24>>2];z[e+80>>2]=z[d+16>>2]-z[b+16>>2];z[e+88>>2]=j-i;z[e+84>>2]=h-g;i=z[b+8>>2];j=z[b+4>>2];f=z[b>>2];g=C(f+f);k=z[b+12>>2];h=C(k+k);n=C(C(f*g)+C(C(k*h)+C(-1)));f=z[a+8>>2];o=C(n*f);z[e+64>>2]=o;p=C(f*C(C(i*h)+C(g*j)));z[e+68>>2]=p;q=C(f*C(C(g*i)-C(j*h)));z[e+72>>2]=q;h=z[d+4>>2];j=C(h+h);g=z[d+8>>2];l=C(j*g);f=z[d>>2];i=C(f+f);k=z[d+12>>2];m=C(i*k);z[e+52>>2]=l-m;z[e+44>>2]=l+m;f=C(C(1)-C(f*i));l=C(h*j);z[e+56>>2]=f-l;n=f;f=C(g+g);m=C(g*f);z[e+40>>2]=n-m;g=C(i*g);j=C(j*k);z[e+48>>2]=g+j;h=C(i*h);i=C(f*k);z[e+36>>2]=h-i;z[e+32>>2]=g-j;z[e+28>>2]=h+i;z[e+24>>2]=C(C(1)-l)-m;z[e+16>>2]=-q;z[e+12>>2]=-p;z[e+8>>2]=-o;g=F_(e- -64|0,e+8|0,e+80|0,c+4|0,e+24|0,0,0);xa=e+96|0;h=z[a+4>>2];return g<=C(h*h)|0}function Zn(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(!v[a+92>>2]){break a}e=(b<<15^-1)+b|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=v[v[a+68>>2]+((v[a+76>>2]-1&(e>>>16^e))<<2)>>2];if((e|0)==-1){break a}f=v[a- -64>>2];a=v[a+60>>2];while(1){if(v[a+(e<<3)>>2]!=(b|0)){e=v[f+(e<<2)>>2];if((e|0)!=-1){continue}break a}break}a=v[(a+(e<<3)|0)+4>>2];if(!w[a+41|0]|!d|!v[a+36>>2]){break a}b=0;e=1;while(1){b:{if(!e){break b}f=v[(b<<2)+c>>2];e=(f<<15^-1)+f|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;g=v[a+12>>2]+((v[a+20>>2]-1&(e>>>16^e))<<2)|0;e=v[g>>2];if((e|0)==-1){break b}h=v[a+8>>2];i=v[a+4>>2];if((f|0)!=v[i+(e<<2)>>2]){while(1){g=(e<<2)+h|0;e=v[g>>2];if((e|0)==-1){break b}if((f|0)!=v[(e<<2)+i>>2]){continue}break}}f=(e<<2)+h|0;v[g>>2]=v[f>>2];v[a+36>>2]=v[a+36>>2]-1;v[a+32>>2]=v[a+32>>2]+1;v[f>>2]=v[a+28>>2];v[a+28>>2]=e}b=b+1|0;if((b|0)==(d|0)){break a}e=v[a+36>>2];continue}}}function Qu(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=v[a+4>>2];a:{if(!(g&16777215)){break a}d=v[a+8>>2];if(!d){d=Pu(v[a>>2],g>>>24&15);v[a+8>>2]=d}b:{if(!(g&1)){break b}f=v[d+4>>2];if(!f){break b}j=v[b+4880>>2]+(v[d>>2]<<2)|0;k=v[a+16>>2]&16777215;if((f|0)!=1){l=f&-2;while(1){e=c<<2;i=v[e+j>>2];i=v[(v[i+4>>2]>>>22&60)+89200>>2]+i|0;v[i+4>>2]=w[i+7|0]<<24|k;e=v[(e|4)+j>>2];e=v[(v[e+4>>2]>>>22&60)+89200>>2]+e|0;v[e+4>>2]=w[e+7|0]<<24|k;c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(f&1)){break b}c=v[(c<<2)+j>>2];c=v[((v[c+4>>2]>>>22&60)+89188|0)+12>>2]+c|0;v[c+4>>2]=w[c+7|0]<<24|k}if(!(g&2)){break a}h=v[d+12>>2];if(!h){break a}g=v[b+4880>>2]+(v[d+8>>2]<<2)|0;c=0;while(1){b=v[g+(c<<2)>>2];f=v[b+4>>2];b=v[((f>>>22&60)+89188|0)+12>>2]+b|0;v[b+4>>2]=v[b+4>>2]|16777215;if((f>>>30|0)-1>>>0<=1){RE(b);h=v[d+12>>2]}c=c+1|0;if(h>>>0>c>>>0){continue}break}}v[a+8>>2]=0;v[a+4>>2]=w[a+7|0]<<24}function VR(a){var b=0,c=0,d=0,e=0,f=0;c=v[v[a+28>>2]+4>>2];b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(!(y[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+152>>2]<4294967294|(y[b+152>>2]<4294967294?b:0))){a:{if(v[a+52>>2]==-1){break a}b=v[a+44>>2];v[a+44>>2]=b<<1&4194304|b;c=v[v[v[a+4>>2]+40>>2]+2168>>2];if(b&8388608){AJ(c,a);break a}yJ(c,a)}b=v[a+56>>2];b:{if(!b){break b}c=v[a+44>>2];c:{if(c&98304){break c}d=w[b+43|0];if(!(d&3)|d&2){break c}v[a+44>>2]=c|65536}c=v[v[a+4>>2]+40>>2];d=v[v[c+976>>2]+1024>>2];Ba[v[v[d>>2]+36>>2]](d,b);vK(v[c+976>>2],v[a+56>>2]);v[a+56>>2]=0;b=v[a+60>>2];if((b|0)==-1){break b}kG(v[v[v[a+4>>2]+40>>2]+1e3>>2],b)}b=v[v[v[a+4>>2]+40>>2]+1e3>>2];d=v[a+60>>2];e=v[b+80>>2]+(d<<2)|0;f=v[e>>2];if(f){c=v[b+96>>2];d:{if(c>>>0>=(v[b+100>>2]&2147483647)>>>0){iG(b+92|0,e);break d}v[v[b+92>>2]+(c<<2)>>2]=f;v[b+96>>2]=c+1}v[v[b+80>>2]+(d<<2)>>2]=0}t[a+25|0]=w[a+25|0]&223;d=1}return d}function FB(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0,w=0,x=C(0);e=xa-32|0;xa=e;c=v[c+4>>2]&64?v[c+8>>2]+96|0:c+32|0;x=z[c+16>>2];j=z[c+20>>2];u=v[b+8>>2];w=v[b+4>>2];i=w&4?u:b+48|0;k=z[i+12>>2];l=z[i+8>>2];m=z[i>>2];n=z[i+4>>2];f=z[c+8>>2];o=z[i+24>>2];g=z[c>>2];p=z[i+16>>2];h=z[c+4>>2];q=z[i+20>>2];s=C(C(f*o)+C(C(g*p)+C(h*q)));d=z[c+12>>2];t=C(C(d*d)+C(-.5));r=C(C(C(t*o)+C(d*C(C(g*q)-C(p*h))))+C(f*s));z[e+24>>2]=z[c+24>>2]+C(r+r);r=j;j=C(C(h*s)+C(C(q*t)+C(d*C(C(f*p)-C(o*g)))));z[e+20>>2]=r+C(j+j);z[e+12>>2]=C(d*k)-C(C(f*l)+C(C(g*m)+C(h*n)));z[e+8>>2]=C(f*k)+C(C(C(g*n)-C(m*h))+C(d*l));z[e+4>>2]=C(h*k)+C(C(d*n)+C(C(f*m)-C(l*g)));z[e>>2]=C(g*k)+C(C(d*m)+C(C(h*l)-C(n*f)));d=C(C(g*s)+C(C(p*t)+C(d*C(C(h*o)-C(q*f)))));z[e+16>>2]=x+C(d+d);dV(a,w&1?u- -64|0:b+84|0,e,C(1.0099999904632568));xa=e+32|0}function Gc(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;var h=0;h=xa-32|0;xa=h;u[h+24>>1]=x[f>>1];v[h+8>>2]=0;v[h+12>>2]=0;v[h>>2]=0;v[h+4>>2]=0;u[h+16>>1]=3;f=xa-112|0;xa=f;v[f+60>>2]=0;v[f+64>>2]=0;u[f+56>>1]=0;v[f+52>>2]=-1;v[f+68>>2]=0;v[f+72>>2]=0;v[f+76>>2]=0;v[f+80>>2]=0;v[f+84>>2]=2139095039;v[f+44>>2]=0;v[f+48>>2]=0;v[f+104>>2]=0;v[f+96>>2]=0;v[f+100>>2]=0;t[f+92|0]=0;v[f+40>>2]=114448;v[f+16>>2]=v[h>>2];v[f+20>>2]=v[h+4>>2];v[f+24>>2]=v[h+8>>2];v[f+28>>2]=v[h+12>>2];u[f+32>>1]=x[h+16>>1];u[f+8>>1]=x[h+24>>1];Ba[v[v[a>>2]+352>>2]](a,b,c,d,e,f+40|0,f+8|0,f+16|0,0,0,C(0))|0;v[g+8>>2]=v[f+52>>2];a=v[f+48>>2];v[g>>2]=v[f+44>>2];v[g+4>>2]=a;u[g+12>>1]=x[f+56>>1];z[g+16>>2]=z[f+60>>2];z[g+20>>2]=z[f- -64>>2];z[g+24>>2]=z[f+68>>2];z[g+28>>2]=z[f+72>>2];z[g+32>>2]=z[f+76>>2];z[g+36>>2]=z[f+80>>2];z[g+40>>2]=z[f+84>>2];v[g+44>>2]=v[f+88>>2];xa=f+112|0;xa=h+32|0;return w[f+92|0]}function K0(a,b,c){var d=0,e=C(0),f=C(0),g=C(0),h=C(0);d=v[c+4>>2];v[a+12>>2]=1;u[a+6>>1]=3;v[a+8>>2]=144016;v[a>>2]=143920;u[a+4>>1]=v[(d<<2)+102336>>2];v[a+16>>2]=v[c+12>>2];v[a+20>>2]=v[c+68>>2];v[a+24>>2]=v[c+16>>2];v[a+28>>2]=v[c+72>>2];e=z[c+32>>2];f=z[c+36>>2];g=z[c+24>>2];h=z[c+20>>2];z[a+40>>2]=C(z[c+28>>2]+z[c+40>>2])*C(.5);z[a+36>>2]=C(g+f)*C(.5);z[a+32>>2]=C(h+e)*C(.5);e=z[c+32>>2];f=z[c+24>>2];g=z[c+36>>2];h=z[c+20>>2];z[a+52>>2]=C(z[c+40>>2]-z[c+28>>2])*C(.5);z[a+48>>2]=C(g-f)*C(.5);z[a+44>>2]=C(e-h)*C(.5);v[a+56>>2]=v[c+76>>2];z[a+60>>2]=z[c+44>>2];t[a+64|0]=w[c+8|0];v[a+68>>2]=v[c+80>>2];v[a+72>>2]=v[c+48>>2];d=v[c+52>>2];v[a+80>>2]=b;v[a+76>>2]=d;v[a+84>>2]=v[c+56>>2];v[a+88>>2]=v[c+60>>2];b=c- -64|0;v[a+92>>2]=v[b>>2];v[a+96>>2]=v[c+84>>2];v[c+48>>2]=0;v[c+52>>2]=0;v[c+16>>2]=0;v[c+56>>2]=0;v[c+60>>2]=0;v[b>>2]=0;v[c+72>>2]=0;v[c+76>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;return a}function xZ(a,b,c,d,e,f){var g=0,h=0,i=0,j=0;g=xa-256|0;xa=g;h=0;a:{if(z[b+4>>2]!=C(1)){break a}h=0;if(z[b+8>>2]!=C(1)){break a}h=z[b+12>>2]==C(1)}v[g+240>>2]=0;v[g+244>>2]=1065353216;v[g+232>>2]=0;v[g+236>>2]=0;v[g+224>>2]=0;v[g+228>>2]=1065353216;v[g+216>>2]=0;v[g+220>>2]=0;v[g+208>>2]=1065353216;v[g+212>>2]=1065353216;v[g+192>>2]=1065353216;v[g+196>>2]=0;t[g+248|0]=0;v[g+200>>2]=0;v[g+204>>2]=0;v[g+184>>2]=0;v[g+188>>2]=0;v[g+176>>2]=1065353216;v[g+180>>2]=0;if(!h){IX(g+176|0,b+4|0,b+16|0)}v[g+160>>2]=0;v[g+164>>2]=1065353216;v[g+152>>2]=0;v[g+156>>2]=0;v[g+144>>2]=0;v[g+148>>2]=1065353216;v[g+136>>2]=0;v[g+140>>2]=0;v[g+128>>2]=1065353216;v[g+132>>2]=1065353216;v[g+112>>2]=1065353216;v[g+116>>2]=0;t[g+168|0]=0;v[g+120>>2]=0;v[g+124>>2]=0;v[g+104>>2]=0;v[g+108>>2]=0;v[g+96>>2]=1065353216;v[g+100>>2]=0;i=g+72|0;j=b;b=g+96|0;a=yZ(g,i,j,c,d,e,f,b,g+176|0,WZ(a,b,i,g),h);xa=g+256|0;return a}function z7(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);D5(d,e,a,b,c);g=z[e+12>>2];h=z[e+8>>2];i=z[e>>2];j=z[e+4>>2];if(C(C(z[d+12>>2]*g)+C(C(z[d+8>>2]*h)+C(C(z[d>>2]*i)+C(z[d+4>>2]*j))))>2]=g;h=C(-h);z[e+8>>2]=h;j=C(-j);z[e+4>>2]=j;i=C(-i);z[e>>2]=i}o=z[d+20>>2];p=z[e+20>>2];q=z[d+24>>2];r=z[e+24>>2];s=z[d+16>>2];t=z[e+16>>2];l=z[d+8>>2];m=z[d+4>>2];k=z[d+12>>2];n=z[d>>2];z[f+12>>2]=C(l*h)+C(C(m*j)+C(C(k*g)+C(n*i)));z[f+8>>2]=C(i*m)+C(C(C(k*h)-C(g*l))-C(n*j));z[f+4>>2]=C(h*n)+C(C(C(k*j)-C(g*m))-C(l*i));z[f>>2]=C(j*l)+C(C(C(k*i)-C(g*n))-C(m*h));g=C(t-s);g=C(g+g);h=C(p-o);h=C(h+h);i=C(r-q);i=C(i+i);j=C(C(C(C(-n)*g)-C(h*m))-C(l*i));o=C(C(k*k)+C(-.5));z[f+24>>2]=C(C(i*o)+C(k*C(C(m*g)-C(n*h))))-C(l*j);z[f+20>>2]=C(C(h*o)+C(k*C(C(n*i)-C(l*g))))-C(m*j);z[f+16>>2]=C(C(g*o)+C(k*C(C(l*h)-C(m*i))))-C(n*j)}function RC(a,b,c,d){var e=0,f=0,g=0,h=0;f=v[b+36>>2];e=v[f>>2];if(e>>>0>=2){a=e;a:{while(1){if(!a){break a}a=a-1|0;if(v[(f+(a<<2)|0)+4>>2]!=(c|0)){continue}break}c=e-1|0;v[f>>2]=c;v[(v[b+36>>2]+(a<<2)|0)+4>>2]=v[(f+(c<<2)|0)+4>>2]}OC(b,d);return 0}if(v[a+588>>2]==(b|0)){v[a+576>>2]=v[a+576>>2]-1;v[b>>2]=v[a+584>>2];v[a+588>>2]=0;v[a+584>>2]=b;return 0}c=v[b+32>>2];f=v[c+36>>2];e=f;if((e|0)==(b|0)){e=v[c+40>>2]}g=v[e+20>>2];v[c+16>>2]=v[e+16>>2];v[c+20>>2]=g;g=v[e+28>>2];v[c+24>>2]=v[e+24>>2];v[c+28>>2]=g;g=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=g;g=v[e+12>>2];v[c+8>>2]=v[e+8>>2];v[c+12>>2]=g;g=v[e+40>>2];h=v[e+36>>2];v[c+36>>2]=h;b:{if(!g){v[c+40>>2]=0;break b}v[h+32>>2]=c;e=v[e+40>>2];v[c+40>>2]=e;v[e+32>>2]=c}e=v[c+32>>2];if(e){OC(e,d)}b=v[b+36>>2];if(b){v[a+284>>2]=v[a+284>>2]-1;v[b>>2]=v[a+292>>2];v[a+292>>2]=b}if(f){v[a+576>>2]=v[a+576>>2]-1;v[f>>2]=v[a+584>>2];v[a+584>>2]=f}return c}function MO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;i=a+12|0;g=v[a+4>>2];h=v[a>>2];f=v[a+16>>2];a:{if(f){j=v[a+8>>2];k=v[i>>2];while(1){b:{if((b|0)==(j|0)){break b}e=B(b,12)+k|0;c=v[e+4>>2];if(!c){c=v[e+8>>2];if((c|0)==(h|0)){break b}v[e+8>>2]=c+1;e=v[e>>2];if(!e){break b}v[a+8>>2]=b;c=e+B(c,g)|0;break a}v[e+4>>2]=v[c>>2];v[a+8>>2]=b;break a}b=b+1|0;if((f|0)!=(b|0)){continue}break}}t[a+24|0]=1;v[a+8>>2]=f;v[d+4>>2]=0;v[d+8>>2]=0;b=B(g,h);c:{if(!b){b=0;break c}c=v[37696]+12|0;b=Ba[v[v[c>>2]+8>>2]](c,b,24422,18584,60)|0;f=v[a+16>>2]}v[d>>2]=b;d:{if((v[a+20>>2]&2147483647)>>>0<=f>>>0){a=KO(i,d);break d}c=v[d+4>>2];b=v[a+12>>2]+B(f,12)|0;v[b>>2]=v[d>>2];v[b+4>>2]=c;v[b+8>>2]=v[d+8>>2];b=v[a+16>>2];v[a+16>>2]=b+1;a=v[a+12>>2]+B(b,12)|0}c=v[a+4>>2];if(c){v[a+4>>2]=v[c>>2];break a}c=0;b=v[a+8>>2];if((b|0)==(h|0)){break a}v[a+8>>2]=b+1;c=v[a>>2]+B(b,g)|0}xa=d+16|0;return c}function te(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=0,g=C(0),h=0,i=C(0),j=C(0);e=xa-16|0;xa=e;z[e+12>>2]=b;b=C(0);c=xa-128|0;xa=c;v[c+124>>2]=1065353216;v[c+120>>2]=1065353216;v[c+112>>2]=1065353216;v[c+116>>2]=1065353216;v[c+104>>2]=0;v[c+108>>2]=1065353216;v[c+96>>2]=0;v[c+100>>2]=0;v[c+80>>2]=0;z[c+88>>2]=0;z[c+84>>2]=0;f=e+12|0;a:{if(f){d=c+24|0;y8(d,1);h=A8(a,0,f,d);b:{if(h){if(z[c+72>>2]!=C(0)){B8(c+24|0,c+112|0,c+96|0,c+124|0,c+80|0,a,24698)}g=z[f>>2];break b}d=v[37696];v[c>>2]=24698;a9(d,4,6223,342,70878,c);g=C(1)}b=z[c+88>>2];i=z[c+84>>2];j=z[c+80>>2];break a}d=v[37696];v[c+16>>2]=24698;a9(d,4,6223,350,71027,c+16|0);g=C(1)}Ba[v[v[a>>2]+116>>2]](a,g);Ba[v[v[a>>2]+128>>2]](a,c+112|0);z[c+48>>2]=b;z[c+44>>2]=i;d=v[c+100>>2];v[c+24>>2]=v[c+96>>2];v[c+28>>2]=d;z[c+40>>2]=j;d=v[c+108>>2];v[c+32>>2]=v[c+104>>2];v[c+36>>2]=d;Ba[v[v[a>>2]+108>>2]](a,c+24|0);xa=c+128|0;xa=e+16|0;return h|0}function $R(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=xa-48|0;xa=f;if(v[a+8>>2]<0){_I(a);e=f+8|0;b=v[v[a+4>>2]+40>>2];c=v[v[b+976>>2]+1024>>2];Ba[v[v[c>>2]+84>>2]](e,c);oJ(v[b+2168>>2],a,4,e,(v[b+2360>>2]&8)>>>3|0)}e=v[v[a+4>>2]+40>>2];b=v[e+1012>>2];Ba[v[v[b>>2]+20>>2]](b,v[a+32>>2]);b=v[a+8>>2];c=v[e+2516>>2]+(b>>>3&268435452)|0;d=v[c>>2];h=c,i=Uaa(-2,b)&d,v[h>>2]=i;if(v[a+36>>2]!=-1){lS(v[v[v[a+4>>2]+40>>2]+1152>>2],a)}RH(v[v[v[a+4>>2]+40>>2]+2376>>2],v[a+8>>2]&2147483647);d=v[v[a+4>>2]+40>>2];b=v[d+2376>>2];c=v[b+12>>2];a:{if(c){g=c-1|0;c=v[v[b+8>>2]+(g<<2)>>2];v[b+12>>2]=g;break a}c=v[b+4>>2];v[b+4>>2]=c+1}b=c&2147483647;v[a+8>>2]=b|v[a+8>>2]&-2147483648;b=b+1|0;c=v[d+1140>>2];d=v[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){XI(c,b)}v[c+8>>2]=b}XR(a);b=v[e+1012>>2];Ba[v[v[b>>2]+16>>2]](b,a+12|0,v[a+32>>2]);xa=f+48|0}function c4(a,b,c,d){var e=C(0),f=0,g=C(0),h=C(0),i=0,j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0);f=w[v[a+28>>2]+38|0]!=0;a=v[a>>2];if(f&(a|0)!=0){v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;if(c){while(1){E=g;f=B(i,12)+d|0;j=a+B(v[f>>2],12)|0;e=z[j+8>>2];k=a+B(v[f+4>>2],12)|0;g=z[k+8>>2];f=a+B(v[f+8>>2],12)|0;h=z[f+8>>2];F=C(C(C(e+g)+h)*C(.3333333432674408));l=z[j>>2];p=z[k>>2];q=C(l-p);m=z[j+4>>2];r=z[f+4>>2];s=C(m-r);t=z[f>>2];u=C(l-t);x=z[k+4>>2];y=C(m-x);A=C(C(q*s)-C(u*y));h=C(e-h);e=C(e-g);g=C(C(y*h)-C(s*e));e=C(C(e*u)-C(h*q));e=C(C(K(C(C(A*A)+C(C(g*g)+C(e*e)))))*C(.5));g=C(E+C(F*e));z[b+8>>2]=g;n=C(n+C(C(C(r+C(m+x))*C(.3333333432674408))*e));z[b+4>>2]=n;o=C(o+C(C(C(t+C(l+p))*C(.3333333432674408))*e));z[b>>2]=o;D=C(D+e);i=i+1|0;if((i|0)!=(c|0)){continue}break}}e=C(C(1)/D);z[b+8>>2]=e*g;z[b+4>>2]=e*n;z[b>>2]=e*o}}function y7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0);e=xa-128|0;xa=e;z7(a,b,c,e+96|0,e- -64|0,e+32|0);h=z[e+56>>2];f=z[e+48>>2];j=z[e+52>>2];i=C(C(h*h)+C(C(f*f)+C(j*j)));g=z[a+80>>2];n=i>C(g*g);if(n){i=C(C(1)/C(K(i)));h=C(g*C(h*i));j=C(g*C(j*i));f=C(g*C(f*i))}z[e+24>>2]=h;z[e+20>>2]=j;z[e+16>>2]=f;g=C(z[a+84>>2]*C(.5));h=Q9(g);p=G9(g);a:{b:{c:{if(h>C(.9998999834060669)){j=z[e+44>>2];k=z[e+40>>2];l=z[e+36>>2];f=z[e+32>>2];break c}f=z[e+32>>2];j=z[e+44>>2];d:{if(j>=C(0)){l=z[e+36>>2];i=l;k=z[e+40>>2];m=k;g=f;break d}k=z[e+40>>2];m=C(-k);l=z[e+36>>2];i=C(-l);g=C(-f)}o=C(C(m*m)+C(C(g*g)+C(i*i)));if(!(o>C(h*h))){break c}z[e+12>>2]=p;f=C(C(1)/C(K(o)));z[e+8>>2]=C(h*m)*f;z[e+4>>2]=C(h*i)*f;z[e>>2]=C(h*g)*f;break b}z[e+12>>2]=j;z[e+8>>2]=k;z[e+4>>2]=l;z[e>>2]=f;if(!n){break a}}J5(b,c,e+96|0,e- -64|0,e,a,d)}xa=e+128|0}function QX(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0);j=xa+-64|0;xa=j;k=z[b+20>>2];n=z[b+16>>2];s=z[b+24>>2];l=z[b>>2];o=C(l+l);m=z[b+8>>2];w=z[b+4>>2];p=z[b+12>>2];q=C(p+p);r=z[a+8>>2];y=C(C(C(o*m)-C(w*q))*r);z[j+52>>2]=s-y;m=C(r*C(C(m*q)+C(o*w)));z[j+48>>2]=k-m;z[j+40>>2]=y+s;z[j+36>>2]=k+m;k=C(r*C(C(l*o)+C(C(p*q)+C(-1))));z[j+44>>2]=n-k;z[j+32>>2]=n+k;z[j+56>>2]=z[a+4>>2];k=z[e>>2];n=z[e+4>>2];l=z[e+8>>2];u[j+8>>1]=x[h>>1]&64511;z[j+24>>2]=-l;z[j+20>>2]=-n;z[j+16>>2]=-k;a=DX(c,d,a,b,j+32|0,j+16|0,f,g,j+8|0,i);if(a){if(t[g+12|0]&1){i=z[e+8>>2];k=z[e+4>>2];f=z[g+40>>2];z[g+16>>2]=C(f*z[e>>2])+z[g+16>>2];z[g+20>>2]=C(f*k)+z[g+20>>2];z[g+24>>2]=C(f*i)+z[g+24>>2]}v[g+8>>2]=-1;z[g+28>>2]=-z[g+28>>2];z[g+36>>2]=-z[g+36>>2];z[g+32>>2]=-z[g+32>>2]}xa=j- -64|0;return a|0}function I4(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;i=xa-16|0;xa=i;g=v[d+8>>2];if(g){k=a+260|0;while(1){v[i+12>>2]=g;h=v[g+20>>2];v[g+20>>2]=0;j=v[a+264>>2];a:{if(j>>>0>=(v[a+268>>2]&2147483647)>>>0){G4(k,i+12|0);break a}v[v[a+260>>2]+(j<<2)>>2]=g;v[a+264>>2]=j+1}g=h;if(g){continue}break}v[d+8>>2]=0}v[d+48>>2]=1;v[i+8>>2]=d;h=v[f+4>>2];b:{if(h>>>0>=(v[f+8>>2]&2147483647)>>>0){x4(f,i+8|0);break b}v[v[f>>2]+(h<<2)>>2]=d;v[f+4>>2]=h+1}v[a+100>>2]=v[a+100>>2]-1;c:{if(!c){g=v[d>>2];c=g;break c}g=v[c+28>>2]}v[i+4>>2]=g;while(1){d=v[g+32>>2];h=v[d+36>>2];d:{if(v[h+48>>2]){break d}if(z[a+252>>2]>2]*z[b+8>>2])+C(C(z[h+12>>2]*z[b>>2])+C(z[b+4>>2]*z[h+16>>2])))-z[h+40>>2])){I4(a,b,d,h,e,f);break d}d=v[e+4>>2];if(d>>>0>=(v[e+8>>2]&2147483647)>>>0){C4(e,i+4|0);break d}v[v[e>>2]+(d<<2)>>2]=g;v[e+4>>2]=d+1}g=v[v[i+4>>2]+28>>2];v[i+4>>2]=g;if((c|0)!=(g|0)){continue}break}xa=i+16|0}function nv(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=xa-352|0;xa=f;v[f+336>>2]=0;v[f+340>>2]=1065353216;v[f+328>>2]=0;v[f+332>>2]=0;v[f+320>>2]=0;v[f+324>>2]=1065353216;v[f+312>>2]=0;v[f+316>>2]=0;v[f+304>>2]=1065353216;v[f+308>>2]=1065353216;v[f+288>>2]=1065353216;v[f+292>>2]=0;t[f+344|0]=0;v[f+296>>2]=0;v[f+300>>2]=0;v[f+280>>2]=0;v[f+284>>2]=0;v[f+272>>2]=1065353216;v[f+276>>2]=0;v[f+256>>2]=0;v[f+260>>2]=1065353216;v[f+248>>2]=0;v[f+252>>2]=0;v[f+240>>2]=0;v[f+244>>2]=1065353216;v[f+232>>2]=0;v[f+236>>2]=0;v[f+224>>2]=1065353216;v[f+228>>2]=1065353216;v[f+208>>2]=1065353216;v[f+212>>2]=0;t[f+264|0]=0;v[f+216>>2]=0;v[f+220>>2]=0;v[f+200>>2]=0;v[f+204>>2]=0;v[f+192>>2]=1065353216;v[f+196>>2]=0;i=a;a=f+272|0;j=f+168|0;h=f+72|0;k=WZ(i,a,j,h);i=h;h=f+144|0;l=a;a=f+192|0;a=tZ(i,f,j,h,c,d,e,g,l,a,k,WZ(b,a,h,f));xa=f+352|0;return a|0}function cJ(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0,m=0;if((Taa(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}i=C(z[a+24>>2]*C(b>>>0));a:{if(i=C(0)){h=~~i>>>0;break a}h=0}l=v[a+16>>2];d=b+h<<2;d=(0-d&12)+d|0;e=d+B(h,12)|0;if(e){f=v[37696]+12|0;e=Ba[v[v[f>>2]+8>>2]](f,e,24422,17301,372)|0}else{e=0}c=d;d=b<<2;e=I9(e,255,d);j=c+e|0;k=d+e|0;if(v[a+36>>2]){m=b-1|0;d=0;while(1){g=B(d,12);f=g+v[a+4>>2]|0;c=v[f+4>>2]<<14&-65536|v[f>>2]>>>2&65535;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=e+(((c>>>16^c)&m)<<2)|0;v[(d<<2)+k>>2]=v[c>>2];v[c>>2]=d;c=v[f+4>>2];g=g+j|0;v[g>>2]=v[f>>2];v[g+4>>2]=c;v[g+8>>2]=v[f+8>>2];d=d+1|0;if(d>>>0>2]){continue}break}}d=v[a>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=k;v[a+16>>2]=h;v[a+4>>2]=j;if(v[a+28>>2]==-1){v[a+28>>2]=l}}function Kt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=xa-48|0;xa=c;d=Ba[v[v[a>>2]+32>>2]](a)|0;e=Ba[v[v[a>>2]+32>>2]](a)|0;a:{if(!(!((d|0)==6|(e|0)==5)|(b|0)!=-1)){a9(v[37696],2,11562,447,70250,0);a=0;break a}b:{if((d|0)==6){v[c+24>>2]=1065353216;v[c+28>>2]=0;v[c+16>>2]=1065353216;v[c+20>>2]=1065353216;v[c+8>>2]=6;v[c+12>>2]=0;Ba[v[v[a>>2]+68>>2]](a,c+8|0)|0;d=v[c+12>>2];d=Ba[v[v[d>>2]+68>>2]](d,b)|0;break b}d=0;if((e|0)!=5){break b}v[c+36>>2]=1065353216;v[c+28>>2]=0;v[c+32>>2]=0;v[c+20>>2]=1065353216;v[c+24>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+12>>2]=1065353216;v[c+16>>2]=1065353216;v[c+8>>2]=5;Ba[v[v[a>>2]+64>>2]](a,c+8|0)|0;e=v[c+44>>2];d=0;if(!v[e+68>>2]){break b}d=Ba[v[v[e>>2]+56>>2]](e,b)|0}e=v[37393];c:{if(w[a+36|0]&2){b=v[a+40>>2];a=x[b+124>>1]==1?b+120|0:v[v[a+32>>2]+4856>>2]+(v[b+120>>2]<<1)|0;break c}a=FR(a+48|0)}a=v[v[e+40>>2]+(x[a+(d<<1)>>1]<<2)>>2]}xa=c+48|0;return a|0}function $5(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0);c=xa+-64|0;xa=c;b=v[b+76>>2];Ba[v[v[b>>2]+28>>2]](b,c+44|0,c+40|0);Y4(c+8|0,v[c+44>>2]);b=v[c+44>>2];d=C(0);a:{if(!b){break a}d=C(0);if(x[b+4>>1]==6){break a}i=c+48|0;Ba[v[v[b>>2]+156>>2]](i,b);Ba[v[v[b>>2]+164>>2]](i,b);f=z[c+52>>2];g=z[c+48>>2];d=z[c+56>>2]}b=v[c+40>>2];e=C(0);b:{if(!b){break b}e=C(0);if(x[b+4>>1]==6){break b}i=c+48|0;Ba[v[v[b>>2]+156>>2]](i,b);Ba[v[v[b>>2]+164>>2]](i,b);h=z[c+56>>2];j=z[c+48>>2];e=z[c+52>>2]}k=z[c+16>>2];d=C(C(h-d)-z[c+32>>2]);h=C(d+d);l=z[c+8>>2];d=C(C(j-g)-z[c+24>>2]);g=C(d+d);d=C(C(e-f)-z[c+28>>2]);e=C(d+d);f=z[c+12>>2];j=C(C(k*h)+C(C(l*g)+C(e*f)));d=z[c+20>>2];m=C(C(d*d)+C(-.5));z[a+8>>2]=C(k*j)+C(C(h*m)-C(d*C(C(l*e)-C(g*f))));z[a+4>>2]=C(f*j)+C(C(e*m)-C(d*C(C(k*g)-C(h*l))));z[a>>2]=C(l*j)+C(C(g*m)-C(d*C(C(f*h)-C(e*k))));xa=c- -64|0}function aZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0);e=v[b+8>>2];n=d;d=v[b+4>>2];k=d+56|0;f=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];i=C(C(z[b+56>>2]*f)+C(C(z[b+24>>2]*g)+C(h*z[b+40>>2])));j=C(C(z[b+48>>2]*f)+C(C(z[b+16>>2]*g)+C(h*z[b+32>>2])));f=C(C(z[b+52>>2]*f)+C(C(z[b+20>>2]*g)+C(h*z[b+36>>2])));c=d+52|0;l=d+72|0;m=d+68|0;b=C(C(z[k>>2]*i)+C(C(z[d+48>>2]*j)+C(f*z[c>>2])))>C(C(z[l>>2]*i)+C(C(z[d+64>>2]*j)+C(f*z[m>>2])));v[n>>2]=b;f=z[(b?k:l)>>2];g=z[(b?d+48|0:d- -64|0)>>2];h=z[(b?c:m)>>2];i=z[e+52>>2];j=z[e+36>>2];o=z[e+20>>2];p=z[e+56>>2];q=z[e+40>>2];r=z[e+24>>2];s=z[e+48>>2];t=z[e+32>>2];u=z[e>>2];w=z[e+16>>2];x=z[e+4>>2];y=z[e+8>>2];v[a+12>>2]=0;z[a+8>>2]=p+C(C(q*f)+C(C(y*g)+C(h*r)));z[a+4>>2]=i+C(C(j*f)+C(C(x*g)+C(h*o)));z[a>>2]=s+C(C(t*f)+C(C(u*g)+C(h*w)))}function M2(a,b,c,d,e,f){var g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);i=xa-48|0;xa=i;g=z[c>>2];j=z[d>>2];h=z[c+4>>2];k=z[d+4>>2];z[i+40>>2]=C(z[d+8>>2]*e)+z[c+8>>2];z[i+36>>2]=h+C(k*e);z[i+32>>2]=g+C(j*e);D_(i+8|0,i+32|0,f,f+12|0,f+24|0,i+28|0,i+24|0);l=z[i+16>>2];e=C(z[i+40>>2]-l);m=z[i+8>>2];g=C(z[i+32>>2]-m);n=z[i+12>>2];j=C(z[i+36>>2]-n);h=C(K(C(C(e*e)+C(C(g*g)+C(j*j)))));if(h>C(0)){k=C(C(1)/h);e=C(e*k);j=C(j*k);g=C(g*k)}a:{if(!(h>2];j=C(z[f+12>>2]-e);g=z[f+4>>2];h=C(z[f+28>>2]-g);k=C(z[f+24>>2]-e);g=C(z[f+16>>2]-g);e=C(C(j*h)-C(k*g));p=g;g=z[f+8>>2];o=C(z[f+32>>2]-g);q=h;h=C(z[f+20>>2]-g);g=C(C(p*o)-C(q*h));j=C(C(h*k)-C(o*j));h=C(K(C(C(e*e)+C(C(g*g)+C(j*j)))));if(!(h>C(0))){break a}h=C(C(1)/h);e=C(e*h);j=C(j*h);g=C(g*h)}z[a+8>>2]=l;z[a+4>>2]=n;z[a>>2]=m;z[b+8>>2]=e;z[b+4>>2]=j;z[b>>2]=g;xa=i+48|0}function q5(a){var b=0,c=0,d=C(0),e=C(0);b=xa-16|0;xa=b;a=v[a+76>>2];Ba[v[v[a>>2]+28>>2]](a,b+8|0,b+12|0);a=v[b+8>>2];a:{if(!a){break a}if(!(Ba[v[v[a>>2]+28>>2]](a)|0)){break a}a=v[b+8>>2];if((Ba[v[v[a>>2]+24>>2]](a)|0)!=1){break a}a=v[b+8>>2];Ba[v[v[a>>2]+216>>2]](b,a);if(t[b|0]&1){break a}c=Ba[v[v[a>>2]+28>>2]](a)|0;d=C(Ba[v[v[c>>2]+440>>2]](c));e=C(Ba[v[v[a>>2]+292>>2]](a));c=d>e;if(!(Ba[v[v[a>>2]+256>>2]](a)|0?1:c)){break a}Ba[v[v[a>>2]+296>>2]](a);Ba[v[v[a>>2]+288>>2]](a,c?d:e)}a=v[b+12>>2];b:{if(!a){break b}if(!(Ba[v[v[a>>2]+28>>2]](a)|0)){break b}a=v[b+12>>2];if((Ba[v[v[a>>2]+24>>2]](a)|0)!=1){break b}a=v[b+12>>2];Ba[v[v[a>>2]+216>>2]](b,a);if(t[b|0]&1){break b}c=Ba[v[v[a>>2]+28>>2]](a)|0;d=C(Ba[v[v[c>>2]+440>>2]](c));e=C(Ba[v[v[a>>2]+292>>2]](a));c=d>e;if(!(Ba[v[v[a>>2]+256>>2]](a)|0?1:c)){break b}Ba[v[v[a>>2]+296>>2]](a);Ba[v[v[a>>2]+288>>2]](a,c?d:e)}xa=b+16|0}function g4(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0,m=0;if(f){j=B(b,12)+f|0;l=v[j>>2];h=B(a,12)+f|0;f=v[h>>2];k=v[j+8>>2];i=v[h+8>>2];h=v[h+4>>2];j=v[j+4>>2]}if(g){i=B(b,6)+g|0;l=x[i>>1];g=B(a,6)+g|0;f=x[g>>1];k=x[i+4>>1];h=x[g+2>>1];j=x[i+2>>1];i=x[g+4>>1]}g=0;m=(c|0)!=(f|0);a:{if(!m&(d|0)==(h|0)){break a}f=(d|0)!=(f|0);if(!f&(c|0)==(h|0)){break a}g=1;if(!m&(d|0)==(i|0)|!f&(c|0)==(i|0)){break a}if((c|0)==(h|0)){g=2;if((d|0)==(i|0)){break a}}g=(d|0)==(h|0)?(c|0)==(i|0)?2:-1:-1}f=0;i=(c|0)!=(l|0);b:{if(!i&(d|0)==(j|0)){break b}h=(d|0)!=(l|0);if(!h&(c|0)==(j|0)){break b}f=1;if(!i&(d|0)==(k|0)|!h&(c|0)==(k|0)){break b}if((c|0)==(j|0)){f=2;if((d|0)==(k|0)){break b}}f=(d|0)==(j|0)?(c|0)==(k|0)?2:-1:-1}c:{if(!((g|0)!=-1&(f|0)!=-1)){a9(v[37696],8,7469,509,22858,0);break c}v[(B(a,12)+e|0)+((g&255)<<2)>>2]=f<<30|b;v[(B(b,12)+e|0)+((f&255)<<2)>>2]=g<<30|a}return(g|0)!=-1&(f|0)!=-1}function B9(a,b){var c=0,d=0,e=0,f=C(0),g=0;if(!(((p(a),j(2))&2147483647)>>>0<2139095041&((p(b),j(2))&2147483647)>>>0<=2139095040)){return C(a+b)}c=(p(b),j(2));if((c|0)==1065353216){return C9(a)}g=c>>>30&2;d=(p(a),j(2));e=g|d>>>31;a:{b:{d=d&2147483647;c:{if(!d){d:{switch(e-2|0){case 0:return C(3.1415927410125732);case 1:break d;default:break c}}return C(-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=C(0);if(c>>>0>d+218103808>>>0){break e}}f=C9(C(D(C(a/b))))}a=f;f:{switch(e|0){case 1:return C(-a);case 2:return C(C(3.1415927410125732)-C(a+C(8.742277657347586e-8)));case 0:break c;default:break f}}return C(C(a+C(8.742277657347586e-8))+C(-3.1415927410125732))}if((d|0)==2139095040){break b}a=z[(e<<2)+106256>>2]}return a}return z[(e<<2)+106240>>2]}return l(2,(p(a),j(2))&-2147483648|1070141403),q()}function z3(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=xa-256|0;xa=l;g=v[f>>2]+1|0;v[f>>2]=g;if(g>>>0>y[e>>2]){v[e>>2]=g}h=v[d+1028>>2];a:{b:{if(!h){break b}while(1){g=(b+j<<5)+a|0;i=(j<<5)+d|0;z[g>>2]=z[i+4>>2];z[g+4>>2]=z[i+8>>2];z[g+8>>2]=z[i+12>>2];z[g+16>>2]=z[i+20>>2];z[g+20>>2]=z[i+24>>2];z[g+24>>2]=z[i+28>>2];v[g+28>>2]=v[i+32>>2];j=j+1|0;if((j|0)!=(h|0)){continue}break}I9(l+128|0,255,128);g=0;i=I9(l,0,128);if(!h){break b}m=(b<<5)+a|0;b=0;while(1){k=b<<5;j=v[(k+d|0)+32>>2];if(!(j&1)){h=v[c>>2];v[c>>2]=h+v[j+1028>>2];v[(k+m|0)+28>>2]=(v[j+1028>>2]<<1)+(h<<11);k=g<<2;v[k+i>>2]=j;v[k+(i+128|0)>>2]=h;h=v[d+1028>>2];g=g+1|0}b=b+1|0;if(h>>>0>b>>>0){continue}break}if(!g){break b}b=0;while(1){h=b<<2;z3(a,v[h+(i+128|0)>>2],c,v[i+h>>2],e,f);v[f>>2]=v[f>>2]-1;b=b+1|0;if((g|0)!=(b|0)){continue}break}if(!d){break a}}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,d)}xa=l+256|0}function T7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0);e=xa-128|0;xa=e;z7(a,b,c,e+96|0,e- -64|0,e+32|0);g=z[e+56>>2];f=z[e+52>>2];i=C(C(g*g)+C(C(f*f)+C(0)));h=z[a+108>>2];n=i>C(h*h);if(n){i=C(C(1)/C(K(i)));g=C(h*C(g*i));f=C(h*C(f*i))}z[e+24>>2]=g;z[e+20>>2]=f;g=C(z[a+112>>2]*C(.5));h=Q9(g);p=G9(g);a:{b:{c:{if(h>C(.9998999834060669)){m=z[e+44>>2];j=z[e+40>>2];k=z[e+36>>2];f=z[e+32>>2];break c}f=z[e+32>>2];m=z[e+44>>2];d:{if(m>=C(0)){k=z[e+36>>2];i=k;j=z[e+40>>2];l=j;g=f;break d}j=z[e+40>>2];l=C(-j);k=z[e+36>>2];i=C(-k);g=C(-f)}o=C(C(l*l)+C(C(g*g)+C(i*i)));if(!(o>C(h*h))){break c}z[e+12>>2]=p;f=C(C(1)/C(K(o)));z[e+8>>2]=C(h*l)*f;z[e+4>>2]=C(h*i)*f;z[e>>2]=C(h*g)*f;break b}z[e+12>>2]=m;z[e+8>>2]=j;z[e+4>>2]=k;z[e>>2]=f;if(!n){break a}}z[e+16>>2]=z[e+48>>2];J5(b,c,e+96|0,e- -64|0,e,a,d)}xa=e+128|0}function JW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0);e=xa+-64|0;xa=e;s=z[b+20>>2];t=z[d+20>>2];u=z[b+24>>2];v=z[d+24>>2];w=z[b+16>>2];x=z[d+16>>2];g=z[c+8>>2];j=z[d+8>>2];k=z[d>>2];q=z[d+4>>2];m=z[d+12>>2];f=z[b>>2];h=C(f+f);l=z[b+8>>2];r=z[b+4>>2];i=z[b+12>>2];n=C(i+i);o=z[a+8>>2];p=C(C(C(h*l)-C(r*n))*o);z[e+56>>2]=-p;l=C(o*C(C(l*n)+C(h*r)));z[e+52>>2]=-l;f=C(o*C(C(f*h)+C(C(i*n)+C(-1))));z[e+48>>2]=-f;z[e+40>>2]=p+p;z[e+36>>2]=l+l;z[e+32>>2]=f+f;f=C(k+k);h=C(m+m);i=C(g*C(C(j*f)-C(q*h)));z[e+24>>2]=C(v-u)-i;j=C(g*C(C(j*h)+C(f*q)));z[e+20>>2]=C(t-s)-j;g=C(g*C(C(k*f)+C(C(m*h)+C(-1))));z[e+16>>2]=C(x-w)-g;z[e+8>>2]=i+i;z[e+4>>2]=j+j;z[e>>2]=g+g;g=H_(e+48|0,e+32|0,e+16|0,e,0,0);xa=e- -64|0;k=C(z[a+4>>2]+z[c+4>>2]);return g<=C(k*k)|0}function sB(a){var b=C(0),c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0);e=v[a+28>>2];if(e){c=v[a+24>>2];m=w[c+1|0];if(m){r=w[c|0]==4?160:96;a=c+176|0;while(1){if(w[a+84|0]&2){b=z[a+76>>2];f=z[a>>2];n=z[c+36>>2];k=z[c+32>>2];d=z[a+4>>2];g=C(g+C(b*C(C(C(f*n)-C(k*d))+z[a+40>>2])));l=z[a+8>>2];s=C(l*k);k=z[c+40>>2];o=C(o+C(b*C(C(s-C(k*f))+z[a+36>>2])));p=C(p+C(b*C(z[a+32>>2]+C(C(d*k)-C(n*l)))));h=C(h+C(b*d));i=C(i+C(b*f));j=C(j+C(b*l))}a=a+r|0;q=q+1|0;if((m|0)!=(q|0)){continue}break}}b=z[c+24>>2];f=z[c+20>>2];d=z[c+16>>2];z[e+8>>2]=j;z[e+4>>2]=h;z[e>>2]=i;g=C(g-C(C(d*h)-C(i*f)));z[e+24>>2]=g;d=C(o-C(C(b*i)-C(j*d)));z[e+20>>2]=d;b=C(p-C(C(f*j)-C(h*b)));z[e+16>>2]=b;a=0;a:{if(!w[c+3|0]){break a}a=1;if(z[c+4>>2]>2]>2]=a}}function iM(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=v[a+268>>2];c=a+216|0;f=v[a+280>>2];if(f){while(1){b=(e<<3)+i|0;a=v[b>>2];b=v[b+4>>2];a:{if(!v[c+8>>2]){break a}d=a>>>0>b>>>0?a:b;b=a>>>0>>0?a:b;a=d<<16|b;a=(a<<15^-1)+a|0;a=B(a>>10^a,9);a=a>>6^a;a=(a<<11^-1)+a|0;g=v[c+36>>2]&(a>>16^a);a=v[v[c>>2]+(g<<2)>>2];if((a|0)==1073741823){break a}j=v[c+4>>2];k=v[c+20>>2];while(1){h=(a<<3)+k|0;if(!((b|0)==v[h>>2]&(d|0)==v[h+4>>2])){a=v[(a<<2)+j>>2];if((a|0)!=1073741823){continue}break a}break}UL(c,g,a&536870911);a=v[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=v[c+8>>2];if((a|0)==(d|0)){break a}b=v[c+16>>2];if(b>>>0>a>>>0&(b|0)==(d|0)){break a}d=a>>>0>b>>>0;a=d?a:b;v[c+8>>2]=a;v[c+36>>2]=a-1;b=1;b:{if(d){break b}b=1;if(a>>>0<=v[c+12>>2]>>>2>>>0){break b}b=a>>>0<=v[c+32>>2]>>>2>>>0}TL(c,b)}e=e+1|0;if((f|0)!=(e|0)){continue}break}}}function dx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=xa-32|0;xa=e;t[a+489|0]=1;d=v[a+264>>2];f=v[a+448>>2]-1|0;if(f){i=v[a+444>>2];while(1){h=f<<5;g=h+b|0;cx(e,v[a+396>>2]+B(f,96)|0,(v[a+452>>2]+B(f,160)|0)+120|0,v[a+384>>2]+B(f,76)|0,g);c=(v[(h+i|0)+24>>2]<<5)+b|0;z[c>>2]=z[e>>2]+z[c>>2];z[c+4>>2]=z[e+4>>2]+z[c+4>>2];z[c+8>>2]=z[e+8>>2]+z[c+8>>2];z[c+16>>2]=z[e+16>>2]+z[c+16>>2];z[c+20>>2]=z[e+20>>2]+z[c+20>>2];z[c+24>>2]=z[e+24>>2]+z[c+24>>2];c=d+h|0;z[c>>2]=z[g>>2]+z[c>>2];z[c+4>>2]=z[g+4>>2]+z[c+4>>2];z[c+8>>2]=z[g+8>>2]+z[c+8>>2];z[c+16>>2]=z[g+16>>2]+z[c+16>>2];z[c+20>>2]=z[g+20>>2]+z[c+20>>2];z[c+24>>2]=z[g+24>>2]+z[c+24>>2];f=f-1|0;if(f){continue}break}}z[d>>2]=z[b>>2]+z[d>>2];z[d+4>>2]=z[b+4>>2]+z[d+4>>2];z[d+8>>2]=z[b+8>>2]+z[d+8>>2];z[d+16>>2]=z[b+16>>2]+z[d+16>>2];z[d+20>>2]=z[b+20>>2]+z[d+20>>2];z[d+24>>2]=z[b+24>>2]+z[d+24>>2];xa=e+32|0}function Ec(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;var g=0,h=0;g=xa-80|0;xa=g;f=x[f>>1];v[g+56>>2]=0;v[g+60>>2]=0;h=g- -64|0;v[h>>2]=0;v[h+4>>2]=0;u[g+24>>1]=f;v[g+48>>2]=0;v[g+52>>2]=0;u[g+44>>1]=0;v[g+40>>2]=-1;v[g+32>>2]=0;v[g+36>>2]=0;v[g+72>>2]=2139095039;v[g+8>>2]=0;v[g+12>>2]=0;v[g>>2]=0;v[g+4>>2]=0;u[g+16>>1]=3;f=xa-112|0;xa=f;v[f+88>>2]=v[g>>2];v[f+92>>2]=v[g+4>>2];v[f+96>>2]=v[g+8>>2];v[f+100>>2]=v[g+12>>2];u[f+104>>1]=x[g+16>>1]|16;v[f+36>>2]=0;v[f+40>>2]=0;u[f+32>>1]=0;v[f+28>>2]=-1;v[f+44>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+56>>2]=0;v[f+60>>2]=2139095039;v[f+20>>2]=0;v[f+24>>2]=0;v[f+80>>2]=0;v[f+72>>2]=0;v[f+76>>2]=0;t[f+68|0]=0;v[f+16>>2]=114448;u[f+8>>1]=x[g+24>>1];Ba[v[v[a>>2]+352>>2]](a,b,c,d,e,f+16|0,f+8|0,f+88|0,0,0,C(0))|0;v[g+40>>2]=v[f+28>>2];a=v[f+24>>2];v[g+32>>2]=v[f+20>>2];v[g+36>>2]=a;xa=f+112|0;xa=g+80|0;return w[f+68|0]}function jI(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0,m=0;if((Taa(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}i=C(z[a+24>>2]*C(b>>>0));a:{if(i=C(0)){h=~~i>>>0;break a}h=0}l=v[a+16>>2];d=b+h<<2;d=(0-d&12)+d|0;e=d+B(h,12)|0;if(e){f=v[37696]+12|0;e=Ba[v[v[f>>2]+8>>2]](f,e,24422,17301,372)|0}else{e=0}c=d;d=b<<2;e=I9(e,255,d);j=c+e|0;k=d+e|0;if(v[a+36>>2]){m=b-1|0;d=0;while(1){g=B(d,12);f=g+v[a+4>>2]|0;c=v[f+4>>2]<<16|x[f>>1];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=e+(((c>>>16^c)&m)<<2)|0;v[(d<<2)+k>>2]=v[c>>2];v[c>>2]=d;c=v[f+4>>2];g=g+j|0;v[g>>2]=v[f>>2];v[g+4>>2]=c;v[g+8>>2]=v[f+8>>2];d=d+1|0;if(d>>>0>2]){continue}break}}d=v[a>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=k;v[a+16>>2]=h;v[a+4>>2]=j;if(v[a+28>>2]==-1){v[a+28>>2]=l}}function bD(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;a:{if(!v[a+36>>2]){break a}h=v[a+12>>2];d=v[b>>2];b=(d<<15^-1)+d|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;f=h+((v[a+20>>2]-1&(b>>>16^b))<<2)|0;b=v[f>>2];if((b|0)==-1){break a}g=v[a+8>>2];e=v[a+4>>2];if((d|0)!=v[e+(b<<3)>>2]){while(1){f=(b<<2)+g|0;b=v[f>>2];if((b|0)==-1){break a}if((d|0)!=v[e+(b<<3)>>2]){continue}break}}v[c>>2]=d;v[c+4>>2]=v[(e+(b<<3)|0)+4>>2];b=f;c=v[f>>2];f=(c<<2)+g|0;v[b>>2]=v[f>>2];b=v[a+36>>2]-1|0;v[a+36>>2]=b;i=1;v[a+32>>2]=v[a+32>>2]+1;if((b|0)!=(c|0)){d=e+(c<<3)|0;e=e+(b<<3)|0;v[d>>2]=v[e>>2];v[d+4>>2]=v[e+4>>2];v[f>>2]=v[(b<<2)+g>>2];b=v[d>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=((v[a+20>>2]-1&(b>>>16^b))<<2)+h|0;b=v[d>>2];e=v[a+36>>2];if((b|0)!=(e|0)){while(1){d=(b<<2)+g|0;b=v[d>>2];if((e|0)!=(b|0)){continue}break}}v[d>>2]=c}v[a+28>>2]=v[a+28>>2]-1}return i}function ZV(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=0;g=xa-4320|0;xa=g;h=z[d+20>>2];o=z[d+16>>2];p=z[d+24>>2];j=z[d>>2];k=C(j+j);i=z[d+8>>2];q=z[d+4>>2];l=z[d+12>>2];m=C(l+l);n=z[c+8>>2];r=C(C(C(k*i)-C(q*m))*n);z[g+20>>2]=p-r;i=C(n*C(C(i*m)+C(k*q)));z[g+16>>2]=h-i;z[g+8>>2]=r+p;z[g+4>>2]=h+i;h=C(n*C(C(j*k)+C(C(l*m)+C(-1))));z[g+12>>2]=o-h;z[g>>2]=o+h;z[g+24>>2]=z[c+4>>2];c=g+4288|0;KU(c,g,g+12|0,g+4316|0);v[g+4232>>2]=-1;z[g+56>>2]=z[g+4316>>2];z[g+52>>2]=z[g+24>>2];v[g+48>>2]=2;s=g+4232|0;t=g+48|0;kV(s,t);v[g+4176>>2]=-1;u=g+4176|0;kV(u,e);v[g+4168>>2]=0;v[g+4172>>2]=0;d=0;v[g+4144>>2]=0;v[g+40>>2]=1065353216;v[g+32>>2]=0;v[g+36>>2]=0;a:{if(!lZ(s,u,c,f,g+32|0,t)){break a}if(!QV(a,b,v[g+4144>>2],g+48|0)){break a}d=v[g+4144>>2]!=0}xa=g+4320|0;return d|0}function sE(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(!v[a+684>>2]){break a}d=(b<<15^-1)+b|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=v[v[a+660>>2]+((v[a+668>>2]-1&(d>>>16^d))<<2)>>2];if((d|0)==-1){break a}e=v[a+656>>2];f=v[a+652>>2];while(1){if(v[f+(d<<3)>>2]!=(b|0)){d=v[e+(d<<2)>>2];if((d|0)!=-1){continue}break a}break}i=v[(f+(d<<3)|0)+4>>2];j=B(i,44);d=j+v[a+644>>2]|0;e=v[d+4>>2];f=v[v[e+16>>2]+(c<<2)>>2];e=hC(e,c);k=f<<2;c=RC(v[d>>2],v[k+v[v[d+8>>2]>>2]>>2],f,v[v[d+4>>2]+8>>2]);b:{if(!c|v[c+40>>2]){break b}g=v[c+36>>2];if(!v[g>>2]){break b}while(1){v[v[v[d+8>>2]>>2]+(v[((h<<2)+g|0)+4>>2]<<2)>>2]=c;h=h+1|0;g=v[c+36>>2];if(h>>>0>2]){continue}break}}c=v[v[d+8>>2]>>2];v[c+k>>2]=v[c+(e<<2)>>2];if((f|0)!=(e|0)){SC(v[v[v[d+8>>2]>>2]+(f<<2)>>2],e,f)}if(!v[v[v[a+644>>2]+j>>2]+588>>2]){Ba[v[v[a>>2]+4>>2]](a,b);return}rE(a,i)}}function Saa(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;Aa=0;break a}if(!d){break h}break g}if(!(c-1&c)){break f}g=(E(c)+33|0)-E(b)|0;e=0-g|0;break d}a=(b>>>0)/0|0;Aa=0;break a}a=32-E(b)|0;if(a>>>0<31){break e}break c}if((c|0)==1){break b}a=Qaa(c);c=a&31;if((a&63)>>>0>=32){a=0;b=b>>>c|0}else{a=b>>>c|0;b=((1<>>c}Aa=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}}Aa=b<<1|d>>>31;a=k|d<<1;break a}d=0;b=0}Aa=b;a=d}return a}function Lc(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;c9();b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?33953:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,188,d,8633,697)|0;d=xa-16|0;xa=d;v[b+8>>2]=a;v[b+4>>2]=140304;v[b>>2]=140216;I9(b+12|0,0,92);v[b+112>>2]=0;v[b+116>>2]=0;v[b+104>>2]=1061158912;v[b+108>>2]=-1;Hm(b+80|0,64);v[b+144>>2]=0;v[b+148>>2]=0;t[b+140|0]=0;v[b+136>>2]=65792;v[b+128>>2]=0;v[b+132>>2]=1065353216;v[b+120>>2]=0;v[b+124>>2]=0;v[b+152>>2]=0;v[b+156>>2]=0;v[b+160>>2]=0;v[b+164>>2]=0;v[b+176>>2]=0;v[b+180>>2]=0;v[b+168>>2]=1061158912;v[b+172>>2]=-1;mn(b+144|0,64);c=v[37696];e=b,f=(h=c+12|0,i=28,j=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,k=16755,l=113,g=v[v[c+12>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0),v[e+184>>2]=f;c=xa-16|0;xa=c;xa=c+16|0;a=Ba[v[v[a>>2]+28>>2]](a)|0;t[d+8|0]=1;Ba[v[v[a>>2]+132>>2]](a,b+4|0,d+8|0,0);xa=d+16|0;return b|0}function EV(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0);l=z[b>>2];o=z[d>>2];p=z[e>>2];q=z[f>>2];m=z[b+4>>2];n=z[d+4>>2];h=z[e+4>>2];r=z[f+4>>2];g=z[c+4>>2];t=C(g*z[e+8>>2]);j=z[c+8>>2];u=C(j*z[f+8>>2]);i=C(t+u);v=z[b+8>>2];k=z[c>>2];w=C(k*z[d+8>>2]);s=C(v-w);z[a+92>>2]=i+s;x=C(g*h);r=C(j*r);h=C(x+r);y=C(k*n);n=C(m-y);z[a+88>>2]=h+n;p=C(g*p);q=C(j*q);g=C(p+q);o=C(k*o);j=C(l-o);z[a+84>>2]=g+j;k=C(w+v);z[a+80>>2]=i+k;m=C(y+m);z[a+76>>2]=h+m;l=C(o+l);z[a+72>>2]=g+l;z[a+20>>2]=k-i;z[a+16>>2]=m-h;z[a+12>>2]=l-g;z[a+8>>2]=s-i;z[a+4>>2]=n-h;z[a>>2]=j-g;i=C(t-u);z[a+68>>2]=k-i;h=C(x-r);z[a- -64>>2]=m-h;g=C(p-q);z[a+60>>2]=l-g;z[a+56>>2]=s-i;z[a+52>>2]=n-h;z[a+48>>2]=j-g;z[a+44>>2]=i+s;z[a+40>>2]=h+n;z[a+36>>2]=g+j;z[a+32>>2]=i+k;z[a+28>>2]=h+m;z[a+24>>2]=g+l}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;var g=0,h=0,i=0;if(f){Ba[v[v[f>>2]+20>>2]](f)}EL(a,d);c=v[a+124>>2];d=v[a+128>>2];b=v[a+88>>2];v[b+68>>2]=v[b+24>>2];v[b+72>>2]=d;v[b- -64>>2]=c;c=v[b>>2];a:{if(!c){break a}d=b+36|0;b=v[b+12>>2];f=0;while(1){e=v[(b+B(f,40)|0)+28>>2];if(e){rL(e,d)}f=f+1|0;if((c|0)!=(f|0)){continue}break}b=v[a+88>>2];d=v[b>>2];if(!d){break a}c=v[b+12>>2];e=0;f=0;if(d-1>>>0>=3){h=d&-4;while(1){g=v[(c+B(f,40)|0)+28>>2];if(g){v[g+116>>2]=0}g=v[(c+B(f|1,40)|0)+28>>2];if(g){v[g+116>>2]=0}g=v[(c+B(f|2,40)|0)+28>>2];if(g){v[g+116>>2]=0}g=v[(c+B(f|3,40)|0)+28>>2];if(g){v[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=v[(c+B(f,40)|0)+28>>2];if(h){v[h+116>>2]=0}f=f+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}vL(b+36|0,v[b+24>>2],a,b+76|0,b+84|0);I9(v[b+76>>2],0,v[b+80>>2]<<2)}function sH(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;v[a+160>>2]=b;a:{if(b){h=v[b+48>>2]&-128|e<<1;v[a+144>>2]=h|1;b=v[a+44>>2];z[b+156>>2]=c;if(w[b+44|0]&32){i=h>>>7|0;g=i+32>>>5|0;b=v[a+40>>2];b:{if(g>>>0<=(v[b+4740>>2]&2147483647)>>>0){e=v[b+4736>>2];break b}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,g<<2,24422,17999,438)|0;f=v[b+4736>>2];c:{if(!f){break c}H9(e,f,v[b+4740>>2]<<2);if(v[b+4740>>2]<0){break c}f=v[b+4736>>2];if(!f){break c}j=v[37696]+12|0;Ba[v[v[j>>2]+12>>2]](j,f)}f=v[b+4740>>2];I9((f<<2)+e|0,0,g-f<<2);v[b+4740>>2]=g;v[b+4736>>2]=e}b=(h>>>10&4194300)+e|0;v[b>>2]=v[b>>2]|1<>2]>=4294967294){SO(v[a+40>>2],a);$G(a)}bG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);return}if(!v[a+160>>2]){cG(v[v[a+40>>2]+1e3>>2],v[a+144>>2])}dG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);if(y[a+152>>2]>4294967293){break a}UO(v[a+40>>2],a);aH(a);return}v[a+144>>2]=-125}}function kZ(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=0;n=z[i+8>>2];p=z[d+8>>2];t=z[i>>2];q=z[d>>2];u=z[i+4>>2];r=z[d+4>>2];o=z[d+12>>2];v=C(C(C(n*p)+C(C(t*q)+C(u*r)))+o);s=o;o=z[j+8>>2];w=z[j>>2];x=z[j+4>>2];a:{if(C(v*C(s+C(C(o*p)+C(C(w*q)+C(r*x)))))>C(0)){break a}y=p;p=C(o-n);o=q;q=C(w-t);s=r;r=C(x-u);o=C(C(y*p)+C(C(o*q)+C(s*r)));if(o==C(0)){break a}s=n;n=C(v/o);z[l+8>>2]=s-C(p*n);z[l+4>>2]=u-C(r*n);z[l>>2]=t-C(q*n);d=e<<2;e=f<<2;g=C(C(C(z[d+c>>2]*C(z[e+l>>2]-z[a+e>>2]))-C(C(z[d+l>>2]-z[a+d>>2])*z[c+e>>2]))*g);z[k>>2]=g;if(g>2];n=z[h+4>>2];m=C(z[l>>2]-C(g*z[h>>2]));z[l>>2]=m;n=C(z[l+4>>2]-C(g*n));z[l+4>>2]=n;g=C(z[l+8>>2]-C(g*p));z[l+8>>2]=g;A=C(C(C(z[a+8>>2]-g)*C(z[b+8>>2]-g))+C(C(C(z[a>>2]-m)*C(z[b>>2]-m))+C(C(z[a+4>>2]-n)*C(z[b+4>>2]-n))))>2]=0;bz(a,0,g+8|0);zw(a,v[a+4>>2]);break a}e=v[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}v[g+12>>2]=0;bz(a,0,g+12|0);zw(a,v[a+4>>2]);if(d>>>0<=(v[a+8>>2]&2147483647)>>>0){break b}zw(a,d)}v[a+4>>2]=b;I9(v[a>>2],255,b<<2);h=v[c+40>>2];if(!h){break a}e=v[c>>2];k=v[c+8>>2];c=v[a>>2];b=0;while(1){d=B(b,28)+k|0;a=v[d+24>>2];c:{if(!(a&1)){break c}a=a>>>1|0;f=a&15;if(!f){break c}i=a&1;a=0;if((f|0)!=1){l=f-i|0;f=0;while(1){j=a<<2;v[c+(v[j+(e+(v[d+24>>2]>>>3&536870908)|0)>>2]<<2)>>2]=b;v[c+(v[(e+(v[d+24>>2]>>>3&536870908)|0)+(j|4)>>2]<<2)>>2]=b;a=a+2|0;f=f+2|0;if((l|0)!=(f|0)){continue}break}}if(!i){break c}v[c+(v[(e+(v[d+24>>2]>>>3&536870908)|0)+(a<<2)>>2]<<2)>>2]=b}b=b+1|0;if((h|0)!=(b|0)){continue}break}}xa=g+16|0}function Vn(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=xa-16|0;xa=f;a:{b:{if(!v[a+92>>2]){break b}e=(b<<15^-1)+b|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=v[v[a+68>>2]+((v[a+76>>2]-1&(e>>>16^e))<<2)>>2];if((e|0)==-1){break b}g=v[a- -64>>2];h=v[a+60>>2];while(1){if(v[(e<<3)+h>>2]==(b|0)){break a}e=v[(e<<2)+g>>2];if((e|0)!=-1){continue}break}}e=v[37696];g=Ba[v[v[e>>2]+20>>2]](e)|0?24775:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,44,g,7621,597)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+24>>2]=1061158912;v[e+28>>2]=-1;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;Hm(e,64);c=w[c|0];t[e+41|0]=d;t[e+40|0]=c;v[f+12>>2]=b;b=Wn(a+56|0,f+12|0,f+11|0);if(!w[f+11|0]){c=v[f+12>>2];v[b+4>>2]=e;v[b>>2]=c;t[a+100|0]=1;break a}a=v[e>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,e)}xa=f+16|0}function K6(a){a=a|0;var b=0,c=0;v[a>>2]=145984;if(v[a+28>>2]){while(1){c=v[(v[a+4>>2]+B(b,28)|0)+4>>2];v[c+8>>2]=v[c+8>>2]+1;b=b+1|0;if(b>>>0>2]){continue}break}}t[a+32|0]=1;b=v[a+20>>2];if(!w[b+76|0]){t[b+76|0]=1;v[b+72>>2]=v[b+72>>2]+1}a:{if(!v[a+28>>2]){break a}b=0;while(1){b=b+1|0;c=v[a+28>>2];if(b>>>0>>0){continue}break}if(!c){break a}b=0;while(1){c=v[a+4>>2]+B(b,28)|0;Ba[v[v[c>>2]>>2]](c)|0;b=b+1|0;if(b>>>0>2]){continue}break}}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+24>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+20>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+16>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+8>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+12>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function DJ(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=v[a+1904>>2];if(d){if(v[a+1912>>2]>0){while(1){b=v[(c<<2)+d>>2];$O(v[a>>2],b?b+4|0:0);c=c+1|0;if((c|0)>2]){continue}break}d=v[a+1904>>2]}v[a+1912>>2]=0;f=v[v[a>>2]+976>>2];b=v[f+16>>2];a:{if(!(b>>>0<=d>>>0&b+v[f+20>>2]>>>0>d>>>0)){if(!d){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d);break a}i=v[f+4>>2];g=v[f+8>>2];e=g;while(1){h=j;j=h+1|0;b=e;e=b-1|0;c=(e<<2)+i|0;if(y[c>>2]>>0){continue}break}b:{if(b>>>0>=g>>>0){break b}e=h&3;if(e){d=0;while(1){v[c>>2]=v[v[f+4>>2]+(b<<2)>>2];b=b+1|0;c=c+4|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}if(h-1>>>0<3){break b}while(1){e=b<<2;v[c>>2]=v[e+v[f+4>>2]>>2];v[c+4>>2]=v[(e+v[f+4>>2]|0)+4>>2];v[c+8>>2]=v[(e+v[f+4>>2]|0)+8>>2];v[c+12>>2]=v[(e+v[f+4>>2]|0)+12>>2];c=c+16|0;b=b+4|0;if((g|0)!=(b|0)){continue}break}}v[f+8>>2]=g-1}v[a+1904>>2]=0}}function pp(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=C(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,w=0;j=xa-32|0;xa=j;a:{if(y[a+28>>2]>=y[a+96>>2]){break a}l=a+40|0;k=v[l>>2];v[l>>2]=k?k:-1;if((k|0)==1){a9(v[37696],8,5611,484,64361,0);break a}v[a+28>>2]=v[a+28>>2]+1;k=a+12|0;o=x[g+16>>1];p=v[g+12>>2];q=v[g+8>>2];r=v[g+4>>2];s=v[g>>2];w=x[f>>1];m=v[a+24>>2];g=m+40|0;f=v[a+20>>2]&2147483647;b:{if(g>>>0<=f>>>0){break b}n=B(g,3);if(f>>>0>=n>>>0){break b}np(k,n)}op(k,g);f=v[a+12>>2]+v[a+24>>2]|0;v[f+28>>2]=h;v[f+8>>2]=s;u[f+4>>1]=w;v[f>>2]=-16;t[f+38|0]=0;u[f+36>>1]=e;v[f+32>>2]=i;u[f+24>>1]=o;v[f+20>>2]=p;v[f+16>>2]=q;v[f+12>>2]=r;v[a+24>>2]=g;e=v[a+108>>2];v[((e|0)==-16?a+108|0:e+v[a+12>>2]|0)>>2]=m;v[a+108>>2]=m;v[j+28>>2]=0;v[j+20>>2]=0;v[j+24>>2]=0;z[j+16>>2]=d;v[j+12>>2]=c;v[j+8>>2]=b;qp(k,j+8|0);v[l>>2]=0}xa=j+32|0}function hZ(a,b,c,d,e,f,g,h,i,j,k,l){var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=0;n=z[i+8>>2];m=z[d+8>>2];r=z[i>>2];p=z[d>>2];u=z[i+4>>2];q=z[d+4>>2];o=z[d+12>>2];v=C(C(C(n*m)+C(C(r*p)+C(u*q)))+o);s=o;o=z[j+8>>2];t=z[j>>2];w=z[j+4>>2];a:{if(C(v*C(s+C(C(o*m)+C(C(t*p)+C(q*w)))))>C(0)){break a}s=m;m=C(o-n);o=p;p=C(t-r);t=q;q=C(w-u);o=C(C(s*m)+C(C(o*p)+C(t*q)));if(o==C(0)){break a}s=n;n=C(v/o);z[l+8>>2]=s-C(m*n);z[l+4>>2]=u-C(q*n);z[l>>2]=r-C(p*n);d=e<<2;e=f<<2;g=C(C(C(z[d+c>>2]*C(z[e+l>>2]-z[a+e>>2]))-C(C(z[d+l>>2]-z[a+d>>2])*z[c+e>>2]))*g);z[k>>2]=g;if(g>2];m=z[h+4>>2];n=C(z[l>>2]-C(g*z[h>>2]));z[l>>2]=n;m=C(z[l+4>>2]-C(g*m));z[l+4>>2]=m;g=C(z[l+8>>2]-C(g*r));z[l+8>>2]=g;x=C(C(C(z[a+8>>2]-g)*C(z[b+8>>2]-g))+C(C(C(z[a>>2]-n)*C(z[b>>2]-n))+C(C(z[a+4>>2]-m)*C(z[b+4>>2]-m))))>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}h=C(z[a+24>>2]*C(b>>>0));a:{if(h=C(0)){g=~~h>>>0;break a}g=0}o=v[a+16>>2];d=b+g<<2;d=(0-d&12)+d|0;e=d+(g<<3)|0;if(e){c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,e,24422,17301,372)|0}f=c;c=b<<2;e=I9(f,255,c);k=e+d|0;l=c+e|0;if(v[a+36>>2]){p=b-1|0;q=v[a+4>>2];d=0;while(1){i=5381;m=d<<3;n=m+q|0;f=v[n>>2];j=f;c=w[f|0];if(c){while(1){i=B(i,33)^c&255;c=w[j+1|0];j=j+1|0;if(c){continue}break}}c=e+((i&p)<<2)|0;v[(d<<2)+l>>2]=v[c>>2];v[c>>2]=d;c=k+m|0;v[c>>2]=f;v[c+4>>2]=v[n+4>>2];d=d+1|0;if(d>>>0>2]){continue}break}}c=v[a>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=l;v[a+16>>2]=g;v[a+4>>2]=k;if(v[a+28>>2]==-1){v[a+28>>2]=o}}function QW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);d=v[b+8>>2];l=z[d+52>>2];m=z[d+36>>2];n=z[d+20>>2];o=z[d+56>>2];p=z[d+40>>2];h=v[b+4>>2];f=z[h+56>>2];q=z[b+56>>2];r=z[b+24>>2];s=z[b+40>>2];t=z[b+48>>2];u=z[b+32>>2];w=z[d+24>>2];k=z[h+52>>2];x=z[b+52>>2];y=z[b+20>>2];A=z[b+36>>2];B=z[d+48>>2];D=z[d+32>>2];E=z[d>>2];F=z[d+16>>2];G=z[d+4>>2];H=z[d+8>>2];g=z[h+48>>2];I=z[b+16>>2];e=z[c+8>>2];i=z[c>>2];j=z[c+4>>2];v[a+12>>2]=0;f=C(C(q*e)+C(C(r*i)+C(j*s)))>C(0)?f:C(-f);g=C(C(t*e)+C(C(I*i)+C(j*u)))>C(0)?g:C(-g);e=C(C(x*e)+C(C(y*i)+C(j*A)))>C(0)?k:C(-k);z[a+8>>2]=o+C(C(p*f)+C(C(H*g)+C(w*e)));z[a+4>>2]=l+C(C(m*f)+C(C(G*g)+C(e*n)));z[a>>2]=B+C(C(D*f)+C(C(E*g)+C(e*F)))}function pe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);d=xa+-64|0;xa=d;Ba[v[v[b>>2]+76>>2]](d+32|0,b);Ba[v[v[b>>2]+112>>2]](d,b);i=z[d+56>>2];k=z[d+52>>2];f=z[d+20>>2];g=z[d+24>>2];s=z[d+48>>2];l=z[d+36>>2];e=z[d+44>>2];m=z[d+40>>2];h=z[d+16>>2];n=z[d+32>>2];t=z[c>>2];j=z[c+8>>2];o=z[c+4>>2];Ba[v[v[b>>2]+156>>2]](a,b);Ba[v[v[b>>2]+164>>2]](d,b);q=z[d>>2];r=z[d+4>>2];p=j;u=i;g=C(g+g);h=C(h+h);f=C(f+f);i=C(C(m*g)+C(C(n*h)+C(l*f)));j=C(C(e*e)+C(-.5));p=C(p-C(u+C(C(m*i)+C(C(g*j)+C(e*C(C(n*f)-C(h*l)))))));k=C(o-C(k+C(C(l*i)+C(C(f*j)+C(e*C(C(m*h)-C(g*n)))))));o=z[d+8>>2];z[a>>2]=C(C(r*p)-C(k*o))+z[a>>2];e=C(t-C(s+C(C(n*i)+C(C(h*j)+C(e*C(C(l*g)-C(f*m)))))));z[a+4>>2]=C(C(o*e)-C(p*q))+z[a+4>>2];z[a+8>>2]=C(C(q*k)-C(e*r))+z[a+8>>2];xa=d- -64|0}function UL(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{b:{f=v[a>>2];e=f+(b<<2)|0;b=v[e>>2];if((c|0)==(b|0)){break b}g=v[a+4>>2];while(1){d=b;b=v[g+(b<<2)>>2];if((c|0)!=(b|0)){continue}break}if((d|0)==1073741823){break b}e=v[a+4>>2];v[e+(d<<2)>>2]=v[(c<<2)+e>>2];break a}b=e;e=v[a+4>>2];v[b>>2]=v[e+(c<<2)>>2]}d=v[a+28>>2]-1|0;if((d|0)!=(c|0)){c:{d:{h=v[a+20>>2];g=h+(d<<3)|0;b=v[g+4>>2]<<16|v[g>>2];b=(b<<15^-1)+b|0;b=B(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;i=v[a+36>>2]&(b>>16^b);j=f+(i<<2)|0;b=v[j>>2];if((d|0)==(b|0)){break d}while(1){f=b;b=v[(b<<2)+e>>2];if((d|0)!=(b|0)){continue}break}if((f|0)==1073741823){break d}v[(f<<2)+e>>2]=v[(d<<2)+e>>2];break c}v[j>>2]=v[(d<<2)+e>>2]}f=v[g+4>>2];b=(c<<3)+h|0;v[b>>2]=v[g>>2];v[b+4>>2]=f;b=v[a+24>>2];t[b+c|0]=w[b+d|0];b=v[a>>2]+(i<<2)|0;v[v[a+4>>2]+(c<<2)>>2]=v[b>>2];v[b>>2]=c;d=v[a+28>>2]-1|0}v[a+28>>2]=d}function Aw(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(b,76);if(!c){break a}e=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?26097:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,76)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];z[c+48>>2]=z[d+48>>2];z[c+52>>2]=z[d+52>>2];z[c+56>>2]=z[d+56>>2];z[c+60>>2]=z[d+60>>2];z[c- -64>>2]=z[d- -64>>2];z[c+68>>2]=z[d+68>>2];v[c+72>>2]=v[d+72>>2];d=d+76|0;c=c+76|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}function oC(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=129652;dC(a+7664|0);b=a+16|0;v[b>>2]=0;v[b+4>>2]=0;t[b+7632|0]=1;if(w[b+7633|0]){c=v[b+8>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+8>>2]=0;c=v[b+12>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+12>>2]=0;c=v[b+16>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+16>>2]=0}c=v[b+20>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+20>>2]=0;c=v[b+24>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+636>>2]=0;v[b+640>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;c=v[b+624>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);v[b+624>>2]=0}c=v[b+628>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);v[b+628>>2]=0}c=v[b+620>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);v[b+620>>2]=0}v[b+608>>2]=0;v[b+612>>2]=0;v[b+616>>2]=0;AC(b+608|0);return a|0}function y9(){ha(110164,23304);ia(110208,14839,1,1,0);ja(110220,5377,1,-128,127);ja(110244,5370,1,-128,127);ja(110232,5368,1,0,255);ja(110256,2133,2,-32768,32767);ja(110268,2124,2,0,65535);ja(110280,2448,4,-2147483648,2147483647);ja(110292,2439,4,0,-1);ja(110324,19901,4,-2147483648,2147483647);ja(110336,19892,4,0,-1);Paa(110348,3076,-2147483648,2147483647);Paa(110360,3075,0,-1);ka(110372,3069,4);ka(110384,22596,8);la(111548,19974);la(105568,63633);ma(105640,4,19961);ma(105716,2,19986);ma(105792,4,20001);na(111404,14906);oa(105832,0,63564);oa(105872,0,63666);oa(105912,1,63594);oa(105952,2,63196);oa(105992,3,63227);oa(106032,4,63267);oa(106072,5,63296);oa(106112,4,63703);oa(106152,5,63733);oa(105872,0,63398);oa(105912,1,63365);oa(105952,2,63464);oa(105992,3,63430);oa(106032,4,63531);oa(106072,5,63497);oa(106192,6,63334);oa(106232,7,63772)}function L0(a){a=a|0;var b=0,c=0;v[a+8>>2]=144016;v[a>>2]=143920;a:{if(!(t[a+6|0]&1)){break a}b=v[a+56>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+56>>2]=0;b=v[a+72>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+72>>2]=0;b=v[a+76>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+76>>2]=0;b=v[a+68>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+68>>2]=0;b=v[a+28>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+28>>2]=0;b=v[a+24>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+24>>2]=0;b=v[a+84>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+84>>2]=0;b=v[a+88>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+88>>2]=0;b=v[a+92>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+92>>2]=0;b=v[a+96>>2];if(!b){break a}b=k1(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function g$(a,b,c){a=a|0;b=C(b);c=C(c);var d=C(0),e=C(0),f=C(0),g=0,h=0,i=0;b=b>C(0)?b:C(0);d=C(C(C(1)-C(C(D(C(b+C(1))))*C(9.999999974752427e-7)))+z[a+48>>2]);c=c>C(0)?c:C(0);e=C(C(C(1)-C(C(D(C(c+C(1))))*C(9.999999974752427e-7)))+z[a+52>>2]);d=b>2])+e);a:{if(b=C(0)){h=~~b>>>0;break a}h=0}b=C(c-e);c=C(d-f);g=v[a+60>>2];i=g+(h<<2)|0;b:{if(t[i+2|0]<0){d=C(u[i>>1]);a=v[a+44>>2]+h|0;e=C(u[((a<<2)+g|0)+4>>1]);if(b>c){f=c;c=C(u[((h<<2)+g|0)+4>>1]);b=C(C(f*C(e-c))+C(C(b*C(c-d))+d));break b}f=b;b=C(u[(a<<2)+g>>1]);b=C(C(f*C(e-b))+C(C(c*C(b-d))+d));break b}d=C(u[i+4>>1]);a=v[a+44>>2]+h|0;e=C(u[(a<<2)+g>>1]);if(C(c+b)>1]);b=C(C(f*C(e-c))+C(C(b*C(d-c))+c));break b}f=C(C(1)-c);c=C(u[((a<<2)+g|0)+4>>1]);b=C(C(f*C(d-c))+C(C(C(C(1)-b)*C(e-c))+c))}return C(b)}function YR(a,b){var c=C(0),d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);e=v[a+28>>2];a:{k=v[v[a+4>>2]+44>>2];if(!w[k+9|0]){a=k+16|0;break a}a=k+16|0;if(w[k+45|0]){break a}th(a,e+32|0,k+48|0,b);return}p=z[a+20>>2];q=z[a+24>>2];l=z[e+52>>2];m=z[e+48>>2];n=z[e+56>>2];r=z[a+16>>2];c=z[a+12>>2];f=z[e+44>>2];g=z[a+8>>2];h=z[e+40>>2];i=z[a>>2];d=z[e+32>>2];j=z[a+4>>2];o=z[e+36>>2];z[b+12>>2]=C(c*f)-C(C(g*h)+C(C(i*d)+C(j*o)));z[b+8>>2]=C(g*f)+C(C(C(i*o)-C(d*j))+C(c*h));z[b+4>>2]=C(j*f)+C(C(c*o)+C(C(g*d)-C(h*i)));z[b>>2]=C(i*f)+C(C(c*d)+C(C(j*h)-C(o*g)));f=C(C(c*c)+C(-.5));h=C(C(g*n)+C(C(i*m)+C(j*l)));d=C(C(C(n*f)+C(c*C(C(i*l)-C(m*j))))+C(g*h));z[b+24>>2]=q+C(d+d);d=C(C(j*h)+C(C(l*f)+C(c*C(C(g*m)-C(n*i)))));z[b+20>>2]=p+C(d+d);c=C(C(i*h)+C(C(m*f)+C(c*C(C(j*n)-C(l*g)))));z[b+16>>2]=r+C(c+c)}function s$(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);m=z[b+32>>2];i=C(z[a+8>>2]-z[b+44>>2]);h=C(m*i);n=z[b+24>>2];j=C(z[a>>2]-z[b+36>>2]);k=C(z[a+4>>2]-z[b+40>>2]);o=z[b+28>>2];l=C(C(n*j)+C(k*o));p=z[b+20>>2];q=z[b+12>>2];r=z[b+16>>2];e=C(C(p*i)+C(C(q*j)+C(k*r)));c=z[b+48>>2];f=C(-c);s=z[b+8>>2];t=z[b>>2];u=z[b+4>>2];d=C(C(s*i)+C(C(t*j)+C(k*u)));g=1;a:{if(f>d){break a}f=d;g=0;if(!(c>2];d=C(-c);b:{c:{if(d>e){c=d;break c}if(!(c>2];c=C(-d);d:{e:{if(!(h>2];a=0;if(c>C(e*e)){break d}}a=1}return a}function pI(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=xa-48|0;xa=f;a:{if(b>>>0<2){break a}j=v[a+392>>2];if(!j){break a}k=v[a+388>>2];l=v[v[a+276>>2]+4>>2];while(1){g=v[k+(i<<2)>>2];h=l+B(v[g>>2],24)|0;z[h>>2]=z[g+36>>2];z[h+4>>2]=z[g+40>>2];z[h+8>>2]=z[g+44>>2];z[h+12>>2]=z[g+48>>2];z[h+16>>2]=z[g+52>>2];z[h+20>>2]=z[g+56>>2];i=i+1|0;if((j|0)!=(i|0)){continue}break}}q=v[a+180>>2];n=v[a+264>>2];g=v[a+260>>2];o=v[a+248>>2];h=v[a+244>>2];p=v[a+232>>2];i=v[a+228>>2];m=v[a+276>>2];j=v[m+8>>2];k=v[v[a+192>>2]+4>>2];l=v[m+4>>2];t[f+44|0]=w[a+365|0]?1:w[m+16|0]!=0;v[f+40>>2]=j;v[f+36>>2]=k;v[f+32>>2]=a+208;v[f+28>>2]=q;v[f+24>>2]=l;v[f+20>>2]=n;v[f+16>>2]=g;v[f+12>>2]=o;v[f+8>>2]=h;v[f+4>>2]=p;v[f>>2]=i;t[a+365|0]=0;b:{if(o?1:n|p){a=v[a+272>>2];Ba[v[v[a>>2]+44>>2]](a,b,c,f,d,e);break b}Ba[v[v[e>>2]+20>>2]](e)}xa=f+48|0}function _z(a){a=a|0;var b=0,c=0,d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);d=v[a+44>>2];f=z[d+56>>2];e=z[d+60>>2];g=z[d+96>>2];h=z[d+92>>2];i=z[d+52>>2];j=z[d+88>>2];k=z[d+84>>2];l=z[d+100>>2];b=v[d+336>>2];c=v[b>>2];if(c){v[b>>2]=v[c>>2]}if(!c){b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?26947:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,12195,c,19395,82)|0;b=c+19&-16;v[b-4>>2]=b-c;c=gB(b,v[d+340>>2])}v[c+12052>>2]=0;b=c+11856|0;v[b>>2]=0;v[b+4>>2]=0;b=v[v[a+40>>2]+12128>>2];if(b>>>0>(v[c+12056>>2]&2147483647)>>>0){yw(c+12048|0,b);b=v[v[a+40>>2]+12128>>2]}v[c+12052>>2]=b;if(v[a+32>>2]){e=e>2]+(d<<2)>>2];Ba[v[v[b>>2]+144>>2]](b,i,e,v[a+48>>2],c,l,k,j,h,g,v[a+36>>2],v[a+40>>2]+11836|0,v[v[a+44>>2]+168>>2]);d=d+1|0;if(d>>>0>2]){continue}break}}a=v[v[a+44>>2]+336>>2];v[c>>2]=v[a>>2];v[a>>2]=c}function AR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=v[a+20>>2];c=v[a+28>>2];v[c+1092>>2]=v[c+1092>>2]+1;sI(v[c+980>>2],0,0,v[v[c+976>>2]+1156>>2]);tP(c,b);a:{if(v[v[c+988>>2]+128>>2]){break a}b=v[c+1160>>2];if(!b){break a}a=v[c+980>>2];while(1){e=v[v[v[c+1156>>2]+(g<<2)>>2]+32>>2];if(e){while(1){if(w[v[e+28>>2]- -64|0]&5){h=v[e+8>>2];i=h&2147483647;f=i+32>>>5|0;b:{if(f>>>0<=(v[a+164>>2]&2147483647)>>>0){b=v[a+160>>2];break b}b=v[a+168>>2];b=Ba[v[v[b>>2]+8>>2]](b,f<<2,17999,438)|0;d=v[a+160>>2];c:{if(!d){break c}H9(b,d,v[a+164>>2]<<2);if(v[a+164>>2]<0){break c}d=v[a+160>>2];if(!d){break c}j=v[a+168>>2];Ba[v[v[j>>2]+12>>2]](j,d)}d=v[a+164>>2];I9((d<<2)+b|0,0,f-d<<2);v[a+164>>2]=f;v[a+160>>2]=b}b=(i>>>3&268435452)+b|0;v[b>>2]=v[b>>2]|1<>2];if(e){continue}break}b=v[c+1160>>2]}g=g+1|0;if(g>>>0>>0){continue}break}}} -function hu(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=x[a+4>>1];d=v[a+16>>2];a:{if((d|0)==-1){if(!f){break a}h=(f|0)==1?a:v[a>>2];d=a+8|0;c=0;while(1){e=c<<2;g=v[e+h>>2];if(w[(w[g+36|0]&64?v[g+40>>2]+52|0:g+112|0)|0]&2){IE(b,-1,v[e+(x[a+12>>1]==1?d:v[a+8>>2])>>2])}v[e+(x[a+12>>1]==1?d:v[a+8>>2])>>2]=-1;c=c+1|0;if((f|0)!=(c|0)){continue}break}break a}c=(x[c+4>>1]&65527)==5;e=v[b+72>>2];Ba[v[v[e>>2]+4>>2]](e,d);b=B(c,36)+b|0;v[b+32>>2]=v[b+32>>2]+1;b:{if(!f){break b}b=a+8|0;g=x[a+12>>1];c=0;if(f-1>>>0>=3){h=f&65532;d=(g|0)==1;while(1){e=c<<2;v[e+(d?b:v[b>>2])>>2]=-1;v[(e|4)+(d?b:v[b>>2])>>2]=-1;v[(e|8)+(d?b:v[b>>2])>>2]=-1;v[(e|12)+(d?b:v[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){v[(c<<2)+(d?b:v[b>>2])>>2]=-1;c=c+1|0;j=j+1|0;if((f|0)!=(j|0)){continue}break}}v[a+16>>2]=-1}}function t$(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);f=xa-96|0;xa=f;k=z[e+8>>2];l=z[e+12>>2];m=z[e>>2];n=z[e+4>>2];o=z[d+8>>2];p=z[d+12>>2];q=z[d>>2];r=z[d+4>>2];s=z[c+8>>2];g=z[a+8>>2];t=z[c+12>>2];h=z[a+12>>2];u=z[c>>2];i=z[a>>2];j=z[a+4>>2];z[f+84>>2]=z[c+4>>2]-j;z[f+80>>2]=u-i;z[f+92>>2]=t-h;z[f+88>>2]=s-g;z[f+68>>2]=r-j;z[f+64>>2]=q-i;z[f+76>>2]=p-h;z[f+72>>2]=o-g;z[f+52>>2]=n-j;z[f+48>>2]=m-i;z[f+60>>2]=l-h;z[f+56>>2]=k-g;a=v[f+84>>2];v[f+32>>2]=v[f+80>>2];v[f+36>>2]=a;a=v[f+92>>2];v[f+40>>2]=v[f+88>>2];v[f+44>>2]=a;a=v[f+68>>2];v[f+16>>2]=v[f+64>>2];v[f+20>>2]=a;a=v[f+76>>2];v[f+24>>2]=v[f+72>>2];v[f+28>>2]=a;a=v[f+60>>2];v[f+8>>2]=v[f+56>>2];v[f+12>>2]=a;a=v[f+52>>2];v[f>>2]=v[f+48>>2];v[f+4>>2]=a;a=u$(f+32|0,f+16|0,f,b);xa=f+96|0;return a}function AL(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=v[a+88>>2];f=v[a>>2];f=c>>>0>f>>>0?f:c;if(f){j=v[a+12>>2]+B(d,40)|0;d=0;while(1){c=B(d,40);a=c+b|0;c=c+j|0;e=v[c+4>>2]<<1;v[a>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+8>>2]<<1;v[a+4>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+12>>2]<<1;v[a+8>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+16>>2]<<1;v[a+12>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+20>>2]<<1;v[a+16>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+24>>2]<<1;v[a+20>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+28>>2];a:{if(e){g=v[c+32>>2]!=0;h=v[e+92>>2];e=v[e+84>>2];i=1;c=v[c+36>>2];break a}v[a+16>>2]=-25165825;v[a+20>>2]=-25165825;v[a+8>>2]=2122317823;v[a+12>>2]=-25165825;v[a>>2]=2122317823;v[a+4>>2]=2122317823;i=0;g=0;e=0;h=0;c=0}v[a+24>>2]=c;t[a+37|0]=g;t[a+36|0]=i;v[a+32>>2]=h;v[a+28>>2]=e;d=d+1|0;if((f|0)!=(d|0)){continue}break}}return f|0}function wN(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;e=v[c+4624>>2];a:{if(x[a+88>>1]>=2){if(!e){break a}f=c+528|0;g=v[a+80>>2];h=v[a+84>>2];a=0;if((e|0)!=1){j=e&-2;c=0;while(1){i=b<<1;u[i+((a<<2)+d|0)>>1]=x[h+(x[g+(v[(f+(a<<6)|0)+52>>2]<<1)>>1]<<1)>>1];k=i;i=a|1;u[k+((i<<2)+d|0)>>1]=x[h+(x[g+(v[(f+(i<<6)|0)+52>>2]<<1)>>1]<<1)>>1];a=a+2|0;c=c+2|0;if((j|0)!=(c|0)){continue}break}}if(!(e&1)){break a}u[((a<<2)+d|0)+(b<<1)>>1]=x[h+(x[g+(v[(f+(a<<6)|0)+52>>2]<<1)>>1]<<1)>>1];return 1}if(!e){break a}f=x[a+34>>1];c=0;a=0;if(e-1>>>0>=3){j=e&-4;g=b<<1;while(1){h=a<<2;u[g+(h+d|0)>>1]=f;u[g+((h|4)+d|0)>>1]=f;u[g+((h|8)+d|0)>>1]=f;u[g+((h|12)+d|0)>>1]=f;a=a+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}}e=e&3;if(!e){break a}while(1){u[((a<<2)+d|0)+(b<<1)>>1]=f;a=a+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return 1}function qr(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=v[a+8>>2];i=e&2147483647?e<<1:1;a:{if(!i){break a}c=i<<5;if(!c){break a}g=v[37696];e=g+12|0;g=(k=e,l=c,m=Ba[v[v[g>>2]+20>>2]](g)|0?42469:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}h=v[a+4>>2];f=(h<<5)+g|0;e=v[a>>2];if((h|0)>0){d=e;c=g;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];d=d+32|0;c=c+32|0;if(f>>>0>c>>>0){continue}break}}z[f>>2]=z[b>>2];z[f+4>>2]=z[b+4>>2];z[f+8>>2]=z[b+8>>2];v[f+12>>2]=v[b+12>>2];z[f+16>>2]=z[b+16>>2];z[f+20>>2]=z[b+20>>2];z[f+24>>2]=z[b+24>>2];v[f+28>>2]=v[b+28>>2];if(!(!e|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e);h=v[a+4>>2]}v[a+8>>2]=i;v[a>>2]=g;v[a+4>>2]=h+1}function YC(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=0,m=0,n=0;if((Taa(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=C(z[a+24>>2]*C(b>>>0));a:{if(j=C(0)){i=~~j>>>0;break a}i=0}l=v[a+16>>2];d=b+i<<2;d=(0-d&12)+d|0;e=d+(i<<3)|0;if(e){g=v[37696]+12|0;e=Ba[v[v[g>>2]+8>>2]](g,e,24422,17301,372)|0}else{e=0}c=d;d=b<<2;e=I9(e,255,d);g=c+e|0;k=d+e|0;if(v[a+36>>2]){m=b-1|0;n=v[a+4>>2];d=0;while(1){h=d<<3;f=h+n|0;c=v[f>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=e+(((c>>>16^c)&m)<<2)|0;v[(d<<2)+k>>2]=v[c>>2];v[c>>2]=d;h=g+h|0;v[h>>2]=v[f>>2];v[h+4>>2]=v[f+4>>2];d=d+1|0;if(d>>>0>2]){continue}break}}d=v[a>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=k;v[a+16>>2]=i;v[a+4>>2]=g;if(v[a+28>>2]==-1){v[a+28>>2]=l}}function HZ(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0);c=z[b+8>>2];if(C(D(c))<=C(.9998999834060669)){e=C(C(1)/C(c+C(1)));g=z[b+4>>2];f=C(e*C(-g));d=z[b>>2];h=C(f*d);z[a+12>>2]=h;i=C(f*C(0));z[a+24>>2]=d+i;z[a>>2]=c-C(f*g);f=C(e*C(0));j=C(d*f);z[a+28>>2]=g+j;z[a+16>>2]=C(d*C(e*d))+c;z[a+4>>2]=h+C(0);z[a+32>>2]=C(f*C(0))+c;z[a+20>>2]=j-g;z[a+8>>2]=i-d;return}c=C(C(0)-c);d=C(C(0)-z[b>>2]);g=C(C(1)-z[b+4>>2]);e=C(C(2)/C(C(c*c)+C(C(d*d)+C(g*g))));f=C(C(C(C(d*C(0))+g)-c)*e);h=C(f*d);e=C(-e);i=C(d*e);z[a+12>>2]=h+C(i*g);j=C(f*g);k=C(g*e);z[a+4>>2]=C(j*C(0))+C(k*d);z[a+24>>2]=C(C(i*c)+C(0))-h;z[a+28>>2]=C(C(k*c)+C(1))-j;z[a>>2]=C(C(h*C(0))+C(i*d))+C(1);f=C(f*c);e=C(c*e);z[a+20>>2]=f+C(C(e*g)+C(1));z[a+8>>2]=C(f*C(0))+C(C(e*d)+C(0));z[a+16>>2]=C(j+C(C(k*g)+C(-1)))+C(1);z[a+32>>2]=C(C(C(e*c)+C(-1))-f)+C(1)}function p2(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);c=z[b+8>>2];a:{if(C(D(c))>2];f=C(c+C(d*C(e*e)));h=C(-e);g=z[b+4>>2];j=C(-g);d=C(d*j);k=C(d*e);p=k;i=C(c-C(g*d));break a}c=C(C(0)-c);d=C(C(0)-z[b>>2]);f=C(C(1)-z[b+4>>2]);e=C(C(-2)/C(C(c*c)+C(C(d*d)+C(f*f))));i=C(d*e);g=C(C(C(C(d*C(0))+f)-c)*C(-e));l=C(d*g);k=C(C(f*i)+l);h=C(c*e);m=C(c*g);j=C(C(C(f*h)+m)+C(1));n=C(f*e);o=C(f*g);g=C(C(C(c*n)-o)+C(1));p=C(C(d*n)+C(o*C(0)));e=C(C(C(c*i)-l)+C(0));c=C(C(C(C(c*h)-m)+C(-1))+C(1));h=C(C(C(d*h)+C(m*C(0)))+C(0));f=C(C(C(C(f*n)+o)+C(-1))+C(1));i=C(C(C(d*i)+C(l*C(0)))+C(1))}z[a+32>>2]=h;z[a+16>>2]=p;v[a+12>>2]=0;z[a+8>>2]=e;z[a+4>>2]=k;z[a>>2]=i;v[a+44>>2]=0;z[a+40>>2]=c;z[a+36>>2]=j;v[a+28>>2]=0;z[a+24>>2]=g;z[a+20>>2]=f}function R1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),w=C(0);f=xa-16|0;xa=f;e=v[b+8>>2];s=v[b+4>>2];j=z[b+48>>2];k=z[b+32>>2];l=z[b+52>>2];m=z[b+20>>2];n=z[b+36>>2];o=z[b+56>>2];p=z[b+24>>2];q=z[b+40>>2];r=z[b+16>>2];g=z[c+8>>2];h=z[c>>2];i=z[c+4>>2];v[f+12>>2]=0;z[f+8>>2]=C(o*g)+C(C(p*h)+C(i*q));z[f+4>>2]=C(l*g)+C(C(m*h)+C(i*n));z[f>>2]=C(j*g)+C(C(r*h)+C(i*k));b=HV(s,f);v[d>>2]=b;j=z[e+52>>2];k=z[e+20>>2];l=z[e+36>>2];m=z[e+56>>2];b=v[s+152>>2]+B(b,12)|0;g=z[b>>2];n=z[e+24>>2];h=z[b+4>>2];o=z[e+40>>2];i=z[b+8>>2];p=z[e+48>>2];q=z[e+32>>2];r=z[e>>2];t=z[e+16>>2];u=z[e+4>>2];w=z[e+8>>2];v[a+12>>2]=0;z[a+8>>2]=m+C(C(o*i)+C(C(w*g)+C(h*n)));z[a+4>>2]=j+C(C(l*i)+C(C(u*g)+C(h*k)));z[a>>2]=p+C(C(q*i)+C(C(r*g)+C(h*t)));xa=f+16|0}function mn(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=0,m=0,n=0,o=0;if((Taa(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=C(z[a+24>>2]*C(b>>>0));a:{if(j=C(0)){i=~~j>>>0;break a}i=0}m=v[a+16>>2];c=b+i<<2;c=(0-c&12)+c|0;e=c+(i<<3)|0;if(e){g=v[37696]+12|0;e=Ba[v[v[g>>2]+8>>2]](g,e,24422,17301,372)|0}else{e=0}d=c;c=b<<2;e=I9(e,255,c);g=d+e|0;k=c+e|0;if(v[a+36>>2]){n=b-1|0;o=v[a+4>>2];c=0;while(1){h=c<<3;l=h+o|0;f=v[l>>2];d=(f<<15^-1)+f|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=e+(((d>>>16^d)&n)<<2)|0;v[(c<<2)+k>>2]=v[d>>2];v[d>>2]=c;h=g+h|0;v[h>>2]=f;v[h+4>>2]=v[l+4>>2];c=c+1|0;if(c>>>0>2]){continue}break}}c=v[a>>2];if(c){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,c)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=k;v[a+16>>2]=i;v[a+4>>2]=g;if(v[a+28>>2]==-1){v[a+28>>2]=m}}function zB(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=v[a>>2];j=f+x[a+4>>1]|0;if(f>>>0>>0){while(1){a=(f<<5)+b|0;d=x[a+22>>1];if(d){c=v[a+24>>2];m=c+(d<<4)|0;a=v[a+28>>2];while(1){d=w[c+2|0];n=(d<<2)+12&2032;k=w[c|0]==3;e=(B(d,k?112:48)+c|0)+80|0;o=w[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;z[a>>2]=z[e+g>>2];z[a+4>>2]=z[e+(g|4)>>2];z[a+8>>2]=z[e+(g|8)>>2];z[a+12>>2]=z[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){z[a>>2]=z[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(!v[c+56>>2]){break c}c=v[c+60>>2];if(!c){break c}t[c|0]=1}c=d+B(e,o)|0;if(m>>>0>c>>>0){continue}break}}f=f+1|0;if((j|0)!=(f|0)){continue}break}}}function E8(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);e=xa+-64|0;xa=e;a:{if((d&-2)==2){a9(v[37696],4,6223,397,4460,0);break a}Ba[v[v[a>>2]+76>>2]](e+32|0,a);Ba[v[v[a>>2]+112>>2]](e,a);t=z[e+56>>2];u=z[c+8>>2];o=z[b+8>>2];g=z[e+40>>2];f=z[e+24>>2];h=C(f+f);i=z[e+32>>2];f=z[e+16>>2];j=C(f+f);f=z[e+20>>2];k=C(f+f);l=z[e+36>>2];m=C(C(g*h)+C(C(i*j)+C(k*l)));f=z[e+44>>2];n=C(C(f*f)+C(-.5));p=C(z[c>>2]-C(z[e+48>>2]+C(C(i*m)+C(C(j*n)+C(f*C(C(l*h)-C(k*g)))))));q=z[b+4>>2];r=z[b>>2];s=C(z[c+4>>2]-C(z[e+52>>2]+C(C(l*m)+C(C(k*n)+C(f*C(C(g*j)-C(h*i)))))));z[e+8>>2]=C(p*q)-C(r*s);f=C(u-C(t+C(C(g*m)+C(C(h*n)+C(f*C(C(i*k)-C(j*l)))))));z[e+4>>2]=C(r*f)-C(o*p);z[e>>2]=C(s*o)-C(q*f);Ba[v[v[a>>2]+188>>2]](a,b,d,1);Ba[v[v[a>>2]+192>>2]](a,e,d,1)}xa=e- -64|0}function uL(a,b){var c=0,d=0,e=0,f=0;a:{if(!a){break a}if(a-1>>>0>=7){d=a&-8;while(1){v[(B(c,40)+b|0)+32>>2]=0;v[(B(c|1,40)+b|0)+32>>2]=0;v[(B(c|2,40)+b|0)+32>>2]=0;v[(B(c|3,40)+b|0)+32>>2]=0;v[(B(c|4,40)+b|0)+32>>2]=0;v[(B(c|5,40)+b|0)+32>>2]=0;v[(B(c|6,40)+b|0)+32>>2]=0;v[(B(c|7,40)+b|0)+32>>2]=0;c=c+8|0;e=e+8|0;if((d|0)!=(e|0)){continue}break}}d=a&7;if(d){while(1){v[(B(c,40)+b|0)+32>>2]=0;c=c+1|0;f=f+1|0;if((d|0)!=(f|0)){continue}break}}if(!a){break a}f=0;while(1){c=f;f=c+1|0;d=B(c,40)+b|0;if(!(!v[d+28>>2]|a>>>0<=f>>>0)){c=f;while(1){e=B(c,40)+b|0;b:{if(!v[e+28>>2]|y[d+16>>2]<=y[e+4>>2]|(y[e+16>>2]<=y[d+4>>2]|y[d+20>>2]<=y[e+8>>2])){break b}if(y[e+20>>2]<=y[d+8>>2]|y[d+24>>2]<=y[e+12>>2]|y[e+24>>2]<=y[d+12>>2]){break b}v[d+32>>2]=1;v[e+32>>2]=1}c=c+1|0;if((c|0)!=(a|0)){continue}break}}if((a|0)!=(f|0)){continue}break}}}function q2(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=C(0),x=C(0),y=0;i=w[a+64|0];a:{if(!i){break a}g=z[e>>2];while(1){f=v[a+76>>2]+B(t,48)|0;h=z[f+44>>2];if(h<=g){k=z[f+20>>2];l=z[f+16>>2];m=z[f+24>>2];x=z[d+16>>2];n=z[d+20>>2];j=z[d+24>>2];o=z[d+8>>2];p=z[d>>2];q=z[d+4>>2];g=z[d+12>>2];i=v[c+4>>2];y=v[c>>2];r=z[c+8>>2];f=(s<<6)+b|0;v[f+28>>2]=0;z[f+8>>2]=r;v[f>>2]=y;v[f+4>>2]=i;v[f+52>>2]=-1;z[f+12>>2]=h;u=j;h=C(C(g*g)+C(-.5));j=C(C(o*m)+C(C(p*l)+C(q*k)));r=C(C(C(g*C(C(p*k)-C(l*q)))+C(m*h))+C(o*j));z[f+24>>2]=u+C(r+r);u=n;n=C(C(q*j)+C(C(h*k)+C(g*C(C(o*l)-C(m*p)))));z[f+20>>2]=u+C(n+n);g=C(C(p*j)+C(C(h*l)+C(g*C(C(q*m)-C(k*o)))));z[f+16>>2]=x+C(g+g);i=w[a+64|0];s=s+1|0;g=z[e>>2]}if(s>>>0>63){break a}t=t+1|0;if(i>>>0>t>>>0){continue}break}}v[b+4096>>2]=s}function Wk(a){var b=0,c=0;c=xa-16|0;xa=c;a:{b:{c:{d:{switch((v[a+4>>2]>>>30|0)-2|0){case 0:b=v[a>>2];if(w[b+4785|0]){break c}default:v[a+236>>2]=0;v[a+240>>2]=0;v[a+260>>2]=0;v[a+264>>2]=1;v[a+244>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;v[a+256>>2]=0;RG(a+16|0);break a;case 1:break d}}v[a+260>>2]=0;v[a+264>>2]=1;v[a+236>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;b=v[a>>2];break b}v[a+260>>2]=0;v[a+264>>2]=1;v[a+236>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0}Xu(b,a);v[a+268>>2]=v[a+268>>2]|4194304;b=v[a+4>>2];v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;v[a+256>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;e:{f:{g:{switch((b>>>30|0)-2|0){case 0:b=v[a>>2];if(w[b+4785|0]){break f}default:CG(a+16|0,c);b=v[a+268>>2];break e;case 1:break g}}b=v[a>>2]}Xu(b,a);b=v[a+268>>2]|8388608}v[a+268>>2]=b&-1015809;Xu(v[a>>2],a);v[a+268>>2]=v[a+268>>2]&-117440513|50331648}xa=c+16|0}function Ul(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);c=xa-32|0;xa=c;m=v[b+396>>2];Ba[v[v[m>>2]+112>>2]](c,m);b=v[b+12>>2]&2?v[b+16>>2]:b+24|0;l=z[b+52>>2];n=z[b+48>>2];o=z[b+44>>2];p=z[c+20>>2];q=z[c+24>>2];r=z[c+16>>2];d=z[c+12>>2];e=z[b+40>>2];f=z[b+28>>2];h=z[c>>2];i=z[c+4>>2];g=z[b+32>>2];j=z[c+8>>2];k=z[b+36>>2];z[a+12>>2]=C(C(C(d*e)-C(f*h))-C(i*g))-C(j*k);z[a+8>>2]=C(C(h*g)+C(C(d*k)+C(e*j)))-C(f*i);z[a+4>>2]=C(C(j*f)+C(C(d*g)+C(e*i)))-C(k*h);z[a>>2]=C(C(i*k)+C(C(d*f)+C(e*h)))-C(g*j);e=C(l+l);f=C(o+o);g=C(n+n);k=C(C(j*e)+C(C(h*f)+C(i*g)));l=C(C(d*d)+C(-.5));z[a+24>>2]=q+C(C(j*k)+C(C(e*l)+C(d*C(C(h*g)-C(f*i)))));z[a+20>>2]=p+C(C(i*k)+C(C(g*l)+C(d*C(C(j*f)-C(e*h)))));z[a+16>>2]=r+C(C(h*k)+C(C(f*l)+C(d*C(C(i*e)-C(g*j)))));xa=c+32|0}function DM(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=v[37696];d=c+12|0;c=(h=d,i=(b<<6)+131|0,j=Ba[v[v[c>>2]+20>>2]](c)|0?39083:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0);if(!c){break a}e=c+131&-128;v[e-4>>2]=e-c}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<6)+e|0;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];z[c+48>>2]=z[d+48>>2];z[c+52>>2]=z[d+52>>2];z[c+56>>2]=z[d+56>>2];v[c+60>>2]=v[d+60>>2];d=d- -64|0;c=c- -64|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-v[d-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=e}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;a:{if(!b){break a}c=v[37696];e=c+12|0;e=(i=e,j=(b<<6)+131|0,k=Ba[v[v[c>>2]+20>>2]](c)|0?48349:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0);if(!e){break a}f=e+131&-128;v[f-4>>2]=f-e}e=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<6)+f|0;d=e;c=f;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];z[c+48>>2]=z[d+48>>2];z[c+52>>2]=z[d+52>>2];z[c+56>>2]=z[d+56>>2];z[c+60>>2]=z[d+60>>2];d=d- -64|0;c=c- -64|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e-v[e-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=f}function ru(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;h=xa-16|0;xa=h;d=v[a+4>>2];e=d>>>30|0;a:{if((e|0)==3){break a}f=v[b+4>>2];g=v[a>>2];e=e-1|0;i=e>>>0<2?g:0;if(!(w[i+4785|0]?i:0)){b=v[((f>>>22&60)+89188|0)+12>>2]+b|0;v[b+4>>2]=v[b+4>>2]|16777215;if(!c|(!v[a>>2]|e>>>0>1)){break a}RE(b);break a}e=v[a+8>>2];if(!e){e=Pu(g,d>>>24&15);v[a+8>>2]=e}b:{d=v[e>>2];if((d|0)==-1){break b}c=v[e+4>>2];if(!c){break b}f=v[v[a>>2]+4880>>2]+(d<<2)|0;d=0;while(1){g=f+(d<<2)|0;if(v[g>>2]!=(b|0)){d=d+1|0;if((c|0)!=(d|0)){continue}break b}break}a=c-1|0;v[g>>2]=v[f+(a<<2)>>2];v[e+4>>2]=a;break a}c=v[a>>2];d=v[e+8>>2];c:{if((d|0)==-1){d=v[c+4884>>2];f=v[a+20>>2];v[h+12>>2]=0;c=c+4880|0;Cr(c,d+f|0,h+12|0);v[e+8>>2]=d;break c}c=c+4880|0}d=v[c>>2]+(d<<2)|0;c=v[e+12>>2];v[d+(c<<2)>>2]=b;v[e+12>>2]=c+1;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|2}xa=h+16|0}function qu(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=xa-16|0;xa=f;c=v[a+4>>2];h=c>>>30|0;a:{if((h|0)==3){break a}d=v[a>>2];e=h-1>>>0<2?d:0;if(!(w[e+4785|0]?e:0)){b=v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0;v[b+4>>2]=v[a+16>>2]&16777215|w[b+7|0]<<24;break a}e=v[a+8>>2];if(!e){e=Pu(d,c>>>24&15);v[a+8>>2]=e}c=v[e+8>>2];b:{if((c|0)==-1){break b}d=v[e+12>>2];if(!d){break b}g=v[v[a>>2]+4880>>2]+(c<<2)|0;c=0;while(1){i=g+(c<<2)|0;if(v[i>>2]!=(b|0)){c=c+1|0;if((d|0)!=(c|0)){continue}break b}break}c=d-1|0;v[i>>2]=v[g+(c<<2)>>2];v[e+12>>2]=c}d=v[a>>2];c=v[e>>2];c:{if((c|0)==-1){c=v[d+4884>>2];g=v[a+20>>2];v[f+12>>2]=0;d=d+4880|0;Cr(d,c+g|0,f+12|0);v[e>>2]=c;break c}d=d+4880|0}d=v[d>>2]+(c<<2)|0;c=v[e+4>>2];v[d+(c<<2)>>2]=b;v[e+4>>2]=c+1;if((h|0)!=1){Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1;break a}v[a+4>>2]=v[a+4>>2]|1}xa=f+16|0}function WN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=v[a+44>>2];d=v[a+84>>2];e=f+d|0;c=v[a+48>>2]&2147483647;a:{if(e>>>0<=c>>>0){break a}g=c;c=c<<1;c=c>>>0>e>>>0?c:e;if(g>>>0>>0){uP(a+40|0,c)}if(c>>>0<=(v[a+60>>2]&2147483647)>>>0){break a}VN(a+52|0,c)}v[a+44>>2]=e;v[a+56>>2]=e;H9(v[a+40>>2]+(f<<2)|0,v[a+80>>2],d<<2);H9((f<<4)+b|0,v[a+68>>2],d<<4);H9(v[a+52>>2]+(f<<3)|0,v[a+92>>2],d<<3);c=v[a+84>>2];if(c){h=v[a+108>>2];i=v[h+456>>2];g=v[a+80>>2];e=0;while(1){b=v[(e<<2)+g>>2];v[b+68>>2]=v[a+24>>2]|e+f<<3;d=w[b+43|0];b:{if(!(d&64)){break b}t[b+43|0]=d&191;if(w[b+41|0]&8){break b}d=v[v[v[h+444>>2]>>2]+(v[b- -64>>2]<<2)>>2];if(!d){break b}while(1){v[(v[d+20>>2]<<2)+i>>2]=v[b+68>>2];d=v[d+16>>2];if(d){continue}break}c=v[a+84>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}v[a+84>>2]=0;v[a+96>>2]=0;v[a+72>>2]=0}function Rl(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);c=xa-32|0;xa=c;m=v[b+392>>2];Ba[v[v[m>>2]+112>>2]](c,m);b=v[b+12>>2]&1?v[b+16>>2]:b+24|0;l=z[b+24>>2];n=z[b+20>>2];o=z[b+16>>2];p=z[c+20>>2];q=z[c+24>>2];r=z[c+16>>2];d=z[c+12>>2];e=z[b+12>>2];f=z[b>>2];h=z[c>>2];i=z[c+4>>2];g=z[b+4>>2];j=z[c+8>>2];k=z[b+8>>2];z[a+12>>2]=C(C(C(d*e)-C(f*h))-C(i*g))-C(j*k);z[a+8>>2]=C(C(h*g)+C(C(d*k)+C(e*j)))-C(f*i);z[a+4>>2]=C(C(j*f)+C(C(d*g)+C(e*i)))-C(k*h);z[a>>2]=C(C(i*k)+C(C(d*f)+C(e*h)))-C(g*j);e=C(l+l);f=C(o+o);g=C(n+n);k=C(C(j*e)+C(C(h*f)+C(i*g)));l=C(C(d*d)+C(-.5));z[a+24>>2]=q+C(C(j*k)+C(C(e*l)+C(d*C(C(h*g)-C(f*i)))));z[a+20>>2]=p+C(C(i*k)+C(C(g*l)+C(d*C(C(j*f)-C(e*h)))));z[a+16>>2]=r+C(C(h*k)+C(C(f*l)+C(d*C(C(i*e)-C(g*j)))));xa=c+32|0}function ZD(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(!w[a+338|0]){break a}b=1;if(v[a+268>>2]){break a}b=0;d=v[a+284>>2];if(!d){break a}b=v[a+32>>2];if(b){b=JB(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[37696];c=b+12|0;b=IB((f=c,g=64,h=Ba[v[v[b>>2]+20>>2]](b)|0?44169:63804,i=8103,j=691,e=v[v[c>>2]+8>>2],Ba[e](f|0,g|0,h|0,i|0,j|0)|0));v[a+40>>2]=d;v[a+32>>2]=b;b=0;d=B(d,24);c=d+24|0;if(c){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,c,24422,8103,695)|0}v[a+36>>2]=b;H9(b,v[a+292>>2],d);v[a+16>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;b=1;v[a+48>>2]=v[a+48>>2]+1;v[a+60>>2]=(v[a+60>>2]^-1)&1;v[a+56>>2]=(v[a+56>>2]^-1)&1;d=v[a+20>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+20>>2]=0;v[a+24>>2]=0;v[a+8>>2]=4;v[a+268>>2]=1;v[a+28>>2]=0;e=a,j=Vaa(v[a+36>>2],v[a+40>>2]),v[e+12>>2]=j;v[a+16>>2]=Aa}return b|0}function FL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;EL(a,c);c=v[a+124>>2];e=v[a+128>>2];b=v[a+88>>2];v[b+68>>2]=v[b+24>>2];v[b+72>>2]=e;v[b- -64>>2]=c;e=v[b>>2];a:{if(!e){break a}f=b+36|0;b=v[b+12>>2];c=0;while(1){g=v[(b+B(c,40)|0)+28>>2];if(g){rL(g,f)}c=c+1|0;if((e|0)!=(c|0)){continue}break}b=v[a+88>>2];f=v[b>>2];if(!f){break a}e=v[b+12>>2];g=0;c=0;if(f-1>>>0>=3){h=f&-4;while(1){d=v[(e+B(c,40)|0)+28>>2];if(d){v[d+116>>2]=0}d=v[(e+B(c|1,40)|0)+28>>2];if(d){v[d+116>>2]=0}d=v[(e+B(c|2,40)|0)+28>>2];if(d){v[d+116>>2]=0}d=v[(e+B(c|3,40)|0)+28>>2];if(d){v[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=v[(e+B(c,40)|0)+28>>2];if(h){v[h+116>>2]=0}c=c+1|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}vL(b+36|0,v[b+24>>2],a,b+76|0,b+84|0);I9(v[b+76>>2],0,v[b+80>>2]<<2)}function rp(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=xa-32|0;xa=h;a:{if(y[a+32>>2]>=y[a+104>>2]){break a}k=a+40|0;i=v[k>>2];v[k>>2]=i?i:-1;if((i|0)==1){a9(v[37696],8,5611,505,64499,0);break a}v[a+32>>2]=v[a+32>>2]+1;i=a+12|0;n=x[e+16>>1];o=v[e+12>>2];p=v[e+8>>2];q=v[e+4>>2];r=v[e>>2];l=v[a+24>>2];j=l+40|0;e=v[a+20>>2]&2147483647;b:{if(j>>>0<=e>>>0){break b}m=B(j,3);if(e>>>0>=m>>>0){break b}np(i,m)}op(i,j);e=v[a+12>>2]+v[a+24>>2]|0;v[e+28>>2]=f;v[e+8>>2]=r;u[e+4>>1]=0;v[e>>2]=-16;t[e+38|0]=1;u[e+36>>1]=d;v[e+32>>2]=g;u[e+24>>1]=n;v[e+20>>2]=o;v[e+16>>2]=p;v[e+12>>2]=q;v[a+24>>2]=j;d=v[a+108>>2];v[((d|0)==-16?a+108|0:d+v[a+12>>2]|0)>>2]=l;v[a+108>>2]=l;v[h+28>>2]=0;v[h+24>>2]=c;v[h+20>>2]=b;v[h+8>>2]=0;v[h+12>>2]=0;qp(i,h+8|0);v[k>>2]=0}xa=h+32|0}function dM(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){Ba[v[v[f>>2]+20>>2]](f)}eM(a,d);v[a+4>>2]=c;f=c;c=v[a+200>>2];d=c<<3;f=Cx(f,d,1);v[a+264>>2]=c;v[a+256>>2]=f;v[a+260>>2]=0;f=Cx(v[a+4>>2],d,1);v[a+276>>2]=c;v[a+268>>2]=f;v[a+272>>2]=0;f=Cx(v[a+4>>2],c<<2,1);v[a+212>>2]=c;v[a+204>>2]=f;v[a+208>>2]=0;f=Cx(v[a+4>>2],d,1);v[a+332>>2]=c;v[a+324>>2]=f;v[a+328>>2]=0;f=Cx(v[a+4>>2],d,1);v[a+380>>2]=c;v[a+372>>2]=f;v[a+376>>2]=0;d=Cx(v[a+4>>2],d,1);v[a+428>>2]=c;v[a+420>>2]=d;v[a+424>>2]=0;v[a+76>>2]=a;v[a+80>>2]=b;v[a+36>>2]=a;v[a+72>>2]=1;v[a+40>>2]=b;v[a+68>>2]=e;if(e){Ba[v[v[e>>2]+16>>2]](e);v[a- -64>>2]=v[v[a+68>>2]+16>>2]}b=a+48|0;v[a+28>>2]=b;v[a+32>>2]=1;Ba[v[v[a+48>>2]+16>>2]](b);v[a+24>>2]=v[v[a+28>>2]+16>>2];c=v[a- -64>>2];Ba[v[v[c>>2]+72>>2]](c,b);b=v[a+24>>2];Ba[v[v[b>>2]+72>>2]](b,a+8|0)}function TZ(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0;f=xa-48|0;xa=f;h=v[a+3376>>2];o=z[h+28>>2];p=z[h+16>>2];l=z[h+32>>2];m=z[h+20>>2];u=w[h+72|0];q=z[h+4>>2];n=z[h+8>>2];i=z[c>>2];r=z[h>>2];j=z[c+4>>2];s=z[h+12>>2];k=z[c+8>>2];t=z[h+24>>2];z[f>>2]=C(C(i*r)+C(j*s))+C(k*t);z[f+8>>2]=C(C(i*n)+C(j*m))+C(k*l);z[f+4>>2]=C(C(i*q)+C(j*p))+C(k*o);c=(u?24:12)+f|0;i=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];z[c+8>>2]=C(C(n*i)+C(m*j))+C(l*k);z[c+4>>2]=C(C(q*i)+C(p*j))+C(o*k);z[c>>2]=C(C(r*i)+C(s*j))+C(t*k);c=(u?12:24)+f|0;i=n;n=z[e>>2];j=m;m=z[e+4>>2];k=l;l=z[e+8>>2];z[c+8>>2]=C(C(i*n)+C(j*m))+C(k*l);z[c+4>>2]=C(C(q*n)+C(p*m))+C(o*l);z[c>>2]=C(C(r*n)+C(s*m))+C(t*l);RZ(a+8|0,v[b+8>>2],f,f|12,f+24|0,g);xa=f+48|0;return 1}function Ni(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;d=xa-16|0;xa=d;g=a+12|0;b=v[g+4>>2];a:{if(!b){break a}c=v[b+40>>2];if(!c){break a}while(1){c=c-1|0;h=f<<3;e=h+v[b+36>>2]|0;b:{if(!w[e|0]){b=v[e+4>>2];v[(v[b+8>>2]==(a|0)?8:12)+b>>2]=0;e=mg(b);if(e){Iu(e+16|0,b+16|0);v[d+12>>2]=b;Og(e+5892|0,d+12|0)}b=v[g+4>>2];e=v[b+40>>2]-1|0;v[b+40>>2]=e;b=v[b+36>>2];h=b+h|0;b=b+(e<<3)|0;e=v[b+4>>2];v[h>>2]=v[b>>2];v[h+4>>2]=e;b=v[g+4>>2];if(v[b+40>>2]){break b}if(v[b+44>>2]>=0){Rm(v[37389],b)}b=0;v[g+4>>2]=0;break b}f=f+1|0}if(c){continue}break}}xa=d+16|0;c=uh(a);if(v[a+40>>2]){a9(v[37696],8,19068,200,74097,0);aC(v[a+40>>2],a)}b=a+20|0;d=x[b+4>>1];f=v[b>>2];if(c){hu(b,c+5584|0,a)}if(d){f=(d|0)==1?b:f;c=0;while(1){Zt(v[f+(c<<2)>>2]);c=c+1|0;if((d|0)!=(c|0)){continue}break}}d=v[v[37389]+476>>2];LU(b,d);LU(b+8|0,d);ih(g,a)}function FK(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=xa-16|0;xa=b;c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,4,24422,8452,47)|0;v[d>>2]=131644;v[b+12>>2]=d;c=v[a+8>>2];a:{if(c>>>0>=(v[a+12>>2]&2147483647)>>>0){d=0;c=v[a+12>>2];g=c&2147483647?c<<1:1;b:{if(!g){break b}e=g<<2;if(!e){break b}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?58655:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+8>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a+4>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b+12>>2];c:{if(v[a+12>>2]<0){break c}e=v[a+4>>2];if(!e){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e);f=v[a+8>>2]}v[a+12>>2]=g;v[a+4>>2]=d;v[a+8>>2]=f+1;break a}v[v[a+4>>2]+(c<<2)>>2]=d;v[a+8>>2]=c+1}xa=b+16|0;return v[b+12>>2]}function Q1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0);e=xa-16|0;xa=e;r=v[b+4>>2];d=v[b+8>>2];i=z[b+48>>2];j=z[b+32>>2];k=z[b+52>>2];l=z[b+20>>2];m=z[b+36>>2];n=z[b+56>>2];o=z[b+24>>2];p=z[b+40>>2];q=z[b+16>>2];f=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];v[e+12>>2]=0;z[e+8>>2]=C(n*f)+C(C(o*g)+C(h*p));z[e+4>>2]=C(k*f)+C(C(l*g)+C(h*m));z[e>>2]=C(i*f)+C(C(q*g)+C(h*j));b=HV(r,e);i=z[d+52>>2];j=z[d+20>>2];k=z[d+36>>2];l=z[d+56>>2];b=v[r+152>>2]+B(b,12)|0;f=z[b>>2];m=z[d+24>>2];g=z[b+4>>2];n=z[d+40>>2];h=z[b+8>>2];o=z[d+48>>2];p=z[d+32>>2];q=z[d>>2];s=z[d+16>>2];t=z[d+4>>2];u=z[d+8>>2];v[a+12>>2]=0;z[a+8>>2]=l+C(C(n*h)+C(C(u*f)+C(g*m)));z[a+4>>2]=i+C(C(k*h)+C(C(t*f)+C(g*j)));z[a>>2]=o+C(C(p*h)+C(C(q*f)+C(g*s)));xa=e+16|0}function D2(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0;f=xa-32|0;xa=f;j=z[d+36>>2];k=z[d+40>>2];l=z[d+32>>2];m=z[d+8>>2];n=z[d+4>>2];o=z[d>>2];g=C(z[c+8>>2]-z[d+56>>2]);h=C(z[c>>2]-z[d+48>>2]);i=C(z[c+4>>2]-z[d+52>>2]);z[f+20>>2]=C(z[d+24>>2]*g)+C(C(z[d+16>>2]*h)+C(i*z[d+20>>2]));z[f+16>>2]=C(m*g)+C(C(o*h)+C(i*n));v[f+28>>2]=0;z[f+24>>2]=C(k*g)+C(C(l*h)+C(i*j));g=z[c+40>>2];d=v[c+32>>2];p=v[c+36>>2];z[f+12>>2]=z[c+64>>2];z[f+8>>2]=g;q=v[f+28>>2];v[a+8>>2]=v[f+24>>2];v[a+12>>2]=q;v[f>>2]=d;v[f+4>>2]=p;d=v[f+20>>2];v[a>>2]=v[f+16>>2];v[a+4>>2]=d;d=v[c+28>>2];v[a+24>>2]=v[c+24>>2];v[a+28>>2]=d;d=v[c+20>>2];v[a+16>>2]=v[c+16>>2];v[a+20>>2]=d;d=v[f+12>>2];v[a+40>>2]=v[f+8>>2];v[a+44>>2]=d;d=v[f+4>>2];v[a+32>>2]=v[f>>2];v[a+36>>2]=d;u2(b,f+16|0,c+16|0,f,e);xa=f+32|0}function _H(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{b:{g=v[a+12>>2];e=g+(b<<2)|0;b=v[e>>2];if((c|0)==(b|0)){break b}f=v[a+16>>2];while(1){d=b;b=v[f+(b<<2)>>2];if((c|0)!=(b|0)){continue}break}if((d|0)==-1){break b}e=v[a+16>>2];v[e+(d<<2)>>2]=v[(c<<2)+e>>2];break a}b=e;e=v[a+16>>2];v[b>>2]=v[e+(c<<2)>>2]}d=v[a+8>>2]-1|0;if((d|0)!=(c|0)){c:{d:{h=v[a+20>>2];f=h+(d<<3)|0;b=v[f+4>>2]<<16|x[f>>1];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;i=v[a+4>>2]&(b>>>16^b);j=g+(i<<2)|0;b=v[j>>2];if((d|0)==(b|0)){break d}while(1){g=b;b=v[(b<<2)+e>>2];if((d|0)!=(b|0)){continue}break}if((g|0)==-1){break d}v[(g<<2)+e>>2]=v[(d<<2)+e>>2];break c}v[j>>2]=v[(d<<2)+e>>2]}d=v[f+4>>2];b=(c<<3)+h|0;v[b>>2]=v[f>>2];v[b+4>>2]=d;b=v[a+12>>2]+(i<<2)|0;v[v[a+16>>2]+(c<<2)>>2]=v[b>>2];v[b>>2]=c;d=v[a+8>>2]-1|0}v[a+8>>2]=d}function E$(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=xa-80|0;xa=d;a:{b:{if(w[a+96|0]){e=1;if(!b){break a}f=v[a+4>>2];while(1){e=v[a+8>>2];if(e>>>0>=y[a+12>>2]){break b}b=b-1|0;g=v[a+20>>2];c:{if(g>>>0>=y[a+16>>2]){g=v[c>>2];v[a+8>>2]=e+1;v[f+(e<<2)>>2]=g;break c}v[a+20>>2]=g+1}c=c+4|0;if(b){continue}break}e=1;break a}v[d+72>>2]=0;v[d+64>>2]=0;v[d+68>>2]=0;v[d+56>>2]=0;v[d+60>>2]=1065353216;v[d+48>>2]=0;v[d+52>>2]=0;d:{if(b){g=a+32|0;j=d+32|0;k=d+20|0;while(1){f=d+8|0;h=(e<<2)+c|0;m$(v[a+28>>2],d+48|0,f,0,0,v[h>>2],0,0);e:{if(!v$(g,f,k,j)){break e}f=v[a+8>>2];if(f>>>0>=y[a+12>>2]){break d}i=v[a+20>>2];if(i>>>0>=y[a+16>>2]){h=v[h>>2];v[a+8>>2]=f+1;v[v[a+4>>2]+(f<<2)>>2]=h;break e}v[a+20>>2]=i+1}e=e+1|0;if((e|0)!=(b|0)){continue}break}}e=1;break a}}t[a+24|0]=1;e=0}xa=d+80|0;return e|0}function Og(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{if(!v[a+36>>2]){break a}d=v[b>>2];b=(d<<15^-1)+d|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=v[a+12>>2]+((v[a+20>>2]-1&(b>>>16^b))<<2)|0;b=v[c>>2];if((b|0)==-1){break a}e=v[a+8>>2];f=v[a+4>>2];g=f+(b<<2)|0;if((d|0)!=v[g>>2]){while(1){c=e+(b<<2)|0;b=v[c>>2];if((b|0)==-1){break a}g=f+(b<<2)|0;if((d|0)!=v[g>>2]){continue}break}}h=c;c=b<<2;v[h>>2]=v[c+e>>2];d=v[a+36>>2]-1|0;v[a+36>>2]=d;h=1;v[a+32>>2]=v[a+32>>2]+1;if((b|0)!=(d|0)){e=d<<2;v[g>>2]=v[e+f>>2];d=v[a+8>>2];v[d+c>>2]=v[d+e>>2];c=v[c+v[a+4>>2]>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[a+12>>2]+((v[a+20>>2]-1&(c>>>16^c))<<2)|0;e=v[c>>2];f=v[a+36>>2];if((e|0)!=(f|0)){while(1){c=d+(e<<2)|0;e=v[c>>2];if((f|0)!=(e|0)){continue}break}}v[c>>2]=b}v[a+28>>2]=v[a+28>>2]-1}return h}function MW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);e=xa-80|0;xa=e;h=z[b+4>>2];j=C(h+h);g=z[b+8>>2];k=C(j*g);f=z[b>>2];i=C(f+f);m=z[b+12>>2];l=C(i*m);z[e+68>>2]=k-l;z[e+60>>2]=k+l;f=C(C(1)-C(f*i));k=C(h*j);z[e+72>>2]=f-k;n=f;f=C(g+g);l=C(g*f);z[e+56>>2]=n-l;g=C(i*g);j=C(j*m);z[e+64>>2]=g+j;h=C(i*h);i=C(f*m);z[e+52>>2]=h-i;z[e+48>>2]=g-j;z[e+44>>2]=h+i;z[e+40>>2]=C(C(1)-k)-l;h=z[d+4>>2];j=C(h+h);g=z[d+8>>2];k=C(j*g);f=z[d>>2];i=C(f+f);m=z[d+12>>2];l=C(i*m);z[e+28>>2]=k-l;z[e+20>>2]=k+l;f=C(C(1)-C(f*i));k=C(h*j);z[e+32>>2]=f-k;n=f;f=C(g+g);l=C(g*f);z[e+16>>2]=n-l;g=C(i*g);j=C(j*m);z[e+24>>2]=g+j;h=C(i*h);i=C(f*m);z[e+12>>2]=h-i;z[e+8>>2]=g-j;z[e+4>>2]=h+i;z[e>>2]=C(C(1)-k)-l;a=o$(a+4|0,b+16|0,e+40|0,c+4|0,d+16|0,e);xa=e+80|0;return a|0} -function bS(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=C(0);e=xa-32|0;xa=e;YR(a,e);f=v[v[a+4>>2]+40>>2];g=v[v[f+976>>2]+1816>>2];h=v[a+8>>2];d=v[g+4>>2]+(h<<5)|0;z[d>>2]=z[e>>2];z[d+4>>2]=z[e+4>>2];z[d+8>>2]=z[e+8>>2];z[d+12>>2]=z[e+12>>2];z[d+16>>2]=z[e+16>>2];z[d+20>>2]=z[e+20>>2];i=z[e+24>>2];v[d+28>>2]=b;z[d+24>>2]=i;t[g+20|0]=1;b=v[f+1140>>2];d=h&2147483647;dV(v[b+4>>2]+B(d,24)|0,v[a+28>>2]+68|0,e,C(1));t[b+16|0]=1;if(!(!c|v[a+8>>2]>=0)){b=d+32>>>5|0;a:{if(b>>>0<=(v[c+4>>2]&2147483647)>>>0){a=v[c>>2];break a}a=v[c+8>>2];a=Ba[v[v[a>>2]+8>>2]](a,b<<2,17999,438)|0;f=v[c>>2];b:{if(!f){break b}H9(a,f,v[c+4>>2]<<2);if(v[c+4>>2]<0){break b}f=v[c>>2];if(!f){break b}g=v[c+8>>2];Ba[v[v[g>>2]+12>>2]](g,f)}f=v[c+4>>2];I9((f<<2)+a|0,0,b-f<<2);v[c+4>>2]=b;v[c>>2]=a}a=(d>>>3&268435452)+a|0;v[a>>2]=v[a>>2]|1<>2];m=z[a+80>>2];n=z[a+52>>2];o=z[a+68>>2];p=z[a+84>>2];q=z[a+48>>2];d=v[a+144>>2];g=z[d+32>>2];h=z[d+24>>2];i=z[d+28>>2];z[c+8>>2]=C(z[a+88>>2]*g)+C(C(z[a+56>>2]*h)+C(i*z[a+72>>2]));z[c+4>>2]=C(p*g)+C(C(n*h)+C(i*o));z[c>>2]=C(m*g)+C(C(q*h)+C(i*l));f=w[d+38|0];v[c+12>>2]=f;e=w[d+39|0];v[c+16>>2]=e;a=u[d+36>>1];j=a&32767;v[c+20>>2]=j;k=v[d+40>>2];v[c+24>>2]=k;e=B(e,20)+k|0;v[c+28>>2]=e;e=e+B(f,12)|0;v[c+36>>2]=e;f=B(f,3);v[c+40>>2]=(a|0)>=0?0:f+(e+(a<<1&65534)|0)|0;v[c+32>>2]=(f+(e+(j<<1)|0)|0)+(j<<2&a>>31);v[c+60>>2]=v[d+44>>2];a=v[d+52>>2];v[c+44>>2]=v[d+48>>2];v[c+48>>2]=a;a=v[d+60>>2];v[c+52>>2]=v[d+56>>2];v[c+56>>2]=a;if(!b){a=c+44|0;v[a>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}}function nC(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0;c=C(z[a+16>>2]-z[b>>2]);i=z[b+16>>2];e=C(i+z[a+128>>2]);a:{if(c>e){break a}d=C(z[a+20>>2]-z[b+4>>2]);j=z[b+20>>2];f=C(j+z[a+132>>2]);if(d>f){break a}g=C(z[a+24>>2]-z[b+8>>2]);k=z[b+24>>2];h=C(k+z[a+136>>2]);if(ch|(dg)){break a}e=C(C(C(c*z[a+32>>2])+C(d*z[a+48>>2]))+C(g*z[a- -64>>2]));f=C(C(k*z[a+112>>2])+C(C(j*z[a+96>>2])+C(C(i*z[a+80>>2])+z[a>>2])));if(e>f){break a}h=C(C(k*z[a+116>>2])+C(C(j*z[a+100>>2])+C(C(i*z[a+84>>2])+z[a+4>>2])));l=C(C(C(c*z[a+36>>2])+C(d*z[a+52>>2]))+C(g*z[a+68>>2]));if(h>2])+C(d*z[a+56>>2]))+C(g*z[a+72>>2]));d=C(C(k*z[a+120>>2])+C(C(j*z[a+104>>2])+C(C(i*z[a+88>>2])+z[a+8>>2])));if(ed|l>2];if(d>>>0<=b>>>0){v[g+12>>2]=0;d=d<<1;if(d>>>0>(v[f+8>>2]&2147483647)>>>0){ZC(f,d)}e=v[f+4>>2];if((e|0)<(d|0)){h=v[f>>2];i=h+(d<<2)|0;e=h+(e<<2)|0;while(1){v[e>>2]=v[g+12>>2];e=e+4|0;if(i>>>0>e>>>0){continue}break}}v[f+4>>2]=d;v[g+8>>2]=0;bz(a+688|0,d,g+8|0)}e=v[a+704>>2];a:{if(e){b:{if(v[c+40>>2]|!c){break b}d=v[c+36>>2];if(!v[d>>2]){break b}b=0;while(1){v[v[f>>2]+(v[((b<<2)+d|0)+4>>2]<<2)>>2]=c;b=b+1|0;d=v[c+36>>2];if(b>>>0>2]){continue}break}}h=e>>>0>1?e:1;c=0;while(1){b=0;e=v[v[a+700>>2]+(c<<2)>>2];d=v[e+36>>2];if(v[d>>2]){while(1){v[v[f>>2]+(v[((b<<2)+d|0)+4>>2]<<2)>>2]=e;b=b+1|0;d=v[e+36>>2];if(b>>>0>2]){continue}break}}c=c+1|0;if((h|0)!=(c|0)){continue}break}break a}v[v[f>>2]+(b<<2)>>2]=c}xa=g+16|0}function VC(a,b,c,d,e,f,g){var h=0,i=C(0),j=0,k=0;j=d+28|0;k=a+296|0;while(1){h=b;v[h+32>>2]=e;b=v[c+4>>2];e=v[c>>2];i=z[c+8>>2];v[h+12>>2]=0;z[h+8>>2]=i;v[h>>2]=e;v[h+4>>2]=b;i=z[c+20>>2];b=v[c+16>>2];e=v[c+12>>2];v[h+28>>2]=0;z[h+24>>2]=i;v[h+16>>2]=e;v[h+20>>2]=b;if(t[c+24|0]&1){e=v[a+292>>2];if(!e){KC(a+4|0);e=v[a+292>>2]}v[a+292>>2]=v[e>>2];v[a+284>>2]=v[a+284>>2]+1;v[h+36>>2]=e;a=v[c+24>>2];b=a>>>1&15;v[e>>2]=b;if(b){b=(a>>>3&536870908)+f|0;c=0;while(1){d=c<<2;a=v[d+b>>2];v[(d+e|0)+4>>2]=a;v[v[g>>2]+(a<<2)>>2]=h;c=c+1|0;if(c>>>0>2]){continue}break}}}else{e=v[a+584>>2];if(!e){JC(k);e=v[a+584>>2]}v[a+584>>2]=v[e>>2];v[a+576>>2]=v[a+576>>2]+1;b=I9(e,0,96);v[h+40>>2]=b+48;v[h+36>>2]=b;VC(a,b,B(v[c+24>>2]>>>1|0,28)+d|0,d,h,f,g);c=d?B(v[c+24>>2]>>>1|0,28)+j|0:0;b=v[h+40>>2];e=h;continue}break}}function rG(a){var b=0,c=0;b=v[a>>2];if(b){c=v[a+4>>2];a:{if(v[b+24>>2]==1){c=v[c+2400>>2];Ba[v[v[b>>2]>>2]](b)|0;v[c+280>>2]=v[c+280>>2]-1;c=c+288|0;break a}c=v[c+2404>>2];Ba[v[v[b>>2]>>2]](b)|0;v[c+280>>2]=v[c+280>>2]-1;c=c+288|0}v[b>>2]=v[c>>2];v[c>>2]=b;XF(v[v[a+4>>2]+1e3>>2],v[a+48>>2]);v[v[a+8>>2]>>2]=0}b=v[a+60>>2];b:{if((b|0)<0|!(b&2147483647)){break b}c=v[a+52>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[a+44>>2];c:{if((b|0)<0|!(b&2147483647)){break c}c=v[a+36>>2];if(!c){break c}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[a+32>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=v[a+24>>2];if(!c){break d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[a+20>>2];e:{if((b|0)<0|!(b&2147483647)){break e}c=v[a+12>>2];if(!c){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}return a}function Xz(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=v[a+12>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=g<<5;if(!c){break a}e=v[a>>2];e=Ba[v[v[e>>2]+8>>2]](e,c,16608,553)|0}c=v[a+8>>2];if((c|0)>0){h=(c<<5)+e|0;d=v[a+4>>2];c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=f;f=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=f;f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;d=d+32|0;c=c+32|0;if(h>>>0>c>>>0){continue}break}c=v[a+8>>2]}d=v[b+4>>2];c=(c<<5)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;b:{if(v[a+12>>2]<0){break b}b=v[a+4>>2];if(!b){break b}c=v[a>>2];Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=g;v[a+4>>2]=e;v[a+8>>2]=v[a+8>>2]+1}function KZ(a,b,c,d,e,f,g){var h=0,i=C(0),k=0,l=0,m=0,n=C(0),o=C(0),q=C(0),r=C(0),s=0;h=g;g=(ce|(df?g|4:g;t[h|0]=g;a:{if(g){a=0}else{if((b|0)==3){e=z[a>>2];n=C(c-e);c=C(z[a+8>>2]-e);f=z[a+4>>2];o=C(d-f);d=C(z[a+12>>2]-f);q=C(C(n*c)+C(o*d));e=C(z[a+16>>2]-e);f=C(z[a+20>>2]-f);r=C(C(e*e)+C(f*f));i=C(C(c*e)+C(d*f));e=C(C(n*e)+C(o*f));f=C(C(q*r)-C(i*e));c=C(C(c*c)+C(d*d));d=C(C(e*c)-C(i*q));return f>C(0)&d>C(0)&C(C(f+d)-C(C(c*r)-C(i*i)))>2];while(1){g=a;e=z[a+4>>2];s=l;a=v[a+4>>2];l=(a|0)>=(k|0);b:{if((s|0)==(l|0)){break b}f=z[g>>2];if((!(C(C(e-d)*C(z[h>>2]-f))>C(C(f-c)*C(z[h+4>>2]-e)))|0)==((a|0)>=(k|0)|0)){break b}if((m|0)==1){break a}m=m+1|0}a=g+8|0;h=g;b=b-1|0;if(b){continue}break}}a=m&1}return a}return 0}function r$(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);j=z[a+8>>2];k=z[d+8>>2];h=C(j-k);p=C(h*h);l=z[a>>2];m=z[d>>2];h=C(l-m);q=C(h*h);n=z[a+4>>2];o=z[d+4>>2];h=C(n-o);h=C(C(C(K(C(p+C(q+C(h*h)))))-e)+C(-10));h=h>C(0)?h:C(0);p=z[b+8>>2];j=C(j+C(p*h));k=C(k-j);q=z[b>>2];l=C(l+C(q*h));m=C(m-l);r=z[b+4>>2];n=C(n+C(r*h));o=C(o-n);s=C(C(k*k)+C(C(m*m)+C(o*o)));t=C(e*e);a:{b:{if(s<=t){if(!g){break b}z[g+8>>2]=j;z[g+4>>2]=n;z[g>>2]=l;break b}d=0;i=C(C(p*k)+C(C(q*m)+C(r*o)));if(i<=C(0)){break a}c=C(c-h);if(C(i-c)>e){break a}e=C(t-C(s-C(i*i)));if(e>2]=i;if(c>2];e=z[b+4>>2];z[g+8>>2]=j+C(i*z[b+8>>2]);z[g+4>>2]=n+C(i*e);z[g>>2]=l+C(i*c);i=z[f>>2]}z[f>>2]=h+i;d=1}return d}function xK(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{d=v[a+4>>2]&2147483647;e=c&134217727;if(d>>>0>>0){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,e<<2,24422,17999,438)|0;f=v[a>>2];b:{if(!f){break b}H9(d,f,v[a+4>>2]<<2);if(v[a+4>>2]<0){break b}f=v[a>>2];if(!f){break b}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,f)}f=v[a+4>>2];I9(d+(f<<2)|0,0,e-f<<2);v[a+4>>2]=e;v[a>>2]=d;d=e}d=c>>>0>d>>>0?d:c;if(!d){break a}c=v[a>>2];f=0;a=0;if(d-1>>>0>=3){j=d&2147483644;h=0;while(1){e=a<<2;g=e+c|0;v[g>>2]=v[b+e>>2]|v[g>>2];g=e|4;i=g+c|0;v[i>>2]=v[b+g>>2]|v[i>>2];g=e|8;i=g+c|0;v[i>>2]=v[b+g>>2]|v[i>>2];e=e|12;g=e+c|0;v[g>>2]=v[b+e>>2]|v[g>>2];a=a+4|0;h=h+4|0;if((j|0)!=(h|0)){continue}break}}e=d&3;if(!e){break a}while(1){d=a<<2;h=d+c|0;v[h>>2]=v[b+d>>2]|v[h>>2];a=a+1|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}}function UW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0);d=v[b+8>>2];k=z[d+52>>2];l=z[d+36>>2];m=z[d+20>>2];f=z[d+56>>2];g=z[d+40>>2];b=v[b+4>>2];h=z[b+88>>2];n=z[b+56>>2];o=z[b+72>>2];p=z[b- -64>>2];q=z[b+80>>2];r=z[d+24>>2];s=z[b+84>>2];c=v[b+152>>2]+B(c,12)|0;e=z[c+8>>2];t=z[b+52>>2];i=z[c>>2];u=z[b+68>>2];j=z[c+4>>2];w=z[d+48>>2];x=z[d+32>>2];y=z[d>>2];A=z[d+16>>2];D=z[d+4>>2];E=z[d+8>>2];F=z[b+48>>2];v[a+12>>2]=0;G=f;f=C(C(h*e)+C(C(n*i)+C(j*o)));h=C(g*f);g=C(C(q*e)+C(C(F*i)+C(j*p)));e=C(C(s*e)+C(C(t*i)+C(j*u)));z[a+8>>2]=G+C(h+C(C(E*g)+C(r*e)));z[a+4>>2]=k+C(C(l*f)+C(C(D*g)+C(e*m)));z[a>>2]=w+C(C(x*f)+C(C(y*g)+C(e*A)))}function LF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=v[a+60>>2];g=(b>>>0)/(c>>>0)|0;g=v[v[a+40>>2]+(g<<2)>>2]+(b-B(c,g)<<4)|0;f=x[g+4>>1];if(f&64){c=B(v[g>>2],12)+a|0;e=v[c+152>>2];a:{if(!e){break a}h=v[c+148>>2];while(1){i=h+(d<<2)|0;if(v[i>>2]!=(b|0)){d=d+1|0;if((e|0)!=(d|0)){continue}break a}break}j=c;c=e-1|0;v[j+152>>2]=c;v[i>>2]=v[h+(c<<2)>>2]}u[g+4>>1]=f&65471}d=b<<1;h=d|1;f=v[a+448>>2];c=v[f+20>>2];e=(h>>>0)/(c>>>0)|0;f=v[f>>2];i=(d>>>0)/(c>>>0)|0;d=v[v[f+(i<<2)>>2]+(d-B(c,i)<<2)>>2];b:{if(d>>>0>4294967167){break b}c=v[v[f+(e<<2)>>2]+(h-B(c,e)<<2)>>2];if(c>>>0>4294967167){break b}j=B(d>>>7|0,24);d=v[a+16>>2];e=j+d|0;v[e+16>>2]=v[e+16>>2]-1;c=d+B(c>>>7|0,24)|0;v[c+16>>2]=v[c+16>>2]-1}if(!v[g>>2]){a=v[a+228>>2]+(b>>>3&536870908)|0;c=v[a>>2];k=a,l=Uaa(-2,b)&c,v[k>>2]=l}}function LP(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;g=xa-288|0;xa=g;e=v[b>>2];if(e){f=v[a+2416>>2];a:{if(f){IP(a,e,f,c,d);break a}t[g+264|0]=1;v[g+272>>2]=0;v[g+276>>2]=64;f=g+8|0;v[g+268>>2]=f;IP(a,e,f,c,d);c=v[g+276>>2];if((c|0)<0|!(c&2147483647)){break a}c=v[g+268>>2];if((c|0)==(g+8|0)|!c){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c=v[a+2388>>2];e=v[b>>2];b:{if(!e){break b}Ba[v[v[e>>2]>>2]](e)|0;if(w[c+24|0]){NO(v[c+12>>2],v[c+16>>2])}b=0;d=v[c+16>>2]-1|0;if((d|0)<0){break b}j=B(v[c+4>>2],v[c>>2]);i=v[c+12>>2];while(1){f=b+d>>1;h=v[B(f,12)+i>>2];if(!(h>>>0>e>>>0|e>>>0>=h+j>>>0)){b=B(f,12)+i|0;v[e>>2]=v[b+4>>2];v[b+4>>2]=e;if(w[c+24|0]){v[c+8>>2]=f}t[c+24|0]=0;break b}h=e>>>0>h>>>0;b=h?f+1|0:b;d=h?d:f-1|0;if((b|0)<=(d|0)){continue}break}}v[a+2664>>2]=v[a+2664>>2]-1}xa=g+288|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=C(0),i=0;f=xa-128|0;xa=f;g=v[c+4>>2];i=v[c>>2];h=z[c+8>>2];v[f+124>>2]=0;z[f+120>>2]=h;v[f+112>>2]=i;v[f+116>>2]=g;c=v[d+4>>2];g=v[d>>2];h=z[d+8>>2];v[f+108>>2]=0;z[f+104>>2]=h;v[f+96>>2]=g;v[f+100>>2]=c;c=v[e+4>>2];d=v[e>>2];h=z[e+8>>2];v[f+92>>2]=0;z[f+88>>2]=h;v[f+80>>2]=d;v[f+84>>2]=c;h=z[a+32>>2];c=v[a+28>>2];d=v[a+24>>2];v[f+12>>2]=0;z[f+8>>2]=h;v[f>>2]=d;v[f+4>>2]=c;E_(f+16|0,f,f+112|0,f+96|0,f+80|0,f- -64|0,f+48|0,f+32|0);xa=f+128|0;c=1;a:{if(!(z[f+16>>2]<=z[a+20>>2])){break a}d=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];c=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;c=1;break a}c=v[a+16>>2];if(c>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=d;c=1;break a}v[a+16>>2]=c+1;c=1}return c|0}function qo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=C(0);z[a+296>>2]=z[b>>2];z[a+300>>2]=z[b+4>>2];z[a+304>>2]=z[b+8>>2];e=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:d=v[e>>2];if(w[d+4785|0]){break b}default:CG(a- -64|0,b);break a;case 1:break c}}d=v[e>>2]}Xu(d,e);v[a+316>>2]=v[a+316>>2]|8388608}d:{if(!uh(a)){break d}d=1;d=z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?d:z[b+8>>2]!=C(0);f=z[a+308>>2];b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}g=z[b+5148>>2];b=f>2]!=0?1:b)){break d}f=b?g:f;e:{f:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:b=v[e>>2];if(w[b+4785|0]){break e}default:z[a+308>>2]=f;v[a+312>>2]=0;UG(a- -64|0,f,1);return;case 1:break f}}b=v[e>>2]}z[a+308>>2]=f;v[a+312>>2]=0;Xu(b,e);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}}function oo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=C(0);z[a+284>>2]=z[b>>2];z[a+288>>2]=z[b+4>>2];z[a+292>>2]=z[b+8>>2];e=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:d=v[e>>2];if(w[d+4785|0]){break b}default:BG(a- -64|0,b);break a;case 1:break c}}d=v[e>>2]}Xu(d,e);v[a+316>>2]=v[a+316>>2]|4194304}d:{if(!uh(a)){break d}d=1;d=z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?d:z[b+8>>2]!=C(0);f=z[a+308>>2];b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}g=z[b+5148>>2];b=f>2]!=0?1:b)){break d}f=b?g:f;e:{f:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:b=v[e>>2];if(w[b+4785|0]){break e}default:z[a+308>>2]=f;v[a+312>>2]=0;UG(a- -64|0,f,1);return;case 1:break f}}b=v[e>>2]}z[a+308>>2]=f;v[a+312>>2]=0;Xu(b,e);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}}function eZ(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0);v=z[c>>2];i=z[b>>2];o=C(v-i);m=z[d+4>>2];g=z[b+4>>2];n=C(m-g);h=z[d>>2];p=C(h-i);w=z[c+4>>2];j=C(w-g);r=C(C(o*n)-C(p*j));k=z[a>>2];h=C(h-k);l=z[a+4>>2];g=C(g-l);i=C(i-k);m=C(m-l);s=j;x=z[d+8>>2];j=z[b+8>>2];y=C(x-j);A=z[c+8>>2];q=C(A-j);t=C(C(s*y)-C(n*q));u=z[a+8>>2];j=C(j-u);n=C(x-u);o=C(C(q*p)-C(y*o));p=C(C(r*C(C(h*g)-C(i*m)))+C(C(t*C(C(m*j)-C(g*n)))+C(o*C(C(n*i)-C(j*h)))));l=C(w-l);k=C(v-k);q=C(r*C(C(i*l)-C(k*g)));s=g;g=C(A-u);i=C(q+C(C(t*C(C(s*g)-C(l*j)))+C(o*C(C(j*k)-C(g*i)))));h=C(C(C(r*C(C(k*m)-C(h*l)))+C(C(t*C(C(l*n)-C(m*g)))+C(o*C(C(g*h)-C(n*k)))))+C(p+i));h=h!=C(0)?C(C(1)/h):C(0);z[e>>2]=p*h;z[f>>2]=i*h}function C9(a){var b=0,c=0,d=C(0),e=C(0),f=0,g=C(0);f=(p(a),j(2));c=f&2147483647;if(c>>>0>=1283457024){return((p(a),j(2))&2147483647)>>>0>2139095040?a:(l(2,(p(a),j(2))&-2147483648|1070141402),q())}a:{b:{if(c>>>0<=1054867455){b=-1;if(c>>>0>=964689920){break b}break a}a=C(D(a));if(c>>>0<=1066926079){if(c>>>0<=1060110335){a=C(C(C(a+a)+C(-1))/C(a+C(2)));b=0;break b}a=C(C(a+C(-1))/C(a+C(1)));b=1;break b}if(c>>>0<=1075576831){a=C(C(a+C(-1.5))/C(C(a*C(1.5))+C(1)));b=2;break b}a=C(C(-1)/a);b=3}e=C(a*a);d=C(e*e);g=C(d*C(C(d*C(-.106480173766613))+C(-.19999158382415771)));d=C(e*C(C(d*C(C(d*C(.06168760731816292))+C(.14253635704517365)))+C(.333333283662796)));if(c>>>0<=1054867455){return C(a-C(a*C(g+d)))}b=b<<2;a=C(z[b+106272>>2]-C(C(C(a*C(g+d))-z[b+106288>>2])-a));a=(f|0)<0?C(-a):a}return a}function wF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;v[d+8>>2]=b;b=b>>>7|0;if((b|0)!=33554431){e=v[a+16>>2];c=e+B(b,24)|0;f=c;c=w[c+4|0];a:{if(c&34){break a}g=v[a+28>>2];if(!(!(c&4)|v[g+(b<<2)>>2]==33554431)){h=e+B(b,24)|0;k=v[h+16>>2];v[h+16>>2]=0;c=c&253;t[f+4|0]=c;b=v[d+8>>2]>>>7|0;b:{if(v[(e+B(b,24)|0)+16>>2]){break b}e=(b<<2)+g|0;i=v[e>>2];if((i|0)==33554431){break b}b=v[a+136>>2];j=v[(b+(v[a+140>>2]<<2)|0)-4>>2];v[(j>>>5&134217724)+g>>2]=i;v[b+(v[e>>2]<<2)>>2]=j;v[a+140>>2]=v[a+140>>2]-1;v[e>>2]=33554431;b=v[d+8>>2]>>>7|0}v[h+16>>2]=k}c=c|32;t[f+4|0]=c;v[(b<<2)+g>>2]=v[a+328>>2];b=v[a+328>>2];if(b>>>0>=(v[a+332>>2]&2147483647)>>>0){YF(a+324|0,d+8|0);c=w[f+4|0];break a}v[v[a+324>>2]+(b<<2)>>2]=v[d+8>>2];v[a+328>>2]=v[a+328>>2]+1}t[f+4|0]=c&190}xa=d+16|0}function hJ(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{e=v[a+20>>2];b:{if(!e){break b}h=v[b+4>>2];i=v[b>>2];d=h<<14&-65536|i>>>2&65535;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;f=e-1&(d>>>16^d);d=v[v[a+12>>2]+(f<<2)>>2];if((d|0)==-1){break b}j=v[a+8>>2];k=v[a+4>>2];while(1){g=B(d,12)+k|0;if(v[g>>2]==(i|0)&v[g+4>>2]==(h|0)){break a}d=v[(d<<2)+j>>2];if((d|0)!=-1){continue}break}}t[c|0]=0;if(v[a+36>>2]==v[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){cJ(a,c);e=v[a+20>>2]}b=v[b+4>>2]<<14&-65536|v[b>>2]>>>2&65535;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;f=e-1&(b>>>16^b)}b=v[a+28>>2];v[a+28>>2]=b+1;c=v[a+12>>2]+(f<<2)|0;v[v[a+8>>2]+(b<<2)>>2]=v[c>>2];v[c>>2]=b;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return v[a+4>>2]+B(b,12)|0}t[c|0]=1;return g}function kD(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=v[a+4>>2];e=f>>>0>b>>>0?v[v[a>>2]+(b<<2)>>2]:e;h=c>>>0>>0?v[v[a>>2]+(c<<2)>>2]:h;i=v[d+8>>2];a:{if((e|0)==-1){break a}k=i+B(e,28)|0;g=v[k+24>>2];j=g>>>1&15;if(!j){break a}l=v[d>>2]+(g>>>3&536870908)|0;e=0;while(1){f=(e<<2)+l|0;if(v[f>>2]==(b|0)){m=g&-31;g=j-1|0;v[k+24>>2]=m|g<<1;v[f>>2]=-1;v[v[a>>2]+(b<<2)>>2]=-1;if((e|0)==(g|0)){break a}e=v[f>>2];j=f;f=(g<<2)+l|0;v[j>>2]=v[f>>2];v[f>>2]=e;break a}e=e+1|0;if((j|0)!=(e|0)){continue}break}}b:{if((b|0)==(c|0)|(h|0)==-1){break b}e=v[(i+B(h,28)|0)+24>>2];f=e>>>1&15;if(!f){break b}d=v[d>>2]+(e>>>3&536870908)|0;e=0;while(1){i=d+(e<<2)|0;if(v[i>>2]!=(c|0)){e=e+1|0;if((f|0)!=(e|0)){continue}break b}break}v[i>>2]=b;a=v[a>>2];v[a+(b<<2)>>2]=h;v[a+(c<<2)>>2]=-1}}function rq(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=x[b>>1];a:{if(!(b&3)){break a}i=v[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=v[v[a+5932>>2]+(b<<2)>>2];if(!(x[g+4>>1]!=5|!g)){if(e>>>0<=h>>>0){v[(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=v[v[a+5932>>2]+(b<<2)>>2];if(!(x[g+4>>1]!=6|!g)){if(e>>>0<=h>>>0){v[(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=v[v[a+5932>>2]+(b<<2)>>2];j=x[g+4>>1];b:{if((j|0)!=6|!g){if(!g|(j|0)!=5){break b}}if(e>>>0<=h>>>0){v[(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 Su(a){var b=0,c=0,d=0,e=C(0),f=0,g=0,h=C(0),i=C(0),j=0;g=xa-16|0;xa=g;b=a+76|0;c=a+88|0;f=a+12|0;d=v[f+60>>2];a:{if(!d){v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;break a}j=v[d+48>>2];d=v[v[j+1004>>2]+168>>2]+(v[d+40>>2]<<5)|0;h=z[d>>2];i=z[d+4>>2];e=z[j+1084>>2];z[b+8>>2]=e*z[d+8>>2];z[b+4>>2]=e*i;z[b>>2]=e*h;h=z[d+16>>2];i=z[d+20>>2];z[c+8>>2]=e*z[d+24>>2];z[c+4>>2]=e*i;z[c>>2]=e*h}u[a+100>>1]=u[a+12>>1]&1;c=v[a+4>>2];b:{if(!(c&16777215)){break b}b=v[a+8>>2];if(!b){b=Pu(v[a>>2],c>>>24&15);v[a+8>>2]=b}if(c&1){vH(f,v[b>>2],v[b+4>>2])}if(c&2){wH(f,z[b+8>>2],z[b+12>>2])}if(c&8){e=z[b+20>>2];z[f+56>>2]=e;d=v[f+60>>2];if(d){z[d+44>>2]=e}}if(!(c&4)){break b}u[g+8>>1]=x[a+100>>1]|x[b+16>>1];uH(f,g+8|0)}v[a+8>>2]=0;v[a+4>>2]=w[a+7|0]<<24;xa=g+16|0}function RW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);i=v[b+4>>2];e=v[b+8>>2];j=d;f=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];c=C(C(z[b+52>>2]*f)+C(C(z[b+20>>2]*g)+C(h*z[b+36>>2])))>C(0);d=C(C(z[b+48>>2]*f)+C(C(z[b+16>>2]*g)+C(h*z[b+32>>2])))>C(0);b=C(C(z[b+56>>2]*f)+C(C(z[b+24>>2]*g)+C(h*z[b+40>>2])))>C(0);v[j>>2]=c<<1|d|b<<2;k=z[e+52>>2];l=z[e+36>>2];m=z[e+20>>2];n=z[e+56>>2];o=z[e+40>>2];f=z[i+56>>2];p=z[e+24>>2];g=z[i+52>>2];q=z[e+48>>2];r=z[e+32>>2];s=z[e>>2];t=z[e+16>>2];u=z[e+4>>2];w=z[e+8>>2];h=z[i+48>>2];v[a+12>>2]=0;f=b?f:C(-f);h=d?h:C(-h);g=c?g:C(-g);z[a+8>>2]=n+C(C(o*f)+C(C(w*h)+C(p*g)));z[a+4>>2]=k+C(C(l*f)+C(C(u*h)+C(g*m)));z[a>>2]=q+C(C(r*f)+C(C(s*h)+C(g*t)))}function L9(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=xa-32|0;xa=f;d=v[a+28>>2];v[f+16>>2]=d;g=v[a+20>>2];v[f+28>>2]=c;v[f+24>>2]=b;b=g-d|0;v[f+20>>2]=b;g=b+c|0;i=2;a:{b:{b=f+16|0;d=sa(v[a+60>>2],b|0,2,f+12|0)|0;if(d){v[37699]=d;d=-1}else{d=0}c:{d:{if(d){d=b;break d}while(1){e=v[f+12>>2];if((e|0)==(g|0)){break c}if((e|0)<0){d=b;break b}h=v[b+4>>2];j=h>>>0>>0;d=(j<<3)+b|0;h=e-(j?h:0)|0;v[d>>2]=h+v[d>>2];b=(j?12:4)+b|0;v[b>>2]=v[b>>2]-h;g=g-e|0;b=d;i=i-j|0;e=sa(v[a+60>>2],b|0,i|0,f+12|0)|0;if(e){v[37699]=e;e=-1}else{e=0}if(!e){continue}break}}if((g|0)!=-1){break b}}b=v[a+44>>2];v[a+28>>2]=b;v[a+20>>2]=b;v[a+16>>2]=b+v[a+48>>2];a=c;break a}v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a>>2]=v[a>>2]|32;a=0;if((i|0)==2){break a}a=c-v[d+4>>2]|0}xa=f+32|0;return a|0}function wh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0,m=0;l=v[a+16>>2];if((Taa(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}e=b<<2;i=C(z[a+24>>2]*C(b>>>0));a:{if(i=C(0)){d=~~i>>>0;break a}d=0}k=d;f=k<<2;d=e+f|0;d=(0-d&12)+d|0;c=d;f=d+f|0;if(f){g=v[37696]+12|0;g=Ba[v[v[g>>2]+8>>2]](g,f,24422,17301,372)|0}d=I9(g,255,e);f=c+d|0;g=e+d|0;if(v[a+36>>2]){m=b-1|0;e=0;while(1){h=e<<2;j=v[h+v[a+4>>2]>>2];c=j+(j<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=d+(((c>>>16^c)&m)<<2)|0;v[g+h>>2]=v[c>>2];v[c>>2]=e;v[f+h>>2]=j;e=e+1|0;if(e>>>0>2]){continue}break}}e=v[a>>2];if(e){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,e)}v[a+20>>2]=b;v[a+12>>2]=d;v[a>>2]=d;v[a+8>>2]=g;v[a+16>>2]=k;v[a+4>>2]=f;if(v[a+28>>2]==-1){v[a+28>>2]=l}}function n$(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0);d=z[b+16>>2];e=z[b>>2];f=z[b+32>>2];a:{if(f>2]-z[b+28>>2]));e=C(c*C(z[b+24>>2]+z[b+8>>2]));f=C(c*C(z[b+4>>2]+z[b+12>>2]));c=C(g*c);break a}f=C(C(C(C(1)-e)+d)-f);c=C(C(.5)/C(K(f)));d=C(c*C(z[b+24>>2]-z[b+8>>2]));e=C(c*C(z[b+20>>2]+z[b+28>>2]));f=C(f*c);c=C(c*C(z[b+4>>2]+z[b+12>>2]));break a}if(e>2]-z[b+12>>2]));e=C(e*c);f=C(c*C(z[b+20>>2]+z[b+28>>2]));c=C(c*C(z[b+24>>2]+z[b+8>>2]));break a}d=C(f+C(C(e+C(1))+d));c=C(C(.5)/C(K(d)));d=C(d*c);e=C(c*C(z[b+4>>2]-z[b+12>>2]));f=C(c*C(z[b+24>>2]-z[b+8>>2]));c=C(c*C(z[b+20>>2]-z[b+28>>2]))}z[a+12>>2]=d;z[a+8>>2]=e;z[a+4>>2]=f;z[a>>2]=c;return a}function ur(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=DP(a+32|0);f=v[c>>2];g=v[v[a+1008>>2]+1156>>2];e=v[c+4>>2];a:{if(!e){break a}if(!b){while(1){b=vr(g,40);v[b+24>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;c=e-d|0;v[b+36>>2]=c>>>0<256?c:256;v[b+32>>2]=B(d,24)+f;v[b+28>>2]=a;v[b+24>>2]=1;v[b>>2]=125916;v[b+20>>2]=0;c=v[b+16>>2];Ba[v[v[c>>2]+72>>2]](c,b);d=d+256|0;if(e>>>0>d>>>0){continue}break a}}while(1){c=vr(g,40);v[c+24>>2]=0;v[c>>2]=0;v[c+4>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;h=e-d|0;v[c+36>>2]=h>>>0<256?h:256;v[c+32>>2]=B(d,24)+f;v[c+28>>2]=a;v[c+24>>2]=1;v[c>>2]=125916;v[c+20>>2]=b;Ba[v[v[b>>2]+16>>2]](b);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);d=d+256|0;if(e>>>0>d>>>0){continue}break}}}function OE(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){a:{b:{g=v[f+4>>2];k=g&2147483647;if(!k){break b}j=g&3;h=v[f>>2];g=0;if(k-1>>>0>=3){n=k-j|0;while(1){k=i<<2;g=Taa(v[h+(k|12)>>2])+(Taa(v[h+(k|8)>>2])+(Taa(v[h+(k|4)>>2])+(Taa(v[h+k>>2])+g|0)|0)|0)|0;i=i+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}if(j){while(1){g=Taa(v[h+(i<<2)>>2])+g|0;i=i+1|0;m=m+1|0;if((j|0)!=(m|0)){continue}break}}if(!g){break b}i=0;g=0;h=0;while(1){j=v[(i<<2)+c>>2];c:{if(v[v[f>>2]+(j>>>3&536870908)>>2]>>>j&1){j=v[a+4>>2];h=h<<2;Ba[v[v[j>>2]+12>>2]](j,h+b|0,c+h|0,d,g);i=i+1|0;h=i;g=0;break c}i=i+1|0;g=g+1|0}if((e|0)!=(i|0)){continue}break}break a}h=0;g=e}e=v[a+4>>2];f=b;b=h<<2;Ba[v[v[e>>2]+12>>2]](e,f+b|0,b+c|0,d,g);a=v[a+8>>2];v[a>>2]=v[a>>2]+1}}function zK(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=v[a+976>>2]&2147483647;a:{if(!o){break a}k=v[a+972>>2];b:{while(1){j=v[k+(i<<2)>>2];if(j){break b}i=i+1|0;if((o|0)!=(i|0)){continue}break}k=f;break a}p=v[a+312>>2]-1|0;q=v[a+320>>2];r=v[a+332>>2];k=f;while(1){l=Qaa(j)|i<<5;j=j-1&j;c:{if(j){break c}h=i+1|0;h=h>>>0>o>>>0?h:o;s=v[a+972>>2];while(1){i=i+1|0;if(o>>>0<=i>>>0){j=0;i=h;break c}j=v[(i<<2)+s>>2];if(!j){continue}break}}if((l|0)==-1){break a}h=v[(l>>>q<<2)+r>>2]+B(l&p,80)|0;l=w[h+43|0];d:{if(l&2){if(!(l&16)){v[n>>2]=h;v[n+4>>2]=v[h+12>>2];n=n+8|0;break d}v[k>>2]=h;v[k+4>>2]=v[h+12>>2];t[h+43|0]=l&239;k=k+8|0;break d}v[m>>2]=h;v[m+4>>2]=v[h+12>>2];m=m+8|0}if(j){continue}break}}v[c>>2]=n-b>>3;v[e>>2]=m-d>>3;v[g>>2]=k-f>>3}function hW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=0,g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0);h=xa-16|0;xa=h;a=v[a+48>>2];a:{if(v[a+148>>2]){f=jW(a,b);i=z[b>>2];e=z[b+4>>2];g=z[b+8>>2];v[h+12>>2]=0;z[h+8>>2]=-g;z[h+4>>2]=-e;z[h>>2]=-i;j=jW(a,h);a=v[a+152>>2];f=a+B(f,12)|0;i=z[f+8>>2];e=z[f>>2];g=z[f+4>>2];a=B(j,12)+a|0;z[c>>2]=C(z[b+8>>2]*z[a+8>>2])+C(C(z[b>>2]*z[a>>2])+C(z[a+4>>2]*z[b+4>>2]));e=C(C(i*z[b+8>>2])+C(C(e*z[b>>2])+C(g*z[b+4>>2])));break a}f=v[a+152>>2];l=z[b+8>>2];m=z[b>>2];i=z[b+4>>2];e=C(C(z[f+8>>2]*l)+C(C(z[f>>2]*m)+C(z[f+4>>2]*i)));b=w[a+156|0];b:{if(b>>>0<2){g=e;break b}a=1;g=e;while(1){j=f+B(a,12)|0;k=C(C(z[j+8>>2]*l)+C(C(z[j>>2]*m)+C(i*z[j+4>>2])));g=g>2]=g}z[d>>2]=e;xa=h+16|0}function v4(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);g=z[d>>2];m=z[b+4>>2];n=z[c+8>>2];i=z[b+8>>2];j=z[c+4>>2];p=C(C(m*n)-C(i*j));f=z[b>>2];o=z[d+8>>2];h=z[d+4>>2];l=C(C(j*o)-C(n*h));k=z[c>>2];q=C(o*m);e=C(C(g*p)+C(C(f*l)+C(k*C(C(h*i)-q))));a:{if(e==C(0)){j=C(1);i=C(0);r=C(1);f=C(0);l=C(0);s=C(1);e=C(0);break a}e=C(C(1)/e);s=C(C(C(f*j)+C(k*C(-m)))*e);r=C(C(C(f*o)-C(i*g))*e);t=C(C(C(k*h)-C(j*g))*e);j=C(l*e);l=C(e*C(-C(C(f*n)-C(i*k))));f=C(e*C(-C(C(f*h)-C(m*g))));i=C(e*C(-C(q+C(i*C(-h)))));u=C(e*C(-C(C(k*o)-C(g*n))));e=C(p*e)}g=z[b+12>>2];k=f;f=z[c+12>>2];h=z[d+12>>2];z[a+8>>2]=-C(C(C(t*g)+C(k*f))+C(s*h));z[a+4>>2]=-C(C(C(u*g)+C(r*f))+C(l*h));z[a>>2]=-C(C(C(j*g)+C(i*f))+C(e*h))}function cx(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);k=z[e+24>>2];l=z[e+20>>2];m=z[e+16>>2];g=z[e+8>>2];h=z[e+4>>2];i=z[e>>2];n=v[d+72>>2];if(n){while(1){e=B(j,24)+d|0;f=C(C(C(z[e+20>>2]*g)+C(C(z[e+12>>2]*i)+C(z[e+16>>2]*h)))+C(C(z[e+8>>2]*k)+C(C(z[e>>2]*m)+C(z[e+4>>2]*l))));e=(j<<5)+b|0;o=C(o+C(f*z[e+24>>2]));p=C(p+C(f*z[e+20>>2]));q=C(q+C(f*z[e+16>>2]));r=C(r+C(f*z[e+8>>2]));s=C(s+C(z[e+4>>2]*f));t=C(t+C(z[e>>2]*f));j=j+1|0;if((n|0)!=(j|0)){continue}break}}f=z[c+8>>2];u=z[c>>2];w=z[c+4>>2];v[a+28>>2]=0;v[a+12>>2]=0;g=C(g-r);z[a+8>>2]=g;h=C(h-s);z[a+4>>2]=h;i=C(i-t);z[a>>2]=i;z[a+24>>2]=C(k-o)+C(C(u*h)-C(i*w));z[a+20>>2]=C(l-p)+C(C(f*i)-C(g*u));z[a+16>>2]=C(m-q)+C(C(w*g)-C(h*f))}function WJ(a){var b=0,c=0,d=0,e=0,f=0;b=v[a+32>>2];if(b){while(1){eS(b,0);b=v[b>>2];if(b){continue}break}}d=w[v[a+44>>2]+9|0]-1|0;a:{b:{if(d>>>0<=1){b=v[a+28>>2];if(!b){break a}e=v[a+40>>2];c=v[a+20>>2];if(y[a+152>>2]>=4294967294){break b}while(1){b=b-1|0;c:{d:{e:{a=v[c>>2];switch(w[a+20|0]){case 1:break d;case 0:break e;default:break c}}MR(a-4|0);break c}u[a+52>>1]=x[a+52>>1]|32;d=w[a+21|0];if(d&32){break c}t[a+21|0]=d|32;_O(e,a)}c=c+4|0;if(b){continue}break}break a}b=v[a+28>>2];if(!b){break a}e=v[a+40>>2];c=v[a+20>>2]}d=d>>>0<2;while(1){b=b-1|0;f:{g:{h:{a=v[c>>2];switch(w[a+20|0]){case 0:break g;case 1:break h;default:break f}}u[a+52>>1]=x[a+52>>1]|32;f=w[a+21|0];if(f&32){break f}t[a+21|0]=f|32;_O(e,a);break f}a=a-4|0;MR(a);WR(a,d)}c=c+4|0;if(b){continue}break}}}function SR(a,b,c,d){var e=0,f=0,g=0,h=0;a:{e=v[a+44>>2];if(e&32768){break a}v[a+44>>2]=e&-98305|32768;e=v[v[a+28>>2]+4>>2];h=w[v[e+44>>2]+9|0]-1>>>0<2?e:0;e=v[v[a+32>>2]+4>>2];e=w[v[e+44>>2]+9|0]-1>>>0<2?e:0;f=v[a+48>>2];g=x[f+2>>1];u[f+2>>1]=g+1;b:{if(!(g?d:1)){break b}d=v[h+100>>2];v[d+152>>2]=v[d+152>>2]+1;if(!e){break b}d=v[e+100>>2];v[d+152>>2]=v[d+152>>2]+1}d=v[a+44>>2];if(!(d&476)){break a}if(d&4){e=x[v[a+48>>2]+2>>1];NR(a);OR(a,4,((e|0)==1)<<2,0,b,1,c)}if(d&8){b=v[v[v[a+4>>2]+40>>2]+2168>>2];c=xa-16|0;xa=c;v[c+12>>2]=a;v[a+44>>2]=v[a+44>>2]|2097152;d=v[b+20>>2];v[a+52>>2]=d;c:{if(d>>>0>=(v[b+24>>2]&2147483647)>>>0){BJ(b+16|0,c+12|0);break c}v[v[b+16>>2]+(d<<2)>>2]=a;v[b+20>>2]=d+1}xa=c+16|0;return}if(!(d&448)){break a}zJ(v[v[v[a+4>>2]+40>>2]+2168>>2],a)}}function M4(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=145092;c=v[a+32>>2];d=v[c+36>>2];a:{b:{if(!d){v[c+92>>2]=0;break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d);v[c+36>>2]=0;b=c;c=v[a+32>>2];v[b+92>>2]=0;if(!c){break a}}A4(c);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}d=v[a+36>>2];if(d){b=v[d+32>>2];c:{if((b|0)<0|!(b&2147483647)){break c}c=v[d+24>>2];if(!c){break c}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[d+20>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=v[d+12>>2];if(!c){break d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[d+8>>2];e:{if((b|0)<0|!(b&2147483647)){break e}c=v[d>>2];if(!c){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d)}c=v[a+40>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+44>>2]=0;return r4(a)|0}function G9(a){var b=C(0),c=0,d=0,e=0,f=0;c=xa-16|0;xa=c;e=(p(a),j(2));d=e&2147483647;a:{if(d>>>0<=1061752794){b=C(1);if(d>>>0<964689920){break a}b=D9(+a);break a}if(d>>>0<=1081824209){if(d>>>0>=1075235812){b=C(-D9(((e|0)<0?3.141592653589793:-3.141592653589793)+ +a));break a}f=+a;if((e|0)<0){b=E9(f+1.5707963267948966);break a}b=E9(1.5707963267948966-f);break a}if(d>>>0<=1088565717){if(d>>>0>=1085271520){b=D9(((e|0)<0?6.283185307179586:-6.283185307179586)+ +a);break a}if((e|0)<0){b=E9(-4.71238898038469-+a);break a}b=E9(+a+-4.71238898038469);break a}b=C(a-a);if(d>>>0>=2139095040){break a}b:{switch(F9(a,c+8|0)&3){case 0:b=D9(A[c+8>>3]);break a;case 1:b=E9(-A[c+8>>3]);break a;case 2:b=C(-D9(A[c+8>>3]));break a;default:break b}}b=E9(A[c+8>>3])}a=b;xa=c+16|0;return a}function YK(a,b,c,d){var e=0,f=0,g=0,h=0;if(y[a+320>>2]>>0){MK(a+316|0,d)}e=v[a+44>>2];f=e+c|0;d=v[a+48>>2];a:{if(f>>>0>d>>>0){d=d<<1;d=d>>>0>>0?f:d;d=d>>>0>1024?d:1024;v[a+48>>2]=d;h=v[a+40>>2];d=d<<2;if(d){g=v[37696]+12|0;d=Ba[v[v[g>>2]+8>>2]](g,d,24422,13489,890)|0}else{d=0}if(e){H9(d,h,e<<2)}if(!h){break a}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,h);break a}d=v[a+40>>2]}v[a+44>>2]=f;v[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){v[a>>2]=v[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){v[a>>2]=v[b>>2]|-2147483648;v[a+4>>2]=v[b+4>>2]|-2147483648;v[a+8>>2]=v[b+8>>2]|-2147483648;v[a+12>>2]=v[b+12>>2]|-2147483648;a=a+16|0;b=b+16|0;c=c-4|0;if(c){continue}break}}}function hK(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=B(f,20);if(!c){break a}d=v[37696];e=d+12|0;e=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?26471:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=B(c,20)+e|0;c=v[a>>2];d=e;while(1){g=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=g;v[d+16>>2]=v[c+16>>2];g=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=g;c=c+20|0;d=d+20|0;if(h>>>0>d>>>0){continue}break}c=v[a+4>>2]}d=B(c,20)+e|0;c=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=c;v[d+16>>2]=v[b+16>>2];c=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=c;b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function kh(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=xa-16|0;xa=g;f=v[a+4>>2];if(!f){f=Qm(v[37389]);v[a+4>>2]=f}d=v[f+44>>2];if(!((d|0)>=0|v[f+40>>2]!=(d&2147483647))){f=Qm(v[37389]);e=v[a+4>>2];d=v[e+36>>2];e=v[e+40>>2];if(e>>>0>(v[f+44>>2]&2147483647)>>>0){eh(f,e)}v[f+40>>2]=e;h=v[f+40>>2];if((h|0)>0){e=v[f+36>>2];h=e+(h<<3)|0;while(1){t[e|0]=w[d|0];v[e+4>>2]=v[d+4>>2];d=d+8|0;e=e+8|0;if(h>>>0>e>>>0){continue}break}}d=v[a+4>>2];e=v[d+44>>2];a:{if((e|0)<0|!(e&2147483647)){break a}e=v[d+36>>2];if((e|0)==(d|0)){t[d+32|0]=0;break a}if(!e){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+4>>2]=f;d=v[f+44>>2]}v[g+12>>2]=c;t[g+8|0]=b;a=v[f+40>>2];b:{if(a>>>0>=(d&2147483647)>>>0){fh(f,g+8|0);break b}d=v[f+36>>2]+(a<<3)|0;v[d+4>>2]=c;t[d|0]=b;v[f+40>>2]=a+1}xa=g+16|0}function IY(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((v[a+268>>2]&2147483647)>>>0>>0){a:{if(!b){break a}d=b<<2;if(!(w[a+256|0]|d>>>0>256)){t[a+256|0]=1;e=a;break a}if(!d){break a}e=v[37696];f=e+12|0;e=(j=f,k=d,l=Ba[v[v[e>>2]+20>>2]](e)|0?29035:63804,m=16608,n=553,i=v[v[f>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+260>>2];d=v[a+264>>2];if((d|0)>0){h=(d<<2)+e|0;g=f;d=e;while(1){v[d>>2]=v[g>>2];g=g+4|0;d=d+4|0;if(h>>>0>d>>>0){continue}break}}b:{if(v[a+268>>2]<0){break b}if((a|0)==(f|0)){t[a+256|0]=0;break b}if(!f){break b}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,f)}v[a+268>>2]=b;v[a+260>>2]=e}e=v[a+264>>2];if((e|0)<(b|0)){d=v[a+260>>2];f=d+(b<<2)|0;d=d+(e<<2)|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+264>>2]=b}function a3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=xa+-64|0;xa=f;if(!(!v[b+8>>2]|(!v[b+4>>2]|y[b>>2]<24))){d=f+8|0;v[d>>2]=0;v[d+4>>2]=0;v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;g=e3(d,b);if(g){a:{a=Ba[v[v[a>>2]+12>>2]](a)|0;if(!oX(66,86,72,83,1,a,c)){break a}jX(v[d+4>>2],a,c);jX(v[d+8>>2],a,c);b:{if(!v[d+4>>2]){break b}while(1){jX(v[v[d+16>>2]+(e<<2)>>2],a,c);e=e+1|0;b=v[d+4>>2];if(e>>>0>>0){continue}break}if(!b){break b}e=0;while(1){b=B(e,24);mX(b+v[d>>2]|0,3,a,c);mX((b+v[d>>2]|0)+12|0,3,a,c);e=e+1|0;if(e>>>0>2]){continue}break}}if(!v[d+8>>2]){break a}e=0;while(1){b=B(e,28);jX(v[(b+v[d+12>>2]|0)+24>>2],a,c);mX(b+v[d+12>>2]|0,3,a,c);mX((b+v[d+12>>2]|0)+12|0,3,a,c);e=e+1|0;if(e>>>0>2]){continue}break}}}d3(d)}xa=f- -64|0;return g|0}function Q9(a){var b=0,c=0,d=0,e=0;b=xa-16|0;xa=b;e=(p(a),j(2));c=e&2147483647;a:{if(c>>>0<=1061752794){if(c>>>0<964689920){break a}a=E9(+a);break a}if(c>>>0<=1081824209){d=+a;if(c>>>0<=1075235811){if((e|0)<0){a=C(-D9(d+1.5707963267948966));break a}a=D9(d+-1.5707963267948966);break a}a=E9(-(((e|0)>=0?-3.141592653589793:3.141592653589793)+d));break a}if(c>>>0<=1088565717){if(c>>>0<=1085271519){d=+a;if((e|0)<0){a=D9(d+4.71238898038469);break a}a=C(-D9(d+-4.71238898038469));break a}a=E9(((e|0)<0?6.283185307179586:-6.283185307179586)+ +a);break a}if(c>>>0>=2139095040){a=C(a-a);break a}b:{switch(F9(a,b+8|0)&3){case 0:a=E9(A[b+8>>3]);break a;case 1:a=D9(A[b+8>>3]);break a;case 2:a=E9(-A[b+8>>3]);break a;default:break b}}a=C(-D9(A[b+8>>3]))}xa=b+16|0;return a}function BA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=xa-32|0;xa=b;xA(a,c);d=v[c+16>>2];v[b+16>>2]=d+B(v[a+12>>2],112);v[b+20>>2]=d+B(v[a+44>>2],112);v[b+24>>2]=d+B(v[a+76>>2],112);v[b+28>>2]=d+B(v[a+108>>2],112);v[b>>2]=d+B(v[a+16>>2],112);v[b+4>>2]=d+B(v[a+48>>2],112);v[b+8>>2]=d+B(v[a+80>>2],112);v[b+12>>2]=d+B(v[a+112>>2],112);tA(a,c,b+16|0,b);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){d=v[c+28>>2];a=a+v[d>>2]|0;v[d>>2]=a;d=v[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=v[c+4>>2]+(a<<5)|0;f=v[e+4>>2];d=v[c+20>>2]+(a+g<<5)|0;v[d>>2]=v[e>>2];v[d+4>>2]=f;f=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=f;f=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=f;f=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}xa=b+32|0}function AA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=xa-32|0;xa=b;vA(a,c);d=v[c+16>>2];v[b+16>>2]=d+B(v[a+12>>2],112);v[b+20>>2]=d+B(v[a+44>>2],112);v[b+24>>2]=d+B(v[a+76>>2],112);v[b+28>>2]=d+B(v[a+108>>2],112);v[b>>2]=d+B(v[a+16>>2],112);v[b+4>>2]=d+B(v[a+48>>2],112);v[b+8>>2]=d+B(v[a+80>>2],112);v[b+12>>2]=d+B(v[a+112>>2],112);tA(a,c,b+16|0,b);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){d=v[c+28>>2];a=a+v[d>>2]|0;v[d>>2]=a;d=v[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=v[c+4>>2]+(a<<5)|0;f=v[e+4>>2];d=v[c+20>>2]+(a+g<<5)|0;v[d>>2]=v[e>>2];v[d+4>>2]=f;f=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=f;f=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=f;f=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}xa=b+32|0}function dB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=xa-32|0;xa=b;$A(a);d=v[c+16>>2];v[b+16>>2]=d+B(v[a+12>>2],112);v[b+20>>2]=d+B(v[a+44>>2],112);v[b+24>>2]=d+B(v[a+76>>2],112);v[b+28>>2]=d+B(v[a+108>>2],112);v[b>>2]=d+B(v[a+16>>2],112);v[b+4>>2]=d+B(v[a+48>>2],112);v[b+8>>2]=d+B(v[a+80>>2],112);v[b+12>>2]=d+B(v[a+112>>2],112);XA(a,c,b+16|0,b);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){d=v[c+28>>2];a=a+v[d>>2]|0;v[d>>2]=a;d=v[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=v[c+4>>2]+(a<<5)|0;f=v[e+4>>2];d=v[c+20>>2]+(a+g<<5)|0;v[d>>2]=v[e>>2];v[d+4>>2]=f;f=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=f;f=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=f;f=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}xa=b+32|0}function cB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=xa-32|0;xa=b;ZA(a);d=v[c+16>>2];v[b+16>>2]=d+B(v[a+12>>2],112);v[b+20>>2]=d+B(v[a+44>>2],112);v[b+24>>2]=d+B(v[a+76>>2],112);v[b+28>>2]=d+B(v[a+108>>2],112);v[b>>2]=d+B(v[a+16>>2],112);v[b+4>>2]=d+B(v[a+48>>2],112);v[b+8>>2]=d+B(v[a+80>>2],112);v[b+12>>2]=d+B(v[a+112>>2],112);XA(a,c,b+16|0,b);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){d=v[c+28>>2];a=a+v[d>>2]|0;v[d>>2]=a;d=v[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=v[c+4>>2]+(a<<5)|0;f=v[e+4>>2];d=v[c+20>>2]+(a+g<<5)|0;v[d>>2]=v[e>>2];v[d+4>>2]=f;f=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=f;f=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=f;f=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}xa=b+32|0}function zN(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(x[b+68>>1]<=1){g=v[c+4624>>2];if(!g){break a}c=x[b+34>>1];a=x[a+34>>1];b=0;if(g-1>>>0>=3){i=g&-4;while(1){f=b<<2;e=f+d|0;u[e+2>>1]=c;u[e>>1]=a;e=(f|4)+d|0;u[e+2>>1]=c;u[e>>1]=a;e=(f|8)+d|0;u[e+2>>1]=c;u[e>>1]=a;f=(f|12)+d|0;u[f+2>>1]=c;u[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;u[f+2>>1]=c;u[f>>1]=a;b=b+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}break a}g=v[c+4624>>2];if(!g){break a}c=c+528|0;f=v[b- -64>>2];i=v[v[b+60>>2]+44>>2];a=x[a+34>>1];b=0;while(1){e=(b<<2)+d|0;u[e>>1]=a;h=e;e=v[(c+(b<<6)|0)+52>>2];u[h+2>>1]=x[f+((w[(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 pt(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(v[c>>2]-4|0){case 1:break c;case 2:break d;case 0:break e;default:break a}}d=(t[a+36|0]&1?v[a+40>>2]- -64|0:c)+32|0;break b}d=(t[a+36|0]&1?v[a+40>>2]- -64|0:c)+4|0;break b}d=(t[a+36|0]&1?v[a+40>>2]- -64|0:c)+36|0}c=v[d>>2];if(!c){break a}Ba[v[v[b>>2]+8>>2]](b,c)}if(w[a+36|0]&2){c=x[v[a+40>>2]+124>>1]}else{d=v[a+116>>2];c=1;f:{if(d-7>>>0<4294967294){break f}c=x[a+168>>1];if((d|0)==5){break f}c=x[a+148>>1]}}e=c&65535;if(e){f=a+48|0;c=0;while(1){g=v[37393];g:{if(w[a+36|0]&2){d=v[a+40>>2];d=x[d+124>>1]==1?d+120|0:v[v[a+32>>2]+4856>>2]+(v[d+120>>2]<<1)|0;break g}d=FR(f)}Ba[v[v[b>>2]+8>>2]](b,v[v[g+40>>2]+(x[d+(c<<1)>>1]<<2)>>2]);c=c+1|0;if((e|0)!=(c|0)){continue}break}}}function dK(a,b){var c=0,d=0,e=0;a:{b:{c:{d:{e:{f:{b=B(b,20);e=b+v[a+72>>2]|0;switch(v[e+8>>2]){case 1:break d;case 0:break e;case 2:break f;default:break c}}a=v[a+4>>2];Ba[v[v[a>>2]+8>>2]](a,2,23073,8741,431);break a}a=v[a+8>>2];Ba[v[v[a>>2]>>2]](a,v[e>>2]);break b}b=v[e+12>>2];if((b|0)!=-1){while(1){b=v[a+60>>2]+(b<<3)|0;d=v[a+72>>2]+B(v[b>>2],20)|0;c=v[d+4>>2]-1|0;v[d+4>>2]=c;if(!c){dK(a,v[b>>2])}b=v[b+4>>2];if((b|0)!=-1){continue}break}}v[a+52>>2]=v[a+52>>2]-1;break b}c=v[a+4>>2];Ba[v[v[c>>2]+8>>2]](c,2,21893,8741,448);b=v[(b+v[a+72>>2]|0)+12>>2];if((b|0)!=-1){while(1){b=v[a+60>>2]+(b<<3)|0;d=v[a+72>>2]+B(v[b>>2],20)|0;c=v[d+4>>2]-1|0;v[d+4>>2]=c;if(!c){dK(a,v[b>>2])}b=v[b+4>>2];if((b|0)!=-1){continue}break}}v[a+52>>2]=v[a+52>>2]-1}v[e+8>>2]=2}}function RQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+20>>2];a=v[a+28>>2];c=v[a+976>>2];d=v[a+1004>>2];Ba[v[v[d>>2]+16>>2]](d);c=c+24|0;Fy(c);Dy(c);v[a+1172>>2]=0;v[a+1160>>2]=0;v[v[a+976>>2]+1788>>2]=v[c+172>>2];v[a+3140>>2]=b;v[a+3144>>2]=1;if(b){Ba[v[v[b>>2]+16>>2]](b);v[a+3136>>2]=v[v[a+3140>>2]+16>>2]}c=0;d=v[a+36>>2];if(d){g=v[a+24>>2];h=v[v[a+976>>2]+1156>>2];f=a+3120|0;while(1){b=vr(h,40);e=v[a+20>>2];i=v[a+16>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=i;v[b+12>>2]=e;e=d-c|0;v[b+32>>2]=e>>>0<1024?e:1024;v[b+28>>2]=(c<<2)+g;v[b>>2]=135004;v[b+20>>2]=f;v[b+24>>2]=1;Ba[v[v[a+3120>>2]+16>>2]](f);v[b+16>>2]=v[v[b+20>>2]+16>>2];Ba[v[v[b>>2]+20>>2]](b);c=c+1024|0;if(d>>>0>c>>>0){continue}break}}b=v[a+3136>>2];Ba[v[v[b>>2]+72>>2]](b,a+3120|0)}function sU(a){a=a|0;var b=0,c=0;v[a>>2]=140372;a:{if(!v[a+480>>2]){break a}b=v[a+424>>2];if(!b){break a}Ba[v[v[b>>2]>>2]](b)}b=v[a+516>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b:{if(!w[a+244|0]){break b}b=v[a+240>>2];if(!b){break b}gU(v[a+248>>2],b)}v[a+240>>2]=0;c:{if(!w[a+256|0]){break c}b=v[a+252>>2];if(!b){break c}gU(v[a+260>>2],b)}v[a+252>>2]=0;b=v[a+128>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+120>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+116>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+108>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+104>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+96>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function _3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=xa-16|0;xa=d;t[d+15|0]=82;t[d+14|0]=84;t[d+13|0]=82;t[d+12|0]=69;Ba[v[v[b>>2]>>2]](b,d+15|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+14|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+13|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+12|0,1)|0;jX(2,c,b);mX(a+112|0,4,c,b);mX(a+128|0,4,c,b);mX(a+144|0,4,c,b);mX(a+160|0,4,c,b);jX(v[a+176>>2],c,b);jX(v[a+180>>2],c,b);jX(v[a+184>>2],c,b);jX(v[a+188>>2],c,b);jX(v[a+192>>2],c,b);jX(0,c,b);if(v[a+192>>2]){while(1){e=B(f,112);mX(e+v[a+200>>2]|0,4,c,b);mX((v[a+200>>2]+e|0)+16|0,4,c,b);mX((v[a+200>>2]+e|0)+32|0,4,c,b);mX((v[a+200>>2]+e|0)+48|0,4,c,b);mX((v[a+200>>2]+e|0)- -64|0,4,c,b);mX((v[a+200>>2]+e|0)+80|0,4,c,b);mX((v[a+200>>2]+e|0)+96|0,4,c,b);f=f+1|0;if(f>>>0>2]){continue}break}}xa=d+16|0}function RO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;a:{if(!b){break a}f=v[a>>2];e=B(f,v[a+16>>2]);if(e>>>0>=b>>>0){break a}g=a+12|0;h=B(v[a+4>>2],f);if(!h){while(1){v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;c=v[a+16>>2];b:{if(c>>>0>=(v[a+20>>2]&2147483647)>>>0){KO(g,d);break b}c=v[a+12>>2]+B(c,12)|0;v[c>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[a+16>>2]=v[a+16>>2]+1}e=e+f|0;if(e>>>0>>0){continue}break a}}while(1){v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;c=v[37696]+12|0;j=d,k=Ba[v[v[c>>2]+8>>2]](c,h,24422,18584,60)|0,v[j>>2]=k;c=v[a+16>>2];c:{if(c>>>0>=(v[a+20>>2]&2147483647)>>>0){KO(g,d);break c}i=v[d+4>>2];c=v[a+12>>2]+B(c,12)|0;v[c>>2]=v[d>>2];v[c+4>>2]=i;v[c+8>>2]=v[d+8>>2];v[a+16>>2]=v[a+16>>2]+1}e=e+f|0;if(e>>>0>>0){continue}break}}xa=d+16|0}function YL(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=(b<<3)+8|0;if(g){h=v[37696]+12|0;h=Ba[v[v[h>>2]+8>>2]](h,g,24422,5684,742)|0}g=b<<4;if(g){i=v[37696]+12|0;i=Ba[v[v[i>>2]+8>>2]](i,g,24422,5684,743)|0}g=0;f=b<<2;if(f){j=v[37696]+12|0;j=Ba[v[v[j>>2]+8>>2]](j,f,24422,5684,744)|0;k=v[37696]+12|0;k=Ba[v[v[k>>2]+8>>2]](k,f,24422,5684,745)|0}v[a+16>>2]=b;v[a+12>>2]=k;v[a+8>>2]=j;v[a+4>>2]=i;v[a>>2]=h;if(b){m=v[c+4>>2];n=v[c+8>>2];o=v[c>>2];while(1){f=g<<2;c=v[f+d>>2];v[f+j>>2]=v[(c<<2)+e>>2];v[f+k>>2]=c;l=(g<<3)+h|0;f=c<<3;c=f+o|0;v[l>>2]=v[c>>2];v[l+4>>2]=v[c+4>>2];c=(g<<4)+i|0;l=f+n|0;v[c>>2]=v[l>>2];v[c+8>>2]=v[l+4>>2];f=f+m|0;v[c+4>>2]=v[f>>2];v[c+12>>2]=v[f+4>>2];g=g+1|0;if((g|0)!=(b|0)){continue}break}}v[(b<<3)+h>>2]=-1;return a}function G3(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=v[a+8204>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!(w[a+8192|0]|c>>>0>8192)){t[a+8192|0]=1;d=a;break a}if(!c){break a}d=v[37696];e=d+12|0;d=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?39207:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+8200>>2];if((c|0)>0){g=(c<<3)+d|0;e=v[a+8196>>2];c=d;while(1){h=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=h;e=e+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+8200>>2]}e=v[b+4>>2];c=(c<<3)+d|0;v[c>>2]=v[b>>2];v[c+4>>2]=e;b:{if(v[a+8204>>2]<0){break b}b=v[a+8196>>2];if((b|0)==(a|0)){t[a+8192|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8204>>2]=f;v[a+8196>>2]=d;v[a+8200>>2]=v[a+8200>>2]+1}function G8(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);e=xa+-64|0;xa=e;Ba[v[v[a>>2]+76>>2]](e+32|0,a);k=z[e+40>>2];j=z[c+8>>2];g=C(j+j);j=z[e+32>>2];f=z[c>>2];h=C(f+f);f=z[c+4>>2];i=C(f+f);f=z[e+36>>2];m=C(C(k*g)+C(C(j*h)+C(i*f)));l=z[e+44>>2];n=C(C(l*l)+C(-.5));z[e+24>>2]=C(C(k*m)+C(C(g*n)+C(l*C(C(j*i)-C(h*f)))))+z[e+56>>2];z[e+20>>2]=z[e+52>>2]+C(C(f*m)+C(C(i*n)+C(l*C(C(k*h)-C(g*j)))));z[e+16>>2]=z[e+48>>2]+C(C(j*m)+C(C(h*n)+C(l*C(C(f*g)-C(i*k)))));g=z[b+8>>2];g=C(g+g);h=z[b>>2];h=C(h+h);i=z[b+4>>2];i=C(i+i);m=C(C(k*g)+C(C(j*h)+C(f*i)));z[e+8>>2]=C(k*m)+C(C(g*n)+C(l*C(C(j*i)-C(h*f))));z[e+4>>2]=C(f*m)+C(C(i*n)+C(l*C(C(k*h)-C(g*j))));z[e>>2]=C(j*m)+C(C(h*n)+C(l*C(C(f*g)-C(i*k))));E8(a,e,e+16|0,d);xa=e- -64|0}function wW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0;e=xa-16|0;xa=e;b=v[b+4>>2];i=z[b+56>>2];j=z[b+52>>2];k=z[b+72>>2];r=b- -64|0;l=z[r>>2];m=z[b+68>>2];n=z[b+88>>2];o=z[b+80>>2];p=z[b+84>>2];q=z[b+48>>2];f=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];v[e+12>>2]=0;z[e+8>>2]=C(n*f)+C(C(o*g)+C(h*p));z[e+4>>2]=C(k*f)+C(C(l*g)+C(h*m));z[e>>2]=C(i*f)+C(C(q*g)+C(h*j));c=HV(b,e);v[d>>2]=c;i=z[r>>2];j=z[b+80>>2];k=z[b+84>>2];l=z[b+52>>2];m=z[b+68>>2];n=z[b+88>>2];c=v[b+152>>2]+B(c,12)|0;f=z[c+8>>2];o=z[b+56>>2];g=z[c>>2];p=z[b+72>>2];h=z[c+4>>2];q=z[b+48>>2];v[a+12>>2]=0;z[a+8>>2]=C(n*f)+C(C(o*g)+C(h*p));z[a+4>>2]=C(k*f)+C(C(l*g)+C(h*m));z[a>>2]=C(j*f)+C(C(q*g)+C(h*i));xa=e+16|0}function gV(a,b,c,d){var e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0);g=xa-32|0;xa=g;dV(g+8|0,c,d,C(1));e=z[g+24>>2];f=z[g+20>>2];h=z[g+8>>2];i=z[g+12>>2];j=z[g+16>>2];k=z[g+28>>2];z[a+8>>2]=C(j+k)*C(.5);z[a+4>>2]=C(i+e)*C(.5);z[a>>2]=C(h+f)*C(.5);z[b+8>>2]=C(k-j)*C(.5);z[b+4>>2]=C(e-i)*C(.5);z[b>>2]=C(f-h)*C(.5);e=C(34028234663852886e22);a:{b:{switch(v[c>>2]+1|0){case 1:e=C(z[c+4>>2]*C(.75));break a;case 3:e=C(z[c+4>>2]*C(.75));break a;case 4:e=z[c+4>>2];f=z[c+8>>2];e=e>2];e=C((e>2];f=z[c+4>>2];h=z[c+8>>2];f=f>2]- -64>>2]*(e>2]<<3,1),v[a>>2],v[a+8>>2]<<2);g=v[a>>2];c=v[b+16>>2];a:{if(!(g>>>0>=c>>>0&c+v[b+20>>2]>>>0>g>>>0)){if(!g){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break a}k=v[b+4>>2];i=v[b+8>>2];f=i;while(1){c=h;h=c+1|0;e=f;f=e-1|0;d=(f<<2)+k|0;if(y[d>>2]>>0){continue}break}b:{if(e>>>0>=i>>>0){break b}f=c&3;if(f){h=0;while(1){v[d>>2]=v[v[b+4>>2]+(e<<2)>>2];e=e+1|0;d=d+4|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}if(c-1>>>0<3){break b}while(1){c=e<<2;v[d>>2]=v[c+v[b+4>>2]>>2];v[d+4>>2]=v[(c+v[b+4>>2]|0)+4>>2];v[d+8>>2]=v[(c+v[b+4>>2]|0)+8>>2];v[d+12>>2]=v[(c+v[b+4>>2]|0)+12>>2];d=d+16|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}v[b+8>>2]=i-1}v[a>>2]=j;v[a+8>>2]=v[a+8>>2]<<1}function im(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;v[a+12>>2]=121812;v[a>>2]=121708;f=xa-16|0;xa=f;c=v[37393];if(v[c+8>>2]){while(1){b=v[v[c+4>>2]+(g<<2)>>2]+16|0;d=xa-16|0;xa=d;if(x[a+52>>1]!=65535){e=x[a+52>>1];v[d+12>>2]=2;u[d+8>>1]=e;e=v[b+4772>>2];a:{if(e>>>0>=(v[b+4776>>2]&2147483647)>>>0){Nu(b+4768|0,d+8|0);break a}h=v[d+12>>2];e=v[b+4768>>2]+(e<<3)|0;v[e>>2]=v[d+8>>2];v[e+4>>2]=h;v[b+4772>>2]=v[b+4772>>2]+1}}xa=d+16|0;g=g+1|0;if(g>>>0>2]){continue}break}}b=x[a+52>>1];b:{if((b|0)==65535){break b}v[v[c+40>>2]+(b<<2)>>2]=0;v[f+12>>2]=b;if((b|0)==(v[c+24>>2]-1|0)){v[c+24>>2]=b;break b}d=v[c+32>>2];if(d>>>0>=(v[c+36>>2]&2147483647)>>>0){on(c+28|0,f+12|0);break b}v[v[c+28>>2]+(d<<2)>>2]=b;v[c+32>>2]=v[c+32>>2]+1}xa=f+16|0;return a|0}function wO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=v[a+312>>2];h=v[e+964>>2];d=h&2147483647;a:{if(!d){break a}g=v[e+960>>2];a=0;c=1;while(1){b=v[g+(a<<2)>>2];if(!b){c=c+1|0;a=a+1|0;if((d|0)!=(a|0)){continue}break a}break}f=Qaa(b)|a<<5;b=b&b-1;b:{if(b){break b}c=c>>>0>d>>>0?c:d;while(1){a=a+1|0;if(d>>>0<=a>>>0){b=0;a=c;break b}b=v[g+(a<<2)>>2];if(!b){continue}break}}if((f|0)==-1){break a}g=v[e+312>>2]-1|0;i=v[e+320>>2];j=v[e+332>>2];while(1){c=v[(f>>>i<<2)+j>>2]+B(f&g,80)|0;v[c+32>>2]=0;v[c+8>>2]=v[c+8>>2]&-5;if(!b){break a}f=Qaa(b)|a<<5;b=b-1&b;c:{if(b){break c}c=a+1|0;c=c>>>0>d>>>0?c:d;while(1){a=a+1|0;if(d>>>0<=a>>>0){b=0;a=c;break c}b=v[v[e+960>>2]+(a<<2)>>2];if(!b){continue}break}}if((f|0)!=-1){continue}break}}I9(v[e+960>>2],0,h<<2)}function Fu(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=xa-288|0;xa=d;v[b+268>>2]=v[b+268>>2]&-100663297;a:{if(!(w[(v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0)+8|0]&8)){t[d+264|0]=1;v[d+272>>2]=0;v[d+276>>2]=64;e=d+8|0;v[d+268>>2]=e;f=a;a=v[a+2416>>2];NP(f,b+16|0,a?a+272|0:e,c);f=v[(a?a+536|0:d+272|0)>>2];if(f){g=v[(a?a+532|0:d+268|0)>>2];h=v[b>>2]+4816|0;c=0;while(1){a=v[(c<<2)+g>>2];b=a-16|0;e=a-12|0;a=v[e>>2];if(a&268435456){Yu(b);v[d+284>>2]=b;Og(h,d+284|0);a=v[e>>2]&-268435457;v[e>>2]=a}if((a&251658240)==16777216){v[e>>2]=a&1073741823;v[b>>2]=0}au(b);c=c+1|0;if((f|0)!=(c|0)){continue}break}}a=v[d+276>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[d+268>>2];if((a|0)==(d+8|0)|!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a);break a}Gu(b)}xa=d+288|0}function dm(a,b,c){a=a|0;b=b|0;c=C(c);var d=0,e=0;a:{b:{c:{d:{a=a+8|0;e=v[a+4>>2];switch((e>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}iF(a+12|0,b,c);break a}d=v[a+8>>2];e:{f:{if(!(e&4194304)){if(!d){d=Pu(v[a>>2],e>>>24&15);v[a+8>>2]=d;if(!d){break e}}z[d+300>>2]=z[a+216>>2];z[d+324>>2]=z[a+240>>2];z[d+304>>2]=z[a+220>>2];z[d+328>>2]=z[a+244>>2];z[d+308>>2]=z[a+224>>2];z[d+332>>2]=z[a+248>>2];z[d+312>>2]=z[a+228>>2];z[d+336>>2]=z[a+252>>2];z[d+316>>2]=z[a+232>>2];z[d+340>>2]=z[a+256>>2];z[d+320>>2]=z[a+236>>2];z[d+344>>2]=z[a+260>>2];break f}if(d){break f}d=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=d}z[((b<<2)+d|0)+324>>2]=c;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|4194304;break a}Pu(v[a>>2],w[a+7|0]&15);L()}}function cm(a,b,c){a=a|0;b=b|0;c=C(c);var d=0,e=0;a:{b:{c:{d:{a=a+8|0;e=v[a+4>>2];switch((e>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}hF(a+12|0,b,c);break a}d=v[a+8>>2];e:{f:{if(!(e&4194304)){if(!d){d=Pu(v[a>>2],e>>>24&15);v[a+8>>2]=d;if(!d){break e}}z[d+300>>2]=z[a+216>>2];z[d+324>>2]=z[a+240>>2];z[d+304>>2]=z[a+220>>2];z[d+328>>2]=z[a+244>>2];z[d+308>>2]=z[a+224>>2];z[d+332>>2]=z[a+248>>2];z[d+312>>2]=z[a+228>>2];z[d+336>>2]=z[a+252>>2];z[d+316>>2]=z[a+232>>2];z[d+340>>2]=z[a+256>>2];z[d+320>>2]=z[a+236>>2];z[d+344>>2]=z[a+260>>2];break f}if(d){break f}d=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=d}z[((b<<2)+d|0)+300>>2]=c;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|4194304;break a}Pu(v[a>>2],w[a+7|0]&15);L()}}function TR(a,b,c,d){var e=0,f=0;e=v[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=x[v[a+48>>2]+2>>1];NR(a);OR(a,e,((f|0)==1)<<3,1,b,0,c)}b=v[v[a+48>>2]+16>>2];if(!(!b|v[b+12>>2]!=v[v[v[a+4>>2]+40>>2]+1088>>2])){u[b+10>>1]=x[b+10>>1]|16}e=v[a+44>>2];if(!(e&10485760)){break b}b=v[v[v[a+4>>2]+40>>2]+2168>>2];c:{if(e&8388608){AJ(b,a);break c}yJ(b,a)}e=v[a+44>>2]&-1572865}v[a+44>>2]=e&-98305|65536;b=v[v[a+28>>2]+4>>2];c=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;e=v[a+48>>2];a=x[e+2>>1]-1|0;u[e+2>>1]=a;d:{if(a&65535?d:1){a=v[c+100>>2];v[a+152>>2]=v[a+152>>2]-1;if(!b){break d}a=v[b+100>>2];v[a+152>>2]=v[a+152>>2]-1;return 1}f=1;if(b){break a}}oH(c);f=0}return f}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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);o=z[d>>2];k=z[d+8>>2];q=z[c+24>>2];i=C(q-z[d+24>>2]);l=C(i+i);r=z[c+16>>2];i=C(r-z[d+16>>2]);i=C(i+i);s=z[c+20>>2];m=C(s-z[d+20>>2]);j=C(m+m);m=z[d+4>>2];p=C(o*C(C(k*l)+C(C(o*i)+C(j*m))));n=i;i=z[d+12>>2];n=C(p+C(C(n*C(C(i*i)+C(-.5)))-C(i*C(C(m*l)-C(j*k)))));l=z[a+4>>2];j=C(n-l);b=j<=z[e>>2];a:{if(!b){break a}a=v[g+4096>>2];if(a>>>0>63){break a}v[g+4096>>2]=a+1;a=(a<<6)+g|0;v[a+52>>2]=-1;z[a+12>>2]=j;j=C(o+o);p=C(i+i);n=C(C(j*k)-C(m*p));z[a+8>>2]=n;k=C(C(k*p)+C(j*m));z[a+4>>2]=k;i=C(C(o*j)+C(C(i*p)+C(-1)));z[a>>2]=i;z[a+24>>2]=q-C(l*n);z[a+20>>2]=s-C(k*l);z[a+16>>2]=r-C(i*l)}return b|0}function LC(a){var b=0,c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);a:{b=v[a+32>>2];if(!b){break a}d=z[a+8>>2];e=z[a+4>>2];f=z[a>>2];while(1){c=a;a=b;b:{if(z[a>>2]>f|z[a+4>>2]>e|(z[a+8>>2]>d|z[c+16>>2]>z[a+16>>2])){break b}if(z[c+20>>2]>z[a+20>>2]){break b}if(!(z[c+24>>2]>z[a+24>>2])){break a}}c=v[a+40>>2];f=z[c>>2];e=z[c+4>>2];d=z[c+8>>2];b=v[a+36>>2];g=z[b>>2];h=z[b+4>>2];i=z[b+8>>2];j=z[b+12>>2];k=z[c+12>>2];z[a+12>>2]=ji?i:d;z[a+8>>2]=d;e=e>h?h:e;z[a+4>>2]=e;f=f>g?g:f;z[a>>2]=f;g=z[c+16>>2];h=z[b+20>>2];i=z[c+20>>2];j=z[b+24>>2];k=z[c+24>>2];l=z[b+16>>2];m=z[b+28>>2];n=z[c+28>>2];z[a+28>>2]=m>n?m:n;z[a+24>>2]=j>k?j:k;z[a+20>>2]=h>i?h:i;z[a+16>>2]=g>2];if(b){continue}break}}}function FM(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=v[37696];d=c+12|0;c=(i=d,j=B(b,48)+131|0,k=Ba[v[v[c>>2]+20>>2]](c)|0?46647:63804,l=16608,m=553,h=v[v[d>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0);if(!c){break a}e=c+131&-128;v[e-4>>2]=e-c}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,48)+e|0;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];f=v[d+32>>2];v[c+28>>2]=v[d+28>>2];v[c+32>>2]=f;f=v[d+40>>2];v[c+36>>2]=v[d+36>>2];v[c+40>>2]=f;v[c+44>>2]=v[d+44>>2];d=d+48|0;c=c+48|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-v[d-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=e}function v9(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;g=v[a+72>>2];a:{if(w[a+76|0]){break a}if((b|0)==-1){while(1){if(w[a+76|0]){break a}if((g|0)==v[a+72>>2]){continue}break a}}h=+qa();c=h/1e3;b:{if(D(c)<0x8000000000000000){f=D(c)>=1?~~(c>0?F(H(c*2.3283064365386963e-10),4294967295):I((c-+(~~c>>>0>>>0))*2.3283064365386963e-10))>>>0:0;d=~~c>>>0;break b}f=-2147483648;d=0}v[e>>2]=d;c=(h-(+(Raa(d,f,1e3,0)>>>0)+ +(Aa|0)*4294967296))*1e3;c:{if(D(c)<2147483648){d=~~c;break c}d=-2147483648}v[e+4>>2]=d;d=(b>>>0)/1e3|0;f=v[e+4>>2]+B(B(d,-1e3)+b|0,1e3)|0;b=(f>>>0)/1e6|0;v[e+8>>2]=b+(d+v[e>>2]|0);v[e+12>>2]=B(f+B(b,-1e6)|0,1e3);while(1){if(w[a+76|0]){break a}if((g|0)==v[a+72>>2]){continue}break}}b=1;xa=e+16|0;return w[a+76|0]?b:v[a+72>>2]!=(g|0)}function gB(a,b){var c=0,d=0;v[a+11824>>2]=b;v[a>>2]=0;v[a+12132>>2]=0;v[a+12120>>2]=0;v[a+12112>>2]=0;v[a+12116>>2]=0;v[a+12104>>2]=0;v[a+12096>>2]=0;v[a+12088>>2]=0;v[a+12092>>2]=0;v[a+11876>>2]=0;v[a+11880>>2]=0;v[a+11868>>2]=0;v[a+11852>>2]=b;v[a+11892>>2]=0;v[a+11896>>2]=0;c=a+11828|0;v[c>>2]=0;v[c+4>>2]=0;c=a+11836|0;v[c>>2]=0;v[c+4>>2]=0;v[a+11844>>2]=0;c=a+11856|0;v[c>>2]=0;v[c+4>>2]=0;v[a+11848>>2]=b;b=a+11900|0;v[b>>2]=0;v[b+4>>2]=0;c=a+11908|0;v[c>>2]=0;v[c+4>>2]=0;c=a+11916|0;v[c>>2]=0;v[c+4>>2]=0;v[a+11924>>2]=0;I9(a+11976|0,0,96);d=a+12164|0;v[d>>2]=0;v[d+4>>2]=0;d=a+12156|0;v[d>>2]=0;v[d+4>>2]=0;d=a+12148|0;v[d>>2]=0;v[d+4>>2]=0;v[a+12140>>2]=0;v[a+12144>>2]=0;zw(c,512);if(!(v[b>>2]&2147483520)){zw(a+11892|0,128)}return a}function Na(a){a=a|0;var b=0,c=0,d=0;d=a<<6;c=laa((a&67108863)!=(a|0)?-1:d);a:{if(!a){break a}b=c;if(a&1){v[c+16>>2]=0;v[c+20>>2]=0;u[c+12>>1]=0;v[c+8>>2]=-1;v[c>>2]=0;v[c+4>>2]=0;v[c+48>>2]=0;v[c+40>>2]=2139095039;v[c+44>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;b=c- -64|0}if(!(a-1&67108863)){break a}a=c+d|0;while(1){v[b+16>>2]=0;v[b+20>>2]=0;u[b+12>>1]=0;v[b+8>>2]=-1;v[b>>2]=0;v[b+4>>2]=0;v[b+64>>2]=0;v[b+68>>2]=0;v[b+48>>2]=0;v[b+40>>2]=2139095039;v[b+44>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+80>>2]=0;v[b+84>>2]=0;u[b+76>>1]=0;v[b+72>>2]=-1;v[b+88>>2]=0;v[b+92>>2]=0;v[b+96>>2]=0;v[b+100>>2]=0;v[b+104>>2]=2139095039;v[b+108>>2]=0;v[b+112>>2]=0;b=b+128|0;if((a|0)!=(b|0)){continue}break}}return c|0}function dP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=xa-48|0;xa=f;h=f+8|0;b=v[v[a+976>>2]+1024>>2];Ba[v[v[b>>2]+84>>2]](h,b);j=(v[a+2360>>2]&8)>>>3|0;b=xa-32|0;xa=b;g=v[a+2168>>2];c=v[v[g>>2]+2188>>2];a:{if(!c){break a}u[b+24>>1]=0;u[b+16>>1]=0;if(!(Ba[v[v[c>>2]+8>>2]](c,b+28|0,b+16|0,b+24|0)|0)){break a}while(1){i=v[b+28>>2];e=v[v[v[g+108>>2]>>2]+(i<<2)>>2];d=x[b+24>>1];if((d&3)==3){d=d&65534;u[b+24>>1]=d}u[b+8>>1]=d;v[b+12>>2]=i;u[b+10>>1]=x[b+16>>1];if(!((xJ(g,e,b+8|0,1,h,j)|0)!=(e|0)|w[e+24|0])){UR(e,1)}if(Ba[v[v[c>>2]+8>>2]](c,b+28|0,b+16|0,b+24|0)|0){continue}break}}xa=b+32|0;b=v[a+2168>>2];v[b+28>>2]=v[b+20>>2];b=v[a+1012>>2];Ba[v[v[b>>2]+40>>2]](b);v[a+1092>>2]=v[a+1092>>2]+1;v[a+1088>>2]=v[a+1088>>2]+1&2147483647;xa=f+48|0}function QF(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<4;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?41107:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=(c<<4)+e|0;d=v[a>>2];c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;g=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=g;d=d+16|0;c=c+16|0;if(h>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<4)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;b=a;a=v[a+4>>2];v[b+4>>2]=a+1;return(a<<4)+e|0}function HP(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;if(c){while(1){j=v[(i<<2)+b>>2]+48|0;a:{b:{f=v[a+2384>>2];g=v[f+12>>2]+B(v[f+8>>2],12)|0;h=v[g+4>>2];if(h){v[g+4>>2]=v[h>>2];break b}c:{d:{h=v[g+8>>2];if((h|0)==v[f>>2]){break d}k=v[f+4>>2];v[g+8>>2]=h+1;g=v[g>>2];if(!g){break d}h=g+B(h,k)|0;break c}h=MO(f)}if(h){break b}g=0;break a}g=_R(h,d,j)}f=((v[j+68>>2]<<2)+a|0)+2676|0;v[f>>2]=v[f>>2]+1;f=v[a+1012>>2];Ba[v[v[f>>2]+16>>2]](f,g+12|0,v[g+32>>2]);if(e){f=B(i,24)+e|0;g=v[v[a+1140>>2]+4>>2]+B(v[g+8>>2]&2147483647,24)|0;z[f>>2]=z[g>>2];z[f+4>>2]=z[g+4>>2];z[f+8>>2]=z[g+8>>2];z[f+12>>2]=z[g+12>>2];z[f+16>>2]=z[g+16>>2];z[f+20>>2]=z[g+20>>2]}f=v[v[a+976>>2]+1024>>2];Ba[v[v[f>>2]+44>>2]](f,j+32|0);i=i+1|0;if((i|0)!=(c|0)){continue}break}}}function lN(a){a=a|0;var b=0,c=0,d=0,e=C(0),f=C(0),g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0);c=v[a+48>>2];e=z[c+56>>2];f=z[c+60>>2];i=z[c+52>>2];j=z[c+88>>2];k=z[c+84>>2];l=z[c+100>>2];d=v[c+368>>2];b=v[d>>2];if(b){v[d>>2]=v[b>>2]}if(!b){b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?26947:63804;d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,12195,d,19395,82)|0;b=d+19&-16;v[b-4>>2]=b-d;b=gB(b,v[c+372>>2])}c=b+11856|0;v[c>>2]=0;v[c+4>>2]=0;if(v[a+32>>2]){e=e>f?f:e;c=0;while(1){g=v[v[a+28>>2]+(c<<2)>>2];d=v[a+56>>2];h=v[a+48>>2];Ba[v[v[g>>2]+148>>2]](g,z[d+92>>2],i,z[d+96>>2],e,v[a+52>>2],b,l,k,j,v[a+36>>2],v[a+40>>2],v[a+44>>2]+11836|0,v[h+168>>2],v[d+80>>2],z[h+612>>2]);c=c+1|0;if(c>>>0>2]){continue}break}}a=v[v[a+48>>2]+368>>2];v[b>>2]=v[a>>2];v[a>>2]=b}function aq(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((v[a+204>>2]&2147483647)>>>0>>0){a:{if(!b){break a}c=B(b,24);if(!(w[a+192|0]|c>>>0>192)){t[a+192|0]=1;f=a;break a}if(!c){break a}d=v[37696];f=d+12|0;f=(i=f,j=c,k=Ba[v[v[d>>2]+20>>2]](d)|0?54339:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a+196>>2];c=v[a+200>>2];if((c|0)>0){g=B(c,24)+f|0;e=d;c=f;while(1){z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];z[c+12>>2]=z[e+12>>2];z[c+16>>2]=z[e+16>>2];z[c+20>>2]=z[e+20>>2];e=e+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}}b:{if(v[a+204>>2]<0){break b}if((a|0)==(d|0)){t[a+192|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+204>>2]=b;v[a+196>>2]=f}v[a+200>>2]=b}function Y4(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);c=xa-32|0;xa=c;a:{if(!b){v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=1065353216;v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;break a}b:{if((Ba[v[v[b>>2]+24>>2]](b)|0)!=1){if((Ba[v[v[b>>2]+24>>2]](b)|0)!=2){break b}}Ba[v[v[b>>2]+112>>2]](a,b);break a}Ba[v[v[b>>2]+76>>2]](c,b);d=z[c+20>>2];e=z[c+24>>2];f=z[c+16>>2];h=z[c>>2];i=z[c+4>>2];j=z[c+8>>2];g=z[c+12>>2];z[a+12>>2]=g;z[a+8>>2]=-j;z[a+4>>2]=-i;z[a>>2]=-h;e=C(e*C(-2));f=C(f*C(-2));d=C(d*C(-2));k=C(C(j*e)+C(C(h*f)+C(i*d)));l=C(C(g*g)+C(-.5));z[a+24>>2]=C(j*k)+C(C(e*l)-C(g*C(C(h*d)-C(f*i))));z[a+20>>2]=C(i*k)+C(C(d*l)-C(g*C(C(j*f)-C(e*h))));z[a+16>>2]=C(h*k)+C(C(f*l)-C(g*C(C(i*e)-C(d*j))))}xa=c+32|0}function cE(a,b){var c=0,d=0,e=0,f=0;a:{b:{c:{d:{d=B(b,24)+24|0;e:{f:{if(d){e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,d,24422,10409,152)|0;d=B(b,44);if(d){break f}a=1;f=0;if(!e){break b}break e}d=B(b,44);f=0;if(!d){break b}}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,d,24422,10409,153)|0;d=I9(c,0,d);if(d?e:0){break c}if(!e){break d}a=!d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e);f=0;if(a){break b}break a}if(d){break a}return 0}c=v[a+8>>2];if(c){H9(e,c,B(v[a>>2],24))}c=v[a+12>>2];if(c){H9(d,c,B(v[a>>2],44))}v[a+4>>2]=b;c=v[a+8>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+8>>2]=0;c=v[a+12>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+12>>2]=d;v[a+8>>2]=e;f=1}return f}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,c);return 0}function PU(a,b,c){var d=0,e=0,f=0;a:{b:{c:{d=x[a+4>>1]-1|0;switch(d|0){case 1:break b;case 0:break c;default:break a}}t[a+7|0]=0;u[a+4>>1]=0;v[a>>2]=0;return}d=1-b<<2;b=v[a>>2];d=v[d+b>>2];if(w[a+6|0]){Ba[v[v[c>>2]+4>>2]](c,b,8)}v[a>>2]=d;v[a+4>>2]=16842753;return}u[a+4>>1]=d;e=v[a>>2];f=e+(b<<2)|0;b=d&65535;v[f>>2]=v[(b<<2)+e>>2];if(!w[a+6|0]){b=b-1|0;b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=H9(Ba[v[v[c>>2]>>2]](c,((b>>>16|b)<<2)+4|0)|0,v[a>>2],x[a+4>>1]<<2);if(w[a+6|0]){Ba[v[v[c>>2]+4>>2]](c,v[a>>2],0)}t[a+6|0]=1;v[a>>2]=b;return}d:{if((Taa(b)|0)!=1){break d}if(Ba[v[v[c>>2]+8>>2]](c,b<<1,b)|0){break d}d=H9(Ba[v[v[c>>2]>>2]](c,b<<2)|0,v[a>>2],x[a+4>>1]<<2);if(w[a+6|0]){Ba[v[v[c>>2]+4>>2]](c,v[a>>2],b<<3)}t[a+6|0]=1;v[a>>2]=d}}function JK(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{c=v[a>>2];if(c){a=v[c+16>>2];if(!(a>>>0<=b>>>0&a+v[c+20>>2]>>>0>b>>>0)){if(!b){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);return}i=v[c+4>>2];f=v[c+8>>2];g=f;while(1){h=e;e=e+1|0;d=g;g=d-1|0;a=(g<<2)+i|0;if(y[a>>2]>>0){continue}break}b:{if(d>>>0>=f>>>0){break b}b=h&3;if(b){e=0;while(1){v[a>>2]=v[v[c+4>>2]+(d<<2)>>2];d=d+1|0;a=a+4|0;e=e+1|0;if((b|0)!=(e|0)){continue}break}}if(h-1>>>0<3){break b}while(1){b=d<<2;v[a>>2]=v[b+v[c+4>>2]>>2];v[a+4>>2]=v[(b+v[c+4>>2]|0)+4>>2];v[a+8>>2]=v[(b+v[c+4>>2]|0)+8>>2];v[a+12>>2]=v[(b+v[c+4>>2]|0)+12>>2];a=a+16|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}v[c+8>>2]=f-1;return}if(!b){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}}function xE(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0);b=xa-48|0;xa=b;g=1;a:{if(!(v[c+40>>2]&x[a+12>>1])){break a}n=v[c>>2];if(!v[n+588>>2]){break a}k=z[c+20>>2];e=z[c+36>>2];g=v[a+4>>2];f=z[g+108>>2];h=z[c+24>>2];i=z[c+32>>2];j=z[g+104>>2];l=z[c+16>>2];o=z[c+28>>2];d=z[g+112>>2];m=z[c+12>>2];p=z[g+100>>2];v[b+28>>2]=0;z[b+32>>2]=d*d;d=C(f-e);d=C(d+d);e=C(p-o);e=C(e+e);f=C(j-i);f=C(f+f);i=C(C(k*d)+C(C(m*e)+C(l*f)));j=C(C(h*h)+C(-.5));z[b+24>>2]=C(k*i)+C(C(d*j)-C(h*C(C(m*f)-C(e*l))));z[b+20>>2]=C(l*i)+C(C(f*j)-C(h*C(C(k*e)-C(d*m))));z[b+16>>2]=C(m*i)+C(C(e*j)-C(h*C(C(l*d)-C(f*k))));c=v[c+4>>2];g=eD(v[c+12>>2],v[c+8>>2],n,b+16|0,v[a+8>>2])}xa=b+48|0;return g|0}function kW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0;d=xa-16|0;xa=d;b=v[b+48>>2];h=z[b+56>>2];i=z[b+52>>2];j=z[b+72>>2];q=b- -64|0;k=z[q>>2];l=z[b+68>>2];m=z[b+88>>2];n=z[b+80>>2];o=z[b+84>>2];p=z[b+48>>2];e=z[c+8>>2];f=z[c>>2];g=z[c+4>>2];v[d+12>>2]=0;z[d+8>>2]=C(m*e)+C(C(n*f)+C(g*o));z[d+4>>2]=C(j*e)+C(C(k*f)+C(g*l));z[d>>2]=C(h*e)+C(C(p*f)+C(g*i));c=HV(b,d);h=z[q>>2];i=z[b+80>>2];j=z[b+84>>2];k=z[b+52>>2];l=z[b+68>>2];m=z[b+88>>2];c=v[b+152>>2]+B(c,12)|0;e=z[c+8>>2];n=z[b+56>>2];f=z[c>>2];o=z[b+72>>2];g=z[c+4>>2];p=z[b+48>>2];v[a+12>>2]=0;z[a+8>>2]=C(m*e)+C(C(n*f)+C(g*o));z[a+4>>2]=C(j*e)+C(C(k*f)+C(g*l));z[a>>2]=C(i*e)+C(C(p*f)+C(g*h));xa=d+16|0}function vW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0;d=xa-16|0;xa=d;b=v[b+4>>2];h=z[b+56>>2];i=z[b+52>>2];j=z[b+72>>2];q=b- -64|0;k=z[q>>2];l=z[b+68>>2];m=z[b+88>>2];n=z[b+80>>2];o=z[b+84>>2];p=z[b+48>>2];e=z[c+8>>2];f=z[c>>2];g=z[c+4>>2];v[d+12>>2]=0;z[d+8>>2]=C(m*e)+C(C(n*f)+C(g*o));z[d+4>>2]=C(j*e)+C(C(k*f)+C(g*l));z[d>>2]=C(h*e)+C(C(p*f)+C(g*i));c=HV(b,d);h=z[q>>2];i=z[b+80>>2];j=z[b+84>>2];k=z[b+52>>2];l=z[b+68>>2];m=z[b+88>>2];c=v[b+152>>2]+B(c,12)|0;e=z[c+8>>2];n=z[b+56>>2];f=z[c>>2];o=z[b+72>>2];g=z[c+4>>2];p=z[b+48>>2];v[a+12>>2]=0;z[a+8>>2]=C(m*e)+C(C(n*f)+C(g*o));z[a+4>>2]=C(j*e)+C(C(k*f)+C(g*l));z[a>>2]=C(i*e)+C(C(p*f)+C(g*h));xa=d+16|0}function zc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=C(d);var e=0,f=0;f=xa-48|0;xa=f;v[f+40>>2]=-1;v[f+32>>2]=0;v[f+36>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;u[f+24>>1]=3;e=xa-128|0;xa=e;v[e+104>>2]=v[f+8>>2];v[e+108>>2]=v[f+12>>2];v[e+112>>2]=v[f+16>>2];v[e+116>>2]=v[f+20>>2];u[e+120>>1]=x[f+24>>1]|16;v[e+36>>2]=0;v[e+40>>2]=0;u[e+32>>1]=0;v[e+28>>2]=-1;v[e+44>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+56>>2]=0;v[e+68>>2]=0;v[e+60>>2]=2139095039;v[e+64>>2]=0;u[e+8>>1]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+96>>2]=0;v[e+88>>2]=0;v[e+92>>2]=0;t[e+84|0]=0;v[e+16>>2]=114128;Ba[v[v[a>>2]+348>>2]](a,b,c,d,e+16|0,e+8|0,e+104|0,0,0)|0;v[f+40>>2]=v[e+28>>2];a=v[e+24>>2];v[f+32>>2]=v[e+20>>2];v[f+36>>2]=a;xa=e+128|0;xa=f+48|0;return w[e+84|0]}function $9(a,b,c,d){a:{switch(b-9|0){case 0:b=v[c>>2];v[c>>2]=b+4;v[a>>2]=v[b>>2];return;case 6:b=v[c>>2];v[c>>2]=b+4;b=u[b>>1];v[a>>2]=b;v[a+4>>2]=b>>31;return;case 7:b=v[c>>2];v[c>>2]=b+4;v[a>>2]=x[b>>1];v[a+4>>2]=0;return;case 8:b=v[c>>2];v[c>>2]=b+4;b=t[b|0];v[a>>2]=b;v[a+4>>2]=b>>31;return;case 9:b=v[c>>2];v[c>>2]=b+4;v[a>>2]=w[b|0];v[a+4>>2]=0;return;case 16:b=v[c>>2]+7&-8;v[c>>2]=b+8;A[a>>3]=A[b>>3];return;case 17:Ba[d|0](a,c);default:return;case 1:case 4:case 14:b=v[c>>2];v[c>>2]=b+4;b=v[b>>2];v[a>>2]=b;v[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=v[c>>2];v[c>>2]=b+4;v[a>>2]=v[b>>2];v[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=v[c>>2]+7&-8;v[c>>2]=b+8;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c}function Tu(a){var b=0,c=0,d=0;a:{b:{d=v[a+4>>2];c:{if(d&128){if(d&768){break b}z[a+44>>2]=z[a+56>>2];break c}z[a+56>>2]=z[a+44>>2];if(d&768){break b}}b=v[a+12>>2];d:{if(b){b=!v[b+28>>2]|y[v[v[b+24>>2]>>2]+152>>2]>4294967293;break d}b=z[a+44>>2]==C(0)}if(y[a+4>>2]>3221225471){break a}t[a+60|0]=b;break a}if(d&256){v[a+44>>2]=0;break a}z[a+44>>2]=z[a+56>>2]}e:{if(!(d&16776319)){break e}b=v[a+8>>2];if(!b){b=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}c=v[a+4>>2];if(c&2){v[a+20>>2]=v[b+4>>2]}if(c&1){v[a+16>>2]=v[b>>2]}if(c&4){v[a+24>>2]=v[b+8>>2]}if(c&8){z[a+32>>2]=z[b+12>>2]}if(c&16){z[a+36>>2]=z[b+16>>2]}if(c&32){u[a+28>>1]=x[b+20>>1]}if(!(c&64)){break e}z[a+40>>2]=z[b+24>>2]}if(d&2048){ZE(a+12|0)}v[a+8>>2]=0;v[a+4>>2]=w[a+7|0]<<24}function nB(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var r=C(0);r=z[h+12>>2];z[g>>2]=j<=k?C(0):C(C(1)/j);g=x[h+76>>1];if(g&1){v[a>>2]=0;i=z[h+68>>2];q=z[h+28>>2];k=z[h+64>>2];z[d>>2]=o;m=C(C(i+C(m*k))*m);o=C(C(C(i*q)-C(r*k))*n);i=C(C(i+C(n*k))*n);a:{if(g&2){k=C(C(1)/C(i+C(1)));z[c>>2]=o*k;m=C(m+C(1));i=C(i*C(-k));break a}k=C(C(1)/C(C(i*j)+C(1)));z[c>>2]=C(o*k)*j;m=C(C(m*j)+C(1));i=C(C(i*C(-k))*j)}z[e>>2]=i;z[f>>2]=C(1)-k;z[b>>2]=C(C(-p)*l)*C(C(1)-C(C(1)/m));return}v[e>>2]=-1082130432;v[f>>2]=1065353216;b:{if(!(g&4)){break b}i=C(-i);if(!(i>z[h+68>>2])){break b}v[a>>2]=0;v[b>>2]=0;z[c>>2]=z[h+64>>2]*i;v[d>>2]=0;return}z[b>>2]=C(-p)*l;c:{if(g&128){v[a>>2]=0;i=C(z[h+28>>2]-C(r*q));break c}z[a>>2]=r;i=z[h+28>>2]}z[c>>2]=i;z[d>>2]=o}function hA(a){var b=C(0),c=0,d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=0,m=C(0),n=C(0),o=0;d=v[a+28>>2];if(d){c=v[a+24>>2];j=w[c+1|0];if(j){o=w[c|0]==4?160:96;a=c+48|0;while(1){if(w[a+92|0]&2){b=z[a+88>>2];k=C(k+C(b*z[a+64>>2]));e=C(e+C(b*z[a+72>>2]));f=C(f+C(b*z[a+68>>2]));g=C(g+C(b*z[a+8>>2]));h=C(h+C(b*z[a+4>>2]));i=C(i+C(b*z[a>>2]))}a=a+o|0;l=l+1|0;if((j|0)!=(l|0)){continue}break}}b=z[c+24>>2];m=z[c+20>>2];n=z[c+16>>2];z[d+8>>2]=g;z[d+4>>2]=h;z[d>>2]=i;e=C(e-C(C(n*h)-C(i*m)));z[d+24>>2]=e;f=C(f-C(C(b*i)-C(g*n)));z[d+20>>2]=f;b=C(k-C(C(m*g)-C(h*b)));z[d+16>>2]=b;a=0;a:{if(!w[c+3|0]){break a}a=1;if(z[c+4>>2]>2]>2]=a}}function qA(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>>>0>=2){d=1;while(1){f=((d<<5)+a|0)-32|0;g=v[f+12>>2];h=v[f+16>>2];e=v[c+16>>2];fA(f,c);gA(f,c,B(g,112)+e|0,B(h,112)+e|0);d=d+1|0;if((d|0)!=(b|0)){continue}break}}a=((b<<5)+a|0)-32|0;d=v[a+12>>2];f=v[a+16>>2];b=v[c+16>>2];fA(a,c);gA(a,c,b+B(d,112)|0,b+B(f,112)|0);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){b=v[c+28>>2];a=a+v[b>>2]|0;v[b>>2]=a;b=v[c+8>>2];if(b){f=a-b|0;a=0;while(1){d=v[c+4>>2]+(a<<5)|0;e=v[d+4>>2];b=v[c+20>>2]+(a+f<<5)|0;v[b>>2]=v[d>>2];v[b+4>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}}function nA(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>>>0>=2){d=1;while(1){f=((d<<5)+a|0)-32|0;g=v[f+12>>2];h=v[f+16>>2];e=v[c+16>>2];eA(f,c);gA(f,c,B(g,112)+e|0,B(h,112)+e|0);d=d+1|0;if((d|0)!=(b|0)){continue}break}}a=((b<<5)+a|0)-32|0;d=v[a+12>>2];f=v[a+16>>2];b=v[c+16>>2];eA(a,c);gA(a,c,b+B(d,112)|0,b+B(f,112)|0);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){b=v[c+28>>2];a=a+v[b>>2]|0;v[b>>2]=a;b=v[c+8>>2];if(b){f=a-b|0;a=0;while(1){d=v[c+4>>2]+(a<<5)|0;e=v[d+4>>2];b=v[c+20>>2]+(a+f<<5)|0;v[b>>2]=v[d>>2];v[b+4>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}}function gu(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=v[a+44>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!(w[a+32|0]|c>>>0>32)){t[a+32|0]=1;d=a;break a}if(!c){break a}d=v[37696];e=d+12|0;d=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?42347:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+40>>2];if((c|0)>0){g=(c<<3)+d|0;e=v[a+36>>2];c=d;while(1){h=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=h;e=e+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+40>>2]}e=v[b+4>>2];c=(c<<3)+d|0;v[c>>2]=v[b>>2];v[c+4>>2]=e;b:{if(v[a+44>>2]<0){break b}b=v[a+36>>2];if((b|0)==(a|0)){t[a+32|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+44>>2]=f;v[a+36>>2]=d;v[a+40>>2]=v[a+40>>2]+1}function bR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=xa+-64|0;xa=c;a=v[a+28>>2];e=v[v[a+976>>2]+1024>>2];Ba[v[v[e>>2]+84>>2]](c+8|0,e);if(v[a+2472>>2]){f=a+2420|0;g=(v[a+2360>>2]&8)!=0;e=0;while(1){b=v[(v[a+2468>>2]+(e<<3)|0)+4>>2];a:{if(!TR(b,0,c+8|0,g)|w[b+46|0]&4){break a}d=v[v[b+28>>2]+4>>2];d=w[v[d+44>>2]+9|0]-1>>>0<2?d:0;b=v[v[b+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;v[c+52>>2]=b;v[c+48>>2]=d;v[c+56>>2]=v[d+48>>2];v[c+60>>2]=v[b+48>>2];b=v[a+2424>>2];if(b>>>0>=(v[a+2428>>2]&2147483647)>>>0){zP(f,c+48|0);break a}d=v[c+52>>2];b=v[a+2420>>2]+(b<<4)|0;v[b>>2]=v[c+48>>2];v[b+4>>2]=d;d=v[c+60>>2];v[b+8>>2]=v[c+56>>2];v[b+12>>2]=d;v[a+2424>>2]=v[a+2424>>2]+1}e=e+1|0;if(e>>>0>2]){continue}break}}xa=c- -64|0}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;c=v[a>>2];a:{if((c|0)!=v[a+8>>2]){break a}f=(c<<1)+2|0;if(f>>>0<=c>>>0){break a}c=f<<3;if(c){e=v[37696];d=e+12|0;d=(i=d,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?29399:63804,l=18841,m=219,h=v[v[d>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}else{d=0}c=v[a+4>>2];b:{if(!c){break b}H9(d,c,v[a>>2]<<3);e=v[a+4>>2];if(!e){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+8>>2]=f;v[a+4>>2]=d;c=v[a>>2]}c:{if(!c){d=0;break c}while(1){e=v[a+4>>2];f=c-1|0;d=f>>>1|0;g=e+(d<<3)|0;if(y[b+4>>2]>=y[g+4>>2]){d=c;break c}e=(c<<3)+e|0;c=v[g+4>>2];v[e>>2]=v[g>>2];v[e+4>>2]=c;c=d;if(f>>>0>1){continue}break}}c=v[a+4>>2]+(d<<3)|0;d=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=d;v[a>>2]=v[a>>2]+1}function C_(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);h=C(z[a+8>>2]-z[b+8>>2]);m=C(z[d+32>>2]*h);j=C(z[a>>2]-z[b>>2]);l=C(z[a+4>>2]-z[b+4>>2]);n=C(C(z[d+24>>2]*j)+C(l*z[d+28>>2]));f=C(C(z[d+20>>2]*h)+C(C(z[d+12>>2]*j)+C(l*z[d+16>>2])));g=z[c>>2];k=C(-g);h=C(C(z[d+8>>2]*h)+C(C(z[d>>2]*j)+C(l*z[d+4>>2])));a:{if(k>h){g=C(h+g);i=C(C(g*g)+C(0));break a}if(!(h>g)){k=h;break a}k=C(h-g);i=C(C(k*k)+C(0));k=g}h=C(m+n);g=z[c+4>>2];j=C(-g);b:{if(!(j>f)){if(!(f>g)){g=f;break b}f=C(f-g);i=C(C(f*f)+i);break b}g=C(f+g);i=C(C(g*g)+i);g=j}f=z[c+8>>2];j=C(-f);c:{if(!(j>h)){if(!(f>2]=f;z[e+4>>2]=g;z[e>>2]=k}return i}function vH(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a=v[a+60>>2];if(a){d=0;a:{if(!b){break a}d=0;if(!w[b+9|0]){break a}d=v[b>>2]}f=!c|!w[c+9|0]?f:v[c>>2];e=v[v[a+48>>2]+1136>>2];b:{if(!(w[v[a+52>>2]]&6)){c:{if(!d){break c}g=v[d+164>>2];if(!g){break c}HH(e,g,a)}if(!f){break b}g=v[f+164>>2];if(!g){break b}HH(e,g,a);break b}if(t[a+68|0]&1){break b}BH(e,a)}e=0;h=f?f- -64|0:0;v[a+28>>2]=h;g=d?d- -64|0:0;v[a+24>>2]=g;v[a+32>>2]=d?v[g+36>>2]:0;e=f?v[h+36>>2]:e;v[a+60>>2]=d;v[a+36>>2]=e;v[a- -64>>2]=f;d=v[a+48>>2];e=v[d+2408>>2];if(b){d=v[b>>2]}else{d=v[d+2380>>2]}if(c){b=v[c>>2]}else{b=v[v[a+48>>2]+2380>>2]}f=v[e+288>>2];if(!f){PH(e);f=v[e+288>>2]}v[e+288>>2]=v[f>>2];v[e+280>>2]=v[e+280>>2]+1;i=a,j=KH(f,a,d,b),v[i+56>>2]=j}}function w3(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=0,n=0;b=xa-16|0;xa=b;if(a){v[b+12>>2]=0;v[b+8>>2]=0;A3(a,b+12|0,b+8|0);v[b+4>>2]=0;v[b>>2]=0;f=a+36|0;A3(f,b+4|0,b);a:{if(y[b+12>>2]<=y[b+4>>2]){c=a;a=f;break a}j=z[a>>2];z[a>>2]=z[a+36>>2];c=v[a+4>>2];k=v[a+8>>2];d=a+40|0;g=v[d+4>>2];v[a+4>>2]=v[d>>2];v[a+8>>2]=g;d=v[a+12>>2];g=v[a+16>>2];e=a+48|0;h=v[e+4>>2];v[a+12>>2]=v[e>>2];v[a+16>>2]=h;l=z[a+20>>2];z[a+20>>2]=z[a+56>>2];e=v[a+32>>2];v[a+32>>2]=v[a+68>>2];h=v[a+24>>2];m=v[a+28>>2];i=a+60|0;n=v[i+4>>2];v[a+24>>2]=v[i>>2];v[a+28>>2]=n;v[a+60>>2]=h;v[a+64>>2]=m;v[a+68>>2]=e;v[a+40>>2]=c;v[a+44>>2]=k;z[a+56>>2]=l;v[a+48>>2]=d;v[a+52>>2]=g;z[a+36>>2]=j;c=f}w3(v[c+24>>2]);w3(v[a+24>>2])}xa=b+16|0}function p3(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=0,n=0;b=xa-16|0;xa=b;if(a){v[b+12>>2]=0;v[b+8>>2]=0;t3(a,b+12|0,b+8|0);v[b+4>>2]=0;v[b>>2]=0;f=a+36|0;t3(f,b+4|0,b);a:{if(y[b+12>>2]<=y[b+4>>2]){c=a;a=f;break a}j=z[a>>2];z[a>>2]=z[a+36>>2];c=v[a+4>>2];k=v[a+8>>2];d=a+40|0;g=v[d+4>>2];v[a+4>>2]=v[d>>2];v[a+8>>2]=g;d=v[a+12>>2];g=v[a+16>>2];e=a+48|0;h=v[e+4>>2];v[a+12>>2]=v[e>>2];v[a+16>>2]=h;l=z[a+20>>2];z[a+20>>2]=z[a+56>>2];e=v[a+32>>2];v[a+32>>2]=v[a+68>>2];h=v[a+24>>2];m=v[a+28>>2];i=a+60|0;n=v[i+4>>2];v[a+24>>2]=v[i>>2];v[a+28>>2]=n;v[a+60>>2]=h;v[a+64>>2]=m;v[a+68>>2]=e;v[a+40>>2]=c;v[a+44>>2]=k;z[a+56>>2]=l;v[a+48>>2]=d;v[a+52>>2]=g;z[a+36>>2]=j;c=f}p3(v[c+24>>2]);p3(v[a+24>>2])}xa=b+16|0}function R6(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=xa-48|0;xa=g;a:{if((b|d)&32){u[f>>1]=1044;u[a>>1]=0;break a}if(!w[v[e>>2]+((v[c>>2]<<5)+149728|0)|0]){u[a>>1]=2;break a}b=v[c+8>>2];c=v[c+12>>2];u[g+44>>1]=c;u[g+40>>1]=b;u[g+46>>1]=c>>>16;u[g+42>>1]=b>>>16;b=v[e+8>>2];c=v[e+12>>2];u[g+36>>1]=c;u[g+32>>1]=b;u[g+38>>1]=c>>>16;u[g+34>>1]=b>>>16;v[g+24>>2]=0;v[g+28>>2]=0;b=g+24|0;Ba[v[(v[37692]<<2)+146080>>2]](b,g+40|0,150752);v[g+16>>2]=0;v[g+20>>2]=0;c=g+16|0;Ba[v[(v[37693]<<2)+146080>>2]](c,g+32|0,150760);v[g+8>>2]=0;v[g+12>>2]=0;Ba[v[(v[37694]<<2)+146080>>2]](g+8|0,b,c);if(w[150780]==((x[g+14>>1]|(x[g+12>>1]|(x[g+8>>1]|x[g+10>>1])))!=0|0)){u[f>>1]=1025;b=0}else{b=2}u[a>>1]=b}xa=g+48|0}function zP(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<4;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?31019:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=(c<<4)+e|0;d=v[a>>2];c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;g=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=g;d=d+16|0;c=c+16|0;if(h>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<4)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function u_(a,b,c){var d=0,e=C(0),f=C(0),g=C(0),h=0,i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);k=z[c+16>>2];l=z[c+28>>2];m=z[c+24>>2];n=z[c+12>>2];o=z[c>>2];p=z[c+4>>2];e=z[b+24>>2];f=z[b+28>>2];g=z[b+32>>2];z[a+8>>2]=C(C(e*z[c+8>>2])+C(f*z[c+20>>2]))+C(g*z[c+32>>2]);z[a+4>>2]=C(C(e*p)+C(f*k))+C(g*l);z[a>>2]=C(C(e*o)+C(f*n))+C(g*m);c=w[b+38|0];v[a+12>>2]=c;d=w[b+39|0];v[a+16>>2]=d;i=u[b+36>>1];h=i&32767;v[a+20>>2]=h;j=v[b+40>>2];v[a+24>>2]=j;d=B(d,20)+j|0;v[a+28>>2]=d;d=d+B(c,12)|0;v[a+36>>2]=d;v[a+32>>2]=((d+(h<<1)|0)+B(c,3)|0)+(h<<2&i>>31);c=v[b+52>>2];v[a+44>>2]=v[b+48>>2];v[a+48>>2]=c;c=v[b+60>>2];v[a+52>>2]=v[b+56>>2];v[a+56>>2]=c;b=v[b+44>>2];v[a+60>>2]=b;v[a+68>>2]=2764;v[a+64>>2]=(b?2764:2765)+1}function qv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);n=z[d>>2];k=z[d+8>>2];r=z[c+24>>2];j=C(r-z[d+24>>2]);s=z[c+16>>2];i=C(s-z[d+16>>2]);t=z[c+20>>2];l=C(t-z[d+20>>2]);o=z[d+4>>2];p=C(n*C(C(k*j)+C(C(n*i)+C(l*o))));m=i;i=z[d+12>>2];j=C(p+C(C(m*C(C(i*i)+C(-.5)))-C(i*C(C(o*j)-C(l*k)))));m=C(j+j);j=z[a+4>>2];p=C(m-j);b=p<=z[e>>2];if(b){a=v[g+4096>>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;l=C(n+n);q=C(i+i);m=C(C(l*k)-C(o*q));z[a+8>>2]=m;k=C(C(l*o)+C(k*q));z[a+4>>2]=k;v[a+52>>2]=-1;z[a+12>>2]=p;v[a+28>>2]=0;i=C(C(C(n*l)+C(i*q))+C(-1));z[a>>2]=i;z[a+24>>2]=r-C(j*m);z[a+20>>2]=t-C(j*k);z[a+16>>2]=s-C(j*i)}return b|0}function gH(a,b,c,d){var e=C(0),f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0);g=xa-16|0;xa=g;f=v[a+100>>2];a:{if(!(w[f+28|0]&32)|t[a+92|0]&1){break a}a=v[a+32>>2];if(!a){break a}e=z[f+72>>2];h=C(e*e);e=z[f+64>>2];i=C(e*e);e=z[f+68>>2];h=C(C(K(C(h+C(i+C(e*e)))))*c);i=z[f+88>>2];m=z[f+84>>2];n=z[f+80>>2];while(1){z[g+8>>2]=i;z[g+4>>2]=m;z[g>>2]=n;l=v[a+8>>2];f=v[d+4>>2]+B(l&2147483647,24)|0;e=C(C(z[f+20>>2]-z[f+8>>2])*C(.5));j=C(e*e);e=C(C(z[f+12>>2]-z[f>>2])*C(.5));k=C(e*e);e=C(C(z[f+16>>2]-z[f+4>>2])*C(.5));j=C(K(C(j+C(k+C(e*e)))));e=z[g+8>>2];k=C(e*e);e=z[g>>2];o=C(e*e);e=z[g+4>>2];z[(l<<2)+b>>2]=C(z[v[a+28>>2]+60>>2]+h)+C(j*C(C(K(C(k+C(o+C(e*e)))))*c));a=v[a>>2];if(a){continue}break}}xa=g+16|0}function paa(a,b){var c=0,d=0,e=0;c=xa+-64|0;xa=c;d=v[a>>2];e=v[d-4>>2];d=v[d-8>>2];v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;t[c+55|0]=0;t[c+56|0]=0;t[c+57|0]=0;t[c+58|0]=0;t[c+59|0]=0;t[c+60|0]=0;t[c+61|0]=0;t[c+62|0]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+20>>2]=0;v[c+16>>2]=109812;v[c+12>>2]=a;v[c+8>>2]=b;a=a+d|0;d=0;a:{if(naa(e,b,0)){v[c+56>>2]=1;Ba[v[v[e>>2]+20>>2]](e,c+8|0,a,a,1,0);d=v[c+32>>2]==1?a:0;break a}Ba[v[v[e>>2]+24>>2]](e,c+8|0,a,1,0);b:{switch(v[c+44>>2]){case 0:d=v[c+48>>2]==1?v[c+36>>2]==1?v[c+40>>2]==1?v[c+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(v[c+32>>2]!=1){if(v[c+48>>2]|v[c+36>>2]!=1|v[c+40>>2]!=1){break a}}d=v[c+24>>2]}xa=c- -64|0;return d}function Cu(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=xa-288|0;xa=d;a:{if(!(w[(v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0)+8|0]&8)){t[d+264|0]=1;v[d+272>>2]=0;v[d+276>>2]=64;e=d+8|0;v[d+268>>2]=e;f=a;a=v[a+2416>>2];LP(f,b+16|0,a?a+272|0:e,c);f=v[(a?a+536|0:d+272|0)>>2];if(f){g=v[(a?a+532|0:d+268|0)>>2];h=v[b>>2]+4816|0;c=0;while(1){a=v[(c<<2)+g>>2];b=a-16|0;e=a-12|0;a=v[e>>2];if(a&268435456){Yu(b);v[d+284>>2]=b;Og(h,d+284|0);a=v[e>>2]&-268435457;v[e>>2]=a}if((a&251658240)==16777216){v[e>>2]=a&1073741823;v[b>>2]=0}au(b);c=c+1|0;if((f|0)!=(c|0)){continue}break}}a=v[d+276>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[d+268>>2];if((a|0)==(d+8|0)|!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a);break a}Du(b)}xa=d+288|0}function qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=x[b>>1];a:{if(!(f&1)){break a}b=v[a+5936>>2];if(!b){break a}h=b&1;d=v[a+5932>>2];if((b|0)!=1){i=b&-2;while(1){e=c;c=v[(d+(b<<2)|0)-4>>2];e=e+(x[c+4>>1]==6&(c|0)!=0)|0;b=b-2|0;c=v[d+(b<<2)>>2];c=e+(x[c+4>>1]==6&(c|0)!=0)|0;g=g+2|0;if((i|0)!=(g|0)){continue}break}}if(!h){break a}b=v[(d+(b<<2)|0)-4>>2];c=(x[b+4>>1]==6&(b|0)!=0)+c|0}b:{if(!(f&2)){break b}d=v[a+5936>>2];if(!d){break b}a=v[a+5932>>2];c:{if(!(d&1)){b=d;break c}e=c;b=d-1|0;c=v[a+(b<<2)>>2];c=e+(x[c+4>>1]==5&(c|0)!=0)|0}if((d|0)==1){break b}while(1){d=v[(a+(b<<2)|0)-4>>2];c=(x[d+4>>1]==5&(d|0)!=0)+c|0;b=b-2|0;d=v[a+(b<<2)>>2];c=c+(x[d+4>>1]==5&(d|0)!=0)|0;if(b){continue}break}}return c|0}function e4(a){var b=0,c=0;b=v[a+108>>2];if(b){b=XZ(b);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+108>>2]=0;b=v[a+40>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+40>>2]=0;b=v[a+20>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+20>>2]=0;b=v[a+24>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+24>>2]=0;b=v[a>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a>>2]=0;b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+4>>2]=0;b=v[a+8>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+8>>2]=0;b=v[a+12>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+12>>2]=0;b=v[a+16>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+16>>2]=0}function _l(a,b,c,d){a=a|0;b=b|0;c=C(c);d=C(d);var e=0,f=0;a:{b:{c:{d:{a=a+8|0;f=v[a+4>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}jF(a+12|0,b,c,d);break a}e=v[a+8>>2];e:{if(!(f&1048576)){if(!e){e=Pu(v[a>>2],f>>>24&15);v[a+8>>2]=e}z[e+156>>2]=z[a+72>>2];z[e+160>>2]=z[a+76>>2];z[e+164>>2]=z[a+80>>2];z[e+168>>2]=z[a+84>>2];z[e+172>>2]=z[a+88>>2];z[e+176>>2]=z[a+92>>2];z[e+180>>2]=z[a+96>>2];z[e+184>>2]=z[a+100>>2];z[e+188>>2]=z[a+104>>2];z[e+192>>2]=z[a+108>>2];z[e+196>>2]=z[a+112>>2];z[e+200>>2]=z[a+116>>2];break e}if(e){break e}e=Pu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=e}b=(b<<3)+e|0;z[b+160>>2]=d;z[b+156>>2]=c;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1048576}}function Pk(a){var b=0,c=C(0),d=0,e=0,f=0,g=0;a:{if((v[a+4>>2]>>>30|0)-3>>>0<4294967294){break a}b=v[a>>2];if(!b){break a}g=b-16|0}if(v[a+88>>2]){while(1){b=v[v[a+84>>2]+(d<<2)>>2];e=b+48|0;c=z[g+5148>>2];b:{c:{d:{switch((v[b+52>>2]>>>30|0)-2|0){case 0:f=v[e>>2];if(w[f+4785|0]){break c}default:z[b+308>>2]=c;v[b+312>>2]=0;UG(b- -64|0,c,1);break b;case 1:break d}}f=v[e>>2]}z[b+308>>2]=c;v[b+312>>2]=0;Xu(f,e);v[b+316>>2]=v[b+316>>2]&-117440513|83886080}d=d+1|0;if(d>>>0>2]){continue}break}}b=v[a>>2];c=z[b+5132>>2];t[a+60|0]=0;z[a+56>>2]=c;e:{f:{switch((v[a+4>>2]>>>30|0)-2|0){case 0:if(w[b+4785|0]){break e}break;case 1:break e;default:break f}}z[a+44>>2]=c;return}Xu(b,a);v[a+4>>2]=v[a+4>>2]&-897|640}function Mm(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{e=v[a+20>>2];b:{if(!e){break b}f=v[b>>2];d=f+(f<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;g=e-1&(d>>>16^d);d=v[v[a+12>>2]+(g<<2)>>2];if((d|0)==-1){break b}i=v[a+8>>2];j=v[a+4>>2];while(1){d=d<<2;h=d+j|0;if(v[h>>2]==(f|0)){break a}d=v[d+i>>2];if((d|0)!=-1){continue}break}}t[c|0]=0;c=-1;d=v[a+28>>2];if((d|0)==-1){d=e?e<<1:16;if(d>>>0>e>>>0){Hm(a,d);e=v[a+20>>2];c=v[a+28>>2]}b=v[b>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;g=e-1&(b>>>16^b);d=c}b=d<<2;c=b+v[a+8>>2]|0;v[a+28>>2]=v[c>>2];e=c;c=v[a+12>>2]+(g<<2)|0;v[e>>2]=v[c>>2];v[c>>2]=d;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return b+v[a+4>>2]|0}t[c|0]=1;return h}function h5(a,b,c){a=a|0;b=b|0;c=c|0;b=v[b+80>>2];a:{switch(c|0){case 0:z[a>>2]=z[b+128>>2];z[a+4>>2]=z[b+132>>2];z[a+8>>2]=z[b+136>>2];z[a+12>>2]=z[b+140>>2];z[a+16>>2]=z[b+144>>2];c=v[b+152>>2];v[a+20>>2]=v[b+148>>2];v[a+24>>2]=c;return;case 1:z[a>>2]=z[b+156>>2];z[a+4>>2]=z[b+160>>2];z[a+8>>2]=z[b+164>>2];z[a+12>>2]=z[b+168>>2];z[a+16>>2]=z[b+172>>2];c=v[b+180>>2];v[a+20>>2]=v[b+176>>2];v[a+24>>2]=c;return;case 2:z[a>>2]=z[b+184>>2];z[a+4>>2]=z[b+188>>2];z[a+8>>2]=z[b+192>>2];z[a+12>>2]=z[b+196>>2];z[a+16>>2]=z[b+200>>2];c=v[b+208>>2];v[a+20>>2]=v[b+204>>2];v[a+24>>2]=c;return;default:break a}}v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+4>>2]=1073741824}function I9(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}t[a|0]=b;e=a+c|0;t[e-1|0]=b;if(c>>>0<3){break a}t[a+2|0]=b;t[a+1|0]=b;t[e-3|0]=b;t[e-2|0]=b;if(c>>>0<7){break a}t[a+3|0]=b;t[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=B(b&255,16843009);v[f>>2]=d;b=c-e&-4;c=b+f|0;v[c-4>>2]=d;if(b>>>0<9){break a}v[f+8>>2]=d;v[f+4>>2]=d;v[c-8>>2]=d;v[c-12>>2]=d;if(b>>>0<25){break a}v[f+24>>2]=d;v[f+20>>2]=d;v[f+16>>2]=d;v[f+12>>2]=d;v[c-16>>2]=d;v[c-20>>2]=d;v[c-24>>2]=d;v[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=Raa(d,0,1,1);e=Aa;b=b+f|0;while(1){v[b+24>>2]=d;v[b+28>>2]=e;v[b+16>>2]=d;v[b+20>>2]=e;v[b+8>>2]=d;v[b+12>>2]=e;v[b>>2]=d;v[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function N5(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);o=z[b+20>>2];p=z[b+24>>2];l=z[c+20>>2];m=z[c+24>>2];q=z[b+16>>2];n=z[c+16>>2];d=z[b+12>>2];e=z[c+12>>2];f=z[c>>2];h=z[b>>2];i=z[b+4>>2];g=z[c+4>>2];j=z[b+8>>2];k=z[c+8>>2];z[a+12>>2]=C(C(C(d*e)-C(f*h))-C(i*g))-C(j*k);z[a+8>>2]=C(C(h*g)+C(C(d*k)+C(j*e)))-C(f*i);z[a+4>>2]=C(C(j*f)+C(C(d*g)+C(i*e)))-C(k*h);z[a>>2]=C(C(i*k)+C(C(d*f)+C(h*e)))-C(g*j);e=C(m+m);f=C(n+n);g=C(l+l);k=C(C(j*e)+C(C(h*f)+C(i*g)));l=C(C(d*d)+C(-.5));z[a+24>>2]=p+C(C(j*k)+C(C(e*l)+C(d*C(C(h*g)-C(f*i)))));z[a+20>>2]=o+C(C(i*k)+C(C(g*l)+C(d*C(C(j*f)-C(e*h)))));z[a+16>>2]=q+C(C(h*k)+C(C(f*l)+C(d*C(C(i*e)-C(g*j)))))}function BQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=C(0);if(v[a+32>>2]){h=v[a+40>>2];while(1){b=v[v[(v[h+184>>2]+B(v[v[a+28>>2]+(g<<2)>>2]>>>7|0,24)|0)+20>>2]+16>>2];wG(b);i=z[a+36>>2];e=w[a+44|0];c=0;d=xa-16|0;xa=d;v[d+12>>2]=0;if(v[b+28>>2]){while(1){f=v[b>>2];qH(v[v[b+24>>2]+(c<<2)>>2],i,0,0,d+12|0,v[f+40>>2]+(c<<5)|0,!v[f+24>>2],e);c=c+1|0;if(c>>>0>2]){continue}break}}xa=d+16|0;e=v[b+28>>2];if(e){f=v[b+24>>2];d=0;while(1){b=v[f+(d<<2)>>2];c=v[b+100>>2];z[b+64>>2]=z[c>>2];z[b+68>>2]=z[c+4>>2];z[b+72>>2]=z[c+8>>2];z[b+76>>2]=z[c+12>>2];z[b+80>>2]=z[c+16>>2];z[b+84>>2]=z[c+20>>2];z[b+88>>2]=z[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 t4(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((v[a+8>>2]&2147483647)>>>0>>0){a:{if(!b){break a}f=b<<2;if(!f){break a}e=v[37696];d=e+12|0;e=(j=d,k=f,l=Ba[v[v[e>>2]+20>>2]](e)|0?43907:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}g=v[a>>2];d=v[a+4>>2];if((d|0)>0){h=(d<<2)+e|0;d=e;while(1){f=x[g>>1]|x[g+2>>1]<<16;u[d>>1]=f;u[d+2>>1]=f>>>16;g=g+4|0;d=d+4|0;if(h>>>0>d>>>0){continue}break}g=v[a>>2]}if(!(!g|v[a+8>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,g)}v[a+8>>2]=b;v[a>>2]=e}e=v[a+4>>2];if((e|0)<(b|0)){d=v[a>>2];f=d+(b<<2)|0;e=d+(e<<2)|0;while(1){d=x[c>>1]|x[c+2>>1]<<16;u[e>>1]=d;u[e+2>>1]=d>>>16;e=e+4|0;if(f>>>0>e>>>0){continue}break}}v[a+4>>2]=b}function CD(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;if(!e){return 1}if(!(v[a+4>>2]?f:0)){t[a+337|0]=1}g=gC(a+284|0,b,c,d,e);a:{if(!w[a+336|0]|!v[a+4>>2]){break a}t[a+338|0]=1;if(f|!g){break a}c=a+56|0;f=0;while(1){i=v[v[a+300>>2]+(v[(f<<2)+b>>2]<<2)>>2];k=v[a+48>>2];j=v[c>>2];h=c+B(j,48)|0;d=v[h+12>>2];b:{c:{if(d){if(!v[d+588>>2]){break c}break b}d=v[37696];d=EC((m=d+12|0,n=616,o=Ba[v[v[d>>2]+20>>2]](d)|0?44035:63804,p=11381,q=88,l=v[v[d+12>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0));v[h+12>>2]=d}v[h+8>>2]=k}v[c+112>>2]=0;$C(c,(c+B(j,48)|0)+16|0,i,PC(d,i,v[v[c+104>>2]+8>>2],c+108|0));f=f+1|0;if((g|0)!=(f|0)){continue}break}}return(e|0)==(g|0)|0}function ph(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=xa-16|0;xa=f;a:{a=v[a+4>>2];if(!a){break a}i=v[a+40>>2];j=v[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(w[c|0]){continue}break}c=v[c+4>>2];if(!c){break a}Ba[v[v[c>>2]+36>>2]](c);e=xa-16|0;xa=e;d=v[c+12>>2];g=v[c+8>>2];b:{if(g){Ba[v[v[g>>2]+52>>2]](e+8|0,g);b=0;if(w[e+8|0]&8){break b}b=Ba[v[v[g>>2]+28>>2]](g)|0;break b}b=0}c:{if(d){Ba[v[v[d>>2]+52>>2]](e,d);h=0;if(w[e|0]&8){break c}h=Ba[v[v[d>>2]+28>>2]](d)|0;break c}h=0}xa=e+16|0;e=b?b:h;d=d?h?e:0:e;b=g?b?d:0:d;if(!b){continue}v[f+8>>2]=c;d=qh(b+5892|0,f+8|0,f+15|0);if(!w[f+15|0]){v[d>>2]=v[f+8>>2]}Hu(b+16|0,c+16|0);continue}}xa=f+16|0}function AH(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=v[a+4>>2];c=v[d+4>>2];a:{if((c|0)==(d|0)){break a}f=1;while(1){h=g;g=g+1|0;e=f;f=e+1|0;d=c;c=v[d+4>>2];if((c|0)!=(d|0)){continue}break}if(!e){break a}g=e&7;b:{if(!g){c=a;break b}f=0;while(1){c=v[a+4>>2];v[a+4>>2]=d;e=e-1|0;a=c;f=f+1|0;if((g|0)!=(f|0)){continue}break}}if(h>>>0<7){break a}while(1){a=v[c+4>>2];v[c+4>>2]=d;c=v[a+4>>2];v[a+4>>2]=d;a=v[c+4>>2];v[c+4>>2]=d;c=v[a+4>>2];v[a+4>>2]=d;a=v[c+4>>2];v[c+4>>2]=d;c=v[a+4>>2];v[a+4>>2]=d;a=v[c+4>>2];v[c+4>>2]=d;c=v[a+4>>2];v[a+4>>2]=d;e=e-8|0;if(e){continue}break}}if(!(w[d+44|0]&4)){a=xa-16|0;xa=a;v[a+8>>2]=d;b=qh(b+336|0,a+8|0,a+15|0);if(!w[a+15|0]){v[b>>2]=v[a+8>>2]}t[d+44|0]=w[d+44|0]|4;xa=a+16|0}}function KU(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0);e=xa-48|0;xa=e;j=z[c+8>>2];k=z[b+8>>2];g=C(j-k);l=z[c>>2];m=z[b>>2];h=C(l-m);n=z[c+4>>2];o=z[b+4>>2];i=C(n-o);f=C(K(C(C(g*g)+C(C(h*h)+C(i*i)))));if(d){z[d>>2]=f*C(.5);k=z[b+8>>2];o=z[b+4>>2];n=z[c+4>>2];m=z[b>>2];l=z[c>>2];j=z[c+8>>2]}a:{if(f>2]=0;v[e+16>>2]=1065353216;v[e+20>>2]=0;f=C(C(1)/f);z[e+8>>2]=g*f;z[e+4>>2]=i*f;z[e>>2]=h*f;o9(e+32|0,e+16|0,e);g=z[e+36>>2];h=z[e+32>>2];i=z[e+40>>2];f=z[e+44>>2]}z[a+12>>2]=f;z[a+8>>2]=i;z[a+4>>2]=g;z[a>>2]=h;z[a+24>>2]=C(j+k)*C(.5);z[a+20>>2]=C(n+o)*C(.5);z[a+16>>2]=C(l+m)*C(.5);xa=e+48|0}function q8(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0);f=xa+-64|0;xa=f;D5(f+32|0,f,b,c,d);if(e&1){Ba[v[v[a>>2]+8>>2]](a,f+32|0,f)}if(!(!(e&2)|!(u[b+128>>1]&1))){i=z[f+40>>2];h=z[f+8>>2];j=z[f+36>>2];k=z[f+4>>2];l=z[f+44>>2];m=z[f+12>>2];n=z[f+32>>2];o=z[f>>2];g=C(C(i*h)+C(C(j*k)+C(C(l*m)+C(n*o))));i=C(C(k*i)+C(C(C(l*o)-C(m*n))-C(j*h)));h=C(K(C(C(g*g)+C(C(C(i*i)+C(0))+C(0)))));if(h!=C(0)){h=C(C(1)/h);g=C(g*h);i=C(i*h)}h=z[b+116>>2];j=z[b+112>>2];k=j;j=z[b+104>>2]>C(0)?C(0):z[b+100>>2]>C(0)?C(0):z[b+108>>2];g=z9(C(F(C(G(g,C(-1))),C(1))));g=C(g+g);g=i>2]+16>>2]](a,f+32|0,h,k,C(k-j)>2];j=C(g+g);f=z[d+8>>2];k=C(j*f);h=z[d>>2];i=C(h+h);m=z[d+12>>2];l=C(i*m);z[e+44>>2]=k-l;z[e+36>>2]=k+l;h=C(C(1)-C(h*i));k=C(g*j);z[e+48>>2]=h-k;n=h;h=C(f+f);l=C(f*h);z[e+32>>2]=n-l;f=C(i*f);j=C(j*m);z[e+40>>2]=f+j;g=C(i*g);i=C(h*m);z[e+28>>2]=g-i;z[e+24>>2]=f-j;z[e+20>>2]=g+i;z[e+16>>2]=C(C(1)-k)-l;z[e+52>>2]=z[d+16>>2];z[e+56>>2]=z[d+20>>2];z[e+60>>2]=z[d+24>>2];z[e+64>>2]=z[c+4>>2];z[e+68>>2]=z[c+8>>2];z[e+72>>2]=z[c+12>>2];f=z[a+4>>2];z[e>>2]=z[b+16>>2];z[e+4>>2]=z[b+20>>2];g=z[b+24>>2];z[e+12>>2]=f;z[e+8>>2]=g;a=s$(e,e+16|0);xa=e+80|0;return a|0}function KO(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=B(f,12);if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?37087:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=B(c,12)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=B(c,12)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;v[c+8>>2]=v[b+8>>2];b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;b=a;a=v[a+4>>2];v[b+4>>2]=a+1;return B(a,12)+e|0}function uF(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(b,44);if(!d){break a}c=v[37696];f=c+12|0;f=(i=f,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?45105:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,44)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;v[c+40>>2]=v[d+40>>2];e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+44|0;c=c+44|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function my(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0);if(x[d+8>>1]==65535){d=v[d+4>>2];h=z[d- -64>>2];i=z[d+40>>2];j=z[d+52>>2];k=z[d+60>>2];l=z[d+36>>2];m=z[d+48>>2];n=z[d+56>>2];o=z[d+44>>2];p=v[b+8>>2];q=v[b+12>>2];e=z[c+8>>2];f=z[c+4>>2];g=z[c>>2];r=z[d+32>>2];c=v[b>>2];b=v[b+4>>2];v[a+28>>2]=0;v[a+8>>2]=p;v[a+12>>2]=q;v[a>>2]=c;v[a+4>>2]=b;z[a+16>>2]=C(n*e)+C(C(r*g)+C(o*f));z[a+20>>2]=C(k*e)+C(C(l*g)+C(m*f));z[a+24>>2]=C(h*e)+C(C(i*g)+C(j*f));return}d=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=d;d=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=d;b=v[c+4>>2];v[a+16>>2]=v[c>>2];v[a+20>>2]=b;b=v[c+12>>2];v[a+24>>2]=v[c+8>>2];v[a+28>>2]=b}function gG(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=xa-16|0;xa=e;b=v[a+28>>2];if(v[b+36>>2]){while(1){c=v[v[b+32>>2]+(d<<2)>>2]>>>7|0;v[e+8>>2]=c;a:{if((c|0)==v[b+12>>2]){v[b+12>>2]=c-1;break a}f=v[b+4>>2];if(f>>>0>=(v[b+8>>2]&2147483647)>>>0){on(b,e+8|0);b=v[a+28>>2];break a}v[v[b>>2]+(f<<2)>>2]=c;v[b+4>>2]=v[b+4>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}}d=0;v[b+36>>2]=0;if(v[b+72>>2]){while(1){c=v[v[b+68>>2]+(d<<2)>>2];v[e+12>>2]=c;b:{if((c|0)==v[b+28>>2]){v[b+28>>2]=c-1;break b}f=v[b+20>>2];if(f>>>0>=(v[b+24>>2]&2147483647)>>>0){on(b+16|0,e+12|0);b=v[a+28>>2];break b}v[v[b+16>>2]+(f<<2)>>2]=c;v[b+20>>2]=v[b+20>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}}v[b+72>>2]=0;xa=e+16|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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);n=z[a+4>>2];o=z[b+4>>2];p=C(n+o);i=C(p+z[e>>2]);m=C(i*i);q=z[c+24>>2];j=C(q-z[d+24>>2]);r=z[c+16>>2];k=C(r-z[d+16>>2]);s=z[c+20>>2];l=C(s-z[d+20>>2]);i=C(C(j*j)+C(C(k*k)+C(l*l)));a=m<=i;a:{if(a){break a}m=C(K(i));b:{if(m<=C(9999999747378752e-21)){k=C(1);j=C(0);l=C(0);break b}i=C(C(1)/m);j=C(j*i);k=C(k*i);l=C(l*i)}b=v[g+4096>>2];if(b>>>0>63){break a}v[g+4096>>2]=b+1;b=(b<<6)+g|0;z[b+8>>2]=j;z[b+4>>2]=l;z[b>>2]=k;v[b+52>>2]=-1;z[b+12>>2]=m-p;i=C(C(C(n+m)-o)*C(-.5));z[b+24>>2]=q+C(i*j);z[b+20>>2]=s+C(i*l);z[b+16>>2]=r+C(i*k)}return!a|0}function zD(a){a=a|0;var b=0,c=0;v[a>>2]=129964;AD(a);b=v[a+360>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+352>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+348>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+340>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+332>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+324>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+320>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+312>>2];if(!b){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}dC(a+284|0);mD(a+52|0);v[a+16>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+20>>2]=0;return a|0}function g5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[a+80>>2];a:{b:{c:{switch(b|0){case 0:b=v[c+4>>2];v[d+128>>2]=v[c>>2];v[d+132>>2]=b;v[d+152>>2]=v[c+24>>2];b=v[c+20>>2];v[d+144>>2]=v[c+16>>2];v[d+148>>2]=b;b=v[c+12>>2];v[d+136>>2]=v[c+8>>2];v[d+140>>2]=b;break b;case 1:b=v[c+4>>2];v[d+156>>2]=v[c>>2];v[d+160>>2]=b;v[d+180>>2]=v[c+24>>2];b=v[c+20>>2];v[d+172>>2]=v[c+16>>2];v[d+176>>2]=b;b=v[c+12>>2];v[d+164>>2]=v[c+8>>2];v[d+168>>2]=b;break b;case 2:break c;default:break a}}b=v[c+4>>2];v[d+184>>2]=v[c>>2];v[d+188>>2]=b;v[d+208>>2]=v[c+24>>2];b=v[c+20>>2];v[d+200>>2]=v[c+16>>2];v[d+204>>2]=b;b=v[c+12>>2];v[d+192>>2]=v[c+8>>2];v[d+196>>2]=b}t[d+477|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}}function Yy(a){a=a|0;var b=0,c=0;v[a>>2]=128400;b=v[a+4>>2];a:{if(!b){break a}c=v[b+12>>2];b:{if((c|0)<0|!(c&2147483647)){break b}c=v[b+4>>2];if(!c){break b}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+4>>2];if(!b){break a}}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=0;b=v[a+8>>2];c:{if(!b){break c}c=v[b+12>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=v[b+4>>2];if(!c){break d}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+8>>2];if(!b){break c}}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=0;b=v[a+176>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+168>>2];if(!b){break e}c=v[a+164>>2];Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function QH(a){var b=0,c=0,d=0;c=w[a+68|0];if(c&1){CH(v[v[a+48>>2]+1136>>2],a);c=w[a+68|0]}if(!(c&8)){LH(v[a+56>>2])}RH(v[v[a+48>>2]+2364>>2],v[a+40>>2]);b=v[a+56>>2];if(b){c=v[v[a+48>>2]+2408>>2];v[c+280>>2]=v[c+280>>2]-1;v[b>>2]=v[c+288>>2];v[c+288>>2]=b}c=v[a+20>>2];if(c){a:{b=v[a+48>>2];b:{d=x[a+8>>1];if(d>>>0<=128){if(!c){break a}d=b+1572|0;v[d>>2]=v[d>>2]-1;b=b+1580|0;v[c>>2]=v[b>>2];break b}if(d>>>0<=256){if(!c){break a}d=b+1864|0;v[d>>2]=v[d>>2]-1;b=b+1872|0;v[c>>2]=v[b>>2];break b}if(d>>>0<=384){if(!c){break a}d=b+2156|0;v[d>>2]=v[d>>2]-1;b=b+2164|0;v[c>>2]=v[b>>2];break b}if(!c){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);break a}v[b>>2]=c}}v[v[a+52>>2]+60>>2]=0;return a}function aD(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{e=v[a+20>>2];b:{if(!e){break b}f=v[b>>2];d=f+(f<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;g=e-1&(d>>>16^d);d=v[v[a+12>>2]+(g<<2)>>2];if((d|0)==-1){break b}i=v[a+8>>2];j=v[a+4>>2];while(1){h=(d<<3)+j|0;if(v[h>>2]==(f|0)){break a}d=v[(d<<2)+i>>2];if((d|0)!=-1){continue}break}}t[c|0]=0;if(v[a+36>>2]==v[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){YC(a,c);e=v[a+20>>2]}b=v[b>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;g=e-1&(b>>>16^b)}b=v[a+28>>2];v[a+28>>2]=b+1;c=v[a+12>>2]+(g<<2)|0;v[v[a+8>>2]+(b<<2)>>2]=v[c>>2];v[c>>2]=b;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return v[a+4>>2]+(b<<3)|0}t[c|0]=1;return h}function Wn(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{e=v[a+20>>2];b:{if(!e){break b}f=v[b>>2];d=f+(f<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;g=e-1&(d>>>16^d);d=v[v[a+12>>2]+(g<<2)>>2];if((d|0)==-1){break b}i=v[a+8>>2];j=v[a+4>>2];while(1){h=(d<<3)+j|0;if(v[h>>2]==(f|0)){break a}d=v[(d<<2)+i>>2];if((d|0)!=-1){continue}break}}t[c|0]=0;if(v[a+36>>2]==v[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){mn(a,c);e=v[a+20>>2]}b=v[b>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;g=e-1&(b>>>16^b)}b=v[a+28>>2];v[a+28>>2]=b+1;c=v[a+12>>2]+(g<<2)|0;v[v[a+8>>2]+(b<<2)>>2]=v[c>>2];v[c>>2]=b;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return v[a+4>>2]+(b<<3)|0}t[c|0]=1;return h}function fS(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=xa-16|0;xa=d;c=v[a+4>>2];f=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;if(f){e=y[f+152>>2]>4294967293}else{e=1}g=v[c+40>>2];h=v[c+28>>2];c=v[c+20>>2];v[d+8>>2]=a;v[d>>2]=c;v[d+4>>2]=c+(h<<2);c=VI(d);a:{if(!c){break a}if(e){e=(f|0)!=0;while(1){b:{c:{switch(w[c+24|0]){case 1:u[c+56>>1]=x[c+56>>1]|32;f=w[c+25|0];if(f&32){break b}t[c+25|0]=f|32;_O(g,c+4|0);break b;case 0:break c;default:break b}}MR(c);WR(c,e)}c=VI(d);if(c){continue}break}break a}while(1){d:{e:{switch(w[c+24|0]){case 0:MR(c);break d;case 1:break e;default:break d}}u[c+56>>1]=x[c+56>>1]|32;e=w[c+25|0];if(e&32){break d}t[c+25|0]=e|32;_O(g,c+4|0)}c=VI(d);if(c){continue}break}}eS(a,b);xa=d+16|0}function kM(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;h=H9(Cx(c,b<<3,1),d,a<<3);a=v[c+16>>2];a:{if(!(a>>>0<=d>>>0&a+v[c+20>>2]>>>0>d>>>0)){if(!d){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,d);return h}j=v[c+4>>2];f=v[c+8>>2];g=f;while(1){i=e;e=e+1|0;b=g;g=b-1|0;a=(g<<2)+j|0;if(y[a>>2]>>0){continue}break}b:{if(b>>>0>=f>>>0){break b}d=i&3;if(d){e=0;while(1){v[a>>2]=v[v[c+4>>2]+(b<<2)>>2];b=b+1|0;a=a+4|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(i-1>>>0<3){break b}while(1){d=b<<2;v[a>>2]=v[d+v[c+4>>2]>>2];v[a+4>>2]=v[(d+v[c+4>>2]|0)+4>>2];v[a+8>>2]=v[(d+v[c+4>>2]|0)+8>>2];v[a+12>>2]=v[(d+v[c+4>>2]|0)+12>>2];a=a+16|0;b=b+4|0;if((f|0)!=(b|0)){continue}break}}v[c+8>>2]=f-1}return h}function fh(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=v[a+44>>2];h=c&2147483647?c<<1:1;a:{if(!h){break a}c=h<<3;if(!(w[a+32|0]|c>>>0>32)){t[a+32|0]=1;d=a;break a}if(!c){break a}d=v[37696];e=d+12|0;d=(k=e,l=c,m=Ba[v[v[d>>2]+20>>2]](d)|0?30787:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}g=v[a+40>>2];i=(g<<3)+d|0;c=v[a+36>>2];if((g|0)>0){e=c;f=d;while(1){t[f|0]=w[e|0];v[f+4>>2]=v[e+4>>2];e=e+8|0;f=f+8|0;if(i>>>0>f>>>0){continue}break}}t[i|0]=w[b|0];v[i+4>>2]=v[b+4>>2];b:{if(v[a+44>>2]<0){break b}if((a|0)==(c|0)){t[a+32|0]=0;break b}if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);g=v[a+40>>2]}v[a+44>>2]=h;v[a+36>>2]=d;v[a+40>>2]=g+1}function np(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=v[37696];c=e+12|0;e=(k=c,l=b,m=Ba[v[v[e>>2]+20>>2]](e)|0?35113:63804,n=16608,o=553,j=v[v[c>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}else{e=0}d=v[a>>2];f=v[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){t[c|0]=w[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){t[c|0]=w[d|0];t[c+1|0]=w[d+1|0];t[c+2|0]=w[d+2|0];t[c+3|0]=w[d+3|0];t[c+4|0]=w[d+4|0];t[c+5|0]=w[d+5|0];t[c+6|0]=w[d+6|0];t[c+7|0]=w[d+7|0];d=d+8|0;c=c+8|0;if((f|0)!=(c|0)){continue}break}}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Dt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a+48|0;d=xa-16|0;xa=d;a:{b:{c:{d:{a=a+32|0;e=v[a+4>>2];f=e>>>30|0;switch(f-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}v[c+16>>2]=v[b>>2];v[c+20>>2]=v[b+4>>2];v[c+24>>2]=v[b+8>>2];v[c+28>>2]=v[b+12>>2];a=v[a-12>>2];if(!a){break a}e:{f:{switch(x[a+4>>1]-5|0){case 0:a=a- -64|0;break e;case 8:a=a- -64|0;break e;default:break f}}a=a- -64|0}if((f|0)==1){break a}t[d|0]=w[c- -64|0];v[d+8>>2]=8;SJ(a,c,d+8|0,d,0);break a}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],e>>>24&15);v[a+8>>2]=c}v[c+28>>2]=v[b>>2];v[c+32>>2]=v[b+4>>2];v[c+36>>2]=v[b+8>>2];v[c+40>>2]=v[b+12>>2];Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|8}xa=d+16|0}function qh(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{e=v[a+20>>2];b:{if(!e){break b}g=v[b>>2];d=g+(g<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=e-1&(d>>>16^d);f=v[v[a+12>>2]+(d<<2)>>2];if((f|0)==-1){break b}i=v[a+8>>2];j=v[a+4>>2];while(1){f=f<<2;h=f+j|0;if(v[h>>2]==(g|0)){break a}f=v[f+i>>2];if((f|0)!=-1){continue}break}}t[c|0]=0;if(v[a+36>>2]==v[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){wh(a,c);e=v[a+20>>2]}b=v[b>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=e-1&(b>>>16^b)}b=v[a+28>>2];v[a+28>>2]=b+1;c=b<<2;e=v[a+12>>2]+(d<<2)|0;v[c+v[a+8>>2]>>2]=v[e>>2];v[e>>2]=b;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return c+v[a+4>>2]|0}t[c|0]=1;return h}function os(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(w[a+6352|0]){a9(v[37696],8,11709,2961,75857,0);return}d=a+5584|0;LE(d);e=NE(d,0);d=NE(d,1);t[a+6352|0]=1;if(c){c=v[a+6092>>2];Ba[v[v[c>>2]+8>>2]](c);c=v[a+6092>>2];Ba[v[v[c>>2]+12>>2]](c)}v[a+6192>>2]=1;v[a+6188>>2]=b;v[a+6184>>2]=v[a+6092>>2];if(b){Ba[v[v[b>>2]+16>>2]](b)}b=a+6168|0;if(e){c=a+5764|0;v[c>>2]=b;v[a+5768>>2]=1;Ba[v[v[a+6168>>2]+16>>2]](b);v[a+5760>>2]=v[v[c>>2]+16>>2]}if(d){c=a+5804|0;v[c>>2]=b;v[a+5808>>2]=1;Ba[v[v[a+6168>>2]+16>>2]](b);v[a+5800>>2]=v[v[c>>2]+16>>2]}c=v[a+6184>>2];Ba[v[v[c>>2]+72>>2]](c,b);if(e){b=v[a+5760>>2];Ba[v[v[b>>2]+72>>2]](b,a+5744|0)}if(d){b=v[a+5800>>2];Ba[v[v[b>>2]+72>>2]](b,a+5784|0)}}function _R(a,b,c){var d=0,e=0,f=0,g=0;v[a+4>>2]=b;v[a>>2]=0;v[a+8>>2]=v[a+8>>2]&2147483647;f=v[b+40>>2];d=v[f+2376>>2];e=v[d+12>>2];a:{if(e){g=e-1|0;e=v[v[d+8>>2]+(g<<2)>>2];v[d+12>>2]=g;break a}e=v[d+4>>2];v[d+4>>2]=e+1}d=e&2147483647;v[a+8>>2]=d|v[a+8>>2]&-2147483648;d=d+1|0;e=v[f+1140>>2];f=v[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){XI(e,d)}v[e+8>>2]=d}v[a>>2]=v[b+32>>2];v[b+32>>2]=a;v[b+36>>2]=v[b+36>>2]+1;v[a+36>>2]=-1;v[a+28>>2]=c;v[a+16>>2]=-128;b=v[v[v[a+4>>2]+40>>2]+2368>>2];c=v[b+12>>2];b:{if(c){d=c-1|0;c=v[v[b+8>>2]+(d<<2)>>2];v[b+12>>2]=d;break b}c=v[b+4>>2];v[b+4>>2]=c+1}v[a+32>>2]=c;XR(a);return a}function JI(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=C(0),k=0,l=0,m=0,n=0,o=C(0),q=C(0),r=C(0),s=C(0),t=C(0);g=xa-80|0;xa=g;h=v[a+48>>2];if(w[h+60|0]){dI(h);h=v[a+48>>2]}k=v[h+8>>2];l=v[h+28>>2];m=v[h+24>>2];h=v[h+4>>2];n=v[a+44>>2];c=B(n,24)+c|0;o=z[c>>2];q=z[c+12>>2];r=z[c+16>>2];s=z[c+20>>2];t=z[c+4>>2];i=z[(n<<2)+d>>2];z[g+4>>2]=z[c+8>>2]-i;z[g>>2]=t-i;v[g+64>>2]=-1;v[g+56>>2]=-1;v[g+48>>2]=-1;v[g+40>>2]=-1;v[g+32>>2]=-1;v[g+24>>2]=-1;z[g+12>>2]=i+s;z[g+8>>2]=i+r;c=(p(C(i+q)),j(2));v[g+20>>2]=(c|0)<0?c^-1:c|-2147483648;c=(p(C(o-i)),j(2));v[g+16>>2]=(c|0)<0?c^-1:c|-2147483648;a=a+44|0;c=g+16|0;KI(b,f,k,h,m,l,1,a,c,g,e);LI(b,f,1,a,c,g,k,h,m,l,e);xa=g+80|0} -function cj(a,b,c){var d=C(0),e=0,f=0,g=C(0);d=z[v[a>>2]+5132>>2];g=z[a+56>>2];e=d>g&c;if((b|c)&w[a+60|0]!=0?1:e){d=e?d:g;if(v[a+88>>2]){c=0;while(1){b=v[v[a+84>>2]+(c<<2)>>2];e=b+48|0;a:{b:{c:{switch((v[b+52>>2]>>>30|0)-2|0){case 0:f=v[e>>2];if(w[f+4785|0]){break b}default:z[b+308>>2]=d;v[b+312>>2]=0;UG(b- -64|0,d,1);break a;case 1:break c}}f=v[e>>2]}z[b+308>>2]=d;v[b+312>>2]=0;Xu(f,e);v[b+316>>2]=v[b+316>>2]&-117440513|83886080}c=c+1|0;if(c>>>0>2]){continue}break}}t[a+60|0]=0;z[a+56>>2]=d;d:{e:{switch((v[a+4>>2]>>>30|0)-2|0){case 1:c=v[a>>2];break d;case 0:c=v[a>>2];if(w[c+4785|0]){break d}break;default:break e}}z[a+44>>2]=d;return}Xu(c,a);v[a+4>>2]=v[a+4>>2]&-897|640}}function BW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);o=z[c+4>>2];p=z[a+4>>2];i=z[d>>2];f=C(i+i);m=z[d+8>>2];n=z[d+4>>2];h=z[d+12>>2];k=C(h+h);l=z[c+8>>2];g=C(C(C(f*m)-C(n*k))*l);j=C(C(z[b+24>>2]-z[d+24>>2])-g);g=C(C(-g)-g);h=C(C(C(i*f)+C(C(h*k)+C(-1)))*l);i=C(C(z[b+16>>2]-z[d+16>>2])-h);h=C(C(-h)-h);f=C(l*C(C(m*k)+C(f*n)));k=C(C(-f)-f);f=C(C(z[b+20>>2]-z[d+20>>2])-f);l=C(C(j*g)+C(C(i*h)+C(k*f)));a:{if(l<=C(0)){break a}m=C(C(g*g)+C(C(h*h)+C(k*k)));if(m<=l){j=C(j-g);f=C(f-k);i=C(i-h);break a}n=g;g=C(l/m);j=C(j-C(n*g));f=C(f-C(k*g));i=C(i-C(h*g))}g=C(C(j*j)+C(C(i*i)+C(f*f)));j=C(p+o);return g<=C(j*j)|0}function mJ(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=xa-32|0;xa=f;i=w[v[b+28>>2]- -64|0]<<3&32;g=v[b+4>>2];g=w[v[g+44>>2]+9|0]-1>>>0<2?g:0;a:{if(!g){break a}g=v[g+44>>2];if(w[g+9|0]!=2){i=i|w[g+44|0]<<4&16|1;break a}i=i|2}b=v[b+28>>2];g=v[b+28>>2];j=v[b+24>>2];k=v[b+20>>2];l=v[b+16>>2];b=w[v[c+28>>2]- -64|0]<<3&32;h=v[c+4>>2];h=w[v[h+44>>2]+9|0]-1>>>0<2?h:0;b:{if(!h){break b}h=v[h+44>>2];if(w[h+9|0]!=2){b=b|w[h+44|0]<<4&16|1;break b}b=b|2}c=v[c+28>>2];h=v[c+24>>2];m=v[c+28>>2];a=v[a+2188>>2];n=v[c+16>>2];c=v[c+20>>2];v[f+28>>2]=g;v[f+24>>2]=j;v[f+20>>2]=k;v[f+16>>2]=l;v[f+8>>2]=h;v[f+12>>2]=m;v[f>>2]=n;v[f+4>>2]=c;Ba[v[v[a>>2]+4>>2]](a,d,i,f+16|0,b,f,e);xa=f+32|0}function sR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=v[a+28>>2];f=v[e+4688>>2];if(f){a=0;while(1){b=v[v[e+4684>>2]+(a<<2)>>2];a:{if(!(b&1)){break a}b=b&-2;d=v[b+8>>2];c=v[b+4>>2];b=b?b+4|0:0;UE(c,b);UE(d,b);b=w[v[d+44>>2]+9|0];c=v[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+100>>2];v[c+148>>2]=v[c+148>>2]+1;if(b-1>>>0>1){break a}b=v[d+100>>2];v[b+148>>2]=v[b+148>>2]+1}a=a+1|0;if((f|0)!=(a|0)){continue}break}}c=v[e+4700>>2];if(c){a=0;while(1){b=v[v[e+4696>>2]+(a<<2)>>2];if(b&1){b=b&-2;d=b+4|0;b:{c:{switch(w[b+24|0]){case 0:HR(b,0);break b;case 1:qS(b);break b;case 4:MH(d);break b;case 5:break c;default:break b}}lF(d)}UE(v[b+4>>2],d);UE(v[b+8>>2],d)}a=a+1|0;if((c|0)!=(a|0)){continue}break}}}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,m=0,n=0;c=v[a+268>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=g<<2;if(!(w[a+256|0]|c>>>0>256)){t[a+256|0]=1;e=a;break a}if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?29035:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+260>>2];d=v[a+264>>2];if((d|0)>0){h=(d<<2)+e|0;d=c;f=e;while(1){v[f>>2]=v[d>>2];d=d+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}d=v[a+264>>2]}v[(d<<2)+e>>2]=v[b>>2];b:{if(v[a+268>>2]<0){break b}if((a|0)==(c|0)){t[a+256|0]=0;break b}if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+268>>2]=g;v[a+260>>2]=e;v[a+264>>2]=v[a+264>>2]+1}function uT(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,m=0,o=0,p=0,q=0,r=0,s=0,t=C(0);g=xa-48|0;xa=g;h=v[c+36>>2];if(h){i=v[((v[a+96>>2]<<2)+a|0)+100>>2];j=v[a+8>>2];k=v[c+40>>2];v[g+32>>2]=3;z[g+36>>2]=z[b+40>>2];z[g+40>>2]=z[b+44>>2];z[g+44>>2]=z[b+48>>2];b=v[c+24>>2];l(0,v[c+20>>2]);l(1,b|0);m=+n();b=v[c+32>>2];l(0,v[c+28>>2]);l(1,b|0);o=+n();b=v[c+16>>2];l(0,v[c+12>>2]);l(1,b|0);p=+n();q=A[d>>3];r=A[d+8>>3];s=A[d+16>>3];z[g>>2]=z[a+244>>2];z[g+4>>2]=z[a+248>>2];z[g+8>>2]=z[a+252>>2];t=z[a+256>>2];z[g+24>>2]=s-o;z[g+20>>2]=r-m;z[g+16>>2]=q-p;z[g+12>>2]=t;a=vT(a,c,f,e,g+32|0,g,h,B(k,36)+j|0,h>>>0>i>>>0?i:0)}else{a=0}xa=g+48|0;return a|0}function sL(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(b,40);if(!d){break a}c=v[37696];f=c+12|0;f=(i=f,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?47035:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,40)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+40|0;c=c+40|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function $Q(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=v[a+28>>2];a=v[h+980>>2];i=v[a+332>>2];if(i){j=v[a+328>>2];while(1){i=i-1|0;f=v[j+8>>2];a:{if(!f){break a}b:{d=w[f+24|0];switch(d|0){case 0:case 2:break b;default:break a}}g=v[f+12>>2];a=B(d,12)+h|0;c=v[a+56>>2]-1|0;v[a+56>>2]=c;b=v[a+52>>2];e=g<<2;v[b+e>>2]=v[b+(c<<2)>>2];v[f+12>>2]=-1;if(c>>>0>g>>>0){v[v[e+v[a+52>>2]>>2]+8>>2]=g}c=(d<<2)+h|0;d=v[c+88>>2];c:{if(d>>>0<=g>>>0){break c}b=c;c=d-1|0;v[b+88>>2]=c;if(c>>>0>=y[a+56>>2]){break c}b=e;e=v[a+52>>2];b=b+e|0;d=v[b>>2];k=b;b=e;e=c<<2;b=v[b+e>>2];v[k>>2]=b;v[e+v[a+52>>2]>>2]=d;v[d+8>>2]=c;v[b+8>>2]=g}iJ(v[h+2168>>2],f)}j=j+12|0;if(i){continue}break}}}function t_(a,b,c,d){var e=0,f=0,g=0,h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=0,p=C(0),q=0,r=0;j=xa-32|0;e=j;v[e+24>>2]=0;v[e+28>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;k=z[b+8>>2];e=v[a>>2];g=B(e,12)+c|0;l=z[b>>2];m=z[b+4>>2];i=C(C(k*z[g+8>>2])+C(C(l*z[g>>2])+C(m*z[g+4>>2])));q=v[d+20>>2];r=v[d+16>>2];while(1){a:{b=(e<<2)+r|0;d=x[b+2>>1];b=x[b>>1];v[a>>2]=e;if(!b){break a}d=d+q|0;g=e;while(1){b=b-1|0;h=w[d|0];f=1<>>3&28)+j|0;o=v[n>>2];if(!(f&o)){v[n>>2]=f|o;f=B(h,12)+c|0;p=C(C(k*z[f+8>>2])+C(C(l*z[f>>2])+C(m*z[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 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,n=0;a:{if(!b){break a}d=B(b,24);if(!d){break a}c=v[37696];e=c+12|0;e=(j=e,k=d,l=Ba[v[v[c>>2]+20>>2]](c)|0?34753:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){h=B(c,24)+e|0;c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=x[d+10>>1]|x[d+12>>1]<<16;g=x[d+6>>1]|x[d+8>>1]<<16;u[c+6>>1]=g;u[c+8>>1]=g>>>16;u[c+10>>1]=f;u[c+12>>1]=f>>>16;u[c+14>>1]=x[d+14>>1];f=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=f;d=d+24|0;c=c+24|0;if(h>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function yN(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(x[a+68>>1]<=1){f=v[c+4624>>2];if(!f){break a}c=x[a+34>>1];a=0;if(f-1>>>0>=3){h=f&-4;e=b<<1;while(1){g=a<<2;u[e+(g+d|0)>>1]=c;u[e+((g|4)+d|0)>>1]=c;u[e+((g|8)+d|0)>>1]=c;u[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){u[((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=v[c+4624>>2];if(!e){break a}c=c+528|0;f=v[a- -64>>2];g=v[v[a+60>>2]+44>>2];a=0;while(1){h=v[(c+(a<<6)|0)+52>>2];u[((a<<2)+d|0)+(b<<1)>>1]=x[f+((w[(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 Tg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;if(v[a+36>>2]+(Ba[v[v[b>>2]+76>>2]](b)|0)>>>0>y[a+28>>2]){a9(v[37696],2,11066,249,23971,0);return 0}if(Ba[v[v[b>>2]+96>>2]](b)|0){a9(v[37696],2,11066,255,21131,0);return 0}if(Ba[v[v[b>>2]+24>>2]](b)|0){a9(v[37696],2,11066,261,22288,0);return 0}c=Ba[v[v[b>>2]+100>>2]](b)|0;v[c+96>>2]=a;if(v[c+88>>2]){g=a+8|0;h=v[c+84>>2];while(1){d=v[(e<<2)+h>>2];nh(d+v[(x[d+4>>1]<<2)+86240>>2]|0,a);f=v[a+36>>2];v[a+36>>2]=f+1;v[v[a+40>>2]+(f<<2)>>2]=d;qu(g,d+48|0);e=e+1|0;if(e>>>0>2]){continue}break}}a:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a+8>>2];if(!a){break a}a=a-16|0;if(!a){break a}iq(a,b)}return 1}function ER(a,b,c){var d=0,e=0;u[a+66>>1]=x[b>>1];a:{switch(v[a+68>>2]-5|0){case 0:b:{if(x[a+120>>1]>=c>>>0){e=c<<1;d=v[a+116>>2];break b}d=v[a+116>>2];if(!(!d|!w[a+65|0])){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);u[a+120>>1]=0}d=v[37696]+12|0;e=c<<1;d=Ba[v[v[d>>2]+8>>2]](d,e,24422,18135,109)|0;u[a+120>>1]=c;v[a+116>>2]=d;t[a+65|0]=1}H9(d,b,e);u[a+120>>1]=c;return;case 1:c:{if(x[a+100>>1]>=c>>>0){e=c<<1;d=v[a+96>>2];break c}d=v[a+96>>2];if(!(!d|!w[a+65|0])){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);u[a+100>>1]=0}d=v[37696]+12|0;e=c<<1;d=Ba[v[v[d>>2]+8>>2]](d,e,24422,18135,109)|0;u[a+100>>1]=c;v[a+96>>2]=d;t[a+65|0]=1}H9(d,b,e);u[a+100>>1]=c;break;default:break a}}}function rI(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=B(f,12);if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?35453:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=B(c,12)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=B(c,12)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;v[c+8>>2]=v[b+8>>2];b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function qY(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=B(f,12);if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?46393:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=B(c,12)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=B(c,12)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;v[c+8>>2]=v[b+8>>2];b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function eE(a){a=a|0;var b=0,c=0;v[a>>2]=130076;b=v[a+708>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+700>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+696>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+688>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+648>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+640>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+640>>2]=0;b=v[a+644>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+644>>2]=0;b=v[a+628>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+620>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}FC(a+4|0);return a|0}function Of(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;e=xa-16|0;xa=e;if(d){while(1){f=B(h,40)+c|0;b=x[f+30>>1];a:{if(b&36){g=v[a+8>>2];b:{if(t[149520]&1){b=v[37379];break b}b=aa(3,111496)|0;t[149520]=1;v[37379]=b}v[e>>2]=v[f>>2];v[e+8>>2]=v[f+4>>2];ba(b|0,g|0,14681,e|0);break a}if(b&16){g=v[a+8>>2];c:{if(t[149520]&1){b=v[37379];break c}b=aa(3,111496)|0;t[149520]=1;v[37379]=b}v[e>>2]=v[f>>2];v[e+8>>2]=v[f+4>>2];ba(b|0,g|0,23206,e|0);break a}if(!(b&8)){break a}g=v[a+8>>2];d:{if(t[149520]&1){b=v[37379];break d}b=aa(3,111496)|0;t[149520]=1;v[37379]=b}v[e>>2]=v[f>>2];v[e+8>>2]=v[f+4>>2];ba(b|0,g|0,2099,e|0)}h=h+1|0;if((h|0)!=(d|0)){continue}break}}xa=e+16|0}function OU(a,b,c){var d=0,e=0,f=0;a:{b:{c:{d:{e:{d=x[a+4>>1];switch(d|0){case 1:break d;case 0:break e;default:break c}}t[a+7|0]=1;u[a+4>>1]=1;v[a>>2]=b;return}d=v[a>>2];c=Ba[v[v[c>>2]>>2]](c,8)|0;v[a>>2]=c;v[c>>2]=d;t[a+7|0]=0;e=a+6|0;break b}e=a+6|0;if(!w[a+6|0]){d=d|d>>>1;d=d>>>2|d;d=d>>>4|d;d=H9(Ba[v[v[c>>2]>>2]](c,((d>>>8|d)<<2)+4|0)|0,v[a>>2],x[a+4>>1]<<2);if(w[a+6|0]){Ba[v[v[c>>2]+4>>2]](c,v[a>>2],0)}v[a>>2]=d;break b}if((Taa(d)|0)!=1){break a}if(Ba[v[v[c>>2]+8>>2]](c,d,d<<1)|0){break a}f=H9(Ba[v[v[c>>2]>>2]](c,d<<3)|0,v[a>>2],x[a+4>>1]<<2);if(w[a+6|0]){Ba[v[v[c>>2]+4>>2]](c,v[a>>2],d<<2)}v[a>>2]=f}t[e|0]=1}c=x[a+4>>1];u[a+4>>1]=c+1;v[v[a>>2]+(c<<2)>>2]=b}function uH(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=x[a>>1];e=x[b>>1]|c&1024;u[b>>1]=e;a:{if((c|0)==(e|0)){break a}u[a>>1]=e;a=v[a+60>>2];if(!a){break a}u[d+8>>1]=c;u[d>>1]=x[b>>1];c=x[d>>1];u[a+10>>1]=c;b=x[d+8>>1]&6;c=c&6;b:{if(!(b|!c)){c=v[a+60>>2];b=v[a- -64>>2];if(!((v[c+164>>2]?0:c)|(v[b+164>>2]?0:b))){if(c){AH(v[c+164>>2],v[v[a+48>>2]+1136>>2]);break b}AH(v[b+164>>2],v[v[a+48>>2]+1136>>2]);break b}BH(v[v[a+48>>2]+1136>>2],a);break b}c:{if(!b|c){break c}if(!(t[a+68|0]&1)){b=v[a+60>>2];d:{if(b){b=v[b+164>>2];if(b){break d}}b=v[a- -64>>2];if(!b){break c}b=v[b+164>>2];if(!b){break c}}HH(v[v[a+48>>2]+1136>>2],b,0);break b}CH(v[v[a+48>>2]+1136>>2],a)}}}xa=d+16|0}function cz(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=v[37696];d=c+12|0;c=(i=d,j=(b<<5)+131|0,k=Ba[v[v[c>>2]+20>>2]](c)|0?45645:63804,l=16608,m=553,h=v[v[d>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0);if(!c){break a}f=c+131&-128;v[f-4>>2]=f-c}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<5)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-v[d-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=f}function Jp(a){a=a|0;var b=0,c=0;v[a>>2]=125980;b=v[a+60>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+52>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+48>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+40>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+36>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+28>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+24>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+16>>2];if(!b){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+4>>2];if(!b){break e}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function Jt(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=v[37393];a:{if(w[a+36|0]&2){f=v[a+40>>2];e=x[f+124>>1];f=(e|0)==1?f+120|0:v[v[a+32>>2]+4856>>2]+(v[f+120>>2]<<1)|0;break a}a=a+48|0;f=FR(a);g=v[a+68>>2];e=1;b:{if(g-7>>>0<4294967294){break b}e=x[a+120>>1];if((g|0)==5){break b}e=x[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){v[(a<<2)+b>>2]=v[v[h+40>>2]+(x[e+(a<<1)>>1]<<2)>>2];g=a|1;v[(g<<2)+b>>2]=v[v[h+40>>2]+(x[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}v[(a<<2)+b>>2]=v[v[h+40>>2]+(x[e+(a<<1)>>1]<<2)>>2]}return c|0}function JU(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=C(0),w=C(0);p=A[g+16>>3];k=p+ +z[h+8>>2];v=z[f+8>>2];c=C(c*C(.5));b=C(b+d);l=+C(C(C(D(v))*c)+b);u=k+l;j=p+l;u=j>3];m=q+ +z[h+4>>2];d=z[f+4>>2];j=+C(C(C(D(d))*c)+b);o=m+j;r=q+j;r=o>r?o:r;s=A[g>>3];n=s+ +z[h>>2];w=z[f>>2];o=+C(C(C(D(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!=C(0)){q=q-+C(d*e);i=q+j;r=i>r?i:r;s=s-+C(w*e);i=s+o;t=i>t?i:t;p=p-+C(v*e);i=p-l;k=i>3]=l;A[a+32>>3]=r;A[a+24>>3]=t;A[a+16>>3]=k;A[a+8>>3]=m;A[a>>3]=n}function w0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0);e=xa+-64|0;xa=e;n=v[c+36>>2];h=z[b+4>>2];j=C(h+h);g=z[b+8>>2];k=C(j*g);f=z[b>>2];i=C(f+f);m=z[b+12>>2];l=C(i*m);z[e+28>>2]=k-l;z[e+20>>2]=k+l;f=C(C(1)-C(f*i));k=C(h*j);z[e+32>>2]=f-k;o=f;f=C(g+g);l=C(g*f);z[e+16>>2]=o-l;g=C(i*g);j=C(j*m);z[e+24>>2]=g+j;h=C(i*h);i=C(f*m);z[e+12>>2]=h-i;z[e+8>>2]=g-j;z[e+4>>2]=h+i;z[e>>2]=C(C(1)-k)-l;z[e+36>>2]=z[b+16>>2];z[e+40>>2]=z[b+20>>2];z[e+44>>2]=z[b+24>>2];z[e+48>>2]=z[a+4>>2];z[e+52>>2]=z[a+8>>2];z[e+56>>2]=z[a+12>>2];a=Ba[v[(x[n+4>>1]<<2)+143704>>2]](e,n,d,c+4|0,0)|0;xa=e- -64|0;return a|0}function pr(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=v[a+8>>2];i=d&2147483647?d<<1:1;a:{if(!i){break a}c=i<<4;if(!c){break a}e=v[37696];d=e+12|0;e=(k=d,l=c,m=Ba[v[v[e>>2]+20>>2]](e)|0?27541:63804,n=16608,o=553,j=v[v[d>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}h=v[a+4>>2];g=(h<<4)+e|0;d=v[a>>2];if((h|0)>0){f=d;c=e;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];v[c+12>>2]=v[f+12>>2];f=f+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}}z[g>>2]=z[b>>2];z[g+4>>2]=z[b+4>>2];z[g+8>>2]=z[b+8>>2];v[g+12>>2]=v[b+12>>2];if(!(!d|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d);h=v[a+4>>2]}v[a+8>>2]=i;v[a>>2]=e;v[a+4>>2]=h+1}function S4(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=v[a+8>>2];i=d&2147483647?d<<1:1;a:{if(!i){break a}c=i<<4;if(!c){break a}e=v[37696];d=e+12|0;e=(k=d,l=c,m=Ba[v[v[e>>2]+20>>2]](e)|0?42681:63804,n=16608,o=553,j=v[v[d>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}h=v[a+4>>2];g=(h<<4)+e|0;d=v[a>>2];if((h|0)>0){f=d;c=e;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];z[c+12>>2]=z[f+12>>2];f=f+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}}z[g>>2]=z[b>>2];z[g+4>>2]=z[b+4>>2];z[g+8>>2]=z[b+8>>2];z[g+12>>2]=z[b+12>>2];if(!(!d|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d);h=v[a+4>>2]}v[a+8>>2]=i;v[a>>2]=e;v[a+4>>2]=h+1}function HH(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;f=xa-16|0;xa=f;d=zH(b);if(w[d+44|0]&4){v[f+4>>2]=d;Og(a+336|0,f+4|0);t[d+44|0]=w[d+44|0]&251}h=a+296|0;while(1){g=v[d>>2];b=v[g+28>>2];if(b){g=v[g+20>>2];while(1){b=b-1|0;e=v[g>>2];a:{if(w[e+20|0]!=4){break a}e=v[e+24>>2];if((e|0)==(c|0)|!(!v[(v[v[v[e+48>>2]+1004>>2]+168>>2]+(v[e+40>>2]<<5)|0)+12>>2]&(w[v[e+52>>2]]&6)!=0)|t[e+68|0]&1){break a}v[f+8>>2]=e;i=qh(h,f+8|0,f+15|0);if(!w[f+15|0]){v[i>>2]=v[f+8>>2]}t[e+68|0]=w[e+68|0]|1}g=g+4|0;if(b){continue}break}g=v[d>>2]}b=v[d+16>>2];v[g+164>>2]=0;if(v[d+20>>2]){JH(d)}v[a+284>>2]=v[a+284>>2]-1;v[d>>2]=v[a+292>>2];v[a+292>>2]=d;d=b;if(d){continue}break}xa=f+16|0}function HB(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;g=v[a+8>>2];if(g){j=v[a+4>>2];while(1){a=B(h,12)+j|0;k=v[a+4>>2];if(k){m=v[a>>2];e=0;while(1){c=B(l,28)+b|0;d=B(e,36)+m|0;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];a=0;i=0;n=c;f=v[d+24>>2];if(f){a:{while(1){c=B(a,12)+j|0;d=v[c+4>>2];c=v[c>>2];if(!(c>>>0>f>>>0|c+B(d,36)>>>0<=f>>>0)){a=(f-c|0)/36|0;break a}i=d+i|0;a=a+1|0;if((g|0)!=(a|0)){continue}break}a=-1}a=a+i<<1}else{a=v[d+32>>2]<<1&30|v[d+28>>2]<<5|1}v[n+24>>2]=a;l=l+1|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}h=h+1|0;if((g|0)!=(h|0)){continue}break}}}function Xk(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=v[a+28>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<2;if(!(w[a+16|0]|c>>>0>16)){t[a+16|0]=1;d=a;break a}if(!c){break a}d=v[37696];e=d+12|0;d=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?58409:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}e=v[a+24>>2];h=(e<<2)+d|0;if((e|0)>0){g=v[a+20>>2];c=d;while(1){v[c>>2]=v[g>>2];g=g+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[b>>2];b:{if(v[a+28>>2]<0){break b}b=v[a+20>>2];if((b|0)==(a|0)){t[a+16|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);e=v[a+24>>2]}v[a+28>>2]=f;v[a+20>>2]=d;v[a+24>>2]=e+1}function Ks(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=v[a+28>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<2;if(!(w[a+16|0]|c>>>0>16)){t[a+16|0]=1;d=a;break a}if(!c){break a}d=v[37696];e=d+12|0;d=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?58297:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}e=v[a+24>>2];h=(e<<2)+d|0;if((e|0)>0){g=v[a+20>>2];c=d;while(1){v[c>>2]=v[g>>2];g=g+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[b>>2];b:{if(v[a+28>>2]<0){break b}b=v[a+20>>2];if((b|0)==(a|0)){t[a+16|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);e=v[a+24>>2]}v[a+28>>2]=f;v[a+20>>2]=d;v[a+24>>2]=e+1}function Fj(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;e=xa-16|0;xa=e;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;f=v[a+4>>2];d=v[a+8>>2];g=f>>>24&15;h=a+v[((g<<2)+89188|0)+12>>2]|0;i=w[(f&1?d:h+8|0)|0];a:{if(c){b=b|i;b:{c:{switch((f>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}t[e|0]=b;PE(h,e);break a}if(!d){d=Pu(v[a>>2],g);v[a+8>>2]=d}t[d|0]=b;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1;break a}b=(b^-1)&i;d:{e:{switch((f>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break d}break;case 1:break d;default:break e}}t[e+8|0]=b;PE(h,e+8|0);break a}if(!d){d=Pu(v[a>>2],g);v[a+8>>2]=d}t[d|0]=b;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=e+16|0}function TV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);c=xa-16|0;xa=c;o=z[f+24>>2];p=z[f+20>>2];t=z[e+4>>2];q=z[f+16>>2];h=z[e+8>>2];j=z[f+8>>2];i=z[f+12>>2];k=z[f+4>>2];g=z[f>>2];AV(c,d);r=z[c+12>>2];l=C(g+g);m=C(i+i);s=C(h*C(C(j*l)-C(k*m)));n=z[c+8>>2];g=C(h*C(C(g*l)+C(C(i*m)+C(-1))));i=z[c>>2];j=C(h*C(C(j*m)+C(l*k)));h=z[c+4>>2];k=C(r+C(C(C(o+s)*n)+C(C(C(q+g)*i)+C(C(p+j)*h))));g=C(r+C(C(C(o-s)*n)+C(C(C(q-g)*i)+C(C(p-j)*h))));g=C((g>k?k:g)-t);d=g>C(0);if(!d){z[a+8>>2]=-n;z[a+4>>2]=-h;z[a>>2]=-i;z[b>>2]=g>2],h+40|0,h+16|0)){v[h+44>>2]=0;v[h+48>>2]=0;v[h+8>>2]=-1;a:{if(w[f|0]&2){if(z[h+40>>2]==C(0)){e=z[d>>2];i=z[d+4>>2];z[h+36>>2]=-z[d+8>>2];z[h+32>>2]=-i;z[h+28>>2]=-e;g=3;break a}j=z[b+20>>2];i=z[b+24>>2];e=C(z[h+16>>2]-z[b+16>>2]);z[h+28>>2]=e;i=C(z[h+24>>2]-i);z[h+36>>2]=i;j=C(z[h+20>>2]-j);z[h+32>>2]=j;g=3;k=C(K(C(C(i*i)+C(C(e*e)+C(j*j)))));if(!(k>C(0))){break a}l=i;i=C(C(1)/k);z[h+36>>2]=l*i;z[h+32>>2]=j*i;z[h+28>>2]=e*i;break a}v[h+28>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0;g=1}u[h+12>>1]=g;a=1}else{a=0}return a|0}function _W(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);a=xa-16|0;xa=a;AV(a,b);b=0;m=z[d+8>>2];j=z[a+8>>2];n=z[d>>2];k=z[a>>2];o=z[d+4>>2];l=z[a+4>>2];i=C(C(m*j)+C(C(n*k)+C(o*l)));a:{if(i>=C(0)|iC(-1.0000000116860974e-7)){break a}p=z[c+8>>2];q=z[c>>2];r=z[c+4>>2];i=C(C(-C(z[a+12>>2]+C(C(p*j)+C(C(q*k)+C(l*r)))))/i);z[h+24>>2]=p+C(m*i);z[h+20>>2]=r+C(o*i);z[h+16>>2]=q+C(n*i);if(i>2]=0;v[h+48>>2]=0;v[h+8>>2]=-1;z[h+40>>2]=i;z[h+28>>2]=k;u[h+12>>1]=3;z[h+36>>2]=j;z[h+32>>2]=l;b=1}xa=a+16|0;return b|0}function U7(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);f=xa+-64|0;xa=f;D5(f+32|0,f,b,c,d);if(e&1){Ba[v[v[a>>2]+8>>2]](a,f+32|0,f)}if(!(!(e&2)|!(w[b+116|0]&2))){g=z[f+32>>2];i=z[f+40>>2];h=C(z[f+24>>2]-z[f+56>>2]);h=C(h+h);k=g;g=C(z[f+16>>2]-z[f+48>>2]);g=C(g+g);j=C(z[f+20>>2]-z[f+52>>2]);j=C(j+j);l=z[f+36>>2];m=C(k*C(C(i*h)+C(C(k*g)+C(j*l))));k=g;g=z[f+44>>2];i=C(m+C(C(k*C(C(g*g)+C(-.5)))-C(g*C(C(l*h)-C(j*i)))));g=C(0);c=f+32|0;h=z[b+104>>2];g=z[b+92>>2]>C(0)|z[b+88>>2]>C(0)?g:z[b+96>>2];Ba[v[v[a>>2]+12>>2]](a,c,f,h,i>2];Ba[v[v[a>>2]+12>>2]](a,c,f,h,i>C(h-g))}xa=f- -64|0}function Ny(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=0,i=0;h=x[d+12>>1]|x[c+12>>1];v[a+8>>2]=h;if(!(h&1)){a:{b:{c:{d:{e:{h=w[c+14|0]>>>4|0;i=w[d+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=C(C(z[c+4>>2]+z[d+4>>2])*C(.5));e=C(C(z[c>>2]+z[d>>2])*C(.5));break a}f=z[c+4>>2];e=z[d+4>>2];f=e>f?f:e;e=z[c>>2];g=z[d>>2];e=e>2]*z[d+4>>2]);e=C(z[c>>2]*z[d>>2]);break a}f=z[c+4>>2];e=z[d+4>>2];f=e>2];g=z[d>>2];e=e>g?e:g}g=z[b>>2];e=C(e*z[b+4>>2]);e=e>C(0)?e:C(0);z[a+4>>2]=e;f=C(f*g);z[a>>2]=C(f-e)>=C(0)?f:e;return}v[a>>2]=0;v[a+4>>2]=0;v[a+8>>2]=h|2}function Cz(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(b,36);if(!d){break a}c=v[37696];f=c+12|0;f=(i=f,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?33421:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,36)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;v[c+32>>2]=v[d+32>>2];e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+36|0;c=c+36|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function sl(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=v[d+4>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[d>>2]+4785|0]){break b}}cF(d+12|0,b,c);break a}if(!(f&8388608)){e=v[d+8>>2];if(!e){e=Pu(v[d>>2],f>>>24&15);v[d+8>>2]=e}f=d+12|0;v[e+348>>2]=w[f+262|0];v[e+352>>2]=w[f+263|0];v[e+356>>2]=w[f+264|0];v[e+360>>2]=w[f+265|0];v[e+364>>2]=w[f+266|0];v[e+368>>2]=w[f+267|0]}e=v[d+8>>2];if(!e){e=Pu(v[d>>2],w[d+7|0]&15);v[d+8>>2]=e}v[((b<<2)+e|0)+348>>2]=c;Xu(v[d>>2],d);v[d+4>>2]=v[d+4>>2]|8388608}a=v[a+396>>2];a=Ba[v[v[a>>2]+248>>2]](a)|0;a=Ba[v[v[a>>2]+100>>2]](a)|0;v[a+104>>2]=v[a+104>>2]+1}function qX(a,b,c,d,e,f,g){var h=0,i=0;h=xa-16|0;xa=h;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;a:{if(w[h+11|0]!=78|w[h+10|0]!=88|w[h+9|0]!=83){break a}t[f|0]=(w[h+8|0]^-1)&1;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;if(w[h+11|0]!=(a&255)|w[h+10|0]!=(b&255)|(w[h+9|0]!=(c&255)|w[h+8|0]!=(d&255))){break a}a=w[f|0];Ba[v[v[g>>2]>>2]](g,h+12|0,4)|0;if(a){a=w[h+15|0];t[h+15|0]=w[h+12|0];t[h+12|0]=a;a=w[h+13|0];t[h+13|0]=w[h+14|0];t[h+14|0]=a}v[e>>2]=v[h+12>>2];i=1}xa=h+16|0;return i}function Ys(a){a=a|0;var b=0,c=0,d=0,e=C(0),f=0;c=v[a+28>>2];b=c+32|0;a=v[a+20>>2];f=xa-48|0;xa=f;e=z[c+6072>>2];if(e!=C(0)){z[b+1080>>2]=e;v[b+4528>>2]=1;v[b+4524>>2]=a;z[b+1084>>2]=e>C(0)?C(C(1)/e):C(0);if(a){Ba[v[v[a>>2]+16>>2]](a);v[b+4520>>2]=v[v[b+4524>>2]+16>>2]}bP(b);EH(v[b+1136>>2],v[b+976>>2]);a=b+4504|0;cP(b,a);c=f+8|0;d=v[v[b+976>>2]+1024>>2];Ba[v[v[d>>2]+84>>2]](c,d);FJ(v[b+2168>>2],c,(v[b+2360>>2]&8)>>>3|0);v[b+2356>>2]=v[b+2356>>2]&-7;c=b+4564|0;v[c>>2]=a;v[b+4568>>2]=1;Ba[v[v[b+4504>>2]+16>>2]](a);d=b+4560|0;v[d>>2]=v[v[c>>2]+16>>2];c=v[b+4520>>2];Ba[v[v[c>>2]+72>>2]](c,a);a=v[d>>2];Ba[v[v[a>>2]+72>>2]](a,b+4544|0)}xa=f+48|0}function IF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=xa-16|0;xa=c;v[c+8>>2]=b;f=b>>>7|0;if((f|0)!=33554431){b=v[a+16>>2]+B(f,24)|0;g=b;b=w[b+4|0];a:{if(!(b&32)){e=b;break a}e=b&223;t[g+4|0]=e;d=v[a+28>>2];h=v[a+324>>2];i=v[(h+(v[a+328>>2]<<2)|0)-4>>2];v[d+(i>>>5&134217724)>>2]=v[(f<<2)+d>>2];v[(v[(v[c+8>>2]>>>5&134217724)+d>>2]<<2)+h>>2]=i;v[a+328>>2]=v[a+328>>2]-1;v[(v[c+8>>2]>>>5&134217724)+d>>2]=33554431;if(!(b&4)){break a}v[(v[c+8>>2]>>>5&134217724)+d>>2]=v[a+140>>2];b=v[a+140>>2];if(b>>>0>=(v[a+144>>2]&2147483647)>>>0){YF(a+136|0,c+8|0);e=w[g+4|0];break a}v[v[a+136>>2]+(b<<2)>>2]=v[c+8>>2];v[a+140>>2]=v[a+140>>2]+1}t[g+4|0]=e|1}xa=c+16|0}function s4(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<2;if(!c){break a}d=v[37696];e=d+12|0;d=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?43907:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=(c<<2)+d|0;e=v[a>>2];c=d;while(1){g=x[e>>1]|x[e+2>>1]<<16;u[c>>1]=g;u[c+2>>1]=g>>>16;e=e+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}c=v[a+4>>2]}c=(c<<2)+d|0;b=x[b>>1]|x[b+2>>1]<<16;u[c>>1]=b;u[c+2>>1]=b>>>16;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=d;v[a+4>>2]=v[a+4>>2]+1}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;a:{if(!b){break a}c=v[37696];d=c+12|0;c=(h=d,i=(b<<5)+131|0,j=Ba[v[v[c>>2]+20>>2]](c)|0?25359:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0);if(!c){break a}e=c+131&-128;v[e-4>>2]=e-c}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<5)+e|0;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];d=d+32|0;c=c+32|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-v[d-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=e}function fD(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((v[a+1036>>2]&2147483647)>>>0>>0){a:{if(!b){break a}c=b<<2;if(!(w[a+1024|0]|c>>>0>1024)){t[a+1024|0]=1;e=a;break a}if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?60917:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a+1028>>2];c=v[a+1032>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a+1028>>2]}b:{if(v[a+1036>>2]<0){break b}if((a|0)==(d|0)){t[a+1024|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+1036>>2]=b;v[a+1028>>2]=e}v[a+1032>>2]=b}function ND(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((v[a+1036>>2]&2147483647)>>>0>>0){a:{if(!b){break a}c=b<<2;if(!(w[a+1024|0]|c>>>0>1024)){t[a+1024|0]=1;e=a;break a}if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?60767:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a+1028>>2];c=v[a+1032>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a+1028>>2]}b:{if(v[a+1036>>2]<0){break b}if((a|0)==(d|0)){t[a+1024|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+1036>>2]=b;v[a+1028>>2]=e}v[a+1032>>2]=b}function BY(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((v[a+1036>>2]&2147483647)>>>0>>0){a:{if(!b){break a}c=b<<2;if(!(w[a+1024|0]|c>>>0>1024)){t[a+1024|0]=1;e=a;break a}if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?61355:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a+1028>>2];c=v[a+1032>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a+1028>>2]}b:{if(v[a+1036>>2]<0){break b}if((a|0)==(d|0)){t[a+1024|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+1036>>2]=b;v[a+1028>>2]=e}v[a+1032>>2]=b}function DP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=v[v[a+2368>>2]+36>>2];g=v[a+1196>>2];h=a+1068|0;d=v[a+2168>>2];j=v[d+4>>2];d=v[d+8>>2];a:{b:{if(d>>>0>(v[a+1076>>2]&2147483647)>>>0){EP(h,d);f=a+1072|0;v[f>>2]=0;break b}f=a+1072|0;v[f>>2]=0;if(!d){break a}}k=(b|0)==(g|0)?1:17;b=0;while(1){g=b+1|0;i=v[(b<<2)+j>>2];b=v[i+16>>2];if(!(w[b+10|0]&2)){c=v[a+1072>>2];e=v[a+1076>>2]&2147483647;if(c>>>0>=e>>>0){EP(h,e?e<<1:1);c=v[f>>2]}v[a+1072>>2]=c+1;c=v[a+1068>>2]+B(c,24)|0;u[c+14>>1]=0;kP(a,c,i,b,k);u[b+4>>1]=x[b+6>>1];c=b;e=x[b+10>>1]&31;b=x[b+8>>1];u[c+10>>1]=e|(b>>>4|0)+((b&15)!=0)<<5}b=g;if((d|0)!=(b|0)){continue}break}}return h}function ix(a,b,c,d){var e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0;e=xa-32|0;xa=e;f=z[d+20>>2];g=z[d+24>>2];h=v[b+332>>2];i=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];l=z[d+16>>2];d=(a<<5)+c|0;v[d+28>>2]=0;z[d+16>>2]=-l;v[d+12>>2]=0;z[d+8>>2]=-k;z[d+4>>2]=-j;z[d>>2]=-i;z[d+24>>2]=-g;z[d+20>>2]=-f;if(a){while(1){d=v[b+284>>2]+B(a,96)|0;m=(v[b+340>>2]+B(a,160)|0)+120|0;n=v[b+272>>2]+B(a,76)|0;a=a<<5;cx(e,d,m,n,a+c|0);a=v[(a+h|0)+24>>2];d=(a<<5)+c|0;z[d>>2]=z[e>>2];z[d+4>>2]=z[e+4>>2];f=z[e+8>>2];v[d+12>>2]=0;z[d+8>>2]=f;z[d+16>>2]=z[e+16>>2];z[d+20>>2]=z[e+20>>2];f=z[e+24>>2];v[d+28>>2]=0;z[d+24>>2]=f;if(a){continue}break}}xa=e+32|0}function Qk(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=C(0),m=C(0);b=b- -64|0;a=v[a+24>>2];if(a){h=xa+-64|0;xa=h;j=v[b>>2];b=-2147483648;i=v[a+28>>2];a:{if(!i){break a}k=v[a+24>>2];a=0;while(1){if(v[(a<<2)+k>>2]==(j|0)){b=a;break a}a=a+1|0;if((i|0)!=(a|0)){continue}break}}l=z[f>>2];a=v[g>>2];j=v[g+4>>2];i=v[f+8>>2];f=v[f+4>>2];m=z[g+8>>2];v[h+28>>2]=0;z[h+24>>2]=m;v[h+4>>2]=f;v[h+8>>2]=i;v[h+12>>2]=0;v[h+16>>2]=a;v[h+20>>2]=j;z[h>>2]=l;uw(e,b,h,h+32|0);a=v[h+32>>2];b=v[h+36>>2];z[c+8>>2]=z[h+40>>2];v[c>>2]=a;v[c+4>>2]=b;a=v[h+48>>2];b=v[h+52>>2];z[d+8>>2]=z[h+56>>2];v[d>>2]=a;v[d+4>>2]=b;xa=h- -64|0}}function jS(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+4>>2];v[b+36>>2]=c;v[d+12>>2]=b;a:{if(c>>>0>=(v[a+8>>2]&2147483647)>>>0){kS(a,d+12|0);break a}v[v[a>>2]+(c<<2)>>2]=b;v[a+4>>2]=c+1}v[d+12>>2]=-1;c=v[a+16>>2];b:{if(c>>>0>=(v[a+20>>2]&2147483647)>>>0){on(a+12|0,d+12|0);break b}v[v[a+12>>2]+(c<<2)>>2]=-1;v[a+16>>2]=v[a+16>>2]+1}c=v[b+8>>2]&2147483647;v[d+12>>2]=c;e=v[a+28>>2];c:{if(e>>>0>=(v[a+32>>2]&2147483647)>>>0){on(a+24|0,d+12|0);break c}v[v[a+24>>2]+(e<<2)>>2]=c;v[a+28>>2]=v[a+28>>2]+1}v[d+12>>2]=b;c=v[a+40>>2];d:{if(c>>>0>=(v[a+44>>2]&2147483647)>>>0){kS(a+36|0,d+12|0);break d}v[v[a+36>>2]+(c<<2)>>2]=b;v[a+40>>2]=c+1}xa=d+16|0}function XQ(a){a=a|0;var b=0,c=0,d=0,e=0;b=v[a+28>>2];a=v[a+20>>2];v[b+3500>>2]=a;v[b+3504>>2]=1;if(a){Ba[v[v[a>>2]+16>>2]](a);v[b+3496>>2]=v[v[b+3500>>2]+16>>2]}c=b+3540|0;d=b+3480|0;v[c>>2]=d;v[b+3544>>2]=1;Ba[v[v[b+3480>>2]+16>>2]](d);c=v[v[c>>2]+16>>2];v[b+3536>>2]=c;Ba[v[v[c>>2]+72>>2]](c,b+3520|0);v[b+3580>>2]=a;v[b+3584>>2]=1;c=b+3560|0;a:{if(!a){a=v[b+3576>>2];break a}Ba[v[v[a>>2]+16>>2]](a);a=v[v[b+3580>>2]+16>>2];v[b+3576>>2]=a}Ba[v[v[a>>2]+72>>2]](a,c);c=v[b+980>>2];a=v[c+332>>2];if(a){c=v[c+328>>2];while(1){a=a-1|0;e=v[c+8>>2];if(!(!e|w[e+24|0])){LR(e)}c=c+12|0;if(a){continue}break}}a=v[b+3496>>2];Ba[v[v[a>>2]+72>>2]](a,d)}function rX(a,b,c,d,e,f,g){var h=0,i=0;h=xa-16|0;xa=h;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;a:{if(w[h+11|0]!=73|w[h+10|0]!=67|w[h+9|0]!=69){break a}t[f|0]=(w[h+8|0]^-1)&1;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;if(t[h+11|0]!=(a|0)|t[h+10|0]!=(b|0)|(t[h+9|0]!=(c|0)|t[h+8|0]!=(d|0))){break a}a=w[f|0];Ba[v[v[g>>2]>>2]](g,h+12|0,4)|0;if(a){a=w[h+15|0];t[h+15|0]=w[h+12|0];t[h+12|0]=a;a=w[h+13|0];t[h+13|0]=w[h+14|0];t[h+14|0]=a}v[e>>2]=v[h+12>>2];i=1}xa=h+16|0;return i}function gC(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{if(!e){break a}b:{while(1){g=v[a>>2];if((g|0)==v[a+4>>2]){j=g<<1;if(!eC(a,j>>>0>64?j:64)){break b}g=v[a>>2]}v[a>>2]=g+1;j=g;f=v[a+24>>2];if((f|0)!=-1){v[a+24>>2]=v[v[a+16>>2]+(f<<2)>>2];j=f}f=v[a+8>>2]+B(g,24)|0;i=B(h,24)+c|0;z[f>>2]=z[i>>2];z[f+4>>2]=z[i+4>>2];z[f+8>>2]=z[i+8>>2];z[f+12>>2]=z[i+12>>2];z[f+16>>2]=z[i+16>>2];z[f+20>>2]=z[i+20>>2];i=(h<<3)+d|0;k=v[i+4>>2];f=v[a+12>>2]+(g<<3)|0;v[f>>2]=v[i>>2];v[f+4>>2]=k;v[v[a+20>>2]+(g<<2)>>2]=j;v[v[a+16>>2]+(j<<2)>>2]=g;v[(h<<2)+b>>2]=j;h=h+1|0;if((h|0)!=(e|0)){continue}break}h=e;break a}v[(h<<2)+b>>2]=-1}return e>>>0>h>>>0?h:e}function Px(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0;j=v[a+448>>2];if(j>>>0>=2){k=v[a+456>>2];l=v[a+444>>2];e=1;while(1){f=(B(e,24)+c|0)-24|0;g=(v[(B(e,80)+k|0)+72>>2]<<2)+b|0;h=v[((e<<5)+l|0)+20>>2];a:{if(!w[h+258|0]){d=C(0);a=0;break a}d=z[g>>2];a=1}z[f>>2]=d;if(w[h+259|0]){i=z[(a<<2)+g>>2];a=a+1|0}z[f+4>>2]=i;i=C(0);b:{if(!w[h+260|0]){d=C(0);break b}d=z[(a<<2)+g>>2];a=a+1|0}z[f+8>>2]=d;if(w[h+261|0]){i=z[(a<<2)+g>>2];a=a+1|0}z[f+12>>2]=i;i=C(0);c:{if(!w[h+262|0]){d=C(0);break c}d=z[(a<<2)+g>>2];a=a+1|0}z[f+16>>2]=d;z[f+20>>2]=w[h+263|0]?z[(a<<2)+g>>2]:C(0);e=e+1|0;if((j|0)!=(e|0)){continue}break}}}function M5(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=0;if(e){g=z[b+280>>2]>C(0)?C(0):z[b+276>>2]>C(0)?C(0):z[b+284>>2];j=C(z[b+292>>2]-g);h=C(B9(z[d+4>>2],C(z[d+12>>2]+C(1)))*C(4));k=j>2]+g)}a:{if(!f){g=z[b+300>>2];h=z[b+296>>2];d=0;break a}g=z[b+300>>2];i=z[b+280>>2]>C(0)?C(0):z[b+276>>2]>C(0)?C(0):z[b+284>>2];h=C(B9(z[d+8>>2],C(z[d+12>>2]+C(1)))*C(4));d=C(g-i)>2];d=d|j>2];d=k?-65536:d?-65536:-8355712;C6(a,c,i,i,h,g,d);g=z[b+292>>2];C6(a,c,g,g,z[b+296>>2],z[b+300>>2],d);g=z[b+296>>2];C6(a,c,z[b+288>>2],z[b+292>>2],g,g,d);g=z[b+300>>2];C6(a,c,z[b+288>>2],z[b+292>>2],g,g,d)}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=C(0),h=C(0),i=C(0),j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0;if(e){k=v[a+7672>>2];q=v[a+7680>>2];while(1){l=j<<2;f=B(v[l+c>>2],24)+d|0;m=z[f+4>>2];h=z[f+16>>2];n=z[f+8>>2];i=z[f+20>>2];g=z[f+12>>2];o=z[f>>2];p=C(C(g-o)*C(.004999999888241291));f=B(v[(v[b+l>>2]<<2)+q>>2],24)+k|0;z[f+12>>2]=g+p;z[f>>2]=o-p;g=i;i=C(C(i-n)*C(.004999999888241291));z[f+20>>2]=g+i;g=h;h=C(C(h-m)*C(.004999999888241291));z[f+16>>2]=g+h;z[f+8>>2]=n-i;z[f+4>>2]=m-h;j=j+1|0;if((j|0)!=(e|0)){continue}break}t[a+7648|0]=1;v[a+32>>2]=0;v[a+24>>2]=k;v[a+16>>2]=v[a+7664>>2];v[a+28>>2]=v[a+7676>>2]}}function IG(a,b,c,d){var e=0;e=v[a>>2];if(e){iH(e)}e=v[a+176>>2];a:{b:{if(e){if(w[e+31|0]){break b}break a}e=v[b+288>>2];if(!e){FG(b);e=v[b+288>>2]}v[b+288>>2]=v[e>>2];v[b+280>>2]=v[b+280>>2]+1}v[e>>2]=0;v[e+4>>2]=0;v[e+56>>2]=0;v[e+60>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+40>>2]=0;v[e+44>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[a+176>>2]=e}t[e+12|0]=w[e+12|0]|4;if(c){z[e+32>>2]=z[c>>2]+z[e+32>>2];z[e+36>>2]=z[c+4>>2]+z[e+36>>2];z[e+40>>2]=z[c+8>>2]+z[e+40>>2]}if(d){z[e+48>>2]=z[d>>2]+z[e+48>>2];z[e+52>>2]=z[d+4>>2]+z[e+52>>2];z[e+56>>2]=z[d+8>>2]+z[e+56>>2]}}function pv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);l=z[b+4>>2];o=C(z[a+4>>2]+l);i=C(z[e>>2]+o);m=C(i*i);p=z[d+24>>2];i=C(z[c+24>>2]-p);q=z[d+16>>2];n=C(z[c+16>>2]-q);r=z[d+20>>2];k=C(z[c+20>>2]-r);j=C(C(i*i)+C(C(n*n)+C(k*k)));c=m>j;if(c){a=v[g+4096>>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;v[a+52>>2]=-1;j=C(K(j));z[a+12>>2]=j-o;v[a+28>>2]=0;m=i;i=C(C(1)/j);b=j<=C(9999999747378752e-21);j=b?C(0):C(m*i);z[a+8>>2]=j;k=b?C(0):C(k*i);z[a+4>>2]=k;i=b?C(1):C(n*i);z[a>>2]=i;z[a+24>>2]=p+C(l*j);z[a+20>>2]=r+C(l*k);z[a+16>>2]=q+C(l*i)}return c|0}function k3(a){var b=0,c=0,d=0,e=0,f=0,g=0;d=v[a+4>>2];if(d){e=d-4|0;b=v[e>>2];a:{if(!b){break a}c=B(b,36);b=c+d|0;f=c-36|0;g=((f>>>0)/36|0)+1&3;if(g){c=0;while(1){b=b-36|0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}if(f>>>0<108){break a}while(1){c=b-36|0;v[c+32>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;c=b-72|0;v[c+32>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;c=b-108|0;v[c+32>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;b=b-144|0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;if((b|0)!=(d|0)){continue}break}}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e);v[a+4>>2]=0}b=v[a>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a>>2]=0}function VF(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((v[a+8>>2]&2147483647)>>>0>>0){a:{if(!b){break a}f=b<<2;if(!f){break a}d=v[37696];e=d+12|0;d=(i=e,j=f,k=Ba[v[v[d>>2]+20>>2]](d)|0?60245:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}g=v[a>>2];e=v[a+4>>2];if((e|0)>0){f=(e<<2)+d|0;e=d;while(1){v[e>>2]=v[g>>2];g=g+4|0;e=e+4|0;if(f>>>0>e>>>0){continue}break}g=v[a>>2]}if(!(!g|v[a+8>>2]<0)){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,g)}v[a+8>>2]=b;v[a>>2]=d}f=v[a+4>>2];if((f|0)<(b|0)){d=v[a>>2];e=d+(b<<2)|0;d=d+(f<<2)|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(e>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function JR(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=139148;b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;c=v[v[a+28>>2]+4>>2];c=v[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+100>>2];v[c+148>>2]=v[c+148>>2]-1;if(b){b=v[b+100>>2];v[b+148>>2]=v[b+148>>2]-1}b=v[a+56>>2];if(b){c=v[v[a+4>>2]+40>>2];d=v[v[c+976>>2]+1024>>2];Ba[v[v[d>>2]+36>>2]](d,b);vK(v[c+976>>2],v[a+56>>2]);v[a+56>>2]=0}c=v[a+60>>2];if((c|0)!=-1){b=v[v[a+4>>2]+40>>2];eG(v[b+1e3>>2],c);v[a+60>>2]=-1;ZO(b,a+4|0);iJ(v[b+2168>>2],a)}b=a+4|0;VE(v[a+4>>2],b);VE(v[a+8>>2],b);if(v[a+52>>2]!=-1){b=v[v[v[a+4>>2]+40>>2]+2168>>2];if(w[a+46|0]&128){AJ(b,a);return a|0}yJ(b,a)}return a|0}function uS(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(b,36);if(!c){break a}e=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?42905:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,36)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];d=d+36|0;c=c+36|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}function s0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);f=xa-16|0;xa=f;k=z[d+8>>2];n=z[e+8>>2];h=z[c+8>>2];i=z[c>>2];l=C(i-z[d>>2]);j=z[c+4>>2];m=C(j-z[e+4>>2]);i=C(i-z[e>>2]);j=C(j-z[d+4>>2]);z[f+8>>2]=C(l*m)-C(i*j);k=C(h-k);h=C(h-n);z[f+4>>2]=C(k*i)-C(h*l);z[f>>2]=C(j*h)-C(m*k);g=1;a:{if(!F$(f,c,d,e,a+20|0,a+48|0)){break a}c=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];g=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;g=1;break a}d=v[a+16>>2];if(d>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=c;g=1;break a}v[a+16>>2]=d+1;g=1}xa=f+16|0;return g|0}function Wf(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){v[37699]=48;b=0;break a}c=b>>>0<11?16:b+11&-8;a=haa(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=v[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=v[b>>2];v[a+4>>2]=e;v[a>>2]=b+d;break b}v[a+4>>2]=e|v[a+4>>2]&1|2;e=a+e|0;v[e+4>>2]=v[e+4>>2]|1;v[f>>2]=d|v[f>>2]&1|2;e=b+d|0;v[e+4>>2]=v[e+4>>2]|1;jaa(b,d)}b=v[a+4>>2];c:{if(!(b&3)){break c}d=b&-8;if(d>>>0<=c+16>>>0){break c}v[a+4>>2]=c|b&1|2;b=a+c|0;c=d-c|0;v[b+4>>2]=c|3;d=a+d|0;v[d+4>>2]=v[d+4>>2]|1;jaa(b,c)}b=a+8|0}return b|0}function Uh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a:{b:{d=v[a+124>>2];if(!d){break b}e=v[a+120>>2];while(1){if(v[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;v[a+124>>2]=d;e=c<<2;c=v[a+120>>2];v[e+c>>2]=v[c+(d<<2)>>2]}c=v[a+24>>2];d=v[(Ba[v[v[b>>2]+104>>2]](b)|0)+88>>2];a=0;c:{d:{b=v[c+56>>2];if(!b){break d}e=v[c+52>>2];while(1){if((d|0)==v[(e+B(a,12)|0)+8>>2]){break d}a=a+1|0;if((b|0)!=(a|0)){continue}break}break c}if((a|0)==(b|0)){break c}b=b-1|0;v[c+56>>2]=b;c=v[c+52>>2];a=c+B(a,12)|0;b=c+B(b,12)|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;v[a+8>>2]=v[b+8>>2]}}function Qg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(v[a+36>>2]==v[a+28>>2]){a9(v[37696],2,11066,146,24043,0);return 0}if(Ba[v[v[b>>2]+72>>2]](b)|0){a9(v[37696],2,11066,152,21050,0);return 0}if(Ba[v[v[b>>2]+28>>2]](b)|0){a9(v[37696],2,11066,158,22212,0);return 0}if((Ba[v[v[b>>2]+24>>2]](b)|0)==2){a9(v[37696],2,11066,164,24243,0);return 0}nh(v[(x[b+4>>1]<<2)+86240>>2]+b|0,a);d=v[a+36>>2];v[a+36>>2]=d+1;v[v[a+40>>2]+(d<<2)>>2]=b;a:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}d=v[a+8>>2];if(!d){break a}d=d-16|0;if(!d){break a}Pg(a,b,d,c);return 1}if(c){v[c+12>>2]=v[c+12>>2]+1;kh(v[(x[b+4>>1]<<2)+86240>>2]+b|0,3,c)}return 1}function QV(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0;a:{if(c){while(1){n=(o<<6)+d|0;j=z[n+12>>2];l=C(j*z[n+8>>2]);k=k>l?k:l;m=C(j*z[n+4>>2]);f=f>m?f:m;j=C(j*z[n>>2]);g=g>j?g:j;h=hC(0)){e=C(C(1)/m);k=C(h*e);l=C(g*e);e=C(f*e)}z[a+8>>2]=-k;z[a+4>>2]=-e;z[a>>2]=-l;z[b>>2]=m}c=1}return c}function A9(a){var b=0,c=0,d=C(0),e=0;e=(p(a),j(2));c=e&2147483647;if(c>>>0>=1065353216){if((c|0)==1065353216){return C(+a*1.5707963267948966+752316384526264e-51)}return C(C(0)/C(a-a))}a:{if(c>>>0<=1056964607){if(c-8388608>>>0<956301312){break a}d=C(a*a);return C(C(a*C(C(C(C(d*C(C(d*C(-.008656363002955914))+C(-.04274342209100723)))+C(.16666586697101593))*d)/C(C(d*C(-.7066296339035034))+C(1))))+a)}a=C(C(C(1)-C(D(a)))*C(.5));b=K(+a);b=b+b*+C(C(C(C(a*C(C(a*C(-.008656363002955914))+C(-.04274342209100723)))+C(.16666586697101593))*a)/C(C(a*C(-.7066296339035034))+C(1)));a=C(1.5707963267948966-(b+b));a=(e|0)<0?C(-a):a}return a}function mO(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?35995:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function lK(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?26349:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function kO(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?36381:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function k4(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?32081:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function jO(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?36185:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function iO(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?35805:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function aL(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?31807:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function XL(a,b,c,d,e){var f=0,g=0,h=0,i=0;a:{if(!v[d+8>>2]){break a}f=a>>>0>b>>>0?a:b;a=a>>>0>>0?a:b;b=f<<16|a;b=(b<<15^-1)+b|0;b=B(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;b=v[v[d>>2]+((v[d+36>>2]&(b>>16^b))<<2)>>2];if((b|0)==1073741823){break a}g=v[d+4>>2];i=v[d+20>>2];while(1){h=(b<<3)+i|0;if(!((a|0)==v[h>>2]&(f|0)==v[h+4>>2])){b=v[g+(b<<2)>>2];if((b|0)!=1073741823){continue}break a}break}a=v[d+24>>2];f=b+a|0;g=w[f|0];if(!(g&1)){t[f|0]=g|1;a=h-v[d+20>>2]|0;f=a>>>3|0;b=v[e+4>>2];if((b|0)==v[e+8>>2]){VL(e,c);b=v[e+4>>2];a=h-v[d+20>>2]|0}v[e+4>>2]=b+1;v[v[e>>2]+(b<<2)>>2]=f;b=a>>3;a=v[d+24>>2]}a=a+b|0;t[a|0]=w[a|0]|2}}function Nu(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?29133:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function nG(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=v[37696];f=c+12|0;f=(i=f,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?39543:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<5)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function RG(a){var b=0,c=0,d=0,e=0;d=xa-16|0;xa=d;v[a+104>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+88>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;c=v[a>>2];if(c){hH(c);iH(c)}b=v[a+176>>2];if(!(!b|w[b+31|0])){v[b+48>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+56>>2]=0;v[b+40>>2]=0;v[b+24>>2]=0}v[a+156>>2]=0;a=v[a>>2];if(a){b=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(e|0)==2,d+8|0);kH(a,C(0),0)}if(c){if(y[c+152>>2]<=4294967293){UO(v[c+40>>2],c);aH(c)}dG(v[v[c+40>>2]+1e3>>2],v[c+144>>2]);u[c+148>>1]=x[c+148>>1]&63999}xa=d+16|0}function EG(a,b,c,d){var e=0;e=v[a>>2];if(e){hH(e)}e=v[a+176>>2];a:{b:{if(e){if(w[e+31|0]){break b}break a}e=v[b+288>>2];if(!e){FG(b);e=v[b+288>>2]}v[b+288>>2]=v[e>>2];v[b+280>>2]=v[b+280>>2]+1}v[e>>2]=0;v[e+4>>2]=0;v[e+56>>2]=0;v[e+60>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+40>>2]=0;v[e+44>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[a+176>>2]=e}t[e+12|0]=w[e+12|0]|2;if(c){z[e>>2]=z[c>>2]+z[e>>2];z[e+4>>2]=z[c+4>>2]+z[e+4>>2];z[e+8>>2]=z[c+8>>2]+z[e+8>>2]}if(d){z[e+16>>2]=z[d>>2]+z[e+16>>2];z[e+20>>2]=z[d+4>>2]+z[e+20>>2];z[e+24>>2]=z[d+8>>2]+z[e+24>>2]}}function qG(a){var b=0,c=0,d=0,e=C(0);c=v[a+44>>2];if(v[c+176>>2]){d=v[c+176>>2];b=w[d+31|0]!=1?d:0}a:{if(z[c+80>>2]!=C(0)|z[c+84>>2]!=C(0)|(z[c+88>>2]!=C(0)|z[c+96>>2]!=C(0))){break a}if(z[c+100>>2]!=C(0)){break a}d=w[a+150|0];a=d&2;e=z[c+104>>2];c=!a&e==C(0);if(!(!a|e!=C(0))){if(!b){return 1}if(z[b>>2]!=C(0)|z[b+4>>2]!=C(0)|(z[b+8>>2]!=C(0)|z[b+16>>2]!=C(0))){break a}if(z[b+20>>2]!=C(0)){break a}c=z[b+24>>2]==C(0)}a=d&4;d=!a&c;b:{if(!a|!c){break b}if(!b){return 1}if(z[b+32>>2]!=C(0)|z[b+36>>2]!=C(0)|(z[b+40>>2]!=C(0)|z[b+48>>2]!=C(0))){break a}d=0;if(z[b+52>>2]!=C(0)){break b}d=z[b+56>>2]==C(0)}return d}return 0}function I3(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=v[a+8>>2];i=c&2147483647?c<<1:1;a:{if(!i){break a}d=B(i,12);if(!d){break a}e=v[37696];c=e+12|0;e=(k=c,l=d,m=Ba[v[v[e>>2]+20>>2]](e)|0?54445:63804,n=16608,o=553,j=v[v[c>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}g=v[a+4>>2];h=B(g,12)+e|0;c=v[a>>2];if((g|0)>0){f=c;d=e;while(1){z[d>>2]=z[f>>2];z[d+4>>2]=z[f+4>>2];z[d+8>>2]=z[f+8>>2];f=f+12|0;d=d+12|0;if(h>>>0>d>>>0){continue}break}}z[h>>2]=z[b>>2];z[h+4>>2]=z[b+4>>2];z[h+8>>2]=z[b+8>>2];if(!(!c|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);g=v[a+4>>2]}v[a+8>>2]=i;v[a>>2]=e;v[a+4>>2]=g+1}function Lg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a>>2]=118148;c=v[37389];a:{if(!v[c+516>>2]){break a}b=(a<<15^-1)+a|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=v[c+492>>2]+((v[c+500>>2]-1&(b>>>16^b))<<2)|0;b=v[d>>2];if((b|0)==-1){break a}f=v[c+488>>2];e=v[c+484>>2];if(v[e+(b<<2)>>2]!=(a|0)){while(1){d=(b<<2)+f|0;b=v[d>>2];if((b|0)==-1){break a}if(v[(b<<2)+e>>2]!=(a|0)){continue}break}}e=d;d=(b<<2)+f|0;v[e>>2]=v[d>>2];v[c+516>>2]=v[c+516>>2]-1;v[c+512>>2]=v[c+512>>2]+1;v[d>>2]=v[c+508>>2];v[c+508>>2]=b}b:{if(!(t[a+6|0]&1)){break b}c=v[a+40>>2];if(!c){break b}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}return a|0}function Io(a){a=a|0;var b=0,c=0,d=0;a:{a=a+48|0;b=v[a>>2];if(b){b:{c:{if(!w[b+4785|0]){vu(b,a,1);if(!w[v[a>>2]+4785|0]){break c}}Wk(a);break b}v[a+236>>2]=0;v[a+240>>2]=0;v[a+260>>2]=0;v[a+264>>2]=1;v[a+244>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;v[a+256>>2]=0;RG(a+16|0)}if(!v[a+192>>2]|(v[a+4>>2]&-1073741824)!=1073741824){break a}b=v[a+192>>2];c=a+16|0;d=w[v[c+176>>2]+31|0]==1;d:{if(d){if(b){break d}break a}if(!v[a+192>>2]|(!b|w[v[c+176>>2]+31|0]==1)){break a}}SG(c,v[v[a>>2]+2428>>2],d);break a}v[a+236>>2]=0;v[a+240>>2]=0;v[a+260>>2]=0;v[a+264>>2]=1;v[a+244>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;v[a+256>>2]=0;RG(a+16|0)}}function TP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=v[a+268>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<2;if(!(w[a+256|0]|c>>>0>256)){t[a+256|0]=1;e=a;break a}d=v[37696]+12|0;c=Ba[v[v[d>>2]+8>>2]](d,c+67|0,24422,16608,553)|0;if(!c){break a}e=c+67&-64;v[e-4>>2]=e-c}d=v[a+264>>2];h=(d<<2)+e|0;if((d|0)>0){g=v[a+260>>2];c=e;while(1){v[c>>2]=v[g>>2];g=g+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[b>>2];b:{if(v[a+268>>2]<0){break b}b=v[a+260>>2];if((b|0)==(a|0)){t[a+256|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b-v[b-4>>2]|0);d=v[a+264>>2]}v[a+268>>2]=f;v[a+260>>2]=e;v[a+264>>2]=d+1}function r6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+76>>2];Ba[v[v[c>>2]+28>>2]](c,d+8|0,d+12|0);a:{b:{if(!v[d+8>>2]){z[a+36>>2]=z[a+36>>2]-z[b>>2];z[a+40>>2]=z[a+40>>2]-z[b+4>>2];z[a+44>>2]=z[a+44>>2]-z[b+8>>2];c=v[a+80>>2];z[c+32>>2]=z[c+32>>2]-z[b>>2];z[c+36>>2]=z[c+36>>2]-z[b+4>>2];e=b+8|0;b=c+40|0;break b}if(v[d+12>>2]){break a}c=a- -64|0;z[c>>2]=z[c>>2]-z[b>>2];z[a+68>>2]=z[a+68>>2]-z[b+4>>2];z[a+72>>2]=z[a+72>>2]-z[b+8>>2];c=v[a+80>>2];z[c+60>>2]=z[c+60>>2]-z[b>>2];e=c- -64|0;z[e>>2]=z[e>>2]-z[b+4>>2];e=b+8|0;b=c+68|0}z[b>>2]=z[b>>2]-z[e>>2];a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}xa=d+16|0}function RH(a,b){var c=0,d=0,e=0,f=0,g=0;e=xa-16|0;xa=e;v[e+12>>2]=b;f=b+32>>>5|0;a:{if(f>>>0<=(v[a+24>>2]&2147483647)>>>0){c=v[a+20>>2];break a}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,f<<2,24422,17999,438)|0;d=v[a+20>>2];b:{if(!d){break b}H9(c,d,v[a+24>>2]<<2);if(v[a+24>>2]<0){break b}d=v[a+20>>2];if(!d){break b}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,d)}d=v[a+24>>2];I9((d<<2)+c|0,0,f-d<<2);v[a+24>>2]=f;v[a+20>>2]=c}c=(b>>>3&536870908)+c|0;v[c>>2]=v[c>>2]|1<>2];c:{if(b>>>0>=(v[a+40>>2]&2147483647)>>>0){on(a+32|0,e+12|0);break c}v[v[a+32>>2]+(b<<2)>>2]=v[e+12>>2];v[a+36>>2]=v[a+36>>2]+1}xa=e+16|0}function C3(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=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?48959:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<5)+e|0;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];g=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=g;d=d+32|0;c=c+32|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function iZ(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);f=z[a+8>>2];g=z[a>>2];h=z[a+4>>2];i=C(C(z[b+8>>2]*f)+C(C(z[b>>2]*g)+C(z[b+4>>2]*h)));j=C(C(z[b+20>>2]*f)+C(C(z[b+12>>2]*g)+C(h*z[b+16>>2])));a=i>j;k=C((a?i:j)+c);l=C(C(z[d+44>>2]*f)+C(C(z[d+36>>2]*g)+C(h*z[d+40>>2])));f=C(C(C(D(C(C(z[d+32>>2]*f)+C(C(z[d+24>>2]*g)+C(h*z[d+28>>2])))))*z[d+56>>2])+C(C(C(D(C(C(z[d+8>>2]*f)+C(C(z[d>>2]*g)+C(h*z[d+4>>2])))))*z[d+48>>2])+C(z[d+52>>2]*C(D(C(C(z[d+20>>2]*f)+C(C(z[d+12>>2]*g)+C(h*z[d+16>>2]))))))));g=C(l-f);f=C(l+f);c=C((a?j:i)-c);a=k>2]=c>g?g:c}return!a}function zO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;c=v[a>>2];b=v[a+12>>2];e=v[(c+(b<<3)|0)+4>>2];if((e|0)==128){b=b+1|0;if((b|0)==v[a+4>>2]){b=v[37696];c=b+12|0;b=(g=c,h=8192,i=Ba[v[v[b>>2]+20>>2]](b)|0?39783:63804,j=19811,k=260,f=v[v[c>>2]+8>>2],Ba[f](g|0,h|0,i|0,j|0,k|0)|0);v[d+12>>2]=0;v[d+8>>2]=b;b=v[a+4>>2];a:{if(b>>>0>=(v[a+8>>2]&2147483647)>>>0){iO(a,d+8|0);break a}c=v[d+12>>2];b=v[a>>2]+(b<<3)|0;v[b>>2]=v[d+8>>2];v[b+4>>2]=c;v[a+4>>2]=v[a+4>>2]+1}c=v[a>>2];b=v[a+12>>2]+1|0}v[a+12>>2]=b;v[((b<<3)+c|0)+4>>2]=0;e=0}a=(b<<3)+c|0;v[a+4>>2]=e+1;xa=d+16|0;return v[a>>2]+(e<<6)|0}function DD(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=xa-16|0;xa=e;a:{if(!c){break a}t[a+337|0]=1;if(!w[a+336|0]|!v[a+4>>2]){break a}t[a+338|0]=1;h=a+352|0;i=a+52|0;j=v[a+296>>2];while(1){d=v[v[a+300>>2]+(v[(f<<2)+b>>2]<<2)>>2];v[e+12>>2]=d;b:{c:{if(d>>>0>=y[a+316>>2]){break c}g=v[v[a+312>>2]+(d<<2)>>2];if((g|0)==-1){break c}RB(v[a+4>>2],g);break b}oD(i,(d<<3)+j|0,d)}d:{if(v[a+268>>2]-3>>>0>1){break d}d=v[a+356>>2];if(d>>>0>=(v[a+360>>2]&2147483647)>>>0){on(h,e+12|0);break d}v[v[a+352>>2]+(d<<2)>>2]=v[e+12>>2];v[a+356>>2]=v[a+356>>2]+1}f=f+1|0;if((f|0)!=(c|0)){continue}break}}xa=e+16|0}function AO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;c=v[a>>2];b=v[a+12>>2];e=v[(c+(b<<3)|0)+4>>2];if((e|0)==128){b=b+1|0;if((b|0)==v[a+4>>2]){b=v[37696];c=b+12|0;b=(g=c,h=1024,i=Ba[v[v[b>>2]+20>>2]](b)|0?40147:63804,j=19811,k=260,f=v[v[c>>2]+8>>2],Ba[f](g|0,h|0,i|0,j|0,k|0)|0);v[d+12>>2]=0;v[d+8>>2]=b;b=v[a+4>>2];a:{if(b>>>0>=(v[a+8>>2]&2147483647)>>>0){jO(a,d+8|0);break a}c=v[d+12>>2];b=v[a>>2]+(b<<3)|0;v[b>>2]=v[d+8>>2];v[b+4>>2]=c;v[a+4>>2]=v[a+4>>2]+1}c=v[a>>2];b=v[a+12>>2]+1|0}v[a+12>>2]=b;v[((b<<3)+c|0)+4>>2]=0;e=0}a=(b<<3)+c|0;v[a+4>>2]=e+1;xa=d+16|0;return v[a>>2]+(e<<3)|0}function WA(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=v[d+12>>2];h=v[d+16>>2];e=v[c+16>>2];NA(d);OA(d,c,B(g,112)+e|0,B(h,112)+e|0);f=f+1|0;if((f|0)!=(b|0)){continue}break}}a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){b=v[c+28>>2];a=a+v[b>>2]|0;v[b>>2]=a;b=v[c+8>>2];if(b){f=a-b|0;a=0;while(1){d=v[c+4>>2]+(a<<5)|0;e=v[d+4>>2];b=v[c+20>>2]+(a+f<<5)|0;v[b>>2]=v[d>>2];v[b+4>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}}function TA(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=v[d+12>>2];h=v[d+16>>2];e=v[c+16>>2];MA(d);OA(d,c,B(g,112)+e|0,B(h,112)+e|0);f=f+1|0;if((f|0)!=(b|0)){continue}break}}a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){b=v[c+28>>2];a=a+v[b>>2]|0;v[b>>2]=a;b=v[c+8>>2];if(b){f=a-b|0;a=0;while(1){d=v[c+4>>2]+(a<<5)|0;e=v[d+4>>2];b=v[c+20>>2]+(a+f<<5)|0;v[b>>2]=v[d>>2];v[b+4>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}}function Sg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;if((Ba[v[v[b>>2]+24>>2]](b)|0)==2){a9(v[37696],2,11066,215,23317,0);return 0}a:{b:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break b}c=v[a+8>>2];if(!c){break b}if(c-16|0){break a}}g=v[(x[b+4>>1]<<2)+86240>>2]+b|0;c=v[g+4>>2];if(!c){break a}e=v[c+40>>2];if(!e){break a}i=v[c+36>>2];c=0;f=1;while(1){c:{h=(d<<3)+i|0;if(!(w[h|0]==3&f)){d=d+1|0;if((e|0)!=(d|0)){continue}if(f){break a}break c}c=v[h+4>>2];f=0;d=d+1|0;if((e|0)!=(d|0)){continue}}break}lh(g,3,c);d=v[c+12>>2]-1|0;v[c+12>>2]=d;if(d){break a}Ba[v[v[c+8>>2]+8>>2]](c+8|0)}return Rg(a,b,1)|0}function VA(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;NA(c);c=v[c+24>>2];e=x[c+2>>1];if(e){i=c+e|0;while(1){e=c+48|0;d=w[c+1|0];a:{if(!d){c=e;break a}f=w[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){z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[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){z[c+36>>2]=z[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 SA(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;MA(c);c=v[c+24>>2];e=x[c+2>>1];if(e){i=c+e|0;while(1){e=c+48|0;d=w[c+1|0];a:{if(!d){c=e;break a}f=w[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){z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[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){z[c+36>>2]=z[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 zf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=v[a+4>>2];if((d|0)!=v[a+8>>2]){z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];v[a+4>>2]=d+12;return}a:{f=v[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>>0?g:e:357913941;if(e>>>0>=357913942){break a}e=B(e,12);g=laa(e);c=g+B(c,12)|0;z[c>>2]=z[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];b=c+12|0;if((d|0)!=(f|0)){while(1){c=c-12|0;d=d-12|0;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];if((d|0)!=(f|0)){continue}break}}v[a+8>>2]=e+g;v[a+4>>2]=b;v[a>>2]=c;if(f){iaa(f)}return}da();L()}Uf();L()}function yw(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=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?49499:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<5)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}function jP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;if(v[a+2424>>2]){while(1){c=0;e=v[a+2436>>2]&2147483647;h=g<<4;b=h+v[a+2420>>2]|0;d=v[b+8>>2];f=d>>>5|0;if(e>>>0>f>>>0){c=v[v[a+2432>>2]+(f<<2)>>2]&1<>2];f=e>>>5|0;if(i>>>0>f>>>0){d=v[v[a+2432>>2]+(f<<2)>>2]&1<>2])}if(!d){break b}break a}c=v[v[b+4>>2]+152>>2];b=v[b>>2];c:{if(y[b+152>>2]>=4294967294){if(c>>>0<4294967294){break c}break a}if(c>>>0<4294967294){break a}}oH(b)}oH(v[(v[a+2420>>2]+h|0)+4>>2])}g=g+1|0;if(g>>>0>2]){continue}break}}v[a+2424>>2]=0;I9(v[a+2432>>2],0,v[a+2436>>2]<<2)}function fz(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=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?30897:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<5)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}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}c=b<<5;if(!c){break a}e=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?42469:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<5)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}function RB(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;if(!v[a+52>>2]){c=v[a+40>>2];c=(c>>>5|0)+((c&31)!=0)|0;v[a+56>>2]=c;if(c){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,c<<2,24422,12118,325)|0;c=v[a+56>>2]<<2}else{c=0}v[a+52>>2]=d;I9(d,0,c)}d=v[a+36>>2];if(!d){d=v[a+40>>2];c=d<<2;a:{if(!c){c=0;break a}d=v[37696]+12|0;c=Ba[v[v[d>>2]+8>>2]](d,c,24422,12118,464)|0;d=v[a+40>>2]}v[a+36>>2]=c;e=d;d=v[a+8>>2];SB(e,c,d,d,d);d=v[a+36>>2]}h=v[a+52>>2];while(1){c=b>>>5|0;e=(c<<2)+h|0;f=v[e>>2];g=1<>2]=f|g;e=v[a+60>>2];v[a+60>>2]=c>>>0>>0?e:c;c=b;b=v[(b<<2)+d>>2];if((c|0)!=(b|0)){continue}}break}}function N0(a,b){a=a|0;b=b|0;var c=0;if(v[a+24>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+24>>2],B(v[a+16>>2],12))}if(v[a+28>>2]){c=w[a+64|0];Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+28>>2],B(v[a+20>>2],c&2?6:12))}if(v[a+56>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+56>>2],v[a+20>>2])}if(v[a+68>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+68>>2],v[a+20>>2]<<1)}if(v[a+72>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+72>>2],v[a+20>>2]<<2)}if(v[a+76>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+76>>2],B(v[a+20>>2],12))}}function l1(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{c=v[b+28>>2];if(c&1){break a}d=c>>>1|0;f=d&1023;if(!f){v[b+12>>2]=0;return}e=c>>>11|0;h=d&3;d=v[a+24>>2];c=0;if(f-1>>>0>=3){k=f-h|0;while(1){g=((((v[((c+e<<5)+d|0)+28>>2]&1)+g|0)+(v[(((c|1)+e<<5)+d|0)+28>>2]&1)|0)+(v[(((c|2)+e<<5)+d|0)+28>>2]&1)|0)+(v[(((c|3)+e<<5)+d|0)+28>>2]&1)|0;c=c+4|0;i=i+4|0;if((k|0)!=(i|0)){continue}break}}if(h){while(1){g=(v[((c+e<<5)+d|0)+28>>2]&1)+g|0;c=c+1|0;j=j+1|0;if((j|0)!=(h|0)){continue}break}}v[b+12>>2]=g;if(!f){break a}c=0;while(1){l1(a,v[a+24>>2]+(c+e<<5)|0);c=c+1|0;if((f|0)!=(c|0)){continue}break}}}function V9(a){var b=0,c=0,d=0,e=0;e=xa-16|0;xa=e;c=(p(a),j(2));b=c&2147483647;a:{if(b>>>0<=1061752794){if(b>>>0<964689920){break a}a=U9(+a,0);break a}if(b>>>0<=1081824209){d=+a;if(b>>>0<=1075235811){a=U9(((c|0)<0?1.5707963267948966:-1.5707963267948966)+d,1);break a}a=U9(((c|0)<0?3.141592653589793:-3.141592653589793)+d,0);break a}if(b>>>0<=1088565717){d=+a;if(b>>>0<=1085271519){a=U9(((c|0)<0?4.71238898038469:-4.71238898038469)+d,1);break a}a=U9(((c|0)<0?6.283185307179586:-6.283185307179586)+d,0);break a}if(b>>>0>=2139095040){a=C(a-a);break a}b=F9(a,e+8|0);a=U9(A[e+8>>3],b&1)}xa=e+16|0;return a}function yY(a){a=a|0;var b=0,c=0,d=0;b=v[a+28>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+28>>2]=0;b=v[a+32>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+32>>2]=0;b=v[a+40>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+40>>2]=0;b=v[a+36>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+36>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;b=xa-16|0;xa=b;c=v[a+16>>2];v[b+12>>2]=a;c=Og(c+128|0,b+12|0);xa=b+16|0;if(c){b=v[a>>2];c=v[a+16>>2];d=x[a+4>>1];a:{if(t[a+6|0]&1){Ba[v[b+16>>2]](a);break a}Ba[v[b+12>>2]](a)|0}qV(c,a,d);return}a9(v[37696],8,11302,126,75224,0)}function SO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;f=a+24|0;c=v[a+28>>2];d=v[b+44>>2];v[e+12>>2]=d;a:{if(!(t[d+44|0]&1)){d=c;break a}d=v[a+36>>2];v[a+36>>2]=d+1;if((c|0)==(d|0)){d=c;break a}g=d<<2;h=v[g+v[f>>2]>>2];v[e+12>>2]=h;v[v[h>>2]+152>>2]=c;v[v[f>>2]+g>>2]=v[b+44>>2]}if(w[b+149|0]&16){c=v[a+44>>2];b:{if(c>>>0>=(v[a+48>>2]&2147483647)>>>0){TO(a+40|0,e+12|0);break b}v[v[a+40>>2]+(c<<2)>>2]=v[e+12>>2];v[a+44>>2]=c+1}v[b+156>>2]=c}v[b+152>>2]=d;b=v[a+28>>2];c:{if(b>>>0>=(v[a+32>>2]&2147483647)>>>0){TO(f,e+12|0);break c}v[v[a+24>>2]+(b<<2)>>2]=v[e+12>>2];v[a+28>>2]=b+1}xa=e+16|0}function Daa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(naa(a,v[b+8>>2],f)){xaa(b,c,d,e);return}g=w[b+53|0];j=v[a+12>>2];t[b+53|0]=0;h=w[b+52|0];t[b+52|0]=0;m=a+16|0;zaa(m,b,c,d,e,f);k=w[b+53|0];g=g|k;l=w[b+52|0];h=h|l;i=a+24|0;j=(j<<3)+m|0;a:{if(i>>>0>=j>>>0){break a}while(1){if(w[b+54|0]){break a}b:{if(l){if(v[b+24>>2]==1){break a}if(w[a+8|0]&2){break b}break a}if(!k){break b}if(!(t[a+8|0]&1)){break a}}u[b+52>>1]=0;zaa(i,b,c,d,e,f);k=w[b+53|0];g=k|g;l=w[b+52|0];h=l|h;i=i+8|0;if(j>>>0>i>>>0){continue}break}}t[b+53|0]=(g&255)!=0;t[b+52|0]=(h&255)!=0}function NX(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),v=C(0),w=0;j=xa-192|0;xa=j;k=z[d+20>>2];r=z[d+16>>2];s=z[d+24>>2];m=z[d>>2];n=C(m+m);l=z[d+8>>2];t=z[d+4>>2];o=z[d+12>>2];p=C(o+o);q=z[c+8>>2];v=C(C(C(n*l)-C(t*p))*q);z[j+180>>2]=s-v;l=C(q*C(C(l*p)+C(n*t)));z[j+176>>2]=k-l;z[j+168>>2]=v+s;z[j+164>>2]=k+l;k=C(q*C(C(m*n)+C(C(o*p)+C(-1))));z[j+172>>2]=r-k;z[j+160>>2]=r+k;z[j+184>>2]=z[c+4>>2]+C(0);c=j+160|0;d=j+96|0;wX(c,d);w=j+32|0;CV(w,j+144|0,j+132|0,d,e,f);u[j+8>>1]=x[i>>1];a=I2(a,b,c,e,f,h,g,j+16|0,j+8|0,0,w);xa=j+192|0;return a}function Ju(a,b){var c=0,d=0,e=0,f=0;e=a+16|0;c=xa-16|0;xa=c;d=v[b+12>>2];if(d){f=v[d>>2];e=v[e+1012>>2];v[c+8>>2]=v[d+48>>2];Ba[v[v[e>>2]+36>>2]](e,f,c+8|0)}xa=c+16|0;d=a+5012|0;c=xa-16|0;xa=c;a:{if(!w[a+4785|0]){v[b+4>>2]=v[b+4>>2]&-769;oP(a+16|0,b+12|0);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break a}b:{c:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}v[b+4>>2]=a&1073741823;v[c+4>>2]=b;Og(d,c+4|0);break a}v[b+4>>2]=a|-1073741824;if(a&268435456){break a}v[c+8>>2]=b;a=qh(d,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2]}xa=c+16|0;t[b+60|0]=1}function GB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=xa+-64|0;xa=d;g=v[b+8>>2];h=v[b+4>>2];e=v[c+8>>2];f=v[c+268>>2];a:{b:{if((w[(f&16384?e+268|0:c+60|0)|0]&3)!=3){break b}if(f&32768){z[d>>2]=z[e+192>>2];z[d+4>>2]=z[e+196>>2];z[d+8>>2]=z[e+200>>2];z[d+12>>2]=z[e+204>>2];z[d+16>>2]=z[e+208>>2];z[d+20>>2]=z[e+212>>2];z[d+24>>2]=z[e+216>>2];f=d;break a}if(y[c+4>>2]>3221225471){break b}f=d;if(YG(c+16|0,d)){break a}}f=c+208|0}e=v[c+268>>2]&1024?v[c+8>>2]+144|0:c- -64|0;c=d+32|0;th(f,h&4?g:b+48|0,e,c);dV(a,v[b+4>>2]&1?v[b+8>>2]- -64|0:b+84|0,c,C(1.0099999904632568));xa=d- -64|0}function PW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);d=v[b+8>>2];h=z[d+52>>2];i=z[d+20>>2];j=z[d+36>>2];k=z[d+56>>2];c=(c<<4)+101152|0;l=v[c>>2];m=z[d+24>>2];n=v[c+4>>2];b=v[b+4>>2];e=z[b+52>>2];o=z[d+40>>2];c=v[c+8>>2];f=z[b+56>>2];p=z[d+48>>2];q=z[d>>2];r=z[d+16>>2];s=z[d+32>>2];t=z[d+4>>2];u=z[d+8>>2];g=z[b+48>>2];v[a+12>>2]=0;f=c?f:C(-f);g=l?g:C(-g);e=n?e:C(-e);z[a+8>>2]=k+C(C(o*f)+C(C(u*g)+C(m*e)));z[a+4>>2]=h+C(C(j*f)+C(C(t*g)+C(e*i)));z[a>>2]=p+C(C(s*f)+C(C(q*g)+C(e*r)))}function PK(a){var b=0,c=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+68>>2]=0;b=v[a+36>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+36>>2]=0;b=v[a+64>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+64>>2]=0;b=v[a+60>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+60>>2]=0}b=v[a+56>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+48>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;b=v[a+84>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+84>>2]=0}b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0}function cq(a,b,c,d){var e=0,f=0,g=0;e=xa-16|0;xa=e;g=b+48|0;f=v[b+52>>2];f=w[(f&1?v[b+56>>2]:(g+v[((f>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8;a:{if(!d){break a}v[e+12>>2]=-1;d=mh(b+12|0,e+12|0);if(!d){break a}Rg(d,b,0)}hu(b+20|0,a+5584|0,b);if(!f){oh(b+12|0)}Eu(a+16|0,g,c,(w[(v[((v[b+52>>2]>>>22&60)+89188|0)+12>>2]+g|0)+8|0]&8)>>>3|0);b=v[b+44>>2];d=a+5936|0;c=v[d>>2]-1|0;v[d>>2]=c;d=v[a+5932>>2];v[d+(b<<2)>>2]=v[d+(c<<2)>>2];b:{if(!c|(b|0)==(c|0)){break b}c:{a=v[v[a+5932>>2]+(b<<2)>>2];switch(Ba[v[v[a>>2]+24>>2]](a)|0){case 0:case 1:break c;default:break b}}v[a+44>>2]=b}xa=e+16|0}function bq(a,b,c,d){var e=0,f=0,g=0;e=xa-16|0;xa=e;g=b+48|0;f=v[b+52>>2];f=w[(f&1?v[b+56>>2]:(g+v[((f>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8;a:{if(!d){break a}v[e+12>>2]=-1;d=mh(b+12|0,e+12|0);if(!d){break a}Rg(d,b,0)}hu(b+20|0,a+5584|0,b);if(!f){oh(b+12|0)}Bu(a+16|0,g,c,(w[(v[((v[b+52>>2]>>>22&60)+89188|0)+12>>2]+g|0)+8|0]&8)>>>3|0);b=v[b+44>>2];d=a+5936|0;c=v[d>>2]-1|0;v[d>>2]=c;d=v[a+5932>>2];v[d+(b<<2)>>2]=v[d+(c<<2)>>2];b:{if(!c|(b|0)==(c|0)){break b}c:{a=v[v[a+5932>>2]+(b<<2)>>2];switch(Ba[v[v[a>>2]+24>>2]](a)|0){case 0:case 1:break c;default:break b}}v[a+44>>2]=b}xa=e+16|0}function HL(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=v[a+28>>2];c=v[g+88>>2];d=v[c>>2];a:{if(!d){break a}e=v[c+12>>2];a=0;if(d-1>>>0>=3){f=d&-4;while(1){b=v[(B(a,40)+e|0)+28>>2];if(b){v[b+116>>2]=0}b=v[(B(a|1,40)+e|0)+28>>2];if(b){v[b+116>>2]=0}b=v[(B(a|2,40)+e|0)+28>>2];if(b){v[b+116>>2]=0}b=v[(B(a|3,40)+e|0)+28>>2];if(b){v[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=v[(B(a,40)+e|0)+28>>2];if(f){v[f+116>>2]=0}a=a+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}vL(c+36|0,v[c+24>>2],g,c+76|0,c+84|0);I9(v[c+76>>2],0,v[c+80>>2]<<2)}function vr(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=xa-16|0;xa=f;h=v[a+24>>2];c=v[a+20>>2];i=v[a+4>>2];j=v[a+16>>2];e=v[i+(j<<2)>>2];d=c+e|0;d=(d+15&-16)-d|0;if(h>>>0>>0){v[a+20>>2]=0;c=j+1|0;v[a+16>>2]=c;d=v[a+8>>2];if(d>>>0<=c>>>0){a:{if(!h){c=0;break a}g=v[37696]+12|0;c=Ba[v[v[g>>2]+8>>2]](g,h,24422,18513,88)|0;d=v[a+8>>2]}v[f+12>>2]=c;b:{if((v[a+12>>2]&2147483647)>>>0<=d>>>0){Us(a+4|0,f+12|0);break b}v[v[a+4>>2]+(d<<2)>>2]=c;v[a+8>>2]=d+1}i=v[a+4>>2];c=v[a+16>>2];g=v[a+20>>2]}e=v[(c<<2)+i>>2];d=(e+15&-16)-e|0;c=g}v[a+20>>2]=(b+d|0)+c;xa=f+16|0;return(c+e|0)+d|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;a:{if(!b){break a}d=b<<3;if(!(w[a+32|0]|d>>>0>32)){t[a+32|0]=1;e=a;break a}if(!d){break a}e=v[37696];c=e+12|0;e=(i=c,j=d,k=Ba[v[v[e>>2]+20>>2]](e)|0?30787:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a+36>>2];c=v[a+40>>2];if((c|0)>0){g=(c<<3)+e|0;c=d;f=e;while(1){t[f|0]=w[c|0];v[f+4>>2]=v[c+4>>2];c=c+8|0;f=f+8|0;if(g>>>0>f>>>0){continue}break}}b:{if(v[a+44>>2]<0){break b}if((a|0)==(d|0)){t[a+32|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+44>>2]=b;v[a+36>>2]=e}function Qv(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(b,28);if(!c){break a}e=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?37437:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,28)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];d=d+28|0;c=c+28|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}function FZ(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<<2;if(!(w[a+4352|0]|d>>>0>4352)){t[a+4352|0]=1;e=a;break a}if(!d){break a}e=v[37696];c=e+12|0;e=(i=c,j=d,k=Ba[v[v[e>>2]+20>>2]](e)|0?29035:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a+4356>>2];c=v[a+4360>>2];if((c|0)>0){g=(c<<2)+e|0;c=d;f=e;while(1){v[f>>2]=v[c>>2];c=c+4|0;f=f+4|0;if(g>>>0>f>>>0){continue}break}}b:{if(v[a+4364>>2]<0){break b}if((a|0)==(d|0)){t[a+4352|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+4364>>2]=b;v[a+4356>>2]=e}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=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=xa+-64|0;xa=j;l=v[v[a>>2]+128>>2];k=v[c+4>>2];v[j+48>>2]=v[c>>2];v[j+52>>2]=k;k=v[c+12>>2];v[j+56>>2]=v[c+8>>2];v[j+60>>2]=k;c=v[d+4>>2];v[j+32>>2]=v[d>>2];v[j+36>>2]=c;c=v[d+12>>2];v[j+40>>2]=v[d+8>>2];v[j+44>>2]=c;Ba[l|0](a,b,j+48|0,j+32|0,h,i);b=v[v[a>>2]+128>>2];c=v[f+12>>2];v[j+24>>2]=v[f+8>>2];v[j+28>>2]=c;c=v[f+4>>2];v[j+16>>2]=v[f>>2];v[j+20>>2]=c;c=v[g+12>>2];v[j+8>>2]=v[g+8>>2];v[j+12>>2]=c;c=v[g+4>>2];v[j>>2]=v[g>>2];v[j+4>>2]=c;Ba[b|0](a,e,j+16|0,j,h,i);xa=j- -64|0}function PV(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=C(0),k=0,l=0,m=C(0);g=xa-4288|0;xa=g;j=z[d+24>>2];k=v[d+16>>2];l=v[d+20>>2];m=z[c+4>>2];v[g+4232>>2]=-1;z[g+52>>2]=m;d=0;v[g+48>>2]=0;c=g+4232|0;h=g+48|0;kV(c,h);v[g+4176>>2]=-1;i=g+4176|0;kV(i,e);v[g+4168>>2]=0;v[g+4172>>2]=0;v[g+4144>>2]=0;z[g+40>>2]=j;v[g+32>>2]=k;v[g+36>>2]=l;v[g+24>>2]=0;v[g+28>>2]=1065353216;v[g+16>>2]=0;v[g+20>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;a:{if(!MZ(c,i,g+16|0,f,g,h,0)){break a}if(!QV(a,b,v[g+4144>>2],g+48|0)){break a}d=v[g+4144>>2]!=0}xa=g+4288|0;return d|0}function eG(a,b){var c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;v[d+12>>2]=b;if((b|0)!=-1){c=v[a+72>>2];a:{if(c>>>0>=(v[a+76>>2]&2147483647)>>>0){on(a+68|0,d+12|0);break a}v[v[a+68>>2]+(c<<2)>>2]=b;v[a+72>>2]=v[a+72>>2]+1}EF(a+640|0,v[d+12>>2]);b=v[d+12>>2];if(v[v[a+152>>2]+(b>>>3&536870908)>>2]>>>b&1){EF(a+168|0,b);b=v[d+12>>2];c=v[a+152>>2]+(b>>>3&536870908)|0;e=v[c>>2];f=c,g=Uaa(-2,b)&e,v[f>>2]=g;b=v[d+12>>2]}c=v[a+148>>2];e=(b>>>0)/(c>>>0)|0;v[v[v[a+128>>2]+(e<<2)>>2]+(b-B(c,e)<<2)>>2]=0;e=v[a+44>>2];a=v[a- -64>>2];c=(b>>>0)/(a>>>0)|0;v[v[e+(c<<2)>>2]+(b-B(a,c)<<2)>>2]=0}xa=d+16|0}function oF(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(b,24);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?44911:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,24)+e|0;c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=f;f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;d=d+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function wR(a){a=a|0;var b=0,c=0,d=0,e=0;c=v[a+20>>2];a=v[a+28>>2];b=v[a+2352>>2];d=v[b+12>>2];v[b>>2]=v[b+8>>2];v[b+4>>2]=d;I9(b+8|0,0,148);AK(v[a+976>>2]);v[a+2768>>2]=v[c+16>>2];b=a+2772|0;v[b>>2]=v[b>>2]+1;t[a+2844|0]=1;v[a+2872>>2]=v[c+16>>2];b=a+2876|0;v[b>>2]=v[b>>2]+1;t[a+2948|0]=1;b=a+3980|0;v[b>>2]=c;v[a+3984>>2]=1;Ba[v[v[c>>2]+16>>2]](c);d=a+3976|0;v[d>>2]=v[v[b>>2]+16>>2];v[a+3824>>2]=1;b=a+3820|0;c=a+3960|0;v[b>>2]=c;Ba[v[v[a+3960>>2]+16>>2]](c);e=a+3816|0;v[e>>2]=v[v[b>>2]+16>>2];b=v[d>>2];Ba[v[v[b>>2]+72>>2]](b,c);c=v[e>>2];Ba[v[v[c>>2]+72>>2]](c,a+3800|0)}function Zf(a,b){var c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;a:{if(t[149528]&1){f=v[37381];break a}f=aa(2,114064)|0;t[149528]=1;v[37381]=f}c=laa(64);v[c+8>>2]=v[b+8>>2];e=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=e;u[c+12>>1]=x[b+12>>1];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];z[c+28>>2]=z[b+28>>2];z[c+32>>2]=z[b+32>>2];z[c+36>>2]=z[b+36>>2];z[c+40>>2]=z[b+40>>2];e=v[b+48>>2];v[c+44>>2]=v[b+44>>2];v[c+48>>2]=e;e=v[b+56>>2];v[c+52>>2]=v[b+52>>2];v[c+56>>2]=e;v[c+60>>2]=v[b+60>>2];v[d+8>>2]=c;g=+fa(f|0,a|0,4445,d+4|0,d+8|0);ga(v[d+4>>2]);xa=d+16|0;return g!=0}function qR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=v[a+28>>2];f=v[d+4688>>2];if(f){while(1){a=v[v[d+4684>>2]+(e<<2)>>2];a:{if(!(a&1)){break a}a=a&-2;c=v[a+56>>2];g=a;h=v[d+1e3>>2];b=v[v[a+28>>2]+4>>2];i=v[(w[v[b+44>>2]+9|0]-1>>>0<2?b:0)+144>>2];b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(b){b=v[b+144>>2]}else{b=-128}a=ZF(h,c,i,b,a+4|0);v[g+60>>2]=a;if(!c){break a}v[c- -64>>2]=a}e=e+1|0;if((f|0)!=(e|0)){continue}break}}if(!v[d+996>>2]){a=v[d+1e3>>2];v[a+1076>>2]=0;v[a+1064>>2]=0;v[a+916>>2]=0;v[a+904>>2]=0;c=a+640|0;MF(c);OF(c);NF(c);SF(c,a+32|0,0,0)}}function YQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=xa-48|0;xa=e;d=v[a+28>>2];a=v[d+2360>>2];b=v[v[d+976>>2]+1024>>2];Ba[v[v[b>>2]+84>>2]](e+8|0,b);f=a&8;b=v[d+980>>2];c=v[b+332>>2];if(c){a=v[b+328>>2];while(1){kJ(v[d+2168>>2],v[a>>2],v[a+4>>2],0,v[a+8>>2],e+8|0,(f|0)!=0);a=a+12|0;c=c-1|0;if(c){continue}break}}c=v[b+344>>2];if(c){a=v[b+340>>2];while(1){kJ(v[d+2168>>2],v[a>>2],v[a+4>>2],0,0,e+8|0,(f|0)!=0);a=a+12|0;c=c-1|0;if(c){continue}break}}a=v[b+272>>2];Ba[v[v[a>>2]+80>>2]](a);a=v[b+272>>2];Ba[v[v[a>>2]+68>>2]](a);a=v[d+3696>>2];Ba[v[v[a>>2]+72>>2]](a,d+3680|0);xa=e+48|0}function uK(a){var b=0,c=0,d=0,e=0,f=0;d=v[a+4>>2];a:{if(!d){break a}if(v[a>>2]){b=1;while(1){c=0;b:{if(!b){b=0;break b}while(1){c=c+1|0;b=v[a>>2];if(c>>>0>>0){continue}break}d=v[a+4>>2]}e=e+1|0;if(e>>>0>>0){continue}break}if(!d){break a}}c=0;while(1){b=v[a+20>>2];e=c<<2;f=v[b+e>>2];if(f){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,f);d=v[a+4>>2];b=v[a+20>>2]}v[b+e>>2]=0;c=c+1|0;if(c>>>0>>0){continue}break}}v[a+4>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+20>>2]=0}}function gP(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(b,24);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?31271:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,24)+e|0;c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;v[c+16>>2]=v[d+16>>2];f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;t[c+20|0]=w[d+20|0];d=d+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function VD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=v[a+284>>2];if(e){f=v[a+292>>2];while(1){c=B(d,24)+f|0;z[c>>2]=z[c>>2]-z[b>>2];z[c+4>>2]=z[c+4>>2]-z[b+4>>2];z[c+8>>2]=z[c+8>>2]-z[b+8>>2];z[c+12>>2]=z[c+12>>2]-z[b>>2];z[c+16>>2]=z[c+16>>2]-z[b+4>>2];z[c+20>>2]=z[c+20>>2]-z[b+8>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}c=v[a+4>>2];if(c){NB(c,b)}if(w[a+336|0]){c=0;NB(v[a+220>>2],b);if(v[a+256>>2]){while(1){NB(v[v[a+252>>2]+(c<<3)>>2],b);c=c+1|0;if(c>>>0>2]){continue}break}}c=v[a+68>>2];if(c){TC(c,b)}c=v[a+116>>2];if(c){TC(c,b)}}a=v[a+32>>2];if(a){NB(a,b)}}function zH(a){var b=0,c=0,d=0,e=0,f=0,g=0;c=v[a+4>>2];b=v[c+4>>2];a:{if((b|0)==(c|0)){break a}e=1;while(1){g=f;f=f+1|0;d=e;e=d+1|0;c=b;b=v[c+4>>2];if((b|0)!=(c|0)){continue}break}if(!d){break a}f=d&7;b:{if(!f){b=a;break b}e=0;while(1){b=v[a+4>>2];v[a+4>>2]=c;d=d-1|0;a=b;e=e+1|0;if((f|0)!=(e|0)){continue}break}}if(g>>>0<7){break a}while(1){a=v[b+4>>2];v[b+4>>2]=c;b=v[a+4>>2];v[a+4>>2]=c;a=v[b+4>>2];v[b+4>>2]=c;b=v[a+4>>2];v[a+4>>2]=c;a=v[b+4>>2];v[b+4>>2]=c;b=v[a+4>>2];v[a+4>>2]=c;a=v[b+4>>2];v[b+4>>2]=c;b=v[a+4>>2];v[a+4>>2]=c;d=d-8|0;if(d){continue}break}}return c}function GH(a,b){var c=0,d=0,e=0,f=0,g=0;e=xa-16|0;xa=e;c=v[a+8>>2];a:{if(!c){break a}d=v[c+4>>2];if(d>>>0<=63){v[(c+(d<<2)|0)+8>>2]=v[b>>2];a=v[a+8>>2];v[a+4>>2]=v[a+4>>2]+1;break a}c=v[a>>2];g=v[c+4>>2];d=v[c+8>>2];f=v[(g+(d<<2)|0)-4>>2];b:{if((f-v[c+16>>2]|0)>=272){f=f-272|0;v[e+12>>2]=f;if(d>>>0>=(v[c+12>>2]&2147483647)>>>0){Us(c+4|0,e+12|0);c=v[e+12>>2];break b}v[(d<<2)+g>>2]=f;v[c+8>>2]=d+1;c=v[e+12>>2];break b}c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,272,24422,17461,99)|0}if(c){v[c>>2]=0;v[c+4>>2]=1;v[c+8>>2]=v[b>>2];v[v[a+8>>2]>>2]=c;v[a+8>>2]=c}}xa=e+16|0}function ly(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);a:{if(x[d+8>>1]==65535){d=v[d+4>>2];j=z[d+56>>2];k=z[d+44>>2];f=z[d+60>>2];l=z[d+36>>2];m=z[d+48>>2];g=z[d- -64>>2];n=z[d+40>>2];o=z[d+52>>2];p=z[d+32>>2];e=z[c+8>>2];h=z[c>>2];i=z[c+4>>2];z[a>>2]=z[b>>2];g=C(C(C(h*n)+C(i*o))+C(e*g));f=C(C(C(h*l)+C(i*m))+C(e*f));e=C(C(C(h*p)+C(i*k))+C(e*j));break a}z[a>>2]=z[b>>2];g=z[c+8>>2];f=z[c+4>>2];e=z[c>>2]}c=v[b+8>>2];b=v[b+4>>2];v[a+28>>2]=0;z[a+24>>2]=g;z[a+20>>2]=f;z[a+16>>2]=e;v[a+12>>2]=0;v[a+4>>2]=b;v[a+8>>2]=c}function Ng(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=xa-16|0;xa=e;_n(v[37393],a,0,1);if(v[a+36>>2]){f=a+8|0;while(1){b=d<<2;c=v[b+v[a+40>>2]>>2];if((Ba[v[v[c>>2]+24>>2]](c)|0)==2){c=v[v[b+v[a+40>>2]>>2]+320>>2];h=Ba[v[v[c>>2]+100>>2]](c)|0,i=0,v[h+96>>2]=i}b=v[b+v[a+40>>2]>>2];c=(x[b+4>>1]<<2)+86240|0;g=v[c+72>>2];nh(b+v[c>>2]|0,0);ru(f,b+g|0,1);d=d+1|0;if(d>>>0>2]){continue}break}}d=a+8|0;a:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}b=v[a+8>>2];if(!b){break a}b=b-16|0;if(!b){break a}Mu(b+16|0,d);v[e+12>>2]=a;Og(b+5984|0,e+12|0)}su(d);xa=e+16|0}function fM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;eM(a,c);v[a+4>>2]=b;d=b;b=v[a+200>>2];c=b<<3;d=Cx(d,c,1);v[a+264>>2]=b;v[a+256>>2]=d;v[a+260>>2]=0;d=Cx(v[a+4>>2],c,1);v[a+276>>2]=b;v[a+268>>2]=d;v[a+272>>2]=0;d=Cx(v[a+4>>2],b<<2,1);v[a+212>>2]=b;v[a+204>>2]=d;v[a+208>>2]=0;d=Cx(v[a+4>>2],c,1);v[a+332>>2]=b;v[a+324>>2]=d;v[a+328>>2]=0;d=Cx(v[a+4>>2],c,1);v[a+380>>2]=b;v[a+372>>2]=d;v[a+376>>2]=0;c=Cx(v[a+4>>2],c,1);v[a+428>>2]=b;v[a+420>>2]=c;v[a+424>>2]=0;gM(a);Ba[v[v[a+288>>2]+32>>2]](a+288|0);Ba[v[v[a+336>>2]+32>>2]](a+336|0);Ba[v[v[a+384>>2]+32>>2]](a+384|0);hM(a)}function fJ(a,b,c,d,e,f,g,h){var i=0,j=0;i=xa-16|0;xa=i;a:{if(!(w[b|0]&2)){j=x[b+2>>1];if(!h){u[i+8>>1]=j;g=pJ(a,c,d,i+8|0,e,f);break a}e=w[v[d+28>>2]- -64|0];g=v[a+1276>>2];if(!g){qJ(a+988|0);g=v[a+1276>>2]}v[a+1276>>2]=v[g>>2];f=a+1268|0;v[f>>2]=v[f>>2]+1;e=e&4;g=nS(g,e?d:c,e?c:d);u[g+56>>1]=x[g+56>>1]&65504|j&20;break a}h=g;if(!g){h=v[a+1860>>2];if(!h){rJ(a+1572|0);h=v[a+1860>>2]}v[a+1860>>2]=v[h>>2];e=a+1852|0;v[e>>2]=v[e>>2]+1}g=sJ(h,c,d,(g|0)!=0)}b=v[b+4>>2];if((b|0)!=-1){t[g+25|0]=w[g+25|0]|16;v[v[v[a+108>>2]>>2]+(b<<2)>>2]=g;v[g+36>>2]=b}xa=i+16|0;return g}function $2(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;a=xa-32|0;xa=a;a:{if(y[b+4>>2]<2|y[b>>2]<2|(v[b+8>>2]!=1|y[b+12>>2]<4)){break a}if(x[b+24>>1]>1|z[b+20>>2]>2]+20>>2]](d)|0?45527:63804,k=10899,l=456,g=v[v[e>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0),0);b:{if(!$_(d,b)){break b}b=Ba[v[v[c>>2]>>2]](c,1,d+16|0)|0;if(!b){break b}v[b+76>>2]=v[d+76>>2];v[b+80>>2]=v[d+80>>2];z[b+84>>2]=z[d+84>>2];z[b+88>>2]=z[d+88>>2];v[b+92>>2]=v[d+92>>2];f=b}Ba[v[v[d>>2]+16>>2]](d)}xa=a+32|0;return f|0}function ng(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a>>2]=118004;if(t[a+6|0]&1){c=v[a+56>>2];Ba[v[v[c>>2]+8>>2]](c)}c=v[37389];a:{if(!v[c+596>>2]){break a}b=(a<<15^-1)+a|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=v[c+572>>2]+((v[c+580>>2]-1&(b>>>16^b))<<2)|0;b=v[d>>2];if((b|0)==-1){break a}f=v[c+568>>2];e=v[c+564>>2];if(v[e+(b<<2)>>2]!=(a|0)){while(1){d=(b<<2)+f|0;b=v[d>>2];if((b|0)==-1){break a}if(v[(b<<2)+e>>2]!=(a|0)){continue}break}}e=d;d=(b<<2)+f|0;v[e>>2]=v[d>>2];v[c+596>>2]=v[c+596>>2]-1;v[c+592>>2]=v[c+592>>2]+1;v[d>>2]=v[c+588>>2];v[c+588>>2]=b}return a|0}function V3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;t[d+15|0]=66;t[d+14|0]=86;t[d+13|0]=52;t[d+12|0]=32;Ba[v[v[b>>2]>>2]](b,d+15|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+14|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+13|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+12|0,1)|0;jX(3,c,b);kX(z[a+132>>2],c,b);kX(z[a+136>>2],c,b);kX(z[a+140>>2],c,b);kX(z[a+144>>2],c,b);jX(v[a+156>>2],c,b);kX(z[a+160>>2],c,b);kX(z[a+164>>2],c,b);kX(z[a+168>>2],c,b);kX(z[a+172>>2],c,b);kX(z[a+176>>2],c,b);kX(z[a+180>>2],c,b);jX(w[a+185|0],c,b);jX(v[a+148>>2],c,b);Ba[v[v[b>>2]>>2]](b,v[a+152>>2],v[a+148>>2]<<4)|0;xa=d+16|0}function GW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);a=xa-16|0;xa=a;l=z[d+24>>2];m=z[d+20>>2];n=z[c+4>>2];o=z[d+16>>2];f=z[c+8>>2];i=z[d+8>>2];g=z[d+12>>2];p=z[d+4>>2];h=z[d>>2];AV(a,b);d=1;xa=a+16|0;q=z[a+12>>2];j=C(h+h);k=C(g+g);r=C(f*C(C(i*j)-C(p*k)));s=z[a+8>>2];g=C(f*C(C(h*j)+C(C(g*k)+C(-1))));h=z[a>>2];f=C(f*C(C(i*k)+C(j*p)));i=z[a+4>>2];if(!(C(q+C(C(C(l+r)*s)+C(C(C(o+g)*h)+C(C(m+f)*i))))<=n)){d=C(q+C(C(C(l-r)*s)+C(C(C(o-g)*h)+C(C(m-f)*i))))<=n}return d|0}function IT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=C(0),i=C(0);g=z[a+532>>2];h=z[a+528>>2];i=z[a+524>>2];c=v[a+436>>2];v[b>>2]=v[a+432>>2];v[b+4>>2]=c;c=v[a+444>>2];v[b+8>>2]=v[a+440>>2];v[b+12>>2]=c;c=v[a+452>>2];v[b+16>>2]=v[a+448>>2];v[b+20>>2]=c;d=+i;A[b>>3]=A[b>>3]-d;e=+h;A[b+8>>3]=A[b+8>>3]-e;f=+g;A[b+16>>3]=A[b+16>>3]-f;c=v[a+452>>2];v[b+40>>2]=v[a+448>>2];v[b+44>>2]=c;c=v[a+444>>2];v[b+32>>2]=v[a+440>>2];v[b+36>>2]=c;c=v[a+436>>2];v[b+24>>2]=v[a+432>>2];v[b+28>>2]=c;A[b+24>>3]=A[b+24>>3]+d;A[b+32>>3]=A[b+32>>3]+e;A[b+40>>3]=A[b+40>>3]+f;return 1}function HT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=C(0),i=C(0);g=z[a+540>>2];h=z[a+536>>2];i=z[a+532>>2];c=v[a+444>>2];v[b>>2]=v[a+440>>2];v[b+4>>2]=c;c=v[a+452>>2];v[b+8>>2]=v[a+448>>2];v[b+12>>2]=c;c=v[a+460>>2];v[b+16>>2]=v[a+456>>2];v[b+20>>2]=c;d=+i;A[b>>3]=A[b>>3]-d;e=+h;A[b+8>>3]=A[b+8>>3]-e;f=+g;A[b+16>>3]=A[b+16>>3]-f;c=v[a+460>>2];v[b+40>>2]=v[a+456>>2];v[b+44>>2]=c;c=v[a+452>>2];v[b+32>>2]=v[a+448>>2];v[b+36>>2]=c;c=v[a+444>>2];v[b+24>>2]=v[a+440>>2];v[b+28>>2]=c;A[b+24>>3]=A[b+24>>3]+d;A[b+32>>3]=A[b+32>>3]+e;A[b+40>>3]=A[b+40>>3]+f;return 1}function v3(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;a:{if(v[a+24>>2]){break a}b=v[a+32>>2];e=(b<<2)+c|0;v[e+16>>2]=v[e+16>>2]+1;if(!b){break a}e=v[a+28>>2];d=v[c+12>>2];g=v[c+4>>2];a=0;if((b|0)!=1){i=b&-2;while(1){j=(d<<2)+g|0;d=a<<2;f=d+e|0;v[j>>2]=v[f>>2];v[f>>2]=v[c+12>>2];f=v[c+12>>2]+1|0;v[c+12>>2]=f;d=e+(d|4)|0;v[(f<<2)+g>>2]=v[d>>2];v[d>>2]=v[c+12>>2];d=v[c+12>>2]+1|0;v[c+12>>2]=d;a=a+2|0;h=h+2|0;if((i|0)!=(h|0)){continue}break}}if(!(b&1)){break a}a=e+(a<<2)|0;v[(d<<2)+g>>2]=v[a>>2];v[a>>2]=v[c+12>>2];v[c+12>>2]=v[c+12>>2]+1}return 1}function YI(a,b,c){var d=0,e=0,f=0,g=0;a:{e=v[a+4>>2];f=v[e+28>>2];if(!f){break a}d=v[e+20>>2];g=d+(f<<2)|0;while(1){b:{e=d+4|0;d=v[d>>2];if(t[d+21|0]&1&(v[d+24>>2]==(a|0)|v[d+28>>2]==(a|0))){break b}d=e;if((g|0)!=(d|0)){continue}break a}break}c:while(1){f=w[d+21|0];d:{if(!(f&c)){break d}t[d+22|0]=w[d+22|0]|b;if(f&8){break d}UH(d);t[d+21|0]=w[d+21|0]|8}if((e|0)==(g|0)){break a}while(1){f=e+4|0;e:{d=v[e>>2];if(!(t[d+21|0]&1)){break e}if(v[d+24>>2]==(a|0)){e=f;continue c}if(v[d+28>>2]!=(a|0)){break e}e=f;continue c}e=f;if((f|0)!=(g|0)){continue}break}break}}}function Rh(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=xa-16|0;xa=g;a:{b:{c:{if((v[a+16>>2]>>>30|0)-3>>>0<4294967294){break c}f=v[a+12>>2];if(!f){break c}if(f-16|0){break b}}a9(v[37696],4,10974,300,75797,0);a=0;break a}if(v[b+56>>2]!=v[a+116>>2]){a9(v[37696],4,10974,308,76239,0);a=0;break a}f=Ba[v[v[a>>2]+24>>2]](a)|0;Ba[v[v[f>>2]+244>>2]](g,f);f=xa-16|0;xa=f;a=v[a+24>>2];if(a){z[f>>2]=z[g>>2];z[f+4>>2]=z[g+4>>2];z[f+8>>2]=z[g+8>>2];h=v[a>>2];a=Ba[v[v[h>>2]+88>>2]](h,v[a+52>>2],v[a+56>>2],b,c,d,f,e)|0}else{a=0}xa=f+16|0}xa=g+16|0;return a|0}function Hu(a,b){var c=0,d=0,e=0;e=a+4972|0;c=xa-16|0;xa=c;v[b>>2]=a;d=v[b+4>>2];a:{if(!w[a+4785|0]){v[b+4>>2]=d&268435455|-2147483648;Gg(b,c+12|0,c+8|0);d=a+16|0;e=b+12|0;a=v[c+12>>2];if(a){a=a+v[((v[a+4>>2]>>>22&60)+89188|0)+12>>2]|0}else{a=0}b=v[c+8>>2];if(b){b=b+v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]|0}else{b=0}lP(d,e,a,b);break a}a=d&1073741823;if(d>>>0>=3221225472){v[b+4>>2]=a|-2147483648;if(d&268435456){break a}v[c+12>>2]=b;Og(e,c+12|0);break a}v[b+4>>2]=a|1073741824;v[c+12>>2]=b;a=qh(e,c+12|0,c+8|0);if(w[c+8|0]){break a}v[a>>2]=v[c+12>>2]}xa=c+16|0}function YJ(a){a=a|0;var b=0,c=0;v[a>>2]=131412;b=v[a+92>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+84>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+80>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+72>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+68>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+60>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+56>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+12>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Yn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=xa-16|0;xa=f;a:{if(!v[a+92>>2]){break a}e=(b<<15^-1)+b|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=v[v[a+68>>2]+((v[a+76>>2]-1&(e>>>16^e))<<2)>>2];if((e|0)==-1){break a}g=v[a- -64>>2];a=v[a+60>>2];while(1){if(v[a+(e<<3)>>2]!=(b|0)){e=v[g+(e<<2)>>2];if((e|0)!=-1){continue}break a}break}a=v[(a+(e<<3)|0)+4>>2];b=v[a+36>>2]+d|0;if(b>>>0>y[a+20>>2]){Hm(a,b)}if(!d){break a}e=0;while(1){b=(e<<2)+c|0;g=Mm(a,b,f+15|0);if(!w[f+15|0]){v[g>>2]=v[b>>2]}e=e+1|0;if((e|0)!=(d|0)){continue}break}}xa=f+16|0}function iC(a){var b=0;v[a+48>>2]=0;v[a+52>>2]=0;v[a+200>>2]=-25165825;v[a+192>>2]=-25165825;v[a+196>>2]=-25165825;v[a+184>>2]=0;v[a+176>>2]=0;v[a+180>>2]=0;v[a+168>>2]=-25165825;v[a+160>>2]=-25165825;v[a+164>>2]=-25165825;v[a+152>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+136>>2]=-25165825;v[a+128>>2]=-25165825;v[a+132>>2]=-25165825;v[a+120>>2]=0;v[a+112>>2]=0;v[a+116>>2]=0;v[a+104>>2]=-25165825;v[a+96>>2]=-25165825;v[a+100>>2]=-25165825;v[a+88>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+72>>2]=-25165825;b=a- -64|0;v[b>>2]=-25165825;v[b+4>>2]=-25165825;v[a+56>>2]=0}function oH(a){var b=0,c=0;b=v[a+160>>2];if(b){a=v[b+8>>2];a:{if(!(z[a+32>>2]>2]=.3999999761581421;if(!v[b+16>>2]){break a}a=0;while(1){pH(v[v[b+24>>2]+(a<<2)>>2],C(.3999999761581421));a=a+1|0;if(a>>>0>2]){continue}break}}return}b=v[a+44>>2];if(!(t[b+44|0]&1|!(z[b+156>>2]>2]=.3999999761581421;c=v[v[a+40>>2]+1012>>2];Ba[v[v[c>>2]+44>>2]](c,w[b+9|0]==2,a+144|0);if(y[a+152>>2]>=4294967294){SO(v[a+40>>2],a);$G(a)}bG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);u[a+92>>1]=x[a+92>>1]&65534}}function yI(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?59167:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function x4(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61605:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function qF(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61481:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function pG(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?57927:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}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,n=0;c=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?60489:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function oT(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61723:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function lI(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?59049:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function kS(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?58181:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function iG(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?60245:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function Zp(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?56405:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function YU(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0;e=z[b+24>>2];d=z[b+4>>2];f=z[b>>2];g=z[b+12>>2];c=z[b+8>>2];n=v[b+20>>2];b=v[b+16>>2];v[a+48>>2]=0;v[a- -64>>2]=0;v[a+80>>2]=0;v[a+96>>2]=1065353216;z[a+92>>2]=e;v[a+84>>2]=b;v[a+88>>2]=n;e=C(f+f);h=C(d*e);j=C(c+c);k=C(g*j);z[a+40>>2]=h+k;l=C(e*c);i=C(d+d);m=C(g*i);z[a+44>>2]=l-m;z[a+52>>2]=h-k;h=C(i*c);g=C(e*g);z[a+60>>2]=h+g;z[a+68>>2]=l+m;z[a+72>>2]=h-g;f=C(C(1)-C(f*e));c=C(c*j);z[a+56>>2]=f-c;d=C(d*i);z[a+76>>2]=f-d;z[a+36>>2]=C(C(1)-d)-c;return a}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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?57805:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function Us(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?57427:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}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,m=0,n=0;c=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?59547:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function PB(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61221:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function NC(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61075:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function Lm(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?56299:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function LO(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?56187:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function G4(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?55463:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function Cy(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?58537:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function CI(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61821:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function C4(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?60363:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function BJ(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?57673:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function aV(a,b){var c=0,d=C(0),e=C(0),f=0,g=C(0);c=xa-32|0;xa=c;e=z[b+8>>2];g=z[b+4>>2];d=z[b>>2];v[a+4>>2]=v[b+12>>2];v[c+16>>2]=0;v[c+20>>2]=0;z[c+12>>2]=d+C(0);v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;d=C(C(K(C(C(e*e)+C(C(d*d)+C(g*g)))))*C(.15000000596046448));z[c+24>>2]=d;f=$U(a,c);v[a+4>>2]=v[b+16>>2];e=z[b+4>>2];v[c+8>>2]=0;v[c+12>>2]=0;v[c+20>>2]=0;z[c+16>>2]=e+C(0);v[c>>2]=0;v[c+4>>2]=0;z[c+24>>2]=d;f=$U(f,c);v[a+4>>2]=v[b+20>>2];e=z[b+8>>2];v[c+16>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;z[c+20>>2]=e+C(0);v[c>>2]=0;v[c+4>>2]=0;z[c+24>>2]=d;$U(f,c);xa=c+32|0}function BV(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0;a:{if(!b){v[a+8>>2]=2122317823;v[a+12>>2]=-25165825;v[a>>2]=2122317823;v[a+4>>2]=2122317823;d=C(-85070586659632215e21);e=C(-85070586659632215e21);break a}b=b-1|0;m=B(b,12)+c|0;f=z[m+8>>2];g=z[m+4>>2];h=z[m>>2];b:{if(!b){i=h;d=g;e=f;break b}e=f;d=g;i=h;while(1){j=z[c+8>>2];e=e>j?e:j;k=z[c+4>>2];d=d>k?d:k;l=z[c>>2];i=i>l?i:l;f=f>2]=i;z[a+8>>2]=f;z[a+4>>2]=g;z[a>>2]=h}z[a+20>>2]=e;z[a+16>>2]=d}function Rt(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=0;c=a+48|0;d=xa-16|0;xa=d;a:{b:{c:{d:{a=a+32|0;e=v[a+4>>2];f=e>>>30|0;switch(f-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}z[c+136>>2]=b;a=v[a-12>>2];if(!a){break a}e:{f:{switch(x[a+4>>1]-5|0){case 0:a=a- -64|0;break e;case 8:a=a- -64|0;break e;default:break f}}a=a- -64|0}if((f|0)==1){break a}t[d|0]=w[c- -64|0];v[d+8>>2]=256;SJ(a,c,d+8|0,d,0);break a}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],e>>>24&15);v[a+8>>2]=c}z[c+60>>2]=b;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|256}xa=d+16|0}function Pt(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=0;c=a+48|0;d=xa-16|0;xa=d;a:{b:{c:{d:{a=a+32|0;e=v[a+4>>2];f=e>>>30|0;switch(f-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}z[c+132>>2]=b;a=v[a-12>>2];if(!a){break a}e:{f:{switch(x[a+4>>1]-5|0){case 0:a=a- -64|0;break e;case 8:a=a- -64|0;break e;default:break f}}a=a- -64|0}if((f|0)==1){break a}t[d|0]=w[c- -64|0];v[d+8>>2]=128;SJ(a,c,d+8|0,d,0);break a}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],e>>>24&15);v[a+8>>2]=c}z[c+56>>2]=b;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|128}xa=d+16|0}function Baa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(naa(a,v[b+8>>2],e)){if(!(v[b+28>>2]==1|v[b+4>>2]!=(c|0))){v[b+28>>2]=d}return}a:{if(naa(a,v[b>>2],e)){if(!(v[b+16>>2]!=(c|0)&v[b+20>>2]!=(c|0))){if((d|0)!=1){break a}v[b+32>>2]=1;return}v[b+32>>2]=d;b:{if(v[b+44>>2]==4){break b}u[b+52>>1]=0;a=v[a+8>>2];Ba[v[v[a>>2]+20>>2]](a,b,c,c,1,e);if(w[b+53|0]){v[b+44>>2]=3;if(!w[b+52|0]){break b}break a}v[b+44>>2]=4}v[b+20>>2]=c;v[b+40>>2]=v[b+40>>2]+1;if(v[b+36>>2]!=1|v[b+24>>2]!=2){break a}t[b+54|0]=1;return}a=v[a+8>>2];Ba[v[v[a>>2]+24>>2]](a,b,c,d,e)}}function iW(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=C(0),j=0,k=0,l=0;a:{if(!c){break a}a=0;if((c|0)!=1){k=c&-2;while(1){f=B(w[a+b|0],12)+d|0;g=v[f+4>>2];h=v[f>>2];i=z[f+8>>2];f=(a<<4)+e|0;v[f+12>>2]=0;z[f+8>>2]=i;v[f>>2]=h;v[f+4>>2]=g;f=a|1;g=B(w[f+b|0],12)+d|0;h=v[g+4>>2];l=v[g>>2];f=(f<<4)+e|0;z[f+8>>2]=z[g+8>>2];v[f+12>>2]=0;v[f>>2]=l;v[f+4>>2]=h;a=a+2|0;j=j+2|0;if((k|0)!=(j|0)){continue}break}}if(!(c&1)){break a}b=B(w[a+b|0],12)+d|0;c=v[b+4>>2];d=v[b>>2];i=z[b+8>>2];a=(a<<4)+e|0;v[a+12>>2]=0;z[a+8>>2]=i;v[a>>2]=d;v[a+4>>2]=c}}function eS(a,b){var c=0,d=0,e=0,f=0,g=0;c=v[v[a+4>>2]+40>>2];if(b){bS(a,0,v[c+980>>2]+160|0);return}e=v[a+8>>2];if((e|0)<0){f=e&2147483647;a=f+32>>>5|0;a:{if(a>>>0<=(v[c+2520>>2]&2147483647)>>>0){b=v[c+2516>>2];break a}b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,a<<2,24422,17999,438)|0;d=v[c+2516>>2];b:{if(!d){break b}H9(b,d,v[c+2520>>2]<<2);if(v[c+2520>>2]<0){break b}d=v[c+2516>>2];if(!d){break b}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,d)}d=v[c+2520>>2];I9((d<<2)+b|0,0,a-d<<2);v[c+2520>>2]=a;v[c+2516>>2]=b}a=(f>>>3&268435452)+b|0;v[a>>2]=v[a>>2]|1<>2]=c;c=f+160|0;I9(c,0,40);v[f+200>>2]=v[f+204>>2];a:{if((Y9(0,b,f+200|0,f+80|0,c,d,e)|0)<0){break a}h=v[a+76>>2]>=0;c=v[a>>2];if(v[a+72>>2]<=0){v[a>>2]=c&-33}b:{c:{d:{if(!v[a+48>>2]){v[a+48>>2]=80;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;g=v[a+44>>2];v[a+44>>2]=f;break d}if(v[a+16>>2]){break c}}if(M9(a)){break b}}Y9(a,b,f+200|0,f+80|0,f+160|0,d,e)}if(g){Ba[v[a+36>>2]](a,0,0)|0;v[a+48>>2]=0;v[a+44>>2]=g;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0}v[a>>2]=v[a>>2]|c&32;if(!h){break a}}xa=f+208|0}function t9(a,b,c){var d=0,e=0,f=0;if(!a){return 0}a:{b:{d=31-E(a+15|0)|0;f=d>>>0>8?d:8;if(f>>>0<=16){d=v[37696];e=v[d+244>>2]+(f<<2)|0;a=e-32|0;e=e-20|0;d=v[d+244>>2]+(v[d+248>>2]<<2)|0;e=d>>>0>e>>>0?e:d;if(a>>>0>>0){while(1){d=v[a>>2];if(d){break b}a=a+4|0;if(e>>>0>a>>>0){continue}break}d=0;if(f>>>0>30){break a}}a=v[37696];d=Ba[v[v[a+12>>2]+8>>2]](a+12|0,2<>2]+8>>2]](d+12|0,a,24422,b,c)|0;break a}v[a>>2]=v[d>>2];f=(a-v[v[37696]+244>>2]>>2)+8|0}v[d>>2]=f;return d+16|0}function Nt(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=0;c=a+48|0;d=xa-16|0;xa=d;a:{b:{c:{d:{a=a+32|0;e=v[a+4>>2];f=e>>>30|0;switch(f-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}z[c+128>>2]=b;a=v[a-12>>2];if(!a){break a}e:{f:{switch(x[a+4>>1]-5|0){case 0:a=a- -64|0;break e;case 8:a=a- -64|0;break e;default:break f}}a=a- -64|0}if((f|0)==1){break a}t[d|0]=w[c- -64|0];v[d+8>>2]=32;SJ(a,c,d+8|0,d,0);break a}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],e>>>24&15);v[a+8>>2]=c}z[c+48>>2]=b;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|32}xa=d+16|0}function YB(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=v[a+40>>2];a:{if(!b){break a}d=v[a+44>>2];if((b|0)!=1){h=b&-2;while(1){b:{c:{c=e<<2;f=v[c+d>>2];switch(x[f+4>>1]-5|0){case 0:case 1:break c;default:break b}}v[f+40>>2]=0}d:{e:{c=v[(c|4)+d>>2];switch(x[c+4>>1]-5|0){case 0:case 1:break e;default:break d}}v[c+40>>2]=0}e=e+2|0;g=g+2|0;if((h|0)!=(g|0)){continue}break}}if(!(b&1)){break a}f:{b=v[(e<<2)+d>>2];switch(x[b+4>>1]-5|0){case 0:case 1:break f;default:break a}}v[b+40>>2]=0}b=v[a>>2];if(t[a+6|0]&1){Ba[v[b+16>>2]](a);return}Ba[v[b+12>>2]](a)|0}function Lt(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=0;c=a+48|0;d=xa-16|0;xa=d;a:{b:{c:{d:{a=a+32|0;e=v[a+4>>2];f=e>>>30|0;switch(f-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}z[c+60>>2]=b;a=v[a-12>>2];if(!a){break a}e:{f:{switch(x[a+4>>1]-5|0){case 0:a=a- -64|0;break e;case 8:a=a- -64|0;break e;default:break f}}a=a- -64|0}if((f|0)==1){break a}t[d|0]=w[c- -64|0];v[d+8>>2]=16;SJ(a,c,d+8|0,d,0);break a}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],e>>>24&15);v[a+8>>2]=c}z[c+44>>2]=b;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|16}xa=d+16|0}function o3(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;a:{if(v[a+24>>2]){break a}b=v[a+32>>2];e=(b<<2)+c|0;v[e+16>>2]=v[e+16>>2]+1;if(!b){break a}e=v[a+28>>2];d=v[c+8>>2];g=v[c>>2];a=0;if((b|0)!=1){i=b&-2;while(1){j=(d<<2)+g|0;d=a<<2;f=d+e|0;v[j>>2]=v[f>>2];v[f>>2]=v[c+8>>2];f=v[c+8>>2]+1|0;v[c+8>>2]=f;d=e+(d|4)|0;v[(f<<2)+g>>2]=v[d>>2];v[d>>2]=v[c+8>>2];d=v[c+8>>2]+1|0;v[c+8>>2]=d;a=a+2|0;h=h+2|0;if((i|0)!=(h|0)){continue}break}}if(!(b&1)){break a}a=e+(a<<2)|0;v[(d<<2)+g>>2]=v[a>>2];v[a>>2]=v[c+8>>2];v[c+8>>2]=v[c+8>>2]+1}return 1}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=C(0),f=0,g=C(0);g=z[a+528>>2];e=z[a+524>>2];c=v[a+436>>2];v[b>>2]=v[a+432>>2];v[b+4>>2]=c;c=v[a+444>>2];v[b+8>>2]=v[a+440>>2];v[b+12>>2]=c;c=v[a+452>>2];v[b+16>>2]=v[a+448>>2];v[b+20>>2]=c;d=+e;A[b>>3]=A[b>>3]-d;f=+C(e+C(g*C(.5)));A[b+8>>3]=A[b+8>>3]-f;A[b+16>>3]=A[b+16>>3]-d;c=v[a+452>>2];v[b+40>>2]=v[a+448>>2];v[b+44>>2]=c;c=v[a+444>>2];v[b+32>>2]=v[a+440>>2];v[b+36>>2]=c;c=v[a+436>>2];v[b+24>>2]=v[a+432>>2];v[b+28>>2]=c;A[b+24>>3]=A[b+24>>3]+d;A[b+32>>3]=A[b+32>>3]+f;A[b+40>>3]=A[b+40>>3]+d;return 1}function BS(a,b){a=a|0;b=b|0;var c=0,d=0,e=C(0),f=0,g=C(0);g=z[a+536>>2];e=z[a+532>>2];c=v[a+444>>2];v[b>>2]=v[a+440>>2];v[b+4>>2]=c;c=v[a+452>>2];v[b+8>>2]=v[a+448>>2];v[b+12>>2]=c;c=v[a+460>>2];v[b+16>>2]=v[a+456>>2];v[b+20>>2]=c;d=+e;A[b>>3]=A[b>>3]-d;f=+C(e+C(g*C(.5)));A[b+8>>3]=A[b+8>>3]-f;A[b+16>>3]=A[b+16>>3]-d;c=v[a+460>>2];v[b+40>>2]=v[a+456>>2];v[b+44>>2]=c;c=v[a+452>>2];v[b+32>>2]=v[a+448>>2];v[b+36>>2]=c;c=v[a+444>>2];v[b+24>>2]=v[a+440>>2];v[b+28>>2]=c;A[b+24>>3]=A[b+24>>3]+d;A[b+32>>3]=A[b+32>>3]+f;A[b+40>>3]=A[b+40>>3]+d;return 1}function ej(a,b,c){var d=0,e=0;a:{b:{c:{d:{e=v[a+4>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break d}}d=v[a>>2];break b}d=v[a>>2];if(w[d+4785|0]){break a}}IG(a+16|0,v[d+2428>>2],b,c);return}d=v[a+8>>2];if(!d){d=Pu(v[a>>2],e>>>24&15);v[a+8>>2]=d}if(b){z[d+244>>2]=z[b>>2]+z[d+244>>2];z[d+248>>2]=z[b+4>>2]+z[d+248>>2];z[d+252>>2]=z[b+8>>2]+z[d+252>>2];b=262144}else{b=0}if(c){z[d+256>>2]=z[c>>2]+z[d+256>>2];z[d+260>>2]=z[c+4>>2]+z[d+260>>2];z[d+264>>2]=z[c+8>>2]+z[d+264>>2];b=b|524288}Xu(v[a>>2],a);v[a+268>>2]=v[a+268>>2]|b}function dj(a,b,c){var d=0,e=0;a:{b:{c:{d:{e=v[a+4>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break d}}d=v[a>>2];break b}d=v[a>>2];if(w[d+4785|0]){break a}}EG(a+16|0,v[d+2428>>2],b,c);return}d=v[a+8>>2];if(!d){d=Pu(v[a>>2],e>>>24&15);v[a+8>>2]=d}if(b){z[d+220>>2]=z[b>>2]+z[d+220>>2];z[d+224>>2]=z[b+4>>2]+z[d+224>>2];z[d+228>>2]=z[b+8>>2]+z[d+228>>2];b=65536}else{b=0}if(c){z[d+232>>2]=z[c>>2]+z[d+232>>2];z[d+236>>2]=z[c+4>>2]+z[d+236>>2];z[d+240>>2]=z[c+8>>2]+z[d+240>>2];b=b|131072}Xu(v[a>>2],a);v[a+268>>2]=v[a+268>>2]|b}function Ly(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;d=v[b+4>>2];if(d){g=a+88|0;h=a+112|0;while(1){c=d-1|0;d=v[v[b>>2]+(c<<2)>>2];v[b+4>>2]=c;v[e+12>>2]=d;c=v[a+168>>2];f=v[c+16>>2];a:{if(!(d>>>0>>0|d>>>0>=v[c+20>>2]+f>>>0)){c=v[a+92>>2];if(c>>>0>=(v[a+96>>2]&2147483647)>>>0){Cy(g,e+12|0);break a}v[v[a+88>>2]+(c<<2)>>2]=d;v[a+92>>2]=c+1;break a}c=v[a+116>>2];b:{if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){Cy(h,e+12|0);break b}v[v[a+112>>2]+(c<<2)>>2]=d;v[a+116>>2]=c+1}v[a+152>>2]=v[a+152>>2]-1}d=v[b+4>>2];if(d){continue}break}}xa=e+16|0}function WQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=v[a+28>>2];a=v[a+20>>2];v[b+3620>>2]=a;v[b+3624>>2]=1;d=b+3600|0;a:{if(!a){c=v[b+3616>>2];break a}Ba[v[v[a>>2]+16>>2]](a);c=v[v[b+3620>>2]+16>>2];v[b+3616>>2]=c}Ba[v[v[c>>2]+72>>2]](c,d);v[b+3660>>2]=a;v[b+3664>>2]=1;c=b+3640|0;b:{if(!a){a=v[b+3656>>2];break b}Ba[v[v[a>>2]+16>>2]](a);a=v[v[b+3660>>2]+16>>2];v[b+3656>>2]=a}Ba[v[v[a>>2]+72>>2]](a,c);a=v[b+980>>2];c=v[a+332>>2];if(c){a=v[a+328>>2];while(1){e=a,f=jJ(v[b+2168>>2],v[a>>2],v[a+4>>2]),v[e+8>>2]=f;a=a+12|0;c=c-1|0;if(c){continue}break}}}function zt(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==5){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;v[b>>2]=v[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];z[b+28>>2]=z[a+28>>2];t[b+32|0]=w[a+32|0];c=w[a+33|0]|w[a+34|0]<<8|(w[a+35|0]<<16|w[a+36|0]<<24);t[b+33|0]=c;t[b+34|0]=c>>>8;t[b+35|0]=c>>>16;t[b+36|0]=c>>>24;a=w[a+36|0]|w[a+37|0]<<8|(w[a+38|0]<<16|w[a+39|0]<<24);t[b+36|0]=a;t[b+37|0]=a>>>8;t[b+38|0]=a>>>16;t[b+39|0]=a>>>24}return(d|0)==5|0}function on(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=v[a+8>>2];g=d&2147483647?d<<1:1;a:{if(!g){break a}d=g<<2;if(!d){break a}e=v[37696];c=e+12|0;e=(j=c,k=d,l=Ba[v[v[e>>2]+20>>2]](e)|0?29035:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){h=(c<<2)+e|0;c=d;f=e;while(1){v[f>>2]=v[c>>2];c=c+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}c=v[a+4>>2]}v[(c<<2)+e>>2]=v[b>>2];if(!(!d|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d)}v[a+8>>2]=g;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function _n(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(w[a+100|0]){g=v[a+92>>2];if(g){i=v[a+60>>2];a=(b<<15^-1)+b|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;j=a>>>16^a;while(1){h=(f<<3)+i|0;a=v[h+4>>2];a:{if(!(w[a+40|0]&d)){break a}b:{if(!w[a+41|0]){break b}if(!v[a+36>>2]){break a}e=v[v[a+12>>2]+((v[a+20>>2]-1&j)<<2)>>2];if((e|0)==-1){break a}k=v[a+8>>2];a=v[a+4>>2];while(1){e=e<<2;if(v[e+a>>2]==(b|0)){break b}e=v[e+k>>2];if((e|0)!=-1){continue}break}break a}a=v[h>>2];Ba[v[v[a>>2]>>2]](a,b,c,d)}f=f+1|0;if((g|0)!=(f|0)){continue}break}}}}function YF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=v[a+8>>2];g=d&2147483647?d<<1:1;a:{if(!g){break a}d=g<<2;if(!d){break a}e=v[37696];c=e+12|0;e=(j=c,k=d,l=Ba[v[v[e>>2]+20>>2]](e)|0?26235:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){h=(c<<2)+e|0;c=d;f=e;while(1){v[f>>2]=v[c>>2];c=c+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}c=v[a+4>>2]}v[(c<<2)+e>>2]=v[b>>2];if(!(!d|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d)}v[a+8>>2]=g;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;if(!w[a+4801|0]){a=a+32|0;a:{b:{if(b){c:{if(y[a+2180>>2]>=c>>>0){d=v[a+2172>>2];break c}d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,c,24422,11777,1434)|0;if(!d){break b}v[a+2180>>2]=c;e=v[a+2172>>2];if(!e){break c}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,e)}b=H9(d,b,c);v[a+2176>>2]=c;v[a+2172>>2]=b;break a}b=v[a+2172>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+2172>>2]=0}v[a+2176>>2]=0;v[a+2180>>2]=0;break a}a9(v[37696],16,11777,1443,76452,0)}return}a9(v[37696],8,19228,565,69003,0)}function UO(a,b){var c=0,d=0,e=0,f=0,g=0;d=v[b+152>>2];v[b+152>>2]=-2;g=v[a+28>>2];c=v[a+36>>2];a:{if(c>>>0<=d>>>0){e=d;break a}e=c-1|0;v[a+36>>2]=e;if((c|0)==(g|0)){e=d;break a}if(d>>>0>=e>>>0){e=d;break a}c=v[v[a+24>>2]+(e<<2)>>2];v[v[c>>2]+152>>2]=d;v[v[a+24>>2]+(d<<2)>>2]=c}if(w[b+149|0]&16){f=v[b+156>>2];v[b+156>>2]=-2;c=v[a+44>>2]-1|0;if((c|0)!=(f|0)){b=v[a+40>>2];d=v[b+(c<<2)>>2];v[b+(f<<2)>>2]=d;v[v[d>>2]+156>>2]=f}v[a+44>>2]=c}c=g-1|0;if((c|0)!=(e|0)){b=v[a+24>>2];d=v[b+(c<<2)>>2];v[b+(e<<2)>>2]=d;v[v[d>>2]+152>>2]=e}v[a+28>>2]=c}function BP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=xa-48|0;xa=f;c=v[v[a+976>>2]+1024>>2];Ba[v[v[c>>2]+84>>2]](f+8|0,c);i=v[v[a+1004>>2]+8>>2];j=v[i+8>>2];if(j){while(1){d=v[i+4>>2]+(h<<5)|0;e=v[d>>2];a:{if(!e){break a}c=v[e+44>>2];if(!(c&448)){break a}g=c<<1&1048576;k=g|c&-1572865;v[e+44>>2]=k;b:{if(z[d+20>>2]>C(z[d+8>>2]*z[a+1080>>2])){v[e+44>>2]=k|524288;d=64;if(g?0:c&64){break b}d=128;if(!(c&128)){break a}if(g){break b}break a}d=256;if(!(c&256)|!g){break a}}RR(e,d,0,0,b,f+8|0)}h=h+1|0;if((j|0)!=(h|0)){continue}break}}xa=f+48|0}function iH(a){var b=0,c=0,d=0,e=0,f=0,g=0;t[a+150|0]=w[a+150|0]|4;if(w[v[a+44>>2]+9|0]!=2){e=v[a+144>>2];f=e>>>7|0;d=f+32>>>5|0;a=v[a+40>>2];a:{if(d>>>0<=(v[a+2448>>2]&2147483647)>>>0){b=v[a+2444>>2];break a}b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,d<<2,24422,17999,438)|0;c=v[a+2444>>2];b:{if(!c){break b}H9(b,c,v[a+2448>>2]<<2);if(v[a+2448>>2]<0){break b}c=v[a+2444>>2];if(!c){break b}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}c=v[a+2448>>2];I9((c<<2)+b|0,0,d-c<<2);v[a+2448>>2]=d;v[a+2444>>2]=b}a=(e>>>10&4194300)+b|0;v[a>>2]=v[a>>2]|1<>2]+9|0]!=2){e=v[a+144>>2];f=e>>>7|0;d=f+32>>>5|0;a=v[a+40>>2];a:{if(d>>>0<=(v[a+2448>>2]&2147483647)>>>0){b=v[a+2444>>2];break a}b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,d<<2,24422,17999,438)|0;c=v[a+2444>>2];b:{if(!c){break b}H9(b,c,v[a+2448>>2]<<2);if(v[a+2448>>2]<0){break b}c=v[a+2444>>2];if(!c){break b}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}c=v[a+2448>>2];I9((c<<2)+b|0,0,d-c<<2);v[a+2448>>2]=d;v[a+2444>>2]=b}a=(e>>>10&4194300)+b|0;v[a>>2]=v[a>>2]|1<>2]=0;v[a+76>>2]=0;b=v[a+32>>2];if(!(!b|!v[a+48>>2])){I9(v[a+24>>2],255,b<<2);b=0;d=v[a+20>>2];f=v[a+28>>2];e=f-1|0;if(e){if(f-2>>>0>=3){f=e&-4;while(1){c=b|1;v[(b<<2)+d>>2]=c;g=(c<<2)+d|0;c=b|2;v[g>>2]=c;g=(c<<2)+d|0;c=b|3;v[g>>2]=c;b=b+4|0;v[(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;v[c>>2]=b;i=i+1|0;if((e|0)!=(i|0)){continue}break}}b=v[a+28>>2]-1|0}else{b=0}v[d+(b<<2)>>2]=-1;v[a+48>>2]=0;v[a+40>>2]=0}v[a+52>>2]=0}function JO(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+28>>2];e=v[b+136>>2];a=v[b+148>>2];d=v[(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+v[c>>2]|0;v[g+52>>2]=0;v[g+44>>2]=0;c=f+v[c>>2]|0;v[c+116>>2]=0;v[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=v[(a>>>4&268435448)+e>>2]+((a&127)<<6)|0;v[a+52>>2]=0;v[a+44>>2]=0}v[b+164>>2]=0;v[v[b+152>>2]+4>>2]=0;vO(b);a=v[b+300>>2];b=v[v[b+312>>2]+304>>2];v[a>>2]=v[b>>2];v[b>>2]=a}function v0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0);e=xa-32|0;xa=e;m=v[c+36>>2];f=z[b+20>>2];n=z[b+16>>2];o=z[b+24>>2];h=z[b>>2];i=C(h+h);g=z[b+8>>2];p=z[b+4>>2];j=z[b+12>>2];k=C(j+j);l=z[a+8>>2];q=C(C(C(i*g)-C(p*k))*l);z[e+20>>2]=o-q;g=C(l*C(C(g*k)+C(i*p)));z[e+16>>2]=f-g;z[e+8>>2]=q+o;z[e+4>>2]=f+g;f=C(l*C(C(h*i)+C(C(j*k)+C(-1))));z[e+12>>2]=n-f;z[e>>2]=n+f;z[e+24>>2]=z[a+4>>2];a=Ba[v[(x[m+4>>1]<<2)+143720>>2]](e,m,d,c+4|0,0)|0;xa=e+32|0;return a|0}function Gu(a){var b=0,c=0,d=0,e=0,f=0;b=xa-288|0;xa=b;t[b+264|0]=1;v[b+272>>2]=0;v[b+276>>2]=64;v[b+268>>2]=b+8;e=Ho(a,b+4|0,0);if(e){f=v[a>>2]+4816|0;while(1){a=v[v[b+4>>2]+(d<<2)>>2]+32|0;c=v[a+4>>2];if(c&268435456){Yu(a);v[b+284>>2]=a;Og(f,b+284|0);c=v[a+4>>2]&-268435457;v[a+4>>2]=c}if((c&251658240)==16777216){v[a>>2]=0;v[a+4>>2]=c&1073741823}d=d+1|0;if((e|0)!=(d|0)){continue}break}}a=v[b+276>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=v[b+268>>2];if((a|0)==(b+8|0)|!a){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=b+288|0}function GR(a,b){var c=0,d=0,e=0,f=0,g=0;d=v[b>>2];f=52685;a:{b:{c:{g=a+68|0;switch(v[g>>2]-5|0){case 1:break b;case 0:break c;default:break a}}c=v[a+116>>2];f=x[a+122>>1];e=x[a+120>>1];break a}c=v[a+96>>2];f=x[a+102>>1];e=x[a+100>>1]}kV(g,b);if(d-5>>>0<=1){d=(d|0)==5;b=d?a+116|0:a+96|0;d=d?116:96;if(e){v[a+d>>2]=c;u[b+6>>1]=f;u[b+4>>1]=e;return}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,2,24422,18135,109)|0;v[a+d>>2]=c;u[b+4>>1]=1;u[c>>1]=x[a+66>>1];t[a+65|0]=1;return}if(!(!c|(!e|!w[a+65|0]))){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,c)}}function cK(a){a=a|0;var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;if(v[a+52>>2]){v[c+12>>2]=0;if(v[a+76>>2]){d=a+84|0;while(1){b=v[a+72>>2]+B(b,20)|0;a:{if(v[b+8>>2]==2){break a}e=b;b=v[b+4>>2]-1|0;v[e+4>>2]=b;if(b){break a}b=v[a+88>>2];if(b>>>0>=(v[a+92>>2]&2147483647)>>>0){on(d,c+12|0);break a}v[v[a+84>>2]+(b<<2)>>2]=v[c+12>>2];v[a+88>>2]=v[a+88>>2]+1}b=v[c+12>>2]+1|0;v[c+12>>2]=b;if(y[a+76>>2]>b>>>0){continue}break}}if(v[a+88>>2]){b=0;while(1){dK(a,v[v[a+84>>2]+(b<<2)>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}v[a+88>>2]=0}xa=c+16|0}function A_(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);a=v[a+60>>2];h=z[a+8>>2];j=h;i=C(-h);h=z[b+8>>2];k=z[b>>2];l=z[b+4>>2];g=C(C(z[c+32>>2]*h)+C(C(z[c+24>>2]*k)+C(l*z[c+28>>2])));m=C((g>=C(0)?j:i)*g);g=z[a>>2];j=g;i=C(-g);g=C(C(z[c+8>>2]*h)+C(C(z[c>>2]*k)+C(z[c+4>>2]*l)));j=C((g>=C(0)?j:i)*g);g=C(C(z[c+20>>2]*h)+C(C(z[c+12>>2]*k)+C(l*z[c+16>>2])));i=z[a+4>>2];g=C(m+C(j+C(g*(g>=C(0)?i:C(-i)))));h=C(C(z[c+44>>2]*h)+C(C(z[c+36>>2]*k)+C(l*z[c+40>>2])));z[f>>2]=g+h;z[e>>2]=h-g}function d_(a,b){a=a|0;b=b|0;var c=0,d=0;Ba[v[v[b>>2]+12>>2]](b,16);c=u[a+52>>1];d=c&32767;c=(((B(w[a+55|0],20)+(v[a+80>>2]&2147483647)|0)+B(w[a+54|0],15)|0)+(d<<1)|0)+((c|0)>=0?0:d<<2)|0;d=c&3;Ba[v[v[b>>2]+8>>2]](b,v[a+56>>2],(d?4-d|0:0)+c|0);if(v[a+84>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+84>>2],28);a=v[a+84>>2];if(v[a+4>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+4>>2],x[a+2>>1]<<1)}if(v[a+16>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+16>>2],v[a+12>>2]+((v[a+8>>2]<<2)+12&-16)|0)}}}function Du(a){var b=0,c=0,d=0,e=0,f=0;b=xa-288|0;xa=b;t[b+264|0]=1;v[b+272>>2]=0;v[b+276>>2]=64;v[b+268>>2]=b+8;e=Zo(a,b+4|0);if(e){f=v[a>>2]+4816|0;while(1){a=v[v[b+4>>2]+(d<<2)>>2]+32|0;c=v[a+4>>2];if(c&268435456){Yu(a);v[b+284>>2]=a;Og(f,b+284|0);c=v[a+4>>2]&-268435457;v[a+4>>2]=c}if((c&251658240)==16777216){v[a>>2]=0;v[a+4>>2]=c&1073741823}d=d+1|0;if((e|0)!=(d|0)){continue}break}}a=v[b+276>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=v[b+268>>2];if((a|0)==(b+8|0)|!a){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=b+288|0}function DG(a,b){var c=C(0),d=0,e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0);d=xa-16|0;xa=d;g=z[b+24>>2];h=z[b>>2];i=z[b+16>>2];j=z[b+20>>2];a:{if(!(!(i!=C(0)|j!=C(0))&g==C(0))){c=z[b+8>>2];e=z[b+4>>2];break a}c=z[b+8>>2];e=z[b+4>>2];if(h!=C(0)|e!=C(0)|c!=C(0)){break a}f=z[b+12>>2]==C(1)}z[a+56>>2]=c;z[a+52>>2]=e;z[a+48>>2]=h;t[a+45|0]=f;c=z[b+12>>2];z[a+72>>2]=g;z[a+68>>2]=j;z[a- -64>>2]=i;z[a+60>>2]=c;a=v[a>>2];if(a){WJ(a);b=v[v[a+40>>2]+1012>>2];f=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(f|0)==2,d+8|0)}xa=d+16|0}function Ox(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;h=v[a+448>>2];if(h>>>0>=2){i=v[a+456>>2];j=v[a+444>>2];d=1;while(1){e=(B(d,24)+b|0)-24|0;f=(v[(B(d,80)+i|0)+72>>2]<<2)+c|0;g=v[((d<<5)+j|0)+20>>2];if(w[g+258|0]){z[f>>2]=z[e>>2];a=1}else{a=0}if(w[g+259|0]){z[(a<<2)+f>>2]=z[e+4>>2];a=a+1|0}if(w[g+260|0]){z[(a<<2)+f>>2]=z[e+8>>2];a=a+1|0}if(w[g+261|0]){z[(a<<2)+f>>2]=z[e+12>>2];a=a+1|0}if(w[g+262|0]){z[(a<<2)+f>>2]=z[e+16>>2];a=a+1|0}if(w[g+263|0]){z[(a<<2)+f>>2]=z[e+20>>2]}d=d+1|0;if((h|0)!=(d|0)){continue}break}}}function Xj(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=0,h=0;c=xa-16|0;xa=c;d=z[b>>2];e=z[b+4>>2];f=z[b+8>>2];f=f==C(0)?C(0):C(C(1)/f);z[c+8>>2]=f;e=e==C(0)?C(0):C(C(1)/e);z[c+4>>2]=e;d=d==C(0)?C(0):C(C(1)/d);z[c>>2]=d;g=a+48|0;a:{b:{c:{d:{h=v[a+52>>2];switch((h>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[g>>2]+4785|0]){break b}}LG(a- -64|0,c);break a}b=v[a+56>>2];if(!b){b=Pu(v[a+48>>2],h>>>24&15);v[a+56>>2]=b}z[b+96>>2]=d;z[b+104>>2]=f;z[b+100>>2]=e;Xu(v[a+48>>2],g);v[a+316>>2]=v[a+316>>2]|2}xa=c+16|0}function _k(a,b){var c=0,d=0;z[a+260>>2]=b;a:{b:{c:{d:{d=v[a+4>>2]>>>30|0;switch(d-2|0){case 1:break a;case 0:break c;default:break d}}c=v[a>>2];break b}c=v[a>>2];if(w[c+4785|0]){break a}}if(!(!(b>C(0))|!c)){v[a+264>>2]=0}UG(a+16|0,b,0);return}if(b>C(0)){e:{f:{switch(d-2|0){case 0:c=v[a>>2];if(w[c+4785|0]){break e}default:z[a+260>>2]=b;v[a+264>>2]=0;UG(a+16|0,b,1);return;case 1:break f}}c=v[a>>2]}z[a+260>>2]=b;v[a+264>>2]=0;Xu(c,a);v[a+268>>2]=v[a+268>>2]&-117440513|83886080;return}Xu(v[a>>2],a);v[a+268>>2]=v[a+268>>2]|16777216}function Yp(a,b,c,d){var e=0,f=0,g=0,h=0;f=xa-224|0;xa=f;e=a+16|0;g=b+48|0;h=v[b+52>>2];a:{if(!(w[(h&1?v[b+56>>2]:(g+v[((h>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8)){b:{if(!w[a+4801|0]){h=e;e=x[b+24>>1]<9?f:0;zu(h,g,0,e,c);ju(b+20|0,a,b,d,e,c);break b}zu(e,g,0,0,c);ju(b+20|0,a,b,d,0,c)}if(!v[b+16>>2]){break a}ph(b+12|0);break a}zu(e,g,1,0,c);ju(b+20|0,a,b,d,0,c)}c=v[a+5936>>2];v[b+44>>2]=c;v[f+220>>2]=b;c:{if(c>>>0>=(v[a+5940>>2]&2147483647)>>>0){Zp(a+5932|0,f+220|0);break c}v[v[a+5932>>2]+(c<<2)>>2]=b;v[a+5936>>2]=c+1}xa=f+224|0}function LL(a){a=a|0;var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;b=v[a+88>>2];d=v[b+84>>2];if(d){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}v[b+84>>2]=0;v[b+88>>2]=0;v[b+4208>>2]=0;a:{if(y[a+104>>2]>=1025){v[c+8>>2]=1073741823;v[c+12>>2]=1073741823;b=a+100|0;iL(b,c+8|0);bL(b,v[a+104>>2]);if(v[a+108>>2]&2147482624){break a}bL(b,1024);break a}v[a+104>>2]=0}b:{if(y[a+116>>2]>=1025){v[c+8>>2]=1073741823;v[c+12>>2]=1073741823;b=a+112|0;iL(b,c+8|0);bL(b,v[a+116>>2]);if(v[a+120>>2]&2147482624){break b}bL(b,1024);break b}v[a+116>>2]=0}xa=c+16|0}function r9(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);f=z[c+12>>2];k=z[d+12>>2];h=z[c+8>>2];l=z[d+8>>2];i=z[c>>2];m=z[d>>2];j=z[c+4>>2];n=z[d+4>>2];e=C(C(f*k)+C(C(h*l)+C(C(i*m)+C(j*n))));c=e=C(10000000168623835e-32)){g=C(K(g));e=B9(g,e);o=Q9(C(e*b));p=f;f=C(C(1)/g);b=C(f*Q9(C(e*C(C(1)-b))));f=C(f*o);e=c?C(-f):f;f=C(C(p*b)+C(k*e));j=C(C(j*b)+C(n*e));i=C(C(i*b)+C(m*e));h=C(C(h*b)+C(l*e))}z[a+12>>2]=f;z[a+8>>2]=h;z[a+4>>2]=j;z[a>>2]=i}function J6(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?38053:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,28,c,16913,103)|0;v[a+4>>2]=b;v[b>>2]=0;b=v[37696];c=v[37696];c=(f=b+12|0,g=2059,h=Ba[v[v[c>>2]+20>>2]](c)|0?24921:63804,i=18281,j=87,e=v[v[b+12>>2]+8>>2],Ba[e](f|0,g|0,h|0,i|0,j|0)|0);if(!c){v[a>>2]=0;return}b=c+11&-8;v[b-4>>2]=b-c;v[a>>2]=b;if(b){c=0;while(1){b=v[a>>2]+(c<<4)|0;t[b+8|0]=1;v[b>>2]=0;v[b+4>>2]=0;d=v[a+4>>2];v[b>>2]=v[d>>2];v[d>>2]=b;c=c+1|0;if((c|0)!=128){continue}break}}}function ez(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=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?33561:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<4)+e|0;c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;d=d+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function UK(a,b){var c=0,d=0,e=0,f=0;c=v[a+384>>2];f=w[c+5|0];c=w[c+4|0];d=a+316|0;e=a+4|0;VK(a,b,d,e,a+96|0,1,1);VK(a,b,d,e,a+224|0,f,c);c=v[a+264>>2];f=v[a+164>>2];d=v[a+136>>2];a:{if(!d){break a}e=v[a+292>>2];if(c){WK(b,v[a+316>>2],d,c,v[a+152>>2],v[a+280>>2],v[a+156>>2],v[a+284>>2],v[a+132>>2],v[a+260>>2])}if(!e){break a}WK(b,v[a+316>>2],d,e,v[a+152>>2],v[a+304>>2],v[a+156>>2],v[a+308>>2],v[a+132>>2],v[a+288>>2])}if(!(!f|!c)){WK(b,v[a+316>>2],f,c,v[a+176>>2],v[a+280>>2],v[a+180>>2],v[a+284>>2],v[a+160>>2],v[a+260>>2])}}function KB(a,b){var c=0,d=0,e=0;d=v[a+48>>2];if(d){c=v[d+8>>2];a:{if((c|0)<0|!(c&2147483647)){break a}c=v[d>>2];if(!c){break a}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,c)}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+48>>2]=0;d=v[a+36>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+36>>2]=0;d=v[a+8>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-4|0)}v[a+8>>2]=0;pY(a+12|0);d=v[a>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+40>>2]=0;v[a>>2]=0;v[a+4>>2]=0;if(b){I9(v[a+52>>2],0,v[a+56>>2]<<2)}v[a+60>>2]=0}function Lp(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;if(v[(w[a+5580|0]&4?5564:2392)+a>>2]&512){Ba[v[v[a>>2]+400>>2]](a,11709,195)}if(v[a+4656>>2]){a9(v[37696],8,11709,203,64569,0);b=v[a+4656>>2];if((b|0)==1){Ba[v[v[a>>2]+216>>2]](a,1)|0;b=v[a+4656>>2]}if((b|0)==2){Ba[v[v[a>>2]+204>>2]](a,0)}Ba[v[v[a>>2]+220>>2]](a,1,0)|0}b=v[37393];d=v[b+8>>2];a:{if(!d){break a}e=v[b+4>>2];while(1){f=(c<<2)+e|0;if(v[f>>2]!=(a|0)){c=c+1|0;if((d|0)!=(c|0)){continue}break a}break}c=b;b=d-1|0;v[c+8>>2]=b;v[f>>2]=v[(b<<2)+e>>2];Ba[v[v[a>>2]+4>>2]](a)}}function Xp(a,b,c,d){var e=0,f=0,g=0,h=0;f=xa-224|0;xa=f;e=a+16|0;g=b+48|0;h=v[b+52>>2];a:{if(!(w[(h&1?v[b+56>>2]:(g+v[((h>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8)){b:{if(!w[a+4801|0]){h=e;e=x[b+24>>1]<9?f:0;xu(h,g,0,e);ju(b+20|0,a,b,d,e,c);break b}xu(e,g,0,0);ju(b+20|0,a,b,d,0,c)}if(!v[b+16>>2]){break a}ph(b+12|0);break a}xu(e,g,1,0);ju(b+20|0,a,b,d,0,c)}c=v[a+5936>>2];v[b+44>>2]=c;v[f+220>>2]=b;c:{if(c>>>0>=(v[a+5940>>2]&2147483647)>>>0){Zp(a+5932|0,f+220|0);break c}v[v[a+5932>>2]+(c<<2)>>2]=b;v[a+5936>>2]=c+1}xa=f+224|0}function to(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0);bj(a,0,b,c);c=1;c=z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?c:z[b+8>>2]!=C(0);e=z[a+308>>2];b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}f=z[b+5148>>2];b=e>2]!=0?1:b){c=a+48|0;e=b?f:e;a:{b:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:b=v[c>>2];if(w[b+4785|0]){break a}default:z[a+308>>2]=e;v[a+312>>2]=0;UG(a- -64|0,e,1);return;case 1:break b}}b=v[c>>2]}z[a+308>>2]=e;v[a+312>>2]=0;Xu(b,c);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}}function ro(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0);bj(a,b,0,c);c=1;c=z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?c:z[b+8>>2]!=C(0);e=z[a+308>>2];b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}f=z[b+5148>>2];b=e>2]!=0?1:b){c=a+48|0;e=b?f:e;a:{b:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:b=v[c>>2];if(w[b+4785|0]){break a}default:z[a+308>>2]=e;v[a+312>>2]=0;UG(a- -64|0,e,1);return;case 1:break b}}b=v[c>>2]}z[a+308>>2]=e;v[a+312>>2]=0;Xu(b,c);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}}function RK(a,b,c){var d=0,e=0,f=0,g=0;d=v[b>>2];b=d>>>3|0;a:{if(d&4){v[v[a+64>>2]+(b<<2)>>2]=-1;v[a+88>>2]=v[a+88>>2]+1;d=v[a+40>>2];f=d+1|0;b=v[a+44>>2];b:{if(f>>>0>b>>>0){b=b<<1;b=b>>>0>>0?f:b;b=b>>>0>1024?b:1024;v[a+44>>2]=b;g=v[a+36>>2];b=b<<2;if(b){e=v[37696]+12|0;b=Ba[v[v[e>>2]+8>>2]](e,b,24422,13489,890)|0}else{b=0}if(d){H9(b,g,d<<2)}if(!g){break b}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,g);break b}b=v[a+36>>2]}v[a+40>>2]=f;v[a+36>>2]=b;a=(d<<2)+b|0;break a}a=v[a+36>>2]+(b<<2)|0;c=v[a>>2]}v[a>>2]=c|-2147483648}function GJ(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;h=v[a+48>>2];f=h+15&-16;v[d>>2]=f;e=v[a+52>>2];g=B(b,40)+((((c&15)!=0)<<4)+c&-16)|0;a:{b:{if(e>>>0>=g+f>>>0){b=v[a+44>>2];c=f;break b}b=0;if(w[a- -64|0]){break a}c=e;while(1){c=c<<1;v[a+52>>2]=c;if(v[d>>2]+g>>>0>c>>>0){continue}break}if(c){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,c,24422,17904,169)|0}else{b=0}i=H9(b,v[a+44>>2],e);e=v[a+44>>2];if(e){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+44>>2]=i;c=v[d>>2]}v[a+60>>2]=c;v[a+48>>2]=v[a+48>>2]+((g-h|0)+f|0);b=b+c|0}return b}function Bw(a,b){if((v[a+40>>2]&2147483647)>>>0>>0){Cw(a+32|0,b)}v[a+36>>2]=b;if((v[a+52>>2]&2147483647)>>>0>>0){Cw(a+44|0,b)}v[a+48>>2]=b;if((v[a- -64>>2]&2147483647)>>>0>>0){Cw(a+56|0,b)}v[a+60>>2]=b;if((v[a+76>>2]&2147483647)>>>0>>0){Cw(a+68|0,b)}v[a+72>>2]=b;if((v[a+88>>2]&2147483647)>>>0>>0){Cw(a+80|0,b)}v[a+84>>2]=b;if((v[a+100>>2]&2147483647)>>>0>>0){Cw(a+92|0,b)}v[a+96>>2]=b;b=b<<2;I9(v[a+32>>2],0,b);I9(v[a+44>>2],0,b);I9(v[a+56>>2],0,b);I9(v[a+92>>2],0,b);I9(v[a+68>>2],0,b);I9(v[a+80>>2],0,b)}function lY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);b=v[b+4>>2];i=z[b+72>>2];e=z[c+8>>2];j=z[b- -64>>2];f=z[c>>2];k=z[b+68>>2];g=z[c+4>>2];h=C(C(i*e)+C(C(j*f)+C(k*g)));l=z[b+88>>2];m=z[b+80>>2];n=z[b+84>>2];o=C(C(l*e)+C(C(m*f)+C(n*g)));c=h>o;p=h;h=z[b+56>>2];q=C(h*e);e=z[b+48>>2];r=C(e*f);f=z[b+52>>2];g=C(q+C(r+C(f*g)));b=!(po);v[d>>2]=b?c?1:2:0;v[a+12>>2]=0;z[a+8>>2]=b?c?i:l:h;z[a+4>>2]=b?c?k:n:f;z[a>>2]=b?c?j:m:e}function CP(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=v[v[a+1140>>2]+4>>2];d=v[a+1152>>2];i=v[d+40>>2];if(i){k=v[d+36>>2];while(1){g=(h<<2)+k|0;e=v[g>>2];f=v[e+36>>2];a:{if((f|0)==-1){break a}f=f<<2;if(v[f+v[d+12>>2]>>2]!=-1){break a}e=v[e+4>>2];e=v[(w[v[e+44>>2]+9|0]-1>>>0<2?e:0)+44>>2];g=Ba[v[v[c>>2]>>2]](c,v[((w[e+9|0]<<2)+149664|0)+40>>2]+e|0,v[37419]+v[v[g>>2]+28>>2]|0)|0;v[f+v[d+12>>2]>>2]=g}h=h+1|0;if((i|0)!=(h|0)){continue}break}}v[d+40>>2]=0;Ba[v[v[b>>2]>>2]](b,v[d+12>>2],v[d+24>>2],j,v[d+4>>2],a+2516|0)}function jz(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}f=v[a>>2];f=Ba[v[v[f>>2]+8>>2]](f,d,16608,553)|0}d=v[a+4>>2];c=v[a+8>>2];if((c|0)>0){g=(c<<5)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}d=v[a+4>>2]}if(!(!d|v[a+12>>2]<0)){c=v[a>>2];Ba[v[v[c>>2]+12>>2]](c,d)}v[a+12>>2]=b;v[a+4>>2]=f}function $H(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(w[a+36|0]){break a}g=v[b+180>>2];if(v[g+(v[a+40>>2]<<2)>>2]==-1){break a}f=v[a+44>>2];if(v[(f<<2)+g>>2]==-1){break a}d=v[a+48>>2];if(!v[d+8>>2]){break a}if(v[d+20>>2]==-1){e=0;d=f>>>5|0;if(d>>>0>=(v[b+164>>2]&2147483647)>>>0|!(v[v[b+160>>2]+(d<<2)>>2]>>>f&1)){break a}}e=b+196|0;f=b+208|0;d=v[b+400>>2];h=v[v[b+192>>2]+4>>2];i=v[v[b+276>>2]+4>>2];b:{if(c){aI(a,d,i,h,g,f,e,c+4|0,c+28|0);break b}aI(a,d,i,h,g,f,e,b+304|0,b+328|0)}e=0}return e|0}function Q3(a,b){v[a+8>>2]=b;v[a+4>>2]=0;v[a+12>>2]=a+16;v[a+60>>2]=0;v[a+64>>2]=0;v[a+52>>2]=-25165825;v[a+56>>2]=-25165825;v[a+44>>2]=2122317823;v[a+48>>2]=-25165825;v[a+36>>2]=2122317823;v[a+40>>2]=2122317823;v[a+28>>2]=0;v[a+32>>2]=0;t[a+24|0]=0;v[a>>2]=144836;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+16>>2]=140756;b=a+104|0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;y$(a+128|0);v[a+20>>2]=1;return a}function pX(a,b,c,d,e,f,g){var h=0;h=xa-16|0;xa=h;t[h+7|0]=73;t[h+6|0]=67;t[h+5|0]=69;t[h+4|0]=f^1;Ba[v[v[g>>2]>>2]](g,h+7|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+6|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+5|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+4|0,1)|0;t[h+11|0]=a;t[h+10|0]=b;t[h+9|0]=c;t[h+8|0]=d;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;v[h+12>>2]=e;if(f){v[h+12>>2]=e<<8&16711680|e<<24|(e>>>8&65280|e>>>24)}Ba[v[v[g>>2]>>2]](g,h+12|0,4)|0;xa=h+16|0;return 1}function oX(a,b,c,d,e,f,g){var h=0;h=xa-16|0;xa=h;t[h+7|0]=78;t[h+6|0]=88;t[h+5|0]=83;t[h+4|0]=f^1;Ba[v[v[g>>2]>>2]](g,h+7|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+6|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+5|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+4|0,1)|0;t[h+11|0]=a;t[h+10|0]=b;t[h+9|0]=c;t[h+8|0]=d;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;v[h+12>>2]=e;if(f){v[h+12>>2]=e<<8&16711680|e<<24|(e>>>8&65280|e>>>24)}Ba[v[v[g>>2]>>2]](g,h+12|0,4)|0;xa=h+16|0;return 1}function mW(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);if(c){a=v[a+48>>2];while(1){f=B(w[b+g|0],12)+d|0;h=z[f+8>>2];i=z[f>>2];j=z[f+4>>2];k=z[a+80>>2];l=z[a+48>>2];m=z[a+64>>2];n=z[a+84>>2];o=z[a+52>>2];p=z[a+68>>2];q=z[a+88>>2];r=z[a+56>>2];s=z[a+72>>2];f=(g<<4)+e|0;v[f+12>>2]=0;z[f+8>>2]=C(q*h)+C(C(r*i)+C(j*s));z[f+4>>2]=C(n*h)+C(C(o*i)+C(j*p));z[f>>2]=C(k*h)+C(C(l*i)+C(j*m));g=g+1|0;if((g|0)!=(c|0)){continue}break}}}function BT(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=C(0);g=xa-48|0;xa=g;h=v[c+36>>2];if(h){i=v[((v[a+96>>2]<<2)+a|0)+100>>2];j=v[a+8>>2];k=v[c+40>>2];v[g+32>>2]=2;l=z[b+44>>2];z[g+36>>2]=z[b+40>>2];z[g+40>>2]=l*C(.5);z[g+16>>2]=A[d>>3]-A[c+12>>3];z[g+20>>2]=A[d+8>>3]-A[c+20>>3];z[g+24>>2]=A[d+16>>3]-A[c+28>>3];z[g>>2]=z[a+244>>2];z[g+4>>2]=z[a+248>>2];z[g+8>>2]=z[a+252>>2];z[g+12>>2]=z[a+256>>2];a=vT(a,c,f,e,g+32|0,g,h,B(k,36)+j|0,h>>>0>i>>>0?i:0)}else{a=0}xa=g+48|0;return a|0}function Rv(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=v[37696];e=d+12|0;d=(i=e,j=c,k=Ba[v[v[d>>2]+20>>2]](d)|0?29841:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}e=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<4)+d|0;f=e;c=d;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];z[c+12>>2]=z[f+12>>2];f=f+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+8>>2]=b;v[a>>2]=d}function R4(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=v[37696];e=d+12|0;d=(i=e,j=c,k=Ba[v[v[d>>2]+20>>2]](d)|0?42681:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}e=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<4)+d|0;f=e;c=d;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];z[c+12>>2]=z[f+12>>2];f=f+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+8>>2]=b;v[a>>2]=d}function FT(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=xa-16|0;xa=h;Ba[v[v[c>>2]+156>>2]](h+8|0,c);a:{if(w[h+8|0]&4){break a}g=v[a+4>>2];b:{if(!v[g+36>>2]){break b}f=(c<<15^-1)+c|0;f=B(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;f=v[v[g+12>>2]+((v[g+20>>2]-1&(f>>>16^f))<<2)>>2];if((f|0)==-1){break b}j=v[g+8>>2];g=v[g+4>>2];while(1){f=f<<2;if(v[f+g>>2]==(c|0)){break a}f=v[f+j>>2];if((f|0)!=-1){continue}break}}a=v[a+8>>2];if(!a){i=2;break a}i=Ba[v[v[a>>2]>>2]](a,b,c,d,e)|0}xa=h+16|0;return i|0}function KS(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0);c=xa-32|0;xa=c;f=C(Ba[v[v[a>>2]+116>>2]](a));Ba[v[v[a>>2]+120>>2]](a,b)|0;d=Ba[v[v[a>>2]+16>>2]](a)|0;e=v[d+20>>2];v[c+24>>2]=v[d+16>>2];v[c+28>>2]=e;e=v[d+12>>2];v[c+16>>2]=v[d+8>>2];v[c+20>>2]=e;e=v[d+4>>2];v[c+8>>2]=v[d>>2];v[c+12>>2]=e;g=z[a+36>>2];h=z[a+44>>2];b=C(b-f);A[c+16>>3]=A[c+16>>3]+ +C(C(b*z[a+40>>2])*C(.5));A[c+24>>3]=A[c+24>>3]+ +C(C(b*h)*C(.5));A[c+8>>3]=A[c+8>>3]+ +C(C(b*g)*C(.5));Ba[v[v[a>>2]+12>>2]](a,c+8|0)|0;xa=c+32|0}function hL(a){a=a|0;var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;b=v[a+4>>2];d=v[b+332>>2];if(d){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}v[b+332>>2]=0;v[b+336>>2]=0;a:{if(y[a+12>>2]>=1025){v[c+8>>2]=1073741823;v[c+12>>2]=1073741823;b=a+8|0;iL(b,c+8|0);bL(b,v[a+12>>2]);if(v[a+16>>2]&2147482624){break a}bL(b,1024);break a}v[a+12>>2]=0}b:{if(y[a+24>>2]>=1025){v[c+8>>2]=1073741823;v[c+12>>2]=1073741823;b=a+20|0;iL(b,c+8|0);bL(b,v[a+24>>2]);if(v[a+28>>2]&2147482624){break b}bL(b,1024);break b}v[a+24>>2]=0}xa=c+16|0}function ew(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=xa-32|0;xa=f;Ba[v[v[a>>2]+156>>2]](f,a,b);b=v[f+4>>2];v[d>>2]=v[f>>2];v[d+4>>2]=b;b=v[f+12>>2];v[d+8>>2]=v[f+8>>2];v[d+12>>2]=b;b=v[f+20>>2];v[d+16>>2]=v[f+16>>2];v[d+20>>2]=b;b=v[f+28>>2];v[d+24>>2]=v[f+24>>2];v[d+28>>2]=b;Ba[v[v[a>>2]+156>>2]](f,a,c);a=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=a;a=v[f+12>>2];v[e+8>>2]=v[f+8>>2];v[e+12>>2]=a;a=v[f+20>>2];v[e+16>>2]=v[f+16>>2];v[e+20>>2]=a;a=v[f+28>>2];v[e+24>>2]=v[f+24>>2];v[e+28>>2]=a;xa=f+32|0}function F8(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);e=xa-48|0;xa=e;Ba[v[v[a>>2]+76>>2]](e,a);g=z[e+8>>2];f=z[c+8>>2];h=C(f+f);i=z[e>>2];f=z[c>>2];j=C(f+f);f=z[c+4>>2];k=C(f+f);l=z[e+4>>2];m=C(C(g*h)+C(C(i*j)+C(k*l)));f=z[e+12>>2];n=C(C(f*f)+C(-.5));z[e+40>>2]=C(C(g*m)+C(C(h*n)+C(f*C(C(i*k)-C(j*l)))))+z[e+24>>2];z[e+36>>2]=z[e+20>>2]+C(C(l*m)+C(C(k*n)+C(f*C(C(g*j)-C(h*i)))));z[e+32>>2]=z[e+16>>2]+C(C(i*m)+C(C(j*n)+C(f*C(C(l*h)-C(k*g)))));E8(a,b,e+32|0,d);xa=e+48|0}function D4(a,b){var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;v[a>>2]=b;c=b<<6;if(c){b=v[37696]+12|0;f=Ba[v[v[b>>2]+8>>2]](b,c,24422,13134,83)|0;b=v[a>>2]}v[d+12>>2]=f;if(b){while(1){c=v[d+12>>2]+(e<<6)|0;t[c+60|0]=0;v[c+56>>2]=e;v[c+48>>2]=0;v[c+52>>2]=0;v[c+40>>2]=0;v[c+44>>2]=-8388609;v[c+24>>2]=0;v[c+8>>2]=0;u[c+4>>1]=0;v[c>>2]=0;e=e+1|0;if((e|0)!=(b|0)){continue}break}}b=v[a+16>>2];a:{if(b>>>0>=(v[a+20>>2]&2147483647)>>>0){x4(a+12|0,d+12|0);break a}v[v[a+12>>2]+(b<<2)>>2]=v[d+12>>2];v[a+16>>2]=b+1}xa=d+16|0}function uI(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(b,12);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?35453:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=B(c,12)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function tL(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(b,12);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?29627:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=B(c,12)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function oY(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(b,12);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?46393:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=B(c,12)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function hP(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(b,12);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?48101:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=B(c,12)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function c3(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;c9();b=v[37696];a=b+12|0;a=(e=a,f=52,g=Ba[v[v[b>>2]+20>>2]](b)|0?41005:63804,h=10899,i=543,d=v[v[a>>2]+8>>2],Ba[d](e|0,f|0,g|0,h|0,i|0)|0);v[a>>2]=144696;b=v[c+4>>2];v[a+4>>2]=v[c>>2];v[a+8>>2]=b;b=v[c+12>>2];v[a+12>>2]=v[c+8>>2];v[a+16>>2]=b;b=v[c+20>>2];v[a+20>>2]=v[c+16>>2];v[a+24>>2]=b;v[a+28>>2]=v[c+24>>2];v[a+48>>2]=v[c+44>>2];b=v[c+40>>2];v[a+40>>2]=v[c+36>>2];v[a+44>>2]=b;b=v[c+32>>2];v[a+32>>2]=v[c+28>>2];v[a+36>>2]=b;return a|0}function P1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);d=v[b+8>>2];h=z[d+52>>2];i=z[d+20>>2];j=z[d+36>>2];k=z[d+56>>2];b=v[v[b+4>>2]+152>>2]+B(c,12)|0;e=z[b>>2];l=z[d+24>>2];f=z[b+4>>2];m=z[d+40>>2];g=z[b+8>>2];n=z[d+48>>2];o=z[d+32>>2];p=z[d>>2];q=z[d+16>>2];r=z[d+4>>2];s=z[d+8>>2];v[a+12>>2]=0;z[a+8>>2]=k+C(C(m*g)+C(C(s*e)+C(f*l)));z[a+4>>2]=h+C(C(j*g)+C(C(r*e)+C(f*i)));z[a>>2]=n+C(C(o*g)+C(C(p*e)+C(f*q)))}function lV(a){a=a|0;var b=0,c=0;v[a>>2]=140644;b=v[a+176>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+168>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+128>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+88>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+48>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+8>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Vp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{b:{c:{d=x[b+4>>1];switch(d-5|0){case 0:break b;case 1:break c;default:break a}}if(!v[b+40>>2]){break a}a9(v[37696],8,11709,344,71884,0);return}if(!v[b+40>>2]){break a}a9(v[37696],8,11709,352,71884,0);return}d:{e:{switch(v[(v[((d<<2)+86240|0)+72>>2]+b|0)+4>>2]>>>30|0){case 3:d=v[v[((x[b+4>>1]<<2)+86240|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}}Wp(a,b,c);return}a9(v[37696],8,11709,360,75541,0)}function VZ(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);if(e){v[a>>2]=f;v[b>>2]=g;return}v[b>>2]=d;v[a>>2]=c;if(h){e=0;while(1){t[v[b>>2]+e|0]=e;m=z[i+24>>2];n=z[i>>2];o=z[i+12>>2];p=z[i+28>>2];q=z[i+4>>2];r=z[i+16>>2];c=v[a>>2]+B(e,12)|0;d=B(w[e+g|0],12)+f|0;j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];z[c+8>>2]=C(C(j*z[i+8>>2])+C(k*z[i+20>>2]))+C(l*z[i+32>>2]);z[c+4>>2]=C(C(j*q)+C(k*r))+C(l*p);z[c>>2]=C(C(j*n)+C(k*o))+C(l*m);e=e+1|0;if((h|0)!=(e|0)){continue}break}}}function Pf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;if(c){while(1){f=B(g,24)+b|0;d=v[f+16>>2];a:{if(d&4){h=v[a+8>>2];b:{if(t[149520]&1){d=v[37379];break b}d=aa(3,111496)|0;t[149520]=1;v[37379]=d}v[e>>2]=v[f>>2];v[e+8>>2]=v[f+8>>2];ba(d|0,h|0,14696,e|0);break a}if(!(d&16)){break a}h=v[a+8>>2];c:{if(t[149520]&1){d=v[37379];break c}d=aa(3,111496)|0;t[149520]=1;v[37379]=d}v[e>>2]=v[f>>2];v[e+8>>2]=v[f+8>>2];ba(d|0,h|0,23241,e|0)}g=g+1|0;if((g|0)!=(c|0)){continue}break}}xa=e+16|0}function eP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=xa-32|0;xa=d;a:{if(!v[a+2344>>2]){break a}f=1;f=b?f:v[a+1196>>2]==v[v[a+2368>>2]+36>>2]?1:17;b=v[a+2168>>2];g=v[b+8>>2];if(!g){break a}h=v[b+4>>2];b=0;while(1){i=b+1|0;c=v[(b<<2)+h>>2];b=v[c+16>>2];if(!(w[b+10|0]&2)){u[d+22>>1]=0;e=d+8|0;kP(a,e,c,b,f);c=v[a+2344>>2];Ba[v[v[c>>2]+12>>2]](c,e,v[d+24>>2],v[d+28>>2]);u[b+4>>1]=x[b+6>>1];c=b;e=x[b+10>>1]&31;b=x[b+8>>1];u[c+10>>1]=e|(b>>>4|0)+((b&15)!=0)<<5}b=i;if((g|0)!=(b|0)){continue}break}}xa=d+32|0}function _Y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);d=v[b+8>>2];h=z[d+52>>2];i=z[d+20>>2];j=z[d+36>>2];k=z[d+56>>2];b=v[b+4>>2]+(1-c<<4)|0;e=z[b+48>>2];l=z[d+24>>2];f=z[b+52>>2];m=z[d+40>>2];g=z[b+56>>2];n=z[d+48>>2];o=z[d+32>>2];p=z[d>>2];q=z[d+16>>2];r=z[d+4>>2];s=z[d+8>>2];v[a+12>>2]=0;z[a+8>>2]=k+C(C(m*g)+C(C(s*e)+C(f*l)));z[a+4>>2]=h+C(C(j*g)+C(C(r*e)+C(f*i)));z[a>>2]=n+C(C(o*g)+C(C(p*e)+C(f*q)))}function eQ(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,(f<<2)+67|0,24422,16608,553)|0;if(!c){break a}d=c+67&-64;v[d-4>>2]=d-c}e=v[a+4>>2];h=(e<<2)+d|0;if((e|0)>0){g=v[a>>2];c=d;while(1){v[c>>2]=v[g>>2];g=g+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c-v[c-4>>2]|0);e=v[a+4>>2]}v[a+8>>2]=f;v[a>>2]=d;v[a+4>>2]=e+1}function bZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);d=v[b+8>>2];h=z[d+52>>2];i=z[d+20>>2];j=z[d+36>>2];k=z[d+56>>2];b=v[b+4>>2]+(c<<4)|0;e=z[b+48>>2];l=z[d+24>>2];f=z[b+52>>2];m=z[d+40>>2];g=z[b+56>>2];n=z[d+48>>2];o=z[d+32>>2];p=z[d>>2];q=z[d+16>>2];r=z[d+4>>2];s=z[d+8>>2];v[a+12>>2]=0;z[a+8>>2]=k+C(C(m*g)+C(C(s*e)+C(f*l)));z[a+4>>2]=h+C(C(j*g)+C(C(r*e)+C(f*i)));z[a>>2]=n+C(C(o*g)+C(C(p*e)+C(f*q)))}function Ug(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(v[a+36>>2]){i=a+8|0;while(1){a:{b:{e=g<<2;f=v[e+v[a+40>>2]>>2];if((Ba[v[v[f>>2]+24>>2]](f)|0)!=2){break b}f=v[a+40>>2];h=f+e|0;e=v[h>>2];if(v[e+320>>2]!=(b|0)){break b}d=v[a+36>>2]-1|0;v[a+36>>2]=d;v[h>>2]=v[f+(d<<2)>>2];d=(x[e+4>>1]<<2)+86240|0;f=v[d+72>>2];nh(e+v[d>>2]|0,0);ru(i,e+f|0,c);d=1;break a}g=g+1|0}if(y[a+36>>2]>g>>>0){continue}break}}j=Ba[v[v[b>>2]+100>>2]](b)|0,k=0,v[j+96>>2]=k;if(!d){a9(v[37696],2,11066,310,20969,0)}return d}function K9(a){a=a|0;var b=0,c=0,d=0;if(!a){if(v[37372]){b=K9(v[37372])}if(v[37701]){b=K9(v[37701])|b}a=v[37877];if(a){while(1){if(v[a+20>>2]!=v[a+28>>2]){b=K9(a)|b}a=v[a+56>>2];if(a){continue}break}}return b|0}d=v[a+76>>2]>=0;a:{b:{if(v[a+20>>2]==v[a+28>>2]){break b}Ba[v[a+36>>2]](a,0,0)|0;if(v[a+20>>2]){break b}b=-1;break a}b=v[a+8>>2];c=v[a+4>>2];if((b|0)!=(c|0)){b=c-b|0;Ba[v[a+40>>2]](a,b,b>>31,1)|0}b=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;if(!d){break a}}return b|0}function uu(a){var b=0,c=0,d=0,e=0,f=0,g=0;c=xa-16|0;xa=c;b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?37931:63804;f=a,g=Ba[v[v[b+12>>2]+8>>2]](b+12|0,28,d,16755,113)|0,v[f>>2]=g;b=xa-16|0;xa=b;xa=b+16|0;v[a+20>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+24>>2]=16384;b=v[37696];d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,16384,24422,18513,57)|0;e=v[a+12>>2];b=v[a+8>>2];v[c+12>>2]=d;a:{if(b>>>0>=(e&2147483647)>>>0){Us(a+4|0,c+12|0);break a}v[v[a+4>>2]+(b<<2)>>2]=d;v[a+8>>2]=b+1}xa=c+16|0;return a}function H3(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(b,12);if(!c){break a}d=v[37696];e=d+12|0;d=(i=e,j=c,k=Ba[v[v[d>>2]+20>>2]](d)|0?54445:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}e=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,12)+d|0;f=e;c=d;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];f=f+12|0;c=c+12|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+8>>2]=b;v[a>>2]=d}function BN(a,b,c,d,e){var f=0,g=0,h=0,i=0;h=xa-16|0;xa=h;f=v[c+4624>>2];t[b+12|0]=f;i=1;g=w[b+14|0]&-4|(f?2:1);a:{if(!f){u[b+12>>1]=0;t[b+14|0]=g;break a}v[c+7148>>2]=v[c+7148>>2]+1;t[b+14|0]=g;g=f<<2;Oy(c+528|0,f,c,b+12|0,b,b+4|0,h+14|0,b+8|0,e?g:(w[c+7138|0]|a&1?i:(a&256)>>>8|0)?g:0,v[c+7188>>2],(a&128)>>>7|0,0,d,b+13|0,0,0,0,w[c+7139|0],v[c+7172>>2],v[c+7176>>2],v[c+7180>>2],e);if(w[b+12|0]|!v[c+4624>>2]){break a}u[b+12>>1]=0;t[b+14|0]=w[b+14|0]&252|1;v[c+7148>>2]=v[c+7148>>2]-1}xa=h+16|0}function pQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=v[a+32>>2];if(b){while(1){c=v[a+28>>2];if(!(d+16>>>0>=b>>>0|d+4>>>0>=b>>>0)){c=v[a+28>>2]}b=v[v[(d<<2)+c>>2]>>2];c=x[b+148>>1];if(c&4){u[b+148>>1]=c&63999;b=v[b+44>>2];c=w[v[b+176>>2]+31|0]==1?v[b+176>>2]:0;e=v[c>>2];f=v[c+4>>2];g=v[c+8>>2];h=v[c+12>>2];i=v[c+20>>2];j=v[c+16>>2];z[b+40>>2]=z[c+24>>2];v[b+32>>2]=j;v[b+36>>2]=i;v[b+24>>2]=g;v[b+28>>2]=h;v[b+16>>2]=e;v[b+20>>2]=f}b=v[a+32>>2];d=d+1|0;if(b>>>0>d>>>0){continue}break}}}function WO(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=xa-16|0;xa=h;v[h+12>>2]=b;i=w[b+20|0];d=B(i,12)+a|0;f=v[d+56>>2];v[b+8>>2]=f;g=d+52|0;e=f;j=v[d+60>>2]&2147483647;if(!j){XO(g,64);j=v[d+60>>2]&2147483647;e=v[d+56>>2]}a:{if(e>>>0>=j>>>0){YO(g,h+12|0);break a}v[v[g>>2]+(e<<2)>>2]=b;v[d+56>>2]=e+1}if(c){a=(i<<2)+a|0;b=v[a+88>>2];if(f>>>0>b>>>0){e=v[g>>2];d=e+(f<<2)|0;c=v[d>>2];i=d;d=e;e=b<<2;d=v[d+e>>2];v[i>>2]=d;v[e+v[g>>2]>>2]=c;v[c+8>>2]=b;v[d+8>>2]=f;b=v[a+88>>2]}v[a+88>>2]=b+1}xa=h+16|0}function i$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=c&1;e=v[b+60>>2];c=c>>>1|0;a:{if(t[(e+(c<<2)|0)+2|0]<0){if(!d){d=u[(c<<2)+e>>1];b=(c+v[b+44>>2]<<2)+e|0;f=u[b+4>>1];b=u[b>>1];c=b;break a}d=c+1|0;b=u[(d+v[b+44>>2]<<2)+e>>1];c=u[(c<<2)+e>>1];d=u[(d<<2)+e>>1];f=d;break a}if(d){f=c+1|0;d=u[(f<<2)+e>>1];b=v[b+44>>2];c=u[(b+c<<2)+e>>1];b=u[(b+f<<2)+e>>1];f=b;break a}d=(c<<2)+e|0;f=u[d+4>>1];b=u[(c+v[b+44>>2]<<2)+e>>1];d=u[d>>1];c=d}v[a+4>>2]=-1082130432;z[a+8>>2]=-C(c-f|0);z[a>>2]=-C(d-b|0)}function ft(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=C(k);var l=0,m=0;l=xa-32|0;xa=l;m=x[g>>1];if((m&768)==768){a9(v[37696],4,7394,130,13931,0);m=x[g>>1]&-257;u[g>>1]=m}if((m&528)==528){a9(v[37696],4,7394,136,23643,0);m=x[g>>1]&-17;u[g>>1]=m}if(!(!(k>C(0))|!(m&256))){a9(v[37696],4,7394,144,14060,0);m=x[g>>1];k=C(0)}u[l>>1]=m;z[l+16>>2]=e;v[l+8>>2]=0;z[l+28>>2]=k;v[l+24>>2]=c;v[l+20>>2]=b;v[l+12>>2]=d;a=gt(a,l+8|0,f,l,j,h,i,0);xa=l+32|0;return a|0}function OH(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=v[a>>2];f=Ba[v[v[e>>2]+8>>2]](e,c,16608,553)|0}e=v[a+4>>2];c=v[a+8>>2];if((c|0)>0){g=(c<<5)+f|0;d=e;c=f;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+12>>2]<0)){c=v[a>>2];Ba[v[v[c>>2]+12>>2]](c,e)}v[a+12>>2]=b;v[a+4>>2]=f}function vu(a,b,c){var d=0,e=0;d=xa-272|0;xa=d;e=v[b+4>>2];a:{if((e&-1073741824)!=-2147483648){break a}t[d+256|0]=1;v[d+264>>2]=0;v[d+268>>2]=64;a=a+16|0;b=v[((e>>>22&60)+89188|0)+12>>2]+b|0;v[d+260>>2]=d;b:{if(c){NP(a,b,d,1);break b}LP(a,b,d,1)}c=v[d+260>>2];if(v[d+264>>2]){b=0;while(1){au(v[(b<<2)+c>>2]-16|0);b=b+1|0;if(b>>>0>2]){continue}break}c=v[d+260>>2]}a=v[d+268>>2];if((a|0)<0|!(a&2147483647)|(!c|(c|0)==(d|0))){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,c)}xa=d+272|0}function mK(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=xa-16|0;xa=d;f=v[a- -64>>2];e=v[a+72>>2];h=v[b+20>>2];v[d+12>>2]=-1;v[d+8>>2]=h;h=a+60|0;a:{if((v[a+68>>2]&2147483647)>>>0<=f>>>0){lK(h,d+8|0);break a}i=v[d+12>>2];g=v[a+60>>2]+(f<<3)|0;v[g>>2]=v[d+8>>2];v[g+4>>2]=i;v[a+64>>2]=v[a+64>>2]+1}e=e+B(c,20)|0;c=e+16|0;g=v[e+16>>2];b:{if((g|0)==-1){v[e+16>>2]=f;c=e+12|0;break b}v[(v[h>>2]+(g<<3)|0)+4>>2]=f}v[c>>2]=f;a=v[a+72>>2]+B(v[b+20>>2],20)|0;v[a+4>>2]=v[a+4>>2]+1;xa=d+16|0}function W3(a,b){v[a+8>>2]=b;v[a+4>>2]=0;v[a+12>>2]=a+16;v[a+60>>2]=0;v[a+64>>2]=0;v[a+52>>2]=-25165825;v[a+56>>2]=-25165825;v[a+44>>2]=2122317823;v[a+48>>2]=-25165825;v[a+36>>2]=2122317823;v[a+40>>2]=2122317823;v[a+28>>2]=0;v[a+32>>2]=0;t[a+24|0]=0;v[a>>2]=144868;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+16>>2]=140672;v[a+196>>2]=0;v[a+200>>2]=0;v[a+188>>2]=0;v[a+176>>2]=4;v[a+184>>2]=0;v[a+20>>2]=0;return a}function M1(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);b=v[b+48>>2];e=z[b+72>>2];i=z[b- -64>>2];j=z[b+68>>2];k=z[b+56>>2];l=z[b+52>>2];f=z[b+88>>2];m=z[b+80>>2];n=z[b+84>>2];o=z[b+48>>2];d=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];v[a+12>>2]=0;p=e;q=f;e=C(C(e*d)+C(C(i*g)+C(j*h)));f=C(C(f*d)+C(C(m*g)+C(n*h)));b=e>f;d=C(C(k*d)+C(C(o*g)+C(l*h)));c=!(d>e)|!(d>f);z[a+8>>2]=c?b?p:q:k;z[a+4>>2]=c?b?j:n:l;z[a>>2]=c?b?i:m:o}function AG(a,b){var c=0,d=0;c=xa-16|0;xa=c;z[a+16>>2]=z[b>>2];z[a+20>>2]=z[b+4>>2];z[a+24>>2]=z[b+8>>2];z[a+28>>2]=z[b+12>>2];z[a+32>>2]=z[b+16>>2];z[a+36>>2]=z[b+20>>2];z[a+40>>2]=z[b+24>>2];a=v[a>>2];if(a){b=v[a+100>>2];z[a+64>>2]=z[b>>2];z[a+68>>2]=z[b+4>>2];z[a+72>>2]=z[b+8>>2];z[a+76>>2]=z[b+12>>2];z[a+80>>2]=z[b+16>>2];z[a+84>>2]=z[b+20>>2];z[a+88>>2]=z[b+24>>2];WJ(a);b=v[v[a+40>>2]+1012>>2];d=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(d|0)==2,c+8|0)}xa=c+16|0}function kY(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);b=v[b+4>>2];e=z[b+72>>2];i=z[b- -64>>2];j=z[b+68>>2];k=z[b+56>>2];l=z[b+52>>2];f=z[b+88>>2];m=z[b+80>>2];n=z[b+84>>2];o=z[b+48>>2];d=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];v[a+12>>2]=0;p=e;q=f;e=C(C(e*d)+C(C(i*g)+C(j*h)));f=C(C(f*d)+C(C(m*g)+C(n*h)));b=e>f;d=C(C(k*d)+C(C(o*g)+C(l*h)));c=!(d>e)|!(d>f);z[a+8>>2]=c?b?p:q:k;z[a+4>>2]=c?b?j:n:l;z[a>>2]=c?b?i:m:o}function QJ(a,b){var c=0,d=0,e=0,f=0,g=0;f=v[a>>2];if(f){a:{b:{e=v[f+40>>2];c=v[e+2384>>2];d=v[c+12>>2]+B(v[c+8>>2],12)|0;a=v[d+4>>2];if(a){v[d+4>>2]=v[a>>2];break b}c:{d:{a=v[d+8>>2];if((a|0)==v[c>>2]){break d}g=v[c+4>>2];v[d+8>>2]=a+1;d=v[d>>2];if(!d){break d}a=d+B(a,g)|0;break c}a=MO(c)}if(a){break b}a=0;break a}a=_R(a,f,b)}c=((v[b+68>>2]<<2)+e|0)+2676|0;v[c>>2]=v[c>>2]+1;c=v[e+1012>>2];Ba[v[v[c>>2]+16>>2]](c,a+12|0,v[a+32>>2]);a=v[v[e+976>>2]+1024>>2];Ba[v[v[a>>2]+44>>2]](a,b+32|0)}}function I_(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);g=xa+-64|0;xa=g;h=z[b>>2];i=z[c>>2];k=z[b+4>>2];j=z[c+4>>2];l=z[b+8>>2];z[g+56>>2]=z[c+8>>2]+l;z[g+52>>2]=j+k;z[g+48>>2]=i+h;i=z[d>>2];j=z[d+4>>2];z[g+40>>2]=l+z[d+8>>2];z[g+36>>2]=k+j;z[g+32>>2]=h+i;D_(g+8|0,a,b,g+48|0,g+32|0,g+28|0,g+24|0);if(e){z[e>>2]=z[g+28>>2]}if(f){z[f>>2]=z[g+24>>2]}xa=g- -64|0;h=C(z[g+16>>2]-z[a+8>>2]);i=C(h*h);h=C(z[g+8>>2]-z[a>>2]);j=C(h*h);h=C(z[g+12>>2]-z[a+4>>2]);return C(i+C(j+C(h*h)))}function hC(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=v[a+16>>2];g=b<<2;f=v[c+g>>2];e=v[a>>2]-1|0;v[a>>2]=e;if((f|0)!=(e|0)){h=v[v[a+20>>2]+(e<<2)>>2];d=v[a+8>>2];c=d+B(f,24)|0;d=d+B(e,24)|0;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];c=v[a+12>>2];d=c+(f<<3)|0;c=c+(e<<3)|0;i=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=i;v[v[a+20>>2]+(f<<2)>>2]=h;c=v[a+16>>2];v[c+(h<<2)>>2]=f}v[c+g>>2]=v[a+24>>2];v[a+24>>2]=b;return e}function LQ(a){a=a|0;var b=0,c=0;v[a>>2]=126184;b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+80>>2];if((b|0)==(a+60|0)){t[a+76|0]=0;break a}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+56>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+48>>2];if((b|0)==(a+28|0)){t[a+44|0]=0;break b}if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function CB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=v[a>>2];j=g+x[a+4>>1]|0;if(g>>>0>>0){while(1){a=(g<<5)+b|0;qB(a,d,e,c);f=v[a+24>>2];a:{if(!f){break a}h=w[f+1|0];if(!h){break a}a=f+176|0;if((h|0)!=1){f=w[f|0]==2?96:160;k=h&254;i=0;while(1){if(!(w[a+84|0]&4)){v[a+28>>2]=0}a=a+f|0;if(!(w[a+84|0]&4)){v[a+28>>2]=0}a=a+f|0;i=i+2|0;if((k|0)!=(i|0)){continue}break}}if(!(h&1)|w[a+84|0]&4){break a}v[a+28>>2]=0}g=g+1|0;if((j|0)!=(g|0)){continue}break}}}function vh(a){var b=0,c=0,d=0,e=0,f=0;a:{c=v[37389];if(!v[c+636>>2]){break a}b=(a<<15^-1)+a|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=v[c+612>>2]+((v[c+620>>2]-1&(b>>>16^b))<<2)|0;b=v[d>>2];if((b|0)==-1){break a}e=v[c+608>>2];f=v[c+604>>2];if(v[f+(b<<2)>>2]!=(a|0)){while(1){d=(b<<2)+e|0;b=v[d>>2];if((b|0)==-1){break a}if(v[(b<<2)+f>>2]!=(a|0)){continue}break}}a=(b<<2)+e|0;v[d>>2]=v[a>>2];v[c+636>>2]=v[c+636>>2]-1;v[c+632>>2]=v[c+632>>2]+1;v[a>>2]=v[c+628>>2];v[c+628>>2]=b}}function kK(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=xa-16|0;xa=d;f=v[a- -64>>2];e=v[a+72>>2];b=v[b+20>>2];v[d+12>>2]=-1;v[d+8>>2]=c;h=a+60|0;a:{if((v[a+68>>2]&2147483647)>>>0<=f>>>0){lK(h,d+8|0);break a}i=v[d+12>>2];g=v[a+60>>2]+(f<<3)|0;v[g>>2]=v[d+8>>2];v[g+4>>2]=i;v[a+64>>2]=v[a+64>>2]+1}e=e+B(b,20)|0;b=e+16|0;g=v[e+16>>2];b:{if((g|0)==-1){v[e+16>>2]=f;b=e+12|0;break b}v[(v[h>>2]+(g<<3)|0)+4>>2]=f}v[b>>2]=f;a=v[a+72>>2]+B(c,20)|0;v[a+4>>2]=v[a+4>>2]+1;xa=d+16|0}function QT(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0);c=xa-32|0;xa=c;f=C(Ba[v[v[a>>2]+108>>2]](a));Ba[v[v[a>>2]+120>>2]](a,b)|0;d=Ba[v[v[a>>2]+16>>2]](a)|0;e=v[d+20>>2];v[c+24>>2]=v[d+16>>2];v[c+28>>2]=e;e=v[d+12>>2];v[c+16>>2]=v[d+8>>2];v[c+20>>2]=e;e=v[d+4>>2];v[c+8>>2]=v[d>>2];v[c+12>>2]=e;g=z[a+36>>2];h=z[a+44>>2];b=C(b-f);A[c+16>>3]=A[c+16>>3]+ +C(b*z[a+40>>2]);A[c+24>>3]=A[c+24>>3]+ +C(b*h);A[c+8>>3]=A[c+8>>3]+ +C(b*g);Ba[v[v[a>>2]+12>>2]](a,c+8|0)|0;xa=c+32|0}function qj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(d){d=d-16|0}else{d=0}z[a+296>>2]=z[b>>2];z[a+300>>2]=z[b+4>>2];z[a+304>>2]=z[b+8>>2];e=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:f=v[e>>2];if(w[f+4785|0]){break b}default:CG(a- -64|0,b);break a;case 1:break c}}f=v[e>>2]}Xu(f,e);v[a+316>>2]=v[a+316>>2]|8388608}if(d){a=v[a+320>>2];d=Ba[v[v[a>>2]+100>>2]](a)|0;a=1;cj(d,z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?a:z[b+8>>2]!=C(0),c)}}function pj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(d){d=d-16|0}else{d=0}z[a+284>>2]=z[b>>2];z[a+288>>2]=z[b+4>>2];z[a+292>>2]=z[b+8>>2];e=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:f=v[e>>2];if(w[f+4785|0]){break b}default:BG(a- -64|0,b);break a;case 1:break c}}f=v[e>>2]}Xu(f,e);v[a+316>>2]=v[a+316>>2]|4194304}if(d){a=v[a+320>>2];d=Ba[v[v[a>>2]+100>>2]](a)|0;a=1;cj(d,z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?a:z[b+8>>2]!=C(0),c)}}function cg(a,b){var c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;a:{if(t[149536]&1){e=v[37383];break a}e=aa(2,114384)|0;t[149536]=1;v[37383]=e}c=laa(48);v[c+8>>2]=v[b+8>>2];f=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=f;u[c+12>>1]=x[b+12>>1];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];z[c+28>>2]=z[b+28>>2];z[c+32>>2]=z[b+32>>2];z[c+36>>2]=z[b+36>>2];z[c+40>>2]=z[b+40>>2];v[c+44>>2]=v[b+44>>2];v[d+8>>2]=c;g=+fa(e|0,a|0,4445,d+4|0,d+8|0);ga(v[d+4>>2]);xa=d+16|0;return g!=0}function O9(a){var b=0,c=0;a:{c=T9(a);b=c;b:{if(v[37355]<0){a=N9(a,c,149344);break b}a=N9(a,c,149344)}if((b|0)!=(a|0)){b=a}if((((b|0)!=(c|0)?-1:0)|0)<0){break a}c:{if(v[37356]==10){break c}a=v[37341];if((a|0)==v[37340]){break c}v[37341]=a+1;t[a|0]=10;break a}b=xa-16|0;xa=b;t[b+15|0]=10;a=v[37340];d:{if(!a){if(M9(149344)){break d}a=v[37340]}c=a;a=v[37341];if(!((c|0)==(a|0)|v[37356]==10)){v[37341]=a+1;t[a|0]=10;break d}if((Ba[v[37345]](149344,b+15|0,1)|0)!=1){break d}}xa=b+16|0}}function yP(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=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?29257:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function dz(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=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?34879:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}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,m=0;a:{if(!b){break a}d=b<<3;if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?31807:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function VN(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=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?43713:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function vN(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=v[c+4624>>2];a:{if(!g){break a}b=x[b+34>>1];a=x[a+34>>1];c=0;if(g-1>>>0>=3){j=g&-4;while(1){e=c<<2;f=e+d|0;u[f+2>>1]=b;u[f>>1]=a;f=(e|4)+d|0;u[f+2>>1]=b;u[f>>1]=a;f=(e|8)+d|0;u[f+2>>1]=b;u[f>>1]=a;e=(e|12)+d|0;u[e+2>>1]=b;u[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;u[e+2>>1]=b;u[e>>1]=a;c=c+1|0;i=i+1|0;if((g|0)!=(i|0)){continue}break}}return 1}function SW(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);c=v[b+8>>2];g=z[c+52>>2];h=z[c+36>>2];i=z[c+20>>2];j=z[c+56>>2];k=z[c+40>>2];l=z[c+24>>2];m=z[c+4>>2];n=z[c+8>>2];o=z[c+48>>2];p=z[c+32>>2];b=v[b+4>>2];d=z[b+8>>2];q=z[c>>2];e=z[b>>2];r=z[c+16>>2];f=z[b+4>>2];v[a+12>>2]=0;z[a>>2]=o+C(C(p*d)+C(C(q*e)+C(f*r)));z[a+8>>2]=j+C(C(k*d)+C(C(n*e)+C(f*l)));z[a+4>>2]=g+C(C(h*d)+C(C(m*e)+C(f*i)))}function SM(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=C(0);a:{b=v[a+32>>2];f=v[a+36>>2];if(b>>>0>=f>>>0){break a}g=z[a+40>>2];a=v[a+28>>2];c=f-b|0;if(c&1){d=v[a+12144>>2]+B(b,52)|0;e=v[(v[v[d>>2]+24>>2]<<2)+149600>>2];if(e){Ba[e|0](d,g)}b=b+1|0}if((c|0)==1){break a}while(1){c=B(b,52);d=c+v[a+12144>>2]|0;e=v[(v[v[d>>2]+24>>2]<<2)+149600>>2];if(e){Ba[e|0](d,g)}c=(c+v[a+12144>>2]|0)+52|0;d=v[(v[v[c>>2]+24>>2]<<2)+149600>>2];if(d){Ba[d|0](c,g)}b=b+2|0;if((f|0)!=(b|0)){continue}break}}}function BB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;var f=0,g=0,h=0,i=0,j=0;e=v[a>>2];i=e+x[a+4>>1]|0;if(e>>>0>>0){while(1){a=(e<<5)+b|0;rB(a,c,d);f=v[a+24>>2];a:{if(!f){break a}g=w[f+1|0];if(!g){break a}a=f+176|0;if((g|0)!=1){f=w[f|0]==2?96:160;j=g&254;h=0;while(1){if(!(w[a+84|0]&4)){v[a+28>>2]=0}a=a+f|0;if(!(w[a+84|0]&4)){v[a+28>>2]=0}a=a+f|0;h=h+2|0;if((j|0)!=(h|0)){continue}break}}if(!(g&1)|w[a+84|0]&4){break a}v[a+28>>2]=0}e=e+1|0;if((i|0)!=(e|0)){continue}break}}}function sg(a,b,c){var d=0,e=0;d=b?v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0:d;e=c?v[((v[c+4>>2]>>>22&60)+89188|0)+12>>2]+c|0:e;a:{b:{c:{d:{b=v[a+4>>2];switch((b>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}b=a+12|0;xH(b);vH(b,d,e);break a}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],b>>>24&15);v[a+8>>2]=c}v[c+4>>2]=e;v[c>>2]=d;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}v[a+76>>2]=0;v[a+80>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0}function o9(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);e=z[b+4>>2];g=C(-e);h=z[b>>2];l=C(-h);f=z[b+8>>2];d=z[c+8>>2];j=z[c>>2];k=z[c+4>>2];m=C(C(f*d)+C(C(h*j)+C(e*k)));a:{if(m>C(-1)){i=C(C(e*d)-C(k*f));f=C(C(f*j)+C(d*l));g=C(C(h*k)+C(j*g));d=C(m+C(1));break a}d=C(0);if(C(D(h))>2]=d*e;z[a+8>>2]=g*e;z[a+4>>2]=f*e;z[a>>2]=i*e} -function uV(a){a=a|0;var b=0,c=0;v[a>>2]=140740;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+48>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+48>>2]=0}b=v[a+52>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+52>>2]=0}b=v[a+56>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+60>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+60>>2]=0}b=v[a+64>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+64>>2]=0}return a|0}function kJ(a,b,c,d,e,f,g){var h=0,i=0,j=0;a:{if(!e){if(!v[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=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;e=v[v[a+1968>>2]+((v[a+1976>>2]-1&(b>>>16^b))<<2)>>2];if((e|0)==-1){break a}j=v[a+1964>>2];b=v[a+1960>>2];while(1){i=b+B(e,12)|0;if(!((c|0)==v[i>>2]&v[i+4>>2]==(h|0))){e=v[(e<<2)+j>>2];if((e|0)!=-1){continue}break a}break}e=v[(b+B(e,12)|0)+8>>2];if(!e){break a}}lJ(a,e,4,d,1,f,g)}}function jg(a){a=a|0;var b=C(0),c=C(0),d=C(0),e=0;a:{if(y[a+100>>2]>1|z[a+68>>2]>2]>2]>2]>2];if(c>2]<=C(0)|(!v[a+88>>2]|((p(C(A[a+8>>3])),j(2))&2139095040)==2139095040)){break a}if(((p(C(A[a+16>>3])),j(2))&2139095040)==2139095040|((p(C(A[a+24>>3])),j(2))&2139095040)==2139095040){break a}b=z[a+104>>2];if(b<=C(0)){break a}d=z[a+108>>2];if(d<=C(0)){break a}e=!(C(C(b+b)+d)>2]=1069547520;v[a+64>>2]=1092616192;v[a+68>>2]=1061997773;v[a+56>>2]=1036831949;v[a+60>>2]=1056964608;v[a+32>>2]=0;v[a+36>>2]=1065353216;v[a+96>>2]=0;v[a+100>>2]=1;v[a+48>>2]=0;v[a+52>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;t[a+92|0]=1;v[a+108>>2]=0;v[a+112>>2]=0;v[a>>2]=117768;v[a+104>>2]=0;v[a+40>>2]=0;v[a+44>>2]=1060437492;v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;return a|0}function Zs(a){a=a|0;var b=0,c=0,d=0,e=0;c=v[a+20>>2];d=xa-48|0;xa=d;a=v[a+28>>2];b=a+32|0;z[b+1080>>2]=z[a+6072>>2];bP(b);EH(v[b+1136>>2],v[b+976>>2]);cP(b,c);a=d+8|0;e=v[v[b+976>>2]+1024>>2];Ba[v[v[e>>2]+84>>2]](a,e);FJ(v[b+2168>>2],a,(v[b+2360>>2]&8)>>>3|0);v[b+2356>>2]=v[b+2356>>2]&-7;AK(v[b+976>>2]);v[b+4564>>2]=c;v[b+4568>>2]=1;a:{if(!c){a=v[b+4560>>2];break a}Ba[v[v[c>>2]+16>>2]](c);a=v[v[b+4564>>2]+16>>2];v[b+4560>>2]=a}Ba[v[v[a>>2]+72>>2]](a,b+4544|0);xa=d+48|0}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=xa-32|0;xa=c;d=v[b+4>>2];v[a+440>>2]=v[b>>2];v[a+444>>2]=d;d=v[b+20>>2];v[a+456>>2]=v[b+16>>2];v[a+460>>2]=d;d=v[b+12>>2];v[a+448>>2]=v[b+8>>2];v[a+452>>2]=d;b=v[a+432>>2];if(b){Ba[v[v[b>>2]+76>>2]](c,b);e=A[a+448>>3];f=A[a+440>>3];z[c+24>>2]=A[a+456>>3];z[c+20>>2]=e;z[c+16>>2]=f;z[c>>2]=z[a+20>>2];z[c+4>>2]=z[a+24>>2];z[c+8>>2]=z[a+28>>2];z[c+12>>2]=z[a+32>>2];a=v[a+432>>2];Ba[v[v[a>>2]+248>>2]](a,c)}xa=c+32|0;return 1}function U2(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;f=xa-240|0;xa=f;e=a+4|0;a:{if(!v[a+44>>2]){e=W3(f,e);if(d){v[d>>2]=0}if(M3(e,b,d,0)){if(!(w[a+28|0]&8)){P3(e)}g=(i=c,j=Ba[v[v[e>>2]+8>>2]](e)|0?4:3,k=v[e+12>>2],h=v[v[c>>2]>>2],Ba[h](i|0,j|0,k|0)|0)}X3(e);break a}e=Q3(f,e);if(d){v[d>>2]=0}if(M3(e,b,d,0)){if(!(w[a+28|0]&8)){P3(e)}g=(k=c,j=Ba[v[v[e>>2]+8>>2]](e)|0?4:3,i=v[e+12>>2],h=v[v[c>>2]>>2],Ba[h](k|0,j|0,i|0)|0)}R3(e)}xa=f+240|0;return g|0}function kz(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=v[a+336>>2];d=v[b>>2];v[b>>2]=0;if(!d){break a}b=d;while(1){e=v[b>>2];c=v[a+180>>2];v[c+600>>2]=v[c+600>>2]+v[b+12156>>2];v[c+604>>2]=v[c+604>>2]+v[b+12160>>2];f=b+12164|0;v[c+608>>2]=v[c+608>>2]+v[f>>2];v[c+612>>2]=v[c+612>>2]+v[b+12168>>2];v[f>>2]=0;v[f+4>>2]=0;v[b+12156>>2]=0;v[b+12160>>2]=0;b=e;if(b){continue}break}if(!d){break a}while(1){b=v[d>>2];e=v[a+336>>2];v[d>>2]=v[e>>2];v[e>>2]=d;d=b;if(b){continue}break}}} -function gaa(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!v[v[37900]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){t[a+1|0]=b&63|128;t[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){t[a+2|0]=b&63|128;t[a|0]=b>>>12|224;t[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){t[a+3|0]=b&63|128;t[a|0]=b>>>18|240;t[a+2|0]=b>>>6&63|128;t[a+1|0]=b>>>12&63|128;a=4;break a}}v[37699]=25;a=-1}else{a=1}break a}t[a|0]=b;a=1}return a}function Lk(a,b,c){a=a|0;b=C(b);c=c|0;var d=0,e=0,f=0,g=0;d=v[a+24>>2];if(d){e=xa-16|0;xa=e;if(v[d+28>>2]){f=v[d+12>>2];a=v[d>>2];g=v[d+16>>2];Ba[v[v[a>>2]+12>>2]](a,g)|0;t[a+76|0]=g;v[a+32>>2]=f;Ba[v[v[a>>2]+8>>2]](a)}a=v[d>>2];Ba[v[v[a>>2]+24>>2]](a,v[d+16>>2],e+12|0,e+8|0,e+4|0);a=v[e+8>>2];if(a){f=v[37696];a=Ba[v[v[f+12>>2]+8>>2]](f+12|0,a,24422,10053,439)|0}else{a=0}f=c;c=v[d>>2];iw(a,x[d+16>>1],v[d+12>>2],b,f,v[c+68>>2],x[c+78>>1]);xa=e+16|0}else{a=0}return a|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-32|0;xa=d;v[a+52>>2]=v[a+52>>2]+1;v[b+16>>2]=a;Ba[v[v[b>>2]+32>>2]](b);e=v[a+76>>2];v[b+20>>2]=e;v[d+20>>2]=-1;v[d+24>>2]=-1;v[d+12>>2]=1;v[d+16>>2]=c;v[d+8>>2]=b;a:{if((v[a+80>>2]&2147483647)>>>0<=e>>>0){hK(a+72|0,d+8|0);break a}c=v[a+72>>2]+B(e,20)|0;e=v[d+12>>2];v[c>>2]=v[d+8>>2];v[c+4>>2]=e;v[c+16>>2]=v[d+24>>2];e=v[d+20>>2];v[c+8>>2]=v[d+16>>2];v[c+12>>2]=e;v[a+76>>2]=v[a+76>>2]+1}xa=d+32|0;return v[b+20>>2]}function Om(a,b){var c=0,d=0,e=0,f=0;a:{if(!v[a+556>>2]){break a}c=(b<<15^-1)+b|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[a+532>>2]+((v[a+540>>2]-1&(c>>>16^c))<<2)|0;c=v[d>>2];if((c|0)==-1){break a}e=v[a+528>>2];f=v[a+524>>2];if(v[f+(c<<2)>>2]!=(b|0)){while(1){d=(c<<2)+e|0;c=v[d>>2];if((c|0)==-1){break a}if(v[(c<<2)+f>>2]!=(b|0)){continue}break}}b=(c<<2)+e|0;v[d>>2]=v[b>>2];v[a+556>>2]=v[a+556>>2]-1;v[a+552>>2]=v[a+552>>2]+1;v[b>>2]=v[a+548>>2];v[a+548>>2]=c}}function wg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;g=a+16|0;e=v[a+20>>2];if(e&4){f=x[v[a+24>>2]+16>>1]&(x[a+116>>1]|-1026)}else{f=x[a+28>>1]&(x[a+116>>1]|-1026)}b=c?f|b:f&(b^-1);a:{b:{c:{switch((e>>>30|0)-2|0){case 0:if(w[v[g>>2]+4785|0]){break b}break;case 1:break b;default:break c}}u[d+8>>1]=b;uH(a+28|0,d+8|0);break a}c=v[a+24>>2];if(!c){c=Pu(v[a+16>>2],e>>>24&15);v[a+24>>2]=c}u[c+16>>1]=b;Xu(v[a+16>>2],g);v[a+20>>2]=v[a+20>>2]|4}xa=d+16|0}function iy(a,b,c){var d=0,e=0,f=C(0);d=xa-32|0;xa=d;e=x[a+8>>1];a:{if((e|0)==65535){a=v[a+4>>2];f=C(C(C(z[a+8>>2]*z[b+8>>2])+C(C(z[a>>2]*z[b>>2])+C(z[a+4>>2]*z[b+4>>2])))+C(C(z[a+24>>2]*z[c+8>>2])+C(C(z[a+16>>2]*z[c>>2])+C(z[a+20>>2]*z[c+4>>2]))));break a}a=v[a>>2];Ba[v[v[a>>2]+116>>2]](d,a,e);f=C(C(C(C(z[b>>2]*z[d>>2])+C(z[c>>2]*z[d+16>>2]))+C(C(z[b+4>>2]*z[d+4>>2])+C(z[c+4>>2]*z[d+20>>2])))+C(C(z[b+8>>2]*z[d+8>>2])+C(z[c+8>>2]*z[d+24>>2])))}xa=d+32|0;return f}function Tz(a){a=a|0;var b=0,c=0,d=0,e=0;if(v[a+32>>2]){while(1){e=v[v[a+28>>2]+(d<<2)>>2]>>>7|0;c=v[(v[v[a+36>>2]+16>>2]+B(e,24)|0)+20>>2];b=v[c+36>>2];d=d+1|0;cA(b- -64|0,b+80|0,z[b+124>>2],b+112|0,b,z[b+76>>2],z[b+128>>2],e,z[b+92>>2],v[a+40>>2]+B(d,112)|0,w[b+158|0]);b=v[c+36>>2];z[c>>2]=z[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];if(y[a+32>>2]>d>>>0){continue}break}}}function lX(a,b,c,d){var e=0,f=0,g=0,h=0;Ba[v[v[d>>2]>>2]](d,a,b<<2)|0;a:{if(!b|!c){break a}d=0;if((b|0)!=1){h=b&-2;c=0;while(1){f=d<<2;e=f+a|0;g=w[e+3|0];t[e+3|0]=w[e|0];t[e|0]=g;g=w[e+1|0];t[e+1|0]=w[e+2|0];t[e+2|0]=g;e=(f|4)+a|0;f=w[e+3|0];t[e+3|0]=w[e|0];t[e|0]=f;f=w[e+1|0];t[e+1|0]=w[e+2|0];t[e+2|0]=f;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=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=b;b=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=b}}function hr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if(v[a+4656>>2]!=2){a9(v[37696],8,11709,1950,77351,0);return}c=a+16|0;e=v[c+4968>>2];if(e){c=v[c+4936>>2];while(1){Ou(v[(d<<2)+c>>2]);d=d+1|0;if((e|0)!=(d|0)){continue}break}}v[a+6124>>2]=b;v[a+4656>>2]=3;if(b){Ba[v[v[b>>2]+16>>2]](b)}v[a+6304>>2]=1;b=a+6104|0;v[a+6300>>2]=b;c=a+6296|0;v[c>>2]=v[a+6092>>2];Ba[v[v[a+6104>>2]+16>>2]](b);d=v[a+6120>>2];Ba[v[v[d>>2]+72>>2]](d,b);b=v[c>>2];Ba[v[v[b>>2]+72>>2]](b,a+6280|0)}function Ku(a,b){var c=0,d=0,e=0;e=a+5052|0;c=xa-16|0;xa=c;v[b>>2]=a;d=v[b+4>>2];a:{if(!w[a+4785|0]){v[b+4>>2]=d&268435455|-2147483648;a=v[b+388>>2];v[c+12>>2]=v[b+384>>2]+48;v[c+8>>2]=a+48;pP(b+12|0,v[c+12>>2]+16|0,v[c+8>>2]+16|0);break a}a=d&1073741823;if(d>>>0>=3221225472){v[b+4>>2]=a|-2147483648;if(d&268435456){break a}v[c+12>>2]=b;Og(e,c+12|0);break a}v[b+4>>2]=a|1073741824;v[c+12>>2]=b;a=qh(e,c+12|0,c+8|0);if(w[c+8|0]){break a}v[a>>2]=v[c+12>>2]}xa=c+16|0}function oi(a,b){a=a|0;b=C(b);var c=0;a:{a=a+12|0;if(v[a+88>>2]){while(1){_k(v[v[a+84>>2]+(c<<2)>>2]+48|0,b);c=c+1|0;if(c>>>0>2]){continue}break}}z[a+56>>2]=b;b:{c:{d:{switch((v[a+4>>2]>>>30|0)-2|0){default:c=v[a>>2];break c;case 1:break b;case 0:break d}}c=v[a>>2];if(w[c+4785|0]){break b}}if(!(!(b>C(0))|!c)){t[a+60|0]=0}z[a+44>>2]=b;break a}if(b>C(0)){t[a+60|0]=0;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]&-897|640;break a}Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|128}}function hq(a,b){a=a|0;b=b|0;var c=0,d=0;d=xa-16|0;xa=d;Ba[v[v[a>>2]+16>>2]](d+8|0,a);a:{b:{if(w[d+9|0]&32){c=1;if(x[b+4>>1]==12){break b}a9(v[37696],8,11709,815,72357,0);break a}c=x[b+4>>1]==12}if(!(!v[a+4656>>2]|!c)){a9(v[37696],8,11709,821,75277,0);break a}c:{d:{e:{c=Ba[v[v[b>>2]+100>>2]](b)|0;switch(v[c+4>>2]>>>30|0){case 0:break d;case 3:break e;default:break c}}if((v[c>>2]-16|0)!=(a|0)){break c}}iq(a,b);break a}a9(v[37696],8,11709,832,75619,0)}xa=d+16|0}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=v[a+632>>2];if(e){f=v[a+644>>2];g=v[a+640>>2];while(1){c=B(d,24)+g|0;z[c>>2]=z[c>>2]-z[b>>2];z[c+4>>2]=z[c+4>>2]-z[b+4>>2];z[c+8>>2]=z[c+8>>2]-z[b+8>>2];z[c+12>>2]=z[c+12>>2]-z[b>>2];z[c+16>>2]=z[c+16>>2]-z[b+4>>2];z[c+20>>2]=z[c+20>>2]-z[b+8>>2];c=B(d,44)+f|0;z[c+28>>2]=z[c+28>>2]-z[b>>2];z[c+32>>2]=z[c+32>>2]-z[b+4>>2];z[c+36>>2]=z[c+36>>2]-z[b+8>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}TC(a+4|0,b)}function bI(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(w[a+36|0]){break a}g=v[b+180>>2];if(v[g+(v[a+40>>2]<<2)>>2]==-1|v[(v[a+44>>2]<<2)+g>>2]==-1){break a}e=v[a+48>>2];if(!v[e+8>>2]){break a}f=v[a+52>>2];if(!v[f+8>>2]){break a}b:{if((v[e+20>>2]&v[f+20>>2])==-1){break b}d=b+196|0;e=b+208|0;f=v[b+400>>2];h=v[v[b+192>>2]+4>>2];i=v[v[b+276>>2]+4>>2];if(c){aI(a,f,i,h,g,e,d,c+4|0,c+28|0);break b}aI(a,f,i,h,g,e,d,b+304|0,b+328|0)}d=0}return d|0}function so(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0);hj(a,b,c,d);e=z[a+308>>2];b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}f=z[b+5148>>2];b=e>2]?1:b){e=b?f:e;b=a+48|0;a:{b:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:c=v[b>>2];if(w[c+4785|0]){break a}default:z[a+308>>2]=e;v[a+312>>2]=0;UG(a- -64|0,e,1);return;case 1:break b}}c=v[b>>2]}z[a+308>>2]=e;v[a+312>>2]=0;Xu(c,b);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}}function n7(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0);f=xa+-64|0;xa=f;D5(f+32|0,f,b,c,d);if(e&1){Ba[v[v[a>>2]+8>>2]](a,f+32|0,f)}a:{if(!(e&2)){break a}c=x[b+100>>1];if(!(c&6)){break a}e=c&4;d=65280;g=C(z[f+24>>2]-z[f+56>>2]);h=C(g*g);g=C(z[f+16>>2]-z[f+48>>2]);i=C(g*g);g=C(z[f+20>>2]-z[f+52>>2]);g=C(K(C(h+C(i+C(g*g)))));d=!(c&2)|!(g>z[b+84>>2])?d:16711680;Ba[v[v[a>>2]+28>>2]](a,f+48|0,f+16|0,!e|!(g>2])?d:255)}xa=f- -64|0}function di(a){a=a|0;var b=0,c=0,d=0,e=0;d=xa-16|0;xa=d;_n(v[37393],a,v[a+8>>2],1);b=v[a+100>>2];if(b){while(1){c=(c>>>0)%(b>>>0)|0;b=c<<2;e=v[b+v[a+96>>2]>>2];a:{if(!(Ba[v[v[e>>2]+260>>2]](e)|0)){Mi(v[b+v[a+96>>2]>>2]);break a}c=c+1|0}b=v[a+100>>2];if(b){continue}break}}c=a+12|0;b:{if((v[a+16>>2]>>>30|0)-3>>>0<4294967294){break b}b=v[a+12>>2];if(!b){break b}b=b-16|0;if(!b){break b}Ju(b+16|0,c);v[d+12>>2]=a;Og(b+5944|0,d+12|0)}v[a+100>>2]=0;su(c);xa=d+16|0}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;v[v[a+12>>2]+4>>2]=d;g=v[a+12>>2];a=v[g+100>>2];f=v[a+20>>2];d=f+1|0;e=v[a+24>>2]&2147483647;a:{if(d>>>0<=e>>>0){break a}h=e;e=e?e<<1:2;e=d>>>0>e>>>0?d:e;if(h>>>0>=e>>>0){break a}Ak(a+16|0,e);f=v[a+20>>2]}v[a+20>>2]=d;a=v[a+16>>2]+(f<<5)|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+16>>2]=z[c>>2];z[a+20>>2]=z[c+4>>2];z[a+24>>2]=z[c+8>>2];b=v[g+4>>2];v[a+12>>2]=b;v[a+28>>2]=b}function vF(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){uF(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+B(b,44)|0;d=B(d,44)+e|0;while(1){e=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=e;v[d+40>>2]=v[c+40>>2];e=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=e;e=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=e;e=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=e;e=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=e;d=d+44|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function Gh(a,b){a=a|0;b=b|0;var c=0,d=0;if(v[a+24>>2]){a=v[b+52>>2];if(a){c=v[a+12>>2];a:{if((c|0)<0|!(c&2147483647)){break a}c=v[a+4>>2];if(!c){break a}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}a=v[a>>2];if(a){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a)}a=v[b+52>>2];if(a){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a)}v[b+52>>2]=0}a=v[b+48>>2];if(a){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a);v[b+48>>2]=0}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}}function zQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=xa-2064|0;xa=b;f=v[a+1060>>2];v[b+12>>2]=0;c=v[a+1052>>2];a:{if(!c){break a}e=a+28|0;while(1){c=c-1|0;d=v[e>>2]>>>7|0;b:{if(v[v[f+196>>2]+(d<<2)>>2]==33554431){break b}d=v[f+184>>2]+B(d,24)|0;if(w[d+5|0]){break b}qH(v[d+20>>2]+-64|0,z[a+1056>>2],b+1040|0,b+16|0,b+12|0,0,0,w[a+1068|0])}e=e+4|0;if(c){continue}break}c=v[b+12>>2];if(!c){break a}a=v[a+1064>>2];Ba[v[v[a>>2]+52>>2]](a,b+1040|0,b+16|0,c)}xa=b+2064|0}function qT(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;g=g|0;var h=0,i=0,j=0,k=C(0),l=0;j=xa+-64|0;xa=j;h=j+8|0;v[h+36>>2]=2;v[h>>2]=140564;v[h+36>>2]=0;v[h>>2]=140500;i=v[b+460>>2];v[h+24>>2]=v[b+456>>2];v[h+28>>2]=i;i=v[b+452>>2];v[h+16>>2]=v[b+448>>2];v[h+20>>2]=i;i=v[b+444>>2];v[h+8>>2]=v[b+440>>2];v[h+12>>2]=i;i=v[b+540>>2];l=v[b+536>>2];k=z[b+532>>2];z[h+40>>2]=k;z[h+32>>2]=k;v[h+44>>2]=l;v[h+48>>2]=i;mT(a,b+8|0,h,c,d,e,f,g,0);xa=j- -64|0}function Rp(a,b){a=a|0;b=b|0;var c=0,d=0;c=v[b>>2];a:{if(!c){c=0;break a}if((v[a+5940>>2]&2147483647)>>>0>=c>>>0){break a}Mp(a+5932|0,c);c=v[b>>2]}PO(a+32|0,c,v[b+4>>2],v[b+8>>2],v[b+12>>2]);d=v[b+28>>2];c=a+1076|0;v[c>>2]=v[b+24>>2];v[c+4>>2]=d;d=v[b+20>>2];c=a+1068|0;v[c>>2]=v[b+16>>2];v[c+4>>2]=d;d=v[b+12>>2];c=a+1060|0;v[c>>2]=v[b+8>>2];v[c+4>>2]=d;d=v[b+4>>2];c=a+1052|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;c=v[b+12>>2];a=a+5584|0;CE(a,v[b+8>>2]);CE(a+36|0,c)}function gg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=v[a+8>>2];a=xa-32|0;xa=a;a:{if(t[149552]&1){e=v[37387];break a}e=aa(3,114832)|0;t[149552]=1;v[37387]=e}d=laa(16);v[d>>2]=v[b>>2];v[d+4>>2]=v[b+4>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=v[b+12>>2];v[a+16>>2]=d;b=laa(12);v[b+8>>2]=v[c+8>>2];d=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=d;v[a+24>>2]=b;f=+fa(e|0,g|0,4926,a+12|0,a+16|0);ga(v[a+12>>2]);xa=a+32|0;if(f<4294967296&f>=0){a=~~f>>>0}else{a=0}return a|0}function M8(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0);e=xa-128|0;xa=e;z7(a,b,c,e+96|0,e- -64|0,e+32|0);f=z[e+56>>2];h=z[e+48>>2];i=z[e+52>>2];k=C(C(f*f)+C(C(h*h)+C(i*i)));g=z[a+108>>2];if(k>C(g*g)){l=f;f=C(C(1)/C(K(k)));z[e+24>>2]=g*C(l*f);z[e+20>>2]=g*C(i*f);j=v[e+36>>2];v[e>>2]=v[e+32>>2];v[e+4>>2]=j;j=v[e+44>>2];v[e+8>>2]=v[e+40>>2];v[e+12>>2]=j;z[e+16>>2]=g*C(h*f);J5(b,c,e+96|0,e- -64|0,e,a,d)}xa=e+128|0}function XI(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(!b){break a}c=B(b,24);if(!c){break a}e=v[a>>2];f=Ba[v[v[e>>2]+8>>2]](e,c,16608,553)|0}e=v[a+4>>2];c=v[a+8>>2];if((c|0)>0){g=B(c,24)+f|0;d=e;c=f;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];d=d+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+12>>2]<0)){c=v[a>>2];Ba[v[v[c>>2]+12>>2]](c,e)}v[a+12>>2]=b;v[a+4>>2]=f}function Gs(a){a=a|0;var b=0,c=0;v[a>>2]=126184;b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+80>>2];if((b|0)==(a+60|0)){t[a+76|0]=0;break a}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+56>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+48>>2];if((b|0)==(a+28|0)){t[a+44|0]=0;return a|0}if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Nv(a,b,c){var d=0,e=0,f=0,g=0,h=0;if((v[a+8>>2]&2147483647)>>>0>>0){np(a,b)}e=v[a+4>>2];a:{if((e|0)>=(b|0)){break a}f=v[a>>2];d=e+f|0;g=b-e&7;if(g){while(1){t[d|0]=w[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){t[d|0]=w[c|0];t[d+1|0]=w[c|0];t[d+2|0]=w[c|0];t[d+3|0]=w[c|0];t[d+4|0]=w[c|0];t[d+5|0]=w[c|0];t[d+6|0]=w[c|0];t[d+7|0]=w[c|0];d=d+8|0;if((e|0)!=(d|0)){continue}break}}v[a+4>>2]=b}function uw(a,b,c,d){var e=0,f=0;e=xa+-64|0;xa=e;f=v[c+4>>2];v[e+16>>2]=v[c>>2];v[e+20>>2]=f;f=v[c+12>>2];v[e+24>>2]=v[c+8>>2];v[e+28>>2]=f;f=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=f;f=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=f;vw(e+32|0,a,b,e+16|0,e);a=v[e+36>>2];v[d>>2]=v[e+32>>2];v[d+4>>2]=a;a=v[e+44>>2];v[d+8>>2]=v[e+40>>2];v[d+12>>2]=a;a=v[e+52>>2];v[d+16>>2]=v[e+48>>2];v[d+20>>2]=a;a=v[e+60>>2];v[d+24>>2]=v[e+56>>2];v[d+28>>2]=a;xa=e- -64|0}function cl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+296>>2]=z[b>>2];z[a+300>>2]=z[b+4>>2];z[a+304>>2]=z[b+8>>2];z[a+308>>2]=z[b+12>>2];return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+56>>2]=z[b>>2];z[c+60>>2]=z[b+4>>2];z[c- -64>>2]=z[b+8>>2];z[c+68>>2]=z[b+12>>2];Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|4}function zy(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?58537:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function wP(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57001:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function vP(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57673:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function uP(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57149:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function kU(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?61723:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function iz(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?62029:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function hz(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?55111:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function gz(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?59433:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function ZC(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?61075:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}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;a:{if(!b){break a}c=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57805:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[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}c=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?59547:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}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;a:{if(!b){break a}c=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?56405:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Km(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?56299:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function E4(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?61605:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Dr(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?56521:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Bz(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57275:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Br(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?60027:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Ay(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57427:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function zw(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=v[37696];c=d+12|0;f=(i=c,j=e,k=Ba[v[v[d>>2]+20>>2]](d)|0?29035:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<2)+f|0;e=d;c=f;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function zr(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=v[37696];c=d+12|0;f=(i=c,j=e,k=Ba[v[v[d>>2]+20>>2]](d)|0?27439:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<1)+f|0;e=d;c=f;while(1){u[c>>1]=x[e>>1];e=e+2|0;c=c+2|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function sF(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=v[37696];c=d+12|0;f=(i=c,j=e,k=Ba[v[v[d>>2]+20>>2]](d)|0?26235:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<2)+f|0;e=d;c=f;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function Td(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;h=xa-48|0;xa=h;u[h+26>>1]=0;u[h+28>>1]=0;u[h+30>>1]=0;u[h+32>>1]=0;v[h+28>>2]=e;v[h+36>>2]=0;v[h+40>>2]=0;v[h+20>>2]=0;v[h+24>>2]=0;v[h+16>>2]=c;v[h+12>>2]=b;v[h+8>>2]=12;a:{if(f){u[h+32>>1]=2;v[h+20>>2]=6;break a}v[h+20>>2]=12}v[h+24>>2]=d;a=(j=a,k=h+8|0,l=Ba[v[v[g>>2]+148>>2]](g)|0,m=0,i=v[v[a>>2]+20>>2],Ba[i](j|0,k|0,l|0,m|0)|0);xa=h+48|0;return a|0}function Cw(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=v[37696];c=d+12|0;f=(i=c,j=e,k=Ba[v[v[d>>2]+20>>2]](d)|0?29941:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<2)+f|0;e=d;c=f;while(1){z[c>>2]=z[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function KV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0);g=C(z[d+24>>2]-z[f+24>>2]);h=C(z[d+16>>2]-z[f+16>>2]);i=C(z[d+20>>2]-z[f+20>>2]);j=C(C(g*g)+C(C(h*h)+C(i*i)));k=C(z[c+4>>2]+z[e+4>>2]);c=j>C(k*k);if(!c){m=C(K(j));n=C(1);if(!(j>2]=o;z[a+4>>2]=l;z[a>>2]=n;g=C(k-m);z[b>>2]=g>C(0)?g:C(0)}return!c|0}function YZ(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=v[a+16>>2];u[e+2>>1]=0;a=v[a+8>>2];a:{if(a>>>0<2){break a}c=a-1|0;f=c&3;d=1;if(a-2>>>0>=3){g=c&-4;c=0;while(1){a=(d<<2)+e|0;b=x[a-4>>1]+b|0;u[a+2>>1]=b;b=b+x[a>>1]|0;u[a+6>>1]=b;b=b+x[a+4>>1]|0;u[a+10>>1]=b;b=b+x[a+8>>1]|0;u[a+14>>1]=b;d=d+4|0;c=c+4|0;if((g|0)!=(c|0)){continue}break}}if(!f){break a}a=0;while(1){c=(d<<2)+e|0;b=x[c-4>>1]+b|0;u[c+2>>1]=b;d=d+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=C(0),f=C(0),g=C(0);c=xa-32|0;xa=c;d=v[b+20>>2];v[c+24>>2]=v[b+16>>2];v[c+28>>2]=d;d=v[b+12>>2];v[c+16>>2]=v[b+8>>2];v[c+20>>2]=d;d=v[b+4>>2];v[c+8>>2]=v[b>>2];v[c+12>>2]=d;f=z[a+36>>2];g=z[a+44>>2];e=C(C(z[a+536>>2]*C(.5))+C(z[a+52>>2]+z[a+532>>2]));A[c+16>>3]=A[c+16>>3]+ +C(e*z[a+40>>2]);A[c+24>>3]=A[c+24>>3]+ +C(e*g);A[c+8>>3]=A[c+8>>3]+ +C(f*e);a=Ba[v[v[a>>2]+12>>2]](a,c+8|0)|0;xa=c+32|0;return a|0}function S2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=xa-224|0;xa=d;a:{b:{c=v[b+8>>2];c:{if(c>>>0<3){break c}e=v[b+16>>2];if(!((c>>>0)%3|0?e:1)|(y[b+28>>2]<2?v[b+32>>2]:0)){break c}d:{if(c>>>0>=65536){if(w[b+24|0]&2){break c}if(v[b+4>>2]){break d}break c}if(!v[b+4>>2]){break c}}if(y[b>>2]<12){break c}if(!e|y[b+12>>2]>=(w[b+24|0]&2?6:12)>>>0){break b}}a=0;a9(v[37696],4,10899,102,74464,0);break a}c=Q3(d,a+4|0);a=M3(c,b,0,1);R3(c)}xa=d+224|0;return a|0}function Ci(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=x[a+24>>1];c=f;a:{if(!c){break a}d=a+20|0;if((c|0)!=1){h=c&65534;c=0;while(1){g=e<<2;Ba[v[v[b>>2]+8>>2]](b,v[g+(x[a+24>>1]==1?d:v[a+20>>2])>>2]);Ba[v[v[b>>2]+8>>2]](b,v[(g|4)+(x[a+24>>1]==1?d:v[a+20>>2])>>2]);e=e+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(f&1)){break a}Ba[v[v[b>>2]+8>>2]](b,v[(e<<2)+(x[a+24>>1]==1?d:v[a+20>>2])>>2])}a=v[a+324>>2];if(a){Ba[v[v[b>>2]+8>>2]](b,a)}}function Jw(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a+492>>2]=a;v[a+444>>2]=v[a+32>>2];e=w[a+76|0];v[a+448>>2]=e;v[a+480>>2]=v[a+40>>2];v[a+484>>2]=x[a+74>>1];b=v[a+60>>2];v[a+476>>2]=b?b+32|0:v[a- -64>>2];b=0;if(e>>>0>=2){c=1;while(1){d=v[a+456>>2]+B(c,80)|0;Gw(d,v[(v[a+444>>2]+(c<<5)|0)+20>>2],1);v[d+72>>2]=b;f=w[d+79|0]+f|0;b=w[d+76|0]+b|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}if(v[a+468>>2]!=(b|0)){Bw(a+112|0,b)}v[a+468>>2]=b;v[a+472>>2]=f}function JQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;if(v[a+52>>2]){c=v[a+40>>2];d=v[a+44>>2];e=v[a+48>>2];while(1){b=v[a+32>>2]+B(f,12)|0;b=fJ(v[a+28>>2],v[a+36>>2]+(f<<3)|0,v[b+4>>2],v[b>>2],v[c>>2],v[d>>2],v[e>>2],0);a:{if(!b){break a}b:{switch(w[b+24|0]){case 0:v[d>>2]=v[d>>2]|1;d=d+4|0;if(!v[b+56>>2]){break a}v[c>>2]=v[c>>2]|1;c=c+4|0;break a;case 2:break b;default:break a}}v[e>>2]=v[e>>2]|1;e=e+4|0}f=f+1|0;if(f>>>0>2]){continue}break}}}function FU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=v[a+36>>2];c=b&65535;a:{if(e>>>0<=c>>>0){break a}d=x[v[a+40>>2]+(c<<1)>>1];if((d|0)==65535|d>>>0>=e>>>0|x[v[a+48>>2]+(c<<1)>>1]!=(b>>>16|0)){break a}c=v[v[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>=y[a+8>>2]){break a}return(v[a+4>>2]+B(b,72)|0)+8|0;case 0:break b;default:break a}}if(b>>>0>=y[a+20>>2]){break a}f=(v[a+16>>2]+(b<<6)|0)+8|0}return f|0}function AS(a){a=a|0;var b=0;a=a+96|0;a:{if(!w[a+156|0]){break a}b=v[a+152>>2];if(!b){break a}gU(v[a+160>>2],b)}v[a+152>>2]=0;b:{if(!w[a+168|0]){break b}b=v[a+164>>2];if(!b){break b}gU(v[a+172>>2],b)}v[a+176>>2]=-1;v[a+48>>2]=-1;v[a+52>>2]=2146435071;v[a+164>>2]=0;v[a+88>>2]=-1;v[a+92>>2]=-1048577;v[a+80>>2]=-1;v[a+84>>2]=-1048577;v[a+72>>2]=-1;v[a+76>>2]=-1048577;b=a- -64|0;v[b>>2]=-1;v[b+4>>2]=2146435071;v[a+56>>2]=-1;v[a+60>>2]=2146435071}function rT(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;g=g|0;var h=0,i=0,j=C(0),k=C(0);h=xa-48|0;xa=h;v[h+36>>2]=2;v[h>>2]=140564;v[h+36>>2]=1;v[h>>2]=140532;i=v[b+460>>2];v[h+24>>2]=v[b+456>>2];v[h+28>>2]=i;i=v[b+452>>2];v[h+16>>2]=v[b+448>>2];v[h+20>>2]=i;i=v[b+444>>2];v[h+8>>2]=v[b+440>>2];v[h+12>>2]=i;j=z[b+532>>2];z[h+40>>2]=j;k=z[b+536>>2];z[h+44>>2]=k;z[h+32>>2]=j+C(k*C(.5));mT(a,b+8|0,h,c,d,e,f,g,v[b+540>>2]==1);xa=h+48|0}function ZO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=v[b+8>>2];c=w[b+20|0];e=B(c,12)+a|0;d=v[e+56>>2]-1|0;v[e+56>>2]=d;h=v[e+52>>2];g=f<<2;v[h+g>>2]=v[(d<<2)+h>>2];v[b+8>>2]=-1;if(d>>>0>f>>>0){v[v[v[e+52>>2]+g>>2]+8>>2]=f}a=(c<<2)+a|0;b=v[a+88>>2];a:{if(b>>>0<=f>>>0){break a}c=a;a=b-1|0;v[c+88>>2]=a;if(a>>>0>=y[e+56>>2]){break a}d=v[e+52>>2];c=d+(f<<2)|0;b=v[c>>2];g=c;c=d;d=a<<2;c=v[c+d>>2];v[g>>2]=c;v[d+v[e+52>>2]>>2]=b;v[b+8>>2]=a;v[c+8>>2]=f}}function MK(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=v[a+4>>2];c=e?e<<1:256;b=b+1|0;c=b>>>0>>0?c:b;d=(c|0)!=(c&1073741823)?-1:c<<2;if(d){b=v[37696];f=b+12|0;b=(h=f,i=d,j=Ba[v[v[b>>2]+20>>2]](b)|0?29721:63804,k=13489,l=949,g=v[v[f>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}else{b=0}if(c){I9(b,255,c<<2)}d=v[a>>2];a:{if(!d){break a}H9(b,d,e<<2);e=v[a>>2];if(!e){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+4>>2]=c;v[a>>2]=b}function LK(a,b){var c=0,d=0,e=0,f=0;e=v[a>>2];if(e>>>0>>0){d=v[a+12>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);v[a+12>>2]=0}d=v[a+8>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);v[a+8>>2]=0}d=0;c=(b<<3)+48|0;if(c){f=v[37696]+12|0;c=Ba[v[v[f>>2]+8>>2]](f,c,24422,13489,643)|0}else{c=0}v[a+8>>2]=c;c=b<<4;if(c){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,c,24422,13489,644)|0}v[a+4>>2]=b;v[a+12>>2]=d;v[a>>2]=b}return b>>>0>e>>>0}function CE(a,b){var c=0,d=0,e=0,f=0;c=v[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=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,e<<2,24422,17999,438)|0;d=v[a+4>>2];b:{if(!d){break b}H9(c,d,v[a+8>>2]<<2);if(v[a+8>>2]<0){break b}d=v[a+4>>2];if(!d){break b}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}d=v[a+8>>2];I9(c+(d<<2)|0,0,e-d<<2);v[a+8>>2]=e;v[a+4>>2]=c}a=v[a>>2];if(a){Ba[v[v[a>>2]+44>>2]](a,b)}} -function YT(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+12>>2];if(!b){b=v[37696];c=b+12|0;b=(e=c,f=64,g=Ba[v[v[b>>2]+20>>2]](b)|0?34507:63804,h=8633,i=97,d=v[v[c>>2]+8>>2],Ba[d](e|0,f|0,g|0,h|0,i|0)|0);v[b+4>>2]=0;v[b+8>>2]=0;v[b>>2]=125980;v[b+12>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+56>>2]=0;v[b+60>>2]=0;v[a+12>>2]=b}return b|0}function jJ(a,b,c){var d=0,e=0,f=0,g=0;a:{if(!v[a+1992>>2]){break a}d=b>>>0>c>>>0;e=d?b:c;b=d?c:b;c=e<<14&-65536|b>>>2&65535;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[v[a+1968>>2]+((v[a+1976>>2]-1&(c>>>16^c))<<2)>>2];if((c|0)==-1){break a}d=v[a+1964>>2];a=v[a+1960>>2];while(1){f=a+B(c,12)|0;if(!((b|0)==v[f>>2]&v[f+4>>2]==(e|0))){c=v[d+(c<<2)>>2];if((c|0)!=-1){continue}break a}break}g=v[(a+B(c,12)|0)+8>>2]}return g}function mI(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=v[a+12>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=g<<2;if(!c){break a}e=v[a>>2];e=Ba[v[v[e>>2]+8>>2]](e,c,16608,553)|0}c=v[a+4>>2];d=v[a+8>>2];if((d|0)>0){h=(d<<2)+e|0;d=c;f=e;while(1){v[f>>2]=v[d>>2];d=d+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}d=v[a+8>>2]}v[(d<<2)+e>>2]=v[b>>2];if(!(!c|v[a+12>>2]<0)){b=v[a>>2];Ba[v[v[b>>2]+12>>2]](b,c)}v[a+12>>2]=g;v[a+4>>2]=e;v[a+8>>2]=v[a+8>>2]+1}function zV(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0);d=z[a>>2];e=z[a+4>>2];c=z[a+8>>2];z[b+8>>2]=c;z[b+4>>2]=e;z[b>>2]=d;f=z[a+12>>2];z[b+20>>2]=c;z[b+16>>2]=e;z[b+12>>2]=f;g=z[a+16>>2];z[b+44>>2]=c;z[b+40>>2]=g;z[b+36>>2]=d;z[b+32>>2]=c;z[b+28>>2]=g;z[b+24>>2]=f;c=z[a+20>>2];z[b+92>>2]=c;z[b+88>>2]=g;z[b+84>>2]=d;z[b+80>>2]=c;z[b+76>>2]=g;z[b+72>>2]=f;z[b+68>>2]=c;z[b- -64>>2]=e;z[b+60>>2]=f;z[b+56>>2]=c;z[b+52>>2]=e;z[b+48>>2]=d}function sJ(a,b,c,d){var e=0,f=0;e=xa-16|0;xa=e;f=TH(a+4|0,v[b+4>>2],v[c+4>>2],2,5);v[a+36>>2]=-1;v[a+32>>2]=c;v[a+28>>2]=b;v[a>>2]=131184;a:{if(d){break a}XP(f);UE(v[f>>2],f);UE(v[a+8>>2],f);WO(v[v[f>>2]+40>>2],f,0);f=v[v[v[f>>2]+40>>2]+2168>>2];b=v[a+28>>2];c=v[a+32>>2];d=b>>>0>c>>>0;v[e+4>>2]=d?b:c;v[e>>2]=d?c:b;b=hJ(f+1956|0,e,e+15|0);if(w[e+15|0]){break a}c=v[e+4>>2];d=v[e>>2];v[b+8>>2]=a;v[b>>2]=d;v[b+4>>2]=c}xa=e+16|0;return a}function nh(a,b){var c=0,d=0,e=0,f=0,g=0;a:{d=v[a+4>>2];b:{if(!d){break b}e=v[d+40>>2];if(!e){break b}f=v[d+36>>2];while(1){g=(c<<3)+f|0;if(w[g|0]!=1){c=c+1|0;if((e|0)!=(c|0)){continue}break b}break}c=(c<<3)+f|0;if(v[c+4>>2]){break a}}kh(a,1,b);return}c:{if(!b){b=e-1|0;v[d+40>>2]=b;b=(b<<3)+f|0;d=v[b+4>>2];v[g>>2]=v[b>>2];v[g+4>>2]=d;b=v[a+4>>2];if(v[b+40>>2]){break c}if(v[b+44>>2]>=0){Rm(v[37389],b)}v[a+4>>2]=0;return}v[c+4>>2]=b}}function Mb(a,b,c,d,e,f){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);f=C(f);var g=0;g=xa-48|0;xa=g;v[g+16>>2]=0;v[g+20>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;z[g+40>>2]=e;z[g+36>>2]=d;z[g+32>>2]=c;z[g+28>>2]=b;v[g+12>>2]=1056964608;if(f==C(-1)){c=C(F(C(C(c-b)*C(.49000000953674316)),C(.10000000149011612)));b=C(F(C(C(e-d)*C(.49000000953674316)),C(.10000000149011612)));f=(b>c?c:b)==C(-1)?C(1):C(0)}z[g+24>>2]=f;Ba[v[v[a>>2]+172>>2]](a,g+8|0);xa=g+48|0}function eu(a,b){var c=0,d=0,e=0,f=0;c=xa-16|0;xa=c;if(x[a+4>>1]>=2){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a>>2],x[a+4>>1]<<2)}a=x[a+4>>1];a:{if(a>>>0<2){break a}Ba[v[v[b>>2]+12>>2]](b,16);e=a&65534;f=a&1;a=0;while(1){v[c+12>>2]=-1;d=c+12|0;Ba[v[v[b>>2]+8>>2]](b,d,4);v[c+12>>2]=-1;Ba[v[v[b>>2]+8>>2]](b,d,4);a=a+2|0;if((e|0)!=(a|0)){continue}break}if(!f){break a}v[c+12>>2]=-1;Ba[v[v[b>>2]+8>>2]](b,c+12|0,4)}xa=c+16|0}function fp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;ep(a,(w[b|0]&8)>>>3|0);a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];e=c>>>24&15;f=v[((e<<2)+89188|0)+12>>2];b=w[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}t[d+8|0]=b;PE(a+f|0,d+8|0);break a}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],e);v[a+8>>2]=c}t[c|0]=b;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=d+16|0}function Ro(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;Qo(a,(w[b|0]&8)>>>3|0);a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];e=c>>>24&15;f=v[((e<<2)+89188|0)+12>>2];b=w[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}t[d+8|0]=b;PE(a+f|0,d+8|0);break a}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],e);v[a+8>>2]=c}t[c|0]=b;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=d+16|0}function Gr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if(!w[a+4801|0]){PP(a+32|0,b,c,d);return}e=(((b>>>0>>0?b:c)<<2)+a|0)+5296|0;v[e>>2]=v[e>>2]|1<<(b>>>0>c>>>0?b:c);e=1<>2]=e|v[f>>2];break a}f=((b<<2)+a|0)+5420|0;v[f>>2]=v[f>>2]&(e^-1)}b=1<>2]=b|v[c>>2];break b}c=((c<<2)+a|0)+5420|0;v[c>>2]=v[c>>2]&(b^-1)}a=a+5580|0;v[a>>2]=v[a>>2]|8}function Gj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;Ej(a,(w[b|0]&8)>>>3|0);a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];e=c>>>24&15;f=v[((e<<2)+89188|0)+12>>2];b=w[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}t[d+8|0]=b;PE(a+f|0,d+8|0);break a}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],e);v[a+8>>2]=c}t[c|0]=b;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=d+16|0}function Tc(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=laa(64);b=b+c|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;v[a+8>>2]=v[b+8>>2];u[a+12>>1]=x[b+12>>1];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];z[a+32>>2]=z[b+32>>2];z[a+36>>2]=z[b+36>>2];z[a+40>>2]=z[b+40>>2];c=v[b+48>>2];v[a+44>>2]=v[b+44>>2];v[a+48>>2]=c;c=v[b+56>>2];v[a+52>>2]=v[b+52>>2];v[a+56>>2]=c;v[a+60>>2]=v[b+60>>2];return a|0}function Js(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=v[a+20>>2]-1|0;v[a+20>>2]=b;if(!b){v[a+20>>2]=v[a+20>>2]+1;b=0;t[a+92|0]=0;c=v[a+52>>2];if(c){f=a+60|0;while(1){e=v[a+48>>2]+(b<<2)|0;d=v[a+84>>2];a:{if(d>>>0>=(v[a+88>>2]&2147483647)>>>0){Ks(f,e);c=v[a+52>>2];break a}v[v[a+80>>2]+(d<<2)>>2]=v[e>>2];v[a+84>>2]=d+1}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+52>>2]=0;b=v[a+16>>2];b=Ba[v[v[b>>2]+4>>2]](b)|0;Ba[v[v[b>>2]>>2]](b,a)}}function uW(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0);b=v[b+4>>2];g=z[b- -64>>2];h=z[b+80>>2];i=z[b+84>>2];j=z[b+52>>2];k=z[b+68>>2];l=z[b+88>>2];c=v[b+152>>2]+B(c,12)|0;d=z[c+8>>2];m=z[b+56>>2];e=z[c>>2];n=z[b+72>>2];f=z[c+4>>2];o=z[b+48>>2];v[a+12>>2]=0;z[a+8>>2]=C(l*d)+C(C(m*e)+C(f*n));z[a+4>>2]=C(i*d)+C(C(j*e)+C(f*k));z[a>>2]=C(h*d)+C(C(o*e)+C(f*g))}function pE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=v[a+652>>2];e=(c<<15^-1)+c|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=v[v[a+660>>2]+((v[a+668>>2]-1&(e>>>16^e))<<2)>>2];if(v[f+(e<<3)>>2]!=(c|0)){g=v[a+656>>2];while(1){e=v[(e<<2)+g>>2];if(v[(e<<3)+f>>2]!=(c|0)){continue}break}}a=v[(v[a+644>>2]+B(v[((e<<3)+f|0)+4>>2],44)|0)+4>>2];b=v[v[a+16>>2]+(b<<2)>>2];v[d>>2]=v[a+8>>2]+B(b,24);return v[a+12>>2]+(b<<3)|0}function Hs(a){a=a|0;var b=0,c=0;v[a>>2]=126184;b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+80>>2];if((b|0)==(a+60|0)){t[a+76|0]=0;break a}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+56>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+48>>2];if((b|0)==(a+28|0)|!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}iaa(a)}function wu(a,b,c){var d=0;d=xa-16|0;xa=d;a:{if((v[b+4>>2]&-1073741824)!=-2147483648){break a}b:{if(c){c=Ho(b,d+12|0,d+11|0);MP(a+16|0,v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0,v[d+12>>2],c,0,w[d+11|0]);break b}c=Zo(b,d+12|0);KP(a+16|0,v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0,v[d+12>>2],c,0)}if(!c){break a}b=0;while(1){a=v[v[d+12>>2]+(b<<2)>>2]+16|0;v[a>>2]=v[a>>2]+1;b=b+1|0;if((c|0)!=(b|0)){continue}break}}xa=d+16|0}function b5(a){a=a|0;var b=C(0),c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0);c=xa-32|0;xa=c;Ba[v[v[a>>2]+40>>2]](c,a);b=z[c+12>>2];h=z[c+8>>2];i=z[c+4>>2];g=C(1);d=z[c>>2];if(d!=C(0)){e=C(C(1)/C(K(C(C(b*b)+C(C(C(d*d)+C(0))+C(0))))));g=C(b*e);f=C(e*C(0));e=C(d*e)}j=C(C(e*i)+C(C(C(h*g)-C(b*f))-C(d*f)));b=C(C(h*f)+C(C(i*f)+C(C(b*g)+C(d*e))));a=b>2]+40>>2]](c,a);b=z[c+12>>2];h=z[c+8>>2];i=z[c+4>>2];g=C(1);d=z[c>>2];if(d!=C(0)){e=C(C(1)/C(K(C(C(b*b)+C(C(C(d*d)+C(0))+C(0))))));g=C(b*e);f=C(e*C(0));e=C(d*e)}j=C(C(f*d)+C(C(C(i*g)-C(b*f))-C(h*e)));b=C(C(h*f)+C(C(i*f)+C(C(b*g)+C(d*e))));a=b>2]>>0){MK(h,d)}e=v[a+328>>2];if(e>>>0<=d>>>5>>>0){d=(d+128>>>5|0)+((d&31)!=0)|0;if(d){e=v[37696]+12|0;g=Ba[v[v[e>>2]+8>>2]](e,d<<2,24422,13489,855)|0;e=v[a+328>>2]}if(e){H9(g,v[a+324>>2],e<<2);f=v[a+328>>2]}if((d|0)!=(f|0)){I9((f<<2)+g|0,0,d-f<<2)}e=v[a+324>>2];if(e){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,e)}v[a+328>>2]=d;v[a+324>>2]=g}QK(a+224|0,b,c,h)}function OT(a,b){a=a|0;b=b|0;var c=0,d=0,e=C(0),f=C(0),g=C(0);c=xa-32|0;xa=c;d=v[b+20>>2];v[c+24>>2]=v[b+16>>2];v[c+28>>2]=d;d=v[b+12>>2];v[c+16>>2]=v[b+8>>2];v[c+20>>2]=d;d=v[b+4>>2];v[c+8>>2]=v[b>>2];v[c+12>>2]=d;f=z[a+36>>2];g=z[a+44>>2];e=C(z[a+532>>2]+z[a+52>>2]);A[c+16>>3]=A[c+16>>3]+ +C(e*z[a+40>>2]);A[c+24>>3]=A[c+24>>3]+ +C(e*g);A[c+8>>3]=A[c+8>>3]+ +C(f*e);a=Ba[v[v[a>>2]+12>>2]](a,c+8|0)|0;xa=c+32|0;return a|0}function po(a,b){var c=C(0),d=C(0);a:{c=z[b+260>>2];a=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(a){a=a-16|0}else{a=0}d=z[a+5148>>2];a=c>2]?1:a)){break a}c=a?d:c;b:{c:{switch((v[b+4>>2]>>>30|0)-2|0){case 0:a=v[b>>2];if(w[a+4785|0]){break b}default:z[b+260>>2]=c;v[b+264>>2]=0;UG(b+16|0,c,1);return;case 1:break c}}a=v[b>>2]}z[b+260>>2]=c;v[b+264>>2]=0;Xu(a,b);v[b+268>>2]=v[b+268>>2]&-117440513|83886080}}function kg(a){a=a|0;v[a+96>>2]=0;v[a+72>>2]=1069547520;v[a+64>>2]=1092616192;v[a+68>>2]=1061997773;v[a+56>>2]=1036831949;v[a+60>>2]=1056964608;v[a+32>>2]=0;v[a+36>>2]=1065353216;v[a+48>>2]=0;v[a+52>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;v[a+112>>2]=0;t[a+92|0]=1;v[a+40>>2]=0;v[a+44>>2]=1060437492;v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0}function ZK(a,b,c,d){var e=0,f=0,g=0,h=0;h=a+316|0;if(y[a+320>>2]>>0){MK(h,d)}e=v[a+328>>2];if(e>>>0<=d>>>5>>>0){d=(d+128>>>5|0)+((d&31)!=0)|0;if(d){e=v[37696]+12|0;g=Ba[v[v[e>>2]+8>>2]](e,d<<2,24422,13489,855)|0;e=v[a+328>>2]}if(e){H9(g,v[a+324>>2],e<<2);f=v[a+328>>2]}if((d|0)!=(f|0)){I9((f<<2)+g|0,0,d-f<<2)}e=v[a+324>>2];if(e){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,e)}v[a+328>>2]=d;v[a+324>>2]=g}QK(a+96|0,b,c,h)}function Ff(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=v[a+4>>2];if((c|0)!=v[a+8>>2]){v[c>>2]=v[b>>2];v[a+4>>2]=c+4;return}a:{g=v[a>>2];e=c-g|0;f=e>>2;c=f+1|0;if(c>>>0<1073741824){d=e>>1;d=e>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=laa(d<<2)}else{c=0}f=c+(f<<2)|0;v[f>>2]=v[b>>2];if((e|0)>0){H9(c,g,e)}v[a+8>>2]=c+(d<<2);v[a+4>>2]=f+4;v[a>>2]=c;if(g){iaa(g)}return}da();L()}Uf();L()}function eK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a:{b:{if(!v[a+48>>2]){break b}f=v[a+32>>2];e=5381;c=w[b|0];if(c){d=b;while(1){e=B(e,33)^c&255;c=w[d+1|0];d=d+1|0;if(c){continue}break}}c=v[v[a+24>>2]+((f-1&e)<<2)>>2];if((c|0)==-1){break b}e=v[a+20>>2];d=v[a+16>>2];while(1){if(!S9(v[d+(c<<3)>>2],b)){break a}c=v[e+(c<<2)>>2];if((c|0)!=-1){continue}break}}return Ba[v[v[a>>2]+28>>2]](a,0,b,1)|0}return v[(d+(c<<3)|0)+4>>2]}function yG(a){var b=0,c=0,d=0,e=0,f=0;c=xa-16|0;xa=c;b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?37931:63804;e=a,f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,28,d,16755,113)|0,v[e>>2]=f;b=xa-16|0;xa=b;xa=b+16|0;v[a+20>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;d=a+4|0;Ay(d,64);v[c+12>>2]=0;b=v[a+8>>2];a:{if(b>>>0>=(v[a+12>>2]&2147483647)>>>0){Us(d,c+12|0);break a}v[v[a+4>>2]+(b<<2)>>2]=0;v[a+8>>2]=b+1}xa=c+16|0;return a}function Mu(a,b){var c=0,d=0;c=xa-16|0;xa=c;a:{if(!w[a+4785|0]){VP(a+16|0,v[b+16>>2]);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break a}d=a+5092|0;b:{c:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}v[b+4>>2]=a&1073741823;v[c+4>>2]=b;Og(d,c+4|0);break a}v[b+4>>2]=a|-1073741824;if(a&268435456){break a}v[c+8>>2]=b;a=qh(d,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2]}xa=c+16|0}function uN(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=v[c+4624>>2];a:{if(!f){break a}a=x[a+34>>1];c=0;if(f-1>>>0>=3){j=f&-4;e=b<<1;while(1){g=c<<2;u[e+(g+d|0)>>1]=a;u[e+((g|4)+d|0)>>1]=a;u[e+((g|8)+d|0)>>1]=a;u[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){u[((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 Hn(a,b){var c=0,d=0,e=0,f=0,g=0;if(v[a+8>>2]){while(1){c=xa-16|0;xa=c;e=v[v[a+4>>2]+(f<<2)>>2]+16|0;d=x[b+52>>1];v[c+12>>2]=1;u[c+8>>1]=d;d=v[e+4772>>2];a:{if(d>>>0>=(v[e+4776>>2]&2147483647)>>>0){Nu(e+4768|0,c+8|0);break a}g=v[c+12>>2];d=v[e+4768>>2]+(d<<3)|0;v[d>>2]=v[c+8>>2];v[d+4>>2]=g;v[e+4772>>2]=v[e+4772>>2]+1}xa=c+16|0;f=f+1|0;if(f>>>0>2]){continue}break}}v[v[a+40>>2]+(x[b+52>>1]<<2)>>2]=b} -function e_(a){a=a|0;var b=0,c=0;a:{b=u[a+52>>1];c=b&32767;b=(((B(w[a+55|0],20)+(v[a+80>>2]&2147483647)|0)+B(w[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=xa-16|0;xa=b;c=v[a+128>>2];v[b+12>>2]=a;c=Og(c+48|0,b+12|0);xa=b+16|0;if(!c){break a}}b=v[a>>2];c=v[a+128>>2];b:{if(t[a+6|0]&1){Ba[v[b+16>>2]](a);break b}Ba[v[b+12>>2]](a)|0}qV(c,a,2);return}a9(v[37696],8,10646,396,75120,0)}function Iu(a,b){var c=0,d=0;c=xa-16|0;xa=c;a:{if(!w[a+4785|0]){mP(a+16|0,b+12|0);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break a}d=a+4972|0;b:{c:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}v[b+4>>2]=a&1073741823;v[c+4>>2]=b;Og(d,c+4|0);break a}v[b+4>>2]=a|-1073741824;if(a&268435456){break a}v[c+8>>2]=b;a=qh(d,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2]}xa=c+16|0}function j4(a,b,c,d){var e=0,f=0;f=xa-16|0;xa=f;v[f+12>>2]=c;e=c+d|0;a:{if(w[e|0]){break a}t[e|0]=1;e=v[a+4>>2];b:{if(e>>>0>=(v[a+8>>2]&2147483647)>>>0){on(a,f+12|0);break b}v[v[a>>2]+(e<<2)>>2]=c;v[a+4>>2]=v[a+4>>2]+1}c=B(v[f+12>>2],12)+b|0;e=v[c>>2];if(!(e&536870912)){j4(a,b,e&536870911,d)}e=v[c+4>>2];if(!(e&536870912)){j4(a,b,e&536870911,d)}c=v[c+8>>2];if(c&536870912){break a}j4(a,b,c&536870911,d)}xa=f+16|0}function JE(a,b){var c=0;if((b|0)==2){t[a+140|0]=1;return}KE(a);c=v[a>>2];a:{if(b){if(!(!c|v[a+28>>2]!=1)){Ba[v[v[c>>2]+72>>2]](c,1)|0}c=v[a+36>>2];if(!c|v[a- -64>>2]!=1){break a}Ba[v[v[c>>2]+72>>2]](c,1)|0;break a}if(v[a+28>>2]==1){Ba[v[v[c>>2]+72>>2]](c,1)|0;c=v[a>>2]}Ba[v[v[c>>2]+16>>2]](c);c=v[a+36>>2];if(v[a- -64>>2]==1){Ba[v[v[c>>2]+72>>2]](c,1)|0;c=v[a+36>>2]}Ba[v[v[c>>2]+16>>2]](c)}t[a+140|0]=(b|0)!=0}function Gn(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=v[a+44>>2];while(1){i=d>>>0>>0?e:d;l=i+1|0;m=v[a+40>>2];a:{b:{while(1){if(f>>>0>=h>>>0){break b}while(1){c:{j=f+1|0;k=v[(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}v[(g<<2)+b>>2]=k;g=g+1|0;e=l;continue}}function nY(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=xa-16|0;xa=c;b=a+4|0;e=v[a+8>>2];if(e){while(1){f=v[b>>2]+B(d,12)|0;g=v[f>>2];if(g){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,g-4|0)}v[f>>2]=0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}tI(b,c);oY(b,v[a+8>>2]);v[a+16>>2]=0;v[a+20>>2]=0;b=v[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}a=v[a+4>>2];if(!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+16|0}function nX(a,b,c,d){var e=0;e=xa-16|0;xa=e;a:{if(c){if(!b){break a}if(b&1){c=x[a>>1];u[e+14>>1]=c<<8|c>>>8;Ba[v[v[d>>2]>>2]](d,e+14|0,2)|0;a=a+2|0;c=b-1|0}else{c=b}if((b|0)==1){break a}while(1){b=x[a>>1];u[e+14>>1]=b<<8|b>>>8;Ba[v[v[d>>2]>>2]](d,e+14|0,2)|0;b=x[a+2>>1];u[e+14>>1]=b<<8|b>>>8;Ba[v[v[d>>2]>>2]](d,e+14|0,2)|0;a=a+4|0;c=c-2|0;if(c){continue}break}break a}Ba[v[v[d>>2]>>2]](d,a,b<<1)|0}xa=e+16|0}function bB(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=0;$A(a);a=v[a+24>>2];b=x[a+2>>1];if(b){e=a+b|0;f=w[a|0]==7?176:128;while(1){b=w[a+1|0];c=0;a=a+160|0;if(b){while(1){d=z[a+96>>2];z[a+96>>2]=d>C(0)?d:C(0);d=z[a+108>>2];z[a+108>>2]=d>C(0)?d:C(0);d=z[a+104>>2];z[a+104>>2]=d>C(0)?d:C(0);d=z[a+100>>2];z[a+100>>2]=d>C(0)?d:C(0);a=a+f|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}if(a>>>0>>0){continue}break}}}function aB(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=0;ZA(a);a=v[a+24>>2];b=x[a+2>>1];if(b){e=a+b|0;f=w[a|0]==7?176:128;while(1){b=w[a+1|0];c=0;a=a+160|0;if(b){while(1){d=z[a+96>>2];z[a+96>>2]=d>C(0)?d:C(0);d=z[a+108>>2];z[a+108>>2]=d>C(0)?d:C(0);d=z[a+104>>2];z[a+104>>2]=d>C(0)?d:C(0);d=z[a+100>>2];z[a+100>>2]=d>C(0)?d:C(0);a=a+f|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}if(a>>>0>>0){continue}break}}}function Ey(a){var b=0,c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;e=B(1-v[a+124>>2]|0,12)+a|0;b=v[e+68>>2];v[a+152>>2]=v[a+152>>2]-b;if(b){f=e- -64|0;g=a+112|0;while(1){c=b-1|0;b=v[v[f>>2]+(c<<2)>>2];v[e+68>>2]=c;v[d+12>>2]=b;c=v[a+116>>2];a:{if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){Cy(g,d+12|0);break a}v[v[a+112>>2]+(c<<2)>>2]=b;v[a+116>>2]=c+1}b=v[e+68>>2];if(b){continue}break}}v[a+124>>2]=1-v[a+124>>2];xa=d+16|0}function qk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];e=c>>>24&15;f=v[((e<<2)+89188|0)+12>>2];b=w[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}t[d+8|0]=b;PE(a+f|0,d+8|0);break a}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],e);v[a+8>>2]=c}t[c|0]=b;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=d+16|0}function fg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;e=xa-32|0;xa=e;h=v[a+8>>2];a:{if(t[149544]&1){f=v[37385];break a}f=aa(4,114784)|0;t[149544]=1;v[37385]=f}a=laa(16);v[a>>2]=v[b>>2];v[a+4>>2]=v[b+4>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=v[b+12>>2];v[e+24>>2]=d;v[e+16>>2]=c;v[e+8>>2]=a;g=+fa(f|0,h|0,4937,e+4|0,e+8|0);ga(v[e+4>>2]);xa=e+32|0;if(g<4294967296&g>=0){a=~~g>>>0}else{a=0}return a|0}function Qx(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0);b=a+112|0;px(a,b,0);tx(b);g=v[b+336>>2];if(g>>>0>=2){i=v[b+340>>2];h=v[b+332>>2];d=v[h+16>>2];c=1;while(1){e=v[((c<<5)+h|0)+16>>2];j=z[e+20>>2];k=z[e+24>>2];l=z[d+20>>2];m=z[d+24>>2];f=B(c,160)+i|0;z[f+96>>2]=z[e+16>>2]-z[d+16>>2];z[f+104>>2]=k-m;z[f+100>>2]=j-l;c=c+1|0;if((g|0)!=(c|0)){continue}break}}qx(b);t[a+488|0]=0}function Lu(a,b){var c=0,d=0;c=xa-16|0;xa=c;a:{if(!w[a+4785|0]){qP(b+12|0);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break a}d=a+5052|0;b:{c:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}v[b+4>>2]=a&1073741823;v[c+4>>2]=b;Og(d,c+4|0);break a}v[b+4>>2]=a|-1073741824;if(a&268435456){break a}v[c+8>>2]=b;a=qh(d,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2]}xa=c+16|0}function LB(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=v[b+12>>2];if(d){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}v[b+12>>2]=0;d=v[c>>2];v[a+40>>2]=d;v[a+44>>2]=v[c+4>>2];c=v[37696];e=c+12|0;b=Raa(d,0,28,0);f=b+4|0;b=(h=e,i=Aa?-1:b>>>0>f>>>0?-1:f,j=Ba[v[v[c>>2]+20>>2]](c)|0?44527:63804,k=12118,l=209,g=v[v[e>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0);v[b>>2]=d;b=b+4|0;v[a+8>>2]=b;a=a+12|0;HB(a,b);pY(a)}function yt(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==4){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;v[b>>2]=v[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];z[b+28>>2]=z[a+28>>2];v[b+32>>2]=v[a+32>>2];t[b+36|0]=w[a+36|0];c=w[a+37|0]|w[a+38|0]<<8;t[b+37|0]=c;t[b+38|0]=c>>>8;t[b+39|0]=w[a+39|0]}return(d|0)==4|0}function el(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+312>>2]=z[b>>2];z[a+316>>2]=z[b+4>>2];z[a+320>>2]=z[b+8>>2];return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+72>>2]=z[b>>2];z[c+76>>2]=z[b+4>>2];z[c+80>>2]=z[b+8>>2];Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|8}function _h(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{d=v[b+24>>2];if(d){b=xa-32|0;xa=b;d=v[d>>2];Ba[v[v[d>>2]+184>>2]](b,d,c);z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];xa=b+32|0;break a}v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}}function Zh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{d=v[b+24>>2];if(d){b=xa-32|0;xa=b;d=v[d>>2];Ba[v[v[d>>2]+180>>2]](b,d,c);z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];xa=b+32|0;break a}v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}}function Sc(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+b|0;b=v[c+4>>2];v[a>>2]=v[c>>2];v[a+4>>2]=b;v[a+8>>2]=v[c+8>>2];u[a+12>>1]=x[c+12>>1];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[c+24>>2];z[a+28>>2]=z[c+28>>2];z[a+32>>2]=z[c+32>>2];z[a+36>>2]=z[c+36>>2];z[a+40>>2]=z[c+40>>2];b=v[c+48>>2];v[a+44>>2]=v[c+44>>2];v[a+48>>2]=b;b=v[c+56>>2];v[a+52>>2]=v[c+52>>2];v[a+56>>2]=b;v[a+60>>2]=v[c+60>>2]}function lh(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=v[a+4>>2];if(!e){break a}f=v[e+36>>2];d=-1;g=v[e+40>>2];b:{if(!g){break b}d=0;while(1){h=(d<<3)+f|0;if(w[h|0]==(b|0)&v[h+4>>2]==(c|0)){break b}d=d+1|0;if((g|0)!=(d|0)){continue}break}d=-1}b=g-1|0;v[e+40>>2]=b;c=(d<<3)+f|0;b=(b<<3)+f|0;d=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=d;b=v[a+4>>2];if(v[b+40>>2]){break a}if(v[b+44>>2]>=0){Rm(v[37389],b)}v[a+4>>2]=0}}function b3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=xa-80|0;xa=a;if(!(!v[b+8>>2]|(!v[b+4>>2]|y[b>>2]<24))){d=a+24|0;v[d>>2]=0;v[d+4>>2]=0;v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;if(e3(d,b)){v[a+8>>2]=v[d>>2];v[a+12>>2]=v[d+16>>2];v[a+16>>2]=v[d+12>>2];v[a+4>>2]=v[d+8>>2];v[a>>2]=v[d+4>>2];v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d>>2]=0;v[d+4>>2]=0;e=Ba[v[v[c>>2]>>2]](c,17,a)|0}d3(d)}xa=a+80|0;return e|0}function db(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=xa-32|0;xa=d;e=v[b>>2];if(e>>>0<4294967280){a:{b:{if(e>>>0>=11){g=e+16&-16;f=laa(g);v[d+16>>2]=g|-2147483648;v[d+8>>2]=f;v[d+12>>2]=e;break b}t[d+19|0]=e;f=d+8|0;if(!e){break a}}H9(f,b+4|0,e)}t[e+f|0]=0;v[d>>2]=c;Ba[a|0](d+24|0,d+8|0,d);ca(v[d+24>>2]);a=v[d+24>>2];$(a|0);$(v[d>>2]);if(t[d+19|0]<0){iaa(v[d+8>>2])}xa=d+32|0;return a|0}da();L()}function Rj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;a=v[a+16>>2];a:{if(!a){break a}c=v[a+40>>2];if(!c){break a}d=v[a+36>>2];a=0;if(c-1>>>0>=3){g=c&-4;while(1){h=b;b=a<<3;b=(((h+!w[b+d|0]|0)+!w[(b|8)+d|0]|0)+!w[(b|16)+d|0]|0)+!w[(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=!w[(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 WB(a){a=a|0;var b=0,c=0;v[a>>2]=129560;a:{if(!(t[a+6|0]&1)){break a}b=v[a+32>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+36>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+44>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function Di(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;a:{f=x[a+24>>1];c=f;if(!c){break a}d=a+20|0;if((c|0)!=1){h=c&65534;c=0;while(1){g=e<<2;Ba[v[v[b>>2]+8>>2]](b,v[g+(x[a+24>>1]==1?d:v[a+20>>2])>>2]);Ba[v[v[b>>2]+8>>2]](b,v[(g|4)+(x[a+24>>1]==1?d:v[a+20>>2])>>2]);e=e+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(f&1)){break a}Ba[v[v[b>>2]+8>>2]](b,v[(e<<2)+(x[a+24>>1]==1?d:v[a+20>>2])>>2])}}function j9(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=v[a+84>>2];f=Ba[v[v[f>>2]+8>>2]](f,b,c,d,e)|0;if(!f){a=v[a+88>>2];Ba[v[v[a>>2]+8>>2]](a,64,70339,16988,199);return 0}if(!(f&15)){if(v[a+76>>2]){while(1){h=v[v[a+72>>2]+(g<<2)>>2];Ba[v[v[h>>2]>>2]](h,b,c,d,e,f);g=g+1|0;if(g>>>0>2]){continue}break}}return f|0}a=v[a+88>>2];Ba[v[v[a>>2]+8>>2]](a,64,69731,16988,205);return 0}function SP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=xa-16|0;xa=d;b=v[37696];c=b+12|0;c=(f=c,g=1,h=Ba[v[v[b>>2]+20>>2]](b)|0?29519:63804,i=11777,j=5285,e=v[v[c>>2]+8>>2],Ba[e](f|0,g|0,h|0,i|0,j|0)|0);v[d+12>>2]=c;b=v[a+2288>>2];a:{if(b>>>0>=(v[a+2292>>2]&2147483647)>>>0){LO(a+2284|0,d+12|0);a=v[a+2288>>2];break a}v[v[a+2284>>2]+(b<<2)>>2]=c;c=a;a=b+1|0;v[c+2288>>2]=a}xa=d+16|0;return a-1&255}function Kj(a,b){a=a|0;b=b|0;var c=0;c=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(c){c=c-16|0}else{c=0}if(c){a9(v[37696],8,18994,196,66990,0);return}a:{b:{c:{a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];switch((c>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[a>>2]+4785|0]){break a}}t[(a+v[((c>>>22&60)+89188|0)+12>>2]|0)+7|0]=b;return}a9(v[37696],8,17384,173,20016,0)}function eI(a){var b=0,c=0,d=0;d=v[a+8>>2];if((d|0)!=v[a+32>>2]){v[a+32>>2]=d;b=v[a+28>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+24>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=(d<<3)+48|0;if(b){c=v[37696]+12|0;b=Ba[v[v[c>>2]+8>>2]](c,b,24422,8887,976)|0}else{b=0}v[a+24>>2]=b;d=d<<4;if(d){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,d,24422,8887,977)|0}else{b=0}v[a+28>>2]=b}}function Rg(a,b,c){var d=0,e=0,f=0,g=0;e=v[a+36>>2];if(e){a:{f=v[a+40>>2];b:{if(v[f>>2]==(b|0)){g=f;d=1;break b}while(1){d=d+1|0;if((e|0)==(d|0)){break a}g=f+(d<<2)|0;if(v[g>>2]!=(b|0)){continue}break}d=d>>>0>>0}e=e-1|0;v[a+36>>2]=e;v[g>>2]=v[f+(e<<2)>>2];f=(x[b+4>>1]<<2)+86240|0;g=v[f+72>>2];nh(v[f>>2]+b|0,0);ru(a+8|0,b+g|0,c);return d}d=d>>>0>>0}a9(v[37696],2,11066,204,20902,0);return d}function Gy(a){var b=0,c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;e=B(1-v[a+136>>2]|0,12)+a|0;b=v[e+20>>2];v[a+152>>2]=v[a+152>>2]-b;if(b){f=a+112|0;while(1){c=b-1|0;b=v[v[e+16>>2]+(c<<2)>>2];v[e+20>>2]=c;v[d+12>>2]=b;c=v[a+116>>2];a:{if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){Cy(f,d+12|0);break a}v[v[a+112>>2]+(c<<2)>>2]=b;v[a+116>>2]=c+1}b=v[e+20>>2];if(b){continue}break}}v[a+136>>2]=1-v[a+136>>2];xa=d+16|0}function Dy(a){var b=0,c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;e=B(1-v[a+128>>2]|0,12)+a|0;b=v[e+44>>2];v[a+152>>2]=v[a+152>>2]-b;if(b){f=a+112|0;while(1){c=b-1|0;b=v[v[e+40>>2]+(c<<2)>>2];v[e+44>>2]=c;v[d+12>>2]=b;c=v[a+116>>2];a:{if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){Cy(f,d+12|0);break a}v[v[a+112>>2]+(c<<2)>>2]=b;v[a+116>>2]=c+1}b=v[e+44>>2];if(b){continue}break}}v[a+128>>2]=1-v[a+128>>2];xa=d+16|0}function yJ(a,b){var c=0,d=0,e=0,f=0,g=0;d=v[b+52>>2];c=v[a+28>>2];a:{if(d>>>0>=c>>>0){f=v[a+20>>2];break a}e=c-1|0;f=v[a+20>>2];if(!((e|0)==(d|0)|c>>>0>=f>>>0)){c=v[a+16>>2];g=v[c+(e<<2)>>2];v[c+(d<<2)>>2]=g;v[g+52>>2]=d;d=e}v[a+28>>2]=e}v[b+52>>2]=-1;v[b+44>>2]=v[b+44>>2]&-2097153;c=f-1|0;v[a+20>>2]=c;e=v[a+16>>2];b=d<<2;v[e+b>>2]=v[e+(c<<2)>>2];if(d>>>0>>0){v[v[b+v[a+16>>2]>>2]+52>>2]=d}}function Gg(a,b,c){var d=0,e=0,f=0;d=xa-16|0;xa=d;a=a-16|0;Ba[v[v[a>>2]+28>>2]](a,d+12|0,d+8|0);a=0;f=b;b=v[d+12>>2];e=0;a:{if(!b){break a}b:{switch(x[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}v[f>>2]=e;b=v[d+8>>2];c:{if(!b){break c}d:{switch(x[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}v[c>>2]=a;xa=d+16|0}function Cx(a,b,c){var d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;e=b+15&-16;f=v[a+4>>2];b=v[a+8>>2];g=v[(f+(b<<2)|0)-4>>2];a:{if((e|0)<=(g-v[a+16>>2]|0)){c=g-e|0;v[d+12>>2]=c;if(b>>>0>=(v[a+12>>2]&2147483647)>>>0){Us(a+4|0,d+12|0);b=v[d+12>>2];break a}v[(b<<2)+f>>2]=c;v[a+8>>2]=b+1;b=v[d+12>>2];break a}b=0;if(!e|!c){break a}a=v[37696];b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,e,24422,17461,99)|0}xa=d+16|0;return b}function tp(a){a=a|0;var b=0,c=0,d=0,e=0;b=v[a+40>>2];v[a+40>>2]=b;if(b){a9(v[37696],8,5611,577,21757,0);return}b=0;a:{b:{d=v[a+8>>2];c=v[d+6028>>2];if(!c){break b}e=v[d+6024>>2];while(1){if(v[(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;v[d+6028>>2]=c;e=b<<2;b=v[d+6024>>2];v[e+b>>2]=v[b+(c<<2)>>2]}if(a){Ba[v[v[a>>2]+48>>2]](a)}}function Wp(a,b,c){var d=0;a:{if(!c){break a}d=Ba[v[v[b>>2]+20>>2]](b,4639)|0;b:{if(!d){break b}if(!(Ba[v[v[c>>2]+40>>2]](c)|0)){break b}d=d?b:0;if(Ba[v[v[c>>2]+40>>2]](c)>>>0<=Ba[v[v[d>>2]+92>>2]](d)>>>0){break a}}a9(v[37696],4,11709,371,66202,0);return}c:{switch(x[b+4>>1]-5|0){case 1:Xp(a,b,c,0);return;case 0:Yp(a,b,c,0);return;case 8:a9(v[37696],2,11709,400,22043,0);break;default:break c}}}function p5(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=0,k=C(0);f=z[b+12>>2];g=z[b+8>>2];h=z[b>>2];d=z[b+4>>2];i=v[b+20>>2];j=v[b+16>>2];e=v[a+80>>2];z[e+424>>2]=z[b+24>>2];v[e+416>>2]=j;v[e+420>>2]=i;k=d;d=C(C(1)/C(K(C(C(f*f)+C(C(g*g)+C(C(h*h)+C(d*d)))))));z[e+404>>2]=k*d;z[e+408>>2]=g*d;z[e+412>>2]=f*d;z[e+400>>2]=h*d;if(c){q5(a)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function hG(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&v[h+v[a+152>>2]>>2])){d=v[a+148>>2];c=(b>>>0)/(d>>>0)|0;i=v[v[v[a+128>>2]+(c<<2)>>2]+(b-B(c,d)<<2)>>2];e=v[a+104>>2];c=b<<1;d=v[a+124>>2];f=(c>>>0)/(d>>>0)|0;j=v[v[e+(f<<2)>>2]+(c-B(d,f)<<2)>>2];f=e;c=c|1;e=(c>>>0)/(d>>>0)|0;GF(a+168|0,i,j,v[v[f+(e<<2)>>2]+(c-B(d,e)<<2)>>2],b);a=v[a+152>>2]+h|0;v[a>>2]=v[a>>2]|g}}function Um(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c>>>0<=16){if(!b){break a}v[a+288>>2]=v[a+288>>2]-1;v[b>>2]=v[a+296>>2];v[a+296>>2]=b;break a}if(c>>>0<=64){if(!b){break a}v[a+580>>2]=v[a+580>>2]-1;v[b>>2]=v[a+588>>2];v[a+588>>2]=b;break a}if(c>>>0<=256){if(!b){break a}v[a+872>>2]=v[a+872>>2]-1;v[b>>2]=v[a+880>>2];v[a+880>>2]=b;break a}if(!b){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}}function PT(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=xa-48|0;xa=c;Ba[v[v[a>>2]+136>>2]](a,c)|0;d=A[c+32>>3];e=A[c+24>>3];f=A[c>>3];g=A[c+8>>3];h=A[c+16>>3];i=A[c+40>>3];A[b+16>>3]=(h+i)*.5;A[b+8>>3]=(g+d)*.5;A[b>>3]=(f+e)*.5;z[b+32>>2]=C(i-h)*C(.5);z[b+28>>2]=C(d-g)*C(.5);z[b+24>>2]=C(e-f)*C(.5);z[b+36>>2]=z[a+20>>2];z[b+40>>2]=z[a+24>>2];z[b+44>>2]=z[a+28>>2];z[b+48>>2]=z[a+32>>2];xa=c+48|0}function uk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=0;g=v[a+12>>2];d=xa-32|0;xa=d;e=z[a+4>>2];if(e!=C(0)){a=YU(g,b);v[d+28>>2]=-2013265784;v[d+20>>2]=-2004353024;v[d+24>>2]=-2013231104;f=C(e*C(1.5));z[d+16>>2]=f;z[d+12>>2]=f;z[d+8>>2]=f;b=a;a=d+8|0;aV(b,a);b=YU(g,c);v[d+28>>2]=-16776961;v[d+20>>2]=-65536;v[d+24>>2]=-16711936;z[d+16>>2]=e;z[d+12>>2]=e;z[d+8>>2]=e;aV(b,a)}xa=d+32|0}function sZ(a,b){var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0);a:{d=v[a>>2];if((d|0)<=0){break a}c=a+4|0;e=c+B(d,12)|0;f=z[b+8>>2];g=z[b+4>>2];h=z[b>>2];while(1){if(!(C(D(C(C(f*z[c+8>>2])+C(C(h*z[c>>2])+C(g*z[c+4>>2])))))>C(.9998999834060669))){c=c+12|0;if(e>>>0>c>>>0){continue}break a}break}return}if(d>>>0<=255){v[a>>2]=d+1;a=B(d,12)+a|0;z[a+4>>2]=z[b>>2];z[a+8>>2]=z[b+4>>2];z[a+12>>2]=z[b+8>>2]}}function kp(a,b){a=a|0;b=b|0;var c=0;c=v[a+40>>2];v[a+40>>2]=c;if(c){a9(v[37696],8,5611,73,1481,0);return}c=v[b+4>>2];v[a+60>>2]=v[b>>2];v[a+64>>2]=c;c=v[b+44>>2];v[a+100>>2]=v[b+40>>2];v[a+104>>2]=c;c=v[b+36>>2];v[a+92>>2]=v[b+32>>2];v[a+96>>2]=c;c=v[b+28>>2];v[a+84>>2]=v[b+24>>2];v[a+88>>2]=c;c=v[b+20>>2];v[a+76>>2]=v[b+16>>2];v[a+80>>2]=c;c=v[b+12>>2];v[a+68>>2]=v[b+8>>2];v[a+72>>2]=c}function $h(a){a=a|0;var b=0,c=0;v[a>>2]=118268;Om(v[37389],a);b=v[a+128>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+120>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a>>2]=118576;Om(v[37389],a);b=v[a+104>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+96>>2];if((b|0)==(a+76|0)){t[a+92|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function Pg(a,b,c,d){var e=0;e=xa-16|0;xa=e;a:{if((Ba[v[v[b>>2]+24>>2]](b)|0)!=2){qu(a+8|0,v[((x[b+4>>1]<<2)+86240|0)+72>>2]+b|0);Wp(c,b,d);break a}if(Ba[v[v[b>>2]+28>>2]](b)|0){break a}b=v[b+320>>2];if(Ba[v[v[b>>2]+76>>2]](b)|0){d=a+8|0;a=0;while(1){Ba[v[v[b>>2]+80>>2]](b,e+12|0,1,a)|0;qu(d,v[e+12>>2]+48|0);a=a+1|0;if(Ba[v[v[b>>2]+76>>2]](b)>>>0>a>>>0){continue}break}}iq(c,b)}xa=e+16|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=v[a+652>>2];d=(c<<15^-1)+c|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=v[v[a+660>>2]+((v[a+668>>2]-1&(d>>>16^d))<<2)>>2];if(v[e+(d<<3)>>2]!=(c|0)){f=v[a+656>>2];while(1){d=v[(d<<2)+f>>2];if(v[(d<<3)+e>>2]!=(c|0)){continue}break}}a=v[(v[a+644>>2]+B(v[((d<<3)+e|0)+4>>2],44)|0)+4>>2];return v[a+12>>2]+(v[v[a+16>>2]+(b<<2)>>2]<<3)|0}function N9(a,b,c){var d=0,e=0,f=0;d=v[c+16>>2];a:{if(!d){if(M9(c)){break a}d=v[c+16>>2]}f=v[c+20>>2];if(d-f>>>0>>0){return Ba[v[c+36>>2]](c,a,b)|0}b:{if(v[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(w[e+a|0]!=10){continue}break}e=Ba[v[c+36>>2]](c,a,d)|0;if(e>>>0>>0){break a}a=a+d|0;b=b-d|0;f=v[c+20>>2]}H9(f,a,b);v[c+20>>2]=v[c+20>>2]+b;e=b+d|0}return e}function rW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=0,i=0,j=0,k=0;k=d;b=v[b+4>>2];d=b+56|0;e=z[c+8>>2];f=z[c>>2];h=b+52|0;g=z[c+4>>2];i=b+72|0;j=b+68|0;c=C(C(z[d>>2]*e)+C(C(z[b+48>>2]*f)+C(z[h>>2]*g)))>C(C(z[i>>2]*e)+C(C(z[b+64>>2]*f)+C(g*z[j>>2])));v[k>>2]=c;e=z[(c?b+48|0:b- -64|0)>>2];f=z[(c?h:j)>>2];g=z[(c?d:i)>>2];v[a+12>>2]=0;z[a+8>>2]=g;z[a+4>>2]=f;z[a>>2]=e}function lu(a,b,c){var d=0,e=0,f=0,g=0;e=xa-32|0;xa=e;d=v[a+16>>2];a:{if((d|0)!=-1){a=x[c+4>>1];Ba[v[v[c>>2]+76>>2]](e,c);c=v[b+72>>2];Ba[v[v[c>>2]+8>>2]](c,d,e);a=B((a&65527)==5,36)+b|0;v[a+32>>2]=v[a+32>>2]+1;break a}d=x[a+4>>1];if(!d){break a}g=a+8|0;c=0;while(1){f=v[(c<<2)+(x[a+12>>1]==1?g:v[a+8>>2])>>2];if((f|0)!=-1){FE(b,-1,f)}c=c+1|0;if((d|0)!=(c|0)){continue}break}}xa=e+32|0}function Do(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=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[c>>2]+4785|0]){break a}}a=a- -64|0;b=b&65535;u[a+46>>1]=b;a=v[a>>2];if(a){u[a+94>>1]=b}return}d=v[a+56>>2];if(!d){d=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=d}u[d+136>>1]=b;Xu(v[a+48>>2],c);v[a+316>>2]=v[a+316>>2]|512}function D6(a){a=a|0;var b=0,c=0;v[a>>2]=145876;b=v[a+20>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+8>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+12>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a>>2]=145964;b=v[a+4>>2];if(v[b+16>>2]==1){v[b+16>>2]=2}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function By(a,b){var c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;e=v[a+152>>2];if(e>>>0>>0){g=a+112|0;while(1){c=v[37696];f=Ba[v[v[c+12>>2]+8>>2]](c+12|0,16384,24422,10233,99)|0;v[d+12>>2]=f;c=v[a+116>>2];a:{if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){Cy(g,d+12|0);break a}v[v[a+112>>2]+(c<<2)>>2]=f;v[a+116>>2]=c+1}v[a+140>>2]=v[a+140>>2]+1;e=e+1|0;if((e|0)!=(b|0)){continue}break}}xa=d+16|0}function aP(a,b,c){a:{b:{switch(c-8|0){case 0:if(!b){break a}v[a+380>>2]=v[a+380>>2]-1;v[b>>2]=v[a+388>>2];v[a+388>>2]=b;return;case 8:if(!b){break a}v[a+672>>2]=v[a+672>>2]-1;v[b>>2]=v[a+680>>2];v[a+680>>2]=b;return;case 24:if(!b){break a}v[a+964>>2]=v[a+964>>2]-1;v[b>>2]=v[a+972>>2];v[a+972>>2]=b;return;default:break b}}if(!b){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}}function gs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=v[a+6340>>2];if(!(e>>>0>127|!w[e+150864|0])){d=v[(e<<2)+150992>>2]}if(!(!(d&16711680)|d>>>0>16777215)){a9(v[37696],8,b?b:11709,b?c:2766,69343,0);return}c=d+16777216|0;b=v[a+6340>>2];if(!(b>>>0>127|!w[b+150864|0])){v[(b<<2)+150992>>2]=c}if(d>>>0<=16777215){b=v[a+6348>>2];while(1){if(v[b+4>>2]){continue}break}}v[a+6344>>2]=151512}function zM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;uM((v[a>>2]<<5)+b|0,c,d);c=v[((v[a>>2]<<5)+b|0)+24>>2];if(!(!c|!v[c+4>>2])){a=c+640|0;b=0;while(1){z[a+112>>2]=v[a+352>>2]&4?z[a+112>>2]:C(0);z[a+124>>2]=v[a+364>>2]&4?z[a+124>>2]:C(0);z[a+120>>2]=v[a+360>>2]&4?z[a+120>>2]:C(0);z[a+116>>2]=v[a+356>>2]&4?z[a+116>>2]:C(0);a=a+368|0;b=b+1|0;if(b>>>0>2]){continue}break}}}function UC(a,b){var c=C(0),d=C(0),e=C(0);while(1){c=z[b+4>>2];d=z[b+8>>2];e=z[b+12>>2];z[a+16>>2]=z[a+16>>2]-z[b>>2];z[a+28>>2]=z[a+28>>2]-e;z[a+24>>2]=z[a+24>>2]-d;z[a+20>>2]=z[a+20>>2]-c;c=z[b>>2];d=z[b+4>>2];e=z[b+8>>2];z[a+12>>2]=z[a+12>>2]-z[b+12>>2];z[a+8>>2]=z[a+8>>2]-e;z[a+4>>2]=z[a+4>>2]-d;z[a>>2]=z[a>>2]-c;if(v[a+40>>2]){UC(v[a+36>>2],b);a=v[a+40>>2];continue}break}}function bV(a,b){var c=0,d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0);c=xa-32|0;xa=c;d=v[b>>2];v[a+32>>2]=0;v[a>>2]=2;if(d){g=C(C(6.2831854820251465)/C(d>>>0));d=0;while(1){f=z[b+4>>2];v[c+24>>2]=0;h=c,i=C(f*G9(e)),z[h+20>>2]=i;h=c,i=C(f*Q9(e)),z[h+16>>2]=i;ZU(a,c+16|0);e=C(g+e);d=d+1|0;if(d>>>0>2]){continue}break}}e=z[b+4>>2];v[c+8>>2]=0;z[c+4>>2]=e;v[c>>2]=0;ZU(a,c);xa=c+32|0}function Mo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=v[a+56>>2];e=w[(w[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=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[c>>2]+4785|0]){break a}}t[a+238|0]=b;return}if(!d){d=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=d}t[d+184|0]=b;Xu(v[a+48>>2],c);v[a+316>>2]=v[a+316>>2]|16384}function gy(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=128132;b=v[a+12>>2];if(b){while(1){d=v[v[a+8>>2]+(c<<2)>>2];if(d){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d);b=v[a+12>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}v[a+20>>2]=0;v[a+4>>2]=0;v[a+12>>2]=0;b=v[a+16>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+8>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function LV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);e=xa-16|0;xa=e;h=z[d+24>>2];i=z[d+20>>2];g=z[c+4>>2];j=z[d+16>>2];AV(e,f);l=h;h=z[e+8>>2];m=j;j=z[e>>2];k=i;i=z[e+4>>2];k=C(z[e+12>>2]+C(C(l*h)+C(C(m*j)+C(k*i))));c=g>2]=h;z[a+4>>2]=i;z[a>>2]=j;g=C(g-k);z[b>>2]=g>C(0)?g:C(0)}xa=e+16|0;return!c|0}function FP(a){var b=0,c=0,d=0,e=0,f=0;b=xa-16|0;xa=b;a:{if(!v[a+2344>>2]){break a}f=v[a+1244>>2];if(!f){break a}while(1){c=v[v[a+1240>>2]+(e<<2)>>2];if(v[c+60>>2]){v[b+12>>2]=-1;d=v[c+28>>2];d=Ba[v[v[d>>2]+20>>2]](d,b+12|0)|0;c=c+v[37425]|0;v[b+4>>2]=d;v[b>>2]=c;v[b+8>>2]=v[b+12>>2];c=v[a+2344>>2];Ba[v[v[c>>2]>>2]](c,b,1)}e=e+1|0;if((f|0)!=(e|0)){continue}break}}xa=b+16|0}function nZ(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=xa-48|0;xa=f;z[f+8>>2]=z[c>>2];z[f+12>>2]=z[c+4>>2];z[f+16>>2]=z[c+8>>2];z[f+20>>2]=z[d>>2];z[f+24>>2]=z[d+4>>2];z[f+28>>2]=z[d+8>>2];z[f+32>>2]=z[e>>2];z[f+36>>2]=z[e+4>>2];z[f+40>>2]=z[e+8>>2];c=a+8|0;b=v[b+8>>2];d=f+8|0;a=v[v[a+108>>2]+56>>2];if(a){a=w[a+b|0]}else{a=56}oZ(c,b,d,a);xa=f+48|0;return 1}function eW(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;g=xa-4256|0;xa=g;v[g+4200>>2]=-1;h=g+4200|0;kV(h,c);v[g+4144>>2]=-1;i=g+4144|0;kV(i,e);v[g+4136>>2]=0;v[g+4140>>2]=0;c=0;v[g+4112>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;a:{if(!xZ(h,i,d,f,g,g+16|0)){break a}if(!QV(a,b,v[g+4112>>2],g+16|0)){break a}c=v[g+4112>>2]!=0}xa=g+4256|0;return c|0}function XU(a,b){z[a+36>>2]=z[b>>2];z[a+40>>2]=z[b+4>>2];z[a+44>>2]=z[b+8>>2];z[a+48>>2]=z[b+12>>2];z[a+52>>2]=z[b+16>>2];z[a+56>>2]=z[b+20>>2];z[a+60>>2]=z[b+24>>2];z[a- -64>>2]=z[b+28>>2];z[a+68>>2]=z[b+32>>2];z[a+72>>2]=z[b+36>>2];z[a+76>>2]=z[b+40>>2];z[a+80>>2]=z[b+44>>2];z[a+84>>2]=z[b+48>>2];z[a+88>>2]=z[b+52>>2];z[a+92>>2]=z[b+56>>2];z[a+96>>2]=z[b+60>>2];return a}function GP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=xa-16|0;xa=c;b=v[a+980>>2];d=v[b+284>>2];g=v[b+280>>2];b=0;v[a+2508>>2]=0;if(d){h=a+2504|0;while(1){e=v[v[(b<<2)+g>>2]+32>>2];v[c+12>>2]=e;f=v[a+2508>>2];a:{if(f>>>0>=(v[a+2512>>2]&2147483647)>>>0){on(h,c+12|0);break a}v[v[a+2504>>2]+(f<<2)>>2]=e;v[a+2508>>2]=v[a+2508>>2]+1}b=b+1|0;if((d|0)!=(b|0)){continue}break}}xa=c+16|0}function XG(a,b){var c=0;z[a+32>>2]=z[a+32>>2]-z[b>>2];z[a+36>>2]=z[a+36>>2]-z[b+4>>2];z[a+40>>2]=z[a+40>>2]-z[b+8>>2];c=v[a+176>>2];if(!(!c|!(t[a+44|0]&1)|!w[c+28|0])){z[c+16>>2]=z[c+16>>2]-z[b>>2];z[c+20>>2]=z[c+20>>2]-z[b+4>>2];z[c+24>>2]=z[c+24>>2]-z[b+8>>2]}a=v[a>>2];if(a){z[a+80>>2]=z[a+80>>2]-z[b>>2];z[a+84>>2]=z[a+84>>2]-z[b+4>>2];z[a+88>>2]=z[a+88>>2]-z[b+8>>2]}}function WT(a){a=a|0;var b=0;if(Ba[v[v[a>>2]+8>>2]](a)|0){while(1){XT(a,Ba[v[v[a>>2]+12>>2]](a,0)|0);if(Ba[v[v[a>>2]+8>>2]](a)|0){continue}break}}if(Ba[v[v[a>>2]+32>>2]](a)|0){while(1){b=v[v[a+120>>2]>>2];Ba[v[v[b>>2]+8>>2]](b);if(Ba[v[v[a>>2]+32>>2]](a)|0){continue}break}}b=v[a+8>>2];b=Ba[v[v[b>>2]+28>>2]](b)|0;Ba[v[v[b>>2]+136>>2]](b,a+4|0);Ba[v[v[a>>2]+72>>2]](a);d9()}function HV(a,b){var c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=0;if(v[a+148>>2]){return jW(a,b)}e=w[a+156|0];if(e>>>0>=2){c=v[a+152>>2];f=z[b+8>>2];g=z[b>>2];h=z[b+4>>2];d=C(C(z[c+8>>2]*f)+C(C(z[c>>2]*g)+C(h*z[c+4>>2])));a=1;while(1){b=B(a,12)+c|0;i=C(C(z[b+8>>2]*f)+C(C(z[b>>2]*g)+C(h*z[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 GC(a,b){var c=0;c=v[b+36>>2];a:{if(!v[b+40>>2]){if(!c){break a}v[a+284>>2]=v[a+284>>2]-1;v[c>>2]=v[a+292>>2];v[a+292>>2]=c;break a}GC(a,c);GC(a,v[b+40>>2])}c=v[b+32>>2];if(!c){v[a+576>>2]=v[a+576>>2]-1;v[b>>2]=v[a+584>>2];v[a+584>>2]=b;return}b:{if(v[c+40>>2]!=(b|0)){break b}b=v[c+36>>2];if(!b){break b}v[a+576>>2]=v[a+576>>2]-1;v[b>>2]=v[a+584>>2];v[a+584>>2]=b}}function Pd(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=xa-48|0;xa=d;e=v[b+4>>2];b=v[b>>2];v[d+28>>2]=0;v[d+32>>2]=0;v[d+20>>2]=0;v[d+24>>2]=0;v[d+12>>2]=0;v[d+16>>2]=0;u[d+40>>1]=255;v[d+36>>2]=16711682;v[d+4>>2]=b;v[d>>2]=12;v[d+8>>2]=(e-b|0)/12;a=(g=a,h=d,i=Ba[v[v[c>>2]+148>>2]](c)|0,j=0,f=v[v[a>>2]+32>>2],Ba[f](g|0,h|0,i|0,j|0)|0);xa=d+48|0;return a|0}function hy(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=128132;b=v[a+12>>2];if(b){while(1){d=v[v[a+8>>2]+(c<<2)>>2];if(d){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d);b=v[a+12>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}v[a+20>>2]=0;v[a+4>>2]=0;v[a+12>>2]=0;b=v[a+16>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+8>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}iaa(a)}function Hp(a){var b=0,c=0,d=0;b=v[a+8>>2];if(b){while(1){d=v[v[a+4>>2]+(c<<2)>>2];if(d){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d);b=v[a+8>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}b=v[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+4>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}a=v[a>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}}function HS(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0);c=v[b+444>>2];v[a>>2]=v[b+440>>2];v[a+4>>2]=c;c=v[b+460>>2];v[a+16>>2]=v[b+456>>2];v[a+20>>2]=c;c=v[b+452>>2];v[a+8>>2]=v[b+448>>2];v[a+12>>2]=c;e=z[b+44>>2];f=z[b+36>>2];d=C(C(z[b+536>>2]*C(.5))+C(z[b+52>>2]+z[b+532>>2]));A[a+8>>3]=A[a+8>>3]-+C(d*z[b+40>>2]);A[a>>3]=A[a>>3]-+C(f*d);A[a+16>>3]=A[a+16>>3]-+C(d*e)}function gh(a,b){var c=0,d=0,e=0;d=v[b+4>>2];a:{if(!v[a+4>>2]){break a}c=d+15&-16;v[a+4>>2]=c;e=v[c+36>>2];if(e){v[c+44>>2]=v[c+44>>2]|-2147483648}d=c+48|0;b:{if(!w[c+32|0]){if(!v[c+40>>2]){break b}if(!e){break a}v[c+36>>2]=d;d=(v[c+44>>2]<<3)+d|0;break a}v[c+36>>2]=c;if(v[c+40>>2]){break a}}v[a+4>>2]=0}c=v[d>>2];d=d+4|0;v[b+4>>2]=d;v[a>>2]=c?d:0;v[b+4>>2]=c+v[b+4>>2]}function ug(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=xa-16|0;xa=c;b=x[b>>1];e=a+16|0;a:{b:{c:{d:{f=v[a+20>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[e>>2]+4785|0]){break b}}u[c+8>>1]=b;uH(a+28|0,c+8|0);break a}d=v[a+24>>2];if(!d){d=Pu(v[a+16>>2],f>>>24&15);v[a+24>>2]=d}u[d+16>>1]=b;Xu(v[a+16>>2],e);v[a+20>>2]=v[a+20>>2]|4}xa=c+16|0}function Xc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=laa(92);b=v[b>>2];c=v[c>>2];v[d+20>>2]=0;v[d+24>>2]=0;u[d+16>>1]=0;v[d+12>>2]=-1;v[d+4>>2]=0;v[d+8>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;t[d+84|0]=0;v[d+80>>2]=0;v[d+76>>2]=c;v[d+72>>2]=b;t[d+68|0]=0;v[d+52>>2]=0;v[d+44>>2]=2139095039;v[d+48>>2]=0;v[d+88>>2]=v[a>>2];v[a>>2]=0;v[d>>2]=114024;return d|0}function MT(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=C(0),g=C(0);c=xa-16|0;xa=c;e=b<=C(0);a:{if(e){break a}z[a+540>>2]=b;if(!v[a+432>>2]){break a}d=uU(a+8|0);v[c+12>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=3;Ba[v[v[d>>2]+44>>2]](d,c)|0;f=z[a+532>>2];g=z[a+536>>2];b=z[a+516>>2];z[c+12>>2]=z[a+540>>2]*b;z[c+8>>2]=g*b;z[c+4>>2]=f*b;Ba[v[v[d>>2]+36>>2]](d,c)}xa=c+16|0;return!e|0}function LT(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=C(0),g=C(0);c=xa-16|0;xa=c;e=b<=C(0);a:{if(e){break a}z[a+536>>2]=b;if(!v[a+432>>2]){break a}d=uU(a+8|0);v[c+12>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=3;Ba[v[v[d>>2]+44>>2]](d,c)|0;f=z[a+532>>2];g=z[a+536>>2];b=z[a+516>>2];z[c+12>>2]=z[a+540>>2]*b;z[c+8>>2]=g*b;z[c+4>>2]=f*b;Ba[v[v[d>>2]+36>>2]](d,c)}xa=c+16|0;return!e|0}function KT(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=C(0),g=C(0);c=xa-16|0;xa=c;e=b<=C(0);a:{if(e){break a}z[a+532>>2]=b;if(!v[a+432>>2]){break a}d=uU(a+8|0);v[c+12>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=3;Ba[v[v[d>>2]+44>>2]](d,c)|0;f=z[a+532>>2];g=z[a+536>>2];b=z[a+516>>2];z[c+12>>2]=z[a+540>>2]*b;z[c+8>>2]=g*b;z[c+4>>2]=f*b;Ba[v[v[d>>2]+36>>2]](d,c)}xa=c+16|0;return!e|0}function EC(a){var b=0;v[a+564>>2]=0;v[a+288>>2]=5120;v[a+292>>2]=0;v[a+280>>2]=256;v[a+284>>2]=0;v[a+268>>2]=a+8;t[a+264|0]=1;v[a+272>>2]=0;v[a+276>>2]=64;v[a+584>>2]=0;v[a+588>>2]=0;v[a+576>>2]=0;v[a+580>>2]=24576;v[a+568>>2]=64;v[a+572>>2]=256;v[a+560>>2]=a+300;t[a+556|0]=1;b=a+592|0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;return a}function UU(a,b){var c=0,d=0,e=0,f=0;if(w[a+32|0]){c=v[a+12>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+12>>2]=0;c=v[a+8>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+8>>2]=0;b=b<<2;if(b){c=v[37696]+12|0;e=a,f=Ba[v[v[c>>2]+8>>2]](c,b,24422,12516,76)|0,v[e+8>>2]=f;c=v[37696]+12|0;b=Ba[v[v[c>>2]+8>>2]](c,b,24422,12516,77)|0}else{b=0}v[a+12>>2]=b}}function DK(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=131596;if(v[a+8>>2]){while(1){c=b<<2;d=v[c+v[a+4>>2]>>2];Ba[v[v[d>>2]>>2]](d)|0;c=v[c+v[a+4>>2]>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}b=b+1|0;if(b>>>0>2]){continue}break}}b=v[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+4>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function HN(a,b,c,d,e,f){a=a|0;b=C(b);c=c|0;d=d|0;e=e|0;f=f|0;Ba[v[v[f>>2]+20>>2]](f);c=v[a+4>>2];I9(v[c+972>>2],0,v[c+976>>2]<<2);I9(v[c+984>>2],0,v[c+988>>2]<<2);v[c+1012>>2]=0;v[c+1004>>2]=0;v[c+1008>>2]=0;v[c+996>>2]=0;v[c+1e3>>2]=0;c=v[a+4>>2];v[c+1824>>2]=0;v[c+1828>>2]=0;v[c+1760>>2]=0;c=c+1752|0;v[c>>2]=0;v[c+4>>2]=0;Ba[v[v[a>>2]+132>>2]](a,b,v[a+28>>2],e)}function vU(a,b,c,d,e){var f=0,g=0;f=v[a+20>>2];if(f){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,f)}v[a+20>>2]=0;f=v[a+16>>2];if(f){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,f)}v[a+16>>2]=0;f=v[a+12>>2];if(f){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,f)}v[a+12>>2]=0;f=v[a>>2];if(f){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,f)}v[a+20>>2]=e;v[a+16>>2]=d;v[a+12>>2]=c;v[a>>2]=b}function Y8(a,b){var c=0,d=0,e=0,f=0;if(b){c=b<<2;if(c){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,77785,16608,553)|0}else{d=0}}else{d=0}c=v[a+4>>2];if((c|0)>0){e=d+(c<<2)|0;f=v[a>>2];c=d;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}if(v[a+8>>2]>=0){e=v[a>>2];if(e){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e)}}v[a+8>>2]=b;v[a>>2]=d}function Caa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(naa(a,v[b+8>>2],e)){if(!(v[b+28>>2]==1|v[b+4>>2]!=(c|0))){v[b+28>>2]=d}return}a:{if(!naa(a,v[b>>2],e)){break a}if(!(v[b+16>>2]!=(c|0)&v[b+20>>2]!=(c|0))){if((d|0)!=1){break a}v[b+32>>2]=1;return}v[b+20>>2]=c;v[b+32>>2]=d;v[b+40>>2]=v[b+40>>2]+1;if(!(v[b+36>>2]!=1|v[b+24>>2]!=2)){t[b+54|0]=1}v[b+44>>2]=4}}function pg(a){a=a|0;var b=0,c=0,d=0;d=xa-16|0;xa=d;c=0;a:{if((v[a+20>>2]>>>30|0)-3>>>0<4294967294){break a}b=v[a+16>>2];c=0;if(!b){break a}c=b-16|0}_n(v[37393],a,0,1);b=v[a+8>>2];if(b){lh(b+v[(x[b+4>>1]<<2)+86240>>2]|0,0,a)}b=v[a+12>>2];if(b){lh(b+v[(x[b+4>>1]<<2)+86240>>2]|0,0,a)}b=a+16|0;if(c){v[d+12>>2]=a;Og(c+5892|0,d+12|0);Iu(c+16|0,b)}su(b);xa=d+16|0}function d4(a,b){v[a>>2]=0;v[a+4>>2]=0;t[a+32|0]=b;v[a+28>>2]=a+44;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+112>>2]=0;v[a+116>>2]=1065353216;v[a+108>>2]=0;v[a+144>>2]=0;v[a+148>>2]=1065353216;v[a+136>>2]=0;v[a+140>>2]=0;v[a+128>>2]=0;v[a+132>>2]=1065353216;v[a+120>>2]=0;v[a+124>>2]=0;u[a+80>>1]=0;return a}function x$(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0);v[a>>2]=b;d=z[c+16>>2];e=z[c+12>>2];f=z[c>>2];g=z[c+4>>2];z[a+12>>2]=C(z[c+8>>2]+z[c+20>>2])*C(.5);z[a+8>>2]=C(g+d)*C(.5);z[a+4>>2]=C(f+e)*C(.5);d=C(C(z[c+20>>2]-z[c+8>>2])*C(.5));e=C(d*d);d=C(C(z[c+12>>2]-z[c>>2])*C(.5));f=C(d*d);d=C(C(z[c+16>>2]-z[c+4>>2])*C(.5));z[a+16>>2]=K(C(e+C(f+C(d*d))));return 1}function LG(a,b){var c=0,d=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+32>>2]=z[b>>2];z[c+36>>2]=z[b+4>>2];z[c+40>>2]=z[b+8>>2];break a}z[a+128>>2]=z[b>>2];z[a+132>>2]=z[b+4>>2];z[a+136>>2]=z[b+8>>2];a=v[a>>2];if(!a){break a}b=v[v[a+40>>2]+1012>>2];c=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(c|0)==2,d+8|0)}xa=d+16|0}function L4(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;v[a+28>>2]=0;v[a+12>>2]=0;v[a+8>>2]=c;v[a+4>>2]=b;v[a+32>>2]=0;v[a+36>>2]=0;v[a>>2]=145092;v[a+40>>2]=0;v[a+44>>2]=0;d=v[37696];e=d+12|0;d=(g=e,h=320,i=Ba[v[v[d>>2]+20>>2]](d)|0?38977:63804,j=13134,k=1809,f=v[v[e>>2]+8>>2],Ba[f](g|0,h|0,i|0,j|0,k|0)|0);z4(d,c,b);v[a+32>>2]=d;B4(d,v[b+8>>2]);return a}function Eb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);var g=0,h=C(0);g=xa-32|0;xa=g;h=z[c>>2];v[g+8>>2]=0;v[g+12>>2]=0;v[g>>2]=0;v[g+4>>2]=0;z[g+24>>2]=d;z[g+20>>2]=e;if(f==C(-1)){f=C(h*C(.009999999776482582));d=C(C(e*C(.49000000953674316))+C(d*C(-.49000000953674316)));f=d>f?f:d}z[g+16>>2]=f;z[g+4>>2]=h+h;Ba[v[v[a>>2]+148>>2]](a,b,g);xa=g+32|0}function N1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0);a=v[a+48>>2];e=z[b+8>>2];f=z[b>>2];h=z[b+4>>2];g=C(C(z[a+56>>2]*e)+C(C(z[a+48>>2]*f)+C(z[a+52>>2]*h)));i=C(C(z[a+72>>2]*e)+C(C(z[a- -64>>2]*f)+C(z[a+68>>2]*h)));e=C(C(z[a+88>>2]*e)+C(C(z[a+80>>2]*f)+C(z[a+84>>2]*h)));a=i>e;f=a?i:e;z[d>>2]=f>2]=e>2]=140724;b=v[a+72>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+80>>2]=0}b=v[a+76>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+76>>2]=0}b=v[a+84>>2];if(b){b=k1(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+84>>2]=0}return uV(a)|0}function NH(a){var b=0,c=0,d=0,e=0,f=0;c=v[a+24>>2];d=v[c- -64>>2];b=v[c+60>>2];if(b){f=!(t[v[b+44>>2]+44|0]&1)}e=d?!(t[v[d+44>>2]+44|0]&1):e;a:{b:{if(!(y[b+152>>2]<4294967294?b:0)){if(!d|!(f|e)){break b}b=0;if(y[d+152>>2]>=4294967294){break b}break a}b=0;if(f|e){break a}}if((w[c+68|0]&6)==6){sP(v[v[a>>2]+40>>2],c)}t[a+21|0]=w[a+21|0]&223;b=1}return b}function Kw(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=v[a+468>>2];if((b|0)==-1){b=0;e=v[a+448>>2];a:{if(e>>>0>=2){c=1;while(1){d=v[a+456>>2]+B(c,80)|0;Gw(d,v[(v[a+444>>2]+(c<<5)|0)+20>>2],1);v[d+72>>2]=b;f=w[d+79|0]+f|0;b=w[d+76|0]+b|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}if(v[a+468>>2]==(b|0)){break a}}Bw(a+112|0,b)}v[a+468>>2]=b;v[a+472>>2]=f}return b|0}function Ij(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];d=c>>>24&15;e=v[((d<<2)+89188|0)+12>>2];a:{b:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break a}break;case 1:break a;default:break b}}QE(a+e|0,b);return}c=v[a+8>>2];if(!c){c=Pu(v[a>>2],d);v[a+8>>2]=c}t[c+1|0]=b;Xu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|2}function Xa(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;i=xa-48|0;xa=i;v[i+24>>2]=v[c>>2];v[i+28>>2]=v[c+4>>2];v[i+32>>2]=v[c+8>>2];v[i+36>>2]=v[c+12>>2];v[i+8>>2]=v[e>>2];v[i+12>>2]=v[e+4>>2];v[i+16>>2]=v[e+8>>2];v[i+20>>2]=v[e+12>>2];Ba[a|0](i+40|0,b,i+24|0,d,i+8|0,f,g,h);a=laa(2);u[a>>1]=x[i+40>>1];xa=i+48|0;return a|0}function cI(a){var b=0,c=0;b=v[a+28>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+28>>2]=0;b=v[a+24>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+24>>2]=0;b=v[a+16>>2];if(b){Ba[v[v[b>>2]+4>>2]](b);v[a+16>>2]=0}b=v[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}a=v[a+4>>2];if(!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}}function Rr(a,b,c){a=a|0;b=b|0;c=C(c);var d=0;if((b|0)>=24){a9(v[37696],4,11709,2477,67091,0);return 0}if(c>2]+(b<<2)|0)+1032>>2]=c;if(!b){z[d+2656>>2]=c}return 1}d=a+5152|0;t[(d+b|0)+96|0]=1;z[d+(b<<2)>>2]=c;a=a+5580|0;v[a>>2]=v[a>>2]|32;return 1}function sO(a,b){var c=0,d=0,e=C(0),f=C(0),g=C(0);c=xa-16|0;xa=c;d=v[a+36>>2];if(z[d+124>>2]!=C(0)){f=z[d+20>>2];g=z[d+24>>2];e=C(C(1)-b);z[a+16>>2]=C(e*z[a+16>>2])+C(z[d+16>>2]*b);z[a+24>>2]=C(e*z[a+24>>2])+C(g*b);z[a+20>>2]=C(e*z[a+20>>2])+C(f*b);r9(c,b,a,d);z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+12>>2]=z[c+12>>2]}xa=c+16|0}function es(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=0;c=v[a+6340>>2];if(!(c>>>0>127|!w[c+150864|0])){b=v[(c<<2)+150992>>2]}d=b+65536&16711680|b&-16711681;c=v[a+6340>>2];if(!(c>>>0>127|!w[c+150864|0])){v[(c<<2)+150992>>2]=d}if(!(b&16711680)){a:{c=a+6348|0;b=v[c>>2];if(v[a+6344>>2]!=151512){a=v[c>>2];v[a+4>>2]=v[a+4>>2]+1;break a}v[b+4>>2]=v[b+4>>2]+1}}}function faa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=v[a+84>>2];f=v[e+4>>2];g=v[a+28>>2];d=v[a+20>>2]-g|0;d=d>>>0>f>>>0?f:d;if(d){H9(v[e>>2],g,d);v[e>>2]=d+v[e>>2];f=v[e+4>>2]-d|0;v[e+4>>2]=f}d=v[e>>2];f=c>>>0>f>>>0?f:c;if(f){H9(d,b,f);d=f+v[e>>2]|0;v[e>>2]=d;v[e+4>>2]=v[e+4>>2]-f}t[d|0]=0;b=v[a+44>>2];v[a+28>>2]=b;v[a+20>>2]=b;return c|0}function NT(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0);c=v[b+452>>2];v[a+8>>2]=v[b+448>>2];v[a+12>>2]=c;c=v[b+444>>2];v[a>>2]=v[b+440>>2];v[a+4>>2]=c;c=v[b+460>>2];v[a+16>>2]=v[b+456>>2];v[a+20>>2]=c;e=z[b+44>>2];f=z[b+36>>2];d=C(z[b+532>>2]+z[b+52>>2]);A[a+8>>3]=A[a+8>>3]-+C(d*z[b+40>>2]);A[a>>3]=A[a>>3]-+C(f*d);A[a+16>>3]=A[a+16>>3]-+C(d*e)}function xaa(a,b,c,d){t[a+53|0]=1;a:{if(v[a+4>>2]!=(c|0)){break a}t[a+52|0]=1;c=v[a+16>>2];b:{if(!c){v[a+36>>2]=1;v[a+24>>2]=d;v[a+16>>2]=b;if((d|0)!=1){break a}if(v[a+48>>2]==1){break b}break a}if((b|0)==(c|0)){c=v[a+24>>2];if((c|0)==2){v[a+24>>2]=d;c=d}if(v[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}v[a+36>>2]=v[a+36>>2]+1}t[a+54|0]=1}}function oh(a){var b=0,c=0,d=0,e=0,f=0;e=xa-16|0;xa=e;a=v[a+4>>2];if(a){f=v[a+36>>2];a=v[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(w[b|0]){continue}break}c=v[b+4>>2];if(!c){break a}b=mg(c);if(!b){continue}v[e+12>>2]=c;Og(b+5892|0,e+12|0);Iu(b+16|0,c+16|0);continue}break}xa=e+16|0}function ms(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;f=a+32|0;v[f+2300>>2]=0;v[e+12>>2]=0;a=f+2296|0;if((v[a+8>>2]&2147483647)>>>0>>0){Km(a,c)}d=v[a+4>>2];if((d|0)<(c|0)){g=v[a>>2];h=g+(c<<2)|0;d=(d<<2)+g|0;while(1){v[d>>2]=v[e+12>>2];d=d+4|0;if(h>>>0>d>>>0){continue}break}}v[a+4>>2]=c;H9(v[f+2296>>2],b,c<<2);xa=e+16|0}function yb(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);var f=0,g=C(0);f=xa-32|0;xa=f;g=z[b>>2];v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;z[f+24>>2]=c;z[f+20>>2]=d;if(e==C(-1)){e=C(g*C(.009999999776482582));c=C(C(d*C(.49000000953674316))+C(c*C(-.49000000953674316)));e=c>e?e:c}z[f+16>>2]=e;z[f+4>>2]=g+g;Ba[v[v[a>>2]+128>>2]](a,f);xa=f+32|0}function Rd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=xa-48|0;xa=e;v[e+28>>2]=0;v[e+32>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+12>>2]=0;v[e+16>>2]=0;u[e+40>>1]=255;v[e+8>>2]=c;v[e+36>>2]=16711682;v[e+4>>2]=b;v[e>>2]=12;a=(g=a,h=e,i=Ba[v[v[d>>2]+148>>2]](d)|0,j=0,f=v[v[a>>2]+32>>2],Ba[f](g|0,h|0,i|0,j|0)|0);xa=e+48|0;return a|0}function iI(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=v[a>>2];e=Ba[v[v[c>>2]+8>>2]](c,d,16608,553)|0}f=v[a+4>>2];c=v[a+8>>2];if((c|0)>0){g=(c<<2)+e|0;d=f;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+12>>2]<0)){c=v[a>>2];Ba[v[v[c>>2]+12>>2]](c,f)}v[a+12>>2]=b;v[a+4>>2]=e}function gd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=laa(76);b=v[b>>2];c=v[c>>2];v[d+20>>2]=0;v[d+24>>2]=0;u[d+16>>1]=0;v[d+12>>2]=-1;v[d+4>>2]=0;v[d+8>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;t[d+68|0]=0;v[d+64>>2]=0;v[d+60>>2]=c;v[d+56>>2]=b;t[d+52|0]=0;v[d+44>>2]=2139095039;v[d+72>>2]=v[a>>2];v[a>>2]=0;v[d>>2]=114344;return d|0}function Bg(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+16|0;a:{b:{c:{e=v[a+20>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+84>>2]=b;a=v[a+88>>2];if(a){z[a+44>>2]=b}return}c=v[a+24>>2];if(!c){c=Pu(v[a+16>>2],e>>>24&15);v[a+24>>2]=c}z[c+20>>2]=b;Xu(v[a+16>>2],d);v[a+20>>2]=v[a+20>>2]|8}function ri(a){a=a|0;var b=0,c=0;if(v[a+100>>2]){while(1){Wk(v[v[a+96>>2]+(b<<2)>>2]+48|0);b=b+1|0;if(b>>>0>2]){continue}break}}b=a+12|0;t[a+72|0]=1;v[a+68>>2]=0;a:{b:{switch((v[a+16>>2]>>>30|0)-2|0){case 0:c=v[b>>2];if(w[c+4785|0]){break a}default:v[a+56>>2]=0;return;case 1:break b}}c=v[b>>2]}Xu(c,b);v[a+16>>2]=v[a+16>>2]&-897|384}function qW(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);b=v[b+4>>2];d=z[b+56>>2];e=z[b+52>>2];f=z[b+72>>2];g=z[b+68>>2];h=z[b+48>>2];i=z[c+8>>2];j=z[c+4>>2];k=z[c>>2];l=z[b+64>>2];v[a+12>>2]=0;b=C(C(d*i)+C(C(h*k)+C(e*j)))>C(C(f*i)+C(C(l*k)+C(j*g)));z[a+8>>2]=b?d:f;z[a+4>>2]=b?e:g;z[a>>2]=b?h:l}function VS(a,b){a=a|0;b=b|0;var c=0;c=xa-32|0;xa=c;if(!(!(z[a+36>>2]!=z[b>>2]|z[a+40>>2]!=z[b+4>>2])&z[a+44>>2]==z[b+8>>2])){v[c+8>>2]=0;v[c>>2]=1065353216;v[c+4>>2]=0;o9(c+16|0,c,b);z[a+20>>2]=z[c+16>>2];z[a+24>>2]=z[c+20>>2];z[a+28>>2]=z[c+24>>2];z[a+32>>2]=z[c+28>>2];z[a+36>>2]=z[b>>2];z[a+40>>2]=z[b+4>>2];z[a+44>>2]=z[b+8>>2]}xa=c+32|0}function z4(a,b,c){v[a+28>>2]=0;v[a+32>>2]=-1;v[a+4>>2]=c;v[a>>2]=b;I9(a+36|0,0,69);v[a+260>>2]=0;v[a+264>>2]=0;v[a+252>>2]=-1082130432;v[a+256>>2]=-1082130432;v[a+268>>2]=0;v[a+272>>2]=0;v[a+276>>2]=0;v[a+280>>2]=0;v[a+284>>2]=0;v[a+288>>2]=0;v[a+292>>2]=0;v[a+296>>2]=0;v[a+300>>2]=0;v[a+304>>2]=0;v[a+308>>2]=0;v[a+312>>2]=0;v[a+316>>2]=0}function xH(a){var b=0,c=0;b=v[a+60>>2];if(b){a=v[b+60>>2];a:{b:{if(a){a=v[a+164>>2];if(a){break b}}a=v[b- -64>>2];if(!a){break a}a=v[a+164>>2];if(!a){break a}}HH(v[v[b+48>>2]+1136>>2],a,b)}if(!(w[b+68|0]&8)){LH(v[b+56>>2])}c=v[b+56>>2];if(c){a=v[v[b+48>>2]+2408>>2];v[a+280>>2]=v[a+280>>2]-1;v[c>>2]=v[a+288>>2];v[a+288>>2]=c}v[b+56>>2]=0}}function fq(a,b){var c=0,d=0,e=0;e=v[b>>2];d=a+5936|0;c=v[d>>2]-1|0;v[d>>2]=c;d=v[a+5932>>2];v[d+(e<<2)>>2]=v[(c<<2)+d>>2];a:{if(!c){break a}e=c;c=v[b>>2];if((e|0)==(c|0)){break a}b:{c:{a=v[v[a+5932>>2]+(c<<2)>>2];switch(Ba[v[v[a>>2]+24>>2]](a)|0){case 1:break b;case 0:break c;default:break a}}v[a+44>>2]=v[b>>2];return}v[a+44>>2]=v[b>>2]}}function EF(a,b){var c=0,d=0,e=0,f=0;e=xa-16|0;xa=e;v[e+12>>2]=b;c=v[a+60>>2];d=(b>>>0)/(c>>>0)|0;c=v[v[a+40>>2]+(d<<2)>>2]+(b-B(c,d)<<4)|0;d=x[c+4>>1];a:{if(d&2){break a}f=v[a+340>>2];if(f>>>0>=(v[a+344>>2]&2147483647)>>>0){on(a+336|0,e+12|0);d=x[c+4>>1];break a}v[v[a+336>>2]+(f<<2)>>2]=b;v[a+340>>2]=v[a+340>>2]+1}u[c+4>>1]=d|2;xa=e+16|0}function qV(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;a:{e=v[a+172>>2];if(!e){break a}if((e|0)!=1){i=e&-2;while(1){d=f<<2;g=v[d+v[a+168>>2]>>2];Ba[v[v[g>>2]+8>>2]](g,b,c);d=v[v[a+168>>2]+(d|4)>>2];Ba[v[v[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=v[v[a+168>>2]+(f<<2)>>2];Ba[v[v[a>>2]+8>>2]](a,b,c)}}function Uj(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;b=b>C(0)?C(C(1)/b):C(0);d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}KG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+92>>2]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|1}function Il(a,b,c){a=a|0;b=C(b);c=C(c);var d=0,e=0,f=0;e=a+8|0;a:{b:{c:{f=v[a+12>>2];switch((f>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[e>>2]+4785|0]){break a}}fF(a+20|0,b,c);return}d=v[a+16>>2];if(!d){d=Pu(v[a+8>>2],f>>>24&15);v[a+16>>2]=d}z[d+152>>2]=c;z[d+148>>2]=b;Xu(v[a+8>>2],e);v[a+12>>2]=v[a+12>>2]|262144}function Al(a,b,c){a=a|0;b=C(b);c=C(c);var d=0,e=0,f=0;e=a+8|0;a:{b:{c:{f=v[a+12>>2];switch((f>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[e>>2]+4785|0]){break a}}dF(a+20|0,b,c);return}d=v[a+16>>2];if(!d){d=Pu(v[a+8>>2],f>>>24&15);v[a+16>>2]=d}z[d+144>>2]=c;z[d+140>>2]=b;Xu(v[a+8>>2],e);v[a+12>>2]=v[a+12>>2]|131072}function oaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=xa+-64|0;xa=e;d=1;a:{if(naa(a,b,0)){break a}d=0;if(!b){break a}b=paa(b,109860);d=0;if(!b){break a}d=e+8|0;I9(d|4,0,52);v[e+56>>2]=1;v[e+20>>2]=-1;v[e+16>>2]=a;v[e+8>>2]=b;Ba[v[v[b>>2]+28>>2]](b,d,v[c>>2],1);a=v[e+32>>2];if((a|0)==1){v[c>>2]=v[e+24>>2]}d=(a|0)==1}xa=e- -64|0;return d|0}function lS(a,b){var c=0,d=0;d=v[b+36>>2];v[b+36>>2]=-1;c=v[a>>2];b=d<<2;v[c+b>>2]=v[(c+(v[a+4>>2]<<2)|0)-4>>2];c=v[a+24>>2];v[c+b>>2]=v[(c+(v[a+28>>2]<<2)|0)-4>>2];c=v[a+12>>2];v[c+b>>2]=v[(c+(v[a+16>>2]<<2)|0)-4>>2];c=v[a+4>>2];if((c|0)!=(d+1|0)){v[v[b+v[a>>2]>>2]+36>>2]=d}v[a+4>>2]=c-1;v[a+16>>2]=v[a+16>>2]-1;v[a+28>>2]=v[a+28>>2]-1}function P9(a,b){a:{if((b|0)>=1024){a=a*898846567431158e293;if(b>>>0<2047){b=b-1023|0;break a}a=a*898846567431158e293;b=((b|0)<3069?b:3069)-2046|0;break a}if((b|0)>-1023){break a}a=a*2004168360008973e-307;if(b>>>0>4294965304){b=b+969|0;break a}a=a*2004168360008973e-307;b=((b|0)>-2960?b:-2960)+1938|0}l(0,0);l(1,b+1023<<20);return a*+n()}function zd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=xa-16|0;xa=d;f=v[a>>2];v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;a:{a=v[c+4>>2];c=v[c>>2];if((a|0)!=(c|0)){a=a-c|0;if((a|0)<0){break a}e=laa(a);v[d>>2]=e;v[d+8>>2]=(a>>2<<2)+e;g=d,h=H9(e,c,a)+a|0,v[g+4>>2]=h}Ba[f|0](b,d);a=v[d>>2];if(a){v[d+4>>2]=a;iaa(a)}xa=d+16|0;return}da();L()}function _q(a,b){a=a|0;b=b|0;a:{b:{switch(x[b+4>>1]-5|0){case 1:$q(b,b+48|0,0,0);return;case 0:a=b+48|0;if(!$q(b,a,0,0)|t[(w[b+317|0]&64?v[b+56>>2]+268|0:b+108|0)|0]&1){break a}po(b,a);return;case 8:if(!$q(b,b+48|0,0,0)){break a}a=v[b+320>>2];cj(Ba[v[v[a>>2]+100>>2]](a)|0,0,1);return;default:break b}}a9(v[37696],4,11709,1767,73217,0)}}function B3(a,b,c,d,e){var f=0,g=0,h=0;a=v[a+24>>2];a:{if((b+1|0)!=(c|0)){while(1){f=a?a+36|0:0;g=(c-b>>>1|0)+b|0;b:{if(v[a+24>>2]){B3(a,b,g,d,e);break b}v[(b<<2)+d>>2]=a;v[e>>2]=v[e>>2]+1}h=1;b=g+1|0;a=v[f+24>>2];if(!a){c=b;break a}if((g+2|0)!=(c|0)){continue}break}}h=2;v[(b<<2)+d>>2]=a;f=a?a+36|0:0}v[(c<<2)+d>>2]=f;v[e>>2]=v[e>>2]+h}function AP(a,b,c){var d=0;d=xa-16|0;xa=d;v[d+4>>2]=c;v[d>>2]=b;v[d+8>>2]=v[b+48>>2];v[d+12>>2]=v[c+48>>2];b=v[a+2424>>2];a:{if(b>>>0>=(v[a+2428>>2]&2147483647)>>>0){zP(a+2420|0,d);break a}c=v[d+4>>2];b=v[a+2420>>2]+(b<<4)|0;v[b>>2]=v[d>>2];v[b+4>>2]=c;c=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=c;v[a+2424>>2]=v[a+2424>>2]+1}xa=d+16|0}function zg(a,b,c){a=a|0;b=C(b);c=C(c);var d=0,e=0,f=0;e=a+16|0;a:{b:{c:{f=v[a+20>>2];switch((f>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[e>>2]+4785|0]){break a}}wH(a+28|0,b,c);return}d=v[a+24>>2];if(!d){d=Pu(v[a+16>>2],f>>>24&15);v[a+24>>2]=d}z[d+12>>2]=c;z[d+8>>2]=b;Xu(v[a+16>>2],e);v[a+20>>2]=v[a+20>>2]|2}function wH(a,b,c){var d=0,e=0;z[a+52>>2]=c;z[a+48>>2]=b;a=v[a+60>>2];if(a){d=w[a+68|0];e=b>2]+21|0]&32)){break a}rP(v[a+48>>2],a);break a}if(d&4){sP(v[a+48>>2],a);d=w[a+68|0]}t[a+68|0]=d&253}z[a+4>>2]=c;z[a>>2]=b}}function o4(a){a=a|0;var b=0,c=0;v[a>>2]=144984;b=v[a+48>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+40>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+36>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+28>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function ed(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=laa(48);b=b+c|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;v[a+8>>2]=v[b+8>>2];u[a+12>>1]=x[b+12>>1];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];z[a+32>>2]=z[b+32>>2];z[a+36>>2]=z[b+36>>2];z[a+40>>2]=z[b+40>>2];v[a+44>>2]=v[b+44>>2];return a|0}function YM(a){a=a|0;var b=0,c=0,d=0,e=0;b=xa-16|0;xa=b;v[b+12>>2]=0;v[b+8>>2]=0;GM(v[a+28>>2],v[a+32>>2],v[a+36>>2],v[a+40>>2],v[a+44>>2],v[a+48>>2],v[a+52>>2],v[a+56>>2],z[a+60>>2],b+12|0,b+8|0);d=v[a+64>>2];c=v[d>>2];e=d;d=v[b+12>>2];v[e>>2]=(c|0)>(d|0)?c:d;c=v[a+68>>2];a=v[c>>2];d=c;c=v[b+8>>2];v[d>>2]=(a|0)>(c|0)?a:c;xa=b+16|0}function AV(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);j=z[b+24>>2];k=z[b+20>>2];l=z[b+16>>2];c=z[b>>2];e=C(c+c);d=z[b+8>>2];h=z[b+4>>2];f=z[b+12>>2];g=C(f+f);i=C(C(e*d)-C(h*g));z[a+8>>2]=i;d=C(C(d*g)+C(e*h));z[a+4>>2]=d;c=C(C(c*e)+C(C(f*g)+C(-1)));z[a>>2]=c;z[a+12>>2]=-C(C(j*i)+C(C(l*c)+C(k*d)))}function Fo(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;b=C(G(b,C(0)));d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+172>>2]=b;return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+132>>2]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|256}function CF(a,b){var c=0;c=xa-16|0;xa=c;v[c+8>>2]=b;b=b>>>7|0;a:{if(v[(v[a+16>>2]+B(b,24)|0)+16>>2]){break a}b=v[a+28>>2]+(b<<2)|0;if(v[b>>2]!=33554431){break a}v[b>>2]=v[a+140>>2];b=v[a+140>>2];if(b>>>0>=(v[a+144>>2]&2147483647)>>>0){YF(a+136|0,c+8|0);break a}v[v[a+136>>2]+(b<<2)>>2]=v[c+8>>2];v[a+140>>2]=v[a+140>>2]+1}xa=c+16|0}function l5(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+268>>2]=v[b>>2];v[c+272>>2]=d;v[c+300>>2]=v[b+32>>2];d=v[b+28>>2];v[c+292>>2]=v[b+24>>2];v[c+296>>2]=d;d=v[b+20>>2];v[c+284>>2]=v[b+16>>2];v[c+288>>2]=d;d=v[b+12>>2];v[c+276>>2]=v[b+8>>2];v[c+280>>2]=d;t[v[a+80>>2]+479|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function f3(a){var b=0,c=0;b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+20>>2]=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+16>>2]=0;b=v[a+4>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;return a}function hi(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=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[c>>2]+4785|0]){break a}}u[a+40>>1]=b;return}d=v[a+20>>2];if(!d){d=Pu(v[a+12>>2],e>>>24&15);v[a+20>>2]=d}u[d+20>>1]=b;Xu(v[a+12>>2],c);v[a+16>>2]=v[a+16>>2]|32}function MI(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=v[a+48>>2];if(w[c+60|0]){dI(c)}c=v[a+52>>2];if(w[c+60|0]){dI(c);c=v[a+52>>2]}a=v[a+48>>2];d=v[a+8>>2];g=v[a+4>>2];h=v[a+24>>2];a=v[a+28>>2];i=v[c+8>>2];j=v[c+4>>2];k=v[c+24>>2];c=v[c+28>>2];KI(b,f,d,g,h,a,i,j,k,c,e);LI(b,f,i,j,k,c,d,g,h,a,e)}function tj(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;b=C(b*b);a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}PG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+120>>2]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|32}function rj(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;b=C(b*b);a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}OG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+116>>2]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|16}function gk(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;b=C(-b);a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+156>>2]=b;return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+172>>2]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|2048}function KP(a,b,c,d,e){var f=0,g=0,h=0,i=0;h=v[a+2388>>2];g=v[h+12>>2]+B(v[h+8>>2],12)|0;f=v[g+4>>2];a:{if(f){v[g+4>>2]=v[f>>2];break a}b:{f=v[g+8>>2];if((f|0)==v[h>>2]){break b}i=v[h+4>>2];v[g+8>>2]=f+1;g=v[g>>2];if(!g){break b}f=g+B(f,i)|0;break a}f=MO(h)}b=TJ(f,a,b);v[b>>2]=138660;v[a+2664>>2]=v[a+2664>>2]+1;HP(a,c,d,b,e)}function At(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==6){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;v[b>>2]=v[a>>2];c=v[a+8>>2];v[b+4>>2]=v[a+4>>2];v[b+8>>2]=c;c=v[a+16>>2];v[b+12>>2]=v[a+12>>2];v[b+16>>2]=c;t[b+20|0]=w[a+20|0];t[b+23|0]=w[a+23|0];a=w[a+21|0]|w[a+22|0]<<8;t[b+21|0]=a;t[b+22|0]=a>>>8}return(d|0)==6|0}function ko(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0);c=xa-32|0;xa=c;e=z[b+12>>2];f=z[b+8>>2];g=z[b>>2];h=z[b+4>>2];d=C(C(1)/C(K(C(C(e*e)+C(C(f*f)+C(C(g*g)+C(h*h)))))));z[c+12>>2]=e*d;z[c+8>>2]=f*d;z[c+4>>2]=h*d;z[c>>2]=g*d;z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];lo(a,c);xa=c+32|0}function Lo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+48|0;b=w[b|0];a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}t[a+238|0]=b;return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}t[c+184|0]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|16384}function h_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;z[b>>2]=z[a+88>>2];z[c>>2]=z[a+92>>2];z[c+4>>2]=z[a+96>>2];z[c+8>>2]=z[a+100>>2];z[c+12>>2]=z[a+104>>2];z[c+16>>2]=z[a+108>>2];z[c+20>>2]=z[a+112>>2];z[c+24>>2]=z[a+116>>2];z[c+28>>2]=z[a+120>>2];z[c+32>>2]=z[a+124>>2];z[d>>2]=z[a+40>>2];z[d+4>>2]=z[a+44>>2];z[d+8>>2]=z[a+48>>2]}function gq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a:{if((Ba[v[v[b>>2]+28>>2]](b)|0)!=(a|0)){a=v[37696];v[d>>2]=4692;a9(a,8,11709,79,75385,d);break a}b:{switch(Ba[v[v[b>>2]+24>>2]](b)|0){case 0:bq(a,b,c,1);break a;case 1:cq(a,b,c,1);break a;case 2:break b;default:break a}}a9(v[37696],2,11709,689,22124,0)}xa=d+16|0}function Ai(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;a:{c=v[a+100>>2];if(!c){break a}if((c|0)!=1){g=c&-2;while(1){e=d<<2;Ba[v[v[b>>2]+8>>2]](b,v[e+v[a+96>>2]>>2]);Ba[v[v[b>>2]+8>>2]](b,v[v[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}Ba[v[v[b>>2]+8>>2]](b,v[v[a+96>>2]+(d<<2)>>2])}}function Vd(a){a=a|0;var b=0,c=C(0),d=0;b=laa(48);c=z[a>>2];v[b+4>>2]=976715828;v[b+8>>2]=0;t[b+11|0]=0;t[b+12|0]=0;t[b+13|0]=0;t[b+14|0]=0;z[b>>2]=c*C(c*C(.05999999865889549));d=v[a>>2];a=v[a+4>>2];v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=d;v[b+20>>2]=a;v[b+40>>2]=0;v[b+44>>2]=32;v[b+32>>2]=1057803469;v[b+36>>2]=0;return b|0}function MH(a){var b=0,c=0,d=0,e=0,f=0,g=0;c=v[a+24>>2];d=v[c- -64>>2];f=1;g=1;e=v[c+60>>2];if(e){g=y[e+152>>2]<4294967294}f=d?y[d+152>>2]<4294967294:f;b=e?!(t[v[e+44>>2]+44|0]&1):b;b=(f|g)&(!(d?t[v[d+44>>2]+44|0]&1:1)|b);a:{if(!b){break a}t[a+21|0]=w[a+21|0]|32;if((w[c+68|0]&6)!=2){break a}rP(v[v[a>>2]+40>>2],c)}return b}function JS(a,b){var c=C(0),d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=C(0);d=A[a+440>>3];j=z[a+36>>2];e=A[a+448>>3];k=z[a+40>>2];f=A[a+456>>3];c=z[a+536>>2];g=+C(C(c*z[a+44>>2])*C(.5));A[b+40>>3]=f+g;h=+C(C(c*k)*C(.5));A[b+32>>3]=e+h;i=+C(C(c*j)*C(.5));A[b+24>>3]=d+i;A[b+16>>3]=f-g;A[b+8>>3]=e-h;A[b>>3]=d-i;z[b+48>>2]=z[a+532>>2]}function u9(a){var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;a:{if(!a){break a}a=a-16|0;b=v[a>>2];if(b>>>0>=17){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}d=b-8|0;if(d>>>0>=y[v[37696]+248>>2]){e=v[37696];v[c+12>>2]=0;X8(e+244|0,b-7|0,c+12|0)}b=d<<2;v[a>>2]=v[b+v[v[37696]+244>>2]>>2];v[b+v[v[37696]+244>>2]>>2]=a}xa=c+16|0}function JA(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=xa-48|0;xa=a;v[a+20>>2]=g;v[a+12>>2]=f;v[a+24>>2]=i;g=0;v[a+16>>2]=0;if(e){while(1){c=(g<<3)+d|0;f=(v[c>>2]<<5)+b|0;Ba[v[(w[v[f+24>>2]]<<2)+j>>2]](f,x[c+4>>1],a+8|0);g=g+1|0;if((g|0)!=(e|0)){continue}break}}v[h>>2]=0;xa=a+48|0}function xU(a){a=a|0;var b=0,c=0;v[a>>2]=140412;vU(a+28|0,0,0,0,0);b=v[a+24>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+16>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+4>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function dC(a){var b=0,c=0;b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+16>>2]=0;b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+20>>2]=0}function xo(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}WG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+176>>2]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|4096}function ik(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}TG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+180>>2]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|8192}function ar(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:{b:{switch(x[b+4>>1]-5|0){case 1:$q(b,b+48|0,c,d);return;case 0:a=b+48|0;if(!$q(b,a,c,d)|t[(w[b+317|0]&64?v[b+56>>2]+268|0:b+108|0)|0]&1){break a}po(b,a);return;case 8:break b;default:break a}}if(!$q(b,b+48|0,c,d)){break a}a=v[b+320>>2];cj(Ba[v[v[a>>2]+100>>2]](a)|0,0,1)}}function fs(a){a=a|0;var b=0,c=0,d=0;b=v[a+6340>>2];if(!(b>>>0>127|!w[b+150864|0])){c=v[(b<<2)+150992>>2]}b=c>>>16|0;if(!(b&255)){a9(v[37696],8,11709,2749,69570,0);return}d=c&-16711681;c=b-1&255;d=d|c<<16;b=v[a+6340>>2];if(!(b>>>0>127|!w[b+150864|0])){v[(b<<2)+150992>>2]=d}if(!c){a=v[a+6348>>2];v[a+4>>2]=v[a+4>>2]-1}}function _Q(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=xa-48|0;xa=c;d=v[a+28>>2];a=v[v[d+976>>2]+1024>>2];Ba[v[v[a>>2]+84>>2]](c+8|0,a);b=v[d+980>>2];a=v[b+332>>2];if(a){b=v[b+328>>2];f=(v[d+2360>>2]&8)!=0;while(1){a=a-1|0;e=v[b+8>>2];if(!(!e|w[e+24|0])){nJ(v[d+2168>>2],e,4,0,c+8|0,f)}b=b+12|0;if(a){continue}break}}xa=c+48|0}function vo(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}VG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+124>>2]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|64}function ek(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+140>>2]=b;return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+128>>2]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|128}function gT(a){v[a>>2]=0;v[a+4>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;t[a+59|0]=1;t[a+60|0]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+16>>2]=1065353216;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;t[a+51|0]=0;t[a+52|0]=0;t[a+53|0]=0;t[a+54|0]=0;t[a+55|0]=0;t[a+56|0]=0;t[a+57|0]=0;t[a+58|0]=0;return a}function Si(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}NG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+112>>2]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|8}function Qi(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}MG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Pu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+108>>2]=b;Xu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|4}function JN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{if(!c){break a}f=c&1;d=0;if((c|0)!=1){g=c&-2;c=0;while(1){e=d<<2;Ba[v[v[a>>2]+28>>2]](a,v[e+b>>2],0,0);Ba[v[v[a>>2]+28>>2]](a,v[(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}Ba[v[v[a>>2]+28>>2]](a,v[(d<<2)+b>>2],0,0)}}function Iy(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;a:{if(!b){break a}c=v[37696];b=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,10233,250)|0;v[d+12>>2]=b;if(!b){break a}c=v[a+104>>2];b:{if(c>>>0>=(v[a+108>>2]&2147483647)>>>0){Us(a+100|0,d+12|0);break b}v[v[a+100>>2]+(c<<2)>>2]=b;v[a+104>>2]=c+1}e=v[d+12>>2]}xa=d+16|0;return e}function pP(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=v[37696];e=d+12|0;e=(g=e,h=28,i=Ba[v[v[d>>2]+20>>2]](d)|0?37547:63804,j=11777,k=1766,f=v[v[e>>2]+8>>2],Ba[f](g|0,h|0,i|0,j|0,k|0)|0);d=v[b>>2];c=v[c>>2];b=TH(e,d,c,5,0);v[b+24>>2]=a;XP(b);UE(v[b>>2],b);UE(v[b+4>>2],b);oG(v[d+160>>2],c,d,b);v[v[b+24>>2]>>2]=b}function X3(a){a=a|0;var b=0,c=0,d=0;v[a+16>>2]=140672;v[a>>2]=144868;c=a+16|0;a:{if(t[a+196|0]&1){break a}b=v[a+200>>2];if(!b){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b-v[b-4>>2]|0);v[a+200>>2]=0}sV(c);v[a>>2]=144804;b=v[a+4>>2];if(b){b=f3(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=0;return a|0}function rl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}bF(a+20|0,b);return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}v[c+136>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|524288}function ol(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}gF(a+20|0,b);return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+124>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|16384}function Ue(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);d=laa(40);a=v[a>>2];c=w[c|0];v[d>>2]=4;z[d+4>>2]=z[b>>2];z[d+8>>2]=z[b+4>>2];z[d+12>>2]=z[b+8>>2];z[d+16>>2]=z[b+12>>2];z[d+20>>2]=z[b+16>>2];z[d+24>>2]=z[b+20>>2];e=z[b+24>>2];t[d+37|0]=0;t[d+38|0]=0;t[d+36|0]=c;v[d+32>>2]=a;z[d+28>>2]=e;t[d+39|0]=0;return d|0}function Qe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);d=laa(40);a=v[a>>2];c=w[c|0];v[d>>2]=5;z[d+4>>2]=z[b>>2];z[d+8>>2]=z[b+4>>2];z[d+12>>2]=z[b+8>>2];z[d+16>>2]=z[b+12>>2];z[d+20>>2]=z[b+16>>2];z[d+24>>2]=z[b+20>>2];e=z[b+24>>2];t[d+33|0]=0;t[d+34|0]=0;t[d+32|0]=c;z[d+28>>2]=e;t[d+35|0]=0;v[d+36>>2]=a;return d|0}function P2(a,b){a=a|0;b=b|0;var c=0;c=v[b+4>>2];v[a+4>>2]=v[b>>2];v[a+8>>2]=c;c=v[b+20>>2];v[a+20>>2]=v[b+16>>2];v[a+24>>2]=c;c=v[b+12>>2];v[a+12>>2]=v[b+8>>2];v[a+16>>2]=c;v[a+28>>2]=v[b+24>>2];v[a+48>>2]=v[b+44>>2];c=v[b+40>>2];v[a+40>>2]=v[b+36>>2];v[a+44>>2]=c;c=v[b+32>>2];v[a+32>>2]=v[b+28>>2];v[a+36>>2]=c}function El(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+348>>2]=b;return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+120>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|8192}function Cl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+344>>2]=b;return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+116>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|4096}function yl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+336>>2]=b;return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+104>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|512}function yh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=xa-16|0;xa=e;d=w[a+73|0];d=c?d|b:d&(b^-1);t[a+73|0]=d;b=a+12|0;a:{b:{c:{switch((v[a+16>>2]>>>30|0)-2|0){case 0:c=v[b>>2];if(w[c+4785|0]){break b}default:t[e+8|0]=d;YE(a+24|0,e+8|0);break a;case 1:break c}}c=v[b>>2]}Xu(c,b);v[a+16>>2]=v[a+16>>2]|524288}xa=e+16|0}function wl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+332>>2]=b;return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+100>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|256}function ml(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}eF(a+20|0,b);return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+108>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|1024}function mi(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+52>>2]=b;return}c=v[a+20>>2];if(!c){c=Pu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}z[c+24>>2]=b;Xu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|64}function ki(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+48>>2]=b;return}c=v[a+20>>2];if(!c){c=Pu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}z[c+16>>2]=b;Xu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|16}function gl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}t[a+354|0]=b;return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}v[c+132>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|65536}function Yl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+288>>2]=b;return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+96>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|128}function TJ(a,b,c){var d=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a+44>>2]=c;v[a+40>>2]=b;v[a>>2]=130400;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[c>>2]=a;v[a>>2]=131380;b=v[b+2372>>2];c=v[b+12>>2];if(c){c=c-1|0;d=v[v[b+8>>2]+(c<<2)>>2];v[b+12>>2]=c;v[a+48>>2]=d;return a}c=b;b=v[b+4>>2];v[c+4>>2]=b+1;v[a+48>>2]=b;return a}function SG(a,b,c){var d=0;d=v[a+176>>2];if(d){if(c){z[a+140>>2]=z[d+44>>2];z[a+128>>2]=z[d+32>>2];z[a+132>>2]=z[d+36>>2];z[a+136>>2]=z[d+40>>2];z[a+120>>2]=z[d+48>>2];z[a+124>>2]=z[d+52>>2];z[a+112>>2]=z[d+56>>2];z[a+116>>2]=z[d+60>>2]}v[b+280>>2]=v[b+280>>2]-1;v[d>>2]=v[b+288>>2];v[b+288>>2]=d;v[a+176>>2]=0}}function Kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}t[a+353|0]=b;return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}t[c+128|0]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|32768}function Kk(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+44>>2]=b;return}c=v[a+20>>2];if(!c){c=Pu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}z[c+12>>2]=b;Xu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|8}function ul(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+272>>2]=b;return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+92>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|64}function ot(a,b){a=a|0;b=b|0;var c=0,d=0;a:{b:{c:{d:{c=a+48|0;switch(v[c+68>>2]-5|0){case 1:break c;case 0:break d;default:break a}}Ba[v[v[b>>2]+12>>2]](b,16);d=c+120|0;c=c+116|0;break b}Ba[v[v[b>>2]+12>>2]](b,16);d=c+100|0;c=c+96|0}Ba[v[v[b>>2]+8>>2]](b,v[c>>2],x[d>>1]<<1)}Ba[v[v[b>>2]+16>>2]](b,v[a+192>>2])}function kl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+328>>2]=b;return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+88>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|32}function il(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+324>>2]=b;return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+84>>2]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|16}function Gl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}t[a+352|0]=b;return}c=v[a+16>>2];if(!c){c=Pu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}t[c+112|0]=b;Xu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|2048}function BO(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0);b=v[b+32>>2];a:{if(b){z[a>>2]=z[b>>2];d=z[b+20>>2];e=z[b+28>>2];f=z[b+16>>2];g=z[b+12>>2];h=z[b+8>>2];i=z[b+4>>2];c=z[b+24>>2];break a}v[a>>2]=0;c=C(0)}z[a+28>>2]=e;z[a+16>>2]=f;z[a+12>>2]=g;z[a+8>>2]=h;z[a+4>>2]=i;z[a+24>>2]=c;z[a+20>>2]=d}function zU(a){a=a|0;var b=0,c=0,d=0,e=0;a:{b:{d=v[a+56>>2];c=v[d+124>>2];if(!c){break b}e=v[d+120>>2];while(1){if(v[(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;v[d+124>>2]=c;e=b<<2;b=v[d+120>>2];v[e+b>>2]=v[b+(c<<2)>>2]}Ba[v[v[a>>2]+4>>2]](a)}function tr(a){a=a|0;var b=0,c=0,d=0;b=v[a+28>>2];d=Ba[v[v[b>>2]+136>>2]](b)|0;if(d){b=0;c=v[a+28>>2];Ba[v[v[c>>2]+392>>2]](c,0,0);if(v[a+36>>2]){while(1){c=v[a+32>>2]+B(b,24)|0;Ba[v[v[d>>2]+12>>2]](d,c,v[c+16>>2],v[c+20>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}a=v[a+28>>2];Ba[v[v[a>>2]+396>>2]](a)}}function ky(a,b){var c=0,d=0,e=C(0),f=C(0),g=0;c=x[b+8>>1];if((c|0)==65535){b=v[b+4>>2];e=z[b+24>>2];f=z[b+8>>2];c=v[b>>2];d=v[b+4>>2];g=v[b+20>>2];b=v[b+16>>2];v[a+12>>2]=0;v[a+28>>2]=0;z[a+24>>2]=e;v[a+16>>2]=b;v[a+20>>2]=g;v[a>>2]=c;v[a+4>>2]=d;z[a+8>>2]=f;return}d=a;a=v[b>>2];Ba[v[v[a>>2]+116>>2]](d,a,c)}function T2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=xa-240|0;xa=f;g=a+4|0;a:{if(!v[a+44>>2]){e=W3(f,g);if(d){v[d>>2]=0}d=M3(e,b,d,0);if(d){O3(e,c,Ba[v[v[a>>2]+12>>2]](a)|0,g)}X3(e);break a}e=Q3(f,g);if(d){v[d>>2]=0}d=M3(e,b,d,0);if(d){O3(e,c,Ba[v[v[a>>2]+12>>2]](a)|0,g)}R3(e)}xa=f+240|0;return d|0}function Ik(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}v[a+36>>2]=b;return}c=v[a+20>>2];if(!c){c=Pu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}v[c+8>>2]=b;Xu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|4}function Gk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}v[a+32>>2]=b;return}c=v[a+20>>2];if(!c){c=Pu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}v[c+4>>2]=b;Xu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|2}function dd(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+b|0;b=v[c+4>>2];v[a>>2]=v[c>>2];v[a+4>>2]=b;v[a+8>>2]=v[c+8>>2];u[a+12>>1]=x[c+12>>1];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[c+24>>2];z[a+28>>2]=z[c+28>>2];z[a+32>>2]=z[c+32>>2];z[a+36>>2]=z[c+36>>2];z[a+40>>2]=z[c+40>>2];v[a+44>>2]=v[c+44>>2]}function Oi(a){a=a|0;var b=0;a:{b=v[a+320>>2];b=Ba[v[v[b>>2]+100>>2]](b)|0;if(!v[b+88>>2]|v[v[b+84>>2]>>2]!=(a|0)){break a}b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}if(!b){break a}a9(v[37696],8,10567,141,22378,0);return}if(!v[a+356>>2]){Mi(a);return}a9(v[37696],8,10567,154,23818,0)}function tt(a,b){a=a|0;b=b|0;var c=0;b=v[b+36>>2]&1?v[b+40>>2]- -64|0:b+116|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;c=v[b+36>>2];v[a+32>>2]=v[b+32>>2];v[a+36>>2]=c;c=v[b+28>>2];v[a+24>>2]=v[b+24>>2];v[a+28>>2]=c;c=v[b+20>>2];v[a+16>>2]=v[b+16>>2];v[a+20>>2]=c;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c}function _s(a){a=a|0;var b=0,c=C(0),d=0;d=v[a+28>>2];b=d+32|0;a=v[a+20>>2];c=z[d+6072>>2];if(c!=C(0)){z[b+1080>>2]=c;v[b+4528>>2]=1;v[b+4524>>2]=a;z[b+1084>>2]=c>C(0)?C(C(1)/c):C(0);if(a){Ba[v[v[a>>2]+16>>2]](a);v[b+4520>>2]=v[v[b+4524>>2]+16>>2]}a=b+4504|0;cP(b,a);b=v[b+4520>>2];Ba[v[v[b>>2]+72>>2]](b,a)}}function Yj(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0);if(w[b+316|0]&2){b=v[b+56>>2]+96|0}else{c=b- -64|0;b=v[c+176>>2];a:{if(!(!b|w[b+31|0]!=1)){b=b+32|0;break a}b=c+128|0}}d=z[b>>2];e=z[b+4>>2];f=z[b+8>>2];z[a+8>>2]=f==C(0)?C(0):C(C(1)/f);z[a+4>>2]=e==C(0)?C(0):C(C(1)/e);z[a>>2]=d==C(0)?C(0):C(C(1)/d)}function Ek(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}v[a+28>>2]=b;return}c=v[a+20>>2];if(!c){c=Pu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}v[c>>2]=b;Xu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|1}function Bo(a){a=a|0;var b=0,c=C(0);b=v[a+48>>2];c=z[b+5132>>2];a:{b:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:if(w[b+4785|0]){break a}break;case 1:break a;default:break b}}z[a+308>>2]=c;v[a+312>>2]=0;UG(a- -64|0,c,1);return}z[a+308>>2]=c;v[a+312>>2]=0;Xu(b,a+48|0);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}function NB(a,b){var c=0,d=0,e=0;d=v[a+40>>2];if(d){e=v[a+8>>2];while(1){a=B(c,28)+e|0;z[a>>2]=z[a>>2]-z[b>>2];z[a+4>>2]=z[a+4>>2]-z[b+4>>2];z[a+8>>2]=z[a+8>>2]-z[b+8>>2];z[a+12>>2]=z[a+12>>2]-z[b>>2];z[a+16>>2]=z[a+16>>2]-z[b+4>>2];z[a+20>>2]=z[a+20>>2]-z[b+8>>2];c=c+1|0;if((d|0)!=(c|0)){continue}break}}}function De(a){a=a|0;var b=C(0),c=C(0),d=C(0),e=0;a:{if(v[a>>2]!=3){break a}b=z[a+4>>2];if((v[a+4>>2]&2139095040)==2139095040){break a}c=z[a+8>>2];if((v[a+8>>2]&2139095040)==2139095040){break a}d=z[a+12>>2];if((v[a+12>>2]&2139095040)==2139095040){break a}e=!(d<=C(0))&((b<=C(0)^-1)&(c<=C(0)^-1))}return e|0}function be(a,b){a=a|0;b=b|0;var c=0,d=0;c=xa-32|0;xa=c;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](c,b);a=laa(28);z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+12>>2]=z[c+12>>2];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[c+24>>2];xa=c+32|0;return a|0}function n4(a){a=a|0;var b=0,c=0;v[a>>2]=144984;b=v[a+48>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+40>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+36>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+28>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function io(a){a=a|0;var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;_n(v[37393],a,v[a+8>>2],1);d=a+48|0;b=v[a+52>>2];e=w[(d+v[((b>>>22&60)+89188|0)+12>>2]|0)+8|0]&8;b=(b>>>30|0)-1>>>0<2?v[a+48>>2]:0;if(!(!b|!e)){iu(a+20|0,b)}Ni(a);if(b){Eu(b,d,1,(e|0)!=0);v[c+12>>2]=v[a+44>>2];fq(b-16|0,c+12|0)}su(d);xa=c+16|0}function Wo(a){a=a|0;var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;_n(v[37393],a,v[a+8>>2],1);d=a+48|0;b=v[a+52>>2];e=w[(d+v[((b>>>22&60)+89188|0)+12>>2]|0)+8|0]&8;b=(b>>>30|0)-1>>>0<2?v[a+48>>2]:0;if(!(!b|!e)){iu(a+20|0,b)}Ni(a);if(b){Bu(b,d,1,(e|0)!=0);v[c+12>>2]=v[a+44>>2];fq(b-16|0,c+12|0)}su(d);xa=c+16|0}function Sj(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=v[a+16>>2];if(!e){return 0}if(v[e+40>>2]){while(1){h=v[e+36>>2]+(g<<3)|0;if(!(w[h|0]|c>>>0<=f>>>0)){if(d>>>0<=i>>>0){v[(f<<2)+b>>2]=v[h+4>>2];f=f+1|0;e=v[a+16>>2]}i=i+1|0}g=g+1|0;if(g>>>0>2]){continue}break}}return f|0}function pz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=v[a+16>>2];v[c>>2]=v[c>>2]+b;c=v[a+8>>2];b=b+15&-16;if(b>>>0>=16385){return Iy(v[c>>2],b)|0}a=v[a+4>>2];a:{d=v[c+4>>2];if(d){e=v[c+8>>2];f=b+e|0;if(f>>>0<16385){break a}}a=Jy(v[c>>2],a);v[c+8>>2]=b;v[c+4>>2]=a;return a|0}v[c+8>>2]=f;return d+e|0}function kG(a,b){var c=0,d=0,e=0;c=v[a+148>>2];d=(b>>>0)/(c>>>0)|0;v[v[v[a+128>>2]+(d<<2)>>2]+(b-B(c,d)<<2)>>2]=0;d=v[a+80>>2]+(b<<2)|0;e=v[d>>2];if(e){c=v[a+96>>2];a:{if(c>>>0>=(v[a+100>>2]&2147483647)>>>0){iG(a+92|0,d);break a}v[v[a+92>>2]+(c<<2)>>2]=e;v[a+96>>2]=c+1}v[v[a+80>>2]+(b<<2)>>2]=0}}function Tq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(z[b>>2]>z[b+12>>2]){a9(v[37696],4,11709,1682,67812,0);return-1}a:{if(!w[(a+16|0)+4785|0]){a=v[a+1012>>2];d=v[a+272>>2];a=Ba[v[v[d>>2]+20>>2]](d,b,c,v[v[a+276>>2]+4>>2],v[v[a+192>>2]+4>>2])|0;break a}a9(v[37696],2,11860,1184,68425,0);a=-1}return a|0}function JH(a){var b=0,c=0,d=0,e=0;b=v[a+20>>2];while(1){e=v[b+24>>2];while(1){c=v[b+32>>2];if(c){b=c}else{d=v[b+36>>2];c=v[b+28>>2];if(c){v[c+32>>2]=0}v[b+20>>2]=0;v[b+24>>2]=0;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;b=d?d:c}if(b){continue}break}b=e;if(b){continue}break}v[a+20>>2]=0}function qt(a,b){var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;c=v[a+20>>2];a:{if(!c|!(w[(w[a+36|0]&64?v[a+40>>2]+52|0:a+112|0)|0]&2)){break a}e=uh(c);c=rh(v[a+20>>2]);if(e){f=mu(c,a,d+12|0);FE(e+5584|0,v[d+12>>2],f)}if(!v[c+20>>2]){break a}a9(v[37696],8,11562,236,b,0);aC(v[c+20>>2],v[a+20>>2])}xa=d+16|0}function aC(a,b){var c=0,d=0,e=0,f=0;c=v[a+40>>2];a:{if(!c){break a}e=v[a+44>>2];while(1){f=(d<<2)+e|0;if(v[f>>2]!=(b|0)){d=d+1|0;if((d|0)!=(c|0)){continue}break a}break}b:{switch(x[b+4>>1]-5|0){case 0:case 1:v[b+40>>2]=0;break;default:break b}}v[a+40>>2]=c-1;v[f>>2]=v[(c<<2)+e>>2]}t[a+48|0]=0}function rD(a,b,c){var d=0,e=0;d=xa-32|0;xa=d;z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];t[d+24|0]=1;_U(c,d);e=v[b+24>>2];if(!(e&1)){rD(a,B(e>>>1|0,28)+a|0,c);rD(a,a?(B(v[b+24>>2]>>>1|0,28)+a|0)+28|0:0,c)}xa=d+32|0}function hs(a){a=a|0;var b=0,c=0,d=0;b=v[a+6340>>2];if(!(b>>>0>127|!w[b+150864|0])){c=v[(b<<2)+150992>>2]}b=c>>>24|0;if(!b){a9(v[37696],8,11709,2788,69464,0);return}d=c&16777215;c=b-1|0;d=d|c<<24;b=v[a+6340>>2];if(!(b>>>0>127|!w[b+150864|0])){v[(b<<2)+150992>>2]=d}if(!(c&255)){v[a+6344>>2]=0}}function Yv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[b+100>>2];b=x[d+4>>1]<<5;b=(b+(b+d|0)|0)+(c<<5)|0;c=v[b+132>>2];v[a>>2]=v[b+128>>2];v[a+4>>2]=c;c=v[b+140>>2];v[a+8>>2]=v[b+136>>2];v[a+12>>2]=c;c=v[b+148>>2];v[a+16>>2]=v[b+144>>2];v[a+20>>2]=c;c=v[b+156>>2];v[a+24>>2]=v[b+152>>2];v[a+28>>2]=c}function XD(a,b,c){var d=0,e=0;d=xa-32|0;xa=d;z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];t[d+24|0]=1;_U(c,d);e=v[b+24>>2];if(!(e&1)){XD(a,B(e>>>1|0,28)+a|0,c);XD(a,a?(B(v[b+24>>2]>>>1|0,28)+a|0)+28|0:0,c)}xa=d+32|0}function pY(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=xa-16|0;xa=b;c=a+4|0;e=v[a+8>>2];if(e){while(1){f=v[c>>2]+B(d,12)|0;g=v[f>>2];if(g){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,g-4|0)}v[f>>2]=0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}tI(c,b);oY(c,v[a+8>>2]);v[a+16>>2]=0;v[a+20>>2]=0;xa=b+16|0}function iD(a,b,c){var d=0,e=0,f=0,g=C(0),h=0,i=0;d=xa-32|0;xa=d;e=v[b>>2];f=v[b+4>>2];g=z[b+8>>2];h=v[b+20>>2];i=v[b+16>>2];z[d+20>>2]=z[b+24>>2];t[d+24|0]=1;v[d+12>>2]=i;v[d+16>>2]=h;z[d+8>>2]=g;v[d>>2]=e;v[d+4>>2]=f;_U(c,d);if(v[b+40>>2]){iD(a,v[b+36>>2],c);iD(a,v[b+40>>2],c)}xa=d+32|0}function Ki(a){a=a|0;var b=0,c=0;v[a>>2]=118828;b=v[a+360>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+352>>2];if((b|0)==(a+332|0)){t[a+348|0]=0;break a}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a>>2]=119236;v[a>>2]=119540;du(a+20|0);v[a>>2]=119844;vh(a);return a|0}function $4(a){a=a|0;var b=C(0),c=C(0),d=0,e=C(0);d=xa-32|0;xa=d;Ba[v[v[a>>2]+40>>2]](d,a);b=z[d>>2];a:{if(b==C(0)){c=C(1);a=0;break a}c=z[d+12>>2];e=C(C(1)/C(K(C(C(c*c)+C(C(C(b*b)+C(0))+C(0))))));c=C(c*e);a=C(b*e)>2]>>>30|0)-2|0){case 0:d=v[b>>2];if(w[d+4785|0]){break b}default:t[c+8|0]=e;YE(a+24|0,c+8|0);break a;case 1:break c}}d=v[b>>2]}Xu(d,b);v[a+16>>2]=v[a+16>>2]|524288}xa=c+16|0}function z$(a){var b=0,c=0;a:{if(w[a+56|0]){break a}b=v[a+24>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+20>>2]=0;v[a+24>>2]=0;v[a>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;u[a+50>>1]=0;u[a+52>>1]=0;u[a+54>>1]=0;u[a+56>>1]=0}function XZ(a){var b=0,c=0;b=v[a+4>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+24>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);return a}b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a}function nb(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+8>>2]=0;v[e+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;z[e+24>>2]=c;z[e+20>>2]=b;v[e+4>>2]=1056964608;z[e+16>>2]=d==C(-1)?C(F(C((b>2]+124>>2]](a,e);xa=e+32|0}function My(a,b){var c=C(0),d=C(0),e=C(0);c=z[b+8>>2];d=z[a+8>>2];a:{b:{c:{d:{e:{a=w[a+14|0]&15;b=w[b+14|0]&15;switch(((a|0)>(b|0)?a:b)|0){case 3:break b;case 2:break c;case 1:break d;case 0:break e;default:break a}}return C(C(d+c)*C(.5))}return c>d?d:c}return C(d*c)}e=c>2];if(!b|v[a+28>>2]!=1){break a}Ba[v[v[b>>2]+64>>2]](b);b=v[a>>2];Ba[v[v[b>>2]+16>>2]](b)}b:{if(!c){break b}b=v[a+36>>2];if(!b|v[a- -64>>2]!=1){break b}Ba[v[v[b>>2]+64>>2]](b);a=v[a+36>>2];Ba[v[v[a>>2]+16>>2]](a)}}function Kb(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+8>>2]=0;v[e+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;z[e+24>>2]=c;z[e+20>>2]=b;v[e+4>>2]=1056964608;z[e+16>>2]=d==C(-1)?C(F(C((b>2]+164>>2]](a,e);xa=e+32|0}function AE(a){var b=0,c=0;b=v[a>>2];if(b){Ba[v[v[b>>2]+56>>2]](b)}v[a>>2]=0;b=v[a+24>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+16>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+4>>2];if(!(!b|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=0}function _c(){var a=0;a=laa(84);v[a+4>>2]=0;v[a+8>>2]=0;v[a+80>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;t[a+68|0]=0;v[a>>2]=114128;v[a+20>>2]=0;v[a+24>>2]=0;u[a+16>>1]=0;v[a+12>>2]=-1;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+52>>2]=0;v[a+44>>2]=2139095039;v[a+48>>2]=0;return a|0}function u4(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){R4(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<4)|0;d=(d<<4)+e|0;while(1){z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];d=d+16|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function tb(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+8>>2]=0;v[e+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;v[e+4>>2]=1056964608;z[e+20>>2]=c;z[e+24>>2]=b;z[e+16>>2]=d==C(-1)?C(F(C(C(c-b)*C(.49000000953674316)),C(.10000000149011612))):d;Ba[v[v[a>>2]+128>>2]](a,e);xa=e+32|0}function Pv(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){Rv(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<4)|0;d=(d<<4)+e|0;while(1){z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];d=d+16|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function Ib(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+8>>2]=0;v[e+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;v[e+4>>2]=1056964608;z[e+20>>2]=c;z[e+24>>2]=b;z[e+16>>2]=d==C(-1)?C(F(C(C(c-b)*C(.49000000953674316)),C(.10000000149011612))):d;Ba[v[v[a>>2]+156>>2]](a,e);xa=e+32|0}function Fq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if(!w[a+4801|0]){a=a+32|0;if(!(v[a+2344>>2]|!b|!v[a+2236>>2])){e=v[a+2204>>2];while(1){d=v[v[(c<<2)+e>>2]>>2];u[d+148>>1]=x[d+148>>1]|64;c=c+1|0;if(c>>>0>2]){continue}break}}v[a+2344>>2]=b;return}a9(v[37696],2,19228,503,68806,0)}function bm(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(!(w[a+14|0]&32)){a=(b<<4)+a|0;z[c>>2]=z[a+128>>2];z[d>>2]=z[a+132>>2];z[e>>2]=z[a+136>>2];a=a+140|0;break a}a=v[a+16>>2]+(b<<4)|0;z[c>>2]=z[a+204>>2];z[d>>2]=z[a+208>>2];z[e>>2]=z[a+212>>2];a=a+216|0}v[f>>2]=v[a>>2]}function AC(a){var b=0,c=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+16>>2]=0}b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+20>>2]=0}b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+12>>2]=0}v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0}function qS(a){var b=0,c=0;a:{b:{if(w[a+56|0]&32){break b}b=v[v[a+28>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(y[b+152>>2]<4294967294?b:0){break b}b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;c=0;if(!b|y[b+152>>2]>4294967293){break a}}t[a+25|0]=w[a+25|0]|32;c=1}return c}function XE(a,b){var c=C(0);t[a+40|0]=b;v[a>>2]=0;t[a+36|0]=0;b=v[37415];u[a+16>>1]=260;v[a+12>>2]=4;v[a+4>>2]=4;v[a+8>>2]=4;z[a+20>>2]=z[b>>2]*C(.10000000149011612);c=z[b+4>>2];z[a+32>>2]=z[23002];z[a+28>>2]=c*C(c*C(4999999873689376e-21));z[a+24>>2]=c*C(c*C(4999999873689376e-20))}function Fr(a,b){var c=0,d=0;c=xa-16|0;xa=c;b=x[b+52>>1];v[c+12>>2]=0;u[c+8>>1]=b;a=a+16|0;b=v[a+4772>>2];a:{if((v[a+4776>>2]&2147483647)>>>0<=b>>>0){Nu(a+4768|0,c+8|0);break a}d=v[c+12>>2];b=v[a+4768>>2]+(b<<3)|0;v[b>>2]=v[c+8>>2];v[b+4>>2]=d;v[a+4772>>2]=v[a+4772>>2]+1}xa=c+16|0}function EA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;DA(a);b=v[a+24>>2];if(v[b+4>>2]){e=w[b|0]==9?368:272;a=b+160|0;c=0;while(1){d=v[a+164>>2];v[a+144>>2]=v[a+160>>2];v[a+148>>2]=d;d=v[a+172>>2];v[a+152>>2]=v[a+168>>2];v[a+156>>2]=d;a=a+e|0;c=c+1|0;if(c>>>0>2]){continue}break}}}function n5(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+240>>2]=v[b>>2];v[c+244>>2]=d;v[c+264>>2]=v[b+24>>2];d=v[b+20>>2];v[c+256>>2]=v[b+16>>2];v[c+260>>2]=d;d=v[b+12>>2];v[c+248>>2]=v[b+8>>2];v[c+252>>2]=d;t[v[a+80>>2]+478|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Ob(a,b,c,d,e,f,g){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);f=C(f);g=C(g);var h=0;h=xa-48|0;xa=h;v[h+16>>2]=0;v[h+20>>2]=0;v[h+24>>2]=0;z[h+16>>2]=f;v[h+8>>2]=0;v[h+12>>2]=0;z[h+40>>2]=e;z[h+36>>2]=d;z[h+32>>2]=c;z[h+28>>2]=b;z[h+20>>2]=g;Ba[v[v[a>>2]+172>>2]](a,h+8|0);xa=h+48|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=C(c);d=d|0;var e=0,f=0,g=0;a=v[a+24>>2];if(a){if(v[a+28>>2]){g=v[a+12>>2];e=v[a>>2];f=v[a+16>>2];Ba[v[v[e>>2]+12>>2]](e,f)|0;t[e+76|0]=f;v[e+32>>2]=g;Ba[v[v[e>>2]+8>>2]](e)}e=x[a+16>>1];f=v[a+12>>2];a=v[a>>2];iw(b,e,f,c,d,v[a+68>>2],x[a+78>>1])}}function jV(a,b,c,d,e,f){var g=0,h=0,i=0;g=v[c>>2];h=v[e>>2];a:{if((g|0)>(h|0)){i=0;if(!(Ba[v[(B(h,28)+140816|0)+(g<<2)>>2]](a,b,e,f,c,d)|0)){break a}z[a+8>>2]=-z[a+8>>2];z[a+4>>2]=-z[a+4>>2];z[a>>2]=-z[a>>2];return 1}i=Ba[v[(B(g,28)+140816|0)+(h<<2)>>2]](a,b,c,d,e,f)|0}return i}function SB(a,b,c,d,e){var f=0,g=0,h=0;v[((d-e|0)/28<<2)+b>>2]=(c-e|0)/28;c=v[d+24>>2];if(!(c&1)){f=d+24|0;g=e+28|0;while(1){SB(a,b,d,B(c>>>1|0,28)+e|0,e);h=d-e|0;d=B(v[f>>2]>>>1|0,28)+g|0;c=e?d:0;v[((c-e|0)/28<<2)+b>>2]=(h|0)/28;f=c+24|0;c=v[c+24>>2];if(!(c&1)){continue}break}}}function LY(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=v[a+4>>2];g=v[d+264>>2];a:{if(g>>>0>=(v[d+268>>2]&2147483647)>>>0){MY(d,f);break a}v[v[d+260>>2]+(g<<2)>>2]=v[f>>2];v[d+264>>2]=v[d+264>>2]+1}e=e+1|0;if((e|0)!=(b|0)){continue}break}}return 1}function sr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(v[a+4656>>2]!=3){a9(v[37696],8,11709,2210,71428,0);return 0}if(v9(v[a+6060>>2],0-d|0)){d=a+32|0;GP(d);Vu(a+16|0);dP(d);lr(a);FP(d);fP(d);e=c;c=DP(d);v[e>>2]=v[c+4>>2];v[b>>2]=v[c>>2];t[a+6354|0]=1;a=1}else{a=0}return a|0}function pH(a,b){var c=0,d=0;c=v[a+44>>2];if(!(t[c+44|0]&1|!(z[c+156>>2]>2]=b;d=v[v[a+40>>2]+1012>>2];Ba[v[v[d>>2]+44>>2]](d,w[c+9|0]==2,a+144|0);if(y[a+152>>2]>=4294967294){SO(v[a+40>>2],a);$G(a)}bG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);u[a+92>>1]=x[a+92>>1]&65534}}function R3(a){a=a|0;var b=0,c=0;v[a+16>>2]=140756;v[a>>2]=144836;z$(a+128|0);b=v[a+112>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+112>>2]=0;sV(a+16|0);v[a>>2]=144804;b=v[a+4>>2];if(b){b=f3(b);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+4>>2]=0;return a|0}function Hr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:{if(!(w[b+5580|0]&8)){break a}t[a|0]=0;t[a+1|0]=0;if(!(v[(((c>>>0>>0?c:d)<<2)+b|0)+5296>>2]>>>(c>>>0>d>>>0?c:d)&1)){break a}b=b+5420|0;t[a|0]=(v[b+(c<<2)>>2]&1<>>d;t[a+1|0]=(v[b+(d<<2)>>2]&1<>>c;return}QP(a,b+32|0,c,d)}function GL(a){a=a|0;var b=0,c=0,d=0,e=0;a=v[a+28>>2];b=v[a+124>>2];c=v[a+128>>2];a=v[a+88>>2];v[a+68>>2]=v[a+24>>2];v[a+72>>2]=c;v[a- -64>>2]=b;b=v[a>>2];if(b){c=a+36|0;e=v[a+12>>2];a=0;while(1){d=v[(B(a,40)+e|0)+28>>2];if(d){rL(d,c)}a=a+1|0;if((b|0)!=(a|0)){continue}break}}}function rS(a){var b=0,c=0;a:{if(w[a+56|0]&32){break a}b=v[v[a+28>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(y[b+152>>2]<4294967294?b:0){break a}b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(y[b+152>>2]<4294967294?b:0){break a}t[a+25|0]=w[a+25|0]&223;c=1}return c}function qz(a,b){a=a|0;b=b|0;var c=0,d=0;c=-1;a:{if(b>>>0>16384){break a}a=v[a+12>>2];d=v[a+4>>2];b:{if(d){c=v[a+8>>2];if(c+b>>>0<16385){break b}}d=v[a>>2];d=Hy(d,(d+B(v[d+128>>2],12)|0)+40|0,0,0,0);v[a+8>>2]=0;v[a+4>>2]=d;c=0;if(!d){break a}}v[a+8>>2]=b+c;c=d+c|0}return c|0}function _O(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=w[b+20|0];g=(d<<2)+a|0;e=v[g+88>>2];a=B(d,12)+a|0;if(e>>>0>2]){f=v[a+52>>2];c=f+(e<<2)|0;d=v[c>>2];h=c;c=f;b=v[b+8>>2];f=b<<2;c=v[c+f>>2];v[h>>2]=c;v[f+v[a+52>>2]>>2]=d;v[d+8>>2]=b;v[c+8>>2]=e;e=v[g+88>>2]}v[g+88>>2]=e+1}function $O(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=w[b+20|0];g=(e<<2)+a|0;c=v[g+88>>2];if(c>>>0>=2){e=B(e,12)+a|0;f=v[e+52>>2];c=c-1|0;d=f+(c<<2)|0;a=v[d>>2];h=d;d=f;b=v[b+8>>2];f=b<<2;d=v[d+f>>2];v[h>>2]=d;v[f+v[e+52>>2]>>2]=a;v[a+8>>2]=b;v[d+8>>2]=c;c=v[g+88>>2]}v[g+88>>2]=c-1}function iB(a){var b=0;v[a+12112>>2]=0;v[a+12116>>2]=0;v[a+12096>>2]=0;v[a+11876>>2]=0;v[a+11880>>2]=0;v[a+11868>>2]=0;v[a+12088>>2]=0;v[a+12092>>2]=0;b=a+11856|0;v[b>>2]=0;v[b+4>>2]=0;b=a+11828|0;v[b>>2]=0;v[b+4>>2]=0;v[a+12132>>2]=v[a+11952>>2];v[a+12140>>2]=v[a+11976>>2]}function Dc(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=C(f);g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=C(l);var m=0,n=0;m=xa-16|0;xa=m;n=v[a+4>>2];b=(n>>1)+b|0;a=v[a>>2];a=n&1?v[v[b>>2]+a>>2]:a;u[m+8>>1]=x[h>>1];a=Ba[a|0](b,c,d,e,f,g,m+8|0,i,j,k,l)|0;xa=m+16|0;return a|0}function LH(a){var b=0,c=0;VH(a,1);c=v[v[a>>2]+40>>2];b=v[a+24>>2];if((w[b+68|0]&6)==6){sP(c,b)}b=v[a+28>>2];if((b|0)!=-1){eG(v[c+1e3>>2],b)}v[a+28>>2]=-1;VE(v[a>>2],a);VE(v[a+4>>2],a);b=v[a+24>>2];c=v[b- -64>>2];b=v[b+60>>2];if(b){rH(b)}if(c){rH(c)}t[a+21|0]=w[a+21|0]&223}function rR(a){a=a|0;var b=0,c=0,d=0,e=0;c=v[a+28>>2];b=v[v[c+976>>2]+1024>>2];Ba[v[v[b>>2]+104>>2]](b);d=v[c+4676>>2];if(d){a=0;while(1){e=v[v[c+4672>>2]+(a<<2)>>2];if(e&1){Ba[v[v[b>>2]+28>>2]](b,e&-2,0,0)}a=a+1|0;if((d|0)!=(a|0)){continue}break}}Ba[v[v[b>>2]+108>>2]](b)}function jK(a,b){a=a|0;b=b|0;var c=0,d=0;b=v[(v[a+72>>2]+B(v[b+20>>2],20)|0)+12>>2];if((b|0)!=-1){while(1){b=v[a+60>>2]+(b<<3)|0;c=v[a+72>>2]+B(v[b>>2],20)|0;d=v[c+4>>2]-1|0;v[c+4>>2]=d;if(!d){dK(a,v[b>>2])}b=v[b+4>>2];if((b|0)!=-1){continue}break}}v[a+52>>2]=v[a+52>>2]-1}function hY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=0;b=v[b+4>>2];i=d;e=z[c>>2]>C(0);d=z[c+4>>2]>C(0);c=z[c+8>>2]>C(0);v[i>>2]=e|d<<1|c<<2;f=z[b+52>>2];g=z[b+56>>2];h=z[b+48>>2];v[a+12>>2]=0;z[a+8>>2]=c?g:C(-g);z[a+4>>2]=d?f:C(-f);z[a>>2]=e?h:C(-h)}function Bf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;e=v[b>>2];a:{if((v[b+4>>2]-e|0)/12>>>0>c>>>0){b=laa(12);c=B(c,12)+e|0;z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];v[d+8>>2]=b;f=a,g=ea(111652,d+8|0)|0,v[f>>2]=g;break a}v[a>>2]=1}xa=d+16|0}function n3(a,b,c,d,e){var f=0;a:{if(!a){break a}f=v[c>>2]+1|0;v[c>>2]=f;if(f>>>0>y[b>>2]){v[b>>2]=f}if(d){if(!(Ba[d|0](a,v[c>>2],e)|0)){break a}}f=v[a+24>>2];if(!f){break a}n3(f,b,c,d,e);v[c>>2]=v[c>>2]-1;a=v[a+24>>2];if(!a){break a}n3(a+36|0,b,c,d,e);v[c>>2]=v[c>>2]-1}}function R0(a,b){a=a|0;b=b|0;var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0);a9(v[37696],8,10730,227,70603,0);c=z[b+44>>2];d=z[b+48>>2];e=z[b+36>>2];f=z[b+32>>2];g=z[b+40>>2];h=z[b+52>>2];z[a+20>>2]=g+h;z[a+16>>2]=e+d;z[a+12>>2]=f+c;z[a+8>>2]=g-h;z[a+4>>2]=e-d;z[a>>2]=f-c}function dS(a){var b=0,c=0,d=0,e=0,f=0;b=v[a+8>>2];if((b|0)<0){d=v[a+4>>2];f=v[v[v[d+40>>2]+980>>2]+180>>2]+((b&2147483647)<<2)|0;b=v[d+44>>2];e=w[b+9|0];c=2;a:{if(e-3>>>0<4294967294){break a}c=2;if(!d){break a}c=t[b+44|0]&1?1:2}v[f>>2]=e?(c|v[d+48>>2]<<2)+4|0:0;$R(a)}}function uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if(naa(a,v[b+8>>2],0)){qaa(b,c,d);return}e=v[a+12>>2];f=a+16|0;taa(f,b,c,d);a=a+24|0;e=(e<<3)+f|0;a:{if(a>>>0>=e>>>0){break a}while(1){taa(a,b,c,d);if(w[b+54|0]){break a}a=a+8|0;if(e>>>0>a>>>0){continue}break}}}function nf(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){c=v[c+v[b>>2]>>2]}a=Ba[c|0](b)|0;b=laa(24);c=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=c;c=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=c;c=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=c;return b|0}function eL(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;v[v[a+4>>2]>>2]=c;if(f){Ba[v[v[f>>2]+20>>2]](f)}fL(a,d);c=v[a+32>>2];b=v[a+4>>2];v[b+384>>2]=v[a+36>>2];v[b+368>>2]=c;UK(b,b+340|0);b=v[a+4>>2];$K(b+340|0,a,b+324|0,b+332|0);I9(v[b+324>>2],0,v[b+328>>2]<<2)}function $S(a,b){a=a|0;b=b|0;var c=0;z[b>>2]=z[a+464>>2];z[b+4>>2]=z[a+468>>2];z[b+8>>2]=z[a+472>>2];v[b+12>>2]=v[a+248>>2];v[b+16>>2]=v[a+260>>2];v[b+20>>2]=v[a+272>>2];c=v[a+420>>2];t[b+30|0]=c>>>8&1;c=c&255;t[b+29|0]=c>>>5&1;t[b+28|0]=c>>>4&1;v[b+24>>2]=w[a+520|0]}function yg(a){var b=0,c=0;a:{if(!w[a+120|0]){break a}b=v[a+56>>2];c=Ba[v[v[b>>2]>>2]](b)|0;b=v[a+88>>2];if(b){H9(v[b+20>>2],c,x[b+8>>1]);c=v[b+60>>2];c=v[v[(c?c:v[b- -64>>2])+40>>2]+1012>>2];Ba[v[v[c>>2]+48>>2]](c,v[v[b+56>>2]+28>>2],b)}if(!b){break a}t[a+120|0]=0}}function aaa(a,b,c){var d=0,e=0,f=0;a:{if(!b){d=a;break a}while(1){d=Saa(a,b,10);f=Aa;e=Raa(d,f,10,0);c=c-1|0;t[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;t[c|0]=d-B(a,10)|48;b=d>>>0>9;d=a;if(b){continue}break}}return c}function ZL(a){var b=0,c=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+4>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}a=v[a>>2];if(a){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}}function Bk(a){a=a|0;var b=0,c=0;v[a>>2]=120476;Om(v[37389],a);v[a>>2]=120728;Om(v[37389],a);b=v[a+104>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+96>>2];if((b|0)==(a+76|0)){t[a+92|0]=0;break a}if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function oW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=C(0);e=z[b+8>>2];a=v[a+48>>2];f=z[a+56>>2];g=C(e*(e>C(0)?f:C(-f)));e=z[b>>2];f=z[a+48>>2];h=C(e*(e>C(0)?f:C(-f)));e=z[b+4>>2];f=z[a+52>>2];e=C(g+C(h+C(e*(e>C(0)?f:C(-f)))));z[d>>2]=e;z[c>>2]=-e}function ZB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;a:{if(!w[a+48|0]){break a}c=v[a+40>>2];if(!c){break a}while(1){e=v[a+44>>2]+(d<<2)|0;f=v[e>>2];if(f){g=e,h=Ba[v[v[b>>2]>>2]](b,-2147483648,f)|0,v[g>>2]=h;c=v[a+40>>2]}d=d+1|0;if(c>>>0>d>>>0){continue}break}}}function mP(a,b){var c=0,d=0,e=0;e=xa-16|0;xa=e;d=v[b+60>>2];if(d){c=v[d+60>>2];c=v[(c?c:v[d- -64>>2])+164>>2];if(c){HH(v[a+1136>>2],c,d)}c=v[a+2396>>2];d=QH(d);v[c+280>>2]=v[c+280>>2]-1;v[d>>2]=v[c+288>>2];v[c+288>>2]=d}v[e+12>>2]=b;Og(a+1096|0,e+12|0);xa=e+16|0}function jy(a,b){var c=0,d=0,e=C(0),f=C(0);c=xa-32|0;xa=c;d=x[b+8>>1];a:{if((d|0)==65535){b=v[b+4>>2];z[a>>2]=z[b>>2];e=z[b+8>>2];f=z[b+4>>2];break a}b=v[b>>2];Ba[v[v[b>>2]+116>>2]](c,b,d);e=z[c+8>>2];f=z[c+4>>2];z[a>>2]=z[c>>2]}z[a+8>>2]=e;z[a+4>>2]=f;xa=c+32|0}function eaa(a,b,c,d){var e=0;e=xa-160|0;xa=e;v[e+148>>2]=b?b-1|0:0;a=b?a:e+158|0;v[e+144>>2]=a;e=I9(e,0,144);v[e+76>>2]=-1;v[e+36>>2]=3468;v[e+80>>2]=-1;v[e+44>>2]=e+159;v[e+84>>2]=e+144;a:{if((b|0)<0){v[37699]=61;break a}t[a|0]=0;X9(e,c,d,3466,3467)}xa=e+160|0}function PG(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+60>>2]=b;break a}z[a+116>>2]=b;a=v[a>>2];if(!a){break a}c=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}xa=d+16|0}function OG(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+56>>2]=b;break a}z[a+112>>2]=b;a=v[a>>2];if(!a){break a}c=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}xa=d+16|0}function NG(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+52>>2]=b;break a}z[a+124>>2]=b;a=v[a>>2];if(!a){break a}c=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}xa=d+16|0}function MG(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+48>>2]=b;break a}z[a+120>>2]=b;a=v[a>>2];if(!a){break a}c=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}xa=d+16|0}function KG(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+44>>2]=b;break a}z[a+140>>2]=b;a=v[a>>2];if(!a){break a}c=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}xa=d+16|0}function rK(a,b){var c=0,d=0;d=b+15&-16;c=-1;a:{if(d>>>0>16384){break a}b=v[a+4>>2];b:{if(b){c=v[a+8>>2];if(d+c>>>0<16385){break b}}b=v[a>>2];b=Hy(b,(b+B(v[b+124>>2],12)|0)- -64|0,0,0,0);v[a+8>>2]=0;v[a+4>>2]=b;c=0;if(!b){break a}}v[a+8>>2]=c+d;c=b+c|0}return c}function a9(a,b,c,d,e,f){var g=0;g=xa-1040|0;xa=g;v[g+12>>2]=f;if(v[a+192>>2]&b){eaa(g+16|0,1024,e,v[g+12>>2]);if(v[a+180>>2]){f=0;while(1){e=v[v[a+176>>2]+(f<<2)>>2];Ba[v[v[e>>2]+8>>2]](e,b,g+16|0,c,d);f=f+1|0;if(f>>>0>2]){continue}break}}}xa=g+1040|0}function Zv(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=0,g=0,h=C(0);b=v[b+172>>2]+(c<<5)|0;d=z[b+8>>2];c=v[b>>2];e=v[b+4>>2];f=v[b+20>>2];g=v[b+16>>2];h=z[b+24>>2];v[a+12>>2]=0;v[a+28>>2]=0;z[a+24>>2]=h;v[a+16>>2]=g;v[a+20>>2]=f;v[a>>2]=c;v[a+4>>2]=e;z[a+8>>2]=d}function u0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0);e=xa-16|0;xa=e;f=z[a+4>>2];z[e>>2]=z[b+16>>2];z[e+4>>2]=z[b+20>>2];g=z[b+24>>2];z[e+12>>2]=f;z[e+8>>2]=g;a=v[c+36>>2];a=Ba[v[(x[a+4>>1]<<2)+143712>>2]](e,a,d,c+4|0,0)|0;xa=e+16|0;return a|0}function hh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{c=v[a+4>>2];if(!c){break a}d=v[c+40>>2];if(!d){break a}c=0;while(1){e=v[v[a+4>>2]+36>>2]+(c<<3)|0;f=v[e+4>>2];if(f){g=e,h=Ba[v[v[b>>2]>>2]](b,-2147483648,f)|0,v[g+4>>2]=h}c=c+1|0;if((d|0)!=(c|0)){continue}break}}}function NF(a){var b=0,c=0,d=0,e=0,f=0;c=v[a+340>>2];if(c){while(1){b=v[v[a+336>>2]+(d<<2)>>2];e=v[a+60>>2];f=(b>>>0)/(e>>>0)|0;if((x[(v[v[a+40>>2]+(f<<2)>>2]+(b-B(e,f)<<4)|0)+4>>1]&11)==3){FF(a,b);DF(a,b);c=v[a+340>>2]}d=d+1|0;if(c>>>0>d>>>0){continue}break}}}function z_(a,b){v[b+8>>2]=0;v[b+12>>2]=8;v[b>>2]=0;v[b+4>>2]=0;v[b+44>>2]=0;v[b+48>>2]=0;v[b+36>>2]=0;v[b+16>>2]=6;v[b+20>>2]=0;v[b+24>>2]=a+100;v[b+32>>2]=101280;v[b+28>>2]=a+4;v[b+52>>2]=0;v[b+56>>2]=0;a=v[a>>2];v[b+64>>2]=2767;v[b+68>>2]=2768;v[b+60>>2]=a}function k5(a,b){a=a|0;b=b|0;var c=0;b=v[b+80>>2];z[a>>2]=z[b+268>>2];z[a+4>>2]=z[b+272>>2];z[a+8>>2]=z[b+276>>2];z[a+12>>2]=z[b+280>>2];z[a+16>>2]=z[b+284>>2];c=v[b+292>>2];v[a+20>>2]=v[b+288>>2];v[a+24>>2]=c;c=v[b+300>>2];v[a+28>>2]=v[b+296>>2];v[a+32>>2]=c}function id(){var a=0;a=laa(68);v[a+4>>2]=0;v[a+8>>2]=0;v[a+64>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;t[a+52|0]=0;v[a>>2]=114448;v[a+20>>2]=0;v[a+24>>2]=0;u[a+16>>1]=0;v[a+12>>2]=-1;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+44>>2]=2139095039;return a|0}function j5(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+212>>2]=v[b>>2];v[c+216>>2]=d;v[c+236>>2]=v[b+24>>2];d=v[b+20>>2];v[c+228>>2]=v[b+16>>2];v[c+232>>2]=d;d=v[b+12>>2];v[c+220>>2]=v[b+8>>2];v[c+224>>2]=d;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function p6(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;Ba[v[v[b>>2]+8>>2]](b,v[a+76>>2]);v[c+12>>2]=0;v[c+8>>2]=0;a=v[a+76>>2];Ba[v[v[a>>2]+28>>2]](a,c+12|0,c+8|0);a=v[c+12>>2];if(a){Ba[v[v[b>>2]+8>>2]](b,a)}a=v[c+8>>2];if(a){Ba[v[v[b>>2]+8>>2]](b,a)}xa=c+16|0}function e5(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+104>>2]=v[b>>2];v[c+108>>2]=d;d=v[b+20>>2];v[c+120>>2]=v[b+16>>2];v[c+124>>2]=d;d=v[b+12>>2];v[c+112>>2]=v[b+8>>2];v[c+116>>2]=d;t[v[a+80>>2]+476|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Rm(a,b){var c=0,d=0;if(b){c=v[b+44>>2];a:{if((c|0)<0|!(c&2147483647)){break a}c=v[b+36>>2];if((c|0)==(b|0)){t[b+32|0]=0;break a}if(!c){break a}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[a+460>>2]=v[a+460>>2]-1;v[b>>2]=v[a+468>>2];v[a+468>>2]=b}}function e8(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+92>>2]=v[b>>2];v[c+96>>2]=d;v[c+116>>2]=v[b+24>>2];d=v[b+20>>2];v[c+108>>2]=v[b+16>>2];v[c+112>>2]=d;d=v[b+12>>2];v[c+100>>2]=v[b+8>>2];v[c+104>>2]=d;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function ZR(a){var b=0,c=0;a:{if(v[a+36>>2]!=-1){break a}c=v[a+4>>2];b=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;if((w[v[b+44>>2]+44|0]&3)==3|t[b+92|0]&1|(w[b+149|0]&16|y[b+152>>2]>4294967293)){break a}if(!(w[v[a+28>>2]- -64|0]&2)){break a}jS(v[v[c+40>>2]+1152>>2],a)}}function mX(a,b,c,d){var e=0;e=xa-16|0;xa=e;a:{if(c){if(!b){break a}while(1){c=v[a>>2];v[e+12>>2]=c<<24|c<<8&16711680|(c>>>8&65280|c>>>24);Ba[v[v[d>>2]>>2]](d,e+12|0,4)|0;a=a+4|0;b=b-1|0;if(b){continue}break}break a}Ba[v[v[d>>2]>>2]](d,a,b<<2)|0}xa=e+16|0}function Sp(a,b){a=a|0;b=b|0;var c=0,d=0;c=b+1076|0;d=v[c+4>>2];v[a+24>>2]=v[c>>2];v[a+28>>2]=d;c=b+1068|0;d=v[c+4>>2];v[a+16>>2]=v[c>>2];v[a+20>>2]=d;c=b+1060|0;d=v[c+4>>2];v[a+8>>2]=v[c>>2];v[a+12>>2]=d;b=b+1052|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c}function nW(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0);b=v[b+48>>2];d=z[b+52>>2];e=z[b+56>>2];g=z[c+4>>2];h=z[c+8>>2];f=z[b+48>>2];i=z[c>>2];v[a+12>>2]=0;z[a>>2]=i>C(0)?f:C(-f);z[a+8>>2]=h>C(0)?e:C(-e);z[a+4>>2]=g>C(0)?d:C(-d)}function Xv(a,b,c){a=a|0;b=b|0;c=c|0;b=v[b+100>>2]+(c<<5)|0;c=v[b+132>>2];v[a>>2]=v[b+128>>2];v[a+4>>2]=c;c=v[b+140>>2];v[a+8>>2]=v[b+136>>2];v[a+12>>2]=c;c=v[b+148>>2];v[a+16>>2]=v[b+144>>2];v[a+20>>2]=c;c=v[b+156>>2];v[a+24>>2]=v[b+152>>2];v[a+28>>2]=c}function yc(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=xa-16|0;xa=k;l=v[a+4>>2];b=(l>>1)+b|0;a=v[a>>2];a=l&1?v[v[b>>2]+a>>2]:a;u[k+8>>1]=x[g>>1];a=Ba[a|0](b,c,d,e,f,k+8|0,h,i,j)|0;xa=k+16|0;return a|0}function gY(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0);b=v[b+4>>2];d=z[b+52>>2];e=z[b+56>>2];g=z[c+4>>2];h=z[c+8>>2];f=z[b+48>>2];i=z[c>>2];v[a+12>>2]=0;z[a>>2]=i>C(0)?f:C(-f);z[a+8>>2]=h>C(0)?e:C(-e);z[a+4>>2]=g>C(0)?d:C(-d)}function Q7(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+80>>2]=v[b>>2];v[c+84>>2]=d;v[c+104>>2]=v[b+24>>2];d=v[b+20>>2];v[c+96>>2]=v[b+16>>2];v[c+100>>2]=d;d=v[b+12>>2];v[c+88>>2]=v[b+8>>2];v[c+92>>2]=d;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}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;d=xa-48|0;xa=d;if(b){g=a+4|0;h=d+24|0;i=d+12|0;while(1){e=d+36|0;f=v[c>>2];m$(v[a+3368>>2],v[a+12>>2],d,e,0,f,0,0);RZ(g,f,d,i,h,e);c=c+4|0;b=b-1|0;if(b){continue}break}}xa=d+48|0;return 1}function nS(a,b,c){var d=0;d=TH(a+4|0,v[b+4>>2],v[c+4>>2],1,5);v[a+36>>2]=-1;v[a+32>>2]=c;v[a+28>>2]=b;t[a+58|0]=0;u[a+56>>1]=32;v[a>>2]=139344;b=XP(d);UE(v[d>>2],d);UE(v[a+8>>2],d);c=v[v[d>>2]+40>>2];WO(c,d,b);gJ(v[c+2168>>2],a);u[a+52>>1]=0;return a}function rr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(v[a+4656>>2]!=3){a9(v[37696],8,11709,2159,71542,0);return 0}a:{if(!v9(v[a+6060>>2],0-b|0)){break a}b=a+32|0;GP(b);Vu(a+16|0);dP(b);lr(a);FP(b);fP(b);eP(b,0);nr(a);d=1;if(!c){break a}v[c>>2]=0}return d|0}function Tp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=v[a+5580>>2];e=v[(d&4?5564:2392)+a>>2];b=c?e|b:(b^-1)&e;if(!w[a+4801|0]){v[a+2392>>2]=b;a=a+32|0;t[v[a+976>>2]+1812|0]=(b&64)>>>6;t[v[a+976>>2]+1813|0]=!(b&256);return}v[a+5564>>2]=b;v[a+5580>>2]=d|4}function T9(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!w[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=v[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}while(1){b=c;c=b+1|0;if(w[b|0]){continue}break}}return b-a|0}function h1(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=144300;c=a-8|0;v[c>>2]=144204;a:{if(t[a+188|0]&1){break a}b=v[a+192>>2];if(!b){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b-v[b-4>>2]|0);v[a+192>>2]=0}a=L0(c);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function $s(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0;j=xa-32|0;xa=j;v[j+28>>2]=0;v[j+20>>2]=0;v[j+24>>2]=0;z[j+16>>2]=d;v[j+12>>2]=c;v[j+8>>2]=b;u[j>>1]=x[f>>1];a=at(a,j+8|0,e,j,i,g,h,0);xa=j+32|0;return a|0}function Qh(a,b){a=a|0;b=b|0;var c=0,d=0;if(v[a+124>>2]){while(1){d=v[v[a+120>>2]+(c<<2)>>2];yg(Ba[v[v[d>>2]+104>>2]](d)|0);c=c+1|0;if(c>>>0>2]){continue}break}}a=v[a+24>>2];if(a){c=v[a>>2];Ba[v[v[c>>2]+84>>2]](c,v[a+52>>2],v[a+56>>2],b)}}function j3(a){var b=0,c=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+16>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=0}function ip(a){a=a|0;var b=0,c=0;v[a>>2]=124644;b=v[a+20>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+12>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function _Z(a){a=a|0;var b=0,c=0;v[a+8>>2]=142832;v[a>>2]=142748;if(t[a+6|0]&1){b=v[a+56>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+56>>2]=0;b=v[a+84>>2];if(b){b=XZ(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+84>>2]=0}return a|0}function W9(a,b){var c=0,d=0,e=0;o(+a);d=j(1)|0;e=j(0)|0;c=d>>>20&2047;if((c|0)!=2047){if(!c){if(a==0){c=0}else{a=W9(a*0x10000000000000000,b);c=v[b>>2]+-64|0}v[b>>2]=c;return a}v[b>>2]=c-1022;l(0,e|0);l(1,d&-2146435073|1071644672);a=+n()}return a}function Tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);b=v[b+312>>2]+(c<<5)|0;c=v[b+20>>2];d=v[b+16>>2];e=z[b+24>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+28>>2]=0;z[a+24>>2]=e;v[a+16>>2]=d;v[a+20>>2]=c}function Sw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);b=v[b+228>>2]+(c<<5)|0;c=v[b+20>>2];d=v[b+16>>2];e=z[b+24>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+28>>2]=0;z[a+24>>2]=e;v[a+16>>2]=d;v[a+20>>2]=c}function QC(a,b,c,d,e){var f=0,g=0;f=xa-16|0;xa=f;b=RC(a,b,c,d);v[f+12>>2]=b;a:{if(v[b+40>>2]|!b){break a}g=v[e+4>>2];if(g>>>0>=(v[e+8>>2]&2147483647)>>>0){NC(e,f+12|0);break a}v[v[e>>2]+(g<<2)>>2]=b;v[e+4>>2]=g+1}a=PC(a,c,d,e);xa=f+16|0;return a}function nI(a){a=a|0;var b=0,c=0,d=0;b=v[a+36>>2];if(b){c=v[a+28>>2];d=v[v[c+192>>2]+4>>2];a=v[a+40>>2]+(v[a+32>>2]<<2)|0;c=v[c+276>>2];b=b-1|0;if(b){while(1){fI(v[a>>2],v[c+4>>2],d);a=a+4|0;b=b-1|0;if(b){continue}break}}fI(v[a>>2],v[c+4>>2],d)}}function Np(a,b){a=a|0;b=b|0;var c=C(0);if(!w[a+4801|0]){z[a+1084>>2]=z[b>>2];z[a+1088>>2]=z[b+4>>2];c=z[b+8>>2];v[a+1096>>2]=1;z[a+1092>>2]=c;return}z[a+5548>>2]=z[b>>2];z[a+5552>>2]=z[b+4>>2];z[a+5556>>2]=z[b+8>>2];a=a+5580|0;v[a>>2]=v[a>>2]|1}function fb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=xa-32|0;xa=e;z[e>>2]=z[d>>2];z[e+4>>2]=z[d+4>>2];z[e+8>>2]=z[d+8>>2];z[e+12>>2]=z[d+12>>2];z[e+16>>2]=z[c>>2];z[e+20>>2]=z[c+4>>2];z[e+24>>2]=z[c+8>>2];Ba[v[v[a>>2]+32>>2]](a,b,e);xa=e+32|0}function fY(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=0,h=0;c=(c<<4)+101152|0;g=v[c+4>>2];b=v[b+4>>2];d=z[b+52>>2];h=v[c+8>>2];e=z[b+56>>2];c=v[c>>2];f=z[b+48>>2];v[a+12>>2]=0;z[a>>2]=c?f:C(-f);z[a+8>>2]=h?e:C(-e);z[a+4>>2]=g?d:C(-d)}function Q_(a,b){v[a+12>>2]=1;v[a+4>>2]=196609;v[a+76>>2]=0;v[a+80>>2]=0;v[a+96>>2]=b;v[a+8>>2]=142996;v[a>>2]=142892;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+72>>2]=1;u[a+68>>1]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;return a}function s5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+80>>2];z[e+428>>2]=z[b>>2];z[e+432>>2]=z[b+4>>2];z[e+436>>2]=z[b+8>>2];z[e+440>>2]=z[c>>2];z[e+444>>2]=z[c+4>>2];z[e+448>>2]=z[c+8>>2];if(d){q5(a)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function rC(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){hC(e,v[(d<<2)+b>>2]);d=d+1|0;if((d|0)!=(c|0)){continue}break}t[a+7648|0]=1;v[a+32>>2]=0;v[a+16>>2]=v[a+7664>>2];b=a+7672|0;c=v[b+4>>2];v[a+24>>2]=v[b>>2];v[a+28>>2]=c}}function d3(a){var b=0,c=0;b=v[a>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+16>>2]=0}function Bb(a,b,c,d){a=a|0;b=b|0;c=C(c);d=C(d);var e=0,f=C(0);e=xa-32|0;xa=e;f=z[b>>2];v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;z[e+28>>2]=c;z[e+24>>2]=d==C(-1)?C(f*C(.009999999776482582)):d;Ba[v[v[a>>2]+140>>2]](a,e+8|0);xa=e+32|0}function SU(a){a=a|0;var b=0,c=0;v[a>>2]=140616;if(w[a+32|0]){b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=0}v[a+4>>2]=-2147483648;return a|0}function NK(a,b){v[a+44>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a>>2]=b;b=a+48|0;v[b>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;b=a+72|0;v[b>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[a+88>>2]=0}function zW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0);f=C(z[d+24>>2]-z[b+24>>2]);g=C(f*f);f=C(z[d+16>>2]-z[b+16>>2]);h=C(f*f);f=C(z[d+20>>2]-z[b+20>>2]);g=C(g+C(h+C(f*f)));f=C(z[a+4>>2]+z[c+4>>2]);return g<=C(f*f)|0}function wK(a,b){var c=0;c=w[b+7|0];if(c&1){a:{if(c&2){break a}c=v[b>>2];if(w[c+65|0]==1){v[a+924>>2]=v[a+924>>2]-1;v[c>>2]=v[a+932>>2];v[a+932>>2]=c;break a}v[a+632>>2]=v[a+632>>2]-1;v[c>>2]=v[a+640>>2];v[a+640>>2]=c}t[b+7|0]=0;v[b>>2]=0}}function f1(a){a=a|0;var b=0,c=0;v[a+8>>2]=144300;v[a>>2]=144204;a:{if(t[a+196|0]&1){break a}b=v[a+200>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b-v[b-4>>2]|0);v[a+200>>2]=0}a=L0(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function VI(a){var b=0,c=0,d=0,e=0;b=v[a>>2];c=v[a+4>>2];if((b|0)!=(c|0)){d=v[a+8>>2];while(1){e=b+4|0;v[a>>2]=e;b=v[b>>2];if(!(!(t[b+21|0]&1)|v[b+24>>2]!=(d|0)&v[b+28>>2]!=(d|0))){return b-4|0}b=e;if((c|0)!=(b|0)){continue}break}}return 0}function Ji(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=x[a+24>>1];if(c){g=(c|0)==1?a+20|0:v[a+20>>2];while(1){e=(d<<2)+g|0;f=Ba[v[v[b>>2]>>2]](b,-2147483648,v[e>>2])|0;v[e>>2]=f;Yt(f,a);d=d+1|0;if((c|0)!=(d|0)){continue}break}}hh(a+12|0,b)}function xd(a,b){a=a|0;b=b|0;var c=0,d=0;c=xa-16|0;xa=c;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](c,b);a=laa(16);v[a>>2]=v[c>>2];v[a+4>>2]=v[c+4>>2];v[a+8>>2]=v[c+8>>2];v[a+12>>2]=v[c+12>>2];xa=c+16|0;return a|0}function _8(a){a=a|0;var b=0,c=0;v[a>>2]=149260;v[a+76>>2]=0;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)){t[a+68|0]=0;return a|0}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Z8(a){a=a|0;var b=0,c=0;v[a>>2]=149328;v[a+76>>2]=0;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)){t[a+68|0]=0;return a|0}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function IB(a){var b=0;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;b=a+12|0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[a+60>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;return a}function ES(a,b){a=a|0;b=C(b);var c=0,d=0;c=xa-16|0;xa=c;z[a+536>>2]=b;if(v[a+432>>2]){d=uU(a+8|0);v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=2;Ba[v[v[d>>2]+52>>2]](d,c)|0;z[c+8>>2]=C(b*C(.5))*z[a+516>>2];Ba[v[v[d>>2]+36>>2]](d,c)}xa=c+16|0;return 1}function i_(a,b){a=a|0;b=b|0;var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0);c=z[b+28>>2];d=z[b+32>>2];e=z[b+20>>2];f=z[b+16>>2];g=z[b+24>>2];h=z[b+36>>2];z[a+20>>2]=g+h;z[a+16>>2]=e+d;z[a+12>>2]=f+c;z[a+8>>2]=g-h;z[a+4>>2]=e-d;z[a>>2]=f-c}function ZZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=w[a+55|0];if(d>>>0>b>>>0){a=v[a+56>>2]+B(b,20)|0;z[c>>2]=z[a>>2];z[c+4>>2]=z[a+4>>2];z[c+8>>2]=z[a+8>>2];z[c+12>>2]=z[a+12>>2];u[c+16>>1]=w[a+18|0];u[c+18>>1]=x[a+16>>1]}return b>>>0>>0|0}function Z0(a,b){a=a|0;b=b|0;var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0);c=z[b+44>>2];d=z[b+48>>2];e=z[b+36>>2];f=z[b+32>>2];g=z[b+40>>2];h=z[b+52>>2];z[a+20>>2]=g+h;z[a+16>>2]=e+d;z[a+12>>2]=f+c;z[a+8>>2]=g-h;z[a+4>>2]=e-d;z[a>>2]=f-c}function WI(a){var b=0,c=0,d=0,e=0;b=v[a+4>>2];d=v[a>>2];if((b|0)!=(d|0)){e=v[a+8>>2];while(1){b=b-4|0;v[a+4>>2]=b;c=v[b>>2];if(!(!(t[c+21|0]&1)|v[c+24>>2]!=(e|0)&v[c+28>>2]!=(e|0))){return c-4|0}if((b|0)!=(d|0)){continue}break}}return 0}function VO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=v[a+24>>2];e=v[a+36>>2];g=e-1|0;f=v[b+152>>2];h=f>>>0>>0;c=h?g:e;v[b+152>>2]=c;c=d+(c<<2)|0;d=v[c>>2];v[c>>2]=v[b+44>>2];v[v[d>>2]+152>>2]=f;v[v[a+24>>2]+(f<<2)>>2]=d;v[a+36>>2]=h?g:e+1|0}function Rb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-32|0;xa=d;z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];z[d+16>>2]=z[b>>2];z[d+20>>2]=z[b+4>>2];z[d+24>>2]=z[b+8>>2];Ba[v[v[a>>2]+188>>2]](a,d,1);xa=d+32|0}function Gb(a,b,c,d,e,f){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);f=C(f);var g=0;g=xa-32|0;xa=g;v[g+8>>2]=0;v[g+12>>2]=0;v[g+16>>2]=0;z[g+8>>2]=e;v[g>>2]=0;v[g+4>>2]=0;z[g+24>>2]=c;z[g+20>>2]=d;z[g+12>>2]=f;Ba[v[v[a>>2]+148>>2]](a,b,g);xa=g+32|0}function CG(a,b){var c=0,d=0;c=xa-16|0;xa=c;z[a+96>>2]=z[b>>2];z[a+100>>2]=z[b+4>>2];z[a+104>>2]=z[b+8>>2];a=v[a>>2];if(a){b=v[v[a+40>>2]+1012>>2];d=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(d|0)==2,c+8|0)}xa=c+16|0}function Yk(a){a=a|0;var b=0,c=0;v[a>>2]=120728;Om(v[37389],a);b=v[a+104>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+96>>2];if((b|0)==(a+76|0)){t[a+92|0]=0;break a}if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function WE(a,b,c){var d=0,e=0,f=0;d=v[a+28>>2];if(d){d=d-1|0;a=v[a+20>>2];while(1){e=d;d=v[a>>2];f=w[d+21|0];a:{if(!(f&c)){break a}t[d+22|0]=w[d+22|0]|b;if(f&8){break a}UH(d);t[d+21|0]=w[d+21|0]|8}a=a+4|0;d=e-1|0;if(e){continue}break}}}function Fh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=xa-16|0;xa=e;t[e+8|0]=w[c|0];c=xa-16|0;xa=c;d=v[a+24>>2];if(d){t[c+8|0]=w[e+8|0];a=xa-16|0;xa=a;d=v[d>>2];t[a+8|0]=w[c+8|0];Ba[v[v[d>>2]+40>>2]](d,b,a+8|0);xa=a+16|0}xa=c+16|0;xa=e+16|0}function Bi(a){a=a|0;var b=0,c=0;v[a>>2]=118576;Om(v[37389],a);b=v[a+104>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+96>>2];if((b|0)==(a+76|0)){t[a+92|0]=0;break a}if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function ve(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-32|0;xa=d;z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];z[d+16>>2]=z[b>>2];z[d+20>>2]=z[b+4>>2];z[d+24>>2]=z[b+8>>2];Ba[v[v[a>>2]+248>>2]](a,d);xa=d+32|0}function mh(a,b){var c=0,d=0;a=v[a+4>>2];a:{if(!a){break a}d=v[a+40>>2];if(!d){break a}c=v[a+36>>2];a=0;b:{while(1){if(w[c+(a<<3)|0]==1){break b}a=a+1|0;if((d|0)!=(a|0)){continue}break}return 0}v[b>>2]=a;c=v[(c+(a<<3)|0)+4>>2]}return c}function Mj(a){a=a|0;var b=0,c=0;a=v[a+16>>2];a:{if(!a){break a}c=v[a+40>>2];if(!c){break a}b=v[a+36>>2];a=0;b:{while(1){if(w[b+(a<<3)|0]==1){break b}a=a+1|0;if((c|0)!=(a|0)){continue}break}b=0;break a}b=v[(b+(a<<3)|0)+4>>2]}return b|0}function BG(a,b){var c=0,d=0;c=xa-16|0;xa=c;z[a+80>>2]=z[b>>2];z[a+84>>2]=z[b+4>>2];z[a+88>>2]=z[b+8>>2];a=v[a>>2];if(a){b=v[v[a+40>>2]+1012>>2];d=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(d|0)==2,c+8|0)}xa=c+16|0}function Tr(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){RP(a+32|0,b);return}z[a+5272>>2]=z[b>>2];z[a+5276>>2]=z[b+4>>2];z[a+5280>>2]=z[b+8>>2];z[a+5284>>2]=z[b+12>>2];z[a+5288>>2]=z[b+16>>2];z[a+5292>>2]=z[b+20>>2];a=a+5580|0;v[a>>2]=v[a>>2]|64}function WR(a,b){var c=0;a:{if(v[a+44>>2]&98304|(v[a+56>>2]|!b)){break a}b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(!b|w[a+46|0]&4){break a}c=v[v[a+4>>2]+40>>2];a=v[v[a+28>>2]+4>>2];AP(c,w[v[a+44>>2]+9|0]-1>>>0<2?a:0,b)}}function F0(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=C(g);h=h|0;i=i|0;j=C(j);var k=0;c=xa-16|0;xa=c;d=v[a+36>>2];k=x[d+4>>1];u[c+8>>1]=x[i>>1];a=Ba[v[(k<<2)+143884>>2]](d,a,b,e,f,g,h,c+8|0,j)|0;xa=c+16|0;return a|0}function D0(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=C(g);h=h|0;i=i|0;j=C(j);var k=0;c=xa-16|0;xa=c;d=v[a+36>>2];k=x[d+4>>1];u[c+8>>1]=x[i>>1];a=Ba[v[(k<<2)+143876>>2]](d,a,b,e,f,g,h,c+8|0,j)|0;xa=c+16|0;return a|0}function zJ(a,b){var c=0,d=0;c=xa-16|0;xa=c;v[c+12>>2]=b;v[b+44>>2]=v[b+44>>2]|8388608;d=v[a+36>>2];v[b+52>>2]=d;a:{if((v[a+40>>2]&2147483647)>>>0<=d>>>0){BJ(a+32|0,c+12|0);break a}v[v[a+32>>2]+(d<<2)>>2]=b;v[a+36>>2]=d+1}xa=c+16|0}function jh(a,b){var c=0,d=0,e=0,f=0;c=-1;a=v[a+4>>2];a:{if(!a){break a}d=v[a+40>>2];if(!d){break a}f=v[a+36>>2];a=0;while(1){e=(a<<3)+f|0;if(!(!w[e|0]&v[e+4>>2]==(b|0))){a=a+1|0;if((d|0)!=(a|0)){continue}break a}break}c=a}return c}function g2(a){a=a|0;var b=0,c=0;v[a>>2]=144644;b=v[a+6620>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+6612>>2];if((b|0)==(a+4560|0)){t[a+6608|0]=0;return a|0}if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function _9(a){var b=0,c=0,d=0;if(t[v[a>>2]]-48>>>0>=10){return 0}while(1){d=v[a>>2];c=-1;if(b>>>0<=214748364){c=t[d|0]-48|0;b=B(b,10);c=(c|0)>(2147483647-b|0)?-1:c+b|0}v[a>>2]=d+1;b=c;if(t[d+1|0]-48>>>0<10){continue}break}return b}function Pw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=xa-32|0;xa=c;Qw(c,v[a+336>>2]+B(b,192)|0,d);z[e>>2]=z[c+16>>2];z[e+4>>2]=z[c+20>>2];z[e+8>>2]=z[c+24>>2];z[e+16>>2]=z[c>>2];z[e+20>>2]=z[c+4>>2];z[e+24>>2]=z[c+8>>2];xa=c+32|0}function PP(a,b,c,d){var e=0,f=0;e=1<>2]|e}else{e=v[f>>2]&(e^-1)}v[f>>2]=e;b=1<>2]}else{b=v[c>>2]&(b^-1)}v[c>>2]=b;v[a+2356>>2]=v[a+2356>>2]|2}function YG(a,b){var c=0;a=v[a+176>>2];if(!(!a|w[a+31|0]!=1|!w[a+28|0])){z[b>>2]=z[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];c=1}return c}function DS(a,b){a=a|0;b=C(b);var c=0,d=0;c=xa-16|0;xa=c;z[a+532>>2]=b;if(v[a+432>>2]){d=uU(a+8|0);v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=2;Ba[v[v[d>>2]+52>>2]](d,c)|0;z[c+4>>2]=z[a+516>>2]*b;Ba[v[v[d>>2]+36>>2]](d,c)}xa=c+16|0;return 1}function EE(a){var b=0,c=0;b=v[a+124>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+72>>2];if(b){Ba[v[v[b>>2]+52>>2]](b)}v[a+72>>2]=0;b=v[a+76>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}AE(a+36|0);AE(a)}function ub(a,b,c,d,e){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);var f=0;f=xa-32|0;xa=f;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;z[f+8>>2]=d;v[f>>2]=0;v[f+4>>2]=0;z[f+24>>2]=b;z[f+20>>2]=c;z[f+12>>2]=e;Ba[v[v[a>>2]+128>>2]](a,f);xa=f+32|0}function pb(a,b,c,d,e){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);var f=0;f=xa-32|0;xa=f;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;z[f+8>>2]=d;v[f>>2]=0;v[f+4>>2]=0;z[f+24>>2]=c;z[f+20>>2]=b;z[f+12>>2]=e;Ba[v[v[a>>2]+124>>2]](a,f);xa=f+32|0}function NY(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=v[a+8>>2];c=v[a+264>>2];if(c>>>0>=(v[a+268>>2]&2147483647)>>>0){MY(a,b);return 1}v[v[a+260>>2]+(c<<2)>>2]=v[b>>2];v[a+264>>2]=v[a+264>>2]+1;return 1}function Lb(a,b,c,d,e){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);var f=0;f=xa-32|0;xa=f;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;z[f+8>>2]=d;v[f>>2]=0;v[f+4>>2]=0;z[f+24>>2]=c;z[f+20>>2]=b;z[f+12>>2]=e;Ba[v[v[a>>2]+164>>2]](a,f);xa=f+32|0}function Jb(a,b,c,d,e){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);var f=0;f=xa-32|0;xa=f;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;z[f+8>>2]=d;v[f>>2]=0;v[f+4>>2]=0;z[f+24>>2]=b;z[f+20>>2]=c;z[f+12>>2]=e;Ba[v[v[a>>2]+156>>2]](a,f);xa=f+32|0}function qC(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=gC(a+7664|0,b,c,d,e);t[a+7648|0]=1;v[a+32>>2]=0;c=a+7672|0;d=v[c+4>>2];v[a+24>>2]=v[c>>2];v[a+28>>2]=d;v[a+16>>2]=v[a+7664>>2];return(b|0)==(e|0)|0}function gJ(a,b){var c=0,d=0,e=0,f=0;c=xa-16|0;xa=c;d=v[b+28>>2];e=v[b+32>>2];f=d>>>0>e>>>0;v[c+4>>2]=f?d:e;v[c>>2]=f?e:d;a=hJ(a+1956|0,c,c+15|0);if(!w[c+15|0]){d=v[c+4>>2];e=v[c>>2];v[a+8>>2]=b;v[a>>2]=e;v[a+4>>2]=d}xa=c+16|0}function Uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0);b=v[b+228>>2]+(c<<5)|0;z[a>>2]=z[b+16>>2];z[a+4>>2]=z[b+20>>2];d=z[b+24>>2];v[a+12>>2]=0;z[a+8>>2]=d;z[a+16>>2]=z[b>>2];z[a+20>>2]=z[b+4>>2];d=z[b+8>>2];v[a+28>>2]=0;z[a+24>>2]=d}function n9(a){a=a|0;var b=0,c=0;v[a>>2]=149328;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)){t[a+68|0]=0;return a|0}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function l9(a){a=a|0;var b=0,c=0;v[a>>2]=149260;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)){t[a+68|0]=0;return a|0}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function UG(a,b,c){var d=0,e=0,f=0;d=xa-16|0;xa=d;z[a+156>>2]=b;a=v[a>>2];if(a){e=v[v[a+40>>2]+1012>>2];f=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[e>>2]+44>>2]](e,(f|0)==2,d+8|0);if(c?1:b>C(0)){nH(a)}kH(a,b,c)}xa=d+16|0}function k1(a){var b=0,c=0;if(!w[a+40|0]){b=v[a+24>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+24>>2]=0}b=v[a+28>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+28>>2]=0}v[a+20>>2]=0;v[a+24>>2]=0;return a}function xQ(a){a=a|0;var b=0,c=0,d=0,e=0;b=xa-16|0;xa=b;c=v[a+32>>2];if(c){d=v[a+28>>2];while(1){e=v[a+36>>2];v[b+8>>2]=v[v[v[d>>2]>>2]+144>>2];Ba[v[v[e>>2]+44>>2]](e,0,b+8|0);d=d+4|0;c=c-1|0;if(c){continue}break}}xa=b+16|0}function hI(a,b,c){var d=0,e=0,f=0;if((v[a+12>>2]&2147483647)>>>0>>0){iI(a,b)}d=v[a+8>>2];if((d|0)<(b|0)){e=v[a+4>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+8>>2]=b}function bX(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=xa-16|0;xa=i;j=v[a+36>>2];k=x[j+4>>1];u[i+8>>1]=x[f>>1];a=Ba[v[(k<<2)+141584>>2]](j,a,b,c,d,e,i+8|0,g,h)|0;xa=i+16|0;return a|0}function Me(a){a=a|0;var b=C(0),c=C(0),d=0;a:{if(v[a>>2]!=2){break a}b=z[a+4>>2];if((v[a+4>>2]&2139095040)==2139095040){break a}c=z[a+8>>2];if((v[a+8>>2]&2139095040)==2139095040){break a}d=!(c<=C(0))&(b<=C(0)^-1)}return d|0}function tV(a){a=a|0;var b=0,c=0;v[a>>2]=140672;a:{if(t[a+180|0]&1){break a}b=v[a+184>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b-v[b-4>>2]|0);v[a+184>>2]=0}a=sV(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function GK(a){a=a|0;var b=0,c=0,d=0;if(v[a+8>>2]){while(1){b=d<<2;c=v[b+v[a+4>>2]>>2];Ba[v[v[c>>2]>>2]](c)|0;b=v[b+v[a+4>>2]>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}d=d+1|0;if(d>>>0>2]){continue}break}}}function yr(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){zr(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<1)|0;d=(d<<1)+e|0;while(1){u[d>>1]=x[c>>1];d=d+2|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function tF(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){sF(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function bz(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){zw(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function X8(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){Y8(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function Cr(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){Dr(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function B$(a,b,c,d){var e=0,f=0,g=C(0),h=C(0);e=xa-32|0;xa=e;f=v[a+4>>2];v[e+24>>2]=a;v[e+20>>2]=f;g=z[a+8>>2];h=z[a+12>>2];z[e+16>>2]=C(1)/z[a+16>>2];z[e+8>>2]=C(1)/h;z[e+12>>2]=C(1)/g;m$(e+8|0,b,d,0,0,c,1,1);xa=e+32|0}function Ar(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){Br(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function oJ(a,b,c,d,e){var f=0,g=0,h=0;f=xa-16|0;xa=f;g=v[b+4>>2];h=v[g+28>>2];g=v[g+20>>2];v[f+8>>2]=b;v[f>>2]=g;v[f+4>>2]=g+(h<<2);b=WI(f);if(b){c=c|3;while(1){lJ(a,b,c,0,1,d,e);b=WI(f);if(b){continue}break}}xa=f+16|0}function P0(a){a=a|0;var b=0,c=0,d=0,e=0;b=a-8|0;if(oV(v[a+72>>2],b)){d=x[a-4>>1];c=v[b>>2];e=v[a+72>>2];a:{if(t[a-2|0]&1){Ba[v[c+16>>2]](b);break a}Ba[v[c+12>>2]](b)|0}qV(e,b,d);return}a9(v[37696],8,10730,208,75171,0)}function $0(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=144172;b=a-8|0;v[b>>2]=144076;z$(a+116|0);c=v[a+100>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[a+100>>2]=0;a=L0(b);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function j2(a,b){v[b+8>>2]=0;v[b+12>>2]=8;v[b>>2]=0;v[b+4>>2]=0;v[b+36>>2]=0;v[b+40>>2]=0;v[b+32>>2]=103120;v[b+16>>2]=6;v[b+20>>2]=0;v[b+24>>2]=a+100;v[b+28>>2]=a+4;v[b+44>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+56>>2]=0}function iu(a,b){var c=0,d=0,e=0;c=x[a+4>>1];if(c){d=(c|0)==1?a:v[a>>2];e=b+4816|0;a=0;while(1){b=v[(a<<2)+d>>2];if(w[b+39|0]&16){tu(e,b+32|0);v[b+36>>2]=v[b+36>>2]&-268435457}a=a+1|0;if((c|0)!=(a|0)){continue}break}}}function oc(a,b){a=a|0;b=b|0;var c=0,d=0;c=xa-16|0;xa=c;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](c,b);a=laa(12);z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];xa=c+16|0;return a|0}function WU(a,b,c){var d=0,e=0;d=xa-5120|0;xa=d;if(!(!b|(c|0)<=0)){e=v[a+4>>2]&2147483647;if((e|0)!=(c|0)){if(c>>>0>e>>>0){UU(a,c)}v[a+4>>2]=c|-2147483648}v[a+20>>2]=d;v[a+16>>2]=d+1024;QU(a,b,c)}xa=d+5120|0;return a}function Tj(a,b){a=a|0;b=b|0;b=v[b+316>>2]&1024?v[b+56>>2]+144|0:b+112|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2]}function Raa(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=B(e,f);g=c&65535;h=a&65535;i=B(g,h);f=(i>>>16|0)+B(f,g)|0;e=(f&65535)+B(e,h)|0;Aa=(B(b,c)+j|0)+B(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function Pc(){var a=0;a=laa(64);v[a+16>>2]=0;v[a+20>>2]=0;u[a+12>>1]=0;v[a+8>>2]=-1;v[a>>2]=0;v[a+4>>2]=0;v[a+48>>2]=0;v[a+40>>2]=2139095039;v[a+44>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;return a|0}function yX(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=v[a+8>>2];c=v[a+4>>2];if(c>>>0>=(v[a+8>>2]&2147483647)>>>0){on(a,b);return 1}v[v[a>>2]+(c<<2)>>2]=v[b>>2];v[a+4>>2]=v[a+4>>2]+1;return 1}function VE(a,b){var c=0,d=0,e=0;b=v[(v[b>>2]==(a|0)?12:16)+b>>2];c=v[a+28>>2]-1|0;v[a+28>>2]=c;d=v[a+20>>2];e=b<<2;v[d+e>>2]=v[(c<<2)+d>>2];if(b>>>0>>0){c=a;a=v[v[a+20>>2]+e>>2];v[((c|0)==v[a>>2]?12:16)+a>>2]=b}}function $B(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(!w[a+48|0]){a9(v[37696],2,11218,392,74626,0);return 0}e=v[a+40>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+44>>2]+(d<<2)|0,c<<2)}else{c=0}return c|0}function g1(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=144300;c=a-8|0;v[c>>2]=144204;a:{if(t[a+188|0]&1){break a}b=v[a+192>>2];if(!b){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b-v[b-4>>2]|0);v[a+192>>2]=0}return L0(c)|0}function ah(a,b){a=a|0;b=b|0;var c=0,d=0;if(v[a+36>>2]){while(1){c=v[v[a+40>>2]+(d<<2)>>2];if(!(x[c+4>>1]!=13|!c)){c=Ba[v[v[c>>2]+248>>2]](c)|0}Ba[v[v[b>>2]+8>>2]](b,c);d=d+1|0;if(d>>>0>2]){continue}break}}}function Sr(a,b){a=a|0;b=b|0;if((b|0)<=23){if(!(!(w[a+5580|0]&32)|!w[(a+b|0)+5248|0])){return C(z[((b<<2)+a|0)+5152>>2])}return C(z[(v[a+1008>>2]+(b<<2)|0)+1032>>2])}a9(v[37696],4,11709,2497,66542,0);return C(C(0))}function Db(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+16>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;z[e+16>>2]=c;v[e+8>>2]=0;v[e+12>>2]=0;z[e+28>>2]=b;z[e+20>>2]=d;Ba[v[v[a>>2]+140>>2]](a,e+8|0);xa=e+32|0}function zi(a,b){a=a|0;b=b|0;var c=0,d=0;a:{if(w[a+92|0]){break a}c=v[a+96>>2];if(!c){break a}d=v[a+104>>2];if(!(v[a+100>>2]|d&2147483647)){break a}Ba[v[v[b>>2]+8>>2]](b,c,d<<2)}Ba[v[v[b>>2]+16>>2]](b,v[a+112>>2])}function y$(a){v[a>>2]=0;v[a+4>>2]=0;u[a+56>>1]=0;v[a+48>>2]=0;v[a+52>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;return a}function gL(a,b,c){a=a|0;b=b|0;c=c|0;v[v[a+4>>2]>>2]=b;fL(a,c);c=v[a+32>>2];b=v[a+4>>2];v[b+384>>2]=v[a+36>>2];v[b+368>>2]=c;UK(b,b+340|0);b=v[a+4>>2];$K(b+340|0,a,b+324|0,b+332|0);I9(v[b+324>>2],0,v[b+328>>2]<<2)}function U9(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 C(b?-1/a:a)}function LU(a,b){var c=0;a:{if(!w[a+6|0]){break a}c=x[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;Ba[v[v[b>>2]+4>>2]](b,v[a>>2],((c>>>16|c)<<2)+4|0)}t[a+6|0]=1;v[a>>2]=0;u[a+4>>1]=0}function qc(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=xa-16|0;xa=g;h=v[a+4>>2];b=(h>>1)+b|0;a=v[a>>2];a=h&1?v[v[b>>2]+a>>2]:a;u[g+8>>1]=x[c>>1];a=Ba[a|0](b,g+8|0,d,e,f)|0;xa=g+16|0;return a|0}function aF(a,b){z[a+32>>2]=z[b>>2];z[a+36>>2]=z[b+4>>2];z[a+40>>2]=z[b+8>>2];z[a+44>>2]=z[b+12>>2];z[a+48>>2]=z[b+16>>2];z[a+52>>2]=z[b+20>>2];z[a+56>>2]=z[b+24>>2];t[a+273|0]=w[a+273|0]|2;a=v[a>>2];if(a){mF(a)}}function AJ(a,b){var c=0,d=0,e=0;c=v[b+52>>2];v[b+52>>2]=-1;v[b+44>>2]=v[b+44>>2]&-8388609;b=v[a+36>>2]-1|0;v[a+36>>2]=b;d=v[a+32>>2];e=c<<2;v[d+e>>2]=v[(b<<2)+d>>2];if(b>>>0>c>>>0){v[v[v[a+32>>2]+e>>2]+52>>2]=c}}function $k(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=v[a+392>>2];if(c){d=a,e=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[d+392>>2]=e}c=v[a+396>>2];if(c){d=a,e=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[d+396>>2]=e}v[a+388>>2]=a}function rH(a){var b=0,c=0,d=0;c=v[a+28>>2];d=v[a+20>>2];b=v[a+100>>2];v[b+148>>2]=v[b+148>>2]-1;a:{while(1){if(c){c=c-1|0;b=v[d>>2];d=d+4|0;if(w[b+20|0]!=4){continue}break a}break}u[a+148>>1]=x[a+148>>1]&65279}}function iR(a){a=a|0;var b=0,c=0,d=0;c=xa-48|0;xa=c;d=c+8|0;a=v[a+28>>2];b=v[v[a+976>>2]+1024>>2];Ba[v[v[b>>2]+84>>2]](d,b);b=v[a+1004>>2];Ba[v[v[b>>2]+8>>2]](b,v[a+1e3>>2],v[a+2492>>2],v[a+2496>>2],d);xa=c+48|0}function Zj(a,b){a=a|0;b=b|0;var c=0;if(w[b+316|0]&2){b=v[b+56>>2]+96|0}else{c=b- -64|0;b=v[c+176>>2];a:{if(!(!b|w[b+31|0]!=1)){b=b+32|0;break a}b=c+128|0}}z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2]}function Yo(a,b){a=a|0;b=b|0;b=v[b+52>>2]&64?v[b+56>>2]+96|0:b+80|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2]}function Vm(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 Ei(a,b){a=a|0;b=b|0;var c=0,d=0;eu(a+20|0,b);dh(a+12|0,b);a:{if(w[a+348|0]){break a}c=v[a+352>>2];if(!c){break a}d=v[a+356>>2];a=v[a+360>>2];if(!(d|a&2147483647)){break a}Ba[v[v[b>>2]+8>>2]](b,c,a<<2)}}function Cd(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=xa-16|0;xa=g;h=v[a+4>>2];b=(h>>1)+b|0;a=v[a>>2];a=h&1?v[v[b>>2]+a>>2]:a;t[g+8|0]=w[f|0];a=Ba[a|0](b,c,d,e,g+8|0)|0;xa=g+16|0;return a|0}function $E(a,b){z[a+4>>2]=z[b>>2];z[a+8>>2]=z[b+4>>2];z[a+12>>2]=z[b+8>>2];z[a+16>>2]=z[b+12>>2];z[a+20>>2]=z[b+16>>2];z[a+24>>2]=z[b+20>>2];z[a+28>>2]=z[b+24>>2];t[a+273|0]=w[a+273|0]|2;a=v[a>>2];if(a){mF(a)}}function t3(a,b,c){var d=0,e=0;d=v[c>>2]+1|0;v[c>>2]=d;e=v[b>>2];v[b>>2]=d>>>0>>0?e:d;d=v[a+24>>2];a:{if(!d){break a}t3(d,b,c);v[c>>2]=v[c>>2]-1;a=v[a+24>>2];if(!a){break a}t3(a+36|0,b,c);v[c>>2]=v[c>>2]-1}}function qaa(a,b,c){var d=0;d=v[a+16>>2];if(!d){v[a+36>>2]=1;v[a+24>>2]=c;v[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(v[a+24>>2]!=2){break a}v[a+24>>2]=c;return}t[a+54|0]=1;v[a+24>>2]=2;v[a+36>>2]=v[a+36>>2]+1}}function m5(a,b){a=a|0;b=b|0;var c=0;b=v[b+80>>2];z[a>>2]=z[b+240>>2];z[a+4>>2]=z[b+244>>2];z[a+8>>2]=z[b+248>>2];z[a+12>>2]=z[b+252>>2];z[a+16>>2]=z[b+256>>2];c=v[b+264>>2];v[a+20>>2]=v[b+260>>2];v[a+24>>2]=c}function i5(a,b){a=a|0;b=b|0;var c=0;b=v[b+80>>2];z[a>>2]=z[b+212>>2];z[a+4>>2]=z[b+216>>2];z[a+8>>2]=z[b+220>>2];z[a+12>>2]=z[b+224>>2];z[a+16>>2]=z[b+228>>2];c=v[b+236>>2];v[a+20>>2]=v[b+232>>2];v[a+24>>2]=c}function df(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=laa(24);b=b+c|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;c=v[b+20>>2];v[a+16>>2]=v[b+16>>2];v[a+20>>2]=c;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c;return a|0}function ZE(a){var b=0,c=0,d=0;a=v[a>>2];if(a){if(v[a+28>>2]){d=v[a+12>>2];b=v[a>>2];c=v[a+16>>2];Ba[v[v[b>>2]+12>>2]](b,c)|0;t[b+76|0]=c;v[b+32>>2]=d;Ba[v[v[b>>2]+8>>2]](b)}a=v[a>>2];Ba[v[v[a>>2]+100>>2]](a)}}function Gi(a,b){a=a|0;b=b|0;var c=0,d=0;fu(a+20|0,b);gh(a+12|0,b);a:{if(w[a+348|0]|!v[a+352>>2]){break a}c=v[a+360>>2];if(!(v[a+356>>2]|c&2147483647)){break a}d=b;b=v[b+4>>2];v[d+4>>2]=b+(c<<2);v[a+352>>2]=b}}function A3(a,b,c){var d=0,e=0;d=v[c>>2]+1|0;v[c>>2]=d;e=v[b>>2];v[b>>2]=d>>>0>>0?e:d;d=v[a+24>>2];a:{if(!d){break a}A3(d,b,c);v[c>>2]=v[c>>2]-1;a=v[a+24>>2];if(!a){break a}A3(a+36|0,b,c);v[c>>2]=v[c>>2]-1}}function V0(a){a=a|0;var b=0,c=0;v[a+8>>2]=144172;v[a>>2]=144076;z$(a+124|0);b=v[a+108>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+108>>2]=0;a=L0(a);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function m9(a){a=a|0;var b=0,c=0;v[a>>2]=149328;v[a+76>>2]=0;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)|!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}iaa(a)}function i9(a){a=a|0;var b=0,c=0;v[a>>2]=149260;v[a+76>>2]=0;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)|!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}iaa(a)}function e9(a){a=a|0;var b=0;a=v[37696];if(v[37698]==1){a=Ba[v[v[a>>2]+16>>2]](a)|0;b=v[37696];Ba[v[v[b>>2]+28>>2]](b)|0;Ba[v[v[a>>2]+12>>2]](a,v[37696]);v[37698]=0;v[37696]=0;return}a9(a,8,9796,185,64667,0)}function d8(a,b){a=a|0;b=b|0;var c=0;b=v[b+80>>2];z[a>>2]=z[b+92>>2];z[a+4>>2]=z[b+96>>2];z[a+8>>2]=z[b+100>>2];z[a+12>>2]=z[b+104>>2];z[a+16>>2]=z[b+108>>2];c=v[b+116>>2];v[a+20>>2]=v[b+112>>2];v[a+24>>2]=c}function KK(a){var b=0,c=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+12>>2]=0}b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}function w8(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=148496;b=a-12|0;v[b>>2]=148260;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function t7(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=146692;b=a-12|0;v[b>>2]=146468;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function d5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[c+4>>2];b=v[a+80>>2]+(b<<4)|0;v[b+304>>2]=v[c>>2];v[b+308>>2]=d;z[b+312>>2]=z[c+8>>2];v[b+316>>2]=v[c+12>>2];t[a+84|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function a8(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=147844;b=a-12|0;v[b>>2]=147632;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function T8(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=149084;b=a-12|0;v[b>>2]=148880;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function O0(a){a=a|0;var b=0,c=0,d=0;if(oV(v[a+80>>2],a)){b=v[a>>2];c=v[a+80>>2];d=x[a+4>>1];a:{if(t[a+6|0]&1){Ba[v[b+16>>2]](a);break a}Ba[v[b+12>>2]](a)|0}qV(c,a,d);return}a9(v[37696],8,10730,208,75171,0)}function H7(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=147240;b=a-12|0;v[b>>2]=147056;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function B6(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=145824;b=a-12|0;v[b>>2]=145556;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function Kf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;e=v[b+4>>2];b=v[b>>2];a:{if(e-b>>2>>>0>c>>>0){v[d+8>>2]=v[b+(c<<2)>>2];f=a,g=ea(114868,d+8|0)|0,v[f>>2]=g;break a}v[a>>2]=1}xa=d+16|0}function Ct(a,b){a=a|0;b=b|0;b=v[b+36>>2]&4?v[b+40>>2]:b+80|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2]}function e1(a){a=a|0;var b=0,c=0;v[a+8>>2]=144300;v[a>>2]=144204;a:{if(t[a+196|0]&1){break a}b=v[a+200>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b-v[b-4>>2]|0);v[a+200>>2]=0}return L0(a)|0}function ct(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=xa-32|0;xa=g;u[g>>1]=0;v[g+28>>2]=0;v[g+24>>2]=c;v[g+20>>2]=b;v[g+8>>2]=0;v[g+12>>2]=0;a=dt(a,g+8|0,d,g,0,e,f,0);xa=g+32|0;return a|0}function baa(a,b,c,d,e){var f=0;f=xa-256|0;xa=f;if(!(e&73728|(c|0)<=(d|0))){d=c-d|0;c=d>>>0<256;I9(f,b&255,c?d:256);if(!c){while(1){Z9(a,f,256);d=d-256|0;if(d>>>0>255){continue}break}}Z9(a,f,d)}xa=f+256|0}function P7(a,b){a=a|0;b=b|0;var c=0;b=v[b+80>>2];z[a>>2]=z[b+80>>2];z[a+4>>2]=z[b+84>>2];z[a+8>>2]=z[b+88>>2];z[a+12>>2]=z[b+92>>2];z[a+16>>2]=z[b+96>>2];c=v[b+104>>2];v[a+20>>2]=v[b+100>>2];v[a+24>>2]=c}function ut(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==3){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;v[b>>2]=v[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2]}return(d|0)==3|0}function uR(a){a=a|0;var b=0,c=0,d=0;c=v[a+28>>2];a=v[a+20>>2];b=v[a+16>>2];b=Ba[v[v[b>>2]+4>>2]](b)|0;b=Ba[v[v[b>>2]+4>>2]](b)|0;d=b;b=v[c+976>>2];qI(v[c+980>>2],d,v[b+1156>>2],b,w[c+1148|0],a,c+4e3|0)}function tI(a,b){var c=0,d=0,e=0;c=v[a+4>>2];if((c|0)<0){d=v[a>>2];c=d+B(c,12)|0;while(1){e=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=e;v[c+8>>2]=v[b+8>>2];c=c+12|0;if(d>>>0>c>>>0){continue}break}}v[a+4>>2]=0}function mF(a){var b=0,c=0,d=0;a=v[v[v[a+24>>2]+364>>2]>>2];b=v[a>>2];t[b+93|0]=1;c=v[v[a+4>>2]+1012>>2];d=b;b=a+48|0;Ba[v[v[c>>2]+64>>2]](c,d,b);c=v[v[a+4>>2]+1012>>2];Ba[v[v[c>>2]+68>>2]](c,v[a>>2],b)}function W_(a){a=a|0;var b=0,c=0,d=0;b=a-8|0;if(pV(v[a+88>>2],b)){c=v[b>>2];d=v[a+88>>2];a:{if(t[a-2|0]&1){Ba[v[c+16>>2]](b);break a}Ba[v[c+12>>2]](b)|0}qV(d,b,1);return}a9(v[37696],8,12435,101,75061,0)}function JG(a,b,c){var d=0;d=v[a>>2];if(d){iH(d)}a=v[a+176>>2];a:{if(!a){break a}t[a+12|0]=w[a+12|0]|4;if(b){v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0}if(!c){break a}v[a+48>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0}}function k9(a,b){a=a|0;b=b|0;var c=0,d=0;if(v[a+76>>2]){while(1){d=v[v[a+72>>2]+(c<<2)>>2];Ba[v[v[d>>2]+4>>2]](d,b);c=c+1|0;if(c>>>0>2]){continue}break}}a=v[a+84>>2];Ba[v[v[a>>2]+12>>2]](a,b)}function jQ(a){a=a|0;var b=0,c=0,d=C(0),e=0;c=v[a+28>>2];d=z[a+32>>2];e=v[a+40>>2];a=v[a+36>>2];if(v[a+28>>2]){while(1){gH(v[v[a+24>>2]+(b<<2)>>2],c,d,e);b=b+1|0;if(b>>>0>2]){continue}break}}}function Y5(a,b,c){a=a|0;b=b|0;c=c|0;b=B(c,28)+b|0;z[a>>2]=z[b+20>>2];z[a+4>>2]=z[b+24>>2];z[a+8>>2]=z[b+28>>2];z[a+12>>2]=z[b+32>>2];z[a+16>>2]=z[b+36>>2];z[a+20>>2]=z[b+40>>2];z[a+24>>2]=z[b+44>>2]}function i2(a){a=a|0;var b=0,c=0;v[a>>2]=144644;b=v[a+6620>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+6612>>2];if((b|0)==(a+4560|0)|!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}iaa(a)}function Vj(a){a=a|0;var b=C(0),c=0;if(t[a+316|0]&1){b=z[v[a+56>>2]+92>>2]}else{a=a- -64|0;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){b=z[c+44>>2];break a}b=z[a+140>>2]}}return C(b>C(0)?C(C(1)/b):C(0))}function Op(a,b){a=a|0;b=b|0;var c=0,d=C(0);a:{if(t[b+5580|0]&1){z[a>>2]=z[b+5548>>2];c=b+5556|0;b=b+5552|0;break a}z[a>>2]=z[b+1084>>2];c=b+1092|0;b=b+1088|0}d=z[b>>2];z[a+8>>2]=z[c>>2];z[a+4>>2]=d}function H6(a){a=a|0;var b=0,c=0;v[a>>2]=145964;b=v[a+4>>2];if(v[b+16>>2]==1){v[b+16>>2]=2}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function o5(a,b){a=a|0;b=b|0;b=v[b+80>>2];z[a>>2]=z[b+400>>2];z[a+4>>2]=z[b+404>>2];z[a+8>>2]=z[b+408>>2];z[a+12>>2]=z[b+412>>2];z[a+16>>2]=z[b+416>>2];z[a+20>>2]=z[b+420>>2];z[a+24>>2]=z[b+424>>2]}function bg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c){return 1}if(cg(v[a+72>>2],b)){while(1){d=d+1|0;if((d|0)!=(c|0)){if(cg(v[a+72>>2],B(d,48)+b|0)){continue}}break}a=c>>>0<=d>>>0}else{a=0}return a|0}function bN(a){a=a|0;var b=0,c=C(0),d=0;c=z[v[a+32>>2]+52>>2];a=v[a+28>>2];b=v[a+84>>2];d=b>>>0<4?b:4;v[a+84>>2]=d;b=v[a+80>>2]+(b-d|0)|0;v[a+80>>2]=b;c=C(c/C(b>>>0));z[a+92>>2]=c;z[a+96>>2]=C(1)/c}function HG(a,b,c){var d=0;d=v[a>>2];if(d){hH(d)}a=v[a+176>>2];a:{if(!a){break a}t[a+12|0]=w[a+12|0]|2;if(b){v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0}if(!c){break a}v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0}}function s8(a){a=a|0;var b=0,c=0;v[a+12>>2]=148496;v[a>>2]=148260;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function p7(a){a=a|0;var b=0,c=0;v[a+12>>2]=146692;v[a>>2]=146468;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function eg(a){a=a|0;var b=0,c=0;v[a>>2]=114368;if(w[a+68|0]){c=v[a+72>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+72>>2]);return a|0}function _f(a){a=a|0;var b=0,c=0;v[a>>2]=114048;if(w[a+84|0]){c=v[a+88>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+88>>2]);return a|0}function Yf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c){return 1}if(Zf(v[a+88>>2],b)){while(1){d=d+1|0;if((d|0)!=(c|0)){if(Zf(v[a+88>>2],(d<<6)+b|0)){continue}}break}a=c>>>0<=d>>>0}else{a=0}return a|0}function We(a,b){a=a|0;b=b|0;var c=0;c=laa(28);z[c>>2]=z[a>>2];z[c+4>>2]=z[a+4>>2];z[c+8>>2]=z[a+8>>2];z[c+12>>2]=z[b>>2];z[c+16>>2]=z[b+4>>2];z[c+20>>2]=z[b+8>>2];z[c+24>>2]=z[b+12>>2];return c|0}function W7(a){a=a|0;var b=0,c=0;v[a+12>>2]=147844;v[a>>2]=147632;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Ur(a,b){a=a|0;b=b|0;b=w[b+5580|0]&64?b+5272|0:v[b+1008>>2]+1128|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2]}function T5(a){a=a|0;var b=0,c=0;v[a+12>>2]=145824;v[a>>2]=145556;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function P8(a){a=a|0;var b=0,c=0;v[a+12>>2]=149084;v[a>>2]=148880;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function D7(a){a=a|0;var b=0,c=0;v[a+12>>2]=147240;v[a>>2]=147056;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function XF(a,b){var c=0,d=0;c=xa-16|0;xa=c;v[c+8>>2]=b;d=v[a+36>>2];a:{if(d>>>0>=(v[a+40>>2]&2147483647)>>>0){YF(a+32|0,c+8|0);break a}v[v[a+32>>2]+(d<<2)>>2]=b;v[a+36>>2]=v[a+36>>2]+1}xa=c+16|0}function AW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=xa-16|0;xa=c;AV(c,d);xa=c+16|0;return z[a+4>>2]>=C(z[c+12>>2]+C(C(z[b+24>>2]*z[c+8>>2])+C(C(z[b+16>>2]*z[c>>2])+C(z[b+20>>2]*z[c+4>>2]))))|0}function uj(a){a=a|0;var b=0,c=C(0);if(w[a+316|0]&32){return C(C(K(z[v[a+56>>2]+120>>2])))}b=a- -64|0;a=v[b+176>>2];a:{if(!(!a|w[a+31|0]!=1)){c=z[a+60>>2];break a}c=z[b+116>>2]}return C(C(K(c)))}function sj(a){a=a|0;var b=0,c=C(0);if(w[a+316|0]&16){return C(C(K(z[v[a+56>>2]+116>>2])))}b=a- -64|0;a=v[b+176>>2];a:{if(!(!a|w[a+31|0]!=1)){c=z[a+56>>2];break a}c=z[b+112>>2]}return C(C(K(c)))}function ig(a){a=a|0;var b=0,c=0;v[a>>2]=114760;if(w[a+4|0]){c=v[a+8>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+8>>2]);return a|0}function gX(a,b){var c=0;c=xa-16|0;xa=c;Ba[v[v[b>>2]>>2]](b,c+12|0,4)|0;if(a){a=w[c+15|0];t[c+15|0]=w[c+12|0];t[c+12|0]=a;a=w[c+13|0];t[c+13|0]=w[c+14|0];t[c+14|0]=a}xa=c+16|0;return v[c+12>>2]}function Rf(a){a=a|0;var b=0,c=0;v[a>>2]=111460;if(w[a+4|0]){c=v[a+8>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+8>>2]);return a|0}function It(a){a=a|0;var b=0,c=0;if(w[a+36|0]&2){b=x[v[a+40>>2]+124>>1]}else{c=v[a+116>>2];b=1;a:{if(c-7>>>0<4294967294){break a}b=x[a+168>>1];if((c|0)==5){break a}b=x[a+148>>1]}}return b&65535}function u1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0);b=v[b+4>>2];c=HV(b,c);v[d>>2]=c;b=v[b+152>>2]+B(c,12)|0;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c}function gj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;hj(a,b,c,d);a=v[a+320>>2];b=Ba[v[v[a>>2]+100>>2]](a)|0;a=1;a:{if(z[c>>2]!=C(0)){break a}a=1;if(z[c+4>>2]!=C(0)){break a}a=z[c+8>>2]!=C(0)}cj(b,a,1)}function dg(a){a=a|0;var b=0,c=0;v[a>>2]=114368;if(w[a+68|0]){c=v[a+72>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+72>>2]);iaa(a)}function WG(a,b){var c=0,d=0,e=0;c=xa-16|0;xa=c;z[a+152>>2]=b;a=v[a>>2];if(a){d=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[d>>2]+44>>2]](d,(e|0)==2,c+8|0)}xa=c+16|0}function VG(a,b){var c=0,d=0,e=0;c=xa-16|0;xa=c;z[a+148>>2]=b;a=v[a>>2];if(a){d=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[d>>2]+44>>2]](d,(e|0)==2,c+8|0)}xa=c+16|0}function TG(a,b){var c=0,d=0,e=0;c=xa-16|0;xa=c;z[a+144>>2]=b;a=v[a>>2];if(a){d=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[d>>2]+44>>2]](d,(e|0)==2,c+8|0)}xa=c+16|0}function $f(a){a=a|0;var b=0,c=0;v[a>>2]=114048;if(w[a+84|0]){c=v[a+88>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+88>>2]);iaa(a)}function lf(a,b,c,d){a=a|0;b=b|0;c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+20>>2]=0;u[e+16>>1]=7;v[e+8>>2]=0;v[e+12>>2]=0;Ba[v[v[a>>2]+8>>2]](e+24|0,a,b,c,d,e+8|0,0);xa=e+32|0;return w[e+24|0]}function b9(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(v[a+76>>2]){while(1){g=v[v[a+72>>2]+(f<<2)>>2];Ba[v[v[g>>2]+8>>2]](g,b,c,d,e);f=f+1|0;if(f>>>0>2]){continue}break}}}function bd(){var a=0;a=laa(48);v[a+16>>2]=0;v[a+20>>2]=0;u[a+12>>1]=0;v[a+8>>2]=-1;v[a>>2]=0;v[a+4>>2]=0;v[a+40>>2]=2139095039;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;return a|0}function Z6(a){a=a|0;var b=C(0),c=0,d=C(0),e=C(0);c=xa-32|0;xa=c;Ba[v[v[a>>2]+40>>2]](c,a);xa=c+32|0;b=z[c+24>>2];d=C(b*b);b=z[c+16>>2];e=C(b*b);b=z[c+20>>2];return C(C(K(C(d+C(e+C(b*b))))))}function V_(a){a=a|0;var b=0,c=0;if(pV(v[a+96>>2],a)){b=v[a>>2];c=v[a+96>>2];a:{if(t[a+6|0]&1){Ba[v[b+16>>2]](a);break a}Ba[v[b+12>>2]](a)|0}qV(c,a,1);return}a9(v[37696],8,12435,101,75061,0)}function Ta(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=xa-16|0;xa=e;f=v[a+4>>2];b=(f>>1)+b|0;a=v[a>>2];a=f&1?v[v[b>>2]+a>>2]:a;t[e+8|0]=w[d|0];a=Ba[a|0](b,c,e+8|0)|0;xa=e+16|0;return a|0}function EB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;c=v[a>>2];a=c+x[a+4>>1]|0;if(a>>>0>c>>>0){while(1){uB((c<<5)+b|0,C(-34028234663852886e22),d,e);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function yV(a){a=a|0;var b=0,c=0;v[a>>2]=140756;z$(a+112|0);b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+96>>2]=0;a=sV(a);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function qs(a,b){a=a|0;b=b|0;if(!w[a+6352|0]){a9(v[37696],8,11709,3019,71646,0);return 0}if(v9(v[a+6068>>2],0-b|0)){LE(a+5584|0);t[v[a+6068>>2]+76|0]=0;t[a+6352|0]=0;a=1}else{a=0}return a|0}function hg(a){a=a|0;var b=0,c=0;v[a>>2]=114760;if(w[a+4|0]){c=v[a+8>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+8>>2]);iaa(a)}function Sf(a){a=a|0;var b=0,c=0;v[a>>2]=111460;if(w[a+4|0]){c=v[a+8>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+8>>2]);iaa(a)}function mS(a,b){z[a+16>>2]=z[b>>2];z[a+20>>2]=z[b+4>>2];z[a+24>>2]=z[b+8>>2];z[a+28>>2]=z[b+12>>2];z[a+32>>2]=z[b+16>>2];z[a+36>>2]=z[b+20>>2];z[a+40>>2]=z[b+24>>2];a=v[a>>2];if(a){WJ(a)}}function UQ(a){a=a|0;var b=0,c=0;b=v[a+28>>2];c=v[b+1004>>2];Ba[v[v[c>>2]+12>>2]](c,v[a+20>>2]);a=v[b+1012>>2];Ba[v[v[a>>2]+72>>2]](a,v[v[b+976>>2]+1816>>2],v[b+1140>>2],v[b+980>>2]+160|0)}function M9(a){var b=0;b=v[a+72>>2];v[a+72>>2]=b-1|b;b=v[a>>2];if(b&8){v[a>>2]=b|32;return-1}v[a+4>>2]=0;v[a+8>>2]=0;b=v[a+44>>2];v[a+28>>2]=b;v[a+20>>2]=b;v[a+16>>2]=b+v[a+48>>2];return 0}function DB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;c=v[a>>2];a=c+x[a+4>>1]|0;if(a>>>0>c>>>0){while(1){mB((c<<5)+b|0,C(-34028234663852886e22),d);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function y8(a,b){if(b){v[a>>2]=0;v[a+4>>2]=0;v[a+48>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}}function vd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=xa-16|0;xa=c;d=v[a>>2];e=c+8|0;a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](e,b);a=laa(1);t[a|0]=w[c+8|0];xa=c+16|0;return a|0}function rV(a){a=a|0;var b=0,c=0;v[a>>2]=140672;a:{if(t[a+180|0]&1){break a}b=v[a+184>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b-v[b-4>>2]|0);v[a+184>>2]=0}return sV(a)|0}function hX(a,b){var c=0;c=xa-16|0;xa=c;Ba[v[v[b>>2]>>2]](b,c+8|0,4)|0;if(a){a=w[c+11|0];t[c+11|0]=w[c+8|0];t[c+8|0]=a;a=w[c+9|0];t[c+9|0]=w[c+10|0];t[c+10|0]=a}xa=c+16|0;return z[c+8>>2]}function fe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;Ba[v[a>>2]](d,b,c);a=laa(16);v[a>>2]=v[d>>2];v[a+4>>2]=v[d+4>>2];v[a+8>>2]=v[d+8>>2];v[a+12>>2]=v[d+12>>2];xa=d+16|0;return a|0}function Kr(a,b){a=a|0;b=b|0;var c=0;a=a+5584|0;v[a+116>>2]=b;c=v[a>>2];if(!(!c|v[a+28>>2]!=1)){Ba[v[v[c>>2]+68>>2]](c,b)}c=v[a+36>>2];if(!(!c|v[a- -64>>2]!=1)){Ba[v[v[c>>2]+68>>2]](c,b)}}function wt(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==2){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;c=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=c;v[b+8>>2]=v[a+8>>2]}return(d|0)==2|0}function c8(a){a=a|0;var b=C(0),c=0,d=C(0),e=C(0);c=xa-16|0;xa=c;Ba[v[v[a>>2]+48>>2]](c,a);xa=c+16|0;b=z[c+8>>2];d=C(b*b);b=z[c>>2];e=C(b*b);b=z[c+4>>2];return C(C(K(C(d+C(e+C(b*b))))))}function S9(a,b){var c=0,d=0;c=w[a|0];d=w[b|0];a:{if(!c|(c|0)!=(d|0)){break a}while(1){d=w[b+1|0];c=w[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 yB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;var g=0;g=v[a>>2];a=g+x[a+4>>1]|0;if(a>>>0>g>>>0){while(1){qB((g<<5)+b|0,e,f,c);g=g+1|0;if((a|0)!=(g|0)){continue}break}}}function cf(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+b|0;b=v[c+4>>2];v[a>>2]=v[c>>2];v[a+4>>2]=b;b=v[c+20>>2];v[a+16>>2]=v[c+16>>2];v[a+20>>2]=b;b=v[c+12>>2];v[a+8>>2]=v[c+8>>2];v[a+12>>2]=b}function SC(a,b,c){var d=0,e=0,f=0;a:{d=v[a+36>>2];e=v[d>>2];if(!e){break a}a=0;while(1){f=(a<<2)+d|0;if(v[f+4>>2]!=(b|0)){a=a+1|0;if((e|0)!=(a|0)){continue}break a}break}v[f+4>>2]=c}}function waa(a,b){var c=0;a:{if(!b){break a}b=paa(b,110068);if(!b|v[b+8>>2]&(v[a+8>>2]^-1)){break a}if(!naa(v[a+12>>2],v[b+12>>2],0)){break a}c=naa(v[a+16>>2],v[b+16>>2],0)}return c}function jq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a:{if((Ba[v[v[b>>2]+24>>2]](b)|0)!=(a|0)){a=v[37696];v[d>>2]=14536;a9(a,8,11709,79,75385,d);break a}kq(a,b,c,1)}xa=d+16|0}function _e(a,b,c,d,e){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);var f=0;f=xa-16|0;xa=f;z[f+12>>2]=b;z[f+8>>2]=c;z[f+4>>2]=d;z[f>>2]=e;a=Ba[a|0](f+12|0,f+8|0,f+4|0,f)|0;xa=f+16|0;return a|0}function Ti(a){a=a|0;var b=0,c=C(0);if(w[a+316|0]&8){return C(z[v[a+56>>2]+112>>2])}b=a- -64|0;a=v[b+176>>2];a:{if(!(!a|w[a+31|0]!=1)){c=z[a+52>>2];break a}c=z[b+124>>2]}return C(c)}function Ri(a){a=a|0;var b=0,c=C(0);if(w[a+316|0]&4){return C(z[v[a+56>>2]+108>>2])}b=a- -64|0;a=v[b+176>>2];a:{if(!(!a|w[a+31|0]!=1)){c=z[a+48>>2];break a}c=z[b+120>>2]}return C(c)}function $l(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:{if(w[a+14|0]&16){a=v[a+16>>2]+(b<<3)|0;z[c>>2]=z[a+156>>2];a=a+160|0;break a}a=(b<<3)+a|0;z[c>>2]=z[a+80>>2];a=a+84|0}z[d>>2]=z[a>>2]}function r4(a){a=a|0;var b=0,c=0;v[a>>2]=145056;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+28>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function jw(a){a=a|0;var b=0,c=0;v[a>>2]=127652;b=v[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+80>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function iL(a,b){var c=0,d=0,e=0;c=v[a+4>>2];if((c|0)<0){d=v[a>>2];c=d+(c<<3)|0;while(1){e=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=e;c=c+8|0;if(d>>>0>c>>>0){continue}break}}v[a+4>>2]=0}function _0(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=144172;b=a-8|0;v[b>>2]=144076;z$(a+116|0);c=v[a+100>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[a+100>>2]=0;return L0(b)|0}function Wj(a){a=a|0;var b=0,c=C(0);if(t[a+316|0]&1){return C(z[v[a+56>>2]+92>>2])}b=a- -64|0;a=v[b+176>>2];a:{if(!(!a|w[a+31|0]!=1)){c=z[a+44>>2];break a}c=z[b+140>>2]}return C(c)}function Hc(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=C(f);g=g|0;h=h|0;var i=0;i=xa-16|0;xa=i;a=v[a>>2];u[i+8>>1]=x[g>>1];a=Ba[a|0](b,c,d,e,f,i+8|0,h)|0;xa=i+16|0;return a|0}function su(a){var b=0;a:{b:{c:{b=v[a+4>>2];switch((b>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[a>>2]+4785|0]){break a}}Sm(a);return}v[a+4>>2]=b|536870912}function gW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);b=v[b+48>>2];c=HV(b,c);b=v[b+152>>2]+B(c,12)|0;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c}function t1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);b=v[b+4>>2];c=HV(b,c);b=v[b+152>>2]+B(c,12)|0;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c}function w9(a){a=a|0;var b=0;v[a+16>>2]=1;v[a+24>>2]=151512;b=v[a+12>>2];v[a+12>>2]=b?b:1;b=v[a+4>>2];a=v[a>>2];if(a){Ba[a|0](b)|0;return 0}if(b){Ba[v[v[b>>2]+8>>2]](b)}return 0}function r5(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+80>>2];z[b>>2]=z[a+428>>2];z[b+4>>2]=z[a+432>>2];z[b+8>>2]=z[a+436>>2];z[c>>2]=z[a+440>>2];z[c+4>>2]=z[a+444>>2];z[c+8>>2]=z[a+448>>2]}function m0(a){a=a|0;var b=0,c=0;v[a>>2]=143464;b=a-4|0;v[b>>2]=143440;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}return b|0}function kaa(a){var b=0,c=0;b=v[37373];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>Ca()<<16>>>0){if(!(ua(a|0)|0)){break a}}v[37373]=a;return b}v[37699]=48;return-1}function g0(a){a=a|0;var b=0,c=0;v[a>>2]=143384;b=a-4|0;v[b>>2]=143360;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}return b|0}function a0(a){a=a|0;var b=0,c=0;v[a>>2]=143304;b=a-4|0;v[b>>2]=143280;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}return b|0}function Ze(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0);e=laa(16);f=z[a>>2];g=z[b>>2];h=z[c>>2];z[e+12>>2]=z[d>>2];z[e+8>>2]=h;z[e+4>>2]=g;z[e>>2]=f;return e|0}function Z$(a){a=a|0;var b=0,c=0;v[a>>2]=143208;b=a-4|0;v[b>>2]=143184;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}return b|0}function Yd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=xa-16|0;xa=f;v[f+12>>2]=b;v[f+8>>2]=c;v[f+4>>2]=d;v[f>>2]=e;a=Ba[a|0](f+12|0,f+8|0,f+4|0,f)|0;xa=f+16|0;return a|0}function xD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=v[a+20>>2];a=PD(v[e+12>>2],v[e+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2],b,v[a+12>>2],v[a+16>>2]);xa=d+16|0;return a|0}function xB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;c=v[a>>2];a=c+x[a+4>>1]|0;if(a>>>0>c>>>0){while(1){uB((c<<5)+b|0,d,e,f);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function VH(a,b){var c=0;c=w[a+21|0];if(c&8){if(b){b=v[v[v[a>>2]+40>>2]+2168>>2];c=xa-16|0;xa=c;v[c+12>>2]=a;Og(b+68|0,c+12|0);xa=c+16|0;c=w[a+21|0]}t[a+21|0]=c&247}t[a+22|0]=0}function RJ(a,b,c){var d=0,e=0;d=v[a>>2];if(d){e=1;a=v[d+32>>2];a:{if(!a){break a}while(1){if(v[a+28>>2]==(b|0)){e=a;break a}a=v[a>>2];if(a){continue}break}}JP(v[d+40>>2],e,c)}}function yH(a,b){v[a+12>>2]=0;v[a+16>>2]=0;v[a>>2]=b;v[a+20>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;t[a+44|0]=0;v[a+8>>2]=a;v[a+4>>2]=a;return a}function v8(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=148496;b=a-12|0;v[b>>2]=148260;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function s7(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=146692;b=a-12|0;v[b>>2]=146468;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function S8(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=149084;b=a-12|0;v[b>>2]=148880;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function Qj(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=x[a+4>>1];e=f-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,(d<<2)+((f|0)==1?a:v[a>>2])|0,c<<2)}return c|0}function G7(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=147240;b=a-12|0;v[b>>2]=147056;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function A6(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=145824;b=a-12|0;v[b>>2]=145556;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function $7(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=147844;b=a-12|0;v[b>>2]=147632;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function wB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;f=v[a>>2];a=f+x[a+4>>1]|0;if(a>>>0>f>>>0){while(1){rB((f<<5)+b|0,c,e);f=f+1|0;if((a|0)!=(f|0)){continue}break}}}function vB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;c=v[a>>2];a=c+x[a+4>>1]|0;if(a>>>0>c>>>0){while(1){mB((c<<5)+b|0,d,e);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function kA(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;dA(d);hA(d);c=c+1|0;if((c|0)!=(b|0)){continue}break}}a=((b<<5)+a|0)-32|0;dA(a);hA(a)}function f5(a,b){a=a|0;b=b|0;b=v[b+80>>2];z[a>>2]=z[b+104>>2];z[a+4>>2]=z[b+108>>2];z[a+8>>2]=z[b+112>>2];z[a+12>>2]=z[b+116>>2];z[a+16>>2]=z[b+120>>2];z[a+20>>2]=z[b+124>>2]}function n0(a){a=a|0;var b=0,c=0;v[a>>2]=143464;b=a-4|0;v[b>>2]=143440;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}iaa(b)}function m8(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=v[a+80>>2];u[c+128>>1]=x[c+128>>1]|b;break a}c=v[a+80>>2];u[c+128>>1]=x[c+128>>1]&(b^-1)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function k7(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=v[a+80>>2];u[c+100>>1]=x[c+100>>1]|b;break a}c=v[a+80>>2];u[c+100>>1]=x[c+100>>1]&(b^-1)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function h0(a){a=a|0;var b=0,c=0;v[a>>2]=143384;b=a-4|0;v[b>>2]=143360;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}iaa(b)}function fU(a,b){var c=0;c=xa-16|0;xa=c;v[c+8>>2]=b;b=Wn(a+144|0,c+8|0,c+15|0);if(w[c+15|0]){a=v[b+4>>2]+1|0}else{a=v[c+8>>2];v[b+4>>2]=0;v[b>>2]=a;a=1}v[b+4>>2]=a;xa=c+16|0}function b0(a){a=a|0;var b=0,c=0;v[a>>2]=143304;b=a-4|0;v[b>>2]=143280;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}iaa(b)}function _$(a){a=a|0;var b=0,c=0;v[a>>2]=143208;b=a-4|0;v[b>>2]=143184;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}iaa(b)}function TC(a,b){var c=0,d=0,e=0,f=C(0);c=xa-16|0;xa=c;a=v[a+588>>2];if(a){d=v[b+4>>2];e=v[b>>2];f=z[b+8>>2];v[c+12>>2]=0;z[c+8>>2]=f;v[c>>2]=e;v[c+4>>2]=d;UC(a,c)}xa=c+16|0}function O7(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=v[a+80>>2];u[c+116>>1]=x[c+116>>1]|b;break a}c=v[a+80>>2];u[c+116>>1]=x[c+116>>1]&(b^-1)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function K8(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=v[a+80>>2];u[c+112>>1]=x[c+112>>1]|b;break a}c=v[a+80>>2];u[c+112>>1]=x[c+112>>1]&(b^-1)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function If(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=xa-16|0;xa=e;f=v[a+4>>2];b=(f>>1)+b|0;a=v[a>>2];a=f&1?v[v[b>>2]+a>>2]:a;v[e+12>>2]=d;Ba[a|0](b,c,e+12|0);xa=e+16|0}function EU(a,b){a=a|0;b=b|0;var c=0;c=v[a+8>>2];if(c>>>0>b>>>0){return(v[a+4>>2]+B(b,72)|0)+8|0}b=b-c|0;if(b>>>0>2]){a=(v[a+16>>2]+(b<<6)|0)+8|0}else{a=0}return a|0}function ak(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=w[(v[a+316>>2]&16384?v[a+56>>2]+268|0:a+108|0)|0];t[d+8|0]=e;t[d|0]=c?b|e:(b^-1)&e;bk(a,d+8|0,d);xa=d+16|0}function aR(a){a=a|0;var b=0;a=v[a+28>>2];if(v[a+2472>>2]){while(1){jG(v[a+1e3>>2],v[v[(v[a+2468>>2]+(b<<3)|0)+4>>2]+60>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function Bd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=xa-16|0;xa=f;v[f+12>>2]=c;t[f+8|0]=w[e|0];a=Ba[v[v[a>>2]+96>>2]](a,b,f+12|0,1,d,f+8|0)|0;xa=f+16|0;return a|0}function Ad(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){c=v[c+v[b>>2]>>2]}a=Ba[c|0](b)|0;b=laa(8);c=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=c;return b|0}function tq(a,b){a=a|0;b=b|0;var c=0;if(!w[a+4801|0]){c=b;a=a+32|0;b=v[a+2312>>2];v[c>>2]=b;return(b?v[a+2308>>2]:0)|0}a9(v[37696],2,19228,721,67960,0);v[b>>2]=0;return 0}function sq(a,b){a=a|0;b=b|0;var c=0;if(!w[a+4801|0]){c=b;a=a+32|0;b=v[a+2300>>2];v[c>>2]=b;return(b?v[a+2296>>2]:0)|0}a9(v[37696],2,19228,704,68050,0);v[b>>2]=0;return 0}function mH(a){a:{if(w[a+149|0]&16|((w[v[a+44>>2]+44|0]&3)==3|y[a+152>>2]>4294967293)){break a}a=v[a+32>>2];if(!a){break a}while(1){ZR(a);a=v[a>>2];if(a){continue}break}}}function W6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=(x[c>>1]|x[b>>1])^-1;u[a+2>>1]=(x[c+2>>1]|x[b+2>>1])^-1;u[a+4>>1]=(x[c+4>>1]|x[b+4>>1])^-1;u[a+6>>1]=(x[c+6>>1]|x[b+6>>1])^-1}function U0(a){a=a|0;var b=0,c=0;v[a+8>>2]=144172;v[a>>2]=144076;z$(a+124|0);b=v[a+108>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+108>>2]=0;return L0(a)|0}function L$(a){a=a|0;var b=0;v[a+4>>2]=143464;v[a>>2]=143440;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[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 HU(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0);f=z[a+44>>2];g=z[a+48>>2];g=f>g?f:g;f=z[a+40>>2];JU(c,g,C(f+f),z[b+276>>2],z[b+288>>2],b+260|0,d,e)}function Fc(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=C(f);g=g|0;var h=0;h=xa-16|0;xa=h;a=v[a>>2];u[h+8>>1]=x[g>>1];a=Ba[a|0](b,c,d,e,f,h+8|0)|0;xa=h+16|0;return a|0}function qf(a,b,c){a=a|0;b=b|0;c=c|0;c=xa-16|0;xa=c;b=Ba[v[v[b>>2]+28>>2]](b)|0;Ba[v[v[b>>2]+96>>2]](b,c+12|0,1,0)|0;b=a;a=v[c+12>>2];Ba[v[v[a>>2]+96>>2]](b,a);xa=c+16|0}function RP(a,b){a=v[a+976>>2];z[a+1128>>2]=z[b>>2];z[a+1132>>2]=z[b+4>>2];z[a+1136>>2]=z[b+8>>2];z[a+1140>>2]=z[b+12>>2];z[a+1144>>2]=z[b+16>>2];z[a+1148>>2]=z[b+20>>2]}function J$(a){a=a|0;var b=0;v[a+4>>2]=143384;v[a>>2]=143360;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[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 I$(a){a=a|0;var b=0;v[a+4>>2]=143304;v[a>>2]=143280;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[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 H$(a){a=a|0;var b=0;v[a+4>>2]=143208;v[a>>2]=143184;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[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 kX(a,b,c){var d=0;d=xa-16|0;xa=d;z[d+12>>2]=a;if(b){b=(p(a),j(2));v[d+12>>2]=b<<24|b<<8&16711680|(b>>>8&65280|b>>>24)}Ba[v[v[c>>2]>>2]](c,d+12|0,4)|0;xa=d+16|0}function _B(a,b){a=a|0;b=b|0;var c=0;if(!(!w[a+48|0]|!v[a+40>>2])){while(1){Ba[v[v[b>>2]+8>>2]](b,v[v[a+44>>2]+(c<<2)>>2]);c=c+1|0;if(c>>>0>2]){continue}break}}}function P5(a,b,c,d,e){var f=C(0);f=z[b+252>>2]>C(0)?C(0):z[b+248>>2]>C(0)?C(0):z[b+256>>2];d=A9(C(F(C(G(d,C(-1))),C(1))));Ba[v[v[a>>2]+24>>2]](a,c,e,C(e-f)>2];if(c){d=v[a+24>>2];a=0;while(1){if(v[(a<<2)+d>>2]==(b|0)){return a}a=a+1|0;if((c|0)!=(a|0)){continue}break}}return-2147483648}function Uq(a,b){a=a|0;b=b|0;a:{if(!w[(a+16|0)+4785|0]){a=v[v[a+1012>>2]+272>>2];a=Ba[v[v[a>>2]+24>>2]](a,b)|0;break a}a9(v[37696],2,11860,1193,68328,0);a=0}return a|0}function Zo(a,b){var c=0;a=v[((v[a+4>>2]>>>22&60)+89188|0)+12>>2]+a|0;a=v[((w[a+9|0]<<2)+149664|0)+40>>2]+a|0;c=x[a+24>>1];v[b>>2]=(c|0)==1?a+20|0:v[a+20>>2];return c}function Cq(a){a=a|0;var b=0,c=0;v[a+6076>>2]=v[a+6076>>2]+1;a:{if(!w[a+4801|0]){a=SP(a+32|0);break a}b=a+5576|0;c=v[b>>2];v[b>>2]=c+1;a=c+v[a+2320>>2]|0}return a&255}function x8(a){a=a|0;var b=0,c=0;v[a+12>>2]=148496;v[a>>2]=148260;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function wd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=v[a+4>>2];b=(e>>1)+b|0;a=v[a>>2];a=e&1?v[v[b>>2]+a>>2]:a;t[d+8|0]=w[c|0];Ba[a|0](b,d+8|0);xa=d+16|0}function u7(a){a=a|0;var b=0,c=0;v[a+12>>2]=146692;v[a>>2]=146468;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function sD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=v[a+20>>2];a=RD(v[e+12>>2],v[e+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2],b,v[a+16>>2]);xa=d+16|0;return a|0}function qe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;Ba[v[a>>2]](d,b,c);a=laa(12);z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];xa=d+16|0;return a|0}function pf(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;a=Ba[v[v[a>>2]+28>>2]](a)|0;Ba[v[v[a>>2]+96>>2]](a,c+12|0,1,0)|0;a=v[c+12>>2];Ba[v[v[a>>2]+92>>2]](a,b);xa=c+16|0}function j0(a){a=a|0;var b=0;v[a+4>>2]=143464;v[a>>2]=143440;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}iaa(a)}function d0(a){a=a|0;var b=0;v[a+4>>2]=143384;v[a>>2]=143360;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}iaa(a)}function b8(a){a=a|0;var b=0,c=0;v[a+12>>2]=147844;v[a>>2]=147632;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function XH(a){var b=0,c=0;b=v[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)==v[a>>2]|b>>>0>2])){v[a+4>>2]=c;v[a>>2]=b;WH(a)}}function W$(a){a=a|0;var b=0;v[a+4>>2]=143208;v[a>>2]=143184;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}iaa(a)}function U8(a){a=a|0;var b=0,c=0;v[a+12>>2]=149084;v[a>>2]=148880;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function S5(a){a=a|0;var b=0,c=0;v[a+12>>2]=145824;v[a>>2]=145556;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function O5(a,b,c,d,e,f){var g=0,h=0,i=0,j=C(0),k=C(0),l=0;h=a,i=c,j=C(-f),k=f,l=C(D(C(B9(d,C(e+C(1)))*C(4))))>C(f-b),g=v[v[a>>2]+16>>2],Ba[g](h|0,i|0,C(j),C(k),l|0)}function MU(a,b){var c=0,d=0;c=x[a+4>>1];if(c){d=(c|0)==1?a:v[a>>2];a=0;while(1){if(v[(a<<2)+d>>2]==(b|0)){return a}a=a+1|0;if((c|0)!=(a|0)){continue}break}}return-1}function C7(a){a=a|0;var b=0,c=0;v[a+12>>2]=147240;v[a>>2]=147056;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function $I(a){a=a|0;var b=0,c=0;v[a>>2]=131184;b=a+4|0;if(v[a+12>>2]!=-1){c=v[v[a+4>>2]+40>>2];ZO(c,b);iJ(v[c+2168>>2],a)}VE(v[a+4>>2],b);VE(v[a+8>>2],b);return a|0}function $$(a){a=a|0;var b=0;v[a+4>>2]=143304;v[a>>2]=143280;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}iaa(a)}function s1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);b=v[v[b+4>>2]+152>>2]+B(c,12)|0;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c}function R_(a){a=a|0;var b=0,c=0;v[a+8>>2]=142996;v[a>>2]=142892;if(t[a+6|0]&1){b=v[a+60>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+60>>2]=0}return a|0}function RU(a){v[a+8>>2]=0;v[a+12>>2]=0;t[a+32|0]=1;v[a+4>>2]=-2147483648;v[a>>2]=140592;v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a>>2]=140616;return a}function Qb(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);var f=0;f=xa-16|0;xa=f;v[f+12>>2]=0;z[f+8>>2]=e;z[f+4>>2]=d;z[f>>2]=c;Ba[v[v[a>>2]+180>>2]](a,b,f);xa=f+16|0}function QI(a){a=a|0;var b=0,c=0,d=0;b=v[a+32>>2];if(b){while(1){d=v[v[a+28>>2]+(c<<2)>>2];if(w[d+60|0]){dI(d);b=v[a+32>>2]}c=c+1|0;if(b>>>0>c>>>0){continue}break}}}function G6(a){a=a|0;var b=0,c=0;v[a>>2]=145964;b=v[a+4>>2];if(v[b+16>>2]==1){v[b+16>>2]=2}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Gf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=v[a+4>>2];b=(e>>1)+b|0;a=v[a>>2];a=e&1?v[v[b>>2]+a>>2]:a;v[d+12>>2]=c;Ba[a|0](b,d+12|0);xa=d+16|0}function xn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[37389];a=v[e+676>>2]-d|0;a=(a|0)>0?a:0;a=a>>>0>>0?a:c;if(a){H9(b,v[e+644>>2]+(d<<2)|0,a<<2)}return a|0}function xg(a,b,c){a=a|0;b=b|0;c=c|0;z[b>>2]=z[a+92>>2];z[b+4>>2]=z[a+96>>2];z[b+8>>2]=z[a+100>>2];z[c>>2]=z[a+104>>2];z[c+4>>2]=z[a+108>>2];z[c+8>>2]=z[a+112>>2]}function Yc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=xa-16|0;xa=e;v[e+8>>2]=b;v[e+4>>2]=c;v[e>>2]=d;a=Ba[a|0](e+8|0,e+4|0,e)|0;$(v[e+8>>2]);xa=e+16|0;return a|0}function X6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[b>>1]^x[c>>1]^-1;u[a+2>>1]=x[b+2>>1]^x[c+2>>1]^-1;u[a+4>>1]=x[b+4>>1]^x[c+4>>1]^-1;u[a+6>>1]=x[b+6>>1]^x[c+6>>1]^-1}function V6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[c>>1]&x[b>>1]^-1;u[a+2>>1]=x[c+2>>1]&x[b+2>>1]^-1;u[a+4>>1]=x[c+4>>1]&x[b+4>>1]^-1;u[a+6>>1]=x[c+6>>1]&x[b+6>>1]^-1}function Tn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=v[37389];e=v[a+164>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+132>>2]+(d<<2)|0,c<<2)}return c|0}function Dh(a,b){a=a|0;b=b|0;var c=0;c=v[a+24>>2];if(c){a=v[c>>2];a=Ba[v[v[a>>2]+28>>2]](a)|0;I9(v[b>>2],0,(B(a,(a<<2)+16|0)+B(v[c+16>>2],B(a,24)+240|0)|0)+76|0)}}function taa(a,b,c,d){var e=0,f=0;e=v[a+4>>2];f=v[a>>2];a=0;a:{if(!c){break a}a=e>>8;if(!(e&1)){break a}a=v[a+v[c>>2]>>2]}Ba[v[v[f>>2]+28>>2]](f,b,a+c|0,e&2?d:2)}function Nn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=v[37389];e=v[a+124>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+92>>2]+(d<<2)|0,c<<2)}return c|0}function MR(a){var b=0,c=0;b=v[a+56>>2];if(b){c=v[v[v[v[a+4>>2]+40>>2]+976>>2]+1024>>2];t[b+42|0]=0;v[b+32>>2]=0;v[b+36>>2]=0;Ba[v[v[c>>2]+40>>2]](c,v[a+56>>2])}}function Ch(a){a=a|0;var b=0;a=v[a+24>>2];if(a){b=v[a>>2];b=Ba[v[v[b>>2]+28>>2]](b)|0;a=(B((b<<2)+16|0,b)+B(v[a+16>>2],B(b,24)+240|0)|0)+76|0}else{a=0}return a|0}function qP(a){var b=0;a=v[a>>2];if(a){VE(v[a>>2],a);VE(v[a+4>>2],a);b=v[a+4>>2];vG(v[b+160>>2],b);v[v[a+24>>2]>>2]=0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}}function hQ(a){a=a|0;var b=0;if(v[a+548>>2]){while(1){gH(v[((b<<2)+a|0)+36>>2],v[a+28>>2],z[a+32>>2],v[a+552>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function XP(a){var b=0;a:{switch(w[a+20|0]){case 0:return HR(a-4|0,0);case 1:return qS(a-4|0);case 4:return MH(a);case 5:b=lF(a);break;default:break a}}return b}function Qn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=v[37389];e=v[a+84>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+52>>2]+(d<<2)|0,c<<2)}return c|0}function Kn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=v[37389];e=v[a+44>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+12>>2]+(d<<2)|0,c<<2)}return c|0}function Ho(a,b,c){var d=0;a=a+16|0;a=v[((w[a+9|0]<<2)+149664|0)+40>>2]+a|0;d=x[a+24>>1];v[b>>2]=(d|0)==1?a+20|0:v[a+20>>2];if(c){t[c|0]=v[a+36>>2]!=-1}return d}function Ce(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-16|0;xa=e;z[e+12>>2]=b;z[e+8>>2]=c;z[e+4>>2]=d;a=Ba[a|0](e+12|0,e+8|0,e+4|0)|0;xa=e+16|0;return a|0}function wm(a,b){a=a|0;b=C(b);var c=0,d=0;c=xa-16|0;xa=c;if(bC(1)){d=v[37696];A[c>>3]=b;a9(d,4,10496,143,77085,c)}z[a+40>>2]=b;Hn(v[37393],a);xa=c+16|0}function n_(a){a=a|0;var b=0,c=0,d=0;b=w[a+54|0];d=(v[a+56>>2]+B(w[a+55|0],20)|0)+B(b,12)|0;a=u[a+52>>1];c=a&32767;return((d+(c<<1)|0)+B(b,3)|0)+(c<<2&a>>31)|0}function fj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;bj(a,0,b,c);a=v[a+320>>2];c=Ba[v[v[a>>2]+100>>2]](a)|0;a=1;cj(c,z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?a:z[b+8>>2]!=C(0),d)}function aj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;bj(a,b,0,c);a=v[a+320>>2];c=Ba[v[v[a>>2]+100>>2]](a)|0;a=1;cj(c,z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?a:z[b+8>>2]!=C(0),d)}function SE(a){a=a|0;var b=0;v[a+28>>2]=0;v[a>>2]=130400;b=v[a+20>>2];if(!(!b|(a+4|0)==(b|0))){aP(v[a+40>>2],b,v[a+24>>2])}v[a+20>>2]=0;v[a+24>>2]=0;return a|0}function xj(a,b){a=a|0;b=b|0;a=1;a:{if(!S9(16235,b)){break a}if(!S9(1584,b)){break a}if(!S9(4639,b)){break a}if(!S9(4610,b)){break a}a=!S9(b,21828)}return a|0}function oA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=1;if(b>>>0>1){while(1){fA(((d<<5)+a|0)-32|0,c);d=d+1|0;if((d|0)!=(b|0)){continue}break}}fA(((b<<5)+a|0)-32|0,c)}function lA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=1;if(b>>>0>1){while(1){eA(((d<<5)+a|0)-32|0,c);d=d+1|0;if((d|0)!=(b|0)){continue}break}}eA(((b<<5)+a|0)-32|0,c)}function PO(a,b,c,d,e){var f=0;f=c>>>0>64?c:64;if(f>>>0>(v[a+32>>2]&2147483647)>>>0){QO(a+24|0,f)}RO(v[a+2388>>2],b);RO(v[a+2392>>2],c);RO(v[a+2384>>2],d+e|0)}function Oo(a,b){a=a|0;b=b|0;a=1;a:{if(!S9(24470,b)){break a}if(!S9(1584,b)){break a}if(!S9(4639,b)){break a}if(!S9(4610,b)){break a}a=!S9(b,21828)}return a|0}function EO(a){a=a|0;var b=0,c=0;if(v[a+32>>2]){while(1){c=v[v[a+28>>2]+(b<<2)>>2];qO(c,z[a+36>>2]);v[c+92>>2]=0;b=b+1|0;if(b>>>0>2]){continue}break}}}function mr(a,b){a=a|0;b=b|0;if(v[a+4656>>2]!=1){a9(v[37696],8,11709,2048,77254,0);return 0}if(v9(v[a+6064>>2],0-b|0)){v[a+4656>>2]=2;a=1}else{a=0}return a|0}function Hj(a,b){a=a|0;b=b|0;var c=0;b=v[((x[b+4>>1]<<2)+86240|0)+72>>2]+b|0;c=v[b+4>>2];t[a|0]=w[(c&1?v[b+8>>2]:(b+v[((c>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]}function uh(a){var b=0;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;a:{if((v[a+4>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a>>2];if(!a){break a}b=a-16|0}return b}function rP(a,b){var c=0;c=xa-16|0;xa=c;v[c+8>>2]=b;a=qh(a+1252|0,c+8|0,c+15|0);if(!w[c+15|0]){v[a>>2]=v[c+8>>2]}a=v[c+8>>2];t[a+68|0]=w[a+68|0]|4;xa=c+16|0}function oP(a,b){var c=0,d=0,e=0;c=xa-16|0;xa=c;d=v[b>>2];if(d){d=rG(d);e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}v[c+12>>2]=b;Og(a+1200|0,c+12|0);xa=c+16|0}function lR(a){a=a|0;var b=0,c=0;c=v[a+20>>2];a=v[a+28>>2];b=v[v[a+976>>2]+1024>>2];Ba[v[v[b>>2]+16>>2]](b);sI(v[a+980>>2],c,a+4e3|0,v[v[a+976>>2]+1156>>2])}function Xd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=laa(16);a=v[a>>2];b=v[b>>2];c=v[c>>2];v[e+12>>2]=v[d>>2];v[e+8>>2]=c;v[e+4>>2]=b;v[e>>2]=a;return e|0}function Ut(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=w[(v[a+36>>2]&64?v[a+40>>2]+52|0:a+112|0)|0];t[d+8|0]=c?e|b:(b^-1)&e;Tt(a,d+8|0);xa=d+16|0}function Hq(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){a=v[a+1008>>2];v[a+1020>>2]=b;a=v[a+1024>>2];Ba[v[v[a>>2]+88>>2]](a,b);return}a9(v[37696],2,19228,516,68605,0)}function I0(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=C(f);g=g|0;h=h|0;i=C(i);if(!w[149580]){t[149580]=1;a9(v[37696],8,19496,175,65160,0)}return 0}function HE(a,b,c){var d=0;d=c>>>1|0;if((b|0)==-1){a=v[B(c&1,36)+a>>2];return Ba[v[v[a>>2]+36>>2]](a,d)|0}a=v[a+72>>2];return Ba[v[v[a>>2]+36>>2]](a,d,b)|0}function zp(a,b,c){a=a|0;b=b|0;c=c|0;b=w[a+160|0];if(!b){t[a+160|0]=1;v[a+76>>2]=1;v[a+156>>2]=v[a+72>>2];v[a+88>>2]=v[a+80>>2];v[a+72>>2]=a+92}return!b|0}function wG(a){var b=0,c=0;if(v[a+28>>2]){c=v[a+12>>2];b=v[a>>2];a=v[a+16>>2];Ba[v[v[b>>2]+12>>2]](b,a)|0;t[b+76|0]=a;v[b+32>>2]=c;Ba[v[v[b>>2]+8>>2]](b)}}function rQ(a){a=a|0;var b=0;if(v[a+32>>2]){while(1){fH(v[v[v[a+28>>2]+(b<<2)>>2]>>2],v[a+36>>2],v[a+40>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function jX(a,b,c){var d=0;d=xa-16|0;xa=d;v[d+12>>2]=a;if(b){v[d+12>>2]=a<<8&16711680|a<<24|(a>>>8&65280|a>>>24)}Ba[v[v[c>>2]>>2]](c,d+12|0,4)|0;xa=d+16|0}function dX(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=C(f);g=g|0;h=h|0;i=i|0;if(!w[149580]){t[149580]=1;a9(v[37696],8,19496,175,65160,0)}return 0}function Jj(a){a=a|0;var b=0;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;b=v[a+4>>2];return w[(b&2?v[a+8>>2]+1|0:(a+v[((b>>>22&60)+89188|0)+12>>2]|0)+10|0)|0]}function E9(a){var b=0,c=0;b=a*a;c=b*a;return C(c*(b*b)*(b*2718311493989822e-21+-.00019839334836096632)+(c*(b*.008333329385889463+-.16666666641626524)+a))}function Dp(a,b,c){a=a|0;b=b|0;c=c|0;b=w[a+128|0];if(!b){t[a+128|0]=1;v[a+60>>2]=1;v[a+124>>2]=v[a+56>>2];v[a+72>>2]=v[a+64>>2];v[a+56>>2]=a+76}return!b|0}function yq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+5928>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+5896>>2]+(d<<2)|0,c<<2)}return c|0}function wq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+5980>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+5948>>2]+(d<<2)|0,c<<2)}return c|0}function vt(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if(!d){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;c=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=c}return!d|0}function oq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+6020>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+5988>>2]+(d<<2)|0,c<<2)}return c|0}function fc(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=laa(16);b=b+c|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];return a|0}function jU(a,b){var c=0,d=0;c=v[a+4>>2];if((c|0)<0){d=v[a>>2];c=d+(c<<2)|0;while(1){v[c>>2]=v[b>>2];c=c+4|0;if(d>>>0>c>>>0){continue}break}}v[a+4>>2]=0}function UH(a){var b=0,c=0;c=v[v[v[a>>2]+40>>2]+2168>>2];b=xa-16|0;xa=b;v[b+8>>2]=a;a=qh(c+68|0,b+8|0,b+15|0);if(!w[b+15|0]){v[a>>2]=v[b+8>>2]}xa=b+16|0}function Be(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0);d=laa(16);e=z[a>>2];f=z[b>>2];z[d+12>>2]=z[c>>2];z[d+8>>2]=f;z[d+4>>2]=e;v[d>>2]=3;return d|0}function xV(a){a=a|0;var b=0,c=0;v[a>>2]=140756;z$(a+112|0);b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+96>>2]=0;return sV(a)|0}function Yi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+356>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+352>>2]+(d<<2)|0,c<<2)}return c|0}function Wh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+124>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+120>>2]+(d<<2)|0,c<<2)}return c|0}function MB(a,b){var c=0,d=0;c=xa-16|0;xa=c;d=v[b+4>>2];if(d){KB(a,1);v[c+8>>2]=0;v[c+12>>2]=0;v[a+4>>2]=d;d=c+8|0;uY(b,a+12|0,d,a);LB(a,b,d)}xa=c+16|0}function Bp(a,b,c){a=a|0;b=b|0;c=c|0;b=w[a+64|0];if(!b){t[a+64|0]=1;v[a+28>>2]=1;v[a+60>>2]=v[a+24>>2];v[a+40>>2]=v[a+32>>2];v[a+24>>2]=a+44}return!b|0}function ti(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+100>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+96>>2]+(d<<2)|0,c<<2)}return c|0}function pW(a,b,c){a=a|0;b=b|0;c=c|0;b=v[b+4>>2]+(1-c<<4)|0;c=v[b+60>>2];v[a+8>>2]=v[b+56>>2];v[a+12>>2]=c;c=v[b+52>>2];v[a>>2]=v[b+48>>2];v[a+4>>2]=c}function lQ(a){a=a|0;var b=0;if(v[a+1060>>2]){while(1){cS(v[((b<<2)+a|0)+36>>2],v[a+28>>2],v[a+32>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function Y6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[c+4>>1]&x[b>>1];u[a+2>>1]=x[c+6>>1]&x[b+2>>1];u[a+4>>1]=x[c>>1]&x[b+4>>1];u[a+6>>1]=x[c+2>>1]&x[b+6>>1]}function U6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[c>>1]^x[b>>1];u[a+2>>1]=x[c+2>>1]^x[b+2>>1];u[a+4>>1]=x[c+4>>1]^x[b+4>>1];u[a+6>>1]=x[c+6>>1]^x[b+6>>1]}function T6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[c>>1]|x[b>>1];u[a+2>>1]=x[c+2>>1]|x[b+2>>1];u[a+4>>1]=x[c+4>>1]|x[b+4>>1];u[a+6>>1]=x[c+6>>1]|x[b+6>>1]}function S6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[c>>1]&x[b>>1];u[a+2>>1]=x[c+2>>1]&x[b+2>>1];u[a+4>>1]=x[c+4>>1]&x[b+4>>1];u[a+6>>1]=x[c+6>>1]&x[b+6>>1]}function Jl(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(w[a+14|0]&4){a=v[a+16>>2];z[b>>2]=z[a+148>>2];a=a+152|0;break a}z[b>>2]=z[a+80>>2];a=a+84|0}z[c>>2]=z[a>>2]}function Eaa(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(naa(a,v[b+8>>2],f)){xaa(b,c,d,e);return}a=v[a+8>>2];Ba[v[v[a>>2]+20>>2]](a,b,c,d,e,f)}function Dd(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);var f=0;f=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){f=v[f+v[b>>2]>>2]}return Ba[f|0](b,c,d,e)|0}function Bl(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(w[a+14|0]&2){a=v[a+16>>2];z[b>>2]=z[a+140>>2];a=a+144|0;break a}z[b>>2]=z[a+88>>2];a=a+96|0}z[c>>2]=z[a>>2]}function sC(a,b,c){a=a|0;b=b|0;c=c|0;if(c){t[a+7648|0]=1;v[a+32>>2]=0;v[a+16>>2]=v[a+7664>>2];b=a+7672|0;c=v[b+4>>2];v[a+24>>2]=v[b>>2];v[a+28>>2]=c}}function ge(a,b){a=a|0;b=b|0;var c=0;c=xa-32|0;xa=c;z[c+16>>2]=z[b>>2];z[c+20>>2]=z[b+4>>2];z[c+24>>2]=z[b+8>>2];Ba[v[v[a>>2]+108>>2]](a,c);xa=c+32|0}function fX(a,b){var c=0;c=xa-16|0;xa=c;Ba[v[v[b>>2]>>2]](b,c+14|0,2)|0;if(a){a=w[c+15|0];t[c+15|0]=w[c+14|0];t[c+14|0]=a}xa=c+16|0;return x[c+14>>1]}function c5(a,b,c){a=a|0;b=b|0;c=c|0;b=v[b+80>>2]+(c<<4)|0;c=v[b+308>>2];v[a>>2]=v[b+304>>2];v[a+4>>2]=c;z[a+8>>2]=z[b+312>>2];v[a+12>>2]=v[b+316>>2]}function aU(a,b){a=a|0;b=b|0;if(y[a+72>>2]<=b>>>0){a9(v[37696],4,8633,126,1883,0);return 0}a=v[v[a+68>>2]+(b<<2)>>2];return Ba[v[v[a>>2]+16>>2]](a)|0}function Yg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+36>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+40>>2]+(d<<2)|0,c<<2)}return c|0}function wD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=xa-16|0;xa=b;d=v[a+12>>2];a=LD(v[d+12>>2],v[d+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2]);xa=b+16|0;return a|0}function vD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=xa-16|0;xa=b;d=v[a+12>>2];a=KD(v[d+12>>2],v[d+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2]);xa=b+16|0;return a|0}function uD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=xa-16|0;xa=b;d=v[a+12>>2];a=JD(v[d+12>>2],v[d+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2]);xa=b+16|0;return a|0}function tD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=xa-16|0;xa=b;d=v[a+12>>2];a=ID(v[d+12>>2],v[d+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2]);xa=b+16|0;return a|0}function pw(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);f=f|0;g=g|0;h=C(h);i=C(i);j=C(j);k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=C(p)}function jY(a,b,c){a=a|0;b=b|0;c=c|0;b=v[b+4>>2]+(c<<4)|0;c=v[b+60>>2];v[a+8>>2]=v[b+56>>2];v[a+12>>2]=c;c=v[b+52>>2];v[a>>2]=v[b+48>>2];v[a+4>>2]=c}function Zt(a){var b=0;v[a+196>>2]=v[a+196>>2]-1;if(v[a+196>>2]<0){v[a+20>>2]=0}b=v[a+16>>2]-1|0;v[a+16>>2]=b;if(!b){Ba[v[v[a+12>>2]+8>>2]](a+12|0)}}function Ml(a){a=a|0;var b=0;_n(v[37393],a,0,1);b=a+8|0;a:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a+8>>2];if(!a){break a}Lu(a,b)}su(b)}function tn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+8>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){H9(b,v[a+4>>2]+(d<<2)|0,c<<2)}return c|0}function Ag(a,b,c){a=a|0;b=b|0;c=c|0;if(w[a+20|0]&2){a=v[a+24>>2];z[b>>2]=z[a+8>>2];z[c>>2]=z[a+12>>2];return}z[b>>2]=z[a+76>>2];z[c>>2]=z[a+80>>2]}function oS(a){a=a|0;var b=0,c=0;v[a>>2]=139344;c=v[v[a+4>>2]+40>>2];b=a+4|0;ZO(c,b);iJ(v[c+2168>>2],a);VE(v[a+4>>2],b);VE(v[a+8>>2],b);return a|0}function iA(a,b,c){a=a|0;b=b|0;c=c|0;c=1;if(b>>>0>1){while(1){dA(((c<<5)+a|0)-32|0);c=c+1|0;if((c|0)!=(b|0)){continue}break}}dA(((b<<5)+a|0)-32|0)}function Uv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=((B(b,240)+(b<<6)|0)+((b<<2)+60&-64)|0)+272|0;v[c>>2]=a;v[d>>2]=B(b,528)+a;v[e>>2]=B(b,672)}function Et(a,b){a=a|0;b=b|0;b=v[b+36>>2]&8?v[b+40>>2]+28|0:b- -64|0;v[a>>2]=v[b>>2];v[a+4>>2]=v[b+4>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=v[b+12>>2]}function A7(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=xa+-64|0;xa=f;if(e&1){e=f+32|0;D5(e,f,b,c,d);Ba[v[v[a>>2]+8>>2]](a,e,f)}xa=f- -64|0}function $J(a,b){a=a|0;b=b|0;var c=0;c=v[b+24>>2]-1|0;v[b+24>>2]=c;if(!c){a=v[a+8>>2];if(a){Ba[v[v[a>>2]>>2]](a,b);return}Ba[v[v[b>>2]+28>>2]](b)}}function ku(a,b,c,d,e,f,g,h){b=GE(b,d+32|0,v[((x[e+4>>1]<<2)+86240|0)+72>>2]+e|0,f,v[a+16>>2],g,h);v[(c<<2)+(x[a+12>>1]==1?a+8|0:v[a+8>>2])>>2]=b}function dl(a,b){a=a|0;b=b|0;b=v[b+12>>2]&4?v[b+16>>2]+56|0:b+296|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2]}function Re(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=xa-16|0;xa=e;v[e+12>>2]=b;t[e+8|0]=w[d|0];a=Ba[a|0](e+12|0,c,e+8|0)|0;xa=e+16|0;return a|0}function PY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);return C(C(34028234663852886e22))}function PE(a,b){var c=0,d=0;a:{c=w[b|0];d=w[a+8|0];if((c|0)==(d|0)){break a}t[a+8|0]=c;a=v[a>>2];if(!a){break a}Ba[v[v[a>>2]+8>>2]](a,d,w[b|0])}}function AB(a,b,c){a=a|0;b=b|0;c=c|0;c=v[a>>2];a=c+x[a+4>>1]|0;if(a>>>0>c>>>0){while(1){sB((c<<5)+b|0);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function n8(a,b){a=a|0;b=b|0;if(v[a+80>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+80>>2],144)}Ba[v[v[b>>2]+16>>2]](b,v[a+16>>2])}function l7(a,b){a=a|0;b=b|0;if(v[a+80>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+80>>2],112)}Ba[v[v[b>>2]+16>>2]](b,v[a+16>>2])}function R7(a,b){a=a|0;b=b|0;if(v[a+80>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+80>>2],128)}Ba[v[v[b>>2]+16>>2]](b,v[a+16>>2])}function BH(a,b){var c=0;c=xa-16|0;xa=c;v[c+8>>2]=b;a=qh(a+296|0,c+8|0,c+15|0);if(!w[c+15|0]){v[a>>2]=v[c+8>>2]}t[b+68|0]=w[b+68|0]|1;xa=c+16|0}function A5(a,b){a=a|0;b=b|0;if(v[a+80>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+80>>2],480)}Ba[v[v[b>>2]+16>>2]](b,v[a+16>>2])}function w7(a,b){a=a|0;b=b|0;if(v[a+80>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+80>>2],96)}Ba[v[v[b>>2]+16>>2]](b,v[a+16>>2])}function bF(a,b){var c=0;t[a+274|0]=b;a=v[v[a+364>>2]>>2];if(a){b=v[a>>2];t[b+93|0]=1;c=v[v[a+4>>2]+1012>>2];Ba[v[v[c>>2]+64>>2]](c,b,a+48|0)}}function Es(a){a=a|0;var b=0;b=v[a+20>>2];a=v[v[a+28>>2]>>2];if(!w[a+76|0]){t[a+76|0]=1;v[a+72>>2]=v[a+72>>2]+1}if(b){Ba[v[v[b>>2]+20>>2]](b)}}function uO(a){var b=0;a:{a=v[a+36>>2];b=w[a+158|0];if(!b){break a}if(b&1){v[a+64>>2]=0}if(b&2){v[a+68>>2]=0}if(!(b&4)){break a}v[a+72>>2]=0}}function kH(a,b,c){if(c?1:b>C(0)){bG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);return}if(!(!qG(a)|v[a+160>>2])){cG(v[v[a+40>>2]+1e3>>2],v[a+144>>2])}}function kF(a,b,c,d,e,f){b=(b<<4)+a|0;v[b+120>>2]=f;z[b+116>>2]=e;z[b+112>>2]=d;z[b+108>>2]=c;t[a+273|0]=w[a+273|0]|32;a=v[a>>2];if(a){mF(a)}}function ee(a,b,c){a=a|0;b=b|0;c=c|0;c=xa-16|0;xa=c;Ba[v[v[b>>2]+96>>2]](b,c+12|0,1,0)|0;b=a;a=v[c+12>>2];Ba[v[v[a>>2]+96>>2]](b,a);xa=c+16|0}function YH(a,b){if(b){if((Taa(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}v[a+24>>2]=b;v[a>>2]=b;v[a+4>>2]=b-1;WH(a)}}function PL(a){a=a|0;a=v[a+28>>2];gM(a);Ba[v[v[a+288>>2]+32>>2]](a+288|0);Ba[v[v[a+336>>2]+32>>2]](a+336|0);Ba[v[v[a+384>>2]+32>>2]](a+384|0)}function D9(a){var b=0;a=a*a;b=a*a;return C(a*b*(a*2439044879627741e-20+-.001388676377460993)+(b*.04166662332373906+(a*-.499999997251031+1)))}function ZH(a,b){var c=0;c=v[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;v[a+4>>2]=c;v[a>>2]=c+1;WH(a);return v[a+4>>2]&b}function T3(a){a=a|0;var b=0,c=0,d=0;b=v[a+12>>2];c=v[b+72>>2];d=w[b+8|0];v[a+108>>2]=v[b+16>>2];v[a+120>>2]=d&2?0:c;v[a+124>>2]=d<<30>>31&c}function LE(a){var b=0;if(w[a+140|0]){KE(a);b=v[a>>2];if(b){Ba[v[v[b>>2]+16>>2]](b)}b=v[a+36>>2];if(b){Ba[v[v[b>>2]+16>>2]](b)}t[a+140|0]=0}}function Fp(a){a=a|0;v[a+5800>>2]=0;v[a+5784>>2]=126144;v[a>>2]=124876;v[a+5760>>2]=0;v[a+5744>>2]=126144;EE(a+5584|0);Gp(a+16|0);return a|0}function xt(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==1){v[b>>2]=v[(v[a+36>>2]&1?v[a+40>>2]- -64|0:c)>>2]}return(d|0)==1|0}function v6(a){a=a|0;var b=0,c=0;b=v[a+68>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+68>>2]=0;a=a-12|0;Ba[v[v[a>>2]+16>>2]](a)}function om(a){a=a|0;var b=0,c=0;b=a-12|0;c=v[a-4>>2];a:{if(t[a-6|0]&1){Pm(v[37389],b);break a}Ba[v[v[b>>2]+12>>2]](b)|0}_n(v[37393],b,c,2)}function ci(a,b){a=a|0;b=b|0;var c=0;a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;c=a+3920|0;v[c>>2]=v[c>>2]-1;a=a+3928|0;v[b>>2]=v[a>>2];v[a>>2]=b}function Sv(a,b){a=a|0;b=b|0;var c=0;c=w[a+92|0];if(c){if(w[a+76|0]!=(b|0)){v[a+28>>2]=a;v[a+40>>2]=v[a+80>>2]}t[a+92|0]=0}return(c|0)!=0|0}function Sk(a,b){a=a|0;b=b|0;var c=0;a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;c=a+3624|0;v[c>>2]=v[c>>2]-1;a=a+3632|0;v[b>>2]=v[a>>2];v[a>>2]=b}function vg(a,b){a=a|0;b=b|0;if(w[b+20|0]&4){u[a>>1]=x[v[b+24>>2]+16>>1]&(x[b+116>>1]|-1026);return}u[a>>1]=x[b+28>>1]&(x[b+116>>1]|-1026)}function lc(a,b){a=a|0;b=b|0;var c=0,d=0;c=xa-16|0;xa=c;d=v[b+4>>2];v[c+8>>2]=v[b>>2];v[c+12>>2]=d;a=Ba[a|0](c+8|0)|0;xa=c+16|0;return a|0}function cS(a,b,c){var d=0;d=v[a+8>>2];b=v[b+4>>2]+(d<<5)|0;YR(a,b);v[b+28>>2]=0;dV(v[c+4>>2]+B(d&2147483647,24)|0,v[a+28>>2]+68|0,b,C(1))}function Sb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){f=v[f+v[b>>2]>>2]}Ba[f|0](b,c,d,e)}function J3(a){a=a|0;var b=0,c=0;v[a>>2]=144804;b=v[a+4>>2];if(b){b=f3(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=0;return a|0}function rh(a){var b=0;a:{switch(x[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 de(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;Ba[v[v[a>>2]+96>>2]](a,c+12|0,1,0)|0;a=v[c+12>>2];Ba[v[v[a>>2]+92>>2]](a,b);xa=c+16|0}function X_(a,b){a=a|0;b=b|0;var c=0,d=0;c=v[a+44>>2];d=v[a+40>>2];Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+60>>2],B(c,d)<<2)}function ME(a,b){var c=0;a:{c=B(b,36)+a|0;b=v[c>>2];if(!b|v[c+28>>2]!=1){break a}if(!(Ba[v[v[b>>2]+72>>2]](b,0)|0)){break a}t[a+140|0]=1}}function zaa(a,b,c,d,e,f){var g=0,h=0;g=v[a+4>>2];h=g>>8;a=v[a>>2];if(g&1){h=v[v[d>>2]+h>>2]}Ba[v[v[a>>2]+20>>2]](a,b,c,d+h|0,g&2?e:2,f)}function xb(a,b,c){a=a|0;b=C(b);c=c|0;var d=0;d=v[v[a>>2]+168>>2];if(b=C(0)){Ba[d|0](a,~~b>>>0,c);return}Ba[d|0](a,0,c)}function wb(a,b,c){a=a|0;b=C(b);c=c|0;var d=0;d=v[v[a>>2]+164>>2];if(b=C(0)){Ba[d|0](a,~~b>>>0,c);return}Ba[d|0](a,0,c)}function rb(a,b,c){a=a|0;b=C(b);c=c|0;var d=0;d=v[v[a>>2]+140>>2];if(b=C(0)){Ba[d|0](a,~~b>>>0,c);return}Ba[d|0](a,0,c)}function Cf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;Ba[v[a>>2]](d+8|0,b,c);ca(v[d+8>>2]);a=v[d+8>>2];$(a|0);xa=d+16|0;return a|0}function dY(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=C(g);h=h|0;i=i|0;j=C(j);a9(v[37696],8,7068,525,77543,0);return 0}function cY(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=C(g);h=h|0;i=i|0;j=C(j);a9(v[37696],8,7068,510,77543,0);return 0}function cU(a){a=a|0;var b=0;if(v[a+72>>2]){while(1){b=v[v[a+68>>2]>>2];XT(a,Ba[v[v[b>>2]+16>>2]](b)|0);if(v[a+72>>2]){continue}break}}}function aw(a,b){a=a|0;b=b|0;var c=0,d=0;c=v[a+100>>2];d=x[c+4>>1];a=d<<5;return C(z[(((a+(a+(a+c|0)|0)|0)+(d<<4)|0)+(b<<2)|0)+128>>2])}function _v(a,b,c){a=a|0;b=b|0;c=c|0;v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}function Mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=xa-16|0;xa=e;a=v[a>>2];v[e+12>>2]=d;a=Ba[a|0](b,c,e+12|0)|0;xa=e+16|0;return a|0}function Bx(a,b,c){a=Cx(a,B(b,240),0);v[c>>2]=a;v[c+20>>2]=a+(b<<7);v[c+12>>2]=a+B(b,96);v[c+8>>2]=a+(b<<6);v[c+4>>2]=a+(b<<5);return a}function tW(a,b){a=a|0;b=b|0;var c=0;b=v[b+4>>2];c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c}function ck(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;t[c+8|0]=w[(v[a+316>>2]&16384?v[a+56>>2]+268|0:a+108|0)|0];bk(a,c+8|0,b);xa=c+16|0}function bp(a,b){a=a|0;b=b|0;a=1;a:{if(!S9(24438,b)){break a}if(!S9(4639,b)){break a}if(!S9(4610,b)){break a}a=!S9(b,21828)}return a|0}function fF(a,b,c){var d=0,e=C(0);z[a- -64>>2]=c;z[a+60>>2]=b;d=a,e=V9(C(c*C(.25))),z[d+352>>2]=e;d=a,e=V9(C(b*C(.25))),z[d+356>>2]=e}function Le(a,b,c){a=a|0;b=C(b);c=C(c);var d=0;d=xa-16|0;xa=d;z[d+12>>2]=b;z[d+8>>2]=c;a=Ba[a|0](d+12|0,d+8|0)|0;xa=d+16|0;return a|0}function Fg(a,b){var c=0;c=v[a+56>>2];if(v[a+8>>2]==(b|0)){Ba[v[v[c>>2]+12>>2]](c,0)}if(v[a+12>>2]==(b|0)){Ba[v[v[c>>2]+12>>2]](c,1)}}function Aaa(a,b,c,d,e){var f=0,g=0;f=v[a+4>>2];g=f>>8;a=v[a>>2];if(f&1){g=v[v[c>>2]+g>>2]}Ba[v[v[a>>2]+24>>2]](a,b,c+g|0,f&2?d:2,e)}function oR(a){a=a|0;var b=0,c=0;a=v[a+100>>2];b=v[a+976>>2]+1796|0;c=v[a+980>>2];v[b>>2]=(v[c+332>>2]+v[b>>2]|0)+v[c+344>>2];jP(a)}function dc(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=laa(12);b=b+c|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];return a|0}function dF(a,b,c){var d=0,e=C(0);z[a+76>>2]=c;z[a+68>>2]=b;d=a,e=V9(C(b*C(.25))),z[d+340>>2]=e;d=a,e=V9(C(c*C(.25))),z[d+344>>2]=e}function Y2(a,b){a=a|0;b=b|0;var c=0,d=0;c=xa-160|0;xa=c;d=d4(c+8|0,w[a+18|0]);a=f4(d,b,v[a+48>>2],1,0);e4(d);xa=c+160|0;return a|0}function t6(a){a=a|0;var b=0,c=0;b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0;Ba[v[v[a>>2]+16>>2]](a)}function hb(a,b,c,d){a=a|0;b=b|0;c=C(c);d=C(d);var e=0;e=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){e=v[e+v[b>>2]>>2]}Ba[e|0](b,c,d)}function eX(a,b,c,d,e){Ba[v[v[e>>2]>>2]](e,a,1)|0;Ba[v[v[e>>2]>>2]](e,b,1)|0;Ba[v[v[e>>2]>>2]](e,c,1)|0;Ba[v[v[e>>2]>>2]](e,d,1)|0}function TH(a,b,c,d,e){t[a+22|0]=0;t[a+21|0]=e;t[a+20|0]=d;v[a+16>>2]=-1;v[a+8>>2]=-1;v[a+12>>2]=-1;v[a+4>>2]=c;v[a>>2]=b;return a}function Pr(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){v[v[(a+32|0)+1004>>2]+108>>2]=b;return}v[a+5572>>2]=b;a=a+5580|0;v[a>>2]=v[a>>2]|128}function vb(a,b,c,d){a=a|0;b=b|0;c=C(c);d=d|0;var e=0;e=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){e=v[e+v[b>>2]>>2]}Ba[e|0](b,c,d)}function uU(a){var b=0;b=xa-16|0;xa=b;v[b+12>>2]=0;a=v[a+424>>2];Ba[v[v[a>>2]+96>>2]](a,b+12|0,1,0)|0;xa=b+16|0;return v[b+12>>2]}function tK(a,b){v[a+8>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+48>>2]=b;v[a+52>>2]=0;u[a+44>>1]=257;t[a+42|0]=0;v[a+36>>2]=0;return a}function jH(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(!w[a+150|0]){t[a+150|0]=1}t[v[a+44>>2]+173|0]=b>>>1}}function af(a,b,c,d){a=a|0;b=b|0;c=c|0;d=C(d);var e=0;e=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){e=v[e+v[b>>2]>>2]}Ba[e|0](b,c,d)}function WY(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=C(g);h=h|0;i=i|0;j=j|0;k=k|0;l=C(l);return C(C(1e10))} -function T$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;f=xa+-64|0;xa=f;CV(f,b+48|0,b+36|0,b,c,d);G$(f,1,a,e,1);xa=f- -64|0}function S0(a,b){a=a|0;b=b|0;if(v[a+144>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+148>>2],v[a+144>>2]<<4)}N0(a,b)}function Pp(a,b){a=a|0;b=C(b);if(!w[a+4801|0]){z[v[(a+32|0)+1004>>2]+84>>2]=-b;return}z[a+5560>>2]=b;a=a+5580|0;v[a>>2]=v[a>>2]|2}function Nr(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){v[v[(a+32|0)+1004>>2]+104>>2]=b;return}v[a+5568>>2]=b;a=a+5580|0;v[a>>2]=v[a>>2]|16}function yy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;j=j|0;return xy(a,b,c,d,e,h,i,2,j)|0}function wy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;j=j|0;return xy(a,b,c,d,e,h,i,1,j)|0}function saa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(naa(a,v[b+8>>2],0)){qaa(b,c,d);return}a=v[a+8>>2];Ba[v[v[a>>2]+28>>2]](a,b,c,d)}function mg(a){a=a|0;var b=0;a:{if((v[a+20>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a+16>>2];if(!a){break a}b=a-16|0}return b|0}function jG(a,b){var c=0,d=0;c=1<>>5<<2;if(c&v[d+v[a+152>>2]>>2]){EF(a+168|0,b);a=v[a+152>>2]+d|0;v[a>>2]=v[a>>2]&(c^-1)}}function gi(a){a=a|0;var b=0;a:{if((v[a+16>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a+12>>2];if(!a){break a}b=a-16|0}return b|0}function ec(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+b|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+12>>2]=z[c+12>>2]}function eb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){e=v[e+v[b>>2]>>2]}Ba[e|0](b,c,d)}function JB(a){var b=0,c=0;KB(a,0);b=v[a+52>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+52>>2]=0;nY(a+12|0);return a}function DQ(a){a=a|0;var b=0;if(v[a+32>>2]){while(1){eH(v[v[a+28>>2]+(b<<2)>>2],0);b=b+1|0;if(b>>>0>2]){continue}break}}}function tc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}return Ba[d|0](b,c)|0}function sY(a,b,c,d,e){var f=0;rY(a,b,c,d,e);f=v[a+24>>2];if(f){sY(f,b,c,d,e);sY(f+36|0,b,c,d,e)}v[c+4>>2]=v[c+4>>2]+v[a+32>>2]}function eY(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=C(f);g=g|0;h=h|0;i=C(i);a9(v[37696],8,7068,539,77543,0);return 0}function bH(a,b){var c=0;a:{if((y[a+152>>2]<4294967294|0)!=(b|0)){c=v[a+40>>2];if(b){SO(c,a);break a}UO(c,a);aH(a)}return}$G(a)}function Zg(a){a=a|0;var b=0;a:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a+8>>2];if(!a){break a}b=a-16|0}return b|0}function nm(a){a=a|0;var b=0;b=v[a+8>>2];a:{if(t[a+6|0]&1){Pm(v[37389],a);break a}Ba[v[v[a>>2]+12>>2]](a)|0}_n(v[37393],a,b,2)}function laa(a){var b=0;a=a?a:1;a:{while(1){b=haa(a);if(b){break a}b=v[38290];if(b){Ba[b|0]();continue}break}da();L()}return b}function a$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[a+60>>2];a=B(v[a+44>>2],v[a+40>>2])<<2;a=a>>>0>>0?a:c;H9(b,d,a);return a|0}function Xh(a){a=a|0;var b=0;a=v[a+24>>2];if(a){b=v[a+56>>2];a=v[a>>2];a=B(b,Ba[v[v[a>>2]+28>>2]](a)|0)<<2}else{a=0}return a|0}function Ww(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(w[v[(v[a+444>>2]+(b<<5)|0)+16>>2]+159|0]){t[d|0]=3;return}t[d|0]=2;v[c>>2]=a|b}function lF(a){var b=0;if(!(y[v[a>>2]+152>>2]>4294967293|y[v[a+4>>2]+152>>2]>4294967293)){t[a+21|0]=w[a+21|0]|32;b=1}return b}function HK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!b){return 0}a=v[37696]+12|0;return Ba[v[v[a>>2]+8>>2]](a,b,24422,17559,67)|0}function xG(a,b){var c=0;if(v[a+28>>2]){while(1){bH(v[v[a+24>>2]+(c<<2)>>2],b);c=c+1|0;if(c>>>0>2]){continue}break}}}function uG(a,b){var c=0;if(v[a+28>>2]){while(1){eH(v[v[a+24>>2]+(c<<2)>>2],b);c=c+1|0;if(c>>>0>2]){continue}break}}}function iX(a,b,c){var d=0;d=xa-16|0;xa=d;u[d+14>>1]=a;if(b){u[d+14>>1]=a<<8|a>>>8}Ba[v[v[c>>2]>>2]](c,d+14|0,2)|0;xa=d+16|0}function ow(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=C(b);c=C(c);d=d|0;e=e|0;f=C(f);g=C(g);h=C(h);i=C(i);j=C(j);k=k|0;l=l|0;m=m|0}function hl(a,b){a=a|0;b=b|0;b=v[b+12>>2]&8?v[b+16>>2]+72|0:b+312|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2]}function hU(a,b){a=a|0;b=b|0;if(y[a+124>>2]<=b>>>0){a9(v[37696],4,8633,278,1821,0);return 0}return v[v[a+120>>2]+(b<<2)>>2]}function eH(a,b){a:{if(t[a+92|0]&1){break a}a=v[a+32>>2];if(!a){break a}while(1){bS(a,0,b);a=v[a>>2];if(a){continue}break}}}function FR(a){var b=0;b=v[a+68>>2];if(b-7>>>0<=4294967293){return a+66|0}if((b|0)==5){return v[a+116>>2]}return v[a+96>>2]}function ns(a){a=a|0;var b=0;b=xa-16|0;xa=b;v[b+8>>2]=126252;CP(a+32|0,a+5712|0,b+8|0);JE(a+5584|0,v[a+5824>>2]);xa=b+16|0}function c6(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;a=v[a+76>>2];u[c+8>>1]=x[b>>1];Ba[v[v[a>>2]+40>>2]](a,c+8|0);xa=c+16|0}function Kc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=a,e=Ba[v[v[b>>2]+28>>2]](b)|0,f=1,c=v[v[a>>2]+56>>2],Ba[c](d|0,e|0,f|0)}function J0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;if(!w[149580]){t[149580]=1;a9(v[37696],8,19496,175,65160,0)}}function Ic(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=a,e=Ba[v[v[b>>2]+28>>2]](b)|0,f=0,c=v[v[a>>2]+44>>2],Ba[c](d|0,e|0,f|0)}function CC(a,b,c){a=a|0;b=b|0;c=c|0;b=v[v[a+7680>>2]+(b<<2)>>2];v[c>>2]=v[a+7672>>2]+B(b,24);return v[a+7676>>2]+(b<<3)|0}function ym(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){u[a+44>>1]=x[a+44>>1]|b;break a}u[a+44>>1]=x[a+44>>1]&(b^-1)}Hn(v[37393],a)}function ud(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){c=v[c+v[b>>2]>>2]}return C(C(Ba[c|0](b)))}function pu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!w[149580]){t[149580]=1;a9(v[37696],8,19496,175,65160,0)}return 0}function Ep(a){a=a|0;var b=0;if(w[a+128|0]){b=v[a+64>>2];v[a+64>>2]=v[a+72>>2];v[a+56>>2]=v[a+124>>2];t[a+68|0]=(b|0)!=0}}function Df(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+B(b,12)|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];return 1}function Ap(a){a=a|0;var b=0;if(w[a+160|0]){b=v[a+80>>2];v[a+80>>2]=v[a+88>>2];v[a+72>>2]=v[a+156>>2];t[a+84|0]=(b|0)!=0}}function sP(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;Og(a+1252|0,c+12|0);a=v[c+12>>2];t[a+68|0]=w[a+68|0]&251;xa=c+16|0}function kb(a,b,c){a=a|0;b=b|0;c=C(c);var d=0;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](b,c)}function aE(a,b,c){a=a|0;b=b|0;c=c|0;b=v[v[a+300>>2]+(b<<2)>>2];v[c>>2]=v[a+292>>2]+B(b,24);return v[a+296>>2]+(b<<3)|0}function Lj(a){a=a|0;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;return w[(v[((v[a+4>>2]>>>22&60)+89188|0)+12>>2]+a|0)+7|0]}function Dg(a){a=a|0;var b=0,c=0;b=v[a+8>>2];if(b){c=x[b+4>>1]!=6}a=v[a+12>>2];if(a){a=x[a+4>>1]!=6}else{a=0}return c|a}function Cp(a){a=a|0;var b=0;if(w[a+64|0]){b=v[a+32>>2];v[a+32>>2]=v[a+40>>2];v[a+24>>2]=v[a+60>>2];t[a+36|0]=(b|0)!=0}}function $g(a,b){a=a|0;b=b|0;if(v[a+40>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+40>>2],v[a+36>>2]<<2)}}function nc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](b,c)}function cX(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;a9(v[37696],8,6989,538,77477,0);return 0}function a1(a,b){a=a|0;b=b|0;Ba[v[v[b>>2]+12>>2]](b,128);Ba[v[v[b>>2]+8>>2]](b,v[a+200>>2],B(v[a+192>>2],112));N0(a,b)}function _4(a,b,c){a=a|0;b=b|0;c=c|0;v[(v[a+80>>2]+(b<<2)|0)+80>>2]=c;t[a+84|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Sy(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;return Ry(a,b,c,d,e,h,i,2)|0}function RE(a){a:{a=v[a>>2];if(!a){break a}a=v[a+32>>2];if(!a){break a}while(1){$R(a);a=v[a>>2];if(a){continue}break}}}function Qy(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;return Ry(a,b,c,d,e,h,i,1)|0}function pc(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){c=v[c+v[b>>2]>>2]}return Ba[c|0](b)|0}function tl(a,b){a=a|0;b=b|0;if(w[a+14|0]&128){return v[(v[a+16>>2]+(b<<2)|0)+348>>2]}return w[((a+20|0)+b|0)+262|0]}function bb(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;v[c+8>>2]=b;a=Ba[a|0](c+8|0)|0;$(v[c+8>>2]);xa=c+16|0;return a|0}function ZT(a,b){a=a|0;b=b|0;v[a+16>>2]=v[b>>2];if(!v[b>>2]){b=v[a+12>>2];if(b){Ba[v[v[b>>2]+4>>2]](b)}v[a+12>>2]=0}}function Pm(a,b){var c=0;Ba[v[v[b>>2]+12>>2]](b)|0;c=a+2440|0;v[c>>2]=v[c>>2]-1;a=a+2448|0;v[b>>2]=v[a>>2];v[a>>2]=b}function IU(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;JU(c,z[a+40>>2],z[a+44>>2],z[b+276>>2],z[b+288>>2],b+260|0,d,e)}function Eo(a,b,c){a=a|0;b=b|0;c=c|0;a=x[(v[a+316>>2]&512?v[a+56>>2]+136|0:a+110|0)>>1];v[c>>2]=a>>>8;v[b>>2]=a&255}function jx(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;kx(v[a+444>>2],d,a+112|0,b,e,g,c,f,h)}function aT(a,b){a=a|0;b=b|0;u[b+2>>1]=x[a+412>>1];u[b+4>>1]=x[a+414>>1];u[b>>1]=x[a+418>>1];u[b+6>>1]=x[a+416>>1]}function Ke(a,b){a=a|0;b=b|0;var c=0,d=C(0);c=laa(12);d=z[a>>2];z[c+8>>2]=z[b>>2];z[c+4>>2]=d;v[c>>2]=2;return c|0}function zX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!w[149580]){t[149580]=1;a9(v[37696],8,19496,175,65160,0)}}function uJ(a,b){if(!v[b+48>>2]){a=vJ(a,v[b+28>>2],v[b+32>>2],v[b+44>>2]&476);u[a+4>>1]=x[a+4>>1]+1;v[b+48>>2]=a}}function mR(a){a=a|0;var b=0,c=0;c=v[a+20>>2];a=v[a+28>>2];b=v[a+980>>2];I9(v[b+160>>2],0,v[b+164>>2]<<2);tP(a,c)}function dq(a,b){a=a|0;b=b|0;if(!w[b+48|0]){a9(v[37696],4,11709,453,67410,0);return}$p(a,v[b+44>>2],v[b+40>>2],b)}function yR(a){a=a|0;var b=0;v[a>>2]=138660;v[v[a+44>>2]>>2]=0;a=UJ(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function UA(a,b,c){a=a|0;b=b|0;c=c|0;if(b){c=0;while(1){NA((c<<5)+a|0);c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function RA(a,b,c){a=a|0;b=b|0;c=c|0;if(b){c=0;while(1){MA((c<<5)+a|0);c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function Fd(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 Ba[v[a>>2]](b,c,d,e,f,g,h)|0}function naa(a,b,c){if(!c){return v[a+4>>2]==v[b+4>>2]}if((a|0)==(b|0)){return 1}return!S9(v[a+4>>2],v[b+4>>2])}function ii(a,b,c){a=a|0;b=b|0;c=c|0;a=x[(v[a+16>>2]&32?v[a+20>>2]+20|0:a+40|0)>>1];v[c>>2]=a>>>8;v[b>>2]=a&255}function Gt(a,b){a=a|0;b=b|0;v[a>>2]=v[b+48>>2];v[a+4>>2]=v[b+52>>2];v[a+8>>2]=v[b+56>>2];v[a+12>>2]=v[b+60>>2]}function Ft(a,b){a=a|0;b=b|0;v[a+48>>2]=v[b>>2];v[a+52>>2]=v[b+4>>2];v[a+56>>2]=v[b+8>>2];v[a+60>>2]=v[b+12>>2]}function sd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=_((t[b+11|0]<0?v[b>>2]:b)|0,114668,v[c>>2])|0,v[d>>2]=e}function hd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=_((t[b+11|0]<0?v[b>>2]:b)|0,114268,v[c>>2])|0,v[d>>2]=e}function cb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=_((t[b+11|0]<0?v[b>>2]:b)|0,111344,v[c>>2])|0,v[d>>2]=e}function Zc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=_((t[b+11|0]<0?v[b>>2]:b)|0,113948,v[c>>2])|0,v[d>>2]=e}function W5(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+76>>2];if(a){Ba[v[v[a>>2]+28>>2]](a,b,c);return}v[b>>2]=0;v[c>>2]=0}function Ol(a,b){a=a|0;b=b|0;a=1;a:{if(!S9(2204,b)){break a}if(!S9(21835,b)){break a}a=!S9(b,21828)}return a|0}function Nq(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){v[v[a+1020>>2]+308>>2]=b;return}a9(v[37696],2,19228,542,68140,0)}function Jq(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){v[v[a+1020>>2]+120>>2]=b;return}a9(v[37696],2,19228,529,68704,0)}function t8(a,b){a=a|0;b=b|0;a=1;a:{if(!S9(2262,b)){break a}if(!S9(2196,b)){break a}a=!S9(b,21828)}return a|0}function q7(a,b){a=a|0;b=b|0;a=1;a:{if(!S9(2298,b)){break a}if(!S9(2196,b)){break a}a=!S9(b,21828)}return a|0}function jF(a,b,c,d){b=(b<<3)+a|0;z[b- -64>>2]=d;z[b+60>>2]=c;t[a+273|0]=w[a+273|0]|16;a=v[a>>2];if(a){mF(a)}}function X7(a,b){a=a|0;b=b|0;a=1;a:{if(!S9(2364,b)){break a}if(!S9(2196,b)){break a}a=!S9(b,21828)}return a|0}function U5(a,b){a=a|0;b=b|0;a=1;a:{if(!S9(2402,b)){break a}if(!S9(2196,b)){break a}a=!S9(b,21828)}return a|0}function Q8(a,b){a=a|0;b=b|0;a=1;a:{if(!S9(2224,b)){break a}if(!S9(2196,b)){break a}a=!S9(b,21828)}return a|0}function Pb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);Ba[v[a>>2]](b,c,d,e,f,g,h)}function Nh(a,b){a=a|0;b=b|0;var c=0;a=v[a+24>>2];if(a){c=v[a>>2];Ba[v[v[c>>2]+68>>2]](c,v[a+4>>2]+1052|0,b)}}function NE(a,b){var c=0;b=B(b,36)+a|0;a=v[b>>2];if(!(!a|v[b+28>>2]!=1)){c=Ba[v[v[a>>2]+76>>2]](a)|0}return c}function MM(a){a=a|0;var b=0;b=v[a+28>>2];Ba[v[v[b>>2]+20>>2]](b);a=v[a+20>>2];if(a){Ba[v[v[a>>2]+20>>2]](a)}}function Kh(a,b){a=a|0;b=b|0;var c=0;a=v[a+24>>2];if(a){c=v[a>>2];Ba[v[v[c>>2]+56>>2]](c,v[a+4>>2]+1052|0,b)}}function E7(a,b){a=a|0;b=b|0;a=1;a:{if(!S9(2334,b)){break a}if(!S9(2196,b)){break a}a=!S9(b,21828)}return a|0}function lb(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){c=v[c+v[b>>2]>>2]}Ba[c|0](b)}function f8(a,b,c){a=a|0;b=C(b);c=c|0;z[v[a+80>>2]+80>>2]=b;if(c){q5(a)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function ce(a){a=a|0;var b=0;b=xa-16|0;xa=b;Ba[v[v[a>>2]+96>>2]](a,b+12|0,1,0)|0;xa=b+16|0;return v[b+12>>2]}function aN(a){a=a|0;var b=0;b=v[a+20>>2];if(b){Ba[v[v[b>>2]+20>>2]](b)}a=v[a+36>>2];Ba[v[v[a>>2]+20>>2]](a)}function YE(a,b){t[a+36|0]=w[b|0];a=v[a>>2];if(a){b=t[b|0]&1;if(v[a+16>>2]){t[v[v[a+12>>2]+16>>2]+159|0]=b}}}function Ss(a,b,c){a=a|0;b=b|0;c=c|0;a=rh(b);return v[(MU(a,c)<<2)+(x[a+12>>1]==1?a+8|0:v[a+8>>2])>>2]>>>1|0}function Sq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=v[v[a+1012>>2]+272>>2];return Ba[v[v[a>>2]+16>>2]](a,b,c,d)|0}function oK(a,b){a=a|0;b=b|0;var c=0,d=0;c=v[a+72>>2]+B(b,20)|0;d=v[c+4>>2]-1|0;v[c+4>>2]=d;if(!d){dK(a,b)}}function cc(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+b|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2]}function NU(a,b){var c=0,d=0;c=x[a+4>>1];if(c>>>0>=2){d=b;b=v[b+4>>2]+15&-16;v[d+4>>2]=b+(c<<2);v[a>>2]=b}}function He(a,b){a=a|0;b=C(b);var c=0;c=xa-16|0;xa=c;z[c+12>>2]=b;a=Ba[a|0](c+12|0)|0;xa=c+16|0;return a|0}function ld(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;a=Ba[a|0](c+12|0)|0;xa=c+16|0;return a|0}function hT(a){var b=0;a:{if(!w[a+4|0]){break a}b=v[a>>2];if(!b){break a}if(b){gU(v[a+8>>2],b)}}v[a>>2]=0}function QZ(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;RZ(a+8|0,v[b+8>>2],c,d,e,g);return 1}function CH(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;Og(a+296|0,c+12|0);t[b+68|0]=w[b+68|0]&254;xa=c+16|0}function Qp(a){a=a|0;if(w[a+5580|0]&2){return C(z[a+5560>>2])}return C(C(-z[v[(a+32|0)+1004>>2]+84>>2]))}function Ph(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+80>>2]](a,b,c,d)}}function x9(a){a=a|0;var b=0,c=0;a=v[a+4>>2];b=T9(a)+1|0;c=haa(b);if(c){a=H9(c,a,b)}else{a=0}return a|0}function we(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;t[c+8|0]=b;Ba[v[v[a>>2]+284>>2]](a,c+8|0);xa=c+16|0}function rd(a){a=a|0;var b=0;b=laa(12);t[b+4|0]=0;v[b+8>>2]=v[a>>2];v[a>>2]=0;v[b>>2]=114736;return b|0}function l0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=i0(a-4|0,b,c,d+12|0);xa=d+16|0;return a|0}function f0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=c0(a-4|0,b,c,d+12|0);xa=d+16|0;return a|0}function cv(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 MZ(a,b,c,d,e,g,h)|0}function ab(a){a=a|0;var b=0;b=laa(12);t[b+4|0]=0;v[b+8>>2]=v[a>>2];v[a>>2]=0;v[b>>2]=111420;return b|0}function Y$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=V$(a-4|0,b,c,d+12|0);xa=d+16|0;return a|0}function Cc(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;return Ba[v[a>>2]](b,c,d,e,f,g)|0}function se(a){a=a|0;var b=0;b=xa-16|0;xa=b;Ba[v[v[a>>2]+216>>2]](b+8|0,a);xa=b+16|0;return t[b+8|0]&1}function nd(){var a=0;a=laa(20);v[a>>2]=0;v[a+4>>2]=0;u[a+16>>1]=3;v[a+8>>2]=0;v[a+12>>2]=0;return a|0}function nH(a){if(y[a+152>>2]>=4294967294){SO(v[a+40>>2],a);$G(a)}bG(v[v[a+40>>2]+1e3>>2],v[a+144>>2])}function yM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;rM((v[a>>2]<<5)+b|0,C(-34028234663852886e22),d)}function ov(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 xZ(a,b,c,d,e,g)|0}function mv(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 AZ(a,b,c,d,e,g)|0}function jv(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 lZ(a,b,c,d,e,g)|0}function QP(a,b,c,d){var e=0;b=b+2528|0;e=v[b+(c<<2)>>2];t[a+1|0]=v[b+(d<<2)>>2]>>>c&1;t[a|0]=e>>>d&1}function Y7(a){a=a|0;var b=0;b=xa-32|0;xa=b;Ba[v[v[a>>2]+40>>2]](b,a);xa=b+32|0;return C(z[b+16>>2])}function V8(a){var b=0;b=v[a>>2];if(!((b|0)==(a+4|0)|!b)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}}function Lq(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){v[a+2380>>2]=b;return}a9(v[37696],2,19228,555,68907,0)}function GT(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+8>>2];if(!a){return 0}return Ba[v[v[a>>2]+4>>2]](a,b,c)|0}function mu(a,b,c){b=MU(a,b);v[c>>2]=v[a+16>>2];return v[(b<<2)+(x[a+12>>1]==1?a+8|0:v[a+8>>2])>>2]}function k0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=i0(a,b,c,d+12|0);xa=d+16|0;return a|0}function e0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=c0(a,b,c,d+12|0);xa=d+16|0;return a|0}function au(a){var b=0,c=0;b=a-16|0;c=v[b>>2]-1|0;v[b>>2]=c;if(!c){a=a-20|0;Ba[v[v[a>>2]+8>>2]](a)}}function X$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=V$(a,b,c,d+12|0);xa=d+16|0;return a|0}function LR(a){var b=0;b=v[a+60>>2];if((b|0)!=-1){eG(v[v[v[a+4>>2]+40>>2]+1e3>>2],b);v[a+60>>2]=-1}}function Vs(a){a=a|0;var b=0;v[a+16>>2]=0;v[a>>2]=126144;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Nb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);f=C(f);g=C(g);Ba[v[a>>2]](b,c,d,e,f,g)}function Faa(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(naa(a,v[b+8>>2],f)){xaa(b,c,d,e)}}function pm(a){a=a|0;var b=0;b=v[a+16>>2]-1|0;v[a+16>>2]=b;if(!b){Ba[v[v[a+12>>2]+8>>2]](a+12|0)}}function Z7(a){a=a|0;var b=0;b=xa-16|0;xa=b;Ba[v[v[a>>2]+44>>2]](b,a);xa=b+16|0;return C(z[b>>2])}function Yt(a,b){v[a+16>>2]=v[a+16>>2]+1;if(v[a+196>>2]<0){v[a+20>>2]=b}v[a+196>>2]=v[a+196>>2]+1}function Qr(a){a=a|0;if(w[a+5580|0]&128){return v[a+5568>>2]}return v[v[(a+32|0)+1004>>2]+108>>2]}function Hb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);Ba[v[a>>2]](b,c,d,e,f,g)}function Ah(a){a=a|0;a=v[a+24>>2];if(a){a=v[a>>2];a=Ba[v[v[a>>2]+28>>2]](a)|0}else{a=0}return a|0}function Vy(a){a=a|0;var b=0;Ba[v[v[a>>2]+28>>2]](a)|0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Or(a){a=a|0;if(w[a+5580|0]&16){return v[a+5568>>2]}return v[v[(a+32|0)+1004>>2]+104>>2]}function Fb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=C(f);g=C(g);Ba[v[a>>2]](b,c,d,e,f,g)}function yd(a,b){a=a|0;b=b|0;var c=0;c=v[b>>2];Ba[v[v[a>>2]+100>>2]](a,c,v[b+4>>2]-c>>>2&65535)}function xY(a){a=a|0;var b=0;b=v[a+12>>2]-1|0;v[a+12>>2]=b;if(!b){Ba[v[v[a+8>>2]+8>>2]](a+8|0)}}function II(a){a=a|0;var b=0;v[a>>2]=130904;AC(a+8|0);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function GA(a){a=a|0;var b=0;Ba[v[v[a>>2]+4>>2]](a)|0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function CN(a){a=a|0;var b=0;b=v[a+20>>2];Ba[v[v[a>>2]>>2]](a)|0;if(b){Ba[v[v[b>>2]+20>>2]](b)}}function j7(a,b){a=a|0;b=b|0;u[v[a+80>>2]+100>>1]=x[b>>1];a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Oaa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=Ba[a|0](b,c,d,e)|0;va(Aa|0);return a|0}function N7(a,b){a=a|0;b=b|0;u[v[a+80>>2]+116>>1]=x[b>>1];a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Ih(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+48>>2]](a,b,c)}}function Ie(a){a=a|0;return(v[a>>2]?0:!(z[a+4>>2]<=C(0))&(v[a+4>>2]&2139095040)!=2139095040)|0}function Hh(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+44>>2]](a,b,c)}}function tH(a,b){a=v[a+32>>2];if(a){while(1){bS(a,1,b);aS(a);a=v[a>>2];if(a){continue}break}}}function lk(a){a=a|0;v[a>>2]=119236;v[a>>2]=119540;du(a+20|0);v[a>>2]=119844;vh(a);return a|0}function go(a){a=a|0;v[a>>2]=122684;v[a>>2]=123036;du(a+20|0);v[a>>2]=123388;vh(a);return a|0}function aM(a){a=a|0;var b=0;Ba[v[v[a>>2]>>2]](a)|0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Uo(a){a=a|0;v[a>>2]=124056;v[a>>2]=124260;du(a+20|0);v[a>>2]=124400;vh(a);return a|0}function EW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a9(v[37696],8,7145,586,77607,0);return 0}function qw(a){a=a|0;I9(v[a+124>>2],0,B(v[a+128>>2],48));I9(v[a+112>>2],0,B(v[a+128>>2],48))}function _j(a,b){a=a|0;b=b|0;z[a>>2]=z[b+284>>2];z[a+4>>2]=z[b+288>>2];z[a+8>>2]=z[b+292>>2]}function $j(a,b){a=a|0;b=b|0;z[a>>2]=z[b+296>>2];z[a+4>>2]=z[b+300>>2];z[a+8>>2]=z[b+304>>2]}function pV(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;a=Og(a+88|0,c+12|0);xa=c+16|0;return a}function fm(a,b){a=a|0;b=b|0;return C(z[(b<<2)+(w[a+14|0]&64?v[a+16>>2]+324|0:a+248|0)>>2])}function ey(a,b){a=a|0;b=b|0;a=B(v[a+76>>2],24)+a|0;return Ba[v[v[a+28>>2]>>2]](a+28|0,b)|0}function em(a,b){a=a|0;b=b|0;return C(z[(b<<2)+(w[a+14|0]&64?v[a+16>>2]+300|0:a+224|0)>>2])}function tN(a){a=a|0;var b=0;b=v[a+28>>2];a=v[v[a+32>>2]+368>>2];v[b>>2]=v[a>>2];v[a>>2]=b}function oV(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;a=Og(a+8|0,c+12|0);xa=c+16|0;return a}function iF(a,b,c){z[((b<<2)+a|0)+228>>2]=c;t[a+273|0]=w[a+273|0]|8;a=v[a>>2];if(a){mF(a)}}function hF(a,b,c){z[((b<<2)+a|0)+204>>2]=c;t[a+273|0]=w[a+273|0]|4;a=v[a>>2];if(a){mF(a)}}function d9(){var a=0;a=v[37698];if(a){v[37698]=a-1;return}a9(v[37696],8,9796,216,67644,0)}function c9(){var a=0;a=v[37698];if(a){v[37698]=a+1;return}a9(v[37696],8,9796,201,67689,0)}function Zl(a){a=a|0;if(w[a+12|0]&128){return C(z[v[a+16>>2]+96>>2])}return C(z[a+288>>2])}function Nk(a,b){a=a|0;b=b|0;if(v[a+24>>2]){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}} -function vl(a){a=a|0;if(w[a+12|0]&64){return C(z[v[a+16>>2]+92>>2])}return C(z[a+272>>2])}function v5(a,b){a=a|0;b=C(b);z[v[a+80>>2]+468>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function t5(a,b){a=a|0;b=C(b);z[v[a+80>>2]+472>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function i8(a,b){a=a|0;b=C(b);z[v[a+80>>2]+120>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function g8(a,b){a=a|0;b=C(b);z[v[a+80>>2]+124>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function fH(a,b,c){a=v[a+32>>2];if(a){while(1){cS(a,b,c);a=v[a>>2];if(a){continue}break}}}function Vt(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;t[c+8|0]=w[b|0];Tt(a,c+8|0);xa=c+16|0}function US(a,b){a=a|0;b=b|0;z[a>>2]=z[b+36>>2];z[a+4>>2]=z[b+40>>2];z[a+8>>2]=z[b+44>>2]}function K7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+108>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function I7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+112>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Ae(){var a=0;a=laa(16);v[a+4>>2]=0;v[a+8>>2]=0;v[a>>2]=3;v[a+12>>2]=0;return a|0}function l6(a,b){a=a|0;b=C(b);z[v[a+80>>2]+12>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function kk(a){a=a|0;a=v[a- -64>>2];if(a){a=v[a+144>>2]>>>7|0}else{a=33554431}return a|0}function g7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+96>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function e7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+92>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function c_(a){a=a|0;var b=0;return(w[a+54|0]>64|w[v[a+56>>2]+18|0]>31?b:u[a+52>>1]<0)|0}function c7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+88>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function bl(a){a=a|0;var b=0;v[a>>2]=121200;b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function a7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+84>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function _6(a,b){a=a|0;b=C(b);z[v[a+80>>2]+80>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Y0(a,b){a=a|0;b=b|0;a=v[a+68>>2];if(a){a=x[a+(b<<1)>>1]}else{a=65535}return a|0}function Xl(a){a=a|0;var b=0;v[a>>2]=121580;b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function Wa(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 Ba[a|0](b,c,d,e,f)|0}function Uaa(a,b){var c=0,d=0;c=b&31;d=(-1>>>c&a)<>>a}function zq(a){a=a|0;if(v[a+4656>>2]){a9(v[37696],2,11709,1448,66774,0)}return a+5828|0}function wM(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;uM((v[a>>2]<<5)+b|0,c,e)}function sM(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;rM((v[a>>2]<<5)+b|0,d,e)}function qb(a,b,c,d,e,f){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);f=C(f);Ba[v[a>>2]](b,c,d,e,f)}function j6(a,b){a=a|0;b=C(b);z[v[a+80>>2]+8>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function h6(a,b){a=a|0;b=C(b);z[v[a+80>>2]+4>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function UJ(a){a=a|0;v[a>>2]=131380;RH(v[v[a+40>>2]+2372>>2],v[a+48>>2]);return SE(a)|0}function TQ(a){a=a|0;var b=0;b=v[v[a+28>>2]+1012>>2];Ba[v[v[b>>2]+56>>2]](b,v[a+20>>2])}function Qq(a,b){a=a|0;b=b|0;a=v[v[a+1012>>2]+272>>2];return Ba[v[v[a>>2]+8>>2]](a,b)|0}function zb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);Ba[v[a>>2]](b,c,d,e,f)}function fG(a){a=a|0;var b=0;NF(v[a+32>>2]);b=v[a+32>>2];a=v[a+28>>2];SF(b,a+32|0,1,1)}function lt(a){a=a|0;var b=0;a=a-12|0;it(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function lm(a){a=a|0;var b=0;a=a-12|0;im(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function ir(a,b,c,d,e,f){a=a|0;b=C(b);c=c|0;d=d|0;e=e|0;f=f|0;er(a,b,c,d,e,f,71213,1)}function gr(a,b,c,d,e,f){a=a|0;b=C(b);c=c|0;d=d|0;e=e|0;f=f|0;er(a,b,c,d,e,f,77152,3)}function f6(a,b){a=a|0;b=C(b);z[v[a+80>>2]>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function dv(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 dk(a,b){a=a|0;b=b|0;t[a|0]=w[(v[b+316>>2]&16384?v[b+56>>2]+268|0:b+108|0)|0]}function Ko(a,b){a=a|0;b=b|0;t[a|0]=w[(v[b+316>>2]&16384?v[b+56>>2]+184|0:b+238|0)|0]}function zS(a){a=a|0;var b=0;a=a-8|0;wS(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function pd(a,b){a=a|0;b=b|0;var c=0;a=v[a>>2];c=laa(2);u[c>>1]=x[a+b>>1];return c|0}function mf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);return Ba[v[a>>2]](b,c,d,e)|0}function cF(a,b,c){t[(a+b|0)+262|0]=c;t[a+273|0]=w[a+273|0]|1;a=v[a>>2];if(a){mF(a)}}function b_(a){a=a|0;var b=0;a=a-8|0;_Z(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function VT(a){a=a|0;var b=0;a=a-4|0;ST(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function U_(a){a=a|0;var b=0;a=a-8|0;R_(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Sh(a,b){a=a|0;b=b|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+96>>2]](a,b)}}function Oh(a,b){a=a|0;b=b|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+72>>2]](a,b)}}function Mh(a,b){a=a|0;b=b|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+64>>2]](a,b)}}function Lh(a,b){a=a|0;b=b|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+60>>2]](a,b)}}function Aq(a){a=a|0;v[a+56>>2]=0;v[a+44>>2]=0;v[a+32>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0}function Ac(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);return Ba[v[a>>2]](b,c,d,e)|0}function ql(a){a=a|0;if(w[a+14|0]&8){return v[v[a+16>>2]+136>>2]}return w[a+294|0]}function o6(a){a=a|0;a=v[a+76>>2];if(!a){return 0}return Ba[v[v[a>>2]+24>>2]](a)|0}function fl(a){a=a|0;if(t[a+14|0]&1){return v[v[a+16>>2]+132>>2]}return w[a+354|0]}function Sd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ba[v[a>>2]](b,c,d,e)|0}function Iw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;v[c>>2]=0;v[d>>2]=0;v[e>>2]=0}function gF(a,b){var c=0,d=C(0);z[a+336>>2]=b;c=a,d=V9(C(b*C(.25))),z[c+360>>2]=d}function eF(a,b){var c=0,d=C(0);z[a+320>>2]=b;c=a,d=V9(C(b*C(.25))),z[c+348>>2]=d}function _r(a){a=a|0;a=Ba[v[v[a>>2]+388>>2]](a)|0;return Ba[v[v[a>>2]+4>>2]](a)|0}function Yb(){var a=0;a=laa(8);v[a>>2]=1065353216;v[a+4>>2]=1092616192;return a|0}function Nm(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;Og(a+640|0,c+12|0);xa=c+16|0}function BC(a,b){a=a|0;b=b|0;return v[a+7676>>2]+(v[v[a+7680>>2]+(b<<2)>>2]<<3)|0}function raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(naa(a,v[b+8>>2],0)){qaa(b,c,d)}}function hk(a){a=a|0;return C(C(-z[(w[a+317|0]&8?v[a+56>>2]+172|0:a+156|0)>>2]))}function Wt(a,b){a=a|0;b=b|0;t[a|0]=w[(v[b+36>>2]&64?v[b+40>>2]+52|0:b+112|0)|0]}function s9(a,b,c,d){var e=0;e=xa-16|0;xa=e;v[e+12>>2]=d;eaa(a,b,c,d);xa=e+16|0}function oI(a){a=a|0;pI(v[a+28>>2],v[a+32>>2],v[a+36>>2],v[a+20>>2],v[a+40>>2])}function j$(a,b,c){a=a|0;b=b|0;c=c|0;return v[a+60>>2]+(B(v[a+44>>2],b)+c<<2)|0}function h$(a,b){a=a|0;b=b|0;return w[(v[a+60>>2]+(b<<1&-4)|0)+(b&1?3:2)|0]&127}function gw(a,b,c,d,e,f,g,h){a=a|0;b=C(b);c=C(c);d=d|0;e=e|0;f=f|0;g=g|0;h=C(h)}function gS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=v[a+4>>2];Ba[v[v[a>>2]>>2]](a,d)}function e6(a,b){a=a|0;b=b|0;var c=0;c=a;a=v[b+76>>2];Ba[v[v[a>>2]+44>>2]](c,a)}function a6(a,b,c){a=a|0;b=C(b);c=C(c);a=v[a+76>>2];Ba[v[v[a>>2]+60>>2]](a,b,c)}function _o(a){a=a|0;var b=0;b=v[a+48>>2];if(!(!b|w[b+4785|0])){vu(b,a+48|0,0)}}function Jo(a){a=a|0;var b=0;b=v[a+48>>2];if(!(!b|w[b+4785|0])){wu(b,a+48|0,1)}}function $o(a){a=a|0;var b=0;b=v[a+48>>2];if(!(!b|w[b+4785|0])){wu(b,a+48|0,0)}}function $D(a,b){a=a|0;b=b|0;return v[a+296>>2]+(v[v[a+300>>2]+(b<<2)>>2]<<3)|0}function $8(a){a=a|0;var b=0;W8(a);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function ys(a){a=a|0;var b=0;a=Jp(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function wV(a){a=a|0;var b=0;a=uV(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function vV(a){a=a|0;var b=0;a=sV(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function mk(a){a=a|0;v[a>>2]=119540;du(a+20|0);v[a>>2]=119844;vh(a);return a|0}function kR(a){a=a|0;a=v[v[v[a+28>>2]+976>>2]+1024>>2];Ba[v[v[a>>2]+72>>2]](a)}function gp(a){a=a|0;v[a>>2]=124260;du(a+20|0);v[a>>2]=124400;vh(a);return a|0}function fk(a){a=a|0;return C(z[(w[a+316|0]&128?v[a+56>>2]+128|0:a+140|0)>>2])}function Xm(a){a=a|0;var b=0;a=Wm(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Taa(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function So(a){a=a|0;v[a>>2]=123036;du(a+20|0);v[a>>2]=123388;vh(a);return a|0}function Rq(a){a=a|0;a=v[v[a+1012>>2]+272>>2];return Ba[v[v[a>>2]+12>>2]](a)|0}function Pq(a){a=a|0;a=v[v[a+1012>>2]+272>>2];return Ba[v[v[a>>2]+36>>2]](a)|0}function yo(a){a=a|0;return C(z[(w[a+317|0]&16?v[a+56>>2]+176|0:a+216|0)>>2])}function wo(a){a=a|0;return C(z[(w[a+316|0]&64?v[a+56>>2]+124|0:a+212|0)>>2])}function wf(a){a=a|0;var b=0;if(a){b=v[a>>2];if(b){v[a+4>>2]=b;iaa(b)}iaa(a)}}function jk(a){a=a|0;return C(z[(w[a+317|0]&32?v[a+56>>2]+180|0:a+208|0)>>2])}function d6(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+76>>2];Ba[v[v[a>>2]+48>>2]](a,b,c)}function b6(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+76>>2];Ba[v[v[a>>2]+64>>2]](a,b,c)}function IK(a,b){a=a|0;b=b|0;if(b){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}}function yf(){var a=0;a=laa(12);v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;return a|0}function yU(a){a=a|0;var b=0;xU(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function yS(a){a=a|0;var b=0;wS(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function xL(a){a=a|0;var b=0;wL(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function xF(a,b,c,d,e){rF(a,d,c,0,e);v[(v[a+16>>2]+B(e>>>7|0,24)|0)+20>>2]=b}function pn(a){a=a|0;var b=0;nn(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function pl(a){a=a|0;return C(z[(w[a+13|0]&64?v[a+16>>2]+124|0:a+356|0)>>2])}function pS(a){a=a|0;var b=0;oS(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function pC(a){a=a|0;var b=0;oC(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function og(a){a=a|0;var b=0;ng(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function ob(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);Ba[v[a>>2]](b,c,d,e)}function mV(a){a=a|0;var b=0;lV(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function kt(a){a=a|0;var b=0;it(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function km(a){a=a|0;var b=0;im(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function jp(a){a=a|0;var b=0;ip(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function ho(a){a=a|0;var b=0;go(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function fE(a){a=a|0;var b=0;eE(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function dL(a){a=a|0;var b=0;cL(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function dH(a){a=a|0;var b=0;cH(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function ai(a){a=a|0;var b=0;$h(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function a_(a){a=a|0;var b=0;_Z(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function aJ(a){a=a|0;var b=0;$I(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function ZJ(a){a=a|0;var b=0;YJ(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function XB(a){a=a|0;var b=0;WB(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Vo(a){a=a|0;var b=0;Uo(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function VJ(a){a=a|0;var b=0;UJ(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function UT(a){a=a|0;var b=0;ST(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function T_(a){a=a|0;var b=0;R_(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function TE(a){a=a|0;var b=0;SE(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Qt(a){a=a|0;return C(z[(w[a+36|0]&128?v[a+40>>2]+56|0:a+180|0)>>2])}function N4(a){a=a|0;var b=0;M4(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Mg(a){a=a|0;var b=0;Lg(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Li(a){a=a|0;var b=0;Ki(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function L6(a){a=a|0;var b=0;K6(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Kp(a){a=a|0;var b=0;Ip(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function KR(a){a=a|0;var b=0;JR(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Jm(a){a=a|0;var b=0;Im(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Go(a){a=a|0;return C(z[(t[a+317|0]&1?v[a+56>>2]+132|0:a+172|0)>>2])}function Ge(a){a=a|0;var b=0;b=laa(8);z[b+4>>2]=z[a>>2];v[b>>2]=0;return b|0}function Fl(a){a=a|0;return C(z[(w[a+13|0]&32?v[a+16>>2]+120|0:a+348|0)>>2])}function Eg(a,b){a=a|0;b=b|0;a=v[a+56>>2];return Ba[v[v[a>>2]+20>>2]](a,b)|0}function E6(a){a=a|0;var b=0;D6(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Dl(a){a=a|0;return C(z[(w[a+13|0]&16?v[a+16>>2]+116|0:a+344|0)>>2])}function Ck(a){a=a|0;var b=0;Bk(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function BD(a){a=a|0;var b=0;zD(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function $L(a){a=a|0;var b=0;_L(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function zl(a){a=a|0;return C(z[(w[a+13|0]&2?v[a+16>>2]+104|0:a+336|0)>>2])}function xl(a){a=a|0;return C(z[(t[a+13|0]&1?v[a+16>>2]+100|0:a+332|0)>>2])}function tu(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;Og(a,c+12|0);xa=c+16|0}function nl(a){a=a|0;return C(z[(w[a+13|0]&4?v[a+16>>2]+108|0:a+340|0)>>2])}function ll(a){a=a|0;return C(z[(w[a+12|0]&32?v[a+16>>2]+88|0:a+328|0)>>2])}function k_(a,b){a=a|0;b=b|0;if(!S9(16433,b)){return 1}return!S9(b,21828)|0}function jl(a){a=a|0;return C(z[(w[a+12|0]&16?v[a+16>>2]+84|0:a+324|0)>>2])}function hm(a,b){a=a|0;b=b|0;if(!S9(20824,b)){return 1}return!S9(b,21828)|0}function fi(a,b){a=a|0;b=b|0;if(!S9(20861,b)){return 1}return!S9(b,21828)|0}function cu(a,b){a=a|0;b=b|0;if(!S9(21956,b)){return 1}return!S9(b,21828)|0}function ch(a,b){a=a|0;b=b|0;if(!S9(21226,b)){return 1}return!S9(b,21828)|0}function cC(a,b){a=a|0;b=b|0;if(!S9(21859,b)){return 1}return!S9(b,21828)|0}function c$(a,b){a=a|0;b=b|0;if(!S9(23290,b)){return 1}return!S9(b,21828)|0}function W0(a,b){a=a|0;b=b|0;if(!S9(16477,b)){return 1}return!S9(b,21828)|0}function Vk(a,b){a=a|0;b=b|0;if(!S9(14521,b)){return 1}return!S9(b,21828)|0}function Ot(a){a=a|0;return C(z[(w[a+36|0]&32?v[a+40>>2]+48|0:a+176|0)>>2])}function Mt(a){a=a|0;return C(z[(w[a+36|0]&16?v[a+40>>2]+44|0:a+108|0)>>2])}function Gm(a,b){a=a|0;b=b|0;if(!S9(14935,b)){return 1}return!S9(b,21828)|0}function FY(a,b){a=a|0;b=b|0;if(!S9(21878,b)){return 1}return!S9(b,21828)|0}function Cb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);Ba[v[a>>2]](b,c,d,e)}function wY(a){a=a|0;var b=0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a-8|0)}function li(a){a=a|0;return C(z[(w[a+16|0]&16?v[a+20>>2]+16|0:a+48|0)>>2])}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;uw(v[a+100>>2],b,d,e)}function St(a){a=a|0;return C(z[(t[a+37|0]&1?v[a+40>>2]+60|0:a+184|0)>>2])}function Lf(a,b,c){a=a|0;b=b|0;c=c|0;v[v[a>>2]+(b<<2)>>2]=v[c>>2];return 1}function Jh(a){a=a|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+52>>2]](a)}}function Ig(a,b){a=a|0;b=b|0;if(!S9(2426,b)){return 1}return!S9(b,21828)|0}function xP(a,b){if((v[a+8>>2]&2147483647)>>>0>>0){uP(a,b)}v[a+4>>2]=b}function qg(a,b,c){a=a|0;b=b|0;c=c|0;v[b>>2]=v[a+8>>2];v[c>>2]=v[a+12>>2]}function op(a,b){if((v[a+8>>2]&2147483647)>>>0>>0){np(a,b)}v[a+4>>2]=b}function nK(a,b){a=a|0;b=b|0;a=v[a+72>>2]+B(b,20)|0;v[a+4>>2]=v[a+4>>2]+1}function gb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ba[v[a>>2]](b,c,d,e)}function dE(a,b){if((v[a+8>>2]&2147483647)>>>0>>0){ZC(a,b)}v[a+4>>2]=b}function Xw(a,b){a=a|0;b=b|0;return C(z[(v[a+452>>2]+B(b,160)|0)+144>>2])}function Ll(a){a=a|0;return w[(w[a+13|0]&128?v[a+16>>2]+128|0:a+353|0)|0]}function Jk(a){a=a|0;return C(z[(w[a+16|0]&8?v[a+20>>2]+12|0:a+44|0)>>2])}function Cg(a){a=a|0;return C(z[(w[a+20|0]&8?v[a+24>>2]+20|0:a+84|0)>>2])}function yL(a,b){a=a|0;b=b|0;t[b+8|0]=1;v[b>>2]=256;v[b+4>>2]=0;return 1}function yF(a,b,c){rF(a,0,0,1,c);v[(v[a+16>>2]+B(c>>>7|0,24)|0)+20>>2]=b}function xc(a,b,c){a=a|0;b=C(b);c=c|0;Ba[v[v[a>>2]+200>>2]](a,b,0,0,0,c)}function ni(a){a=a|0;return C(z[(w[a+16|0]&64?v[a+20>>2]:a+28|0)+24>>2])}function Qd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ba[v[a>>2]](b,c,d)|0}function $3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;v[b>>2]=(d<<1)+30&30|c<<5|1}function dp(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)==8){ep(a,c);b=8}Fj(a,b,c)}function Up(a,b){a=a|0;b=b|0;v[a>>2]=v[(v[b+5580>>2]&4?5564:2392)+b>>2]}function Po(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)==8){Qo(a,c);b=8}Fj(a,b,c)}function Hl(a){a=a|0;return w[(w[a+13|0]&8?v[a+16>>2]+112|0:a+352|0)|0]}function GS(a,b){a=a|0;b=b|0;if((b|0)<=1){v[a+540>>2]=b}return(b|0)<2|0}function Dj(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)==8){Ej(a,c);b=8}Fj(a,b,c)}function Bm(a,b){a=a|0;b=b|0;t[a+46|0]=w[a+46|0]&15|b<<4;Hn(v[37393],a)}function vY(a){a=a|0;var b=0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function jL(a,b){a=a|0;b=b|0;v[b>>2]=0;v[b+4>>2]=0;t[b+8|0]=0;return 1}function aS(a){if(v[a+36>>2]!=-1){lS(v[v[v[a+4>>2]+40>>2]+1152>>2],a)}}function LS(a){a=a|0;a=a+8|0;XT(v[a+520>>2],Ba[v[v[a>>2]+16>>2]](a)|0)}function xR(a){a=a|0;v[a>>2]=138660;v[v[a+44>>2]>>2]=0;return UJ(a)|0}function lH(a){if(!v[a+160>>2]){cG(v[v[a+40>>2]+1e3>>2],v[a+144>>2])}}function SV(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 Dm(a,b){a=a|0;b=b|0;t[a+46|0]=w[a+46|0]&240|b;Hn(v[37393],a)}function hS(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 Ua(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ba[a|0](b,c,d)|0}function vs(a){a=a|0;var b=0;b=v[a+16>>2];Ba[v[v[b>>2]+76>>2]](b,a)}function fr(a){a=a|0;var b=0;b=v[a+16>>2];Ba[v[v[b>>2]+72>>2]](b,a)}function Lw(a,b){a=a|0;b=b|0;return w[(v[a+456>>2]+B(b,80)|0)+76|0]}function Hk(a){a=a|0;return v[(w[a+16|0]&4?v[a+20>>2]:a+28|0)+8>>2]}function Fk(a){a=a|0;return v[(w[a+16|0]&2?v[a+20>>2]:a+28|0)+4>>2]}function vc(a,b){a=a|0;b=b|0;return Ba[v[v[a>>2]+220>>2]](a,b,0)|0}function pK(a,b){a=a|0;b=b|0;return v[(v[a+72>>2]+B(b,20)|0)+4>>2]}function eT(a){a=a|0;return C(C(C(z[a+528>>2]*C(.5))+z[a+524>>2]))}function dT(a){a=a|0;return C(C(C(z[a+536>>2]*C(.5))+z[a+532>>2]))}function Z4(a,b){a=a|0;b=b|0;return v[(v[a+80>>2]+(b<<2)|0)+80>>2]}function Q$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;G$(b,d,a,c,e)}function IN(a,b,c){a=a|0;b=C(b);c=c|0;Ba[v[v[a>>2]+136>>2]](a,b,c)}function wr(a,b){a=a|0;b=b|0;t[a+6354|0]=0;nr(a);if(b){v[b>>2]=0}}function ax(a,b,c){a=a|0;b=b|0;c=c|0;Ba[v[v[b>>2]+116>>2]](a,b,c)}function HC(a){var b=0;b=v[a+588>>2];if(b){GC(a,b);v[a+588>>2]=0}}function Dk(a){a=a|0;return v[(t[a+16|0]&1?v[a+20>>2]:a+28|0)>>2]}function Ab(a,b,c){a=a|0;b=b|0;c=c|0;Ba[v[v[a>>2]+120>>2]](a,b,c)}function $v(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;t[d|0]=2;v[c>>2]=a|b}function xs(a){a=a|0;a=v[a+20>>2];if(a){Ba[v[v[a>>2]+20>>2]](a)}}function tf(a,b){a=a|0;b=b|0;return Ba[v[v[a>>2]+128>>2]](a,b)|0}function sb(a,b,c,d){a=a|0;b=b|0;c=C(c);d=d|0;Ba[v[a>>2]](b,c,d)}function rc(a,b){a=a|0;b=C(b);Ba[v[v[a>>2]+208>>2]](a,b,0,0,0,1)}function lU(a,b,c){a=a|0;b=b|0;c=C(c);z[a+132>>2]=c;t[a+136|0]=b}function kd(a){a=a|0;var b=0;b=laa(2);u[b>>1]=v[a>>2];return b|0}function ib(a,b,c){a=a|0;b=b|0;c=c|0;Ba[v[v[a>>2]+64>>2]](a,b,c)}function _N(a,b){a=a|0;b=b|0;b=v[b+28>>2];v[a>>2]=0;v[a+32>>2]=b}function ue(a,b,c){a=a|0;b=b|0;c=C(c);return Ba[v[a>>2]](b,c)|0}function uY(a,b,c,d){if(tY(a,b,c,d)){sY(v[b>>2],a,c,b,v[d>>2])}}function jb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ba[v[a>>2]](b,c,d)}function du(a){var b=0;b=v[v[37389]+476>>2];LU(a,b);LU(a+8|0,b)}function Md(a){a=a|0;var b=0;b=laa(1);t[b|0]=v[a>>2];return b|0}function Fe(){var a=0;a=laa(8);v[a>>2]=0;v[a+4>>2]=0;return a|0}function zm(a,b){a=a|0;b=b|0;u[a+44>>1]=x[b>>1];Hn(v[37393],a)}function wc(a,b,c){a=a|0;b=b|0;c=c|0;return Ba[v[a>>2]](b,c)|0}function kf(a,b,c){a=a|0;b=b|0;c=c|0;return!((w[b|0]^255)&c)|0}function ih(a,b){a=v[a+4>>2];if(a){Rg(v[v[a+36>>2]+4>>2],b,0)}}function Q0(a){a=a|0;a9(v[37696],8,10730,220,70500,0);return 0}function Ky(a){return Hy(a,(B(v[a+136>>2],12)+a|0)+16|0,0,0,1)}function nw(a,b,c,d,e,f){a=a|0;b=C(b);c=c|0;d=d|0;e=e|0;f=f|0}function lL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return-1}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;mj(v[v[a+96>>2]>>2],b,c)}function FW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return 0}function EN(a,b,c,d){a=a|0;b=C(b);c=c|0;d=d|0;DN(a-8|0,b,c,d)}function ps(a,b){a=a|0;b=b|0;return v9(v[a+6068>>2],0-b|0)|0}function od(a,b,c){a=a|0;b=b|0;c=c|0;u[v[a>>2]+b>>1]=x[c>>1]}function kr(a,b){a=a|0;b=b|0;return v9(v[a+6064>>2],0-b|0)|0}function jr(a,b){a=a|0;b=b|0;return v9(v[a+6060>>2],0-b|0)|0}function fK(a,b){a=a|0;b=b|0;return v[v[a+72>>2]+B(b,20)>>2]}function eU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;dU(a-4|0,b,a,d)}function LN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;KN(a-8|0,b,c,d)}function Dq(a,b){a=a|0;b=b|0;v[v[(a+32|0)+1004>>2]+112>>2]=b}function ie(a,b){a=a|0;b=b|0;Ba[v[v[a>>2]+188>>2]](a,b,0,1)}function he(a,b){a=a|0;b=b|0;Ba[v[v[a>>2]+192>>2]](a,b,0,1)}function cs(a){a=a|0;return C(z[v[(a+32|0)+1004>>2]+88>>2])}function ZN(a,b){a=a|0;b=b|0;return v[a+60>>2]+(b<<1&-16)|0}function YN(a,b){a=a|0;b=b|0;return v[a+68>>2]+(b<<1&-16)|0}function Fs(a){a=a|0;v[a+16>>2]=0;v[a>>2]=126144;return a|0}function vf(a,b){a=a|0;b=C(b);Ba[v[v[a>>2]+128>>2]](a,b)|0}function uf(a,b){a=a|0;b=C(b);Ba[v[v[a>>2]+124>>2]](a,b)|0}function sf(a,b){a=a|0;b=C(b);Ba[v[v[a>>2]+120>>2]](a,b)|0}function rf(a,b){a=a|0;b=C(b);Ba[v[v[a>>2]+112>>2]](a,b)|0}function Va(a,b,c){a=a|0;b=b|0;c=c|0;return Ba[a|0](b,c)|0}function TD(a,b){a=a|0;b=b|0;v[a+280>>2]=0;v[a+272>>2]=b-3}function R9(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Aa=0;return 0}function um(a,b){a=a|0;b=C(b);z[a+36>>2]=b;Hn(v[37393],a)}function sw(a,b){a=a|0;b=b|0;return v[a+148>>2]+B(b,28)|0}function sm(a,b){a=a|0;b=C(b);z[a+32>>2]=b;Hn(v[37393],a)}function maa(a,b,c){a=a|0;b=b|0;c=c|0;return naa(a,b,0)|0}function l8(a,b){a=a|0;b=b|0;u[v[a+80>>2]+128>>1]=x[b>>1]}function k8(a,b){a=a|0;b=b|0;u[a>>1]=x[v[b+80>>2]+128>>1]}function i7(a,b){a=a|0;b=b|0;u[a>>1]=x[v[b+80>>2]+100>>1]}function fx(a,b){a=a|0;b=b|0;return v[a+496>>2]+B(b,28)|0}function Nz(a){a=a|0;mz(v[a+32>>2],v[a+28>>2],v[a+40>>2])}function M7(a,b){a=a|0;b=b|0;u[a>>1]=x[v[b+80>>2]+116>>1]}function J8(a,b){a=a|0;b=b|0;u[v[a+80>>2]+112>>1]=x[b>>1]}function I8(a,b){a=a|0;b=b|0;u[a>>1]=x[v[b+80>>2]+112>>1]}function Eq(a){a=a|0;return v[v[(a+32|0)+1004>>2]+112>>2]}function DI(a){a=a|0;vI(v[a+32>>2],v[a+20>>2],v[a+28>>2])}function tw(a,b){a=a|0;b=b|0;return v[a+160>>2]+(b<<4)|0}function nj(a,b){a=a|0;b=b|0;Ba[v[v[a>>2]+80>>2]](a,b,1)}function mm(a,b){a=a|0;b=b|0;v[a+48>>2]=a;Dn(v[37393],a)}function m_(a){a=a|0;return v[a+56>>2]+B(w[a+55|0],20)|0}function gx(a,b){a=a|0;b=b|0;return v[a+508>>2]+(b<<4)|0}function ds(a){a=a|0;return v[v[(a+32|0)+2168>>2]+56>>2]}function Ub(){var a=0;a=laa(4);v[a>>2]=112776;return a|0}function Od(){var a=0;a=laa(4);v[a>>2]=146052;return a|0}function OZ(a){a=a|0;v[a>>2]=142644;NZ(a+8|0);return a|0}function NI(a){a=a|0;v[a>>2]=130904;AC(a+8|0);return a|0}function Is(a){a=a|0;v[a+20>>2]=v[a+20>>2]+1;t[a+92|0]=1}function xW(a,b){a=a|0;b=b|0;z[a>>2]=z[v[b+4>>2]+24>>2]}function ts(a,b){a=a|0;b=b|0;Ba[v[v[a>>2]+236>>2]](a,b)}function fo(a,b,c){a=a|0;b=b|0;c=c|0;_n(v[37393],b,0,2)}function Zb(a,b,c){a=a|0;b=b|0;c=C(c);z[v[a>>2]+b>>2]=c}function QE(a,b){t[a+10|0]=b;a=v[a>>2];if(a){WE(a,8,1)}}function PS(a,b){a=a|0;b=C(b);if(b>=C(0)){z[a+56>>2]=b}}function sc(a,b,c){a=a|0;b=b|0;c=C(c);Ba[v[a>>2]](b,c)}function of(a,b){a=a|0;b=b|0;Ba[v[v[a>>2]+40>>2]](a,b)}function _b(a,b){a=a|0;b=b|0;return C(z[v[a>>2]+b>>2])}function Zd(a,b,c){a=a|0;b=b|0;c=c|0;v[v[a>>2]+b>>2]=c}function XS(a,b){a=a|0;b=C(b);if(b>C(0)){z[a+48>>2]=b}}function TS(a,b){a=a|0;b=C(b);if(b>C(0)){z[a+52>>2]=b}}function Q5(a){a=a|0;a=v[a+76>>2];Ba[v[v[a>>2]>>2]](a)}function Nd(a,b){a=a|0;b=b|0;return!((w[a|0]^255)&b)|0}function Hi(a,b){a=a|0;b=b|0;fu(a+20|0,b);gh(a+12|0,b)}function Fi(a,b){a=a|0;b=b|0;eu(a+20|0,b);dh(a+12|0,b)}function kL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 0}function jf(a,b){a=a|0;b=b|0;v[a+112>>2]=b;return b|0}function hc(a,b,c){a=a|0;b=b|0;c=+c;A[v[a>>2]+b>>3]=c}function b1(a){a=a|0;return Ba[v[v[a>>2]+28>>2]](a)|0}function Uc(a,b,c){a=a|0;b=b|0;c=c|0;t[v[a>>2]+b|0]=c}function Qa(a){a=a|0;return(v[a+4>>2]-v[a>>2]|0)/12|0}function Jc(a,b,c){a=a|0;b=b|0;c=c|0;Ba[v[a>>2]](b,c)}function y6(a,b){a=a|0;b=b|0;v[b>>2]=0;return a-12|0}function tz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0}function ok(a){a=a|0;v[a>>2]=119844;vh(a);return a|0}function hp(a){a=a|0;v[a>>2]=124400;vh(a);return a|0}function ff(a,b){a=a|0;b=b|0;v[a+88>>2]=b;return b|0}function ef(a,b){a=a|0;b=b|0;v[a+84>>2]=b;return b|0}function aK(a,b){a=a|0;b=b|0;v[b+24>>2]=v[b+24>>2]+1}function Vr(a,b){a=a|0;b=b|0;By(v[a+1008>>2]+24|0,b)}function To(a){a=a|0;v[a>>2]=123388;vh(a);return a|0}function SZ(a){a=a|0;v[a>>2]=142644;NZ(a+8|0);iaa(a)}function Qaa(a){if(a){return 31-E(a-1^a)|0}return 32}function Mc(a,b){a=a|0;b=b|0;return Ba[v[a>>2]](b)|0}function w5(a){a=a|0;return C(z[v[a+80>>2]+468>>2])}function u5(a){a=a|0;return C(z[v[a+80>>2]+472>>2])}function nt(a){a=a|0;Nm(v[37389],a-12|0);Sm(a+20|0)}function mb(a){a=a|0;if(a){Ba[v[v[a>>2]+16>>2]](a)}}function j8(a){a=a|0;return C(z[v[a+80>>2]+120>>2])}function ic(a,b){a=a|0;b=b|0;return+A[v[a>>2]+b>>3]}function h8(a){a=a|0;return C(z[v[a+80>>2]+124>>2])}function _d(a,b){a=a|0;b=b|0;return v[v[a>>2]+b>>2]}function Ya(a){a=a|0;if(a){Ba[v[v[a>>2]+28>>2]](a)}}function Rc(a){a=a|0;if(a){Ba[v[v[a>>2]+12>>2]](a)}}function Oe(){var a=0;a=laa(4);v[a>>2]=1;return a|0}function L7(a){a=a|0;return C(z[v[a+80>>2]+108>>2])}function J7(a){a=a|0;return C(z[v[a+80>>2]+112>>2])}function Iq(a){a=a|0;return v[v[a+1008>>2]+1020>>2]}function GN(a,b,c){a=a|0;b=C(b);c=c|0;FN(a-8|0,b,c)}function Fn(a){a=a|0;return v[a+24>>2]-v[a+32>>2]|0}function m6(a){a=a|0;return C(z[v[a+80>>2]+12>>2])}function h7(a){a=a|0;return C(z[v[a+80>>2]+96>>2])}function gf(a){a=a|0;if(a){Ba[v[v[a>>2]+8>>2]](a)}}function f7(a){a=a|0;return C(z[v[a+80>>2]+92>>2])}function d7(a){a=a|0;return C(z[v[a+80>>2]+88>>2])}function b7(a){a=a|0;return C(z[v[a+80>>2]+84>>2])}function Xr(a){a=a|0;return v[v[a+1008>>2]+180>>2]}function Wr(a){a=a|0;return v[v[a+1008>>2]+176>>2]}function Vc(a,b){a=a|0;b=b|0;return w[v[a>>2]+b|0]}function Tb(a){a=a|0;if(a){Ba[v[v[a>>2]+4>>2]](a)}}function TN(a,b,c){a=a|0;b=b|0;c=c|0;SN(a-8|0,b,c)}function RN(a,b,c){a=a|0;b=b|0;c=c|0;QN(a-8|0,b,a)}function Oq(a){a=a|0;return v[v[a+1020>>2]+308>>2]}function Kq(a){a=a|0;return v[v[a+1020>>2]+120>>2]}function DU(a){a=a|0;return v[a+20>>2]+v[a+8>>2]|0}function $6(a){a=a|0;return C(z[v[a+80>>2]+80>>2])}function s6(a,b){a=a|0;b=b|0;v[b>>2]=0;return a|0}function k6(a){a=a|0;return C(z[v[a+80>>2]+8>>2])}function i6(a){a=a|0;return C(z[v[a+80>>2]+4>>2])}function cy(a,b){a=a|0;b=b|0;return dy(a+4|0,b)|0}function Zk(a,b){a=a|0;b=b|0;return!S9(b,21828)|0}function R2(a){a=a|0;Ba[v[v[a>>2]+64>>2]](a);d9()}function KL(a){a=a|0;return v[v[a+88>>2]+4204>>2]}function Jy(a,b){return Hy(a,b,a+176|0,a+172|0,1)}function JL(a){a=a|0;return v[v[a+88>>2]+4208>>2]}function oe(a,b,c){a=a|0;b=b|0;c=c|0;G8(a,b,c,1)}function ne(a,b,c){a=a|0;b=b|0;c=c|0;F8(a,b,c,1)}function me(a,b,c){a=a|0;b=b|0;c=c|0;D8(a,b,c,1)}function le(a,b,c){a=a|0;b=b|0;c=c|0;G8(a,b,c,0)}function ke(a,b,c){a=a|0;b=b|0;c=c|0;F8(a,b,c,0)}function je(a,b,c){a=a|0;b=b|0;c=c|0;D8(a,b,c,0)}function _p(a,b,c){a=a|0;b=b|0;c=c|0;$p(a,b,c,0)}function ZP(a){a=a|0;return v[v[a+4>>2]+1160>>2]}function RR(a,b,c,d,e,f){NR(a);OR(a,b,c,d,e,0,f)}function Paa(a,b,c,d){wa(a|0,b|0,8,0,c|0,-1,d|0)}function Jf(a){a=a|0;return v[a+4>>2]-v[a>>2]>>2}function Iaa(a){a=a|0;a=xa-a&-16;xa=a;return a|0}function $c(a,b){a=a|0;b=b|0;return Ba[a|0](b)|0}function uc(a){a=a|0;Ba[v[v[a>>2]+204>>2]](a,0)}function mY(a,b){a=a|0;b=b|0;v[a>>2]=2139095039}function g6(a){a=a|0;return C(z[v[a+80>>2]>>2])}function f$(a,b){a=a|0;b=b|0;u[a>>1]=x[b+68>>1]}function Vg(a,b){a=a|0;b=b|0;return Ug(a,b,1)|0}function JF(a,b){if(b>>>0<=4294967167){IF(a,b)}}function Gq(a){a=a|0;return v[(a+32|0)+2344>>2]}function Am(a,b){a=a|0;b=b|0;u[a>>1]=x[b+44>>1]}function wn(a){a=a|0;return v[v[37389]+676>>2]}function rw(a,b,c){a=a|0;b=b|0;c=c|0;hw(a,b,c)}function pk(a,b,c){a=a|0;b=b|0;c=c|0;Fj(a,b,c)}function oj(a,b,c){a=a|0;b=b|0;c=c|0;mj(a,b,c)}function mt(a){a=a|0;Nm(v[37389],a);Sm(a+32|0)}function al(a){a=a|0;v[a>>2]=121200;return a|0}function Z9(a,b,c){if(!(w[a|0]&32)){N9(b,c,a)}}function Xt(a){a=a|0;return v[a+196>>2]>>>31|0}function Wl(a){a=a|0;v[a>>2]=121580;return a|0}function Sn(a){a=a|0;return v[v[37389]+164>>2]}function Naa(a){a=a|0;return(a<<8|a>>>8)&65535}function Mn(a){a=a|0;return v[v[37389]+124>>2]}function zh(a,b){a=a|0;b=b|0;t[a|0]=w[b+73|0]}function fC(a,b){if(y[a+4>>2]>>0){eC(a,b)}}function ag(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function X0(a,b){a=a|0;b=b|0;t[a|0]=w[b+64|0]}function Uk(a){a=a|0;return(w[a+6|0]&2)>>>1|0}function Pn(a){a=a|0;return v[v[37389]+84>>2]}function Jn(a){a=a|0;return v[v[37389]+44>>2]}function zL(a){a=a|0;return v[v[a+88>>2]>>2]}function wA(a,b,c){a=a|0;b=b|0;c=c|0;xA(a,c)}function uo(a){a=a|0;return v[a+312>>2]!=0|0}function uA(a,b,c){a=a|0;b=b|0;c=c|0;vA(a,c)}function qm(a){a=a|0;v[a+16>>2]=v[a+16>>2]+1}function m4(a){a=a|0;Ba[v[v[a>>2]+20>>2]](a)}function g_(a){a=a|0;v[a+12>>2]=v[a+12>>2]+1}function dG(a,b){JF(a+168|0,b);JF(a+640|0,b)}function cG(a,b){IF(a+168|0,b);IF(a+640|0,b)}function bG(a,b){wF(a+168|0,b);wF(a+640|0,b)}function _J(a){a=a|0;Ba[v[v[a>>2]+48>>2]](a)}function Xs(a){a=a|0;ME(v[a+28>>2]+5584|0,1)}function Ws(a){a=a|0;ME(v[a+28>>2]+5584|0,0)}function Qf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0}function N6(a){a=a|0;Ba[v[v[a>>2]+12>>2]](a)}function Cs(a){a=a|0;Ba[v[v[a>>2]+32>>2]](a)}function mL(a){a=a|0;Ba[v[v[a>>2]+4>>2]](a)}function is(a){a=a|0;return C(z[a+5148>>2])}function e$(a){a=a|0;return C(z[a- -64>>2])}function Sa(a){a=a|0;return v[v[a>>2]-4>>2]}function Ir(a,b){a=a|0;b=b|0;v[a+5824>>2]=b}function DC(a,b){a=a|0;b=b|0;fC(a+7664|0,b)}function Cm(a){a=a|0;return w[a+46|0]>>>4|0}function $a(a,b){a=a|0;b=b|0;Ba[v[a>>2]](b)}function zo(a,b){a=a|0;b=C(b);_k(a+48|0,b)}function v7(a,b){a=a|0;b=b|0;c9();return 1}function uq(a,b){a=a|0;b=b|0;t[a+6355|0]=b}function ui(a,b){a=a|0;b=b|0;v[a+112>>2]=b}function ji(a){a=a|0;return w[a+72|0]!=0|0}function cT(a){a=a|0;return C(z[a+536>>2])}function bT(a){a=a|0;return C(z[a+532>>2])}function bO(a,b){a=a|0;b=b|0;v[a+104>>2]=b}function bE(a,b){a=a|0;b=b|0;fC(a+284|0,b)}function _t(a,b){a=a|0;b=b|0;v[a+192>>2]=b}function _A(a,b,c){a=a|0;b=b|0;c=c|0;$A(a)}function YA(a,b,c){a=a|0;b=b|0;c=c|0;ZA(a)}function RT(a){a=a|0;return C(z[a+524>>2])}function OK(a){PK(a);KK(a+72|0);KK(a+48|0)}function JT(a){a=a|0;return C(z[a+540>>2])}function CA(a,b,c){a=a|0;b=b|0;c=c|0;DA(a)}function Ao(a){a=a|0;return C(z[a+308>>2])}function xm(a){a=a|0;return C(z[a+40>>2])}function x6(a,b){a=a|0;b=b|0;r6(a-12|0,b)}function wS(a){a=a|0;sU(a+8|0);return a|0}function w6(a,b){a=a|0;b=b|0;q6(a-12|0,b)}function vm(a){a=a|0;return C(z[a+36>>2])}function uz(a,b){a=a|0;b=b|0;v[a+48>>2]=b}function tm(a){a=a|0;return C(z[a+32>>2])}function tk(a,b){a=a|0;b=b|0;hh(a+12|0,b)}function sk(a,b){a=a|0;b=b|0;gh(a+12|0,b)}function rk(a,b){a=a|0;b=b|0;dh(a+12|0,b)}function pi(a){a=a|0;return C(z[a+68>>2])}function oU(a,b){a=a|0;b=b|0;t[a+139|0]=b}function nU(a,b){a=a|0;b=b|0;t[a+138|0]=b}function mU(a,b){a=a|0;b=b|0;t[a+137|0]=b}function h9(a,b){a=a|0;b=b|0;t[a+188|0]=b}function eO(a,b){a=a|0;b=b|0;v[a+96>>2]=b}function _S(a,b){a=a|0;b=b|0;v[a+88>>2]=b}function WS(a){a=a|0;return C(z[a+48>>2])}function SS(a){a=a|0;return C(z[a+52>>2])}function RS(a,b){a=a|0;b=b|0;v[a+16>>2]=b}function QS(a){a=a|0;return C(z[a+56>>2])}function Fw(a,b,c){H9(b,c,v[a+356>>2]<<2)}function Aj(a,b){a=a|0;b=b|0;v[a+12>>2]=b}function z5(a){a=a|0;return x5(a-12|0)|0}function xq(a){a=a|0;return v[a+5928>>2]}function vq(a){a=a|0;return v[a+5980>>2]}function ss(a){a=a|0;return v[a+6092>>2]}function qK(a,b){a=a|0;b=b|0;v[a+8>>2]=b}function nq(a){a=a|0;return v[a+6020>>2]}function ls(a){a=a|0;return v[a+1044>>2]}function lj(a,b){a=a|0;b=b|0;kj(a,b,0,1)}function jt(a){a=a|0;return it(a-12|0)|0}function jm(a){a=a|0;return im(a-12|0)|0}function jj(a,b){a=a|0;b=b|0;kj(a,b,1,0)}function cr(a){a=a|0;return v[a+2228>>2]}function bs(a){a=a|0;return v[a+5648>>2]}function br(a){a=a|0;return v[a+2224>>2]}function as(a){a=a|0;return v[a+5612>>2]}function Zr(a){a=a|0;return v[a+5616>>2]}function Zq(a){a=a|0;return v[a+2220>>2]}function Yr(a){a=a|0;return v[a+1120>>2]}function Yq(a){a=a|0;return v[a+2216>>2]}function Xq(a){a=a|0;return v[a+2208>>2]}function XN(a,b){a=a|0;b=b|0;WN(a-8|0,b)}function Wq(a){a=a|0;return v[a+2204>>2]}function O6(a,b){a=a|0;b=b|0;t[a+33|0]=b}function NN(a,b){a=a|0;b=b|0;MN(a-8|0,b)}function Mq(a){a=a|0;return v[a+2380>>2]}function Lr(a){a=a|0;return v[a+5700>>2]}function Jr(a){a=a|0;return v[a+5824>>2]}function Em(a){a=a|0;return w[a+46|0]&15}function $r(a){a=a|0;return v[a+6096>>2]}function xi(a){a=a|0;return v[a+108>>2]}function xS(a){a=a|0;return wS(a-8|0)|0}function vi(a){a=a|0;return v[a+112>>2]}function sz(a,b){a=a|0;b=b|0;return b|0}function rt(a){a=a|0;return v[a+116>>2]}function qM(a){a=a|0;return v[a+236>>2]}function pM(a){a=a|0;return v[a+268>>2]}function oM(a){a=a|0;return v[a+272>>2]}function nM(a){a=a|0;return v[a+256>>2]}function mM(a){a=a|0;return v[a+260>>2]}function cO(a){a=a|0;return $N(a-8|0)|0}function bf(a){a=a|0;return v[a+100>>2]}function Zi(a){a=a|0;return v[a+364>>2]}function YS(a){a=a|0;return v[a+488>>2]}function Xi(a){a=a|0;return v[a+356>>2]}function Wi(a){a=a|0;return v[a+368>>2]}function Vi(a){a=a|0;return v[a+324>>2]}function Vh(a){a=a|0;return v[a+124>>2]}function Vb(a){a=a|0;return Ba[a|0]()|0}function Ui(a){a=a|0;return v[a+320>>2]}function TT(a){a=a|0;return ST(a-4|0)|0}function Sl(a){a=a|0;return v[a+396>>2]}function S_(a){a=a|0;return R_(a-8|0)|0}function SI(a){a=a|0;return v[a+284>>2]}function SD(a){a=a|0;AD(a);t[a+337|0]=1}function Pl(a){a=a|0;return v[a+392>>2]}function OS(a){a=a|0;return v[a+432>>2]}function M0(a){a=a|0;return L0(a-8|0)|0}function IL(a){a=a|0;return v[a+104>>2]}function FS(a){a=a|0;return v[a+540>>2]}function $t(a){a=a|0;return v[a+192>>2]}function $Z(a){a=a|0;return _Z(a-8|0)|0}function zs(a){a=a|0;return v[a+20>>2]}function y5(a){a=a|0;return v[a+80>>2]}function xp(a){a=a|0;return v[a+48>>2]}function ws(a){a=a|0;return v[a+24>>2]}function wp(a){a=a|0;return v[a+44>>2]}function vp(a){a=a|0;return v[a+56>>2]}function up(a){a=a|0;return v[a+52>>2]}function sW(a,b){a=a|0;b=b|0;v[a>>2]=0}function rm(a){a=a|0;return v[a+16>>2]}function n6(a){a=a|0;return v[a+76>>2]}function k$(a){a=a|0;return v[a+92>>2]}function g9(a){a=a|0;return w[a+188|0]}function _T(a){a=a|0;return v[a+72>>2]}function ZS(a){a=a|0;return v[a+88>>2]}function Xg(a){a=a|0;return v[a+28>>2]}function Wg(a){a=a|0;return v[a+36>>2]}function Pj(a){a=a|0;return x[a+24>>1]}function Bs(a){a=a|0;return v[a+40>>2]}function Bj(a){a=a|0;return v[a+12>>2]}function As(a){a=a|0;return v[a+32>>2]}function $T(a){a=a|0;return v[a+68>>2]}function sn(a){a=a|0;return v[a+8>>2]}function o_(a){a=a|0;return w[a+55|0]}function mw(a,b){a=a|0;b=b|0;return 0}function l_(a){a=a|0;return w[a+54|0]}function iS(a,b){a=a|0;b=b|0;return-1}function dr(a){a=a|0;return v[37393]} -function _g(a){a=a|0;return w[a+32|0]}function Qc(a){a=a|0;return v[a+4>>2]}function P6(a){a=a|0;return w[a+33|0]}function u8(a){a=a|0;return v[36972]}function u6(a){a=a|0;return v[36368]}function r7(a){a=a|0;return v[36527]}function fu(a,b){NU(a,b);NU(a+8|0,b)}function ao(a){a=a|0;return v[37696]}function _7(a){a=a|0;return v[36821]}function R8(a){a=a|0;return v[37135]}function Nf(a,b,c){a=a|0;b=b|0;c=c|0}function F7(a){a=a|0;return v[36684]}function zj(a){a=a|0;return uh(a)|0}function dO(a){a=a|0;iaa($N(a-8|0))}function cd(a){a=a|0;return v[a>>2]}function Xf(a,b){a=a|0;b=b|0;iaa(b)}function UI(a){a=a|0;wI(v[a+28>>2])}function QL(a){a=a|0;hM(v[a+28>>2])}function NS(a){a=a|0;return a+440|0}function Jaa(){za=5396048;ya=153168}function EJ(a){a=a|0;DJ(v[a+28>>2])}function ze(a){a=a|0;return 115176}function z6(a){a=a|0;return a-12|0}function yp(a){a=a|0;return a+44|0}function yi(a){a=a|0;return a+12|0}function ye(a){a=a|0;return 113664}function xf(a){a=a|0;return 112828}function xe(a){a=a|0;return 116708}function td(a){a=a|0;return 113480}function qd(a){a=a|0;return 114556}function md(a){a=a|0;return 113448}function mc(a){a=a|0;return 113040}function lp(a){a=a|0;return a+60|0}function jd(a){a=a|0;return 113440}function jc(a){a=a|0;return 111184}function iN(a){a=a|0;return 15990} -function co(a){a=a|0;return a+48|0}function ae(a){a=a|0;return 111264}function ad(a){a=a|0;return 113744}function Ye(a){a=a|0;return 111148}function Xe(a){a=a|0;return 117232}function Xb(a){a=a|0;return 111016}function Wd(a){a=a|0;return 111272}function Wb(a){a=a|0;if(a){iaa(a)}}function Ve(a){a=a|0;return 117072}function Ud(a){a=a|0;return 111064}function Te(a){a=a|0;return 117160}function Se(a){a=a|0;return 117080}function Pe(a){a=a|0;return 117004}function Oc(a){a=a|0;return 113596}function Ne(a){a=a|0;return 115224}function Nc(a){a=a|0;return 113584}function Ld(a){a=a|0;return 115092}function Je(a){a=a|0;return 115248}function FO(a){a=a|0;return 22940} -function Ef(a){a=a|0;return 114932}function Ee(a){a=a|0;return 115200}function $n(a){a=a|0;return a+16|0}function $e(a){a=a|0;return 117420}function $d(a){a=a|0;return 111280}function wj(a){a=a|0;return 16235}function wQ(a){a=a|0;return 15958}function vz(a){a=a|0;return 20799}function us(a){a=a|0;return 15467}function uQ(a){a=a|0;return 15775}function tg(a){a=a|0;t[a+120|0]=1}function sQ(a){a=a|0;return 16090}function sN(a){a=a|0;return 15877}function qQ(a){a=a|0;return 15702}function qN(a){a=a|0;return 15855}function oQ(a){a=a|0;return 15668}function oN(a){a=a|0;return 15533}function nk(a){a=a|0;ih(a+12|0,a)}function nD(a){a=a|0;mD(a);iaa(a)}function mQ(a){a=a|0;return 15165}function mN(a){a=a|0;return 15861}function mG(a){a=a|0;return 15088}function lM(a){a=a|0;return 21398}function lG(a){a=a|0;return 15419}function kQ(a){a=a|0;return 15106}function kN(a){a=a|0;return 16020}function j_(a){a=a|0;return 16433}function iQ(a){a=a|0;return 15597}function gm(a){a=a|0;return 20824}function gQ(a){a=a|0;return 15735}function gN(a){a=a|0;return 14991}function fT(a){a=a|0;return a-8|0}function fO(a){a=a|0;return 21426}function ei(a){a=a|0;return 20861}function eN(a){a=a|0;return 15265}function d1(a){a=a|0;return 16512}function cN(a){a=a|0;return 15018}function bu(a){a=a|0;return 21956}function bh(a){a=a|0;return 21226}function bC(a){a=a|0;return 21859}function b$(a){a=a|0;return 23290}function ap(a){a=a|0;return 24438}function _P(a){a=a|0;return 15333}function Zy(a){a=a|0;Wy(a);iaa(a)}function ZM(a){a=a|0;return 15362}function Y3(a){a=a|0;X3(a);iaa(a)}function XM(a){a=a|0;return 15442}function Vl(a){a=a|0;return a+8|0}function VM(a){a=a|0;return 15551}function Uz(a){a=a|0;return 14794}function Tk(a){a=a|0;return 14521}function TU(a){a=a|0;SU(a);iaa(a)}function TM(a){a=a|0;return 15185}function T0(a){a=a|0;return 16492}function Sz(a){a=a|0;return 14973}function SL(a){a=a|0;return 16214}function S3(a){a=a|0;R3(a);iaa(a)}function RM(a){a=a|0;return 15942}function RL(a){a=a|0;return 16176}function RI(a){a=a|0;return 14844}function Qz(a){a=a|0;return 15279}function Q2(a){a=a|0;return a+4|0}function PM(a){a=a|0;return 15489}function PJ(a){a=a|0;return 16123}function PI(a){a=a|0;return 14878}function Oz(a){a=a|0;return 14233}function OL(a){a=a|0;return 16193}function No(a){a=a|0;return 24470}function NM(a){a=a|0;return 15390}function NL(a){a=a|0;return 16159}function Lv(a){a=a|0;Kv(a);iaa(a)}function LM(a){a=a|0;return 15845}function Kz(a){a=a|0;return 20654}function Iz(a){a=a|0;return 23219}function IQ(a){a=a|0;return 15921}function HI(a){a=a|0;return 16065}function Gz(a){a=a|0;return 15568}function GQ(a){a=a|0;return 15232}function GI(a){a=a|0;return 15649}function Fm(a){a=a|0;return 14935}function FI(a){a=a|0;return 15302}function Ew(a){a=a|0;Dw(a);iaa(a)}function Er(a){a=a|0;LE(a+5584|0)}function EY(a){a=a|0;return 21878}function EQ(a){a=a|0;return 15384}function EK(a){a=a|0;DK(a);iaa(a)}function Ds(a){a=a|0;return 14337}function DO(a){a=a|0;return 14022}function CQ(a){a=a|0;return 15803}function BM(a){a=a|0;AM(a);iaa(a)}function AQ(a){a=a|0;return 15200}function AK(a){I9(a+1164|0,0,648)}function $M(a){a=a|0;return 15250}function yQ(a){a=a|0;return 4875}function xz(a){a=a|0;return 2145}function wz(a){a=a|0;return 3151}function r8(a){a=a|0;return 2262}function o7(a){a=a|0;return 2298}function lw(a){a=a|0;t[a+92|0]=1}function fd(a){a=a|0;t[a+68|0]=1}function Yz(a){a=a|0;return 3253}function Wc(a){a=a|0;t[a+84|0]=1}function Vaa(a,b){Aa=a;return b} -function V7(a){a=a|0;return 2364}function R5(a){a=a|0;return 2402}function O8(a){a=a|0;return 2224}function Nl(a){a=a|0;return 2204}function Mz(a){a=a|0;return 4848}function Hg(a){a=a|0;return 2426}function GF(a,b,c,d,e){zF(a,0,e)}function Dz(a){a=a|0;return 3301}function D8(a,b,c,d){E8(a,b,c,d)}function B7(a){a=a|0;return 2334}function qi(a){a=a|0;Pk(a+12|0)}function fy(a){a=a|0;iaa(_x(a))}function aO(a){a=a|0;iaa($N(a))}function _a(a){a=a|0;t[a+4|0]=1}function Za(a){a=a|0;return a|0}function Co(a){a=a|0;Wk(a+48|0)}function zY(a){a=a|0;yY(a-8|0)}function gc(){return laa(24)|0}function f_(a){a=a|0;e_(a-8|0)}function bc(){return laa(28)|0}function ac(){return laa(16)|0}function $b(){return laa(12)|0}function yj(a){a=a|0;return 2}function d$(a){a=a|0;return 4}function cp(a){a=a|0;return 0}function Kg(a){a=a|0;return 1}function Kaa(){return xa-ya|0}function Jg(a,b){a=a|0;b=b|0}function Vf(a){a=a|0;iaa(a)}function J9(){return 150796}function Maa(){return ya|0}function Laa(){return za|0}function Haa(a){a=a|0;xa=a}function HF(a,b){zF(a,1,b)}function Gaa(){return xa|0}function BI(a){v[a+4>>2]=0}function Tf(a){a=a|0;L()}function Uf(){da();L()}function Ra(a){a=a|0} +function kN(a){a=a|0;var b=C(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=C(0),q=0,r=0,s=0,A=0,D=C(0),E=C(0),F=C(0),G=0,H=0,I=0,J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=0,R=0,S=C(0),T=0,U=0,V=C(0),W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0,da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=0,ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=0,ua=C(0),va=0,wa=0,ya=0,za=0,Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=0,Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=0,Oa=0,Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=0,Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=0,gb=0,hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=0,ub=C(0),vb=C(0),wb=0,xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=0,Fb=0,Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=C(0),Tb=0,Ub=0,Vb=C(0),Wb=C(0),Xb=C(0),Yb=0,Zb=C(0),_b=0,$b=0,ac=0,bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=C(0),rc=C(0),sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=C(0),Ac=C(0),Bc=C(0),Cc=C(0),Dc=C(0),Ec=C(0),Fc=C(0),Gc=C(0),Hc=C(0),Ic=C(0),Jc=C(0),Kc=C(0),Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=C(0),Sc=C(0),Tc=C(0),Uc=C(0),Vc=C(0),Wc=C(0),Xc=C(0),Yc=C(0),Zc=C(0),_c=C(0),$c=C(0),ad=C(0),bd=C(0),cd=C(0),dd=0,ed=C(0),fd=C(0),gd=C(0),hd=C(0),id=C(0),jd=C(0),kd=C(0),ld=C(0),md=C(0),nd=C(0),od=C(0),pd=C(0),qd=C(0),rd=C(0),sd=C(0),td=C(0),ud=C(0),vd=C(0),wd=C(0),xd=C(0),yd=C(0),zd=0,Ad=C(0),Bd=C(0),Cd=C(0),Dd=C(0),Ed=C(0),Fd=C(0),Gd=C(0),Hd=C(0),Id=C(0),Jd=C(0),Kd=C(0),Ld=C(0),Md=0,Nd=0,Od=0,Pd=C(0),Qd=C(0),Rd=C(0),Sd=C(0),Td=C(0),Ud=C(0),Vd=C(0),Wd=C(0),Xd=C(0),Yd=C(0),Zd=C(0),_d=C(0),$d=C(0),ae=C(0),be=C(0),ce=C(0),de=C(0),ee=C(0),fe=C(0),ge=C(0),he=C(0),ie=C(0),je=C(0),ke=C(0),le=C(0),me=0,ne=C(0),oe=C(0),pe=C(0),qe=C(0),re=C(0),se=C(0),te=C(0),ue=C(0),ve=C(0),we=C(0),xe=C(0),ye=0,ze=0,Ae=0,Be=0,Ce=C(0),De=C(0),Ee=C(0),Fe=C(0),Ge=C(0),He=C(0),Ie=C(0),Je=C(0),Ke=C(0),Le=C(0),Me=C(0),Ne=C(0),Oe=C(0),Pe=0,Qe=0,Re=0,Se=0,Te=C(0),Ue=C(0),Ve=C(0),We=C(0),Xe=C(0),Ye=C(0),Ze=C(0),_e=C(0),$e=C(0),af=C(0),bf=C(0),cf=C(0),df=C(0),ef=C(0),ff=C(0),gf=C(0),hf=C(0),jf=C(0),kf=C(0),lf=C(0),mf=C(0),nf=C(0),of=C(0),pf=C(0),qf=C(0),rf=C(0),sf=C(0),tf=C(0),uf=C(0),vf=C(0),wf=C(0),xf=C(0),yf=C(0),zf=C(0),Af=C(0),Bf=C(0),Cf=C(0),Df=C(0),Ef=C(0),Ff=C(0),Gf=C(0),Hf=C(0),If=C(0),Jf=C(0),Kf=C(0),Lf=C(0),Mf=C(0),Nf=C(0),Of=C(0),Pf=C(0),Qf=C(0),Rf=C(0),Sf=C(0),Tf=C(0),Uf=0,Vf=C(0),Wf=C(0),Xf=C(0),Yf=C(0),Zf=C(0),_f=C(0),$f=C(0),ag=C(0),bg=C(0),cg=C(0),dg=C(0),eg=C(0),fg=C(0),gg=C(0),hg=C(0),ig=C(0),jg=C(0),kg=C(0),lg=C(0),mg=C(0),ng=C(0),og=C(0),pg=C(0),qg=C(0),rg=C(0),sg=C(0),tg=C(0),ug=C(0),vg=C(0),wg=C(0),xg=C(0),yg=C(0),zg=C(0),Ag=C(0),Bg=C(0),Cg=C(0),Dg=C(0),Eg=C(0),Fg=C(0),Gg=C(0),Hg=C(0),Ig=C(0),Jg=C(0),Kg=C(0),Lg=C(0),Mg=C(0),Ng=C(0),Og=C(0),Pg=C(0),Qg=C(0),Rg=C(0),Sg=C(0),Tg=C(0),Ug=C(0),Vg=C(0),Wg=C(0),Xg=C(0),Yg=C(0),Zg=C(0),_g=C(0),$g=C(0),ah=C(0),bh=C(0),ch=C(0),dh=C(0),eh=C(0),fh=C(0),gh=C(0),hh=C(0),ih=C(0),jh=C(0),kh=C(0),lh=C(0),mh=C(0),nh=C(0),oh=C(0),ph=C(0),qh=C(0),rh=C(0),sh=C(0),th=C(0),uh=C(0),vh=C(0),wh=C(0),xh=C(0),yh=C(0),zh=C(0),Ah=C(0),Bh=C(0),Ch=C(0),Dh=C(0),Eh=C(0),Fh=C(0),Gh=C(0),Hh=C(0),Ih=C(0),Jh=C(0),Kh=C(0),Lh=C(0),Mh=C(0),Nh=C(0),Oh=C(0),Ph=C(0),Qh=C(0),Rh=C(0),Sh=C(0),Th=C(0),Uh=C(0),Vh=C(0),Wh=C(0),Xh=C(0),Yh=C(0),Zh=C(0),_h=C(0),$h=C(0),ai=C(0),bi=0,ci=0,di=0;d=v[a+64>>2];c=v[d+368>>2];e=v[c>>2];if(e){v[c>>2]=v[e>>2]}if(!e){c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?26947:63804;e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,12195,e,19395,82)|0;c=e+19&-16;v[c-4>>2]=c-e;e=hB(c,v[d+372>>2])}c=e+11856|0;v[c>>2]=0;v[c+4>>2]=0;Kb=v[a+64>>2];Pe=v[a+28>>2];di=v[a+32>>2];bi=v[a+36>>2];ci=v[a+40>>2];c=v[a+68>>2];le=z[a+44>>2];eb=z[a+48>>2];pb=z[a+52>>2];Q=xa-832|0;xa=Q;Oc=e;v[Q+824>>2]=e+12088;v[Q+820>>2]=e+11824;v[Q+816>>2]=e+11852;v[Q+812>>2]=c+11836;v[Q+808>>2]=128228;if(bi){Sb=C(C(1)/eb);Qe=v[Kb+496>>2];Re=v[Kb+484>>2];while(1){Yb=(Uf<<3)+di|0;T=v[Yb>>2];Pc=x[Yb+4>>1];c=T+Pc|0;a:{b:{c:{d:{switch(x[((T<<5)+Pe|0)+22>>1]-1|0){case 0:Qc=c>>>0<=T>>>0;e=Pc;if(Qc){break b}m=v[ci+32>>2];l=0;e=T;while(1){c=l<<2;o=(e<<5)+Pe|0;q=v[o+24>>2];v[c+Q>>2]=q;d=c+(Q+32|0)|0;c=v[q+68>>2];c=m+(v[((c&7)<<2)+ci>>2]+(c>>>3|0)<<4)|0;v[d>>2]=c;h=v[o+4>>2];d=v[o>>2];G=v[o+12>>2];j=v[o+16>>2];g=v[q+20>>2];r=(Q+96|0)+B(l,176)|0;k=v[q+16>>2];z[r+44>>2]=z[k>>2];z[r+48>>2]=z[k+4>>2];z[r+52>>2]=z[k+8>>2];z[r+56>>2]=z[k+12>>2];z[r+60>>2]=z[k+16>>2];z[r- -64>>2]=z[k+20>>2];z[r+68>>2]=z[k+24>>2];z[r+72>>2]=z[g>>2];z[r+76>>2]=z[g+4>>2];z[r+80>>2]=z[g+8>>2];z[r+84>>2]=z[g+12>>2];z[r+88>>2]=z[g+16>>2];z[r+92>>2]=z[g+20>>2];z[r+96>>2]=z[g+24>>2];v[r+108>>2]=v[q+12>>2];c=v[c+8>>2];g=B(j,48)+Qe|0;v[r+40>>2]=g;k=B(G,48)+Qe|0;v[r+36>>2]=k;v[r+32>>2]=(j<<6)+Re;v[r+28>>2]=(G<<6)+Re;v[r+20>>2]=d;v[r+24>>2]=h;v[r+16>>2]=o;v[r+140>>2]=c;h=x[q+40>>1];t[r+121|0]=h>>>2&1;t[r+122|0]=h>>>8&1;d=h&8;v[r+100>>2]=d?8:1;c=h&16;e:{if(c){if(x[o+10>>1]==65535){v[r+104>>2]=2;break e}v[r+104>>2]=8;break e}v[r+104>>2]=h&1024?4:h&64?1:2}J=z[(c?v[q+20>>2]+128|0:g+12|0)>>2];N=z[(d?v[q+16>>2]+128|0:k+12|0)>>2];c=w[q+44|0];E=w[q+45|0]?C(1):C(0);z[r+12>>2]=E;b=c?C(1):C(0);z[r>>2]=b;z[r+4>>2]=b;z[r+8>>2]=E;z[r+124>>2]=z[q+52>>2];v[r+132>>2]=v[q+36>>2];c=w[q+42|0];z[r+160>>2]=J>N?N:J;v[r+128>>2]=2139095039;t[r+136|0]=c;z[r+164>>2]=z[q+72>>2];z[r+168>>2]=z[q+76>>2];e=e+1|0;l=l+1|0;if((Pc|0)!=(l|0)){continue}break};break c;case 1:break d;default:break a}}Na=c>>>0<=T>>>0;if(!Na){l=v[Kb+168>>2];e=0;while(1){v[Q+24>>2]=0;v[Q+16>>2]=0;v[Q+20>>2]=0;v[Q+8>>2]=0;v[Q+12>>2]=1065353216;v[Q>>2]=0;v[Q+4>>2]=0;c=Q;H=c;q=(T<<5)+Pe|0;r=v[q+24>>2];d=v[r+24>>2];if(d){H=v[d+36>>2]}m=x[r+8>>1];h=v[r+20>>2];g=v[r+12>>2];d=v[r+28>>2];if(d){c=v[d+36>>2]}k=v[q+4>>2];G=v[q+12>>2];j=v[q+16>>2];d=v[q>>2];o=(Q+32|0)+(e<<4)|0;v[o+12>>2]=m;v[o+8>>2]=h;v[o>>2]=r;v[o+4>>2]=g;g=(Q+96|0)+B(e,176)|0;v[g+16>>2]=q;z[g+44>>2]=z[H>>2];z[g+48>>2]=z[H+4>>2];z[g+52>>2]=z[H+8>>2];z[g+56>>2]=z[H+12>>2];z[g+60>>2]=z[H+16>>2];z[g- -64>>2]=z[H+20>>2];z[g+68>>2]=z[H+24>>2];z[g+72>>2]=z[c>>2];z[g+76>>2]=z[c+4>>2];z[g+80>>2]=z[c+8>>2];z[g+84>>2]=z[c+12>>2];z[g+88>>2]=z[c+16>>2];z[g+92>>2]=z[c+20>>2];b=z[c+24>>2];v[g+40>>2]=B(j,48)+Qe;v[g+36>>2]=B(G,48)+Qe;v[g+32>>2]=(j<<6)+Re;v[g+28>>2]=(G<<6)+Re;v[g+24>>2]=k;v[g+20>>2]=d;z[g+96>>2]=b;z[g+116>>2]=z[r>>2];z[g+120>>2]=z[r+4>>2];v[g+128>>2]=l+(v[r+40>>2]<<5);d=x[r+10>>1];t[g+135|0]=d>>>9&1;c=d&255;t[g+133|0]=c>>>7;t[g+132|0]=d>>>8&1;t[g+134|0]=c>>>5&1;z[g+124>>2]=z[r+44>>2];v[g+100>>2]=x[q+8>>1]==65535?1:8;v[g+104>>2]=x[q+10>>1]==65535?1:8;T=T+1|0;e=e+1|0;if((Pc|0)!=(e|0)){continue}break}}if((Pc|0)==4){f=Q+96|0;m=Q+808|0;Zb=z[Kb+612>>2];H=0;va=0;Wa=0;Lb=0;Mb=0;me=xa-3840|0;xa=me;v[Q>>2]=0;e=1;c=v[Q+36>>2];f:{if(!c){break f}q=J9(me,0,960);v[q+940>>2]=2139095039;v[q+924>>2]=-8388609;v[q+860>>2]=2139095039;v[q+844>>2]=-8388609;v[q+780>>2]=2139095039;v[q+764>>2]=-8388609;v[q+700>>2]=2139095039;v[q+684>>2]=-8388609;v[q+620>>2]=2139095039;v[q+604>>2]=-8388609;v[q+540>>2]=2139095039;v[q+524>>2]=-8388609;v[q+460>>2]=2139095039;v[q+444>>2]=-8388609;v[q+380>>2]=2139095039;v[q+364>>2]=-8388609;v[q+300>>2]=2139095039;v[q+284>>2]=-8388609;v[q+220>>2]=2139095039;v[q+204>>2]=-8388609;v[q+140>>2]=2139095039;v[q+124>>2]=-8388609;v[q+60>>2]=2139095039;v[q+44>>2]=-8388609;v[f+4>>2]=1065353216;v[f+8>>2]=1065353216;v[f+12>>2]=1065353216;v[f+144>>2]=0;v[f+136>>2]=0;v[f+140>>2]=0;v[f>>2]=1065353216;o=Ba[c|0](q,f+136|0,12,f,v[Q+40>>2],f+44|0,f+72|0,w[f+135|0],f+148|0,f+160|0)|0;if(!o){break f}v[f+112>>2]=o;v[f+108>>2]=q;if(w[v[f+20>>2]+62|0]){v[f+4>>2]=0}if(w[v[f+24>>2]+62|0]){v[f+12>>2]=0}g=v[Q+52>>2];if(!g){break f}k=f+176|0;h=q+B(o,80)|0;J9(q+960|0,0,960);g:{if(o>>>0>12){break g}A=12-o|0;d=o&3;if(d){while(1){c=h+B(A,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;A=A+1|0;H=H+1|0;if((d|0)!=(H|0)){continue}break}}if(o-1>>>0<3){break g}while(1){c=h+B(A,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;v[c+140>>2]=2139095039;v[c+124>>2]=-8388609;v[c+204>>2]=-8388609;v[c+220>>2]=2139095039;v[c+284>>2]=-8388609;v[c+300>>2]=2139095039;A=A+4|0;if((A|0)!=12){continue}break}}v[f+176>>2]=1065353216;v[f+180>>2]=1065353216;v[f+184>>2]=1065353216;v[f+188>>2]=1065353216;v[f+320>>2]=0;c=f+312|0;v[c>>2]=0;v[c+4>>2]=0;G=Ba[g|0](h,c,12,k,v[Q+56>>2],f+220|0,f+248|0,w[f+311|0],f+324|0,f+336|0)|0;if(!G){break f}v[f+288>>2]=G;v[f+284>>2]=h;if(w[v[f+196>>2]+62|0]){v[f+180>>2]=0}if(w[v[f+200>>2]+62|0]){v[f+188>>2]=0}h=v[Q+68>>2];if(!h){break f}k=f+352|0;g=o+G|0;l=q+B(g,80)|0;A=12-G|0;J9(l+B(A,80)|0,0,960);h:{if(G>>>0>12){break h}d=G&3;if(d){H=0;while(1){c=l+B(A,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;A=A+1|0;H=H+1|0;if((d|0)!=(H|0)){continue}break}}if(G-1>>>0<3){break h}while(1){c=l+B(A,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;v[c+140>>2]=2139095039;v[c+124>>2]=-8388609;v[c+204>>2]=-8388609;v[c+220>>2]=2139095039;v[c+284>>2]=-8388609;v[c+300>>2]=2139095039;A=A+4|0;if((A|0)!=12){continue}break}}v[f+352>>2]=1065353216;v[f+356>>2]=1065353216;v[f+360>>2]=1065353216;v[f+364>>2]=1065353216;v[f+496>>2]=0;c=f+488|0;v[c>>2]=0;v[c+4>>2]=0;j=Ba[h|0](l,c,12,k,v[Q+72>>2],f+396|0,f+424|0,w[f+487|0],f+500|0,f+512|0)|0;if(!j){break f}v[f+464>>2]=j;v[f+460>>2]=l;if(w[v[f+372>>2]+62|0]){v[f+356>>2]=0}if(w[v[f+376>>2]+62|0]){v[f+364>>2]=0}h=v[Q+84>>2];if(!h){break f}k=f+528|0;l=q+B(g+j|0,80)|0;H=12-j|0;J9(l+B(H,80)|0,0,960);i:{if(j>>>0>12){break i}d=j&3;if(d){g=0;while(1){c=l+B(H,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;H=H+1|0;g=g+1|0;if((d|0)!=(g|0)){continue}break}}if(j-1>>>0<3){break i}while(1){c=l+B(H,80)|0;v[c+60>>2]=2139095039;v[c+44>>2]=-8388609;v[c+140>>2]=2139095039;v[c+124>>2]=-8388609;v[c+204>>2]=-8388609;v[c+220>>2]=2139095039;v[c+284>>2]=-8388609;v[c+300>>2]=2139095039;H=H+4|0;if((H|0)!=12){continue}break}}v[f+528>>2]=1065353216;v[f+532>>2]=1065353216;v[f+536>>2]=1065353216;v[f+540>>2]=1065353216;v[f+672>>2]=0;c=f+664|0;v[c>>2]=0;v[c+4>>2]=0;d=Ba[h|0](l,c,12,k,v[Q+88>>2],f+572|0,f+600|0,w[f+663|0],f+676|0,f+688|0)|0;if(!d){break f}e=o>>>0>>0?G:o;c=e>>>0>>0?j:e;e=c>>>0>>0;v[f+640>>2]=d;v[f+636>>2]=l;if(w[v[f+548>>2]+62|0]){v[f+532>>2]=0}if(w[v[f+552>>2]+62|0]){v[f+540>>2]=0}Yb=e?d:c;c=0;A=0;W=xa-1744|0;xa=W;g=v[f+108>>2];k=v[f+112>>2];j:{if(!k){break j}if((k|0)!=1){e=k&-2;while(1){d=g+B(c,80)|0;k:{if(!(w[d+76|0]&64)){break k}H=1024;l:{switch(x[d+78>>1]-2048|0){case 1:H=1025;break;case 0:break l;default:break k}}u[d+78>>1]=H}d=g+B(c|1,80)|0;m:{if(!(w[d+76|0]&64)){break m}H=1024;n:{switch(x[d+78>>1]-2048|0){case 1:H=1025;break;case 0:break n;default:break m}}u[d+78>>1]=H}c=c+2|0;A=A+2|0;if((e|0)!=(A|0)){continue}break}}if(!(k&1)){break j}e=g+B(c,80)|0;if(!(w[e+76|0]&64)){break j}A=1024;o:{switch(x[e+78>>1]-2048|0){case 1:A=1025;break;case 0:break o;default:break j}}u[e+78>>1]=A}c=0;e=W+1552|0;py(e,g,W+784|0,W+16|0,k,v[f+28>>2]+28|0,v[f+32>>2]+28|0,z[v[f+36>>2]+32>>2],z[v[f+40>>2]+32>>2],f,w[f+132|0],w[f+133|0],0);k=f+176|0;l=v[f+284>>2];Eb=v[f+112>>2];d=e+(Eb<<2)|0;h=v[f+288>>2];p:{if(!h){break p}if((h|0)!=1){e=h&-2;A=0;while(1){g=l+B(c,80)|0;q:{if(!(w[g+76|0]&64)){break q}H=1025;r:{switch(x[g+78>>1]-2048|0){case 0:H=1024;break;case 1:break r;default:break q}}u[g+78>>1]=H}g=l+B(c|1,80)|0;s:{if(!(w[g+76|0]&64)){break s}H=1025;t:{switch(x[g+78>>1]-2048|0){case 0:H=1024;break;case 1:break t;default:break s}}u[g+78>>1]=H}c=c+2|0;A=A+2|0;if((e|0)!=(A|0)){continue}break}}if(!(h&1)){break p}e=l+B(c,80)|0;if(!(w[e+76|0]&64)){break p}A=1025;u:{switch(x[e+78>>1]-2048|0){case 0:A=1024;break;case 1:break u;default:break p}}u[e+78>>1]=A}c=0;e=Eb<<4;py(d,l,e+(W+784|0)|0,e+(W+16|0)|0,h,v[f+204>>2]+28|0,v[f+208>>2]+28|0,z[v[f+212>>2]+32>>2],z[v[f+216>>2]+32>>2],k,w[f+308|0],w[f+309|0],0);k=f+352|0;l=v[f+460>>2];Fb=v[f+288>>2]+Eb|0;d=(W+1552|0)+(Fb<<2)|0;h=v[f+464>>2];v:{if(!h){break v}if((h|0)!=1){e=h&-2;A=0;while(1){g=l+B(c,80)|0;w:{if(!(w[g+76|0]&64)){break w}H=1025;x:{switch(x[g+78>>1]-2048|0){case 0:H=1024;break;case 1:break x;default:break w}}u[g+78>>1]=H}g=l+B(c|1,80)|0;y:{if(!(w[g+76|0]&64)){break y}H=1025;z:{switch(x[g+78>>1]-2048|0){case 0:H=1024;break;case 1:break z;default:break y}}u[g+78>>1]=H}c=c+2|0;A=A+2|0;if((e|0)!=(A|0)){continue}break}}if(!(h&1)){break v}e=l+B(c,80)|0;if(!(w[e+76|0]&64)){break v}A=1025;A:{switch(x[e+78>>1]-2048|0){case 0:A=1024;break;case 1:break A;default:break v}}u[e+78>>1]=A}c=0;e=Fb<<4;py(d,l,e+(W+784|0)|0,e+(W+16|0)|0,h,v[f+380>>2]+28|0,v[f+384>>2]+28|0,z[v[f+388>>2]+32>>2],z[v[f+392>>2]+32>>2],k,w[f+484|0],w[f+485|0],0);g=f+528|0;j=v[f+636>>2];e=v[f+464>>2]+Fb|0;k=(W+1552|0)+(e<<2)|0;l=v[f+640>>2];B:{if(!l){break B}if((l|0)!=1){d=l&-2;A=0;while(1){h=j+B(c,80)|0;C:{if(!(w[h+76|0]&64)){break C}H=1025;D:{switch(x[h+78>>1]-2048|0){case 0:H=1024;break;case 1:break D;default:break C}}u[h+78>>1]=H}h=j+B(c|1,80)|0;E:{if(!(w[h+76|0]&64)){break E}H=1025;F:{switch(x[h+78>>1]-2048|0){case 0:H=1024;break;case 1:break F;default:break E}}u[h+78>>1]=H}c=c+2|0;A=A+2|0;if((d|0)!=(A|0)){continue}break}}if(!(l&1)){break B}c=j+B(c,80)|0;if(!(w[c+76|0]&64)){break B}A=1025;G:{switch(x[c+78>>1]-2048|0){case 0:A=1024;break;case 1:break G;default:break B}}u[c+78>>1]=A}c=0;d=e<<4;py(k,j,d+(W+784|0)|0,d+(W+16|0)|0,l,v[f+556>>2]+28|0,v[f+560>>2]+28|0,z[v[f+564>>2]+32>>2],z[v[f+568>>2]+32>>2],g,w[f+660|0],w[f+661|0],0);g=v[f+640>>2];A=1;k=B(Yb,368);d=Ba[v[v[m>>2]>>2]](m,k+656|0)|0;H:{if(d+1>>>0<2){e=v[f+16>>2];u[e+22>>1]=0;v[e+24>>2]=0;v[e+28>>2]=v[f+128>>2];e=v[f+192>>2];u[e+22>>1]=0;v[e+24>>2]=0;v[e+28>>2]=v[f+304>>2];e=v[f+368>>2];u[e+22>>1]=0;v[e+24>>2]=0;v[e+28>>2]=v[f+480>>2];e=v[f+544>>2];u[e+22>>1]=0;v[e+24>>2]=0;v[e+28>>2]=v[f+656>>2];break H}v[Q>>2]=e+g;fb=w[v[f+552>>2]+62|0];s=w[v[f+548>>2]+62|0];ca=w[v[f+376>>2]+62|0];ta=w[v[f+372>>2]+62|0];H=w[v[f+200>>2]+62|0];ia=w[v[f+196>>2]+62|0];U=w[v[f+24>>2]+62|0];R=w[v[f+20>>2]+62|0];c=v[f+16>>2];k=k+640>>>4|0;u[c+22>>1]=k;v[c+24>>2]=d;v[c+28>>2]=v[f+128>>2];c=v[f+192>>2];u[c+22>>1]=k;v[c+24>>2]=d;v[c+28>>2]=v[f+304>>2];c=v[f+368>>2];u[c+22>>1]=k;v[c+24>>2]=d;v[c+28>>2]=v[f+480>>2];c=v[f+544>>2];u[c+22>>1]=k;v[c+24>>2]=d;v[c+28>>2]=v[f+656>>2];ne=z[f+648>>2];oe=z[f+472>>2];pe=z[f+296>>2];qe=z[f+644>>2];re=z[f+468>>2];se=z[f+292>>2];te=z[f+672>>2];ue=z[f+668>>2];ve=z[f+664>>2];Xa=z[f+496>>2];Ya=z[f+492>>2];Za=z[f+488>>2];_a=z[f+320>>2];qa=z[f+316>>2];Aa=z[f+312>>2];da=z[f+144>>2];V=z[f+140>>2];ea=z[f+540>>2];fa=z[f+364>>2];ga=z[f+188>>2];ja=z[f+532>>2];X=z[f+356>>2];Y=z[f+180>>2];qb=z[v[f+212>>2]+32>>2];Ja=z[v[f+388>>2]+32>>2];rb=z[v[f+564>>2]+32>>2];$a=z[f+184>>2];ab=z[v[f+216>>2]+32>>2];bb=z[f+360>>2];cb=z[v[f+392>>2]+32>>2];db=z[f+536>>2];ka=z[v[f+568>>2]+32>>2];la=z[f+136>>2];ma=z[f+12>>2];Z=z[f+4>>2];S=z[f>>2];L=z[v[f+36>>2]+32>>2];p=z[f+176>>2];D=z[f+352>>2];O=z[f+528>>2];J=z[f+8>>2];N=z[v[f+40>>2]+32>>2];E=z[f+116>>2];b=z[f+120>>2];t[d+12|0]=E!=C(34028234663852886e22)|b!=C(34028234663852886e22);t[d+13|0]=z[f+292>>2]==C(34028234663852886e22)?z[f+296>>2]!=C(34028234663852886e22):1;t[d+14|0]=z[f+468>>2]==C(34028234663852886e22)?z[f+472>>2]!=C(34028234663852886e22):1;A=z[f+644>>2]==C(34028234663852886e22)?z[f+648>>2]!=C(34028234663852886e22):A;c=d+640|0;z[d+112>>2]=la;z[d+96>>2]=ma;z[d+80>>2]=Z;we=C(J*N);z[d+64>>2]=we;xe=C(S*L);z[d+48>>2]=xe;z[d+156>>2]=te;z[d+152>>2]=Xa;z[d+148>>2]=_a;z[d+144>>2]=da;z[d+140>>2]=ue;z[d+136>>2]=Ya;z[d+132>>2]=qa;z[d+128>>2]=V;z[d+124>>2]=ve;z[d+120>>2]=Za;z[d+116>>2]=Aa;z[d+108>>2]=ea;z[d+104>>2]=fa;z[d+100>>2]=ga;z[d+92>>2]=ja;z[d+88>>2]=X;z[d+84>>2]=Y;sb=C(db*ka);z[d+76>>2]=sb;yc=C(bb*cb);z[d+72>>2]=yc;zc=C($a*ab);z[d+68>>2]=zc;Ac=C(O*rb);z[d+60>>2]=Ac;Bc=C(D*Ja);z[d+56>>2]=Bc;Cc=C(p*qb);z[d+52>>2]=Cc;t[d+15|0]=A;z[d+16>>2]=E*eb;v[d+4>>2]=Yb;z[d+20>>2]=se*eb;z[d+24>>2]=re*eb;z[d+28>>2]=qe*eb;z[d+32>>2]=b*eb;z[d+36>>2]=pe*eb;z[d+40>>2]=oe*eb;z[d+44>>2]=ne*eb;t[d|0]=9;t[d+8|0]=v[f+112>>2];t[d+9|0]=v[f+288>>2];t[d+10|0]=v[f+464>>2];t[d+11|0]=v[f+640>>2];Nb=v[f+568>>2];Rc=z[Nb+24>>2];Sc=z[Nb+20>>2];Oa=v[f+564>>2];Tc=z[Oa+24>>2];Dc=z[Oa+20>>2];Ga=v[f+392>>2];Ec=z[Ga+24>>2];Fc=z[Ga+20>>2];n=v[f+388>>2];Gc=z[n+24>>2];Hc=z[n+20>>2];T=v[f+216>>2];Ic=z[T+24>>2];Jc=z[T+20>>2];M=v[f+212>>2];Kc=z[M+24>>2];Gb=z[M+20>>2];r=v[f+40>>2];Hb=z[r+24>>2];Ib=z[r+20>>2];q=v[f+36>>2];Jb=z[q+24>>2];Ha=z[q+20>>2];ra=z[f+152>>2];o=v[f+28>>2];sa=z[o+20>>2];ua=z[f+328>>2];G=v[f+204>>2];Uc=z[G+20>>2];Vc=z[f+504>>2];j=v[f+380>>2];Wc=z[j+20>>2];Xc=z[f+680>>2];l=v[f+556>>2];Yc=z[l+20>>2];Zc=z[f+156>>2];_c=z[o+24>>2];$c=z[f+332>>2];ad=z[G+24>>2];bd=z[f+508>>2];cd=z[j+24>>2];Ad=z[f+684>>2];Bd=z[l+24>>2];Cd=z[f+164>>2];m=v[f+32>>2];Dd=z[m+20>>2];Ed=z[f+340>>2];h=v[f+208>>2];Fd=z[h+20>>2];Gd=z[f+516>>2];g=v[f+384>>2];Hd=z[g+20>>2];Id=z[f+692>>2];k=v[f+560>>2];Jd=z[k+20>>2];Kd=z[f+168>>2];Ld=z[m+24>>2];V=z[f+344>>2];qb=z[h+24>>2];Ja=z[f+520>>2];rb=z[g+24>>2];$a=z[f+696>>2];ab=z[k+24>>2];bb=z[f+324>>2];cb=z[G+16>>2];db=z[f+500>>2];ka=z[j+16>>2];la=z[f+676>>2];S=z[l+16>>2];L=z[f+336>>2];p=z[h+16>>2];D=z[f+512>>2];O=z[g+16>>2];Vf=z[Nb+16>>2];Wf=z[Oa+16>>2];Xf=z[Nb+8>>2];Yf=z[Nb+4>>2];Zf=z[Nb>>2];_f=z[Oa+8>>2];$f=z[Oa+4>>2];ag=z[Oa>>2];bg=z[Ga+16>>2];cg=z[n+16>>2];dg=z[Ga+8>>2];eg=z[Ga+4>>2];fg=z[Ga>>2];gg=z[n+8>>2];hg=z[n+4>>2];ig=z[n>>2];ne=z[T+16>>2];oe=z[M+16>>2];pe=z[T+8>>2];qe=z[T+4>>2];re=z[T>>2];se=z[M+8>>2];te=z[M+4>>2];ue=z[M>>2];ve=z[r+16>>2];Xa=z[q+16>>2];Ya=z[r+8>>2];Za=z[r+4>>2];_a=z[r>>2];qa=z[q+8>>2];Aa=z[q+4>>2];da=z[q>>2];J=z[f+148>>2];N=z[o+16>>2];E=z[f+160>>2];b=z[m+16>>2];z[d+220>>2]=z[f+688>>2]-z[k+16>>2];z[d+216>>2]=D-O;z[d+212>>2]=L-p;z[d+208>>2]=E-b;z[d+172>>2]=la-S;z[d+168>>2]=db-ka;z[d+164>>2]=bb-cb;z[d+160>>2]=J-N;z[d+252>>2]=$a-ab;z[d+248>>2]=Ja-rb;z[d+244>>2]=V-qb;z[d+240>>2]=Kd-Ld;z[d+236>>2]=Id-Jd;z[d+232>>2]=Gd-Hd;z[d+228>>2]=Ed-Fd;z[d+224>>2]=Cd-Dd;z[d+204>>2]=Ad-Bd;z[d+200>>2]=bd-cd;z[d+196>>2]=$c-ad;z[d+192>>2]=Zc-_c;z[d+188>>2]=Xc-Yc;z[d+184>>2]=Vc-Wc;z[d+180>>2]=ua-Uc;z[d+176>>2]=ra-sa;m=v[f+288>>2];h=v[f+464>>2];g=v[f+640>>2];k=v[f+112>>2];v[d+264>>2]=0;v[d+268>>2]=0;v[d+256>>2]=0;v[d+260>>2]=0;v[d+304>>2]=0;v[d+308>>2]=0;v[d+312>>2]=0;v[d+316>>2]=0;v[d+352>>2]=0;v[d+356>>2]=0;v[d+360>>2]=0;v[d+364>>2]=0;v[d+400>>2]=0;v[d+404>>2]=0;v[d+408>>2]=0;v[d+412>>2]=0;v[d+448>>2]=0;v[d+452>>2]=0;v[d+456>>2]=0;v[d+460>>2]=0;v[d+496>>2]=0;v[d+500>>2]=0;v[d+504>>2]=0;v[d+508>>2]=0;v[d+544>>2]=0;v[d+548>>2]=0;v[d+552>>2]=0;v[d+556>>2]=0;v[d+600>>2]=0;v[d+604>>2]=0;v[d+592>>2]=0;v[d+596>>2]=0;v[d+280>>2]=0;v[d+284>>2]=0;v[d+272>>2]=0;v[d+276>>2]=0;v[d+328>>2]=0;v[d+332>>2]=0;v[d+320>>2]=0;v[d+324>>2]=0;v[d+368>>2]=0;v[d+372>>2]=0;v[d+376>>2]=0;v[d+380>>2]=0;v[d+416>>2]=0;v[d+420>>2]=0;v[d+424>>2]=0;v[d+428>>2]=0;v[d+464>>2]=0;v[d+468>>2]=0;v[d+472>>2]=0;v[d+476>>2]=0;v[d+512>>2]=0;v[d+516>>2]=0;v[d+520>>2]=0;v[d+524>>2]=0;v[d+560>>2]=0;v[d+564>>2]=0;v[d+568>>2]=0;v[d+572>>2]=0;v[d+608>>2]=0;v[d+612>>2]=0;v[d+616>>2]=0;v[d+620>>2]=0;v[d+296>>2]=0;v[d+300>>2]=0;v[d+288>>2]=0;v[d+292>>2]=0;v[d+344>>2]=0;v[d+348>>2]=0;v[d+336>>2]=0;v[d+340>>2]=0;v[d+392>>2]=0;v[d+396>>2]=0;v[d+384>>2]=0;v[d+388>>2]=0;v[d+440>>2]=0;v[d+444>>2]=0;v[d+432>>2]=0;v[d+436>>2]=0;v[d+488>>2]=0;v[d+492>>2]=0;v[d+480>>2]=0;v[d+484>>2]=0;v[d+536>>2]=0;v[d+540>>2]=0;v[d+528>>2]=0;v[d+532>>2]=0;v[d+584>>2]=0;v[d+588>>2]=0;v[d+576>>2]=0;v[d+580>>2]=0;v[d+632>>2]=0;v[d+636>>2]=0;v[d+624>>2]=0;v[d+628>>2]=0;if(Yb){Lc=d+592|0;_b=d+544|0;tb=d+496|0;wb=d+448|0;Tb=d+400|0;Qb=d+352|0;Qc=d+304|0;dd=d+256|0;M=k-1|0;r=(e+g|0)-1|0;q=(h+Fb|0)-1|0;o=(m+Eb|0)-1|0;_=eb>2];ya=v[d+(Eb<<2)>>2];Se=x[ya+76>>1];Pa=C(1);ha=v[d+($b<<2)>>2];m=x[ha+76>>1];Pa=m&32?w[f+134|0]?_:C(1):Pa;za=v[(W+1552|0)+(e<<2)>>2];ye=x[wa+76>>1];Qa=C(1);Ra=C(1);Ra=Se&32?w[f+310|0]?_:C(1):Ra;Ob=x[za+76>>1];Qa=ye&32?w[f+486|0]?_:C(1):Qa;ze=v[f+640>>2];Nb=v[f+464>>2];Oa=v[f+288>>2];Ga=v[f+112>>2];ub=C(1);ub=Ob&32?w[f+662|0]?_:C(1):ub;g=e<<4;Md=W+16|0;n=g+Md|0;oa=z[n+4>>2];pa=z[n>>2];k=Fb<<4;T=k+Md|0;$=z[T+4>>2];aa=z[T>>2];d=Eb<<4;h=d+Md|0;ba=z[h+4>>2];P=z[h>>2];Nd=W+784|0;g=Nd+g|0;ua=z[g+4>>2];Uc=z[g>>2];k=k+Nd|0;Vc=z[k+4>>2];Wc=z[k>>2];d=d+Nd|0;Xc=z[d+4>>2];Yc=z[d>>2];ed=z[n+8>>2];fd=z[T+8>>2];gd=z[h+8>>2];Zc=z[g+8>>2];_c=z[k+8>>2];$c=z[d+8>>2];d=$b<<4;k=d+Md|0;hd=z[k+8>>2];id=z[k+4>>2];jd=z[k>>2];d=d+Nd|0;ad=z[d+8>>2];bd=z[d+4>>2];cd=z[d>>2];V=z[ha+52>>2];qb=z[ya+52>>2];Ja=z[wa+52>>2];rb=z[za+52>>2];$a=z[ha+56>>2];ab=z[ya+56>>2];bb=z[wa+56>>2];cb=z[za+56>>2];Ad=z[ha+20>>2];Bd=z[ya+20>>2];Cd=z[wa+20>>2];Dd=z[za+20>>2];Ed=z[ha+24>>2];Fd=z[ya+24>>2];Gd=z[wa+24>>2];Hd=z[za+24>>2];db=z[ha+48>>2];ka=z[ya+48>>2];la=z[wa+48>>2];S=z[za+48>>2];L=z[ha+44>>2];p=z[ya+44>>2];D=z[wa+44>>2];O=z[za+44>>2];J=z[ha+60>>2];N=z[ya+60>>2];E=z[wa+60>>2];b=z[za+60>>2];Id=z[ha+16>>2];Jd=z[ya+16>>2];Kd=z[wa+16>>2];Ld=z[za+16>>2];kd=z[ha>>2];ld=z[ya>>2];md=z[wa>>2];nd=z[za>>2];od=z[ha+4>>2];pd=z[ya+4>>2];qd=z[wa+4>>2];rd=z[za+4>>2];sd=z[ha+8>>2];td=z[ya+8>>2];ud=z[wa+8>>2];vd=z[za+8>>2];v[c+360>>2]=0;v[c+364>>2]=0;v[c+352>>2]=0;v[c+356>>2]=0;h=Ob&64;z[c+348>>2]=h?C(1):C(0);g=ye&64;z[c+344>>2]=g?C(1):C(0);k=Se&64;z[c+340>>2]=k?C(1):C(0);d=m&64;z[c+336>>2]=d?C(1):C(0);Ob=A>>>0>>0;z[c+44>>2]=Ob?vd:C(0);n=A>>>0>>0;z[c+40>>2]=n?ud:C(0);T=A>>>0>>0;z[c+36>>2]=T?td:C(0);m=A>>>0>>0;z[c+32>>2]=m?sd:C(0);z[c+28>>2]=Ob?rd:C(0);z[c+24>>2]=n?qd:C(0);z[c+20>>2]=T?pd:C(0);z[c+16>>2]=m?od:C(0);z[c+12>>2]=Ob?nd:C(0);z[c+8>>2]=n?md:C(0);z[c+4>>2]=T?ld:C(0);z[c>>2]=m?kd:C(0);h=!h|A>>>0>=ze>>>0;z[c+172>>2]=h?C(0):Hd;g=!g|A>>>0>=Nb>>>0;z[c+168>>2]=g?C(0):Gd;k=!k|A>>>0>=Oa>>>0;z[c+164>>2]=k?C(0):Fd;d=!d|A>>>0>=Ga>>>0;z[c+160>>2]=d?C(0):Ed;z[c+156>>2]=h?C(0):Dd;z[c+152>>2]=g?C(0):Cd;z[c+148>>2]=k?C(0):Bd;z[c+144>>2]=d?C(0):Ad;z[c+140>>2]=h?C(0):Ld;z[c+136>>2]=g?C(0):Kd;z[c+132>>2]=k?C(0):Jd;z[c+128>>2]=d?C(0):Id;z[c+300>>2]=ub*b;z[c+296>>2]=Qa*E;z[c+292>>2]=Ra*N;z[c+288>>2]=Pa*J;z[c+284>>2]=ub*O;z[c+280>>2]=Qa*D;z[c+276>>2]=Ra*p;z[c+272>>2]=Pa*L;v[c+304>>2]=0;v[c+308>>2]=0;v[c+312>>2]=0;v[c+316>>2]=0;wd=z[ha+36>>2];xd=z[ya+36>>2];yd=z[wa+36>>2];Zb=z[za+36>>2];ra=z[ha+40>>2];sa=z[ya+40>>2];L=z[wa+40>>2];p=z[za+40>>2];D=z[ha+32>>2];O=z[ya+32>>2];J=z[wa+32>>2];N=z[za+32>>2];z[c+236>>2]=h?C(0):cb;z[c+232>>2]=g?C(0):bb;z[c+228>>2]=k?C(0):ab;z[c+224>>2]=d?C(0):$a;z[c+220>>2]=h?C(0):rb;z[c+216>>2]=g?C(0):Ja;z[c+212>>2]=k?C(0):qb;z[c+208>>2]=d?C(0):V;z[c+204>>2]=h?C(0):S;z[c+200>>2]=g?C(0):la;z[c+196>>2]=k?C(0):ka;z[c+192>>2]=d?C(0):db;z[c+108>>2]=Ob?p:C(0);z[c+104>>2]=n?L:C(0);z[c+100>>2]=T?sa:C(0);z[c+96>>2]=m?ra:C(0);z[c+92>>2]=Ob?Zb:C(0);z[c+88>>2]=n?yd:C(0);z[c+84>>2]=T?xd:C(0);z[c+80>>2]=m?wd:C(0);z[c+76>>2]=Ob?N:C(0);z[c+72>>2]=n?J:C(0);z[c+68>>2]=T?O:C(0);z[c+64>>2]=m?D:C(0);m=c+240|0;h=c+176|0;g=c+320|0;n=c+48|0;k=c+112|0;d=c+256|0;I:{J:{if(y[f+112>>2]<=A>>>0){v[n>>2]=0;v[k>>2]=0;v[g>>2]=0;v[h>>2]=0;v[m>>2]=0;v[W>>2]=0;b=C(0);break J}E=C(C(C(da*kd)+C(C(Aa*od)+C(qa*sd)))+C(C(Xa*Id)+C(C(Ha*Ad)+C(Jb*Ed))));b=C(C(C(ve*jd)+C(C(Ib*id)+C(Hb*hd)))+C(C(_a*D)+C(C(Za*wd)+C(Ya*ra))));oB(n,k,d,g,h,m,W,ha,C(E-b),C(C(C(Z*C(C(ad*ad)+C(C(cd*cd)+C(bd*bd))))+C(xe*C(C(sd*sd)+C(C(kd*kd)+C(od*od)))))+C(C(ma*C(C(hd*hd)+C(C(jd*jd)+C(id*id))))+C(we*C(C(ra*ra)+C(C(D*D)+C(wd*wd)))))),z[f+124>>2],C(1),le,eb,x[ha+76>>1]&64?C(100):na,pb,Sb);if(R){z[d>>2]=z[d>>2]-E}if(!U){break I}b=C(b+z[d>>2])}z[d>>2]=b}T=c+244|0;m=c+180|0;h=c+324|0;g=c+116|0;k=c+52|0;d=c+260|0;K:{L:{if(y[f+288>>2]<=A>>>0){v[k>>2]=0;v[g>>2]=0;v[h>>2]=0;v[m>>2]=0;v[T>>2]=0;v[W+4>>2]=0;b=C(0);break L}E=C(C(C(ue*ld)+C(C(te*pd)+C(se*td)))+C(C(oe*Jd)+C(C(Gb*Bd)+C(Kc*Fd))));b=C(C(C(ne*P)+C(C(Jc*ba)+C(Ic*gd)))+C(C(re*O)+C(C(qe*xd)+C(pe*sa))));oB(k,g,d,h,m,T,l,ya,C(E-b),C(C(C(Y*C(C($c*$c)+C(C(Yc*Yc)+C(Xc*Xc))))+C(Cc*C(C(td*td)+C(C(ld*ld)+C(pd*pd)))))+C(C(ga*C(C(gd*gd)+C(C(P*P)+C(ba*ba))))+C(zc*C(C(sa*sa)+C(C(O*O)+C(xd*xd)))))),z[f+300>>2],C(1),le,eb,x[ya+76>>1]&64?C(100):na,pb,Sb);if(ia){z[d>>2]=z[d>>2]-E}if(!H){break K}b=C(b+z[d>>2])}z[d>>2]=b}T=c+248|0;m=c+184|0;h=c+328|0;g=c+120|0;k=c+56|0;d=c+264|0;M:{N:{if(y[f+464>>2]<=A>>>0){v[k>>2]=0;v[g>>2]=0;v[h>>2]=0;v[m>>2]=0;v[T>>2]=0;v[W+8>>2]=0;b=C(0);break N}E=C(C(C(ig*md)+C(C(hg*qd)+C(gg*ud)))+C(C(cg*Kd)+C(C(Hc*Cd)+C(Gc*Gd))));b=C(C(C(bg*aa)+C(C(Fc*$)+C(Ec*fd)))+C(C(fg*J)+C(C(eg*yd)+C(dg*L))));oB(k,g,d,h,m,T,j,wa,C(E-b),C(C(C(X*C(C(_c*_c)+C(C(Wc*Wc)+C(Vc*Vc))))+C(Bc*C(C(ud*ud)+C(C(md*md)+C(qd*qd)))))+C(C(fa*C(C(fd*fd)+C(C(aa*aa)+C($*$))))+C(yc*C(C(L*L)+C(C(J*J)+C(yd*yd)))))),z[f+476>>2],C(1),le,eb,x[wa+76>>1]&64?C(100):na,pb,Sb);if(ta){z[d>>2]=z[d>>2]-E}if(!ca){break M}b=C(b+z[d>>2])}z[d>>2]=b}T=c+252|0;m=c+188|0;h=c+332|0;g=c+124|0;k=c+60|0;d=c+268|0;O:{P:{if(y[f+640>>2]<=A>>>0){v[k>>2]=0;v[g>>2]=0;v[h>>2]=0;v[m>>2]=0;v[T>>2]=0;v[W+12>>2]=0;b=C(0);break P}E=C(C(C(ag*nd)+C(C($f*rd)+C(_f*vd)))+C(C(Wf*Ld)+C(C(Dc*Dd)+C(Tc*Hd))));b=C(C(C(Vf*pa)+C(C(Sc*oa)+C(Rc*ed)))+C(C(Zf*N)+C(C(Yf*Zb)+C(Xf*p))));oB(k,g,d,h,m,T,G,za,C(E-b),C(C(C(ja*C(C(Zc*Zc)+C(C(Uc*Uc)+C(ua*ua))))+C(Ac*C(C(vd*vd)+C(C(nd*nd)+C(rd*rd)))))+C(C(ea*C(C(ed*ed)+C(C(pa*pa)+C(oa*oa))))+C(sb*C(C(p*p)+C(C(N*N)+C(Zb*Zb)))))),z[f+652>>2],C(1),le,eb,x[za+76>>1]&64?C(100):na,pb,Sb);if(s){z[d>>2]=z[d>>2]-E}if(!fb){break O}b=C(b+z[d>>2])}z[d>>2]=b}Ga=x[ha+78>>1];Q:{if(w[f+132|0]|y[f+112>>2]<=A>>>0){break Q}if((Ga|0)==1024){v[c+352>>2]=v[c+352>>2]|8;d=va<<4;z[d+dd>>2]=Z*cd;z[d+Qc>>2]=Z*bd;z[d+Qb>>2]=Z*ad;z[d+Tb>>2]=ma*jd;z[d+wb>>2]=ma*id;z[d+tb>>2]=ma*hd;z[d+_b>>2]=z[W>>2];z[d+Lc>>2]=z[n>>2];va=va+1|0;break Q}if(!(Ga&2048)){break Q}v[c+352>>2]=v[c+352>>2]|16}n=x[ya+78>>1];R:{if(w[f+308|0]|y[f+288>>2]<=A>>>0){break R}if((n|0)==1024){v[c+356>>2]=v[c+356>>2]|8;d=Wa<<4;z[(d+dd|0)+4>>2]=Y*Yc;z[(d+Qc|0)+4>>2]=Y*Xc;z[(d+Qb|0)+4>>2]=Y*$c;z[(d+Tb|0)+4>>2]=ga*P;z[(d+wb|0)+4>>2]=ga*ba;z[(d+tb|0)+4>>2]=ga*gd;z[(d+_b|0)+4>>2]=z[W+4>>2];z[(d+Lc|0)+4>>2]=z[c+52>>2];Wa=Wa+1|0;break R}if(!(n&2048)){break R}v[c+356>>2]=v[c+356>>2]|16}T=x[wa+78>>1];S:{if(w[f+484|0]|y[f+464>>2]<=A>>>0){break S}if((T|0)==1024){v[c+360>>2]=v[c+360>>2]|8;d=Lb<<4;z[(d+dd|0)+8>>2]=X*Wc;z[(d+Qc|0)+8>>2]=X*Vc;z[(d+Qb|0)+8>>2]=X*_c;z[(d+Tb|0)+8>>2]=fa*aa;z[(d+wb|0)+8>>2]=fa*$;z[(d+tb|0)+8>>2]=fa*fd;z[(d+_b|0)+8>>2]=z[W+8>>2];z[(d+Lc|0)+8>>2]=z[c+56>>2];Lb=Lb+1|0;break S}if(!(T&2048)){break S}v[c+360>>2]=v[c+360>>2]|16}m=x[za+78>>1];T:{if(w[f+660|0]|y[f+640>>2]<=A>>>0){break T}if((m|0)==1024){v[c+364>>2]=v[c+364>>2]|8;d=Mb<<4;z[(d+dd|0)+12>>2]=ja*Uc;z[(d+Qc|0)+12>>2]=ja*ua;z[(d+Qb|0)+12>>2]=ja*Zc;z[(d+Tb|0)+12>>2]=ea*pa;z[(d+wb|0)+12>>2]=ea*oa;z[(d+tb|0)+12>>2]=ea*ed;z[(d+_b|0)+12>>2]=z[W+12>>2];z[(d+Lc|0)+12>>2]=z[c+60>>2];Mb=Mb+1|0;break T}if(!(m&2048)){break T}v[c+364>>2]=v[c+364>>2]|16}h=x[ha+76>>1];if(h&16){v[c+352>>2]=v[c+352>>2]|2}g=x[ya+76>>1];if(g&16){v[c+356>>2]=v[c+356>>2]|2}k=x[wa+76>>1];if(k&16){v[c+360>>2]=v[c+360>>2]|2}d=x[za+76>>1];if(d&16){v[c+364>>2]=v[c+364>>2]|2}if(h&8){v[c+352>>2]=v[c+352>>2]|4}if(g&8){v[c+356>>2]=v[c+356>>2]|4}if(k&8){v[c+360>>2]=v[c+360>>2]|4}if(d&8){v[c+364>>2]=v[c+364>>2]|4}if(Ga&1){v[c+352>>2]=v[c+352>>2]|64}if(n&1){v[c+356>>2]=v[c+356>>2]|64}if(T&1){v[c+360>>2]=v[c+360>>2]|64}if(m&1){v[c+364>>2]=v[c+364>>2]|64}c=c+368|0;e=((e|0)!=(r|0))+e|0;Fb=((q|0)!=(Fb|0))+Fb|0;Eb=((o|0)!=(Eb|0))+Eb|0;$b=((M|0)!=($b|0))+$b|0;A=A+1|0;if((Yb|0)!=(A|0)){continue}break}}v[c>>2]=0;v[c+4>>2]=0;c=2}xa=W+1744|0;e=c}xa=me+3840|0}else{e=1}if((e|0)==2){break a}e=0;if(Na){break a}while(1){pB((Q+32|0)+(e<<4)|0,(Q+96|0)+B(e,176)|0,Q+808|0,le,eb,pb,Sb,z[Kb+612>>2]);e=e+1|0;if((Pc|0)!=(e|0)){continue}break}break a}e=x[Yb+4>>1]}if((e&65535)==4){d=Q+32|0;Te=z[Kb+84>>2];N=z[Kb+88>>2];J=z[Kb+100>>2];F=z[Kb+92>>2];Wa=Q+808|0;G=0;gb=xa-32|0;xa=gb;i=Q+96|0;u[v[i+16>>2]+22>>1]=0;u[v[i+192>>2]+22>>1]=0;u[v[i+368>>2]+22>>1]=0;u[v[i+544>>2]+22>>1]=0;v[Oc+4112>>2]=0;n=Oc+4128|0;g=Oc+16|0;k=1;U:{while(1){h=i+B(G,176)|0;c=v[Oc+4112>>2];v[h+112>>2]=g+(c<<6);e=v[d+(G<<2)>>2];if(c+w[e+12|0]>>>0>64|z[h+164>>2]!=C(0)|z[h+168>>2]!=C(0)){break U}t[gb+31|0]=0;t[gb+30|0]=0;E=z[v[h+36>>2]+12>>2];b=z[v[h+40>>2]+12>>2];e=uy(g,e,gb+31|0,gb+30|0,gb+24|0,gb+20|0,gb+16|0,gb+12|0,b>E?E:b);if(!e|w[gb+30|0]){break U}v[h+116>>2]=e;t[h+120|0]=w[gb+31|0];z[h>>2]=z[gb+24>>2]*z[h>>2];z[h+8>>2]=z[gb+20>>2]*z[h+8>>2];z[h+4>>2]=z[h+4>>2]*(w[v[h+20>>2]+62|0]?C(0):z[gb+16>>2]);z[h+12>>2]=z[h+12>>2]*(w[v[h+24>>2]+62|0]?C(0):z[gb+12>>2]);G=G+1|0;if((G|0)!=4){continue}break}m=0;ia=0;j=0;U=0;H=0;r=0;Na=0;q=0;Pb=0;Od=0;Ae=0;Be=0;f=0;Eb=0;Fb=0;$b=0;Lc=0;I=xa-160|0;xa=I;v[n+7684>>2]=0;v[n+7688>>2]=0;l=n+7296|0;V:{while(1){e=U<<2;o=i+B(U,176)|0;z[e+(I+144|0)>>2]=z[o>>2];z[e+(I+128|0)>>2]=z[o+8>>2];z[e+(I+112|0)>>2]=z[o+4>>2];z[e+(I+96|0)>>2]=z[o+12>>2];v[o+144>>2]=m;W:{if(w[o+121|0]){break W}if(vy(n,v[o+132>>2],w[o+136|0],o+44|0,o+72|0,J)){break W}g=1;break V}v[o+152>>2]=v[n+7684>>2];g=1;if(!aA(n,v[o+112>>2],v[o+116>>2])){break V}d=v[o+152>>2];u[o+156>>1]=v[n+7684>>2]-d;c=o+44|0;e=o+72|0;if(bA(n,v[o+112>>2],c,e,d,v[o+144>>2])){break V}cA(n,v[o+112>>2],c,e,J,v[o+144>>2],C(z[o+124>>2]+N));m=v[n+7688>>2];h=m;G=v[o+144>>2];if(h>>>0>G>>>0){while(1){e=h-1|0;if(v[(n+(e<<2)|0)+7424>>2]==65535){if(h>>>0>>0){while(1){d=n+7424|0;k=h<<2;c=k-4|0;v[d+c>>2]=v[d+k>>2];v[c+l>>2]=v[k+l>>2];h=h+1|0;m=v[n+7688>>2];if(h>>>0>>0){continue}break}G=v[o+144>>2]}m=m-1|0;v[n+7688>>2]=m}h=e;if(e>>>0>G>>>0){continue}break}}v[o+148>>2]=m-G;U=U+1|0;if((U|0)!=4){continue}break}U=0;m=0;h=v[i+144>>2];d=v[i+148>>2];X:{if(h>>>0>=d+h>>>0){break X}G=0;if(d-1>>>0>=3){e=d&-4;while(1){c=n+(h<<2)|0;m=((((v[c+7424>>2]!=65535)+m|0)+(v[c+7428>>2]!=65535)|0)+(v[c+7432>>2]!=65535)|0)+(v[c+7436>>2]!=65535)|0;h=h+4|0;ia=ia+4|0;if((e|0)!=(ia|0)){continue}break}}e=d&3;if(e){while(1){m=(v[(n+(h<<2)|0)+7424>>2]!=65535)+m|0;h=h+1|0;G=G+1|0;if((e|0)!=(G|0)){continue}break}}e=B(m,104)+15&-16;if(!e){break X}g=0;U=Ba[v[v[Wa>>2]+4>>2]](Wa,e)|0;if(U+1>>>0<2){break V}}h=v[i+320>>2];d=v[i+324>>2];Y:{if(h>>>0>=d+h>>>0){break Y}ia=0;if(d-1>>>0>=3){e=d&-4;g=0;while(1){c=n+(h<<2)|0;r=((((v[c+7424>>2]!=65535)+r|0)+(v[c+7428>>2]!=65535)|0)+(v[c+7432>>2]!=65535)|0)+(v[c+7436>>2]!=65535)|0;h=h+4|0;g=g+4|0;if((e|0)!=(g|0)){continue}break}}e=d&3;if(e){while(1){r=(v[(n+(h<<2)|0)+7424>>2]!=65535)+r|0;h=h+1|0;ia=ia+1|0;if((e|0)!=(ia|0)){continue}break}}e=B(r,104)+15&-16;if(!e){break Y}g=0;H=Ba[v[v[Wa>>2]+4>>2]](Wa,e)|0;if(H+1>>>0<2){break V}}G=0;h=v[i+496>>2];d=v[i+500>>2];Z:{if(h>>>0>=d+h>>>0){break Z}g=0;if(d-1>>>0>=3){e=d&-4;while(1){c=n+(h<<2)|0;G=((((v[c+7424>>2]!=65535)+G|0)+(v[c+7428>>2]!=65535)|0)+(v[c+7432>>2]!=65535)|0)+(v[c+7436>>2]!=65535)|0;h=h+4|0;Na=Na+4|0;if((e|0)!=(Na|0)){continue}break}}e=d&3;if(e){while(1){G=(v[(n+(h<<2)|0)+7424>>2]!=65535)+G|0;h=h+1|0;g=g+1|0;if((e|0)!=(g|0)){continue}break}}e=B(G,104)+15&-16;if(!e){break Z}g=0;q=Ba[v[v[Wa>>2]+4>>2]](Wa,e)|0;if(q+1>>>0<2){break V}}ia=0;h=v[i+672>>2];d=v[i+676>>2];_:{if(h>>>0>=d+h>>>0){break _}Na=0;if(d-1>>>0>=3){e=d&-4;k=0;while(1){c=n+(h<<2)|0;ia=((((v[c+7424>>2]!=65535)+ia|0)+(v[c+7428>>2]!=65535)|0)+(v[c+7432>>2]!=65535)|0)+(v[c+7436>>2]!=65535)|0;h=h+4|0;k=k+4|0;if((e|0)!=(k|0)){continue}break}}e=d&3;if(e){while(1){ia=(v[(n+(h<<2)|0)+7424>>2]!=65535)+ia|0;h=h+1|0;Na=Na+1|0;if((e|0)!=(Na|0)){continue}break}}e=B(ia,104)+15&-16;if(!e){break _}g=0;j=Ba[v[v[Wa>>2]+4>>2]](Wa,e)|0;if(j+1>>>0<2){break V}}Na=0;v[I+92>>2]=0;h=0;g=0;e=xa-256|0;xa=e;J9(e+128|0,0,128);va=J9(e,0,128);l=w[i+120|0];Lb=v[i+148>>2];if(Lb){d=v[i+144>>2];while(1){k=0;e=d+g|0;M=n+B(e,104)|0;if(!(t[M+2817|0]&1)){k=x[M+2818>>1]!=0}R=v[(n+(e<<2)|0)+7296>>2];$:{if(!R){break $}c=g<<2;e=c+(va+128|0)|0;o=v[e>>2];v[e>>2]=o>>>0>>0?R:o;h=h+R|0;if(!k){break $}e=c+va|0;c=v[e>>2];k=e;e=x[M+2818>>1]<<1;v[k>>2]=c>>>0>>0?e:c;h=e+h|0}g=g+1|0;if((Lb|0)!=(g|0)){continue}break}}Mb=I- -64|0;v[Mb>>2]=h;o=1;o=l?o:w[i+296|0]!=0;fb=v[i+324>>2];aa:{if(!fb){h=0;break aa}d=v[i+320>>2];g=0;h=0;while(1){k=0;e=d+g|0;M=n+B(e,104)|0;if(!(t[M+2817|0]&1)){k=x[M+2818>>1]!=0}R=v[(n+(e<<2)|0)+7296>>2];ba:{if(!R){break ba}c=g<<2;e=c+(va+128|0)|0;l=v[e>>2];v[e>>2]=l>>>0>>0?R:l;h=h+R|0;if(!k){break ba}e=c+va|0;c=v[e>>2];l=e;e=x[M+2818>>1]<<1;v[l>>2]=c>>>0>>0?e:c;h=e+h|0}g=g+1|0;if((fb|0)!=(g|0)){continue}break}}v[Mb+4>>2]=h;ca=1;ca=o?ca:w[i+472|0]!=0;s=v[i+500>>2];ca:{if(!s){h=0;break ca}d=v[i+496>>2];g=0;h=0;while(1){k=0;e=d+g|0;o=n+B(e,104)|0;if(!(t[o+2817|0]&1)){k=x[o+2818>>1]!=0}M=v[(n+(e<<2)|0)+7296>>2];da:{if(!M){break da}c=g<<2;e=c+(va+128|0)|0;l=v[e>>2];v[e>>2]=l>>>0>>0?M:l;h=h+M|0;if(!k){break da}e=c+va|0;c=v[e>>2];l=e;e=x[o+2818>>1]<<1;v[l>>2]=c>>>0>>0?e:c;h=e+h|0}g=g+1|0;if((s|0)!=(g|0)){continue}break}}v[Mb+8>>2]=h;o=1;o=ca?o:w[i+648|0]!=0;k=0;R=0;ca=v[i+676>>2];if(ca){d=v[i+672>>2];g=0;while(1){h=0;e=d+g|0;M=n+B(e,104)|0;if(!(t[M+2817|0]&1)){h=x[M+2818>>1]!=0}ta=v[(n+(e<<2)|0)+7296>>2];ea:{if(!ta){break ea}c=g<<2;e=c+(va+128|0)|0;l=v[e>>2];v[e>>2]=l>>>0>>0?ta:l;R=R+ta|0;if(!h){break ea}e=c+va|0;c=v[e>>2];l=e;e=x[M+2818>>1]<<1;v[l>>2]=c>>>0>>0?e:c;R=e+R|0}g=g+1|0;if((ca|0)!=(g|0)){continue}break}}v[Mb+12>>2]=R;g=0;e=Lb>>>0>>0?fb:Lb;e=e>>>0>>0?s:e;ca=e>>>0>>0?ca:e;fa:{if(!ca){break fa}h=0;M=0;if(ca-1>>>0>=3){l=ca&-4;R=0;while(1){ta=M<<2;d=ta|12;c=ta|8;e=ta|4;g=v[d+va>>2]+(v[c+va>>2]+(v[e+va>>2]+(v[va+ta>>2]+g|0)|0)|0)|0;s=d;d=va+128|0;k=v[s+d>>2]+(v[c+d>>2]+(v[d+e>>2]+(v[d+ta>>2]+k|0)|0)|0)|0;M=M+4|0;R=R+4|0;if((l|0)!=(R|0)){continue}break}}c=ca&3;if(!c){break fa}while(1){e=M<<2;g=v[e+va>>2]+g|0;k=v[e+(va+128|0)>>2]+k|0;M=M+1|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}v[I+92>>2]=(((B(k,160)+B(ca,240)|0)+B(g,208)|0)+(o?k<<4:0)|0)+(g+k<<4);xa=va+256|0;_b=v[I+92>>2];if(_b){g=1;e=_b+16|0;if(e>>>0>16384){break V}g=0;Na=Ba[v[v[Wa>>2]>>2]](Wa,e)|0;if(Na+1>>>0<2){break V}}t[i+136|0]=m;v[i+132>>2]=U;d=_b>>>4|0;c=v[i+16>>2];ga:{if(!U){break ga}m=v[i+148>>2];if(!m){break ga}h=0;while(1){e=v[i+144>>2]+h|0;if(v[(n+(e<<2)|0)+7424>>2]!=65535){U=I9(U,(n+B(e,104)|0)+2816|0,104)+104|0;m=v[i+148>>2]}h=h+1|0;if(m>>>0>h>>>0){continue}break}}u[i+158>>1]=x[i+158>>1]+x[I+64>>1];u[c+22>>1]=d;v[c+24>>2]=Na;u[c+20>>1]=v[i+116>>2];v[c+28>>2]=v[i+140>>2];t[i+312|0]=r;v[i+308>>2]=H;c=v[i+192>>2];ha:{if(!H){break ha}m=v[i+324>>2];if(!m){break ha}h=0;while(1){e=v[i+320>>2]+h|0;if(v[(n+(e<<2)|0)+7424>>2]!=65535){H=I9(H,(n+B(e,104)|0)+2816|0,104)+104|0;m=v[i+324>>2]}h=h+1|0;if(m>>>0>h>>>0){continue}break}}u[i+334>>1]=x[i+334>>1]+x[I+68>>1];u[c+22>>1]=d;v[c+24>>2]=Na;u[c+20>>1]=v[i+292>>2];v[c+28>>2]=v[i+316>>2];t[i+488|0]=G;v[i+484>>2]=q;c=v[i+368>>2];ia:{if(!q){break ia}m=v[i+500>>2];if(!m){break ia}h=0;while(1){e=v[i+496>>2]+h|0;if(v[(n+(e<<2)|0)+7424>>2]!=65535){q=I9(q,(n+B(e,104)|0)+2816|0,104)+104|0;m=v[i+500>>2]}h=h+1|0;if(m>>>0>h>>>0){continue}break}}u[i+510>>1]=x[i+510>>1]+x[I+72>>1];u[c+22>>1]=d;v[c+24>>2]=Na;u[c+20>>1]=v[i+468>>2];v[c+28>>2]=v[i+492>>2];t[i+664|0]=ia;v[i+660>>2]=j;c=v[i+544>>2];ja:{if(!j){break ja}m=v[i+676>>2];if(!m){break ja}h=0;while(1){e=v[i+672>>2]+h|0;if(v[(n+(e<<2)|0)+7424>>2]!=65535){j=I9(j,(n+B(e,104)|0)+2816|0,104)+104|0;m=v[i+676>>2]}h=h+1|0;if(m>>>0>h>>>0){continue}break}}u[i+686>>1]=x[i+686>>1]+x[I+76>>1];u[c+22>>1]=d;v[c+24>>2]=Na;u[c+20>>1]=v[i+644>>2];v[c+28>>2]=v[i+668>>2];e=v[I+156>>2];v[I+56>>2]=v[I+152>>2];v[I+60>>2]=e;e=v[I+148>>2];v[I+48>>2]=v[I+144>>2];v[I+52>>2]=e;e=v[I+124>>2];v[I+40>>2]=v[I+120>>2];v[I+44>>2]=e;e=v[I+116>>2];v[I+32>>2]=v[I+112>>2];v[I+36>>2]=e;e=v[I+140>>2];v[I+24>>2]=v[I+136>>2];v[I+28>>2]=e;e=v[I+132>>2];v[I+16>>2]=v[I+128>>2];v[I+20>>2]=e;e=v[I+108>>2];v[I+8>>2]=v[I+104>>2];v[I+12>>2]=e;e=v[I+100>>2];v[I>>2]=v[I+96>>2];v[I+4>>2]=e;s=Na;va=0;Wa=0;Lb=0;Mb=0;Ub=xa-16|0;xa=Ub;v[Ub+8>>2]=0;v[Ub+12>>2]=0;v[Ub>>2]=0;v[Ub+4>>2]=0;l=1;fb=1;ka:{if(w[i+120|0]){break ka}fb=1;if(w[i+296|0]){break ka}fb=1;if(w[i+472|0]){break ka}fb=w[i+648|0]!=0}d=v[i+104>>2];l=(d|0)!=1?v[i+280>>2]==1:l;e=1;c=1;c=(d|0)!=4?v[i+280>>2]==4:c;e=l?e:v[i+456>>2]==1;W=1;l=1;l=c?l:v[i+456>>2]==4;W=e?W:v[i+632>>2]==1;A=1;A=l?A:v[i+632>>2]==4;k=v[i+148>>2];d=v[i+324>>2];c=v[i+500>>2];e=v[i+676>>2];e=c>>>0>e>>>0?c:e;e=d>>>0>e>>>0?d:e;dd=e>>>0>>0?k:e;if(dd){Md=w[i+650|0];Nd=w[i+474|0];me=w[i+298|0];Se=w[i+122|0];jg=w[v[i+24>>2]+62|0]?C(1):C(0);kg=w[v[i+20>>2]+62|0]?C(1):C(0);lg=w[v[i+200>>2]+62|0]?C(1):C(0);mg=w[v[i+196>>2]+62|0]?C(1):C(0);ng=w[v[i+376>>2]+62|0]?C(1):C(0);og=w[v[i+372>>2]+62|0]?C(1):C(0);ed=z[i+624>>2];fd=z[i+620>>2];gd=z[i+616>>2];hd=z[i+448>>2];id=z[i+444>>2];jd=z[i+440>>2];kd=z[i+272>>2];ld=z[i+268>>2];md=z[i+264>>2];nd=z[i+96>>2];od=z[i+92>>2];pd=z[i+88>>2];qd=z[i+596>>2];rd=z[i+592>>2];sd=z[i+588>>2];td=z[i+420>>2];ud=z[i+416>>2];vd=z[i+412>>2];wd=z[i+244>>2];xd=z[i+240>>2];yd=z[i+236>>2];Zb=z[i+68>>2];we=z[i- -64>>2];xe=z[i+60>>2];Uc=z[i+652>>2];Vc=z[i+476>>2];Wc=z[i+300>>2];U=v[i+560>>2];pg=z[U+28>>2];R=v[i+384>>2];qg=z[R+28>>2];M=v[i+208>>2];rg=z[M+28>>2];r=v[i+32>>2];sg=z[r+60>>2];tg=z[r+56>>2];ug=z[r+52>>2];vg=z[r+48>>2];wg=z[r+44>>2];xg=z[r+40>>2];yg=z[r+36>>2];zg=z[r+32>>2];q=v[i+556>>2];Ag=z[q+28>>2];o=v[i+380>>2];Bg=z[o+28>>2];G=v[i+204>>2];Cg=z[G+28>>2];j=v[i+28>>2];Dg=z[j+60>>2];Eg=z[j+56>>2];Fg=z[j+52>>2];Gg=z[j+48>>2];Hg=z[j+44>>2];Ig=z[j+40>>2];Jg=z[j+36>>2];Kg=z[j+32>>2];l=v[i+568>>2];Pd=z[l+16>>2];m=v[i+392>>2];Qd=z[m+16>>2];h=v[i+216>>2];Rd=z[h+16>>2];g=v[i+40>>2];Sd=z[g+24>>2];Td=z[g+20>>2];k=v[i+564>>2];Lg=z[k+16>>2];d=v[i+388>>2];Mg=z[d+16>>2];c=v[i+212>>2];Ng=z[c+16>>2];e=v[i+36>>2];Og=z[e+24>>2];Pg=z[e+20>>2];Qg=z[U+60>>2];Rg=z[U+56>>2];Sg=z[U+52>>2];Tg=z[U+48>>2];Ug=z[U+44>>2];Vg=z[U+40>>2];Wg=z[U+36>>2];Xg=z[U+32>>2];Yg=z[R+60>>2];Zg=z[R+56>>2];_g=z[R+52>>2];$g=z[R+48>>2];ah=z[R+44>>2];bh=z[R+40>>2];ch=z[R+36>>2];dh=z[R+32>>2];eh=z[M+60>>2];fh=z[M+56>>2];gh=z[M+52>>2];hh=z[M+48>>2];ih=z[M+44>>2];jh=z[M+40>>2];kh=z[M+36>>2];lh=z[M+32>>2];mh=z[q+60>>2];nh=z[q+56>>2];oh=z[q+52>>2];ph=z[q+48>>2];qh=z[q+44>>2];rh=z[q+40>>2];sh=z[q+36>>2];th=z[q+32>>2];uh=z[o+60>>2];vh=z[o+56>>2];wh=z[o+52>>2];xh=z[o+48>>2];yh=z[o+44>>2];zh=z[o+40>>2];Ah=z[o+36>>2];Bh=z[o+32>>2];Ch=z[G+60>>2];Dh=z[G+56>>2];Eh=z[G+52>>2];Fh=z[G+48>>2];Gh=z[G+44>>2];Hh=z[G+40>>2];Ih=z[G+36>>2];Jh=z[G+32>>2];Ud=z[l+24>>2];Vd=z[l+20>>2];Wd=z[m+24>>2];Xd=z[m+20>>2];Yd=z[h+24>>2];Zd=z[h+20>>2];Kh=z[k+24>>2];Lh=z[k+20>>2];Mh=z[d+24>>2];Nh=z[d+20>>2];Oh=z[c+24>>2];Ph=z[c+20>>2];Xc=z[i+124>>2];Ue=z[I+12>>2];Ve=z[I+8>>2];We=z[I+4>>2];Xe=z[I>>2];Qh=z[r+28>>2];Rh=z[j+28>>2];_d=z[g+16>>2];Sh=z[e+16>>2];E=z[k+28>>2];b=z[l+28>>2];Yc=b>2];b=z[m+28>>2];Zc=b>2];b=z[h+28>>2];_c=b>2];$d=z[l+8>>2];$c=C(Ye-$d);Ze=z[d+8>>2];ae=z[m+8>>2];ad=C(Ze-ae);_e=z[c+8>>2];be=z[h+8>>2];bd=C(_e-be);$e=z[k+4>>2];ce=z[l+4>>2];cd=C($e-ce);af=z[d+4>>2];de=z[m+4>>2];Ad=C(af-de);bf=z[c+4>>2];ee=z[h+4>>2];Bd=C(bf-ee);cf=z[k>>2];fe=z[l>>2];Cd=C(cf-fe);df=z[d>>2];ge=z[m>>2];Dd=C(df-ge);ef=z[c>>2];he=z[h>>2];Ed=C(ef-he);E=z[e+28>>2];b=z[g+28>>2];Fd=b>2]+62|0]?C(1):C(0);Uh=w[v[i+548>>2]+62|0]?C(1):C(0);ff=C(z[I+16>>2]*z[g+32>>2]);gf=z[e+8>>2];ie=z[g+8>>2];Gd=C(gf-ie);hf=z[e+4>>2];je=z[g+4>>2];Hd=C(hf-je);jf=z[e>>2];ke=z[g>>2];Id=C(jf-ke);kf=C(z[I+28>>2]*z[l+32>>2]);lf=C(z[I+24>>2]*z[m+32>>2]);mf=C(z[I+20>>2]*z[h+32>>2]);nf=C(pb*C(-.800000011920929));of=z[I+44>>2];pf=C(z[I+60>>2]*z[k+32>>2]);Jd=C(of*pf);qf=z[I+40>>2];rf=C(z[I+56>>2]*z[d+32>>2]);Kd=C(qf*rf);sf=z[I+36>>2];tf=C(z[I+52>>2]*z[c+32>>2]);Ld=C(sf*tf);uf=z[I+32>>2];vf=C(z[I+48>>2]*z[e+32>>2]);Vf=C(uf*vf);Ce=z[i+612>>2];Vh=C(C(Ce*Ce)+C(-.5));De=z[i+436>>2];Wh=C(C(De*De)+C(-.5));Ee=z[i+260>>2];Xh=C(C(Ee*Ee)+C(-.5));Fe=z[i+84>>2];Yh=C(C(Fe*Fe)+C(-.5));Ge=z[i+584>>2];Zh=C(C(Ge*Ge)+C(-.5));He=z[i+408>>2];_h=C(C(He*He)+C(-.5));Ie=z[i+232>>2];$h=C(C(Ie*Ie)+C(-.5));Je=z[i+56>>2];ai=C(C(Je*Je)+C(-.5));wf=z[i+604>>2];Wf=C(-wf);xf=z[i+600>>2];Xf=C(-xf);yf=z[i+608>>2];Yf=C(-yf);zf=z[i+428>>2];Zf=C(-zf);Af=z[i+424>>2];_f=C(-Af);Bf=z[i+432>>2];$f=C(-Bf);Cf=z[i+252>>2];ag=C(-Cf);Df=z[i+248>>2];bg=C(-Df);Ef=z[i+256>>2];cg=C(-Ef);Ff=z[i+76>>2];dg=C(-Ff);Gf=z[i+72>>2];eg=C(-Gf);Hf=z[i+80>>2];fg=C(-Hf);If=z[i+576>>2];gg=C(-If);Jf=z[i+572>>2];hg=C(-Jf);Kf=z[i+580>>2];ig=C(-Kf);Lf=z[i+400>>2];ne=C(-Lf);Mf=z[i+396>>2];oe=C(-Mf);Nf=z[i+404>>2];pe=C(-Nf);Of=z[i+224>>2];qe=C(-Of);Pf=z[i+220>>2];re=C(-Pf);Qf=z[i+228>>2];se=C(-Qf);Rf=z[i+48>>2];te=C(-Rf);Sf=z[i+44>>2];ue=C(-Sf);Tf=z[i+52>>2];ve=C(-Tf);wa=n+7424|0;za=n+2816|0;ya=n+7556|0;H=0;r=0;q=0;o=0;while(1){c=v[i+324>>2];ha=y[i+148>>2]<=Pb>>>0;Od=ha?Od:v[i+144>>2]+Pb|0;e=v[i+500>>2];tb=c>>>0<=Pb>>>0;Ae=tb?Ae:v[i+320>>2]+Pb|0;Tb=v[i+676>>2];wb=e>>>0<=Pb>>>0;Be=wb?Be:v[i+496>>2]+Pb|0;Oa=Pb>>>0>=Tb>>>0;f=Oa?f:v[i+672>>2]+Pb|0;g=0;m=0;m=ha?m:v[(n+(Od<<2)|0)+7296>>2];g=tb?g:v[(n+(Ae<<2)|0)+7296>>2];d=0;h=0;h=wb?h:v[(n+(Be<<2)|0)+7296>>2];M=8;if(!Oa){M=0;d=v[(n+(f<<2)|0)+7296>>2]}ye=Od<<2;l=v[wa+ye>>2];ac=v[i+112>>2]+(x[n+B(l,44)>>1]<<6)|0;yc=z[ac+60>>2];Ob=Ae<<2;e=v[wa+Ob>>2];Mc=v[i+288>>2]+(x[n+B(e,44)>>1]<<6)|0;zc=z[Mc+60>>2];ze=Be<<2;c=v[wa+ze>>2];Nc=v[i+464>>2]+(x[n+B(c,44)>>1]<<6)|0;Ac=z[Nc+60>>2];Nb=f<<2;R=v[wa+Nb>>2];zd=v[i+640>>2]+(x[n+B(R,44)>>1]<<6)|0;Bc=z[zd+60>>2];t[s+7|0]=Md;t[s+6|0]=Nd;t[s+5|0]=me;t[s+4|0]=Se;t[s+3|0]=fb;k=d>>>0>>0?h:d;k=g>>>0>k>>>0?g:k;Ga=k>>>0>>0?m:k;Qb=Ga<<4;ta=J9(s+240|0,0,Qb);z[s+124>>2]=Ue;z[s+120>>2]=Ve;z[s+116>>2]=We;z[s+112>>2]=Xe;z[s+108>>2]=of;z[s+104>>2]=qf;z[s+100>>2]=sf;z[s+96>>2]=uf;z[s+92>>2]=kf;z[s+88>>2]=lf;z[s+84>>2]=mf;z[s+80>>2]=ff;z[s+76>>2]=pf;z[s+72>>2]=rf;z[s+68>>2]=tf;z[s+64>>2]=vf;t[s+11|0]=d;t[s+10|0]=h;t[s+9|0]=g;t[s+8|0]=m;t[s+1|0]=Ga;v[s+192>>2]=v[i+108>>2];v[s+196>>2]=v[i+284>>2];v[s+200>>2]=v[i+460>>2];d=v[i+636>>2];Xa=C(-Bc);z[s+28>>2]=Xa;Ya=C(-Ac);z[s+24>>2]=Ya;Za=C(-zc);z[s+20>>2]=Za;_a=C(-yc);z[s+16>>2]=_a;v[s+204>>2]=d;Ca=z[ac>>2];Da=z[Mc>>2];Ea=z[Nc>>2];Fa=z[zd>>2];ea=z[ac+4>>2];fa=z[Mc+4>>2];ga=z[Nc+4>>2];ja=z[zd+4>>2];X=z[ac+8>>2];Y=z[Mc+8>>2];Z=z[Nc+8>>2];_=z[zd+8>>2];z[s+188>>2]=Yc;z[s+184>>2]=Zc;z[s+180>>2]=_c;z[s+176>>2]=Fd;z[s+172>>2]=_;z[s+168>>2]=Z;z[s+164>>2]=Y;z[s+160>>2]=X;z[s+156>>2]=ja;z[s+152>>2]=ga;z[s+148>>2]=fa;z[s+144>>2]=ea;z[s+140>>2]=Fa;z[s+136>>2]=Ea;z[s+132>>2]=Da;z[s+128>>2]=Ca;g=65535;m=65535;la:{if((l|0)==65535){break la}while(1){m=l;d=n+B(l,44)|0;if(w[d+5|0]){break la}m=65535;l=x[d+2>>1];if((l|0)!=65535){continue}break}}ma:{if((e|0)==65535){break ma}while(1){g=e;e=n+B(e,44)|0;if(w[e+5|0]){break ma}g=65535;e=x[e+2>>1];if((e|0)!=65535){continue}break}}l=65535;e=65535;na:{if((c|0)==65535){break na}while(1){e=c;c=n+B(c,44)|0;if(w[c+5|0]){break na}e=65535;c=x[c+2>>1];if((c|0)!=65535){continue}break}}oa:{if((R|0)==65535){break oa}while(1){l=R;c=n+B(l,44)|0;if(w[c+5|0]){break oa}l=65535;R=x[c+2>>1];if((R|0)!=65535){continue}break}}ia=0;pa:{if(ha){h=m;j=0;break pa}H=65535;va=0;j=1;h=m;if((h|0)==65535){h=65535;break pa}while(1){c=n+B(h,44)|0;if(w[c+5|0]!=(j|0)){H=m;break pa}j=0;h=x[c+2>>1];if((h|0)!=65535){continue}break}h=65535;H=m}qa:{if(tb){d=g;break qa}r=65535;Wa=0;ia=1;d=g;if((d|0)==65535){d=65535;break qa}while(1){c=n+B(d,44)|0;if(w[c+5|0]!=(ia|0)){r=g;break qa}ia=0;d=x[c+2>>1];if((d|0)!=65535){continue}break}d=65535;r=g}ca=0;ra:{if(wb){k=e;U=0;break ra}q=65535;Lb=0;U=1;k=e;if((e|0)==65535){k=65535;break ra}while(1){c=n+B(k,44)|0;if(w[c+5|0]!=(U|0)){q=e;break ra}U=0;k=x[c+2>>1];if((k|0)!=65535){continue}break}k=65535;q=e}sa:{if(Oa){G=l;break sa}o=65535;Mb=0;ca=1;G=l;if((l|0)==65535){G=65535;break sa}while(1){e=n+B(G,44)|0;if(w[e+5|0]!=(ca|0)){o=l;break sa}ca=0;G=x[e+2>>1];if((G|0)!=65535){continue}break}G=65535;o=l}e=1;e=ha?e:!((h|0)!=65535&w[(n+B(h,44)|0)+5|0]>j>>>0);g=ha|tb<<1;c=wb<<2;ta:{if(!((d|0)==65535|tb)){m=0;if(w[(n+B(d,44)|0)+5|0]>ia>>>0){break ta}}m=2}$a=C(ce*ja);O=C(fe*Fa);ab=C($e*ja);bb=C(cf*Fa);cb=C(de*ga);J=C(ge*Ea);db=C(af*ga);ka=C(df*Ea);la=C(ee*fa);N=C(he*Da);S=C(bf*fa);L=C(ef*Da);p=C(je*ea);E=C(ke*Ca);D=C(hf*ea);b=C(jf*Ca);c=c|g;ua:{if(!((k|0)==65535|wb)){g=0;if(w[(n+B(k,44)|0)+5|0]>U>>>0){break ua}}g=4}$a=C(O+$a);O=C($d*_);ab=C(bb+ab);bb=C(Ye*_);cb=C(J+cb);J=C(ae*Z);db=C(ka+db);ka=C(Ze*Z);la=C(N+la);N=C(be*Y);S=C(L+S);L=C(_e*Y);p=C(E+p);E=C(ie*X);D=C(b+D);b=C(gf*X);M=c|M;va:{if(!((G|0)==65535|Oa)){c=0;if(w[(n+B(G,44)|0)+5|0]>ca>>>0){break va}}c=8}l=ta+Qb|0;O=C(O+$a);Cc=C(bb+ab);J=C(J+cb);Rc=C(ka+db);N=C(N+la);Sc=C(L+S);E=C(E+p);Tc=C(b+D);if((M|0)!=15){Oa=B(Ga,160)+l|0;ta=c|(g|(e|m));Rb=0;while(1){m=v[i+640>>2]+(x[n+B(o,44)>>1]+Mb<<6)|0;qa=z[m+16>>2];p=C(qa-sd);Aa=z[m+20>>2];D=C(Aa-rd);b=C(C(ja*p)-C(Fa*D));P=F>(b>C(0)?b:C(-b))?C(0):b;da=z[m+24>>2];b=C(da-qd);p=C(C(Fa*b)-C(_*p));sb=F>(p>C(0)?p:C(-p))?C(0):p;b=C(C(_*D)-C(ja*b));Ha=F>(b>C(0)?b:C(-b))?C(0):b;Dc=C(C(sh*P)+C(C(th*sb)+C(Ag*Ha)));Ec=C(C(ph*P)+C(C(qh*sb)+C(rh*Ha)));Fc=C(C(mh*P)+C(C(nh*sb)+C(oh*Ha)));Sa=C(Jd+C(C(Dc*Dc)+C(C(Ec*Ec)+C(Fc*Fc))));g=v[i+464>>2]+(x[n+B(q,44)>>1]+Lb<<6)|0;V=z[g+16>>2];p=C(V-vd);qb=z[g+20>>2];D=C(qb-ud);b=C(C(ga*p)-C(Ea*D));ra=F>(b>C(0)?b:C(-b))?C(0):b;Ja=z[g+24>>2];b=C(Ja-td);p=C(C(Ea*b)-C(Z*p));sa=F>(p>C(0)?p:C(-p))?C(0):p;b=C(C(Z*D)-C(ga*b));ua=F>(b>C(0)?b:C(-b))?C(0):b;Gc=C(C(Ah*ra)+C(C(Bh*sa)+C(Bg*ua)));Hc=C(C(xh*ra)+C(C(yh*sa)+C(zh*ua)));Ic=C(C(uh*ra)+C(C(vh*sa)+C(wh*ua)));Ta=C(Kd+C(C(Gc*Gc)+C(C(Hc*Hc)+C(Ic*Ic))));c=v[i+288>>2]+(x[n+B(r,44)>>1]+Wa<<6)|0;rb=z[c+16>>2];p=C(rb-yd);db=z[c+20>>2];D=C(db-xd);b=C(C(fa*p)-C(Da*D));$a=F>(b>C(0)?b:C(-b))?C(0):b;ka=z[c+24>>2];b=C(ka-wd);p=C(C(Da*b)-C(Y*p));ab=F>(p>C(0)?p:C(-p))?C(0):p;b=C(C(Y*D)-C(fa*b));bb=F>(b>C(0)?b:C(-b))?C(0):b;Jc=C(C(Ih*$a)+C(C(Jh*ab)+C(Cg*bb)));Kc=C(C(Fh*$a)+C(C(Gh*ab)+C(Hh*bb)));Gb=C(C(Ch*$a)+C(C(Dh*ab)+C(Eh*bb)));Ua=C(Ld+C(C(Jc*Jc)+C(C(Kc*Kc)+C(Gb*Gb))));e=v[i+112>>2]+(x[n+B(H,44)>>1]+va<<6)|0;la=z[e+16>>2];S=C(la-xe);L=z[e+20>>2];p=C(L-we);b=C(C(ea*S)-C(Ca*p));cb=F>(b>C(0)?b:C(-b))?C(0):b;D=z[e+24>>2];b=C(D-Zb);S=C(C(Ca*b)-C(X*S));S=F>(S>C(0)?S:C(-S))?C(0):S;b=C(C(X*p)-C(ea*b));b=F>(b>C(0)?b:C(-b))?C(0):b;Hb=C(C(Jg*cb)+C(C(Kg*S)+C(Rh*b)));Ib=C(C(Gg*cb)+C(C(Hg*S)+C(Ig*b)));Jb=C(C(Dg*cb)+C(C(Eg*S)+C(Fg*b)));Va=C(Vf+C(C(Hb*Hb)+C(C(Ib*Ib)+C(Jb*Jb))));Ha=C(Cc+C(C(Kh*P)+C(C(Lh*sb)+C(Lg*Ha))));ra=C(Rc+C(C(Mh*ra)+C(C(Nh*sa)+C(Mg*ua))));sa=C(Sc+C(C(Oh*$a)+C(C(Ph*ab)+C(Ng*bb))));ua=C(Tc+C(C(Og*cb)+C(C(Pg*S)+C(Sh*b))));$a=C(C(Fa*z[m+32>>2])+C(C(ja*z[m+36>>2])+C(_*z[m+40>>2])));ab=C(C(Ea*z[g+32>>2])+C(C(ga*z[g+36>>2])+C(Z*z[g+40>>2])));bb=C(C(Da*z[c+32>>2])+C(C(fa*z[c+36>>2])+C(Y*z[c+40>>2])));cb=C(C(Ca*z[e+32>>2])+C(C(ea*z[e+36>>2])+C(X*z[e+40>>2])));qa=C(qa-gd);na=C(V-jd);oa=C(rb-md);pa=C(la-pd);da=C(da-ed);V=C(Ja-hd);$=C(ka-kd);aa=C(D-nd);p=C(Aa-fd);Ja=C(qb-id);D=C(db-ld);ba=C(L-od);S=z[m+12>>2];db=z[g+12>>2];ka=z[c+12>>2];la=z[e+12>>2];wa:{if(W){b=C(C(ja*qa)-C(Fa*p));P=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Fa*da)-C(_*qa));sb=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(_*p)-C(ja*da));L=F>(b>C(0)?b:C(-b))?C(0):b;Ia=C(C(Wg*P)+C(C(Xg*sb)+C(pg*L)));Ka=C(C(Tg*P)+C(C(Ug*sb)+C(Vg*L)));La=C(C(Qg*P)+C(C(Rg*sb)+C(Sg*L)));Sa=C(Sa+C(kf+C(Ue*C(C(Ia*Ia)+C(C(Ka*Ka)+C(La*La))))));b=C(C(ga*na)-C(Ea*Ja));qa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ea*V)-C(Z*na));Aa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Z*Ja)-C(ga*V));da=F>(b>C(0)?b:C(-b))?C(0):b;Ma=C(C(ch*qa)+C(C(dh*Aa)+C(qg*da)));vb=C(C($g*qa)+C(C(ah*Aa)+C(bh*da)));xb=C(C(Yg*qa)+C(C(Zg*Aa)+C(_g*da)));Ta=C(Ta+C(lf+C(Ve*C(C(Ma*Ma)+C(C(vb*vb)+C(xb*xb))))));b=C(C(fa*oa)-C(Da*D));V=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Da*$)-C(Y*oa));qb=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Y*D)-C(fa*$));p=F>(b>C(0)?b:C(-b))?C(0):b;yb=C(C(kh*V)+C(C(lh*qb)+C(rg*p)));Pa=C(C(hh*V)+C(C(ih*qb)+C(jh*p)));ma=C(C(eh*V)+C(C(fh*qb)+C(gh*p)));Ua=C(Ua+C(mf+C(We*C(C(yb*yb)+C(C(Pa*Pa)+C(ma*ma))))));b=C(C(ea*pa)-C(Ca*ba));Ja=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ca*aa)-C(X*pa));D=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(X*ba)-C(ea*aa));b=F>(b>C(0)?b:C(-b))?C(0):b;Qa=C(C(yg*Ja)+C(C(zg*D)+C(Qh*b)));Ra=C(C(vg*Ja)+C(C(wg*D)+C(xg*b)));rb=C(C(sg*Ja)+C(C(tg*D)+C(ug*b)));Va=C(Va+C(ff+C(Xe*C(C(Qa*Qa)+C(C(Ra*Ra)+C(rb*rb))))));L=C(O+C(C(Ud*P)+C(C(Vd*sb)+C(Pd*L))));p=C(N+C(C(Yd*V)+C(C(Zd*qb)+C(Rd*p))));D=C(E+C(C(Sd*Ja)+C(C(Td*D)+C(_d*b))));b=C(J+C(C(Wd*qa)+C(C(Xd*Aa)+C(Qd*da))));break wa}rb=C(0);if(!A){ma=C(0);xb=C(0);La=C(0);Ra=C(0);Pa=C(0);vb=C(0);Ka=C(0);Qa=C(0);yb=C(0);Ma=C(0);Ia=C(0);D=E;p=N;L=O;b=J;break wa}L=C(O+C(C(Ud*C(C(ja*qa)-C(Fa*p)))+C(C(Vd*C(C(Fa*da)-C(_*qa)))+C(Pd*C(C(_*p)-C(ja*da))))));p=C(N+C(C(Yd*C(C(fa*oa)-C(Da*D)))+C(C(Zd*C(C(Da*$)-C(Y*oa)))+C(Rd*C(C(Y*D)-C(fa*$))))));D=C(E+C(C(Sd*C(C(ea*pa)-C(Ca*ba)))+C(C(Td*C(C(Ca*aa)-C(X*pa)))+C(_d*C(C(X*ba)-C(ea*aa))))));ma=C(0);xb=C(0);La=C(0);Ra=C(0);Pa=C(0);vb=C(0);Ka=C(0);Qa=C(0);yb=C(0);Ma=C(0);Ia=C(0);b=C(J+C(C(Wd*C(C(ga*na)-C(Ea*Ja)))+C(C(Xd*C(C(Ea*V)-C(Z*na)))+C(Qd*C(C(Z*Ja)-C(ga*V))))))}z[l+48>>2]=Qa;z[l+32>>2]=Jb;z[l+16>>2]=Ib;z[l+12>>2]=Dc;z[l+8>>2]=Gc;z[l+4>>2]=Jc;z[l>>2]=Hb;z[l+92>>2]=La;z[l+88>>2]=xb;z[l+84>>2]=ma;z[l+80>>2]=rb;z[l+76>>2]=Ka;z[l+72>>2]=vb;z[l+68>>2]=Pa;z[l- -64>>2]=Ra;z[l+60>>2]=Ia;z[l+56>>2]=Ma;z[l+52>>2]=yb;z[l+44>>2]=Fc;z[l+40>>2]=Ic;z[l+36>>2]=Gb;z[l+28>>2]=Ec;z[l+24>>2]=Hc;z[l+20>>2]=Kc;z[l+124>>2]=Sa>C(0)?C(C(1)/Sa):C(0);z[l+120>>2]=Ta>C(0)?C(C(1)/Ta):C(0);z[l+116>>2]=Ua>C(0)?C(C(1)/Ua):C(0);z[l+112>>2]=Va>C(0)?C(C(1)/Va):C(0);P=C(Th*L);L=C(Ha-L);S=C(S-Uc);z[l+140>>2]=$a+C(C(P+(Bc>C(0)?LC(S*Sb)?C(L*Xa):C(0):C(0):C(0)))-C(Uh*Ha));P=C(ng*b);b=C(ra-b);L=C(db-Vc);z[l+136>>2]=ab+C(C(P+(Ac>C(0)?bC(L*Sb)?C(b*Ya):C(0):C(0):C(0)))-C(og*ra));P=C(lg*p);b=C(sa-p);p=C(ka-Wc);z[l+132>>2]=bb+C(C(P+(zc>C(0)?bC(p*Sb)?C(b*Za):C(0):C(0):C(0)))-C(mg*sa));P=C(jg*D);D=C(ua-D);b=C(la-Xc);z[l+128>>2]=cb+C(C(P+(yc>C(0)?DC(b*Sb)?C(D*_a):C(0):C(0):C(0)))-C(kg*ua));z[l+156>>2]=nf;z[l+152>>2]=nf;z[l+148>>2]=nf;z[l+144>>2]=nf;z[l+108>>2]=S;z[l+104>>2]=L;z[l+100>>2]=p;z[l+96>>2]=b;if(fb){p=z[e+28>>2];D=z[c+28>>2];b=z[g+28>>2];e=Oa+(Rb<<4)|0;z[e+12>>2]=z[m+28>>2];z[e+8>>2]=b;z[e+4>>2]=D;z[e>>2]=p}xa:{if(ta&1){M=h;R=j;j=ta;break xa}R=j+1|0;M=65535;g=0;e=h;ya:{if((e|0)==65535){break ya}while(1){m=n+B(e,44)|0;c=w[m+5|0];if((c|0)==(R|0)){R=0;e=x[m+2>>1];if((e|0)!=65535){continue}break ya}break}if((e|0)==65535){break ya}g=c>>>0>R>>>0;M=e}va=j;H=h;j=g^1|ta}za:{if(ta&2){e=d;g=ia;break za}g=ia+1|0;h=2;e=d;Aa:{if((d|0)==65535){e=65535;break Aa}Ba:{while(1){m=n+B(e,44)|0;c=w[m+5|0];if((c|0)!=(g|0)){break Ba}g=0;e=x[m+2>>1];if((e|0)!=65535){continue}break}e=65535;break Aa}if((e|0)==65535){e=65535;break Aa}h=c>>>0>g>>>0?0:2}j=h|j;Wa=ia;r=d}Ca:{if(ta&4){c=k;m=U;break Ca}m=U+1|0;ia=4;c=k;Da:{if((c|0)==65535){c=65535;break Da}Ea:{while(1){h=n+B(c,44)|0;d=w[h+5|0];if((d|0)!=(m|0)){break Ea}m=0;c=x[h+2>>1];if((c|0)!=65535){continue}break}c=65535;break Da}if((c|0)==65535){c=65535;break Da}ia=d>>>0>m>>>0?0:4}j=j|ia;Lb=U;q=k}l=l+160|0;Rb=Rb+1|0;Ga=(ta|0)!=15;if(!(ta&8)){h=ca+1|0;U=8;d=G;Fa:{if((d|0)==65535){d=65535;break Fa}Ga:{while(1){o=n+B(d,44)|0;k=w[o+5|0];if((k|0)!=(h|0)){break Ga}h=0;d=x[o+2>>1];if((d|0)!=65535){continue}break}d=65535;break Fa}if((d|0)==65535){d=65535;break Fa}U=h>>>0>>0?0:8}Mb=ca;o=G;ca=h;G=d;j=j|U}ta=j;j=R;h=M;ia=g;d=e;U=m;k=c;if(Ga){continue}break}}Oa=za+B(f,104)|0;m=x[Oa+2>>1];Ga=za+B(Be,104)|0;c=x[Ga+2>>1];ta=za+B(Ae,104)|0;e=x[ta+2>>1];Rb=0;Rb=ha?Rb:t[ac+48|0]&1?0:x[(n+B(Od,104)|0)+2818>>1];ca=0;ca=tb?ca:t[Mc+48|0]&1?0:e;k=0;V=z[zd+44>>2];db=z[zd+56>>2];ka=z[ac+44>>2];la=z[ac+56>>2];h=w[ac+48|0];S=z[Mc+44>>2];L=z[Mc+56>>2];g=w[Mc+48|0];p=z[Nc+44>>2];D=z[Nc+56>>2];d=w[Nc+48|0];G=w[zd+48|0];k=wb?k:t[Nc+48|0]&1?0:c;c=(fb?Qb:0)+l|0;t[s+14|0]=k<<1;t[s+13|0]=ca<<1;t[s+12|0]=Rb<<1;t[s|0]=7;ha=Pb>>>0>>0?G&1?0:m:0;t[s+15|0]=ha<<1;e=k>>>0>ha>>>0?k:ha;e=e>>>0>>0?ca:e;tb=e>>>0>>0?Rb:e;j=tb<<1;t[s+2|0]=j;if(tb){b=(d&4)>>>2|0?(k|0)==2?C(.5):C(1):C(1);qb=C(b*D);Ja=C(b*p);b=(g&4)>>>2|0?(ca|0)==2?C(.5):C(1):C(1);rb=C(b*L);$a=C(b*S);b=(h&4)>>>2|0?(Rb|0)==2?C(.5):C(1):C(1);ab=C(b*la);bb=C(ka*b);b=(ha|0)==2?(G&4)>>>2|0?C(.5):C(1):C(1);cb=C(b*db);db=C(b*V);m=v[i+660>>2];h=v[i+484>>2];g=v[i+308>>2];d=v[i+132>>2];e=v[Ub+12>>2];v[s+216>>2]=v[Ub+8>>2];v[s+220>>2]=e;e=v[Ub+4>>2];v[s+208>>2]=v[Ub>>2];v[s+212>>2]=e;v[s+224>>2]=d+B(Eb,104);v[s+228>>2]=g+B(Fb,104);v[s+232>>2]=h+B($b,104);v[s+236>>2]=m+B(Lc,104);e=0;ub=C(1);O=C(Cc-O);b=C(cd-C(ja*O));g=(Fa>C(0)?Fa:C(-Fa))C(9999999747378752e-20);b=d?b:g?C(-_):Fa;p=b;da=d?O:g?ja:C(0);L=C(b*b);b=d?D:g?C(0):C(-ja);V=C(C(1)/C(K(C(C(da*da)+C(L+C(b*b))))));hb=C(p*V);ib=C(b*V);Ka=C(C(Fa*hb)-C(ja*ib));J=C(Rc-J);b=C(Ad-C(ga*J));g=(Ea>C(0)?Ea:C(-Ea))C(9999999747378752e-20);b=d?b:g?C(-Z):Ea;p=b;ka=d?J:g?ga:C(0);D=C(b*b);b=d?O:g?C(0):C(-ga);la=C(C(1)/C(K(C(C(ka*ka)+C(D+C(b*b))))));jb=C(p*la);kb=C(b*la);La=C(C(Ea*jb)-C(ga*kb));N=C(Sc-N);b=C(Bd-C(fa*N));g=(Da>C(0)?Da:C(-Da))C(9999999747378752e-20);b=d?b:g?C(-Y):Da;p=b;S=d?N:g?fa:C(0);D=C(b*b);b=d?J:g?C(0):C(-fa);O=C(C(1)/C(K(C(C(S*S)+C(D+C(b*b))))));L=C(p*O);lb=C(b*O);Ma=C(C(Da*L)-C(fa*lb));E=C(Tc-E);b=C(Hd-C(ea*E));g=(Ca>C(0)?Ca:C(-Ca))C(9999999747378752e-20);b=d?b:g?C(-X):Ca;p=b;N=d?E:g?ea:C(0);E=d?J:g?C(0):C(-ea);b=C(C(1)/C(K(C(C(N*N)+C(C(b*b)+C(E*E))))));p=C(p*b);D=C(E*b);Sa=C(C(Ca*p)-C(ea*D));Ia=C(da*V);Ta=C(C(_*ib)-C(Fa*Ia));mb=C(ka*la);Ua=C(C(Z*kb)-C(Ea*mb));nb=C(S*O);Va=C(C(Y*lb)-C(Da*nb));ob=C(N*b);zb=C(C(X*D)-C(Ca*ob));Ab=C(C(ja*Ia)-C(_*hb));Bb=C(C(ga*mb)-C(Z*jb));Cb=C(C(fa*nb)-C(Y*L));Db=C(C(ea*ob)-C(X*p));l=ac+32|0;d=c;c=j<<4&4080;c=J9(d,0,c)+c|0;g=0;m=0;d=0;h=0;Vb=C(1);Wb=C(1);Xb=C(1);while(1){j=c;ia=e>>>0>>0;g=ia?e:g;c=Oa+B(g,12)|0;ea=z[c+72>>2];fa=z[c- -64>>2];ga=z[c+68>>2];Xa=C(C(yf*ea)+C(C(xf*fa)+C(wf*ga)));ka=C(yf*Xa);ja=z[c+48>>2];X=z[c+40>>2];Gb=z[c+44>>2];Ya=C(C(Kf*ja)+C(C(Jf*X)+C(If*Gb)));b=C(Kf*Ya);U=e>>>0>>0;m=U?e:m;c=Ga+B(m,12)|0;Y=z[c+72>>2];ma=z[c- -64>>2];Z=z[c+68>>2];Za=C(C(Bf*Y)+C(C(Af*ma)+C(zf*Z)));la=C(Bf*Za);_=z[c+48>>2];na=z[c+40>>2];Hb=z[c+44>>2];_a=C(C(Nf*_)+C(C(Mf*na)+C(Lf*Hb)));S=C(Nf*_a);R=e>>>0>>0;d=R?e:d;c=ta+B(d,12)|0;oa=z[c+72>>2];pa=z[c- -64>>2];$=z[c+68>>2];qa=C(C(Ef*oa)+C(C(Df*pa)+C(Cf*$)));O=C(Ef*qa);aa=z[c+48>>2];ba=z[c+40>>2];Ib=z[c+44>>2];Aa=C(C(Qf*aa)+C(C(Pf*ba)+C(Of*Ib)));J=C(Qf*Aa);M=e>>>0>>0;h=M?e:h;c=(za+B(Od,104)|0)+B(h,12)|0;P=z[c+72>>2];Jb=z[c- -64>>2];Ha=z[c+68>>2];da=C(C(Hf*P)+C(C(Gf*Jb)+C(Ff*Ha)));N=C(Hf*da);ra=z[c+48>>2];sa=z[c+40>>2];ua=z[c+44>>2];V=C(C(Tf*ra)+C(C(Sf*sa)+C(Rf*ua)));E=C(Tf*V);wb=x[(ya+Nb|0)+(g<<1)>>1];Tb=x[(ya+ze|0)+(m<<1)>>1];Qb=x[(ya+Ob|0)+(d<<1)>>1];c=l;G=x[(ya+ye|0)+(h<<1)>>1];if((G|0)!=65535){c=(v[i+112>>2]+(G<<6)|0)+32|0}sb=z[c+8>>2];yc=z[c+4>>2];zc=z[c>>2];c=l;ub=ia?ub:C(0);Vb=U?Vb:C(0);Wb=R?Wb:C(0);Xb=M?Xb:C(0);c=(Qb|0)!=65535?(v[i+288>>2]+(Qb<<6)|0)+32|0:c;Ac=z[c+8>>2];Bc=z[c+4>>2];Cc=z[c>>2];c=l;Ia=C(Ia*ub);mb=C(mb*Vb);nb=C(nb*Wb);ob=C(ob*Xb);hb=C(hb*ub);jb=C(jb*Vb);L=C(L*Wb);p=C(p*Xb);ib=C(ib*ub);kb=C(kb*Vb);lb=C(lb*Wb);D=C(D*Xb);c=(Tb|0)!=65535?(v[i+464>>2]+(Tb<<6)|0)+32|0:c;Rc=z[c+8>>2];Sc=z[c+4>>2];Tc=z[c>>2];c=l;b=C(C(C(Ge*C(C(Jf*Gb)+C(X*gg)))+C(Zh*ja))+b);Ke=C(b+b);b=C(C(C(Ce*C(C(xf*ga)+C(fa*Wf)))+C(Vh*ea))+ka);bc=C(b+b);Dc=C(C(qd+Ke)-C(ed+bc));b=C(C(C(He*C(C(Mf*Hb)+C(na*ne)))+C(_h*_))+S);Le=C(b+b);b=C(C(C(De*C(C(Af*Z)+C(ma*Zf)))+C(Wh*Y))+la);cc=C(b+b);Ec=C(C(td+Le)-C(hd+cc));b=C(C(C(Ie*C(C(Pf*Ib)+C(ba*qe)))+C($h*aa))+J);Me=C(b+b);b=C(C(C(Ee*C(C(Df*$)+C(pa*ag)))+C(Xh*oa))+O);dc=C(b+b);Fc=C(C(wd+Me)-C(kd+dc));b=C(C(C(Je*C(C(Sf*ua)+C(sa*te)))+C(ai*ra))+E);Ne=C(b+b);b=C(C(C(Fe*C(C(Gf*Ha)+C(Jb*dg)))+C(Yh*P))+N);ec=C(b+b);Gc=C(C(Zb+Ne)-C(nd+ec));b=C(C(If*Ya)+C(C(Zh*Gb)+C(Ge*C(C(Kf*X)+C(ja*hg)))));Oe=C(b+b);b=C(C(wf*Xa)+C(C(Vh*ga)+C(Ce*C(C(yf*fa)+C(ea*Xf)))));fc=C(b+b);Hc=C(C(rd+Oe)-C(fd+fc));b=C(C(Lf*_a)+C(C(_h*Hb)+C(He*C(C(Nf*na)+C(_*oe)))));Ca=C(b+b);b=C(C(zf*Za)+C(C(Wh*Z)+C(De*C(C(Bf*ma)+C(Y*_f)))));gc=C(b+b);Ic=C(C(ud+Ca)-C(id+gc));b=C(C(Of*Aa)+C(C($h*Ib)+C(Ie*C(C(Qf*ba)+C(aa*re)))));Da=C(b+b);b=C(C(Cf*qa)+C(C(Xh*$)+C(Ee*C(C(Ef*pa)+C(oa*bg)))));hc=C(b+b);Jc=C(C(xd+Da)-C(ld+hc));b=C(C(Rf*V)+C(C(ai*ua)+C(Je*C(C(Tf*sa)+C(ra*ue)))));Ea=C(b+b);b=C(C(Ff*da)+C(C(Yh*Ha)+C(Fe*C(C(Hf*Jb)+C(P*eg)))));ic=C(b+b);Kc=C(C(we+Ea)-C(od+ic));b=C(C(Jf*Ya)+C(C(Zh*X)+C(Ge*C(C(If*ja)+C(Gb*ig)))));Fa=C(b+b);b=C(C(xf*Xa)+C(C(Vh*fa)+C(Ce*C(C(wf*ea)+C(ga*Yf)))));jc=C(b+b);Gb=C(C(sd+Fa)-C(gd+jc));b=C(C(Mf*_a)+C(C(_h*na)+C(He*C(C(Lf*_)+C(Hb*pe)))));ea=C(b+b);b=C(C(Af*Za)+C(C(Wh*ma)+C(De*C(C(zf*Y)+C(Z*$f)))));kc=C(b+b);Hb=C(C(vd+ea)-C(jd+kc));b=C(C(Pf*Aa)+C(C($h*ba)+C(Ie*C(C(Of*aa)+C(Ib*se)))));fa=C(b+b);b=C(C(Df*qa)+C(C(Xh*pa)+C(Ee*C(C(Cf*oa)+C($*cg)))));lc=C(b+b);Ib=C(C(yd+fa)-C(md+lc));b=C(C(Sf*V)+C(C(ai*sa)+C(Je*C(C(Rf*ra)+C(ua*ve)))));ga=C(b+b);b=C(C(Gf*da)+C(C(Yh*Jb)+C(Fe*C(C(Ff*P)+C(Ha*fg)))));mc=C(b+b);Jb=C(C(xe+ga)-C(pd+mc));Ka=C(Ka*ub);La=C(La*Vb);Ma=C(Ma*Wb);Sa=C(Sa*Xb);Ta=C(Ta*ub);Ua=C(Ua*Vb);Va=C(Va*Wb);zb=C(zb*Xb);Ab=C(Ab*ub);Bb=C(Bb*Vb);Cb=C(Cb*Wb);Db=C(Db*Xb);b=C(C(hb*Fa)-C(ib*Oe));$=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(ib*Ke)-C(Ia*Fa));aa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ia*Oe)-C(hb*Ke));O=F>(b>C(0)?b:C(-b))?C(0):b;ua=C(C(mh*$)+C(C(nh*aa)+C(oh*O)));Xa=C(C(ph*$)+C(C(qh*aa)+C(rh*O)));Ya=C(C(sh*$)+C(C(th*aa)+C(Ag*O)));vb=C(pf+C(of*C(C(ua*ua)+C(C(Xa*Xa)+C(Ya*Ya)))));b=C(C(jb*ea)-C(kb*Ca));ba=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(kb*Le)-C(mb*ea));P=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(mb*Ca)-C(jb*Le));J=F>(b>C(0)?b:C(-b))?C(0):b;Za=C(C(uh*ba)+C(C(vh*P)+C(wh*J)));_a=C(C(xh*ba)+C(C(yh*P)+C(zh*J)));qa=C(C(Ah*ba)+C(C(Bh*P)+C(Bg*J)));nc=C(rf+C(qf*C(C(Za*Za)+C(C(_a*_a)+C(qa*qa)))));b=C(C(L*fa)-C(lb*Da));Ha=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(lb*Me)-C(nb*fa));ra=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(nb*Da)-C(L*Me));N=F>(b>C(0)?b:C(-b))?C(0):b;Aa=C(C(Ch*Ha)+C(C(Dh*ra)+C(Eh*N)));da=C(C(Fh*Ha)+C(C(Gh*ra)+C(Hh*N)));V=C(C(Ih*Ha)+C(C(Jh*ra)+C(Cg*N)));ja=C(tf+C(sf*C(C(Aa*Aa)+C(C(da*da)+C(V*V)))));b=C(C(p*ga)-C(D*Ea));sa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(D*Ne)-C(ob*ga));E=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(ob*Ea)-C(p*Ne));b=F>(b>C(0)?b:C(-b))?C(0):b;ka=C(C(Dg*sa)+C(C(Eg*E)+C(Fg*b)));la=C(C(Gg*sa)+C(C(Hg*E)+C(Ig*b)));S=C(C(Jg*sa)+C(C(Kg*E)+C(Rh*b)));X=C(vf+C(uf*C(C(ka*ka)+C(C(la*la)+C(S*S)))));O=C(C(Kh*$)+C(C(Lh*aa)+C(C(C(Ye*Ia)+C(C($e*hb)+C(cf*ib)))+C(Lg*O))));J=C(C(Mh*ba)+C(C(Nh*P)+C(C(C(Ze*mb)+C(C(af*jb)+C(df*kb)))+C(Mg*J))));N=C(C(Oh*Ha)+C(C(Ph*ra)+C(C(C(_e*nb)+C(C(bf*L)+C(ef*lb)))+C(Ng*N))));E=C(C(Og*sa)+C(C(Pg*E)+C(C(C(gf*ob)+C(C(hf*p)+C(jf*D)))+C(Sh*b))));c=(wb|0)!=65535?(v[i+640>>2]+(wb<<6)|0)+32|0:c;Ha=z[c+8>>2];ra=z[c+4>>2];sa=z[c>>2];Ha:{if(W){b=C(C(hb*jc)-C(ib*fc));Y=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(ib*bc)-C(Ia*jc));ma=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ia*fc)-C(hb*bc));Z=F>(b>C(0)?b:C(-b))?C(0):b;oc=C(C(Qg*Y)+C(C(Rg*ma)+C(Sg*Z)));pc=C(C(Tg*Y)+C(C(Ug*ma)+C(Vg*Z)));qc=C(C(Wg*Y)+C(C(Xg*ma)+C(pg*Z)));vb=C(vb+C(kf+C(Ue*C(C(oc*oc)+C(C(pc*pc)+C(qc*qc))))));b=C(C(jb*kc)-C(kb*gc));_=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(kb*cc)-C(mb*kc));na=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(mb*gc)-C(jb*cc));oa=F>(b>C(0)?b:C(-b))?C(0):b;rc=C(C(Yg*_)+C(C(Zg*na)+C(_g*oa)));sc=C(C($g*_)+C(C(ah*na)+C(bh*oa)));xb=C(C(ch*_)+C(C(dh*na)+C(qg*oa)));nc=C(nc+C(lf+C(Ve*C(C(rc*rc)+C(C(sc*sc)+C(xb*xb))))));b=C(C(L*lc)-C(lb*hc));pa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(lb*dc)-C(nb*lc));$=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(nb*hc)-C(L*dc));aa=F>(b>C(0)?b:C(-b))?C(0):b;tc=C(C(eh*pa)+C(C(fh*$)+C(gh*aa)));yb=C(C(hh*pa)+C(C(ih*$)+C(jh*aa)));uc=C(C(kh*pa)+C(C(lh*$)+C(rg*aa)));ja=C(ja+C(mf+C(We*C(C(tc*tc)+C(C(yb*yb)+C(uc*uc))))));b=C(C(p*mc)-C(D*ic));ba=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(D*ec)-C(ob*mc));P=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(ob*ic)-C(p*ec));b=F>(b>C(0)?b:C(-b))?C(0):b;vc=C(C(sg*ba)+C(C(tg*P)+C(ug*b)));wc=C(C(vg*ba)+C(C(wg*P)+C(xg*b)));xc=C(C(yg*ba)+C(C(zg*P)+C(Qh*b)));X=C(X+C(ff+C(Xe*C(C(vc*vc)+C(C(wc*wc)+C(xc*xc))))));Pa=C(C(Ud*Y)+C(C(Vd*ma)+C(C(C($d*Ia)+C(C(ce*hb)+C(fe*ib)))+C(Pd*Z))));Qa=C(C(Wd*_)+C(C(Xd*na)+C(C(C(ae*mb)+C(C(de*jb)+C(ge*kb)))+C(Qd*oa))));Ra=C(C(Yd*pa)+C(C(Zd*$)+C(C(C(be*nb)+C(C(ee*L)+C(he*lb)))+C(Rd*aa))));b=C(C(Sd*ba)+C(C(Td*P)+C(C(C(ie*ob)+C(C(je*p)+C(ke*D)))+C(_d*b))));break Ha}vc=C(0);tc=C(0);rc=C(0);oc=C(0);wc=C(0);yb=C(0);sc=C(0);pc=C(0);xc=C(0);uc=C(0);xb=C(0);qc=C(0);Ia:{if(!A){Ra=C(0);Qa=C(0);Pa=C(0);b=C(0);break Ia}Pa=C(C(Ud*C(C(hb*jc)-C(ib*fc)))+C(C(Vd*C(C(ib*bc)-C(Ia*jc)))+C(C(C($d*Ia)+C(C(ce*hb)+C(fe*ib)))+C(Pd*C(C(Ia*fc)-C(hb*bc))))));Qa=C(C(Wd*C(C(jb*kc)-C(kb*gc)))+C(C(Xd*C(C(kb*cc)-C(mb*kc)))+C(C(C(ae*mb)+C(C(de*jb)+C(ge*kb)))+C(Qd*C(C(mb*gc)-C(jb*cc))))));Ra=C(C(Yd*C(C(L*lc)-C(lb*hc)))+C(C(Zd*C(C(lb*dc)-C(nb*lc)))+C(C(C(be*nb)+C(C(ee*L)+C(he*lb)))+C(Rd*C(C(nb*hc)-C(L*dc))))));b=C(C(Sd*C(C(p*mc)-C(D*ic)))+C(C(Td*C(C(D*ec)-C(ob*mc)))+C(C(C(ie*ob)+C(C(je*p)+C(ke*D)))+C(_d*C(C(ob*ic)-C(p*ec))))))}}z[j+96>>2]=xc;z[j+192>>2]=pb;z[j+48>>2]=S;z[j+32>>2]=ob;z[j+16>>2]=p;z[j+12>>2]=ib;z[j+8>>2]=kb;z[j+4>>2]=lb;z[j>>2]=D;z[j+140>>2]=oc;z[j+136>>2]=rc;z[j+132>>2]=tc;z[j+128>>2]=vc;z[j+124>>2]=pc;z[j+120>>2]=sc;z[j+116>>2]=yb;z[j+112>>2]=wc;z[j+108>>2]=qc;z[j+104>>2]=xb;z[j+100>>2]=uc;z[j+204>>2]=pb;z[j+200>>2]=pb;z[j+196>>2]=pb;z[j+92>>2]=ua;z[j+88>>2]=Za;z[j+84>>2]=Aa;z[j+80>>2]=ka;z[j+76>>2]=Xa;z[j+72>>2]=_a;z[j+68>>2]=da;z[j- -64>>2]=la;z[j+60>>2]=Ya;z[j+56>>2]=qa;z[j+52>>2]=V;z[j+44>>2]=Ia;z[j+40>>2]=mb;z[j+36>>2]=nb;z[j+28>>2]=hb;z[j+24>>2]=jb;z[j+20>>2]=L;z[j+172>>2]=ub*(vb>C(0)?C(C(.800000011920929)/vb):C(0));z[j+168>>2]=Vb*(nc>C(0)?C(C(.800000011920929)/nc):C(0));z[j+164>>2]=Wb*(ja>C(0)?C(C(.800000011920929)/ja):C(0));z[j+160>>2]=Xb*(X>C(0)?C(C(.800000011920929)/X):C(0));z[j+156>>2]=C(Ia*Dc)+C(C(ib*Gb)+C(hb*Hc));z[j+152>>2]=C(mb*Ec)+C(C(kb*Hb)+C(jb*Ic));z[j+148>>2]=C(nb*Fc)+C(C(lb*Ib)+C(L*Jc));z[j+144>>2]=C(ob*Gc)+C(C(D*Jb)+C(p*Kc));z[j+188>>2]=C(C(C(Ia*Ha)+C(C(ib*sa)+C(hb*ra)))+C(Th*Pa))-C(Uh*O);z[j+184>>2]=C(C(C(mb*Rc)+C(C(kb*Tc)+C(jb*Sc)))+C(ng*Qa))-C(og*J);z[j+180>>2]=C(C(C(nb*Ac)+C(C(lb*Cc)+C(L*Bc)))+C(lg*Ra))-C(mg*N);z[j+176>>2]=C(C(C(ob*sb)+C(C(D*zc)+C(p*yc)))+C(jg*b))-C(kg*E);b=C(C(Ta*Fa)-C(Ab*Oe));na=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ab*Ke)-C(Ka*Fa));oa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ka*Oe)-C(Ta*Ke));O=F>(b>C(0)?b:C(-b))?C(0):b;ua=C(C(mh*na)+C(C(nh*oa)+C(oh*O)));Xa=C(C(ph*na)+C(C(qh*oa)+C(rh*O)));Ya=C(C(sh*na)+C(C(th*oa)+C(Ag*O)));pc=C(pf+C(of*C(C(ua*ua)+C(C(Xa*Xa)+C(Ya*Ya)))));b=C(C(Ua*ea)-C(Bb*Ca));pa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Bb*Le)-C(La*ea));$=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(La*Ca)-C(Ua*Le));J=F>(b>C(0)?b:C(-b))?C(0):b;Za=C(C(uh*pa)+C(C(vh*$)+C(wh*J)));_a=C(C(xh*pa)+C(C(yh*$)+C(zh*J)));qa=C(C(Ah*pa)+C(C(Bh*$)+C(Bg*J)));qc=C(rf+C(qf*C(C(Za*Za)+C(C(_a*_a)+C(qa*qa)))));b=C(C(Va*fa)-C(Cb*Da));aa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Cb*Me)-C(Ma*fa));ba=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ma*Da)-C(Va*Me));N=F>(b>C(0)?b:C(-b))?C(0):b;Aa=C(C(Ch*aa)+C(C(Dh*ba)+C(Eh*N)));da=C(C(Fh*aa)+C(C(Gh*ba)+C(Hh*N)));V=C(C(Ih*aa)+C(C(Jh*ba)+C(Cg*N)));rc=C(tf+C(sf*C(C(Aa*Aa)+C(C(da*da)+C(V*V)))));b=C(C(zb*ga)-C(Db*Ea));P=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Db*Ne)-C(Sa*ga));E=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Sa*Ea)-C(zb*Ne));b=F>(b>C(0)?b:C(-b))?C(0):b;ka=C(C(Dg*P)+C(C(Eg*E)+C(Fg*b)));la=C(C(Gg*P)+C(C(Hg*E)+C(Ig*b)));S=C(C(Jg*P)+C(C(Kg*E)+C(Rh*b)));nc=C(vf+C(uf*C(C(ka*ka)+C(C(la*la)+C(S*S)))));O=C(C(Kh*na)+C(C(Lh*oa)+C(C(C(Ye*Ka)+C(C($e*Ta)+C(cf*Ab)))+C(Lg*O))));J=C(C(Mh*pa)+C(C(Nh*$)+C(C(C(Ze*La)+C(C(af*Ua)+C(df*Bb)))+C(Mg*J))));N=C(C(Oh*aa)+C(C(Ph*ba)+C(C(C(_e*Ma)+C(C(bf*Va)+C(ef*Cb)))+C(Ng*N))));E=C(C(Og*P)+C(C(Pg*E)+C(C(C(gf*Sa)+C(C(hf*zb)+C(jf*Db)))+C(Sh*b))));Ja:{if(W){b=C(C(Ta*jc)-C(Ab*fc));X=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ab*bc)-C(Ka*jc));Y=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ka*fc)-C(Ta*bc));ma=F>(b>C(0)?b:C(-b))?C(0):b;Qa=C(C(Qg*X)+C(C(Rg*Y)+C(Sg*ma)));oc=C(C(Tg*X)+C(C(Ug*Y)+C(Vg*ma)));Pa=C(C(Wg*X)+C(C(Xg*Y)+C(pg*ma)));pc=C(pc+C(kf+C(Ue*C(C(Qa*Qa)+C(C(oc*oc)+C(Pa*Pa))))));b=C(C(Ua*kc)-C(Bb*gc));Z=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Bb*cc)-C(La*kc));_=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(La*gc)-C(Ua*cc));na=F>(b>C(0)?b:C(-b))?C(0):b;sc=C(C(Yg*Z)+C(C(Zg*_)+C(_g*na)));oa=C(C($g*Z)+C(C(ah*_)+C(bh*na)));tc=C(C(ch*Z)+C(C(dh*_)+C(qg*na)));qc=C(qc+C(lf+C(Ve*C(C(sc*sc)+C(C(oa*oa)+C(tc*tc))))));b=C(C(Va*lc)-C(Cb*hc));pa=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Cb*dc)-C(Ma*lc));$=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Ma*hc)-C(Va*dc));aa=F>(b>C(0)?b:C(-b))?C(0):b;uc=C(C(eh*pa)+C(C(fh*$)+C(gh*aa)));vc=C(C(hh*pa)+C(C(ih*$)+C(jh*aa)));wc=C(C(kh*pa)+C(C(lh*$)+C(rg*aa)));rc=C(rc+C(mf+C(We*C(C(uc*uc)+C(C(vc*vc)+C(wc*wc))))));b=C(C(zb*mc)-C(Db*ic));ba=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Db*ec)-C(Sa*mc));P=F>(b>C(0)?b:C(-b))?C(0):b;b=C(C(Sa*ic)-C(zb*ec));b=F>(b>C(0)?b:C(-b))?C(0):b;Ra=C(C(sg*ba)+C(C(tg*P)+C(ug*b)));xc=C(C(vg*ba)+C(C(wg*P)+C(xg*b)));vb=C(C(yg*ba)+C(C(zg*P)+C(Qh*b)));nc=C(nc+C(ff+C(Xe*C(C(Ra*Ra)+C(C(xc*xc)+C(vb*vb))))));ma=C(C(Ud*X)+C(C(Vd*Y)+C(C(C($d*Ka)+C(C(ce*Ta)+C(fe*Ab)))+C(Pd*ma))));xb=C(C(Wd*Z)+C(C(Xd*_)+C(C(C(ae*La)+C(C(de*Ua)+C(ge*Bb)))+C(Qd*na))));yb=C(C(Yd*pa)+C(C(Zd*$)+C(C(C(be*Ma)+C(C(ee*Va)+C(he*Cb)))+C(Rd*aa))));b=C(C(Sd*ba)+C(C(Td*P)+C(C(C(ie*Sa)+C(C(je*zb)+C(ke*Db)))+C(_d*b))));break Ja}Ra=C(0);uc=C(0);sc=C(0);Qa=C(0);xc=C(0);vc=C(0);oa=C(0);oc=C(0);vb=C(0);wc=C(0);tc=C(0);Pa=C(0);Ka:{if(!A){yb=C(0);xb=C(0);ma=C(0);b=C(0);break Ka}ma=C(C(Ud*C(C(Ta*jc)-C(Ab*fc)))+C(C(Vd*C(C(Ab*bc)-C(Ka*jc)))+C(C(C($d*Ka)+C(C(ce*Ta)+C(fe*Ab)))+C(Pd*C(C(Ka*fc)-C(Ta*bc))))));xb=C(C(Wd*C(C(Ua*kc)-C(Bb*gc)))+C(C(Xd*C(C(Bb*cc)-C(La*kc)))+C(C(C(ae*La)+C(C(de*Ua)+C(ge*Bb)))+C(Qd*C(C(La*gc)-C(Ua*cc))))));yb=C(C(Yd*C(C(Va*lc)-C(Cb*hc)))+C(C(Zd*C(C(Cb*dc)-C(Ma*lc)))+C(C(C(be*Ma)+C(C(ee*Va)+C(he*Cb)))+C(Rd*C(C(Ma*hc)-C(Va*dc))))));b=C(C(Sd*C(C(zb*mc)-C(Db*ic)))+C(C(Td*C(C(Db*ec)-C(Sa*mc)))+C(C(C(ie*Sa)+C(C(je*zb)+C(ke*Db)))+C(_d*C(C(Sa*ic)-C(zb*ec))))))}}c=j+416|0;z[j+348>>2]=Qa;z[j+344>>2]=sc;z[j+340>>2]=uc;z[j+336>>2]=Ra;z[j+332>>2]=oc;z[j+328>>2]=oa;z[j+324>>2]=vc;z[j+320>>2]=xc;z[j+316>>2]=Pa;z[j+312>>2]=tc;z[j+308>>2]=wc;z[j+304>>2]=vb;z[j+412>>2]=pb;z[j+408>>2]=pb;z[j+404>>2]=pb;z[j+400>>2]=pb;z[j+300>>2]=ua;z[j+296>>2]=Za;z[j+292>>2]=Aa;z[j+288>>2]=ka;z[j+284>>2]=Xa;z[j+280>>2]=_a;z[j+276>>2]=da;z[j+272>>2]=la;z[j+268>>2]=Ya;z[j+264>>2]=qa;z[j+260>>2]=V;z[j+256>>2]=S;z[j+252>>2]=Ka;z[j+248>>2]=La;z[j+244>>2]=Ma;z[j+240>>2]=Sa;z[j+236>>2]=Ta;z[j+232>>2]=Ua;z[j+228>>2]=Va;z[j+224>>2]=zb;z[j+220>>2]=Ab;z[j+216>>2]=Bb;z[j+212>>2]=Cb;z[j+208>>2]=Db;z[j+380>>2]=ub*(pc>C(0)?C(C(.800000011920929)/pc):C(0));z[j+376>>2]=Vb*(qc>C(0)?C(C(.800000011920929)/qc):C(0));z[j+372>>2]=Wb*(rc>C(0)?C(C(.800000011920929)/rc):C(0));z[j+368>>2]=Xb*(nc>C(0)?C(C(.800000011920929)/nc):C(0));z[j+364>>2]=C(Ka*Dc)+C(C(Ab*Gb)+C(Ta*Hc));z[j+360>>2]=C(La*Ec)+C(C(Bb*Hb)+C(Ua*Ic));z[j+356>>2]=C(Ma*Fc)+C(C(Cb*Ib)+C(Va*Jc));z[j+352>>2]=C(Sa*Gc)+C(C(Db*Jb)+C(zb*Kc));z[j+396>>2]=C(C(C(Ka*Ha)+C(C(Ab*sa)+C(Ta*ra)))+C(Th*ma))-C(Uh*O);z[j+392>>2]=C(C(C(La*Rc)+C(C(Bb*Tc)+C(Ua*Sc)))+C(ng*xb))-C(og*J);z[j+388>>2]=C(C(C(Ma*Ac)+C(C(Cb*Cc)+C(Va*Bc)))+C(lg*yb))-C(mg*N);z[j+384>>2]=C(C(C(Sa*sb)+C(C(Db*zc)+C(zb*yc)))+C(jg*b))-C(kg*E);e=e+1|0;if((tb|0)!=(e|0)){continue}break}z[s+48>>2]=ab;z[s+32>>2]=bb;z[s+60>>2]=cb;z[s+56>>2]=qb;z[s+52>>2]=rb;z[s+44>>2]=db;z[s+40>>2]=Ja;z[s+36>>2]=$a;$b=$b+1|0;Fb=Fb+1|0;Eb=Eb+1|0;Lc=Lc+1|0}s=c;Pb=Pb+1|0;if((dd|0)!=(Pb|0)){continue}break}}xa=Ub+16|0;v[Na+_b>>2]=0;g=2}xa=I+160|0;k=g}xa=gb+32|0}else{k=1}La:{if((k|0)==2){break La}e=0;if(Qc){break La}while(1){c=v[(Q+32|0)+(e<<2)>>2];mB((Q+96|0)+B(e,176)|0,c,Oc,pb,Sb,z[Kb+84>>2],z[Kb+88>>2],z[Kb+100>>2],Q+808|0);d=(T<<5)+Pe|0;u[d+20>>1]=w[c+12|0];v[d+28>>2]=v[c+8>>2];T=T+1|0;e=e+1|0;if((Pc|0)!=(e|0)){continue}break}}m=x[Yb+4>>1];if(!m){break a}e=0;if((m|0)!=1){h=m&65534;c=0;while(1){k=v[(e<<2)+Q>>2];g=Q+96|0;d=g+B(e,176)|0;v[k+36>>2]=v[d+132>>2];t[k+42|0]=w[d+136|0];d=e|1;k=v[(d<<2)+Q>>2];d=g+B(d,176)|0;v[k+36>>2]=v[d+132>>2];t[k+42|0]=w[d+136|0];e=e+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(m&1)){break a}c=v[(e<<2)+Q>>2];e=(Q+96|0)+B(e,176)|0;v[c+36>>2]=v[e+132>>2];t[c+42|0]=w[e+136|0]}Uf=Uf+1|0;if((bi|0)!=(Uf|0)){continue}break}}xa=Q+832|0;a=v[v[a+64>>2]+368>>2];v[Oc>>2]=v[a>>2];v[a>>2]=Oc}function sn(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=C(0),p=0,q=0,r=0,s=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;q=xa-16|0;xa=q;d=v[37696];h=Ba[v[v[d>>2]+20>>2]](d)|0?42579:63804;h=Ba[v[v[d+12>>2]+8>>2]](d+12|0,6368,h,7621,269)|0;v[h+4>>2]=0;v[h>>2]=124876;l=xa-16|0;xa=l;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,4115,24422,17657,51)|0;if(d){c=d+19&-16;v[c-4>>2]=c-d}j=h+16|0;d=j+16|0;v[d+4>>2]=128;v[d>>2]=c;while(1){f=e<<5;u[(f+c|0)+20>>1]=65535;u[((f|32)+c|0)+20>>1]=65535;u[((f|64)+c|0)+20>>1]=65535;u[((f|96)+c|0)+20>>1]=65535;u[((f|128)+c|0)+20>>1]=65535;u[((f|160)+c|0)+20>>1]=65535;u[((f|192)+c|0)+20>>1]=65535;u[((f|224)+c|0)+20>>1]=65535;e=e+8|0;if((e|0)!=128){continue}break}v[d+16>>2]=h;v[d+20>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+368>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;c=d- -64|0;v[c>>2]=0;v[c+4>>2]=0;v[d+72>>2]=0;v[d+76>>2]=0;v[d+80>>2]=0;v[d+84>>2]=0;v[d+660>>2]=0;v[d+388>>2]=0;v[d+380>>2]=0;v[d+384>>2]=1024;v[d+372>>2]=64;v[d+376>>2]=32;v[d+364>>2]=d+104;t[d+360|0]=1;t[d+652|0]=1;v[d+656>>2]=d+396;v[d+680>>2]=0;v[d+952>>2]=0;v[d+664>>2]=64;v[d+668>>2]=32;v[d+672>>2]=0;v[d+676>>2]=2048;v[d+972>>2]=0;v[d+976>>2]=0;v[d+964>>2]=0;v[d+968>>2]=4096;v[d+956>>2]=64;v[d+960>>2]=32;v[d+948>>2]=d+688;t[d+944|0]=1;v[d+1020>>2]=0;v[d+1024>>2]=0;c=d+1028|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1036|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1044|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1068>>2]=0;v[d+1072>>2]=0;v[d+1064>>2]=1;c=d+1076|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1092>>2]=0;v[d+1096>>2]=0;c=d+1084|0;v[c>>2]=0;v[c+4>>2]=1;c=d+1100|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1108|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1116>>2]=0;c=d+1128|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1120|0;v[c>>2]=1061158912;v[c+4>>2]=-1;xh(d+1096|0,64);v[d+1188>>2]=0;c=d+1180|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1172|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1164|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1156>>2]=0;v[d+1160>>2]=0;v[d+1196>>2]=0;v[d+1200>>2]=0;c=d+1204|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1212|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1220>>2]=0;c=d+1232|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1224|0;v[c>>2]=1061158912;v[c+4>>2]=-1;xh(d+1200|0,64);c=d+1264|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1256|0;v[c>>2]=0;v[c+4>>2]=0;c=d+1248|0;v[c>>2]=0;v[c+4>>2]=0;v[d+1240>>2]=0;v[d+1244>>2]=0;v[d+1288>>2]=0;c=d+1280|0;v[c>>2]=-1;v[c+4>>2]=0;c=d+1272|0;v[c>>2]=0;v[c+4>>2]=1061158912;xh(d+1252|0,64);v[d+1852>>2]=0;c=d+1576|0;v[c>>2]=8192;v[c+4>>2]=0;c=d+1568|0;v[c>>2]=64;v[c+4>>2]=0;v[d+1556>>2]=d+1296;t[d+1552|0]=1;c=d+1560|0;v[c>>2]=0;v[c+4>>2]=64;v[d+2144>>2]=0;v[d+1872>>2]=0;c=d+1864|0;v[c>>2]=0;v[c+4>>2]=8192;c=d+1856|0;v[c>>2]=64;v[c+4>>2]=32;v[d+1848>>2]=d+1588;t[d+1844|0]=1;c=d+2164|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2156|0;v[c>>2]=0;v[c+4>>2]=8192;c=d+2148|0;v[c>>2]=64;v[c+4>>2]=21;v[d+2140>>2]=d+1880;t[d+2136|0]=1;v[d+2192>>2]=v[b+40>>2];c=v[b+44>>2];v[d+2200>>2]=0;v[d+2204>>2]=0;v[d+2196>>2]=c;c=d+2208|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2216|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2232|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2224|0;v[c>>2]=1061158912;v[c+4>>2]=-1;xh(d+2200|0,64);c=d+2256|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2248|0;v[c>>2]=0;v[c+4>>2]=0;v[d+2240>>2]=0;v[d+2244>>2]=0;c=d+2272|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2264|0;v[c>>2]=1061158912;v[c+4>>2]=-1;xh(d+2240|0,64);c=v[b+112>>2];v[d+2356>>2]=0;t[d+2282|0]=c>>>10&1;f=J9(d+2284|0,0,68);e=d+2728|0;v[e>>2]=0;v[e+4>>2]=0;v[d+2672>>2]=0;v[d+2664>>2]=0;v[d+2668>>2]=0;t[d+2660|0]=0;v[d+2656>>2]=0;v[d+2444>>2]=0;v[d+2448>>2]=0;v[d+2380>>2]=0;v[d+2360>>2]=c;v[d+2416>>2]=0;v[d+2420>>2]=0;c=d+2424|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2432|0;v[c>>2]=0;v[c+4>>2]=0;J9(d+2456|0,0,68);v[d+2752>>2]=0;v[d+2756>>2]=0;v[d+2736>>2]=0;c=d+2720|0;v[c>>2]=h;v[c+4>>2]=0;v[d+2744>>2]=21610;v[d+2740>>2]=d;v[d+2712>>2]=135620;e=d+2760|0;c=e;v[c>>2]=0;v[c+4>>2]=0;v[d+2768>>2]=0;v[d+2776>>2]=21586;c=d+2804|0;v[c>>2]=0;v[c+4>>2]=4;v[d+2800>>2]=d+2780;t[d+2796|0]=1;t[d+2844|0]=0;c=d+2836|0;v[c>>2]=0;v[c+4>>2]=4;v[d+2832>>2]=d+2812;t[d+2828|0]=1;v[d+2752>>2]=126184;v[d+2772>>2]=0;c=v[37696];g=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804;D=d+2848|0,E=Ba[v[v[c+12>>2]+8>>2]](c+12|0,28,g,16755,113)|0,v[D>>2]=E;c=xa-16|0;xa=c;xa=c+16|0;v[d+2856>>2]=0;v[d+2860>>2]=0;v[d+2852>>2]=d;v[d+2752>>2]=135696;v[e>>2]=h;v[e+4>>2]=0;c=d+2864|0;v[c>>2]=0;v[c+4>>2]=0;v[d+2872>>2]=0;v[d+2876>>2]=0;v[d+2880>>2]=21667;e=d+2908|0;v[e>>2]=0;v[e+4>>2]=4;v[d+2904>>2]=d+2884;t[d+2900|0]=1;t[d+2948|0]=0;e=d+2940|0;v[e>>2]=0;v[e+4>>2]=4;v[d+2936>>2]=d+2916;t[d+2932|0]=1;v[d+2856>>2]=126184;e=v[37696];g=v[37696];D=d+2952|0,E=(G=e+12|0,H=28,I=Ba[v[v[g>>2]+20>>2]](g)|0?37931:63804,J=16755,K=113,F=v[v[e+12>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0),v[D>>2]=E;e=xa-16|0;xa=e;xa=e+16|0;v[d+2984>>2]=0;e=d+2976|0;v[e>>2]=0;v[e+4>>2]=0;v[d+2956>>2]=d;v[d+2856>>2]=135772;v[c>>2]=h;v[c+4>>2]=0;c=d+2968|0;v[c>>2]=h;v[c+4>>2]=0;c=d+3096|0;v[c>>2]=0;v[c+4>>2]=0;v[d+2992>>2]=3341;v[d+2988>>2]=d;v[d+2960>>2]=135848;J9(d+3e3|0,0,72);v[d+3104>>2]=0;v[d+3144>>2]=0;v[d+3184>>2]=0;v[d+3224>>2]=0;c=d+3088|0;v[c>>2]=h;v[c+4>>2]=0;c=d+3136|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3112>>2]=14478;v[d+3108>>2]=d;v[d+3080>>2]=135924;c=d+3128|0;v[c>>2]=h;v[c+4>>2]=0;c=d+3176|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3152>>2]=14440;v[d+3148>>2]=d;v[d+3120>>2]=136e3;c=d+3168|0;v[c>>2]=h;v[c+4>>2]=0;c=d+3216|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3192>>2]=4829;v[d+3188>>2]=d;v[d+3160>>2]=136076;v[d+3264>>2]=0;v[d+3200>>2]=136152;c=d+3208|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3228>>2]=d;v[d+3232>>2]=4805;c=d+3256|0;v[c>>2]=0;v[c+4>>2]=0;c=d+3248|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3240>>2]=136228;v[d+3268>>2]=d;v[d+3272>>2]=4415;c=d+3296|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3304>>2]=0;c=d+3288|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3344>>2]=0;c=d+3336|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3312>>2]=5113;v[d+3308>>2]=d;v[d+3280>>2]=136304;c=d+3328|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3384>>2]=0;c=d+3376|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3352>>2]=4574;v[d+3348>>2]=d;v[d+3320>>2]=136380;c=d+3368|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3424>>2]=0;c=d+3416|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3392>>2]=3035;v[d+3388>>2]=d;v[d+3360>>2]=136456;c=d+3408|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3464>>2]=0;c=d+3456|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3432>>2]=63980;v[d+3428>>2]=d;v[d+3400>>2]=136532;c=d+3448|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3504>>2]=0;c=d+3496|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3472>>2]=63832;v[d+3468>>2]=d;v[d+3440>>2]=136608;c=d+3488|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3544>>2]=0;c=d+3536|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3512>>2]=3495;v[d+3508>>2]=d;v[d+3480>>2]=136684;c=d+3528|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3584>>2]=0;c=d+3576|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3552>>2]=3101;v[d+3548>>2]=d;v[d+3520>>2]=136760;c=d+3568|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3624>>2]=0;c=d+3616|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3592>>2]=3817;v[d+3588>>2]=d;v[d+3560>>2]=136836;c=d+3608|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3664>>2]=0;c=d+3656|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3632>>2]=15502;v[d+3628>>2]=d;v[d+3600>>2]=136912;c=d+3648|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3704>>2]=0;c=d+3696|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3672>>2]=3195;v[d+3668>>2]=d;v[d+3640>>2]=136988;c=d+3688|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3744>>2]=0;c=d+3736|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3712>>2]=15407;v[d+3708>>2]=d;v[d+3680>>2]=137064;c=d+3728|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3784>>2]=0;c=d+3776|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3752>>2]=14729;v[d+3748>>2]=d;v[d+3720>>2]=137140;c=d+3768|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3824>>2]=0;c=d+3816|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3792>>2]=14711;v[d+3788>>2]=d;v[d+3760>>2]=137216;c=d+3808|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3864>>2]=0;c=d+3856|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3832>>2]=21554;v[d+3828>>2]=d;v[d+3800>>2]=137292;c=d+3848|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3904>>2]=0;c=d+3896|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3872>>2]=15891;v[d+3868>>2]=d;v[d+3840>>2]=137368;c=d+3888|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3944>>2]=0;c=d+3936|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3912>>2]=15059;v[d+3908>>2]=d;v[d+3880>>2]=137444;c=d+3928|0;v[c>>2]=h;v[c+4>>2]=0;v[d+3984>>2]=0;c=d+3976|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3952>>2]=15128;v[d+3948>>2]=d;v[d+3920>>2]=137520;c=d+3968|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4024>>2]=0;c=d+4016|0;v[c>>2]=0;v[c+4>>2]=0;v[d+3992>>2]=21525;v[d+3988>>2]=d;v[d+3960>>2]=137596;c=d+4008|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4064>>2]=0;c=d+4056|0;v[c>>2]=0;v[c+4>>2]=0;v[d+4032>>2]=21640;v[d+4028>>2]=d;v[d+4e3>>2]=137672;c=d+4048|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4104>>2]=0;c=d+4096|0;v[c>>2]=0;v[c+4>>2]=0;v[d+4072>>2]=21712;v[d+4068>>2]=d;v[d+4040>>2]=137748;c=d+4088|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4144>>2]=0;v[d+4140>>2]=0;v[d+4136>>2]=0;v[d+4112>>2]=2169;v[d+4108>>2]=d;v[d+4080>>2]=137824;c=d+4128|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4152>>2]=64008;v[d+4148>>2]=d;v[d+4120>>2]=137900;v[d+4176>>2]=0;c=d+4168|0;v[c>>2]=0;v[c+4>>2]=0;v[d+4160>>2]=0;v[d+4164>>2]=0;v[d+4180>>2]=0;v[d+4160>>2]=126184;v[d+4212>>2]=0;v[d+4184>>2]=63860;v[d+4244>>2]=0;v[d+4216>>2]=4;v[d+4208>>2]=d+4188;t[d+4204|0]=1;t[d+4252|0]=0;v[d+4248>>2]=4;v[d+4240>>2]=d+4220;t[d+4236|0]=1;e=v[37696];g=v[37696];D=d+4256|0,E=(K=e+12|0,J=28,I=Ba[v[v[g>>2]+20>>2]](g)|0?37931:63804,H=16755,G=113,F=v[v[e+12>>2]+8>>2],Ba[F](K|0,J|0,I|0,H|0,G|0)|0),v[D>>2]=E;e=xa-16|0;xa=e;xa=e+16|0;v[d+4288>>2]=0;v[d+4328>>2]=0;v[d+4368>>2]=0;v[d+4284>>2]=0;v[d+4280>>2]=0;v[d+4260>>2]=d;v[d+4160>>2]=137976;v[c>>2]=h;v[c+4>>2]=0;c=d+4272|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4324>>2]=0;v[d+4320>>2]=0;v[d+4296>>2]=3551;v[d+4292>>2]=d;v[d+4264>>2]=138052;c=d+4312|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4364>>2]=0;v[d+4360>>2]=0;v[d+4336>>2]=14199;v[d+4332>>2]=d;v[d+4304>>2]=138128;v[d+4408>>2]=0;v[d+4344>>2]=138204;c=d+4352|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4372>>2]=d;v[d+4376>>2]=3519;c=d+4400|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4392|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4384>>2]=138280;v[d+4412>>2]=d;v[d+4416>>2]=3848;c=d+4440|0;v[c>>2]=0;v[c+4>>2]=0;v[d+4448>>2]=0;c=d+4432|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4488>>2]=0;v[d+4484>>2]=0;v[d+4480>>2]=0;v[d+4456>>2]=3944;v[d+4452>>2]=d;v[d+4424>>2]=138356;c=d+4472|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4528>>2]=0;v[d+4524>>2]=0;v[d+4520>>2]=0;v[d+4496>>2]=21693;v[d+4492>>2]=d;v[d+4464>>2]=138432;c=d+4512|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4568>>2]=0;v[d+4564>>2]=0;v[d+4560>>2]=0;v[d+4536>>2]=13911;v[d+4532>>2]=d;v[d+4504>>2]=138508;c=d+4552|0;v[c>>2]=h;v[c+4>>2]=0;v[d+4576>>2]=13891;v[d+4572>>2]=d;v[d+4544>>2]=138584;g=vu(d+4584|0);v[d+4624>>2]=0;v[d+4628>>2]=0;t[d+4621|0]=0;t[d+4620|0]=0;c=d+4632|0;v[c>>2]=0;v[c+4>>2]=0;e=d+4640|0;v[e>>2]=0;v[e+4>>2]=0;e=d+4648|0;v[e>>2]=0;v[e+4>>2]=0;v[d+4668>>2]=0;v[d+4664>>2]=0;v[d+4660>>2]=-1;v[d+4656>>2]=1061158912;xh(c,64);v[d+4740>>2]=0;v[d+4736>>2]=0;v[d+996>>2]=0;v[d+88>>2]=0;v[d+92>>2]=0;v[d+96>>2]=0;v[d+4672>>2]=0;v[d+4676>>2]=0;c=d+4680|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4688|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4696|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4704|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4712|0;v[c>>2]=0;v[c+4>>2]=0;c=d+4720|0;v[c>>2]=0;v[c+4>>2]=0;v[d+4728>>2]=0;c=v[37696];e=v[37696];D=d,E=J9((G=c+12|0,H=156,I=Ba[v[v[e>>2]+20>>2]](e)|0?30025:63804,J=11777,K=645,F=v[v[c+12>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0),0,156),v[D+2352>>2]=E;c=v[37696];e=v[37696];c=(E=c+12|0,F=44,K=Ba[v[v[e>>2]+20>>2]](e)|0?33035:63804,J=11777,I=646,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c+32>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+40>>2]=0;v[c+36>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[d+2364>>2]=c;c=v[37696];e=v[37696];c=(I=c+12|0,J=44,K=Ba[v[v[e>>2]+20>>2]](e)|0?33035:63804,F=11777,E=647,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,K|0,F|0,E|0)|0);v[c+32>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+40>>2]=0;v[c+36>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[d+2368>>2]=c;c=v[37696];e=v[37696];c=(E=c+12|0,F=44,K=Ba[v[v[e>>2]+20>>2]](e)|0?33035:63804,J=11777,I=648,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c+32>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+40>>2]=0;v[c+36>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[d+2372>>2]=c;c=v[37696];e=v[37696];c=(I=c+12|0,J=44,K=Ba[v[v[e>>2]+20>>2]](e)|0?33035:63804,F=11777,E=649,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,K|0,F|0,E|0)|0);v[c+32>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+40>>2]=0;v[c+36>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[d+2376>>2]=c;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,12,24422,11777,651)|0;v[d+1192>>2]=c;v[c+8>>2]=0;v[c+4>>2]=0;v[c>>2]=0;c=v[37696];e=v[37696];c=(E=c+12|0,F=32,K=Ba[v[v[e>>2]+20>>2]](e)|0?50635:63804,J=11777,I=654,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c+8>>2]=0;v[c+12>>2]=0;v[c+4>>2]=52;v[c>>2]=64;v[c+28>>2]=14784;t[c+24|0]=1;v[c+16>>2]=0;v[c+20>>2]=0;v[l+8>>2]=0;v[l>>2]=0;v[l+4>>2]=0;e=v[37696];i=Ba[v[v[e+12>>2]+8>>2]](e+12|0,3328,24422,18584,60)|0;e=v[c+16>>2];m=v[c+20>>2];v[l>>2]=i;a:{if(e>>>0>=(m&2147483647)>>>0){LO(c+12|0,l);break a}i=v[l+4>>2];e=v[c+12>>2]+B(e,12)|0;v[e>>2]=v[l>>2];v[e+4>>2]=i;v[e+8>>2]=v[l+8>>2];v[c+16>>2]=v[c+16>>2]+1}v[d+2388>>2]=c;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?50293:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,32,e,11777,655)|0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=64;v[c+4>>2]=176;v[c+28>>2]=14767;t[c+24|0]=1;v[c+16>>2]=0;v[c+20>>2]=0;v[l+8>>2]=0;v[l>>2]=0;v[l+4>>2]=0;e=v[37696];i=Ba[v[v[e+12>>2]+8>>2]](e+12|0,11264,24422,18584,60)|0;e=v[c+16>>2];m=v[c+20>>2];v[l>>2]=i;b:{if(e>>>0>=(m&2147483647)>>>0){LO(c+12|0,l);break b}i=v[l+4>>2];e=v[c+12>>2]+B(e,12)|0;v[e>>2]=v[l>>2];v[e+4>>2]=i;v[e+8>>2]=v[l+8>>2];v[c+16>>2]=v[c+16>>2]+1}v[d+2392>>2]=c;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?50463:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,32,e,11777,656)|0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=64;v[c+4>>2]=40;v[c+28>>2]=14775;t[c+24|0]=1;v[c+16>>2]=0;v[c+20>>2]=0;v[l+8>>2]=0;v[l>>2]=0;v[l+4>>2]=0;e=v[37696];i=Ba[v[v[e+12>>2]+8>>2]](e+12|0,2560,24422,18584,60)|0;e=v[c+16>>2];m=v[c+20>>2];v[l>>2]=i;c:{if(e>>>0>=(m&2147483647)>>>0){LO(c+12|0,l);break c}i=v[l+4>>2];e=v[c+12>>2]+B(e,12)|0;v[e>>2]=v[l>>2];v[e+4>>2]=i;v[e+8>>2]=v[l+8>>2];v[c+16>>2]=v[c+16>>2]+1}v[d+2384>>2]=c;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?51759:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,292,e,11777,657)|0;v[c+284>>2]=2560;v[c+288>>2]=0;v[c+276>>2]=32;v[c+280>>2]=0;v[c+264>>2]=c+4;t[c+260|0]=1;v[c+268>>2]=0;v[c+272>>2]=64;v[d+2396>>2]=c;c=v[37696];e=v[37696];c=(I=c+12|0,J=292,K=Ba[v[v[e>>2]+20>>2]](e)|0?51439:63804,F=11777,E=658,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,K|0,F|0,E|0)|0);v[c+284>>2]=1024;v[c+288>>2]=0;v[c+276>>2]=32;v[c+280>>2]=0;v[c+264>>2]=c+4;t[c+260|0]=1;v[c+268>>2]=0;v[c+272>>2]=64;v[d+2408>>2]=c;c=v[37696];e=v[37696];c=(E=c+12|0,F=292,K=Ba[v[v[e>>2]+20>>2]](e)|0?38601:63804,J=11777,I=659,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c+284>>2]=6144;v[c+288>>2]=0;v[c+276>>2]=32;v[c+280>>2]=0;v[c+264>>2]=c+4;t[c+260|0]=1;v[c+268>>2]=0;v[c+272>>2]=64;v[d+2400>>2]=c;c=v[37696];e=v[37696];c=(I=c+12|0,J=292,K=Ba[v[v[e>>2]+20>>2]](e)|0?38733:63804,F=11777,E=660,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,K|0,F|0,E|0)|0);v[c+284>>2]=22528;v[c+288>>2]=0;v[c+276>>2]=32;v[c+280>>2]=0;v[c+264>>2]=c+4;t[c+260|0]=1;v[c+268>>2]=0;v[c+272>>2]=64;v[d+2404>>2]=c;c=v[37696];e=v[37696];c=(E=c+12|0,F=292,K=Ba[v[v[e>>2]+20>>2]](e)|0?52047:63804,J=11777,I=662,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c+284>>2]=2048;v[c+288>>2]=0;v[c+276>>2]=32;v[c+280>>2]=0;v[c+264>>2]=c+4;t[c+260|0]=1;v[c+268>>2]=0;v[c+272>>2]=64;v[d+2412>>2]=c;c=v[37696];e=v[37696];e=(I=c+12|0,J=1,K=Ba[v[v[e>>2]+20>>2]](e)|0?29519:63804,F=11777,E=664,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,K|0,F|0,E|0)|0);v[l>>2]=e;c=v[d+2288>>2];d:{if(c>>>0>=(v[d+2292>>2]&2147483647)>>>0){MO(f,l);break d}v[v[d+2284>>2]+(c<<2)>>2]=e;v[d+2288>>2]=c+1}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?34103:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,376,e,11777,665)|0;v[c+292>>2]=0;v[c+296>>2]=0;v[c+288>>2]=1536;v[c+280>>2]=32;v[c+284>>2]=0;v[c+268>>2]=c+8;t[c+264|0]=1;v[c+272>>2]=0;v[c+276>>2]=64;v[c+300>>2]=0;v[c+304>>2]=0;v[c+308>>2]=0;v[c+312>>2]=0;v[c+316>>2]=0;v[c+328>>2]=0;v[c+332>>2]=0;v[c+320>>2]=1061158912;v[c+324>>2]=-1;xh(c+296|0,64);v[c+352>>2]=0;v[c+356>>2]=0;v[c+344>>2]=0;v[c+348>>2]=0;v[c+336>>2]=0;v[c+340>>2]=0;v[c+368>>2]=0;v[c+372>>2]=0;v[c+360>>2]=1061158912;v[c+364>>2]=-1;xh(c+336|0,64);v[d+1136>>2]=c;c=v[37696];e=v[37696];c=(E=c+12|0,F=48,K=Ba[v[v[e>>2]+20>>2]](e)|0?33697:63804,J=11777,I=667,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,K|0,J|0,I|0)|0);v[c>>2]=0;v[c+4>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[d+1152>>2]=c;c=v[37696];e=Ba[v[v[c>>2]+4>>2]](c)|0;f=v[b+116>>2];c=v[37696];i=Ba[v[v[c>>2]+20>>2]](c)|0?32163:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,96,i,8741,144)|0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+8>>2]=f;v[c+4>>2]=e;v[c>>2]=131412;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+36>>2]=1061158912;v[c+40>>2]=-1;YJ(c+12|0,64);v[c+52>>2]=0;e=v[37696];f=v[37696];D=c,I=(K=e+12|0,F=28,E=Ba[v[v[f>>2]+20>>2]](f)|0?37931:63804,H=16755,G=113,J=v[v[e+12>>2]+8>>2],Ba[J](K|0,F|0,E|0,H|0,G|0)|0),v[D+56>>2]=I;e=xa-16|0;xa=e;xa=e+16|0;v[c+92>>2]=0;v[c+84>>2]=0;v[c+88>>2]=0;v[c+76>>2]=0;v[c+80>>2]=0;v[c+68>>2]=0;v[c+72>>2]=0;v[c+60>>2]=0;v[c+64>>2]=0;v[d+4612>>2]=c;c=v[b+120>>2];e=d+2676|0;v[e>>2]=0;v[e+4>>2]=0;v[d+4616>>2]=c;c=d+2684|0;v[c>>2]=0;v[c+4>>2]=0;c=d+2692|0;v[c>>2]=0;v[c+4>>2]=0;v[d+2700>>2]=0;t[d+4621|0]=0;c=v[37696];e=v[37696];c=(I=c+12|0,J=1840,G=Ba[v[v[e>>2]+20>>2]](e)|0?26587:63804,H=11777,E=710,D=v[v[c+12>>2]+8>>2],Ba[D](I|0,J|0,G|0,H|0,E|0)|0);i=v[d+4612>>2];m=v[d+4616>>2];e=zG(c);c=e+24|0;f=v[37696];k=Ba[v[v[f>>2]+20>>2]](f)|0?37931:63804;D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,28,k,16755,113)|0,v[D>>2]=E;f=xa-16|0;xa=f;xa=f+16|0;J9(c+4|0,0,144);v[c+160>>2]=0;v[c+164>>2]=0;v[c+152>>2]=0;v[c+156>>2]=0;v[c+172>>2]=0;v[c+176>>2]=0;v[c+168>>2]=e;v[e+296>>2]=0;v[e+288>>2]=0;v[e+280>>2]=0;v[e+284>>2]=0;v[e+212>>2]=125980;v[e+204>>2]=0;v[e+208>>2]=0;v[e+216>>2]=0;v[e+220>>2]=0;v[e+224>>2]=0;v[e+228>>2]=0;v[e+232>>2]=0;v[e+236>>2]=0;v[e+240>>2]=0;v[e+244>>2]=0;v[e+248>>2]=0;v[e+252>>2]=0;v[e+256>>2]=0;v[e+260>>2]=0;v[e+264>>2]=0;v[e+268>>2]=0;t[e+269|0]=0;t[e+270|0]=0;t[e+271|0]=0;t[e+272|0]=0;t[e+273|0]=0;t[e+274|0]=0;t[e+275|0]=0;t[e+276|0]=0;f=v[37696];k=Ba[v[v[f>>2]+20>>2]](f)|0?38053:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,28,k,16913,103)|0;v[e+304>>2]=f;v[f>>2]=0;v[e+340>>2]=0;v[e+344>>2]=0;v[e+336>>2]=e;v[e+328>>2]=0;v[e+332>>2]=0;v[e+312>>2]=256;v[e+316>>2]=0;v[e+308>>2]=e;v[e+620>>2]=0;v[e+320>>2]=8;v[e+324>>2]=0;v[e+912>>2]=0;v[e+640>>2]=0;v[e+632>>2]=0;v[e+636>>2]=69632;v[e+624>>2]=64;v[e+628>>2]=256;v[e+616>>2]=e+356;t[e+612|0]=1;t[e+904|0]=1;v[e+908>>2]=e+648;v[e+940>>2]=0;v[e+916>>2]=64;v[e+920>>2]=256;v[e+924>>2]=0;v[e+928>>2]=32768;v[e+932>>2]=0;v[e+936>>2]=0;v[e+948>>2]=0;v[e+952>>2]=0;v[e+960>>2]=0;v[e+964>>2]=0;v[e+972>>2]=0;v[e+976>>2]=0;v[e+984>>2]=0;v[e+988>>2]=0;f=v[37696];k=v[37696];D=e,E=(G=f+12|0,J=28,I=Ba[v[v[k>>2]+20>>2]](k)|0?37931:63804,F=16755,K=113,H=v[v[f+12>>2]+8>>2],Ba[H](G|0,J|0,I|0,F|0,K|0)|0),v[D+1016>>2]=E;f=xa-16|0;xa=f;xa=f+16|0;v[e+1160>>2]=m;v[e+1156>>2]=g;v[e+1152>>2]=i;v[e+1028>>2]=0;v[e+1020>>2]=0;v[e+1024>>2]=0;J9(e+1164|0,0,648);f=v[b+112>>2];v[e+1832>>2]=h;v[e+1836>>2]=0;t[e+1813|0]=0;t[e+1814|0]=f>>>11&1;t[e+1812|0]=f>>>6&1;J9(v[e+972>>2],0,v[e+976>>2]<<2);J9(v[e+984>>2],0,v[e+988>>2]<<2);v[e+1012>>2]=0;v[e+1004>>2]=0;v[e+1008>>2]=0;v[e+996>>2]=0;v[e+1e3>>2]=0;f=e+1144|0;v[f>>2]=2122317823;v[f+4>>2]=2122317823;f=e+1136|0;v[f>>2]=-25165825;v[f+4>>2]=2122317823;v[e+1128>>2]=-25165825;v[e+1132>>2]=-25165825;J9(e+1032|0,0,96);f=v[b+156>>2];g=v[b+152>>2];v[c+148>>2]=g;v[c+144>>2]=f;f=g>>>0>64?g:64;if(f>>>0>(v[c+12>>2]&2147483647)>>>0){Ay(c+4|0,f)}if(!(v[c+108>>2]&2147483632)){By(c+100|0,16)}if(f>>>0>(v[c+48>>2]&2147483647)>>>0){Ay(c+40|0,f)}if(f>>>0>(v[c+60>>2]&2147483647)>>>0){Ay(c+52|0,f)}if(f>>>0>(v[c+72>>2]&2147483647)>>>0){Ay(c- -64|0,f)}if(f>>>0>(v[c+84>>2]&2147483647)>>>0){Ay(c+76|0,f)}if(f>>>0>(v[c+120>>2]&2147483647)>>>0){Ay(c+112|0,f)}Cy(c,g);v[d+976>>2]=e;v[e+296>>2]=d;v[d+1008>>2]=0;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,16,24422,8452,71)|0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=131596;v[c+12>>2]=0;v[d+1008>>2]=c;f=v[b+80>>2];m=v[b+84>>2];k=v[b- -64>>2];n=v[b+68>>2];e:{f:{g:{h:{c=v[b+48>>2];switch(((c|0)==3?2:c)-1|0){case 0:break g;case 1:break h;default:break f}}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?49271:63804;e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,40,e,13489,3401)|0;c=e;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=131688;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;c=v[37696];f=Ba[v[v[c>>2]+20>>2]](c)|0?49393:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,388,f,13489,3102)|0;v[c>>2]=0;OK(c+4|0,0);OK(c+96|0,2);SU(c+188|0);OK(c+224|0,1);v[c+316>>2]=0;v[c+320>>2]=0;v[c+324>>2]=0;v[c+328>>2]=0;v[c+332>>2]=0;v[c+336>>2]=0;v[c+340>>2]=0;v[c+344>>2]=0;v[c+364>>2]=0;v[c+356>>2]=0;v[c+360>>2]=0;v[c+348>>2]=0;v[c+352>>2]=0;v[c+368>>2]=0;v[c+372>>2]=0;v[c+384>>2]=0;v[c+376>>2]=0;v[c+380>>2]=0;v[e+4>>2]=c;f=k+n|0;if(f){g=v[c+316>>2];if(g){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,g)}v[c+316>>2]=0;i=f<<2;k=(f|0)!=(f&1073741823)?-1:i;if(k){g=v[37696];n=Ba[v[v[g>>2]+20>>2]](g)|0?29721:63804;g=Ba[v[v[g+12>>2]+8>>2]](g+12|0,k,n,13489,2858)|0}else{g=0}g=J9(g,255,i);v[c+320>>2]=f;v[c+316>>2]=g}ZH(c+340|0,m);if(!(v[e+16>>2]&2147482624)){cL(e+8|0,1024)}if(!(v[e+28>>2]&2147482624)){cL(e+20|0,1024)}c=e;break e}g=0;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?49069:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,136,e,11138,66)|0;v[c+32>>2]=0;v[c+92>>2]=0;v[c+96>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c>>2]=131836;v[c+36>>2]=0;v[c+40>>2]=0;v[c+16>>2]=h;v[c+20>>2]=0;e=c- -64|0;v[e>>2]=0;v[e+4>>2]=0;v[c+8>>2]=131932;v[c+76>>2]=0;v[c+80>>2]=0;v[c+56>>2]=h;v[c+60>>2]=0;v[c+48>>2]=132020;p=c+100|0;e=p;v[e>>2]=0;v[e+4>>2]=0;v[c+108>>2]=0;v[c+112>>2]=0;v[c+116>>2]=0;v[c+120>>2]=0;v[c+124>>2]=0;v[c+128>>2]=0;v[c+72>>2]=0;e=v[37696];i=Ba[v[v[e>>2]+20>>2]](e)|0?49191:63804;i=Ba[v[v[e+12>>2]+8>>2]](e+12|0,4224,i,13406,2956)|0;e=i;v[e+12>>2]=0;v[e+16>>2]=0;v[e+8>>2]=-1;v[e>>2]=0;v[e+4>>2]=-1;v[e+20>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+40>>2]=0;v[e+60>>2]=0;v[e+52>>2]=0;v[e+56>>2]=0;v[e+44>>2]=0;v[e+48>>2]=0;v[e+72>>2]=0;v[e+64>>2]=0;v[e+68>>2]=0;v[e+76>>2]=0;v[e+80>>2]=0;v[e+84>>2]=0;v[e+88>>2]=0;J9(e+92|0,0,3084);v[e+4212>>2]=0;v[e+4204>>2]=0;v[e+4208>>2]=0;e=e+4216|0;v[e>>2]=0;v[e+4>>2]=0;J9(i+3176|0,255,1028);v[c+88>>2]=i;e=k+n|0;i:{if(!f){break i}v[i+16>>2]=0;if(f>>>0<=(v[i+20>>2]&2147483647)>>>0){break i}tL(i+12|0,f)}if(e){v[i+28>>2]=0;if(e>>>0>(v[i+32>>2]&2147483647)>>>0){uL(i+24|0,e)}f=(e>>>5|0)+((e&31)!=0)|0;v[i+4220>>2]=f;k=v[i+4216>>2];if(k){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,k);v[i+4216>>2]=0;f=v[i+4220>>2]}f=f<<2;j:{if(!f){f=0;k=0;break j}k=v[37696];f=Ba[v[v[k+12>>2]+8>>2]](k+12|0,f,24422,13406,254)|0;k=v[i+4220>>2]<<2}v[i+4216>>2]=f;J9(f,0,k);J9(v[i+4216>>2],0,v[i+4220>>2]<<2)}ZH(i+36|0,m);if(e){i=e<<2;if(i){f=v[37696];g=Ba[v[v[f+12>>2]+8>>2]](f+12|0,i,24422,13406,2977)|0}f=v[c+96>>2];if(f){I9(g,v[c+92>>2],f<<2);f=v[c+96>>2]}else{f=0}if(f>>>0>>0){f=f<<2;J9(f+g|0,255,i-f|0)}f=v[c+92>>2];if(f){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,f)}v[c+96>>2]=e;v[c+92>>2]=g}if(!(v[c+108>>2]&2147482624)){cL(p,1024)}if(!(v[c+120>>2]&2147482624)){cL(c+112|0,1024)}break e}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?35571:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,440,e,11138,68)|0;v[c+32>>2]=0;v[c+4>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c>>2]=132220;v[c+16>>2]=h;v[c+20>>2]=0;e=c- -64|0;v[e>>2]=0;v[e+4>>2]=0;v[c+8>>2]=132108;v[c+56>>2]=h;v[c+60>>2]=0;v[c+48>>2]=132164;v[c+72>>2]=0;v[c+216>>2]=0;v[c+220>>2]=0;v[c+248>>2]=0;v[c+252>>2]=0;v[c+240>>2]=0;v[c+244>>2]=0;v[c+232>>2]=0;v[c+236>>2]=0;v[c+224>>2]=0;v[c+228>>2]=0;v[c+312>>2]=0;v[c+360>>2]=0;v[c+304>>2]=0;v[c+308>>2]=0;v[c+352>>2]=0;v[c+356>>2]=0;v[c+332>>2]=0;v[c+324>>2]=0;v[c+328>>2]=0;v[c+316>>2]=0;v[c+320>>2]=-1;v[c+288>>2]=132316;v[c+400>>2]=0;v[c+404>>2]=0;v[c+380>>2]=0;v[c+372>>2]=0;v[c+376>>2]=0;v[c+364>>2]=0;v[c+368>>2]=-1;v[c+336>>2]=132316;v[c+420>>2]=0;v[c+424>>2]=0;v[c+412>>2]=0;v[c+416>>2]=-1;v[c+432>>2]=h;v[c+436>>2]=0;v[c+428>>2]=0;v[c+384>>2]=132316;v[c+408>>2]=0;v[c+392>>2]=h;v[c+396>>2]=0;v[c+344>>2]=h;v[c+348>>2]=0;v[c+296>>2]=h;v[c+300>>2]=0;v[c+188>>2]=0;v[c+192>>2]=0;f=(k+n|0)+31&-32;v[c+128>>2]=f;k:{l:{e=f<<3;m:{if(!e){v[c+132>>2]=0;g=c+132|0;break m}f=v[37696];D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,69)|0,v[D+132>>2]=E;g=c+132|0;f=v[c+128>>2];e=(f<<3)+15&-16;if(e){break l}}e=0;i=c+136|0;v[i>>2]=0;break k}i=c+136|0;f=v[37696];D=i,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,70)|0,v[D>>2]=E;f=v[c+128>>2];e=(f<<3)+15&-16;if(!e){e=0;break k}f=v[37696];e=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,71)|0;f=v[c+128>>2]}v[c+140>>2]=e;n:{o:{if(!f){v[c+168>>2]=0;v[c+196>>2]=2;i=c+196|0;g=16;break o}i=v[i>>2];n=v[g>>2];f=0;while(1){g=f<<3;k=g+n|0;v[k>>2]=1073741823;v[k+4>>2]=1073741823;k=g+i|0;v[k>>2]=1073741823;v[k+4>>2]=1073741823;g=e+g|0;v[g>>2]=1073741823;v[g+4>>2]=1073741823;f=f+1|0;k=v[c+128>>2];if(f>>>0>>0){continue}break}f=(k<<1)+2|0;v[c+196>>2]=f;i=c+196|0;e=0;g=0;k=k+15&-16;if(k){f=v[37696];g=Ba[v[v[f+12>>2]+8>>2]](f+12|0,k,24422,9522,85)|0;f=v[c+196>>2]}v[c+168>>2]=g;g=(f<<2)+15&-16;if(!g){break n}}e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,g,24422,9522,86)|0;f=v[i>>2]}v[c+172>>2]=e;e=(f<<3)+15&-16;p:{if(!e){g=0;break p}f=v[37696];g=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,87)|0;f=v[i>>2]}v[c+176>>2]=g;q:{r:{s:{t:{u:{v:{e=(f<<2)+15&-16;w:{if(!e){v[c+144>>2]=0;break w}f=v[37696];D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,89)|0,v[D+144>>2]=E;e=(v[c+196>>2]<<2)+15&-16;if(e){break v}}v[c+148>>2]=0;break u}f=v[37696];D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,90)|0,v[D+148>>2]=E;e=(v[c+196>>2]<<2)+15&-16;if(e){break t}}v[c+152>>2]=0;break s}f=v[37696];D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,91)|0,v[D+152>>2]=E;e=(v[c+196>>2]<<2)+15&-16;if(e){break r}}v[c+156>>2]=0;f=0;e=0;break q}f=v[37696];D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,92)|0,v[D+156>>2]=E;e=(v[c+196>>2]<<2)+15&-16;if(!e){f=0;e=0;break q}f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,93)|0;e=(v[i>>2]<<2)+15&-16}v[c+160>>2]=f;f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,9522,94)|0;v[c+164>>2]=f;g=v[c+156>>2];e=0;k=v[c+144>>2];v[k>>2]=0;v[g>>2]=1073741822;v[k+4>>2]=-1;v[g+4>>2]=1073741823;g=v[c+160>>2];k=v[c+148>>2];v[k>>2]=0;v[g>>2]=1073741822;v[k+4>>2]=-1;v[g+4>>2]=1073741823;g=v[c+152>>2];v[g>>2]=0;v[f>>2]=1073741822;v[g+4>>2]=-1;v[f+4>>2]=1073741823;g=v[c+196>>2];f=(g<<2)+15&-16;x:{if(!f){v[c+180>>2]=0;break x}g=v[37696];D=c,E=Ba[v[v[g+12>>2]+8>>2]](g+12|0,f,24422,9522,104)|0,v[D+180>>2]=E;g=v[c+196>>2];f=(g<<2)+15&-16;if(!f){break x}e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,24422,9522,105)|0;g=v[i>>2]}v[c+184>>2]=e;f=1;k=v[c+180>>2];if(g>>>0>1){while(1){g=f-1|0;v[k+(g<<2)>>2]=f;v[(f<<2)+e>>2]=g;f=f+1|0;g=v[i>>2];if(f>>>0>>0){continue}break}}f=g-1|0;v[k+(f<<2)>>2]=f;v[e>>2]=0;e=m>>>0>64?m:64;v[c+200>>2]=e;f=(e<<2)+15&-16;y:{if(!f){v[c+216>>2]=0;f=0;break y}g=v[37696];D=c,E=Ba[v[v[g+12>>2]+8>>2]](g+12|0,f,24422,5684,103)|0,v[D+216>>2]=E;g=v[37696];f=Ba[v[v[g+12>>2]+8>>2]](g+12|0,f,24422,5684,104)|0}v[c+220>>2]=f;f=0;g=(e<<3)+15&-16;if(g){i=v[37696];g=Ba[v[v[i+12>>2]+8>>2]](i+12|0,g,24422,5684,105)|0}else{g=0}v[c+236>>2]=g;g=e+15&-16;if(g){f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,g,24422,5684,106)|0}v[c+248>>2]=e;v[c+232>>2]=e;v[c+228>>2]=e;v[c+240>>2]=f;v[c+412>>2]=c;v[c+364>>2]=c;v[c+428>>2]=0;v[c+416>>2]=2;v[c+420>>2]=0;v[c+316>>2]=c;v[c+380>>2]=0;v[c+368>>2]=1;v[c+372>>2]=0;v[c+332>>2]=0;v[c+320>>2]=0;v[c+324>>2]=0;v[c+212>>2]=0;v[c+204>>2]=0;v[c+208>>2]=0;v[c+256>>2]=0;v[c+260>>2]=0;v[c+120>>2]=0;v[c+264>>2]=0;v[c+268>>2]=0;v[c+272>>2]=0;v[c+276>>2]=0;v[c+280>>2]=0}v[d+984>>2]=c;c=v[d+1008>>2];f=Ba[v[v[c>>2]+8>>2]](c,v[b+240>>2])|0;v[l>>2]=f;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?25471:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,20,e,11777,774)|0;v[c+12>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=f;v[d+1140>>2]=c;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,16,24422,11777,776)|0;e=v[l>>2];v[c+12>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=e;t[d+1148|0]=0;v[d+1144>>2]=c;i=v[d+2360>>2];c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,1240,24422,11777,782)|0;g=xa-16|0;xa=g;v[c>>2]=0;v[c+4>>2]=0;v[c+68>>2]=0;v[c+72>>2]=0;v[c+56>>2]=0;v[c+60>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c- -64>>2]=2048;v[c+76>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;v[c+88>>2]=0;e=c+92|0;v[e>>2]=0;v[e+4>>2]=0;v[c+100>>2]=0;v[c+104>>2]=0;v[c+108>>2]=0;v[c+112>>2]=0;v[c+116>>2]=0;v[c+120>>2]=0;v[c+124>>2]=2048;v[c+144>>2]=0;v[c+136>>2]=0;v[c+140>>2]=0;v[c+128>>2]=0;v[c+132>>2]=0;v[c+156>>2]=0;v[c+148>>2]=2048;v[c+152>>2]=0;m=c+168|0;k=c+80|0;n=c+104|0;p=oF(m,k,n,e,h);n=oF(c+640|0,0,n,0,h);e=c+1112|0;v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=h;v[e+12>>2]=0;v[e+32>>2]=n;v[e+28>>2]=c;v[e>>2]=130432;e=c+1152|0;v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=h;v[e+12>>2]=0;v[e+32>>2]=p;v[e+28>>2]=c;v[e>>2]=130432;e=c+1192|0;v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=h;v[e+12>>2]=0;v[e+28>>2]=c;v[e>>2]=130476;v[c+1232>>2]=h;v[c+1236>>2]=0;v[g+12>>2]=0;WF(k,1024,g+12|0);k=i&16384;v[c+1224>>2]=k>>>14|0?-1:1e3;xa=g+16|0;v[d+1e3>>2]=c;c=i&8;e=v[d+976>>2];g=e+1164|0;i=e+24|0;n=w[d+2282|0];p=v[e+1152>>2];r=v[e+1156>>2];z:{if(!v[b+92>>2]){n=(n|0)!=0;k=(k|0)!=0;s=(c|0)!=0;o=z[b+160>>2];A=(v[b+112>>2]&32768)>>>15|0;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,608,24422,7691,134)|0;if(c){v[c+4>>2]=0;v[c+8>>2]=0;v[c+180>>2]=g;v[c+164>>2]=f;v[c+104>>2]=32;v[c+84>>2]=-1073741824;t[c+66|0]=s;t[c+65|0]=k;t[c+64|0]=n;z[c+60>>2]=o;v[c+52>>2]=1065353216;v[c+56>>2]=1065353216;v[c+44>>2]=m;v[c+36>>2]=0;v[c+40>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+176>>2]=0;v[c+168>>2]=0;v[c+172>>2]=0;v[c+192>>2]=0;v[c+196>>2]=0;v[c>>2]=128184;v[c+200>>2]=0;v[c+204>>2]=0;v[c+208>>2]=0;v[c+212>>2]=0;v[c+216>>2]=0;v[c+220>>2]=0;g=v[37696];m=Ba[v[v[g>>2]+20>>2]](g)|0?38053:63804;g=Ba[v[v[g+12>>2]+8>>2]](g+12|0,28,m,16913,103)|0;v[c+336>>2]=g;v[g>>2]=0;v[c+480>>2]=0;v[c+472>>2]=0;v[c+476>>2]=0;v[c+340>>2]=i;J9(c+344|0,0,120);v[c+528>>2]=0;v[c+520>>2]=0;v[c+524>>2]=0;v[c+512>>2]=0;v[c+516>>2]=0;v[c+504>>2]=0;v[c+508>>2]=0;v[c+496>>2]=0;v[c+500>>2]=0;v[c+600>>2]=h;v[c+604>>2]=0;v[c+588>>2]=p;v[c+584>>2]=r;v[c+580>>2]=e;v[c+576>>2]=0;v[c+540>>2]=d;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,16830,262)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+4>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,16830,264)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+8>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,7691,190)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+464>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,7691,191)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+592>>2]=0;v[c+536>>2]=0;v[c+468>>2]=e;v[c+256>>2]=0;v[c+260>>2]=0;v[c+232>>2]=0;v[c+236>>2]=0;v[c+208>>2]=0;v[c+212>>2]=0;v[c+192>>2]=0;v[c+196>>2]=0;v[c+264>>2]=0;v[c+268>>2]=0;v[c+272>>2]=0;v[c+276>>2]=0;v[c+280>>2]=0;v[c+284>>2]=0;v[c+288>>2]=0;v[c+300>>2]=2139095039;v[c+292>>2]=-8388609;v[c+296>>2]=33554431;v[c+248>>2]=0;v[c+252>>2]=2139095039;v[c+216>>2]=0;v[c+220>>2]=65535;v[c+200>>2]=0;v[c+204>>2]=-1;v[c+240>>2]=0;v[c+244>>2]=0;v[c+224>>2]=0;v[c+228>>2]=0;v[c+304>>2]=0;v[c+308>>2]=0;v[c+312>>2]=0;v[c+316>>2]=1065353216;u[c+326>>1]=0;u[c+328>>1]=0;u[c+330>>1]=0;u[c+332>>1]=0;v[c+320>>2]=0;v[c+324>>2]=0;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,8,24422,10146,174)|0;if(e){t[e+4|0]=A;v[e>>2]=129264}v[c+484>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,4,24422,13572,200)|0;if(e){v[e>>2]=129508}v[c+488>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,4,24422,13572,200)|0;if(e){v[e>>2]=129508}v[c+492>>2]=e}break z}n=(n|0)!=0;k=(k|0)!=0;s=(c|0)!=0;o=z[b+244>>2];c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,640,24422,7773,108)|0;if(c){v[c+4>>2]=0;v[c+8>>2]=0;v[c+180>>2]=g;v[c+164>>2]=f;v[c+104>>2]=32;v[c+84>>2]=-1073741824;t[c+66|0]=s;t[c+65|0]=k;t[c+64|0]=n;v[c+60>>2]=2139095039;v[c+52>>2]=1065353216;v[c+56>>2]=1065353216;v[c+44>>2]=m;v[c+36>>2]=0;v[c+40>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+176>>2]=0;v[c+168>>2]=0;v[c+172>>2]=0;v[c>>2]=132404;g=v[37696];m=Ba[v[v[g>>2]+20>>2]](g)|0?38053:63804;g=Ba[v[v[g+12>>2]+8>>2]](g+12|0,28,m,16913,103)|0;v[c+368>>2]=g;v[g>>2]=0;v[c+372>>2]=i;J9(c+376|0,0,132);v[c+556>>2]=0;v[c+560>>2]=0;v[c+548>>2]=0;v[c+552>>2]=0;v[c+540>>2]=0;v[c+544>>2]=0;v[c+532>>2]=0;v[c+536>>2]=0;v[c+524>>2]=0;v[c+528>>2]=0;v[c+516>>2]=0;v[c+520>>2]=0;v[c+632>>2]=h;v[c+636>>2]=0;v[c+624>>2]=p;v[c+620>>2]=r;v[c+616>>2]=e;z[c+612>>2]=o;v[c+608>>2]=0;v[c+572>>2]=d;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,16830,262)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+4>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,16830,264)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+8>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,7773,274)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+508>>2]=e;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,16,24422,7773,275)|0;v[e+12>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=f;v[c+628>>2]=0;v[c+568>>2]=0;v[c+512>>2]=e;J9(c+192|0,0,76);v[c+316>>2]=0;v[c+308>>2]=0;v[c+312>>2]=0;v[c+300>>2]=0;v[c+304>>2]=0;v[c+292>>2]=0;v[c+296>>2]=0;v[c+284>>2]=0;v[c+288>>2]=0;v[c+276>>2]=0;v[c+280>>2]=0;v[c+268>>2]=1065353216;v[c+272>>2]=0;v[c+360>>2]=2139095039;v[c+352>>2]=0;v[c+356>>2]=33554431;v[c+344>>2]=0;v[c+348>>2]=-8388609;v[c+336>>2]=0;v[c+340>>2]=0;v[c+328>>2]=0;v[c+332>>2]=2139095039;v[c+320>>2]=0;v[c+324>>2]=0}}v[d+1004>>2]=c;e=v[d+976>>2];g=e;i=v[d+1e3>>2]+168|0;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,116,24422,6023,604)|0;if(c){v[c+4>>2]=e;v[c+8>>2]=134112;v[c>>2]=133964;J9(c+12|0,0,96);v[c+108>>2]=i;e=v[37696];i=Ba[v[v[e>>2]+20>>2]](e)|0?37931:63804;D=c,E=Ba[v[v[e+12>>2]+8>>2]](e+12|0,28,i,16755,113)|0,v[D+112>>2]=E;e=xa-16|0;xa=e;xa=e+16|0}v[g+1024>>2]=c;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,8,24422,11777,805)|0;v[c+4>>2]=d;v[c>>2]=134640;v[d+1016>>2]=c;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,8,24422,8260,37)|0;v[e>>2]=139176;v[e+4>>2]=c;v[d+1012>>2]=e;c=v[37696];e=v[37696];c=(E=c+12|0,H=568,K=Ba[v[v[e>>2]+20>>2]](e)|0?34389:63804,F=11777,I=808,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,H|0,K|0,F|0,I|0)|0);i=v[d+984>>2];m=v[d+1140>>2];k=v[d+1144>>2];g=v[b+68>>2]+v[b+64>>2]|0;n=v[b+40>>2];p=v[b+44>>2];e=v[37696];r=Ba[v[v[e>>2]+20>>2]](e)|0?37931:63804;D=c,I=Ba[v[v[e+12>>2]+8>>2]](e+12|0,28,r,16755,113)|0,v[D>>2]=I;e=xa-16|0;xa=e;xa=e+16|0;v[c+32>>2]=0;v[c+72>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=h;v[c+20>>2]=0;e=c- -64|0;v[e>>2]=0;v[e+4>>2]=0;v[c+40>>2]=c;v[c+36>>2]=0;v[c+8>>2]=130800;v[c+56>>2]=h;v[c+60>>2]=0;v[c+104>>2]=0;v[c+108>>2]=0;v[c+80>>2]=63918;v[c+76>>2]=c;v[c+48>>2]=131108;v[c+96>>2]=h;v[c+100>>2]=0;v[c+88>>2]=130724;v[c+124>>2]=0;v[c+128>>2]=0;v[c+116>>2]=0;v[c+120>>2]=0;v[c+112>>2]=0;v[c+160>>2]=0;v[c+164>>2]=0;v[c+148>>2]=0;v[c+152>>2]=0;v[c+136>>2]=0;v[c+140>>2]=0;v[c+168>>2]=v[l>>2];e=v[l>>2];v[c+204>>2]=0;v[c+196>>2]=0;v[c+200>>2]=0;v[c+192>>2]=k;v[c+188>>2]=0;v[c+180>>2]=0;v[c+184>>2]=0;v[c+176>>2]=e;e=v[l>>2];v[c+236>>2]=0;v[c+228>>2]=0;v[c+232>>2]=0;v[c+224>>2]=e;e=v[l>>2];v[c+252>>2]=0;v[c+244>>2]=0;v[c+248>>2]=0;v[c+240>>2]=e;e=v[l>>2];v[c+276>>2]=m;v[c+272>>2]=i;v[c+268>>2]=0;v[c+260>>2]=0;v[c+264>>2]=0;v[c+256>>2]=e;J9(c+280|0,0,85);v[c+376>>2]=0;v[c+380>>2]=0;v[c+368>>2]=0;v[c+372>>2]=-1;t[c+365|0]=1;v[c+384>>2]=0;v[c+388>>2]=0;v[c+392>>2]=0;v[c+396>>2]=0;v[c+400>>2]=0;v[c+404>>2]=0;v[c+408>>2]=0;v[c+412>>2]=0;v[c+416>>2]=0;v[c+420>>2]=0;v[c+424>>2]=0;v[c+436>>2]=0;v[c+440>>2]=0;v[c+428>>2]=1061158912;v[c+432>>2]=-1;kI(c+404|0,64);v[c+460>>2]=0;v[c+464>>2]=0;v[c+452>>2]=0;v[c+456>>2]=0;v[c+444>>2]=0;v[c+448>>2]=0;v[c+476>>2]=0;v[c+480>>2]=0;v[c+468>>2]=1061158912;v[c+472>>2]=-1;kI(c+444|0,64);v[c+500>>2]=0;v[c+504>>2]=0;v[c+492>>2]=0;v[c+496>>2]=-2;v[c+484>>2]=0;v[c+488>>2]=0;v[c+508>>2]=0;v[c+512>>2]=0;v[c+516>>2]=0;v[c+520>>2]=0;v[c+524>>2]=0;v[c+528>>2]=0;v[c+532>>2]=0;v[c+544>>2]=0;v[c+548>>2]=0;v[c+536>>2]=1061158912;v[c+540>>2]=-1;lI(c+512|0,64);v[c+552>>2]=h;v[c+556>>2]=0;e=v[37696];i=v[37696];e=(I=e+12|0,F=28,K=Ba[v[v[i>>2]+20>>2]](i)|0?38053:63804,H=16913,E=103,D=v[v[e+12>>2]+8>>2],Ba[D](I|0,F|0,K|0,H|0,E|0)|0);v[c+560>>2]=e;v[e>>2]=0;hI(c,g>>>0>1?g:1);v[c+208>>2]=0;v[c+212>>2]=0;t[c+217|0]=1;t[c+218|0]=1;t[c+219|0]=1;t[c+220|0]=1;t[c+221|0]=1;t[c+222|0]=1;t[c+223|0]=1;e=(p|0)!=2;t[c+212|0]=e;t[c+214|0]=1;t[c+209|0]=e;t[c+213|0]=(n|0)!=2;t[c+215|0]=1;t[c+216|0]=1;u[c+210>>1]=257;v[d+980>>2]=c;e=v[b+60>>2];A:{if(!e){break A}e=(e<<1)+256>>>5&134217720;if(e>>>0<=(v[c+164>>2]&2147483647)>>>0){break A}g=v[c+168>>2];g=Ba[v[v[g>>2]+8>>2]](g,e<<2,17999,438)|0;i=v[c+160>>2];B:{if(!i){break B}I9(g,i,v[c+164>>2]<<2);if(v[c+164>>2]<0){break B}i=v[c+160>>2];if(!i){break B}m=v[c+168>>2];Ba[v[v[m>>2]+12>>2]](m,i)}i=v[c+164>>2];J9(g+(i<<2)|0,0,e-i<<2);v[c+164>>2]=e;v[c+160>>2]=g}e=v[d+976>>2];c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,24,24422,5940,186)|0;t[c+20|0]=1;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=f;v[c+12>>2]=0;v[c+16>>2]=0;v[e+1816>>2]=c;v[v[d+976>>2]+1820>>2]=v[d+1144>>2];m=v[v[d+1004>>2]+4>>2];i=v[d+976>>2];k=v[i+1024>>2];o=z[b+172>>2];c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,336,24422,13661,266)|0;if(c){e=xa-16|0;xa=e;f=v[i+1832>>2];g=v[i+1836>>2];v[c+24>>2]=0;v[c- -64>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=f;v[c+12>>2]=g;v[c+56>>2]=0;v[c+60>>2]=0;v[c+32>>2]=13998;v[c>>2]=134412;v[c+48>>2]=f;v[c+52>>2]=g;v[c+96>>2]=0;v[c+100>>2]=0;v[c+72>>2]=22914;v[c+68>>2]=c;v[c+40>>2]=134488;v[c+88>>2]=f;v[c+92>>2]=g;t[c+124|0]=0;v[c+112>>2]=20769;v[c+108>>2]=c;v[c+80>>2]=134564;v[c+104>>2]=0;v[c+28>>2]=c;v[c+144>>2]=0;v[c+148>>2]=0;g=c+136|0;f=g;v[f>>2]=0;v[f+4>>2]=0;v[c+128>>2]=0;v[c+132>>2]=0;f=v[37696];n=Ba[v[v[f>>2]+20>>2]](f)|0?39783:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,8192,n,19811,210)|0;v[e+12>>2]=0;v[e+8>>2]=f;f=v[c+140>>2];C:{if(f>>>0>=(v[c+144>>2]&2147483647)>>>0){jO(g,e+8|0);break C}g=v[e+12>>2];f=v[c+136>>2]+(f<<3)|0;v[f>>2]=v[e+8>>2];v[f+4>>2]=g;v[c+140>>2]=v[c+140>>2]+1}v[c+152>>2]=0;v[c+156>>2]=0;v[c+160>>2]=0;v[c+164>>2]=0;f=v[37696];g=Ba[v[v[f>>2]+20>>2]](f)|0?40147:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,1024,g,19811,210)|0;v[e+12>>2]=0;v[e+8>>2]=f;f=v[c+156>>2];D:{if(f>>>0>=(v[c+160>>2]&2147483647)>>>0){kO(c+152|0,e+8|0);break D}g=v[e+12>>2];f=v[c+152>>2]+(f<<3)|0;v[f>>2]=v[e+8>>2];v[f+4>>2]=g;v[c+156>>2]=v[c+156>>2]+1}v[c+168>>2]=0;v[c+172>>2]=0;v[c+176>>2]=0;v[c+180>>2]=0;n=c+168|0;g=0;f=v[37696];p=Ba[v[v[f>>2]+20>>2]](f)|0?40335:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,13312,p,19811,210)|0;while(1){v[(f+B(g,104)|0)+100>>2]=-128;v[(f+B(g|1,104)|0)+100>>2]=-128;v[(f+B(g|2,104)|0)+100>>2]=-128;v[(f+B(g|3,104)|0)+100>>2]=-128;v[(f+B(g|4,104)|0)+100>>2]=-128;v[(f+B(g|5,104)|0)+100>>2]=-128;v[(f+B(g|6,104)|0)+100>>2]=-128;v[(f+B(g|7,104)|0)+100>>2]=-128;g=g+8|0;if((g|0)!=128){continue}break}v[e+12>>2]=0;v[e+8>>2]=f;f=v[c+172>>2];E:{if(f>>>0>=(v[c+176>>2]&2147483647)>>>0){lO(n,e+8|0);break E}g=v[e+12>>2];f=v[c+168>>2]+(f<<3)|0;v[f>>2]=v[e+8>>2];v[f+4>>2]=g;v[c+172>>2]=v[c+172>>2]+1}v[c+184>>2]=0;v[c+188>>2]=0;v[c+232>>2]=0;v[c+236>>2]=0;v[c+224>>2]=0;v[c+228>>2]=0;v[c+216>>2]=0;v[c+220>>2]=0;v[c+208>>2]=0;v[c+212>>2]=0;v[c+200>>2]=0;v[c+204>>2]=0;v[c+192>>2]=0;v[c+196>>2]=0;v[c+256>>2]=0;v[c+248>>2]=-1;v[c+252>>2]=0;v[c+240>>2]=0;v[c+244>>2]=1061158912;mO(c+220|0,64);v[c+268>>2]=0;v[c+272>>2]=0;v[c+260>>2]=0;v[c+264>>2]=0;f=v[37696];g=Ba[v[v[f>>2]+20>>2]](f)|0?39965:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,14336,g,19811,210)|0;v[e+12>>2]=0;v[e+8>>2]=f;f=v[c+264>>2];F:{if(f>>>0>=(v[c+268>>2]&2147483647)>>>0){nO(c+260|0,e+8|0);break F}g=v[e+12>>2];f=v[c+260>>2]+(f<<3)|0;v[f>>2]=v[e+8>>2];v[f+4>>2]=g;v[c+264>>2]=v[c+264>>2]+1}v[c+276>>2]=0;v[c+280>>2]=0;v[c+320>>2]=k;v[c+316>>2]=m;v[c+312>>2]=i;v[c+308>>2]=1;v[c+300>>2]=0;v[c+304>>2]=0;v[c+292>>2]=0;v[c+296>>2]=0;v[c+284>>2]=0;v[c+288>>2]=0;f=v[37696];g=Ba[v[v[f>>2]+20>>2]](f)|0?37931:63804;D=c,E=Ba[v[v[f+12>>2]+8>>2]](f+12|0,28,g,16755,113)|0,v[D+324>>2]=E;f=xa-16|0;xa=f;xa=f+16|0;z[c+328>>2]=o;xa=e+16|0}v[d+988>>2]=c;c=v[d+1004>>2];v[c+104>>2]=v[b+144>>2];v[c+108>>2]=v[b+148>>2];z[c+88>>2]=z[b+100>>2];z[c+96>>2]=z[b+104>>2];z[c+92>>2]=z[b+108>>2];o=z[v[37415]>>2];z[c+100>>2]=o*C(.02500000037252903);e=v[d+976>>2];z[e+208>>2]=o;z[e+204>>2]=o*C(.009999999776482582);z[c+84>>2]=-z[b+96>>2];c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?42129:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,48,e,11777,887)|0;t[c+10|0]=0;t[c+9|0]=0;t[c+8|0]=1;v[c>>2]=0;v[c+4>>2]=16777215;v[c+16>>2]=0;v[c+20>>2]=0;u[c+46>>1]=0;t[c+45|0]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=1065353216;t[c+37|0]=0;t[c+38|0]=0;t[c+39|0]=0;t[c+40|0]=0;t[c+41|0]=0;t[c+42|0]=0;t[c+43|0]=0;t[c+44|0]=0;G:{H:{f=v[d+2388>>2];g=v[f+12>>2]+B(v[f+8>>2],12)|0;e=v[g+4>>2];if(e){v[g+4>>2]=v[e>>2];break H}I:{J:{e=v[g+8>>2];if((e|0)==v[f>>2]){break J}i=v[f+4>>2];v[g+8>>2]=e+1;g=v[g>>2];if(!g){break J}e=g+B(e,i)|0;break I}e=NO(f)}if(e){break H}c=0;break G}c=UJ(e,d,c);v[c>>2]=138660}v[d+2380>>2]=c;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?42013:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,2008,e,11777,891)|0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=d;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;f=w[b+112|0];e=v[b+164>>2];v[c+60>>2]=0;v[c+56>>2]=e;v[c+52>>2]=e;v[c+44>>2]=0;v[c+48>>2]=0;t[c- -64|0]=f>>>7;f=0;if(e){f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,17904,169)|0}g=h+5584|0;v[c+68>>2]=0;v[c+72>>2]=0;v[c+44>>2]=f;v[c+76>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;v[c+88>>2]=0;v[c+100>>2]=0;v[c+104>>2]=0;v[c+92>>2]=1061158912;v[c+96>>2]=-1;xh(c+68|0,64);v[c+672>>2]=0;v[c+396>>2]=256;v[c+400>>2]=0;v[c+388>>2]=32;v[c+392>>2]=0;v[c+376>>2]=c+116;t[c+372|0]=1;v[c+380>>2]=0;v[c+384>>2]=64;v[c+964>>2]=0;v[c+692>>2]=0;v[c+684>>2]=0;v[c+688>>2]=640;v[c+676>>2]=64;v[c+680>>2]=32;v[c+668>>2]=c+408;t[c+664|0]=1;v[c+1256>>2]=0;v[c+984>>2]=0;v[c+976>>2]=0;v[c+980>>2]=17408;v[c+968>>2]=64;v[c+972>>2]=256;v[c+960>>2]=c+700;t[c+956|0]=1;v[c+1548>>2]=0;v[c+1276>>2]=0;e=c+1268|0;v[e>>2]=0;v[e+4>>2]=1920;e=c+1260|0;v[e>>2]=64;v[e+4>>2]=32;v[c+1252>>2]=c+992;t[c+1248|0]=1;v[c+1544>>2]=c+1284;v[c+1568>>2]=0;v[c+1840>>2]=0;e=c+1552|0;v[e>>2]=64;v[e+4>>2]=32;e=c+1560|0;v[e>>2]=0;v[e+4>>2]=1024;t[c+1540|0]=1;v[c+1836>>2]=c+1576;v[c+1860>>2]=0;e=c+1844|0;v[e>>2]=64;v[e+4>>2]=32;e=c+1852|0;v[e>>2]=0;v[e+4>>2]=1280;t[c+1832|0]=1;e=v[d+16>>2];f=v[d+20>>2];v[c+1888>>2]=0;i=c+1880|0;v[i>>2]=0;v[i+4>>2]=0;i=c+1872|0;v[i>>2]=e;v[i+4>>2]=f;v[c+1904>>2]=0;v[c+1896>>2]=3877;v[c+1892>>2]=c;v[c+1864>>2]=131304;e=v[37696];f=Ba[v[v[e>>2]+20>>2]](e)|0?37931:63804;D=c,E=Ba[v[v[e+12>>2]+8>>2]](e+12|0,28,f,16755,113)|0,v[D+1908>>2]=E;e=xa-16|0;xa=e;xa=e+16|0;v[c+1916>>2]=0;v[c+1920>>2]=0;v[c+1912>>2]=0;e=c+1924|0;v[e>>2]=0;v[e+4>>2]=0;e=c+1932|0;v[e>>2]=0;v[e+4>>2]=0;e=c+1948|0;v[e>>2]=0;v[e+4>>2]=0;e=c+1940|0;v[e>>2]=1061158912;v[e+4>>2]=-1;kI(c+1916|0,64);e=c+1972|0;v[e>>2]=0;v[e+4>>2]=0;e=c+1964|0;v[e>>2]=0;v[e+4>>2]=0;v[c+1956>>2]=0;v[c+1960>>2]=0;e=c+1988|0;v[e>>2]=0;v[e+4>>2]=0;e=c+1980|0;v[e>>2]=1061158912;v[e+4>>2]=-1;dJ(c+1956|0,64);e=v[37696];f=v[37696];D=c,E=(K=e+12|0,F=28,I=Ba[v[v[f>>2]+20>>2]](f)|0?37931:63804,J=16755,G=113,H=v[v[e+12>>2]+8>>2],Ba[H](K|0,F|0,I|0,J|0,G|0)|0),v[D+1996>>2]=E;e=xa-16|0;xa=e;xa=e+16|0;e=v[37696];f=v[37696];D=c,E=(G=e+12|0,J=28,I=Ba[v[v[f>>2]+20>>2]](f)|0?37931:63804,F=16755,K=113,H=v[v[e+12>>2]+8>>2],Ba[H](G|0,J|0,I|0,F|0,K|0)|0),v[D+2e3>>2]=E;e=xa-16|0;xa=e;xa=e+16|0;e=v[37696];f=v[37696];e=(E=e+12|0,H=16,K=Ba[v[v[f>>2]+20>>2]](f)|0?33823:63804,F=11474,I=651,D=v[v[e+12>>2]+8>>2],Ba[D](E|0,H|0,K|0,F|0,I|0)|0);v[e+8>>2]=0;v[e+12>>2]=-1;v[e>>2]=0;v[e+4>>2]=0;v[c+108>>2]=e;e=d+2648|0;v[e>>2]=2147483647;v[e+4>>2]=-1;e=d+2640|0;v[e>>2]=536870911;v[e+4>>2]=1073741823;e=d+2632|0;v[e>>2]=134217727;v[e+4>>2]=268435455;e=d+2624|0;v[e>>2]=33554431;v[e+4>>2]=67108863;e=d+2616|0;v[e>>2]=8388607;v[e+4>>2]=16777215;e=d+2608|0;v[e>>2]=2097151;v[e+4>>2]=4194303;e=d+2600|0;v[e>>2]=524287;v[e+4>>2]=1048575;e=d+2592|0;v[e>>2]=131071;v[e+4>>2]=262143;e=d+2584|0;v[e>>2]=32767;v[e+4>>2]=65535;e=d+2576|0;v[e>>2]=8191;v[e+4>>2]=16383;e=d+2568|0;v[e>>2]=2047;v[e+4>>2]=4095;e=d+2560|0;v[e>>2]=511;v[e+4>>2]=1023;e=d+2552|0;v[e>>2]=127;v[e+4>>2]=255;e=d+2544|0;v[e>>2]=31;v[e+4>>2]=63;e=d+2536|0;v[e>>2]=7;v[e+4>>2]=15;v[d+2528>>2]=1;v[d+2532>>2]=3;v[d+2168>>2]=c;u[d+2280>>1]=257;e=v[b+84>>2];c=d+1020|0;v[c+24>>2]=v[b+80>>2];v[c+28>>2]=e;e=v[b+76>>2];v[c+16>>2]=v[b+72>>2];v[c+20>>2]=e;e=v[b+68>>2];v[c+8>>2]=v[b+64>>2];v[c+12>>2]=e;c=v[b+60>>2];v[d+1020>>2]=v[b+56>>2];v[d+1024>>2]=c;v[d+2348>>2]=v[b+52>>2];z[d+1052>>2]=z[b>>2];z[d+1056>>2]=z[b+4>>2];o=z[b+8>>2];v[d+1064>>2]=1;z[d+1060>>2]=o;v[v[d+1004>>2]+112>>2]=v[b+88>>2];c=v[d+976>>2];e=v[b+112>>2];t[c+1812|0]=e>>>6&1;t[c+1813|0]=(e>>>8^-1)&1;e=v[b+12>>2];if(!(!v[d+2236>>2]|(v[d+2344>>2]|!e))){f=v[d+2204>>2];c=0;while(1){i=v[v[f+(c<<2)>>2]>>2];u[i+148>>1]=x[i+148>>1]|64;c=c+1|0;if(c>>>0>2]){continue}break}c=v[d+976>>2]}v[d+2344>>2]=e;e=v[b+16>>2];v[c+1020>>2]=e;c=v[c+1024>>2];Ba[v[v[c>>2]+88>>2]](c,e);c=v[d+988>>2];v[c+120>>2]=v[b+20>>2];v[c+308>>2]=v[b+168>>2];c=v[b+24>>2];K:{if(c){e=v[b+28>>2];L:{if(!e){e=0;f=0;break L}c=v[37696];e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,11777,923)|0;c=v[b+24>>2];f=v[b+28>>2]}v[d+2172>>2]=e;I9(e,c,f);c=v[b+28>>2];break K}v[d+2172>>2]=0;c=0}v[d+2180>>2]=c;v[d+2176>>2]=c;v[d+2184>>2]=v[b+32>>2];v[d+2188>>2]=v[b+36>>2];xa=l+16|0;v[j+4776>>2]=0;v[j+4768>>2]=0;v[j+4772>>2]=0;d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?37931:63804;D=j,I=Ba[v[v[d+12>>2]+8>>2]](d+12|0,28,c,16755,113)|0,v[D+4780>>2]=I;d=xa-16|0;xa=d;xa=d+16|0;u[j+4784>>1]=0;vu(j+4788|0);d=j+4832|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4824|0;v[d>>2]=0;v[d+4>>2]=0;v[j+4816>>2]=0;v[j+4820>>2]=0;d=j+4848|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4840|0;v[d>>2]=1061158912;v[d+4>>2]=-1;xh(j+4816|0,64);d=j+4904|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4896|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4888|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4880|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4872|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4864|0;v[d>>2]=0;v[d+4>>2]=0;v[j+4856>>2]=0;v[j+4860>>2]=0;v[j+4928>>2]=0;d=j+4920|0;v[d>>2]=-1;v[d+4>>2]=0;d=j+4912|0;v[d>>2]=0;v[d+4>>2]=1061158912;xh(j+4892|0,64);d=j+4948|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4940|0;v[d>>2]=0;v[d+4>>2]=0;v[j+4932>>2]=0;v[j+4936>>2]=0;d=j+4964|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4956|0;v[d>>2]=1061158912;v[d+4>>2]=-1;xh(j+4932|0,64);d=j+4988|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4980|0;v[d>>2]=0;v[d+4>>2]=0;v[j+4972>>2]=0;v[j+4976>>2]=0;d=j+5004|0;v[d>>2]=0;v[d+4>>2]=0;d=j+4996|0;v[d>>2]=1061158912;v[d+4>>2]=-1;xh(j+4972|0,64);d=j+5028|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5020|0;v[d>>2]=0;v[d+4>>2]=0;v[j+5012>>2]=0;v[j+5016>>2]=0;d=j+5044|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5036|0;v[d>>2]=1061158912;v[d+4>>2]=-1;xh(j+5012|0,64);d=j+5068|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5060|0;v[d>>2]=0;v[d+4>>2]=0;v[j+5052>>2]=0;v[j+5056>>2]=0;d=j+5084|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5076|0;v[d>>2]=1061158912;v[d+4>>2]=-1;xh(j+5052|0,64);d=j+5108|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5100|0;v[d>>2]=0;v[d+4>>2]=0;v[j+5092>>2]=0;v[j+5096>>2]=0;d=j+5124|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5116|0;v[d>>2]=1061158912;v[d+4>>2]=-1;xh(j+5092|0,64);o=z[b+176>>2];v[j+5560>>2]=0;v[j+5548>>2]=0;z[j+5132>>2]=o;J9(j+5280|0,0,124);d=j+5248|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5240|0;v[d>>2]=0;v[d+4>>2]=0;d=j+5232|0;v[d>>2]=0;v[d+4>>2]=0;v[j+5564>>2]=0;f=v[b+124>>2];l=v[b+128>>2];c=v[b+132>>2];v[g+32>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g>>2]=0;v[g+4>>2]=0;v[g+24>>2]=0;v[g+28>>2]=3;v[g+8>>2]=0;e=g+36|0;d=e;v[d+32>>2]=-1;v[d+16>>2]=0;v[d+20>>2]=0;v[d>>2]=0;v[d+4>>2]=0;v[d+24>>2]=0;v[d+28>>2]=3;v[d+8>>2]=0;d=g+72|0;v[d>>2]=0;v[d+4>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d+40>>2]=0;v[d+32>>2]=-1;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=1061158912;EE(d+4|0,64);v[g+120>>2]=j;d=v[37696];i=Ba[v[v[d>>2]+20>>2]](d)|0?37931:63804;D=g,I=Ba[v[v[d+12>>2]+8>>2]](d+12|0,28,i,16755,113)|0,v[D+124>>2]=I;d=xa-16|0;xa=d;xa=d+16|0;v[g+128>>2]=130360;CE(g,f,v[j+32>>2],v[j+36>>2]);CE(e,l,v[j+32>>2],v[j+36>>2]);v[g+116>>2]=c;d=v[g>>2];if(!(!d|v[g+28>>2]!=1)){Ba[v[v[d>>2]+68>>2]](d,c)}d=v[g+36>>2];if(!(!d|v[g- -64>>2]!=1)){Ba[v[v[d>>2]+68>>2]](d,c)}d=v[b+68>>2];DE(g,v[b+64>>2]);DE(e,d);v[g+136>>2]=g+68;v[g+132>>2]=v[g+36>>2];d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?32389:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,712,c,8548,268)|0;v[d>>2]=130076;FC(d+4|0);v[d+628>>2]=0;v[d+620>>2]=0;v[d+624>>2]=0;c=d+632|0;v[c>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[d+664>>2]=0;v[d+668>>2]=0;v[d+656>>2]=0;v[d+660>>2]=0;v[d+648>>2]=0;v[d+652>>2]=0;v[d+680>>2]=0;v[d+684>>2]=0;v[d+672>>2]=1061158912;v[d+676>>2]=-1;ZC(d+648|0,64);v[d+704>>2]=0;v[d+708>>2]=0;v[d+696>>2]=0;v[d+700>>2]=0;v[d+688>>2]=0;v[d+692>>2]=0;if(y[c+4>>2]<32){dE(c,32)}eE(d+620|0,32);c=d+688|0;if((v[c+8>>2]&2147483647)>>>0<32){Aw(c,32)}v[c+4>>2]=32;if(!(v[d+708>>2]&2147483616)){_C(d+700|0,32)}v[g+72>>2]=d;if(!(y[g+112>>2]>31|y[g+96>>2]>31)){EE(g+76|0,32)}t[g+140|0]=0;v[h+5728>>2]=141568;v[h+5732>>2]=141660;v[h+5768>>2]=0;d=h+5760|0;v[d>>2]=0;v[d+4>>2]=0;v[h+5736>>2]=141264;d=h+5752|0;v[d>>2]=h;v[d+4>>2]=0;d=h+5800|0;v[d>>2]=0;v[d+4>>2]=0;v[h+5776>>2]=21305;v[h+5744>>2]=126292;d=h+5792|0;v[d>>2]=h;v[d+4>>2]=0;v[h+5816>>2]=21351;v[h+5784>>2]=126368;v[h+5808>>2]=0;d=v[b+136>>2];v[h+5812>>2]=h;v[h+5772>>2]=h;v[h+5824>>2]=d;v[h+5828>>2]=125980;v[h>>2]=125360;J9(h+5832|0,0,84);d=h+5924|0;v[d>>2]=0;v[d+4>>2]=0;d=h+5916|0;v[d>>2]=1061158912;v[d+4>>2]=-1;xh(h+5892|0,64);d=h+5956|0;v[d>>2]=0;v[d+4>>2]=0;d=h+5948|0;v[d>>2]=0;v[d+4>>2]=0;d=h+5940|0;v[d>>2]=0;v[d+4>>2]=0;v[h+5932>>2]=0;v[h+5936>>2]=0;v[h+5980>>2]=0;d=h+5972|0;v[d>>2]=-1;v[d+4>>2]=0;d=h+5964|0;v[d>>2]=0;v[d+4>>2]=1061158912;xh(h+5944|0,64);d=h+6e3|0;v[d>>2]=0;v[d+4>>2]=0;d=h+5992|0;v[d>>2]=0;v[d+4>>2]=0;v[h+5984>>2]=0;v[h+5988>>2]=0;d=h+6016|0;v[d>>2]=0;v[d+4>>2]=0;d=h+6008|0;v[d>>2]=1061158912;v[d+4>>2]=-1;xh(h+5984|0,64);v[h+6032>>2]=0;v[h+6024>>2]=0;v[h+6028>>2]=0;z[h+6036>>2]=z[b+180>>2];z[h+6040>>2]=z[b+184>>2];z[h+6044>>2]=z[b+188>>2];z[h+6048>>2]=z[b+192>>2];z[h+6052>>2]=z[b+196>>2];z[h+6056>>2]=z[b+200>>2];d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?38399:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,80,c,19659,95)|0;v[h+6060>>2]=d;t[d+76|0]=0;v[d+72>>2]=0;d=v[37696];c=v[37696];d=(I=d+12|0,F=80,K=Ba[v[v[c>>2]+20>>2]](c)|0?38399:63804,H=19659,E=95,D=v[v[d+12>>2]+8>>2],Ba[D](I|0,F|0,K|0,H|0,E|0)|0);v[h+6064>>2]=d;t[d+76|0]=0;v[d+72>>2]=0;d=v[37696];c=v[37696];d=(E=d+12|0,H=80,K=Ba[v[v[c>>2]+20>>2]](c)|0?38399:63804,F=19659,I=95,D=v[v[d+12>>2]+8>>2],Ba[D](E|0,H|0,K|0,F|0,I|0)|0);v[h+6068>>2]=d;t[d+76|0]=0;v[d+72>>2]=0;v[h+6128>>2]=0;v[h+6160>>2]=0;v[h+6192>>2]=0;d=h+6120|0;v[d>>2]=0;v[d+4>>2]=0;d=h+6084|0;v[d>>2]=0;v[d+4>>2]=0;v[h+6076>>2]=1;v[h+6080>>2]=0;d=h+6112|0;v[d>>2]=h;v[d+4>>2]=0;d=h+6152|0;v[d>>2]=0;v[d+4>>2]=0;v[h+6132>>2]=h+6060;v[h+6104>>2]=126076;d=h+6144|0;v[d>>2]=h;v[d+4>>2]=0;d=h+6184|0;v[d>>2]=0;v[d+4>>2]=0;v[h+6164>>2]=h+6064;v[h+6136>>2]=126076;d=h+6176|0;v[d>>2]=h;v[d+4>>2]=0;v[h+6168>>2]=126076;v[h+6196>>2]=h+6068;d=h+6216|0;v[d>>2]=0;v[d+4>>2]=0;v[h+6224>>2]=0;d=h+6208|0;v[d>>2]=h;v[d+4>>2]=0;v[h+6264>>2]=0;d=h+6256|0;v[d>>2]=0;v[d+4>>2]=0;v[h+6232>>2]=14181;d=h+6228|0;v[d>>2]=0;v[h+6200>>2]=126444;c=h+6248|0;v[c>>2]=h;v[c+4>>2]=0;v[h+6304>>2]=0;c=h+6296|0;v[c>>2]=0;v[c+4>>2]=0;v[h+6272>>2]=22819;c=h+6268|0;v[c>>2]=0;v[h+6240>>2]=126520;v[h+6328>>2]=0;e=h+6288|0;v[e>>2]=h;v[e+4>>2]=0;v[h+6332>>2]=0;v[h+6324>>2]=0;t[h+6320|0]=0;v[h+6312>>2]=20640;e=h+6308|0;v[e>>2]=0;v[h+6280>>2]=126596;v[h+6336>>2]=0;v[h+6344>>2]=0;f=h+6348|0;j=v[37696];j=Ba[v[v[j+12>>2]+8>>2]](j+12|0,8,24422,5858,130)|0;v[f>>2]=j;g=j;j=v[37696];l=v[37696];D=g,I=(K=j+12|0,H=28,E=Ba[v[v[l>>2]+20>>2]](l)|0?37931:63804,J=16755,G=113,F=v[v[j+12>>2]+8>>2],Ba[F](K|0,H|0,E|0,J|0,G|0)|0),v[D>>2]=I;j=xa-16|0;xa=j;xa=j+16|0;v[v[f>>2]+4>>2]=0;v[e>>2]=h;v[c>>2]=h;v[d>>2]=h;v[h+6352>>2]=0;d=h+4644|0;c=v[d+4>>2];v[h+6092>>2]=v[d>>2];v[h+6096>>2]=c;f=0;d=xa-16|0;xa=d;M:{if((d|0)==-12){break M}while(1){if(!w[f+150864|0]){t[f+150864|0]=1;v[(f<<2)+150992>>2]=0;v[d+12>>2]=f;break M}f=f+1|0;if((f|0)!=128){continue}break}}xa=d+16|0;v[h+6340>>2]=v[d+12>>2];v[q+12>>2]=h;N:{if(!(Ba[v[v[h>>2]+484>>2]](h)|0)){b9(v[37696],32,7621,277,69816,0);a=0;break N}f=v[b+56>>2];O:{if(!f){f=0;break O}if((v[h+5940>>2]&2147483647)>>>0>=f>>>0){break O}Np(h+5932|0,f);f=v[b+56>>2]}QO(h+32|0,f,v[b+60>>2],v[b- -64>>2],v[b+68>>2]);v[h+4>>2]=v[b+140>>2];c=v[a+44>>2];P:{if(!c){break P}b=0;while(1){e=v[a+40>>2];while(1){Q:{d=b+1|0;b=v[e+(b<<2)>>2];if(b){break Q}b=d;if((d|0)!=(c|0)){continue}break P}break}Gr(h,b);c=v[a+44>>2];b=d;if(c>>>0>d>>>0){continue}break}}if(!v[h+1008>>2]){Ba[v[v[h>>2]+4>>2]](h);b9(v[37696],16,7621,294,66966,0);a=0;break N}b=v[a+8>>2];R:{if(b>>>0>=(v[a+12>>2]&2147483647)>>>0){f=0;b=v[a+12>>2];d=b&2147483647?b<<1:1;S:{if(!d){break S}c=d<<2;if(!c){break S}b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?60139:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,h,16608,553)|0}e=v[a+8>>2];h=(e<<2)+f|0;if((e|0)>0){c=v[a+4>>2];b=f;while(1){v[b>>2]=v[c>>2];c=c+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}v[h>>2]=v[q+12>>2];T:{if(v[a+12>>2]<0){break T}b=v[a+4>>2];if(!b){break T}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);e=v[a+8>>2]}v[a+12>>2]=d;v[a+4>>2]=f;v[a+8>>2]=e+1;break R}v[v[a+4>>2]+(b<<2)>>2]=h;v[a+8>>2]=b+1}a=v[q+12>>2]}xa=q+16|0;return a|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,p=0;v[a>>2]=125360;b=v[a+6020>>2];c=b;a:{if(!c){break a}if(b&1){c=b-1|0;Ba[v[v[a>>2]+68>>2]](a,v[v[a+5988>>2]+(c<<2)>>2],0)}if((b|0)==1){break a}while(1){Ba[v[v[a>>2]+68>>2]](a,v[(v[a+5988>>2]+(c<<2)|0)-4>>2],0);c=c-2|0;Ba[v[v[a>>2]+68>>2]](a,v[v[a+5988>>2]+(c<<2)>>2],0);if(c){continue}break}}b=v[a+5936>>2];b:{if(!b){break b}c=b;if(c&1){c=b-1|0;Ba[v[v[a>>2]+56>>2]](a,v[v[a+5932>>2]+(c<<2)>>2],0)}if((b|0)==1){break b}while(1){Ba[v[v[a>>2]+56>>2]](a,v[(v[a+5932>>2]+(c<<2)|0)-4>>2],0);c=c-2|0;Ba[v[v[a>>2]+56>>2]](a,v[v[a+5932>>2]+(c<<2)>>2],0);if(c){continue}break}}b=v[a+5980>>2];c:{if(!b){break c}c=b;if(c&1){c=b-1|0;Ba[v[v[a>>2]+40>>2]](a,v[v[a+5948>>2]+(c<<2)>>2],0)}if((b|0)==1){break c}while(1){Ba[v[v[a>>2]+40>>2]](a,v[(v[a+5948>>2]+(c<<2)|0)-4>>2],0);c=c-2|0;Ba[v[v[a>>2]+40>>2]](a,v[v[a+5948>>2]+(c<<2)>>2],0);if(c){continue}break}}m=a+16|0;p=v[(w[a+5580|0]&4?5564:2392)+a>>2]&512;b=v[a+6028>>2];d:{if(!b){break d}c=b;e:{if(!(c&1)){break e}c=b-1|0;d=v[v[a+6024>>2]+(c<<2)>>2];if(!d){break e}Ba[v[v[d>>2]+48>>2]](d)}if((b|0)==1){break d}while(1){b=v[(v[a+6024>>2]+(c<<2)|0)-4>>2];if(b){Ba[v[v[b>>2]+48>>2]](b)}c=c-2|0;b=v[v[a+6024>>2]+(c<<2)>>2];if(b){Ba[v[v[b>>2]+48>>2]](b)}if(c){continue}break}}v[a+6028>>2]=0;o=xa-16|0;xa=o;i=m+16|0;v[i+1244>>2]=0;v[i+1088>>2]=v[i+1088>>2]+1;d=v[i+2168>>2];if(d){k=xa-16|0;xa=k;c=v[d+8>>2];if(c){f=d+1916|0;while(1){b=v[v[d+4>>2]+(e<<2)>>2];g=x[b+4>>1];u[b+4>>1]=g-1;f:{if(g>>>0>=2){u[b>>1]=x[b>>1]&65533;break f}g=v[b+16>>2];c=v[g+16>>2];g=v[g+20>>2];v[k+12>>2]=c>>>0>g>>>0?c:g;v[k+8>>2]=c>>>0>>0?c:g;FI(f,k+8|0);c=v[b+16>>2];if(c){v[d+1560>>2]=v[d+1560>>2]-1;v[c>>2]=v[d+1568>>2];v[d+1568>>2]=c;v[b+16>>2]=0}v[d+684>>2]=v[d+684>>2]-1;v[b>>2]=v[d+692>>2];v[d+692>>2]=b;c=v[d+8>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}v[d+8>>2]=0;c=v[d+108>>2];if(c){b=v[c+8>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[c>>2];if(!b){break g}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+2e3>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+1996>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+1956>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+1916>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+1908>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[d+1880>>2]=0;v[d+1864>>2]=126144;if(v[d+1852>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;h=d+1572|0;c=v[h+288>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];h:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];j=b&2147483647?b<<1:1;i:{if(!j){break i}b=j<<2;if(!b){break i}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?32891:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];l=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(l>>>0>b>>>0){continue}break}}v[l>>2]=v[f+8>>2];j:{if(v[f+24>>2]<0){break j}b=v[f+16>>2];if(!b){break j}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=j;v[f+16>>2]=c;v[f+20>>2]=e+1;break h}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[h+288>>2]>>2];v[h+288>>2]=c;if(c){continue}break}e=v[f+20>>2];b=v[f+16>>2]}else{b=0}c=f+8|0;KJ(b,e,c);KJ(v[h+264>>2],v[h+268>>2],c);c=v[h+268>>2];if(c){g=v[h+264>>2];l=g+(c<<2)|0;e=v[f+16>>2];while(1){j=v[h+276>>2];k:{if(!j){break k}b=v[g>>2];n=j-1&536870911;if(j&1){l:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break l}Ba[v[v[b>>2]>>2]](b)|0}c=b+40|0}else{c=b}if(!n){break k}j=b+B(j,40)|0;while(1){m:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(c|0))){e=e+4|0;break m}Ba[v[v[c>>2]>>2]](c)|0}b=c+40|0;n:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break n}Ba[v[v[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=v[f+24>>2];o:{if((c|0)<0|!(c&2147483647)){break o}c=v[f+16>>2];if(!c){break o}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+1836>>2];b=v[d+1840>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+1836>>2]}b=v[d+1844>>2];p:{if((b|0)<0|!(b&2147483647)){break p}if((d+1576|0)==(c|0)){t[d+1832|0]=0;break p}if(!c){break p}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+1560>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;h=d+1280|0;b=v[h+288>>2];if(b){while(1){v[f+8>>2]=b;c=v[f+20>>2];q:{if(c>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];j=b&2147483647?b<<1:1;r:{if(!j){break r}b=j<<2;if(!b){break r}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?46887:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];l=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(l>>>0>b>>>0){continue}break}}v[l>>2]=v[f+8>>2];s:{if(v[f+24>>2]<0){break s}b=v[f+16>>2];if(!b){break s}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=j;v[f+16>>2]=c;v[f+20>>2]=e+1;break q}v[v[f+16>>2]+(c<<2)>>2]=b;v[f+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[f+16>>2];b=v[f+20>>2]}else{b=0}c=f+8|0;LJ(e,b,c);LJ(v[h+264>>2],v[h+268>>2],c);c=v[f+24>>2];t:{if((c|0)<0|!(c&2147483647)){break t}c=v[f+16>>2];if(!c){break t}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+1544>>2];b=v[d+1548>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+1544>>2]}b=v[d+1552>>2];u:{if((b|0)<0|!(b&2147483647)){break u}if((d+1284|0)==(c|0)){t[d+1540|0]=0;break u}if(!c){break u}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+1268>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;h=d+988|0;c=v[h+288>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];v:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];j=b&2147483647?b<<1:1;w:{if(!j){break w}b=j<<2;if(!b){break w}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?36711:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];l=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(l>>>0>b>>>0){continue}break}}v[l>>2]=v[f+8>>2];x:{if(v[f+24>>2]<0){break x}b=v[f+16>>2];if(!b){break x}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=j;v[f+16>>2]=c;v[f+20>>2]=e+1;break v}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[h+288>>2]>>2];v[h+288>>2]=c;if(c){continue}break}e=v[f+20>>2];b=v[f+16>>2]}else{b=0}c=f+8|0;MJ(b,e,c);MJ(v[h+264>>2],v[h+268>>2],c);c=v[h+268>>2];if(c){g=v[h+264>>2];l=g+(c<<2)|0;e=v[f+16>>2];while(1){j=v[h+276>>2];y:{if(!j){break y}b=v[g>>2];n=j-1&1073741823;if(j&1){z:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break z}Ba[v[v[b>>2]>>2]](b)|0}c=b+60|0}else{c=b}if(!n){break y}j=b+B(j,60)|0;while(1){A:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(c|0))){e=e+4|0;break A}Ba[v[v[c>>2]>>2]](c)|0}b=c+60|0;B:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break B}Ba[v[v[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=v[f+24>>2];C:{if((c|0)<0|!(c&2147483647)){break C}c=v[f+16>>2];if(!c){break C}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+1252>>2];b=v[d+1256>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+1252>>2]}b=v[d+1260>>2];D:{if((b|0)<0|!(b&2147483647)){break D}if((d+992|0)==(c|0)){t[d+1248|0]=0;break D}if(!c){break D}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+976>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+984>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];E:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;F:{if(!h){break F}b=h<<2;if(!b){break F}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?36843:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];j=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}v[j>>2]=v[f+8>>2];G:{if(v[f+24>>2]<0){break G}b=v[f+16>>2];if(!b){break G}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break E}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+984>>2]>>2];v[d+984>>2]=c;if(c){continue}break}e=v[f+20>>2];b=v[f+16>>2]}else{b=0}c=f+8|0;NJ(b,e,c);NJ(v[d+960>>2],v[d+964>>2],c);c=v[d+964>>2];if(c){g=v[d+960>>2];j=g+(c<<2)|0;e=v[f+16>>2];while(1){h=v[d+972>>2];H:{if(!h){break H}b=v[g>>2];l=h-1&1073741823;if(h&1){I:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break I}Ba[v[v[b>>2]>>2]](b)|0}c=b+68|0}else{c=b}if(!l){break H}h=b+B(h,68)|0;while(1){J:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(c|0))){e=e+4|0;break J}Ba[v[v[c>>2]>>2]](c)|0}b=c+68|0;K:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(b|0)!=v[e>>2])){e=e+4|0;break K}Ba[v[v[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=v[f+24>>2];L:{if((c|0)<0|!(c&2147483647)){break L}c=v[f+16>>2];if(!c){break L}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+960>>2];b=v[d+964>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+960>>2]}b=v[d+968>>2];M:{if((b|0)<0|!(b&2147483647)){break M}if((d+700|0)==(c|0)){t[d+956|0]=0;break M}if(!c){break M}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+684>>2]){b=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+692>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];N:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;O:{if(!h){break O}b=h<<2;if(!b){break O}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?27313:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];j=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}v[j>>2]=v[f+8>>2];P:{if(v[f+24>>2]<0){break P}b=v[f+16>>2];if(!b){break P}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break N}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+692>>2]>>2];v[d+692>>2]=c;if(c){continue}break}b=v[f+16>>2];e=v[f+20>>2]}else{e=0}c=f+8|0;OJ(b,e,c);OJ(v[d+668>>2],v[d+672>>2],c);c=v[f+24>>2];Q:{if((c|0)<0|!(c&2147483647)){break Q}c=v[f+16>>2];if(!c){break Q}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+668>>2];b=v[d+672>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+668>>2]}b=v[d+676>>2];R:{if((b|0)<0|!(b&2147483647)){break R}if((d+408|0)==(c|0)){t[d+664|0]=0;break R}if(!c){break R}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+392>>2]){b=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+400>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];S:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;T:{if(!h){break T}b=h<<2;if(!b){break T}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?31157:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];j=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}v[j>>2]=v[f+8>>2];U:{if(v[f+24>>2]<0){break U}b=v[f+16>>2];if(!b){break U}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break S}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+400>>2]>>2];v[d+400>>2]=c;if(c){continue}break}b=v[f+16>>2];e=v[f+20>>2]}else{e=0}c=f+8|0;PJ(b,e,c);PJ(v[d+376>>2],v[d+380>>2],c);c=v[f+24>>2];V:{if((c|0)<0|!(c&2147483647)){break V}c=v[f+16>>2];if(!c){break V}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+376>>2];b=v[d+380>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+376>>2]}b=v[d+384>>2];W:{if((b|0)<0|!(b&2147483647)){break W}if((d+116|0)==(c|0)){t[d+372|0]=0;break W}if(!c){break W}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+68>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+44>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+40>>2];X:{if((c|0)<0|!(c&2147483647)){break X}c=v[d+32>>2];if(!c){break X}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+24>>2];Y:{if((c|0)<0|!(c&2147483647)){break Y}c=v[d+16>>2];if(!c){break Y}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+12>>2];Z:{if((c|0)<0|!(c&2147483647)){break Z}c=v[d+4>>2];if(!c){break Z}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=k+16|0;c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}v[i+2168>>2]=0;c=v[i+2172>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[i+2172>>2]=0;e=v[i+2380>>2];if(e){k=v[e+44>>2];d=v[i+2388>>2];Ba[v[v[e>>2]>>2]](e)|0;if(w[d+24|0]){OO(v[d+12>>2],v[d+16>>2])}c=0;b=v[d+16>>2]-1|0;_:{if((b|0)<0){break _}j=B(v[d+4>>2],v[d>>2]);f=v[d+12>>2];while(1){g=c+b>>1;h=v[f+B(g,12)>>2];if(!(h>>>0>e>>>0|e>>>0>=h+j>>>0)){c=f+B(g,12)|0;v[e>>2]=v[c+4>>2];v[c+4>>2]=e;if(w[d+24|0]){v[d+8>>2]=g}t[d+24|0]=0;break _}h=e>>>0>h>>>0;c=h?g+1|0:c;b=h?b:g-1|0;if((c|0)<=(b|0)){continue}break}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,k)}PO(i);c=v[i+976>>2];$:{if(!c){break $}b=v[c+1028>>2];if(b){Ba[v[v[b>>2]+8>>2]](b);c=v[i+976>>2];v[c+1028>>2]=0}c=v[c+1024>>2];if(!c){break $}Ba[v[v[c>>2]+8>>2]](c);v[v[i+976>>2]+1024>>2]=0}d=v[i+1136>>2];if(d){c=v[d+336>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+296>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+284>>2]){b=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+292>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];aa:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;ba:{if(!h){break ba}b=h<<2;if(!b){break ba}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?44393:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[f+8>>2];ca:{if(v[f+24>>2]<0){break ca}b=v[f+16>>2];if(!b){break ca}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break aa}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+292>>2]>>2];v[d+292>>2]=c;if(c){continue}break}b=v[f+16>>2];e=v[f+20>>2]}else{e=0}c=f+8|0;bQ(b,e,c);bQ(v[d+268>>2],v[d+272>>2],c);c=v[f+24>>2];da:{if((c|0)<0|!(c&2147483647)){break da}c=v[f+16>>2];if(!c){break da}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+268>>2];b=v[d+272>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+268>>2]}b=v[d+276>>2];ea:{if((b|0)<0|!(b&2147483647)){break ea}if((d+8|0)==(c|0)){t[d+264|0]=0;break ea}if(!c){break ea}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}v[i+1136>>2]=0;c=v[i+1152>>2];if(c){b=v[c+44>>2];fa:{if((b|0)<0|!(b&2147483647)){break fa}b=v[c+36>>2];if(!b){break fa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+32>>2];ga:{if((b|0)<0|!(b&2147483647)){break ga}b=v[c+24>>2];if(!b){break ga}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];ha:{if((b|0)<0|!(b&2147483647)){break ha}b=v[c+12>>2];if(!b){break ha}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+8>>2];ia:{if((b|0)<0|!(b&2147483647)){break ia}b=v[c>>2];if(!b){break ia}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[i+1152>>2]=0;c=v[i+1140>>2];if(c){b=v[c+12>>2];ja:{if((b|0)<0|!(b&2147483647)){break ja}b=v[c+4>>2];if(!b){break ja}d=v[c>>2];Ba[v[v[d>>2]+12>>2]](d,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=0;v[i+1140>>2]=0;b=v[i+2288>>2];if(b){while(1){d=v[i+2284>>2];e=c<<2;g=v[d+e>>2];if(g){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);b=v[i+2288>>2];d=v[i+2284>>2]}v[d+e>>2]=0;c=c+1|0;if(b>>>0>c>>>0){continue}break}}f=v[i+2408>>2];if(f){if(v[f+280>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[f+288>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];ka:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;la:{if(!h){break la}b=h<<2;if(!b){break la}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?36573:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[d+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[d+8>>2];ma:{if(v[d+24>>2]<0){break ma}b=v[d+16>>2];if(!b){break ma}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=c;v[d+20>>2]=e+1;break ka}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[f+288>>2]>>2];v[f+288>>2]=c;if(c){continue}break}b=v[d+20>>2];e=v[d+16>>2]}else{e=0}c=d+8|0;cQ(e,b,c);cQ(v[f+264>>2],v[f+268>>2],c);c=v[f+268>>2];if(c){e=v[f+264>>2];g=e+(c<<2)|0;b=v[d+16>>2];while(1){h=v[f+276>>2];if(h){c=v[e>>2];h=c+(h<<5)|0;while(1){b=(v[d+16>>2]+(v[d+20>>2]<<2)|0)==(b|0)|v[b>>2]!=(c|0)?b:b+4|0;c=c+32|0;if((h|0)!=(c|0)){continue}break}}e=e+4|0;if((g|0)!=(e|0)){continue}break}}c=v[d+24>>2];na:{if((c|0)<0|!(c&2147483647)){break na}c=v[d+16>>2];if(!c){break na}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=d+32|0}c=v[f+264>>2];b=v[f+268>>2];if(b){b=(b<<2)+c|0;while(1){d=v[c>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[f+264>>2]}b=v[f+272>>2];oa:{if((b|0)<0|!(b&2147483647)){break oa}if((f+4|0)==(c|0)){t[f+260|0]=0;break oa}if(!c){break oa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}f=v[i+2396>>2];if(f){if(v[f+280>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[f+288>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];pa:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;qa:{if(!h){break qa}b=h<<2;if(!b){break qa}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?37683:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[d+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[d+8>>2];ra:{if(v[d+24>>2]<0){break ra}b=v[d+16>>2];if(!b){break ra}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=c;v[d+20>>2]=e+1;break pa}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[f+288>>2]>>2];v[f+288>>2]=c;if(c){continue}break}b=v[d+20>>2];e=v[d+16>>2]}else{e=0}c=d+8|0;dQ(e,b,c);dQ(v[f+264>>2],v[f+268>>2],c);c=v[f+268>>2];if(c){e=v[f+264>>2];g=e+(c<<2)|0;b=v[d+16>>2];while(1){h=v[f+276>>2];if(h){c=v[e>>2];h=c+B(h,80)|0;while(1){sa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(b|0)|v[b>>2]!=(c|0))){b=b+4|0;break sa}RH(c)}c=c+80|0;if((h|0)!=(c|0)){continue}break}}e=e+4|0;if((g|0)!=(e|0)){continue}break}}c=v[d+24>>2];ta:{if((c|0)<0|!(c&2147483647)){break ta}c=v[d+16>>2];if(!c){break ta}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=d+32|0}c=v[f+264>>2];b=v[f+268>>2];if(b){b=(b<<2)+c|0;while(1){d=v[c>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[f+264>>2]}b=v[f+272>>2];ua:{if((b|0)<0|!(b&2147483647)){break ua}if((f+4|0)==(c|0)){t[f+260|0]=0;break ua}if(!c){break ua}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}f=v[i+2412>>2];if(f){if(v[f+280>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[f+288>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];va:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;wa:{if(!h){break wa}b=h<<2;if(!b){break wa}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?47129:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[d+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[d+8>>2];xa:{if(v[d+24>>2]<0){break xa}b=v[d+16>>2];if(!b){break xa}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=c;v[d+20>>2]=e+1;break va}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[f+288>>2]>>2];v[f+288>>2]=c;if(c){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}c=d+8|0;eQ(b,e,c);eQ(v[f+264>>2],v[f+268>>2],c);c=v[d+24>>2];ya:{if((c|0)<0|!(c&2147483647)){break ya}c=v[d+16>>2];if(!c){break ya}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=d+32|0}c=v[f+264>>2];b=v[f+268>>2];if(b){b=(b<<2)+c|0;while(1){d=v[c>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[f+264>>2]}b=v[f+272>>2];za:{if((b|0)<0|!(b&2147483647)){break za}if((f+4|0)==(c|0)){t[f+260|0]=0;break za}if(!c){break za}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}b=v[i+2388>>2];if(b){d=v[b+16>>2];if(d){c=0;while(1){e=v[b+12>>2]+B(c,12)|0;g=v[e>>2];if(g){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,g)}v[e>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}c=v[b+20>>2];Aa:{if((c|0)<0|!(c&2147483647)){break Aa}c=v[b+12>>2];if(!c){break Aa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[i+2384>>2];if(b){d=v[b+16>>2];if(d){c=0;while(1){e=v[b+12>>2]+B(c,12)|0;g=v[e>>2];if(g){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,g)}v[e>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}c=v[b+20>>2];Ba:{if((c|0)<0|!(c&2147483647)){break Ba}c=v[b+12>>2];if(!c){break Ba}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[i+2392>>2];if(b){d=v[b+16>>2];if(d){c=0;while(1){e=v[b+12>>2]+B(c,12)|0;g=v[e>>2];if(g){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,g)}v[e>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}c=v[b+20>>2];Ca:{if((c|0)<0|!(c&2147483647)){break Ca}c=v[b+12>>2];if(!c){break Ca}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[i+2400>>2];if(b){if(v[b+280>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[b+288>>2];if(c){while(1){v[f+8>>2]=c;d=v[f+20>>2];Da:{if(d>>>0>=(v[f+24>>2]&2147483647)>>>0){fQ(f+16|0,f+8|0);break Da}v[v[f+16>>2]+(d<<2)>>2]=c;v[f+20>>2]=d+1}c=v[v[b+288>>2]>>2];v[b+288>>2]=c;if(c){continue}break}e=v[f+20>>2];d=v[f+16>>2]}else{d=0}c=f+8|0;gQ(d,e,c);gQ(v[b+264>>2],v[b+268>>2],c);c=v[b+268>>2];if(c){g=v[b+264>>2];k=g+(c<<2)|0;e=v[f+16>>2];while(1){h=v[b+276>>2];Ea:{if(!h){break Ea}d=v[g>>2];j=h-1&67108863;if(h&1){Fa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(d|0)!=v[e>>2])){e=e+4|0;break Fa}Ba[v[v[d>>2]>>2]](d)|0}c=d+192|0}else{c=d}if(!j){break Ea}h=d+B(h,192)|0;while(1){Ga:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(c|0))){e=e+4|0;break Ga}Ba[v[v[c>>2]>>2]](c)|0}d=c+192|0;Ha:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(d|0)!=v[e>>2])){e=e+4|0;break Ha}Ba[v[v[d>>2]>>2]](d)|0}c=c+384|0;if((h|0)!=(c|0)){continue}break}}g=g+4|0;if((k|0)!=(g|0)){continue}break}}c=v[f+24>>2];Ia:{if((c|0)<0|!(c&2147483647)){break Ia}c=v[f+16>>2];if(!c){break Ia}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c-v[c-4>>2]|0)}xa=f+32|0}c=v[b+264>>2];d=v[b+268>>2];if(d){e=(d<<2)+c|0;while(1){d=v[c>>2];if(d){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d-v[d-4>>2]|0)}c=c+4|0;if((e|0)!=(c|0)){continue}break}c=v[b+264>>2]}d=v[b+272>>2];Ja:{if((d|0)<0|!(d&2147483647)){break Ja}if((b+4|0)==(c|0)){t[b+260|0]=0;break Ja}if(!c){break Ja}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c-v[c-4>>2]|0)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[i+2404>>2];if(b){if(v[b+280>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[b+288>>2];if(c){while(1){v[f+8>>2]=c;d=v[f+20>>2];Ka:{if(d>>>0>=(v[f+24>>2]&2147483647)>>>0){fQ(f+16|0,f+8|0);break Ka}v[v[f+16>>2]+(d<<2)>>2]=c;v[f+20>>2]=d+1}c=v[v[b+288>>2]>>2];v[b+288>>2]=c;if(c){continue}break}e=v[f+20>>2];d=v[f+16>>2]}else{d=0}c=f+8|0;gQ(d,e,c);gQ(v[b+264>>2],v[b+268>>2],c);c=v[b+268>>2];if(c){g=v[b+264>>2];k=g+(c<<2)|0;e=v[f+16>>2];while(1){h=v[b+276>>2];La:{if(!h){break La}d=v[g>>2];j=h-1&67108863;if(h&1){Ma:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(d|0)!=v[e>>2])){e=e+4|0;break Ma}Ba[v[v[d>>2]>>2]](d)|0}c=d+704|0}else{c=d}if(!j){break La}h=d+B(h,704)|0;while(1){Na:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(c|0))){e=e+4|0;break Na}Ba[v[v[c>>2]>>2]](c)|0}d=c+704|0;Oa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(d|0)!=v[e>>2])){e=e+4|0;break Oa}Ba[v[v[d>>2]>>2]](d)|0}c=c+1408|0;if((h|0)!=(c|0)){continue}break}}g=g+4|0;if((k|0)!=(g|0)){continue}break}}c=v[f+24>>2];Pa:{if((c|0)<0|!(c&2147483647)){break Pa}c=v[f+16>>2];if(!c){break Pa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c-v[c-4>>2]|0)}xa=f+32|0}c=v[b+264>>2];d=v[b+268>>2];if(d){e=(d<<2)+c|0;while(1){d=v[c>>2];if(d){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d-v[d-4>>2]|0)}c=c+4|0;if((e|0)!=(c|0)){continue}break}c=v[b+264>>2]}d=v[b+272>>2];Qa:{if((d|0)<0|!(d&2147483647)){break Qa}if((b+4|0)==(c|0)){t[b+260|0]=0;break Qa}if(!c){break Qa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c-v[c-4>>2]|0)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[i+1192>>2];b=v[c+8>>2];Ra:{Sa:{if((b|0)<0|!(b&2147483647)){break Sa}b=v[c>>2];if(!b){break Sa}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);c=v[i+1192>>2];if(!c){break Ra}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+2376>>2];if(c){b=v[c+40>>2];Ta:{if((b|0)<0|!(b&2147483647)){break Ta}b=v[c+32>>2];if(!b){break Ta}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];if(!(!b|v[c+24>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+20>>2]=0;b=v[c+16>>2];Ua:{if((b|0)<0|!(b&2147483647)){break Ua}b=v[c+8>>2];if(!b){break Ua}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+2372>>2];if(c){b=v[c+40>>2];Va:{if((b|0)<0|!(b&2147483647)){break Va}b=v[c+32>>2];if(!b){break Va}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];if(!(!b|v[c+24>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+20>>2]=0;b=v[c+16>>2];Wa:{if((b|0)<0|!(b&2147483647)){break Wa}b=v[c+8>>2];if(!b){break Wa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+2368>>2];if(c){b=v[c+40>>2];Xa:{if((b|0)<0|!(b&2147483647)){break Xa}b=v[c+32>>2];if(!b){break Xa}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];if(!(!b|v[c+24>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+20>>2]=0;b=v[c+16>>2];Ya:{if((b|0)<0|!(b&2147483647)){break Ya}b=v[c+8>>2];if(!b){break Ya}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+2364>>2];if(c){b=v[c+40>>2];Za:{if((b|0)<0|!(b&2147483647)){break Za}b=v[c+32>>2];if(!b){break Za}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];if(!(!b|v[c+24>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+20>>2]=0;b=v[c+16>>2];_a:{if((b|0)<0|!(b&2147483647)){break _a}b=v[c+8>>2];if(!b){break _a}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+2352>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}d=0;$a:{c=v[i+980>>2];if(!v[c+420>>2]){break $a}e=v[c+416>>2];b=v[e>>2];if((b|0)==-1){g=v[c+424>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break $a}b=v[e+(d<<2)>>2];if((b|0)==-1){continue}break}}while(1){e=v[(v[c+408>>2]+B(b,12)|0)+8>>2];if(e){Ba[v[v[e>>2]+4>>2]](e)}b=v[v[c+412>>2]+(b<<2)>>2];if((b|0)!=-1){continue}e=v[c+416>>2];g=v[c+424>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break $a}b=v[e+(d<<2)>>2];if((b|0)==-1){continue}break}continue}}ab:{if(!v[c+460>>2]){break ab}d=0;e=v[c+456>>2];b=v[e>>2];if((b|0)==-1){g=v[c+464>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break ab}b=v[e+(d<<2)>>2];if((b|0)==-1){continue}break}}while(1){e=v[(v[c+448>>2]+B(b,12)|0)+8>>2];if(e){Ba[v[v[e>>2]+4>>2]](e)}b=v[v[c+452>>2]+(b<<2)>>2];if((b|0)!=-1){continue}e=v[c+456>>2];g=v[c+464>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break ab}b=v[e+(d<<2)>>2];if((b|0)==-1){continue}break}continue}}g=v[c+380>>2];if(g){d=0;while(1){e=v[c+376>>2];b=v[c+372>>2];bb:{if((b|0)!=-1){while(1){if((b|0)==(d|0)){break bb}b=v[e+(b<<2)>>2];if((b|0)!=-1){continue}break}}b=v[e+(d<<2)>>2];if(!b){break bb}dI(b);e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}d=d+1|0;if((g|0)!=(d|0)){continue}break}}d=v[c+560>>2];b=v[d>>2];if(b){v[d>>2]=v[b>>2]}if(b){while(1){d=v[b+48>>2];cb:{if((d|0)<0|!(d&2147483647)){break cb}d=v[b+40>>2];if(!d){break cb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[b+36>>2];db:{if((d|0)<0|!(d&2147483647)){break db}d=v[b+28>>2];if(!d){break db}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[b+24>>2];eb:{if((d|0)<0|!(d&2147483647)){break eb}d=v[b+16>>2];if(!d){break eb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[b+12>>2];fb:{if((d|0)<0|!(d&2147483647)){break fb}d=v[b+4>>2];if(!d){break fb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b);d=v[c+560>>2];b=v[d>>2];if(b){v[d>>2]=v[b>>2]}if(b){continue}break}}b=v[c+560>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+512>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+508>>2];gb:{if((b|0)<0|!(b&2147483647)){break gb}b=v[c+500>>2];if(!b){break gb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+492>>2];hb:{if((b|0)<0|!(b&2147483647)){break hb}b=v[c+484>>2];if(!b){break hb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+444>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+404>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+396>>2];ib:{if((b|0)<0|!(b&2147483647)){break ib}b=v[c+388>>2];if(!b){break ib}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+384>>2];jb:{if((b|0)<0|!(b&2147483647)){break jb}b=v[c+376>>2];if(!b){break jb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+348>>2];kb:{if((b|0)<0|!(b&2147483647)){break kb}b=v[c+340>>2];if(!b){break kb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+336>>2];lb:{if((b|0)<0|!(b&2147483647)){break lb}b=v[c+328>>2];if(!b){break lb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+324>>2];mb:{if((b|0)<0|!(b&2147483647)){break mb}b=v[c+316>>2];if(!b){break mb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+312>>2];nb:{if((b|0)<0|!(b&2147483647)){break nb}b=v[c+304>>2];if(!b){break nb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+300>>2];ob:{if((b|0)<0|!(b&2147483647)){break ob}b=v[c+292>>2];if(!b){break ob}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+288>>2];pb:{if((b|0)<0|!(b&2147483647)){break pb}b=v[c+280>>2];if(!b){break pb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+268>>2];qb:{if((b|0)<0|!(b&2147483647)){break qb}b=v[c+260>>2];if(!b){break qb}d=v[c+256>>2];Ba[v[v[d>>2]+12>>2]](d,b)}b=v[c+252>>2];rb:{if((b|0)<0|!(b&2147483647)){break rb}b=v[c+244>>2];if(!b){break rb}d=v[c+240>>2];Ba[v[v[d>>2]+12>>2]](d,b)}b=v[c+236>>2];sb:{if((b|0)<0|!(b&2147483647)){break sb}b=v[c+228>>2];if(!b){break sb}d=v[c+224>>2];Ba[v[v[d>>2]+12>>2]](d,b)}b=v[c+204>>2];tb:{if((b|0)<0|!(b&2147483647)){break tb}b=v[c+196>>2];if(!b){break tb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+188>>2];ub:{if((b|0)<0|!(b&2147483647)){break ub}b=v[c+180>>2];if(!b){break ub}d=v[c+176>>2];Ba[v[v[d>>2]+12>>2]](d,b)}b=v[c+160>>2];if(!(!b|v[c+164>>2]<0)){d=v[c+168>>2];Ba[v[v[d>>2]+12>>2]](d,b)}v[c+160>>2]=0;b=v[c+148>>2];if(!(!b|v[c+152>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+148>>2]=0;b=v[c+136>>2];if(!(!b|v[c+140>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+136>>2]=0;v[c+104>>2]=0;v[c+88>>2]=126144;v[c- -64>>2]=0;v[c+48>>2]=126144;v[c+24>>2]=0;v[c+8>>2]=126144;b=v[c>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c);c=v[i+984>>2];Ba[v[v[c>>2]+40>>2]](c);c=v[i+1016>>2];Ba[v[v[c>>2]+8>>2]](c)|0;c=v[i+1016>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+1012>>2];Ba[v[v[c>>2]>>2]](c)|0;c=v[i+1012>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+1004>>2];Ba[v[v[c>>2]>>2]](c);c=v[i+988>>2];b=v[c+324>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+296>>2];vb:{if((b|0)<0|!(b&2147483647)){break vb}b=v[c+288>>2];if(!b){break vb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+284>>2];wb:{if((b|0)<0|!(b&2147483647)){break wb}b=v[c+276>>2];if(!b){break wb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}d=v[c+264>>2];if(d){b=0;while(1){e=v[v[c+260>>2]+(b<<3)>>2];if(e){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);d=v[c+264>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}v[c+272>>2]=0;b=v[c+268>>2];xb:{if((b|0)<0|!(b&2147483647)){break xb}b=v[c+260>>2];if(!b){break xb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+220>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+216>>2];yb:{if((b|0)<0|!(b&2147483647)){break yb}b=v[c+208>>2];if(!b){break yb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+204>>2];zb:{if((b|0)<0|!(b&2147483647)){break zb}b=v[c+196>>2];if(!b){break zb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=0;d=v[c+192>>2];Ab:{if((d|0)<0|!(d&2147483647)){break Ab}d=v[c+184>>2];if(!d){break Ab}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[c+172>>2];if(d){while(1){e=v[v[c+168>>2]+(b<<3)>>2];if(e){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);d=v[c+172>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}b=0;v[c+180>>2]=0;d=v[c+176>>2];Bb:{if((d|0)<0|!(d&2147483647)){break Bb}d=v[c+168>>2];if(!d){break Bb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[c+156>>2];if(d){while(1){e=v[v[c+152>>2]+(b<<3)>>2];if(e){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);d=v[c+156>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}b=0;v[c+164>>2]=0;d=v[c+160>>2];Cb:{if((d|0)<0|!(d&2147483647)){break Cb}d=v[c+152>>2];if(!d){break Cb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[c+140>>2];if(d){while(1){e=v[v[c+136>>2]+(b<<3)>>2];if(e){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);d=v[c+140>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}v[c+148>>2]=0;b=v[c+144>>2];Db:{if((b|0)<0|!(b&2147483647)){break Db}b=v[c+136>>2];if(!b){break Db}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+16>>2]=0;v[c+96>>2]=0;v[c+80>>2]=126144;v[c+56>>2]=0;v[c+40>>2]=126144;v[c>>2]=126144;b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c);b=0;e=xa-16|0;xa=e;c=v[i+1e3>>2];v[c+1208>>2]=0;v[c+1192>>2]=126144;v[c+1168>>2]=0;v[c+1152>>2]=126144;v[c+1128>>2]=0;v[c+1112>>2]=126144;XF(c+640|0);XF(c+168|0);d=v[c+152>>2];if(!(!d|v[c+156>>2]<0)){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d)}v[c+152>>2]=0;d=v[c+132>>2];if(d){while(1){g=v[v[c+128>>2]+(b<<2)>>2];if(g){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g);d=v[c+132>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}b=0;v[e+4>>2]=0;d=v[c+132>>2];if((d|0)<0){g=v[c+128>>2];d=g+(d<<2)|0;while(1){v[d>>2]=v[e+4>>2];d=d+4|0;if(g>>>0>d>>>0){continue}break}}v[c+132>>2]=0;d=v[c+136>>2];Eb:{if((d|0)<0|!(d&2147483647)){break Eb}d=v[c+128>>2];if(!d){break Eb}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d)}d=v[c+108>>2];if(d){while(1){g=v[v[c+104>>2]+(b<<2)>>2];if(g){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g);d=v[c+108>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}v[e+8>>2]=0;b=v[c+108>>2];if((b|0)<0){d=v[c+104>>2];b=d+(b<<2)|0;while(1){v[b>>2]=v[e+8>>2];b=b+4|0;if(d>>>0>b>>>0){continue}break}}v[c+108>>2]=0;b=v[c+112>>2];Fb:{if((b|0)<0|!(b&2147483647)){break Fb}b=v[c+104>>2];if(!b){break Fb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+100>>2];Gb:{if((b|0)<0|!(b&2147483647)){break Gb}b=v[c+92>>2];if(!b){break Gb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+88>>2];Hb:{if((b|0)<0|!(b&2147483647)){break Hb}b=v[c+80>>2];if(!b){break Hb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+76>>2];Ib:{if((b|0)<0|!(b&2147483647)){break Ib}b=v[c+68>>2];if(!b){break Ib}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}d=v[c+48>>2];if(d){b=0;while(1){g=v[v[c+44>>2]+(b<<2)>>2];if(g){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g);d=v[c+48>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}v[e+12>>2]=0;b=v[c+48>>2];if((b|0)<0){d=v[c+44>>2];b=d+(b<<2)|0;while(1){v[b>>2]=v[e+12>>2];b=b+4|0;if(d>>>0>b>>>0){continue}break}}v[c+48>>2]=0;b=v[c+52>>2];Jb:{if((b|0)<0|!(b&2147483647)){break Jb}b=v[c+44>>2];if(!b){break Jb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+40>>2];Kb:{if((b|0)<0|!(b&2147483647)){break Kb}b=v[c+32>>2];if(!b){break Kb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+24>>2];Lb:{if((b|0)<0|!(b&2147483647)){break Lb}b=v[c+16>>2];if(!b){break Lb}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+8>>2];Mb:{if((b|0)<0|!(b&2147483647)){break Mb}c=v[c>>2];if(!c){break Mb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=e+16|0;c=v[i+1e3>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+4612>>2];if(c){Ba[v[v[c>>2]+40>>2]](c)}d=v[i+976>>2];if(d){b=0;c=v[d+1816>>2];Nb:{if(!c){break Nb}e=v[c+12>>2];Ob:{if((e|0)<0|!(e&2147483647)){break Ob}e=v[c+4>>2];if(!e){break Ob}c=v[c>>2];Ba[v[v[c>>2]+12>>2]](c,e);c=v[d+1816>>2];if(!c){break Nb}}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+1816>>2]=0;j=d+312|0;vK(j);c=v[d+1016>>2];if(c){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}c=v[d+984>>2];if(!(!c|v[d+988>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+984>>2]=0;c=v[d+972>>2];if(!(!c|v[d+976>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+972>>2]=0;c=v[d+960>>2];if(!(!c|v[d+964>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+960>>2]=0;c=v[d+948>>2];if(!(!c|v[d+952>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+948>>2]=0;c=v[d+936>>2];if(!(!c|v[d+940>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+936>>2]=0;if(v[d+924>>2]){f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+932>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];Pb:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;Qb:{if(!h){break Qb}b=h<<2;if(!b){break Qb}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?45213:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[f+8>>2];Rb:{if(v[f+24>>2]<0){break Rb}b=v[f+16>>2];if(!b){break Rb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break Pb}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+932>>2]>>2];v[d+932>>2]=c;if(c){continue}break}b=v[f+16>>2];e=v[f+20>>2]}else{e=0}c=f+8|0;CK(b,e,c);CK(v[d+908>>2],v[d+912>>2],c);c=v[f+24>>2];Sb:{if((c|0)<0|!(c&2147483647)){break Sb}c=v[f+16>>2];if(!c){break Sb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+908>>2];b=v[d+912>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+908>>2]}b=v[d+916>>2];Tb:{if((b|0)<0|!(b&2147483647)){break Tb}if((d+648|0)==(c|0)){t[d+904|0]=0;break Tb}if(!c){break Tb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[d+632>>2]){b=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;c=v[d+640>>2];if(c){while(1){v[f+8>>2]=c;b=v[f+20>>2];Ub:{if(b>>>0>=(v[f+24>>2]&2147483647)>>>0){c=0;b=v[f+24>>2];h=b&2147483647?b<<1:1;Vb:{if(!h){break Vb}b=h<<2;if(!b){break Vb}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?45371:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,e,16608,553)|0}e=v[f+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=v[f+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[f+8>>2];Wb:{if(v[f+24>>2]<0){break Wb}b=v[f+16>>2];if(!b){break Wb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=c;v[f+20>>2]=e+1;break Ub}v[v[f+16>>2]+(b<<2)>>2]=c;v[f+20>>2]=b+1}c=v[v[d+640>>2]>>2];v[d+640>>2]=c;if(c){continue}break}b=v[f+16>>2];e=v[f+20>>2]}else{e=0}c=f+8|0;DK(b,e,c);DK(v[d+616>>2],v[d+620>>2],c);c=v[f+24>>2];Xb:{if((c|0)<0|!(c&2147483647)){break Xb}c=v[f+16>>2];if(!c){break Xb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+32|0}c=v[d+616>>2];b=v[d+620>>2];if(b){b=(b<<2)+c|0;while(1){e=v[c>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}c=v[d+616>>2]}b=v[d+624>>2];Yb:{if((b|0)<0|!(b&2147483647)){break Yb}if((d+356|0)==(c|0)){t[d+612|0]=0;break Yb}if(!c){break Yb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}vK(j);c=v[d+340>>2];if(!(!c|v[d+344>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[d+340>>2]=0;b=v[d+304>>2];c=v[b>>2];if(c){v[b>>2]=v[c>>2]}if(c){while(1){b=v[c+7204>>2];if(!(!b|v[c+7208>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}v[c+7204>>2]=0;b=v[c+7192>>2];if(!(!b|v[c+7196>>2]<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}v[c+7192>>2]=0;b=v[c+7124>>2];Zb:{if((b|0)<0|!(b&2147483647)){break Zb}b=v[c+7116>>2];if(!b){break Zb}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c-v[c-4>>2]|0);b=v[d+304>>2];c=v[b>>2];if(c){v[b>>2]=v[c>>2]}if(c){continue}break}}c=v[d+304>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}Kp(d+212|0);c=d+24|0;Ey(c);Ey(c);Fy(c);Fy(c);Gy(c);Hy(c);Hy(c);b=v[c+116>>2];if(b){while(1){b=b-1|0;e=v[v[c+112>>2]+(b<<2)>>2];v[c+116>>2]=b;if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);b=v[c+116>>2]}if(b){continue}break}}b=v[c+120>>2];_b:{if((b|0)<0|!(b&2147483647)){break _b}b=v[c+112>>2];if(!b){break _b}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+108>>2];$b:{if((b|0)<0|!(b&2147483647)){break $b}b=v[c+100>>2];if(!b){break $b}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+96>>2];ac:{if((b|0)<0|!(b&2147483647)){break ac}b=v[c+88>>2];if(!b){break ac}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+84>>2];bc:{if((b|0)<0|!(b&2147483647)){break bc}b=v[c+76>>2];if(!b){break bc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+72>>2];cc:{if((b|0)<0|!(b&2147483647)){break cc}b=v[c- -64>>2];if(!b){break cc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+60>>2];dc:{if((b|0)<0|!(b&2147483647)){break dc}b=v[c+52>>2];if(!b){break dc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+48>>2];ec:{if((b|0)<0|!(b&2147483647)){break ec}b=v[c+40>>2];if(!b){break ec}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+36>>2];fc:{if((b|0)<0|!(b&2147483647)){break fc}b=v[c+28>>2];if(!b){break fc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+24>>2];gc:{if((b|0)<0|!(b&2147483647)){break gc}b=v[c+16>>2];if(!b){break gc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}b=v[c+12>>2];hc:{if((b|0)<0|!(b&2147483647)){break hc}b=v[c+4>>2];if(!b){break hc}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}c=v[c>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d+12>>2];ic:{if((c|0)<0|!(c&2147483647)){break ic}c=v[d+4>>2];if(!c){break ic}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[d>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d);v[i+976>>2]=0}c=v[i+1144>>2];b=v[c+12>>2];jc:{kc:{if((b|0)<0|!(b&2147483647)){break kc}b=v[c+4>>2];if(!b){break kc}c=v[c>>2];Ba[v[v[c>>2]+12>>2]](c,b);c=v[i+1144>>2];if(!c){break jc}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[i+1008>>2];if(c){Ba[v[v[c>>2]>>2]](c)|0;c=v[i+1008>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[i+1008>>2]=0}xa=o+16|0;v[m+4884>>2]=0;v[m+4872>>2]=0;v[m+4860>>2]=0;c=v[m+4796>>2];d=v[m+4804>>2]+2|0;if(c>>>0>d>>>0){while(1){c=c-1|0;b=v[v[m+4792>>2]+(c<<2)>>2];v[m+4796>>2]=c;if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);c=v[m+4796>>2]}if(c>>>0>d>>>0){continue}break}}v[m+4804>>2]=0;v[m+4808>>2]=0;if(p){Ba[v[v[a>>2]+404>>2]](a)}c=v[a+6340>>2];lc:{if(c>>>0>127){break lc}b=c+150864|0;if(!w[b|0]){break lc}t[b|0]=0;v[(c<<2)+150992>>2]=0}c=a+6348|0;b=v[v[c>>2]>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}c=v[c>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[a+6296>>2]=0;v[a+6280>>2]=126144;v[a+6256>>2]=0;v[a+6240>>2]=126144;v[a+6216>>2]=0;v[a+6200>>2]=126144;v[a+6184>>2]=0;v[a+6168>>2]=126144;v[a+6152>>2]=0;v[a+6136>>2]=126144;v[a+6120>>2]=0;v[a+6104>>2]=126144;c=v[a+6088>>2];mc:{if((c|0)<0|!(c&2147483647)){break mc}c=v[a+6080>>2];if(!c){break mc}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+6068>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+6064>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+6060>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+6032>>2];nc:{if((c|0)<0|!(c&2147483647)){break nc}c=v[a+6024>>2];if(!c){break nc}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+5984>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+5944>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+5940>>2];oc:{if((c|0)<0|!(c&2147483647)){break oc}c=v[a+5932>>2];if(!c){break oc}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+5892>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}Kp(a+5828|0);v[a+5800>>2]=0;v[a+5784>>2]=126144;v[a>>2]=124876;v[a+5760>>2]=0;v[a+5744>>2]=126144;FE(a+5584|0);Hp(m);return a|0}function Uy(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;var j=C(0),k=0,l=0,m=0,n=0,o=0,p=C(0),q=0,r=0,s=0,A=C(0),D=0,E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=0,R=0,S=0,T=0,U=C(0),V=0,W=C(0),X=0,Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=0,Fa=0,Ga=0,Ha=C(0),Ia=C(0),Ja=C(0),Ka=0,La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=0,Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=0,Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=0,mb=0,nb=0,ob=0,pb=0,qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=0,zb=0,Ab=0,Bb=C(0),Cb=C(0),Db=C(0),Eb=0,Fb=0,Gb=0,Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=C(0),rc=C(0),sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=0,Ac=C(0),Bc=C(0),Cc=C(0),Dc=C(0),Ec=C(0),Fc=0,Gc=C(0),Hc=C(0),Ic=C(0),Jc=C(0),Kc=C(0),Lc=C(0),Mc=C(0),Nc=C(0),Oc=0,Pc=C(0),Qc=C(0),Rc=C(0),Sc=C(0),Tc=C(0),Uc=C(0),Vc=C(0),Wc=C(0),Xc=C(0),Yc=C(0),Zc=C(0),_c=C(0),$c=0,ad=C(0),bd=C(0),cd=C(0),dd=C(0),ed=0,fd=C(0),gd=C(0),hd=C(0),id=C(0),jd=C(0),kd=C(0),ld=C(0),md=C(0),nd=C(0),od=C(0),pd=C(0),qd=C(0),rd=C(0),sd=C(0),td=C(0),ud=C(0),vd=C(0),wd=C(0),xd=C(0),yd=C(0),zd=C(0),Ad=C(0),Bd=C(0),Cd=C(0),Dd=C(0),Ed=C(0),Fd=C(0),Gd=C(0),Hd=C(0),Id=C(0),Jd=C(0),Kd=C(0),Ld=C(0),Md=C(0),Nd=C(0),Od=C(0),Pd=C(0),Qd=C(0),Rd=C(0),Sd=C(0),Td=C(0),Ud=C(0),Vd=C(0),Wd=C(0),Xd=C(0),Yd=C(0),Zd=C(0),_d=C(0),$d=C(0),ae=0,be=0,ce=0,de=0,ee=0,fe=0,ge=0,he=C(0),ie=C(0),je=C(0),ke=C(0),le=C(0),me=C(0),ne=C(0),oe=C(0),pe=C(0),qe=C(0),re=C(0),se=C(0),te=C(0),ue=C(0),ve=C(0),we=C(0),xe=C(0),ye=C(0),ze=C(0),Ae=C(0),Be=C(0),Ce=C(0),De=C(0),Ee=C(0),Fe=C(0),Ge=C(0),He=C(0),Ie=C(0),Je=C(0),Ke=C(0),Le=C(0),Me=C(0),Ne=C(0),Oe=C(0),Pe=C(0),Qe=C(0),Re=C(0),Se=C(0),Te=C(0),Ue=C(0),Ve=C(0),We=C(0),Xe=C(0),Ye=C(0),Ze=C(0),_e=C(0),$e=C(0),af=C(0),bf=C(0),cf=C(0),df=C(0),ef=C(0),ff=C(0),gf=C(0),hf=C(0),jf=C(0),kf=C(0),lf=C(0),mf=C(0),nf=C(0),of=C(0),pf=C(0),qf=C(0),rf=C(0),sf=C(0),tf=C(0),uf=C(0),vf=C(0),wf=C(0),xf=C(0),yf=C(0),zf=C(0),Af=C(0),Bf=C(0),Cf=C(0),Df=C(0),Ef=C(0),Ff=C(0),Gf=C(0),Hf=C(0),If=C(0),Jf=C(0),Kf=C(0),Lf=C(0),Mf=C(0),Nf=C(0),Of=C(0),Pf=C(0),Qf=C(0),Rf=C(0),Sf=C(0),Tf=C(0),Uf=0,Vf=C(0),Wf=C(0),Xf=C(0),Yf=C(0),Zf=C(0),_f=C(0),$f=C(0),ag=C(0),bg=C(0),cg=C(0),dg=C(0),eg=C(0),fg=C(0),gg=C(0),hg=C(0),ig=C(0),jg=C(0),kg=C(0),lg=C(0),mg=C(0),ng=C(0),og=C(0),pg=C(0),qg=C(0),rg=C(0),sg=C(0),tg=C(0),ug=C(0),vg=0,wg=0,xg=0,yg=0,zg=0,Ag=0,Bg=0,Cg=0,Dg=C(0),Eg=C(0),Fg=C(0),Gg=C(0),Hg=0,Ig=0,Jg=0,Kg=0,Lg=C(0),Mg=C(0),Ng=C(0),Og=C(0),Pg=C(0),Qg=C(0),Rg=C(0),Sg=C(0),Tg=C(0),Ug=C(0),Vg=C(0),Wg=C(0),Xg=C(0),Yg=C(0),Zg=C(0),_g=C(0),$g=0,ah=C(0),bh=C(0),ch=C(0),dh=C(0),eh=C(0),fh=C(0),gh=C(0),hh=C(0),ih=C(0),jh=C(0),kh=C(0),lh=C(0),mh=C(0),nh=C(0),oh=C(0),ph=C(0),qh=C(0),rh=C(0),sh=C(0),th=C(0),uh=C(0),vh=C(0),wh=C(0),xh=C(0),yh=C(0),zh=C(0),Ah=C(0),Bh=C(0);Ka=xa-32|0;xa=Ka;u[v[c+16>>2]+22>>1]=0;u[v[c+192>>2]+22>>1]=0;u[v[c+368>>2]+22>>1]=0;u[v[c+544>>2]+22>>1]=0;v[b+4112>>2]=0;k=b+4128|0;s=b+16|0;r=1;a:{while(1){Q=B(X,176)+c|0;q=v[b+4112>>2];v[Q+116>>2]=s+(q<<6);l=v[(X<<2)+a>>2];if(q+w[l+12|0]>>>0>64){break a}t[Ka+31|0]=0;t[Ka+30|0]=0;A=z[v[Q+28>>2]+76>>2];j=z[v[Q+32>>2]+76>>2];l=uy(s,l,Ka+31|0,Ka+30|0,Ka+24|0,Ka+20|0,Ka+16|0,Ka+12|0,j>A?A:j);if(!l){break a}v[Q+120>>2]=l;t[Q+124|0]=w[Ka+31|0];t[Q+125|0]=w[Q+125|0]|t[Ka+30|0]&1;z[Q>>2]=z[Ka+24>>2]*z[Q>>2];z[Q+8>>2]=z[Ka+20>>2]*z[Q+8>>2];z[Q+4>>2]=z[Ka+16>>2]*z[Q+4>>2];z[Q+12>>2]=z[Ka+12>>2]*z[Q+12>>2];X=X+1|0;if((X|0)!=4){continue}break}D=xa-160|0;xa=D;v[k+7684>>2]=0;v[k+7688>>2]=0;q=k+7296|0;b:{while(1){a=G<<2;s=B(G,176)+c|0;z[a+(D+144|0)>>2]=z[s>>2];z[a+(D+128|0)>>2]=z[s+8>>2];z[a+(D+112|0)>>2]=z[s+4>>2];z[a+(D+96|0)>>2]=z[s+12>>2];v[s+148>>2]=o;c:{if(w[s+125|0]){break c}if(vy(k,v[s+136>>2],w[s+140|0],s+36|0,s- -64|0,g)){break c}r=1;break b}v[s+156>>2]=v[k+7684>>2];r=1;if(!aA(k,v[s+116>>2],v[s+120>>2])){break b}o=v[s+156>>2];u[s+160>>1]=v[k+7684>>2]-o;b=s+36|0;a=s- -64|0;if(bA(k,v[s+116>>2],b,a,o,v[s+148>>2])){break b}cA(k,v[s+116>>2],b,a,g,v[s+148>>2],C(z[s+128>>2]+f));o=v[k+7688>>2];b=o;P=v[s+148>>2];if(b>>>0>P>>>0){while(1){a=b-1|0;if(v[(k+(a<<2)|0)+7424>>2]==65535){if(b>>>0>>0){while(1){l=k+7424|0;r=b<<2;o=r-4|0;v[l+o>>2]=v[l+r>>2];v[o+q>>2]=v[r+q>>2];b=b+1|0;o=v[k+7688>>2];if(b>>>0>>0){continue}break}P=v[s+148>>2]}o=o-1|0;v[k+7688>>2]=o}b=a;if(P>>>0>>0){continue}break}}v[s+152>>2]=o-P;G=G+1|0;if((G|0)!=4){continue}break}X=0;G=0;o=0;b=v[c+148>>2];l=v[c+152>>2];d:{if(b>>>0>=l+b>>>0){break d}P=0;if(l-1>>>0>=3){a=l&-4;while(1){q=o;o=k+(b<<2)|0;o=(((q+(v[o+7424>>2]!=65535)|0)+(v[o+7428>>2]!=65535)|0)+(v[o+7432>>2]!=65535)|0)+(v[o+7436>>2]!=65535)|0;b=b+4|0;V=V+4|0;if((a|0)!=(V|0)){continue}break}}a=l&3;if(a){while(1){o=(v[(k+(b<<2)|0)+7424>>2]!=65535)+o|0;b=b+1|0;P=P+1|0;if((a|0)!=(P|0)){continue}break}}a=B(o,104)+15&-16;if(!a){break d}r=0;G=Ba[v[v[i>>2]+4>>2]](i,a)|0;if(G+1>>>0<2){break b}}b=v[c+324>>2];q=v[c+328>>2];e:{if(b>>>0>=q+b>>>0){break e}V=0;if(q-1>>>0>=3){a=q&-4;r=0;while(1){l=k+(b<<2)|0;lb=((((v[l+7424>>2]!=65535)+lb|0)+(v[l+7428>>2]!=65535)|0)+(v[l+7432>>2]!=65535)|0)+(v[l+7436>>2]!=65535)|0;b=b+4|0;r=r+4|0;if((a|0)!=(r|0)){continue}break}}a=q&3;if(a){while(1){lb=(v[(k+(b<<2)|0)+7424>>2]!=65535)+lb|0;b=b+1|0;V=V+1|0;if((a|0)!=(V|0)){continue}break}}a=B(lb,104)+15&-16;if(!a){break e}r=0;X=Ba[v[v[i>>2]+4>>2]](i,a)|0;if(X+1>>>0<2){break b}}P=0;b=v[c+500>>2];q=v[c+504>>2];f:{if(b>>>0>=q+b>>>0){break f}r=0;if(q-1>>>0>=3){a=q&-4;while(1){l=k+(b<<2)|0;P=((((v[l+7424>>2]!=65535)+P|0)+(v[l+7428>>2]!=65535)|0)+(v[l+7432>>2]!=65535)|0)+(v[l+7436>>2]!=65535)|0;b=b+4|0;Ta=Ta+4|0;if((a|0)!=(Ta|0)){continue}break}}a=q&3;if(a){while(1){P=(v[(k+(b<<2)|0)+7424>>2]!=65535)+P|0;b=b+1|0;r=r+1|0;if((a|0)!=(r|0)){continue}break}}a=B(P,104)+15&-16;if(!a){break f}r=0;mb=Ba[v[v[i>>2]+4>>2]](i,a)|0;if(mb+1>>>0<2){break b}}V=0;b=v[c+676>>2];q=v[c+680>>2];g:{if(b>>>0>=q+b>>>0){break g}Ta=0;if(q-1>>>0>=3){a=q&-4;r=0;while(1){l=k+(b<<2)|0;V=((((v[l+7424>>2]!=65535)+V|0)+(v[l+7428>>2]!=65535)|0)+(v[l+7432>>2]!=65535)|0)+(v[l+7436>>2]!=65535)|0;b=b+4|0;r=r+4|0;if((a|0)!=(r|0)){continue}break}}a=q&3;if(a){while(1){V=(v[(k+(b<<2)|0)+7424>>2]!=65535)+V|0;b=b+1|0;Ta=Ta+1|0;if((a|0)!=(Ta|0)){continue}break}}a=B(V,104)+15&-16;if(!a){break g}r=0;nb=Ba[v[v[i>>2]+4>>2]](i,a)|0;if(nb+1>>>0<2){break b}}Ta=0;v[D+92>>2]=0;R=D- -64|0;a=k;k=0;b=xa-256|0;xa=b;J9(b+128|0,0,128);m=J9(b,0,128);S=w[c+124|0];Tb=v[c+152>>2];if(Tb){s=v[c+148>>2];b=0;while(1){r=0;l=b+s|0;T=a+B(l,104)|0;if(!(t[T+2817|0]&1)){r=x[T+2818>>1]!=0}n=v[(a+(l<<2)|0)+7296>>2];h:{if(!n){break h}q=b<<2;l=q+(m+128|0)|0;Q=v[l>>2];v[l>>2]=n>>>0>Q>>>0?n:Q;k=k+n|0;if(!r){break h}l=m+q|0;r=v[l>>2];q=l;l=x[T+2818>>1]<<1;v[q>>2]=l>>>0>r>>>0?l:r;k=k+l|0}b=b+1|0;if((Tb|0)!=(b|0)){continue}break}}v[R>>2]=k;Q=1;Q=S?Q:w[c+300|0]!=0;Ub=v[c+328>>2];i:{if(!Ub){k=0;break i}s=v[c+324>>2];k=0;b=0;while(1){r=0;l=b+s|0;T=a+B(l,104)|0;if(!(t[T+2817|0]&1)){r=x[T+2818>>1]!=0}n=v[(a+(l<<2)|0)+7296>>2];j:{if(!n){break j}q=b<<2;l=q+(m+128|0)|0;S=v[l>>2];v[l>>2]=n>>>0>S>>>0?n:S;k=k+n|0;if(!r){break j}l=m+q|0;r=v[l>>2];q=l;l=x[T+2818>>1]<<1;v[q>>2]=l>>>0>r>>>0?l:r;k=k+l|0}b=b+1|0;if((Ub|0)!=(b|0)){continue}break}}v[R+4>>2]=k;n=1;n=Q?n:w[c+476|0]!=0;Fa=v[c+504>>2];k:{if(!Fa){k=0;break k}s=v[c+500>>2];k=0;b=0;while(1){r=0;l=b+s|0;S=a+B(l,104)|0;if(!(t[S+2817|0]&1)){r=x[S+2818>>1]!=0}T=v[(a+(l<<2)|0)+7296>>2];l:{if(!T){break l}q=b<<2;l=q+(m+128|0)|0;Q=v[l>>2];v[l>>2]=Q>>>0>>0?T:Q;k=k+T|0;if(!r){break l}l=m+q|0;r=v[l>>2];q=l;l=x[S+2818>>1]<<1;v[q>>2]=l>>>0>r>>>0?l:r;k=k+l|0}b=b+1|0;if((Fa|0)!=(b|0)){continue}break}}v[R+8>>2]=k;Q=1;Q=n?Q:w[c+652|0]!=0;n=0;k=0;Ya=v[c+680>>2];if(Ya){s=v[c+676>>2];b=0;while(1){r=0;l=b+s|0;T=a+B(l,104)|0;if(!(t[T+2817|0]&1)){r=x[T+2818>>1]!=0}Ea=v[(a+(l<<2)|0)+7296>>2];m:{if(!Ea){break m}q=b<<2;l=q+(m+128|0)|0;S=v[l>>2];v[l>>2]=S>>>0>>0?Ea:S;k=k+Ea|0;if(!r){break m}l=m+q|0;r=v[l>>2];q=l;l=x[T+2818>>1]<<1;v[q>>2]=l>>>0>r>>>0?l:r;k=k+l|0}b=b+1|0;if((Ya|0)!=(b|0)){continue}break}}v[R+12>>2]=k;b=0;r=0;k=Tb>>>0>>0?Ub:Tb;k=k>>>0>>0?Fa:k;Fa=k>>>0>>0?Ya:k;n:{if(!Fa){break n}q=0;s=Fa-1|0;if(s>>>0>=3){l=Fa&-4;k=0;while(1){S=b;b=q<<2;b=(((S+(v[b+m>>2]!=0)|0)+(v[m+(b|4)>>2]!=0)|0)+(v[m+(b|8)>>2]!=0)|0)+(v[m+(b|12)>>2]!=0)|0;q=q+4|0;k=k+4|0;if((l|0)!=(k|0)){continue}break}}k=Fa&3;if(k){while(1){b=(v[m+(q<<2)>>2]!=0)+b|0;q=q+1|0;r=r+1|0;if((k|0)!=(r|0)){continue}break}}n=b<<7;if(!Fa){b=0;r=0;break n}k=0;q=0;r=0;b=0;if(s>>>0>=3){T=Fa&-4;Ea=0;while(1){Ya=q<<2;S=Ya|12;s=Ya|8;l=Ya|4;r=v[S+m>>2]+(v[s+m>>2]+(v[l+m>>2]+(v[m+Ya>>2]+r|0)|0)|0)|0;R=S;S=m+128|0;b=v[R+S>>2]+(v[s+S>>2]+(v[l+S>>2]+(v[S+Ya>>2]+b|0)|0)|0)|0;q=q+4|0;Ea=Ea+4|0;if((T|0)!=(Ea|0)){continue}break}}s=Fa&3;if(!s){break n}while(1){l=q<<2;r=v[l+m>>2]+r|0;b=v[l+(m+128|0)>>2]+b|0;q=q+1|0;k=k+1|0;if((s|0)!=(k|0)){continue}break}}q=160;if(!(v[c+96>>2]==1|v[c+272>>2]==1|v[c+448>>2]==1)){q=v[c+624>>2]==1?160:112}v[D+92>>2]=((B(Fa,192)+n|0)+(Q?b<<4:0)|0)+B(b+r|0,q);xa=m+256|0;$c=v[D+92>>2];if($c){r=1;b=$c+16|0;if(b>>>0>16384){break b}r=0;Ta=Ba[v[v[i>>2]>>2]](i,b)|0;if(Ta+1>>>0<2){break b}}t[c+140|0]=o;v[c+136>>2]=G;l=$c>>>4|0;k=v[c+16>>2];o:{if(!G){break o}o=v[c+152>>2];if(!o){break o}b=0;while(1){i=v[c+148>>2]+b|0;if(v[(a+(i<<2)|0)+7424>>2]!=65535){G=I9(G,(a+B(i,104)|0)+2816|0,104)+104|0;o=v[c+152>>2]}b=b+1|0;if(o>>>0>b>>>0){continue}break}}u[c+162>>1]=x[c+162>>1]+x[D+64>>1];u[k+22>>1]=l;v[k+24>>2]=Ta;u[k+20>>1]=v[c+120>>2];v[k+28>>2]=v[c+144>>2];t[c+316|0]=lb;v[c+312>>2]=X;k=v[c+192>>2];p:{if(!X){break p}o=v[c+328>>2];if(!o){break p}b=0;while(1){i=v[c+324>>2]+b|0;if(v[(a+(i<<2)|0)+7424>>2]!=65535){X=I9(X,(a+B(i,104)|0)+2816|0,104)+104|0;o=v[c+328>>2]}b=b+1|0;if(o>>>0>b>>>0){continue}break}}u[c+338>>1]=x[c+338>>1]+x[D+68>>1];u[k+22>>1]=l;v[k+24>>2]=Ta;u[k+20>>1]=v[c+296>>2];v[k+28>>2]=v[c+320>>2];t[c+492|0]=P;v[c+488>>2]=mb;k=v[c+368>>2];q:{if(!mb){break q}o=v[c+504>>2];if(!o){break q}b=0;while(1){i=v[c+500>>2]+b|0;if(v[(a+(i<<2)|0)+7424>>2]!=65535){mb=I9(mb,(a+B(i,104)|0)+2816|0,104)+104|0;o=v[c+504>>2]}b=b+1|0;if(o>>>0>b>>>0){continue}break}}u[c+514>>1]=x[c+514>>1]+x[D+72>>1];u[k+22>>1]=l;v[k+24>>2]=Ta;u[k+20>>1]=v[c+472>>2];v[k+28>>2]=v[c+496>>2];t[c+668|0]=V;v[c+664>>2]=nb;k=v[c+544>>2];r:{if(!nb){break r}o=v[c+680>>2];if(!o){break r}b=0;while(1){i=v[c+676>>2]+b|0;if(v[(a+(i<<2)|0)+7424>>2]!=65535){nb=I9(nb,(a+B(i,104)|0)+2816|0,104)+104|0;o=v[c+680>>2]}b=b+1|0;if(o>>>0>b>>>0){continue}break}}u[c+690>>1]=x[c+690>>1]+x[D+76>>1];u[k+22>>1]=l;v[k+24>>2]=Ta;u[k+20>>1]=v[c+648>>2];v[k+28>>2]=v[c+672>>2];b=v[D+156>>2];v[D+56>>2]=v[D+152>>2];v[D+60>>2]=b;b=v[D+148>>2];v[D+48>>2]=v[D+144>>2];v[D+52>>2]=b;b=v[D+124>>2];v[D+40>>2]=v[D+120>>2];v[D+44>>2]=b;b=v[D+116>>2];v[D+32>>2]=v[D+112>>2];v[D+36>>2]=b;b=v[D+140>>2];v[D+24>>2]=v[D+136>>2];v[D+28>>2]=b;b=v[D+132>>2];v[D+16>>2]=v[D+128>>2];v[D+20>>2]=b;b=v[D+108>>2];v[D+8>>2]=v[D+104>>2];v[D+12>>2]=b;b=v[D+100>>2];v[D>>2]=v[D+96>>2];v[D+4>>2]=b;R=a;n=Ta;lb=0;nb=0;mb=0;Q=0;Tb=0;Ub=0;Fa=0;Ya=0;yb=xa-16|0;xa=yb;m=c;Dg=z[m+660>>2];Eg=z[m+484>>2];Fg=z[m+308>>2];Gg=z[m+132>>2];v[yb+8>>2]=0;v[yb+12>>2]=0;v[yb>>2]=0;v[yb+4>>2]=0;b=1;Ea=1;s:{if(w[m+124|0]){break s}Ea=1;if(w[m+300|0]){break s}Ea=1;if(w[m+476|0]){break s}Ea=w[m+652|0]!=0}c=v[m+96>>2];b=(c|0)!=1?v[m+272>>2]==1:b;a=1;q=1;q=(c|0)!=4?v[m+272>>2]==4:q;a=b?a:v[m+448>>2]==1;Yb=1;b=1;b=q?b:v[m+448>>2]==4;Yb=a?Yb:v[m+624>>2]==1;Fc=1;Fc=b?Fc:v[m+624>>2]==4;i=v[m+152>>2];c=v[m+328>>2];b=v[m+504>>2];a=v[m+680>>2];a=a>>>0>>0?b:a;a=a>>>0>>0?c:a;Uf=a>>>0>>0?i:a;if(Uf){Hg=w[m+654|0];Ig=w[m+478|0];Jg=w[m+302|0];Kg=w[m+126|0];Vf=z[m+616>>2];Wf=z[m+612>>2];Xf=z[m+608>>2];Yf=z[m+440>>2];Zf=z[m+436>>2];_f=z[m+432>>2];$f=z[m+264>>2];ag=z[m+260>>2];bg=z[m+256>>2];cg=z[m+88>>2];dg=z[m+84>>2];eg=z[m+80>>2];fg=z[m+588>>2];gg=z[m+584>>2];hg=z[m+580>>2];ig=z[m+412>>2];jg=z[m+408>>2];kg=z[m+404>>2];lg=z[m+236>>2];mg=z[m+232>>2];ng=z[m+228>>2];og=z[m+60>>2];pg=z[m+56>>2];qg=z[m+52>>2];Lg=z[m+656>>2];Mg=z[m+480>>2];Ng=z[m+304>>2];G=v[m+560>>2];he=z[G+32>>2];l=v[m+384>>2];ie=z[l+32>>2];k=v[m+208>>2];je=z[k+32>>2];o=v[m+32>>2];ke=z[o- -64>>2];le=z[o+60>>2];me=z[o+56>>2];ne=z[o+52>>2];oe=z[o+48>>2];pe=z[o+44>>2];qe=z[o+40>>2];re=z[o+36>>2];i=v[m+556>>2];se=z[i+32>>2];c=v[m+380>>2];te=z[c+32>>2];b=v[m+204>>2];ue=z[b+32>>2];a=v[m+28>>2];ve=z[a- -64>>2];we=z[a+60>>2];xe=z[a+56>>2];ye=z[a+52>>2];ze=z[a+48>>2];Ae=z[a+44>>2];Be=z[a+40>>2];Ce=z[a+36>>2];bc=z[G+16>>2];cc=z[l+16>>2];dc=z[k+16>>2];ec=z[o+24>>2];fc=z[o+20>>2];De=z[i+16>>2];Ee=z[c+16>>2];Fe=z[b+16>>2];Ge=z[a+24>>2];He=z[a+20>>2];Ie=z[G- -64>>2];Je=z[G+60>>2];Ke=z[G+56>>2];Le=z[G+52>>2];Me=z[G+48>>2];Ne=z[G+44>>2];Oe=z[G+40>>2];Pe=z[G+36>>2];Qe=z[l- -64>>2];Re=z[l+60>>2];Se=z[l+56>>2];Te=z[l+52>>2];Ue=z[l+48>>2];Ve=z[l+44>>2];We=z[l+40>>2];Xe=z[l+36>>2];Ye=z[k- -64>>2];Ze=z[k+60>>2];_e=z[k+56>>2];$e=z[k+52>>2];af=z[k+48>>2];bf=z[k+44>>2];cf=z[k+40>>2];df=z[k+36>>2];ef=z[i- -64>>2];ff=z[i+60>>2];gf=z[i+56>>2];hf=z[i+52>>2];jf=z[i+48>>2];kf=z[i+44>>2];lf=z[i+40>>2];mf=z[i+36>>2];nf=z[c- -64>>2];of=z[c+60>>2];pf=z[c+56>>2];qf=z[c+52>>2];rf=z[c+48>>2];sf=z[c+44>>2];tf=z[c+40>>2];uf=z[c+36>>2];vf=z[b- -64>>2];wf=z[b+60>>2];xf=z[b+56>>2];yf=z[b+52>>2];zf=z[b+48>>2];Af=z[b+44>>2];Bf=z[b+40>>2];Cf=z[b+36>>2];gc=z[G+24>>2];hc=z[G+20>>2];ic=z[l+24>>2];jc=z[l+20>>2];kc=z[k+24>>2];lc=z[k+20>>2];Df=z[i+24>>2];Ef=z[i+20>>2];Ff=z[c+24>>2];Gf=z[c+20>>2];Hf=z[b+24>>2];If=z[b+20>>2];Og=z[m+128>>2];ad=z[D+12>>2];bd=z[D+8>>2];cd=z[D+4>>2];dd=z[D>>2];Jf=z[o+32>>2];Kf=z[a+32>>2];mc=z[o+16>>2];Lf=z[a+16>>2];ed=Yb?144:96;g=z[i+68>>2];f=z[G+68>>2];rg=f>2];f=z[l+68>>2];sg=f>2];f=z[k+68>>2];tg=f>2];nc=z[G+8>>2];Pg=C(fd-nc);gd=z[c+8>>2];oc=z[l+8>>2];Qg=C(gd-oc);hd=z[b+8>>2];pc=z[k+8>>2];Rg=C(hd-pc);id=z[i+4>>2];qc=z[G+4>>2];Sg=C(id-qc);jd=z[c+4>>2];rc=z[l+4>>2];Tg=C(jd-rc);kd=z[b+4>>2];sc=z[k+4>>2];Ug=C(kd-sc);ld=z[i>>2];tc=z[G>>2];Vg=C(ld-tc);md=z[c>>2];uc=z[l>>2];Wg=C(md-uc);nd=z[b>>2];vc=z[k>>2];Xg=C(nd-vc);g=z[a+68>>2];f=z[o+68>>2];ug=f>2]*z[o+12>>2]);qd=z[a+8>>2];wc=z[o+8>>2];Yg=C(qd-wc);rd=z[a+4>>2];xc=z[o+4>>2];Zg=C(rd-xc);sd=z[a>>2];yc=z[o>>2];_g=C(sd-yc);td=C(z[D+28>>2]*z[G+12>>2]);ud=C(z[D+24>>2]*z[l+12>>2]);vd=C(z[D+20>>2]*z[k+12>>2]);$g=Yb?7:8;wd=z[D+44>>2];xd=C(z[D+60>>2]*z[i+12>>2]);ah=C(wd*xd);yd=z[D+40>>2];zd=C(z[D+56>>2]*z[c+12>>2]);bh=C(yd*zd);Ad=z[D+36>>2];Bd=C(z[D+52>>2]*z[b+12>>2]);ch=C(Ad*Bd);Cd=z[D+32>>2];Dd=C(z[D+48>>2]*z[a+12>>2]);dh=C(Cd*Dd);Gc=z[m+604>>2];Mf=C(C(Gc*Gc)+C(-.5));Hc=z[m+428>>2];Nf=C(C(Hc*Hc)+C(-.5));Ic=z[m+252>>2];Of=C(C(Ic*Ic)+C(-.5));Jc=z[m+76>>2];Pf=C(C(Jc*Jc)+C(-.5));Kc=z[m+576>>2];Qf=C(C(Kc*Kc)+C(-.5));Lc=z[m+400>>2];Rf=C(C(Lc*Lc)+C(-.5));Mc=z[m+224>>2];Sf=C(C(Mc*Mc)+C(-.5));Nc=z[m+48>>2];Tf=C(C(Nc*Nc)+C(-.5));Ed=z[m+596>>2];eh=C(-Ed);Fd=z[m+592>>2];fh=C(-Fd);Gd=z[m+600>>2];gh=C(-Gd);Hd=z[m+420>>2];hh=C(-Hd);Id=z[m+416>>2];ih=C(-Id);Jd=z[m+424>>2];jh=C(-Jd);Kd=z[m+244>>2];kh=C(-Kd);Ld=z[m+240>>2];lh=C(-Ld);Md=z[m+248>>2];mh=C(-Md);Nd=z[m+68>>2];nh=C(-Nd);Od=z[m+64>>2];oh=C(-Od);Pd=z[m+72>>2];ph=C(-Pd);Qd=z[m+568>>2];qh=C(-Qd);Rd=z[m+564>>2];rh=C(-Rd);Sd=z[m+572>>2];sh=C(-Sd);Td=z[m+392>>2];th=C(-Td);Ud=z[m+388>>2];uh=C(-Ud);Vd=z[m+396>>2];vh=C(-Vd);Wd=z[m+216>>2];wh=C(-Wd);Xd=z[m+212>>2];xh=C(-Xd);Yd=z[m+220>>2];yh=C(-Yd);Zd=z[m+40>>2];zh=C(-Zd);_d=z[m+36>>2];Ah=C(-_d);$d=z[m+44>>2];Bh=C(-$d);ae=R+7424|0;be=R+2816|0;ce=R+7556|0;while(1){b=v[m+328>>2];pb=y[m+152>>2]<=ob>>>0;de=pb?de:v[m+148>>2]+ob|0;a=v[m+504>>2];zb=b>>>0<=ob>>>0;ee=zb?ee:v[m+324>>2]+ob|0;Oc=v[m+680>>2];Eb=a>>>0<=ob>>>0;fe=Eb?fe:v[m+500>>2]+ob|0;Fb=ob>>>0>=Oc>>>0;ge=Fb?ge:v[m+676>>2]+ob|0;i=0;o=0;o=pb?o:v[(R+(de<<2)|0)+7296>>2];i=zb?i:v[(R+(ee<<2)|0)+7296>>2];c=0;k=0;k=Eb?k:v[(R+(fe<<2)|0)+7296>>2];s=8;if(!Fb){s=0;c=v[(R+(ge<<2)|0)+7296>>2]}vg=de<<2;b=v[vg+ae>>2];Gb=v[m+116>>2]+(x[R+B(b,44)>>1]<<6)|0;Pc=z[Gb+60>>2];wg=ee<<2;a=v[wg+ae>>2];Vb=v[m+292>>2]+(x[R+B(a,44)>>1]<<6)|0;Qc=z[Vb+60>>2];xg=fe<<2;q=v[xg+ae>>2];Wb=v[m+468>>2]+(x[R+B(q,44)>>1]<<6)|0;Rc=z[Wb+60>>2];yg=ge<<2;P=v[yg+ae>>2];Zb=v[m+644>>2]+(x[R+B(P,44)>>1]<<6)|0;Sc=z[Zb+60>>2];t[n+7|0]=Hg;t[n+6|0]=Ig;t[n+5|0]=Jg;t[n+4|0]=Kg;t[n+3|0]=Ea;l=c>>>0>>0?k:c;l=i>>>0>l>>>0?i:l;Ga=l>>>0>>0?o:l;zc=Ga<<4;T=J9(n+192|0,0,zc);z[n+124>>2]=ad;z[n+120>>2]=bd;z[n+116>>2]=cd;z[n+112>>2]=dd;z[n+108>>2]=wd;z[n+104>>2]=yd;z[n+100>>2]=Ad;z[n+96>>2]=Cd;z[n+92>>2]=td;z[n+88>>2]=ud;z[n+84>>2]=vd;z[n+80>>2]=pd;z[n+76>>2]=xd;z[n+72>>2]=zd;z[n+68>>2]=Bd;z[n+64>>2]=Dd;t[n+11|0]=c;t[n+10|0]=k;t[n+9|0]=i;t[n+8|0]=o;t[n+1|0]=Ga;v[n+176>>2]=v[m+112>>2];v[n+180>>2]=v[m+288>>2];v[n+184>>2]=v[m+464>>2];c=v[m+640>>2];Ua=C(-Sc);z[n+28>>2]=Ua;Va=C(-Rc);z[n+24>>2]=Va;Wa=C(-Qc);z[n+20>>2]=Wa;Xa=C(-Pc);z[n+16>>2]=Xa;v[n+188>>2]=c;ga=z[Gb>>2];ha=z[Vb>>2];ia=z[Wb>>2];ja=z[Zb>>2];Y=z[Gb+4>>2];Z=z[Vb+4>>2];_=z[Wb+4>>2];ba=z[Zb+4>>2];ca=z[Gb+8>>2];da=z[Vb+8>>2];ea=z[Wb+8>>2];U=z[Zb+8>>2];z[n+172>>2]=U;z[n+168>>2]=ea;z[n+164>>2]=da;z[n+160>>2]=ca;z[n+156>>2]=ba;z[n+152>>2]=_;z[n+148>>2]=Z;z[n+144>>2]=Y;z[n+140>>2]=ja;z[n+136>>2]=ia;z[n+132>>2]=ha;z[n+128>>2]=ga;i=65535;o=65535;t:{if((b|0)==65535){break t}while(1){o=b;b=R+B(b,44)|0;if(w[b+5|0]){break t}o=65535;b=x[b+2>>1];if((b|0)!=65535){continue}break}}u:{if((a|0)==65535){break u}while(1){i=a;a=R+B(a,44)|0;if(w[a+5|0]){break u}i=65535;a=x[a+2>>1];if((a|0)!=65535){continue}break}}b=65535;a=65535;v:{if((q|0)==65535){break v}while(1){a=q;c=R+B(a,44)|0;if(w[c+5|0]){break v}a=65535;q=x[c+2>>1];if((q|0)!=65535){continue}break}}w:{if((P|0)==65535){break w}while(1){b=P;c=R+B(b,44)|0;if(w[c+5|0]){break w}b=65535;P=x[c+2>>1];if((P|0)!=65535){continue}break}}V=0;x:{if(pb){k=o;G=0;break x}lb=65535;Tb=0;G=1;k=o;if((k|0)==65535){k=65535;break x}while(1){c=R+B(k,44)|0;if(w[c+5|0]!=(G|0)){lb=o;break x}G=0;k=x[c+2>>1];if((k|0)!=65535){continue}break}k=65535;lb=o}y:{if(zb){c=i;break y}nb=65535;Ub=0;V=1;c=i;if((c|0)==65535){c=65535;break y}while(1){o=R+B(c,44)|0;if(w[o+5|0]!=(V|0)){nb=i;break y}V=0;c=x[o+2>>1];if((c|0)!=65535){continue}break}c=65535;nb=i}S=0;z:{if(Eb){l=a;X=0;break z}mb=65535;Fa=0;X=1;l=a;if((a|0)==65535){l=65535;break z}while(1){i=R+B(l,44)|0;if(w[i+5|0]!=(X|0)){mb=a;break z}X=0;l=x[i+2>>1];if((l|0)!=65535){continue}break}l=65535;mb=a}A:{if(Fb){r=b;break A}Q=65535;Ya=0;S=1;r=b;if((b|0)==65535){r=65535;break A}while(1){a=R+B(r,44)|0;if(w[a+5|0]!=(S|0)){Q=b;break A}S=0;r=x[a+2>>1];if((r|0)!=65535){continue}break}r=65535;Q=b}a=1;a=pb?a:!((k|0)!=65535&w[(R+B(k,44)|0)+5|0]>G>>>0);ma=C(qc*ba);I=C(tc*ja);W=C(id*ba);F=C(ld*ja);O=C(rc*_);H=C(uc*ia);J=C(jd*_);E=C(md*ia);L=C(sc*Z);A=C(vc*ha);p=C(kd*Z);j=C(nd*ha);M=C(xc*Y);g=C(yc*ga);N=C(rd*Y);f=C(sd*ga);i=pb|zb<<1;b=Eb<<2;B:{if(!((c|0)==65535|zb)){q=0;if(w[(R+B(c,44)|0)+5|0]>V>>>0){break B}}q=2}ma=C(I+ma);I=C(nc*U);W=C(F+W);F=C(fd*U);O=C(H+O);H=C(oc*ea);J=C(E+J);E=C(gd*ea);L=C(A+L);A=C(pc*da);p=C(j+p);j=C(hd*da);M=C(g+M);g=C(wc*ca);N=C(f+N);f=C(qd*ca);b=b|i;C:{if(!((l|0)==65535|Eb)){o=0;if(w[(R+B(l,44)|0)+5|0]>X>>>0){break C}}o=4}I=C(I+ma);F=C(F+W);H=C(H+O);E=C(E+J);A=C(A+L);j=C(j+p);g=C(g+M);f=C(f+N);s=b|s;D:{if(!((r|0)==65535|Fb)){i=0;if(w[(R+B(r,44)|0)+5|0]>S>>>0){break D}}i=8}b=T+zc|0;pa=C(F-I);qa=C(E-H);ra=C(j-A);sa=C(f-g);if((s|0)!=15){Fb=B(Ga,ed)+b|0;T=i|(o|(a|q));Ab=0;while(1){Xb=v[m+644>>2]+(x[R+B(Q,44)>>1]+Ya<<6)|0;fa=z[Xb+16>>2];j=C(fa-hg);ta=z[Xb+20>>2];g=C(ta-gg);f=C(C(ba*j)-C(ja*g));jb=(f>C(0)?f:C(-f))>2];f=C(ka-fg);j=C(C(ja*f)-C(U*j));kb=(j>C(0)?j:C(-j))C(0)?f:C(-f))>2]+(x[R+B(mb,44)>>1]+Fa<<6)|0;la=z[Ga+16>>2];A=C(la-kg);ma=z[Ga+20>>2];j=C(ma-jg);g=C(C(_*A)-C(ia*j));Ia=(g>C(0)?g:C(-g))>2];g=C(W-ig);A=C(C(ia*g)-C(ea*A));Ja=(A>C(0)?A:C(-A))C(0)?g:C(-g))>2]+(x[R+B(nb,44)>>1]+Ub<<6)|0;O=z[P+16>>2];E=C(O-ng);J=z[P+20>>2];A=C(J-mg);j=C(C(Z*E)-C(ha*A));aa=(j>C(0)?j:C(-j))>2];j=C(L-lg);E=C(C(ha*j)-C(da*E));M=(E>C(0)?E:C(-E))C(0)?j:C(-j))>2]+(x[R+B(lb,44)>>1]+Tb<<6)|0;p=z[s+16>>2];F=C(p-qg);H=z[s+20>>2];E=C(H-pg);j=C(C(Y*F)-C(ga*E));I=(j>C(0)?j:C(-j))>2];j=C(A-og);F=C(C(ga*j)-C(ca*F));F=(F>C(0)?F:C(-F))C(0)?j:C(-j))>2])+C(C(ba*z[Xb+36>>2])+C(U*z[Xb+40>>2])));N=C(C(ia*z[Ga+32>>2])+C(C(_*z[Ga+36>>2])+C(ea*z[Ga+40>>2])));I=C(C(ha*z[P+32>>2])+C(C(Z*z[P+36>>2])+C(da*z[P+40>>2])));F=C(C(ga*z[s+32>>2])+C(C(Y*z[s+36>>2])+C(ca*z[s+40>>2])));$=C(fa-Xf);Ha=C(la-_f);Ia=C(O-bg);Ja=C(p-eg);aa=C(ka-Vf);fa=C(W-Yf);ka=C(L-$f);la=C(A-cg);W=C(ta-Wf);O=C(ma-Zf);J=C(J-ag);L=C(H-dg);H=z[Xb+12>>2];E=z[Ga+12>>2];A=z[P+12>>2];j=z[s+12>>2];E:{if(Yb){p=C(C(ba*$)-C(ja*W));za=(p>C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))>2]=$;p=C(C(_*Ha)-C(ia*O));Da=(p>C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))>2]=aa;p=C(C(Z*Ia)-C(ha*J));ac=(p>C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))>2]=fa;p=C(C(Y*Ja)-C(ga*L));Ha=(p>C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))>2]=ta;ka=C(C(Le*za)+C(C(Me*Aa)+C(Ne*Ca)));z[b+124>>2]=ka;la=C(C(Te*Da)+C(C(Ue*_b)+C(Ve*$b)));z[b+120>>2]=la;ma=C(C($e*ac)+C(C(af*jb)+C(bf*kb)));z[b+116>>2]=ma;W=C(C(ne*Ha)+C(C(oe*Ia)+C(pe*Ja)));z[b+112>>2]=W;O=C(C(Oe*za)+C(C(Pe*Aa)+C(he*Ca)));z[b+108>>2]=O;J=C(C(We*Da)+C(C(Xe*_b)+C(ie*$b)));z[b+104>>2]=J;L=C(C(cf*ac)+C(C(df*jb)+C(je*kb)));z[b+100>>2]=L;p=C(C(qe*Ha)+C(C(re*Ia)+C(Jf*Ja)));z[b+96>>2]=p;f=C(f+C(td+C(ad*C(C(O*O)+C(C(ka*ka)+C($*$))))));g=C(g+C(ud+C(bd*C(C(J*J)+C(C(la*la)+C(aa*aa))))));na=C(na+C(vd+C(cd*C(C(L*L)+C(C(ma*ma)+C(fa*fa))))));oa=C(oa+C(pd+C(dd*C(C(p*p)+C(C(W*W)+C(ta*ta))))));ua=C(ua-C(C(gc*za)+C(C(hc*Aa)+C(bc*Ca))));va=C(va-C(C(ic*Da)+C(C(jc*_b)+C(cc*$b))));wa=C(wa-C(C(kc*ac)+C(C(lc*jb)+C(dc*kb))));ya=C(ya-C(C(ec*Ha)+C(C(fc*Ia)+C(mc*Ja))));break E}if(!Fc){break E}ua=C(ua-C(C(gc*C(C(ba*$)-C(ja*W)))+C(C(hc*C(C(ja*aa)-C(U*$)))+C(bc*C(C(U*W)-C(ba*aa))))));va=C(va-C(C(ic*C(C(_*Ha)-C(ia*O)))+C(C(jc*C(C(ia*fa)-C(ea*Ha)))+C(cc*C(C(ea*O)-C(_*fa))))));wa=C(wa-C(C(kc*C(C(Z*Ia)-C(ha*J)))+C(C(lc*C(C(ha*ka)-C(da*Ia)))+C(dc*C(C(da*J)-C(Z*ka))))));ya=C(ya-C(C(ec*C(C(Y*Ja)-C(ga*L)))+C(C(fc*C(C(ga*la)-C(ca*Ja)))+C(mc*C(C(ca*L)-C(Y*la))))))}z[b+32>>2]=wb;z[b+16>>2]=vb;z[b+12>>2]=Ac;z[b+8>>2]=Dc;z[b+4>>2]=rb;z[b>>2]=ub;z[b+44>>2]=Cc;z[b+40>>2]=qb;z[b+36>>2]=tb;z[b+28>>2]=Bc;z[b+24>>2]=Ec;z[b+20>>2]=sb;O=f>C(0)?C(C(1)/f):C(0);z[b+60>>2]=O;J=g>C(0)?C(C(1)/g):C(0);z[b+56>>2]=J;L=na>C(0)?C(C(1)/na):C(0);z[b+52>>2]=L;p=oa>C(0)?C(C(1)/oa):C(0);z[b+48>>2]=p;g=C(H-Lg);q=Sc>C(0)&e>ua&C(-ua)>C(g*d);f=C(od*g);f=C(O*C(-(f>2]=C((q?C(C(ua*Ua)*O):C(0))+H)-C(C(ua-M)*O);g=C(E-Mg);o=Rc>C(0)&e>va&C(-va)>C(g*d);f=C(od*g);f=C(J*C(-(f>2]=C((o?C(C(va*Va)*J):C(0))+E)-C(C(va-N)*J);g=C(A-Ng);i=Qc>C(0)&e>wa&C(-wa)>C(g*d);f=C(od*g);f=C(L*C(-(f>2]=C((i?C(C(wa*Wa)*L):C(0))+A)-C(C(wa-I)*L);g=C(j-Og);a=Pc>C(0)&e>ya&C(-ya)>C(g*d);f=C(od*g);f=C(p*C(-(f>2]=C((a?C(C(ya*Xa)*p):C(0))+f)-C(C(ya-F)*p);z[b+76>>2]=q?H:H>2]=o?E:E>2]=i?A:A>2]=a?f:f>2];g=z[P+28>>2];f=z[Ga+28>>2];a=(Ab<<4)+Fb|0;z[a+12>>2]=z[Xb+28>>2];z[a+8>>2]=f;z[a+4>>2]=g;z[a>>2]=j}F:{if(T&1){s=k;P=G;G=T;break F}P=G+1|0;s=65535;i=0;a=k;G:{if((a|0)==65535){break G}while(1){o=R+B(a,44)|0;i=w[o+5|0];if((i|0)==(P|0)){P=0;i=0;a=x[o+2>>1];if((a|0)!=65535){continue}break G}break}if((a|0)==65535){i=0;break G}i=i>>>0>P>>>0;s=a}Tb=G;lb=k;G=i^1|T}H:{if(T&2){a=c;i=V;break H}i=V+1|0;k=2;a=c;I:{if((c|0)==65535){a=65535;break I}J:{while(1){q=R+B(a,44)|0;o=w[q+5|0];if((o|0)!=(i|0)){break J}i=0;a=x[q+2>>1];if((a|0)!=65535){continue}break}a=65535;break I}if((a|0)==65535){a=65535;break I}k=i>>>0>>0?0:2}G=k|G;Ub=V;nb=c}K:{if(T&4){q=l;o=X;break K}o=X+1|0;V=4;q=l;L:{if((l|0)==65535){q=65535;break L}M:{while(1){k=R+B(q,44)|0;c=w[k+5|0];if((c|0)!=(o|0)){break M}o=0;q=x[k+2>>1];if((q|0)!=65535){continue}break}q=65535;break L}if((q|0)==65535){q=65535;break L}V=c>>>0>o>>>0?0:4}G=G|V;Fa=X;mb=l}b=b+ed|0;Ab=Ab+1|0;Ga=(T|0)!=15;if(!(T&8)){k=S+1|0;X=8;c=r;N:{if((c|0)==65535){c=65535;break N}O:{while(1){Q=R+B(c,44)|0;l=w[Q+5|0];if((l|0)!=(k|0)){break O}k=0;c=x[Q+2>>1];if((c|0)!=65535){continue}break}c=65535;break N}if((c|0)==65535){c=65535;break N}X=k>>>0>>0?0:8}Ya=S;Q=r;S=k;r=c;G=G|X}T=G;G=P;k=s;V=i;c=a;X=o;l=q;if(Ga){continue}break}}Fb=B(ge,104)+be|0;s=x[Fb+2>>1];Ga=B(fe,104)+be|0;q=x[Ga+2>>1];T=B(ee,104)+be|0;G=x[T+2>>1];S=B(de,104)+be|0;k=x[S+2>>1];l=0;l=pb?l:t[Gb+48|0]&1?0:k;r=0;r=zb?r:t[Vb+48|0]&1?0:G;Ab=0;M=z[Gb+44>>2];N=z[Vb+44>>2];I=z[Wb+44>>2];F=z[Zb+44>>2];H=z[Gb+56>>2];i=w[Gb+48|0];E=z[Vb+56>>2];c=w[Vb+48|0];g=z[Wb+56>>2];a=w[Wb+48|0];f=z[Zb+56>>2];o=w[Zb+48|0];b=(Ea?zc:0)+b|0;Ab=Eb?Ab:t[Wb+48|0]&1?0:q;t[n+14|0]=Ab<<1;t[n+13|0]=r<<1;t[n+12|0]=l<<1;t[n|0]=$g;A=(o&4)>>>2|0?(s|0)==2?C(.5):C(1):C(1);z[n+60>>2]=f*A;j=(a&4)>>>2|0?(q|0)==2?C(.5):C(1):C(1);z[n+56>>2]=g*j;g=(c&4)>>>2|0?(G|0)==2?C(.5):C(1):C(1);z[n+52>>2]=E*g;f=(i&4)>>>2|0?(k|0)==2?C(.5):C(1):C(1);z[n+48>>2]=H*f;z[n+44>>2]=F*A;z[n+40>>2]=I*j;z[n+36>>2]=N*g;z[n+32>>2]=M*f;pb=ob>>>0>>0?o&1?0:s:0;t[n+15|0]=pb<<1;a=pb>>>0>>0?Ab:pb;a=a>>>0>>0?r:a;zb=a>>>0>>0?l:a;t[n+2|0]=zb<<1;P:{if(!zb){n=b;break P}k=v[m+664>>2];o=v[m+488>>2];i=v[m+312>>2];c=v[m+136>>2];a=v[yb+12>>2];v[b+8>>2]=v[yb+8>>2];v[b+12>>2]=a;a=v[yb+4>>2];v[b>>2]=v[yb>>2];v[b+4>>2]=a;v[b+16>>2]=c+B(zg,104);v[b+20>>2]=i+B(Ag,104);v[b+24>>2]=o+B(Bg,104);v[b+28>>2]=k+B(Cg,104);ua=C(1);f=C(_g-C(ga*sa));j=C(Zg-C(Y*sa));g=C(Yg-C(ca*sa));c=C(C(f*f)+C(C(j*j)+C(g*g)))>C(9999999747378752e-20);a=(ga>C(0)?ga:C(-ga))>2]=La;f=C(Xg-C(ha*ra));j=C(Ug-C(Z*ra));g=C(Rg-C(da*ra));c=C(C(f*f)+C(C(j*j)+C(g*g)))>C(9999999747378752e-20);a=(ha>C(0)?ha:C(-ha))>2]=Ma;f=C(Wg-C(ia*qa));j=C(Tg-C(_*qa));g=C(Qg-C(ea*qa));c=C(C(f*f)+C(C(j*j)+C(g*g)))>C(9999999747378752e-20);a=(ia>C(0)?ia:C(-ia))>2]=Na;g=C(Vg-C(ja*pa));j=C(Sg-C(ba*pa));f=C(Pg-C(U*pa));c=C(C(g*g)+C(C(j*j)+C(f*f)))>C(9999999747378752e-20);a=(ja>C(0)?ja:C(-ja))>2]=Oa;Pa=C(L*p);z[b+64>>2]=Pa;Qa=C(N*I);z[b+68>>2]=Qa;Ra=C(H*E);z[b+72>>2]=Ra;Sa=C(f*j);z[b+76>>2]=Sa;f=C(J*p);z[b+96>>2]=f;g=C(M*I);z[b+100>>2]=g;na=C(F*E);z[b+104>>2]=na;oa=C(A*j);z[b+108>>2]=oa;Za=C(C(ja*Sa)-C(ba*Oa));z[b+124>>2]=Za;_a=C(C(ia*Ra)-C(_*Na));z[b+120>>2]=_a;$a=C(C(ha*Qa)-C(Z*Ma));z[b+116>>2]=$a;ab=C(C(ga*Pa)-C(Y*La));z[b+112>>2]=ab;bb=C(C(U*Oa)-C(ja*oa));z[b+92>>2]=bb;cb=C(C(ea*Na)-C(ia*na));z[b+88>>2]=cb;db=C(C(da*Ma)-C(ha*g));z[b+84>>2]=db;eb=C(C(ca*La)-C(ga*f));z[b+80>>2]=eb;fb=C(C(ba*oa)-C(U*Sa));z[b+60>>2]=fb;gb=C(C(_*na)-C(ea*Ra));z[b+56>>2]=gb;hb=C(C(Z*g)-C(da*Qa));z[b+52>>2]=hb;ib=C(C(Y*f)-C(ca*Pa));z[b+48>>2]=ib;a=0;c=b+128|0;b=w[n+2|0]<<4;n=J9(c,0,b)+b|0;k=Gb+32|0;P=0;i=0;o=0;c=0;va=C(1);wa=C(1);ya=C(1);while(1){V=a>>>0>>0;P=V?a:P;b=Fb+B(P,12)|0;U=z[b+72>>2];pa=z[b- -64>>2];qa=z[b+68>>2];ka=C(C(Gd*U)+C(C(Fd*pa)+C(Ed*qa)));M=C(Gd*ka);ra=z[b+48>>2];sa=z[b+40>>2];qb=z[b+44>>2];la=C(C(Sd*ra)+C(C(Rd*sa)+C(Qd*qb)));j=C(Sd*la);X=a>>>0>>0;i=X?a:i;b=Ga+B(i,12)|0;za=z[b+72>>2];Aa=z[b- -64>>2];Ca=z[b+68>>2];ma=C(C(Jd*za)+C(C(Id*Aa)+C(Hd*Ca)));N=C(Jd*ma);Da=z[b+48>>2];rb=z[b+40>>2];sb=z[b+44>>2];W=C(C(Vd*Da)+C(C(Ud*rb)+C(Td*sb)));I=C(Vd*W);s=a>>>0>>0;o=s?a:o;b=T+B(o,12)|0;tb=z[b+72>>2];ub=z[b- -64>>2];vb=z[b+68>>2];O=C(C(Md*tb)+C(C(Ld*ub)+C(Kd*vb)));F=C(Md*O);wb=z[b+48>>2];$=z[b+40>>2];aa=z[b+44>>2];J=C(C(Yd*wb)+C(C(Xd*$)+C(Wd*aa)));H=C(Yd*J);q=a>>>0>>0;c=q?a:c;b=S+B(c,12)|0;Ua=z[b+72>>2];Va=z[b- -64>>2];Wa=z[b+68>>2];L=C(C(Pd*Ua)+C(C(Od*Va)+C(Nd*Wa)));E=C(Pd*L);Xa=z[b+48>>2];fa=z[b+40>>2];ta=z[b+44>>2];p=C(C($d*Xa)+C(C(_d*fa)+C(Zd*ta)));A=C($d*p);Eb=x[(ce+yg|0)+(P<<1)>>1];Oc=x[(ce+xg|0)+(i<<1)>>1];zc=x[(ce+wg|0)+(o<<1)>>1];b=k;G=x[(ce+vg|0)+(c<<1)>>1];if((G|0)!=65535){b=(v[m+116>>2]+(G<<6)|0)+32|0}_b=z[b+8>>2];$b=z[b+4>>2];ac=z[b>>2];b=k;ua=V?ua:C(0);va=X?va:C(0);wa=s?wa:C(0);ya=q?ya:C(0);b=(zc|0)!=65535?(v[m+292>>2]+(zc<<6)|0)+32|0:b;jb=z[b+8>>2];kb=z[b+4>>2];Ha=z[b>>2];b=k;oa=C(oa*ua);na=C(na*va);g=C(g*wa);f=C(f*ya);Sa=C(Sa*ua);Ra=C(Ra*va);Qa=C(Qa*wa);Pa=C(Pa*ya);Oa=C(Oa*ua);Na=C(Na*va);Ma=C(Ma*wa);La=C(La*ya);b=(Oc|0)!=65535?(v[m+468>>2]+(Oc<<6)|0)+32|0:b;Ia=z[b+8>>2];Ja=z[b+4>>2];Pc=z[b>>2];b=k;j=C(C(C(Kc*C(C(Rd*qb)+C(sa*qh)))+C(Qf*ra))+j);Tc=C(j+j);j=C(C(C(Gc*C(C(Fd*qa)+C(pa*eh)))+C(Mf*U))+M);Hb=C(j+j);Qc=C(C(fg+Tc)-C(Vf+Hb));j=C(C(C(Lc*C(C(Ud*sb)+C(rb*th)))+C(Rf*Da))+I);Uc=C(j+j);j=C(C(C(Hc*C(C(Id*Ca)+C(Aa*hh)))+C(Nf*za))+N);Ib=C(j+j);Rc=C(C(ig+Uc)-C(Yf+Ib));j=C(C(C(Mc*C(C(Xd*aa)+C($*wh)))+C(Sf*wb))+H);Vc=C(j+j);j=C(C(C(Ic*C(C(Ld*vb)+C(ub*kh)))+C(Of*tb))+F);Jb=C(j+j);Sc=C(C(lg+Vc)-C($f+Jb));j=C(C(C(Nc*C(C(_d*ta)+C(fa*zh)))+C(Tf*Xa))+A);Wc=C(j+j);j=C(C(C(Jc*C(C(Od*Wa)+C(Va*nh)))+C(Pf*Ua))+E);Kb=C(j+j);Ac=C(C(og+Wc)-C(cg+Kb));j=C(C(Qd*la)+C(C(Qf*qb)+C(Kc*C(C(Sd*sa)+C(ra*rh)))));Xc=C(j+j);j=C(C(Ed*ka)+C(C(Mf*qa)+C(Gc*C(C(Gd*pa)+C(U*fh)))));Lb=C(j+j);Bc=C(C(gg+Xc)-C(Wf+Lb));j=C(C(Td*W)+C(C(Rf*sb)+C(Lc*C(C(Vd*rb)+C(Da*uh)))));Yc=C(j+j);j=C(C(Hd*ma)+C(C(Nf*Ca)+C(Hc*C(C(Jd*Aa)+C(za*ih)))));Mb=C(j+j);Cc=C(C(jg+Yc)-C(Zf+Mb));j=C(C(Wd*J)+C(C(Sf*aa)+C(Mc*C(C(Yd*$)+C(wb*xh)))));Zc=C(j+j);j=C(C(Kd*O)+C(C(Of*vb)+C(Ic*C(C(Md*ub)+C(tb*lh)))));Nb=C(j+j);Dc=C(C(mg+Zc)-C(ag+Nb));j=C(C(Zd*p)+C(C(Tf*ta)+C(Nc*C(C($d*fa)+C(Xa*Ah)))));_c=C(j+j);j=C(C(Nd*L)+C(C(Pf*Wa)+C(Jc*C(C(Pd*Va)+C(Ua*oh)))));Ob=C(j+j);Ec=C(C(pg+_c)-C(dg+Ob));j=C(C(Rd*la)+C(C(Qf*sa)+C(Kc*C(C(Qd*ra)+C(qb*sh)))));ga=C(j+j);j=C(C(Fd*ka)+C(C(Mf*pa)+C(Gc*C(C(Ed*U)+C(qa*gh)))));Pb=C(j+j);qb=C(C(hg+ga)-C(Xf+Pb));j=C(C(Ud*W)+C(C(Rf*rb)+C(Lc*C(C(Td*Da)+C(sb*vh)))));ha=C(j+j);j=C(C(Id*ma)+C(C(Nf*Aa)+C(Hc*C(C(Hd*za)+C(Ca*jh)))));Qb=C(j+j);rb=C(C(kg+ha)-C(_f+Qb));j=C(C(Xd*J)+C(C(Sf*$)+C(Mc*C(C(Wd*wb)+C(aa*yh)))));ia=C(j+j);j=C(C(Ld*O)+C(C(Of*ub)+C(Ic*C(C(Kd*tb)+C(vb*mh)))));Rb=C(j+j);sb=C(C(ng+ia)-C(bg+Rb));j=C(C(_d*p)+C(C(Tf*fa)+C(Nc*C(C(Zd*Xa)+C(ta*Bh)))));ja=C(j+j);j=C(C(Od*L)+C(C(Pf*Va)+C(Jc*C(C(Nd*Ua)+C(Wa*ph)))));Sb=C(j+j);tb=C(C(qg+ja)-C(eg+Sb));Za=C(Za*ua);_a=C(_a*va);$a=C($a*wa);ab=C(ab*ya);bb=C(bb*ua);cb=C(cb*va);db=C(db*wa);eb=C(eb*ya);fb=C(fb*ua);gb=C(gb*va);hb=C(hb*wa);ib=C(ib*ya);j=C(C(Sa*ga)-C(Oa*Xc));O=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]+(Eb<<6)|0)+32|0:b;ub=z[b+8>>2];vb=z[b+4>>2];wb=z[b>>2];Q:{if(Yb){j=C(C(Sa*Pb)-C(Oa*Lb));ca=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=O;j=C(C(Ra*Qb)-C(Na*Mb));U=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=J;j=C(C(Qa*Rb)-C(Ma*Nb));ra=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=L;j=C(C(Pa*Sb)-C(La*Ob));Aa=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=p;M=C(C(Le*ca)+C(C(Me*da)+C(Ne*ea)));z[n+124>>2]=M;N=C(C(Te*U)+C(C(Ue*pa)+C(Ve*qa)));z[n+120>>2]=N;I=C(C($e*ra)+C(C(af*sa)+C(bf*za)));z[n+116>>2]=I;F=C(C(ne*Aa)+C(C(oe*Ca)+C(pe*Da)));z[n+112>>2]=F;H=C(C(Oe*ca)+C(C(Pe*da)+C(he*ea)));z[n+108>>2]=H;E=C(C(We*U)+C(C(Xe*pa)+C(ie*qa)));z[n+104>>2]=E;A=C(C(cf*ra)+C(C(df*sa)+C(je*za)));z[n+100>>2]=A;j=C(C(qe*Aa)+C(C(re*Ca)+C(Jf*Da)));z[n+96>>2]=j;Y=C(Y+C(td+C(ad*C(C(O*O)+C(C(M*M)+C(H*H))))));Z=C(Z+C(ud+C(bd*C(C(J*J)+C(C(N*N)+C(E*E))))));_=C(_+C(vd+C(cd*C(C(L*L)+C(C(I*I)+C(A*A))))));ba=C(ba+C(pd+C(dd*C(C(p*p)+C(C(F*F)+C(j*j))))));xb=C(xb-C(C(gc*ca)+C(C(hc*da)+C(C(C(nc*oa)+C(C(qc*Sa)+C(tc*Oa)))+C(bc*ea)))));Bb=C(Bb-C(C(ic*U)+C(C(jc*pa)+C(C(C(oc*na)+C(C(rc*Ra)+C(uc*Na)))+C(cc*qa)))));Cb=C(Cb-C(C(kc*ra)+C(C(lc*sa)+C(C(C(pc*g)+C(C(sc*Qa)+C(vc*Ma)))+C(dc*za)))));Db=C(Db-C(C(ec*Aa)+C(C(fc*Ca)+C(C(C(wc*f)+C(C(xc*Pa)+C(yc*La)))+C(mc*Da)))));break Q}if(!Fc){break Q}xb=C(xb-C(C(gc*C(C(Sa*Pb)-C(Oa*Lb)))+C(C(hc*C(C(Oa*Hb)-C(oa*Pb)))+C(C(C(nc*oa)+C(C(qc*Sa)+C(tc*Oa)))+C(bc*C(C(oa*Lb)-C(Sa*Hb)))))));Bb=C(Bb-C(C(ic*C(C(Ra*Qb)-C(Na*Mb)))+C(C(jc*C(C(Na*Ib)-C(na*Qb)))+C(C(C(oc*na)+C(C(rc*Ra)+C(uc*Na)))+C(cc*C(C(na*Mb)-C(Ra*Ib)))))));Cb=C(Cb-C(C(kc*C(C(Qa*Rb)-C(Ma*Nb)))+C(C(lc*C(C(Ma*Jb)-C(g*Rb)))+C(C(C(pc*g)+C(C(sc*Qa)+C(vc*Ma)))+C(dc*C(C(g*Nb)-C(Qa*Jb)))))));Db=C(Db-C(C(ec*C(C(Pa*Sb)-C(La*Ob)))+C(C(fc*C(C(La*Kb)-C(f*Sb)))+C(C(C(wc*f)+C(C(xc*Pa)+C(yc*La)))+C(mc*C(C(f*Ob)-C(Pa*Kb)))))))}b=n+ed|0;z[n+32>>2]=la;z[n+16>>2]=ma;z[n+12>>2]=Ua;z[n+8>>2]=Xa;z[n+4>>2]=ka;z[n>>2]=W;z[n+44>>2]=$;z[n+40>>2]=Va;z[n+36>>2]=fa;z[n+28>>2]=aa;z[n+24>>2]=Wa;z[n+20>>2]=ta;M=C(ua*(Y>C(0)?C(C(.800000011920929)/Y):C(0)));z[n+76>>2]=M;N=C(va*(Z>C(0)?C(C(.800000011920929)/Z):C(0)));z[n+72>>2]=N;I=C(wa*(_>C(0)?C(C(.800000011920929)/_):C(0)));z[n+68>>2]=I;F=C(ya*(ba>C(0)?C(C(.800000011920929)/ba):C(0)));z[n+64>>2]=F;H=C(C(C(oa*ub)+C(C(Oa*wb)+C(Sa*vb)))-xb);z[n+92>>2]=M*C(-H);E=C(C(C(na*Ia)+C(C(Na*Pc)+C(Ra*Ja)))-Bb);z[n+88>>2]=N*C(-E);A=C(C(C(g*jb)+C(C(Ma*Ha)+C(Qa*kb)))-Cb);z[n+84>>2]=I*C(-A);j=C(C(C(f*_b)+C(C(La*ac)+C(Pa*$b)))-Db);z[n+80>>2]=F*C(-j);z[n+60>>2]=C(C(C(C(oa*Qc)+C(C(Oa*qb)+C(Sa*Bc)))*d)-H)*M;z[n+56>>2]=C(C(C(C(na*Rc)+C(C(Na*rb)+C(Ra*Cc)))*d)-E)*N;z[n+52>>2]=C(C(C(C(g*Sc)+C(C(Ma*sb)+C(Qa*Dc)))*d)-A)*I;z[n+48>>2]=C(C(C(C(f*Ac)+C(C(La*tb)+C(Pa*Ec)))*d)-j)*F;j=C(C(bb*ga)-C(fb*Xc));O=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=O;j=C(C(cb*Qb)-C(gb*Mb));U=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=J;j=C(C(db*Rb)-C(hb*Nb));ra=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=L;j=C(C(eb*Sb)-C(ib*Ob));Aa=(j>C(0)?j:C(-j))C(0)?j:C(-j))C(0)?j:C(-j))>2]=p;M=C(C(Le*ca)+C(C(Me*da)+C(Ne*ea)));z[b+124>>2]=M;N=C(C(Te*U)+C(C(Ue*pa)+C(Ve*qa)));z[b+120>>2]=N;I=C(C($e*ra)+C(C(af*sa)+C(bf*za)));z[b+116>>2]=I;F=C(C(ne*Aa)+C(C(oe*Ca)+C(pe*Da)));z[b+112>>2]=F;H=C(C(Oe*ca)+C(C(Pe*da)+C(he*ea)));z[b+108>>2]=H;E=C(C(We*U)+C(C(Xe*pa)+C(ie*qa)));z[b+104>>2]=E;A=C(C(cf*ra)+C(C(df*sa)+C(je*za)));z[b+100>>2]=A;j=C(C(qe*Aa)+C(C(re*Ca)+C(Jf*Da)));z[b+96>>2]=j;Bb=C(Bb+C(td+C(ad*C(C(O*O)+C(C(M*M)+C(H*H))))));Cb=C(Cb+C(ud+C(bd*C(C(J*J)+C(C(N*N)+C(E*E))))));Db=C(Db+C(vd+C(cd*C(C(L*L)+C(C(I*I)+C(A*A))))));ba=C(ba+C(pd+C(dd*C(C(p*p)+C(C(F*F)+C(j*j))))));xb=C(xb-C(C(gc*ca)+C(C(hc*da)+C(C(C(nc*Za)+C(C(qc*bb)+C(tc*fb)))+C(bc*ea)))));Y=C(Y-C(C(ic*U)+C(C(jc*pa)+C(C(C(oc*_a)+C(C(rc*cb)+C(uc*gb)))+C(cc*qa)))));Z=C(Z-C(C(kc*ra)+C(C(lc*sa)+C(C(C(pc*$a)+C(C(sc*db)+C(vc*hb)))+C(dc*za)))));_=C(_-C(C(ec*Aa)+C(C(fc*Ca)+C(C(C(wc*ab)+C(C(xc*eb)+C(yc*ib)))+C(mc*Da)))));break R}if(!Fc){break R}xb=C(xb-C(C(gc*C(C(bb*Pb)-C(fb*Lb)))+C(C(hc*C(C(fb*Hb)-C(Za*Pb)))+C(C(C(nc*Za)+C(C(qc*bb)+C(tc*fb)))+C(bc*C(C(Za*Lb)-C(bb*Hb)))))));Y=C(Y-C(C(ic*C(C(cb*Qb)-C(gb*Mb)))+C(C(jc*C(C(gb*Ib)-C(_a*Qb)))+C(C(C(oc*_a)+C(C(rc*cb)+C(uc*gb)))+C(cc*C(C(_a*Mb)-C(cb*Ib)))))));Z=C(Z-C(C(kc*C(C(db*Rb)-C(hb*Nb)))+C(C(lc*C(C(hb*Jb)-C($a*Rb)))+C(C(C(pc*$a)+C(C(sc*db)+C(vc*hb)))+C(dc*C(C($a*Nb)-C(db*Jb)))))));_=C(_-C(C(ec*C(C(eb*Sb)-C(ib*Ob)))+C(C(fc*C(C(ib*Kb)-C(ab*Sb)))+C(C(C(wc*ab)+C(C(xc*eb)+C(yc*ib)))+C(mc*C(C(ab*Ob)-C(eb*Kb)))))))}n=b+ed|0;z[b+32>>2]=la;z[b+16>>2]=ma;z[b+12>>2]=Ua;z[b+8>>2]=Xa;z[b+4>>2]=ka;z[b>>2]=W;z[b+44>>2]=$;z[b+40>>2]=Va;z[b+36>>2]=fa;z[b+28>>2]=aa;z[b+24>>2]=Wa;z[b+20>>2]=ta;M=C(ua*(Bb>C(0)?C(C(.800000011920929)/Bb):C(0)));z[b+76>>2]=M;N=C(va*(Cb>C(0)?C(C(.800000011920929)/Cb):C(0)));z[b+72>>2]=N;I=C(wa*(Db>C(0)?C(C(.800000011920929)/Db):C(0)));z[b+68>>2]=I;F=C(ya*(ba>C(0)?C(C(.800000011920929)/ba):C(0)));z[b+64>>2]=F;H=C(C(C(Za*ub)+C(C(fb*wb)+C(bb*vb)))-xb);z[b+92>>2]=M*C(-H);E=C(C(C(_a*Ia)+C(C(gb*Pc)+C(cb*Ja)))-Y);z[b+88>>2]=N*C(-E);A=C(C(C($a*jb)+C(C(hb*Ha)+C(db*kb)))-Z);z[b+84>>2]=I*C(-A);j=C(C(C(ab*_b)+C(C(ib*ac)+C(eb*$b)))-_);z[b+80>>2]=F*C(-j);z[b+60>>2]=C(C(C(C(Za*Qc)+C(C(fb*qb)+C(bb*Bc)))*d)-H)*M;z[b+56>>2]=C(C(C(C(_a*Rc)+C(C(gb*rb)+C(cb*Cc)))*d)-E)*N;z[b+52>>2]=C(C(C(C($a*Sc)+C(C(hb*sb)+C(db*Dc)))*d)-A)*I;z[b+48>>2]=C(C(C(C(ab*Ac)+C(C(ib*tb)+C(eb*Ec)))*d)-j)*F;a=a+1|0;if((zb|0)!=(a|0)){continue}break}Cg=Cg+1|0;Bg=Bg+1|0;Ag=Ag+1|0;zg=zg+1|0}ob=ob+1|0;if((Uf|0)!=(ob|0)){continue}break}}xa=yb+16|0;v[Ta+$c>>2]=0;r=2}xa=D+160|0}xa=Ka+32|0;return r|0}function _2(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,A=0,D=0,E=0,F=0,G=0,H=C(0),I=C(0),J=0,L=0,M=0,N=C(0),O=C(0),P=0,Q=0,R=C(0),S=0,T=0,U=C(0),V=0,W=0,X=0,Y=C(0),Z=C(0),_=0,$=0,aa=0,ba=0,ca=C(0),da=C(0),ea=C(0),fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=C(0),qa=C(0),ra=0,sa=0,ta=0,ua=0,va=C(0),wa=0,ya=0,za=0,Ca=0,Da=C(0),Ea=C(0),Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0;j=xa-160|0;wa=j;xa=j;q=v[b+8>>2];k=j-(B(q,12)+15&-16)|0;xa=k;a:{if(!q){break a}l=v[b>>2];m=q-1|0;s=v[b+4>>2];r=q&3;b:{if(!r){n=k;break b}n=k;while(1){j=w[s+4|0]|w[s+5|0]<<8|(w[s+6|0]<<16|w[s+7|0]<<24);o=w[s|0]|w[s+1|0]<<8|(w[s+2|0]<<16|w[s+3|0]<<24);t[n|0]=o;t[n+1|0]=o>>>8;t[n+2|0]=o>>>16;t[n+3|0]=o>>>24;t[n+4|0]=j;t[n+5|0]=j>>>8;t[n+6|0]=j>>>16;t[n+7|0]=j>>>24;j=w[s+8|0]|w[s+9|0]<<8|(w[s+10|0]<<16|w[s+11|0]<<24);t[n+8|0]=j;t[n+9|0]=j>>>8;t[n+10|0]=j>>>16;t[n+11|0]=j>>>24;s=l+s|0;n=n+12|0;q=q-1|0;L=L+1|0;if((r|0)!=(L|0)){continue}break}}if(m>>>0<3){break a}while(1){j=w[s+4|0]|w[s+5|0]<<8|(w[s+6|0]<<16|w[s+7|0]<<24);o=w[s|0]|w[s+1|0]<<8|(w[s+2|0]<<16|w[s+3|0]<<24);t[n|0]=o;t[n+1|0]=o>>>8;t[n+2|0]=o>>>16;t[n+3|0]=o>>>24;t[n+4|0]=j;t[n+5|0]=j>>>8;t[n+6|0]=j>>>16;t[n+7|0]=j>>>24;j=w[s+8|0]|w[s+9|0]<<8|(w[s+10|0]<<16|w[s+11|0]<<24);t[n+8|0]=j;t[n+9|0]=j>>>8;t[n+10|0]=j>>>16;t[n+11|0]=j>>>24;j=l+s|0;o=w[j+8|0]|w[j+9|0]<<8|(w[j+10|0]<<16|w[j+11|0]<<24);t[n+20|0]=o;t[n+21|0]=o>>>8;t[n+22|0]=o>>>16;t[n+23|0]=o>>>24;o=w[j+4|0]|w[j+5|0]<<8|(w[j+6|0]<<16|w[j+7|0]<<24);m=w[j|0]|w[j+1|0]<<8|(w[j+2|0]<<16|w[j+3|0]<<24);t[n+12|0]=m;t[n+13|0]=m>>>8;t[n+14|0]=m>>>16;t[n+15|0]=m>>>24;t[n+16|0]=o;t[n+17|0]=o>>>8;t[n+18|0]=o>>>16;t[n+19|0]=o>>>24;j=j+l|0;o=w[j+8|0]|w[j+9|0]<<8|(w[j+10|0]<<16|w[j+11|0]<<24);t[n+32|0]=o;t[n+33|0]=o>>>8;t[n+34|0]=o>>>16;t[n+35|0]=o>>>24;o=w[j+4|0]|w[j+5|0]<<8|(w[j+6|0]<<16|w[j+7|0]<<24);m=w[j|0]|w[j+1|0]<<8|(w[j+2|0]<<16|w[j+3|0]<<24);t[n+24|0]=m;t[n+25|0]=m>>>8;t[n+26|0]=m>>>16;t[n+27|0]=m>>>24;t[n+28|0]=o;t[n+29|0]=o>>>8;t[n+30|0]=o>>>16;t[n+31|0]=o>>>24;j=j+l|0;o=w[j+4|0]|w[j+5|0]<<8|(w[j+6|0]<<16|w[j+7|0]<<24);m=w[j|0]|w[j+1|0]<<8|(w[j+2|0]<<16|w[j+3|0]<<24);t[n+36|0]=m;t[n+37|0]=m>>>8;t[n+38|0]=m>>>16;t[n+39|0]=m>>>24;t[n+40|0]=o;t[n+41|0]=o>>>8;t[n+42|0]=o>>>16;t[n+43|0]=o>>>24;o=w[j+8|0]|w[j+9|0]<<8|(w[j+10|0]<<16|w[j+11|0]<<24);t[n+44|0]=o;t[n+45|0]=o>>>8;t[n+46|0]=o>>>16;t[n+47|0]=o>>>24;n=n+48|0;s=j+l|0;q=q-4|0;if(q){continue}break}}q=v[b+20>>2];j=k-(B(q,12)+15&-16)|0;xa=j;c:{if(w[b+24|0]&2){n=B(q,3);if((n|0)<=0){break c}q=j+(n<<2)|0;n=v[b+16>>2];l=v[b+12>>2];s=j;while(1){v[s>>2]=x[n>>1];v[s+4>>2]=x[n+2>>1];v[s+8>>2]=x[n+4>>1];n=n+l|0;s=s+12|0;if(q>>>0>s>>>0){continue}break}break c}if(!q){break c}o=v[b+12>>2];r=q-1|0;s=v[b+16>>2];A=q&3;d:{if(!A){n=j;break d}L=0;n=j;while(1){l=w[s+4|0]|w[s+5|0]<<8|(w[s+6|0]<<16|w[s+7|0]<<24);m=w[s|0]|w[s+1|0]<<8|(w[s+2|0]<<16|w[s+3|0]<<24);t[n|0]=m;t[n+1|0]=m>>>8;t[n+2|0]=m>>>16;t[n+3|0]=m>>>24;t[n+4|0]=l;t[n+5|0]=l>>>8;t[n+6|0]=l>>>16;t[n+7|0]=l>>>24;l=w[s+8|0]|w[s+9|0]<<8|(w[s+10|0]<<16|w[s+11|0]<<24);t[n+8|0]=l;t[n+9|0]=l>>>8;t[n+10|0]=l>>>16;t[n+11|0]=l>>>24;s=o+s|0;n=n+12|0;q=q-1|0;L=L+1|0;if((A|0)!=(L|0)){continue}break}}if(r>>>0<3){break c}while(1){l=w[s+4|0]|w[s+5|0]<<8|(w[s+6|0]<<16|w[s+7|0]<<24);m=w[s|0]|w[s+1|0]<<8|(w[s+2|0]<<16|w[s+3|0]<<24);t[n|0]=m;t[n+1|0]=m>>>8;t[n+2|0]=m>>>16;t[n+3|0]=m>>>24;t[n+4|0]=l;t[n+5|0]=l>>>8;t[n+6|0]=l>>>16;t[n+7|0]=l>>>24;l=w[s+8|0]|w[s+9|0]<<8|(w[s+10|0]<<16|w[s+11|0]<<24);t[n+8|0]=l;t[n+9|0]=l>>>8;t[n+10|0]=l>>>16;t[n+11|0]=l>>>24;l=o+s|0;m=w[l+8|0]|w[l+9|0]<<8|(w[l+10|0]<<16|w[l+11|0]<<24);t[n+20|0]=m;t[n+21|0]=m>>>8;t[n+22|0]=m>>>16;t[n+23|0]=m>>>24;m=w[l+4|0]|w[l+5|0]<<8|(w[l+6|0]<<16|w[l+7|0]<<24);r=w[l|0]|w[l+1|0]<<8|(w[l+2|0]<<16|w[l+3|0]<<24);t[n+12|0]=r;t[n+13|0]=r>>>8;t[n+14|0]=r>>>16;t[n+15|0]=r>>>24;t[n+16|0]=m;t[n+17|0]=m>>>8;t[n+18|0]=m>>>16;t[n+19|0]=m>>>24;l=l+o|0;m=w[l+8|0]|w[l+9|0]<<8|(w[l+10|0]<<16|w[l+11|0]<<24);t[n+32|0]=m;t[n+33|0]=m>>>8;t[n+34|0]=m>>>16;t[n+35|0]=m>>>24;m=w[l+4|0]|w[l+5|0]<<8|(w[l+6|0]<<16|w[l+7|0]<<24);r=w[l|0]|w[l+1|0]<<8|(w[l+2|0]<<16|w[l+3|0]<<24);t[n+24|0]=r;t[n+25|0]=r>>>8;t[n+26|0]=r>>>16;t[n+27|0]=r>>>24;t[n+28|0]=m;t[n+29|0]=m>>>8;t[n+30|0]=m>>>16;t[n+31|0]=m>>>24;l=l+o|0;m=w[l+4|0]|w[l+5|0]<<8|(w[l+6|0]<<16|w[l+7|0]<<24);r=w[l|0]|w[l+1|0]<<8|(w[l+2|0]<<16|w[l+3|0]<<24);t[n+36|0]=r;t[n+37|0]=r>>>8;t[n+38|0]=r>>>16;t[n+39|0]=r>>>24;t[n+40|0]=m;t[n+41|0]=m>>>8;t[n+42|0]=m>>>16;t[n+43|0]=m>>>24;m=w[l+8|0]|w[l+9|0]<<8|(w[l+10|0]<<16|w[l+11|0]<<24);t[n+44|0]=m;t[n+45|0]=m>>>8;t[n+46|0]=m>>>16;t[n+47|0]=m>>>24;n=n+48|0;s=l+o|0;q=q-4|0;if(q){continue}break}}D=e4(wa+8|0,w[a+18|0]);la=xa-32|0;xa=la;v[D>>2]=0;v[D+4>>2]=0;v[D+16>>2]=0;v[D+8>>2]=0;v[D+12>>2]=0;v[D+36>>2]=v[b+20>>2];a=v[b+8>>2];t[v[D+28>>2]+38|0]=a;b=v[37696];a=Ba[v[v[b+12>>2]+8>>2]](b+12|0,B(a&255,12)|1,24422,8968,995)|0;v[D>>2]=a;I9(a,k,B(w[v[D+28>>2]+38|0],12));b=D+36|0;n=0;s=v[D+36>>2];k=(Fa=-1,Ga=Saa(s,0,12,0),Ha=Aa,Ha?Fa:Ga);if(k){a=v[37696];n=Ba[v[v[a>>2]+20>>2]](a)|0?47365:63804;n=Ba[v[v[a+12>>2]+8>>2]](a+12|0,k,n,8968,998)|0;s=v[b>>2]}v[D+40>>2]=n;e:{if(!s){s=0;break e}while(1){k=B(aa,12);a=k+n|0;k=j+k|0;v[a>>2]=v[k>>2];v[a+4>>2]=v[k+4>>2];v[a+8>>2]=v[k+8>>2];s=v[b>>2];aa=aa+1|0;if(s>>>0>aa>>>0){continue}break}}k=w[v[D+28>>2]+38|0];q=v[D>>2];a=j3(la+8|0,k,q,s,n,C(0));j=v[a+4>>2];if(j){k=v[a>>2];v[b>>2]=j;l=I9(q,v[a+8>>2],B(k,12));q=v[a+12>>2];aa=0;if((j|0)!=1){r=j&-2;while(1){o=B(aa,12);m=o+n|0;A=o+q|0;v[m>>2]=v[A>>2];v[m+4>>2]=v[q+(o|4)>>2];v[m+8>>2]=v[A+8>>2];m=B(aa|1,12);o=m+n|0;m=m+q|0;v[o>>2]=v[m>>2];v[o+4>>2]=v[m+4>>2];v[o+8>>2]=v[m+8>>2];aa=aa+2|0;ka=ka+2|0;if((r|0)!=(ka|0)){continue}break}}if(j&1){o=B(aa,12);j=o+n|0;q=o+q|0;v[j>>2]=v[q>>2];v[j+4>>2]=v[q+4>>2];v[j+8>>2]=v[q+8>>2]}i4(b,n,1);j4(k,l,v[b>>2],n,1);j4(k,l,v[b>>2],n,1);i4(b,n,1)}k3(a);t[v[D+28>>2]+38|0]=k;a=v[D>>2];v[la+8>>2]=v[D+36>>2];aa=0;f:{if(!i4(la+8|0,n,0)){break f}if(!j4(k&255,a,v[la+8>>2],n,0)){break f}n=0;s=0;L=0;ka=0;J=xa+-64|0;xa=J;t[v[D+28>>2]+39|0]=0;a=v[D+8>>2];if(a){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}v[D+8>>2]=0;a=v[D+16>>2];if(a){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}v[D+16>>2]=0;a=v[D+4>>2];if(a){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}v[D+4>>2]=0;v[J+56>>2]=0;v[J+48>>2]=0;v[J+52>>2]=0;v[J+40>>2]=0;v[J+32>>2]=0;v[J+36>>2]=0;v[J+24>>2]=0;v[J+16>>2]=0;v[J+20>>2]=0;ha=J+12|0;V=J+48|0;S=J+32|0;M=J+16|0;b=0;j=0;q=0;m=0;p=xa-112|0;xa=p;W=v[D+40>>2];ra=w[v[D+28>>2]+38|0];ma=v[D+36>>2];a=v[D>>2];v[p+72>>2]=1000593162;v[p+68>>2]=a;v[p+64>>2]=0;v[p+60>>2]=W;v[p+56>>2]=ma;v[p+48>>2]=0;v[p+52>>2]=0;F=xa+-64|0;xa=F;g:{h:{i:{k=v[p+56>>2];if(k){v[p+48>>2]=k;l=v[37696];a=Saa(k,0,12,0);A=a+4|0;a=(Ga=l+12|0,Ha=Aa?-1:a>>>0>A>>>0?-1:A,Ia=Ba[v[v[l>>2]+20>>2]](l)|0?43013:63804,Ja=7469,Ka=625,Fa=v[v[l+12>>2]+8>>2],Ba[Fa](Ga|0,Ha|0,Ia|0,Ja|0,Ka|0)|0);v[a>>2]=k;v[p+52>>2]=a+4;k=B(v[p+48>>2],3);a=Saa(k,0,12,0);o=a+4|0;l=Aa?-1:a>>>0>o>>>0?-1:o;if(l){a=v[37696];o=Ba[v[v[a>>2]+20>>2]](a)|0?43819:63804;o=Ba[v[v[a+12>>2]+8>>2]](a+12|0,l,o,7469,627)|0}else{o=0}v[o>>2]=k;X=o+4|0;j:{if(!v[p+48>>2]){na=v[p+52>>2];k=0;break j}na=v[p+52>>2];A=v[p+64>>2];E=v[p+60>>2];k=0;while(1){k:{l:{if(!E){if(A){break l}a=0;G=1;l=2;break k}l=E+B(q,12)|0;a=v[l>>2];G=v[l+4>>2];l=v[l+8>>2];break k}l=A+B(q,6)|0;a=x[l>>1];G=x[l+2>>1];l=x[l+4>>1]}r=B(q,12)+na|0;v[r+8>>2]=-1;v[r>>2]=-1;v[r+4>>2]=-1;r=X+B(k,12)|0;v[r+12>>2]=a>>>0>>0?a:l;v[r+8>>2]=q;v[r+4>>2]=a>>>0>G>>>0?a:G;v[r>>2]=a>>>0>>0?a:G;v[r+20>>2]=q;v[r+16>>2]=a>>>0>l>>>0?a:l;v[r+32>>2]=q;v[r+28>>2]=l>>>0>>0?G:l;v[r+24>>2]=l>>>0>G>>>0?G:l;k=k+3|0;q=q+1|0;if(q>>>0>2]){continue}break}}ba=SU(F+24|0);q=(k&1073741823)!=(k|0)?-1:k<<2;if(q){a=v[37696];l=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804;q=Ba[v[v[a+12>>2]+8>>2]](a+12|0,q,l,7469,536)|0}else{q=0}m:{if(k){a=0;l=k-1|0;if(l>>>0>=3){r=k&-4;G=0;while(1){v[q+(m<<2)>>2]=v[X+B(m,12)>>2];A=m|1;v[q+(A<<2)>>2]=v[X+B(A,12)>>2];A=m|2;v[q+(A<<2)>>2]=v[X+B(A,12)>>2];A=m|3;v[q+(A<<2)>>2]=v[X+B(A,12)>>2];m=m+4|0;G=G+4|0;if((r|0)!=(G|0)){continue}break}}r=k&3;if(r){while(1){v[q+(m<<2)>>2]=v[X+B(m,12)>>2];m=m+1|0;a=a+1|0;if((r|0)!=(a|0)){continue}break}}a=0;WU(ba,q,k,0);m=0;if(l>>>0>=3){l=k&-4;G=0;while(1){v[q+(m<<2)>>2]=v[(X+B(m,12)|0)+4>>2];r=m|1;v[q+(r<<2)>>2]=v[(X+B(r,12)|0)+4>>2];r=m|2;v[q+(r<<2)>>2]=v[(X+B(r,12)|0)+4>>2];r=m|3;v[q+(r<<2)>>2]=v[(X+B(r,12)|0)+4>>2];m=m+4|0;G=G+4|0;if((l|0)!=(G|0)){continue}break}}l=k&3;if(l){while(1){v[q+(m<<2)>>2]=v[(X+B(m,12)|0)+4>>2];m=m+1|0;a=a+1|0;if((l|0)!=(a|0)){continue}break}}WU(ba,q,k,0);break m}WU(ba,q,0,0);WU(ba,q,0,0);if(q){break m}break i}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,q);if(!k){break i}m=v[ba+8>>2];a=X+B(v[m>>2],12)|0;r=v[a+4>>2];q=v[a>>2];a=0;_=1;n:{while(1){l=m+4|0;T=k-1|0;A=X+B(v[m>>2],12)|0;E=v[A+4>>2];G=v[A+8>>2];A=v[A>>2];o:{if(!((A|0)!=(q|0)|(r|0)!=(E|0))){v[F+(a<<2)>>2]=G;p:{l=a+1|0;if((l|0)==3){break p}q:{r:{s:{if(!T){break s}fa=m+8|0;T=k-2|0;A=X+B(v[m+4>>2],12)|0;E=v[A+4>>2];G=v[A+8>>2];A=v[A>>2];if((A|0)!=(q|0)|(r|0)!=(E|0)){break q}v[F+(l<<2)>>2]=G;l=a|2;if((l|0)==3){break p}if(!T){break s}T=m+12|0;k=k-3|0;m=X+B(v[m+8>>2],12)|0;E=v[m+4>>2];G=v[m+8>>2];A=v[m>>2];if((A|0)!=(q|0)|(r|0)!=(E|0)){break r}v[F+(l<<2)>>2]=G;if(_){break p}l=a+3|0}if((l|0)==2){a=h4(v[F>>2],v[F+4>>2],q,r,na,v[p+60>>2],v[p+64>>2]);TU(ba);k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,o);m=0;if(a){break h}break g}break i}a=l;l=T;break o}a=l;k=T;l=fa;break o}m=0;b9(v[37696],8,7469,570,65654,0);TU(ba);a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,o);break g}k=T}m=l;if((a|0)==2){if(!h4(v[F>>2],v[F+4>>2],q,r,na,v[p+60>>2],v[p+64>>2])){break n}}v[F>>2]=G;a=1;_=0;r=E;q=A;if(k){continue}break}break i}TU(ba);a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,o)}m=0;break g}TU(ba);a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,o)}a=v[p+68>>2];if(!a){m=1;break g}u[F+36>>1]=0;v[F+24>>2]=v[p+56>>2];v[F+28>>2]=v[p+60>>2];k=v[p+64>>2];v[F+40>>2]=a;m=1;t[F+36|0]=1;v[F+32>>2]=k;z[F+44>>2]=z[p+72>>2];v[F+12>>2]=0;v[F>>2]=0;v[F+4>>2]=0;v[F+16>>2]=0;v[F+20>>2]=0;if(!(!h3(F,F+24|0)|!v[p+48>>2])){q=v[p+52>>2];l=v[F+12>>2];E=0;while(1){k=B(E,12);a=k+q|0;k=l+k|0;v[a>>2]=v[a>>2]&-536870913|v[k>>2]>>>2&536870912;v[a+4>>2]=v[a+4>>2]&-536870913|v[k+8>>2]>>>2&536870912;v[a+8>>2]=v[a+8>>2]&-536870913|v[k+4>>2]>>>2&536870912;E=E+1|0;if(E>>>0>2]){continue}break}}g3(F)}xa=F- -64|0;t:{if(!m){break t}a=0;q=v[p+52>>2];k=0;u:{if(!q){break u}l=v[p+48>>2];k=0;if(!l){break u}while(1){r=j;j=q+B(a,12)|0;k=(v[j>>2]&536870911)==536870911;j=(r+((v[j+4>>2]&536870911)==536870911?k?2:1:k)|0)+((v[j+8>>2]&536870911)==536870911)|0;a=a+1|0;if((l|0)!=(a|0)){continue}break}k=j}if(k){break t}a=p-(ma+15&-16)|0;xa=a;sa=J9(a,0,ma);a=a-(ra+15&496)|0;xa=a;ya=J9(a,0,ra);v[ha>>2]=0;while(1){b=0;X=0;v:{w:{x:{if(!ma){break x}while(1){if(!w[b+sa|0]){X=b;break x}b=b+1|0;if((ma|0)!=(b|0)){continue}break}break w}if((X|0)==(ma|0)){break w}v[p+40>>2]=0;v[p+32>>2]=0;v[p+36>>2]=0;q=v[p+52>>2];y:{while(1){k4(p+32|0,q,X,sa);q=v[p+52>>2];ba=0;oa=v[p+32>>2];_=v[p+36>>2];z:{A:{B:{C:{D:{if(!W){A=0;if(!_){break z}while(1){k=A+1|0;if(k>>>0<_>>>0){l=v[(A<<2)+oa>>2];a=1;b=k;while(1){o=B(v[(b<<2)+oa>>2],12)+q|0;j=v[o>>2];j=(l|0)!=(j&536870911)|!(j&536870912);m=v[o+4>>2];if((l|0)==(m&536870911)){j=!(m&536870912)&j}o=v[o+8>>2];E:{F:{if((l|0)!=(o&536870911)){if(!j){break E}break F}if(!(!(o&536870912)&j)){break E}}b=b+1|0;a=_>>>0>b>>>0;if((b|0)!=(_|0)){continue}}break}if(a&1){break D}}A=k;if((k|0)!=(_|0)){continue}break}v[p+24>>2]=0;v[p+16>>2]=0;v[p+20>>2]=0;break B}while(1){A=ba;if((_|0)==(A|0)){break C}k=1;E=v[(A<<2)+oa>>2];G=0;m=0;ba=A+1|0;o=ba;G:{if(_>>>0<=o>>>0){break G}while(1){a=B(v[(o<<2)+oa>>2],12)+q|0;b=v[a>>2];j=(E|0)!=(b&536870911)|!(b&536870912);b=v[a+4>>2];if((E|0)==(b&536870911)){j=!(b&536870912)&j}a=v[a+8>>2];H:{if((E|0)==(a&536870911)){m=k;if(!(a&536870912)&j){break H}break G}m=k;if(!j){break G}}o=o+1|0;k=_>>>0>o>>>0;m=k;if((o|0)!=(_|0)){continue}break}}a=B(E,12);ta=a+q|0;a=a+W|0;T=v[a>>2];na=v[a+8>>2];fa=v[a+4>>2];za=1;while(1){I:{J:{if(w[((G<<2)+ta|0)+3|0]&32){break J}o=1;ia=2;j=T;k=fa;K:{L:{M:{switch(G|0){case 1:o=0;j=T;break L;case 0:break K;default:break M}}ia=1;o=0;j=fa}k=na}F=v[(o<<2)+ta>>2]&536870911;b=E;a=b;N:{O:{while(1){l=b;Q=B(a,12)+q|0;b=a;a=B(a,3);P:{if(v[(a<<2)+W>>2]==(j|0)){r=1;a=0;break P}r=2;a=v[((a<<2)+W|0)+4>>2]!=(j|0)}o=v[Q+(r<<2)>>2];r=o&536870912;a=v[Q+(a<<2)>>2];if(a&536870912){Q=0;if(!r){break O}break N}if(!r){Q=0;if((b|0)==(E|0)){break N}a=a&536870911;if((l|0)!=(E|0)){if((a|0)==(E|0)){break N}if((a|0)!=(l|0)){continue}a=o&536870911;if((a|0)==(E|0)){break N}o=(a|0)==(l|0);a=o?b:a;b=o?l:b;continue}if((a|0)!=(E|0)){continue}a=o&536870911;l=(a|0)==(E|0);a=l?b:a;b=l?E:b;continue}break}o=a}a=o&536870911;r=(a|0)==(E|0);o=o&536870912;a=o?b:r?b:a;b=o?l:r?l:b;while(1){Q=B(a,12)+q|0;l=a;a=B(a,3);Q:{if(v[(a<<2)+W>>2]==(j|0)){r=0;a=1;break Q}r=v[((a<<2)+W|0)+4>>2]!=(j|0);a=2}o=v[Q+(a<<2)>>2];ja=o&536870912;R:{a=v[Q+(r<<2)>>2];S:{if(a&536870912){Q=0;if(!ja){break S}break N}if(!ja){break R}a=o}ua=a&536870911;Q=1;ga=l;break N}Q=0;if((l|0)==(E|0)){break N}a=a&536870911;r=b;if((b|0)!=(E|0)){if((a|0)==(E|0)){break N}b=l;if((a|0)!=(r|0)){continue}a=o&536870911;if((a|0)==(E|0)){break N}l=(a|0)==(r|0);a=l?b:a;b=l?r:b;continue}b=l;if((a|0)!=(E|0)){continue}a=o&536870911;l=(a|0)==(E|0);a=l?b:a;b=l?E:b;continue}}b=F;a=b;T:{U:{while(1){l=b;ja=B(a,12)+q|0;b=a;a=B(a,3);V:{if(v[(a<<2)+W>>2]==(j|0)){r=1;a=0;break V}r=2;a=v[((a<<2)+W|0)+4>>2]!=(j|0)}o=v[ja+(r<<2)>>2];r=o&536870912;a=v[ja+(a<<2)>>2];if(a&536870912){if(!r){break U}break T}if(!r){if((b|0)==(F|0)){break T}a=a&536870911;if((l|0)!=(F|0)){if((a|0)==(F|0)){break T}if((a|0)!=(l|0)){continue}a=o&536870911;if((a|0)==(F|0)){break T}o=(a|0)==(l|0);a=o?b:a;b=o?l:b;continue}if((a|0)!=(F|0)){continue}a=o&536870911;l=(a|0)==(F|0);a=l?b:a;b=l?F:b;continue}break}o=a}a=o&536870911;r=(a|0)==(F|0);o=o&536870912;a=o?b:r?b:a;b=o?l:r?l:b;while(1){l=b;Ca=B(a,12)+q|0;b=a;a=B(a,3);W:{if(v[(a<<2)+W>>2]==(j|0)){r=0;a=1;break W}r=v[((a<<2)+W|0)+4>>2]!=(j|0);a=2}o=v[Ca+(a<<2)>>2];ja=o&536870912;X:{a=v[Ca+(r<<2)>>2];if(a&536870912){if(ja){break T}break X}if(ja){a=o;break X}if((b|0)==(F|0)){break T}a=a&536870911;if((l|0)!=(F|0)){if((a|0)==(F|0)){break T}if((a|0)!=(l|0)){continue}a=o&536870911;if((a|0)==(F|0)){break T}o=(a|0)==(l|0);a=o?b:a;b=o?l:b;continue}if((a|0)!=(F|0)){continue}a=o&536870911;l=(a|0)==(F|0);a=l?b:a;b=l?F:b;continue}break}if(!((b|0)==(ua|0)&Q)){break T}if((a&536870911)==(ga|0)){break I}}F=v[(ia<<2)+ta>>2]&536870911;a=E;j=a;Y:{Z:{while(1){l=a;a=j;j=B(a,12)+q|0;o=B(a,3);_:{if(v[(o<<2)+W>>2]==(k|0)){o=0;b=1;break _}o=v[((o<<2)+W|0)+4>>2]!=(k|0);b=2}r=v[j+(b<<2)>>2];Q=r&536870912;b=v[j+(o<<2)>>2];if(b&536870912){o=0;if(!Q){break Z}break Y}if(!Q){o=0;if((a|0)==(E|0)){break Y}j=b&536870911;if((l|0)!=(E|0)){if((j|0)==(E|0)){break Y}if((j|0)!=(l|0)){continue}b=r&536870911;if((b|0)==(E|0)){break Y}j=b;b=(b|0)==(l|0);j=b?a:j;a=b?l:a;continue}if((j|0)!=(E|0)){continue}j=r&536870911;b=(j|0)==(E|0);j=b?a:j;a=b?E:a;continue}break}r=b}j=r&536870911;b=(j|0)==(E|0);o=r&536870912;j=o?a:b?a:j;a=o?l:b?l:a;while(1){o=B(j,12)+q|0;l=j;b=B(j,3);$:{if(v[(b<<2)+W>>2]==(k|0)){j=1;b=0;break $}j=2;b=v[((b<<2)+W|0)+4>>2]!=(k|0)}r=v[(j<<2)+o>>2];Q=r&536870912;aa:{j=v[o+(b<<2)>>2];ba:{if(j&536870912){o=0;if(!Q){break ba}break Y}if(!Q){break aa}j=r}ua=j&536870911;o=1;ga=l;break Y}o=0;if((l|0)==(E|0)){break Y}j=j&536870911;b=a;if((a|0)!=(E|0)){if((j|0)==(E|0)){break Y}a=l;if((b|0)!=(j|0)){continue}j=r&536870911;if((j|0)==(E|0)){break Y}l=(b|0)==(j|0);j=l?a:j;a=l?b:a;continue}a=l;if((j|0)!=(E|0)){continue}j=r&536870911;b=(j|0)==(E|0);j=b?a:j;a=b?E:a;continue}}a=F;j=a;ca:{while(1){l=a;a=j;j=B(a,12)+q|0;r=B(a,3);da:{if(v[(r<<2)+W>>2]==(k|0)){Q=0;b=1;break da}Q=v[((r<<2)+W|0)+4>>2]!=(k|0);b=2}r=v[j+(b<<2)>>2];ia=r&536870912;b=v[j+(Q<<2)>>2];if(b&536870912){if(!ia){break ca}break J}if(!ia){if((a|0)==(F|0)){break J}j=b&536870911;if((l|0)!=(F|0)){if((j|0)==(F|0)){break J}if((j|0)!=(l|0)){continue}b=r&536870911;if((b|0)==(F|0)){break J}j=b;b=(b|0)==(l|0);j=b?a:j;a=b?l:a;continue}if((j|0)!=(F|0)){continue}j=r&536870911;b=(j|0)==(F|0);j=b?a:j;a=b?F:a;continue}break}r=b}j=r&536870911;b=(j|0)==(F|0);r=r&536870912;j=r?a:b?a:j;a=r?l:b?l:a;while(1){l=a;a=j;ia=B(a,12)+q|0;r=ia;b=B(a,3);ea:{if(v[(b<<2)+W>>2]==(k|0)){j=1;b=0;break ea}j=2;b=v[((b<<2)+W|0)+4>>2]!=(k|0)}r=v[(j<<2)+r>>2];Q=r&536870912;fa:{j=v[ia+(b<<2)>>2];if(j&536870912){if(Q){break J}break fa}if(Q){j=r;break fa}if((a|0)==(F|0)){break J}j=j&536870911;if((l|0)!=(F|0)){if((j|0)==(F|0)){break J}if((j|0)!=(l|0)){continue}b=r&536870911;if((b|0)==(F|0)){break J}j=b;b=(b|0)==(l|0);j=b?a:j;a=b?l:a;continue}if((j|0)!=(F|0)){continue}j=r&536870911;b=(j|0)==(F|0);j=b?a:j;a=b?F:a;continue}break}if(!((a|0)==(ua|0)&o)){break J}if((j&536870911)==(ga|0)){break I}}za=G>>>0<2;G=G+1|0;if((G|0)!=3){continue}}break}if(!((m|za)&1)){continue}break}}o=0;if(!_){break A}while(1){b=(o<<2)+oa|0;a=B(v[b>>2],12)+q|0;v[a>>2]=v[a>>2]|536870912;v[a+4>>2]=v[a+4>>2]|536870912;v[a+8>>2]=v[a+8>>2]|536870912;t[v[b>>2]+sa|0]=0;o=o+1|0;if(o>>>0>2]){continue}break}break A}v[p+24>>2]=0;v[p+16>>2]=0;v[p+20>>2]=0;if(!_){break y}}o=0;while(1){a=B(v[v[p+32>>2]+(o<<2)>>2],12);b=a+W|0;j=v[b>>2];k=v[b+8>>2];b=v[b+4>>2];q=v[p+52>>2];if(w[(a+q|0)+3|0]&32){v[p+100>>2]=b;v[p+96>>2]=j;q=v[p+20>>2];ga:{if(q>>>0>=(v[p+24>>2]&2147483647)>>>0){l4(p+16|0,p+96|0);break ga}l=v[p+100>>2];q=v[p+16>>2]+(q<<3)|0;v[q>>2]=v[p+96>>2];v[q+4>>2]=l;v[p+20>>2]=v[p+20>>2]+1}q=v[p+52>>2]}if(w[(a+q|0)+7|0]&32){v[p+100>>2]=k;v[p+96>>2]=j;j=v[p+20>>2];ha:{if(j>>>0>=(v[p+24>>2]&2147483647)>>>0){l4(p+16|0,p+96|0);break ha}q=v[p+100>>2];j=v[p+16>>2]+(j<<3)|0;v[j>>2]=v[p+96>>2];v[j+4>>2]=q;v[p+20>>2]=v[p+20>>2]+1}q=v[p+52>>2]}ia:{if(!(w[(a+q|0)+11|0]&32)){break ia}v[p+100>>2]=k;v[p+96>>2]=b;a=v[p+20>>2];if(a>>>0>=(v[p+24>>2]&2147483647)>>>0){l4(p+16|0,p+96|0);break ia}b=v[p+100>>2];a=v[p+16>>2]+(a<<3)|0;v[a>>2]=v[p+96>>2];v[a+4>>2]=b;v[p+20>>2]=v[p+20>>2]+1}o=o+1|0;if(o>>>0>2]){continue}break}break y}v[p+36>>2]=0}if(A>>>0<_>>>0){continue}break}v[p+24>>2]=0;v[p+16>>2]=0;v[p+20>>2]=0}v[p+8>>2]=0;v[p>>2]=0;v[p+4>>2]=0;a=v[p+20>>2];ja:{if(a){v[p+100>>2]=a;v[p+104>>2]=a;b=a<<3;ka:{if(!b){b=0;break ka}a=v[37696];j=Ba[v[v[a>>2]+20>>2]](a)|0?32081:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,j,16608,553)|0;a=v[p+100>>2]}v[p+96>>2]=b;if((a|0)<=0){break ja}j=(a<<3)+b|0;a=v[p+16>>2];while(1){k=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=k;a=a+8|0;b=b+8|0;if(j>>>0>b>>>0){continue}break}break ja}v[p+104>>2]=0;v[p+96>>2]=0;v[p+100>>2]=0}o=v[p+100>>2];la:{ma:while(1){if(!o){break la}j=o;a=0;while(1){b=a;a=a+1|0;na:{if(j>>>0<=a>>>0){break na}m=v[p+96>>2];G=b<<3;q=m+G|0;k=v[q+4>>2];b=m+(a<<3)|0;A=v[b+4>>2];r=1;E=v[b>>2];l=v[q>>2];oa:{if(!((E|0)!=(l|0)|(k|0)!=(A|0))){q=a;break oa}q=a;if((l|0)==(A|0)&(k|0)==(E|0)){break oa}while(1){q=q+1|0;if((j|0)==(q|0)){break na}b=m+(q<<3)|0;r=v[b+4>>2];A=v[b>>2];if(!((A|0)==(l|0)&(k|0)==(r|0))&((l|0)!=(r|0)|(k|0)!=(A|0))){continue}break}r=j>>>0>q>>>0}q=q+1|0;if(q>>>0>>0){while(1){k=v[p+96>>2]+(q<<3)|0;l=v[k+4>>2];v[b>>2]=v[k>>2];v[b+4>>2]=l;b=b+8|0;o=v[p+100>>2];q=q+1|0;if(o>>>0>q>>>0){continue}break}}o=o-1|0;v[p+100>>2]=o;if(a>>>0>>0){b=G+v[p+96>>2]|0;q=a;while(1){k=v[p+96>>2]+(q<<3)|0;l=v[k+4>>2];v[b>>2]=v[k>>2];v[b+4>>2]=l;b=b+8|0;o=v[p+100>>2];q=q+1|0;if(o>>>0>q>>>0){continue}break}}o=o-1|0;v[p+100>>2]=o;if(r){continue ma}}if((a|0)!=(j|0)){continue}break}break}v[p+92>>2]=-1;v[p+88>>2]=-1;m=1;if(!o){break v}a=v[p+96>>2];if(a){b=v[a>>2];v[p+92>>2]=b;v[p+88>>2]=v[a+4>>2];a=v[p+4>>2];pa:{if(a>>>0>=(v[p+8>>2]&2147483647)>>>0){pn(p,p+92|0);b=v[p+4>>2];break pa}v[v[p>>2]+(a<<2)>>2]=b;b=v[p+4>>2]+1|0;v[p+4>>2]=b}qa:{if((v[p+8>>2]&2147483647)>>>0<=b>>>0){pn(p,p+88|0);break qa}v[v[p>>2]+(b<<2)>>2]=v[p+88>>2];v[p+4>>2]=v[p+4>>2]+1}o=v[p+100>>2];if(o>>>0>=2){b=1;q=v[p+96>>2];while(1){a=v[p+96>>2]+(b<<3)|0;j=v[a+4>>2];v[q>>2]=v[a>>2];v[q+4>>2]=j;q=q+8|0;b=b+1|0;o=v[p+100>>2];if(b>>>0>>0){continue}break}}o=o-1|0;v[p+100>>2]=o;if(!o){break v}q=v[p+88>>2]}else{q=-1}while(1){b=0;l=v[p+96>>2];ra:{while(1){j=b<<3;k=j+l|0;a=v[k>>2];v[p+84>>2]=a;k=v[k+4>>2];v[p+80>>2]=k;if((a|0)==(q|0)){a=v[p+4>>2];sa:{if(a>>>0>=(v[p+8>>2]&2147483647)>>>0){pn(p,p+80|0);break sa}v[v[p>>2]+(a<<2)>>2]=k;v[p+4>>2]=v[p+4>>2]+1}v[p+92>>2]=v[p+84>>2];q=v[p+80>>2];v[p+88>>2]=q;a=v[p+100>>2];b=b+1|0;if(a>>>0<=b>>>0){break ra}o=j+v[p+96>>2]|0;while(1){a=v[p+96>>2]+(b<<3)|0;j=v[a+4>>2];v[o>>2]=v[a>>2];v[o+4>>2]=j;o=o+8|0;a=v[p+100>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break ra}if((k|0)==(q|0)){k=v[p+4>>2];ta:{if(k>>>0>=(v[p+8>>2]&2147483647)>>>0){pn(p,p+84|0);break ta}v[v[p>>2]+(k<<2)>>2]=a;v[p+4>>2]=v[p+4>>2]+1}v[p+92>>2]=v[p+80>>2];q=v[p+84>>2];v[p+88>>2]=q;a=v[p+100>>2];b=b+1|0;if(a>>>0<=b>>>0){break ra}o=j+v[p+96>>2]|0;while(1){a=v[p+96>>2]+(b<<3)|0;j=v[a+4>>2];v[o>>2]=v[a>>2];v[o+4>>2]=j;o=o+8|0;a=v[p+100>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break ra}b=b+1|0;if((o|0)!=(b|0)){continue}break}m=0;break v}o=a-1|0;v[p+100>>2]=o;if(o){continue}break}break v}m=1;break v}j=0;v[p+96>>2]=0;if(ra){while(1){ua:{if(w[j+ya|0]>2){break ua}k=v[M>>2];b=0;va:{wa:{a=v[M+4>>2];if(!a){break wa}while(1){if(v[k+(b<<2)>>2]==(j|0)){break wa}b=b+1|0;if((a|0)!=(b|0)){continue}break}break va}if((a|0)!=(b|0)){break ua}}if(a>>>0>=(v[M+8>>2]&2147483647)>>>0){pn(M,p+96|0);break ua}v[k+(a<<2)>>2]=j;v[M+4>>2]=v[M+4>>2]+1}j=v[p+96>>2]+1|0;v[p+96>>2]=j;if(j>>>0>>0){continue}break}}b=1;if(!S|!v[M+4>>2]){break t}ga=v[D+40>>2];A=0;m=xa+-64|0;xa=m;j=v[ha>>2];a=m-(j+15&-16)|0;xa=a;r=J9(a,0,j);q=v[M+4>>2];a=a-(q+15&-16)|0;xa=a;T=J9(a,0,q);v[m+56>>2]=0;v[m+48>>2]=0;v[m+52>>2]=0;xa:{if(!q){break xa}ya:{za:while(1){a=j;while(1){o=0;v[m+52>>2]=0;k=v[V>>2];v[m+32>>2]=0;q=q-1|0;Aa:{Ba:{if(a){E=0;while(1){a=v[k>>2];v[m+16>>2]=a;l=k+4|0;Ca:{if(!a){a=0;break Ca}G=v[v[M>>2]+(q<<2)>>2];k=0;while(1){if((G|0)!=v[l+(k<<2)>>2]){k=k+1|0;if((k|0)!=(a|0)){continue}break Ca}break}a=v[m+52>>2];Da:{if(a>>>0>=(v[m+56>>2]&2147483647)>>>0){pn(m+48|0,m+32|0);k=v[m+52>>2];break Da}v[v[m+48>>2]+(a<<2)>>2]=E;k=v[m+52>>2]+1|0;v[m+52>>2]=k}Ea:{if((v[m+56>>2]&2147483647)>>>0<=k>>>0){pn(m+48|0,m+16|0);break Ea}v[v[m+48>>2]+(k<<2)>>2]=v[m+16>>2];v[m+52>>2]=v[m+52>>2]+1}o=o+1|0;j=v[ha>>2];E=v[m+32>>2];a=v[m+16>>2]}E=E+1|0;v[m+32>>2]=E;k=l+(a<<2)|0;if(j>>>0>E>>>0){continue}break}break Ba}a=0;break Aa}if(!o){a=j;break Aa}E=0;a=v[m+48>>2];k=0;l=0;if(o-1>>>0>=3){fa=o&-4;G=0;while(1){F=l;l=k<<3;l=F|(v[a+(l|28)>>2]==3|v[a+(l|20)>>2]==3|v[a+(l|12)>>2]==3|v[(a+l|0)+4>>2]==3);k=k+4|0;G=G+4|0;if((fa|0)!=(G|0)){continue}break}}G=o&3;if(G){while(1){l=v[(a+(k<<3)|0)+4>>2]==3|l;k=k+1|0;E=E+1|0;if((G|0)!=(E|0)){continue}break}}if(!(l&1)){a=j;break Aa}t[q+T|0]=1;k=0;if((o|0)!=1){G=o&-2;l=0;while(1){A=k<<1;E=k<<3;if(v[(E+a|0)+4>>2]!=3){t[r+v[a+(A<<2)>>2]|0]=1}if(v[a+(E|12)>>2]!=3){t[r+v[a+(A<<2|8)>>2]|0]=1}k=k+2|0;l=l+2|0;if((G|0)!=(l|0)){continue}break}}if(!(!(o&1)|v[(a+(k<<3)|0)+4>>2]==3)){t[r+v[a+(k<<3)>>2]|0]=1}A=1;if(q){continue za}break ya}if(q){continue}break}break}if(!A){break xa}}l=v[M+4>>2];if(l){q=v[M>>2];k=l;while(1){j=k-1|0;if(w[j+T|0]){if(l>>>0>k>>>0){a=q+(j<<2)|0;while(1){v[a>>2]=v[q+(k<<2)>>2];a=a+4|0;k=k+1|0;l=v[M+4>>2];if(k>>>0>>0){continue}break}}l=l-1|0;v[M+4>>2]=l}k=j;if(j){continue}break}j=v[ha>>2]}v[m+40>>2]=0;v[m+32>>2]=0;v[m+36>>2]=0;v[m+24>>2]=0;v[m+16>>2]=0;v[m+20>>2]=0;l=0;if(j){k=v[V>>2];a=v[S>>2];q=0;while(1){j=v[k>>2];v[m+12>>2]=j;G=v[a>>2];v[m+8>>2]=G;o=a+4|0;A=k+4|0;Fa:{if(w[q+r|0]){k=0;a=0;if(!G){break Fa}while(1){v[m+4>>2]=v[o+(k<<2)>>2];v[m>>2]=3;a=v[m+36>>2];Ga:{if(a>>>0>=(v[m+40>>2]&2147483647)>>>0){pn(m+32|0,m);a=v[m+36>>2];break Ga}v[v[m+32>>2]+(a<<2)>>2]=3;a=v[m+36>>2]+1|0;v[m+36>>2]=a}j=ga+B(v[m+4>>2],12)|0;Ha:{if((v[m+40>>2]&2147483647)>>>0<=a>>>0){pn(m+32|0,j);a=v[m+36>>2];break Ha}v[v[m+32>>2]+(a<<2)>>2]=v[j>>2];a=v[m+36>>2]+1|0;v[m+36>>2]=a}j=(ga+B(v[m+4>>2],12)|0)+4|0;Ia:{if((v[m+40>>2]&2147483647)>>>0<=a>>>0){pn(m+32|0,j);a=v[m+36>>2];break Ia}v[v[m+32>>2]+(a<<2)>>2]=v[j>>2];a=v[m+36>>2]+1|0;v[m+36>>2]=a}j=(ga+B(v[m+4>>2],12)|0)+8|0;Ja:{if((v[m+40>>2]&2147483647)>>>0<=a>>>0){pn(m+32|0,j);break Ja}v[v[m+32>>2]+(a<<2)>>2]=v[j>>2];v[m+36>>2]=v[m+36>>2]+1}v[m>>2]=1;a=v[m+20>>2];Ka:{if(a>>>0>=(v[m+24>>2]&2147483647)>>>0){pn(m+16|0,m);a=v[m+20>>2];break Ka}v[v[m+16>>2]+(a<<2)>>2]=1;a=v[m+20>>2]+1|0;v[m+20>>2]=a}La:{if((v[m+24>>2]&2147483647)>>>0<=a>>>0){pn(m+16|0,m+4|0);break La}v[v[m+16>>2]+(a<<2)>>2]=v[m+4>>2];v[m+20>>2]=v[m+20>>2]+1}l=l+1|0;a=v[m+8>>2];k=k+1|0;if(a>>>0>k>>>0){continue}break}break Fa}a=v[m+36>>2];Ma:{if(a>>>0>=(v[m+40>>2]&2147483647)>>>0){pn(m+32|0,m+12|0);break Ma}v[v[m+32>>2]+(a<<2)>>2]=j;v[m+36>>2]=v[m+36>>2]+1}k=0;if(v[m+12>>2]){while(1){a=A+(k<<2)|0;j=v[m+36>>2];Na:{if(j>>>0>=(v[m+40>>2]&2147483647)>>>0){pn(m+32|0,a);break Na}v[v[m+32>>2]+(j<<2)>>2]=v[a>>2];v[m+36>>2]=v[m+36>>2]+1}k=k+1|0;if(k>>>0>2]){continue}break}}a=v[m+20>>2];Oa:{if(a>>>0>=(v[m+24>>2]&2147483647)>>>0){pn(m+16|0,m+8|0);break Oa}v[v[m+16>>2]+(a<<2)>>2]=v[m+8>>2];v[m+20>>2]=v[m+20>>2]+1}l=l+1|0;a=0;if(!v[m+8>>2]){break Fa}while(1){j=o+(a<<2)|0;k=v[m+20>>2];Pa:{if(k>>>0>=(v[m+24>>2]&2147483647)>>>0){pn(m+16|0,j);break Pa}v[v[m+16>>2]+(k<<2)>>2]=v[j>>2];v[m+20>>2]=v[m+20>>2]+1}a=a+1|0;j=v[m+8>>2];if(a>>>0>>0){continue}break}a=j}a=o+(a<<2)|0;k=A+(v[m+12>>2]<<2)|0;q=q+1|0;if(q>>>0>2]){continue}break}}v[V+4>>2]=0;v[S+4>>2]=0;if((V|0)!=(m+32|0)){v[V+4>>2]=0;a=v[m+36>>2];if(a>>>0>(v[V+8>>2]&2147483647)>>>0){Aw(V,a);a=v[m+36>>2]}if((a|0)>0){k=v[V>>2];j=k+(a<<2)|0;a=v[m+32>>2];while(1){v[k>>2]=v[a>>2];a=a+4|0;k=k+4|0;if(j>>>0>k>>>0){continue}break}a=v[m+36>>2]}v[V+4>>2]=a}if((S|0)!=(m+16|0)){v[S+4>>2]=0;a=v[m+20>>2];if(a>>>0>(v[S+8>>2]&2147483647)>>>0){Aw(S,a);a=v[m+20>>2]}if((a|0)>0){k=v[S>>2];j=k+(a<<2)|0;a=v[m+16>>2];while(1){v[k>>2]=v[a>>2];a=a+4|0;k=k+4|0;if(j>>>0>k>>>0){continue}break}a=v[m+20>>2]}v[S+4>>2]=a}v[ha>>2]=l;a=v[m+24>>2];Qa:{if((a|0)<0|!(a&2147483647)){break Qa}a=v[m+16>>2];if(!a){break Qa}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,a)}a=v[m+40>>2];if((a|0)<0|!(a&2147483647)){break xa}a=v[m+32>>2];if(!a){break xa}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,a)}a=v[m+56>>2];Ra:{if((a|0)<0|!(a&2147483647)){break Ra}a=v[m+48>>2];if(!a){break Ra}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,a)}xa=m- -64|0;break t}a=v[p+104>>2];Sa:{if((a|0)<0|!(a&2147483647)){break Sa}a=v[p+96>>2];if(!a){break Sa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}Ta:{if(!m){b9(v[37696],8,8968,943,23755,0);break Ta}l=v[p>>2];Ua:{a=v[p+4>>2];if(a){k=a-1|0;v[p+96>>2]=k;a=v[V+4>>2];Va:{if(a>>>0>=(v[V+8>>2]&2147483647)>>>0){pn(V,p+96|0);break Va}v[v[V>>2]+(a<<2)>>2]=k;v[V+4>>2]=v[V+4>>2]+1}b=0;if(!k){break Ua}while(1){a=l+(b<<2)|0;j=v[a>>2];q=j+ya|0;t[q|0]=w[q|0]+1;q=v[V+4>>2];Wa:{if(q>>>0>=(v[V+8>>2]&2147483647)>>>0){pn(V,a);break Wa}v[v[V>>2]+(q<<2)>>2]=j;v[V+4>>2]=v[V+4>>2]+1}b=b+1|0;if((k|0)!=(b|0)){continue}break}break Ua}a=v[p+8>>2];if(!(!l|((a|0)<0|!(a&2147483647)))){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,l)}a=v[p+24>>2];Xa:{if((a|0)<0|!(a&2147483647)){break Xa}a=v[p+16>>2];if(!a){break Xa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[p+40>>2];if((a|0)<0|!(a&2147483647)){continue}a=v[p+32>>2];if(!a){continue}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);continue}v[ha>>2]=v[ha>>2]+1;Ya:{if(!v[p+36>>2]){b=0;break Ya}Q=0;while(1){a=B(v[v[p+32>>2]+(Q<<2)>>2],12)+W|0;q=v[a>>2];v[p+96>>2]=q;A=v[a+4>>2];v[p+92>>2]=A;E=v[a+8>>2];v[p+88>>2]=E;b=0;a=0;j=0;o=0;G=0;Za:{_a:{$a:{ab:{bb:{cb:{db:{eb:{fb:{if(k){while(1){r=v[l+(b<<2)>>2];j=(r|0)==(q|0)|j;o=(r|0)==(E|0)|o;a=(r|0)==(A|0)|a;if(!(o&(j&a)&1)){b=b+1|0;if(k>>>0>b>>>0){continue}}break}G=a;if(j&1){break fb}}j=v[M>>2];b=0;gb:{a=v[M+4>>2];if(!a){break gb}while(1){if((q|0)==v[j+(b<<2)>>2]){break gb}b=b+1|0;if((a|0)!=(b|0)){continue}break}break eb}if((a|0)==(b|0)){break eb}a=G}if(a&1){break ab}break db}if(a>>>0<(v[M+8>>2]&2147483647)>>>0){break cb}pn(M,p+96|0);if(G&1){break ab}}q=v[M+4>>2];break bb}v[j+(a<<2)>>2]=q;q=v[M+4>>2]+1|0;v[M+4>>2]=q;if(G&1){break ab}}a=v[M>>2];b=0;hb:{ib:{if(!q){break ib}j=v[p+92>>2];while(1){if((j|0)==v[a+(b<<2)>>2]){break ib}b=b+1|0;if((q|0)!=(b|0)){continue}break}break hb}if((b|0)==(q|0)){break hb}break ab}if((v[M+8>>2]&2147483647)>>>0<=q>>>0){pn(M,p+92|0);if(!(o&1)){break $a}break Za}v[a+(q<<2)>>2]=v[p+92>>2];q=v[M+4>>2]+1|0;v[M+4>>2]=q;if(!(o&1)){break _a}break Za}if(o&1){break Za}}q=v[M+4>>2]}a=v[M>>2];b=0;jb:{kb:{if(!q){break kb}j=v[p+88>>2];while(1){if((j|0)==v[a+(b<<2)>>2]){break kb}b=b+1|0;if((q|0)!=(b|0)){continue}break}break jb}if((b|0)!=(q|0)){break Za}}if((v[M+8>>2]&2147483647)>>>0<=q>>>0){pn(M,p+88|0);break Za}v[a+(q<<2)>>2]=v[p+88>>2];v[M+4>>2]=v[M+4>>2]+1}b=v[p+36>>2];Q=Q+1|0;if(b>>>0>Q>>>0){continue}break}}if(!S){break Ta}v[p+96>>2]=b;a=v[S+4>>2];lb:{if(a>>>0>=(v[S+8>>2]&2147483647)>>>0){pn(S,p+96|0);break lb}v[v[S>>2]+(a<<2)>>2]=b;v[S+4>>2]=v[S+4>>2]+1}b=0;if(!v[p+36>>2]){break Ta}while(1){a=v[p+32>>2]+(b<<2)|0;j=v[S+4>>2];mb:{if(j>>>0>=(v[S+8>>2]&2147483647)>>>0){pn(S,a);break mb}v[v[S>>2]+(j<<2)>>2]=v[a>>2];v[S+4>>2]=v[S+4>>2]+1}b=b+1|0;if(b>>>0>2]){continue}break}}a=v[p+8>>2];nb:{if((a|0)<0|!(a&2147483647)){break nb}a=v[p>>2];if(!a){break nb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[p+24>>2];ob:{if((a|0)<0|!(a&2147483647)){break ob}a=v[p+16>>2];if(!a){break ob}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[p+40>>2];pb:{if((a|0)<0|!(a&2147483647)){break pb}a=v[p+32>>2];if(!a){break pb}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=0;if(m){continue}break}}a=v[p+52>>2];if(a){j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,a-4|0)}v[p+52>>2]=0;xa=p+112|0;qb:{if(!b){break qb}a=w[v[D+28>>2]+38|0];b=v[J+20>>2];rb:{if(!b){$=v[D>>2];q=v[J+12>>2];break rb}j=a-b|0;b=j&255;if(b){a=v[37696]+12|0;$=Ba[v[v[a>>2]+8>>2]](a,B(b,12),24422,8968,1056)|0;a=w[v[D+28>>2]+38|0]}sb:{if(!(a&255)){break sb}b=v[37696];k=b+12|0;s=(Ka=k,Ja=a&255,Ia=Ba[v[v[b>>2]+20>>2]](b)|0?35013:63804,Ha=8968,Ga=1057,Fa=v[v[k>>2]+8>>2],Ba[Fa](Ka|0,Ja|0,Ia|0,Ha|0,Ga|0)|0);if(!w[v[D+28>>2]+38|0]){break sb}a=0;while(1){n=0;tb:{ub:{vb:{k=v[J+20>>2];if(!k){break vb}b=v[J+16>>2];while(1){if(v[b+(n<<2)>>2]==(L|0)){break vb}n=n+1|0;if((k|0)!=(n|0)){continue}break}break ub}b=255;if((n|0)!=(k|0)){break tb}}b=B(a&255,12)+$|0;k=v[D>>2]+B(L,12)|0;z[b>>2]=z[k>>2];z[b+4>>2]=z[k+4>>2];z[b+8>>2]=z[k+8>>2];b=a;a=a+1|0}t[s+L|0]=b;L=L+1|0;if(L>>>0>2]+38|0]){continue}break}}q=v[J+12>>2];if(q){n=v[J+48>>2];while(1){k=n+4|0;l=v[n>>2];wb:{if(!l){break wb}b=0;n=0;if(l-1>>>0>=3){m=l&-4;a=0;while(1){o=n<<2;r=o+k|0;v[r>>2]=w[v[r>>2]+s|0];r=k+(o|4)|0;v[r>>2]=w[v[r>>2]+s|0];r=k+(o|8)|0;v[r>>2]=w[v[r>>2]+s|0];o=k+(o|12)|0;v[o>>2]=w[v[o>>2]+s|0];n=n+4|0;a=a+4|0;if((m|0)!=(a|0)){continue}break}}a=l&3;if(!a){break wb}while(1){o=k+(n<<2)|0;v[o>>2]=w[v[o>>2]+s|0];n=n+1|0;b=b+1|0;if((a|0)!=(b|0)){continue}break}}n=k+(l<<2)|0;P=P+1|0;if((P|0)!=(q|0)){continue}break}}if(s){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,s)}a=j}if(q>>>0>=256){n=0;b9(v[37696],32,8968,1095,72559,0);break qb}t[v[D+28>>2]+39|0]=q;s=0;xb:{if(!q){n=0;b=0;break xb}b=v[37696]+12|0;n=Ba[v[v[b>>2]+8>>2]](b,B(q,20),24422,8968,1101)|0;b=B(w[v[D+28>>2]+39|0],20)}v[D+4>>2]=n;J9(n,0,b);d4(D,J,v[D+36>>2],v[D+40>>2]);j=v[J+52>>2];if((j|0)!=(q|0)){b=v[37696];k=b+12|0;s=(Ga=k,Ha=j-q|0,Ia=Ba[v[v[b>>2]+20>>2]](b)|0?35013:63804,Ja=8968,Ka=1112,Fa=v[v[k>>2]+8>>2],Ba[Fa](Ga|0,Ha|0,Ia|0,Ja|0,Ka|0)|0)}v[D+8>>2]=s;if(q){P=v[D+4>>2];n=v[J+48>>2];b=v[J+32>>2];while(1){l=B(ka,20);k=l+P|0;u[k+16>>1]=s-v[D+8>>2];o=v[n>>2];t[k+18|0]=o;m=n+4|0;n=0;L=0;yb:{if(!o){P=0;break yb}while(1){j=v[m+(n<<2)>>2];zb:{if((j|0)!=255){t[s+L|0]=j;L=L+1|0;break zb}j=l+v[D+4>>2]|0;t[j+18|0]=w[j+18|0]-1}n=n+1|0;if((o|0)!=(n|0)){continue}break}k=l+v[D+4>>2]|0;P=w[k+18|0];if(!P|(!$|!s)){break yb}j=B(w[(s+P|0)-1|0],12)+$|0;N=z[j>>2];H=z[j+8>>2];I=z[j+4>>2];Y=C(0);n=0;ca=C(0);ea=C(0);U=C(0);Z=C(0);pa=C(0);while(1){j=B(w[n+s|0],12)+$|0;O=z[j>>2];R=z[j+4>>2];ea=C(C(C(N-O)*C(I+R))+ea);da=z[j+8>>2];ca=C(C(C(H-da)*C(N+O))+ca);Y=C(C(C(I-R)*C(H+da))+Y);pa=C(pa+da);Z=C(Z+R);U=C(U+O);N=O;H=da;I=R;n=n+1|0;if((P|0)!=(n|0)){continue}break}z[k+8>>2]=ea;z[k+4>>2]=ca;z[k>>2]=Y;I=C(K(C(C(ea*ea)+C(C(Y*Y)+C(ca*ca)))));if(I>C(0)){I=C(C(1)/I);ea=C(ea*I);z[k+8>>2]=ea;ca=C(ca*I);z[k+4>>2]=ca;Y=C(Y*I);z[k>>2]=Y}z[k+12>>2]=C(-C(C(pa*ea)+C(C(U*Y)+C(Z*ca))))/C(P>>>0)}j=b+4|0;G=v[b>>2];Ab:{if(!G){b=j;break Ab}U=C(0);I=C(0);Z=C(0);n=v[D>>2];b=v[D+40>>2]+B(v[j>>2],12)|0;r=n+B(v[b+4>>2],12)|0;A=n+B(v[b>>2],12)|0;N=z[A>>2];O=C(z[r>>2]-N);b=n+B(v[b+8>>2],12)|0;H=z[A+4>>2];R=C(z[b+4>>2]-H);da=C(z[b>>2]-N);H=C(z[r+4>>2]-H);N=C(C(O*R)-C(da*H));va=H;H=z[A+8>>2];Y=C(z[b+8>>2]-H);ca=R;R=C(z[r+8>>2]-H);H=C(C(va*Y)-C(ca*R));O=C(C(R*da)-C(Y*O));R=C(C(N*N)+C(C(H*H)+C(O*O)));if(R>C(0)){I=C(C(1)/C(K(R)));Z=C(N*I);U=C(H*I);I=C(O*I)}b=j+(G<<2)|0;if(!(C(C(Z*z[k+8>>2])+C(C(U*z[k>>2])+C(I*z[k+4>>2])))>2]=-z[k+8>>2];z[k+4>>2]=-z[k+4>>2];z[k>>2]=-z[k>>2];z[k+12>>2]=-z[k+12>>2];if(!s|P>>>0<2){break Ab}n=0;j=P>>>1|0;if((j|0)!=1){j=j&126;L=0;while(1){k=n+s|0;r=w[k|0];T=k;k=((n^-1)+P|0)+s|0;t[T|0]=w[k|0];t[k|0]=r;k=(n|1)+s|0;r=w[k|0];T=k;k=((P-n|0)+s|0)-2|0;t[T|0]=w[k|0];t[k|0]=r;n=n+2|0;L=L+2|0;if((j|0)!=(L|0)){continue}break}}if(!(P&2)){break Ab}j=n+s|0;k=w[j|0];r=j;j=((n^-1)+P|0)+s|0;t[r|0]=w[j|0];t[j|0]=k}P=v[D+4>>2];j=l+P|0;r=w[v[D+28>>2]+38|0];Bb:{if(!r){Z=z[j+8>>2];N=z[j+4>>2];H=z[j>>2];break Bb}I=z[j+12>>2];Z=z[j+8>>2];N=z[j+4>>2];H=z[j>>2];A=v[D>>2];n=0;while(1){k=A+B(n,12)|0;O=C(-C(C(Z*z[k+8>>2])+C(C(H*z[k>>2])+C(N*z[k+4>>2]))));if(O>2]=O;I=O}n=n+1|0;if((r|0)!=(n|0)){continue}break}}U=z[j+12>>2];if(C(C(C(z[J+8>>2]*Z)+C(C(z[J>>2]*H)+C(z[J+4>>2]*N)))+U)>C(0)){Cb:{if(!s){break Cb}j=w[j+18|0];if(j>>>0<2){break Cb}n=0;k=j>>>1|0;if((k|0)!=1){k=k&126;P=0;while(1){r=n+s|0;A=w[r|0];T=r;r=(j+(n^-1)|0)+s|0;t[T|0]=w[r|0];t[r|0]=A;r=(n|1)+s|0;A=w[r|0];T=r;r=((j-n|0)+s|0)-2|0;t[T|0]=w[r|0];t[r|0]=A;n=n+2|0;P=P+2|0;if((k|0)!=(P|0)){continue}break}}if(j&2){k=n+s|0;r=w[k|0];j=(j+(n^-1)|0)+s|0;t[k|0]=w[j|0];t[j|0]=r}P=v[D+4>>2];j=l+P|0;U=z[j+12>>2];Z=z[j+8>>2];N=z[j+4>>2];H=z[j>>2]}j=l+P|0;z[j+12>>2]=-U;z[j+8>>2]=-Z;z[j+4>>2]=-N;z[j>>2]=-H}n=m+(o<<2)|0;s=w[(l+P|0)+18|0]+s|0;ka=ka+1|0;if((ka|0)!=(q|0)){continue}break}}b=v[D>>2];if((b|0)!=($|0)){I9(b,$,B(a&255,12));if($){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,$)}t[v[D+28>>2]+38|0]=a}n=0;if(!b4(D,q,0)){break qb}Db:{if(!q){break Db}j=v[D+4>>2];k=w[v[D+28>>2]+38|0];if(k){b=v[D>>2];m=k&254;r=k&1;$=0;while(1){a=j+B($,20)|0;I=z[a+8>>2];N=z[a+4>>2];H=z[a>>2];U=C(34028234663852886e22);L=0;s=255;n=b;P=0;if((k|0)!=1){while(1){O=C(C(z[n+8>>2]*I)+C(C(z[n>>2]*H)+C(z[n+4>>2]*N)));l=O>2]*I)+C(C(z[n+12>>2]*H)+C(z[n+16>>2]*N)));O=l?O:U;o=R>2]*I)+C(C(z[n>>2]*H)+C(z[n+4>>2]*N)))>>0>=7){a=q&-8;s=0;while(1){t[(j+B(n,20)|0)+19|0]=255;t[(j+B(n|1,20)|0)+19|0]=255;t[(j+B(n|2,20)|0)+19|0]=255;t[(j+B(n|3,20)|0)+19|0]=255;t[(j+B(n|4,20)|0)+19|0]=255;t[(j+B(n|5,20)|0)+19|0]=255;t[(j+B(n|6,20)|0)+19|0]=255;t[(j+B(n|7,20)|0)+19|0]=255;n=n+8|0;s=s+8|0;if((a|0)!=(s|0)){continue}break}}a=q&7;if(!a){break Db}while(1){t[(j+B(n,20)|0)+19|0]=255;n=n+1|0;L=L+1|0;if((a|0)!=(L|0)){continue}break}}a=0;n=0;o=0;r=0;l=xa-16|0;xa=l;A=w[v[D+28>>2]+39|0];Eb:{if(!A){break Eb}b=v[D+4>>2];if(!b){break Eb}while(1){j=w[(b+B(a,20)|0)+18|0];if(j>>>0<=2){a=0;b9(v[37696],32,8968,1231,72696,0);break Eb}o=(j+o|0)-2|0;a=a+1|0;if((A|0)!=(a|0)){continue}break}Fb:{Gb:{b=(Fa=-1,Ka=Saa(o,0,12,0),Ja=Aa,Ja?Fa:Ka);if(!b){q=v[D>>2];b=0;break Gb}a=v[37696];j=Ba[v[v[a>>2]+20>>2]](a)|0?47365:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,j,8968,1237)|0;q=v[D>>2];A=w[v[D+28>>2]+39|0];if(A){break Gb}break Fb}E=v[D+4>>2];ga=v[D+8>>2];a=b;while(1){j=E+B(r,20)|0;s=w[j+18|0];T=s-2|0;if(T){m=ga+x[j+16>>1]|0;j=0;while(1){G=w[m|0];v[a>>2]=G;k=j+1|0;fa=w[m+((k>>>0)%(s>>>0)|0)|0];v[a+4>>2]=fa;S=w[m+((j+2>>>0)%(s>>>0)|0)|0];v[a+8>>2]=S;F=n;j=B(fa,12)+q|0;n=B(G,12)+q|0;I=z[n>>2];N=C(z[j>>2]-I);G=B(S,12)+q|0;H=z[n+4>>2];O=C(z[G+4>>2]-H);I=C(z[G>>2]-I);H=C(z[j+4>>2]-H);R=C(C(N*O)-C(I*H));da=C(R*R);U=H;H=z[n+8>>2];R=C(z[G+8>>2]-H);H=C(z[j+8>>2]-H);O=C(C(U*R)-C(O*H));I=C(C(H*I)-C(R*N));j=C(da+C(C(O*O)+C(I*I)))!=C(0);n=F+j|0;a=B(j,12)+a|0;j=k;if((T|0)!=(j|0)){continue}break}}r=r+1|0;if((A|0)!=(r|0)){continue}break}}a=v[D+40>>2];if(a){j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,a)}v[D+40>>2]=0;Hb:{if((n|0)==(o|0)){a=b;break Hb}Ib:{j=(Fa=-1,Ka=Saa(n,0,12,0),Ja=Aa,Ja?Fa:Ka);if(j){a=v[37696];k=Ba[v[v[a>>2]+20>>2]](a)|0?47365:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,j,k,8968,1298)|0;if(a){break Ib}}a=0;if(!b){break Eb}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,b);break Eb}I9(a,b,B(n,12));if(!b){break Hb}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,b)}v[D+36>>2]=n;v[D+40>>2]=a;d4(D,l,n,a);j=v[D+36>>2];if(j){m=v[D+40>>2];b=0;ca=z[l+8>>2];ea=z[l+4>>2];pa=z[l>>2];while(1){I=C(0);N=C(0);H=C(0);a=m+B(b,12)|0;r=v[a+4>>2];k=B(r,12)+q|0;n=B(v[a>>2],12)+q|0;O=z[n>>2];Y=C(z[k>>2]-O);A=v[a+8>>2];o=B(A,12)+q|0;R=z[n+4>>2];Z=C(z[o+4>>2]-R);qa=C(z[o>>2]-O);U=C(z[k+4>>2]-R);da=C(C(Y*Z)-C(qa*U));va=U;U=z[n+8>>2];Da=C(z[o+8>>2]-U);Ea=C(z[k+8>>2]-U);Z=C(C(va*Da)-C(Z*Ea));Y=C(C(Ea*qa)-C(Da*Y));qa=C(C(da*da)+C(C(Z*Z)+C(Y*Y)));if(qa>C(0)){N=C(C(1)/C(K(qa)));H=C(da*N);I=C(Z*N);N=C(Y*N)}if(C(C(C(ca*H)+C(C(pa*I)+C(N*ea)))-C(C(U*H)+C(C(O*I)+C(R*N))))>C(0)){v[a+4>>2]=A;v[a+8>>2]=r;j=v[D+36>>2]}b=b+1|0;if(j>>>0>b>>>0){continue}break}}a=1}xa=l+16|0;n=a}a=v[J+24>>2];Jb:{if((a|0)<0|!(a&2147483647)){break Jb}a=v[J+16>>2];if(!a){break Jb}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[J+40>>2];Kb:{if((a|0)<0|!(a&2147483647)){break Kb}a=v[J+32>>2];if(!a){break Kb}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[J+56>>2];Lb:{if((a|0)<0|!(a&2147483647)){break Lb}a=v[J+48>>2];if(!a){break Lb}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=J- -64|0;if(!n){break f}aa=c4(D)}xa=la+32|0;Mb:{if(!aa){b9(v[37696],32,9156,331,66591,0);break Mb}a=v[D+28>>2];v[d>>2]=w[a+38|0];v[h>>2]=w[a+39|0];a=Ba[v[v[c>>2]+8>>2]](c,B(v[d>>2],12),63958,9156,338)|0;v[e>>2]=a;I9(a,v[D>>2],B(v[d>>2],12));a=0;v[f>>2]=0;if(v[h>>2]){d=v[D+4>>2];b=0;while(1){b=w[(d+B(a,20)|0)+18|0]+b|0;v[f>>2]=b;a=a+1|0;if(a>>>0>2]){continue}break}a=b<<2}else{a=0}b=Ba[v[v[c>>2]+8>>2]](c,a,64072,9156,347)|0;v[g>>2]=b;if(v[f>>2]){d=v[D+8>>2];a=0;while(1){v[b+(a<<2)>>2]=w[a+d|0];a=a+1|0;if(a>>>0>2]){continue}break}}d=Ba[v[v[c>>2]+8>>2]](c,B(v[h>>2],20),14655,9156,353)|0;v[i>>2]=d;e=v[h>>2];if(e){f=v[D+4>>2];b=0;while(1){c=B(b,20);a=c+d|0;c=c+f|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+12>>2]=z[c+12>>2];u[a+16>>1]=w[c+18|0];u[a+18>>1]=x[c+16>>1];b=b+1|0;if((e|0)!=(b|0)){continue}break}}}f4(D);xa=wa+160|0;return aa|0}function Gv(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=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=0,u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=0,G=C(0),H=C(0),I=0,J=C(0),L=0,M=0,N=C(0),O=0,P=0,Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0);h=xa-944|0;xa=h;E=v[f>>2];p=a;R=v[a+40>>2];f=v[b+40>>2];Y=v[a+12>>2];x=v[a+8>>2];H=z[a+4>>2];v[h+812>>2]=0;v[h+804>>2]=x;v[h+808>>2]=Y;z[h+800>>2]=H;x=v[b+12>>2];a=v[b+8>>2];A=z[b+4>>2];v[h+796>>2]=0;v[h+788>>2]=a;v[h+792>>2]=x;z[h+784>>2]=A;z[h+768>>2]=z[e>>2];D=z[c+20>>2];y=z[c+24>>2];S=z[c>>2];Q=z[c+4>>2];N=z[c+8>>2];u=z[c+12>>2];o=z[c+16>>2];v[h+764>>2]=0;z[h+760>>2]=y;z[h+756>>2]=D;z[h+752>>2]=o;z[h+748>>2]=u;z[h+744>>2]=N;z[h+740>>2]=Q;z[h+736>>2]=S;n=z[d+20>>2];m=z[d+24>>2];J=z[d>>2];V=z[d+4>>2];T=z[d+8>>2];U=z[d+12>>2];j=z[d+16>>2];v[h+732>>2]=0;z[h+728>>2]=m;z[h+724>>2]=n;z[h+720>>2]=j;z[h+716>>2]=U;z[h+712>>2]=T;z[h+708>>2]=V;z[h+704>>2]=J;v[h+700>>2]=0;l=C(-J);G=C(o-j);D=C(D-n);o=C(y-m);n=C(C(C(l*G)-C(D*V))-C(T*o));m=C(C(U*U)+C(-.5));j=C(C(C(m*D)+C(U*C(C(J*o)-C(T*G))))-C(V*n));z[h+692>>2]=j+j;j=C(C(C(U*C(C(V*G)-C(J*D)))+C(m*o))-C(T*n));z[h+696>>2]=j+j;j=C(C(C(m*G)+C(U*C(C(T*D)-C(V*o))))-C(J*n));z[h+688>>2]=j+j;n=C(C(C(S*V)-C(J*Q))+C(C(N*U)-C(u*T)));z[h+680>>2]=n;j=C(C(C(Q*T)-C(V*N))+C(C(S*U)-C(u*J)));z[h+672>>2]=j;J=C(C(C(N*J)-C(T*S))+C(C(Q*U)-C(u*V)));z[h+676>>2]=J;u=C(C(u*U)-C(C(C(l*S)-C(Q*V))-C(T*N)));z[h+684>>2]=u;a=v[h+700>>2];v[h+664>>2]=v[h+696>>2];v[h+668>>2]=a;v[h+652>>2]=0;G=C(j+j);m=C(C(1)-C(j*G));D=C(J+J);y=C(J*D);z[h+648>>2]=m-y;l=C(n*D);j=C(u*G);z[h+644>>2]=l-j;v[h+636>>2]=0;z[h+632>>2]=l+j;j=C(n+n);o=C(n*j);z[h+628>>2]=m-o;a=v[h+692>>2];v[h+656>>2]=v[h+688>>2];v[h+660>>2]=a;n=C(n*G);m=C(u*D);z[h+640>>2]=n+m;l=C(J*G);j=C(u*j);z[h+624>>2]=l-j;v[h+620>>2]=0;z[h+616>>2]=n-m;z[h+612>>2]=l+j;z[h+608>>2]=C(C(1)-y)-o;d=w[E+64|0];ja=z[e+8>>2];J=C(ja*C(.05000000074505806));l=C(A*z[f+52>>2]);u=z[h+788>>2];j=C(z[f+56>>2]*u);l=j>=l?l:j;G=z[h+792>>2];j=C(z[f+60>>2]*G);j=C((j>=l?l:j)*C(.25));D=j>J?J:j;o=H;H=z[R+52>>2];j=C(o*H);A=z[R+56>>2];n=z[h+804>>2];l=C(A*n);o=j<=l?j:l;m=z[R+60>>2];y=z[h+808>>2];j=C(m*y);o=C((j>=o?o:j)*C(.25));o=o>J?J:o;o=o>D?D:o;z[h+592>>2]=o;if(d){j=C(o*C(.800000011920929));G=C(j*j);a=d;while(1){e=v[E+76>>2];a=a-1|0;r=e+B(a,48)|0;u=z[r+24>>2];A=z[r+40>>2];n=z[r+8>>2];m=z[r>>2];l=z[r+4>>2];j=C(z[h+664>>2]+C(C(z[h+648>>2]*n)+C(C(z[h+616>>2]*m)+C(l*z[h+632>>2]))));D=C(z[h+656>>2]+C(C(z[h+640>>2]*n)+C(C(z[h+608>>2]*m)+C(l*z[h+624>>2]))));y=z[r+16>>2];o=z[r+32>>2];n=C(z[h+660>>2]+C(C(z[h+644>>2]*n)+C(C(z[h+612>>2]*m)+C(l*z[h+628>>2]))));m=z[r+20>>2];l=z[r+36>>2];H=C(C(A*C(j-u))+C(C(C(D-y)*o)+C(C(n-m)*l)));j=C(u-C(j-C(A*H)));A=C(j*j);j=C(y-C(D-C(o*H)));o=C(j*j);j=C(m-C(n-C(l*H)));a:{if(G>2];v[r>>2]=v[e>>2];v[r+4>>2]=c;c=v[e+44>>2];v[r+40>>2]=v[e+40>>2];v[r+44>>2]=c;c=v[e+36>>2];v[r+32>>2]=v[e+32>>2];v[r+36>>2]=c;c=v[e+28>>2];v[r+24>>2]=v[e+24>>2];v[r+28>>2]=c;c=v[e+20>>2];v[r+16>>2]=v[e+16>>2];v[r+20>>2]=c;c=v[e+12>>2];v[r+8>>2]=v[e+8>>2];v[r+12>>2]=c;break a}z[r+44>>2]=H}if(a){continue}break}H=z[R+52>>2];r=w[E+64|0];G=z[h+792>>2];u=z[h+788>>2];A=z[R+56>>2];n=z[h+804>>2];l=C(A*n);m=z[R+60>>2];y=z[h+808>>2];j=C(m*y)}D=z[h+784>>2];ka=C(j*j);o=z[h+800>>2];j=C(H*o);z[h+576>>2]=K(C(ka+C(C(j*j)+C(l*l))));j=C(m*G);l=C(j*j);j=C(H*D);m=C(j*j);j=C(A*u);z[h+560>>2]=K(C(l+C(m+C(j*j))));b:{c:{if((d|0)==(r|0)){if(!o1(E,h+672|0,h+736|0,h+704|0,h+592|0,h+576|0,h+560|0)){break c}}a=v[h+748>>2];v[h+216>>2]=v[h+744>>2];v[h+220>>2]=a;a=v[h+716>>2];v[h+376>>2]=v[h+712>>2];v[h+380>>2]=a;a=v[h+700>>2];v[E+24>>2]=v[h+696>>2];v[E+28>>2]=a;a=v[h+740>>2];v[h+208>>2]=v[h+736>>2];v[h+212>>2]=a;a=v[h+708>>2];v[h+368>>2]=v[h+704>>2];v[h+372>>2]=a;a=v[h+692>>2];v[E+16>>2]=v[h+688>>2];v[E+20>>2]=a;a=v[h+684>>2];v[E+8>>2]=v[h+680>>2];v[E+12>>2]=a;a=v[h+676>>2];v[E>>2]=v[h+672>>2];v[E+4>>2]=a;a=v[h+220>>2];v[E+40>>2]=v[h+216>>2];v[E+44>>2]=a;a=v[h+212>>2];v[E+32>>2]=v[h+208>>2];v[E+36>>2]=a;a=v[h+372>>2];v[E+48>>2]=v[h+368>>2];v[E+52>>2]=a;a=v[h+380>>2];v[E+56>>2]=v[h+376>>2];v[E+60>>2]=a;a=0;c=0;d:{if(z[p+4>>2]!=C(1)){break d}c=0;if(z[p+8>>2]!=C(1)){break d}c=z[p+12>>2]==C(1)}a=z[b+4>>2]!=C(1)|z[b+8>>2]!=C(1)?a:z[b+12>>2]==C(1);P=h+656|0;x=v[p+16>>2];r=v[p+20>>2];e=v[p+28>>2];v[h+552>>2]=v[p+24>>2];v[h+556>>2]=e;v[h+544>>2]=x;v[h+548>>2]=r;r=v[b+16>>2];p=v[b+20>>2];e=v[b+28>>2];v[h+536>>2]=v[b+24>>2];v[h+540>>2]=e;v[h+528>>2]=r;v[h+532>>2]=p;j=z[R+32>>2];e=v[R+28>>2];b=v[R+24>>2];t[h+400|0]=0;v[h+396>>2]=0;v[h+512>>2]=R;v[h+380>>2]=0;z[h+376>>2]=j;v[h+368>>2]=b;v[h+372>>2]=e;v[h+520>>2]=v[R+40>>2]+B(w[R+39|0],20);t[h+524|0]=w[R+38|0];l=C(z[R+52>>2]*o);j=C(z[R+56>>2]*n);l=j>=l?l:j;j=C(z[R+60>>2]*y);j=j>=l?l:j;z[h+392>>2]=j*C(.02500000037252903);z[h+388>>2]=j*C(.05000000074505806);z[h+384>>2]=j*C(.10000000149011612);GV(h+800|0,h+544|0,h+416|0,h+464|0,h+368|0,c);v[h+516>>2]=v[R+44>>2];j=z[f+32>>2];e=v[f+28>>2];b=v[f+24>>2];t[h+240|0]=0;v[h+236>>2]=0;v[h+352>>2]=f;v[h+220>>2]=0;z[h+216>>2]=j;v[h+208>>2]=b;v[h+212>>2]=e;v[h+360>>2]=v[f+40>>2]+B(w[f+39|0],20);t[h+364|0]=w[f+38|0];l=C(z[f+52>>2]*z[h+784>>2]);j=C(z[f+56>>2]*z[h+788>>2]);l=j>=l?l:j;j=C(z[f+60>>2]*z[h+792>>2]);j=j>=l?l:j;z[h+232>>2]=j*C(.02500000037252903);z[h+228>>2]=j*C(.05000000074505806);z[h+224>>2]=j*C(.10000000149011612);GV(h+784|0,h+528|0,h+256|0,h+304|0,h+208|0,a);v[h+356>>2]=v[f+44>>2];v[h+168>>2]=0;v[h+172>>2]=0;v[h+160>>2]=0;v[h+164>>2]=0;v[h+152>>2]=0;v[h+156>>2]=0;v[h+144>>2]=0;v[h+148>>2]=0;v[h+136>>2]=0;v[h+140>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+192>>2]=0;if(c){b=v[h+596>>2];v[h+816>>2]=v[h+592>>2];v[h+820>>2]=b;b=v[h+604>>2];v[h+824>>2]=v[h+600>>2];v[h+828>>2]=b;b=v[h+780>>2];v[h+840>>2]=v[h+776>>2];v[h+844>>2]=b;b=v[h+772>>2];v[h+832>>2]=v[h+768>>2];v[h+836>>2]=b;b=v[h+628>>2];v[h+896>>2]=v[h+624>>2];v[h+900>>2]=b;b=v[h+620>>2];v[h+888>>2]=v[h+616>>2];v[h+892>>2]=b;b=v[h+636>>2];v[h+904>>2]=v[h+632>>2];v[h+908>>2]=b;b=v[h+644>>2];v[h+912>>2]=v[h+640>>2];v[h+916>>2]=b;b=v[h+652>>2];v[h+920>>2]=v[h+648>>2];v[h+924>>2]=b;b=v[h+660>>2];v[h+928>>2]=v[h+656>>2];v[h+932>>2]=b;b=v[h+668>>2];v[h+936>>2]=v[h+664>>2];v[h+940>>2]=b;b=v[h+612>>2];v[h+880>>2]=v[h+608>>2];v[h+884>>2]=b;m=z[h+884>>2];z[h+884>>2]=z[h+896>>2];v[h+864>>2]=144544;v[h+872>>2]=h+608;v[h+868>>2]=h+368;l=z[h+888>>2];j=z[h+904>>2];z[h+896>>2]=m;z[h+888>>2]=z[h+912>>2];z[h+904>>2]=z[h+916>>2];z[h+916>>2]=j;z[h+912>>2]=l;if(a){v[h+856>>2]=144404;v[h+860>>2]=h+208;I=E+67|0;L=E+71|0;k=h+128|0;i=xa-320|0;xa=i;R=h+856|0;s=v[R+4>>2];l=z[s+20>>2];M=h+864|0;Y=v[M+4>>2];j=z[Y+20>>2];S=z[h+832>>2];p=w[Y+32|0];Q=z[Y+16>>2];f=w[s+32|0];N=z[s+16>>2];v[i+28>>2]=0;ea=C((j>l?l:j)*C(.10000000149011612));e:{f:{g:{h:{i:{j:{e=w[E+66|0];if(e){P=v[M+8>>2];b=0;while(1){a=q<<2;c=w[q+I|0];v[a+(i+48|0)>>2]=c;x=a+(i+32|0)|0;a=w[q+L|0];v[x>>2]=a;c=v[Y+152>>2]+B(c,12)|0;_=z[c+8>>2];W=z[c>>2];X=z[c+4>>2];a=v[s+152>>2]+B(a,12)|0;U=z[a>>2];V=z[a+4>>2];T=z[a+8>>2];J=z[P+48>>2];H=z[P+32>>2];u=z[P>>2];G=z[P+16>>2];A=z[P+52>>2];D=z[P+36>>2];y=z[P+4>>2];o=z[P+20>>2];n=z[P+56>>2];m=z[P+40>>2];l=z[P+8>>2];j=z[P+24>>2];a=b;c=a<<4;x=c+(i+128|0)|0;v[x+12>>2]=0;r=c+(i- -64|0)|0;v[r+12>>2]=0;z[r+8>>2]=T;z[r+4>>2]=V;z[r>>2]=U;c=c+(i+192|0)|0;v[c+12>>2]=0;m=C(n+C(C(m*_)+C(C(l*W)+C(X*j))));z[x+8>>2]=m;l=C(A+C(C(D*_)+C(C(y*W)+C(X*o))));z[x+4>>2]=l;j=C(J+C(C(H*_)+C(C(u*W)+C(X*G))));z[x>>2]=j;m=C(m-T);z[c+8>>2]=m;l=C(l-V);z[c+4>>2]=l;j=C(j-U);z[c>>2]=j;b=a+1|0;q=q+1|0;if((e|0)!=(q|0)){continue}break}v[i+28>>2]=b;k:{l:{switch(a-1|0){case 0:n=z[i+200>>2];D=C(z[i+216>>2]-n);m=z[i+192>>2];y=C(z[i+208>>2]-m);l=z[i+196>>2];o=C(z[i+212>>2]-l);j=C(C(D*D)+C(C(y*y)+C(o*o)));if(!(j<=C(1.1920928955078125e-7))){break k}v[i+28>>2]=1;a=v[i+196>>2];v[i+304>>2]=v[i+192>>2];v[i+308>>2]=a;a=v[i+204>>2];v[i+312>>2]=v[i+200>>2];v[i+316>>2]=a;break i;case 1:jY(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}}Q_(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break i}v[i+316>>2]=0;j=C(F(C(C(C(C(C(-m)*y)-C(o*l))-C(n*D))/j),C(1)));j=j>C(0)?j:C(0);z[i+312>>2]=n+C(D*j);z[i+308>>2]=l+C(o*j);z[i+304>>2]=m+C(y*j);break i}m=z[P+8>>2];l=z[P>>2];j=z[P+4>>2];v[i+268>>2]=0;a=C(C(m*m)+C(C(l*l)+C(j*j)))>C(0);n=a?m:C(0);z[i+264>>2]=n;m=a?j:C(0);z[i+260>>2]=m;l=a?l:C(1);z[i+256>>2]=l;o=C(C(1)/C(K(C(C(n*n)+C(C(l*l)+C(m*m))))));Z=C(n*o);$=C(l*o);j=C(34028234663852886e22);A=C(m*o);break h}v[i+316>>2]=0;z[i+312>>2]=m;z[i+308>>2]=l;z[i+304>>2]=j}a=v[i+308>>2];v[i+256>>2]=v[i+304>>2];v[i+260>>2]=a;a=v[i+316>>2];v[i+264>>2]=v[i+312>>2];v[i+268>>2]=a;n=z[i+264>>2];l=z[i+256>>2];m=z[i+260>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));if(!(ea>2]=v[i+296>>2];a=v[i+292>>2];v[i+272>>2]=v[i+288>>2];v[i+276>>2]=a;c=v[M+8>>2];b=v[M+4>>2];U=z[i+268>>2];a=v[i+28>>2];T=z[M+48>>2];S=z[M+16>>2];Q=z[M+32>>2];N=z[M+52>>2];J=z[M+20>>2];H=z[M+36>>2];u=z[M+56>>2];o=z[M+24>>2];j=z[M+40>>2];v[i+316>>2]=0;D=l;l=C(-l);y=m;j=C(C(o*l)-C(j*m));o=n;z[i+312>>2]=j-C(u*n);z[i+308>>2]=C(C(J*l)-C(H*m))-C(N*n);z[i+304>>2]=C(C(S*l)-C(Q*m))-C(T*n);e=(i+48|0)+(a<<2)|0;a=IV(b,i+304|0);v[e>>2]=a;V=z[c+52>>2];T=z[c+20>>2];S=z[c+36>>2];Q=z[c+56>>2];a=v[b+152>>2]+B(a,12)|0;aa=z[a>>2];J=z[c+24>>2];ba=z[a+4>>2];H=z[c+40>>2];_=z[a+8>>2];N=z[c+48>>2];u=z[c+32>>2];n=z[c>>2];m=z[c+16>>2];l=z[c+4>>2];j=z[c+8>>2];c=(i+32|0)+(v[i+28>>2]<<2)|0;b=v[R+4>>2];a=IV(b,i+256|0);v[c>>2]=a;J=C(Q+C(C(H*_)+C(C(j*aa)+C(ba*J))));a=v[b+152>>2]+B(a,12)|0;H=z[a+8>>2];W=C(J-H);u=C(N+C(C(u*_)+C(C(n*aa)+C(ba*m))));n=z[a>>2];Q=C(u-n);m=C(V+C(C(S*_)+C(C(l*aa)+C(ba*T))));l=z[a+4>>2];N=C(m-l);j=C(C(Z*W)+C(C($*Q)+C(A*N)));if(j>X){x=0;if(!I){break e}r=v[i+28>>2];t[E+66|0]=r;if(!r){break e}b=0;if((r|0)!=1){e=r&-2;while(1){a=b<<2;c=i+48|0;t[b+I|0]=v[a+c>>2];f=a;a=i+32|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(r&1)){break e}a=b<<2;t[b+I|0]=v[a+(i+48|0)>>2];t[b+L|0]=v[a+(i+32|0)>>2];break e}p=v[i+28>>2];if(j>C(G*C(.9997749924659729))){m:{if(!I){break m}t[E+66|0]=p;if(!p){break m}q=0;if((p|0)!=1){c=p&-2;while(1){a=q<<2;b=i+48|0;t[q+I|0]=v[a+b>>2];e=a;a=i+32|0;t[q+L|0]=v[e+a>>2];f=q|1;e=f<<2;t[f+I|0]=v[b+e>>2];t[f+L|0]=v[a+e>>2];q=q+2|0;O=O+2|0;if((c|0)!=(O|0)){continue}break}}if(!(p&1)){break m}a=q<<2;t[q+I|0]=v[a+(i+48|0)>>2];t[q+L|0]=v[a+(i+32|0)>>2]}z[k+32>>2]=$;v[k+44>>2]=0;z[k+40>>2]=Z;z[k+36>>2]=A;JV(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,p);a=v[i+308>>2];v[k>>2]=v[i+304>>2];v[k+4>>2]=a;a=v[i+316>>2];v[k+8>>2]=v[i+312>>2];v[k+12>>2]=a;a=v[i+4>>2];v[k+16>>2]=v[i>>2];v[k+20>>2]=a;a=v[i+12>>2];v[k+24>>2]=v[i+8>>2];v[k+28>>2]=a;a=v[i+292>>2];v[k+68>>2]=v[i+288>>2];v[k+72>>2]=a;v[k+76>>2]=v[i+296>>2];z[k+64>>2]=G;x=2;break e}a=p<<4;b=a+(i+128|0)|0;v[b+12>>2]=0;z[b+8>>2]=J;z[b+4>>2]=m;z[b>>2]=u;b=a+(i- -64|0)|0;v[b+12>>2]=0;z[b+8>>2]=H;z[b+4>>2]=l;z[b>>2]=n;a=a+(i+192|0)|0;v[a+12>>2]=0;z[a+8>>2]=W;z[a+4>>2]=N;z[a>>2]=Q;v[i+28>>2]=p+1;n:{o:{switch(p-1|0){case 0:n=z[i+200>>2];H=C(z[i+216>>2]-n);m=z[i+192>>2];u=C(z[i+208>>2]-m);l=z[i+196>>2];A=C(z[i+212>>2]-l);j=C(C(H*H)+C(C(u*u)+C(A*A)));if(j<=C(1.1920928955078125e-7)){v[i+28>>2]=1;a=v[i+196>>2];v[i+304>>2]=v[i+192>>2];v[i+308>>2]=a;a=v[i+204>>2];v[i+312>>2]=v[i+200>>2];v[i+316>>2]=a;break n}v[i+316>>2]=0;j=C(F(C(C(C(C(C(-m)*u)-C(A*l))-C(n*H))/j),C(1)));j=j>C(0)?j:C(0);z[i+312>>2]=n+C(H*j);z[i+308>>2]=l+C(A*j);z[i+304>>2]=m+C(u*j);break n;case 1:jY(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:Q_(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}}v[i+316>>2]=0;z[i+312>>2]=W;z[i+308>>2]=N;z[i+304>>2]=Q}a=v[i+308>>2];v[i+256>>2]=v[i+304>>2];v[i+260>>2]=a;a=v[i+316>>2];v[i+264>>2]=v[i+312>>2];v[i+268>>2]=a;n=z[i+264>>2];l=z[i+256>>2];m=z[i+260>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));u=C(C(1)/j);Z=C(n*u);A=C(m*u);$=C(l*u);if(jea){continue}break}q=v[i+28>>2];if(!(j>2];f=a;a=i+32|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(r&1)){break p}a=b<<2;t[b+I|0]=v[a+(i+48|0)>>2];t[b+L|0]=v[a+(i+32|0)>>2]}v[i+296>>2]=v[i+280>>2];a=v[i+276>>2];v[i+288>>2]=v[i+272>>2];v[i+292>>2]=a;z[i+268>>2]=U;z[i+256>>2]=D;z[i+260>>2]=y;z[i+264>>2]=o;JV(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,q);v[k+60>>2]=0;z[k+56>>2]=Z;z[k+52>>2]=A;z[k+48>>2]=$;v[k+44>>2]=0;j=C(C(1)/G);z[k+40>>2]=o*j;z[k+36>>2]=y*j;z[k+32>>2]=D*j;a=v[i+308>>2];v[k>>2]=v[i+304>>2];v[k+4>>2]=a;a=v[i+316>>2];v[k+8>>2]=v[i+312>>2];v[k+12>>2]=a;a=v[i+4>>2];v[k+16>>2]=v[i>>2];v[k+20>>2]=a;a=v[i+12>>2];v[k+24>>2]=v[i+8>>2];v[k+28>>2]=a;z[k+64>>2]=G;a=v[i+276>>2];v[k+68>>2]=v[i+272>>2];v[k+72>>2]=a;v[k+76>>2]=v[i+280>>2];x=4;break e}if(I){break f}x=5;break e}q=v[i+28>>2]}t[E+66|0]=q;x=5;if(!q){break e}b=0;if((q|0)!=1){e=q&-2;while(1){a=b<<2;c=i+48|0;t[b+I|0]=v[a+c>>2];f=a;a=i+32|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(q&1)){break e}a=b<<2;t[b+I|0]=v[a+(i+48|0)>>2];t[b+L|0]=v[a+(i+32|0)>>2]}xa=i+320|0;a=v[h+828>>2];v[h+24>>2]=v[h+824>>2];v[h+28>>2]=a;a=v[h+820>>2];v[h+16>>2]=v[h+816>>2];v[h+20>>2]=a;a=v[h+836>>2];v[h>>2]=v[h+832>>2];v[h+4>>2]=a;a=v[h+844>>2];v[h+8>>2]=v[h+840>>2];v[h+12>>2]=a;a=P1(M,R,h+736|0,h+704|0,h+608|0,x,k,E,g,d,h+16|0,h,1,1,ja);break b}v[h+856>>2]=141216;v[h+860>>2]=h+208;q=E+67|0;I=E+71|0;k=h+128|0;b=0;i=xa-320|0;xa=i;R=h+856|0;M=v[R+4>>2];l=z[M+20>>2];L=h+864|0;Y=v[L+4>>2];j=z[Y+20>>2];$=z[h+832>>2];p=w[Y+32|0];aa=z[Y+16>>2];f=w[M+32|0];ba=z[M+16>>2];v[i+28>>2]=0;ia=C((j>l?l:j)*C(.10000000149011612));q:{r:{s:{t:{u:{v:{e=w[E+66|0];if(e){s=v[L+8>>2];while(1){a=O<<2;c=w[q+O|0];v[a+(i+48|0)>>2]=c;x=a+(i+32|0)|0;a=w[I+O|0];v[x>>2]=a;c=v[Y+152>>2]+B(c,12)|0;ha=z[c+8>>2];ca=z[c>>2];da=z[c+4>>2];a=v[M+152>>2]+B(a,12)|0;fa=z[a+8>>2];ga=z[a>>2];Z=z[a+4>>2];_=z[s+48>>2];ea=z[s+32>>2];W=z[s>>2];X=z[s+16>>2];U=z[s+52>>2];V=z[s+36>>2];T=z[s+4>>2];S=z[s+20>>2];Q=z[s+56>>2];N=z[s+40>>2];J=z[s+8>>2];H=z[s+24>>2];u=z[M+80>>2];G=z[M+48>>2];A=z[M+64>>2];D=z[M+84>>2];o=z[M+52>>2];n=z[M+68>>2];m=z[M+88>>2];l=z[M+56>>2];j=z[M+72>>2];a=b;c=a<<4;x=c+(i+128|0)|0;v[x+12>>2]=0;r=c+(i- -64|0)|0;v[r+12>>2]=0;c=c+(i+192|0)|0;v[c+12>>2]=0;y=C(C(m*fa)+C(C(l*ga)+C(Z*j)));z[r+8>>2]=y;o=C(C(D*fa)+C(C(o*ga)+C(Z*n)));z[r+4>>2]=o;n=C(C(u*fa)+C(C(G*ga)+C(Z*A)));z[r>>2]=n;m=C(Q+C(C(N*ha)+C(C(J*ca)+C(da*H))));z[x+8>>2]=m;l=C(U+C(C(V*ha)+C(C(T*ca)+C(da*S))));z[x+4>>2]=l;j=C(_+C(C(ea*ha)+C(C(W*ca)+C(da*X))));z[x>>2]=j;m=C(m-y);z[c+8>>2]=m;l=C(l-o);z[c+4>>2]=l;j=C(j-n);z[c>>2]=j;b=a+1|0;O=O+1|0;if((e|0)!=(O|0)){continue}break}v[i+28>>2]=b;w:{x:{switch(a-1|0){case 0:n=z[i+200>>2];D=C(z[i+216>>2]-n);m=z[i+192>>2];y=C(z[i+208>>2]-m);l=z[i+196>>2];o=C(z[i+212>>2]-l);j=C(C(D*D)+C(C(y*y)+C(o*o)));if(!(j<=C(1.1920928955078125e-7))){break w}v[i+28>>2]=1;a=v[i+196>>2];v[i+304>>2]=v[i+192>>2];v[i+308>>2]=a;a=v[i+204>>2];v[i+312>>2]=v[i+200>>2];v[i+316>>2]=a;break u;case 1:jY(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}}Q_(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break u}v[i+316>>2]=0;j=C(F(C(C(C(C(C(-m)*y)-C(o*l))-C(n*D))/j),C(1)));j=j>C(0)?j:C(0);z[i+312>>2]=n+C(D*j);z[i+308>>2]=l+C(o*j);z[i+304>>2]=m+C(y*j);break u}m=z[P+8>>2];l=z[P>>2];j=z[P+4>>2];v[i+268>>2]=0;a=C(C(m*m)+C(C(l*l)+C(j*j)))>C(0);n=a?m:C(0);z[i+264>>2]=n;m=a?j:C(0);z[i+260>>2]=m;l=a?l:C(1);z[i+256>>2]=l;o=C(C(1)/C(K(C(C(n*n)+C(C(l*l)+C(m*m))))));la=C(n*o);ma=C(l*o);j=C(34028234663852886e22);A=C(m*o);break t}v[i+316>>2]=0;z[i+312>>2]=m;z[i+308>>2]=l;z[i+304>>2]=j}a=v[i+308>>2];v[i+256>>2]=v[i+304>>2];v[i+260>>2]=a;a=v[i+316>>2];v[i+264>>2]=v[i+312>>2];v[i+268>>2]=a;n=z[i+264>>2];l=z[i+256>>2];m=z[i+260>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));if(!(ia>2]=v[i+296>>2];a=v[i+292>>2];v[i+272>>2]=v[i+288>>2];v[i+276>>2]=a;e=v[L+8>>2];b=v[L+4>>2];da=z[i+268>>2];a=v[i+28>>2];S=z[L+48>>2];Q=z[L+16>>2];N=z[L+32>>2];J=z[L+52>>2];H=z[L+20>>2];u=z[L+36>>2];y=z[L+56>>2];o=z[L+24>>2];j=z[L+40>>2];v[i+316>>2]=0;na=o;o=C(-l);D=m;ka=y;y=n;z[i+312>>2]=C(C(na*o)-C(j*m))-C(ka*n);z[i+308>>2]=C(C(H*o)-C(u*m))-C(J*n);z[i+304>>2]=C(C(Q*o)-C(N*m))-C(S*n);f=(i+48|0)+(a<<2)|0;c=i+304|0;a=IV(b,c);v[f>>2]=a;fa=z[e+52>>2];ga=z[e+20>>2];Z=z[e+36>>2];$=z[e+56>>2];a=v[b+152>>2]+B(a,12)|0;oa=z[a>>2];aa=z[e+24>>2];na=z[a+4>>2];ba=z[e+40>>2];ha=z[a+8>>2];_=z[e+48>>2];ea=z[e+32>>2];W=z[e>>2];X=z[e+16>>2];U=z[e+4>>2];V=z[e+8>>2];a=v[i+28>>2];e=v[R+4>>2];T=z[e+56>>2];S=z[e+52>>2];Q=z[e+72>>2];b=e- -64|0;N=z[b>>2];J=z[e+68>>2];H=z[e+88>>2];o=z[e+80>>2];u=z[e+84>>2];j=z[e+48>>2];v[i+316>>2]=0;ka=o;o=l;z[i+312>>2]=C(H*n)+C(C(ka*l)+C(m*u));z[i+308>>2]=C(Q*n)+C(C(N*l)+C(m*J));z[i+304>>2]=C(T*n)+C(C(j*l)+C(m*S));f=(i+32|0)+(a<<2)|0;a=IV(e,c);v[f>>2]=a;J=C($+C(C(ba*ha)+C(C(V*oa)+C(na*aa))));a=v[e+152>>2]+B(a,12)|0;N=z[a+8>>2];l=z[a>>2];j=z[a+4>>2];H=C(C(z[e+88>>2]*N)+C(C(z[e+56>>2]*l)+C(j*z[e+72>>2])));S=C(J-H);u=C(_+C(C(ea*ha)+C(C(W*oa)+C(na*X))));n=C(C(z[e+80>>2]*N)+C(C(z[e+48>>2]*l)+C(j*z[b>>2])));Q=C(u-n);m=C(fa+C(C(Z*ha)+C(C(U*oa)+C(na*ga))));l=C(C(z[e+84>>2]*N)+C(C(z[e+52>>2]*l)+C(j*z[e+68>>2])));N=C(m-l);j=C(C(la*S)+C(C(ma*Q)+C(A*N)));if(j>ca){b=0;if(!q){break q}r=v[i+28>>2];t[E+66|0]=r;if(!r){break q}s=0;if((r|0)!=1){e=r&-2;O=0;while(1){a=s<<2;c=i+48|0;t[q+s|0]=v[a+c>>2];f=a;a=i+32|0;t[s+I|0]=v[f+a>>2];p=s|1;f=p<<2;t[q+p|0]=v[c+f>>2];t[p+I|0]=v[a+f>>2];s=s+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(r&1)){break q}a=s<<2;t[q+s|0]=v[a+(i+48|0)>>2];t[s+I|0]=v[a+(i+32|0)>>2];break q}p=v[i+28>>2];if(j>C(G*C(.9997749924659729))){y:{if(!q){break y}t[E+66|0]=p;if(!p){break y}x=0;if((p|0)!=1){c=p&-2;r=0;while(1){a=x<<2;b=i+48|0;t[q+x|0]=v[a+b>>2];e=a;a=i+32|0;t[x+I|0]=v[e+a>>2];f=x|1;e=f<<2;t[f+q|0]=v[b+e>>2];t[f+I|0]=v[a+e>>2];x=x+2|0;r=r+2|0;if((c|0)!=(r|0)){continue}break}}if(!(p&1)){break y}a=x<<2;t[q+x|0]=v[a+(i+48|0)>>2];t[x+I|0]=v[a+(i+32|0)>>2]}z[k+32>>2]=ma;v[k+44>>2]=0;z[k+40>>2]=la;z[k+36>>2]=A;JV(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,p);a=v[i+308>>2];v[k>>2]=v[i+304>>2];v[k+4>>2]=a;a=v[i+316>>2];v[k+8>>2]=v[i+312>>2];v[k+12>>2]=a;a=v[i+4>>2];v[k+16>>2]=v[i>>2];v[k+20>>2]=a;a=v[i+12>>2];v[k+24>>2]=v[i+8>>2];v[k+28>>2]=a;a=v[i+292>>2];v[k+68>>2]=v[i+288>>2];v[k+72>>2]=a;v[k+76>>2]=v[i+296>>2];z[k+64>>2]=G;b=2;break q}a=p<<4;b=a+(i+128|0)|0;v[b+12>>2]=0;z[b+8>>2]=J;z[b+4>>2]=m;z[b>>2]=u;b=a+(i- -64|0)|0;v[b+12>>2]=0;z[b+8>>2]=H;z[b+4>>2]=l;z[b>>2]=n;a=a+(i+192|0)|0;v[a+12>>2]=0;z[a+8>>2]=S;z[a+4>>2]=N;z[a>>2]=Q;v[i+28>>2]=p+1;z:{A:{switch(p-1|0){case 0:n=z[i+200>>2];H=C(z[i+216>>2]-n);m=z[i+192>>2];u=C(z[i+208>>2]-m);l=z[i+196>>2];A=C(z[i+212>>2]-l);j=C(C(H*H)+C(C(u*u)+C(A*A)));if(j<=C(1.1920928955078125e-7)){v[i+28>>2]=1;a=v[i+196>>2];v[i+304>>2]=v[i+192>>2];v[i+308>>2]=a;a=v[i+204>>2];v[i+312>>2]=v[i+200>>2];v[i+316>>2]=a;break z}v[i+316>>2]=0;j=C(F(C(C(C(C(C(-m)*u)-C(A*l))-C(n*H))/j),C(1)));j=j>C(0)?j:C(0);z[i+312>>2]=n+C(H*j);z[i+308>>2]=l+C(A*j);z[i+304>>2]=m+C(u*j);break z;case 1:jY(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:Q_(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}}v[i+316>>2]=0;z[i+312>>2]=S;z[i+308>>2]=N;z[i+304>>2]=Q}a=v[i+308>>2];v[i+256>>2]=v[i+304>>2];v[i+260>>2]=a;a=v[i+316>>2];v[i+264>>2]=v[i+312>>2];v[i+268>>2]=a;n=z[i+264>>2];l=z[i+256>>2];m=z[i+260>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));u=C(C(1)/j);la=C(n*u);A=C(m*u);ma=C(l*u);if(jia){continue}break}x=v[i+28>>2];if(!(j>2];e=a;a=i+32|0;t[s+I|0]=v[e+a>>2];f=s|1;e=f<<2;t[f+q|0]=v[b+e>>2];t[f+I|0]=v[a+e>>2];s=s+2|0;r=r+2|0;if((c|0)!=(r|0)){continue}break}}if(!(p&1)){break B}a=s<<2;t[q+s|0]=v[a+(i+48|0)>>2];t[s+I|0]=v[a+(i+32|0)>>2]}v[i+296>>2]=v[i+280>>2];a=v[i+276>>2];v[i+288>>2]=v[i+272>>2];v[i+292>>2]=a;z[i+268>>2]=da;z[i+256>>2]=o;z[i+260>>2]=D;z[i+264>>2]=y;JV(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,x);v[k+60>>2]=0;z[k+56>>2]=la;z[k+52>>2]=A;z[k+48>>2]=ma;v[k+44>>2]=0;j=C(C(1)/G);z[k+40>>2]=y*j;z[k+36>>2]=D*j;z[k+32>>2]=o*j;a=v[i+308>>2];v[k>>2]=v[i+304>>2];v[k+4>>2]=a;a=v[i+316>>2];v[k+8>>2]=v[i+312>>2];v[k+12>>2]=a;a=v[i+4>>2];v[k+16>>2]=v[i>>2];v[k+20>>2]=a;a=v[i+12>>2];v[k+24>>2]=v[i+8>>2];v[k+28>>2]=a;z[k+64>>2]=G;a=v[i+276>>2];v[k+68>>2]=v[i+272>>2];v[k+72>>2]=a;v[k+76>>2]=v[i+280>>2];b=4;break q}if(q){break r}b=5;break q}x=v[i+28>>2]}t[E+66|0]=x;b=5;if(!x){break q}s=0;if((x|0)!=1){e=x&-2;O=0;while(1){a=s<<2;c=i+48|0;t[q+s|0]=v[a+c>>2];f=a;a=i+32|0;t[s+I|0]=v[f+a>>2];p=s|1;f=p<<2;t[q+p|0]=v[c+f>>2];t[p+I|0]=v[a+f>>2];s=s+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(x&1)){break q}a=s<<2;t[q+s|0]=v[a+(i+48|0)>>2];t[s+I|0]=v[a+(i+32|0)>>2]}xa=i+320|0;a=v[h+828>>2];v[h+56>>2]=v[h+824>>2];v[h+60>>2]=a;a=v[h+820>>2];v[h+48>>2]=v[h+816>>2];v[h+52>>2]=a;a=v[h+836>>2];v[h+32>>2]=v[h+832>>2];v[h+36>>2]=a;a=v[h+844>>2];v[h+40>>2]=v[h+840>>2];v[h+44>>2]=a;a=P1(L,R,h+736|0,h+704|0,h+608|0,b,k,E,g,d,h+48|0,h+32|0,1,0,ja);break b}b=v[h+596>>2];v[h+816>>2]=v[h+592>>2];v[h+820>>2]=b;b=v[h+604>>2];v[h+824>>2]=v[h+600>>2];v[h+828>>2]=b;b=v[h+780>>2];v[h+840>>2]=v[h+776>>2];v[h+844>>2]=b;b=v[h+772>>2];v[h+832>>2]=v[h+768>>2];v[h+836>>2]=b;b=v[h+628>>2];v[h+896>>2]=v[h+624>>2];v[h+900>>2]=b;b=v[h+620>>2];v[h+888>>2]=v[h+616>>2];v[h+892>>2]=b;b=v[h+636>>2];v[h+904>>2]=v[h+632>>2];v[h+908>>2]=b;b=v[h+644>>2];v[h+912>>2]=v[h+640>>2];v[h+916>>2]=b;b=v[h+652>>2];v[h+920>>2]=v[h+648>>2];v[h+924>>2]=b;b=v[h+660>>2];v[h+928>>2]=v[h+656>>2];v[h+932>>2]=b;b=v[h+668>>2];v[h+936>>2]=v[h+664>>2];v[h+940>>2]=b;b=v[h+612>>2];v[h+880>>2]=v[h+608>>2];v[h+884>>2]=b;m=z[h+884>>2];z[h+884>>2]=z[h+896>>2];v[h+864>>2]=141516;v[h+872>>2]=h+608;v[h+868>>2]=h+368;l=z[h+888>>2];j=z[h+904>>2];z[h+896>>2]=m;z[h+888>>2]=z[h+912>>2];z[h+904>>2]=z[h+916>>2];z[h+916>>2]=j;z[h+912>>2]=l;if(a){v[h+856>>2]=144404;v[h+860>>2]=h+208;I=E+67|0;L=E+71|0;q=h+128|0;k=xa-320|0;xa=k;R=h+856|0;s=v[R+4>>2];l=z[s+20>>2];Y=h+864|0;M=v[Y+4>>2];j=z[M+20>>2];aa=z[h+832>>2];p=w[M+32|0];ba=z[M+16>>2];f=w[s+32|0];_=z[s+16>>2];v[k+44>>2]=0;fa=C((j>l?l:j)*C(.10000000149011612));C:{D:{E:{F:{G:{H:{e=w[E+66|0];if(e){P=v[Y+8>>2];b=0;while(1){a=O<<2;c=w[I+O|0];v[a+(k- -64|0)>>2]=c;x=a+(k+48|0)|0;a=w[L+O|0];v[x>>2]=a;c=v[M+152>>2]+B(c,12)|0;ia=z[c+8>>2];ca=z[c>>2];da=z[c+4>>2];a=v[s+152>>2]+B(a,12)|0;ga=z[a>>2];Z=z[a+4>>2];$=z[a+8>>2];ea=z[P+48>>2];W=z[P+32>>2];X=z[P>>2];U=z[P+16>>2];V=z[P+52>>2];T=z[P+36>>2];S=z[P+4>>2];Q=z[P+20>>2];N=z[P+56>>2];J=z[P+40>>2];H=z[M+88>>2];u=z[M+56>>2];G=z[M+72>>2];A=z[P+8>>2];D=z[M+80>>2];y=z[M+48>>2];o=z[M+64>>2];n=z[P+24>>2];m=z[M+84>>2];l=z[M+52>>2];j=z[M+68>>2];a=b;c=a<<4;x=c+(k+144|0)|0;v[x+12>>2]=0;r=c+(k+80|0)|0;v[r+12>>2]=0;z[r+8>>2]=$;z[r+4>>2]=Z;z[r>>2]=ga;c=c+(k+208|0)|0;v[c+12>>2]=0;G=C(C(H*ia)+C(C(u*ca)+C(da*G)));o=C(C(D*ia)+C(C(y*ca)+C(da*o)));j=C(C(m*ia)+C(C(l*ca)+C(da*j)));m=C(N+C(C(J*G)+C(C(A*o)+C(n*j))));z[x+8>>2]=m;l=C(V+C(C(T*G)+C(C(S*o)+C(j*Q))));z[x+4>>2]=l;j=C(ea+C(C(W*G)+C(C(X*o)+C(j*U))));z[x>>2]=j;m=C(m-$);z[c+8>>2]=m;l=C(l-Z);z[c+4>>2]=l;j=C(j-ga);z[c>>2]=j;b=a+1|0;O=O+1|0;if((e|0)!=(O|0)){continue}break}v[k+44>>2]=b;I:{J:{switch(a-1|0){case 0:n=z[k+216>>2];D=C(z[k+232>>2]-n);m=z[k+208>>2];y=C(z[k+224>>2]-m);l=z[k+212>>2];o=C(z[k+228>>2]-l);j=C(C(D*D)+C(C(y*y)+C(o*o)));if(!(j<=C(1.1920928955078125e-7))){break I}v[k+44>>2]=1;a=v[k+212>>2];v[k+16>>2]=v[k+208>>2];v[k+20>>2]=a;a=v[k+220>>2];v[k+24>>2]=v[k+216>>2];v[k+28>>2]=a;break G;case 1:jY(k+16|0,k+208|0,k+144|0,k+80|0,k- -64|0,k+48|0,k+44|0);break G;case 2:break J;default:break H}}Q_(k+16|0,k+208|0,k+144|0,k+80|0,k- -64|0,k+48|0,k+44|0);break G}v[k+28>>2]=0;j=C(F(C(C(C(C(C(-m)*y)-C(o*l))-C(n*D))/j),C(1)));j=j>C(0)?j:C(0);z[k+24>>2]=n+C(D*j);z[k+20>>2]=l+C(o*j);z[k+16>>2]=m+C(y*j);break G}m=z[P+8>>2];l=z[P>>2];j=z[P+4>>2];v[k+284>>2]=0;a=C(C(m*m)+C(C(l*l)+C(j*j)))>C(0);n=a?m:C(0);z[k+280>>2]=n;m=a?j:C(0);z[k+276>>2]=m;l=a?l:C(1);z[k+272>>2]=l;o=C(C(1)/C(K(C(C(n*n)+C(C(l*l)+C(m*m))))));W=C(n*o);X=C(l*o);j=C(34028234663852886e22);A=C(m*o);break F}v[k+28>>2]=0;z[k+24>>2]=m;z[k+20>>2]=l;z[k+16>>2]=j}a=v[k+20>>2];v[k+272>>2]=v[k+16>>2];v[k+276>>2]=a;a=v[k+28>>2];v[k+280>>2]=v[k+24>>2];v[k+284>>2]=a;n=z[k+280>>2];l=z[k+272>>2];m=z[k+276>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));if(!(fa>2]=v[k+312>>2];a=v[k+308>>2];v[k+288>>2]=v[k+304>>2];v[k+292>>2]=a;H=z[k+284>>2];v[k+12>>2]=0;D=n;z[k+8>>2]=-n;y=m;z[k+4>>2]=-m;o=l;z[k>>2]=-l;WW(k+16|0,Y,k,(k- -64|0)+(v[k+44>>2]<<2)|0);u=z[k+28>>2];U=z[k+24>>2];V=z[k+16>>2];T=z[k+20>>2];c=(k+48|0)+(v[k+44>>2]<<2)|0;b=v[R+4>>2];a=IV(b,k+272|0);v[c>>2]=a;a=v[b+152>>2]+B(a,12)|0;n=z[a+8>>2];S=C(U-n);m=z[a>>2];Q=C(V-m);l=z[a+4>>2];N=C(T-l);j=C(C(W*S)+C(C(X*Q)+C(A*N)));if(j>J){x=0;if(!I){break C}r=v[k+44>>2];t[E+66|0]=r;if(!r){break C}b=0;if((r|0)!=1){e=r&-2;O=0;while(1){a=b<<2;c=k- -64|0;t[b+I|0]=v[a+c>>2];f=a;a=k+48|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(r&1)){break C}a=b<<2;t[b+I|0]=v[a+(k- -64|0)>>2];t[b+L|0]=v[a+(k+48|0)>>2];break C}p=v[k+44>>2];if(j>C(G*C(.9997749924659729))){K:{if(!I){break K}t[E+66|0]=p;if(!p){break K}s=0;if((p|0)!=1){c=p&-2;x=0;while(1){a=s<<2;b=k- -64|0;t[s+I|0]=v[a+b>>2];e=a;a=k+48|0;t[s+L|0]=v[e+a>>2];f=s|1;e=f<<2;t[f+I|0]=v[b+e>>2];t[f+L|0]=v[a+e>>2];s=s+2|0;x=x+2|0;if((c|0)!=(x|0)){continue}break}}if(!(p&1)){break K}a=s<<2;t[s+I|0]=v[a+(k- -64|0)>>2];t[s+L|0]=v[a+(k+48|0)>>2]}z[q+32>>2]=X;v[q+44>>2]=0;z[q+40>>2]=W;z[q+36>>2]=A;JV(k+208|0,k+144|0,k+80|0,k+272|0,k+16|0,k,p);a=v[k+20>>2];v[q>>2]=v[k+16>>2];v[q+4>>2]=a;a=v[k+28>>2];v[q+8>>2]=v[k+24>>2];v[q+12>>2]=a;a=v[k+4>>2];v[q+16>>2]=v[k>>2];v[q+20>>2]=a;a=v[k+12>>2];v[q+24>>2]=v[k+8>>2];v[q+28>>2]=a;a=v[k+308>>2];v[q+68>>2]=v[k+304>>2];v[q+72>>2]=a;v[q+76>>2]=v[k+312>>2];z[q+64>>2]=G;x=2;break C}a=p<<4;b=a+(k+144|0)|0;z[b+12>>2]=u;z[b+8>>2]=U;z[b+4>>2]=T;z[b>>2]=V;b=a+(k+80|0)|0;v[b+12>>2]=0;z[b+8>>2]=n;z[b+4>>2]=l;z[b>>2]=m;a=a+(k+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=S;z[a+4>>2]=N;z[a>>2]=Q;v[k+44>>2]=p+1;L:{M:{switch(p-1|0){case 0:n=z[k+216>>2];N=C(z[k+232>>2]-n);m=z[k+208>>2];u=C(z[k+224>>2]-m);l=z[k+212>>2];A=C(z[k+228>>2]-l);j=C(C(N*N)+C(C(u*u)+C(A*A)));if(j<=C(1.1920928955078125e-7)){v[k+44>>2]=1;a=v[k+212>>2];v[k+16>>2]=v[k+208>>2];v[k+20>>2]=a;a=v[k+220>>2];v[k+24>>2]=v[k+216>>2];v[k+28>>2]=a;break L}v[k+28>>2]=0;j=C(F(C(C(C(C(C(-m)*u)-C(A*l))-C(n*N))/j),C(1)));j=j>C(0)?j:C(0);z[k+24>>2]=n+C(N*j);z[k+20>>2]=l+C(A*j);z[k+16>>2]=m+C(u*j);break L;case 1:jY(k+16|0,k+208|0,k+144|0,k+80|0,k- -64|0,k+48|0,k+44|0);break L;case 2:Q_(k+16|0,k+208|0,k+144|0,k+80|0,k- -64|0,k+48|0,k+44|0);break L;default:break M}}v[k+28>>2]=0;z[k+24>>2]=S;z[k+20>>2]=N;z[k+16>>2]=Q}a=v[k+20>>2];v[k+272>>2]=v[k+16>>2];v[k+276>>2]=a;a=v[k+28>>2];v[k+280>>2]=v[k+24>>2];v[k+284>>2]=a;n=z[k+280>>2];l=z[k+272>>2];m=z[k+276>>2];j=C(K(C(C(n*n)+C(C(l*l)+C(m*m)))));u=C(C(1)/j);W=C(n*u);A=C(m*u);X=C(l*u);if(jfa){continue}break}s=v[k+44>>2];if(!(j>2];f=a;a=k+48|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;x=x+2|0;if((e|0)!=(x|0)){continue}break}}if(!(r&1)){break N}a=b<<2;t[b+I|0]=v[a+(k- -64|0)>>2];t[b+L|0]=v[a+(k+48|0)>>2]}v[k+312>>2]=v[k+296>>2];a=v[k+292>>2];v[k+304>>2]=v[k+288>>2];v[k+308>>2]=a;z[k+284>>2]=H;z[k+272>>2]=o;z[k+276>>2]=y;z[k+280>>2]=D;JV(k+208|0,k+144|0,k+80|0,k+272|0,k+16|0,k,s);v[q+60>>2]=0;z[q+56>>2]=W;z[q+52>>2]=A;z[q+48>>2]=X;v[q+44>>2]=0;j=C(C(1)/G);z[q+40>>2]=D*j;z[q+36>>2]=y*j;z[q+32>>2]=o*j;a=v[k+20>>2];v[q>>2]=v[k+16>>2];v[q+4>>2]=a;a=v[k+28>>2];v[q+8>>2]=v[k+24>>2];v[q+12>>2]=a;a=v[k+4>>2];v[q+16>>2]=v[k>>2];v[q+20>>2]=a;a=v[k+12>>2];v[q+24>>2]=v[k+8>>2];v[q+28>>2]=a;z[q+64>>2]=G;a=v[k+292>>2];v[q+68>>2]=v[k+288>>2];v[q+72>>2]=a;v[q+76>>2]=v[k+296>>2];x=4;break C}if(I){break D}x=5;break C}s=v[k+44>>2]}t[E+66|0]=s;x=5;if(!s){break C}b=0;if((s|0)!=1){e=s&-2;O=0;while(1){a=b<<2;c=k- -64|0;t[b+I|0]=v[a+c>>2];f=a;a=k+48|0;t[b+L|0]=v[f+a>>2];p=b|1;f=p<<2;t[p+I|0]=v[c+f>>2];t[p+L|0]=v[a+f>>2];b=b+2|0;O=O+2|0;if((e|0)!=(O|0)){continue}break}}if(!(s&1)){break C}a=b<<2;t[b+I|0]=v[a+(k- -64|0)>>2];t[b+L|0]=v[a+(k+48|0)>>2]}xa=k+320|0;a=v[h+828>>2];v[h+88>>2]=v[h+824>>2];v[h+92>>2]=a;a=v[h+820>>2];v[h+80>>2]=v[h+816>>2];v[h+84>>2]=a;a=v[h+836>>2];v[h+64>>2]=v[h+832>>2];v[h+68>>2]=a;a=v[h+844>>2];v[h+72>>2]=v[h+840>>2];v[h+76>>2]=a;a=P1(Y,R,h+736|0,h+704|0,h+608|0,x,q,E,g,d,h+80|0,h- -64|0,0,1,ja);break b}v[h+856>>2]=141216;v[h+860>>2]=h+208;f=h+864|0;e=h+856|0;c=h+128|0;b=VX(f,e,P,h+832|0,1,E+67|0,E+71|0,E+66|0,c);a=v[h+828>>2];v[h+120>>2]=v[h+824>>2];v[h+124>>2]=a;a=v[h+820>>2];v[h+112>>2]=v[h+816>>2];v[h+116>>2]=a;a=v[h+836>>2];v[h+96>>2]=v[h+832>>2];v[h+100>>2]=a;a=v[h+844>>2];v[h+104>>2]=v[h+840>>2];v[h+108>>2]=a;a=P1(f,e,h+736|0,h+704|0,h+608|0,b,c,E,g,d,h+112|0,h+96|0,0,0,ja);break b}d=w[E+64|0];a=0;if(!d){break b}a=1;e=v[E+76>>2];o=z[e+32>>2];l=o;n=z[e+36>>2];j=n;m=z[e+40>>2];y=m;O:{if((d|0)==1){break O}b=d-1|0;c=b&1;y=m;j=n;l=o;if((d|0)!=2){b=b&-2;d=0;while(1){f=e+B(a,48)|0;l=C(C(l+z[f+32>>2])+z[f+80>>2]);y=C(C(y+z[f+40>>2])+z[f+88>>2]);j=C(C(j+z[f+36>>2])+z[f+84>>2]);a=a+2|0;d=d+2|0;if((b|0)!=(d|0)){continue}break}}if(!c){break O}a=e+B(a,48)|0;l=C(l+z[a+32>>2]);y=C(y+z[a+40>>2]);j=C(j+z[a+36>>2])}v[h+380>>2]=0;H=z[h+712>>2];a=C(C(y*y)+C(C(l*l)+C(j*j)))>C(1.1920928955078125e-7);u=a?y:m;G=z[h+704>>2];A=a?l:o;D=z[h+708>>2];y=a?j:n;o=C(C(H*u)+C(C(G*A)+C(D*y)));J=z[h+716>>2];n=C(C(J*J)+C(-.5));j=C(C(H*o)+C(C(J*C(C(G*y)-C(A*D)))+C(u*n)));m=C(j+j);j=C(C(G*o)+C(C(J*C(C(D*u)-C(y*H)))+C(A*n)));l=C(j+j);j=C(C(D*o)+C(C(J*C(C(H*A)-C(u*G)))+C(y*n)));j=C(j+j);n=C(C(1)/C(K(C(C(m*m)+C(C(l*l)+C(j*j))))));z[h+376>>2]=m*n;z[h+372>>2]=j*n;z[h+368>>2]=l*n;r2(E,g,h+368|0,h+704|0,h+768|0);a=1}xa=h+944|0;return a|0}function Ma(){var a=0,b=0;za=5396048;ya=153168;O(110760,110772,110788,0,77863,3,77866,0,77866,0,23193,77868,2);a=maa(8);v[a>>2]=16;v[a+4>>2]=1;P(110760,3027,4,110816,77951,4,a|0,0);Q(62581,110280,67174656);R(14621,4,110848,77951,6,5);R(3978,3,110904,78079,8,7);R(21276,3,110924,78079,10,9);R(4558,6,110976,78225,12,11);R(20234,4,111024,77951,14,13);R(22500,4,111072,77951,16,15);R(24402,4,111168,77951,18,17);R(5336,8,111232,78666,20,19);O(111208,111216,111288,0,77863,22,77866,0,77866,0,16287,77868,21);O(111344,111356,111372,111208,77863,26,77863,25,77863,24,4990,77868,23);a=maa(4);v[a>>2]=27;P(111344,14356,2,111388,78919,28,a|0,0);S(111208,2491,2,111396,78942,30,29);S(111208,23199,3,111536,78079,32,31);O(111556,111568,111584,0,77863,34,77866,0,77866,0,2196,77868,33);a=maa(8);v[a>>2]=24;v[a+4>>2]=1;P(111556,3432,4,111600,79122,35,a|0,0);a=maa(4);v[a>>2]=36;P(111556,21466,5,111632,79160,37,a|0,0);a=maa(8);v[a>>2]=52;v[a+4>>2]=1;P(111556,22835,4,111680,79167,38,a|0,0);a=maa(4);v[a>>2]=39;P(111556,20425,4,111696,79122,40,a|0,0);a=maa(8);v[a>>2]=72;v[a+4>>2]=1;P(111556,64219,3,111712,79173,41,a|0,0);a=maa(8);v[a>>2]=80;v[a+4>>2]=1;P(111556,64236,3,111712,79173,41,a|0,0);a=maa(8);v[a>>2]=88;v[a+4>>2]=1;P(111556,64078,3,111712,79173,41,a|0,0);a=maa(8);v[a>>2]=96;v[a+4>>2]=1;P(111556,64095,3,111712,79173,41,a|0,0);a=maa(8);v[a>>2]=0;v[a+4>>2]=1;P(111556,21820,2,111724,78919,42,a|0,0);O(111732,111744,111760,111556,77863,46,77863,45,77863,44,2334,77868,43);a=maa(8);v[a>>2]=120;v[a+4>>2]=1;P(111732,23044,3,111776,79173,47,a|0,0);a=maa(8);v[a>>2]=128;v[a+4>>2]=1;P(111732,23014,3,111776,79173,47,a|0,0);O(111788,111800,111816,111556,77863,51,77863,50,77863,49,2224,77868,48);a=maa(4);v[a>>2]=52;P(111788,22026,5,111840,79334,53,a|0,0);a=maa(4);v[a>>2]=54;P(111788,22009,6,111872,79341,55,a|0,0);a=maa(4);v[a>>2]=56;P(111788,20339,4,111904,79349,57,a|0,0);a=maa(8);v[a>>2]=148;v[a+4>>2]=1;P(111788,23044,3,111920,79173,58,a|0,0);O(111932,111944,111960,111556,77863,62,77863,61,77863,60,2262,77868,59);a=maa(4);v[a>>2]=63;P(111932,2791,5,111984,79334,64,a|0,0);a=maa(4);v[a>>2]=65;P(111932,2568,6,112016,79341,66,a|0,0);a=maa(8);v[a>>2]=136;v[a+4>>2]=1;P(111932,1249,4,112048,79349,67,a|0,0);a=maa(8);v[a>>2]=144;v[a+4>>2]=1;P(111932,2730,3,112064,79173,68,a|0,0);a=maa(8);v[a>>2]=152;v[a+4>>2]=1;P(111932,14143,3,112064,79173,68,a|0,0);a=maa(4);v[a>>2]=69;P(111932,20361,4,112080,79349,70,a|0,0);a=maa(8);v[a>>2]=172;v[a+4>>2]=1;P(111932,23044,3,112064,79173,68,a|0,0);a=maa(8);v[a>>2]=180;v[a+4>>2]=1;P(111932,23014,3,112064,79173,68,a|0,0);O(112096,112108,112124,111556,77863,74,77863,73,77863,72,2298,77868,71);a=maa(8);v[a>>2]=124;v[a+4>>2]=1;P(112096,22986,3,112140,79173,75,a|0,0);a=maa(8);v[a>>2]=132;v[a+4>>2]=1;P(112096,22971,3,112140,79173,75,a|0,0);a=maa(8);v[a>>2]=140;v[a+4>>2]=1;P(112096,23001,3,112140,79173,75,a|0,0);a=maa(8);v[a>>2]=148;v[a+4>>2]=1;P(112096,3288,3,112140,79173,75,a|0,0);a=maa(8);v[a>>2]=156;v[a+4>>2]=1;P(112096,20072,3,112140,79173,75,a|0,0);a=maa(4);v[a>>2]=76;P(112096,20382,4,112160,79349,77,a|0,0);O(112176,112188,112204,111556,77863,81,77863,80,77863,79,2364,77868,78);a=maa(4);v[a>>2]=82;P(112176,2791,6,112224,79601,83,a|0,0);a=maa(4);v[a>>2]=84;P(112176,2568,6,112256,79341,85,a|0,0);a=maa(4);v[a>>2]=86;P(112176,20403,4,112288,79349,87,a|0,0);a=maa(8);v[a>>2]=148;v[a+4>>2]=1;P(112176,23044,3,112304,79173,88,a|0,0);a=maa(8);v[a>>2]=156;v[a+4>>2]=1;P(112176,23014,3,112304,79173,88,a|0,0);O(112316,112328,112344,111556,77863,92,77863,91,77863,90,2402,77868,89);a=maa(4);v[a>>2]=93;P(112316,14223,4,112368,79122,94,a|0,0);a=maa(4);v[a>>2]=95;P(112316,2770,5,112384,79669,96,a|0,0);a=maa(4);v[a>>2]=97;P(112316,2749,5,112416,79334,98,a|0,0);a=maa(4);v[a>>2]=99;P(112316,2600,7,112448,79676,100,a|0,0);a=maa(4);v[a>>2]=101;P(112316,2581,7,112480,79685,102,a|0,0);a=maa(4);v[a>>2]=103;P(112316,2550,5,112416,79334,98,a|0,0);a=maa(4);v[a>>2]=104;P(112316,2532,6,112512,79341,105,a|0,0);a=maa(4);v[a>>2]=106;P(112316,2637,5,112416,79334,98,a|0,0);a=maa(4);v[a>>2]=107;P(112316,2619,6,112512,79341,105,a|0,0);a=maa(4);v[a>>2]=108;P(112316,2680,7,112544,79694,109,a|0,0);a=maa(4);v[a>>2]=110;P(112316,2655,8,112576,79703,111,a|0,0);a=maa(4);v[a>>2]=112;P(112316,20683,6,112608,79601,113,a|0,0);a=maa(4);v[a>>2]=114;P(112316,14320,4,112640,79122,115,a|0,0);a=maa(8);v[a>>2]=196;v[a+4>>2]=1;P(112316,1249,5,112656,79160,116,a|0,0);a=maa(8);v[a>>2]=204;v[a+4>>2]=1;P(112316,23044,3,112676,79173,117,a|0,0);a=maa(8);v[a>>2]=212;v[a+4>>2]=1;P(112316,23014,3,112676,79173,117,a|0,0);O(110888,112688,112704,0,77863,119,77866,0,77866,0,16313,77868,118);O(112720,112732,112748,110888,77863,123,77863,122,77863,121,4722,77868,120);T(112720,1,112764,77863,125,124);O(111016,112792,112808,0,77863,127,77866,0,77866,0,22603,77868,126);T(111016,1,112824,77863,129,128);a=maa(4);v[a>>2]=4;b=maa(4);v[b>>2]=4;U(111016,24115,110372,79925,131,a|0,110372,79173,130,b|0);V(111652,63958,79929,133,77868,132);a=maa(4);v[a>>2]=0;b=maa(4);v[b>>2]=0;W(111652,2095,110372,79925,135,a|0,110372,79173,134,b|0);a=maa(4);v[a>>2]=4;b=maa(4);v[b>>2]=4;W(111652,1594,110372,79925,135,a|0,110372,79173,134,b|0);a=maa(4);v[a>>2]=8;b=maa(4);v[b>>2]=8;W(111652,1024,110372,79925,135,a|0,110372,79173,134,b|0);X(111652);O(112828,112836,112852,0,77863,593,77866,0,77866,0,4597,77868,592);T(112828,1,112868,77863,595,594);a=maa(8);v[a+4>>2]=0;v[a>>2]=596;P(112828,16410,3,112872,80090,597,a|0,0);a=maa(8);v[a+4>>2]=0;v[a>>2]=598;P(112828,20628,4,112896,79122,599,a|0,0);a=maa(8);v[a+4>>2]=0;v[a>>2]=600;P(112828,20630,2,112912,78942,601,a|0,0);a=maa(4);v[a>>2]=602;P(112828,3006,3,112920,78079,603,a|0,0);a=maa(4);v[a>>2]=604;P(112828,2987,4,112944,77951,605,a|0,0);V(111660,3062,79929,137,77868,136);a=maa(4);v[a>>2]=0;b=maa(4);v[b>>2]=0;W(111660,2095,110372,79925,139,a|0,110372,79173,138,b|0);a=maa(4);v[a>>2]=4;b=maa(4);v[b>>2]=4;W(111660,1594,110372,79925,139,a|0,110372,79173,138,b|0);a=maa(4);v[a>>2]=8;b=maa(4);v[b>>2]=8;W(111660,1024,110372,79925,139,a|0,110372,79173,138,b|0);a=maa(4);v[a>>2]=12;b=maa(4);v[b>>2]=12;W(111660,2097,110372,79925,139,a|0,110372,79173,138,b|0);X(111660);V(112960,14755,79929,141,77868,140);a=maa(4);v[a>>2]=16;b=maa(4);v[b>>2]=16;W(112960,14580,111652,78942,143,a|0,111652,80090,142,b|0);a=maa(4);v[a>>2]=0;b=maa(4);v[b>>2]=0;W(112960,14469,111660,78942,145,a|0,111660,80090,144,b|0);X(112960);V(112968,63965,79929,147,77868,146);a=maa(4);v[a>>2]=0;b=maa(4);v[b>>2]=0;W(112968,2095,110384,80142,149,a|0,110384,80146,148,b|0);a=maa(4);v[a>>2]=8;b=maa(4);v[b>>2]=8;W(112968,1594,110384,80142,149,a|0,110384,80146,148,b|0);a=maa(4);v[a>>2]=16;b=maa(4);v[b>>2]=16;W(112968,1024,110384,80142,149,a|0,110384,80146,148,b|0);X(112968);Y(112976,62172,4,0);Z(112976,1056,0);Y(112984,22807,4,0);Z(112984,62959,0);Z(112984,62787,1);Z(112984,62933,2);Z(112984,62567,3);O(111184,111192,112992,0,77863,151,77866,0,77866,0,24390,77868,150);T(111184,2,113008,78942,153,152);a=maa(4);v[a>>2]=0;b=maa(4);v[b>>2]=0;U(111184,1026,111652,78942,155,a|0,111652,80090,154,b|0);O(110864,110872,113016,0,77863,157,77866,0,77866,0,14608,77868,156);a=maa(8);v[a>>2]=0;v[a+4>>2]=1;P(110864,21820,2,113032,78919,158,a|0,0);O(113040,113048,113064,0,77863,160,77866,0,77866,0,4244,77868,159);Y(113080,20601,4,0);Z(113080,77673,1);Z(113080,63020,2);Z(113080,62439,4);Z(113080,62966,8);Z(113080,62638,64);Z(113080,62749,128);Z(113080,62910,256);Z(113080,62650,512);Z(113080,62497,1024);Z(113080,62236,2048);Z(113080,62276,4096);Z(113080,62609,16384);Z(113080,62534,32768);O(113088,113096,113112,0,77863,162,77866,0,77866,0,22472,77868,161);a=maa(8);v[a>>2]=240;v[a+4>>2]=1;P(113088,1034,3,113128,80090,163,a|0,0);a=maa(8);v[a>>2]=244;v[a+4>>2]=1;P(113088,1045,2,113140,78942,164,a|0,0);a=maa(8);v[a>>2]=44;v[a+4>>2]=1;P(113088,4652,4,113152,79122,165,a|0,0);a=maa(8);v[a>>2]=56;v[a+4>>2]=1;P(113088,4627,4,113200,79122,166,a|0,0);a=maa(8);v[a>>2]=448;v[a+4>>2]=1;P(113088,2501,2,113216,78942,167,a|0,0);a=maa(8);v[a>>2]=80;v[a+4>>2]=1;P(113088,3442,6,113248,78225,168,a|0,0);a=maa(8);v[a>>2]=284;v[a+4>>2]=1;P(113088,1596,3,113312,80090,169,a|0,0);a=maa(4);v[a>>2]=170;P(113088,22827,3,113332,79173,171,a|0,0);a=maa(8);v[a>>2]=216;v[a+4>>2]=1;P(113088,14640,3,113344,78079,172,a|0,0);a=maa(4);v[a>>2]=173;P(113088,22906,2,113356,78919,174,a|0,0);a=maa(4);v[a>>2]=175;P(113088,3240,3,113364,78079,176,a|0,0);a=maa(4);v[a>>2]=177;P(113088,20893,4,113376,79349,178,a|0,0);a=maa(8);v[a>>2]=348;v[a+4>>2]=1;P(113088,2116,10,113392,80891,179,a|0,0);a=maa(4);v[a>>2]=180;P(113088,1564,5,113504,80903,181,a|0,0);a=maa(4);v[a>>2]=182;P(113088,22570,7,113536,81001,183,a|0,0);a=maa(8);v[a>>2]=352;v[a+4>>2]=1;P(113088,13992,12,113616,81073,184,a|0,0);a=maa(4);v[a>>2]=185;P(113088,1575,7,113680,81087,186,a|0,0);a=maa(4);v[a>>2]=187;P(113088,22584,8,113712,81117,188,a|0,0);a=maa(4);v[a>>2]=189;P(113088,5182,3,113756,80090,190,a|0,0);a=maa(4);v[a>>2]=191;P(113088,5148,3,113756,80090,190,a|0,0);a=maa(4);v[a>>2]=192;P(113088,5255,2,113776,78942,193,a|0,0);O(113584,113808,113824,0,77863,195,77866,0,77866,0,2828,77868,194);a=maa(4);v[a>>2]=16;b=maa(4);v[b>>2]=16;U(113584,14271,111652,78942,197,a|0,111652,80090,196,b|0);a=maa(4);v[a>>2]=28;b=maa(4);v[b>>2]=28;U(113584,14922,111652,78942,197,a|0,111652,80090,196,b|0);a=maa(4);v[a>>2]=40;b=maa(4);v[b>>2]=40;U(113584,22962,110372,79925,199,a|0,110372,79173,198,b|0);O(113596,113840,113856,113584,77863,203,77863,202,77863,201,2804,77868,200);T(113596,1,113872,77863,205,204);a=maa(4);v[a>>2]=206;P(113596,21964,2,113876,78942,207,a|0,0);O(113432,113884,113900,0,77863,209,77866,0,77866,0,16269,77868,208);a=maa(4);v[a>>2]=4;b=maa(4);v[b>>2]=4;U(113432,16254,113596,78942,211,a|0,113596,80090,210,b|0);a=maa(4);v[a>>2]=68;b=maa(4);v[b>>2]=68;U(113432,16260,110208,78942,213,a|0,110208,80090,212,b|0);O(113948,113960,113976,113432,77863,217,77863,216,77863,215,4965,77868,214);a=maa(4);v[a>>2]=218;P(113948,14356,2,113992,78919,219,a|0,0);S(113432,2491,4,114e3,77951,221,220);S(113432,23199,3,111536,78079,32,222);O(114072,114084,114100,113432,77863,226,77863,225,77863,224,5279,77868,223);T(114072,1,114116,77863,228,227);R(3586,2,114144,78942,230,229);O(113744,114152,114168,113584,77863,234,77863,233,77863,232,2817,77868,231);T(113744,1,114184,77863,236,235);a=maa(4);v[a>>2]=237;P(113744,21964,2,114188,78942,238,a|0,0);a=maa(4);v[a>>2]=239;P(113744,4618,2,114196,78942,240,a|0,0);O(113672,114204,114220,0,77863,242,77866,0,77866,0,16394,77868,241);a=maa(4);v[a>>2]=4;b=maa(4);v[b>>2]=4;U(113672,16254,113744,78942,244,a|0,113744,80090,243,b|0);a=maa(4);v[a>>2]=52;b=maa(4);v[b>>2]=52;U(113672,16260,110208,78942,246,a|0,110208,80090,245,b|0);O(114268,114280,114296,113672,77863,250,77863,249,77863,248,5052,77868,247);a=maa(4);v[a>>2]=251;P(114268,14356,2,114312,78919,252,a|0,0);S(113672,2491,4,114320,77951,254,253);S(113672,23199,3,111536,78079,32,255);O(114392,114404,114420,113672,77863,259,77863,258,77863,257,5295,77868,256);T(114392,1,114436,77863,261,260);R(3612,2,114464,78942,263,262);O(113440,114472,114488,0,77863,265,77866,0,77866,0,4124,77868,264);T(113440,2,114504,78942,267,266);Y(114512,20443,4,0);Z(114512,62258,1027);Z(114512,62394,128);Z(114512,62895,32);O(113448,114520,114536,0,77863,269,77866,0,77866,0,24605,77868,268);T(113448,1,114552,77863,271,270);a=maa(4);v[a>>2]=16;b=maa(4);v[b>>2]=16;U(113448,4024,114556,78942,273,a|0,114556,80090,272,b|0);O(114556,114564,114580,0,77863,275,77866,0,77866,0,4076,77868,274);T(114556,2,114596,78942,277,276);Y(114604,20294,4,0);Z(114604,62267,16);Z(114604,63051,2);Z(114604,63032,1);Z(114604,62674,32);Y(114612,21911,4,0);Z(114612,62880,0);Z(114612,62667,2);Z(114612,62684,1);O(113456,113464,114620,0,77863,279,77866,0,77866,0,16372,77868,278);O(114668,114680,114696,113456,77863,283,77863,282,77863,281,5023,77868,280);a=maa(4);v[a>>2]=284;P(114668,14356,2,114712,78919,285,a|0,0);S(113456,2491,2,114720,78942,287,286);S(113456,23199,3,111536,78079,32,288);O(113480,114844,113488,0,77863,290,77866,0,77866,0,22652,77868,289);Y(114860,22697,4,0);Z(114860,62950,0);Z(114860,62600,1);Z(114860,62198,3);Z(114860,62183,2);O(111156,114868,114884,0,77863,292,77866,0,77866,0,14935,77868,291);a=maa(8);v[a+4>>2]=1;v[a>>2]=0;P(111156,21820,2,114900,78919,293,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=32;P(111156,14394,3,114908,79173,294,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=40;P(111156,14376,3,114908,79173,294,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=48;P(111156,14166,3,114908,79173,294,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=68;P(111156,22737,3,114920,80090,295,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=76;P(111156,22711,3,114920,80090,295,a|0,0);O(114932,114940,114956,0,77863,607,77866,0,77866,0,14929,77868,606);T(114932,1,114972,77863,609,608);a=maa(8);v[a+4>>2]=0;v[a>>2]=610;P(114932,16410,3,114976,80090,611,a|0,0);a=maa(8);v[a+4>>2]=0;v[a>>2]=612;P(114932,20628,4,114992,79122,613,a|0,0);a=maa(8);v[a+4>>2]=0;v[a>>2]=614;P(114932,20630,2,115008,78942,615,a|0,0);a=maa(4);v[a>>2]=616;P(114932,3006,3,115016,78079,617,a|0,0);a=maa(4);v[a>>2]=618;P(114932,2987,4,115040,77951,619,a|0,0);O(111508,111520,114800,0,77863,297,77866,0,77866,0,21956,77868,296);a=maa(8);v[a+4>>2]=1;v[a>>2]=0;P(111508,21820,2,115056,78919,298,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=116;P(111508,2932,3,115064,79173,299,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=120;P(111508,2949,2,115076,79925,300,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=156;P(111508,4144,2,115084,78942,301,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=148;P(111508,20453,4,115104,79122,302,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=152;P(111508,4135,3,115128,80090,303,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=76;P(111508,21466,3,115140,80090,304,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=36;P(111508,1306,3,115152,80090,305,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=44;P(111508,1280,3,115164,78079,306,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=48;P(111508,1379,3,115188,78079,307,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=56;P(111508,1413,3,115212,78079,308,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=52;P(111508,1448,3,115236,78079,309,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=84;P(111508,24674,3,115260,80090,310,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=92;P(111508,24623,3,115260,80090,310,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=96;P(111508,24642,2,115272,78942,311,a|0,0);a=maa(4);v[a>>2]=312;P(111508,4011,3,115280,80090,313,a|0,0);O(110916,111e3,115292,0,77863,315,77866,0,77866,0,4548,77868,314);a=maa(8);v[a+4>>2]=1;v[a>>2]=8;P(110916,21820,2,115308,78919,316,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=20;P(110916,22621,2,115316,78942,317,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=72;P(110916,22480,3,115324,78079,318,a|0,0);a=maa(8);v[a+4>>2]=0;v[a>>2]=319;P(110916,21997,6,115344,78225,320,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=120;P(110916,14958,5,115376,83134,321,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=88;P(110916,24485,3,115396,78079,322,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=84;P(110916,24452,3,115448,78079,323,a|0,0);a=maa(4);v[a>>2]=324;P(110916,2347,8,115472,78666,325,a|0,0);a=maa(4);v[a>>2]=326;P(110916,2278,8,115504,78666,327,a|0,0);a=maa(4);v[a>>2]=328;P(110916,2241,8,115536,78666,329,a|0,0);a=maa(4);v[a>>2]=330;P(110916,2314,8,115568,78666,331,a|0,0);a=maa(4);v[a>>2]=332;P(110916,2381,8,115600,78666,333,a|0,0);a=maa(4);v[a>>2]=334;P(110916,2412,8,115632,78666,335,a|0,0);O(115092,115664,115680,0,77863,337,77866,0,77866,0,4231,77868,336);T(115092,2,115696,78942,339,338);a=maa(8);v[a+4>>2]=0;v[a>>2]=340;P(115092,3010,3,115704,78079,341,a|0,0);Y(115120,20589,4,0);Z(115120,62862,1);Z(115120,62828,2);Z(115120,62847,4);Z(115120,62519,8);Y(115716,20461,4,0);Z(115716,62155,2);O(110896,115724,115740,0,77863,343,77866,0,77866,0,16333,77868,342);O(146064,115756,115772,110896,77863,347,77863,346,77863,345,16349,77868,344);T(146064,1,115788,77863,349,348);O(111040,111048,115792,0,77863,351,77866,0,77866,0,20224,77868,350);a=maa(4);v[a>>2]=352;P(111040,16446,4,115808,77951,353,a|0,0);a=maa(4);v[a>>2]=354;P(111040,5309,5,115856,83520,355,a|0,0);a=maa(4);v[a>>2]=356;P(111040,16463,8,115888,78666,357,a|0,0);O(111064,115948,115964,0,77863,359,77866,0,77866,0,3995,77868,358);T(111064,2,115980,78942,361,360);O(110936,115988,116004,0,77863,363,77866,0,77866,0,5196,77868,362);O(113168,116020,113180,0,77863,365,77866,0,77866,0,21878,77868,364);O(116036,116044,116060,0,77863,367,77866,0,77866,0,15834,77868,366);O(110944,110956,116076,110936,77863,371,77863,370,77863,369,5212,77868,368);O(111272,116092,116108,0,77863,373,77866,0,77866,0,24661,77868,372);T(111272,5,116128,83520,375,374);a=maa(4);v[a>>2]=0;b=maa(4);v[b>>2]=0;U(111272,64256,110292,78942,377,a|0,110292,80090,376,b|0);a=maa(4);v[a>>2]=4;b=maa(4);v[b>>2]=4;U(111272,64115,110292,78942,377,a|0,110292,80090,376,b|0);a=maa(4);v[a>>2]=8;b=maa(4);v[b>>2]=8;U(111272,64066,110292,78942,377,a|0,110292,80090,376,b|0);a=maa(4);v[a>>2]=12;b=maa(4);v[b>>2]=12;U(111272,63952,110292,78942,377,a|0,110292,80090,376,b|0);O(111280,116148,116164,0,77863,379,77866,0,77866,0,4153,77868,378);O(111264,116180,116196,0,77863,381,77866,0,77866,0,4165,77868,380);Y(116212,20486,4,0);Y(116220,20497,4,0);O(111096,113280,116228,0,77863,383,77866,0,77866,0,4610,77868,382);a=maa(8);v[a+4>>2]=1;v[a>>2]=44;P(111096,20473,4,116256,79122,384,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=0;P(111096,21820,2,116272,78919,385,a|0,0);O(111108,111616,114816,111096,77863,389,77863,388,77863,387,4639,77868,386);a=maa(8);v[a+4>>2]=1;v[a>>2]=84;P(111108,21973,3,116280,78079,390,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=88;P(111108,21985,4,116304,79122,391,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=76;P(111108,21511,2,116320,78942,392,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=80;P(111108,21497,4,116336,79122,393,a|0,0);a=maa(4);v[a>>2]=394;P(111108,21964,2,116352,78942,395,a|0,0);a=maa(4);v[a>>2]=396;P(111108,24623,3,116360,80090,397,a|0,0);a=maa(4);v[a>>2]=398;P(111108,24642,3,116372,78079,399,a|0,0);O(111120,111132,116384,111108,77863,403,77863,402,77863,401,24438,77868,400);O(115408,116400,116416,111108,77863,407,77863,406,77863,405,1584,77868,404);a=maa(8);v[a+4>>2]=1;v[a>>2]=148;P(115408,20083,3,116432,79173,408,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=152;P(115408,20101,2,116444,79925,409,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=140;P(115408,20119,3,116432,79173,408,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=144;P(115408,20136,2,116444,79925,409,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=168;P(115408,1119,4,116464,79122,410,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=164;P(115408,1138,2,116480,78942,411,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=160;P(115408,1157,4,116464,79122,410,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=156;P(115408,1175,2,116480,78942,411,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=172;P(115408,1075,3,116432,79173,408,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=176;P(115408,1097,2,116444,79925,409,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=228;P(115408,1193,3,116432,79173,408,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=232;P(115408,1221,2,116444,79925,409,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=116;P(115408,3416,3,116432,79173,408,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=120;P(115408,3424,2,116444,79925,409,a|0,0);a=maa(4);v[a>>2]=412;P(115408,21479,3,116488,80090,413,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=128;P(115408,4741,3,116500,80090,414,a|0,0);a=maa(4);v[a>>2]=415;P(115408,20692,3,116488,80090,413,a|0,0);a=maa(4);v[a>>2]=416;P(115408,22849,3,116488,80090,413,a|0,0);a=maa(4);v[a>>2]=417;P(115408,3686,4,116512,79122,418,a|0,0);a=maa(4);v[a>>2]=419;P(115408,3798,4,116512,79122,418,a|0,0);a=maa(4);v[a>>2]=420;P(115408,3774,4,116512,79122,418,a|0,0);a=maa(4);v[a>>2]=421;P(115408,3670,4,116512,79122,418,a|0,0);a=maa(4);v[a>>2]=422;P(115408,3753,4,116512,79122,418,a|0,0);a=maa(4);v[a>>2]=423;P(115408,3727,4,116512,79122,418,a|0,0);a=maa(4);v[a>>2]=424;P(115408,3653,3,116528,78079,425,a|0,0);a=maa(4);v[a>>2]=426;P(115408,3700,3,116528,78079,425,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=208;P(115408,20322,4,116544,79122,427,a|0,0);a=maa(4);v[a>>2]=428;P(115408,4106,2,116568,78942,429,a|0,0);a=maa(4);v[a>>2]=430;P(115408,24714,3,116576,84215,431,a|0,0);O(115420,115432,116588,115408,77863,435,77863,434,77863,433,24470,77868,432);a=maa(8);v[a+4>>2]=1;v[a>>2]=260;P(115420,23254,3,116604,79173,436,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=264;P(115420,23272,2,116616,79925,437,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=304;P(115420,3126,4,116624,79122,438,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=296;P(115420,14053,2,116640,78919,439,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=288;P(115420,4896,3,116604,79173,436,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=256;P(115420,20153,2,116648,78942,440,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=300;P(115420,14042,2,116640,78919,439,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=292;P(115420,4911,2,116616,79925,437,a|0,0);a=maa(4);v[a>>2]=441;P(115420,2991,4,116656,79122,442,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=280;P(115420,20565,4,116672,79122,443,a|0,0);a=maa(4);v[a>>2]=444;P(115420,4206,3,116696,80090,445,a|0,0);O(116708,116716,116732,0,77863,447,77866,0,77866,0,4089,77868,446);Y(116560,20306,4,0);Z(116560,63040,1);Z(116560,62337,2);Z(116560,63020,4);Z(116560,62476,8);Z(116560,62203,16);Z(116560,62996,32);Z(116560,62796,64);Z(116560,62315,128);O(113664,116748,116764,0,77863,449,77866,0,77866,0,1295,77868,448);O(115176,116780,116796,113664,77863,453,77863,452,77863,451,1266,77868,450);T(115176,1,116812,77863,455,454);T(115176,4,116816,84522,457,456);a=maa(8);v[a+4>>2]=0;v[a>>2]=458;P(115176,23309,2,116832,78942,459,a|0,0);a=maa(4);v[a>>2]=4;b=maa(4);v[b>>2]=4;U(115176,3228,111652,78942,461,a|0,111652,80090,460,b|0);O(115200,116840,116856,113664,77863,465,77863,464,77863,463,1362,77868,462);T(115200,1,116872,77863,467,466);T(115200,2,116876,84585,469,468);a=maa(4);v[a>>2]=4;b=maa(4);v[b>>2]=4;U(115200,3084,110372,79925,471,a|0,110372,79173,470,b|0);a=maa(8);v[a+4>>2]=0;v[a>>2]=472;P(115200,23309,2,116884,78942,473,a|0,0);O(115248,116892,116908,113664,77863,477,77863,476,77863,475,1430,77868,474);T(115248,3,116924,84648,479,478);a=maa(4);v[a>>2]=4;b=maa(4);v[b>>2]=4;U(115248,3084,110372,79925,481,a|0,110372,79173,480,b|0);a=maa(4);v[a>>2]=8;b=maa(4);v[b>>2]=8;U(115248,2893,110372,79925,481,a|0,110372,79173,480,b|0);a=maa(8);v[a+4>>2]=0;v[a>>2]=482;P(115248,23309,2,116936,78942,483,a|0,0);O(115224,116944,116960,113664,77863,487,77863,486,77863,485,1397,77868,484);T(115224,1,116976,77863,489,488);O(115920,115932,116980,0,77863,491,77866,0,77866,0,16477,77868,490);a=maa(8);v[a+4>>2]=1;v[a>>2]=0;P(115920,21820,2,116996,78919,492,a|0,0);O(117004,117016,117032,113664,77863,496,77863,495,77863,494,1339,77868,493);T(117004,4,117056,77951,498,497);O(117080,117088,117104,0,77863,500,77866,0,77866,0,4056,77868,499);T(117080,2,117120,78942,502,501);Y(117128,20275,4,0);Z(117128,62982,2);O(115824,115836,117136,0,77863,504,77866,0,77866,0,16433,77868,503);a=maa(8);v[a+4>>2]=1;v[a>>2]=0;P(115824,21820,2,117152,78919,505,a|0,0);O(117160,117172,117188,113664,77863,509,77863,508,77863,507,1318,77868,506);T(117160,4,117216,77951,511,510);O(117072,117240,117256,0,77863,513,77866,0,77866,0,22640,77868,512);T(117072,3,117272,78079,515,514);O(117232,117284,117300,0,77863,517,77866,0,77866,0,4030,77868,516);T(117232,2,117316,78942,519,518);Y(117324,20250,4,0);Z(117324,62411,1);O(111148,117332,117348,0,77863,521,77866,0,77866,0,22492,77868,520);T(111148,5,117376,85456,523,522);Y(117396,21934,4,0);Z(117396,62193,0);Z(117396,62886,1);Y(117404,22779,4,0);Z(117404,62727,0);Z(117404,62691,1);Y(117412,20510,4,0);Z(117412,62377,1);Z(117412,62425,2);Z(117412,62460,4);O(117420,117428,117444,0,77863,525,77866,0,77866,0,4179,77868,524);T(117420,2,117460,78942,527,526);a=maa(8);v[a+4>>2]=0;v[a>>2]=528;P(117420,3010,3,117468,78079,529,a|0,0);O(113784,113792,117480,0,77863,531,77866,0,77866,0,5235,77868,530);a=maa(8);v[a+4>>2]=1;v[a>>2]=20;P(113784,3478,2,117496,78919,532,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=16;P(113784,5165,3,117504,78079,533,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=44;P(113784,3924,4,117552,79349,534,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=48;P(113784,14592,4,117600,85913,535,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=52;P(113784,22545,3,117616,80090,536,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=56;P(113784,3636,3,117616,80090,536,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=60;P(113784,20184,3,117616,80090,536,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=64;P(113784,14669,3,117628,80090,537,a|0,0);O(117532,117640,117656,0,77863,539,77866,0,77866,0,24349,77868,538);a=maa(8);v[a+4>>2]=1;v[a>>2]=0;P(117532,23309,2,117672,78942,540,a|0,0);a=maa(8);v[a+4>>2]=0;v[a>>2]=541;P(117532,21926,2,117680,78942,542,a|0,0);a=maa(4);v[a>>2]=8;b=maa(4);v[b>>2]=8;U(117532,14271,112968,78942,544,a|0,112968,80090,543,b|0);a=maa(4);v[a>>2]=32;b=maa(4);v[b>>2]=32;U(117532,14413,111652,78942,546,a|0,111652,80090,545,b|0);a=maa(4);v[a>>2]=44;b=maa(4);v[b>>2]=44;U(117532,2705,110372,79925,548,a|0,110372,79173,547,b|0);a=maa(4);v[a>>2]=48;b=maa(4);v[b>>2]=48;U(117532,2873,110372,79925,548,a|0,110372,79173,547,b|0);a=maa(4);v[a>>2]=52;b=maa(4);v[b>>2]=52;U(117532,2859,110372,79925,548,a|0,110372,79173,547,b|0);a=maa(4);v[a>>2]=56;b=maa(4);v[b>>2]=56;U(117532,2918,110372,79925,548,a|0,110372,79173,547,b|0);a=maa(4);v[a>>2]=60;b=maa(4);v[b>>2]=60;U(117532,2966,110372,79925,548,a|0,110372,79173,547,b|0);a=maa(4);v[a>>2]=64;b=maa(4);v[b>>2]=64;U(117532,1067,110372,79925,548,a|0,110372,79173,547,b|0);a=maa(4);v[a>>2]=68;b=maa(4);v[b>>2]=68;U(117532,20617,110372,79925,548,a|0,110372,79173,547,b|0);a=maa(4);v[a>>2]=72;b=maa(4);v[b>>2]=72;U(117532,16420,110372,79925,548,a|0,110372,79173,547,b|0);a=maa(4);v[a>>2]=549;P(117532,22760,3,117688,78079,550,a|0,0);a=maa(4);v[a>>2]=551;P(117532,14946,3,117700,78079,552,a|0,0);a=maa(4);v[a>>2]=92;b=maa(4);v[b>>2]=92;U(117532,5075,110208,78942,554,a|0,110208,80090,553,b|0);O(117712,117724,117740,117532,77863,558,77863,557,77863,556,24366,77868,555);T(117712,1,117756,77863,560,559);a=maa(8);v[a+4>>2]=1;v[a>>2]=0;P(117712,23309,2,117784,78942,561,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=12;P(117712,2519,2,117792,78919,562,a|0,0);a=maa(4);v[a>>2]=104;b=maa(4);v[b>>2]=104;U(117712,3084,110372,79925,564,a|0,110372,79173,563,b|0);a=maa(4);v[a>>2]=108;b=maa(4);v[b>>2]=108;U(117712,2842,110372,79925,564,a|0,110372,79173,563,b|0);a=maa(4);v[a>>2]=565;P(117712,22681,3,117800,78079,566,a|0,0);O(113768,117516,117820,0,77863,568,77866,0,77866,0,5100,77868,567);a=maa(8);v[a+4>>2]=1;v[a>>2]=4;P(113768,21820,2,117836,78919,569,a|0,0);a=maa(4);v[a>>2]=570;P(113768,20536,4,117856,77951,571,a|0,0);a=maa(4);v[a>>2]=572;P(113768,20635,5,117872,86143,573,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=12;P(113768,14296,3,117892,78079,574,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=16;P(113768,14308,2,117904,78942,575,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=20;P(113768,14280,3,117892,78079,574,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=32;P(113768,2977,3,117912,79173,576,a|0,0);a=maa(4);v[a>>2]=577;P(113768,22760,3,117924,80090,578,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=52;P(113768,2932,3,117912,79173,576,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=60;P(113768,14425,3,117936,80090,579,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=68;P(113768,2716,3,117912,79173,576,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=72;P(113768,22665,2,117836,78919,569,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=96;P(113768,20628,3,117912,79173,576,a|0,0);a=maa(8);v[a+4>>2]=1;v[a>>2]=72;P(113768,22665,2,117836,78919,569,a|0,0);a=maa(4);v[a>>2]=580;P(113768,24623,3,117948,80090,581,a|0,0);a=maa(4);v[a>>2]=582;P(113768,24642,3,117960,78079,583,a|0,0);a=maa(4);v[a>>2]=584;P(113768,3091,3,117972,79173,585,a|0,0);a=maa(4);v[a>>2]=586;P(113768,2849,3,117972,79173,585,a|0,0);a=maa(4);v[a>>2]=587;P(113768,22681,3,117984,78079,588,a|0,0);a=maa(4);v[a>>2]=589;P(113768,2904,3,117972,79173,585,a|0,0);a=maa(4);v[a>>2]=590;P(113768,2452,3,117972,79173,585,a|0,0);a=maa(4);v[a>>2]=591;P(113768,2470,3,117972,79173,585,a|0,0);J9(149728,1,1024);v[37690]=0;v[37691]=0;v[37688]=0;v[37689]=0;z9();v[37900]=150840;v[37882]=42}function R4(a){var b=0,c=0,d=0,e=0,f=C(0),g=0,h=C(0),i=C(0),j=0,k=0,l=0,m=0,n=C(0),o=0,p=0,q=C(0),r=C(0),s=C(0),D=C(0),E=0,F=C(0),G=0,H=0,I=C(0),J=C(0),L=0,M=C(0),N=0,O=C(0),P=0,Q=0,R=C(0),S=0,T=C(0),U=C(0),V=0,W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=C(0),ca=C(0),da=0,ea=0,fa=C(0),ga=C(0),ha=0,ia=0,ja=0,ka=C(0),la=0,ma=C(0),na=C(0),oa=C(0);E=xa-128|0;xa=E;v[E+120>>2]=0;v[E+112>>2]=0;v[E+116>>2]=0;c=v[v[a+32>>2]+92>>2];a:{if(!c){break a}S4(E+112|0,c);W=v[a+32>>2];if(!v[W+92>>2]){break a}while(1){c=v[v[W+88>>2]+(b<<2)>>2];b:{if(v[c+48>>2]){break b}q=z[c+12>>2];z[E+16>>2]=q;i=z[c+16>>2];z[E+20>>2]=i;f=z[c+20>>2];z[E+24>>2]=f;r=C(-z[c+40>>2]);z[E+28>>2]=r;h=z[c+44>>2];if(h>C(0)){r=C(r-h);z[E+28>>2]=r}c=v[E+116>>2];if(c>>>0>=(v[E+120>>2]&2147483647)>>>0){T4(E+112|0,E+16|0);W=v[a+32>>2];break b}d=v[E+112>>2]+(c<<4)|0;z[d+12>>2]=r;z[d+8>>2]=f;z[d+4>>2]=i;z[d>>2]=q;v[E+116>>2]=c+1}b=b+1|0;if(b>>>0>2]){continue}break}}v[E+48>>2]=0;v[E+40>>2]=0;v[E+44>>2]=0;v[E+32>>2]=0;v[E+36>>2]=0;v[E+24>>2]=0;v[E+28>>2]=0;v[E+16>>2]=0;v[E+20>>2]=0;u[E+54>>1]=255;u[E+56>>1]=255;H=E+16|0;U4(a,H);u[E+52>>1]=x[v[a+4>>2]+36>>1];p=E- -64|0;c=0;h=C(0);r=C(0);k=xa-336|0;xa=k;N=v[H+4>>2];l=v[H+8>>2];c:{if(!l){break c}if((l|0)!=1){b=l&-2;while(1){g=N+B(c|1,12)|0;d=N+B(c,12)|0;h=C(z[g+8>>2]+C(z[d+8>>2]+h));r=C(z[g+4>>2]+C(z[d+4>>2]+r));I=C(z[g>>2]+C(z[d>>2]+I));c=c+2|0;G=G+2|0;if((b|0)!=(G|0)){continue}break}}if(!(l&1)){break c}c=N+B(c,12)|0;h=C(z[c+8>>2]+h);r=C(z[c+4>>2]+r);I=C(z[c>>2]+I)}o=v[H+16>>2];d=v[H+28>>2];f=C(C(1)/C(l>>>0));z[k+160>>2]=f*h;z[k+156>>2]=f*r;z[k+152>>2]=f*I;l=0;b=v[H+32>>2];d:{if(!b){break d}c=v[37696];j=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,7224,837)|0;if(!v[H+32>>2]){break d}c=0;while(1){t[c+j|0]=v[d+(c<<2)>>2];c=c+1|0;if(c>>>0>2]){continue}break}}G=v[H+20>>2];b=B(G,20);if(b){c=v[37696];l=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,7224,843)|0;G=v[H+20>>2]}if(G){c=0;while(1){b=B(c,20);L=b+o|0;g=v[L>>2];d=v[L+4>>2];e=b+l|0;b=v[L+12>>2];v[e+8>>2]=v[L+8>>2];v[e+12>>2]=b;v[e>>2]=g;v[e+4>>2]=d;t[e+18|0]=w[L+16|0];u[e+16>>1]=x[L+18>>1];c=c+1|0;if((c|0)!=(G|0)){continue}break}}u[k+134>>1]=0;u[k+136>>1]=0;u[k+138>>1]=0;u[k+140>>1]=0;v[k+128>>2]=0;v[k+132>>2]=0;v[k+120>>2]=0;v[k+124>>2]=0;v[k+112>>2]=0;v[k+116>>2]=0;v[k+104>>2]=0;v[k+108>>2]=0;u[k+142>>1]=255;u[k+144>>1]=255;v[k+108>>2]=v[H+4>>2];c=v[H+8>>2];v[k+132>>2]=j;v[k+124>>2]=G;v[k+120>>2]=l;v[k+112>>2]=c;v[k+136>>2]=v[H+32>>2];e:{f:{g:{h:{if(w[H+36|0]&64){if(Y4(k+104|0,k+168|0,k+152|0)){break h}break g}if(!X4(k+104|0,k+168|0,k+152|0)){break g}}c=0;G=0;b=v[H+8>>2];d=b<<4;if(d){b=v[37696];G=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,24422,7224,866)|0;b=v[H+8>>2]}if(b){while(1){e=N+B(c,12)|0;g=v[e>>2];d=v[e+4>>2];b=v[e+12>>2];o=(c<<4)+G|0;v[o+8>>2]=v[e+8>>2];v[o+12>>2]=b;v[o>>2]=g;v[o+4>>2]=d;c=c+1|0;if(c>>>0>2]){continue}break}}z[k+80>>2]=A[k+224>>3];z[k+84>>2]=A[k+248>>3];z[k+92>>2]=A[k+232>>3];z[k+96>>2]=A[k+256>>3];z[k+64>>2]=A[k+192>>3];z[k+68>>2]=A[k+216>>3];z[k+72>>2]=A[k+240>>3];z[k+76>>2]=A[k+200>>3];z[k+88>>2]=A[k+208>>3];q9(k+8|0,k- -64|0,k+48|0);M=z[k+52>>2];J=C(M+M);q=z[k+56>>2];f=C(J*q);i=z[k+48>>2];s=C(i+i);F=z[k+60>>2];h=C(s*F);z[k+36>>2]=f-h;z[k+28>>2]=f+h;h=C(C(1)-C(i*s));D=C(M*J);z[k+40>>2]=h-D;f=h;h=C(q+q);n=C(q*h);z[k+24>>2]=f-n;q=C(s*q);i=C(J*F);z[k+32>>2]=q+i;f=C(s*M);h=C(h*F);z[k+20>>2]=f-h;z[k+16>>2]=q-i;z[k+12>>2]=f+h;z[k+8>>2]=C(C(1)-D)-n;g=v[H+8>>2];h=C(1e9);d=0;ma=z[k+176>>2];na=z[k+172>>2];oa=z[k+168>>2];while(1){c=(k+8|0)+B(d,12)|0;M=z[c+8>>2];s=z[c+4>>2];J=z[c>>2];o=0;while(1){f=C(C(C(o>>>0)*C(.3141592741012573))*C(.5));i=R9(f);T=C(i*M);X=C(i*s);_=C(i*J);Y=H9(f);i:{if(!g){r=C(34028234663852886e22);ba=C(11754943508222875e-54);R=C(11754943508222875e-54);ca=C(11754943508222875e-54);fa=C(34028234663852886e22);ga=C(34028234663852886e22);break i}ka=C(C(Y*Y)+C(-.5));n=C(-X);q=C(-_);i=C(-T);ca=C(11754943508222875e-54);ga=C(34028234663852886e22);c=0;fa=C(34028234663852886e22);r=C(34028234663852886e22);R=C(11754943508222875e-54);ba=C(11754943508222875e-54);while(1){b=(c<<4)+G|0;Z=C(z[b+8>>2]-ma);O=C(z[b>>2]-oa);U=C(z[b+4>>2]-na);I=C(C(T*Z)+C(C(_*O)+C(X*U)));f=C(C(C(ka*Z)-C(Y*C(C(_*U)+C(O*n))))+C(T*I));F=C(f+f);ca=Fga?ga:F;fa=D>fa?fa:D;r=f>r?r:f;c=c+1|0;if((g|0)!=(c|0)){continue}break}}I=C(ba-r);D=C(R-fa);i=C(ca-ga);f=C(C(I*D)*i);if(f<=h){z[p+8>>2]=i;z[p+4>>2]=D;z[p>>2]=I;z[E+92>>2]=Y;z[E+88>>2]=T;z[E+84>>2]=X;z[E+80>>2]=_;Z=C(_+_);q=C(C(1)-C(_*Z));n=C(X+X);F=C(X*n);O=C(ca-C(i*C(.5)));i=C(Y*Z);h=C(n*T);U=C(R-C(D*C(.5)));D=C(Z*T);n=C(Y*n);I=C(ba-C(I*C(.5)));z[E+104>>2]=C(C(q-F)*O)+C(C(C(i+h)*U)+C(ma+C(C(D-n)*I)));R=C(C(h-i)*O);r=q;h=C(T+T);q=C(T*h);i=C(Z*X);h=C(Y*h);z[E+100>>2]=R+C(C(C(r-q)*U)+C(na+C(C(i+h)*I)));z[E+96>>2]=C(C(D+n)*O)+C(C(C(i-h)*U)+C(oa+C(C(C(C(1)-F)-q)*I)));h=f}o=o+1|0;if((o|0)!=20){continue}break}d=d+1|0;if((d|0)!=3){continue}break}if(G){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,G)}if(j){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,j)}if(l){break f}break e}if(j){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,j)}if(!l){break e}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,l)}xa=k+336|0;b=v[a+40>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+40>>2]=0;v[a+44>>2]=0;o=v[E+116>>2];b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?38869:63804;d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,40,c,13134,2254)|0;z[E+8>>2]=z[E+72>>2]*C(.5);z[E+4>>2]=z[E+68>>2]*C(.5);z[E>>2]=z[E+64>>2]*C(.5);e=xa-160|0;xa=e;v[d>>2]=0;v[d+4>>2]=0;v[d+36>>2]=E+112;v[d+32>>2]=0;l=d+24|0;v[l>>2]=0;v[l+4>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;c=E+80|0;M=z[c+4>>2];J=C(M+M);q=z[c+8>>2];f=C(J*q);i=z[c>>2];s=C(i+i);F=z[c+12>>2];h=C(s*F);z[e+52>>2]=f-h;z[e+44>>2]=f+h;h=C(C(1)-C(i*s));D=C(M*J);z[e+56>>2]=h-D;f=h;h=C(q+q);n=C(q*h);z[e+40>>2]=f-n;q=C(s*q);i=C(J*F);z[e+48>>2]=q+i;f=C(s*M);h=C(h*F);z[e+36>>2]=f-h;z[e+32>>2]=q-i;z[e+28>>2]=f+h;z[e+24>>2]=C(C(1)-D)-n;FV(e- -64|0,c+16|0,E,e+24|0,e+36|0,e+48|0);i=z[e+72>>2];z[e+16>>2]=i;f=z[e+68>>2];z[e+12>>2]=f;h=z[e+64>>2];z[e+8>>2]=h;c=v[d+8>>2]&2147483647;g=v[d+4>>2];j:{if(c>>>0<=g>>>0){J3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break j}b=v[d>>2]+B(g,12)|0;z[b+8>>2]=i;z[b+4>>2]=f;z[b>>2]=h;b=g+1|0;v[d+4>>2]=b}i=z[e+112>>2];z[e+8>>2]=i;f=z[e+120>>2];z[e+16>>2]=f;h=z[e+116>>2];z[e+12>>2]=h;k:{if(b>>>0>=c>>>0){J3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break k}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+100>>2];z[e+8>>2]=i;f=z[e+108>>2];z[e+16>>2]=f;h=z[e+104>>2];z[e+12>>2]=h;l:{if(b>>>0>=c>>>0){J3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break l}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+148>>2];z[e+8>>2]=i;f=z[e+156>>2];z[e+16>>2]=f;h=z[e+152>>2];z[e+12>>2]=h;m:{if(b>>>0>=c>>>0){J3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break m}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+76>>2];z[e+8>>2]=i;f=z[e+84>>2];z[e+16>>2]=f;h=z[e+80>>2];z[e+12>>2]=h;n:{if(b>>>0>=c>>>0){J3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break n}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+124>>2];z[e+8>>2]=i;f=z[e+132>>2];z[e+16>>2]=f;h=z[e+128>>2];z[e+12>>2]=h;o:{if(b>>>0>=c>>>0){J3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break o}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+88>>2];z[e+8>>2]=i;f=z[e+96>>2];z[e+16>>2]=f;h=z[e+92>>2];z[e+12>>2]=h;p:{if(b>>>0>=c>>>0){J3(d,e+8|0);c=v[d+8>>2]&2147483647;b=v[d+4>>2];break p}g=v[d>>2]+B(b,12)|0;z[g+8>>2]=f;z[g+4>>2]=h;z[g>>2]=i;b=b+1|0;v[d+4>>2]=b}i=z[e+136>>2];z[e+8>>2]=i;f=z[e+144>>2];z[e+16>>2]=f;h=z[e+140>>2];z[e+12>>2]=h;q:{if(b>>>0>=c>>>0){J3(d,e+8|0);break q}c=v[d>>2]+B(b,12)|0;z[c+8>>2]=f;z[c+4>>2]=h;z[c>>2]=i;v[d+4>>2]=b+1}r=C(0);h=C(0);I=C(0);M=z[e+64>>2];D=C(z[e+112>>2]-M);s=z[e+68>>2];n=C(z[e+152>>2]-s);q=C(z[e+148>>2]-M);f=C(z[e+116>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+72>>2];i=C(z[e+156>>2]-F);O=C(f*i);f=C(z[e+120>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];r:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){T4(l,e+8|0);break r}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}r=C(0);h=C(0);I=C(0);M=z[e+88>>2];D=C(z[e+136>>2]-M);s=z[e+92>>2];n=C(z[e+128>>2]-s);q=C(z[e+124>>2]-M);f=C(z[e+140>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+96>>2];i=C(z[e+132>>2]-F);O=C(f*i);f=C(z[e+144>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];s:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){T4(l,e+8|0);break s}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}r=C(0);h=C(0);I=C(0);M=z[e+64>>2];D=C(z[e+76>>2]-M);s=z[e+68>>2];n=C(z[e+128>>2]-s);q=C(z[e+124>>2]-M);f=C(z[e+80>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+72>>2];i=C(z[e+132>>2]-F);O=C(f*i);f=C(z[e+84>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];t:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){T4(l,e+8|0);break t}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}r=C(0);h=C(0);I=C(0);M=z[e+148>>2];D=C(z[e+136>>2]-M);s=z[e+152>>2];n=C(z[e+92>>2]-s);q=C(z[e+88>>2]-M);f=C(z[e+140>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+156>>2];i=C(z[e+96>>2]-F);O=C(f*i);f=C(z[e+144>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];u:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){T4(l,e+8|0);break u}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}r=C(0);h=C(0);I=C(0);M=z[e+64>>2];D=C(z[e+100>>2]-M);s=z[e+68>>2];n=C(z[e+92>>2]-s);q=C(z[e+88>>2]-M);f=C(z[e+104>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+72>>2];i=C(z[e+96>>2]-F);O=C(f*i);f=C(z[e+108>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];v:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){T4(l,e+8|0);break v}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}r=C(0);h=C(0);I=C(0);M=z[e+112>>2];D=C(z[e+124>>2]-M);s=z[e+116>>2];n=C(z[e+140>>2]-s);q=C(z[e+136>>2]-M);f=C(z[e+128>>2]-s);J=C(C(D*n)-C(q*f));F=z[e+120>>2];i=C(z[e+144>>2]-F);O=C(f*i);f=C(z[e+132>>2]-F);n=C(O-C(n*f));i=C(C(f*q)-C(i*D));f=C(C(J*J)+C(C(n*n)+C(i*i)));if(f>C(0)){f=C(C(1)/C(K(f)));I=C(J*f);r=C(n*f);h=C(i*f)}z[e+12>>2]=h;z[e+8>>2]=r;z[e+16>>2]=I;f=C(-C(C(F*I)+C(C(M*r)+C(s*h))));z[e+20>>2]=f;c=v[d+28>>2];w:{if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){T4(l,e+8|0);break w}b=v[d+24>>2]+(c<<4)|0;z[b+12>>2]=f;z[b+8>>2]=I;z[b+4>>2]=h;z[b>>2]=r;v[d+28>>2]=c+1}g=d+12|0;v[e+8>>2]=11;c=v[d+16>>2];x:{if(c>>>0>=(v[d+20>>2]&2147483647)>>>0){t4(g,e+8|0);b=v[d+16>>2];break x}b=v[g>>2]+(c<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=65559;y:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break y}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=196623;z:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break z}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=131088;A:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break A}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=17170445;B:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break B}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=17235989;C:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break C}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=17104905;D:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break D}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=17039378;E:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break E}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=33554451;F:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break F}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=33816582;G:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break G}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=33882132;H:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break H}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=33619968;I:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break I}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=50528278;J:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break J}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=50790404;K:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break K}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=50724881;L:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break L}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=50462722;M:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break M}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=67108867;N:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break N}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=67239950;O:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break O}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=67502087;P:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break P}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=67371016;Q:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break Q}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=83951626;R:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break R}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=84213765;S:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break S}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=84344844;T:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);b=v[d+16>>2];break T}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;b=v[d+16>>2]+1|0;v[d+16>>2]=b}v[e+8>>2]=84082689;U:{if((v[d+20>>2]&2147483647)>>>0<=b>>>0){t4(g,e+8|0);break U}b=v[g>>2]+(b<<2)|0;c=v[e+8>>2];u[b>>1]=c;u[b+2>>1]=c>>>16;v[d+16>>2]=v[d+16>>2]+1}xa=e+160|0;W=o>>>0<256?o:256;V:{if(!W){break V}c=v[a+32>>2];U=z[c+252>>2];O=z[c+256>>2];W:{while(1){b=0;J=C(0);j=0;X:{Y:{e=d;H=v[d+36>>2];L=v[H+4>>2];if(!L){break Y}G=v[e>>2];k=v[e+4>>2];p=v[e+28>>2];if(p){N=v[e+16>>2];l=v[e+12>>2];o=v[e+24>>2];c=-1;while(1){Z:{if(!k){h=C(0);s=C(0);break Z}b=v[H>>2]+(j<<4)|0;n=z[b+12>>2];q=z[b+8>>2];i=z[b+4>>2];f=z[b>>2];d=0;s=C(0);h=C(0);while(1){b=G+B(d,12)|0;D=C(C(C(z[b+8>>2]*q)+C(C(z[b>>2]*f)+C(z[b+4>>2]*i)))+n);s=sD?h:D;d=d+1|0;if((k|0)!=(d|0)){continue}break}}f=h;h=C(h-s);h=C(f/(h=h)){Q=v[H>>2]+(j<<4)|0;F=z[Q+4>>2];D=z[Q>>2];b=0;while(1){f=h;d=o+(b<<4)|0;n=z[d+4>>2];q=z[d>>2];_:{$:{if(!(q==D&n==F)){h=z[d+8>>2];s=z[Q+8>>2];R=z[Q+12>>2];break $}R=z[Q+12>>2];h=z[d+8>>2];s=z[Q+8>>2];if(h!=s){break $}r=C(0);if(z[d+12>>2]==R){break _}}aa:{if(!(C(C(s*h)+C(C(D*q)+C(F*n)))>C(.9986295104026794))){break aa}d=0;if(!N){break aa}while(1){g=l+(d<<2)|0;if(w[g+3|0]==(b|0)){g=G+B(w[g+2|0],12)|0;r=C(0);if(C(R+C(C(z[g+8>>2]*s)+C(C(z[g>>2]*D)+C(F*z[g+4>>2]))))J;J=b?h:J;c=b?j:c}j=j+1|0;if((L|0)!=(j|0)){continue}break}break X}if(!k){break Y}g=v[H>>2];c=-1;while(1){d=g+(b<<4)|0;n=z[d+12>>2];q=z[d+8>>2];i=z[d+4>>2];f=z[d>>2];s=C(0);h=C(0);d=0;while(1){o=G+B(d,12)|0;D=C(C(C(z[o+8>>2]*q)+C(C(z[o>>2]*f)+C(z[o+4>>2]*i)))+n);s=sD?h:D;d=d+1|0;if((k|0)!=(d|0)){continue}break}f=h;h=C(h-s);h=C(f/(hJ;J=d?h:J;c=d?b:c;b=b+1|0;if((L|0)!=(b|0)){continue}break}break X}c=-1}c=J>U?c:-1;if((c|0)<0){break W}V=v[E+112>>2]+(c<<4)|0;d=0;H=0;c=0;S=0;G=0;N=0;ha=0;m=xa-7968|0;xa=m;v[m+24>>2]=0;v[m+16>>2]=0;v[m+20>>2]=0;ba:{ca:{da:{ea:{fa:{o=v[e+4>>2];if(!o){break fa}D=C(-O);n=z[V+12>>2];q=z[V+8>>2];i=z[V+4>>2];f=z[V>>2];g=v[e>>2];while(1){l=255;ga:{ha:{ia:{b=g+B(d,12)|0;h=C(C(C(z[b+8>>2]*q)+C(C(z[b>>2]*f)+C(z[b+4>>2]*i)))+n);j=h>O?2:h>2]){break ea}$=-1;l=0;o=1;break da}b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?38869:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,40,c,7224,466)|0;v[b>>2]=0;v[b+4>>2]=0;v[b+32>>2]=0;o=b+24|0;v[o>>2]=0;v[o+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b+36>>2]=v[e+36>>2];l=v[e+4>>2];if(l>>>0>(v[b+8>>2]&2147483647)>>>0){I3(b,l)}p=m+4128|0;g=v[b+4>>2];if((g|0)<(l|0)){d=v[b>>2];c=d+B(l,12)|0;j=d+B(g,12)|0;while(1){z[j>>2]=z[p>>2];z[j+4>>2]=z[p+4>>2];z[j+8>>2]=z[p+8>>2];j=j+12|0;if(c>>>0>j>>>0){continue}break}}v[b+4>>2]=l;u4(b+12|0,v[e+16>>2],p);v4(o,v[e+28>>2],p);I9(v[b>>2],v[e>>2],B(v[e+4>>2],12));I9(v[b+12>>2],v[e+12>>2],v[e+16>>2]<<2);I9(v[o>>2],v[e+24>>2],v[e+28>>2]<<4);break ba}l=0;o=0;while(1){g=o;o=-1;H=255;d=255;da=255;$=0;b=g;while(1){L=b;b=b+1|0;ia=v[e+12>>2];if(!(b>>>0>2]&w[(ia+(b<<2)|0)+3|0]==(ha|0))){o=b;b=g}ea=ia+(L<<2)|0;aa=u[ea>>1];j=m+6176|0;k=ia+(b<<2)|0;ja=w[k+2|0];p=j+B(ja,3)|0;la=w[p|0];ja:{ka:{la:{ma:{P=w[ea+2|0];j=j+B(P,3)|0;Q=w[j|0];if((Q|0)==1){u[(m+6944|0)+(L<<1)>>1]=l;j=w[j+1|0];P=(m+4128|0)+((l&65535)<<2)|0;t[P+3|0]=S;t[P+2|0]=j;if((la|0)==1){break ma}na:{if(L>>>0>aa>>>0){j=u[(m+6944|0)+(aa<<1)>>1];u[P>>1]=j;j=(m+4128|0)+(j<<2)|0;u[j>>1]=l;H=w[j+2|0];break na}oa:{if(!la){H=w[p+1|0];if((H|0)!=255){break na}L=v[e>>2]+B(ja,12)|0;p=v[m+20>>2];pa:{if(p>>>0>=(v[m+24>>2]&2147483647)>>>0){J3(m+16|0,L);ja=w[k+2|0];break pa}j=v[m+16>>2]+B(p,12)|0;z[j>>2]=z[L>>2];z[j+4>>2]=z[L+4>>2];z[j+8>>2]=z[L+8>>2];v[m+20>>2]=p+1}t[((m+6176|0)+B(ja,3)|0)+1|0]=c;break oa}j=v[e+24>>2];w4(m,j+(w[ea+3|0]<<4)|0,j+(w[(ia+(aa<<2)|0)+3|0]<<4)|0,V);p=v[m+20>>2];if(p>>>0>=(v[m+24>>2]&2147483647)>>>0){J3(m+16|0,m);break oa}j=v[m+16>>2]+B(p,12)|0;z[j>>2]=z[m>>2];z[j+4>>2]=z[m+4>>2];z[j+8>>2]=z[m+8>>2];v[m+20>>2]=p+1}H=c;c=c+1|0}j=l+1|0;p=d&255;if((p|0)==255|(p|0)==(H&255)){break ka}da=j&65535;j=(m+4128|0)+(da<<2)|0;t[j+3|0]=S;t[j+2|0]=H;u[j>>1]=255;l=l+2|0;break ja}if((la|0)!=1){break ja}qa:{if(L>>>0>aa>>>0){j=m+4128|0;p=u[(m+6944|0)+(aa<<1)>>1];k=w[(j+(p<<2)|0)+3|0];d=p+1|0;ra:{if((d|0)<(l&65535)&(k|0)==w[((d<<2)+j|0)+3|0]){break ra}j=((p|0)<=0?p:1)-1|0;d=p;while(1){if((d|0)<2){d=j;break ra}p=d<<2;d=d-1|0;if((k|0)==w[(m+p|0)+4123|0]){continue}break}}d=w[((m+4128|0)+(d<<2)|0)+2|0];break qa}if(!Q){d=w[j+1|0];if((d|0)!=255){break qa}p=v[e>>2]+B(P,12)|0;j=v[m+20>>2];sa:{if(j>>>0>=(v[m+24>>2]&2147483647)>>>0){J3(m+16|0,p);P=w[ea+2|0];break sa}d=v[m+16>>2]+B(j,12)|0;z[d>>2]=z[p>>2];z[d+4>>2]=z[p+4>>2];z[d+8>>2]=z[p+8>>2];v[m+20>>2]=j+1}t[((m+6176|0)+B(P,3)|0)+1|0]=c;d=c;c=d+1|0;break qa}d=v[e+24>>2];w4(m,d+(w[ea+3|0]<<4)|0,d+(w[(ia+(aa<<2)|0)+3|0]<<4)|0,V);j=v[m+20>>2];ta:{if(j>>>0>=(v[m+24>>2]&2147483647)>>>0){J3(m+16|0,m);break ta}d=v[m+16>>2]+B(j,12)|0;z[d>>2]=z[m>>2];z[d+4>>2]=z[m+4>>2];z[d+8>>2]=z[m+8>>2];v[m+20>>2]=j+1}d=c;c=d+1|0}j=H&255;if(!((j|0)==255|(j|0)==(d&255))){da=l&65535;j=(m+4128|0)+(da<<2)|0;t[j+3|0]=S;t[j+2|0]=H;u[j>>1]=255;l=l+1|0}u[(m+6944|0)+(L<<1)>>1]=l;p=(m+4128|0)+((l&65535)<<2)|0;t[p+3|0]=S;t[p+2|0]=d;j=u[ea>>1];if(j>>>0>=L>>>0){break la}j=u[(m+6944|0)+(j<<1)>>1];u[p>>1]=j;u[(m+4128|0)+(j<<2)>>1]=l;break la}if(L>>>0<=aa>>>0){break la}j=u[(m+6944|0)+(aa<<1)>>1];u[P>>1]=j;u[(m+4128|0)+(j<<2)>>1]=l}l=l+1|0;break ja}l=j}$=Q|$;if((b|0)!=(g|0)){continue}break}if($&1){g=(m+2080|0)+((S&65535)<<4)|0;b=v[e+24>>2]+(ha<<4)|0;z[g>>2]=z[b>>2];z[g+4>>2]=z[b+4>>2];z[g+8>>2]=z[b+8>>2];z[g+12>>2]=z[b+12>>2];S=S+1|0}if((da|0)!=255){b=(m+32|0)+(G<<2)|0;t[b+3|0]=H;t[b+2|0]=d;u[b>>1]=da&255;G=G+1|0}ha=ha+1|0;if(ha>>>0>2]){continue}break}if(!G){o=1;G=0;$=-1;break da}b=(m+2080|0)+((S&65535)<<4)|0;z[b>>2]=z[V>>2];z[b+4>>2]=z[V+4>>2];z[b+8>>2]=z[V+8>>2];z[b+12>>2]=z[V+12>>2];S=S+1|0;o=0;$=G-1|0;g=1;if(!$){break ca}}while(1){b=m+32|0;L=w[(b+(N<<2)|0)+3|0];ua:{g=N+1|0;p=b+(g<<2)|0;if((L|0)==w[p+2|0]){break ua}b=0;d=N+2|0;if(G>>>0<=d>>>0){break ba}while(1){j=(m+32|0)+(d<<2)|0;if((L|0)==w[j+2|0]){b=v[p>>2];v[p>>2]=v[j>>2];v[j>>2]=b;break ua}d=d+1|0;if((G|0)!=(d|0)){continue}break}break ba}N=g;if((g|0)!=($|0)){continue}break}g=G}if(!c){b=0;break ba}d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?38869:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,40,b,7224,780)|0;d=v[e+36>>2];j=0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+36>>2]=d;H=v[e+4>>2];if(H){d=0;while(1){if(w[(m+6176|0)+B(d,3)|0]==1){L=v[e>>2]+B(d,12)|0;N=v[b+4>>2];va:{if(N>>>0>=(v[b+8>>2]&2147483647)>>>0){J3(b,L);break va}p=v[b>>2]+B(N,12)|0;z[p>>2]=z[L>>2];z[p+4>>2]=z[L+4>>2];z[p+8>>2]=z[L+8>>2];v[b+4>>2]=N+1}H=v[e+4>>2];j=j+1|0}d=d+1|0;if(H>>>0>d>>>0){continue}break}}if(c>>>0>j>>>0){j=c-j|0;d=0;while(1){c=d+1|0;N=v[m+16>>2]+B(d,12)|0;p=v[b+4>>2];wa:{if(p>>>0>=(v[b+8>>2]&2147483647)>>>0){J3(b,N);break wa}d=v[b>>2]+B(p,12)|0;z[d>>2]=z[N>>2];z[d+4>>2]=z[N+4>>2];z[d+8>>2]=z[N+8>>2];v[b+4>>2]=p+1}d=c;if((j|0)!=(d|0)){continue}break}}P=l&65535;u4(b+12|0,P+g|0,m);H=S&65535;v4(b+24|0,H,m);xa:{if(o){j=v[b+12>>2];break xa}Q=S-1|0;j=v[b+12>>2];d=0;if((g|0)!=1){G=g&-2;o=0;while(1){p=d+P|0;k=(p<<2)+j|0;t[k+3|0]=Q;L=m+32|0;l=L+(d<<2)|0;c=x[l>>1];u[k>>1]=c;N=m+4128|0;u[N+(c<<2)>>1]=p;t[k+2|0]=w[l+2|0];c=d|1;p=c+P|0;k=(p<<2)+j|0;t[k+3|0]=Q;l=L+(c<<2)|0;c=x[l>>1];u[k>>1]=c;u[N+(c<<2)>>1]=p;t[k+2|0]=w[l+2|0];d=d+2|0;o=o+2|0;if((G|0)!=(o|0)){continue}break}}if(!(g&1)){break xa}g=d+P|0;o=(g<<2)+j|0;t[o+3|0]=Q;d=(m+32|0)+(d<<2)|0;c=x[d>>1];u[o>>1]=c;u[(m+4128|0)+(c<<2)>>1]=g;t[o+2|0]=w[d+2|0]}I9(j,m+4128|0,P<<2);I9(v[b+24>>2],m+2080|0,H<<4)}c=v[m+24>>2];ya:{if((c|0)<0|!(c&2147483647)){break ya}d=v[m+16>>2];if(!d){break ya}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}xa=m+7968|0;d=b;if(!b){break W}za:{b=0;c=0;l=v[d+16>>2];G=v[d+12>>2];Aa:{while(1){Ba:{if((b|0)==(l|0)){if(l){I=C(-O);L=v[d>>2];p=v[d+24>>2];b=0;while(1){g=G+(b<<2)|0;o=L+B(w[g+2|0],12)|0;M=z[o+8>>2];N=w[g+3|0];g=p+(N<<4)|0;s=z[g+8>>2];i=z[o>>2];J=z[g>>2];F=z[o+4>>2];D=z[g+4>>2];h=C(C(C(M*s)+C(C(i*J)+C(F*D)))+z[g+12>>2]);if(h>O|h>>0>>0){g=o;if((N|0)==w[(G+(g<<2)|0)+3|0]){break Ca}}g=c}j=g+1|0;if(!(l>>>0>j>>>0&(N|0)==w[(G+(j<<2)|0)+3|0])){j=c}if((b|0)!=(j|0)){g=L+B(w[(G+(g<<2)|0)+2|0],12)|0;f=z[g>>2];n=C(f-i);b=L+B(w[(G+(j<<2)|0)+2|0],12)|0;h=z[g+4>>2];q=C(z[b+4>>2]-h);i=C(z[b>>2]-f);h=C(h-F);F=C(C(n*q)-C(i*h));r=h;h=z[g+8>>2];f=C(z[b+8>>2]-h);h=C(h-M);q=C(C(r*f)-C(q*h));i=C(C(h*i)-C(f*n));h=C(K(C(C(F*F)+C(C(q*q)+C(i*i)))));f=C(C(1)/h);b=h==C(0);if(C(C(C(f*(b?C(0):F))*s)+C(C(C(f*(b?C(1):q))*J)+C(D*C(f*(b?C(0):i)))))<=C(0)){break Ba}}b=o;if((l|0)!=(b|0)){continue}break}}g=1;break Aa}j=G+(b<<2)|0;o=w[j+3|0];c=(o|0)==w[(G+(c<<2)|0)+3|0]?c:b;b=b+1|0;Da:{if(l>>>0>b>>>0){g=b;if((o|0)==w[(G+(b<<2)|0)+3|0]){break Da}}g=c}o=x[j>>1];if((o|0)==255|(o|0)==65535){break Ba}if(w[(G+(o<<16>>16<<2)|0)+2|0]==w[(G+(g<<2)|0)+2|0]){continue}}break}g=0}if(!g){c=v[d+32>>2];Ea:{if((c|0)<0|!(c&2147483647)){break Ea}b=v[d+24>>2];if(!b){break Ea}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+20>>2];Fa:{if((c|0)<0|!(c&2147483647)){break Fa}b=v[d+12>>2];if(!b){break Fa}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+8>>2];if((c|0)<0|!(c&2147483647)){break za}b=v[d>>2];if(!b){break za}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);break za}c=v[a+4>>2];if(y[d+4>>2]>x[c+38>>1]){c=v[d+32>>2];Ga:{if((c|0)<0|!(c&2147483647)){break Ga}b=v[d+24>>2];if(!b){break Ga}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+20>>2];Ha:{if((c|0)<0|!(c&2147483647)){break Ha}b=v[d+12>>2];if(!b){break Ha}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+8>>2];if((c|0)<0|!(c&2147483647)){break za}b=v[d>>2];if(!b){break za}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);break za}Ia:{if(!(w[c+36|0]&128)){break Ia}l=0;o=0;H=0;b=0;c=v[d+16>>2];if(c){p=c&1;G=v[d+12>>2];Ja:{if((c|0)==1){c=0;break Ja}j=c&-2;c=0;while(1){g=l+1|0;L=w[(G+(o<<2)|0)+3|0]==w[(G+(c<<2)|0)+3|0];N=L?b:b>>>0>>0?g:b;k=N;b=L?g:0;l=b+1|0;b=b>>>0>N>>>0?l:N;o=L?o:c;g=c|1;N=w[(G+(o<<2)|0)+3|0]==w[(G+(g<<2)|0)+3|0];b=N?k:b;o=N?o:g;l=N?l:0;c=c+2|0;H=H+2|0;if((j|0)!=(H|0)){continue}break}}if(p){b=w[(G+(o<<2)|0)+3|0]==w[(G+(c<<2)|0)+3|0]?b:b>>>0>>0?l+1|0:b}}if(b>>>0<33){break Ia}c=v[d+32>>2];Ka:{if((c|0)<0|!(c&2147483647)){break Ka}b=v[d+24>>2];if(!b){break Ka}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+20>>2];La:{if((c|0)<0|!(c&2147483647)){break La}b=v[d+12>>2];if(!b){break La}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[d+8>>2];if((c|0)<0|!(c&2147483647)){break za}b=v[d>>2];if(!b){break za}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);break za}c=v[e+32>>2];Ma:{if((c|0)<0|!(c&2147483647)){break Ma}b=v[e+24>>2];if(!b){break Ma}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[e+20>>2];Na:{if((c|0)<0|!(c&2147483647)){break Na}b=v[e+12>>2];if(!b){break Na}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}W=W-1|0;c=v[e+8>>2];Oa:{if((c|0)<0|!(c&2147483647)){break Oa}b=v[e>>2];if(!b){break Oa}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e);if(W){continue}break V}break}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}d=e}v[a+36>>2]=d;a=v[E+120>>2];Pa:{if((a|0)<0|!(a&2147483647)){break Pa}c=v[E+112>>2];if(!c){break Pa}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,c)}xa=E+128|0}function tS(a,b,c,d,e,f,g,h){var i=0,j=0,k=C(0),l=0,m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=0,s=C(0),E=0,F=C(0),G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=0,R=C(0),S=0,T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=C(0),ja=C(0),ka=C(0),la=0,ma=0,na=0,oa=0,pa=0,qa=C(0),ra=C(0),sa=C(0),ta=0,ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=0,Da=0,Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=0,Oa=0,Pa=0,Qa=0,Ra=0;i=xa-2960|0;xa=i;r=v[a>>2];na=A[b+32>>3];ta=A[b+24>>3];oa=A[b>>3];fa=A[b+8>>3];ba=A[b+16>>3];ga=A[b+40>>3];A[i+1736>>3]=(ba+ga)*.5;A[i+1728>>3]=(fa+na)*.5;A[i+1720>>3]=(oa+ta)*.5;b=w[f+8|0];o=w[f+9|0]?b|2:b;l=v[f+4>>2];if(l){b=w[f+10|0]?o|4:o;o=w[f+11|0]?b|8:b}n=C(ga);z[i+1716>>2]=n;N=C(na);z[i+1712>>2]=N;L=C(ta);z[i+1708>>2]=L;I=C(fa);z[i+1700>>2]=I;q=C(oa);z[i+1696>>2]=q;s=C(C(N-I)*C(.5));m=C(ba);z[i+1704>>2]=m;k=C(n-m);J=C(C(q+L)*C(.5));p=C(C(m+n)*C(.5));while(1){b=(i+96|0)+(j<<4)|0;v[b+8>>2]=-1;v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=-1;v[b+16>>2]=0;v[b+20>>2]=0;v[b+40>>2]=-1;v[b+32>>2]=0;v[b+36>>2]=0;v[b+56>>2]=-1;v[b+48>>2]=0;v[b+52>>2]=0;v[b+72>>2]=-1;b=b- -64|0;v[b>>2]=0;v[b+4>>2]=0;j=j+5|0;if((j|0)!=100){continue}break}n=C(k*C(.5));m=C(C(L-q)*C(.5));k=C(C(I+N)*C(.5));b=v[f>>2];a:{if(b){v[i+72>>2]=v[b>>2];v[i+76>>2]=v[b+4>>2];v[i+80>>2]=v[b+8>>2];v[i+84>>2]=v[b+12>>2];break a}v[i+80>>2]=0;v[i+84>>2]=0;v[i+72>>2]=0;v[i+76>>2]=0}v[i+44>>2]=-1;v[i+60>>2]=100;v[i+64>>2]=0;t[i+52|0]=0;v[i+36>>2]=0;v[i+40>>2]=0;v[i+32>>2]=139372;u[i+88>>1]=o|32;v[i+56>>2]=i+96;z[i+2924>>2]=n;z[i+2920>>2]=s;z[i+2916>>2]=m;v[i+2912>>2]=3;z[i+1880>>2]=p;z[i+1876>>2]=k;z[i+1872>>2]=J;v[i+1864>>2]=0;v[i+1868>>2]=1065353216;v[i+1856>>2]=0;v[i+1860>>2]=0;Ba[v[v[r>>2]+356>>2]](r,i+2912|0,i+1856|0,i+32|0,i+72|0,l)|0;Na=v[i+64>>2]+w[i+52|0]|0;if(Na){Qa=i+40|0;Ra=i+32|4;Ca=i+1840|0;Da=i+1828|0;Oa=i+1768|0;Pa=i+1756|0;ca=i+1728|0;da=i+1736|0;f=0;while(1){j=v[i+56>>2]+(f<<4)|0;b=y[i+64>>2]>f>>>0;Q=v[(b?j+4|0:Qa)>>2];b:{if(!Q){break b}r=v[(b?j:Ra)>>2];if(!r){break b}l=v[a+8>>2];c:{if(!v[l+36>>2]){break c}b=(Q<<15^-1)+Q|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;j=v[v[l+12>>2]+((v[l+20>>2]-1&(b>>>16^b))<<2)>>2];if((j|0)==-1){break c}G=v[l+8>>2];l=v[l+4>>2];while(1){b=j<<2;if(v[b+l>>2]==(Q|0)){break b}j=v[b+G>>2];if((j|0)!=-1){continue}break}}Ba[v[v[Q>>2]+156>>2]](i+1856|0,Q);if(w[i+1856|0]&4){break b}Ba[v[v[r>>2]+76>>2]](i+1856|0,r);Ba[v[v[Q>>2]+80>>2]](i+2912|0,Q);L=z[i+1868>>2];p=z[i+2924>>2];n=z[i+2912>>2];I=z[i+1856>>2];q=z[i+1860>>2];m=z[i+2916>>2];s=z[i+1864>>2];k=z[i+2920>>2];z[i+12>>2]=C(C(C(L*p)-C(n*I))-C(q*m))-C(s*k);z[i+8>>2]=C(C(I*m)+C(C(L*k)+C(s*p)))-C(n*q);z[i+4>>2]=C(C(s*n)+C(C(L*m)+C(q*p)))-C(k*I);z[i>>2]=C(C(q*k)+C(C(L*n)+C(I*p)))-C(m*s);k=z[i+2936>>2];J=C(k+k);k=z[i+2928>>2];p=C(k+k);k=z[i+2932>>2];n=C(k+k);m=C(C(s*J)+C(C(I*p)+C(q*n)));k=C(C(L*L)+C(-.5));z[i+24>>2]=z[i+1880>>2]+C(C(s*m)+C(C(J*k)+C(L*C(C(I*n)-C(p*q)))));z[i+20>>2]=z[i+1876>>2]+C(C(q*m)+C(C(n*k)+C(L*C(C(s*p)-C(J*I)))));z[i+16>>2]=z[i+1872>>2]+C(C(I*m)+C(C(p*k)+C(L*C(C(q*J)-C(n*s)))));d:{e:{switch(Ba[v[v[Q>>2]+32>>2]](Q)|0){case 0:v[i+1856>>2]=0;v[i+1860>>2]=0;Ba[v[v[Q>>2]+48>>2]](Q,i+1856|0)|0;p=z[i+24>>2];n=z[i+20>>2];m=z[i+16>>2];k=z[i+1860>>2];j=v[e+4>>2];l=j+13|0;b=v[e+8>>2]&2147483647;f:{if(l>>>0<=b>>>0){break f}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break f}Aw(e,b);j=v[e+4>>2]}v[e+4>>2]=l;j=v[e>>2]+(j<<2)|0;v[j+8>>2]=r;v[j+4>>2]=Q;v[j>>2]=4;b=v[i+1724>>2];v[j+12>>2]=v[i+1720>>2];v[j+16>>2]=b;b=v[ca+4>>2];v[j+20>>2]=v[ca>>2];v[j+24>>2]=b;b=v[da+4>>2];v[j+28>>2]=v[da>>2];v[j+32>>2]=b;z[j+48>>2]=k;z[j+36>>2]=+m-A[i+1720>>3];z[j+40>>2]=+n-A[ca>>3];z[j+44>>2]=+p-A[da>>3];break b;case 2:v[i+1860>>2]=0;v[i+1864>>2]=0;v[i+1856>>2]=2;Ba[v[v[Q>>2]+52>>2]](Q,i+1856|0)|0;k=z[i+1860>>2];L=z[i+24>>2];I=z[i+20>>2];q=z[i+16>>2];s=z[i+4>>2];J=z[i+8>>2];n=z[i+12>>2];m=z[i>>2];N=z[i+1864>>2];j=v[e+4>>2];l=j+16|0;b=v[e+8>>2]&2147483647;g:{if(l>>>0<=b>>>0){break g}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break g}Aw(e,b);j=v[e+4>>2]}v[e+4>>2]=l;j=v[e>>2]+(j<<2)|0;v[j+8>>2]=r;v[j+4>>2]=Q;v[j>>2]=5;b=v[i+1724>>2];v[j+12>>2]=v[i+1720>>2];v[j+16>>2]=b;b=v[ca+4>>2];v[j+20>>2]=v[ca>>2];v[j+24>>2]=b;b=v[da+4>>2];v[j+28>>2]=v[da>>2];v[j+32>>2]=b;z[j+60>>2]=k;p=C(m+m);k=n;n=C(n+n);m=C(N*C(C(m*p)+C(C(k*n)+C(-1))));ba=A[i+1720>>3];z[j+36>>2]=+C(q+m)-ba;k=C(N*C(C(J*n)+C(p*s)));ga=A[ca>>3];z[j+40>>2]=+C(I+k)-ga;fa=A[da>>3];z[j+52>>2]=+C(I-k)-ga;z[j+48>>2]=+C(q-m)-ba;k=C(N*C(C(p*J)-C(s*n)));z[j+56>>2]=+C(L-k)-fa;z[j+44>>2]=+C(k+L)-fa;break b;case 3:o=0;v[i+1756>>2]=0;v[i+1748>>2]=0;v[i+1752>>2]=0;v[i+1744>>2]=3;Ba[v[v[Q>>2]+44>>2]](Q,i+1744|0)|0;J=z[i+1748>>2];p=z[i+1752>>2];k=z[i+1756>>2];z[i+1948>>2]=k;z[i+1944>>2]=p;n=C(-J);z[i+1940>>2]=n;z[i+1936>>2]=k;z[i+1932>>2]=p;z[i+1928>>2]=J;z[i+1924>>2]=k;m=C(-p);z[i+1920>>2]=m;z[i+1916>>2]=J;z[i+1912>>2]=k;z[i+1908>>2]=m;z[i+1904>>2]=n;k=C(-k);z[i+1900>>2]=k;z[i+1896>>2]=p;z[i+1892>>2]=n;z[i+1888>>2]=k;z[i+1884>>2]=p;z[i+1880>>2]=J;z[i+1876>>2]=k;z[i+1872>>2]=m;z[i+1868>>2]=J;z[i+1864>>2]=k;z[i+1860>>2]=m;z[i+1856>>2]=n;T=z[i+12>>2];Y=C(C(T*T)+C(-.5));R=z[i+4>>2];q=C(-R);U=z[i>>2];s=C(-U);F=z[i+8>>2];J=C(-F);L=C(A[i+1736>>3]);I=C(A[i+1728>>3]);M=C(A[i+1720>>3]);p=z[i+24>>2];n=z[i+20>>2];m=z[i+16>>2];while(1){b=(i+1856|0)+B(o,12)|0;k=z[b+8>>2];W=C(k+k);k=z[b>>2];H=C(k+k);k=z[b+4>>2];N=C(k+k);k=C(C(F*W)+C(C(U*H)+C(R*N)));z[b+8>>2]=C(p+C(C(F*k)+C(C(W*Y)+C(T*C(C(U*N)+C(H*q))))))-L;z[b+4>>2]=C(n+C(C(R*k)+C(C(N*Y)+C(T*C(C(F*H)+C(W*s))))))-I;z[b>>2]=C(m+C(C(U*k)+C(C(H*Y)+C(T*C(C(R*W)+C(N*J))))))-M;o=o+1|0;if((o|0)!=8){continue}break};break d;case 5:v[i+1848>>2]=0;v[i+1852>>2]=0;v[i+1844>>2]=1065353216;v[i+1836>>2]=0;v[i+1840>>2]=0;v[i+1828>>2]=1065353216;v[i+1832>>2]=0;v[i+1820>>2]=1065353216;v[i+1824>>2]=1065353216;v[i+1816>>2]=5;V=i+1816|0;Ba[v[v[Q>>2]+64>>2]](Q,V)|0;v[i+2896>>2]=3;s=z[i+1716>>2];J=z[i+1704>>2];z[i+2908>>2]=C(s-J)*C(.5);p=z[i+1712>>2];n=z[i+1700>>2];z[i+2904>>2]=C(p-n)*C(.5);m=z[i+1708>>2];k=z[i+1696>>2];z[i+2900>>2]=C(m-k)*C(.5);z[i+1808>>2]=C(s+J)*C(.5);z[i+1804>>2]=C(p+n)*C(.5);z[i+1800>>2]=C(m+k)*C(.5);v[i+1792>>2]=0;v[i+1796>>2]=1065353216;v[i+1784>>2]=0;v[i+1788>>2]=0;O=i+1856|0;b=O;v[b+1028>>2]=0;v[b+1032>>2]=256;v[b>>2]=b+4;P=xa-16|0;xa=P;o=i+2896|0;G=i+1784|0;l=D$(o,G,V,i,v[b>>2],v[b+1032>>2],P+15|0);h:{if(!w[P+15|0]){break h}l=0;b=v[V+36>>2];j=Ba[v[v[b>>2]+40>>2]](b)|0;if(!j){break h}l=v[O>>2];b=v[O+1032>>2];i:{if(b>>>0>=j>>>0){j=b;break i}if(!(!l|(O+4|0)==(l|0))){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,l)}l=j<<2;if(l){b=v[37696]+12|0;l=Ba[v[v[b>>2]+8>>2]](b,l,24422,6309,72)|0}else{l=0}v[O+1032>>2]=j;v[O>>2]=l}l=D$(o,G,V,i,l,j,P+15|0)}v[O+1028>>2]=l;xa=P+16|0;G=l;fa=A[i+1736>>3];ba=A[i+1728>>3];ga=A[i+1720>>3];j=v[e+4>>2];l=j+11|0;b=v[e+8>>2]&2147483647;j:{if(l>>>0<=b>>>0){break j}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break j}Aw(e,b);j=v[e+4>>2]}F=C(fa);H=C(ba);M=C(ga);v[e+4>>2]=l;S=v[e>>2]+(j<<2)|0;v[S+8>>2]=r;v[S+4>>2]=Q;v[S>>2]=2;b=v[i+1724>>2];v[S+12>>2]=v[i+1720>>2];v[S+16>>2]=b;b=v[ca+4>>2];v[S+20>>2]=v[ca>>2];v[S+24>>2]=b;b=v[da+4>>2];v[S+28>>2]=v[da>>2];v[S+32>>2]=b;v[S+36>>2]=G;j=v[c+4>>2];v[S+40>>2]=j;b=w[g+56|0];P=v[O>>2];k:{l:{if(z[g+32>>2]!=C(0)){if(!b){b=0;l=0;if(!G){break l}while(1){j=v[P+(l<<2)>>2];v[i+1744>>2]=j;r=j;j=i+2912|0;B$(i+1816|0,i,r,j);z[i+2912>>2]=z[i+2912>>2]-M;z[i+2916>>2]=z[i+2916>>2]-H;z[i+2920>>2]=z[i+2920>>2]-F;z[i+2924>>2]=z[i+2924>>2]-M;z[i+2928>>2]=z[i+2928>>2]-H;z[i+2932>>2]=z[i+2932>>2]-F;z[i+2936>>2]=z[i+2936>>2]-M;z[i+2940>>2]=z[i+2940>>2]-H;z[i+2944>>2]=z[i+2944>>2]-F;j=uS(g,j,c,d);b=j+b|0;if(!j){r=v[c+4>>2];j=r;V=j+2|0;o=v[c+8>>2]&2147483647;m:{if(V>>>0<=o>>>0){break m}j=r;ha=o;o=o?o<<1:2;o=o>>>0>>0?V:o;if(ha>>>0>=o>>>0){break m}vS(c,o);j=v[c+4>>2]}v[c+4>>2]=r+1;j=v[c>>2]+B(j,36)|0;z[j>>2]=z[i+2912>>2];z[j+4>>2]=z[i+2916>>2];z[j+8>>2]=z[i+2920>>2];z[j+12>>2]=z[i+2924>>2];z[j+16>>2]=z[i+2928>>2];z[j+20>>2]=z[i+2932>>2];z[j+24>>2]=z[i+2936>>2];z[j+28>>2]=z[i+2940>>2];z[j+32>>2]=z[i+2944>>2];j=v[d+4>>2];n:{if(j>>>0>=(v[d+8>>2]&2147483647)>>>0){pn(d,i+1744|0);break n}v[v[d>>2]+(j<<2)>>2]=v[i+1744>>2];v[d+4>>2]=v[d+4>>2]+1}b=b+1|0}l=l+1|0;if((G|0)!=(l|0)){continue}break}break l}if(!G){b=0;break l}m=C(z[i+1808>>2]-F);k=z[i+2908>>2];N=C(m+k);p=C(m-k);L=C(C(N-p)*C(.5));m=C(z[i+1804>>2]-H);k=z[i+2904>>2];I=C(m+k);q=C(m-k);s=C(C(I-q)*C(.5));n=C(z[i+1800>>2]-M);k=z[i+2900>>2];m=C(n+k);k=C(n-k);J=C(C(m-k)*C(.5));p=C(C(p+N)*C(.5));n=C(C(q+I)*C(.5));m=C(C(k+m)*C(.5));b=0;j=0;while(1){r=v[P+(j<<2)>>2];l=i+1744|0;B$(i+1816|0,i,r,l);z[i+1744>>2]=z[i+1744>>2]-M;z[i+1748>>2]=z[i+1748>>2]-H;z[i+1752>>2]=z[i+1752>>2]-F;z[i+1756>>2]=z[i+1756>>2]-M;z[i+1760>>2]=z[i+1760>>2]-H;z[i+1764>>2]=z[i+1764>>2]-F;z[i+1768>>2]=z[i+1768>>2]-M;z[i+1772>>2]=z[i+1772>>2]-H;z[i+1776>>2]=z[i+1776>>2]-F;l=uS(g,l,c,d);b=l+b|0;if(!l){k=z[g+52>>2];u[i+2956>>1]=0;z[i+2952>>2]=k;z[i+2948>>2]=L;z[i+2944>>2]=s;z[i+2940>>2]=J;z[i+2936>>2]=p;z[i+2932>>2]=n;z[i+2928>>2]=m;v[i+2924>>2]=d;v[i+2920>>2]=c;v[i+2916>>2]=r;v[i+2912>>2]=0;wS(i+2912|0,i+1744|0,Pa,Oa);l=v[i+2912>>2];u[h>>1]=x[h>>1]+x[i+2956>>1];b=b+l|0}j=j+1|0;if((G|0)!=(j|0)){continue}break}break l}if(!b){l=j+G|0;r=l+1|0;b=v[c+8>>2]&2147483647;o:{if(r>>>0<=b>>>0){break o}o=b;b=b?b<<1:2;b=b>>>0>>0?r:b;if(o>>>0>=b>>>0){break o}vS(c,b);j=v[c+4>>2]}v[c+4>>2]=l;if(!G){break k}b=v[c>>2]+B(j,36)|0;j=0;while(1){l=v[P+(j<<2)>>2];v[i+2912>>2]=l;B$(i+1816|0,i,l,b);z[b>>2]=z[b>>2]-M;z[b+4>>2]=z[b+4>>2]-H;z[b+8>>2]=z[b+8>>2]-F;z[b+12>>2]=z[b+12>>2]-M;z[b+16>>2]=z[b+16>>2]-H;z[b+20>>2]=z[b+20>>2]-F;z[b+24>>2]=z[b+24>>2]-M;z[b+28>>2]=z[b+28>>2]-H;z[b+32>>2]=z[b+32>>2]-F;l=v[d+4>>2];p:{if(l>>>0>=(v[d+8>>2]&2147483647)>>>0){pn(d,i+2912|0);break p}v[v[d>>2]+(l<<2)>>2]=v[i+2912>>2];v[d+4>>2]=v[d+4>>2]+1}b=b+36|0;j=j+1|0;if((G|0)!=(j|0)){continue}break}break k}if(!G){b=0;break l}m=C(z[i+1808>>2]-F);k=z[i+2908>>2];N=C(m+k);p=C(m-k);L=C(C(N-p)*C(.5));m=C(z[i+1804>>2]-H);k=z[i+2904>>2];I=C(m+k);q=C(m-k);s=C(C(I-q)*C(.5));n=C(z[i+1800>>2]-M);k=z[i+2900>>2];m=C(n+k);k=C(n-k);J=C(C(m-k)*C(.5));p=C(C(p+N)*C(.5));n=C(C(q+I)*C(.5));m=C(C(k+m)*C(.5));j=0;b=0;while(1){r=v[P+(j<<2)>>2];l=i+1744|0;B$(i+1816|0,i,r,l);z[i+1744>>2]=z[i+1744>>2]-M;z[i+1748>>2]=z[i+1748>>2]-H;z[i+1752>>2]=z[i+1752>>2]-F;z[i+1756>>2]=z[i+1756>>2]-M;z[i+1760>>2]=z[i+1760>>2]-H;z[i+1764>>2]=z[i+1764>>2]-F;z[i+1768>>2]=z[i+1768>>2]-M;z[i+1772>>2]=z[i+1772>>2]-H;z[i+1776>>2]=z[i+1776>>2]-F;k=z[g+52>>2];u[i+2956>>1]=0;z[i+2952>>2]=k;z[i+2948>>2]=L;z[i+2944>>2]=s;z[i+2940>>2]=J;z[i+2936>>2]=p;z[i+2932>>2]=n;z[i+2928>>2]=m;v[i+2924>>2]=d;v[i+2920>>2]=c;v[i+2916>>2]=r;v[i+2912>>2]=0;wS(i+2912|0,l,Pa,Oa);l=v[i+2912>>2];u[h>>1]=x[h>>1]+x[i+2956>>1];b=b+l|0;j=j+1|0;if((G|0)!=(j|0)){continue}break}}v[S+36>>2]=b}W8(O);break b;case 6:v[i+1800>>2]=1065353216;v[i+1804>>2]=0;v[i+1792>>2]=1065353216;v[i+1796>>2]=1065353216;v[i+1784>>2]=6;v[i+1788>>2]=0;P=i+1784|0;Ba[v[v[Q>>2]+68>>2]](Q,P)|0;v[i+2896>>2]=3;s=z[i+1716>>2];J=z[i+1704>>2];z[i+2908>>2]=C(s-J)*C(.5);p=z[i+1712>>2];n=z[i+1700>>2];z[i+2904>>2]=C(p-n)*C(.5);m=z[i+1708>>2];k=z[i+1696>>2];z[i+2900>>2]=C(m-k)*C(.5);z[i+1768>>2]=C(s+J)*C(.5);z[i+1764>>2]=C(p+n)*C(.5);z[i+1760>>2]=C(m+k)*C(.5);v[i+1752>>2]=0;v[i+1756>>2]=1065353216;v[i+1744>>2]=0;v[i+1748>>2]=0;S=i+1856|0;b=S;v[b+1028>>2]=0;v[b+1032>>2]=256;v[b>>2]=b+4;O=xa-16|0;xa=O;t[O+15|0]=1;V=i+2896|0;o=i+1744|0;l=E$(V,o,P,i,v[b>>2],v[b+1032>>2],O+15|0);q:{if(!w[O+15|0]){break q}l=0;b=v[P+4>>2];j=Ba[v[v[b>>2]+32>>2]](b)|0;b=v[P+4>>2];G=B(j,Ba[v[v[b>>2]+36>>2]](b)|0);j=G<<1;if(!j){break q}l=v[S>>2];b=v[S+1032>>2];r:{if(b>>>0>=j>>>0){j=b;break r}if(!(!l|(S+4|0)==(l|0))){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,l)}l=G<<3;if(l){b=v[37696]+12|0;l=Ba[v[v[b>>2]+8>>2]](b,l,24422,6309,102)|0}else{l=0}v[S+1032>>2]=j;v[S>>2]=l}l=E$(V,o,P,i,l,j,O+15|0)}v[S+1028>>2]=l;xa=O+16|0;G=l;fa=A[i+1736>>3];ba=A[i+1728>>3];ga=A[i+1720>>3];j=v[e+4>>2];l=j+11|0;b=v[e+8>>2]&2147483647;s:{if(l>>>0<=b>>>0){break s}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break s}Aw(e,b);j=v[e+4>>2]}F=C(fa);H=C(ba);M=C(ga);v[e+4>>2]=l;O=v[e>>2]+(j<<2)|0;v[O+8>>2]=r;v[O+4>>2]=Q;v[O>>2]=2;b=v[i+1724>>2];v[O+12>>2]=v[i+1720>>2];v[O+16>>2]=b;b=v[ca+4>>2];v[O+20>>2]=v[ca>>2];v[O+24>>2]=b;b=v[da+4>>2];v[O+28>>2]=v[da>>2];v[O+32>>2]=b;v[O+36>>2]=G;j=v[c+4>>2];v[O+40>>2]=j;b=w[g+56|0];P=v[S>>2];t:{u:{if(z[g+32>>2]!=C(0)){if(!b){b=0;l=0;if(!G){break u}while(1){j=v[P+(l<<2)>>2];v[i+1816>>2]=j;r=j;j=i+2912|0;C$(i+1784|0,i,r,j);z[i+2912>>2]=z[i+2912>>2]-M;z[i+2916>>2]=z[i+2916>>2]-H;z[i+2920>>2]=z[i+2920>>2]-F;z[i+2924>>2]=z[i+2924>>2]-M;z[i+2928>>2]=z[i+2928>>2]-H;z[i+2932>>2]=z[i+2932>>2]-F;z[i+2936>>2]=z[i+2936>>2]-M;z[i+2940>>2]=z[i+2940>>2]-H;z[i+2944>>2]=z[i+2944>>2]-F;j=uS(g,j,c,d);b=j+b|0;if(!j){r=v[c+4>>2];j=r;V=j+2|0;o=v[c+8>>2]&2147483647;v:{if(V>>>0<=o>>>0){break v}j=r;ha=o;o=o?o<<1:2;o=o>>>0>>0?V:o;if(ha>>>0>=o>>>0){break v}vS(c,o);j=v[c+4>>2]}v[c+4>>2]=r+1;j=v[c>>2]+B(j,36)|0;z[j>>2]=z[i+2912>>2];z[j+4>>2]=z[i+2916>>2];z[j+8>>2]=z[i+2920>>2];z[j+12>>2]=z[i+2924>>2];z[j+16>>2]=z[i+2928>>2];z[j+20>>2]=z[i+2932>>2];z[j+24>>2]=z[i+2936>>2];z[j+28>>2]=z[i+2940>>2];z[j+32>>2]=z[i+2944>>2];j=v[d+4>>2];w:{if(j>>>0>=(v[d+8>>2]&2147483647)>>>0){pn(d,i+1816|0);break w}v[v[d>>2]+(j<<2)>>2]=v[i+1816>>2];v[d+4>>2]=v[d+4>>2]+1}b=b+1|0}l=l+1|0;if((G|0)!=(l|0)){continue}break}break u}if(!G){b=0;break u}m=C(z[i+1768>>2]-F);k=z[i+2908>>2];N=C(m+k);p=C(m-k);L=C(C(N-p)*C(.5));m=C(z[i+1764>>2]-H);k=z[i+2904>>2];I=C(m+k);q=C(m-k);s=C(C(I-q)*C(.5));n=C(z[i+1760>>2]-M);k=z[i+2900>>2];m=C(n+k);k=C(n-k);J=C(C(m-k)*C(.5));p=C(C(p+N)*C(.5));n=C(C(q+I)*C(.5));m=C(C(k+m)*C(.5));b=0;j=0;while(1){r=v[P+(j<<2)>>2];l=i+1816|0;C$(i+1784|0,i,r,l);z[i+1816>>2]=z[i+1816>>2]-M;z[i+1820>>2]=z[i+1820>>2]-H;z[i+1824>>2]=z[i+1824>>2]-F;z[i+1828>>2]=z[i+1828>>2]-M;z[i+1832>>2]=z[i+1832>>2]-H;z[i+1836>>2]=z[i+1836>>2]-F;z[i+1840>>2]=z[i+1840>>2]-M;z[i+1844>>2]=z[i+1844>>2]-H;z[i+1848>>2]=z[i+1848>>2]-F;l=uS(g,l,c,d);b=l+b|0;if(!l){k=z[g+52>>2];u[i+2956>>1]=0;z[i+2952>>2]=k;z[i+2948>>2]=L;z[i+2944>>2]=s;z[i+2940>>2]=J;z[i+2936>>2]=p;z[i+2932>>2]=n;z[i+2928>>2]=m;v[i+2924>>2]=d;v[i+2920>>2]=c;v[i+2916>>2]=r;v[i+2912>>2]=0;wS(i+2912|0,i+1816|0,Da,Ca);l=v[i+2912>>2];u[h>>1]=x[h>>1]+x[i+2956>>1];b=b+l|0}j=j+1|0;if((G|0)!=(j|0)){continue}break}break u}if(!b){l=j+G|0;r=l+1|0;b=v[c+8>>2]&2147483647;x:{if(r>>>0<=b>>>0){break x}o=b;b=b?b<<1:2;b=b>>>0>>0?r:b;if(o>>>0>=b>>>0){break x}vS(c,b);j=v[c+4>>2]}v[c+4>>2]=l;if(!G){break t}b=v[c>>2]+B(j,36)|0;j=0;while(1){l=v[P+(j<<2)>>2];v[i+2912>>2]=l;C$(i+1784|0,i,l,b);z[b>>2]=z[b>>2]-M;z[b+4>>2]=z[b+4>>2]-H;z[b+8>>2]=z[b+8>>2]-F;z[b+12>>2]=z[b+12>>2]-M;z[b+16>>2]=z[b+16>>2]-H;z[b+20>>2]=z[b+20>>2]-F;z[b+24>>2]=z[b+24>>2]-M;z[b+28>>2]=z[b+28>>2]-H;z[b+32>>2]=z[b+32>>2]-F;l=v[d+4>>2];y:{if(l>>>0>=(v[d+8>>2]&2147483647)>>>0){pn(d,i+2912|0);break y}v[v[d>>2]+(l<<2)>>2]=v[i+2912>>2];v[d+4>>2]=v[d+4>>2]+1}b=b+36|0;j=j+1|0;if((G|0)!=(j|0)){continue}break}break t}if(!G){b=0;break u}m=C(z[i+1768>>2]-F);k=z[i+2908>>2];N=C(m+k);p=C(m-k);L=C(C(N-p)*C(.5));m=C(z[i+1764>>2]-H);k=z[i+2904>>2];I=C(m+k);q=C(m-k);s=C(C(I-q)*C(.5));n=C(z[i+1760>>2]-M);k=z[i+2900>>2];m=C(n+k);k=C(n-k);J=C(C(m-k)*C(.5));p=C(C(p+N)*C(.5));n=C(C(q+I)*C(.5));m=C(C(k+m)*C(.5));j=0;b=0;while(1){r=v[P+(j<<2)>>2];l=i+1816|0;C$(i+1784|0,i,r,l);z[i+1816>>2]=z[i+1816>>2]-M;z[i+1820>>2]=z[i+1820>>2]-H;z[i+1824>>2]=z[i+1824>>2]-F;z[i+1828>>2]=z[i+1828>>2]-M;z[i+1832>>2]=z[i+1832>>2]-H;z[i+1836>>2]=z[i+1836>>2]-F;z[i+1840>>2]=z[i+1840>>2]-M;z[i+1844>>2]=z[i+1844>>2]-H;z[i+1848>>2]=z[i+1848>>2]-F;k=z[g+52>>2];u[i+2956>>1]=0;z[i+2952>>2]=k;z[i+2948>>2]=L;z[i+2944>>2]=s;z[i+2940>>2]=J;z[i+2936>>2]=p;z[i+2932>>2]=n;z[i+2928>>2]=m;v[i+2924>>2]=d;v[i+2920>>2]=c;v[i+2916>>2]=r;v[i+2912>>2]=0;wS(i+2912|0,l,Da,Ca);l=v[i+2912>>2];u[h>>1]=x[h>>1]+x[i+2956>>1];b=b+l|0;j=j+1|0;if((G|0)!=(j|0)){continue}break}}v[O+36>>2]=b}W8(S);break b;case 4:G=i+1720|0;la=i+1696|0;b=0;aa=0;o=0;E=xa-144|0;xa=E;j=E- -64|0;v[j>>2]=0;v[j+4>>2]=1065353216;v[E+56>>2]=0;v[E+60>>2]=0;v[E+48>>2]=1065353216;v[E+52>>2]=1065353216;t[E+79|0]=0;t[E+77|0]=0;t[E+78|0]=0;t[E+76|0]=1;v[E+72>>2]=0;v[E+40>>2]=4;v[E+44>>2]=1065353216;Ba[v[v[Q>>2]+60>>2]](Q,E+40|0)|0;ea=v[E+72>>2];ma=Ba[v[v[ea>>2]+36>>2]](ea)|0;pa=Ba[v[v[ea>>2]+32>>2]](ea)|0;z:{if(!ma){j=E+128|0;break z}P=ma&1;if((ma|0)==1){j=-2}else{V=ma&-2;while(1){l=E+80|0;Ba[v[v[ea>>2]+40>>2]](ea,b,l)|0;j=x[E+96>>1];Ba[v[v[ea>>2]+40>>2]](ea,b|1,l)|0;b=b+2|0;aa=(x[E+96>>1]+(j+aa|0)|0)-4|0;o=o+2|0;if((V|0)!=(o|0)){continue}break}j=aa-2|0}if(P){Ba[v[v[ea>>2]+40>>2]](ea,b,E+80|0)|0;aa=j+x[E+96>>1]|0}j=E-(B(aa,12)+15&-16)|0;xa=j;if(!ma){break z}ha=0;b=j;while(1){Ba[v[v[ea>>2]+40>>2]](ea,ha,E+80|0)|0;S=x[E+96>>1];O=S-2|0;if(O){P=w[pa|0];o=0;while(1){l=o+1|0;V=w[((l>>>0)%(S>>>0)|0)+pa|0];v[b+8>>2]=w[((o+2>>>0)%(S>>>0)|0)+pa|0];v[b+4>>2]=V;v[b>>2]=P;b=b+12|0;o=l;if((l|0)!=(O|0)){continue}break}}pa=S+pa|0;ha=ha+1|0;if((ma|0)!=(ha|0)){continue}break}}Z=z[i>>2];ia=C(Z+Z);qa=z[i+8>>2];M=C(ia*qa);ja=z[i+4>>2];W=C(ja+ja);Y=z[i+12>>2];N=C(W*Y);Ea=C(M-N);H=z[E+56>>2];T=C(H+H);p=z[E+64>>2];L=C(T*p);F=z[E+60>>2];n=C(F+F);m=z[E+68>>2];q=C(n*m);ka=C(L+q);R=z[E+44>>2];s=C(F*n);k=C(p+p);I=C(p*k);ua=C(C(C(1)-s)-I);Fa=C(R*ua);J=C(n*p);p=C(T*m);$=C(J-p);n=C(T*F);m=C(k*m);va=C(n+m);U=z[E+48>>2];Ga=C(va*U);k=C(C(1)-C(H*T));X=C(k-s);wa=C(L-q);F=z[E+52>>2];_=C(wa*F);H=C(C(C(ka*Fa)+C($*Ga))+C(X*_));q=C(W*qa);s=C(ia*Y);Ha=C(q+s);ya=C(n-m);Ia=C(R*ya);za=C(k-I);Ja=C(za*U);Aa=C(J+p);Ka=C(Aa*F);L=C(C(C(ka*Ia)+C($*Ja))+C(X*Ka));T=C(C(Ea*H)+C(Ha*L));J=C(C(1)-C(Z*ia));p=C(ja*W);La=C(J-p);Ma=C(R*ka);ra=C($*U);sa=C(X*F);I=C(C(C(ka*Ma)+C($*ra))+C(X*sa));W=C(La*I);n=C(ia*ja);k=C(qa+qa);m=C(k*Y);ia=C(n+m);k=C(qa*k);ja=C(J-k);Y=C(C(ia*H)+C(ja*L));ka=C(q-s);R=C(ka*I);$=C(C(C(1)-p)-k);X=C(n-m);U=C(C($*H)+C(X*L));Z=C(M+N);F=C(Z*I);n=C(C(C(ya*Fa)+C(za*Ga))+C(Aa*_));m=C(C(C(ya*Ia)+C(za*Ja))+C(Aa*Ka));H=C(C(Ea*n)+C(Ha*m));k=C(C(C(ya*Ma)+C(za*ra))+C(Aa*sa));M=C(La*k);N=C(C(ia*n)+C(ja*m));L=C(ka*k);I=C(C($*n)+C(X*m));q=C(Z*k);_=C(C(C(ua*Fa)+C(va*Ga))+C(wa*_));m=C(C(C(ua*Ia)+C(va*Ja))+C(wa*Ka));s=C(C(Ea*_)+C(Ha*m));k=C(C(C(ua*Ma)+C(va*ra))+C(wa*sa));J=C(La*k);p=C(C(ia*_)+C(ja*m));n=C(ka*k);m=C(C($*_)+C(X*m));k=C(Z*k);na=A[G>>3];ta=+z[i+16>>2]-na;oa=A[G+16>>3];fa=+z[i+24>>2]-oa;ba=A[G+8>>3];ga=+z[i+20>>2]-ba;b=v[e+4>>2];o=b+11|0;l=v[e+8>>2]&2147483647;A:{if(o>>>0<=l>>>0){break A}ha=l;l=l?l<<1:2;l=l>>>0>>0?o:l;if(ha>>>0>=l>>>0){break A}Aw(e,l);b=v[e+4>>2]}X=C(W+T);Z=C(R+Y);_=C(F+U);T=C(M+H);W=C(L+N);Y=C(q+I);R=C(J+s);U=C(n+p);F=C(k+m);H=C(ta);M=C(fa);N=C(ga);v[e+4>>2]=o;O=v[e>>2]+(b<<2)|0;v[O+8>>2]=r;v[O+4>>2]=Q;v[O>>2]=2;b=v[G+4>>2];v[O+12>>2]=v[G>>2];v[O+16>>2]=b;b=v[G+12>>2];v[O+20>>2]=v[G+8>>2];v[O+24>>2]=b;b=v[G+20>>2];v[O+28>>2]=v[G+16>>2];v[O+32>>2]=b;v[O+40>>2]=v[c+4>>2];P=Ba[v[v[ea>>2]+28>>2]](ea)|0;B:{if(w[g+56|0]){if(!aa){v[O+36>>2]=0;break B}m=z[la+12>>2];k=z[la>>2];n=C(C(m-k)*C(.5));k=C(C(C(m+k)*C(.5))-C(na));m=C(n+k);k=C(k-n);L=C(C(m-k)*C(.5));I=C(C(k+m)*C(.5));n=z[la+20>>2];k=z[la+8>>2];m=C(C(n-k)*C(.5));k=C(C(C(n+k)*C(.5))-C(oa));q=C(m+k);s=C(k-m);J=C(C(q-s)*C(.5));m=z[la+16>>2];k=z[la+4>>2];n=C(C(m-k)*C(.5));k=C(C(C(m+k)*C(.5))-C(ba));m=C(n+k);k=C(k-n);p=C(C(m-k)*C(.5));n=C(C(s+q)*C(.5));m=C(C(k+m)*C(.5));o=E+24|0;G=E+12|0;b=0;while(1){r=v[j+8>>2];l=v[j+4>>2];V=P+B(v[j>>2],12)|0;q=z[V>>2];s=z[V+4>>2];k=z[V+8>>2];z[E+8>>2]=C(C(C(R*q)+C(T*s))+C(X*k))+M;z[E+4>>2]=C(C(C(U*q)+C(W*s))+C(Z*k))+N;z[E>>2]=C(C(C(F*q)+C(Y*s))+C(_*k))+H;l=P+B(l,12)|0;q=z[l>>2];s=z[l+4>>2];k=z[l+8>>2];z[E+20>>2]=C(C(C(R*q)+C(T*s))+C(X*k))+M;z[E+16>>2]=C(C(C(U*q)+C(W*s))+C(Z*k))+N;z[E+12>>2]=C(C(C(F*q)+C(Y*s))+C(_*k))+H;l=P+B(r,12)|0;q=z[l>>2];s=z[l+4>>2];k=z[l+8>>2];z[E+32>>2]=C(C(C(R*q)+C(T*s))+C(X*k))+M;z[E+28>>2]=C(C(C(U*q)+C(W*s))+C(Z*k))+N;z[E+24>>2]=C(C(C(F*q)+C(Y*s))+C(_*k))+H;k=z[g+52>>2];u[E+124>>1]=0;z[E+120>>2]=k;z[E+116>>2]=J;z[E+112>>2]=p;z[E+108>>2]=L;z[E+104>>2]=n;z[E+100>>2]=m;z[E+96>>2]=I;v[E+92>>2]=d;v[E+88>>2]=c;v[E+80>>2]=0;v[E+84>>2]=-1;wS(E+80|0,E,G,o);l=v[E+80>>2];u[h>>1]=x[h>>1]+x[E+124>>1];j=j+12|0;b=b+l|0;aa=aa-1|0;if(aa){continue}break}v[O+36>>2]=b;break B}G=v[c+4>>2];l=aa+G|0;r=l+1|0;b=v[c+8>>2]&2147483647;C:{if(r>>>0<=b>>>0){break C}o=b;b=b?b<<1:2;b=b>>>0>>0?r:b;if(o>>>0>=b>>>0){break C}vS(c,b);G=v[c+4>>2]}v[c+4>>2]=l;b=v[c>>2];v[O+36>>2]=aa;if(!aa){break B}b=b+B(G,36)|0;while(1){r=v[j+8>>2];l=v[j+4>>2];G=P+B(v[j>>2],12)|0;n=z[G>>2];m=z[G+4>>2];k=z[G+8>>2];z[b+8>>2]=C(C(C(R*n)+C(T*m))+C(X*k))+M;z[b+4>>2]=C(C(C(U*n)+C(W*m))+C(Z*k))+N;z[b>>2]=C(C(C(F*n)+C(Y*m))+C(_*k))+H;l=P+B(l,12)|0;n=z[l>>2];m=z[l+4>>2];k=z[l+8>>2];z[b+20>>2]=C(C(C(R*n)+C(T*m))+C(X*k))+M;z[b+16>>2]=C(C(C(U*n)+C(W*m))+C(Z*k))+N;z[b+12>>2]=C(C(C(F*n)+C(Y*m))+C(_*k))+H;l=P+B(r,12)|0;n=z[l>>2];m=z[l+4>>2];k=z[l+8>>2];z[b+32>>2]=C(C(C(R*n)+C(T*m))+C(X*k))+M;z[b+28>>2]=C(C(C(U*n)+C(W*m))+C(Z*k))+N;z[b+24>>2]=C(C(C(F*n)+C(Y*m))+C(_*k))+H;v[E+80>>2]=-1;aa=aa-1|0;l=v[d+4>>2];D:{if(l>>>0>=(v[d+8>>2]&2147483647)>>>0){pn(d,E+80|0);break D}v[v[d>>2]+(l<<2)>>2]=-1;v[d+4>>2]=v[d+4>>2]+1}j=j+12|0;b=b+36|0;if(aa){continue}break}}xa=E+144|0;break b;case 1:break e;default:break b}}L=z[i+8>>2];I=z[i>>2];s=z[i+4>>2];n=C(s*C(0));J=C(C(L*C(0))+C(C(I+I)+n));q=z[i+12>>2];p=C(C(q*q)+C(-.5));k=C(p*C(0));m=C(C(L*J)+C(k+C(q*C(C(I*C(0))-C(s+s)))));X=C(C(I*J)+C(C(p+p)+C(q*C(n+C(L*C(-0))))));$=C(C(s*J)+C(k+C(q*C(C(L+L)+C(I*C(-0))))));E:{if(C(D($))<=C(.9998999834060669)){W=C(0);p=C(-X);R=p;n=m;k=C(K(C(C(X*X)+C(C(m*m)+C(0)))));if(k>C(0)){k=C(C(1)/k);R=C(k*p);W=C(k*C(0));n=C(m*k)}U=C($*R);F=C(n*C(-$));k=C(C(m*n)+C(R*p));break E}U=C(0);F=C(-$);n=C(1);R=C(0);k=C(K(C(C($*$)+C(C(m*m)+C(0)))));F:{if(!(k>C(0))){W=C(0);k=m;break F}k=C(C(1)/k);F=C(k*F);W=C(0);U=C(k*C(0));k=C(m*k)}}H=z[i+24>>2];M=z[i+20>>2];N=z[i+16>>2];fa=A[i+1736>>3];ba=A[i+1728>>3];ga=A[i+1720>>3];L=z[i+1704>>2];p=z[i+1716>>2];I=z[i+1700>>2];q=z[i+1712>>2];s=z[i+1696>>2];J=z[i+1708>>2];j=v[e+4>>2];l=j+11|0;b=v[e+8>>2]&2147483647;G:{if(l>>>0<=b>>>0){break G}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break G}Aw(e,b);j=v[e+4>>2]}v[e+4>>2]=l;j=v[e>>2]+(j<<2)|0;v[j+8>>2]=r;v[j+4>>2]=Q;v[j>>2]=2;b=v[i+1724>>2];v[j+12>>2]=v[i+1720>>2];v[j+16>>2]=b;b=v[ca+4>>2];v[j+20>>2]=v[ca>>2];v[j+24>>2]=b;b=v[da+4>>2];v[j+28>>2]=v[da>>2];v[j+32>>2]=b;v[j+36>>2]=2;b=v[c+4>>2];v[j+40>>2]=b;l=b+2|0;r=b+3|0;j=v[c+8>>2]&2147483647;H:{if(r>>>0<=j>>>0){break H}o=j;j=j?j<<1:2;j=j>>>0>>0?r:j;if(o>>>0>=j>>>0){break H}vS(c,j);b=v[c+4>>2]}v[c+4>>2]=l;l=v[c>>2];v[i+1856>>2]=0;j=v[d+4>>2];I:{if(j>>>0>=(v[d+8>>2]&2147483647)>>>0){pn(d,i+1856|0);j=v[d+4>>2];break I}v[v[d>>2]+(j<<2)>>2]=0;j=v[d+4>>2]+1|0;v[d+4>>2]=j}v[i+1856>>2]=1;J:{if((v[d+8>>2]&2147483647)>>>0<=j>>>0){pn(d,i+1856|0);break J}v[v[d>>2]+(j<<2)>>2]=1;v[d+4>>2]=v[d+4>>2]+1}Z=C(fa);_=C(ga);T=C(ba);N=C(C(C(Z*m)+C(C(_*X)+C($*T)))+C(C(0)-C(C(H*m)+C(C(N*X)+C(M*$)))));b=l+B(b,36)|0;p=C(p-L);ra=C(p*p);p=C(J-s);sa=C(p*p);p=C(q-I);q=C(K(C(ra+C(sa+C(p*p)))));Y=C(q*F);F=C(Z-C(m*N));s=C(q*R);J=C(F+s);z[b+68>>2]=C(Y+J)-Z;R=C(q*k);H=C(T-C($*N));M=C(q*W);p=C(H+M);z[b- -64>>2]=C(R+p)-T;U=C(q*U);N=C(_-C(X*N));m=C(q*n);k=C(N+m);z[b+60>>2]=C(U+k)-_;L=C(C(J-Y)-Z);z[b+56>>2]=L;I=C(C(p-R)-T);z[b+52>>2]=I;q=C(C(k-U)-_);z[b+48>>2]=q;s=C(F-s);J=C(C(Y+s)-Z);z[b+44>>2]=J;p=C(H-M);n=C(C(R+p)-T);z[b+40>>2]=n;m=C(N-m);k=C(C(U+m)-_);z[b+36>>2]=k;z[b+32>>2]=L;z[b+28>>2]=I;z[b+24>>2]=q;z[b+20>>2]=C(s-Y)-Z;z[b+16>>2]=C(p-R)-T;z[b+12>>2]=C(m-U)-_;z[b+8>>2]=J;z[b+4>>2]=n;z[b>>2]=k;break b}j=v[e+4>>2];l=j+11|0;b=v[e+8>>2]&2147483647;K:{if(l>>>0<=b>>>0){break K}o=b;b=b?b<<1:2;b=b>>>0>>0?l:b;if(o>>>0>=b>>>0){break K}Aw(e,b);j=v[e+4>>2]}v[e+4>>2]=l;o=v[e>>2]+(j<<2)|0;v[o+8>>2]=r;v[o+4>>2]=Q;v[o>>2]=2;b=v[i+1724>>2];v[o+12>>2]=v[i+1720>>2];v[o+16>>2]=b;b=v[ca+4>>2];v[o+20>>2]=v[ca>>2];v[o+24>>2]=b;b=v[da+4>>2];v[o+28>>2]=v[da>>2];v[o+32>>2]=b;b=v[c+4>>2];v[o+40>>2]=b;if(w[g+56|0]){n=z[i+1716>>2];k=z[i+1704>>2];m=C(C(n-k)*C(.5));k=C(C(C(n+k)*C(.5))-L);N=C(m+k);p=C(k-m);L=C(C(N-p)*C(.5));n=z[i+1712>>2];k=z[i+1700>>2];m=C(C(n-k)*C(.5));k=C(C(C(n+k)*C(.5))-I);I=C(m+k);q=C(k-m);s=C(C(I-q)*C(.5));m=z[i+1708>>2];k=z[i+1696>>2];n=C(C(m-k)*C(.5));k=C(C(C(m+k)*C(.5))-M);m=C(n+k);k=C(k-n);J=C(C(m-k)*C(.5));p=C(C(p+N)*C(.5));n=C(C(q+I)*C(.5));m=C(C(k+m)*C(.5));j=0;b=0;while(1){r=i+1856|0;G=B(b,12)+98800|0;l=r+B(v[G>>2],12)|0;z[i+1816>>2]=z[l>>2];z[i+1820>>2]=z[l+4>>2];z[i+1824>>2]=z[l+8>>2];l=r+B(v[G+4>>2],12)|0;z[i+1828>>2]=z[l>>2];z[i+1832>>2]=z[l+4>>2];z[i+1836>>2]=z[l+8>>2];l=r+B(v[G+8>>2],12)|0;z[i+1840>>2]=z[l>>2];z[i+1844>>2]=z[l+4>>2];z[i+1848>>2]=z[l+8>>2];k=z[g+52>>2];u[i+2956>>1]=0;z[i+2952>>2]=k;z[i+2948>>2]=L;z[i+2944>>2]=s;z[i+2940>>2]=J;z[i+2936>>2]=p;z[i+2932>>2]=n;z[i+2928>>2]=m;v[i+2924>>2]=d;v[i+2920>>2]=c;v[i+2912>>2]=0;v[i+2916>>2]=-1;wS(i+2912|0,i+1816|0,Da,Ca);l=v[i+2912>>2];u[h>>1]=x[h>>1]+x[i+2956>>1];j=j+l|0;b=b+1|0;if((b|0)!=12){continue}break}v[o+36>>2]=j;break b}v[o+36>>2]=12;l=b+12|0;r=b+13|0;j=v[c+8>>2]&2147483647;L:{if(r>>>0<=j>>>0){break L}o=j;j=j?j<<1:2;j=j>>>0>>0?r:j;if(o>>>0>=j>>>0){break L}vS(c,j);b=v[c+4>>2]}v[c+4>>2]=l;l=v[c>>2]+B(b,36)|0;j=0;while(1){o=l+B(j,36)|0;r=i+1856|0;G=B(j,12)+98800|0;b=r+B(v[G>>2],12)|0;z[o>>2]=z[b>>2];z[o+4>>2]=z[b+4>>2];z[o+8>>2]=z[b+8>>2];b=r+B(v[G+4>>2],12)|0;z[o+12>>2]=z[b>>2];z[o+16>>2]=z[b+4>>2];z[o+20>>2]=z[b+8>>2];b=r+B(v[G+8>>2],12)|0;z[o+24>>2]=z[b>>2];z[o+28>>2]=z[b+4>>2];z[o+32>>2]=z[b+8>>2];v[i+2912>>2]=-1;b=v[d+4>>2];M:{if(b>>>0>=(v[d+8>>2]&2147483647)>>>0){pn(d,i+2912|0);break M}v[v[d>>2]+(b<<2)>>2]=-1;v[d+4>>2]=v[d+4>>2]+1}j=j+1|0;if((j|0)!=12){continue}break}}f=f+1|0;if((Na|0)!=(f|0)){continue}break}}xa=i+2960|0}function Sy(a,b,c,d,e,f,g,h){var i=C(0),j=0,k=0,l=0,m=C(0),n=0,o=0,p=C(0),q=0,r=0,s=0,A=0,D=0,E=0,F=0,G=0,H=C(0),I=0,J=C(0),L=0,M=C(0),N=C(0),O=0,P=0,Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=0,qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=0,Ea=C(0),Fa=0,Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=0,La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=0,ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=0,Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=0,_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=C(0),rc=C(0),sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=C(0),Ac=0,Bc=0,Cc=0,Dc=0,Ec=C(0),Fc=C(0),Gc=C(0),Hc=C(0),Ic=C(0),Jc=C(0),Kc=C(0),Lc=C(0),Mc=C(0),Nc=C(0),Oc=C(0),Pc=C(0),Qc=C(0),Rc=C(0),Sc=C(0),Tc=C(0),Uc=C(0),Vc=C(0),Wc=C(0),Xc=C(0),Yc=C(0),Zc=C(0),_c=C(0),$c=C(0),ad=C(0),bd=C(0),cd=C(0),dd=C(0),ed=C(0),fd=C(0),gd=C(0),hd=C(0),id=C(0),jd=C(0),kd=C(0),ld=C(0),md=C(0),nd=C(0),od=C(0),pd=C(0),qd=C(0),rd=C(0),sd=C(0),td=C(0),ud=C(0),vd=C(0),wd=C(0),xd=C(0),yd=C(0),zd=C(0),Ad=C(0),Bd=C(0),Cd=C(0),Dd=C(0),Ed=C(0),Fd=C(0),Gd=C(0),Hd=C(0),Id=C(0),Jd=C(0),Kd=C(0),Ld=C(0),Md=C(0),Nd=C(0),Od=C(0),Pd=C(0),Qd=C(0),Rd=C(0),Sd=C(0),Td=C(0),Ud=C(0),Vd=C(0),Wd=C(0),Xd=C(0),Yd=C(0),Zd=C(0),_d=C(0),$d=C(0),ae=C(0),be=C(0),ce=C(0),de=C(0),ee=C(0),fe=C(0),ge=C(0),he=C(0),ie=C(0),je=C(0),ke=C(0),le=C(0),me=C(0),ne=C(0),oe=C(0),pe=C(0),qe=C(0),re=C(0),se=C(0),te=C(0),ue=C(0),ve=C(0),we=C(0),xe=C(0),ye=C(0),ze=C(0),Ae=C(0),Be=C(0),Ce=C(0),De=C(0),Ee=C(0),Fe=C(0),Ge=C(0),He=C(0),Ie=C(0),Je=C(0),Ke=C(0),Le=C(0),Me=C(0),Ne=C(0),Oe=C(0),Pe=C(0),Qe=C(0),Re=C(0),Se=C(0),Te=C(0),Ue=0,Ve=C(0),We=C(0),Xe=C(0),Ye=C(0),Ze=C(0),_e=C(0),$e=C(0),af=C(0),bf=C(0),cf=C(0),df=C(0),ef=C(0),ff=C(0),gf=C(0),hf=C(0),jf=C(0),kf=C(0),lf=C(0),mf=C(0),nf=C(0),of=C(0),pf=C(0),qf=C(0),rf=C(0),sf=C(0),tf=C(0),uf=C(0),vf=C(0),wf=C(0),xf=C(0),yf=C(0),zf=C(0),Af=C(0),Bf=C(0),Cf=0,Df=0,Ef=0,Ff=C(0),Gf=C(0),Hf=C(0),If=C(0),Jf=0,Kf=C(0),Lf=0,Mf=0,Nf=0,Of=0,Pf=C(0),Qf=C(0),Rf=C(0),Sf=C(0),Tf=C(0),Uf=C(0),Vf=C(0),Wf=C(0),Xf=C(0),Yf=C(0),Zf=C(0),_f=C(0),$f=0,ag=0,bg=0;r=xa-208|0;xa=r;u[v[c+16>>2]+22>>1]=0;u[v[c+192>>2]+22>>1]=0;u[v[c+368>>2]+22>>1]=0;u[v[c+544>>2]+22>>1]=0;v[b+4112>>2]=0;j=b+11812|0;v[j>>2]=0;v[j+4>>2]=0;A=1;Fa=(h|0)==1?1:2;G=b+4128|0;T=b+16|0;a:{while(1){D=B(l,176)+c|0;v[D+116>>2]=T+(q<<6);I=l<<2;j=v[I+a>>2];if(w[j+12|0]+q>>>0>64){break a}E=j;L=I+(r+96|0)|0;s=I+(r+80|0)|0;o=I+(r- -64|0)|0;j=I+(r+48|0)|0;m=z[v[D+28>>2]+76>>2];i=z[v[D+32>>2]+76>>2];I=uy(T,E,r+176|0,r+144|0,L,s,o,j,i>m?m:i);if(!I){break a}v[D+120>>2]=I;t[D+124|0]=w[r+176|0];v[D+148>>2]=v[b+11816>>2];v[D+156>>2]=v[b+11812>>2];aA(G,v[D+116>>2],I);if(bA(G,v[D+116>>2],D+36|0,D- -64|0,v[D+156>>2],v[D+148>>2])){break a}u[D+160>>1]=v[b+11812>>2]-v[D+156>>2];v[D+152>>2]=v[b+11816>>2]-v[D+148>>2];z[L>>2]=z[D>>2]*z[L>>2];z[s>>2]=z[D+8>>2]*z[s>>2];z[o>>2]=z[D+4>>2]*z[o>>2];z[j>>2]=z[D+12>>2]*z[j>>2];q=q+I|0;l=l+1|0;if((l|0)!=4){continue}break}v[r+44>>2]=0;v[r+12>>2]=0;j=xa-256|0;xa=j;J9(j+128|0,0,128);O=J9(j,0,128);k=c;I=v[c+152>>2];if(I){s=v[k+148>>2];while(1){c=s+F|0;q=v[((c<<2)+G|0)+7296>>2];b:{if(!q){break b}o=w[(B(c,104)+G|0)+2817|0];j=F<<2;c=j+(O+128|0)|0;l=v[c>>2];v[c>>2]=l>>>0>>0?q:l;P=q+P|0;if(o&1){break b}c=j+O|0;j=v[c>>2];o=c;c=B(q,Fa);v[o>>2]=c>>>0>j>>>0?c:j;P=c+P|0}F=F+1|0;if((I|0)!=(F|0)){continue}break}}v[r+16>>2]=P;T=v[k+328>>2];if(T){s=v[k+324>>2];F=0;while(1){c=s+F|0;q=v[((c<<2)+G|0)+7296>>2];c:{if(!q){break c}o=w[(B(c,104)+G|0)+2817|0];j=F<<2;c=j+(O+128|0)|0;l=v[c>>2];v[c>>2]=l>>>0>>0?q:l;n=n+q|0;if(o&1){break c}c=j+O|0;j=v[c>>2];o=c;c=B(q,Fa);v[o>>2]=c>>>0>j>>>0?c:j;n=c+n|0}F=F+1|0;if((T|0)!=(F|0)){continue}break}}v[r+20>>2]=n;n=0;P=0;L=v[k+504>>2];if(L){s=v[k+500>>2];F=0;while(1){c=s+F|0;q=v[((c<<2)+G|0)+7296>>2];d:{if(!q){break d}o=w[(B(c,104)+G|0)+2817|0];j=F<<2;c=j+(O+128|0)|0;l=v[c>>2];v[c>>2]=l>>>0>>0?q:l;P=q+P|0;if(o&1){break d}c=j+O|0;j=v[c>>2];o=c;c=B(q,Fa);v[o>>2]=c>>>0>j>>>0?c:j;P=c+P|0}F=F+1|0;if((L|0)!=(F|0)){continue}break}}v[r+24>>2]=P;q=v[k+680>>2];if(q){s=v[k+676>>2];F=0;while(1){c=s+F|0;D=v[((c<<2)+G|0)+7296>>2];e:{if(!D){break e}o=w[(B(c,104)+G|0)+2817|0];j=F<<2;c=j+(O+128|0)|0;l=v[c>>2];v[c>>2]=l>>>0>>0?D:l;n=n+D|0;if(o&1){break e}c=j+O|0;j=v[c>>2];o=c;c=B(D,Fa);v[o>>2]=c>>>0>j>>>0?c:j;n=c+n|0}F=F+1|0;if((q|0)!=(F|0)){continue}break}}v[r+28>>2]=n;c=I>>>0>>0?T:I;c=c>>>0>>0?L:c;L=c>>>0>>0?q:c;f:{if(!L){F=0;n=0;break f}P=0;D=0;n=0;F=0;if(L-1>>>0>=3){s=L&-4;q=0;while(1){l=D<<2;o=l|12;j=l|8;c=l|4;n=v[o+O>>2]+(v[j+O>>2]+(v[c+O>>2]+(v[l+O>>2]+n|0)|0)|0)|0;I=o;o=O+128|0;F=v[I+o>>2]+(v[j+o>>2]+(v[c+o>>2]+(v[l+o>>2]+F|0)|0)|0)|0;D=D+4|0;q=q+4|0;if((s|0)!=(q|0)){continue}break}}j=L&3;if(!j){break f}while(1){c=D<<2;n=v[c+O>>2]+n|0;F=v[c+(O+128|0)>>2]+F|0;D=D+1|0;P=P+1|0;if((j|0)!=(P|0)){continue}break}}v[r+12>>2]=F;v[r+44>>2]=B(n+F|0,(v[k+624>>2]|(v[k+448>>2]|(v[k+272>>2]|v[k+96>>2])))&1?192:144)+(L<<8);xa=O+256|0;j=v[r+44>>2];if(j){c=j+16|0;if(c>>>0>16384){break a}A=0;Ka=Ba[v[v[g>>2]>>2]](g,c)|0;if(Ka+1>>>0<2){break a}}o=v[k+16>>2];v[o+24>>2]=Ka;u[k+162>>1]=x[k+162>>1]+x[r+16>>1];A=j>>>4|0;u[o+22>>1]=A;g=v[a>>2];c=v[g+8>>2];u[o+20>>1]=w[g+12|0];v[o+28>>2]=c;j=v[k+192>>2];v[j+24>>2]=Ka;u[k+338>>1]=x[k+338>>1]+x[r+20>>1];u[j+22>>1]=A;g=v[a+4>>2];c=v[g+8>>2];u[j+20>>1]=w[g+12|0];v[j+28>>2]=c;j=v[k+368>>2];v[j+24>>2]=Ka;u[k+514>>1]=x[k+514>>1]+x[r+24>>1];u[j+22>>1]=A;g=v[a+8>>2];c=v[g+8>>2];u[j+20>>1]=w[g+12|0];v[j+28>>2]=c;g=v[k+544>>2];v[g+24>>2]=Ka;u[k+690>>1]=x[k+690>>1]+x[r+28>>1];u[g+22>>1]=A;c=v[a+12>>2];a=v[c+8>>2];u[g+20>>1]=w[c+12|0];v[g+28>>2]=a;j=v[k+152>>2];g=v[k+328>>2];c=v[k+504>>2];a=v[k+680>>2];a=a>>>0>>0?c:a;a=a>>>0>>0?g:a;Zb=a>>>0>>0?j:a;if(Zb){af=z[k+616>>2];bf=z[k+612>>2];cf=z[k+608>>2];df=z[k+440>>2];ef=z[k+436>>2];ff=z[k+432>>2];gf=z[k+264>>2];hf=z[k+260>>2];jf=z[k+256>>2];kf=z[k+88>>2];lf=z[k+84>>2];mf=z[k+80>>2];nf=z[k+588>>2];of=z[k+584>>2];pf=z[k+580>>2];qf=z[k+412>>2];rf=z[k+408>>2];sf=z[k+404>>2];tf=z[k+236>>2];uf=z[k+232>>2];vf=z[k+228>>2];wf=z[k+60>>2];xf=z[k+56>>2];yf=z[k+52>>2];zf=z[k+656>>2];Af=z[k+480>>2];Bf=z[k+304>>2];Cf=w[k+654|0];Df=w[k+478|0];Ef=w[k+302|0];Ff=z[k+660>>2];Gf=z[k+484>>2];Hf=z[k+308>>2];l=v[k+560>>2];Ic=z[l+32>>2];s=v[k+384>>2];Jc=z[s+32>>2];o=v[k+208>>2];Kc=z[o+32>>2];A=v[k+556>>2];Lc=z[A+32>>2];j=v[k+380>>2];Mc=z[j+32>>2];g=v[k+204>>2];Nc=z[g+32>>2];Oc=z[l+16>>2];Pc=z[s+16>>2];Qc=z[o+16>>2];Rc=z[A+16>>2];Sc=z[j+16>>2];Tc=z[g+16>>2];Uc=z[l- -64>>2];Vc=z[l+60>>2];Wc=z[l+56>>2];Xc=z[l+52>>2];Yc=z[l+48>>2];Zc=z[l+44>>2];_c=z[l+40>>2];$c=z[l+36>>2];ad=z[s- -64>>2];bd=z[s+60>>2];cd=z[s+56>>2];dd=z[s+52>>2];ed=z[s+48>>2];fd=z[s+44>>2];gd=z[s+40>>2];hd=z[s+36>>2];id=z[o- -64>>2];jd=z[o+60>>2];kd=z[o+56>>2];ld=z[o+52>>2];md=z[o+48>>2];nd=z[o+44>>2];od=z[o+40>>2];pd=z[o+36>>2];c=v[k+32>>2];qd=z[c- -64>>2];rd=z[c+60>>2];sd=z[c+56>>2];td=z[c+52>>2];ud=z[c+48>>2];vd=z[c+44>>2];wd=z[c+40>>2];xd=z[c+36>>2];yd=z[A- -64>>2];zd=z[A+60>>2];Ad=z[A+56>>2];Bd=z[A+52>>2];Cd=z[A+48>>2];Dd=z[A+44>>2];Ed=z[A+40>>2];Fd=z[A+36>>2];Gd=z[j- -64>>2];Hd=z[j+60>>2];Id=z[j+56>>2];Jd=z[j+52>>2];Kd=z[j+48>>2];Ld=z[j+44>>2];Md=z[j+40>>2];Nd=z[j+36>>2];Od=z[g- -64>>2];Pd=z[g+60>>2];Qd=z[g+56>>2];Rd=z[g+52>>2];Sd=z[g+48>>2];Td=z[g+44>>2];Ud=z[g+40>>2];Vd=z[g+36>>2];a=v[k+28>>2];Wd=z[a- -64>>2];Xd=z[a+60>>2];Yd=z[a+56>>2];Zd=z[a+52>>2];_d=z[a+48>>2];$d=z[a+44>>2];ae=z[a+40>>2];be=z[a+36>>2];ce=z[l+24>>2];de=z[l+20>>2];ee=z[s+24>>2];fe=z[s+20>>2];ge=z[o+24>>2];he=z[o+20>>2];ie=z[c+24>>2];je=z[c+20>>2];ke=z[A+24>>2];le=z[A+20>>2];me=z[j+24>>2];ne=z[j+20>>2];oe=z[g+24>>2];pe=z[g+20>>2];qe=z[a+24>>2];re=z[a+20>>2];If=z[k+128>>2];Jf=w[k+126|0];Kf=z[k+132>>2];se=z[c+32>>2];te=z[a+32>>2];ue=z[c+16>>2];ve=z[a+16>>2];we=z[r+60>>2];xe=z[r+56>>2];ye=z[r+52>>2];ze=z[r+48>>2];Ae=z[r+76>>2];Be=z[r+72>>2];Ce=z[r+68>>2];De=z[r+64>>2];m=z[A+68>>2];i=z[l+68>>2];Ee=i>2];i=z[s+68>>2];Fe=i>2];i=z[o+68>>2];Ge=i>2]|(v[k+448>>2]|(v[k+272>>2]|v[k+96>>2])))&1;Lf=ob?192:144;_b=z[A+8>>2];$b=z[l+8>>2];He=C(_b-$b);ac=z[j+8>>2];bc=z[s+8>>2];Ie=C(ac-bc);cc=z[g+8>>2];dc=z[o+8>>2];Je=C(cc-dc);ec=z[A+4>>2];fc=z[l+4>>2];Ke=C(ec-fc);gc=z[j+4>>2];hc=z[s+4>>2];Le=C(gc-hc);ic=z[g+4>>2];jc=z[o+4>>2];Me=C(ic-jc);kc=z[A>>2];lc=z[l>>2];Ne=C(kc-lc);mc=z[j>>2];nc=z[s>>2];Oe=C(mc-nc);oc=z[g>>2];pc=z[o>>2];Pe=C(oc-pc);m=z[a+68>>2];i=z[c+68>>2];Qe=i>2]*z[l+12>>2]);rc=C(z[r+88>>2]*z[s+12>>2]);sc=C(z[r+84>>2]*z[o+12>>2]);tc=C(z[r+80>>2]*z[c+12>>2]);wb=C(z[r+108>>2]*z[A+12>>2]);xb=C(z[r+104>>2]*z[j+12>>2]);yb=C(z[r+100>>2]*z[g+12>>2]);zb=C(z[r+96>>2]*z[a+12>>2]);uc=z[a+8>>2];vc=z[c+8>>2];Re=C(uc-vc);wc=z[a+4>>2];xc=z[c+4>>2];Se=C(wc-xc);yc=z[a>>2];zc=z[c>>2];Te=C(yc-zc);Mf=ob?13:14;Nf=ob?7:8;Ue=ob?176:128;E=(B(Zb,160)+B(Ue,v[r+12>>2])|0)+Ka|0;Of=(h|0)!=1;Ab=b+11552|0;n=Ka;while(1){a=v[k+328>>2];pb=y[k+152>>2]<=Da>>>0;Ac=pb?Ac:v[k+148>>2]+Da|0;c=v[k+504>>2];qb=a>>>0<=Da>>>0;Bc=qb?Bc:v[k+324>>2]+Da|0;a=v[k+680>>2];$a=c>>>0<=Da>>>0;Cc=$a?Cc:v[k+500>>2]+Da|0;rb=a>>>0<=Da>>>0;Dc=rb?Dc:v[k+676>>2]+Da|0;Z=0;aa=0;aa=pb?aa:v[((Ac<<2)+b|0)+11424>>2];Z=qb?Z:v[((Bc<<2)+b|0)+11424>>2];fa=0;a=0;a=$a?a:v[((Cc<<2)+b|0)+11424>>2];tb=8;c=v[(Dc<<2)+Ab>>2];T=v[k+644>>2]+(x[B(c,44)+G>>1]<<6)|0;H=z[T+44>>2];q=v[(Cc<<2)+Ab>>2];L=v[k+468>>2]+(x[B(q,44)+G>>1]<<6)|0;p=z[L+44>>2];l=v[(Bc<<2)+Ab>>2];s=v[k+292>>2]+(x[B(l,44)+G>>1]<<6)|0;m=z[s+44>>2];pa=v[(Ac<<2)+Ab>>2];o=v[k+116>>2]+(x[B(pa,44)+G>>1]<<6)|0;i=z[o+44>>2];Ec=z[o+60>>2];Fc=z[s+60>>2];Gc=z[L+60>>2];Hc=z[T+60>>2];if(!rb){tb=0;fa=v[((Dc<<2)+b|0)+11424>>2]}t[n+7|0]=fa;t[n+6|0]=a;t[n+5|0]=Z;t[n+4|0]=aa;u[n+2>>1]=E-n;z[n+140>>2]=we;z[n+136>>2]=xe;z[n+132>>2]=ye;z[n+128>>2]=ze;z[n+124>>2]=Ae;z[n+120>>2]=Be;z[n+116>>2]=Ce;z[n+112>>2]=De;z[n+108>>2]=qc;z[n+104>>2]=rc;z[n+100>>2]=sc;z[n+96>>2]=tc;z[n+92>>2]=wb;z[n+88>>2]=xb;z[n+84>>2]=yb;z[n+80>>2]=zb;g=a>>>0>fa>>>0?a:fa;g=g>>>0>>0?Z:g;sb=g>>>0>>0?aa:g;t[n+1|0]=sb;z[n+28>>2]=Hc;z[n+24>>2]=Gc;z[n+20>>2]=Fc;z[n+16>>2]=Ec;t[n+11|0]=Cf;t[n+10|0]=Df;t[n+9|0]=Ef;t[n+8|0]=Jf;t[n|0]=Nf;v[n+144>>2]=v[k+112>>2];v[n+148>>2]=v[k+288>>2];v[n+152>>2]=v[k+464>>2];v[n+156>>2]=v[k+640>>2];z[E+92>>2]=we;z[E+88>>2]=xe;z[E+84>>2]=ye;z[E+80>>2]=ze;z[E+76>>2]=Ae;z[E+72>>2]=Be;z[E+68>>2]=Ce;z[E+64>>2]=De;z[E+60>>2]=qc;z[E+56>>2]=rc;z[E+52>>2]=sc;z[E+48>>2]=tc;z[E+44>>2]=wb;z[E+40>>2]=xb;z[E+36>>2]=yb;z[E+32>>2]=zb;A=B(fa,Fa);t[E+10|0]=A;j=B(a,Fa);t[E+9|0]=j;h=B(Z,Fa);t[E+8|0]=h;g=B(aa,Fa);t[E+7|0]=g;t[E+6|0]=fa;t[E+5|0]=a;t[E+4|0]=Z;t[E+3|0]=aa;t[E+1|0]=sb;z[E+16>>2]=i;z[E+20>>2]=m;z[E+24>>2]=p;z[E+28>>2]=H;t[E|0]=Mf;v[E+12>>2]=Of;a=j>>>0>A>>>0?j:A;a=a>>>0>>0?h:a;t[E+2|0]=a>>>0>>0?g:a;V=z[o>>2];W=z[s>>2];X=z[L>>2];Y=z[T>>2];ba=z[o+4>>2];ca=z[s+4>>2];da=z[L+4>>2];ea=z[T+4>>2];ga=z[o+8>>2];ha=z[s+8>>2];ia=z[L+8>>2];ja=z[T+8>>2];z[n+76>>2]=ja;z[n+72>>2]=ia;z[n+68>>2]=ha;z[n+64>>2]=ga;z[n+60>>2]=ea;z[n+56>>2]=da;z[n+52>>2]=ca;z[n+48>>2]=ba;z[n+44>>2]=Y;z[n+40>>2]=X;z[n+36>>2]=W;z[n+32>>2]=V;i=C(C(He*ja)+C(C(Ne*Y)+C(Ke*ea)));m=C(He-C(ja*i));g=(Y>C(0)?Y:C(-Y))C(.10000000149011612);m=a?m:g?ea:C(0);ka=a?p:g?C(0):C(-ea);i=a?i:g?C(-ja):Y;H=C(C(1)/C(K(C(C(ka*ka)+C(C(i*i)+C(m*m))))));za=C(m*H);Aa=C(i*H);z[r+204>>2]=C(ea*za)-C(ja*Aa);i=C(C(Ie*ia)+C(C(Oe*X)+C(Le*da)));m=C(Ie-C(ia*i));g=(X>C(0)?X:C(-X))C(.10000000149011612);m=a?m:g?da:C(0);Ca=a?p:g?C(0):C(-da);i=a?i:g?C(-ia):X;U=C(C(1)/C(K(C(C(Ca*Ca)+C(C(i*i)+C(m*m))))));Q=C(m*U);_=C(i*U);z[r+200>>2]=C(da*Q)-C(ia*_);i=C(C(Je*ha)+C(C(Pe*W)+C(Me*ca)));m=C(Je-C(ha*i));g=(W>C(0)?W:C(-W))C(.10000000149011612);m=a?m:g?ca:C(0);$=a?p:g?C(0):C(-ca);i=a?i:g?C(-ha):W;M=C(C(1)/C(K(C(C($*$)+C(C(i*i)+C(m*m))))));R=C(m*M);S=C(i*M);z[r+196>>2]=C(ca*R)-C(ha*S);m=C(C(Re*ga)+C(C(Te*V)+C(Se*ba)));i=C(Re-C(ga*m));g=(V>C(0)?V:C(-V))C(.10000000149011612);i=a?i:g?ba:C(0);J=i;p=a?p:g?C(0):C(-ba);m=a?m:g?C(-ga):V;i=C(C(1)/C(K(C(C(p*p)+C(C(m*m)+C(i*i))))));J=C(J*i);N=C(m*i);z[r+192>>2]=C(ba*J)-C(ga*N);H=C(ka*H);z[r+188>>2]=H;p=C(p*i);z[r+176>>2]=p;m=C($*M);z[r+180>>2]=m;i=C(Ca*U);z[r+184>>2]=i;z[r+172>>2]=C(ja*H)-C(Y*za);z[r+168>>2]=C(ia*i)-C(X*Q);z[r+164>>2]=C(ha*m)-C(W*R);z[r+160>>2]=C(ga*p)-C(V*J);z[r+156>>2]=Aa;z[r+152>>2]=_;z[r+148>>2]=S;z[r+144>>2]=N;z[r+140>>2]=C(Y*Aa)-C(ea*H);z[r+136>>2]=C(X*_)-C(da*i);z[r+132>>2]=C(W*S)-C(ca*m);z[r+128>>2]=C(V*N)-C(ba*p);z[r+124>>2]=za;z[r+120>>2]=Q;z[r+116>>2]=R;z[r+112>>2]=J;F=65535;D=65535;g:{if((pa|0)==65535){break g}while(1){D=pa;a=B(D,44)+G|0;if(w[a+5|0]){break g}D=65535;pa=x[a+2>>1];if((pa|0)!=65535){continue}break}}h:{if((l|0)==65535){break h}while(1){F=l;a=B(l,44)+G|0;if(w[a+5|0]){break h}F=65535;l=x[a+2>>1];if((l|0)!=65535){continue}break}}T=65535;L=65535;i:{if((q|0)==65535){break i}while(1){L=q;a=B(q,44)+G|0;if(w[a+5|0]){break i}L=65535;q=x[a+2>>1];if((q|0)!=65535){continue}break}}j:{if((c|0)==65535){break j}while(1){T=c;a=B(c,44)+G|0;if(w[a+5|0]){break j}T=65535;c=x[a+2>>1];if((c|0)!=65535){continue}break}}a=65535;I=1;o=1;j=65535;c=D;k:{if((c|0)==65535){break k}while(1){j=c;c=B(c,44)+G|0;if(w[c+5|0]!=(o|0)){break k}j=65535;o=0;c=x[c+2>>1];if((c|0)!=65535){continue}break}}c=F;l:{if((c|0)==65535){break l}while(1){a=c;c=B(c,44)+G|0;if(w[c+5|0]!=(I|0)){break l}a=65535;I=0;c=x[c+2>>1];if((c|0)!=65535){continue}break}}s=65535;O=1;P=1;A=65535;c=L;m:{if((c|0)==65535){break m}while(1){A=c;c=B(c,44)+G|0;if(w[c+5|0]!=(P|0)){break m}A=65535;P=0;c=x[c+2>>1];if((c|0)!=65535){continue}break}}c=T;n:{if((c|0)==65535){break n}while(1){s=c;c=B(c,44)+G|0;if(w[c+5|0]!=(O|0)){break n}s=65535;O=0;c=x[c+2>>1];if((c|0)!=65535){continue}break}}pa=1;pa=pb?pa:!((j|0)!=65535&w[(B(j,44)+G|0)+5|0]>o>>>0);h=pb|qb<<1;g=$a<<2;o:{if(!((a|0)==65535|qb)){l=0;if(w[(B(a,44)+G|0)+5|0]>I>>>0){break o}}l=2}c=sb<<4;g=g|h;p:{if(!((A|0)==65535|$a)){h=0;if(w[(B(A,44)+G|0)+5|0]>P>>>0){break p}}h=4}c=c+E|0;q=g|tb;q:{if(!((s|0)==65535|rb)){g=0;if(w[(B(s,44)+G|0)+5|0]>O>>>0){break q}}g=8}E=c+96|0;c=n+160|0;r:{if((q|0)==15){n=c;break r}Pf=C(C($b*ja)+C(C(lc*Y)+C(fc*ea)));Qf=C(C(bc*ia)+C(C(nc*X)+C(hc*da)));Rf=C(C(dc*ha)+C(C(pc*W)+C(jc*ca)));Sf=C(C(vc*ga)+C(C(zc*V)+C(xc*ba)));Tf=C(C(_b*ja)+C(C(kc*Y)+C(ec*ea)));Uf=C(C(ac*ia)+C(C(mc*X)+C(gc*da)));Vf=C(C(cc*ha)+C(C(oc*W)+C(ic*ca)));Wf=C(C(uc*ga)+C(C(yc*V)+C(wc*ba)));H=C(C(ja*ja)+C(C(Y*Y)+C(ea*ea)));Ve=C(qc*H);p=C(C(ia*ia)+C(C(X*X)+C(da*da)));We=C(rc*p);m=C(C(ha*ha)+C(C(W*W)+C(ca*ca)));Xe=C(sc*m);i=C(C(ga*ga)+C(C(V*V)+C(ba*ba)));Ye=C(tc*i);Xf=C(wb*H);Yf=C(xb*p);Zf=C(yb*m);_f=C(zb*i);h=g|(h|(l|pa));$f=v[k+644>>2];ag=v[k+468>>2];bg=v[k+292>>2];pb=v[k+116>>2];pa=0;$a=0;rb=0;sb=0;tb=0;while(1){n=(x[B(T,44)+G>>1]+tb<<6)+$f|0;Q=z[n+16>>2];i=C(Q-pf);Bb=(i>C(0)?i:C(-i))>2];i=C(_-of);Cb=(i>C(0)?i:C(-i))>2];i=C($-nf);Db=(i>C(0)?i:C(-i))>1]+sb<<6)+ag|0;M=z[q+16>>2];i=C(M-sf);Eb=(i>C(0)?i:C(-i))>2];i=C(R-rf);Fb=(i>C(0)?i:C(-i))>2];i=C(S-qf);Gb=(i>C(0)?i:C(-i))>1]+rb<<6)+bg|0;J=z[l+16>>2];i=C(J-vf);Hb=(i>C(0)?i:C(-i))>2];i=C(N-uf);Ib=(i>C(0)?i:C(-i))>2];i=C(H-tf);Jb=(i>C(0)?i:C(-i))>1]+$a<<6)|0;p=z[g+16>>2];i=C(p-yf);Kb=(i>C(0)?i:C(-i))>2];i=C(m-xf);Lb=(i>C(0)?i:C(-i))>2];U=C(i-wf);Mb=(U>C(0)?U:C(-U))C(0)?Q:C(-Q))C(0)?M:C(-M))C(0)?J:C(-J))C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))C(0)?p:C(-p))C(0)?i:C(-i))C(0)?i:C(-i))C(0)?i:C(-i))C(0)?i:C(-i))C(0)?i:C(-i))>2];_e=z[n+36>>2];$e=z[n+40>>2];ub=C(C(Y*Ze)+C(C(ea*_e)+C(ja*$e)));ab=z[q+32>>2];bb=z[q+36>>2];cb=z[q+40>>2];Ea=C(C(X*ab)+C(C(da*bb)+C(ia*cb)));db=z[l+32>>2];eb=z[l+36>>2];fb=z[l+40>>2];ka=C(C(W*db)+C(C(ca*eb)+C(ha*fb)));za=z[g+32>>2];Aa=z[g+36>>2];Ca=z[g+40>>2];U=C(C(V*za)+C(C(ba*Aa)+C(ga*Ca)));Q=z[n+28>>2];_=z[q+28>>2];$=z[l+28>>2];M=z[g+28>>2];i=z[n+12>>2];R=z[q+12>>2];S=z[l+12>>2];J=z[g+12>>2];if(ob){qa=C(C(ea*Nb)-C(Y*Vb));ra=C(C(Y*Rb)-C(ja*Nb));sa=C(C(ja*Vb)-C(ea*Rb));gb=C(C(Uc*qa)+C(C(Vc*ra)+C(Wc*sa)));z[c+172>>2]=gb;ta=C(C(da*Ob)-C(X*Wb));ua=C(C(X*Sb)-C(ia*Ob));va=C(C(ia*Wb)-C(da*Sb));hb=C(C(ad*ta)+C(C(bd*ua)+C(cd*va)));z[c+168>>2]=hb;wa=C(C(ca*Pb)-C(W*Xb));ya=C(C(W*Tb)-C(ha*Pb));Ga=C(C(ha*Xb)-C(ca*Tb));ib=C(C(id*wa)+C(C(jd*ya)+C(kd*Ga)));z[c+164>>2]=ib;Ha=C(C(ba*Qb)-C(V*Yb));Ia=C(C(V*Ub)-C(ga*Qb));Ja=C(C(ga*Yb)-C(ba*Ub));jb=C(C(qd*Ha)+C(C(rd*Ia)+C(sd*Ja)));z[c+160>>2]=jb;kb=C(C(Xc*qa)+C(C(Yc*ra)+C(Zc*sa)));z[c+156>>2]=kb;lb=C(C(dd*ta)+C(C(ed*ua)+C(fd*va)));z[c+152>>2]=lb;mb=C(C(ld*wa)+C(C(md*ya)+C(nd*Ga)));z[c+148>>2]=mb;nb=C(C(td*Ha)+C(C(ud*Ia)+C(vd*Ja)));z[c+144>>2]=nb;N=C(C(_c*qa)+C(C($c*ra)+C(Ic*sa)));z[c+140>>2]=N;H=C(C(gd*ta)+C(C(hd*ua)+C(Jc*va)));z[c+136>>2]=H;p=C(C(od*wa)+C(C(pd*ya)+C(Kc*Ga)));z[c+132>>2]=p;m=C(C(wd*Ha)+C(C(xd*Ia)+C(se*Ja)));z[c+128>>2]=m;Sa=C(Sa+C(We+C(C(hb*hb)+C(C(lb*lb)+C(H*H)))));Wa=C(Wa+C(Xe+C(C(ib*ib)+C(C(mb*mb)+C(p*p)))));_a=C(_a+C(Ye+C(C(jb*jb)+C(C(nb*nb)+C(m*m)))));la=C(la-C(Pf+C(C(ce*qa)+C(C(de*ra)+C(Oc*sa)))));ma=C(ma-C(Qf+C(C(ee*ta)+C(C(fe*ua)+C(Pc*va)))));na=C(na-C(Rf+C(C(ge*wa)+C(C(he*ya)+C(Qc*Ga)))));Oa=C(Oa+C(Ve+C(C(gb*gb)+C(C(kb*kb)+C(N*N)))));oa=C(oa-C(Sf+C(C(ie*Ha)+C(C(je*Ia)+C(ue*Ja)))))}n=c+Ue|0;z[c+32>>2]=Xa;z[c+16>>2]=Ya;z[c+12>>2]=Na;z[c+8>>2]=Ra;z[c+4>>2]=Va;z[c>>2]=Za;v[c+48>>2]=0;v[c+52>>2]=0;z[c+44>>2]=La;z[c+40>>2]=Pa;z[c+36>>2]=Ta;z[c+28>>2]=Ma;z[c+24>>2]=Qa;z[c+20>>2]=Ua;v[c+56>>2]=0;v[c+60>>2]=0;N=Oa>C(0)?C(C(1)/Oa):C(0);z[c+76>>2]=N;H=Sa>C(0)?C(C(1)/Sa):C(0);z[c+72>>2]=H;p=Wa>C(0)?C(C(1)/Wa):C(0);z[c+68>>2]=p;m=_a>C(0)?C(C(1)/_a):C(0);z[c+64>>2]=m;z[c+112>>2]=M;z[c+116>>2]=$;z[c+120>>2]=_;z[c+124>>2]=Q;M=C(i-zf);i=C(vb*M);i=C((iC(0)&e>la&N>C(M*d);z[c+108>>2]=M<=Ff?aa?C(0):i:i;R=C(R-Af);i=C(vb*R);i=C((iC(0)&e>ma&H>C(R*d);z[c+104>>2]=R<=Gf?q?C(0):i:i;S=C(S-Bf);i=C(vb*S);i=C((iC(0)&e>na&p>C(S*d);z[c+100>>2]=S<=Hf?l?C(0):i:i;J=C(J-If);i=C(vb*J);m=C((iC(0)&e>oa&i>C(J*d);z[c+96>>2]=J<=Kf?g?C(0):m:m;z[c+80>>2]=C(U+(g?C(Ec*i):C(0)))-oa;z[c+84>>2]=C(ka+(l?C(Fc*p):C(0)))-na;z[c+88>>2]=C(Ea+(q?C(Gc*H):C(0)))-ma;z[c+92>>2]=C(ub+(aa?C(Hc*N):C(0)))-la;Z=0;c=E;while(1){g=pa<<4;q=g+(r+144|0)|0;la=z[q+12>>2];l=g+(r+176|0)|0;ma=z[l+12>>2];Q=C(C(Bb*la)-C(Cb*ma));g=g+(r+112|0)|0;na=z[g+12>>2];_=C(C(Db*ma)-C(Bb*na));$=C(C(Cb*na)-C(Db*la));gb=C(C(yd*Q)+C(C(zd*_)+C(Ad*$)));hb=C(C(Bd*Q)+C(C(Cd*_)+C(Dd*$)));ib=C(C(Ed*Q)+C(C(Fd*_)+C(Lc*$)));Ga=C(wb+C(C(gb*gb)+C(C(hb*hb)+C(ib*ib))));oa=z[q+8>>2];qa=z[l+8>>2];M=C(C(Eb*oa)-C(Fb*qa));ra=z[g+8>>2];R=C(C(Gb*qa)-C(Eb*ra));S=C(C(Fb*ra)-C(Gb*oa));jb=C(C(Gd*M)+C(C(Hd*R)+C(Id*S)));kb=C(C(Jd*M)+C(C(Kd*R)+C(Ld*S)));lb=C(C(Md*M)+C(C(Nd*R)+C(Mc*S)));Ha=C(xb+C(C(jb*jb)+C(C(kb*kb)+C(lb*lb))));sa=z[q+4>>2];ta=z[l+4>>2];J=C(C(Hb*sa)-C(Ib*ta));ua=z[g+4>>2];N=C(C(Jb*ta)-C(Hb*ua));H=C(C(Ib*ua)-C(Jb*sa));mb=C(C(Od*J)+C(C(Pd*N)+C(Qd*H)));nb=C(C(Rd*J)+C(C(Sd*N)+C(Td*H)));ub=C(C(Ud*J)+C(C(Vd*N)+C(Nc*H)));Ia=C(yb+C(C(mb*mb)+C(C(nb*nb)+C(ub*ub))));va=z[q>>2];wa=z[l>>2];p=C(C(Kb*va)-C(Lb*wa));ya=z[g>>2];m=C(C(Mb*wa)-C(Kb*ya));i=C(C(Lb*ya)-C(Mb*va));Ea=C(C(Wd*p)+C(C(Xd*m)+C(Yd*i)));ka=C(C(Zd*p)+C(C(_d*m)+C($d*i)));U=C(C(ae*p)+C(C(be*m)+C(te*i)));Ja=C(zb+C(C(Ea*Ea)+C(C(ka*ka)+C(U*U))));Oa=C(C(C(kc*ma)+C(C(ec*la)+C(_b*na)))+C(C(ke*Q)+C(C(le*_)+C(Rc*$))));Sa=C(C(C(mc*qa)+C(C(gc*oa)+C(ac*ra)))+C(C(me*M)+C(C(ne*R)+C(Sc*S))));Wa=C(C(C(oc*ta)+C(C(ic*sa)+C(cc*ua)))+C(C(oe*J)+C(C(pe*N)+C(Tc*H))));_a=C(C(C(yc*wa)+C(C(wc*va)+C(uc*ya)))+C(C(qe*p)+C(C(re*m)+C(ve*i))));if(ob){La=C(C(Nb*la)-C(Vb*ma));Ma=C(C(Rb*ma)-C(Nb*na));Na=C(C(Vb*na)-C(Rb*la));Q=C(C(Uc*La)+C(C(Vc*Ma)+C(Wc*Na)));z[c+188>>2]=Q;Pa=C(C(Ob*oa)-C(Wb*qa));Qa=C(C(Sb*qa)-C(Ob*ra));Ra=C(C(Wb*ra)-C(Sb*oa));_=C(C(ad*Pa)+C(C(bd*Qa)+C(cd*Ra)));z[c+184>>2]=_;Ta=C(C(Pb*sa)-C(Xb*ta));Ua=C(C(Tb*ta)-C(Pb*ua));Va=C(C(Xb*ua)-C(Tb*sa));$=C(C(id*Ta)+C(C(jd*Ua)+C(kd*Va)));z[c+180>>2]=$;Xa=C(C(Qb*va)-C(Yb*wa));Ya=C(C(Ub*wa)-C(Qb*ya));Za=C(C(Yb*ya)-C(Ub*va));M=C(C(qd*Xa)+C(C(rd*Ya)+C(sd*Za)));z[c+176>>2]=M;R=C(C(Xc*La)+C(C(Yc*Ma)+C(Zc*Na)));z[c+172>>2]=R;S=C(C(dd*Pa)+C(C(ed*Qa)+C(fd*Ra)));z[c+168>>2]=S;J=C(C(ld*Ta)+C(C(md*Ua)+C(nd*Va)));z[c+164>>2]=J;N=C(C(td*Xa)+C(C(ud*Ya)+C(vd*Za)));z[c+160>>2]=N;H=C(C(_c*La)+C(C($c*Ma)+C(Ic*Na)));z[c+156>>2]=H;p=C(C(gd*Pa)+C(C(hd*Qa)+C(Jc*Ra)));z[c+152>>2]=p;m=C(C(od*Ta)+C(C(pd*Ua)+C(Kc*Va)));z[c+148>>2]=m;i=C(C(wd*Xa)+C(C(xd*Ya)+C(se*Za)));z[c+144>>2]=i;Ga=C(Ga+C(Ve+C(C(Q*Q)+C(C(R*R)+C(H*H)))));Ha=C(Ha+C(We+C(C(_*_)+C(C(S*S)+C(p*p)))));Ia=C(Ia+C(Xe+C(C($*$)+C(C(J*J)+C(m*m)))));Sa=C(Sa-C(C(C(nc*qa)+C(C(hc*oa)+C(bc*ra)))+C(C(ee*Pa)+C(C(fe*Qa)+C(Pc*Ra)))));Wa=C(Wa-C(C(C(pc*ta)+C(C(jc*sa)+C(dc*ua)))+C(C(ge*Ta)+C(C(he*Ua)+C(Qc*Va)))));_a=C(_a-C(C(C(zc*wa)+C(C(xc*va)+C(vc*ya)))+C(C(ie*Xa)+C(C(je*Ya)+C(ue*Za)))));Oa=C(Oa-C(C(C(lc*ma)+C(C(fc*la)+C($b*na)))+C(C(ce*La)+C(C(de*Ma)+C(Oc*Na)))));Ja=C(Ja+C(Ye+C(C(M*M)+C(C(N*N)+C(i*i)))))}pa=1-pa|0;v[c+96>>2]=0;v[c+100>>2]=0;z[c+80>>2]=Ea;z[c+64>>2]=ka;z[c+48>>2]=U;v[c+104>>2]=0;v[c+108>>2]=0;z[c+92>>2]=gb;z[c+88>>2]=jb;z[c+84>>2]=mb;z[c+76>>2]=hb;z[c+72>>2]=kb;z[c+68>>2]=nb;z[c+60>>2]=ib;z[c+56>>2]=lb;z[c+52>>2]=ub;z[c+124>>2]=-(Ga>C(0)?C(C(1)/Ga):C(0));z[c+120>>2]=-(Ha>C(0)?C(C(1)/Ha):C(0));z[c+116>>2]=-(Ia>C(0)?C(C(1)/Ia):C(0));z[c+112>>2]=-(Ja>C(0)?C(C(1)/Ja):C(0));z[c+140>>2]=C(C(C(Ze*ma)+C(_e*la))+C($e*na))-Oa;z[c+136>>2]=C(C(C(ab*qa)+C(bb*oa))+C(cb*ra))-Sa;z[c+132>>2]=C(C(C(db*ta)+C(eb*sa))+C(fb*ua))-Wa;z[c+128>>2]=C(C(C(za*wa)+C(Aa*va))+C(Ca*ya))-_a;z[c+44>>2]=na;z[c+40>>2]=ra;z[c+36>>2]=ua;z[c+32>>2]=ya;z[c+28>>2]=la;z[c+24>>2]=oa;z[c+20>>2]=sa;z[c+16>>2]=va;z[c+12>>2]=ma;z[c+8>>2]=qa;z[c+4>>2]=ta;z[c>>2]=wa;E=c+Lf|0;c=E;Z=Z+1|0;if((Fa|0)!=(Z|0)){continue}break}s:{if(h&1){g=j;Z=o;o=h;break s}Z=o+1|0;g=65535;l=0;c=j;t:{if((c|0)==65535){break t}while(1){q=B(c,44)+G|0;g=w[q+5|0];if((g|0)==(Z|0)){g=65535;Z=0;c=x[q+2>>1];if((c|0)!=65535){continue}break t}break}l=(c|0)!=65535&g>>>0>Z>>>0;g=c}D=j;$a=o;o=l^1|h}u:{if(h&2){q=a;aa=I;break u}aa=I+1|0;fa=2;q=a;v:{if((a|0)==65535){q=65535;break v}w:{while(1){j=B(q,44)+G|0;c=w[j+5|0];if((c|0)!=(aa|0)){break w}aa=0;q=x[j+2>>1];if((q|0)!=65535){continue}break}q=65535;break v}if((q|0)==65535){q=65535;break v}fa=c>>>0>aa>>>0?0:2}o=o|fa;F=a;rb=I}x:{if(h&4){l=A;fa=P;break x}fa=P+1|0;j=4;l=A;y:{if((l|0)==65535){l=65535;break y}z:{while(1){c=B(l,44)+G|0;a=w[c+5|0];if((a|0)!=(fa|0)){break z}fa=0;l=x[c+2>>1];if((l|0)!=65535){continue}break}l=65535;break y}if((l|0)==65535){l=65535;break y}j=a>>>0>fa>>>0?0:4}o=j|o;L=A;sb=P}qb=(h|0)!=15;if(h&8){h=o}else{a=O+1|0;I=8;c=s;A:{if((c|0)==65535){c=65535;break A}B:{while(1){A=B(c,44)+G|0;j=w[A+5|0];if((j|0)!=(a|0)){break B}a=0;c=x[A+2>>1];if((c|0)!=65535){continue}break}c=65535;break A}if((c|0)==65535){c=65535;break A}I=a>>>0>>0?0:8}T=s;tb=O;O=a;s=c;h=o|I}c=n;o=Z;j=g;I=aa;a=q;P=fa;A=l;if(qb){continue}break}}Da=Da+1|0;if((Zb|0)!=(Da|0)){continue}break}}a=v[r+44>>2]+Ka|0;v[a>>2]=0;v[a+4>>2]=-1;A=2}xa=r+208|0;return A}function g4(a,b,c,d,e){var f=0,g=0,h=0,i=0,k=0,l=0,m=C(0),n=0,o=C(0),q=C(0),r=C(0),s=0,E=0,F=C(0),G=0,H=0,I=0,J=C(0),L=0,M=0,N=0,O=0,P=C(0),Q=0,R=0,S=0,T=C(0),U=0,V=0,W=C(0),X=0,Y=0,Z=0,_=0,$=C(0),aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=C(0),ja=0;X=xa-32|0;xa=X;a:{b:{f=v[b+8>>2];c:{if(f>>>0<3){break c}d:{if(f>>>0>=65536){if(t[b+36|0]&1){break c}if(v[b+4>>2]){break d}break c}if(!v[b+4>>2]){break c}}if(y[b>>2]<12|x[b+40>>1]<4){break c}e:{if(v[b+16>>2]){if(!v[b+28>>2]|y[b+20>>2]<4){break c}g=x[b+36>>1];if(y[b+24>>2]<(g&1?2:4)>>>0){break c}if(y[b+12>>2]>19){break e}break c}g=x[b+36>>1];if(!(g&2)){break c}}f=x[b+38>>1];if(g&32){if((f-4&65535)>>>0>=253){break c}break b}if((f-8&65535)>>>0<249){break b}}b9(v[37696],4,9156,73,76068,0);b=0;break a}S=e;e=xa-32|0;R=e;xa=e;N=b;E=v[b+8>>2];s=e-(B(E,12)+15&-16)|0;G=s;xa=s;f:{if(!E){break f}h=v[N>>2];L=E-1|0;g=v[N+4>>2];M=E&3;g:{if(!M){b=s;e=E;break g}b=s;e=E;while(1){f=w[g+4|0]|w[g+5|0]<<8|(w[g+6|0]<<16|w[g+7|0]<<24);l=w[g|0]|w[g+1|0]<<8|(w[g+2|0]<<16|w[g+3|0]<<24);t[b|0]=l;t[b+1|0]=l>>>8;t[b+2|0]=l>>>16;t[b+3|0]=l>>>24;t[b+4|0]=f;t[b+5|0]=f>>>8;t[b+6|0]=f>>>16;t[b+7|0]=f>>>24;f=w[g+8|0]|w[g+9|0]<<8|(w[g+10|0]<<16|w[g+11|0]<<24);t[b+8|0]=f;t[b+9|0]=f>>>8;t[b+10|0]=f>>>16;t[b+11|0]=f>>>24;g=g+h|0;b=b+12|0;e=e-1|0;n=n+1|0;if((M|0)!=(n|0)){continue}break}}if(L>>>0<3){break f}while(1){f=w[g+4|0]|w[g+5|0]<<8|(w[g+6|0]<<16|w[g+7|0]<<24);l=w[g|0]|w[g+1|0]<<8|(w[g+2|0]<<16|w[g+3|0]<<24);t[b|0]=l;t[b+1|0]=l>>>8;t[b+2|0]=l>>>16;t[b+3|0]=l>>>24;t[b+4|0]=f;t[b+5|0]=f>>>8;t[b+6|0]=f>>>16;t[b+7|0]=f>>>24;f=w[g+8|0]|w[g+9|0]<<8|(w[g+10|0]<<16|w[g+11|0]<<24);t[b+8|0]=f;t[b+9|0]=f>>>8;t[b+10|0]=f>>>16;t[b+11|0]=f>>>24;f=g+h|0;g=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+20|0]=g;t[b+21|0]=g>>>8;t[b+22|0]=g>>>16;t[b+23|0]=g>>>24;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);l=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+12|0]=l;t[b+13|0]=l>>>8;t[b+14|0]=l>>>16;t[b+15|0]=l>>>24;t[b+16|0]=g;t[b+17|0]=g>>>8;t[b+18|0]=g>>>16;t[b+19|0]=g>>>24;f=f+h|0;g=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+32|0]=g;t[b+33|0]=g>>>8;t[b+34|0]=g>>>16;t[b+35|0]=g>>>24;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);l=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+24|0]=l;t[b+25|0]=l>>>8;t[b+26|0]=l>>>16;t[b+27|0]=l>>>24;t[b+28|0]=g;t[b+29|0]=g>>>8;t[b+30|0]=g>>>16;t[b+31|0]=g>>>24;f=f+h|0;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);l=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+36|0]=l;t[b+37|0]=l>>>8;t[b+38|0]=l>>>16;t[b+39|0]=l>>>24;t[b+40|0]=g;t[b+41|0]=g>>>8;t[b+42|0]=g>>>16;t[b+43|0]=g>>>24;g=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+44|0]=g;t[b+45|0]=g>>>8;t[b+46|0]=g>>>16;t[b+47|0]=g>>>24;b=b+48|0;g=f+h|0;e=e-4|0;if(e){continue}break}}b=v[N+28>>2];h:{if(!b){l=0;break h}e=v[N+32>>2];f=e<<2;l=G-(f+15&-16)|0;G=l;xa=l;if(t[N+36|0]&1){if((e|0)<=0){break h}e=f+l|0;f=v[N+24>>2];g=l;while(1){v[g>>2]=x[b>>1];b=b+f|0;g=g+4|0;if(e>>>0>g>>>0){continue}break}break h}if(!e){break h}f=v[N+24>>2];L=e-1|0;M=e&3;i:{if(!M){g=l;break i}n=0;g=l;while(1){h=w[b|0]|w[b+1|0]<<8|(w[b+2|0]<<16|w[b+3|0]<<24);t[g|0]=h;t[g+1|0]=h>>>8;t[g+2|0]=h>>>16;t[g+3|0]=h>>>24;b=b+f|0;g=g+4|0;e=e-1|0;n=n+1|0;if((M|0)!=(n|0)){continue}break}}if(L>>>0<3){break h}while(1){h=w[b|0]|w[b+1|0]<<8|(w[b+2|0]<<16|w[b+3|0]<<24);t[g|0]=h;t[g+1|0]=h>>>8;t[g+2|0]=h>>>16;t[g+3|0]=h>>>24;b=b+f|0;h=w[b|0]|w[b+1|0]<<8|(w[b+2|0]<<16|w[b+3|0]<<24);t[g+4|0]=h;t[g+5|0]=h>>>8;t[g+6|0]=h>>>16;t[g+7|0]=h>>>24;b=b+f|0;h=w[b|0]|w[b+1|0]<<8|(w[b+2|0]<<16|w[b+3|0]<<24);t[g+8|0]=h;t[g+9|0]=h>>>8;t[g+10|0]=h>>>16;t[g+11|0]=h>>>24;b=b+f|0;h=w[b|0]|w[b+1|0]<<8|(w[b+2|0]<<16|w[b+3|0]<<24);t[g+12|0]=h;t[g+13|0]=h>>>8;t[g+14|0]=h>>>16;t[g+15|0]=h>>>24;g=g+16|0;b=b+f|0;e=e-4|0;if(e){continue}break}}g=v[N+16>>2];j:{if(!g){h=v[N+20>>2];n=0;break j}h=v[N+20>>2];n=G-(B(h,20)+15&-16)|0;xa=n;if(!h){h=0;break j}G=v[N+12>>2];L=h-1|0;O=h&3;k:{if(!O){b=n;e=h;break k}b=n;e=h;while(1){f=w[g+4|0]|w[g+5|0]<<8|(w[g+6|0]<<16|w[g+7|0]<<24);M=w[g|0]|w[g+1|0]<<8|(w[g+2|0]<<16|w[g+3|0]<<24);t[b|0]=M;t[b+1|0]=M>>>8;t[b+2|0]=M>>>16;t[b+3|0]=M>>>24;t[b+4|0]=f;t[b+5|0]=f>>>8;t[b+6|0]=f>>>16;t[b+7|0]=f>>>24;f=w[g+16|0]|w[g+17|0]<<8|(w[g+18|0]<<16|w[g+19|0]<<24);t[b+16|0]=f;t[b+17|0]=f>>>8;t[b+18|0]=f>>>16;t[b+19|0]=f>>>24;f=w[g+12|0]|w[g+13|0]<<8|(w[g+14|0]<<16|w[g+15|0]<<24);M=w[g+8|0]|w[g+9|0]<<8|(w[g+10|0]<<16|w[g+11|0]<<24);t[b+8|0]=M;t[b+9|0]=M>>>8;t[b+10|0]=M>>>16;t[b+11|0]=M>>>24;t[b+12|0]=f;t[b+13|0]=f>>>8;t[b+14|0]=f>>>16;t[b+15|0]=f>>>24;g=g+G|0;b=b+20|0;e=e-1|0;i=i+1|0;if((O|0)!=(i|0)){continue}break}}if(L>>>0>=3){while(1){f=w[g+4|0]|w[g+5|0]<<8|(w[g+6|0]<<16|w[g+7|0]<<24);i=w[g|0]|w[g+1|0]<<8|(w[g+2|0]<<16|w[g+3|0]<<24);t[b|0]=i;t[b+1|0]=i>>>8;t[b+2|0]=i>>>16;t[b+3|0]=i>>>24;t[b+4|0]=f;t[b+5|0]=f>>>8;t[b+6|0]=f>>>16;t[b+7|0]=f>>>24;f=w[g+16|0]|w[g+17|0]<<8|(w[g+18|0]<<16|w[g+19|0]<<24);t[b+16|0]=f;t[b+17|0]=f>>>8;t[b+18|0]=f>>>16;t[b+19|0]=f>>>24;f=w[g+12|0]|w[g+13|0]<<8|(w[g+14|0]<<16|w[g+15|0]<<24);i=w[g+8|0]|w[g+9|0]<<8|(w[g+10|0]<<16|w[g+11|0]<<24);t[b+8|0]=i;t[b+9|0]=i>>>8;t[b+10|0]=i>>>16;t[b+11|0]=i>>>24;t[b+12|0]=f;t[b+13|0]=f>>>8;t[b+14|0]=f>>>16;t[b+15|0]=f>>>24;f=g+G|0;g=w[f+16|0]|w[f+17|0]<<8|(w[f+18|0]<<16|w[f+19|0]<<24);t[b+36|0]=g;t[b+37|0]=g>>>8;t[b+38|0]=g>>>16;t[b+39|0]=g>>>24;g=w[f+12|0]|w[f+13|0]<<8|(w[f+14|0]<<16|w[f+15|0]<<24);i=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+28|0]=i;t[b+29|0]=i>>>8;t[b+30|0]=i>>>16;t[b+31|0]=i>>>24;t[b+32|0]=g;t[b+33|0]=g>>>8;t[b+34|0]=g>>>16;t[b+35|0]=g>>>24;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);i=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+20|0]=i;t[b+21|0]=i>>>8;t[b+22|0]=i>>>16;t[b+23|0]=i>>>24;t[b+24|0]=g;t[b+25|0]=g>>>8;t[b+26|0]=g>>>16;t[b+27|0]=g>>>24;f=f+G|0;g=w[f+16|0]|w[f+17|0]<<8|(w[f+18|0]<<16|w[f+19|0]<<24);t[b+56|0]=g;t[b+57|0]=g>>>8;t[b+58|0]=g>>>16;t[b+59|0]=g>>>24;g=w[f+12|0]|w[f+13|0]<<8|(w[f+14|0]<<16|w[f+15|0]<<24);i=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+48|0]=i;t[b+49|0]=i>>>8;t[b+50|0]=i>>>16;t[b+51|0]=i>>>24;t[b+52|0]=g;t[b+53|0]=g>>>8;t[b+54|0]=g>>>16;t[b+55|0]=g>>>24;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);i=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+40|0]=i;t[b+41|0]=i>>>8;t[b+42|0]=i>>>16;t[b+43|0]=i>>>24;t[b+44|0]=g;t[b+45|0]=g>>>8;t[b+46|0]=g>>>16;t[b+47|0]=g>>>24;f=f+G|0;g=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);i=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[b+60|0]=i;t[b+61|0]=i>>>8;t[b+62|0]=i>>>16;t[b+63|0]=i>>>24;t[b+64|0]=g;t[b+65|0]=g>>>8;t[b+66|0]=g>>>16;t[b+67|0]=g>>>24;g=w[f+12|0]|w[f+13|0]<<8|(w[f+14|0]<<16|w[f+15|0]<<24);i=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[b+68|0]=i;t[b+69|0]=i>>>8;t[b+70|0]=i>>>16;t[b+71|0]=i>>>24;t[b+72|0]=g;t[b+73|0]=g>>>8;t[b+74|0]=g>>>16;t[b+75|0]=g>>>24;g=w[f+16|0]|w[f+17|0]<<8|(w[f+18|0]<<16|w[f+19|0]<<24);t[b+76|0]=g;t[b+77|0]=g>>>8;t[b+78|0]=g>>>16;t[b+79|0]=g>>>24;b=b+80|0;g=f+G|0;e=e-4|0;if(e){continue}break}}if(h>>>0<2|S){break j}G=L&3;e=0;l:{if(h-2>>>0<3){b=1;g=0;break l}L=L&-4;g=0;b=1;i=0;while(1){f=B(b,20)+n|0;g=x[f+16>>1]>x[(B(g,20)+n|0)+16>>1]?b:g;g=x[f+36>>1]>x[(B(g,20)+n|0)+16>>1]?b+1|0:g;g=x[f+56>>1]>x[(B(g,20)+n|0)+16>>1]?b+2|0:g;g=x[f+76>>1]>x[(B(g,20)+n|0)+16>>1]?b+3|0:g;b=b+4|0;i=i+4|0;if((L|0)!=(i|0)){continue}break}}if(G){while(1){g=x[(B(b,20)+n|0)+16>>1]>x[(B(g,20)+n|0)+16>>1]?b:g;b=b+1|0;e=e+1|0;if((G|0)!=(e|0)){continue}break}}if(!g){break j}v[R+24>>2]=v[n+16>>2];b=v[n+12>>2];v[R+16>>2]=v[n+8>>2];v[R+20>>2]=b;b=v[n+4>>2];v[R+8>>2]=v[n>>2];v[R+12>>2]=b;b=B(g,20)+n|0;v[n+16>>2]=v[b+16>>2];e=v[b+12>>2];v[n+8>>2]=v[b+8>>2];v[n+12>>2]=e;e=v[b+4>>2];v[n>>2]=v[b>>2];v[n+4>>2]=e;v[b+16>>2]=v[R+24>>2];e=v[R+20>>2];v[b+8>>2]=v[R+16>>2];v[b+12>>2]=e;e=v[R+12>>2];v[b>>2]=v[R+8>>2];v[b+4>>2]=e}I=v[N+32>>2];i=h;ga=!(x[N+36>>1]&16);G=0;v[a>>2]=0;v[a+4>>2]=0;L=a+24|0;v[L>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;t[v[a+28>>2]+38|0]=E;f=a;a=v[37696];a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,B(E&255,12)|1,24422,9064,118)|0;v[f>>2]=a;I9(a,s,B(w[v[f+28>>2]+38|0],12));t[v[f+28>>2]+39|0]=0;a=v[f+8>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[f+8>>2]=0;a=v[f+4>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[f+4>>2]=0;m:{if(i>>>0>=256){b9(v[37696],32,9064,128,72494,0);e=0;break m}t[v[f+28>>2]+39|0]=i;if(i){a=v[37696];a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,B(i,20),24422,9064,134)|0}else{a=0}v[f+4>>2]=a;if(I){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?35013:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,I,b,9064,136)|0}else{b=0}v[f+8>>2]=b;if(i){e=v[f+4>>2];while(1){s=B(G,20);a=s+e|0;u[a+16>>1]=b-v[f+8>>2];h=a;a=n+s|0;E=x[a+16>>1];t[h+18|0]=E;if(E){g=0;e=0;if(E-1>>>0>=3){M=E&65532;h=0;while(1){t[b+e|0]=v[(x[a+18>>1]+e<<2)+l>>2];O=e|1;t[O+b|0]=v[(O+x[a+18>>1]<<2)+l>>2];O=e|2;t[O+b|0]=v[(O+x[a+18>>1]<<2)+l>>2];O=e|3;t[O+b|0]=v[(O+x[a+18>>1]<<2)+l>>2];e=e+4|0;h=h+4|0;if((M|0)!=(h|0)){continue}break}}h=E&3;if(h){while(1){t[b+e|0]=v[(x[a+18>>1]+e<<2)+l>>2];e=e+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}e=v[f+4>>2]}g=v[a>>2];M=v[a+4>>2];h=e+s|0;s=v[a+12>>2];v[h+8>>2]=v[a+8>>2];v[h+12>>2]=s;v[h>>2]=g;v[h+4>>2]=M;b=b+E|0;G=G+1|0;if((i|0)!=(G|0)){continue}break}}e=0;n:{if(!b4(f,i,!S)){break n}o:{p:{if(S){if(Ba[v[v[S>>2]+16>>2]](S,I,v[f+8>>2],f+12|0,f+20|0,L)|0){break p}}b=0;n=0;da=xa-48|0;xa=da;q:{if(I&1){b9(v[37696],32,9064,566,73287,0);break q}Y=w[v[f+28>>2]+39|0];a=v[f+12>>2];if(a){h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,a)}v[f+12>>2]=0;if(I){a=v[37696];h=Ba[v[v[a>>2]+20>>2]](a)|0?35013:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,I,h,9064,574)|0}else{a=0}v[f+12>>2]=a;a=I<<3;h=(a&1073741816)!=(a|0)?-1:I<<5;if(h){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,h,b,9064,576)|0}a=I<<2;S=a+b|0;M=a+S|0;O=M+a|0;ea=O+a|0;fa=a+ea|0;U=a+fa|0;if(I){h=v[37696];g=Ba[v[v[h>>2]+20>>2]](h)|0?38519:63804;l=Ba[v[v[h+12>>2]+8>>2]](h+12|0,I,g,9064,588)|0}else{l=0}Q=a+U|0;if(Y){aa=v[f+8>>2];ba=v[f+4>>2];G=b;h=S;E=M;s=l;g=O;while(1){a=ba+B(n,20)|0;ca=w[a+18|0];if(ca){Z=aa+x[a+16>>1]|0;k=0;while(1){a=k+1|0;_=(a|0)==(ca|0);L=w[k+Z|0];V=w[Z+(_?0:a)|0];v[G>>2]=L>>>0>>0?L:V;ja=L;L=L>>>0>V>>>0;v[h>>2]=L?ja:V;v[E>>2]=n;v[g>>2]=k;t[s|0]=L;v[(H<<2)+Q>>2]=H;H=H+1|0;s=s+1|0;g=g+4|0;E=E+4|0;h=h+4|0;G=G+4|0;k=a;if(!_){continue}break}}n=n+1|0;if((Y|0)!=(n|0)){continue}break}}_=SU(da+8|0);ca=v[WU(WU(_,S,I,1),b,I,1)+8>>2];a=v[f+24>>2];if(a){h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,a)}v[f+24>>2]=0;a=I+I|0;a=a>>>0>>0?-1:a;if(a){h=v[37696];g=Ba[v[v[h>>2]+20>>2]](h)|0?27439:63804;h=Ba[v[v[h+12>>2]+8>>2]](h+12|0,a,g,9064,634)|0}else{h=0}v[f+24>>2]=h;h=v[f+20>>2];if(h){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,h)}V=0;v[f+20>>2]=0;Y=0;if(a){h=v[37696];g=Ba[v[v[h>>2]+20>>2]](h)|0?27439:63804;Y=Ba[v[v[h+12>>2]+8>>2]](h+12|0,a,g,9064,638)|0}v[f+20>>2]=Y;a=v[f+28>>2];u[a+36>>1]=0;r:{if(I){E=v[f+24>>2];k=0;H=-1;n=-1;a=-1;g=0;while(1){Z=k<<2;h=v[Z+ca>>2];aa=w[h+l|0];s=h<<2;h=v[s+S>>2];ba=v[s+O>>2];G=v[s+M>>2];L=v[b+s>>2];s:{if(!((L|0)==(a|0)&(h|0)==(n|0))){if(!((g|0)!=1?k:0)){u[E+2>>1]=aa?L:h;u[E>>1]=aa?h:L;E=E+4|0;V=V+1|0;s=V&65535;a=L;n=h;H=G;g=0;break s}k=0;b9(v[37696],32,9064,674,73287,0);break r}s=V&65535;h=s<<1;t[(h+v[f+12>>2]|0)-2|0]=H;t[(h+v[f+12>>2]|0)-1|0]=G;Y=v[f+20>>2];g=g+1|0}u[(ba+x[(v[f+4>>2]+B(G,20)|0)+16>>1]<<1)+Y>>1]=k>>>1;v[Z+ea>>2]=G;v[Z+fa>>2]=ba;v[U+Z>>2]=s-1;k=k+1|0;if((I|0)!=(k|0)){continue}break}a=v[f+28>>2]}u[a+36>>1]=V;t:{if(!ga){break t}a=WU(WU(_,fa,I,1),ea,I,1);u:{if(!I){break u}a=v[a+8>>2];g=0;k=0;if(I-1>>>0>=3){n=I&-4;G=0;while(1){h=k<<2;v[h+Q>>2]=v[(v[a+h>>2]<<2)+U>>2];E=h|4;v[E+Q>>2]=v[(v[a+E>>2]<<2)+U>>2];E=h|8;v[E+Q>>2]=v[(v[a+E>>2]<<2)+U>>2];h=h|12;v[h+Q>>2]=v[(v[a+h>>2]<<2)+U>>2];k=k+4|0;G=G+4|0;if((n|0)!=(G|0)){continue}break}}h=I&3;if(!h){break u}while(1){n=k<<2;v[n+Q>>2]=v[(v[a+n>>2]<<2)+U>>2];k=k+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}h=x[v[f+28>>2]+36>>1]&32767;v:{if(!h){H=0;a=0;break v}a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?47981:63804;H=Ba[v[v[a+12>>2]+8>>2]](a+12|0,h<<3,g,9064,724)|0;a=(x[v[f+28>>2]+36>>1]&32767)<<3}a=J9(H,0,a);w:{if(!I){break w}if(I-1>>>0>=3){h=I&-4;H=0;while(1){g=a+(v[Q>>2]<<3)|0;u[g+2>>1]=x[g+2>>1]+1;g=a+(v[Q+4>>2]<<3)|0;u[g+2>>1]=x[g+2>>1]+1;g=a+(v[Q+8>>2]<<3)|0;u[g+2>>1]=x[g+2>>1]+1;g=a+(v[Q+12>>2]<<3)|0;u[g+2>>1]=x[g+2>>1]+1;Q=Q+16|0;H=H+4|0;if((h|0)!=(H|0)){continue}break}}h=I&3;if(!h){break w}H=0;while(1){g=a+(v[Q>>2]<<3)|0;u[g+2>>1]=x[g+2>>1]+1;Q=Q+4|0;H=H+1|0;if((h|0)!=(H|0)){continue}break}}h=x[v[f+28>>2]+36>>1]&32767;x:{if(h){H=0;while(1){if(x[(a+(H<<3)|0)+2>>1]==2){H=H+1|0;if((h|0)!=(H|0)){continue}break x}break}k=0;b9(v[37696],32,9064,738,73287,0);break r}if(!a){break t}}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,a)}if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}k=1;if(!l){break r}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,l)}TU(_)}xa=da+48|0;if(k){break o}break n}u[v[f+28>>2]+36>>1]=I>>>1}y:{if(!i){break y}g=v[f+4>>2];l=w[v[f+28>>2]+38|0];if(l){h=v[f>>2];G=l&254;S=l&1;n=0;while(1){a=g+B(n,20)|0;q=z[a+8>>2];P=z[a+4>>2];T=z[a>>2];o=C(34028234663852886e22);b=0;k=255;e=h;H=0;if((l|0)!=1){while(1){W=C(C(z[e+8>>2]*q)+C(C(z[e>>2]*T)+C(z[e+4>>2]*P)));E=W>2]*q)+C(C(z[e+12>>2]*T)+C(z[e+16>>2]*P)));o=E?W:o;s=J>2]*q)+C(C(z[e>>2]*T)+C(z[e+4>>2]*P)))>>0>=7){a=i&-8;k=0;while(1){t[(g+B(e,20)|0)+19|0]=255;t[(g+B(e|1,20)|0)+19|0]=255;t[(g+B(e|2,20)|0)+19|0]=255;t[(g+B(e|3,20)|0)+19|0]=255;t[(g+B(e|4,20)|0)+19|0]=255;t[(g+B(e|5,20)|0)+19|0]=255;t[(g+B(e|6,20)|0)+19|0]=255;t[(g+B(e|7,20)|0)+19|0]=255;e=e+8|0;k=k+8|0;if((a|0)!=(k|0)){continue}break}}a=i&7;if(!a){break y}while(1){t[(g+B(e,20)|0)+19|0]=255;e=e+1|0;b=b+1|0;if((a|0)!=(b|0)){continue}break}}e=1;if(!ga){break n}e=c4(f)}}a=e;z:{if(!a){b9(v[37696],32,9156,312,75930,0);break z}E=(x[N+36>>1]&64)>>>6|0;e=0;n=0;b=xa-272|0;xa=b;A:{if(!(z[f+112>>2]<=C(0))){break A}u[b+86>>1]=0;u[b+88>>1]=0;u[b+90>>1]=0;u[b+92>>1]=0;v[b+80>>2]=0;v[b+84>>2]=0;u[b+94>>1]=255;u[b+96>>1]=255;h=w[f+82|0];v[b+64>>2]=h;g=v[f>>2];v[b+56>>2]=12;v[b+60>>2]=g;v[b+72>>2]=v[f+4>>2];v[b+68>>2]=20;v[b+76>>2]=w[v[f+28>>2]+39|0];v[b+84>>2]=v[f+8>>2];B:{if(!h){break B}if((h|0)!=1){s=h&254;while(1){l=g+B(e|1,12)|0;k=g+B(e,12)|0;m=C(z[l+8>>2]+C(z[k+8>>2]+m));F=C(z[l+4>>2]+C(z[k+4>>2]+F));r=C(z[l>>2]+C(z[k>>2]+r));e=e+2|0;n=n+2|0;if((s|0)!=(n|0)){continue}break}}if(!(h&1)){break B}e=g+B(e,12)|0;m=C(z[e+8>>2]+m);F=C(z[e+4>>2]+F);r=C(z[e>>2]+r)}o=C(C(1)/C(h>>>0));z[b+48>>2]=o*m;z[b+44>>2]=o*F;z[b+40>>2]=o*r;C:{D:{if(E){if(Y4(b+56|0,b+104|0,b+40|0)){break D}break C}if(!X4(b+56|0,b+104|0,b+40|0)){break C}}m=C(A[b+128>>3]);z[f+116>>2]=m;o=C(A[b+152>>3]);z[f+120>>2]=o;r=C(A[b+176>>3]);z[f+124>>2]=r;F=C(A[b+136>>3]);z[f+128>>2]=F;q=C(A[b+160>>3]);z[f+132>>2]=q;P=C(A[b+184>>3]);z[f+136>>2]=P;T=C(A[b+144>>3]);z[f+140>>2]=T;W=C(A[b+168>>3]);z[f+144>>2]=W;J=C(A[b+192>>3]);z[f+148>>2]=J;e=v[b+104>>2];z[f+68>>2]=z[b+104>>2];h=v[b+108>>2];z[f+72>>2]=z[b+108>>2];g=v[b+112>>2];z[f+76>>2]=z[b+112>>2];if(((p(m),j(2))&2139095040)==2139095040|((p(o),j(2))&2139095040)==2139095040|(((p(r),j(2))&2139095040)==2139095040|((p(F),j(2))&2139095040)==2139095040)){break C}if(((p(q),j(2))&2139095040)==2139095040|((p(P),j(2))&2139095040)==2139095040|(((p(T),j(2))&2139095040)==2139095040|((p(W),j(2))&2139095040)==2139095040)){break C}if(((p(J),j(2))&2139095040)==2139095040|(e&2139095040)==2139095040|((h&2139095040)==2139095040|(g&2139095040)==2139095040)){break C}ha=A[b+120>>3];m=C(ha);if(((p(m),j(2))&2139095040)==2139095040){break C}if(ha<0){b9(v[37696],2,9156,233,71091,0);A[b+120>>3]=-A[b+120>>3];m=z[f+132>>2];o=z[f+136>>2];r=z[f+144>>2];F=z[f+148>>2];q=z[f+116>>2];P=z[f+120>>2];T=z[f+124>>2];W=z[f+128>>2];z[b+24>>2]=-z[f+140>>2];z[b+12>>2]=-W;z[b+8>>2]=-T;z[b+4>>2]=-P;z[b>>2]=-q;z[b+32>>2]=-F;z[b+28>>2]=-r;z[b+20>>2]=-o;z[b+16>>2]=-m;z[f+116>>2]=z[b>>2];z[f+120>>2]=z[b+4>>2];z[f+124>>2]=z[b+8>>2];z[f+128>>2]=z[b+12>>2];z[f+132>>2]=z[b+16>>2];z[f+136>>2]=z[b+20>>2];z[f+140>>2]=z[b+24>>2];z[f+144>>2]=z[b+28>>2];z[f+148>>2]=z[b+32>>2];m=C(A[b+120>>3])}z[f+112>>2]=m;break A}b9(v[37696],32,9156,242,77731,0)}xa=b+272|0}xa=R+32|0;b=0;if(!a){break a}CV(X+8|0,w[f+82|0],v[f>>2]);m=z[X+24>>2];o=z[X+20>>2];r=z[X+8>>2];F=z[X+12>>2];q=z[X+28>>2];P=z[X+16>>2];z[f- -64>>2]=C(q-P)*C(.5);z[f+60>>2]=C(m-F)*C(.5);z[f+56>>2]=C(o-r)*C(.5);z[f+52>>2]=C(P+q)*C(.5);z[f+48>>2]=C(F+m)*C(.5);z[f+44>>2]=C(r+o)*C(.5);if(w[f+82|0]>c>>>0){n=xa-16|0;xa=n;a=v[f+108>>2];if(a){a=YZ(a);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?46773:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,b,9156,388)|0;v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[f+108>>2]=a;b=v[f>>2];v[n+4>>2]=a;v[n+8>>2]=b;v[n>>2]=f+44;b=0;h=xa-256|0;xa=h;a=n;c=v[a+4>>2];g=v[f+28>>2];e=w[g+38|0];v[c+8>>2]=e;G=x[g+36>>1]<<1&65534;g=e<<2;l=g+12&2032;k=G+l|0;if(k){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,k,24422,9427,118)|0;c=v[a+4>>2]}v[c+16>>2]=b;v[c+24>>2]=b;v[c+20>>2]=b+l;J9(b,0,g);S=J9(h,0,e);l=w[v[f+28>>2]+39|0];if(l){k=v[a+4>>2];E=v[f+8>>2];H=v[f+4>>2];s=0;while(1){b=H+B(s,20)|0;g=w[b+18|0];E:{if(!g){break E}c=E+x[b+16>>1]|0;e=v[k+16>>2];h=0;b=0;if(g-1>>>0>=3){G=g&252;N=0;while(1){i=e+(w[b+c|0]<<2)|0;u[i>>1]=x[i>>1]+1;i=e+(w[c+(b|1)|0]<<2)|0;u[i>>1]=x[i>>1]+1;i=e+(w[c+(b|2)|0]<<2)|0;u[i>>1]=x[i>>1]+1;i=e+(w[c+(b|3)|0]<<2)|0;u[i>>1]=x[i>>1]+1;b=b+4|0;N=N+4|0;if((G|0)!=(N|0)){continue}break}}g=g&3;if(!g){break E}while(1){N=e+(w[b+c|0]<<2)|0;u[N>>1]=x[N>>1]+1;b=b+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}s=s+1|0;if((l|0)!=(s|0)){continue}break}}ZZ(v[a+4>>2]);b=v[a+4>>2];c=(v[b+16>>2]+(v[b+8>>2]<<2)|0)-4|0;v[b+12>>2]=x[c>>1]+x[c+2>>1];b=v[f+28>>2];if(w[b+39|0]){N=v[f+4>>2];H=0;while(1){I=B(H,20);c=I+N|0;L=w[c+18|0];if(L){M=v[f+8>>2]+x[c+16>>1]|0;b=0;while(1){c=b+1|0;O=w[b+M|0];Q=O+S|0;if(!w[Q|0]){h=w[M+((c|0)==(L|0)?0:c)|0];e=1;g=v[a+4>>2];l=v[g+20>>2];R=O<<2;k=R+v[g+16>>2]|0;g=x[k+2>>1];u[k+2>>1]=g+1;t[g+l|0]=h;s=v[f+12>>2];l=v[f+20>>2];N=v[f+4>>2];g=s+(x[l+(x[(I+N|0)+16>>1]+b<<1)>>1]<<1&65534)|0;b=w[g|0];g=(b|0)==(H|0)?w[g+1|0]:b;b=g&255;if((H|0)!=(b|0)){while(1){U=B(b,20);b=U+N|0;k=x[b+16>>1];G=w[b+18|0];F:{if(G){i=v[f+8>>2]+k|0;b=0;while(1){E=b+1|0;if((O|0)==w[b+i|0]){l=h;h=w[i+((E>>>0)%(G>>>0)|0)|0];if((l|0)==(h|0)){b=(b?b:G)-1|0;h=w[i+b|0]}l=v[a+4>>2];k=v[l+20>>2];E=R+v[l+16>>2]|0;l=x[E+2>>1];u[E+2>>1]=l+1;t[k+l|0]=h;e=e+1|0;N=v[f+4>>2];k=x[(U+N|0)+16>>1];s=v[f+12>>2];l=v[f+20>>2];break F}b=E;if((G|0)!=(b|0)){continue}break}}b=0}k=(x[(b+k<<1)+l>>1]<<1&65534)+s|0;b=w[k|0];g=(b|0)==(g&255)?w[k+1|0]:b;b=g&255;if((H|0)!=(b|0)){continue}break}}t[Q|0]=e}b=c;if((L|0)!=(b|0)){continue}break}b=v[f+28>>2]}H=H+1|0;if(H>>>0>2]);xa=S+256|0;g=0;h=xa-208|0;xa=h;b=v[a+4>>2];u[b>>1]=16;u[b+2>>1]=1536;b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?35013:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,3072,c,9427,69)|0;c=a;v[v[a+4>>2]+4>>2]=b;v[h+168>>2]=0;v[h+160>>2]=0;v[h+164>>2]=0;v[h+152>>2]=0;v[h+144>>2]=0;v[h+148>>2]=0;while(1){S=g<<4;o=C(C(1)-C(C(g>>>0)/C(7.5)));l=g;while(1){F=C(1);r=C(C(1)-C(C(l>>>0)/C(7.5)));m=C(K(C(C(o*o)+C(C(r*r)+C(1)))));G:{if(!(m>C(0))){m=o;break G}F=C(C(1)/m);m=C(o*F);r=C(r*F)}z[h+140>>2]=F;z[h+136>>2]=r;z[h+132>>2]=m;z[h+124>>2]=r;z[h+120>>2]=m;z[h+116>>2]=m;z[h+112>>2]=F;z[h+108>>2]=r;z[h+104>>2]=m;z[h+96>>2]=r;z[h+92>>2]=r;z[h+88>>2]=m;z[h+84>>2]=F;z[h+80>>2]=r;z[h+76>>2]=m;z[h+68>>2]=F;z[h+64>>2]=m;z[h+60>>2]=r;z[h+52>>2]=m;z[h+48>>2]=r;z[h+44>>2]=r;z[h+40>>2]=F;z[h+36>>2]=m;z[h+32>>2]=r;z[h+24>>2]=m;z[h+20>>2]=m;z[h+16>>2]=r;z[h+12>>2]=F;z[h+8>>2]=m;z[h+4>>2]=r;m=C(-F);z[h+128>>2]=m;z[h+100>>2]=m;z[h+72>>2]=m;z[h+56>>2]=m;z[h+28>>2]=m;z[h>>2]=m;k=v[c+8>>2];E=v[c+4>>2];N=v[E+20>>2];G=v[E+16>>2];H=0;while(1){L=(h+160|0)+H|0;b=w[L|0];v[h+200>>2]=0;v[h+204>>2]=0;v[h+192>>2]=0;v[h+196>>2]=0;v[h+184>>2]=0;v[h+188>>2]=0;v[h+176>>2]=0;v[h+180>>2]=0;a=k+B(b,12)|0;e=h+B(H,12)|0;F=z[e+8>>2];q=z[e>>2];P=z[e+4>>2];m=C(C(z[a+8>>2]*F)+C(C(z[a>>2]*q)+C(z[a+4>>2]*P)));while(1){a=b;M=b&255;b=G+(M<<2)|0;O=x[b>>1];if(O){I=x[b+2>>1];s=0;b=a;while(1){e=w[N+(s+I|0)|0];i=k+B(e,12)|0;r=C(C(z[i+8>>2]*F)+C(C(z[i>>2]*q)+C(P*z[i+4>>2])));H:{if(!(r>>3&28)|0;Q=v[i>>2];R=1<>2]=Q|R;m=r;b=e}s=s+1|0;if((O|0)!=(s|0)){continue}break}if((M|0)!=(b&255)){continue}}break}t[L|0]=a;L=(h+144|0)+H|0;b=w[L|0];v[h+200>>2]=0;v[h+204>>2]=0;v[h+192>>2]=0;v[h+196>>2]=0;v[h+184>>2]=0;v[h+188>>2]=0;v[h+176>>2]=0;v[h+180>>2]=0;a=k+B(b,12)|0;m=C(-C(C(z[a+8>>2]*F)+C(C(z[a>>2]*q)+C(P*z[a+4>>2]))));while(1){a=b;M=b&255;b=G+(M<<2)|0;O=x[b>>1];if(O){I=x[b+2>>1];s=0;b=a;while(1){e=w[N+(s+I|0)|0];i=k+B(e,12)|0;r=C(-C(C(z[i+8>>2]*F)+C(C(z[i>>2]*q)+C(P*z[i+4>>2]))));I:{if(!(r>>3&28)|0;Q=v[i>>2];R=1<>2]=Q|R;m=r;b=e}s=s+1|0;if((O|0)!=(s|0)){continue}break}if((M|0)!=(b&255)){continue}}break}t[L|0]=a;H=H+1|0;if((H|0)!=12){continue}break}a=(l<<4)+g|0;t[a+v[E+4>>2]|0]=w[h+160|0];b=v[c+4>>2];t[v[b+4>>2]+(a+x[b+2>>1]|0)|0]=w[h+144|0];b=l+S|0;t[b+v[v[c+4>>2]+4>>2]|0]=w[h+166|0];e=v[c+4>>2];t[v[e+4>>2]+(b+x[e+2>>1]|0)|0]=w[h+150|0];e=a+256|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+161|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+145|0];e=b+256|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+167|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+151|0];e=a+512|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+162|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+146|0];e=b+512|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+168|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+152|0];e=a+768|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+163|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+147|0];e=b+768|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+169|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+153|0];e=a+1024|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+164|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+148|0];e=b+1024|0;t[e+v[v[c+4>>2]+4>>2]|0]=w[h+170|0];k=v[c+4>>2];t[v[k+4>>2]+(e+x[k+2>>1]|0)|0]=w[h+154|0];a=a+1280|0;t[a+v[v[c+4>>2]+4>>2]|0]=w[h+165|0];e=v[c+4>>2];t[v[e+4>>2]+(a+x[e+2>>1]|0)|0]=w[h+149|0];a=b+1280|0;t[a+v[v[c+4>>2]+4>>2]|0]=w[h+171|0];b=v[c+4>>2];t[v[b+4>>2]+(a+x[b+2>>1]|0)|0]=w[h+155|0];l=l+1|0;if((l|0)!=16){continue}break}g=g+1|0;if((g|0)!=16){continue}break}xa=h+208|0;xa=n+16|0}if(!d){b=0;a=xa-16|0;v[f+92>>2]=2139095039;e=v[f+4>>2];c=w[f+83|0];J:{if(!c){m=C(34028234663852886e22);break J}r=z[f+76>>2];F=z[f+72>>2];q=z[f+68>>2];m=C(34028234663852886e22);while(1){d=e+B(b,20)|0;o=C(D(C(C(C(r*z[d+8>>2])+C(C(q*z[d>>2])+C(F*z[d+4>>2])))+z[d+12>>2])));if(o>2]=o;m=o}b=b+1|0;if((c|0)!=(b|0)){continue}break}}o=z[f+56>>2];r=z[f+60>>2];F=z[f+48>>2];q=z[f+44>>2];P=z[f+52>>2];T=z[f- -64>>2];P=C(C(P+T)-C(P-T));z[a+8>>2]=P;r=C(C(F+r)-C(F-r));z[a+4>>2]=r;o=C(C(q+o)-C(q-o));z[a>>2]=o;b=oz[(a|b<<2)>>2]?2:b;d=((h>>>1|0)+h|0)+1|0;b=d&3;d=((b>>>1|0)+d|0)+1&3;o=z[a+(d<<2)>>2];r=z[a+(b<<2)>>2];v[f+104>>2]=2139095039;g=f+96|0;v[g>>2]=2139095039;v[g+4>>2]=2139095039;a=o>r;l=a?b:d;k=a?d:b;if(c){m=C(m/C(1.7320507764816284));s=h<<2;n=s+f|0;P=z[f+76>>2];T=z[f+72>>2];W=z[f+68>>2];b=0;while(1){a=e+B(b,20)|0;o=z[a+s>>2];K:{if(o>C(-1.0000000116860974e-7)&o>2]);q=C(m*z[a+(k<<2)>>2]);J=C(C(-z[a+12>>2])-C(C(z[a+8>>2]*P)+C(C(z[a>>2]*W)+C(T*z[a+4>>2]))));$=C(q+J);F=C(D(C(o*C(r+$))));F=m>2];a=Jq;q=d?q:J;E=q>F;F=E?F:q;o=C(D(C(o*C($-r))));o=m>2]=o>2];J=z[a+(l<<2)>>2];o=C(q-J);r=C(z[n+96>>2]*z[a+(h<<2)>>2]);F=C(C(-z[a+12>>2])-C(C(z[a+8>>2]*P)+C(C(z[a>>2]*W)+C(T*z[a+4>>2]))));q=C(q+J);L:{if(q>C(-1.0000000116860974e-7)&q>2];a=J<$;J=a?J:$;q=C(D(C(C(F+r)/q)));q=mq)){break L}z[d+96>>2]=qC(-1.0000000116860974e-7)){break M}q=C(D(C(C(F-r)/o)));q=m>2];a=qo)){break M}z[d+96>>2]=o>2]=z[g+(k<<2)>>2]}b=1}xa=X+32|0;return b}function Jm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;v[a>>2]=121880;b=v[a+476>>2];if(b){Ba[v[v[b>>2]+16>>2]](b)}b=v[a+3932>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+3920>>2]){d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+3640|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];a:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;b:{if(!g){break b}c=g<<2;if(!c){break b}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?41231:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];c:{if(v[d+24>>2]<0){break c}c=v[d+16>>2];if(!c){break c}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break a}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;an(c,e,b);an(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];d:{if(!g){break d}c=v[f>>2];j=g-1&268435455;if(g&1){e:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break e}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+400|0}else{b=c}if(!j){break d}g=c+B(g,400)|0;while(1){f:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break f}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+400|0;g:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break g}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+800|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[d+16>>2];if(!b){break h}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+3904>>2];c=v[a+3908>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+3904>>2]}c=v[a+3912>>2];i:{if((c|0)<0|!(c&2147483647)){break i}if((a+3644|0)==(b|0)){t[a+3900|0]=0;break i}if(!b){break i}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+3636>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+3624>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+3344|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];j:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;k:{if(!g){break k}c=g<<2;if(!c){break k}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?27763:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];l:{if(v[d+24>>2]<0){break l}c=v[d+16>>2];if(!c){break l}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break j}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;bn(c,e,b);bn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];m:{if(!g){break m}c=v[f>>2];j=g-1&268435455;if(g&1){n:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break n}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+400|0}else{b=c}if(!j){break m}g=c+B(g,400)|0;while(1){o:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break o}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+400|0;p:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break p}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+800|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=v[d+16>>2];if(!b){break q}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+3608>>2];c=v[a+3612>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+3608>>2]}c=v[a+3616>>2];r:{if((c|0)<0|!(c&2147483647)){break r}if((a+3348|0)==(b|0)){t[a+3604|0]=0;break r}if(!b){break r}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+3340>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+3328>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+3048|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];s:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;t:{if(!g){break t}c=g<<2;if(!c){break t}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?39419:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];u:{if(v[d+24>>2]<0){break u}c=v[d+16>>2];if(!c){break u}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break s}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;cn(c,e,b);cn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];v:{if(!g){break v}c=v[f>>2];j=g-1&33554431;if(g&1){w:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break w}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+384|0}else{b=c}if(!j){break v}g=c+B(g,384)|0;while(1){x:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break x}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+384|0;y:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break y}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+768|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];z:{if((b|0)<0|!(b&2147483647)){break z}b=v[d+16>>2];if(!b){break z}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+3312>>2];c=v[a+3316>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+3312>>2]}c=v[a+3320>>2];A:{if((c|0)<0|!(c&2147483647)){break A}if((a+3052|0)==(b|0)){t[a+3308|0]=0;break A}if(!b){break A}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+3044>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+3032>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+2752|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];B:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;C:{if(!g){break C}c=g<<2;if(!c){break C}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?41391:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];D:{if(v[d+24>>2]<0){break D}c=v[d+16>>2];if(!c){break D}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break B}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;dn(c,e,b);dn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];E:{if(!g){break E}c=v[f>>2];j=g-1&1073741823;if(g&1){F:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break F}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+132|0}else{b=c}if(!j){break E}g=c+B(g,132)|0;while(1){G:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break G}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+132|0;H:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break H}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+264|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];I:{if((b|0)<0|!(b&2147483647)){break I}b=v[d+16>>2];if(!b){break I}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+3016>>2];c=v[a+3020>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+3016>>2]}c=v[a+3024>>2];J:{if((c|0)<0|!(c&2147483647)){break J}if((a+2756|0)==(b|0)){t[a+3012|0]=0;break J}if(!b){break J}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+2748>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+2736>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+2456|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];K:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;L:{if(!g){break L}c=g<<2;if(!c){break L}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?36971:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];M:{if(v[d+24>>2]<0){break M}c=v[d+16>>2];if(!c){break M}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break K}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;en(c,e,b);en(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];N:{if(!g){break N}c=v[f>>2];j=g-1&536870911;if(g&1){O:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break O}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+120|0}else{b=c}if(!j){break N}g=c+B(g,120)|0;while(1){P:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break P}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+120|0;Q:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Q}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+240|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];R:{if((b|0)<0|!(b&2147483647)){break R}b=v[d+16>>2];if(!b){break R}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+2720>>2];c=v[a+2724>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+2720>>2]}c=v[a+2728>>2];S:{if((c|0)<0|!(c&2147483647)){break S}if((a+2460|0)==(b|0)){t[a+2716|0]=0;break S}if(!b){break S}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+2452>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+2440>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+2160|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];T:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;U:{if(!g){break U}c=g<<2;if(!c){break U}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?39311:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];V:{if(v[d+24>>2]<0){break V}c=v[d+16>>2];if(!c){break V}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break T}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;fn(c,e,b);fn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];W:{if(!g){break W}c=v[f>>2];j=g-1&67108863;if(g&1){X:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break X}Ba[v[v[c>>2]+12>>2]](c)|0}b=c- -64|0}else{b=c}if(!j){break W}g=c+(g<<6)|0;while(1){Y:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break Y}Ba[v[v[b>>2]+12>>2]](b)|0}c=b- -64|0;Z:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Z}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+128|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];_:{if((b|0)<0|!(b&2147483647)){break _}b=v[d+16>>2];if(!b){break _}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+2424>>2];c=v[a+2428>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+2424>>2]}c=v[a+2432>>2];$:{if((c|0)<0|!(c&2147483647)){break $}if((a+2164|0)==(b|0)){t[a+2420|0]=0;break $}if(!b){break $}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+2156>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+2144>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+1864|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];aa:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;ba:{if(!g){break ba}c=g<<2;if(!c){break ba}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?28767:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];ca:{if(v[d+24>>2]<0){break ca}c=v[d+16>>2];if(!c){break ca}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break aa}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;gn(c,e,b);gn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];da:{if(!g){break da}c=v[f>>2];j=g-1&1073741823;if(g&1){ea:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break ea}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+124|0}else{b=c}if(!j){break da}g=c+B(g,124)|0;while(1){fa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break fa}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+124|0;ga:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break ga}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+248|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];ha:{if((b|0)<0|!(b&2147483647)){break ha}b=v[d+16>>2];if(!b){break ha}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+2128>>2];c=v[a+2132>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+2128>>2]}c=v[a+2136>>2];ia:{if((c|0)<0|!(c&2147483647)){break ia}if((a+1868|0)==(b|0)){t[a+2124|0]=0;break ia}if(!b){break ia}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+1860>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+1848>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+1568|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];ja:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;ka:{if(!g){break ka}c=g<<2;if(!c){break ka}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?41541:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];la:{if(v[d+24>>2]<0){break la}c=v[d+16>>2];if(!c){break la}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break ja}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;hn(c,e,b);hn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];ma:{if(!g){break ma}c=v[f>>2];j=g-1&1073741823;if(g&1){na:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break na}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+44|0}else{b=c}if(!j){break ma}g=c+B(g,44)|0;while(1){oa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break oa}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+44|0;pa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break pa}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+88|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];qa:{if((b|0)<0|!(b&2147483647)){break qa}b=v[d+16>>2];if(!b){break qa}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+1832>>2];c=v[a+1836>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+1832>>2]}c=v[a+1840>>2];ra:{if((c|0)<0|!(c&2147483647)){break ra}if((a+1572|0)==(b|0)){t[a+1828|0]=0;break ra}if(!b){break ra}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+1564>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+1552>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+1272|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];sa:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;ta:{if(!g){break ta}c=g<<2;if(!c){break ta}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?42245:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];ua:{if(v[d+24>>2]<0){break ua}c=v[d+16>>2];if(!c){break ua}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break sa}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;jn(c,e,b);jn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];va:{if(!g){break va}c=v[f>>2];j=g-1&268435455;if(g&1){wa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break wa}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+208|0}else{b=c}if(!j){break va}g=c+B(g,208)|0;while(1){xa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break xa}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+208|0;ya:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break ya}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+416|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];za:{if((b|0)<0|!(b&2147483647)){break za}b=v[d+16>>2];if(!b){break za}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+1536>>2];c=v[a+1540>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+1536>>2]}c=v[a+1544>>2];Aa:{if((c|0)<0|!(c&2147483647)){break Aa}if((a+1276|0)==(b|0)){t[a+1532|0]=0;break Aa}if(!b){break Aa}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+1268>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+1256>>2]){e=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;h=a+976|0;b=v[h+288>>2];if(b){while(1){v[d+8>>2]=b;c=v[d+20>>2];Ba:{if(c>>>0>=(v[d+24>>2]&2147483647)>>>0){b=0;c=v[d+24>>2];g=c&2147483647?c<<1:1;Ca:{if(!g){break Ca}c=g<<2;if(!c){break Ca}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?45917:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d+20>>2];i=(e<<2)+b|0;if((e|0)>0){f=v[d+16>>2];c=b;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}v[i>>2]=v[d+8>>2];Da:{if(v[d+24>>2]<0){break Da}c=v[d+16>>2];if(!c){break Da}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[d+20>>2]}v[d+24>>2]=g;v[d+16>>2]=b;v[d+20>>2]=e+1;break Ba}v[v[d+16>>2]+(c<<2)>>2]=b;v[d+20>>2]=c+1}b=v[v[h+288>>2]>>2];v[h+288>>2]=b;if(b){continue}break}e=v[d+20>>2];c=v[d+16>>2]}else{c=0}b=d+8|0;kn(c,e,b);kn(v[h+264>>2],v[h+268>>2],b);b=v[h+268>>2];if(b){f=v[h+264>>2];i=f+(b<<2)|0;e=v[d+16>>2];while(1){g=v[h+276>>2];Ea:{if(!g){break Ea}c=v[f>>2];j=g-1&268435455;if(g&1){Fa:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Fa}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+112|0}else{b=c}if(!j){break Ea}g=c+B(g,112)|0;while(1){Ga:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break Ga}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+112|0;Ha:{if(!((v[d+16>>2]+(v[d+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Ha}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+224|0;if((g|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=v[d+24>>2];Ia:{if((b|0)<0|!(b&2147483647)){break Ia}b=v[d+16>>2];if(!b){break Ia}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=d+32|0}b=v[a+1240>>2];c=v[a+1244>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+1240>>2]}c=v[a+1248>>2];Ja:{if((c|0)<0|!(c&2147483647)){break Ja}if((a+980|0)==(b|0)){t[a+1236|0]=0;break Ja}if(!b){break Ja}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+972>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+960>>2]){e=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;b=v[a+968>>2];if(b){while(1){v[f+8>>2]=b;c=v[f+20>>2];Ka:{if(c>>>0>=(v[f+24>>2]&2147483647)>>>0){b=0;c=v[f+24>>2];h=c&2147483647?c<<1:1;La:{if(!h){break La}c=h<<2;if(!c){break La}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?46031:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[f+20>>2];g=(e<<2)+b|0;if((e|0)>0){d=v[f+16>>2];c=b;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}v[g>>2]=v[f+8>>2];Ma:{if(v[f+24>>2]<0){break Ma}c=v[f+16>>2];if(!c){break Ma}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=b;v[f+20>>2]=e+1;break Ka}v[v[f+16>>2]+(c<<2)>>2]=b;v[f+20>>2]=c+1}b=v[v[a+968>>2]>>2];v[a+968>>2]=b;if(b){continue}break}e=v[f+20>>2];c=v[f+16>>2]}else{c=0}b=f+8|0;ln(c,e,b);ln(v[a+944>>2],v[a+948>>2],b);b=v[a+948>>2];if(b){d=v[a+944>>2];g=d+(b<<2)|0;e=v[f+16>>2];while(1){h=v[a+956>>2];Na:{if(!h){break Na}c=v[d>>2];i=h-1&67108863;if(h&1){Oa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Oa}Ba[v[v[c>>2]+12>>2]](c)|0}b=c+320|0}else{b=c}if(!i){break Na}h=c+B(h,320)|0;while(1){Pa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|v[e>>2]!=(b|0))){e=e+4|0;break Pa}Ba[v[v[b>>2]+12>>2]](b)|0}c=b+320|0;Qa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(e|0)|(c|0)!=v[e>>2])){e=e+4|0;break Qa}Ba[v[v[c>>2]+12>>2]](c)|0}b=b+640|0;if((h|0)!=(b|0)){continue}break}}d=d+4|0;if((g|0)!=(d|0)){continue}break}}b=v[f+24>>2];Ra:{if((b|0)<0|!(b&2147483647)){break Ra}b=v[f+16>>2];if(!b){break Ra}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=f+32|0}b=v[a+944>>2];c=v[a+948>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+944>>2]}c=v[a+952>>2];Sa:{if((c|0)<0|!(c&2147483647)){break Sa}if((a+684|0)==(b|0)){t[a+940|0]=0;break Sa}if(!b){break Sa}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+640>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+600>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+560>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+520>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+480>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+472>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(v[a+460>>2]){c=0;f=xa-32|0;xa=f;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;b=v[a+468>>2];if(b){while(1){v[f+8>>2]=b;c=v[f+20>>2];Ta:{if(c>>>0>=(v[f+24>>2]&2147483647)>>>0){b=0;c=v[f+24>>2];h=c&2147483647?c<<1:1;Ua:{if(!h){break Ua}c=h<<2;if(!c){break Ua}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?25589:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[f+20>>2];g=(e<<2)+b|0;if((e|0)>0){d=v[f+16>>2];c=b;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}v[g>>2]=v[f+8>>2];Va:{if(v[f+24>>2]<0){break Va}c=v[f+16>>2];if(!c){break Va}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[f+20>>2]}v[f+24>>2]=h;v[f+16>>2]=b;v[f+20>>2]=e+1;break Ta}v[v[f+16>>2]+(c<<2)>>2]=b;v[f+20>>2]=c+1}b=v[v[a+468>>2]>>2];v[a+468>>2]=b;if(b){continue}break}c=v[f+20>>2];j=v[f+16>>2]}else{j=0}b=f+8|0;mn(j,c,b);mn(v[a+444>>2],v[a+448>>2],b);b=v[a+448>>2];if(b){e=v[a+444>>2];h=e+(b<<2)|0;c=v[f+16>>2];while(1){d=v[a+456>>2];if(d){b=v[e>>2];g=b+B(d,48)|0;while(1){Wa:{if(!((v[f+16>>2]+(v[f+20>>2]<<2)|0)==(c|0)|v[c>>2]!=(b|0))){c=c+4|0;break Wa}d=v[b+44>>2];if((d|0)<0|!(d&2147483647)){break Wa}d=v[b+36>>2];if((d|0)==(b|0)){t[b+32|0]=0;break Wa}if(!d){break Wa}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,d)}b=b+48|0;if((g|0)!=(b|0)){continue}break}}e=e+4|0;if((h|0)!=(e|0)){continue}break}}b=v[f+24>>2];Xa:{if((b|0)<0|!(b&2147483647)){break Xa}b=v[f+16>>2];if(!b){break Xa}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=f+32|0}b=v[a+444>>2];c=v[a+448>>2];if(c){c=(c<<2)+b|0;while(1){e=v[b>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=v[a+444>>2]}c=v[a+452>>2];Ya:{if((c|0)<0|!(c&2147483647)){break Ya}if((a+184|0)==(b|0)){t[a+440|0]=0;return mV(a)|0}if(!b){break Ya}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return mV(a)|0}function mB(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=0,s=C(0),y=C(0),A=C(0),E=C(0),F=C(0),H=C(0),I=0,J=C(0),L=0,M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=0,S=0,T=0,U=0,V=C(0),W=0,X=0,Y=0,Z=C(0),_=C(0),$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=0,ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=0,qa=0,ra=0,sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=0,za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=0,Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=0,Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=0,ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=0,hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=0,Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=0,Tb=0;W=xa-32|0;xa=W;v[c+4112>>2]=0;v[W+28>>2]=1065353216;v[W+24>>2]=1065353216;v[W+20>>2]=1065353216;v[W+16>>2]=1065353216;a:{if(v[a+100>>2]!=8){k=C(0);if(w[v[a+20>>2]+62|0]){break a}}k=z[a+4>>2]}z[a+4>>2]=k;b:{if(v[a+104>>2]!=8){k=C(0);if(w[v[a+24>>2]+62|0]){break b}}k=z[a+12>>2]}z[a+12>>2]=k;t[W+15|0]=0;t[W+14|0]=0;j=c+16|0;Sb=a,Tb=uy(j,b,W+15|0,W+14|0,W+28|0,W+24|0,W+20|0,W+16|0,z[a+160>>2]),v[Sb+116>>2]=Tb;v[a+112>>2]=j;t[a+121|0]=w[a+121|0]|t[W+14|0]&1;t[a+120|0]=w[W+15|0];z[a>>2]=z[W+28>>2]*z[a>>2];z[a+8>>2]=z[W+24>>2]*z[a+8>>2];z[a+4>>2]=z[W+20>>2]*z[a+4>>2];z[a+12>>2]=z[W+16>>2]*z[a+12>>2];O=xa-32|0;xa=O;L=c+4128|0;b=L;v[b+7684>>2]=0;v[b+7688>>2]=0;ha=w[a+121|0];R=w[a+122|0];c=v[a+100>>2];U=v[a+104>>2];j=v[a+16>>2];u[j+22>>1]=0;b=v[a+116>>2];c:{if(!b){t[a+136|0]=0;v[a+132>>2]=0;v[j+24>>2]=0;break c}if(!ha){vy(L,v[a+132>>2],w[a+136|0],a+44|0,a+72|0,h);b=v[a+116>>2]}aa=(c|U)&8;aA(L,v[a+112>>2],b);S=a+44|0;T=a+72|0;bA(L,v[a+112>>2],S,T,0,0);cA(L,v[a+112>>2],S,T,h,0,C(z[a+124>>2]+g));Y=v[L+7688>>2];d:{if(!Y){i=0;break d}pa=aa?7:6;ra=aa?112:48;g=z[a+164>>2];h=z[a+168>>2];g=g>h?g:h;b=0;while(1){c=L+(b<<2)|0;qa=v[c+7424>>2]!=65535;c=v[c+7296>>2];e:{if(!c){break e}I=((B(c,ra)+I|0)+((c<<2)+12&-16)|0)+80|0;c=L+B(b,104)|0;if(t[c+2817|0]&1){break e}c=x[c+2818>>1];I=((c<<1|(c|0)==1&g>C(0))<>2]>>2]](i,ra+16|0)|0;b=(b|0)==-1?0:b}I=B(p,104)+15&-16;c=!ra|(b|0)!=0;if(!(!I|!c)){i=Ba[v[v[i>>2]+4>>2]](i,I)|0;pa=(i|0)==-1?0:i}if(!c){t[a+136|0]=0;v[a+132>>2]=0;u[j+22>>1]=0;v[j+24>>2]=0;break c}t[a+136|0]=0;v[a+132>>2]=0;u[j+22>>1]=0;v[j+24>>2]=0;i=ra?b:0;if(!I){break d}if(!pa){break c}}v[a+132>>2]=pa;v[j+24>>2]=i;t[a+136|0]=p;u[j+22>>1]=ra>>>4;b=v[a+140>>2];v[j+28>>2]=b;p=0;u[j+20>>1]=b?x[a+116>>1]:0;f:{if(!pa){break f}I=v[L+7688>>2];if(!I){break f}b=pa;while(1){if(v[(L+(p<<2)|0)+7296>>2]){c=L+B(p,104)|0;t[b|0]=w[c+2816|0];t[b+1|0]=w[c+2817|0];u[b+2>>1]=x[c+2818>>1];z[b+16>>2]=z[c+2832>>2];z[b+20>>2]=z[c+2836>>2];z[b+24>>2]=z[c+2840>>2];z[b+28>>2]=z[c+2844>>2];z[b+32>>2]=z[c+2848>>2];z[b+36>>2]=z[c+2852>>2];z[b+40>>2]=z[c+2856>>2];z[b+44>>2]=z[c+2860>>2];z[b+48>>2]=z[c+2864>>2];z[b+52>>2]=z[c+2868>>2];z[b+56>>2]=z[c+2872>>2];z[b+60>>2]=z[c+2876>>2];z[b+64>>2]=z[c+2880>>2];z[b+68>>2]=z[c+2884>>2];z[b+72>>2]=z[c+2888>>2];z[b+76>>2]=z[c+2892>>2];z[b+80>>2]=z[c+2896>>2];z[b+84>>2]=z[c+2900>>2];z[b+88>>2]=z[c+2904>>2];z[b+92>>2]=z[c+2908>>2];z[b+96>>2]=z[c+2912>>2];z[b+100>>2]=z[c+2916>>2];z[b+4>>2]=z[c+2820>>2];z[b+8>>2]=z[c+2824>>2];z[b+12>>2]=z[c+2828>>2];b=b+104|0}p=p+1|0;if((I|0)!=(p|0)){continue}break}}if(!i){break c}g:{if(aa){b=v[a+20>>2];c=v[a+28>>2];p=v[a+36>>2];u[O+28>>1]=x[j+8>>1];v[O+24>>2]=p;v[O+20>>2]=c;v[O+16>>2]=b;b=v[a+24>>2];c=v[a+32>>2];p=v[a+40>>2];u[O+12>>1]=x[j+10>>1];v[O+8>>2]=p;v[O+4>>2]=c;v[O>>2]=b;U=v[a+112>>2];c=i;sa=z[a>>2];ta=z[a+4>>2];ua=z[a+8>>2];va=z[a+12>>2];Pa=z[a+124>>2];Ea=z[a+164>>2];wa=z[a+168>>2];I=0;ha=0;j=xa-272|0;xa=j;p=O+16|0;b=x[p+12>>1];if((b|0)==65535){Fa=w[v[p>>2]+62|0]!=0}a=x[O+12>>1];ya=(a|0)==65535?w[v[O>>2]+62|0]!=0:ya;s=d;q=e;y=f;h:{if((b|0)==65535){e=z[v[p+8>>2]+28>>2];break h}a=v[p>>2];e=C(Ba[v[v[a>>2]+124>>2]](a,b));a=x[O+12>>1]}a=a&65535;if((a|0)==65535){d=z[v[O+8>>2]+28>>2]}else{b=v[O>>2];d=C(Ba[v[v[b>>2]+124>>2]](b,a))}a=x[p+12>>1];i:{if((a|0)==65535){a=v[p+8>>2];f=z[a+24>>2];g=z[a+8>>2];b=v[a>>2];r=v[a+4>>2];X=v[a+20>>2];a=v[a+16>>2];v[j+124>>2]=0;z[j+120>>2]=f;v[j+108>>2]=0;v[j+112>>2]=a;v[j+116>>2]=X;v[j+96>>2]=b;v[j+100>>2]=r;z[j+104>>2]=g;break i}b=v[p>>2];Ba[v[v[b>>2]+116>>2]](j+96|0,b,a)}a=x[O+12>>1];j:{if((a|0)==65535){a=v[O+8>>2];f=z[a+24>>2];g=z[a+8>>2];b=v[a>>2];r=v[a+4>>2];X=v[a+20>>2];a=v[a+16>>2];v[j+92>>2]=0;z[j+88>>2]=f;v[j+76>>2]=0;v[j+80>>2]=a;v[j+84>>2]=X;v[j+64>>2]=b;v[j+68>>2]=r;z[j+72>>2]=g;break j}b=v[O>>2];Ba[v[v[b>>2]+116>>2]](j- -64|0,b,a)}z[j+48>>2]=sa;z[j+32>>2]=ua;z[j+16>>2]=ta;z[j>>2]=va;b=v[L+7688>>2];if(b){gb=Ea>C(0)|wa>C(0);Ga=d>2];Ia=z[T+20>>2];Ja=z[S+24>>2];Ka=z[S+20>>2];La=z[T+16>>2];Ma=z[S+16>>2];za=C(s*C(.800000011920929));Qa=C(-za);while(1){a=L+(I<<2)|0;Y=v[a+7296>>2];if(Y){e=C(1);aa=a+7424|0;a=U+(x[L+B(v[aa>>2],44)>>1]<<6)|0;r=w[a+48|0];e=r&4?C(C(1)/C(x[(L+B(I,104)|0)+2818>>1])):e;ca=z[a+60>>2];d=z[a+44>>2];f=z[a+56>>2];t[c+2|0]=Y;b=0;R=r&1;b=R?b:w[(L+B(I,104)|0)+2818|0]<<1;a=c+80|0;z[c+16>>2]=e*d;u[c>>1]=3;t[c+3|0]=b;z[c+8>>2]=va;z[c+4>>2]=ta;z[c+28>>2]=ua;z[c+24>>2]=sa;z[c+20>>2]=e*f;b=v[aa>>2];r=U+(x[L+B(b,44)>>1]<<6)|0;k=z[r>>2];l=z[r+4>>2];o=z[r+8>>2];z[c+44>>2]=Ga;z[c+40>>2]=o;z[c+36>>2]=l;z[c+32>>2]=k;e=C(0);k:{if((b|0)==65535){ja=C(0);break k}ga=C(-l);_=C(-o);ka=C(-k);ja=C(0);while(1){qa=L+B(b,44)|0;$a=w[qa+5|0];if($a){Na=U+(x[qa>>1]<<6)|0;X=0;b=a;while(1){r=Na+(X<<6)|0;d=z[r+16>>2];f=C(d-La);g=z[r+20>>2];m=C(g-Ia);Z=C(C(f*l)-C(k*m));h=z[r+24>>2];n=C(h-Ha);da=C(C(n*k)-C(o*f));g=C(g-Ka);f=C(h-Ja);M=C(C(g*o)-C(l*f));A=M;d=C(d-Ma);N=C(C(f*k)-C(o*d));f=N;V=C(C(d*l)-C(k*g));F=V;if(x[p+12>>1]==65535){a=v[p+4>>2];F=C(C(z[a+60>>2]*V)+C(C(z[a+36>>2]*M)+C(N*z[a+48>>2])));A=C(C(z[a+52>>2]*V)+C(C(z[a+28>>2]*M)+C(N*z[a+40>>2])));f=C(C(z[a+56>>2]*V)+C(C(z[a+32>>2]*M)+C(N*z[a+44>>2])))}ea=z[r+12>>2];v[j+204>>2]=0;z[j+200>>2]=F;z[j+196>>2]=f;z[j+192>>2]=A;v[j+188>>2]=0;z[j+184>>2]=o;z[j+180>>2]=l;z[j+176>>2]=k;g=C(-Z);h=C(-da);H=C(C(m*o)-C(l*n));n=C(-H);l:{if(x[O+12>>1]!=65535){m=h;d=g;break l}a=v[O+4>>2];d=C(C(z[a+60>>2]*g)+C(C(z[a+36>>2]*n)+C(z[a+48>>2]*h)));m=C(C(z[a+56>>2]*g)+C(C(z[a+32>>2]*n)+C(z[a+44>>2]*h)));n=C(C(z[a+52>>2]*g)+C(C(z[a+28>>2]*n)+C(z[a+40>>2]*h)))}v[j+172>>2]=0;v[j+156>>2]=0;z[j+152>>2]=_;z[j+148>>2]=ga;z[j+144>>2]=ka;z[j+160>>2]=n;z[j+164>>2]=m;z[j+168>>2]=d;lB(j+128|0,p,j+176|0,j+240|0,j+48|0,j+16|0,O,j+144|0,j+208|0,j+32|0,j);P=z[r+40>>2];Q=z[r+36>>2];E=z[r+32>>2];h=z[j+104>>2];J=z[j+120>>2];Oa=z[j+72>>2];la=z[j+88>>2];ia=z[j+96>>2];Aa=z[j+112>>2];Ra=z[j+64>>2];Sa=z[j+80>>2];Ta=z[j+100>>2];Ua=z[j+116>>2];Za=z[j+68>>2];_a=z[j+84>>2];g=z[j+128>>2];z[b+36>>2]=Qa;z[b+24>>2]=-d;z[b+20>>2]=-m;z[b+16>>2]=-n;d=C(ea-Pa);z[b+12>>2]=d;z[b+8>>2]=F;z[b+4>>2]=f;z[b>>2]=A;f=g>C(1.1920928955078125e-7)?C(C(1)/C(g+C(9999999747378752e-20))):C(0);z[b+28>>2]=f;m=C(C(k*ia)+C(M*Aa));n=C(C(k*Ra)+C(H*Sa));A=C(C(l*Ta)+C(N*Ua));F=C(C(l*Za)+C(da*_a));M=C(C(o*h)+C(V*J));N=C(C(o*Oa)+C(Z*la));g=C(C(C(m-n)+C(A-F))+C(M-N));h=C(-g);h=C((ya?C(C(n+F)+N):C(-0))+C(C(C(C(P*o)+C(C(E*k)+C(l*Q)))+(ca>C(0)?gC(d*q)?C(ca*h):C(0):C(0):C(0)))-(Fa?C(C(m+A)+M):C(0))));z[b+32>>2]=h;a=v[j+244>>2];v[b+48>>2]=v[j+240>>2];v[b+52>>2]=a;a=v[j+252>>2];v[b+56>>2]=v[j+248>>2];v[b+60>>2]=a;a=v[j+260>>2];v[b+80>>2]=v[j+256>>2];v[b+84>>2]=a;a=v[j+268>>2];v[b+88>>2]=v[j+264>>2];v[b+92>>2]=a;a=v[j+212>>2];v[b+64>>2]=v[j+208>>2];v[b+68>>2]=a;a=v[j+220>>2];v[b+72>>2]=v[j+216>>2];v[b+76>>2]=a;a=v[j+228>>2];v[b+96>>2]=v[j+224>>2];v[b+100>>2]=a;a=v[j+236>>2];v[b+104>>2]=v[j+232>>2];v[b+108>>2]=a;d=C(C(f*C(h-C(za*d)))-C(g*f));e=C(e+(d>C(0)?d:C(0)));d=z[r+12>>2];ja=d>ja?ja:d;a=b+112|0;b=a;X=X+1|0;if(($a|0)!=(X|0)){continue}break}}b=x[qa+2>>1];if((b|0)!=65535){continue}break}}z[c+52>>2]=e/C(Y>>>0);b=a;a=Y<<2;b=J9(b,0,a);v[c+56>>2]=0;a=b+(a+12&-16)|0;m:{if(R){break m}d=z[j+72>>2];e=z[j+104>>2];f=z[j+64>>2];g=z[j+96>>2];h=z[j+68>>2];m=z[j+100>>2];v[c+60>>2]=B(ha,104)+pa;X=L+B(I,104)|0;Y=X+2818|0;if(!x[Y>>1]){break m}ka=R?C(0):s;e=C(e-d);f=C(g-f);g=C(m-h);d=C(C(o*e)+C(C(k*f)+C(l*g)));e=C(e-C(o*d));f=C(f-C(k*d));d=C(g-C(l*d));b=C(C(e*e)+C(C(f*f)+C(d*d)))>C(9999999747378752e-20);r=C(D(k))>2];a=X+B(r,12)|0;d=z[a+2888>>2];f=C(d+d);g=z[T>>2];d=z[a+2880>>2];h=C(d+d);d=z[a+2884>>2];m=C(d+d);k=z[T+4>>2];l=C(C(e*f)+C(C(g*h)+C(m*k)));d=z[T+12>>2];Z=C(C(d*d)+C(-.5));V=C(C(g*l)+C(C(h*Z)+C(d*C(C(k*f)-C(m*e)))));ca=C(C(k*l)+C(C(m*Z)+C(d*C(C(e*h)-C(f*g)))));la=C(C(V*n)-C(A*ca));Z=C(C(e*l)+C(C(f*Z)+C(d*C(C(g*m)-C(h*k)))));ia=C(C(Z*A)-C(F*V));Aa=C(C(ca*F)-C(n*Z));f=z[S+8>>2];d=z[a+2864>>2];g=C(d+d);h=z[S>>2];d=z[a+2856>>2];m=C(d+d);d=z[a+2860>>2];k=C(d+d);l=z[S+4>>2];_=C(C(f*g)+C(C(h*m)+C(k*l)));e=z[S+12>>2];ea=C(C(e*e)+C(-.5));da=C(C(h*_)+C(C(m*ea)+C(e*C(C(l*g)-C(k*f)))));ga=C(C(l*_)+C(C(k*ea)+C(e*C(C(f*m)-C(g*h)))));d=C(C(da*n)-C(A*ga));_=C(C(f*_)+C(C(g*ea)+C(e*C(C(h*k)-C(m*l)))));f=C(C(_*A)-C(F*da));l=C(C(ga*F)-C(n*_));n:{if(x[p+12>>1]!=65535){h=f;e=d;break n}a=v[p+4>>2];e=C(C(z[a+60>>2]*d)+C(C(z[a+36>>2]*l)+C(f*z[a+48>>2])));h=C(C(z[a+56>>2]*d)+C(C(z[a+32>>2]*l)+C(f*z[a+44>>2])));l=C(C(z[a+52>>2]*d)+C(C(z[a+28>>2]*l)+C(f*z[a+40>>2])))}v[j+204>>2]=0;z[j+200>>2]=e;z[j+196>>2]=h;z[j+192>>2]=l;v[j+188>>2]=0;z[j+184>>2]=F;z[j+180>>2]=n;z[j+176>>2]=A;f=C(-la);k=C(-ia);m=C(-Aa);o:{if(x[O+12>>1]!=65535){d=k;g=f;break o}a=v[O+4>>2];g=C(C(z[a+60>>2]*f)+C(C(z[a+36>>2]*m)+C(z[a+48>>2]*k)));d=C(C(z[a+56>>2]*f)+C(C(z[a+32>>2]*m)+C(z[a+44>>2]*k)));m=C(C(z[a+52>>2]*f)+C(C(z[a+28>>2]*m)+C(z[a+40>>2]*k)))}v[j+172>>2]=0;z[j+168>>2]=g;z[j+164>>2]=d;z[j+160>>2]=m;v[j+156>>2]=0;z[j+152>>2]=E;z[j+148>>2]=J;z[j+144>>2]=Oa;lB(j+128|0,p,j+176|0,j+240|0,j+48|0,j+16|0,O,j+144|0,j+208|0,j+32|0,j);k=z[j+128>>2];R=k>C(1.1920928955078125e-7);a=U+(x[L+B(v[aa>>2],44)>>1]<<6)|0;f=C(C(z[a+40>>2]*F)+C(C(z[a+32>>2]*A)+C(n*z[a+36>>2])));f=Fa?C(f-C(C(C(C(z[j+96>>2]*A)+C(z[j+112>>2]*l))+C(C(z[j+100>>2]*n)+C(z[j+116>>2]*h)))+C(C(z[j+104>>2]*F)+C(z[j+120>>2]*e)))):f;f=ya?C(f-C(C(C(C(z[j+80>>2]*m)-C(A*z[j+64>>2]))+C(C(z[j+84>>2]*d)-C(n*z[j+68>>2])))+C(C(z[j+88>>2]*g)-C(F*z[j+72>>2])))):f;z[b+8>>2]=F;z[b+4>>2]=n;z[b>>2]=A;ea=C(C(Ja+_)-C(Ha+Z));la=C(C(Ma+da)-C(La+V));ia=C(C(Ka+ga)-C(Ia+ca));z[b+12>>2]=C(ea*F)+C(C(la*A)+C(n*ia));a=v[j+192>>2];qa=v[j+196>>2];d=z[j+200>>2];z[b+28>>2]=f;z[b+24>>2]=d;v[b+16>>2]=a;v[b+20>>2]=qa;d=z[j+160>>2];e=z[j+168>>2];f=z[j+164>>2];z[b+48>>2]=ka;z[b+44>>2]=R?C(C(.800000011920929)/C(k+C(9999999747378752e-20))):C(0);v[b+52>>2]=0;z[b+36>>2]=-f;z[b+40>>2]=-e;z[b+32>>2]=-d;a=v[j+252>>2];v[b+72>>2]=v[j+248>>2];v[b+76>>2]=a;a=v[j+244>>2];v[b+64>>2]=v[j+240>>2];v[b+68>>2]=a;a=v[j+220>>2];v[b+88>>2]=v[j+216>>2];v[b+92>>2]=a;a=v[j+212>>2];v[b+80>>2]=v[j+208>>2];v[b+84>>2]=a;a=v[j+268>>2];v[b+104>>2]=v[j+264>>2];v[b+108>>2]=a;a=v[j+260>>2];v[b+96>>2]=v[j+256>>2];v[b+100>>2]=a;a=v[j+236>>2];v[b+120>>2]=v[j+232>>2];v[b+124>>2]=a;a=v[j+228>>2];v[b+112>>2]=v[j+224>>2];v[b+116>>2]=a;m=C(C(V*N)+C(o*C(-ca)));k=C(C(Z*o)+C(M*C(-V)));l=C(C(ca*M)+C(N*C(-Z)));d=C(C(da*N)+C(o*C(-ga)));f=C(C(_*o)+C(M*C(-da)));g=C(C(ga*M)+C(N*C(-_)));p:{if(x[p+12>>1]!=65535){e=f;h=d;break p}a=v[p+4>>2];h=C(C(z[a+60>>2]*d)+C(C(z[a+36>>2]*g)+C(f*z[a+48>>2])));e=C(C(z[a+56>>2]*d)+C(C(z[a+32>>2]*g)+C(f*z[a+44>>2])));g=C(C(z[a+52>>2]*d)+C(C(z[a+28>>2]*g)+C(f*z[a+40>>2])))}v[j+204>>2]=0;z[j+200>>2]=h;z[j+196>>2]=e;z[j+192>>2]=g;v[j+188>>2]=0;z[j+184>>2]=M;z[j+180>>2]=N;z[j+176>>2]=o;m=C(-m);k=C(-k);l=C(-l);q:{if(x[O+12>>1]!=65535){d=k;f=m;break q}a=v[O+4>>2];f=C(C(z[a+60>>2]*m)+C(C(z[a+36>>2]*l)+C(z[a+48>>2]*k)));d=C(C(z[a+56>>2]*m)+C(C(z[a+32>>2]*l)+C(z[a+44>>2]*k)));l=C(C(z[a+52>>2]*m)+C(C(z[a+28>>2]*l)+C(z[a+40>>2]*k)))}v[j+172>>2]=0;z[j+168>>2]=f;z[j+164>>2]=d;z[j+160>>2]=l;v[j+156>>2]=0;z[j+152>>2]=H;z[j+148>>2]=P;z[j+144>>2]=Q;lB(j+128|0,p,j+176|0,j+240|0,j+48|0,j+16|0,O,j+144|0,j+208|0,j+32|0,j);k=z[j+128>>2];R=k>C(1.1920928955078125e-7);a=U+(x[L+B(v[aa>>2],44)>>1]<<6)|0;m=C(C(z[a+40>>2]*M)+C(C(z[a+32>>2]*o)+C(N*z[a+36>>2])));m=Fa?C(m-C(C(C(C(z[j+96>>2]*o)+C(z[j+112>>2]*g))+C(C(z[j+100>>2]*N)+C(z[j+116>>2]*e)))+C(C(z[j+104>>2]*M)+C(z[j+120>>2]*h)))):m;m=ya?C(m-C(C(C(C(z[j+80>>2]*l)-C(o*z[j+64>>2]))+C(C(z[j+84>>2]*d)-C(N*z[j+68>>2])))+C(C(z[j+88>>2]*f)-C(M*z[j+72>>2])))):m;a=b+256|0;v[b+180>>2]=0;z[b+172>>2]=R?C(C(.800000011920929)/C(k+C(9999999747378752e-20))):C(0);z[b+156>>2]=m;z[b+152>>2]=h;z[b+148>>2]=e;z[b+144>>2]=g;z[b+136>>2]=M;z[b+132>>2]=N;z[b+128>>2]=o;z[b+176>>2]=ka;z[b+168>>2]=-f;z[b+164>>2]=-d;z[b+160>>2]=-l;z[b+140>>2]=C(ea*M)+C(C(la*o)+C(N*ia));R=v[j+244>>2];v[b+192>>2]=v[j+240>>2];v[b+196>>2]=R;R=v[j+252>>2];v[b+200>>2]=v[j+248>>2];v[b+204>>2]=R;R=v[j+212>>2];v[b+208>>2]=v[j+208>>2];v[b+212>>2]=R;R=v[j+220>>2];v[b+216>>2]=v[j+216>>2];v[b+220>>2]=R;R=v[j+260>>2];v[b+224>>2]=v[j+256>>2];v[b+228>>2]=R;R=v[j+268>>2];v[b+232>>2]=v[j+264>>2];v[b+236>>2]=R;R=v[j+228>>2];v[b+240>>2]=v[j+224>>2];v[b+244>>2]=R;R=v[j+236>>2];v[b+248>>2]=v[j+232>>2];v[b+252>>2]=R;r=r+1|0;R=x[Y>>1];if(r>>>0>>0){continue}break}if(!(gb&(R|0)==1)){break m}t[c+3|0]=w[c+3|0]+1;d=z[S>>2];e=z[X+2908>>2];f=z[S+12>>2];g=z[X+2912>>2];h=z[X+2916>>2];m=z[S+8>>2];k=z[X+2904>>2];l=z[S+4>>2];o=C(C(C(d*e)+C(C(f*g)+C(h*m)))-C(k*l));n=z[T+8>>2];A=C(C(C(m*k)+C(C(f*e)+C(h*l)))-C(g*d));F=z[T+4>>2];M=C(C(C(C(f*h)-C(k*d))-C(l*e))-C(m*g));N=z[T+12>>2];V=z[T>>2];d=C(C(C(l*g)+C(C(f*k)+C(h*d)))-C(e*m));e=C(C(o*n)+C(C(A*F)+C(C(M*N)+C(V*d))));a=U+(x[L+B(v[aa>>2],44)>>1]<<6)|0;m=z[a+8>>2];h=C(C(C(V*A)+C(C(C(M*n)-C(N*o))-C(d*F)))*m);k=z[a>>2];g=C(C(C(F*o)+C(C(C(M*V)-C(N*d))-C(A*n)))*k);l=z[a+4>>2];n=C(C(C(n*d)+C(C(C(M*F)-C(N*A))-C(o*V)))*l);f=C(K(C(C(e*e)+C(C(h*h)+C(C(g*g)+C(n*n))))));if(f!=C(0)){d=C(C(1)/f);e=C(e*d);n=C(n*d);h=C(h*d);g=C(g*d)}o=C(K(C(C(G(C(-ja),C(0)))*Ea)));r=o=C(0)?C(C(C(e*C(0))+C(C(h*m)+C(C(g*k)+C(l*n))))/e):C(0));r:{if(x[p+12>>1]==65535){a=v[p+4>>2];d=z[a+52>>2];f=z[a+40>>2];k=z[a+56>>2];l=z[a+32>>2];n=z[a+44>>2];A=z[a+60>>2];F=z[a+36>>2];M=z[a+48>>2];N=z[a+28>>2];e=z[c+40>>2];h=z[c+32>>2];g=z[c+36>>2];v[j+240>>2]=0;A=C(C(C(h*F)+C(g*M))+C(e*A));F=C(C(C(h*N)+C(g*f))+C(e*d));d=C(C(C(h*l)+C(g*n))+C(e*k));break r}v[j+240>>2]=0;h=z[c+32>>2];F=h;e=z[c+40>>2];A=e;g=z[c+36>>2];d=g}k=r?wa:o;v[j+268>>2]=0;z[j+264>>2]=A;z[j+260>>2]=d;z[j+256>>2]=F;v[j+252>>2]=0;v[j+244>>2]=0;v[j+248>>2]=0;d=C(-g);s:{if(x[O+12>>1]==65535){a=v[O+4>>2];A=C(C(C(z[a+48>>2]*d)-C(h*z[a+36>>2]))-C(e*z[a+60>>2]));f=C(C(C(z[a+44>>2]*d)-C(h*z[a+32>>2]))-C(e*z[a+56>>2]));d=C(C(C(z[a+40>>2]*d)-C(h*z[a+28>>2]))-C(e*z[a+52>>2]));break s}A=C(-e);f=d;d=C(-h)}a=b+384|0;v[j+216>>2]=0;v[j+220>>2]=0;v[j+208>>2]=0;v[j+212>>2]=0;v[j+236>>2]=0;z[j+232>>2]=A;z[j+228>>2]=f;z[j+224>>2]=d;d=kB(p,j+240|0,j+176|0,sa,ta,O,j+208|0,j+144|0,ua,va);z[b+268>>2]=-m;v[b+264>>2]=0;v[b+256>>2]=0;v[b+260>>2]=0;c=v[j+256>>2];r=v[j+260>>2];e=z[j+264>>2];v[b+284>>2]=0;z[b+280>>2]=e;v[b+272>>2]=c;v[b+276>>2]=r;e=z[j+224>>2];f=z[j+232>>2];g=z[j+228>>2];z[b+300>>2]=d>C(1.1920928955078125e-7)?C(C(.800000011920929)/C(d+C(9999999747378752e-20))):C(0);z[b+304>>2]=ka;z[b+312>>2]=k;v[b+308>>2]=0;z[b+292>>2]=-g;z[b+296>>2]=-f;z[b+288>>2]=-e;c=v[j+176>>2];r=v[j+180>>2];d=z[j+184>>2];v[b+332>>2]=0;z[b+328>>2]=d;v[b+320>>2]=c;v[b+324>>2]=r;c=v[j+144>>2];r=v[j+148>>2];d=z[j+152>>2];v[b+348>>2]=0;z[b+344>>2]=d;v[b+336>>2]=c;v[b+340>>2]=r;c=v[j+192>>2];r=v[j+196>>2];d=z[j+200>>2];v[b+364>>2]=0;z[b+360>>2]=d;v[b+352>>2]=c;v[b+356>>2]=r;c=v[j+160>>2];r=v[j+164>>2];d=z[j+168>>2];v[b+380>>2]=0;z[b+376>>2]=d;v[b+368>>2]=c;v[b+372>>2]=r}ha=ha+1|0;c=a;b=v[L+7688>>2]}I=I+1|0;if(I>>>0>>0){continue}break}}xa=j+272|0;break g}b=v[L+7688>>2];if(!b){break g}qa=(U|0)==4|(U|0)==2?5:1;lb=z[a+164>>2];hb=z[a+168>>2];gb=lb>C(0)|hb>C(0);Oa=ha?C(0):d;c=v[a+36>>2];g=z[c+28>>2];p=v[a+40>>2];h=z[p+28>>2];Ab=g>h?g:h;la=C(z[a>>2]*z[c+32>>2]);aa=w[v[a+24>>2]+62|0];Bb=z[a+124>>2];A=z[a+12>>2];F=z[a+4>>2];j=v[a+112>>2];$a=v[a+108>>2];S=v[a+32>>2];M=z[S+60>>2];N=z[S+56>>2];ja=z[S+52>>2];V=z[S+48>>2];ca=z[S+44>>2];Z=z[S+40>>2];da=z[S+36>>2];ga=z[S+32>>2];T=v[a+28>>2];_=z[T+60>>2];sa=z[T+56>>2];ta=z[T+52>>2];ua=z[T+48>>2];va=z[T+44>>2];wa=z[T+40>>2];ka=z[T+36>>2];Ea=z[T+32>>2];Ha=z[p+24>>2];Ia=z[p+20>>2];Ja=z[c+24>>2];Ka=z[c+20>>2];La=z[S+28>>2];Ma=z[T+28>>2];ea=z[p+16>>2];Pa=z[c+16>>2];mb=z[a+68>>2];nb=z[a+96>>2];Cb=C(mb-nb);ob=z[a- -64>>2];pb=z[a+92>>2];Db=C(ob-pb);qb=z[a+60>>2];rb=z[a+88>>2];Eb=C(qb-rb);ia=z[c+8>>2];Aa=z[p+8>>2];sb=C(ia-Aa);Ra=z[c+4>>2];Sa=z[p+4>>2];tb=C(Ra-Sa);Ta=z[c>>2];Ua=z[p>>2];ub=C(Ta-Ua);Fb=C(d*C(-.800000011920929));Ga=z[a+84>>2];Za=C(C(Ga*Ga)+C(-.5));za=z[a+56>>2];_a=C(C(za*za)+C(-.5));ab=z[a+76>>2];Gb=C(-ab);bb=z[a+72>>2];Hb=C(-bb);cb=z[a+80>>2];Ib=C(-cb);db=z[a+48>>2];Jb=C(-db);eb=z[a+44>>2];Kb=C(-eb);fb=z[a+52>>2];Lb=C(-fb);ib=C(z[p+32>>2]*C(-z[a+8>>2]));Mb=C(-ib);ha=w[v[a+20>>2]+62|0];a=i;while(1){Fa=L+(r<<2)|0;I=v[Fa+7296>>2];if(I){ya=Fa+7424|0;c=v[ya>>2];U=j+(x[L+B(c,44)>>1]<<6)|0;n=z[U+60>>2];z[a+48>>2]=Mb;z[a+12>>2]=la;v[a+64>>2]=$a;t[a+1|0]=R;g=z[U>>2];m=z[U+4>>2];k=z[U+8>>2];z[a+44>>2]=Ab;z[a+40>>2]=k;z[a+36>>2]=m;z[a+32>>2]=g;d=C(C(k*k)+C(C(g*g)+C(m*m)));Ca=C(ib*d);Da=C(la*d);b=a+80|0;Qa=C(34028234663852886e22);if((c|0)!=65535){ma=C(C(Aa*k)+C(C(Ua*g)+C(Sa*m)));na=C(C(ia*k)+C(C(Ta*g)+C(Ra*m)));while(1){Y=L+B(c,44)|0;Na=w[Y+5|0];if(Na){Nb=j+(x[Y>>1]<<6)|0;p=0;while(1){c=(p<<6)+Nb|0;$=z[c+40>>2];oa=z[c+36>>2];ba=z[c+32>>2];y=z[c+20>>2];l=z[c+24>>2];o=z[c+16>>2];d=z[c+12>>2];z[b+36>>2]=Fb;d=C(d-Bb);z[b+12>>2]=d;q=C(o-rb);s=C(y-pb);h=C(C(q*m)-C(g*s));H=C(l-nb);s=C(C(s*k)-C(m*H));q=C(C(H*g)-C(k*q));H=C(C(M*h)+C(C(da*s)+C(V*q)));z[b+24>>2]=H;P=C(C(N*h)+C(C(ga*s)+C(ca*q)));z[b+20>>2]=P;Q=C(C(ja*h)+C(C(La*s)+C(Z*q)));z[b+16>>2]=Q;o=C(o-qb);E=C(y-ob);y=C(C(o*m)-C(g*E));J=C(E*k);E=C(l-mb);l=C(J-C(m*E));o=C(C(E*g)-C(k*o));E=C(C(_*y)+C(C(ka*l)+C(ua*o)));z[b+8>>2]=E;J=C(C(sa*y)+C(C(Ea*l)+C(va*o)));z[b+4>>2]=J;fa=C(C(ta*y)+C(C(Ma*l)+C(wa*o)));z[b>>2]=fa;H=C(C(Da+C(F*C(C(E*E)+C(C(fa*fa)+C(J*J)))))+C(C(A*C(C(H*H)+C(C(Q*Q)+C(P*P))))-Ca));z[b+28>>2]=H>C(0)?C(C(1)/H):C(0);y=C(na+C(C(y*Ja)+C(C(l*Pa)+C(Ka*o))));s=C(ma+C(C(h*Ha)+C(C(s*ea)+C(Ia*q))));q=C(y-s);h=C(-q);z[b+32>>2]=(aa?s:C(-0))+C(C(C(C(k*$)+C(C(g*ba)+C(m*oa)))+(n>C(0)?f>q?h>C(d*e)?C(n*h):C(0):C(0):C(0)))-(ha?y:C(0)));Qa=d>1];if((c|0)!=65535){continue}break}}c=b;b=I<<2;c=J9(c,0,b);p=b+12&-16;d=z[U+56>>2];h=z[U+44>>2];t:{u:{v:{if(t[U+48|0]&1){t[a+2|0]=I;break v}b=x[(L+B(r,104)|0)+2818>>1];t[a+2|0]=I;if(b){break u}}I=0;b=0;break t}I=b<<1;b=1}c=c+p|0;z[a+16>>2]=h;t[a|0]=qa;t[a+3|0]=I;v[a+56>>2]=0;z[a+8>>2]=A;z[a+4>>2]=F;z[a+28>>2]=ib;z[a+24>>2]=la;z[a+20>>2]=d;w:{if(!b){break w}v[a+60>>2]=B(X,104)+pa;I=L+B(r,104)|0;Y=I+2818|0;Na=x[Y>>1];if(!Na){break w}d=C(C(k*sb)+C(C(g*ub)+C(tb*m)));h=C(tb-C(m*d));b=C(D(g))C(9999999747378752e-20);h=p?h:b?C(-k):g;q=h;y=p?s:b?m:C(0);d=p?d:b?C(0):C(-m);h=C(C(1)/C(K(C(C(y*y)+C(C(d*d)+C(h*h))))));s=C(q*h);q=C(d*h);d=C(C(g*s)-C(q*m));l=d;n=C(d*d);y=C(y*h);d=C(C(m*y)-C(s*k));h=C(C(k*q)-C(y*g));n=C(C(1)/C(K(C(n+C(C(d*d)+C(h*h))))));l=C(l*n);o=C(d*n);n=C(h*n);Ob=C(C(Aa*l)+C(C(Ua*o)+C(Sa*n)));Pb=C(C(ia*l)+C(C(Ta*o)+C(Ra*n)));Qb=C(C(Aa*y)+C(C(Ua*q)+C(Sa*s)));Rb=C(C(ia*y)+C(C(Ta*q)+C(Ra*s)));vb=w[U+48|0]&4?(Na|0)==2?C(.5):C(1):C(1);p=0;while(1){b=c;c=I+B(p,12)|0;d=z[c+2884>>2];P=z[c+2864>>2];Q=z[c+2856>>2];E=z[c+2860>>2];J=C(C(fb*P)+C(C(eb*Q)+C(db*E)));h=C(C(eb*J)+C(C(_a*Q)+C(za*C(C(db*P)+C(E*Lb)))));h=C(h+h);H=C(C(db*J)+C(C(_a*E)+C(za*C(C(fb*Q)+C(P*Kb)))));H=C(H+H);fa=C(C(h*s)-C(q*H));P=C(C(C(za*C(C(eb*E)+C(Q*Jb)))+C(_a*P))+C(fb*J));P=C(P+P);ma=C(C(H*y)-C(s*P));na=C(C(P*q)-C(y*h));Va=C(C(_*fa)+C(C(ka*ma)+C(ua*na)));Wa=C(C(ta*fa)+C(C(Ma*ma)+C(wa*na)));Xa=C(C(sa*fa)+C(C(Ea*ma)+C(va*na)));J=z[c+2888>>2];$=z[c+2880>>2];ba=C(C(cb*J)+C(C(bb*$)+C(ab*d)));Q=C(C(bb*ba)+C(C(Za*$)+C(Ga*C(C(ab*J)+C(d*Ib)))));Q=C(Q+Q);E=C(C(ab*ba)+C(C(Za*d)+C(Ga*C(C(cb*$)+C(J*Hb)))));E=C(E+E);oa=C(C(Q*s)-C(q*E));d=C(C(C(Ga*C(C(bb*d)+C($*Gb)))+C(Za*J))+C(cb*ba));J=C(d+d);$=C(C(E*y)-C(s*J));ba=C(C(J*q)-C(y*Q));Ya=C(C(M*oa)+C(C(da*$)+C(V*ba)));jb=C(C(ja*oa)+C(C(La*$)+C(Z*ba)));kb=C(C(N*oa)+C(C(ga*$)+C(ca*ba)));wb=C(C(Da+C(F*C(C(Va*Va)+C(C(Wa*Wa)+C(Xa*Xa)))))+C(C(A*C(C(Ya*Ya)+C(C(jb*jb)+C(kb*kb))))-Ca));U=wb>C(0);c=x[(Fa+(p<<1)|0)+7556>>1];if((c|0)==65535){c=x[L+B(v[ya>>2],44)>>1]}c=((c&65535)<<6)+j|0;xb=z[c+40>>2];yb=z[c+32>>2];zb=z[c+36>>2];d=C(C(xb*y)+C(C(yb*q)+C(s*zb)));d=ha?C(d-C(Rb+C(C(fa*Ja)+C(C(ma*Pa)+C(Ka*na))))):d;z[b+56>>2]=vb;v[b+52>>2]=0;z[b+32>>2]=jb;z[b+16>>2]=Wa;z[b+8>>2]=y;z[b+4>>2]=s;z[b>>2]=q;z[b+48>>2]=Oa;z[b+44>>2]=U?C(C(.800000011920929)/wb):C(0);z[b+40>>2]=Ya;z[b+36>>2]=kb;if(aa){d=C(C(Qb+C(C(oa*Ha)+C(C($*ea)+C(Ia*ba))))+d)}z[b+28>>2]=d;z[b+24>>2]=Va;z[b+20>>2]=Xa;Va=C(Cb+C(P-J));Wa=C(Eb+C(h-Q));Xa=C(Db+C(H-E));z[b+12>>2]=C(Va*y)+C(C(Wa*q)+C(s*Xa));d=C(C(h*n)+C(o*C(-H)));H=C(C(H*l)+C(n*C(-P)));P=C(C(P*o)+C(l*C(-h)));ma=C(C(_*d)+C(C(ka*H)+C(ua*P)));na=C(C(ta*d)+C(C(Ma*H)+C(wa*P)));$=C(C(sa*d)+C(C(Ea*H)+C(va*P)));fa=C(C(Q*n)+C(o*C(-E)));E=C(C(E*l)+C(n*C(-J)));Q=C(C(J*o)+C(l*C(-Q)));J=C(C(M*fa)+C(C(da*E)+C(V*Q)));oa=C(C(ja*fa)+C(C(La*E)+C(Z*Q)));ba=C(C(N*fa)+C(C(ga*E)+C(ca*Q)));Ya=C(C(Da+C(F*C(C(ma*ma)+C(C(na*na)+C($*$)))))+C(C(A*C(C(J*J)+C(C(oa*oa)+C(ba*ba))))-Ca));U=Ya>C(0);h=C(C(xb*l)+C(C(yb*o)+C(n*zb)));h=ha?C(h-C(Pb+C(C(d*Ja)+C(C(H*Pa)+C(Ka*P))))):h;c=b+128|0;z[b+120>>2]=vb;v[b+116>>2]=0;z[b+108>>2]=U?C(C(.800000011920929)/Ya):C(0);z[b+104>>2]=J;z[b+100>>2]=ba;z[b+96>>2]=oa;if(aa){h=C(C(Ob+C(C(fa*Ha)+C(C(E*ea)+C(Ia*Q))))+h)}z[b+92>>2]=h;z[b+88>>2]=ma;z[b+84>>2]=$;z[b+80>>2]=na;z[b+72>>2]=l;z[b+68>>2]=n;z[b+64>>2]=o;z[b+112>>2]=Oa;z[b+76>>2]=C(Va*l)+C(C(Wa*o)+C(n*Xa));p=p+1|0;U=x[Y>>1];if(p>>>0>>0){continue}break}if(!(gb&(U|0)==1)){break w}t[a+3|0]=w[a+3|0]+1;d=z[T>>2];h=z[I+2908>>2];s=z[T+12>>2];q=z[I+2912>>2];y=z[I+2916>>2];l=z[T+8>>2];o=z[I+2904>>2];n=z[T+4>>2];H=C(C(C(d*h)+C(C(s*q)+C(y*l)))-C(o*n));P=z[S+8>>2];Q=C(C(C(l*o)+C(C(s*h)+C(y*n)))-C(q*d));E=z[S+4>>2];J=C(C(C(C(s*y)-C(o*d))-C(n*h))-C(l*q));Ca=z[S+12>>2];Da=z[S>>2];q=C(C(C(n*q)+C(C(s*o)+C(y*d)))-C(h*l));h=C(C(H*P)+C(C(Q*E)+C(C(J*Ca)+C(Da*q))));a=j+(x[L+B(v[ya>>2],44)>>1]<<6)|0;o=z[a+8>>2];d=C(C(C(Da*Q)+C(C(C(J*P)-C(Ca*H))-C(q*E)))*o);n=z[a>>2];s=C(C(C(E*H)+C(C(C(J*Da)-C(Ca*q))-C(Q*P)))*n);q=C(C(P*q)+C(C(C(J*E)-C(Ca*Q))-C(H*Da)));H=z[a+4>>2];q=C(q*H);l=C(K(C(C(h*h)+C(C(d*d)+C(C(s*s)+C(q*q))))));if(l!=C(0)){y=C(C(1)/l);h=C(h*y);s=C(s*y);q=C(q*y);d=C(d*y)}o=D9(C(l+C(-9.999999974752427e-7))>=C(0)?C(C(C(h*C(0))+C(C(d*o)+C(C(s*n)+C(H*q))))/h):C(0));c=b+192|0;d=C(K(C(lb*C(G(C(-Qa),C(0))))));z[b+184>>2]=d>2]=0;z[b+176>>2]=Oa;d=C(C(_*k)+C(C(ka*g)+C(ua*m)));h=C(C(ta*k)+C(C(Ma*g)+C(wa*m)));s=C(C(sa*k)+C(C(Ea*g)+C(va*m)));q=C(C(M*k)+C(C(da*g)+C(V*m)));y=C(C(ja*k)+C(C(La*g)+C(Z*m)));l=C(C(N*k)+C(C(ga*g)+C(ca*m)));n=C(C(F*C(C(d*d)+C(C(h*h)+C(s*s))))+C(A*C(C(q*q)+C(C(y*y)+C(l*l)))));z[b+172>>2]=n>C(0)?C(C(.800000011920929)/n):C(0);z[b+168>>2]=q;z[b+164>>2]=l;z[b+160>>2]=y;z[b+156>>2]=aa?C(C(k*Ha)+C(C(g*ea)+C(Ia*m))):ha?C(C(k*Ja)+C(C(g*Pa)+C(Ka*m))):C(0);z[b+152>>2]=d;z[b+148>>2]=s;z[b+144>>2]=h;v[b+136>>2]=0;v[b+128>>2]=0;v[b+132>>2]=0;z[b+140>>2]=-o}X=X+1|0;b=v[L+7688>>2];a=c}r=r+1|0;if(r>>>0>>0){continue}break}}v[i+ra>>2]=0}xa=O+32|0;xa=W+32|0}function _x(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=0,p=C(0),q=0,r=C(0),s=0,A=C(0),E=C(0),F=0,G=C(0),H=0,I=0,J=0,L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=0,R=C(0),S=0,T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=0,Z=C(0),_=0,$=0,aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=0,ha=C(0),ia=C(0),ja=C(0),ka=0,la=C(0),ma=C(0),na=0,oa=0,pa=0,qa=0,ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=0,Da=C(0),Ea=0,Fa=C(0),Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=0,Ua=0,Va=0;J=xa-560|0;xa=J;fa=v[a+468>>2];Da=z[a+464>>2];k=v[a+448>>2];i=J;v[i+488>>2]=0;v[i+492>>2]=0;v[i+496>>2]=0;v[i+500>>2]=0;v[i+504>>2]=0;v[i+512>>2]=0;v[i+516>>2]=0;v[i+520>>2]=0;v[i+524>>2]=0;v[i+528>>2]=0;v[i+536>>2]=0;v[i+540>>2]=0;v[i+532>>2]=128132;v[i+544>>2]=0;v[i+548>>2]=0;v[i+552>>2]=0;v[i+556>>2]=0;v[i+484>>2]=128132;v[i+480>>2]=128088;v[i+508>>2]=128132;Ca=1;s=v[d+52>>2];Ea=k<<5;ga=Dx(s,Ea,1);O=Dx(s,Ea,1);Y=Dx(s,c<<3,1);Ka=v[d+40>>2];Ga=v[d+44>>2];v[i+472>>2]=0;v[i+476>>2]=0;v[i+464>>2]=0;v[i+468>>2]=0;v[i+456>>2]=0;v[i+460>>2]=0;v[i+448>>2]=0;v[i+452>>2]=0;pa=i+336|0;J9(pa,0,112);v[i+436>>2]=0;v[i+428>>2]=1065353216;v[i+420>>2]=0;v[i+404>>2]=-8388609;v[i+412>>2]=2139095039;v[i+332>>2]=O;v[i+328>>2]=ga;t[i+296|0]=0;$=Dx(s,c<<5,1);qa=Dx(s,(v[a+448>>2]<<5)-1|0,1);v[i+240>>2]=a;v[i+236>>2]=0;La=i+480|0;l=v[i+240>>2];z[l+464>>2]=Da;q=xa-48|0;xa=q;v[l+660>>2]=0;J9(v[l+408>>2],0,v[l+412>>2]<<2);Ha=v[l+448>>2]<<5;J9(v[l+312>>2],0,Ha);J9(v[l+168>>2],0,v[l+468>>2]<<2);t[l+489|0]=0;n=l+112|0;qx(l,n,0);i=q;v[i+36>>2]=0;v[i+40>>2]=0;v[i+28>>2]=0;v[i+32>>2]=0;v[i+20>>2]=0;v[i+24>>2]=0;v[i>>2]=v[l+228>>2];v[i+4>>2]=v[l+240>>2];v[i+8>>2]=v[l+252>>2];v[i+12>>2]=v[l+264>>2];v[i+28>>2]=v[l+144>>2];v[i+24>>2]=v[l+156>>2];v[i+36>>2]=v[l+180>>2];v[i+32>>2]=v[l+192>>2];v[i+16>>2]=v[l+480>>2];ux(n);wx(n,i);rx(n);sx(n,g,i);if(y[n+336>>2]>=2){I9(v[l+276>>2],v[l+264>>2],v[l+448>>2]<<5)}Ex(l,n);i=xa-176|0;xa=i;j=v[n+224>>2];Q=v[n+336>>2];S=v[n+332>>2];a:{if(t[v[n+364>>2]]&1){J9(j,0,192);break a}F=i+160|0;while(1){v[i+168>>2]=0;v[i+172>>2]=0;v[F>>2]=0;v[F+4>>2]=0;v[i+152>>2]=0;v[i+156>>2]=0;v[i+144>>2]=0;v[i+148>>2]=0;k=H<<2;v[(H>>>0<3?k+(i+144|0)|0:(k+F|0)-12|0)>>2]=1065353216;R=z[n+472>>2];Z=z[n+448>>2];aa=z[n+460>>2];X=z[n+476>>2];ba=z[n+452>>2];ha=z[n+464>>2];ia=z[n+480>>2];ja=z[n+456>>2];la=z[n+468>>2];T=z[n+420>>2];L=z[n+412>>2];P=z[n+416>>2];ma=z[n+508>>2];ra=z[n+484>>2];sa=z[n+496>>2];U=z[n+432>>2];W=z[n+424>>2];ca=z[n+428>>2];ta=z[n+512>>2];ua=z[n+488>>2];va=z[n+500>>2];E=z[i+168>>2];da=z[n+444>>2];p=z[F>>2];ea=z[n+436>>2];N=z[n+440>>2];wa=z[n+516>>2];ya=z[n+492>>2];za=z[n+504>>2];G=z[i+164>>2];r=z[i+152>>2];A=z[i+144>>2];M=z[i+148>>2];k=j+(H<<5)|0;v[k+28>>2]=0;v[k+12>>2]=0;z[k+24>>2]=C(C(da*E)+C(C(ea*p)+C(N*G)))+C(C(C(A*ya)+C(M*za))+C(r*wa));z[k+20>>2]=C(C(U*E)+C(C(W*p)+C(ca*G)))+C(C(C(A*ua)+C(M*va))+C(r*ta));z[k+16>>2]=C(C(T*E)+C(C(L*p)+C(P*G)))+C(C(C(A*ra)+C(M*sa))+C(r*ma));z[k+8>>2]=C(C(C(A*T)+C(M*U))+C(r*da))+C(C(C(p*ja)+C(G*la))+C(E*ia));z[k+4>>2]=C(C(C(A*P)+C(M*ca))+C(r*N))+C(C(C(p*ba)+C(G*ha))+C(E*X));z[k>>2]=C(C(C(A*L)+C(M*W))+C(r*ea))+C(C(C(p*Z)+C(G*aa))+C(E*R));H=H+1|0;if((H|0)!=6){continue}break}}if(Q>>>0>=2){I=i+160|0;F=1;while(1){k=v[n+340>>2]+B(F,160)|0;z[i+128>>2]=z[k+120>>2];z[i+132>>2]=z[k+124>>2];z[i+136>>2]=z[k+128>>2];na=j+B(F,192)|0;oa=S+(F<<5)|0;H=0;while(1){v[i+168>>2]=0;v[i+172>>2]=0;v[I>>2]=0;v[I+4>>2]=0;v[i+152>>2]=0;v[i+156>>2]=0;v[i+144>>2]=0;v[i+148>>2]=0;k=H<<2;v[(H>>>0<3?k+(i+144|0)|0:(k+I|0)-12|0)>>2]=1065353216;v[i+124>>2]=0;v[i+108>>2]=0;z[i+120>>2]=-z[i+168>>2];z[i+116>>2]=-z[i+164>>2];z[i+112>>2]=-z[I>>2];z[i+104>>2]=-z[i+152>>2];z[i+100>>2]=-z[i+148>>2];z[i+96>>2]=-z[i+144>>2];V=i+128|0;ka=B(F,76);Ia=i+96|0;dx(i- -64|0,v[n+284>>2]+B(F,96)|0,V,ka+v[n+272>>2]|0,Ia);k=j+B(v[oa+24>>2],192)|0;T=z[k+164>>2];L=z[k+132>>2];P=z[k+100>>2];U=z[k+68>>2];W=z[k+36>>2];ca=z[k+4>>2];da=z[k+168>>2];ea=z[k+136>>2];N=z[k+104>>2];R=z[k+72>>2];Z=z[k+40>>2];aa=z[k+8>>2];X=z[k+176>>2];ba=z[k+144>>2];ha=z[k+112>>2];ia=z[k+80>>2];ja=z[k+48>>2];la=z[k+16>>2];ma=z[k+180>>2];ra=z[k+148>>2];sa=z[k+116>>2];ta=z[k+84>>2];ua=z[k+20>>2];va=z[k+52>>2];wa=z[k+184>>2];ya=z[k+152>>2];za=z[k+120>>2];Fa=z[k+88>>2];Aa=z[k+24>>2];Ma=z[k+56>>2];Na=z[k+160>>2];Oa=z[k+128>>2];Pa=z[k+96>>2];Qa=z[k+64>>2];Ra=z[k>>2];Sa=z[k+32>>2];E=z[i+88>>2];p=z[i+84>>2];G=z[i+80>>2];r=z[i+72>>2];A=z[i+64>>2];M=z[i+68>>2];v[i+60>>2]=0;v[i+44>>2]=0;z[i+32>>2]=-C(C(C(C(C(C(Ra*A)+C(Sa*M))+C(Qa*r))+C(Pa*G))+C(Oa*p))+C(Na*E));z[i+56>>2]=-C(C(C(C(C(C(Aa*A)+C(Ma*M))+C(Fa*r))+C(za*G))+C(ya*p))+C(wa*E));z[i+52>>2]=-C(C(C(C(C(C(ua*A)+C(va*M))+C(ta*r))+C(sa*G))+C(ra*p))+C(ma*E));z[i+48>>2]=-C(C(C(C(C(C(la*A)+C(ja*M))+C(ia*r))+C(ha*G))+C(ba*p))+C(X*E));z[i+40>>2]=-C(C(C(C(C(C(aa*A)+C(Z*M))+C(R*r))+C(N*G))+C(ea*p))+C(da*E));z[i+36>>2]=-C(C(C(C(C(C(ca*A)+C(W*M))+C(U*r))+C(P*G))+C(L*p))+C(T*E));$w(i,V,v[n+236>>2]+B(F,112)|0,v[n+248>>2]+B(F,36)|0,ka+v[n+272>>2]|0,Ia,i+32|0);k=na+(H<<5)|0;z[k>>2]=z[i>>2];z[k+4>>2]=z[i+4>>2];E=z[i+8>>2];v[k+12>>2]=0;z[k+8>>2]=E;z[k+16>>2]=z[i+16>>2];z[k+20>>2]=z[i+20>>2];E=z[i+24>>2];v[k+28>>2]=0;z[k+24>>2]=E;H=H+1|0;if((H|0)!=6){continue}break}F=F+1|0;if((Q|0)!=(F|0)){continue}break}}xa=i+176|0;F=0;k=0;na=v[q+12>>2];oa=v[q>>2];H=J9(ga,0,v[n+336>>2]<<5);S=v[n+336>>2];b:{if(!S){break b}E=z[n+352>>2];V=v[n+332>>2];while(1){Q=k<<5;j=v[(Q+V|0)+16>>2];p=z[j+124>>2];M=p==C(0)?C(0):C(C(1)/p);i=H+Q|0;ha=C(C(1)/z[j+112>>2]);ia=C(C(1)/z[j+120>>2]);ja=C(C(1)/z[j+116>>2]);I=Q+oa|0;ca=z[I+16>>2];T=z[I+8>>2];L=z[I+4>>2];P=z[I>>2];da=z[I+24>>2];ea=z[I+20>>2];p=z[j+104>>2];A=z[j+108>>2];if(p>C(0)|A>C(0)){F=Q+na|0;G=z[F+8>>2];r=z[F+4>>2];p=C(E*p);p=p>2]=C(C(M*C(ca*p))-C(p*C(E*z[F>>2])))+z[i>>2];z[i+4>>2]=C(C(M*C(ea*p))-C(p*C(E*r)))+z[i+4>>2];z[i+8>>2]=C(C(M*C(da*p))-C(p*C(E*G)))+z[i+8>>2];la=z[F+24>>2];ma=z[F+20>>2];p=z[j+8>>2];N=C(T+T);G=z[j>>2];R=C(P+P);Z=C(L+L);r=z[j+4>>2];aa=C(C(p*N)+C(C(G*R)+C(Z*r)));A=C(E*A);U=A>2];W=C(C(A*A)+C(-.5));X=C(ia*C(U*C(C(p*aa)+C(C(N*W)-C(A*C(C(G*Z)-C(R*r)))))));X=C(X+X);ba=C(ha*C(U*C(C(G*aa)+C(C(R*W)-C(A*C(C(r*N)-C(Z*p)))))));ba=C(ba+ba);N=C(ja*C(U*C(C(r*aa)+C(C(Z*W)-C(A*C(C(p*R)-C(N*G)))))));N=C(N+N);R=C(C(p*X)+C(C(G*ba)+C(r*N)));z[i+16>>2]=z[i+16>>2]+C(C(C(G*R)+C(C(ba*W)+C(A*C(C(r*X)-C(N*p)))))-C(U*C(E*z[F+16>>2])));z[i+20>>2]=z[i+20>>2]+C(C(C(r*R)+C(C(N*W)+C(A*C(C(p*ba)-C(X*G)))))-C(U*C(E*ma)));z[i+24>>2]=z[i+24>>2]+C(C(C(p*R)+C(C(X*W)+C(A*C(C(G*N)-C(ba*r)))))-C(U*C(E*la)));F=1}c:{d:{A=C(C(T*T)+C(C(P*P)+C(L*L)));N=z[j+96>>2];I=A>N;Z=C(C(da*da)+C(C(ca*ca)+C(ea*ea)));aa=z[j+100>>2];if(I|Z>aa){if(I){p=z[j+8>>2];U=C(T+T);G=z[j>>2];P=C(P+P);L=C(L+L);r=z[j+4>>2];W=C(C(p*U)+C(C(G*P)+C(L*r)));X=C(C(1)-C(C(K(N))/C(K(A))));A=z[j+12>>2];T=C(C(A*A)+C(-.5));N=C(X*C(ia*C(C(p*W)+C(C(U*T)-C(A*C(C(G*L)-C(P*r)))))));N=C(N+N);R=C(X*C(ha*C(C(G*W)+C(C(P*T)-C(A*C(C(r*U)-C(L*p)))))));R=C(R+R);L=C(X*C(ja*C(C(r*W)+C(C(L*T)-C(A*C(C(p*P)-C(U*G)))))));L=C(L+L);P=C(C(p*N)+C(C(G*R)+C(r*L)));z[i+16>>2]=z[i+16>>2]+C(C(G*P)+C(C(R*T)+C(A*C(C(r*N)-C(L*p)))));z[i+20>>2]=z[i+20>>2]+C(C(r*P)+C(C(L*T)+C(A*C(C(p*R)-C(N*G)))));z[i+24>>2]=z[i+24>>2]+C(C(p*P)+C(C(N*T)+C(A*C(C(G*L)-C(R*r)))));F=1}if(Z>aa){break d}}k=k+1|0;if((S|0)!=(k|0)){continue}if(F){break c}break b}p=C(C(1)-C(C(K(aa))/C(K(Z))));z[i>>2]=C(C(M*ca)*p)+z[i>>2];z[i+4>>2]=C(C(M*ea)*p)+z[i+4>>2];z[i+8>>2]=C(C(M*da)*p)+z[i+8>>2];F=1;k=k+1|0;if((S|0)!=(k|0)){continue}}break}F=xa-32|0;xa=F;k=v[l+448>>2]-1|0;if(k){j=v[l+444>>2];while(1){i=k<<5;dx(F,v[l+396>>2]+B(k,96)|0,(v[l+452>>2]+B(k,160)|0)+120|0,v[l+384>>2]+B(k,76)|0,i+H|0);i=H+(v[(i+j|0)+24>>2]<<5)|0;z[i>>2]=z[F>>2]+z[i>>2];z[i+4>>2]=z[F+4>>2]+z[i+4>>2];z[i+8>>2]=z[F+8>>2]+z[i+8>>2];z[i+16>>2]=z[F+16>>2]+z[i+16>>2];z[i+20>>2]=z[F+20>>2]+z[i+20>>2];z[i+24>>2]=z[F+24>>2]+z[i+24>>2];k=k-1|0;if(k){continue}break}}I=xa-32|0;xa=I;S=v[l+168>>2];na=v[l+456>>2];oa=v[l+444>>2];i=v[l+228>>2];e:{if(t[v[l+476>>2]]&1){v[O>>2]=0;v[O+4>>2]=0;v[O+24>>2]=0;v[O+16>>2]=0;v[O+20>>2]=0;v[O+8>>2]=0;v[O+12>>2]=0;break e}Z=z[l+560>>2];aa=z[l+572>>2];X=z[l+584>>2];ba=z[l+564>>2];ha=z[l+576>>2];ia=z[l+588>>2];ja=z[l+568>>2];la=z[l+580>>2];ma=z[l+592>>2];ra=z[l+620>>2];sa=z[l+608>>2];ta=z[l+596>>2];T=z[l+524>>2];L=z[l+528>>2];P=z[l+532>>2];ua=z[l+624>>2];va=z[l+612>>2];wa=z[l+600>>2];U=z[l+536>>2];W=z[l+540>>2];ca=z[l+544>>2];ya=z[l+628>>2];r=z[l+616>>2];za=z[l+604>>2];da=z[l+548>>2];ea=z[l+552>>2];A=z[H+20>>2];N=z[l+556>>2];E=z[H+24>>2];p=z[H+8>>2];Fa=z[H+4>>2];G=z[H>>2];M=z[H+16>>2];v[O+12>>2]=0;R=C(-M);Aa=r;r=C(-Fa);z[O+24>>2]=C(C(C(da*R)-C(ea*A))-C(N*E))+C(C(C(Aa*r)-C(G*za))-C(p*ya));z[O+20>>2]=C(C(C(U*R)-C(W*A))-C(ca*E))+C(C(C(va*r)-C(G*wa))-C(p*ua));z[O+16>>2]=C(C(C(T*R)-C(L*A))-C(P*E))+C(C(C(sa*r)-C(G*ta))-C(p*ra));A=C(-A);P=C(C(C(C(ca*r)-C(G*P))-C(p*N))+C(C(C(la*A)-C(M*ja))-C(E*ma)));z[O+8>>2]=P;L=C(C(C(C(W*r)-C(G*L))-C(p*ea))+C(C(C(ha*A)-C(M*ba))-C(E*ia)));z[O+4>>2]=L;E=C(C(C(C(U*r)-C(G*T))-C(p*da))+C(C(C(aa*A)-C(M*Z))-C(E*X)));z[O>>2]=E;z[i>>2]=E+z[i>>2];z[i+4>>2]=L+z[i+4>>2];z[i+8>>2]=P+z[i+8>>2];z[i+16>>2]=z[O+16>>2]+z[i+16>>2];z[i+20>>2]=z[O+20>>2]+z[i+20>>2];z[i+24>>2]=z[O+24>>2]+z[i+24>>2]}v[O+28>>2]=0;V=v[l+448>>2];if(V>>>0>=2){k=1;while(1){Q=k<<5;Zw(I,(v[l+452>>2]+B(k,160)|0)+120|0,v[l+348>>2]+B(k,112)|0,v[l+360>>2]+B(k,36)|0,v[l+384>>2]+B(k,76)|0,Q+H|0,S+(v[(na+B(k,80)|0)+72>>2]<<2)|0,(v[(Q+oa|0)+24>>2]<<5)+O|0);j=O+Q|0;G=z[I>>2];z[j>>2]=G;r=z[I+4>>2];z[j+4>>2]=r;E=z[I+8>>2];v[j+12>>2]=0;z[j+8>>2]=E;A=z[I+16>>2];z[j+16>>2]=A;M=z[I+20>>2];z[j+20>>2]=M;p=z[I+24>>2];v[j+28>>2]=0;z[j+24>>2]=p;j=i+Q|0;z[j>>2]=G+z[j>>2];z[j+4>>2]=r+z[j+4>>2];z[j+8>>2]=E+z[j+8>>2];z[j+16>>2]=A+z[j+16>>2];z[j+20>>2]=M+z[j+20>>2];z[j+24>>2]=p+z[j+24>>2];k=k+1|0;if((V|0)!=(k|0)){continue}break}}xa=I+32|0;xa=F+32|0;S=v[n+336>>2];if(S>>>0<2){break b}i=v[n+44>>2];F=v[n+56>>2];na=v[n+344>>2];H=1;while(1){k=na+B(H,80)|0;I=w[k+76|0];f:{if(!I){break f}Q=v[k+72>>2];j=0;if((I|0)!=1){oa=I&254;k=0;while(1){V=j+Q<<2;ka=V+i|0;V=F+V|0;z[ka>>2]=z[V>>2]+z[ka>>2];v[V>>2]=0;V=Q+(j|1)<<2;ka=V+i|0;V=F+V|0;z[ka>>2]=z[V>>2]+z[ka>>2];v[V>>2]=0;j=j+2|0;k=k+2|0;if((oa|0)!=(k|0)){continue}break}}if(!(I&1)){break f}k=j+Q<<2;j=k+i|0;k=k+F|0;z[j>>2]=z[k>>2]+z[j>>2];v[k>>2]=0}H=H+1|0;if((S|0)!=(H|0)){continue}break}}tx(n,q);Fx(l+112|0,q);Gx(l,n,q);if(y[l+448>>2]>=2){v[q+12>>2]=v[l+276>>2];Kx(n,q);k=v[q+12>>2];H=v[n+336>>2]-1|0;if(H>>>0>=2){while(1){F=H<<5;j=F+k|0;T=z[j+24>>2];L=z[j+20>>2];i=v[n+340>>2]+B(H,160)|0;G=z[i+120>>2];P=z[j+16>>2];r=z[i+124>>2];A=z[i+128>>2];E=z[j+8>>2];p=z[j+4>>2];i=k+(v[(F+v[n+332>>2]|0)+24>>2]<<5)|0;M=z[j>>2];z[i>>2]=M+z[i>>2];z[i+4>>2]=p+z[i+4>>2];z[i+8>>2]=E+z[i+8>>2];z[i+16>>2]=C(P+C(C(r*E)-C(p*A)))+z[i+16>>2];z[i+20>>2]=C(L+C(C(A*M)-C(E*G)))+z[i+20>>2];z[i+24>>2]=C(T+C(C(G*p)-C(M*r)))+z[i+24>>2];H=H-1|0;if(H>>>0>1){continue}break}}v[k>>2]=0;v[k+4>>2]=0;v[k+24>>2]=0;v[k+28>>2]=0;v[k+16>>2]=0;v[k+20>>2]=0;v[k+8>>2]=0;v[k+12>>2]=0}t[l+488|0]=1;J9(v[l+264>>2],0,Ha);t[l+12|0]=0;v[l+4>>2]=0;v[l+8>>2]=0;n=v[l+448>>2];if(n){H=v[l+508>>2];F=v[l+324>>2];I=v[l+496>>2];Q=v[l+444>>2];j=0;while(1){S=B(j,28);k=S+I|0;i=v[(Q+(j<<5)|0)+16>>2];z[k>>2]=z[i>>2];z[k+4>>2]=z[i+4>>2];z[k+8>>2]=z[i+8>>2];z[k+12>>2]=z[i+12>>2];z[k+16>>2]=z[i+16>>2];z[k+20>>2]=z[i+20>>2];z[k+24>>2]=z[i+24>>2];k=F+S|0;z[k>>2]=z[i>>2];z[k+4>>2]=z[i+4>>2];z[k+8>>2]=z[i+8>>2];z[k+12>>2]=z[i+12>>2];z[k+16>>2]=z[i+16>>2];z[k+20>>2]=z[i+20>>2];z[k+24>>2]=z[i+24>>2];i=H+(j<<4)|0;v[i+8>>2]=0;v[i+12>>2]=1065353216;v[i>>2]=0;v[i+4>>2]=0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}xa=q+48|0;H=v[l+444>>2];F=v[l+448>>2];I=t[v[l+476>>2]]&1;v[J+236>>2]=0;n=l+112|0;v[n+180>>2]=0;E=z[n+352>>2];q=v[n+356>>2];if(q>>>0>(v[n+184>>2]&2147483647)>>>0){k=0;g:{if(!q){break g}j=B(q,176);if(!j){break g}i=v[37696];k=Ba[v[v[i>>2]+20>>2]](i)|0?28879:63804;k=Ba[v[v[i+12>>2]+8>>2]](i+12|0,j,k,16608,553)|0}j=v[n+176>>2];i=v[n+180>>2];if((i|0)>0){Q=B(i,176)+k|0;i=k;while(1){z[i>>2]=z[j>>2];z[i+4>>2]=z[j+4>>2];z[i+8>>2]=z[j+8>>2];z[i+12>>2]=z[j+12>>2];z[i+16>>2]=z[j+16>>2];z[i+20>>2]=z[j+20>>2];z[i+24>>2]=z[j+24>>2];z[i+28>>2]=z[j+28>>2];z[i+32>>2]=z[j+32>>2];z[i+36>>2]=z[j+36>>2];z[i+40>>2]=z[j+40>>2];z[i+44>>2]=z[j+44>>2];z[i+48>>2]=z[j+48>>2];z[i+52>>2]=z[j+52>>2];z[i+56>>2]=z[j+56>>2];z[i+60>>2]=z[j+60>>2];z[i- -64>>2]=z[j- -64>>2];z[i+68>>2]=z[j+68>>2];z[i+72>>2]=z[j+72>>2];z[i+76>>2]=z[j+76>>2];z[i+80>>2]=z[j+80>>2];z[i+84>>2]=z[j+84>>2];z[i+88>>2]=z[j+88>>2];z[i+92>>2]=z[j+92>>2];I9(i+96|0,j+96|0,80);j=j+176|0;i=i+176|0;if(Q>>>0>i>>>0){continue}break}j=v[n+176>>2]}if(!(!j|v[n+184>>2]<0)){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,j)}v[n+184>>2]=q;v[n+176>>2]=k}v[n+192>>2]=0;q=v[n+360>>2];if(q>>>0>(v[n+196>>2]&2147483647)>>>0){k=0;h:{if(!q){break h}j=B(q,80);if(!j){break h}i=v[37696];k=Ba[v[v[i>>2]+20>>2]](i)|0?30289:63804;k=Ba[v[v[i+12>>2]+8>>2]](i+12|0,j,k,16608,553)|0}j=v[n+188>>2];i=v[n+192>>2];if((i|0)>0){Q=B(i,80)+k|0;i=k;while(1){z[i>>2]=z[j>>2];z[i+4>>2]=z[j+4>>2];z[i+8>>2]=z[j+8>>2];z[i+12>>2]=z[j+12>>2];z[i+16>>2]=z[j+16>>2];z[i+20>>2]=z[j+20>>2];z[i+24>>2]=z[j+24>>2];z[i+28>>2]=z[j+28>>2];z[i+32>>2]=z[j+32>>2];z[i+36>>2]=z[j+36>>2];z[i+40>>2]=z[j+40>>2];z[i+44>>2]=z[j+44>>2];z[i+48>>2]=z[j+48>>2];z[i+52>>2]=z[j+52>>2];z[i+56>>2]=z[j+56>>2];S=v[j+64>>2];v[i+60>>2]=v[j+60>>2];v[i+64>>2]=S;S=v[j+72>>2];v[i+68>>2]=v[j+68>>2];v[i+72>>2]=S;v[i+76>>2]=v[j+76>>2];j=j+80|0;i=i+80|0;if(Q>>>0>i>>>0){continue}break}j=v[n+188>>2]}if(!(!j|v[n+196>>2]<0)){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,j)}v[n+196>>2]=q;v[n+188>>2]=k}i=v[H>>2];k=v[H+4>>2];if(i|k){p=C(C(1)/E);G=w[v[n+364>>2]]&2?E:C(1);while(1){q=i;yw(l,H,F,I,n,ga,E,E,p,C(1),C(9999999747378752e-20),0,(Ta=Raa(i),Ua=Raa(k)+32|0,Va=i,Va?Ta:Ua),G);i=i&i-1;k=k&k-!q;if(i|k){continue}break}}v[J+228>>2]=0;v[J+232>>2]=0;v[J+220>>2]=0;v[J+224>>2]=0;v[J+212>>2]=0;v[J+216>>2]=0;v[J+192>>2]=v[a+228>>2];v[J+196>>2]=v[a+240>>2];v[J+200>>2]=v[a+252>>2];v[J+204>>2]=v[a+264>>2];v[J+220>>2]=v[a+144>>2];v[J+216>>2]=v[a+156>>2];v[J+228>>2]=v[a+180>>2];v[J+224>>2]=v[a+192>>2];v[J+208>>2]=v[a+480>>2];i=a;k=b;q=J+32|0;n=J+448|0;a=xa-1088|0;xa=a;if(c){p=z[i+464>>2];G=C(C(1)/p);while(1){H=k+B(_,12)|0;b=v[H+8>>2];l=(_<<5)+$|0;v[q+16>>2]=l;z[q+120>>2]=z[b>>2];z[q+124>>2]=z[b+4>>2];v[q+132>>2]=v[v[i+20>>2]+168>>2]+(v[b+40>>2]<<5);j=x[b+10>>1];t[q+139|0]=j>>>9&1;F=j&255;t[q+137|0]=F>>>7;t[q+136|0]=j>>>8&1;t[q+138|0]=F>>>5&1;z[q+128>>2]=z[b+44>>2];J9(a+128|0,0,960);v[a+1068>>2]=2139095039;v[a+1052>>2]=-8388609;v[a+988>>2]=2139095039;v[a+972>>2]=-8388609;v[a+908>>2]=2139095039;v[a+892>>2]=-8388609;v[a+828>>2]=2139095039;v[a+812>>2]=-8388609;v[a+748>>2]=2139095039;v[a+732>>2]=-8388609;v[a+668>>2]=2139095039;v[a+652>>2]=-8388609;v[a+588>>2]=2139095039;v[a+572>>2]=-8388609;v[a+508>>2]=2139095039;v[a+492>>2]=-8388609;v[a+428>>2]=2139095039;v[a+412>>2]=-8388609;v[a+348>>2]=2139095039;v[a+332>>2]=-8388609;v[a+268>>2]=2139095039;v[a+252>>2]=-8388609;v[a+188>>2]=2139095039;v[a+172>>2]=-8388609;v[q+4>>2]=1065353216;v[q+8>>2]=1065353216;v[q+12>>2]=1065353216;v[q>>2]=1065353216;i:{if(v[b+24>>2]){j=v[b+32>>2];z[a+96>>2]=z[j>>2];z[a+100>>2]=z[j+4>>2];z[a+104>>2]=z[j+8>>2];z[a+108>>2]=z[j+12>>2];z[a+112>>2]=z[j+16>>2];z[a+116>>2]=z[j+20>>2];r=z[j+24>>2];break i}v[a+112>>2]=0;v[a+116>>2]=0;v[a+104>>2]=0;v[a+108>>2]=1065353216;v[a+96>>2]=0;v[a+100>>2]=0;r=C(0)}z[a+120>>2]=r;j:{if(v[b+28>>2]){j=v[b+36>>2];z[a+64>>2]=z[j>>2];z[a+68>>2]=z[j+4>>2];z[a+72>>2]=z[j+8>>2];z[a+76>>2]=z[j+12>>2];z[a+80>>2]=z[j+16>>2];z[a+84>>2]=z[j+20>>2];r=z[j+24>>2];break j}v[a+80>>2]=0;v[a+84>>2]=0;v[a+72>>2]=0;v[a+76>>2]=1065353216;v[a+64>>2]=0;v[a+68>>2]=0;r=C(0)}z[a+88>>2]=r;v[a+56>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;j=a+128|0;b=Ba[v[b+12>>2]](j,a+48|0,12,a,v[b+20>>2],a+96|0,a- -64|0,(x[b+10>>1]&512)>>>9|0,a+32|0,a+16|0)|0;z[q+140>>2]=z[a+48>>2];z[q+144>>2]=z[a+52>>2];z[q+148>>2]=z[a+56>>2];z[q+36>>2]=z[a+96>>2];z[q+40>>2]=z[a+100>>2];z[q+44>>2]=z[a+104>>2];z[q+48>>2]=z[a+108>>2];z[q+52>>2]=z[a+112>>2];z[q+56>>2]=z[a+116>>2];z[q+60>>2]=z[a+120>>2];z[q+64>>2]=z[a+64>>2];z[q+68>>2]=z[a+68>>2];z[q+72>>2]=z[a+72>>2];z[q+76>>2]=z[a+76>>2];z[q+80>>2]=z[a+80>>2];z[q+84>>2]=z[a+84>>2];E=z[a+88>>2];v[q+116>>2]=b;z[q+88>>2]=E;v[q+112>>2]=j;j=v[H>>2];b=v[H+4>>2];k:{l:{if(!((j|0)==-2147483648|(b|0)==-2147483648)){u[l+10>>1]=b;u[l+8>>1]=j;v[l>>2]=i;v[l+4>>2]=i;j=8;b=8;break l}if((j|0)==-2147483648){u[l+10>>1]=b;u[l+8>>1]=65535;v[l>>2]=n;v[l+4>>2]=i;j=2;b=8;break l}if((b|0)!=-2147483648){break k}u[l+10>>1]=65535;u[l+8>>1]=j;v[l>>2]=i;v[l+4>>2]=n;j=8;b=2}v[q+96>>2]=b;v[q+92>>2]=j}v[q+20>>2]=v[l>>2];b=v[l+4>>2];v[q+32>>2]=pa;v[q+28>>2]=pa;v[q+24>>2]=b;ry(q,La,p,G,ga);_=_+1|0;if((_|0)!=(c|0)){continue}break}}xa=a+1088|0;m:{if(!c){break m}if(c-1>>>0>=7){q=c&-8;a=0;while(1){b=o<<2;v[b+Y>>2]=2139095039;v[(b|4)+Y>>2]=2139095039;v[(b|8)+Y>>2]=2139095039;v[(b|12)+Y>>2]=2139095039;v[(b|16)+Y>>2]=2139095039;v[(b|20)+Y>>2]=2139095039;v[(b|24)+Y>>2]=2139095039;v[(b|28)+Y>>2]=2139095039;o=o+8|0;a=a+8|0;if((q|0)!=(a|0)){continue}break}}a=c&7;if(!a){break m}while(1){v[(o<<2)+Y>>2]=2139095039;o=o+1|0;m=m+1|0;if((a|0)!=(m|0)){continue}break}}if(h){q=i+112|0;E=C(C(1)/Da);F=fa&-4;n=fa&3;I=fa&-2;Q=fa&1;H=fa-1|0;Ca=fa<<2;n:{o:{while(1){m=0;p:{q:{if(!c){break q}while(1){b=0;a=v[((m<<5)+$|0)+24>>2];o=w[a+1|0];r:{if(!o){break r}a=a+48|0;if(o-1>>>0>=7){l=o&248;while(1){v[a+88>>2]=0;v[a+1208>>2]=0;v[a+1048>>2]=0;v[a+888>>2]=0;v[a+728>>2]=0;v[a+568>>2]=0;v[a+408>>2]=0;v[a+248>>2]=0;a=a+1280|0;b=b+8|0;if((l|0)!=(b|0)){continue}break}}o=o&7;if(!o){break r}b=0;while(1){v[a+88>>2]=0;a=a+160|0;b=b+1|0;if((o|0)!=(b|0)){continue}break}}m=m+1|0;if((m|0)!=(c|0)){continue}break}o=0;m=0;if(!c){break q}while(1){tA((m<<5)+$|0,J+296|0);m=m+1|0;if((m|0)!=(c|0)){continue}break}while(1){tA((o<<5)+$|0,J+296|0);m=0;o=o+1|0;if((o|0)!=(c|0)){continue}break}o=0;while(1){tA((o<<5)+$|0,J+296|0);o=o+1|0;if((o|0)!=(c|0)){continue}break}while(1){tA((m<<5)+$|0,J+296|0);m=m+1|0;if((m|0)!=(c|0)){continue}break}m=0;if(c){break p}}xw(i,O);break o}while(1){b=0;a=v[((m<<5)+$|0)+24>>2];s:{if(!a){break s}l=w[a+1|0];if(!l){break s}o=w[a|0]==4?160:96;a=a+48|0;if(l-1>>>0>=3){j=l&252;while(1){z[a+12>>2]=z[a+28>>2];a=a+o|0;z[a+12>>2]=z[a+28>>2];a=a+o|0;z[a+12>>2]=z[a+28>>2];a=a+o|0;z[a+12>>2]=z[a+28>>2];a=a+o|0;b=b+4|0;if((j|0)!=(b|0)){continue}break}}l=l&3;if(!l){break s}b=0;while(1){z[a+12>>2]=z[a+28>>2];a=a+o|0;b=b+1|0;if((l|0)!=(b|0)){continue}break}}m=m+1|0;if((m|0)!=(c|0)){continue}break}xw(i,O);m=0;a=0;if(!c){break n}while(1){a=(m<<5)+$|0;tA(a,J+296|0);iA(a);m=m+1|0;if((m|0)!=(c|0)){continue}break}if(!c){break o}b=v[v[i+20>>2]+168>>2]+(v[v[k+8>>2]+40>>2]<<5)|0;o=0;a=1;while(1){l=o<<2;p=C(E*z[b+8>>2]);r=C(p*p);p=C(E*z[b>>2]);Aa=C(p*p);p=C(E*z[b+4>>2]);p=C(Da*C(K(C(r+C(Aa+C(p*p))))));z[l+Ga>>2]=p;l=l+Y|0;G=z[l>>2];z[l>>2]=p;a=C(D(C(G-p)))>C(9999999747378752e-21)?0:a;o=o+1|0;if((o|0)!=(c|0)){continue}break}pa=a&1;if(pa){break o}o=J9(v[d+24>>2],0,Ca);t:{if(c){a=0;if(!fa){break t}while(1){b=(a<<2)+Ga|0;l=(B(a,fa)<<2)+Ka|0;m=0;_=0;if(H){while(1){j=m<<2;S=j+o|0;z[S>>2]=C(z[j+l>>2]*z[b>>2])+z[S>>2];j=j|4;S=j+o|0;z[S>>2]=C(z[j+l>>2]*z[b>>2])+z[S>>2];m=m+2|0;_=_+2|0;if((I|0)!=(_|0)){continue}break}}if(Q){m=m<<2;j=m+o|0;z[j>>2]=C(z[l+m>>2]*z[b>>2])+z[j>>2]}a=a+1|0;if((c|0)!=(a|0)){continue}break}}if(!fa){break t}b=0;m=0;j=0;if(H>>>0>=3){while(1){a=m<<2;l=a+o|0;z[l>>2]=z[a+f>>2]-z[l>>2];l=a|4;_=l+o|0;z[_>>2]=z[f+l>>2]-z[_>>2];l=a|8;_=l+o|0;z[_>>2]=z[f+l>>2]-z[_>>2];a=a|12;l=a+o|0;z[l>>2]=z[a+f>>2]-z[l>>2];m=m+4|0;j=j+4|0;if((F|0)!=(j|0)){continue}break}}if(!n){break t}while(1){a=m<<2;l=a+o|0;z[l>>2]=z[a+f>>2]-z[l>>2];m=m+1|0;b=b+1|0;if((n|0)!=(b|0)){continue}break}}t[J+24|0]=119;Ba[v[v[i>>2]+36>>2]](i,e,J+24|0)|0;t[J+16|0]=8;Ba[v[v[i>>2]+36>>2]](i,d,J+16|0)|0;J9(v[i+312>>2],0,v[i+448>>2]<<5);J9(v[i+168>>2],0,v[i+468>>2]<<2);t[i+489|0]=0;a=J+192|0;wx(q,a);sx(q,g,a);Fx(q,a);Gx(i,q,a);J9(v[i+264>>2],0,Ea);Ja=Ja+1|0;if((Ja|0)!=(h|0)){continue}break}a=!pa;break n}a=0}Ca=!a}a=v[s+16>>2];u:{if(!(a>>>0<=qa>>>0&a+v[s+20>>2]>>>0>qa>>>0)){if(!qa){break u}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,qa);break u}f=v[s+4>>2];a=0;d=v[s+8>>2];b=d;while(1){c=a;a=a+1|0;o=b;b=b-1|0;m=f+(b<<2)|0;if(y[m>>2]>>0){continue}break}v:{if(d>>>0<=o>>>0){break v}b=c&3;if(b){a=0;while(1){v[m>>2]=v[v[s+4>>2]+(o<<2)>>2];o=o+1|0;m=m+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break v}while(1){a=o<<2;v[m>>2]=v[a+v[s+4>>2]>>2];v[m+4>>2]=v[(a+v[s+4>>2]|0)+4>>2];v[m+8>>2]=v[(a+v[s+4>>2]|0)+8>>2];v[m+12>>2]=v[(a+v[s+4>>2]|0)+12>>2];m=m+16|0;o=o+4|0;if((d|0)!=(o|0)){continue}break}}v[s+8>>2]=d-1}a=v[s+16>>2];w:{if(!(a>>>0<=Y>>>0&a+v[s+20>>2]>>>0>Y>>>0)){if(!Y){break w}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,Y);break w}f=v[s+4>>2];a=0;d=v[s+8>>2];b=d;while(1){c=a;a=a+1|0;o=b;b=b-1|0;m=f+(b<<2)|0;if(y[m>>2]>>0){continue}break}x:{if(d>>>0<=o>>>0){break x}b=c&3;if(b){a=0;while(1){v[m>>2]=v[v[s+4>>2]+(o<<2)>>2];o=o+1|0;m=m+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break x}while(1){a=o<<2;v[m>>2]=v[a+v[s+4>>2]>>2];v[m+4>>2]=v[(a+v[s+4>>2]|0)+4>>2];v[m+8>>2]=v[(a+v[s+4>>2]|0)+8>>2];v[m+12>>2]=v[(a+v[s+4>>2]|0)+12>>2];m=m+16|0;o=o+4|0;if((d|0)!=(o|0)){continue}break}}v[s+8>>2]=d-1}a=v[s+16>>2];y:{if(!(a>>>0<=ga>>>0&a+v[s+20>>2]>>>0>ga>>>0)){if(!ga){break y}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,ga);break y}f=v[s+4>>2];a=0;d=v[s+8>>2];b=d;while(1){c=a;a=a+1|0;o=b;b=b-1|0;m=f+(b<<2)|0;if(y[m>>2]>>0){continue}break}z:{if(d>>>0<=o>>>0){break z}b=c&3;if(b){a=0;while(1){v[m>>2]=v[v[s+4>>2]+(o<<2)>>2];o=o+1|0;m=m+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break z}while(1){a=o<<2;v[m>>2]=v[a+v[s+4>>2]>>2];v[m+4>>2]=v[(a+v[s+4>>2]|0)+4>>2];v[m+8>>2]=v[(a+v[s+4>>2]|0)+8>>2];v[m+12>>2]=v[(a+v[s+4>>2]|0)+12>>2];m=m+16|0;o=o+4|0;if((d|0)!=(o|0)){continue}break}}v[s+8>>2]=d-1}a=v[s+16>>2];A:{if(!(a>>>0<=O>>>0&a+v[s+20>>2]>>>0>O>>>0)){if(!O){break A}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,O);break A}f=v[s+4>>2];a=0;d=v[s+8>>2];b=d;while(1){c=a;a=a+1|0;o=b;b=b-1|0;m=f+(b<<2)|0;if(y[m>>2]>>0){continue}break}B:{if(d>>>0<=o>>>0){break B}b=c&3;if(b){a=0;while(1){v[m>>2]=v[v[s+4>>2]+(o<<2)>>2];o=o+1|0;m=m+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break B}while(1){a=o<<2;v[m>>2]=v[a+v[s+4>>2]>>2];v[m+4>>2]=v[(a+v[s+4>>2]|0)+4>>2];v[m+8>>2]=v[(a+v[s+4>>2]|0)+8>>2];v[m+12>>2]=v[(a+v[s+4>>2]|0)+12>>2];m=m+16|0;o=o+4|0;if((d|0)!=(o|0)){continue}break}}v[s+8>>2]=d-1}a=v[s+16>>2];C:{if(!(a>>>0<=$>>>0&a+v[s+20>>2]>>>0>$>>>0)){if(!$){break C}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,$);break C}f=v[s+4>>2];a=0;d=v[s+8>>2];b=d;while(1){c=a;a=a+1|0;o=b;b=b-1|0;m=f+(b<<2)|0;if(y[m>>2]<$>>>0){continue}break}D:{if(d>>>0<=o>>>0){break D}b=c&3;if(b){a=0;while(1){v[m>>2]=v[v[s+4>>2]+(o<<2)>>2];o=o+1|0;m=m+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break D}while(1){a=o<<2;v[m>>2]=v[a+v[s+4>>2]>>2];v[m+4>>2]=v[(a+v[s+4>>2]|0)+4>>2];v[m+8>>2]=v[(a+v[s+4>>2]|0)+8>>2];v[m+12>>2]=v[(a+v[s+4>>2]|0)+12>>2];m=m+16|0;o=o+4|0;if((d|0)!=(o|0)){continue}break}}v[s+8>>2]=d-1}b=0;a=J+480|0;c=1-v[a+76>>2]|0;v[a+76>>2]=c;d=v[a+16>>2];if(d){while(1){c=v[v[a+12>>2]+(b<<2)>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);d=v[a+16>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}c=v[a+76>>2]}b=0;v[a+16>>2]=0;v[a+24>>2]=0;v[a+8>>2]=0;d=a+B(c,24)|0;c=v[d+40>>2];if(c){while(1){f=v[v[d+36>>2]+(b<<2)>>2];if(f){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f);c=v[d+40>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[d+40>>2]=0;v[d+48>>2]=0;v[d+32>>2]=0;t[J+8|0]=119;Ba[v[v[i>>2]+36>>2]](i,e,J+8|0)|0;$x(a);xa=J+560|0;return Ca|0}function jw(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=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=0,O=0,P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=0,da=0,ea=C(0),fa=0,ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=0,oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=0,La=0,Ma=C(0),Na=C(0);N=xa-320|0;xa=N;ca=B(b,240)+f|0;n=B(b,272)+f|0;Ka=B(b,144)+f|0;o=xa-32|0;xa=o;da=b<<5;j=((da+B(b,80)|0)+((b<<2)+60&524224)|0)+128|0;h=J9(a,0,j);l=j+da|0;u[h+18>>1]=l;u[h+6>>1]=j;u[h+4>>1]=b;u[h+16>>1]=(l+B(b,160)|0)+144;a:{if(b>>>0<2){break a}l=b-1|0;k=l&3;i=1;if(b-2>>>0>=3){j=l&-4;D=h- -64|0;while(1){t[i+D|0]=v[((i<<5)+c|0)+24>>2];l=i+1|0;t[l+D|0]=v[((l<<5)+c|0)+24>>2];l=i+2|0;t[l+D|0]=v[((l<<5)+c|0)+24>>2];l=i+3|0;t[l+D|0]=v[((l<<5)+c|0)+24>>2];i=i+4|0;K=K+4|0;if((j|0)!=(K|0)){continue}break}}if(!k){break a}K=0;while(1){t[(h+i|0)- -64|0]=v[((i<<5)+c|0)+24>>2];i=i+1|0;K=K+1|0;if((k|0)!=(K|0)){continue}break}}v[o+16>>2]=0;v[o+20>>2]=0;v[o+24>>2]=0;v[o+28>>2]=0;v[o>>2]=0;v[o+4>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0;v[o+8>>2]=0;v[o+12>>2]=0;v[h+40>>2]=0;v[h+44>>2]=0;l=v[o+20>>2];v[h+48>>2]=v[o+16>>2];v[h+52>>2]=l;l=v[o+28>>2];v[h+56>>2]=v[o+24>>2];v[h+60>>2]=l;m=J9(f,0,B(b,144));b:{if(!b){break b}i=x[h+4>>1];O=v[c+16>>2];z[ca>>2]=z[O>>2];z[ca+4>>2]=z[O+4>>2];z[ca+8>>2]=z[O+8>>2];z[ca+12>>2]=z[O+12>>2];z[ca+16>>2]=z[O+16>>2];z[ca+20>>2]=z[O+20>>2];z[ca+24>>2]=z[O+24>>2];v[n+8>>2]=0;v[n+12>>2]=1065353216;v[n>>2]=0;v[n+4>>2]=0;s=z[O+72>>2];p=z[O+88>>2];D=v[O+64>>2];k=v[O+68>>2];j=v[O+84>>2];l=v[O+80>>2];v[h+156>>2]=0;z[h+152>>2]=p;v[h+140>>2]=0;z[h+136>>2]=s;v[h+144>>2]=l;v[h+148>>2]=j;v[h+128>>2]=D;v[h+132>>2]=k;La=h+128|0;ba=da+(La+da|0)|0;l=ba;v[l+24>>2]=0;v[l+28>>2]=0;v[l+16>>2]=0;v[l+20>>2]=0;v[l+8>>2]=0;v[l+12>>2]=0;v[l>>2]=0;v[l+4>>2]=0;Uv(m,O,O);l=i<<5;da=(((l+La|0)+l|0)+l|0)+(i<<4)|0;z[da>>2]=z[O+76>>2];K=1;if((b|0)==1){break b}while(1){j=ca+B(K,28)|0;S=K<<5;O=S+c|0;l=v[O+16>>2];z[j>>2]=z[l>>2];z[j+4>>2]=z[l+4>>2];z[j+8>>2]=z[l+8>>2];z[j+12>>2]=z[l+12>>2];z[j+16>>2]=z[l+16>>2];z[j+20>>2]=z[l+20>>2];z[j+24>>2]=z[l+24>>2];j=n+(K<<4)|0;v[j+8>>2]=0;v[j+12>>2]=1065353216;v[j>>2]=0;v[j+4>>2]=0;i=v[l+64>>2];D=v[l+68>>2];k=v[l+84>>2];j=v[l+80>>2];s=z[l+72>>2];p=z[l+88>>2];fa=S+La|0;v[fa+28>>2]=0;z[fa+24>>2]=p;v[fa+12>>2]=0;z[fa+8>>2]=s;v[fa+16>>2]=j;v[fa+20>>2]=k;v[fa>>2]=i;v[fa+4>>2]=D;j=S+ba|0;v[j+24>>2]=0;v[j+28>>2]=0;v[j+16>>2]=0;v[j+20>>2]=0;v[j+8>>2]=0;v[j+12>>2]=0;v[j>>2]=0;v[j+4>>2]=0;Uv(m+B(K,144)|0,l,l);z[da+(K<<2)>>2]=z[l+76>>2];j=ca+B(v[O+24>>2],28)|0;L=z[j+20>>2];s=z[j+24>>2];k=v[O+20>>2];E=z[k+20>>2];q=z[k+24>>2];p=z[j+16>>2];F=z[k+16>>2];D=Ka+B(K,84)|0;I=z[j+12>>2];y=z[k+12>>2];H=z[k>>2];J=z[j>>2];G=z[j+4>>2];M=z[k+4>>2];r=z[j+8>>2];A=z[k+8>>2];T=C(C(C(C(I*y)-C(H*J))-C(G*M))-C(r*A));z[D+12>>2]=T;V=C(C(C(J*M)+C(C(I*A)+C(r*y)))-C(H*G));z[D+8>>2]=V;W=C(C(C(r*H)+C(C(I*M)+C(G*y)))-C(A*J));z[D+4>>2]=W;X=C(C(C(G*A)+C(C(I*H)+C(J*y)))-C(M*r));z[D>>2]=X;ea=s;y=C(q+q);A=C(F+F);q=C(E+E);F=C(C(r*y)+C(C(J*A)+C(G*q)));s=C(C(I*I)+C(-.5));H=C(ea+C(C(r*F)+C(C(y*s)+C(I*C(C(J*q)-C(A*G))))));z[D+24>>2]=H;M=C(L+C(C(G*F)+C(C(q*s)+C(I*C(C(r*A)-C(y*J))))));z[D+20>>2]=M;A=C(p+C(C(J*F)+C(C(A*s)+C(I*C(C(G*y)-C(q*r))))));z[D+16>>2]=A;L=z[l+20>>2];s=z[l+24>>2];E=z[k+48>>2];q=z[k+44>>2];F=z[k+52>>2];p=z[l+16>>2];Y=z[l+12>>2];J=z[k+40>>2];G=z[k+28>>2];Q=z[l>>2];R=z[l+4>>2];r=z[k+32>>2];U=z[l+8>>2];y=z[k+36>>2];Z=C(C(C(C(Y*J)-C(G*Q))-C(R*r))-C(U*y));z[D+40>>2]=Z;P=C(C(C(Q*r)+C(C(Y*y)+C(U*J)))-C(G*R));z[D+36>>2]=P;I=C(C(C(U*G)+C(C(Y*r)+C(R*J)))-C(y*Q));z[D+32>>2]=I;J=C(C(C(R*y)+C(C(Y*G)+C(Q*J)))-C(r*U));z[D+28>>2]=J;ea=s;G=C(F+F);r=C(q+q);y=C(E+E);F=C(C(U*G)+C(C(Q*r)+C(R*y)));s=C(C(Y*Y)+C(-.5));E=C(ea+C(C(U*F)+C(C(G*s)+C(Y*C(C(Q*y)-C(r*R))))));z[D+52>>2]=E;q=C(L+C(C(R*F)+C(C(y*s)+C(Y*C(C(U*r)-C(G*Q))))));z[D+48>>2]=q;p=C(p+C(C(Q*F)+C(C(r*s)+C(Y*C(C(R*G)-C(y*U))))));z[D+44>>2]=p;y=C(C(V*P)+C(C(W*I)+C(C(T*Z)+C(X*J))));z[D+68>>2]=y;F=C(C(J*W)+C(C(C(T*P)-C(Z*V))-C(X*I)));z[D- -64>>2]=F;L=C(C(P*X)+C(C(C(T*I)-C(Z*W))-C(V*J)));z[D+60>>2]=L;s=C(C(I*V)+C(C(C(T*J)-C(Z*X))-C(W*P)));z[D+56>>2]=s;p=C(p-A);r=C(p+p);p=C(q-M);A=C(p+p);p=C(E-H);E=C(p+p);q=C(C(C(C(-X)*r)-C(A*W))-C(V*E));p=C(C(T*T)+C(-.5));z[D+80>>2]=C(C(E*p)+C(T*C(C(W*r)-C(X*A))))-C(V*q);z[D+76>>2]=C(C(A*p)+C(T*C(C(X*E)-C(V*r))))-C(W*q);z[D+72>>2]=C(C(r*p)+C(T*C(C(V*A)-C(W*E))))-C(X*q);if(y>2]=-y;z[D+64>>2]=-F;z[D+60>>2]=-L;z[D+56>>2]=-s;z[D+40>>2]=-Z;z[D+36>>2]=-P;z[D+32>>2]=-I;z[D+28>>2]=-J}K=K+1|0;if((K|0)!=(b|0)){continue}break}}K=1;if(b>>>0>1){n=h+x[h+6>>1]|0;while(1){l=ca+B(w[(h+K|0)- -64|0],28)|0;E=z[l+20>>2];q=z[l+24>>2];F=z[l+16>>2];j=ca+B(K,28)|0;H=z[j+16>>2];l=Ka+B(K,84)|0;L=z[l+44>>2];s=z[l+48>>2];M=z[j+20>>2];p=z[l+52>>2];A=z[j+24>>2];l=n+(K<<5)|0;v[l+28>>2]=0;z[l+24>>2]=p-A;z[l+20>>2]=s-M;z[l+16>>2]=L-H;v[l+12>>2]=0;z[l>>2]=H-F;z[l+8>>2]=A-q;z[l+4>>2]=M-E;K=K+1|0;if((K|0)!=(b|0)){continue}break}}xa=o+32|0;J9(x[a+18>>1]+a|0,0,B(b,160)+144|0);k=x[a+6>>1];j=x[a+16>>1];da=x[a+4>>1];l=v[c>>2];n=v[c+4>>2];o=x[a+18>>1]+a|0;v[o+296>>2]=1;v[o+300>>2]=0;v[o+288>>2]=l;v[o+292>>2]=n;ba=1;if(da>>>0>1){D=((a+j|0)+B(da,400)|0)+(da<<5)|0;k=a+k|0;j=o+144|0;while(1){n=ba<<5;i=n+c|0;o=v[i+4>>2];l=j+B(ba,160)|0;v[l+144>>2]=v[i>>2];v[l+148>>2]=o;o=v[i+12>>2];v[l+152>>2]=v[i+8>>2];v[l+156>>2]=o;o=k+n|0;A=z[o+24>>2];E=z[o+16>>2];q=z[o+20>>2];o=D+B(ba,96)|0;v[o+92>>2]=0;v[o+84>>2]=0;v[o+88>>2]=1065353216;v[o+76>>2]=0;v[o+80>>2]=0;v[o+60>>2]=0;v[o+52>>2]=1065353216;v[o+56>>2]=0;v[o+44>>2]=0;v[o+48>>2]=0;v[o+28>>2]=0;v[o+20>>2]=0;v[o+24>>2]=0;v[o+12>>2]=0;v[o+16>>2]=1065353216;F=C(E*C(0));s=C(q*C(-0));z[o+72>>2]=C(F+s)+C(0);p=C(A*C(0));z[o+68>>2]=C(p-E)+C(0);L=C(A*C(-0));z[o+64>>2]=C(q+L)+C(0);z[o+40>>2]=C(E+s)+C(0);s=C(E*C(-0));z[o+36>>2]=C(p+s)+C(0);p=C(q*C(0));z[o+32>>2]=C(p-A)+C(0);z[o+8>>2]=C(F-q)+C(0);z[o+4>>2]=C(s+A)+C(0);z[o>>2]=C(p+L)+C(0);ba=ba+1|0;if((da|0)!=(ba|0)){continue}break}}v[N+64>>2]=0;c:{if(b>>>0<2){break c}d=C(C(1)/d);c=b-1|0;o=c&7;i=1;if(b-2>>>0>=7){c=c&-8;while(1){n=(N- -64|0)+(i<<2)|0;z[n>>2]=d;z[n+28>>2]=d;z[n+24>>2]=d;z[n+20>>2]=d;z[n+16>>2]=d;z[n+12>>2]=d;z[n+8>>2]=d;z[n+4>>2]=d;i=i+8|0;na=na+8|0;if((c|0)!=(na|0)){continue}break}}if(!o){break c}c=0;while(1){z[(N- -64|0)+(i<<2)>>2]=d;i=i+1|0;c=c+1|0;if((o|0)!=(c|0)){continue}break}}ca=J9(B(b,288)+f|0,0,B(b,48));fa=B(b,336);v[N+56>>2]=fa;v[N+24>>2]=fa;v[N+52>>2]=g;v[N+48>>2]=f;c=v[N+52>>2];v[N+16>>2]=v[N+48>>2];v[N+20>>2]=c;o=a;da=N- -64|0;k=da;c=xa-1936|0;xa=c;Ka=e&65535;if(Ka){d:{if(b>>>0<2){break d}e=b-1|0;na=e&3;a=1;if(b-2>>>0>=3){l=e&-4;e=0;while(1){j=c+912|0;z[j+(a<<4)>>2]=z[k+(a<<2)>>2];n=a+1|0;z[j+(n<<4)>>2]=z[k+(n<<2)>>2];n=a+2|0;z[j+(n<<4)>>2]=z[k+(n<<2)>>2];n=a+3|0;z[j+(n<<4)>>2]=z[k+(n<<2)>>2];a=a+4|0;e=e+4|0;if((l|0)!=(e|0)){continue}break}}if(!na){break d}e=0;while(1){z[(c+912|0)+(a<<4)>>2]=z[k+(a<<2)>>2];a=a+1|0;e=e+1|0;if((na|0)!=(e|0)){continue}break}}i=v[N+24>>2];La=B(b,144);S=i+La|0;v[N+24>>2]=S+La;a=x[o+4>>1];D=(o+x[o+16>>1]|0)+B(a,400)|0;k=a<<5;O=v[N+16>>2];j=x[o+6>>1];e:{if(!b){break e}e=0;a=0;if(b-1>>>0>=3){na=b&-4;h=o- -64|0;ba=0;while(1){m=c+400|0;n=m+(a<<3)|0;v[n>>2]=w[a+h|0];v[n+4>>2]=0;l=a|1;n=m+(l<<3)|0;v[n>>2]=w[h+l|0];v[n+4>>2]=0;l=a|2;n=m+(l<<3)|0;v[n>>2]=w[h+l|0];v[n+4>>2]=0;l=a|3;n=m+(l<<3)|0;v[n>>2]=w[h+l|0];v[n+4>>2]=0;a=a+4|0;ba=ba+4|0;if((na|0)!=(ba|0)){continue}break}}l=b&3;if(!l){break e}while(1){n=(c+400|0)+(a<<3)|0;v[n>>2]=w[(a+o|0)- -64|0];v[n+4>>2]=0;a=a+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}ba=k+D|0;na=i+O|0;i=O+S|0;D=j+o|0;l=b>>>0>1;while(1){O=I9(na,f,La);Ka=Ka-1|0;a=b;f:{if(!l){break f}while(1){e=a-1|0;j=(c+912|0)+(e<<4)|0;n=v[j+4>>2];v[c+32>>2]=v[j>>2];v[c+36>>2]=n;n=v[j+12>>2];v[c+40>>2]=v[j+8>>2];v[c+44>>2]=n;n=B(e,144);cw(c+256|0,n+O|0,ba+B(e,96)|0,(ca+B(a,48)|0)-48|0,c+32|0);k=O+B(v[(c+400|0)+(e<<3)>>2],144)|0;Aa=z[k+96>>2];Ba=z[k+100>>2];Ca=z[k+104>>2];Da=z[k+112>>2];Ea=z[k+116>>2];Fa=z[k+120>>2];Ga=z[k+128>>2];Ha=z[k+132>>2];Ia=z[k+136>>2];Ja=z[k+20>>2];ea=z[k+24>>2];T=z[k+36>>2];V=z[k+40>>2];W=z[k+52>>2];X=z[k+56>>2];a=k- -64|0;Y=z[a>>2];Q=z[k+68>>2];R=z[k+72>>2];U=z[k+80>>2];Z=z[k+84>>2];P=z[k+88>>2];j=D+(e<<5)|0;_=z[j>>2];I=z[k>>2];J=z[k+4>>2];G=z[k+8>>2];r=z[k+16>>2];y=z[k+32>>2];H=z[k+48>>2];$=z[j+4>>2];aa=z[j+8>>2];M=z[c+352>>2];A=z[c+356>>2];E=z[c+360>>2];q=z[c+368>>2];F=z[c+372>>2];L=z[c+376>>2];s=z[c+384>>2];p=z[c+388>>2];d=z[c+392>>2];Ma=z[c+308>>2];Na=z[c+312>>2];ya=z[c+320>>2];za=z[c+324>>2];oa=z[c+292>>2];ga=z[c+328>>2];pa=z[c+296>>2];ha=z[c+336>>2];ia=z[c+340>>2];qa=z[c+276>>2];ja=z[c+344>>2];ra=z[c+280>>2];sa=z[c+256>>2];ta=z[c+260>>2];ua=z[c+264>>2];ka=z[c+304>>2];va=z[c+288>>2];wa=z[c+272>>2];v[k+140>>2]=0;v[k+124>>2]=0;v[k+108>>2]=0;v[k+92>>2]=0;v[k+76>>2]=0;v[k+60>>2]=0;la=C(C($*va)-C(aa*wa));z[k+48>>2]=H+C(ka+la);v[k+44>>2]=0;z[k+32>>2]=va+y;v[k+28>>2]=0;z[k+16>>2]=wa+r;v[k+12>>2]=0;z[k+8>>2]=ua+G;z[k+4>>2]=ta+J;z[k>>2]=sa+I;ma=C(C(_*ra)-C($*ua));z[k+88>>2]=P+C(ja+ma);P=C(C(_*qa)-C($*ta));z[k+84>>2]=Z+C(ia+P);I=C(C(_*wa)-C($*sa));z[k+80>>2]=U+C(ha+I);J=C(C(aa*ua)-C(_*pa));z[k+72>>2]=R+C(ga+J);G=C(C(aa*ta)-C(_*oa));z[k+68>>2]=Q+C(za+G);r=C(C(aa*sa)-C(_*va));z[a>>2]=Y+C(ya+r);y=C(C($*pa)-C(aa*ra));z[k+56>>2]=X+C(Na+y);H=C(C($*oa)-C(aa*qa));z[k+52>>2]=W+C(Ma+H);z[k+40>>2]=pa+V;z[k+36>>2]=oa+T;z[k+24>>2]=ra+ea;z[k+20>>2]=qa+Ja;ea=d;d=C(C(C(C(_*ia)+C(ja*C(0)))-C($*ha))+C(C(C(ma*C(0))+C(C(_*P)-C($*I)))*C(.5)));z[k+136>>2]=Ia+C(ea+C(d+d));d=C(C(C(C(aa*ha)+C(C(ia*C(0))-C(_*ja)))+C(C(C(C(aa*I)+C(P*C(0)))-C(_*ma))*C(.5)))+C(C(C(C(_*za)+C(ga*C(0)))-C($*ya))+C(C(C(J*C(0))+C(C(_*G)-C($*r)))*C(.5))));z[k+132>>2]=Ha+C(p+d);p=C(C(C(C(ha*C(0))+C(C($*ja)-C(aa*ia)))+C(C(C($*ma)+C(C(I*C(0))-C(aa*P)))*C(.5)))+C(C(C(C(_*Ma)+C(Na*C(0)))-C($*ka))+C(C(C(y*C(0))+C(C(_*H)-C($*la)))*C(.5))));z[k+128>>2]=Ga+C(s+p);z[k+120>>2]=Fa+C(L+d);d=C(C(C(aa*ya)+C(C(za*C(0))-C(_*ga)))+C(C(C(C(aa*r)+C(G*C(0)))-C(_*J))*C(.5)));z[k+116>>2]=Ea+C(F+C(d+d));d=C(C(C(C(aa*ka)+C(C(Ma*C(0))-C(_*Na)))+C(C(C(C(aa*la)+C(H*C(0)))-C(_*y))*C(.5)))+C(C(C(ya*C(0))+C(C($*ga)-C(aa*za)))+C(C(C($*J)+C(C(r*C(0))-C(aa*G)))*C(.5))));z[k+112>>2]=Da+C(q+d);z[k+104>>2]=Ca+C(E+p);z[k+100>>2]=Ba+C(A+d);d=C(C(C(ka*C(0))+C(C($*Na)-C(aa*Ma)))+C(C(C($*y)+C(C(la*C(0))-C(aa*H)))*C(.5)));z[k+96>>2]=Aa+C(M+C(d+d));a=v[c+268>>2];j=i+n|0;v[j+8>>2]=v[c+264>>2];v[j+12>>2]=a;a=v[c+260>>2];v[j>>2]=v[c+256>>2];v[j+4>>2]=a;a=v[c+284>>2];v[j+24>>2]=v[c+280>>2];v[j+28>>2]=a;a=v[c+276>>2];v[j+16>>2]=v[c+272>>2];v[j+20>>2]=a;a=v[c+300>>2];v[j+40>>2]=v[c+296>>2];v[j+44>>2]=a;a=v[c+292>>2];v[j+32>>2]=v[c+288>>2];v[j+36>>2]=a;a=v[c+316>>2];v[j+56>>2]=v[c+312>>2];v[j+60>>2]=a;a=v[c+308>>2];v[j+48>>2]=v[c+304>>2];v[j+52>>2]=a;a=v[c+332>>2];v[j+72>>2]=v[c+328>>2];v[j+76>>2]=a;a=v[c+324>>2];n=j- -64|0;v[n>>2]=v[c+320>>2];v[n+4>>2]=a;a=v[c+340>>2];v[j+80>>2]=v[c+336>>2];v[j+84>>2]=a;a=v[c+348>>2];v[j+88>>2]=v[c+344>>2];v[j+92>>2]=a;a=v[c+356>>2];v[j+96>>2]=v[c+352>>2];v[j+100>>2]=a;a=v[c+364>>2];v[j+104>>2]=v[c+360>>2];v[j+108>>2]=a;a=v[c+380>>2];v[j+120>>2]=v[c+376>>2];v[j+124>>2]=a;a=v[c+372>>2];v[j+112>>2]=v[c+368>>2];v[j+116>>2]=a;a=v[c+396>>2];v[j+136>>2]=v[c+392>>2];v[j+140>>2]=a;a=v[c+388>>2];v[j+128>>2]=v[c+384>>2];v[j+132>>2]=a;a=e;if(a>>>0>1){continue}break}K=1;if(b>>>0<=1){break f}while(1){a=D+(K<<5)|0;p=z[a+8>>2];d=z[a>>2];z[c+100>>2]=-z[a+4>>2];z[c+96>>2]=-d;v[c+108>>2]=0;z[c+104>>2]=-p;a=v[c+100>>2];v[c+16>>2]=v[c+96>>2];v[c+20>>2]=a;a=v[c+108>>2];v[c+24>>2]=v[c+104>>2];v[c+28>>2]=a;n=c+112|0;dw(n,c+16|0,O+B(v[(c+400|0)+(K<<3)>>2],144)|0);e=B(K,144);a=e+i|0;ya=z[a>>2];za=z[a+4>>2];ga=z[a+8>>2];ha=z[a+16>>2];ia=z[a+20>>2];ja=z[a+24>>2];ka=z[a+32>>2];oa=z[a+36>>2];pa=z[a+40>>2];qa=z[a+48>>2];ra=z[a+52>>2];sa=z[a+56>>2];ta=z[a- -64>>2];ua=z[a+68>>2];va=z[a+72>>2];wa=z[a+80>>2];la=z[a+84>>2];ma=z[a+88>>2];Aa=z[a+96>>2];Ba=z[a+100>>2];Ca=z[a+104>>2];Da=z[a+112>>2];Ea=z[a+116>>2];Fa=z[a+120>>2];Ga=z[a+128>>2];Ha=z[a+132>>2];Ia=z[a+136>>2];Ja=z[c+112>>2];ea=z[c+116>>2];T=z[c+120>>2];V=z[c+128>>2];W=z[c+132>>2];X=z[c+136>>2];Y=z[c+144>>2];Q=z[c+148>>2];R=z[c+152>>2];U=z[c+160>>2];Z=z[c+164>>2];P=z[c+168>>2];I=z[c+176>>2];J=z[c+180>>2];G=z[c+184>>2];r=z[c+192>>2];y=z[c+196>>2];H=z[c+200>>2];M=z[c+208>>2];A=z[c+212>>2];E=z[c+216>>2];q=z[c+224>>2];F=z[c+228>>2];L=z[c+232>>2];s=z[c+240>>2];p=z[c+244>>2];d=z[c+248>>2];v[c+396>>2]=0;v[c+380>>2]=0;v[c+364>>2]=0;v[c+348>>2]=0;v[c+332>>2]=0;v[c+316>>2]=0;v[c+300>>2]=0;v[c+284>>2]=0;v[c+268>>2]=0;z[c+392>>2]=d-Ia;z[c+388>>2]=p-Ha;z[c+384>>2]=s-Ga;z[c+376>>2]=L-Fa;z[c+372>>2]=F-Ea;z[c+368>>2]=q-Da;z[c+360>>2]=E-Ca;z[c+356>>2]=A-Ba;z[c+352>>2]=M-Aa;z[c+344>>2]=H-ma;z[c+340>>2]=y-la;z[c+336>>2]=r-wa;z[c+328>>2]=G-va;z[c+324>>2]=J-ua;z[c+320>>2]=I-ta;z[c+312>>2]=P-sa;z[c+308>>2]=Z-ra;z[c+304>>2]=U-qa;z[c+296>>2]=R-pa;z[c+292>>2]=Q-oa;z[c+288>>2]=Y-ka;z[c+280>>2]=X-ja;z[c+276>>2]=W-ia;z[c+272>>2]=V-ha;z[c+264>>2]=T-ga;z[c+260>>2]=ea-za;z[c+256>>2]=Ja-ya;j=(c+912|0)+(K<<4)|0;a=v[j+4>>2];v[c>>2]=v[j>>2];v[c+4>>2]=a;a=v[j+12>>2];v[c+8>>2]=v[j+8>>2];v[c+12>>2]=a;k=n;n=c+256|0;a=ba+B(K,96)|0;S=ca+B(K,48)|0;cw(k,n,a,S,c);h=xa-720|0;xa=h;m=e+O|0;e=a;a=h+624|0;Jv(h+384|0,m,e,a);v[h+380>>2]=0;v[h+364>>2]=0;M=z[h+400>>2];A=z[h+420>>2];y=z[h+416>>2];E=z[h+404>>2];F=C(C(M*A)-C(y*E));p=z[h+392>>2];q=z[h+424>>2];d=z[h+408>>2];L=C(C(E*q)-C(A*d));H=z[h+384>>2];s=C(C(d*y)-C(q*M));d=z[h+388>>2];r=C(C(1)/C(C(F*p)+C(C(L*H)+C(s*d))));z[h+376>>2]=C(C(H*E)-C(M*d))*r;d=C(C(C(y*d)-C(H*A))*r);z[h+372>>2]=d;z[h+360>>2]=d;z[h+356>>2]=C(C(q*H)-C(p*y))*r;v[h+348>>2]=0;p=C(F*r);z[h+368>>2]=p;d=C(s*r);z[h+352>>2]=d;z[h+344>>2]=p;z[h+340>>2]=d;z[h+336>>2]=L*r;ya=z[n+20>>2];za=z[m+20>>2];ga=z[n+36>>2];ha=z[m+36>>2];ia=z[n+24>>2];ja=z[m+24>>2];ka=z[n+40>>2];oa=z[m+40>>2];pa=z[n+52>>2];qa=z[m+52>>2];ra=z[n+56>>2];sa=z[m+56>>2];ta=z[n- -64>>2];k=m- -64|0;ua=z[k>>2];va=z[n+68>>2];wa=z[m+68>>2];la=z[n+72>>2];ma=z[m+72>>2];Aa=z[n+80>>2];Ba=z[m+80>>2];Ca=z[n+84>>2];Da=z[m+84>>2];Ea=z[n+88>>2];Fa=z[m+88>>2];Ga=z[n+100>>2];Ha=z[m+100>>2];Ia=z[n+104>>2];Ja=z[m+104>>2];ea=z[n+112>>2];T=z[m+112>>2];V=z[n+116>>2];W=z[m+116>>2];X=z[n+120>>2];Y=z[m+120>>2];Q=z[n+128>>2];R=z[m+128>>2];U=z[n+132>>2];Z=z[m+132>>2];P=z[n+136>>2];I=z[m+136>>2];J=z[n>>2];G=z[m>>2];r=z[n+4>>2];y=z[m+4>>2];H=z[n+8>>2];M=z[m+8>>2];A=z[n+16>>2];E=z[m+16>>2];q=z[n+32>>2];F=z[m+32>>2];L=z[n+48>>2];s=z[m+48>>2];p=z[n+96>>2];d=z[m+96>>2];v[h+332>>2]=0;v[h+316>>2]=0;v[h+300>>2]=0;v[h+284>>2]=0;v[h+268>>2]=0;v[h+252>>2]=0;z[h+328>>2]=I+P;z[h+324>>2]=Z+U;z[h+320>>2]=R+Q;z[h+312>>2]=Y+X;z[h+308>>2]=W+V;z[h+304>>2]=T+ea;z[h+296>>2]=Ja+Ia;z[h+292>>2]=Ha+Ga;z[h+280>>2]=Fa+Ea;z[h+276>>2]=Da+Ca;z[h+272>>2]=Ba+Aa;z[h+264>>2]=ma+la;z[h+260>>2]=wa+va;z[h+256>>2]=ua+ta;z[h+248>>2]=sa+ra;z[h+244>>2]=qa+pa;z[h+232>>2]=oa+ka;z[h+216>>2]=ja+ia;v[h+236>>2]=0;v[h+220>>2]=0;v[h+204>>2]=0;z[h+288>>2]=d+p;z[h+240>>2]=s+L;z[h+228>>2]=ha+ga;z[h+224>>2]=F+q;z[h+212>>2]=za+ya;z[h+208>>2]=E+A;z[h+200>>2]=M+H;z[h+196>>2]=y+r;z[h+192>>2]=G+J;j=h+48|0;n=h+192|0;e=h+528|0;Kv(j,n,h+336|0,a,e);a=v[h+76>>2];v[h+216>>2]=v[h+72>>2];v[h+220>>2]=a;a=v[h+92>>2];v[h+232>>2]=v[h+88>>2];v[h+236>>2]=a;a=v[h+108>>2];v[h+248>>2]=v[h+104>>2];v[h+252>>2]=a;a=v[h+124>>2];v[h+264>>2]=v[h+120>>2];v[h+268>>2]=a;a=v[h+116>>2];v[h+256>>2]=v[h+112>>2];v[h+260>>2]=a;a=v[h+60>>2];v[h+200>>2]=v[h+56>>2];v[h+204>>2]=a;a=v[h+52>>2];v[h+192>>2]=v[h+48>>2];v[h+196>>2]=a;a=v[h+68>>2];v[h+208>>2]=v[h+64>>2];v[h+212>>2]=a;a=v[h+84>>2];v[h+224>>2]=v[h+80>>2];v[h+228>>2]=a;a=v[h+100>>2];v[h+240>>2]=v[h+96>>2];v[h+244>>2]=a;a=v[h+140>>2];v[h+280>>2]=v[h+136>>2];v[h+284>>2]=a;a=v[h+132>>2];v[h+272>>2]=v[h+128>>2];v[h+276>>2]=a;a=v[h+156>>2];v[h+296>>2]=v[h+152>>2];v[h+300>>2]=a;a=v[h+172>>2];v[h+312>>2]=v[h+168>>2];v[h+316>>2]=a;a=v[h+164>>2];v[h+304>>2]=v[h+160>>2];v[h+308>>2]=a;a=v[h+180>>2];v[h+320>>2]=v[h+176>>2];v[h+324>>2]=a;a=v[h+188>>2];v[h+328>>2]=v[h+184>>2];v[h+332>>2]=a;a=v[h+148>>2];v[h+288>>2]=v[h+144>>2];v[h+292>>2]=a;Iv(j,n);Jv(h,j,e,h+432|0);U=z[h+20>>2];Z=z[h+356>>2];P=z[h+36>>2];I=z[h+372>>2];J=z[h+24>>2];G=z[h+360>>2];r=z[h+40>>2];y=z[h+376>>2];H=z[h+8>>2];F=z[h+344>>2];M=z[h>>2];A=z[h+336>>2];E=z[h+4>>2];q=z[h+340>>2];L=z[h+32>>2];s=z[h+368>>2];p=z[h+16>>2];d=z[h+352>>2];v[c+92>>2]=0;v[c+76>>2]=0;v[c+60>>2]=0;R=C(d+p);P=C(I+P);Q=C(s+L);I=C(Z+U);p=C(C(R*P)-C(Q*I));F=C(F+H);H=C(y+r);d=C(G+J);L=C(C(I*H)-C(P*d));A=C(A+M);q=C(q+E);s=C(C(d*Q)-C(H*R));E=C(C(1)/C(C(p*F)+C(C(L*A)+C(q*s))));z[c+88>>2]=C(C(A*I)-C(R*q))*E;d=C(C(C(Q*q)-C(A*P))*E);z[c+84>>2]=d;p=C(p*E);z[c+80>>2]=p;z[c+72>>2]=d;z[c+68>>2]=C(C(H*A)-C(F*Q))*E;d=C(s*E);z[c+64>>2]=d;z[c+56>>2]=p;z[c+52>>2]=d;z[c+48>>2]=L*E;xa=h+720|0;a=v[c+92>>2];v[S+40>>2]=v[c+88>>2];v[S+44>>2]=a;a=v[c+84>>2];v[S+32>>2]=v[c+80>>2];v[S+36>>2]=a;a=v[c+76>>2];v[S+24>>2]=v[c+72>>2];v[S+28>>2]=a;e=c- -64|0;a=v[e+4>>2];v[S+16>>2]=v[e>>2];v[S+20>>2]=a;a=v[c+60>>2];v[S+8>>2]=v[c+56>>2];v[S+12>>2]=a;a=v[c+52>>2];v[S>>2]=v[c+48>>2];v[S+4>>2]=a;ya=z[m>>2];za=z[m+4>>2];ga=z[m+8>>2];ha=z[m+16>>2];ia=z[m+20>>2];ja=z[m+24>>2];ka=z[m+32>>2];oa=z[m+36>>2];pa=z[m+40>>2];qa=z[m+48>>2];ra=z[m+52>>2];sa=z[m+56>>2];ta=z[k>>2];ua=z[m+68>>2];va=z[m+72>>2];wa=z[m+80>>2];la=z[m+84>>2];ma=z[m+88>>2];Aa=z[m+96>>2];Ba=z[m+100>>2];Ca=z[m+104>>2];Da=z[m+112>>2];Ea=z[m+116>>2];Fa=z[m+120>>2];Ga=z[m+128>>2];Ha=z[m+132>>2];Ia=z[m+136>>2];Ja=z[c+112>>2];ea=z[c+116>>2];T=z[c+120>>2];V=z[c+128>>2];W=z[c+132>>2];X=z[c+136>>2];Y=z[c+144>>2];Q=z[c+148>>2];R=z[c+152>>2];U=z[c+160>>2];Z=z[c+164>>2];P=z[c+168>>2];I=z[c+176>>2];J=z[c+180>>2];G=z[c+184>>2];r=z[c+192>>2];y=z[c+196>>2];H=z[c+200>>2];M=z[c+208>>2];A=z[c+212>>2];E=z[c+216>>2];q=z[c+224>>2];F=z[c+228>>2];L=z[c+232>>2];s=z[c+240>>2];p=z[c+244>>2];d=z[c+248>>2];v[m+140>>2]=0;v[m+124>>2]=0;v[m+108>>2]=0;v[m+92>>2]=0;v[m+76>>2]=0;v[m+60>>2]=0;v[m+44>>2]=0;v[m+28>>2]=0;v[m+12>>2]=0;z[m+136>>2]=Ia+d;z[m+132>>2]=Ha+p;z[m+128>>2]=Ga+s;z[m+120>>2]=Fa+L;z[m+116>>2]=Ea+F;z[m+112>>2]=Da+q;z[m+104>>2]=Ca+E;z[m+100>>2]=Ba+A;z[m+96>>2]=Aa+M;z[m+88>>2]=ma+H;z[m+84>>2]=la+y;z[m+80>>2]=wa+r;z[m+72>>2]=va+G;z[m+68>>2]=ua+J;z[k>>2]=ta+I;z[m+56>>2]=sa+P;z[m+52>>2]=ra+Z;z[m+48>>2]=qa+U;z[m+40>>2]=pa+R;z[m+36>>2]=oa+Q;z[m+32>>2]=ka+Y;z[m+24>>2]=ja+X;z[m+20>>2]=ia+W;z[m+16>>2]=ha+V;z[m+8>>2]=ga+T;z[m+4>>2]=za+ea;z[m>>2]=ya+Ja;K=K+1|0;if((K|0)!=(b|0)){continue}break}}if(Ka){continue}break}}xa=c+1936|0;v[N+40>>2]=fa;v[N+8>>2]=fa;v[N+36>>2]=g;v[N+32>>2]=f;a=v[N+36>>2];v[N>>2]=v[N+32>>2];v[N+4>>2]=a;i=xa-512|0;xa=i;n=x[o+18>>1];e=x[o+6>>1];c=x[o+16>>1];b=v[N+8>>2];l=x[o+4>>1];a=B(l,144);v[N+8>>2]=b+a;k=I9(b+v[N>>2]|0,f,a);g=x[o+4>>1]-1|0;if(g){j=((c+o|0)+B(l,400)|0)+(l<<5)|0;na=e+o|0;l=(n+o|0)+144|0;while(1){n=k+B(g,144)|0;f=i+416|0;Jv(i+368|0,n,j+B(g,96)|0,f);q=z[da+(g<<2)>>2];a=ca+B(g,48)|0;s=C(C(q*z[a+24>>2])+z[i+392>>2]);r=C(C(q*z[a+32>>2])+z[i+400>>2]);H=C(C(q*z[a+40>>2])+z[i+408>>2]);M=C(C(q*z[a+16>>2])+z[i+384>>2]);p=C(C(s*r)-C(H*M));A=C(C(q*z[a+36>>2])+z[i+404>>2]);E=C(C(q*z[a+20>>2])+z[i+388>>2]);d=C(C(M*A)-C(r*E));F=C(C(q*z[a+8>>2])+z[i+376>>2]);L=C(C(E*H)-C(A*s));y=C(C(q*z[a>>2])+z[i+368>>2]);q=C(C(q*z[a+4>>2])+z[i+372>>2]);G=C(C(1)/C(C(d*F)+C(C(L*y)+C(p*q))));s=C(p*G);z[i+336>>2]=s;p=C(C(C(r*q)-C(y*A))*G);z[i+344>>2]=p;d=C(d*G);z[i+352>>2]=d;z[i+360>>2]=C(C(y*E)-C(M*q))*G;z[i+324>>2]=s;z[i+320>>2]=L*G;v[i+332>>2]=0;v[i+348>>2]=0;v[i+364>>2]=0;z[i+328>>2]=d;z[i+340>>2]=C(C(H*y)-C(F*r))*G;z[i+356>>2]=p;a=v[i+324>>2];D=l+B(g,160)|0;b=D;v[b+96>>2]=v[i+320>>2];v[b+100>>2]=a;a=v[i+332>>2];v[b+104>>2]=v[i+328>>2];v[b+108>>2]=a;a=v[i+340>>2];v[b+112>>2]=v[i+336>>2];v[b+116>>2]=a;a=v[i+348>>2];v[b+120>>2]=v[i+344>>2];v[b+124>>2]=a;a=v[i+356>>2];v[b+128>>2]=v[i+352>>2];v[b+132>>2]=a;a=v[i+364>>2];v[b+136>>2]=v[i+360>>2];v[b+140>>2]=a;e=(g+o|0)- -64|0;c=w[e|0];b=na+(g<<5)|0;a=v[b+12>>2];v[i+168>>2]=v[b+8>>2];v[i+172>>2]=a;a=v[b+4>>2];v[i+160>>2]=v[b>>2];v[i+164>>2]=a;b=i+16|0;Kv(b,n,i+320|0,f,D);a=v[i+172>>2];v[i+8>>2]=v[i+168>>2];v[i+12>>2]=a;a=v[i+164>>2];v[i>>2]=v[i+160>>2];v[i+4>>2]=a;dw(i+176|0,i,b);a=k+B(c,144)|0;ga=z[a+20>>2];ha=z[a+24>>2];ia=z[a+36>>2];ja=z[a+40>>2];ka=z[a+52>>2];oa=z[a+56>>2];pa=z[a- -64>>2];qa=z[a+68>>2];ra=z[a+72>>2];sa=z[a+80>>2];ta=z[a+84>>2];ua=z[a+88>>2];va=z[a+100>>2];wa=z[a+104>>2];la=z[a+112>>2];ma=z[a+116>>2];Aa=z[a+120>>2];Ba=z[a+128>>2];Ca=z[a+132>>2];Da=z[a+136>>2];Ea=z[a>>2];Fa=z[a+4>>2];Ga=z[a+8>>2];Ha=z[a+16>>2];Ia=z[a+32>>2];Ja=z[a+48>>2];ea=z[i+196>>2];T=z[i+200>>2];V=z[i+212>>2];W=z[i+216>>2];X=z[i+228>>2];Y=z[i+232>>2];Q=z[i+240>>2];R=z[i+244>>2];U=z[i+248>>2];Z=z[i+256>>2];P=z[i+260>>2];I=z[i+264>>2];J=z[i+276>>2];G=z[i+280>>2];r=z[i+288>>2];y=z[i+292>>2];H=z[i+296>>2];M=z[i+304>>2];A=z[i+308>>2];E=z[i+312>>2];q=z[i+176>>2];F=z[i+180>>2];L=z[i+184>>2];s=z[i+192>>2];p=z[i+208>>2];d=z[i+224>>2];b=k+B(w[e|0],144)|0;z[b+96>>2]=z[a+96>>2]+z[i+272>>2];z[b+48>>2]=Ja+d;z[b+32>>2]=Ia+p;z[b+16>>2]=Ha+s;v[b+12>>2]=0;z[b+8>>2]=Ga+L;z[b+4>>2]=Fa+F;z[b>>2]=Ea+q;v[b+140>>2]=0;z[b+136>>2]=Da+E;z[b+132>>2]=Ca+A;z[b+128>>2]=Ba+M;v[b+124>>2]=0;z[b+120>>2]=Aa+H;z[b+116>>2]=ma+y;z[b+112>>2]=la+r;v[b+108>>2]=0;z[b+104>>2]=wa+G;z[b+100>>2]=va+J;v[b+92>>2]=0;z[b+88>>2]=ua+I;z[b+84>>2]=ta+P;z[b+80>>2]=sa+Z;v[b+76>>2]=0;z[b+72>>2]=ra+U;z[b+68>>2]=qa+R;z[b- -64>>2]=pa+Q;v[b+60>>2]=0;z[b+56>>2]=oa+Y;z[b+52>>2]=ka+X;v[b+44>>2]=0;z[b+40>>2]=ja+W;z[b+36>>2]=ia+V;v[b+28>>2]=0;z[b+24>>2]=ha+T;z[b+20>>2]=ga+ea;g=g-1|0;if(g){continue}break}}Iv(i+176|0,k);a=v[i+180>>2];c=o+x[o+18>>1]|0;v[c>>2]=v[i+176>>2];v[c+4>>2]=a;a=v[i+188>>2];v[c+8>>2]=v[i+184>>2];v[c+12>>2]=a;a=v[i+196>>2];v[c+16>>2]=v[i+192>>2];v[c+20>>2]=a;a=v[i+204>>2];v[c+24>>2]=v[i+200>>2];v[c+28>>2]=a;a=v[i+212>>2];v[c+32>>2]=v[i+208>>2];v[c+36>>2]=a;a=v[i+220>>2];v[c+40>>2]=v[i+216>>2];v[c+44>>2]=a;a=v[i+228>>2];v[c+48>>2]=v[i+224>>2];v[c+52>>2]=a;a=v[i+236>>2];v[c+56>>2]=v[i+232>>2];v[c+60>>2]=a;a=v[i+244>>2];b=c- -64|0;v[b>>2]=v[i+240>>2];v[b+4>>2]=a;a=v[i+252>>2];v[c+72>>2]=v[i+248>>2];v[c+76>>2]=a;a=v[i+260>>2];v[c+80>>2]=v[i+256>>2];v[c+84>>2]=a;a=v[i+268>>2];v[c+88>>2]=v[i+264>>2];v[c+92>>2]=a;a=v[i+276>>2];v[c+96>>2]=v[i+272>>2];v[c+100>>2]=a;a=v[i+284>>2];v[c+104>>2]=v[i+280>>2];v[c+108>>2]=a;a=v[i+300>>2];v[c+120>>2]=v[i+296>>2];v[c+124>>2]=a;a=v[i+292>>2];v[c+112>>2]=v[i+288>>2];v[c+116>>2]=a;a=v[i+316>>2];v[c+136>>2]=v[i+312>>2];v[c+140>>2]=a;a=v[i+308>>2];v[c+128>>2]=v[i+304>>2];v[c+132>>2]=a;xa=i+512|0;xa=N+320|0}function _Y(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=C(g);h=h|0;i=i|0;j=j|0;k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,u=C(0),x=C(0),y=C(0),A=C(0),D=0,E=C(0),G=C(0),H=C(0),I=C(0),J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=0,da=0,ea=0,fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=0,Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=0,Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=0,Ya=0;b=xa-416|0;xa=b;t[b+32|0]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;j=v[a+40>>2];l=z[a+8>>2];n=z[a+12>>2];m=z[a+4>>2];v[b+188>>2]=0;z[b+184>>2]=n;z[b+180>>2]=l;z[b+176>>2]=m;D=v[a+16>>2];_=v[a+20>>2];s=v[a+28>>2];v[b+344>>2]=v[a+24>>2];v[b+348>>2]=s;v[b+336>>2]=D;v[b+340>>2]=_;v[b+144>>2]=j;v[b+152>>2]=v[j+40>>2]+B(w[j+39|0],20);t[b+156|0]=w[j+38|0];p=C(m*z[j+52>>2]);o=C(l*z[j+56>>2]);p=o>=p?p:o;o=C(n*z[j+60>>2]);p=o>=p?p:o;z[b+24>>2]=p*C(.02500000037252903);z[b+16>>2]=p*C(.10000000149011612);z[b+20>>2]=p*C(.05000000074505806);D=b+176|0;a=b+336|0;GV(D,a,b+48|0,b+96|0,b,m==C(1)&l==C(1)&n==C(1));v[b+148>>2]=v[j+44>>2];v[b+408>>2]=0;v[b+412>>2]=0;v[b+400>>2]=0;v[b+404>>2]=0;Ia=z[e+20>>2];x=z[f+20>>2];Ja=z[e+24>>2];u=z[f+24>>2];l=z[d+8>>2];n=z[d>>2];m=z[d+4>>2];p=z[d+12>>2];X=z[c+12>>2];$=z[c>>2];Ka=z[e+16>>2];A=z[f+16>>2];S=z[c+4>>2];T=z[c+8>>2];v[b+396>>2]=0;v[b+380>>2]=0;v[b+364>>2]=0;Fa=C(-$);o=C(A-Ka);q=C(x-Ia);r=C(u-Ja);y=C(C(C(Fa*o)-C(q*S))-C(T*r));ga=C(C(X*X)+C(-.5));G=C(C(C(X*C(C(S*o)-C($*q)))+C(ga*r))-C(T*y));z[b+392>>2]=G+G;G=C(C(C(ga*q)+C(X*C(C($*r)-C(T*o))))-C(S*y));z[b+388>>2]=G+G;s=b+384|0;o=C(C(C(ga*o)+C(X*C(C(T*q)-C(S*r))))-C($*y));z[s>>2]=o+o;q=C(C(C(m*T)-C(S*l))+C(C(n*X)-C(p*$)));o=C(q+q);r=C(C(C(l*$)-C(T*n))+C(C(m*X)-C(p*S)));y=C(r+r);G=C(C(1)-C(q*o));N=C(r*y);z[b+376>>2]=G-N;q=C(C(C(n*S)-C($*m))+C(C(l*X)-C(p*T)));P=C(q*y);l=C(C(p*X)-C(C(C(Fa*n)-C(m*S))-C(T*l)));n=C(l*o);z[b+372>>2]=P-n;m=C(q*o);p=C(l*y);z[b+368>>2]=m+p;z[b+360>>2]=P+n;n=C(q+q);q=C(q*n);z[b+356>>2]=G-q;o=C(r*o);l=C(l*n);z[b+352>>2]=o-l;v[b+348>>2]=0;z[b+344>>2]=m-p;z[b+340>>2]=o+l;z[b+336>>2]=C(C(1)-N)-q;m=z[c+20>>2];p=z[d+20>>2];l=z[c+24>>2];n=z[d+24>>2];o=z[c+16>>2];q=z[d+16>>2];v[b+332>>2]=0;Oa=C(n-u);l=C(C(l-Ja)-Oa);Pa=C(q-A);n=C(C(o-Ka)-Pa);Qa=C(p-x);m=C(C(m-Ia)-Qa);p=C(C(T*l)+C(C($*n)+C(S*m)));o=C(C(C(ga*l)-C(X*C(C($*m)-C(S*n))))+C(T*p));z[b+328>>2]=o+o;o=C(C(S*p)+C(C(ga*m)-C(X*C(C(T*n)-C(l*$)))));z[b+324>>2]=o+o;l=C(C($*p)+C(C(ga*n)-C(X*C(C(S*l)-C(m*T)))));z[b+320>>2]=l+l;v[b+256>>2]=0;v[b+176>>2]=142420;v[b+180>>2]=k;v[b+184>>2]=a;a=v[b+356>>2];v[b+208>>2]=v[b+352>>2];v[b+212>>2]=a;a=v[b+364>>2];v[b+216>>2]=v[b+360>>2];v[b+220>>2]=a;a=v[b+348>>2];v[b+200>>2]=v[b+344>>2];v[b+204>>2]=a;a=v[b+372>>2];v[b+224>>2]=v[b+368>>2];v[b+228>>2]=a;a=v[b+380>>2];v[b+232>>2]=v[b+376>>2];v[b+236>>2]=a;a=v[s+4>>2];v[b+240>>2]=v[s>>2];v[b+244>>2]=a;a=v[b+396>>2];v[b+248>>2]=v[b+392>>2];v[b+252>>2]=a;a=v[b+340>>2];v[b+192>>2]=v[b+336>>2];v[b+196>>2]=a;l=z[b+196>>2];z[b+196>>2]=z[b+208>>2];n=z[b+216>>2];m=z[b+200>>2];z[b+200>>2]=z[b+224>>2];z[b+216>>2]=z[b+228>>2];z[b+224>>2]=m;z[b+228>>2]=n;z[b+208>>2]=l;v[b+168>>2]=141216;v[b+172>>2]=b;Ga=C(34028234663852886e22);j=xa-288|0;xa=j;U=C(g+C(0));a=xa-272|0;xa=a;v[a+248>>2]=0;v[a+252>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;L=z[b+408>>2];M=z[b+404>>2];I=z[b+400>>2];ha=z[b+328>>2];H=z[b+324>>2];V=z[b+320>>2];v[a+224>>2]=1;c=v[D+8>>2];ba=z[c+52>>2];W=z[c+36>>2];O=z[c+20>>2];E=z[c+56>>2];Y=z[c+40>>2];Z=z[c+24>>2];d=v[D+4>>2];q=z[d+72>>2];r=z[d- -64>>2];y=z[d+68>>2];x=z[d+56>>2];u=z[d+52>>2];A=z[d+88>>2];R=z[D+56>>2];aa=z[D+24>>2];ia=z[D+40>>2];G=z[d+80>>2];ja=z[D+48>>2];na=z[D+32>>2];N=z[d+84>>2];oa=z[D+52>>2];ka=z[D+20>>2];pa=z[D+36>>2];qa=z[c+48>>2];ra=z[c+32>>2];sa=z[c>>2];ta=z[c+16>>2];ua=z[c+4>>2];va=z[c+8>>2];P=z[d+48>>2];la=z[D+16>>2];g=z[s+8>>2];l=z[s>>2];n=z[s+4>>2];La=b+168|0;e=La;c=v[e+4>>2];o=z[c+56>>2];ma=z[c+52>>2];wa=z[c+72>>2];k=c- -64|0;ya=z[k>>2];za=z[c+68>>2];m=z[c+88>>2];Aa=z[c+80>>2];Ba=z[c+84>>2];Ca=z[c+48>>2];f=0;v[a+172>>2]=0;fa=m;d=C(C(g*g)+C(C(l*l)+C(n*n)))>C(1.1920928955078125e-7);g=d?g:C(0);l=d?l:C(1);m=d?n:C(0);p=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(m*m))))));g=C(g*p);n=C(l*p);l=C(m*p);z[a+168>>2]=C(fa*g)+C(C(Aa*n)+C(Ba*l));z[a+164>>2]=C(wa*g)+C(C(ya*n)+C(l*za));z[a+160>>2]=C(o*g)+C(C(Ca*n)+C(l*ma));d=IV(c,a+160|0);ma=z[k>>2];wa=z[c+80>>2];ya=z[c+84>>2];za=z[c+52>>2];Aa=z[c+68>>2];Ba=z[c+88>>2];d=v[c+152>>2]+B(d,12)|0;m=z[d+8>>2];Ca=z[c+56>>2];p=z[d>>2];Ma=z[c+72>>2];o=z[d+4>>2];Da=z[c+48>>2];v[a+180>>2]=0;v[a+184>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+172>>2]=0;v[a+176>>2]=0;Ea=E;fa=q;n=C(-n);q=C(C(C(aa*n)-C(ia*l))-C(R*g));E=C(C(C(la*n)-C(na*l))-C(ja*g));g=C(C(C(ka*n)-C(pa*l))-C(oa*g));l=C(C(fa*q)+C(C(r*E)+C(y*g)));n=C(C(A*q)+C(C(G*E)+C(g*N)));c=l>n;g=C(C(x*q)+C(C(P*E)+C(g*u)));d=!(g>l)|!(g>n);g=d?c?fa:A:x;l=d?c?r:G:P;n=d?c?y:N:u;q=C(Ea+C(C(Y*g)+C(C(va*l)+C(Z*n))));y=C(C(Ba*m)+C(C(Ca*p)+C(o*Ma)));x=C(q-y);z[a+168>>2]=x;A=C(ba+C(C(W*g)+C(C(ua*l)+C(n*O))));G=C(C(ya*m)+C(C(za*p)+C(o*Aa)));u=C(A-G);z[a+164>>2]=u;g=C(qa+C(C(ra*g)+C(C(sa*l)+C(n*ta))));l=C(C(wa*m)+C(C(Da*p)+C(o*ma)));r=C(g-l);z[a+160>>2]=r;v[a+116>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+108>>2]=0;v[a+112>>2]=0;z[a+104>>2]=q;z[a+100>>2]=A;z[a+96>>2]=g;v[a+52>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;z[a+40>>2]=y;z[a+36>>2]=G;z[a+32>>2]=l;g=C(-x);l=C(-u);n=C(-r);A=C(C(x*x)+C(C(r*r)+C(u*u)));m=z[v[e+4>>2]+24>>2];m=C((mna)){m=n;o=l;q=g;N=C(0);y=r;p=u;G=x;break b}ba=C(m+U);oa=C(ba*ba);P=C(C(V*C(0))+I);E=C(C(H*C(0))+M);U=C(C(ha*C(0))+L);N=C(0);q=g;o=l;m=n;while(1){y=r;p=u;G=x;c=v[D+8>>2];ja=z[c+56>>2];ka=z[c+40>>2];pa=z[c+24>>2];ia=z[c+52>>2];qa=z[c+36>>2];ra=z[c+20>>2];d=v[D+4>>2];x=z[d+72>>2];u=z[d- -64>>2];I=z[d+68>>2];H=z[d+56>>2];V=z[d+52>>2];W=z[d+88>>2];O=z[d+80>>2];Y=z[d+84>>2];sa=z[c+8>>2];R=z[c+48>>2];aa=z[c+32>>2];ta=z[c>>2];ua=z[c+16>>2];va=z[c+4>>2];Z=z[d+48>>2];la=z[D+56>>2];ma=z[D+24>>2];wa=z[D+40>>2];ya=z[D+48>>2];za=z[D+16>>2];Aa=z[D+32>>2];Ba=z[D+52>>2];Ca=z[D+20>>2];Ma=z[D+36>>2];c=v[e+4>>2];Da=z[c+52>>2];Na=z[c+56>>2];Sa=z[c+72>>2];k=c- -64|0;Ta=z[k>>2];Ua=z[c+68>>2];Va=z[c+88>>2];r=z[c+80>>2];L=z[c+84>>2];Wa=z[c+48>>2];v[a+268>>2]=0;fa=r;M=C(C(1)/C(K(C(C(g*g)+C(C(n*n)+C(l*l))))));r=C(n*M);ha=C(-r);Ea=L;L=C(l*M);M=C(g*M);z[a+264>>2]=C(C(fa*ha)-C(Ea*L))-C(Va*M);z[a+260>>2]=C(C(Ta*ha)-C(Ua*L))-C(Sa*M);z[a+256>>2]=C(C(Wa*ha)-C(Da*L))-C(Na*M);_=IV(c,a+256|0);Ea=R;Da=aa;fa=x;Na=W;x=C(C(la*M)+C(C(ma*r)+C(L*wa)));R=C(C(ya*M)+C(C(za*r)+C(L*Aa)));aa=C(C(Ba*M)+C(C(Ca*r)+C(L*Ma)));la=C(C(fa*x)+C(C(u*R)+C(I*aa)));W=C(C(W*x)+C(C(O*R)+C(aa*Y)));d=la>W;x=C(C(H*x)+C(C(Z*R)+C(aa*V)));f=!(x>la)|!(x>W);x=f?d?fa:Na:H;u=f?d?u:O:Z;I=f?d?I:Y:V;W=C(Ea+C(C(Da*x)+C(C(ta*u)+C(ua*I))));d=v[c+152>>2]+B(_,12)|0;O=z[d+8>>2];Y=z[d>>2];Z=z[d+4>>2];R=C(P+C(C(z[c+80>>2]*O)+C(C(z[c+48>>2]*Y)+C(Z*z[k>>2]))));H=C(W-R);aa=C(ia+C(C(qa*x)+C(C(va*u)+C(I*ra))));ia=C(E+C(C(z[c+84>>2]*O)+C(C(z[c+52>>2]*Y)+C(Z*z[c+68>>2]))));V=C(aa-ia);ja=C(ja+C(C(ka*x)+C(C(sa*u)+C(I*pa))));O=C(U+C(C(z[c+88>>2]*O)+C(C(z[c+56>>2]*Y)+C(Z*z[c+72>>2]))));I=C(ja-O);x=C(C(C(C(r*C(-H))-C(L*V))-C(M*I))-ba);if(x>C(0)){c=0;u=z[b+328>>2];Y=z[b+320>>2];Z=z[b+324>>2];ka=C(C(M*u)+C(C(r*Y)+C(L*Z)));if(ka>=C(0)){break a}r=N;N=C(r-C(x/ka));if(N>r){if(N>C(1)){break a}q=z[b+408>>2];o=z[b+404>>2];m=z[b+400>>2];v[a+76>>2]=0;v[a+60>>2]=0;v[a+44>>2]=0;r=C(m+C(Y*N));m=C(r-P);A=C(m+z[a+64>>2]);z[a+64>>2]=A;x=C(o+C(Z*N));o=C(x-E);P=C(o+z[a+68>>2]);z[a+68>>2]=P;u=C(q+C(u*N));q=C(u-U);E=C(q+z[a+72>>2]);z[a+72>>2]=E;U=C(m+z[a+48>>2]);z[a+48>>2]=U;I=C(o+z[a+52>>2]);z[a+52>>2]=I;H=C(q+z[a+56>>2]);z[a+56>>2]=H;m=C(m+z[a+32>>2]);z[a+32>>2]=m;o=C(o+z[a+36>>2]);z[a+36>>2]=o;q=C(q+z[a+40>>2]);z[a+40>>2]=q;V=z[a+96>>2];O=z[a+100>>2];Y=z[a+104>>2];v[a+172>>2]=0;z[a+168>>2]=Y-q;z[a+164>>2]=O-o;z[a+160>>2]=V-m;m=z[a+112>>2];o=z[a+116>>2];q=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=q-H;z[a+180>>2]=o-I;z[a+176>>2]=m-U;m=z[a+128>>2];o=z[a+132>>2];q=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=q-E;z[a+196>>2]=o-P;z[a+192>>2]=m-A;c=v[e+4>>2];q=z[c+56>>2];A=z[c+52>>2];P=z[c+72>>2];f=c- -64|0;E=z[f>>2];U=z[c+68>>2];m=z[c+88>>2];o=z[c+80>>2];I=z[c+84>>2];H=z[c+48>>2];v[a+268>>2]=0;R=m;m=C(-M);fa=C(o*ha);o=C(-L);z[a+264>>2]=C(R*m)+C(fa+C(I*o));z[a+260>>2]=C(P*m)+C(C(E*ha)+C(U*o));z[a+256>>2]=C(q*m)+C(C(H*ha)+C(A*o));d=IV(c,a+256|0);d=v[c+152>>2]+B(d,12)|0;m=z[d+8>>2];o=z[d>>2];q=z[d+4>>2];O=C(u+C(C(z[c+88>>2]*m)+C(C(z[c+56>>2]*o)+C(q*z[c+72>>2]))));I=C(ja-O);ia=C(x+C(C(z[c+84>>2]*m)+C(C(z[c+52>>2]*o)+C(q*z[c+68>>2]))));V=C(aa-ia);R=C(r+C(C(z[c+80>>2]*m)+C(C(z[c+48>>2]*o)+C(q*z[f>>2]))));H=C(W-R);m=n;o=l;q=g;P=r;E=x;U=u;g=C(34028234663852886e22)}else{g=A}}else{g=A}L=g;d=v[a+224>>2];f=d<<4;c=f+(a+96|0)|0;v[c+12>>2]=0;z[c+8>>2]=ja;z[c+4>>2]=aa;z[c>>2]=W;c=f+(a+32|0)|0;v[c+12>>2]=0;z[c+8>>2]=O;z[c+4>>2]=ia;z[c>>2]=R;c=f+(a+160|0)|0;v[c+12>>2]=0;z[c+8>>2]=I;z[c+4>>2]=V;z[c>>2]=H;v[a+224>>2]=d+1;c:{d:{switch(d-1|0){case 0:r=z[a+168>>2];g=C(z[a+184>>2]-r);x=z[a+160>>2];l=C(z[a+176>>2]-x);u=z[a+164>>2];n=C(z[a+180>>2]-u);A=C(C(g*g)+C(C(l*l)+C(n*n)));if(A<=C(1.1920928955078125e-7)){v[a+224>>2]=1;c=v[a+164>>2];v[a+256>>2]=v[a+160>>2];v[a+260>>2]=c;c=v[a+172>>2];v[a+264>>2]=v[a+168>>2];v[a+268>>2]=c;break c}H=g;g=C(F(C(C(C(C(C(-x)*l)-C(n*u))-C(r*g))/A),C(1)));g=g>C(0)?g:C(0);z[a+264>>2]=r+C(H*g);z[a+260>>2]=u+C(n*g);z[a+256>>2]=x+C(l*g);break c;case 1:KV(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;case 2:O_(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;default:break d}}z[a+264>>2]=I;z[a+260>>2]=V;z[a+256>>2]=H}x=z[a+264>>2];g=C(-x);u=z[a+260>>2];l=C(-u);r=z[a+256>>2];n=C(-r);A=C(C(x*x)+C(C(r*r)+C(u*u)));if(oa>2]+32|0];P=C(0);I=C(0);d=!(A>na)|f;g=d?q:g;n=d?m:n;l=d?o:l;m=C(K(C(C(g*g)+C(C(n*n)+C(l*l)))));if(!(m<=C(1.1920928955078125e-7))){o=g;g=C(C(1)/m);Ha=C(o*g);I=C(n*g);P=C(l*g)}v[j+268>>2]=0;z[j+264>>2]=-Ha;z[j+260>>2]=-P;z[j+256>>2]=-I;z[j+240>>2]=N;v[j+252>>2]=v[a+236>>2];d=v[a+232>>2];v[j+244>>2]=v[a+228>>2];v[j+248>>2]=d;v[a+268>>2]=0;z[a+264>>2]=f?G:x;z[a+260>>2]=f?p:u;z[a+256>>2]=f?y:r;d=v[a+252>>2];f=v[a+248>>2];v[a+24>>2]=f;v[a+28>>2]=d;e=v[a+244>>2];k=v[a+240>>2];v[a+16>>2]=k;v[a+20>>2]=e;v[a+8>>2]=f;v[a+12>>2]=d;v[a>>2]=k;v[a+4>>2]=e;JV(a+160|0,a+96|0,a+32|0,a+256|0,a+16|0,a,v[a+224>>2]);g=z[v[D+4>>2]+16>>2];l=z[a+16>>2];n=z[a+20>>2];m=z[a+24>>2];v[j+284>>2]=0;z[j+280>>2]=m+(c?C(Ha*g):C(-0));z[j+276>>2]=n+(c?C(P*g):C(-0));z[j+272>>2]=l+(c?C(I*g):C(-0));c=1}xa=a+272|0;a=c;if(c){c=v[j+244>>2];v[b+304>>2]=v[j+240>>2];v[b+308>>2]=c;c=v[j+252>>2];v[b+312>>2]=v[j+248>>2];v[b+316>>2]=c;if(z[j+240>>2]==C(0)){d=v[D+4>>2];e=v[La+4>>2];z[j+224>>2]=C(z[d+16>>2]+z[e+16>>2])*C(100);t[j+215|0]=0;v[j+168>>2]=0;v[j+172>>2]=0;v[j+160>>2]=0;v[j+164>>2]=0;v[j+152>>2]=0;v[j+156>>2]=0;v[j+144>>2]=0;v[j+148>>2]=0;v[j+136>>2]=0;v[j+140>>2]=0;v[j+128>>2]=0;v[j+132>>2]=0;v[j+192>>2]=0;c=v[D+8>>2];v[j+56>>2]=c;v[j+48>>2]=142420;v[j+52>>2]=d;d=v[c+12>>2];v[j+72>>2]=v[c+8>>2];v[j+76>>2]=d;d=v[c+20>>2];v[j+80>>2]=v[c+16>>2];v[j+84>>2]=d;d=v[c+28>>2];v[j+88>>2]=v[c+24>>2];v[j+92>>2]=d;d=v[c+36>>2];v[j+96>>2]=v[c+32>>2];v[j+100>>2]=d;d=v[c+44>>2];v[j+104>>2]=v[c+40>>2];v[j+108>>2]=d;d=v[c+52>>2];v[j+112>>2]=v[c+48>>2];v[j+116>>2]=d;d=v[c+60>>2];v[j+120>>2]=v[c+56>>2];v[j+124>>2]=d;d=v[c+4>>2];v[j+64>>2]=v[c>>2];v[j+68>>2]=d;g=z[j+68>>2];z[j+68>>2]=z[j+80>>2];l=z[j+88>>2];n=z[j+72>>2];z[j+72>>2]=z[j+96>>2];z[j+80>>2]=g;z[j+96>>2]=n;z[j+88>>2]=z[j+100>>2];z[j+100>>2]=l;v[j+40>>2]=141216;v[j+44>>2]=e;k=j+220|0;_=j+216|0;c=0;f=xa-320|0;xa=f;e=v[j+44>>2];g=z[e+20>>2];ea=v[j+52>>2];l=z[ea+20>>2];q=z[j+224>>2];Xa=w[ea+32|0];x=z[ea+16>>2];Ya=w[e+32|0];u=z[e+16>>2];v[f+28>>2]=0;P=C((g>2];while(1){d=J<<2;ca=w[k+J|0];v[d+(f+48|0)>>2]=ca;Q=d+(f+32|0)|0;d=w[J+_|0];v[Q>>2]=d;d=v[e+152>>2]+B(d,12)|0;g=z[d+8>>2];l=z[d>>2];n=z[d+4>>2];d=ea+(ca<<4)|0;m=z[d+56>>2];p=z[d+48>>2];o=z[d+52>>2];r=z[e+80>>2];y=z[e+48>>2];A=z[e+64>>2];G=z[e+84>>2];N=z[e+52>>2];E=z[e+68>>2];U=z[e+88>>2];L=z[e+56>>2];M=z[e+72>>2];I=z[s+48>>2];ha=z[s+32>>2];H=z[s>>2];V=z[s+16>>2];ba=z[s+52>>2];W=z[s+36>>2];O=z[s+4>>2];Y=z[s+20>>2];Z=z[s+56>>2];R=z[s+40>>2];aa=z[s+8>>2];ia=z[s+24>>2];d=c;Q=c<<4;ca=Q+(f+128|0)|0;v[ca+12>>2]=0;da=Q+(f- -64|0)|0;v[da+12>>2]=0;Q=Q+(f+192|0)|0;v[Q+12>>2]=0;Z=C(Z+C(C(R*m)+C(C(aa*p)+C(o*ia))));z[ca+8>>2]=Z;ba=C(ba+C(C(W*m)+C(C(O*p)+C(o*Y))));z[ca+4>>2]=ba;m=C(I+C(C(ha*m)+C(C(H*p)+C(o*V))));z[ca>>2]=m;p=C(C(U*g)+C(C(L*l)+C(n*M)));z[da+8>>2]=p;o=C(C(G*g)+C(C(N*l)+C(n*E)));z[da+4>>2]=o;g=C(C(r*g)+C(C(y*l)+C(n*A)));z[da>>2]=g;l=C(Z-p);z[Q+8>>2]=l;n=C(ba-o);z[Q+4>>2]=n;g=C(m-g);z[Q>>2]=g;c=c+1|0;v[f+28>>2]=c;J=J+1|0;if((Ra|0)!=(J|0)){continue}break}k:{l:{switch(d-1|0){case 0:m=z[f+200>>2];g=C(z[f+216>>2]-m);p=z[f+192>>2];l=C(z[f+208>>2]-p);o=z[f+196>>2];n=C(z[f+212>>2]-o);r=C(C(g*g)+C(C(l*l)+C(n*n)));if(!(r<=C(1.1920928955078125e-7))){break k}v[f+28>>2]=1;c=v[f+196>>2];v[f+304>>2]=v[f+192>>2];v[f+308>>2]=c;c=v[f+204>>2];v[f+312>>2]=v[f+200>>2];v[f+316>>2]=c;break i;case 1:jY(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}}Q_(f+304|0,f+192|0,f+128|0,f- -64|0,f+48|0,f+32|0,f+28|0);break i}v[f+316>>2]=0;y=g;g=C(F(C(C(C(C(C(-p)*l)-C(n*o))-C(m*g))/r),C(1)));g=g>C(0)?g:C(0);z[f+312>>2]=m+C(y*g);z[f+308>>2]=o+C(n*g);z[f+304>>2]=p+C(l*g);break i}g=z[s+8>>2];n=z[s>>2];l=z[s+4>>2];v[f+268>>2]=0;c=C(C(g*g)+C(C(n*n)+C(l*l)))>C(0);g=c?g:C(0);z[f+264>>2]=g;l=c?l:C(0);z[f+260>>2]=l;n=c?n:C(1);z[f+256>>2]=n;p=C(C(1)/C(K(C(C(g*g)+C(C(n*n)+C(l*l))))));r=C(g*p);y=C(n*p);m=C(34028234663852886e22);p=C(l*p);break h}v[f+316>>2]=0;z[f+312>>2]=l;z[f+308>>2]=n;z[f+304>>2]=g}c=v[f+308>>2];v[f+256>>2]=v[f+304>>2];v[f+260>>2]=c;c=v[f+316>>2];v[f+264>>2]=v[f+312>>2];v[f+268>>2]=c;g=z[f+264>>2];n=z[f+256>>2];l=z[f+260>>2];m=C(K(C(C(g*g)+C(C(n*n)+C(l*l)))));if(!(P>2]=v[f+296>>2];c=v[f+292>>2];v[f+272>>2]=v[f+288>>2];v[f+276>>2]=c;c=v[j+56>>2];ha=z[f+268>>2];s=v[f+28>>2]<<2;d=v[j+52>>2];U=z[d+72>>2];m=C(-n);u=C(C(C(z[j+72>>2]*m)-C(z[j+88>>2]*l))-C(z[j+104>>2]*g));L=z[d- -64>>2];q=g;E=C(C(C(z[j+64>>2]*m)-C(z[j+80>>2]*l))-C(z[j+96>>2]*g));x=l;m=C(C(C(z[j+68>>2]*m)-C(z[j+84>>2]*l))-C(z[j+100>>2]*g));M=z[d+68>>2];H=C(C(U*u)+C(C(L*E)+C(m*M)));V=z[d+88>>2];ba=z[d+80>>2];W=z[d+84>>2];O=C(C(V*u)+C(C(ba*E)+C(m*W)));e=H>O;R=H;H=z[d+56>>2];Y=z[d+48>>2];aa=m;m=z[d+52>>2];u=C(C(H*u)+C(C(Y*E)+C(aa*m)));d=!(RO);v[s+(f+48|0)>>2]=d?e?1:2:0;E=z[c+56>>2];O=z[c+40>>2];Z=z[c+24>>2];R=z[c+52>>2];aa=z[c+36>>2];ia=z[c+20>>2];ja=z[c+8>>2];Ha=z[c+48>>2];na=z[c+32>>2];oa=z[c>>2];ka=z[c+16>>2];pa=z[c+4>>2];c=v[j+44>>2];qa=z[c+56>>2];ra=z[c+52>>2];sa=z[c+72>>2];J=c- -64|0;ta=z[J>>2];ua=z[c+68>>2];u=z[c+88>>2];va=z[c+80>>2];la=z[c+84>>2];ma=z[c+48>>2];v[f+316>>2]=0;fa=C(u*g);u=n;z[f+312>>2]=fa+C(C(va*n)+C(l*la));z[f+308>>2]=C(sa*g)+C(C(ta*n)+C(l*ua));z[f+304>>2]=C(qa*g)+C(C(ma*n)+C(l*ra));Q=s+(f+32|0)|0;s=IV(c,f+304|0);v[Q>>2]=s;g=d?e?U:V:H;l=d?e?L:ba:Y;n=d?e?M:W:m;H=C(E+C(C(O*g)+C(C(ja*l)+C(Z*n))));d=v[c+152>>2]+B(s,12)|0;m=z[d+8>>2];E=z[d>>2];U=z[d+4>>2];V=C(C(z[c+88>>2]*m)+C(C(z[c+56>>2]*E)+C(U*z[c+72>>2])));L=C(H-V);ba=C(Ha+C(C(na*g)+C(C(oa*l)+C(n*ka))));W=C(C(z[c+80>>2]*m)+C(C(z[c+48>>2]*E)+C(U*z[J>>2])));M=C(ba-W);l=C(R+C(C(aa*g)+C(C(pa*l)+C(n*ia))));n=C(C(z[c+84>>2]*m)+C(C(z[c+52>>2]*E)+C(U*z[c+68>>2])));g=C(l-n);m=C(C(r*L)+C(C(y*M)+C(p*g)));if(m>I){c=0;if(!k){break e}e=v[f+28>>2];t[j+215|0]=e;if(!e){break e}d=0;if((e|0)!=1){ca=e&-2;J=0;while(1){s=d<<2;da=f+48|0;t[d+k|0]=v[s+da>>2];Q=f+32|0;t[d+_|0]=v[Q+s>>2];s=d|1;ea=s<<2;t[k+s|0]=v[ea+da>>2];t[s+_|0]=v[ea+Q>>2];d=d+2|0;J=J+2|0;if((ca|0)!=(J|0)){continue}break}}if(!(e&1)){break e}e=d<<2;t[d+k|0]=v[e+(f+48|0)>>2];t[d+_|0]=v[e+(f+32|0)>>2];break e}c=v[f+28>>2];if(m>C(o*C(.9997749924659729))){m:{if(!k){break m}t[j+215|0]=c;if(!c){break m}e=0;if((c|0)!=1){ea=c&-2;s=0;while(1){d=e<<2;ca=f+48|0;t[e+k|0]=v[d+ca>>2];da=f+32|0;t[e+_|0]=v[da+d>>2];d=e|1;J=d<<2;t[d+k|0]=v[J+ca>>2];t[d+_|0]=v[J+da>>2];e=e+2|0;s=s+2|0;if((ea|0)!=(s|0)){continue}break}}if(!(c&1)){break m}d=e<<2;t[e+k|0]=v[d+(f+48|0)>>2];t[e+_|0]=v[d+(f+32|0)>>2]}z[j+160>>2]=y;v[j+172>>2]=0;z[j+168>>2]=r;z[j+164>>2]=p;JV(f+192|0,f+128|0,f- -64|0,f+256|0,f+304|0,f,c);g=z[f+304>>2];l=z[f+308>>2];n=z[f+312>>2];v[j+140>>2]=0;z[j+136>>2]=n-C(A*r);z[j+132>>2]=l-C(A*p);z[j+128>>2]=g-C(A*y);g=z[f>>2];l=z[f+4>>2];n=z[f+8>>2];v[j+156>>2]=0;z[j+152>>2]=n+C(G*r);z[j+148>>2]=l+C(G*p);z[j+144>>2]=g+C(G*y);z[j+192>>2]=o-N;c=2;break e}e=c<<4;d=e+(f+128|0)|0;v[d+12>>2]=0;z[d+8>>2]=H;z[d+4>>2]=l;z[d>>2]=ba;d=e+(f- -64|0)|0;v[d+12>>2]=0;z[d+8>>2]=V;z[d+4>>2]=n;z[d>>2]=W;d=e+(f+192|0)|0;v[d+12>>2]=0;z[d+8>>2]=L;z[d+4>>2]=g;z[d>>2]=M;v[f+28>>2]=c+1;n:{o:{switch(c-1|0){case 0:m=z[f+200>>2];g=C(z[f+216>>2]-m);p=z[f+192>>2];l=C(z[f+208>>2]-p);r=z[f+196>>2];n=C(z[f+212>>2]-r);y=C(C(g*g)+C(C(l*l)+C(n*n)));if(y<=C(1.1920928955078125e-7)){v[f+28>>2]=1;c=v[f+196>>2];v[f+304>>2]=v[f+192>>2];v[f+308>>2]=c;c=v[f+204>>2];v[f+312>>2]=v[f+200>>2];v[f+316>>2]=c;break n}v[f+316>>2]=0;E=g;g=C(F(C(C(C(C(C(-p)*l)-C(n*r))-C(m*g))/y),C(1)));g=g>C(0)?g:C(0);z[f+312>>2]=m+C(E*g);z[f+308>>2]=r+C(n*g);z[f+304>>2]=p+C(l*g);break n;case 1:jY(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:Q_(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}}v[f+316>>2]=0;z[f+312>>2]=L;z[f+308>>2]=g;z[f+304>>2]=M}c=v[f+308>>2];v[f+256>>2]=v[f+304>>2];v[f+260>>2]=c;c=v[f+316>>2];v[f+264>>2]=v[f+312>>2];v[f+268>>2]=c;g=z[f+264>>2];n=z[f+256>>2];l=z[f+260>>2];m=C(K(C(C(g*g)+C(C(n*n)+C(l*l)))));y=C(C(1)/m);r=C(g*y);p=C(l*y);y=C(n*y);if(mP){continue}break}e=v[f+28>>2];if(!(m>2];Q=f+32|0;t[d+_|0]=v[Q+J>>2];J=d|1;ea=J<<2;t[k+J|0]=v[ea+da>>2];t[J+_|0]=v[ea+Q>>2];d=d+2|0;s=s+2|0;if((ca|0)!=(s|0)){continue}break}}if(!(c&1)){break p}c=d<<2;t[d+k|0]=v[c+(f+48|0)>>2];t[d+_|0]=v[c+(f+32|0)>>2]}v[f+296>>2]=v[f+280>>2];c=v[f+276>>2];v[f+288>>2]=v[f+272>>2];v[f+292>>2]=c;z[f+268>>2]=ha;z[f+256>>2]=u;z[f+260>>2]=x;z[f+264>>2]=q;JV(f+192|0,f+128|0,f- -64|0,f+256|0,f+304|0,f,e);v[j+188>>2]=0;z[j+184>>2]=r;z[j+180>>2]=p;z[j+176>>2]=y;v[j+172>>2]=0;g=C(C(1)/o);l=C(q*g);z[j+168>>2]=l;n=C(x*g);z[j+164>>2]=n;g=C(u*g);z[j+160>>2]=g;m=z[f+304>>2];p=z[f+308>>2];q=z[f+312>>2];v[j+140>>2]=0;z[j+136>>2]=q-C(A*l);z[j+132>>2]=p-C(A*n);z[j+128>>2]=m-C(A*g);m=z[f>>2];p=z[f+4>>2];q=z[f+8>>2];z[j+192>>2]=o-N;v[j+156>>2]=0;z[j+152>>2]=q+C(G*l);z[j+148>>2]=p+C(G*n);z[j+144>>2]=m+C(G*g);c=2;if(o<=N){break e}c=4;break e}if(k){break f}c=5;break e}e=v[f+28>>2]}t[j+215|0]=e;c=5;if(!e){break e}d=0;if((e|0)!=1){ca=e&-2;J=0;while(1){s=d<<2;da=f+48|0;t[d+k|0]=v[s+da>>2];Q=f+32|0;t[d+_|0]=v[Q+s>>2];s=d|1;ea=s<<2;t[k+s|0]=v[ea+da>>2];t[s+_|0]=v[ea+Q>>2];d=d+2|0;J=J+2|0;if((ca|0)!=(J|0)){continue}break}}if(!(e&1)){break e}e=d<<2;t[d+k|0]=v[e+(f+48|0)>>2];t[d+_|0]=v[e+(f+32|0)>>2]}xa=f+320|0;q:{r:{if(c-5|0){break r}v[j+16>>2]=1065353216;c=v[j+28>>2];v[j+8>>2]=v[j+24>>2];v[j+12>>2]=c;c=v[j+20>>2];v[j>>2]=v[j+16>>2];v[j+4>>2]=c;if(K_(D,La,j+220|0,j+216|0,w[j+215|0],0,j,j+128|0)-5>>>0<=1){break r}v[j+280>>2]=0;v[j+284>>2]=0;v[j+272>>2]=0;v[j+276>>2]=0;g=z[b+328>>2];l=z[b+320>>2];n=z[b+324>>2];v[j+268>>2]=0;m=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(n*n))))));z[j+264>>2]=m*C(-g);z[j+260>>2]=m*C(-n);z[j+256>>2]=m*C(-l);g=C(0);break q}c=v[j+140>>2];v[j+280>>2]=v[j+136>>2];v[j+284>>2]=c;c=v[j+132>>2];v[j+272>>2]=v[j+128>>2];v[j+276>>2]=c;c=v[j+164>>2];v[j+256>>2]=v[j+160>>2];v[j+260>>2]=c;c=v[j+172>>2];v[j+264>>2]=v[j+168>>2];v[j+268>>2]=c;g=z[j+192>>2]}z[b+304>>2]=g>2];v[b+288>>2]=v[j+272>>2];v[b+292>>2]=c;c=v[j+284>>2];v[b+296>>2]=v[j+280>>2];v[b+300>>2]=c;c=v[j+260>>2];v[b+272>>2]=v[j+256>>2];v[b+276>>2]=c;c=v[j+268>>2];v[b+280>>2]=v[j+264>>2];v[b+284>>2]=c}xa=j+288|0;if(a){Ga=z[b+304>>2];g=z[b+296>>2];l=z[b+288>>2];n=z[b+292>>2];m=z[b+280>>2];p=z[b+272>>2];o=z[b+276>>2];q=C(C(T*m)+C(C($*p)+C(S*o)));r=C(-S);y=C(C(C(X*C(C($*o)+C(p*r)))+C(ga*m))+C(T*q));z[h+8>>2]=y+y;y=C(C(S*q)+C(C(ga*o)+C(X*C(C(T*p)+C(m*Fa)))));z[h+4>>2]=y+y;x=o;o=C(-T);m=C(C($*q)+C(C(ga*p)+C(X*C(C(S*m)+C(x*o)))));z[h>>2]=m+m;m=Ga>C(0)?Ga:C(0);p=C(C(T*g)+C(C($*l)+C(S*n)));q=C(C(C(X*C(C($*n)+C(l*r)))+C(ga*g))+C(T*p));z[i+8>>2]=C(Oa*m)+C(Ja+C(q+q));q=C(C(S*p)+C(C(ga*n)+C(X*C(C(T*l)+C(g*Fa)))));z[i+4>>2]=C(Qa*m)+C(Ia+C(q+q));g=C(C($*p)+C(C(ga*l)+C(X*C(C(S*g)+C(n*o)))));z[i>>2]=C(Pa*m)+C(Ka+C(g+g))}xa=b+416|0;return C(Ga)}function TY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),x=C(0),y=C(0),A=0,D=0,E=C(0),G=C(0),H=C(0),I=C(0),J=0,L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=0,Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=0,Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=0,Va=0;k=xa-512|0;xa=k;b=v[b>>2];D=v[a>>2];v[k+168>>2]=0;v[k+172>>2]=0;v[k+160>>2]=0;v[k+164>>2]=0;v[k+188>>2]=4;j=z[D+4>>2];l=z[D+8>>2];v[k+236>>2]=0;v[k+220>>2]=0;m=C(l*C(0));z[k+216>>2]=m;z[k+212>>2]=m;m=C(-m);z[k+232>>2]=m;z[k+228>>2]=m;z[k+240>>2]=j;z[k+208>>2]=l;t[k+192|0]=1;z[k+184>>2]=j;z[k+180>>2]=j;z[k+176>>2]=j;z[k+224>>2]=-l;t[k+32|0]=0;v[k+24>>2]=0;v[k+28>>2]=0;v[k+16>>2]=0;v[k+20>>2]=0;v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;a=v[b+40>>2];j=z[b+8>>2];l=z[b+12>>2];m=z[b+4>>2];v[k+284>>2]=0;z[k+280>>2]=l;z[k+276>>2]=j;z[k+272>>2]=m;A=v[b+16>>2];_=v[b+20>>2];r=v[b+28>>2];v[k+440>>2]=v[b+24>>2];v[k+444>>2]=r;v[k+432>>2]=A;v[k+436>>2]=_;v[k+144>>2]=a;v[k+152>>2]=v[a+40>>2]+B(w[a+39|0],20);t[k+156|0]=w[a+38|0];o=C(m*z[a+52>>2]);n=C(j*z[a+56>>2]);o=n>=o?o:n;n=C(l*z[a+60>>2]);o=n>=o?o:n;z[k+24>>2]=o*C(.02500000037252903);z[k+16>>2]=o*C(.10000000149011612);z[k+20>>2]=o*C(.05000000074505806);A=k+272|0;b=k+432|0;GV(A,b,k+48|0,k+96|0,k,m==C(1)&j==C(1)&l==C(1));v[k+148>>2]=v[a+44>>2];V=z[D+4>>2];v[k+504>>2]=0;v[k+508>>2]=0;v[k+496>>2]=0;v[k+500>>2]=0;Da=z[f+20>>2];u=z[e+20>>2];Ea=z[f+24>>2];s=z[e+24>>2];j=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];o=z[c+12>>2];W=z[d+12>>2];Z=z[d>>2];Fa=z[f+16>>2];y=z[e+16>>2];S=z[d+4>>2];T=z[d+8>>2];v[k+492>>2]=0;v[k+476>>2]=0;v[k+460>>2]=0;za=C(-Z);n=C(y-Fa);p=C(u-Da);q=C(s-Ea);x=C(C(C(za*n)-C(p*S))-C(T*q));ba=C(C(W*W)+C(-.5));G=C(C(C(W*C(C(S*n)-C(Z*p)))+C(ba*q))-C(T*x));z[k+488>>2]=G+G;G=C(C(C(ba*p)+C(W*C(C(Z*q)-C(T*n))))-C(S*x));z[k+484>>2]=G+G;r=k+480|0;n=C(C(C(ba*n)+C(W*C(C(T*p)-C(S*q))))-C(Z*x));z[r>>2]=n+n;p=C(C(C(m*T)-C(S*j))+C(C(l*W)-C(o*Z)));n=C(p+p);q=C(C(C(j*Z)-C(T*l))+C(C(m*W)-C(o*S)));x=C(q+q);G=C(C(1)-C(p*n));H=C(q*x);z[k+472>>2]=G-H;p=C(C(C(l*S)-C(Z*m))+C(C(j*W)-C(o*T)));U=C(p*x);j=C(C(o*W)-C(C(C(za*l)-C(m*S))-C(T*j)));l=C(j*n);z[k+468>>2]=U-l;m=C(p*n);o=C(j*x);z[k+464>>2]=m+o;z[k+456>>2]=U+l;l=C(p+p);p=C(p*l);z[k+452>>2]=G-p;n=C(q*n);j=C(j*l);z[k+448>>2]=n-j;v[k+444>>2]=0;z[k+440>>2]=m-o;z[k+436>>2]=n+j;z[k+432>>2]=C(C(1)-H)-p;m=z[d+20>>2];o=z[c+20>>2];j=z[d+24>>2];l=z[c+24>>2];n=z[d+16>>2];p=z[c+16>>2];v[k+428>>2]=0;La=C(l-s);j=C(C(j-Ea)-La);Ma=C(p-y);l=C(C(n-Fa)-Ma);Na=C(o-u);m=C(C(m-Da)-Na);o=C(C(T*j)+C(C(Z*l)+C(S*m)));n=C(C(C(ba*j)-C(W*C(C(Z*m)-C(S*l))))+C(T*o));z[k+424>>2]=n+n;n=C(C(S*o)+C(C(ba*m)-C(W*C(C(T*l)-C(j*Z)))));z[k+420>>2]=n+n;j=C(C(Z*o)+C(C(ba*l)-C(W*C(C(S*j)-C(m*T)))));z[k+416>>2]=j+j;v[k+352>>2]=0;v[k+272>>2]=142372;v[k+280>>2]=b;v[k+276>>2]=k+160;a=v[k+452>>2];v[k+304>>2]=v[k+448>>2];v[k+308>>2]=a;a=v[k+460>>2];v[k+312>>2]=v[k+456>>2];v[k+316>>2]=a;a=v[k+444>>2];v[k+296>>2]=v[k+440>>2];v[k+300>>2]=a;a=v[k+468>>2];v[k+320>>2]=v[k+464>>2];v[k+324>>2]=a;a=v[k+476>>2];v[k+328>>2]=v[k+472>>2];v[k+332>>2]=a;a=v[r+4>>2];v[k+336>>2]=v[r>>2];v[k+340>>2]=a;a=v[k+492>>2];v[k+344>>2]=v[k+488>>2];v[k+348>>2]=a;a=v[k+436>>2];v[k+288>>2]=v[k+432>>2];v[k+292>>2]=a;j=z[k+292>>2];z[k+292>>2]=z[k+304>>2];l=z[k+312>>2];m=z[k+296>>2];z[k+296>>2]=z[k+320>>2];z[k+312>>2]=z[k+324>>2];z[k+320>>2]=m;z[k+324>>2]=l;z[k+304>>2]=j;v[k+264>>2]=141216;v[k+268>>2]=k;Aa=C(34028234663852886e22);e=xa-288|0;xa=e;V=C(C(V+g)+C(0));a=xa-272|0;xa=a;v[a+248>>2]=0;v[a+252>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;G=z[k+504>>2];U=z[k+500>>2];H=z[k+496>>2];$=z[k+424>>2];I=z[k+420>>2];M=z[k+416>>2];v[a+224>>2]=1;b=v[A+8>>2];E=z[b+52>>2];ca=z[b+36>>2];P=z[b+20>>2];X=z[b+56>>2];da=z[b+40>>2];ea=z[b+24>>2];c=v[A+4>>2];p=z[c+56>>2];q=z[c+52>>2];x=z[c+72>>2];L=z[A+56>>2];O=z[A+24>>2];R=z[A+40>>2];fa=z[A+48>>2];ha=z[A+32>>2];u=z[c+68>>2];ga=z[A+52>>2];ja=z[A+20>>2];ma=z[A+36>>2];na=z[b+48>>2];ka=z[b+32>>2];oa=z[b>>2];pa=z[b+16>>2];qa=z[b+4>>2];Ga=z[b+8>>2];s=z[c+48>>2];y=z[c+64>>2];Ha=z[A+16>>2];g=z[r+8>>2];j=z[r>>2];l=z[r+4>>2];Ia=k+264|0;d=Ia;b=v[d+4>>2];n=z[b+56>>2];ra=z[b+52>>2];sa=z[b+72>>2];D=b- -64|0;ta=z[D>>2];ua=z[b+68>>2];m=z[b+88>>2];va=z[b+80>>2];wa=z[b+84>>2];ya=z[b+48>>2];f=0;v[a+172>>2]=0;aa=m;c=C(C(g*g)+C(C(j*j)+C(l*l)))>C(1.1920928955078125e-7);g=c?g:C(0);j=c?j:C(1);m=c?l:C(0);o=C(C(1)/C(K(C(C(g*g)+C(C(j*j)+C(m*m))))));g=C(g*o);l=C(j*o);j=C(m*o);z[a+168>>2]=C(aa*g)+C(C(va*l)+C(wa*j));z[a+164>>2]=C(sa*g)+C(C(ta*l)+C(j*ua));z[a+160>>2]=C(n*g)+C(C(ya*l)+C(j*ra));c=IV(b,a+160|0);ra=z[D>>2];sa=z[b+80>>2];ta=z[b+84>>2];ua=z[b+52>>2];va=z[b+68>>2];wa=z[b+88>>2];c=v[b+152>>2]+B(c,12)|0;m=z[c+8>>2];ya=z[b+56>>2];o=z[c>>2];Ja=z[b+72>>2];n=z[c+4>>2];Ka=z[b+48>>2];v[a+180>>2]=0;v[a+184>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+172>>2]=0;v[a+176>>2]=0;aa=X;la=p;l=C(-l);p=C(C(C(O*l)-C(R*j))-C(L*g));X=C(C(C(Ha*l)-C(ha*j))-C(fa*g));g=C(C(C(ja*l)-C(ma*j))-C(ga*g));b=C(C(la*p)+C(C(s*X)+C(q*g)))>C(C(x*p)+C(C(y*X)+C(g*u)));g=b?la:x;j=b?s:y;l=b?q:u;p=C(aa+C(C(da*g)+C(C(Ga*j)+C(ea*l))));x=C(C(wa*m)+C(C(ya*o)+C(n*Ja)));u=C(p-x);z[a+168>>2]=u;y=C(E+C(C(ca*g)+C(C(qa*j)+C(l*P))));E=C(C(ta*m)+C(C(ua*o)+C(n*va)));s=C(y-E);z[a+164>>2]=s;g=C(na+C(C(ka*g)+C(C(oa*j)+C(l*pa))));j=C(C(sa*m)+C(C(Ka*o)+C(n*ra)));q=C(g-j);z[a+160>>2]=q;v[a+116>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+108>>2]=0;v[a+112>>2]=0;z[a+104>>2]=p;z[a+100>>2]=y;z[a+96>>2]=g;v[a+52>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;z[a+40>>2]=x;z[a+36>>2]=E;z[a+32>>2]=j;g=C(-u);j=C(-s);l=C(-q);y=C(C(u*u)+C(C(q*q)+C(s*s)));m=z[v[d+4>>2]+24>>2];m=C((mma)){m=l;n=j;p=g;G=C(0);x=q;o=s;V=u;break b}da=C(m+V);na=C(da*da);H=C(C(M*C(0))+H);U=C(C(I*C(0))+U);$=C(C($*C(0))+G);G=C(0);p=g;n=j;m=l;while(1){x=q;o=s;V=u;b=v[A+8>>2];ja=z[b+56>>2];ka=z[b+40>>2];oa=z[b+24>>2];ha=z[b+52>>2];ga=z[b+36>>2];pa=z[b+20>>2];c=v[A+4>>2];u=z[c+56>>2];s=z[c+52>>2];E=z[c+72>>2];P=z[c+68>>2];qa=z[b+8>>2];L=z[b+48>>2];O=z[b+32>>2];R=z[b>>2];fa=z[b+16>>2];Ga=z[b+4>>2];X=z[c+48>>2];Ha=z[A+56>>2];ra=z[A+24>>2];sa=z[A+40>>2];ea=z[c+64>>2];ta=z[A+48>>2];ua=z[A+16>>2];va=z[A+32>>2];wa=z[A+52>>2];ya=z[A+20>>2];Ja=z[A+36>>2];b=v[d+4>>2];Ka=z[b+52>>2];Pa=z[b+56>>2];Qa=z[b+72>>2];f=b- -64|0;Ra=z[f>>2];Sa=z[b+68>>2];Ta=z[b+88>>2];q=z[b+80>>2];I=z[b+84>>2];Ba=z[b+48>>2];v[a+268>>2]=0;la=q;M=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));q=C(l*M);ca=C(-q);aa=I;I=C(j*M);M=C(g*M);z[a+264>>2]=C(C(la*ca)-C(aa*I))-C(Ta*M);z[a+260>>2]=C(C(Ra*ca)-C(Sa*I))-C(Qa*M);z[a+256>>2]=C(C(Ba*ca)-C(Ka*I))-C(Pa*M);D=IV(b,a+256|0);la=L;aa=O;Ba=u;u=C(C(Ha*M)+C(C(ra*q)+C(I*sa)));L=C(C(ta*M)+C(C(ua*q)+C(I*va)));O=C(C(wa*M)+C(C(ya*q)+C(I*Ja)));c=C(C(Ba*u)+C(C(X*L)+C(s*O)))>C(C(E*u)+C(C(ea*L)+C(O*P)));u=c?Ba:E;E=c?X:ea;s=c?s:P;ea=C(la+C(C(aa*u)+C(C(R*E)+C(fa*s))));c=v[b+152>>2]+B(D,12)|0;L=z[c+8>>2];O=z[c>>2];R=z[c+4>>2];fa=C(H+C(C(z[b+80>>2]*L)+C(C(z[b+48>>2]*O)+C(R*z[f>>2]))));P=C(ea-fa);ha=C(ha+C(C(ga*u)+C(C(Ga*E)+C(s*pa))));ga=C(U+C(C(z[b+84>>2]*L)+C(C(z[b+52>>2]*O)+C(R*z[b+68>>2]))));X=C(ha-ga);ja=C(ja+C(C(ka*u)+C(C(qa*E)+C(s*oa))));L=C($+C(C(z[b+88>>2]*L)+C(C(z[b+56>>2]*O)+C(R*z[b+72>>2]))));E=C(ja-L);u=C(C(C(C(q*C(-P))-C(I*X))-C(M*E))-da);if(u>C(0)){c=0;s=z[k+424>>2];O=z[k+416>>2];R=z[k+420>>2];ka=C(C(M*s)+C(C(q*O)+C(I*R)));if(ka>=C(0)){break a}q=G;G=C(q-C(u/ka));if(G>q){if(G>C(1)){break a}p=z[k+504>>2];n=z[k+500>>2];m=z[k+496>>2];v[a+76>>2]=0;v[a+60>>2]=0;v[a+44>>2]=0;q=C(m+C(O*G));m=C(q-H);y=C(m+z[a+64>>2]);z[a+64>>2]=y;u=C(n+C(R*G));n=C(u-U);H=C(n+z[a+68>>2]);z[a+68>>2]=H;s=C(p+C(s*G));p=C(s-$);U=C(p+z[a+72>>2]);z[a+72>>2]=U;$=C(m+z[a+48>>2]);z[a+48>>2]=$;E=C(n+z[a+52>>2]);z[a+52>>2]=E;P=C(p+z[a+56>>2]);z[a+56>>2]=P;m=C(m+z[a+32>>2]);z[a+32>>2]=m;n=C(n+z[a+36>>2]);z[a+36>>2]=n;p=C(p+z[a+40>>2]);z[a+40>>2]=p;X=z[a+96>>2];L=z[a+100>>2];O=z[a+104>>2];v[a+172>>2]=0;z[a+168>>2]=O-p;z[a+164>>2]=L-n;z[a+160>>2]=X-m;m=z[a+112>>2];n=z[a+116>>2];p=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=p-P;z[a+180>>2]=n-E;z[a+176>>2]=m-$;m=z[a+128>>2];n=z[a+132>>2];p=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=p-U;z[a+196>>2]=n-H;z[a+192>>2]=m-y;b=v[d+4>>2];p=z[b+56>>2];y=z[b+52>>2];H=z[b+72>>2];f=b- -64|0;U=z[f>>2];$=z[b+68>>2];m=z[b+88>>2];n=z[b+80>>2];E=z[b+84>>2];P=z[b+48>>2];v[a+268>>2]=0;aa=m;m=C(-M);la=C(n*ca);n=C(-I);z[a+264>>2]=C(aa*m)+C(la+C(E*n));z[a+260>>2]=C(H*m)+C(C(U*ca)+C($*n));z[a+256>>2]=C(p*m)+C(C(P*ca)+C(y*n));c=IV(b,a+256|0);c=v[b+152>>2]+B(c,12)|0;m=z[c+8>>2];n=z[c>>2];p=z[c+4>>2];L=C(s+C(C(z[b+88>>2]*m)+C(C(z[b+56>>2]*n)+C(p*z[b+72>>2]))));E=C(ja-L);ga=C(u+C(C(z[b+84>>2]*m)+C(C(z[b+52>>2]*n)+C(p*z[b+68>>2]))));X=C(ha-ga);fa=C(q+C(C(z[b+80>>2]*m)+C(C(z[b+48>>2]*n)+C(p*z[f>>2]))));P=C(ea-fa);m=l;n=j;p=g;H=q;U=u;$=s;g=C(34028234663852886e22)}else{g=y}}else{g=y}I=g;c=v[a+224>>2];f=c<<4;b=f+(a+96|0)|0;v[b+12>>2]=0;z[b+8>>2]=ja;z[b+4>>2]=ha;z[b>>2]=ea;b=f+(a+32|0)|0;v[b+12>>2]=0;z[b+8>>2]=L;z[b+4>>2]=ga;z[b>>2]=fa;b=f+(a+160|0)|0;v[b+12>>2]=0;z[b+8>>2]=E;z[b+4>>2]=X;z[b>>2]=P;v[a+224>>2]=c+1;c:{d:{switch(c-1|0){case 0:q=z[a+168>>2];g=C(z[a+184>>2]-q);u=z[a+160>>2];j=C(z[a+176>>2]-u);s=z[a+164>>2];l=C(z[a+180>>2]-s);y=C(C(g*g)+C(C(j*j)+C(l*l)));if(y<=C(1.1920928955078125e-7)){v[a+224>>2]=1;b=v[a+164>>2];v[a+256>>2]=v[a+160>>2];v[a+260>>2]=b;b=v[a+172>>2];v[a+264>>2]=v[a+168>>2];v[a+268>>2]=b;break c}aa=g;g=C(F(C(C(C(C(C(-u)*j)-C(l*s))-C(q*g))/y),C(1)));g=g>C(0)?g:C(0);z[a+264>>2]=q+C(aa*g);z[a+260>>2]=s+C(l*g);z[a+256>>2]=u+C(j*g);break c;case 1:KV(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;case 2:O_(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;default:break d}}z[a+264>>2]=E;z[a+260>>2]=X;z[a+256>>2]=P}u=z[a+264>>2];g=C(-u);s=z[a+260>>2];j=C(-s);q=z[a+256>>2];l=C(-q);y=C(C(u*u)+C(C(q*q)+C(s*s)));if(na>2]+32|0];H=C(0);E=C(0);c=!(y>ma)|f;g=c?p:g;l=c?m:l;j=c?n:j;m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!(m<=C(1.1920928955078125e-7))){p=g;g=C(C(1)/m);Ca=C(p*g);E=C(l*g);H=C(j*g)}v[e+268>>2]=0;z[e+264>>2]=-Ca;z[e+260>>2]=-H;z[e+256>>2]=-E;z[e+240>>2]=G;v[e+252>>2]=v[a+236>>2];c=v[a+232>>2];v[e+244>>2]=v[a+228>>2];v[e+248>>2]=c;v[a+268>>2]=0;z[a+264>>2]=f?V:u;z[a+260>>2]=f?o:s;z[a+256>>2]=f?x:q;c=v[a+252>>2];f=v[a+248>>2];v[a+24>>2]=f;v[a+28>>2]=c;d=v[a+244>>2];D=v[a+240>>2];v[a+16>>2]=D;v[a+20>>2]=d;v[a+8>>2]=f;v[a+12>>2]=c;v[a>>2]=D;v[a+4>>2]=d;JV(a+160|0,a+96|0,a+32|0,a+256|0,a+16|0,a,v[a+224>>2]);g=z[v[A+4>>2]+16>>2];j=z[a+16>>2];l=z[a+20>>2];m=z[a+24>>2];v[e+284>>2]=0;z[e+280>>2]=m+(b?C(Ca*g):C(-0));z[e+276>>2]=l+(b?C(H*g):C(-0));z[e+272>>2]=j+(b?C(E*g):C(-0));c=1}xa=a+272|0;a=c;if(a){b=v[e+244>>2];v[k+400>>2]=v[e+240>>2];v[k+404>>2]=b;b=v[e+252>>2];v[k+408>>2]=v[e+248>>2];v[k+412>>2]=b;if(z[e+240>>2]==C(0)){c=v[A+4>>2];d=v[Ia+4>>2];z[e+224>>2]=C(z[c+16>>2]+z[d+16>>2])*C(100);t[e+215|0]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;v[e+152>>2]=0;v[e+156>>2]=0;v[e+144>>2]=0;v[e+148>>2]=0;v[e+136>>2]=0;v[e+140>>2]=0;v[e+128>>2]=0;v[e+132>>2]=0;v[e+192>>2]=0;b=v[A+8>>2];v[e+56>>2]=b;v[e+48>>2]=142372;v[e+52>>2]=c;c=v[b+12>>2];v[e+72>>2]=v[b+8>>2];v[e+76>>2]=c;c=v[b+20>>2];v[e+80>>2]=v[b+16>>2];v[e+84>>2]=c;c=v[b+28>>2];v[e+88>>2]=v[b+24>>2];v[e+92>>2]=c;c=v[b+36>>2];v[e+96>>2]=v[b+32>>2];v[e+100>>2]=c;c=v[b+44>>2];v[e+104>>2]=v[b+40>>2];v[e+108>>2]=c;c=v[b+52>>2];v[e+112>>2]=v[b+48>>2];v[e+116>>2]=c;c=v[b+60>>2];v[e+120>>2]=v[b+56>>2];v[e+124>>2]=c;c=v[b+4>>2];v[e+64>>2]=v[b>>2];v[e+68>>2]=c;g=z[e+68>>2];z[e+68>>2]=z[e+80>>2];j=z[e+88>>2];l=z[e+72>>2];z[e+72>>2]=z[e+96>>2];z[e+80>>2]=g;z[e+96>>2]=l;z[e+88>>2]=z[e+100>>2];z[e+100>>2]=j;v[e+40>>2]=141216;v[e+44>>2]=d;D=e+220|0;_=e+216|0;d=xa-320|0;xa=d;f=v[e+44>>2];g=z[f+20>>2];b=v[e+52>>2];j=z[b+20>>2];p=z[e+224>>2];ia=w[b+32|0];u=z[b+16>>2];Ua=w[f+32|0];s=z[f+16>>2];v[d+28>>2]=0;$=C((g>2];b=0;while(1){c=J<<2;Q=w[D+J|0];v[c+(d+48|0)>>2]=Q;Y=c+(d+32|0)|0;c=w[J+_|0];v[Y>>2]=c;c=v[f+152>>2]+B(c,12)|0;g=z[c+8>>2];j=z[c>>2];l=z[c+4>>2];c=(1-Q<<4)+Va|0;m=z[c+8>>2];o=z[c>>2];n=z[c+4>>2];q=z[f+80>>2];x=z[f+48>>2];y=z[f+64>>2];V=z[f+84>>2];G=z[f+52>>2];H=z[f+68>>2];U=z[f+88>>2];I=z[f+56>>2];M=z[f+72>>2];E=z[r+48>>2];ca=z[r+32>>2];P=z[r>>2];X=z[r+16>>2];da=z[r+52>>2];ea=z[r+36>>2];L=z[r+4>>2];O=z[r+20>>2];R=z[r+56>>2];fa=z[r+40>>2];ha=z[r+8>>2];ga=z[r+24>>2];c=b;N=b<<4;Q=N+(d+128|0)|0;v[Q+12>>2]=0;Y=N+(d- -64|0)|0;v[Y+12>>2]=0;N=N+(d+192|0)|0;v[N+12>>2]=0;R=C(R+C(C(fa*m)+C(C(ha*o)+C(n*ga))));z[Q+8>>2]=R;da=C(da+C(C(ea*m)+C(C(L*o)+C(n*O))));z[Q+4>>2]=da;m=C(E+C(C(ca*m)+C(C(P*o)+C(n*X))));z[Q>>2]=m;o=C(C(U*g)+C(C(I*j)+C(l*M)));z[Y+8>>2]=o;n=C(C(V*g)+C(C(G*j)+C(l*H)));z[Y+4>>2]=n;g=C(C(q*g)+C(C(x*j)+C(l*y)));z[Y>>2]=g;j=C(R-o);z[N+8>>2]=j;l=C(da-n);z[N+4>>2]=l;g=C(m-g);z[N>>2]=g;b=b+1|0;v[d+28>>2]=b;J=J+1|0;if((Oa|0)!=(J|0)){continue}break}k:{l:{switch(c-1|0){case 0:m=z[d+200>>2];g=C(z[d+216>>2]-m);o=z[d+192>>2];j=C(z[d+208>>2]-o);n=z[d+196>>2];l=C(z[d+212>>2]-n);q=C(C(g*g)+C(C(j*j)+C(l*l)));if(!(q<=C(1.1920928955078125e-7))){break k}v[d+28>>2]=1;b=v[d+196>>2];v[d+304>>2]=v[d+192>>2];v[d+308>>2]=b;b=v[d+204>>2];v[d+312>>2]=v[d+200>>2];v[d+316>>2]=b;break i;case 1:jY(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}}Q_(d+304|0,d+192|0,d+128|0,d- -64|0,d+48|0,d+32|0,d+28|0);break i}v[d+316>>2]=0;V=g;g=C(F(C(C(C(C(C(-o)*j)-C(l*n))-C(m*g))/q),C(1)));g=g>C(0)?g:C(0);z[d+312>>2]=m+C(V*g);z[d+308>>2]=n+C(l*g);z[d+304>>2]=o+C(j*g);break i}g=z[r+8>>2];l=z[r>>2];j=z[r+4>>2];v[d+268>>2]=0;b=C(C(g*g)+C(C(l*l)+C(j*j)))>C(0);g=b?g:C(0);z[d+264>>2]=g;j=b?j:C(0);z[d+260>>2]=j;l=b?l:C(1);z[d+256>>2]=l;o=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));q=C(g*o);x=C(l*o);m=C(34028234663852886e22);o=C(j*o);break h}v[d+316>>2]=0;z[d+312>>2]=j;z[d+308>>2]=l;z[d+304>>2]=g}b=v[d+308>>2];v[d+256>>2]=v[d+304>>2];v[d+260>>2]=b;b=v[d+316>>2];v[d+264>>2]=v[d+312>>2];v[d+268>>2]=b;g=z[d+264>>2];l=z[d+256>>2];j=z[d+260>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!($>2]=v[d+296>>2];b=v[d+292>>2];v[d+272>>2]=v[d+288>>2];v[d+276>>2]=b;b=v[e+56>>2];ca=z[d+268>>2];r=v[d+28>>2]<<2;c=v[e+52>>2];J=c+56|0;m=C(-l);s=C(C(C(z[e+72>>2]*m)-C(z[e+88>>2]*j))-C(z[e+104>>2]*g));p=g;H=C(C(C(z[e+64>>2]*m)-C(z[e+80>>2]*j))-C(z[e+96>>2]*g));u=j;m=C(C(C(z[e+68>>2]*m)-C(z[e+84>>2]*j))-C(z[e+100>>2]*g));Q=c+52|0;Y=c+72|0;N=c+68|0;f=C(C(z[J>>2]*s)+C(C(z[c+48>>2]*H)+C(m*z[Q>>2])))>C(C(z[Y>>2]*s)+C(C(z[c+64>>2]*H)+C(m*z[N>>2])));v[r+(d+48|0)>>2]=f;m=z[(f?J:Y)>>2];H=z[(f?c+48|0:c- -64|0)>>2];U=z[(f?Q:N)>>2];I=z[b+56>>2];M=z[b+40>>2];P=z[b+24>>2];X=z[b+52>>2];da=z[b+36>>2];ea=z[b+20>>2];L=z[b+8>>2];O=z[b+48>>2];R=z[b+32>>2];fa=z[b>>2];ha=z[b+16>>2];ga=z[b+4>>2];b=v[e+44>>2];ja=z[b+56>>2];Ca=z[b+52>>2];ma=z[b+72>>2];f=b- -64|0;na=z[f>>2];ka=z[b+68>>2];s=z[b+88>>2];oa=z[b+80>>2];pa=z[b+84>>2];qa=z[b+48>>2];v[d+316>>2]=0;aa=C(s*g);s=l;z[d+312>>2]=aa+C(C(oa*l)+C(j*pa));z[d+308>>2]=C(ma*g)+C(C(na*l)+C(j*ka));z[d+304>>2]=C(ja*g)+C(C(qa*l)+C(j*Ca));c=IV(b,d+304|0);v[r+(d+32|0)>>2]=c;P=C(I+C(C(M*m)+C(C(L*H)+C(U*P))));c=v[b+152>>2]+B(c,12)|0;g=z[c+8>>2];j=z[c>>2];l=z[c+4>>2];L=C(C(z[b+88>>2]*g)+C(C(z[b+56>>2]*j)+C(l*z[b+72>>2])));I=C(P-L);O=C(O+C(C(R*m)+C(C(fa*H)+C(U*ha))));R=C(C(z[b+80>>2]*g)+C(C(z[b+48>>2]*j)+C(l*z[f>>2])));M=C(O-R);m=C(X+C(C(da*m)+C(C(ga*H)+C(U*ea))));j=C(C(z[b+84>>2]*g)+C(C(z[b+52>>2]*j)+C(l*z[b+68>>2])));g=C(m-j);l=C(C(q*I)+C(C(x*M)+C(o*g)));if(l>E){b=0;if(!D){break e}f=v[d+28>>2];t[e+215|0]=f;if(!f){break e}c=0;if((f|0)!=1){Y=f&-2;J=0;while(1){r=c<<2;N=d+48|0;t[c+D|0]=v[r+N>>2];ia=d+32|0;t[c+_|0]=v[ia+r>>2];r=c|1;Q=r<<2;t[r+D|0]=v[Q+N>>2];t[r+_|0]=v[Q+ia>>2];c=c+2|0;J=J+2|0;if((Y|0)!=(J|0)){continue}break}}if(!(f&1)){break e}f=c<<2;t[c+D|0]=v[f+(d+48|0)>>2];t[c+_|0]=v[f+(d+32|0)>>2];break e}b=v[d+28>>2];if(l>C(n*C(.9997749924659729))){m:{if(!D){break m}t[e+215|0]=b;if(!b){break m}f=0;if((b|0)!=1){Q=b&-2;r=0;while(1){c=f<<2;Y=d+48|0;t[f+D|0]=v[c+Y>>2];N=d+32|0;t[f+_|0]=v[N+c>>2];c=f|1;J=c<<2;t[c+D|0]=v[J+Y>>2];t[c+_|0]=v[J+N>>2];f=f+2|0;r=r+2|0;if((Q|0)!=(r|0)){continue}break}}if(!(b&1)){break m}c=f<<2;t[f+D|0]=v[c+(d+48|0)>>2];t[f+_|0]=v[c+(d+32|0)>>2]}z[e+160>>2]=x;v[e+172>>2]=0;z[e+168>>2]=q;z[e+164>>2]=o;JV(d+192|0,d+128|0,d- -64|0,d+256|0,d+304|0,d,b);g=z[d+304>>2];j=z[d+308>>2];l=z[d+312>>2];v[e+140>>2]=0;z[e+136>>2]=l-C(y*q);z[e+132>>2]=j-C(y*o);z[e+128>>2]=g-C(y*x);g=z[d>>2];j=z[d+4>>2];l=z[d+8>>2];v[e+156>>2]=0;z[e+152>>2]=l+C(V*q);z[e+148>>2]=j+C(V*o);z[e+144>>2]=g+C(V*x);z[e+192>>2]=n-G;b=2;break e}f=b<<4;c=f+(d+128|0)|0;v[c+12>>2]=0;z[c+8>>2]=P;z[c+4>>2]=m;z[c>>2]=O;c=f+(d- -64|0)|0;v[c+12>>2]=0;z[c+8>>2]=L;z[c+4>>2]=j;z[c>>2]=R;c=f+(d+192|0)|0;v[c+12>>2]=0;z[c+8>>2]=I;z[c+4>>2]=g;z[c>>2]=M;v[d+28>>2]=b+1;n:{o:{switch(b-1|0){case 0:m=z[d+200>>2];g=C(z[d+216>>2]-m);o=z[d+192>>2];j=C(z[d+208>>2]-o);q=z[d+196>>2];l=C(z[d+212>>2]-q);x=C(C(g*g)+C(C(j*j)+C(l*l)));if(x<=C(1.1920928955078125e-7)){v[d+28>>2]=1;b=v[d+196>>2];v[d+304>>2]=v[d+192>>2];v[d+308>>2]=b;b=v[d+204>>2];v[d+312>>2]=v[d+200>>2];v[d+316>>2]=b;break n}v[d+316>>2]=0;I=g;g=C(F(C(C(C(C(C(-o)*j)-C(l*q))-C(m*g))/x),C(1)));g=g>C(0)?g:C(0);z[d+312>>2]=m+C(I*g);z[d+308>>2]=q+C(l*g);z[d+304>>2]=o+C(j*g);break n;case 1:jY(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:Q_(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}}v[d+316>>2]=0;z[d+312>>2]=I;z[d+308>>2]=g;z[d+304>>2]=M}b=v[d+308>>2];v[d+256>>2]=v[d+304>>2];v[d+260>>2]=b;b=v[d+316>>2];v[d+264>>2]=v[d+312>>2];v[d+268>>2]=b;g=z[d+264>>2];l=z[d+256>>2];j=z[d+260>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));x=C(C(1)/m);q=C(g*x);o=C(j*x);x=C(l*x);if(m$){continue}break}f=v[d+28>>2];if(!(m>2];ia=d+32|0;t[c+_|0]=v[ia+J>>2];J=c|1;Q=J<<2;t[D+J|0]=v[Q+N>>2];t[J+_|0]=v[Q+ia>>2];c=c+2|0;r=r+2|0;if((Y|0)!=(r|0)){continue}break}}if(!(b&1)){break p}b=c<<2;t[c+D|0]=v[b+(d+48|0)>>2];t[c+_|0]=v[b+(d+32|0)>>2]}v[d+296>>2]=v[d+280>>2];b=v[d+276>>2];v[d+288>>2]=v[d+272>>2];v[d+292>>2]=b;z[d+268>>2]=ca;z[d+256>>2]=s;z[d+260>>2]=u;z[d+264>>2]=p;JV(d+192|0,d+128|0,d- -64|0,d+256|0,d+304|0,d,f);v[e+188>>2]=0;z[e+184>>2]=q;z[e+180>>2]=o;z[e+176>>2]=x;v[e+172>>2]=0;g=C(C(1)/n);j=C(p*g);z[e+168>>2]=j;l=C(u*g);z[e+164>>2]=l;g=C(s*g);z[e+160>>2]=g;m=z[d+304>>2];o=z[d+308>>2];p=z[d+312>>2];v[e+140>>2]=0;z[e+136>>2]=p-C(y*j);z[e+132>>2]=o-C(y*l);z[e+128>>2]=m-C(y*g);m=z[d>>2];o=z[d+4>>2];p=z[d+8>>2];z[e+192>>2]=n-G;v[e+156>>2]=0;z[e+152>>2]=p+C(V*j);z[e+148>>2]=o+C(V*l);z[e+144>>2]=m+C(V*g);b=2;if(n<=G){break e}b=4;break e}if(D){break f}b=5;break e}f=v[d+28>>2]}t[e+215|0]=f;b=5;if(!f){break e}c=0;if((f|0)!=1){Y=f&-2;J=0;while(1){r=c<<2;N=d+48|0;t[c+D|0]=v[r+N>>2];ia=d+32|0;t[c+_|0]=v[ia+r>>2];r=c|1;Q=r<<2;t[r+D|0]=v[Q+N>>2];t[r+_|0]=v[Q+ia>>2];c=c+2|0;J=J+2|0;if((Y|0)!=(J|0)){continue}break}}if(!(f&1)){break e}f=c<<2;t[c+D|0]=v[f+(d+48|0)>>2];t[c+_|0]=v[f+(d+32|0)>>2]}xa=d+320|0;q:{r:{if(b-5|0){break r}v[e+16>>2]=1065353216;b=v[e+28>>2];v[e+8>>2]=v[e+24>>2];v[e+12>>2]=b;b=v[e+20>>2];v[e>>2]=v[e+16>>2];v[e+4>>2]=b;if(K_(A,Ia,e+220|0,e+216|0,w[e+215|0],0,e,e+128|0)-5>>>0<=1){break r}v[e+280>>2]=0;v[e+284>>2]=0;v[e+272>>2]=0;v[e+276>>2]=0;g=z[k+424>>2];j=z[k+416>>2];l=z[k+420>>2];v[e+268>>2]=0;m=C(C(1)/C(K(C(C(g*g)+C(C(j*j)+C(l*l))))));z[e+264>>2]=m*C(-g);z[e+260>>2]=m*C(-l);z[e+256>>2]=m*C(-j);g=C(0);break q}b=v[e+140>>2];v[e+280>>2]=v[e+136>>2];v[e+284>>2]=b;b=v[e+132>>2];v[e+272>>2]=v[e+128>>2];v[e+276>>2]=b;b=v[e+164>>2];v[e+256>>2]=v[e+160>>2];v[e+260>>2]=b;b=v[e+172>>2];v[e+264>>2]=v[e+168>>2];v[e+268>>2]=b;g=z[e+192>>2]}z[k+400>>2]=g>2];v[k+384>>2]=v[e+272>>2];v[k+388>>2]=b;b=v[e+284>>2];v[k+392>>2]=v[e+280>>2];v[k+396>>2]=b;b=v[e+260>>2];v[k+368>>2]=v[e+256>>2];v[k+372>>2]=b;b=v[e+268>>2];v[k+376>>2]=v[e+264>>2];v[k+380>>2]=b}xa=e+288|0;if(a){Aa=z[k+400>>2];g=z[k+392>>2];j=z[k+384>>2];l=z[k+388>>2];m=z[k+376>>2];o=z[k+368>>2];n=z[k+372>>2];p=C(C(T*m)+C(C(Z*o)+C(S*n)));q=C(-S);x=C(C(C(W*C(C(Z*n)+C(o*q)))+C(ba*m))+C(T*p));z[h+8>>2]=x+x;x=C(C(S*p)+C(C(ba*n)+C(W*C(C(T*o)+C(m*za)))));z[h+4>>2]=x+x;u=n;n=C(-T);m=C(C(Z*p)+C(C(ba*o)+C(W*C(C(S*m)+C(u*n)))));z[h>>2]=m+m;m=Aa>C(0)?Aa:C(0);o=C(C(T*g)+C(C(Z*j)+C(S*l)));p=C(C(C(W*C(C(Z*l)+C(j*q)))+C(ba*g))+C(T*o));z[i+8>>2]=C(La*m)+C(Ea+C(p+p));p=C(C(S*o)+C(C(ba*l)+C(W*C(C(T*j)+C(g*za)))));z[i+4>>2]=C(Na*m)+C(Da+C(p+p));g=C(C(Z*o)+C(C(ba*j)+C(W*C(C(S*g)+C(l*n)))));z[i>>2]=C(Ma*m)+C(Fa+C(g+g))}xa=k+512|0;return C(Aa)}function ou(a,b,c,d){var e=0,f=C(0),g=0,h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=0,s=C(0),y=C(0),A=0,D=C(0),E=0,F=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=0,la=0,ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=0,ta=C(0),ua=0,va=C(0),wa=C(0),ya=C(0),za=0,Aa=0,Ca=0,Da=0,Ea=C(0),Fa=0,Ga=0;e=xa-336|0;xa=e;f=C(Ba[v[v[c>>2]+280>>2]](c,0));a:{if(f==C(0)){break a}j=v[a>>2];ka=x[a+4>>1];if(ka>>>0>=2){sa=C(Ba[v[v[c>>2]+280>>2]](c,14))!=C(0)}O=w[c+5580|0]&64?c+5272|0:v[c+1008>>2]+1128|0;wa=C(Ba[v[v[c>>2]+280>>2]](c,11));ta=C(Ba[v[v[c>>2]+280>>2]](c,12));ya=C(Ba[v[v[c>>2]+280>>2]](c,16));i=C(Ba[v[v[c>>2]+280>>2]](c,15));h=z[O+12>>2];m=z[O>>2];l=C(Ba[v[v[c>>2]+280>>2]](c,13));Ba[v[v[d>>2]+76>>2]](e- -64|0,d);if(!ka){break a}Ca=(ka|0)==1?a:j;za=ta!=C(0);Aa=za|i!=C(0)|ya!=C(0);la=h>2];d=v[c+40>>2];o=v[c+36>>2];a=o&4?d:c+80|0;q=z[a+24>>2];s=z[a+20>>2];y=z[a+16>>2];f=z[e+76>>2];l=z[a+12>>2];k=z[a>>2];i=z[e+64>>2];h=z[e+68>>2];n=z[a+4>>2];m=z[e+72>>2];p=z[a+8>>2];z[e+44>>2]=C(C(C(f*l)-C(k*i))-C(h*n))-C(m*p);z[e+40>>2]=C(C(i*n)+C(C(f*p)+C(m*l)))-C(k*h);z[e+36>>2]=C(C(m*k)+C(C(f*n)+C(h*l)))-C(p*i);z[e+32>>2]=C(C(h*p)+C(C(f*k)+C(i*l)))-C(n*m);l=C(q+q);k=C(y+y);n=C(s+s);p=C(C(m*l)+C(C(i*k)+C(h*n)));q=C(C(f*f)+C(-.5));z[e+56>>2]=z[e+88>>2]+C(C(m*p)+C(C(l*q)+C(f*C(C(i*n)-C(k*h)))));z[e+52>>2]=z[e+84>>2]+C(C(h*p)+C(C(n*q)+C(f*C(C(m*k)-C(l*i)))));z[e+48>>2]=z[e+80>>2]+C(C(i*p)+C(C(k*q)+C(f*C(C(h*l)-C(n*m)))));j=o&1?d- -64|0:c+116|0;a=w[(o&64?d+52|0:c+112|0)|0]&8;b:{if((a>>>3&wa!=C(0)|Da)==1){eV(e+8|0,j,e+32|0,C(1));break b}v[e+24>>2]=-25165825;v[e+28>>2]=-25165825;v[e+16>>2]=2122317823;v[e+20>>2]=-25165825;v[e+8>>2]=2122317823;v[e+12>>2]=2122317823}c:{if(!a){break c}if(wa!=C(0)){v[b+4>>2]=-256;v[e+272>>2]=1065353216;v[_+8>>2]=0;v[_+12>>2]=0;v[_>>2]=0;v[_+4>>2]=0;v[e+292>>2]=1065353216;v[e+304>>2]=0;v[e+308>>2]=0;v[e+296>>2]=0;v[e+300>>2]=0;v[e+312>>2]=1065353216;v[e+324>>2]=0;v[e+328>>2]=0;v[e+316>>2]=0;v[e+320>>2]=0;v[e+332>>2]=1065353216;a=YU(b,e+272|0);c=v[e+12>>2];v[e+160>>2]=v[e+8>>2];v[e+164>>2]=c;c=v[e+20>>2];v[e+168>>2]=v[e+16>>2];v[e+172>>2]=c;t[e+184|0]=1;c=v[e+28>>2];v[e+176>>2]=v[e+24>>2];v[e+180>>2]=c;$U(a,e+160|0)}if(na!=C(0)){v[e+332>>2]=1065353216;z[e+328>>2]=z[e+56>>2];a=v[e+52>>2];v[e+320>>2]=v[e+48>>2];v[e+324>>2]=a;v[e+316>>2]=0;v[e+300>>2]=0;v[e+284>>2]=0;i=z[e+36>>2];m=C(i+i);f=z[e+40>>2];n=C(m*f);l=z[e+32>>2];h=C(l+l);k=z[e+44>>2];p=C(h*k);z[e+308>>2]=n-p;q=C(h*f);s=C(m*k);z[e+304>>2]=q+s;z[e+296>>2]=n+p;n=C(h*i);R=k;k=C(f+f);p=C(R*k);z[e+288>>2]=n-p;z[e+280>>2]=q-s;z[e+276>>2]=n+p;h=C(C(1)-C(l*h));i=C(i*m);z[e+312>>2]=h-i;f=C(f*k);z[e+292>>2]=h-f;z[e+272>>2]=C(C(1)-i)-f;a=YU(b,e+272|0);v[e+180>>2]=207;v[e+172>>2]=13565952;v[e+176>>2]=52992;z[e+168>>2]=na;z[e+164>>2]=na;z[e+160>>2]=na;bV(a,e+160|0)}if(!Aa){break c}if(!la){if(z[e+8>>2]>z[O+12>>2]|z[O>>2]>z[e+20>>2]|(z[e+12>>2]>z[O+16>>2]|z[O+4>>2]>z[e+24>>2])){break c}if(z[e+16>>2]>z[O+20>>2]|z[O+8>>2]>z[e+28>>2]){break c}}a=v[j>>2];d:{e:{f:{g:{h:{i:{j:{k:{if(!za){if((a|0)==5){break k}break c}l:{switch(a|0){case 0:v[b+4>>2]=-65281;a=ZU(b,e+32|0);z[e+276>>2]=z[j+4>>2];v[e+272>>2]=100;c=a;a=e+272|0;cV(c,a);v[e+332>>2]=1065353216;z[e+328>>2]=z[e+56>>2];c=v[e+52>>2];v[e+320>>2]=v[e+48>>2];v[e+324>>2]=c;v[e+284>>2]=0;v[e+316>>2]=0;m=z[e+32>>2];i=C(m+m);f=z[e+40>>2];n=C(i*f);h=z[e+36>>2];l=C(h+h);k=z[e+44>>2];p=C(l*k);z[e+280>>2]=n-p;q=C(i*h);s=C(f+f);y=C(k*s);z[e+276>>2]=q+y;D=C(l*f);k=C(i*k);z[e+312>>2]=D+k;z[e+304>>2]=q-y;h=C(h*l);f=C(f*s);z[e+272>>2]=C(C(1)-h)-f;i=C(C(1)-C(m*i));z[e+308>>2]=i-f;v[e+300>>2]=-2147483648;z[e+296>>2]=-C(i-h);z[e+292>>2]=-C(D-k);z[e+288>>2]=-C(n+p);c=YU(b,a);z[e+164>>2]=z[j+4>>2];v[e+160>>2]=100;d=c;c=e+160|0;cV(d,c);f=z[e+304>>2];i=z[e+308>>2];d=v[e+276>>2];v[e+304>>2]=v[e+272>>2];v[e+308>>2]=d;h=z[e+312>>2];m=z[e+316>>2];d=v[e+284>>2];v[e+312>>2]=v[e+280>>2];v[e+316>>2]=d;z[e+276>>2]=-i;z[e+272>>2]=-f;z[e+284>>2]=-m;z[e+280>>2]=-h;a=YU(b,a);z[e+164>>2]=z[j+4>>2];v[e+160>>2]=100;cV(a,c);break c;case 3:v[b+4>>2]=-65281;a=ZU(b,e+32|0);f=z[j+8>>2];i=z[j+12>>2];h=z[j+4>>2];t[e+296|0]=1;z[e+292>>2]=i;z[e+288>>2]=f;z[e+284>>2]=h;z[e+280>>2]=-i;z[e+276>>2]=-f;z[e+272>>2]=-h;$U(a,e+272|0);break c;case 1:v[e+332>>2]=1065353216;z[e+328>>2]=z[e+56>>2];a=v[e+52>>2];v[e+320>>2]=v[e+48>>2];v[e+324>>2]=a;v[e+316>>2]=0;v[e+300>>2]=-2147483648;m=z[e+32>>2];i=C(m+m);f=z[e+40>>2];n=C(i*f);h=z[e+36>>2];l=C(h+h);k=z[e+44>>2];p=C(l*k);z[e+312>>2]=n-p;q=C(i*h);s=C(f+f);y=C(k*s);z[e+308>>2]=q+y;h=C(h*l);s=C(f*s);z[e+304>>2]=C(C(1)-h)-s;f=C(l*f);l=C(i*k);z[e+292>>2]=-C(f-l);z[e+288>>2]=-C(n+p);i=C(C(1)-C(m*i));z[e+296>>2]=-C(i-h);v[e+284>>2]=-2147483648;z[e+280>>2]=-C(f+l);z[e+276>>2]=-C(i-s);z[e+272>>2]=-C(q-y);Fa=YU(b,e+272|0),Ga=-65281,v[Fa+4>>2]=Ga;v[e+160>>2]=100;v[e+164>>2]=1082130432;a=e+160|0;cV(b,a);v[e+160>>2]=100;v[e+164>>2]=1098907648;cV(b,a);v[e+160>>2]=100;v[e+164>>2]=1108344832;cV(b,a);v[e+160>>2]=100;v[e+164>>2]=1115684864;cV(b,a);v[e+160>>2]=100;v[e+164>>2]=1120403456;cV(b,a);v[e+160>>2]=100;v[e+164>>2]=1125122048;cV(b,a);v[e+160>>2]=100;v[e+164>>2]=1128529920;cV(b,a);v[e+160>>2]=100;v[e+164>>2]=1132462080;cV(b,a);v[e+160>>2]=100;v[e+164>>2]=1134690304;cV(b,a);break c;case 2:v[b+4>>2]=-65281;n=z[j+8>>2];p=z[j+4>>2];v[e+332>>2]=1065353216;z[e+328>>2]=z[e+56>>2];a=v[e+52>>2];v[e+320>>2]=v[e+48>>2];v[e+324>>2]=a;v[e+316>>2]=0;v[e+300>>2]=0;v[e+284>>2]=0;i=z[e+36>>2];m=C(i+i);f=z[e+40>>2];q=C(m*f);l=z[e+32>>2];h=C(l+l);k=z[e+44>>2];s=C(h*k);z[e+308>>2]=q-s;y=C(h*f);D=C(m*k);z[e+304>>2]=y+D;z[e+296>>2]=q+s;q=C(h*i);R=k;k=C(f+f);s=C(R*k);z[e+288>>2]=q-s;z[e+280>>2]=y-D;z[e+276>>2]=q+s;h=C(C(1)-C(l*h));i=C(i*m);z[e+312>>2]=h-i;f=C(f*k);z[e+292>>2]=h-f;z[e+272>>2]=C(C(1)-i)-f;dV(b,p,n,e+272|0);break c;case 6:break j;case 5:break k;case 4:break l;default:break c}}o=v[j+32>>2];a=u[o+52>>1];c=w[o+54|0];d=v[o+56>>2];H=w[o+55|0];m=z[j+12>>2];l=z[j+8>>2];f=z[j+24>>2];h=z[j+16>>2];k=z[j+28>>2];i=z[j+20>>2];n=z[j+4>>2];v[e+316>>2]=0;v[e+300>>2]=0;v[e+284>>2]=0;p=C(h+h);W=C(f*p);F=C(i+i);G=C(k*F);q=C(W+G);s=C(n*q);I=C(F*f);X=C(p*k);y=C(I-X);D=C(y*l);$=C(C(1)-C(h*p));Y=C(i*F);F=C($-Y);S=C(F*m);T=z[e+32>>2];J=C(T+T);h=z[e+40>>2];aa=C(J*h);L=z[e+36>>2];U=C(L+L);M=z[e+44>>2];fa=C(U*M);Z=C(aa-fa);ba=C(C(1)-C(T*J));ga=C(L*U);T=C(ba-ga);V=C(C(C(q*s)+C(y*D))+C(F*S));N=C(f+f);ca=C(f*N);f=C(C(C(1)-Y)-ca);Y=C(n*f);R=C(p*i);N=C(N*k);i=C(R+N);p=C(l*i);k=C(W-G);W=C(m*k);G=C(C(C(q*Y)+C(y*p))+C(F*W));ha=C(U*h);ia=C(J*M);U=C(ha+ia);Ea=q;q=n;n=C(R-N);q=C(q*n);va=y;R=l;l=C($-ca);y=C(R*l);N=F;R=m;m=C(I+X);F=C(R*m);I=C(C(C(Ea*q)+C(va*y))+C(N*F));z[e+312>>2]=C(T*V)+C(C(Z*G)+C(U*I));X=C(ha-ia);$=C(J*L);L=C(h+h);N=C(M*L);J=C($+N);M=C(h*L);h=C(ba-M);z[e+308>>2]=C(X*V)+C(C(J*G)+C(h*I));L=C(aa+fa);R=C(L*V);M=C(C(C(1)-ga)-M);V=C($-N);z[e+304>>2]=R+C(C(M*G)+C(V*I));G=C(C(C(n*s)+C(l*D))+C(m*S));I=C(C(C(n*Y)+C(l*p))+C(m*W));m=C(C(C(n*q)+C(l*y))+C(m*F));z[e+296>>2]=C(T*G)+C(C(Z*I)+C(U*m));z[e+292>>2]=C(X*G)+C(C(J*I)+C(h*m));z[e+288>>2]=C(L*G)+C(C(M*I)+C(V*m));m=C(C(C(f*s)+C(i*D))+C(k*S));l=C(C(C(f*Y)+C(i*p))+C(k*W));f=C(C(C(f*q)+C(i*y))+C(k*F));z[e+280>>2]=C(T*m)+C(C(Z*l)+C(U*f));z[e+276>>2]=C(X*m)+C(C(J*l)+C(h*f));z[e+272>>2]=C(L*m)+C(C(M*l)+C(V*f));z[e+320>>2]=z[e+48>>2];z[e+324>>2]=z[e+52>>2];f=z[e+56>>2];v[e+332>>2]=1065353216;z[e+328>>2]=f;Fa=YU(b,e+272|0),Ga=-65281,v[Fa+4>>2]=Ga;if(!H){break c}E=d+B(H,20)|0;d=a&32767;d=(((E+B(c,12)|0)+(d<<1)|0)+B(c,3)|0)+(d<<2&a>>31)|0;r=0;while(1){a=1;c=E+B(w[d|0],12)|0;h=z[c>>2];l=z[c+4>>2];k=z[c+8>>2];n=C(C(C(C(h*z[e+272>>2])+C(l*z[e+288>>2]))+C(k*z[e+304>>2]))+z[e+320>>2]);f=n;m=C(C(C(C(h*z[e+276>>2])+C(l*z[e+292>>2]))+C(k*z[e+308>>2]))+z[e+324>>2]);i=m;l=C(C(C(C(h*z[e+280>>2])+C(l*z[e+296>>2]))+C(k*z[e+312>>2]))+z[e+328>>2]);h=l;A=w[(v[o+56>>2]+B(r,20)|0)+18|0];if(A>>>0>1){while(1){m=f;l=i;k=h;c=E+B(w[a+d|0],12)|0;f=z[c>>2];n=z[c+4>>2];p=z[c+8>>2];h=C(C(C(C(f*z[e+280>>2])+C(n*z[e+296>>2]))+C(p*z[e+312>>2]))+z[e+328>>2]);i=C(C(C(C(f*z[e+276>>2])+C(n*z[e+292>>2]))+C(p*z[e+308>>2]))+z[e+324>>2]);f=C(C(C(C(f*z[e+272>>2])+C(n*z[e+288>>2]))+C(p*z[e+304>>2]))+z[e+320>>2]);c=v[b+100>>2];g=v[c+20>>2];j=g+1|0;P=v[c+24>>2]&2147483647;m:{if(j>>>0<=P>>>0){break m}Q=P;P=P?P<<1:2;P=j>>>0>P>>>0?j:P;if(Q>>>0>=P>>>0){break m}Bk(c+16|0,P);g=v[c+20>>2]}v[c+20>>2]=j;c=v[c+16>>2]+(g<<5)|0;z[c+16>>2]=f;z[c+8>>2]=k;z[c+4>>2]=l;z[c>>2]=m;z[c+24>>2]=h;z[c+20>>2]=i;j=v[b+4>>2];v[c+12>>2]=j;v[c+28>>2]=j;a=a+1|0;if((A|0)!=(a|0)){continue}break}a=E+B(w[d|0],12)|0;k=z[a>>2];n=z[a+4>>2];p=z[a+8>>2];l=C(C(C(C(k*z[e+280>>2])+C(n*z[e+296>>2]))+C(p*z[e+312>>2]))+z[e+328>>2]);m=C(C(C(C(k*z[e+276>>2])+C(n*z[e+292>>2]))+C(p*z[e+308>>2]))+z[e+324>>2]);n=C(C(C(C(k*z[e+272>>2])+C(n*z[e+288>>2]))+C(p*z[e+304>>2]))+z[e+320>>2])}a=v[b+100>>2];j=v[a+20>>2];c=j+1|0;g=v[a+24>>2]&2147483647;n:{if(c>>>0<=g>>>0){break n}Q=g;g=g?g<<1:2;g=c>>>0>g>>>0?c:g;if(Q>>>0>=g>>>0){break n}Bk(a+16|0,g);j=v[a+20>>2]}v[a+20>>2]=c;a=v[a+16>>2]+(j<<5)|0;z[a+16>>2]=n;z[a+8>>2]=h;z[a+4>>2]=i;z[a>>2]=f;z[a+24>>2]=l;z[a+20>>2]=m;c=v[b+4>>2];v[a+12>>2]=c;v[a+28>>2]=c;d=d+A|0;r=r+1|0;if((H|0)!=(r|0)){continue}break}break c}o=v[j+36>>2];v[e+272>>2]=1065353216;v[_+8>>2]=0;v[_+12>>2]=0;v[_>>2]=0;v[_+4>>2]=0;v[e+292>>2]=1065353216;v[e+304>>2]=0;v[e+308>>2]=0;v[e+296>>2]=0;v[e+300>>2]=0;v[e+312>>2]=1065353216;v[e+324>>2]=0;v[e+328>>2]=0;v[e+316>>2]=0;v[e+320>>2]=0;v[e+332>>2]=1065353216;i=z[j+16>>2];h=C(i+i);f=z[j+24>>2];W=C(h*f);m=z[j+20>>2];q=C(m+m);S=z[j+28>>2];G=C(q*S);l=C(W+G);J=z[j+4>>2];k=C(l*J);I=C(q*f);X=C(h*S);n=C(I-X);L=z[j+8>>2];p=C(n*L);$=C(C(1)-C(i*h));Y=C(m*q);q=C($-Y);Z=z[j+12>>2];s=C(q*Z);T=z[e+32>>2];y=C(T+T);i=z[e+40>>2];aa=C(y*i);D=z[e+36>>2];U=C(D+D);M=z[e+44>>2];fa=C(U*M);F=C(aa-fa);ba=C(C(1)-C(T*y));ga=C(D*U);T=C(ba-ga);V=C(C(C(l*k)+C(n*p))+C(q*s));N=C(f+f);ca=C(f*N);f=C(C(C(1)-Y)-ca);Y=C(J*f);R=C(h*m);N=C(N*S);h=C(R+N);S=C(h*L);m=C(W-G);W=C(m*Z);G=C(C(C(l*Y)+C(n*S))+C(q*W));ha=C(U*i);ia=C(y*M);U=C(ha+ia);va=l;l=C(R-N);J=C(J*l);N=n;n=C($-ca);L=C(n*L);R=q;q=C(I+X);Z=C(q*Z);I=C(C(C(va*J)+C(N*L))+C(R*Z));$=C(C(T*V)+C(C(F*G)+C(U*I)));z[e+256>>2]=$;X=C(ha-ia);N=C(y*D);D=C(i+i);ca=C(M*D);y=C(N+ca);M=C(i*D);i=C(ba-M);ba=C(C(X*V)+C(C(y*G)+C(i*I)));z[e+252>>2]=ba;D=C(aa+fa);R=C(D*V);M=C(C(C(1)-ga)-M);V=C(N-ca);aa=C(R+C(C(M*G)+C(V*I)));z[e+248>>2]=aa;G=C(C(C(l*k)+C(n*p))+C(q*s));I=C(C(C(l*Y)+C(n*S))+C(q*W));l=C(C(C(l*J)+C(n*L))+C(q*Z));n=C(C(T*G)+C(C(F*I)+C(U*l)));z[e+244>>2]=n;q=C(C(X*G)+C(C(y*I)+C(i*l)));z[e+240>>2]=q;G=C(C(D*G)+C(C(M*I)+C(V*l)));z[e+236>>2]=G;l=C(C(C(f*k)+C(h*p))+C(m*s));k=C(C(C(f*Y)+C(h*S))+C(m*W));f=C(C(C(f*J)+C(h*L))+C(m*Z));m=C(C(T*l)+C(C(F*k)+C(U*f)));z[e+232>>2]=m;p=C(C(X*l)+C(C(y*k)+C(i*f)));z[e+228>>2]=p;l=C(C(D*l)+C(C(M*k)+C(V*f)));z[e+224>>2]=l;k=z[e+48>>2];z[e+260>>2]=k;s=z[e+52>>2];z[e+264>>2]=s;y=z[e+56>>2];z[e+268>>2]=y;E=w[o+64|0]&2;H=v[o+28>>2];P=v[o+24>>2];d=v[o+20>>2];if(!la){c=j+4|0;f=z[O>>2];i=z[O+12>>2];h=z[O+4>>2];m=z[O+16>>2];l=z[O+8>>2];k=z[O+20>>2];v[e+192>>2]=1065353216;v[e+184>>2]=0;v[e+188>>2]=0;v[e+176>>2]=1065353216;v[e+180>>2]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=1065353216;v[e+164>>2]=0;z[e+216>>2]=C(k-l)*C(.5);z[e+212>>2]=C(m-h)*C(.5);z[e+208>>2]=C(i-f)*C(.5);z[e+204>>2]=C(k+l)*C(.5);z[e+200>>2]=C(m+h)*C(.5);z[e+196>>2]=C(i+f)*C(.5);a=d<<2;if(a){j=v[37696]+12|0;a=Ba[v[v[j>>2]+8>>2]](j,a,24422,8812,602)|0}else{a=0}v[e+144>>2]=d;v[e+136>>2]=a;v[e+140>>2]=0;t[e+156|0]=0;v[e+148>>2]=0;v[e+152>>2]=0;Ba[v[(x[o+4>>1]<<2)+127008>>2]](e+160|0,o,e+32|0,c,e+136|0)|0;d=v[e+140>>2];if(ta==C(0)){break d}Fa=YU(b,e+272|0),Ga=-65281,v[Fa+4>>2]=Ga;c=v[b+100>>2];j=v[c+20>>2];r=j+B(d,3)|0;g=v[c+24>>2]&2147483647;o:{if(r>>>0<=g>>>0){break o}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break o}Bk(c+16|0,g);j=v[c+20>>2]}v[c+20>>2]=r;if(!d){break d}c=v[c+16>>2]+(j<<5)|0;g=0;while(1){pu(v[(g<<2)+a>>2],e+96|0,P,H,e+224|0,(E|0)!=0);f=z[e+96>>2];i=z[e+100>>2];h=z[e+104>>2];m=z[e+108>>2];l=z[e+112>>2];k=z[e+116>>2];v[c+28>>2]=-65281;z[c+24>>2]=k;z[c+20>>2]=l;z[c+16>>2]=m;v[c+12>>2]=-65281;z[c+8>>2]=h;z[c+4>>2]=i;z[c>>2]=f;n=z[e+120>>2];p=z[e+124>>2];q=z[e+128>>2];v[c+92>>2]=-65281;z[c+88>>2]=h;z[c+84>>2]=i;z[c+80>>2]=f;v[c+76>>2]=-65281;z[c+72>>2]=q;z[c+68>>2]=p;z[c+64>>2]=n;v[c+60>>2]=-65281;z[c+56>>2]=q;z[c+52>>2]=p;z[c+48>>2]=n;v[c+44>>2]=-65281;z[c+40>>2]=k;z[c+36>>2]=l;z[c+32>>2]=m;c=c+96|0;g=g+1|0;if((g|0)!=(d|0)){continue}break}break d}if(ta==C(0)){break e}j=v[o+16>>2];Fa=YU(b,e+272|0),Ga=-65281,v[Fa+4>>2]=Ga;c=0;a=0;r=B(j,12);if(r){a=v[37696]+12|0;a=Ba[v[v[a>>2]+8>>2]](a,r,24422,8812,632)|0}if(j){break i}break f}H=v[j+4>>2];v[e+272>>2]=1065353216;v[_+8>>2]=0;v[_+12>>2]=0;v[_>>2]=0;v[_+4>>2]=0;v[e+292>>2]=1065353216;v[e+304>>2]=0;v[e+308>>2]=0;v[e+296>>2]=0;v[e+300>>2]=0;v[e+312>>2]=1065353216;v[e+324>>2]=0;v[e+328>>2]=0;v[e+316>>2]=0;v[e+320>>2]=0;v[e+332>>2]=1065353216;a=v[H+44>>2];c=v[H+40>>2];Fa=YU(b,e+272|0),Ga=-65281,v[Fa+4>>2]=Ga;a=B(a,c);P=a<<1;if(!la){f=z[O>>2];i=z[O+12>>2];h=z[O+4>>2];m=z[O+16>>2];l=z[O+8>>2];k=z[O+20>>2];v[e+232>>2]=0;v[e+236>>2]=1065353216;v[e+224>>2]=0;v[e+228>>2]=0;z[e+248>>2]=C(k+l)*C(.5);z[e+244>>2]=C(m+h)*C(.5);z[e+240>>2]=C(i+f)*C(.5);z[e+108>>2]=C(k-l)*C(.5);z[e+104>>2]=C(m-h)*C(.5);z[e+100>>2]=C(i-f)*C(.5);v[e+96>>2]=3;a=a<<3;if(a){c=v[37696]+12|0;d=Ba[v[v[c>>2]+8>>2]](c,a,24422,8812,680)|0}else{d=0}t[e+136|0]=0;o=E$(e+96|0,e+224|0,j,e+32|0,d,P,e+136|0);a=v[b+100>>2];c=v[a+20>>2];r=c+B(o,3)|0;g=v[a+24>>2]&2147483647;p:{if(r>>>0<=g>>>0){break p}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break p}Bk(a+16|0,g);c=v[a+20>>2]}v[a+20>>2]=r;q:{if(o){c=v[a+16>>2]+(c<<5)|0;a=0;while(1){C$(j,e+32|0,v[d+(a<<2)>>2],e+160|0);r=v[e+160>>2];g=v[e+164>>2];f=z[e+168>>2];H=v[e+176>>2];E=v[e+172>>2];i=z[e+180>>2];v[c+12>>2]=-65281;v[c+28>>2]=-65281;z[c+24>>2]=i;v[c+16>>2]=E;v[c+20>>2]=H;z[c+8>>2]=f;v[c>>2]=r;v[c+4>>2]=g;r=v[e+172>>2];g=v[e+176>>2];m=z[e+180>>2];f=z[e+184>>2];i=z[e+188>>2];h=z[e+192>>2];v[c+60>>2]=-65281;z[c+56>>2]=h;z[c+52>>2]=i;z[c+48>>2]=f;v[c+44>>2]=-65281;z[c+40>>2]=m;v[c+32>>2]=r;v[c+36>>2]=g;r=v[e+160>>2];g=v[e+164>>2];m=z[e+168>>2];z[c+64>>2]=f;z[c+68>>2]=i;z[c+72>>2]=h;v[c+76>>2]=-65281;v[c+92>>2]=-65281;z[c+88>>2]=m;v[c+80>>2]=r;v[c+84>>2]=g;c=c+96|0;a=a+1|0;if((o|0)!=(a|0)){continue}break}break q}if(!d){break c}}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,d);break c}c=B(a,12);if(c){d=v[37696]+12|0;c=Ba[v[v[d>>2]+8>>2]](d,c,24422,8812,705)|0}else{c=0}r=c;if(!a){break h}f=z[e+44>>2];i=C(C(f*f)+C(-.5));o=v[H+60>>2];h=z[e+36>>2];s=C(-h);m=z[e+32>>2];y=C(-m);l=z[e+40>>2];D=C(-l);F=z[j+16>>2];S=z[j+8>>2];J=z[j+12>>2];d=v[H+44>>2];c=0;while(1){L=z[e+48>>2];Z=z[e+52>>2];j=r+B(c,12)|0;g=(c>>>0)/(d>>>0)|0;k=C(F*C(c-B(g,d)>>>0));k=C(k+k);n=C(J*C(g>>>0));n=C(n+n);p=C(S*C(u[o+(c<<2)>>1]));p=C(p+p);q=C(C(l*k)+C(C(m*n)+C(h*p)));z[j+8>>2]=z[e+56>>2]+C(C(l*q)+C(C(k*i)+C(f*C(C(m*p)+C(n*s)))));z[j+4>>2]=Z+C(C(h*q)+C(C(p*i)+C(f*C(C(l*n)+C(k*y)))));z[j>>2]=L+C(C(m*q)+C(C(n*i)+C(f*C(C(h*k)+C(p*D)))));c=c+1|0;if((a|0)!=(c|0)){continue}break}c=0;if(!P){break g}while(1){a=c>>>1|0;g=v[H+44>>2];d=(a>>>0)/(g>>>0)|0;r:{if(d>>>0>=v[H+40>>2]-1>>>0|g-1>>>0<=a-B(d,g)>>>0){break r}d=v[H+60>>2]+(a<<2)|0;o=c&1;if((w[(o?d+3|0:d+2|0)|0]&127)==127){break r}s:{if(t[d+2|0]<0){if(!o){d=a;o=g+a|0;a=o+1|0;break s}o=a+1|0;d=g+o|0;break s}j=a+1|0;if(!o){d=j;o=a;a=a+g|0;break s}d=a+g|0;o=g+j|0;a=j}j=v[b+100>>2];g=v[j+20>>2];E=g+3|0;A=v[j+24>>2]&2147483647;t:{if(E>>>0<=A>>>0){break t}Q=A;A=A?A<<1:2;A=A>>>0>>0?E:A;if(Q>>>0>=A>>>0){break t}Bk(j+16|0,A);g=v[j+20>>2]}v[j+20>>2]=E;o=r+B(o,12)|0;f=z[o>>2];E=r+B(d,12)|0;A=v[E>>2];ja=v[E+4>>2];i=z[E+8>>2];d=v[j+16>>2]+(g<<5)|0;j=v[o+8>>2];v[d+4>>2]=v[o+4>>2];v[d+8>>2]=j;v[d+12>>2]=-65281;v[d+28>>2]=-65281;z[d+24>>2]=i;v[d+16>>2]=A;v[d+20>>2]=ja;z[d>>2]=f;j=v[E+4>>2];g=v[E+8>>2];a=r+B(a,12)|0;f=z[a+8>>2];A=v[a+4>>2];ja=v[a>>2];z[d+32>>2]=z[E>>2];v[d+48>>2]=ja;v[d+52>>2]=A;z[d+56>>2]=f;v[d+60>>2]=-65281;v[d+44>>2]=-65281;v[d+36>>2]=j;v[d+40>>2]=g;j=v[a+4>>2];g=v[a+8>>2];f=z[o+8>>2];E=v[o+4>>2];o=v[o>>2];z[d+64>>2]=z[a>>2];v[d+80>>2]=o;v[d+84>>2]=E;z[d+88>>2]=f;v[d+92>>2]=-65281;v[d+76>>2]=-65281;v[d+68>>2]=j;v[d+72>>2]=g}c=c+1|0;if((P|0)!=(c|0)){continue}break}break h}while(1){g=B(c,12);r=g+a|0;g=g+P|0;f=z[g>>2];i=z[g+4>>2];h=z[g+8>>2];z[r+8>>2]=y+C(C(C(m*f)+C(n*i))+C($*h));z[r+4>>2]=s+C(C(C(p*f)+C(q*i))+C(ba*h));z[r>>2]=k+C(C(C(l*f)+C(G*i))+C(aa*h));c=c+1|0;if((j|0)!=(c|0)){continue}break}break f}if(!r){break c}}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,r);break c}c=v[b+100>>2];j=v[c+20>>2];r=j+B(d,3)|0;g=v[c+24>>2]&2147483647;u:{if(r>>>0<=g>>>0){break u}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break u}Bk(c+16|0,g);j=v[c+20>>2]}v[c+20>>2]=r;v:{if(d){c=v[c+16>>2]+(j<<5)|0;g=0;while(1){j=B(g,3);w:{if(!E){A=H+(j<<2)|0;j=v[A>>2];r=v[A+8>>2];Q=v[A+4>>2];break w}A=H+(j<<1)|0;j=x[A>>1];r=x[A+4>>1];Q=x[A+2>>1]}A=B(Q,12)+a|0;f=z[A>>2];i=z[A+4>>2];h=z[A+8>>2];r=B(r,12)+a|0;m=z[r>>2];l=z[r+4>>2];k=z[r+8>>2];j=B(j,12)+a|0;n=z[j>>2];p=z[j+4>>2];q=z[j+8>>2];v[c+92>>2]=-65281;z[c+88>>2]=q;z[c+84>>2]=p;z[c+80>>2]=n;v[c+76>>2]=-65281;z[c+72>>2]=k;z[c+68>>2]=l;z[c+64>>2]=m;v[c+60>>2]=-65281;z[c+56>>2]=k;z[c+52>>2]=l;z[c+48>>2]=m;v[c+44>>2]=-65281;z[c+40>>2]=h;z[c+36>>2]=i;z[c+32>>2]=f;v[c+28>>2]=-65281;z[c+24>>2]=h;z[c+20>>2]=i;z[c+16>>2]=f;v[c+12>>2]=-65281;z[c+8>>2]=q;z[c+4>>2]=p;z[c>>2]=n;c=c+96|0;g=g+1|0;if((g|0)!=(d|0)){continue}break}break v}if(a){break v}a=0;d=0;break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}a=0}x:{if(ma==C(0)){break x}Fa=YU(b,e+272|0),Ga=-2004353024,v[Fa+4>>2]=Ga;if(!d){break x}c=0;while(1){pu(a?v[(c<<2)+a>>2]:c,e+160|0,P,H,e+224|0,(E|0)!=0);m=C(0);f=z[e+168>>2];s=z[e+180>>2];y=z[e+192>>2];i=C(C(C(f+s)+y)*C(.3333333432674408));h=z[e+164>>2];D=z[e+176>>2];F=z[e+188>>2];l=C(C(C(h+D)+F)*C(.3333333432674408));k=z[e+160>>2];S=z[e+172>>2];J=z[e+184>>2];n=C(C(C(k+S)+J)*C(.3333333432674408));p=C(0);q=C(0);S=C(k-S);F=C(h-F);k=C(k-J);D=C(h-D);h=C(C(S*F)-C(k*D));y=C(f-y);s=C(f-s);f=C(C(D*y)-C(F*s));k=C(C(s*k)-C(y*S));s=C(C(h*h)+C(C(f*f)+C(k*k)));if(s>C(0)){m=h;h=C(C(1)/C(K(s)));q=C(m*h);p=C(k*h);m=C(f*h)}z[e+104>>2]=i;f=C(ma*q);z[e+116>>2]=i+f;z[e+100>>2]=l;i=C(ma*p);z[e+112>>2]=l+i;z[e+96>>2]=n;h=C(ma*m);z[e+108>>2]=n+h;z[e+120>>2]=C(K(C(C(f*f)+C(C(h*h)+C(i*i)))))*C(.15000000596046448);aV(b,e+96|0);c=c+1|0;if((d|0)!=(c|0)){continue}break}}y:{if(ya==C(0)){break y}E=v[o+56>>2];if(!E){break y}P=v[o+28>>2];A=v[o+24>>2];v[b+4>>2]=-256;if(!d){break y}ja=w[o+64|0]&2;j=0;while(1){c=j;c=a?v[(c<<2)+a>>2]:c;pu(c,e+160|0,A,P,e+224|0,(ja|0)!=0);H=w[c+E|0];if(H&8){c=v[b+100>>2];o=v[c+20>>2];r=o+1|0;g=v[c+24>>2]&2147483647;z:{if(r>>>0<=g>>>0){break z}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break z}Bk(c+16|0,g);o=v[c+20>>2]}v[c+20>>2]=r;c=v[c+16>>2]+(o<<5)|0;z[c>>2]=z[e+160>>2];z[c+4>>2]=z[e+164>>2];z[c+8>>2]=z[e+168>>2];z[c+16>>2]=z[e+172>>2];z[c+20>>2]=z[e+176>>2];z[c+24>>2]=z[e+180>>2];o=v[b+4>>2];v[c+12>>2]=o;v[c+28>>2]=o}if(H&16){c=v[b+100>>2];o=v[c+20>>2];r=o+1|0;g=v[c+24>>2]&2147483647;A:{if(r>>>0<=g>>>0){break A}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break A}Bk(c+16|0,g);o=v[c+20>>2]}v[c+20>>2]=r;c=v[c+16>>2]+(o<<5)|0;z[c>>2]=z[e+172>>2];z[c+4>>2]=z[e+176>>2];z[c+8>>2]=z[e+180>>2];z[c+16>>2]=z[e+184>>2];z[c+20>>2]=z[e+188>>2];z[c+24>>2]=z[e+192>>2];o=v[b+4>>2];v[c+12>>2]=o;v[c+28>>2]=o}if(H&32){o=v[b+100>>2];c=v[o+20>>2];r=c+1|0;g=v[o+24>>2]&2147483647;B:{if(r>>>0<=g>>>0){break B}Q=g;g=g?g<<1:2;g=g>>>0>>0?r:g;if(Q>>>0>=g>>>0){break B}Bk(o+16|0,g);c=v[o+20>>2]}v[o+20>>2]=r;c=v[o+16>>2]+(c<<5)|0;z[c>>2]=z[e+160>>2];z[c+4>>2]=z[e+164>>2];z[c+8>>2]=z[e+168>>2];z[c+16>>2]=z[e+184>>2];z[c+20>>2]=z[e+188>>2];z[c+24>>2]=z[e+192>>2];o=v[b+4>>2];v[c+12>>2]=o;v[c+28>>2]=o}j=j+1|0;if((j|0)!=(d|0)){continue}break}}if(!a){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}if(sa){f=z[e+28>>2];pa=f>2];qa=f>2];da=f>2];oa=f>oa?oa:f;f=z[e+12>>2];ra=f>ra?ra:f;f=z[e+8>>2];ea=f>ea?ea:f}ua=ua+1|0;if((ua|0)!=(ka|0)){continue}break}if(!sa|ea>da){break a}v[b+4>>2]=-65281;v[e+284>>2]=0;v[e+288>>2]=0;v[e+296>>2]=0;v[e+300>>2]=0;v[e+292>>2]=1065353216;v[e+304>>2]=0;v[e+308>>2]=0;v[e+316>>2]=0;v[e+320>>2]=0;v[e+312>>2]=1065353216;v[e+324>>2]=0;v[e+328>>2]=0;v[e+332>>2]=1065353216;v[e+276>>2]=0;v[e+280>>2]=0;v[e+272>>2]=1065353216;a=YU(b,e+272|0);z[e+180>>2]=pa;z[e+176>>2]=qa;t[e+184|0]=1;z[e+172>>2]=da;z[e+168>>2]=oa;z[e+164>>2]=ra;z[e+160>>2]=ea;$U(a,e+160|0)}xa=e+336|0}function Dv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=0,ra=0,sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=0,Ca=0;h=xa-912|0;xa=h;f=v[f>>2];z[h+720>>2]=z[e>>2];qa=v[a+12>>2];ra=v[a+8>>2];o=z[a+4>>2];a=0;v[h+716>>2]=0;v[h+708>>2]=ra;v[h+712>>2]=qa;z[h+704>>2]=o;qa=v[b+12>>2];ra=v[b+8>>2];s=z[b+4>>2];v[h+700>>2]=0;v[h+692>>2]=ra;v[h+696>>2]=qa;z[h+688>>2]=s;u=z[c+20>>2];F=z[c+24>>2];q=z[c>>2];p=z[c+4>>2];r=z[c+8>>2];m=z[c+12>>2];n=z[c+16>>2];v[h+684>>2]=0;z[h+680>>2]=F;z[h+676>>2]=u;z[h+672>>2]=n;z[h+668>>2]=m;z[h+664>>2]=r;z[h+660>>2]=p;z[h+656>>2]=q;E=z[d+20>>2];y=z[d+24>>2];l=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];i=z[d+12>>2];x=z[d+16>>2];v[h+652>>2]=0;z[h+648>>2]=y;z[h+644>>2]=E;z[h+640>>2]=x;z[h+636>>2]=i;z[h+632>>2]=k;z[h+628>>2]=j;z[h+624>>2]=l;v[h+620>>2]=0;A=C(-l);n=C(n-x);u=C(u-E);F=C(F-y);E=C(C(C(A*n)-C(u*j))-C(k*F));y=C(C(i*i)+C(-.5));x=C(C(C(y*u)+C(i*C(C(l*F)-C(k*n))))-C(j*E));z[h+612>>2]=x+x;x=C(C(C(i*C(C(j*n)-C(l*u)))+C(y*F))-C(k*E));z[h+616>>2]=x+x;n=C(C(C(y*n)+C(i*C(C(k*u)-C(j*F))))-C(l*E));z[h+608>>2]=n+n;n=C(C(C(q*j)-C(l*p))+C(C(r*i)-C(m*k)));z[h+600>>2]=n;u=C(C(C(p*k)-C(j*r))+C(C(q*i)-C(m*l)));z[h+592>>2]=u;l=C(C(C(r*l)-C(k*q))+C(C(p*i)-C(m*j)));z[h+596>>2]=l;i=C(C(m*i)-C(C(C(A*q)-C(p*j))-C(k*r)));z[h+604>>2]=i;b=v[h+620>>2];v[h+584>>2]=v[h+616>>2];v[h+588>>2]=b;v[h+572>>2]=0;j=C(u+u);q=C(C(1)-C(u*j));k=C(l+l);p=C(l*k);z[h+568>>2]=q-p;r=C(n*k);m=C(i*j);z[h+564>>2]=r-m;v[h+556>>2]=0;z[h+552>>2]=r+m;m=q;q=C(n+n);r=C(n*q);z[h+548>>2]=m-r;b=v[h+612>>2];v[h+576>>2]=v[h+608>>2];v[h+580>>2]=b;m=C(n*j);k=C(i*k);z[h+560>>2]=m+k;j=C(l*j);i=C(i*q);z[h+544>>2]=j-i;v[h+540>>2]=0;z[h+536>>2]=m-k;z[h+532>>2]=j+i;z[h+528>>2]=C(C(1)-p)-r;sa=z[e+8>>2];i=C(sa*C(.15000000596046448));m=z[h+692>>2];j=m>=s?s:m;n=z[h+696>>2];j=C((j<=n?j:n)*C(.15000000596046448));j=i>2];k=o<=u?o:u;F=z[h+712>>2];k=C((k<=F?k:F)*C(.15000000596046448));i=ij?j:i;z[h+512>>2]=i;b=w[f+64|0];if(b){i=C(i*C(.800000011920929));q=C(i*i);a=b;while(1){d=v[f+76>>2];a=a-1|0;c=d+B(a,48)|0;j=z[c+24>>2];p=z[c+40>>2];i=z[c+8>>2];k=z[c>>2];l=z[c+4>>2];r=C(z[h+584>>2]+C(C(z[h+568>>2]*i)+C(C(z[h+536>>2]*k)+C(l*z[h+552>>2]))));E=C(z[h+576>>2]+C(C(z[h+560>>2]*i)+C(C(z[h+528>>2]*k)+C(l*z[h+544>>2]))));y=z[c+16>>2];x=z[c+32>>2];k=C(z[h+580>>2]+C(C(z[h+564>>2]*i)+C(C(z[h+532>>2]*k)+C(l*z[h+548>>2]))));l=z[c+20>>2];A=z[c+36>>2];i=C(C(p*C(r-j))+C(C(C(E-y)*x)+C(C(k-l)*A)));j=C(j-C(r-C(p*i)));r=C(j*j);j=C(y-C(E-C(x*i)));p=C(j*j);j=C(l-C(k-C(A*i)));a:{if(q>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+44>>2];v[c+40>>2]=v[d+40>>2];v[c+44>>2]=e;e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;break a}z[c+44>>2]=i}if(a){continue}break}a=w[f+64|0]}z[h+496>>2]=K(C(C(F*F)+C(C(o*o)+C(u*u))));z[h+480>>2]=K(C(C(n*n)+C(C(s*s)+C(m*m))));b:{c:{d:{if((a|0)==(b|0)){if(!o1(f,h+592|0,h+656|0,h+624|0,h+512|0,h+496|0,h+480|0)){break d}}a=v[h+668>>2];v[h+120>>2]=v[h+664>>2];v[h+124>>2]=a;a=v[h+636>>2];v[h+200>>2]=v[h+632>>2];v[h+204>>2]=a;a=v[h+620>>2];v[f+24>>2]=v[h+616>>2];v[f+28>>2]=a;a=v[h+660>>2];v[h+112>>2]=v[h+656>>2];v[h+116>>2]=a;a=v[h+628>>2];v[h+192>>2]=v[h+624>>2];v[h+196>>2]=a;a=v[h+612>>2];v[f+16>>2]=v[h+608>>2];v[f+20>>2]=a;a=v[h+604>>2];v[f+8>>2]=v[h+600>>2];v[f+12>>2]=a;a=v[h+596>>2];v[f>>2]=v[h+592>>2];v[f+4>>2]=a;a=v[h+124>>2];v[f+40>>2]=v[h+120>>2];v[f+44>>2]=a;a=v[h+116>>2];v[f+32>>2]=v[h+112>>2];v[f+36>>2]=a;a=v[h+196>>2];v[f+48>>2]=v[h+192>>2];v[f+52>>2]=a;a=v[h+204>>2];v[f+56>>2]=v[h+200>>2];v[f+60>>2]=a;a=v[h+684>>2];v[h+472>>2]=v[h+680>>2];v[h+476>>2]=a;a=v[h+676>>2];b=v[h+672>>2];v[h+460>>2]=0;v[h+444>>2]=0;v[h+464>>2]=b;v[h+468>>2]=a;j=z[h+660>>2];o=C(j+j);i=z[h+664>>2];p=C(o*i);l=z[h+656>>2];k=C(l+l);s=z[h+668>>2];r=C(k*s);q=C(p-r);z[h+452>>2]=q;p=C(p+r);z[h+440>>2]=p;l=C(C(1)-C(l*k));E=C(j*o);r=C(l-E);z[h+456>>2]=r;y=C(i+i);x=C(i*y);l=C(l-x);z[h+436>>2]=l;v[h+428>>2]=0;i=C(k*i);A=C(o*s);o=C(i+A);z[h+448>>2]=o;j=C(k*j);k=C(y*s);s=C(j-k);z[h+432>>2]=s;z[h+424>>2]=i-A;z[h+420>>2]=j+k;i=C(C(C(1)-E)-x);z[h+416>>2]=i;a=v[h+652>>2];v[h+408>>2]=v[h+648>>2];v[h+412>>2]=a;a=v[h+644>>2];b=v[h+640>>2];v[h+396>>2]=0;v[h+380>>2]=0;v[h+400>>2]=b;v[h+404>>2]=a;k=z[h+628>>2];J=C(k+k);j=z[h+632>>2];y=C(J*j);x=z[h+624>>2];I=C(x+x);L=z[h+636>>2];A=C(I*L);E=C(y-A);z[h+388>>2]=E;y=C(y+A);z[h+376>>2]=y;A=C(C(1)-C(x*I));M=C(k*J);x=C(A-M);z[h+392>>2]=x;H=C(j+j);N=C(j*H);A=C(A-N);z[h+372>>2]=A;v[h+364>>2]=0;j=C(I*j);O=C(J*L);J=C(j+O);z[h+384>>2]=J;k=C(I*k);H=C(H*L);I=C(k-H);z[h+368>>2]=I;L=C(j-O);z[h+360>>2]=L;H=C(k+H);z[h+356>>2]=H;M=C(C(C(1)-M)-N);z[h+352>>2]=M;v[h+348>>2]=0;N=z[h+704>>2];z[h+272>>2]=N;z[h+896>>2]=u;z[h+880>>2]=F;O=z[h+688>>2];z[h+864>>2]=O;z[h+848>>2]=m;z[h+832>>2]=n;G=z[h+720>>2];j=z[h+424>>2];k=z[h+420>>2];_=C(C(j*L)+C(C(i*M)+C(H*k)));$=C((_>C(0)?_:C(-_))+C(9.999999974752427e-7));aa=C(C(j*y)+C(C(i*I)+C(A*k)));ba=C((aa>C(0)?aa:C(-aa))+C(9.999999974752427e-7));ca=C(C(j*x)+C(C(i*J)+C(E*k)));da=C((ca>C(0)?ca:C(-ca))+C(9.999999974752427e-7));S=z[h+408>>2];T=z[h+472>>2];P=C(S-T);U=z[h+400>>2];V=z[h+464>>2];W=C(U-V);X=z[h+404>>2];Y=z[h+468>>2];Z=C(X-Y);Q=C(C(j*P)+C(C(i*W)+C(Z*k)));ta=C(G+C(C(N+C(C(O*$)+C(C(m*ba)+C(n*da))))-C(D(Q))));e:{if(taC(0)?ea:C(-ea))+C(9.999999974752427e-7));ga=C(C(p*x)+C(C(s*J)+C(l*E)));ha=C((ga>C(0)?ga:C(-ga))+C(9.999999974752427e-7));ia=C(C(p*L)+C(C(s*M)+C(l*H)));ja=C((ia>C(0)?ia:C(-ia))+C(9.999999974752427e-7));R=C(C(p*P)+C(C(s*W)+C(l*Z)));ua=C(G+C(C(u+C(C(C(m*fa)+C(n*ha))+C(ja*O)))-C(D(R))));if(uaC(0)?ka:C(-ka))+C(9.999999974752427e-7));ma=C(C(r*x)+C(C(o*J)+C(q*E)));na=C((ma>C(0)?ma:C(-ma))+C(9.999999974752427e-7));oa=C(C(r*L)+C(C(o*M)+C(q*H)));pa=C((oa>C(0)?oa:C(-oa))+C(9.999999974752427e-7));P=C(C(r*P)+C(C(o*W)+C(q*Z)));W=C(G+C(C(F+C(C(C(m*la)+C(n*na))+C(pa*O)))-C(D(P))));if(WC(G+C(C(C(u*pa)+C(F*ja))+C(C(n*ba)+C(m*da))))|(C(D(C(C(ea*P)-C(ka*R))))>C(G+C(C(C(u*la)+C(F*fa))+C(C(O*da)+C(n*$))))|C(D(C(C(ga*P)-C(ma*R))))>C(G+C(C(C(u*na)+C(F*ha))+C(C(O*ba)+C(m*$)))))){break e}if(C(D(C(C(oa*Q)-C(P*_))))>C(G+C(C(C(m*ha)+C(n*fa))+C(C(pa*N)+C(F*$))))|C(D(C(C(ka*Q)-C(P*aa))))>C(G+C(C(C(n*ja)+C(ha*O))+C(C(la*N)+C(F*ba))))|(C(D(C(C(ma*Q)-C(P*ca))))>C(G+C(C(C(m*ja)+C(fa*O))+C(C(na*N)+C(F*da))))|C(D(C(C(R*_)-C(ia*Q))))>C(G+C(C(C(m*na)+C(n*la))+C(C(ja*N)+C(u*$)))))){break e}if(C(D(C(C(R*aa)-C(ea*Q))))>C(G+C(C(C(n*pa)+C(na*O))+C(C(fa*N)+C(u*ba))))|C(D(C(C(R*ca)-C(ga*Q))))>C(G+C(C(C(m*pa)+C(la*O))+C(C(ha*N)+C(u*da))))){break e}v[h+248>>2]=0;v[h+252>>2]=0;v[h+224>>2]=0;v[h+228>>2]=0;v[h+240>>2]=0;v[h+244>>2]=0;v[h+196>>2]=0;v[h+200>>2]=0;v[h+204>>2]=0;v[h+208>>2]=0;v[h+216>>2]=0;v[h+220>>2]=0;b=ta>ua;G=b?ua:ta;a=G>W;f:{g:{h:{i:{j:{k:{l:{m:{b=a?2:b;G=a?W:G;a=G>Z;b=a?3:b;G=a?Z:G;a=G>va;switch(((a?va:G)>Aa?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<=C(0)){z[h+228>>2]=k;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=p;z[h+212>>2]=l;z[h+208>>2]=s;v[h+204>>2]=0;z[h+200>>2]=-r;z[h+196>>2]=-q;z[h+192>>2]=-o;l=C(Y-C(N*k));z[h+232>>2]=j;o=C(T-C(N*j));z[h+224>>2]=i;s=C(V-C(i*N));break n}m=C(-k);z[h+228>>2]=m;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=p;z[h+212>>2]=l;z[h+208>>2]=s;v[h+204>>2]=0;z[h+200>>2]=r;z[h+196>>2]=q;z[h+192>>2]=o;q=C(-j);z[h+232>>2]=q;p=C(-i);z[h+224>>2]=p;o=C(T+C(N*j));l=C(Y+C(N*k));s=C(C(i*N)+V);i=p;k=m;j=q}v[h+252>>2]=0;z[h+248>>2]=o;z[h+244>>2]=l;z[h+240>>2]=s;a=h+32|0;p1(a,h+192|0,h+352|0);v[h+748>>2]=0;l=C(C(z[h+200>>2]*j)+C(C(z[h+192>>2]*i)+C(k*z[h+196>>2])));z[h+736>>2]=l;o=C(C(z[h+216>>2]*j)+C(C(z[h+208>>2]*i)+C(k*z[h+212>>2])));z[h+740>>2]=o;i=C(C(z[h+232>>2]*j)+C(C(z[h+224>>2]*i)+C(k*z[h+228>>2])));z[h+744>>2]=i;v[h+812>>2]=0;z[h+808>>2]=-i;z[h+804>>2]=-o;z[h+800>>2]=-l;b=h+112|0;c=h+816|0;q1(b,c,h+800|0,a,h+688|0);r1(h+880|0,h+896|0,b,c,h+736|0,g,h+348|0,h+720|0);break f}o:{if(R<=C(0)){z[h+228>>2]=l;v[h+220>>2]=0;v[h+236>>2]=0;v[h+204>>2]=0;z[h+200>>2]=j;z[h+196>>2]=k;z[h+192>>2]=i;z[h+216>>2]=-r;z[h+212>>2]=-q;z[h+208>>2]=-o;i=C(Y-C(u*l));z[h+232>>2]=p;j=C(T-C(u*p));z[h+224>>2]=s;k=C(V-C(u*s));break o}m=C(-l);z[h+228>>2]=m;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=r;z[h+212>>2]=q;z[h+208>>2]=o;v[h+204>>2]=0;z[h+200>>2]=j;z[h+196>>2]=k;z[h+192>>2]=i;o=C(-p);z[h+232>>2]=o;q=C(-s);z[h+224>>2]=q;j=C(C(u*p)+T);i=C(C(u*l)+Y);k=C(C(u*s)+V);s=q;l=m;p=o}v[h+252>>2]=0;z[h+248>>2]=j;z[h+244>>2]=i;z[h+240>>2]=k;a=h+32|0;p1(a,h+192|0,h+352|0);v[h+748>>2]=0;i=C(C(z[h+200>>2]*p)+C(C(z[h+192>>2]*s)+C(l*z[h+196>>2])));z[h+736>>2]=i;j=C(C(z[h+216>>2]*p)+C(C(z[h+208>>2]*s)+C(l*z[h+212>>2])));z[h+740>>2]=j;k=C(C(z[h+232>>2]*p)+C(C(z[h+224>>2]*s)+C(l*z[h+228>>2])));z[h+744>>2]=k;v[h+812>>2]=0;z[h+808>>2]=-k;z[h+804>>2]=-j;z[h+800>>2]=-i;b=h+112|0;c=h+816|0;q1(b,c,h+800|0,a,h+688|0);r1(h+272|0,h+880|0,b,c,h+736|0,g,h+348|0,h+720|0);break f}p:{if(P<=C(0)){z[h+228>>2]=q;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=p;z[h+212>>2]=l;z[h+208>>2]=s;v[h+204>>2]=0;z[h+200>>2]=j;z[h+196>>2]=k;z[h+192>>2]=i;i=C(Y-C(F*q));z[h+232>>2]=r;j=C(T-C(F*r));z[h+224>>2]=o;k=C(V-C(F*o));break p}m=C(-q);z[h+228>>2]=m;v[h+220>>2]=0;v[h+236>>2]=0;v[h+204>>2]=0;z[h+200>>2]=j;z[h+196>>2]=k;z[h+192>>2]=i;n=C(-r);z[h+232>>2]=n;u=C(-o);z[h+224>>2]=u;z[h+216>>2]=-p;z[h+212>>2]=-l;z[h+208>>2]=-s;j=C(C(F*r)+T);i=C(C(F*q)+Y);k=C(C(F*o)+V);o=u;q=m;r=n}v[h+252>>2]=0;z[h+248>>2]=j;z[h+244>>2]=i;z[h+240>>2]=k;a=h+32|0;p1(a,h+192|0,h+352|0);v[h+748>>2]=0;i=C(C(z[h+200>>2]*r)+C(C(z[h+192>>2]*o)+C(q*z[h+196>>2])));z[h+736>>2]=i;j=C(C(z[h+216>>2]*r)+C(C(z[h+208>>2]*o)+C(q*z[h+212>>2])));z[h+740>>2]=j;k=C(C(z[h+232>>2]*r)+C(C(z[h+224>>2]*o)+C(q*z[h+228>>2])));z[h+744>>2]=k;v[h+812>>2]=0;z[h+808>>2]=-k;z[h+804>>2]=-j;z[h+800>>2]=-i;b=h+112|0;c=h+816|0;q1(b,c,h+800|0,a,h+688|0);r1(h+272|0,h+896|0,b,c,h+736|0,g,h+348|0,h+720|0);break f}q:{if(wa<=C(0)){z[h+228>>2]=-H;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=y;z[h+212>>2]=A;z[h+208>>2]=I;v[h+204>>2]=0;z[h+200>>2]=x;z[h+196>>2]=E;z[h+192>>2]=J;z[h+232>>2]=-L;z[h+224>>2]=-M;i=C(C(L*O)+S);j=C(C(H*O)+X);k=C(C(M*O)+U);break q}z[h+228>>2]=H;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=y;z[h+212>>2]=A;z[h+208>>2]=I;v[h+204>>2]=0;z[h+200>>2]=-x;z[h+196>>2]=-E;z[h+192>>2]=-J;j=C(X-C(H*O));z[h+232>>2]=L;i=C(S-C(L*O));z[h+224>>2]=M;k=C(U-C(M*O));H=C(-H);L=C(-L);M=C(-M)}v[h+252>>2]=0;z[h+248>>2]=i;z[h+244>>2]=j;z[h+240>>2]=k;a=h+32|0;p1(a,h+192|0,h+416|0);v[h+748>>2]=0;z[h+744>>2]=C(z[h+232>>2]*L)+C(C(z[h+224>>2]*M)+C(H*z[h+228>>2]));z[h+740>>2]=C(z[h+216>>2]*L)+C(C(z[h+208>>2]*M)+C(H*z[h+212>>2]));z[h+736>>2]=C(z[h+200>>2]*L)+C(C(z[h+192>>2]*M)+C(H*z[h+196>>2]));b=h+112|0;c=h+816|0;d=h+736|0;q1(b,c,d,a,h+704|0);r1(h+832|0,h+848|0,b,c,d,g,h+348|0,h+720|0);break g}r:{if(ya<=C(0)){z[h+228>>2]=-A;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=x;z[h+212>>2]=E;z[h+208>>2]=J;v[h+204>>2]=0;z[h+200>>2]=L;z[h+196>>2]=H;z[h+192>>2]=M;z[h+232>>2]=-y;z[h+224>>2]=-I;i=C(C(m*y)+S);j=C(C(m*A)+X);k=C(C(m*I)+U);break r}z[h+228>>2]=A;v[h+220>>2]=0;v[h+236>>2]=0;v[h+204>>2]=0;z[h+200>>2]=L;z[h+196>>2]=H;z[h+192>>2]=M;z[h+216>>2]=-x;z[h+212>>2]=-E;z[h+208>>2]=-J;j=C(X-C(m*A));z[h+232>>2]=y;i=C(S-C(m*y));z[h+224>>2]=I;k=C(U-C(m*I));A=C(-A);y=C(-y);I=C(-I)}v[h+252>>2]=0;z[h+248>>2]=i;z[h+244>>2]=j;z[h+240>>2]=k;a=h+32|0;p1(a,h+192|0,h+416|0);v[h+748>>2]=0;z[h+744>>2]=C(z[h+232>>2]*y)+C(C(z[h+224>>2]*I)+C(A*z[h+228>>2]));z[h+740>>2]=C(z[h+216>>2]*y)+C(C(z[h+208>>2]*I)+C(A*z[h+212>>2]));z[h+736>>2]=C(z[h+200>>2]*y)+C(C(z[h+192>>2]*I)+C(A*z[h+196>>2]));b=h+112|0;c=h+816|0;d=h+736|0;q1(b,c,d,a,h+704|0);r1(h+864|0,h+832|0,b,c,d,g,h+348|0,h+720|0);break g}s:{if(za<=C(0)){z[h+228>>2]=-E;v[h+220>>2]=0;v[h+236>>2]=0;v[h+204>>2]=0;z[h+200>>2]=L;z[h+196>>2]=H;z[h+192>>2]=M;z[h+232>>2]=-x;z[h+224>>2]=-J;z[h+216>>2]=-y;z[h+212>>2]=-A;z[h+208>>2]=-I;i=C(C(n*x)+S);j=C(C(n*E)+X);k=C(C(n*J)+U);break s}z[h+228>>2]=E;v[h+220>>2]=0;v[h+236>>2]=0;z[h+216>>2]=y;z[h+212>>2]=A;z[h+208>>2]=I;v[h+204>>2]=0;z[h+200>>2]=L;z[h+196>>2]=H;z[h+192>>2]=M;j=C(X-C(n*E));z[h+232>>2]=x;i=C(S-C(n*x));z[h+224>>2]=J;k=C(U-C(n*J));E=C(-E);x=C(-x);J=C(-J)}v[h+252>>2]=0;z[h+248>>2]=i;z[h+244>>2]=j;z[h+240>>2]=k;a=h+32|0;p1(a,h+192|0,h+416|0);v[h+748>>2]=0;z[h+744>>2]=C(z[h+232>>2]*x)+C(C(z[h+224>>2]*J)+C(E*z[h+228>>2]));z[h+740>>2]=C(z[h+216>>2]*x)+C(C(z[h+208>>2]*J)+C(E*z[h+212>>2]));z[h+736>>2]=C(z[h+200>>2]*x)+C(C(z[h+192>>2]*J)+C(E*z[h+196>>2]));b=h+112|0;c=h+816|0;d=h+736|0;q1(b,c,d,a,h+704|0);r1(h+864|0,h+848|0,b,c,d,g,h+348|0,h+720|0)}c=v[h+348>>2];if(!c){break f}a=0;while(1){b=B(a,48)+g|0;d=v[b+20>>2];v[h+32>>2]=v[b+16>>2];v[h+36>>2]=d;d=v[b+4>>2];v[b+16>>2]=v[b>>2];v[b+20>>2]=d;d=v[b+28>>2];v[h+40>>2]=v[b+24>>2];v[h+44>>2]=d;d=v[b+12>>2];v[b+24>>2]=v[b+8>>2];v[b+28>>2]=d;d=v[h+36>>2];v[b>>2]=v[h+32>>2];v[b+4>>2]=d;d=v[h+44>>2];v[b+8>>2]=v[h+40>>2];v[b+12>>2]=d;a=a+1|0;if((c|0)!=(a|0)){continue}break}}a=h+192|0;p1(h+32|0,h+352|0,a);p1(h+736|0,h+416|0,a);t:{c=v[h+348>>2];if(!c){break t}l=z[h+72>>2];i=z[g+40>>2];o=z[h+40>>2];j=z[g+32>>2];k=z[g+36>>2];s=z[h+56>>2];q=C(C(l*i)+C(C(o*j)+C(k*s)));p=z[h+68>>2];r=z[h+36>>2];m=z[h+52>>2];n=C(C(p*i)+C(C(r*j)+C(k*m)));u=z[h+64>>2];F=z[h+32>>2];E=z[h+48>>2];y=C(C(u*i)+C(C(F*j)+C(k*E)));x=z[h+88>>2];A=z[h+84>>2];J=z[h+776>>2];I=z[h+760>>2];L=z[h+772>>2];H=z[h+756>>2];M=z[h+792>>2];N=z[h+788>>2];O=z[h+80>>2];G=z[h+744>>2];Q=z[h+740>>2];R=z[h+768>>2];P=z[h+752>>2];S=z[h+736>>2];T=z[h+784>>2];a=0;while(1){b=B(a,48)+g|0;v[b+12>>2]=0;z[b+32>>2]=y;z[b+40>>2]=q;z[b+36>>2]=n;v[b+28>>2]=0;i=z[b+8>>2];j=z[b>>2];k=z[b+4>>2];z[b+8>>2]=M+C(C(J*i)+C(C(G*j)+C(I*k)));z[b+4>>2]=N+C(C(L*i)+C(C(Q*j)+C(H*k)));z[b>>2]=T+C(C(R*i)+C(C(S*j)+C(P*k)));i=z[b+24>>2];j=z[b+16>>2];k=z[b+20>>2];z[b+16>>2]=O+C(C(u*i)+C(C(F*j)+C(E*k)));z[b+20>>2]=A+C(C(p*i)+C(C(r*j)+C(m*k)));z[b+24>>2]=x+C(C(l*i)+C(C(o*j)+C(s*k)));a=a+1|0;if((c|0)!=(a|0)){continue}break}if(!c){break t}t2(f,g,c,sa);a=v[f+76>>2];i=z[a+40>>2];j=z[a+36>>2];k=z[a+32>>2];v[h+204>>2]=0;l=C(C(i*z[h+392>>2])+C(C(k*z[h+360>>2])+C(j*z[h+376>>2])));o=C(C(i*z[h+384>>2])+C(C(k*z[h+352>>2])+C(j*z[h+368>>2])));j=C(C(i*z[h+388>>2])+C(C(k*z[h+356>>2])+C(j*z[h+372>>2])));i=C(C(1)/C(K(C(C(l*l)+C(C(o*o)+C(j*j))))));z[h+200>>2]=l*i;z[h+196>>2]=j*i;z[h+192>>2]=o*i;b=0;a=0;u:{if(!w[f+64|0]){break u}while(1){b=v[f+76>>2]+B(a,48)|0;i=z[b+24>>2];j=z[b+20>>2];k=z[b+16>>2];l=z[b+44>>2];o=z[h+400>>2];s=z[h+384>>2];q=z[h+368>>2];p=z[h+352>>2];r=z[h+404>>2];m=z[h+388>>2];n=z[h+372>>2];u=z[h+356>>2];F=z[h+408>>2];E=z[h+392>>2];y=z[h+376>>2];x=z[h+360>>2];c=v[h+196>>2];d=v[h+192>>2];A=z[h+200>>2];b=(a<<6)+g|0;v[b+28>>2]=0;z[b+8>>2]=A;v[b>>2]=d;v[b+4>>2]=c;v[b+52>>2]=-1;z[b+12>>2]=l;z[b+24>>2]=F+C(C(E*i)+C(C(x*k)+C(j*y)));z[b+20>>2]=r+C(C(m*i)+C(C(u*k)+C(j*n)));z[b+16>>2]=o+C(C(s*i)+C(C(p*k)+C(j*q)));b=a+1|0;if(a>>>0>62){break u}a=b;if(a>>>0>2]=b;break c}a=v[h+716>>2];v[h+792>>2]=v[h+712>>2];v[h+796>>2]=a;t[h+768|0]=0;v[h+764>>2]=3;v[h+736>>2]=0;v[h+740>>2]=0;v[h+744>>2]=0;v[h+748>>2]=0;a=v[h+708>>2];v[h+784>>2]=v[h+704>>2];v[h+788>>2]=a;i=z[h+704>>2];j=z[h+708>>2];i=i<=j?i:j;j=z[h+712>>2];i=i<=j?i:j;j=C(i*C(.05000000074505806));z[h+760>>2]=j;z[h+756>>2]=j;z[h+752>>2]=i*C(.15000000596046448);t[h+304|0]=0;v[h+300>>2]=3;v[h+272>>2]=0;v[h+276>>2]=0;v[h+280>>2]=0;v[h+284>>2]=0;a=v[h+700>>2];v[h+328>>2]=v[h+696>>2];v[h+332>>2]=a;a=v[h+692>>2];v[h+320>>2]=v[h+688>>2];v[h+324>>2]=a;i=z[h+688>>2];j=z[h+692>>2];i=i<=j?i:j;j=z[h+696>>2];i=i<=j?i:j;j=C(i*C(.05000000074505806));z[h+296>>2]=j;z[h+292>>2]=j;z[h+288>>2]=i*C(.15000000596046448);t[f+66|0]=0;a=v[h+548>>2];v[h+224>>2]=v[h+544>>2];v[h+228>>2]=a;a=v[h+540>>2];v[h+216>>2]=v[h+536>>2];v[h+220>>2]=a;a=v[h+556>>2];v[h+232>>2]=v[h+552>>2];v[h+236>>2]=a;a=v[h+564>>2];v[h+240>>2]=v[h+560>>2];v[h+244>>2]=a;a=v[h+572>>2];v[h+248>>2]=v[h+568>>2];v[h+252>>2]=a;a=v[h+580>>2];v[h+256>>2]=v[h+576>>2];v[h+260>>2]=a;a=v[h+588>>2];v[h+264>>2]=v[h+584>>2];v[h+268>>2]=a;a=v[h+532>>2];v[h+208>>2]=v[h+528>>2];v[h+212>>2]=a;i=z[h+212>>2];z[h+212>>2]=z[h+224>>2];v[h+192>>2]=141468;v[h+200>>2]=h+528;v[h+196>>2]=h+736;j=z[h+216>>2];k=z[h+232>>2];z[h+224>>2]=i;z[h+216>>2]=z[h+240>>2];z[h+232>>2]=z[h+244>>2];z[h+244>>2]=k;z[h+240>>2]=j;v[h+832>>2]=141808;v[h+836>>2]=h+272;v[h+152>>2]=0;v[h+156>>2]=0;v[h+144>>2]=0;v[h+148>>2]=0;v[h+136>>2]=0;v[h+140>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+120>>2]=0;v[h+124>>2]=0;v[h+112>>2]=0;v[h+116>>2]=0;v[h+176>>2]=0;b=f+67|0;c=f+71|0;a=bY(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=v[h+548>>2];a=h- -64|0;v[a>>2]=v[h+544>>2];v[a+4>>2]=d;d=v[h+540>>2];v[h+56>>2]=v[h+536>>2];v[h+60>>2]=d;d=v[h+556>>2];v[h+72>>2]=v[h+552>>2];v[h+76>>2]=d;d=v[h+564>>2];v[h+80>>2]=v[h+560>>2];v[h+84>>2]=d;d=v[h+572>>2];v[h+88>>2]=v[h+568>>2];v[h+92>>2]=d;d=v[h+580>>2];v[h+96>>2]=v[h+576>>2];v[h+100>>2]=d;d=v[h+588>>2];v[h+104>>2]=v[h+584>>2];v[h+108>>2]=d;d=v[h+532>>2];v[h+48>>2]=v[h+528>>2];v[h+52>>2]=d;i=z[h+52>>2];z[h+52>>2]=z[a>>2];v[h+32>>2]=141468;v[h+40>>2]=h+528;v[h+36>>2]=h+736;j=z[h+56>>2];k=z[h+72>>2];z[a>>2]=i;z[h+56>>2]=z[h+80>>2];z[h+72>>2]=z[h+84>>2];z[h+84>>2]=k;z[h+80>>2]=j;v[h+896>>2]=141808;v[h+900>>2]=h+272;a=w[f+66|0];z[h+16>>2]=sa;d=v[h+28>>2];v[h+8>>2]=v[h+24>>2];v[h+12>>2]=d;d=v[h+20>>2];v[h>>2]=v[h+16>>2];v[h+4>>2]=d;a=K_(h+32|0,h+896|0,b,c,a,1,h,h+112|0)}v:{switch(a-2|0){case 0:case 3:z[h+32>>2]=z[h+512>>2]*C(.05000000074505806);v[h+908>>2]=0;i=C(z[h+120>>2]-z[h+584>>2]);j=C(z[h+112>>2]-z[h+576>>2]);k=C(z[h+116>>2]-z[h+580>>2]);z[h+904>>2]=C(z[h+568>>2]*i)+C(C(z[h+560>>2]*j)+C(k*z[h+564>>2]));z[h+900>>2]=C(z[h+552>>2]*i)+C(C(z[h+544>>2]*j)+C(k*z[h+548>>2]));z[h+896>>2]=C(z[h+536>>2]*i)+C(C(z[h+528>>2]*j)+C(k*z[h+532>>2]));b=v[h+140>>2];v[h+888>>2]=v[h+136>>2];v[h+892>>2]=b;b=v[h+132>>2];v[h+880>>2]=v[h+128>>2];v[h+884>>2]=b;z[h+876>>2]=z[h+176>>2];z[h+872>>2]=z[h+152>>2];b=v[h+148>>2];v[h+864>>2]=v[h+144>>2];v[h+868>>2]=b;Ba=h,Ca=v2(f,h+896|0,h+880|0,h+864|0,h+32|0),v[Ba+348>>2]=Ca;v[h+860>>2]=0;i=z[h+636>>2];j=C(C(i*i)+C(-.5));k=z[h+632>>2];l=z[h+152>>2];o=z[h+624>>2];s=z[h+144>>2];q=z[h+628>>2];p=z[h+148>>2];r=C(C(k*l)+C(C(o*s)+C(q*p)));m=C(C(C(i*C(C(o*p)-C(s*q)))+C(j*l))+C(k*r));m=C(m+m);n=C(C(o*r)+C(C(s*j)+C(i*C(C(q*l)-C(p*k)))));n=C(n+n);i=C(C(q*r)+C(C(j*p)+C(i*C(C(k*s)-C(l*o)))));j=C(i+i);i=C(C(1)/C(K(C(C(m*m)+C(C(n*n)+C(j*j))))));z[h+856>>2]=m*i;z[h+852>>2]=j*i;z[h+848>>2]=n*i;r2(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=w[f+64|0];a=0;if(!b){break b}a=1;c=v[f+76>>2];l=z[c+32>>2];i=l;o=z[c+36>>2];j=o;s=z[c+40>>2];k=s;w:{if((b|0)==1){break w}d=b-1|0;e=d&1;k=s;j=o;i=l;if((b|0)!=2){qa=d&-2;d=0;while(1){b=c+B(a,48)|0;i=C(C(i+z[b+32>>2])+z[b+80>>2]);k=C(C(k+z[b+40>>2])+z[b+88>>2]);j=C(C(j+z[b+36>>2])+z[b+84>>2]);a=a+2|0;d=d+2|0;if((qa|0)!=(d|0)){continue}break}}if(!e){break w}a=c+B(a,48)|0;i=C(i+z[a+32>>2]);k=C(k+z[a+40>>2]);j=C(j+z[a+36>>2])}v[h+204>>2]=0;q=z[h+632>>2];a=C(C(k*k)+C(C(i*i)+C(j*j)))>C(1.1920928955078125e-7);k=a?k:s;s=z[h+624>>2];l=a?i:l;p=z[h+628>>2];j=a?j:o;o=C(C(q*k)+C(C(s*l)+C(p*j)));i=z[h+636>>2];r=C(C(i*i)+C(-.5));m=C(C(q*o)+C(C(i*C(C(s*j)-C(l*p)))+C(k*r)));m=C(m+m);n=C(C(s*o)+C(C(i*C(C(p*k)-C(j*q)))+C(l*r)));n=C(n+n);i=C(C(p*o)+C(C(i*C(C(q*l)-C(k*s)))+C(j*r)));j=C(i+i);i=C(C(1)/C(K(C(C(m*m)+C(C(n*n)+C(j*j))))));z[h+200>>2]=m*i;z[h+196>>2]=j*i;z[h+192>>2]=n*i;r2(f,g,h+192|0,h+624|0,h+720|0)}a=1}xa=h+912|0;return a|0}function vM(a,b,c){var d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=C(0),x=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=0,G=0,H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=0,U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=C(0),rc=C(0),sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=C(0),Ac=C(0),Bc=C(0),Cc=C(0),Dc=C(0),Ec=C(0),Fc=C(0),Gc=C(0),Hc=C(0),Ic=C(0),Jc=C(0),Kc=C(0),Lc=C(0),Mc=C(0),Nc=C(0),Oc=C(0),Pc=C(0),Qc=C(0),Rc=C(0),Sc=C(0),Tc=C(0),Uc=C(0),Vc=C(0),Wc=C(0),Xc=C(0),Yc=C(0),Zc=C(0),_c=C(0),$c=C(0),ad=C(0),bd=C(0),cd=C(0),dd=C(0),ed=C(0),fd=C(0),gd=C(0),hd=C(0),id=C(0),jd=C(0),kd=C(0),ld=C(0),md=C(0),nd=C(0),od=C(0),pd=C(0),qd=C(0),rd=C(0),sd=C(0),td=C(0),ud=C(0),vd=C(0),wd=C(0),xd=C(0),yd=C(0),zd=C(0),Ad=C(0),Bd=C(0),Cd=C(0),Dd=C(0),Ed=C(0),Fd=C(0),Gd=C(0),Hd=C(0),Id=C(0),Jd=C(0),Kd=C(0),Ld=C(0),Md=C(0),Nd=C(0),Od=C(0),Pd=C(0),Qd=C(0),Rd=C(0),Sd=C(0),Td=C(0),Ud=C(0),Vd=C(0),Wd=C(0),Xd=C(0),Yd=C(0),Zd=C(0),_d=C(0),$d=C(0),ae=C(0),be=C(0),ce=C(0),de=C(0),ee=C(0),fe=C(0),ge=C(0),he=C(0),ie=C(0),je=C(0),ke=C(0),le=C(0),me=C(0),ne=C(0),oe=C(0),pe=C(0),qe=C(0),re=C(0),se=C(0),te=C(0),ue=C(0),ve=C(0),we=C(0),xe=C(0),ye=C(0),ze=C(0),Ae=C(0),Be=C(0),Ce=C(0),De=C(0),Ee=C(0),Fe=C(0),Ge=C(0),He=C(0),Ie=C(0),Je=C(0),Ke=C(0),Le=C(0),Me=C(0),Ne=C(0),Oe=C(0),Pe=C(0),Qe=C(0),Re=C(0),Se=C(0),Te=C(0),Ue=C(0),Ve=C(0),We=C(0),Xe=C(0),Ye=C(0),Ze=C(0),_e=C(0),$e=C(0),af=C(0),bf=C(0),cf=C(0),df=C(0),ef=C(0),ff=C(0),gf=C(0),hf=C(0),jf=C(0),kf=C(0),lf=C(0),mf=C(0),nf=C(0),of=C(0),pf=C(0),qf=C(0),rf=C(0),sf=C(0),tf=C(0),uf=C(0),vf=C(0),wf=C(0),xf=C(0),yf=C(0),zf=C(0),Af=C(0),Bf=C(0),Cf=C(0),Df=C(0),Ef=C(0),Ff=C(0),Gf=C(0),Hf=C(0),If=C(0),Jf=C(0),Kf=C(0),Lf=C(0),Mf=C(0),Nf=C(0),Of=C(0),Pf=C(0),Qf=C(0),Rf=C(0),Sf=C(0),Tf=C(0),Uf=C(0),Vf=C(0),Wf=C(0),Xf=C(0),Yf=C(0),Zf=C(0),_f=C(0),$f=C(0),ag=C(0),bg=C(0),cg=C(0),dg=C(0),eg=C(0),fg=C(0),gg=C(0),hg=C(0),ig=C(0),jg=C(0),kg=C(0),lg=C(0),mg=C(0),ng=C(0),og=C(0),pg=C(0),qg=C(0),rg=C(0),sg=C(0),tg=C(0),ug=C(0),vg=C(0),wg=C(0),xg=C(0),yg=C(0),zg=C(0),Ag=C(0),Bg=C(0),Cg=C(0),Dg=C(0),Eg=C(0);h=xa-224|0;xa=h;d=v[a+24>>2];if(d){sc=z[d+108>>2];tc=z[d+104>>2];uc=z[d+100>>2];vc=z[d+92>>2];wc=z[d+88>>2];xc=z[d+84>>2];n=v[a+100>>2];Wa=z[n+16>>2];o=v[a+96>>2];Xa=z[o+24>>2];za=z[o+20>>2];Ya=z[n+8>>2];Aa=z[n+4>>2];Za=z[n>>2];p=v[a+68>>2];_a=z[p+16>>2];q=v[a+64>>2];$a=z[q+24>>2];Ba=z[q+20>>2];ab=z[p+8>>2];Ca=z[p+4>>2];bb=z[p>>2];r=v[a+36>>2];cb=z[r+16>>2];s=v[a+32>>2];db=z[s+24>>2];Da=z[s+20>>2];eb=z[r+8>>2];Ea=z[r+4>>2];fb=z[r>>2];t=v[a+4>>2];gb=z[t+24>>2];Fa=z[t+20>>2];u=v[a>>2];hb=z[u+24>>2];Ga=z[u+20>>2];F=(v[a+16>>2]<<6)+b|0;Ud=z[F+28>>2];G=(v[a+12>>2]<<6)+b|0;Vd=z[G+28>>2];ib=z[n+24>>2];Ha=z[n+20>>2];jb=z[p+24>>2];Ia=z[p+20>>2];kb=z[r+24>>2];Ja=z[r+20>>2];H=(v[a+112>>2]<<6)+b|0;Wd=z[H+28>>2];I=(v[a+80>>2]<<6)+b|0;Xd=z[I+28>>2];R=(v[a+48>>2]<<6)+b|0;Yd=z[R+28>>2];Zd=z[F+60>>2];_d=z[F+56>>2];$d=z[F+52>>2];ae=z[F+48>>2];be=z[F+44>>2];ce=z[F+40>>2];de=z[F+36>>2];ee=z[F+32>>2];S=(v[a+108>>2]<<6)+b|0;fe=z[S+28>>2];T=(v[a+76>>2]<<6)+b|0;ge=z[T+28>>2];a=(v[a+44>>2]<<6)+b|0;he=z[a+28>>2];ie=z[G+60>>2];je=z[G+56>>2];ke=z[G+52>>2];le=z[G+48>>2];me=z[G+44>>2];ne=z[G+40>>2];oe=z[G+36>>2];pe=z[G+32>>2];qe=z[H+60>>2];re=z[H+56>>2];se=z[H+52>>2];te=z[H+48>>2];ue=z[H+44>>2];ve=z[H+40>>2];we=z[H+36>>2];xe=z[H+32>>2];ye=z[I+60>>2];ze=z[I+56>>2];Ae=z[I+52>>2];Be=z[I+48>>2];Ce=z[I+44>>2];De=z[I+40>>2];Ee=z[I+36>>2];Fe=z[I+32>>2];Ge=z[R+60>>2];He=z[R+56>>2];Ie=z[R+52>>2];Je=z[R+48>>2];Ke=z[R+44>>2];Le=z[R+40>>2];Me=z[R+36>>2];Ne=z[R+32>>2];Oe=z[S+60>>2];Pe=z[S+56>>2];Qe=z[S+52>>2];Re=z[S+48>>2];Se=z[S+44>>2];Te=z[S+40>>2];Ue=z[S+36>>2];Ve=z[S+32>>2];We=z[T+60>>2];Xe=z[T+56>>2];Ye=z[T+52>>2];Ze=z[T+48>>2];_e=z[T+44>>2];$e=z[T+40>>2];af=z[T+36>>2];bf=z[T+32>>2];cf=z[a+60>>2];df=z[a+56>>2];ef=z[a+52>>2];ff=z[a+48>>2];gf=z[a+44>>2];hf=z[a+40>>2];jf=z[a+36>>2];kf=z[a+32>>2];ga=z[u+52>>2];U=z[s+52>>2];ha=z[q+52>>2];V=z[o+52>>2];ia=z[u+56>>2];ja=z[s+56>>2];W=z[q+56>>2];ka=z[o+56>>2];X=z[r+48>>2];la=z[p+48>>2];ma=z[n+48>>2];Y=z[t+52>>2];na=z[r+52>>2];oa=z[p+52>>2];Z=z[n+52>>2];pa=z[t+56>>2];qa=z[r+56>>2];ra=z[p+56>>2];e=z[n+56>>2];lb=z[u+36>>2];mb=z[u+40>>2];nb=z[t+36>>2];ob=z[t+40>>2];pb=z[s+36>>2];qb=z[s+40>>2];rb=z[r+32>>2];sb=z[r+36>>2];tb=z[r+40>>2];ub=z[q+36>>2];vb=z[q+40>>2];wb=z[p+32>>2];xb=z[p+36>>2];yb=z[p+40>>2];zb=z[o+36>>2];Ab=z[o+40>>2];Bb=z[n+32>>2];Cb=z[n+36>>2];Db=z[n+40>>2];f=z[H+12>>2];g=z[I+12>>2];sa=z[R+12>>2];ta=z[F+12>>2];ua=z[H+8>>2];_=z[I+8>>2];va=z[R+8>>2];wa=z[F+8>>2];i=z[F>>2];ea=z[R>>2];$=z[I>>2];J=z[H>>2];aa=z[F+4>>2];ba=z[R+4>>2];K=z[I+4>>2];fa=z[H+4>>2];k=z[G+12>>2];D=z[a+12>>2];P=z[T+12>>2];Q=z[S+12>>2];E=z[G+8>>2];ca=z[a+8>>2];L=z[T+8>>2];w=z[S+8>>2];M=z[G+4>>2];l=z[a+4>>2];x=z[T+4>>2];da=z[S+4>>2];N=z[G>>2];A=z[a>>2];O=z[T>>2];yc=z[d+96>>2];zc=z[d+80>>2];Eb=z[o+16>>2];Fb=z[o+8>>2];Ka=z[o+4>>2];Gb=z[o>>2];Hb=z[q+16>>2];Ib=z[q+8>>2];La=z[q+4>>2];Jb=z[q>>2];Kb=z[s+16>>2];Lb=z[s+8>>2];Ma=z[s+4>>2];Mb=z[s>>2];Nb=z[t+16>>2];Ob=z[u+16>>2];Pb=z[t+8>>2];Na=z[t+4>>2];Qb=z[t>>2];Rb=z[u+8>>2];Oa=z[u+4>>2];Sb=z[u>>2];m=z[u+48>>2];B=z[t+48>>2];Pa=z[s+48>>2];Qa=z[q+48>>2];Ra=z[o+48>>2];Tb=z[u+32>>2];Ub=z[t+32>>2];Vb=z[s+32>>2];Wb=z[q+32>>2];Xb=z[o+32>>2];z[h+220>>2]=z[S>>2];z[h+216>>2]=O;z[h+212>>2]=A;z[h+208>>2]=N;z[h+204>>2]=da;z[h+200>>2]=x;z[h+196>>2]=l;z[h+192>>2]=M;z[h+188>>2]=w;z[h+184>>2]=L;z[h+180>>2]=ca;z[h+176>>2]=E;z[h+172>>2]=Q;z[h+168>>2]=P;z[h+164>>2]=D;z[h+160>>2]=k;z[h+140>>2]=fa;z[h+136>>2]=K;z[h+132>>2]=ba;z[h+128>>2]=aa;z[h+156>>2]=J;z[h+152>>2]=$;z[h+148>>2]=ea;z[h+144>>2]=i;z[h+112>>2]=wa;z[h+116>>2]=va;z[h+120>>2]=_;z[h+124>>2]=ua;z[h+96>>2]=ta;z[h+100>>2]=sa;z[h+104>>2]=g;z[h+108>>2]=f;wM(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);wM(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(v[d+4>>2]){lf=C(z[d+636>>2]+C(C(C(Xb*z[d+300>>2])+C(C(zb*z[d+348>>2])+C(Ab*z[d+396>>2])))-C(C(Bb*z[d+444>>2])+C(C(Cb*z[d+492>>2])+C(Db*z[d+540>>2])))));mf=C(z[d+632>>2]+C(C(C(Wb*z[d+296>>2])+C(C(ub*z[d+344>>2])+C(vb*z[d+392>>2])))-C(C(wb*z[d+440>>2])+C(C(xb*z[d+488>>2])+C(yb*z[d+536>>2])))));nf=C(z[d+628>>2]+C(C(C(Vb*z[d+292>>2])+C(C(pb*z[d+340>>2])+C(qb*z[d+388>>2])))-C(C(rb*z[d+436>>2])+C(C(sb*z[d+484>>2])+C(tb*z[d+532>>2])))));of=C(z[d+624>>2]+C(C(C(Tb*z[d+288>>2])+C(C(lb*z[d+336>>2])+C(mb*z[d+384>>2])))-C(C(Ub*z[d+432>>2])+C(C(nb*z[d+480>>2])+C(ob*z[d+528>>2])))));pf=C(z[d+620>>2]+C(C(C(Xb*z[d+284>>2])+C(C(zb*z[d+332>>2])+C(Ab*z[d+380>>2])))-C(C(Bb*z[d+428>>2])+C(C(Cb*z[d+476>>2])+C(Db*z[d+524>>2])))));qf=C(z[d+616>>2]+C(C(C(Wb*z[d+280>>2])+C(C(ub*z[d+328>>2])+C(vb*z[d+376>>2])))-C(C(wb*z[d+424>>2])+C(C(xb*z[d+472>>2])+C(yb*z[d+520>>2])))));rf=C(z[d+612>>2]+C(C(C(Vb*z[d+276>>2])+C(C(pb*z[d+324>>2])+C(qb*z[d+372>>2])))-C(C(rb*z[d+420>>2])+C(C(sb*z[d+468>>2])+C(tb*z[d+516>>2])))));sf=C(z[d+608>>2]+C(C(C(Tb*z[d+272>>2])+C(C(lb*z[d+320>>2])+C(mb*z[d+368>>2])))-C(C(Ub*z[d+416>>2])+C(C(nb*z[d+464>>2])+C(ob*z[d+512>>2])))));tf=C(z[d+604>>2]+C(C(C(Xb*z[d+268>>2])+C(C(zb*z[d+316>>2])+C(Ab*z[d+364>>2])))-C(C(Bb*z[d+412>>2])+C(C(Cb*z[d+460>>2])+C(Db*z[d+508>>2])))));uf=C(z[d+600>>2]+C(C(C(Wb*z[d+264>>2])+C(C(ub*z[d+312>>2])+C(vb*z[d+360>>2])))-C(C(wb*z[d+408>>2])+C(C(xb*z[d+456>>2])+C(yb*z[d+504>>2])))));vf=C(z[d+596>>2]+C(C(C(Vb*z[d+260>>2])+C(C(pb*z[d+308>>2])+C(qb*z[d+356>>2])))-C(C(rb*z[d+404>>2])+C(C(sb*z[d+452>>2])+C(tb*z[d+500>>2])))));wf=C(z[d+592>>2]+C(C(C(Tb*z[d+256>>2])+C(C(lb*z[d+304>>2])+C(mb*z[d+352>>2])))-C(C(Ub*z[d+400>>2])+C(C(nb*z[d+448>>2])+C(ob*z[d+496>>2])))));Yb=z[h+12>>2];xf=C(C(e+Yb)-z[d+252>>2]);Zb=z[h+8>>2];yf=C(C(ra+Zb)-z[d+248>>2]);_b=z[h+4>>2];zf=C(C(qa+_b)-z[d+244>>2]);$b=z[h>>2];Af=C(C(pa+$b)-z[d+240>>2]);ac=z[h+28>>2];Bf=C(C(Z+ac)-z[d+236>>2]);bc=z[h+24>>2];Cf=C(C(oa+bc)-z[d+232>>2]);cc=z[h+20>>2];Df=C(C(na+cc)-z[d+228>>2]);dc=z[h+16>>2];Ef=C(C(Y+dc)-z[d+224>>2]);ec=z[h+44>>2];Ff=C(C(ma+ec)-z[d+220>>2]);fc=z[h+40>>2];Gf=C(C(la+fc)-z[d+216>>2]);gc=z[h+36>>2];Hf=C(C(X+gc)-z[d+212>>2]);hc=z[h+60>>2];If=C(C(ka+hc)-z[d+204>>2]);ic=z[h+56>>2];Jf=C(C(W+ic)-z[d+200>>2]);jc=z[h+52>>2];Kf=C(C(ja+jc)-z[d+196>>2]);kc=z[h+48>>2];Lf=C(C(ia+kc)-z[d+192>>2]);lc=z[h+76>>2];Mf=C(C(V+lc)-z[d+188>>2]);mc=z[h+72>>2];Nf=C(C(ha+mc)-z[d+184>>2]);nc=z[h+68>>2];Of=C(C(U+nc)-z[d+180>>2]);oc=z[h+64>>2];Pf=C(C(ga+oc)-z[d+176>>2]);i=Ra;Ra=z[h+92>>2];Qf=C(C(i+Ra)-z[d+172>>2]);i=Qa;Qa=z[h+88>>2];Rf=C(C(i+Qa)-z[d+168>>2]);pc=z[h+84>>2];Sf=C(C(Pa+pc)-z[d+164>>2]);qc=z[h+32>>2];Tf=C(C(B+qc)-z[d+208>>2]);rc=z[h+80>>2];Uf=C(C(m+rc)-z[d+160>>2]);Ac=z[d+76>>2];Bc=z[d+72>>2];Cc=z[d+68>>2];Dc=z[d+60>>2];Ec=z[d+56>>2];Fc=z[d+52>>2];Gc=z[d+64>>2];Hc=z[d+48>>2];a=d+640|0;b=0;while(1){Vf=z[a+160>>2];Wf=z[a+144>>2];Xf=z[a+224>>2];ga=z[a+80>>2];Yf=z[a+208>>2];U=z[a+96>>2];N=z[a+276>>2];A=z[a+292>>2];Ic=z[a+308>>2];Zf=z[a+244>>2];_f=z[a+180>>2];da=z[a+324>>2];$f=z[a+116>>2];O=z[a+260>>2];ag=z[a+52>>2];bg=z[a+340>>2];F=v[a+356>>2];cg=z[a+164>>2];dg=z[a+132>>2];ha=z[a+20>>2];eg=z[a+148>>2];V=z[a+36>>2];fg=z[a+228>>2];gg=z[a+196>>2];ia=z[a+84>>2];hg=z[a+212>>2];ja=z[a+68>>2];W=z[a+100>>2];L=z[a+280>>2];w=z[a+296>>2];Jc=z[a+312>>2];ig=z[a+248>>2];jg=z[a+184>>2];ca=z[a+328>>2];kg=z[a+120>>2];M=z[a+264>>2];lg=z[a+56>>2];mg=z[a+344>>2];G=v[a+360>>2];D=z[a+168>>2];P=z[a+136>>2];ka=z[a+24>>2];Q=z[a+152>>2];X=z[a+40>>2];E=z[a+232>>2];ng=z[a+200>>2];la=z[a+88>>2];og=z[a+216>>2];ma=z[a+72>>2];Y=z[a+104>>2];Kc=z[a+272>>2];Lc=z[a+288>>2];Mc=z[a+304>>2];pg=z[a+240>>2];qg=z[a+176>>2];Pa=z[a+320>>2];rg=z[a+112>>2];Nc=z[a+256>>2];sg=z[a+48>>2];tg=z[a+336>>2];H=v[a+352>>2];ug=z[d+544>>2];ya=z[d+256>>2];Oc=z[d+304>>2];Pc=z[d+352>>2];Qc=z[d+400>>2];Rc=z[d+448>>2];Sc=z[d+496>>2];vg=z[d+560>>2];Tc=z[d+272>>2];Uc=z[d+320>>2];Vc=z[d+368>>2];Wc=z[d+416>>2];Xc=z[d+464>>2];Yc=z[d+512>>2];wg=z[d+576>>2];Zc=z[d+288>>2];_c=z[d+336>>2];$c=z[d+384>>2];xg=z[a+128>>2];na=z[a+16>>2];oa=z[a>>2];Z=z[a+32>>2];ad=z[d+432>>2];bd=z[d+480>>2];cd=z[d+528>>2];yg=z[a+192>>2];pa=z[a+64>>2];zg=z[d+548>>2];m=z[d+260>>2];B=z[d+308>>2];Sa=z[d+356>>2];dd=z[d+404>>2];ed=z[d+452>>2];fd=z[d+500>>2];Ag=z[d+564>>2];gd=z[d+276>>2];hd=z[d+324>>2];id=z[d+372>>2];jd=z[d+420>>2];kd=z[d+468>>2];ld=z[d+516>>2];Bg=z[d+580>>2];md=z[d+292>>2];nd=z[d+340>>2];od=z[d+388>>2];qa=z[a+4>>2];pd=z[d+436>>2];qd=z[d+484>>2];rd=z[d+532>>2];Cg=z[d+552>>2];fa=z[d+264>>2];l=z[d+312>>2];x=z[d+360>>2];Ta=z[d+408>>2];sd=z[d+456>>2];td=z[d+504>>2];Dg=z[d+568>>2];ud=z[d+280>>2];vd=z[d+328>>2];wd=z[d+376>>2];xd=z[d+424>>2];yd=z[d+472>>2];zd=z[d+520>>2];Eg=z[d+584>>2];Ad=z[d+296>>2];Bd=z[d+344>>2];Cd=z[d+392>>2];ra=z[a+8>>2];Dd=z[d+440>>2];Ed=z[d+488>>2];Fd=z[d+536>>2];sa=z[a+44>>2];ta=z[a+28>>2];e=C(z[a+140>>2]+C(C(lc*sa)-C(hc*ta)));ua=z[a+12>>2];f=C(z[a+156>>2]+C(C(hc*ua)-C(Ra*sa)));g=C(C(C(Ra*ta)-C(lc*ua))+z[a+172>>2]);i=C(C(C(fe*e)+C(Ve*f))+C(Ue*g));ea=z[d+268>>2];$=C(C(C(Te*e)+C(Se*f))+C(Re*g));k=z[d+316>>2];J=C(C(C(Qe*e)+C(Pe*f))+C(Oe*g));Ua=z[d+364>>2];_=z[a+108>>2];va=z[a+92>>2];e=C(z[a+204>>2]+C(C(ac*_)-C(Yb*va)));wa=z[a+76>>2];f=C(z[a+220>>2]+C(C(Yb*wa)-C(ec*_)));g=C(C(C(ec*va)-C(ac*wa))+z[a+236>>2]);aa=C(C(C(Wd*e)+C(xe*f))+C(we*g));Va=z[d+412>>2];ba=C(C(C(ve*e)+C(ue*f))+C(te*g));Gd=z[d+460>>2];K=C(C(C(se*e)+C(re*f))+C(qe*g));Hd=z[d+508>>2];e=C(z[d+556>>2]*C(C(i*ea)+C(C($*k)+C(C(J*Ua)+C(C(aa*Va)+C(C(ba*Gd)+C(K*Hd)))))));Id=z[d+284>>2];Jd=z[d+332>>2];Kd=z[d+380>>2];Ld=z[d+428>>2];Md=z[d+476>>2];Nd=z[d+524>>2];f=C(z[d+572>>2]*C(C(i*Id)+C(C($*Jd)+C(C(J*Kd)+C(C(aa*Ld)+C(C(ba*Md)+C(K*Nd)))))));Od=z[d+300>>2];Pd=z[d+348>>2];Qd=z[d+396>>2];Rd=z[d+444>>2];Sd=z[d+492>>2];Td=z[d+540>>2];g=C(z[d+588>>2]*C(C(i*Od)+C(C($*Pd)+C(C(J*Qd)+C(C(aa*Rd)+C(C(ba*Sd)+C(K*Td)))))));j=i;I=v[a+364>>2];i=I&16?C(1):C(0);ea=C(j-C(i*C(C(ea*e)+C(C(Id*f)+C(Od*g)))));$=C($-C(i*C(C(k*e)+C(C(Jd*f)+C(Pd*g)))));J=C(J-C(i*C(C(Ua*e)+C(C(Kd*f)+C(Qd*g)))));aa=C(aa-C(i*C(C(Va*e)+C(C(Ld*f)+C(Rd*g)))));ba=C(ba-C(i*C(C(Gd*e)+C(C(Md*f)+C(Sd*g)))));K=C(K-C(i*C(C(Hd*e)+C(C(Nd*f)+C(Td*g)))));k=C(C(C(Dc*C(C(C(ta*ta)+C(sa*sa))+C(ua*ua)))+C(vc*C(C(ea*ea)+C(C($*$)+C(J*J)))))+C(C(Ac*C(C(C(va*va)+C(_*_))+C(wa*wa)))+C(sc*C(C(aa*aa)+C(C(ba*ba)+C(K*K))))));k=k>C(0)?C(C(1)/k):C(0);i=C(C(C(C(C(C(Mf*ta)+C(If*sa))+C(Qf*ua))-C(C(C(Bf*va)+C(xf*_))+C(Ff*wa)))+C(z[a+60>>2]-C(i*C(C(tf*e)+C(C(pf*f)+C(lf*g))))))+C(z[a+348>>2]*C(C(C(Xb*ea)+C(C(zb*$)+C(Ab*J)))-C(C(Bb*aa)+C(C(Cb*ba)+C(Db*K))))));g=z[a+268>>2];f=C(C(i-C(g*c))*z[a+124>>2]);e=z[a+332>>2];f=e>f?f:e;e=I&64?C(-34028234663852886e22):C(-e);Ua=z[a+316>>2];e=C(C(C(C(C(C(C(C(Ka*ta)+C(Fb*sa))+C(Gb*ua))-C(C(C(Aa*va)+C(Ya*_))+C(Za*wa)))+C(C(C(Eb*ea)+C(C(za*$)+C(Xa*J)))-C(C(Wa*aa)+C(C(Ha*ba)+C(ib*K)))))*C(z[a+188>>2]*k))+C(k*C(g+(e>2]*Ua));f=z[a+300>>2];e=e>2];Va=e>f?e:f;z[a+316>>2]=Va;e=C(P+C(C(mc*X)-C(ic*ka)));f=C(Q+C(C(ic*ra)-C(Qa*X)));g=C(D+C(C(Qa*ka)-C(mc*ra)));i=C(C(C(ge*e)+C(bf*f))+C(af*g));k=C(C(C($e*e)+C(_e*f))+C(Ze*g));D=C(C(C(Ye*e)+C(Xe*f))+C(We*g));e=C(ng+C(C(bc*Y)-C(Zb*la)));f=C(og+C(C(Zb*ma)-C(fc*Y)));g=C(E+C(C(fc*la)-C(bc*ma)));P=C(C(C(Xd*e)+C(Fe*f))+C(Ee*g));Q=C(C(C(De*e)+C(Ce*f))+C(Be*g));E=C(C(C(Ae*e)+C(ze*f))+C(ye*g));e=C(Cg*C(C(i*fa)+C(C(l*k)+C(C(x*D)+C(C(Ta*P)+C(C(sd*Q)+C(td*E)))))));j=i;f=G&16?C(1):C(0);g=C(Dg*C(C(i*ud)+C(C(k*vd)+C(C(D*wd)+C(C(P*xd)+C(C(Q*yd)+C(E*zd)))))));i=C(Eg*C(C(i*Ad)+C(C(k*Bd)+C(C(D*Cd)+C(C(P*Dd)+C(C(Q*Ed)+C(E*Fd)))))));fa=C(j-C(f*C(C(fa*e)+C(C(ud*g)+C(Ad*i)))));k=C(k-C(f*C(C(l*e)+C(C(vd*g)+C(Bd*i)))));D=C(D-C(f*C(C(x*e)+C(C(wd*g)+C(Cd*i)))));P=C(P-C(f*C(C(Ta*e)+C(C(xd*g)+C(Dd*i)))));Q=C(Q-C(f*C(C(sd*e)+C(C(yd*g)+C(Ed*i)))));E=C(E-C(f*C(C(td*e)+C(C(zd*g)+C(Fd*i)))));l=C(C(C(Ec*C(C(C(ka*ka)+C(X*X))+C(ra*ra)))+C(wc*C(C(fa*fa)+C(C(k*k)+C(D*D)))))+C(C(Bc*C(C(C(la*la)+C(Y*Y))+C(ma*ma)))+C(tc*C(C(P*P)+C(C(Q*Q)+C(E*E))))));l=l>C(0)?C(C(1)/l):C(0);e=C(kg*C(C(C(C(C(C(C(Nf*ka)+C(Jf*X))+C(Rf*ra))-C(C(C(Cf*la)+C(yf*Y))+C(Gf*ma)))+C(lg-C(f*C(C(uf*e)+C(C(qf*g)+C(mf*i))))))+C(mg*C(C(C(Wb*fa)+C(C(ub*k)+C(vb*D)))-C(C(wb*P)+C(C(xb*Q)+C(yb*E))))))-C(M*c)));e=ef?e:f))))+C(ig*Jc));e=eL?e:L;z[a+312>>2]=Ta;e=C(dg+C(C(nc*V)-C(jc*ha)));f=C(eg+C(C(jc*qa)-C(pc*V)));g=C(cg+C(C(pc*ha)-C(nc*qa)));i=C(C(C(he*e)+C(kf*f))+C(jf*g));L=C(C(C(hf*e)+C(gf*f))+C(ff*g));w=C(C(C(ef*e)+C(df*f))+C(cf*g));e=C(gg+C(C(cc*W)-C(_b*ia)));f=C(hg+C(C(_b*ja)-C(gc*W)));g=C(fg+C(C(gc*ia)-C(cc*ja)));M=C(C(C(Yd*e)+C(Ne*f))+C(Me*g));l=C(C(C(Le*e)+C(Ke*f))+C(Je*g));x=C(C(C(Ie*e)+C(He*f))+C(Ge*g));e=C(zg*C(C(i*m)+C(C(B*L)+C(C(Sa*w)+C(C(dd*M)+C(C(ed*l)+C(fd*x)))))));j=i;f=F&16?C(1):C(0);g=C(Ag*C(C(i*gd)+C(C(L*hd)+C(C(w*id)+C(C(M*jd)+C(C(l*kd)+C(x*ld)))))));i=C(Bg*C(C(i*md)+C(C(L*nd)+C(C(w*od)+C(C(M*pd)+C(C(l*qd)+C(x*rd)))))));ca=C(j-C(f*C(C(m*e)+C(C(gd*g)+C(md*i)))));L=C(L-C(f*C(C(B*e)+C(C(hd*g)+C(nd*i)))));w=C(w-C(f*C(C(Sa*e)+C(C(id*g)+C(od*i)))));M=C(M-C(f*C(C(dd*e)+C(C(jd*g)+C(pd*i)))));l=C(l-C(f*C(C(ed*e)+C(C(kd*g)+C(qd*i)))));x=C(x-C(f*C(C(fd*e)+C(C(ld*g)+C(rd*i)))));m=C(C(C(Fc*C(C(C(ha*ha)+C(V*V))+C(qa*qa)))+C(xc*C(C(ca*ca)+C(C(L*L)+C(w*w)))))+C(C(Cc*C(C(C(ia*ia)+C(W*W))+C(ja*ja)))+C(uc*C(C(M*M)+C(C(l*l)+C(x*x))))));m=m>C(0)?C(C(1)/m):C(0);e=C($f*C(C(C(C(C(C(C(Of*ha)+C(Kf*V))+C(Sf*qa))-C(C(C(Df*ia)+C(zf*W))+C(Hf*ja)))+C(ag-C(f*C(C(vf*e)+C(C(rf*g)+C(nf*i))))))+C(bg*C(C(C(Vb*ca)+C(C(pb*L)+C(qb*w)))-C(C(rb*M)+C(C(sb*l)+C(tb*x))))))-C(O*c)));e=ef?e:f))))+C(Zf*Ic));e=eN?e:N;z[a+308>>2]=Sa;e=C(xg+C(C(oc*Z)-C(kc*na)));f=C(Wf+C(C(kc*oa)-C(rc*Z)));g=C(Vf+C(C(rc*na)-C(oc*oa)));i=C(C(C(Vd*e)+C(pe*f))+C(oe*g));N=C(C(C(ne*e)+C(me*f))+C(le*g));A=C(C(C(ke*e)+C(je*f))+C(ie*g));e=C(yg+C(C(dc*U)-C($b*ga)));f=C(Yf+C(C($b*pa)-C(qc*U)));g=C(Xf+C(C(qc*ga)-C(dc*pa)));O=C(C(C(Ud*e)+C(ee*f))+C(de*g));m=C(C(C(ce*e)+C(be*f))+C(ae*g));B=C(C(C($d*e)+C(_d*f))+C(Zd*g));e=C(ug*C(C(i*ya)+C(C(Oc*N)+C(C(Pc*A)+C(C(Qc*O)+C(C(Rc*m)+C(Sc*B)))))));j=i;f=H&16?C(1):C(0);g=C(vg*C(C(i*Tc)+C(C(N*Uc)+C(C(A*Vc)+C(C(O*Wc)+C(C(m*Xc)+C(B*Yc)))))));i=C(wg*C(C(i*Zc)+C(C(N*_c)+C(C(A*$c)+C(C(O*ad)+C(C(m*bd)+C(B*cd)))))));da=C(j-C(f*C(C(ya*e)+C(C(Tc*g)+C(Zc*i)))));N=C(N-C(f*C(C(Oc*e)+C(C(Uc*g)+C(_c*i)))));A=C(A-C(f*C(C(Pc*e)+C(C(Vc*g)+C($c*i)))));O=C(O-C(f*C(C(Qc*e)+C(C(Wc*g)+C(ad*i)))));m=C(m-C(f*C(C(Rc*e)+C(C(Xc*g)+C(bd*i)))));B=C(B-C(f*C(C(Sc*e)+C(C(Yc*g)+C(cd*i)))));ya=C(C(C(Hc*C(C(C(na*na)+C(Z*Z))+C(oa*oa)))+C(zc*C(C(da*da)+C(C(N*N)+C(A*A)))))+C(C(Gc*C(C(C(ga*ga)+C(U*U))+C(pa*pa)))+C(yc*C(C(O*O)+C(C(m*m)+C(B*B))))));ya=ya>C(0)?C(C(1)/ya):C(0);e=C(rg*C(C(C(C(C(C(C(Pf*na)+C(Lf*Z))+C(Uf*oa))-C(C(C(Ef*ga)+C(Af*U))+C(Tf*pa)))+C(sg-C(f*C(C(wf*e)+C(C(sf*g)+C(of*i))))))+C(tg*C(C(C(Tb*da)+C(C(lb*N)+C(mb*A)))-C(C(Ub*O)+C(C(nb*m)+C(ob*B))))))-C(Nc*c)));e=ef?e:f))))+C(pg*Mc));e=eKc?e:Kc;z[a+304>>2]=i;j=K;e=C(Va-Ua);K=C(sc*e);ib=C(ib-C(j*K));j=E;f=C(Ta-Jc);E=C(tc*f);jb=C(jb-C(j*E));j=x;g=C(Sa-Ic);x=C(uc*g);kb=C(kb-C(j*x));j=B;i=C(i-Mc);B=C(yc*i);gb=C(gb-C(j*B));j=J;J=C(vc*e);Xa=C(Xa+C(j*J));j=D;D=C(wc*f);$a=C($a+C(j*D));j=w;w=C(xc*g);db=C(db+C(j*w));j=A;A=C(zc*i);hb=C(hb+C(j*A));j=_;_=C(Ac*e);Ya=C(Ya-C(j*_));j=Y;Y=C(Bc*f);ab=C(ab-C(j*Y));j=W;W=C(Cc*g);eb=C(eb-C(j*W));j=U;U=C(Gc*i);Pb=C(Pb-C(j*U));e=C(Dc*e);Fb=C(Fb+C(sa*e));j=X;X=C(Ec*f);Ib=C(Ib+C(j*X));j=V;V=C(Fc*g);Lb=C(Lb+C(j*V));j=Z;Z=C(Hc*i);Rb=C(Rb+C(j*Z));Ha=C(Ha-C(ba*K));Ia=C(Ia-C(Q*E));Ja=C(Ja-C(l*x));Fa=C(Fa-C(m*B));za=C(za+C($*J));Ba=C(Ba+C(k*D));Da=C(Da+C(L*w));Ga=C(Ga+C(N*A));Aa=C(Aa-C(va*_));Ca=C(Ca-C(la*Y));Ea=C(Ea-C(ia*W));Na=C(Na-C(ga*U));Ka=C(Ka+C(ta*e));La=C(La+C(ka*X));Ma=C(Ma+C(ha*V));Oa=C(Oa+C(na*Z));Wa=C(Wa-C(aa*K));_a=C(_a-C(P*E));cb=C(cb-C(M*x));Nb=C(Nb-C(O*B));Eb=C(Eb+C(ea*J));Hb=C(Hb+C(fa*D));Kb=C(Kb+C(ca*w));Ob=C(Ob+C(da*A));Za=C(Za-C(wa*_));bb=C(bb-C(ma*Y));fb=C(fb-C(ja*W));Qb=C(Qb-C(pa*U));Gb=C(Gb+C(ua*e));Jb=C(Jb+C(ra*X));Mb=C(Mb+C(qa*V));Sb=C(Sb+C(oa*Z));a=a+368|0;b=b+1|0;if(b>>>0>2]){continue}break}}z[u+28>>2]=Ga;z[u+24>>2]=hb;z[u+20>>2]=Ga;z[u+16>>2]=Ob;z[u+12>>2]=Oa;z[u+8>>2]=Rb;z[u+4>>2]=Oa;z[u>>2]=Sb;z[s+28>>2]=Da;z[s+24>>2]=db;z[s+20>>2]=Da;z[s+16>>2]=Kb;z[s+12>>2]=Ma;z[s+8>>2]=Lb;z[s+4>>2]=Ma;z[s>>2]=Mb;z[q+28>>2]=Ba;z[q+24>>2]=$a;z[q+20>>2]=Ba;z[q+16>>2]=Hb;z[q+12>>2]=La;z[q+8>>2]=Ib;z[q+4>>2]=La;z[q>>2]=Jb;z[o+28>>2]=za;z[o+24>>2]=Xa;z[o+20>>2]=za;z[o+16>>2]=Eb;z[o+12>>2]=Ka;z[o+8>>2]=Fb;z[o+4>>2]=Ka;z[o>>2]=Gb;z[t+28>>2]=Fa;z[t+24>>2]=gb;z[t+20>>2]=Fa;z[t+16>>2]=Nb;z[t+12>>2]=Na;z[t+8>>2]=Pb;z[t+4>>2]=Na;z[t>>2]=Qb;z[r+28>>2]=Ja;z[r+24>>2]=kb;z[r+20>>2]=Ja;z[r+16>>2]=cb;z[r+12>>2]=Ea;z[r+8>>2]=eb;z[r+4>>2]=Ea;z[r>>2]=fb;z[p+28>>2]=Ia;z[p+24>>2]=jb;z[p+20>>2]=Ia;z[p+16>>2]=_a;z[p+12>>2]=Ca;z[p+8>>2]=ab;z[p+4>>2]=Ca;z[p>>2]=bb;z[n+28>>2]=Ha;z[n+24>>2]=ib;z[n+20>>2]=Ha;z[n+16>>2]=Wa;z[n+12>>2]=Aa;z[n+8>>2]=Ya;z[n+4>>2]=Aa;z[n>>2]=Za}xa=h+224|0}function ty(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;j=j|0;var k=0,l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),E=C(0),F=0,G=C(0),H=0,I=0,J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=0,pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=0,Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=0,$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=0,jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=0,Ib=0;P=xa-32|0;xa=P;v[c+4112>>2]=0;v[P+28>>2]=1065353216;v[P+24>>2]=1065353216;v[P+20>>2]=1065353216;v[P+16>>2]=1065353216;t[P+15|0]=0;t[P+14|0]=0;F=c+16|0;l=z[v[a+28>>2]+76>>2];n=z[v[a+32>>2]+76>>2];Hb=a,Ib=uy(F,b,P+15|0,P+14|0,P+28|0,P+24|0,P+20|0,P+16|0,l>2]=Ib;v[a+116>>2]=F;t[a+125|0]=w[a+125|0]|t[P+14|0]&1;t[a+124|0]=w[P+15|0];z[a>>2]=z[P+28>>2]*z[a>>2];z[a+8>>2]=z[P+24>>2]*z[a+8>>2];z[a+4>>2]=z[P+20>>2]*z[a+4>>2];z[a+12>>2]=z[P+16>>2]*z[a+12>>2];H=xa-32|0;xa=H;F=c+4128|0;b=F;v[b+7684>>2]=0;v[b+7688>>2]=0;c=w[a+125|0];za=w[a+126|0];ea=v[a+92>>2];fa=v[a+96>>2];I=v[a+16>>2];u[I+22>>1]=0;b=v[a+120>>2];a:{if(!b){t[a+140|0]=0;v[a+136>>2]=0;v[I+24>>2]=0;ib=1;break a}if(!c){vy(F,v[a+136>>2],w[a+140|0],a+36|0,a- -64|0,g);b=v[a+120>>2]}ba=(ea|fa)&8;aA(F,v[a+116>>2],b);ca=a+36|0;ga=a- -64|0;bA(F,v[a+116>>2],ca,ga,0,0);cA(F,v[a+116>>2],ca,ga,g,0,C(z[a+128>>2]+f));c=v[F+7688>>2];b:{if(!c){ea=0;b=0;c=0;break b}ea=ba?112:48;c:{if(!ba){b=0;while(1){L=F+(m<<2)|0;W=v[L+7424>>2]!=65535;L=v[L+7296>>2];d:{if(!L){break d}o=((B(L,ea)+o|0)+((L<<2)+12&-16)|0)- -64|0;L=F+B(m,104)|0;if(t[L+2817|0]&1){break d}o=(x[L+2818>>1]<<7)+o|0}b=b+W|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}break c}b=0;while(1){L=F+(m<<2)|0;W=v[L+7424>>2]!=65535;L=v[L+7296>>2];e:{if(!L){break e}o=((B(L,ea)+o|0)+((L<<2)+12&-16)|0)- -64|0;L=F+B(m,104)|0;if(t[L+2817|0]&1){break e}o=(x[L+2818>>1]<<8)+o|0}b=b+W|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}ea=0;m=0;L=o+15&-16;if(L){c=Ba[v[v[i>>2]>>2]](i,L+16|0)|0;m=(c|0)==-1?0:c}o=B(b,104)+15&-16;c=!L|(m|0)!=0;if(!(!o|!c)){i=Ba[v[v[i>>2]+4>>2]](i,o)|0;ea=(i|0)==-1?0:i}if(!c){t[a+140|0]=0;v[a+136>>2]=0;u[I+22>>1]=0;v[I+24>>2]=0;break a}t[a+140|0]=0;v[a+136>>2]=0;u[I+22>>1]=0;v[I+24>>2]=0;c=L?m:0;if(!o){break b}if(!ea){break a}}v[a+136>>2]=ea;v[I+24>>2]=c;t[a+140|0]=b;u[I+22>>1]=L>>>4;b=v[a+144>>2];v[I+28>>2]=b;m=0;u[I+20>>1]=b?x[a+120>>1]:0;f:{if(!ea){break f}o=v[F+7688>>2];if(!o){break f}b=ea;while(1){if(v[(F+(m<<2)|0)+7296>>2]){i=F+B(m,104)|0;t[b|0]=w[i+2816|0];t[b+1|0]=w[i+2817|0];u[b+2>>1]=x[i+2818>>1];z[b+16>>2]=z[i+2832>>2];z[b+20>>2]=z[i+2836>>2];z[b+24>>2]=z[i+2840>>2];z[b+28>>2]=z[i+2844>>2];z[b+32>>2]=z[i+2848>>2];z[b+36>>2]=z[i+2852>>2];z[b+40>>2]=z[i+2856>>2];z[b+44>>2]=z[i+2860>>2];z[b+48>>2]=z[i+2864>>2];z[b+52>>2]=z[i+2868>>2];z[b+56>>2]=z[i+2872>>2];z[b+60>>2]=z[i+2876>>2];z[b+64>>2]=z[i+2880>>2];z[b+68>>2]=z[i+2884>>2];z[b+72>>2]=z[i+2888>>2];z[b+76>>2]=z[i+2892>>2];z[b+80>>2]=z[i+2896>>2];z[b+84>>2]=z[i+2900>>2];z[b+88>>2]=z[i+2904>>2];z[b+92>>2]=z[i+2908>>2];z[b+96>>2]=z[i+2912>>2];z[b+100>>2]=z[i+2916>>2];z[b+4>>2]=z[i+2820>>2];z[b+8>>2]=z[i+2824>>2];z[b+12>>2]=z[i+2828>>2];b=b+104|0}m=m+1|0;if((o|0)!=(m|0)){continue}break}}ib=1;if(!c){break a}m=v[a+32>>2];o=v[a+28>>2];g:{if(ba){b=v[a+20>>2];u[H+24>>1]=x[I+8>>1];v[H+20>>2]=o;v[H+16>>2]=b;b=v[a+24>>2];u[H+8>>1]=x[I+10>>1];v[H+4>>2]=m;v[H>>2]=b;I=v[a+116>>2];b=c;Da=z[a>>2];Ea=z[a+4>>2];Fa=z[a+8>>2];Ga=z[a+12>>2];h=z[a+128>>2];fa=0;i=xa-400|0;xa=i;z[i+352>>2]=z[a+132>>2];m=H+16|0;a=x[m+8>>1];h:{if((a|0)==65535){f=z[v[m+4>>2]+68>>2];break h}k=v[m>>2];f=C(Ba[v[v[k>>2]+124>>2]](k,a))}a=x[H+8>>1];if((a|0)==65535){g=z[v[H+4>>2]+68>>2]}else{k=v[H>>2];g=C(Ba[v[v[k>>2]+124>>2]](k,a))}z[i+336>>2]=f>g?f:g;f=z[ca+24>>2];a=v[ca+20>>2];k=v[ca+16>>2];v[i+332>>2]=0;z[i+328>>2]=f;v[i+320>>2]=k;v[i+324>>2]=a;f=z[ga+24>>2];a=v[ga+20>>2];k=v[ga+16>>2];v[i+316>>2]=0;z[i+312>>2]=f;v[i+304>>2]=k;v[i+308>>2]=a;a=x[m+8>>1];i:{if((a|0)==65535){a=v[m+4>>2];f=z[a+24>>2];g=z[a+8>>2];k=v[a>>2];o=v[a+4>>2];ba=v[a+16>>2];a=v[a+20>>2];v[i+300>>2]=0;z[i+296>>2]=f;v[i+284>>2]=0;v[i+288>>2]=ba;v[i+292>>2]=a;v[i+272>>2]=k;v[i+276>>2]=o;z[i+280>>2]=g;break i}k=v[m>>2];Ba[v[v[k>>2]+116>>2]](i+272|0,k,a)}a=x[H+8>>1];j:{if((a|0)==65535){a=v[H+4>>2];f=z[a+24>>2];g=z[a+8>>2];k=v[a>>2];o=v[a+4>>2];ba=v[a+16>>2];a=v[a+20>>2];v[i+268>>2]=0;z[i+264>>2]=f;v[i+252>>2]=0;v[i+256>>2]=ba;v[i+260>>2]=a;v[i+240>>2]=k;v[i+244>>2]=o;z[i+248>>2]=g;break j}k=v[H>>2];Ba[v[v[k>>2]+116>>2]](i+240|0,k,a)}z[i+224>>2]=Da;z[i+208>>2]=Fa;z[i+192>>2]=Ea;z[i+176>>2]=Ga;z[i+160>>2]=h;z[i+144>>2]=d;z[i+128>>2]=e;z[i+112>>2]=d*C(.800000011920929);k=v[F+7688>>2];if(k){while(1){o=F+(oa<<2)|0;a=v[o+7296>>2];if(a){e=C(1);ba=o+7424|0;k=I+(x[F+B(v[ba>>2],44)>>1]<<6)|0;o=w[k+48|0];e=o&4?x[(F+B(oa,104)|0)+2818>>1]==2?C(.5):C(1):e;d=z[k+60>>2];f=z[k+44>>2];g=z[k+56>>2];t[b+2|0]=a;k=0;za=o&1;k=za?k:w[(F+B(oa,104)|0)+2818|0]<<1;o=b- -64|0;u[b>>1]=3;t[b+3|0]=k;z[i+96>>2]=d;z[b+28>>2]=Fa;z[b+24>>2]=Da;z[b+20>>2]=e*g;z[b+16>>2]=e*f;z[b+8>>2]=Ga;z[b+4>>2]=Ea;k=v[ba>>2];ha=I+(x[F+B(k,44)>>1]<<6)|0;d=z[ha>>2];h=z[ha+4>>2];l=z[ha+8>>2];v[i+92>>2]=0;z[i+88>>2]=l;z[i+84>>2]=h;z[i+80>>2]=d;e=C(0);if((k|0)!=65535){while(1){ha=F+B(k,44)|0;W=w[ha+5|0];if(W){da=I+(x[ha>>1]<<6)|0;k=0;while(1){wy(i- -64|0,m,H,i+224|0,i+208|0,i+192|0,i+176|0,i+320|0,i+304|0,i+80|0,i+144|0,i+112|0,i+160|0,i+336|0,i+96|0,i+128|0,da+(k<<6)|0,o,i+352|0,j,i+272|0,i+240|0);o=o+112|0;e=C(e+z[i+64>>2]);k=k+1|0;if((W|0)!=(k|0)){continue}break}}k=x[ha+2>>1];if((k|0)!=65535){continue}break}h=z[i+84>>2];l=z[i+88>>2];d=z[i+80>>2]}z[b+32>>2]=d;z[b+40>>2]=l;z[b+36>>2]=h;z[b+44>>2]=e/C(a>>>0);a=a<<2;k=J9(o,0,a);v[b+52>>2]=0;a=k+(a+12&-16)|0;k:{if(za){b=a;break k}f=z[i+88>>2];g=z[i+248>>2];h=z[i+280>>2];d=z[i+80>>2];l=z[i+240>>2];n=z[i+272>>2];e=z[i+84>>2];p=z[i+244>>2];q=z[i+276>>2];v[b+56>>2]=B(fa,104)+ea;ha=F+B(oa,104)|0;za=ha+2818|0;if(!x[za>>1]){b=a;break k}h=C(h-g);l=C(n-l);n=C(q-p);g=C(C(f*h)+C(C(d*l)+C(n*e)));h=C(h-C(f*g));l=C(l-C(d*g));g=C(n-C(e*g));b=C(C(h*h)+C(C(l*l)+C(g*g)))>C(9999999747378752e-20);k=C(D(d))>2];a=ha+B(o,12)|0;d=z[a+2888>>2];f=C(d+d);g=z[ga>>2];d=z[a+2880>>2];h=C(d+d);d=z[a+2884>>2];l=C(d+d);J=z[ga+4>>2];N=C(C(e*f)+C(C(g*h)+C(l*J)));d=z[ga+12>>2];T=C(C(d*d)+C(-.5));ia=C(C(g*N)+C(C(h*T)+C(d*C(C(J*f)-C(l*e)))));ja=C(C(J*N)+C(C(l*T)+C(d*C(C(e*h)-C(f*g)))));Na=C(C(ia*n)-C(p*ja));ka=C(C(e*N)+C(C(f*T)+C(d*C(C(g*l)-C(h*J)))));Oa=C(C(ka*p)-C(q*ia));e=z[ca+8>>2];d=z[a+2864>>2];f=C(d+d);g=z[ca>>2];d=z[a+2856>>2];h=C(d+d);l=z[ca+4>>2];d=z[a+2860>>2];J=C(d+d);N=C(C(e*f)+C(C(g*h)+C(l*J)));d=z[ca+12>>2];U=C(C(d*d)+C(-.5));Z=C(C(l*N)+C(C(J*U)+C(d*C(C(e*h)-C(f*g)))));_=C(C(e*N)+C(C(f*U)+C(d*C(C(g*J)-C(h*l)))));$=C(C(Z*q)-C(n*_));T=$;la=C(C(g*N)+C(C(h*U)+C(d*C(C(l*f)-C(J*e)))));ma=C(C(_*p)-C(q*la));J=ma;na=C(C(la*n)-C(p*Z));N=na;W=x[m+8>>1];da=(W|0)!=65535;if(!da){a=v[m+4>>2];N=C(C(z[a- -64>>2]*na)+C(C(z[a+40>>2]*$)+C(ma*z[a+52>>2])));T=C(C(z[a+56>>2]*na)+C(C(z[a+32>>2]*$)+C(ma*z[a+44>>2])));J=C(C(z[a+60>>2]*na)+C(C(z[a+36>>2]*$)+C(ma*z[a+48>>2])))}a=b;f=C(-Na);g=C(-Oa);Aa=C(C(ja*q)-C(n*ka));h=C(-Aa);b=x[H+8>>1];l:{if((b|0)!=65535){e=g;d=f;break l}k=v[H+4>>2];d=C(C(z[k- -64>>2]*f)+C(C(z[k+40>>2]*h)+C(z[k+52>>2]*g)));e=C(C(z[k+60>>2]*f)+C(C(z[k+36>>2]*h)+C(z[k+48>>2]*g)));h=C(C(z[k+56>>2]*f)+C(C(z[k+32>>2]*h)+C(z[k+44>>2]*g)))}A=z[i+312>>2];E=z[i+328>>2];pa=z[i+308>>2];qa=z[i+324>>2];ra=z[i+304>>2];sa=z[i+320>>2];m:{if(!da){g=z[v[m+4>>2]+12>>2];v[i+44>>2]=0;v[i+60>>2]=0;f=z[i+192>>2];y=C(N*f);z[i+56>>2]=y;r=C(J*f);z[i+52>>2]=r;l=C(T*f);z[i+48>>2]=l;f=C(g*z[i+224>>2]);g=C(q*f);z[i+40>>2]=g;U=C(n*f);z[i+36>>2]=U;G=C(p*f);z[i+32>>2]=G;break m}b=v[m>>2];v[i+396>>2]=0;f=z[i+192>>2];z[i+392>>2]=N*f;z[i+388>>2]=J*f;z[i+384>>2]=T*f;v[i+380>>2]=0;f=z[i+224>>2];z[i+376>>2]=q*f;z[i+372>>2]=n*f;z[i+368>>2]=p*f;Ba[v[v[b>>2]+108>>2]](b,W,j,i+368|0,i+32|0);b=x[H+8>>1];y=z[i+56>>2];r=z[i+52>>2];l=z[i+48>>2];g=z[i+40>>2];U=z[i+36>>2];G=z[i+32>>2]}ta=C(ka+A);ua=C(_+E);va=C(ja+pa);wa=C(Z+qa);Ca=C(ra+ia);Pa=C(la+sa);n:{if((b|0)==65535){A=z[v[H+4>>2]+12>>2];v[i+12>>2]=0;v[i+28>>2]=0;f=z[i+176>>2];pa=C(d*f);z[i+24>>2]=pa;qa=C(e*f);z[i+20>>2]=qa;ra=C(h*f);z[i+16>>2]=ra;f=C(A*z[i+208>>2]);A=C(f*Ka);z[i+8>>2]=A;E=C(f*La);z[i+4>>2]=E;f=C(f*Ma);z[i>>2]=f;break n}k=v[H>>2];v[i+396>>2]=0;f=z[i+176>>2];z[i+392>>2]=d*f;z[i+388>>2]=e*f;z[i+384>>2]=h*f;v[i+380>>2]=0;f=z[i+208>>2];z[i+376>>2]=f*Ka;z[i+372>>2]=f*La;z[i+368>>2]=f*Ma;Ba[v[v[k>>2]+108>>2]](k,b,j,i+368|0,i);pa=z[i+24>>2];qa=z[i+20>>2];ra=z[i+16>>2];A=z[i+8>>2];E=z[i+4>>2];f=z[i>>2]}sa=C(ua-ta);ta=C(wa-va);ua=C(Pa-Ca);va=C(-Z);wa=C(-la);Ca=C(-_);f=C(C(C(C(N*y)+C(q*g))+C(C(d*pa)-C(q*A)))+C(C(C(C(J*r)+C(n*U))+C(C(e*qa)-C(n*E)))+C(C(C(T*l)+C(p*G))+C(C(h*ra)-C(p*f)))));f=f>C(9999999747378752e-21)?C(C(.800000011920929)/f):C(0);b=I+(x[F+B(v[ba>>2],44)>>1]<<6)|0;l=C(C(z[b+40>>2]*q)+C(C(z[b+32>>2]*p)+C(n*z[b+36>>2])));o:{if(x[m+8>>1]==65535){b=v[m+4>>2];l=C(l-C(C(C(C(p*z[b>>2])+C($*z[b+16>>2]))+C(C(n*z[b+4>>2])+C(ma*z[b+20>>2])))+C(C(q*z[b+8>>2])+C(na*z[b+24>>2]))));break o}if(x[H+8>>1]!=65535){break o}b=v[H+4>>2];l=C(l+C(C(C(C(p*z[b>>2])+C(Aa*z[b+16>>2]))+C(C(n*z[b+4>>2])+C(Oa*z[b+20>>2])))+C(C(q*z[b+8>>2])+C(Na*z[b+24>>2]))))}z[a+16>>2]=T;v[a+12>>2]=0;z[a+8>>2]=q;z[a+4>>2]=n;z[a>>2]=p;z[a+28>>2]=f;z[a+24>>2]=N;z[a+20>>2]=J;f=z[i+144>>2];z[a+40>>2]=-d;z[a+36>>2]=-e;z[a+32>>2]=-h;z[a+44>>2]=f*C(C(q*sa)+C(C(p*ua)+C(n*ta)));b=v[i+44>>2];v[a+72>>2]=v[i+40>>2];v[a+76>>2]=b;b=v[i+36>>2];v[a+64>>2]=v[i+32>>2];v[a+68>>2]=b;b=v[i+60>>2];v[a+88>>2]=v[i+56>>2];v[a+92>>2]=b;b=v[i+52>>2];v[a+80>>2]=v[i+48>>2];v[a+84>>2]=b;b=v[i+12>>2];v[a+104>>2]=v[i+8>>2];v[a+108>>2]=b;b=v[i+4>>2];v[a+96>>2]=v[i>>2];v[a+100>>2]=b;b=v[i+24>>2];k=v[i+28>>2];W=v[i+16>>2];da=v[i+20>>2];z[a+48>>2]=l;v[a+120>>2]=b;v[a+124>>2]=k;v[a+112>>2]=W;v[a+116>>2]=da;Z=C(C(Z*s)+C(Q*Ca));J=Z;_=C(C(_*S)+C(s*wa));N=_;$=C(C(la*Q)+C(S*va));U=$;W=x[m+8>>1];da=(W|0)!=65535;if(!da){b=v[m+4>>2];U=C(C(z[b- -64>>2]*$)+C(C(z[b+40>>2]*Z)+C(_*z[b+52>>2])));N=C(C(z[b+60>>2]*$)+C(C(z[b+36>>2]*Z)+C(_*z[b+48>>2])));J=C(C(z[b+56>>2]*$)+C(C(z[b+32>>2]*Z)+C(_*z[b+44>>2])))}la=C(C(ia*Q)+C(S*C(-ja)));f=C(-la);ma=C(C(ka*S)+C(s*C(-ia)));g=C(-ma);na=C(C(ja*s)+C(Q*C(-ka)));h=C(-na);b=x[H+8>>1];p:{if((b|0)!=65535){e=g;d=f;break p}k=v[H+4>>2];d=C(C(z[k- -64>>2]*f)+C(C(z[k+40>>2]*h)+C(z[k+52>>2]*g)));e=C(C(z[k+60>>2]*f)+C(C(z[k+36>>2]*h)+C(z[k+48>>2]*g)));h=C(C(z[k+56>>2]*f)+C(C(z[k+32>>2]*h)+C(z[k+44>>2]*g)))}q:{if(!da){g=z[v[m+4>>2]+12>>2];v[i+44>>2]=0;v[i+60>>2]=0;f=z[i+192>>2];l=C(U*f);z[i+56>>2]=l;T=C(N*f);z[i+52>>2]=T;y=C(J*f);z[i+48>>2]=y;f=C(g*z[i+224>>2]);A=C(s*f);z[i+40>>2]=A;E=C(Q*f);z[i+36>>2]=E;ia=C(S*f);z[i+32>>2]=ia;break q}b=v[m>>2];v[i+396>>2]=0;f=z[i+192>>2];z[i+392>>2]=U*f;z[i+388>>2]=N*f;z[i+384>>2]=J*f;v[i+380>>2]=0;f=z[i+224>>2];z[i+376>>2]=s*f;z[i+372>>2]=Q*f;z[i+368>>2]=S*f;Ba[v[v[b>>2]+108>>2]](b,W,j,i+368|0,i+32|0);b=x[H+8>>1];l=z[i+56>>2];T=z[i+52>>2];y=z[i+48>>2];A=z[i+40>>2];E=z[i+36>>2];ia=z[i+32>>2]}r:{if((b|0)==65535){r=z[v[H+4>>2]+12>>2];v[i+12>>2]=0;v[i+28>>2]=0;f=z[i+176>>2];ja=C(d*f);z[i+24>>2]=ja;ka=C(e*f);z[i+20>>2]=ka;g=C(h*f);z[i+16>>2]=g;f=C(r*z[i+208>>2]);r=C(f*Ha);z[i+8>>2]=r;G=C(f*Ia);z[i+4>>2]=G;f=C(f*Ja);z[i>>2]=f;break r}k=v[H>>2];v[i+396>>2]=0;f=z[i+176>>2];z[i+392>>2]=d*f;z[i+388>>2]=e*f;z[i+384>>2]=h*f;v[i+380>>2]=0;f=z[i+208>>2];z[i+376>>2]=f*Ha;z[i+372>>2]=f*Ia;z[i+368>>2]=f*Ja;Ba[v[v[k>>2]+108>>2]](k,b,j,i+368|0,i);ja=z[i+24>>2];ka=z[i+20>>2];g=z[i+16>>2];r=z[i+8>>2];G=z[i+4>>2];f=z[i>>2]}f=C(C(C(C(U*l)+C(s*A))+C(C(d*ja)-C(s*r)))+C(C(C(C(N*T)+C(Q*E))+C(C(e*ka)-C(Q*G)))+C(C(C(J*y)+C(S*ia))+C(C(h*g)-C(S*f)))));f=f>C(9999999747378752e-21)?C(C(.800000011920929)/f):C(0);b=I+(x[F+B(v[ba>>2],44)>>1]<<6)|0;l=C(C(z[b+40>>2]*s)+C(C(z[b+32>>2]*S)+C(Q*z[b+36>>2])));s:{if(x[m+8>>1]==65535){b=v[m+4>>2];l=C(l-C(C(C(C(S*z[b>>2])+C(Z*z[b+16>>2]))+C(C(Q*z[b+4>>2])+C(_*z[b+20>>2])))+C(C(s*z[b+8>>2])+C($*z[b+24>>2]))));break s}if(x[H+8>>1]!=65535){break s}b=v[H+4>>2];l=C(l+C(C(C(C(S*z[b>>2])+C(na*z[b+16>>2]))+C(C(Q*z[b+4>>2])+C(ma*z[b+20>>2])))+C(C(s*z[b+8>>2])+C(la*z[b+24>>2]))))}b=a+256|0;z[a+156>>2]=f;z[a+152>>2]=U;z[a+148>>2]=N;z[a+144>>2]=J;v[a+140>>2]=0;z[a+136>>2]=s;z[a+132>>2]=Q;z[a+128>>2]=S;f=z[i+144>>2];z[a+168>>2]=-d;z[a+164>>2]=-e;z[a+160>>2]=-h;z[a+172>>2]=f*C(C(s*sa)+C(C(S*ua)+C(Q*ta)));k=v[i+44>>2];v[a+200>>2]=v[i+40>>2];v[a+204>>2]=k;k=v[i+36>>2];v[a+192>>2]=v[i+32>>2];v[a+196>>2]=k;k=v[i+60>>2];v[a+216>>2]=v[i+56>>2];v[a+220>>2]=k;k=v[i+52>>2];v[a+208>>2]=v[i+48>>2];v[a+212>>2]=k;k=v[i+12>>2];v[a+232>>2]=v[i+8>>2];v[a+236>>2]=k;k=v[i+4>>2];v[a+224>>2]=v[i>>2];v[a+228>>2]=k;k=v[i+24>>2];W=v[i+28>>2];da=v[i+16>>2];_a=v[i+20>>2];z[a+176>>2]=l;v[a+248>>2]=k;v[a+252>>2]=W;v[a+240>>2]=da;v[a+244>>2]=_a;o=o+1|0;if(o>>>0>1]){continue}break}}fa=fa+1|0;k=v[F+7688>>2]}oa=oa+1|0;if(oa>>>0>>0){continue}break}}xa=i+400|0;break g}b=v[F+7688>>2];if(!b){break g}ba=(fa|0)==4|(fa|0)==2?5:1;f=z[o+68>>2];g=z[m+68>>2];jb=f>g?f:g;tb=C(d*C(.800000011920929));Q=C(z[a>>2]*z[o+12>>2]);kb=z[a+88>>2];lb=z[a+84>>2];mb=z[a+80>>2];nb=z[a+60>>2];ob=z[a+56>>2];pb=z[a+52>>2];ub=z[a+132>>2];vb=z[a+128>>2];S=z[a+12>>2];J=z[a+4>>2];i=v[a+116>>2];W=v[a+112>>2];ia=z[m- -64>>2];ja=z[m+60>>2];ka=z[m+56>>2];Z=z[m+52>>2];_=z[m+48>>2];$=z[m+44>>2];la=z[m+40>>2];ma=z[m+36>>2];na=z[o- -64>>2];Da=z[o+60>>2];Ea=z[o+56>>2];Fa=z[o+52>>2];Ga=z[o+48>>2];Ha=z[o+44>>2];Ia=z[o+40>>2];Ja=z[o+36>>2];Ka=z[m+24>>2];La=z[m+20>>2];Ma=z[o+24>>2];Na=z[o+20>>2];Oa=z[m+32>>2];pa=z[o+32>>2];qa=z[m+16>>2];ra=z[o+16>>2];sa=z[o+8>>2];ta=z[m+8>>2];qb=C(sa-ta);ua=z[o+4>>2];Aa=z[m+4>>2];rb=C(ua-Aa);va=z[o>>2];wa=z[m>>2];sb=C(va-wa);N=z[a+76>>2];Ca=C(C(N*N)+C(-.5));T=z[a+48>>2];Pa=C(C(T*T)+C(-.5));Ra=z[a+68>>2];wb=C(-Ra);Sa=z[a+64>>2];xb=C(-Sa);Ta=z[a+72>>2];yb=C(-Ta);Ua=z[a+40>>2];zb=C(-Ua);Va=z[a+36>>2];Ab=C(-Va);Wa=z[a+44>>2];Bb=C(-Wa);U=C(z[m+12>>2]*C(-z[a+8>>2]));Cb=C(-U);a=c;while(1){ga=F+(k<<2)|0;ca=v[ga+7296>>2];if(ca){oa=ga+7424|0;I=i+(x[F+B(v[oa>>2],44)>>1]<<6)|0;G=z[I+60>>2];z[a+48>>2]=Cb;z[a+12>>2]=Q;v[a+60>>2]=W;t[a+1|0]=za;g=z[I>>2];l=z[I+4>>2];n=z[I+8>>2];v[a+44>>2]=0;z[a+40>>2]=n;z[a+36>>2]=l;z[a+32>>2]=g;b=a- -64|0;o=v[oa>>2];if((o|0)!=65535){aa=C(C(C(C(va*g)-C(wa*g))+C(C(ua*l)-C(Aa*l)))+C(C(sa*n)-C(ta*n)));f=C(C(n*n)+C(C(g*g)+C(l*l)));V=C(U*f);ya=C(Q*f);while(1){o=F+B(o,44)|0;da=w[o+5|0];if(da){_a=i+(x[o>>1]<<6)|0;m=0;while(1){j=_a+(m<<6)|0;Xa=z[j+40>>2];Ya=z[j+36>>2];Za=z[j+32>>2];Qa=z[j+12>>2];s=z[j+16>>2];q=C(s-pb);y=z[j+20>>2];p=C(y-ob);f=C(C(q*l)-C(g*p));f=(f>C(0)?f:C(-f))>2];A=C(r-nb);p=C(C(p*n)-C(l*A));p=(p>C(0)?p:C(-p))C(0)?q:C(-q))C(0)?s:C(-s))C(0)?y:C(-y))C(0)?r:C(-r))C(0)?C(C(1)/O):C(0);z[b+32>>2]=O;f=C(C(aa+C(C(f*Ma)+C(C(p*ra)+C(Na*q))))-C(C(s*Ka)+C(C(y*qa)+C(La*r))));q=C(-f);p=C(Qa-vb);fa=G>C(0)&e>f&q>C(p*d);q=C(O*C(C(C(C(n*Xa)+C(C(g*Za)+C(l*Ya)))+(fa?C(G*q):C(0)))-f));f=C(tb*p);f=C((f>2]=q-f;z[b+40>>2]=q+(fa?C(0):C(-(f>C(0)?f:C(0))));f=z[j+28>>2];v[b+28>>2]=0;z[b+24>>2]=R;z[b+20>>2]=Y;z[b+16>>2]=X;v[b+12>>2]=0;z[b+8>>2]=A;z[b+4>>2]=M;z[b>>2]=E;z[b+44>>2]=f;b=b+48|0;m=m+1|0;if((da|0)!=(m|0)){continue}break}}o=x[o+2>>1];if((o|0)!=65535){continue}break}}j=b;b=ca<<2;o=J9(j,0,b);f=C(1);fa=b+12&-16;b=w[I+48|0];f=b&4?x[(F+B(k,104)|0)+2818>>1]==2?C(.5):C(1):f;p=C(f*z[I+56>>2]);f=C(f*z[I+44>>2]);t:{u:{v:{if(b&1){t[a+2|0]=ca;break v}b=x[(F+B(k,104)|0)+2818>>1];t[a+2|0]=ca;if(b){break u}}m=0;j=0;break t}m=1;j=b<<1}b=o+fa|0;z[a+16>>2]=f;t[a|0]=ba;t[a+3|0]=j;v[a+52>>2]=0;z[a+8>>2]=S;z[a+4>>2]=J;z[a+28>>2]=U;z[a+24>>2]=Q;z[a+20>>2]=p;w:{if(!m){a=b;break w}v[a+56>>2]=B(ha,104)+ea;o=F+B(k,104)|0;I=o+2818|0;if(!x[I>>1]){a=b;break w}f=C(C(n*qb)+C(C(g*sb)+C(rb*l)));p=C(rb-C(l*f));a=C(D(g))C(9999999747378752e-20);p=j?p:a?C(-n):g;s=j?q:a?l:C(0);q=j?f:a?C(0):C(-l);y=C(C(1)/C(K(C(C(s*s)+C(C(q*q)+C(p*p))))));f=C(p*y);p=C(q*y);q=C(C(g*f)-C(p*l));r=l;l=C(s*y);s=C(C(r*l)-C(f*n));g=C(C(n*p)-C(l*g));Db=C(C(q*ta)+C(C(s*wa)+C(Aa*g)));Eb=C(C(q*sa)+C(C(s*va)+C(ua*g)));Fb=C(C(l*ta)+C(C(p*wa)+C(Aa*f)));Gb=C(C(l*sa)+C(C(p*va)+C(ua*f)));m=0;while(1){a=o+B(m,12)|0;n=z[a+2860>>2];E=z[a+2864>>2];M=z[a+2856>>2];R=C(C(Wa*E)+C(C(Va*M)+C(Ua*n)));X=z[a+2888>>2];Y=z[a+2880>>2];O=z[a+2884>>2];aa=C(C(Ta*X)+C(C(Sa*Y)+C(Ra*O)));y=C(C(C(T*C(C(Va*n)+C(M*zb)))+C(Pa*E))+C(Wa*R));y=C(y+y);r=C(C(C(N*C(C(Sa*O)+C(Y*wb)))+C(Ca*X))+C(Ta*aa));r=C(r+r);G=C(C(nb+y)-C(kb+r));ya=(G>C(0)?G:C(-G))C(0)?V:C(-V))C(0)?M:C(-M))>1];if((a|0)==65535){a=x[F+B(v[oa>>2],44)>>1]}a=((a&65535)<<6)+i|0;Xa=z[a+40>>2];Ya=z[a+36>>2];Za=z[a+32>>2];z[b+108>>2]=C(C(q*ya)+C(C(s*M)+C(g*V)))*d;v[b+76>>2]=0;z[b+72>>2]=q;z[b+68>>2]=g;z[b+64>>2]=s;z[b+44>>2]=C(C(l*ya)+C(C(p*M)+C(f*V)))*d;v[b+12>>2]=0;z[b+8>>2]=l;z[b+4>>2]=f;z[b>>2]=p;M=C(C(E*g)-C(s*A));M=(M>C(0)?M:C(-M))C(0)?R:C(-R))C(0)?X:C(-X))>2]=ya;Qa=C(C(ja*M)+C(C(ma*R)+C(_*X)));z[b+100>>2]=Qa;$a=C(C(ka*M)+C(C(Oa*R)+C($*X)));z[b+96>>2]=$a;Y=C(C(n*g)-C(s*G));Y=(Y>C(0)?Y:C(-Y))C(0)?O:C(-O))C(0)?aa:C(-aa))>2]=ab;bb=C(C(Da*Y)+C(C(Ja*O)+C(Ga*aa)));z[b+84>>2]=bb;cb=C(C(Ea*Y)+C(C(pa*O)+C(Ha*aa)));z[b+80>>2]=cb;V=C(C(E*f)-C(p*A));V=(V>C(0)?V:C(-V))C(0)?A:C(-A))C(0)?r:C(-r))>2]=db;eb=C(C(ja*V)+C(C(ma*A)+C(_*r)));z[b+36>>2]=eb;fb=C(C(ka*V)+C(C(Oa*A)+C($*r)));z[b+32>>2]=fb;E=C(C(n*f)-C(p*G));E=(E>C(0)?E:C(-E))C(0)?G:C(-G))C(0)?n:C(-n))>2]=y;gb=C(C(Da*E)+C(C(Ja*G)+C(Ga*n)));z[b+20>>2]=gb;hb=C(C(Ea*E)+C(C(pa*G)+C(Ha*n)));z[b+16>>2]=hb;z[b+112>>2]=C(C(Xa*q)+C(C(Za*s)+C(g*Ya)))-C(C(Eb+C(C(Y*Ma)+C(C(O*ra)+C(Na*aa))))-C(Db+C(C(M*Ka)+C(C(R*qa)+C(La*X)))));z[b+48>>2]=C(C(Xa*l)+C(C(Za*p)+C(f*Ya)))-C(C(Gb+C(C(E*Ma)+C(C(G*ra)+C(Na*n))))-C(Fb+C(C(V*Ka)+C(C(A*qa)+C(La*r)))));n=C(C(Q+C(J*C(C(ab*ab)+C(C(cb*cb)+C(bb*bb)))))+C(C(S*C(C(ya*ya)+C(C($a*$a)+C(Qa*Qa))))-U));z[b+92>>2]=n>C(0)?C(C(.800000011920929)/n):C(0);n=C(C(Q+C(J*C(C(y*y)+C(C(hb*hb)+C(gb*gb)))))+C(C(S*C(C(db*db)+C(C(fb*fb)+C(eb*eb))))-U));z[b+28>>2]=n>C(0)?C(C(.800000011920929)/n):C(0);a=b+128|0;b=a;m=m+1|0;if(m>>>0>1]){continue}break}}ha=ha+1|0;b=v[F+7688>>2]}k=k+1|0;if(k>>>0>>0){continue}break}}v[c+L>>2]=0}xa=H+32|0;xa=P+32|0;return ib|0}function pZ(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=C(0),u=0,w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=0,fa=0,ga=0,ha=0,ia=C(0),ja=C(0),ka=C(0);k=xa-128|0;xa=k;ea=c+12|0;fa=c+24|0;a:{if(!u$(a+56|0,a+72|0,c,ea,fa)){break a}h=z[c+16>>2];i=z[c>>2];g=z[c+12>>2];f=z[c+4>>2];j=z[c+8>>2];z[k+48>>2]=z[c+20>>2]-j;z[k+44>>2]=h-f;z[k+40>>2]=g-i;h=z[c+28>>2];g=z[c+24>>2];z[k+32>>2]=z[c+32>>2]-j;z[k+28>>2]=h-f;z[k+24>>2]=g-i;q=v[a+52>>2];i=z[q+16>>2];f=z[q>>2];h=z[q+12>>2];g=z[q+4>>2];z[k+120>>2]=z[q+20>>2]-z[q+8>>2];z[k+116>>2]=i-g;z[k+112>>2]=h-f;r=k+40|0;s=k+24|0;ga=k+60|0;ha=k+56|0;P=k+52|0;e=xa-128|0;xa=e;u=k+112|0;A=z[u+8>>2];B=z[u>>2];E=z[u+4>>2];F=C(C(A*A)+C(C(B*B)+C(E*E)));b:{if(F>2]=0}i=z[c>>2];h=z[r>>2];f=z[c+4>>2];g=z[r+4>>2];j=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+j;z[e+116>>2]=g+f;z[e+112>>2]=h+i;h=z[s>>2];g=z[s+4>>2];z[e+104>>2]=j+z[s+8>>2];z[e+100>>2]=f+g;z[e+96>>2]=i+h;E_(e+72|0,q,c,e+112|0,e+96|0,e+32|0,e+16|0);if(ha){z[ha>>2]=z[e+32>>2]}if(P){z[P>>2]=z[e+16>>2]}i=C(z[e+80>>2]-z[q+8>>2]);l=C(i*i);i=C(z[e+72>>2]-z[q>>2]);f=C(i*i);i=C(z[e+76>>2]-z[q+4>>2]);i=C(l+C(f+C(i*i)));break b}i=z[r>>2];l=z[s+4>>2];o=z[s>>2];h=z[r+4>>2];f=C(C(i*l)-C(o*h));w=z[s+8>>2];g=z[r+8>>2];j=C(C(h*w)-C(l*g));y=C(C(g*o)-C(w*i));x=C(C(f*A)+C(C(j*B)+C(E*y)));c:{if(C(x*x)>=C(C(F*C(9.999999974752427e-7))*C(C(f*f)+C(C(j*j)+C(y*y))))){f=C(C(A*w)+C(C(B*o)+C(E*l)));N=C(C(A*g)+C(C(B*i)+C(E*h)));y=C(C(g*w)+C(C(i*o)+C(h*l)));ca=C(C(f*N)-C(y*F));H=C(-N);R=C(C(g*g)+C(C(i*i)+C(h*h)));U=C(C(H*y)+C(R*f));S=C(C(w*w)+C(C(o*o)+C(l*l)));da=C(C(R*S)-C(y*y));I=C(-f);x=C(C(I*y)+C(N*S));j=C(C(I*U)+C(C(F*da)+C(x*H)));j=j==C(0)?C(0):C(C(1)/j);T=z[c+8>>2];Q=z[q+8>>2];J=C(T-Q);O=z[c>>2];ja=z[q>>2];L=C(O-ja);Y=z[c+4>>2];ka=z[q+4>>2];M=C(Y-ka);$=C(C(J*w)+C(C(L*o)+C(M*l)));aa=C(j*C(-$));ia=C(C(J*A)+C(C(L*B)+C(E*M)));V=C(ia*j);W=C(C(F*S)+C(f*I));Z=C(C(J*g)+C(C(L*i)+C(M*h)));f=C(j*C(-Z));j=C(C(ca*aa)+C(C(x*V)+C(W*f)));z[e+64>>2]=j;x=C(C(U*aa)+C(C(da*V)+C(x*f)));z[e+68>>2]=x;f=C(C(C(C(F*R)+C(N*H))*aa)+C(C(U*V)+C(ca*f)));z[e+60>>2]=f;if(x>2]=0;d:{if(!(f>2]=0;if(!(f>2]=z[e+56>>2];z[e+64>>2]=z[e+52>>2];v[e+60>>2]=0;i=f}f=z[c>>2];g=z[r>>2];h=z[c+4>>2];j=z[r+4>>2];l=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=l+z[s+8>>2];z[e+100>>2]=h+j;z[e+96>>2]=f+g;E_(e+72|0,q,c,e+112|0,e+96|0,e+32|0,e+16|0);h=z[e+32>>2];z[e+52>>2]=h;g=z[e+16>>2];z[e+48>>2]=g;f=z[q+8>>2];j=z[q>>2];l=z[q+4>>2];v[e+56>>2]=0;f=C(z[e+80>>2]-f);W=C(f*f);f=C(z[e+72>>2]-j);o=C(f*f);f=C(z[e+76>>2]-l);f=C(W+C(o+C(f*f)));if(!(f>2]=h;v[e+68>>2]=0;z[e+60>>2]=g;i=f;break c}if(f>2]=0;f=J_(q,c,r,s,e+52|0,e+48|0);v[e+56>>2]=0;if(!(f>2]=0;z[e+64>>2]=z[e+52>>2];z[e+60>>2]=z[e+48>>2];i=f;break c}i=J_(q,c,r,s,e- -64|0,e+60|0);v[e+68>>2]=0;break c}e:{if(j>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=I_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break e}if(f>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=I_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break e}z[e+120>>2]=T+g;z[e+116>>2]=Y+h;z[e+112>>2]=O+i;z[e+104>>2]=w-g;z[e+100>>2]=l-h;z[e+96>>2]=o-i;i=I_(q,u,e+112|0,e+96|0,e+68|0,e+60|0);z[e+64>>2]=C(1)-z[e+60>>2]}f=z[c>>2];g=z[r>>2];h=z[c+4>>2];j=z[r+4>>2];l=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=l+z[s+8>>2];z[e+100>>2]=h+j;z[e+96>>2]=f+g;E_(e+72|0,q,c,e+112|0,e+96|0,e+32|0,e+16|0);h=z[e+32>>2];z[e+52>>2]=h;g=z[e+16>>2];z[e+48>>2]=g;f=C(z[e+80>>2]-z[q+8>>2]);o=C(f*f);f=C(z[e+72>>2]-z[q>>2]);l=C(f*f);f=C(z[e+76>>2]-z[q+4>>2]);f=C(o+C(l+C(f*f)));if(!(f>2]=h;v[e+68>>2]=0;z[e+60>>2]=g;i=f;break c}N=C(j+f);if(x<=C(1)){if(N<=C(1)){if(j>2]=0;if(!(f>2]=0;if(!(f>2]=z[e+56>>2];z[e+64>>2]=z[e+52>>2];v[e+60>>2]=0;i=f;break c}if(f>2]=0;break c}i=C(-ia);i=C(C(C(J*J)+C(C(L*L)+C(M*M)))+C(C(f*C(C($+$)+C(C(S*f)+C(C(I*x)+C(y*j)))))+C(C(x*C(C(i+i)+C(C(I*f)+C(C(F*x)+C(j*H)))))+C(j*C(C(Z+Z)+C(C(y*f)+C(C(H*x)+C(R*j))))))));break c}if(j>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=I_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break c}if(f>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=I_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break c}z[e+120>>2]=T+g;z[e+116>>2]=Y+h;z[e+112>>2]=O+i;z[e+104>>2]=w-g;z[e+100>>2]=l-h;z[e+96>>2]=o-i;i=I_(q,u,e+112|0,e+96|0,e+68|0,e+60|0);z[e+64>>2]=C(1)-z[e+60>>2];break c}if(N<=C(1)){if(j>2]=0;f:{if(!(f>2]=0;if(!(f>2]=z[e+56>>2];z[e+64>>2]=z[e+52>>2];v[e+60>>2]=0;i=f}f=z[u>>2];h=z[q>>2];g=z[u+4>>2];j=z[q+4>>2];z[e+120>>2]=z[q+8>>2]+z[u+8>>2];z[e+116>>2]=j+g;z[e+112>>2]=h+f;f=J_(e+112|0,c,r,s,e+52|0,e+48|0);v[e+56>>2]=1065353216;if(!(f>2]=1065353216;z[e+64>>2]=z[e+52>>2];z[e+60>>2]=z[e+48>>2];i=f;break c}if(f>2]=0;f=z[u>>2];h=z[q>>2];g=z[u+4>>2];j=z[q+4>>2];z[e+120>>2]=z[q+8>>2]+z[u+8>>2];z[e+116>>2]=j+g;z[e+112>>2]=h+f;f=J_(e+112|0,c,r,s,e+52|0,e+48|0);v[e+56>>2]=1065353216;if(!(f>2]=1065353216;z[e+64>>2]=z[e+52>>2];z[e+60>>2]=z[e+48>>2];i=f;break c}z[e+120>>2]=A+Q;z[e+116>>2]=E+ka;z[e+112>>2]=B+ja;i=J_(e+112|0,c,r,s,e- -64|0,e+60|0);v[e+68>>2]=1065353216;break c}g:{if(j>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=I_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break g}if(f>2]=0;f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+120>>2]=z[c+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=z[s+8>>2]-l;z[e+100>>2]=j-h;z[e+96>>2]=g-f;f=I_(q,u,e+112|0,e+96|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(!(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f;break g}z[e+120>>2]=T+g;z[e+116>>2]=Y+h;z[e+112>>2]=O+i;z[e+104>>2]=w-g;z[e+100>>2]=l-h;z[e+96>>2]=o-i;i=I_(q,u,e+112|0,e+96|0,e+68|0,e+60|0);z[e+64>>2]=C(1)-z[e+60>>2]}f=z[u>>2];h=z[q>>2];g=z[u+4>>2];j=z[q+4>>2];z[e+40>>2]=z[q+8>>2]+z[u+8>>2];z[e+36>>2]=j+g;z[e+32>>2]=h+f;f=z[c>>2];g=z[r>>2];h=z[c+4>>2];j=z[r+4>>2];l=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=l+z[s+8>>2];z[e+100>>2]=h+j;z[e+96>>2]=f+g;E_(e+72|0,e+32|0,c,e+112|0,e+96|0,e+16|0,e);h=z[e+16>>2];z[e+52>>2]=h;g=z[e>>2];z[e+48>>2]=g;v[e+56>>2]=1065353216;f=C(z[e+80>>2]-z[e+40>>2]);o=C(f*f);f=C(z[e+72>>2]-z[e+32>>2]);l=C(f*f);f=C(z[e+76>>2]-z[e+36>>2]);f=C(o+C(l+C(f*f)));if(!(f>2]=h;v[e+68>>2]=1065353216;z[e+60>>2]=g;i=f;break c}i=I_(q,u,c,r,e+68|0,e- -64|0);v[e+60>>2]=0;f=I_(q,u,c,s,e+56|0,e+48|0);v[e+52>>2]=0;if(f>2]=z[e+56>>2];v[e+64>>2]=0;z[e+60>>2]=z[e+48>>2];i=f}f=z[r>>2];g=z[c>>2];h=z[r+4>>2];j=z[c+4>>2];l=z[r+8>>2];z[e+40>>2]=z[c+8>>2]+l;z[e+36>>2]=j+h;z[e+32>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+24>>2]=z[s+8>>2]-l;z[e+20>>2]=j-h;z[e+16>>2]=g-f;f=I_(q,u,e+32|0,e+16|0,e+56|0,e+48|0);h=z[e+48>>2];g=C(C(1)-h);z[e+52>>2]=g;if(f>2]=z[e+56>>2];z[e+64>>2]=g;z[e+60>>2]=h;i=f}f=z[c>>2];g=z[r>>2];h=z[c+4>>2];j=z[r+4>>2];l=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=l+z[s+8>>2];z[e+100>>2]=h+j;z[e+96>>2]=f+g;E_(e+72|0,q,c,e+112|0,e+96|0,e,e+92|0);l=z[e>>2];z[e+52>>2]=l;o=z[e+92>>2];z[e+48>>2]=o;h=z[q+8>>2];g=z[q>>2];j=z[q+4>>2];v[e+56>>2]=0;f=C(z[e+80>>2]-h);ia=C(f*f);f=C(z[e+72>>2]-g);W=C(f*f);f=C(z[e+76>>2]-j);f=C(ia+C(W+C(f*f)));if(f>2]=l;v[e+68>>2]=0;z[e+60>>2]=o;i=f}f=z[u>>2];l=z[u+4>>2];z[e+8>>2]=h+z[u+8>>2];z[e+4>>2]=j+l;z[e>>2]=g+f;f=z[c>>2];g=z[r>>2];h=z[c+4>>2];j=z[r+4>>2];l=z[c+8>>2];z[e+120>>2]=z[r+8>>2]+l;z[e+116>>2]=j+h;z[e+112>>2]=g+f;g=z[s>>2];j=z[s+4>>2];z[e+104>>2]=l+z[s+8>>2];z[e+100>>2]=h+j;z[e+96>>2]=f+g;E_(e+72|0,e,c,e+112|0,e+96|0,e+92|0,e+88|0);h=z[e+92>>2];z[e+52>>2]=h;g=z[e+88>>2];z[e+48>>2]=g;v[e+56>>2]=1065353216;f=C(z[e+80>>2]-z[e+8>>2]);o=C(f*f);f=C(z[e+72>>2]-z[e>>2]);l=C(f*f);f=C(z[e+76>>2]-z[e+4>>2]);f=C(o+C(l+C(f*f)));if(!(f>2]=h;v[e+68>>2]=1065353216;z[e+60>>2]=g;i=f}if(ga){z[ga>>2]=z[e+68>>2]}if(ha){z[ha>>2]=z[e+64>>2]}if(P){z[P>>2]=z[e+60>>2]}i=C(G(i,C(0)))}xa=e+128|0;w=z[a+88>>2];if(i>=C(w*w)){break a}g=z[k+40>>2];h=z[k+28>>2];j=z[k+24>>2];l=z[k+44>>2];f=C(C(g*h)-C(j*l));W=l;l=z[k+32>>2];o=z[k+48>>2];h=C(C(W*l)-C(h*o));g=C(C(o*j)-C(l*g));A=z[c+8>>2];B=z[c>>2];E=z[c+4>>2];if(C(C(f*z[a- -64>>2])+C(C(h*z[a+56>>2])+C(g*z[a+60>>2])))C(10000001111620804e-22)){i=z[k+52>>2];h:{i:{j:{k:{l:{m:{m=z[k+56>>2];if(m==C(0)){if(i==C(0)){break m}if(i!=C(1)){break j}P=!(d&48);break h}if(m==C(1)){if(i==C(0)){break l}P=0;break h}if(i==C(0)){break k}P=1;if(!(C(m+i)>=C(.9998999834060669))){break i}P=!(d&16);break h}P=!(d&40);break h}P=!(d&24);break h}P=!(d&8);break h}P=!(d&32)}}n:{if(P){i=C(0);m=C(C(f*f)+C(C(h*h)+C(g*g)));if(m>C(0)){n=C(C(1)/C(K(m)));i=C(f*n);t=C(h*n);n=C(g*n)}z[k+72>>2]=i;z[k+68>>2]=n;z[k+64>>2]=t;d=v[a+52>>2];t=z[d+20>>2];n=z[d+16>>2];m=z[d+12>>2];break n}i=z[k+56>>2];p=z[k+52>>2];f=C(C(C(1)-i)-p);d=v[a+52>>2];m=z[d+8>>2];n=z[k+60>>2];t=z[d+20>>2];h=C(C(m+C(n*C(t-m)))-C(C(p*z[c+32>>2])+C(C(f*z[c+8>>2])+C(i*z[c+20>>2]))));g=z[d>>2];m=z[d+12>>2];g=C(C(g+C(n*C(m-g)))-C(C(p*z[c+24>>2])+C(C(f*z[c>>2])+C(i*z[c+12>>2]))));j=z[d+4>>2];l=n;n=z[d+16>>2];i=C(C(j+C(l*C(n-j)))-C(C(p*z[c+28>>2])+C(C(f*z[c+4>>2])+C(i*z[c+16>>2]))));p=C(K(C(C(h*h)+C(C(g*g)+C(i*i)))));if(p==C(0)){break a}p=C(C(1)/p);z[k+72>>2]=h*p;z[k+68>>2]=i*p;z[k+64>>2]=g*p}o=z[a+92>>2];i=z[a+96>>2];e=v[a>>2];p=z[d>>2];z[k+112>>2]=p;f=z[d+4>>2];z[k+116>>2]=f;h=z[d+8>>2];z[k+120>>2]=h;z[k+100>>2]=n;z[k+96>>2]=m;z[k+104>>2]=t;g=C(t-h);j=C(m-p);l=C(n-f);w=C(K(C(C(g*g)+C(C(j*j)+C(l*l)))));if(w>C(0)){W=h;h=C(C(.009999999776482582)/w);g=C(g*h);z[k+120>>2]=W-g;W=f;f=C(l*h);z[k+116>>2]=W-f;l=p;p=C(j*h);z[k+112>>2]=l-p;z[k+104>>2]=t+g;z[k+100>>2]=n+f;z[k+96>>2]=m+p}n=C(i+o);o:{if(!q$(c,ea,k- -64|0,k+112|0,k+96|0,k+8|0,k+80|0)){break o}x=z[k+8>>2];if(!(x>2];if(d>>>0>63){break o}H=z[a+40>>2];I=z[a+44>>2];J=z[a+48>>2];l=z[a+28>>2];o=z[a+4>>2];t=z[a+16>>2];w=z[a+32>>2];A=z[a+8>>2];B=z[a+20>>2];E=z[a+36>>2];F=z[a+12>>2];y=z[a+24>>2];m=z[k+88>>2];p=z[k+80>>2];f=z[k+84>>2];h=z[k+72>>2];g=z[k+64>>2];j=z[k+68>>2];v[e+4096>>2]=d+1;d=e+(d<<6)|0;v[d+52>>2]=b;z[d+12>>2]=x-i;z[d+8>>2]=C(C(F*g)+C(y*j))+C(E*h);z[d+4>>2]=C(C(A*g)+C(B*j))+C(w*h);z[d>>2]=C(C(o*g)+C(t*j))+C(l*h);z[d+24>>2]=J+C(C(C(p*F)+C(f*y))+C(m*E));z[d+20>>2]=I+C(C(C(p*A)+C(f*B))+C(m*w));z[d+16>>2]=H+C(C(C(p*o)+C(f*t))+C(m*l))}p:{if(!q$(ea,fa,k- -64|0,k+112|0,k+96|0,k+8|0,k+80|0)){break p}x=z[k+8>>2];if(!(x>2];if(d>>>0>63){break p}H=z[a+40>>2];I=z[a+44>>2];J=z[a+48>>2];l=z[a+28>>2];o=z[a+4>>2];t=z[a+16>>2];w=z[a+32>>2];A=z[a+8>>2];B=z[a+20>>2];E=z[a+36>>2];F=z[a+12>>2];y=z[a+24>>2];m=z[k+88>>2];p=z[k+80>>2];f=z[k+84>>2];h=z[k+72>>2];g=z[k+64>>2];j=z[k+68>>2];v[e+4096>>2]=d+1;d=e+(d<<6)|0;v[d+52>>2]=b;z[d+12>>2]=x-i;z[d+8>>2]=C(C(F*g)+C(y*j))+C(E*h);z[d+4>>2]=C(C(A*g)+C(B*j))+C(w*h);z[d>>2]=C(C(o*g)+C(t*j))+C(l*h);z[d+24>>2]=J+C(C(C(p*F)+C(f*y))+C(m*E));z[d+20>>2]=I+C(C(C(p*A)+C(f*B))+C(m*w));z[d+16>>2]=H+C(C(C(p*o)+C(f*t))+C(m*l))}q=a+4|0;q:{if(!q$(fa,c,k- -64|0,k+112|0,k+96|0,k+8|0,k+80|0)){break q}y=z[k+8>>2];if(!(y>2];if(d>>>0>63){break q}x=z[a+40>>2];H=z[a+44>>2];I=z[a+48>>2];j=z[a+28>>2];l=z[a+4>>2];o=z[a+16>>2];t=z[a+32>>2];w=z[a+8>>2];A=z[a+20>>2];B=z[a+36>>2];E=z[a+12>>2];F=z[a+24>>2];n=z[k+88>>2];m=z[k+80>>2];p=z[k+84>>2];f=z[k+72>>2];h=z[k+64>>2];g=z[k+68>>2];v[e+4096>>2]=d+1;d=e+(d<<6)|0;v[d+52>>2]=b;z[d+12>>2]=y-i;z[d+8>>2]=C(C(E*h)+C(F*g))+C(B*f);z[d+4>>2]=C(C(w*h)+C(A*g))+C(t*f);z[d>>2]=C(C(l*h)+C(o*g))+C(j*f);z[d+24>>2]=I+C(C(C(m*E)+C(p*F))+C(n*B));z[d+20>>2]=H+C(C(C(m*w)+C(p*A))+C(n*t));z[d+16>>2]=x+C(C(C(m*l)+C(p*o))+C(n*j))}qZ(q,v[a>>2],v[a+52>>2],z[a+96>>2],c,k- -64|0,b,z[a+92>>2]);break a}e=v[a+52>>2];R=z[c+12>>2];f=C(B-R);F=z[c+28>>2];g=C(E-F);y=z[c+24>>2];l=C(B-y);U=z[c+16>>2];h=C(E-U);i=C(C(f*g)-C(l*h));x=z[c+32>>2];o=C(A-x);j=g;S=z[c+20>>2];g=C(A-S);j=C(C(h*o)-C(j*g));l=C(C(g*l)-C(o*f));o=C(C(i*i)+C(C(j*j)+C(l*l)));if(o>C(0)){n=i;i=C(C(1)/C(K(o)));p=C(n*i);m=C(l*i);n=C(j*i)}H=z[e+8>>2];I=z[e>>2];J=z[e+4>>2];o=C(C(H*p)+C(C(I*n)+C(m*J)));L=z[e+20>>2];M=z[e+12>>2];N=z[e+16>>2];t=C(C(L*p)+C(C(M*n)+C(m*N)));e=o>t;T=C(w+(e?o:t));i=C(C(A*p)+C(C(B*n)+C(E*m)));j=C(C(S*p)+C(C(R*n)+C(U*m)));O=iO?O:l;if(Tj?i:j;i=i>l?i:l;j=C((e?t:o)-w);if(iC(0)){i=C(C(1)/C(K(aa)));_=C(T*i);X=C(O*i);ba=C(Y*i)}i=e?l:j;ca=C(-ba);da=C(-X);$=C(-_);r:{s:{if(!(d&8)){break s}j=C(C(X*h)+C(f*ca));o=C(C(ba*g)+C(h*$));l=C(C(_*f)+C(g*da));if(!(C(D(j))>C(9.999999974752427e-7)?1:C(D(o))>C(9.999999974752427e-7)|C(D(l))>C(9.999999974752427e-7))){break s}f=C(0);h=C(0);g=C(0);t=C(C(j*j)+C(C(o*o)+C(l*l)));if(t>C(0)){h=C(C(1)/C(K(t)));g=C(j*h);f=C(o*h);h=C(l*h)}t=C(C(H*g)+C(C(I*f)+C(J*h)));V=C(C(L*g)+C(C(M*f)+C(N*h)));e=t>V;Z=C(w+(e?t:V));j=C(C(A*g)+C(C(B*f)+C(E*h)));l=C(C(S*g)+C(C(R*f)+C(U*h)));Q=jQ?Q:o;if(Zl?j:l;j=j>o?j:o;l=C((e?V:t)-w);if(jo?o:j;if(i>o){break r}}f=n;h=m;g=p;o=i}t:{u:{if(!(d&16)){break u}i=C(U-F);m=C(R-y);n=C(C(X*i)+C(m*ca));p=C(S-x);m=C(C(_*m)+C(p*da));p=C(C(ba*p)+C(i*$));if(!(C(D(n))>C(9.999999974752427e-7)?1:C(D(p))>C(9.999999974752427e-7)|C(D(m))>C(9.999999974752427e-7))){break u}j=C(0);l=C(0);i=C(0);t=C(C(n*n)+C(C(p*p)+C(m*m)));if(t>C(0)){i=n;n=C(C(1)/C(K(t)));i=C(i*n);l=C(m*n);j=C(p*n)}t=C(C(H*i)+C(C(I*j)+C(J*l)));V=C(C(L*i)+C(C(M*j)+C(N*l)));e=t>V;Z=C(w+(e?t:V));n=C(C(A*i)+C(C(B*j)+C(E*l)));m=C(C(S*i)+C(C(R*j)+C(U*l)));Q=m>n?n:m;p=C(C(x*i)+C(C(y*j)+C(F*l)));Q=p>Q?Q:p;if(Zp?n:p;m=C((e?V:t)-w);if(np?p:n;if(tC(9.999999974752427e-7)?1:C(D(g))>C(9.999999974752427e-7)|C(D(h))>C(9.999999974752427e-7))){break w}n=C(0);m=C(0);p=C(0);o=C(C(f*f)+C(C(g*g)+C(h*h)));if(o>C(0)){m=C(C(1)/C(K(o)));p=C(f*m);n=C(g*m);m=C(h*m)}o=C(C(H*p)+C(C(I*n)+C(J*m)));_=C(C(L*p)+C(C(M*n)+C(N*m)));d=o>_;ba=C(w+(d?o:_));f=C(C(A*p)+C(C(B*n)+C(E*m)));h=C(C(S*p)+C(C(R*n)+C(U*m)));X=fX?X:g;if(bah?f:h;f=f>g?f:g;h=C((d?_:o)-w);if(fg?g:f)>2]=i;m=d?C(-m):m;z[k+12>>2]=m;n=d?C(-n):n;z[k+8>>2]=n;p=z[a+96>>2];d=v[a>>2];z[k+120>>2]=H;z[k+116>>2]=J;z[k+112>>2]=I;z[k+104>>2]=L;z[k+100>>2]=N;z[k+96>>2]=M;f=C(K(aa));if(f>C(0)){f=C(C(.009999999776482582)/f);h=C(T*f);z[k+120>>2]=H-h;g=C(Y*f);z[k+116>>2]=J-g;f=C(O*f);z[k+112>>2]=I-f;z[k+104>>2]=L+h;z[k+100>>2]=N+g;z[k+96>>2]=M+f}j=C(-i);z[k+72>>2]=j;l=C(-m);z[k+68>>2]=l;o=C(-n);z[k+64>>2]=o;x:{if(!q$(c,ea,k- -64|0,k+112|0,k+96|0,k+92|0,k+80|0)){break x}e=v[d+4096>>2];if(e>>>0>63){break x}I=z[a+40>>2];J=z[a+44>>2];L=z[a+48>>2];t=z[a+28>>2];w=z[a+4>>2];A=z[a+16>>2];B=z[a+32>>2];E=z[a+8>>2];F=z[a+20>>2];y=z[a+36>>2];x=z[a+12>>2];H=z[a+24>>2];f=z[k+88>>2];h=z[k+80>>2];g=z[k+84>>2];M=z[k+92>>2];v[d+4096>>2]=e+1;e=d+(e<<6)|0;v[e+52>>2]=b;z[e+12>>2]=-C(p+M);z[e+8>>2]=C(C(n*x)+C(m*H))+C(i*y);z[e+4>>2]=C(C(n*E)+C(m*F))+C(i*B);z[e>>2]=C(C(n*w)+C(m*A))+C(i*t);z[e+24>>2]=L+C(C(C(h*x)+C(g*H))+C(f*y));z[e+20>>2]=J+C(C(C(h*E)+C(g*F))+C(f*B));z[e+16>>2]=I+C(C(C(h*w)+C(g*A))+C(f*t))}z[k+72>>2]=j;z[k+68>>2]=l;z[k+64>>2]=o;y:{if(!q$(ea,fa,k- -64|0,k+112|0,k+96|0,k+92|0,k+80|0)){break y}e=v[d+4096>>2];if(e>>>0>63){break y}I=z[a+40>>2];J=z[a+44>>2];L=z[a+48>>2];t=z[a+28>>2];w=z[a+4>>2];A=z[a+16>>2];B=z[a+32>>2];E=z[a+8>>2];F=z[a+20>>2];y=z[a+36>>2];x=z[a+12>>2];H=z[a+24>>2];f=z[k+88>>2];h=z[k+80>>2];g=z[k+84>>2];M=z[k+92>>2];v[d+4096>>2]=e+1;e=d+(e<<6)|0;v[e+52>>2]=b;z[e+12>>2]=-C(p+M);z[e+8>>2]=C(C(n*x)+C(m*H))+C(i*y);z[e+4>>2]=C(C(n*E)+C(m*F))+C(i*B);z[e>>2]=C(C(n*w)+C(m*A))+C(i*t);z[e+24>>2]=L+C(C(C(h*x)+C(g*H))+C(f*y));z[e+20>>2]=J+C(C(C(h*E)+C(g*F))+C(f*B));z[e+16>>2]=I+C(C(C(h*w)+C(g*A))+C(f*t))}q=a+4|0;z[k+72>>2]=j;z[k+68>>2]=l;z[k+64>>2]=o;z:{if(!q$(fa,c,k- -64|0,k+112|0,k+96|0,k+92|0,k+80|0)){break z}e=v[d+4096>>2];if(e>>>0>63){break z}y=z[a+40>>2];x=z[a+44>>2];H=z[a+48>>2];j=z[a+28>>2];l=z[a+4>>2];o=z[a+16>>2];t=z[a+32>>2];w=z[a+8>>2];A=z[a+20>>2];B=z[a+36>>2];E=z[a+12>>2];F=z[a+24>>2];f=z[k+88>>2];h=z[k+80>>2];g=z[k+84>>2];I=z[k+92>>2];v[d+4096>>2]=e+1;d=d+(e<<6)|0;v[d+52>>2]=b;z[d+12>>2]=-C(p+I);z[d+8>>2]=C(C(n*E)+C(m*F))+C(i*B);z[d+4>>2]=C(C(n*w)+C(m*A))+C(i*t);z[d>>2]=C(C(n*l)+C(m*o))+C(i*j);z[d+24>>2]=H+C(C(C(h*E)+C(g*F))+C(f*B));z[d+20>>2]=x+C(C(C(h*w)+C(g*A))+C(f*t));z[d+16>>2]=y+C(C(C(h*l)+C(g*o))+C(f*j))}qZ(q,v[a>>2],v[a+52>>2],z[a+96>>2],c,k+8|0,b,z[a+92>>2])}xa=k+128|0}function nT(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=0,M=0,N=C(0),O=C(0),P=0,Q=C(0),R=0,S=C(0),T=C(0),U=0,V=0,W=C(0),X=0,Y=0,Z=0,_=0,$=C(0),aa=0,ba=0,ca=C(0),da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;j=xa-272|0;xa=j;l=v[b+520>>2];if(w[l+140|0]){l=v[b+520>>2]}A[b+488>>3]=A[b+488>>3]+ +f;Z=v[l+12>>2];aa=v[l+16>>2];v[b+92>>2]=aa;v[b+88>>2]=Z;v[b+328>>2]=v[b+8>>2];z[b+332>>2]=z[b+12>>2];k=v[b+20>>2];v[b+336>>2]=v[b+16>>2];v[b+340>>2]=k;k=v[b+28>>2];v[b+344>>2]=v[b+24>>2];v[b+348>>2]=k;k=v[b+36>>2];v[b+352>>2]=v[b+32>>2];v[b+356>>2]=k;k=w[b+65|0]|w[b+66|0]<<8|(w[b+67|0]<<16|w[b+68|0]<<24);m=w[b+61|0]|w[b+62|0]<<8|(w[b+63|0]<<16|w[b+64|0]<<24);t[b+381|0]=m;t[b+382|0]=m>>>8;t[b+383|0]=m>>>16;t[b+384|0]=m>>>24;t[b+385|0]=k;t[b+386|0]=k>>>8;t[b+387|0]=k>>>16;t[b+388|0]=k>>>24;k=v[b+60>>2];v[b+376>>2]=v[b+56>>2];v[b+380>>2]=k;k=v[b+52>>2];v[b+368>>2]=v[b+48>>2];v[b+372>>2]=k;k=v[b+44>>2];v[b+360>>2]=v[b+40>>2];v[b+364>>2]=k;v[b+412>>2]=v[b+412>>2]|128;f=z[l+132>>2];z[b+380>>2]=f*f;t[b+384|0]=w[l+136|0];t[b+386|0]=w[l+137|0];t[b+387|0]=w[l+138|0];k=w[l+139|0];v[b+404>>2]=0;v[b+408>>2]=0;t[b+388|0]=k;f=z[b+472>>2];n=z[b+468>>2];o=z[d>>2];p=z[d+4>>2];z[j+264>>2]=z[d+8>>2]+z[b+476>>2];z[j+260>>2]=p+f;z[j+256>>2]=o+n;v[b+476>>2]=0;v[b+468>>2]=0;v[b+472>>2]=0;V=b+252|0;d=v[V>>2];a:{if(!d){break a}m=b+240|0;if(!v[m>>2]){break a}b:{c:{d=Ba[v[v[d>>2]+92>>2]](d)|0;if(!d){break c}l=0;while(1){d:{v[j+152>>2]=0;k=v[V>>2];Ba[v[v[k>>2]+96>>2]](k,j+152|0,1,l)|0;if(v[m>>2]==v[j+152>>2]){break d}l=l+1|0;if((d|0)!=(l|0)){continue}break c}break}d=v[b+252>>2];if((Ba[v[v[d>>2]+28>>2]](d)|0)==v[b+480>>2]){break b}e:{if(!w[b+244|0]){break e}d=v[m>>2];if(!d){break e}hU(v[b+248>>2],d)}v[b+240>>2]=0;f:{if(!w[b+256|0]){break f}d=v[V>>2];if(!d){break f}hU(v[b+260>>2],d)}v[V>>2]=0;break a}g:{if(!w[b+256|0]){break g}d=v[V>>2];if(!d){break g}hU(v[b+260>>2],d)}v[b+252>>2]=0;h:{if(!w[b+244|0]){break h}d=v[m>>2];if(!d){break h}hU(v[b+248>>2],d)}v[m>>2]=0;break a}d=v[m>>2];Ba[v[v[d>>2]+156>>2]](j+152|0,d);if(!(w[j+152|0]&2)){i:{if(!w[b+244|0]){break i}d=v[m>>2];if(!d){break i}hU(v[b+248>>2],d)}v[b+240>>2]=0;j:{if(!w[b+256|0]){break j}d=v[V>>2];if(!d){break j}hU(v[b+260>>2],d)}v[V>>2]=0;break a}d=0;k=0;l=v[g>>2];if(l){k=v[l+12>>2];R=v[l+4>>2];P=v[l>>2];d=v[l+8>>2]}u[j+168>>1]=6;v[j+164>>2]=k;v[j+160>>2]=d;v[j+156>>2]=R;v[j+152>>2]=P;u[j+32>>1]=0;d=v[g+4>>2];if(!d){break a}if(Ba[v[v[d>>2]>>2]](d,j+152|0,v[m>>2],v[V>>2],j+32|0)|0){break a}iT(m);iT(V)}d=v[b+240>>2];l=v[b+264>>2];if(!(d|(l|0)!=-1)){k=0;R=0;P=0;d=xa-256|0;xa=d;m=x[g+8>>1];k:{if(!(m&2)){break k}v[d+208>>2]=139816;v[d+212>>2]=v[b+520>>2]+80;v[d+216>>2]=v[g+4>>2];u[d+220>>1]=m;l=v[g>>2];if(l){P=v[l+8>>2];R=v[l+4>>2];X=v[l>>2];k=v[l+12>>2]}u[d+200>>1]=m&8|6;v[d+196>>2]=k;v[d+192>>2]=P;v[d+188>>2]=R;v[d+184>>2]=X;J=C(Ba[v[v[b>>2]+8>>2]](b));L=A[b+440>>3];M=A[b+432>>3];z[d+176>>2]=A[b+448>>3];z[d+172>>2]=L;z[d+168>>2]=M;_=d+100|0;k=_;v[k>>2]=0;v[k+4>>2]=0;ba=d+96|0;u[ba>>1]=0;v[d+92>>2]=-1;m=d+108|0;k=m;v[k>>2]=0;v[k+4>>2]=0;R=d+116|0;k=R;v[k>>2]=0;v[k+4>>2]=0;v[d+132>>2]=0;q=d+124|0;k=q;v[k>>2]=2139095039;v[k+4>>2]=0;v[d+84>>2]=0;v[d+88>>2]=0;v[d+160>>2]=0;v[d+152>>2]=0;v[d+156>>2]=0;t[d+148|0]=0;v[d+80>>2]=114128;k=v[b+480>>2];f=z[b+28>>2];n=z[b+32>>2];o=z[b+36>>2];u[d+72>>1]=0;z[d+16>>2]=-o;z[d+12>>2]=-n;z[d+8>>2]=-f;$=C(J+C(0));if(Ba[v[v[k>>2]+348>>2]](k,d+168|0,d+8|0,$,d+80|0,d+72|0,d+184|0,d+208|0,0)|0){l=d+80|4;P=l;k=v[d+152>>2];l=v[d+160>>2];X=l?k:P;K=v[X+4>>2];v[P>>2]=v[X>>2];v[P+4>>2]=K;v[P+8>>2]=v[X+8>>2];u[d+96>>1]=x[(l?k+12|0:ba)>>1];z[d+100>>2]=z[(l?k+16|0:_)>>2];P=d+104|0;z[P>>2]=z[(l?k+20|0:P)>>2];z[m>>2]=z[(l?k+24|0:m)>>2];m=d+112|0;z[m>>2]=z[(l?k+28|0:m)>>2];z[R>>2]=z[(l?k+32|0:R)>>2];m=d+120|0;z[m>>2]=z[(l?k+36|0:m)>>2];z[d+124>>2]=z[(l?k+40|0:q)>>2];m=k+44|0;k=d+128|0;l=l?m:k;v[k+16>>2]=v[l+16>>2];m=v[l+12>>2];v[k+8>>2]=v[l+8>>2];v[k+12>>2]=m;m=v[l+4>>2];v[k>>2]=v[l>>2];v[k+4>>2]=m;k=v[d+88>>2];l:{if(!w[b+244|0]){break l}l=v[b+240>>2];if((l|0)==(k|0)){break l}if(l){hU(v[b+248>>2],l)}if(!k){break l}gU(v[b+248>>2],k)}v[b+240>>2]=k;k=v[d+84>>2];m:{if(!w[b+256|0]){break m}l=v[b+252>>2];if((l|0)==(k|0)){break m}if(l){hU(v[b+260>>2],l)}if(!k){break m}gU(v[b+260>>2],k)}v[b+252>>2]=k;k=v[d+88>>2];l=v[d+84>>2];Ba[v[v[l>>2]+76>>2]](d+8|0,l);Ba[v[v[k>>2]+80>>2]](d+224|0,k);N=z[d+32>>2];ca=z[d+28>>2];G=z[d+248>>2];Q=z[d+244>>2];s=z[d+232>>2];E=z[d+224>>2];r=z[d+228>>2];F=z[d+236>>2];O=z[d+24>>2];n=z[d+8>>2];I=z[d+240>>2];f=z[d+20>>2];o=z[d+12>>2];p=z[d+16>>2];S=z[b+28>>2];W=z[b+32>>2];H=C(J-z[d+124>>2]);z[b+300>>2]=C(0)-C(H*z[b+36>>2]);z[b+296>>2]=C(0)-C(H*W);z[b+292>>2]=C(0)-C(S*H);H=C(C(C(n*r)+C(C(f*s)+C(p*F)))-C(E*o));G=C(G+G);I=C(I+I);Q=C(Q+Q);W=C(C(p*G)+C(C(n*I)+C(o*Q)));T=C(C(f*f)+C(-.5));N=C(C(0)-C(N+C(C(p*W)+C(C(G*T)+C(f*C(C(n*Q)-C(I*o)))))));N=C(N+N);S=C(C(C(o*s)+C(C(f*E)+C(n*F)))-C(r*p));O=C(C(0)-C(O+C(C(n*W)+C(C(I*T)+C(f*C(C(o*G)-C(Q*p)))))));O=C(O+O);G=C(C(0)-C(ca+C(C(o*W)+C(C(Q*T)+C(f*C(C(p*I)-C(G*n)))))));G=C(G+G);I=C(C(C(p*E)+C(C(f*r)+C(o*F)))-C(s*n));Q=C(C(H*N)+C(C(S*O)+C(G*I)));f=C(C(C(C(f*F)-C(E*n))-C(o*r))-C(p*s));n=C(C(f*f)+C(-.5));z[b+288>>2]=C(H*Q)+C(C(N*n)-C(f*C(C(S*G)-C(O*I))));z[b+284>>2]=C(I*Q)+C(C(G*n)-C(f*C(C(H*O)-C(N*S))));z[b+280>>2]=C(S*Q)+C(C(O*n)-C(f*C(C(I*N)-C(G*H))));k=v[b+480>>2];ga=b,ha=(Ba[v[v[k>>2]+32>>2]](k)|0)-1|0,v[ga+484>>2]=ha}if(!h){break k}v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;u[d+20>>1]=0;v[d+16>>2]=-1;v[d+8>>2]=0;v[d+12>>2]=0;v[d+56>>2]=0;v[d+48>>2]=2139095039;v[d+52>>2]=0;f=z[b+28>>2];n=z[b+32>>2];z[d+232>>2]=-z[b+36>>2];z[d+228>>2]=-n;z[d+224>>2]=-f;k=HU(h,d+8|0,d+168|0,d+224|0,$,d+4|0);if(!k){break k}f=z[d+48>>2];if(!(f>2])){break k}v[b+264>>2]=v[d+4>>2];n=z[b+28>>2];o=z[b+32>>2];f=C(J-f);z[b+324>>2]=C(0)-C(f*z[b+36>>2]);z[b+320>>2]=C(0)-C(f*o);z[b+316>>2]=C(0)-C(f*n);n=z[k+40>>2];f=C(C(0)-C(A[k+24>>3]));o=C(f+f);p=z[k+32>>2];f=C(C(0)-C(A[k+8>>3]));s=C(f+f);E=z[k+36>>2];f=C(C(0)-C(A[k+16>>3]));r=C(f+f);F=C(C(n*o)+C(C(p*s)+C(E*r)));f=z[k+44>>2];J=C(C(f*f)+C(-.5));z[b+312>>2]=C(n*F)+C(C(o*J)-C(f*C(C(p*r)-C(s*E))));z[b+308>>2]=C(E*F)+C(C(r*J)-C(f*C(C(n*s)-C(o*p))));z[b+304>>2]=C(p*F)+C(C(s*J)-C(f*C(C(E*o)-C(r*n))))}xa=d+256|0;l=v[b+264>>2];d=v[b+240>>2]}n:{if(!(!d&(l|0)==-1)){f=C(0);k=0;s=C(0);E=C(0);d=xa+-64|0;xa=d;o:{p:{q:{r:{if(v[b+240>>2]){l=v[b+252>>2];o=C(1);if(x[l+4>>1]==6){break q}k=v[b+480>>2];k=Ba[v[v[k>>2]+32>>2]](k)|0;if((k|0)==v[b+484>>2]){break p}v[b+484>>2]=k;L=A[b+496>>3];M=A[b+488>>3];A[b+496>>3]=M;k=v[b+76>>2];if(k){Ba[v[v[k>>2]>>2]](d+32|0,k,v[b+240>>2],v[b+252>>2]);k=w[d+32|0]}else{k=0}L=M-L;m=v[b+240>>2];Ba[v[v[l>>2]+76>>2]](d+32|0,l);Ba[v[v[m>>2]+80>>2]](d,m);n=z[d+40>>2];f=z[d+24>>2];F=C(f+f);o=z[d+32>>2];f=z[d+16>>2];J=C(f+f);f=z[d+20>>2];H=C(f+f);p=z[d+36>>2];G=C(C(n*F)+C(C(o*J)+C(H*p)));f=z[d+44>>2];$=C(C(f*f)+C(-.5));s=z[d+4>>2];E=z[d+8>>2];r=z[d+12>>2];I=z[d>>2];Q=C(C(C(o*s)+C(C(f*E)+C(n*r)))-C(I*p));N=z[b+288>>2];N=C(N+N);S=C(C(C(p*E)+C(C(f*I)+C(o*r)))-C(s*n));O=z[b+280>>2];O=C(O+O);W=C(C(C(n*I)+C(C(f*s)+C(p*r)))-C(E*o));T=z[b+284>>2];T=C(T+T);ca=C(C(Q*N)+C(C(S*O)+C(W*T)));r=C(C(C(C(f*r)-C(I*o))-C(p*s))-C(n*E));I=C(C(r*r)+C(-.5));s=C(C(C(z[d+56>>2]+C(C(n*G)+C(C(F*$)+C(f*C(C(o*H)-C(J*p))))))+C(C(Q*ca)+C(C(N*I)+C(r*C(C(S*T)-C(O*W))))))-z[b+300>>2]);E=C(C(C(z[d+52>>2]+C(C(p*G)+C(C(H*$)+C(f*C(C(n*J)-C(F*o))))))+C(C(W*ca)+C(C(T*I)+C(r*C(C(Q*O)-C(N*S))))))-z[b+296>>2]);f=C(C(C(z[d+48>>2]+C(C(o*G)+C(C(J*$)+C(f*C(C(p*F)-C(H*n))))))+C(C(S*ca)+C(C(O*I)+C(r*C(C(W*N)-C(T*Q))))))-z[b+292>>2]);break r}L=A[b+496>>3];M=A[b+488>>3];A[b+496>>3]=M;l=Ba[v[v[h>>2]+36>>2]](h,v[b+264>>2])|0;k=v[b+76>>2];if(k){Ba[v[v[k>>2]+8>>2]](d+32|0,k,l);k=w[d+32|0]}else{k=1}L=M-L;n=z[l+40>>2];f=z[b+312>>2];o=C(f+f);p=z[l+32>>2];f=z[b+304>>2];r=C(f+f);F=z[l+36>>2];f=z[b+308>>2];J=C(f+f);H=C(C(n*o)+C(C(p*r)+C(F*J)));f=z[l+44>>2];G=C(C(f*f)+C(-.5));s=C(C(C(C(n*H)+C(C(o*G)+C(f*C(C(p*J)-C(r*F)))))+C(A[l+24>>3]))-z[b+324>>2]);E=C(C(C(C(F*H)+C(C(J*G)+C(f*C(C(n*r)-C(o*p)))))+C(A[l+16>>3]))-z[b+320>>2]);f=C(C(C(C(p*H)+C(C(r*G)+C(f*C(C(F*o)-C(J*n)))))+C(A[l+8>>3]))-z[b+316>>2])}if(k&4){break p}o=C(C(1)/C(L))}l=C(D(f))>C(9.999999974752427e-7)|C(D(E))>C(9.999999974752427e-7)|C(D(s))>C(9.999999974752427e-7);s:{if(!l){t[b+513|0]=0;break s}t[b+513|0]=1;p=z[b+36>>2];F=z[b+28>>2];r=z[b+32>>2];n=C(C(s*p)+C(C(f*F)+C(E*r)));p=C(p*n);r=C(r*n);F=C(F*n);t:{if(n>C(0)){A[c+8>>3]=A[c+8>>3]+ +F;A[c+16>>3]=A[c+16>>3]+ +r;A[c+24>>3]=A[c+24>>3]+ +p;break t}z[j+256>>2]=F+z[j+256>>2];z[j+260>>2]=r+z[j+260>>2];z[j+264>>2]=p+z[j+264>>2]}if(!(k&1)){break s}z[j+256>>2]=C(f-F)+z[j+256>>2];z[j+260>>2]=C(E-r)+z[j+260>>2];z[j+264>>2]=C(s-p)+z[j+264>>2]}z[b+464>>2]=s*o;z[b+460>>2]=E*o;z[b+456>>2]=f*o;break o}l=w[b+513|0]!=0}xa=d- -64|0;break n}v[b+456>>2]=0;v[b+460>>2]=0;t[b+513|0]=0;v[b+464>>2]=0;l=0}ba=l;k=v[b+520>>2];R=k+56|0;P=k+44|0;X=k+32|0;_=k+20|0;m=Ba[v[v[k>>2]+8>>2]](k)|0;K=v[v[b+520>>2]+68>>2];if(m){d=0;while(1){l=v[K+(d<<2)>>2];u:{if((l|0)==(b|0)){break u}q=v[g+12>>2];if(q){if(!(ha=q,ia=Ba[v[v[b>>2]+16>>2]](b)|0,ja=Ba[v[v[l>>2]+16>>2]](l)|0,ga=v[v[q>>2]+8>>2],Ba[ga](ha|0,ia|0,ja|0)|0)){break u}}v:{switch(v[l+4>>2]){case 0:QT(l-8|0,j+152|0);l=v[k+36>>2];w:{if(l>>>0>=(v[k+40>>2]&2147483647)>>>0){oT(X,j+152|0);break w}q=v[j+156>>2];l=v[k+32>>2]+B(l,56)|0;v[l>>2]=v[j+152>>2];v[l+4>>2]=q;q=v[j+172>>2];v[l+16>>2]=v[j+168>>2];v[l+20>>2]=q;q=v[j+164>>2];v[l+8>>2]=v[j+160>>2];v[l+12>>2]=q;z[l+24>>2]=z[j+176>>2];z[l+28>>2]=z[j+180>>2];z[l+32>>2]=z[j+184>>2];z[l+36>>2]=z[j+188>>2];z[l+40>>2]=z[j+192>>2];z[l+44>>2]=z[j+196>>2];z[l+48>>2]=z[j+200>>2];v[k+36>>2]=v[k+36>>2]+1}q=d<<16;v[j+32>>2]=q;l=v[k+24>>2];if(l>>>0>=(v[k+28>>2]&2147483647)>>>0){pT(_,j+32|0);break u}v[v[k+20>>2]+(l<<2)>>2]=q;v[k+24>>2]=l+1;break u;case 1:break v;default:break u}}KS(l-8|0,j+152|0);l=v[k+60>>2];x:{if(l>>>0>=(v[k+64>>2]&2147483647)>>>0){qT(R,j+152|0);break x}q=v[j+156>>2];l=v[k+56>>2]+B(l,56)|0;v[l>>2]=v[j+152>>2];v[l+4>>2]=q;q=v[j+204>>2];v[l+48>>2]=v[j+200>>2];v[l+52>>2]=q;q=v[j+196>>2];v[l+40>>2]=v[j+192>>2];v[l+44>>2]=q;q=v[j+188>>2];v[l+32>>2]=v[j+184>>2];v[l+36>>2]=q;q=v[j+180>>2];v[l+24>>2]=v[j+176>>2];v[l+28>>2]=q;q=v[j+172>>2];v[l+16>>2]=v[j+168>>2];v[l+20>>2]=q;q=v[j+164>>2];v[l+8>>2]=v[j+160>>2];v[l+12>>2]=q;v[k+60>>2]=v[k+60>>2]+1}q=d<<16;v[j+32>>2]=q;l=v[k+48>>2];if(l>>>0>=(v[k+52>>2]&2147483647)>>>0){pT(P,j+32|0);break u}v[v[k+44>>2]+(l<<2)>>2]=q;v[k+48>>2]=l+1}d=d+1|0;if((m|0)!=(d|0)){continue}break}}y:{if(!h){break y}K=v[h+8>>2];if(K){ea=!Z|!(aa&4);l=0;while(1){d=v[h+4>>2]+B(l,72)|0;m=v[d+36>>2];v[j+48>>2]=v[d+32>>2];v[j+52>>2]=m;m=v[d+28>>2];v[j+40>>2]=v[d+24>>2];v[j+44>>2]=m;m=v[d+20>>2];v[j+32>>2]=v[d+16>>2];v[j+36>>2]=m;z[j+56>>2]=z[d+56>>2];z[j+60>>2]=z[d+60>>2];q=d- -64|0;z[j+64>>2]=z[q>>2];z[j+68>>2]=z[d+40>>2];z[j+72>>2]=z[d+44>>2];z[j+76>>2]=z[d+48>>2];z[j+80>>2]=z[d+52>>2];m=v[k+36>>2];z:{if(m>>>0>=(v[k+40>>2]&2147483647)>>>0){oT(X,j+32|0);break z}U=v[j+36>>2];m=v[k+32>>2]+B(m,56)|0;v[m>>2]=v[j+32>>2];v[m+4>>2]=U;U=v[j+52>>2];v[m+16>>2]=v[j+48>>2];v[m+20>>2]=U;U=v[j+44>>2];v[m+8>>2]=v[j+40>>2];v[m+12>>2]=U;z[m+24>>2]=z[j+56>>2];z[m+28>>2]=z[j+60>>2];z[m+32>>2]=z[j+64>>2];z[m+36>>2]=z[j+68>>2];z[m+40>>2]=z[j+72>>2];z[m+44>>2]=z[j+76>>2];z[m+48>>2]=z[j+80>>2];v[k+36>>2]=v[k+36>>2]+1}U=l<<16|1;v[j+152>>2]=U;m=v[k+24>>2];A:{if(m>>>0>=(v[k+28>>2]&2147483647)>>>0){pT(_,j+152|0);break A}v[v[k+20>>2]+(m<<2)>>2]=U;v[k+24>>2]=m+1}if(!ea){v[j+176>>2]=0;v[j+180>>2]=0;v[j+168>>2]=0;v[j+172>>2]=0;v[j+160>>2]=0;v[j+164>>2]=0;v[j+184>>2]=0;v[j+188>>2]=1065353216;v[j+152>>2]=0;v[j+156>>2]=0;v[j+200>>2]=0;v[j+204>>2]=0;v[j+192>>2]=0;v[j+196>>2]=0;v[j+208>>2]=1065353216;v[j+220>>2]=0;v[j+224>>2]=0;v[j+212>>2]=0;v[j+216>>2]=0;v[j+228>>2]=1065353216;v[j+240>>2]=0;v[j+244>>2]=0;v[j+232>>2]=0;v[j+236>>2]=0;v[j+252>>2]=Z;v[j+248>>2]=1065353216;m=j+152|0;v[m+4>>2]=-16711681;L=A[d+24>>3];M=A[d+32>>3];Y=A[d+16>>3];z[j+96>>2]=z[d+40>>2];z[j+100>>2]=z[d+44>>2];z[j+104>>2]=z[d+48>>2];f=z[d+52>>2];z[j+120>>2]=M;z[j+116>>2]=L;z[j+112>>2]=Y;z[j+108>>2]=f;U=j+96|0;ZU(m,U);f=z[d+56>>2];n=z[d+60>>2];z[j+104>>2]=-z[q>>2];z[j+100>>2]=-n;z[j+96>>2]=-f;z[j+108>>2]=z[d+56>>2];z[j+112>>2]=z[d+60>>2];f=z[q>>2];t[j+120|0]=1;z[j+116>>2]=f;$U(m,U)}l=l+1|0;if((K|0)!=(l|0)){continue}break}}q=v[h+20>>2];if(!q){break y}aa=!Z|!(aa&4);l=0;while(1){d=v[h+16>>2]+(l<<6)|0;L=A[d+16>>3];M=A[d+24>>3];f=z[d+40>>2];n=C(f+f);E=z[d+48>>2];r=z[d+44>>2];o=z[d+52>>2];p=C(o+o);s=z[d+56>>2];Y=+C(C(C(n*E)-C(r*p))*s);A[j+112>>3]=A[d+32>>3]-Y;da=M;M=+C(s*C(C(E*p)+C(n*r)));A[j+104>>3]=da-M;da=L;L=+C(s*C(C(f*n)+C(C(o*p)+C(-1))));A[j+96>>3]=da-L;da=A[d+16>>3];fa=A[d+24>>3];A[j+136>>3]=A[d+32>>3]+Y;A[j+128>>3]=fa+M;A[j+120>>3]=da+L;z[j+144>>2]=z[d+60>>2];m=v[k+60>>2];B:{if(m>>>0>=(v[k+64>>2]&2147483647)>>>0){qT(R,j+96|0);break B}K=v[j+100>>2];m=v[k+56>>2]+B(m,56)|0;v[m>>2]=v[j+96>>2];v[m+4>>2]=K;K=v[j+148>>2];v[m+48>>2]=v[j+144>>2];v[m+52>>2]=K;K=v[j+140>>2];v[m+40>>2]=v[j+136>>2];v[m+44>>2]=K;K=v[j+132>>2];v[m+32>>2]=v[j+128>>2];v[m+36>>2]=K;K=v[j+124>>2];v[m+24>>2]=v[j+120>>2];v[m+28>>2]=K;K=v[j+116>>2];v[m+16>>2]=v[j+112>>2];v[m+20>>2]=K;K=v[j+108>>2];v[m+8>>2]=v[j+104>>2];v[m+12>>2]=K;v[k+60>>2]=v[k+60>>2]+1}K=l<<16|2;v[j+152>>2]=K;m=v[k+48>>2];C:{if(m>>>0>=(v[k+52>>2]&2147483647)>>>0){pT(P,j+152|0);break C}v[v[k+44>>2]+(m<<2)>>2]=K;v[k+48>>2]=m+1}if(!aa){v[j+176>>2]=0;v[j+180>>2]=0;v[j+168>>2]=0;v[j+172>>2]=0;v[j+160>>2]=0;v[j+164>>2]=0;v[j+184>>2]=0;v[j+188>>2]=1065353216;v[j+152>>2]=0;v[j+156>>2]=0;v[j+200>>2]=0;v[j+204>>2]=0;v[j+192>>2]=0;v[j+196>>2]=0;v[j+208>>2]=1065353216;v[j+220>>2]=0;v[j+224>>2]=0;v[j+212>>2]=0;v[j+216>>2]=0;v[j+228>>2]=1065353216;v[j+240>>2]=0;v[j+244>>2]=0;v[j+232>>2]=0;v[j+236>>2]=0;v[j+252>>2]=Z;v[j+248>>2]=1065353216;m=j+152|0;v[m+4>>2]=-16711681;r=z[d+56>>2];F=z[d+60>>2];f=z[d+48>>2];n=z[d+44>>2];o=z[d+52>>2];p=z[d+40>>2];L=A[d+16>>3];M=A[d+24>>3];Y=A[d+32>>3];v[j+92>>2]=1065353216;v[j+76>>2]=0;v[j+60>>2]=0;v[j+44>>2]=0;z[j+88>>2]=Y;z[j+84>>2]=M;z[j+80>>2]=L;E=C(n+n);J=C(f*E);s=C(p+p);H=C(o*s);z[j+68>>2]=J-H;G=C(s*f);I=C(E*o);z[j+64>>2]=G+I;z[j+56>>2]=J+H;J=C(s*n);H=o;o=C(f+f);H=C(H*o);z[j+48>>2]=J-H;z[j+40>>2]=G-I;z[j+36>>2]=J+H;p=C(C(1)-C(p*s));n=C(n*E);z[j+72>>2]=p-n;f=C(f*o);z[j+52>>2]=p-f;z[j+32>>2]=C(C(1)-n)-f;dV(m,F,r,j+32|0)}l=l+1|0;if((q|0)!=(l|0)){continue}break}}m=v[k+36>>2];v[j+32>>2]=m;d=0;l=0;if(m){l=v[X>>2];m=v[_>>2]}else{m=0}v[j+40>>2]=m;v[j+36>>2]=l;k=v[k+60>>2];v[j+44>>2]=k;l=0;if(k){l=v[P>>2];d=v[R>>2]}v[j+52>>2]=l;v[j+48>>2]=d;v[j+100>>2]=h;v[j+96>>2]=b;d=v[b+480>>2];v[j+20>>2]=Z;v[j+16>>2]=d;v[j+24>>2]=v[b+520>>2]+80;v[b+412>>2]=v[b+412>>2]&-3;v[j+12>>2]=0;v[j+8>>2]=0;L=A[c+24>>3];M=A[c+16>>3];Y=A[c+8>>3];d=b+88|0;mT(j+152|0,d,j+16|0,j+96|0,c,j+256|0,j+32|0,e,g,i,ba,j+12|0,j+8|0);l=w[j+152|0];t[a|0]=l;h=v[b+412>>2];if(h&1){v[b+412>>2]=h|2;A[c+24>>3]=L;A[c+16>>3]=M;A[c+8>>3]=Y;f=z[j+256>>2];D:{if(v[b+8>>2]==1){o=z[b+36>>2];n=f;f=z[b+28>>2];p=z[b+32>>2];n=C(C(z[j+264>>2]*o)+C(C(n*f)+C(z[j+260>>2]*p)));z[j+152>>2]=f*n;f=C(o*n);n=C(p*n);break D}z[j+152>>2]=f;f=z[j+264>>2];n=z[j+260>>2]}z[j+160>>2]=f;z[j+156>>2]=n;mT(j,d,j+16|0,j+96|0,c,j+152|0,j+32|0,e,g,i,ba,j+12|0,j+8|0);l=w[j|0];t[a|0]=l;v[b+412>>2]=v[b+412>>2]&-3}a=v[j+12>>2];E:{if(!w[b+256|0]){break E}d=v[V>>2];if((d|0)==(a|0)){break E}if(d){hU(v[b+260>>2],d)}if(!a){break E}gU(v[b+260>>2],a)}v[b+252>>2]=a;a=v[j+8>>2];F:{if(!w[b+244|0]){break F}d=v[b+240>>2];if((d|0)==(a|0)){break F}if(d){hU(v[b+248>>2],d)}if(!a){break F}gU(v[b+248>>2],a)}t[b+512|0]=l;v[b+240>>2]=a;a=v[c+12>>2];v[b+432>>2]=v[c+8>>2];v[b+436>>2]=a;a=v[c+20>>2];v[b+440>>2]=v[c+16>>2];v[b+444>>2]=a;a=v[c+28>>2];v[b+448>>2]=v[c+24>>2];v[b+452>>2]=a;a=v[b+424>>2];G:{if(!a){break G}e=C(L-A[c+24>>3]);f=C(e*e);e=C(Y-A[c+8>>3]);o=C(e*e);e=C(M-A[c+16>>3]);if(C(f+C(o+C(e*e)))==C(0)){break G}c=j+152|0;Ba[v[v[a>>2]+76>>2]](c,a);L=A[b+440>>3];M=A[b+432>>3];z[j+176>>2]=A[b+448>>3];z[j+172>>2]=L;z[j+168>>2]=M;z[j+152>>2]=z[b+12>>2];z[j+156>>2]=z[b+16>>2];z[j+160>>2]=z[b+20>>2];z[j+164>>2]=z[b+24>>2];a=v[b+424>>2];Ba[v[v[a>>2]+248>>2]](a,c)}g=xa+-64|0;xa=g;h=v[b+520>>2];a=v[h+28>>2]&2147483647;H:{if(!a){break H}if(y[h+24>>2]>a>>>1>>>0){v[h+24>>2]=0;break H}v[g+8>>2]=0;a=h+20|0;kU(a,g+8|0);lU(a,v[h+24>>2])}a=v[h+40>>2]&2147483647;I:{if(!a){break I}if(y[h+36>>2]>a>>>1>>>0){v[h+36>>2]=0;break I}b=h+32|0;a=v[b+4>>2];if((a|0)<0){c=v[b>>2];d=c+B(a,56)|0;while(1){a=v[g+12>>2];v[d>>2]=v[g+8>>2];v[d+4>>2]=a;a=v[g+28>>2];v[d+16>>2]=v[g+24>>2];v[d+20>>2]=a;a=v[g+20>>2];v[d+8>>2]=v[g+16>>2];v[d+12>>2]=a;z[d+24>>2]=z[g+32>>2];z[d+28>>2]=z[g+36>>2];z[d+32>>2]=z[g+40>>2];z[d+36>>2]=z[g+44>>2];z[d+40>>2]=z[g+48>>2];z[d+44>>2]=z[g+52>>2];z[d+48>>2]=z[g+56>>2];d=d+56|0;if(c>>>0>d>>>0){continue}break}}v[b+4>>2]=0;c=0;i=v[h+36>>2];J:{if(!i){break J}d=B(i,56);if(!d){break J}a=v[37696];c=a+12|0;c=(ja=c,ia=d,ha=Ba[v[v[a>>2]+20>>2]](a)|0?25709:63804,ka=16608,la=553,ga=v[v[c>>2]+8>>2],Ba[ga](ja|0,ia|0,ha|0,ka|0,la|0)|0)}d=v[b>>2];a=v[b+4>>2];if((a|0)>0){k=B(a,56)+c|0;a=c;while(1){l=v[d+4>>2];v[a>>2]=v[d>>2];v[a+4>>2]=l;l=v[d+20>>2];v[a+16>>2]=v[d+16>>2];v[a+20>>2]=l;l=v[d+12>>2];v[a+8>>2]=v[d+8>>2];v[a+12>>2]=l;z[a+24>>2]=z[d+24>>2];z[a+28>>2]=z[d+28>>2];z[a+32>>2]=z[d+32>>2];z[a+36>>2]=z[d+36>>2];z[a+40>>2]=z[d+40>>2];z[a+44>>2]=z[d+44>>2];z[a+48>>2]=z[d+48>>2];d=d+56|0;a=a+56|0;if(k>>>0>a>>>0){continue}break}d=v[b>>2]}if(!(!d|v[b+8>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,d)}v[b+8>>2]=i;v[b>>2]=c}a=v[h+52>>2]&2147483647;K:{if(!a){break K}if(y[h+48>>2]>a>>>1>>>0){v[h+48>>2]=0;break K}v[g+8>>2]=0;a=h+44|0;kU(a,g+8|0);lU(a,v[h+48>>2])}a=v[h- -64>>2]&2147483647;L:{if(!a){break L}if(y[h+60>>2]>a>>>1>>>0){v[h+60>>2]=0;break L}v[g+56>>2]=0;v[g+60>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+40>>2]=0;v[g+44>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+24>>2]=0;v[g+28>>2]=0;v[g+16>>2]=0;v[g+20>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;b=h+56|0;a=v[b+4>>2];if((a|0)<0){c=v[b>>2];d=c+B(a,56)|0;while(1){a=v[g+12>>2];v[d>>2]=v[g+8>>2];v[d+4>>2]=a;a=v[g+60>>2];v[d+48>>2]=v[g+56>>2];v[d+52>>2]=a;a=v[g+52>>2];v[d+40>>2]=v[g+48>>2];v[d+44>>2]=a;a=v[g+44>>2];v[d+32>>2]=v[g+40>>2];v[d+36>>2]=a;a=v[g+36>>2];v[d+24>>2]=v[g+32>>2];v[d+28>>2]=a;a=v[g+28>>2];v[d+16>>2]=v[g+24>>2];v[d+20>>2]=a;a=v[g+20>>2];v[d+8>>2]=v[g+16>>2];v[d+12>>2]=a;d=d+56|0;if(c>>>0>d>>>0){continue}break}}v[b+4>>2]=0;c=0;h=v[h+60>>2];M:{if(!h){break M}d=B(h,56);if(!d){break M}a=v[37696];c=a+12|0;c=(la=c,ka=d,ha=Ba[v[v[a>>2]+20>>2]](a)|0?42783:63804,ia=16608,ja=553,ga=v[v[c>>2]+8>>2],Ba[ga](la|0,ka|0,ha|0,ia|0,ja|0)|0)}d=v[b>>2];a=v[b+4>>2];if((a|0)>0){i=B(a,56)+c|0;a=c;while(1){k=v[d+4>>2];v[a>>2]=v[d>>2];v[a+4>>2]=k;k=v[d+52>>2];v[a+48>>2]=v[d+48>>2];v[a+52>>2]=k;k=v[d+44>>2];v[a+40>>2]=v[d+40>>2];v[a+44>>2]=k;k=v[d+36>>2];v[a+32>>2]=v[d+32>>2];v[a+36>>2]=k;k=v[d+28>>2];v[a+24>>2]=v[d+24>>2];v[a+28>>2]=k;k=v[d+20>>2];v[a+16>>2]=v[d+16>>2];v[a+20>>2]=k;k=v[d+12>>2];v[a+8>>2]=v[d+8>>2];v[a+12>>2]=k;d=d+56|0;a=a+56|0;if(i>>>0>a>>>0){continue}break}d=v[b>>2]}if(!(!d|v[b+8>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,d)}v[b+8>>2]=h;v[b>>2]=c}xa=g- -64|0;xa=j+272|0}function YY(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=C(g);h=h|0;i=i|0;j=j|0;k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=C(0),B=0,D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=0,N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=0,ra=C(0),sa=0,ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=0,Na=0;b=xa-352|0;xa=b;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+28>>2]=4;l=z[a+4>>2];m=z[a+8>>2];v[b+76>>2]=0;v[b+60>>2]=0;n=C(m*C(0));z[b+56>>2]=n;z[b+52>>2]=n;n=C(-n);z[b+72>>2]=n;z[b+68>>2]=n;z[b+80>>2]=l;z[b+48>>2]=m;t[b+32|0]=1;z[b+24>>2]=l;z[b+20>>2]=l;z[b+16>>2]=l;z[b+64>>2]=-m;v[b+344>>2]=0;v[b+348>>2]=0;v[b+336>>2]=0;v[b+340>>2]=0;ta=z[e+20>>2];s=z[f+20>>2];ua=z[e+24>>2];D=z[f+24>>2];m=z[d+8>>2];n=z[d>>2];p=z[d+4>>2];r=z[d+12>>2];T=z[c+12>>2];V=z[c>>2];va=z[e+16>>2];I=z[f+16>>2];P=z[c+4>>2];Q=z[c+8>>2];v[b+332>>2]=0;v[b+316>>2]=0;v[b+300>>2]=0;oa=C(-V);q=C(I-va);o=C(s-ta);y=C(D-ua);u=C(C(C(oa*q)-C(o*P))-C(Q*y));ba=C(C(T*T)+C(-.5));G=C(C(C(T*C(C(P*q)-C(V*o)))+C(ba*y))-C(Q*u));z[b+328>>2]=G+G;G=C(C(C(ba*o)+C(T*C(C(V*y)-C(Q*q))))-C(P*u));z[b+324>>2]=G+G;x=b+320|0;q=C(C(C(ba*q)+C(T*C(C(Q*o)-C(P*y))))-C(V*u));z[x>>2]=q+q;o=C(C(C(p*Q)-C(P*m))+C(C(n*T)-C(r*V)));q=C(o+o);y=C(C(C(m*V)-C(Q*n))+C(C(p*T)-C(r*P)));u=C(y+y);G=C(C(1)-C(o*q));R=C(y*u);z[b+312>>2]=G-R;o=C(C(C(n*P)-C(V*p))+C(C(m*T)-C(r*Q)));H=C(o*u);m=C(C(r*T)-C(C(C(oa*n)-C(p*P))-C(Q*m)));n=C(m*q);z[b+308>>2]=H-n;p=C(o*q);r=C(m*u);z[b+304>>2]=p+r;z[b+296>>2]=H+n;n=C(o+o);o=C(o*n);z[b+292>>2]=G-o;q=C(y*q);m=C(m*n);z[b+288>>2]=q-m;v[b+284>>2]=0;z[b+280>>2]=p-r;z[b+276>>2]=q+m;z[b+272>>2]=C(C(1)-R)-o;p=z[c+20>>2];r=z[d+20>>2];m=z[c+24>>2];n=z[d+24>>2];q=z[c+16>>2];o=z[d+16>>2];v[b+268>>2]=0;wa=C(n-D);m=C(C(m-ua)-wa);ya=C(o-I);n=C(C(q-va)-ya);za=C(r-s);p=C(C(p-ta)-za);r=C(C(Q*m)+C(C(V*n)+C(P*p)));q=C(C(C(ba*m)-C(T*C(C(V*p)-C(P*n))))+C(Q*r));z[b+264>>2]=q+q;q=C(C(P*r)+C(C(ba*p)-C(T*C(C(Q*n)-C(m*V)))));z[b+260>>2]=q+q;m=C(C(V*r)+C(C(ba*n)-C(T*C(C(P*m)-C(p*Q)))));z[b+256>>2]=m+m;v[b+192>>2]=0;v[b+112>>2]=142420;v[b+116>>2]=k;v[b+120>>2]=b+272;a=v[b+292>>2];v[b+144>>2]=v[b+288>>2];v[b+148>>2]=a;a=v[b+300>>2];v[b+152>>2]=v[b+296>>2];v[b+156>>2]=a;a=v[b+284>>2];v[b+136>>2]=v[b+280>>2];v[b+140>>2]=a;a=v[b+308>>2];v[b+160>>2]=v[b+304>>2];v[b+164>>2]=a;a=v[b+316>>2];v[b+168>>2]=v[b+312>>2];v[b+172>>2]=a;a=v[x+4>>2];v[b+176>>2]=v[x>>2];v[b+180>>2]=a;a=v[b+332>>2];v[b+184>>2]=v[b+328>>2];v[b+188>>2]=a;a=v[b+276>>2];v[b+128>>2]=v[b+272>>2];v[b+132>>2]=a;m=z[b+132>>2];z[b+132>>2]=z[b+144>>2];n=z[b+152>>2];p=z[b+136>>2];z[b+136>>2]=z[b+160>>2];z[b+152>>2]=z[b+164>>2];z[b+160>>2]=p;z[b+164>>2]=n;z[b+144>>2]=m;v[b+104>>2]=141148;v[b+108>>2]=b;pa=C(34028234663852886e22);e=xa-288|0;xa=e;S=C(l+g);a=xa-272|0;xa=a;v[a+264>>2]=0;v[a+268>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;O=z[b+344>>2];ea=z[b+340>>2];W=z[b+336>>2];_=z[b+264>>2];Z=z[b+260>>2];fa=z[b+256>>2];v[a+240>>2]=1;qa=b+112|0;c=qa;d=v[c+8>>2];X=z[d+52>>2];na=z[d+36>>2];ca=z[d+20>>2];j=b+104|0;k=v[j+4>>2];n=z[k+56>>2];p=z[k+52>>2];r=z[k+72>>2];q=z[k+68>>2];A=z[d+56>>2];E=z[d+40>>2];ga=z[d+24>>2];f=v[c+4>>2];o=z[f+72>>2];y=z[f- -64>>2];u=z[f+68>>2];s=z[f+56>>2];D=z[f+52>>2];I=z[f+88>>2];da=z[c+56>>2];ha=z[c+24>>2];ia=z[c+40>>2];G=z[f+80>>2];la=z[c+48>>2];ma=z[c+32>>2];R=z[f+84>>2];Aa=z[c+52>>2];Ba=z[c+20>>2];Ca=z[c+36>>2];Da=z[d+48>>2];Ea=z[d+32>>2];Fa=z[d>>2];Ga=z[d+16>>2];Ha=z[d+4>>2];H=z[k+48>>2];$=z[k+64>>2];Ia=z[d+8>>2];J=z[f+48>>2];Ja=z[c+16>>2];g=z[x+8>>2];l=z[x>>2];m=z[x+4>>2];v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+224>>2]=0;v[a+228>>2]=0;v[a+232>>2]=0;f=0;v[a+236>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;ka=A;Ka=E;ja=o;La=I;d=C(C(g*g)+C(C(l*l)+C(m*m)))>C(1.1920928955078125e-7);l=d?l:C(1);E=l;o=d?g:C(0);g=d?m:C(0);l=C(C(1)/C(K(C(C(o*o)+C(C(l*l)+C(g*g))))));m=C(E*l);A=C(-m);g=C(g*l);l=C(o*l);o=C(C(C(ha*A)-C(ia*g))-C(da*l));E=C(C(C(Ja*A)-C(ma*g))-C(la*l));A=C(C(C(Ba*A)-C(Ca*g))-C(Aa*l));da=C(C(ja*o)+C(C(y*E)+C(u*A)));I=C(C(I*o)+C(C(G*E)+C(A*R)));d=da>I;o=C(C(s*o)+C(C(J*E)+C(A*D)));k=!(o>da)|!(o>I);o=k?d?ja:La:s;y=k?d?y:G:J;D=k?d?u:R:D;I=C(ka+C(C(Ka*o)+C(C(Ia*y)+C(ga*D))));d=C(C(n*l)+C(C(H*m)+C(g*p)))>C(C(r*l)+C(C($*m)+C(g*q)));g=d?n:r;u=C(I-g);z[a+184>>2]=u;l=C(X+C(C(na*o)+C(C(Ha*y)+C(D*ca))));m=d?p:q;s=C(l-m);z[a+180>>2]=s;n=C(Da+C(C(Ea*o)+C(C(Fa*y)+C(D*Ga))));p=d?H:$;o=C(n-p);z[a+176>>2]=o;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+160>>2]=0;v[a+164>>2]=0;v[a+168>>2]=0;v[a+172>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;z[a+120>>2]=I;z[a+116>>2]=l;z[a+112>>2]=n;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;z[a+56>>2]=g;z[a+52>>2]=m;z[a+48>>2]=p;g=C(-u);l=C(-s);m=C(-o);D=C(C(u*u)+C(C(o*o)+C(s*s)));a:{b:{if(!(D>C(0))){n=m;r=l;q=g;G=C(0);y=o;p=s;I=u;break b}X=C(S+C(0));na=C(X*X);R=C(C(fa*C(0))+W);H=C(C(Z*C(0))+ea);$=C(C(_*C(0))+O);G=C(0);q=g;r=l;n=m;while(1){y=o;p=s;I=u;s=C(C(1)/C(K(C(C(g*g)+C(C(m*m)+C(l*l))))));o=C(m*s);d=v[c+4>>2];S=z[d+72>>2];u=C(g*s);s=C(l*s);J=C(C(z[c+56>>2]*u)+C(C(o*z[c+24>>2])+C(s*z[c+40>>2])));O=z[d- -64>>2];A=C(C(z[c+48>>2]*u)+C(C(o*z[c+16>>2])+C(s*z[c+32>>2])));E=C(C(z[c+52>>2]*u)+C(C(o*z[c+20>>2])+C(s*z[c+36>>2])));ea=z[d+68>>2];W=C(C(S*J)+C(C(O*A)+C(E*ea)));_=z[d+88>>2];Z=z[d+80>>2];fa=z[d+84>>2];ca=C(C(_*J)+C(C(Z*A)+C(E*fa)));f=W>ca;ja=W;W=z[d+56>>2];ga=z[d+48>>2];ka=E;E=z[d+52>>2];J=C(C(W*J)+C(C(ga*A)+C(ka*E)));k=!(jaca);d=v[j+4>>2];ca=z[d+48>>2];J=C(-o);da=z[d+52>>2];ha=z[d+56>>2];ia=z[d+64>>2];la=z[d+68>>2];ma=z[d+72>>2];L=C(C(C(ca*J)-C(da*s))-C(ha*u))>C(C(C(ia*J)-C(la*s))-C(ma*u));d=v[c+8>>2];J=k?f?S:_:W;A=k?f?O:Z:ga;O=k?f?ea:fa:E;ea=C(z[d+48>>2]+C(C(z[d+32>>2]*J)+C(C(z[d>>2]*A)+C(O*z[d+16>>2]))));ca=L?ca:ia;W=C(R+ca);E=C(ea-W);_=C(z[d+52>>2]+C(C(z[d+36>>2]*J)+C(C(z[d+4>>2]*A)+C(O*z[d+20>>2]))));ga=L?da:la;Z=C(H+ga);S=C(_-Z);O=C(z[d+56>>2]+C(C(z[d+40>>2]*J)+C(C(z[d+8>>2]*A)+C(O*z[d+24>>2]))));J=L?ha:ma;fa=C($+J);A=C(O-fa);da=C(C(C(C(o*C(-E))-C(s*S))-C(u*A))-X);if(da>C(0)){f=0;ha=z[b+264>>2];ka=C(u*ha);u=z[b+256>>2];ja=s;s=z[b+260>>2];ia=C(ka+C(C(o*u)+C(ja*s)));if(ia>=C(0)){break a}o=G;G=C(o-C(da/ia));if(G>o){if(G>C(1)){break a}q=z[b+344>>2];r=z[b+340>>2];n=z[b+336>>2];v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;o=C(n+C(u*G));n=C(o-R);D=C(n+z[a+80>>2]);z[a+80>>2]=D;u=C(r+C(s*G));r=C(u-H);R=C(r+z[a+84>>2]);z[a+84>>2]=R;s=C(q+C(ha*G));q=C(s-$);H=C(q+z[a+88>>2]);z[a+88>>2]=H;$=C(n+z[a+64>>2]);z[a+64>>2]=$;A=C(r+z[a+68>>2]);z[a+68>>2]=A;E=C(q+z[a+72>>2]);z[a+72>>2]=E;n=C(n+z[a+48>>2]);z[a+48>>2]=n;r=C(r+z[a+52>>2]);z[a+52>>2]=r;q=C(q+z[a+56>>2]);z[a+56>>2]=q;S=z[a+112>>2];W=z[a+116>>2];Z=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=Z-q;z[a+180>>2]=W-r;z[a+176>>2]=S-n;n=z[a+128>>2];r=z[a+132>>2];q=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=q-E;z[a+196>>2]=r-A;z[a+192>>2]=n-$;n=z[a+144>>2];r=z[a+148>>2];q=z[a+152>>2];v[a+220>>2]=0;z[a+216>>2]=q-H;z[a+212>>2]=r-R;z[a+208>>2]=n-D;fa=C(J+s);A=C(O-fa);Z=C(ga+u);S=C(_-Z);W=C(ca+o);E=C(ea-W);n=m;r=l;q=g;R=o;H=u;$=s;g=C(34028234663852886e22)}else{g=D}}else{g=D}J=g;f=v[a+240>>2];k=f<<4;d=k+(a+112|0)|0;v[d+12>>2]=0;z[d+8>>2]=O;z[d+4>>2]=_;z[d>>2]=ea;d=k+(a+48|0)|0;v[d+12>>2]=0;z[d+8>>2]=fa;z[d+4>>2]=Z;z[d>>2]=W;d=k+(a+176|0)|0;v[d+12>>2]=0;z[d+8>>2]=A;z[d+4>>2]=S;z[d>>2]=E;v[a+240>>2]=f+1;c:{d:{switch(f-1|0){case 0:o=z[a+184>>2];g=C(z[a+200>>2]-o);u=z[a+176>>2];l=C(z[a+192>>2]-u);s=z[a+180>>2];m=C(z[a+196>>2]-s);D=C(C(g*g)+C(C(l*l)+C(m*m)));if(D<=C(1.1920928955078125e-7)){v[a+240>>2]=1;d=v[a+180>>2];v[a+32>>2]=v[a+176>>2];v[a+36>>2]=d;d=v[a+188>>2];v[a+40>>2]=v[a+184>>2];v[a+44>>2]=d;break c}E=g;g=C(F(C(C(C(C(C(-u)*l)-C(m*s))-C(o*g))/D),C(1)));g=g>C(0)?g:C(0);z[a+40>>2]=o+C(E*g);z[a+36>>2]=s+C(m*g);z[a+32>>2]=u+C(l*g);break c;case 1:KV(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;case 2:O_(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;default:break d}}z[a+40>>2]=A;z[a+36>>2]=S;z[a+32>>2]=E}u=z[a+40>>2];g=C(-u);s=z[a+36>>2];l=C(-s);o=z[a+32>>2];m=C(-o);D=C(C(u*u)+C(C(o*o)+C(s*s)));if(na>2]+32|0];A=C(0);R=C(0);k=!(D>C(0))|f;g=k?q:g;m=k?n:m;l=k?r:l;n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));if(!(n<=C(1.1920928955078125e-7))){r=g;g=C(C(1)/n);ra=C(r*g);A=C(l*g);R=C(m*g)}v[e+268>>2]=0;z[e+264>>2]=-ra;z[e+260>>2]=-A;z[e+256>>2]=-R;z[e+240>>2]=G;v[e+252>>2]=v[a+252>>2];k=v[a+248>>2];v[e+244>>2]=v[a+244>>2];v[e+248>>2]=k;v[a+44>>2]=0;z[a+40>>2]=f?I:u;z[a+36>>2]=f?p:s;z[a+32>>2]=f?y:o;f=v[a+268>>2];L=v[a+264>>2];v[a+24>>2]=L;v[a+28>>2]=f;k=v[a+260>>2];Y=v[a+256>>2];v[a+16>>2]=Y;v[a+20>>2]=k;v[a+8>>2]=L;v[a+12>>2]=f;v[a>>2]=Y;v[a+4>>2]=k;JV(a+176|0,a+112|0,a+48|0,a+32|0,a+16|0,a,v[a+240>>2]);g=z[v[c+4>>2]+16>>2];l=z[a+16>>2];m=z[a+20>>2];n=z[a+24>>2];v[e+284>>2]=0;z[e+280>>2]=n+(d?C(ra*g):C(-0));z[e+276>>2]=m+(d?C(A*g):C(-0));z[e+272>>2]=l+(d?C(R*g):C(-0));f=1}xa=a+272|0;if(f){a=v[e+244>>2];v[b+240>>2]=v[e+240>>2];v[b+244>>2]=a;a=v[e+252>>2];v[b+248>>2]=v[e+248>>2];v[b+252>>2]=a;if(z[e+240>>2]==C(0)){c=v[qa+4>>2];d=v[j+4>>2];z[e+224>>2]=C(z[c+16>>2]+z[d+16>>2])*C(100);t[e+215|0]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;v[e+152>>2]=0;v[e+156>>2]=0;v[e+144>>2]=0;v[e+148>>2]=0;v[e+136>>2]=0;v[e+140>>2]=0;v[e+128>>2]=0;v[e+132>>2]=0;v[e+192>>2]=0;a=v[qa+8>>2];v[e+56>>2]=a;v[e+48>>2]=142420;v[e+52>>2]=c;c=v[a+12>>2];v[e+72>>2]=v[a+8>>2];v[e+76>>2]=c;c=v[a+20>>2];v[e+80>>2]=v[a+16>>2];v[e+84>>2]=c;c=v[a+28>>2];v[e+88>>2]=v[a+24>>2];v[e+92>>2]=c;c=v[a+36>>2];v[e+96>>2]=v[a+32>>2];v[e+100>>2]=c;c=v[a+44>>2];v[e+104>>2]=v[a+40>>2];v[e+108>>2]=c;c=v[a+52>>2];v[e+112>>2]=v[a+48>>2];v[e+116>>2]=c;c=v[a+60>>2];v[e+120>>2]=v[a+56>>2];v[e+124>>2]=c;c=v[a+4>>2];v[e+64>>2]=v[a>>2];v[e+68>>2]=c;g=z[e+68>>2];z[e+68>>2]=z[e+80>>2];l=z[e+88>>2];m=z[e+72>>2];z[e+72>>2]=z[e+96>>2];z[e+80>>2]=g;z[e+96>>2]=m;z[e+88>>2]=z[e+100>>2];z[e+100>>2]=l;v[e+40>>2]=141148;v[e+44>>2]=d;L=e+220|0;Y=e+216|0;d=xa-320|0;xa=d;a=v[e+44>>2];g=z[a+20>>2];B=v[e+52>>2];l=z[B+20>>2];q=z[e+224>>2];aa=w[B+32|0];u=z[B+16>>2];Ma=w[a+32|0];s=z[a+16>>2];v[d+44>>2]=0;R=C((g>2];a=0;k=0;while(1){c=k<<2;N=w[k+L|0];v[c+(d- -64|0)>>2]=N;M=w[k+Y|0];v[c+(d+48|0)>>2]=M;c=B+(N<<4)|0;g=z[c+56>>2];l=z[c+48>>2];m=z[c+52>>2];c=(1-M<<4)+Na|0;n=z[c>>2];p=z[c+4>>2];r=z[c+8>>2];o=z[c+12>>2];y=z[x+48>>2];D=z[x+32>>2];I=z[x>>2];G=z[x+16>>2];H=z[x+52>>2];$=z[x+36>>2];J=z[x+4>>2];A=z[x+20>>2];E=z[x+56>>2];S=z[x+40>>2];X=z[x+8>>2];O=z[x+24>>2];c=a;U=a<<4;N=U+(d+144|0)|0;v[N+12>>2]=0;M=U+(d+80|0)|0;z[M+12>>2]=o;z[M+8>>2]=r;z[M+4>>2]=p;z[M>>2]=n;M=U+(d+208|0)|0;v[M+12>>2]=0;o=C(E+C(C(S*g)+C(C(X*l)+C(m*O))));z[N+8>>2]=o;H=C(H+C(C($*g)+C(C(J*l)+C(m*A))));z[N+4>>2]=H;g=C(y+C(C(D*g)+C(C(I*l)+C(m*G))));z[N>>2]=g;l=C(o-r);z[M+8>>2]=l;m=C(H-p);z[M+4>>2]=m;g=C(g-n);z[M>>2]=g;a=a+1|0;v[d+44>>2]=a;k=k+1|0;if((sa|0)!=(k|0)){continue}break}k:{l:{switch(c-1|0){case 0:n=z[d+216>>2];g=C(z[d+232>>2]-n);p=z[d+208>>2];l=C(z[d+224>>2]-p);r=z[d+212>>2];m=C(z[d+228>>2]-r);o=C(C(g*g)+C(C(l*l)+C(m*m)));if(!(o<=C(1.1920928955078125e-7))){break k}v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break i;case 1:jY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i;case 2:break l;default:break j}}Q_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i}v[d+28>>2]=0;I=g;g=C(F(C(C(C(C(C(-p)*l)-C(m*r))-C(n*g))/o),C(1)));g=g>C(0)?g:C(0);z[d+24>>2]=n+C(I*g);z[d+20>>2]=r+C(m*g);z[d+16>>2]=p+C(l*g);break i}g=z[x+8>>2];m=z[x>>2];l=z[x+4>>2];v[d+284>>2]=0;a=C(C(g*g)+C(C(m*m)+C(l*l)))>C(0);g=a?g:C(0);z[d+280>>2]=g;l=a?l:C(0);z[d+276>>2]=l;m=a?m:C(1);z[d+272>>2]=m;p=C(C(1)/C(K(C(C(g*g)+C(C(m*m)+C(l*l))))));o=C(g*p);y=C(m*p);n=C(34028234663852886e22);p=C(l*p);break h}v[d+28>>2]=0;z[d+24>>2]=l;z[d+20>>2]=m;z[d+16>>2]=g}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;g=z[d+280>>2];m=z[d+272>>2];l=z[d+276>>2];n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));if(!(R>2]=v[d+312>>2];a=v[d+308>>2];v[d+288>>2]=v[d+304>>2];v[d+292>>2]=a;a=v[e+56>>2];J=z[d+284>>2];k=v[d+44>>2];B=k<<2;c=v[e+52>>2];A=z[c+72>>2];n=C(-m);s=C(C(C(z[e+72>>2]*n)-C(z[e+88>>2]*l))-C(z[e+104>>2]*g));E=z[c- -64>>2];q=g;H=C(C(C(z[e+64>>2]*n)-C(z[e+80>>2]*l))-C(z[e+96>>2]*g));u=l;n=C(C(C(z[e+68>>2]*n)-C(z[e+84>>2]*l))-C(z[e+100>>2]*g));S=z[c+68>>2];X=C(C(A*s)+C(C(E*H)+C(n*S)));O=z[c+88>>2];ea=z[c+80>>2];W=z[c+84>>2];_=C(C(O*s)+C(C(ea*H)+C(n*W)));x=X>_;ja=X;X=z[c+56>>2];Z=z[c+48>>2];ka=n;n=z[c+52>>2];s=C(C(X*s)+C(C(Z*H)+C(ka*n)));c=!(ja_);v[B+(d- -64|0)>>2]=c?x?1:2:0;H=z[a+56>>2];_=z[a+40>>2];fa=z[a+24>>2];ra=z[a+52>>2];na=z[a+36>>2];ca=z[a+20>>2];ga=z[a+8>>2];da=z[a+48>>2];ha=z[a+32>>2];ia=z[a>>2];la=z[a+16>>2];ma=z[a+4>>2];sa=B+(d+48|0)|0;a=v[e+44>>2];N=a+56|0;s=m;M=a+52|0;U=a+72|0;aa=a+68|0;B=C(C(z[N>>2]*g)+C(C(z[a+48>>2]*m)+C(l*z[M>>2])))>C(C(z[U>>2]*g)+C(C(z[a+64>>2]*m)+C(l*z[aa>>2])));v[sa>>2]=B;g=c?x?A:O:X;l=c?x?E:ea:Z;m=c?x?S:W:n;A=C(H+C(C(_*g)+C(C(ga*l)+C(fa*m))));E=z[(B?N:U)>>2];n=C(A-E);S=C(da+C(C(ha*g)+C(C(ia*l)+C(m*la))));X=z[(B?a+48|0:a- -64|0)>>2];H=C(S-X);l=C(ra+C(C(na*g)+C(C(ma*l)+C(m*ca))));m=z[(B?M:aa)>>2];g=C(l-m);O=C(C(o*n)+C(C(y*H)+C(p*g)));if(O>$){a=0;if(!L){break e}t[e+215|0]=k;if(!k){break e}c=0;if((k|0)!=1){M=k&-2;x=0;while(1){B=c<<2;U=d- -64|0;t[c+L|0]=v[B+U>>2];aa=d+48|0;t[c+Y|0]=v[aa+B>>2];B=c|1;N=B<<2;t[B+L|0]=v[N+U>>2];t[B+Y|0]=v[N+aa>>2];c=c+2|0;x=x+2|0;if((M|0)!=(x|0)){continue}break}}if(!(k&1)){break e}k=c<<2;t[c+L|0]=v[k+(d- -64|0)>>2];t[c+Y|0]=v[k+(d+48|0)>>2];break e}if(O>C(r*C(.9997749924659729))){m:{if(!L){break m}t[e+215|0]=k;if(!k){break m}c=0;if((k|0)!=1){N=k&-2;x=0;while(1){a=c<<2;M=d- -64|0;t[c+L|0]=v[a+M>>2];U=d+48|0;t[c+Y|0]=v[U+a>>2];a=c|1;B=a<<2;t[a+L|0]=v[B+M>>2];t[a+Y|0]=v[B+U>>2];c=c+2|0;x=x+2|0;if((N|0)!=(x|0)){continue}break}}if(!(k&1)){break m}a=c<<2;t[c+L|0]=v[a+(d- -64|0)>>2];t[c+Y|0]=v[a+(d+48|0)>>2]}z[e+160>>2]=y;v[e+172>>2]=0;z[e+168>>2]=o;z[e+164>>2]=p;JV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,k);g=z[d+16>>2];l=z[d+20>>2];m=z[d+24>>2];v[e+140>>2]=0;z[e+136>>2]=m-C(D*o);z[e+132>>2]=l-C(D*p);z[e+128>>2]=g-C(D*y);g=z[d>>2];l=z[d+4>>2];m=z[d+8>>2];v[e+156>>2]=0;z[e+152>>2]=m+C(I*o);z[e+148>>2]=l+C(I*p);z[e+144>>2]=g+C(I*y);z[e+192>>2]=r-G;a=2;break e}c=k<<4;a=c+(d+144|0)|0;v[a+12>>2]=0;z[a+8>>2]=A;z[a+4>>2]=l;z[a>>2]=S;a=c+(d+80|0)|0;v[a+12>>2]=0;z[a+8>>2]=E;z[a+4>>2]=m;z[a>>2]=X;a=c+(d+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=n;z[a+4>>2]=g;z[a>>2]=H;v[d+44>>2]=k+1;n:{o:{switch(k-1|0){case 0:n=z[d+216>>2];g=C(z[d+232>>2]-n);p=z[d+208>>2];l=C(z[d+224>>2]-p);o=z[d+212>>2];m=C(z[d+228>>2]-o);y=C(C(g*g)+C(C(l*l)+C(m*m)));if(y<=C(1.1920928955078125e-7)){v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break n}v[d+28>>2]=0;E=g;g=C(F(C(C(C(C(C(-p)*l)-C(m*o))-C(n*g))/y),C(1)));g=g>C(0)?g:C(0);z[d+24>>2]=n+C(E*g);z[d+20>>2]=o+C(m*g);z[d+16>>2]=p+C(l*g);break n;case 1:jY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;case 2:Q_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;default:break o}}v[d+28>>2]=0;z[d+24>>2]=n;z[d+20>>2]=g;z[d+16>>2]=H}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;g=z[d+280>>2];m=z[d+272>>2];l=z[d+276>>2];n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));y=C(C(1)/n);o=C(g*y);p=C(l*y);y=C(m*y);if(nR){continue}break}k=v[d+44>>2];if(!(n>2];aa=d+48|0;t[c+Y|0]=v[aa+B>>2];B=c|1;N=B<<2;t[B+L|0]=v[N+U>>2];t[B+Y|0]=v[N+aa>>2];c=c+2|0;a=a+2|0;if((M|0)!=(a|0)){continue}break}}if(!(x&1)){break p}a=c<<2;t[c+L|0]=v[a+(d- -64|0)>>2];t[c+Y|0]=v[a+(d+48|0)>>2]}v[d+312>>2]=v[d+296>>2];a=v[d+292>>2];v[d+304>>2]=v[d+288>>2];v[d+308>>2]=a;z[d+284>>2]=J;z[d+272>>2]=s;z[d+276>>2]=u;z[d+280>>2]=q;JV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,k);v[e+188>>2]=0;z[e+184>>2]=o;z[e+180>>2]=p;z[e+176>>2]=y;v[e+172>>2]=0;g=C(C(1)/r);l=C(q*g);z[e+168>>2]=l;m=C(u*g);z[e+164>>2]=m;g=C(s*g);z[e+160>>2]=g;n=z[d+16>>2];p=z[d+20>>2];q=z[d+24>>2];v[e+140>>2]=0;z[e+136>>2]=q-C(D*l);z[e+132>>2]=p-C(D*m);z[e+128>>2]=n-C(D*g);n=z[d>>2];p=z[d+4>>2];q=z[d+8>>2];z[e+192>>2]=r-G;v[e+156>>2]=0;z[e+152>>2]=q+C(I*l);z[e+148>>2]=p+C(I*m);z[e+144>>2]=n+C(I*g);a=2;if(r<=G){break e}a=4;break e}if(L){break f}a=5;break e}k=v[d+44>>2]}t[e+215|0]=k;a=5;if(!k){break e}c=0;if((k|0)!=1){M=k&-2;x=0;while(1){B=c<<2;U=d- -64|0;t[c+L|0]=v[B+U>>2];aa=d+48|0;t[c+Y|0]=v[aa+B>>2];B=c|1;N=B<<2;t[B+L|0]=v[N+U>>2];t[B+Y|0]=v[N+aa>>2];c=c+2|0;x=x+2|0;if((M|0)!=(x|0)){continue}break}}if(!(k&1)){break e}k=c<<2;t[c+L|0]=v[k+(d- -64|0)>>2];t[c+Y|0]=v[k+(d+48|0)>>2]}xa=d+320|0;q:{r:{if(a-5|0){break r}v[e+16>>2]=1065353216;a=v[e+28>>2];v[e+8>>2]=v[e+24>>2];v[e+12>>2]=a;a=v[e+20>>2];v[e>>2]=v[e+16>>2];v[e+4>>2]=a;if(K_(qa,j,e+220|0,e+216|0,w[e+215|0],0,e,e+128|0)-5>>>0<=1){break r}v[e+280>>2]=0;v[e+284>>2]=0;v[e+272>>2]=0;v[e+276>>2]=0;g=z[b+264>>2];l=z[b+256>>2];m=z[b+260>>2];v[e+268>>2]=0;n=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(m*m))))));z[e+264>>2]=n*C(-g);z[e+260>>2]=n*C(-m);z[e+256>>2]=n*C(-l);g=C(0);break q}a=v[e+140>>2];v[e+280>>2]=v[e+136>>2];v[e+284>>2]=a;a=v[e+132>>2];v[e+272>>2]=v[e+128>>2];v[e+276>>2]=a;a=v[e+164>>2];v[e+256>>2]=v[e+160>>2];v[e+260>>2]=a;a=v[e+172>>2];v[e+264>>2]=v[e+168>>2];v[e+268>>2]=a;g=z[e+192>>2]}z[b+240>>2]=g>2];v[b+224>>2]=v[e+272>>2];v[b+228>>2]=a;a=v[e+284>>2];v[b+232>>2]=v[e+280>>2];v[b+236>>2]=a;a=v[e+260>>2];v[b+208>>2]=v[e+256>>2];v[b+212>>2]=a;a=v[e+268>>2];v[b+216>>2]=v[e+264>>2];v[b+220>>2]=a}xa=e+288|0;if(f){pa=z[b+240>>2];g=z[b+232>>2];l=z[b+224>>2];m=z[b+228>>2];n=z[b+216>>2];p=z[b+208>>2];r=z[b+212>>2];q=C(C(Q*n)+C(C(V*p)+C(P*r)));o=C(-P);y=C(C(C(T*C(C(V*r)+C(p*o)))+C(ba*n))+C(Q*q));z[h+8>>2]=y+y;y=C(C(P*q)+C(C(ba*r)+C(T*C(C(Q*p)+C(n*oa)))));z[h+4>>2]=y+y;s=r;r=C(-Q);n=C(C(V*q)+C(C(ba*p)+C(T*C(C(P*n)+C(s*r)))));z[h>>2]=n+n;n=pa>C(0)?pa:C(0);p=C(C(Q*g)+C(C(V*l)+C(P*m)));q=C(C(C(T*C(C(V*m)+C(l*o)))+C(ba*g))+C(Q*p));z[i+8>>2]=C(wa*n)+C(ua+C(q+q));q=C(C(P*p)+C(C(ba*m)+C(T*C(C(Q*l)+C(g*oa)))));z[i+4>>2]=C(za*n)+C(ta+C(q+q));g=C(C(V*p)+C(C(ba*l)+C(T*C(C(P*g)+C(m*r)))));z[i>>2]=C(ya*n)+C(va+C(g+g))}xa=b+352|0;return C(pa)}function TF(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,z=0,A=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;p=xa+-64|0;xa=p;f=v[a+384>>2];i=v[a+20>>2]+31>>>5|0;e=v[a+388>>2];if(i>>>0>(e&2147483647)>>>0){if(!(!f|(e|0)<0)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,f)}v[a+388>>2]=i;e=v[37696];f=Ba[v[v[e+12>>2]+8>>2]](e+12|0,i<<2,24422,17999,461)|0;v[a+384>>2]=f;e=v[a+388>>2]}J9(f,0,e<<2);if(y[a+368>>2]<=1023){e=v[37696];f=Ba[v[v[e>>2]+20>>2]](e)|0?29399:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,8192,f,18841,219)|0;f=v[a+364>>2];a:{if(!f){break a}I9(e,f,v[a+360>>2]<<3);f=v[a+364>>2];if(!f){break a}i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,f)}v[a+368>>2]=1024;v[a+364>>2]=e}if(!(v[a+404>>2]&2147482624)){Aw(a+396|0,1024)}if(!(v[a+416>>2]&2147482624)){Aw(a+408|0,1024)}f=v[a+20>>2];if(f>>>0>(v[a+380>>2]&2147483647)>>>0){i=0;b:{if(!f){break b}g=f<<4;if(!g){break b}e=v[37696];i=e+12|0;i=(R=i,S=g,T=Ba[v[v[e>>2]+20>>2]](e)|0?41107:63804,U=16608,V=553,Q=v[v[i>>2]+8>>2],Ba[Q](R|0,S|0,T|0,U|0,V|0)|0)}l=v[a+372>>2];e=v[a+376>>2];if((e|0)>0){g=(e<<4)+i|0;e=i;while(1){h=v[l+4>>2];v[e>>2]=v[l>>2];v[e+4>>2]=h;h=v[l+12>>2];v[e+8>>2]=v[l+8>>2];v[e+12>>2]=h;l=l+16|0;e=e+16|0;if(g>>>0>e>>>0){continue}break}l=v[a+372>>2]}if(!(!l|v[a+380>>2]<0)){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,l)}v[a+380>>2]=f;v[a+372>>2]=i}e=v[a+340>>2];c:{if(!e){e=0;break c}j=v[a+88>>2];o=v[a+100>>2];i=v[a+204>>2];n=v[a+16>>2];m=v[a+448>>2];g=v[a+40>>2];A=v[a+336>>2];f=0;while(1){h=v[A+(f<<2)>>2];l=v[a+60>>2];k=(h>>>0)/(l>>>0)|0;q=v[g+(k<<2)>>2]+(h-B(k,l)<<4)|0;C=x[q+4>>1];if((C&10)==2){d:{if((C&33)!=1){break d}r=v[m>>2];k=h<<1;e=k|1;l=v[m+20>>2];D=(e>>>0)/(l>>>0)|0;e=v[v[r+(D<<2)>>2]+(e-B(l,D)<<2)>>2]>>>7|0;D=(k>>>0)/(l>>>0)|0;l=v[v[r+(D<<2)>>2]+(k-B(l,D)<<2)>>2]>>>7|0;k=(l|0)==33554431;e:{if(!(k|(e|0)==33554431)){k=i+(e<<2)|0;e=i+(l<<2)|0;l=v[(v[e>>2]==-1?k:e)>>2];break e}if(!k){e=n+B(l,24)|0;if(w[e+4|0]&4){break d}l=v[i+(l<<2)>>2];u[e+6>>1]=x[e+6>>1]-1;e=o+(l<<2)|0;v[e>>2]=v[e>>2]-1;break e}if((e|0)==33554431){break d}k=n+B(e,24)|0;if(w[k+4|0]&4){break d}l=v[i+(e<<2)>>2];u[k+6>>1]=x[k+6>>1]-1;e=o+(l<<2)|0;v[e>>2]=v[e>>2]-1}if((l|0)==-1){break d}k=v[a+60>>2];e=(h>>>0)/(k>>>0)|0;e=v[g+(e<<2)>>2]+(h-B(e,k)<<4)|0;r=v[e+12>>2];h=v[e+8>>2];f:{if((h|0)!=-1){D=(h>>>0)/(k>>>0)|0;h=(v[g+(D<<2)>>2]+(h-B(k,D)<<4)|0)+12|0;break f}h=((j+B(l,44)|0)+(v[e>>2]<<2)|0)+28|0}v[h>>2]=r;k=v[e+8>>2];h=v[e+12>>2];g:{if((h|0)!=-1){r=v[a+60>>2];D=(h>>>0)/(r>>>0)|0;v[(v[g+(D<<2)>>2]+(h-B(r,D)<<4)|0)+8>>2]=k;h=v[e>>2];break g}h=v[e>>2];v[((j+B(l,44)|0)+(h<<2)|0)+20>>2]=k}h=(j+B(l,44)|0)+(h<<2)|0;v[h+36>>2]=v[h+36>>2]-1;v[e+12>>2]=-1;v[e+8>>2]=-1}u[q+4>>1]=C&65534;e=v[a+340>>2]}f=f+1|0;if(f>>>0>>0){continue}break}}if(c){h=v[a+312>>2];e=h&2147483647;h:{if(!e){break h}f=v[a+308>>2];i=0;while(1){l=v[f+(i<<2)>>2];if(!l){i=i+1|0;if((e|0)!=(i|0)){continue}break h}break}D=a+408|0;J=a+396|0;N=a+240|0;O=a+100|0;P=a+88|0;while(1){h=v[a+312>>2];j=Raa(l);f=j|i<<5;l=l-1&l;i:{if(l){break i}e=i+1|0;g=h&2147483647;e=e>>>0>g>>>0?e:g;k=v[a+308>>2];while(1){i=i+1|0;if(g>>>0<=i>>>0){l=0;i=e;break i}l=v[k+(i<<2)>>2];if(!l){continue}break}}if((f|0)==-1){break h}v[a+376>>2]=0;v[a+360>>2]=0;e=f&33554431;K=B(e,24);C=K+v[a+16>>2]|0;j:{if(w[C+4|0]&12|v[v[a+384>>2]+(e>>>3&4194300)>>2]>>>j&1){break j}A=e<<2;o=v[A+v[a+204>>2]>>2];H=B(o,44);E=v[H+v[a+88>>2]>>2];if((e|0)==(E>>>7|0)){break j}n=0;j=xa-32|0;xa=j;L=f<<7;h=L;z=h>>>7|0;G=z<<2;k:{if(y[G+v[a+192>>2]>>2]<=4294967167){f=1;e=h;k=xa-16|0;xa=k;F=E>>>7|0;s=a+372|0;g=v[a+376>>2];m=v[a+384>>2];while(1){l:{q=e>>>7|0;I=1<>>12<<2;if(I&v[M+m>>2]){r=v[v[a+204>>2]+(q<<2)>>2]!=-1;break l}r=(q|0)==(F|0);if(r){break l}m=v[a+376>>2];v[k+4>>2]=m;v[k>>2]=e;v[k+8>>2]=m-1;v[k+12>>2]=n;m:{if(m>>>0>=(v[a+380>>2]&2147483647)>>>0){RF(s,k);break m}e=v[a+372>>2]+(m<<4)|0;m=v[k+4>>2];v[e>>2]=v[k>>2];v[e+4>>2]=m;m=v[k+12>>2];v[e+8>>2]=v[k+8>>2];v[e+12>>2]=m;v[a+376>>2]=v[a+376>>2]+1}n=n+1|0;e=q<<2;v[e+v[a+204>>2]>>2]=-1;m=v[a+384>>2];q=M+m|0;v[q>>2]=v[q>>2]|I;e=v[e+v[a+192>>2]>>2];if(e>>>0<4294967168){continue}}break}n=v[a+376>>2];if(g>>>0>>0){q=v[a+204>>2];F=v[a+372>>2];e=g;while(1){v[q+(v[F+(e<<4)>>2]>>>5&134217724)>>2]=o;e=e+1|0;n=v[a+376>>2];if(e>>>0>>0){continue}break}}if(!r){if(g>>>0>>0){n=v[s>>2];e=g;while(1){q=v[n+(e<<4)>>2];s=(q>>>10&4194300)+m|0;F=v[s>>2];Q=s,V=Vaa(-2,q>>>7|0)&F,v[Q>>2]=V;e=e+1|0;if(e>>>0>2]){continue}break}}v[a+376>>2]=g}xa=k+16|0;if(r){break k}}v[G+v[a+204>>2]>>2]=-1;e=v[a+376>>2];v[j+24>>2]=33554431;v[j+28>>2]=0;v[j+20>>2]=e;v[j+16>>2]=h;q=a+372|0;n:{if(e>>>0>=(v[a+380>>2]&2147483647)>>>0){e=RF(q,j+16|0);break n}f=v[j+20>>2];e=v[a+372>>2]+(e<<4)|0;v[e>>2]=v[j+16>>2];v[e+4>>2]=f;f=v[j+28>>2];v[e+8>>2]=v[j+24>>2];v[e+12>>2]=f;e=v[a+376>>2];v[a+376>>2]=e+1;e=v[a+372>>2]+(e<<4)|0}f=v[a+384>>2]+(h>>>10&4194300)|0;v[f>>2]=v[f>>2]|1<>2]=v[v[a+180>>2]+(z<<2)>>2];v[j+8>>2]=e;r=a+360|0;SF(r,j+8|0);z=E>>>7|0;h=v[a+360>>2];while(1){m=h-1|0;v[a+360>>2]=m;h=v[a+364>>2];e=h+(m<<3)|0;s=v[e>>2];g=v[e+4>>2];n=v[h>>2];E=0;o:{if(m>>>0<2){e=0;break o}k=1;f=0;while(1){e=E+2|0;h=v[a+364>>2];e=(e>>>0>>0&y[(h+(e<<3)|0)+4>>2]>2])+k|0;k=(e<<3)+h|0;if(g>>>0>2]){e=f;break o}f=(f<<3)+h|0;h=v[k+4>>2];v[f>>2]=v[k>>2];v[f+4>>2]=h;f=e;E=e<<1;k=E|1;if(m>>>0>k>>>0){continue}break}h=v[a+364>>2]}e=(e<<3)+h|0;v[e>>2]=s;v[e+4>>2]=g;h=v[v[a+16>>2]+B(v[n>>2]>>>7|0,24)>>2];if((h|0)!=-1){while(1){g=v[a+84>>2];m=(h>>>0)/(g>>>0)|0;E=v[v[a+64>>2]+(m<<2)>>2];f=h^1;k=v[a+448>>2];s=v[k+20>>2];e=(f>>>0)/(s>>>0)|0;k=v[v[v[k>>2]+(e<<2)>>2]+(f-B(e,s)<<2)>>2];e=k>>>7|0;p:{if((e|0)==33554431|w[(v[a+16>>2]+B(e,24)|0)+4|0]&4){break p}if((e|0)==(z|0)){h=v[n+4>>2];e=0;while(1){f=1;g=v[a+372>>2]+(h<<4)|0;e=e+1|0;v[v[a+180>>2]+(v[g>>2]>>>5&134217724)>>2]=e;v[v[a+204>>2]+(v[g>>2]>>>5&134217724)>>2]=o;v[v[a+192>>2]+(v[g>>2]>>>5&134217724)>>2]=k;k=v[g>>2];h=v[g+8>>2];if((h|0)!=33554431){continue}break}break k}s=1<>>12<<2;if(s&v[G+v[a+384>>2]>>2]){if(v[v[a+204>>2]+(e<<2)>>2]==-1){break p}e=v[v[a+180>>2]+(e<<2)>>2];h=v[n+4>>2];while(1){f=1;g=v[a+372>>2]+(h<<4)|0;e=e+1|0;v[v[a+180>>2]+(v[g>>2]>>>5&134217724)>>2]=e;v[v[a+204>>2]+(v[g>>2]>>>5&134217724)>>2]=o;v[v[a+192>>2]+(v[g>>2]>>>5&134217724)>>2]=k;k=v[g>>2];h=v[g+8>>2];if((h|0)!=33554431){continue}break}break k}F=v[n+12>>2];f=v[a+376>>2];v[j+24>>2]=v[n+4>>2];v[j+20>>2]=f;v[j+16>>2]=k;v[j+28>>2]=F+1;q:{if(f>>>0>=(v[a+380>>2]&2147483647)>>>0){f=RF(q,j+16|0);break q}k=v[j+20>>2];f=v[a+372>>2]+(f<<4)|0;v[f>>2]=v[j+16>>2];v[f+4>>2]=k;k=v[j+28>>2];v[f+8>>2]=v[j+24>>2];v[f+12>>2]=k;f=v[a+376>>2];v[a+376>>2]=f+1;f=v[a+372>>2]+(f<<4)|0}e=e<<2;v[j+20>>2]=v[e+v[a+180>>2]>>2];v[j+16>>2]=f;SF(r,j+16|0);f=G+v[a+384>>2]|0;v[f>>2]=s|v[f>>2];v[e+v[a+204>>2]>>2]=-1}h=v[E+(h-B(g,m)<<3)>>2];if((h|0)!=-1){continue}break}}h=v[r>>2];if(h){continue}break}f=0}xa=j+32|0;if(f){h=v[a+376>>2];if(!h){break j}n=v[a+192>>2];j=v[a+180>>2];k=v[a+204>>2];g=v[a+372>>2];f=0;while(1){e=g+(f<<4)|0;m=v[e>>2]>>>7<<2;if(v[m+k>>2]==-1){v[j+m>>2]=v[j+(v[g+(v[e+8>>2]<<4)>>2]>>>5&134217724)>>2]+1;v[n+(v[e>>2]>>>5&134217724)>>2]=v[g+(v[e+8>>2]<<4)>>2];v[k+(v[e>>2]>>>5&134217724)>>2]=o;h=v[a+376>>2]}f=f+1|0;if(h>>>0>f>>>0){continue}break}break j}e=0;v[a+412>>2]=0;v[a+400>>2]=0;n=v[a+88>>2];v[p+56>>2]=0;v[p+60>>2]=0;h=0;k=0;if(v[a+376>>2]){h=n+H|0;q=h+4|0;j=0;while(1){f=v[a+16>>2];e=f+B(v[v[a+372>>2]+(j<<4)>>2]>>>7|0,24)|0;g=v[e+8>>2]>>>7|0;v[((g|0)==33554431?q:(B(g,24)+f|0)+12|0)>>2]=v[e+12>>2];g=v[e+12>>2]>>>7|0;if((g|0)!=33554431){v[(f+B(g,24)|0)+8>>2]=v[e+8>>2]}f=(p+56|0)+(w[e+5|0]<<2)|0;v[f>>2]=v[f>>2]+1;v[e+8>>2]=-128;v[e+12>>2]=-128;r=x[e+6>>1];f=v[e>>2];if((f|0)!=-1){e=v[a+40>>2];while(1){m=v[a+84>>2];E=(f>>>0)/(m>>>0)|0;z=v[v[a+64>>2]+(E<<2)>>2];g=f>>>1|0;v[p+8>>2]=g;E=z+(f-B(m,E)<<3)|0;m=v[a+60>>2];z=(g>>>0)/(m>>>0)|0;s=v[(z<<2)+e>>2];r:{s:{if(!(f&1)){break s}G=f&-2;F=v[a+448>>2];I=v[F+20>>2];f=(G>>>0)/(I>>>0)|0;f=v[v[v[F>>2]+(f<<2)>>2]+(G-B(f,I)<<2)>>2]>>>7|0;if((f|0)==33554431){break s}if(!(w[(v[a+16>>2]+B(f,24)|0)+4|0]&4)){break r}}f=B(v[s+(g-B(m,z)<<4)>>2],12)+a|0;m=f+396|0;z=v[f+400>>2];t:{if(z>>>0>=(v[f+404>>2]&2147483647)>>>0){pn(m,p+8|0);e=v[a+40>>2];break t}v[v[m>>2]+(z<<2)>>2]=g;v[f+400>>2]=v[f+400>>2]+1}g=v[p+8>>2];f=v[a+60>>2];m=(g>>>0)/(f>>>0)|0;g=v[(m<<2)+e>>2]+(g-B(f,m)<<4)|0;z=v[g+12>>2];m=v[g+8>>2];u:{if((m|0)!=-1){s=(m>>>0)/(f>>>0)|0;f=(v[(s<<2)+e>>2]+(m-B(f,s)<<4)|0)+12|0;break u}f=(h+(v[g>>2]<<2)|0)+28|0}v[f>>2]=z;m=v[g+8>>2];f=v[g+12>>2];v:{if((f|0)!=-1){z=v[a+60>>2];s=(f>>>0)/(z>>>0)|0;v[(v[(s<<2)+e>>2]+(f-B(s,z)<<4)|0)+8>>2]=m;f=v[g>>2];break v}f=v[g>>2];v[(h+(f<<2)|0)+20>>2]=m}f=h+(f<<2)|0;v[f+36>>2]=v[f+36>>2]-1;v[g+12>>2]=-1;v[g+8>>2]=-1}f=v[E>>2];if((f|0)!=-1){continue}break}}k=k+r|0;j=j+1|0;if(j>>>0>2]){continue}break}h=v[p+56>>2];e=v[p+60>>2]}f=v[a+100>>2]+(o<<2)|0;v[f>>2]=v[f>>2]-k;f=n+H|0;v[f+8>>2]=v[f+8>>2]-h;v[f+12>>2]=v[f+12>>2]-e;e=v[a+4>>2];w:{if(e){f=e-1|0;e=v[v[a>>2]+(f<<2)>>2];v[a+4>>2]=f;f=e+1|0;break w}e=v[a+12>>2];f=e+1|0;v[a+12>>2]=f}v[p+52>>2]=e;e=v[a+92>>2];v[p+8>>2]=-128;v[p+12>>2]=-128;v[p+40>>2]=-1;v[p+32>>2]=-1;v[p+36>>2]=-1;v[p+24>>2]=-1;v[p+28>>2]=-1;v[p+16>>2]=0;v[p+20>>2]=0;v[p+44>>2]=0;v[p+48>>2]=0;e=e>>>0>>0?f:e;f=p+8|0;wF(P,e,f);e=v[a+104>>2];g=v[p+52>>2];v[p+8>>2]=0;g=g+1|0;cz(O,e>>>0>>0?g:e,f);f=v[p+52>>2];g=v[a+88>>2]+B(f,44)|0;e=v[a+216>>2];x:{if(!(v[e+(o>>>3&536870908)>>2]>>>o&1)){h=f+32>>>5|0;if(h>>>0>(v[a+220>>2]&2147483647)>>>0){e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,h<<2,24422,17999,438)|0;j=v[a+216>>2];y:{if(!j){break y}I9(e,j,v[a+220>>2]<<2);if(v[a+220>>2]<0){break y}j=v[a+216>>2];if(!j){break y}o=v[37696];Ba[v[v[o+12>>2]+12>>2]](o+12|0,j)}j=v[a+220>>2];J9((j<<2)+e|0,0,h-j<<2);v[a+220>>2]=h;v[a+216>>2]=e}e=(f>>>3&536870908)+e|0;h=v[e>>2];Q=e,V=Vaa(-2,f)&h,v[Q>>2]=V;break x}e=v[a+244>>2];v[g+16>>2]=e;z:{if(e>>>0>=(v[a+248>>2]&2147483647)>>>0){pn(N,p+52|0);break z}v[v[a+240>>2]+(e<<2)>>2]=v[p+52>>2];v[a+244>>2]=v[a+244>>2]+1}h=v[p+52>>2];e=h+32>>>5|0;A:{if(e>>>0<=(v[a+220>>2]&2147483647)>>>0){f=v[a+216>>2];break A}f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e<<2,24422,17999,438)|0;j=v[a+216>>2];B:{if(!j){break B}I9(f,j,v[a+220>>2]<<2);if(v[a+220>>2]<0){break B}j=v[a+216>>2];if(!j){break B}o=v[37696];Ba[v[v[o+12>>2]+12>>2]](o+12|0,j)}j=v[a+220>>2];J9((j<<2)+f|0,0,e-j<<2);v[a+220>>2]=e;v[a+216>>2]=f}e=(h>>>3&536870908)+f|0;v[e>>2]=v[e>>2]|1<>2]=L;n=v[a+180>>2];v[n+A>>2]=0;m=v[a+204>>2];v[m+A>>2]=v[p+52>>2];f=v[a+16>>2];v[(f+K|0)+12>>2]=-128;q=v[a+192>>2];v[A+q>>2]=-128;v[p+56>>2]=0;v[p+60>>2]=0;e=1;v[(p+56|0)+(w[C+5|0]<<2)>>2]=1;h=v[a+372>>2];if(y[a+376>>2]>1){while(1){j=h+(e<<4)|0;o=v[j>>2];A=o>>>7|0;r=f+B(A,24)|0;H=v[j-16>>2];v[r+12>>2]=H;v[(f+B(H>>>7|0,24)|0)+8>>2]=o;o=(p+56|0)+(w[r+5|0]<<2)|0;v[o>>2]=v[o>>2]+1;o=A<<2;v[o+m>>2]=v[p+52>>2];v[n+o>>2]=v[j+12>>2];v[o+q>>2]=v[h+(v[j+8>>2]<<4)>>2];e=e+1|0;if(e>>>0>2]){continue}break}}e=v[p+56>>2];v[g+8>>2]=e;j=v[p+60>>2];v[g+12>>2]=j;h=v[(h+(v[a+376>>2]<<4)|0)-16>>2];v[(f+B(h>>>7|0,24)|0)+8>>2]=-128;v[g+4>>2]=h;v[v[a+100>>2]+(v[p+52>>2]<<2)>>2]=k;v[g+12>>2]=j;v[g+8>>2]=e;h=v[a+400>>2];if(h){v[p+8>>2]=-1;C:{if(h>>>0>=(v[a+404>>2]&2147483647)>>>0){pn(J,p+8|0);e=v[J>>2];break C}e=v[a+396>>2];v[e+(h<<2)>>2]=-1;v[a+400>>2]=v[a+400>>2]+1}k=v[a+40>>2];f=v[e>>2];j=v[a+60>>2];o=(f>>>0)/(j>>>0)|0;v[(v[k+(o<<2)>>2]+(f-B(j,o)<<4)|0)+8>>2]=v[e+4>>2];f=1;if(h>>>0>1){while(1){o=(f<<2)+e|0;n=v[o>>2];m=(n>>>0)/(j>>>0)|0;n=v[k+(m<<2)>>2]+(n-B(j,m)<<4)|0;f=f+1|0;v[n+8>>2]=v[(f<<2)+e>>2];v[n+12>>2]=v[o-4>>2];if((f|0)!=(h|0)){continue}break}}v[g+20>>2]=v[e>>2];e=v[((h<<2)+e|0)-4>>2];v[g+36>>2]=h;v[g+28>>2]=e}h=v[a+412>>2];if(!h){break j}v[p+8>>2]=-1;D:{if(h>>>0>=(v[a+416>>2]&2147483647)>>>0){pn(D,p+8|0);e=v[D>>2];break D}e=v[a+408>>2];v[e+(h<<2)>>2]=-1;v[a+412>>2]=v[a+412>>2]+1}k=v[a+40>>2];f=v[e>>2];j=v[a+60>>2];o=(f>>>0)/(j>>>0)|0;v[(v[k+(o<<2)>>2]+(f-B(j,o)<<4)|0)+8>>2]=v[e+4>>2];f=1;if(h>>>0>=2){while(1){o=(f<<2)+e|0;n=v[o>>2];m=(n>>>0)/(j>>>0)|0;n=v[k+(m<<2)>>2]+(n-B(j,m)<<4)|0;f=f+1|0;v[n+8>>2]=v[(f<<2)+e>>2];v[n+12>>2]=v[o-4>>2];if((f|0)!=(h|0)){continue}break}}v[g+24>>2]=v[e>>2];e=v[((h<<2)+e|0)-4>>2];v[g+40>>2]=h;v[g+32>>2]=e}t[C+4|0]=w[C+4|0]&239;if(l){continue}break}h=v[a+312>>2]}J9(v[a+308>>2],0,h<<2);e=v[a+340>>2]}if(e){h=0;while(1){f=v[v[a+336>>2]+(h<<2)>>2];i=v[a+60>>2];g=(f>>>0)/(i>>>0)|0;i=v[v[a+40>>2]+(g<<2)>>2]+(f-B(g,i)<<4)|0;l=x[i+4>>1];if(l&2){e=v[a+444>>2];E:{if(!e){v[p+8>>2]=0;break E}k=f<<2;j=v[k+v[e>>2]>>2];v[p+8>>2]=j;if(!j){break E}e=v[a+452>>2];g=v[e+4>>2];F:{if(g>>>0>=(v[e+8>>2]&2147483647)>>>0){jG(e,p+8|0);l=x[i+4>>1];break F}v[v[e>>2]+(g<<2)>>2]=j;v[e+4>>2]=g+1}v[k+v[v[a+444>>2]>>2]>>2]=0}if(l&4){MF(a,f);e=(v[i>>2]<<2)+a|0;v[e+172>>2]=v[e+172>>2]-1}v[i+8>>2]=-1;v[i+12>>2]=-1;u[i+4>>1]=16;v[i>>2]=0;i=f+32>>>5|0;G:{if(i>>>0<=(v[a+232>>2]&2147483647)>>>0){e=v[a+228>>2];break G}e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,i<<2,24422,17999,438)|0;g=v[a+228>>2];H:{if(!g){break H}I9(e,g,v[a+232>>2]<<2);if(v[a+232>>2]<0){break H}g=v[a+228>>2];if(!g){break H}l=v[37696];Ba[v[v[l+12>>2]+12>>2]](l+12|0,g)}g=v[a+232>>2];J9((g<<2)+e|0,0,i-g<<2);v[a+232>>2]=i;v[a+228>>2]=e}e=(f>>>3&536870908)+e|0;i=v[e>>2];Q=e,V=Vaa(-2,f)&i,v[Q>>2]=V;e=v[a+340>>2]}h=h+1|0;if(h>>>0>>0){continue}break}}v[a+340>>2]=0;if(v[b+4>>2]){k=a+140|0;h=0;while(1){g=v[a+16>>2];o=v[v[b>>2]+(h<<2)>>2];e=o>>>7|0;l=B(e,24);f=g+l|0;j=e<<2;n=j+v[a+204>>2]|0;i=v[n>>2];I:{if((i|0)==-1){break I}m=v[f+8>>2];e=v[a+88>>2]+B(i,44)|0;v[(m>>>0<4294967168?(g+B(m>>>7|0,24)|0)+12|0:e+4|0)>>2]=v[f+12>>2];m=v[f+12>>2];v[(m>>>0<4294967168?(g+B(m>>>7|0,24)|0)+8|0:e)>>2]=v[f+8>>2];g=(e+8|0)+(w[f+5|0]<<2)|0;v[g>>2]=v[g>>2]-1;v[f+8>>2]=-128;v[f+12>>2]=-128;v[n>>2]=-1;if(v[e+8>>2]!=(0-v[e+12>>2]|0)){break I}v[p+8>>2]=i;J:{if((i|0)==v[a+12>>2]){v[a+12>>2]=i-1;break J}g=v[a+4>>2];if(g>>>0>=(v[a+8>>2]&2147483647)>>>0){pn(a,p+8|0);break J}v[v[a>>2]+(g<<2)>>2]=i;v[a+4>>2]=v[a+4>>2]+1}g=v[e+16>>2];if((g|0)!=-1){n=v[a+240>>2];m=v[(n+(v[a+244>>2]<<2)|0)-4>>2];v[(v[a+88>>2]+B(m,44)|0)+16>>2]=g;v[n+(v[e+16>>2]<<2)>>2]=m;v[a+244>>2]=v[a+244>>2]-1;v[e+16>>2]=-1;g=v[a+100>>2]+(i<<2)|0;v[g>>2]=v[g>>2]-x[f+6>>1]}g=v[a+216>>2]+(i>>>3&536870908)|0;n=v[g>>2];Q=g,V=Vaa(-2,i)&n,v[Q>>2]=V;v[e+4>>2]=-128;v[e>>2]=-128;v[e+16>>2]=-1}e=j;j=v[a+28>>2];g=e+j|0;e=v[g>>2];K:{L:{if(w[f+4|0]&4){if(v[(l+v[a+16>>2]|0)+16>>2]|(e|0)==33554431){break K}i=v[a+136>>2];l=k;break L}if((e|0)==33554431){break K}l=w[(l+v[a+16>>2]|0)+5|0];n=B(l,12)+a|0;i=n;l=(l<<2)+a|0;m=v[l+252>>2];M:{if(m>>>0<=e>>>0){i=v[i+112>>2];break M}i=v[i+112>>2];m=v[(i+(m<<2)|0)-4>>2];C=j+(m>>>5&134217724)|0;v[g>>2]=v[C>>2];v[C>>2]=e;v[(e<<2)+i>>2]=m;v[(v[g>>2]<<2)+i>>2]=o;v[l+252>>2]=v[l+252>>2]-1;e=v[g>>2]}l=n+116|0}o=v[((v[l>>2]<<2)+i|0)-4>>2];v[j+(o>>>5&134217724)>>2]=e;v[(v[g>>2]<<2)+i>>2]=o;v[l>>2]=v[l>>2]-1;v[g>>2]=33554431}v[f>>2]=-1;t[f+4|0]=8;v[f+16>>2]=0;v[f+20>>2]=0;u[f+6>>1]=0;h=h+1|0;if(h>>>0>2]){continue}break}}N:{if(!c){break N}O:{if(!v[a+244>>2]){e=0;break O}b=v[a+216>>2];c=v[a+240>>2];f=0;while(1){e=v[c+(f<<2)>>2];i=b+(e>>>3&536870908)|0;g=v[i>>2];Q=i,V=Vaa(-2,e)&g,v[Q>>2]=V;e=v[a+244>>2];f=f+1|0;if(e>>>0>f>>>0){continue}break}}b=v[a+140>>2];if(b){i=v[a+448>>2];h=v[a+64>>2];g=v[a+28>>2];l=v[a+16>>2];c=v[a+136>>2];while(1){b=b-1|0;f=v[c+(b<<2)>>2]>>>7|0;e=l+B(f,24)|0;j=w[e+4|0];P:{if(!(j&1)){f=v[e>>2];if((f|0)==-1){break P}j=v[a+216>>2];k=v[a+204>>2];o=v[i>>2];while(1){e=v[a+84>>2];n=(f>>>0)/(e>>>0)|0;n=v[h+(n<<2)>>2]+(f-B(e,n)<<3)|0;e=f^1;f=v[i+20>>2];m=(e>>>0)/(f>>>0)|0;e=v[v[o+(m<<2)>>2]+(e-B(f,m)<<2)>>2]>>>7|0;Q:{if((e|0)==33554431){break Q}e=v[k+(e<<2)>>2];if((e|0)==-1){break Q}f=j+(e>>>3&536870908)|0;v[f>>2]=v[f>>2]|1<>2];if((f|0)!=-1){continue}break}break P}if(!d){break P}t[e+4|0]=j&253;if(v[e+16>>2]){break P}e=g+(f<<2)|0;f=v[e>>2];if((f|0)==33554431){break P}j=v[(c+(v[a+140>>2]<<2)|0)-4>>2];v[g+(j>>>5&134217724)>>2]=f;v[c+(v[e>>2]<<2)>>2]=j;v[a+140>>2]=v[a+140>>2]-1;v[e>>2]=33554431}if(b){continue}break}e=v[a+244>>2]}if(!e){break N}while(1){d=v[a+88>>2];e=e-1|0;b=v[v[a+240>>2]+(e<<2)>>2];f=v[a+216>>2]+(b>>>3&536870908)|0;c=v[f>>2];i=f;f=1<>2]=f|c;R:{if(c&f){break R}f=v[d+B(b,44)>>2]>>>7|0;if((f|0)!=33554431){c=v[a+16>>2];while(1){d=c+B(f,24)|0;if(!(t[d+4|0]&1)){break R}f=v[d+8>>2]>>>7|0;if((f|0)!=33554431){continue}break}}f=xa-16|0;xa=f;d=v[a+88>>2];n=B(b,44);c=v[d+n>>2];v[f+8>>2]=c;i=c>>>7|0;if((i|0)!=33554431){while(1){m=v[a+16>>2]+B(i,24)|0;d=B(w[m+5|0],12)+a|0;i=d+260|0;g=v[d+264>>2];S:{if(g>>>0>=(v[d+268>>2]&2147483647)>>>0){ZF(i,f+8|0);break S}v[v[i>>2]+(g<<2)>>2]=c;v[d+264>>2]=v[d+264>>2]+1}g=xa-16|0;xa=g;d=v[a+16>>2];C=v[f+8>>2];c=C>>>7|0;j=d+B(c,24)|0;k=w[j+4|0];T:{if(!(k&2)){break T}U:{V:{if(k&4){if(v[(d+B(c,24)|0)+16>>2]){break U}h=v[a+28>>2];c=h+(c<<2)|0;i=v[c>>2];if((i|0)==33554431){break U}d=v[a+136>>2];l=a+140|0;break V}l=w[(d+B(c,24)|0)+5|0];d=B(l,12)+a|0;h=v[a+28>>2];c=h+(c<<2)|0;i=v[c>>2];o=(l<<2)+a|0;A=v[o+252>>2];W:{if(i>>>0>=A>>>0){d=v[d+112>>2];break W}d=v[d+112>>2];A=v[(d+(A<<2)|0)-4>>2];q=(A>>>5&134217724)+h|0;v[c>>2]=v[q>>2];v[q>>2]=i;v[(i<<2)+d>>2]=A;v[(v[c>>2]<<2)+d>>2]=C;v[o+252>>2]=v[o+252>>2]-1;i=v[c>>2]}l=(B(l,12)+a|0)+116|0}o=v[((v[l>>2]<<2)+d|0)-4>>2];v[h+(o>>>5&134217724)>>2]=i;v[(v[c>>2]<<2)+d>>2]=o;v[l>>2]=v[l>>2]-1;v[c>>2]=33554431}t[j+4|0]=k&221;c=v[j>>2];if((c|0)==-1){break T}while(1){d=v[a+84>>2];i=(c>>>0)/(d>>>0)|0;i=v[v[a+64>>2]+(i<<2)>>2]+(c-B(d,i)<<3)|0;h=c^1;l=v[a+448>>2];j=v[l+20>>2];d=(h>>>0)/(j>>>0)|0;d=v[v[v[l>>2]+(d<<2)>>2]+(h-B(d,j)<<2)>>2]>>>7|0;X:{if(w[(v[a+16>>2]+B(d,24)|0)+4|0]&2?(d|0)!=33554431:0){break X}c=c>>>1|0;v[g+12>>2]=c;d=v[a+60>>2];h=(c>>>0)/(d>>>0)|0;d=v[v[a+40>>2]+(h<<2)>>2]+(c-B(d,h)<<4)|0;h=x[d+4>>1];if(!(h&4)){break X}u[d+4>>1]=h&65531;h=(v[d>>2]<<2)+a|0;v[h+172>>2]=v[h+172>>2]-1;MF(a,c);c=B(v[d>>2],12)+a|0;d=c+420|0;h=v[c+424>>2];if(h>>>0>=(v[c+428>>2]&2147483647)>>>0){pn(d,g+12|0);break X}v[v[d>>2]+(h<<2)>>2]=v[g+12>>2];v[c+424>>2]=v[c+424>>2]+1}c=v[i>>2];if((c|0)!=-1){continue}break}}xa=g+16|0;c=v[m+8>>2];v[f+8>>2]=c;i=c>>>7|0;if((i|0)!=33554431){continue}break}d=v[a+88>>2]}i=v[a+240>>2];g=v[(i+(v[a+244>>2]<<2)|0)-4>>2];c=d+n|0;v[(B(g,44)+d|0)+16>>2]=v[c+16>>2];v[i+(v[c+16>>2]<<2)>>2]=g;v[a+244>>2]=v[a+244>>2]-1;v[c+16>>2]=-1;c=v[a+216>>2]+(b>>>3&536870908)|0;d=v[c>>2];Q=c,V=Vaa(-2,b)&d,v[Q>>2]=V;xa=f+16|0}if(e){continue}break}}b=v[a+60>>2];c=v[a+40>>2];d=v[a+288>>2];if(d){f=v[a+284>>2];e=0;while(1){i=v[f+(e<<2)>>2];g=(i>>>0)/(b>>>0)|0;i=v[c+(g<<2)>>2]+(i-B(b,g)<<4)|0;u[i+4>>1]=x[i+4>>1]&65527;e=e+1|0;if((d|0)!=(e|0)){continue}break}}e=0;v[a+288>>2]=0;d=v[a+300>>2];if(d){f=v[a+296>>2];while(1){i=v[f+(e<<2)>>2];g=(i>>>0)/(b>>>0)|0;i=v[c+(g<<2)>>2]+(i-B(b,g)<<4)|0;u[i+4>>1]=x[i+4>>1]&65527;e=e+1|0;if((d|0)!=(e|0)){continue}break}}v[a+300>>2]=0;xa=p- -64|0}function RY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=0,B=0,D=C(0),E=C(0),G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=0,U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=0,ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=0,ta=C(0),ua=C(0),va=C(0),wa=0,ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=0,Ja=0;k=xa-448|0;xa=k;b=v[b>>2];a=v[a>>2];v[k+104>>2]=0;v[k+108>>2]=0;v[k+96>>2]=0;v[k+100>>2]=0;v[k+124>>2]=4;j=z[a+4>>2];l=z[a+8>>2];v[k+172>>2]=0;v[k+156>>2]=0;m=C(l*C(0));z[k+152>>2]=m;z[k+148>>2]=m;m=C(-m);z[k+168>>2]=m;z[k+164>>2]=m;z[k+176>>2]=j;z[k+144>>2]=l;t[k+128|0]=1;z[k+120>>2]=j;z[k+116>>2]=j;z[k+112>>2]=j;z[k+160>>2]=-l;v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;v[k+28>>2]=4;j=z[b+4>>2];l=z[b+8>>2];v[k+76>>2]=0;v[k+60>>2]=0;m=C(l*C(0));z[k+56>>2]=m;z[k+52>>2]=m;m=C(-m);z[k+72>>2]=m;z[k+68>>2]=m;z[k+80>>2]=j;z[k+48>>2]=l;t[k+32|0]=1;z[k+24>>2]=j;z[k+20>>2]=j;z[k+16>>2]=j;z[k+64>>2]=-l;V=z[b+4>>2];I=z[a+4>>2];v[k+440>>2]=0;v[k+444>>2]=0;v[k+432>>2]=0;v[k+436>>2]=0;pa=z[f+20>>2];u=z[e+20>>2];qa=z[f+24>>2];r=z[e+24>>2];j=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];p=z[c+12>>2];R=z[d+12>>2];W=z[d>>2];ra=z[f+16>>2];E=z[e+16>>2];M=z[d+4>>2];N=z[d+8>>2];v[k+428>>2]=0;v[k+412>>2]=0;v[k+396>>2]=0;ja=C(-W);o=C(E-ra);q=C(u-pa);n=C(r-qa);s=C(C(C(ja*o)-C(q*M))-C(N*n));$=C(C(R*R)+C(-.5));y=C(C(C(R*C(C(M*o)-C(W*q)))+C($*n))-C(N*s));z[k+424>>2]=y+y;y=C(C(C($*q)+C(R*C(C(W*n)-C(N*o))))-C(M*s));z[k+420>>2]=y+y;f=k+416|0;o=C(C(C($*o)+C(R*C(C(N*q)-C(M*n))))-C(W*s));z[f>>2]=o+o;q=C(C(C(m*N)-C(M*j))+C(C(l*R)-C(p*W)));o=C(q+q);n=C(C(C(j*W)-C(N*l))+C(C(m*R)-C(p*M)));s=C(n+n);y=C(C(1)-C(q*o));D=C(n*s);z[k+408>>2]=y-D;q=C(C(C(l*M)-C(W*m))+C(C(j*R)-C(p*N)));X=C(q*s);j=C(C(p*R)-C(C(C(ja*l)-C(m*M))-C(N*j)));l=C(j*o);z[k+404>>2]=X-l;m=C(q*o);p=C(j*s);z[k+400>>2]=m+p;z[k+392>>2]=X+l;l=C(q+q);q=C(q*l);z[k+388>>2]=y-q;o=C(n*o);j=C(j*l);z[k+384>>2]=o-j;v[k+380>>2]=0;z[k+376>>2]=m-p;z[k+372>>2]=o+j;z[k+368>>2]=C(C(1)-D)-q;m=z[d+20>>2];p=z[c+20>>2];j=z[d+24>>2];l=z[c+24>>2];o=z[d+16>>2];q=z[c+16>>2];v[k+364>>2]=0;ta=C(l-r);j=C(C(j-qa)-ta);ua=C(q-E);l=C(C(o-ra)-ua);va=C(p-u);m=C(C(m-pa)-va);p=C(C(N*j)+C(C(W*l)+C(M*m)));o=C(C(C($*j)-C(R*C(C(W*m)-C(M*l))))+C(N*p));z[k+360>>2]=o+o;o=C(C(M*p)+C(C($*m)-C(R*C(C(N*l)-C(j*W)))));z[k+356>>2]=o+o;j=C(C(W*p)+C(C($*l)-C(R*C(C(M*j)-C(m*N)))));z[k+352>>2]=j+j;v[k+288>>2]=0;v[k+208>>2]=142372;v[k+216>>2]=k+368;v[k+212>>2]=k+96;a=v[k+388>>2];v[k+240>>2]=v[k+384>>2];v[k+244>>2]=a;a=v[k+396>>2];v[k+248>>2]=v[k+392>>2];v[k+252>>2]=a;a=v[k+380>>2];v[k+232>>2]=v[k+376>>2];v[k+236>>2]=a;a=v[k+404>>2];v[k+256>>2]=v[k+400>>2];v[k+260>>2]=a;a=v[k+412>>2];v[k+264>>2]=v[k+408>>2];v[k+268>>2]=a;a=v[f+4>>2];v[k+272>>2]=v[f>>2];v[k+276>>2]=a;a=v[k+428>>2];v[k+280>>2]=v[k+424>>2];v[k+284>>2]=a;a=v[k+372>>2];v[k+224>>2]=v[k+368>>2];v[k+228>>2]=a;j=z[k+228>>2];z[k+228>>2]=z[k+240>>2];l=z[k+248>>2];m=z[k+232>>2];z[k+232>>2]=z[k+256>>2];z[k+248>>2]=z[k+260>>2];z[k+256>>2]=m;z[k+260>>2]=l;z[k+240>>2]=j;v[k+200>>2]=141148;v[k+204>>2]=k;ka=C(34028234663852886e22);d=xa-288|0;xa=d;X=C(V+C(I+g));a=xa-272|0;xa=a;v[a+264>>2]=0;v[a+268>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;S=z[k+440>>2];H=z[k+436>>2];O=z[k+432>>2];J=z[k+360>>2];P=z[k+356>>2];ca=z[k+352>>2];v[a+240>>2]=1;la=k+208|0;b=la;c=v[b+8>>2];aa=z[c+52>>2];Y=z[c+36>>2];Z=z[c+20>>2];sa=k+200|0;Q=sa;e=v[Q+4>>2];m=z[e+56>>2];p=z[e+52>>2];o=z[e+72>>2];q=z[e+68>>2];D=z[c+56>>2];L=z[c+40>>2];ba=z[c+24>>2];x=v[b+4>>2];n=z[x+56>>2];s=z[x+52>>2];u=z[x+72>>2];ha=z[b+56>>2];da=z[b+24>>2];ea=z[b+40>>2];fa=z[b+48>>2];ma=z[b+32>>2];r=z[x+68>>2];na=z[b+52>>2];ya=z[b+20>>2];za=z[b+36>>2];Aa=z[c+48>>2];Ba=z[c+32>>2];Ca=z[c>>2];Da=z[c+16>>2];Ea=z[c+4>>2];E=z[e+48>>2];V=z[e+64>>2];Fa=z[c+8>>2];I=z[x+48>>2];y=z[x+64>>2];Ga=z[b+16>>2];g=z[f+8>>2];j=z[f>>2];l=z[f+4>>2];v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+224>>2]=0;v[a+228>>2]=0;v[a+232>>2]=0;e=0;v[a+236>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;ia=D;Ha=L;ga=n;c=C(C(g*g)+C(C(j*j)+C(l*l)))>C(1.1920928955078125e-7);j=c?j:C(1);D=j;n=c?g:C(0);g=c?l:C(0);j=C(C(1)/C(K(C(C(n*n)+C(C(j*j)+C(g*g))))));l=C(D*j);D=C(-l);g=C(g*j);j=C(n*j);n=C(C(C(da*D)-C(ea*g))-C(ha*j));L=C(C(C(Ga*D)-C(ma*g))-C(fa*j));D=C(C(C(ya*D)-C(za*g))-C(na*j));c=C(C(ga*n)+C(C(I*L)+C(s*D)))>C(C(u*n)+C(C(y*L)+C(D*r)));n=c?ga:u;I=c?I:y;s=c?s:r;y=C(ia+C(C(Ha*n)+C(C(Fa*I)+C(ba*s))));c=C(C(m*j)+C(C(E*l)+C(g*p)))>C(C(o*j)+C(C(V*l)+C(g*q)));g=c?m:o;u=C(y-g);z[a+184>>2]=u;j=C(aa+C(C(Y*n)+C(C(Ea*I)+C(s*Z))));l=c?p:q;r=C(j-l);z[a+180>>2]=r;m=C(Aa+C(C(Ba*n)+C(C(Ca*I)+C(s*Da))));p=c?E:V;n=C(m-p);z[a+176>>2]=n;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+160>>2]=0;v[a+164>>2]=0;v[a+168>>2]=0;v[a+172>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;z[a+120>>2]=y;z[a+116>>2]=j;z[a+112>>2]=m;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;z[a+56>>2]=g;z[a+52>>2]=l;z[a+48>>2]=p;g=C(-u);j=C(-r);l=C(-n);E=C(C(u*u)+C(C(n*n)+C(r*r)));a:{b:{if(!(E>C(0))){m=l;o=j;q=g;I=C(0);s=n;p=r;V=u;break b}aa=C(X+C(0));ha=C(aa*aa);y=C(C(ca*C(0))+O);D=C(C(P*C(0))+H);X=C(C(J*C(0))+S);I=C(0);q=g;o=j;m=l;while(1){s=n;p=r;V=u;r=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));n=C(l*r);c=v[b+4>>2];S=z[c+56>>2];u=C(g*r);r=C(j*r);H=C(C(z[b+56>>2]*u)+C(C(n*z[b+24>>2])+C(r*z[b+40>>2])));O=z[c+48>>2];J=C(C(z[b+48>>2]*u)+C(C(n*z[b+16>>2])+C(r*z[b+32>>2])));P=C(C(z[b+52>>2]*u)+C(C(n*z[b+20>>2])+C(r*z[b+36>>2])));ca=z[c+52>>2];L=C(C(S*H)+C(C(O*J)+C(P*ca)));Y=z[c+72>>2];ga=C(Y*H);H=z[c+64>>2];ia=C(H*J);J=z[c+68>>2];e=L>C(ga+C(ia+C(P*J)));c=v[Q+4>>2];Z=z[c+48>>2];P=C(-n);L=z[c+52>>2];ba=z[c+56>>2];da=z[c+64>>2];ea=z[c+68>>2];fa=z[c+72>>2];x=C(C(C(Z*P)-C(L*r))-C(ba*u))>C(C(C(da*P)-C(ea*r))-C(fa*u));c=v[b+8>>2];S=e?S:Y;H=e?O:H;P=e?ca:J;ca=C(z[c+48>>2]+C(C(z[c+32>>2]*S)+C(C(z[c>>2]*H)+C(P*z[c+16>>2]))));da=x?Z:da;Y=C(y+da);O=C(ca-Y);Z=C(z[c+52>>2]+C(C(z[c+36>>2]*S)+C(C(z[c+4>>2]*H)+C(P*z[c+20>>2]))));ea=x?L:ea;L=C(D+ea);J=C(Z-L);P=C(z[c+56>>2]+C(C(z[c+40>>2]*S)+C(C(z[c+8>>2]*H)+C(P*z[c+24>>2]))));S=x?ba:fa;ba=C(X+S);H=C(P-ba);fa=C(C(C(C(n*C(-O))-C(r*J))-C(u*H))-aa);if(fa>C(0)){e=0;ma=z[k+360>>2];ia=C(u*ma);u=z[k+352>>2];ga=r;r=z[k+356>>2];na=C(ia+C(C(n*u)+C(ga*r)));if(na>=C(0)){break a}n=I;I=C(n-C(fa/na));if(I>n){if(I>C(1)){break a}q=z[k+440>>2];o=z[k+436>>2];m=z[k+432>>2];v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;n=C(m+C(u*I));m=C(n-y);E=C(m+z[a+80>>2]);z[a+80>>2]=E;u=C(o+C(r*I));o=C(u-D);y=C(o+z[a+84>>2]);z[a+84>>2]=y;r=C(q+C(ma*I));q=C(r-X);D=C(q+z[a+88>>2]);z[a+88>>2]=D;X=C(m+z[a+64>>2]);z[a+64>>2]=X;H=C(o+z[a+68>>2]);z[a+68>>2]=H;O=C(q+z[a+72>>2]);z[a+72>>2]=O;m=C(m+z[a+48>>2]);z[a+48>>2]=m;o=C(o+z[a+52>>2]);z[a+52>>2]=o;q=C(q+z[a+56>>2]);z[a+56>>2]=q;J=z[a+112>>2];Y=z[a+116>>2];L=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=L-q;z[a+180>>2]=Y-o;z[a+176>>2]=J-m;m=z[a+128>>2];o=z[a+132>>2];q=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=q-O;z[a+196>>2]=o-H;z[a+192>>2]=m-X;m=z[a+144>>2];o=z[a+148>>2];q=z[a+152>>2];v[a+220>>2]=0;z[a+216>>2]=q-D;z[a+212>>2]=o-y;z[a+208>>2]=m-E;ba=C(S+r);H=C(P-ba);L=C(ea+u);J=C(Z-L);Y=C(da+n);O=C(ca-Y);m=l;o=j;q=g;y=n;D=u;X=r;g=C(34028234663852886e22)}else{g=E}}else{g=E}S=g;e=v[a+240>>2];x=e<<4;c=x+(a+112|0)|0;v[c+12>>2]=0;z[c+8>>2]=P;z[c+4>>2]=Z;z[c>>2]=ca;c=x+(a+48|0)|0;v[c+12>>2]=0;z[c+8>>2]=ba;z[c+4>>2]=L;z[c>>2]=Y;c=x+(a+176|0)|0;v[c+12>>2]=0;z[c+8>>2]=H;z[c+4>>2]=J;z[c>>2]=O;v[a+240>>2]=e+1;c:{d:{switch(e-1|0){case 0:n=z[a+184>>2];g=C(z[a+200>>2]-n);u=z[a+176>>2];j=C(z[a+192>>2]-u);r=z[a+180>>2];l=C(z[a+196>>2]-r);E=C(C(g*g)+C(C(j*j)+C(l*l)));if(E<=C(1.1920928955078125e-7)){v[a+240>>2]=1;c=v[a+180>>2];v[a+32>>2]=v[a+176>>2];v[a+36>>2]=c;c=v[a+188>>2];v[a+40>>2]=v[a+184>>2];v[a+44>>2]=c;break c}L=g;g=C(F(C(C(C(C(C(-u)*j)-C(l*r))-C(n*g))/E),C(1)));g=g>C(0)?g:C(0);z[a+40>>2]=n+C(L*g);z[a+36>>2]=r+C(l*g);z[a+32>>2]=u+C(j*g);break c;case 1:KV(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;case 2:O_(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;default:break d}}z[a+40>>2]=H;z[a+36>>2]=J;z[a+32>>2]=O}u=z[a+40>>2];g=C(-u);r=z[a+36>>2];j=C(-r);n=z[a+32>>2];l=C(-n);E=C(C(u*u)+C(C(n*n)+C(r*r)));if(ha>2]+32|0];H=C(0);y=C(0);x=!(E>C(0))|e;g=x?q:g;l=x?m:l;j=x?o:j;m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!(m<=C(1.1920928955078125e-7))){o=g;g=C(C(1)/m);oa=C(o*g);H=C(j*g);y=C(l*g)}v[d+268>>2]=0;z[d+264>>2]=-oa;z[d+260>>2]=-H;z[d+256>>2]=-y;z[d+240>>2]=I;v[d+252>>2]=v[a+252>>2];x=v[a+248>>2];v[d+244>>2]=v[a+244>>2];v[d+248>>2]=x;v[a+44>>2]=0;z[a+40>>2]=e?V:u;z[a+36>>2]=e?p:r;z[a+32>>2]=e?s:n;e=v[a+268>>2];Q=v[a+264>>2];v[a+24>>2]=Q;v[a+28>>2]=e;x=v[a+260>>2];A=v[a+256>>2];v[a+16>>2]=A;v[a+20>>2]=x;v[a+8>>2]=Q;v[a+12>>2]=e;v[a>>2]=A;v[a+4>>2]=x;JV(a+176|0,a+112|0,a+48|0,a+32|0,a+16|0,a,v[a+240>>2]);g=z[v[b+4>>2]+16>>2];j=z[a+16>>2];l=z[a+20>>2];m=z[a+24>>2];v[d+284>>2]=0;z[d+280>>2]=m+(c?C(oa*g):C(-0));z[d+276>>2]=l+(c?C(H*g):C(-0));z[d+272>>2]=j+(c?C(y*g):C(-0));e=1}xa=a+272|0;if(e){a=v[d+244>>2];v[k+336>>2]=v[d+240>>2];v[k+340>>2]=a;a=v[d+252>>2];v[k+344>>2]=v[d+248>>2];v[k+348>>2]=a;if(z[d+240>>2]==C(0)){b=v[la+4>>2];c=v[sa+4>>2];z[d+224>>2]=C(z[b+16>>2]+z[c+16>>2])*C(100);t[d+215|0]=0;v[d+168>>2]=0;v[d+172>>2]=0;v[d+160>>2]=0;v[d+164>>2]=0;v[d+152>>2]=0;v[d+156>>2]=0;v[d+144>>2]=0;v[d+148>>2]=0;v[d+136>>2]=0;v[d+140>>2]=0;v[d+128>>2]=0;v[d+132>>2]=0;v[d+192>>2]=0;a=v[la+8>>2];v[d+56>>2]=a;v[d+48>>2]=142372;v[d+52>>2]=b;b=v[a+12>>2];v[d+72>>2]=v[a+8>>2];v[d+76>>2]=b;b=v[a+20>>2];v[d+80>>2]=v[a+16>>2];v[d+84>>2]=b;b=v[a+28>>2];v[d+88>>2]=v[a+24>>2];v[d+92>>2]=b;b=v[a+36>>2];v[d+96>>2]=v[a+32>>2];v[d+100>>2]=b;b=v[a+44>>2];v[d+104>>2]=v[a+40>>2];v[d+108>>2]=b;b=v[a+52>>2];v[d+112>>2]=v[a+48>>2];v[d+116>>2]=b;b=v[a+60>>2];v[d+120>>2]=v[a+56>>2];v[d+124>>2]=b;b=v[a+4>>2];v[d+64>>2]=v[a>>2];v[d+68>>2]=b;g=z[d+68>>2];z[d+68>>2]=z[d+80>>2];j=z[d+88>>2];l=z[d+72>>2];z[d+72>>2]=z[d+96>>2];z[d+80>>2]=g;z[d+96>>2]=l;z[d+88>>2]=z[d+100>>2];z[d+100>>2]=j;v[d+40>>2]=141148;v[d+44>>2]=c;x=d+220|0;Q=d+216|0;c=xa-320|0;xa=c;a=v[d+44>>2];g=z[a+20>>2];b=v[d+52>>2];j=z[b+20>>2];q=z[d+224>>2];T=w[b+32|0];u=z[b+16>>2];_=w[a+32|0];r=z[a+16>>2];v[c+44>>2]=0;X=C((g>2];a=0;f=0;while(1){b=f<<2;B=w[f+x|0];v[b+(c- -64|0)>>2]=B;G=w[f+Q|0];v[b+(c+48|0)>>2]=G;b=(1-B<<4)+Ja|0;g=z[b+8>>2];j=z[b>>2];l=z[b+4>>2];b=(1-G<<4)+Ia|0;m=z[b>>2];p=z[b+4>>2];o=z[b+8>>2];n=z[b+12>>2];s=z[A+48>>2];E=z[A+32>>2];V=z[A>>2];I=z[A+16>>2];y=z[A+52>>2];D=z[A+36>>2];S=z[A+4>>2];H=z[A+20>>2];O=z[A+56>>2];J=z[A+40>>2];aa=z[A+8>>2];P=z[A+24>>2];b=a;U=a<<4;B=U+(c+144|0)|0;v[B+12>>2]=0;G=U+(c+80|0)|0;z[G+12>>2]=n;z[G+8>>2]=o;z[G+4>>2]=p;z[G>>2]=m;G=U+(c+208|0)|0;v[G+12>>2]=0;n=C(O+C(C(J*g)+C(C(aa*j)+C(l*P))));z[B+8>>2]=n;y=C(y+C(C(D*g)+C(C(S*j)+C(l*H))));z[B+4>>2]=y;g=C(s+C(C(E*g)+C(C(V*j)+C(l*I))));z[B>>2]=g;j=C(n-o);z[G+8>>2]=j;l=C(y-p);z[G+4>>2]=l;g=C(g-m);z[G>>2]=g;a=a+1|0;v[c+44>>2]=a;f=f+1|0;if((wa|0)!=(f|0)){continue}break}k:{l:{switch(b-1|0){case 0:m=z[c+216>>2];g=C(z[c+232>>2]-m);p=z[c+208>>2];j=C(z[c+224>>2]-p);o=z[c+212>>2];l=C(z[c+228>>2]-o);n=C(C(g*g)+C(C(j*j)+C(l*l)));if(!(n<=C(1.1920928955078125e-7))){break k}v[c+44>>2]=1;a=v[c+212>>2];v[c+16>>2]=v[c+208>>2];v[c+20>>2]=a;a=v[c+220>>2];v[c+24>>2]=v[c+216>>2];v[c+28>>2]=a;break i;case 1:jY(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break i;case 2:break l;default:break j}}Q_(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break i}v[c+28>>2]=0;s=g;g=C(F(C(C(C(C(C(-p)*j)-C(l*o))-C(m*g))/n),C(1)));g=g>C(0)?g:C(0);z[c+24>>2]=m+C(s*g);z[c+20>>2]=o+C(l*g);z[c+16>>2]=p+C(j*g);break i}g=z[f+8>>2];l=z[f>>2];j=z[f+4>>2];v[c+284>>2]=0;a=C(C(g*g)+C(C(l*l)+C(j*j)))>C(0);g=a?g:C(0);z[c+280>>2]=g;j=a?j:C(0);z[c+276>>2]=j;l=a?l:C(1);z[c+272>>2]=l;p=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));n=C(g*p);s=C(l*p);m=C(34028234663852886e22);p=C(j*p);break h}v[c+28>>2]=0;z[c+24>>2]=j;z[c+20>>2]=l;z[c+16>>2]=g}a=v[c+20>>2];v[c+272>>2]=v[c+16>>2];v[c+276>>2]=a;a=v[c+28>>2];v[c+280>>2]=v[c+24>>2];v[c+284>>2]=a;g=z[c+280>>2];l=z[c+272>>2];j=z[c+276>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!(X>2]=v[c+312>>2];a=v[c+308>>2];v[c+288>>2]=v[c+304>>2];v[c+292>>2]=a;a=v[d+56>>2];H=z[c+284>>2];f=v[c+44>>2];B=f<<2;b=v[d+52>>2];G=b+56|0;m=C(-l);r=C(C(C(z[d+72>>2]*m)-C(z[d+88>>2]*j))-C(z[d+104>>2]*g));q=g;y=C(C(C(z[d+64>>2]*m)-C(z[d+80>>2]*j))-C(z[d+96>>2]*g));u=j;m=C(C(C(z[d+68>>2]*m)-C(z[d+84>>2]*j))-C(z[d+100>>2]*g));U=b+52|0;T=b+72|0;_=b+68|0;A=C(C(z[G>>2]*r)+C(C(z[b+48>>2]*y)+C(m*z[U>>2])))>C(C(z[T>>2]*r)+C(C(z[b+64>>2]*y)+C(m*z[_>>2])));v[B+(c- -64|0)>>2]=A;m=z[(A?G:T)>>2];y=z[(A?b+48|0:b- -64|0)>>2];D=z[(A?U:_)>>2];O=z[a+56>>2];J=z[a+40>>2];aa=z[a+24>>2];P=z[a+52>>2];ca=z[a+36>>2];Y=z[a+20>>2];Z=z[a+8>>2];L=z[a+48>>2];ba=z[a+32>>2];oa=z[a>>2];ha=z[a+16>>2];da=z[a+4>>2];T=B+(c+48|0)|0;a=v[d+44>>2];A=a+56|0;r=l;B=a+52|0;G=a+72|0;U=a+68|0;b=C(C(z[A>>2]*g)+C(C(z[a+48>>2]*l)+C(j*z[B>>2])))>C(C(z[G>>2]*g)+C(C(z[a+64>>2]*l)+C(j*z[U>>2])));v[T>>2]=b;O=C(O+C(C(J*m)+C(C(Z*y)+C(D*aa))));J=z[(b?A:G)>>2];g=C(O-J);aa=C(L+C(C(ba*m)+C(C(oa*y)+C(D*ha))));Z=z[(b?a+48|0:a- -64|0)>>2];j=C(aa-Z);m=C(P+C(C(ca*m)+C(C(da*y)+C(D*Y))));y=z[(b?B:U)>>2];l=C(m-y);D=C(C(n*g)+C(C(s*j)+C(p*l)));if(D>S){a=0;if(!x){break e}t[d+215|0]=f;if(!f){break e}b=0;if((f|0)!=1){U=f&-2;A=0;while(1){B=b<<2;T=c- -64|0;t[b+x|0]=v[B+T>>2];_=c+48|0;t[b+Q|0]=v[_+B>>2];B=b|1;G=B<<2;t[x+B|0]=v[G+T>>2];t[B+Q|0]=v[G+_>>2];b=b+2|0;A=A+2|0;if((U|0)!=(A|0)){continue}break}}if(!(f&1)){break e}f=b<<2;t[b+x|0]=v[f+(c- -64|0)>>2];t[b+Q|0]=v[f+(c+48|0)>>2];break e}if(D>C(o*C(.9997749924659729))){m:{if(!x){break m}t[d+215|0]=f;if(!f){break m}b=0;if((f|0)!=1){G=f&-2;A=0;while(1){a=b<<2;U=c- -64|0;t[b+x|0]=v[a+U>>2];T=c+48|0;t[b+Q|0]=v[T+a>>2];a=b|1;B=a<<2;t[a+x|0]=v[B+U>>2];t[a+Q|0]=v[B+T>>2];b=b+2|0;A=A+2|0;if((G|0)!=(A|0)){continue}break}}if(!(f&1)){break m}a=b<<2;t[b+x|0]=v[a+(c- -64|0)>>2];t[b+Q|0]=v[a+(c+48|0)>>2]}z[d+160>>2]=s;v[d+172>>2]=0;z[d+168>>2]=n;z[d+164>>2]=p;JV(c+208|0,c+144|0,c+80|0,c+272|0,c+16|0,c,f);g=z[c+16>>2];j=z[c+20>>2];l=z[c+24>>2];v[d+140>>2]=0;z[d+136>>2]=l-C(E*n);z[d+132>>2]=j-C(E*p);z[d+128>>2]=g-C(E*s);g=z[c>>2];j=z[c+4>>2];l=z[c+8>>2];v[d+156>>2]=0;z[d+152>>2]=l+C(V*n);z[d+148>>2]=j+C(V*p);z[d+144>>2]=g+C(V*s);z[d+192>>2]=o-I;a=2;break e}b=f<<4;a=b+(c+144|0)|0;v[a+12>>2]=0;z[a+8>>2]=O;z[a+4>>2]=m;z[a>>2]=aa;a=b+(c+80|0)|0;v[a+12>>2]=0;z[a+8>>2]=J;z[a+4>>2]=y;z[a>>2]=Z;a=b+(c+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=g;z[a+4>>2]=l;z[a>>2]=j;v[c+44>>2]=f+1;n:{o:{switch(f-1|0){case 0:m=z[c+216>>2];g=C(z[c+232>>2]-m);p=z[c+208>>2];j=C(z[c+224>>2]-p);n=z[c+212>>2];l=C(z[c+228>>2]-n);s=C(C(g*g)+C(C(j*j)+C(l*l)));if(s<=C(1.1920928955078125e-7)){v[c+44>>2]=1;a=v[c+212>>2];v[c+16>>2]=v[c+208>>2];v[c+20>>2]=a;a=v[c+220>>2];v[c+24>>2]=v[c+216>>2];v[c+28>>2]=a;break n}v[c+28>>2]=0;D=g;g=C(F(C(C(C(C(C(-p)*j)-C(l*n))-C(m*g))/s),C(1)));g=g>C(0)?g:C(0);z[c+24>>2]=m+C(D*g);z[c+20>>2]=n+C(l*g);z[c+16>>2]=p+C(j*g);break n;case 1:jY(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break n;case 2:Q_(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break n;default:break o}}v[c+28>>2]=0;z[c+24>>2]=g;z[c+20>>2]=l;z[c+16>>2]=j}a=v[c+20>>2];v[c+272>>2]=v[c+16>>2];v[c+276>>2]=a;a=v[c+28>>2];v[c+280>>2]=v[c+24>>2];v[c+284>>2]=a;g=z[c+280>>2];l=z[c+272>>2];j=z[c+276>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));s=C(C(1)/m);n=C(g*s);p=C(j*s);s=C(l*s);if(mX){continue}break}f=v[c+44>>2];if(!(m>2];_=c+48|0;t[b+Q|0]=v[_+B>>2];B=b|1;G=B<<2;t[x+B|0]=v[G+T>>2];t[B+Q|0]=v[G+_>>2];b=b+2|0;A=A+2|0;if((U|0)!=(A|0)){continue}break}}if(!(a&1)){break p}a=b<<2;t[b+x|0]=v[a+(c- -64|0)>>2];t[b+Q|0]=v[a+(c+48|0)>>2]}v[c+312>>2]=v[c+296>>2];a=v[c+292>>2];v[c+304>>2]=v[c+288>>2];v[c+308>>2]=a;z[c+284>>2]=H;z[c+272>>2]=r;z[c+276>>2]=u;z[c+280>>2]=q;JV(c+208|0,c+144|0,c+80|0,c+272|0,c+16|0,c,f);v[d+188>>2]=0;z[d+184>>2]=n;z[d+180>>2]=p;z[d+176>>2]=s;v[d+172>>2]=0;g=C(C(1)/o);j=C(q*g);z[d+168>>2]=j;l=C(u*g);z[d+164>>2]=l;g=C(r*g);z[d+160>>2]=g;m=z[c+16>>2];p=z[c+20>>2];q=z[c+24>>2];v[d+140>>2]=0;z[d+136>>2]=q-C(E*j);z[d+132>>2]=p-C(E*l);z[d+128>>2]=m-C(E*g);m=z[c>>2];p=z[c+4>>2];q=z[c+8>>2];z[d+192>>2]=o-I;v[d+156>>2]=0;z[d+152>>2]=q+C(V*j);z[d+148>>2]=p+C(V*l);z[d+144>>2]=m+C(V*g);a=2;if(o<=I){break e}a=4;break e}if(x){break f}a=5;break e}f=v[c+44>>2]}t[d+215|0]=f;a=5;if(!f){break e}b=0;if((f|0)!=1){U=f&-2;A=0;while(1){B=b<<2;T=c- -64|0;t[b+x|0]=v[B+T>>2];_=c+48|0;t[b+Q|0]=v[_+B>>2];B=b|1;G=B<<2;t[x+B|0]=v[G+T>>2];t[B+Q|0]=v[G+_>>2];b=b+2|0;A=A+2|0;if((U|0)!=(A|0)){continue}break}}if(!(f&1)){break e}f=b<<2;t[b+x|0]=v[f+(c- -64|0)>>2];t[b+Q|0]=v[f+(c+48|0)>>2]}xa=c+320|0;q:{r:{if(a-5|0){break r}v[d+16>>2]=1065353216;a=v[d+28>>2];v[d+8>>2]=v[d+24>>2];v[d+12>>2]=a;a=v[d+20>>2];v[d>>2]=v[d+16>>2];v[d+4>>2]=a;if(K_(la,sa,d+220|0,d+216|0,w[d+215|0],0,d,d+128|0)-5>>>0<=1){break r}v[d+280>>2]=0;v[d+284>>2]=0;v[d+272>>2]=0;v[d+276>>2]=0;g=z[k+360>>2];j=z[k+352>>2];l=z[k+356>>2];v[d+268>>2]=0;m=C(C(1)/C(K(C(C(g*g)+C(C(j*j)+C(l*l))))));z[d+264>>2]=m*C(-g);z[d+260>>2]=m*C(-l);z[d+256>>2]=m*C(-j);g=C(0);break q}a=v[d+140>>2];v[d+280>>2]=v[d+136>>2];v[d+284>>2]=a;a=v[d+132>>2];v[d+272>>2]=v[d+128>>2];v[d+276>>2]=a;a=v[d+164>>2];v[d+256>>2]=v[d+160>>2];v[d+260>>2]=a;a=v[d+172>>2];v[d+264>>2]=v[d+168>>2];v[d+268>>2]=a;g=z[d+192>>2]}z[k+336>>2]=g>2];v[k+320>>2]=v[d+272>>2];v[k+324>>2]=a;a=v[d+284>>2];v[k+328>>2]=v[d+280>>2];v[k+332>>2]=a;a=v[d+260>>2];v[k+304>>2]=v[d+256>>2];v[k+308>>2]=a;a=v[d+268>>2];v[k+312>>2]=v[d+264>>2];v[k+316>>2]=a}xa=d+288|0;if(e){ka=z[k+336>>2];g=z[k+328>>2];j=z[k+320>>2];l=z[k+324>>2];m=z[k+312>>2];p=z[k+304>>2];o=z[k+308>>2];q=C(C(N*m)+C(C(W*p)+C(M*o)));n=C(-M);s=C(C(C(R*C(C(W*o)+C(p*n)))+C($*m))+C(N*q));z[h+8>>2]=s+s;s=C(C(M*q)+C(C($*o)+C(R*C(C(N*p)+C(m*ja)))));z[h+4>>2]=s+s;r=o;o=C(-N);m=C(C(W*q)+C(C($*p)+C(R*C(C(M*m)+C(r*o)))));z[h>>2]=m+m;m=ka>C(0)?ka:C(0);p=C(C(N*g)+C(C(W*j)+C(M*l)));q=C(C(C(R*C(C(W*l)+C(j*n)))+C($*g))+C(N*p));z[i+8>>2]=C(ta*m)+C(qa+C(q+q));q=C(C(M*p)+C(C($*l)+C(R*C(C(N*j)+C(g*ja)))));z[i+4>>2]=C(va*m)+C(pa+C(q+q));g=C(C(W*p)+C(C($*j)+C(R*C(C(M*g)+C(l*o)))));z[i>>2]=C(ua*m)+C(ra+C(g+g))}xa=k+448|0;return C(ka)}function ZY(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=C(g);h=h|0;i=i|0;j=j|0;k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=0,x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=0,G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=0,S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=0,qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=0,wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=0,Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=0,La=0,Ma=0,Na=0;b=xa-320|0;xa=b;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;t[b+32|0]=0;v[b+28>>2]=3;l=z[a+8>>2];m=z[a+12>>2];n=z[a+4>>2];v[b+60>>2]=0;z[b+56>>2]=m;z[b+52>>2]=l;z[b+48>>2]=n;l=l>=n?n:l;l=l<=m?l:m;z[b+24>>2]=l*C(.05000000074505806);z[b+20>>2]=l*C(.004999999888241291);z[b+16>>2]=l*C(.009999999776482582);v[b+312>>2]=0;v[b+316>>2]=0;v[b+304>>2]=0;v[b+308>>2]=0;ra=z[e+20>>2];x=z[f+20>>2];sa=z[e+24>>2];s=z[f+24>>2];l=z[d+8>>2];m=z[d>>2];n=z[d+4>>2];p=z[d+12>>2];T=z[c+12>>2];V=z[c>>2];ta=z[e+16>>2];D=z[f+16>>2];O=z[c+4>>2];P=z[c+8>>2];v[b+300>>2]=0;v[b+284>>2]=0;v[b+268>>2]=0;na=C(-V);o=C(D-ta);q=C(x-ra);r=C(s-sa);y=C(C(C(na*o)-C(q*O))-C(P*r));aa=C(C(T*T)+C(-.5));H=C(C(C(T*C(C(O*o)-C(V*q)))+C(aa*r))-C(P*y));z[b+296>>2]=H+H;H=C(C(C(aa*q)+C(T*C(C(V*r)-C(P*o))))-C(O*y));z[b+292>>2]=H+H;u=b+288|0;o=C(C(C(aa*o)+C(T*C(C(P*q)-C(O*r))))-C(V*y));z[u>>2]=o+o;q=C(C(C(n*P)-C(O*l))+C(C(m*T)-C(p*V)));o=C(q+q);r=C(C(C(l*V)-C(P*m))+C(C(n*T)-C(p*O)));y=C(r+r);H=C(C(1)-C(q*o));I=C(r*y);z[b+280>>2]=H-I;q=C(C(C(m*O)-C(V*n))+C(C(l*T)-C(p*P)));Q=C(q*y);l=C(C(p*T)-C(C(C(na*m)-C(n*O))-C(P*l)));m=C(l*o);z[b+276>>2]=Q-m;n=C(q*o);p=C(l*y);z[b+272>>2]=n+p;z[b+264>>2]=Q+m;m=C(q+q);q=C(q*m);z[b+260>>2]=H-q;o=C(r*o);l=C(l*m);z[b+256>>2]=o-l;v[b+252>>2]=0;z[b+248>>2]=n-p;z[b+244>>2]=o+l;z[b+240>>2]=C(C(1)-I)-q;n=z[c+20>>2];p=z[d+20>>2];l=z[c+24>>2];m=z[d+24>>2];o=z[c+16>>2];q=z[d+16>>2];v[b+236>>2]=0;wa=C(m-s);l=C(C(l-sa)-wa);ya=C(q-D);m=C(C(o-ta)-ya);za=C(p-x);n=C(C(n-ra)-za);p=C(C(P*l)+C(C(V*m)+C(O*n)));o=C(C(C(aa*l)-C(T*C(C(V*n)-C(O*m))))+C(P*p));z[b+232>>2]=o+o;o=C(C(O*p)+C(C(aa*n)-C(T*C(C(P*m)-C(l*V)))));z[b+228>>2]=o+o;l=C(C(V*p)+C(C(aa*m)-C(T*C(C(O*l)-C(n*P)))));z[b+224>>2]=l+l;v[b+160>>2]=0;v[b+80>>2]=142420;v[b+84>>2]=k;v[b+88>>2]=b+240;a=v[b+260>>2];v[b+112>>2]=v[b+256>>2];v[b+116>>2]=a;a=v[b+268>>2];v[b+120>>2]=v[b+264>>2];v[b+124>>2]=a;a=v[b+252>>2];v[b+104>>2]=v[b+248>>2];v[b+108>>2]=a;a=v[b+276>>2];v[b+128>>2]=v[b+272>>2];v[b+132>>2]=a;a=v[b+284>>2];v[b+136>>2]=v[b+280>>2];v[b+140>>2]=a;a=v[u+4>>2];v[b+144>>2]=v[u>>2];v[b+148>>2]=a;a=v[b+300>>2];v[b+152>>2]=v[b+296>>2];v[b+156>>2]=a;a=v[b+244>>2];v[b+96>>2]=v[b+240>>2];v[b+100>>2]=a;l=z[b+100>>2];z[b+100>>2]=z[b+112>>2];m=z[b+120>>2];n=z[b+104>>2];z[b+104>>2]=z[b+128>>2];z[b+120>>2]=z[b+132>>2];z[b+128>>2]=n;z[b+132>>2]=m;z[b+112>>2]=l;v[b+72>>2]=141808;v[b+76>>2]=b;oa=C(34028234663852886e22);e=xa-288|0;xa=e;ba=C(g+C(0));a=xa-272|0;xa=a;v[a+264>>2]=0;v[a+268>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;J=z[b+312>>2];A=z[b+308>>2];G=z[b+304>>2];M=z[b+232>>2];U=z[b+228>>2];ca=z[b+224>>2];v[a+240>>2]=1;j=b+72|0;k=v[j+4>>2];n=z[k+52>>2];pa=b+80|0;c=pa;d=v[c+8>>2];Z=z[d+52>>2];W=z[d+36>>2];$=z[d+20>>2];p=z[k+56>>2];B=z[d+56>>2];X=z[d+40>>2];da=z[d+24>>2];f=v[c+4>>2];o=z[f+72>>2];q=z[f- -64>>2];r=z[f+68>>2];y=z[f+56>>2];x=z[f+52>>2];s=z[f+88>>2];ea=z[c+56>>2];ma=z[c+24>>2];fa=z[c+40>>2];D=z[f+80>>2];ga=z[c+48>>2];ja=z[c+32>>2];H=z[f+84>>2];ka=z[c+52>>2];la=z[c+20>>2];ua=z[c+36>>2];I=z[k+48>>2];Ca=z[d+48>>2];Da=z[d+32>>2];Ea=z[d>>2];Fa=z[d+16>>2];Ga=z[d+4>>2];Ha=z[d+8>>2];Q=z[f+48>>2];Ia=z[c+16>>2];g=z[u+8>>2];l=z[u>>2];m=z[u+4>>2];v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+224>>2]=0;v[a+228>>2]=0;v[a+232>>2]=0;f=0;v[a+236>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;Ja=B;ia=X;Aa=o;ha=s;d=C(C(g*g)+C(C(l*l)+C(m*m)))>C(1.1920928955078125e-7);l=d?l:C(1);B=l;o=d?g:C(0);g=d?m:C(0);l=C(C(1)/C(K(C(C(o*o)+C(C(l*l)+C(g*g))))));X=C(B*l);m=C(-X);g=C(g*l);l=C(o*l);o=C(C(C(ma*m)-C(fa*g))-C(ea*l));B=C(C(C(Ia*m)-C(ja*g))-C(ga*l));m=C(C(C(la*m)-C(ua*g))-C(ka*l));ea=C(C(Aa*o)+C(C(q*B)+C(r*m)));s=C(C(s*o)+C(C(D*B)+C(m*H)));d=ea>s;m=C(C(y*o)+C(C(Q*B)+C(m*x)));L=!(m>ea)|!(m>s);m=L?d?Aa:ha:y;o=L?d?q:D:Q;q=L?d?r:H:x;y=C(Ja+C(C(ia*m)+C(C(Ha*o)+C(da*q))));l=l>C(0)?p:C(-p);x=C(y-l);z[a+184>>2]=x;p=C(Z+C(C(W*m)+C(C(Ga*o)+C(q*$))));g=g>C(0)?n:C(-n);s=C(p-g);z[a+180>>2]=s;m=C(Ca+C(C(Da*m)+C(C(Ea*o)+C(q*Fa))));n=X>C(0)?I:C(-I);r=C(m-n);z[a+176>>2]=r;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+160>>2]=0;v[a+164>>2]=0;v[a+168>>2]=0;v[a+172>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;z[a+120>>2]=y;z[a+116>>2]=p;z[a+112>>2]=m;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;z[a+56>>2]=l;z[a+52>>2]=g;z[a+48>>2]=n;g=C(-x);l=C(-s);m=C(-r);D=C(C(x*x)+C(C(r*r)+C(s*s)));n=z[k+24>>2];n=C((nea)){n=m;o=l;q=g;I=C(0);y=r;p=s;H=x;break b}Z=C(n+ba);ma=C(Z*Z);Q=C(C(ca*C(0))+G);B=C(C(U*C(0))+A);ba=C(C(M*C(0))+J);I=C(0);q=g;o=l;n=m;while(1){y=r;p=s;H=x;s=C(C(1)/C(K(C(C(g*g)+C(C(m*m)+C(l*l))))));r=C(m*s);d=v[c+4>>2];M=z[d+72>>2];x=C(g*s);s=C(l*s);J=C(C(z[c+56>>2]*x)+C(C(r*z[c+24>>2])+C(s*z[c+40>>2])));U=z[d- -64>>2];A=C(C(z[c+48>>2]*x)+C(C(r*z[c+16>>2])+C(s*z[c+32>>2])));G=C(C(z[c+52>>2]*x)+C(C(r*z[c+20>>2])+C(s*z[c+36>>2])));ca=z[d+68>>2];W=C(C(M*J)+C(C(U*A)+C(G*ca)));$=z[d+88>>2];X=z[d+80>>2];da=z[d+84>>2];fa=C(C($*J)+C(C(X*A)+C(G*da)));f=W>fa;ia=W;W=z[d+56>>2];ga=z[d+48>>2];ha=G;G=z[d+52>>2];J=C(C(W*J)+C(C(ga*A)+C(ha*G)));k=!(iafa);d=v[c+8>>2];J=k?f?M:$:W;A=k?f?U:X:ga;U=k?f?ca:da:G;ca=C(z[d+48>>2]+C(C(z[d+32>>2]*J)+C(C(z[d>>2]*A)+C(U*z[d+16>>2]))));f=v[j+4>>2];G=z[f+48>>2];fa=r>2]+C(C(z[d+36>>2]*J)+C(C(z[d+4>>2]*A)+C(U*z[d+20>>2]))));M=z[f+52>>2];ga=s>2]+C(C(z[d+40>>2]*J)+C(C(z[d+8>>2]*A)+C(U*z[d+24>>2]))));J=z[f+56>>2];J=xC(0)){f=0;ka=z[b+232>>2];ia=C(x*ka);x=z[b+224>>2];ha=s;s=z[b+228>>2];la=C(ia+C(C(r*x)+C(ha*s)));if(la>=C(0)){break a}r=I;I=C(r-C(ja/la));if(I>r){if(I>C(1)){break a}q=z[b+312>>2];o=z[b+308>>2];n=z[b+304>>2];v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;r=C(n+C(x*I));n=C(r-Q);D=C(n+z[a+80>>2]);z[a+80>>2]=D;x=C(o+C(s*I));o=C(x-B);Q=C(o+z[a+84>>2]);z[a+84>>2]=Q;s=C(q+C(ka*I));q=C(s-ba);B=C(q+z[a+88>>2]);z[a+88>>2]=B;ba=C(n+z[a+64>>2]);z[a+64>>2]=ba;A=C(o+z[a+68>>2]);z[a+68>>2]=A;G=C(q+z[a+72>>2]);z[a+72>>2]=G;n=C(n+z[a+48>>2]);z[a+48>>2]=n;o=C(o+z[a+52>>2]);z[a+52>>2]=o;q=C(q+z[a+56>>2]);z[a+56>>2]=q;M=z[a+112>>2];W=z[a+116>>2];X=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=X-q;z[a+180>>2]=W-o;z[a+176>>2]=M-n;n=z[a+128>>2];o=z[a+132>>2];q=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=q-G;z[a+196>>2]=o-A;z[a+192>>2]=n-ba;n=z[a+144>>2];o=z[a+148>>2];q=z[a+152>>2];v[a+220>>2]=0;z[a+216>>2]=q-B;z[a+212>>2]=o-Q;z[a+208>>2]=n-D;da=C(J+s);A=C(U-da);X=C(ga+x);M=C($-X);W=C(fa+r);G=C(ca-W);n=m;o=l;q=g;Q=r;B=x;ba=s;g=C(34028234663852886e22)}else{g=D}}else{g=D}J=g;f=v[a+240>>2];k=f<<4;d=k+(a+112|0)|0;v[d+12>>2]=0;z[d+8>>2]=U;z[d+4>>2]=$;z[d>>2]=ca;d=k+(a+48|0)|0;v[d+12>>2]=0;z[d+8>>2]=da;z[d+4>>2]=X;z[d>>2]=W;d=k+(a+176|0)|0;v[d+12>>2]=0;z[d+8>>2]=A;z[d+4>>2]=M;z[d>>2]=G;v[a+240>>2]=f+1;c:{d:{switch(f-1|0){case 0:r=z[a+184>>2];g=C(z[a+200>>2]-r);x=z[a+176>>2];l=C(z[a+192>>2]-x);s=z[a+180>>2];m=C(z[a+196>>2]-s);D=C(C(g*g)+C(C(l*l)+C(m*m)));if(D<=C(1.1920928955078125e-7)){v[a+240>>2]=1;d=v[a+180>>2];v[a+32>>2]=v[a+176>>2];v[a+36>>2]=d;d=v[a+188>>2];v[a+40>>2]=v[a+184>>2];v[a+44>>2]=d;break c}ha=g;g=C(F(C(C(C(C(C(-x)*l)-C(m*s))-C(r*g))/D),C(1)));g=g>C(0)?g:C(0);z[a+40>>2]=r+C(ha*g);z[a+36>>2]=s+C(m*g);z[a+32>>2]=x+C(l*g);break c;case 1:KV(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;case 2:O_(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;default:break d}}z[a+40>>2]=A;z[a+36>>2]=M;z[a+32>>2]=G}x=z[a+40>>2];g=C(-x);s=z[a+36>>2];l=C(-s);r=z[a+32>>2];m=C(-r);D=C(C(x*x)+C(C(r*r)+C(s*s)));if(ma>2]+32|0];A=C(0);Q=C(0);k=!(D>ea)|f;g=k?q:g;m=k?n:m;l=k?o:l;n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));if(!(n<=C(1.1920928955078125e-7))){o=g;g=C(C(1)/n);qa=C(o*g);A=C(l*g);Q=C(m*g)}v[e+268>>2]=0;z[e+264>>2]=-qa;z[e+260>>2]=-A;z[e+256>>2]=-Q;z[e+240>>2]=I;v[e+252>>2]=v[a+252>>2];k=v[a+248>>2];v[e+244>>2]=v[a+244>>2];v[e+248>>2]=k;v[a+44>>2]=0;z[a+40>>2]=f?H:x;z[a+36>>2]=f?p:s;z[a+32>>2]=f?y:r;f=v[a+268>>2];L=v[a+264>>2];v[a+24>>2]=L;v[a+28>>2]=f;k=v[a+260>>2];_=v[a+256>>2];v[a+16>>2]=_;v[a+20>>2]=k;v[a+8>>2]=L;v[a+12>>2]=f;v[a>>2]=_;v[a+4>>2]=k;JV(a+176|0,a+112|0,a+48|0,a+32|0,a+16|0,a,v[a+240>>2]);g=z[v[c+4>>2]+16>>2];l=z[a+16>>2];m=z[a+20>>2];n=z[a+24>>2];v[e+284>>2]=0;z[e+280>>2]=n+(d?C(qa*g):C(-0));z[e+276>>2]=m+(d?C(A*g):C(-0));z[e+272>>2]=l+(d?C(Q*g):C(-0));f=1}xa=a+272|0;if(f){a=v[e+244>>2];v[b+208>>2]=v[e+240>>2];v[b+212>>2]=a;a=v[e+252>>2];v[b+216>>2]=v[e+248>>2];v[b+220>>2]=a;if(z[e+240>>2]==C(0)){c=v[pa+4>>2];d=v[j+4>>2];z[e+224>>2]=C(z[c+16>>2]+z[d+16>>2])*C(100);t[e+215|0]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;v[e+152>>2]=0;v[e+156>>2]=0;v[e+144>>2]=0;v[e+148>>2]=0;v[e+136>>2]=0;v[e+140>>2]=0;v[e+128>>2]=0;v[e+132>>2]=0;v[e+192>>2]=0;a=v[pa+8>>2];v[e+56>>2]=a;v[e+48>>2]=142420;v[e+52>>2]=c;c=v[a+12>>2];v[e+72>>2]=v[a+8>>2];v[e+76>>2]=c;c=v[a+20>>2];v[e+80>>2]=v[a+16>>2];v[e+84>>2]=c;c=v[a+28>>2];v[e+88>>2]=v[a+24>>2];v[e+92>>2]=c;c=v[a+36>>2];v[e+96>>2]=v[a+32>>2];v[e+100>>2]=c;c=v[a+44>>2];v[e+104>>2]=v[a+40>>2];v[e+108>>2]=c;c=v[a+52>>2];v[e+112>>2]=v[a+48>>2];v[e+116>>2]=c;c=v[a+60>>2];v[e+120>>2]=v[a+56>>2];v[e+124>>2]=c;c=v[a+4>>2];v[e+64>>2]=v[a>>2];v[e+68>>2]=c;g=z[e+68>>2];z[e+68>>2]=z[e+80>>2];l=z[e+88>>2];m=z[e+72>>2];z[e+72>>2]=z[e+96>>2];z[e+80>>2]=g;z[e+96>>2]=m;z[e+88>>2]=z[e+100>>2];z[e+100>>2]=l;v[e+40>>2]=141808;v[e+44>>2]=d;L=e+220|0;_=e+216|0;d=xa-320|0;xa=d;E=v[e+44>>2];g=z[E+20>>2];N=v[e+52>>2];l=z[N+20>>2];q=z[e+224>>2];Ka=w[N+32|0];x=z[N+16>>2];La=w[E+32|0];s=z[E+16>>2];v[d+44>>2]=0;Q=C((g>2];a=0;k=0;while(1){c=k<<2;R=w[k+L|0];v[c+(d- -64|0)>>2]=R;S=w[k+_|0];v[c+(d+48|0)>>2]=S;c=N+(R<<4)|0;g=z[c+56>>2];l=z[c+48>>2];m=z[c+52>>2];c=(S<<4)+101152|0;Ma=v[c>>2];Na=v[c+4>>2];va=v[c+8>>2];r=z[u+48>>2];y=z[u+32>>2];D=z[u>>2];H=z[u+16>>2];I=z[u+52>>2];B=z[u+36>>2];ba=z[u+4>>2];J=z[u+20>>2];A=z[u+56>>2];G=z[u+40>>2];M=z[u+8>>2];Z=z[u+24>>2];n=z[E+48>>2];p=z[E+52>>2];o=z[E+56>>2];c=a;Y=a<<4;R=Y+(d+144|0)|0;v[R+12>>2]=0;S=Y+(d+80|0)|0;v[S+12>>2]=0;Y=Y+(d+208|0)|0;v[Y+12>>2]=0;o=va?o:C(-o);z[S+8>>2]=o;p=Na?p:C(-p);z[S+4>>2]=p;n=Ma?n:C(-n);z[S>>2]=n;A=C(A+C(C(G*g)+C(C(M*l)+C(m*Z))));z[R+8>>2]=A;I=C(I+C(C(B*g)+C(C(ba*l)+C(m*J))));z[R+4>>2]=I;g=C(r+C(C(y*g)+C(C(D*l)+C(m*H))));z[R>>2]=g;l=C(A-o);z[Y+8>>2]=l;m=C(I-p);z[Y+4>>2]=m;g=C(g-n);z[Y>>2]=g;a=a+1|0;v[d+44>>2]=a;k=k+1|0;if((Ba|0)!=(k|0)){continue}break}k:{l:{switch(c-1|0){case 0:n=z[d+216>>2];g=C(z[d+232>>2]-n);p=z[d+208>>2];l=C(z[d+224>>2]-p);o=z[d+212>>2];m=C(z[d+228>>2]-o);r=C(C(g*g)+C(C(l*l)+C(m*m)));if(!(r<=C(1.1920928955078125e-7))){break k}v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break i;case 1:jY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i;case 2:break l;default:break j}}Q_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i}v[d+28>>2]=0;H=g;g=C(F(C(C(C(C(C(-p)*l)-C(m*o))-C(n*g))/r),C(1)));g=g>C(0)?g:C(0);z[d+24>>2]=n+C(H*g);z[d+20>>2]=o+C(m*g);z[d+16>>2]=p+C(l*g);break i}g=z[u+8>>2];m=z[u>>2];l=z[u+4>>2];v[d+284>>2]=0;a=C(C(g*g)+C(C(m*m)+C(l*l)))>C(0);g=a?g:C(0);z[d+280>>2]=g;l=a?l:C(0);z[d+276>>2]=l;m=a?m:C(1);z[d+272>>2]=m;p=C(C(1)/C(K(C(C(g*g)+C(C(m*m)+C(l*l))))));r=C(g*p);y=C(m*p);n=C(34028234663852886e22);p=C(l*p);break h}v[d+28>>2]=0;z[d+24>>2]=l;z[d+20>>2]=m;z[d+16>>2]=g}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;g=z[d+280>>2];m=z[d+272>>2];l=z[d+276>>2];n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));if(!(Q>2]=v[d+312>>2];a=v[d+308>>2];v[d+288>>2]=v[d+304>>2];v[d+292>>2]=a;a=v[e+56>>2];J=z[d+284>>2];c=v[d+44>>2];N=c<<2;k=v[e+52>>2];A=z[k+72>>2];n=C(-m);s=C(C(C(z[e+72>>2]*n)-C(z[e+88>>2]*l))-C(z[e+104>>2]*g));G=z[k- -64>>2];q=g;B=C(C(C(z[e+64>>2]*n)-C(z[e+80>>2]*l))-C(z[e+96>>2]*g));x=l;n=C(C(C(z[e+68>>2]*n)-C(z[e+84>>2]*l))-C(z[e+100>>2]*g));M=z[k+68>>2];Z=C(C(A*s)+C(C(G*B)+C(n*M)));U=z[k+88>>2];ca=z[k+80>>2];W=z[k+84>>2];$=C(C(U*s)+C(C(ca*B)+C(n*W)));u=Z>$;ia=Z;Z=z[k+56>>2];X=z[k+48>>2];ha=n;n=z[k+52>>2];s=C(C(Z*s)+C(C(X*B)+C(ha*n)));k=!(ia$);v[N+(d- -64|0)>>2]=k?u?1:2:0;B=z[a+56>>2];$=z[a+40>>2];da=z[a+24>>2];qa=z[a+52>>2];ea=z[a+36>>2];ma=z[a+20>>2];fa=z[a+8>>2];ga=z[a+48>>2];ja=z[a+32>>2];ka=z[a>>2];la=z[a+16>>2];E=v[e+44>>2];ua=z[a+4>>2];va=N+(d+48|0)|0;s=m;N=m>C(0);a=l>C(0);R=g>C(0);v[va>>2]=N|a<<1|R<<2;g=k?u?A:U:Z;l=k?u?G:ca:X;m=k?u?M:W:n;A=C(B+C(C($*g)+C(C(fa*l)+C(da*m))));n=z[E+56>>2];G=R?n:C(-n);n=C(A-G);M=C(ga+C(C(ja*g)+C(C(ka*l)+C(m*la))));B=z[E+48>>2];Z=N?B:C(-B);B=C(M-Z);l=C(qa+C(C(ea*g)+C(C(ua*l)+C(m*ma))));g=z[E+52>>2];m=a?g:C(-g);g=C(l-m);U=C(C(r*n)+C(C(y*B)+C(p*g)));if(U>ba){u=0;if(!L){break e}t[e+215|0]=c;if(!c){break e}a=0;if((c|0)!=1){R=c&-2;E=0;while(1){k=a<<2;S=d- -64|0;t[a+L|0]=v[k+S>>2];Y=d+48|0;t[a+_|0]=v[Y+k>>2];k=a|1;N=k<<2;t[k+L|0]=v[N+S>>2];t[k+_|0]=v[N+Y>>2];a=a+2|0;E=E+2|0;if((R|0)!=(E|0)){continue}break}}if(!(c&1)){break e}c=a<<2;t[a+L|0]=v[c+(d- -64|0)>>2];t[a+_|0]=v[c+(d+48|0)>>2];break e}if(U>C(o*C(.9997749924659729))){m:{if(!L){break m}t[e+215|0]=c;if(!c){break m}a=0;if((c|0)!=1){N=c&-2;E=0;while(1){k=a<<2;R=d- -64|0;t[a+L|0]=v[k+R>>2];S=d+48|0;t[a+_|0]=v[S+k>>2];k=a|1;u=k<<2;t[k+L|0]=v[u+R>>2];t[k+_|0]=v[u+S>>2];a=a+2|0;E=E+2|0;if((N|0)!=(E|0)){continue}break}}if(!(c&1)){break m}k=a<<2;t[a+L|0]=v[k+(d- -64|0)>>2];t[a+_|0]=v[k+(d+48|0)>>2]}z[e+160>>2]=y;v[e+172>>2]=0;z[e+168>>2]=r;z[e+164>>2]=p;JV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,c);g=z[d+16>>2];l=z[d+20>>2];m=z[d+24>>2];v[e+140>>2]=0;z[e+136>>2]=m-C(D*r);z[e+132>>2]=l-C(D*p);z[e+128>>2]=g-C(D*y);g=z[d>>2];l=z[d+4>>2];m=z[d+8>>2];v[e+156>>2]=0;z[e+152>>2]=m+C(H*r);z[e+148>>2]=l+C(H*p);z[e+144>>2]=g+C(H*y);z[e+192>>2]=o-I;u=2;break e}k=c<<4;a=k+(d+144|0)|0;v[a+12>>2]=0;z[a+8>>2]=A;z[a+4>>2]=l;z[a>>2]=M;a=k+(d+80|0)|0;v[a+12>>2]=0;z[a+8>>2]=G;z[a+4>>2]=m;z[a>>2]=Z;a=k+(d+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=n;z[a+4>>2]=g;z[a>>2]=B;v[d+44>>2]=c+1;n:{o:{switch(c-1|0){case 0:n=z[d+216>>2];g=C(z[d+232>>2]-n);p=z[d+208>>2];l=C(z[d+224>>2]-p);r=z[d+212>>2];m=C(z[d+228>>2]-r);y=C(C(g*g)+C(C(l*l)+C(m*m)));if(y<=C(1.1920928955078125e-7)){v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break n}v[d+28>>2]=0;B=g;g=C(F(C(C(C(C(C(-p)*l)-C(m*r))-C(n*g))/y),C(1)));g=g>C(0)?g:C(0);z[d+24>>2]=n+C(B*g);z[d+20>>2]=r+C(m*g);z[d+16>>2]=p+C(l*g);break n;case 1:jY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;case 2:Q_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;default:break o}}v[d+28>>2]=0;z[d+24>>2]=n;z[d+20>>2]=g;z[d+16>>2]=B}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;g=z[d+280>>2];m=z[d+272>>2];l=z[d+276>>2];n=C(K(C(C(g*g)+C(C(m*m)+C(l*l)))));y=C(C(1)/n);r=C(g*y);p=C(l*y);y=C(m*y);if(nQ){continue}break}k=v[d+44>>2];if(!(n>2];Y=d+48|0;t[a+_|0]=v[Y+E>>2];E=a|1;N=E<<2;t[E+L|0]=v[N+S>>2];t[E+_|0]=v[N+Y>>2];a=a+2|0;u=u+2|0;if((R|0)!=(u|0)){continue}break}}if(!(c&1)){break p}c=a<<2;t[a+L|0]=v[c+(d- -64|0)>>2];t[a+_|0]=v[c+(d+48|0)>>2]}v[d+312>>2]=v[d+296>>2];a=v[d+292>>2];v[d+304>>2]=v[d+288>>2];v[d+308>>2]=a;z[d+284>>2]=J;z[d+272>>2]=s;z[d+276>>2]=x;z[d+280>>2]=q;JV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,k);v[e+188>>2]=0;z[e+184>>2]=r;z[e+180>>2]=p;z[e+176>>2]=y;v[e+172>>2]=0;g=C(C(1)/o);l=C(q*g);z[e+168>>2]=l;m=C(x*g);z[e+164>>2]=m;g=C(s*g);z[e+160>>2]=g;n=z[d+16>>2];p=z[d+20>>2];q=z[d+24>>2];v[e+140>>2]=0;z[e+136>>2]=q-C(D*l);z[e+132>>2]=p-C(D*m);z[e+128>>2]=n-C(D*g);n=z[d>>2];p=z[d+4>>2];q=z[d+8>>2];z[e+192>>2]=o-I;v[e+156>>2]=0;z[e+152>>2]=q+C(H*l);z[e+148>>2]=p+C(H*m);z[e+144>>2]=n+C(H*g);u=2;if(o<=I){break e}u=4;break e}if(L){break f}u=5;break e}k=v[d+44>>2]}t[e+215|0]=k;u=5;if(!k){break e}a=0;if((k|0)!=1){R=k&-2;E=0;while(1){c=a<<2;S=d- -64|0;t[a+L|0]=v[c+S>>2];Y=d+48|0;t[a+_|0]=v[Y+c>>2];c=a|1;N=c<<2;t[c+L|0]=v[N+S>>2];t[c+_|0]=v[N+Y>>2];a=a+2|0;E=E+2|0;if((R|0)!=(E|0)){continue}break}}if(!(k&1)){break e}c=a<<2;t[a+L|0]=v[c+(d- -64|0)>>2];t[a+_|0]=v[c+(d+48|0)>>2]}xa=d+320|0;q:{r:{if(u-5|0){break r}v[e+16>>2]=1065353216;a=v[e+28>>2];v[e+8>>2]=v[e+24>>2];v[e+12>>2]=a;a=v[e+20>>2];v[e>>2]=v[e+16>>2];v[e+4>>2]=a;if(K_(pa,j,e+220|0,e+216|0,w[e+215|0],0,e,e+128|0)-5>>>0<=1){break r}v[e+280>>2]=0;v[e+284>>2]=0;v[e+272>>2]=0;v[e+276>>2]=0;g=z[b+232>>2];l=z[b+224>>2];m=z[b+228>>2];v[e+268>>2]=0;n=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(m*m))))));z[e+264>>2]=n*C(-g);z[e+260>>2]=n*C(-m);z[e+256>>2]=n*C(-l);g=C(0);break q}a=v[e+140>>2];v[e+280>>2]=v[e+136>>2];v[e+284>>2]=a;a=v[e+132>>2];v[e+272>>2]=v[e+128>>2];v[e+276>>2]=a;a=v[e+164>>2];v[e+256>>2]=v[e+160>>2];v[e+260>>2]=a;a=v[e+172>>2];v[e+264>>2]=v[e+168>>2];v[e+268>>2]=a;g=z[e+192>>2]}z[b+208>>2]=g>2];v[b+192>>2]=v[e+272>>2];v[b+196>>2]=a;a=v[e+284>>2];v[b+200>>2]=v[e+280>>2];v[b+204>>2]=a;a=v[e+260>>2];v[b+176>>2]=v[e+256>>2];v[b+180>>2]=a;a=v[e+268>>2];v[b+184>>2]=v[e+264>>2];v[b+188>>2]=a}xa=e+288|0;if(f){oa=z[b+208>>2];g=z[b+200>>2];l=z[b+192>>2];m=z[b+196>>2];n=z[b+184>>2];p=z[b+176>>2];o=z[b+180>>2];q=C(C(P*n)+C(C(V*p)+C(O*o)));r=C(-O);y=C(C(C(T*C(C(V*o)+C(p*r)))+C(aa*n))+C(P*q));z[h+8>>2]=y+y;y=C(C(O*q)+C(C(aa*o)+C(T*C(C(P*p)+C(n*na)))));z[h+4>>2]=y+y;s=o;o=C(-P);n=C(C(V*q)+C(C(aa*p)+C(T*C(C(O*n)+C(s*o)))));z[h>>2]=n+n;n=oa>C(0)?oa:C(0);p=C(C(P*g)+C(C(V*l)+C(O*m)));q=C(C(C(T*C(C(V*m)+C(l*r)))+C(aa*g))+C(P*p));z[i+8>>2]=C(wa*n)+C(sa+C(q+q));q=C(C(O*p)+C(C(aa*m)+C(T*C(C(P*l)+C(g*na)))));z[i+4>>2]=C(za*n)+C(ra+C(q+q));g=C(C(V*p)+C(C(aa*l)+C(T*C(C(O*g)+C(m*o)))));z[i>>2]=C(ya*n)+C(ta+C(g+g))}xa=b+320|0;return C(oa)}function SY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=0,A=0,B=C(0),D=C(0),E=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=0,S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=0,ua=C(0),va=C(0),wa=C(0),ya=C(0),za=0,Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=0,Ga=0,Ha=0,Ia=0,Ja=0;k=xa-416|0;xa=k;b=v[b>>2];a=v[a>>2];v[k+72>>2]=0;v[k+76>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;v[k+92>>2]=4;j=z[a+4>>2];l=z[a+8>>2];v[k+140>>2]=0;v[k+124>>2]=0;m=C(l*C(0));z[k+120>>2]=m;z[k+116>>2]=m;m=C(-m);z[k+136>>2]=m;z[k+132>>2]=m;z[k+144>>2]=j;z[k+112>>2]=l;t[k+96|0]=1;z[k+88>>2]=j;z[k+84>>2]=j;z[k+80>>2]=j;z[k+128>>2]=-l;v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;t[k+32|0]=0;v[k+28>>2]=3;j=z[b+8>>2];l=z[b+12>>2];m=z[b+4>>2];v[k+60>>2]=0;z[k+56>>2]=l;z[k+52>>2]=j;z[k+48>>2]=m;j=j>=m?m:j;j=j<=l?j:l;z[k+24>>2]=j*C(.05000000074505806);z[k+20>>2]=j*C(.004999999888241291);z[k+16>>2]=j*C(.009999999776482582);V=z[a+4>>2];v[k+408>>2]=0;v[k+412>>2]=0;v[k+400>>2]=0;v[k+404>>2]=0;qa=z[f+20>>2];u=z[e+20>>2];ra=z[f+24>>2];r=z[e+24>>2];j=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];o=z[c+12>>2];T=z[d+12>>2];U=z[d>>2];sa=z[f+16>>2];B=z[e+16>>2];P=z[d+4>>2];Q=z[d+8>>2];v[k+396>>2]=0;v[k+380>>2]=0;v[k+364>>2]=0;ha=C(-U);n=C(B-sa);p=C(u-qa);q=C(r-ra);s=C(C(C(ha*n)-C(p*P))-C(Q*q));Z=C(C(T*T)+C(-.5));D=C(C(C(T*C(C(P*n)-C(U*p)))+C(Z*q))-C(Q*s));z[k+392>>2]=D+D;D=C(C(C(Z*p)+C(T*C(C(U*q)-C(Q*n))))-C(P*s));z[k+388>>2]=D+D;f=k+384|0;n=C(C(C(Z*n)+C(T*C(C(Q*p)-C(P*q))))-C(U*s));z[f>>2]=n+n;p=C(C(C(m*Q)-C(P*j))+C(C(l*T)-C(o*U)));n=C(p+p);q=C(C(C(j*U)-C(Q*l))+C(C(m*T)-C(o*P)));s=C(q+q);D=C(C(1)-C(p*n));G=C(q*s);z[k+376>>2]=D-G;p=C(C(C(l*P)-C(U*m))+C(C(j*T)-C(o*Q)));O=C(p*s);j=C(C(o*T)-C(C(C(ha*l)-C(m*P))-C(Q*j)));l=C(j*n);z[k+372>>2]=O-l;m=C(p*n);o=C(j*s);z[k+368>>2]=m+o;z[k+360>>2]=O+l;l=C(p+p);p=C(p*l);z[k+356>>2]=D-p;n=C(q*n);j=C(j*l);z[k+352>>2]=n-j;v[k+348>>2]=0;z[k+344>>2]=m-o;z[k+340>>2]=n+j;z[k+336>>2]=C(C(1)-G)-p;m=z[d+20>>2];o=z[c+20>>2];j=z[d+24>>2];l=z[c+24>>2];n=z[d+16>>2];p=z[c+16>>2];v[k+332>>2]=0;va=C(l-r);j=C(C(j-ra)-va);wa=C(p-B);l=C(C(n-sa)-wa);ya=C(o-u);m=C(C(m-qa)-ya);o=C(C(Q*j)+C(C(U*l)+C(P*m)));n=C(C(C(Z*j)-C(T*C(C(U*m)-C(P*l))))+C(Q*o));z[k+328>>2]=n+n;n=C(C(P*o)+C(C(Z*m)-C(T*C(C(Q*l)-C(j*U)))));z[k+324>>2]=n+n;j=C(C(U*o)+C(C(Z*l)-C(T*C(C(P*j)-C(m*Q)))));z[k+320>>2]=j+j;v[k+256>>2]=0;v[k+176>>2]=142372;v[k+184>>2]=k+336;v[k+180>>2]=k- -64;a=v[k+356>>2];v[k+208>>2]=v[k+352>>2];v[k+212>>2]=a;a=v[k+364>>2];v[k+216>>2]=v[k+360>>2];v[k+220>>2]=a;a=v[k+348>>2];v[k+200>>2]=v[k+344>>2];v[k+204>>2]=a;a=v[k+372>>2];v[k+224>>2]=v[k+368>>2];v[k+228>>2]=a;a=v[k+380>>2];v[k+232>>2]=v[k+376>>2];v[k+236>>2]=a;a=v[f+4>>2];v[k+240>>2]=v[f>>2];v[k+244>>2]=a;a=v[k+396>>2];v[k+248>>2]=v[k+392>>2];v[k+252>>2]=a;a=v[k+340>>2];v[k+192>>2]=v[k+336>>2];v[k+196>>2]=a;j=z[k+196>>2];z[k+196>>2]=z[k+208>>2];l=z[k+216>>2];m=z[k+200>>2];z[k+200>>2]=z[k+224>>2];z[k+216>>2]=z[k+228>>2];z[k+224>>2]=m;z[k+228>>2]=l;z[k+208>>2]=j;v[k+168>>2]=141808;v[k+172>>2]=k;ia=C(34028234663852886e22);d=xa-288|0;xa=d;V=C(C(V+g)+C(0));a=xa-272|0;xa=a;v[a+264>>2]=0;v[a+268>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;D=z[k+408>>2];O=z[k+404>>2];G=z[k+400>>2];$=z[k+328>>2];L=z[k+324>>2];E=z[k+320>>2];v[a+240>>2]=1;ta=k+168|0;R=ta;A=v[R+4>>2];m=z[A+52>>2];ja=k+176|0;b=ja;c=v[b+8>>2];J=z[c+52>>2];I=z[c+36>>2];_=z[c+20>>2];o=z[A+56>>2];M=z[c+56>>2];W=z[c+40>>2];X=z[c+24>>2];e=v[b+4>>2];n=z[e+56>>2];p=z[e+52>>2];q=z[e+72>>2];aa=z[b+56>>2];ba=z[b+24>>2];ca=z[b+40>>2];da=z[b+48>>2];fa=z[b+32>>2];s=z[e+68>>2];ka=z[b+52>>2];la=z[b+20>>2];ma=z[b+36>>2];B=z[A+48>>2];na=z[c+48>>2];oa=z[c+32>>2];Aa=z[c>>2];Ba=z[c+16>>2];Ca=z[c+4>>2];Da=z[c+8>>2];u=z[e+48>>2];r=z[e+64>>2];Ea=z[b+16>>2];g=z[f+8>>2];j=z[f>>2];l=z[f+4>>2];v[a+196>>2]=0;v[a+200>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+220>>2]=0;v[a+224>>2]=0;v[a+228>>2]=0;v[a+232>>2]=0;e=0;v[a+236>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;ga=M;ua=W;ea=n;c=C(C(g*g)+C(C(j*j)+C(l*l)))>C(1.1920928955078125e-7);j=c?j:C(1);M=j;n=c?g:C(0);g=c?l:C(0);j=C(C(1)/C(K(C(C(n*n)+C(C(j*j)+C(g*g))))));M=C(M*j);l=C(-M);g=C(g*j);j=C(n*j);n=C(C(C(ba*l)-C(ca*g))-C(aa*j));W=C(C(C(Ea*l)-C(fa*g))-C(da*j));l=C(C(C(la*l)-C(ma*g))-C(ka*j));c=C(C(ea*n)+C(C(u*W)+C(p*l)))>C(C(q*n)+C(C(r*W)+C(l*s)));l=c?ea:q;n=c?u:r;p=c?p:s;s=C(ga+C(C(ua*l)+C(C(Da*n)+C(X*p))));j=j>C(0)?o:C(-o);u=C(s-j);z[a+184>>2]=u;o=C(J+C(C(I*l)+C(C(Ca*n)+C(p*_))));g=g>C(0)?m:C(-m);r=C(o-g);z[a+180>>2]=r;l=C(na+C(C(oa*l)+C(C(Aa*n)+C(p*Ba))));m=M>C(0)?B:C(-B);q=C(l-m);z[a+176>>2]=q;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+152>>2]=0;v[a+156>>2]=0;v[a+160>>2]=0;v[a+164>>2]=0;v[a+168>>2]=0;v[a+172>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;z[a+120>>2]=s;z[a+116>>2]=o;z[a+112>>2]=l;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;z[a+56>>2]=j;z[a+52>>2]=g;z[a+48>>2]=m;g=C(-u);j=C(-r);l=C(-q);B=C(C(u*u)+C(C(q*q)+C(r*r)));m=z[A+24>>2];m=C((mda)){m=l;n=j;p=g;D=C(0);s=q;o=r;V=u;break b}_=C(m+V);fa=C(_*_);G=C(C(E*C(0))+G);O=C(C(L*C(0))+O);$=C(C($*C(0))+D);D=C(0);p=g;n=j;m=l;while(1){s=q;o=r;V=u;r=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));q=C(l*r);c=v[b+4>>2];L=z[c+56>>2];u=C(g*r);r=C(j*r);E=C(C(z[b+56>>2]*u)+C(C(q*z[b+24>>2])+C(r*z[b+40>>2])));J=z[c+48>>2];I=C(C(z[b+48>>2]*u)+C(C(q*z[b+16>>2])+C(r*z[b+32>>2])));M=C(C(z[b+52>>2]*u)+C(C(q*z[b+20>>2])+C(r*z[b+36>>2])));W=z[c+52>>2];ea=C(C(L*E)+C(C(J*I)+C(M*W)));X=z[c+72>>2];ga=C(X*E);E=z[c+64>>2];ua=C(E*I);I=z[c+68>>2];e=ea>C(ga+C(ua+C(M*I)));c=v[b+8>>2];L=e?L:X;E=e?J:E;M=e?W:I;W=C(z[c+48>>2]+C(C(z[c+32>>2]*L)+C(C(z[c>>2]*E)+C(M*z[c+16>>2]))));e=v[R+4>>2];J=z[e+48>>2];ka=q>2]+C(C(z[c+36>>2]*L)+C(C(z[c+4>>2]*E)+C(M*z[c+20>>2]))));I=z[e+52>>2];la=r>2]+C(C(z[c+40>>2]*L)+C(C(z[c+8>>2]*E)+C(M*z[c+24>>2]))));L=z[e+56>>2];L=uC(0)){e=0;na=z[k+328>>2];ga=C(u*na);u=z[k+320>>2];ea=r;r=z[k+324>>2];oa=C(ga+C(C(q*u)+C(ea*r)));if(oa>=C(0)){break a}q=D;D=C(q-C(ma/oa));if(D>q){if(D>C(1)){break a}p=z[k+408>>2];n=z[k+404>>2];m=z[k+400>>2];v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;q=C(m+C(u*D));m=C(q-G);B=C(m+z[a+80>>2]);z[a+80>>2]=B;u=C(n+C(r*D));n=C(u-O);G=C(n+z[a+84>>2]);z[a+84>>2]=G;r=C(p+C(na*D));p=C(r-$);O=C(p+z[a+88>>2]);z[a+88>>2]=O;$=C(m+z[a+64>>2]);z[a+64>>2]=$;E=C(n+z[a+68>>2]);z[a+68>>2]=E;J=C(p+z[a+72>>2]);z[a+72>>2]=J;m=C(m+z[a+48>>2]);z[a+48>>2]=m;n=C(n+z[a+52>>2]);z[a+52>>2]=n;p=C(p+z[a+56>>2]);z[a+56>>2]=p;I=z[a+112>>2];X=z[a+116>>2];ba=z[a+120>>2];v[a+188>>2]=0;z[a+184>>2]=ba-p;z[a+180>>2]=X-n;z[a+176>>2]=I-m;m=z[a+128>>2];n=z[a+132>>2];p=z[a+136>>2];v[a+204>>2]=0;z[a+200>>2]=p-J;z[a+196>>2]=n-E;z[a+192>>2]=m-$;m=z[a+144>>2];n=z[a+148>>2];p=z[a+152>>2];v[a+220>>2]=0;z[a+216>>2]=p-O;z[a+212>>2]=n-G;z[a+208>>2]=m-B;ca=C(L+r);E=C(M-ca);ba=C(la+u);I=C(aa-ba);X=C(ka+q);J=C(W-X);m=l;n=j;p=g;G=q;O=u;$=r;g=C(34028234663852886e22)}else{g=B}}else{g=B}L=g;e=v[a+240>>2];A=e<<4;c=A+(a+112|0)|0;v[c+12>>2]=0;z[c+8>>2]=M;z[c+4>>2]=aa;z[c>>2]=W;c=A+(a+48|0)|0;v[c+12>>2]=0;z[c+8>>2]=ca;z[c+4>>2]=ba;z[c>>2]=X;c=A+(a+176|0)|0;v[c+12>>2]=0;z[c+8>>2]=E;z[c+4>>2]=I;z[c>>2]=J;v[a+240>>2]=e+1;c:{d:{switch(e-1|0){case 0:q=z[a+184>>2];g=C(z[a+200>>2]-q);u=z[a+176>>2];j=C(z[a+192>>2]-u);r=z[a+180>>2];l=C(z[a+196>>2]-r);B=C(C(g*g)+C(C(j*j)+C(l*l)));if(B<=C(1.1920928955078125e-7)){v[a+240>>2]=1;c=v[a+180>>2];v[a+32>>2]=v[a+176>>2];v[a+36>>2]=c;c=v[a+188>>2];v[a+40>>2]=v[a+184>>2];v[a+44>>2]=c;break c}M=g;g=C(F(C(C(C(C(C(-u)*j)-C(l*r))-C(q*g))/B),C(1)));g=g>C(0)?g:C(0);z[a+40>>2]=q+C(M*g);z[a+36>>2]=r+C(l*g);z[a+32>>2]=u+C(j*g);break c;case 1:KV(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;case 2:O_(a+32|0,a+176|0,a+112|0,a+48|0,a+240|0);break c;default:break d}}z[a+40>>2]=E;z[a+36>>2]=I;z[a+32>>2]=J}u=z[a+40>>2];g=C(-u);r=z[a+36>>2];j=C(-r);q=z[a+32>>2];l=C(-q);B=C(C(u*u)+C(C(q*q)+C(r*r)));if(fa>2]+32|0];E=C(0);G=C(0);A=!(B>da)|e;g=A?p:g;l=A?m:l;j=A?n:j;m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!(m<=C(1.1920928955078125e-7))){n=g;g=C(C(1)/m);pa=C(n*g);E=C(j*g);G=C(l*g)}v[d+268>>2]=0;z[d+264>>2]=-pa;z[d+260>>2]=-E;z[d+256>>2]=-G;z[d+240>>2]=D;v[d+252>>2]=v[a+252>>2];A=v[a+248>>2];v[d+244>>2]=v[a+244>>2];v[d+248>>2]=A;v[a+44>>2]=0;z[a+40>>2]=e?V:u;z[a+36>>2]=e?o:r;z[a+32>>2]=e?s:q;e=v[a+268>>2];R=v[a+264>>2];v[a+24>>2]=R;v[a+28>>2]=e;A=v[a+260>>2];x=v[a+256>>2];v[a+16>>2]=x;v[a+20>>2]=A;v[a+8>>2]=R;v[a+12>>2]=e;v[a>>2]=x;v[a+4>>2]=A;JV(a+176|0,a+112|0,a+48|0,a+32|0,a+16|0,a,v[a+240>>2]);g=z[v[b+4>>2]+16>>2];j=z[a+16>>2];l=z[a+20>>2];m=z[a+24>>2];v[d+284>>2]=0;z[d+280>>2]=m+(c?C(pa*g):C(-0));z[d+276>>2]=l+(c?C(E*g):C(-0));z[d+272>>2]=j+(c?C(G*g):C(-0));e=1}xa=a+272|0;if(e){a=v[d+244>>2];v[k+304>>2]=v[d+240>>2];v[k+308>>2]=a;a=v[d+252>>2];v[k+312>>2]=v[d+248>>2];v[k+316>>2]=a;if(z[d+240>>2]==C(0)){b=v[ja+4>>2];c=v[ta+4>>2];z[d+224>>2]=C(z[b+16>>2]+z[c+16>>2])*C(100);t[d+215|0]=0;v[d+168>>2]=0;v[d+172>>2]=0;v[d+160>>2]=0;v[d+164>>2]=0;v[d+152>>2]=0;v[d+156>>2]=0;v[d+144>>2]=0;v[d+148>>2]=0;v[d+136>>2]=0;v[d+140>>2]=0;v[d+128>>2]=0;v[d+132>>2]=0;v[d+192>>2]=0;a=v[ja+8>>2];v[d+56>>2]=a;v[d+48>>2]=142372;v[d+52>>2]=b;b=v[a+12>>2];v[d+72>>2]=v[a+8>>2];v[d+76>>2]=b;b=v[a+20>>2];v[d+80>>2]=v[a+16>>2];v[d+84>>2]=b;b=v[a+28>>2];v[d+88>>2]=v[a+24>>2];v[d+92>>2]=b;b=v[a+36>>2];v[d+96>>2]=v[a+32>>2];v[d+100>>2]=b;b=v[a+44>>2];v[d+104>>2]=v[a+40>>2];v[d+108>>2]=b;b=v[a+52>>2];v[d+112>>2]=v[a+48>>2];v[d+116>>2]=b;b=v[a+60>>2];v[d+120>>2]=v[a+56>>2];v[d+124>>2]=b;b=v[a+4>>2];v[d+64>>2]=v[a>>2];v[d+68>>2]=b;g=z[d+68>>2];z[d+68>>2]=z[d+80>>2];j=z[d+88>>2];l=z[d+72>>2];z[d+72>>2]=z[d+96>>2];z[d+80>>2]=g;z[d+96>>2]=l;z[d+88>>2]=z[d+100>>2];z[d+100>>2]=j;v[d+40>>2]=141808;v[d+44>>2]=c;A=d+220|0;R=d+216|0;c=xa-320|0;xa=c;y=v[d+44>>2];g=z[y+20>>2];a=v[d+52>>2];j=z[a+20>>2];p=z[d+224>>2];Y=w[a+32|0];u=z[a+16>>2];Fa=w[y+32|0];r=z[y+16>>2];v[c+44>>2]=0;$=C((g>2];a=0;f=0;while(1){b=f<<2;N=w[f+A|0];v[b+(c- -64|0)>>2]=N;S=w[f+R|0];v[b+(c+48|0)>>2]=S;b=(1-N<<4)+Ga|0;g=z[b+8>>2];j=z[b>>2];l=z[b+4>>2];b=(S<<4)+101152|0;Ha=v[b>>2];Ia=v[b+4>>2];Ja=v[b+8>>2];q=z[x+48>>2];s=z[x+32>>2];B=z[x>>2];V=z[x+16>>2];D=z[x+52>>2];G=z[x+36>>2];O=z[x+4>>2];L=z[x+20>>2];E=z[x+56>>2];J=z[x+40>>2];I=z[x+8>>2];_=z[x+24>>2];m=z[y+48>>2];o=z[y+52>>2];n=z[y+56>>2];b=a;H=a<<4;N=H+(c+144|0)|0;v[N+12>>2]=0;S=H+(c+80|0)|0;v[S+12>>2]=0;H=H+(c+208|0)|0;v[H+12>>2]=0;n=Ja?n:C(-n);z[S+8>>2]=n;o=Ia?o:C(-o);z[S+4>>2]=o;m=Ha?m:C(-m);z[S>>2]=m;E=C(E+C(C(J*g)+C(C(I*j)+C(l*_))));z[N+8>>2]=E;D=C(D+C(C(G*g)+C(C(O*j)+C(l*L))));z[N+4>>2]=D;g=C(q+C(C(s*g)+C(C(B*j)+C(l*V))));z[N>>2]=g;j=C(E-n);z[H+8>>2]=j;l=C(D-o);z[H+4>>2]=l;g=C(g-m);z[H>>2]=g;a=a+1|0;v[c+44>>2]=a;f=f+1|0;if((za|0)!=(f|0)){continue}break}k:{l:{switch(b-1|0){case 0:m=z[c+216>>2];g=C(z[c+232>>2]-m);o=z[c+208>>2];j=C(z[c+224>>2]-o);n=z[c+212>>2];l=C(z[c+228>>2]-n);q=C(C(g*g)+C(C(j*j)+C(l*l)));if(!(q<=C(1.1920928955078125e-7))){break k}v[c+44>>2]=1;a=v[c+212>>2];v[c+16>>2]=v[c+208>>2];v[c+20>>2]=a;a=v[c+220>>2];v[c+24>>2]=v[c+216>>2];v[c+28>>2]=a;break i;case 1:jY(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break i;case 2:break l;default:break j}}Q_(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break i}v[c+28>>2]=0;s=g;g=C(F(C(C(C(C(C(-o)*j)-C(l*n))-C(m*g))/q),C(1)));g=g>C(0)?g:C(0);z[c+24>>2]=m+C(s*g);z[c+20>>2]=n+C(l*g);z[c+16>>2]=o+C(j*g);break i}g=z[f+8>>2];l=z[f>>2];j=z[f+4>>2];v[c+284>>2]=0;a=C(C(g*g)+C(C(l*l)+C(j*j)))>C(0);g=a?g:C(0);z[c+280>>2]=g;j=a?j:C(0);z[c+276>>2]=j;l=a?l:C(1);z[c+272>>2]=l;o=C(C(1)/C(K(C(C(g*g)+C(C(l*l)+C(j*j))))));q=C(g*o);s=C(l*o);m=C(34028234663852886e22);o=C(j*o);break h}v[c+28>>2]=0;z[c+24>>2]=j;z[c+20>>2]=l;z[c+16>>2]=g}a=v[c+20>>2];v[c+272>>2]=v[c+16>>2];v[c+276>>2]=a;a=v[c+28>>2];v[c+280>>2]=v[c+24>>2];v[c+284>>2]=a;g=z[c+280>>2];l=z[c+272>>2];j=z[c+276>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));if(!($>2]=v[c+312>>2];a=v[c+308>>2];v[c+288>>2]=v[c+304>>2];v[c+292>>2]=a;a=v[d+56>>2];E=z[c+284>>2];f=v[c+44>>2];y=f<<2;b=v[d+52>>2];N=b+56|0;m=C(-l);r=C(C(C(z[d+72>>2]*m)-C(z[d+88>>2]*j))-C(z[d+104>>2]*g));p=g;G=C(C(C(z[d+64>>2]*m)-C(z[d+80>>2]*j))-C(z[d+96>>2]*g));u=j;m=C(C(C(z[d+68>>2]*m)-C(z[d+84>>2]*j))-C(z[d+100>>2]*g));S=b+52|0;H=b+72|0;Y=b+68|0;x=C(C(z[N>>2]*r)+C(C(z[b+48>>2]*G)+C(m*z[S>>2])))>C(C(z[H>>2]*r)+C(C(z[b+64>>2]*G)+C(m*z[Y>>2])));v[y+(c- -64|0)>>2]=x;m=z[(x?N:H)>>2];G=z[(x?b+48|0:b- -64|0)>>2];O=z[(x?S:Y)>>2];J=z[a+56>>2];I=z[a+40>>2];_=z[a+24>>2];M=z[a+52>>2];W=z[a+36>>2];X=z[a+20>>2];aa=z[a+8>>2];ba=z[a+48>>2];ca=z[a+32>>2];pa=z[a>>2];da=z[a+16>>2];b=v[d+44>>2];fa=z[a+4>>2];H=y+(c+48|0)|0;r=l;x=l>C(0);a=j>C(0);y=g>C(0);v[H>>2]=x|a<<1|y<<2;J=C(J+C(C(I*m)+C(C(aa*G)+C(O*_))));g=z[b+56>>2];I=y?g:C(-g);g=C(J-I);_=C(ba+C(C(ca*m)+C(C(pa*G)+C(O*da))));j=z[b+48>>2];aa=x?j:C(-j);j=C(_-aa);m=C(M+C(C(W*m)+C(C(fa*G)+C(O*X))));l=z[b+52>>2];G=a?l:C(-l);l=C(m-G);O=C(C(q*g)+C(C(s*j)+C(o*l)));if(O>L){a=0;if(!A){break e}t[d+215|0]=f;if(!f){break e}b=0;if((f|0)!=1){S=f&-2;x=0;while(1){y=b<<2;H=c- -64|0;t[b+A|0]=v[y+H>>2];Y=c+48|0;t[b+R|0]=v[Y+y>>2];y=b|1;N=y<<2;t[A+y|0]=v[N+H>>2];t[y+R|0]=v[N+Y>>2];b=b+2|0;x=x+2|0;if((S|0)!=(x|0)){continue}break}}if(!(f&1)){break e}f=b<<2;t[b+A|0]=v[f+(c- -64|0)>>2];t[b+R|0]=v[f+(c+48|0)>>2];break e}if(O>C(n*C(.9997749924659729))){m:{if(!A){break m}t[d+215|0]=f;if(!f){break m}b=0;if((f|0)!=1){N=f&-2;x=0;while(1){a=b<<2;S=c- -64|0;t[b+A|0]=v[a+S>>2];H=c+48|0;t[b+R|0]=v[H+a>>2];a=b|1;y=a<<2;t[a+A|0]=v[y+S>>2];t[a+R|0]=v[y+H>>2];b=b+2|0;x=x+2|0;if((N|0)!=(x|0)){continue}break}}if(!(f&1)){break m}a=b<<2;t[b+A|0]=v[a+(c- -64|0)>>2];t[b+R|0]=v[a+(c+48|0)>>2]}z[d+160>>2]=s;v[d+172>>2]=0;z[d+168>>2]=q;z[d+164>>2]=o;JV(c+208|0,c+144|0,c+80|0,c+272|0,c+16|0,c,f);g=z[c+16>>2];j=z[c+20>>2];l=z[c+24>>2];v[d+140>>2]=0;z[d+136>>2]=l-C(B*q);z[d+132>>2]=j-C(B*o);z[d+128>>2]=g-C(B*s);g=z[c>>2];j=z[c+4>>2];l=z[c+8>>2];v[d+156>>2]=0;z[d+152>>2]=l+C(V*q);z[d+148>>2]=j+C(V*o);z[d+144>>2]=g+C(V*s);z[d+192>>2]=n-D;a=2;break e}b=f<<4;a=b+(c+144|0)|0;v[a+12>>2]=0;z[a+8>>2]=J;z[a+4>>2]=m;z[a>>2]=_;a=b+(c+80|0)|0;v[a+12>>2]=0;z[a+8>>2]=I;z[a+4>>2]=G;z[a>>2]=aa;a=b+(c+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=g;z[a+4>>2]=l;z[a>>2]=j;v[c+44>>2]=f+1;n:{o:{switch(f-1|0){case 0:m=z[c+216>>2];g=C(z[c+232>>2]-m);o=z[c+208>>2];j=C(z[c+224>>2]-o);q=z[c+212>>2];l=C(z[c+228>>2]-q);s=C(C(g*g)+C(C(j*j)+C(l*l)));if(s<=C(1.1920928955078125e-7)){v[c+44>>2]=1;a=v[c+212>>2];v[c+16>>2]=v[c+208>>2];v[c+20>>2]=a;a=v[c+220>>2];v[c+24>>2]=v[c+216>>2];v[c+28>>2]=a;break n}v[c+28>>2]=0;G=g;g=C(F(C(C(C(C(C(-o)*j)-C(l*q))-C(m*g))/s),C(1)));g=g>C(0)?g:C(0);z[c+24>>2]=m+C(G*g);z[c+20>>2]=q+C(l*g);z[c+16>>2]=o+C(j*g);break n;case 1:jY(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break n;case 2:Q_(c+16|0,c+208|0,c+144|0,c+80|0,c- -64|0,c+48|0,c+44|0);break n;default:break o}}v[c+28>>2]=0;z[c+24>>2]=g;z[c+20>>2]=l;z[c+16>>2]=j}a=v[c+20>>2];v[c+272>>2]=v[c+16>>2];v[c+276>>2]=a;a=v[c+28>>2];v[c+280>>2]=v[c+24>>2];v[c+284>>2]=a;g=z[c+280>>2];l=z[c+272>>2];j=z[c+276>>2];m=C(K(C(C(g*g)+C(C(l*l)+C(j*j)))));s=C(C(1)/m);q=C(g*s);o=C(j*s);s=C(l*s);if(m$){continue}break}f=v[c+44>>2];if(!(m>2];Y=c+48|0;t[b+R|0]=v[Y+y>>2];y=b|1;N=y<<2;t[A+y|0]=v[N+H>>2];t[y+R|0]=v[N+Y>>2];b=b+2|0;a=a+2|0;if((S|0)!=(a|0)){continue}break}}if(!(x&1)){break p}a=b<<2;t[b+A|0]=v[a+(c- -64|0)>>2];t[b+R|0]=v[a+(c+48|0)>>2]}v[c+312>>2]=v[c+296>>2];a=v[c+292>>2];v[c+304>>2]=v[c+288>>2];v[c+308>>2]=a;z[c+284>>2]=E;z[c+272>>2]=r;z[c+276>>2]=u;z[c+280>>2]=p;JV(c+208|0,c+144|0,c+80|0,c+272|0,c+16|0,c,f);v[d+188>>2]=0;z[d+184>>2]=q;z[d+180>>2]=o;z[d+176>>2]=s;v[d+172>>2]=0;g=C(C(1)/n);j=C(p*g);z[d+168>>2]=j;l=C(u*g);z[d+164>>2]=l;g=C(r*g);z[d+160>>2]=g;m=z[c+16>>2];o=z[c+20>>2];p=z[c+24>>2];v[d+140>>2]=0;z[d+136>>2]=p-C(B*j);z[d+132>>2]=o-C(B*l);z[d+128>>2]=m-C(B*g);m=z[c>>2];o=z[c+4>>2];p=z[c+8>>2];z[d+192>>2]=n-D;v[d+156>>2]=0;z[d+152>>2]=p+C(V*j);z[d+148>>2]=o+C(V*l);z[d+144>>2]=m+C(V*g);a=2;if(n<=D){break e}a=4;break e}if(A){break f}a=5;break e}f=v[c+44>>2]}t[d+215|0]=f;a=5;if(!f){break e}b=0;if((f|0)!=1){S=f&-2;x=0;while(1){y=b<<2;H=c- -64|0;t[b+A|0]=v[y+H>>2];Y=c+48|0;t[b+R|0]=v[Y+y>>2];y=b|1;N=y<<2;t[A+y|0]=v[N+H>>2];t[y+R|0]=v[N+Y>>2];b=b+2|0;x=x+2|0;if((S|0)!=(x|0)){continue}break}}if(!(f&1)){break e}f=b<<2;t[b+A|0]=v[f+(c- -64|0)>>2];t[b+R|0]=v[f+(c+48|0)>>2]}xa=c+320|0;q:{r:{if(a-5|0){break r}v[d+16>>2]=1065353216;a=v[d+28>>2];v[d+8>>2]=v[d+24>>2];v[d+12>>2]=a;a=v[d+20>>2];v[d>>2]=v[d+16>>2];v[d+4>>2]=a;if(K_(ja,ta,d+220|0,d+216|0,w[d+215|0],0,d,d+128|0)-5>>>0<=1){break r}v[d+280>>2]=0;v[d+284>>2]=0;v[d+272>>2]=0;v[d+276>>2]=0;g=z[k+328>>2];j=z[k+320>>2];l=z[k+324>>2];v[d+268>>2]=0;m=C(C(1)/C(K(C(C(g*g)+C(C(j*j)+C(l*l))))));z[d+264>>2]=m*C(-g);z[d+260>>2]=m*C(-l);z[d+256>>2]=m*C(-j);g=C(0);break q}a=v[d+140>>2];v[d+280>>2]=v[d+136>>2];v[d+284>>2]=a;a=v[d+132>>2];v[d+272>>2]=v[d+128>>2];v[d+276>>2]=a;a=v[d+164>>2];v[d+256>>2]=v[d+160>>2];v[d+260>>2]=a;a=v[d+172>>2];v[d+264>>2]=v[d+168>>2];v[d+268>>2]=a;g=z[d+192>>2]}z[k+304>>2]=g>2];v[k+288>>2]=v[d+272>>2];v[k+292>>2]=a;a=v[d+284>>2];v[k+296>>2]=v[d+280>>2];v[k+300>>2]=a;a=v[d+260>>2];v[k+272>>2]=v[d+256>>2];v[k+276>>2]=a;a=v[d+268>>2];v[k+280>>2]=v[d+264>>2];v[k+284>>2]=a}xa=d+288|0;if(e){ia=z[k+304>>2];g=z[k+296>>2];j=z[k+288>>2];l=z[k+292>>2];m=z[k+280>>2];o=z[k+272>>2];n=z[k+276>>2];p=C(C(Q*m)+C(C(U*o)+C(P*n)));q=C(-P);s=C(C(C(T*C(C(U*n)+C(o*q)))+C(Z*m))+C(Q*p));z[h+8>>2]=s+s;s=C(C(P*p)+C(C(Z*n)+C(T*C(C(Q*o)+C(m*ha)))));z[h+4>>2]=s+s;r=n;n=C(-Q);m=C(C(U*p)+C(C(Z*o)+C(T*C(C(P*m)+C(r*n)))));z[h>>2]=m+m;m=ia>C(0)?ia:C(0);o=C(C(Q*g)+C(C(U*j)+C(P*l)));p=C(C(C(T*C(C(U*l)+C(j*q)))+C(Z*g))+C(Q*o));z[i+8>>2]=C(va*m)+C(ra+C(p+p));p=C(C(P*o)+C(C(Z*l)+C(T*C(C(Q*j)+C(g*ha)))));z[i+4>>2]=C(ya*m)+C(qa+C(p+p));g=C(C(U*o)+C(C(Z*j)+C(T*C(C(P*g)+C(l*n)))));z[i>>2]=C(wa*m)+C(sa+C(g+g))}xa=k+416|0;return C(ia)}function zz(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,A=0,D=0,E=0,F=0,G=0,H=C(0),I=C(0),J=0,K=0,L=0,M=0,N=0,O=0;A=xa-32|0;xa=A;b=v[a+28>>2];c=v[b+336>>2];f=v[c>>2];if(f){v[c>>2]=v[f>>2]}if(!f){c=v[37696];d=c+12|0;d=(K=d,L=12195,M=Ba[v[v[c>>2]+20>>2]](c)|0?26947:63804,N=19395,O=82,J=v[v[d>>2]+8>>2],Ba[J](K|0,L|0,M|0,N|0,O|0)|0);c=d+19&-16;v[c-4>>2]=c-d;f=hB(c,v[b+340>>2])}c=v[a+32>>2];v[c>>2]=f;v[f+12092>>2]=0;v[f+12112>>2]=0;v[f+12116>>2]=0;v[f+11968>>2]=0;v[f+12128>>2]=0;v[f+11956>>2]=0;v[f+11868>>2]=0;v[f+11872>>2]=0;b=f+11876|0;v[b>>2]=0;v[b+4>>2]=0;b=f+11884|0;v[b>>2]=0;v[b+4>>2]=0;v[f+12140>>2]=v[f+11976>>2];b=v[a+68>>2];v[f+11952>>2]=b;d=v[a+72>>2];v[f+12132>>2]=b;v[f+11960>>2]=d;v[f+11972>>2]=v[a+76>>2];v[f+11964>>2]=v[a+80>>2];v[f+11940>>2]=v[a+84>>2];v[f+11928>>2]=v[a+88>>2];v[f+11932>>2]=v[a+36>>2];v[f+11936>>2]=v[a+40>>2];v[f+11944>>2]=v[a+60>>2];v[f+11948>>2]=v[a- -64>>2];iB(f,v[v[a+28>>2]+112>>2]?v[c+12>>2]:0,v[c+8>>2]&2147483647);k=v[a+52>>2];c=v[a+100>>2];b=v[f+11948>>2];d=v[f+11944>>2];h=v[f+11932>>2];n=v[f+11928>>2];g=v[a+56>>2];if(g){i=v[f+11936>>2];while(1){f=v[v[c+256>>2]+B(v[k+(j<<2)>>2],44)>>2];if(f>>>0<=4294967167){while(1){m=f>>>7|0;f=v[c+184>>2]+B(m,24)|0;a:{if(w[f+5|0]==1){v[i+(e<<2)>>2]=v[f+20>>2];e=e+1|0;break a}v[b+(l<<2)>>2]=m;l=l+1|0}f=v[f+8>>2];if(f>>>0<4294967168){continue}break}}j=j+1|0;if((g|0)!=(j|0)){continue}break}}if(w[a+116|0]){Az(b,l)}if(l){f=0;while(1){e=f<<2;i=v[e+b>>2]&33554431;j=v[(v[c+184>>2]+B(i,24)|0)+20>>2];v[e+h>>2]=j;v[e+n>>2]=v[j+36>>2];v[d+(v[v[c+196>>2]+(i<<2)>>2]<<2)>>2]=f;f=f+1|0;if((l|0)!=(f|0)){continue}break}}n=v[a+48>>2];b:{if(!g){l=0;break b}l=0;e=0;while(1){f=v[(v[c+256>>2]+B(v[k+(e<<2)>>2],44)|0)+20>>2];if((f|0)!=-1){while(1){j=v[c+228>>2];b=(f>>>0)/(j>>>0)|0;m=f-B(b,j)|0;o=v[v[c+208>>2]+(b<<2)>>2];j=v[a+100>>2];h=v[j+148>>2];b=(f>>>0)/(h>>>0)|0;i=v[v[v[j+128>>2]+(b<<2)>>2]+(f-B(b,h)<<2)>>2];c:{if(!i){break c}b=v[c+616>>2];h=v[b>>2];f=f<<1;j=f|1;b=v[b+20>>2];r=(j>>>0)/(b>>>0)|0;j=v[v[h+(r<<2)>>2]+(j-B(b,r)<<2)>>2];r=(f>>>0)/(b>>>0)|0;f=v[v[h+(r<<2)>>2]+(f-B(b,r)<<2)>>2];b=n+(l<<4)|0;v[b+12>>2]=i;h=f>>>7|0;i=v[c+184>>2]+B(h,24)|0;d:{if(w[i+5|0]==1){h=v[i+20>>2];Ba[v[v[h>>2]+188>>2]](h,f>>>1&63,b,b+8|0);break d}if(w[i+4|0]&4){t[b+8|0]=1;v[b>>2]=v[v[c+196>>2]+(h<<2)>>2];break d}t[b+8|0]=0;v[b>>2]=v[d+(v[v[c+196>>2]+(h<<2)>>2]<<2)>>2]}l=l+1|0;if(j>>>0>=4294967168){t[b+9|0]=3;break c}f=j>>>7|0;h=v[c+184>>2]+B(f,24)|0;if(w[h+5|0]==1){f=v[h+20>>2];Ba[v[v[f>>2]+188>>2]](f,j>>>1&63,b+4|0,b+9|0);break c}if(w[h+4|0]&4){t[b+9|0]=1;v[b+4>>2]=v[v[c+196>>2]+(f<<2)>>2];break c}t[b+9|0]=0;v[b+4>>2]=v[d+(v[v[c+196>>2]+(f<<2)>>2]<<2)>>2]}f=v[(o+(m<<4)|0)+8>>2];if((f|0)!=-1){continue}break}}e=e+1|0;if((g|0)!=(e|0)){continue}break}}if(w[a+116|0]){d=0;j=0;e=0;r=32;i=xa-32|0;xa=i;t[i+12|0]=0;c=i-128|0;xa=c;v[i+8>>2]=c;f=l-1|0;e:{if((f|0)<=0){break e}while(1){f:{if((f|0)<=(d|0)){break f}while(1){if(f-d>>>0<=4){while(1){k=d;d=d+1|0;b=d;g=k;while(1){h=b;b=v[(n+(b<<4)|0)+12>>2];m=v[b+56>>2];o=v[(n+(g<<4)|0)+12>>2];q=v[o+56>>2];if(!(m>>>0>=q>>>0&((m|0)!=(q|0)|y[b+60>>2]>=y[o+60>>2]))){g=h}b=h+1|0;if((f|0)>(h|0)){continue}break}if((g|0)!=(k|0)){b=n+(g<<4)|0;g=v[b+12>>2];v[i+24>>2]=v[b+8>>2];v[i+28>>2]=g;g=v[b+4>>2];v[i+16>>2]=v[b>>2];v[i+20>>2]=g;g=n+(k<<4)|0;k=v[g+12>>2];v[b+8>>2]=v[g+8>>2];v[b+12>>2]=k;k=v[g+4>>2];v[b>>2]=v[g>>2];v[b+4>>2]=k;b=v[i+28>>2];v[g+8>>2]=v[i+24>>2];v[g+12>>2]=b;b=v[i+20>>2];v[g>>2]=v[i+16>>2];v[g+4>>2]=b}if((f|0)!=(d|0)){continue}break f}}h=n+((f+d|0)/2<<4)|0;k=v[h+12>>2];b=v[k+56>>2];m=n+(d<<4)|0;q=v[m+12>>2];g=v[q+56>>2];g:{if(b>>>0>=g>>>0){if((b|0)!=(g|0)){b=g;break g}if(y[k+60>>2]>=y[q+60>>2]){break g}}b=v[m+12>>2];v[i+24>>2]=v[m+8>>2];v[i+28>>2]=b;b=v[m+4>>2];v[i+16>>2]=v[m>>2];v[i+20>>2]=b;b=v[h+12>>2];v[m+8>>2]=v[h+8>>2];v[m+12>>2]=b;b=v[h+4>>2];v[m>>2]=v[h>>2];v[m+4>>2]=b;b=v[i+28>>2];v[h+8>>2]=v[i+24>>2];v[h+12>>2]=b;b=v[i+20>>2];v[h>>2]=v[i+16>>2];v[h+4>>2]=b;q=v[m+12>>2];b=v[q+56>>2]}o=n+(f<<4)|0;g=v[o+12>>2];k=v[g+56>>2];h:{if(k>>>0>=b>>>0){if((b|0)!=(k|0)){b=k;break h}if(y[g+60>>2]>=y[q+60>>2]){break h}}b=v[m+12>>2];v[i+24>>2]=v[m+8>>2];v[i+28>>2]=b;b=v[m+4>>2];v[i+16>>2]=v[m>>2];v[i+20>>2]=b;b=v[o+12>>2];v[m+8>>2]=v[o+8>>2];v[m+12>>2]=b;b=v[o+4>>2];v[m>>2]=v[o>>2];v[m+4>>2]=b;b=v[i+28>>2];v[o+8>>2]=v[i+24>>2];v[o+12>>2]=b;b=v[i+20>>2];v[o>>2]=v[i+16>>2];v[o+4>>2]=b;g=v[o+12>>2];b=v[g+56>>2]}k=v[h+12>>2];m=v[k+56>>2];if(!(m>>>0<=b>>>0&((b|0)!=(m|0)|y[g+60>>2]>=y[k+60>>2]))){b=v[h+12>>2];v[i+24>>2]=v[h+8>>2];v[i+28>>2]=b;b=v[h+4>>2];v[i+16>>2]=v[h>>2];v[i+20>>2]=b;b=v[o+12>>2];v[h+8>>2]=v[o+8>>2];v[h+12>>2]=b;b=v[o+4>>2];v[h>>2]=v[o>>2];v[h+4>>2]=b;b=v[i+28>>2];v[o+8>>2]=v[i+24>>2];v[o+12>>2]=b;b=v[i+20>>2];v[o>>2]=v[i+16>>2];v[o+4>>2]=b}b=v[h+12>>2];v[i+24>>2]=v[h+8>>2];v[i+28>>2]=b;b=v[h+4>>2];v[i+16>>2]=v[h>>2];v[i+20>>2]=b;g=f-1|0;m=n+(g<<4)|0;b=m;k=v[b+4>>2];v[h>>2]=v[b>>2];v[h+4>>2]=k;k=v[b+12>>2];v[h+8>>2]=v[b+8>>2];v[h+12>>2]=k;b=v[i+28>>2];v[m+8>>2]=v[i+24>>2];v[m+12>>2]=b;b=v[i+20>>2];v[m>>2]=v[i+16>>2];v[m+4>>2]=b;b=d;while(1){p=v[m+12>>2];q=v[p+56>>2];while(1){k=b;b=b+1|0;h=n+(b<<4)|0;o=v[h+12>>2];s=v[o+56>>2];if(s>>>0>>0|(q|0)==(s|0)&y[o+60>>2]>2]){continue}break}while(1){g=g-1|0;o=n+(g<<4)|0;s=v[o+12>>2];D=v[s+56>>2];if(D>>>0>q>>>0|(q|0)==(D|0)&y[p+60>>2]>2]){continue}break}if((b|0)<(g|0)){k=v[h+12>>2];v[i+24>>2]=v[h+8>>2];v[i+28>>2]=k;k=v[h+4>>2];v[i+16>>2]=v[h>>2];v[i+20>>2]=k;k=v[o+12>>2];v[h+8>>2]=v[o+8>>2];v[h+12>>2]=k;k=v[o+4>>2];v[h>>2]=v[o>>2];v[h+4>>2]=k;k=v[i+28>>2];v[o+8>>2]=v[i+24>>2];v[o+12>>2]=k;k=v[i+20>>2];v[o>>2]=v[i+16>>2];v[o+4>>2]=k;continue}break}g=v[h+12>>2];v[i+24>>2]=v[h+8>>2];v[i+28>>2]=g;g=v[h+4>>2];v[i+16>>2]=v[h>>2];v[i+20>>2]=g;g=v[m+12>>2];v[h+8>>2]=v[m+8>>2];v[h+12>>2]=g;g=v[m+4>>2];v[h>>2]=v[m>>2];v[h+4>>2]=g;g=v[i+28>>2];v[m+8>>2]=v[i+24>>2];v[m+12>>2]=g;g=v[i+20>>2];v[m>>2]=v[i+16>>2];v[m+4>>2]=g;i:{if((b-d|0)<(f-b|0)){if(r-1>>>0<=j>>>0){g=r<<3;if(g){b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?33561:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g,h,17218,155)|0}else{b=0}r=r<<1;b=I9(b,c,j<<2);g=e;e=1;if(!(!g|!c)){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,c)}c=b}b=(j<<2)+c|0;v[b>>2]=d;v[b+4>>2]=k;d=k+2|0;break i}if(r-1>>>0<=j>>>0){g=r<<3;if(g){b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?33561:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g,h,17218,155)|0}else{b=0}r=r<<1;b=I9(b,c,j<<2);g=e;e=1;if(!(!g|!c)){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,c)}c=b}b=(j<<2)+c|0;v[b>>2]=k+2;v[b+4>>2]=f;f=k}j=j+2|0;if((f|0)>(d|0)){continue}break}}if(j){b=j-2|0;d=v[(b<<2)+c>>2];f=v[((j<<2)+c|0)-4>>2];j=b;continue}break}if(!e|!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(w[i+12|0]){v9(v[i+8>>2])}xa=i+32|0}v[v[a+32>>2]+12>>2]=l;xa=A+32|0;c=v[a+28>>2];b=c;H=z[b+52>>2];d=v[a+32>>2];e=v[d>>2];h=v[e+11928>>2];n=v[a+36>>2];i=v[e+11948>>2];j=v[a+92>>2];g=v[b+440>>2]+(j<<5)|0;m=v[b+452>>2]+B(j,112)|0;o=e+12112|0;r=e+12116|0;j=v[a+20>>2];l=0;f=v[d+4>>2];c=f+255|0;if(c>>>0>=256){k=c>>>8|0;e=k;while(1){c=k-l|0;c=c>>>0<64?c:64;q=wr(v[b+584>>2],B(c,88));if(c){p=e>>>0<64?e:64;d=0;while(1){A=v[b+604>>2];s=v[b+600>>2];c=q+B(d,88)|0;v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=s;v[c+12>>2]=A;A=d+l<<8;v[c+68>>2]=A;v[c+64>>2]=r;v[c+60>>2]=o;v[c+56>>2]=f;z[c+52>>2]=H;v[c+48>>2]=m;v[c+44>>2]=g;v[c+40>>2]=i;v[c+36>>2]=n;v[c+32>>2]=h;v[c+28>>2]=b;v[c>>2]=128288;A=f-A|0;v[c+72>>2]=A>>>0<256?A:256;z[c+76>>2]=z[b+68>>2];z[c+80>>2]=z[b+72>>2];I=z[b+76>>2];v[c+24>>2]=1;z[c+84>>2]=I;v[c+20>>2]=j;Ba[v[v[j>>2]+16>>2]](j);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);d=d+1|0;if((p|0)!=(d|0)){continue}break}}e=e+-64|0;l=l- -64|0;if(k>>>0>l>>>0){continue}break}}J9(g,0,f<<5);k=0;m=xa-32|0;xa=m;n=a;i=v[v[a+32>>2]>>2];c=v[i+12132>>2];o=v[a+56>>2];if(o){r=v[n+52>>2];j=v[n+100>>2];while(1){d=v[(v[j+256>>2]+B(v[r+(k<<2)>>2],44)|0)+24>>2];if((d|0)!=-1){while(1){a=v[n+100>>2];e=v[a+148>>2];b=(d>>>0)/(e>>>0)|0;q=v[v[v[a+128>>2]+(b<<2)>>2]+(d-B(b,e)<<2)>>2];e=v[j+228>>2];b=(d>>>0)/(e>>>0)|0;p=B(b,e);A=v[v[j+208>>2]+(b<<2)>>2];g=v[n+92>>2];h=v[n+104>>2];b=v[n+28>>2];e=d<<1;l=v[a+616>>2];s=v[l+20>>2];f=(e>>>0)/(s>>>0)|0;f=v[v[v[l>>2]+(f<<2)>>2]+(e-B(f,s)<<2)>>2];j:{if(f>>>0>=4294967168){v[c+12>>2]=0;u[c+8>>1]=65535;v[c>>2]=b+192;break j}s=f>>>7|0;l=v[a+184>>2]+B(s,24)|0;if(w[l+5|0]==1){l=v[l+20>>2];f=f>>>1&63;Ba[v[v[l>>2]+188>>2]](l,f,m+24|0,m+16|0);if(w[m+16|0]==2){v[c>>2]=l;u[c+8>>1]=f;break j}v[c+12>>2]=0;v[c>>2]=b+192;u[c+8>>1]=65535;break j}f=v[v[a+196>>2]+(s<<2)>>2];s=v[b+440>>2];f=w[l+4|0]&4?f:g+v[h+(f<<2)>>2]|0;v[c+12>>2]=f+1;u[c+8>>1]=65535;v[c>>2]=s+(f<<5)}l=d-p|0;d=e|1;f=v[a+616>>2];p=v[f+20>>2];e=(d>>>0)/(p>>>0)|0;d=v[v[v[f>>2]+(e<<2)>>2]+(d-B(e,p)<<2)>>2];k:{if(d>>>0>=4294967168){v[c+16>>2]=0;u[c+10>>1]=65535;v[c+4>>2]=b+192;break k}e=d>>>7|0;f=v[a+184>>2]+B(e,24)|0;if(w[f+5|0]==1){e=v[f+20>>2];a=d>>>1&63;Ba[v[v[e>>2]+188>>2]](e,a,m+24|0,m+16|0);if(w[m+16|0]!=2){v[c+16>>2]=0;e=b+192|0;a=65535}u[c+10>>1]=a;v[c+4>>2]=e;break k}e=v[v[a+196>>2]+(e<<2)>>2];a=v[b+440>>2];e=w[f+4|0]&4?e:g+v[h+(e<<2)>>2]|0;v[c+16>>2]=e+1;u[c+10>>1]=65535;v[c+4>>2]=a+(e<<5)}u[c+22>>1]=2;v[c+24>>2]=q;c=c+32|0;d=v[(A+(l<<4)|0)+8>>2];if((d|0)!=-1){continue}break}}k=k+1|0;if((o|0)!=(k|0)){continue}break}a=v[i+12132>>2]}else{a=c}Bz(a,c-a>>5);v[i+12016>>2]=0;e=v[n+32>>2];d=v[e+12>>2];if(d>>>0>(v[i+12020>>2]&2147483647)>>>0){Cz(i+12012|0,d);e=v[n+32>>2];d=v[e+12>>2]}v[i+12016>>2]=d;v[i+12028>>2]=0;g=i+12024|0;if((v[i+12032>>2]&2147483647)>>>0>>0){Cz(g,d);e=v[n+32>>2];d=v[e+12>>2]}v[i+12028>>2]=d;v[i+12004>>2]=0;l:{if(!d){break l}r=v[i+12012>>2];v[i+12040>>2]=0;a=v[v[n+28>>2]+532>>2];v[m+28>>2]=0;v[m+24>>2]=a;f=i+12036|0;a=(a+v[e+4>>2]|0)+1|0;if(a>>>0>(v[i+12044>>2]&2147483647)>>>0){Aw(f,a)}v[i+12040>>2]=a;d=0;o=a<<2;J9(v[i+12036>>2],0,o);b=0;h=v[n+32>>2];a=v[h+12>>2];if(a){j=v[n+48>>2];e=0;b=a;while(1){a=j+(e<<4)|0;k=w[a+8|0];if(!((k|0)==2|w[a+9|0]==2)){a=v[f>>2]+(v[(m+24|0)+(k<<2)>>2]+v[a>>2]<<2)|0;v[a>>2]=v[a>>2]+1;b=v[h+12>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}e=v[i+12040>>2];if(e){b=e&3;a=v[f>>2];k=0;if(e-1>>>0>=3){q=e&-4;j=0;while(1){l=a+(e<<2)|0;p=l-4|0;A=v[p>>2];v[p>>2]=d;p=l-8|0;s=v[p>>2];d=d+A|0;v[p>>2]=d;l=l-12|0;p=v[l>>2];d=d+s|0;v[l>>2]=d;e=e-4|0;l=a+(e<<2)|0;A=v[l>>2];d=d+p|0;v[l>>2]=d;d=d+A|0;j=j+4|0;if((q|0)!=(j|0)){continue}break}}if(b){while(1){e=e-1|0;j=a+(e<<2)|0;l=v[j>>2];v[j>>2]=d;d=d+l|0;k=k+1|0;if((b|0)!=(k|0)){continue}break}}b=v[h+12>>2]}if(b){e=0;while(1){a=v[n+48>>2]+(e<<4)|0;b=w[a+8|0];m:{if(!((b|0)==2|w[a+9|0]==2)){j=v[f>>2]+(v[(m+24|0)+(b<<2)>>2]+v[a>>2]<<2)|0;b=v[j>>2];v[j>>2]=b+1;break m}b=d;d=b+1|0}v[v[g>>2]+(b<<2)>>2]=a;e=e+1|0;if(e>>>0>2]+12>>2]){continue}break}}d=0;J9(v[f>>2],0,o);b=0;h=v[n+32>>2];a=v[h+12>>2];if(a){j=v[n+48>>2];k=v[g>>2];e=0;b=a;while(1){l=v[k+(e<<2)>>2];a=w[l+9|0];if(!((a|0)==2|w[(j+(e<<4)|0)+8|0]==2)){a=v[f>>2]+(((a|0)!=3?v[(m+24|0)+(a<<2)>>2]+v[l+4>>2]|0:0)<<2)|0;v[a>>2]=v[a>>2]+1;b=v[h+12>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}e=v[i+12040>>2];if(e){b=e&3;a=v[f>>2];k=0;if(e-1>>>0>=3){o=e&-4;j=0;while(1){l=a+(e<<2)|0;q=l-4|0;p=v[q>>2];v[q>>2]=d;q=l-8|0;A=v[q>>2];d=d+p|0;v[q>>2]=d;l=l-12|0;q=v[l>>2];d=d+A|0;v[l>>2]=d;e=e-4|0;l=a+(e<<2)|0;p=v[l>>2];d=d+q|0;v[l>>2]=d;d=d+p|0;j=j+4|0;if((o|0)!=(j|0)){continue}break}}if(b){while(1){e=e-1|0;j=a+(e<<2)|0;l=v[j>>2];v[j>>2]=d;d=d+l|0;k=k+1|0;if((b|0)!=(k|0)){continue}break}}b=v[h+12>>2]}a=d;if(b){e=0;while(1){b=v[v[g>>2]+(e<<2)>>2];j=w[b+9|0];n:{if(!((j|0)==2|w[(v[n+48>>2]+(e<<4)|0)+8|0]==2)){j=v[f>>2]+(((j|0)!=3?v[(m+24|0)+(j<<2)>>2]+v[b+4>>2]|0:0)<<2)|0;k=v[j>>2];v[j>>2]=k+1;break n}k=a;a=a+1|0}v[r+(k<<2)>>2]=b;e=e+1|0;if(e>>>0>2]+12>>2]){continue}break}}A=i+12e3|0;o=r+(d<<2)|0;e=0;j=0;b=0;l=32;q=xa-16|0;xa=q;t[q+12|0]=0;g=q-128|0;xa=g;v[q+8>>2]=g;k=(a-d|0)-1|0;o:{if((k|0)<=0){break o}while(1){p:{if((e|0)>=(k|0)){break p}while(1){if(k-e>>>0<=4){while(1){d=e;e=d+1|0;f=e;a=d;while(1){a=y[v[v[(f<<2)+o>>2]+12>>2]+48>>2]>2]+12>>2]+48>>2]?f:a;h=(f|0)<(k|0);f=f+1|0;if(h){continue}break}if((a|0)!=(d|0)){a=(a<<2)+o|0;f=v[a>>2];h=a;a=(d<<2)+o|0;v[h>>2]=v[a>>2];v[a>>2]=f}if((e|0)!=(k|0)){continue}break p}}s=(e<<2)+o|0;f=v[s>>2];D=v[v[f+12>>2]+48>>2];p=((e+k|0)/2<<2)+o|0;d=v[p>>2];q:{if(D>>>0<=y[v[d+12>>2]+48>>2]){a=f;break q}v[s>>2]=d;v[p>>2]=f;a=v[s>>2];D=v[v[a+12>>2]+48>>2];d=f}E=(k<<2)+o|0;h=v[E>>2];f=v[v[h+12>>2]+48>>2];r:{if(D>>>0<=f>>>0){a=h;break r}v[s>>2]=h;v[E>>2]=a;f=v[v[a+12>>2]+48>>2];d=v[p>>2]}if(y[v[d+12>>2]+48>>2]>f>>>0){v[p>>2]=a;v[E>>2]=d;d=v[p>>2]}f=p;a=k-1|0;p=(a<<2)+o|0;v[f>>2]=v[p>>2];v[p>>2]=d;f=e;while(1){s=v[v[d+12>>2]+48>>2];while(1){h=f;f=f+1|0;D=(f<<2)+o|0;E=v[D>>2];if(s>>>0>y[v[E+12>>2]+48>>2]){continue}break}while(1){a=a-1|0;F=(a<<2)+o|0;G=v[F>>2];if(s>>>0>2]+48>>2]){continue}break}if((a|0)>(f|0)){v[D>>2]=G;v[F>>2]=E;d=v[p>>2];continue}break}v[D>>2]=d;v[p>>2]=E;s:{if((f-e|0)<(k-f|0)){if(l-1>>>0<=j>>>0){d=l<<3;if(d){a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?57275:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,d,f,17218,155)|0}else{a=0}l=l<<1;a=I9(a,g,j<<2);d=b;b=1;if(!(!d|!g)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g)}g=a}a=(j<<2)+g|0;v[a>>2]=e;v[a+4>>2]=h;e=h+2|0;break s}if(l-1>>>0<=j>>>0){d=l<<3;if(d){a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?57275:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,d,f,17218,155)|0}else{a=0}l=l<<1;a=I9(a,g,j<<2);d=b;b=1;if(!(!d|!g)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g)}g=a}a=(j<<2)+g|0;v[a>>2]=h+2;v[a+4>>2]=k;k=h}j=j+2|0;if((e|0)<(k|0)){continue}break}}if(j){a=j-2|0;e=v[(a<<2)+g>>2];k=v[((j<<2)+g|0)-4>>2];j=a;continue}break}if(!b|!g){break o}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,g)}if(w[q+12|0]){v9(v[q+8>>2])}xa=q+16|0;v[i+12136>>2]=c;if(!(v[i+12008>>2]&2147482624)){Dz(A,1024)}v[i+12004>>2]=0;b=v[n+28>>2];a=v[r>>2];e=v[n+92>>2];v[m+28>>2]=0;v[m+24>>2]=e;e=w[a+8|0];t:{if((e|0)==2){v[c>>2]=v[a>>2]&-64;u[c+8>>1]=x[a>>1]&63;break t}u[c+8>>1]=65535;v[c>>2]=(e|0)==3?b+192|0:v[b+440>>2]+(v[(m+24|0)+(e<<2)>>2]+v[a>>2]<<5)|0;e=w[a+8|0];if((e|0)!=3){d=(v[a>>2]+v[(m+24|0)+(e<<2)>>2]|0)+1|0}else{d=0}v[c+12>>2]=d}e=w[a+9|0];u:{if((e|0)==2){v[c+4>>2]=v[a+4>>2]&-64;u[c+10>>1]=x[a+4>>1]&63;break u}u[c+10>>1]=65535;v[c+4>>2]=(e|0)==3?b+192|0:v[b+440>>2]+(v[(m+24|0)+(e<<2)>>2]+v[a+4>>2]<<5)|0;b=w[a+9|0];if((b|0)!=3){a=(v[a+4>>2]+v[(m+24|0)+(b<<2)>>2]|0)+1|0}else{a=0}v[c+16>>2]=a}a=v[v[r>>2]+12>>2];u[c+22>>1]=1;v[c+24>>2]=a;a=v[n+112>>2];b=v[v[v[r>>2]+12>>2]+68>>2];e=v[a+32>>2]+(v[a+((b&7)<<2)>>2]+(b>>>3|0)<<4)|0;b=w[e+12|0];k=0;d=v[v[n+32>>2]+12>>2];v:{if(d>>>0<2){f=0;break v}a=1;f=0;while(1){o=r+(a<<2)|0;g=v[o>>2];h=v[n+28>>2];d=v[n+92>>2];v[m+28>>2]=0;v[m+24>>2]=d;d=c+32|0;j=w[g+8|0];w:{if((j|0)==2){j=v[g>>2]&-64;v[c+32>>2]=j;u[c+40>>1]=x[g>>1]&63;break w}u[c+40>>1]=65535;j=(j|0)==3?h+192|0:v[h+440>>2]+(v[(m+24|0)+(j<<2)>>2]+v[g>>2]<<5)|0;v[d>>2]=j;l=w[g+8|0];if((l|0)!=3){p=(v[g>>2]+v[(m+24|0)+(l<<2)>>2]|0)+1|0}else{p=0}v[c+44>>2]=p}l=w[g+9|0];x:{if((l|0)==2){v[c+36>>2]=v[g+4>>2]&-64;u[c+42>>1]=x[g+4>>1]&63;break x}u[c+42>>1]=65535;v[c+36>>2]=(l|0)==3?h+192|0:v[h+440>>2]+(v[(m+24|0)+(l<<2)>>2]+v[g+4>>2]<<5)|0;h=w[g+9|0];if((h|0)!=3){g=(v[g+4>>2]+v[(m+24|0)+(h<<2)>>2]|0)+1|0}else{g=0}v[c+48>>2]=g}l=v[n+112>>2];h=v[v[o>>2]+12>>2];g=v[h+68>>2];o=v[l+((g&7)<<2)>>2];l=v[l+32>>2];u[c+54>>1]=1;v[c+56>>2]=h;o=o+(g>>>3|0)<<4;g=o+l|0;if(!b){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;j=v[d>>2];f=a;e=g}y:{z:{if(v[c>>2]!=(j|0)|v[c+4>>2]!=v[c+36>>2]|(x[c+8>>1]!=65535|x[c+10>>1]!=65535)){break z}if(t[h+8|0]&1|w[(l+o|0)+12|0]+b>>>0>64){break z}j=b;break y}A:{if(b){j=0;l=a-f|0;if(l>>>0<2){break A}k=k+1|0;c=v[i+12004>>2];h=v[i+12008>>2]&2147483647;if(c>>>0>=h>>>0){Dz(A,h?h<<1:1);c=v[i+12004>>2]}v[i+12004>>2]=c+1;c=v[i+12e3>>2]+B(c,36)|0;u[c+6>>1]=b;u[c+4>>1]=l;v[c>>2]=f;b=v[v[r+(f<<2)>>2]+12>>2];v[c+12>>2]=e;v[c+8>>2]=b+16;v[c+16>>2]=v[e>>2];v[c+20>>2]=v[e+4>>2];t[c+24|0]=w[e+12|0];t[c+25|0]=w[e+13|0];v[c+28>>2]=v[e+8>>2];t[c+26|0]=w[e+14|0];break A}b=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=b;b=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=b;b=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=b;b=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=b;j=0;f=a;e=g;break y}f=a;e=g;c=d}b=w[g+12|0]+j|0;a=a+1|0;d=v[v[n+32>>2]+12>>2];if(a>>>0>>0){continue}break}}if(b){j=d-f|0;if(j>>>0>=2){d=v[i+12004>>2];a=v[i+12008>>2]&2147483647;if(d>>>0>=a>>>0){Dz(A,a?a<<1:1);d=v[i+12004>>2]}v[i+12004>>2]=d+1;a=v[i+12e3>>2]+B(d,36)|0;u[a+6>>1]=b;u[a+4>>1]=j;v[a>>2]=f;b=v[v[r+(f<<2)>>2]+12>>2];v[a+12>>2]=e;v[a+8>>2]=b+16;v[a+16>>2]=v[e>>2];v[a+20>>2]=v[e+4>>2];t[a+24|0]=w[e+12|0];t[a+25|0]=w[e+13|0];v[a+28>>2]=v[e+8>>2];t[a+26|0]=w[e+14|0];k=k+1|0}c=c+32|0}if(!k){break l}e=0;while(1){a=wr(v[v[n+28>>2]+584>>2],112);d=v[n+92>>2];j=v[n+108>>2];f=v[n+112>>2];b=v[n+28>>2];g=v[b+600>>2];h=v[b+604>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=g;v[a+12>>2]=h;v[a+32>>2]=i;v[a+28>>2]=b;v[a>>2]=128500;b=v[n+40>>2];v[a+36>>2]=v[n+36>>2];v[a+40>>2]=b;b=v[n+48>>2];v[a+44>>2]=v[n+44>>2];v[a+48>>2]=b;b=v[n+56>>2];v[a+52>>2]=v[n+52>>2];v[a+56>>2]=b;b=v[n+64>>2];v[a+60>>2]=v[n+60>>2];v[a+64>>2]=b;b=v[n+72>>2];v[a+68>>2]=v[n+68>>2];v[a+72>>2]=b;b=v[n+80>>2];v[a+76>>2]=v[n+76>>2];v[a+80>>2]=b;b=v[n+88>>2];v[a+84>>2]=v[n+84>>2];v[a+88>>2]=b;v[a+104>>2]=j;v[a+108>>2]=f;b=k-e|0;v[a+100>>2]=b>>>0<8?b:8;v[a+96>>2]=e;v[a+92>>2]=d;b=v[n+20>>2];v[a+20>>2]=b;v[a+24>>2]=1;if(b){Ba[v[v[b>>2]+16>>2]](b);v[a+16>>2]=v[v[a+20>>2]+16>>2];b=v[a>>2]}else{b=128500}Ba[v[b+20>>2]](a);e=e+8|0;if(k>>>0>e>>>0){continue}break}}v[i+12132>>2]=c;v[i+11956>>2]=c-v[i+11952>>2]>>5;xa=m+32|0;c=0;a=v[n+32>>2];if(v[a+8>>2]&2147483647){e=v[a>>2];d=v[e+12144>>2];while(1){a=wr(v[v[n+28>>2]+584>>2],56);j=v[v[n+32>>2]+8>>2];f=v[n+40>>2];b=v[n+28>>2];g=v[b+600>>2];k=v[b+604>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=g;v[a+12>>2]=k;v[a+48>>2]=c<<6;v[a+44>>2]=b;v[a+36>>2]=d+B(c,52);v[a+32>>2]=f+(c<<2);v[a+28>>2]=e;v[a>>2]=128556;b=(j&2147483647)-c|0;v[a+40>>2]=b>>>0<32?b:32;b=v[n+20>>2];v[a+20>>2]=b;v[a+24>>2]=1;if(b){Ba[v[v[b>>2]+16>>2]](b);v[a+16>>2]=v[v[a+20>>2]+16>>2];b=v[a>>2]}else{b=128556}Ba[v[b+20>>2]](a);c=c+32|0;if(c>>>0<(v[v[n+32>>2]+8>>2]&2147483647)>>>0){continue}break}}}function _z(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=C(0),s=C(0),A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=0,X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=0,ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=0,sa=0,ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=0,Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=0,Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=0,eb=0,fb=0,gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=0,tb=C(0),ub=0,vb=0,wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=0,rc=0,sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=C(0),Ac=C(0),Bc=C(0),Cc=C(0),Dc=C(0);g=xa-864|0;xa=g;A=v[a+44>>2];I=z[A+56>>2];r=z[A+60>>2];ra=v[a+48>>2];Ja=v[a+56>>2];fa=v[a+52>>2];ga=v[a+36>>2];c=v[a+40>>2];sb=v[c+11964>>2];sa=v[c+11960>>2];Ka=z[A+92>>2];s=z[A+52>>2];La=z[A+88>>2];Ma=z[A+84>>2];Na=z[A+100>>2];b=v[A+112>>2];a=v[A+336>>2];p=v[a>>2];if(p){v[a>>2]=v[p>>2]}if(!p){a=v[37696];p=Ba[v[v[a>>2]+20>>2]](a)|0?26947:63804;p=Ba[v[v[a+12>>2]+8>>2]](a+12|0,12195,p,19395,82)|0;a=p+19&-16;v[a-4>>2]=a-p;p=hB(a,v[A+340>>2])}v[p+12052>>2]=0;a=p+11856|0;v[a>>2]=0;v[a+4>>2]=0;a=v[c+12128>>2];if(a>>>0>(v[p+12056>>2]&2147483647)>>>0){zw(p+12048|0,a);a=v[c+12128>>2]}v[p+12052>>2]=a;Oa=v[p+12048>>2];v[g+860>>2]=0;v[g+856>>2]=0;v[g+852>>2]=0;v[g+848>>2]=1065353216;v[g+844>>2]=0;v[g+840>>2]=0;v[g+836>>2]=0;v[g+832>>2]=p+12088;v[g+828>>2]=p+11824;v[g+824>>2]=p+11852;v[g+820>>2]=c+11836;v[g+816>>2]=128228;if(fa>>>0>>0){I=r>2];a=b<<2;ub=a+128152|0;vb=a+128164|0;while(1){a:{b:{c:{M=(fa<<3)+sb|0;i=v[M>>2];switch(x[((i<<5)+sa|0)+22>>1]-1|0){case 1:break b;case 0:break c;default:break a}}n=x[M+4>>1];if(!n){break a}m=v[ra+32>>2];j=0;while(1){a=j<<2;e=(j+i<<5)+sa|0;d=v[e+24>>2];v[a+(g+16|0)>>2]=d;c=a+(g+48|0)|0;a=v[d+68>>2];l=m+(v[((a&7)<<2)+ra>>2]+(a>>>3|0)<<4)|0;v[c>>2]=l;c=ga;c=x[e+8>>1]==65535?B(v[e+12>>2],112)+c|0:c;b=(g+112|0)+B(j,176)|0;q=x[e+10>>1]!=65535;v[b+32>>2]=q?ga:B(v[e+16>>2],112)+ga|0;v[b+28>>2]=c;f=v[d+16>>2];h=w[f+28|0];a=v[d+20>>2];if(a){h=w[a+28|0]|h;c=a}else{c=g+860|0}z[b+36>>2]=z[f>>2];z[b+40>>2]=z[f+4>>2];z[b+44>>2]=z[f+8>>2];z[b+48>>2]=z[f+12>>2];z[b+52>>2]=z[f+16>>2];z[b+56>>2]=z[f+20>>2];z[b+60>>2]=z[f+24>>2];z[b+64>>2]=z[c>>2];z[b+68>>2]=z[(a?a+4|0:g+856|0)>>2];z[b+72>>2]=z[(a?a+8|0:g+852|0)>>2];z[b+76>>2]=z[(a?a+12|0:g+848|0)>>2];z[b+80>>2]=z[(a?a+16|0:g+844|0)>>2];z[b+84>>2]=z[(a?a+20|0:g+840|0)>>2];z[b+88>>2]=z[(a?a+24|0:g+836|0)>>2];v[b+112>>2]=v[d+12>>2];v[b+144>>2]=v[l+8>>2];v[b+16>>2]=e;v[b+20>>2]=v[e>>2];v[b+24>>2]=v[e+4>>2];a=x[d+40>>1];t[b+125|0]=a>>>2&1;t[b+126|0]=a>>>8&1;v[b+92>>2]=a&8?8:1;d:{if(a&16){if(!q){v[b+96>>2]=2;break d}v[b+96>>2]=8;break d}v[b+96>>2]=a&1024?4:a&64?1:2}a=w[d+44|0];r=w[d+45|0]?C(1):C(0);z[b+12>>2]=r;D=a?C(1):C(0);z[b>>2]=D;z[b+4>>2]=D;z[b+8>>2]=r;z[b+128>>2]=z[d+52>>2];v[b+136>>2]=v[d+36>>2];a=w[d+42|0];z[b+132>>2]=h&32?tb:C(34028234663852886e22);t[b+140|0]=a;j=j+1|0;if((n|0)!=(j|0)){continue}break}e:{f:{if((n|0)!=4){break f}if((Ba[v[vb>>2]](g+48|0,p,g+112|0,I,Ma,La,Na,Ka,g+816|0)|0)!=2){break f}c=x[M+4>>1];break e}a=0;if(!x[M+4>>1]){break a}while(1){c=(v[M>>2]+a<<5)+sa|0;b=v[v[c+24>>2]+68>>2];b=v[ra+32>>2]+(v[((b&7)<<2)+ra>>2]+(b>>>3|0)<<4)|0;Ba[v[ub>>2]]((g+112|0)+B(a,176)|0,b,p,I,Ma,La,Na,Ka,g+816|0,Oa)|0;u[c+20>>1]=w[b+12|0];v[c+28>>2]=v[b+8>>2];a=a+1|0;c=x[M+4>>1];if(a>>>0>>0){continue}break}}c=c&65535;if(!c){break a}a=0;if((c|0)!=1){j=c&65534;d=0;while(1){e=g+16|0;f=v[e+(a<<2)>>2];h=g+112|0;b=h+B(a,176)|0;v[f+36>>2]=v[b+136>>2];t[f+42|0]=w[b+140|0];f=x[b+162>>1];b=a|1;e=v[e+(b<<2)>>2];b=h+B(b,176)|0;v[e+36>>2]=v[b+136>>2];t[e+42|0]=w[b+140|0];N=x[b+162>>1]+(f+N|0)|0;a=a+2|0;d=d+2|0;if((j|0)!=(d|0)){continue}break}}if(!(c&1)){break a}c=v[(g+16|0)+(a<<2)>>2];a=(g+112|0)+B(a,176)|0;v[c+36>>2]=v[a+136>>2];t[c+42|0]=w[a+140|0];N=x[a+162>>1]+N|0;break a}v[g+40>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+24>>2]=0;v[g+28>>2]=1065353216;v[g+16>>2]=0;v[g+20>>2]=0;h=x[M+4>>1];if(!h){break a}m=v[A+168>>2];j=0;while(1){d=g+16|0;a=d;f=(j+i<<5)+sa|0;e=v[f+24>>2];c=v[e+24>>2];if(c){a=v[c+36>>2]}c=v[e+28>>2];if(c){d=v[c+36>>2]}n=0;c=0;c=x[f+8>>1]==65535?v[f+12>>2]:c;l=x[e+8>>1];q=v[e+20>>2];k=v[e+12>>2];o=v[f+4>>2];_=v[f>>2];n=x[f+10>>1]==65535?v[f+16>>2]:n;b=(g+48|0)+(j<<4)|0;v[b+12>>2]=l;v[b+8>>2]=q;v[b>>2]=e;v[b+4>>2]=k;b=(g+112|0)+B(j,160)|0;v[b+16>>2]=f;z[b+36>>2]=z[a>>2];z[b+40>>2]=z[a+4>>2];z[b+44>>2]=z[a+8>>2];z[b+48>>2]=z[a+12>>2];z[b+52>>2]=z[a+16>>2];z[b+56>>2]=z[a+20>>2];z[b+60>>2]=z[a+24>>2];z[b+64>>2]=z[d>>2];z[b+68>>2]=z[d+4>>2];z[b+72>>2]=z[d+8>>2];z[b+76>>2]=z[d+12>>2];z[b+80>>2]=z[d+16>>2];z[b+84>>2]=z[d+20>>2];r=z[d+24>>2];v[b+32>>2]=B(n,112)+ga;v[b+28>>2]=B(c,112)+ga;z[b+88>>2]=r;v[b+24>>2]=o;v[b+20>>2]=_;z[b+120>>2]=z[e>>2];z[b+124>>2]=z[e+4>>2];v[b+132>>2]=m+(v[e+40>>2]<<5);a=x[e+10>>1];t[b+139|0]=a>>>9&1;c=a&255;t[b+137|0]=c>>>7;t[b+136|0]=a>>>8&1;t[b+138|0]=c>>>5&1;z[b+128>>2]=z[e+44>>2];j=j+1|0;if((h|0)!=(j|0)){continue}break}if((h|0)==4){c=g+112|0;q=g+816|0;d=0;j=xa-3872|0;xa=j;v[g+12>>2]=0;a=1;b=v[g+52>>2];g:{if(!b){break g}e=j+32|0;J9(e,0,960);v[j+972>>2]=2139095039;v[j+956>>2]=-8388609;v[j+892>>2]=2139095039;v[j+876>>2]=-8388609;v[j+812>>2]=2139095039;v[j+796>>2]=-8388609;v[j+732>>2]=2139095039;v[j+716>>2]=-8388609;v[j+652>>2]=2139095039;v[j+636>>2]=-8388609;v[j+572>>2]=2139095039;v[j+556>>2]=-8388609;v[j+492>>2]=2139095039;v[j+476>>2]=-8388609;v[j+412>>2]=2139095039;v[j+396>>2]=-8388609;v[j+332>>2]=2139095039;v[j+316>>2]=-8388609;v[j+252>>2]=2139095039;v[j+236>>2]=-8388609;v[j+172>>2]=2139095039;v[j+156>>2]=-8388609;v[j+92>>2]=2139095039;v[j+76>>2]=-8388609;v[c+4>>2]=1065353216;v[c+8>>2]=1065353216;v[c+12>>2]=1065353216;v[c+148>>2]=0;v[c+140>>2]=0;v[c+144>>2]=0;v[c>>2]=1065353216;e=Ba[b|0](e,c+140|0,12,c,v[g+56>>2],c+36|0,c- -64|0,w[c+139|0],j+16|0,j)|0;if(!e){break g}v[c+116>>2]=e;v[c+112>>2]=j+32;f=v[g+68>>2];if(!f){break g}i=c+160|0;h=(j+32|0)+B(e,80)|0;J9(j+992|0,0,960);h:{if(e>>>0>12){break h}b=12-e|0;n=e&3;if(n){while(1){m=h+B(b,80)|0;v[m+60>>2]=2139095039;v[m+44>>2]=-8388609;b=b+1|0;d=d+1|0;if((n|0)!=(d|0)){continue}break}}if(e-1>>>0<3){break h}while(1){d=h+B(b,80)|0;v[d+60>>2]=2139095039;v[d+44>>2]=-8388609;v[d+140>>2]=2139095039;v[d+124>>2]=-8388609;v[d+204>>2]=-8388609;v[d+220>>2]=2139095039;v[d+284>>2]=-8388609;v[d+300>>2]=2139095039;b=b+4|0;if((b|0)!=12){continue}break}}v[c+160>>2]=1065353216;v[c+164>>2]=1065353216;v[c+168>>2]=1065353216;v[c+172>>2]=1065353216;v[c+308>>2]=0;b=c+300|0;v[b>>2]=0;v[b+4>>2]=0;f=Ba[f|0](h,b,12,i,v[g+72>>2],c+196|0,c+224|0,w[c+299|0],j+16|0,j)|0;if(!f){break g}v[c+276>>2]=f;v[c+272>>2]=h;h=v[g+84>>2];if(!h){break g}n=c+320|0;m=e+f|0;i=(j+32|0)+B(m,80)|0;b=12-f|0;J9(i+B(b,80)|0,0,960);i:{if(f>>>0>12){break i}l=f&3;if(l){d=0;while(1){k=i+B(b,80)|0;v[k+60>>2]=2139095039;v[k+44>>2]=-8388609;b=b+1|0;d=d+1|0;if((l|0)!=(d|0)){continue}break}}if(f-1>>>0<3){break i}while(1){d=i+B(b,80)|0;v[d+60>>2]=2139095039;v[d+44>>2]=-8388609;v[d+140>>2]=2139095039;v[d+124>>2]=-8388609;v[d+204>>2]=-8388609;v[d+220>>2]=2139095039;v[d+284>>2]=-8388609;v[d+300>>2]=2139095039;b=b+4|0;if((b|0)!=12){continue}break}}v[c+320>>2]=1065353216;v[c+324>>2]=1065353216;v[c+328>>2]=1065353216;v[c+332>>2]=1065353216;v[c+468>>2]=0;b=c+460|0;v[b>>2]=0;v[b+4>>2]=0;h=Ba[h|0](i,b,12,n,v[g+88>>2],c+356|0,c+384|0,w[c+459|0],j+16|0,j)|0;if(!h){break g}v[c+436>>2]=h;v[c+432>>2]=i;n=v[g+100>>2];if(!n){break g}l=c+480|0;i=(j+32|0)+B(h+m|0,80)|0;b=12-h|0;J9(i+B(b,80)|0,0,960);j:{if(h>>>0>12){break j}m=h&3;if(m){d=0;while(1){k=i+B(b,80)|0;v[k+60>>2]=2139095039;v[k+44>>2]=-8388609;b=b+1|0;d=d+1|0;if((m|0)!=(d|0)){continue}break}}if(h-1>>>0<3){break j}while(1){d=i+B(b,80)|0;v[d+60>>2]=2139095039;v[d+44>>2]=-8388609;v[d+140>>2]=2139095039;v[d+124>>2]=-8388609;v[d+204>>2]=-8388609;v[d+220>>2]=2139095039;v[d+284>>2]=-8388609;v[d+300>>2]=2139095039;b=b+4|0;if((b|0)!=12){continue}break}}v[c+480>>2]=1065353216;v[c+484>>2]=1065353216;v[c+488>>2]=1065353216;v[c+492>>2]=1065353216;v[c+628>>2]=0;b=c+620|0;v[b>>2]=0;v[b+4>>2]=0;b=Ba[n|0](i,b,12,l,v[g+104>>2],c+516|0,c+544|0,w[c+619|0],j+16|0,j)|0;if(!b){break g}v[c+596>>2]=b;v[c+592>>2]=i;d=xa-1744|0;xa=d;v[d+1736>>2]=0;v[d+1740>>2]=0;v[d+1728>>2]=0;v[d+1732>>2]=0;i=d+1536|0;l=d+768|0;a=v[c+28>>2];n=v[c+32>>2];py(i,v[c+112>>2],l,d,v[c+116>>2],a+32|0,n+32|0,z[a+12>>2],z[n+12>>2],c,w[c+136|0],w[c+137|0],1);n=v[c+116>>2];a=n<<4;V=a+l|0;W=a+d|0;a=v[c+188>>2];m=v[c+192>>2];py(i+(n<<2)|0,v[c+272>>2],V,W,v[c+276>>2],a+32|0,m+32|0,z[a+12>>2],z[m+12>>2],c+160|0,w[c+296|0],w[c+297|0],1);a=v[c+276>>2]+n|0;m=a<<4;V=l+m|0;W=d+m|0;m=v[c+348>>2];k=v[c+352>>2];py(i+(a<<2)|0,v[c+432>>2],V,W,v[c+436>>2],m+32|0,k+32|0,z[m+12>>2],z[k+12>>2],c+320|0,w[c+456|0],w[c+457|0],1);m=v[c+436>>2]+a|0;k=m<<4;V=i+(m<<2)|0;W=k+l|0;i=v[c+508>>2];l=v[c+512>>2];py(V,v[c+592>>2],W,d+k|0,v[c+596>>2],i+32|0,l+32|0,z[i+12>>2],z[l+12>>2],c+480|0,w[c+616|0],w[c+617|0],1);i=v[c+596>>2];e=e>>>0>>0?f:e;e=e>>>0>>0?h:e;_=b>>>0>e>>>0?b:e;e=B(_,368);b=Ba[v[v[q>>2]>>2]](q,e+176|0)|0;k:{if(b+1>>>0<=1){a=v[c+16>>2];u[a+22>>1]=0;v[a+24>>2]=0;v[a+28>>2]=v[c+132>>2];a=v[c+176>>2];u[a+22>>1]=0;v[a+24>>2]=0;v[a+28>>2]=v[c+292>>2];a=v[c+336>>2];u[a+22>>1]=0;v[a+24>>2]=0;v[a+28>>2]=v[c+452>>2];a=v[c+496>>2];u[a+22>>1]=0;v[a+24>>2]=0;v[a+28>>2]=v[c+612>>2];a=0;break k}v[g+12>>2]=i+m;f=v[c+16>>2];e=e+160>>>4|0;u[f+22>>1]=e;v[f+24>>2]=b;v[f+28>>2]=v[c+132>>2];f=v[c+176>>2];u[f+22>>1]=e;v[f+24>>2]=b;v[f+28>>2]=v[c+292>>2];f=v[c+336>>2];u[f+22>>1]=e;v[f+24>>2]=b;v[f+28>>2]=v[c+452>>2];f=v[c+496>>2];u[f+22>>1]=e;v[f+24>>2]=b;v[f+28>>2]=v[c+612>>2];e=v[c+512>>2];wb=z[e+16>>2];f=v[c+508>>2];xb=z[f+16>>2];yb=z[e+8>>2];zb=z[e+4>>2];Ab=z[e>>2];Bb=z[f+8>>2];Cb=z[f+4>>2];Db=z[f>>2];h=v[c+352>>2];Eb=z[h+16>>2];i=v[c+348>>2];Fb=z[i+16>>2];Gb=z[h+8>>2];Hb=z[h+4>>2];Ib=z[h>>2];Jb=z[i+8>>2];Kb=z[i+4>>2];Lb=z[i>>2];l=v[c+192>>2];Mb=z[l+16>>2];q=v[c+188>>2];Nb=z[q+16>>2];Ob=z[l+8>>2];Pb=z[l+4>>2];Qb=z[l>>2];Rb=z[q+8>>2];Sb=z[q+4>>2];Tb=z[q>>2];Ub=z[e+24>>2];Vb=z[e+20>>2];Wb=z[f+24>>2];Xb=z[f+20>>2];Yb=z[h+24>>2];Zb=z[h+20>>2];_b=z[i+24>>2];$b=z[i+20>>2];ac=z[l+24>>2];bc=z[l+20>>2];cc=z[q+24>>2];dc=z[q+20>>2];k=v[c+32>>2];ec=z[k+24>>2];fc=z[k+20>>2];o=v[c+28>>2];gc=z[o+24>>2];hc=z[o+20>>2];r=z[c+280>>2];D=z[c+284>>2];J=z[c+440>>2];K=z[c+444>>2];L=z[c+600>>2];X=z[c+604>>2];$=z[q+12>>2];aa=z[i+12>>2];ba=z[f+12>>2];ca=z[c+168>>2];da=z[l+12>>2];E=z[c+328>>2];F=z[h+12>>2];G=z[c+488>>2];H=z[e+12>>2];Pa=z[c+164>>2];Qa=z[c+324>>2];Ra=z[c+484>>2];Sa=z[c+172>>2];Ta=z[c+332>>2];Ua=z[c+492>>2];O=z[c+300>>2];P=z[c+460>>2];Q=z[c+620>>2];R=z[c+144>>2];S=z[c+304>>2];T=z[c+464>>2];U=z[c+624>>2];ea=z[c+148>>2];ha=z[c+308>>2];ia=z[c+468>>2];ic=z[k+16>>2];jc=z[o+16>>2];kc=z[k+8>>2];lc=z[k+4>>2];mc=z[k>>2];nc=z[o+8>>2];oc=z[o+4>>2];pc=z[o>>2];Y=z[c+120>>2];Z=z[c+124>>2];ja=z[c>>2];ka=z[o+12>>2];la=z[c+160>>2];ma=z[c+320>>2];na=z[c+480>>2];oa=z[c+8>>2];pa=z[k+12>>2];Va=z[c+4>>2];Wa=z[c+12>>2];qa=z[c+140>>2];z[b+156>>2]=z[c+628>>2];z[b+152>>2]=ia;z[b+148>>2]=ha;z[b+144>>2]=ea;z[b+140>>2]=U;z[b+136>>2]=T;z[b+132>>2]=S;z[b+128>>2]=R;z[b+124>>2]=Q;z[b+120>>2]=P;z[b+116>>2]=O;z[b+112>>2]=qa;z[b+108>>2]=Ua;z[b+104>>2]=Ta;z[b+100>>2]=Sa;z[b+96>>2]=Wa;z[b+92>>2]=Ra;z[b+88>>2]=Qa;z[b+84>>2]=Pa;z[b+80>>2]=Va;Xa=C(G*H);z[b+76>>2]=Xa;Ya=C(E*F);z[b+72>>2]=Ya;Za=C(ca*da);z[b+68>>2]=Za;_a=C(oa*pa);z[b+64>>2]=_a;$a=C(na*ba);z[b+60>>2]=$a;ab=C(ma*aa);z[b+56>>2]=ab;bb=C(la*$);z[b+52>>2]=bb;cb=C(ja*ka);z[b+48>>2]=cb;t[b+15|0]=L!=C(34028234663852886e22)|X!=C(34028234663852886e22);t[b+14|0]=J!=C(34028234663852886e22)|K!=C(34028234663852886e22);t[b+13|0]=r!=C(34028234663852886e22)|D!=C(34028234663852886e22);t[b+12|0]=Y!=C(34028234663852886e22)|Z!=C(34028234663852886e22);z[b+16>>2]=Y*s;v[b+4>>2]=_;z[b+20>>2]=r*s;z[b+24>>2]=J*s;z[b+28>>2]=L*s;z[b+32>>2]=Z*s;z[b+36>>2]=D*s;z[b+40>>2]=K*s;z[b+44>>2]=X*s;t[b|0]=9;e=v[c+116>>2];t[b+8|0]=e;f=v[c+276>>2];t[b+9|0]=f;h=v[c+436>>2];t[b+10|0]=h;i=v[c+596>>2];t[b+11|0]=i;b=b+160|0;if(_){qc=e-1|0;rc=(f+n|0)-1|0;V=(a+h|0)-1|0;W=(i+m|0)-1|0;r=s>2];E=C(1);i=v[f+(q<<2)>>2];E=w[i+76|0]&32?w[c+138|0]?r:C(1):E;f=v[(d+1536|0)+(a<<2)>>2];F=C(1);G=C(1);G=w[e+76|0]&32?w[c+298|0]?r:C(1):G;h=v[(d+1536|0)+(m<<2)>>2];F=w[f+76|0]&32?w[c+458|0]?r:C(1):F;o=m<<4;k=o+d|0;ha=z[k+8>>2];ia=z[k+4>>2];ja=z[k>>2];db=a<<4;k=d+db|0;ka=z[k+8>>2];la=z[k+4>>2];ma=z[k>>2];eb=n<<4;k=d+eb|0;na=z[k+8>>2];oa=z[k+4>>2];pa=z[k>>2];fb=q<<4;k=d+fb|0;qa=z[k+8>>2];ta=z[k+4>>2];ua=z[k>>2];k=d+768|0;o=k+o|0;va=z[o+8>>2];wa=z[o+4>>2];ya=z[o>>2];o=k+db|0;za=z[o+8>>2];Aa=z[o+4>>2];Ca=z[o>>2];o=k+eb|0;Da=z[o+8>>2];Ea=z[o+4>>2];Fa=z[o>>2];k=k+fb|0;Ga=z[k+8>>2];Ha=z[k+4>>2];Ia=z[k>>2];H=C(1);gb=z[i+20>>2];hb=z[e+20>>2];ib=z[f+20>>2];jb=z[h+20>>2];kb=z[i+24>>2];lb=z[e+24>>2];mb=z[f+24>>2];nb=z[h+24>>2];D=z[i>>2];J=z[e>>2];K=z[f>>2];L=z[h>>2];X=z[i+4>>2];Y=z[e+4>>2];Z=z[f+4>>2];$=z[h+4>>2];aa=z[i+8>>2];ba=z[e+8>>2];ca=z[f+8>>2];da=z[h+8>>2];ob=z[i+16>>2];pb=z[e+16>>2];qb=z[f+16>>2];rb=z[h+16>>2];O=z[i+44>>2];P=z[e+44>>2];Q=z[f+44>>2];R=z[h+44>>2];S=z[i+60>>2];T=z[e+60>>2];U=z[f+60>>2];H=w[h+76|0]&32?w[c+618|0]?r:C(1):H;z[b+236>>2]=H*z[h+60>>2];z[b+232>>2]=F*U;z[b+228>>2]=G*T;z[b+224>>2]=E*S;z[b+220>>2]=H*R;z[b+216>>2]=F*Q;z[b+212>>2]=G*P;z[b+208>>2]=E*O;z[b+140>>2]=nb;z[b+136>>2]=mb;z[b+132>>2]=lb;z[b+128>>2]=kb;z[b+124>>2]=jb;z[b+120>>2]=ib;z[b+116>>2]=hb;z[b+112>>2]=gb;z[b+108>>2]=rb;z[b+104>>2]=qb;z[b+100>>2]=pb;z[b+96>>2]=ob;z[b+92>>2]=va;z[b+88>>2]=za;z[b+84>>2]=Da;z[b+80>>2]=Ga;z[b+76>>2]=wa;z[b+72>>2]=Aa;z[b+68>>2]=Ea;z[b+64>>2]=Ha;z[b+60>>2]=ya;z[b+56>>2]=Ca;z[b+52>>2]=Fa;z[b+48>>2]=Ia;z[b+44>>2]=da;z[b+40>>2]=ca;z[b+36>>2]=ba;z[b+32>>2]=aa;z[b+28>>2]=$;z[b+24>>2]=Z;z[b+20>>2]=Y;z[b+16>>2]=X;z[b+12>>2]=L;z[b+8>>2]=K;z[b+4>>2]=J;z[b>>2]=D;k=v[d+1740>>2];v[b+248>>2]=v[d+1736>>2];v[b+252>>2]=k;k=v[d+1732>>2];v[b+240>>2]=v[d+1728>>2];v[b+244>>2]=k;v[b+256>>2]=0;v[b+260>>2]=0;v[b+264>>2]=0;v[b+268>>2]=0;sc=z[i+56>>2];tc=z[i+52>>2];uc=z[e+56>>2];vc=z[e+52>>2];wc=z[f+56>>2];xc=z[f+52>>2];yc=z[h+56>>2];zc=z[h+52>>2];E=z[i+36>>2];F=z[e+36>>2];G=z[f+36>>2];H=z[h+36>>2];O=z[i+40>>2];P=z[e+40>>2];Q=z[f+40>>2];R=z[h+40>>2];Ac=z[i+48>>2];Bc=z[e+48>>2];Cc=z[f+48>>2];Dc=z[h+48>>2];S=z[i+32>>2];T=z[e+32>>2];U=z[f+32>>2];ea=z[h+32>>2];z[b+364>>2]=ha;z[b+360>>2]=ka;z[b+356>>2]=na;z[b+352>>2]=qa;z[b+348>>2]=ia;z[b+344>>2]=la;z[b+340>>2]=oa;z[b+336>>2]=ta;z[b+332>>2]=ja;z[b+328>>2]=ma;z[b+324>>2]=pa;z[b+320>>2]=ua;z[b+316>>2]=R;z[b+312>>2]=Q;z[b+308>>2]=P;z[b+304>>2]=O;z[b+300>>2]=H;z[b+296>>2]=G;z[b+292>>2]=F;z[b+288>>2]=E;z[b+284>>2]=ea;z[b+280>>2]=U;z[b+276>>2]=T;z[b+272>>2]=S;Vy(b+144|0,b+160|0,b+176|0,b+192|0,i,C(C(C(Va*C(C(Ga*Ga)+C(C(Ia*Ia)+C(Ha*Ha))))+C(cb*C(C(aa*aa)+C(C(D*D)+C(X*X)))))+C(C(Wa*C(C(qa*qa)+C(C(ua*ua)+C(ta*ta))))+C(_a*C(C(O*O)+C(C(S*S)+C(E*E)))))),z[c+128>>2],s,I,v[c+28>>2],v[c+32>>2],y[c+116>>2]<=l>>>0);Vy(b+148|0,b+164|0,b+180|0,b+196|0,e,C(C(C(Pa*C(C(Da*Da)+C(C(Fa*Fa)+C(Ea*Ea))))+C(bb*C(C(ba*ba)+C(C(J*J)+C(Y*Y)))))+C(C(Sa*C(C(na*na)+C(C(pa*pa)+C(oa*oa))))+C(Za*C(C(P*P)+C(C(T*T)+C(F*F)))))),z[c+288>>2],s,I,v[c+188>>2],v[c+192>>2],y[c+276>>2]<=l>>>0);Vy(b+152|0,b+168|0,b+184|0,b+200|0,f,C(C(C(Qa*C(C(za*za)+C(C(Ca*Ca)+C(Aa*Aa))))+C(ab*C(C(ca*ca)+C(C(K*K)+C(Z*Z)))))+C(C(Ta*C(C(ka*ka)+C(C(ma*ma)+C(la*la))))+C(Ya*C(C(Q*Q)+C(C(U*U)+C(G*G)))))),z[c+448>>2],s,I,v[c+348>>2],v[c+352>>2],y[c+436>>2]<=l>>>0);Vy(b+156|0,b+172|0,b+188|0,b+204|0,h,C(C(C(Ra*C(C(va*va)+C(C(ya*ya)+C(wa*wa))))+C($a*C(C(da*da)+C(C(L*L)+C($*$)))))+C(C(Ua*C(C(ha*ha)+C(C(ja*ja)+C(ia*ia))))+C(Xa*C(C(R*R)+C(C(ea*ea)+C(H*H)))))),z[c+608>>2],s,I,v[c+508>>2],v[c+512>>2],y[c+596>>2]<=l>>>0);L=C(C(C(C(C(Bb*da)+C(C(Db*L)+C(Cb*$)))+C(C(Wb*nb)+C(C(xb*rb)+C(Xb*jb))))-C(C(C(yb*R)+C(C(Ab*ea)+C(zb*H)))+C(C(Ub*yc)+C(C(wb*Dc)+C(Vb*zc)))))*z[b+188>>2]);z[b+156>>2]=L+z[b+156>>2];K=C(C(C(C(C(Jb*ca)+C(C(Lb*K)+C(Kb*Z)))+C(C(_b*mb)+C(C(Fb*qb)+C($b*ib))))-C(C(C(Gb*Q)+C(C(Ib*U)+C(Hb*G)))+C(C(Yb*wc)+C(C(Eb*Cc)+C(Zb*xc)))))*z[b+184>>2]);z[b+152>>2]=K+z[b+152>>2];J=C(C(C(C(C(Rb*ba)+C(C(Tb*J)+C(Sb*Y)))+C(C(cc*lb)+C(C(Nb*pb)+C(dc*hb))))-C(C(C(Ob*P)+C(C(Qb*T)+C(Pb*F)))+C(C(ac*uc)+C(C(Mb*Bc)+C(bc*vc)))))*z[b+180>>2]);z[b+148>>2]=J+z[b+148>>2];D=C(C(C(C(C(nc*aa)+C(C(pc*D)+C(oc*X)))+C(C(gc*kb)+C(C(jc*ob)+C(hc*gb))))-C(C(C(kc*O)+C(C(mc*S)+C(lc*E)))+C(C(ec*sc)+C(C(ic*Ac)+C(fc*tc)))))*z[b+176>>2]);z[b+144>>2]=D+z[b+144>>2];z[b+160>>2]=D+z[b+160>>2];z[b+164>>2]=J+z[b+164>>2];z[b+168>>2]=K+z[b+168>>2];z[b+172>>2]=L+z[b+172>>2];if(w[i+76|0]&16){v[b+256>>2]=v[b+256>>2]|2}if(w[e+76|0]&16){v[b+260>>2]=v[b+260>>2]|2}if(w[f+76|0]&16){v[b+264>>2]=v[b+264>>2]|2}if(w[h+76|0]&16){v[b+268>>2]=v[b+268>>2]|2}b=b+368|0;m=((m|0)!=(W|0))+m|0;a=((a|0)!=(V|0))+a|0;n=((n|0)!=(rc|0))+n|0;q=((q|0)!=(qc|0))+q|0;l=l+1|0;if((_|0)!=(l|0)){continue}break}}v[b>>2]=0;v[b+4>>2]=0;a=2}xa=d+1744|0}xa=j+3872|0;N=v[g+12>>2]+N|0;if((a|0)==2){break a}}a=0;if(!x[M+4>>1]){break a}while(1){N=sy((g+48|0)+(a<<4)|0,(g+112|0)+B(a,160)|0,g+816|0,s,I,Oa)+N|0;a=a+1|0;if(a>>>0>1]){continue}break}}fa=fa+1|0;if((Ja|0)!=(fa|0)){continue}break}}a=p+12168|0;v[a>>2]=v[a>>2]+N;a=v[A+336>>2];v[p>>2]=v[a>>2];v[a>>2]=p;xa=g+864|0}function Hp(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=v[a+5092>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+5052>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+5012>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4972>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4932>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4892>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4888>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+4880>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4876>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+4868>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4864>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+4856>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4816>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}Ip(a+4788|0);b=v[a+4780>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4776>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+4768>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}c=a+16|0;a=v[c+4736>>2];if(!(!a|v[c+4740>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+4736>>2]=0;a=v[c+4724>>2];if(!(!a|v[c+4728>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+4724>>2]=0;a=v[c+4720>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[c+4712>>2];if(!a){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4704>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[c+4696>>2];if(!a){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4692>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=v[c+4684>>2];if(!a){break g}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4680>>2];h:{if((a|0)<0|!(a&2147483647)){break h}a=v[c+4672>>2];if(!a){break h}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4632>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}Ip(c+4584|0);v[c+4560>>2]=0;v[c+4544>>2]=126144;v[c+4520>>2]=0;v[c+4504>>2]=126144;v[c+4480>>2]=0;v[c+4464>>2]=126144;v[c+4440>>2]=0;v[c+4424>>2]=126144;v[c+4400>>2]=0;v[c+4384>>2]=126144;v[c+4360>>2]=0;v[c+4344>>2]=126144;v[c+4320>>2]=0;v[c+4304>>2]=126144;v[c+4280>>2]=0;v[c+4264>>2]=126144;v[c+4160>>2]=126184;a=v[c+4256>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4248>>2];i:{if((a|0)<0|!(a&2147483647)){break i}a=v[c+4240>>2];if((a|0)==(c+4220|0)){t[c+4236|0]=0;break i}if(!a){break i}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+4216>>2];j:{if((a|0)<0|!(a&2147483647)){break j}a=v[c+4208>>2];if((a|0)==(c+4188|0)){t[c+4204|0]=0;break j}if(!a){break j}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+4136>>2]=0;v[c+4120>>2]=126144;v[c+4096>>2]=0;v[c+4080>>2]=126144;v[c+4056>>2]=0;v[c+4040>>2]=126144;v[c+4016>>2]=0;v[c+4e3>>2]=126144;v[c+3976>>2]=0;v[c+3960>>2]=126144;v[c+3936>>2]=0;v[c+3920>>2]=126144;v[c+3896>>2]=0;v[c+3880>>2]=126144;v[c+3856>>2]=0;v[c+3840>>2]=126144;v[c+3816>>2]=0;v[c+3800>>2]=126144;v[c+3776>>2]=0;v[c+3760>>2]=126144;v[c+3736>>2]=0;v[c+3720>>2]=126144;v[c+3680>>2]=126144;v[c+3696>>2]=0;v[c+3640>>2]=126144;v[c+3656>>2]=0;v[c+3600>>2]=126144;v[c+3616>>2]=0;v[c+3560>>2]=126144;v[c+3576>>2]=0;v[c+3520>>2]=126144;v[c+3536>>2]=0;v[c+3480>>2]=126144;v[c+3496>>2]=0;v[c+3456>>2]=0;v[c+3440>>2]=126144;v[c+3400>>2]=126144;v[c+3416>>2]=0;v[c+3376>>2]=0;v[c+3360>>2]=126144;v[c+3320>>2]=126144;v[c+3336>>2]=0;v[c+3280>>2]=126144;v[c+3296>>2]=0;v[c+3240>>2]=126144;v[c+3256>>2]=0;v[c+3200>>2]=126144;v[c+3216>>2]=0;v[c+3160>>2]=126144;v[c+3176>>2]=0;v[c+3120>>2]=126144;v[c+3136>>2]=0;v[c+3080>>2]=126144;v[c+3096>>2]=0;b=v[c+3064>>2];if((b|0)>0){a=v[c+3060>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3068>>2];k:{if((a|0)<0|!(a&2147483647)){break k}a=v[c+3060>>2];if(!a){break k}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=v[c+3052>>2];if((b|0)>0){a=v[c+3048>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3056>>2];l:{if((a|0)<0|!(a&2147483647)){break l}a=v[c+3048>>2];if(!a){break l}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=v[c+3040>>2];if((b|0)>0){a=v[c+3036>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3044>>2];m:{if((a|0)<0|!(a&2147483647)){break m}a=v[c+3036>>2];if(!a){break m}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=v[c+3028>>2];if((b|0)>0){a=v[c+3024>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3032>>2];n:{if((a|0)<0|!(a&2147483647)){break n}a=v[c+3024>>2];if(!a){break n}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=v[c+3016>>2];if((b|0)>0){a=v[c+3012>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3020>>2];o:{if((a|0)<0|!(a&2147483647)){break o}a=v[c+3012>>2];if(!a){break o}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}b=v[c+3004>>2];if((b|0)>0){a=v[c+3e3>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=v[c+3008>>2];p:{if((a|0)<0|!(a&2147483647)){break p}a=v[c+3e3>>2];if(!a){break p}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2976>>2]=0;v[c+2960>>2]=126144;v[c+2856>>2]=126184;a=v[c+2952>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2944>>2];q:{if((a|0)<0|!(a&2147483647)){break q}a=v[c+2936>>2];if((a|0)==(c+2916|0)){t[c+2932|0]=0;break q}if(!a){break q}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2912>>2];r:{if((a|0)<0|!(a&2147483647)){break r}a=v[c+2904>>2];if((a|0)==(c+2884|0)){t[c+2900|0]=0;break r}if(!a){break r}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2752>>2]=126184;a=v[c+2848>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2840>>2];s:{if((a|0)<0|!(a&2147483647)){break s}a=v[c+2832>>2];if((a|0)==(c+2812|0)){t[c+2828|0]=0;break s}if(!a){break s}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2808>>2];t:{if((a|0)<0|!(a&2147483647)){break t}a=v[c+2800>>2];if((a|0)==(c+2780|0)){t[c+2796|0]=0;break t}if(!a){break t}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2728>>2]=0;v[c+2712>>2]=126144;a=v[c+2516>>2];if(!(!a|v[c+2520>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2516>>2]=0;a=v[c+2512>>2];u:{if((a|0)<0|!(a&2147483647)){break u}a=v[c+2504>>2];if(!a){break u}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2500>>2];v:{if((a|0)<0|!(a&2147483647)){break v}a=v[c+2492>>2];if(!a){break v}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2488>>2];w:{if((a|0)<0|!(a&2147483647)){break w}a=v[c+2480>>2];if(!a){break w}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2476>>2];x:{if((a|0)<0|!(a&2147483647)){break x}a=v[c+2468>>2];if(!a){break x}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2464>>2];y:{if((a|0)<0|!(a&2147483647)){break y}a=v[c+2456>>2];if(!a){break y}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2444>>2];if(!(!a|v[c+2448>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2444>>2]=0;a=v[c+2432>>2];if(!(!a|v[c+2436>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+2432>>2]=0;a=v[c+2428>>2];z:{if((a|0)<0|!(a&2147483647)){break z}a=v[c+2420>>2];if(!a){break z}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2340>>2];A:{if((a|0)<0|!(a&2147483647)){break A}a=v[c+2332>>2];if(!a){break A}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2328>>2];B:{if((a|0)<0|!(a&2147483647)){break B}a=v[c+2320>>2];if(!a){break B}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2316>>2];C:{if((a|0)<0|!(a&2147483647)){break C}a=v[c+2308>>2];if(!a){break C}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2304>>2];D:{if((a|0)<0|!(a&2147483647)){break D}a=v[c+2296>>2];if(!a){break D}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2292>>2];E:{if((a|0)<0|!(a&2147483647)){break E}a=v[c+2284>>2];if(!a){break E}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2240>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+2200>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+2156>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;f=c+1876|0;a=v[f+288>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];F:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;G:{if(!h){break G}b=h<<2;if(!b){break G}a=v[37696];e=a+12|0;a=(k=e,l=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?53263:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}e=v[d+20>>2];i=(e<<2)+a|0;if((e|0)>0){g=v[d+16>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[d+8>>2];H:{if(v[d+24>>2]<0){break H}b=v[d+16>>2];if(!b){break H}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=a;v[d+20>>2]=e+1;break F}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[f+288>>2]>>2];v[f+288>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Ns(b,e,a);Ns(v[f+264>>2],v[f+268>>2],a);a=v[d+24>>2];I:{if((a|0)<0|!(a&2147483647)){break I}a=v[d+16>>2];if(!a){break I}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+2140>>2];b=v[c+2144>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+2140>>2]}b=v[c+2148>>2];J:{if((b|0)<0|!(b&2147483647)){break J}if((c+1880|0)==(a|0)){t[c+2136|0]=0;break J}if(!a){break J}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+1864>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;f=c+1584|0;a=v[f+288>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];K:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;L:{if(!h){break L}b=h<<2;if(!b){break L}a=v[37696];e=a+12|0;a=(o=e,n=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?52633:63804,l=16608,k=553,j=v[v[e>>2]+8>>2],Ba[j](o|0,n|0,m|0,l|0,k|0)|0)}e=v[d+20>>2];i=(e<<2)+a|0;if((e|0)>0){g=v[d+16>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[d+8>>2];M:{if(v[d+24>>2]<0){break M}b=v[d+16>>2];if(!b){break M}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=a;v[d+20>>2]=e+1;break K}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[f+288>>2]>>2];v[f+288>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Os(b,e,a);Os(v[f+264>>2],v[f+268>>2],a);a=v[d+24>>2];N:{if((a|0)<0|!(a&2147483647)){break N}a=v[d+16>>2];if(!a){break N}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+1848>>2];b=v[c+1852>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+1848>>2]}b=v[c+1856>>2];O:{if((b|0)<0|!(b&2147483647)){break O}if((c+1588|0)==(a|0)){t[c+1844|0]=0;break O}if(!a){break O}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+1572>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;f=c+1292|0;a=v[f+288>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];P:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];h=b&2147483647?b<<1:1;Q:{if(!h){break Q}b=h<<2;if(!b){break Q}a=v[37696];e=a+12|0;a=(k=e,l=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?52331:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}e=v[d+20>>2];i=(e<<2)+a|0;if((e|0)>0){g=v[d+16>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[d+8>>2];R:{if(v[d+24>>2]<0){break R}b=v[d+16>>2];if(!b){break R}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);e=v[d+20>>2]}v[d+24>>2]=h;v[d+16>>2]=a;v[d+20>>2]=e+1;break P}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[f+288>>2]>>2];v[f+288>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Ps(b,e,a);Ps(v[f+264>>2],v[f+268>>2],a);a=v[d+24>>2];S:{if((a|0)<0|!(a&2147483647)){break S}a=v[d+16>>2];if(!a){break S}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+1556>>2];b=v[c+1560>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+1556>>2]}b=v[c+1564>>2];T:{if((b|0)<0|!(b&2147483647)){break T}if((c+1296|0)==(a|0)){t[c+1552|0]=0;break T}if(!a){break T}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1252>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1248>>2];U:{if((a|0)<0|!(a&2147483647)){break U}a=v[c+1240>>2];if(!a){break U}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1200>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1188>>2];V:{if((a|0)<0|!(a&2147483647)){break V}a=v[c+1180>>2];if(!a){break V}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1176>>2];W:{if((a|0)<0|!(a&2147483647)){break W}a=v[c+1168>>2];if(!a){break W}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1164>>2];X:{if((a|0)<0|!(a&2147483647)){break X}a=v[c+1156>>2];if(!a){break X}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1096>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+1076>>2];Y:{if((a|0)<0|!(a&2147483647)){break Y}a=v[c+1068>>2];if(!a){break Y}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+964>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;a=v[c+972>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];Z:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;_:{if(!f){break _}b=f<<2;if(!b){break _}a=v[37696];e=a+12|0;a=(o=e,n=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?54083:63804,l=16608,k=553,j=v[v[e>>2]+8>>2],Ba[j](o|0,n|0,m|0,l|0,k|0)|0)}g=v[d+20>>2];h=(g<<2)+a|0;if((g|0)>0){e=v[d+16>>2];b=a;while(1){v[b>>2]=v[e>>2];e=e+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}v[h>>2]=v[d+8>>2];$:{if(v[d+24>>2]<0){break $}b=v[d+16>>2];if(!b){break $}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);g=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=a;v[d+20>>2]=g+1;break Z}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[c+972>>2]>>2];v[c+972>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Qs(b,e,a);Qs(v[c+948>>2],v[c+952>>2],a);a=v[d+24>>2];aa:{if((a|0)<0|!(a&2147483647)){break aa}a=v[d+16>>2];if(!a){break aa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+948>>2];b=v[c+952>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+948>>2]}b=v[c+956>>2];ba:{if((b|0)<0|!(b&2147483647)){break ba}if((c+688|0)==(a|0)){t[c+944|0]=0;break ba}if(!a){break ba}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+672>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;a=v[c+680>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];ca:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;da:{if(!f){break da}b=f<<2;if(!b){break da}a=v[37696];e=a+12|0;a=(k=e,l=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?52957:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}g=v[d+20>>2];h=(g<<2)+a|0;if((g|0)>0){e=v[d+16>>2];b=a;while(1){v[b>>2]=v[e>>2];e=e+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}v[h>>2]=v[d+8>>2];ea:{if(v[d+24>>2]<0){break ea}b=v[d+16>>2];if(!b){break ea}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);g=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=a;v[d+20>>2]=g+1;break ca}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[c+680>>2]>>2];v[c+680>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Rs(b,e,a);Rs(v[c+656>>2],v[c+660>>2],a);a=v[d+24>>2];fa:{if((a|0)<0|!(a&2147483647)){break fa}a=v[d+16>>2];if(!a){break fa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+656>>2];b=v[c+660>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+656>>2]}b=v[c+664>>2];ga:{if((b|0)<0|!(b&2147483647)){break ga}if((c+396|0)==(a|0)){t[c+652|0]=0;break ga}if(!a){break ga}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[c+380>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;a=v[c+388>>2];if(a){while(1){v[d+8>>2]=a;b=v[d+20>>2];ha:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){a=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;ia:{if(!f){break ia}b=f<<2;if(!b){break ia}a=v[37696];e=a+12|0;a=(o=e,n=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?52491:63804,l=16608,k=553,j=v[v[e>>2]+8>>2],Ba[j](o|0,n|0,m|0,l|0,k|0)|0)}g=v[d+20>>2];h=(g<<2)+a|0;if((g|0)>0){e=v[d+16>>2];b=a;while(1){v[b>>2]=v[e>>2];e=e+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}v[h>>2]=v[d+8>>2];ja:{if(v[d+24>>2]<0){break ja}b=v[d+16>>2];if(!b){break ja}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);g=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=a;v[d+20>>2]=g+1;break ha}v[v[d+16>>2]+(b<<2)>>2]=a;v[d+20>>2]=b+1}a=v[v[c+388>>2]>>2];v[c+388>>2]=a;if(a){continue}break}b=v[d+16>>2];e=v[d+20>>2]}else{e=0}a=d+8|0;Ss(b,e,a);Ss(v[c+364>>2],v[c+368>>2],a);a=v[d+24>>2];ka:{if((a|0)<0|!(a&2147483647)){break ka}a=v[d+16>>2];if(!a){break ka}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+32|0}a=v[c+364>>2];b=v[c+368>>2];if(b){b=(b<<2)+a|0;while(1){d=v[a>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}a=a+4|0;if((b|0)!=(a|0)){continue}break}a=v[c+364>>2]}b=v[c+372>>2];la:{if((b|0)<0|!(b&2147483647)){break la}if((c+104|0)==(a|0)){t[c+360|0]=0;break la}if(!a){break la}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+84>>2];ma:{if((a|0)<0|!(a&2147483647)){break ma}a=v[c+76>>2];if(!a){break ma}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+72>>2];na:{if((a|0)<0|!(a&2147483647)){break na}a=v[c- -64>>2];if(!a){break na}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+60>>2];oa:{if((a|0)<0|!(a&2147483647)){break oa}a=v[c+52>>2];if(!a){break oa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+48>>2];pa:{if((a|0)<0|!(a&2147483647)){break pa}a=v[c+40>>2];if(!a){break pa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c+32>>2];qa:{if((a|0)<0|!(a&2147483647)){break qa}a=v[c+24>>2];if(!a){break qa}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[c>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a-v[a-4>>2]|0)}}function FL(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,A=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=C(0),L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=0,_=0,$=0,aa=0,ba=0;h=v[a+96>>2];c=v[b+40>>2];if(h>>>0>>0){e=c<<2;if(e){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,e,24422,13406,2977)|0;h=v[a+96>>2]}if(h){I9(d,v[a+92>>2],h<<2);j=v[a+96>>2]}if(c>>>0>j>>>0){j=j<<2;J9(j+d|0,255,e-j|0)}j=v[a+92>>2];if(j){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,j)}v[a+96>>2]=c;v[a+92>>2]=d}v[a+124>>2]=v[b+28>>2];v[a+128>>2]=v[b+32>>2];n=v[b+16>>2];a:{if(!n){break a}h=v[b+20>>2];if(!h){break a}d=v[a+92>>2];while(1){g=0;c=v[a+88>>2];l=v[n>>2]<<2;i=v[l+d>>2];j=i>>>2|0;d=v[c+24>>2]+B(j,12)|0;f=x[d+4>>1];b:{if(!f){break b}e=d+8|0;e=(f|0)!=1?v[(c+B(f,12)|0)+92>>2]+(v[d+8>>2]<<2)|0:e;m=v[c+12>>2];k=f>>>0>1?f:1;while(1){o=(g<<2)+e|0;qL(v[(m+B(x[o+2>>1],40)|0)+28>>2],x[o>>1]);g=g+1|0;if((k|0)!=(g|0)){continue}break}if(f>>>0<2){break b}e=v[d+8>>2];k=v[(c+B(f,12)|0)+92>>2]+(e<<2)|0;f=(c+(f<<2)|0)+3176|0;v[k>>2]=v[f>>2];v[f>>2]=e}g=0;u[d+4>>1]=0;u[d+6>>1]=x[d+6>>1]|4;v[d+8>>2]=v[c+4>>2];f=i>>>7|0;c:{if(f>>>0>2]){e=j&31;d=v[c+76>>2];break c}d=v[37696];e=j&31;i=(j+128>>>5|0)+((e|0)!=0)|0;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,i<<2,24422,13406,274)|0;m=v[c+80>>2];d:{if(m){I9(d,v[c+76>>2],m<<2);g=v[c+80>>2];if((i|0)==(g|0)){break d}}J9((g<<2)+d|0,0,i-g<<2)}g=v[c+76>>2];if(g){m=v[37696];Ba[v[v[m+12>>2]+12>>2]](m+12|0,g)}v[c+80>>2]=i;v[c+76>>2]=d}d=(f<<2)+d|0;v[d>>2]=v[d>>2]|1<>2]=j;e:{if(f>>>0>2]){e=j&31;d=v[c+84>>2];break e}d=v[37696];e=j&31;i=(j+128>>>5|0)+((e|0)!=0)|0;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,i<<2,24422,13406,274)|0;g=0;m=v[c+88>>2];f:{if(m){I9(d,v[c+84>>2],m<<2);g=v[c+88>>2];if((i|0)==(g|0)){break f}}J9((g<<2)+d|0,0,i-g<<2)}g=v[c+84>>2];if(g){m=v[37696];Ba[v[v[m+12>>2]+12>>2]](m+12|0,g)}v[c+88>>2]=i;v[c+84>>2]=d}d=(f<<2)+d|0;v[d>>2]=v[d>>2]|1<>>0>2]){e=j&31;d=v[c+4216>>2];break g}d=v[37696];e=j&31;j=(j+128>>>5|0)+((e|0)!=0)|0;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,j<<2,24422,13406,274)|0;g=0;i=v[c+4220>>2];h:{if(i){I9(d,v[c+4216>>2],i<<2);g=v[c+4220>>2];if((j|0)==(g|0)){break h}}J9((g<<2)+d|0,0,j-g<<2)}g=v[c+4216>>2];if(g){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,g)}v[c+4220>>2]=j;v[c+4216>>2]=d}c=(f<<2)+d|0;d=v[c>>2];$=c,aa=Vaa(-2,e)&d,v[$>>2]=aa;d=v[a+92>>2];v[l+d>>2]=-1;n=n+4|0;h=h-1|0;if(h){continue}break}}g=xa+-64|0;xa=g;n=v[b>>2];i:{if(!n){break i}j=v[b+4>>2];if(!j){break i}E=v[b+28>>2];D=v[b+24>>2];while(1){r=v[n>>2];c=D+B(r,24)|0;S=z[c+16>>2];T=z[c+20>>2];U=z[c+24>>2];V=z[c>>2];W=z[c+4>>2];X=z[c+8>>2];K=z[c+12>>2];F=r<<2;A=z[F+v[b+36>>2]>>2];z[g+60>>2]=K-A;z[g+56>>2]=X-A;z[g+52>>2]=W-A;z[g+48>>2]=V-A;z[g+44>>2]=A+U;z[g+40>>2]=A+T;z[g+36>>2]=A+S;z[g+32>>2]=A+K;v[g+8>>2]=g+48;c=v[g+8>>2];v[g+8>>2]=g+32;d=v[g+8>>2];e=v[c>>2];v[g+8>>2]=((e|0)<0?e^-1:e|-2147483648)-16>>>1&2147483640;e=v[c+4>>2];v[g+12>>2]=((e|0)<0?e^-1:e|-2147483648)-16>>>1&2147483640;c=v[c+8>>2];v[g+16>>2]=((c|0)<0?c^-1:c|-2147483648)-16>>>1&2147483640;c=v[d>>2];v[g+20>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;c=v[d+4>>2];v[g+24>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;c=v[d+8>>2];v[g+28>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;l=g+8|0;s=!v[E+F>>2];o=xa-1040|0;xa=o;f=v[a+88>>2];d=v[f+4>>2];j:{if((d|0)!=-1){m=v[f+24>>2]+B(d,12)|0;v[f+4>>2]=v[m+8>>2];e=(x[m+6>>1]>>>1^-1)&1;break j}d=v[f+28>>2];c=d;e=c+1|0;h=v[f+32>>2]&2147483647;k:{if(e>>>0<=h>>>0){break k}c=d;k=h;h=h?h<<1:2;h=e>>>0>h>>>0?e:h;if(k>>>0>=h>>>0){break k}uL(f+24|0,h);c=v[f+28>>2]}v[f+28>>2]=e;m=v[f+24>>2]+B(c,12)|0;e=0}G=s|e<<1|d<<2;l:{m:{n:{o:{p:{q:{p=v[f>>2];if(!p){break q}J=v[f+12>>2];h=0;i=1;c=0;while(1){q=J+B(h,40)|0;H=v[q+16>>2];I=v[l>>2];r:{if(H>>>0>>0){break r}R=v[l+12>>2];L=v[q+4>>2];if(R>>>0>>0){break r}M=v[q+20>>2];N=v[l+4>>2];if(M>>>0>>0){break r}O=v[l+16>>2];P=v[q+8>>2];if(O>>>0

>>0){break r}Q=v[q+24>>2];Y=v[l+8>>2];if(Q>>>0>>0){break r}Z=v[l+20>>2];_=v[q+12>>2];if(Z>>>0<_>>>0){break r}k=0;i=i&(I>>>0>>0|N>>>0

>>0?k:Y>>>0>=_>>>0&H>>>0>=R>>>0&M>>>0>=O>>>0&Q>>>0>=Z>>>0);k=v[q+28>>2];if(v[k+64>>2]==65535){b9(v[37696],32,13406,2355,64774,0);break r}k=pL(k,l,G,s);q=o+(c<<2)|0;u[q+2>>1]=h;u[q>>1]=k;c=c+1|0}h=h+1|0;if((p|0)!=(h|0)){continue}break}switch(c|0){case 1:break o;case 0:break q;default:break p}}u[m+4>>1]=0;c=1;p=e<<1;break m}l=B(c,12)+f|0;k=l+92|0;q=((c<<2)+f|0)+3176|0;h=v[q>>2];s:{if((h|0)!=-1){v[m+8>>2]=h;h=v[k>>2]+(h<<2)|0;v[q>>2]=v[h>>2];break s}h=v[l+96>>2];v[m+8>>2]=h;q=(c&1073741823)+h|0;p=v[l+100>>2]&2147483647;t:{if(q>>>0<=p>>>0){break t}I=p;p=p?p<<1:2;p=p>>>0>>0?q:p;if(I>>>0>=p>>>0){break t}Aw(k,p);h=v[l+96>>2]}k=v[k>>2];v[l+96>>2]=q;h=k+(h<<2)|0}I9(h,o,c<<2);break n}v[m+8>>2]=v[o>>2]}u[m+4>>1]=c;p=e<<1;c=0;if(!(i&1)){break m}c=v[f+4220>>2];k=d>>>5|0;u:{if(c>>>0>k>>>0){i=d&31;h=v[f+4216>>2];break u}l=0;h=0;i=d&31;e=(d+128>>>5|0)+((i|0)!=0)|0;if(e){c=v[37696];h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e<<2,24422,13406,274)|0;c=v[f+4220>>2]}if(c){I9(h,v[f+4216>>2],c<<2);l=v[f+4220>>2]}if((e|0)!=(l|0)){J9((l<<2)+h|0,0,e-l<<2)}c=v[f+4216>>2];if(c){l=v[37696];Ba[v[v[l+12>>2]+12>>2]](l+12|0,c)}v[f+4220>>2]=e;v[f+4216>>2]=h}c=(k<<2)+h|0;e=v[c>>2];$=c,aa=Vaa(-2,i)&e,v[$>>2]=aa;break l}k=v[f+4220>>2];q=d>>>5|0;v:{if(k>>>0>q>>>0){l=d&31;h=v[f+4216>>2];break v}i=0;h=0;l=d&31;e=(d+128>>>5|0)+((l|0)!=0)|0;if(e){h=v[37696];h=Ba[v[v[h+12>>2]+8>>2]](h+12|0,e<<2,24422,13406,274)|0;k=v[f+4220>>2]}if(k){I9(h,v[f+4216>>2],k<<2);i=v[f+4220>>2]}if((e|0)!=(i|0)){J9((i<<2)+h|0,0,e-i<<2)}i=v[f+4216>>2];if(i){k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,i)}v[f+4220>>2]=e;v[f+4216>>2]=h}e=(q<<2)+h|0;v[e>>2]=v[e>>2]|1<>2]=G;v[o+1036>>2]=r;c=v[f+4208>>2];if(c>>>0>=(v[f+4212>>2]&2147483647)>>>0){pn(f+4204|0,o+1036|0);break l}v[v[f+4204>>2]+(c<<2)>>2]=r;v[f+4208>>2]=v[f+4208>>2]+1}if(!s){c=v[f+80>>2];e=d>>>5|0;w:{if(c>>>0>e>>>0){i=d&31;h=v[f+76>>2];break w}l=0;h=0;i=d&31;d=(d+128>>>5|0)+((i|0)!=0)|0;if(d){c=v[37696];h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d<<2,24422,13406,274)|0;c=v[f+80>>2]}if(c){I9(h,v[f+76>>2],c<<2);l=v[f+80>>2]}if((d|0)!=(l|0)){J9((l<<2)+h|0,0,d-l<<2)}c=v[f+76>>2];if(c){l=v[37696];Ba[v[v[l+12>>2]+12>>2]](l+12|0,c)}v[f+80>>2]=d;v[f+76>>2]=h}c=(e<<2)+h|0;v[c>>2]=v[c>>2]|1<>2]=r;u[m+6>>1]=p;xa=o+1040|0;v[F+v[a+92>>2]>>2]=G;n=n+4|0;j=j-1|0;if(j){continue}break}}xa=g- -64|0;h=xa+-64|0;xa=h;n=v[b+8>>2];x:{if(!n){break x}j=v[b+12>>2];if(!j){break x}R=v[b+24>>2];while(1){d=v[n>>2];c=R+B(d,24)|0;S=z[c+16>>2];T=z[c+20>>2];U=z[c+24>>2];V=z[c>>2];W=z[c+4>>2];X=z[c+8>>2];K=z[c+12>>2];f=d<<2;A=z[f+v[b+36>>2]>>2];z[h+60>>2]=K-A;z[h+56>>2]=X-A;z[h+52>>2]=W-A;z[h+48>>2]=V-A;z[h+44>>2]=A+U;z[h+40>>2]=A+T;z[h+36>>2]=A+S;z[h+32>>2]=A+K;v[h+8>>2]=h+48;c=v[h+8>>2];v[h+8>>2]=h+32;d=v[h+8>>2];e=v[c>>2];v[h+8>>2]=((e|0)<0?e^-1:e|-2147483648)-16>>>1&2147483640;e=v[c+4>>2];v[h+12>>2]=((e|0)<0?e^-1:e|-2147483648)-16>>>1&2147483640;c=v[c+8>>2];v[h+16>>2]=((c|0)<0?c^-1:c|-2147483648)-16>>>1&2147483640;c=v[d>>2];v[h+20>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;c=v[d+4>>2];v[h+24>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;c=v[d+8>>2];v[h+28>>2]=((c|0)<0?c^-1:c|-2147483648)+16>>>1&2147483640|2;i=h+8|0;g=0;l=xa-2080|0;xa=l;G=v[f+v[a+92>>2]>>2];m=G>>>2|0;e=v[a+88>>2];J=v[e+24>>2];o=v[e+12>>2];r=v[e>>2];q=G>>>7|0;y:{if(q>>>0>2]){c=m&31;f=v[e+76>>2];break y}f=v[37696];c=m&31;d=(m+128>>>5|0)+((c|0)!=0)|0;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,d<<2,24422,13406,274)|0;k=v[e+80>>2];z:{if(k){I9(f,v[e+76>>2],k<<2);g=v[e+80>>2];if((d|0)==(g|0)){break z}}J9((g<<2)+f|0,0,d-g<<2)}g=v[e+76>>2];if(g){k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,g)}v[e+80>>2]=d;v[e+76>>2]=f}H=1;d=(q<<2)+f|0;v[d>>2]=v[d>>2]|1<>1];if((k|0)!=1){break B}c=x[F+10>>1];d=o+B(c,40)|0;if(v[d+32>>2]|y[d+4>>2]>y[i>>2]){break B}d=o+B(c,40)|0;if(y[d+8>>2]>y[i+4>>2]|y[d+12>>2]>y[i+8>>2]){break B}d=o+B(c,40)|0;if(y[d+16>>2]>2]|y[d+20>>2]>2]|y[(o+B(c,40)|0)+24>>2]>2]){break B}C:{if(q>>>0>2]){d=m&31;f=v[e+4216>>2];break C}f=v[37696];d=m&31;g=(m+128>>>5|0)+((d|0)!=0)|0;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,g<<2,24422,13406,274)|0;r=0;m=v[e+4220>>2];D:{if(m){I9(f,v[e+4216>>2],m<<2);r=v[e+4220>>2];if((g|0)==(r|0)){break D}}J9((r<<2)+f|0,0,g-r<<2)}m=v[e+4216>>2];if(m){k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,m)}v[e+4220>>2]=g;v[e+4216>>2]=f}e=(q<<2)+f|0;f=v[e>>2];$=e,aa=Vaa(-2,d)&f,v[$>>2]=aa;rL(v[(o+B(c,40)|0)+28>>2],i,x[F+8>>1]);break A}E:{if(!r){c=0;break E}g=v[i+20>>2];p=v[i+8>>2];s=v[i+16>>2];E=v[i+4>>2];D=v[i+12>>2];I=v[i>>2];f=0;c=0;while(1){d=o+B(f,40)|0;L=v[d+16>>2];F:{if(L>>>0>>0){break F}M=v[d+4>>2];if(M>>>0>D>>>0){break F}N=v[d+20>>2];if(N>>>0>>0){break F}O=v[d+8>>2];if(O>>>0>s>>>0){break F}P=v[d+24>>2];if(P>>>0

>>0){break F}Q=v[d+12>>2];if(Q>>>0>g>>>0){break F}d=0;v[(l+1040|0)+(c<<2)>>2]=f;c=c+1|0;H=H&(I>>>0>>0|E>>>0>>0?d:D>>>0<=L>>>0&p>>>0>=Q>>>0&s>>>0<=N>>>0&g>>>0<=P>>>0)}f=f+1|0;if((r|0)!=(f|0)){continue}break}}s=J+B(m,12)|0;p=s+8|0;G:{H:{if((k|0)==1){break H}p=v[(e+B(k,12)|0)+92>>2]+(v[s+8>>2]<<2)|0;if(k){break H}g=0;break G}r=0;g=0;while(1){E=(r<<2)+p|0;D=x[E+2>>1];d=0;I:{J:{if(!c){break J}f=0;K:{if((D|0)==v[l+1040>>2]){d=c-1|0;v[l+1040>>2]=v[(l+1040|0)+(d<<2)>>2];break K}while(1){f=f+1|0;if((f|0)==(c|0)){d=c;break J}d=(l+1040|0)+(f<<2)|0;if((D|0)!=v[d>>2]){continue}break}I=d;d=c-1|0;v[I>>2]=v[(l+1040|0)+(d<<2)>>2];if(c>>>0<=f>>>0){break J}}rL(v[(o+B(D,40)|0)+28>>2],i,x[E>>1]);v[l+(g<<2)>>2]=x[E>>1]|x[E+2>>1]<<16;g=g+1|0;break I}qL(v[(o+B(D,40)|0)+28>>2],x[E>>1])}c=d;r=r+1|0;if((k|0)!=(r|0)){continue}break}}if(c){d=G&1;f=0;while(1){r=v[(l+1040|0)+(f<<2)>>2];E=pL(v[(o+B(r,40)|0)+28>>2],i,G,d);D=l+(g<<2)|0;u[D+2>>1]=r;u[D>>1]=E;g=g+1|0;f=f+1|0;if((f|0)!=(c|0)){continue}break}}L:{M:{N:{O:{P:{if((g|0)==(k|0)){if(!k){break P}I9(p,l,k<<2);break O}if(k>>>0>=2){c=v[s+8>>2];d=(e+(k<<2)|0)+3176|0;v[v[(e+B(k,12)|0)+92>>2]+(c<<2)>>2]=v[d>>2];v[d>>2]=c}Q:{switch(g|0){default:d=e+B(g,12)|0;f=d+92|0;i=(e+(g<<2)|0)+3176|0;c=v[i>>2];R:{if((c|0)!=-1){v[s+8>>2]=c;c=v[f>>2]+(c<<2)|0;v[i>>2]=v[c>>2];break R}c=v[d+96>>2];v[s+8>>2]=c;i=(g&1073741823)+c|0;k=v[d+100>>2]&2147483647;S:{if(i>>>0<=k>>>0){break S}p=k;k=k?k<<1:2;k=i>>>0>k>>>0?i:k;if(p>>>0>=k>>>0){break S}Aw(f,k);c=v[d+96>>2]}f=v[f>>2];v[d+96>>2]=i;c=f+(c<<2)|0}I9(c,l,g<<2);break P;case 1:break Q;case 0:break O}}v[s+8>>2]=v[l>>2]}u[F+4>>1]=g;break N}u[F+4>>1]=g;if(!k|g){break N}v[s+8>>2]=G;c=v[J+B(m,12)>>2];v[l+2076>>2]=c;d=v[e+4208>>2];if(d>>>0<(v[e+4212>>2]&2147483647)>>>0){break M}pn(e+4204|0,l+2076|0);break L}if(!((g|0)!=0&H)){break L}T:{if(q>>>0>2]){c=m&31;f=v[e+4216>>2];break T}d=v[37696];c=m&31;g=(m+128>>>5|0)+((c|0)!=0)|0;f=Ba[v[v[d+12>>2]+8>>2]](d+12|0,g<<2,24422,13406,274)|0;d=0;i=v[e+4220>>2];U:{if(i){I9(f,v[e+4216>>2],i<<2);d=v[e+4220>>2];if((g|0)==(d|0)){break U}}J9((d<<2)+f|0,0,g-d<<2)}d=v[e+4216>>2];if(d){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,d)}v[e+4220>>2]=g;v[e+4216>>2]=f}d=(q<<2)+f|0;e=v[d>>2];$=d,aa=Vaa(-2,c)&e,v[$>>2]=aa;break A}v[v[e+4204>>2]+(d<<2)>>2]=c;v[e+4208>>2]=v[e+4208>>2]+1}V:{if(q>>>0>2]){c=m&31;f=v[e+4216>>2];break V}d=v[37696];c=m&31;g=(m+128>>>5|0)+((c|0)!=0)|0;f=Ba[v[v[d+12>>2]+8>>2]](d+12|0,g<<2,24422,13406,274)|0;d=0;i=v[e+4220>>2];W:{if(i){I9(f,v[e+4216>>2],i<<2);d=v[e+4220>>2];if((g|0)==(d|0)){break W}}J9((d<<2)+f|0,0,g-d<<2)}d=v[e+4216>>2];if(d){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,d)}v[e+4220>>2]=g;v[e+4216>>2]=f}d=(q<<2)+f|0;v[d>>2]=v[d>>2]|1<>2];F=v[a>>2];if(F){E=v[a+12>>2];a=0;while(1){b=v[(E+B(a,40)|0)+28>>2];X:{if(!b){break X}c=w[b+168|0];if(!(c?1:v[b+116>>2])){break X}if(c){f=0;h=0;n=0;o=xa-8240|0;xa=o;t[b+168|0]=0;e=v[b+84>>2];Y:{if(!e){c=v[b+124>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+124>>2]=0;v[b+128>>2]=0;break Y}d=o+48|0;c=e<<4;if(c>>>0>=8193){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,13406,743)|0}q=(e<<2)+d|0;p=B(e,12)+d|0;s=(e<<3)+d|0;j=v[b+96>>2];g=v[b+124>>2];c=0;while(1){i=c>>>5|0;Z:{if(!(i>>>0>=y[b+128>>2]|!(v[g+(i<<2)>>2]>>>c&1))){i=f<<2;v[i+d>>2]=v[j+B(c,24)>>2];v[i+s>>2]=c;f=f+1|0;break Z}i=h<<2;v[i+q>>2]=v[j+B(c,24)>>2];v[i+p>>2]=c;h=h+1|0}c=c+1|0;if((e|0)!=(c|0)){continue}break}D=SU(o+8|0);r=v[WU(f>>>0<1024?b+132|0:D,d,f,1)+8>>2];i=0;l=-1;c=v[b+80>>2];j=c<<1;if(j){c=v[37696];n=Ba[v[v[c+12>>2]+8>>2]](c+12|0,j,24422,13406,791)|0;c=v[b+80>>2]}j=($=-1,aa=Saa(c+2|0,0,24,0),ba=Aa,ba?$:aa);if(j){c=v[37696];g=Ba[v[v[c>>2]+20>>2]](c)|0?49731:63804;i=Ba[v[v[c+12>>2]+8>>2]](c+12|0,j,g,13406,793)|0}c=B(e,24)+i|0;v[c>>2]=-1;v[c+24>>2]=-1;l=f?v[(v[r>>2]<<2)+d>>2]:l;j=h?v[q>>2]:-1;J=e>>>0>1?e:1;c=0;e=0;m=0;while(1){_:{if(j>>>0>l>>>0){k=v[s+(v[r+(e<<2)>>2]<<2)>>2];l=-1;e=e+1|0;if(e>>>0>=f>>>0){break _}l=v[(v[r+(e<<2)>>2]<<2)+d>>2];break _}k=v[p+(m<<2)>>2];j=-1;m=m+1|0;if(h>>>0>m>>>0){j=v[q+(m<<2)>>2]}}G=x[v[b+104>>2]+(k<<1)>>1];k=v[b+96>>2]+B(k,24)|0;H=v[k+4>>2];g=B(c,24)+i|0;v[g>>2]=v[k>>2];v[g+4>>2]=H;H=v[k+20>>2];v[g+16>>2]=v[k+16>>2];v[g+20>>2]=H;H=v[k+12>>2];v[g+8>>2]=v[k+8>>2];v[g+12>>2]=H;u[(c<<1)+n>>1]=G;v[v[b+76>>2]+(G<<3)>>2]=c;c=c+1|0;if((J|0)!=(c|0)){continue}break}if((o+48|0)!=(d|0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}c=v[b+96>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+96>>2]=i;c=v[b+104>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+104>>2]=n;c=v[b+124>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+124>>2]=0;v[b+128>>2]=0;TU(D)}xa=o+8240|0;t[b+169|0]=1;v[b+120>>2]=0;v[b+116>>2]=v[b+92>>2]}d=b+176|0;j=0;e=0;i=0;h=v[b+116>>2];v[b+116>>2]=0;if((h|0)!=v[b+120>>2]){t[b+169|0]=1}$:{aa:{c=v[b+92>>2];if(!c){break aa}g=v[b+112>>2];f=v[b+100>>2];ba:{if(!h){break ba}if(h-1>>>0>=3){l=h&-4;while(1){v[g+(j<<2)>>2]=v[f+B(j,24)>>2];n=j|1;v[g+(n<<2)>>2]=v[f+B(n,24)>>2];n=j|2;v[g+(n<<2)>>2]=v[f+B(n,24)>>2];n=j|3;v[g+(n<<2)>>2]=v[f+B(n,24)>>2];j=j+4|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}i=h&3;if(!i){break ba}while(1){v[g+(j<<2)>>2]=v[f+B(j,24)>>2];j=j+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}l=c-h|0;n=w[b+169|0];ca:{if(!n|(c|0)==(h|0)){break ca}e=0;j=0;if(c+(h^-1)>>>0>=3){m=l&-4;i=0;while(1){k=h+j|0;v[g+(k<<2)>>2]=v[f+B(k,24)>>2];k=h+(j|1)|0;v[g+(k<<2)>>2]=v[f+B(k,24)>>2];k=h+(j|2)|0;v[g+(k<<2)>>2]=v[f+B(k,24)>>2];k=h+(j|3)|0;v[g+(k<<2)>>2]=v[f+B(k,24)>>2];j=j+4|0;i=i+4|0;if((m|0)!=(i|0)){continue}break}}i=l&3;if(!i){break ca}while(1){m=h+j|0;v[g+(m<<2)>>2]=v[f+B(m,24)>>2];j=j+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}v[b+116>>2]=h;if(!h){break aa}v[b+120>>2]=h;da:{if((c|0)!=(h|0)){if(n){m=v[WU(b+132|0,g+(h<<2)|0,l,1)+8>>2];if(l>>>0>y[d+12800>>2]){j=d+12288|0;c=v[d+12808>>2];if(!((j|0)==(c|0)|!c)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);v[d+12808>>2]=0}c=v[d+12812>>2];if(!((c|0)==(d|0)|!c)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);v[d+12812>>2]=0}c=l+2|0;ea:{if(c>>>0<=256){v[d+12812>>2]=d;break ea}j=0;e=($=-1,aa=Saa(c,0,24,0),ba=Aa,ba?$:aa);if(e){c=v[37696];i=Ba[v[v[c>>2]+20>>2]](c)|0?49731:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,i,13406,1260)|0}else{c=0}v[d+12812>>2]=c;c=l<<1;if(!c){break ea}j=v[37696];j=Ba[v[v[j+12>>2]+8>>2]](j+12|0,c,24422,13406,1261)|0}v[d+12800>>2]=l;v[d+12808>>2]=j}i=v[d+12808>>2];e=v[d+12812>>2];j=0;while(1){k=h+v[m+(j<<2)>>2]|0;n=f+B(k,24)|0;o=v[n+4>>2];c=B(j,24)+e|0;v[c>>2]=v[n>>2];v[c+4>>2]=o;o=v[n+20>>2];v[c+16>>2]=v[n+16>>2];v[c+20>>2]=o;o=v[n+12>>2];v[c+8>>2]=v[n+8>>2];v[c+12>>2]=o;u[(j<<1)+i>>1]=x[v[b+108>>2]+(k<<1)>>1];j=j+1|0;if((l|0)!=(j|0)){continue}break}c=B(l,24)+e|0;v[c>>2]=-1;v[c+24>>2]=-1;t[b+169|0]=0;break da}i=v[d+12808>>2];e=v[d+12812>>2];break da}t[b+169|0]=1;e=0;i=0}k=v[WU(b+132|0,g,h,1)+8>>2];j=v[d+12816>>2];fa:{if(h>>>0<=y[d+12804>>2]){c=j;break fa}c=d+6144|0;if(!(!j|(j|0)==(c|0))){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,j);v[d+12816>>2]=0}j=h+2|0;ga:{if(j>>>0<257){break ga}j=($=-1,aa=Saa(j,0,24,0),ba=Aa,ba?$:aa);if(!j){c=0;break ga}c=v[37696];g=Ba[v[v[c>>2]+20>>2]](c)|0?49731:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,j,g,13406,1277)|0}v[d+12804>>2]=h;v[d+12816>>2]=c}d=h>>>0>1?h:1;q=d&1;m=v[b+144>>2];j=0;if(h>>>0>=2){r=d&-2;g=0;while(1){o=v[k+(j<<2)>>2];n=f+B(o,24)|0;p=v[n+4>>2];d=B(j,24)+c|0;v[d>>2]=v[n>>2];v[d+4>>2]=p;p=v[n+20>>2];v[d+16>>2]=v[n+16>>2];v[d+20>>2]=p;p=v[n+12>>2];v[d+8>>2]=v[n+8>>2];v[d+12>>2]=p;u[m+(j<<1)>>1]=x[v[b+108>>2]+(o<<1)>>1];o=j|1;d=B(o,24)+c|0;p=v[k+(o<<2)>>2];n=f+B(p,24)|0;s=v[n+4>>2];v[d>>2]=v[n>>2];v[d+4>>2]=s;s=v[n+20>>2];v[d+16>>2]=v[n+16>>2];v[d+20>>2]=s;s=v[n+12>>2];v[d+8>>2]=v[n+8>>2];v[d+12>>2]=s;u[m+(o<<1)>>1]=x[v[b+108>>2]+(p<<1)>>1];j=j+2|0;g=g+2|0;if((r|0)!=(g|0)){continue}break}}if(q){g=v[k+(j<<2)>>2];f=f+B(g,24)|0;n=v[f+4>>2];d=B(j,24)+c|0;v[d>>2]=v[f>>2];v[d+4>>2]=n;n=v[f+20>>2];v[d+16>>2]=v[f+16>>2];v[d+20>>2]=n;n=v[f+12>>2];v[d+8>>2]=v[f+8>>2];v[d+12>>2]=n;u[m+(j<<1)>>1]=x[v[b+108>>2]+(g<<1)>>1]}d=B(h,24)+c|0;v[d>>2]=-1;v[d+24>>2]=-1;t[b+28|0]=1;v[b+24>>2]=l;v[b+20>>2]=h;v[b+16>>2]=i;v[b+12>>2]=m;v[b+8>>2]=e;v[b+4>>2]=c;v[b>>2]=v[b+76>>2];break $}t[b+169|0]=1;v[b+120>>2]=0;t[b+28|0]=0}h=0;c=v[b+116>>2];ha:{if(!c){break ha}d=v[b+84>>2];if(!d){break ha}v[b+40>>2]=d;v[b+36>>2]=c;v[b+32>>2]=v[b+76>>2];v[b+48>>2]=v[b+96>>2];v[b+52>>2]=v[b+104>>2];v[b+44>>2]=v[b+12992>>2];v[b+56>>2]=v[b+144>>2];h=1}t[b+60|0]=h}a=a+1|0;if((F|0)!=(a|0)){continue}break}}}function CR(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=C(0),p=0,q=0,r=0,s=0,A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=0,Z=0,_=0;H=v[a+20>>2];a=v[a+28>>2];v[a+1092>>2]=v[a+1092>>2]+1;k=v[v[a+988>>2]+128>>2]+1|0;d=xa-48|0;xa=d;b=v[a+976>>2];i=b+1796|0;h=v[a+980>>2];v[i>>2]=(v[i>>2]+v[h+332>>2]|0)+v[h+344>>2];a:{if(k){b=v[b+1024>>2];Ba[v[v[b>>2]+84>>2]](d+8|0,b);p=v[a+2360>>2]&8;f=v[h+332>>2];if(f){c=v[h+328>>2];while(1){q=v[c>>2];n=v[c+4>>2];b=kJ(v[a+2168>>2],q,n);v[c+8>>2]=b;f=f-1|0;if(b){b:{c:{d:{i=w[b+24|0];switch(i|0){case 2:break c;case 0:break d;default:break b}}oJ(v[a+2168>>2],b,4,0,d+8|0,(p|0)!=0);i=v[v[b+4>>2]+40>>2];g=v[v[i+976>>2]+1024>>2];Ba[v[v[g>>2]+36>>2]](g,v[b+56>>2]);wK(v[i+976>>2],v[b+56>>2]);v[b+56>>2]=0;MR(b);i=w[b+24|0]}m=v[b+12>>2];g=a+B(i,12)|0;e=v[g+56>>2]-1|0;v[g+56>>2]=e;l=v[g+52>>2];j=m<<2;v[l+j>>2]=v[l+(e<<2)>>2];v[b+12>>2]=-1;if(e>>>0>m>>>0){v[v[j+v[g+52>>2]>>2]+8>>2]=m}i=a+(i<<2)|0;e=v[i+88>>2];e:{if(e>>>0<=m>>>0){break e}l=i;i=e-1|0;v[l+88>>2]=i;if(i>>>0>=y[g+56>>2]){break e}l=j;j=v[g+52>>2];l=l+j|0;e=v[l>>2];s=l;l=j;j=i<<2;l=v[l+j>>2];v[s>>2]=l;v[j+v[g+52>>2]>>2]=e;v[e+8>>2]=i;v[l+8>>2]=m}jJ(v[a+2168>>2],b)}lJ(v[a+2168>>2],q,n,k,b,d+8|0,(p|0)!=0)}c=c+12|0;if(f){continue}break}}c=v[h+344>>2];if(c){i=v[h+340>>2];while(1){v[i+8>>2]=0;lJ(v[a+2168>>2],v[i>>2],v[i+4>>2],k,0,d+8|0,(p|0)!=0);i=i+12|0;c=c-1|0;if(c){continue}break}}kP(a);b=v[h+272>>2];Ba[v[v[b>>2]+80>>2]](b);b=v[h+272>>2];Ba[v[v[b>>2]+68>>2]](b);break a}kP(a)}xa=d+48|0;zK(v[a+976>>2]);o=z[a+1080>>2];P=v[a+1e3>>2];b=v[a+992>>2];f=xa-112|0;xa=f;e=v[a+988>>2];t[e+124|0]=(v[a+2360>>2]&4)>>>2;v[v[e+316>>2]+8>>2]=0;a=v[e+312>>2];J9(v[a+972>>2],0,v[a+976>>2]<<2);J9(v[a+984>>2],0,v[a+988>>2]<<2);v[a+1012>>2]=0;v[a+1004>>2]=0;v[a+1008>>2]=0;v[a+996>>2]=0;v[a+1e3>>2]=0;f:{g:{h:{i:{if(!v[e+128>>2]){xO(e);if(!v[e+128>>2]){break i}}if(!b|!v[e+132>>2]){break h}break g}if(b){break g}}v[e+132>>2]=0;wO(e);break f}v[e+132>>2]=0;b=v[e+312>>2];i=v[b+304>>2];a=v[i>>2];if(a){v[i>>2]=v[a>>2]}if(!a){a=v[37696];i=Ba[v[v[a>>2]+20>>2]](a)|0?26823:63804;i=Ba[v[v[a+12>>2]+8>>2]](a+12|0,7251,i,19395,82)|0;a=i+19&-16;v[a-4>>2]=a-i;a=tK(a,v[b+308>>2])}v[e+300>>2]=a;z[a+7152>>2]=o;v[e+272>>2]=0;v[v[e+260>>2]+4>>2]=0;v[e+212>>2]=0;v[e+280>>2]=0;v[e+164>>2]=0;v[v[e+152>>2]+4>>2]=0;j:{i=v[e+312>>2];g=v[i+952>>2]&2147483647;k:{if(!g){break k}d=v[i+948>>2];a=0;c=1;while(1){b=v[d+(a<<2)>>2];if(!b){c=c+1|0;a=a+1|0;if((g|0)!=(a|0)){continue}break k}break}k=Raa(b)|a<<5;b=b&b-1;l:{if(b){break l}h=c>>>0>g>>>0?c:g;while(1){a=a+1|0;if(g>>>0<=a>>>0){b=0;a=h;break l}b=v[d+(a<<2)>>2];if(!b){continue}break}}if((k|0)==-1){break k}X=e+152|0;p=e+260|0;Y=e+136|0;Z=e+168|0;_=e+220|0;g=i;while(1){m:{n:{k=v[v[g+332>>2]+(k>>>v[g+320>>2]<<2)>>2]+B(v[g+312>>2]-1&k,80)|0;o:{if(!(w[k+8|0]&2)){break o}h=x[k+40>>1];if(!(h&4096)|(h&24)==24){break o}q=v[k+16>>2];if(!((h&80?w[v[k+20>>2]+156|0]:0)?1:w[q+156|0])){break o}m=v[k+4>>2];n=v[k+28>>2];l=v[k+24>>2];s=v[k+20>>2];h=v[k>>2];p:{q:{r:{if(!v[e+256>>2]){g=0;break r}d=0;j=v[e+232>>2];g=v[e+240>>2]-1|0;c=q+(q<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;r=B(c>>>16^c^1016421269,1000007);c=l+(l<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[j+((g&(r^c^c>>>16))<<2)>>2];s:{if((c|0)==-1){break s}r=v[e+228>>2];R=v[e+224>>2];while(1){d=R+B(c,12)|0;if((q|0)==v[d>>2]&(l|0)==v[d+4>>2]){break s}c=v[r+(c<<2)>>2];if((c|0)!=-1){continue}break}d=0}c=s+(s<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;r=B(c>>>16^c^1016421269,1000007);c=n+(n<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[j+((g&(r^(c>>>16^c)))<<2)>>2];t:{if((c|0)!=-1){g=v[e+228>>2];r=v[e+224>>2];while(1){j=r+B(c,12)|0;if((s|0)==v[j>>2]&(n|0)==v[j+4>>2]){break t}c=v[g+(c<<2)>>2];if((c|0)!=-1){continue}break}}j=0}g=0;c=0;c=d?v[d+8>>2]:c;g=j?v[j+8>>2]:g;if(c){break q}}c=yO(Z);v[f+108>>2]=l;v[f+104>>2]=q;d=zO(_,f+104|0,f+72|0);if(!w[f+72|0]){v[d>>2]=v[f+104>>2];j=v[f+108>>2];v[d+8>>2]=c;v[d+4>>2]=j}v[c+92>>2]=l;v[c+96>>2]=q;d=l+36|0;v[c>>2]=d;oO(f+72|0,c,h);u:{if(h){pO(f+40|0,c,h);F=z[f+52>>2];G=z[f+48>>2];I=z[f+44>>2];M=z[f+40>>2];A=z[f+64>>2];N=z[f+96>>2];J=z[f+60>>2];O=z[f+92>>2];o=z[f+56>>2];D=z[f+88>>2];break u}M=z[f+72>>2];z[f+40>>2]=M;I=z[f+76>>2];z[f+44>>2]=I;G=z[f+80>>2];z[f+48>>2]=G;F=z[f+84>>2];z[f+52>>2]=F;o=z[f+88>>2];z[f+56>>2]=o;A=z[f+96>>2];N=A;J=z[f+92>>2];O=J;D=o}S=hV(f+24|0,f+8|0,d,f+72|0);K=z[f+24>>2];Q=z[f+28>>2];N=C(N-A);z[c+84>>2]=z[f+32>>2]-N;O=C(O-J);z[c+80>>2]=Q-O;Q=C(D-o);z[c+76>>2]=K-Q;z[c+64>>2]=z[f+8>>2];z[c+68>>2]=z[f+12>>2];D=z[f+16>>2];z[c+32>>2]=A;z[c+28>>2]=J;z[c+24>>2]=o;z[c+20>>2]=F;z[c+16>>2]=G;z[c+12>>2]=I;z[c+8>>2]=M;z[c+4>>2]=S;z[c+72>>2]=D;z[c+36>>2]=z[f+72>>2];z[c+40>>2]=z[f+76>>2];z[c+44>>2]=z[f+80>>2];z[c+48>>2]=z[f+84>>2];z[c+52>>2]=z[f+88>>2];z[c+56>>2]=z[f+92>>2];o=z[f+96>>2];v[c+88>>2]=0;z[c+60>>2]=o;j=v[k- -64>>2]<<1;l=v[P+616>>2];r=v[l+20>>2];d=(j>>>0)/(r>>>0)|0;v[c+100>>2]=v[v[v[l>>2]+(d<<2)>>2]+(j-B(d,r)<<2)>>2];break p}N=C(z[c+60>>2]-z[c+32>>2]);O=C(z[c+56>>2]-z[c+28>>2]);Q=C(z[c+52>>2]-z[c+24>>2]);S=z[c+4>>2]}v:{if(!g){g=yO(Z);v[g+92>>2]=n;v[g+96>>2]=s;j=n+36|0;v[g>>2]=j;v[f+4>>2]=n;v[f>>2]=s;d=zO(_,f,f+72|0);if(!w[f+72|0]){v[d>>2]=v[f>>2];n=v[f+4>>2];v[d+8>>2]=g;v[d+4>>2]=n}oO(f+72|0,g,m);w:{if(m){pO(f+40|0,g,m);M=z[f+52>>2];T=z[f+48>>2];U=z[f+44>>2];V=z[f+40>>2];A=z[f+64>>2];K=z[f+96>>2];I=z[f+60>>2];F=z[f+92>>2];o=z[f+56>>2];D=z[f+88>>2];break w}V=z[f+72>>2];z[f+40>>2]=V;U=z[f+76>>2];z[f+44>>2]=U;T=z[f+80>>2];z[f+48>>2]=T;M=z[f+84>>2];z[f+52>>2]=M;o=z[f+88>>2];z[f+56>>2]=o;A=z[f+96>>2];K=A;I=z[f+92>>2];F=I;D=o}J=hV(f+24|0,f+8|0,j,f+72|0);G=z[f+24>>2];W=z[f+28>>2];K=C(K-A);z[g+84>>2]=z[f+32>>2]-K;F=C(F-I);z[g+80>>2]=W-F;W=G;G=C(D-o);z[g+76>>2]=W-G;z[g+64>>2]=z[f+8>>2];z[g+68>>2]=z[f+12>>2];D=z[f+16>>2];z[g+32>>2]=A;z[g+28>>2]=I;z[g+24>>2]=o;z[g+20>>2]=M;z[g+16>>2]=T;z[g+12>>2]=U;z[g+8>>2]=V;z[g+4>>2]=J;z[g+72>>2]=D;z[g+36>>2]=z[f+72>>2];z[g+40>>2]=z[f+76>>2];z[g+44>>2]=z[f+80>>2];z[g+48>>2]=z[f+84>>2];z[g+52>>2]=z[f+88>>2];z[g+56>>2]=z[f+92>>2];o=z[f+96>>2];v[g+88>>2]=0;z[g+60>>2]=o;j=v[k- -64>>2]<<1|1;n=v[P+616>>2];l=v[n+20>>2];d=(j>>>0)/(l>>>0)|0;v[g+100>>2]=v[v[v[n>>2]+(d<<2)>>2]+(j-B(d,l)<<2)>>2];break v}K=C(z[g+60>>2]-z[g+32>>2]);F=C(z[g+56>>2]-z[g+28>>2]);G=C(z[g+52>>2]-z[g+24>>2]);J=z[g+4>>2]}if(h){d=v[h+32>>2];x:{if(d){j=v[d+52>>2];break x}d=AO(Y);v[h+32>>2]=d;j=v[e+148>>2];n=v[(v[e+136>>2]+(j<<3)|0)+4>>2];v[d+40>>2]=h;v[d+44>>2]=0;v[d+48>>2]=0;v[d+36>>2]=1065353216;v[d+52>>2]=0;t[d+35|0]=0;u[d+32>>1]=(n+(j<<7)|0)-1;j=0}t[d+34|0]=0;v[d+52>>2]=j+1}y:{z:{if(m){d=v[m+32>>2];A:{if(d){j=v[d+52>>2];break A}d=AO(Y);v[m+32>>2]=d;j=v[e+148>>2];n=v[(v[e+136>>2]+(j<<3)|0)+4>>2];v[d+40>>2]=m;v[d+44>>2]=0;v[d+48>>2]=0;v[d+36>>2]=1065353216;v[d+52>>2]=0;t[d+35|0]=0;u[d+32>>1]=(n+(j<<7)|0)-1;j=0}t[d+34|0]=0;v[d+52>>2]=j+1;B:{if(!h|z[v[h+36>>2]+124>>2]==C(0)|z[v[m+36>>2]+124>>2]==C(0)){break B}d=v[v[h+32>>2]+44>>2];if(d){j=v[m+32>>2];while(1){if((j|0)==v[d>>2]){break B}d=v[d+4>>2];if(d){continue}break}}d=BO(X);j=BO(X);n=v[m+32>>2];v[d>>2]=n;l=v[h+32>>2];v[j>>2]=l;v[d+4>>2]=v[l+44>>2];v[l+44>>2]=d;v[j+4>>2]=v[n+44>>2];v[n+44>>2]=j}R=h+36|0;j=1;if(z[v[h+36>>2]+124>>2]!=C(0)){break y}if(!m){break z}if(z[v[m+36>>2]+124>>2]!=C(0)){break y}break z}R=h+36|0;if(z[v[h+36>>2]+124>>2]==C(0)){break z}j=0;break y}L=L+1|0;j=(m|0)!=0}n=xa-16|0;xa=n;l=v[p>>2];d=v[p+12>>2];r=v[(l+(d<<3)|0)+4>>2];if((r|0)==128){d=d+1|0;if((d|0)==v[p+4>>2]){d=v[37696];l=Ba[v[v[d>>2]+20>>2]](d)|0?39965:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,14336,l,19811,260)|0;v[n+12>>2]=0;v[n+8>>2]=d;d=v[p+4>>2];C:{if(d>>>0>=(v[p+8>>2]&2147483647)>>>0){nO(p,n+8|0);break C}l=v[n+12>>2];d=v[p>>2]+(d<<3)|0;v[d>>2]=v[n+8>>2];v[d+4>>2]=l;v[p+4>>2]=v[p+4>>2]+1}l=v[p>>2];d=v[p+12>>2]+1|0}v[p+12>>2]=d;v[((d<<3)+l|0)+4>>2]=0;r=0}d=(d<<3)+l|0;v[d+4>>2]=r+1;xa=n+16|0;d=v[d>>2]+B(r,112)|0;v[d+12>>2]=g;v[d+8>>2]=c;v[d+4>>2]=m;v[d>>2]=h;c=1;c=w[q+28|0]&8?c:(w[s+28|0]&8)>>>3|0;v[d+28>>2]=2139095039;t[d+108|0]=c;c=v[v[k+24>>2]+36>>2];v[d+60>>2]=c;h=v[v[k+28>>2]+36>>2];v[d+72>>2]=-1;t[d+68|0]=0;v[d+56>>2]=-1;v[d+52>>2]=k;v[d+64>>2]=h;g=w[k+8|0];v[d+96>>2]=0;t[d+69|0]=g&1;A=C(34028234663852886e22);o=C(34028234663852886e22);g=v[R>>2];if(w[g+28|0]&64){o=z[g+128>>2]}D:{if(!j){break D}g=v[m+36>>2];if(!(w[g+28|0]&64)){break D}A=z[g+128>>2]}z[d+100>>2]=o>2];h=((g+B((c|0)<(h|0)?c:h,28)|0)+(((c|0)>(h|0)?c:h)<<2)|0)+1360|0;v[h>>2]=v[h>>2]+1;if(E){break n}o=C(N-K);A=C(o*o);o=C(Q-G);D=C(o*o);o=C(O-F);A=C(A+C(D+C(o*o)));o=C(S+J);D=z[e+328>>2];o=o=C(o*o)}if(b){break m}if(!E){break k}break j}E=1;if(!b){break j}}k=Raa(b)|a<<5;b=b-1&b;E:{if(b){break E}b=a+1|0;c=v[i+952>>2]&2147483647;h=b>>>0>c>>>0?b:c;while(1){a=a+1|0;if(c>>>0<=a>>>0){b=0;a=h;break E}b=v[v[i+948>>2]+(a<<2)>>2];if(!b){continue}break}}if((k|0)!=-1){continue}break}if(E){break j}}wO(e);a=v[e+300>>2];b=v[v[e+312>>2]+304>>2];v[a>>2]=v[b>>2];v[b>>2]=a;break f}a=v[e+272>>2];i=v[(v[e+260>>2]+(a<<3)|0)+4>>2]+(a<<7)|0;F:{G:{if(i>>>0>(v[e+284>>2]&2147483647)>>>0){a=0;H:{if(!i){break H}b=i<<2;if(!b){break H}a=v[37696];h=Ba[v[v[a>>2]+20>>2]](a)|0?56633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,h,16608,553)|0}c=v[e+276>>2];b=v[e+280>>2];if((b|0)>0){h=(b<<2)+a|0;b=a;while(1){v[b>>2]=v[c>>2];c=c+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}c=v[e+276>>2]}if(!(!c|v[e+284>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[e+284>>2]=i;v[e+276>>2]=a;break G}if(!i){break F}}a=0;while(1){h=v[v[e+260>>2]+(a>>>4&268435448)>>2]+B(a&127,112)|0;v[f+72>>2]=h;b=v[e+280>>2];I:{if(b>>>0>=(v[e+284>>2]&2147483647)>>>0){b=0;h=v[e+284>>2];h=h&2147483647?h<<1:1;J:{if(!h){break J}c=h<<2;if(!c){break J}b=v[37696];g=Ba[v[v[b>>2]+20>>2]](b)|0?56633:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,g,16608,553)|0}g=v[e+280>>2];m=(g<<2)+b|0;if((g|0)>0){d=v[e+276>>2];c=b;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(m>>>0>c>>>0){continue}break}}v[m>>2]=v[f+72>>2];K:{if(v[e+284>>2]<0){break K}c=v[e+276>>2];if(!c){break K}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,c);g=v[e+280>>2]}v[e+284>>2]=h;v[e+276>>2]=b;v[e+280>>2]=g+1;break I}v[v[e+276>>2]+(b<<2)>>2]=h;v[e+280>>2]=b+1}a=a+1|0;if((i|0)!=(a|0)){continue}break}}b=i|i>>>1;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0;a=v[e+316>>2];if(b>>>0>(v[a+12>>2]&2147483647)>>>0){kz(a,b)}c=v[e+136>>2];a=v[e+148>>2];h=v[(c+(a<<3)|0)+4>>2]+(a<<7)|0;if(h){i=0;while(1){a=v[c+(i>>>4&268435448)>>2]+((i&127)<<6)|0;b=v[v[a+40>>2]+36>>2];z[a>>2]=z[b+64>>2];z[a+4>>2]=z[b+68>>2];z[a+8>>2]=z[b+72>>2];z[a+16>>2]=z[b+80>>2];z[a+20>>2]=z[b+84>>2];z[a+24>>2]=z[b+88>>2];i=i+1|0;if((h|0)!=(i|0)){continue}break}}v[f+80>>2]=0;v[f+72>>2]=0;v[f+76>>2]=0;v[f+40>>2]=0;cz(f+72|0,h,f+40|0);v[f+48>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;if(h){i=0;L:{if(!h){break L}b=h<<2;if(!b){break L}a=v[37696];i=Ba[v[v[a>>2]+20>>2]](a)|0?55227:63804;i=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,i,16608,553)|0}b=v[f+40>>2];a=v[f+44>>2];if((a|0)>0){c=(a<<2)+i|0;a=i;while(1){v[a>>2]=v[b>>2];b=b+4|0;a=a+4|0;if(c>>>0>a>>>0){continue}break}b=v[f+40>>2]}if(!(!b|v[f+48>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}v[f+48>>2]=h;v[f+40>>2]=i}v[f+44>>2]=h;v[e+200>>2]=0;m=e+196|0;a=h+1|0;if(a>>>0>(v[e+204>>2]&2147483647)>>>0){Ar(m,a)}v[e+200>>2]=a;M:{if(!h){d=0;break M}c=0;a=v[f+72>>2];i=0;if(h-1>>>0>=7){g=h&-8;k=0;while(1){b=i<<2;v[b+a>>2]=65535;v[a+(b|4)>>2]=65535;v[a+(b|8)>>2]=65535;v[a+(b|12)>>2]=65535;v[a+(b|16)>>2]=65535;v[a+(b|20)>>2]=65535;v[a+(b|24)>>2]=65535;v[a+(b|28)>>2]=65535;i=i+8|0;k=k+8|0;if((g|0)!=(k|0)){continue}break}}b=h&7;if(b){while(1){v[a+(i<<2)>>2]=65535;i=i+1|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}d=0;if(!h){break M}i=0;while(1){a=v[f+72>>2]+(i<<2)|0;N:{if(v[a>>2]!=65535){break N}b=v[v[e+136>>2]+(i>>>4&268435448)>>2];c=(i&127)<<6;g=b+c|0;if(z[v[v[g+40>>2]+36>>2]+124>>2]==C(0)|!v[(b+c|0)+52>>2]){break N}v[a>>2]=d;v[v[f+40>>2]>>2]=g;k=0;b=1;while(1){a=v[g+44>>2];b=b-1|0;g=v[(v[f+40>>2]+((b>>>0>1?b:1)<<2)|0)-4>>2];if(a){while(1){c=v[a>>2];p=v[f+72>>2]+(x[c+32>>1]<<2)|0;if(v[p>>2]==65535){v[p>>2]=d;v[v[f+40>>2]+(b<<2)>>2]=c;k=k+1|0;g=v[a>>2];b=b+1|0}a=v[a+4>>2];if(a){continue}break}}if(b){continue}break}u[v[m>>2]+(d<<1)>>1]=k+1;d=d+1|0}i=i+1|0;if((h|0)!=(i|0)){continue}break}}c=d+L|0;O:{if(c>>>0<=d>>>0){break O}i=v[m>>2];a=d;g=L&7;if(g){b=0;while(1){u[i+(a<<1)>>1]=1;a=a+1|0;b=b+1|0;if((g|0)!=(b|0)){continue}break}}if(L-1>>>0<7){break O}while(1){b=i+(a<<1)|0;u[b>>1]=1;u[b+2>>1]=1;u[b+4>>1]=1;u[b+6>>1]=1;u[b+8>>1]=1;u[b+10>>1]=1;u[b+12>>1]=1;u[b+14>>1]=1;a=a+8|0;if((c|0)!=(a|0)){continue}break}}i=0;v[e+292>>2]=0;v[f+24>>2]=0;cz(e+288|0,c,f+24|0);j=v[e+280>>2];if(j){q=v[e+288>>2];n=v[e+276>>2];g=v[f+72>>2];while(1){k=v[n+(i<<2)>>2];b=v[k>>2];a=-1;P:{if(!b){break P}a=-1;if(z[v[b+36>>2]+124>>2]==C(0)){break P}a=v[g+(x[v[b+32>>2]+32>>1]<<2)>>2]}b=-1;p=v[k+4>>2];if(!(!p|z[v[p+36>>2]+124>>2]==C(0))){b=v[g+(x[v[p+32>>2]+32>>1]<<2)>>2]}b=a>>>0>>0?a:b;a=(b|0)==-1;b=a?d:b;v[k+56>>2]=b;b=q+(b<<2)|0;v[b>>2]=v[b>>2]+1;d=a+d|0;i=i+1|0;if((j|0)!=(i|0)){continue}break}}c=c+1|0;if(c){g=v[m>>2];b=0;i=0;a=0;while(1){b=g+(b<<1)|0;d=x[b>>1];u[b>>1]=a;a=a+d|0;i=i+1|0;b=i&65535;if(c>>>0>b>>>0){continue}break}}a=0;v[e+188>>2]=0;if(h>>>0>(v[e+192>>2]&2147483647)>>>0){i=0;Q:{if(!h){break Q}c=h<<2;if(!c){break Q}b=v[37696];i=Ba[v[v[b>>2]+20>>2]](b)|0?55351:63804;i=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,i,16608,553)|0}g=v[e+184>>2];b=v[e+188>>2];if((b|0)>0){c=(b<<2)+i|0;b=i;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(c>>>0>b>>>0){continue}break}g=v[e+184>>2]}if(!(!g|v[e+192>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g)}v[e+192>>2]=h;v[e+184>>2]=i}v[e+188>>2]=h;b=v[e+136>>2];i=v[e+148>>2];h=i<<3;i=i<<7;if(v[(b+h|0)+4>>2]!=(0-i|0)){while(1){c=v[(a>>>4&268435448)+b>>2]+((a&127)<<6)|0;g=v[v[f+72>>2]+(x[c+32>>1]<<2)>>2];if((g|0)!=65535){g=v[e+196>>2]+(g<<1)|0;b=x[g>>1];u[g>>1]=b+1;v[v[e+184>>2]+(b<<2)>>2]=c;b=v[e+136>>2]}a=a+1|0;if(a>>>0>2]>>>0){continue}break}}v[e+100>>2]=H;v[e+104>>2]=1;if(H){Ba[v[v[H>>2]+16>>2]](H);v[e+96>>2]=v[v[e+100>>2]+16>>2]}H=e+80|0;v[e+60>>2]=H;v[e- -64>>2]=1;Ba[v[v[e+80>>2]+16>>2]](H);v[e+56>>2]=v[v[e+60>>2]+16>>2];v[e+24>>2]=1;L=e+40|0;v[e+20>>2]=L;Ba[v[v[e+40>>2]+16>>2]](L);v[e+16>>2]=v[v[e+20>>2]+16>>2];q=v[e+276>>2];a=v[e+280>>2];b=0;g=0;c=0;j=32;n=xa-16|0;xa=n;t[n+12|0]=0;i=n-128|0;xa=i;v[n+8>>2]=i;d=a-1|0;R:{if((d|0)<=0){break R}while(1){S:{if((b|0)>=(d|0)){break S}while(1){if(d-b>>>0<=4){while(1){m=b;b=b+1|0;h=b;a=m;while(1){a=y[v[q+(h<<2)>>2]+56>>2]>2]+56>>2]?h:a;k=(d|0)>(h|0);h=h+1|0;if(k){continue}break}if((a|0)!=(m|0)){a=q+(a<<2)|0;h=v[a>>2];k=a;a=q+(m<<2)|0;v[k>>2]=v[a>>2];v[a>>2]=h}if((b|0)!=(d|0)){continue}break S}}s=q+(b<<2)|0;m=v[s>>2];a=v[m+56>>2];l=q+((b+d|0)/2<<2)|0;k=v[l>>2];T:{if(a>>>0<=y[k+56>>2]){h=m;break T}v[s>>2]=k;v[l>>2]=m;h=v[s>>2];a=v[h+56>>2];k=m}E=q+(d<<2)|0;m=v[E>>2];p=v[m+56>>2];U:{if(p>>>0>=a>>>0){a=p;h=m;break U}v[s>>2]=m;v[E>>2]=h;k=v[l>>2]}if(y[k+56>>2]>a>>>0){v[l>>2]=h;v[E>>2]=k;k=v[l>>2]}a=d-1|0;p=q+(a<<2)|0;v[l>>2]=v[p>>2];v[p>>2]=k;h=b;while(1){l=v[k+56>>2];while(1){m=h;h=h+1|0;s=q+(h<<2)|0;E=v[s>>2];if(l>>>0>y[E+56>>2]){continue}break}while(1){a=a-1|0;r=q+(a<<2)|0;P=v[r>>2];if(l>>>0>2]){continue}break}if((a|0)>(h|0)){v[s>>2]=P;v[r>>2]=E;k=v[p>>2];continue}break}v[s>>2]=k;v[p>>2]=E;V:{if((h-b|0)<(d-h|0)){if(j-1>>>0<=g>>>0){h=j<<3;if(h){a=v[37696];k=Ba[v[v[a>>2]+20>>2]](a)|0?56633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,h,k,17218,155)|0}else{a=0}j=j<<1;a=I9(a,i,g<<2);h=c;c=1;if(!(!h|!i)){h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,i)}i=a}a=(g<<2)+i|0;v[a>>2]=b;v[a+4>>2]=m;b=m+2|0;break V}if(j-1>>>0<=g>>>0){h=j<<3;if(h){a=v[37696];k=Ba[v[v[a>>2]+20>>2]](a)|0?56633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,h,k,17218,155)|0}else{a=0}j=j<<1;a=I9(a,i,g<<2);h=c;c=1;if(!(!h|!i)){h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,i)}i=a}a=(g<<2)+i|0;v[a>>2]=m+2;v[a+4>>2]=d;d=m}g=g+2|0;if((b|0)<(d|0)){continue}break}}if(g){a=g-2|0;b=v[(a<<2)+i>>2];d=v[((g<<2)+i|0)-4>>2];g=a;continue}break}if(!c|!i){break R}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,i)}if(w[n+12|0]){v9(v[n+8>>2])}xa=n+16|0;i=v[e+280>>2];a=v[v[e+312>>2]+1152>>2];a=Ba[v[v[a>>2]+4>>2]](a)|0;a=Ba[v[v[a>>2]+4>>2]](a)|0;a=(i>>>0)/((a>>>0>1?a:1)>>>0)|0;v[e+304>>2]=a>>>0>1?a:1;if(i){b=0;while(1){a=wr(v[v[e+312>>2]+1156>>2],40);c=v[e+304>>2];g=v[e+276>>2];o=z[e+328>>2];h=v[e+312>>2];d=v[h+1836>>2];v[a+8>>2]=v[h+1832>>2];v[a+12>>2]=d;v[a+24>>2]=0;z[a+36>>2]=o;v[a+28>>2]=g+(b<<2);v[a>>2]=134300;c=b+c|0;v[a+32>>2]=(c>>>0>i>>>0?i:c)-b;h=v[h+1152>>2];v[a+20>>2]=e;v[a+24>>2]=1;v[a+16>>2]=h;Ba[v[v[e>>2]+16>>2]](e);Ba[v[v[a>>2]+20>>2]](a);b=v[e+304>>2]+b|0;if(i>>>0>b>>>0){continue}break}}a=v[e+16>>2];Ba[v[v[a>>2]+72>>2]](a,e);a=v[e+56>>2];Ba[v[v[a>>2]+72>>2]](a,L);a=v[e+96>>2];Ba[v[v[a>>2]+72>>2]](a,H);a=v[f+48>>2];W:{if((a|0)<0|!(a&2147483647)){break W}a=v[f+40>>2];if(!a){break W}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[f+80>>2];if((a|0)<0|!(a&2147483647)){break f}a=v[f+72>>2];if(!a){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=f+112|0}function or(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=C(0),m=0,n=0,o=0,p=0,q=0;o=xa-16|0;xa=o;j=a+32|0;b=v[j+2168>>2];v[b+60>>2]=-1;v[b+48>>2]=0;eJ(b,0);d=v[j+36>>2];if(d){c=v[j+24>>2];while(1){d=d-1|0;b=v[c+(d<<2)>>2];t[v[b+176>>2]+28|0]=0;b=v[b>>2];e=x[b+148>>1];a:{if(e&1024){u[b+148>>1]=e&64511;v[v[b+44>>2]+156>>2]=0;if(!v[b+160>>2]){dG(v[v[b+40>>2]+1e3>>2],v[b+144>>2])}eG(v[v[b+40>>2]+1e3>>2],v[b+144>>2]);if(y[b+152>>2]>4294967293){break a}VO(v[b+40>>2],b);bH(b);break a}if(e&512){u[b+148>>1]=e&63999|1024;break a}if(e&2048){break a}u[b+148>>1]=e&65019|512}if(d){continue}break}}if(!w[j+2282|0]){Hy(v[j+976>>2]+24|0);Hy(v[j+976>>2]+24|0)}n=xa-16|0;xa=n;f=a+16|0;t[f+4785|0]=0;c=0;d=xa-16|0;xa=d;if(v[f+5560>>2]){b=f+16|0;while(1){TP(b);e=v[f+5560>>2]-1|0;v[f+5560>>2]=e;if(e){continue}break}}b=v[f+5564>>2];if(b){if(b&1){v[f+1080>>2]=1;z[f+1068>>2]=z[f+5532>>2];k=f+5536|0;i=v[k+4>>2];e=f+1072|0;v[e>>2]=v[k>>2];v[e+4>>2]=i}if(b&2){z[v[f+1020>>2]+84>>2]=-z[f+5544>>2];b=v[f+5564>>2]}if(b&4){v[f+2376>>2]=v[f+5548>>2]}if(b&8){k=f+16|0;while(1){e=c+1|0;b=f+(c<<2)|0;if(v[b+5280>>2]){i=1<>>0>c>>>0?c:b)<<2)|0)+5280>>2]>>>(b>>>0>>0?c:b)&1){t[d+8|0]=(v[m>>2]&1<>>b;t[d+9|0]=(i&v[(f+(b<<2)|0)+5404>>2])>>>c;QP(k,c&255,b&255,d+8|0)}b=b+1|0;if((b|0)!=32){continue}break}}c=e;if((e|0)!=31){continue}break}J9(f+5280|0,0,124);b=v[f+5564>>2]}if(b&16){v[v[f+1020>>2]+104>>2]=v[f+5552>>2];b=v[f+5564>>2]}if(b&128){v[v[f+1020>>2]+108>>2]=v[f+5556>>2];b=v[f+5564>>2]}if(b&32){b=f+16|0;e=f+5232|0;if(w[e|0]){l=z[f+5136>>2];t[b+2660|0]=1;z[v[b+976>>2]+1032>>2]=l;z[b+2656>>2]=l}if(w[f+5233|0]){l=z[f+5140>>2];t[b+2660|0]=1;z[v[b+976>>2]+1036>>2]=l}if(w[f+5234|0]){l=z[f+5144>>2];t[b+2660|0]=1;z[v[b+976>>2]+1040>>2]=l}if(w[f+5235|0]){l=z[f+5148>>2];t[b+2660|0]=1;z[v[b+976>>2]+1044>>2]=l}if(w[f+5236|0]){l=z[f+5152>>2];t[b+2660|0]=1;z[v[b+976>>2]+1048>>2]=l}if(w[f+5237|0]){l=z[f+5156>>2];t[b+2660|0]=1;z[v[b+976>>2]+1052>>2]=l}if(w[f+5238|0]){l=z[f+5160>>2];t[b+2660|0]=1;z[v[b+976>>2]+1056>>2]=l}if(w[f+5239|0]){l=z[f+5164>>2];t[b+2660|0]=1;z[v[b+976>>2]+1060>>2]=l}if(w[f+5240|0]){l=z[f+5168>>2];t[b+2660|0]=1;z[v[b+976>>2]+1064>>2]=l}if(w[f+5241|0]){l=z[f+5172>>2];t[b+2660|0]=1;z[v[b+976>>2]+1068>>2]=l}if(w[f+5242|0]){l=z[f+5176>>2];t[b+2660|0]=1;z[v[b+976>>2]+1072>>2]=l}if(w[f+5243|0]){l=z[f+5180>>2];t[b+2660|0]=1;z[v[b+976>>2]+1076>>2]=l}if(w[f+5244|0]){l=z[f+5184>>2];t[b+2660|0]=1;z[v[b+976>>2]+1080>>2]=l}if(w[f+5245|0]){l=z[f+5188>>2];t[b+2660|0]=1;z[v[b+976>>2]+1084>>2]=l}if(w[f+5246|0]){l=z[f+5192>>2];t[b+2660|0]=1;z[v[b+976>>2]+1088>>2]=l}if(w[f+5247|0]){l=z[f+5196>>2];t[b+2660|0]=1;z[v[b+976>>2]+1092>>2]=l}if(w[f+5248|0]){l=z[f+5200>>2];t[b+2660|0]=1;z[v[b+976>>2]+1096>>2]=l}if(w[f+5249|0]){l=z[f+5204>>2];t[b+2660|0]=1;z[v[b+976>>2]+1100>>2]=l}if(w[f+5250|0]){l=z[f+5208>>2];t[b+2660|0]=1;z[v[b+976>>2]+1104>>2]=l}if(w[f+5251|0]){l=z[f+5212>>2];t[b+2660|0]=1;z[v[b+976>>2]+1108>>2]=l}if(w[f+5252|0]){l=z[f+5216>>2];t[b+2660|0]=1;z[v[b+976>>2]+1112>>2]=l}if(w[f+5253|0]){l=z[f+5220>>2];t[b+2660|0]=1;z[v[b+976>>2]+1116>>2]=l}if(w[f+5254|0]){l=z[f+5224>>2];t[b+2660|0]=1;z[v[b+976>>2]+1120>>2]=l}if(w[f+5255|0]){l=z[f+5228>>2];t[b+2660|0]=1;z[v[b+976>>2]+1124>>2]=l}v[e>>2]=0;v[e+4>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;b=v[f+5564>>2]}if(b&64){SP(f+16|0,f+5256|0)}v[f+5564>>2]=0}xa=d+16|0;b:{if(!v[f+5128>>2]){break b}e=f+16|0;while(1){b=v[v[f+5096>>2]+(g<<2)>>2];c=v[b+4>>2];c:{d:{if((c&-1073741824)==1073741824){p=b,q=VP(e,v[b+12>>2],w[b+24|0]),v[p+16>>2]=q;break d}if(!(c&268435456)){break c}}Ru(b,f)}d=v[f+5128>>2];g=g+1|0;if(d>>>0>g>>>0){continue}break}if(!d){break b}k=v[f+5096>>2];g=0;while(1){i=k+(g<<2)|0;b=v[i>>2];e=v[b+4>>2];c=e&268435455;e:{if((e>>>30|0)-1>>>0<=1){v[b+4>>2]=c|-2147483648;break e}v[b>>2]=0;v[b+4>>2]=c}if(e&536870912){Tm(v[i>>2]);d=v[f+5128>>2]}g=g+1|0;if(g>>>0>>0){continue}break}b=v[f+5112>>2];if(!b|!d){break b}J9(v[f+5104>>2],255,b<<2);d=0;b=v[f+5100>>2];k=v[f+5108>>2];e=k-1|0;if(e){g=0;if(k-2>>>0>=3){k=e&-4;while(1){i=d|1;v[b+(d<<2)>>2]=i;c=b+(i<<2)|0;i=d|2;v[c>>2]=i;c=b+(i<<2)|0;i=d|3;v[c>>2]=i;d=d+4|0;v[b+(i<<2)>>2]=d;h=h+4|0;if((k|0)!=(h|0)){continue}break}}e=e&3;if(e){while(1){c=b+(d<<2)|0;d=d+1|0;v[c>>2]=d;g=g+1|0;if((e|0)!=(g|0)){continue}break}}e=v[f+5108>>2]-1|0}else{e=0}v[b+(e<<2)>>2]=-1;v[f+5128>>2]=0;v[f+5120>>2]=0}v[f+4884>>2]=0;f:{if(!v[f+4928>>2]){break f}k=v[f+4896>>2];i=f+16|0;d=0;while(1){e=v[k+(d<<2)>>2];b=v[e+4>>2];g:{if((b&-1073741824)==1073741824){zu(i,e,0);break g}if(!(b&268435456)){break g}c=xa-16|0;xa=c;h=v[e+4>>2];h:{if(!(h&1)){break h}b=v[e+8>>2];if(!b){b=Qu(v[e>>2],h>>>24&15);v[e+8>>2]=b}b=w[b|0]&8;g=w[e+24|0]&8;if(!(b|!g)){if((v[e+4>>2]&-1073741824)!=-2147483648){break h}m=v[e>>2];g=_o(e,c+12|0);b=0;LP(m+16|0,e+v[((v[e+4>>2]>>>22&60)+89188|0)+12>>2]|0,v[c+12>>2],g,0);if(!g){break h}while(1){m=v[v[c+12>>2]+(b<<2)>>2]+16|0;v[m>>2]=v[m>>2]+1;b=b+1|0;if((g|0)!=(b|0)){continue}break}break h}if(!b|g){break h}wu(v[e>>2],e,0)}Vu(e);i:{if(!(h&64)){break i}b=v[e+8>>2];if(!b){b=Qu(v[e>>2],w[e+7|0]&15);v[e+8>>2]=b}if(!(w[e+4|0]&64)){break i}nS(e+16|0,b+96|0)}v[e+8>>2]=0;v[e+4>>2]=w[e+7|0]<<24;xa=c+16|0}d=d+1|0;g=v[f+4928>>2];if(d>>>0>>0){continue}break}if(!g){break f}h=v[f+4896>>2];d=0;while(1){k=h+(d<<2)|0;b=v[k>>2];e=v[b+4>>2];c=e&268435455;j:{if((e>>>30|0)-1>>>0<=1){v[b+4>>2]=c|-2147483648;break j}v[b>>2]=0;v[b+4>>2]=c}if(e&536870912){Tm(v[k>>2]);g=v[f+4928>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+4912>>2];if(!b|!g){break f}J9(v[f+4904>>2],255,b<<2);d=0;b=v[f+4900>>2];h=v[f+4908>>2];e=h-1|0;if(e){g=0;if(h-2>>>0>=3){k=e&-4;h=0;while(1){i=d|1;v[b+(d<<2)>>2]=i;c=b+(i<<2)|0;i=d|2;v[c>>2]=i;c=b+(i<<2)|0;i=d|3;v[c>>2]=i;d=d+4|0;v[b+(i<<2)>>2]=d;h=h+4|0;if((k|0)!=(h|0)){continue}break}}e=e&3;if(e){while(1){c=b+(d<<2)|0;d=d+1|0;v[c>>2]=d;g=g+1|0;if((e|0)!=(g|0)){continue}break}}e=v[f+4908>>2]-1|0}else{e=0}v[b+(e<<2)>>2]=-1;v[f+4928>>2]=0;v[f+4920>>2]=0}d=v[f+44>>2];if(d){g=v[f+40>>2];while(1){d=d-1|0;b=v[g>>2];b=b-v[(w[b+9|0]<<2)+89188>>2]|0;if(!(w[b+7|0]&16)){Su(b)}g=g+4|0;if(d){continue}break}}b=v[f+2252>>2];if(b){e=v[f+2220>>2];d=0;while(1){c=v[e+(d<<2)>>2];c=c-v[(w[c+9|0]<<2)+89188>>2]|0;if(!(w[c+7|0]&16)){Su(c)}d=d+1|0;if((b|0)!=(d|0)){continue}break}}e=f+16|0;k:{if(!v[f+4968>>2]){break k}c=v[f+4936>>2];d=0;while(1){b=v[c+(d<<2)>>2];g=v[b+4>>2];l:{if((g&-1073741824)==1073741824){Bu(e,b,0,0);break l}if(!(g&268435456)){break l}Su(b)}d=d+1|0;g=v[f+4968>>2];if(d>>>0>>0){continue}break}if(!g){break k}k=v[f+4936>>2];d=0;while(1){i=k+(d<<2)|0;b=v[i>>2];c=v[b+4>>2];h=c&268435455;m:{if((c>>>30|0)-1>>>0<=1){v[b+4>>2]=h|-2147483648;break m}v[b>>2]=0;v[b+4>>2]=h}if(c&536870912){Tm(v[i>>2]);g=v[f+4968>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+4952>>2];if(!b|!g){break k}J9(v[f+4944>>2],255,b<<2);d=0;b=v[f+4940>>2];h=v[f+4948>>2];c=h-1|0;if(c){g=0;if(h-2>>>0>=3){i=c&-4;h=0;while(1){m=d|1;v[b+(d<<2)>>2]=m;k=b+(m<<2)|0;m=d|2;v[k>>2]=m;k=b+(m<<2)|0;m=d|3;v[k>>2]=m;d=d+4|0;v[b+(m<<2)>>2]=d;h=h+4|0;if((i|0)!=(h|0)){continue}break}}c=c&3;if(c){while(1){h=b+(d<<2)|0;d=d+1|0;v[h>>2]=d;g=g+1|0;if((c|0)!=(g|0)){continue}break}}d=v[f+4948>>2]-1|0}else{d=0}v[b+(d<<2)>>2]=-1;v[f+4968>>2]=0;v[f+4960>>2]=0}d=0;v[f+4872>>2]=0;g=v[f+4852>>2];n:{if(!g){break n}while(1){b=v[v[f+4820>>2]+(d<<2)>>2];if(w[b+7|0]&16){Zu(b);g=v[f+4852>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}if(!g){break n}k=v[f+4820>>2];d=0;while(1){i=k+(d<<2)|0;b=v[i>>2];c=v[b+4>>2];h=c&268435455;o:{if((c>>>30|0)-1>>>0<=1){v[b+4>>2]=h|-2147483648;break o}v[b>>2]=0;v[b+4>>2]=h}if(c&536870912){Tm(v[i>>2]);g=v[f+4852>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+4836>>2];if(!b|!g){break n}J9(v[f+4828>>2],255,b<<2);d=0;b=v[f+4824>>2];h=v[f+4832>>2];c=h-1|0;if(c){g=0;if(h-2>>>0>=3){i=c&-4;h=0;while(1){m=d|1;v[b+(d<<2)>>2]=m;k=b+(m<<2)|0;m=d|2;v[k>>2]=m;k=b+(m<<2)|0;m=d|3;v[k>>2]=m;d=d+4|0;v[b+(m<<2)>>2]=d;h=h+4|0;if((i|0)!=(h|0)){continue}break}}c=c&3;if(c){while(1){h=b+(d<<2)|0;d=d+1|0;v[h>>2]=d;g=g+1|0;if((c|0)!=(g|0)){continue}break}}d=v[f+4832>>2]-1|0}else{d=0}v[b+(d<<2)>>2]=-1;v[f+4852>>2]=0;v[f+4844>>2]=0}d=0;v[f+4860>>2]=0;b=v[e+1100>>2];c=v[e+1132>>2];if(c){while(1){g=v[b+(d<<2)>>2];if(!(w[g-5|0]&16)){Tu(g-12|0)}d=d+1|0;if((c|0)!=(d|0)){continue}break}}g=xa-16|0;xa=g;h=f+4972|0;if(v[h+36>>2]){i=v[h+4>>2];d=f+16|0;b=0;while(1){c=v[i+(b<<2)>>2];k=v[c+4>>2];p:{if((k&-1073741824)==1073741824){Hg(c,g+12|0,g+8|0);m=c+12|0;c=v[g+12>>2];if(c){c=c+v[((v[c+4>>2]>>>22&60)+89188|0)+12>>2]|0}else{c=0}k=v[g+8>>2];if(k){k=k+v[((v[k+4>>2]>>>22&60)+89188|0)+12>>2]|0}else{k=0}mP(d,m,c,k);break p}if(!(k&268435456)){break p}Tu(c)}b=b+1|0;if(b>>>0>2]){continue}break}}xa=g+16|0;g=v[f+5008>>2];q:{if(!g){break q}k=v[f+4976>>2];d=0;while(1){i=k+(d<<2)|0;b=v[i>>2];c=v[b+4>>2];h=c&268435455;r:{if((c>>>30|0)-1>>>0<=1){v[b+4>>2]=h|-2147483648;break r}v[b>>2]=0;v[b+4>>2]=h}if(c&536870912){Tm(v[i>>2]);g=v[f+5008>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+4992>>2];if(!b|!g){break q}J9(v[f+4984>>2],255,b<<2);d=0;b=v[f+4980>>2];h=v[f+4988>>2];c=h-1|0;if(c){g=0;if(h-2>>>0>=3){i=c&-4;h=0;while(1){m=d|1;v[b+(d<<2)>>2]=m;k=b+(m<<2)|0;m=d|2;v[k>>2]=m;k=b+(m<<2)|0;m=d|3;v[k>>2]=m;d=d+4|0;v[b+(m<<2)>>2]=d;h=h+4|0;if((i|0)!=(h|0)){continue}break}}c=c&3;if(c){while(1){h=b+(d<<2)|0;d=d+1|0;v[h>>2]=d;g=g+1|0;if((c|0)!=(g|0)){continue}break}}d=v[f+4988>>2]-1|0}else{d=0}v[b+(d<<2)>>2]=-1;v[f+5008>>2]=0;v[f+5e3>>2]=0}b=v[e+1204>>2];c=v[e+1236>>2];if(c){d=0;while(1){g=v[b+(d<<2)>>2];if(!(w[g-5|0]&16)){Uu(g-12|0)}d=d+1|0;if((c|0)!=(d|0)){continue}break}}s:{if(!v[f+5048>>2]){break s}c=v[f+5016>>2];d=0;while(1){b=v[c+(d<<2)>>2];g=v[b+4>>2];t:{if((g&-1073741824)==1073741824){g=b+12|0;if(v[b+88>>2]){b=v[v[b+84>>2]>>2];b=b?b+48|0:0}else{b=0}oP(e,g,b+16|0);break t}if(!(g&268435456)){break t}Uu(b)}d=d+1|0;g=v[f+5048>>2];if(d>>>0>>0){continue}break}if(!g){break s}h=v[f+5016>>2];d=0;while(1){k=h+(d<<2)|0;b=v[k>>2];e=v[b+4>>2];c=e&268435455;u:{if((e>>>30|0)-1>>>0<=1){v[b+4>>2]=c|-2147483648;break u}v[b>>2]=0;v[b+4>>2]=c}if(e&536870912){Tm(v[k>>2]);g=v[f+5048>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+5032>>2];if(!b|!g){break s}J9(v[f+5024>>2],255,b<<2);d=0;b=v[f+5020>>2];h=v[f+5028>>2];e=h-1|0;if(e){g=0;if(h-2>>>0>=3){k=e&-4;h=0;while(1){i=d|1;v[b+(d<<2)>>2]=i;c=b+(i<<2)|0;i=d|2;v[c>>2]=i;c=b+(i<<2)|0;i=d|3;v[c>>2]=i;d=d+4|0;v[b+(i<<2)>>2]=d;h=h+4|0;if((k|0)!=(h|0)){continue}break}}e=e&3;if(e){while(1){c=b+(d<<2)|0;d=d+1|0;v[c>>2]=d;g=g+1|0;if((e|0)!=(g|0)){continue}break}}e=v[f+5028>>2]-1|0}else{e=0}v[b+(e<<2)>>2]=-1;v[f+5048>>2]=0;v[f+5040>>2]=0}v:{if(!v[f+5088>>2]){break v}h=v[f+5056>>2];d=0;while(1){e=v[h+(d<<2)>>2];b=v[e+4>>2];w:{if((b&-1073741824)==1073741824){b=v[e+388>>2];v[n+12>>2]=v[e+384>>2]+48;v[n+8>>2]=b+48;qP(e+12|0,v[n+12>>2]+16|0,v[n+8>>2]+16|0);break w}if(!(b&268435456)){break w}c=v[e+4>>2];x:{if(!(c&16777215)){break x}b=v[e+8>>2];if(!b){b=Qu(v[e>>2],c>>>24&15);v[e+8>>2]=b;c=v[e+4>>2]}if(c&1){aF(e+12|0,b);c=v[e+4>>2]}if(c&2){bF(e+12|0,b+28|0);c=v[e+4>>2]}if(c&4){z[e+288>>2]=z[b+56>>2];z[e+292>>2]=z[b+60>>2];z[e+296>>2]=z[b+64>>2];z[e+300>>2]=z[b+68>>2];c=v[e+4>>2]}if(c&8){z[e+304>>2]=z[b+72>>2];z[e+308>>2]=z[b+76>>2];z[e+312>>2]=z[b+80>>2];c=v[e+4>>2]}if(c&16){z[e+316>>2]=z[b+84>>2];c=v[e+4>>2]}if(c&32){z[e+320>>2]=z[b+88>>2];c=v[e+4>>2]}if(c&64){z[e+264>>2]=z[b+92>>2];c=v[e+4>>2]}if(c&256){z[e+324>>2]=z[b+100>>2];c=v[e+4>>2]}if(c&512){z[e+328>>2]=z[b+104>>2];c=v[e+4>>2]}if(c&1024){fF(e+12|0,z[b+108>>2]);c=v[e+4>>2]}if(c&2048){t[e+344|0]=w[b+112|0];c=v[e+4>>2]}if(c&16384){hF(e+12|0,z[b+124>>2]);c=v[e+4>>2]}if(c&32768){t[e+345|0]=w[b+128|0];c=v[e+4>>2]}if(c&4096){z[e+336>>2]=z[b+116>>2];c=v[e+4>>2]}if(c&8192){z[e+340>>2]=z[b+120>>2];c=v[e+4>>2]}if(c&524288){cF(e+12|0,v[b+136>>2]);c=v[e+4>>2]}if(c&65536){t[e+346|0]=v[b+132>>2];c=v[e+4>>2]}if(c&131072){eF(e+12|0,z[b+140>>2],z[b+144>>2]);c=v[e+4>>2]}if(c&262144){gF(e+12|0,z[b+148>>2],z[b+152>>2]);c=v[e+4>>2]}if(c&8388608){c=e+12|0;dF(c,0,v[b+348>>2]);dF(c,1,v[b+352>>2]);dF(c,2,v[b+356>>2]);dF(c,3,v[b+360>>2]);dF(c,4,v[b+364>>2]);dF(c,5,v[b+368>>2]);c=v[e+4>>2]}if(c&1048576){c=e+12|0;kF(c,0,z[b+156>>2],z[b+160>>2]);kF(c,1,z[b+164>>2],z[b+168>>2]);kF(c,2,z[b+172>>2],z[b+176>>2]);kF(c,3,z[b+180>>2],z[b+184>>2]);kF(c,4,z[b+188>>2],z[b+192>>2]);kF(c,5,z[b+196>>2],z[b+200>>2]);c=v[e+4>>2]}if(c&2097152){c=e+12|0;lF(c,0,z[b+204>>2],z[b+208>>2],z[b+212>>2],v[b+216>>2]);lF(c,1,z[b+220>>2],z[b+224>>2],z[b+228>>2],v[b+232>>2]);lF(c,2,z[b+236>>2],z[b+240>>2],z[b+244>>2],v[b+248>>2]);lF(c,3,z[b+252>>2],z[b+256>>2],z[b+260>>2],v[b+264>>2]);lF(c,4,z[b+268>>2],z[b+272>>2],z[b+276>>2],v[b+280>>2]);lF(c,5,z[b+284>>2],z[b+288>>2],z[b+292>>2],v[b+296>>2]);c=v[e+4>>2]}if(!(c&4194304)){break x}c=e+12|0;iF(c,0,z[b+300>>2]);jF(c,0,z[b+324>>2]);iF(c,1,z[b+304>>2]);jF(c,1,z[b+328>>2]);iF(c,2,z[b+308>>2]);jF(c,2,z[b+332>>2]);iF(c,3,z[b+312>>2]);jF(c,3,z[b+336>>2]);iF(c,4,z[b+316>>2]);jF(c,4,z[b+340>>2]);iF(c,5,z[b+320>>2]);jF(c,5,z[b+344>>2]);c=v[e+4>>2]}v[e+8>>2]=0;v[e+4>>2]=c&-16777216}d=d+1|0;g=v[f+5088>>2];if(d>>>0>>0){continue}break}if(!g){break v}h=v[f+5056>>2];d=0;while(1){k=h+(d<<2)|0;b=v[k>>2];e=v[b+4>>2];c=e&268435455;y:{if((e>>>30|0)-1>>>0<=1){v[b+4>>2]=c|-2147483648;break y}v[b>>2]=0;v[b+4>>2]=c}if(e&536870912){Tm(v[k>>2]);g=v[f+5088>>2]}d=d+1|0;if(g>>>0>d>>>0){continue}break}b=v[f+5072>>2];if(!b|!g){break v}J9(v[f+5064>>2],255,b<<2);d=0;b=v[f+5060>>2];h=v[f+5068>>2];e=h-1|0;if(e){g=0;if(h-2>>>0>=3){k=e&-4;h=0;while(1){i=d|1;v[b+(d<<2)>>2]=i;c=b+(i<<2)|0;i=d|2;v[c>>2]=i;c=b+(i<<2)|0;i=d|3;v[c>>2]=i;d=d+4|0;v[b+(i<<2)>>2]=d;h=h+4|0;if((k|0)!=(h|0)){continue}break}}e=e&3;if(e){while(1){c=b+(d<<2)|0;d=d+1|0;v[c>>2]=d;g=g+1|0;if((e|0)!=(g|0)){continue}break}}e=v[f+5068>>2]-1|0}else{e=0}v[b+(e<<2)>>2]=-1;v[f+5088>>2]=0;v[f+5080>>2]=0}d=v[f+4796>>2];e=v[f+4804>>2]+2|0;if(d>>>0>e>>>0){while(1){d=d-1|0;b=v[v[f+4792>>2]+(d<<2)>>2];v[f+4796>>2]=d;if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);d=v[f+4796>>2]}if(d>>>0>e>>>0){continue}break}}v[f+4804>>2]=0;v[f+4808>>2]=0;xa=n+16|0;v[o+8>>2]=126252;DP(j,a+5712|0,o+8|0);b=a+5584|0;e=v[a+72>>2];c=0;d=v[a+76>>2];if(d){while(1){f=v[b+72>>2];g=e+(c<<2)|0;Ba[v[v[f>>2]+8>>2]](f,v[v[v[g>>2]>>2]+48>>2],v[g>>2]+16|0);c=c+1|0;if((d|0)!=(c|0)){continue}break}}v[b+68>>2]=v[b+68>>2]+1;KE(b,v[a+5824>>2]);if(!w[j+2281|0]){d=v[j+2236>>2];if(d){e=j+2200|0;f=v[j+2204>>2];g=v[j+1e3>>2];while(1){d=d-1|0;c=f+(d<<2)|0;b=v[v[c>>2]>>2];h=x[b+148>>1];z:{if(h&128){u[b+148>>1]=h&65503;Pg(e,c);break z}if(!(w[(v[g+184>>2]+B(v[b+144>>2]>>>7|0,24)|0)+4|0]&2)){break z}Pg(e,c);pH(b)}if(d){continue}break}}t[j+2281|0]=1}if(!w[j+2280|0]){d=v[j+2276>>2];if(d){b=j+2240|0;e=v[j+2244>>2];while(1){d=d-1|0;c=e+(d<<2)|0;if(w[v[v[c>>2]>>2]+148|0]&64){Pg(b,c)}if(d){continue}break}}t[j+2280|0]=1}A:{if(!v[j+2344>>2]){break A}e=v[j+2236>>2];f=v[j+2276>>2];b=f>>>0>>0?e:f;if(!b){break A}b=b<<2;if(!b){break A}c=v[37696];b=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,11777,4567)|0;if(!b){break A}B:{if(!e){break B}h=v[j+2204>>2];c=0;d=0;while(1){g=v[h+(d<<2)>>2];if(w[g+8|0]&4){v[b+(c<<2)>>2]=g+v[((w[g+9|0]<<2)+149664|0)+40>>2];c=c+1|0}d=d+1|0;if((e|0)!=(d|0)){continue}break}if(!c){break B}e=v[j+2344>>2];Ba[v[v[e>>2]+8>>2]](e,b,c)}C:{if(!f){break C}g=v[j+2244>>2];d=0;c=0;while(1){e=v[g+(d<<2)>>2];if(w[e+8|0]&4){v[b+(c<<2)>>2]=e+v[((w[e+9|0]<<2)+149664|0)+40>>2];c=c+1|0}d=d+1|0;if((f|0)!=(d|0)){continue}break}if(!c){break C}e=v[j+2344>>2];Ba[v[v[e>>2]+4>>2]](e,b,c)}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}jP(j);PO(j);b=v[(w[a+5580|0]&4?5564:2392)+a>>2]&1;D:{if(!(!b|!w[a+6355|0])){h=0;e=xa-16|0;xa=e;c=v[j+28>>2];if(w[j+2361|0]&16){b=v[j+36>>2];c=c-b|0;b=v[j+24>>2]+(b<<2)|0}else{b=v[j+24>>2]}v[j+2312>>2]=0;v[j+2300>>2]=0;if(c){g=j+2308|0;n=j+2296|0;while(1){f=b+(h<<2)|0;d=v[f>>2];d=v[((w[d+9|0]<<2)+149664|0)+40>>2]+d|0;E:{if(!(u[v[v[f>>2]>>2]+92>>1]&1)){v[e+12>>2]=d;f=v[j+2300>>2];if(f>>>0>=(v[j+2304>>2]&2147483647)>>>0){Mm(n,e+12|0);break E}v[v[j+2296>>2]+(f<<2)>>2]=d;v[j+2300>>2]=f+1;break E}v[e+8>>2]=d;f=v[j+2312>>2];if(f>>>0>=(v[j+2316>>2]&2147483647)>>>0){Mm(g,e+8|0);break E}v[v[j+2308>>2]+(f<<2)>>2]=d;v[j+2312>>2]=f+1}h=h+1|0;if((h|0)!=(c|0)){continue}break}}xa=e+16|0;break D}if(!b){break D}e=xa-16|0;xa=e;d=v[j+28>>2];if(w[j+2361|0]&16){b=v[j+36>>2];d=d-b|0;b=v[j+24>>2]+(b<<2)|0}else{b=v[j+24>>2]}g=0;v[j+2300>>2]=0;if(d){f=j+2296|0;while(1){c=b+(g<<2)|0;F:{if(u[v[v[c>>2]>>2]+92>>1]&1){break F}c=v[c>>2];h=v[((w[c+9|0]<<2)+149664|0)+40>>2]+c|0;v[e+12>>2]=h;c=v[j+2300>>2];if(c>>>0>=(v[j+2304>>2]&2147483647)>>>0){Mm(f,e+12|0);break F}v[v[j+2296>>2]+(c<<2)>>2]=h;v[j+2300>>2]=c+1}g=g+1|0;if((g|0)!=(d|0)){continue}break}}xa=e+16|0}pr(a+5828|0,v[j+976>>2]+212|0);if(w[a+6320|0]){b=v[a+6092>>2];Ba[v[v[b>>2]+16>>2]](b)}v[a+4656>>2]=0;t[v[a+6060>>2]+76|0]=0;t[v[a+6064>>2]+76|0]=0;xa=o+16|0}function hO(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=C(0),m=C(0),n=0,o=C(0),p=C(0),q=0,r=0,s=0,A=C(0),E=0,F=0,G=0,H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=0,P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0,da=0,ea=C(0),fa=0,ga=C(0),ha=C(0),ia=C(0),ja=0,ka=C(0),la=0,ma=0,na=0,oa=0,pa=0,qa=C(0),ra=C(0),sa=0,ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=0,Da=C(0),Ea=C(0),Fa=0,Ga=0,Ha=0,Ia=C(0),Ja=0,Ka=0,La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=0,cb=0;e=v[a+48>>2];b=v[e+304>>2];d=v[b>>2];if(d){v[b>>2]=v[d>>2]}if(!d){b=v[37696];g=Ba[v[v[b>>2]+20>>2]](b)|0?26823:63804;g=Ba[v[v[b+12>>2]+8>>2]](b+12|0,7251,g,19395,82)|0;b=g+19&-16;v[b-4>>2]=b-g;d=tK(b,v[e+308>>2])}z[d+7152>>2]=z[a+44>>2];b=v[a+48>>2];e=w[b+1812|0];t[d+7136|0]=e;t[d+7139|0]=w[b+1814|0];t[d+7137|0]=w[b+1813|0];v[d+7128>>2]=v[b+1816>>2];v[d+7132>>2]=v[v[b+1820>>2]+4>>2];a:{if(e){F=xa-32|0;xa=F;Ja=v[a+28>>2];ja=v[a+40>>2];v[F+28>>2]=0;v[F+24>>2]=0;v[F+20>>2]=v[d+7164>>2];b=ja<<2;t[F+12|0]=b>>>0>1024;b:{if(b>>>0>=1025){bb=F,cb=u9(b,6023,407),v[bb+8>>2]=cb;break b}b=F-(b+15&-16)|0;xa=b;v[F+8>>2]=b}c:{if(!ja){break c}while(1){k=la;la=k+1|0;ma=Ja+(k<<2)|0;N=v[ma>>2];d:{if(!N){break d}H=v[a+32>>2]+(k<<4)|0;t[H+15|0]=w[H+13|0];na=w[H+14|0];O=v[a+36>>2]+(k<<3)|0;q=0;Z=0;h=0;da=xa-256|0;xa=da;g=x[N+40>>1];e:{if(!(g&512)){break e}i=v[N+56>>2];I=v[v[d+7128>>2]+4>>2];f=v[N+60>>2];c=I+(f<<5)|0;b=w[N+47|0];e=w[N+46|0];j=w[H+14|0];if(!(j&32|g&128|(!(v[c+28>>2]&1)&(g&64)!=0|(g&32?!(t[(I+(i<<5)|0)+28|0]&1):q)))){if(w[H+12|0]){v[d+7148>>2]=v[d+7148>>2]+1}BN(H,O,d,0,(b>>>0>e>>>0?b:e)>>>0>4);break e}q=I+(i<<5)|0;t[H+14|0]=j&223;g=v[d+7132>>2];z[d+7104>>2]=z[g+(i<<2)>>2]+z[g+(f<<2)>>2];f=v[N+28>>2];I=v[N+24>>2];Fa=b>>>0>=e>>>0;f:{if(Fa){g=e;e=b;i=q;q=c;s=I;I=f;break f}g=b;i=c;s=f}Ka=d+7104|0;n=d+4640|0;b=w[O+7|0];Ga=b&2;g:{if(Ga){c=v[O>>2];h:{i:{j:{if(c){b=v[c+32>>2];f=v[c+4>>2];v[n>>2]=v[c>>2];v[n+4>>2]=f;f=v[c+28>>2];v[n+24>>2]=v[c+24>>2];v[n+28>>2]=f;f=v[c+20>>2];v[n+16>>2]=v[c+16>>2];v[n+20>>2]=f;f=v[c+12>>2];v[n+8>>2]=v[c+8>>2];v[n+12>>2]=f;if(!b){break j}j=c+48|0;while(1){t[(h+n|0)+56|0]=h;r=B(h,400)+n|0;E=v[j>>2];v[r+448>>2]=E;j=j+16|0;if(E){Z=r- -64|0;G=0;while(1){f=j+B(G,48)|0;R=v[f+4>>2];fa=v[f>>2];L=z[f+8>>2];c=Z+(G<<6)|0;v[c+12>>2]=0;z[c+8>>2]=L;v[c>>2]=fa;v[c+4>>2]=R;R=v[f+16>>2];fa=v[f+20>>2];L=z[f+24>>2];v[c+28>>2]=0;z[c+24>>2]=L;v[c+16>>2]=R;v[c+20>>2]=fa;R=v[f+40>>2];fa=v[f+44>>2];sa=v[f+36>>2];v[c+32>>2]=v[f+32>>2];v[c+36>>2]=sa;v[c+40>>2]=R;v[c+44>>2]=fa;v[c+48>>2]=v[f+12>>2];G=G+1|0;if(G>>>0>2]){continue}break}}j=j+B(E,48)|0;h=h+1|0;if((h|0)!=(b|0)){continue}break}t[n+62|0]=b;if(b>>>0<=5){break i}break h}v[n+16>>2]=2139095039;v[n+20>>2]=2139095039;v[n+8>>2]=0;v[n+12>>2]=1065353216;v[n>>2]=0;v[n+4>>2]=0;v[n+24>>2]=2139095039;v[n+28>>2]=0}b=0;t[n+62|0]=0}j=b;f=6-b&7;if(f){c=0;while(1){t[(j+n|0)+56|0]=j;j=j+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(b+1>>>0<=6){break h}b=n+56|0;while(1){c=j+7|0;t[c+b|0]=c;c=j+6|0;t[c+b|0]=c;c=j+5|0;t[c+b|0]=c;c=j+4|0;t[c+b|0]=c;c=j+3|0;t[c+b|0]=c;c=j+2|0;t[c+b|0]=c;c=j+1|0;t[c+b|0]=c;t[b+j|0]=j;j=j+8|0;if((j|0)!=6){continue}break}}v[O>>2]=n;t[O+7|0]=w[O+7|0]|3;break g}if(!(b&1)){break g}b=0;j=v[O>>2];c=j+127|0;b=c>>>0<127?1:b;f=c;c=b>>>6|0;b=(b&63)<<26|f>>>6;r=j>>>6|0;f=r;fa=b-f|0;R=c-(b>>>0>>0)|0;E=1-f|0;f=b;G=E+b|0;sa=0-(r>>>0>1)|0;b=c+sa|0;c=G;f=f>>>0>c>>>0?b+1|0:b;b=0;Ca=b;Ha=c&7;k:{if(!(b|Ha)){b=j;break k}b=j;while(1){G=c;c=c-1|0;f=f-!G|0;b=b- -64|0;G=Z+1|0;h=G?h:h+1|0;Z=G;if((Ha|0)!=(G|0)|(h|0)!=(Ca|0)){continue}break}}if(!R&fa>>>0>=7|R){while(1){b=b+512|0;f=f-(c>>>0<8)|0;c=c-8|0;if(f|c){continue}break}}b=0;c=j+255|0;b=c>>>0<255?1:b;h=b>>>6|0;b=(b&63)<<26|c>>>6;G=b-r|0;r=h-(b>>>0>>0)|0;f=h+sa|0;b=b+E|0;f=b>>>0>>0?f+1|0:f;c=b;b=0;E=b;R=c&7;if(b|R){Z=0;h=0;while(1){b=c;c=b-1|0;f=f-!b|0;j=j- -64|0;b=h;h=Z+1|0;b=h?b:b+1|0;Z=h;h=b;if((R|0)!=(Z|0)|(E|0)!=(b|0)){continue}break}}if(!r&G>>>0<7){break g}while(1){j=j+512|0;f=f-(c>>>0<8)|0;c=c-8|0;if(f|c){continue}break}}b=B(g,28);g=e<<2;c=(b+d|0)+g|0;v[c+108>>2]=v[c+108>>2]+1;v[d+4624>>2]=0;t[H+7|0]=0;t[H+8|0]=0;t[H+9|0]=0;t[H+10|0]=0;t[H+11|0]=0;t[H+12|0]=0;t[H+13|0]=0;t[H+14|0]=0;v[H>>2]=0;v[H+4>>2]=0;c=q;q=d+528|0;Ba[v[g+(b+127248|0)>>2]](s+36|0,I+36|0,i,c,Ka,O,q,d+4|0)|0;b=v[g+(b+133760|0)>>2];if(b){Ba[b|0](s,I,d,da)|0}l:{if(Fa){break l}i=v[d+4624>>2];if(!i){break l}b=0;while(1){g=q+(b<<6)|0;z[g+8>>2]=-z[g+8>>2];z[g+4>>2]=-z[g+4>>2];z[g>>2]=-z[g>>2];g=da+(b<<2)|0;bb=g,cb=Vaa(v[g>>2],16),v[bb>>2]=cb;b=b+1|0;if((i|0)!=(b|0)){continue}break}}if(Ga){b=d+4702|0;r=(B(w[d+4703|0],48)+(w[b|0]<<4)|0)+48|0;q=sK(d+512|0,r);I=w[b|0];v[q+32>>2]=I;b=v[n+4>>2];v[q>>2]=v[n>>2];v[q+4>>2]=b;b=v[n+12>>2];v[q+8>>2]=v[n+8>>2];v[q+12>>2]=b;b=v[n+20>>2];v[q+16>>2]=v[n+16>>2];v[q+20>>2]=b;b=v[n+28>>2];v[q+24>>2]=v[n+24>>2];v[q+28>>2]=b;if(I){j=q+48|0;f=d+4640|0;s=0;while(1){b=f+B(w[(f+s|0)+56|0],400)|0;c=v[b+448>>2];v[j>>2]=c;h=j+16|0;if(c){j=b- -64|0;g=0;while(1){i=j+(g<<6)|0;E=v[i+4>>2];G=v[i>>2];b=h+B(g,48)|0;z[b+8>>2]=z[i+8>>2];v[b>>2]=G;v[b+4>>2]=E;E=v[i+16>>2];G=v[i+20>>2];L=z[i+24>>2];v[b+28>>2]=0;z[b+24>>2]=L;v[b+16>>2]=E;v[b+20>>2]=G;E=v[i+36>>2];v[b+32>>2]=v[i+32>>2];v[b+36>>2]=E;E=v[i+44>>2];v[b+40>>2]=v[i+40>>2];v[b+44>>2]=E;v[b+12>>2]=v[i+48>>2];g=g+1|0;if((c|0)!=(g|0)){continue}break}}j=h+B(c,48)|0;s=s+1|0;if((I|0)!=(s|0)){continue}break}}v[O>>2]=q;u[O+4>>1]=r;t[O+7|0]=w[O+7|0]|3}CN(x[N+40>>1],H,d,da,e>>>0>4)}xa=da+256|0;c=na&2;q=w[H+14|0]&2;g=w[H+13|0];m:{if(!(!g|!(x[N+40>>1]&128))){v[v[F+8>>2]+(ca<<2)>>2]=k;ca=ca+1|0;break m}b=v[F+20>>2];v[F+20>>2]=b>>>0>g>>>0?b:g;j=w[H+15|0];if((g|0)==(j|0)){break m}i=v[v[ma>>2]+48>>2];b=i+32>>>5|0;n:{if(b>>>0<=(v[d+7208>>2]&2147483647)>>>0){e=v[d+7204>>2];break n}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,b<<2,24422,18067,438)|0;g=v[d+7204>>2];o:{if(!g){break o}I9(e,g,v[d+7208>>2]<<2);if(v[d+7208>>2]<0){break o}g=v[d+7204>>2];if(!g){break o}I=v[37696]+12|0;Ba[v[v[I>>2]+12>>2]](I,g)}g=v[d+7208>>2];J9((g<<2)+e|0,0,b-g<<2);v[d+7208>>2]=b;v[d+7204>>2]=e;g=w[H+13|0];j=w[H+15|0]}b=(i>>>3&536870908)+e|0;v[b>>2]=v[b>>2]|1<>>0>j>>>0){v[F+24>>2]=v[F+24>>2]+1;break m}v[F+28>>2]=v[F+28>>2]+1}if((c|0)!=(q|0)){t[N+43|0]=w[H+14|0]|w[N+43|0]&64;g=v[v[ma>>2]+48>>2];b=g+32>>>5|0;p:{if(b>>>0<=(v[d+7196>>2]&2147483647)>>>0){e=v[d+7192>>2];break p}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,b<<2,24422,18067,438)|0;i=v[d+7192>>2];q:{if(!i){break q}I9(e,i,v[d+7196>>2]<<2);if(v[d+7196>>2]<0){break q}i=v[d+7192>>2];if(!i){break q}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,i)}i=v[d+7196>>2];J9((i<<2)+e|0,0,b-i<<2);v[d+7196>>2]=b;v[d+7192>>2]=e}b=(g>>>3&536870908)+e|0;v[b>>2]=v[b>>2]|1<>2],ca,d,F+24|0,F+28|0,F+20|0)}v[d+7216>>2]=v[d+7216>>2]+oa;v[d+7220>>2]=v[d+7220>>2]+pa;v[d+7224>>2]=v[d+7224>>2]+v[F+24>>2];v[d+7228>>2]=v[d+7228>>2]+v[F+28>>2];v[d+7164>>2]=v[F+20>>2];if(w[F+12|0]){v9(v[F+8>>2])}xa=F+32|0;break a}s=xa-32|0;xa=s;ma=v[a+28>>2];H=v[a+40>>2];v[s+28>>2]=0;v[s+24>>2]=0;v[s+20>>2]=v[d+7164>>2];b=H<<2;t[s+12|0]=b>>>0>1024;r:{if(b>>>0>=1025){bb=s,cb=u9(b,6023,407),v[bb+8>>2]=cb;break r}b=s-(b+15&-16)|0;xa=b;v[s+8>>2]=b}s:{if(!H){break s}while(1){j=la;la=j+1|0;Z=ma+(j<<2)|0;E=v[Z>>2];t:{if(!E){break t}r=v[a+32>>2]+(j<<4)|0;t[r+15|0]=w[r+13|0];da=w[r+14|0];h=v[a+36>>2]+(j<<3)|0;b=0;G=0;F=xa-256|0;xa=F;e=x[E+40>>1];u:{if(!(e&512)){break u}q=v[E+56>>2];I=v[v[d+7128>>2]+4>>2];f=v[E+60>>2];c=I+(f<<5)|0;i=w[E+47|0];g=w[E+46|0];if(!(w[r+14|0]&32|e&128|(!(v[c+28>>2]&1)&(e&64)!=0|(e&32?!(t[(I+(q<<5)|0)+28|0]&1):b)))){e=g>>>0>>0?i:g;b=w[d+7137|0]?w[e+(B(g>>>0>i>>>0?i:g,7)+93280|0)|0]!=0:0;if(w[r+12|0]){v[d+7148>>2]=v[d+7148>>2]+1}BN(r,h,d,b,e>>>0>4);break u}e=I+(q<<5)|0;b=v[d+7132>>2];z[d+7104>>2]=z[b+(q<<2)>>2]+z[b+(f<<2)>>2];f=v[E+28>>2];q=v[E+24>>2];na=g>>>0<=i>>>0;v:{if(na){I=g;g=i;b=e;e=c;i=q;q=f;break v}I=i;b=c;i=f}f=g<<2;c=B(I,28);k=f+(c+d|0)|0;v[k+108>>2]=v[k+108>>2]+1;v[d+4624>>2]=0;t[r+7|0]=0;t[r+8|0]=0;t[r+9|0]=0;t[r+10|0]=0;t[r+11|0]=0;t[r+12|0]=0;t[r+13|0]=0;t[r+14|0]=0;v[r>>2]=0;v[r+4>>2]=0;k=v[f+(c+127040|0)>>2];w:{if(!(!w[d+7137|0]|!w[(B(I,7)+93280|0)+g|0])){O=i+36|0;R=q+36|0;x:{y:{f=v[h>>2];if(!f){v[d+4624>>2]=0;u[h+4>>1]=0;v[h>>2]=0;c=d+528|0;break y}v[d+4624>>2]=0;L=z[f+40>>2];ga=z[f+44>>2];S=z[f+32>>2];ka=z[f+48>>2];qa=z[f+20>>2];T=z[f+36>>2];ra=z[f+52>>2];Da=z[f+24>>2];N=v[f+60>>2];G=w[f+59|0];ja=w[f+58|0];n=x[f+56>>1];U=z[f+12>>2];W=z[f+8>>2];X=z[f+4>>2];Y=z[f>>2];V=z[f+28>>2];Ea=z[f+16>>2];u[h+4>>1]=0;v[h>>2]=0;c=d+528|0;p=z[e>>2];_=C(-p);l=C(z[b+16>>2]-z[e+16>>2]);A=C(l+l);l=C(z[b+20>>2]-z[e+20>>2]);J=C(l+l);m=z[e+4>>2];o=z[e+8>>2];l=C(z[b+24>>2]-z[e+24>>2]);P=C(l+l);M=C(C(C(_*A)-C(J*m))-C(o*P));ta=C(-V);l=C(Ea-ga);ea=C(l+l);l=C(qa-ka);$=C(l+l);l=C(Da-ra);K=C(l+l);Q=C(C(C(ta*ea)-C($*S))-C(T*K));l=z[e+12>>2];aa=C(C(l*l)+C(-.5));ba=C(C(L*L)+C(-.5));ha=C(D(C(C(C(C(A*aa)+C(l*C(C(o*J)-C(m*P))))-C(p*M))-C(C(C(ea*ba)+C(L*C(C(T*$)-C(S*K))))-C(V*Q)))));ua=C(D(C(C(C(C(J*aa)+C(l*C(C(p*P)-C(o*A))))-C(m*M))-C(C(C($*ba)+C(L*C(C(V*K)-C(T*ea))))-C(S*Q)))));ha=ha>ua?ha:ua;A=C(D(C(C(C(C(P*aa)+C(l*C(C(m*A)-C(p*J))))-C(o*M))-C(C(C(K*ba)+C(L*C(C(S*ea)-C(V*$))))-C(T*Q)))));if(!(C(z[d+7112>>2]*C(.009999999776482582))>(A>2];$=C(-m);J=z[b+8>>2];P=z[b>>2];M=z[b+12>>2];ea=C(-S);K=C(D(C(C(C(A*o)+C(C($*J)+C(C(l*P)+C(M*_))))-C(C(X*T)+C(C(ea*W)+C(C(L*Y)+C(U*ta)))))));Q=C(-o);aa=C(C(J*p)+C(C(Q*P)+C(C(l*A)+C(M*$))));$=C(-T);aa=C(D(C(aa-C(C(W*V)+C(C($*Y)+C(C(L*X)+C(U*ea)))))));K=K>aa?K:aa;Q=C(D(C(C(C(P*m)+C(C(_*A)+C(C(l*J)+C(M*Q))))-C(C(Y*S)+C(C(ta*X)+C(C(L*W)+C(U*$)))))));K=K>Q?K:Q;l=C(D(C(C(C(o*J)+C(C(m*A)+C(C(l*M)+C(p*P))))-C(C(T*W)+C(C(S*X)+C(C(L*U)+C(Y*V)))))));if(!((l>1]=k&-16;Ca=h;h=sK(d+512|0,k&65520);h=(h|0)==-1?0:h;v[Ca>>2]=h;f=f- -64|0;v[d+4624>>2]=n;if(n){o=z[b+4>>2];P=C(o+o);l=z[b+8>>2];A=C(P*l);M=z[b>>2];p=C(M+M);m=z[b+12>>2];J=C(p*m);aa=C(A-J);K=C(p*l);Q=C(P*m);ha=C(K+Q);ua=C(A+J);A=C(p*o);va=C(l+l);m=C(va*m);La=C(A-m);Ma=C(K-Q);Na=C(A+m);A=z[e+4>>2];K=C(A+A);m=z[e+8>>2];wa=C(K*m);Q=z[e>>2];J=C(Q+Q);_=z[e+12>>2];ia=C(J*_);Oa=C(wa-ia);ya=C(J*m);za=C(K*_);Pa=C(ya+za);wa=C(wa+ia);ia=C(J*A);Aa=C(m+m);_=C(Aa*_);Qa=C(ia-_);ya=C(ya-za);_=C(ia+_);p=C(C(1)-C(M*p));o=C(o*P);ia=C(p-o);l=C(l*va);va=C(p-l);za=C(C(C(1)-o)-l);l=C(C(1)-C(Q*J));o=C(A*K);Ra=C(l-o);p=l;l=C(m*Aa);Aa=C(p-l);Sa=C(C(C(1)-o)-l);l=C(C(U*U)+C(-.5));Ta=C(-X);Ua=C(-Y);Va=C(-W);Wa=z[b+24>>2];Xa=z[b+20>>2];Ya=z[b+16>>2];Za=z[e+24>>2];_a=z[e+20>>2];$a=z[e+16>>2];b=f;e=0;O=0;while(1){R=!O|!G;k=(R?12:0)+b|0;ab=z[k+12>>2];A=z[k+4>>2];J=z[k>>2];P=z[k+8>>2];e=R?b:e;z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];m=C(P-Da);m=C(m+m);o=C(J-Ea);o=C(o+o);p=C(A-qa);p=C(p+p);M=C(C(W*m)+C(C(Y*o)+C(X*p)));K=C(C(W*M)+C(C(m*l)-C(U*C(C(Y*p)+C(o*Ta)))));Q=C(C(Y*M)+C(C(o*l)-C(U*C(C(X*m)+C(p*Va)))));M=C(C(X*M)+C(C(p*l)-C(U*C(C(W*o)+C(m*Ua)))));Ia=C(Wa+C(C(ia*K)+C(C(Ma*Q)+C(ua*M))));m=C(P-ra);m=C(m+m);o=C(J-ga);o=C(o+o);p=C(A-ka);p=C(p+p);A=C(C(T*m)+C(C(V*o)+C(S*p)));J=C(C(T*A)+C(C(m*ba)-C(L*C(C(V*p)+C(o*ea)))));P=C(C(V*A)+C(C(o*ba)-C(L*C(C(S*m)+C(p*$)))));m=C(C(S*A)+C(C(p*ba)-C(L*C(C(T*o)+C(m*ta)))));o=C(Za+C(C(Ra*J)+C(C(ya*P)+C(wa*m))));z[c+24>>2]=C(Ia+o)*C(.5);p=C(Xa+C(C(aa*K)+C(C(Na*Q)+C(va*M))));A=C(_a+C(C(Oa*J)+C(C(_*P)+C(Aa*m))));z[c+20>>2]=C(p+A)*C(.5);M=C(Ya+C(C(ha*K)+C(C(za*Q)+C(La*M))));m=C($a+C(C(Pa*J)+C(C(Sa*P)+C(Qa*m))));z[c+16>>2]=C(M+m)*C(.5);z[c+12>>2]=ab+C(C(C(Ia-o)*z[e+8>>2])+C(C(C(M-m)*z[e>>2])+C(z[e+4>>2]*C(p-A))));z:{if(!ja){b=k+16|0;k=-1;break z}b=k+20|0;k=v[k+16>>2]}v[c+52>>2]=k;c=c- -64|0;O=O+1|0;if((n|0)!=(O|0)){continue}break}}e=1;if(!h){break x}v[h+60>>2]=N;t[h+59|0]=G;t[h+58|0]=ja;u[h+56>>1]=n;z[h+28>>2]=V;z[h+16>>2]=Ea;z[h+12>>2]=U;z[h+8>>2]=W;z[h+4>>2]=X;z[h>>2]=Y;z[h+52>>2]=ra;z[h+48>>2]=ka;z[h+44>>2]=ga;z[h+40>>2]=L;z[h+36>>2]=T;z[h+32>>2]=S;z[h+24>>2]=Da;z[h+20>>2]=qa;I9(h- -64|0,f,N);break x}Ba[k|0](O,R,b,e,d+7104|0,h,c,d+4|0)|0;L=z[e+24>>2];S=z[e+20>>2];T=z[b+24>>2];U=z[b+20>>2];V=z[e+16>>2];W=z[e+12>>2];X=z[e+8>>2];Y=z[e+4>>2];l=z[e>>2];m=z[b+16>>2];o=z[b+12>>2];p=z[b+8>>2];ba=z[b+4>>2];ga=z[b>>2];A:{B:{n=v[d+4624>>2];if(n){N=v[d+580>>2];G=(N|0)!=-1;c=1;b=0;C:{D:{if((n|0)==1){break D}ka=z[d+528>>2];e=d+592|0;E:{if(ka!=z[e>>2]){b=1;break E}qa=z[d+536>>2];ra=z[d+532>>2];f=d+528|0;b=1;while(1){if(ra!=z[e+4>>2]|qa!=z[e+8>>2]){break E}c=c+1|0;b=n>>>0>c>>>0;if((c|0)==(n|0)){break D}e=f+(c<<6)|0;if(ka==z[e>>2]){continue}break}}c=0;f=B(n,(N|0)!=-1?32:28);break C}c=1;f=B(n,G?20:16)+12|0}k=f+79&65520;u[h+4>>1]=k;e=0;O=d+512|0;k=sK(O,k);k=(k|0)==-1?0:k;v[h>>2]=k;if(k){v[k+60>>2]=f;t[k+59|0]=c;t[k+58|0]=G;u[k+56>>1]=n;z[k+28>>2]=l;z[k+16>>2]=m;z[k+12>>2]=o;z[k+8>>2]=p;z[k+4>>2]=ba;z[k>>2]=ga;z[k+52>>2]=L;z[k+48>>2]=S;z[k+44>>2]=V;z[k+40>>2]=W;z[k+36>>2]=X;z[k+32>>2]=Y;z[k+24>>2]=T;z[k+20>>2]=U;G=n>>>0>1?n:1;c=k- -64|0;f=d+528|0;if((N|0)!=-1){while(1){if((!e|b)&1){h=f+(e<<6)|0;z[c>>2]=z[h>>2];z[c+4>>2]=z[h+4>>2];z[c+8>>2]=z[h+8>>2];c=c+12|0}h=f+(e<<6)|0;z[c>>2]=z[h+16>>2];z[c+4>>2]=z[h+20>>2];z[c+8>>2]=z[h+24>>2];z[c+12>>2]=z[h+12>>2];v[c+16>>2]=v[h+52>>2];c=c+20|0;e=e+1|0;if((G|0)!=(e|0)){continue}break}e=0;break x}while(1){if((!e|b)&1){h=f+(e<<6)|0;z[c>>2]=z[h>>2];z[c+4>>2]=z[h+4>>2];z[c+8>>2]=z[h+8>>2];c=c+12|0}h=f+(e<<6)|0;z[c>>2]=z[h+16>>2];z[c+4>>2]=z[h+20>>2];z[c+8>>2]=z[h+24>>2];z[c+12>>2]=z[h+12>>2];c=c+16|0;e=e+1|0;if((G|0)!=(e|0)){continue}break}e=0;break x}u[h+4>>1]=64;b=sK(O,64);v[h>>2]=b;F:{switch(b+1|0){case 1:break x;case 0:break B;default:break F}}v[b+60>>2]=0;t[b+59|0]=c;t[b+58|0]=G;u[b+56>>1]=0;z[b+28>>2]=l;z[b+16>>2]=m;z[b+12>>2]=o;z[b+8>>2]=p;z[b+4>>2]=ba;z[b>>2]=ga;z[b+52>>2]=L;z[b+48>>2]=S;z[b+44>>2]=V;z[b+40>>2]=W;z[b+36>>2]=X;z[b+32>>2]=Y;z[b+24>>2]=T;z[b+20>>2]=U;break x}u[h+4>>1]=64;b=sK(d+512|0,64);v[h>>2]=b;e=0;switch(b+1|0){case 1:break x;case 0:break B;default:break A}}v[h>>2]=0;break x}v[b+60>>2]=0;t[b+59|0]=G;t[b+58|0]=0;u[b+56>>1]=0;z[b+28>>2]=l;z[b+16>>2]=m;z[b+12>>2]=o;z[b+8>>2]=p;z[b+4>>2]=ba;z[b>>2]=ga;z[b+52>>2]=L;z[b+48>>2]=S;z[b+44>>2]=V;z[b+40>>2]=W;z[b+36>>2]=X;z[b+32>>2]=Y;z[b+24>>2]=T;z[b+20>>2]=U}if(!e){break w}v[d+7144>>2]=v[d+7144>>2]+1;break w}Ba[k|0](i+36|0,q+36|0,b,e,d+7104|0,h,d+528|0,d+4|0)|0}b=v[(B(I,28)+133760|0)+(g<<2)>>2];if(b){Ba[b|0](i,q,d,F)|0}G:{if(na){break G}e=v[d+4624>>2];if(!e){break G}q=d+528|0;i=0;while(1){b=q+(i<<6)|0;z[b+8>>2]=-z[b+8>>2];z[b+4>>2]=-z[b+4>>2];z[b>>2]=-z[b>>2];b=F+(i<<2)|0;bb=b,cb=Vaa(v[b>>2],16),v[bb>>2]=cb;i=i+1|0;if((e|0)!=(i|0)){continue}break}}CN(x[E+40>>1],r,d,F,g>>>0>4)}xa=F+256|0;c=da&2;q=w[r+14|0]&2;g=w[r+13|0];H:{if(!(!g|!(x[E+40>>1]&128))){v[v[s+8>>2]+(ca<<2)>>2]=j;ca=ca+1|0;break H}b=v[s+20>>2];v[s+20>>2]=b>>>0>g>>>0?b:g;j=w[r+15|0];if((g|0)==(j|0)){break H}i=v[v[Z>>2]+48>>2];b=i+32>>>5|0;I:{if(b>>>0<=(v[d+7208>>2]&2147483647)>>>0){e=v[d+7204>>2];break I}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,b<<2,24422,18067,438)|0;g=v[d+7204>>2];J:{if(!g){break J}I9(e,g,v[d+7208>>2]<<2);if(v[d+7208>>2]<0){break J}g=v[d+7204>>2];if(!g){break J}I=v[37696]+12|0;Ba[v[v[I>>2]+12>>2]](I,g)}g=v[d+7208>>2];J9((g<<2)+e|0,0,b-g<<2);v[d+7208>>2]=b;v[d+7204>>2]=e;g=w[r+13|0];j=w[r+15|0]}b=(i>>>3&536870908)+e|0;v[b>>2]=v[b>>2]|1<>>0>j>>>0){v[s+24>>2]=v[s+24>>2]+1;break H}v[s+28>>2]=v[s+28>>2]+1}if((c|0)!=(q|0)){t[E+43|0]=w[r+14|0]|w[E+43|0]&64;g=v[v[Z>>2]+48>>2];b=g+32>>>5|0;K:{if(b>>>0<=(v[d+7196>>2]&2147483647)>>>0){e=v[d+7192>>2];break K}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,b<<2,24422,18067,438)|0;i=v[d+7192>>2];L:{if(!i){break L}I9(e,i,v[d+7196>>2]<<2);if(v[d+7196>>2]<0){break L}i=v[d+7192>>2];if(!i){break L}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,i)}i=v[d+7196>>2];J9((i<<2)+e|0,0,b-i<<2);v[d+7196>>2]=b;v[d+7192>>2]=e}b=(g>>>3&536870908)+e|0;v[b>>2]=v[b>>2]|1<>2],ca,d,s+24|0,s+28|0,s+20|0)}v[d+7216>>2]=v[d+7216>>2]+oa;v[d+7220>>2]=v[d+7220>>2]+pa;v[d+7224>>2]=v[d+7224>>2]+v[s+24>>2];v[d+7228>>2]=v[d+7228>>2]+v[s+28>>2];v[d+7164>>2]=v[s+20>>2];if(w[s+12|0]){v9(v[s+8>>2])}xa=s+32|0}a=v[v[a+48>>2]+304>>2];v[d>>2]=v[a>>2];v[a>>2]=d}function I0(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=0,H=0,I=C(0),J=0,L=C(0),M=0,N=0,O=0,P=C(0),Q=0,R=C(0),S=C(0),T=0,U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=0,oa=0,pa=C(0),qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=0,Ua=0,Va=0,Wa=0,Xa=C(0),Ya=C(0),Za=C(0),_a=0;l=xa-784|0;xa=l;k=0;a:{if(z[c+4>>2]!=C(1)){break a}k=0;if(z[c+8>>2]!=C(1)){break a}k=z[c+12>>2]==C(1)}_=z[a+4>>2]!=C(1)|z[a+8>>2]!=C(1)?_:z[a+12>>2]==C(1);G=c+4|0;j=v[a+36>>2];H=v[c+32>>2];v[l+768>>2]=0;v[l+772>>2]=1065353216;v[l+760>>2]=0;v[l+764>>2]=0;v[l+752>>2]=0;v[l+756>>2]=1065353216;v[l+744>>2]=0;v[l+748>>2]=0;v[l+736>>2]=1065353216;v[l+740>>2]=1065353216;v[l+720>>2]=1065353216;v[l+724>>2]=0;t[l+776|0]=0;v[l+728>>2]=0;v[l+732>>2]=0;v[l+712>>2]=0;v[l+716>>2]=0;v[l+704>>2]=1065353216;v[l+708>>2]=0;if(!k){JX(l+704|0,G,c+16|0)}v[l+688>>2]=0;v[l+692>>2]=1065353216;v[l+680>>2]=0;v[l+684>>2]=0;v[l+672>>2]=0;v[l+676>>2]=1065353216;v[l+664>>2]=0;v[l+668>>2]=0;v[l+656>>2]=1065353216;v[l+660>>2]=1065353216;v[l+640>>2]=1065353216;v[l+644>>2]=0;t[l+696|0]=0;v[l+648>>2]=0;v[l+652>>2]=0;v[l+632>>2]=0;v[l+636>>2]=0;v[l+624>>2]=1065353216;v[l+628>>2]=0;if(!_){JX(l+624|0,a+4|0,a+16|0)}m=z[H+16>>2];p=z[l+712>>2];q=z[H+20>>2];s=z[l+724>>2];n=z[H+24>>2];y=z[l+736>>2];A=C(C(C(m*p)+C(q*s))+C(n*y));R=p;p=z[H+28>>2];X=s;s=z[H+32>>2];Y=y;y=z[H+36>>2];E=C(C(C(D(C(R*p)))+C(D(C(X*s))))+C(D(C(Y*y))));z[l+620>>2]=A+E;o=z[l+708>>2];r=z[l+720>>2];F=z[l+732>>2];I=C(C(C(m*o)+C(q*r))+C(n*F));o=C(C(C(D(C(o*p)))+C(D(C(r*s))))+C(D(C(F*y))));z[l+616>>2]=I+o;R=m;m=z[l+704>>2];X=q;q=z[l+716>>2];Y=n;n=z[l+728>>2];r=C(C(C(R*m)+C(X*q))+C(Y*n));m=C(C(C(D(C(m*p)))+C(D(C(q*s))))+C(D(C(n*y))));z[l+612>>2]=r+m;z[l+608>>2]=A-E;z[l+604>>2]=I-o;z[l+600>>2]=r-m;q=z[d+4>>2];p=C(q+q);m=z[d+8>>2];A=C(p*m);s=z[d>>2];n=C(s+s);y=z[d+12>>2];E=C(n*y);z[l+60>>2]=A-E;z[l+52>>2]=A+E;s=C(C(1)-C(s*n));A=C(q*p);z[l- -64>>2]=s-A;R=s;s=C(m+m);E=C(m*s);z[l+48>>2]=R-E;m=C(n*m);p=C(p*y);z[l+56>>2]=m+p;q=C(n*q);n=C(s*y);z[l+44>>2]=q-n;z[l+40>>2]=m-p;z[l+36>>2]=q+n;z[l+32>>2]=C(C(1)-A)-E;z[l+68>>2]=z[d+16>>2];z[l+72>>2]=z[d+20>>2];z[l+76>>2]=z[d+24>>2];q=z[b+4>>2];p=C(q+q);m=z[b+8>>2];A=C(p*m);s=z[b>>2];n=C(s+s);y=z[b+12>>2];E=C(n*y);z[l+516>>2]=A-E;z[l+508>>2]=A+E;s=C(C(1)-C(s*n));A=C(q*p);z[l+520>>2]=s-A;R=s;s=C(m+m);E=C(m*s);z[l+504>>2]=R-E;m=C(n*m);p=C(p*y);z[l+512>>2]=m+p;q=C(n*q);n=C(s*y);z[l+500>>2]=q-n;z[l+496>>2]=m-p;z[l+492>>2]=q+n;z[l+488>>2]=C(C(1)-A)-E;z[l+524>>2]=z[b+16>>2];z[l+528>>2]=z[b+20>>2];z[l+532>>2]=z[b+24>>2];q_(l+536|0,l+600|0,C(0),l+32|0,l+488|0,l+624|0,_);z[l+588>>2]=z[l+588>>2]+i;z[l+592>>2]=z[l+592>>2]+i;z[l+584>>2]=z[l+584>>2]+i;q=z[b+8>>2];o=z[e+8>>2];n=C(o+o);p=z[b>>2];r=z[e>>2];s=C(r+r);F=z[e+4>>2];y=C(F+F);A=z[b+4>>2];E=C(C(q*n)+C(C(p*s)+C(y*A)));m=z[b+12>>2];I=C(C(m*m)+C(-.5));L=C(C(C(p*E)+C(C(s*I)-C(m*C(C(A*n)-C(y*q)))))*f);P=C(C(C(A*E)+C(C(y*I)-C(m*C(C(q*s)-C(n*p)))))*f);n=C(C(C(q*E)+C(C(n*I)-C(m*C(C(p*y)-C(s*A)))))*f);m=C(C(C(z[l+668>>2]*L)+C(P*z[l+680>>2]))+C(n*z[l+692>>2]));z[l+496>>2]=m;q=C(C(C(z[l+664>>2]*L)+C(P*z[l+676>>2]))+C(n*z[l+688>>2]));z[l+492>>2]=q;n=C(C(C(z[l+660>>2]*L)+C(P*z[l+672>>2]))+C(n*z[l+684>>2]));z[l+488>>2]=n;I=C(K(C(C(m*m)+C(C(n*n)+C(q*q)))));if(I>C(0)){s=m;m=C(C(1)/I);z[l+496>>2]=s*m;z[l+492>>2]=q*m;z[l+488>>2]=n*m}N=w[a+32|0];M=x[h>>1];u[l+8>>1]=M;z[l+24>>2]=-o;z[l+20>>2]=-F;z[l+16>>2]=-r;J=xa-32|0;xa=J;Q=w[l+696|0];k=l+32|0;v[k+4>>2]=2;U=x[l+8>>1];z[k+16>>2]=_?C(1):C(I/f);t[k+12|0]=Q;u[k+10>>1]=0;u[k+8>>1]=U;v[k+64>>2]=0;v[k+68>>2]=0;v[k>>2]=143828;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;t[k+96|0]=0;v[k+272>>2]=0;v[k+276>>2]=0;v[k+280>>2]=0;v[k+284>>2]=0;v[k+228>>2]=0;v[k+232>>2]=0;v[k+236>>2]=0;v[k+240>>2]=0;v[k+248>>2]=0;v[k+252>>2]=0;v[k+256>>2]=0;v[k+260>>2]=0;v[k+224>>2]=1065353216;v[k+244>>2]=1065353216;v[k+264>>2]=1065353216;v[k+268>>2]=0;v[k+312>>2]=0;v[k+316>>2]=0;v[k+304>>2]=0;v[k+308>>2]=0;v[k+320>>2]=l+624;v[k+288>>2]=0;v[k+292>>2]=0;v[k+296>>2]=0;v[k+300>>2]=1065353216;v[k+324>>2]=0;v[k+328>>2]=0;u[k+336>>1]=0;v[k+340>>2]=0;v[k+344>>2]=0;v[k+348>>2]=0;v[k+352>>2]=0;v[k+356>>2]=0;v[k+360>>2]=0;z[k+416>>2]=z[l+16>>2];z[k+420>>2]=z[l+20>>2];m=z[l+24>>2];_=M&128;N=N&2;Ia=(_|N)!=0;t[k+445|0]=Ia;M=(M&64)>>>6|0;t[k+444|0]=M;z[k+440>>2]=i;z[k+424>>2]=m;z[k+364>>2]=f;v[k+332>>2]=-1;q=z[b+8>>2];m=z[l+24>>2];n=C(m+m);p=z[b>>2];m=z[l+16>>2];s=C(m+m);m=z[l+20>>2];y=C(m+m);A=z[b+4>>2];E=C(C(q*n)+C(C(p*s)+C(y*A)));m=z[b+12>>2];o=C(C(m*m)+C(-.5));z[k+436>>2]=C(q*E)+C(C(n*o)-C(m*C(C(p*y)-C(s*A))));z[k+432>>2]=C(A*E)+C(C(y*o)-C(m*C(C(q*s)-C(n*p))));z[k+428>>2]=C(p*E)+C(C(s*o)-C(m*C(C(A*n)-C(y*q))));F=z[b+20>>2];P=z[b+24>>2];s=z[d+20>>2];L=z[d+24>>2];ia=z[l+20>>2];$=z[l+16>>2];ga=z[l+24>>2];y=z[b+8>>2];A=z[b>>2];E=z[b+4>>2];o=z[b+12>>2];S=z[b+16>>2];p=z[d>>2];m=z[d+4>>2];q=z[d+8>>2];n=z[d+12>>2];r=z[d+16>>2];v[k+412>>2]=0;v[k+316>>2]=0;z[k+312>>2]=L;z[k+308>>2]=s;z[k+304>>2]=r;z[k+300>>2]=n;z[k+296>>2]=q;z[k+292>>2]=m;z[k+288>>2]=p;v[k+284>>2]=0;v[k+268>>2]=0;v[k+252>>2]=0;v[k+236>>2]=0;V=C(-p);r=C(S-r);F=C(F-s);L=C(P-L);P=C(C(C(V*r)-C(F*m))-C(q*L));s=C(C(n*n)+C(-.5));S=C(C(C(n*C(C(m*r)-C(p*F)))+C(s*L))-C(q*P));z[k+280>>2]=S+S;S=C(C(C(s*F)+C(n*C(C(p*L)-C(q*r))))-C(m*P));z[k+276>>2]=S+S;r=C(C(C(s*r)+C(n*C(C(q*F)-C(m*L))))-C(p*P));z[k+272>>2]=r+r;F=C(C(C(E*q)-C(m*y))+C(C(A*n)-C(o*p)));r=C(F+F);L=C(C(C(y*p)-C(q*A))+C(C(E*n)-C(o*m)));P=C(L+L);S=C(C(1)-C(F*r));aa=C(L*P);z[k+264>>2]=S-aa;F=C(C(C(A*m)-C(p*E))+C(C(y*n)-C(o*q)));ba=C(F*P);y=C(C(o*n)-C(C(C(V*A)-C(E*m))-C(q*y)));A=C(y*r);z[k+260>>2]=ba-A;E=C(F*r);o=C(y*P);z[k+256>>2]=E+o;z[k+248>>2]=ba+A;A=C(F+F);F=C(F*A);z[k+244>>2]=S-F;r=C(L*r);y=C(y*A);z[k+240>>2]=r-y;z[k+232>>2]=E-o;z[k+228>>2]=r+y;z[k+224>>2]=C(C(1)-aa)-F;y=C(C(-ga)*f);A=C(C(-$)*f);E=C(C(-ia)*f);o=C(C(q*y)+C(C(p*A)+C(m*E)));r=C(C(q*o)+C(C(y*s)-C(n*C(C(p*E)-C(A*m)))));z[k+408>>2]=r+r;r=C(C(m*o)+C(C(E*s)-C(n*C(C(q*A)-C(y*p)))));z[k+404>>2]=r+r;m=C(C(p*o)+C(C(A*s)-C(n*C(C(m*y)-C(E*q)))));z[k+400>>2]=m+m;z[k+384>>2]=f;f=z[G>>2];m=z[G+4>>2];q=z[G+8>>2];v[J+28>>2]=0;z[J+24>>2]=q;z[J+20>>2]=m;z[J+16>>2]=f;Q=v[G+12>>2];U=v[G+16>>2];T=v[G+24>>2];v[J+8>>2]=v[G+20>>2];v[J+12>>2]=T;v[J>>2]=Q;v[J+4>>2]=U;G=v[H+56>>2];Q=w[H+55|0];n=C(f*z[H+68>>2]);p=C(m*z[H+72>>2]);n=n<=p?n:p;p=C(q*z[H+76>>2]);n=n<=p?n:p;z[k+88>>2]=n*C(.02500000037252903);z[k+84>>2]=n*C(.05000000074505806);z[k+80>>2]=n*C(.10000000149011612);GV(J+16|0,J,k+112|0,k+160|0,k- -64|0,f==C(1)&m==C(1)&q==C(1));v[k+216>>2]=G+B(Q,20);G=w[H+54|0];v[k+64>>2]=0;v[k+68>>2]=0;t[k+220|0]=G;v[k+72>>2]=0;v[k+76>>2]=0;G=v[H+60>>2];v[k+208>>2]=H+16;v[k+212>>2]=G;xa=J+32|0;Ba[v[(x[j+4>>1]<<2)+143892>>2]](j,l+536|0,l+488|0,I,k,M);h=(x[h>>1]&512)>>>9|0;H=_>>>7|0;J=N>>>1|0;Ja=w[k+10|0];b:{if(!Ja){break b}if(w[k+11|0]){c:{d:{e:{if(!h){u[g+12>>1]=1026;break e}_=b;p=C(0);m=C(0);q=C(0);n=C(0);s=C(0);y=C(0);ga=C(0);S=C(0);V=C(0);j=xa-6096|0;xa=j;oa=v[a+36>>2];Ka=v[oa+56>>2];M=v[c+32>>2];v[j+1980>>2]=0;A=C(1);f=z[c+8>>2];o=z[c+4>>2];H=0;f:{if(o!=C(1)){break f}H=0;if(f!=C(1)){break f}H=z[c+12>>2]==C(1)}b=j+1968|0;v[b>>2]=0;v[b+4>>2]=1065353216;b=j+1960|0;v[b>>2]=0;v[b+4>>2]=0;b=j+1952|0;v[b>>2]=0;v[b+4>>2]=1065353216;b=j+1944|0;v[b>>2]=0;v[b+4>>2]=0;b=j+1936|0;v[b>>2]=1065353216;v[b+4>>2]=1065353216;b=j+1920|0;v[b>>2]=1065353216;v[b+4>>2]=0;t[j+1976|0]=0;v[j+1928>>2]=0;v[j+1932>>2]=0;v[j+1912>>2]=0;v[j+1916>>2]=0;v[j+1904>>2]=1065353216;v[j+1908>>2]=0;E=C(1);$=C(1);if(!H){JX(j+1904|0,c+4|0,c+16|0);o=z[c+4>>2];A=z[j+1936>>2];p=z[j+1932>>2];m=z[j+1928>>2];q=z[j+1924>>2];E=z[j+1920>>2];n=z[j+1916>>2];s=z[j+1912>>2];y=z[j+1908>>2];$=z[j+1904>>2];f=z[c+8>>2]}r=z[M+48>>2];F=z[M+40>>2];I=z[M+44>>2];L=z[d+20>>2];P=z[d+24>>2];b=v[d>>2];h=v[d+4>>2];J=v[d+12>>2];G=v[d+8>>2];ia=z[d+16>>2];v[j+1900>>2]=0;z[j+1896>>2]=P;z[j+1892>>2]=L;z[j+1888>>2]=ia;v[j+1880>>2]=G;v[j+1884>>2]=J;v[j+1872>>2]=b;v[j+1876>>2]=h;aa=z[c+12>>2];v[j+1868>>2]=0;z[j+1864>>2]=aa;z[j+1856>>2]=o;z[j+1860>>2]=f;b=v[c+16>>2];h=v[c+20>>2];J=v[c+28>>2];v[j+1848>>2]=v[c+24>>2];v[j+1852>>2]=J;v[j+1840>>2]=b;v[j+1844>>2]=h;t[j+1712|0]=0;b=j+1704|0;v[b>>2]=0;v[b+4>>2]=0;h=j+1696|0;v[h>>2]=0;v[h+4>>2]=0;v[j+1688>>2]=0;v[j+1692>>2]=0;v[j+1680>>2]=0;v[j+1684>>2]=0;v[j+1824>>2]=M+16;v[j+1832>>2]=v[M+56>>2]+B(w[M+55|0],20);t[j+1836|0]=w[M+54|0];o=C(o*z[M+68>>2]);f=C(z[M+72>>2]*f);f=f>=o?o:f;o=C(aa*z[M+76>>2]);f=f<=o?f:o;z[b>>2]=f*C(.02500000037252903);z[h>>2]=f*C(.10000000149011612);z[j+1700>>2]=f*C(.05000000074505806);La=j+1728|0;Ma=j+1776|0;b=j+1680|0;GV(j+1856|0,j+1840|0,La,Ma,b,H);v[j+1828>>2]=v[M+60>>2];f=C(z[M+68>>2]*z[j+1856>>2]);o=C(z[M+72>>2]*z[j+1860>>2]);f=f<=o?f:o;o=C(z[M+76>>2]*z[j+1864>>2]);aa=C(C((f<=o?f:o)*C(.25))+i);z[j+1600>>2]=aa;v[j+1592>>2]=0;v[j+1584>>2]=0;v[j+1588>>2]=0;Aw(j+1584|0,128);Na=a+4|0;yX(j+1536|0,_,Na);l2(b,H,j+1464|0);z[j+1416>>2]=z[d>>2];z[j+1420>>2]=z[d+4>>2];z[j+1424>>2]=z[d+8>>2];z[j+1428>>2]=z[d+12>>2];Wa=H?141020:141068;Xa=C(C(C(F*s)+C(I*q))+C(r*A));Ya=C(C(C(F*y)+C(I*E))+C(r*p));Za=C(C(C(F*$)+C(I*n))+C(r*m));b=268435455;A=C(0);p=C(0);m=C(0);q=C(0);E=C(0);n=C(0);$=C(0);s=C(0);y=C(0);g:{h:{while(1){i:{z[j+1440>>2]=P;z[j+1436>>2]=L;z[j+1432>>2]=ia;v[j+1588>>2]=0;v[j+1900>>2]=0;z[j+1896>>2]=P;z[j+1892>>2]=L;z[j+1888>>2]=ia;t[j+1660|0]=H;v[j+1656>>2]=Ma;v[j+1652>>2]=La;v[j+1616>>2]=Wa;v[j+1644>>2]=0;z[j+1640>>2]=Xa;z[j+1636>>2]=Ya;z[j+1632>>2]=Za;v[j+1648>>2]=j+1872;v[j+1664>>2]=j+1680;h=j+1352|0;t_(h,c,M,j+1416|0);z[j+1400>>2]=aa+z[j+1400>>2];z[j+1404>>2]=aa+z[j+1404>>2];z[j+1408>>2]=aa+z[j+1408>>2];d=v[a+36>>2];r_(j,h,_,Na);v[j+1280>>2]=141620;v[j+1288>>2]=j+1584;v[j+1284>>2]=2;Ba[v[(x[d+4>>1]<<2)+141640>>2]](d,j,j+1280|0,1,1);J=v[j+1588>>2];if(!J){G=0;if(va){break i}break g}F=z[j+1580>>2];I=z[j+1572>>2];ba=z[j+1576>>2];ka=z[j+1436>>2];la=z[j+1432>>2];ma=z[j+1440>>2];ca=z[j+1544>>2];da=z[j+1536>>2];wa=z[j+1540>>2];ya=z[j+1556>>2];za=z[j+1548>>2];Aa=z[j+1552>>2];R=z[j+1568>>2];X=z[j+1560>>2];Y=z[j+1564>>2];f=z[j+1428>>2];i=z[j+1416>>2];o=z[j+1424>>2];r=z[j+1420>>2];v[j+1340>>2]=0;v[j+1324>>2]=0;v[j+1308>>2]=0;v[j+1292>>2]=0;ea=C(C(-i)-i);fa=C(-o);Oa=C(ea*fa);ha=C(-r);W=C(ha-r);Pa=C(f*W);Z=C(Oa-Pa);pa=C(f*ea);Qa=C(W*fa);ja=C(pa+Qa);Ra=C(C(i*ea)+C(1));Sa=C(W*ha);W=C(Ra-Sa);z[j+1320>>2]=C(C(X*Z)+C(Y*ja))+C(R*W);z[j+1304>>2]=C(C(Z*za)+C(ja*Aa))+C(W*ya);z[j+1288>>2]=C(C(da*Z)+C(wa*ja))+C(W*ca);ma=C(ma*C(-2));la=C(la*C(-2));ka=C(ka*C(-2));Ca=C(C(o*ma)+C(C(i*la)+C(r*ka)));Da=C(C(f*f)+C(-.5));z[j+1336>>2]=C(C(o*Ca)+C(C(ma*Da)-C(f*C(C(i*ka)-C(la*r)))))+C(C(C(Z*I)+C(ja*ba))+C(W*F));ja=C(ea*ha);Z=C(fa-o);W=C(f*Z);ea=C(ja+W);ha=C(Z*fa);fa=C(Ra-ha);Z=C(Qa-pa);z[j+1316>>2]=C(C(X*ea)+C(Y*fa))+C(R*Z);pa=X;X=C(C(C(1)-Sa)-ha);ha=Y;Y=C(ja-W);W=R;R=C(Oa+Pa);z[j+1312>>2]=C(C(pa*X)+C(ha*Y))+C(W*R);z[j+1300>>2]=C(C(ea*za)+C(fa*Aa))+C(Z*ya);z[j+1296>>2]=C(C(X*za)+C(Y*Aa))+C(R*ya);z[j+1284>>2]=C(Z*ca)+C(C(da*ea)+C(wa*fa));z[j+1280>>2]=C(R*ca)+C(C(da*X)+C(wa*Y));z[j+1332>>2]=C(C(r*Ca)+C(C(ka*Da)-C(f*C(C(o*la)-C(ma*i)))))+C(C(C(ea*I)+C(fa*ba))+C(Z*F));z[j+1328>>2]=C(C(i*Ca)+C(C(la*Da)-C(f*C(C(r*ma)-C(ka*o)))))+C(C(C(X*I)+C(Y*ba))+C(R*F));d=J+31|0;if(d>>>0<=31){G=0;if(va){break i}break g}_a=d>>>5|0;i=C(34028234663852886e22);qa=0;d=J;Ea=0;while(1){Fa=qa<<5;h=J-Fa|0;Ga=h>>>0<32?h:32;j:{if(!Ga){v[j+6088>>2]=v[j+1456>>2];h=v[j+1452>>2];v[j+6080>>2]=v[j+1448>>2];v[j+6084>>2]=h;U=0;break j}ra=d>>>0<32?d:32;sa=w[oa+64|0]&2;f=C(C(z[a+4>>2]*z[a+8>>2])*z[a+12>>2]);G=v[oa+24>>2];na=v[oa+28>>2];N=0;ta=v[j+1584>>2];while(1){U=v[ta+(N+Fa<<2)>>2];h=j+B(N,40)|0;k:{if(sa){O=na+B(U,6)|0;T=x[O+4>>1];Q=x[O+2>>1];O=x[O>>1];break k}O=na+B(U,12)|0;T=v[O+8>>2];Q=v[O+4>>2];O=v[O>>2]}O=B(O,12)+G|0;z[h>>2]=z[O>>2];z[h+4>>2]=z[O+4>>2];z[h+8>>2]=z[O+8>>2];ua=f>2]=z[O>>2];z[h+16>>2]=z[O+4>>2];z[h+20>>2]=z[O+8>>2];Q=G+B(ua?Q:T,12)|0;z[h+24>>2]=z[Q>>2];z[h+28>>2]=z[Q+4>>2];z[h+32>>2]=z[Q+8>>2];t[h+36|0]=Ka?w[U+Ka|0]:56;N=N+1|0;if((ra|0)!=(N|0)){continue}break}v[j+6088>>2]=v[j+1456>>2];h=v[j+1452>>2];v[j+6080>>2]=v[j+1448>>2];v[j+6084>>2]=h;U=0;Q=0;if(!Ga){break j}while(1){v[j+1980>>2]=0;G=j+B(Q,40)|0;h=Q+Fa|0;F1(j+1464|0,j+1616|0,G,h,w[G+36|0],j+1600|0,Ia,j+1872|0,j+1280|0,j+1984|0,j+1980|0);T=v[j+1980>>2];l:{if(!T){break l}N=0;f=z[j+2028>>2];m:{if((T|0)==1){break m}N=T-1|0;na=N&3;U=0;G=1;n:{if(T-2>>>0<3){N=0;break n}ua=N&-4;N=0;T=0;while(1){o=z[(j+(G<<6)|0)+2028>>2];O=o>2];f=O?o:f;ra=r>2];f=ra?r:f;sa=o>2];f=sa?o:f;ta=r>2];T=o>2];n=z[b+32>>2];A=z[b+24>>2];p=z[b+20>>2];q=z[b+40>>2];E=z[b+36>>2];b=h;i=f}Q=Q+1|0;if((Ga|0)!=(Q|0)){continue}break}}v[j+1456>>2]=v[j+6088>>2];h=v[j+6084>>2];v[j+1448>>2]=v[j+6080>>2];v[j+1452>>2]=h;d=d-32|0;Ea=U|Ea;qa=qa+1|0;if((_a|0)!=(qa|0)){continue}break}if(!(Ea&1)){G=0;if(va){break i}break g}f=z[j+1880>>2];o=z[j+1872>>2];r=z[j+1876>>2];V=C(C(f*A)+C(C(o*m)+C(p*r)));F=z[j+1884>>2];I=C(C(F*F)+C(-.5));ga=C(C(f*V)+C(C(F*C(C(o*p)-C(m*r)))+C(A*I)));ga=C(z[j+1896>>2]+C(ga+ga));S=C(C(r*V)+C(C(F*C(C(f*m)-C(A*o)))+C(p*I)));S=C(z[j+1892>>2]+C(S+S));V=C(C(o*V)+C(C(F*C(C(r*A)-C(p*f)))+C(m*I)));V=C(z[j+1888>>2]+C(V+V));ba=C(C(f*q)+C(C(o*n)+C(E*r)));ca=C(C(f*ba)+C(C(F*C(C(o*E)-C(n*r)))+C(q*I)));ca=C(ca+ca);da=C(C(r*ba)+C(C(F*C(C(f*n)-C(q*o)))+C(E*I)));da=C(da+da);f=C(C(o*ba)+C(C(F*C(C(r*q)-C(E*f)))+C(n*I)));f=C(f+f);b=v[v[j+1584>>2]+(b<<2)>>2];if(!(i<=C(0))){if(Ha){break i}z[g+36>>2]=ca;z[g+32>>2]=da;z[g+28>>2]=f;z[g+24>>2]=ga;z[g+20>>2]=S;z[g+16>>2]=V;v[g+40>>2]=0;v[g+8>>2]=b;break h}o=C(i*ca);P=C(P-o);r=C(i*da);L=C(L-r);f=C(i*f);ia=C(ia-f);$=C($-o);s=C(s-r);y=C(y-f);va=1;Ha=Ha+1|0;if((Ha|0)!=2){continue}}break}z[g+24>>2]=ga;z[g+20>>2]=S;z[g+16>>2]=V;v[g+8>>2]=b;f=C(K(C(C($*$)+C(C(y*y)+C(s*s)))));z[g+40>>2]=-f;i=C(C(1)/f);a=f>C(0);z[g+36>>2]=a?C($*i):C(0);z[g+32>>2]=a?C(s*i):C(0);z[g+28>>2]=a?C(y*i):C(0)}G=1}a=v[j+1592>>2];o:{if((a|0)<0|!(a&2147483647)){break o}a=v[j+1584>>2];if(!a){break o}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=j+6096|0;u[g+12>>1]=1026;if(G){break d}}v[g+40>>2]=0;f=z[e>>2];i=z[e+4>>2];z[g+36>>2]=-z[e+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f;break c}if(z[g+40>>2]==C(0)){f=z[e>>2];i=z[e+4>>2];z[g+36>>2]=-z[e+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f}u[g+12>>1]=1027}v[g+8>>2]=v[k+332>>2];break b}a=v[k+328>>2];v[g>>2]=v[k+324>>2];v[g+4>>2]=a;v[g+8>>2]=v[k+332>>2];u[g+12>>1]=x[k+336>>1];z[g+16>>2]=z[k+340>>2];z[g+20>>2]=z[k+344>>2];z[g+24>>2]=z[k+348>>2];f=z[k+352>>2];i=z[k+356>>2];p=z[k+360>>2];z[g+40>>2]=z[k+364>>2];a=v[k+368>>2];m=C(-p);z[g+36>>2]=m;q=C(-i);z[g+32>>2]=q;n=C(-f);z[g+28>>2]=n;v[g+44>>2]=a;f=C(K(C(C(p*p)+C(C(f*f)+C(i*i)))));if(f>C(0)){f=C(C(1)/f);m=C(f*m);z[g+36>>2]=m;q=C(f*q);z[g+32>>2]=q;n=C(f*n);z[g+28>>2]=n}if(J|!H){break b}i=z[b+8>>2];f=z[k+20>>2];E=C(z[k+32>>2]-f);p=z[k+24>>2];y=C(z[k+48>>2]-p);f=C(z[k+44>>2]-f);A=C(z[k+36>>2]-p);p=C(C(E*y)-C(f*A));p=C(p+p);s=z[b>>2];R=A;A=z[k+28>>2];o=C(z[k+52>>2]-A);r=C(z[k+40>>2]-A);y=C(C(R*o)-C(y*r));y=C(y+y);A=z[b+4>>2];f=C(C(r*f)-C(o*E));E=C(f+f);o=C(C(i*p)+C(C(s*y)+C(A*E)));f=z[b+12>>2];r=C(C(f*f)+C(-.5));if(!(C(C(C(C(i*o)+C(C(p*r)+C(f*C(C(s*E)-C(y*A)))))*z[e+8>>2])+C(C(C(C(s*o)+C(C(y*r)+C(f*C(C(A*p)-C(E*i)))))*z[e>>2])+C(z[e+4>>2]*C(C(A*o)+C(C(E*r)+C(f*C(C(i*y)-C(p*s))))))))>C(0))){break b}z[g+36>>2]=-m;z[g+32>>2]=-q;z[g+28>>2]=-n}xa=l+784|0;return(Ja|0)!=0|0}function T$(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=C(0),aa=0,ba=0,ca=C(0),da=C(0),ea=0,fa=C(0),ga=C(0),ha=C(0),ia=0,ja=C(0),ka=C(0),la=C(0),ma=0,na=C(0),oa=C(0),pa=0,qa=C(0),ra=C(0),sa=0,ta=0,ua=0,va=0,wa=0,ya=0,za=0,Aa=0,Ca=0,Da=0,Ea=0,Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0;l=xa-368|0;xa=l;a:{b:{if(!(z[b+4>>2]==C(1)&z[b+8>>2]==C(1))){ma=(w[b+32|0]&2)>>>1|0;P=(x[h>>1]&128)>>>7|0;break b}ba=1;ma=(w[b+32|0]&2)>>>1|0;P=(x[h>>1]&128)>>>7|0;if(z[b+12>>2]!=C(1)){break b}q=z[c>>2];m=C(C(-q)-q);A=z[c+8>>2];k=C(-A);r=C(m*k);G=z[c+4>>2];n=C(-G);o=C(n-G);M=z[c+12>>2];F=C(o*M);U=C(r-F);Q=z[c+16>>2];p=C(z[d+36>>2]-Q);s=C(o*k);Z=C(m*M);J=C(s+Z);H=z[c+20>>2];y=C(z[d+40>>2]-H);_=C(C(q*m)+C(1));R=C(o*n);L=C(_-R);I=z[c+24>>2];o=C(z[d+44>>2]-I);z[l+344>>2]=C(C(U*p)+C(J*y))+C(L*o);m=C(m*n);n=C(k-A);V=C(M*n);$=C(m+V);k=C(n*k);X=C(_-k);S=C(s-Z);z[l+340>>2]=C(C($*p)+C(X*y))+C(S*o);T=C(C(C(1)-R)-k);V=C(m-V);N=C(r+F);z[l+336>>2]=C(C(T*p)+C(V*y))+C(N*o);s=z[d>>2];k=z[d+4>>2];n=z[d+8>>2];R=z[d+48>>2];o=z[d+12>>2];p=z[d+16>>2];y=z[d+20>>2];O=z[d+52>>2];m=z[d+24>>2];r=z[d+28>>2];F=z[d+32>>2];W=z[d+56>>2];Z=C(C(C(C(D(C(C(C(U*s)+C(J*k))+C(L*n))))*R)+C(C(D(C(C(C(U*o)+C(J*p))+C(L*y))))*O))+C(C(D(C(C(C(U*m)+C(J*r))+C(L*F))))*W));_=C(C(C(C(D(C(C(C($*s)+C(X*k))+C(S*n))))*R)+C(C(D(C(C(C($*o)+C(X*p))+C(S*y))))*O))+C(C(D(C(C(C($*m)+C(X*r))+C(S*F))))*W));R=C(C(C(C(D(C(C(C(T*s)+C(V*k))+C(N*n))))*R)+C(C(D(C(C(C(T*o)+C(V*p))+C(N*y))))*O))+C(C(D(C(C(C(T*m)+C(V*r))+C(N*F))))*W));O=z[e>>2];W=z[e+4>>2];la=L;L=z[e+8>>2];U=C(C(C(C(U*O)+C(J*W))+C(la*L))*f);J=C(C(C(C($*O)+C(X*W))+C(S*L))*f);L=C(C(C(C(T*O)+C(V*W))+C(N*L))*f);O=C(G+G);S=C(A*O);N=C(q+q);T=C(M*N);$=C(S-T);V=C(N*A);W=C(O*M);X=C(V+W);S=C(S+T);ca=C(N*G);fa=C(A+A);ga=C(M*fa);M=C(ca-ga);T=C(V-W);V=C(ca+ga);q=C(C(1)-C(q*N));G=C(G*O);N=C(q-G);A=C(A*fa);O=C(q-A);W=C(C(C(1)-G)-A);q=z[d+44>>2];G=z[d+40>>2];A=z[d+36>>2];break a}yX(l+16|0,c,b+4|0);q=C(1);A=C(1);m=C(1);o=z[b+20>>2];p=C(o+o);k=z[b+24>>2];I=C(k+k);s=z[c>>2];y=C(s+s);n=z[c+8>>2];ha=C(y*n);r=z[c+4>>2];G=C(r+r);M=z[c+12>>2];ja=C(G*M);F=C(ha-ja);Fa=C(C(1)-C(s*y));na=C(r*G);$=C(Fa-na);O=C(o*p);da=C(k*I);s=C(C(C(1)-O)-da);X=z[b+4>>2];S=z[b+16>>2];Q=C(S+S);W=C(Q*k);T=z[b+28>>2];ca=C(p*T);H=C(W+ca);V=C(X*H);oa=C(Q*o);I=C(I*T);o=C(oa+I);qa=C(p*k);ra=C(Q*T);k=C(qa-ra);T=z[b+8>>2];N=C(k*T);p=C(W-ca);Ga=C(C(1)-C(S*Q));Q=C(Ga-O);S=z[b+12>>2];O=C(Q*S);W=C(C(C(s*V)+C(o*N))+C(p*O));ca=C(X*s);fa=C(o*T);ga=C(p*S);ka=C(C(C(s*ca)+C(o*fa))+C(p*ga));Ha=C(G*n);Ia=C(y*M);G=C(Ha+Ia);la=s;s=C(oa-I);X=C(X*s);I=C(Ga-da);T=C(I*T);da=p;p=C(qa+ra);S=C(p*S);da=C(C(C(la*X)+C(o*T))+C(da*S));o=C(C($*W)+C(C(F*ka)+C(G*da)));ha=C(ha+ja);ja=C(C(C(s*V)+C(I*N))+C(p*O));la=n;n=C(n+n);qa=C(la*n);na=C(C(C(1)-na)-qa);oa=C(C(C(s*ca)+C(I*fa))+C(p*ga));ra=C(y*r);n=C(n*M);y=C(ra-n);r=C(C(C(s*X)+C(I*T))+C(p*S));s=C(C(ha*ja)+C(C(na*oa)+C(y*r)));M=C(Ha-Ia);I=C(C(C(H*V)+C(k*N))+C(Q*O));V=C(ra+n);N=C(C(C(H*ca)+C(k*fa))+C(Q*ga));O=C(Fa-qa);k=C(C(C(H*X)+C(k*T))+C(Q*S));Q=C(C(M*I)+C(C(V*N)+C(O*k)));n=C(C(ha*I)+C(C(na*N)+C(y*k)));H=C(C(M*ja)+C(C(V*oa)+C(O*r)));X=C(C(s*Q)-C(n*H));p=C(C(ha*W)+C(C(na*ka)+C(y*da)));I=C(C($*I)+C(C(F*N)+C(G*k)));y=C(C($*ja)+C(C(F*oa)+C(G*r)));F=C(C(H*I)-C(Q*y));r=C(C(M*W)+C(C(V*ka)+C(O*da)));G=C(I*s);k=C(C(o*X)+C(C(p*F)+C(r*C(C(y*n)-G))));if(k!=C(0)){k=C(C(1)/k);m=C(C(C(p*H)+C(r*C(-s)))*k);J=C(C(C(r*y)-C(H*o))*k);Z=C(k*C(-C(C(p*y)-C(s*o))));L=C(k*C(-C(G+C(n*C(-y)))));U=C(k*C(-C(C(r*I)-C(o*Q))));_=C(X*k);R=C(k*C(-C(C(p*Q)-C(n*r))));q=C(F*k);A=C(C(C(p*I)-C(n*o))*k)}I=z[l+60>>2];H=z[l+56>>2];N=z[l+48>>2];$=z[l+44>>2];S=z[l+36>>2];O=z[l+32>>2];Q=z[l+52>>2];X=z[l+40>>2];M=z[l+28>>2];T=z[l+24>>2];V=z[l+20>>2];W=z[l+16>>2];k=z[c+24>>2];o=z[c+20>>2];n=z[c+16>>2];z[l+312>>2]=m;z[l+308>>2]=R;z[l+300>>2]=Z;z[l+296>>2]=A;z[l+288>>2]=J;o=C(-o);z[l+324>>2]=C(C(Z*o)-C(J*n))-C(m*k);z[l+284>>2]=U;z[l+320>>2]=C(C(A*o)-C(U*n))-C(R*k);z[l+280>>2]=q;z[l+292>>2]=L;z[l+304>>2]=_;z[l+316>>2]=C(C(L*o)-C(q*n))-C(_*k);s_(l+16|0,l+280|0,d);o=z[l+44>>2];p=z[l+32>>2];m=z[l+72>>2];y=z[l+48>>2];k=z[l+68>>2];r=z[l+36>>2];F=z[l+40>>2];U=z[l+16>>2];s=z[l+28>>2];_=z[l+20>>2];n=z[l+64>>2];Z=z[l+24>>2];A=z[d+36>>2];J=z[l+288>>2];G=z[d+40>>2];L=z[l+300>>2];q=z[d+44>>2];ca=z[l+312>>2];z[l+344>>2]=C(C(C(A*J)+C(G*L))+C(q*ca))+z[l+324>>2];fa=z[l+284>>2];ga=z[l+296>>2];ka=z[l+308>>2];z[l+340>>2]=C(C(C(A*fa)+C(G*ga))+C(q*ka))+z[l+320>>2];da=z[l+280>>2];ha=z[l+292>>2];ja=z[l+304>>2];z[l+336>>2]=C(C(C(A*da)+C(G*ha))+C(q*ja))+z[l+316>>2];Z=C(C(m*C(D(y)))+C(C(n*C(D(Z)))+C(k*C(D(r)))));_=C(C(m*C(D(o)))+C(C(n*C(D(_)))+C(k*C(D(p)))));R=C(C(m*C(D(F)))+C(C(n*C(D(U)))+C(k*C(D(s)))));m=C(z[e>>2]*f);k=C(z[e+4>>2]*f);n=C(z[e+8>>2]*f);U=C(C(C(J*m)+C(L*k))+C(ca*n));J=C(C(C(fa*m)+C(ga*k))+C(ka*n));L=C(C(C(da*m)+C(ha*k))+C(ja*n));F=z[d+32>>2];r=z[d+28>>2];y=z[d+20>>2];p=z[d+16>>2];m=z[d+24>>2];o=z[d+12>>2];n=z[d+8>>2];k=z[d+4>>2];s=z[d>>2];ba=0}z[l+360>>2]=C(Z+i)*C(1.0099999904632568);z[l+356>>2]=C(_+i)*C(1.0099999904632568);z[l+352>>2]=C(R+i)*C(1.0099999904632568);z[l+312>>2]=C(C(X*m)+C($*r))+C(N*F);z[l+308>>2]=C(C(X*o)+C($*p))+C(N*y);z[l+300>>2]=C(C(M*m)+C(O*r))+C(S*F);z[l+296>>2]=C(C(M*o)+C(O*p))+C(S*y);A=C(-A);z[l+324>>2]=C(C(C(Q*m)+C(H*r))+C(I*F))+C(C(C(m*A)-C(r*G))-C(F*q));z[l+320>>2]=C(C(C(Q*o)+C(H*p))+C(I*y))+C(C(C(o*A)-C(p*G))-C(y*q));z[l+304>>2]=C(C(X*s)+C($*k))+C(N*n);z[l+292>>2]=C(C(M*s)+C(O*k))+C(S*n);z[l+288>>2]=C(C(W*m)+C(V*r))+C(T*F);z[l+284>>2]=C(C(W*o)+C(V*p))+C(T*y);z[l+280>>2]=C(C(W*s)+C(V*k))+C(T*n);z[l+316>>2]=C(C(C(Q*s)+C(H*k))+C(I*n))+C(C(C(s*A)-C(k*G))-C(n*q));E=l+16|0;ia=o$(E,d);z[l+248>>2]=z[ia>>2];z[l+252>>2]=z[ia+4>>2];z[l+256>>2]=z[ia+8>>2];z[l+260>>2]=z[ia+12>>2];z[l+264>>2]=z[d+36>>2];z[l+268>>2]=z[d+40>>2];z[l+272>>2]=z[d+44>>2];A=z[e>>2];H=k;k=z[e+4>>2];la=n;n=z[e+8>>2];q=C(C(C(s*A)+C(H*k))+C(la*n));z[l+232>>2]=q;o=C(C(C(o*A)+C(p*k))+C(y*n));z[l+236>>2]=o;m=C(C(C(m*A)+C(r*k))+C(F*n));z[l+240>>2]=m;z[l+224>>2]=m*f;z[l+220>>2]=o*f;z[l+216>>2]=q*f;ia=C(C(z[b+4>>2]*z[b+8>>2])*z[b+12>>2])>2]=2;h=x[h>>1];m=C(K(C(C(U*U)+C(C(L*L)+C(J*J)))));m=m>C(9999999747378752e-21)?m:C(9999999747378752e-21);z[E+16>>2]=ba?C(1):C(m/f);t[E+12|0]=ia;u[E+10>>1]=0;u[E+8>>1]=h;ia=P|ma;t[E+176|0]=ia;z[E+60>>2]=i;v[E+56>>2]=e;h=l+232|0;v[E+52>>2]=h;v[E+48>>2]=d;z[E+24>>2]=f;v[E+20>>2]=l+280;v[E>>2]=143808;d=v[l+216>>2];e=v[l+220>>2];i=z[l+224>>2];v[E+156>>2]=0;z[E+152>>2]=i;v[E+144>>2]=d;v[E+148>>2]=e;z[E+32>>2]=f;z[E+28>>2]=f;f=z[h>>2];i=z[h+8>>2];k=z[h+4>>2];z[E+168>>2]=k!=C(0)?C(C(1)/k):C(0);z[E+172>>2]=i!=C(0)?C(C(1)/i):C(0);z[E+164>>2]=f!=C(0)?C(C(1)/f):C(0);f=C(C(1)/m);z[l+8>>2]=U*f;z[l+4>>2]=J*f;z[l>>2]=L*f;L$(l+336|0,l,m,ia,a,E,l+352|0);e=l+248|0;pa=xa-16|0;xa=pa;d=E;Ja=w[d+10|0];c:{if(!Ja){break c}k=z[d+136>>2];n=z[d+132>>2];A=z[d+120>>2];U=z[d+116>>2];o=z[d+128>>2];q=z[d+112>>2];v[g+8>>2]=v[d+160>>2];if(w[d+11|0]){d:{e:{if(!(w[d+9|0]&2)){b=v[d+56>>2];u[g+12>>1]=1026;break e}a=v[d+48>>2];A=z[d+60>>2];Qa=w[d+176|0];k=C(0);n=C(0);o=C(0);p=C(0);y=C(0);r=C(0);F=C(0);Z=C(0);_=C(0);R=C(0);j=xa-6128|0;xa=j;ta=v[b+36>>2];Ka=v[ta+56>>2];v[j+2012>>2]=0;v[j+2008>>2]=0;v[j+2e3>>2]=0;v[j+2004>>2]=0;Aw(j+2e3|0,128);z[j+1936>>2]=z[a>>2];z[j+1940>>2]=z[a+4>>2];z[j+1944>>2]=z[a+8>>2];z[j+1948>>2]=z[a+12>>2];z[j+1952>>2]=z[a+16>>2];z[j+1956>>2]=z[a+20>>2];z[j+1960>>2]=z[a+24>>2];z[j+1964>>2]=z[a+28>>2];z[j+1968>>2]=z[a+32>>2];Q=z[a+36>>2];z[j+1972>>2]=Q;H=z[a+40>>2];z[j+1976>>2]=H;I=z[a+44>>2];z[j+1980>>2]=I;U=z[e+24>>2];h=v[e>>2];E=v[e+4>>2];P=v[e+8>>2];ia=v[e+12>>2];aa=v[e+16>>2];e=v[e+20>>2];f=z[a+48>>2];i=z[a+52>>2];q=f<=i?f:i;m=z[a+56>>2];q=m>=q?q:m;s=C(q*C(.15000000596046448));A=C(s+A);z[j+1920>>2]=A;z[j+1992>>2]=m+A;z[j+1988>>2]=i+A;z[j+1984>>2]=f+A;v[j+1916>>2]=0;z[j+1912>>2]=m;z[j+1908>>2]=i;t[j+1888|0]=0;v[j+1884>>2]=3;v[j+1856>>2]=0;v[j+1860>>2]=0;v[j+1864>>2]=0;v[j+1868>>2]=0;z[j+1904>>2]=f;f=C(q*C(.05000000074505806));z[j+1880>>2]=f;z[j+1876>>2]=f;z[j+1872>>2]=s;k2(z_(j+1560|0,a+48|0),j+1784|0);a=j+1528|0;v[a>>2]=0;v[a+4>>2]=0;v[j+1524>>2]=1065353216;a=j+1536|0;v[a>>2]=0;v[a+4>>2]=0;a=j+1544|0;v[a>>2]=1065353216;v[a+4>>2]=0;v[j+1508>>2]=0;v[j+1512>>2]=0;v[j+1504>>2]=1065353216;v[j+1516>>2]=0;v[j+1520>>2]=0;ma=c;La=b+4|0;yX(j+1456|0,c,La);v[j+1452>>2]=0;z[j+1448>>2]=U;v[j+1440>>2]=aa;v[j+1444>>2]=e;v[j+1432>>2]=P;v[j+1436>>2]=ia;v[j+1424>>2]=h;v[j+1428>>2]=E;ia=j+1360|0;a=268435455;A=C(0);U=C(0);f:{g:{while(1){h:{v[j+2004>>2]=0;c=v[b+36>>2];r_(j,j+1936|0,ma,La);v[j+1344>>2]=141620;v[j+1352>>2]=j+2e3;v[j+1348>>2]=2;Ba[v[(x[c+4>>1]<<2)+141640>>2]](c,j,j+1344|0,1,1);i:{j:{k:{h=v[j+2004>>2];if(h){v[j+1452>>2]=0;z[j+1448>>2]=I;z[j+1444>>2]=H;z[j+1440>>2]=Q;t[j+1388|0]=1;v[j+1344>>2]=141108;c=j+1504|0;v[j+1384>>2]=c;v[j+1380>>2]=c;v[j+1376>>2]=j+1424;v[j+1392>>2]=j+1856;c=ia;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=0;v[c+4>>2]=0;$=z[j+1980>>2];ja=z[j+1972>>2];X=z[j+1976>>2];S=z[j+1500>>2];T=z[j+1492>>2];V=z[j+1496>>2];N=z[j+1464>>2];O=z[j+1456>>2];W=z[j+1460>>2];ca=z[j+1476>>2];fa=z[j+1468>>2];ga=z[j+1472>>2];f=z[j+1944>>2];i=z[j+1936>>2];m=z[j+1940>>2];q=z[j+1956>>2];s=z[j+1948>>2];J=z[j+1952>>2];ka=z[j+1488>>2];L=z[j+1968>>2];da=z[j+1480>>2];G=z[j+1960>>2];ha=z[j+1484>>2];M=z[j+1964>>2];v[j+1340>>2]=0;v[j+1324>>2]=0;v[j+1308>>2]=0;v[j+1292>>2]=0;z[j+1320>>2]=C(C(G*da)+C(M*ha))+C(L*ka);z[j+1316>>2]=C(C(s*da)+C(J*ha))+C(q*ka);z[j+1312>>2]=C(C(i*da)+C(m*ha))+C(f*ka);z[j+1304>>2]=C(C(G*fa)+C(M*ga))+C(L*ca);z[j+1300>>2]=C(C(s*fa)+C(J*ga))+C(q*ca);z[j+1296>>2]=C(C(i*fa)+C(m*ga))+C(f*ca);z[j+1288>>2]=C(C(G*O)+C(M*W))+C(L*N);z[j+1284>>2]=C(C(s*O)+C(J*W))+C(q*N);z[j+1280>>2]=C(C(i*O)+C(m*W))+C(f*N);N=C(-ja);z[j+1336>>2]=C(C(C(G*N)-C(M*X))-C(L*$))+C(C(C(G*T)+C(M*V))+C(L*S));z[j+1332>>2]=C(C(C(s*N)-C(J*X))-C(q*$))+C(C(C(s*T)+C(J*V))+C(q*S));z[j+1328>>2]=C(C(C(i*N)-C(m*X))-C(f*$))+C(C(C(i*T)+C(m*V))+C(f*S));c=h+31|0;if(c>>>0<32){break j}Ra=c>>>5|0;i=C(34028234663852886e22);ua=0;c=h;Aa=0;while(1){Ca=ua<<5;e=h-Ca|0;Da=e>>>0<32?e:32;l:{if(!Da){v[j+6120>>2]=v[j+1416>>2];e=v[j+1412>>2];v[j+6112>>2]=v[j+1408>>2];v[j+6116>>2]=e;E=0;break l}va=c>>>0<32?c:32;wa=w[ta+64|0]&2;f=C(C(z[b+4>>2]*z[b+8>>2])*z[b+12>>2]);E=v[ta+24>>2];sa=v[ta+28>>2];aa=0;ya=v[j+2e3>>2];while(1){P=v[ya+(aa+Ca<<2)>>2];e=j+B(aa,40)|0;m:{if(wa){Y=sa+B(P,6)|0;ea=x[Y+4>>1];ba=x[Y+2>>1];Y=x[Y>>1];break m}Y=sa+B(P,12)|0;ea=v[Y+8>>2];ba=v[Y+4>>2];Y=v[Y>>2]}Y=B(Y,12)+E|0;z[e>>2]=z[Y>>2];z[e+4>>2]=z[Y+4>>2];z[e+8>>2]=z[Y+8>>2];za=f>2]=z[Y>>2];z[e+16>>2]=z[Y+4>>2];z[e+20>>2]=z[Y+8>>2];ba=E+B(za?ba:ea,12)|0;z[e+24>>2]=z[ba>>2];z[e+28>>2]=z[ba+4>>2];z[e+32>>2]=z[ba+8>>2];t[e+36|0]=Ka?w[P+Ka|0]:56;aa=aa+1|0;if((va|0)!=(aa|0)){continue}break}v[j+6120>>2]=v[j+1416>>2];e=v[j+1412>>2];v[j+6112>>2]=v[j+1408>>2];v[j+6116>>2]=e;E=0;ba=0;if(!Da){break l}while(1){v[j+2012>>2]=0;P=j+B(ba,40)|0;e=ba+Ca|0;F1(j+1784|0,j+1344|0,P,e,w[P+36|0],j+1920|0,Qa,j+1424|0,j+1280|0,j+2016|0,j+2012|0);ea=v[j+2012>>2];n:{if(!ea){break n}aa=0;f=z[j+2060>>2];o:{if((ea|0)==1){break o}aa=ea-1|0;sa=aa&3;E=0;P=1;p:{if(ea-2>>>0<3){aa=0;break p}za=aa&-4;aa=0;ea=0;while(1){m=z[(j+(P<<6)|0)+2060>>2];Y=m>2];f=Y?m:f;va=q>2];f=va?q:f;wa=m>2];f=wa?m:f;ya=q>2];ea=m>2];n=z[a+32>>2];A=z[a+24>>2];U=z[a+20>>2];o=z[a+40>>2];p=z[a+36>>2];a=e;i=f}ba=ba+1|0;if((Da|0)!=(ba|0)){continue}break}}v[j+1416>>2]=v[j+6120>>2];e=v[j+6116>>2];v[j+1408>>2]=v[j+6112>>2];v[j+1412>>2]=e;c=c-32|0;Aa=E|Aa;ua=ua+1|0;if((Ra|0)!=(ua|0)){continue}break}break k}P=0;if(!Pa){break f}break h}if(Aa&1){break i}}P=0;if(Pa){break h}break f}f=z[j+1432>>2];m=z[j+1424>>2];q=z[j+1428>>2];R=C(C(f*A)+C(C(m*k)+C(U*q)));s=z[j+1436>>2];J=C(C(s*s)+C(-.5));Z=C(C(f*R)+C(C(s*C(C(m*U)-C(k*q)))+C(A*J)));Z=C(z[j+1448>>2]+C(Z+Z));_=C(C(q*R)+C(C(s*C(C(f*k)-C(A*m)))+C(U*J)));_=C(z[j+1444>>2]+C(_+_));R=C(C(m*R)+C(C(s*C(C(q*A)-C(U*f)))+C(k*J)));R=C(z[j+1440>>2]+C(R+R));L=C(C(f*o)+C(C(m*n)+C(p*q)));G=C(C(f*L)+C(C(s*C(C(m*p)-C(n*q)))+C(o*J)));G=C(G+G);M=C(C(q*L)+C(C(s*C(C(f*n)-C(o*m)))+C(p*J)));M=C(M+M);f=C(C(m*L)+C(C(s*C(C(q*o)-C(p*f)))+C(n*J)));f=C(f+f);a=v[v[j+2e3>>2]+(a<<2)>>2];if(!(i<=C(0))){if(Ea){break h}z[g+36>>2]=G;z[g+32>>2]=M;z[g+28>>2]=f;z[g+24>>2]=Z;z[g+20>>2]=_;z[g+16>>2]=R;v[g+40>>2]=0;v[g+8>>2]=a;break g}m=C(i*G);I=C(I-m);z[j+1980>>2]=I;q=C(i*M);H=C(H-q);z[j+1976>>2]=H;f=C(i*f);Q=C(Q-f);z[j+1972>>2]=Q;y=C(y-m);r=C(r-q);F=C(F-f);Pa=1;Ea=Ea+1|0;if((Ea|0)!=4){continue}}break}z[g+24>>2]=Z;z[g+20>>2]=_;z[g+16>>2]=R;v[g+8>>2]=a;f=C(K(C(C(y*y)+C(C(F*F)+C(r*r)))));z[g+40>>2]=-f;i=C(C(1)/f);a=f>C(0);z[g+36>>2]=a?C(y*i):C(0);z[g+32>>2]=a?C(r*i):C(0);z[g+28>>2]=a?C(F*i):C(0)}P=1}a=v[j+2008>>2];q:{if((a|0)<0|!(a&2147483647)){break q}a=v[j+2e3>>2];if(!a){break q}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=j+6128|0;b=v[d+56>>2];u[g+12>>1]=1026;if(P){break d}}v[g+40>>2]=0;f=z[b>>2];i=z[b+4>>2];z[g+36>>2]=-z[b+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f;break c}if(z[g+40>>2]==C(0)){f=z[b>>2];i=z[b+4>>2];z[g+36>>2]=-z[b+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f}u[g+12>>1]=1027;break c}f=z[d+24>>2];u[g+12>>1]=1024;z[g+40>>2]=f;E=g+12|0;a=x[d+8>>1];if(a&256){b=v[d+48>>2];u[pa+8>>1]=a;d=d- -64|0;c=xa-32|0;xa=c;r:{if(!(w[pa+8|0]&3)){break r}O2(c+16|0,c,b+48|0,h,d,f);a=x[pa+8>>1];if(a&2){f=z[c+8>>2];i=z[c>>2];m=z[c+4>>2];k=C(K(C(C(f*f)+C(C(i*i)+C(m*m)))));if(k>C(0)){k=C(C(1)/k);f=C(f*k);z[c+8>>2]=f;m=C(m*k);i=C(i*k)}k=z[h+8>>2];n=z[h>>2];o=z[h+4>>2];if(C(C(f*k)+C(C(i*n)+C(m*o)))>C(0)){m=C(-m);z[c+4>>2]=m;i=C(-i);f=C(-f)}s:{if(ma|!P){break s}p=z[d>>2];y=C(z[d+12>>2]-p);r=z[d+4>>2];F=C(z[d+28>>2]-r);p=C(z[d+24>>2]-p);r=C(z[d+16>>2]-r);H=C(C(C(y*F)-C(p*r))*k);s=r;k=z[d+8>>2];r=C(z[d+32>>2]-k);k=C(z[d+20>>2]-k);if(!(C(H+C(C(C(C(s*r)-C(F*k))*n)+C(o*C(C(k*p)-C(r*y)))))>C(0))){break s}i=C(-i);z[c>>2]=i;f=C(-f);m=C(-m)}k=z[b+28>>2];n=z[b+16>>2];o=z[b+32>>2];p=z[b+20>>2];y=z[b+4>>2];r=z[b+8>>2];z[g+28>>2]=C(C(i*z[b>>2])+C(m*z[b+12>>2]))+C(f*z[b+24>>2]);z[g+36>>2]=C(C(i*r)+C(m*p))+C(f*o);z[g+32>>2]=C(C(i*y)+C(m*n))+C(f*k);u[E>>1]=x[E>>1]|2;a=x[pa+8>>1]}if(!(a&1)){break r}k=z[b+40>>2];n=z[b+28>>2];o=z[b+16>>2];p=z[b+44>>2];y=z[b+32>>2];r=z[b+20>>2];F=z[b+4>>2];A=z[b+8>>2];f=z[c+16>>2];i=z[c+20>>2];m=z[c+24>>2];z[g+16>>2]=C(C(C(f*z[b>>2])+C(i*z[b+12>>2]))+C(m*z[b+24>>2]))+z[b+36>>2];z[g+24>>2]=p+C(C(C(f*A)+C(i*r))+C(m*y));z[g+20>>2]=k+C(C(C(f*F)+C(i*o))+C(m*n));u[E>>1]=x[E>>1]|1}xa=c+32|0;break c}s=z[e+24>>2];Z=z[e+20>>2];p=z[e+12>>2];y=z[e+8>>2];r=z[e+4>>2];F=z[e>>2];_=z[e+16>>2];u[E>>1]=1027;f=C(-k);i=C(-n);m=C(-o);t:{if(ma|!P){break t}R=z[d+64>>2];Q=C(z[d+76>>2]-R);H=z[d+68>>2];I=C(z[d+92>>2]-H);R=C(z[d+88>>2]-R);H=C(z[d+80>>2]-H);la=C(C(C(Q*I)-C(R*H))*z[h+8>>2]);L=H;H=z[d+72>>2];J=C(z[d+96>>2]-H);H=C(z[d+84>>2]-H);if(!(C(la+C(C(C(C(L*J)-C(I*H))*z[h>>2])+C(z[h+4>>2]*C(C(H*R)-C(J*Q)))))>C(0))){break t}m=o;i=n;f=k}k=C(C(p*p)+C(-.5));n=C(C(y*f)+C(C(F*m)+C(r*i)));o=C(C(C(p*C(C(F*i)-C(m*r)))+C(k*f))+C(y*n));z[g+36>>2]=o+o;o=C(C(r*n)+C(C(k*i)+C(p*C(C(y*m)-C(f*F)))));z[g+32>>2]=o+o;f=C(C(F*n)+C(C(k*m)+C(p*C(C(r*f)-C(i*y)))));z[g+28>>2]=f+f;f=C(C(y*A)+C(C(F*q)+C(U*r)));i=C(C(y*f)+C(C(p*C(C(F*U)-C(q*r)))+C(A*k)));z[g+24>>2]=s+C(i+i);i=C(C(r*f)+C(C(p*C(C(y*q)-C(A*F)))+C(U*k)));z[g+20>>2]=Z+C(i+i);f=C(C(F*f)+C(C(p*C(C(r*A)-C(U*y)))+C(q*k)));z[g+16>>2]=_+C(f+f)}xa=pa+16|0;xa=l+368|0;return(Ja|0)!=0|0}function fr(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=0,l=0,m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),A=0,B=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=0,fa=C(0),ga=C(0),ha=0,ia=0,ja=0,ka=C(0),la=C(0),ma=0;if(v[a+4656>>2]){b9(v[37696],8,11709,1859,g,0);return}k=xa-176|0;xa=k;v[a+5884>>2]=0;v[a+5872>>2]=0;v[a+5860>>2]=0;v[a+5848>>2]=0;v[a+5836>>2]=0;a:{if(C(Ba[v[v[a>>2]+280>>2]](a,0))==C(0)){break a}v[k+96>>2]=0;v[k+100>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+112>>2]=0;v[k+116>>2]=0;v[k+104>>2]=0;v[k+108>>2]=1065353216;v[k+120>>2]=0;v[k+124>>2]=0;v[k+132>>2]=0;v[k+136>>2]=0;v[k+128>>2]=1065353216;v[k+140>>2]=0;v[k+144>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+148>>2]=1065353216;v[k+160>>2]=0;v[k+164>>2]=0;v[k+168>>2]=1065353216;v[k+72>>2]=0;v[k+76>>2]=0;v[k+172>>2]=a+5828;j=C(Ba[v[v[a>>2]+280>>2]](a,1));if(j!=C(0)){v[k+52>>2]=-16776961;v[k+44>>2]=-65536;v[k+48>>2]=-16711936;z[k+40>>2]=j;z[k+36>>2]=j;z[k+32>>2]=j;bV(k+72|0,k+32|0)}O=v[a+5980>>2];if(O){while(1){U=v[v[a+5948>>2]+(Y<<2)>>2];if(v[U+100>>2]){O=0;while(1){p=C(0);s=C(0);r=C(0);aa=C(0);l=xa-32|0;xa=l;A=v[v[U+96>>2]+(O<<2)>>2];i=k+72|0;wj(A,i,a);g=v[A+52>>2];b:{if(!(t[(g&1?v[A+56>>2]:(A+v[((g>>>22&60)+89188|0)+12>>2]|0)+56|0)|0]&1)){break b}g=Ba[v[v[A>>2]+28>>2]](A)|0;m=C(Ba[v[v[g>>2]+280>>2]](g,0));g=Ba[v[v[A>>2]+28>>2]](A)|0;if(C(m*C(Ba[v[v[g>>2]+280>>2]](g,3)))!=C(0)){R=v[A+316>>2];if(R&2){g=v[A+56>>2]+96|0}else{R=v[A+316>>2];o=A- -64|0;g=v[o+176>>2];c:{if(!(!g|w[g+31|0]!=1)){g=g+32|0;break c}g=o+128|0}}j=z[g+8>>2];B=j==C(0)?C(0):C(C(1)/j);j=z[g+4>>2];q=j==C(0)?C(0):C(C(1)/j);j=z[g>>2];n=j==C(0)?C(0):C(C(1)/j);if(R&1){j=z[v[A+56>>2]+92>>2]}else{o=A- -64|0;g=v[o+176>>2];d:{if(!(!g|w[g+31|0]!=1)){j=z[g+44>>2];break d}j=z[o+140>>2]}}v[i+4>>2]=16777215;g=ZU(i,A+256|0);j=C(C(6)/C(C(1)/j));n=C(n*j);q=C(q*j);j=C(B*j);B=C(C(K(C(D(C(C(n+q)-j)))))*C(.5));z[l+20>>2]=B;E=C(C(K(C(D(C(j+C(n-q))))))*C(.5));z[l+16>>2]=E;t[l+24|0]=1;z[l+8>>2]=-B;z[l+4>>2]=-E;j=C(C(K(C(D(C(j+C(q-n))))))*C(.5));z[l+12>>2]=j;z[l>>2]=-j;$U(g,l)}g=Ba[v[v[A>>2]+28>>2]](A)|0;j=C(m*C(Ba[v[v[g>>2]+280>>2]](g,20)));g=Ba[v[v[A>>2]+28>>2]](A)|0;m=C(m*C(Ba[v[v[g>>2]+280>>2]](g,21)));if(j==C(0)&m==C(0)){break b}v[l+12>>2]=i;z[l+8>>2]=m;z[l+4>>2]=j;v[l>>2]=120416;i=xa-128|0;xa=i;g=v[A+328>>2];e:{if(!g){break e}o=i- -64|0;Ba[v[v[A>>2]+76>>2]](o,A);R=i+32|0;_=v[A+324>>2];Ba[v[v[_>>2]+44>>2]](R,_);m=z[i+72>>2];j=z[i+56>>2];B=C(j+j);n=z[i+64>>2];j=z[i+48>>2];E=C(j+j);j=z[i+52>>2];M=C(j+j);q=z[i+68>>2];I=C(C(m*B)+C(C(n*E)+C(M*q)));j=z[i+76>>2];N=C(C(j*j)+C(-.5));z[i+120>>2]=z[i+88>>2]+C(C(m*I)+C(C(B*N)+C(j*C(C(n*M)-C(E*q)))));z[i+116>>2]=z[i+84>>2]+C(C(q*I)+C(C(M*N)+C(j*C(C(m*E)-C(B*n)))));J=z[i+44>>2];P=z[i+32>>2];L=z[i+36>>2];Q=z[i+40>>2];z[i+108>>2]=C(C(C(j*J)-C(n*P))-C(q*L))-C(m*Q);z[i+104>>2]=C(C(n*L)+C(C(j*Q)+C(m*J)))-C(P*q);z[i+100>>2]=C(C(m*P)+C(C(j*L)+C(q*J)))-C(Q*n);z[i+96>>2]=C(C(q*Q)+C(C(j*P)+C(n*J)))-C(L*m);z[i+112>>2]=z[i+80>>2]+C(C(n*I)+C(C(E*N)+C(j*C(C(q*B)-C(M*m)))));Ba[v[v[g>>2]+76>>2]](R,g);g=v[A+324>>2];Ba[v[v[g>>2]+32>>2]](i,g);m=z[i+40>>2];j=z[i+24>>2];B=C(j+j);n=z[i+32>>2];j=z[i+16>>2];E=C(j+j);j=z[i+20>>2];M=C(j+j);q=z[i+36>>2];I=C(C(m*B)+C(C(n*E)+C(M*q)));j=z[i+44>>2];N=C(C(j*j)+C(-.5));z[i+88>>2]=z[i+56>>2]+C(C(m*I)+C(C(B*N)+C(j*C(C(n*M)-C(E*q)))));z[i+84>>2]=z[i+52>>2]+C(C(q*I)+C(C(M*N)+C(j*C(C(m*E)-C(B*n)))));J=z[i+12>>2];P=z[i>>2];L=z[i+4>>2];Q=z[i+8>>2];z[i+76>>2]=C(C(C(j*J)-C(n*P))-C(q*L))-C(m*Q);z[i+72>>2]=C(C(n*L)+C(C(j*Q)+C(m*J)))-C(P*q);z[i+68>>2]=C(C(m*P)+C(C(j*L)+C(q*J)))-C(Q*n);z[i+64>>2]=C(C(q*Q)+C(C(j*P)+C(n*J)))-C(L*m);z[i+80>>2]=z[i+48>>2]+C(C(n*I)+C(C(E*N)+C(j*C(C(q*B)-C(M*m)))));Ba[v[v[l>>2]+8>>2]](l,i+96|0,o);g=v[A+324>>2];o=Ba[v[v[g>>2]+48>>2]](g)|0;if(x[(Ba[v[v[A>>2]+248>>2]](A)|0)+4>>1]==11){g=v[i+88>>2];v[i+52>>2]=v[i+84>>2];v[i+56>>2]=g;m=z[i+64>>2];z[i+32>>2]=m;j=z[i+68>>2];z[i+36>>2]=j;n=z[i+72>>2];z[i+40>>2]=n;p=z[i+76>>2];z[i+44>>2]=p;z[i+48>>2]=z[i+80>>2];B=z[i+108>>2];E=z[i+104>>2];M=z[i+96>>2];I=z[i+100>>2];if(C(C(p*B)+C(C(n*E)+C(C(m*M)+C(j*I))))>2]=p;n=C(-n);z[i+72>>2]=n;j=C(-j);z[i+68>>2]=j;m=C(-m);z[i+64>>2]=m}q=C(C(E*n)+C(C(I*j)+C(C(B*p)+C(M*m))));J=C(C(m*I)+C(C(C(B*n)-C(p*E))-C(M*j)));r=C(C(n*M)+C(C(C(B*j)-C(p*I))-C(E*m)));p=C(C(j*E)+C(C(C(B*m)-C(p*M))-C(I*n)));f:{if(p==C(0)){m=C(1);j=C(0);break f}j=C(C(1)/C(K(C(C(q*q)+C(C(C(p*p)+C(0))+C(0))))));m=C(q*j);s=C(p*j);j=C(j*C(0))}B=C(C(q*m)+C(p*s));E=C(r*j);M=C(J*m);n=C(q*C(-j));q=C(r*m);m=m==C(-1)?s>2];g:{if(A&262144){g=v[o+8>>2];R=g+152|0;g=g+148|0;break g}R=o+76|0;g=o+72|0}E=C(M-p);s=C(s*r);q=C(n-q);j=C(j+B);n=z[R>>2];B=z[g>>2];h:{if(A&131072){R=v[o+8>>2];g=R+144|0;_=R+140|0;break h}g=o+88|0;R=v[o+8>>2];_=o+80|0}s=C(s+E);p=C(p+q);q=z[(A&1024?R+108|0:o+332|0)>>2];E=z[g>>2];M=z[_>>2];g=i+32|0;ia=l,ja=g,ka=B,la=n,ma=W9(C(n-z[(A&16384?R+124|0:o+348|0)>>2]))>2]+16>>2],Ba[ha](ia|0,ja|0,C(ka),C(la),ma|0);n=W9(C(M*C(.25)));B=W9(C(E*C(.25)));i:{if(j==C(-1)){j=p>2]+20>>2]](l,g,n,B,!(C(C(p*p)+C(j*j))<=C(1)));break e}q=z[i+72>>2];B=q;E=z[i+68>>2];M=E;P=z[i+108>>2];L=z[i+76>>2];n=L;I=z[i+104>>2];Q=z[i+96>>2];N=z[i+64>>2];m=N;J=z[i+100>>2];if(C(C(P*n)+C(C(I*q)+C(C(Q*m)+C(J*E))))>2]=n;B=C(-q);z[i+72>>2]=B;M=C(-E);z[i+68>>2]=M;m=C(-N);z[i+64>>2]=m}j=C(C(B*I)+C(C(M*J)+C(C(n*P)+C(Q*m))));s=C(1);$=z[i+84>>2];V=z[i+80>>2];da=z[i+116>>2];fa=z[i+112>>2];H=C(C(J*B)+C(C(C(n*Q)-C(P*m))-C(M*I)));if(H!=C(0)){r=C(C(1)/C(K(C(C(j*j)+C(C(C(H*H)+C(0))+C(0))))));s=C(j*r);p=C(H*r);r=C(r*C(0))}S=C(C(Q*M)+C(C(C(n*I)-C(P*B))-C(m*J)));Z=C(r*S);T=C(C(I*m)+C(C(C(n*J)-C(P*M))-C(B*Q)));W=C(T*r);X=C(Z+C(W+C(C(j*s)+C(H*p))));ba=C(Z+C(C(C(H*s)-C(j*p))-W));j=C(j*C(-r));H=C(r*H);ca=C(C(p*T)+C(C(j+C(S*s))-H));Z=z[i+88>>2];ga=z[i+120>>2];H=C(H+C(C(j+C(T*s))-C(S*p)));j:{if(H==C(0)){S=C(1);T=C(0);j=C(0);break j}j=C(C(1)/C(K(C(C(X*X)+C(C(H*H)+C(0))))));S=C(X*j);T=C(H*j);j=C(j*C(0))}W=C(C(j*H)+C(C(C(ca*S)-C(X*j))-C(ba*T)));if(W==C(0)){j=C(2)}else{j=C(C(ca*j)+C(C(H*T)+C(C(X*S)+C(ba*j))));H=C(C(1)/C(K(C(C(j*j)+C(C(W*W)+C(0))))));aa=C(W*H);j=C(C(j*H)+C(1))}if(w[o+274|0]){r=C(r*r);r=C(K(C(C(s*s)+C(r+C(r+C(p*p))))));if(r!=C(0)){r=C(C(1)/r);s=C(s*r);p=C(p*r)}r=z[o+72>>2];H=z[o+76>>2];z[i+56>>2]=Z;z[i+52>>2]=$;z[i+48>>2]=V;z[i+44>>2]=L;z[i+40>>2]=q;z[i+36>>2]=E;z[i+32>>2]=N;s=A9(C(F(C(G(s,C(-1))),C(1))));s=C(s+s);p=p>2]+16>>2]](l,i+32|0,r,H,r>C(p+C(-.009999999776482582))|H>2];s=z[o+84>>2];z[i+56>>2]=Z;z[i+52>>2]=$;z[i+48>>2]=V;r=C(E*C(0));H=C(q*C(.7071067690849304));z[i+44>>2]=C(C(C(L*C(.7071067690849304))+C(N*C(0)))+r)+H;z[i+40>>2]=r+C(C(N*C(-0))+C(C(L*C(-.7071067690849304))+H));r=C(N*C(.7071067690849304));H=C(L*C(-0));z[i+36>>2]=r+C(C(q*C(-0))+C(H+C(E*C(.7071067690849304))));z[i+32>>2]=C(q*C(0))+C(C(E*C(-.7071067690849304))+C(H+r));r=C(C9(T,C(S+C(1)))*C(4));Ba[v[v[l>>2]+16>>2]](l,i+32|0,C(-s),C(-p),p>C(r+C(-.009999999776482582))|s>2];s=z[o+92>>2];z[i+56>>2]=Z;z[i+52>>2]=$;z[i+48>>2]=V;r=C(L*C(.7071067690849304));H=C(N*C(-0));X=C(E*C(.7071067690849304));S=C(q*C(0));z[i+44>>2]=C(C(r+H)-X)-S;N=C(N*C(.7071067690849304));L=C(L*C(0));z[i+40>>2]=C(E*C(-0))+C(N+C(L+C(q*C(.7071067690849304))));z[i+36>>2]=H+C(S+C(r+X));z[i+32>>2]=C(q*C(-.7071067690849304))+C(C(E*C(0))+C(L+N));j=C(C9(aa,j)*C(4));Ba[v[v[l>>2]+16>>2]](l,i+32|0,C(-s),C(-p),p>C(j+C(-.009999999776482582))|s>2];T=z[i+80>>2];W=z[i+84>>2];aa=z[i+88>>2];J=z[o+96>>2];ba=C($-X);z[i+40>>2]=aa+C(J*ba);ca=C(Z+V);z[i+36>>2]=W+C(J*ca);da=C(C(C(1)-H)-S);z[i+32>>2]=T+C(J*da);z[i+8>>2]=aa+C(j*ba);z[i+4>>2]=W+C(j*ca);z[i>>2]=T+C(j*da);T=j;j=C(C(C(s*p)+C(n*C(C(B*q)-C(M*E))))-C(m*r));Ba[v[v[l>>2]+28>>2]](l,i+32|0,i,j>2];Q=z[i+80>>2];N=z[i+84>>2];T=z[i+88>>2];I=z[o+104>>2];W=C(P+J);z[i+40>>2]=T+C(I*W);S=C(L-S);z[i+36>>2]=N+C(I*S);V=C(Z-V);z[i+32>>2]=Q+C(I*V);z[i+8>>2]=T+C(j*W);z[i+4>>2]=N+C(j*S);z[i>>2]=Q+C(j*V);N=j;j=C(C(C(q*p)+C(n*C(C(m*E)-C(B*s))))-C(M*r));Ba[v[v[l>>2]+28>>2]](l,i+32|0,i,j>2];Q=z[i+80>>2];N=z[i+84>>2];V=z[i+88>>2];I=z[o+112>>2];L=C(L-H);z[i+40>>2]=V+C(I*L);J=C(P-J);z[i+36>>2]=N+C(I*J);P=C($+X);z[i+32>>2]=Q+C(I*P);z[i+8>>2]=V+C(j*L);z[i+4>>2]=N+C(j*J);z[i>>2]=Q+C(j*P);L=j;j=C(C(C(E*p)+C(n*C(C(M*s)-C(m*q))))-C(B*r));Ba[v[v[l>>2]+28>>2]](l,i+32|0,i,j>>0>2]){continue}break}O=v[a+5980>>2]}Y=Y+1|0;if(Y>>>0>>0){continue}break}}U=v[a+5936>>2];if(U){_=v[a+5932>>2];O=0;while(1){i=v[_+(O<<2)>>2];k:{if((Ba[v[v[i>>2]+24>>2]](i)|0)==1){o=xa-32|0;xa=o;A=k+72|0;wj(i,A,a);g=v[i+52>>2];l:{if(!(t[(g&1?v[i+56>>2]:(i+v[((g>>>22&60)+89188|0)+12>>2]|0)+56|0)|0]&1)){break l}if(C(C(Ba[v[v[a>>2]+280>>2]](a,0))*C(Ba[v[v[a>>2]+280>>2]](a,3)))==C(0)){break l}R=16711680;if(!v[i+312>>2]){j=C(C(F(C(z[i+308>>2]/z[a+5148>>2]),C(1)))*C(255));m:{if(j=C(0)){g=~~j>>>0;break m}g=0}R=g<<8|g|g<<16}Y=v[i+316>>2];if(Y&2){l=v[i+56>>2]+96|0}else{Y=v[i+316>>2];l=i- -64|0;g=v[l+176>>2];n:{if(!(!g|w[g+31|0]!=1)){l=g+32|0;break n}l=l+128|0}}j=z[l+8>>2];n=j==C(0)?C(0):C(C(1)/j);j=z[l+4>>2];p=j==C(0)?C(0):C(C(1)/j);j=z[l>>2];m=j==C(0)?C(0):C(C(1)/j);if(Y&1){j=z[v[i+56>>2]+92>>2]}else{l=i- -64|0;g=v[l+176>>2];o:{if(!(!g|w[g+31|0]!=1)){j=z[g+44>>2];break o}j=z[l+140>>2]}}v[A+4>>2]=R;g=ZU(A,i+256|0);j=C(C(6)/C(C(1)/j));m=C(m*j);p=C(p*j);j=C(n*j);n=C(C(K(C(D(C(C(m+p)-j)))))*C(.5));z[o+20>>2]=n;s=C(C(K(C(D(C(j+C(m-p))))))*C(.5));z[o+16>>2]=s;t[o+24|0]=1;z[o+8>>2]=-n;z[o+4>>2]=-s;j=C(C(K(C(D(C(j+C(p-m))))))*C(.5));z[o+12>>2]=j;z[o>>2]=-j;$U(g,o)}xa=o+32|0;break k}g=xa+-64|0;xa=g;l=k+72|0;ou(i+20|0,l,a,i);o=v[i+52>>2];p:{if(!(t[(o&1?v[i+56>>2]:(i+v[((o>>>22&60)+89188|0)+12>>2]|0)+56|0)|0]&1)){break p}q:{r:{s:{if(!(!(w[a+5580|0]&32)|!w[a+5248|0])){m=z[a+5152>>2];break s}m=z[v[a+1008>>2]+1032>>2];if(!(w[a+5580|0]&32)){break r}}if(!w[a+5258|0]){break r}j=z[a+5192>>2];break q}j=z[v[a+1008>>2]+1072>>2]}j=C(m*j);if(j==C(0)){break p}o=g+32|0;Ba[v[v[i>>2]+76>>2]](o,i);l=ZU(l,o);v[g+28>>2]=-16776961;v[g+20>>2]=-65536;v[g+24>>2]=-16711936;z[g+16>>2]=j;z[g+12>>2]=j;z[g+8>>2]=j;bV(l,g+8|0)}xa=g- -64|0}O=O+1|0;if((U|0)!=(O|0)){continue}break}}j=C(Ba[v[v[a>>2]+280>>2]](a,17));m=C(Ba[v[v[a>>2]+280>>2]](a,18));t:{if(j==C(0)){break t}g=v[a+5584>>2];if(!g){break t}Ba[v[v[g>>2]+60>>2]](g,k+72|0,-16776961)}u:{if(m==C(0)){break u}g=v[a+5620>>2];if(!g){break u}Ba[v[v[g>>2]+60>>2]](g,k+72|0,-65536)}v:{if(C(Ba[v[v[a>>2]+280>>2]](a,23))==C(0)){break v}O=0;v[k+56>>2]=0;v[k+48>>2]=0;v[k+52>>2]=0;v[k+40>>2]=0;v[k+44>>2]=1065353216;v[k+32>>2]=0;v[k+36>>2]=0;ZU(k+72|0,k+32|0);g=v[v[a+1012>>2]+272>>2];g=Ba[v[v[g>>2]+12>>2]](g)|0;if(!g){break v}while(1){l=v[v[a+1012>>2]+272>>2];Ba[v[v[l>>2]+16>>2]](l,k+32|0,1,O)|0;l=k+72|0;v[l+4>>2]=w[k+68|0]?-256:-16777216;i=v[k+36>>2];v[k>>2]=v[k+32>>2];v[k+4>>2]=i;i=v[k+44>>2];v[k+8>>2]=v[k+40>>2];v[k+12>>2]=i;t[k+24|0]=1;i=v[k+52>>2];v[k+16>>2]=v[k+48>>2];v[k+20>>2]=i;$U(l,k);O=O+1|0;if((g|0)!=(O|0)){continue}break}}if(C(Ba[v[v[a>>2]+280>>2]](a,22))==C(0)){break a}g=w[a+5580|0]&64?a+5272|0:v[a+1008>>2]+1128|0;if(z[g>>2]>z[g+12>>2]){break a}l=k+72|0;v[l+4>>2]=-256;z[k+32>>2]=z[g>>2];z[k+36>>2]=z[g+4>>2];z[k+40>>2]=z[g+8>>2];z[k+44>>2]=z[g+12>>2];z[k+48>>2]=z[g+16>>2];z[k+52>>2]=z[g+20>>2];t[k+56|0]=1;$U(l,k+32|0)}xa=k+176|0;if(v[a+5928>>2]){l=v[a+5896>>2];g=0;while(1){zg(v[l+(g<<2)>>2]);g=g+1|0;if(g>>>0>2]){continue}break}}l=xa-16|0;xa=l;g=v[a+1008>>2];v[g+20>>2]=e;v[g+16>>2]=d;k=v[g+8>>2];i=k-1|0;v[g+8>>2]=i;o=v[g+4>>2];d=d+e|0;v[l+12>>2]=d;w:{if(i>>>0>=(v[g+12>>2]&2147483647)>>>0){Vs(g+4|0,l+12|0);break w}v[o+(i<<2)>>2]=d;v[g+8>>2]=k}xa=l+16|0;z[a+6072>>2]=b;if((h|0)==1){z[a+1112>>2]=b;z[a+1116>>2]=b>C(0)?C(C(1)/b):C(0)}t[a+6320|0]=f;R=v[(Ba[v[v[a>>2]+28>>2]](a)|0)+40>>2];A=xa-16|0;xa=A;e=a+16|0;o=e+4768|0;if(v[e+4772>>2]){while(1){l=v[o>>2]+(ea<<3)|0;g=x[l>>1];d=v[R+(g<<2)>>2];x:{y:{switch(v[l+4>>2]){case 0:if(!d){break x}l=0;O=0;g=v[e+20>>2];Y=x[d+52>>1];i=Y+1|0;if(g>>>0>>0){i=i+31&-32;v[e+20>>2]=i;k=v[37696];i=Ba[v[v[k+12>>2]+8>>2]](k+12|0,i<<5|19,24422,17657,100)|0;if(i){l=i+19&-16;v[l-4>>2]=l-i}if(g){while(1){k=O<<5;i=k+l|0;k=k+v[e+16>>2]|0;U=v[k+4>>2];v[i>>2]=v[k>>2];v[i+4>>2]=U;v[i+8>>2]=v[k+8>>2];u[i+12>>1]=x[k+12>>1];u[i+14>>1]=x[k+14>>1];U=v[k+20>>2];v[i+16>>2]=v[k+16>>2];v[i+20>>2]=U;O=O+1|0;if((O|0)!=(g|0)){continue}break}}k=v[e+20>>2];z:{if(k>>>0<=g>>>0){break z}O=k+(g^-1)|0;U=k-g&7;if(U){i=0;while(1){u[((g<<5)+l|0)+20>>1]=65535;g=g+1|0;i=i+1|0;if((U|0)!=(i|0)){continue}break}}if(O>>>0<7){break z}while(1){i=(g<<5)+l|0;u[i+20>>1]=65535;u[i+52>>1]=65535;u[i+84>>1]=65535;u[i+116>>1]=65535;u[i+148>>1]=65535;u[i+180>>1]=65535;u[i+212>>1]=65535;u[i+244>>1]=65535;g=g+8|0;if((k|0)!=(g|0)){continue}break}}g=v[e+16>>2];if(g){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,g-v[g-4>>2]|0)}v[e+16>>2]=l}l=v[d+36>>2];g=v[e+16>>2]+(Y<<5)|0;v[g>>2]=v[d+32>>2];v[g+4>>2]=l;v[g+8>>2]=v[d+40>>2];u[g+12>>1]=x[d+44>>1];u[g+14>>1]=x[d+46>>1];l=v[d+52>>2];v[g+16>>2]=v[d+48>>2];v[g+20>>2]=l;g=v[v[e+992>>2]+1024>>2];Ba[v[v[g>>2]+52>>2]](g,d+32|0);break x;case 1:if(!d){break x}l=v[d+36>>2];g=v[e+16>>2]+(x[d+52>>1]<<5)|0;v[g>>2]=v[d+32>>2];v[g+4>>2]=l;v[g+8>>2]=v[d+40>>2];u[g+12>>1]=x[d+44>>1];u[g+14>>1]=x[d+46>>1];l=v[d+52>>2];v[g+16>>2]=v[d+48>>2];v[g+20>>2]=l;g=v[v[e+992>>2]+1024>>2];Ba[v[v[g>>2]+56>>2]](g,d+32|0);break x;case 2:break y;default:break x}}if(g>>>0>=y[e+20>>2]){break x}d=v[e+16>>2]+(g<<5)|0;if((g|0)!=x[d+20>>1]){break x}g=v[v[e+992>>2]+1024>>2];Ba[v[v[g>>2]+60>>2]](g,d);u[d+20>>1]=65535}ea=ea+1|0;if(ea>>>0>2]){continue}break}}d=v[o+4>>2];if((d|0)<0){e=d<<3;d=v[o>>2];e=e+d|0;while(1){g=v[A+12>>2];v[e>>2]=v[A+8>>2];v[e+4>>2]=g;e=e+8|0;if(d>>>0>e>>>0){continue}break}}v[o+4>>2]=0;xa=A+16|0;t[a+6353|0]=1;t[a+4801|0]=1;v[a+4656>>2]=h;if(f){d=v[a+6092>>2];Ba[v[v[d>>2]+8>>2]](d);d=v[a+6092>>2];Ba[v[v[d>>2]+12>>2]](d)}if((h|0)==1){v[a+6160>>2]=1;v[a+6156>>2]=c;v[a+6152>>2]=v[a+6092>>2];if(c){Ba[v[v[c>>2]+16>>2]](c)}d=a+6260|0;c=a+6136|0;v[d>>2]=c;v[a+6264>>2]=1;Ba[v[v[a+6136>>2]+16>>2]](c);e=a+6256|0;v[e>>2]=v[v[d>>2]+16>>2];v[a+6128>>2]=1;v[a+6124>>2]=0;v[a+6120>>2]=v[a+6092>>2];d=v[a+6152>>2];Ba[v[v[d>>2]+72>>2]](d,c);c=v[e>>2];Ba[v[v[c>>2]+72>>2]](c,a+6240|0);return}v[a+6128>>2]=1;v[a+6124>>2]=c;d=v[a+6092>>2];v[a+6120>>2]=d;if(c){Ba[v[v[c>>2]+16>>2]](c);d=v[a+6092>>2]}c=a+6104|0;v[a+6220>>2]=c;v[a+6224>>2]=1;e=a+6216|0;v[e>>2]=d;Ba[v[v[a+6104>>2]+16>>2]](c);d=v[a+6120>>2];Ba[v[v[d>>2]+72>>2]](d,c);c=v[e>>2];Ba[v[v[c>>2]+72>>2]](c,a+6200|0)}function D5(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=0,W=C(0);c=xa-288|0;xa=c;v[c+140>>2]=a;v[c+136>>2]=a;a=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=a;a=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=a;E5(c+224|0,c+192|0,e,f,g);m=z[f+20>>2];r=z[f+16>>2];k=z[c+212>>2];l=z[c+208>>2];n=z[c+216>>2];z[b+8>>2]=n-z[f+24>>2];z[b+4>>2]=k-m;z[b>>2]=l-r;m=z[f+20>>2];r=z[f+16>>2];z[c+152>>2]=n-z[f+24>>2];z[c+148>>2]=k-m;z[c+144>>2]=l-r;m=z[g+20>>2];r=z[g+24>>2];q=z[g+16>>2];z[c+188>>2]=n;z[c+184>>2]=k;p=z[c+248>>2];z[c+176>>2]=p;B=z[c+244>>2];z[c+172>>2]=B;z[c+164>>2]=n-r;z[c+160>>2]=k-m;z[c+180>>2]=l;y=z[c+240>>2];z[c+168>>2]=y;z[c+156>>2]=l-q;O=v[e+460>>2];o=z[c+224>>2];a:{if(h){t=z[c+196>>2];s=z[c+200>>2];A=z[c+204>>2];D=z[c+192>>2];q=z[c+236>>2];r=z[c+232>>2];m=z[c+228>>2];break a}q=z[c+236>>2];A=z[c+204>>2];r=z[c+232>>2];s=z[c+200>>2];D=z[c+192>>2];m=z[c+228>>2];t=z[c+196>>2];if(!(C(C(q*A)+C(C(r*s)+C(C(o*D)+C(m*t))))>2]=A;s=C(-s);z[c+200>>2]=s;t=C(-t);z[c+196>>2]=t;D=C(-D);z[c+192>>2]=D}h=v[e+456>>2];d=v[e+452>>2];Q=C(-o);l=C(l-y);l=C(l+l);k=C(k-B);k=C(k+k);n=C(n-p);n=C(n+n);p=C(C(C(Q*l)-C(k*m))-C(r*n));B=C(C(q*q)+C(-.5));R=C(C(C(n*B)+C(q*C(C(l*m)-C(o*k))))-C(r*p));z[c+128>>2]=R;S=C(C(C(k*B)+C(q*C(C(n*o)-C(r*l))))-C(m*p));z[c+124>>2]=S;H=C(C(r*s)+C(C(m*t)+C(C(q*A)+C(o*D))));z[c+116>>2]=H;I=C(C(D*m)+C(C(C(q*s)-C(A*r))-C(o*t)));z[c+112>>2]=I;J=C(C(s*o)+C(C(C(q*t)-C(A*m))-C(r*D)));z[c+108>>2]=J;L=C(C(t*r)+C(C(C(q*D)-C(A*o))-C(m*s)));z[c+104>>2]=L;M=C(C(C(l*B)+C(q*C(C(k*r)-C(m*n))))-C(o*p));z[c+120>>2]=M;k=C(o+o);n=C(C(1)-C(o*k));l=C(m+m);p=C(m*l);z[c+96>>2]=n-p;y=C(l*r);E=C(k*q);z[c+92>>2]=y-E;z[c+84>>2]=y+E;N=n;n=C(r+r);y=C(r*n);z[c+80>>2]=N-y;E=C(k*r);l=C(l*q);z[c+88>>2]=E+l;k=C(k*m);n=C(n*q);z[c+76>>2]=k-n;E=C(E-l);z[c+72>>2]=E;n=C(k+n);z[c+68>>2]=n;p=C(C(C(1)-p)-y);z[c+64>>2]=p;k=C(D+D);y=C(C(1)-C(D*k));l=C(t+t);U=C(t*l);z[c+56>>2]=y-U;P=C(s*l);N=C(k*A);z[c+52>>2]=P-N;z[c+44>>2]=N+P;N=y;y=C(s+s);P=C(s*y);z[c+40>>2]=N-P;N=C(k*s);l=C(A*l);z[c+48>>2]=N+l;k=C(k*t);y=C(A*y);z[c+36>>2]=k-y;z[c+32>>2]=N-l;z[c+28>>2]=k+y;z[c+24>>2]=C(C(1)-U)-P;b:{if(!(O&7)){break b}U=z[e+424>>2];P=z[e+420>>2];b=v[c+140>>2];c:{if(!(O&1)){a=b;break c}N=z[e+416>>2];W=z[e+428>>2];a=b+80|0;v[c+140>>2]=a;z[b+8>>2]=E;z[b+4>>2]=n;z[b>>2]=p;u[b+78>>1]=0;p=z[c+152>>2];y=z[c+144>>2];E=z[c+148>>2];k=z[c+64>>2];l=z[c+68>>2];n=z[c+72>>2];z[b+40>>2]=n;z[b+36>>2]=l;z[b+32>>2]=k;z[b+24>>2]=C(y*l)-C(k*E);z[b+20>>2]=C(p*k)-C(n*y);z[b+16>>2]=C(E*n)-C(l*p);p=z[c+164>>2];y=z[c+156>>2];E=z[c+160>>2];z[b+28>>2]=-W;z[b+12>>2]=N-M;z[b+56>>2]=C(y*l)-C(k*E);z[b+52>>2]=C(p*k)-C(n*y);z[b+48>>2]=C(E*n)-C(l*p);u[b+76>>1]=x[b+76>>1]|(v[e+316>>2]&1?35:33);z[b+64>>2]=z[e+304>>2];z[b+68>>2]=z[e+308>>2];k=z[e+312>>2];z[b+60>>2]=k;z[b+44>>2]=-k}d:{if(!(O&2)){b=a;break d}M=z[e+432>>2];b=a+80|0;v[c+140>>2]=b;u[a+78>>1]=0;z[a>>2]=z[c+76>>2];z[a+4>>2]=z[c+80>>2];z[a+8>>2]=z[c+84>>2];p=z[c+152>>2];y=z[c+144>>2];E=z[c+148>>2];k=z[c+76>>2];l=z[c+80>>2];n=z[c+84>>2];z[a+40>>2]=n;z[a+36>>2]=l;z[a+32>>2]=k;z[a+24>>2]=C(y*l)-C(k*E);z[a+20>>2]=C(p*k)-C(n*y);z[a+16>>2]=C(E*n)-C(l*p);p=z[c+164>>2];y=z[c+156>>2];E=z[c+160>>2];z[a+28>>2]=-M;z[a+12>>2]=P-S;z[a+56>>2]=C(y*l)-C(k*E);z[a+52>>2]=C(p*k)-C(n*y);z[a+48>>2]=C(E*n)-C(l*p);u[a+76>>1]=x[a+76>>1]|(v[e+332>>2]&1?35:33);z[a+64>>2]=z[e+320>>2];z[a+68>>2]=z[e+324>>2];k=z[e+328>>2];z[a+60>>2]=k;z[a+44>>2]=-k}if(!(O&4)){break b}S=z[e+436>>2];v[c+140>>2]=b+80;u[b+78>>1]=0;z[b>>2]=z[c+88>>2];z[b+4>>2]=z[c+92>>2];z[b+8>>2]=z[c+96>>2];k=z[c+152>>2];l=z[c+96>>2];n=z[c+144>>2];p=z[c+92>>2];y=z[c+88>>2];E=z[c+148>>2];z[b+24>>2]=C(n*p)-C(y*E);z[b+20>>2]=C(k*y)-C(l*n);z[b+16>>2]=C(E*l)-C(p*k);k=z[c+88>>2];z[b+32>>2]=k;l=z[c+92>>2];z[b+36>>2]=l;n=z[c+96>>2];z[b+40>>2]=n;p=z[c+164>>2];y=z[c+156>>2];E=z[c+160>>2];z[b+28>>2]=-S;z[b+12>>2]=U-R;z[b+56>>2]=C(y*l)-C(k*E);z[b+52>>2]=C(p*k)-C(n*y);z[b+48>>2]=C(E*n)-C(l*p);u[b+76>>1]=x[b+76>>1]|(v[e+348>>2]&1?35:33);z[b+64>>2]=z[e+336>>2];z[b+68>>2]=z[e+340>>2];k=z[e+344>>2];z[b+60>>2]=k;z[b+44>>2]=-k}e:{if(!(O&56)){break e}k=z[e+412>>2];n=z[e+408>>2];p=z[e+400>>2];l=z[e+404>>2];if(!(C(C(H*k)+C(C(I*n)+C(C(L*p)+C(J*l))))>C(0))){n=C(-n);l=C(-l);p=C(-p);k=C(-k)}E=C(C(L*l)+C(C(C(k*I)-C(H*n))-C(p*J)));R=C(C(I*p)+C(C(C(k*J)-C(H*l))-C(n*L)));y=C(C(J*n)+C(C(C(k*L)-C(H*p))-C(l*I)));if(O&32){H=z[e+448>>2];H=C(H+H);I=z[e+440>>2];I=C(I+I);J=z[e+444>>2];J=C(J+J);M=C(C(r*H)+C(C(o*I)+C(m*J)));U=C(-m);L=C(-C(C(r*M)+C(C(H*B)+C(q*C(C(o*J)+C(I*U))))));S=C(-C(C(m*M)+C(C(J*B)+C(q*C(C(r*I)+C(H*Q))))));N=C(o*M);M=C(-r);H=C(-C(N+C(C(I*B)+C(q*C(C(m*H)+C(J*M))))));B=C(0);P=z[e+384>>2];f:{if(P==C(0)){r=C(0);n=C(0);p=C(0);m=C(1);l=C(0);k=C(0);q=C(1);o=C(1);break f}I=C(C(C(-p)*m)+C(C(o*l)+C(C(q*n)+C(r*k))));J=C(C(C(-n)*o)+C(C(r*p)+C(C(q*l)+C(m*k))));B=C(C(t*I)+C(s*J));Q=C(C(M*n)+C(C(U*l)+C(C(q*k)+C(p*Q))));m=C(C(C(-l)*r)+C(C(m*n)+C(C(q*p)+C(o*k))));r=C(C(D*Q)+C(A*m));k=C(C(B-r)*C(.5));q=C(C(t*Q)+C(A*J));o=C(C(D*I)+C(s*m));l=C(C(q+o)*C(.5));B=C(C(r+B)*C(.5));p=C(C(D*J)+C(t*m));M=C(C(s*Q)+C(A*I));r=C(C(p-M)*C(.5));n=C(C(o-q)*C(.5));p=C(C(p+M)*C(.5));A=C(A*Q);q=C(I*s);m=C(m*D);s=C(t*J);t=C(q+C(m+s));o=C(A-t);q=C(C(C(q+q)+o)*C(.5));m=C(C(C(m+m)+o)*C(.5));o=C(C(C(s+s)+o)*C(.5));if(C(A+t)!=C(0)){break f}q=C(q+C(1.1920928955078125e-7));m=C(m+C(1.1920928955078125e-7));o=C(o+C(1.1920928955078125e-7))}a=v[c+140>>2];z[a+48>>2]=m;v[a+32>>2]=0;v[a+36>>2]=0;z[a+16>>2]=m;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=258;z[a+56>>2]=n;z[a+52>>2]=p;v[a+40>>2]=0;z[a+24>>2]=n;z[a+20>>2]=p;z[a+12>>2]=-y;z[a+28>>2]=C(n*L)+C(C(m*H)+C(p*S));b=v[e+396>>2];z[a+64>>2]=P;u[a+76>>1]=x[a+76>>1]|(b&1?35:33)|64;z[a+68>>2]=z[e+388>>2];m=z[e+392>>2];z[a+108>>2]=C(B*L)+C(C(r*H)+C(o*S));u[a+158>>1]=258;z[a+60>>2]=m;z[a+136>>2]=B;z[a+132>>2]=o;z[a+128>>2]=r;v[a+120>>2]=0;v[a+112>>2]=0;v[a+116>>2]=0;z[a+104>>2]=B;z[a+100>>2]=o;z[a+96>>2]=r;v[a+88>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;z[a+92>>2]=-R;z[a+44>>2]=-m;u[a+156>>1]=x[a+156>>1]|(v[e+396>>2]&1?35:33)|64;z[a+144>>2]=z[e+384>>2];z[a+148>>2]=z[e+388>>2];m=z[e+392>>2];z[a+188>>2]=C(q*L)+C(C(l*H)+C(k*S));u[a+238>>1]=258;z[a+140>>2]=m;z[a+216>>2]=q;z[a+212>>2]=k;z[a+208>>2]=l;v[a+200>>2]=0;v[a+192>>2]=0;v[a+196>>2]=0;z[a+184>>2]=q;z[a+180>>2]=k;z[a+176>>2]=l;v[a+168>>2]=0;v[a+160>>2]=0;v[a+164>>2]=0;z[a+172>>2]=-E;z[a+124>>2]=-m;u[a+236>>1]=x[a+236>>1]|(v[e+396>>2]&1?35:33)|64;z[a+224>>2]=z[e+384>>2];z[a+228>>2]=z[e+388>>2];m=z[e+392>>2];z[a+220>>2]=m;z[a+204>>2]=-m;v[c+140>>2]=a+240;break e}if(O&16){m=z[e+440>>2];a=v[c+140>>2];v[c+140>>2]=a+80;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;r=z[c+24>>2];z[a+16>>2]=r;q=z[c+28>>2];z[a+20>>2]=q;o=z[c+32>>2];z[a+56>>2]=o;z[a+52>>2]=q;z[a+48>>2]=r;v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=o;z[a+12>>2]=y*C(-2);z[a+28>>2]=m;u[a+76>>1]=x[a+76>>1]|(v[e+380>>2]&1?35:33)|64;z[a+64>>2]=z[e+368>>2];z[a+68>>2]=z[e+372>>2];m=z[e+376>>2];z[a+60>>2]=m;z[a+44>>2]=-m}if(!(O&8)){break e}m=C(C(n*I)+C(C(l*J)+C(C(k*H)+C(L*p))));r=C(C(C(m*m)+C(-.5))*C(0));q=C(C(E*C(0))+C(C(y+y)+C(R*C(0))));if(!(d&16)){k=z[e+444>>2];a=v[c+140>>2];v[c+140>>2]=a+80;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;l=z[c+36>>2];z[a+16>>2]=l;o=z[c+40>>2];z[a+20>>2]=o;s=z[c+44>>2];z[a+56>>2]=s;z[a+52>>2]=o;z[a+48>>2]=l;v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=s;z[a+12>>2]=C(E*q)+C(r+C(m*C(C(y*C(0))-C(R+R))));z[a+28>>2]=k;u[a+76>>1]=x[a+76>>1]|(v[e+364>>2]&1?35:33)|64;z[a+64>>2]=z[e+352>>2];z[a+68>>2]=z[e+356>>2];k=z[e+360>>2];z[a+60>>2]=k;z[a+44>>2]=-k}if(d&32){break e}k=z[e+448>>2];a=v[c+140>>2];v[c+140>>2]=a+80;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;z[a+16>>2]=z[c+48>>2];z[a+20>>2]=z[c+52>>2];l=z[c+56>>2];v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=l;z[a+48>>2]=z[c+48>>2];z[a+52>>2]=z[c+52>>2];l=z[c+56>>2];z[a+28>>2]=k;z[a+12>>2]=-C(C(R*q)+C(r+C(m*C(C(E+E)+C(y*C(-0))))));z[a+56>>2]=l;u[a+76>>1]=x[a+76>>1]|(v[e+364>>2]&1?35:33)|64;z[a+64>>2]=z[e+352>>2];z[a+68>>2]=z[e+356>>2];m=z[e+360>>2];z[a+60>>2]=m;z[a+44>>2]=-m}O=c+88|0;V=c+76|0;g:{if(!(h&56)){break g}r=C(0);k=z[c+116>>2];l=z[c+104>>2];h:{if(l==C(0)){m=C(1);q=C(0);break h}r=C(C(1)/C(K(C(C(k*k)+C(C(C(l*l)+C(0))+C(0))))));m=C(k*r);q=C(r*C(0));r=C(l*r)}t=z[c+112>>2];s=C(q*t);n=z[c+108>>2];p=C(n*q);o=C(s+C(p+C(C(k*m)+C(l*r))));z[c+20>>2]=o;s=C(s+C(C(C(l*m)-C(k*r))-p));z[c+8>>2]=s;k=C(k*C(-q));p=C(q*l);l=C(C(r*n)+C(C(k+C(m*t))-p));z[c+16>>2]=l;k=C(p+C(C(k+C(m*n))-C(t*r)));z[c+12>>2]=k;i:{if((h&48)==48){j:{if(!w[e+478|0]){break j}k=z[e+252>>2];l=z[e+256>>2];o=z[e+248>>2];a=v[e+264>>2];v[c+256>>2]=v[e+260>>2];v[c+260>>2]=a;z[c+264>>2]=k>C(0)?C(0):o>C(0)?C(0):l;if(!F5(c+256|0,c+8|0,c+272|0,c+268|0)){break j}a=v[c+140>>2];v[c+140>>2]=a+80;l=z[c+232>>2];t=z[c+280>>2];k=z[c+236>>2];o=z[c+224>>2];p=z[c+276>>2];s=z[c+228>>2];n=z[c+272>>2];A=z[c+268>>2];v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;z[a+12>>2]=A;b=x[a+76>>1];T=b|64;u[a+76>>1]=T;t=C(t+t);n=C(n+n);p=C(p+p);D=C(C(l*t)+C(C(o*n)+C(s*p)));B=C(C(k*k)+C(-.5));y=C(C(l*D)+C(C(t*B)+C(k*C(C(o*p)-C(n*s)))));z[a+56>>2]=y;H=C(C(s*D)+C(C(p*B)+C(k*C(C(l*n)-C(t*o)))));z[a+52>>2]=H;k=C(C(o*D)+C(C(n*B)+C(k*C(C(s*t)-C(p*l)))));z[a+48>>2]=k;z[a+24>>2]=y;z[a+20>>2]=H;z[a+16>>2]=k;k=z[e+248>>2];k:{if(z[e+252>>2]>C(0)|k>C(0)){z[a+64>>2]=k;z[a+68>>2]=z[e+252>>2];b=b|81;break k}u[a+78>>1]=2049;z[a+64>>2]=z[e+240>>2];z[a+68>>2]=z[e+244>>2];b=T|(A>C(0)?24:16);if(!(z[e+240>>2]>C(0))){break k}b=b|4}v[a+44>>2]=0;u[a+76>>1]=b}if(!w[e+479|0]){break i}a=xa-16|0;xa=a;t=z[c+236>>2];k=z[c+20>>2];n=z[c+8>>2];p=z[c+224>>2];A=z[c+228>>2];l=z[c+12>>2];D=z[c+232>>2];B=z[c+16>>2];y=C(C(C(C(t*k)-C(n*p))-C(A*l))-C(D*B));J=z[e+284>>2];L=z[e+292>>2];E=z[e+288>>2];H=C(C(C(A*B)+C(C(t*n)+C(k*p)))-C(l*D));o=C(y+y);s=C(C(C(D*n)+C(C(t*l)+C(k*A)))-C(B*p));I=C(s+s);t=C(C(C(p*l)+C(C(t*B)+C(k*D)))-C(n*A));z[a+8>>2]=C(H*o)+C(I*t);n=C(C(y*o)+C(-1));z[a+4>>2]=C(s*I)+n;z[a>>2]=C(H*I)-C(t*o);b=c+136|0;T=e+268|0;G5(b,C(C9(l,C(k+C(1)))*C(4)),E,L,J,a,T);l=z[c+20>>2];p=z[c+16>>2];A=z[e+284>>2];D=z[e+300>>2];B=z[e+296>>2];k=C(t+t);z[a+8>>2]=C(t*k)+n;z[a+4>>2]=C(s*k)-C(H*o);z[a>>2]=C(s*o)+C(H*k);G5(b,C(C9(p,C(l+C(1)))*C(4)),B,D,A,a,T);xa=a+16|0;break i}b=h&32;l:{if(!(h&16)){break l}a=w[e+479|0];if(d&32){if(a){I=z[e+284>>2];J=z[e+292>>2];L=z[e+288>>2];t=z[c+228>>2];n=z[c+236>>2];p=z[c+224>>2];A=z[c+232>>2];E=C(C(C(t*l)+C(C(n*s)+C(o*p)))-C(k*A));D=C(C(C(C(n*o)-C(s*p))-C(t*k))-C(A*l));B=C(D+D);y=C(C(C(A*s)+C(C(n*k)+C(o*t)))-C(l*p));H=C(y+y);l=C(C(C(p*k)+C(C(n*l)+C(o*A)))-C(s*t));z[c+280>>2]=C(E*B)+C(H*l);z[c+272>>2]=C(E*H)-C(l*B);z[c+276>>2]=C(y*H)+C(C(D*B)+C(-1));G5(c+136|0,C(C9(k,C(o+C(1)))*C(4)),L,J,I,c+272|0,e+268|0);break l}o=C(C9(k,C(o+C(1)))*C(4));k=z[e+260>>2];G5(c+136|0,o,C(-k),k,z[e+256>>2],V,e+240|0);break l}if(!a){l=C(0);o=z[c+96>>2];s=z[c+32>>2];t=z[c+88>>2];n=z[c+24>>2];p=z[c+92>>2];A=z[c+28>>2];H=C(-C(C(o*s)+C(C(t*n)+C(p*A))));I=z[e+256>>2];D=z[e+260>>2];k=C(0);B=C(0);y=C(C(t*A)-C(n*p));p=C(C(p*s)-C(A*o));o=C(C(o*n)-C(s*t));s=C(C(y*y)+C(C(p*p)+C(o*o)));if(s>C(0)){l=C(C(1)/C(K(s)));B=C(y*l);k=C(o*l);l=C(p*l)}z[c+280>>2]=B;z[c+276>>2]=k;z[c+272>>2]=l;G5(c+136|0,B9(C(F(C(G(H,C(-1))),C(1)))),C(-D),D,I,c+272|0,e+240|0);break l}b9(v[37696],8,6908,1003,67569,0)}if(!b){break i}a=w[e+479|0];if(d&16){if(a){y=z[e+284>>2];H=z[e+300>>2];I=z[e+296>>2];o=z[c+232>>2];s=z[c+8>>2];t=z[c+236>>2];n=z[c+12>>2];k=z[c+20>>2];p=z[c+228>>2];l=z[c+16>>2];A=z[c+224>>2];J=C(C(C(o*s)+C(C(t*n)+C(k*p)))-C(l*A));D=C(C(C(A*n)+C(C(t*l)+C(k*o)))-C(s*p));B=C(D+D);L=C(C(C(p*l)+C(C(t*s)+C(k*A)))-C(n*o));o=C(C(C(C(t*k)-C(s*A))-C(p*n))-C(o*l));s=C(o+o);z[c+276>>2]=C(J*B)-C(L*s);z[c+272>>2]=C(J*s)+C(L*B);z[c+280>>2]=C(D*B)+C(C(o*s)+C(-1));G5(c+136|0,C(C9(l,C(k+C(1)))*C(4)),I,H,y,c+272|0,e+268|0);break i}o=C(C9(z[c+16>>2],C(z[c+20>>2]+C(1)))*C(4));k=z[e+264>>2];G5(c+136|0,o,C(-k),k,z[e+256>>2],O,e+240|0);break i}if(!a){l=C(0);o=z[c+84>>2];s=z[c+32>>2];t=z[c+76>>2];n=z[c+24>>2];p=z[c+80>>2];A=z[c+28>>2];H=C(C(o*s)+C(C(t*n)+C(p*A)));I=z[e+256>>2];D=z[e+264>>2];k=C(0);B=C(0);y=C(C(t*A)-C(n*p));p=C(C(p*s)-C(A*o));o=C(C(o*n)-C(s*t));s=C(C(y*y)+C(C(p*p)+C(o*o)));if(s>C(0)){l=C(C(1)/C(K(s)));B=C(l*C(-y));k=C(l*C(-o));l=C(l*C(-p))}z[c+280>>2]=B;z[c+276>>2]=k;z[c+272>>2]=l;G5(c+136|0,B9(C(F(C(G(H,C(-1))),C(1)))),C(-D),D,I,c+272|0,e+240|0);break i}b9(v[37696],8,6908,1019,67569,0)}if(!(h&8)){break g}q=C(q*q);q=C(K(C(C(m*m)+C(q+C(q+C(r*r))))));if(q!=C(0)){q=C(C(1)/q);m=C(m*q);r=C(r*q)}m=A9(C(F(C(G(m,C(-1))),C(1))));m=C(m+m);G5(c+136|0,r>2],z[e+232>>2],z[e+228>>2],c+24|0,e+212|0)}m:{if(!(h&7)){break m}n:{if(!w[e+476|0]){break n}r=C(0);m=C(0);q=C(0);a=v[e+456>>2];if(a&1){m=z[c+120>>2];q=C(C(m*z[c+72>>2])+C(0));r=C(C(m*z[c+64>>2])+C(0));m=C(C(m*z[c+68>>2])+C(0))}if(a&2){k=z[c+124>>2];q=C(q+C(k*z[c+84>>2]));r=C(r+C(k*z[c+76>>2]));m=C(m+C(k*z[c+80>>2]))}if(a&4){k=z[c+128>>2];q=C(q+C(k*z[c+96>>2]));r=C(r+C(k*z[c+88>>2]));m=C(m+C(k*z[c+92>>2]))}k=C(K(C(C(q*q)+C(C(r*r)+C(m*m)))));if(!(k>z[e+464>>2])){break n}t=z[e+124>>2];T=z[e+116>>2]>C(0);if(!(t>2]>C(0)?C(0):z[e+120>>2])))){break n}a=v[c+140>>2];v[c+140>>2]=a+80;l=C(C(1)/k);q=C(q*l);z[a+8>>2]=q;m=C(m*l);z[a+4>>2]=m;r=C(r*l);z[a>>2]=r;u[a+78>>1]=0;l=z[c+152>>2];o=z[c+144>>2];s=z[c+148>>2];z[a+40>>2]=q;z[a+36>>2]=m;z[a+32>>2]=r;z[a+24>>2]=C(o*m)-C(r*s);z[a+20>>2]=C(l*r)-C(q*o);z[a+16>>2]=C(s*q)-C(m*l);l=z[c+164>>2];o=z[c+156>>2];s=z[c+160>>2];k=C(t-k);z[a+12>>2]=k;z[a+56>>2]=C(o*m)-C(r*s);z[a+52>>2]=C(l*r)-C(q*o);z[a+48>>2]=C(s*q)-C(m*l);b=x[a+76>>1];m=z[e+112>>2];o:{if(T|m>C(0)){z[a+64>>2]=m;z[a+68>>2]=z[e+116>>2];b=b|17;break o}u[a+78>>1]=2049;z[a+64>>2]=z[e+104>>2];z[a+68>>2]=z[e+108>>2];b=b|(k>C(0)?24:16);if(!(z[e+104>>2]>C(0))){break o}b=b|4}v[a+44>>2]=0;u[a+76>>1]=b}if(!w[e+477|0]){break m}if(!(!(h&1)|!(z[e+152>>2]<=z[e+148>>2]))){H5(c+136|0,e+128|0,z[c+120>>2],c- -64|0)}if(!(!(h&2)|!(z[e+180>>2]<=z[e+176>>2]))){H5(c+136|0,e+156|0,z[c+124>>2],V)}if(!(h&4)|!(z[e+208>>2]<=z[e+204>>2])){break m}H5(c+136|0,e+184|0,z[c+128>>2],O)}b=c+120|0;p:{q:{a=(d&56)-16|0;if(a){if((a|0)==16){break q}else{break p}}a=v[c+140>>2];v[c+140>>2]=a+80;m=z[c+32>>2];r=z[c+96>>2];q=z[c+24>>2];k=z[c+92>>2];l=z[c+88>>2];o=z[c+28>>2];s=C(C(q*k)-C(l*o));z[a+56>>2]=s;t=C(C(m*l)-C(r*q));z[a+52>>2]=t;n=C(C(o*r)-C(k*m));z[a+48>>2]=n;v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=s;z[a+20>>2]=t;z[a+16>>2]=n;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=2048;u[a+76>>1]=x[a+76>>1]|80;z[a+12>>2]=-C(C(m*r)+C(C(q*l)+C(o*k)));d=d&-17;break p}a=v[c+140>>2];v[c+140>>2]=a+80;m=z[c+32>>2];r=z[c+84>>2];q=z[c+24>>2];k=z[c+80>>2];l=z[c+76>>2];o=z[c+28>>2];s=C(C(q*k)-C(l*o));z[a+56>>2]=s;t=C(C(m*l)-C(r*q));z[a+52>>2]=t;n=C(C(o*r)-C(k*m));z[a+48>>2]=n;v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=s;z[a+20>>2]=t;z[a+16>>2]=n;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=2048;u[a+76>>1]=x[a+76>>1]|80;z[a+12>>2]=-C(C(m*r)+C(C(q*l)+C(o*k)));d=d&-33}I5(c+136|0,c+224|0,c+192|0,b,d&7,d>>>3|0,c+8|0,c+272|0);m=z[f+16>>2];r=z[f+20>>2];q=z[c+8>>2];k=z[c+12>>2];z[i+8>>2]=z[c+16>>2]+z[f+24>>2];z[i+4>>2]=k+r;z[i>>2]=q+m;m=z[g+16>>2];r=z[g+20>>2];q=z[c+272>>2];k=z[c+276>>2];z[j+8>>2]=z[c+280>>2]+z[g+24>>2];z[j+4>>2]=k+r;z[j>>2]=q+m;xa=c+288|0;return(v[c+140>>2]-v[c+136>>2]|0)/80|0}function J2(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),y=C(0),A=C(0),E=C(0),F=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=0,oa=0,pa=C(0),qa=C(0),ra=0,sa=C(0),ta=0,ua=0,va=0,wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0);l=xa-560|0;xa=l;a:{if(!a){i=0;break a}i=x[i>>1];ta=i&16;ua=i&64;ra=i&128;n=z[c+8>>2];t=z[c+20>>2];U=C(C(n-t)*C(.5));w=z[c>>2];A=z[c+12>>2];H=C(C(w-A)*C(.5));y=z[c+4>>2];E=z[c+16>>2];Y=C(C(y-E)*C(.5));p=C(K(C(C(U*U)+C(C(H*H)+C(Y*Y)))));if(p==C(0)){i=M2(a,b,c,z[c+24>>2],d,e,f,g,h,j,(ra|0)!=0,(ua|0)!=0,!ta);break a}va=ra>>>7|j;q=z[d+8>>2];m=z[d>>2];o=z[d+4>>2];J=C(C(n+t)*C(.5));z[l+552>>2]=J;M=C(C(y+E)*C(.5));z[l+548>>2]=M;N=C(C(w+A)*C(.5));z[l+544>>2]=N;I=C(C(1)/p);if(!(C(D(C(C(q*C(U*I))+C(C(m*C(H*I))+C(o*C(Y*I))))))>2]=y;w=C(A-w);z[l+288>>2]=w;n=C(t-n);z[l+296>>2]=n;n=C(C(n*n)+C(C(w*w)+C(y*y)));z[l+300>>2]=n;z[l+304>>2]=n!=C(0)?C(C(1)/n):C(0);n=C(C(p*q)+J);z[l+136>>2]=n;t=C(C(p*o)+M);z[l+132>>2]=t;p=C(N+C(p*m));z[l+128>>2]=p;Z=f?v[f>>2]:Z;J=C(C(n*q)+C(C(p*m)+C(o*t)));y=C(2);i=-1;p=e;f=0;o=C(0);n=C(0);t=C(0);b:{c:{while(1){d:{k=f?(f|0)==(Z|0)?0:f:Z;T=B(k,36)+b|0;e:{if(K2(l+128|0,d,p,z[c+24>>2],T,J)){break e}w=z[T+20>>2];A=z[T+32>>2];m=z[T+8>>2];q=z[T>>2];E=C(z[T+12>>2]-q);M=z[T+4>>2];N=C(z[T+28>>2]-M);I=C(z[T+24>>2]-q);M=C(z[T+16>>2]-M);q=C(C(E*N)-C(I*M));z[l+200>>2]=q;O=C(w-m);m=C(A-m);w=C(C(O*I)-C(m*E));z[l+196>>2]=w;m=C(C(M*m)-C(N*O));z[l+192>>2]=m;if(!va&C(C(q*z[d+8>>2])+C(C(m*z[d>>2])+C(w*z[d+4>>2])))>C(0)){break e}if(!ta){if(G$(l+192|0,T,T+12|0,T+24|0,c,l+288|0)){break d}w=z[l+196>>2];m=z[l+192>>2];q=z[l+200>>2]}A=C(K(C(C(q*q)+C(C(m*m)+C(w*w)))));if(A==C(0)){break e}r=q;q=C(C(1)/A);z[l+200>>2]=r*q;z[l+196>>2]=w*q;z[l+192>>2]=m*q;if(!L2(T,l+192|0,l+128|0,z[c+24>>2],d,l+152|0,l+112|0,0)){break e}q=z[l+152>>2];if(q>e){break e}M=C(C(G(p>2];w=z[l+192>>2];A=z[l+196>>2];E=C(-C(D(C(C(m*z[d+8>>2])+C(C(w*z[d>>2])+C(A*z[d+4>>2]))))));if(!(qq)){break e}}if(ua){break c}t=w;n=A;o=m;y=E;p=q;i=k}f=f+1|0;if((f|0)!=(a|0)){continue}break b}break}e=z[d>>2];p=z[d+4>>2];z[h+8>>2]=-z[d+8>>2];z[h+4>>2]=-p;z[h>>2]=-e;u[g+12>>1]=1026;v[g+8>>2]=k;e=z[d>>2];p=z[d+4>>2];q=z[d+8>>2];v[g+40>>2]=0;z[g+36>>2]=-q;z[g+32>>2]=-p;z[g+28>>2]=-e;i=1;break a}t=w;n=A;o=m;p=q;i=k}if((i|0)!=-1){N2(l+192|0,l+152|0,l+128|0,d,p,B(i,36)+b|0);if(!(!(C(C(o*z[d+8>>2])+C(C(t*z[d>>2])+C(n*z[d+4>>2])))>C(0))|(j|!ra))){z[l+160>>2]=-z[l+160>>2];z[l+156>>2]=-z[l+156>>2];z[l+152>>2]=-z[l+152>>2]}z[g+16>>2]=z[l+192>>2];z[g+20>>2]=z[l+196>>2];z[g+24>>2]=z[l+200>>2];z[g+28>>2]=z[l+152>>2];z[g+32>>2]=z[l+156>>2];e=z[l+160>>2];z[g+40>>2]=p;z[g+36>>2]=e;u[g+12>>1]=3;v[g+8>>2]=i;z[h+8>>2]=o;z[h+4>>2]=n;z[h>>2]=t}i=(i|0)!=-1;break a}v[g+8>>2]=-1;i=0;i=f?v[f>>2]:i;ka=z[c+24>>2];p=C(E-y);z[l+132>>2]=p;w=C(A-w);z[l+128>>2]=w;n=C(t-n);z[l+136>>2]=n;p=C(C(n*n)+C(C(w*w)+C(p*p)));z[l+140>>2]=p;z[l+144>>2]=p!=C(0)?C(C(1)/p):C(0);ia=C(C(J*q)+C(C(N*m)+C(o*M)));p=C(2);q=e;f:{while(1){oa=na?(i|0)==(na|0)?0:na:i;f=B(oa,36)+b|0;o=z[f+20>>2];m=z[f+8>>2];n=z[f+32>>2];t=z[f>>2];w=C(z[f+12>>2]-t);A=z[f+4>>2];y=C(z[f+28>>2]-A);t=C(z[f+24>>2]-t);A=C(z[f+16>>2]-A);E=C(C(w*y)-C(t*A));z[l+120>>2]=E;o=C(o-m);m=C(n-m);n=C(C(o*t)-C(m*w));z[l+116>>2]=n;m=C(C(A*m)-C(y*o));z[l+112>>2]=m;g:{if(!va&C(C(E*z[d+8>>2])+C(C(m*z[d>>2])+C(n*z[d+4>>2])))>C(0)){break g}T=f+24|0;Z=f+12|0;if(k){if(!w$(k,f,Z,T)){break g}}h:{if(ta){break h}if(!G$(l+112|0,f,Z,T,c,l+128|0)){break h}e=z[d>>2];p=z[d+4>>2];z[h+8>>2]=-z[d+8>>2];z[h+4>>2]=-p;z[h>>2]=-e;u[g+12>>1]=1026;v[g+8>>2]=oa;e=z[d>>2];p=z[d+4>>2];q=z[d+8>>2];v[g+40>>2]=0;z[g+36>>2]=-q;z[g+32>>2]=-p;z[g+28>>2]=-e;i=1;break a}m=z[f+32>>2];t=C(U+m);o=z[f+28>>2];w=C(Y+o);n=z[f+24>>2];A=C(H+n);y=z[f+20>>2];_=C(U+y);E=z[f+16>>2];V=C(Y+E);J=z[f+12>>2];P=C(H+J);O=z[f+8>>2];M=C(U+O);Q=z[f+4>>2];N=C(Y+Q);R=z[f>>2];I=C(H+R);X=C(m-U);$=C(o-Y);aa=C(n-H);y=C(y-U);E=C(E-Y);J=C(J-H);O=C(O-U);Q=C(Q-Y);R=C(R-H);ga=z[l+120>>2];ca=z[l+112>>2];ba=z[l+116>>2];i:{if(C(C(ga*U)+C(C(ca*H)+C(Y*ba)))>=C(0)){z[l+292>>2]=N;z[l+304>>2]=V;z[l+288>>2]=I;z[l+312>>2]=A;z[l+316>>2]=w;z[l+300>>2]=P;m=C(P-I);o=C(w-N);F=C(A-I);s=C(V-N);n=C(C(m*o)-C(F*s));z[l+296>>2]=M;z[l+320>>2]=t;z[l+308>>2]=_;r=C(_-M);L=C(r*F);F=C(t-M);m=C(L-C(F*m));o=C(C(s*F)-C(o*r));break i}z[l+292>>2]=Q;z[l+304>>2]=E;z[l+288>>2]=R;z[l+312>>2]=aa;z[l+316>>2]=$;z[l+300>>2]=J;m=C(J-R);o=C($-Q);F=C(aa-R);s=C(E-Q);n=C(C(m*o)-C(F*s));z[l+296>>2]=O;z[l+320>>2]=X;z[l+308>>2]=y;r=C(y-O);L=C(r*F);F=C(X-O);m=C(L-C(F*m));o=C(C(s*F)-C(o*r))}z[l+200>>2]=n;z[l+196>>2]=m;z[l+192>>2]=o;z[l+324>>2]=J;z[l+336>>2]=P;z[l+332>>2]=y;z[l+356>>2]=t;z[l+348>>2]=A;z[l+344>>2]=_;z[l+340>>2]=V;z[l+352>>2]=w;z[l+328>>2]=E;n=C(P-J);W=C(w-E);L=C(A-J);m=C(V-E);o=C(C(n*W)-C(L*m));F=z[d+8>>2];S=C(t-y);ea=C(_-y);m=C(C(m*S)-C(W*ea));s=z[d>>2];r=z[d+4>>2];n=C(C(ea*L)-C(S*n));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+356>>2]=_;z[l+352>>2]=V;z[l+348>>2]=P;z[l+344>>2]=t;z[l+340>>2]=w;z[l+336>>2]=A;n=C(-n);m=C(-m);o=C(-o)}z[l+212>>2]=o;z[l+208>>2]=n;z[l+204>>2]=m;z[l+380>>2]=t;z[l+376>>2]=w;z[l+372>>2]=A;z[l+368>>2]=y;z[l+392>>2]=X;z[l+360>>2]=J;z[l+384>>2]=aa;z[l+364>>2]=E;z[l+388>>2]=$;m=C($-E);n=C(aa-J);o=C(C(L*m)-C(n*W));da=W;W=C(X-y);m=C(C(da*W)-C(m*S));n=C(C(S*n)-C(W*L));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+392>>2]=t;z[l+388>>2]=w;z[l+384>>2]=A;z[l+380>>2]=X;z[l+376>>2]=$;z[l+372>>2]=aa;n=C(-n);m=C(-m);o=C(-o)}z[l+224>>2]=o;z[l+220>>2]=n;z[l+216>>2]=m;z[l+396>>2]=R;z[l+408>>2]=aa;z[l+404>>2]=O;z[l+428>>2]=t;z[l+420>>2]=A;z[l+416>>2]=X;z[l+400>>2]=Q;z[l+424>>2]=w;z[l+412>>2]=$;n=C(aa-R);W=C(w-Q);L=C(A-R);m=C($-Q);o=C(C(n*W)-C(L*m));S=C(t-O);ea=C(X-O);m=C(C(m*S)-C(W*ea));n=C(C(ea*L)-C(S*n));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+428>>2]=X;z[l+424>>2]=$;z[l+420>>2]=aa;z[l+416>>2]=t;z[l+412>>2]=w;z[l+408>>2]=A;n=C(-n);m=C(-m);o=C(-o)}z[l+236>>2]=o;z[l+232>>2]=n;z[l+228>>2]=m;z[l+452>>2]=t;z[l+448>>2]=w;z[l+444>>2]=A;z[l+440>>2]=O;z[l+464>>2]=M;z[l+432>>2]=R;z[l+456>>2]=I;z[l+436>>2]=Q;z[l+460>>2]=N;m=C(N-Q);n=C(I-R);o=C(C(L*m)-C(n*W));X=C(M-O);m=C(C(W*X)-C(m*S));n=C(C(S*n)-C(X*L));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+464>>2]=t;z[l+460>>2]=w;z[l+456>>2]=A;z[l+452>>2]=M;z[l+448>>2]=N;z[l+444>>2]=I;n=C(-n);m=C(-m);o=C(-o)}z[l+248>>2]=o;z[l+244>>2]=n;z[l+240>>2]=m;z[l+468>>2]=I;z[l+480>>2]=P;z[l+476>>2]=M;z[l+500>>2]=y;z[l+492>>2]=J;z[l+488>>2]=_;z[l+472>>2]=N;z[l+496>>2]=E;z[l+484>>2]=V;n=C(P-I);t=C(E-N);w=C(J-I);m=C(V-N);o=C(C(n*t)-C(w*m));A=C(y-M);X=C(_-M);m=C(C(m*A)-C(t*X));n=C(C(X*w)-C(A*n));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+500>>2]=_;z[l+496>>2]=V;z[l+492>>2]=P;z[l+488>>2]=y;z[l+484>>2]=E;z[l+480>>2]=J;n=C(-n);m=C(-m);o=C(-o)}z[l+260>>2]=o;z[l+256>>2]=n;z[l+252>>2]=m;z[l+524>>2]=y;z[l+520>>2]=E;z[l+516>>2]=J;z[l+512>>2]=M;z[l+536>>2]=O;z[l+504>>2]=I;z[l+528>>2]=R;z[l+508>>2]=N;z[l+532>>2]=Q;m=C(Q-N);n=C(R-I);o=C(C(w*m)-C(n*t));L=t;t=C(O-M);m=C(C(L*t)-C(m*A));n=C(C(A*n)-C(t*w));if(C(C(o*F)+C(C(m*s)+C(r*n)))>C(0)){z[l+536>>2]=y;z[l+532>>2]=E;z[l+528>>2]=J;z[l+524>>2]=O;z[l+520>>2]=Q;z[l+516>>2]=R;o=C(-o);n=C(-n);m=C(-m)}z[l+272>>2]=o;z[l+268>>2]=n;z[l+264>>2]=m;m=C(K(C(C(ga*ga)+C(C(ca*ca)+C(ba*ba)))));if(m>C(0)){m=C(C(1)/m);ga=C(ga*m);z[l+120>>2]=ga;ba=C(ba*m);z[l+116>>2]=ba;ca=C(ca*m);z[l+112>>2]=ca}o=C(-C(D(C(C(ga*F)+C(C(ca*s)+C(r*ba))))));f=0;while(1){T=(l+192|0)+B(f,12)|0;j:{if(!va&C(C(z[T+8>>2]*z[d+8>>2])+C(C(z[T>>2]*z[d>>2])+C(z[T+4>>2]*z[d+4>>2])))>C(0)){break j}Z=(l+288|0)+B(f,36)|0;if(K2(l+544|0,d,q,ka,Z,ia)){break j}m=z[T+8>>2];n=z[T>>2];t=z[T+4>>2];w=C(K(C(C(m*m)+C(C(n*n)+C(t*t)))));if(w==C(0)){break j}r=n;n=C(C(1)/w);z[T>>2]=r*n;z[T+4>>2]=t*n;z[T+8>>2]=m*n;if(!L2(Z,T,l+544|0,ka,d,l+96|0,l+80|0,0)){break j}m=z[l+96>>2];if(m>e){break j}n=C(C(G(m>q?m:q,C(1)))*C(.0010000000474974513));if(!(C(q-n)>m|C(q+n)>m&p>o|m==C(0))){if(!(p==o&m>2]=oa;z[l+152>>2]=z[Z>>2];z[l+156>>2]=z[Z+4>>2];z[l+160>>2]=z[Z+8>>2];z[l+164>>2]=z[Z+12>>2];z[l+168>>2]=z[Z+16>>2];z[l+172>>2]=z[Z+20>>2];z[l+176>>2]=z[Z+24>>2];z[l+180>>2]=z[Z+28>>2];z[l+184>>2]=z[Z+32>>2];la=z[l+120>>2];ma=z[l+116>>2];fa=z[l+112>>2];if(ua){break f}p=o;q=m}f=f+1|0;if((f|0)!=7){continue}break}}na=na+1|0;if((na|0)!=(a|0)){continue}break}oa=v[g+8>>2];m=q}if((oa|0)==-1){i=0;break a}z[g+40>>2]=m;z[h+8>>2]=la;z[h+4>>2]=ma;z[h>>2]=fa;N2(g+16|0,g+28|0,l+544|0,d,m,l+152|0);if(!(!(C(C(la*z[d+8>>2])+C(C(fa*z[d>>2])+C(ma*z[d+4>>2])))>C(0))|(j|!ra))){z[g+28>>2]=-z[g+28>>2];z[g+36>>2]=-z[g+36>>2];z[g+32>>2]=-z[g+32>>2]}i=1;a=v[g+8>>2];if((a|0)==-1){break a}p=z[d>>2];q=z[d+4>>2];m=z[d+8>>2];e=z[g+40>>2];o=z[c>>2];n=z[c+4>>2];t=z[c+8>>2];v[l+92>>2]=0;m=C(e*m);z[l+88>>2]=t+m;q=C(e*q);z[l+84>>2]=n+q;e=C(e*p);z[l+80>>2]=o+e;p=z[c+12>>2];o=z[c+16>>2];n=z[c+20>>2];v[l+76>>2]=0;z[l+72>>2]=m+n;z[l+68>>2]=q+o;z[l+64>>2]=e+p;a=B(a,36)+b|0;b=v[a+4>>2];c=v[a>>2];e=z[a+8>>2];v[l+60>>2]=0;z[l+56>>2]=e;v[l+48>>2]=c;v[l+52>>2]=b;b=v[a+16>>2];c=v[a+12>>2];e=z[a+20>>2];v[l+44>>2]=0;z[l+40>>2]=e;v[l+32>>2]=c;v[l+36>>2]=b;b=v[a+28>>2];c=v[a+24>>2];e=z[a+32>>2];v[l+28>>2]=0;z[l+24>>2]=e;v[l+16>>2]=c;v[l+20>>2]=b;a=xa-112|0;xa=a;M=z[l+80>>2];c=l- -64|0;N=z[c>>2];I=z[l+84>>2];O=z[c+4>>2];Q=z[l+88>>2];R=z[c+8>>2];v[a+108>>2]=0;z[a+104>>2]=R-Q;z[a+100>>2]=O-I;z[a+96>>2]=N-M;y=z[l+48>>2];o=z[l+32>>2];E=z[l+52>>2];w=z[l+36>>2];J=z[l+56>>2];A=z[l+40>>2];v[a+92>>2]=0;e=C(A-J);z[a+88>>2]=e;p=C(w-E);z[a+84>>2]=p;q=C(o-y);z[a+80>>2]=q;U=z[l+16>>2];H=z[l+20>>2];Y=z[l+24>>2];v[a+76>>2]=0;m=C(Y-J);z[a+72>>2]=m;n=C(H-E);z[a+68>>2]=n;t=C(U-y);z[a+64>>2]=t;v[a+60>>2]=0;z[a+56>>2]=Y-A;z[a+52>>2]=H-w;z[a+48>>2]=U-o;ga=C(C(e*e)+C(C(q*q)+C(p*p)));ca=C(C(m*m)+C(C(t*t)+C(n*n)));o=C(C(e*m)+C(C(q*t)+C(p*n)));w=C(C(ga*ca)-C(o*o));w=w>C(0)?C(C(1)/w):C(0);U=C(C(q*n)-C(t*p));H=C(C(p*m)-C(n*e));V=C(C(e*t)-C(m*q));A=C(C(1)/C(K(C(C(U*U)+C(C(H*H)+C(V*V))))));k:{l:{Y=C(U*A);_=C(H*A);V=C(V*A);A=C(C(C(Q-J)*Y)+C(C(C(M-y)*_)+C(C(I-E)*V)));M=C(C(C(R-J)*Y)+C(C(C(N-y)*_)+C(C(O-E)*V)));if(!(C(A*M)>2];O=z[a+96>>2];Q=z[a+100>>2];N=C(C(C(-1)/C(C(Y*I)+C(C(_*O)+C(V*Q))))*A);I=C(z[l+88>>2]+C(I*N));J=C(I-J);r=C(J*e);O=C(z[l+80>>2]+C(O*N));e=C(O-y);s=C(e*q);q=C(z[l+84>>2]+C(Q*N));y=C(q-E);p=C(r+C(s+C(y*p)));m=C(C(J*m)+C(C(e*t)+C(y*n)));e=C(w*C(C(ca*p)-C(o*m)));if(!(e>=C(-1.1920928955078125e-7))|!(e<=C(1.0000001192092896))){break l}p=C(w*C(C(ga*m)-C(o*p)));if(!(p>=C(-1.1920928955078125e-7))|!(p<=C(1.0000001192092896))|!(C(e+p)>2]=q;z[l+96>>2]=O;v[l+108>>2]=0;z[l+104>>2]=I;b=v[l+100>>2];v[l+112>>2]=v[l+96>>2];v[l+116>>2]=b;b=v[l+108>>2];v[l+120>>2]=v[l+104>>2];v[l+124>>2]=b;v[l>>2]=0;break k}ka=z[l+40>>2];la=z[l+32>>2];ma=z[l+36>>2];N=z[a+56>>2];I=z[a+48>>2];O=z[a+52>>2];b=a- -64|0;Q=z[b+8>>2];R=z[b>>2];U=z[b+4>>2];e=z[a+104>>2];p=z[a+96>>2];q=z[a+100>>2];H=C(C(e*e)+C(C(p*p)+C(q*q)));P=C(C(1)/H);m=z[a+88>>2];n=z[a+80>>2];t=z[a+84>>2];ja=C(C(p*n)+C(q*t));F=C(C(e*m)+ja);wa=C(m*m);pa=C(C(n*n)+C(t*t));s=C(wa+pa);r=C(C(H*s)-C(F*F));b=a+32|0;fa=F;da=C(C(1)/s);y=z[l+88>>2];X=z[l+56>>2];ba=C(y-X);E=z[l+80>>2];$=z[l+48>>2];W=C(E-$);J=z[l+84>>2];aa=z[l+52>>2];L=C(J-aa);S=C(C(m*ba)+C(C(n*W)+C(t*L)));ia=s;s=C(C(e*ba)+C(C(p*W)+C(q*L)));F=C(C(C(F*S)-C(ia*s))/r);F=FC(0)?F:C(0)))));F=FC(0)?F:C(0);s=C(P*C(C(fa*F)-s));s=sC(0)?s:C(0);z[b+12>>2]=ba;r=C(C(Q*Q)+C(C(R*R)+C(U*U)));s=C(C(e*Q)+C(C(p*R)+C(q*U)));W=C(C(H*r)-C(s*s));da=s;sa=C(C(1)/r);fa=C(y-X);L=fa;ia=C(E-$);S=ia;ea=C(J-aa);ha=C(C(Q*L)+C(C(R*S)+C(U*ea)));qa=r;ya=C(q*ea);r=C(C(e*L)+C(C(p*S)+ya));s=C(C(C(s*ha)-C(qa*r))/W);s=sC(0)?s:C(0)))));s=sC(0)?s:C(0);r=C(P*C(C(da*s)-r));r=rC(0)?r:C(0);z[b+8>>2]=W;L=C(C(N*N)+C(C(I*I)+C(O*O)));r=C(C(e*N)+C(C(p*I)+C(q*O)));S=C(C(H*L)-C(r*r));da=r;Ba=C(C(1)/L);ha=C(y-ka);sa=C(E-la);za=C(J-ma);Aa=C(C(N*ha)+C(C(I*sa)+C(O*za)));qa=L;L=C(C(e*ha)+C(C(p*sa)+C(q*za)));r=C(C(C(r*Aa)-C(qa*L))/S);r=rC(0)?r:C(0)))));r=rC(0)?r:C(0);L=C(P*C(C(da*r)-L));L=LC(0)?L:C(0);z[b+4>>2]=L;da=H;H=C(wa+pa);S=C(C(e*m)+ja);ja=C(C(da*H)-C(S*S));da=P;ha=C(C(1)/H);P=C(C(m*fa)+C(C(n*ia)+C(t*ea)));qa=P;ea=C(S*P);P=C(C(e*fa)+C(C(p*ia)+ya));H=C(C(ea-C(H*P))/ja);H=HC(0)?H:C(0)))));H=HC(0)?H:C(0);P=C(da*C(C(S*H)-P));P=PC(0)?P:C(0);z[b>>2]=P;z[a+28>>2]=F;z[a+24>>2]=s;z[a+20>>2]=r;z[a+16>>2]=H;S=C(C(E+C(p*ba))-C($+C(n*F)));fa=C(S*S);S=C(C(J+C(q*ba))-C(aa+C(t*F)));F=C(C(y+C(e*ba))-C(X+C(m*F)));z[a+12>>2]=fa+C(C(S*S)+C(F*F));R=C(C(E+C(p*W))-C($+C(R*s)));F=C(R*R);R=C(C(J+C(q*W))-C(aa+C(U*s)));Q=C(C(y+C(e*W))-C(X+C(Q*s)));z[a+8>>2]=F+C(C(R*R)+C(Q*Q));I=C(C(E+C(p*L))-C(la+C(I*r)));s=C(I*I);I=C(C(J+C(q*L))-C(ma+C(O*r)));N=C(C(y+C(e*L))-C(ka+C(N*r)));z[a+4>>2]=s+C(C(I*I)+C(N*N));p=C(C(E+C(p*P))-C($+C(n*H)));n=C(p*p);p=C(C(J+C(q*P))-C(aa+C(t*H)));e=C(C(y+C(e*P))-C(X+C(m*H)));z[a>>2]=n+C(C(p*p)+C(e*e));y=z[a>>2];E=z[a+4>>2];s=z[a+8>>2];j=!(y>=E)|!(s>E);k=!(y>2];ba=z[l+32>>2];W=z[l+36>>2];L=z[l+40>>2];e=z[l+80>>2];p=z[l+84>>2];q=z[l+88>>2];m=z[l+56>>2];N=z[c+8>>2];n=z[l+48>>2];I=z[c>>2];t=z[l+52>>2];O=z[c+4>>2];S=z[a+48>>2];ka=z[a+52>>2];Q=z[a+16>>2];R=z[a+24>>2];la=z[a+56>>2];U=z[a+20>>2];ma=z[a+96>>2];fa=z[a+100>>2];ia=z[a+104>>2];H=z[a+72>>2];P=z[a+64>>2];X=z[a+68>>2];$=z[a+88>>2];aa=z[a+80>>2];F=z[a+84>>2];v[l+124>>2]=0;ea=C(M*M);r=C(A*A);b=ea>r;ja=k?j?s:E:y;c=ja>r;y=C(N-C(Y*M));s=C(y-m);E=C(I-C(_*M));r=C(E-n);M=C(O-C(V*M));pa=C(M-t);ha=C(C($*s)+C(C(aa*r)+C(F*pa)));r=C(C(s*H)+C(C(r*P)+C(pa*X)));s=C(w*C(C(ca*ha)-C(o*r)));r=C(w*C(C(ga*r)-C(o*ha)));f=s>=C(-1.1920928955078125e-7)&s<=C(1.0000001192092896)&(r>=C(-1.1920928955078125e-7)&r<=C(1.0000001192092896))&C(s+r)=C(-1.1920928955078125e-7)&V<=C(1.0000001192092896)&(o>=C(-1.1920928955078125e-7)&o<=C(1.0000001192092896))&C(V+o)>2]=q;r=b?p:O;o=p;p=C(p+C(fa*J));p=h?r:f?c?o:p:d?p:O;z[l+116>>2]=p;r=b?e:I;o=e;e=C(e+C(ma*J));e=h?r:f?c?o:e:d?e:I;z[l+112>>2]=e;v[l+108>>2]=0;m=k?j?C(m+C(R*H)):C(L+C(U*la)):C(m+C(Q*$));m=h?b?Y:y:f?c?Y:m:d?m:y;z[l+104>>2]=m;o=k?j?C(t+C(R*X)):C(W+C(U*ka)):C(t+C(Q*F));o=h?b?A:M:f?c?A:o:d?o:M;z[l+100>>2]=o;n=k?j?C(n+C(R*P)):C(ba+C(U*S)):C(n+C(Q*aa));n=h?b?_:E:f?c?_:n:d?n:E;z[l+96>>2]=n;q=C(m-q);e=C(n-e);m=C(e*e);e=C(o-p);z[l>>2]=C(q*q)+C(m+C(e*e))}xa=a+112|0;a=v[l+100>>2];b=v[l+96>>2];z[g+24>>2]=z[l+104>>2];v[g+16>>2]=b;v[g+20>>2]=a;u[g+12>>1]=3}xa=l+560|0;return i}function uZ(a,b,c,d,e,f,g,h,i,k,m,n){var o=0,r=C(0),s=C(0),t=C(0),u=C(0),y=0,A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=0,Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=0,Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=0,qa=0,ra=0,sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=0,ya=0,za=0,Aa=0,Ca=0,Da=C(0),Ea=C(0),Fa=C(0),Ga=0;pa=xa-544|0;xa=pa;o=pa;t=z[e+4>>2];u=C(t+t);r=z[e+8>>2];J=C(u*r);s=z[e>>2];H=C(s+s);A=z[e+12>>2];L=C(H*A);E=C(J-L);z[o+524>>2]=E;J=C(J+L);z[o+516>>2]=J;s=C(C(1)-C(s*H));L=C(t*u);G=C(s-L);z[o+528>>2]=G;O=s;s=C(r+r);F=C(r*s);I=C(O-F);z[o+512>>2]=I;r=C(H*r);u=C(u*A);M=C(r+u);z[o+520>>2]=M;L=C(C(C(1)-L)-F);z[o+496>>2]=L;t=C(H*t);H=C(s*A);F=C(t-H);z[o+508>>2]=F;T=C(t+H);z[o+500>>2]=T;V=C(r-u);z[o+504>>2]=V;Z=z[e+16>>2];z[o+532>>2]=Z;U=z[e+20>>2];z[o+536>>2]=U;Q=z[e+24>>2];z[o+540>>2]=Q;t=z[f+4>>2];u=C(t+t);r=z[f+8>>2];O=C(u*r);s=z[f>>2];H=C(s+s);A=z[f+12>>2];R=C(H*A);$=C(O-R);z[o+476>>2]=$;O=C(O+R);z[o+468>>2]=O;s=C(C(1)-C(s*H));R=C(t*u);aa=C(s-R);z[o+480>>2]=aa;ga=s;s=C(r+r);X=C(r*s);ba=C(ga-X);z[o+464>>2]=ba;r=C(H*r);u=C(u*A);ca=C(r+u);z[o+472>>2]=ca;R=C(C(C(1)-R)-X);z[o+448>>2]=R;t=C(H*t);H=C(s*A);X=C(t-H);z[o+460>>2]=X;da=C(t+H);z[o+452>>2]=da;r=C(r-u);z[o+456>>2]=r;ea=z[f+16>>2];z[o+484>>2]=ea;ha=z[f+20>>2];z[o+488>>2]=ha;t=z[f+24>>2];z[o+492>>2]=t;ga=t;fa=r;r=z[b>>2];t=z[b+4>>2];H=z[b+8>>2];u=z[a>>2];s=z[a+4>>2];A=z[a+8>>2];z[o+440>>2]=C(ga+C(C(C(fa*r)+C(O*t))+C(aa*H)))-C(Q+C(C(C(V*u)+C(J*s))+C(G*A)));z[o+436>>2]=C(ha+C(C(C(da*r)+C(ba*t))+C($*H)))-C(U+C(C(C(T*u)+C(I*s))+C(E*A)));z[o+432>>2]=C(ea+C(C(C(R*r)+C(X*t))+C(ca*H)))-C(Z+C(C(C(L*u)+C(F*s))+C(M*A)));r=z[g>>2];y=o+432|0;Ba[v[a+64>>2]](a,y,o+496|0,i,o+192|0,o+144|0);t=z[o+192>>2];H=z[o+144>>2];Ba[v[b+64>>2]](b,y,o+448|0,k,o+368|0,o+320|0);a:{b:{u=z[o+368>>2];if(!(u>C(r+H))){s=r;r=z[o+320>>2];if(!(t>C(s+r))){break b}}a=0;break a}H=C(H-u);r=C(r-t);z[o+428>>2]=r>H?H:r;t=z[e+8>>2];H=z[e+4>>2];r=z[e+12>>2];u=z[e>>2];A=z[f>>2];R=z[e+16>>2];$=z[f+16>>2];s=C(R-$);F=C(s+s);aa=z[e+20>>2];X=z[f+20>>2];s=C(aa-X);I=C(s+s);J=z[f+4>>2];L=z[f+8>>2];ba=z[e+24>>2];ca=z[f+24>>2];s=C(ba-ca);M=C(s+s);T=C(C(C(C(-A)*F)-C(I*J))-C(L*M));s=z[f+12>>2];U=C(C(s*s)+C(-.5));z[o+412>>2]=C(C(M*U)+C(s*C(C(J*F)-C(A*I))))-C(L*T);z[o+408>>2]=C(C(I*U)+C(s*C(C(A*M)-C(L*F))))-C(J*T);da=C(u*J);ea=C(s*t);ha=C(r*L);ia=C(A*H);G=C(da+C(C(ea-ha)-ia));ma=C(t*A);fa=C(s*H);na=C(r*J);oa=C(L*u);V=C(ma+C(C(fa-na)-oa));Q=C(V+V);ka=C(G*Q);E=C(C(L*t)+C(C(J*H)+C(C(s*r)+C(A*u))));sa=C(H*L);ta=C(s*u);ua=C(r*A);va=C(J*t);O=C(sa+C(C(ta-ua)-va));Z=C(O+O);la=C(E*Z);z[o+396>>2]=ka-la;z[o+388>>2]=la+ka;O=C(C(1)-C(O*Z));ka=C(V*Q);z[o+400>>2]=O-ka;ga=O;O=C(G+G);la=C(G*O);z[o+384>>2]=ga-la;z[o+404>>2]=C(C(F*U)+C(s*C(C(L*I)-C(J*M))))-C(A*T);s=C(G*Z);A=C(E*Q);z[o+392>>2]=s+A;J=C(Z*V);L=C(E*O);z[o+380>>2]=J-L;z[o+376>>2]=s-A;z[o+372>>2]=J+L;z[o+368>>2]=C(C(1)-ka)-la;s=C($-R);J=C(s+s);s=C(X-aa);L=C(s+s);s=C(ca-ba);G=C(s+s);F=C(C(C(C(-u)*J)-C(L*H))-C(t*G));T=C(C(r*r)+C(-.5));z[o+364>>2]=C(C(G*T)+C(r*C(C(H*J)-C(u*L))))-C(t*F);z[o+360>>2]=C(C(L*T)+C(r*C(C(u*G)-C(t*J))))-C(H*F);A=C(va+C(C(ua-ta)-sa));s=C(A+A);I=C(oa+C(C(na-fa)-ma));M=C(I+I);V=C(C(1)-C(A*s));Z=C(I*M);z[o+352>>2]=V-Z;A=C(ia+C(C(ha-ea)-da));U=C(A*M);Q=C(E*s);z[o+348>>2]=U-Q;z[o+340>>2]=Q+U;O=V;V=C(A+A);U=C(A*V);z[o+336>>2]=O-U;z[o+356>>2]=C(C(J*T)+C(r*C(C(L*t)-C(H*G))))-C(u*F);r=C(s*A);t=C(E*M);z[o+344>>2]=r+t;H=C(s*I);u=C(E*V);z[o+332>>2]=H-u;z[o+328>>2]=r-t;z[o+324>>2]=H+u;z[o+320>>2]=C(C(1)-Z)-U;ya=32767;za=32767;y=1;while(1){c:{H=z[g>>2];Ca=y;d:{if(y){v[o>>2]=2139095039;v[o+288>>2]=2139095039;r=z[o+440>>2];t=z[o+432>>2];u=z[o+436>>2];z[o+104>>2]=C(z[o+528>>2]*r)+C(C(z[o+520>>2]*t)+C(u*z[o+524>>2]));z[o+100>>2]=C(r*z[o+516>>2])+C(C(t*z[o+508>>2])+C(u*z[o+512>>2]));z[o+96>>2]=C(r*z[o+504>>2])+C(C(t*z[o+496>>2])+C(u*z[o+500>>2]));z[o+48>>2]=-r;z[o+44>>2]=-u;z[o+40>>2]=-t;if(!vZ(a,b,o+496|0,o+448|0,i,k,o+320|0,o+96|0,o,o+192|0,o+304|0,H,o+40|0)){break c}s=z[o+456>>2];A=z[o+448>>2];J=z[o+452>>2];L=z[o+468>>2];E=z[o+460>>2];G=z[o+464>>2];r=z[o+440>>2];t=z[o+432>>2];u=z[o+436>>2];z[o+48>>2]=-C(C(z[o+480>>2]*r)+C(C(z[o+472>>2]*t)+C(u*z[o+476>>2])));z[o+44>>2]=-C(C(L*r)+C(C(E*t)+C(u*G)));z[o+40>>2]=-C(C(s*r)+C(C(A*t)+C(J*u)));if(!vZ(b,a,o+448|0,o+496|0,k,i,o+368|0,o+40|0,o+288|0,o+144|0,o+272|0,H,o+432|0)){break c}v[o+256>>2]=0;r=z[o>>2];t=z[o+288>>2];e:{if(!(r>t)){u=z[o+196>>2];s=z[o+192>>2];t=z[o+200>>2];break e}v[o+256>>2]=1;u=z[o+148>>2];s=z[o+144>>2];r=t;t=z[o+152>>2]}z[o+424>>2]=t;z[o+420>>2]=u;z[o+416>>2]=s;z[o+428>>2]=r;break d}S=o+368|0;qa=o+272|0;wa=0;y=xa-6336|0;xa=y;N=o+496|0;s=z[N+20>>2];A=z[N+16>>2];J=z[N+32>>2];L=z[N+28>>2];E=z[N+12>>2];G=z[N+24>>2];_=o+432|0;r=z[_+8>>2];t=z[_>>2];u=z[_+4>>2];z[y+6304>>2]=C(z[N+8>>2]*r)+C(C(z[N>>2]*t)+C(z[N+4>>2]*u));z[y+6312>>2]=C(J*r)+C(C(G*t)+C(u*L));z[y+6308>>2]=C(s*r)+C(C(E*t)+C(u*A));ja=y-((v[a+16>>2]<<2)+15&-16)|0;xa=ja;v[y+6296>>2]=2139095039;z[y+3184>>2]=-r;z[y+3180>>2]=-u;z[y+3176>>2]=-t;P=o+448|0;W=o+320|0;Aa=o+304|0;Y=0;f:{if(!wZ(a,b,N,P,i,k,W,y+6304|0,y+6296|0,y+6280|0,Aa,ja,y+6300|0,H,y+3176|0)){break f}s=z[P+20>>2];A=z[P+16>>2];J=z[P+32>>2];L=z[P+28>>2];E=z[P+8>>2];G=z[P>>2];F=z[P+4>>2];I=z[P+12>>2];r=z[_+8>>2];t=z[_+4>>2];M=z[P+24>>2];u=z[_>>2];ra=ja-((v[b+16>>2]<<2)+15&-16)|0;xa=ra;v[y+6272>>2]=2139095039;z[y+3184>>2]=-C(C(J*r)+C(C(M*u)+C(t*L)));z[y+3180>>2]=-C(C(s*r)+C(C(I*u)+C(t*A)));z[y+3176>>2]=-C(C(E*r)+C(C(G*u)+C(F*t)));Y=0;if(!wZ(b,a,P,N,k,i,S,y+3176|0,y+6272|0,y+6256|0,qa,ra,y+6276|0,H,_)){break f}G=z[y+6288>>2];J=z[y+6284>>2];L=z[y+6280>>2];r=z[y+6296>>2];v[o+256>>2]=0;t=z[y+6272>>2];if(t>2];J=z[y+6260>>2];L=z[y+6256>>2];v[o+256>>2]=1;r=t}v[y+3176>>2]=0;v[y+96>>2]=0;Y=v[b+24>>2]+B(v[qa>>2],20)|0;T=z[Y+12>>2];V=z[k+68>>2];Z=z[k+60>>2];U=z[k- -64>>2];Q=z[k+40>>2];O=z[k+44>>2];R=z[k+56>>2];t=z[Y+8>>2];$=z[k+48>>2];u=z[Y>>2];aa=z[k+52>>2];s=z[Y+4>>2];Y=v[a+24>>2]+B(v[Aa>>2],20)|0;X=z[Y+12>>2];ba=z[S+44>>2];ca=z[S+32>>2];da=z[S+20>>2];ea=z[S+40>>2];ha=z[k+36>>2];ia=z[S+8>>2];ma=z[S+36>>2];fa=z[S+24>>2];na=z[S>>2];oa=z[S+12>>2];A=z[Y+8>>2];E=z[Y>>2];F=z[Y+4>>2];I=C(C(z[i+44>>2]*A)+C(C(z[i+36>>2]*E)+C(z[i+40>>2]*F)));M=C(C(z[i+68>>2]*A)+C(C(z[i+60>>2]*E)+C(F*z[i- -64>>2])));E=C(C(z[i+56>>2]*A)+C(C(z[i+48>>2]*E)+C(F*z[i+52>>2])));A=C(C(1)/C(K(C(C(M*M)+C(C(I*I)+C(E*E))))));F=C(I*A);E=C(E*A);I=C(M*A);M=C(C(C(F*z[S+4>>2])+C(E*z[S+16>>2]))+C(I*z[S+28>>2]));z[y+84>>2]=M;fa=C(C(C(F*na)+C(E*oa))+C(I*fa));z[y+80>>2]=fa;E=C(C(C(F*ia)+C(E*da))+C(I*ca));z[y+88>>2]=E;z[y+92>>2]=C(X*A)-C(C(ba*E)+C(C(ma*fa)+C(M*ea)));F=z[W+44>>2];I=z[W+32>>2];M=z[W+20>>2];X=z[W+40>>2];ba=z[W+8>>2];ca=z[W+36>>2];da=z[W+24>>2];ea=z[W>>2];ia=z[W+12>>2];A=C(C(V*t)+C(C(Z*u)+C(s*U)));E=C(C(O*t)+C(C(ha*u)+C(Q*s)));u=C(C(R*t)+C(C($*u)+C(s*aa)));t=C(C(1)/C(K(C(C(A*A)+C(C(E*E)+C(u*u))))));s=C(E*t);u=C(u*t);A=C(A*t);E=C(C(C(s*z[W+4>>2])+C(u*z[W+16>>2]))+C(A*z[W+28>>2]));z[y+68>>2]=E;V=C(C(C(s*ea)+C(u*ia))+C(A*da));z[y+64>>2]=V;u=C(C(C(s*ba)+C(u*M))+C(A*I));z[y+72>>2]=u;z[y+76>>2]=C(T*t)-C(C(F*u)+C(C(ca*V)+C(E*X)));t=z[d+16>>2];u=z[d+20>>2];s=z[c+16>>2];A=z[d+12>>2];E=z[c+12>>2];F=z[d>>2];I=z[d+4>>2];M=z[d+8>>2];T=z[c>>2];V=z[c+4>>2];Z=z[c+8>>2];z[y+60>>2]=z[c+20>>2]+H;z[y+56>>2]=s+H;z[y+36>>2]=u+H;z[y+32>>2]=t+H;z[y+48>>2]=Z-H;z[y+44>>2]=V-H;z[y+40>>2]=T-H;z[y+24>>2]=M-H;z[y+20>>2]=I-H;z[y+16>>2]=F-H;z[y+52>>2]=E+H;z[y+28>>2]=A+H;xZ(y+3176|0,ja,v[y+6300>>2],a,N,y- -64|0,S,y+16|0,H,i);xZ(y+96|0,ra,v[y+6276>>2],b,P,y+80|0,W,y+40|0,H,k);Y=v[y+3176>>2];g:{h:{if(!Y){break h}S=0;ra=v[y+96>>2];if(!ra){break h}Aa=y+96|4;Ga=y+3176|4;wa=1;while(1){W=B(S,12)+Ga|0;ja=0;while(1){u=z[W>>2];qa=B(ja,12)+Aa|0;s=z[qa+4>>2];A=z[qa>>2];F=z[W+4>>2];t=C(C(u*s)-C(A*F));I=z[W+8>>2];E=C(I*A);A=z[qa+8>>2];E=C(E-C(A*u));F=C(C(F*A)-C(s*I));i:{if(!(C(D(t))>C(9.999999974752427e-7)?1:C(D(F))>C(9.999999974752427e-7)|C(D(E))>C(9.999999974752427e-7))){break i}u=C(0);s=C(0);A=C(0);I=C(C(t*t)+C(C(F*F)+C(E*E)));if(I>C(0)){s=t;t=C(C(1)/C(K(I)));A=C(s*t);s=C(E*t);u=C(F*t)}z[y+8>>2]=A;z[y>>2]=u;z[y+4>>2]=s;t=C(C(C(C(-z[_>>2])*u)-C(s*z[_+4>>2]))-C(z[_+8>>2]*A));E=C(C(z[N+32>>2]*A)+C(C(z[N+24>>2]*u)+C(s*z[N+28>>2])));O=C((l(2,v[a+56>>2]|(p(E),j(2))&-2147483648),q())*E);E=C(C(z[N+8>>2]*A)+C(C(z[N>>2]*u)+C(s*z[N+4>>2])));V=C((l(2,v[a+48>>2]|(p(E),j(2))&-2147483648),q())*E);E=C(C(z[N+20>>2]*A)+C(C(z[N+12>>2]*u)+C(s*z[N+16>>2])));E=C(O+C(V+C(E*(l(2,v[a+52>>2]|(p(E),j(2))&-2147483648),q()))));F=z[a+44>>2];O=E>F?E:F;E=C(C(z[P+32>>2]*A)+C(C(z[P+24>>2]*u)+C(s*z[P+28>>2])));V=C((l(2,v[b+56>>2]|(p(E),j(2))&-2147483648),q())*E);E=C(C(z[P+8>>2]*A)+C(C(z[P>>2]*u)+C(s*z[P+4>>2])));u=C(C(z[P+20>>2]*A)+C(C(z[P+12>>2]*u)+C(s*z[P+16>>2])));u=C(V+C(C((l(2,v[b+48>>2]|(p(E),j(2))&-2147483648),q())*E)+C(u*(l(2,v[b+52>>2]|(p(u),j(2))&-2147483648),q()))));s=z[b+44>>2];u=C(O+(u>s?u:s));s=C(t+u);t=C(u-t);if((t>s?s:t)>r){break i}Ba[v[a+64>>2]](a,y,N,i,y+6324|0,y+6320|0);t=z[y+6324>>2];u=z[y+6320>>2];Ba[v[b+64>>2]](b,y,P,k,y+6332|0,y+6328|0);s=z[y+6332>>2];if(s>C(u+H)){break g}A=z[y+6328>>2];if(t>C(A+H)){break g}u=C(u-s);t=C(A-t);t=u>2];J=z[y+4>>2];L=z[y>>2];v[o+256>>2]=2;r=t}ja=ja+1|0;if((ra|0)!=(ja|0)){continue}break}S=S+1|0;wa=Y>>>0>S>>>0;if((S|0)!=(Y|0)){continue}break}}z[o+428>>2]=r;z[o+424>>2]=G;z[o+420>>2]=J;z[o+416>>2]=L}Y=!wa}xa=y+6336|0;if(!(Y&1)){break c}t=z[o+424>>2];u=z[o+420>>2];s=z[o+416>>2]}if(C(C(z[o+440>>2]*t)+C(C(z[o+432>>2]*s)+C(z[o+436>>2]*u)))>2]=t;u=C(-u);z[o+420>>2]=u;s=C(-s);z[o+416>>2]=s}j:{k:{switch(v[o+256>>2]){case 1:y=v[a+68>>2];z[o+200>>2]=C(z[o+528>>2]*t)+C(C(z[o+520>>2]*s)+C(u*z[o+524>>2]));z[o+196>>2]=C(z[o+516>>2]*t)+C(C(z[o+508>>2]*s)+C(u*z[o+512>>2]));z[o+192>>2]=C(z[o+504>>2]*t)+C(C(z[o+496>>2]*s)+C(z[o+500>>2]*u));ya=Ba[y|0](a,i,o+192|0)|0;za=v[o+272>>2];break j;case 2:y=v[a+68>>2];z[o+200>>2]=C(z[o+528>>2]*t)+C(C(z[o+520>>2]*s)+C(u*z[o+524>>2]));z[o+196>>2]=C(z[o+516>>2]*t)+C(C(z[o+508>>2]*s)+C(u*z[o+512>>2]));z[o+192>>2]=C(z[o+504>>2]*t)+C(C(z[o+496>>2]*s)+C(z[o+500>>2]*u));N=o+192|0;ya=Ba[y|0](a,i,N)|0;y=v[b+68>>2];r=C(-s);z[o+200>>2]=C(C(z[o+472>>2]*r)-C(z[o+476>>2]*u))-C(z[o+480>>2]*t);z[o+196>>2]=C(C(z[o+460>>2]*r)-C(z[o+464>>2]*u))-C(z[o+468>>2]*t);z[o+192>>2]=C(C(z[o+448>>2]*r)-C(z[o+452>>2]*u))-C(z[o+456>>2]*t);za=Ba[y|0](b,k,N)|0;break j;case 0:break k;default:break j}}y=v[b+68>>2];ya=v[o+304>>2];r=C(-s);z[o+200>>2]=C(C(z[o+472>>2]*r)-C(z[o+476>>2]*u))-C(z[o+480>>2]*t);z[o+196>>2]=C(C(z[o+460>>2]*r)-C(z[o+464>>2]*u))-C(z[o+468>>2]*t);z[o+192>>2]=C(C(z[o+448>>2]*r)-C(z[o+452>>2]*u))-C(z[o+456>>2]*t);za=Ba[y|0](b,k,o+192|0)|0}r=z[o+428>>2];N=r>=C(0);F=C(-r);P=B(za,20);S=v[b+24>>2];y=v[a+24>>2]+B(ya,20)|0;l:{if(m){W=v[y>>2];_=v[y+4>>2];wa=v[y+12>>2];v[o+296>>2]=v[y+8>>2];v[o+300>>2]=wa;v[o+288>>2]=W;v[o+292>>2]=_;r=z[y>>2];A=z[o+504>>2];H=z[y+4>>2];E=z[o+516>>2];G=z[y+8>>2];J=z[o+528>>2];V=C(C(C(r*A)+C(H*E))+C(G*J));L=z[o+496>>2];I=z[o+508>>2];M=z[o+520>>2];Z=C(C(C(r*L)+C(H*I))+C(G*M));T=z[o+500>>2];U=z[o+512>>2];Q=z[o+524>>2];r=C(C(C(r*T)+C(H*U))+C(G*Q));break l}r=z[y+8>>2];H=z[y>>2];A=z[y+4>>2];J=C(C(z[i+68>>2]*r)+C(C(z[i+60>>2]*H)+C(A*z[i+64>>2])));L=C(C(z[i+44>>2]*r)+C(C(z[i+36>>2]*H)+C(z[i+40>>2]*A)));H=C(C(z[i+56>>2]*r)+C(C(z[i+48>>2]*H)+C(A*z[i+52>>2])));r=C(C(1)/C(K(C(C(J*J)+C(C(L*L)+C(H*H))))));z[o+300>>2]=z[y+12>>2]*r;H=C(H*r);z[o+292>>2]=H;E=z[o+516>>2];G=C(L*r);z[o+288>>2]=G;A=z[o+504>>2];r=C(J*r);z[o+296>>2]=r;J=z[o+528>>2];V=C(C(C(G*A)+C(H*E))+C(r*J));L=z[o+496>>2];I=z[o+508>>2];M=z[o+520>>2];Z=C(C(C(L*G)+C(H*I))+C(r*M));T=z[o+500>>2];U=z[o+512>>2];Q=z[o+524>>2];r=C(C(C(G*T)+C(H*U))+C(r*Q))}$=N?C(0):F;N=P+S|0;z[o+312>>2]=V;H=r;z[o+308>>2]=r;z[o+304>>2]=Z;m:{if(n){P=v[N>>2];S=v[N+4>>2];W=v[N+12>>2];v[o+264>>2]=v[N+8>>2];v[o+268>>2]=W;v[o+256>>2]=P;v[o+260>>2]=S;r=z[N>>2];G=z[N+4>>2];O=C(C(r*z[o+456>>2])+C(G*z[o+468>>2]));R=C(C(r*z[o+452>>2])+C(G*z[o+464>>2]));G=C(C(r*z[o+448>>2])+C(G*z[o+460>>2]));r=z[N+8>>2];break m}r=z[N+8>>2];G=z[N>>2];F=z[N+4>>2];O=C(C(z[k+68>>2]*r)+C(C(z[k+60>>2]*G)+C(F*z[k+64>>2])));R=C(C(z[k+44>>2]*r)+C(C(z[k+36>>2]*G)+C(z[k+40>>2]*F)));F=C(C(z[k+56>>2]*r)+C(C(z[k+48>>2]*G)+C(F*z[k+52>>2])));G=C(C(1)/C(K(C(C(O*O)+C(C(R*R)+C(F*F))))));z[o+268>>2]=z[N+12>>2]*G;r=C(O*G);z[o+264>>2]=r;F=C(F*G);z[o+260>>2]=F;O=z[o+468>>2];G=C(R*G);z[o+256>>2]=G;O=C(C(G*z[o+456>>2])+C(F*O));R=C(C(G*z[o+452>>2])+C(F*z[o+464>>2]));G=C(C(z[o+448>>2]*G)+C(F*z[o+460>>2]))}ca=C(O+C(r*z[o+480>>2]));z[o+280>>2]=ca;da=C(G+C(r*z[o+472>>2]));z[o+272>>2]=da;ea=C(R+C(r*z[o+476>>2]));z[o+276>>2]=ea;O=C($+z[g+4>>2]);r=C(-O);G=C(t*r);z[o+248>>2]=G;F=C(u*r);z[o+244>>2]=F;r=C(s*r);z[o+240>>2]=r;aa=z[o+540>>2];$=z[o+536>>2];R=z[o+532>>2];z[o+224>>2]=J;z[o+220>>2]=Q;z[o+216>>2]=M;z[o+212>>2]=E;z[o+208>>2]=U;z[o+204>>2]=I;z[o+200>>2]=A;z[o+196>>2]=T;z[o+192>>2]=L;R=C(R-r);z[o+228>>2]=R;$=C($-F);z[o+232>>2]=$;aa=C(aa-G);z[o+236>>2]=aa;A=z[e+8>>2];J=z[e+4>>2];r=z[e+12>>2];L=z[e>>2];G=z[f>>2];ha=z[f+16>>2];E=C(R-ha);M=C(E+E);ia=z[f+20>>2];E=C($-ia);T=C(E+E);F=z[f+4>>2];I=z[f+8>>2];ma=z[f+24>>2];E=C(aa-ma);U=C(E+E);Q=C(C(C(C(-G)*M)-C(T*F))-C(I*U));E=z[f+12>>2];X=C(C(E*E)+C(-.5));z[o+188>>2]=C(C(U*X)+C(E*C(C(F*M)-C(G*T))))-C(I*Q);z[o+184>>2]=C(C(T*X)+C(E*C(C(G*U)-C(I*M))))-C(F*Q);z[o+180>>2]=C(C(M*X)+C(E*C(C(I*T)-C(F*U))))-C(G*Q);fa=C(L*F);na=C(E*A);oa=C(r*I);ka=C(G*J);T=C(fa+C(C(na-oa)-ka));sa=C(A*G);ta=C(E*J);ua=C(r*F);va=C(I*L);U=C(sa+C(C(ta-ua)-va));X=C(U+U);Q=C(T*X);M=C(C(I*A)+C(C(F*J)+C(C(E*r)+C(L*G))));la=C(J*I);ga=C(E*L);Da=C(r*G);Ea=C(F*A);ba=C(la+C(C(ga-Da)-Ea));E=C(ba+ba);G=C(M*E);z[o+172>>2]=Q-G;F=C(T*E);I=C(M*X);z[o+168>>2]=F+I;z[o+164>>2]=Q+G;G=C(U*E);Fa=C(T+T);Q=C(M*Fa);z[o+156>>2]=G-Q;z[o+152>>2]=F-I;z[o+148>>2]=G+Q;G=C(ha-R);G=C(G+G);F=C(ia-$);F=C(F+F);I=C(ma-aa);I=C(I+I);Q=C(C(C(C(-L)*G)-C(F*J))-C(A*I));R=C(C(r*r)+C(-.5));z[o+140>>2]=C(C(I*R)+C(r*C(C(J*G)-C(L*F))))-C(A*Q);z[o+136>>2]=C(C(F*R)+C(r*C(C(L*I)-C(A*G))))-C(J*Q);z[o+132>>2]=C(C(G*R)+C(r*C(C(A*F)-C(J*I))))-C(L*Q);r=C(ka+C(C(oa-na)-fa));A=C(va+C(C(ua-ta)-sa));L=C(A+A);F=C(r*L);G=C(Ea+C(C(Da-ga)-la));J=C(G+G);I=C(M*J);z[o+124>>2]=F-I;Q=C(r*J);R=C(M*L);z[o+120>>2]=Q+R;z[o+116>>2]=F+I;F=C(A*J);I=C(r+r);M=C(M*I);z[o+108>>2]=F-M;z[o+104>>2]=Q-R;z[o+100>>2]=F+M;E=C(C(1)-C(ba*E));F=C(U*X);z[o+176>>2]=E-F;ga=E;E=C(T*Fa);z[o+160>>2]=ga-E;z[o+144>>2]=C(C(1)-F)-E;J=C(C(1)-C(G*J));A=C(A*L);z[o+128>>2]=J-A;r=C(r*I);z[o+112>>2]=J-r;z[o+96>>2]=C(C(1)-A)-r;S=w[y+18|0];W=0;P=0;_=0;if(!m){P=pa-(B(S,12)+15&8176)|0;xa=P;_=P-(S+15&496)|0;pa=_;xa=_}WZ(o+92|0,o+88|0,P,_,m,v[a+28>>2],v[a+32>>2]+x[y+16>>1]|0,S,i);S=w[N+18|0];P=0;if(!n){W=pa-(B(S,12)+15&8176)|0;xa=W;P=W-(S+15&496)|0;pa=P;xa=P}WZ(o+84|0,o+80|0,W,P,n,v[b+28>>2],v[b+32>>2]+x[N+16>>1]|0,S,k);IZ(o+40|0,o+288|0);IZ(o,o+256|0);n:{o:{if(C(D(C(C(V*t)+C(C(Z*s)+C(H*u)))))>C(D(C(C(ca*t)+C(C(da*s)+C(u*ea)))))){if(JZ(w[y+18|0],v[o+92>>2],v[o+88>>2],o+192|0,o+288|0,o+40|0,w[N+18|0],v[o+84>>2],v[o+80>>2],o+448|0,o+256|0,o,o+304|0,o+144|0,o+96|0,-1,h,1,o+240|0,O)){break o}break n}if(!JZ(w[N+18|0],v[o+84>>2],v[o+80>>2],o+448|0,o+256|0,o,w[y+18|0],v[o+92>>2],v[o+88>>2],o+192|0,o+288|0,o+40|0,o+272|0,o+96|0,o+144|0,-1,h,0,o+240|0,O)){break n}}a=1;break a}y=Ca-1|0;if(Ca){continue}}break}a=0}xa=o+544|0;return a}function PQ(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=C(0),q=C(0),r=C(0),s=0,t=0,y=0;e=v[a+28>>2];s=v[a+20>>2];a=0;d=xa-48|0;xa=d;b=v[e+1016>>2];t=e+1160|0,y=Ba[v[v[b>>2]+4>>2]](b)|0,v[t>>2]=y;if(w[e+2360|0]&2){if(w[e+4620|0]){a:{if(!w[e+4620|0]){break a}b=v[e+2168>>2];n=v[b+8>>2];if(!n){break a}i=v[b+4>>2];while(1){c=v[i+(a<<2)>>2];f=v[c+16>>2];b=x[f+10>>1];b:{if(b&2){a=a+1|0;break b}a=a+1|0;if(!(b&8)|!x[f+8>>1]){break b}j=v[c+12>>2];b=v[v[e+2168>>2]+44>>2]+v[f>>2]|0;c=v[v[c+8>>2]+44>>2];c:{if(w[c+9|0]){z[b+12>>2]=z[c+80>>2];z[b+16>>2]=z[c+84>>2];z[b+20>>2]=z[c+88>>2];p=z[c+96>>2];q=z[c+104>>2];r=z[c+100>>2];break c}v[b+20>>2]=0;v[b+12>>2]=0;v[b+16>>2]=0;p=C(0);q=C(0);r=C(0)}z[b+44>>2]=q;z[b+40>>2]=r;z[b+36>>2]=p;c=v[j+44>>2];d:{if(w[c+9|0]){z[b+24>>2]=z[c+80>>2];z[b+28>>2]=z[c+84>>2];z[b+32>>2]=z[c+88>>2];p=z[c+96>>2];q=z[c+104>>2];r=z[c+100>>2];break d}v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;p=C(0);q=C(0);r=C(0)}z[b+56>>2]=q;z[b+52>>2]=r;z[b+48>>2]=p;u[f+10>>1]=x[f+10>>1]&65527}if((a|0)!=(n|0)){continue}break}}}a=v[e+3064>>2];if((a|0)!=2){n=e+3060|0;if((a|0)>0){f=v[n>>2];a=f+B(a,40)|0;while(1){Ba[v[v[f>>2]>>2]](f)|0;f=f+40|0;if(a>>>0>f>>>0){continue}break}}v[e+3064>>2]=0;a=v[e+3004>>2];if((a|0)>0){f=v[e+3e3>>2];a=f+B(a,40)|0;while(1){Ba[v[v[f>>2]>>2]](f)|0;f=f+40|0;if(a>>>0>f>>>0){continue}break}}v[e+3004>>2]=0;a=v[e+3052>>2];if((a|0)>0){f=v[e+3048>>2];a=f+B(a,40)|0;while(1){Ba[v[v[f>>2]>>2]](f)|0;f=f+40|0;if(a>>>0>f>>>0){continue}break}}v[e+3052>>2]=0;a=v[e+3040>>2];if((a|0)>0){f=v[e+3036>>2];a=f+B(a,40)|0;while(1){Ba[v[v[f>>2]>>2]](f)|0;f=f+40|0;if(a>>>0>f>>>0){continue}break}}v[e+3040>>2]=0;if(!(v[e+3068>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?50073:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;a=v[n+4>>2];e:{if((a|0)<=0){break e}f=c+B(a,40)|0;b=v[n>>2];a=c;while(1){v[a>>2]=134740;i=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=i;v[a+16>>2]=v[b+16>>2];v[a+20>>2]=v[b+20>>2];i=v[b+24>>2];v[a>>2]=138692;v[a+24>>2]=i;i=v[b+32>>2];v[a+28>>2]=v[b+28>>2];v[a+32>>2]=i;b=b+40|0;a=a+40|0;if(f>>>0>a>>>0){continue}break}b=v[n+4>>2];if((b|0)<=0){break e}a=v[n>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}f:{if(v[n+8>>2]<0){break f}a=v[n>>2];if(!a){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[n+8>>2]=2;v[n>>2]=c}i=e+3e3|0;if(!(v[e+3008>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?49837:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;a=v[i+4>>2];g:{if((a|0)<=0){break g}f=c+B(a,40)|0;b=v[i>>2];a=c;while(1){v[a>>2]=134740;j=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=j;v[a+16>>2]=v[b+16>>2];v[a+20>>2]=v[b+20>>2];j=v[b+24>>2];v[a>>2]=138768;v[a+24>>2]=j;j=v[b+32>>2];v[a+28>>2]=v[b+28>>2];v[a+32>>2]=j;b=b+40|0;a=a+40|0;if(f>>>0>a>>>0){continue}break}b=v[i+4>>2];if((b|0)<=0){break g}a=v[i>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}h:{if(v[i+8>>2]<0){break h}a=v[i>>2];if(!a){break h}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[i+8>>2]=2;v[i>>2]=c}j=e+3012|0;if(!(v[e+3020>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?53835:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;a=v[j+4>>2];i:{if((a|0)<=0){break i}f=c+B(a,40)|0;a=v[j>>2];b=c;while(1){v[b>>2]=134740;k=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=k;v[b+16>>2]=v[a+16>>2];v[b+20>>2]=v[a+20>>2];k=v[a+24>>2];v[b>>2]=138844;v[b+24>>2]=k;k=v[a+32>>2];v[b+28>>2]=v[a+28>>2];v[b+32>>2]=k;a=a+40|0;b=b+40|0;if(f>>>0>b>>>0){continue}break}a=v[j+4>>2];if((a|0)<=0){break i}b=v[j>>2];a=b+B(a,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(a>>>0>b>>>0){continue}break}}j:{if(v[j+8>>2]<0){break j}a=v[j>>2];if(!a){break j}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[j+8>>2]=2;v[j>>2]=c}k=e+3024|0;if(!(v[e+3032>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?53587:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;b=v[k+4>>2];k:{if((b|0)<=0){break k}c=a+B(b,40)|0;f=v[k>>2];b=a;while(1){v[b>>2]=134740;l=v[f+12>>2];v[b+8>>2]=v[f+8>>2];v[b+12>>2]=l;v[b+16>>2]=v[f+16>>2];v[b+20>>2]=v[f+20>>2];l=v[f+24>>2];v[b>>2]=138920;v[b+24>>2]=l;l=v[f+32>>2];v[b+28>>2]=v[f+28>>2];v[b+32>>2]=l;f=f+40|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}c=v[k+4>>2];if((c|0)<=0){break k}b=v[k>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}l:{if(v[k+8>>2]<0){break l}b=v[k>>2];if(!b){break l}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[k+8>>2]=2;v[k>>2]=a}l=e+3048|0;if(!(v[e+3056>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?50809:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;a=v[l+4>>2];m:{if((a|0)<=0){break m}f=c+B(a,40)|0;b=v[l>>2];a=c;while(1){v[a>>2]=134740;m=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=m;v[a+16>>2]=v[b+16>>2];v[a+20>>2]=v[b+20>>2];m=v[b+24>>2];v[a>>2]=138996;v[a+24>>2]=m;m=v[b+32>>2];v[a+28>>2]=v[b+28>>2];v[a+32>>2]=m;b=b+40|0;a=a+40|0;if(f>>>0>a>>>0){continue}break}b=v[l+4>>2];if((b|0)<=0){break m}a=v[l>>2];b=a+B(b,40)|0;while(1){Ba[v[v[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}n:{if(v[l+8>>2]<0){break n}a=v[l>>2];if(!a){break n}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[l+8>>2]=2;v[l>>2]=c}m=e+3036|0;if(!(v[e+3044>>2]&2147483646)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?51033:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,80,b,16608,553)|0;a=v[m+4>>2];o:{if((a|0)<=0){break o}c=b+B(a,40)|0;a=v[m>>2];f=b;while(1){v[f>>2]=134740;h=v[a+12>>2];v[f+8>>2]=v[a+8>>2];v[f+12>>2]=h;v[f+16>>2]=v[a+16>>2];v[f+20>>2]=v[a+20>>2];h=v[a+24>>2];v[f>>2]=139072;v[f+24>>2]=h;h=v[a+32>>2];v[f+28>>2]=v[a+28>>2];v[f+32>>2]=h;a=a+40|0;f=f+40|0;if(c>>>0>f>>>0){continue}break}a=v[m+4>>2];if((a|0)<=0){break o}f=v[m>>2];a=f+B(a,40)|0;while(1){Ba[v[v[f>>2]>>2]](f)|0;f=f+40|0;if(a>>>0>f>>>0){continue}break}}p:{if(v[m+8>>2]<0){break p}a=v[m>>2];if(!a){break p}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a)}v[m+8>>2]=2;v[m>>2]=b}f=1;while(1){a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=3396;v[d+36>>2]=e;v[d+8>>2]=138692;a=v[e+3064>>2];q:{if(a>>>0>=(v[e+3068>>2]&2147483647)>>>0){a=0;b=v[n+8>>2];h=b&2147483647?b<<1:1;r:{if(!h){break r}b=B(h,40);if(!b){break r}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?50073:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[n+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[n>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=138692;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[n+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=138692;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[n+4>>2];if((c|0)>0){b=v[n>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}s:{if(v[n+8>>2]<0){break s}b=v[n>>2];if(!b){break s}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[n+8>>2]=h;v[n>>2]=a;v[n+4>>2]=v[n+4>>2]+1;break q}a=v[e+3060>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=138692;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3064>>2]=v[e+3064>>2]+1}a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=3368;v[d+36>>2]=e;v[d+8>>2]=138768;a=v[e+3004>>2];t:{if(a>>>0>=(v[e+3008>>2]&2147483647)>>>0){a=0;b=v[i+8>>2];h=b&2147483647?b<<1:1;u:{if(!h){break u}b=B(h,40);if(!b){break u}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?49837:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[i+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[i>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=138768;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[i+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=138768;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[i+4>>2];if((c|0)>0){b=v[i>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}v:{if(v[i+8>>2]<0){break v}b=v[i>>2];if(!b){break v}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[i+8>>2]=h;v[i>>2]=a;v[i+4>>2]=v[i+4>>2]+1;break t}a=v[e+3e3>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=138768;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3004>>2]=v[e+3004>>2]+1}a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=64032;v[d+36>>2]=e;v[d+8>>2]=138844;a=v[e+3016>>2];w:{if(a>>>0>=(v[e+3020>>2]&2147483647)>>>0){a=0;b=v[j+8>>2];h=b&2147483647?b<<1:1;x:{if(!h){break x}b=B(h,40);if(!b){break x}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?53835:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[j+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[j>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=138844;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[j+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=138844;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[j+4>>2];if((c|0)>0){b=v[j>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}y:{if(v[j+8>>2]<0){break y}b=v[j>>2];if(!b){break y}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[j+8>>2]=h;v[j>>2]=a;v[j+4>>2]=v[j+4>>2]+1;break w}a=v[e+3012>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=138844;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3016>>2]=v[e+3016>>2]+1}a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=63884;v[d+36>>2]=e;v[d+8>>2]=138920;a=v[e+3028>>2];z:{if(a>>>0>=(v[e+3032>>2]&2147483647)>>>0){a=0;b=v[k+8>>2];h=b&2147483647?b<<1:1;A:{if(!h){break A}b=B(h,40);if(!b){break A}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?53587:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[k+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[k>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=138920;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[k+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=138920;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[k+4>>2];if((c|0)>0){b=v[k>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}B:{if(v[k+8>>2]<0){break B}b=v[k>>2];if(!b){break B}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[k+8>>2]=h;v[k>>2]=a;v[k+4>>2]=v[k+4>>2]+1;break z}a=v[e+3024>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=138920;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3028>>2]=v[e+3028>>2]+1}a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=21735;v[d+36>>2]=e;v[d+8>>2]=138996;a=v[e+3052>>2];C:{if(a>>>0>=(v[e+3056>>2]&2147483647)>>>0){a=0;b=v[l+8>>2];h=b&2147483647?b<<1:1;D:{if(!h){break D}b=B(h,40);if(!b){break D}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?50809:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[l+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[l>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=138996;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[l+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=138996;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[l+4>>2];if((c|0)>0){b=v[l>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}E:{if(v[l+8>>2]<0){break E}b=v[l>>2];if(!b){break E}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[l+8>>2]=h;v[l>>2]=a;v[l+4>>2]=v[l+4>>2]+1;break C}a=v[e+3048>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=138996;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3052>>2]=v[e+3052>>2]+1}a=v[e+16>>2];b=v[e+20>>2];v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=a;v[d+20>>2]=b;v[d+40>>2]=63060;v[d+36>>2]=e;v[d+8>>2]=139072;a=v[e+3040>>2];F:{if(a>>>0>=(v[e+3044>>2]&2147483647)>>>0){a=0;b=v[m+8>>2];h=b&2147483647?b<<1:1;G:{if(!h){break G}b=B(h,40);if(!b){break G}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?51033:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}b=v[m+4>>2];if((b|0)>0){o=B(b,40)+a|0;c=v[m>>2];b=a;while(1){v[b>>2]=134740;g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;v[b+16>>2]=v[c+16>>2];v[b+20>>2]=v[c+20>>2];g=v[c+24>>2];v[b>>2]=139072;v[b+24>>2]=g;g=v[c+32>>2];v[b+28>>2]=v[c+28>>2];v[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=v[m+4>>2]}b=B(b,40)+a|0;v[b>>2]=134740;c=v[d+20>>2];v[b+8>>2]=v[d+16>>2];v[b+12>>2]=c;v[b+16>>2]=v[d+24>>2];v[b+20>>2]=v[d+28>>2];c=v[d+32>>2];v[b>>2]=139072;v[b+24>>2]=c;c=v[d+40>>2];v[b+28>>2]=v[d+36>>2];v[b+32>>2]=c;c=v[m+4>>2];if((c|0)>0){b=v[m>>2];c=b+B(c,40)|0;while(1){Ba[v[v[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}H:{if(v[m+8>>2]<0){break H}b=v[m>>2];if(!b){break H}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[m+8>>2]=h;v[m>>2]=a;v[m+4>>2]=v[m+4>>2]+1;break F}a=v[e+3036>>2]+B(a,40)|0;v[a>>2]=134740;b=v[d+20>>2];v[a+8>>2]=v[d+16>>2];v[a+12>>2]=b;v[a+16>>2]=v[d+24>>2];v[a+20>>2]=v[d+28>>2];b=v[d+32>>2];v[a>>2]=139072;v[a+24>>2]=b;b=v[d+40>>2];v[a+28>>2]=v[d+36>>2];v[a+32>>2]=b;v[e+3040>>2]=v[e+3040>>2]+1}a=f;f=0;if(a){continue}break}}zK(v[e+976>>2]);a=v[e+988>>2];v[a+128>>2]=0;v[a+132>>2]=0;f=v[e+3048>>2];v[f+20>>2]=s;v[f+24>>2]=1;if(s){Ba[v[v[s>>2]+16>>2]](s);v[f+16>>2]=v[v[f+20>>2]+16>>2];f=v[e+3048>>2];a=v[e+3036>>2]}else{a=v[e+3036>>2]}v[a+20>>2]=f;v[a+24>>2]=1;Ba[v[v[f>>2]+16>>2]](f);v[a+16>>2]=v[v[a+20>>2]+16>>2];a=v[e+3048>>2];Ba[v[v[a>>2]+20>>2]](a);a=v[e+3036>>2];Ba[v[v[a>>2]+20>>2]](a)}xa=d+48|0}function Jn(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,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=C(0);E=v[37389];g=xa-16|0;xa=g;a:{b:{f=b;c:{if(!rX(77,69,83,72,g+12|0,g+11|0,f)){break c}a=v[g+12>>2];if(a>>>0>=14){o=hX(w[g+11|0],f);a=v[g+12>>2]}if(a>>>0<=9){b9(v[37696],32,5452,152,64989,0);a=0;break a}n=hX(w[g+11|0],f);if(y[g+12>>2]<=12){iX(w[g+11|0],f)}d:{if(!o){a=v[37696];b=a+12|0;e=(G=b,H=192,I=Ba[v[v[a>>2]+20>>2]](a)|0?47613:63804,J=5452,K=170,F=v[v[b>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0);v[e+44>>2]=0;v[e+48>>2]=0;v[e+20>>2]=2122317823;v[e+24>>2]=2122317823;v[e+12>>2]=0;v[e+16>>2]=0;a=0;t[e+8|0]=0;v[e>>2]=140672;v[e+36>>2]=-25165825;v[e+40>>2]=-25165825;v[e+28>>2]=2122317823;v[e+32>>2]=-25165825;v[e+52>>2]=0;v[e+56>>2]=0;v[e+60>>2]=0;v[e+64>>2]=0;v[e+68>>2]=0;v[e+72>>2]=0;v[e+76>>2]=0;v[e+80>>2]=0;v[e+84>>2]=0;v[e+180>>2]=0;v[e+184>>2]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=4;break d}a=1;if((o|0)!=1){break c}b=v[37696];e=b+12|0;e=(K=e,J=172,I=Ba[v[v[b>>2]+20>>2]](b)|0?47743:63804,H=5452,G=172,F=v[v[e>>2]+8>>2],Ba[F](K|0,J|0,I|0,H|0,G|0)|0);v[e+44>>2]=0;v[e+48>>2]=0;v[e+20>>2]=2122317823;v[e+24>>2]=2122317823;v[e+12>>2]=0;v[e+16>>2]=0;t[e+8|0]=0;v[e>>2]=140756;v[e+36>>2]=-25165825;v[e+40>>2]=-25165825;v[e+28>>2]=2122317823;v[e+32>>2]=-25165825;v[e+52>>2]=0;v[e+56>>2]=0;v[e+60>>2]=0;v[e+64>>2]=0;v[e+68>>2]=0;v[e+72>>2]=0;v[e+76>>2]=0;v[e+80>>2]=0;v[e+84>>2]=0;b=e+88|0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;z$(e+112|0)}v[e+4>>2]=a;a=hX(w[g+11|0],f);b=B(a,12)+12|0;if(b){j=v[37696]+12|0;j=Ba[v[v[j>>2]+8>>2]](j,b,24422,19733,148)|0}else{j=0}v[e+12>>2]=a;v[e+16>>2]=j;r=hX(w[g+11|0],f);a=4;s=n&32;if(!(!(n&12)|y[e+12>>2]>65535)){t[e+8|0]=w[e+8|0]|2;a=2}a=B(B(a,r),3);e:{f:{if(!a){v[e+72>>2]=0;a=0;b=0;if(s){break f}break e}b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,a,24422,19733,228)|0;v[e+72>>2]=b;if(!s){break e}b=v[37696]+12|0;a=Ba[v[v[b>>2]+8>>2]](b,a,24422,19733,230)|0;b=v[e+72>>2]}v[e+56>>2]=a}v[e+68>>2]=r;Ba[v[v[f>>2]>>2]](f,j,B(v[e+12>>2],12))|0;if(!(!w[g+11|0]|!v[e+12>>2])){while(1){a=B(d,12)+j|0;i=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=i;i=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=i;i=w[a+4|0];t[a+4|0]=w[a+7|0];t[a+7|0]=i;i=w[a+5|0];t[a+5|0]=w[a+6|0];t[a+6|0]=i;i=w[a+8|0];t[a+8|0]=w[a+11|0];t[a+11|0]=i;i=w[a+10|0];t[a+10|0]=w[a+9|0];t[a+9|0]=i;d=d+1|0;if(d>>>0>2]){continue}break}}q=v[e+68>>2];i=B(q,3);D=n&4;g:{if(D){if(w[e+8|0]&2){if(!i){break g}a=b;if((i|0)!=1){c=i&-2;d=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a>>1]=w[g+4|0];Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a+2>>1]=w[g+4|0];a=a+4|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(i&1)){break g}Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a>>1]=w[g+4|0];break g}if(!i){break g}a=b;if((i|0)!=1){c=i&-2;d=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a>>2]=w[g+4|0];Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a+4>>2]=w[g+4|0];a=a+8|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(i&1)){break g}Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a>>2]=w[g+4|0];break g}a=w[e+8|0]&2;if(n&8){if(a){Ba[v[v[f>>2]>>2]](f,b,B(q,6))|0;if(!w[g+11|0]|!i){break g}a=0;if(i-1>>>0>=3){k=i&-4;while(1){d=a<<1;h=d+b|0;l=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=l;h=(d|2)+b|0;l=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=l;h=(d|4)+b|0;l=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=l;d=(d|6)+b|0;h=w[d+1|0];t[d+1|0]=w[d|0];t[d|0]=h;a=a+4|0;m=m+4|0;if((k|0)!=(m|0)){continue}break}}h=i&3;if(!h){break g}while(1){d=(a<<1)+b|0;k=w[d+1|0];t[d+1|0]=w[d|0];t[d|0]=k;a=a+1|0;c=c+1|0;if((h|0)!=(c|0)){continue}break}break g}if(!i){break g}d=0;a=b;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,2)|0;if(w[g+11|0]){c=w[g+5|0];t[g+5|0]=w[g+4|0];t[g+4|0]=c}v[a>>2]=x[g+4>>1];a=a+4|0;d=d+1|0;if((i|0)!=(d|0)){continue}break}break g}if(a){if(!i){break g}d=0;a=b;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,4)|0;if(w[g+11|0]){c=w[g+7|0];t[g+7|0]=w[g+4|0];t[g+4|0]=c;c=w[g+5|0];t[g+5|0]=w[g+6|0];t[g+6|0]=c}u[a>>1]=v[g+4>>2];a=a+2|0;d=d+1|0;if((i|0)!=(d|0)){continue}break}break g}Ba[v[v[f>>2]>>2]](f,b,B(q,12))|0;if(!w[g+11|0]|!i){break g}d=0;if((i|0)!=1){h=i&-2;while(1){k=d<<2;a=k+b|0;l=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=l;l=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=l;a=(k|4)+b|0;k=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=k;k=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=k;d=d+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(i&1)){break g}a=(d<<2)+b|0;c=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=c;c=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=c}h:{if(!(n&1)){break h}a=v[e+68>>2];c=a+a|0;c=a>>>0>c>>>0?-1:c;i:{if(!c){c=0;break i}a=v[37696];d=a+12|0;c=(G=d,H=c,I=Ba[v[v[a>>2]+20>>2]](a)|0?27439:63804,J=19733,K=239,F=v[v[d>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0);a=v[e+68>>2]}v[e+80>>2]=c;Ba[v[v[f>>2]>>2]](f,c,a<<1)|0;if(!w[g+11|0]|!v[e+68>>2]){break h}d=0;while(1){a=(d<<1)+c|0;h=w[a+1|0];t[a+1|0]=w[a|0];t[a|0]=h;d=d+1|0;if(d>>>0>2]){continue}break}}if(n&2){a=v[e+68>>2];c=(a|0)!=(a&1073741823)?-1:a<<2;if(c){a=v[37696];d=a+12|0;a=(K=d,J=c,I=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804,H=19733,G=215,F=v[v[d>>2]+8>>2],Ba[F](K|0,J|0,I|0,H|0,G|0)|0)}else{a=0}v[e+48>>2]=a;c=hX(w[g+11|0],f);k=v[e+68>>2];h=w[g+11|0];d=xa-16|0;xa=d;j:{if(c>>>0<=255){if(!k){break j}c=0;if((k|0)!=1){l=k&-2;h=0;while(1){Ba[v[v[f>>2]>>2]](f,d+13|0,1)|0;m=c<<2;v[m+a>>2]=w[d+13|0];Ba[v[v[f>>2]>>2]](f,d+13|0,1)|0;v[a+(m|4)>>2]=w[d+13|0];c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(k&1)){break j}Ba[v[v[f>>2]>>2]](f,d+13|0,1)|0;v[a+(c<<2)>>2]=w[d+13|0];break j}if(c>>>0<=65535){if(!k){break j}if(!h){c=0;if((k|0)!=1){l=k&-2;h=0;while(1){Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;m=c<<2;v[m+a>>2]=x[d+14>>1];Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;v[a+(m|4)>>2]=x[d+14>>1];c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(k&1)){break j}Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;v[a+(c<<2)>>2]=x[d+14>>1];break j}c=0;if((k|0)!=1){l=k&-2;h=0;while(1){Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;m=w[d+15|0];t[d+15|0]=w[d+14|0];t[d+14|0]=m;m=c<<2;v[m+a>>2]=x[d+14>>1];Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;p=w[d+15|0];t[d+15|0]=w[d+14|0];t[d+14|0]=p;v[a+(m|4)>>2]=x[d+14>>1];c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(k&1)){break j}Ba[v[v[f>>2]>>2]](f,d+14|0,2)|0;h=w[d+15|0];t[d+15|0]=w[d+14|0];t[d+14|0]=h;v[a+(c<<2)>>2]=x[d+14>>1];break j}Ba[v[v[f>>2]>>2]](f,a,k<<2)|0;if(!k|!h){break j}c=0;if((k|0)!=1){m=k&-2;h=0;while(1){p=c<<2;l=p+a|0;A=w[l+3|0];t[l+3|0]=w[l|0];t[l|0]=A;A=w[l+1|0];t[l+1|0]=w[l+2|0];t[l+2|0]=A;l=a+(p|4)|0;p=w[l+3|0];t[l+3|0]=w[l|0];t[l|0]=p;p=w[l+1|0];t[l+1|0]=w[l+2|0];t[l+2|0]=p;c=c+2|0;h=h+2|0;if((m|0)!=(h|0)){continue}break}}if(!(k&1)){break j}a=a+(c<<2)|0;c=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=c;c=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=c}xa=d+16|0}k:{if(!(n&16)){break k}d=v[e+68>>2];a=B(d,3);c=(a|0)!=(a&1073741823)?-1:a<<2;l:{if(!c){c=0;break l}a=v[37696];d=a+12|0;c=(G=d,H=c,I=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804,J=19733,K=206,F=v[v[d>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0);d=v[e+68>>2]}v[e+52>>2]=c;t[e+8|0]=w[e+8|0]|4;Ba[v[v[f>>2]>>2]](f,c,B(d,12))|0;if(!w[g+11|0]|!B(v[e+68>>2],3)){break k}d=0;while(1){a=(d<<2)+c|0;h=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=h;h=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=h;d=d+1|0;if(d>>>0>2],3)>>>0){continue}break}}m:{if(!o){b=w[g+11|0];h=0;j=xa-16|0;xa=j;c=e+96|0;n:{if(t[c+84|0]&1){break n}a=v[c+88>>2];if(!a){break n}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,a-v[a-4>>2]|0);v[c+88>>2]=0}fX(j+15|0,j+14|0,j+13|0,j+12|0,f);o:{if(w[j+15|0]!=82|w[j+14|0]!=84|(w[j+13|0]!=82|w[j+12|0]!=69)){break o}a=1;d=hX(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 o}}mX(c,4,a,f);mX(c+16|0,4,a,f);mX(c+32|0,4,a,f);mX(c+48|0,4,a,f);F=c,K=hX(a,f),v[F+64>>2]=K;F=c,K=hX(a,f),v[F+68>>2]=K;F=c,K=hX(a,f),v[F+72>>2]=K;F=c,K=hX(a,f),v[F+76>>2]=K;F=c,K=hX(a,f),v[F+80>>2]=K;hX(a,f);b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,B(v[c+80>>2],112)+131|0,24422,12041,87)|0;if(b){h=b+131&-128;v[h-4>>2]=h-b}v[c+88>>2]=h;if(!v[c+80>>2]){h=1;break o}d=0;while(1){b=B(d,112);mX(b+v[c+88>>2]|0,4,a,f);mX((b+v[c+88>>2]|0)+16|0,4,a,f);mX((b+v[c+88>>2]|0)+32|0,4,a,f);mX((b+v[c+88>>2]|0)+48|0,4,a,f);mX((b+v[c+88>>2]|0)- -64|0,4,a,f);mX((b+v[c+88>>2]|0)+80|0,4,a,f);mX((b+v[c+88>>2]|0)+96|0,4,a,f);h=1;d=d+1|0;if(d>>>0>2]){continue}break}}xa=j+16|0;if(h){break m}b9(v[37696],32,5452,303,66290,0);Ba[v[v[e>>2]+4>>2]](e);a=0;break a}if((o|0)!=1){break m}d=w[g+11|0];o=0;h=xa-16|0;xa=h;c=e+112|0;p:{if(w[c+56|0]){break p}a=v[c+24>>2];if(!a){break p}k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,a)}v[c+20>>2]=0;v[c+24>>2]=0;v[c>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;u[c+50>>1]=0;u[c+52>>1]=0;u[c+54>>1]=0;u[c+56>>1]=0;fX(h+15|0,h+14|0,h+13|0,h+12|0,f);q:{if(w[h+15|0]!=66|w[h+14|0]!=86|(w[h+13|0]!=52|w[h+12|0]!=32)){break q}k=hX(0,f);r:{if((k|0)==1){l=1;a=1;break r}l=1;a=1;if((k|0)==16777216){break r}a=d;l=a?k<<8&16711680|k<<24|(k>>>8&65280|k>>>24):k;if(l>>>0>3){break q}}mX(c+4|0,3,a,f);F=c,L=iX(a,f),z[F+16>>2]=L;F=c,K=hX(a,f),v[F+28>>2]=K;mX(c+32|0,3,a,f);mX(c+44|0,3,a,f);if(l>>>0>=3){d=(hX(a,f)|0)!=0}else{d=1}t[c+57|0]=d;a=hX(a,f);v[c+20>>2]=a;s:{if(a){d=a<<4;if(d){a=v[37696];a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,d,24422,13740,280)|0}else{a=0}v[c+24>>2]=a;Ba[v[v[f>>2]>>2]](f,a,d)|0;break s}v[c+24>>2]=0}o=1}xa=h+16|0;if(!o){b9(v[37696],32,5452,313,66321,0);Ba[v[v[e>>2]+4>>2]](e);a=0;break a}v[e+100>>2]=r;v[e+88>>2]=v[e+12>>2];v[e+112>>2]=e+88;v[e+92>>2]=j;a=w[e+8|0];v[e+104>>2]=a&2?0:b;v[e+108>>2]=a<<30>>31&b}F=e,L=iX(w[g+11|0],f),z[F+44>>2]=L;mX(e+20|0,6,w[g+11|0],f);b=hX(w[g+11|0],f);if(b){c=v[e+68>>2];if(c){a=v[37696];j=a+12|0;a=(K=j,J=c,I=Ba[v[v[a>>2]+20>>2]](a)|0?35013:63804,H=19733,G=247,F=v[v[j>>2]+8>>2],Ba[F](K|0,J|0,I|0,H|0,G|0)|0)}else{a=0}v[e+76>>2]=a;Ba[v[v[f>>2]>>2]](f,a,b)|0}if(!s){break b}d=0;if(y[g+12>>2]<=14){d=hX(w[g+11|0],f)}t:{if(D){if(w[e+8|0]&2){if(!i){break t}a=v[e+56>>2];if((i|0)!=1){b=i&-2;c=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a>>1]=w[g+4|0];Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a+2>>1]=w[g+4|0];a=a+4|0;c=c+2|0;if((b|0)!=(c|0)){continue}break}}if(!(i&1)){break t}Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;u[a>>1]=w[g+4|0];break t}if(!i){break t}a=v[e+56>>2];if((i|0)!=1){b=i&-2;c=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a>>2]=w[g+4|0];Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a+4>>2]=w[g+4|0];a=a+8|0;c=c+2|0;if((b|0)!=(c|0)){continue}break}}if(!(i&1)){break t}Ba[v[v[f>>2]>>2]](f,g+4|0,1)|0;v[a>>2]=w[g+4|0];break t}b=w[e+8|0]&2;if(n&8){a=v[e+56>>2];if(b){Ba[v[v[f>>2]>>2]](f,a,B(q,6))|0;if(!w[g+11|0]|!i){break t}k=0;c=0;if(i-1>>>0>=3){n=i&-4;b=0;while(1){j=c<<1;h=j+a|0;o=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=o;h=(j|2)+a|0;o=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=o;h=(j|4)+a|0;o=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=o;j=(j|6)+a|0;h=w[j+1|0];t[j+1|0]=w[j|0];t[j|0]=h;c=c+4|0;b=b+4|0;if((n|0)!=(b|0)){continue}break}}j=i&3;if(!j){break t}while(1){b=(c<<1)+a|0;i=w[b+1|0];t[b+1|0]=w[b|0];t[b|0]=i;c=c+1|0;k=k+1|0;if((j|0)!=(k|0)){continue}break}break t}if(!i){break t}c=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,2)|0;if(w[g+11|0]){b=w[g+5|0];t[g+5|0]=w[g+4|0];t[g+4|0]=b}v[a>>2]=x[g+4>>1];a=a+4|0;c=c+1|0;if((i|0)!=(c|0)){continue}break}break t}if(b){if(!i){break t}a=v[e+56>>2];c=0;while(1){Ba[v[v[f>>2]>>2]](f,g+4|0,4)|0;if(w[g+11|0]){b=w[g+7|0];t[g+7|0]=w[g+4|0];t[g+4|0]=b;b=w[g+5|0];t[g+5|0]=w[g+6|0];t[g+6|0]=b}u[a>>1]=v[g+4>>2];a=a+2|0;c=c+1|0;if((i|0)!=(c|0)){continue}break}break t}j=v[e+56>>2];Ba[v[v[f>>2]>>2]](f,j,B(q,12))|0;if(!w[g+11|0]|!i){break t}c=0;if((i|0)!=1){h=i&-2;b=0;while(1){k=c<<2;a=k+j|0;n=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=n;n=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=n;a=j+(k|4)|0;k=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=k;k=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=k;c=c+2|0;b=b+2|0;if((h|0)!=(b|0)){continue}break}}if(!(i&1)){break t}a=j+(c<<2)|0;b=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=b;b=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=b}b=0;c=0;a=v[e+68>>2];j=a<<2;j=(j|0)!=(j&1073741820)?-1:a<<4;if(j){a=v[37696];c=a+12|0;c=(G=c,H=j,I=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804,J=5452,K=427,F=v[v[c>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0);a=v[e+68>>2]}v[e+60>>2]=c;j=(a&1073741823)!=(a|0)?-1:a<<2;if(j){a=v[37696];b=a+12|0;b=(K=b,J=j,I=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804,H=5452,G=428,F=v[v[b>>2]+8>>2],Ba[F](K|0,J|0,I|0,H|0,G|0)|0);c=v[e+60>>2];a=v[e+68>>2]}v[e+64>>2]=b;Ba[v[v[f>>2]>>2]](f,c,a<<4)|0;u:{if(y[g+12>>2]>14){break u}v:{if(!v[e+12>>2]){break v}a=0;while(1){hX(w[g+11|0],f);a=a+1|0;b=v[e+12>>2];if(a>>>0>>0){continue}break}if(!b){break v}a=0;while(1){hX(w[g+11|0],f);a=a+1|0;if(a>>>0>2]){continue}break}}if(!d){break u}a=0;while(1){hX(w[g+11|0],f);a=a+1|0;if((d|0)!=(a|0)){continue}break}}Ba[v[v[f>>2]>>2]](f,v[e+64>>2],v[e+68>>2]<<2)|0;w:{if(!w[g+11|0]|!(v[e+68>>2]&1073741823)){break w}d=0;while(1){a=v[e+56>>2]+(d<<2)|0;b=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=b;b=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=b;d=d+1|0;a=v[e+68>>2];if(d>>>0>>0){continue}break}if(!(a&1073741823)){break w}d=0;while(1){a=v[e+60>>2]+(d<<2)|0;b=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=b;b=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=b;d=d+1|0;if(d>>>0>2]<<2>>>0){continue}break}}a=v[37696];b=a+12|0;a=(G=b,H=44,I=Ba[v[v[a>>2]+20>>2]](a)|0?44281:63804,J=5452,K=455,F=v[v[b>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,K|0)|0);v[a>>2]=0;v[a+4>>2]=0;t[a+40|0]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[e+84>>2]=a;c=w[g+11|0];d=0;h=0;j=xa-16|0;xa=j;if(!w[a+40|0]){b=v[a+24>>2];if(b){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,b);v[a+24>>2]=0}b=v[a+28>>2];if(b){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,b)}v[a+28>>2]=0}v[a+20>>2]=0;v[a+24>>2]=0;fX(j+15|0,j+14|0,j+13|0,j+12|0,f);x:{if(w[j+15|0]!=66|w[j+14|0]!=86|(w[j+13|0]!=51|w[j+12|0]!=50)){break x}b=1;i=hX(0,f);if(!((i|0)==1|(i|0)==16777216)){b=c;if((c?i<<8&16711680|i<<24|(i>>>8&65280|i>>>24):i)>>>0>3){break x}}F=a,L=iX(b,f),z[F+4>>2]=L;F=a,L=iX(b,f),z[F+8>>2]=L;F=a,L=iX(b,f),z[F+12>>2]=L;F=a,L=iX(b,f),z[F+16>>2]=L;F=a,K=hX(b,f),v[F+36>>2]=K;i=hX(b,f);v[a+32>>2]=i;d=1;if(!i){break x}c=B(i,1168);if(c){d=v[37696];c=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,13815,167)|0}else{c=0}v[a+28>>2]=c;while(1){c=v[a+28>>2]+B(h,1168)|0;d=hX(b,f);v[c+1152>>2]=d;mX(c+1024|0,d,b,f);d=v[c+1152>>2]<<2;mX(c,d,b,f);mX(c+512|0,d,b,f);d=1;h=h+1|0;if((i|0)!=(h|0)){continue}break}}xa=j+16|0;if(d){break b}b9(v[37696],32,5452,459,66350,0);Ba[v[v[e>>2]+4>>2]](e)}a=0;break a}a=oV(E,e);Ba[v[v[e>>2]+4>>2]](e)}xa=g+16|0;return a|0}function _3(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=0,m=0,n=0,o=C(0),p=0,q=0,r=C(0),s=0,t=C(0),A=C(0),D=C(0),E=C(0),F=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=0,U=C(0),V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;q=xa-32|0;xa=q;d=v[a+8>>2];b=v[d+36>>2];U=z[d+32>>2];v[q+16>>2]=0;v[q+20>>2]=0;v[q+24>>2]=0;d=v[a+12>>2];i=v[d+68>>2];v[q+12>>2]=i;v[q+8>>2]=144944;R=v[d+16>>2];c=w[d+8|0];d=v[d+72>>2];V=c<<30>>31&d;X=c&2?0:d;l=q+16|0;W=q+8|0;d=0;e=xa-208|0;xa=e;v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;a:{if(!i){t=C(34028234663852886e22);A=C(-34028234663852886e22);D=C(-34028234663852886e22);E=C(-34028234663852886e22);F=C(34028234663852886e22);H=C(34028234663852886e22);break a}b:{if(!i){break b}c=i<<5;if(!c){break b}f=v[37696];d=Ba[v[v[f>>2]+20>>2]](f)|0?48609:63804;d=Ba[v[v[f+12>>2]+8>>2]](f+12|0,c,d,16608,553)|0}g=v[e>>2];c=v[e+4>>2];if((c|0)>0){h=(c<<5)+d|0;c=d;while(1){f=v[g+4>>2];v[c>>2]=v[g>>2];v[c+4>>2]=f;f=v[g+28>>2];v[c+24>>2]=v[g+24>>2];v[c+28>>2]=f;f=v[g+20>>2];v[c+16>>2]=v[g+16>>2];v[c+20>>2]=f;f=v[g+12>>2];v[c+8>>2]=v[g+8>>2];v[c+12>>2]=f;g=g+32|0;c=c+32|0;if(h>>>0>c>>>0){continue}break}g=v[e>>2]}if(!(!g|v[e+8>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,g)}v[e+8>>2]=i;v[e>>2]=d;E=C(-34028234663852886e22);H=C(34028234663852886e22);F=C(34028234663852886e22);t=C(34028234663852886e22);D=C(-34028234663852886e22);A=C(-34028234663852886e22);while(1){d=B(k,3);c:{if(V){f=V+(d<<1)|0;d=x[f>>1];g=x[f+2>>1];c=x[f+4>>1];break c}f=X+(d<<2)|0;d=v[f>>2];g=v[f+4>>2];c=v[f+8>>2]}f=R+B(c,12)|0;K=z[f>>2];c=R+B(g,12)|0;L=z[c>>2];d=R+B(d,12)|0;M=z[d>>2];N=z[f+4>>2];O=z[c+4>>2];P=z[d+4>>2];Q=z[f+8>>2];r=z[c+8>>2];o=z[d+8>>2];v[e+76>>2]=0;v[e+60>>2]=0;j=o>r?o:r;S=C((j>Q?j:Q)+C(.0005000000237487257));z[e+72>>2]=S;Y=E>S;j=ON?j:N)+C(.0005000000237487257));z[e+68>>2]=I;Z=D>I;j=LK?j:K)+C(.0005000000237487257));z[e+64>>2]=J;s=A>J;j=o>2]=r;m=r>H;j=O>P?P:O;o=C((j>2]=o;n=o>F;j=L>M?M:L;j=C((j>2]=j;p=j>t;f=v[e+4>>2];d:{if(f>>>0>=(v[e+8>>2]&2147483647)>>>0){d=0;c=v[e+8>>2];T=c&2147483647?c<<1:1;e:{if(!T){break e}c=T<<5;if(!c){break e}f=v[37696];d=Ba[v[v[f>>2]+20>>2]](f)|0?48609:63804;d=Ba[v[v[f+12>>2]+8>>2]](f+12|0,c,d,16608,553)|0}c=v[e+4>>2];if((c|0)>0){h=(c<<5)+d|0;g=v[e>>2];c=d;while(1){f=v[g+4>>2];v[c>>2]=v[g>>2];v[c+4>>2]=f;f=v[g+28>>2];v[c+24>>2]=v[g+24>>2];v[c+28>>2]=f;f=v[g+20>>2];v[c+16>>2]=v[g+16>>2];v[c+20>>2]=f;f=v[g+12>>2];v[c+8>>2]=v[g+8>>2];v[c+12>>2]=f;g=g+32|0;c=c+32|0;if(h>>>0>c>>>0){continue}break}c=v[e+4>>2]}f=(c<<5)+d|0;c=v[e+52>>2];v[f>>2]=v[e+48>>2];v[f+4>>2]=c;c=v[e+76>>2];v[f+24>>2]=v[e+72>>2];v[f+28>>2]=c;c=v[e+68>>2];v[f+16>>2]=v[e+64>>2];v[f+20>>2]=c;c=v[e+60>>2];v[f+8>>2]=v[e+56>>2];v[f+12>>2]=c;f:{if(v[e+8>>2]<0){break f}f=v[e>>2];if(!f){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}v[e+8>>2]=T;v[e>>2]=d;v[e+4>>2]=v[e+4>>2]+1;break d}d=v[e+52>>2];g=v[e>>2]+(f<<5)|0;v[g>>2]=v[e+48>>2];v[g+4>>2]=d;d=v[e+76>>2];v[g+24>>2]=v[e+72>>2];v[g+28>>2]=d;c=e- -64|0;d=v[c+4>>2];v[g+16>>2]=v[c>>2];v[g+20>>2]=d;d=v[e+60>>2];v[g+8>>2]=v[e+56>>2];v[g+12>>2]=d;v[e+4>>2]=f+1}E=Y?E:S;D=Z?D:I;A=s?A:J;H=m?H:r;F=n?F:o;t=p?t:j;k=k+1|0;if((i|0)!=(k|0)){continue}break}}m=v[e>>2];v[e+48>>2]=0;cz(l,0,e+48|0);d=i+1|0;if(d>>>0>(v[l+8>>2]&2147483647)>>>0){Aw(l,d)}v[e+48>>2]=0;if(i){g=0;while(1){d=v[l+4>>2];g:{if(d>>>0>=(v[l+8>>2]&2147483647)>>>0){pn(l,e+48|0);break g}v[v[l>>2]+(d<<2)>>2]=g;v[l+4>>2]=v[l+4>>2]+1}g=v[e+48>>2]+1|0;v[e+48>>2]=g;if(g>>>0>>0){continue}break}}v[e+196>>2]=-1412567295;d=v[l+4>>2];h:{if(d>>>0>=(v[l+8>>2]&2147483647)>>>0){pn(l,e+196|0);break h}v[v[l>>2]+(d<<2)>>2]=-1412567295;v[l+4>>2]=v[l+4>>2]+1}v[e+192>>2]=0;v[e+184>>2]=0;v[e+188>>2]=0;d=i<<1;if(d){D3(e+184|0,d)}v[e+180>>2]=0;i:{if(b){d=v[l>>2];h=xa-16|0;xa=h;b=e+16|0;v[b+12>>2]=0;v[b+16>>2]=0;v[b+8>>2]=m;v[b+4>>2]=d;f=0;v[b+20>>2]=0;v[b>>2]=d+(i<<2);if(i){d=b+12|0;I3(d,i);while(1){c=v[b+8>>2]+(f<<5)|0;I=z[c+4>>2];J=z[c+20>>2];o=z[c+8>>2];j=z[c+24>>2];r=C(z[c>>2]+z[c+16>>2]);z[h>>2]=r;o=C(o+j);z[h+8>>2]=o;j=C(I+J);z[h+4>>2]=j;g=v[b+16>>2];j:{if(g>>>0>=(v[b+20>>2]&2147483647)>>>0){J3(d,h);break j}c=v[b+12>>2]+B(g,12)|0;z[c+8>>2]=o;z[c+4>>2]=j;z[c>>2]=r;v[b+16>>2]=g+1}f=f+1|0;if((i|0)!=(f|0)){continue}break}}j=C(C(G(U,C(0)))*C(9));k:{if(j=C(0)){d=~~j>>>0;break k}d=0}v[b+24>>2]=v[((d>>>0<8?d:8)<<2)+103920>>2];xa=h+16|0;E3(b,v[l>>2],v[l+4>>2]-1|0,e+184|0,e+180|0,e+48|0,0);d=v[b+20>>2];if((d|0)<0|!(d&2147483647)){break i}d=v[b+12>>2];if(!d){break i}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d);break i}g=0;v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+48>>2]=0;c=e+48|0;cz(e+16|0,i,c);v[e+176>>2]=0;v[e+168>>2]=0;v[e+172>>2]=0;v[e+48>>2]=0;cz(e+168|0,i,c);v[e+160>>2]=0;v[e+152>>2]=0;v[e+156>>2]=0;v[e+48>>2]=0;cz(e+152|0,i,c);v[e+144>>2]=0;v[e+136>>2]=0;v[e+140>>2]=0;v[e+48>>2]=0;cz(e+136|0,i,c);v[e+128>>2]=0;v[e+120>>2]=0;v[e+124>>2]=0;v[e+48>>2]=0;cz(e+120|0,i,c);v[e+112>>2]=0;v[e+104>>2]=0;v[e+108>>2]=0;v[e+48>>2]=0;cz(e+104|0,i,c);b=i<<2;I9(v[e+136>>2],v[l>>2],b);I9(v[e+120>>2],v[l>>2],b);I9(v[e+104>>2],v[l>>2],b);d=v[e+140>>2];b=v[e+136>>2];v[e+52>>2]=m;v[e+48>>2]=0;F3(b,d,c);l:{if(i){h=v[e+16>>2];f=v[e+136>>2];c=i-1|0;if(c>>>0>=3){d=i&-4;k=0;while(1){v[h+(v[f+(g<<2)>>2]<<2)>>2]=g;b=g|1;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;b=g|2;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;b=g|3;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;g=g+4|0;k=k+4|0;if((d|0)!=(k|0)){continue}break}}b=i&3;if(b){k=0;while(1){v[h+(v[f+(g<<2)>>2]<<2)>>2]=g;g=g+1|0;k=k+1|0;if((b|0)!=(k|0)){continue}break}}d=v[e+124>>2];b=v[e+120>>2];v[e+52>>2]=m;v[e+48>>2]=1;F3(b,d,e+48|0);k=0;h=v[e+168>>2];f=v[e+120>>2];g=0;if(c>>>0>=3){c=i&-4;d=0;while(1){v[h+(v[f+(g<<2)>>2]<<2)>>2]=g;b=g|1;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;b=g|2;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;b=g|3;v[h+(v[f+(b<<2)>>2]<<2)>>2]=b;g=g+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}b=i&3;if(!b){break l}while(1){v[h+(v[f+(g<<2)>>2]<<2)>>2]=g;g=g+1|0;k=k+1|0;if((b|0)!=(k|0)){continue}break}break l}d=v[e+124>>2];b=v[e+120>>2];v[e+52>>2]=m;v[e+48>>2]=1;F3(b,d,e+48|0)}d=v[e+108>>2];b=v[e+104>>2];v[e+52>>2]=m;v[e+48>>2]=2;F3(b,d,e+48|0);n=v[e+152>>2];p=v[e+104>>2];m:{if(!i){break m}k=0;g=0;if(i-1>>>0>=3){c=i&-4;d=0;while(1){v[n+(v[p+(g<<2)>>2]<<2)>>2]=g;b=g|1;v[n+(v[p+(b<<2)>>2]<<2)>>2]=b;b=g|2;v[n+(v[p+(b<<2)>>2]<<2)>>2]=b;b=g|3;v[n+(v[p+(b<<2)>>2]<<2)>>2]=b;g=g+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}b=i&3;if(!b){break m}while(1){v[n+(v[p+(g<<2)>>2]<<2)>>2]=g;g=g+1|0;k=k+1|0;if((b|0)!=(k|0)){continue}break}}h=v[l>>2];g=v[e+136>>2];f=v[e+120>>2];c=v[e+16>>2];d=v[e+168>>2];b=e+48|0;v[b+48>>2]=i;v[b+40>>2]=n;v[b+36>>2]=d;v[b+32>>2]=c;v[b+28>>2]=p;v[b+24>>2]=f;v[b+20>>2]=g;v[b+8>>2]=m;v[b>>2]=h;c=i<<2;n:{if(!c){v[b+12>>2]=0;d=0;break n}d=v[37696];_=b,$=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,10814,363)|0,v[_+12>>2]=$;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,10814,364)|0}v[b+16>>2]=d;d=v[37696];_=b,$=Ba[v[v[d+12>>2]+8>>2]](d+12|0,i<<3|4,24422,10814,365)|0,v[_+4>>2]=$;if(c){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,10814,366)|0}else{d=0}v[b+44>>2]=d;j=C(C(G(U,C(0)))*C(15));o:{if(j=C(0)){d=~~j>>>0;break o}d=0}v[b+52>>2]=d>>>0<14?d:14;G3(b,v[l>>2],i,e+184|0,e+180|0,0);c=v[b+12>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+12>>2]=0;c=v[b+16>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+16>>2]=0;c=v[b+4>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+4>>2]=0;d=v[b+44>>2];if(d){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+112>>2];p:{if((b|0)<0|!(b&2147483647)){break p}d=v[e+104>>2];if(!d){break p}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+128>>2];q:{if((b|0)<0|!(b&2147483647)){break q}d=v[e+120>>2];if(!d){break q}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+144>>2];r:{if((b|0)<0|!(b&2147483647)){break r}d=v[e+136>>2];if(!d){break r}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+160>>2];s:{if((b|0)<0|!(b&2147483647)){break s}d=v[e+152>>2];if(!d){break s}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+176>>2];t:{if((b|0)<0|!(b&2147483647)){break t}d=v[e+168>>2];if(!d){break t}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+24>>2];if((b|0)<0|!(b&2147483647)){break i}d=v[e+16>>2];if(!d){break i}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[l+4>>2]=v[l+4>>2]-1;d=0;v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;c=0;s=v[e+188>>2];if(s){g=0;u:{if(!s){break u}c=B(s,28);if(!c){break u}f=v[37696];b=Ba[v[v[f>>2]+20>>2]](f)|0?48843:63804;g=Ba[v[v[f+12>>2]+8>>2]](f+12|0,c,b,16608,553)|0}c=v[e+16>>2];b=v[e+20>>2];if((b|0)>0){h=B(b,28)+g|0;b=g;while(1){f=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=f;v[b+24>>2]=v[c+24>>2];f=v[c+20>>2];v[b+16>>2]=v[c+16>>2];v[b+20>>2]=f;f=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=f;c=c+28|0;b=b+28|0;if(h>>>0>b>>>0){continue}break}c=v[e+16>>2]}if(!(!c|v[e+24>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[e+24>>2]=s;v[e+16>>2]=g;m=e+72|0;k=-1;g=0;while(1){f=v[e+184>>2]+(g<<5)|0;c=v[f+24>>2];v:{if((c|0)==-1){v[e+56>>2]=2139095039;v[e+68>>2]=-8388609;v[e+48>>2]=2139095039;v[e+52>>2]=2139095039;v[e+60>>2]=-8388609;v[e+64>>2]=-8388609;k=(k|0)==-1?v[e+20>>2]:k;v[e+72>>2]=B(k,28)|1;break v}b=v[f+28>>2];z[e+48>>2]=z[f>>2];z[e+52>>2]=z[f+4>>2];z[e+56>>2]=z[f+8>>2];z[e+60>>2]=z[f+12>>2];z[e+64>>2]=z[f+16>>2];z[e+68>>2]=z[f+20>>2];if((b|0)<=0){v[e+72>>2]=B(c,28);break v}v[e+72>>2]=c;Ba[v[v[W>>2]+8>>2]](W,m,c,b)}f=v[e+20>>2];w:{if(f>>>0>=(v[e+24>>2]&2147483647)>>>0){b=0;c=v[e+24>>2];n=c&2147483647?c<<1:1;x:{if(!n){break x}c=B(n,28);if(!c){break x}f=v[37696];b=Ba[v[v[f>>2]+20>>2]](f)|0?48843:63804;b=Ba[v[v[f+12>>2]+8>>2]](f+12|0,c,b,16608,553)|0}c=v[e+20>>2];if((c|0)>0){p=B(c,28)+b|0;c=v[e+16>>2];f=b;while(1){h=v[c+4>>2];v[f>>2]=v[c>>2];v[f+4>>2]=h;v[f+24>>2]=v[c+24>>2];h=v[c+20>>2];v[f+16>>2]=v[c+16>>2];v[f+20>>2]=h;h=v[c+12>>2];v[f+8>>2]=v[c+8>>2];v[f+12>>2]=h;c=c+28|0;f=f+28|0;if(p>>>0>f>>>0){continue}break}c=v[e+20>>2]}f=B(c,28)+b|0;c=v[e+52>>2];v[f>>2]=v[e+48>>2];v[f+4>>2]=c;v[f+24>>2]=v[e+72>>2];c=v[e+68>>2];v[f+16>>2]=v[e+64>>2];v[f+20>>2]=c;c=v[e+60>>2];v[f+8>>2]=v[e+56>>2];v[f+12>>2]=c;y:{if(v[e+24>>2]<0){break y}f=v[e+16>>2];if(!f){break y}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}v[e+24>>2]=n;v[e+16>>2]=b;v[e+20>>2]=v[e+20>>2]+1;break w}b=v[e+52>>2];h=v[e+16>>2]+B(f,28)|0;v[h>>2]=v[e+48>>2];v[h+4>>2]=b;v[h+24>>2]=v[m>>2];c=e- -64|0;b=v[c+4>>2];v[h+16>>2]=v[c>>2];v[h+20>>2]=b;b=v[e+60>>2];v[h+8>>2]=v[e+56>>2];v[h+12>>2]=b;v[e+20>>2]=f+1}g=g+1|0;if((s|0)!=(g|0)){continue}break}c=v[e+20>>2]}v[a+188>>2]=c;v[a+144>>2]=1065353216;v[a+148>>2]=1065353216;c=c>>>2|0;v[a+192>>2]=c;v[a+152>>2]=1065353216;v[a+156>>2]=1065353216;b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,B(c,112)+131|0,24422,10814,864)|0;if(b){d=b+131&-128;v[d-4>>2]=d-b}z[a+128>>2]=A;k=0;v[a+124>>2]=0;z[a+120>>2]=H;z[a+116>>2]=F;z[a+112>>2]=t;v[a+200>>2]=d;v[a+172>>2]=0;v[a+176>>2]=4;v[a+140>>2]=0;z[a+136>>2]=E;z[a+132>>2]=D;z[a+168>>2]=C(E-H)*C(15259021893143654e-21);z[a+164>>2]=C(D-F)*C(15259021893143654e-21);z[a+160>>2]=C(A-t)*C(15259021893143654e-21);b=v[e+180>>2];v[a+180>>2]=1;v[a+184>>2]=b;if(v[a+192>>2]){c=v[e+16>>2];while(1){b=B(k,112);g=b+d|0;b=b+c|0;z[g+48>>2]=z[b+12>>2];z[g+64>>2]=z[b+16>>2];z[g+80>>2]=z[b+20>>2];z[g>>2]=z[b>>2];z[g+16>>2]=z[b+4>>2];z[g+32>>2]=z[b+8>>2];v[g+96>>2]=v[b+24>>2];b=k<<2;f=c+B(b|1,28)|0;z[g+52>>2]=z[f+12>>2];z[g+68>>2]=z[f+16>>2];z[g+84>>2]=z[f+20>>2];z[g+4>>2]=z[f>>2];z[g+20>>2]=z[f+4>>2];z[g+36>>2]=z[f+8>>2];v[g+100>>2]=v[f+24>>2];f=c+B(b|2,28)|0;z[g+56>>2]=z[f+12>>2];z[g+72>>2]=z[f+16>>2];z[g+88>>2]=z[f+20>>2];z[g+8>>2]=z[f>>2];z[g+24>>2]=z[f+4>>2];z[g+40>>2]=z[f+8>>2];v[g+104>>2]=v[f+24>>2];b=c+B(b|3,28)|0;z[g+60>>2]=z[b+12>>2];z[g+76>>2]=z[b+16>>2];z[g+92>>2]=z[b+20>>2];z[g+12>>2]=z[b>>2];z[g+28>>2]=z[b+4>>2];z[g+44>>2]=z[b+8>>2];v[g+108>>2]=v[b+24>>2];k=k+1|0;if(k>>>0>2]){continue}break}}b=v[e+24>>2];z:{if((b|0)<0|!(b&2147483647)){break z}d=v[e+16>>2];if(!d){break z}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+192>>2];A:{if((b|0)<0|!(b&2147483647)){break A}d=v[e+184>>2];if(!d){break A}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}b=v[e+8>>2];B:{if((b|0)<0|!(b&2147483647)){break B}d=v[e>>2];if(!d){break B}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}xa=e+208|0;m=v[q+16>>2];d=0;b=0;c=v[a+12>>2];f=v[c+68>>2];C:{if(!f){break C}f=B(f,12);D:{if(f){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,f,24422,9248,104)|0;c=v[a+12>>2];if(!v[c+68>>2]){break D}}while(1){f=v[c+72>>2]+B(v[m+(d<<2)>>2],12)|0;c=v[f+4>>2];g=B(d,12)+b|0;v[g>>2]=v[f>>2];v[g+4>>2]=c;v[g+8>>2]=v[f+8>>2];d=d+1|0;c=v[a+12>>2];if(d>>>0>2]){continue}break}}f=v[c+72>>2];if(f){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,f);c=v[a+12>>2]}v[c+72>>2]=b;if(v[c+80>>2]){g=v[c+68>>2];b=g+g|0;d=b>>>0>>0?-1:b;E:{if(!d){b=0;break E}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?27439:63804;b=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,b,9248,112)|0;c=v[a+12>>2];g=v[c+68>>2]}n=v[c+80>>2];F:{G:{if(g){p=g&3;c=0;d=0;if(g-1>>>0>=3){h=g&-4;g=0;while(1){u[(d<<1)+b>>1]=x[n+(v[m+(d<<2)>>2]<<1)>>1];f=d|1;u[(f<<1)+b>>1]=x[n+(v[m+(f<<2)>>2]<<1)>>1];f=d|2;u[(f<<1)+b>>1]=x[n+(v[m+(f<<2)>>2]<<1)>>1];f=d|3;u[(f<<1)+b>>1]=x[n+(v[m+(f<<2)>>2]<<1)>>1];d=d+4|0;g=g+4|0;if((h|0)!=(g|0)){continue}break}}if(!p){break G}while(1){u[(d<<1)+b>>1]=x[n+(v[m+(d<<2)>>2]<<1)>>1];d=d+1|0;c=c+1|0;if((p|0)!=(c|0)){continue}break}break G}if(!n){break F}}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,n);c=v[a+12>>2]}v[c+80>>2]=b}b=v[a+8>>2];if(w[b+14|0]?0:w[b+12|0]){break C}d=v[c+68>>2];f=(d&1073741823)!=(d|0)?-1:d<<2;H:{if(!f){b=0;break H}d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?29035:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,f,b,9248,121)|0;c=v[a+12>>2];d=v[c+68>>2]}g=v[c+48>>2];I:{J:{K:{if(d){d=0;if(g){break K}while(1){a=d<<2;v[a+b>>2]=v[a+m>>2];d=d+1|0;if(d>>>0>2]){continue}break}break I}if(!g){break I}break J}while(1){f=d<<2;v[f+b>>2]=v[g+(v[f+m>>2]<<2)>>2];d=d+1|0;if(d>>>0>2]){continue}break}}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g);c=v[a+12>>2]}v[c+48>>2]=b}a=v[q+24>>2];L:{if((a|0)<0|!(a&2147483647)){break L}b=v[q+16>>2];if(!b){break L}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}xa=q+32|0}function FZ(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),m=C(0),n=C(0),o=0,r=C(0),s=0,u=C(0),y=C(0),A=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=0,L=C(0),M=0,N=0,O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=C(0),ca=0,da=C(0),ea=C(0),fa=C(0),ga=0,ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=0,qa=0,ra=C(0),sa=0,ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=0,za=C(0),Aa=C(0),Ca=C(0),Da=0,Ea=C(0),Fa=C(0),Ga=C(0),Ha=0;F=xa-80|0;xa=F;E=z[b+12>>2];f=z[b>>2];u=C(E-f);y=z[b+28>>2];i=z[b+4>>2];A=C(y-i);k=z[b+24>>2];R=C(k-f);W=z[b+16>>2];g=C(W-i);S=C(C(u*A)-C(R*g));h=g;X=z[b+32>>2];g=z[b+8>>2];Y=C(X-g);Z=z[b+20>>2];_=C(Z-g);A=C(C(h*Y)-C(A*_));u=C(C(_*R)-C(Y*u));R=C(C(S*S)+C(C(A*A)+C(u*u)));if(R>C(0)){O=C(C(1)/C(K(R)));n=C(S*O);Q=C(u*O);O=C(A*O)}z[F+68>>2]=Q;z[F+64>>2]=O;z[F+72>>2]=n;S=C(C(g*n)+C(C(f*O)+C(i*Q)));z[F+76>>2]=-S;a:{if(C(C(C(z[a+2164>>2]*n)+C(C(z[a+2156>>2]*O)+C(Q*z[a+2160>>2])))-S)>2]=n;f=C(C(C(E+f)+k)*C(.3333333432674408));z[F+48>>2]=f;i=C(C(C(W+i)+y)*C(.3333333432674408));z[F+52>>2]=i;g=z[a+2144>>2];Q=z[a+2120>>2];O=z[a+2132>>2];S=z[a+2148>>2];A=z[a+2136>>2];u=z[a+2112>>2];E=z[a+2124>>2];y=z[a+2108>>2];z[F+40>>2]=C(C(C(f*z[a+2116>>2])+C(i*z[a+2128>>2]))+C(n*z[a+2140>>2]))+z[a+2152>>2];z[F+36>>2]=S+C(C(C(f*u)+C(i*E))+C(n*A));z[F+32>>2]=g+C(C(C(f*y)+C(i*Q))+C(n*O));P=d;o=b;ga=F- -64|0;$=v[a+2188>>2];G=a+2060|0;N=a+2108|0;J=v[a+2192>>2];R=z[a+2196>>2];i=C(0);g=C(0);n=C(0);b=xa-3152|0;U=b;xa=b;aa=v[a+2180>>2];ca=v[aa+16>>2];M=b-((ca<<2)+15&-16)|0;xa=M;sa=v[aa+28>>2];pa=v[aa+24>>2];b:{c:{d:{qa=w[a+2205|0];e:{if(qa){if(!ca){break d}W=z[G+44>>2];Q=z[G+40>>2];O=z[G+32>>2];S=z[G+28>>2];A=z[G+20>>2];X=z[G+16>>2];T=z[G+36>>2];Y=z[G+24>>2];Z=z[G+12>>2];_=z[G+8>>2];r=z[G+4>>2];da=z[G>>2];ha=z[F+40>>2];ia=z[F+36>>2];ja=z[F+32>>2];b=0;d=-1;f=C(34028234663852886e22);s=M;while(1){V=pa+B(b,20)|0;k=z[V+8>>2];m=z[V>>2];L=z[V+4>>2];h=z[V+12>>2];f:{if(C(C(C(ha*k)+C(C(ja*m)+C(ia*L)))+h)>2]=b;u=C(C(C(m*_)+C(L*A))+C(k*O));E=C(C(C(m*da)+C(L*Z))+C(k*Y));y=C(C(C(m*r)+C(L*X))+C(k*S));ea=C(C(u*W)+C(C(E*T)+C(y*Q)));fa=C(ea-h);h=C(C(z[o+8>>2]*u)+C(C(z[o>>2]*E)+C(y*z[o+4>>2])));H=C(C(z[o+20>>2]*u)+C(C(z[o+12>>2]*E)+C(y*z[o+16>>2])));ba=h>2]*u)+C(C(z[o+24>>2]*E)+C(y*z[o+28>>2])));ba=I>ba?ba:I;if(C(fa+R)>2])+C(C(m*z[V>>2])+C(L*z[V+4>>2]))));h=h>H?h:H;h=h>I?h:I;if(k>C(h+R)){break b}s=s+4|0;m=C(fa-ba);k=C(h-k);k=k>m?m:k;if(!(k>2];da=z[J+44>>2];Q=z[F+36>>2];ha=z[J+56>>2];O=z[F+40>>2];ia=z[J+68>>2];ja=C(C(C(f*da)+C(Q*ha))+C(O*ia));ea=z[J+40>>2];fa=z[J+52>>2];ba=z[J- -64>>2];ra=C(C(C(f*ea)+C(Q*fa))+C(O*ba));ma=z[J+36>>2];na=z[J+48>>2];la=z[J+60>>2];oa=C(C(C(f*ma)+C(Q*na))+C(O*la));W=z[G+44>>2];Q=z[G+40>>2];O=z[G+32>>2];S=z[G+28>>2];A=z[G+20>>2];X=z[G+16>>2];ka=z[G+36>>2];Y=z[G+24>>2];Z=z[G+12>>2];_=z[G+8>>2];r=z[G+4>>2];va=z[G>>2];b=0;d=-1;f=C(34028234663852886e22);s=M;while(1){V=pa+B(b,20)|0;I=z[V+12>>2];k=z[V+8>>2];m=z[V>>2];L=z[V+4>>2];g:{if(C(I+C(C(ja*k)+C(C(oa*m)+C(ra*L))))>2]=b;E=C(C(C(da*m)+C(ha*L))+C(ia*k));y=C(C(C(ma*m)+C(na*L))+C(la*k));h=C(C(C(ea*m)+C(fa*L))+C(ba*k));u=C(K(C(C(E*E)+C(C(y*y)+C(h*h)))));T=C(C(1)/u);u=u>C(0)?T:C(1);y=C(y*u);h=C(h*u);H=C(E*u);u=C(C(C(y*_)+C(h*A))+C(H*O));E=C(C(C(y*va)+C(h*Z))+C(H*Y));y=C(C(C(y*r)+C(h*X))+C(H*S));ta=C(C(u*W)+C(C(E*ka)+C(y*Q)));wa=C(ta-C(I*T));h=C(C(z[o+8>>2]*u)+C(C(z[o>>2]*E)+C(y*z[o+4>>2])));H=C(C(z[o+20>>2]*u)+C(C(z[o+12>>2]*E)+C(y*z[o+16>>2])));ua=h>2]*u)+C(C(z[o+24>>2]*E)+C(y*z[o+28>>2])));ua=I>ua?ua:I;if(C(wa+R)>2])+C(C(m*z[V>>2])+C(L*z[V+4>>2])))*T)+ta);h=h>H?h:H;h=h>I?h:I;if(k>C(h+R)){break b}s=s+4|0;m=C(wa-ua);k=C(h-k);k=k>m?m:k;if(!(k>2;break c}h:{i:{if(!qa){if(ca){break i}break h}if(!ca){break h}T=z[o+32>>2];da=z[o+28>>2];ha=z[o+20>>2];ia=z[o+16>>2];ja=z[G+36>>2];ea=z[G>>2];fa=z[o+24>>2];ba=z[o+12>>2];ra=z[o+8>>2];ma=z[o+4>>2];na=z[o>>2];d=-1;b=0;while(1){s=pa+B(b,20)|0;k=z[s>>2];m=z[s+4>>2];L=z[s+8>>2];u=C(C(C(k*_)+C(m*A))+C(L*O));E=C(C(C(k*ea)+C(m*Z))+C(L*Y));y=C(C(C(k*r)+C(m*X))+C(L*S));la=C(C(u*W)+C(C(E*ja)+C(y*Q)));oa=C(la-z[s+12>>2]);h=C(C(ra*u)+C(C(na*E)+C(ma*y)));H=C(C(ha*u)+C(C(ba*E)+C(ia*y)));ka=hka?ka:I;if(C(oa+R)>2])+C(C(k*z[s>>2])+C(m*z[s+4>>2]))));h=h>H?h:H;h=h>I?h:I;if(k>C(h+R)){break b}m=C(oa-ka);k=C(h-k);k=k>m?m:k;if(k>2]=b;b=b+1|0;if((ca|0)!=(b|0)){continue}break}break c}da=z[J+68>>2];ha=z[J- -64>>2];ia=z[J+60>>2];ja=z[J+56>>2];ea=z[J+52>>2];fa=z[J+48>>2];ba=z[J+44>>2];ra=z[J+40>>2];ma=z[o+32>>2];na=z[o+28>>2];la=z[o+20>>2];oa=z[o+16>>2];ka=z[G+36>>2];va=z[G>>2];ta=z[J+36>>2];wa=z[o+24>>2];ua=z[o+12>>2];Ea=z[o+8>>2];Fa=z[o+4>>2];Ga=z[o>>2];d=-1;b=0;while(1){s=pa+B(b,20)|0;k=z[s>>2];m=z[s+4>>2];L=z[s+8>>2];u=C(C(C(k*ta)+C(m*fa))+C(L*ia));h=u;E=C(C(C(k*ba)+C(m*ja))+C(L*da));y=C(u*u);u=C(C(C(k*ra)+C(m*ea))+C(L*ha));y=C(K(C(C(E*E)+C(y+C(u*u)))));T=C(C(1)/y);y=y>C(0)?T:C(1);h=C(h*y);H=C(u*y);y=C(E*y);u=C(C(C(_*h)+C(A*H))+C(y*O));E=C(C(Y*y)+C(C(va*h)+C(Z*H)));y=C(C(y*S)+C(C(r*h)+C(X*H)));Aa=C(C(u*W)+C(C(E*ka)+C(y*Q)));Ca=C(Aa-C(z[s+12>>2]*T));h=C(C(Ea*u)+C(C(Ga*E)+C(Fa*y)));H=C(C(la*u)+C(C(ua*E)+C(oa*y)));za=hza?za:I;if(C(Ca+R)>2])+C(C(k*z[s>>2])+C(m*z[s+4>>2])))*T)+Aa);h=h>H?h:H;h=h>I?h:I;if(k>C(h+R)){break b}m=C(Ca-za);k=C(h-k);k=k>m?m:k;if(k>2]=b;b=b+1|0;if((ca|0)!=(b|0)){continue}break}break c}d=-1;ca=0;break c}d=-1;f=C(34028234663852886e22);ca=0}v[F+24>>2]=0;v[F+16>>2]=0;v[F+20>>2]=0;v[F+12>>2]=2139095039;Ba[v[aa+64>>2]](aa,ga,G,J,U+24|0,U+3104|0);u=z[o+8>>2];Q=z[ga+8>>2];E=z[o>>2];O=z[ga>>2];y=z[o+4>>2];S=z[ga+4>>2];A=C(C(u*Q)+C(C(E*O)+C(y*S)));k=z[o+20>>2];W=z[o+12>>2];X=z[o+16>>2];r=C(C(k*Q)+C(C(W*O)+C(S*X)));h=r>A?A:r;Y=z[o+32>>2];Z=z[o+24>>2];_=z[o+28>>2];m=C(C(Y*Q)+C(C(Z*O)+C(S*_)));h=h>2];if(h>C(L+R)){break b}A=r>2];if(C(A+R)>2]>A){z[F+12>>2]=A;f=z[$+28>>2];n=z[$+16>>2];i=z[$+24>>2];g=z[$>>2];A=z[$+12>>2];r=z[$+4>>2];z[F+24>>2]=C(C(O*z[$+8>>2])+C(S*z[$+20>>2]))+C(Q*z[$+32>>2]);z[F+20>>2]=C(C(O*r)+C(S*n))+C(Q*f);z[F+16>>2]=C(C(O*g)+C(S*A))+C(Q*i)}Da=v[aa+24>>2];b=Da+B(d,20)|0;f=z[b>>2];m=z[N>>2];n=z[b+4>>2];L=z[N+12>>2];i=z[b+8>>2];h=z[N+24>>2];g=C(C(C(f*m)+C(n*L))+C(i*h));H=z[J+8>>2];I=z[N+4>>2];T=z[N+16>>2];da=z[N+28>>2];A=C(C(C(f*I)+C(n*T))+C(i*da));ha=z[J+20>>2];ia=z[N+8>>2];ja=z[N+20>>2];ea=z[N+32>>2];r=C(C(C(f*ia)+C(n*ja))+C(i*ea));fa=z[J+32>>2];f=C(C(C(g*H)+C(A*ha))+C(r*fa));ba=z[J+4>>2];ra=z[J+16>>2];ma=z[J+28>>2];n=C(C(C(g*ba)+C(A*ra))+C(r*ma));na=z[J>>2];la=z[J+12>>2];oa=z[J+24>>2];i=C(C(C(g*na)+C(A*la))+C(r*oa));ka=z[N+44>>2];va=z[N+36>>2];ta=z[N+40>>2];g=C(z[b+12>>2]-C(C(ka*r)+C(C(va*g)+C(A*ta))));b=0;if(!(!(P&8)|!(R>=C(C(C(k*f)+C(C(W*i)+C(X*n)))+g)?1:R>=C(C(C(u*f)+C(C(E*i)+C(y*n)))+g)))){z[U+3112>>2]=u-k;z[U+3108>>2]=y-X;z[U+3104>>2]=E-W;b=1}if(!(!(P&16)|!(R>=C(C(C(Y*f)+C(C(Z*i)+C(_*n)))+g)?1:R>=C(C(C(k*f)+C(C(W*i)+C(X*n)))+g)))){d=U+3104|B(b,12);z[d+8>>2]=k-Y;z[d+4>>2]=X-_;z[d>>2]=W-Z;b=b+1|0}if(!(!(P&32)|!(R>=C(C(C(u*f)+C(C(E*i)+C(y*n)))+g)?1:R>=C(C(C(Y*f)+C(C(Z*i)+C(_*n)))+g)))){d=(U+3104|0)+B(b,12)|0;z[d+8>>2]=Y-u;z[d+4>>2]=_-y;z[d>>2]=Z-E;b=b+1|0}sa=v[aa+28>>2];wa=z[ga+12>>2];f=z[ga+8>>2];n=z[ga>>2];i=z[ga+4>>2];v[U+24>>2]=0;A=C(34028234663852886e22);j:{k:{if(!ca|!b){break k}g=C(C(C(ia*n)+C(ja*i))+C(ea*f));r=C(C(C(m*n)+C(L*i))+C(h*f));f=C(C(C(I*n)+C(T*i))+C(da*f));L=C(C(fa*g)+C(C(H*r)+C(ha*f)));h=C(C(ma*g)+C(C(ba*r)+C(ra*f)));H=C(C(oa*g)+C(C(na*r)+C(la*f)));I=C(wa-C(C(ka*g)+C(C(va*r)+C(ta*f))));Ha=v[aa+32>>2];while(1){ca=ca-1|0;l:{pa=B(v[M>>2],20)+Da|0;P=w[pa+18|0];if(!P){break l}V=x[pa+16>>1]+Ha|0;s=U+3104|0;d=b;while(1){d=d-1|0;ya=P&255;if(ya){P=0;while(1){qa=P+V|0;P=P+1|0;ga=sa+B(w[V+(P>>>0>>0?P:0)|0],12)|0;n=z[ga+4>>2];i=z[ga>>2];qa=sa+B(w[qa|0],12)|0;g=z[qa+8>>2];r=z[qa>>2];m=z[qa+4>>2];m:{n:{if(R>=C(I+C(C(g*L)+C(C(r*H)+C(h*m))))){f=z[ga+8>>2];break n}f=z[ga+8>>2];if(!(R>=C(I+C(C(f*L)+C(C(i*H)+C(h*n)))))){break m}}i=C(r-i);n=C(m-n);f=C(g-f);g=C(C(C(i*z[J>>2])+C(n*z[J+12>>2]))+C(f*z[J+24>>2]));r=C(C(C(i*z[J+4>>2])+C(n*z[J+16>>2]))+C(f*z[J+28>>2]));f=C(C(C(i*z[J+8>>2])+C(n*z[J+20>>2]))+C(f*z[J+32>>2]));i=C(C(C(g*z[G>>2])+C(r*z[G+12>>2]))+C(f*z[G+24>>2]));m=z[s+4>>2];T=z[s>>2];da=C(C(C(g*z[G+4>>2])+C(r*z[G+16>>2]))+C(f*z[G+28>>2]));n=C(C(i*m)-C(T*da));f=C(C(C(g*z[G+8>>2])+C(r*z[G+20>>2]))+C(f*z[G+32>>2]));g=z[s+8>>2];r=C(C(f*T)-C(g*i));m=C(C(da*g)-C(m*f));if(!(C(D(n))>C(9.999999974752427e-7)?1:C(D(m))>C(9.999999974752427e-7)|C(D(r))>C(9.999999974752427e-7))){break m}g=C(0);i=C(0);f=C(0);T=C(C(n*n)+C(C(m*m)+C(r*r)));if(T>C(0)){g=n;n=C(C(1)/C(K(T)));f=C(g*n);g=C(m*n);i=C(r*n)}z[U+16>>2]=f;z[U+12>>2]=i;z[U+8>>2]=g;tZ(U+24|0,U+8|0)}if((P|0)!=(ya|0)){continue}break}}if(!d){break l}s=s+12|0;P=w[pa+18|0];continue}}M=M+4|0;if(ca){continue}break}b=v[U+24>>2];if(!b){break k}f=z[N+8>>2];n=z[N+20>>2];i=z[N+32>>2];g=z[N+44>>2];da=C(C(C(C(Z*f)+C(_*n))+C(Y*i))+g);A=z[N+4>>2];r=z[N+16>>2];m=z[N+28>>2];L=z[N+40>>2];ha=C(C(C(C(Z*A)+C(_*r))+C(Y*m))+L);h=z[N>>2];H=z[N+12>>2];I=z[N+24>>2];T=z[N+36>>2];ia=C(C(C(C(Z*h)+C(_*H))+C(Y*I))+T);ja=C(C(C(C(W*f)+C(X*n))+C(k*i))+g);ea=C(C(C(C(W*A)+C(X*r))+C(k*m))+L);fa=C(C(C(C(W*h)+C(X*H))+C(k*I))+T);ba=C(C(C(C(E*f)+C(y*n))+C(u*i))+g);L=C(C(C(C(E*A)+C(y*r))+C(u*m))+L);h=C(C(C(C(E*h)+C(y*H))+C(u*I))+T);P=U+24|4;A=C(34028234663852886e22);while(1){i=z[P>>2];g=z[P+4>>2];r=z[P+8>>2];f=C(C(C(i*z[N+8>>2])+C(g*z[N+20>>2]))+C(r*z[N+32>>2]));n=C(C(C(i*z[N>>2])+C(g*z[N+12>>2]))+C(r*z[N+24>>2]));i=C(C(C(i*z[N+4>>2])+C(g*z[N+16>>2]))+C(r*z[N+28>>2]));m=C(C(z[aa+8>>2]*f)+C(C(z[aa>>2]*n)+C(i*z[aa+4>>2])));g=C(C((l(2,v[aa+56>>2]|(p(f),j(2))&-2147483648),q())*f)+C(C((l(2,v[aa+48>>2]|(p(n),j(2))&-2147483648),q())*n)+C(i*(l(2,v[aa+52>>2]|(p(i),j(2))&-2147483648),q()))));r=z[aa+44>>2];H=g>r?g:r;g=C(C(ba*f)+C(C(h*n)+C(L*i)));r=C(C(ja*f)+C(C(fa*n)+C(ea*i)));I=gI?I:f));i=g>r?g:r;f=C((fn?n:f)>A){break o}Ba[v[aa+64>>2]](aa,P,G,J,U+8|0,U+3148|0);f=z[P+8>>2];n=z[P>>2];i=z[P+4>>2];g=C(C(u*f)+C(C(E*n)+C(y*i)));r=C(C(k*f)+C(C(W*n)+C(X*i)));I=gI?I:m;H=z[U+3148>>2];if(I>C(H+R)){break j}g=g>r?g:r;g=g>m?g:m;r=z[U+8>>2];if(C(g+R)m?m:g;if(!(g>2]>A)){break b}z[F+12>>2]=A;f=z[$+28>>2];n=z[$+16>>2];i=z[$+24>>2];g=z[$>>2];A=z[$+12>>2];u=z[$+4>>2];z[F+24>>2]=C(C(O*z[$+8>>2])+C(S*z[$+20>>2]))+C(Q*z[$+32>>2]);z[F+20>>2]=C(C(O*u)+C(S*n))+C(Q*f);z[F+16>>2]=C(C(O*g)+C(S*A))+C(Q*i);t[F+11|0]=0;break b}ya=0}xa=U+3152|0;if(!ya){break a}if(w[F+11|0]){if(!DZ(a,F- -64|0,o,F+48|0,F+16|0,z[F+12>>2],c)){break a}t[a+2224|0]=1;d=v[a+1284>>2];p:{if((d|0)==128){P=e+8|0;break p}o=a+4|0;M=v[e>>2];b=v[e+4>>2];P=b>>>0>M>>>0?M:b;s=b>>>0>>0?M:b;b=P<<16|s;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=(((b>>>16^b)&127)+a|0)+1156|0;b=w[c|0];q:{if((b|0)!=255){while(1){b=b&255;c=o+(b<<3)|0;if((P|0)==v[c>>2]&(s|0)==v[c+4>>2]){break q}c=(a+b|0)+1028|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+1028|0]=255;b=v[a+1284>>2];v[a+1284>>2]=b+1;c=o+(b<<3)|0;v[c>>2]=P;v[c+4>>2]=s;M=v[e>>2];d=v[a+1284>>2]}P=e+8|0;if((d|0)==128){break p}s=v[e+8>>2];G=s>>>0>M>>>0?M:s;M=s>>>0>>0?M:s;b=G<<16|M;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=(((b>>>16^b)&127)+a|0)+1156|0;b=w[c|0];r:{if((b|0)!=255){while(1){b=b&255;c=o+(b<<3)|0;if((G|0)==v[c>>2]&(M|0)==v[c+4>>2]){break r}c=(a+b|0)+1028|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+1028|0]=255;b=v[a+1284>>2];v[a+1284>>2]=b+1;c=o+(b<<3)|0;v[c>>2]=G;v[c+4>>2]=M;d=v[a+1284>>2];s=v[e+8>>2]}if((d|0)==128){break p}b=v[e+4>>2];M=b>>>0>>0?b:s;s=b>>>0>s>>>0?b:s;b=M<<16|s;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=(((b>>>16^b)&127)+a|0)+1156|0;b=w[c|0];if((b|0)!=255){while(1){b=b&255;c=o+(b<<3)|0;if((M|0)==v[c>>2]&(s|0)==v[c+4>>2]){break p}c=(a+b|0)+1028|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+1028|0]=255;b=v[a+1284>>2];v[a+1284>>2]=b+1;c=o+(b<<3)|0;v[c>>2]=M;v[c+4>>2]=s}d=v[a+2056>>2];if((d|0)==128){break a}M=a+1288|0;c=v[e>>2];s=((c&127)+a|0)+1928|0;b=w[s|0];s:{if((b|0)!=255){while(1){b=b&255;if((c|0)==v[M+(b<<2)>>2]){break s}s=(a+b|0)+1800|0;b=w[s|0];if((b|0)!=255){continue}break}}t[s|0]=d;t[(a+d|0)+1800|0]=255;b=v[a+2056>>2];v[a+2056>>2]=b+1;v[M+(b<<2)>>2]=c;d=v[a+2056>>2]}if((d|0)==128){break a}e=v[e+4>>2];c=((e&127)+a|0)+1928|0;b=w[c|0];t:{if((b|0)!=255){while(1){b=b&255;if((e|0)==v[M+(b<<2)>>2]){break t}c=(a+b|0)+1800|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+1800|0]=255;b=v[a+2056>>2];v[a+2056>>2]=b+1;v[M+(b<<2)>>2]=e;d=v[a+2056>>2]}if((d|0)==128){break a}e=v[P>>2];c=((e&127)+a|0)+1928|0;b=w[c|0];if((b|0)!=255){while(1){b=b&255;if((e|0)==v[M+(b<<2)>>2]){break a}c=(a+b|0)+1800|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+1800|0]=255;b=a;a=v[a+2056>>2];v[b+2056>>2]=a+1;v[M+(a<<2)>>2]=e;break a}d=v[a>>2];s=v[d+4360>>2];b=s+17|0;if(b>>>0>(v[d+4364>>2]&2147483647)>>>0){GZ(d,b);d=v[a>>2];s=v[d+4360>>2]}v[d+4360>>2]=b;a=v[d+4356>>2]+(s<<2)|0;v[a>>2]=c;z[a+4>>2]=z[o>>2];z[a+8>>2]=z[o+4>>2];z[a+12>>2]=z[o+8>>2];z[a+16>>2]=z[o+12>>2];z[a+20>>2]=z[o+16>>2];z[a+24>>2]=z[o+20>>2];z[a+28>>2]=z[o+24>>2];z[a+32>>2]=z[o+28>>2];z[a+36>>2]=z[o+32>>2];v[a+40>>2]=v[e>>2];v[a+44>>2]=v[e+4>>2];v[a+48>>2]=v[e+8>>2];z[a+52>>2]=z[F+16>>2];z[a+56>>2]=z[F+20>>2];z[a+60>>2]=z[F+24>>2];z[a+64>>2]=z[F+12>>2]}xa=F+80|0}function Ev(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=C(0),r=C(0),s=C(0),u=0,x=0,y=0,A=C(0),D=0,E=C(0),G=C(0),H=0,I=0,J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=C(0),da=C(0),ea=C(0);h=xa-720|0;xa=h;p=v[f>>2];f=v[b+40>>2];z[h+704>>2]=z[e>>2];r=z[a+12>>2];M=z[a+8>>2];N=z[a+4>>2];a=v[b+12>>2];I=v[b+8>>2];O=z[b+4>>2];v[h+700>>2]=0;v[h+692>>2]=I;v[h+696>>2]=a;z[h+688>>2]=O;A=z[c+20>>2];s=z[c+24>>2];m=z[c>>2];G=z[c+4>>2];n=z[c+8>>2];q=z[c+12>>2];E=z[c+16>>2];v[h+684>>2]=0;z[h+680>>2]=s;z[h+676>>2]=A;z[h+672>>2]=E;z[h+668>>2]=q;z[h+664>>2]=n;z[h+660>>2]=G;z[h+656>>2]=m;P=z[d+20>>2];J=z[d+24>>2];l=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];i=z[d+12>>2];Q=z[d+16>>2];v[h+652>>2]=0;z[h+648>>2]=J;z[h+644>>2]=P;z[h+640>>2]=Q;z[h+636>>2]=i;z[h+632>>2]=k;z[h+628>>2]=j;z[h+624>>2]=l;v[h+620>>2]=0;T=C(-l);E=C(E-Q);A=C(A-P);s=C(s-J);P=C(C(C(T*E)-C(A*j))-C(k*s));J=C(C(i*i)+C(-.5));Q=C(C(C(J*A)+C(i*C(C(l*s)-C(k*E))))-C(j*P));z[h+612>>2]=Q+Q;Q=C(C(C(i*C(C(j*E)-C(l*A)))+C(J*s))-C(k*P));z[h+616>>2]=Q+Q;E=C(C(C(J*E)+C(i*C(C(k*A)-C(j*s))))-C(l*P));z[h+608>>2]=E+E;E=C(C(C(m*j)-C(l*G))+C(C(n*i)-C(q*k)));z[h+600>>2]=E;A=C(C(C(G*k)-C(j*n))+C(C(m*i)-C(q*l)));z[h+592>>2]=A;l=C(C(C(n*l)-C(k*m))+C(C(G*i)-C(q*j)));z[h+596>>2]=l;i=C(C(q*i)-C(C(C(T*m)-C(G*j))-C(k*n)));z[h+604>>2]=i;a=v[h+620>>2];v[h+584>>2]=v[h+616>>2];v[h+588>>2]=a;v[h+572>>2]=0;j=C(A+A);m=C(C(1)-C(A*j));k=C(l+l);G=C(l*k);z[h+568>>2]=m-G;n=C(E*k);q=C(i*j);z[h+564>>2]=n-q;v[h+556>>2]=0;z[h+552>>2]=n+q;s=m;m=C(E+E);n=C(E*m);z[h+548>>2]=s-n;a=v[h+612>>2];v[h+576>>2]=v[h+608>>2];v[h+580>>2]=a;q=C(E*j);k=C(i*k);z[h+560>>2]=q+k;j=C(l*j);i=C(i*m);z[h+544>>2]=j-i;v[h+540>>2]=0;z[h+536>>2]=q-k;z[h+532>>2]=j+i;z[h+528>>2]=C(C(1)-G)-n;E=z[e+8>>2];i=C(E*C(.15000000596046448));j=M>=N?N:M;q=j<=r?j:r;G=C(q*C(.15000000596046448));n=i>2];j=C(O*k);l=z[h+692>>2];i=C(z[f+56>>2]*l);s=i>=j?j:i;m=z[h+696>>2];j=C(z[f+60>>2]*m);s=C((j>=s?s:j)*C(.25));A=A>2]=n;c=w[p+64|0];if(c){i=C(n*C(.800000011920929));m=C(i*i);a=c;while(1){e=v[p+76>>2];a=a-1|0;d=e+B(a,48)|0;j=z[d+24>>2];n=z[d+40>>2];i=z[d+8>>2];k=z[d>>2];l=z[d+4>>2];A=C(z[h+584>>2]+C(C(z[h+568>>2]*i)+C(C(z[h+536>>2]*k)+C(l*z[h+552>>2]))));s=C(z[h+576>>2]+C(C(z[h+560>>2]*i)+C(C(z[h+528>>2]*k)+C(l*z[h+544>>2]))));P=z[d+16>>2];O=z[d+32>>2];k=C(z[h+580>>2]+C(C(z[h+564>>2]*i)+C(C(z[h+532>>2]*k)+C(l*z[h+548>>2]))));l=z[d+20>>2];J=z[d+36>>2];i=C(C(n*C(A-j))+C(C(C(s-P)*O)+C(C(k-l)*J)));j=C(j-C(A-C(n*i)));n=C(j*j);j=C(P-C(s-C(O*i)));s=C(j*j);j=C(l-C(k-C(J*i)));a:{if(m>2];v[d>>2]=v[e>>2];v[d+4>>2]=u;u=v[e+44>>2];v[d+40>>2]=v[e+40>>2];v[d+44>>2]=u;u=v[e+36>>2];v[d+32>>2]=v[e+32>>2];v[d+36>>2]=u;u=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=u;u=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=u;u=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=u;break a}z[d+44>>2]=i}if(a){continue}break}k=z[f+52>>2];u=w[p+64|0];m=z[h+696>>2];j=C(z[f+60>>2]*m);l=z[h+692>>2];i=C(z[f+56>>2]*l)}n=z[h+688>>2];z[h+496>>2]=K(C(C(r*r)+C(C(N*N)+C(M*M))));s=C(j*j);j=C(k*n);z[h+480>>2]=K(C(s+C(C(j*j)+C(i*i))));b:{c:{if((c|0)==(u&255)){if(!o1(p,h+592|0,h+656|0,h+624|0,h+512|0,h+496|0,h+480|0)){break c}}a=v[h+668>>2];v[h+168>>2]=v[h+664>>2];v[h+172>>2]=a;a=v[h+636>>2];v[h+312>>2]=v[h+632>>2];v[h+316>>2]=a;a=v[h+620>>2];v[p+24>>2]=v[h+616>>2];v[p+28>>2]=a;a=v[h+660>>2];v[h+160>>2]=v[h+656>>2];v[h+164>>2]=a;a=v[h+628>>2];v[h+304>>2]=v[h+624>>2];v[h+308>>2]=a;a=v[h+612>>2];v[p+16>>2]=v[h+608>>2];v[p+20>>2]=a;a=v[h+604>>2];v[p+8>>2]=v[h+600>>2];v[p+12>>2]=a;a=v[h+596>>2];v[p>>2]=v[h+592>>2];v[p+4>>2]=a;a=v[h+172>>2];v[p+40>>2]=v[h+168>>2];v[p+44>>2]=a;a=v[h+164>>2];v[p+32>>2]=v[h+160>>2];v[p+36>>2]=a;a=v[h+308>>2];v[p+48>>2]=v[h+304>>2];v[p+52>>2]=a;a=v[h+316>>2];v[p+56>>2]=v[h+312>>2];v[p+60>>2]=a;a=v[b+16>>2];d=v[b+20>>2];e=v[b+28>>2];v[h+472>>2]=v[b+24>>2];v[h+476>>2]=e;v[h+464>>2]=a;v[h+468>>2]=d;d=0;d:{if(z[b+4>>2]!=C(1)){break d}d=0;if(z[b+8>>2]!=C(1)){break d}d=z[b+12>>2]==C(1)}b=h+576|0;i=z[f+32>>2];a=f;e=v[a+28>>2];f=v[a+24>>2];t[h+336|0]=0;v[h+332>>2]=0;v[h+448>>2]=a;v[h+316>>2]=0;z[h+312>>2]=i;v[h+304>>2]=f;v[h+308>>2]=e;v[h+456>>2]=v[a+40>>2]+B(w[a+39|0],20);t[h+460|0]=w[a+38|0];i=C(z[a+52>>2]*n);j=C(z[a+56>>2]*l);i=i<=j?i:j;j=C(z[a+60>>2]*m);i=i<=j?i:j;z[h+328>>2]=i*C(.02500000037252903);z[h+324>>2]=i*C(.05000000074505806);z[h+320>>2]=i*C(.10000000149011612);GV(h+688|0,h+464|0,h+352|0,h+400|0,h+304|0,d);v[h+452>>2]=v[a+44>>2];v[h+300>>2]=0;z[h+296>>2]=r;z[h+292>>2]=M;v[h+248>>2]=0;v[h+252>>2]=0;v[h+240>>2]=0;v[h+244>>2]=0;z[h+288>>2]=N;t[h+272|0]=0;v[h+268>>2]=3;i=C(q*C(.05000000074505806));z[h+264>>2]=i;z[h+260>>2]=i;z[h+256>>2]=G;v[h+200>>2]=0;v[h+204>>2]=0;v[h+192>>2]=0;v[h+196>>2]=0;v[h+184>>2]=0;v[h+188>>2]=0;v[h+176>>2]=0;v[h+180>>2]=0;v[h+168>>2]=0;v[h+172>>2]=0;v[h+160>>2]=0;v[h+164>>2]=0;v[h+224>>2]=0;v[h+80>>2]=141468;v[h+88>>2]=h+528;v[h+84>>2]=h+240;a=v[h+548>>2];v[h+112>>2]=v[h+544>>2];v[h+116>>2]=a;a=v[h+556>>2];v[h+120>>2]=v[h+552>>2];v[h+124>>2]=a;a=v[h+540>>2];v[h+104>>2]=v[h+536>>2];v[h+108>>2]=a;a=v[h+564>>2];v[h+128>>2]=v[h+560>>2];v[h+132>>2]=a;a=v[h+572>>2];v[h+136>>2]=v[h+568>>2];v[h+140>>2]=a;a=v[h+580>>2];v[h+144>>2]=v[h+576>>2];v[h+148>>2]=a;a=v[h+588>>2];v[h+152>>2]=v[h+584>>2];v[h+156>>2]=a;a=v[h+532>>2];v[h+96>>2]=v[h+528>>2];v[h+100>>2]=a;i=z[h+100>>2];z[h+100>>2]=z[h+112>>2];j=z[h+120>>2];k=z[h+104>>2];z[h+104>>2]=z[h+128>>2];z[h+120>>2]=z[h+132>>2];z[h+128>>2]=k;z[h+132>>2]=j;z[h+112>>2]=i;if(d){v[h+72>>2]=144404;v[h+76>>2]=h+304;f=p+67|0;u=p+71|0;e=h+160|0;d=xa-320|0;xa=d;W=h+72|0;H=v[W+4>>2];i=z[H+20>>2];I=h+80|0;x=v[I+4>>2];j=z[x+20>>2];M=z[h+704>>2];Z=w[x+32|0];N=z[x+16>>2];_=w[H+32|0];G=z[H+16>>2];v[d+44>>2]=0;A=C((i>2];b=0;while(1){a=o<<2;L=w[f+o|0];v[a+(d- -64|0)>>2]=L;D=w[o+u|0];v[a+(d+48|0)>>2]=D;a=(L<<4)+101152|0;$=v[a+8>>2];aa=v[a>>2];ba=v[a+4>>2];a=v[H+152>>2]+B(D,12)|0;i=z[a>>2];j=z[a+4>>2];k=z[a+8>>2];n=z[y+48>>2];q=z[y+32>>2];s=z[y>>2];P=z[y+16>>2];O=z[y+52>>2];J=z[y+36>>2];Q=z[y+4>>2];T=z[y+20>>2];S=z[y+56>>2];U=z[y+40>>2];l=z[x+56>>2];V=z[y+8>>2];m=z[x+48>>2];X=z[y+24>>2];r=z[x+52>>2];a=b;R=a<<4;L=R+(d+144|0)|0;v[L+12>>2]=0;D=R+(d+80|0)|0;v[D+12>>2]=0;z[D+8>>2]=k;z[D+4>>2]=j;z[D>>2]=i;D=R+(d+208|0)|0;v[D+12>>2]=0;l=$?l:C(-l);m=aa?m:C(-m);r=ba?r:C(-r);S=C(S+C(C(U*l)+C(C(V*m)+C(X*r))));z[L+8>>2]=S;O=C(O+C(C(J*l)+C(C(Q*m)+C(r*T))));z[L+4>>2]=O;l=C(n+C(C(q*l)+C(C(s*m)+C(r*P))));z[L>>2]=l;k=C(S-k);z[D+8>>2]=k;j=C(O-j);z[D+4>>2]=j;i=C(l-i);z[D>>2]=i;b=a+1|0;o=o+1|0;if((Y|0)!=(o|0)){continue}break}v[d+44>>2]=b;k:{l:{switch(a-1|0){case 0:l=z[d+216>>2];i=C(z[d+232>>2]-l);m=z[d+208>>2];j=C(z[d+224>>2]-m);r=z[d+212>>2];k=C(z[d+228>>2]-r);n=C(C(i*i)+C(C(j*j)+C(k*k)));if(!(n<=C(1.1920928955078125e-7))){break k}v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break i;case 1:jY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i;case 2:break l;default:break j}}Q_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break i}v[d+28>>2]=0;s=i;i=C(F(C(C(C(C(C(-m)*j)-C(k*r))-C(l*i))/n),C(1)));i=i>C(0)?i:C(0);z[d+24>>2]=l+C(s*i);z[d+20>>2]=r+C(k*i);z[d+16>>2]=m+C(j*i);break i}i=z[b+8>>2];j=z[b>>2];l=z[b+4>>2];v[d+284>>2]=0;a=C(C(i*i)+C(C(j*j)+C(l*l)))>C(0);k=a?i:C(0);z[d+280>>2]=k;l=a?l:C(0);z[d+276>>2]=l;i=a?j:C(1);z[d+272>>2]=i;m=C(C(1)/C(K(C(C(k*k)+C(C(i*i)+C(l*l))))));n=C(k*m);q=C(i*m);j=C(34028234663852886e22);r=C(l*m);break h}v[d+28>>2]=0;z[d+24>>2]=k;z[d+20>>2]=j;z[d+16>>2]=i}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;k=z[d+280>>2];i=z[d+272>>2];l=z[d+276>>2];j=C(K(C(C(k*k)+C(C(i*i)+C(l*l)))));if(!(A>2]=v[d+312>>2];a=v[d+308>>2];v[d+288>>2]=v[d+304>>2];v[d+292>>2]=a;b=v[I+4>>2];a=v[I+8>>2];M=i;o=v[d+44>>2]<<2;i=C(-i);N=l;G=k;y=C(C(C(z[I+20>>2]*i)-C(z[I+36>>2]*l))-C(z[I+52>>2]*k))>C(0);x=C(C(C(z[I+16>>2]*i)-C(z[I+32>>2]*l))-C(z[I+48>>2]*k))>C(0);H=C(C(C(z[I+24>>2]*i)-C(z[I+40>>2]*l))-C(z[I+56>>2]*k))>C(0);v[o+(d- -64|0)>>2]=y<<1|x|H<<2;l=z[a+56>>2];s=z[a+40>>2];O=z[a+24>>2];J=z[a+52>>2];Q=z[a+36>>2];i=z[b+56>>2];T=z[a+20>>2];j=z[b+52>>2];S=z[a+8>>2];U=z[a+48>>2];V=z[a+32>>2];X=z[a>>2];ca=z[a+16>>2];da=z[a+4>>2];k=z[b+48>>2];ea=z[d+284>>2];a=v[W+4>>2];b=IV(a,d+272|0);v[o+(d+48|0)>>2]=b;i=H?i:C(-i);k=x?k:C(-k);j=y?j:C(-j);O=C(l+C(C(s*i)+C(C(S*k)+C(O*j))));a=v[a+152>>2]+B(b,12)|0;S=z[a+8>>2];l=C(O-S);U=C(U+C(C(V*i)+C(C(X*k)+C(j*ca))));V=z[a>>2];s=C(U-V);j=C(J+C(C(Q*i)+C(C(da*k)+C(j*T))));k=z[a+4>>2];i=C(j-k);J=C(C(n*l)+C(C(q*s)+C(r*i)));if(J>P){y=0;if(!f){break e}o=v[d+44>>2];t[p+66|0]=o;if(!o){break e}b=0;if((o|0)!=1){L=o&-2;a=0;while(1){x=b<<2;D=d- -64|0;t[b+f|0]=v[x+D>>2];R=d+48|0;t[b+u|0]=v[R+x>>2];x=b|1;H=x<<2;t[f+x|0]=v[D+H>>2];t[u+x|0]=v[H+R>>2];b=b+2|0;a=a+2|0;if((L|0)!=(a|0)){continue}break}}if(!(o&1)){break e}a=b<<2;t[b+f|0]=v[a+(d- -64|0)>>2];t[b+u|0]=v[a+(d+48|0)>>2];break e}b=v[d+44>>2];if(J>C(m*C(.9997749924659729))){m:{if(!f){break m}t[p+66|0]=b;if(!b){break m}o=0;if((b|0)!=1){H=b&-2;a=0;while(1){y=o<<2;L=d- -64|0;t[f+o|0]=v[y+L>>2];D=d+48|0;t[o+u|0]=v[D+y>>2];y=o|1;x=y<<2;t[f+y|0]=v[x+L>>2];t[u+y|0]=v[x+D>>2];o=o+2|0;a=a+2|0;if((H|0)!=(a|0)){continue}break}}if(!(b&1)){break m}a=o<<2;t[f+o|0]=v[a+(d- -64|0)>>2];t[o+u|0]=v[a+(d+48|0)>>2]}z[e+32>>2]=q;v[e+44>>2]=0;z[e+40>>2]=n;z[e+36>>2]=r;JV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,b);a=v[d+20>>2];v[e>>2]=v[d+16>>2];v[e+4>>2]=a;a=v[d+28>>2];v[e+8>>2]=v[d+24>>2];v[e+12>>2]=a;a=v[d+4>>2];v[e+16>>2]=v[d>>2];v[e+20>>2]=a;a=v[d+12>>2];v[e+24>>2]=v[d+8>>2];v[e+28>>2]=a;a=v[d+308>>2];v[e+68>>2]=v[d+304>>2];v[e+72>>2]=a;v[e+76>>2]=v[d+312>>2];z[e+64>>2]=m;y=2;break e}o=b<<4;a=o+(d+144|0)|0;v[a+12>>2]=0;z[a+8>>2]=O;z[a+4>>2]=j;z[a>>2]=U;a=o+(d+80|0)|0;v[a+12>>2]=0;z[a+8>>2]=S;z[a+4>>2]=k;z[a>>2]=V;a=o+(d+208|0)|0;v[a+12>>2]=0;z[a+8>>2]=l;z[a+4>>2]=i;z[a>>2]=s;v[d+44>>2]=b+1;n:{o:{switch(b-1|0){case 0:l=z[d+216>>2];i=C(z[d+232>>2]-l);r=z[d+208>>2];j=C(z[d+224>>2]-r);n=z[d+212>>2];k=C(z[d+228>>2]-n);q=C(C(i*i)+C(C(j*j)+C(k*k)));if(q<=C(1.1920928955078125e-7)){v[d+44>>2]=1;a=v[d+212>>2];v[d+16>>2]=v[d+208>>2];v[d+20>>2]=a;a=v[d+220>>2];v[d+24>>2]=v[d+216>>2];v[d+28>>2]=a;break n}v[d+28>>2]=0;s=i;i=C(F(C(C(C(C(C(-r)*j)-C(k*n))-C(l*i))/q),C(1)));i=i>C(0)?i:C(0);z[d+24>>2]=l+C(s*i);z[d+20>>2]=n+C(k*i);z[d+16>>2]=r+C(j*i);break n;case 1:jY(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;case 2:Q_(d+16|0,d+208|0,d+144|0,d+80|0,d- -64|0,d+48|0,d+44|0);break n;default:break o}}v[d+28>>2]=0;z[d+24>>2]=l;z[d+20>>2]=i;z[d+16>>2]=s}a=v[d+20>>2];v[d+272>>2]=v[d+16>>2];v[d+276>>2]=a;a=v[d+28>>2];v[d+280>>2]=v[d+24>>2];v[d+284>>2]=a;k=z[d+280>>2];i=z[d+272>>2];l=z[d+276>>2];j=C(K(C(C(k*k)+C(C(i*i)+C(l*l)))));q=C(C(1)/j);n=C(k*q);r=C(l*q);q=C(i*q);if(jA){continue}break}o=v[d+44>>2];if(!(j>2];R=d+48|0;t[b+u|0]=v[R+x>>2];x=b|1;H=x<<2;t[f+x|0]=v[D+H>>2];t[u+x|0]=v[H+R>>2];b=b+2|0;a=a+2|0;if((L|0)!=(a|0)){continue}break}}if(!(y&1)){break p}a=b<<2;t[b+f|0]=v[a+(d- -64|0)>>2];t[b+u|0]=v[a+(d+48|0)>>2]}v[d+312>>2]=v[d+296>>2];a=v[d+292>>2];v[d+304>>2]=v[d+288>>2];v[d+308>>2]=a;z[d+284>>2]=ea;z[d+272>>2]=M;z[d+276>>2]=N;z[d+280>>2]=G;JV(d+208|0,d+144|0,d+80|0,d+272|0,d+16|0,d,o);v[e+60>>2]=0;z[e+56>>2]=n;z[e+52>>2]=r;z[e+48>>2]=q;v[e+44>>2]=0;i=C(C(1)/m);z[e+40>>2]=G*i;z[e+36>>2]=N*i;z[e+32>>2]=M*i;a=v[d+20>>2];v[e>>2]=v[d+16>>2];v[e+4>>2]=a;a=v[d+28>>2];v[e+8>>2]=v[d+24>>2];v[e+12>>2]=a;a=v[d+4>>2];v[e+16>>2]=v[d>>2];v[e+20>>2]=a;a=v[d+12>>2];v[e+24>>2]=v[d+8>>2];v[e+28>>2]=a;z[e+64>>2]=m;a=v[d+292>>2];v[e+68>>2]=v[d+288>>2];v[e+72>>2]=a;v[e+76>>2]=v[d+296>>2];y=4;break e}if(f){break f}y=5;break e}o=v[d+44>>2]}t[p+66|0]=o;y=5;if(!o){break e}b=0;if((o|0)!=1){L=o&-2;a=0;while(1){x=b<<2;D=d- -64|0;t[b+f|0]=v[x+D>>2];R=d+48|0;t[b+u|0]=v[R+x>>2];x=b|1;H=x<<2;t[f+x|0]=v[D+H>>2];t[u+x|0]=v[H+R>>2];b=b+2|0;a=a+2|0;if((L|0)!=(a|0)){continue}break}}if(!(o&1)){break e}a=b<<2;t[b+f|0]=v[a+(d- -64|0)>>2];t[b+u|0]=v[a+(d+48|0)>>2]}xa=d+320|0;a=v[h+524>>2];v[h+24>>2]=v[h+520>>2];v[h+28>>2]=a;a=v[h+516>>2];v[h+16>>2]=v[h+512>>2];v[h+20>>2]=a;a=v[h+708>>2];v[h>>2]=v[h+704>>2];v[h+4>>2]=a;a=v[h+716>>2];v[h+8>>2]=v[h+712>>2];v[h+12>>2]=a;a=s1(I,W,h+656|0,h+624|0,h+528|0,y,e,p,g,c,h+16|0,h,1,E);break b}v[h+72>>2]=141216;v[h+76>>2]=h+304;a=h+80|0;d=h+72|0;e=b;b=h+160|0;e=NX(a,d,e,h+704|0,1,p+67|0,p+71|0,p+66|0,b);f=v[h+524>>2];v[h+56>>2]=v[h+520>>2];v[h+60>>2]=f;f=v[h+516>>2];v[h+48>>2]=v[h+512>>2];v[h+52>>2]=f;f=v[h+708>>2];v[h+32>>2]=v[h+704>>2];v[h+36>>2]=f;f=v[h+716>>2];v[h+40>>2]=v[h+712>>2];v[h+44>>2]=f;a=s1(a,d,h+656|0,h+624|0,h+528|0,e,b,p,g,c,h+48|0,h+32|0,0,E);break b}b=w[p+64|0];a=0;if(!b){break b}a=1;c=v[p+76>>2];k=z[c+32>>2];i=k;l=z[c+36>>2];j=l;r=z[c+40>>2];m=r;q:{if((b|0)==1){break q}d=b-1|0;e=d&1;m=r;j=l;i=k;if((b|0)!=2){d=d&-2;u=0;while(1){b=c+B(a,48)|0;i=C(C(i+z[b+32>>2])+z[b+80>>2]);m=C(C(m+z[b+40>>2])+z[b+88>>2]);j=C(C(j+z[b+36>>2])+z[b+84>>2]);a=a+2|0;u=u+2|0;if((d|0)!=(u|0)){continue}break}}if(!e){break q}a=c+B(a,48)|0;i=C(i+z[a+32>>2]);m=C(m+z[a+40>>2]);j=C(j+z[a+36>>2])}v[h+316>>2]=0;M=z[h+632>>2];a=C(C(m*m)+C(C(i*i)+C(j*j)))>C(1.1920928955078125e-7);m=a?m:r;r=z[h+624>>2];k=a?i:k;N=z[h+628>>2];j=a?j:l;l=C(C(M*m)+C(C(r*k)+C(N*j)));i=z[h+636>>2];G=C(C(i*i)+C(-.5));n=C(C(M*l)+C(C(i*C(C(r*j)-C(k*N)))+C(m*G)));n=C(n+n);q=C(C(r*l)+C(C(i*C(C(N*m)-C(j*M)))+C(k*G)));q=C(q+q);i=C(C(N*l)+C(C(i*C(C(M*k)-C(m*r)))+C(j*G)));j=C(i+i);i=C(C(1)/C(K(C(C(n*n)+C(C(q*q)+C(j*j))))));z[h+312>>2]=n*i;z[h+308>>2]=j*i;z[h+304>>2]=q*i;r2(p,g,h+304|0,h+624|0,h+704|0);a=1}xa=h+720|0;return a|0}function O2(a,b,c,d,e,f){var g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),x=C(0),y=0,A=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=0,ba=0,ca=C(0),da=0,ea=0,fa=0;i=xa-320|0;xa=i;k=z[c>>2];h=z[c+4>>2];g=z[c+8>>2];z[i+44>>2]=g;z[i+40>>2]=h;z[i+36>>2]=k;z[i+32>>2]=-g;z[i+28>>2]=-h;z[i+24>>2]=-k;k=z[d>>2];h=z[d+4>>2];g=z[d+8>>2];z[i+16>>2]=g!=C(0)?C(C(1)/g):C(0);z[i+12>>2]=h!=C(0)?C(C(1)/h):C(0);z[i+8>>2]=k!=C(0)?C(C(1)/k):C(0);v[i+4>>2]=2139095039;l=i+24|0;Q=a;U=b;b=0;a=0;y=xa-176|0;xa=y;k=z[e>>2];h=C(z[e+12>>2]-k);g=z[e+4>>2];p=C(z[e+28>>2]-g);k=C(z[e+24>>2]-k);g=C(z[e+16>>2]-g);J=C(C(h*p)-C(k*g));q=z[e+8>>2];o=C(z[e+20>>2]-q);j=C(o*k);k=C(z[e+32>>2]-q);j=C(j-C(k*h));E=C(C(g*k)-C(p*o));if(C(C(J*z[d+8>>2])+C(C(E*z[d>>2])+C(j*z[d+4>>2])))>=C(0)){a=0}else{AV(l,y+80|0);g=z[e+20>>2];p=z[e+8>>2];A=z[e+32>>2];k=C(C(C(g+p)+A)*C(.3333333432674408));o=z[e+28>>2];I=z[e+4>>2];P=z[e+16>>2];h=C(C(o+C(I+P))*C(.3333333432674408));m=z[e+24>>2];L=z[e>>2];u=z[e+12>>2];q=C(C(m+C(L+u))*C(.3333333432674408));x=C(p+C(C(p-k)*C(.019999999552965164)));s=C(C(g+C(C(g-k)*C(.019999999552965164)))-x);g=z[d>>2];n=C(I+C(C(I-h)*C(.019999999552965164)));M=C(C(o+C(C(o-h)*C(.019999999552965164)))-n);R=C(L+C(C(L-q)*C(.019999999552965164)));p=C(C(m+C(C(m-q)*C(.019999999552965164)))-R);o=z[d+4>>2];N=C(C(g*M)-C(p*o));u=C(C(u+C(C(u-q)*C(.019999999552965164)))-R);q=C(C(A+C(C(A-k)*C(.019999999552965164)))-x);m=z[d+8>>2];S=C(C(o*q)-C(M*m));Y=C(C(P+C(C(P-h)*C(.019999999552965164)))-n);H=C(C(m*p)-C(q*g));L=C(C(s*N)+C(C(u*S)+C(Y*H)));V=L!=C(0)?C(C(1)/L):C(0);k=z[i+4>>2];A=C(-o);I=C(-g);P=C(-m);Z=-1;a:{if(!(L>=C(9999999747378752e-21))){break a}while(1){aa=B(b,12);r=aa+103792|0;b:{if(C(C(z[r+8>>2]*J)+C(C(z[r>>2]*E)+C(j*z[r+4>>2])))>=C(0)){break b}r=aa+(y+80|0)|0;h=C(z[r+8>>2]-x);X=C(z[r>>2]-R);$=C(z[r+4>>2]-n);T=C(C(h*N)+C(C(X*S)+C(H*$)));if(Tk){break b}Z=0;a=b;k=h}b=b+1|0;if((b|0)!=8){continue}break}if(Z){break a}a=(y+80|0)+B(a,12)|0;h=z[a>>2];A=z[a+4>>2];z[Q+8>>2]=C(m*k)+z[a+8>>2];z[Q+4>>2]=A+C(o*k);z[Q>>2]=h+C(g*k);z[U+8>>2]=J;z[U+4>>2]=j;z[U>>2]=E;P=C(-z[d+8>>2]);A=C(-z[d+4>>2]);I=C(-z[d>>2]);Z=0}L=C(D(P));J=C(D(A));j=C(-z[i+16>>2]);x=C(-z[i+12>>2]);o=C(-z[i+8>>2]);s=C(D(I));c:{d:{e:{f:{g:{if(s>2];if(h>2]|h>z[l+12>>2]){break g}}h:{if(J>2];if(h>2]|h>z[l+16>>2]){break h}}i:{if(!(L>2];E=z[e+8>>2];m=z[l+8>>2];break i}m=z[l+8>>2];E=z[e+8>>2];if(m>E){break h}u=z[l+20>>2];if(u>2];h=C(C(z[l>>2]-g)*o);n=C(C(z[l+12>>2]-g)*o);a=h>n;r=s>2];n=C(C(z[l+4>>2]-M)*x);M=C(C(z[l+16>>2]-M)*x);a=n>M;R=a?n:M;g=gh;b=a?r:b;h=a?n:h}if(!(LE;u=a?m:E;g=gh;b=a?r:b;h=a?m:h}a=h>g?-1:g>2]=z[a+8>>2];b=v[a+4>>2];v[U>>2]=v[a>>2];v[U+4>>2]=b;z[Q>>2]=z[e>>2];z[Q+4>>2]=z[e+4>>2];z[Q+8>>2]=z[e+8>>2];Z=1;k=h}if(!(s>2];if(h>2]|h>z[l+12>>2]){break e}}j:{if(J>2];if(h>2]|h>z[l+16>>2]){break j}}k:{if(!(L>2];E=z[e+20>>2];m=z[l+8>>2];break k}m=z[l+8>>2];E=z[e+20>>2];if(m>E){break j}u=z[l+20>>2];if(u>2];h=C(C(z[l>>2]-g)*o);n=C(C(z[l+12>>2]-g)*o);a=h>n;r=s>2];n=C(C(z[l+4>>2]-M)*x);M=C(C(z[l+16>>2]-M)*x);a=n>M;R=a?n:M;g=gh;b=a?r:b;h=a?n:h}if(!(LE;u=a?m:E;g=gh;b=a?r:b;h=a?m:h}a=h>g?-1:g>2]=z[a+8>>2];b=v[a+4>>2];v[U>>2]=v[a>>2];v[U+4>>2]=b;z[Q>>2]=z[e+12>>2];z[Q+4>>2]=z[e+16>>2];z[Q+8>>2]=z[e+20>>2];Z=1;k=h}if(!(s>2];if(h>2]|h>z[l+12>>2]){break c}}if(J>2];if(h>2]|h>z[l+16>>2]){break c}}l:{if(!(L>2];u=z[e+32>>2];E=z[l+8>>2];break l}E=z[l+8>>2];u=z[e+32>>2];if(E>u){break c}m=z[l+20>>2];if(u>m){break c}}g=z[e+24>>2];h=C(C(z[l>>2]-g)*o);g=C(C(z[l+12>>2]-g)*o);a=h>g;r=s>2];g=C(C(z[l+4>>2]-J)*x);J=C(C(z[l+16>>2]-J)*x);a=g>J;x=a?g:J;o=oh;b=a?l:b;h=a?g:h}if(!(Lm;L=a?g:m;o=oh;b=a?l:b;h=a?g:h}a=h>o?-1:o>2]=z[a+8>>2];b=v[a+4>>2];v[U>>2]=v[a>>2];v[U+4>>2]=b;z[Q>>2]=z[e+24>>2];z[Q+4>>2]=z[e+28>>2];z[Q+8>>2]=z[e+32>>2];Z=1;k=h}aa=-1;b=140784;da=-1;while(1){l=y+80|0;a=l+B(w[b|0],12)|0;o=z[a>>2];z[y+32>>2]=o;h=z[a+4>>2];z[y+36>>2]=h;g=z[a+8>>2];z[y+40>>2]=g;a=l+B(w[b+1|0],12)|0;M=z[a+8>>2];m=C(M-g);u=z[a>>2];L=C(u-o);E=z[a+4>>2];J=C(E-h);j=C(K(C(C(m*m)+C(C(L*L)+C(J*J)))));if(j>C(0)){n=m;m=C(C(.009999999776482582)/j);j=C(n*m);g=C(g-j);z[y+40>>2]=g;J=C(J*m);h=C(h-J);z[y+36>>2]=h;m=C(L*m);o=C(o-m);z[y+32>>2]=o;M=C(M+j);u=C(u+m);E=C(E+J)}a=B(ea,12)+103648|0;j=z[d+8>>2];n=z[d>>2];s=z[d+4>>2];if(!(C(C(z[a+8>>2]*j)+C(C(z[a>>2]*n)+C(z[a+4>>2]*s)))>2]=m;L=C(E-h);z[y+20>>2]=L;J=C(u-o);z[y+16>>2]=J;x=C(C(J*s)-C(n*L));s=C(C(L*j)-C(s*m));n=C(C(m*n)-C(j*J));R=C(C(x*g)+C(C(s*o)+C(h*n)));Y=C(D(n));X=C(D(x));j=C(D(s));m:{n:{if(!(!(Y>X)|!(Y>j))){l=0;r=2;break n}a=2;r=0;l=1;if(!(j>2];a=a<<2;j=z[a+r>>2];X=C(C(1)/C(C(Y*z[a+d>>2])-C(z[d+l>>2]*j)));ba=y+32|0;r=ba+l|0;l=l+y|0;ba=a+ba|0;a=a+y|0;$=C(-j);j=z[e+8>>2];T=z[e>>2];N=z[e+4>>2];S=C(C(C(j*x)+C(C(T*s)+C(n*N)))-R);H=z[e+20>>2];V=z[e+12>>2];W=z[e+16>>2];o:{if(C(S*C(C(C(H*x)+C(C(V*s)+C(n*W)))-R))>C(0)){break o}H=C(H-j);V=C(V-T);W=C(W-N);ca=C(C(x*H)+C(C(s*V)+C(n*W)));if(ca==C(0)){break o}_=j;j=C(S/ca);S=C(_-C(H*j));z[y+8>>2]=S;H=C(N-C(W*j));z[y+4>>2]=H;N=C(T-C(V*j));z[y>>2]=N;j=C(X*C(C(Y*C(z[a>>2]-z[ba>>2]))+C(C(z[l>>2]-z[r>>2])*$)));if(j>2]);T=C(S-V);W=C(j*z[d>>2]);N=C(N-W);_=H;H=C(j*z[d+4>>2]);S=C(_-H);if(!(C(C(C(g-T)*C(M-T))+C(C(C(o-N)*C(u-N))+C(C(h-S)*C(E-S))))=j)){break o}z[Q+8>>2]=V+T;z[Q+4>>2]=H+S;z[Q>>2]=W+N;Z=2;aa=1;da=0;p=m;q=L;O=J;A=g;I=h;P=o;k=j}j=z[e+20>>2];T=z[e+12>>2];N=z[e+16>>2];S=C(C(C(j*x)+C(C(T*s)+C(n*N)))-R);H=z[e+32>>2];V=z[e+24>>2];W=z[e+28>>2];p:{if(C(S*C(C(C(H*x)+C(C(V*s)+C(n*W)))-R))>C(0)){break p}H=C(H-j);V=C(V-T);W=C(W-N);ca=C(C(x*H)+C(C(s*V)+C(n*W)));if(ca==C(0)){break p}_=j;j=C(S/ca);S=C(_-C(H*j));z[y+8>>2]=S;H=C(N-C(W*j));z[y+4>>2]=H;N=C(T-C(V*j));z[y>>2]=N;j=C(X*C(C(Y*C(z[a>>2]-z[ba>>2]))+C(C(z[l>>2]-z[r>>2])*$)));if(j>2]);T=C(S-V);W=C(j*z[d>>2]);N=C(N-W);_=H;H=C(j*z[d+4>>2]);S=C(_-H);if(!(C(C(C(g-T)*C(M-T))+C(C(C(o-N)*C(u-N))+C(C(h-S)*C(E-S))))=j)){break p}z[Q+8>>2]=V+T;z[Q+4>>2]=H+S;z[Q>>2]=W+N;aa=2;da=1;p=m;q=L;O=J;A=g;I=h;P=o;Z=2;k=j}j=z[e+32>>2];T=z[e+24>>2];N=z[e+28>>2];S=C(C(C(j*x)+C(C(T*s)+C(n*N)))-R);H=z[e+8>>2];V=z[e>>2];W=z[e+4>>2];q:{if(C(S*C(C(C(H*x)+C(C(V*s)+C(n*W)))-R))>C(0)){break q}_=x;x=C(H-j);H=s;s=C(V-T);R=n;n=C(W-N);R=C(C(_*x)+C(C(H*s)+C(R*n)));if(R==C(0)){break q}H=j;j=C(S/R);x=C(H-C(x*j));z[y+8>>2]=x;n=C(N-C(n*j));z[y+4>>2]=n;s=C(T-C(s*j));z[y>>2]=s;j=C(X*C(C(Y*C(z[a>>2]-z[ba>>2]))+C(C(z[l>>2]-z[r>>2])*$)));if(j>2]);x=C(x-R);_=C(C(g-x)*C(M-x));M=C(j*z[d>>2]);s=C(s-M);N=C(C(o-s)*C(u-s));H=n;n=C(j*z[d+4>>2]);u=C(H-n);if(!(C(_+C(N+C(C(h-u)*C(E-u))))=j)){break q}z[Q+8>>2]=R+x;z[Q+4>>2]=n+u;z[Q>>2]=M+s;aa=0;da=2;p=m;q=L;O=J;A=g;I=h;P=o;Z=2;k=j}z[y+72>>2]=A;z[y+68>>2]=I;z[y+64>>2]=P;z[y+56>>2]=p;z[y+52>>2]=q;z[y+48>>2]=O}b=b+2|0;ea=ea+1|0;if((ea|0)!=12){continue}break}if((Z|0)!=-1){if((Z|0)==2){a=B(da,12)+e|0;h=z[a>>2];b=B(aa,12)+e|0;g=z[b>>2];p=z[a+4>>2];q=z[b+4>>2];z[y+40>>2]=z[b+8>>2]-z[a+8>>2];z[y+36>>2]=q-p;z[y+32>>2]=g-h;P2(U,y- -64|0,y+48|0,a,y+32|0,d,k)}z[i+4>>2]=k}a=(Z|0)!=-1}xa=y+176|0;r:{if(a){if(z[U>>2]!=C(0)|z[U+4>>2]!=C(0)|z[U+8>>2]!=C(0)){break r}}p=z[e+16>>2];q=z[e+20>>2];O=z[e+28>>2];o=z[e+32>>2];A=z[e>>2];I=z[e+4>>2];P=z[e+8>>2];m=z[e+12>>2];j=z[e+24>>2];k=z[d>>2];h=z[d+4>>2];g=z[d+8>>2];v[i+316>>2]=0;v[i+300>>2]=0;v[i+284>>2]=0;L=C(g*f);g=C(L-C(g*C(.10000000149011612)));o=C(o-g);z[i+312>>2]=o;J=C(h*f);h=C(J-C(h*C(.10000000149011612)));O=C(O-h);z[i+308>>2]=O;n=j;j=C(k*f);f=C(j-C(k*C(.10000000149011612)));k=C(n-f);z[i+304>>2]=k;q=C(q-g);z[i+296>>2]=q;p=C(p-h);z[i+292>>2]=p;m=C(m-f);z[i+288>>2]=m;g=C(P-g);z[i+280>>2]=g;h=C(I-h);z[i+276>>2]=h;t[i+256|0]=0;v[i+248>>2]=2139095039;v[i+252>>2]=5;v[i+236>>2]=0;v[i+240>>2]=0;v[i+244>>2]=2139095039;g=C(C(C(g+q)+o)*C(.33333298563957214));z[i+232>>2]=g;p=C(C(C(h+p)+O)*C(.33333298563957214));z[i+228>>2]=p;f=C(A-f);z[i+272>>2]=f;q=C(C(C(f+m)+k)*C(.33333298563957214));z[i+224>>2]=q;v[i+168>>2]=0;v[i+172>>2]=0;v[i+160>>2]=0;v[i+164>>2]=0;f=z[c>>2];k=z[c+4>>2];h=z[c+8>>2];v[i+220>>2]=0;z[i+216>>2]=h;z[i+212>>2]=k;z[i+208>>2]=f;t[i+192|0]=0;v[i+188>>2]=3;f=f<=k?f:k;f=f<=h?f:h;k=C(f*C(.05000000074505806));z[i+184>>2]=k;z[i+180>>2]=k;z[i+176>>2]=f*C(.15000000596046448);v[i+88>>2]=141856;v[i+92>>2]=i+224;v[i+80>>2]=141808;v[i+84>>2]=i+160;v[i+76>>2]=0;z[i+72>>2]=g;z[i+68>>2]=p;z[i+64>>2]=q;v[i+48>>2]=2139095039;a=xa-288|0;xa=a;v[a+92>>2]=0;b=i- -64|0;f=z[b+8>>2];k=z[b>>2];h=z[b+4>>2];v[a+76>>2]=0;b=C(C(f*f)+C(C(k*k)+C(h*h)))>C(0);A=b?f:C(0);z[a+72>>2]=A;I=b?h:C(0);z[a+68>>2]=I;P=b?k:C(1);z[a+64>>2]=P;b=v[i+92>>2];c=w[b+32|0];l=v[i+84>>2];e=w[l+32|0];m=C((c?z[b+16>>2]:C(0))+(e?z[l+16>>2]:C(0)));E=C(z[i+48>>2]+m);f=C(C(1)/C(K(C(C(A*A)+C(C(P*P)+C(I*I))))));O=C(A*f);p=C(I*f);q=C(P*f);f=z[l+20>>2];k=z[b+20>>2];u=C(G(C((f>2];v[a+40>>2]=v[a+72>>2];v[a+44>>2]=b;b=v[a+68>>2];v[a+32>>2]=v[a+64>>2];v[a+36>>2]=b;b=v[i+92>>2];k=z[b+72>>2];h=z[b- -64>>2];f=C(-P);x=z[b+68>>2];g=C(C(C(h*f)-C(x*I))-C(k*A));s=z[b+80>>2];n=z[b+84>>2];M=z[b+88>>2];R=C(C(C(s*f)-C(n*I))-C(M*A));l=g>R;H=g;Y=z[b+48>>2];X=z[b+52>>2];g=z[b+56>>2];f=C(C(C(Y*f)-C(X*I))-C(g*A));b=!(HR);f=O;M=b?l?k:M:g;r=v[i+84>>2];k=z[r+56>>2];A=A>C(0)?k:C(-k);g=C(M-A);k=q;s=b?l?h:s:Y;h=z[r+48>>2];P=P>C(0)?h:C(-h);q=C(s-P);h=p;x=b?l?x:n:X;p=z[r+52>>2];I=I>C(0)?p:C(-p);p=C(x-I);O=C(C(f*g)+C(C(k*q)+C(h*p)));if(O>E){break s}if(!(!(mC(o*C(.9997749924659729))))){JV(a+224|0,a+160|0,a+96|0,a- -64|0,a+16|0,a,v[a+92>>2]);g=z[v[i+92>>2]+16>>2];p=z[a+16>>2];q=z[a+20>>2];O=z[a+24>>2];v[i+156>>2]=0;z[i+152>>2]=O-(c?C(f*g):C(0));z[i+148>>2]=q-(c?C(h*g):C(0));z[i+144>>2]=p-(c?C(k*g):C(0));g=z[v[i+84>>2]+16>>2];p=z[a>>2];q=z[a+4>>2];O=z[a+8>>2];v[i+140>>2]=0;z[i+136>>2]=O+(e?C(f*g):C(-0));z[i+132>>2]=q+(e?C(h*g):C(-0));z[i+128>>2]=p+(e?C(k*g):C(-0));z[i+96>>2]=G(C(o-m),C(0));v[i+124>>2]=0;z[i+120>>2]=-f;z[i+116>>2]=-h;z[i+112>>2]=-k;fa=1;break s}l=v[a+92>>2];r=l<<4;b=r+(a+160|0)|0;v[b+12>>2]=0;z[b+8>>2]=M;z[b+4>>2]=x;z[b>>2]=s;b=r+(a+96|0)|0;v[b+12>>2]=0;z[b+8>>2]=A;z[b+4>>2]=I;z[b>>2]=P;b=r+(a+224|0)|0;v[b+12>>2]=0;z[b+8>>2]=g;z[b+4>>2]=p;z[b>>2]=q;v[a+92>>2]=l+1;t:{u:{switch(l-1|0){case 0:O=z[a+232>>2];g=C(z[a+248>>2]-O);A=z[a+224>>2];p=C(z[a+240>>2]-A);I=z[a+228>>2];q=C(z[a+244>>2]-I);P=C(C(g*g)+C(C(p*p)+C(q*q)));if(P<=C(1.1920928955078125e-7)){v[a+92>>2]=1;b=v[a+228>>2];v[a+16>>2]=v[a+224>>2];v[a+20>>2]=b;b=v[a+236>>2];v[a+24>>2]=v[a+232>>2];v[a+28>>2]=b;break t}v[a+28>>2]=0;n=g;g=C(F(C(C(C(C(C(-A)*p)-C(q*I))-C(O*g))/P),C(1)));g=g>C(0)?g:C(0);z[a+24>>2]=O+C(n*g);z[a+20>>2]=I+C(q*g);z[a+16>>2]=A+C(p*g);break t;case 1:KV(a+16|0,a+224|0,a+160|0,a+96|0,a+92|0);break t;case 2:O_(a+16|0,a+224|0,a+160|0,a+96|0,a+92|0);break t;default:break u}}v[a+28>>2]=0;z[a+24>>2]=g;z[a+20>>2]=p;z[a+16>>2]=q}b=v[a+20>>2];v[a+64>>2]=v[a+16>>2];v[a+68>>2]=b;b=v[a+28>>2];v[a+72>>2]=v[a+24>>2];v[a+76>>2]=b;A=z[a+72>>2];P=z[a+64>>2];I=z[a+68>>2];g=C(K(C(C(A*A)+C(C(P*P)+C(I*I)))));if(u>2]=0;b=v[a+20>>2];v[i+100>>2]=v[a+16>>2];v[i+104>>2]=b;v[i+108>>2]=v[a+24>>2];fa=2;break s}p=z[v[i+84>>2]+16>>2];q=z[v[i+92>>2]+16>>2];JV(a+224|0,a+160|0,a+96|0,a+32|0,a+16|0,a,v[a+92>>2]);g=z[v[i+92>>2]+16>>2];O=z[a+16>>2];A=z[a+20>>2];I=z[a+24>>2];v[i+156>>2]=0;z[i+152>>2]=I-(c?C(f*g):C(0));z[i+148>>2]=A-(c?C(h*g):C(0));z[i+144>>2]=O-(c?C(k*g):C(0));g=z[v[i+84>>2]+16>>2];O=z[a>>2];A=z[a+4>>2];I=z[a+8>>2];v[i+140>>2]=0;z[i+136>>2]=I+(e?C(f*g):C(-0));z[i+132>>2]=A+(e?C(h*g):C(-0));z[i+128>>2]=O+(e?C(k*g):C(-0));v[i+124>>2]=0;z[i+120>>2]=-f;z[i+116>>2]=-h;z[i+112>>2]=-k;f=C(G(C(o-m),C(0)));z[i+96>>2]=f;b=v[a+56>>2];v[i+100>>2]=v[a+52>>2];v[i+104>>2]=b;v[i+108>>2]=v[a+60>>2];fa=f>(m>C(0)?m:C((p>2];k=z[i+112>>2];h=z[i+116>>2];g=z[i+128>>2];p=z[i+132>>2];z[Q+8>>2]=L+z[i+136>>2];z[Q+4>>2]=J+p;z[Q>>2]=j+g;a=C(C(f*L)+C(C(k*j)+C(J*h)))>C(0);z[U+8>>2]=a?C(-f):f;z[U+4>>2]=a?C(-h):h;z[U>>2]=a?C(-k):k;break r}v[Q+8>>2]=0;v[Q>>2]=0;v[Q+4>>2]=0;f=z[d>>2];k=z[d+4>>2];z[U+8>>2]=-z[d+8>>2];z[U+4>>2]=-k;z[U>>2]=-f}xa=i+320|0}function Qy(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,w=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;f=xa-16|0;z=f;xa=f;A=v[a+32>>2];H=v[a+28>>2];k=v[a+20>>2];C=v[a+24>>2];m=v[a+16>>2];q=v[a+4>>2];p=v[a+48>>2];v[p+4>>2]=0;n=v[a+8>>2];a:{if(!q){break a}c=v[a>>2];if(q-1>>>0>=3){d=q&-4;while(1){h=b+c|0;v[h+28>>2]=0;v[h+12>>2]=0;b=b+n|0;h=b+c|0;v[h+28>>2]=0;v[h+12>>2]=0;b=b+n|0;h=b+c|0;v[h+28>>2]=0;v[h+12>>2]=0;b=b+n|0;h=b+c|0;v[h+28>>2]=0;v[h+12>>2]=0;b=b+n|0;e=e+4|0;if((d|0)!=(e|0)){continue}break}}d=q&3;if(!d){break a}e=0;while(1){h=b+c|0;v[h+28>>2]=0;v[h+12>>2]=0;b=b+n|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b:{c:{d:{if(!m){h=v[a>>2];v[p+4>>2]=32;c=0;J9(v[p>>2],0,128);i=B(n,q);if(!C){break c}l=v[p>>2];b=k;f=0;while(1){d=v[b>>2];g=(d-h>>>0)/(n>>>0)>>>0>=q>>>0;e=v[b+4>>2];j=(e-h>>>0)/(n>>>0)|0;e:{if(!(!g&j>>>0>>0)){if(!g){u[d+14>>1]=x[d+14>>1]+1}if(j>>>0>=q>>>0){break e}u[e+14>>1]=x[e+14>>1]+1;break e}j=v[e+28>>2];m=v[d+28>>2];g=j|m;if((g|0)!=-1){g=Raa(g^-1);s=l+(g<<2)|0;v[s>>2]=v[s>>2]+1;r=m;m=1<>2]=r|m;r=d;s=x[d+12>>1];d=g+1|0;u[r+12>>1]=d>>>0>>0?s:d;v[e+28>>2]=j|m;r=e;e=x[e+12>>1];u[r+12>>1]=e>>>0>d>>>0?e:d;break e}e=v[b+4>>2];d=(c<<5)+A|0;v[d>>2]=v[b>>2];v[d+4>>2]=e;e=v[b+28>>2];v[d+24>>2]=v[b+24>>2];v[d+28>>2]=e;e=v[b+20>>2];v[d+16>>2]=v[b+16>>2];v[d+20>>2]=e;e=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=e;c=c+1|0}b=b+32|0;f=f+1|0;if((C|0)!=(f|0)){continue}break}break d}c=v[a+12>>2];J=m<<2;t[z+4|0]=J>>>0>1024;f:{if(J>>>0>=1025){f=u9(J,9605,844);break f}f=f-(J+15&-16)|0;xa=f}v[z>>2]=f;b=0;M=m-1|0;if(M>>>0>=3){e=m&-4;d=0;while(1){h=v[c+B(b,52)>>2];v[(b<<2)+f>>2]=h;v[h+4>>2]=0;v[h+8>>2]=0;j=b|1;h=v[c+B(j,52)>>2];v[(j<<2)+f>>2]=h;v[h+4>>2]=0;v[h+8>>2]=0;j=b|2;h=v[c+B(j,52)>>2];v[(j<<2)+f>>2]=h;v[h+4>>2]=0;v[h+8>>2]=0;j=b|3;h=v[c+B(j,52)>>2];v[(j<<2)+f>>2]=h;v[h+4>>2]=0;v[h+8>>2]=0;b=b+4|0;d=d+4|0;if((e|0)!=(d|0)){continue}break}}h=m&3;if(h){while(1){d=v[c+B(b,52)>>2];v[(b<<2)+f>>2]=d;v[d+4>>2]=0;v[d+8>>2]=0;b=b+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}s=v[a>>2];v[p+4>>2]=32;J9(v[p>>2],0,128);I=B(n,q);g:{if(!C){break g}b=k;c=0;while(1){g=v[b>>2];h:{i:{j:{k:{l:{m:{n:{o:{p:{D=x[b+8>>1];w=(D|0)!=65535;q:{if(!w){if((g-s>>>0)/(n>>>0)>>>0>=q>>>0){break p}d=g+28|0;break q}d=g+8|0}e=v[b+4>>2];h=v[d>>2];if(x[b+10>>1]!=65535){break n}d=0;break o}e=v[b+4>>2];if(x[b+10>>1]!=65535){break j}h=0;d=1}j=(e-s>>>0)/(n>>>0)|0;i=j>>>0>=q>>>0;o=d|i;if(i){break m}if(o){break k}o=v[e+28>>2];w=0;d=1;break l}o=v[e+8>>2];w=0;d=0;break l}if(o){break k}o=0;w=1;d=1}j=h|o;if((j|0)==-1){break i}r=v[p>>2];i=Raa(j^-1);j=r+(i<<2)|0;v[j>>2]=v[j>>2]+1;j=i+1|0;i=1<>2]=h;h=x[g+12>>1];u[g+12>>1]=h>>>0>j>>>0?h:j;break r}v[g+8>>2]=h;h=x[g+6>>1];u[g+6>>1]=h>>>0>j>>>0?h:j}h=i|o;if(d){v[e+28>>2]=h;d=x[e+12>>1];u[e+12>>1]=d>>>0>j>>>0?d:j;break h}v[e+8>>2]=h;d=x[e+6>>1];u[e+6>>1]=d>>>0>j>>>0?d:j;break h}s:{t:{if(d){break t}if(!w){u[g+14>>1]=x[g+14>>1]+1;if(j>>>0>>0){break s}break h}if(Ba[v[v[g>>2]+176>>2]](g)|0){break t}u[g+4>>1]=x[g+4>>1]+1;if(j>>>0>>0){break s}break h}if(i){break h}}u[e+14>>1]=x[e+14>>1]+1;break h}if(Ba[v[v[e>>2]+176>>2]](e)|0){break h}u[e+4>>1]=x[e+4>>1]+1;break h}h=v[b+4>>2];d=(l<<5)+A|0;v[d>>2]=v[b>>2];v[d+4>>2]=h;h=v[b+28>>2];v[d+24>>2]=v[b+24>>2];v[d+28>>2]=h;h=v[b+20>>2];v[d+16>>2]=v[b+16>>2];v[d+20>>2]=h;h=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=h;l=l+1|0}b=b+32|0;c=c+1|0;if((C|0)!=(c|0)){continue}break}if(!l){break g}D=m&-4;w=m&3;o=0;while(1){b=0;if(I){while(1){v[(b+s|0)+28>>2]=0;b=b+n|0;if(I>>>0>b>>>0){continue}break}}g=0;b=0;d=0;if(M>>>0>=3){while(1){c=b<<2;v[v[c+f>>2]+8>>2]=0;v[v[(c|4)+f>>2]+8>>2]=0;v[v[(c|8)+f>>2]+8>>2]=0;v[v[(c|12)+f>>2]+8>>2]=0;b=b+4|0;d=d+4|0;if((D|0)!=(d|0)){continue}break}}if(w){while(1){v[v[(b<<2)+f>>2]+8>>2]=0;b=b+1|0;g=g+1|0;if((w|0)!=(g|0)){continue}break}}b=v[p+4>>2];d=0;v[z+8>>2]=0;cz(p,b+32|0,z+8|0);o=o+32|0;J9(v[p>>2]+(o<<2)|0,0,128);F=l>>>0>1?l:1;G=v[p>>2];l=0;while(1){g=(d<<5)+A|0;j=v[g>>2];K=x[g+8>>1];u:{v:{if((K|0)==65535){if((j-s>>>0)/(n>>>0)>>>0>=q>>>0){c=0;e=1;break u}c=v[j+28>>2];break v}c=v[j+8>>2]}e=0}i=v[g+4>>2];L=x[g+10>>1]!=65535;w:{x:{if(!L){if((i-s>>>0)/(n>>>0)>>>0>=q>>>0){h=0;b=1;break w}h=v[i+28>>2];break x}h=v[i+8>>2]}b=0}E=c|h;y:{if((E|0)!=-1){E=Raa(E^-1);g=E|o;r=G+(g<<2)|0;v[r>>2]=v[r>>2]+1;g=g+1|0;E=1<>2]=b;b=x[j+12>>1];c=g&65535;u[j+12>>1]=b>>>0>c>>>0?b:c;break z}v[j+8>>2]=b;b=x[j+6>>1];c=g&65535;u[j+6>>1]=b>>>0>c>>>0?b:c}b=h|r;if(!L){v[i+28>>2]=b;b=x[i+12>>1];c=g&65535;u[i+12>>1]=b>>>0>c>>>0?b:c;break y}v[i+8>>2]=b;b=x[i+6>>1];c=g&65535;u[i+6>>1]=b>>>0>c>>>0?b:c;break y}c=v[g+4>>2];b=(l<<5)+A|0;v[b>>2]=v[g>>2];v[b+4>>2]=c;c=v[g+28>>2];v[b+24>>2]=v[g+24>>2];v[b+28>>2]=c;c=v[g+20>>2];v[b+16>>2]=v[g+16>>2];v[b+20>>2]=c;c=v[g+12>>2];v[b+8>>2]=v[g+8>>2];v[b+12>>2]=c;l=l+1|0}d=d+1|0;if((F|0)!=(d|0)){continue}break}if(l){continue}break}}if(I){e=0;while(1){b=e+s|0;v[b+28>>2]=0;c=x[b+14>>1];d=c+x[b+12>>1]|0;if(d>>>0>y[p+4>>2]){v[z+8>>2]=0;cz(p,d,z+8|0);c=x[b+14>>1]}A:{if(!c){break A}l=c&3;h=v[p>>2];g=x[b+12>>1];d=0;b=0;if(c-1>>>0>=3){j=c&65532;c=0;while(1){i=h+(b+g<<2)|0;v[i>>2]=v[i>>2]+1;i=h+(g+(b|1)<<2)|0;v[i>>2]=v[i>>2]+1;i=h+(g+(b|2)<<2)|0;v[i>>2]=v[i>>2]+1;i=h+(g+(b|3)<<2)|0;v[i>>2]=v[i>>2]+1;b=b+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}if(!l){break A}while(1){c=h+(b+g<<2)|0;v[c>>2]=v[c>>2]+1;b=b+1|0;d=d+1|0;if((l|0)!=(d|0)){continue}break}}e=e+n|0;if(I>>>0>e>>>0){continue}break}}l=m>>>0>1?m:1;e=0;while(1){b=v[(e<<2)+f>>2];v[b+8>>2]=0;c=x[b+4>>1];d=c+x[b+6>>1]|0;if(d>>>0>y[p+4>>2]){v[z+8>>2]=0;cz(p,d,z+8|0);c=x[b+4>>1]}B:{if(!c){break B}j=c&3;h=v[p>>2];g=x[b+6>>1];d=0;b=0;if(c-1>>>0>=3){i=c&65532;c=0;while(1){o=h+(b+g<<2)|0;v[o>>2]=v[o>>2]+1;o=h+(g+(b|1)<<2)|0;v[o>>2]=v[o>>2]+1;o=h+(g+(b|2)<<2)|0;v[o>>2]=v[o>>2]+1;o=h+(g+(b|3)<<2)|0;v[o>>2]=v[o>>2]+1;b=b+4|0;c=c+4|0;if((i|0)!=(c|0)){continue}break}}if(!j){break B}while(1){c=h+(b+g<<2)|0;v[c>>2]=v[c>>2]+1;b=b+1|0;d=d+1|0;if((j|0)!=(d|0)){continue}break}}e=e+1|0;if((l|0)!=(e|0)){continue}break}if(v[p+4>>2]){c=v[p>>2];b=0;e=0;while(1){d=c+(b<<2)|0;h=v[d>>2];v[d>>2]=e;e=e+h|0;b=b+1|0;if(b>>>0>2]){continue}break}}C:{if(!q){break C}c=v[a>>2];g=0;b=0;if(q-1>>>0>=3){h=q&-4;d=0;while(1){e=b+c|0;u[e+14>>1]=0;v[e+28>>2]=0;b=b+n|0;e=b+c|0;u[e+14>>1]=0;v[e+28>>2]=0;b=b+n|0;e=b+c|0;u[e+14>>1]=0;v[e+28>>2]=0;b=b+n|0;e=b+c|0;u[e+14>>1]=0;v[e+28>>2]=0;b=b+n|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}d=q&3;if(!d){break C}while(1){h=b+c|0;u[h+14>>1]=0;v[h+28>>2]=0;b=b+n|0;g=g+1|0;if((d|0)!=(g|0)){continue}break}}g=0;b=0;if(l-1>>>0>=3){h=l&-4;d=0;while(1){c=b<<2;e=v[c+f>>2];u[e+4>>1]=0;v[e+8>>2]=0;e=v[(c|4)+f>>2];u[e+4>>1]=0;v[e+8>>2]=0;e=v[(c|8)+f>>2];u[e+4>>1]=0;v[e+8>>2]=0;c=v[(c|12)+f>>2];u[c+4>>1]=0;v[c+8>>2]=0;b=b+4|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}c=l&3;if(c){while(1){d=v[(b<<2)+f>>2];u[d+4>>1]=0;v[d+8>>2]=0;b=b+1|0;g=g+1|0;if((c|0)!=(g|0)){continue}break}}D:{if(!C){l=0;break D}j=0;l=0;g=0;while(1){i=v[k>>2];E:{F:{G:{H:{I:{J:{K:{L:{M:{N:{O:{P:{Q:{D=x[k+8>>1];o=(D|0)!=65535;R:{if(!o){if((i-s>>>0)/(n>>>0)>>>0>=q>>>0){break Q}b=i+28|0;break R}b=i+8|0}h=k+4|0;e=v[k+4>>2];d=v[b>>2];if(x[k+10>>1]!=65535){break O}b=0;break P}e=v[k+4>>2];if(x[k+10>>1]!=65535){break J}h=k+4|0;d=0;b=1}w=(e-s>>>0)/(n>>>0)>>>0>=q>>>0;c=b|w;if(w){break N}if(c){break K}c=v[e+28>>2];w=1;e=0;break M}c=v[e+8>>2];w=0;e=0;break M}if(c){break L}c=0;w=1;e=1}b=c|d;if((b|0)==-1){break I}o=Raa(b^-1);b=o+1|0;F=1<>2]=d;i=v[k>>2];d=x[i+12>>1];u[i+12>>1]=b>>>0>>0?d:b;break S}v[i+8>>2]=d;d=x[i+6>>1];u[i+6>>1]=b>>>0>>0?d:b}d=c|e;c=v[h>>2];T:{if(w){v[c+28>>2]=d;d=v[h>>2];c=x[d+12>>1];u[d+12>>1]=b>>>0>>0?c:b;break T}v[c+8>>2]=d;d=c;c=x[c+6>>1];u[d+6>>1]=b>>>0>>0?c:b}c=v[p>>2]+(o<<2)|0;b=v[c>>2];v[c>>2]=b+1;c=v[k+28>>2];b=(b<<5)+H|0;v[b+24>>2]=v[k+24>>2];v[b+28>>2]=c;c=v[k+20>>2];v[b+16>>2]=v[k+16>>2];v[b+20>>2]=c;c=v[k+12>>2];v[b+8>>2]=v[k+8>>2];v[b+12>>2]=c;c=v[k+4>>2];v[b>>2]=v[k>>2];v[b+4>>2]=c;break E}if(b){break F}break H}if(!b){break H}d=x[e+14>>1];u[e+14>>1]=d+1;b=x[e+12>>1];break G}if(Ba[v[v[e>>2]+172>>2]](e,k)|0){break F}d=x[e+4>>1];u[e+4>>1]=d+1;b=x[e+6>>1];break G}c=v[k+4>>2];b=(j<<5)+A|0;v[b>>2]=v[k>>2];v[b+4>>2]=c;c=v[k+28>>2];v[b+24>>2]=v[k+24>>2];v[b+28>>2]=c;c=v[k+20>>2];v[b+16>>2]=v[k+16>>2];v[b+20>>2]=c;c=v[k+12>>2];v[b+8>>2]=v[k+8>>2];v[b+12>>2]=c;j=j+1|0;break E}if(!o){d=x[i+14>>1];u[i+14>>1]=d+1;b=x[i+12>>1];break G}if(Ba[v[v[i>>2]+172>>2]](i,k)|0){break F}d=x[i+4>>1];u[i+4>>1]=d+1;b=x[i+6>>1]}c=v[p>>2]+((b&65535)+(d&65535)<<2)|0;b=v[c>>2];v[c>>2]=b+1;c=v[k+28>>2];b=(b<<5)+H|0;v[b+24>>2]=v[k+24>>2];v[b+28>>2]=c;c=v[k+20>>2];v[b+16>>2]=v[k+16>>2];v[b+20>>2]=c;c=v[k+12>>2];v[b+8>>2]=v[k+8>>2];v[b+12>>2]=c;c=v[k+4>>2];v[b>>2]=v[k>>2];v[b+4>>2]=c;break E}l=l+1|0}k=k+32|0;g=g+1|0;if((C|0)!=(g|0)){continue}break}if(!j){break D}o=m&-4;m=m&3;k=0;while(1){b=0;if(I){while(1){v[(b+s|0)+28>>2]=0;b=b+n|0;if(I>>>0>b>>>0){continue}break}}g=0;b=0;d=0;if(M>>>0>=3){while(1){c=b<<2;v[v[c+f>>2]+8>>2]=0;v[v[(c|4)+f>>2]+8>>2]=0;v[v[(c|8)+f>>2]+8>>2]=0;v[v[(c|12)+f>>2]+8>>2]=0;b=b+4|0;d=d+4|0;if((o|0)!=(d|0)){continue}break}}if(m){while(1){v[v[(b<<2)+f>>2]+8>>2]=0;b=b+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}w=j>>>0>1?j:1;k=k+32|0;g=0;j=0;while(1){i=(g<<5)+A|0;e=v[i>>2];D=x[i+8>>1];U:{V:{if((D|0)==65535){if((e-s>>>0)/(n>>>0)>>>0>=q>>>0){d=0;h=1;break U}d=v[e+28>>2];break V}d=v[e+8>>2]}h=0}b=v[i+4>>2];F=x[i+10>>1]!=65535;W:{X:{if(!F){if((b-s>>>0)/(n>>>0)>>>0>=q>>>0){c=0;b=1;break W}c=v[b+28>>2];break X}c=v[b+8>>2]}b=0}G=c|d;Y:{if((G|0)!=-1){G=Raa(G^-1);K=1<>2]=b;break Z}v[e+8>>2]=b}b=c|L;c=v[i+4>>2];_:{if(!F){v[c+28>>2]=b;break _}v[c+8>>2]=b}c=v[p>>2]+(k+G<<2)|0;b=v[c>>2];v[c>>2]=b+1;e=(b<<5)+H|0;break Y}e=(j<<5)+A|0;j=j+1|0}b=v[i+4>>2];v[e>>2]=v[i>>2];v[e+4>>2]=b;b=v[i+28>>2];v[e+24>>2]=v[i+24>>2];v[e+28>>2]=b;b=v[i+20>>2];v[e+16>>2]=v[i+16>>2];v[e+20>>2]=b;b=v[i+12>>2];v[e+8>>2]=v[i+8>>2];v[e+12>>2]=b;g=g+1|0;if((w|0)!=(g|0)){continue}break}if(j){continue}break}}if(J>>>0>=1025){v9(f)}C=C-l|0;break b}if(!c){break c}j=0;while(1){b=0;if(i){while(1){v[(b+h|0)+28>>2]=0;b=b+n|0;if(i>>>0>b>>>0){continue}break}}b=v[p+4>>2];d=0;v[z>>2]=0;cz(p,b+32|0,z);j=j+32|0;J9(v[p>>2]+(j<<2)|0,0,128);g=c>>>0>1?c:1;l=v[p>>2];c=0;while(1){b=(d<<5)+A|0;f=v[b+4>>2];m=v[f+28>>2];e=v[b>>2];s=v[e+28>>2];o=m|s;$:{if((o|0)!=-1){b=Raa(o^-1);o=b|j;w=l+(o<<2)|0;v[w>>2]=v[w>>2]+1;r=s;s=1<>2]=r|((e-h>>>0)/(n>>>0)>>>0>>0?s:0);r=e;e=x[e+12>>1];b=o+1&65535;u[r+12>>1]=b>>>0>>0?e:b;v[f+28>>2]=m|((f-h>>>0)/(n>>>0)>>>0>>0?s:0);e=f;f=x[f+12>>1];u[e+12>>1]=b>>>0>>0?f:b;break $}e=v[b+4>>2];f=(c<<5)+A|0;v[f>>2]=v[b>>2];v[f+4>>2]=e;e=v[b+28>>2];v[f+24>>2]=v[b+24>>2];v[f+28>>2]=e;e=v[b+20>>2];v[f+16>>2]=v[b+16>>2];v[f+20>>2]=e;e=v[b+12>>2];v[f+8>>2]=v[b+8>>2];v[f+12>>2]=e;c=c+1|0}d=d+1|0;if((g|0)!=(d|0)){continue}break}if(c){continue}break}}if(i){e=0;while(1){b=e+h|0;v[b+28>>2]=0;f=x[b+14>>1];c=f+x[b+12>>1]|0;if(c>>>0>y[p+4>>2]){v[z>>2]=0;cz(p,c,z);f=x[b+14>>1]}aa:{if(!f){break aa}l=f&3;c=v[p>>2];g=x[b+12>>1];d=0;b=0;if(f-1>>>0>=3){j=f&65532;f=0;while(1){m=c+(b+g<<2)|0;v[m>>2]=v[m>>2]+1;m=c+(g+(b|1)<<2)|0;v[m>>2]=v[m>>2]+1;m=c+(g+(b|2)<<2)|0;v[m>>2]=v[m>>2]+1;m=c+(g+(b|3)<<2)|0;v[m>>2]=v[m>>2]+1;b=b+4|0;f=f+4|0;if((j|0)!=(f|0)){continue}break}}if(!l){break aa}while(1){f=c+(b+g<<2)|0;v[f>>2]=v[f>>2]+1;b=b+1|0;d=d+1|0;if((l|0)!=(d|0)){continue}break}}e=e+n|0;if(i>>>0>e>>>0){continue}break}}if(v[p+4>>2]){c=v[p>>2];b=0;f=0;while(1){d=c+(f<<2)|0;e=v[d>>2];v[d>>2]=b;b=b+e|0;f=f+1|0;if(f>>>0>2]){continue}break}}ba:{if(!q){break ba}c=v[a>>2];d=0;g=0;b=0;if(q-1>>>0>=3){e=q&-4;f=0;while(1){l=b+c|0;u[l+14>>1]=0;v[l+28>>2]=0;b=b+n|0;l=b+c|0;u[l+14>>1]=0;v[l+28>>2]=0;b=b+n|0;l=b+c|0;u[l+14>>1]=0;v[l+28>>2]=0;b=b+n|0;l=b+c|0;u[l+14>>1]=0;v[l+28>>2]=0;g=g+4|0;b=b+n|0;f=f+4|0;if((e|0)!=(f|0)){continue}break}}f=q&3;if(!f){break ba}while(1){e=b+c|0;u[e+14>>1]=0;v[e+28>>2]=0;b=b+n|0;g=g+1|0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}if(!C){l=0;C=0;break b}c=0;d=0;while(1){f=v[k>>2];g=(f-h>>>0)/(n>>>0)|0;b=v[k+4>>2];e=(b-h>>>0)/(n>>>0)|0;ca:{da:{if(!(g>>>0>=q>>>0|e>>>0>=q>>>0)){g=v[b+28>>2];e=v[f+28>>2];l=g|e;if((l|0)!=-1){r=e;e=Raa(l^-1);l=1<>2]=r|l;r=f;j=x[f+12>>1];f=e+1|0;u[r+12>>1]=f>>>0>>0?j:f;v[b+28>>2]=g|l;r=b;b=x[b+12>>1];u[r+12>>1]=b>>>0>f>>>0?b:f;f=v[p>>2]+(e<<2)|0;b=v[f>>2];v[f>>2]=b+1;b=(b<<5)+H|0;break da}b=(c<<5)+A|0;c=c+1|0;break da}g=g>>>0>>0;if(!g&e>>>0>=q>>>0){break ca}b=g?f:b;f=x[b+14>>1];u[b+14>>1]=f+1;f=v[p>>2]+(f+x[b+12>>1]<<2)|0;b=v[f>>2];v[f>>2]=b+1;b=(b<<5)+H|0}f=v[k+4>>2];v[b>>2]=v[k>>2];v[b+4>>2]=f;f=v[k+28>>2];v[b+24>>2]=v[k+24>>2];v[b+28>>2]=f;f=v[k+20>>2];v[b+16>>2]=v[k+16>>2];v[b+20>>2]=f;f=v[k+12>>2];v[b+8>>2]=v[k+8>>2];v[b+12>>2]=f}k=k+32|0;d=d+1|0;if((C|0)!=(d|0)){continue}break}l=0;if(!c){break b}while(1){b=0;if(i){while(1){v[(b+h|0)+28>>2]=0;b=b+n|0;if(i>>>0>b>>>0){continue}break}}d=c>>>0>1?c:1;l=l+32|0;g=0;c=0;while(1){b=(g<<5)+A|0;f=v[b+4>>2];e=v[f+28>>2];k=v[b>>2];j=v[k+28>>2];m=e|j;ea:{if((m|0)!=-1){r=j;j=Raa(m^-1);m=1<>2]=r|((k-h>>>0)/(n>>>0)>>>0>>0?m:0);v[v[b+4>>2]+28>>2]=e|((f-h>>>0)/(n>>>0)>>>0>>0?m:0);f=v[p>>2]+((j|l)<<2)|0;k=v[f>>2];v[f>>2]=k+1;f=(k<<5)+H|0;break ea}f=(c<<5)+A|0;c=c+1|0}k=v[b+4>>2];v[f>>2]=v[b>>2];v[f+4>>2]=k;k=v[b+28>>2];v[f+24>>2]=v[b+24>>2];v[f+28>>2]=k;k=v[b+20>>2];v[f+16>>2]=v[b+16>>2];v[f+20>>2]=k;k=v[b+12>>2];v[f+8>>2]=v[b+8>>2];v[f+12>>2]=k;g=g+1|0;if((d|0)!=(g|0)){continue}break}if(c){continue}break}l=0}v[a+44>>2]=l;b=0;v[a+40>>2]=0;v[a+36>>2]=C;a=v[p+4>>2];fa:{if(!a){break fa}k=v[p>>2];f=0;while(1){c=f;f=v[k+(b<<2)>>2];if((c|0)==(f|0)){break fa}b=b+1|0;if((a|0)!=(b|0)){continue}break}b=a}xa=z+16|0;return b}function MA(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,w=0,A=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;u=xa-1072|0;xa=u;v[u+1048>>2]=v[b+12>>2];o=v[b+56>>2];a=u;v[a+1004>>2]=-128;v[a+1008>>2]=-128;v[a+972>>2]=-128;v[a+976>>2]=-128;v[a+940>>2]=-128;v[a+944>>2]=-128;v[a+908>>2]=-128;v[a+912>>2]=-128;v[a+876>>2]=-128;v[a+880>>2]=-128;v[a+844>>2]=-128;v[a+848>>2]=-128;v[a+812>>2]=-128;v[a+816>>2]=-128;v[a+780>>2]=-128;v[a+784>>2]=-128;v[a+748>>2]=-128;v[a+752>>2]=-128;v[a+716>>2]=-128;v[a+720>>2]=-128;v[a+684>>2]=-128;v[a+688>>2]=-128;v[a+652>>2]=-128;v[a+656>>2]=-128;v[a+620>>2]=-128;v[a+624>>2]=-128;v[a+588>>2]=-128;v[a+592>>2]=-128;v[a+556>>2]=-128;v[a+560>>2]=-128;v[a+524>>2]=-128;v[a+528>>2]=-128;v[a+492>>2]=-128;v[a+496>>2]=-128;v[a+460>>2]=-128;v[a+464>>2]=-128;v[a+428>>2]=-128;v[a+432>>2]=-128;v[a+396>>2]=-128;v[a+400>>2]=-128;v[a+364>>2]=-128;v[a+368>>2]=-128;v[a+332>>2]=-128;v[a+336>>2]=-128;v[a+300>>2]=-128;v[a+304>>2]=-128;v[a+268>>2]=-128;v[a+272>>2]=-128;v[a+236>>2]=-128;v[a+240>>2]=-128;v[a+204>>2]=-128;v[a+208>>2]=-128;v[a+172>>2]=-128;v[a+176>>2]=-128;v[a+140>>2]=-128;v[a+144>>2]=-128;v[a+108>>2]=-128;v[a+112>>2]=-128;v[a+76>>2]=-128;v[a+80>>2]=-128;v[a+44>>2]=-128;v[a+48>>2]=-128;v[a+12>>2]=-128;v[a+16>>2]=-128;T=v[b+116>>2];S=v[b+40>>2];v[a+1068>>2]=d;v[a+1064>>2]=c;v[a+1040>>2]=0;v[a+1044>>2]=32;v[a+1036>>2]=a;h=v[b>>2];I=v[b+28>>2];G=v[b+16>>2];L=v[b+4>>2];a=o+v[b+68>>2]|0;v[b+68>>2]=a;r=a-o|0;J=o+v[b+128>>2]|0;v[b+128>>2]=J;X=v[b+108>>2];P=v[b+32>>2];N=v[b+124>>2];U=v[b+120>>2];M=v[b+48>>2];R=v[b+44>>2];Y=v[b+112>>2];O=v[b+36>>2];a:{b:{A=h-1|0;c:{if(!A){p=o;break c}if(!M){break b}p=o;while(1){E=B(t,S);i=0;while(1){d:{if(v[b+72>>2]>=(k|0)){break d}d=3e4;if(v[b+72>>2]>=(k|0)){break d}while(1){if(v[b+72>>2]>=(k|0)){break d}d=d-1|0;if(d){continue}d=1e4;continue}}m=0;D=v[(i<<2)+R>>2];w=D+w|0;e:{if((w|0)<=(r|0)){break e}while(1){a=w-r|0;l=(a|0)<(p|0)?a:p;if((l|0)>0){g=r-E|0;H=l+g|0;while(1){s=0;f=0;e=0;n=O+(g<<3)|0;F=P+(v[n>>2]<<5)|0;d=v[F+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;j=a;a=e>>>6|0;e=(e&63)<<26|j>>>6;j=a;a=c>>>6|0;j=j-(a>>>0>e>>>0)|0;q=e-a|0;e=j;a=q+1|0;e=a?e:e+1|0;c=a;a=0;K=a;Q=c&7;if(a|Q){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((Q|0)!=(s|0)|(K|0)!=(a|0)){continue}break}}f=x[n+4>>1];if(!j&q>>>0>=7|j){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}f:{if(!f){break f}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break f}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[n+6>>1]<<2)+129312>>2]](F,f,u+1032|0);g=g+1|0;if((H|0)>(g|0)){continue}break}}m=l+m|0;p=p-l|0;if(p){r=l+r|0}else{p=o;a=o+v[b+68>>2]|0;v[b+68>>2]=a;r=a-o|0}if((w|0)>(r|0)){continue}break}if(!m){break e}v[b+72>>2]=v[b+72>>2]+m}k=k+D|0;i=i+1|0;if((M|0)!=(i|0)){continue}break}t=t+1|0;if((A|0)!=(t|0)){continue}break}}if(!h){break a}if(!M){A=h;break a}n=B(A,S);i=0;while(1){g:{if(v[b+72>>2]>=(k|0)){break g}d=3e4;if(v[b+72>>2]>=(k|0)){break g}while(1){if(v[b+72>>2]>=(k|0)){break g}d=d-1|0;if(d){continue}d=1e4;continue}}m=0;q=v[(i<<2)+R>>2];w=q+w|0;h:{if((w|0)<=(r|0)){break h}while(1){a=w-r|0;A=(a|0)<(p|0)?a:p;if((A|0)>0){g=r-n|0;E=A+g|0;while(1){s=0;f=0;e=0;l=O+(g<<3)|0;D=P+(v[l>>2]<<5)|0;d=v[D+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;j=a;a=e>>>6|0;e=(e&63)<<26|j>>>6;j=a;a=c>>>6|0;j=j-(a>>>0>e>>>0)|0;t=e-a|0;e=j;a=t+1|0;e=a?e:e+1|0;c=a;a=0;H=a;F=c&7;if(a|F){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((F|0)!=(s|0)|(H|0)!=(a|0)){continue}break}}f=x[l+4>>1];if(!j&t>>>0>=7|j){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}i:{if(!f){break i}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break i}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[l+6>>1]<<2)+129440>>2]](D,f,u+1032|0);g=g+1|0;if((E|0)>(g|0)){continue}break}}m=m+A|0;p=p-A|0;if(p){r=r+A|0}else{p=o;a=o+v[b+68>>2]|0;v[b+68>>2]=a;r=a-o|0}if((w|0)>(r|0)){continue}break}if(!m){break h}v[b+72>>2]=v[b+72>>2]+m}k=k+q|0;i=i+1|0;if((M|0)!=(i|0)){continue}break}A=h;break a}A=h?h:-1;p=o}m=J-o|0;j:{k:{l:{J=h<<1;i=J-1|0;if(A>>>0>=i>>>0){i=A;t=0;j=o;break l}C=i-A|0;t=0;if(N){j=o;E=0;while(1){F=B(E,T);n=0;while(1){m:{if(v[b+72>>2]>=(k|0)){break m}d=3e4;if(v[b+72>>2]>=(k|0)){break m}while(1){if(v[b+72>>2]>=(k|0)){break m}d=d-1|0;if(d){continue}d=1e4;continue}}l=0;K=v[(n<<2)+U>>2];t=K+t|0;n:{if((t|0)<=(m|0)){break n}while(1){a=t-m|0;q=(a|0)<(j|0)?a:j;if((q|0)>0){g=m-F|0;Q=q+g|0;while(1){s=0;f=0;e=0;D=(g<<3)+Y|0;V=(v[D>>2]<<5)+X|0;d=v[V+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;h=a;a=e>>>6|0;e=(e&63)<<26|h>>>6;h=a;a=c>>>6|0;h=h-(a>>>0>e>>>0)|0;H=e-a|0;e=h;a=H+1|0;e=a?e:e+1|0;c=a;a=0;W=a;Z=c&7;if(a|Z){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((Z|0)!=(s|0)|(W|0)!=(a|0)){continue}break}}f=x[D+4>>1];if(!h&H>>>0>=7|h){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}o:{if(!f){break o}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break o}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[D+6>>1]<<2)+129312>>2]](V,f,u+1032|0);g=g+1|0;if((Q|0)>(g|0)){continue}break}}l=l+q|0;j=j-q|0;if(j){m=m+q|0}else{j=o;a=o+v[b+128>>2]|0;v[b+128>>2]=a;m=a-o|0}if((t|0)>(m|0)){continue}break}if(!l){break n}v[b+72>>2]=v[b+72>>2]+l}k=k+K|0;n=n+1|0;if((N|0)!=(n|0)){continue}break}E=E+1|0;if((E|0)!=(C|0)){continue}break}break l}j=o;if(!h){break j}break k}if(i>>>0>=J>>>0){break j}if(!N){break k}while(1){H=B(C,T);n=0;while(1){p:{if(v[b+72>>2]>=(k|0)){break p}d=3e4;if(v[b+72>>2]>=(k|0)){break p}while(1){if(v[b+72>>2]>=(k|0)){break p}d=d-1|0;if(d){continue}d=1e4;continue}}l=0;F=v[(n<<2)+U>>2];t=F+t|0;q:{if((t|0)<=(m|0)){break q}while(1){a=t-m|0;q=(a|0)<(j|0)?a:j;if((q|0)>0){g=m-H|0;K=q+g|0;while(1){s=0;f=0;e=0;E=(g<<3)+Y|0;Q=(v[E>>2]<<5)+X|0;d=v[Q+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;h=a;a=e>>>6|0;e=(e&63)<<26|h>>>6;h=a;a=c>>>6|0;h=h-(a>>>0>e>>>0)|0;D=e-a|0;e=h;a=D+1|0;e=a?e:e+1|0;c=a;a=0;V=a;W=c&7;if(a|W){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((W|0)!=(s|0)|(V|0)!=(a|0)){continue}break}}f=x[E+4>>1];if(!h&D>>>0>=7|h){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}r:{if(!f){break r}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break r}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[E+6>>1]<<2)+129440>>2]](Q,f,u+1032|0);g=g+1|0;if((K|0)>(g|0)){continue}break}}l=l+q|0;j=j-q|0;if(j){m=m+q|0}else{j=o;a=o+v[b+128>>2]|0;v[b+128>>2]=a;m=a-o|0}if((t|0)>(m|0)){continue}break}if(!l){break q}v[b+72>>2]=v[b+72>>2]+l}k=k+F|0;n=n+1|0;if((N|0)!=(n|0)){continue}break}C=C+1|0;i=i+1|0;if((J|0)!=(i|0)){continue}break}break j}C=(C+J|0)-i|0}s:{a=v[b+72>>2]>=(k|0);if(a|a){break s}d=3e4;while(1){if(v[b+72>>2]>=(k|0)){break s}d=d-1|0;if(d){continue}d=1e4;continue}}i=v[b+52>>2];s=v[b+8>>2];f=v[b+24>>2];c=64;h=0;a=v[b+76>>2]- -64|0;v[b+76>>2]=a;d=a+-64|0;if((I|0)>(d|0)){while(1){a=I-d|0;e=(a|0)<64?a:64;c=c-e|0;t:{if((a|0)<=0){break t}a=(e|0)>1?e:1;l=a&1;if((a|0)!=1){n=a&-2;a=0;while(1){g=f+B(d,52)|0;q=v[(v[v[g>>2]+24>>2]<<2)+149608>>2];if(q){Ba[q|0](g,v[u+1068>>2])}g=g+52|0;q=v[(v[v[g>>2]+24>>2]<<2)+149608>>2];if(q){Ba[q|0](g,v[u+1068>>2])}d=d+2|0;a=a+2|0;if((n|0)!=(a|0)){continue}break}}if(!l){break t}a=f+B(d,52)|0;g=v[(v[v[a>>2]+24>>2]<<2)+149608>>2];if(g){Ba[g|0](a,v[u+1068>>2])}d=d+1|0}if(!c){a=v[b+76>>2]- -64|0;v[b+76>>2]=a;d=a+-64|0;c=64}h=(e<<1)+h|0;if((d|0)<(I|0)){continue}break}}a=d-I|0;if((G|0)>(a|0)){while(1){g=0;d=G-a|0;e=(c|0)<(d|0)?c:d;if((e|0)>0){while(1){d=a<<5;c=d+i|0;d=d+s|0;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];a=a+1|0;g=g+1|0;if((e|0)!=(g|0)){continue}break}}h=e+h|0;c=64;a=v[b+76>>2]- -64|0;v[b+76>>2]=a;a=(a-I|0)+-64|0;if((G|0)>(a|0)){continue}break}}if(h){v[b+80>>2]=v[b+80>>2]+h}u:{a=G+I|0;if((a|0)<=v[b+80>>2]|(a|0)<=v[b+80>>2]){break u}d=3e4;while(1){if((a|0)<=v[b+80>>2]){break u}d=d-1|0;if(d){continue}d=1e4;continue}}J=L-1|0;if(J){E=C+L|0;I=0;while(1){if(M){q=B(A,S);n=0;while(1){v:{if(v[b+72>>2]>=(k|0)){break v}d=3e4;if(v[b+72>>2]>=(k|0)){break v}while(1){if(v[b+72>>2]>=(k|0)){break v}d=d-1|0;if(d){continue}d=1e4;continue}}l=0;L=v[(n<<2)+R>>2];w=L+w|0;w:{if((w|0)<=(r|0)){break w}while(1){a=w-r|0;i=(a|0)<(p|0)?a:p;if((i|0)>0){g=r-q|0;D=i+g|0;while(1){s=0;f=0;e=0;C=O+(g<<3)|0;H=P+(v[C>>2]<<5)|0;d=v[H+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;h=a;a=e>>>6|0;e=(e&63)<<26|h>>>6;h=a;a=c>>>6|0;h=h-(a>>>0>e>>>0)|0;G=e-a|0;e=h;a=G+1|0;e=a?e:e+1|0;c=a;a=0;F=a;K=c&7;if(a|K){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((K|0)!=(s|0)|(F|0)!=(a|0)){continue}break}}f=x[C+4>>1];if(!h&G>>>0>=7|h){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}x:{if(!f){break x}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break x}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[C+6>>1]<<2)+129312>>2]](H,f,u+1032|0);g=g+1|0;if((D|0)>(g|0)){continue}break}}l=l+i|0;p=p-i|0;if(p){r=i+r|0}else{p=o;a=o+v[b+68>>2]|0;v[b+68>>2]=a;r=a-o|0}if((w|0)>(r|0)){continue}break}if(!l){break w}v[b+72>>2]=v[b+72>>2]+l}k=k+L|0;n=n+1|0;if((M|0)!=(n|0)){continue}break}}A=A+1|0;if(N){h=r-B(A,S)|0;n=0;while(1){y:{if(v[b+72>>2]>=(k|0)){break y}d=3e4;if(v[b+72>>2]>=(k|0)){break y}while(1){if(v[b+72>>2]>=(k|0)){break y}d=d-1|0;if(d){continue}d=1e4;continue}}l=0;L=v[(n<<2)+U>>2];t=L+t|0;z:{if((t|0)<=(m|0)){break z}while(1){a=t-m|0;C=(a|0)<(j|0)?a:j;if((C|0)>0){D=h+C|0;g=h;while(1){s=0;f=0;e=0;G=O+(g<<3)|0;H=P+(v[G>>2]<<5)|0;d=v[H+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;i=a;a=e>>>6|0;e=(e&63)<<26|i>>>6;i=a;a=c>>>6|0;i=i-(a>>>0>e>>>0)|0;q=e-a|0;e=i;a=q+1|0;e=a?e:e+1|0;c=a;a=0;F=a;K=c&7;if(a|K){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((K|0)!=(s|0)|(F|0)!=(a|0)){continue}break}}f=x[G+4>>1];if(!i&q>>>0>=7|i){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}A:{if(!f){break A}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break A}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[G+6>>1]<<2)+129312>>2]](H,f,u+1032|0);g=g+1|0;if((D|0)>(g|0)){continue}break}}l=l+C|0;j=j-C|0;if(j){m=m+C|0}else{j=o;a=o+v[b+128>>2]|0;v[b+128>>2]=a;m=a-o|0}if((t|0)>(m|0)){continue}break}if(!l){break z}v[b+72>>2]=v[b+72>>2]+l}k=k+L|0;n=n+1|0;if((N|0)!=(n|0)){continue}break}}I=I+1|0;if((J|0)!=(I|0)){continue}break}C=E-1|0}q=v[b+136>>2];I=v[b+132>>2];G=v[b+140>>2];v[u+1060>>2]=G;v[u+1052>>2]=I;v[u+1056>>2]=q;if(M){l=0;while(1){B:{if(v[b+72>>2]>=(k|0)){break B}d=3e4;if(v[b+72>>2]>=(k|0)){break B}while(1){if(v[b+72>>2]>=(k|0)){break B}d=d-1|0;if(d){continue}d=1e4;continue}}i=0;L=v[(l<<2)+R>>2];w=L+w|0;C:{if((w|0)<=(r|0)){break C}while(1){g=0;a=w-r|0;n=(a|0)<(p|0)?a:p;if((n|0)>0){while(1){s=0;f=0;e=0;J=O+(g<<3)|0;D=P+(v[J>>2]<<5)|0;d=v[D+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;h=a;a=e>>>6|0;e=(e&63)<<26|h>>>6;h=a;a=c>>>6|0;h=h-(a>>>0>e>>>0)|0;E=e-a|0;e=h;a=E+1|0;e=a?e:e+1|0;c=a;a=0;H=a;F=c&7;if(a|F){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((F|0)!=(s|0)|(H|0)!=(a|0)){continue}break}}f=x[J+4>>1];if(!h&E>>>0>=7|h){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}D:{if(!f){break D}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break D}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[J+6>>1]<<2)+129376>>2]](D,f,u+1032|0);g=g+1|0;if((n|0)!=(g|0)){continue}break}}i=i+n|0;p=p-n|0;if(p){r=n+r|0}else{p=o;a=o+v[b+68>>2]|0;v[b+68>>2]=a;r=a-o|0}if((w|0)>(r|0)){continue}break}if(!i){break C}v[b+72>>2]=v[b+72>>2]+i}k=k+L|0;l=l+1|0;if((M|0)!=(l|0)){continue}break}}v[u+1056>>2]=q;v[u+1052>>2]=I;v[u+1060>>2]=G;if(N){n=B(C,T);r=0;while(1){E:{if(v[b+72>>2]>=(k|0)){break E}d=3e4;if(v[b+72>>2]>=(k|0)){break E}while(1){if(v[b+72>>2]>=(k|0)){break E}d=d-1|0;if(d){continue}d=1e4;continue}}h=0;M=v[(r<<2)+U>>2];t=M+t|0;F:{if((t|0)<=(m|0)){break F}while(1){a=t-m|0;w=(a|0)<(j|0)?a:j;if((w|0)>0){g=m-n|0;P=w+g|0;while(1){s=0;f=0;e=0;i=(g<<3)+Y|0;O=(v[i>>2]<<5)+X|0;d=v[O+24>>2];c=d;a=c+383|0;e=a>>>0<383?1:e;p=a;a=e>>>6|0;e=(e&63)<<26|p>>>6;p=a;a=c>>>6|0;p=p-(a>>>0>e>>>0)|0;l=e-a|0;e=p;a=l+1|0;e=a?e:e+1|0;c=a;a=0;R=a;q=c&7;if(a|q){while(1){a=c;c=a-1|0;e=e-!a|0;d=d- -64|0;a=f;f=s+1|0;a=f?a:a+1|0;s=f;f=a;if((q|0)!=(s|0)|(R|0)!=(a|0)){continue}break}}f=x[i+4>>1];if(!p&l>>>0>=7|p){while(1){d=d+512|0;e=e-(c>>>0<8)|0;c=c-8|0;if(e|c){continue}break}}G:{if(!f){break G}c=0;d=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){d=d+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break G}while(1){d=d+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ba[v[(x[i+6>>1]<<2)+129376>>2]](O,f,u+1032|0);g=g+1|0;if((P|0)>(g|0)){continue}break}}h=h+w|0;j=j-w|0;if(j){m=m+w|0}else{j=o;a=o+v[b+128>>2]|0;v[b+128>>2]=a;m=a-o|0}if((t|0)>(m|0)){continue}break}if(!h){break F}v[b+72>>2]=v[b+72>>2]+h}k=k+M|0;r=r+1|0;if((N|0)!=(r|0)){continue}break}}a=v[u+1040>>2];H:{if(!a){break H}a=a+v[G>>2]|0;v[G>>2]=a;b=v[u+1040>>2];if(!b){break H}c=a-b|0;d=0;while(1){a=v[u+1036>>2]+(d<<5)|0;e=v[a+4>>2];b=I+(c+d<<5)|0;v[b>>2]=v[a>>2];v[b+4>>2]=e;e=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=e;e=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=e;e=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=e;d=d+1|0;if(d>>>0>2]){continue}break}}xa=u+1072|0;return B(A+1|0,S)+B(C+1|0,T)|0}function iM(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,u=0,x=0,A=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=C(0);M=xa-16|0;xa=M;e=v[a+208>>2];b=v[a+204>>2];v[M+8>>2]=v[a+212>>2];v[M>>2]=b;v[M+4>>2]=e;N=a+216|0;d=v[a+328>>2];if(d){e=v[a+324>>2];while(1){c=v[a+4>>2];b=e+(g<<3)|0;f=v[b>>2];b=v[b+4>>2];a:{if(f>>>0>b>>>0){XL(f,b,c,N,M);break a}YL(f,b,c,N,M)}g=g+1|0;if((d|0)!=(g|0)){continue}break}}d=v[a+376>>2];if(d){e=v[a+372>>2];g=0;while(1){c=v[a+4>>2];b=e+(g<<3)|0;f=v[b>>2];b=v[b+4>>2];b:{if(f>>>0<=b>>>0){YL(f,b,c,N,M);break b}XL(f,b,c,N,M)}g=g+1|0;if((d|0)!=(g|0)){continue}break}}d=v[a+424>>2];if(d){e=v[a+420>>2];g=0;while(1){c=v[a+4>>2];b=e+(g<<3)|0;f=v[b>>2];b=v[b+4>>2];c:{if(f>>>0<=b>>>0){YL(f,b,c,N,M);break c}XL(f,b,c,N,M)}g=g+1|0;if((d|0)!=(g|0)){continue}break}}v[a+204>>2]=v[M>>2];v[a+208>>2]=v[M+4>>2];v[a+212>>2]=v[M+8>>2];f=xa-352|0;xa=f;K=v[a+92>>2];d:{if(!K){break d}q=v[a+112>>2];s=v[a+88>>2];e:{f:{E=K<<1;if(E>>>0>=33){e=K<<3;if(e){break f}v[f+344>>2]=0;e=0;break e}m=f+216|0;v[f+344>>2]=m;e=f+80|0;break e}b=v[37696];m=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,24422,18213,56)|0;v[f+344>>2]=m;b=v[37696];e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,24422,18213,56)|0}v[f+208>>2]=e;H=SU(f+40|0);while(1){i=v[a+124>>2];d=0;while(1){g=o<<2;b=v[s+(d<<2)>>2];c=g+(q+B(b,24)|0)|0;V=z[i+(b<<2)>>2];z[f+8>>2]=z[c>>2]-V;b=(d<<3)+m|0;u=v[f+8>>2];v[b>>2]=((u|0)<0?u^-1:u|-2147483648)-16&-16;z[f+8>>2]=V+z[c+12>>2];c=b;b=v[f+8>>2];v[c+4>>2]=((b|0)<0?b^-1:b|-2147483648)+16&-16|4;d=d+1|0;if((K|0)!=(d|0)){continue}break}v[H+4>>2]=v[H+4>>2]|-2147483648;b=WU(H,m,E,1);L=v[H+12>>2];if(E){c=v[b+8>>2];d=0;while(1){b=d<<2;i=v[c+(E+(d^-1)<<2)>>2];v[b+e>>2]=v[(i<<2)+m>>2];v[b+L>>2]=i&1|v[s+(i<<1&-4)>>2]<<1;d=d+1|0;if((E|0)!=(d|0)){continue}break}}b=a+g|0;i=v[b+132>>2];I=v[b+156>>2];O=v[b+144>>2];b=v[a+188>>2]-v[a+92>>2]|0;g=b<<1;d=g+E|0;c=d<<2|4;b=b<<3|4;v[O+c>>2]=v[b+O>>2];v[c+I>>2]=v[b+I>>2];g:{if((g|0)<0){break g}b=g<<2;k=b+O|0;b=b+I|0;S=0;while(1){c=S<<2;n=v[c+e>>2];u=v[k>>2];g=c+L|0;j=v[g>>2]&1?n>>>0>=u>>>0:n>>>0>u>>>0;c=d<<2;v[c+O>>2]=j?n:u;n=c+I|0;c=j?g:b;v[n>>2]=v[c>>2];c=v[c>>2];v[(i+(c<<2&-8)|0)+((c&1)<<2)>>2]=d;h:{if(j){S=S+1|0;if(E>>>0>S>>>0){break h}break g}b=b-4|0;k=k-4|0}d=d-1|0;if(b>>>0>=I>>>0){continue}break}}o=o+1|0;if((o|0)!=3){continue}break}TU(H);e=v[f+208>>2];if(!((e|0)==(f+80|0)|!e)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}e=v[f+344>>2];if(!((e|0)==(f+216|0)|!e)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}S=v[a+188>>2];U=v[a+92>>2];b=S-U|0;d=f+216|0;i:{if(b>>>0<9){break i}e=b<<2;d=0;if(!e){break i}b=v[37696];d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,24422,18213,56)|0}v[f+248>>2]=d;b=f+80|0;j:{if(U>>>0<9){break j}e=U<<2;if(!e){b=0;break j}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,24422,18213,56)|0;d=v[f+248>>2]}v[f+112>>2]=b;v[f+36>>2]=0;v[f+32>>2]=0;t[f+31|0]=0;t[f+30|0]=0;H=0;I=0;K=0;P=xa-48|0;xa=P;e=(v[a+128>>2]<<1)+31|0;c=e>>>3&536870908;F=P+8|0;if(e>>>0>=288){e=v[37696];F=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,24422,18213,56)|0}v[P+40>>2]=F;O=J9(F,0,c);j=v[a+188>>2]<<1;L=v[a+156>>2];s=v[a+116>>2];n=v[a+92>>2];k:{if(!n){k=-1;F=0;E=-1;m=-1;break k}u=v[a+88>>2];q=v[a+136>>2];i=v[a+140>>2];g=v[a+132>>2];m=-1;E=-1;F=0;k=-1;while(1){c=v[u+(J<<2)>>2];e=O+(c>>>3&536870908)|0;v[e>>2]=v[e>>2]|1<>2];H=e>>>0>>0?H:e;e=v[c>>2];k=e>>>0>k>>>0?k:e;c=i+o|0;e=v[c+4>>2];I=e>>>0>>0?I:e;e=v[c>>2];E=e>>>0>E>>>0?E:e;c=g+o|0;e=v[c+4>>2];F=e>>>0>>0?F:e;e=v[c>>2];m=e>>>0>m>>>0?m:e;J=J+1|0;if((n|0)!=(J|0)){continue}break}}n=0;if(j){q=j|1;i=v[a+136>>2];g=v[a+140>>2];c=v[a+132>>2];J=1;while(1){e=v[L+(J<<2)>>2];l:{if(e&1){break l}o=e>>>1|0;if(!(v[O+(e>>>4&268435452)>>2]>>>o&1)){u=o<<3;e=u+c|0;if(y[e>>2]>F>>>0|y[e+4>>2]>>0){break l}e=g+u|0;if(y[e>>2]>I>>>0|y[e+4>>2]>>0){break l}e=i+u|0;if(y[e>>2]>H>>>0|y[e+4>>2]>>0){break l}e=v[f+36>>2];v[f+36>>2]=e+1;v[(e<<2)+d>>2]=o;K=(v[s+(o<<2)>>2]!=0)+K|0;break l}e=v[f+32>>2];v[f+32>>2]=e+1;v[(e<<2)+b>>2]=o;n=(v[s+(o<<2)>>2]!=0)+n|0}J=J+1|0;if((q|0)!=(J|0)){continue}break}}t[f+30|0]=!K;t[f+31|0]=!n;c=v[P+40>>2];if(!((c|0)==(P+8|0)|!c)){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}xa=P+48|0;e=w[f+31|0];if(!(w[f+30|0]?e:0)){j=a+132|0;R=ZL(f+40|0,v[f+32>>2],j,b,v[a+116>>2]);if(!e){s=v[a+4>>2];o=v[a+120>>2];l=a+216|0;G=xa-16|0;xa=G;P=v[R+16>>2];if(P){m=v[a+204>>2];g=v[a+208>>2];v[G+8>>2]=v[a+212>>2];v[G+4>>2]=g;v[G>>2]=m;k=v[R+12>>2];E=v[R+8>>2];H=v[R+4>>2];F=v[R>>2];e=0;while(1){u=F+(Q<<3)|0;q=v[u>>2];i=Q<<2;I=v[i+E>>2];while(1){c=e<<3;b=e+1|0;e=b;if(q>>>0>y[c+F>>2]){continue}break}L=v[u+4>>2];if(L>>>0>=y[F+(b<<3)>>2]){n=k+i|0;u=I<<2&12;J=H+(Q<<4)|0;e=b;while(1){i=e<<2;c=v[i+E>>2];m:{if((c|0)==(I|0)|!w[o+(u|c&3)|0]){break m}c=H+(e<<4)|0;if(y[c+8>>2]>2]|y[J+8>>2]>2]|(y[c+12>>2]>2]|y[J+12>>2]>2])){break m}T=v[l+28>>2];if((T|0)==1073741823){break m}q=v[n>>2];c=v[k+i>>2];K=c>>>0>>0?q:c;O=c>>>0>q>>>0?q:c;c=K<<16|O;c=(c<<15^-1)+c|0;c=B(c>>10^c,9);c=c>>6^c;c=(c<<11^-1)+c|0;q=c>>16^c;D=q&v[l+36>>2];i=v[l+8>>2];n:{o:{if(!i){break o}p=v[v[l>>2]+(D<<2)>>2];if((p|0)==1073741823){break o}c=v[l+4>>2];A=v[l+20>>2];while(1){x=(p<<3)+A|0;if((O|0)==v[x>>2]&(K|0)==v[x+4>>2]){break n}p=v[c+(p<<2)>>2];if((p|0)!=1073741823){continue}break}}if(i>>>0<=T>>>0){c=T+1|0;c=c>>>1|c;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;c=c>>>16|c;v[l+36>>2]=c;c=c+1|0;v[l+8>>2]=c;UL(l,c>>>0>y[l+12>>2]);D=q&v[l+36>>2];T=v[l+28>>2]}x=v[l+20>>2]+(T<<3)|0;v[x+4>>2]=K;v[x>>2]=O;t[v[l+24>>2]+T|0]=8;i=v[l>>2]+(D<<2)|0;v[v[l+4>>2]+(v[l+28>>2]<<2)>>2]=v[i>>2];c=v[l+28>>2];v[l+28>>2]=c+1;v[i>>2]=c;A=v[l+20>>2]}p=v[l+24>>2];A=x-A>>3;c=p+A|0;D=w[c|0];if(D&8){t[c|0]=0;c=v[l+24>>2]+(x-v[l+20>>2]>>3)|0;t[c|0]=w[c|0]|1;p=x-v[l+20>>2]|0;i=p>>>3|0;if(v[G+8>>2]==(g|0)){WL(G,s);p=x-v[l+20>>2]|0;m=v[G>>2];g=v[G+4>>2]}c=g+1|0;v[G+4>>2]=c;v[(g<<2)+m>>2]=i;g=v[l+24>>2]+(p>>3)|0;t[g|0]=w[g|0]|4;p=v[l+24>>2];A=x-v[l+20>>2]>>3;D=w[p+A|0];g=c}t[p+A|0]=D&253}e=e+1|0;if(L>>>0>=y[F+(e<<3)>>2]){continue}break}}if(b>>>0

>>0){e=b;Q=Q+1|0;if(P>>>0>Q>>>0){continue}}break}e=v[G+8>>2];b=v[G+4>>2];v[a+204>>2]=m;v[a+208>>2]=b;v[a+212>>2]=e}xa=G+16|0}p:{if((S|0)==(U|0)){break p}b=v[f+36>>2];if(!b){break p}L=ZL(f+8|0,b,j,d,v[a+116>>2]);b=L;J=v[a+4>>2];U=v[a+120>>2];h=a+216|0;D=0;l=xa-16|0;xa=l;P=v[R+16>>2];q:{if(!P){break q}k=v[b+16>>2];if(!k){break q}Q=v[a+204>>2];d=v[a+208>>2];v[l+8>>2]=v[a+212>>2];v[l+4>>2]=d;v[l>>2]=Q;E=v[b+12>>2];H=v[b+8>>2];I=v[b+4>>2];T=v[b>>2];K=v[R+12>>2];O=v[R+8>>2];S=v[R+4>>2];F=v[R>>2];b=0;while(1){q=F+(D<<3)|0;i=v[q>>2];g=D<<2;j=v[g+O>>2];while(1){e=b;b=b+1|0;c=v[T+(e<<3)>>2];if(c>>>0>>0){continue}break}n=v[q+4>>2];if(n>>>0>=c>>>0){u=g+K|0;q=j<<2&12;G=S+(D<<4)|0;b=e;while(1){g=b<<2;c=v[g+H>>2];r:{if((c|0)==(j|0)|!w[U+(q|c&3)|0]){break r}c=I+(b<<4)|0;if(y[c+8>>2]>2]|y[G+8>>2]>2]|(y[c+12>>2]>2]|y[G+12>>2]>2])){break r}A=v[h+28>>2];if((A|0)==1073741823){break r}i=v[u>>2];c=v[g+E>>2];s=c>>>0>>0?i:c;o=c>>>0>i>>>0?i:c;c=s<<16|o;c=(c<<15^-1)+c|0;c=B(c>>10^c,9);c=c>>6^c;c=(c<<11^-1)+c|0;i=c>>16^c;x=i&v[h+36>>2];g=v[h+8>>2];s:{t:{if(!g){break t}r=v[v[h>>2]+(x<<2)>>2];if((r|0)==1073741823){break t}c=v[h+4>>2];p=v[h+20>>2];while(1){m=(r<<3)+p|0;if((o|0)==v[m>>2]&(s|0)==v[m+4>>2]){break s}r=v[c+(r<<2)>>2];if((r|0)!=1073741823){continue}break}}if(g>>>0<=A>>>0){c=A+1|0;c=c>>>1|c;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;c=c>>>16|c;v[h+36>>2]=c;c=c+1|0;v[h+8>>2]=c;UL(h,c>>>0>y[h+12>>2]);x=i&v[h+36>>2];A=v[h+28>>2]}m=v[h+20>>2]+(A<<3)|0;v[m+4>>2]=s;v[m>>2]=o;t[v[h+24>>2]+A|0]=8;g=v[h>>2]+(x<<2)|0;v[v[h+4>>2]+(v[h+28>>2]<<2)>>2]=v[g>>2];c=v[h+28>>2];v[h+28>>2]=c+1;v[g>>2]=c;p=v[h+20>>2]}p=m-p>>3;r=v[h+24>>2];c=p+r|0;x=w[c|0];if(x&8){t[c|0]=0;c=v[h+24>>2]+(m-v[h+20>>2]>>3)|0;t[c|0]=w[c|0]|1;r=m-v[h+20>>2]|0;g=r>>>3|0;if(v[l+8>>2]==(d|0)){WL(l,J);r=m-v[h+20>>2]|0;Q=v[l>>2];d=v[l+4>>2]}c=d+1|0;v[l+4>>2]=c;v[(d<<2)+Q>>2]=g;d=v[h+24>>2]+(r>>3)|0;t[d|0]=w[d|0]|4;p=m-v[h+20>>2]>>3;r=v[h+24>>2];x=w[p+r|0];d=c}t[p+r|0]=x&253}b=b+1|0;if(n>>>0>=y[T+(b<<3)>>2]){continue}break}}if(e>>>0>>0){b=e;D=D+1|0;if(P>>>0>D>>>0){continue}}break}b=0;D=0;while(1){i=T+(D<<3)|0;g=v[i>>2];c=D<<2;s=v[c+H>>2];while(1){e=b;b=b+1|0;d=v[F+(e<<3)>>2];if(d>>>0<=g>>>0){continue}break}u=v[i+4>>2];if(u>>>0>=d>>>0){q=c+E|0;i=s<<2&12;j=I+(D<<4)|0;b=e;while(1){c=b<<2;d=v[c+O>>2];u:{if((d|0)==(s|0)|!w[U+(i|d&3)|0]){break u}d=S+(b<<4)|0;if(y[d+8>>2]>2]|y[j+8>>2]>2]|(y[d+12>>2]>2]|y[j+12>>2]>2])){break u}A=v[h+28>>2];if((A|0)==1073741823){break u}g=v[q>>2];d=v[c+K>>2];o=d>>>0>>0?g:d;n=d>>>0>g>>>0?g:d;d=o<<16|n;d=(d<<15^-1)+d|0;d=B(d>>10^d,9);d=d>>6^d;d=(d<<11^-1)+d|0;g=d>>16^d;x=g&v[h+36>>2];c=v[h+8>>2];v:{w:{if(!c){break w}r=v[v[h>>2]+(x<<2)>>2];if((r|0)==1073741823){break w}d=v[h+4>>2];p=v[h+20>>2];while(1){m=(r<<3)+p|0;if((n|0)==v[m>>2]&(o|0)==v[m+4>>2]){break v}r=v[d+(r<<2)>>2];if((r|0)!=1073741823){continue}break}}if(c>>>0<=A>>>0){d=A+1|0;d=d>>>1|d;d=d>>>2|d;d=d>>>4|d;d=d>>>8|d;d=d>>>16|d;v[h+36>>2]=d;d=d+1|0;v[h+8>>2]=d;UL(h,d>>>0>y[h+12>>2]);x=g&v[h+36>>2];A=v[h+28>>2]}m=v[h+20>>2]+(A<<3)|0;v[m+4>>2]=o;v[m>>2]=n;t[v[h+24>>2]+A|0]=8;c=v[h>>2]+(x<<2)|0;v[v[h+4>>2]+(v[h+28>>2]<<2)>>2]=v[c>>2];d=v[h+28>>2];v[h+28>>2]=d+1;v[c>>2]=d;p=v[h+20>>2]}p=m-p>>3;r=v[h+24>>2];d=p+r|0;x=w[d|0];if(x&8){t[d|0]=0;d=v[h+24>>2]+(m-v[h+20>>2]>>3)|0;t[d|0]=w[d|0]|1;p=m-v[h+20>>2]|0;d=p>>>3|0;r=v[l+4>>2];if((r|0)==v[l+8>>2]){WL(l,J);p=m-v[h+20>>2]|0;r=v[l+4>>2];Q=v[l>>2]}v[l+4>>2]=r+1;v[(r<<2)+Q>>2]=d;d=v[h+24>>2]+(p>>3)|0;t[d|0]=w[d|0]|4;p=m-v[h+20>>2]>>3;r=v[h+24>>2];x=w[p+r|0]}t[p+r|0]=x&253}b=b+1|0;if(u>>>0>=y[F+(b<<3)>>2]){continue}break}}if(e>>>0

>>0){b=e;D=D+1|0;if(k>>>0>D>>>0){continue}}break}v[a+204>>2]=Q;v[a+208>>2]=v[l+4>>2];v[a+212>>2]=v[l+8>>2]}xa=l+16|0;_L(L)}_L(R)}e=v[f+112>>2];if(!((e|0)==(f+80|0)|!e)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}e=v[f+248>>2];if((e|0)==(f+216|0)|!e){break d}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}xa=f+352|0;u=v[a+204>>2];j=v[a+4>>2];q=0;L=v[a+208>>2];x:{if(!L){v[a+280>>2]=v[a+272>>2];break x}while(1){b=v[u+(q<<2)>>2];o=v[N+20>>2]+(b<<3)|0;b=b+v[N+24>>2]|0;e=w[b|0];y:{if(e&2){if(e&4){break y}d=v[a+272>>2];z:{if((d|0)!=v[a+276>>2]){s=v[a+268>>2];break z}s=Dx(j,d<<4,1);g=I9(s,v[a+268>>2],v[a+276>>2]<<3);b=v[j+16>>2];n=v[a+268>>2];A:{if(!(b>>>0<=n>>>0&n>>>0>2]>>>0)){if(!n){break A}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,n);break A}c=v[j+4>>2];d=0;i=v[j+8>>2];b=i;while(1){f=d;d=d+1|0;e=b;b=b-1|0;k=c+(b<<2)|0;if(n>>>0>y[k>>2]){continue}break}B:{if(e>>>0>=i>>>0){break B}d=0;b=f&3;if(b){while(1){v[k>>2]=v[v[j+4>>2]+(e<<2)>>2];e=e+1|0;k=k+4|0;d=d+1|0;if((b|0)!=(d|0)){continue}break}}if(f-1>>>0<3){break B}while(1){b=e<<2;v[k>>2]=v[b+v[j+4>>2]>>2];v[k+4>>2]=v[(b+v[j+4>>2]|0)+4>>2];v[k+8>>2]=v[(b+v[j+4>>2]|0)+8>>2];v[k+12>>2]=v[(b+v[j+4>>2]|0)+12>>2];k=k+16|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}v[j+8>>2]=i-1}v[a+268>>2]=g;v[a+276>>2]=v[a+276>>2]<<1;d=v[a+272>>2]}f=v[o+4>>2];b=v[o>>2];v[a+272>>2]=d+1;e=(d<<3)+s|0;v[e>>2]=b>>>0>>0?b:f;v[e+4>>2]=b>>>0>f>>>0?b:f;break y}t[b|0]=e&254;if(!(w[v[N+24>>2]+(o-v[N+20>>2]>>3)|0]&4)){break y}d=v[a+260>>2];C:{if((d|0)!=v[a+264>>2]){s=v[a+256>>2];break C}s=Dx(j,d<<4,1);g=I9(s,v[a+256>>2],v[a+264>>2]<<3);b=v[j+16>>2];n=v[a+256>>2];D:{if(!(b>>>0<=n>>>0&n>>>0>2]>>>0)){if(!n){break D}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,n);break D}c=v[j+4>>2];d=0;i=v[j+8>>2];b=i;while(1){f=d;d=d+1|0;e=b;b=b-1|0;k=c+(b<<2)|0;if(n>>>0>y[k>>2]){continue}break}E:{if(e>>>0>=i>>>0){break E}d=0;b=f&3;if(b){while(1){v[k>>2]=v[v[j+4>>2]+(e<<2)>>2];e=e+1|0;k=k+4|0;d=d+1|0;if((b|0)!=(d|0)){continue}break}}if(f-1>>>0<3){break E}while(1){b=e<<2;v[k>>2]=v[b+v[j+4>>2]>>2];v[k+4>>2]=v[(b+v[j+4>>2]|0)+4>>2];v[k+8>>2]=v[(b+v[j+4>>2]|0)+8>>2];v[k+12>>2]=v[(b+v[j+4>>2]|0)+12>>2];k=k+16|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}v[j+8>>2]=i-1}v[a+256>>2]=g;v[a+264>>2]=v[a+264>>2]<<1;d=v[a+260>>2]}f=v[o+4>>2];b=v[o>>2];v[a+260>>2]=d+1;e=(d<<3)+s|0;v[e>>2]=b>>>0>>0?b:f;v[e+4>>2]=b>>>0>f>>>0?b:f;b=v[N+24>>2]+(o-v[N+20>>2]>>3)|0;t[b|0]=w[b|0]&251}q=q+1|0;if((L|0)!=(q|0)){continue}break}v[a+280>>2]=v[a+272>>2];if(L){s=0;while(1){b=v[u+(s<<2)>>2];if((w[b+v[N+24>>2]|0]&6)==6){q=v[N+20>>2]+(b<<3)|0;d=v[a+280>>2];F:{if((d|0)!=v[a+276>>2]){i=v[a+268>>2];break F}i=Dx(j,d<<4,1);g=I9(i,v[a+268>>2],v[a+276>>2]<<3);b=v[j+16>>2];o=v[a+268>>2];G:{if(!(b>>>0<=o>>>0&o>>>0>2]>>>0)){if(!o){break G}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,o);break G}c=v[j+4>>2];d=0;n=v[j+8>>2];b=n;while(1){f=d;d=d+1|0;e=b;b=b-1|0;k=c+(b<<2)|0;if(o>>>0>y[k>>2]){continue}break}H:{if(e>>>0>=n>>>0){break H}d=0;b=f&3;if(b){while(1){v[k>>2]=v[v[j+4>>2]+(e<<2)>>2];e=e+1|0;k=k+4|0;d=d+1|0;if((b|0)!=(d|0)){continue}break}}if(f-1>>>0<3){break H}while(1){b=e<<2;v[k>>2]=v[b+v[j+4>>2]>>2];v[k+4>>2]=v[(b+v[j+4>>2]|0)+4>>2];v[k+8>>2]=v[(b+v[j+4>>2]|0)+8>>2];v[k+12>>2]=v[(b+v[j+4>>2]|0)+12>>2];k=k+16|0;e=e+4|0;if((n|0)!=(e|0)){continue}break}}v[j+8>>2]=n-1}v[a+268>>2]=g;v[a+276>>2]=v[a+276>>2]<<1;d=v[a+280>>2]}f=v[q+4>>2];b=v[q>>2];v[a+280>>2]=d+1;e=(d<<3)+i|0;v[e>>2]=b>>>0>>0?b:f;v[e+4>>2]=b>>>0>f>>>0?b:f}s=s+1|0;if((L|0)!=(s|0)){continue}break}}}v[a+192>>2]=v[a+188>>2];xa=M+16|0}function HO(a){a=a|0;var b=0,c=0,d=0,e=0,f=C(0),g=0,h=0,i=C(0),j=0,k=0,l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=0,s=0,y=0,A=C(0),E=0,F=C(0),G=0,H=0,I=C(0),J=C(0),L=C(0),M=0,N=0,O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=0,X=0,Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;j=xa-128|0;xa=j;c=v[a+36>>2];b=v[c+304>>2];s=v[b>>2];if(s){v[b>>2]=v[s>>2]}if(!s){b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?26823:63804;e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,7251,e,19395,82)|0;b=e+19&-16;v[b-4>>2]=b-e;s=tK(b,v[c+308>>2])}N=v[a+56>>2];b=N+v[a+60>>2]|0;c=v[a+64>>2];W=b>>>0>>0?b:c;a:{if(N>>>0>=W>>>0){break a}T=z[v[a+40>>2]+328>>2];aa=j+48|0;r=v[a+68>>2];while(1){c=v[a+32>>2];if(c>>>0<=r>>>0){break a}b=r+1|0;b:{c:{if(b>>>0>=c>>>0){y=b;break c}e=v[a+28>>2];y=b;d:{while(1){if(v[v[e+(y<<2)>>2]+56>>2]!=(N|0)){break d}y=y+1|0;if((c|0)!=(y|0)){continue}break}y=c}if(b>>>0>>0){G=v[a+28>>2]+(r<<2)|0;e=0;g=0;l=0;E=32;O=xa-16|0;xa=O;t[O+12|0]=0;h=O-128|0;xa=h;v[O+8>>2]=h;n=(y-r|0)-1|0;e:{if((n|0)<=0){break e}while(1){f:{if((e|0)>=(n|0)){break f}while(1){if(n-e>>>0<=4){while(1){k=e;e=e+1|0;b=e;c=k;while(1){d=b;b=v[G+(b<<2)>>2];f=z[b+28>>2];H=v[G+(c<<2)>>2];i=z[H+28>>2];g:{if(!(f>2]|(!v[b+4>>2]|f!=i)){break g}}c=d}b=d+1|0;if((d|0)<(n|0)){continue}break}if((c|0)!=(k|0)){b=G+(c<<2)|0;c=v[b>>2];d=b;b=G+(k<<2)|0;v[d>>2]=v[b>>2];v[b>>2]=c}if((e|0)!=(n|0)){continue}break f}}h:{i:{H=G+(e<<2)|0;c=v[H>>2];f=z[c+28>>2];d=G+((e+n|0)/2<<2)|0;k=v[d>>2];i=z[k+28>>2];if(f>i){break i}if(f!=i){b=c;break h}if(!v[k+4>>2]){b=c;break h}if(!v[c+4>>2]){break i}b=c;break h}v[H>>2]=k;v[d>>2]=c;b=v[H>>2];f=z[b+28>>2];k=c}j:{k:{M=G+(n<<2)|0;c=v[M>>2];i=z[c+28>>2];if(!(i>2]|(!v[c+4>>2]|f!=i)){break k}}v[H>>2]=c;v[M>>2]=b;k=v[d>>2];break j}f=i;b=c}i=z[k+28>>2];l:{if(!(i>f)){if(v[k+4>>2]|(!v[b+4>>2]|f!=i)){break l}}v[d>>2]=b;v[M>>2]=k;k=v[d>>2]}b=n-1|0;H=G+(b<<2)|0;v[d>>2]=v[H>>2];v[H>>2]=k;c=e;while(1){f=z[k+28>>2];while(1){d=c;c=d+1|0;U=G+(c<<2)|0;M=v[U>>2];i=z[M+28>>2];if(i>2]?1:!v[M+4>>2]|f!=i)){continue}break}while(1){b=b-1|0;X=G+(b<<2)|0;V=v[X>>2];i=z[V+28>>2];if(i>f|!(v[V+4>>2]?1:!v[k+4>>2]|f!=i)){continue}break}if((b|0)>(c|0)){v[U>>2]=V;v[X>>2]=M;k=v[H>>2];continue}break}v[U>>2]=k;v[H>>2]=M;m:{if((c-e|0)<(n-c|0)){if(E-1>>>0<=g>>>0){c=E<<3;if(c){b=v[37696];k=b+12|0;b=(ca=k,da=c,ea=Ba[v[v[b>>2]+20>>2]](b)|0?56633:63804,fa=17218,ga=155,ba=v[v[k>>2]+8>>2],Ba[ba](ca|0,da|0,ea|0,fa|0,ga|0)|0)}else{b=0}E=E<<1;b=I9(b,h,g<<2);c=l;l=1;if(!(!c|!h)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}h=b}b=(g<<2)+h|0;v[b>>2]=e;v[b+4>>2]=d;e=d+2|0;break m}if(E-1>>>0<=g>>>0){c=E<<3;if(c){b=v[37696];k=b+12|0;b=(ga=k,fa=c,ea=Ba[v[v[b>>2]+20>>2]](b)|0?56633:63804,da=17218,ca=155,ba=v[v[k>>2]+8>>2],Ba[ba](ga|0,fa|0,ea|0,da|0,ca|0)|0)}else{b=0}E=E<<1;b=I9(b,h,g<<2);c=l;l=1;if(!(!c|!h)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}h=b}b=(g<<2)+h|0;v[b>>2]=d+2;v[b+4>>2]=n;n=d}g=g+2|0;if((e|0)<(n|0)){continue}break}}if(g){b=g-2|0;e=v[(b<<2)+h>>2];n=v[((g<<2)+h|0)-4>>2];g=b;continue}break}if(!l|!h){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,h)}if(w[O+12|0]){v9(v[O+8>>2])}xa=O+16|0}if(r>>>0>=y>>>0){break b}}O=y-2|0;H=N-1|0;P=z[a+44>>2];G=1;while(1){d=v[v[a+28>>2]+(r<<2)>>2];f=z[d+28>>2];if(f>C(1)){break b}e=0;b=v[d>>2];if(b){e=!w[v[b+32>>2]+34|0]}b=v[d+4>>2];if(b){b=w[v[b+32>>2]+34|0]}else{b=1}n:{if((e|!b)!=1){break n}o:{if(v[d+104>>2]){break o}g=xa-192|0;xa=g;qO(d);b=v[d+12>>2];l=v[d+8>>2];e=v[d+4>>2];n=v[d>>2];h=v[d+64>>2];c=v[d+60>>2];p:{if((h|0)>=(c|0)){k=h;h=c;c=b;b=l;l=e;e=n;break p}k=c;c=l;l=n}z[g+160>>2]=z[b+36>>2];z[g+164>>2]=z[b+40>>2];z[g+168>>2]=z[b+44>>2];z[g+172>>2]=z[b+48>>2];i=z[b+52>>2];z[g+176>>2]=i;m=z[b+56>>2];z[g+180>>2]=m;q=z[b+60>>2];z[g+184>>2]=q;z[g+96>>2]=z[b+8>>2];z[g+100>>2]=z[b+12>>2];z[g+104>>2]=z[b+16>>2];z[g+108>>2]=z[b+20>>2];p=z[b+24>>2];z[g+112>>2]=p;F=z[b+28>>2];z[g+116>>2]=F;L=z[b+32>>2];z[g+120>>2]=L;z[g+128>>2]=z[c+36>>2];z[g+132>>2]=z[c+40>>2];z[g+136>>2]=z[c+44>>2];z[g+140>>2]=z[c+48>>2];I=z[c+52>>2];z[g+144>>2]=I;Q=z[c+56>>2];z[g+148>>2]=Q;R=z[c+60>>2];z[g+152>>2]=R;z[g+64>>2]=z[c+8>>2];z[g+68>>2]=z[c+12>>2];z[g+72>>2]=z[c+16>>2];z[g+76>>2]=z[c+20>>2];S=z[c+24>>2];z[g+80>>2]=S;Y=z[c+28>>2];z[g+84>>2]=Y;Z=z[c+32>>2];z[g+88>>2]=Z;v[g+56>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+40>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;f=z[v[d+52>>2]+52>>2];v[s+7160>>2]=-1;z[s+7152>>2]=P;o=f>C(0)?f:C(0);n=s+7160|0;A=z[b+4>>2];J=z[c+4>>2];f=C(A+J);_=f>2]>>2],28)+142128|0)+(v[v[c>>2]>>2]<<2)>>2]](b,c,g+160|0,g+128|0,g+96|0,g- -64|0,o,g+48|0,g+32|0,z[d+28>>2],n,_));q:{if(o>=C(1)){v[d+48>>2]=0;v[d+104>>2]=1;v[d+28>>2]=2139095039;v[d+32>>2]=0;break q}v[d+72>>2]=v[n>>2];I=C(C(i-p)-C(I-S));i=z[g+48>>2];f=C(-i);p=z[g+52>>2];m=C(C(I*f)-C(C(C(m-F)-C(Q-Y))*p));F=z[g+56>>2];L=C(m-C(C(C(q-L)-C(R-Z))*F));r:{if(v[d+64>>2]>2]){f=i;break r}F=C(-F);z[g+56>>2]=F;p=C(-p);z[g+52>>2]=p;z[g+48>>2]=f}v[d+104>>2]=1;if(L<_){v[d+28>>2]=2139095039;break q}m=C(0);s:{if(!(o<=C(0))){I=C(0);break s}m=C(1);q=C(1);i=C(1);I=C(-o);o=C(0);q=e?z[v[e+32>>2]+36>>2]:q;m=l?z[v[l+32>>2]+36>>2]:m;if((m>q?q:m)!=C(1)){m=C(0);break s}i=e?z[v[e+36>>2]+60>>2]:i;t:{if(!l){J=C(34028234663852886e22);m=C(1);break t}m=z[v[l+36>>2]+60>>2]}m=C(C((A>2]=I;z[d+28>>2]=o;z[d+32>>2]=m;z[d+36>>2]=z[g+32>>2];z[d+40>>2]=z[g+36>>2];i=z[g+40>>2];z[d+24>>2]=F;z[d+20>>2]=p;z[d+16>>2]=f;z[d+44>>2]=i;e=s+4624|0;v[e>>2]=0;l=v[d+72>>2];z[s+536>>2]=F;z[s+532>>2]=p;z[s+528>>2]=f;v[e>>2]=1;z[s+544>>2]=z[d+36>>2];z[s+548>>2]=z[d+40>>2];f=z[d+44>>2];v[s+580>>2]=k-5>>>0<2?l:-1;v[s+540>>2]=0;z[s+552>>2]=f;e=v[b+92>>2];b=g+24|0;Ba[v[(h<<2)+133728>>2]](e,0,s,b)|0;Ba[v[(k<<2)+133728>>2]](v[c+92>>2],1,s,b)|0;b=v[v[s+7188>>2]>>2];c=b+(x[g+24>>1]<<5)|0;e=b+(x[g+26>>1]<<5)|0;f=Ny(c,e);b=g+16|0;z[b+4>>2]=1;z[b>>2]=1;Oy(g,b,c,e);b=v[g+4>>2];c=v[g>>2];u[d+76>>1]=x[g+24>>1];e=x[g+26>>1];z[d+88>>2]=f;ba=d,ca=Waa(c,b),v[ba+80>>2]=ca;v[d+84>>2]=Aa;u[d+78>>1]=e}xa=g+192|0;e=r+1|0;if(y>>>0<=e>>>0){f=z[d+28>>2];break o}c=r;f=z[d+28>>2];if(!(f>z[v[v[a+28>>2]+(e<<2)>>2]+28>>2])){break o}u:{while(1){l=v[a+28>>2];b=e;e=v[l+(b<<2)>>2];if(!(z[e+28>>2]>2]=e;c=b;e=b+1|0;if((y|0)!=(e|0)){continue}break}l=v[a+28>>2]}v[(b<<2)+l>>2]=d;r=r-1|0;break n}if(f>C(1)){break b}v:{if(!(f<=C(34028234663852886e22))|!w[d+69|0]){break v}c=v[a+40>>2];if(!v[c+120>>2]){break v}v[j>>2]=1065353216;v[j+4>>2]=1065353216;v[j+8>>2]=1065353216;v[j+12>>2]=1065353216;z[j+16>>2]=z[d+16>>2];z[j+20>>2]=z[d+20>>2];z[j+24>>2]=z[d+24>>2];f=z[d+80>>2];z[j+32>>2]=f;i=z[d+84>>2];z[j+36>>2]=i;e=x[d+76>>1];u[j+44>>1]=e;b=x[d+78>>1];v[j+40>>2]=256;u[j+46>>1]=b;z[j+48>>2]=z[d+36>>2];z[j+52>>2]=z[d+40>>2];z[j+56>>2]=z[d+44>>2];z[j+80>>2]=z[d+16>>2];z[j+84>>2]=z[d+20>>2];m=z[d+24>>2];z[j+108>>2]=f;u[j+102>>1]=b;u[j+100>>1]=e;z[j+88>>2]=m;z[j+104>>2]=i;f=z[d+88>>2];v[j+96>>2]=0;v[j+60>>2]=0;z[j+92>>2]=f;v[j+72>>2]=0;v[j+76>>2]=2139095039;v[j+64>>2]=0;v[j+68>>2]=0;b=v[d+8>>2];e=v[b+92>>2];k=v[d+12>>2];h=v[k+92>>2];l=v[b+96>>2];k=v[k+96>>2];n=v[d>>2];g=v[d+4>>2];b=xa-112|0;xa=b;if(v[c+120>>2]){E=v[37412];v[b+44>>2]=E+h;v[b+40>>2]=e+E;E=v[37413];M=v[37414];v[b+36>>2]=k+(g?E:M);v[b+32>>2]=l+(n?E:M);DO(b,e,l,(n|0)!=0);e=v[b+8>>2];v[b+52>>2]=v[b+4>>2];v[b+56>>2]=e;e=v[b+16>>2];v[b+60>>2]=v[b+12>>2];v[b+64>>2]=e;e=v[b+24>>2];v[b+68>>2]=v[b+20>>2];v[b+72>>2]=e;z[b+48>>2]=z[b>>2];DO(b,h,k,(g|0)!=0);z[b+76>>2]=z[b>>2];e=v[b+8>>2];v[b+80>>2]=v[b+4>>2];v[b+84>>2]=e;e=v[b+16>>2];v[b+88>>2]=v[b+12>>2];v[b+92>>2]=e;e=v[b+24>>2];v[b+96>>2]=v[b+20>>2];v[b+100>>2]=e;v[b+108>>2]=aa;v[b+104>>2]=1;c=v[c+120>>2];Ba[v[v[c>>2]>>2]](c,b+32|0,1)}xa=b+112|0;if(w[j+43|0]&32){z[d+100>>2]=z[j+76>>2]}z[d+80>>2]=z[j+108>>2];z[d+84>>2]=z[j+104>>2];z[d+88>>2]=z[j+92>>2];z[d+36>>2]=z[j+48>>2];z[d+40>>2]=z[j+52>>2];z[d+44>>2]=z[j+56>>2];z[d+16>>2]=z[j+80>>2];z[d+20>>2]=z[j+84>>2];z[d+24>>2]=z[j+88>>2]}b=v[d>>2];if(!b|w[v[b+32>>2]+34|0]){c=!b}else{c=1}b=v[d+4>>2];if(!b|w[v[b+32>>2]+34|0]){b=!b}else{b=1}if(!(!b|(!(z[d+28>>2]<=C(1))|c^1))){t[d+68|0]=1}k=w[a+84|0];l=0;f=C(0);p=C(0);m=C(0);J=C(0);o=C(0);n=0;e=xa-16|0;xa=e;c=v[d+4>>2];g=v[d+12>>2];E=v[d+8>>2];w:{x:{y:{b=v[d>>2];if(!(w[v[b+32>>2]+34|0]?0:b)){if(w[v[c+32>>2]+34|0]|!c){break w}if(!b){break y}}if(z[v[b+36>>2]+124>>2]!=C(0)){break x}if(c){break y}break w}if(z[v[c+36>>2]+124>>2]==C(0)){break w}}F=z[d+28>>2];if(!(F>2]+41|0]&8|z[d+100>>2]==C(0)){break w}L=z[d+48>>2];z[e>>2]=z[d+16>>2];z[e+4>>2]=z[d+20>>2];z[e+8>>2]=z[d+24>>2];i=z[e>>2];z:{if((v[e>>2]&2139095040)==2139095040){break z}q=z[e+4>>2];if((v[e+4>>2]&2139095040)==2139095040){break z}A=z[e+8>>2];if((v[e+8>>2]&2139095040)==2139095040){break z}l=C(D(C(C(K(C(C(A*A)+C(C(i*i)+C(q*q)))))+C(-1))))>2]+34|0]|!b){break w}tO(b,F);uO(b,F,P,1);b=v[b+32>>2];v[b+48>>2]=v[b+48>>2]+1;break w}l=v[d+52>>2];if(b){h=v[b+36>>2];f=z[h+80>>2];i=C(z[E+56>>2]-z[h+20>>2]);o=C(z[E+52>>2]-z[h+16>>2]);J=z[h+84>>2];m=C(C(C(f*i)-C(o*J))+z[h+72>>2]);q=z[h+88>>2];A=C(z[E+60>>2]-z[h+24>>2]);o=C(z[h+68>>2]+C(C(q*o)-C(A*f)));f=C(z[h+64>>2]+C(C(J*A)-C(i*q)));J=C(z[h+124>>2]*C(w[l+44|0]))}i=C(0);A=C(0);q=C(0);if(c){h=v[c+36>>2];i=z[h+80>>2];p=C(z[g+56>>2]-z[h+20>>2]);q=C(z[g+52>>2]-z[h+16>>2]);I=z[h+84>>2];A=C(C(C(i*p)-C(q*I))+z[h+72>>2]);Q=z[h+88>>2];R=C(Q*q);q=C(z[g+60>>2]-z[h+24>>2]);i=C(z[h+68>>2]+C(R-C(q*i)));p=C(z[h+64>>2]+C(C(I*q)-C(p*Q)));q=C(z[h+124>>2]*C(w[l+45|0]))}m=C(A-m);A=z[e+8>>2];f=C(p-f);p=z[e>>2];I=C(i-o);Q=z[e+4>>2];i=C(C(m*A)+C(C(f*p)+C(I*Q)));o=C(i-C(L*C(10)));A:{if(!(o>2]);R=C(J+q);o=C(C(C(z[d+88>>2]+C(1))*o)/R);o=o>2];S=z[d+84>>2];m=C(m-C(A*i));f=C(f-C(p*i));p=C(I-C(Q*i));i=C(K(C(C(m*m)+C(C(f*f)+C(p*p)))));if(i>C(0)){A=C(C(1)/i);m=C(m*A);p=C(p*A);f=C(f*A)}i=C(i/R);i=i<=C(D(C(S*o)))?i:C(L*C(-o));m=C(C(i*m)+C(o*z[d+24>>2]));f=C(C(i*f)+C(o*z[d+16>>2]));i=C(C(i*p)+C(o*z[d+20>>2]));break B}m=C(o*z[d+24>>2]);f=C(o*z[d+16>>2]);i=C(o*z[d+20>>2])}if(!(o>2]=-o;if(!(!(w[v[b+32>>2]+34|0]?b:0)&(!c|!w[v[c+32>>2]+34|0]))){v[d+32>>2]=0;break A}if(b){h=v[b+36>>2];z[h+64>>2]=C(J*f)+z[h+64>>2];z[h+72>>2]=C(J*m)+z[h+72>>2];z[h+68>>2]=C(J*i)+z[h+68>>2];vO(b)}if(!c){break A}h=v[c+36>>2];z[h+64>>2]=z[h+64>>2]-C(q*f);z[h+72>>2]=z[h+72>>2]-C(q*m);z[h+68>>2]=z[h+68>>2]-C(q*i);vO(c)}if(!(w[v[b+32>>2]+34|0]|!b)){tO(b,F);uO(b,F,P,k&z[d+32>>2]==C(0));h=v[b+32>>2];v[h+48>>2]=v[h+48>>2]+1}if(!(w[v[c+32>>2]+34|0]|!c)){tO(c,F);uO(c,F,P,k&z[d+32>>2]==C(0));h=v[c+32>>2];v[h+48>>2]=v[h+48>>2]+1}f=z[d+32>>2];C:{if(!(f>C(0))){break C}D:{if(w[v[b+32>>2]+34|0]|!b){break D}tO(b,f);if(!k){break D}uO(b,z[d+32>>2],P,1)}if(w[v[c+32>>2]+34|0]|!c){break C}tO(c,z[d+32>>2]);if(!k){break C}uO(c,z[d+32>>2],P,1)}if(b){u[v[b+32>>2]+34>>1]=257}if(!c){break w}u[v[c+32>>2]+34>>1]=257}xa=e+16|0;f=z[d+28>>2];E:{if(!(f>2]=0;f=C(0);if(!n){break n}}c=v[a+76>>2];b=N?x[c+(H<<1)>>1]:0;F:{if(!(f>C(0))){break F}h=x[c+(N<<1)>>1];if(h>>>0>b>>>0){while(1){c=v[v[a+72>>2]+(b<<2)>>2];if(!w[c+34|0]){c=v[c+40>>2];e=v[c+36>>2];if(z[e+124>>2]!=C(0)){m=z[e+20>>2];p=z[e+24>>2];i=C(C(1)-f);z[c+16>>2]=C(i*z[c+16>>2])+C(f*z[e+16>>2]);z[c+24>>2]=C(i*z[c+24>>2])+C(f*p);z[c+20>>2]=C(i*z[c+20>>2])+C(f*m);s9(j,f,c,e);z[c>>2]=z[j>>2];z[c+4>>2]=z[j+4>>2];z[c+8>>2]=z[j+8>>2];z[c+12>>2]=z[j+12>>2];f=z[d+28>>2]}c=v[c+32>>2];v[c+48>>2]=v[c+48>>2]+1;i=C(z[c+36>>2]*C(C(1)-f));z[c+36>>2]=i>C(.009999999776482582)?i:C(.009999999776482582)}b=b+1|0;if((h|0)!=(b|0)){continue}break}}P=C(P-C(P*f));b=r+1|0;if(y>>>0<=b>>>0){break F}f=C(C(1)/C(C(1)-f));c=v[a+28>>2];if((r^-1)+y&1){b=v[c+(b<<2)>>2];z[b+28>>2]=f*C(z[b+28>>2]-z[d+28>>2]);b=r+2|0}if((r|0)==(O|0)){break F}while(1){e=c+(b<<2)|0;h=v[e>>2];z[h+28>>2]=f*C(z[h+28>>2]-z[d+28>>2]);e=v[e+4>>2];z[e+28>>2]=f*C(z[e+28>>2]-z[d+28>>2]);b=b+2|0;if((y|0)!=(b|0)){continue}break}}G:{if(w[a+85|0]|w[v[d+52>>2]+41|0]&8|z[d+100>>2]==C(0)){break G}b=r+1|0;if(y>>>0<=b>>>0){break G}k=v[d+4>>2];d=v[d>>2];h=r;while(1){c=v[v[a+28>>2]+(b<<2)>>2];e=v[c>>2];H:{if(!e){break H}l=v[c+4>>2];if(!l){break H}I:{if((d|0)==(e|0)&(k|0)!=(l|0)){break I}n=(d|0)!=(l|0);if(!n&(e|0)!=(k|0)|n&(e|0)==(k|0)){break I}if((k|0)!=(l|0)){break H}if((d|0)!=(e|0)){break I}break H}if(v[c+92>>2]==(G|0)){break H}v[c+92>>2]=G;i=z[c+28>>2];f=rO(c,T);if(i>f){e=b;if(h>>>0<=r>>>0){break H}while(1){c=v[a+28>>2];l=c+(h<<2)|0;n=v[l>>2];if(!(f>2])){break H}g=c;c=e<<2;v[l>>2]=v[g+c>>2];v[c+v[a+28>>2]>>2]=n;e=h;h=e-1|0;if(r>>>0>>0){continue}break}break H}if(!(f>i)){break H}n=0;h=b+1|0;J:{if(y>>>0<=h>>>0){break J}c=b;l=v[a+28>>2];e=l+(h<<2)|0;g=v[e>>2];if(!(f>z[g+28>>2])){break J}while(1){c=c<<2;v[e>>2]=v[c+l>>2];v[c+v[a+28>>2]>>2]=g;n=-1;e=h+1|0;if((e|0)==(y|0)){break J}c=h;l=v[a+28>>2];h=e;e=l+(e<<2)|0;g=v[e>>2];if(f>z[g+28>>2]){continue}break}}b=b+n|0}h=b;b=b+1|0;if(y>>>0>b>>>0){continue}break}}$=$+1|0;G=G+1|0}r=r+1|0;if(y>>>0>r>>>0){continue}break}}r=y;N=N+1|0;if((W|0)!=(N|0)){continue}break}}b=v[a+80>>2];v[b>>2]=v[b>>2]+$;a=v[v[a+36>>2]+304>>2];v[s>>2]=v[a>>2];v[a>>2]=s;xa=j+128|0}function Ex(a,b){var c=0,d=C(0),e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=0,s=0,t=C(0),u=0,x=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=0,Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=0,ia=0,ja=0,ka=0,la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0);o=xa-160|0;xa=o;O=v[b+336>>2]-1|0;if(O){ia=v[b+344>>2];ja=v[b+340>>2];ka=v[b+332>>2];while(1){D=B(O,160)+ja|0;k=0;r=B(O,80)+ia|0;s=w[r+76|0];if(s){L=v[a+384>>2]+B(O,76)|0;c=v[a+348>>2]+B(O,112)|0;u=c- -64|0;while(1){p=z[c+60>>2];H=z[c+48>>2];x=z[c+36>>2];n=z[u>>2];q=z[c+52>>2];A=z[c+40>>2];F=z[c+68>>2];I=z[c+56>>2];G=z[c+44>>2];i=z[c+8>>2];y=z[c+4>>2];J=z[c>>2];N=z[c+96>>2];P=z[c+72>>2];S=z[c+84>>2];K=z[c+20>>2];E=z[c+16>>2];t=z[c+12>>2];T=z[c+100>>2];M=z[c+76>>2];U=z[c+88>>2];e=D+(k<<5)|0;Q=z[c+32>>2];f=L+B(k,24)|0;d=z[f+20>>2];V=z[c+24>>2];h=z[f+12>>2];W=z[c+28>>2];g=z[f+16>>2];l=z[f>>2];j=z[f+4>>2];m=z[f+8>>2];z[e+24>>2]=C(C(Q*d)+C(C(V*h)+C(W*g)))+C(C(C(l*z[c+80>>2])+C(j*z[c+92>>2]))+C(m*z[c+104>>2]));z[e+20>>2]=C(C(K*d)+C(C(t*h)+C(E*g)))+C(C(C(l*M)+C(j*U))+C(m*T));z[e+16>>2]=C(C(i*d)+C(C(J*h)+C(y*g)))+C(C(C(l*P)+C(j*S))+C(m*N));z[e+8>>2]=C(C(C(l*i)+C(j*K))+C(m*Q))+C(C(C(h*G)+C(g*I))+C(d*F));z[e+4>>2]=C(C(C(l*y)+C(j*E))+C(m*W))+C(C(C(h*A)+C(g*q))+C(d*n));z[e>>2]=C(C(C(l*J)+C(j*t))+C(m*V))+C(C(C(h*x)+C(g*H))+C(d*p));k=k+1|0;if((s|0)!=(k|0)){continue}break}}e=o+48|0;s=v[b+236>>2]+B(O,112)|0;_=v[b+248>>2]+B(O,36)|0;L=v[b+284>>2]+B(O,96)|0;u=v[b+272>>2]+B(O,76)|0;d=C(0);p=C(0);h=C(0);l=C(0);g=C(0);j=C(0);m=C(0);H=C(0);x=C(0);i=C(0);q=C(0);y=C(0);J=C(0);K=C(0);E=C(0);t=C(0);A=C(0);F=C(0);k=0;I=C(0);G=C(0);c=xa-352|0;xa=c;a:{b:{c:{d:{ha=(O<<5)+ka|0;switch(w[v[ha+20>>2]+270|0]){case 2:break c;case 0:case 1:break d;default:break b}}d=C(C(C(z[u+20>>2]*z[D+8>>2])+C(C(z[u+12>>2]*z[D>>2])+C(z[u+16>>2]*z[D+4>>2])))+C(C(z[u+8>>2]*z[D+24>>2])+C(C(z[u>>2]*z[D+16>>2])+C(z[u+4>>2]*z[D+20>>2]))));d=d>C(9999999747378752e-21)?C(C(1)/d):C(0);z[_>>2]=d;h=z[D+20>>2];g=z[D+24>>2];m=z[D>>2];i=z[D+4>>2];j=z[D+8>>2];y=z[D+16>>2];v[L+28>>2]=0;v[L+12>>2]=0;l=C(d*g);z[L+24>>2]=l;q=C(d*h);z[L+20>>2]=q;G=C(d*y);z[L+16>>2]=G;j=C(j*d);z[L+8>>2]=j;n=C(i*d);z[L+4>>2]=n;d=C(m*d);z[L>>2]=d;g=z[D+20>>2];N=z[D+8>>2];y=z[D>>2];P=z[D+4>>2];p=z[D+16>>2];h=z[D+24>>2];z[e+104>>2]=l*h;z[e+100>>2]=q*h;z[e+96>>2]=G*h;z[e+92>>2]=l*g;z[e+88>>2]=q*g;z[e+84>>2]=G*g;z[e+80>>2]=l*p;m=C(d*P);z[e+48>>2]=m;x=C(j*y);z[e+44>>2]=x;i=C(n*y);z[e+40>>2]=i;H=C(d*y);z[e+36>>2]=H;y=C(j*h);z[e+32>>2]=y;J=C(n*h);z[e+28>>2]=J;h=C(d*h);z[e+24>>2]=h;K=C(j*g);z[e+20>>2]=K;E=C(n*g);z[e+16>>2]=E;l=C(d*g);z[e+12>>2]=l;t=C(j*p);z[e+8>>2]=t;A=C(n*p);z[e+4>>2]=A;F=C(d*p);z[e>>2]=F;I=C(q*p);g=C(G*p);q=C(j*N);G=C(n*N);p=C(d*N);d=C(j*P);j=C(n*P);break a}v[c+344>>2]=1065353216;v[c+328>>2]=1065353216;v[c+332>>2]=0;v[c+336>>2]=0;v[c+340>>2]=0;v[c+320>>2]=0;v[c+324>>2]=0;v[c+312>>2]=1065353216;v[c+316>>2]=0;K=C(1);d=C(1);g=C(1);h=C(1);r=w[r+76|0];if(r){while(1){Y=(c+312|0)+B(k,12)|0;f=D+(k<<5)|0;d=z[f+16>>2];h=z[f+8>>2];g=z[f+4>>2];l=z[f>>2];j=z[f+24>>2];m=z[f+20>>2];f=0;while(1){X=u+B(f,24)|0;z[Y+(f<<2)>>2]=C(C(z[X+20>>2]*h)+C(C(z[X+12>>2]*l)+C(z[X+16>>2]*g)))+C(C(z[X+8>>2]*j)+C(C(z[X>>2]*d)+C(z[X+4>>2]*m)));f=f+1|0;if((r|0)!=(f|0)){continue}break}k=k+1|0;if((k|0)!=(r|0)){continue}break}m=z[c+316>>2];j=z[c+324>>2];p=z[c+336>>2];l=z[c+340>>2];i=z[c+332>>2];g=z[c+344>>2];h=z[c+328>>2];J=z[c+320>>2];d=z[c+312>>2]}E=C(1);t=C(1);n=C(C(j*l)-C(p*h));q=C(C(h*g)-C(l*i));i=C(C(i*p)-C(g*j));A=C(C(n*J)+C(C(q*d)+C(i*m)));if(A!=C(0)){R=C(C(d*h)-C(j*m));h=C(C(1)/A);t=C(R*h);H=C(n*h);K=C(q*h);x=C(i*h);E=C(C(C(g*d)-C(J*p))*h);y=C(C(C(p*m)-C(d*l))*h)}z[c+304>>2]=t;z[c+300>>2]=y;z[c+292>>2]=y;z[c+288>>2]=E;z[c+296>>2]=H;z[c+284>>2]=x;z[c+280>>2]=H;z[c+276>>2]=x;z[c+272>>2]=K;e:{if(!r){break e}u=r<<2;f=0;if((r|0)!=1){X=r&254;k=0;while(1){Y=B(f,12);I9(Y+_|0,Y+(c+272|0)|0,u);Y=B(f|1,12);I9(Y+_|0,Y+(c+272|0)|0,u);f=f+2|0;k=k+2|0;if((X|0)!=(k|0)){continue}break}}if(r&1){f=B(f,12);I9(f+_|0,f+(c+272|0)|0,u)}if(!r){break e}k=0;while(1){d=C(0);f=0;j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[(_+B(k,12)|0)+(f<<2)>>2];u=D+(f<<5)|0;d=C(d+C(i*z[u+24>>2]));j=C(j+C(i*z[u+20>>2]));l=C(l+C(i*z[u+16>>2]));g=C(g+C(i*z[u+8>>2]));h=C(h+C(i*z[u+4>>2]));m=C(m+C(i*z[u>>2]));f=f+1|0;if((r|0)!=(f|0)){continue}break}f=(k<<5)+L|0;v[f+28>>2]=0;z[f+16>>2]=l;v[f+12>>2]=0;z[f+8>>2]=g;z[f+4>>2]=h;z[f>>2]=m;z[f+24>>2]=d;z[f+20>>2]=j;k=k+1|0;if((r|0)!=(k|0)){continue}break}if(!r){break e}k=0;while(1){f=(c+192|0)+(k<<2)|0;u=D+(k<<5)|0;z[f>>2]=z[u+16>>2];z[f+12>>2]=z[u+20>>2];z[f+24>>2]=z[u+24>>2];z[f+36>>2]=z[u>>2];z[f+48>>2]=z[u+4>>2];z[f+60>>2]=z[u+8>>2];k=k+1|0;if((r|0)!=(k|0)){continue}break}}v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=0;v[c+4>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[(c+192|0)+(f<<2)>>2];k=(f<<5)+L|0;l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+24>>2]=d;z[c+20>>2]=j;z[c+16>>2]=l;z[c+8>>2]=g;z[c+4>>2]=h;z[c>>2]=m}v[c+56>>2]=0;v[c+60>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[((f<<2)+c|0)+204>>2];k=(f<<5)+L|0;d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+56>>2]=d;z[c+52>>2]=j;z[c+48>>2]=l;z[c+40>>2]=g;z[c+36>>2]=h;z[c+32>>2]=m}v[c+88>>2]=0;v[c+92>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;v[c+72>>2]=0;v[c+76>>2]=0;v[c+64>>2]=0;v[c+68>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[((f<<2)+c|0)+216>>2];k=(f<<5)+L|0;d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+88>>2]=d;z[c+84>>2]=j;z[c+80>>2]=l;z[c+72>>2]=g;z[c+68>>2]=h;z[c+64>>2]=m}v[c+120>>2]=0;v[c+124>>2]=0;v[c+112>>2]=0;v[c+116>>2]=0;v[c+104>>2]=0;v[c+108>>2]=0;v[c+96>>2]=0;v[c+100>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[((f<<2)+c|0)+228>>2];k=(f<<5)+L|0;d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+120>>2]=d;z[c+116>>2]=j;z[c+112>>2]=l;z[c+104>>2]=g;z[c+100>>2]=h;z[c+96>>2]=m}v[c+152>>2]=0;v[c+156>>2]=0;v[c+144>>2]=0;v[c+148>>2]=0;v[c+136>>2]=0;v[c+140>>2]=0;v[c+128>>2]=0;v[c+132>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[((f<<2)+c|0)+240>>2];k=(f<<5)+L|0;d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+152>>2]=d;z[c+148>>2]=j;z[c+144>>2]=l;z[c+136>>2]=g;z[c+132>>2]=h;z[c+128>>2]=m}v[c+184>>2]=0;v[c+188>>2]=0;v[c+176>>2]=0;v[c+180>>2]=0;v[c+168>>2]=0;v[c+172>>2]=0;v[c+160>>2]=0;v[c+164>>2]=0;if(r){f=0;d=C(0);j=C(0);l=C(0);g=C(0);h=C(0);m=C(0);while(1){i=z[((f<<2)+c|0)+252>>2];k=(f<<5)+L|0;d=C(C(i*z[k+24>>2])+d);j=C(C(i*z[k+20>>2])+j);l=C(C(i*z[k+16>>2])+l);g=C(C(i*z[k+8>>2])+g);h=C(C(i*z[k+4>>2])+h);m=C(C(i*z[k>>2])+m);f=f+1|0;if((r|0)!=(f|0)){continue}break}z[c+184>>2]=d;z[c+180>>2]=j;z[c+176>>2]=l;z[c+168>>2]=g;z[c+164>>2]=h;z[c+160>>2]=m}E=z[c+36>>2];K=z[c+40>>2];J=z[c+68>>2];y=z[c+72>>2];i=z[c+100>>2];x=z[c+104>>2];j=z[c+132>>2];d=z[c+136>>2];G=z[c+164>>2];q=z[c+168>>2];I=z[c+20>>2];n=z[c+24>>2];f=v[c+48>>2];r=v[c+52>>2];N=z[c+56>>2];L=v[c+84>>2];k=v[c+80>>2];F=z[c>>2];A=z[c+4>>2];t=z[c+8>>2];l=z[c+32>>2];h=z[c+64>>2];H=z[c+96>>2];m=z[c+128>>2];p=z[c+160>>2];g=z[c+16>>2];z[e+104>>2]=z[c+88>>2];v[e+96>>2]=k;v[e+100>>2]=L;z[e+92>>2]=N;v[e+84>>2]=f;v[e+88>>2]=r;z[e+80>>2]=n;z[e+76>>2]=I;z[e+72>>2]=g;z[e+68>>2]=q;z[e- -64>>2]=G;z[e+60>>2]=p;z[e+56>>2]=d;z[e+52>>2]=j;z[e+48>>2]=m;z[e+44>>2]=x;z[e+40>>2]=i;z[e+36>>2]=H;z[e+32>>2]=y;z[e+28>>2]=J;z[e+24>>2]=h;z[e+20>>2]=K;z[e+16>>2]=E;z[e+12>>2]=l;z[e+8>>2]=t;z[e+4>>2]=A;z[e>>2]=F;break a}J9(e,0,108)}n=z[s+16>>2];N=z[s+20>>2];P=z[s+28>>2];S=z[s+32>>2];T=z[s+40>>2];M=z[s+44>>2];U=z[s+48>>2];Q=z[s+52>>2];V=z[s+56>>2];W=z[s+60>>2];Z=z[s- -64>>2];ca=z[s+68>>2];da=z[s+76>>2];$=z[e+80>>2];aa=z[s+80>>2];ba=z[e+84>>2];fa=z[s+84>>2];ga=z[e+88>>2];ea=z[s+88>>2];R=z[e+92>>2];la=z[s+92>>2];ma=z[e+96>>2];na=z[s+96>>2];oa=z[e+100>>2];pa=z[s+100>>2];qa=z[e+104>>2];ra=z[s+104>>2];sa=z[s>>2];ta=z[s+4>>2];ua=z[s+8>>2];va=z[s+12>>2];wa=z[s+24>>2];ya=z[s+36>>2];z[e+72>>2]=z[s+72>>2]-g;z[e+36>>2]=ya-H;z[e+24>>2]=wa-h;z[e+12>>2]=va-l;z[e+8>>2]=ua-t;z[e+4>>2]=ta-A;z[e>>2]=sa-F;z[e+104>>2]=ra-qa;z[e+100>>2]=pa-oa;z[e+96>>2]=na-ma;z[e+92>>2]=la-R;z[e+88>>2]=ea-ga;z[e+84>>2]=fa-ba;z[e+80>>2]=aa-$;z[e+76>>2]=da-I;z[e+68>>2]=ca-q;z[e- -64>>2]=Z-G;z[e+60>>2]=W-p;z[e+56>>2]=V-d;z[e+52>>2]=Q-j;z[e+48>>2]=U-m;z[e+44>>2]=M-x;z[e+40>>2]=T-i;z[e+32>>2]=S-y;z[e+28>>2]=P-J;z[e+20>>2]=N-K;z[e+16>>2]=n-E;xa=c+352|0;d=z[D+128>>2];h=z[D+120>>2];g=z[D+124>>2];v[o+40>>2]=0;z[o+32>>2]=g;z[o+28>>2]=h;v[o+24>>2]=0;z[o+12>>2]=d;v[o+8>>2]=0;z[o+36>>2]=-h;z[o+20>>2]=-d;z[o+16>>2]=-g;Pw(o+8|0,e);c=v[b+236>>2]+B(v[ha+24>>2],112)|0;z[c>>2]=z[o+48>>2]+z[c>>2];z[c+4>>2]=z[o+52>>2]+z[c+4>>2];z[c+8>>2]=z[o+56>>2]+z[c+8>>2];z[c+12>>2]=z[o+60>>2]+z[c+12>>2];z[c+16>>2]=z[o+64>>2]+z[c+16>>2];z[c+20>>2]=z[o+68>>2]+z[c+20>>2];z[c+24>>2]=z[o+72>>2]+z[c+24>>2];z[c+28>>2]=z[o+76>>2]+z[c+28>>2];z[c+32>>2]=z[o+80>>2]+z[c+32>>2];z[c+36>>2]=z[o+84>>2]+z[c+36>>2];z[c+40>>2]=z[o+88>>2]+z[c+40>>2];z[c+44>>2]=z[o+92>>2]+z[c+44>>2];z[c+48>>2]=z[o+96>>2]+z[c+48>>2];z[c+52>>2]=z[o+100>>2]+z[c+52>>2];z[c+56>>2]=z[o+104>>2]+z[c+56>>2];z[c+60>>2]=z[o+108>>2]+z[c+60>>2];e=c- -64|0;z[e>>2]=z[o+112>>2]+z[e>>2];z[c+68>>2]=z[o+116>>2]+z[c+68>>2];z[c+72>>2]=z[o+120>>2]+z[c+72>>2];z[c+76>>2]=z[o+124>>2]+z[c+76>>2];z[c+80>>2]=z[o+128>>2]+z[c+80>>2];z[c+84>>2]=z[o+132>>2]+z[c+84>>2];z[c+88>>2]=z[o+136>>2]+z[c+88>>2];z[c+92>>2]=z[o+140>>2]+z[c+92>>2];z[c+96>>2]=z[o+144>>2]+z[c+96>>2];z[c+100>>2]=z[o+148>>2]+z[c+100>>2];z[c+104>>2]=z[o+152>>2]+z[c+104>>2];O=O-1|0;if(O){continue}break}}a=b+412|0;i=C(0);y=C(0);J=C(0);b=v[b+236>>2];ca=C(C(z[b+56>>2]+z[b- -64>>2])*C(.5));p=C(C(z[b+44>>2]+z[b+60>>2])*C(.5));da=C(C(z[b+40>>2]+z[b+48>>2])*C(.5));d=z[b+36>>2];fa=C(C(d+d)*C(.5));d=z[b+68>>2];ga=C(C(d+d)*C(.5));d=z[b+52>>2];H=C(C(d+d)*C(.5));n=z[b+32>>2];q=z[b+28>>2];A=z[b+20>>2];F=z[b+16>>2];I=z[b+24>>2];G=z[b+12>>2];Q=z[b+8>>2];V=z[b+4>>2];W=z[b>>2];N=C(1);P=C(1);K=C(0);S=C(1);T=C(1);d=C(C(z[b+76>>2]+z[b+84>>2])*C(.5));l=C(C(z[b+92>>2]+z[b+100>>2])*C(.5));h=C(C(z[b+80>>2]+z[b+96>>2])*C(.5));g=z[b+88>>2];g=C(C(g+g)*C(.5));E=C(C(d*l)-C(h*g));j=z[b+104>>2];m=C(C(j+j)*C(.5));t=C(C(g*m)-C(l*l));j=z[b+72>>2];j=C(C(j+j)*C(.5));x=C(C(l*h)-C(m*d));M=C(C(E*h)+C(C(t*j)+C(d*x)));if(M!=C(0)){R=C(C(j*g)+C(d*C(-d)));g=C(C(1)/M);T=C(R*g);J=C(C(C(h*d)+C(j*C(-l)))*g);P=C(t*g);K=C(x*g);S=C(C(C(m*j)-C(h*h))*g);y=C(E*g)}E=C(0);M=C(1);t=C(0);U=C(1);g=C(-W);d=C(C(C(g*y)-C(J*G))-C(I*T));h=C(C(C(g*P)-C(K*G))-C(I*y));g=C(C(C(g*K)-C(S*G))-C(I*J));$=C(da+C(C(d*q)+C(C(h*V)+C(F*g))));m=C(-V);l=C(C(C(m*y)-C(J*F))-C(q*T));j=C(C(C(m*P)-C(K*F))-C(q*y));m=C(C(C(m*K)-C(S*F))-C(q*J));aa=C(ca+C(C(l*n)+C(C(j*Q)+C(A*m))));Z=C(p+C(C(d*n)+C(C(h*Q)+C(A*g))));ba=C(H+C(C(l*q)+C(C(j*V)+C(F*m))));ea=C(C($*aa)-C(Z*ba));R=p;x=C(-Q);p=C(C(C(x*y)-C(J*A))-C(n*T));H=C(C(C(x*P)-C(K*A))-C(n*y));x=C(C(C(x*K)-C(S*A))-C(n*J));R=C(R+C(C(p*I)+C(C(H*W)+C(G*x))));A=C(ga+C(C(p*n)+C(C(H*Q)+C(A*x))));n=C(ca+C(C(p*q)+C(C(H*V)+C(F*x))));Q=C(C(ba*A)-C(aa*n));q=C(fa+C(C(d*I)+C(C(h*W)+C(G*g))));F=C(da+C(C(l*I)+C(C(j*W)+C(G*m))));I=C(C(n*Z)-C(A*$));n=C(C(ea*R)+C(C(Q*q)+C(F*I)));if(n!=C(0)){n=C(C(1)/n);U=C(C(C(q*ba)-C($*F))*n);t=C(C(C(Z*F)-C(q*aa))*n);E=C(ea*n);N=C(Q*n);M=C(C(C(A*q)-C(R*Z))*n);i=C(I*n)}z[a+72>>2]=N;z[a+104>>2]=U;z[a+100>>2]=t;z[a+96>>2]=E;z[a+92>>2]=t;z[a+88>>2]=M;z[a+84>>2]=i;z[a+80>>2]=E;z[a+76>>2]=i;n=C(C(U*p)+C(C(E*d)+C(l*t)));z[a+32>>2]=n;q=C(C(U*x)+C(C(E*g)+C(m*t)));z[a+28>>2]=q;A=C(C(U*H)+C(C(E*h)+C(j*t)));z[a+24>>2]=A;F=C(C(t*p)+C(C(i*d)+C(l*M)));z[a+20>>2]=F;I=C(C(t*x)+C(C(i*g)+C(m*M)));z[a+16>>2]=I;t=C(C(t*H)+C(C(i*h)+C(j*M)));z[a+12>>2]=t;G=C(C(E*p)+C(C(N*d)+C(l*i)));z[a+8>>2]=G;M=C(C(E*x)+C(C(N*g)+C(m*i)));z[a+4>>2]=M;i=C(C(E*H)+C(C(N*h)+C(j*i)));z[a>>2]=i;z[a+68>>2]=T+C(C(p*n)+C(C(d*G)+C(l*F)));z[a- -64>>2]=J+C(C(x*n)+C(C(g*G)+C(m*F)));z[a+60>>2]=y+C(C(H*n)+C(C(h*G)+C(j*F)));z[a+56>>2]=J+C(C(p*q)+C(C(d*M)+C(l*I)));z[a+52>>2]=S+C(C(x*q)+C(C(g*M)+C(m*I)));z[a+48>>2]=K+C(C(H*q)+C(C(h*M)+C(j*I)));z[a+44>>2]=y+C(C(p*A)+C(C(d*i)+C(l*t)));z[a+40>>2]=K+C(C(x*A)+C(C(g*i)+C(m*t)));z[a+36>>2]=P+C(C(H*A)+C(C(h*i)+C(j*t)));xa=o+160|0}function cv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=0,ma=C(0),na=0,oa=0;h=xa-8544|0;xa=h;S=v[b+32>>2];f=a;U=z[f+8>>2];p=v[b+8>>2];a=v[b+12>>2];R=z[b+4>>2];v[h+284>>2]=0;v[h+276>>2]=p;v[h+280>>2]=a;z[h+272>>2]=R;Y=b+16|0;N=v[Y>>2];p=v[Y+4>>2];a=v[b+28>>2];v[h+264>>2]=v[b+24>>2];v[h+268>>2]=a;v[h+256>>2]=N;v[h+260>>2]=p;n=z[c>>2];M=z[d+4>>2];G=z[d+12>>2];m=z[c+8>>2];j=z[c+12>>2];O=z[d+8>>2];F=z[d>>2];k=z[c+4>>2];T=C(C(n*M)+C(C(C(G*m)-C(j*O))-C(F*k)));Z=C(C(m*F)+C(C(C(G*k)-C(j*M))-C(O*n)));A=C(Z+Z);i=C(T*A);l=C(C(O*m)+C(C(M*k)+C(C(G*j)+C(F*n))));n=C(C(k*O)+C(C(C(G*n)-C(j*F))-C(M*m)));y=C(n+n);k=C(l*y);s=C(i-k);m=C(T*y);j=C(l*A);P=C(m+j);q=C(k+i);i=C(y*Z);k=l;l=C(T+T);k=C(k*l);o=C(i-k);r=C(m-j);u=C(i+k);k=C(z[c+16>>2]-z[d+16>>2]);k=C(k+k);i=C(z[c+20>>2]-z[d+20>>2]);V=C(i+i);i=C(z[c+24>>2]-z[d+24>>2]);m=C(i+i);j=C(C(C(C(-F)*k)-C(V*M))-C(O*m));i=C(C(G*G)+C(-.5));W=C(C(C(m*i)+C(G*C(C(M*k)-C(F*V))))-C(O*j));X=C(C(C(V*i)+C(G*C(C(F*m)-C(O*k))))-C(M*j));F=C(C(C(k*i)+C(G*C(C(O*V)-C(M*m))))-C(F*j));i=C(C(1)-C(n*y));j=C(Z*A);n=C(i-j);_=i;i=C(T*l);m=C(_-i);l=C(C(C(1)-j)-i);a=S+16|0;p=0;a:{if(R!=C(1)){break a}p=0;if(z[b+8>>2]!=C(1)){break a}p=z[b+12>>2]==C(1)}t[h+384|0]=0;v[h+376>>2]=0;v[h+380>>2]=0;v[h+368>>2]=0;v[h+372>>2]=0;v[h+360>>2]=0;v[h+364>>2]=0;v[h+352>>2]=0;v[h+356>>2]=0;v[h+496>>2]=a;v[h+504>>2]=v[S+56>>2]+B(w[S+55|0],20);t[h+508|0]=w[S+54|0];j=C(R*z[S+68>>2]);i=C(z[S+72>>2]*z[h+276>>2]);j=i>=j?j:i;i=C(z[S+76>>2]*z[h+280>>2]);i=i>=j?j:i;z[h+376>>2]=i*C(.02500000037252903);z[h+368>>2]=i*C(.10000000149011612);z[h+372>>2]=i*C(.05000000074505806);a=h+352|0;GV(h+272|0,h+256|0,h+400|0,h+448|0,a,p);v[h+500>>2]=v[S+60>>2];v[h+236>>2]=0;v[h+240>>2]=0;v[h+220>>2]=0;z[h+168>>2]=W;j=C(U*C(0));i=C(C(n*j)+C(C(r*U)+C(j*q)));z[h+232>>2]=W-i;z[h+164>>2]=X;ea=C(C(s*j)+C(C(u*U)+C(j*m)));z[h+228>>2]=X-ea;z[h+216>>2]=W+i;z[h+212>>2]=X+ea;v[h+184>>2]=0;v[h+188>>2]=4;v[h+172>>2]=0;t[h+192|0]=1;v[h+176>>2]=0;v[h+180>>2]=0;z[h+160>>2]=F;i=C(C(P*j)+C(C(l*U)+C(j*o)));z[h+224>>2]=F-i;z[h+208>>2]=F+i;v[h+320>>2]=141148;v[h+324>>2]=h+160;v[h+304>>2]=141216;v[h+308>>2]=a;v[h+156>>2]=0;z[h+152>>2]=W-z[h+360>>2];z[h+148>>2]=X-z[h+356>>2];z[h+144>>2]=F-z[h+352>>2];v[h+128>>2]=2139095039;if((HV(h+320|0,h+304|0,h+144|0,h+128|0,h+16|0,h+96|0,h+336|0,h+288|0)|0)!=2){q=z[d+8>>2];k=z[h+344>>2];m=C(k+k);o=z[d>>2];k=z[h+336>>2];l=C(k+k);k=z[h+340>>2];j=C(k+k);r=z[d+4>>2];i=C(C(q*m)+C(C(o*l)+C(j*r)));u=z[d+12>>2];n=C(C(u*u)+C(-.5));V=C(C(q*i)+C(C(m*n)+C(u*C(C(o*j)-C(l*r)))));k=C(C(r*i)+C(C(j*n)+C(u*C(C(q*l)-C(m*o)))));ea=C(C(o*i)+C(C(l*n)+C(u*C(C(r*m)-C(j*q)))));i=z[h+104>>2];m=C(i+i);i=z[h+96>>2];l=C(i+i);i=z[h+100>>2];j=C(i+i);i=C(C(q*m)+C(C(o*l)+C(j*r)));ia=C(z[d+24>>2]+C(C(q*i)+C(C(m*n)+C(u*C(C(o*j)-C(l*r))))));ja=C(z[d+20>>2]+C(C(r*i)+C(C(j*n)+C(u*C(C(q*l)-C(m*o))))));ca=z[h+288>>2];ka=C(z[d+16>>2]+C(C(o*i)+C(C(l*n)+C(u*C(C(r*m)-C(j*q))))))}a=0;b:{if(C(z[f+4>>2]+z[e>>2])<=ca){break b}s=z[c+16>>2];P=z[c+20>>2];m=z[c+24>>2];q=z[c>>2];o=C(q+q);l=z[c+8>>2];i=z[c+4>>2];r=z[c+12>>2];u=C(r+r);n=z[f+8>>2];j=C(C(C(o*l)-C(i*u))*n);Q=C(m-j);z[h+116>>2]=Q;i=C(n*C(C(l*u)+C(o*i)));y=C(P-i);z[h+112>>2]=y;H=C(j+m);z[h+104>>2]=H;I=C(P+i);z[h+100>>2]=I;i=C(n*C(C(q*o)+C(C(r*u)+C(-1))));A=C(s-i);z[h+108>>2]=A;J=C(s+i);z[h+96>>2]=J;c=2;c:{if(A!=J){a=0;break c}a=0;if(y!=I){break c}a=H==Q;c=a?1:2}S=b+4|0;v[h+224>>2]=0;v[h+228>>2]=1065353216;v[h+216>>2]=0;v[h+220>>2]=0;v[h+208>>2]=0;v[h+212>>2]=1065353216;v[h+200>>2]=0;v[h+204>>2]=0;v[h+192>>2]=1065353216;v[h+196>>2]=1065353216;v[h+176>>2]=1065353216;v[h+180>>2]=0;t[h+232|0]=0;v[h+184>>2]=0;v[h+188>>2]=0;v[h+168>>2]=0;v[h+172>>2]=0;v[h+160>>2]=1065353216;v[h+164>>2]=0;if(!(!(z[b+4>>2]!=C(1)|z[b+8>>2]!=C(1))&z[b+12>>2]==C(1))){JX(h+160|0,S,Y)}v_(h+16|0,v[b+40>>2],h+160|0);d:{e:{if(ca>C(0)){fa=C(-V);z[h+8>>2]=fa;ga=C(-k);z[h+4>>2]=ga;ha=C(-ea);z[h>>2]=ha;kZ(g,d,h+16|0,S,c,h+96|0,z[f+4>>2],h,z[e>>2]);b=v[g+4096>>2];if((b|0)==2){break e}if(!(a&1)){o=z[e>>2];$=z[f+4>>2];aa=z[d+24>>2];ba=z[d+20>>2];G=z[d+16>>2];j=z[d>>2];P=C(j+j);s=z[d+8>>2];r=C(P*s);l=z[d+4>>2];i=C(l+l);q=z[d+12>>2];u=C(i*q);ma=C(r+u);n=C(C(1)-C(j*P));m=C(l*i);M=C(n-m);j=C(i*s);i=C(P*q);O=C(j-i);z[h+344>>2]=C(M*fa)+C(C(ma*ha)+C(O*ga));U=C(j+i);l=C(P*l);i=C(s+s);j=C(q*i);T=C(l-j);i=C(s*i);W=C(n-i);z[h+340>>2]=C(U*fa)+C(C(T*ha)+C(W*ga));X=C(r-u);F=C(C(C(1)-m)-i);R=C(l+j);z[h+336>>2]=C(X*fa)+C(C(F*ha)+C(R*ga));d=Ba[v[h+84>>2]](h+16|0,h+160|0,h+336|0)|0;z[h+296>>2]=H;z[h+288>>2]=J;z[h+292>>2]=I;z[h+276>>2]=y;z[h+272>>2]=A;z[h+280>>2]=Q;L=C(Q-H);E=C(A-J);s=C(y-I);i=C(K(C(C(L*L)+C(C(E*E)+C(s*s)))));if(i>C(0)){l=C(C(.009999999776482582)/i);i=C(L*l);H=C(H-i);z[h+296>>2]=H;j=C(s*l);I=C(I-j);z[h+292>>2]=I;l=C(E*l);J=C(J-l);z[h+288>>2]=J;i=C(Q+i);z[h+280>>2]=i;L=C(i-H);j=C(y+j);z[h+276>>2]=j;i=C(A+l);z[h+272>>2]=i;E=C(i-J);s=C(j-I)}z[h+260>>2]=s;z[h+256>>2]=E;z[h+264>>2]=L;m=C(C(E*ga)+C(ea*s));z[h+360>>2]=-m;j=C(C(L*ha)+C(V*E));z[h+356>>2]=-j;l=C(C(s*fa)+C(k*L));i=C(-l);z[h+352>>2]=i;z[h+364>>2]=-C(C(C(i*J)-C(I*j))-C(m*H));j=C(D(j));i=C(D(l));m=C(D(m));f:{g:{if(!(!(j>i)|!(j>m))){b=0;c=2;break g}a=2;c=0;b=1;if(!(i>2]+B(d,20)|0;d=w[N+18|0];if(d){p=a<<2;c=h+256|0;b=e<<2;s=C(C(1)/C(C(z[p+c>>2]*z[b+h>>2])-C(z[h+p>>2]*z[b+c>>2])));N=v[h+48>>2]+x[N+16>>1]|0;p=v[h+44>>2];P=C($+o);c=d-1|0;b=0;while(1){c=p+B(w[c+N|0],12)|0;l=z[c>>2];q=z[h+160>>2];j=z[c+4>>2];o=z[h+172>>2];i=z[c+8>>2];r=z[h+184>>2];Z=C(C(C(l*q)+C(j*o))+C(i*r));u=z[h+164>>2];n=z[h+176>>2];m=z[h+188>>2];y=C(C(C(l*u)+C(j*n))+C(i*m));E=l;l=z[h+168>>2];Q=j;j=z[h+180>>2];_=i;i=z[h+192>>2];A=C(C(C(E*l)+C(Q*j))+C(_*i));z[h+152>>2]=aa+C(C(C(X*Z)+C(U*y))+C(M*A));z[h+148>>2]=ba+C(C(C(R*Z)+C(W*y))+C(O*A));z[h+144>>2]=G+C(C(C(F*Z)+C(T*y))+C(ma*A));c=b;b=p+B(w[N+b|0],12)|0;y=z[b>>2];A=z[b+4>>2];_=i;i=z[b+8>>2];l=C(C(C(l*y)+C(j*A))+C(_*i));j=C(C(C(q*y)+C(o*A))+C(r*i));i=C(C(C(u*y)+C(n*A))+C(m*i));z[h+136>>2]=aa+C(C(M*l)+C(C(X*j)+C(U*i)));z[h+132>>2]=ba+C(C(O*l)+C(C(R*j)+C(W*i)));z[h+128>>2]=G+C(C(ma*l)+C(C(F*j)+C(T*i)));z[h+312>>2]=V;z[h+308>>2]=k;z[h+304>>2]=ea;d=d-1|0;h:{if(!lZ(h+288|0,h+272|0,h+256|0,h+352|0,e,a,s,h+304|0,h+144|0,h+128|0,h+316|0,h+320|0,C(0))){break h}m=z[h+316>>2];if(!(m>2];if(b>>>0>63){break h}l=z[h+324>>2];j=z[h+328>>2];i=z[h+320>>2];v[g+4096>>2]=b+1;b=(b<<6)+g|0;z[b+16>>2]=i+C(ea*m);z[b+8>>2]=fa;z[b+4>>2]=ga;z[b>>2]=ha;v[b+52>>2]=-1;z[b+12>>2]=m-$;z[b+24>>2]=j+C(V*m);z[b+20>>2]=l+C(k*m)}b=c+1|0;if(d){continue}break}}b=v[g+4096>>2]}if(b){break e}i=z[f+4>>2];v[g+4096>>2]=1;z[g>>2]=z[h>>2];k=z[h+4>>2];z[g+24>>2]=ia;z[g+20>>2]=ja;z[g+16>>2]=ka;z[g+8>>2]=fa;z[g+4>>2]=k;v[g+52>>2]=-1;z[g+12>>2]=ca-i;a=1;break b}P=z[f+4>>2];Y=v[h+32>>2];N=v[h+40>>2];q=z[d+4>>2];r=C(q+q);l=z[d+8>>2];i=C(r*l);j=z[d>>2];o=C(j+j);u=z[d+12>>2];k=C(o*u);z[h+380>>2]=i-k;z[h+372>>2]=i+k;k=C(C(1)-C(j*o));n=C(q*r);z[h+384>>2]=k-n;i=k;k=C(l+l);m=C(l*k);z[h+368>>2]=i-m;l=C(o*l);j=C(r*u);z[h+376>>2]=l+j;i=C(o*q);k=C(k*u);z[h+364>>2]=i-k;z[h+360>>2]=l-j;z[h+356>>2]=i+k;z[h+352>>2]=C(C(1)-n)-m;z[h+388>>2]=z[d+16>>2];z[h+392>>2]=z[d+20>>2];z[h+396>>2]=z[d+24>>2];i:{if(!Y){k=C(34028234663852886e22);ca=C(0);break i}b=0;k=C(34028234663852886e22);ca=C(0);while(1){p=N+B(b,20)|0;n=z[p>>2];m=z[p+4>>2];i=z[p+8>>2];l=C(C(C(n*z[h+360>>2])+C(m*z[h+372>>2]))+C(i*z[h+384>>2]));z[h+344>>2]=l;j=C(C(C(n*z[h+352>>2])+C(m*z[h+364>>2]))+C(i*z[h+376>>2]));z[h+336>>2]=j;i=C(C(C(n*z[h+356>>2])+C(m*z[h+368>>2]))+C(i*z[h+380>>2]));z[h+340>>2]=i;Ba[v[h+80>>2]](h+16|0,h+336|0,h+352|0,h+160|0,h+288|0,h+272|0);n=C(C(H*l)+C(C(J*j)+C(I*i)));i=C(C(Q*l)+C(C(A*j)+C(y*i)));p=n>i;m=C(P+(p?n:i));j=z[h+288>>2];if(m>2];i=C((p?i:n)-P);if(lj?j:i;if(i>2];ca=z[h+340>>2];L=z[h+336>>2];k=i}b=b+1|0;if((Y|0)!=(b|0)){continue}break}}j:{if(a&1){break j}ia=C(0);ja=C(0);ka=C(0);m=C(Q-H);l=C(A-J);j=C(y-I);i=C(C(m*m)+C(C(l*l)+C(j*j)));if(i>C(0)){i=C(C(1)/C(K(i)));ka=C(m*i);ia=C(l*i);ja=C(j*i)}if(!Y){break j}r=C(-ja);u=C(-ia);n=C(-ka);b=0;while(1){p=N+B(b,20)|0;o=z[p>>2];m=z[p+4>>2];l=z[p+8>>2];j=C(C(C(o*z[h+356>>2])+C(m*z[h+368>>2]))+C(l*z[h+380>>2]));i=C(C(C(o*z[h+352>>2])+C(m*z[h+364>>2]))+C(l*z[h+376>>2]));q=C(C(ia*j)+C(i*r));_=C(ka*i);i=C(C(C(o*z[h+360>>2])+C(m*z[h+372>>2]))+C(l*z[h+384>>2]));m=C(_+C(i*u));j=C(C(ja*i)+C(j*n));k:{if(!(C(D(q))>C(9.999999974752427e-7)?1:C(D(j))>C(9.999999974752427e-7)|C(D(m))>C(9.999999974752427e-7))){break k}s=C(0);l=C(0);V=C(0);i=C(C(q*q)+C(C(j*j)+C(m*m)));if(i>C(0)){i=C(C(1)/C(K(i)));V=C(q*i);s=C(j*i);l=C(m*i)}z[h+344>>2]=V;z[h+336>>2]=s;z[h+340>>2]=l;Ba[v[h+80>>2]](h+16|0,h+336|0,h+352|0,h+160|0,h+288|0,h+272|0);o=C(C(H*V)+C(C(J*s)+C(I*l)));i=C(C(Q*V)+C(C(A*s)+C(y*l)));p=o>i;m=C(P+(p?o:i));j=z[h+288>>2];if(m>2];i=C((p?i:o)-P);if(lj?j:i;if(!(i>2];ca=z[h+340>>2];L=z[h+336>>2];k=i}b=b+1|0;if((Y|0)!=(b|0)){continue}break}}r=z[d+8>>2];k=z[h+24>>2];u=C(k+k);n=z[d>>2];k=z[h+16>>2];m=C(k+k);k=z[h+20>>2];l=C(k+k);j=z[d+4>>2];i=C(C(r*u)+C(C(n*m)+C(l*j)));o=z[d+12>>2];k=C(C(o*o)+C(-.5));b=C(C(E*C(C(C(H+Q)*C(.5))-C(z[d+24>>2]+C(C(r*i)+C(C(u*k)+C(o*C(C(n*l)-C(m*j))))))))+C(C(L*C(C(C(J+A)*C(.5))-C(z[d+16>>2]+C(C(n*i)+C(C(m*k)+C(o*C(C(j*u)-C(l*r))))))))+C(ca*C(C(C(I+y)*C(.5))-C(z[d+20>>2]+C(C(j*i)+C(C(l*k)+C(C(C(r*m)-C(u*n))*o))))))))>2]=O;U=b?C(-ca):ca;z[h+308>>2]=U;T=b?C(-L):L;z[h+304>>2]=T;kZ(g,d,h+16|0,S,c,h+96|0,z[f+4>>2],h+304|0,z[e>>2]);if((v[g+4096>>2]==2|a)&1){break e}l=z[e>>2];Z=z[f+4>>2];oa=h+352|0;c=v[h+40>>2];N=v[h+48>>2];e=0;la=v[h+32>>2];l:{if(la){while(1){f=w[c+18|0];if(f){p=x[c+16>>1]+N|0;a=w[(p+f|0)-1|0];na=0;while(1){b=a;a=w[p+na|0];S=a>>>0>b>>>0?a:b;Y=a>>>0>>0?a:b;b=0;m:{if(e){while(1){da=oa+(b<<4)|0;if(!(w[da|0]!=(Y|0)|w[da+1|0]!=(S|0))){z[da+4>>2]=z[c>>2]+z[da+4>>2];z[da+8>>2]=z[c+4>>2]+z[da+8>>2];z[da+12>>2]=z[c+8>>2]+z[da+12>>2];break m}b=b+1|0;if((b|0)!=(e|0)){continue}break}}b=512;if((e|0)==512){break l}b=oa+(e<<4)|0;t[b+1|0]=S;t[b|0]=Y;z[b+4>>2]=z[c>>2];z[b+8>>2]=z[c+4>>2];z[b+12>>2]=z[c+8>>2];e=e+1|0}na=na+1|0;f=f-1|0;if(f){continue}break}}c=c+20|0;la=la-1|0;if(la){continue}break}}b=e}e=b;z[h+296>>2]=H;z[h+288>>2]=J;z[h+292>>2]=I;z[h+276>>2]=y;z[h+272>>2]=A;z[h+280>>2]=Q;L=C(Q-H);E=C(A-J);s=C(y-I);k=C(K(C(C(L*L)+C(C(E*E)+C(s*s)))));if(k>C(0)){j=C(C(.009999999776482582)/k);k=C(L*j);H=C(H-k);z[h+296>>2]=H;i=C(s*j);I=C(I-i);z[h+292>>2]=I;j=C(E*j);J=C(J-j);z[h+288>>2]=J;k=C(Q+k);z[h+280>>2]=k;L=C(k-H);i=C(y+i);z[h+276>>2]=i;k=C(A+j);z[h+272>>2]=k;E=C(k-J);s=C(i-I)}z[h+256>>2]=E;z[h+264>>2]=L;z[h+260>>2]=s;i=C(C(L*T)-C(O*E));z[h+340>>2]=i;m=C(C(s*O)-C(U*L));z[h+336>>2]=m;k=C(C(E*U)-C(T*s));z[h+344>>2]=k;z[h+348>>2]=-C(C(k*H)+C(C(m*J)+C(I*i)));j=C(D(k));i=C(D(i));k=C(D(m));n:{o:{if(!(!(i>k)|!(i>j))){b=0;c=2;break o}a=2;c=0;b=1;if(!(j>k)){break n}}a=b;b=c}if(!e){break e}N=b<<2;p=h+256|0;f=a<<2;c=h+304|0;s=C(C(1)/C(C(z[N+p>>2]*z[f+c>>2])-C(z[c+N>>2]*z[f+p>>2])));N=v[h+44>>2];P=C(C(-Z)-l);c=0;while(1){p=(h+352|0)+(c<<4)|0;f=w[p+1|0];y=z[d+16>>2];A=z[d+20>>2];$=z[d+8>>2];p=N+B(w[p|0],12)|0;l=z[p>>2];q=z[h+168>>2];j=z[p+4>>2];o=z[h+180>>2];i=z[p+8>>2];r=z[h+192>>2];k=C(C(C(l*q)+C(j*o))+C(i*r));W=C(k+k);aa=z[d>>2];u=z[h+160>>2];n=z[h+172>>2];m=z[h+184>>2];k=C(C(C(l*u)+C(j*n))+C(i*m));X=C(k+k);Q=l;l=z[h+164>>2];_=j;j=z[h+176>>2];k=i;i=z[h+188>>2];k=C(C(C(Q*l)+C(_*j))+C(k*i));F=C(k+k);ba=z[d+4>>2];R=C(C($*W)+C(C(aa*X)+C(F*ba)));G=z[d+12>>2];M=C(C(G*G)+C(-.5));k=z[d+24>>2];z[h+152>>2]=C(C($*R)+C(C(W*M)+C(G*C(C(aa*F)-C(X*ba)))))+k;z[h+148>>2]=A+C(C(ba*R)+C(C(F*M)+C(G*C(C($*X)-C(W*aa)))));z[h+144>>2]=y+C(C(aa*R)+C(C(X*M)+C(G*C(C(ba*W)-C(F*$)))));E=k;Q=q;f=N+B(f,12)|0;q=z[f>>2];_=o;o=z[f+4>>2];k=r;r=z[f+8>>2];k=C(C(C(Q*q)+C(_*o))+C(k*r));R=C(k+k);k=C(C(C(u*q)+C(n*o))+C(m*r));m=C(k+k);k=C(C(C(l*q)+C(j*o))+C(i*r));i=C(k+k);k=C(C($*R)+C(C(aa*m)+C(ba*i)));z[h+136>>2]=E+C(C($*k)+C(C(R*M)+C(G*C(C(aa*i)-C(m*ba)))));z[h+132>>2]=A+C(C(ba*k)+C(C(i*M)+C(G*C(C($*m)-C(R*aa)))));z[h+128>>2]=y+C(C(aa*k)+C(C(m*M)+C(G*C(C(ba*R)-C(i*$)))));p:{if(!lZ(h+288|0,h+272|0,h+256|0,h+336|0,b,a,s,h+304|0,h+144|0,h+128|0,h,h+320|0,P)){break p}f=v[g+4096>>2];if(f>>>0>63){break p}j=z[h+324>>2];i=z[h+328>>2];k=z[h+320>>2];l=z[h>>2];v[g+4096>>2]=f+1;f=(f<<6)+g|0;z[f+16>>2]=k-C(T*l);z[f+8>>2]=O;z[f+4>>2]=U;z[f>>2]=T;v[f+52>>2]=-1;z[f+12>>2]=-C(Z+l);z[f+24>>2]=i-C(O*l);z[f+20>>2]=j-C(U*l)}c=c+1|0;if((e|0)!=(c|0)){continue}break}}a=1;break b}a=0}xa=h+8544|0;return a|0}function sM(a,b,c){var d=0,e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=0,u=0,y=0,A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=0,Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=0,ob=C(0),pb=0,qb=0,rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=0,Gb=0,Hb=0,Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=0,qc=C(0),rc=C(0),sc=C(0),tc=C(0),uc=C(0),vc=C(0),wc=C(0),xc=C(0),yc=C(0),zc=C(0),Ac=C(0),Bc=C(0),Cc=0,Dc=0,Ec=C(0),Fc=C(0),Gc=C(0),Hc=C(0),Ic=C(0),Jc=C(0),Kc=C(0),Lc=C(0),Mc=C(0),Nc=C(0),Oc=C(0),Pc=0,Qc=C(0),Rc=C(0),Sc=C(0),Tc=C(0),Uc=0,Vc=C(0),Wc=C(0),Xc=C(0),Yc=C(0),Zc=C(0),_c=C(0),$c=C(0),ad=C(0),bd=C(0);o=v[a+100>>2];Tb=z[o+32>>2];p=v[a+96>>2];Ub=z[p+40>>2];Vb=z[p+36>>2];q=v[a+68>>2];Wb=z[q+32>>2];r=v[a+64>>2];Xb=z[r+40>>2];Yb=z[r+36>>2];s=v[a+36>>2];Zb=z[s+32>>2];u=v[a+32>>2];_b=z[u+40>>2];$b=z[u+36>>2];y=v[a+4>>2];ac=z[y+40>>2];bc=z[y+36>>2];A=v[a>>2];cc=z[A+40>>2];dc=z[A+36>>2];Ja=z[o+16>>2];Ka=z[p+24>>2];qa=z[p+20>>2];La=z[o+8>>2];ra=z[o+4>>2];Ma=z[o>>2];Na=z[q+16>>2];Oa=z[r+24>>2];sa=z[r+20>>2];Pa=z[q+8>>2];ta=z[q+4>>2];Qa=z[q>>2];Ra=z[s+16>>2];Sa=z[u+24>>2];ua=z[u+20>>2];Ta=z[s+8>>2];va=z[s+4>>2];Ua=z[s>>2];Va=z[y+24>>2];wa=z[y+20>>2];Wa=z[A+24>>2];ya=z[A+20>>2];ec=z[o+40>>2];fc=z[o+36>>2];gc=z[q+40>>2];hc=z[q+36>>2];ic=z[s+40>>2];jc=z[s+36>>2];Xa=z[o+24>>2];za=z[o+20>>2];Ya=z[q+24>>2];Aa=z[q+20>>2];Za=z[s+24>>2];Ba=z[s+20>>2];G=z[s+48>>2];R=z[q+48>>2];H=z[o+48>>2];I=z[u+52>>2];S=z[s+52>>2];J=z[r+52>>2];K=z[q+52>>2];T=z[p+52>>2];L=z[o+52>>2];U=z[u+56>>2];V=z[s+56>>2];h=z[r+56>>2];i=z[q+56>>2];j=z[p+56>>2];k=z[o+56>>2];l=z[y+52>>2];fa=z[A+52>>2];ga=z[y+56>>2];ha=z[A+56>>2];kc=z[p+32>>2];lc=z[r+32>>2];mc=z[u+32>>2];nc=z[y+32>>2];oc=z[A+32>>2];_a=z[p+16>>2];$a=z[p+8>>2];Ca=z[p+4>>2];ab=z[p>>2];bb=z[r+16>>2];cb=z[r+8>>2];Da=z[r+4>>2];db=z[r>>2];eb=z[u+16>>2];fb=z[u+8>>2];Ea=z[u+4>>2];gb=z[u>>2];hb=z[y+16>>2];ib=z[A+16>>2];jb=z[y+8>>2];Fa=z[y+4>>2];kb=z[y>>2];lb=z[A+8>>2];Ga=z[A+4>>2];mb=z[A>>2];ia=z[u+48>>2];Z=z[r+48>>2];_=z[p+48>>2];d=x[a+22>>1];$=z[y+48>>2];aa=z[A+48>>2];e=v[a+24>>2];pc=xa-16|0;f=pc;v[f+8>>2]=2139095039;v[f+12>>2]=2139095039;v[f>>2]=2139095039;v[f+4>>2]=2139095039;if(d){qc=C(ha-ga);rc=C(fa-l);sc=C(j-k);tc=C(h-i);uc=C(U-V);vc=C(T-L);wc=C(J-K);xc=C(I-S);Lb=z[e+76>>2];Mb=z[e+92>>2];Mc=C(Lb+Mb);Nb=z[e+72>>2];Ob=z[e+88>>2];Nc=C(Nb+Ob);Pb=z[e+68>>2];Qb=z[e+84>>2];Oc=C(Pb+Qb);yc=C(aa-$);Pc=(d<<4)+e|0;zc=C(_-H);Ac=C(Z-R);Bc=C(ia-G);Rb=z[e+64>>2];Sb=z[e+80>>2];Qc=C(Rb+Sb);Fb=e+400|0;while(1){pb=e+240|0;W=w[e+1|0];d=W<<4;qb=pb+d|0;f=e;nb=t[e+3|0]&1;e=qb+B(W,160)|0;Cc=(d&0-nb)+e|0;Gb=w[f+2|0];Dc=Cc+(Gb<<4)|0;Hb=B(Gb,208);G=z[f+144>>2];R=z[f+128>>2];H=z[f+160>>2];I=z[f+156>>2];S=z[f+140>>2];J=z[f+172>>2];K=z[f+152>>2];T=z[f+136>>2];L=z[f+168>>2];U=z[f+148>>2];V=z[f+132>>2];h=z[f+164>>2];Ec=z[f+124>>2];Fc=z[f+120>>2];Gc=z[f+116>>2];Hc=z[f+108>>2];Ic=z[f+104>>2];Jc=z[f+100>>2];Kc=z[f+112>>2];Lc=z[f+96>>2];a:{if(!W){i=C(0);j=C(0);k=C(0);l=C(0);fa=C(0);ga=C(0);ha=C(0);ia=C(0);break a}ob=C(C(C(yc*R)+C(rc*G))+C(qc*H));Rc=C(C(C(zc*S)+C(vc*I))+C(sc*J));Sc=C(C(C(Ac*T)+C(wc*K))+C(tc*L));Tc=C(C(C(Bc*V)+C(xc*U))+C(uc*h));Uc=nb?e:pc;Z=C(C(C(C(mb*R)+C(Ga*G))+C(lb*H))-C(C(C(kb*R)+C(Fa*G))+C(jb*H)));_=C(C(C(C(gb*V)+C(Ea*U))+C(fb*h))-C(C(C(Ua*V)+C(va*U))+C(Ta*h)));$=C(C(C(C(db*T)+C(Da*K))+C(cb*L))-C(C(C(Qa*T)+C(ta*K))+C(Pa*L)));aa=C(C(C(C(ab*S)+C(Ca*I))+C($a*J))-C(C(C(Ma*S)+C(ra*I))+C(La*J)));Ab=C(-z[f+188>>2]);Bb=C(-z[f+184>>2]);Ib=C(-z[f+180>>2]);Jb=C(-z[f+176>>2]);ia=C(0);ba=0;ha=C(0);ga=C(0);fa=C(0);l=C(0);k=C(0);j=C(0);i=C(0);while(1){Ha=((nb?ba:0)<<4)+Uc|0;P=z[Ha>>2];ca=z[Ha+4>>2];Ia=z[Ha+8>>2];d=pb+(ba<<4)|0;D=z[d>>2];e=qb+B(ba,160)|0;Vc=z[e+112>>2];Wc=z[e+144>>2];Xc=z[e+96>>2];g=z[e+128>>2];M=z[e+80>>2];ja=z[e- -64>>2];ka=z[e+48>>2];X=z[e+32>>2];la=z[e>>2];ma=z[e+16>>2];E=z[d+4>>2];Yc=z[e+116>>2];Zc=z[e+148>>2];_c=z[e+100>>2];m=z[e+132>>2];na=z[e+36>>2];N=z[e+20>>2];oa=z[e+4>>2];Q=z[e+84>>2];rb=z[e+52>>2];sb=z[e+68>>2];O=z[d+8>>2];$c=z[e+120>>2];ad=z[e+152>>2];bd=z[e+104>>2];n=z[e+136>>2];tb=z[e+40>>2];ub=z[e+24>>2];da=z[e+8>>2];pa=z[e+88>>2];vb=z[e+56>>2];wb=z[e+72>>2];Cb=z[e+12>>2];Db=z[e+28>>2];Eb=z[e+44>>2];xb=z[e+60>>2];ea=z[e+76>>2];yb=z[e+92>>2];Kb=z[e+140>>2];F=C(C(C(Rc+C(C(C(C(kc*Cb)+C(Vb*Db))+C(Ub*Eb))-C(C(C(Tb*xb)+C(fc*ea))+C(ec*yb))))-C(Kb*c))+z[e+108>>2]);F=C(z[e+156>>2]*(b>F?b:F));zb=z[d+12>>2];Y=C(-zb);F=C(z[e+124>>2]*C(C(Kb+(F>Ab?Ab:F))-C(aa+C(C(C(C(_a*Cb)+C(qa*Db))+C(Ka*Eb))-C(C(C(Ja*xb)+C(za*ea))+C(Xa*yb))))));F=C(zb+(F>Y?F:Y));Y=z[Ha+12>>2];F=F>2]=F;Y=n;n=C(bd+C(C(Sc+C(C(C(C(lc*da)+C(Yb*ub))+C(Xb*tb))-C(C(C(Wb*vb)+C(hc*wb))+C(gc*pa))))-C(n*c)));n=C(ad*(b>n?b:n));n=C($c*C(C(Y+(n>Bb?Bb:n))-C($+C(C(C(C(bb*da)+C(sa*ub))+C(Oa*tb))-C(C(C(Na*vb)+C(Aa*wb))+C(Ya*pa))))));Y=C(-O);n=C(O+(n>Y?n:Y));Ia=n>2]=Ia;n=m;m=C(_c+C(C(Tc+C(C(C(C(mc*oa)+C($b*N))+C(_b*na))-C(C(C(Zb*rb)+C(jc*sb))+C(ic*Q))))-C(m*c)));m=C(Zc*(b>m?b:m));m=C(Yc*C(C(n+(m>Ib?Ib:m))-C(_+C(C(C(C(eb*oa)+C(ua*N))+C(Sa*na))-C(C(C(Ra*rb)+C(Ba*sb))+C(Za*Q))))));n=C(-E);m=C(E+(m>n?m:n));ca=m>2]=ca;m=g;g=C(Xc+C(C(ob+C(C(C(C(oc*la)+C(dc*ma))+C(cc*X))-C(C(C(nc*ka)+C(bc*ja))+C(ac*M))))-C(g*c)));g=C(Wc*(b>g?b:g));g=C(Vc*C(C(m+(g>Jb?Jb:g))-C(Z+C(C(C(C(ib*la)+C(ya*ma))+C(Wa*X))-C(C(C(hb*ka)+C(wa*ja))+C(Va*M))))));m=C(-D);g=C(D+(g>m?g:m));g=g>2]=g;ia=C(ia+F);ha=C(ha+Ia);ga=C(ga+ca);fa=C(fa+g);P=C(F-zb);l=C(l+P);O=C(Ia-O);k=C(k+O);E=C(ca-E);j=C(j+E);D=C(g-D);i=C(i+D);aa=C(aa+C(Mc*P));$=C($+C(Nc*O));_=C(_+C(Oc*E));Z=C(Z+C(Qc*D));ca=C(Ec*P);Xa=C(Xa-C(yb*ca));g=pa;pa=C(Fc*O);Ya=C(Ya-C(g*pa));g=Q;Q=C(Gc*E);Za=C(Za-C(g*Q));g=M;M=C(Kc*D);Va=C(Va-C(g*M));P=C(Hc*P);Ka=C(Ka+C(Eb*P));O=C(Ic*O);Oa=C(Oa+C(tb*O));E=C(Jc*E);Sa=C(Sa+C(na*E));D=C(Lc*D);Wa=C(Wa+C(X*D));za=C(za-C(ea*ca));Aa=C(Aa-C(wb*pa));Ba=C(Ba-C(sb*Q));wa=C(wa-C(ja*M));qa=C(qa+C(Db*P));sa=C(sa+C(ub*O));ua=C(ua+C(N*E));ya=C(ya+C(ma*D));Ja=C(Ja-C(xb*ca));Na=C(Na-C(vb*pa));Ra=C(Ra-C(rb*Q));hb=C(hb-C(ka*M));_a=C(_a+C(Cb*P));bb=C(bb+C(da*O));eb=C(eb+C(oa*E));ib=C(ib+C(la*D));Fb=Fb+192|0;ba=ba+1|0;if((W|0)!=(ba|0)){continue}break}}e=Hb+Dc|0;Z=C(Mb*l);La=C(La-C(J*Z));_=C(Ob*k);Pa=C(Pa-C(L*_));$=C(Qb*j);Ta=C(Ta-C(h*$));aa=C(Sb*i);jb=C(jb-C(H*aa));g=J;J=C(Lb*l);$a=C($a+C(g*J));g=L;L=C(Nb*k);cb=C(cb+C(g*L));g=h;h=C(Pb*j);fb=C(fb+C(g*h));g=H;H=C(Rb*i);lb=C(lb+C(g*H));ra=C(ra-C(I*Z));ta=C(ta-C(K*_));va=C(va-C(U*$));Fa=C(Fa-C(G*aa));Ca=C(Ca+C(I*J));Da=C(Da+C(K*L));Ea=C(Ea+C(U*h));Ga=C(Ga+C(G*H));Ma=C(Ma-C(S*Z));Qa=C(Qa-C(T*_));Ua=C(Ua-C(V*$));kb=C(kb-C(R*aa));ab=C(ab+C(S*J));db=C(db+C(T*L));gb=C(gb+C(V*h));mb=C(mb+C(R*H));if(Gb){Ib=C(fa*z[f+32>>2]);Jb=C(ia*z[f+44>>2]);ca=C(ha*z[f+40>>2]);Ia=C(ga*z[f+36>>2]);fa=C(fa*z[f+48>>2]);Z=C(-fa);ia=C(ia*z[f+60>>2]);_=C(-ia);ha=C(ha*z[f+56>>2]);$=C(-ha);ga=C(ga*z[f+52>>2]);aa=C(-ga);ba=0;Ha=0;qb=0;nb=0;pb=0;while(1){W=(ba<<4)+Cc|0;D=z[W>>2];d=B(ba,208)+Dc|0;g=z[d+192>>2];m=z[d+144>>2];l=z[d+176>>2];M=z[d+160>>2];ja=z[d+80>>2];Hb=d- -64|0;ka=z[Hb>>2];X=z[d+48>>2];la=z[d+128>>2];ma=z[d+112>>2];E=z[d+96>>2];G=z[d+32>>2];R=z[d>>2];H=z[d+16>>2];na=z[W+4>>2];n=z[d+196>>2];Cb=z[d+148>>2];k=z[d+180>>2];N=z[d+164>>2];oa=z[d+84>>2];Q=z[d+52>>2];rb=z[d+68>>2];I=z[d+36>>2];S=z[d+20>>2];J=z[d+4>>2];sb=z[d+132>>2];O=z[d+100>>2];tb=z[d+116>>2];ub=z[W+8>>2];Db=z[d+200>>2];Eb=z[d+152>>2];j=z[d+184>>2];da=z[d+168>>2];pa=z[d+88>>2];vb=z[d+56>>2];wb=z[d+72>>2];K=z[d+40>>2];T=z[d+24>>2];L=z[d+8>>2];P=z[d+136>>2];Ab=z[d+104>>2];Bb=z[d+120>>2];xb=z[W+12>>2];U=z[d+12>>2];V=z[d+28>>2];h=z[d+44>>2];i=z[d+60>>2];ea=z[d+76>>2];yb=z[d+92>>2];F=z[d+108>>2];zb=z[d+124>>2];Y=z[d+140>>2];ob=z[d+188>>2];Kb=C(C(C(C(C(C(C(C(zc*U)+C(vc*V))+C(sc*h))+C(C(C(C(kc*i)+C(Vb*ea))+C(Ub*yb))-C(C(C(Tb*F)+C(fc*zb))+C(ec*Y))))-C(ob*c))+z[d+156>>2])*z[d+204>>2])-ob);ob=z[d+172>>2];i=C(C(xb-C(Kb*ob))-C(C(C(C(C(C(ab*U)+C(Ca*V))+C($a*h))+C(C(C(_a*i)+C(qa*ea))+C(Ka*yb)))-C(C(C(C(Ma*U)+C(ra*V))+C(La*h))+C(C(C(Ja*F)+C(za*zb))+C(Xa*Y))))*ob));ea=i<_?_:i;ea=ia>2]=ea;j=C(C(ub-C(da*C(C(Db*C(Eb+C(C(C(C(C(Ac*L)+C(wc*T))+C(tc*K))+C(C(C(C(lc*vb)+C(Yb*wb))+C(Xb*pa))-C(C(C(Wb*Ab)+C(hc*Bb))+C(gc*P))))-C(j*c))))-j)))-C(da*C(C(C(C(C(db*L)+C(Da*T))+C(cb*K))+C(C(C(bb*vb)+C(sa*wb))+C(Oa*pa)))-C(C(C(C(Qa*L)+C(ta*T))+C(Pa*K))+C(C(C(Na*Ab)+C(Aa*Bb))+C(Ya*P))))));da=j<$?$:j;da=ha>2]=da;k=C(C(na-C(N*C(C(n*C(Cb+C(C(C(C(C(Bc*J)+C(xc*S))+C(uc*I))+C(C(C(C(mc*Q)+C($b*rb))+C(_b*oa))-C(C(C(Zb*O)+C(jc*tb))+C(ic*sb))))-C(k*c))))-k)))-C(N*C(C(C(C(C(gb*J)+C(Ea*S))+C(fb*I))+C(C(C(eb*Q)+C(ua*rb))+C(Sa*oa)))-C(C(C(C(Ua*J)+C(va*S))+C(Ta*I))+C(C(C(Ra*O)+C(Ba*tb))+C(Za*sb))))));N=kga?ga:N;z[W+4>>2]=N;l=C(C(D-C(M*C(C(g*C(m+C(C(C(C(C(yc*R)+C(rc*H))+C(qc*G))+C(C(C(C(oc*X)+C(dc*ka))+C(cc*ja))-C(C(C(nc*E)+C(bc*ma))+C(ac*la))))-C(l*c))))-l)))-C(M*C(C(C(C(C(mb*R)+C(Ga*H))+C(lb*G))+C(C(C(ib*X)+C(ya*ka))+C(Wa*ja)))-C(C(C(C(kb*R)+C(Fa*H))+C(jb*G))+C(C(C(hb*E)+C(wa*ma))+C(Va*la))))));M=lfa?fa:M;z[W>>2]=X;pb=0-((pb|0)!=0|Jb<(i>C(0)?i:C(-i)))|0;nb=0-((nb|0)!=0|ca<(j>C(0)?j:C(-j)))|0;qb=0-((qb|0)!=0|Ia<(k>C(0)?k:C(-k)))|0;Ha=0-((Ha|0)!=0|Ib<(l>C(0)?l:C(-l)))|0;i=C(ea-xb);M=C(Ec*i);Xa=C(Xa-C(M*z[d+140>>2]));j=C(da-ub);ja=C(Fc*j);Ya=C(Ya-C(ja*z[d+136>>2]));k=C(N-na);ka=C(Gc*k);Za=C(Za-C(ka*z[d+132>>2]));l=C(X-D);D=C(Kc*l);Va=C(Va-C(D*z[d+128>>2]));X=C(Hc*i);Ka=C(Ka+C(X*z[d+92>>2]));la=C(Ic*j);Oa=C(Oa+C(la*z[d+88>>2]));ma=C(Jc*k);Sa=C(Sa+C(ma*z[d+84>>2]));E=C(Lc*l);Wa=C(Wa+C(E*z[d+80>>2]));na=C(Mb*i);La=C(La-C(h*na));N=C(Ob*j);Pa=C(Pa-C(K*N));oa=C(Qb*k);Ta=C(Ta-C(I*oa));Q=C(Sb*l);jb=C(jb-C(G*Q));g=h;h=C(Lb*i);$a=C($a+C(g*h));g=K;K=C(Nb*j);cb=C(cb+C(g*K));g=I;I=C(Pb*k);fb=C(fb+C(g*I));g=G;G=C(Rb*l);lb=C(lb+C(g*G));za=C(za-C(M*z[d+124>>2]));Aa=C(Aa-C(ja*z[d+120>>2]));Ba=C(Ba-C(ka*z[d+116>>2]));wa=C(wa-C(D*z[d+112>>2]));qa=C(qa+C(X*z[d+76>>2]));sa=C(sa+C(la*z[d+72>>2]));ua=C(ua+C(ma*z[d+68>>2]));ya=C(ya+C(E*z[Hb>>2]));ra=C(ra-C(V*na));ta=C(ta-C(T*N));va=C(va-C(S*oa));Fa=C(Fa-C(H*Q));Ca=C(Ca+C(V*h));Da=C(Da+C(T*K));Ea=C(Ea+C(S*I));Ga=C(Ga+C(H*G));Ja=C(Ja-C(M*z[d+108>>2]));Na=C(Na-C(ja*z[d+104>>2]));Ra=C(Ra-C(ka*z[d+100>>2]));hb=C(hb-C(D*z[d+96>>2]));_a=C(_a+C(z[d+60>>2]*X));bb=C(bb+C(z[d+56>>2]*la));eb=C(eb+C(z[d+52>>2]*ma));ib=C(ib+C(z[d+48>>2]*E));Ma=C(Ma-C(U*na));Qa=C(Qa-C(L*N));Ua=C(Ua-C(J*oa));kb=C(kb-C(R*Q));ab=C(ab+C(U*h));db=C(db+C(L*K));gb=C(gb+C(J*I));mb=C(mb+C(R*G));Fb=Fb+256|0;ba=ba+1|0;if((Gb|0)!=(ba|0)){continue}break}v[f+208>>2]=Ha;v[f+220>>2]=pb;v[f+216>>2]=nb;v[f+212>>2]=qb}if(e>>>0>>0){continue}break}}z[A+28>>2]=ya;z[A+24>>2]=Wa;z[A+20>>2]=ya;z[A+16>>2]=ib;z[A+12>>2]=Ga;z[A+8>>2]=lb;z[A+4>>2]=Ga;z[A>>2]=mb;z[u+28>>2]=ua;z[u+24>>2]=Sa;z[u+20>>2]=ua;z[u+16>>2]=eb;z[u+12>>2]=Ea;z[u+8>>2]=fb;z[u+4>>2]=Ea;z[u>>2]=gb;z[r+28>>2]=sa;z[r+24>>2]=Oa;z[r+20>>2]=sa;z[r+16>>2]=bb;z[r+12>>2]=Da;z[r+8>>2]=cb;z[r+4>>2]=Da;z[r>>2]=db;z[p+28>>2]=qa;z[p+24>>2]=Ka;z[p+20>>2]=qa;z[p+16>>2]=_a;z[p+12>>2]=Ca;z[p+8>>2]=$a;z[p+4>>2]=Ca;z[p>>2]=ab;if(v[a+16>>2]){z[y+28>>2]=wa;z[y+24>>2]=Va;z[y+20>>2]=wa;z[y+16>>2]=hb;z[y+12>>2]=Fa;z[y+8>>2]=jb;z[y+4>>2]=Fa;z[y>>2]=kb}if(v[a+48>>2]){z[s+28>>2]=Ba;z[s+24>>2]=Za;z[s+20>>2]=Ba;z[s+16>>2]=Ra;z[s+12>>2]=va;z[s+8>>2]=Ta;z[s+4>>2]=va;z[s>>2]=Ua}if(v[a+80>>2]){z[q+28>>2]=Aa;z[q+24>>2]=Ya;z[q+20>>2]=Aa;z[q+16>>2]=Na;z[q+12>>2]=ta;z[q+8>>2]=Pa;z[q+4>>2]=ta;z[q>>2]=Qa}if(v[a+112>>2]){z[o+28>>2]=za;z[o+24>>2]=Xa;z[o+20>>2]=za;z[o+16>>2]=Ja;z[o+12>>2]=ra;z[o+8>>2]=La;z[o+4>>2]=ra;z[o>>2]=Ma}}function xv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=0,U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=0;h=xa+-64|0;xa=h;x=z[d+20>>2];S=z[d+24>>2];f=v[f>>2];r=z[d+16>>2];k=z[d+8>>2];o=z[d>>2];s=z[d+4>>2];I=z[d+12>>2];u=z[c+20>>2];p=z[c+24>>2];i=z[c>>2];l=z[c+4>>2];m=z[c+8>>2];j=z[c+12>>2];G=z[c+16>>2];a=0;v[h+60>>2]=0;z[h+56>>2]=p;z[h+52>>2]=u;z[h+48>>2]=G;z[h+44>>2]=j;z[h+40>>2]=m;z[h+36>>2]=l;z[h+32>>2]=i;v[h+28>>2]=0;A=C(i+i);y=C(j+j);E=C(C(m*A)-C(l*y));D=C(C(C(i*A)+C(j*y))+C(-1));A=C(C(A*l)+C(m*y));y=C(C(1)/C(K(C(C(E*E)+C(C(D*D)+C(A*A))))));z[h+24>>2]=y*C(-E);z[h+20>>2]=y*C(-A);z[h+16>>2]=y*C(-D);z[h>>2]=z[e>>2];F=C(C(C(s*m)-C(l*k))+C(C(o*j)-C(I*i)));y=C(F+F);J=C(C(C(k*i)-C(m*o))+C(C(s*j)-C(I*l)));E=C(J+J);M=C(C(1)-C(F*y));N=C(J*E);A=C(M-N);D=C(C(C(o*l)-C(i*s))+C(C(k*j)-C(I*m)));O=C(D+D);P=C(D*O);M=C(M-P);N=C(C(C(1)-N)-P);Q=C(D*E);q=o;o=C(-i);L=C(C(I*j)-C(C(C(q*o)-C(s*l))-C(m*k)));k=C(L*y);I=C(Q-k);s=C(D*y);E=C(L*E);P=C(s+E);Q=C(Q+k);k=C(J*y);q=C(L*O);O=C(k-q);y=C(s-E);E=C(k+q);k=C(r-G);u=C(x-u);p=C(S-p);G=C(C(C(o*k)-C(u*l))-C(m*p));x=C(C(j*j)+C(-.5));o=C(C(C(j*C(C(l*k)-C(i*u)))+C(x*p))-C(m*G));o=C(o+o);s=C(C(C(x*u)+C(j*C(C(i*p)-C(m*k))))-C(l*G));s=C(s+s);j=C(C(C(x*k)+C(j*C(C(m*u)-C(l*p))))-C(i*G));j=C(j+j);i=C(z[e+8>>2]*C(.15000000596046448));m=z[b+4>>2];u=z[b+8>>2];l=m<=u?m:u;k=z[b+12>>2];l=C((l<=k?l:k)*C(.15000000596046448));l=C((i>2];a=a-1|0;c=d+B(a,48)|0;p=z[c+24>>2];r=z[c+40>>2];i=z[c+8>>2];G=z[c>>2];x=z[c+4>>2];q=C(o+C(C(A*i)+C(C(y*G)+C(Q*x))));V=C(j+C(C(P*i)+C(C(N*G)+C(O*x))));W=z[c+16>>2];X=z[c+32>>2];G=C(s+C(C(I*i)+C(C(E*G)+C(M*x))));x=z[c+20>>2];Y=z[c+36>>2];i=C(C(r*C(q-p))+C(C(C(V-W)*X)+C(C(G-x)*Y)));p=C(p-C(q-C(r*i)));q=C(p*p);p=C(W-C(V-C(X*i)));r=C(p*p);p=C(x-C(G-C(Y*i)));a:{if(S>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+44>>2];v[c+40>>2]=v[d+40>>2];v[c+44>>2]=e;e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;break a}z[c+44>>2]=i}if(a){continue}break}a=w[f+64|0]}b:{c:{if((a&255)!=(b|0)){break c}i=C(j-z[f+16>>2]);i=i>C(0)?i:C(-i);p=C(s-z[f+20>>2]);p=p>C(0)?p:C(-p);p=i>=p?i:p;q=i;i=C(o-z[f+24>>2]);i=(i>C(0)?i:C(-i))>=C(0)?q:C(0);if(l<(i<=p?p:i)){break c}if(!(C(C(L*z[f+12>>2])+C(C(D*z[f+8>>2])+C(C(F*z[f>>2])+C(J*z[f+4>>2]))))>2]=0;z[f+24>>2]=o;z[f+20>>2]=s;z[f+16>>2]=j;z[f+12>>2]=L;z[f+8>>2]=D;z[f+4>>2]=J;z[f>>2]=F;t[f+64|0]=0;x=C(N*m);S=C(O*u);F=C(x-S);L=C(x+S);D=C(P*k);l=C(L-D);p=C(Q*u);G=C(M*u);J=C(z[h>>2]-j);i=C(D+L);if(J>i){v[g+12>>2]=0;z[g+8>>2]=k;z[g+4>>2]=u;z[g>>2]=m;i=C(j+i);z[g+44>>2]=i;v[g+36>>2]=0;v[g+40>>2]=0;v[g+28>>2]=0;v[g+32>>2]=1065353216;r=C(i*C(0));z[g+24>>2]=C(o+C(C(A*k)+C(C(y*m)+p)))-r;z[g+20>>2]=C(s+C(C(I*k)+C(C(E*m)+G)))-r;z[g+16>>2]=i-i;a=1}i=C(-k);if(l>2]=0;z[b+8>>2]=i;z[b+4>>2]=u;z[b>>2]=m;l=C(j+l);z[b+44>>2]=l;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;r=C(l*C(0));z[b+24>>2]=C(o+C(C(A*i)+C(C(y*m)+p)))-r;z[b+20>>2]=C(s+C(C(I*i)+C(C(E*m)+G)))-r;z[b+16>>2]=C(j+C(C(P*i)+L))-l;a=a+1|0}l=C(-u);r=C(D+F);if(r>2]=0;z[b+8>>2]=k;z[b+4>>2]=l;z[b>>2]=m;r=C(j+r);z[b+44>>2]=r;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;q=C(r*C(0));z[b+24>>2]=C(o+C(C(A*k)+C(C(y*m)+C(Q*l))))-q;z[b+20>>2]=C(s+C(C(I*k)+C(C(E*m)+C(M*l))))-q;z[b+16>>2]=C(j+C(D+C(x+C(O*l))))-r;a=a+1|0}r=C(F-D);if(r>2]=0;z[b+8>>2]=i;z[b+4>>2]=l;z[b>>2]=m;r=C(j+r);z[b+44>>2]=r;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;q=C(r*C(0));z[b+24>>2]=C(o+C(C(A*i)+C(C(y*m)+C(Q*l))))-q;z[b+20>>2]=C(s+C(C(I*i)+C(C(E*m)+C(M*l))))-q;z[b+16>>2]=C(j+C(C(P*i)+C(x+C(O*l))))-r;a=a+1|0}m=C(-m);x=C(D-F);if(x>2]=0;z[b+8>>2]=k;z[b+4>>2]=u;z[b>>2]=m;x=C(j+x);z[b+44>>2]=x;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;r=C(x*C(0));z[b+24>>2]=C(o+C(C(A*k)+C(C(y*m)+p)))-r;z[b+20>>2]=C(s+C(C(I*k)+C(C(E*m)+G)))-r;z[b+16>>2]=C(j+C(D+C(C(N*m)+S)))-x;a=a+1|0}x=C(-D);F=C(x-F);if(F>2]=0;z[b+8>>2]=i;z[b+4>>2]=u;z[b>>2]=m;u=C(j+F);z[b+44>>2]=u;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;F=C(u*C(0));z[b+24>>2]=C(o+C(C(A*i)+C(C(y*m)+p)))-F;z[b+20>>2]=C(s+C(C(I*i)+C(C(E*m)+G)))-F;z[b+16>>2]=C(j+C(C(P*i)+C(C(N*m)+S)))-u;a=a+1|0}u=C(D-L);if(u>2]=0;z[b+8>>2]=k;z[b+4>>2]=l;z[b>>2]=m;u=C(j+u);z[b+44>>2]=u;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;F=C(u*C(0));z[b+24>>2]=C(o+C(C(A*k)+C(C(y*m)+C(Q*l))))-F;z[b+20>>2]=C(s+C(C(I*k)+C(C(E*m)+C(M*l))))-F;z[b+16>>2]=C(j+C(D+C(C(N*m)+C(O*l))))-u;a=a+1|0}b=0;c=0;k=C(x-L);if(k>2]=0;z[d+8>>2]=i;z[d+4>>2]=l;z[d>>2]=m;k=C(j+k);z[d+44>>2]=k;v[d+36>>2]=0;v[d+40>>2]=0;v[d+28>>2]=0;v[d+32>>2]=1065353216;q=C(o+C(C(A*i)+C(C(y*m)+C(Q*l))));o=C(k*C(0));z[d+24>>2]=q-o;z[d+20>>2]=C(s+C(C(I*i)+C(C(E*m)+C(M*l))))-o;z[d+16>>2]=C(j+C(C(P*i)+C(C(N*m)+C(O*l))))-k;a=a+1|0}d:{if(a>>>0<=4){if(!a){break d}c=v[g+4>>2];b=v[f+76>>2];v[b>>2]=v[g>>2];v[b+4>>2]=c;c=v[g+12>>2];v[b+8>>2]=v[g+8>>2];v[b+12>>2]=c;c=v[g+20>>2];b=v[f+76>>2];v[b+16>>2]=v[g+16>>2];v[b+20>>2]=c;c=v[g+28>>2];v[b+24>>2]=v[g+24>>2];v[b+28>>2]=c;c=v[g+36>>2];b=v[f+76>>2];v[b+32>>2]=v[g+32>>2];v[b+36>>2]=c;c=v[g+44>>2];v[b+40>>2]=v[g+40>>2];v[b+44>>2]=c;if((a|0)==1){break d}c=v[g+52>>2];b=v[f+76>>2];v[b+48>>2]=v[g+48>>2];v[b+52>>2]=c;c=v[g+60>>2];v[b+56>>2]=v[g+56>>2];v[b+60>>2]=c;d=g- -64|0;e=v[d+4>>2];b=v[f+76>>2];c=b- -64|0;v[c>>2]=v[d>>2];v[c+4>>2]=e;c=v[g+76>>2];v[b+72>>2]=v[g+72>>2];v[b+76>>2]=c;c=v[g+84>>2];b=v[f+76>>2];v[b+80>>2]=v[g+80>>2];v[b+84>>2]=c;c=v[g+92>>2];v[b+88>>2]=v[g+88>>2];v[b+92>>2]=c;if((a|0)==2){break d}c=v[g+100>>2];b=v[f+76>>2];v[b+96>>2]=v[g+96>>2];v[b+100>>2]=c;c=v[g+108>>2];v[b+104>>2]=v[g+104>>2];v[b+108>>2]=c;c=v[g+116>>2];b=v[f+76>>2];v[b+112>>2]=v[g+112>>2];v[b+116>>2]=c;c=v[g+124>>2];v[b+120>>2]=v[g+120>>2];v[b+124>>2]=c;c=v[g+132>>2];b=v[f+76>>2];v[b+128>>2]=v[g+128>>2];v[b+132>>2]=c;c=v[g+140>>2];v[b+136>>2]=v[g+136>>2];v[b+140>>2]=c;if((a|0)==3){break d}c=v[g+148>>2];b=v[f+76>>2];v[b+144>>2]=v[g+144>>2];v[b+148>>2]=c;c=v[g+156>>2];v[b+152>>2]=v[g+152>>2];v[b+156>>2]=c;c=v[g+164>>2];b=v[f+76>>2];v[b+160>>2]=v[g+160>>2];v[b+164>>2]=c;c=v[g+172>>2];v[b+168>>2]=v[g+168>>2];v[b+172>>2]=c;c=v[g+180>>2];b=v[f+76>>2];v[b+176>>2]=v[g+176>>2];v[b+180>>2]=c;c=v[g+188>>2];v[b+184>>2]=v[g+184>>2];v[b+188>>2]=c;break d}e=xa-80|0;xa=e;J9(e+16|0,0,a);e:{if(!a){break e}R=a&1;f:{if((a|0)==1){j=C(-34028234663852886e22);break f}H=a&-2;j=C(-34028234663852886e22);while(1){d=B(b,48)+g|0;i=z[d+24>>2];l=C(i*i);i=z[d+16>>2];o=C(i*i);i=z[d+20>>2];i=C(l+C(o+C(i*i)));d=i>j;Z=b|1;n=B(Z,48)+g|0;l=z[n+24>>2];o=C(l*l);l=z[n+16>>2];q=C(l*l);l=z[n+20>>2];l=C(o+C(q+C(l*l)));j=d?i:j;n=l>j;j=n?l:j;T=n?Z:d?b:T;b=b+2|0;c=c+2|0;if((H|0)!=(c|0)){continue}break}}if(!R){break e}c=b;i=j;b=B(b,48)+g|0;j=z[b+24>>2];l=C(j*j);j=z[b+16>>2];o=C(j*j);j=z[b+20>>2];T=i>2];c=v[f+76>>2];v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+44>>2];v[c+40>>2]=v[b+40>>2];v[c+44>>2]=d;d=v[b+36>>2];v[c+32>>2]=v[b+32>>2];v[c+36>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;t[(e+16|0)+T|0]=1;v[e>>2]=T;c=v[f+76>>2];if(a>>>0>=2){i=z[c+24>>2];j=C(z[g+24>>2]-i);o=C(j*j);l=z[c+16>>2];j=C(z[g+16>>2]-l);q=C(j*j);m=z[c+20>>2];j=C(z[g+20>>2]-m);j=C(o+C(q+C(j*j)));b=1;while(1){d=B(b,48)+g|0;k=C(z[d+24>>2]-i);o=C(k*k);k=C(z[d+16>>2]-l);q=C(k*k);k=C(z[d+20>>2]-m);k=C(o+C(q+C(k*k)));d=k>j;j=d?k:j;U=d?b:U;b=b+1|0;if((b|0)!=(a|0)){continue}break}}b=B(U,48)+g|0;d=v[b+4>>2];v[c+48>>2]=v[b>>2];v[c+52>>2]=d;d=v[b+44>>2];v[c+88>>2]=v[b+40>>2];v[c+92>>2]=d;d=v[b+36>>2];v[c+80>>2]=v[b+32>>2];v[c+84>>2]=d;d=v[b+28>>2];v[c+72>>2]=v[b+24>>2];v[c+76>>2]=d;n=v[b+20>>2];d=c- -64|0;v[d>>2]=v[b+16>>2];v[d+4>>2]=n;d=v[b+12>>2];v[c+56>>2]=v[b+8>>2];v[c+60>>2]=d;t[(e+16|0)+U|0]=1;v[e+4>>2]=U;d=v[f+76>>2];m=z[d+16>>2];o=C(z[d- -64>>2]-m);j=z[d+36>>2];i=z[d+32>>2];I=z[d+20>>2];k=C(z[d+68>>2]-I);l=C(C(o*j)-C(i*k));q=l;p=C(l*l);l=z[d+40>>2];y=z[d+24>>2];s=C(z[d+72>>2]-y);k=C(C(k*l)-C(j*s));o=C(C(s*i)-C(l*o));A=C(p+C(C(k*k)+C(o*o)));s=C(C(1)/C(K(A)));b=A>C(0);A=b?C(q*s):l;o=b?C(o*s):j;k=b?C(k*s):i;b=0;R=-1;g:{if(!a){c=-1;break g}j=C(34028234663852886e22);i=C(-34028234663852886e22);c=-1;while(1){if(!w[(e+16|0)+b|0]){n=B(b,48)+g|0;l=C(C(C(z[n+24>>2]-y)*A)+C(C(C(z[n+16>>2]-m)*k)+C(o*C(z[n+20>>2]-I))));n=lC(0)}n=B(R,48)+g|0;H=v[n+4>>2];v[d+96>>2]=v[n>>2];v[d+100>>2]=H;H=v[n+44>>2];v[d+136>>2]=v[n+40>>2];v[d+140>>2]=H;H=v[n+36>>2];v[d+128>>2]=v[n+32>>2];v[d+132>>2]=H;H=v[n+28>>2];v[d+120>>2]=v[n+24>>2];v[d+124>>2]=H;H=v[n+20>>2];v[d+112>>2]=v[n+16>>2];v[d+116>>2]=H;H=v[n+12>>2];v[d+104>>2]=v[n+8>>2];v[d+108>>2]=H;t[(e+16|0)+R|0]=1;v[e+8>>2]=R;d=v[f+76>>2];if(!(!b|!a)){j=C(-34028234663852886e22);b=0;while(1){if(!w[(e+16|0)+b|0]){n=B(b,48)+g|0;i=C(C(C(z[n+24>>2]-z[d+24>>2])*A)+C(C(C(z[n+16>>2]-z[d+16>>2])*k)+C(o*C(z[n+20>>2]-z[d+20>>2]))));n=i>j;j=n?i:j;c=n?b:c}b=b+1|0;if((b|0)!=(a|0)){continue}break}}b=B(c,48)+g|0;n=v[b+4>>2];v[d+144>>2]=v[b>>2];v[d+148>>2]=n;n=v[b+44>>2];v[d+184>>2]=v[b+40>>2];v[d+188>>2]=n;n=v[b+36>>2];v[d+176>>2]=v[b+32>>2];v[d+180>>2]=n;n=v[b+28>>2];v[d+168>>2]=v[b+24>>2];v[d+172>>2]=n;n=v[b+20>>2];v[d+160>>2]=v[b+16>>2];v[d+164>>2]=n;n=v[b+12>>2];v[d+152>>2]=v[b+8>>2];v[d+156>>2]=n;t[(e+16|0)+c|0]=1;v[e+12>>2]=c;b=v[f+76>>2];if(a){c=0;while(1){h:{if(w[(e+16|0)+c|0]){break h}d=B(c,48)+g|0;j=z[d+24>>2];i=C(j-z[b+24>>2]);o=C(i*i);i=z[d+16>>2];l=C(i-z[b+16>>2]);q=C(l*l);l=z[d+20>>2];m=C(l-z[b+20>>2]);m=C(o+C(q+C(m*m)));m=m>2]);o=C(k*k);k=C(i-z[b+64>>2]);q=C(k*k);k=C(l-z[b+68>>2]);k=C(o+C(q+C(k*k)));n=m>k;H=n;m=n?k:m;k=C(j-z[b+120>>2]);o=C(k*k);k=C(i-z[b+112>>2]);q=C(k*k);k=C(l-z[b+116>>2]);k=C(o+C(q+C(k*k)));n=m>k;j=C(j-z[b+168>>2]);o=C(j*j);j=C(i-z[b+160>>2]);i=C(j*j);j=C(l-z[b+164>>2]);n=e|(C(o+C(i+C(j*j)))<(n?k:m)?3:n?2:H)<<2;if(!(z[(B(v[n>>2],48)+g|0)+44>>2]>z[d+44>>2])){break h}v[n>>2]=c}c=c+1|0;if((c|0)!=(a|0)){continue}break}R=v[e+8>>2];U=v[e+4>>2];T=v[e>>2];c=v[e+12>>2]}a=B(T,48)+g|0;d=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=d;d=v[a+36>>2];v[b+32>>2]=v[a+32>>2];v[b+36>>2]=d;d=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=d;d=v[a+44>>2];v[b+40>>2]=v[a+40>>2];v[b+44>>2]=d;d=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=d;d=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=d;a=B(U,48)+g|0;d=v[a+4>>2];b=v[f+76>>2];v[b+48>>2]=v[a>>2];v[b+52>>2]=d;d=v[a+12>>2];v[b+56>>2]=v[a+8>>2];v[b+60>>2]=d;n=v[a+20>>2];d=b- -64|0;v[d>>2]=v[a+16>>2];v[d+4>>2]=n;d=v[a+28>>2];v[b+72>>2]=v[a+24>>2];v[b+76>>2]=d;d=v[a+36>>2];v[b+80>>2]=v[a+32>>2];v[b+84>>2]=d;d=v[a+44>>2];v[b+88>>2]=v[a+40>>2];v[b+92>>2]=d;a=B(R,48)+g|0;d=v[a+44>>2];b=v[f+76>>2];v[b+136>>2]=v[a+40>>2];v[b+140>>2]=d;d=v[a+4>>2];v[b+96>>2]=v[a>>2];v[b+100>>2]=d;d=v[a+12>>2];v[b+104>>2]=v[a+8>>2];v[b+108>>2]=d;d=v[a+20>>2];v[b+112>>2]=v[a+16>>2];v[b+116>>2]=d;d=v[a+28>>2];v[b+120>>2]=v[a+24>>2];v[b+124>>2]=d;d=v[a+36>>2];v[b+128>>2]=v[a+32>>2];v[b+132>>2]=d;a=B(c,48)+g|0;c=v[a+4>>2];b=v[f+76>>2];v[b+144>>2]=v[a>>2];v[b+148>>2]=c;c=v[a+12>>2];v[b+152>>2]=v[a+8>>2];v[b+156>>2]=c;c=v[a+20>>2];v[b+160>>2]=v[a+16>>2];v[b+164>>2]=c;c=v[a+28>>2];v[b+168>>2]=v[a+24>>2];v[b+172>>2]=c;c=v[a+36>>2];v[b+176>>2]=v[a+32>>2];v[b+180>>2]=c;c=v[a+44>>2];v[b+184>>2]=v[a+40>>2];v[b+188>>2]=c;xa=e+80|0;a=4}t[f+64|0]=a}r2(f,g,h+16|0,h+32|0,h);xa=h- -64|0;return w[f+64|0]!=0|0}function lT(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=C(0),q=0,r=0,s=C(0),D=0,E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(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=xa-272|0;xa=o;s=z[f+8>>2];p=z[f>>2];E=z[f+4>>2];a:{if(!(p!=C(0)|E!=C(0))&s==C(0)){break a}v[a+324>>2]=v[a+324>>2]&-53;v[n>>2]=0;v[m>>2]=0;v[a+176>>2]=-1;r=v[e+28>>2];v[o+88>>2]=v[e+24>>2];v[o+92>>2]=r;r=v[e+20>>2];v[o+80>>2]=v[e+16>>2];v[o+84>>2]=r;r=v[e+12>>2];v[o+72>>2]=v[e+8>>2];v[o+76>>2]=r;b:{if(!h){break b}ea=A[e+8>>3]+ +p;fa=A[e+16>>3]+ +E;ga=A[e+24>>3]+ +s;da=A[o+88>>3];T=A[o+80>>3];U=A[o+72>>3];ia=(l|0)==3;ja=(l&-3)!=1;while(1){u[a+322>>1]=x[a+322>>1]+1;z[o+64>>2]=ga-da;z[o+60>>2]=fa-T;z[o+56>>2]=ea-U;r=o+96|0;Ba[v[v[e>>2]+8>>2]](e,a,r,o+72|0,o+56|0);kT(a,b,d,r,k,g);p=z[o+64>>2];E=z[o+56>>2];J=z[o+60>>2];ba=C(K(C(C(p*p)+C(C(E*E)+C(J*J)))));if(ba<=j){break b}I=p;p=C(C(1)/ba);s=C(I*p);z[o+64>>2]=s;E=C(E*p);z[o+56>>2]=E;p=C(J*p);z[o+60>>2]=p;if(C(C(s*z[f+8>>2])+C(C(E*z[f>>2])+C(p*z[f+4>>2])))<=C(0)){break b}z[o+36>>2]=ba+z[a+276>>2];H=v[a+36>>2];r=w[a+298|0];q=v[a+32>>2];v[o+48>>2]=0;v[o+40>>2]=-1;v[o+44>>2]=-1;c:{if(H){O=(H<<2)+q|0;d:{if(!r){while(1){r=v[q>>2];H=v[(B(v[e+36>>2],24)+139760|0)+(r<<2)>>2];if(H){v[o+136>>2]=-1;v[o+140>>2]=-1;z[o+132>>2]=z[o+36>>2];e:{if(!(Ba[H|0](a,e,q,o+72|0,o+56|0,o+96|0)|0)){break e}p=z[o+132>>2];if(p==C(0)|!(p>2])){break e}r=v[o+116>>2];v[o+16>>2]=v[o+112>>2];v[o+20>>2]=r;r=v[o+108>>2];v[o+8>>2]=v[o+104>>2];v[o+12>>2]=r;r=v[o+100>>2];v[o>>2]=v[o+96>>2];v[o+4>>2]=r;z[o+24>>2]=z[o+120>>2];r=v[o+128>>2];v[o+28>>2]=v[o+124>>2];v[o+32>>2]=r;r=v[o+136>>2];v[o+36>>2]=v[o+132>>2];v[o+40>>2]=r;v[o+44>>2]=v[o+140>>2];v[o+48>>2]=q;if(p<=C(0)){break c}}r=v[q>>2]}q=v[(r<<2)+99008>>2]+q|0;if((O|0)!=(q|0)){continue}break d}}while(1){r=v[q>>2];H=v[(B(v[e+36>>2],24)+139760|0)+(r<<2)>>2];if(H){v[o+136>>2]=-1;v[o+140>>2]=-1;z[o+132>>2]=z[o+36>>2];f:{if(!(Ba[H|0](a,e,q,o+72|0,o+56|0,o+96|0)|0)){break f}p=z[o+132>>2];if(p==C(0)){if(y[q>>2]<2){break f}g:{h:{r=v[q+8>>2];switch(x[r+4>>1]-5|0){case 1:break g;case 0:break h;default:break f}}Ba[v[v[r>>2]+216>>2]](o+240|0,r);if(!(t[o+240|0]&1)){break f}}r=v[o+116>>2];v[o+16>>2]=v[o+112>>2];v[o+20>>2]=r;r=v[o+108>>2];v[o+8>>2]=v[o+104>>2];v[o+12>>2]=r;r=v[o+100>>2];v[o>>2]=v[o+96>>2];v[o+4>>2]=r;z[o+24>>2]=z[o+120>>2];r=v[o+128>>2];v[o+28>>2]=v[o+124>>2];v[o+32>>2]=r;r=v[o+136>>2];v[o+36>>2]=v[o+132>>2];v[o+40>>2]=r;v[o+44>>2]=v[o+140>>2];v[o+48>>2]=q;break c}if(!(p>2])){break f}r=v[o+116>>2];v[o+16>>2]=v[o+112>>2];v[o+20>>2]=r;r=v[o+108>>2];v[o+8>>2]=v[o+104>>2];v[o+12>>2]=r;r=v[o+100>>2];v[o>>2]=v[o+96>>2];v[o+4>>2]=r;z[o+24>>2]=z[o+120>>2];r=v[o+128>>2];v[o+28>>2]=v[o+124>>2];v[o+32>>2]=r;r=v[o+136>>2];v[o+36>>2]=v[o+132>>2];v[o+40>>2]=r;v[o+44>>2]=v[o+140>>2];v[o+48>>2]=q;if(p<=C(0)){break c}}r=v[q>>2]}q=v[(r<<2)+99008>>2]+q|0;if((O|0)!=(q|0)){continue}break}}q=v[o+48>>2];if(q){break c}}A[o+88>>3]=ga;A[o+80>>3]=fa;A[o+72>>3]=ea;q=1;break b}if(!(!w[a+298|0]|z[o+36>>2]!=C(0))){i:{V=v[a+36>>2];if(V){I=z[a+276>>2];Q=C(A[o+72>>3]);P=C(A[o+80>>3]);M=C(A[o+88>>3]);f=0;break i}while(1)continue}while(1){j:{if(!V){b=1;break j}q=v[a+32>>2];c=q+(V<<2)|0;b=1;while(1){k:{if(y[q>>2]<2){break k}l:{m:{d=v[q+8>>2];switch(x[d+4>>1]-5|0){case 1:break l;case 0:break m;default:break k}}Ba[v[v[d>>2]+216>>2]](o+96|0,d);if(!(t[o+96|0]&1)){break k}}b=v[q+4>>2];Ba[v[v[b>>2]+40>>2]](o+96|0,b);Ba[v[v[d>>2]+76>>2]](o+240|0,d);Ba[v[v[b>>2]+80>>2]](o+208|0,b);N=z[o+252>>2];s=z[o+220>>2];E=z[o+208>>2];F=z[o+240>>2];L=z[o+244>>2];p=z[o+212>>2];G=z[o+248>>2];j=z[o+216>>2];z[o+188>>2]=C(C(C(N*s)-C(E*F))-C(L*p))-C(G*j);z[o+184>>2]=C(C(F*p)+C(C(N*j)+C(G*s)))-C(E*L);z[o+180>>2]=C(C(G*E)+C(C(N*p)+C(L*s)))-C(j*F);z[o+176>>2]=C(C(L*j)+C(C(N*E)+C(F*s)))-C(p*G);j=z[o+232>>2];J=C(j+j);j=z[o+224>>2];s=C(j+j);j=z[o+228>>2];E=C(j+j);p=C(C(G*J)+C(C(F*s)+C(L*E)));j=C(C(N*N)+C(-.5));z[o+200>>2]=z[o+264>>2]+C(C(G*p)+C(C(J*j)+C(N*C(C(F*E)-C(s*L)))));z[o+196>>2]=z[o+260>>2]+C(C(L*p)+C(C(E*j)+C(N*C(C(G*s)-C(J*F)))));z[o+192>>2]=z[o+256>>2]+C(C(F*p)+C(C(s*j)+C(N*C(C(L*J)-C(E*G)))));z[o+240>>2]=z[a+244>>2];z[o+244>>2]=z[a+248>>2];z[o+248>>2]=z[a+252>>2];j=z[a+256>>2];z[o+264>>2]=M;z[o+260>>2]=P;z[o+256>>2]=Q;z[o+252>>2]=j;n:{if(v[e+36>>2]==1){p=z[e+40>>2];j=z[e+44>>2];v[o+208>>2]=2;z[o+216>>2]=j*C(.5);z[o+212>>2]=I+p;v[o+160>>2]=o+96;b=0;if(kV(o+160|0,o+156|0,o+208|0,o+240|0,v[o+160>>2],o+176|0)){break n}break k}E=z[e+40>>2];p=z[e+44>>2];j=z[e+48>>2];v[o+208>>2]=3;z[o+220>>2]=I+j;z[o+216>>2]=I+p;z[o+212>>2]=I+E;v[o+160>>2]=o+96;b=0;if(!kV(o+160|0,o+156|0,o+208|0,o+240|0,v[o+160>>2],o+176|0)){break k}}b=1;f=f+1|0;j=z[o+156>>2];M=C(M+C(j*z[o+168>>2]));P=C(P+C(j*z[o+164>>2]));Q=C(Q+C(j*z[o+160>>2]))}q=v[(v[q>>2]<<2)+99008>>2]+q|0;if((c|0)!=(q|0)){continue}break}}if(!(!b|f>>>0>3)){V=v[a+36>>2];continue}break}if(i){v[i>>2]=ha+1}A[e+24>>3]=M;A[e+16>>3]=P;A[e+8>>3]=Q;q=1;break a}o:{if(y[q>>2]<=1){V=0;q=1;if(ia){break o}v[c+8>>2]=0;v[c+12>>2]=-1;H=0;D=xa-80|0;xa=D;q=v[v[o+48>>2]+4>>2];r=q>>>16|0;O=v[c>>2];p:{q:{r:{switch(q&65535){case 0:r=v[v[v[O+520>>2]+68>>2]+(r<<2)>>2];na=D,oa=Ba[v[v[O>>2]+16>>2]](O)|0,v[na+8>>2]=oa;q=v[o+12>>2];v[D+24>>2]=v[o+8>>2];v[D+28>>2]=q;q=v[o+20>>2];v[D+32>>2]=v[o+16>>2];v[D+36>>2]=q;q=v[o+4>>2];v[D+16>>2]=v[o>>2];v[D+20>>2]=q;z[D+40>>2]=z[o+24>>2];z[D+44>>2]=z[o+28>>2];z[D+48>>2]=z[o+32>>2];z[D+52>>2]=z[o+56>>2];z[D+56>>2]=z[o+60>>2];z[D+60>>2]=z[o+64>>2];z[D+64>>2]=ba;na=D,oa=Ba[v[v[r>>2]+16>>2]](r)|0,v[na+68>>2]=oa;q=v[O+72>>2];if(q){Ba[v[v[q>>2]+4>>2]](q,D+8|0)}q=v[O+76>>2];if(!q){break p}Ba[v[v[q>>2]+4>>2]](D+72|0,q,v[D+68>>2]);break q;case 1:na=D,oa=Ba[v[v[O>>2]+16>>2]](O)|0,v[na+8>>2]=oa;q=v[o+12>>2];v[D+24>>2]=v[o+8>>2];v[D+28>>2]=q;q=v[o+20>>2];v[D+32>>2]=v[o+16>>2];v[D+36>>2]=q;q=v[o+4>>2];v[D+16>>2]=v[o>>2];v[D+20>>2]=q;z[D+40>>2]=z[o+24>>2];z[D+44>>2]=z[o+28>>2];z[D+48>>2]=z[o+32>>2];z[D+52>>2]=z[o+56>>2];z[D+56>>2]=z[o+60>>2];z[D+60>>2]=z[o+64>>2];z[D+64>>2]=ba;r=v[v[c+4>>2]+4>>2]+B(r,72)|0;q=v[r>>2];v[D+68>>2]=v[r+12>>2];v[c+12>>2]=q;q=r+8|0;v[c+8>>2]=q;r=v[O+72>>2];if(r){Ba[v[v[r>>2]+8>>2]](r,D+8|0)}r=v[O+76>>2];if(!r){break p}Ba[v[v[r>>2]+8>>2]](D+72|0,r,q);break q;case 2:break r;default:break p}}na=D,oa=Ba[v[v[O>>2]+16>>2]](O)|0,v[na+8>>2]=oa;q=v[o+12>>2];v[D+24>>2]=v[o+8>>2];v[D+28>>2]=q;q=v[o+20>>2];v[D+32>>2]=v[o+16>>2];v[D+36>>2]=q;q=v[o+4>>2];v[D+16>>2]=v[o>>2];v[D+20>>2]=q;z[D+40>>2]=z[o+24>>2];z[D+44>>2]=z[o+28>>2];z[D+48>>2]=z[o+32>>2];z[D+52>>2]=z[o+56>>2];z[D+56>>2]=z[o+60>>2];z[D+60>>2]=z[o+64>>2];z[D+64>>2]=ba;r=v[v[c+4>>2]+16>>2]+(r<<6)|0;q=v[r>>2];v[D+68>>2]=v[r+12>>2];v[c+12>>2]=q;q=r+8|0;v[c+8>>2]=q;r=v[O+72>>2];if(r){Ba[v[v[r>>2]+8>>2]](r,D+8|0)}r=v[O+76>>2];if(!r){break p}Ba[v[v[r>>2]+8>>2]](D+72|0,r,q)}H=w[D+72|0]}xa=D+80|0;q=!(H&2);if((l|0)!=2){break o}r=v[a+324>>2];H=v[c+8>>2];if(H){v[a+176>>2]=v[c+12>>2];v[a+324>>2]=r|32;T=A[o>>3];U=A[o+8>>3];p=C(A[o+16>>3]);z[a+236>>2]=p;s=C(U);z[a+232>>2]=s;E=C(T);z[a+228>>2]=E;L=z[H+40>>2];p=C(p-C(A[H+24>>3]));G=C(p+p);I=z[H+32>>2];p=C(E-C(A[H+8>>3]));M=C(p+p);J=z[H+36>>2];p=C(s-C(A[H+16>>3]));s=C(p+p);E=C(C(L*G)+C(C(I*M)+C(J*s)));F=z[H+44>>2];p=C(C(F*F)+C(-.5));z[a+224>>2]=C(L*E)+C(C(G*p)-C(F*C(C(I*s)-C(M*J))));z[a+220>>2]=C(J*E)+C(C(s*p)-C(F*C(C(L*M)-C(G*I))));z[a+216>>2]=C(I*E)+C(C(M*p)-C(F*C(C(J*G)-C(s*L))));break o}v[a+324>>2]=r|16;break o}O=v[q+8>>2];s:{if((l|0)==2){H=v[q+4>>2];r=v[a+324>>2]&-49;v[a+324>>2]=r;t:{if(x[O+4>>1]!=6){break t}q=v[o+40>>2];if((q|0)==-1){break t}v[a+324>>2]=r|4;q=v[a+8>>2]+B(q,36)|0;ca=z[q+20>>2];_=z[q+8>>2];Q=z[q+32>>2];ka=A[a+64>>3];la=A[a+88>>3];ma=A[a+48>>3];da=A[a+72>>3];T=A[a+56>>3];U=A[a+80>>3];R=z[a+268>>2];W=z[a+260>>2];X=z[a+264>>2];F=z[q+12>>2];P=z[q>>2];L=C(F-P);G=z[q+28>>2];N=z[q+4>>2];I=C(G-N);M=z[q+24>>2];p=C(M-P);J=z[q+16>>2];s=C(J-N);Y=C(C(L*I)-C(p*s));z[a+128>>2]=Y;E=C(ca-_);S=C(E*p);p=C(Q-_);S=C(S-C(p*L));z[a+124>>2]=S;L=C(C(s*p)-C(I*E));z[a+120>>2]=L;I=C(C(_*R)+C(C(P*W)+C(N*X)));J=C(C(ca*R)+C(C(F*W)+C(X*J)));p=I>J?I:J;s=C(C(Q*R)+C(C(M*W)+C(X*G)));E=C(C(R*C((ka+la)*.5))+C(C(W*C((ma+da)*.5))+C(X*C((T+U)*.5))));z[a+148>>2]=(p>s?p:s)+E;p=I>2]=(pC(0))){break t}p=C(C(1)/p);z[a+128>>2]=Y*p;z[a+124>>2]=S*p;z[a+120>>2]=L*p}v[n>>2]=H;v[m>>2]=O;Ba[v[v[O>>2]+76>>2]](o+96|0,O);Ba[v[v[H>>2]+80>>2]](o+240|0,H);I=z[o+120>>2];M=z[o+116>>2];W=z[o+248>>2];X=z[o+240>>2];_=z[o+244>>2];Y=z[o+252>>2];J=z[o+112>>2];$=z[o+96>>2];F=z[o+256>>2];Z=z[o+108>>2];aa=z[o+100>>2];L=z[o+264>>2];R=z[o+104>>2];G=z[o+260>>2];T=A[o>>3];U=A[o+8>>3];p=C(A[o+16>>3]);z[a+212>>2]=p;s=C(U);z[a+208>>2]=s;E=C(T);z[a+204>>2]=E;S=C(C(C($*_)+C(C(Z*W)+C(R*Y)))-C(X*aa));N=I;ca=C(L+L);Q=C(F+F);P=C(G+G);G=C(C(R*ca)+C(C($*Q)+C(aa*P)));I=C(C(Z*Z)+C(-.5));p=C(p-C(N+C(C(R*G)+C(C(ca*I)+C(Z*C(C($*P)-C(Q*aa)))))));N=C(p+p);F=C(C(C(aa*W)+C(C(Z*X)+C($*Y)))-C(_*R));p=C(E-C(J+C(C($*G)+C(C(Q*I)+C(Z*C(C(aa*ca)-C(P*R)))))));L=C(p+p);J=C(C(C(R*X)+C(C(Z*_)+C(aa*Y)))-C(W*$));p=C(s-C(M+C(C(aa*G)+C(C(P*I)+C(Z*C(C(R*Q)-C(ca*$)))))));s=C(p+p);E=C(C(S*N)+C(C(F*L)+C(J*s)));M=C(C(C(C(Z*Y)-C(X*$))-C(aa*_))-C(R*W));p=C(C(M*M)+C(-.5));z[a+200>>2]=C(S*E)+C(C(N*p)-C(M*C(C(F*s)-C(L*J))));z[a+196>>2]=C(J*E)+C(C(s*p)-C(M*C(C(S*L)-C(N*F))));z[a+192>>2]=C(F*E)+C(C(L*p)-C(M*C(C(J*N)-C(s*S))));V=0;break s}V=0;u:{if(x[O+4>>1]!=6|ja){break u}q=v[o+40>>2];if((q|0)==-1){break u}v[a+324>>2]=v[a+324>>2]|8;q=v[a+8>>2]+B(q,36)|0;G=z[q+20>>2];I=z[q+32>>2];L=z[q+8>>2];p=z[q>>2];M=C(z[q+12>>2]-p);E=z[q+4>>2];J=C(z[q+28>>2]-E);p=C(z[q+24>>2]-p);s=C(z[q+16>>2]-E);F=C(C(M*J)-C(p*s));z[a+140>>2]=F;E=C(G-L);N=C(E*p);p=C(I-L);G=C(N-C(p*M));z[a+136>>2]=G;s=C(C(s*p)-C(J*E));z[a+132>>2]=s;p=C(K(C(C(F*F)+C(C(s*s)+C(G*G)))));if(p>C(0)){p=C(C(1)/p);F=C(F*p);z[a+140>>2]=F;G=C(G*p);z[a+136>>2]=G;s=C(s*p);z[a+132>>2]=s}if(!w[a+300|0]|!(C(C(F*z[a+268>>2])+C(C(s*z[a+260>>2])+C(G*z[a+264>>2])))>2];na=H,oa=Ba[v[v[r>>2]+16>>2]](r)|0,v[na+8>>2]=oa;q=v[o+12>>2];v[H+24>>2]=v[o+8>>2];v[H+28>>2]=q;q=v[o+20>>2];v[H+32>>2]=v[o+16>>2];v[H+36>>2]=q;q=v[o+4>>2];v[H+16>>2]=v[o>>2];v[H+20>>2]=q;z[H+40>>2]=z[o+24>>2];z[H+44>>2]=z[o+28>>2];z[H+48>>2]=z[o+32>>2];z[H+52>>2]=z[o+56>>2];z[H+56>>2]=z[o+60>>2];z[H+60>>2]=z[o+64>>2];z[H+64>>2]=ba;q=v[o+48>>2];v[H+68>>2]=v[q+4>>2];v[H+72>>2]=v[q+8>>2];v[H+76>>2]=v[o+44>>2];q=v[r+72>>2];if(q){Ba[v[v[q>>2]>>2]](q,H+8|0)}q=v[r+76>>2];if(q){Ba[v[v[q>>2]>>2]](H,q,v[H+68>>2],v[H+72>>2]);q=w[H|0]}else{q=0}xa=H+80|0;q=!(q&2)}M=z[a+268>>2];J=z[a+260>>2];s=z[a+264>>2];z[a+308>>2]=C(C(A[o+16>>3])*M)+C(C(C(A[o>>3])*J)+C(s*C(A[o+8>>3])));E=z[o+36>>2];p=z[a+276>>2];if(E>p){p=C(E-p);A[o+72>>3]=A[o+72>>3]+ +C(p*z[o+56>>2]);A[o+80>>3]=A[o+80>>3]+ +C(p*z[o+60>>2]);A[o+88>>3]=A[o+88>>3]+ +C(p*z[o+64>>2])}F=z[o+32>>2];I=z[o+28>>2];G=z[o+24>>2];v:{if(!V&(!(w[a+324|0]&2)|v[a+240>>2]==1)){break v}p=C(C(F*M)+C(C(G*J)+C(s*I)));F=C(F-C(M*p));G=C(G-C(J*p));I=C(I-C(s*p));p=C(K(C(C(F*F)+C(C(G*G)+C(I*I)))));if(!(p>C(0))){break v}p=C(C(1)/p);F=C(F*p);I=C(I*p);G=C(G*p)}r=v[a+324>>2]&64;s=z[o+64>>2];E=z[o+56>>2];p=z[o+60>>2];J=C(C(s*F)+C(C(E*G)+C(I*p)));s=C(s-C(C(F+F)*J));Q=C(E-C(C(G+G)*J));P=C(p-C(C(I+I)*J));p=C(K(C(C(s*s)+C(C(Q*Q)+C(P*P)))));if(p>C(0)){p=C(C(1)/p);s=C(s*p);Q=C(Q*p);P=C(P*p)}h=((l|0)!=2?-1:q?-1:ha?-1:8)+h|0;p=C(C(s*F)+C(C(Q*G)+C(I*P)));F=C(s-C(F*p));I=C(P-C(I*p));G=C(Q-C(G*p));da=A[o+88>>3];T=A[o+80>>3];U=A[o+72>>3];w:{if(!r){break w}p=C(K(C(C(F*F)+C(C(G*G)+C(I*I)))));if(!(p>C(0))){break w}p=C(C(1)/p);F=C(F*p);I=C(I*p);G=C(G*p)}ha=ha+1|0;p=C(ga-da);N=C(p*p);p=C(ea-U);s=C(p*p);p=C(fa-T);p=C(K(C(N+C(s+C(p*p)))));ga=da+ +C(p*F);fa=T+ +C(p*I);ea=U+ +C(p*G);q=1;if(h){continue}break}}if(i){v[i>>2]=ha}a=v[o+76>>2];v[e+8>>2]=v[o+72>>2];v[e+12>>2]=a;a=v[o+92>>2];v[e+24>>2]=v[o+88>>2];v[e+28>>2]=a;a=v[o+84>>2];v[e+16>>2]=v[o+80>>2];v[e+20>>2]=a}xa=o+272|0;return q&1}function yy(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=0,n=0,o=0,p=C(0),q=C(0),r=0,s=0,y=0,A=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=0,U=C(0),V=0,W=C(0),X=C(0),Y=0,Z=C(0),_=C(0),$=0,aa=0,ba=C(0),ca=0,da=C(0),ea=C(0),fa=0,ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=0,Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0);o=xa-48|0;xa=o;y=v[a+16>>2];u[y+22>>1]=0;v[c+4112>>2]=0;v[o+44>>2]=1065353216;v[o+40>>2]=1065353216;v[o+36>>2]=1065353216;v[o+32>>2]=1065353216;t[o+31|0]=0;t[o+30|0]=0;R=c+16|0;k=z[v[a+28>>2]+76>>2];j=z[v[a+32>>2]+76>>2];$=uy(R,b,o+31|0,o+30|0,o+44|0,o+40|0,o+36|0,o+32|0,j>k?k:j);a:{if(!$){t[a+140|0]=0;v[a+136>>2]=0;a=1;break a}S=c+11812|0;v[S>>2]=0;v[S+4>>2]=0;M=c+4128|0;aA(M,R,v[c+4112>>2]);s=a+36|0;m=a- -64|0;bA(M,R,s,m,0,0);b:{c:{d:{e:{f:{n=v[c+11816>>2];if(!n){break f}ca=(h|0)==1?1:2;H=(v[a+96>>2]|v[a+92>>2])&8;aa=H?7:6;S=H?112:48;h=0;while(1){Y=v[((h<<2)+c|0)+11424>>2];g:{if(!Y){break g}V=(Y<<2)+12&-16;T=(B(S,Y)+r|0)+80|0;if(!(t[(B(h,104)+c|0)+6945|0]&1)){r=(T+V|0)+(B(Y,ca)<>2]>>2]](g,fa+16|0)|0;g=S+1>>>0<2;if(g){break e}t[a+140|0]=0;v[a+136>>2]=0;v[y+24>>2]=S;t[b+12|0]=$;u[y+22>>1]=h>>>4;n=v[a+32>>2];h=v[a+28>>2];if(!H){break c}b=v[a+20>>2];u[o+24>>1]=x[y+8>>1];v[o+20>>2]=h;v[o+16>>2]=b;b=v[a+24>>2];u[o+8>>1]=x[y+10>>1];v[o+4>>2]=n;v[o>>2]=b;c=S;Z=z[o+44>>2];F=z[o+36>>2];ba=z[o+40>>2];G=z[o+32>>2];j=z[a+128>>2];r=0;$=0;h=xa-480|0;xa=h;z[h+464>>2]=z[a+132>>2];y=o+16|0;g=x[y+8>>1];h:{if((g|0)==65535){f=z[v[y+4>>2]+68>>2];break h}b=v[y>>2];f=C(Ba[v[v[b>>2]+124>>2]](b,g))}g=x[o+8>>1];if((g|0)==65535){k=z[v[o+4>>2]+68>>2]}else{b=v[o>>2];k=C(Ba[v[v[b>>2]+124>>2]](b,g))}z[h+448>>2]=(f>k?f:k)/d;z[h+432>>2]=j;z[h+416>>2]=e;ly(h+384|0,y);ly(h+352|0,o);z[h+336>>2]=d;z[h+320>>2]=d*C(.800000011920929);d=z[s+24>>2];b=v[s+20>>2];a=v[s+16>>2];v[h+316>>2]=0;z[h+312>>2]=d;v[h+304>>2]=a;v[h+308>>2]=b;d=z[m+24>>2];b=v[m+20>>2];a=v[m+16>>2];v[h+300>>2]=0;z[h+296>>2]=d;v[h+288>>2]=a;v[h+292>>2]=b;Y=v[M+7688>>2];z[h+272>>2]=Z;z[h+256>>2]=ba;z[h+240>>2]=F;z[h+224>>2]=G;i:{if(!Y){break i}a=S;while(1){g=(r<<2)+M|0;b=v[g+7296>>2];j:{if(!b){break j}g=v[g+7424>>2];m=(x[B(g,44)+M>>1]<<6)+R|0;j=z[m>>2];f=z[m+4>>2];e=z[m+8>>2];v[h+140>>2]=0;z[h+136>>2]=e;z[h+132>>2]=f;z[h+128>>2]=j;z[h+96>>2]=z[m+60>>2];t[a|0]=3;t[a+1|0]=b;z[a+8>>2]=z[h+272>>2];d=z[h+256>>2];t[a+36|0]=0;z[a+28>>2]=G;z[a+4>>2]=F;z[a+12>>2]=d;z[a+24>>2]=e;z[a+20>>2]=f;z[a+16>>2]=j;a=a+48|0;if((g|0)==65535){break j}while(1){s=B(g,44)+M|0;m=w[s+5|0];if(m){b=(x[s>>1]<<6)+R|0;g=0;while(1){wy(h- -64|0,y,o,h+272|0,h+256|0,h+240|0,h+224|0,h+304|0,h+288|0,h+128|0,h+336|0,h+320|0,h+432|0,h+448|0,h+96|0,h+416|0,b+(g<<6)|0,a,h+464|0,i,h+384|0,h+352|0);a=a+112|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}g=x[s+2>>1];if((g|0)!=65535){continue}break}}r=r+1|0;if((Y|0)!=(r|0)){continue}break}if(!Y){break i}while(1){b=($<<2)+M|0;g=v[b+7296>>2];if(g){u[c+2>>1]=a-c;aa=b+7424|0;b=(x[B(v[aa>>2],44)+M>>1]<<6)+R|0;j=z[b+44>>2];J=z[b+8>>2];A=z[b>>2];I=z[b+4>>2];b=w[b+48|0];s=w[c+1|0];t[a+3|0]=0;t[a+1|0]=g;m=b&1;t[a+2|0]=m?0:B(g,ca);g=g<<2;b=J9(a+32|0,0,g);ky(h+128|0,y);ky(h+96|0,o);p=C(0);l=C(0);k=C(0);f=C(z[h+136>>2]-z[h+104>>2]);e=C(z[h+128>>2]-z[h+96>>2]);d=C(z[h+132>>2]-z[h+100>>2]);q=C(C(J*f)+C(C(A*e)+C(I*d)));f=C(f-C(J*q));e=C(e-C(A*q));d=C(d-C(I*q));T=C(C(f*f)+C(C(e*e)+C(d*d)))>C(9999999747378752e-21);n=C(D(A))C(0)){d=C(C(1)/C(K(d)));k=C(q*d);p=C(f*d);l=C(e*d)}T=B(s,112)+c|0;b=b+(g+12&-16)|0;z[h+196>>2]=l;z[h+192>>2]=p;z[h+212>>2]=C(p*I)-C(A*l);z[h+200>>2]=k;z[h+208>>2]=C(k*A)-C(J*p);z[h+204>>2]=C(l*J)-C(I*k);k:{if(m){break k}z[a+20>>2]=G;z[a+16>>2]=F;z[a+12>>2]=ba;z[a+8>>2]=Z;z[a+4>>2]=j;t[a|0]=12;g=0;Da=1;a=v[aa>>2];if((a|0)==65535){break k}while(1){H=B(a,44)+M|0;n=w[H+5|0];if(n){aa=(x[H>>1]<<6)+R|0;c=0;while(1){if(ca){f=z[h+368>>2];a=aa+(c<<6)|0;l=z[a+20>>2];E=C(l-z[h+292>>2]);k=z[a+16>>2];N=C(k-z[h+288>>2]);e=z[h+372>>2];L=C(z[h+360>>2]+C(C(f*E)-C(N*e)));d=z[h+376>>2];j=z[a+24>>2];O=C(j-z[h+296>>2]);ga=C(z[h+356>>2]+C(C(d*N)-C(O*f)));da=C(z[h+352>>2]+C(C(e*O)-C(E*d)));f=z[h+400>>2];P=C(l-z[h+308>>2]);Q=C(k-z[h+304>>2]);e=z[h+404>>2];ha=C(z[h+392>>2]+C(C(f*P)-C(Q*e)));d=z[h+408>>2];W=C(j-z[h+312>>2]);ea=C(z[h+388>>2]+C(C(d*Q)-C(W*f)));ia=C(z[h+384>>2]+C(C(e*W)-C(P*d)));ja=z[a+32>>2];ka=z[a+40>>2];A=z[a+36>>2];I=C(-E);J=C(-N);q=C(-O);p=C(-P);l=C(-Q);k=C(-W);V=0;while(1){a=b;b=(h+192|0)+B(g,12)|0;f=z[b>>2];e=z[b+4>>2];d=z[b+8>>2];v[h+188>>2]=0;z[h+184>>2]=d;z[h+180>>2]=e;z[h+176>>2]=f;v[h+172>>2]=0;z[h+168>>2]=C(Q*e)+C(f*p);z[h+164>>2]=C(W*f)+C(d*l);z[h+160>>2]=C(P*d)+C(e*k);s=h- -64|0;ny(s,h+176|0,h+160|0,y);v[h+28>>2]=0;z[h+24>>2]=-z[h+184>>2];z[h+20>>2]=-z[h+180>>2];z[h+16>>2]=-z[h+176>>2];v[h+12>>2]=0;z[h+8>>2]=-C(C(N*e)+C(f*I));z[h+4>>2]=-C(C(O*f)+C(d*J));z[h>>2]=-C(C(E*d)+C(e*q));m=h+32|0;b=h+16|0;ny(m,b,h,o);oy(b,y,s,h+128|0,h+272|0,h+240|0,o,m,h+96|0,h+256|0,h+224|0,i);_=z[h+184>>2];U=z[h+176>>2];X=z[h+180>>2];d=C(C(ka*_)+C(C(ja*U)+C(A*X)));l:{if(x[y+8>>1]==65535){d=C(d+C(C(ha*_)+C(C(ia*U)+C(ea*X))));break l}if(x[o+8>>1]!=65535){break l}d=C(d-C(C(L*_)+C(C(da*U)+C(ga*X))))}g=1-g|0;b=a+128|0;f=z[h+16>>2];e=z[h+88>>2];m=v[h+84>>2];v[a+16>>2]=v[h+80>>2];v[a+20>>2]=m;z[a+24>>2]=e;z[a+28>>2]=f>C(0)?C(C(1)/f):C(0);j=z[h+48>>2];f=z[h+56>>2];e=z[h+52>>2];z[a>>2]=U;z[a+4>>2]=X;z[a+8>>2]=_;z[a+48>>2]=d;v[a+12>>2]=0;v[a+44>>2]=0;z[a+36>>2]=-e;z[a+40>>2]=-f;z[a+32>>2]=-j;m=v[h+132>>2];v[a+64>>2]=v[h+128>>2];v[a+68>>2]=m;m=v[h+140>>2];v[a+72>>2]=v[h+136>>2];v[a+76>>2]=m;m=v[h+148>>2];v[a+80>>2]=v[h+144>>2];v[a+84>>2]=m;m=v[h+156>>2];v[a+88>>2]=v[h+152>>2];v[a+92>>2]=m;m=v[h+100>>2];v[a+96>>2]=v[h+96>>2];v[a+100>>2]=m;m=v[h+108>>2];v[a+104>>2]=v[h+104>>2];v[a+108>>2]=m;m=v[h+116>>2];v[a+112>>2]=v[h+112>>2];v[a+116>>2]=m;m=v[h+124>>2];v[a+120>>2]=v[h+120>>2];v[a+124>>2]=m;V=V+1|0;if((ca|0)!=(V|0)){continue}break}}c=c+1|0;if((n|0)!=(c|0)){continue}break}}a=x[H+2>>1];if((a|0)!=65535){continue}break}}c=T+48|0;a=b}$=$+1|0;if((Y|0)!=($|0)){continue}break}}xa=h+480|0;break b}fa=0;t[a+140|0]=0;v[a+136>>2]=0;break d}v[a+136>>2]=0;u[y+22>>1]=0;v[y+24>>2]=0;t[a+140|0]=0;a=0;if(g){break a}}v[y+24>>2]=0;t[b+12|0]=$;u[y+22>>1]=fa>>>4;a=1;break a}g=S;V=v[c+11816>>2];if(V){k=z[h+68>>2];j=z[n+68>>2];W=j>2]==2;aa=b?11:10;s=b?5:1;ga=C(d*C(.800000011920929));la=C(z[o+44>>2]*z[h+12>>2]);Ea=z[n- -64>>2];Fa=z[n+60>>2];Ga=z[n+56>>2];Ha=z[n+52>>2];Ia=z[n+48>>2];Ja=z[n+44>>2];Ka=z[n+40>>2];La=z[n+36>>2];Ma=z[h- -64>>2];Na=z[h+60>>2];Oa=z[h+56>>2];Pa=z[h+52>>2];Qa=z[h+48>>2];Ra=z[h+44>>2];Sa=z[h+40>>2];Ta=z[h+36>>2];Ua=z[n+24>>2];Va=z[n+20>>2];Wa=z[h+24>>2];Xa=z[h+20>>2];Ya=z[a+88>>2];Za=z[a+84>>2];_a=z[a+80>>2];$a=z[a+60>>2];ab=z[a+56>>2];bb=z[a+52>>2];cb=z[n+32>>2];db=z[h+32>>2];eb=z[n+16>>2];fb=z[h+16>>2];ua=z[n+8>>2];va=z[n+4>>2];wa=z[n>>2];ya=z[h+8>>2];za=z[h+4>>2];Aa=z[h>>2];da=z[a+132>>2];ha=z[a+128>>2];m=w[a+126|0];i=v[a+112>>2];ma=z[o+32>>2];na=z[o+36>>2];Ca=C(z[n+12>>2]*C(-z[o+40>>2]));gb=C(-Ca);a=0;while(1){h=(a<<2)+c|0;b=v[h+11424>>2];m:{if(!b){break m}h=v[h+11552>>2];n=(x[B(h,44)+M>>1]<<6)+R|0;_=z[n+60>>2];F=z[n>>2];G=z[n+4>>2];E=z[n+8>>2];t[g|0]=s;z[g+12>>2]=gb;z[g+8>>2]=la;z[g+28>>2]=ma;z[g+4>>2]=na;t[g+36|0]=m;z[g+24>>2]=E;z[g+20>>2]=G;z[g+16>>2]=F;v[g+32>>2]=i;t[g+1|0]=b;g=g+48|0;if((h|0)==65535){break m}ea=C(C(C(C(Aa*F)-C(wa*F))+C(C(za*G)-C(va*G)))+C(C(ya*E)-C(ua*E)));j=C(C(E*E)+C(C(F*F)+C(G*G)));ia=C(Ca*j);ja=C(la*j);while(1){T=B(h,44)+M|0;h=w[T+5|0];if(h){b=(x[T>>1]<<6)+R|0;r=0;while(1){H=b+(r<<6)|0;ka=z[H+40>>2];A=z[H+36>>2];I=z[H+32>>2];J=z[H+12>>2];q=z[H+16>>2];k=C(q-bb);p=z[H+20>>2];j=C(p-ab);l=C(C(k*G)-C(F*j));N=(l>C(0)?l:C(-l))>2];j=C(l-$a);L=C(L-C(G*j));O=(L>C(0)?L:C(-L))C(0)?j:C(-j))C(0)?p:C(-p))C(0)?l:C(-l))C(0)?j:C(-j))C(0)?C(C(1)/j):C(0);z[g+32>>2]=p;k=C(C(ea+C(C(N*Wa)+C(C(O*fb)+C(Xa*P))))-C(C(Q*Ua)+C(C(l*eb)+C(Va*k))));j=C(-k);l=C(J-ha);n=_>C(0)&e>k&j>C(l*d);k=C(p*C(C(C(C(E*ka)+C(C(F*I)+C(G*A)))+(n?C(_*j):C(0)))-k));j=C(ga*l);j=C((j>2]=k-j;z[g+40>>2]=k+(n?C(0):C(-(j>C(0)?j:C(0))));j=z[H+28>>2];v[g+28>>2]=0;z[g+24>>2]=ba;z[g+20>>2]=q;z[g+16>>2]=L;v[g+12>>2]=0;z[g+8>>2]=U;z[g+4>>2]=Z;z[g>>2]=X;z[g+44>>2]=j;g=g+48|0;r=r+1|0;if((h|0)!=(r|0)){continue}break}}h=x[T+2>>1];if((h|0)!=65535){continue}break}}a=a+1|0;if((V|0)!=(a|0)){continue}break}F=C(za-va);G=C(Aa-wa);E=C(ya-ua);a=S;b=0;while(1){h=(b<<2)+c|0;n=v[h+11424>>2];if(n){s=h+11552|0;h=x[B(v[s>>2],44)+M>>1];u[a+2>>1]=g-a;h=(h<<6)+R|0;d=z[h+44>>2];h=w[h+48|0];m=w[a+1|0];t[g+1|0]=n;i=h&1;t[g+2|0]=i?0:B(n,ca);h=n<<2;h=J9(g+32|0,0,B(h,ca))+(h+12&-16)|0;a=(B(m,48)+a|0)+48|0;n:{if(i){break n}r=v[s>>2];i=(x[B(r,44)+M>>1]<<6)+R|0;A=z[i+4>>2];q=z[i>>2];k=z[i+8>>2];z[g+20>>2]=ma;z[g+16>>2]=na;z[g+12>>2]=gb;z[g+8>>2]=la;z[g+4>>2]=d;t[g|0]=aa;if((r|0)==65535){break n}e=C(C(k*E)+C(C(q*G)+C(F*A)));d=C(F-C(A*e));i=C(D(q))C(9999999747378752e-21);d=g?d:i?C(-k):q;l=d;j=g?j:i?A:C(0);e=g?e:i?C(0):C(-A);d=C(C(1)/C(K(C(C(j*j)+C(C(e*e)+C(d*d))))));p=C(l*d);l=C(j*d);J=C(C(p*k)-C(A*l));j=k;k=C(e*d);I=C(C(l*q)-C(j*k));q=C(C(k*A)-C(q*p));while(1){s=B(r,44)+M|0;m=w[s+5|0];if(m){i=(x[s>>1]<<6)+R|0;r=0;d=l;e=p;j=k;while(1){g=i+(r<<6)|0;k=z[g+16>>2];l=C(k-_a);W=(l>C(0)?l:C(-l))C(0)?k:C(-k))>2];k=C(l-Za);Z=(k>C(0)?k:C(-k))>2];p=C(k-Ya);L=(p>C(0)?p:C(-p))C(0)?l:C(-l))C(0)?k:C(-k))>2];ka=z[g+40>>2];A=z[g+36>>2];g=0;while(1){k=J;p=I;l=q;v[h+12>>2]=0;z[h+8>>2]=d;I=e;z[h+4>>2]=e;z[h>>2]=j;v[h+44>>2]=0;oa=C(C(W*e)+C(j*ba));q=d;pa=C(C(Z*d)+C(e*ga));qa=C(C(L*j)+C(d*_));N=C(C(Ea*oa)+C(C(Ka*pa)+C(Ha*qa)));z[h+40>>2]=N;O=C(C(Fa*oa)+C(C(La*pa)+C(Ia*qa)));z[h+36>>2]=O;P=C(C(Ga*oa)+C(C(cb*pa)+C(Ja*qa)));z[h+32>>2]=P;J=j;ra=C(C(U*e)+C(j*ha));sa=C(C(da*d)+C(e*ia));ta=C(C(ea*j)+C(d*X));Q=C(C(Ma*ra)+C(C(Sa*sa)+C(Pa*ta)));z[h+24>>2]=Q;j=C(C(Na*ra)+C(C(Ta*sa)+C(Qa*ta)));z[h+20>>2]=j;e=C(C(Oa*ra)+C(C(db*sa)+C(Ra*ta)));z[h+16>>2]=e;z[h+48>>2]=C(C(ka*d)+C(C(ja*J)+C(A*I)))-C(C(C(C(d*ya)+C(C(J*Aa)+C(za*I)))+C(C(ra*Wa)+C(C(sa*fb)+C(Xa*ta))))-C(C(C(d*ua)+C(C(J*wa)+C(va*I)))+C(C(oa*Ua)+C(C(pa*eb)+C(Va*qa)))));d=C(C(la+C(na*C(C(Q*Q)+C(C(e*e)+C(j*j)))))+C(C(ma*C(C(N*N)+C(C(P*P)+C(O*O))))-Ca));z[h+28>>2]=-(d>C(0)?C(C(1)/d):C(0));h=h- -64|0;d=l;e=p;j=k;g=g+1|0;if((ca|0)!=(g|0)){continue}break}Da=1;r=r+1|0;if((m|0)!=(r|0)){continue}break}}r=x[s+2>>1];if((r|0)!=65535){continue}break}}g=h}b=b+1|0;if((V|0)!=(b|0)){continue}break}}t[g|0]=0}a=S+fa|0;v[a>>2]=0;v[a+4>>2]=0-Da;a=1}xa=o+48|0;return a}function S$(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=0,m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,y=C(0),A=C(0),E=0,F=C(0),G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=0,U=0,V=C(0),W=0,X=0,Y=C(0),Z=0,_=C(0),$=C(0),aa=0,ba=C(0),ca=0,da=C(0),ea=C(0),fa=C(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=xa-192|0;xa=l;k=z[d+24>>2];F=z[d>>2];z[l+160>>2]=F;A=z[d+4>>2];z[l+164>>2]=A;n=z[d+8>>2];z[l+168>>2]=n;r=z[d+12>>2];z[l+172>>2]=r;y=z[d+16>>2];z[l+176>>2]=y;q=z[d+20>>2];z[l+180>>2]=q;M=C(k+i);z[l+184>>2]=M;d=0;d=z[b+4>>2]!=C(1)|z[b+8>>2]!=C(1)?d:z[b+12>>2]==C(1);m=x[h>>1];j=w[b+32|0];i=z[c+8>>2];H=z[c+24>>2];k=C(n-H);I=C(k+k);n=z[c>>2];Q=z[c+16>>2];k=C(F-Q);J=C(k+k);V=z[c+20>>2];k=C(A-V);O=C(k+k);k=z[c+4>>2];p=C(C(i*I)+C(C(n*J)+C(O*k)));F=z[c+12>>2];A=C(C(F*F)+C(-.5));_=C(C(i*p)+C(C(I*A)-C(F*C(C(n*O)-C(J*k)))));q=C(q-H);q=C(q+q);r=C(r-Q);r=C(r+r);y=C(y-V);y=C(y+y);Y=C(C(i*q)+C(C(n*r)+C(k*y)));$=C(C(i*Y)+C(C(q*A)-C(F*C(C(n*y)-C(r*k)))));z[l+152>>2]=C(_+$)*C(.5);R=C(C(k*p)+C(C(O*A)-C(F*C(C(i*J)-C(I*n)))));S=C(C(k*Y)+C(C(y*A)-C(F*C(C(i*r)-C(q*n)))));z[l+148>>2]=C(R+S)*C(.5);L=C(C(n*p)+C(C(J*A)-C(F*C(C(k*I)-C(O*i)))));q=C(C(n*Y)+C(C(r*A)-C(F*C(C(k*q)-C(y*i)))));z[l+144>>2]=C(L+q)*C(.5);I=z[e+8>>2];I=C(I+I);J=z[e>>2];J=C(J+J);O=z[e+4>>2];O=C(O+O);p=C(C(i*I)+C(C(n*J)+C(k*O)));z[l+136>>2]=C(i*p)+C(C(I*A)-C(F*C(C(n*O)-C(J*k))));z[l+132>>2]=C(k*p)+C(C(O*A)-C(F*C(C(i*J)-C(I*n))));z[l+128>>2]=C(n*p)+C(C(J*A)-C(F*C(C(k*I)-C(O*i))));z[l+120>>2]=M+C(C(D(C(_-$)))*C(.5));z[l+116>>2]=M+C(C(D(C(R-S)))*C(.5));z[l+112>>2]=M+C(C(D(C(L-q)))*C(.5));a:{if(!d){yX(l+8|0,c,b+4|0);d=v[l+32>>2];v[l+84>>2]=v[l+28>>2];v[l+88>>2]=d;d=v[l+40>>2];v[l+92>>2]=v[l+36>>2];v[l+96>>2]=d;z[l+108>>2]=z[l+52>>2];z[l+64>>2]=z[l+8>>2];d=v[l+16>>2];v[l+68>>2]=v[l+12>>2];v[l+72>>2]=d;d=v[l+24>>2];v[l+76>>2]=v[l+20>>2];v[l+80>>2]=d;d=v[l+48>>2];v[l+100>>2]=v[l+44>>2];v[l+104>>2]=d;d=xa-112|0;xa=d;V=z[l+152>>2];Y=z[l+136>>2];_=z[l+144>>2];$=z[l+128>>2];R=z[l+148>>2];S=z[l+132>>2];i=z[b+8>>2];k=z[b+4>>2];z[d+8>>2]=C(1)/z[b+12>>2];z[d+4>>2]=C(1)/i;z[d>>2]=C(1)/k;z[d+12>>2]=z[b+16>>2];z[d+16>>2]=z[b+20>>2];z[d+20>>2]=z[b+24>>2];z[d+24>>2]=z[b+28>>2];JX(d+32|0,d,d+12|0);i=z[l+120>>2];k=z[l+112>>2];n=z[l+116>>2];F=z[d- -64>>2];A=z[d+52>>2];M=z[d+56>>2];I=z[d+32>>2];J=z[d+44>>2];O=z[d+40>>2];p=z[l+144>>2];q=z[d+36>>2];r=z[l+148>>2];y=z[d+48>>2];H=z[l+152>>2];Q=z[d+60>>2];L=C(C(C(p*q)+C(r*y))+C(H*Q));z[l+148>>2]=L;ba=C(C(C(p*O)+C(r*A))+C(H*F));z[l+152>>2]=ba;p=C(C(C(p*I)+C(r*J))+C(H*M));z[l+144>>2]=p;z[l+120>>2]=C(C(D(C(O*k)))+C(D(C(n*A))))+C(D(C(i*F)));z[l+116>>2]=C(C(D(C(q*k)))+C(D(C(n*y))))+C(D(C(i*Q)));z[l+112>>2]=C(C(D(C(I*k)))+C(D(C(J*n))))+C(D(C(M*i)));i=C(_+C($*f));k=C(R+C(S*f));n=C(C(O*i)+C(A*k));A=C(V+C(Y*f));n=C(C(n+C(F*A))-ba);z[l+136>>2]=n;F=C(C(C(C(i*q)+C(k*y))+C(A*Q))-L);z[l+132>>2]=F;A=C(C(C(C(i*I)+C(k*J))+C(A*M))-p);z[l+128>>2]=A;i=C(0);xa=d+112|0;k=C(K(C(C(n*n)+C(C(A*A)+C(F*F)))));if(!(k>2]=n*i;z[l+132>>2]=F*i;z[l+128>>2]=A*i;i=k}k=C(i/f);break a}z[l+108>>2]=H;z[l+104>>2]=V;M=C(k+k);I=C(M*i);A=C(n+n);J=C(F*A);z[l+92>>2]=I-J;z[l+84>>2]=J+I;n=C(C(1)-C(n*A));I=C(k*M);z[l+96>>2]=n-I;p=n;n=C(i+i);J=C(i*n);z[l+80>>2]=p-J;z[l+100>>2]=Q;i=C(A*i);M=C(F*M);z[l+88>>2]=i+M;k=C(A*k);n=C(F*n);z[l+76>>2]=k-n;z[l+72>>2]=i-M;z[l+68>>2]=k+n;z[l+64>>2]=C(C(1)-I)-J;i=f;k=C(1)}o=l+144|0;s=l+128|0;d=C(C(z[b+4>>2]*z[b+8>>2])*z[b+12>>2])>2]=2;h=x[h>>1];z[N+16>>2]=k;t[N+12|0]=d;d=0;u[N+10>>1]=0;u[N+8>>1]=h;h=j&2;t[N+48|0]=h>>>1;v[N+44>>2]=e;v[N+40>>2]=l+160;z[N+36>>2]=f+C(.0010000000474974513);v[N+32>>2]=1073741824;z[N+28>>2]=f;v[N+24>>2]=l- -64;v[N+20>>2]=g;v[N>>2]=143788;t[N+49|0]=z[l+160>>2]!=z[l+172>>2]|z[l+164>>2]!=z[l+176>>2]?d:z[l+168>>2]==z[l+180>>2];z[g+40>>2]=f;L$(o,s,i,1,a,N,l+112|0);sa=(h|m&128)!=0;o=xa-96|0;xa=o;la=w[N+10|0];b:{if(!la){break b}if(w[N+11|0]){c:{d:{if(!(w[N+9|0]&2)){b=v[N+44>>2];u[g+12>>1]=1026;break d}a=v[N+40>>2];i=z[a+16>>2];k=z[a+20>>2];n=z[a>>2];F=z[a+12>>2];f=z[l+184>>2];A=z[a+4>>2];M=z[a+8>>2];v[o+76>>2]=0;z[o+72>>2]=k;z[o+68>>2]=i;v[o+60>>2]=0;z[o+56>>2]=M;z[o+52>>2]=A;z[o+80>>2]=f;t[o+32|0]=1;v[o+28>>2]=4;z[o+64>>2]=F;z[o+48>>2]=n;z[o+24>>2]=f;z[o+20>>2]=f;z[o+16>>2]=f;v[o+12>>2]=0;z[o>>2]=C(n+F)*C(.5);z[o+8>>2]=C(M+k)*C(.5);z[o+4>>2]=C(A+i)*C(.5);$=z[a+24>>2];F=C(0);A=C(0);M=C(0);I=C(0);J=C(0);O=C(0);j=xa-5696|0;xa=j;ma=v[v[b+36>>2]+56>>2];f=z[b+12>>2];i=z[b+8>>2];k=z[b+4>>2];v[j+1484>>2]=0;z[j+1456>>2]=$*C(1.149999976158142);na=b+4|0;yX(j+1408|0,c,na);v[j+1400>>2]=0;v[j+1392>>2]=0;v[j+1396>>2]=0;Aw(j+1392|0,128);ba=C(f*C(k*i));d=268435455;e:{f:{while(1){g:{v[j+1396>>2]=0;a=v[o+52>>2];e=v[o+48>>2];z[j+1352>>2]=z[o+56>>2];v[j+1344>>2]=e;v[j+1348>>2]=a;a=v[o+68>>2];e=v[o+64>>2];f=z[o+72>>2];z[j+1368>>2]=$;z[j+1364>>2]=f;v[j+1356>>2]=e;v[j+1360>>2]=a;e=j+1280|0;xX(j+1344|0,e);a=v[b+36>>2];r_(j,e,c,na);v[j+5584>>2]=141620;v[j+5592>>2]=j+1392;v[j+5588>>2]=2;Ba[v[(x[a+4>>1]<<2)+141640>>2]](a,j,j+5584|0,1,1);h=v[j+1396>>2];if(!h){m=0;if(ga){break g}break e}a=h+31|0;if(a>>>0<=31){m=0;if(ga){break g}break e}oa=v[j+1392>>2];ta=a>>>5|0;f=C(34028234663852886e22);ca=0;e=h;ha=0;while(1){ia=ca<<5;a=h-ia|0;ja=a>>>0<32?a:32;h:{if(!ja){v[j+5688>>2]=v[j+1384>>2];a=v[j+1380>>2];v[j+5680>>2]=v[j+1376>>2];v[j+5684>>2]=a;W=0;break h}P=e>>>0<32?e:32;a=v[b+36>>2];T=w[a+64|0]&2;m=v[a+24>>2];X=v[a+28>>2];s=0;i=z[j+1452>>2];k=z[j+1448>>2];n=z[j+1444>>2];p=z[j+1440>>2];q=z[j+1436>>2];r=z[j+1432>>2];y=z[j+1428>>2];H=z[j+1424>>2];Q=z[j+1420>>2];V=z[j+1416>>2];Y=z[j+1412>>2];_=z[j+1408>>2];while(1){W=v[(s+ia<<2)+oa>>2];a=B(s,40)+j|0;i:{if(T){G=X+B(W,6)|0;E=x[G+4>>1];U=x[G+2>>1];G=x[G>>1];break i}G=X+B(W,12)|0;E=v[G+8>>2];U=v[G+4>>2];G=v[G>>2]}G=B(G,12)+m|0;R=z[G>>2];S=z[G+4>>2];L=z[G+8>>2];z[a+8>>2]=C(C(C(R*V)+C(S*y))+C(L*p))+i;z[a+4>>2]=C(C(C(R*Y)+C(S*H))+C(L*q))+k;z[a>>2]=C(C(C(R*_)+C(S*Q))+C(L*r))+n;Z=ba>2];S=z[G+4>>2];L=z[G+8>>2];z[a+20>>2]=i+C(C(C(V*R)+C(y*S))+C(p*L));z[a+16>>2]=k+C(C(C(Y*R)+C(H*S))+C(q*L));z[a+12>>2]=n+C(C(C(_*R)+C(Q*S))+C(r*L));U=m+B(Z?U:E,12)|0;R=z[U>>2];S=z[U+4>>2];L=z[U+8>>2];z[a+32>>2]=i+C(C(C(V*R)+C(y*S))+C(p*L));z[a+28>>2]=k+C(C(C(Y*R)+C(H*S))+C(q*L));z[a+24>>2]=n+C(C(C(_*R)+C(Q*S))+C(r*L));t[a+36|0]=ma?w[W+ma|0]:56;s=s+1|0;if((P|0)!=(s|0)){continue}break}v[j+5688>>2]=v[j+1384>>2];a=v[j+1380>>2];v[j+5680>>2]=v[j+1376>>2];v[j+5684>>2]=a;W=0;U=0;if(!ja){break h}while(1){v[j+1484>>2]=0;t[j+5616|0]=0;v[j+5608>>2]=2139095039;v[j+5612>>2]=5;v[j+5584>>2]=0;v[j+5588>>2]=0;v[j+5592>>2]=0;v[j+5596>>2]=0;v[j+5600>>2]=1017370378;v[j+5604>>2]=2139095039;a=B(U,40)+j|0;i=z[a>>2];k=z[a+4>>2];n=z[a+8>>2];v[j+5644>>2]=0;z[j+5640>>2]=n;z[j+5636>>2]=k;z[j+5632>>2]=i;p=z[a+12>>2];q=z[a+16>>2];r=z[a+20>>2];v[j+5660>>2]=0;z[j+5656>>2]=r;z[j+5652>>2]=q;z[j+5648>>2]=p;y=z[a+24>>2];H=z[a+28>>2];Q=z[a+32>>2];v[j+5676>>2]=0;z[j+5672>>2]=Q;z[j+5668>>2]=H;z[j+5664>>2]=y;E=w[a+36|0];j:{if(!sa){V=C(p-i);H=C(H-k);y=C(y-i);q=C(q-k);p=C(C(V*H)-C(y*q));L=p;R=C(p*p);p=q;q=C(Q-n);r=C(r-n);p=C(C(p*q)-C(H*r));q=C(C(r*y)-C(q*V));r=C(C(1)/C(K(C(R+C(C(p*p)+C(q*q))))));if(C(C(C(L*r)*C(z[o+8>>2]-n))+C(C(C(p*r)*C(z[o>>2]-i))+C(C(q*r)*C(z[o+4>>2]-k))))>2];v[m+128>>2]=v[s+48>>2];v[m+132>>2]=P;P=v[s+60>>2];v[m+136>>2]=v[s+56>>2];v[m+140>>2]=P;P=v[s+76>>2];v[m+120>>2]=v[s+72>>2];v[m+124>>2]=P;P=s- -64|0;T=v[P+4>>2];v[m+112>>2]=v[P>>2];v[m+116>>2]=T;T=v[s+92>>2];v[m+104>>2]=v[s+88>>2];v[m+108>>2]=T;T=v[s+84>>2];v[m+96>>2]=v[s+80>>2];v[m+100>>2]=T;p=z[s+80>>2];q=z[P>>2];r=z[s+68>>2];y=z[s+88>>2];H=z[s+84>>2];i=z[s+52>>2];k=z[s+56>>2];Q=z[s+72>>2];n=z[s+48>>2];v[m+92>>2]=0;q=C(q-n);H=C(H-i);n=C(p-n);p=C(r-i);i=C(C(q*H)-C(n*p));L=i;r=C(i*i);i=p;p=C(y-k);k=C(Q-k);i=C(C(i*p)-C(H*k));k=C(C(k*n)-C(p*q));n=C(C(1)/C(K(C(r+C(C(i*i)+C(k*k))))));z[m+88>>2]=L*n;z[m+84>>2]=k*n;z[m+80>>2]=i*n;s=j+1456|0;i=z[s>>2];P=o+48|0;T=o- -64|0;L1(m+16|0,P,T,m+128|0,m+112|0,m+96|0,m- -64|0,m+48|0,m+32|0);n=z[m+16>>2];if(n>2];if(k>2];if(iC(.9999989867210388))){break n}if(!(E&48)){break l}break m}i=z[m+32>>2];if(k>C(.9999989867210388)){if(E&24){break m}if(i=C(.9998999834060669)){break m}break l}if(!(E&32)){break l}}if(n==C(0)){E=v[m+92>>2];v[m+8>>2]=v[m+88>>2];v[m+12>>2]=E;E=v[m+84>>2];v[m>>2]=v[m+80>>2];v[m+4>>2]=E;break k}n=z[o+56>>2];r=z[o+72>>2];p=z[o+52>>2];H=z[o+68>>2];q=z[o+48>>2];Q=z[o+64>>2];v[m+12>>2]=0;L=n;y=C(r-n);n=z[m+64>>2];r=C(C(1)-C(k+i));y=C(C(L+C(y*n))-C(C(r*z[m+136>>2])+C(C(k*z[m+120>>2])+C(i*z[m+104>>2]))));q=C(C(q+C(C(Q-q)*n))-C(C(z[m+128>>2]*r)+C(C(k*z[m+112>>2])+C(i*z[m+96>>2]))));i=C(C(p+C(C(H-p)*n))-C(C(z[m+132>>2]*r)+C(C(k*z[m+116>>2])+C(i*z[m+100>>2]))));k=C(C(1)/C(K(C(C(y*y)+C(C(q*q)+C(i*i))))));z[m+8>>2]=y*k;z[m+4>>2]=i*k;z[m>>2]=q*k;break k}E=v[m+92>>2];v[m+8>>2]=v[m+88>>2];v[m+12>>2]=E;E=v[m+84>>2];v[m>>2]=v[m+80>>2];v[m+4>>2]=E}E=m+128|0;Z=m+112|0;aa=m+96|0;K1(E,Z,aa,m+80|0,m,a,P,T,s,X,G);J1(P,T,s,m,a,E,Z,X,G);J1(P,T,s,m,a,Z,aa,X,G);J1(P,T,s,m,a,E,aa,X,G)}xa=m+144|0;E=v[j+1484>>2];if(!E){break j}s=0;i=z[j+1532>>2];o:{if((E|0)==1){break o}G=E-1|0;X=G&3;W=0;m=1;if(E-2>>>0>=3){aa=G&-4;E=0;while(1){k=z[((m<<6)+j|0)+1532>>2];G=k>2];i=G?k:i;P=n>2];i=P?n:i;T=k>2];i=T?k:i;Z=n>2];E=ki)){break j}d=(j+1488|0)+(s<<6)|0;F=z[d+16>>2];A=z[d+32>>2];M=z[d+24>>2];I=z[d+20>>2];J=z[d+40>>2];O=z[d+36>>2];d=a;f=i}U=U+1|0;if((ja|0)!=(U|0)){continue}break}}v[j+1384>>2]=v[j+5688>>2];a=v[j+5684>>2];v[j+1376>>2]=v[j+5680>>2];v[j+1380>>2]=a;e=e-32|0;ha=W|ha;ca=ca+1|0;if((ta|0)!=(ca|0)){continue}break}if(!(ha&1)){m=0;if(ga){break g}break e}d=v[(d<<2)+oa>>2];f=C(f-z[o+80>>2]);if(!(f<=C(0))){if(ka){break g}z[g+36>>2]=J;z[g+32>>2]=O;z[g+28>>2]=A;z[g+24>>2]=M;z[g+20>>2]=I;z[g+16>>2]=F;v[g+40>>2]=0;v[g+8>>2]=d;break f}v[o+12>>2]=0;v[o+60>>2]=0;v[o+76>>2]=0;i=z[o+8>>2];k=C(J*f);n=C(i-k);z[o+8>>2]=n;p=z[o+4>>2];q=C(O*f);r=C(p-q);z[o+4>>2]=r;y=z[o>>2];f=C(A*f);H=C(y-f);z[o>>2]=H;y=C(H-y);z[o+48>>2]=y+z[o+48>>2];p=C(r-p);z[o+52>>2]=p+z[o+52>>2];i=C(n-i);z[o+56>>2]=i+z[o+56>>2];z[o+72>>2]=i+z[o+72>>2];z[o+68>>2]=p+z[o+68>>2];z[o+64>>2]=y+z[o+64>>2];da=C(da-k);ea=C(ea-q);fa=C(fa-f);ga=1;ka=ka+1|0;if((ka|0)!=4){continue}}break}z[g+24>>2]=M;z[g+20>>2]=I;z[g+16>>2]=F;v[g+8>>2]=d;f=C(K(C(C(da*da)+C(C(fa*fa)+C(ea*ea)))));z[g+40>>2]=-f;i=C(C(1)/f);a=f>C(0);z[g+36>>2]=a?C(da*i):C(0);z[g+32>>2]=a?C(ea*i):C(0);z[g+28>>2]=a?C(fa*i):C(0)}m=1}a=v[j+1400>>2];p:{if((a|0)<0|!(a&2147483647)){break p}a=v[j+1392>>2];if(!a){break p}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=j+5696|0;b=v[N+44>>2];u[g+12>>1]=1026;if(m){break c}}v[g+40>>2]=0;f=z[b>>2];i=z[b+4>>2];z[g+36>>2]=-z[b+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f;break b}if(z[g+40>>2]==C(0)){f=z[b>>2];i=z[b+4>>2];z[g+36>>2]=-z[b+8>>2];z[g+32>>2]=-i;z[g+28>>2]=-f}u[g+12>>1]=1027;break b}u[g+12>>1]=1027}xa=o+96|0;xa=l+192|0;return(la|0)!=0|0}function vv(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=C(0),m=C(0),n=0,o=C(0),p=0,q=0,r=C(0),s=C(0),u=C(0),y=0,A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;i=xa-11328|0;xa=i;E=z[d+20>>2];F=z[d+24>>2];M=z[c+20>>2];G=z[c+24>>2];p=v[f>>2];l=z[d>>2];o=z[d+4>>2];r=z[d+8>>2];m=z[d+12>>2];O=z[d+16>>2];I=z[c>>2];s=z[c+4>>2];D=z[c+8>>2];u=z[c+12>>2];H=z[c+16>>2];P=z[a+4>>2];z[i+11312>>2]=P;U=z[e>>2];z[i+11296>>2]=U;v[i+11292>>2]=0;z[i+11288>>2]=G;z[i+11284>>2]=M;z[i+11280>>2]=H;z[i+11276>>2]=u;z[i+11272>>2]=D;z[i+11268>>2]=s;z[i+11264>>2]=I;v[i+11260>>2]=0;z[i+11256>>2]=F;z[i+11252>>2]=E;z[i+11248>>2]=O;z[i+11244>>2]=m;z[i+11240>>2]=r;z[i+11236>>2]=o;z[i+11232>>2]=l;Q=C(C(C(D*l)-C(r*I))+C(C(s*m)-C(u*o)));R=C(C(C(s*r)-C(o*D))+C(C(I*m)-C(u*l)));J=C(C(C(I*o)-C(l*s))+C(C(D*m)-C(u*r)));V=C(-l);I=C(C(u*m)-C(C(C(I*V)-C(s*o))-C(r*D)));s=C(H-O);D=C(M-E);u=C(G-F);E=C(C(C(V*s)-C(D*o))-C(r*u));F=C(C(m*m)+C(-.5));M=C(C(C(F*s)+C(m*C(C(r*D)-C(o*u))))-C(l*E));M=C(M+M);G=C(M-z[p+16>>2]);G=G>C(0)?G:C(-G);O=C(C(C(F*D)+C(m*C(C(l*u)-C(r*s))))-C(o*E));O=C(O+O);H=C(O-z[p+20>>2]);H=H>C(0)?H:C(-H);H=H<=G?G:H;T=G;m=C(C(C(m*C(C(o*s)-C(l*D)))+C(F*u))-C(r*E));G=C(m+m);m=C(G-z[p+24>>2]);m=(m>C(0)?m:C(-m))>=C(0)?T:C(0);a:{if(C(C(I*z[p+12>>2])+C(C(J*z[p+8>>2])+C(C(R*z[p>>2])+C(Q*z[p+4>>2]))))>2]=P*C(.0010000000474974513);a=v[b+40>>2];o=z[d+8>>2];D=z[d+20>>2];F=z[c+20>>2];r=z[d+4>>2];u=z[d+24>>2];E=z[c+24>>2];m=z[d+12>>2];c=i+11200|0;v[c>>2]=0;v[c+4>>2]=1065353216;c=i+11192|0;v[c>>2]=0;v[c+4>>2]=0;c=i+11184|0;v[c>>2]=0;v[c+4>>2]=1065353216;c=i+11176|0;v[c>>2]=0;v[c+4>>2]=0;c=i+11168|0;v[c>>2]=1065353216;v[c+4>>2]=1065353216;c=i+11152|0;v[c>>2]=1065353216;v[c+4>>2]=0;t[i+11208|0]=0;v[i+11160>>2]=0;v[i+11164>>2]=0;v[i+11144>>2]=0;v[i+11148>>2]=0;v[i+11136>>2]=1065353216;v[i+11140>>2]=0;u=C(E-u);u=C(u+u);E=C(s+s);s=C(F-D);F=C(s+s);H=C(C(o*u)+C(C(l*E)+C(r*F)));T=C(C(m*m)+C(-.5));s=C(C(o*H)+C(C(u*T)-C(m*C(C(l*F)-C(E*r)))));D=C(C(r*H)+C(C(F*T)-C(m*C(C(o*E)+C(u*V)))));r=C(C(l*H)+C(C(E*T)-C(m*C(C(r*u)-C(F*o)))));u=C(1);c=z[b+4>>2]==C(1)&z[b+8>>2]==C(1)&z[b+12>>2]==C(1);if(!c){JX(i+11136|0,b+4|0,b+16|0)}v[p+28>>2]=0;z[p+24>>2]=G;z[p+20>>2]=O;z[p+16>>2]=M;z[p+12>>2]=I;z[p+8>>2]=J;z[p+4>>2]=Q;z[p>>2]=R;t[p+62|0]=0;t[i+11120|0]=1;v[i+11128>>2]=0;v[i+11132>>2]=1088;b=i+6768|0;v[i+11124>>2]=b;d=v[a+56>>2];v[i+1012>>2]=0;t[i+160|0]=c;v[i+156>>2]=d;v[i+148>>2]=2;v[i+144>>2]=144644;v[i+152>>2]=i+11136;q=z1(i+1024|0,i+11296|0,i+11216|0,i+11264|0,i+11232|0,p,g,b,h);v[i+4668>>2]=0;z[i+4664>>2]=s;z[i+4660>>2]=D;z[i+4656>>2]=r;b=i+6760|0;v[b>>2]=0;v[b+4>>2]=64;Y=i+4704|0;v[i+6756>>2]=Y;t[i+6752|0]=1;d=v[i+11316>>2];b=i+4672|0;v[b>>2]=v[i+11312>>2];v[b+4>>2]=d;d=v[i+11324>>2];b=i+4680|0;v[b>>2]=v[i+11320>>2];v[b+4>>2]=d;l=C(z[i+11312>>2]+z[i+11296>>2]);z[i+4688>>2]=l*l;z[i+136>>2]=s;z[i+132>>2]=D;z[i+128>>2]=r;l=C(P+U);z[i+120>>2]=l;z[i+116>>2]=l;z[i+112>>2]=l;v[i+104>>2]=1065353216;v[i+88>>2]=1065353216;v[i+92>>2]=0;v[i+96>>2]=0;v[i+100>>2]=0;v[i+80>>2]=0;v[i+84>>2]=0;v[i+72>>2]=1065353216;v[i+76>>2]=0;J=C(0);m=l;Q=C(0);I=C(0);P=C(1);R=C(0);E=C(0);F=C(0);M=C(1);if(c){o=l}else{nZ(i+11136|0,i+128|0,i+112|0,i+72|0);m=z[i+112>>2];s=z[i+136>>2];D=z[i+132>>2];r=z[i+128>>2];u=z[i+104>>2];J=z[i+100>>2];Q=z[i+96>>2];I=z[i+92>>2];P=z[i+88>>2];R=z[i+84>>2];E=z[i+80>>2];F=z[i+76>>2];M=z[i+72>>2];l=z[i+116>>2];o=z[i+120>>2]}z[i+56>>2]=o;z[i+52>>2]=l;z[i+44>>2]=s;z[i+40>>2]=D;z[i+32>>2]=u;z[i+28>>2]=J;z[i+20>>2]=I;z[i+16>>2]=P;z[i+48>>2]=m;z[i+36>>2]=r;z[i+24>>2]=Q;z[i+12>>2]=R;z[i+8>>2]=E;z[i+4>>2]=F;z[i>>2]=M;Ba[v[(x[a+4>>1]<<2)+144668>>2]](a,i,i+144|0,1,1);h=v[i+1012>>2];if(h){a=i+740|0;c=i+932|0;d=i+996|0;e=i+164|0;while(1){G1(q,e,v[c>>2],w[d|0],a);d=d+1|0;c=c+4|0;a=a+12|0;e=e+36|0;h=h-1|0;if(h){continue}break}v[i+1012>>2]=0}b=0;f=0;d=0;y=xa+-64|0;xa=y;W=v[q+5736>>2];if(W){N=v[q+5732>>2];S=32;j=xa-48|0;xa=j;t[j+12|0]=0;a=j-128|0;xa=a;v[j+8>>2]=a;A=W-1|0;b:{if((A|0)<=0){break b}while(1){c:{if((b|0)>=(A|0)){break c}while(1){if(A-b>>>0<=4){while(1){e=b;b=e+1|0;c=b;k=e;while(1){k=z[N+(c<<5)>>2]>=z[N+(k<<5)>>2]?k:c;h=(c|0)<(A|0);c=c+1|0;if(h){continue}break}if((e|0)!=(k|0)){h=N+(k<<5)|0;c=h;k=v[c+28>>2];v[j+40>>2]=v[c+24>>2];v[j+44>>2]=k;k=v[c+20>>2];v[j+32>>2]=v[c+16>>2];v[j+36>>2]=k;k=v[c+4>>2];v[j+16>>2]=v[c>>2];v[j+20>>2]=k;k=v[c+12>>2];v[j+24>>2]=v[c+8>>2];v[j+28>>2]=k;c=N+(e<<5)|0;v[h+16>>2]=v[c+16>>2];e=v[c+12>>2];v[h+8>>2]=v[c+8>>2];v[h+12>>2]=e;e=v[c+4>>2];v[h>>2]=v[c>>2];v[h+4>>2]=e;v[c+16>>2]=v[j+32>>2];e=v[j+20>>2];v[c>>2]=v[j+16>>2];v[c+4>>2]=e;e=v[j+28>>2];v[c+8>>2]=v[j+24>>2];v[c+12>>2]=e}if((b|0)!=(A|0)){continue}break c}}c=N+(b<<5)|0;m=z[c>>2];e=N+((b+A|0)/2<<5)|0;if(!(m<=z[e>>2])){h=v[c+28>>2];v[j+40>>2]=v[c+24>>2];v[j+44>>2]=h;h=v[c+20>>2];v[j+32>>2]=v[c+16>>2];v[j+36>>2]=h;h=v[c+4>>2];v[j+16>>2]=v[c>>2];v[j+20>>2]=h;h=v[c+12>>2];v[j+24>>2]=v[c+8>>2];v[j+28>>2]=h;v[c+16>>2]=v[e+16>>2];h=v[e+12>>2];v[c+8>>2]=v[e+8>>2];v[c+12>>2]=h;h=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=h;v[e+16>>2]=v[j+32>>2];h=v[j+20>>2];v[e>>2]=v[j+16>>2];v[e+4>>2]=h;h=v[j+28>>2];v[e+8>>2]=v[j+24>>2];v[e+12>>2]=h;m=z[c>>2]}h=N+(A<<5)|0;l=z[h>>2];if(!(m<=l)){k=v[c+28>>2];v[j+40>>2]=v[c+24>>2];v[j+44>>2]=k;k=v[c+20>>2];v[j+32>>2]=v[c+16>>2];v[j+36>>2]=k;k=v[c+4>>2];v[j+16>>2]=v[c>>2];v[j+20>>2]=k;k=v[c+12>>2];v[j+24>>2]=v[c+8>>2];v[j+28>>2]=k;v[c+16>>2]=v[h+16>>2];k=v[h+12>>2];v[c+8>>2]=v[h+8>>2];v[c+12>>2]=k;k=v[h+4>>2];v[c>>2]=v[h>>2];v[c+4>>2]=k;v[h+16>>2]=v[j+32>>2];c=v[j+20>>2];v[h>>2]=v[j+16>>2];v[h+4>>2]=c;c=v[j+28>>2];v[h+8>>2]=v[j+24>>2];v[h+12>>2]=c;l=z[h>>2]}if(!(l>=z[e>>2])){c=v[e+28>>2];v[j+40>>2]=v[e+24>>2];v[j+44>>2]=c;c=v[e+20>>2];v[j+32>>2]=v[e+16>>2];v[j+36>>2]=c;c=v[e+4>>2];v[j+16>>2]=v[e>>2];v[j+20>>2]=c;c=v[e+12>>2];v[j+24>>2]=v[e+8>>2];v[j+28>>2]=c;v[e+16>>2]=v[h+16>>2];c=v[h+12>>2];v[e+8>>2]=v[h+8>>2];v[e+12>>2]=c;c=v[h+4>>2];v[e>>2]=v[h>>2];v[e+4>>2]=c;v[h+16>>2]=v[j+32>>2];c=v[j+20>>2];v[h>>2]=v[j+16>>2];v[h+4>>2]=c;c=v[j+28>>2];v[h+8>>2]=v[j+24>>2];v[h+12>>2]=c}c=v[e+20>>2];v[j+32>>2]=v[e+16>>2];v[j+36>>2]=c;c=v[e+28>>2];v[j+40>>2]=v[e+24>>2];v[j+44>>2]=c;c=v[e+4>>2];v[j+16>>2]=v[e>>2];v[j+20>>2]=c;k=A-1|0;n=N+(k<<5)|0;c=n;h=v[c+4>>2];v[e>>2]=v[c>>2];v[e+4>>2]=h;c=v[e+12>>2];v[j+24>>2]=v[e+8>>2];v[j+28>>2]=c;v[e+16>>2]=v[n+16>>2];c=v[n+12>>2];v[e+8>>2]=v[n+8>>2];v[e+12>>2]=c;v[n+16>>2]=v[j+32>>2];c=v[j+20>>2];v[n>>2]=v[j+16>>2];v[n+4>>2]=c;c=v[j+28>>2];v[n+8>>2]=v[j+24>>2];v[n+12>>2]=c;c=b;while(1){l=z[n>>2];while(1){h=c;c=c+1|0;e=N+(c<<5)|0;if(!(l<=z[e>>2])){continue}break}while(1){k=k-1|0;L=N+(k<<5)|0;if(!(l>=z[L>>2])){continue}break}if((c|0)<(k|0)){h=v[e+28>>2];v[j+40>>2]=v[e+24>>2];v[j+44>>2]=h;h=v[e+20>>2];v[j+32>>2]=v[e+16>>2];v[j+36>>2]=h;h=v[e+4>>2];v[j+16>>2]=v[e>>2];v[j+20>>2]=h;h=v[e+12>>2];v[j+24>>2]=v[e+8>>2];v[j+28>>2]=h;v[e+16>>2]=v[L+16>>2];h=v[L+12>>2];v[e+8>>2]=v[L+8>>2];v[e+12>>2]=h;h=v[L+4>>2];v[e>>2]=v[L>>2];v[e+4>>2]=h;v[L+16>>2]=v[j+32>>2];e=v[j+20>>2];v[L>>2]=v[j+16>>2];v[L+4>>2]=e;e=v[j+28>>2];v[L+8>>2]=v[j+24>>2];v[L+12>>2]=e;continue}break}k=v[e+28>>2];v[j+40>>2]=v[e+24>>2];v[j+44>>2]=k;k=v[e+20>>2];v[j+32>>2]=v[e+16>>2];v[j+36>>2]=k;k=v[e+4>>2];v[j+16>>2]=v[e>>2];v[j+20>>2]=k;k=v[e+12>>2];v[j+24>>2]=v[e+8>>2];v[j+28>>2]=k;v[e+16>>2]=v[n+16>>2];k=v[n+12>>2];v[e+8>>2]=v[n+8>>2];v[e+12>>2]=k;k=v[n+4>>2];v[e>>2]=v[n>>2];v[e+4>>2]=k;v[n+16>>2]=v[j+32>>2];e=v[j+20>>2];v[n>>2]=v[j+16>>2];v[n+4>>2]=e;e=v[j+28>>2];v[n+8>>2]=v[j+24>>2];v[n+12>>2]=e;d:{if((c-b|0)<(A-c|0)){if(S-1>>>0<=f>>>0){e=S<<3;if(e){c=v[37696];k=c+12|0;c=(_=k,$=e,aa=Ba[v[v[c>>2]+20>>2]](c)|0?43241:63804,ba=17218,ca=155,Z=v[v[k>>2]+8>>2],Ba[Z](_|0,$|0,aa|0,ba|0,ca|0)|0)}else{c=0}S=S<<1;c=I9(c,a,f<<2);e=d;d=1;if(!(!e|!a)){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,a)}a=c}c=(f<<2)+a|0;v[c>>2]=b;v[c+4>>2]=h;b=h+2|0;break d}if(S-1>>>0<=f>>>0){e=S<<3;if(e){c=v[37696];k=c+12|0;c=(ca=k,ba=e,aa=Ba[v[v[c>>2]+20>>2]](c)|0?43241:63804,$=17218,_=155,Z=v[v[k>>2]+8>>2],Ba[Z](ca|0,ba|0,aa|0,$|0,_|0)|0)}else{c=0}S=S<<1;c=I9(c,a,f<<2);e=d;d=1;if(!(!e|!a)){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,a)}a=c}c=(f<<2)+a|0;v[c>>2]=h+2;v[c+4>>2]=A;A=h}f=f+2|0;if((b|0)<(A|0)){continue}break}}if(f){c=f-2|0;b=v[(c<<2)+a>>2];A=v[((f<<2)+a|0)-4>>2];f=c;continue}break}if(!d|!a){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}if(w[j+12|0]){v9(v[j+8>>2])}xa=j+48|0;j=q+2336|0;N=v[v[q+3620>>2]+4356>>2];while(1){b=v[q+3616>>2];e:{if((b|0)==128){break e}c=N+B(v[(v[q+5732>>2]+(X<<5)|0)+16>>2],60)|0;L=w[c+56|0];A=v[c+44>>2];k=v[c+36>>2];f=v[c+40>>2];h=f>>>0>k>>>0?k:f;d=f>>>0>>0?k:f;a=h<<16|d;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;e=(q+((a>>>16^a)&127)|0)+3488|0;a=w[e|0];f:{if((a|0)!=255){while(1){e=j+(a<<3)|0;n=0;if(!((h|0)!=v[e>>2]|(d|0)!=v[e+4>>2])){break f}e=(a+q|0)+3360|0;a=w[e|0];if((a|0)!=255){continue}break}}t[e|0]=b;t[(b+q|0)+3360|0]=255;a=v[q+3616>>2];v[q+3616>>2]=a+1;b=j+(a<<3)|0;v[b>>2]=h;v[b+4>>2]=d;b=v[q+3616>>2];n=1}d=n;if((b|0)==128){break e}h=f>>>0>>0?f:A;f=f>>>0>A>>>0?f:A;a=h<<16|f;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;e=(q+((a>>>16^a)&127)|0)+3488|0;a=w[e|0];g:{if((a|0)!=255){while(1){e=j+(a<<3)|0;n=0;if(!((h|0)!=v[e>>2]|(f|0)!=v[e+4>>2])){break g}e=(a+q|0)+3360|0;a=w[e|0];if((a|0)!=255){continue}break}}t[e|0]=b;t[(b+q|0)+3360|0]=255;a=v[q+3616>>2];v[q+3616>>2]=a+1;b=j+(a<<3)|0;v[b>>2]=h;v[b+4>>2]=f;b=v[q+3616>>2];n=1}a=n;if((b|0)==128){break e}f=d;h=a;d=k>>>0>>0?A:k;n=k>>>0>A>>>0?A:k;a=d|n<<16;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;e=(q+((a>>>16^a)&127)|0)+3488|0;a=w[e|0];if((a|0)!=255){while(1){e=j+(a<<3)|0;if((n|0)==v[e>>2]&(d|0)==v[e+4>>2]){break e}e=(a+q|0)+3360|0;a=w[e|0];if((a|0)!=255){continue}break}}t[e|0]=b;t[(b+q|0)+3360|0]=255;a=v[q+3616>>2];v[q+3616>>2]=a+1;b=j+(a<<3)|0;v[b>>2]=n;v[b+4>>2]=d;if(!(f&h)|!L){break e}a=c;b=v[c+4>>2];c=v[c>>2];l=z[a+8>>2];v[y+60>>2]=0;z[y+56>>2]=l;v[y+48>>2]=c;v[y+52>>2]=b;l=z[a+20>>2];b=v[a+16>>2];c=v[a+12>>2];v[y+44>>2]=0;z[y+40>>2]=l;v[y+32>>2]=c;v[y+36>>2]=b;z[y+16>>2]=K(z[a+24>>2]);a=v[a+48>>2];b=v[y+20>>2];v[y>>2]=v[y+16>>2];v[y+4>>2]=b;b=v[y+28>>2];v[y+8>>2]=v[y+24>>2];v[y+12>>2]=b;H1(q,y+48|0,y+32|0,y,a)}X=X+1|0;if((X|0)!=(W|0)){continue}break}}xa=y- -64|0;A1(q,1,0);v[i+144>>2]=144644;a=v[i+6764>>2];h:{if((a|0)<0|!(a&2147483647)){break h}a=v[i+6756>>2];if((a|0)==(Y|0)|!a){break h}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[i+11132>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[i+11124>>2];if((a|0)==(i+6768|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}a=0;v[i+204>>2]=0;z[i+200>>2]=G;z[i+196>>2]=O;v[i+188>>2]=0;v[i+172>>2]=0;m=C(Q+Q);o=C(J*m);l=C(R+R);r=C(I*l);z[i+180>>2]=o-r;z[i+168>>2]=o+r;o=C(C(1)-C(R*l));r=C(Q*m);z[i+184>>2]=o-r;G=o;o=C(J+J);s=C(J*o);z[i+164>>2]=G-s;z[i+192>>2]=M;v[i+156>>2]=0;J=C(J*l);m=C(I*m);z[i+176>>2]=J+m;l=C(Q*l);o=C(I*o);z[i+160>>2]=l-o;z[i+152>>2]=J-m;z[i+148>>2]=l+o;z[i+144>>2]=C(C(1)-r)-s;z[i+11136>>2]=P*C(.05000000074505806);z[i>>2]=P+U;if(!w[p+62|0]){break a}while(1){c=a+p|0;b=w[c+56|0];d=B(b,400)+p|0;B2(i+6768|0,d- -64|0,i+144|0,i+11136|0);i:{if(!v[d+448>>2]){d=w[p+62|0]-1|0;t[p+62|0]=d;d=(d&255)+p|0;e=w[d+56|0];t[d+56|0]=b;t[c+56|0]=e;a=a-1|0;break i}z[((b<<2)+p|0)+32>>2]=z[i+6768>>2]}a=a+1|0;if(a>>>0>2]=0;v[e+332>>2]=16;B=e+256|0;v[e+324>>2]=B;P=Ba[v[v[a>>2]+92>>2]](a)|0;v[e+200>>2]=0;if(P>>>0>(v[B+76>>2]&2147483647)>>>0){a:{if(!P){break a}J=P<<2;if(!(w[B+64|0]|J>>>0>64)){t[B+64|0]=1;j=B;break a}if(!J){break a}j=v[37696];G=Ba[v[v[j>>2]+20>>2]](j)|0?59921:63804;j=Ba[v[v[j+12>>2]+8>>2]](j+12|0,J,G,16608,553)|0}G=v[B+68>>2];J=v[B+72>>2];if((J|0)>0){T=(J<<2)+j|0;J=j;while(1){v[J>>2]=v[G>>2];G=G+4|0;J=J+4|0;if(T>>>0>J>>>0){continue}break}G=v[B+68>>2]}b:{if(v[B+76>>2]<0){break b}if((B|0)==(G|0)){t[B+64|0]=0;break b}if(!G){break b}J=v[37696];Ba[v[v[J+12>>2]+12>>2]](J+12|0,G)}v[B+76>>2]=P;v[B+68>>2]=j}j=v[B+72>>2];if((j|0)<(P|0)){J=v[B+68>>2];G=J+(P<<2)|0;j=J+(j<<2)|0;while(1){v[j>>2]=v[e+200>>2];j=j+4|0;if(G>>>0>j>>>0){continue}break}}v[B+72>>2]=P;Ba[v[v[a>>2]+96>>2]](a,v[e+324>>2],v[e+328>>2],0)|0;a=b?b:c;D=z[a>>2];c:{d:{if((v[a>>2]&2139095040)!=2139095040){e:{f:{g:{if(!v[e+328>>2]){break g}J=e+24|0;P=e+176|0;a=0;while(1){B=a<<2;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+156>>2]](e+200|0,j);if(t[e+200|0]&1){z8(e+200|0,0);h:{i:{j:{k:{l:{j=v[B+v[e+324>>2]>>2];switch((Ba[v[v[j>>2]+32>>2]](j)|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}}v[e+160>>2]=0;v[e+164>>2]=0;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+48>>2]](j,e+160|0)|0;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+80>>2]](e+8|0,j);g=z[e+8>>2];k=C(g+g);f=z[e+16>>2];n=C(k*f);l=z[e+12>>2];i=C(l+l);o=z[e+20>>2];p=C(i*o);h=C(n-p);r=C(h*C(0));E=C(C(1)-C(g*k));s=C(l*i);g=C(E-s);q=C(g*C(0));m=C(i*f);A=C(k*o);i=C(m+A);H=C(i*C(0));u=C(r+H);z[e+244>>2]=q+u;m=C(m-A);A=C(m*C(0));x=C(k*l);l=C(f+f);I=C(o*l);k=C(x+I);K=C(k*C(0));f=C(f*l);l=C(E-f);L=C(l*C(0));M=C(K+L);z[e+240>>2]=A+M;o=C(n+p);E=C(o*C(0));n=C(C(C(1)-s)-f);O=C(n*C(0));p=C(x-I);x=C(p*C(0));I=C(O+x);z[e+236>>2]=E+I;f=z[e+164>>2];s=C(f*C(f*C(f*C(4.188790321350098))));z[e+248>>2]=s;f=C(C(f*C(f*s))*C(.4000000059604645));s=C(C(g*f)+u);H=C(q+C(C(f*h)+H));r=C(q+C(r+C(f*i)));z[e+232>>2]=C(g*s)+C(C(h*H)+C(i*r));q=C(C(f*m)+M);u=C(A+C(C(f*k)+L));A=C(A+C(K+C(f*l)));z[e+228>>2]=C(g*q)+C(C(h*u)+C(i*A));F=g;g=C(C(f*o)+I);N=h;h=C(E+C(C(f*n)+x));f=C(E+C(O+C(f*p)));z[e+224>>2]=C(F*g)+C(C(N*h)+C(i*f));z[e+220>>2]=C(m*s)+C(C(k*H)+C(l*r));z[e+216>>2]=C(m*q)+C(C(k*u)+C(l*A));z[e+212>>2]=C(m*g)+C(C(k*h)+C(l*f));z[e+208>>2]=C(o*s)+C(C(n*H)+C(p*r));z[e+204>>2]=C(o*q)+C(C(n*u)+C(p*A));z[e+200>>2]=C(o*g)+C(C(n*h)+C(p*f));A8(e+200|0,J);break h}v[e+172>>2]=0;v[e+164>>2]=0;v[e+168>>2]=0;v[e+160>>2]=3;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+44>>2]](j,e+160|0)|0;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+80>>2]](e+8|0,j);g=z[e+8>>2];k=C(g+g);f=z[e+16>>2];n=C(k*f);l=z[e+12>>2];i=C(l+l);o=z[e+20>>2];p=C(i*o);h=C(n-p);A=C(h*C(0));r=C(C(1)-C(g*k));q=C(l*i);g=C(r-q);E=C(g*C(0));m=C(i*f);s=C(k*o);i=C(m+s);x=C(i*C(0));u=C(A+x);z[e+244>>2]=E+u;m=C(m-s);s=C(m*C(0));I=C(k*l);l=C(f+f);K=C(o*l);k=C(I+K);L=C(k*C(0));o=C(f*l);f=C(r-o);M=C(f*C(0));O=C(L+M);z[e+240>>2]=s+O;l=C(n+p);H=C(l*C(0));o=C(C(C(1)-q)-o);Q=C(o*C(0));n=C(I-K);K=C(n*C(0));F=C(Q+K);z[e+236>>2]=H+F;p=z[e+164>>2];r=z[e+168>>2];q=z[e+172>>2];I=C(C(C((p!=C(0)?p:C(1))*(r!=C(0)?r:C(1)))*(q!=C(0)?q:C(1)))*C(8));z[e+248>>2]=I;R=C(p*p);N=C(r*r);p=C(I*C(.3333333432674408));r=C(C(R+N)*p);u=C(C(g*r)+u);I=C(q*q);q=C(C(N+I)*p);x=C(E+C(C(h*q)+x));p=C(C(R+I)*p);A=C(E+C(A+C(i*p)));z[e+232>>2]=C(g*u)+C(C(h*x)+C(i*A));E=C(C(r*m)+O);I=C(s+C(C(q*k)+M));s=C(s+C(L+C(p*f)));z[e+228>>2]=C(g*E)+C(C(h*I)+C(i*s));N=g;g=C(C(r*l)+F);F=h;h=C(H+C(C(q*o)+K));q=i;i=C(H+C(Q+C(p*n)));z[e+224>>2]=C(N*g)+C(C(F*h)+C(q*i));z[e+220>>2]=C(m*u)+C(C(k*x)+C(f*A));z[e+216>>2]=C(m*E)+C(C(k*I)+C(f*s));z[e+212>>2]=C(m*g)+C(C(k*h)+C(f*i));z[e+208>>2]=C(l*u)+C(C(o*x)+C(n*A));z[e+204>>2]=C(l*E)+C(C(o*I)+C(n*s));z[e+200>>2]=C(l*g)+C(C(o*h)+C(n*i));A8(e+200|0,J);break h}v[e+164>>2]=0;v[e+168>>2]=0;v[e+160>>2]=2;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+52>>2]](j,e+160|0)|0;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+80>>2]](e+8|0,j);f=z[e+164>>2];q=C(f*C(f*C(3.1415927410125732)));h=z[e+168>>2];z[e+248>>2]=C(f*C(f*C(f*C(4.188790321350098))))+C(q*C(h+h));m=z[e+8>>2];o=C(m+m);g=z[e+16>>2];r=C(o*g);n=z[e+12>>2];k=C(n+n);p=z[e+20>>2];H=C(k*p);i=C(r-H);A=C(i*C(0));u=C(C(1)-C(m*o));x=C(n*k);m=C(u-x);E=C(m*C(0));l=C(k*g);s=C(o*p);k=C(l+s);I=C(k*C(0));K=C(A+I);z[e+244>>2]=E+K;l=C(l-s);s=C(l*C(0));L=C(o*n);n=C(g+g);M=C(p*n);o=C(L+M);O=C(o*C(0));p=C(g*n);g=C(u-p);Q=C(g*C(0));F=C(O+Q);z[e+240>>2]=s+F;n=C(r+H);H=C(n*C(0));p=C(C(C(1)-x)-p);R=C(p*C(0));r=C(L-M);L=C(r*C(0));M=C(R+L);z[e+236>>2]=H+M;u=C(h*h);x=C(h*u);N=C(C(x+x)/C(3));U=C(C(C(f*u)*C(4))/C(3));u=C(C(C(f*C(f*f))*C(8))/C(15));x=C(f*C(f*h));f=C(q*C(N+C(U+C(u+C(C(x*C(3))*C(.5))))));h=C(C(m*f)+K);q=C(q*C(x+u));u=C(E+C(C(i*q)+I));A=C(E+C(A+C(f*k)));z[e+232>>2]=C(m*h)+C(C(i*u)+C(k*A));E=C(C(f*l)+F);x=C(s+C(C(q*o)+Q));s=C(s+C(O+C(f*g)));z[e+228>>2]=C(m*E)+C(C(i*x)+C(k*s));F=m;m=C(C(f*n)+M);N=i;i=C(H+C(C(q*p)+L));f=C(H+C(R+C(f*r)));z[e+224>>2]=C(F*m)+C(C(N*i)+C(k*f));z[e+220>>2]=C(l*h)+C(C(o*u)+C(g*A));z[e+216>>2]=C(l*E)+C(C(o*x)+C(g*s));z[e+212>>2]=C(l*m)+C(C(o*i)+C(g*f));z[e+208>>2]=C(n*h)+C(C(p*u)+C(r*A));z[e+204>>2]=C(n*E)+C(C(p*x)+C(r*s));z[e+200>>2]=C(n*m)+C(C(p*i)+C(r*f));A8(e+200|0,J);break h}t[e+196|0]=1;v[e+192>>2]=0;v[e+184>>2]=0;v[e+188>>2]=1065353216;v[e+176>>2]=0;v[e+180>>2]=0;v[e+168>>2]=1065353216;v[e+172>>2]=1065353216;v[e+160>>2]=4;v[e+164>>2]=1065353216;t[e+199|0]=0;t[e+197|0]=0;t[e+198|0]=0;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+60>>2]](j,e+160|0)|0;j=v[e+192>>2];Ba[v[v[j>>2]+52>>2]](j,e+156|0,e+120|0,e+104|0);i=z[e+172>>2];q=z[e+164>>2];k=z[e+168>>2];if(!(!(q!=C(1)|k!=C(1))&i==C(1))){z[e+156>>2]=z[e+156>>2]*C(C(q*k)*i);f=z[e+184>>2];h=z[e+112>>2];l=C(h+h);h=z[e+176>>2];g=z[e+104>>2];o=C(g+g);g=z[e+108>>2];n=C(g+g);g=z[e+180>>2];p=C(C(f*l)+C(C(h*o)+C(n*g)));F=i;i=z[e+188>>2];m=C(C(i*i)+C(-.5));r=C(F*C(C(f*p)+C(C(l*m)+C(i*C(C(h*n)-C(o*g))))));r=C(r+r);q=C(q*C(C(h*p)+C(C(o*m)+C(i*C(C(g*l)-C(n*f))))));q=C(q+q);k=C(k*C(C(g*p)+C(C(n*m)+C(i*C(C(f*o)-C(l*h))))));k=C(k+k);l=C(C(f*r)+C(C(h*q)+C(g*k)));z[e+104>>2]=C(h*l)+C(C(q*m)-C(i*C(C(g*r)-C(k*f))));z[e+108>>2]=C(g*l)+C(C(k*m)-C(i*C(C(f*q)-C(r*h))));z[e+112>>2]=C(f*l)+C(C(r*m)-C(i*C(C(h*k)-C(q*g))));D8(e+8|0,e+120|0,P);m=z[e+40>>2];k=z[e+8>>2];l=z[e+24>>2];o=z[e+12>>2];n=z[e+16>>2];h=z[e+164>>2];g=z[e+168>>2];i=z[e+172>>2];f=C(C(h*g)*i);p=C(f*C(i*C(g*z[e+28>>2])));z[e+436>>2]=p;n=C(f*C(i*C(h*n)));z[e+432>>2]=n;z[e+428>>2]=p;o=C(f*C(g*C(h*o)));z[e+420>>2]=o;z[e+416>>2]=n;z[e+412>>2]=o;F=h;h=C(C(m*C(.5))+C(C(k*C(.5))+C(l*C(.5))));k=C(F*C(F*C(h-k)));g=C(g*C(g*C(h-l)));z[e+440>>2]=f*C(k+g);h=C(i*C(i*C(h-m)));z[e+424>>2]=f*C(h+k);z[e+408>>2]=f*C(g+h);z[e+404>>2]=z[e+188>>2];z[e+400>>2]=-z[e+184>>2];z[e+396>>2]=-z[e+180>>2];z[e+392>>2]=-z[e+176>>2];D8(e- -64|0,e+408|0,e+392|0);j=v[e+68>>2];v[e+120>>2]=v[e+64>>2];v[e+124>>2]=j;j=v[e+76>>2];v[e+128>>2]=v[e+72>>2];v[e+132>>2]=j;j=v[e+84>>2];v[e+136>>2]=v[e+80>>2];v[e+140>>2]=j;j=v[e+92>>2];v[e+144>>2]=v[e+88>>2];v[e+148>>2]=j;z[e+152>>2]=z[e+96>>2]}f=z[e+156>>2];j=e+8|0;z[j>>2]=z[e+120>>2];z[j+4>>2]=z[e+124>>2];z[j+8>>2]=z[e+128>>2];z[j+12>>2]=z[e+132>>2];z[j+16>>2]=z[e+136>>2];z[j+20>>2]=z[e+140>>2];z[j+24>>2]=z[e+144>>2];z[j+28>>2]=z[e+148>>2];z[j+32>>2]=z[e+152>>2];z[j+36>>2]=z[e+104>>2];z[j+40>>2]=z[e+108>>2];h=z[e+112>>2];z[j+48>>2]=f;z[j+44>>2]=h;z[e+200>>2]=z[e+8>>2];G=v[e+16>>2];v[e+204>>2]=v[e+12>>2];v[e+208>>2]=G;G=v[e+24>>2];v[e+212>>2]=v[e+20>>2];v[e+216>>2]=G;G=v[e+32>>2];v[e+220>>2]=v[e+28>>2];v[e+224>>2]=G;G=v[e+40>>2];v[e+228>>2]=v[e+36>>2];v[e+232>>2]=G;G=v[e+48>>2];v[e+236>>2]=v[e+44>>2];v[e+240>>2]=G;G=v[e+56>>2];v[e+244>>2]=v[e+52>>2];v[e+248>>2]=G;G=j;j=v[B+v[e+324>>2]>>2];Ba[v[v[j>>2]+80>>2]](G,j);g=z[e+8>>2];i=C(g+g);m=z[e+16>>2];L=C(i*m);k=z[e+12>>2];l=C(k+k);n=z[e+20>>2];M=C(l*n);f=C(L-M);p=z[e+200>>2];r=z[e+204>>2];O=C(l*m);Q=C(i*n);h=C(O+Q);F=C(C(1)-C(g*i));l=C(k*l);g=C(F-l);q=z[e+208>>2];o=C(C(C(f*p)+C(r*h))+C(g*q));A=z[e+212>>2];E=z[e+216>>2];s=z[e+220>>2];H=C(C(C(f*A)+C(h*E))+C(g*s));u=z[e+224>>2];x=z[e+228>>2];I=z[e+232>>2];K=C(C(C(f*u)+C(h*x))+C(g*I));z[e+232>>2]=C(C(f*o)+C(h*H))+C(g*K);R=C(i*k);k=C(m+m);n=C(n*k);i=C(R+n);N=F;F=C(m*k);m=C(N-F);k=C(O-Q);z[e+220>>2]=C(C(i*o)+C(m*H))+C(k*K);l=C(C(C(1)-l)-F);F=C(l*o);o=C(R-n);n=C(L+M);z[e+208>>2]=C(F+C(o*H))+C(n*K);H=C(C(C(p*i)+C(r*m))+C(k*q));K=C(C(C(i*A)+C(m*E))+C(k*s));L=C(C(C(i*u)+C(m*x))+C(k*I));z[e+228>>2]=C(C(f*H)+C(h*K))+C(g*L);p=C(C(C(p*l)+C(r*o))+C(n*q));r=C(C(C(l*A)+C(o*E))+C(n*s));q=C(C(C(l*u)+C(o*x))+C(n*I));z[e+224>>2]=C(C(f*p)+C(h*r))+C(g*q);z[e+216>>2]=C(C(i*H)+C(m*K))+C(k*L);z[e+212>>2]=C(C(i*p)+C(m*r))+C(k*q);z[e+204>>2]=C(C(l*H)+C(o*K))+C(n*L);z[e+200>>2]=C(C(l*p)+C(o*r))+C(n*q);F=f;f=z[e+236>>2];N=h;h=z[e+240>>2];q=g;g=z[e+244>>2];z[e+244>>2]=C(C(F*f)+C(N*h))+C(q*g);z[e+240>>2]=C(C(i*f)+C(m*h))+C(k*g);z[e+236>>2]=C(C(l*f)+C(o*h))+C(n*g);A8(e+200|0,J)}m:{n:{if(b){h=C(D*z[e+200>>2]);z[e+200>>2]=h;g=C(D*z[e+204>>2]);z[e+204>>2]=g;i=C(D*z[e+208>>2]);z[e+208>>2]=i;m=C(D*z[e+212>>2]);z[e+212>>2]=m;k=C(D*z[e+216>>2]);z[e+216>>2]=k;l=C(D*z[e+220>>2]);z[e+220>>2]=l;o=C(D*z[e+224>>2]);z[e+224>>2]=o;n=C(D*z[e+228>>2]);z[e+228>>2]=n;p=C(D*z[e+232>>2]);z[e+232>>2]=p;f=C(D*z[e+248>>2]);break n}f=z[e+248>>2];p=z[e+232>>2];n=z[e+228>>2];o=z[e+224>>2];l=z[e+220>>2];k=z[e+216>>2];m=z[e+212>>2];i=z[e+208>>2];g=z[e+204>>2];h=z[e+200>>2];break m}z[e+248>>2]=f}z[e+336>>2]=h+z[e+336>>2];z[e+340>>2]=g+z[e+340>>2];z[e+344>>2]=i+z[e+344>>2];z[e+348>>2]=m+z[e+348>>2];i=z[e+244>>2];m=z[e+380>>2];h=z[e+384>>2];g=C(h+f);z[e+384>>2]=g;g=C(C(1)/g);z[e+380>>2]=g*C(C(h*m)+C(f*i));z[e+376>>2]=g*C(C(h*z[e+376>>2])+C(f*z[e+240>>2]));z[e+372>>2]=g*C(C(h*z[e+372>>2])+C(f*z[e+236>>2]));z[e+352>>2]=k+z[e+352>>2];z[e+356>>2]=l+z[e+356>>2];z[e+360>>2]=o+z[e+360>>2];z[e+364>>2]=n+z[e+364>>2];z[e+368>>2]=p+z[e+368>>2];S=S+1|0}a=a+1|0;if(a>>>0>2]){continue}break}if(!c|!S){break g}break f}f=z[e+368>>2];h=z[e+364>>2];g=z[e+356>>2];i=z[e+352>>2];D=z[e+384>>2];m=z[e+360>>2];k=z[e+348>>2];l=z[e+344>>2];o=z[e+340>>2];n=z[e+336>>2];break e}p=z[e+384>>2];D=C(D/p);i=C(D*z[e+352>>2]);z[e+352>>2]=i;g=C(D*z[e+356>>2]);z[e+356>>2]=g;h=C(D*z[e+364>>2]);z[e+364>>2]=h;f=C(D*z[e+368>>2]);z[e+368>>2]=f;n=C(z[e+336>>2]*D);z[e+336>>2]=n;o=C(D*z[e+340>>2]);z[e+340>>2]=o;l=C(D*z[e+344>>2]);z[e+344>>2]=l;k=C(D*z[e+348>>2]);z[e+348>>2]=k;m=C(D*z[e+360>>2]);z[e+360>>2]=m;D=C(p*D);z[e+384>>2]=D}z[d+24>>2]=m;z[d+12>>2]=k;z[d+8>>2]=l;z[d+4>>2]=o;z[d>>2]=n;z[d+32>>2]=f;z[d+28>>2]=h;z[d+20>>2]=g;z[d+16>>2]=i;z[d+36>>2]=z[e+372>>2];z[d+40>>2]=z[e+376>>2];f=z[e+380>>2];z[d+48>>2]=D;z[d+44>>2]=f;S=1;break c}b9(v[37696],4,6223,128,20702,0);break c}S=0;b9(v[37696],4,6223,231,4257,0)}a=v[e+332>>2];o:{if((a|0)<0|!(a&2147483647)){break o}a=v[e+324>>2];if((a|0)==(e+256|0)|!a){break o}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=e+448|0;return S}function h3(a,b){var c=0,d=C(0),e=0,f=0,g=C(0),h=0,i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),A=C(0),E=C(0),F=0,G=0,H=0,I=0,J=C(0),L=0,M=0,N=0,O=0,P=C(0),Q=0,R=C(0),S=C(0),T=0,U=0,V=0,W=C(0),X=0,Y=C(0),Z=0,_=0,$=0,aa=0,ba=C(0),ca=0,da=0,ea=0,fa=0,ga=C(0),ha=0,ia=0;e=w[b+13|0];c=v[b+16>>2];a:{if(w[b+12|0]?1:c){if(!i3(a,v[b>>2],v[b+4>>2],v[b+8>>2])){break a}}if(c|e){k=v[b>>2];M=i3(a,k,v[b+4>>2],v[b+8>>2]);b:{if(!M){break b}e=v[a>>2]<<3;c:{if(!e){c=0;e=0;break c}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,e,24422,6398,246)|0;e=v[a>>2]<<3}v[a+16>>2]=c;J9(c,0,e);c=v[a+16>>2];if(k){l=v[a+12>>2];e=0;while(1){f=l+B(e,12)|0;h=c+(v[f>>2]<<3)|0;u[h+2>>1]=x[h+2>>1]+1;h=c+(v[f+4>>2]<<3)|0;u[h+2>>1]=x[h+2>>1]+1;f=c+(v[f+8>>2]<<3)|0;u[f+2>>1]=x[f+2>>1]+1;e=e+1|0;if((k|0)!=(e|0)){continue}break}}e=0;v[c+4>>2]=0;h=v[a>>2];d:{if(h>>>0<2){break d}q=h-1|0;G=q&3;f=1;l=0;if(h-2>>>0>=3){r=q&-4;while(1){q=l;l=c+(f<<3)|0;q=q+x[l-6>>1]|0;v[l+4>>2]=q;q=q+x[l+2>>1]|0;v[l+12>>2]=q;q=q+x[l+10>>1]|0;v[l+20>>2]=q;I=l;l=q+x[l+18>>1]|0;v[I+28>>2]=l;f=f+4|0;N=N+4|0;if((r|0)!=(N|0)){continue}break}}if(!G){break d}while(1){q=c+(f<<3)|0;l=x[q-6>>1]+l|0;v[q+4>>2]=l;f=f+1|0;F=F+1|0;if((G|0)!=(F|0)){continue}break}}c=(c+(h<<3)|0)-8|0;c=v[c+4>>2]+x[c+2>>1]<<2;if(c){e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,c,24422,6398,265)|0}v[a+20>>2]=e;h=v[a+16>>2];if(k){G=v[a+12>>2];c=0;while(1){f=G+B(c,12)|0;q=h+(v[f>>2]<<3)|0;l=v[q+4>>2];v[q+4>>2]=l+1;v[(l<<2)+e>>2]=c;q=h+(v[f+4>>2]<<3)|0;l=v[q+4>>2];v[q+4>>2]=l+1;v[(l<<2)+e>>2]=c;l=h+(v[f+8>>2]<<3)|0;f=v[l+4>>2];v[l+4>>2]=f+1;v[(f<<2)+e>>2]=c;c=c+1|0;if((k|0)!=(c|0)){continue}break}}f=0;v[h+4>>2]=0;c=v[a>>2];if(c>>>0<2){break b}l=c-1|0;k=l&3;e=1;if(c-2>>>0>=3){G=l&-4;l=0;while(1){c=h+(e<<3)|0;f=x[c-6>>1]+f|0;v[c+4>>2]=f;f=f+x[c+2>>1]|0;v[c+12>>2]=f;f=f+x[c+10>>1]|0;v[c+20>>2]=f;f=f+x[c+18>>1]|0;v[c+28>>2]=f;e=e+4|0;l=l+4|0;if((G|0)!=(l|0)){continue}break}}if(!k){break b}c=0;while(1){l=h+(e<<3)|0;f=x[l-6>>1]+f|0;v[l+4>>2]=f;e=e+1|0;c=c+1|0;if((k|0)!=(c|0)){continue}break}}if(!M){break a}}r=v[b+16>>2];if(r){aa=v[b>>2];ba=z[b+20>>2];k=0;G=xa-16|0;xa=G;O=v[b+8>>2];H=v[b+4>>2];e:{if(!(O|H?r:0)){b9(v[37696],8,6398,310,73126,0);e=0;break e}_=v[a>>2];if(!_){b9(v[37696],8,6398,317,72174,0);e=0;break e}X=v[a+4>>2];if(!X){b9(v[37696],8,6398,324,72297,0);e=0;break e}Z=v[a+16>>2];if(!Z){b9(v[37696],8,6398,331,72230,0);e=0;break e}$=v[a+20>>2];f:{if(!$){b9(v[37696],8,6398,338,72109,0);break f}e=v[37696]+12|0;I=Ba[v[v[e>>2]+8>>2]](e,_,24422,6398,343)|0;ca=I;while(1){_=_-1|0;Q=1;g:{h:{i:{da=x[Z+2>>1];switch(da-1|0){case 0:break g;case 1:break i;default:break h}}c=(v[Z+4>>2]<<2)+$|0;e=B(v[c>>2],3);c=B(v[c+4>>2],3);j:{if(H){c=H+(c<<2)|0;F=v[c>>2];e=H+(e<<2)|0;f=v[e>>2];q=v[c+8>>2];Q=v[c+4>>2];l=v[e+8>>2];c=v[e+4>>2];break j}c=(c<<1)+O|0;F=x[c>>1];e=(e<<1)+O|0;f=x[e>>1];q=x[c+4>>1];Q=x[c+2>>1];l=x[e+4>>1];c=x[e+2>>1]}h=v[X+4>>2];e=v[X>>2];k:{l:{if((e|0)==(f|0)){e=l;if((c|0)==(h|0)){break k}e=c;if((h|0)!=(l|0)){break l}break k}if((c|0)==(e|0)){e=l;if((f|0)==(h|0)){break k}e=f;if((h|0)!=(l|0)){break l}break k}if((e|0)!=(l|0)){break l}e=f;if((c|0)==(h|0)){break k}e=c;if((f|0)==(h|0)){break k}}e=-1}A=C(0);p=C(0);s=C(0);h=r+B(Q,12)|0;k=r+B(F,12)|0;P=z[k>>2];j=C(z[h>>2]-P);q=r+B(q,12)|0;Y=z[k+4>>2];g=C(z[q+4>>2]-Y);i=C(z[q>>2]-P);m=C(z[h+4>>2]-Y);o=C(C(j*g)-C(i*m));R=z[k+8>>2];n=C(z[q+8>>2]-R);d=g;g=C(z[h+8>>2]-R);m=C(C(m*n)-C(d*g));n=C(C(g*i)-C(n*j));J=C(C(o*o)+C(C(m*m)+C(n*n)));if(J>C(0)){j=C(C(1)/C(K(J)));s=C(o*j);p=C(n*j);A=C(m*j)}c=r+B(c,12)|0;f=r+B(f,12)|0;j=z[f>>2];i=C(z[c>>2]-j);k=r+B(l,12)|0;g=z[f+4>>2];d=C(z[k+4>>2]-g);W=C(z[k>>2]-j);g=C(z[c+4>>2]-g);j=C(C(i*d)-C(W*g));E=g;g=z[f+8>>2];ga=C(z[k+8>>2]-g);S=d;d=C(z[c+8>>2]-g);g=C(C(E*ga)-C(S*d));i=C(C(d*W)-C(ga*i));d=C(K(C(C(j*j)+C(C(g*g)+C(i*i)))));e=r+B(e,12)|0;if(C(C(C(z[e+8>>2]*s)+C(C(z[e>>2]*A)+C(p*z[e+4>>2])))-C(C(R*s)+C(C(P*A)+C(Y*p))))C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}d=C(K(J));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}d=C(C(g*n)-C(m*i));p=C(d*d);d=C(C(i*o)-C(n*j));E=C(d*d);d=C(C(j*m)-C(o*g));Q=C(D(C9(C(K(C(p+C(E+C(d*d))))),C(C(j*o)+C(C(g*m)+C(i*n))))))>ba;break g}if(d>C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}d=C(K(J));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}Q=C(C(j*o)+C(C(g*m)+C(i*n)))>2];e=B(v[(ha<<2)+$>>2],3);m:{if(H){c=H+(e<<2)|0;e=v[c>>2];l=v[c+8>>2];c=v[c+4>>2];break m}c=(e<<1)+O|0;e=x[c>>1];l=x[c+4>>1];c=x[c+2>>1]}if(da>>>0<2){break g}T=r+B(l,12)|0;U=r+B(c,12)|0;V=r+B(e,12)|0;ea=0;L=1;fa=0;F=1;N=0;M=0;q=0;while(1){f=B(v[(L+ha<<2)+$>>2],3);n:{if(H){h=H+(f<<2)|0;f=v[h>>2];k=v[h+8>>2];h=v[h+4>>2];break n}h=(f<<1)+O|0;f=x[h>>1];k=x[h+4>>1];h=x[h+2>>1]}o:{p:{if(!(!((f|0)==(e|0)|(c|0)==(f|0))&(f|0)!=(l|0)|!((e|0)==(h|0)|(c|0)==(h|0))&(h|0)!=(l|0))){if((e|0)==(k|0)|(c|0)==(k|0)|(l|0)==(k|0)){break p}}if((F|0)==2){if(!((f|0)==(q|0)|(f|0)==(M|0))&(f|0)!=(N|0)|!((h|0)==(q|0)|(h|0)==(M|0))&(h|0)!=(N|0)){break g}if(!((k|0)==(q|0)|(k|0)==(M|0))&(k|0)!=(N|0)){break g}k=r+B(k,12)|0;A=z[k+8>>2];p=z[k+4>>2];s=z[k>>2];h=r+B(h,12)|0;J=z[h+8>>2];P=z[h+4>>2];Y=z[h>>2];f=r+B(f,12)|0;g=z[f+8>>2];j=z[f+4>>2];i=z[f>>2];f=r+B(M,12)|0;h=r+B(q,12)|0;o=z[h>>2];n=C(z[f>>2]-o);k=r+B(N,12)|0;m=z[h+4>>2];d=C(z[k+4>>2]-m);R=C(z[k>>2]-o);m=C(z[f+4>>2]-m);o=C(C(n*d)-C(R*m));E=m;m=z[h+8>>2];W=C(z[k+8>>2]-m);S=d;d=C(z[f+8>>2]-m);m=C(C(E*W)-C(S*d));n=C(C(d*R)-C(W*n));d=C(K(C(C(o*o)+C(C(m*m)+C(n*n)))));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}d=C(Y-i);p=C(p-j);i=C(s-i);s=C(P-j);j=C(C(d*p)-C(i*s));A=C(A-g);E=p;p=C(J-g);g=C(C(s*A)-C(E*p));i=C(C(p*i)-C(A*d));d=C(K(C(C(j*j)+C(C(g*g)+C(i*i)))));if(d>C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}ea=C(C(o*j)+C(C(m*g)+C(n*i)))>2];p=z[k+4>>2];s=z[k>>2];h=r+B(h,12)|0;J=z[h+8>>2];P=z[h+4>>2];Y=z[h>>2];f=r+B(f,12)|0;g=z[f+8>>2];j=z[f+4>>2];i=z[f>>2];o=z[V>>2];n=C(z[U>>2]-o);m=z[V+4>>2];d=C(z[T+4>>2]-m);R=C(z[T>>2]-o);m=C(z[U+4>>2]-m);o=C(C(n*d)-C(R*m));E=m;m=z[V+8>>2];W=C(z[T+8>>2]-m);S=d;d=C(z[U+8>>2]-m);m=C(C(E*W)-C(S*d));n=C(C(d*R)-C(W*n));d=C(K(C(C(o*o)+C(C(m*m)+C(n*n)))));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}d=C(Y-i);p=C(p-j);i=C(s-i);s=C(P-j);j=C(C(d*p)-C(i*s));A=C(A-g);E=p;p=C(J-g);g=C(C(s*A)-C(E*p));i=C(C(p*i)-C(A*d));d=C(K(C(C(j*j)+C(C(g*g)+C(i*i)))));if(d>C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}fa=C(C(o*j)+C(C(m*g)+C(n*i)))>2];g=C(z[e>>2]-j);k=r+B(N,12)|0;i=z[c+4>>2];m=C(z[k+4>>2]-i);j=C(z[k>>2]-j);i=C(z[e+4>>2]-i);o=C(C(g*m)-C(j*i));d=i;i=z[c+8>>2];n=C(z[k+8>>2]-i);i=C(z[e+8>>2]-i);m=C(C(d*n)-C(m*i));n=C(C(i*j)-C(n*g));A=C(C(o*o)+C(C(m*m)+C(n*n)));j=z[V>>2];i=C(z[U>>2]-j);g=z[V+4>>2];d=C(z[T+4>>2]-g);p=C(z[T>>2]-j);g=C(z[U+4>>2]-g);j=C(C(i*d)-C(p*g));E=g;g=z[V+8>>2];s=C(z[T+8>>2]-g);S=d;d=C(z[U+8>>2]-g);g=C(C(E*s)-C(S*d));i=C(C(d*p)-C(s*i));d=C(K(C(C(j*j)+C(C(g*g)+C(i*i)))));if(d>C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}d=C(K(A));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}d=C(C(g*n)-C(m*i));p=C(d*d);d=C(C(i*o)-C(n*j));E=C(d*d);d=C(C(j*m)-C(o*g));Q=(F|0)==1|C(D(C9(C(K(C(p+C(E+C(d*d))))),C(C(j*o)+C(C(g*m)+C(i*n))))))>ba;break g}f=v[X+4>>2];h=v[X>>2];q:{r:{if((h|0)==(e|0)){if((c|0)==(f|0)){c=l;break q}if((f|0)!=(l|0)){break r}break q}if((c|0)==(h|0)){if((f|0)==(e|0)){c=l;break q}c=e;if((f|0)!=(l|0)){break r}break q}if((h|0)!=(l|0)){break r}if((c|0)==(f|0)){c=e;break q}if((f|0)==(e|0)){break q}}c=-1}j=C(0);g=C(0);i=C(0);e=r+B(M,12)|0;f=r+B(q,12)|0;d=z[f>>2];n=C(z[e>>2]-d);k=r+B(N,12)|0;A=z[f+4>>2];m=C(z[k+4>>2]-A);s=C(z[k>>2]-d);p=C(z[e+4>>2]-A);o=C(C(n*m)-C(s*p));E=p;p=z[f+8>>2];J=C(z[k+8>>2]-p);P=C(z[e+8>>2]-p);m=C(C(E*J)-C(m*P));n=C(C(P*s)-C(J*n));s=C(C(o*o)+C(C(m*m)+C(n*n)));if(s>C(0)){j=C(C(1)/C(K(s)));i=C(o*j);g=C(n*j);j=C(m*j)}e=r+B(c,12)|0;if(!(C(C(C(z[e+8>>2]*i)+C(C(z[e>>2]*j)+C(g*z[e+4>>2])))-C(C(p*i)+C(C(d*j)+C(A*g))))>2];i=C(z[U>>2]-j);g=z[V+4>>2];d=C(z[T+4>>2]-g);A=C(z[T>>2]-j);g=C(z[U+4>>2]-g);j=C(C(i*d)-C(A*g));E=g;g=z[V+8>>2];p=C(z[T+8>>2]-g);S=d;d=C(z[U+8>>2]-g);g=C(C(E*p)-C(S*d));i=C(C(d*A)-C(p*i));d=C(K(C(C(j*j)+C(C(g*g)+C(i*i)))));if(d>C(0)){d=C(C(1)/d);j=C(j*d);i=C(i*d);g=C(g*d)}d=C(K(s));if(d>C(0)){d=C(C(1)/d);o=C(o*d);n=C(n*d);m=C(m*d)}d=C(C(g*n)-C(m*i));p=C(d*d);d=C(C(i*o)-C(n*j));E=C(d*d);d=C(C(j*m)-C(o*g));Q=(F|0)==1|C(D(C9(C(K(C(p+C(E+C(d*d))))),C(C(j*o)+C(C(g*m)+C(i*n))))))>ba}t[ca|0]=Q;X=X+8|0;Z=Z+8|0;ca=ca+1|0;if(_){continue}break}if(v[a+8>>2]){k=v[a+12>>2];e=0;while(1){c=B(e,12)+k|0;f=v[c>>2];if(!((f|0)<0|!w[(f&268435455)+I|0])){v[c>>2]=f|-2147483648}f=v[c+4>>2];if(!((f|0)<0|!w[(f&268435455)+I|0])){v[c+4>>2]=f|-2147483648}f=v[c+8>>2];if(!((f|0)<0|!w[(f&268435455)+I|0])){v[c+8>>2]=f|-2147483648}e=e+1|0;if(e>>>0>2]){continue}break}}c=v[a>>2];s:{t:{if(c){k=v[a+16>>2];f=0;if((c|0)!=1){l=c&-2;e=0;while(1){if(w[f+I|0]){h=(f<<3)+k|0;u[h>>1]=x[h>>1]|1}h=f|1;if(w[h+I|0]){h=(h<<3)+k|0;u[h>>1]=x[h>>1]|1}f=f+2|0;e=e+2|0;if((l|0)!=(e|0)){continue}break}}if(!(c&1)|!w[f+I|0]){break t}e=(f<<3)+k|0;u[e>>1]=x[e>>1]|1;break t}if(!I){break s}}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,I)}u:{v:{if(!aa){f=1;break v}e=0;w:{if(H){f=0;while(1){c=H+B(e,12)|0;k=v[c+8>>2];l=v[c+4>>2];c=v[c>>2];c=c>>>0>f>>>0?c:f;c=c>>>0>>0?l:c;f=c>>>0>>0?k:c;e=e+1|0;if((aa|0)!=(e|0)){continue}break}break w}f=0;while(1){c=B(e,6)+O|0;k=x[c+4>>1];l=x[c+2>>1];c=x[c>>1];c=c>>>0>f>>>0?c:f;c=c>>>0>>0?l:c;f=c>>>0>>0?k:c;e=e+1|0;if((aa|0)!=(e|0)){continue}break}}c=0;f=f+1|0;e=0;if(!f){break u}}e=v[37696]+12|0;c=Ba[v[v[e>>2]+8>>2]](e,f,24422,6398,643)|0;e=f}f=0;e=J9(c,0,e);L=v[a+8>>2];x:{if(!L){break x}F=v[a+12>>2];while(1){y:{z:{if(H){c=H+B(f,12)|0;k=v[c>>2];v[G+4>>2]=k;v[G+8>>2]=v[c+4>>2];c=v[c+8>>2];break z}if(!O){break y}c=B(f,6)+O|0;k=x[c>>1];v[G+4>>2]=k;v[G+8>>2]=x[c+2>>1];c=x[c+4>>1]}v[G+12>>2]=c}c=B(f,12)+F|0;if(v[c>>2]<0){t[e+v[G+8>>2]|0]=1;t[e+k|0]=1}if(v[c+4>>2]<0){l=v[G+8>>2];t[e+v[G+12>>2]|0]=1;t[e+l|0]=1}if(v[c+8>>2]<0){t[e+v[G+12>>2]|0]=1;t[e+k|0]=1}f=f+1|0;if((L|0)!=(f|0)){continue}break}if(!L){break x}l=v[a+12>>2];c=0;while(1){A:{if(H){f=H+B(c,12)|0;F=v[f>>2];k=v[f+8>>2];L=v[f+4>>2];break A}if(!O){break A}f=B(c,6)+O|0;F=x[f>>1];k=x[f+4>>1];L=x[f+2>>1]}f=l+B(c,12)|0;h=v[f>>2];if(!(!w[e+F|0]|h&1073741824)){v[f>>2]=h|1073741824}h=v[f+4>>2];if(!(!w[e+L|0]|h&1073741824)){v[f+4>>2]=h|1073741824}h=v[f+8>>2];if(!(!w[e+k|0]|h&1073741824)){v[f+8>>2]=h|1073741824}c=c+1|0;if(c>>>0>2]){continue}break}}if(!e){break f}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=($|0)!=0}xa=G+16|0;if(!e){break a}}if(!w[b+12|0]){e=v[a+12>>2];if(e){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e)}v[a+12>>2]=0}ia=1;if(w[b+13|0]){break a}b=v[a+16>>2];if(b){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}v[a+16>>2]=0;b=v[a+20>>2];if(b){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}v[a+20>>2]=0}return ia}function I4(a){var b=0,c=0,d=0,e=0,f=C(0),g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=0,A=C(0),E=0,F=C(0),G=0,H=0,I=C(0),J=C(0),L=0,M=0,N=0,O=0,P=C(0),Q=0,R=C(0),S=C(0),T=0,U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(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=C(0),na=C(0),oa=C(0);N=xa-16|0;xa=N;if(!w[a+104|0]){l=v[a+36>>2];z[a+108>>2]=z[l>>2];i=a+112|0;z[i>>2]=z[l+4>>2];g=a+116|0;z[g>>2]=z[l+8>>2];v[a+128>>2]=v[l+20>>2];e=v[l+16>>2];h=a+120|0;v[h>>2]=v[l+12>>2];v[h+4>>2]=e;z[a+180>>2]=z[l>>2];k=a+184|0;z[k>>2]=z[l+4>>2];j=a+188|0;z[j>>2]=z[l+8>>2];v[a+200>>2]=v[l+20>>2];b=v[l+16>>2];q=a+192|0;e=q;v[e>>2]=v[l+12>>2];v[e+4>>2]=b;G=a+132|0;z[G>>2]=z[l>>2];L=a+136|0;z[L>>2]=z[l+4>>2];H=a+140|0;z[H>>2]=z[l+8>>2];v[a+152>>2]=v[l+20>>2];b=v[l+16>>2];M=a+144|0;e=M;v[e>>2]=v[l+12>>2];v[e+4>>2]=b;Q=a+204|0;z[Q>>2]=z[l>>2];O=a+208|0;z[O>>2]=z[l+4>>2];T=a+212|0;z[T>>2]=z[l+8>>2];v[a+224>>2]=v[l+20>>2];b=v[l+16>>2];aa=a+216|0;e=aa;v[e>>2]=v[l+12>>2];v[e+4>>2]=b;ba=a+156|0;z[ba>>2]=z[l>>2];ca=a+160|0;z[ca>>2]=z[l+4>>2];da=a+164|0;z[da>>2]=z[l+8>>2];v[a+176>>2]=v[l+20>>2];b=v[l+16>>2];ea=a+168|0;e=ea;v[e>>2]=v[l+12>>2];v[e+4>>2]=b;fa=a+228|0;z[fa>>2]=z[l>>2];ga=a+232|0;z[ga>>2]=z[l+4>>2];ha=a+236|0;z[ha>>2]=z[l+8>>2];v[a+248>>2]=v[l+20>>2];b=v[l+16>>2];ia=a+240|0;e=ia;v[e>>2]=v[l+12>>2];v[e+4>>2]=b;m=z[l+8>>2];r=z[l+4>>2];A=z[l>>2];ja=v[a+24>>2];a:{if(ja>>>0<2){p=m;F=r;n=A;break a}ka=a+180|0;la=a+108|0;V=1;n=A;F=r;p=m;while(1){E=B(V,24)+l|0;o=z[E>>2];b:{c:{if(o>n){c=ka;d=k;b=j;e=q;n=o;f=A;break c}c=la;d=i;b=g;e=h;f=o;if(!(A>f)){break b}}z[c>>2]=o;z[d>>2]=z[E+4>>2];z[b>>2]=z[E+8>>2];v[e+8>>2]=v[E+20>>2];b=v[E+16>>2];v[e>>2]=v[E+12>>2];v[e+4>>2]=b;A=f}o=z[E+4>>2];d:{e:{if(o>F){c=Q;d=O;b=T;e=aa;F=o;f=r;break e}c=G;d=L;b=H;e=M;f=o;if(!(r>f)){break d}}z[c>>2]=z[E>>2];z[d>>2]=o;z[b>>2]=z[E+8>>2];v[e+8>>2]=v[E+20>>2];b=v[E+16>>2];v[e>>2]=v[E+12>>2];v[e+4>>2]=b;r=f}o=z[E+8>>2];f:{g:{if(o>p){c=fa;d=ga;b=ha;e=ia;p=o;f=m;break g}c=ba;d=ca;b=da;e=ea;f=o;if(!(m>f)){break f}}z[c>>2]=z[E>>2];z[d>>2]=z[E+4>>2];z[b>>2]=o;v[e+8>>2]=v[E+20>>2];b=v[E+16>>2];v[e>>2]=v[E+12>>2];v[e+4>>2]=b;m=f}V=V+1|0;if((ja|0)!=(V|0)){continue}break}}f=C(C(C(p+C(C(F+C(n-A))-r))-m)*C(.5));m=C(f*C(3.5762786865234375e-7));z[a+252>>2]=m>C(3.5762786865234375e-7)?m:C(3.5762786865234375e-7);m=f;f=z[v[a>>2]+4>>2];m=C(m*f);z[a+256>>2]=f>2]-z[a+136>>2]);n=C(z[a+180>>2]-z[a+108>>2]);n=n>C(0)?n:C(0);b=f>n;s=C(z[a+236>>2]-z[a+164>>2]);f=b?f:n;c=s>f;Y=z[a+252>>2];h:{if(Y>=(c?s:f)){b9(v[37696],32,13134,876,23097,0);b=0;break h}b=B(c?2:b,24)+a|0;Z=z[b+180>>2];z[d>>2]=Z;_=z[b+184>>2];z[d+4>>2]=_;$=z[b+188>>2];z[d+8>>2]=$;v[d+20>>2]=v[b+200>>2];c=v[b+196>>2];v[d+12>>2]=v[b+192>>2];v[d+16>>2]=c;f=z[b+108>>2];z[d+24>>2]=f;s=z[b+112>>2];z[d+28>>2]=s;n=z[b+116>>2];z[d+32>>2]=n;c=v[b+124>>2];v[d+36>>2]=v[b+120>>2];v[d+40>>2]=c;v[d+44>>2]=v[b+128>>2];n=C(n-$);R=C(f-Z);S=C(s-_);f=C(K(C(C(n*n)+C(C(R*R)+C(S*S)))));if(f>C(0)){f=C(C(1)/f);n=C(n*f);S=C(S*f);R=C(R*f)}h=v[a+24>>2];i:{if(!h){f=C(0);break i}ma=C(-S);na=C(-R);oa=C(-n);i=v[a+36>>2];b=0;f=C(0);g=v[d+36>>2];k=v[d+12>>2];while(1){c=i+B(b,24)|0;W=z[c+4>>2];I=C(W-_);m=z[c>>2];J=C(m-Z);s=C(C(R*I)+C(J*ma));r=z[c+8>>2];P=C(r-$);I=C(C(S*P)+C(I*oa));J=C(C(n*J)+C(P*na));P=C(C(s*s)+C(C(I*I)+C(J*J)));j:{if(!(P>f)){break j}j=v[c+12>>2];if((j|0)==(k|0)|(g|0)==(j|0)){break j}j=v[c+16>>2];v[d+60>>2]=v[c+12>>2];v[d+64>>2]=j;v[d+68>>2]=v[c+20>>2];o=r;U=W;X=m;A=I;p=J;F=s;f=P}b=b+1|0;if((h|0)!=(b|0)){continue}break}z[d+56>>2]=o;z[d+52>>2]=U;z[d+48>>2]=X}if(C(K(f))<=Y){b9(v[37696],32,13134,911,66461,0);b=0;break h}f=C(0);s=C(K(C(C(F*F)+C(C(A*A)+C(p*p)))));if(s>C(0)){s=C(C(1)/s);F=C(F*s);p=C(p*s);A=C(A*s)}U=C(C(o*F)+C(C(X*A)+C(p*U)));if(h){g=v[a+36>>2];k=v[d+60>>2];b=0;j=v[d+36>>2];q=v[d+12>>2];while(1){c=g+B(b,24)|0;o=z[c+8>>2];s=z[c>>2];I=z[c+4>>2];J=C(D(C(C(C(o*F)+C(C(s*A)+C(p*I)))-U)));k:{if(!(J>f)){break k}i=v[c+12>>2];if((i|0)==(q|0)|(i|0)==(j|0)|(i|0)==(k|0)){break k}i=v[c+16>>2];v[d+84>>2]=v[c+12>>2];v[d+88>>2]=i;v[d+92>>2]=v[c+20>>2];m=o;r=I;n=s;f=J}b=b+1|0;if((h|0)!=(b|0)){continue}break}z[d+80>>2]=m;z[d+76>>2]=r;z[d+72>>2]=n}if(C(D(f))<=Y){b9(v[37696],32,13134,934,66380,0);b=0;break h}h=xa-16|0;xa=h;f=z[d+76>>2];o=z[d+52>>2];s=z[d+28>>2];I=z[d+80>>2];J=z[d+56>>2];X=z[d+32>>2];W=z[d+4>>2];P=z[d+8>>2];z[a+8>>2]=C(C(C(z[d>>2]+z[d+24>>2])+z[d+48>>2])+z[d+72>>2])*C(.25);z[a+16>>2]=C(I+C(J+C(P+X)))*C(.25);z[a+12>>2]=C(f+C(o+C(W+s)))*C(.25);i=d+72|0;g=d+48|0;k=d+24|0;l:{if(C(C(C(m*F)+C(C(n*A)+C(p*r)))-U)>2]=b;c=G4(a,i,k,d);v[h+4>>2]=c;k=G4(a,i,g,k);v[h+8>>2]=k;i=G4(a,i,d,g);v[h+12>>2]=i;g=v[v[c>>2]+28>>2];j=v[k>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[v[v[c>>2]+28>>2]+28>>2];j=v[v[b>>2]+28>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[v[k>>2]+28>>2];j=v[i>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[v[v[k>>2]+28>>2]+28>>2];k=v[v[v[b>>2]+28>>2]+28>>2];v[g+32>>2]=k;v[k+32>>2]=g;g=v[v[i>>2]+28>>2];c=v[c>>2];v[g+32>>2]=c;v[c+32>>2]=g;c=b;break l}c=G4(a,d,g,k);v[h>>2]=c;b=G4(a,i,d,k);v[h+4>>2]=b;k=G4(a,i,k,g);v[h+8>>2]=k;i=G4(a,i,g,d);v[h+12>>2]=i;g=v[b>>2];j=v[v[k>>2]+28>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[v[v[b>>2]+28>>2]+28>>2];j=v[c>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[k>>2];j=v[v[i>>2]+28>>2];v[g+32>>2]=j;v[j+32>>2]=g;g=v[v[v[k>>2]+28>>2]+28>>2];k=v[v[v[c>>2]+28>>2]+28>>2];v[g+32>>2]=k;v[k+32>>2]=g;g=v[i>>2];b=v[v[b>>2]+28>>2];v[g+32>>2]=b;v[b+32>>2]=g;b=v[c>>2]+28|0}i=v[v[v[i>>2]+28>>2]+28>>2];b=v[b>>2];v[i+32>>2]=b;v[b+32>>2]=i;g=a+88|0;i=v[a+96>>2]&2147483647;b=v[a+92>>2];m:{if(i>>>0<=b>>>0){y4(g,h);i=v[a+96>>2]&2147483647;b=v[a+92>>2];break m}v[v[a+88>>2]+(b<<2)>>2]=c;b=b+1|0;v[a+92>>2]=b}n:{if(b>>>0>=i>>>0){y4(g,h|4);i=v[a+96>>2]&2147483647;b=v[a+92>>2];break n}v[v[a+88>>2]+(b<<2)>>2]=v[h+4>>2];b=b+1|0;v[a+92>>2]=b}o:{if(b>>>0>=i>>>0){y4(g,h|8);i=v[a+96>>2]&2147483647;b=v[a+92>>2];break o}v[v[a+88>>2]+(b<<2)>>2]=v[h+8>>2];b=b+1|0;v[a+92>>2]=b}p:{if(b>>>0>=i>>>0){y4(g,h|12);break p}v[v[a+88>>2]+(b<<2)>>2]=v[h+12>>2];v[a+92>>2]=b+1}v[a+100>>2]=4;M=v[a+24>>2];if(M){A=z[a+252>>2];Q=v[d+12>>2];O=v[a+36>>2];i=0;while(1){b=O+B(i,24)|0;c=v[b+12>>2];q:{if((c|0)==(Q|0)|(c|0)==v[d+36>>2]|((c|0)==v[d+60>>2]|(c|0)==v[d+84>>2])){break q}c=v[h>>2];f=z[b+8>>2];m=z[b>>2];r=z[b+4>>2];p=C(C(C(z[c+20>>2]*f)+C(C(z[c+12>>2]*m)+C(r*z[c+16>>2])))-z[c+40>>2]);q=p>A;g=v[h+4>>2];F=C(C(C(z[g+20>>2]*f)+C(C(z[g+12>>2]*m)+C(r*z[g+16>>2])))-z[g+40>>2]);p=q?p:A;G=F>p;k=v[h+8>>2];n=C(C(C(z[k+20>>2]*f)+C(C(z[k+12>>2]*m)+C(r*z[k+16>>2])))-z[k+40>>2]);p=G?F:p;L=n>p;j=v[h+12>>2];f=C(C(C(z[j+20>>2]*f)+C(C(z[j+12>>2]*m)+C(r*z[j+16>>2])))-z[j+40>>2]);m=L?n:p;H=f>m;g=H?j:L?k:G?g:q?c:0;if(!g){break q}f=H?f:m;z[b+16>>2]=f;c=v[g+8>>2];if(!c){v[g+8>>2]=b;z[b+16>>2]=f;v[b+20>>2]=0;break q}if(f>2]){v[b+20>>2]=v[c+20>>2];v[c+20>>2]=b;break q}v[b+20>>2]=c;v[g+8>>2]=b}i=i+1|0;if((M|0)!=(i|0)){continue}break}}xa=h+16|0;b=1}xa=d+96|0;r:{if(!b){break r}g=4;b=v[a+92>>2];c=v[a+4>>2];s:{if(w[c+36|0]&4){if(!b){break s}f=z[v[a>>2]>>2];f=C(f+f);d=v[a+88>>2];e=1;while(1){if(f>z[v[d+(u<<2)>>2]+24>>2]){break r}u=u+1|0;if((u|0)!=(b|0)){continue}break}}if(!b){break s}while(1){k=b&1;h=v[a+88>>2];f=z[a+256>>2];t:{if((b|0)==1){u=0;b=0;e=0;break t}j=b&-2;u=0;b=0;e=0;i=0;while(1){q=b<<2;c=v[q+h>>2];u:{if(v[c+48>>2]){break u}d=v[c+8>>2];if(!d){break u}m=z[d+16>>2];if(!(m>f)){break u}e=c;f=m;u=d}c=v[h+(q|4)>>2];v:{if(v[c+48>>2]){break v}d=v[c+8>>2];if(!d){break v}m=z[d+16>>2];if(!(m>f)){break v}e=c;f=m;u=d}b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}w:{if(!k){break w}b=v[h+(b<<2)>>2];if(v[b+48>>2]){break w}c=v[b+8>>2];if(!c|!(z[c+16>>2]>f)){break w}e=b;u=c}x:{if(!u|v[u+12>>2]==v[a+32>>2]){break x}b=v[a+4>>2];if(x[b+38>>1]<=g>>>0?w[b+36|0]&32:0){break x}t[N+15|0]=0;c=0;i=0;k=xa-16|0;xa=k;t[N+15|0]=0;v[e+8>>2]=v[v[e+8>>2]+20>>2];L=a+272|0;J4(a,u,0,e,L,a+296|0);j=v[a+100>>2];M=j+v[a+276>>2]|0;y:{if(M>>>0>=256){d=v[a+300>>2];z:{if(!d){break z}c=v[a+296>>2];b=0;if(d-1>>>0>=3){q=d&-4;e=0;while(1){h=b<<2;v[v[h+c>>2]+48>>2]=0;v[v[c+(h|4)>>2]+48>>2]=0;v[v[c+(h|8)>>2]+48>>2]=0;v[v[c+(h|12)>>2]+48>>2]=0;b=b+4|0;e=e+4|0;if((q|0)!=(e|0)){continue}break}}e=d&3;if(!e){break z}while(1){v[v[c+(b<<2)>>2]+48>>2]=0;b=b+1|0;i=i+1|0;if((e|0)!=(i|0)){continue}break}}v[a+100>>2]=d+j;break y}j=a+284|0;h=0;b=0;G=0;q=xa-16|0;xa=q;Q=a+88|0;while(1){e=v[v[L>>2]+(G<<2)>>2];H=G4(a,u,v[e+32>>2],e);v[q+12>>2]=H;d=v[a+92>>2];A:{if(d>>>0>=(v[a+96>>2]&2147483647)>>>0){y4(Q,q+12|0);break A}v[v[a+88>>2]+(d<<2)>>2]=H;v[a+92>>2]=d+1}v[a+100>>2]=v[a+100>>2]+1;O=v[q+12>>2];d=v[O>>2];H=v[d+28>>2];T=v[H+28>>2];e=v[e+32>>2];v[T+32>>2]=e;v[e+32>>2]=T;e=d;if(h){v[H+32>>2]=h;v[h+32>>2]=H;e=b}b=v[j+4>>2];B:{if(b>>>0>=(v[j+8>>2]&2147483647)>>>0){y4(j,q+12|0);break B}v[v[j>>2]+(b<<2)>>2]=O;v[j+4>>2]=b+1}h=d;b=e;G=G+1|0;if(G>>>0>2]){continue}break}e=v[b+28>>2];v[e+32>>2]=h;v[h+32>>2]=e;xa=q+16|0;t[k+15|0]=0;C:{h=v[a+288>>2];D:{if(!h){break D}while(1){e=v[v[a+284>>2]+(c<<2)>>2];if(!v[e+48>>2]){while(1){if(K4(a,e,1,k+15|0)){continue}break}h=v[a+288>>2]}c=c+1|0;if(h>>>0>c>>>0){continue}break}if(w[k+15|0]){break C}if(!h){break D}c=0;while(1){e=v[v[a+284>>2]+(c<<2)>>2];if(v[e+48>>2]==2){v[e+48>>2]=0;while(1){if(K4(a,e,0,k+15|0)){continue}break}h=v[a+288>>2]}c=c+1|0;if(h>>>0>c>>>0){continue}break}if(w[k+15|0]){t[N+15|0]=1;break y}j=v[a+264>>2];if(!j|!h){break D}q=v[a+284>>2];m=z[a+252>>2];G=v[a+260>>2];while(1){d=v[G+(i<<2)>>2];b=0;e=0;f=m;while(1){c=v[q+(b<<2)>>2];E:{if(v[c+48>>2]){break E}r=C(C(C(z[c+20>>2]*z[d+8>>2])+C(C(z[c+12>>2]*z[d>>2])+C(z[d+4>>2]*z[c+16>>2])))-z[c+40>>2]);if(!(r>f)){break E}f=r;e=c}b=b+1|0;if((h|0)!=(b|0)){continue}break}F:{if(!e){break F}z[d+16>>2]=f;b=v[e+8>>2];if(b){if(!(z[b+16>>2]>f)){v[d+20>>2]=b;v[e+8>>2]=d;break F}v[d+20>>2]=v[b+20>>2];v[b+20>>2]=d;break F}v[e+8>>2]=d;v[d+20>>2]=0;z[d+16>>2]=f}i=i+1|0;if((j|0)!=(i|0)){continue}break}}v[a+288>>2]=0;v[a+276>>2]=0;v[a+264>>2]=0;v[a+300>>2]=0;break y}t[N+15|0]=1}xa=k+16|0;if(M>>>0>=256){v[a+28>>2]=g;e=3;break r}if(w[N+15|0]){v[a+32>>2]=v[u+12>>2];c=0;e=xa-16|0;xa=e;b=a+52|0;d=v[a+56>>2];if(d){while(1){u=v[v[b>>2]+(c<<2)>>2];if(u){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,u);d=v[a+56>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}v[a+44>>2]=0;v[a+48>>2]=0;c=0;v[a+56>>2]=0;d=B(v[a+40>>2],44);G:{if(!d){d=0;break G}c=v[37696]+12|0;d=Ba[v[v[c>>2]+8>>2]](c,d,24422,13134,83)|0;c=v[a+56>>2]}v[e+12>>2]=d;H:{if((v[a+60>>2]&2147483647)>>>0<=c>>>0){D4(b,e+12|0);break H}v[v[a+52>>2]+(c<<2)>>2]=d;v[a+56>>2]=c+1}xa=e+16|0;u=v[a+80>>2];if(u){b=0;while(1){e=v[v[a+76>>2]+(b<<2)>>2];if(e){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e);u=v[a+80>>2]}b=b+1|0;if(u>>>0>b>>>0){continue}break}}v[a+80>>2]=0;v[a+68>>2]=0;v[a+72>>2]=0;E4(a- -64|0,v[a+64>>2]);v[a+312>>2]=0;v[a+300>>2]=0;v[a+288>>2]=0;v[a+276>>2]=0;v[a+264>>2]=0;v[a+100>>2]=0;v[a+92>>2]=0;e=I4(a);break r}g=g+1|0;b=v[a+92>>2];if(b){continue}}break}c=v[a+4>>2]}v[a+28>>2]=g;e=(x[c+38>>1]>>0)<<1}xa=N+16|0;return e}function H$(a,b,c,d,e){var f=C(0),g=C(0),h=0,i=C(0),k=C(0),m=C(0),n=C(0),o=C(0),r=C(0),s=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Ca=C(0),Da=C(0),Ea=0,Fa=0,Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=0,La=0,Ma=0;h=xa-288|0;xa=h;V=w[c+64|0];J=v[c+24>>2];Fa=v[c+28>>2];y=z[c+60>>2];R=h- -64|0;v[R>>2]=0;v[R+4>>2]=0;v[h+72>>2]=0;v[h+76>>2]=0;v[h+80>>2]=0;v[h+112>>2]=0;v[h+116>>2]=0;u[h+108>>1]=0;v[h+100>>2]=0;v[h+104>>2]=-1;z[h+88>>2]=y;t[h+84|0]=b;v[h+120>>2]=0;v[h+124>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+36>>2]=143208;v[h+56>>2]=0;v[h+60>>2]=0;v[h+92>>2]=0;v[h+96>>2]=0;v[h+32>>2]=143184;La=h,Ma=Waa(J,Fa),v[La+48>>2]=Ma;v[h+52>>2]=Aa;v[h+44>>2]=V>>>1&1;v[h+40>>2]=d;v[h+144>>2]=0;v[h+136>>2]=2139095039;v[h+140>>2]=0;b=v[d+4>>2];v[h+248>>2]=0;v[h+252>>2]=0;v[h+256>>2]=0;v[h+260>>2]=0;v[h+264>>2]=0;v[h+268>>2]=0;v[h+240>>2]=0;v[h+244>>2]=0;t[h+208|0]=0;t[h+209|0]=(b|0)==1;V=h+32|4;a:{b:{if(!e){break b}if(!(C(D(z[o$(h+272|0,a)+12>>2]))>C(.9998999834060669))){break b}O=z[a+16>>2];W=z[a+28>>2];P=z[a+20>>2];X=z[a+32>>2];Y=z[a+4>>2];Z=z[a+8>>2];y=z[a+40>>2];A=z[a+44>>2];S=z[a+36>>2];s=z[a+56>>2];L=z[a+48>>2];M=z[a+52>>2];T=C(C(C(D(z[a+24>>2]))*s)+C(C(C(D(z[a>>2]))*L)+C(C(D(z[a+12>>2]))*M)));z[h+16>>2]=S-T;P=C(C(s*C(D(X)))+C(C(L*C(D(Z)))+C(M*C(D(P)))));z[h+24>>2]=A-P;s=C(C(s*C(D(W)))+C(C(L*C(D(Y)))+C(M*C(D(O)))));z[h+20>>2]=y-s;z[h+8>>2]=P+A;z[h+4>>2]=s+y;z[h>>2]=T+S;C0(c+112|0,h+16|0,h,V);break a}d=xa-528|0;xa=d;W=z[a+32>>2];P=z[a+28>>2];X=z[a+20>>2];Y=z[a+16>>2];L=z[a+56>>2];M=z[a+52>>2];y=z[a+44>>2];A=z[a+40>>2];Z=z[a+24>>2];S=z[a+12>>2];T=z[a+8>>2];ca=z[a+4>>2];da=z[a>>2];O=z[a+48>>2];s=z[a+36>>2];Fa=v[c+200>>2];a=v[c+180>>2];b=a-1|0;c:{if((b|0)<0){c=d+16|0;break c}c=d+16|0;J=a&7;d:{if(!J){a=b;break d}e=0;a=b;while(1){v[c>>2]=B(a,112);a=a-1|0;c=c+4|0;e=e+1|0;if((J|0)!=(e|0)){continue}break}}if(b>>>0<=6){break c}while(1){b=B(a,112);v[c>>2]=b;v[c+28>>2]=b-784;v[c+24>>2]=b-672;v[c+20>>2]=b-560;v[c+16>>2]=b-448;v[c+12>>2]=b-336;v[c+8>>2]=b-224;v[c+4>>2]=b-112;c=c+32|0;b=(a|0)>7;a=a-8|0;if(b){continue}break}}fa=C(C(0)-L);ga=C(C(0)-M);ha=C(C(0)-O);ia=C(C(L*W)+C(0));ja=C(C(L*P)+C(0));ka=C(C(L*Z)+C(0));la=C(C(M*X)+C(0));ma=C(C(M*Y)+C(0));na=C(C(M*S)+C(0));oa=C(C(O*T)+C(0));pa=C(C(O*ca)+C(0));qa=C(C(O*da)+C(0));e=1;while(1){a=c-4|0;b=(e?Ea:v[a>>2])+Fa|0;i=z[b+4>>2];g=z[b+52>>2];ea=z[b+36>>2];m=z[b+84>>2];U=z[b+20>>2];r=z[b+68>>2];aa=z[b+8>>2];x=z[b+56>>2];wa=z[b+40>>2];N=z[b+88>>2];ya=z[b+24>>2];ba=z[b+72>>2];sa=z[b+12>>2];ra=z[b+60>>2];za=z[b+44>>2];ta=z[b+92>>2];Ca=z[b+28>>2];ua=z[b+76>>2];k=z[b>>2];f=z[b+48>>2];I=z[b+32>>2];n=z[b+80>>2];K=z[b+16>>2];o=z[b+64>>2];R=v[b+96>>2]&-2;v[d+12>>2]=R;e=0;e:{f:{if(fE?k:E;E=C(Q-s);F=oC(9.999999974752427e-7);Ja=C($+C(-9.999999974752427e-7));$=C(f-Ga);Da=C(o-Ha);Ia=C(n-va);if(J&Ja>C(C(C((l(2,(p(C(C($*E)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(Da*F)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(Ia*H)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*E)+C(C(pa*F)+C(C(oa*H)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*E)+C(C(ma*F)+C(C(la*H)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*E)+C(C(ja*F)+C(C(ia*H)+C(0))))),j(2))&2147483647),q())))){break f}f=fC(9.999999974752427e-7)){J=C(o+C(-9.999999974752427e-7))>C(C(C((l(2,(p(C(C($*f)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(Da*k)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(Ia*n)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*f)+C(C(pa*k)+C(C(oa*n)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*f)+C(C(ma*k)+C(C(la*n)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*f)+C(C(ja*k)+C(C(ia*n)+C(0))))),j(2))&2147483647),q())))}else{J=0}if(J){break f}if(t[b+96|0]&1){if(Ba[v[v[V>>2]>>2]](V,1,d+12|0)|0){break f}break e}v[a>>2]=R;e=1;Ea=v[d+12>>2];a=c}J=v[b+100>>2]&-2;v[d+12>>2]=J;E=C(C(C(i+g)*C(.5))+C(0));f=gr?r:A;G=kC(9.999999974752427e-7);$=C(F+C(-9.999999974752427e-7));F=C(g-E);Q=C(r-H);_=C(m-G);R=c&$>C(C(C((l(2,(p(C(C(F*f)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(Q*k)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(_*n)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*f)+C(C(pa*k)+C(C(oa*n)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*f)+C(C(ma*k)+C(C(la*n)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*f)+C(C(ja*k)+C(C(ia*n)+C(0))))),j(2))&2147483647),q())));f=gC(9.999999974752427e-7)){c=C(k+C(-9.999999974752427e-7))>C(C(C((l(2,(p(C(C(F*f)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(Q*r)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(_*m)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*f)+C(C(pa*r)+C(C(oa*m)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*f)+C(C(ma*r)+C(C(la*m)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*f)+C(C(ja*r)+C(C(ia*m)+C(0))))),j(2))&2147483647),q())))}else{c=0}g:{if(R|c|g>2]>>2]](V,1,d+12|0)|0){break g}break e}v[a>>2]=J;a=a+4|0;e=1;Ea=v[d+12>>2]}J=v[b+104>>2]&-2;v[d+12>>2]=J;n=C(C(C(aa+x)*C(.5))+C(0));g=s>x?x:s;r=gba?ba:A;U=fN?N:y;I=iC(9.999999974752427e-7);E=C(o+C(-9.999999974752427e-7));o=C(x-n);I=C(ba-ea);K=C(N-U);R=c&E>C(C(C((l(2,(p(C(C(o*g)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(I*f)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(K*i)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*g)+C(C(pa*f)+C(C(oa*i)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*g)+C(C(ma*f)+C(C(la*i)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*g)+C(C(ja*f)+C(C(ia*i)+C(0))))),j(2))&2147483647),q())));g=m>x?x:m;g=C(m-(gba?ba:r;f=C(r-(fN?N:k;i=C(k-(iC(9.999999974752427e-7)){c=C(m+C(-9.999999974752427e-7))>C(C(C((l(2,(p(C(C(o*g)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(I*f)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(K*i)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*g)+C(C(pa*f)+C(C(oa*i)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*g)+C(C(ma*f)+C(C(la*i)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*g)+C(C(ja*f)+C(C(ia*i)+C(0))))),j(2))&2147483647),q())))}else{c=0}h:{if(R|c|x>2]>>2]](V,1,d+12|0)|0){break h}break e}v[a>>2]=J;a=a+4|0;e=1;Ea=v[d+12>>2]}R=v[b+108>>2]&-2;v[d+12>>2]=R;aa=C(C(C(sa+ra)*C(.5))+C(0));g=s>ra?ra:s;m=gua?ua:A;k=xta?ta:y;n=fC(9.999999974752427e-7);E=C(N+C(-9.999999974752427e-7));N=C(ra-aa);n=C(ua-ba);o=C(ta-k);Ka=c&E>C(C(C((l(2,(p(C(C(N*g)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(n*x)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(o*f)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*g)+C(C(pa*x)+C(C(oa*f)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*g)+C(C(ma*x)+C(C(la*f)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*g)+C(C(ja*x)+C(C(ia*f)+C(0))))),j(2))&2147483647),q())));g=i>ra?ra:i;g=C(i-(gua?ua:m;x=C(m-(xta?ta:r;f=C(r-(fC(9.999999974752427e-7)){J=C(i+C(-9.999999974752427e-7))>C(C(C((l(2,(p(C(C(N*g)+C(0))),j(2))&2147483647),q())+(l(2,(p(C(C(n*x)+C(0))),j(2))&2147483647),q()))+(l(2,(p(C(C(o*f)+C(0))),j(2))&2147483647),q()))+C(C((l(2,(p(C(C(qa*g)+C(C(pa*x)+C(C(oa*f)+C(0))))),j(2))&2147483647),q())+(l(2,(p(C(C(na*g)+C(C(ma*x)+C(C(la*f)+C(0))))),j(2))&2147483647),q()))+(l(2,(p(C(C(ka*g)+C(C(ja*x)+C(C(ia*f)+C(0))))),j(2))&2147483647),q())))}else{J=0}c=a;i:{if(Ka|J|ra>2]>>2]](V,1,d+12|0)|0){break i}break e}v[a>>2]=R;e=1;Ea=v[d+12>>2];c=a+4|0}if(c>>>0>d+16>>>0){continue}}break}xa=d+528|0}v[h+36>>2]=143208;v[h+32>>2]=143184;if(w[h+208|0]){a=v[h+40>>2];Ba[v[v[a>>2]>>2]](a,h+96|0,h+160|0,h+172|0,h+184|0,h+92|0,h+196|0)|0}xa=h+288|0}function N3(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=C(0),m=0,n=0,o=C(0),p=C(0),q=0,r=0,s=0,A=0,E=C(0),F=0,G=C(0),H=C(0),I=0,J=0,L=C(0),M=C(0),N=C(0),O=C(0);n=xa-48|0;xa=n;a:{b:{e=v[b+8>>2];c:{if(e>>>0<3){break c}J=v[b+20>>2];g=v[b+16>>2];if(!((e>>>0)%3|0?g:1)|(y[b+28>>2]<2?v[b+32>>2]:0)){break c}d:{if(e>>>0>=65536){if(w[b+24|0]&2){break c}if(v[b+4>>2]){break d}break c}if(!v[b+4>>2]){break c}}if(y[b>>2]<12){break c}if(!g|y[b+12>>2]>=(w[b+24|0]&2?6:12)>>>0){break b}}b9(v[37696],4,9248,771,76121,0);b=0;break a}e:{f:{g:{h:{e=v[a+8>>2];switch(v[e+40>>2]){case 0:break h;case 1:break g;default:break f}}l=z[e+32>>2];if(lC(1)){break f}break e}if(v[e+32>>2]-4>>>0<12){break e}}b9(v[37696],4,9248,778,76172,0);b=0;break a}g=v[b+20>>2];h=v[b+16>>2];v[n+24>>2]=h;v[n+28>>2]=g;g=v[b+12>>2];v[n+16>>2]=v[b+8>>2];v[n+20>>2]=g;g=v[b+4>>2];v[n+8>>2]=v[b>>2];v[n+12>>2]=g;f=x[b+24>>1];u[n+32>>1]=f;g=v[b+32>>2];v[n+36>>2]=v[b+28>>2];v[n+40>>2]=g;i:{if(!h){g=v[n+16>>2];v[n+28>>2]=(g>>>0)/3;v[n+20>>2]=12;u[n+32>>1]=f&65533;e=(g|0)!=(g&1073741823)?-1:g<<2;if(e){b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,h,9248,799)|0}else{e=0}j:{if(!g){break j}b=0;if(g-1>>>0>=7){h=g&-8;while(1){v[e+(b<<2)>>2]=b;f=b|1;v[e+(f<<2)>>2]=f;f=b|2;v[e+(f<<2)>>2]=f;f=b|3;v[e+(f<<2)>>2]=f;f=b|4;v[e+(f<<2)>>2]=f;f=b|5;v[e+(f<<2)>>2]=f;f=b|6;v[e+(f<<2)>>2]=f;f=b|7;v[e+(f<<2)>>2]=f;b=b+8|0;m=m+8|0;if((h|0)!=(m|0)){continue}break}}g=g&7;if(!g){break j}while(1){v[e+(b<<2)>>2]=b;b=b+1|0;j=j+1|0;if((g|0)!=(j|0)){continue}break}}v[n+24>>2]=e;b=0;if(!O3(a,n+8|0,v[a+8>>2],c,d)){break a}if(!e){break i}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);break i}b=0;if(!O3(a,n+8|0,e,c,d)){break a}}k:{if(!w[v[a+8>>2]+14|0]){break k}b=v[a+12>>2];I9(v[b+56>>2],v[b+72>>2],B(v[b+68>>2],12));b=v[a+12>>2];d=v[b+48>>2];if(!d){break k}j=v[b+68>>2];c=(j&1073741823)!=(j|0)?-1:j<<2;l:{if(!c){c=0;break l}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,638)|0;b=v[a+12>>2];j=v[b+68>>2];d=v[b+48>>2]}v[b+64>>2]=c;I9(c,d,j<<2)}Ba[v[v[a>>2]+12>>2]](a);b=v[a+12>>2];CV(b+20|0,v[b+12>>2],v[b+16>>2]);l=C(D(z[b+32>>2]));k=C(D(z[b+20>>2]));l=k>2]));o=C(D(z[b+24>>2]));k=k>o?k:o;l=k>2]));o=C(D(z[b+28>>2]));k=k>o?k:o;z[b+44>>2]=(k>2];g=w[b+13|0];m:{if(!(v[b+24>>2]&4?g:1)){break m}n:{b=v[a+12>>2];c=v[b+68>>2];if(!c){v[b+76>>2]=0;J9(0,0,c);break n}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?35013:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,250)|0;v[v[a+12>>2]+76>>2]=b;J9(b,0,c);if(c>>>0<1073741824){break n}b9(v[37696],4,9248,257,73172,0);break m}m=v[v[a+12>>2]+72>>2];b=xa-32|0;xa=b;v[b+28>>2]=1036831949;d=v[a+12>>2];v[b+8>>2]=v[d+68>>2];e=v[d+72>>2];j=w[d+8|0];u[b+20>>1]=257;v[b+12>>2]=j&2?0:e;v[b+16>>2]=e&j<<30>>31;v[b+24>>2]=v[d+16>>2];d=v[37696];e=Ba[v[v[d>>2]+20>>2]](d)|0?34627:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,24,e,9248,747)|0;v[d+12>>2]=0;v[d>>2]=0;v[d+4>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[a+4>>2]=d;if(!h3(d,b+8|0)){d=v[a+4>>2];if(d){d=g3(d);e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}v[a+4>>2]=0}xa=b+32|0;d=v[a+4>>2];o:{if(!d){break o}b=v[d+8>>2];if((b|0)!=v[v[a+12>>2]+68>>2]|!b){break o}while(1){b=v[d+12>>2]+B(i,12)|0;if(v[b>>2]<0){d=v[v[a+12>>2]+76>>2]+i|0;t[d|0]=w[d|0]|8}if(v[b+4>>2]<0){d=v[v[a+12>>2]+76>>2]+i|0;t[d|0]=w[d|0]|16}if(v[b+8>>2]<0){b=v[v[a+12>>2]+76>>2]+i|0;t[b|0]=w[b|0]|32}i=i+1|0;d=v[a+4>>2];if(i>>>0>2]){continue}break}}if(!g){break m}b=B(c,3);d=(b|0)!=(b&1073741823)?-1:b<<2;if(d){b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,e,9248,281)|0}else{b=0}v[v[a+12>>2]+52>>2]=b;J9(b,255,B(c,12));b=v[a+4>>2];d=v[b>>2];if(!d){break m}s=v[b+20>>2];F=v[a+12>>2];i=v[b+16>>2];e=v[b+4>>2];while(1){d=d-1|0;if(x[i+2>>1]>=2){b=s+(v[i+4>>2]<<2)|0;q=v[b+4>>2];h=m+B(q,12)|0;A=v[b>>2];f=m+B(A,12)|0;j=v[f+4>>2];g=0;r=v[f>>2];b=v[e>>2];I=(r|0)!=(b|0);c=v[e+4>>2];p:{if(!I&(c|0)==(j|0)){break p}r=(c|0)!=(r|0);if(!r&(b|0)==(j|0)){break p}g=2;f=v[f+8>>2];if(!I&(f|0)==(c|0)|!r&(b|0)==(f|0)){break p}if((b|0)==(j|0)){g=1;if((c|0)==(f|0)){break p}}g=(c|0)==(j|0)?(b|0)==(f|0)?1:255:255}j=0;r=v[h>>2];I=(r|0)!=(b|0);f=v[h+4>>2];q:{if(!I&(f|0)==(c|0)){break q}r=(c|0)!=(r|0);if(!r&(b|0)==(f|0)){break q}j=2;h=v[h+8>>2];if(!I&(h|0)==(c|0)|!r&(b|0)==(h|0)){break q}if((b|0)==(f|0)){j=1;if((c|0)==(h|0)){break q}}j=(c|0)==(f|0)?(b|0)==(h|0)?1:255:255}b=v[F+52>>2];v[b+(B(A,3)+g<<2)>>2]=q;v[b+(B(q,3)+j<<2)>>2]=A}e=e+8|0;i=i+8|0;if(d){continue}break}}f=0;r:{if(!w[v[a+8>>2]+14|0]){break r}b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?44281:63804;e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,44,c,9248,682)|0;b=e;v[b>>2]=0;v[b+4>>2]=0;t[b+40|0]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;j=v[a+12>>2];v[j+84>>2]=b;q=v[a+8>>2];A=xa-32|0;xa=A;i=A+8|0;b=i;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b+8>>2]=0;v[b>>2]=v[j+12>>2];v[b+12>>2]=v[j+68>>2];c=v[j+16>>2];d=v[j+56>>2];v[b+20>>2]=0;v[b+16>>2]=d;v[b+4>>2]=c;d=xa-176|0;xa=d;b=v[b+12>>2];g=d+152|0;v[g+8>>2]=0;v[g>>2]=0;v[g+4>>2]=0;s:{if(!m3(g,i,32)){break s}c=b<<2;if(c){h=v[37696];f=Ba[v[v[h+12>>2]+8>>2]](h+12|0,c,24422,12354,509)|0}v[d+16>>2]=b;v[d+12>>2]=0;v[d+8>>2]=32;v[d+4>>2]=f;v[d>>2]=i;J9(d+20|0,0,128);b=xa-16|0;xa=b;v[b+12>>2]=0;v[b+8>>2]=0;o3(v[g+4>>2],b+12|0,b+8|0,2959,d);xa=b+16|0;x$(i,f);if(f){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,f)}if(y[i+12>>2]<=32){v[e+32>>2]=1;b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,1168,24422,12354,289)|0;v[e+28>>2]=b;v[b+1152>>2]=1;c=v[g+4>>2];l=z[c+16>>2];k=z[c+20>>2];o=z[c+4>>2];E=z[c+8>>2];p=z[c+12>>2];G=z[c>>2];v[b+524>>2]=0;v[b+12>>2]=0;z[b+512>>2]=C(p-G)*C(.5);z[b>>2]=C(G+p)*C(.5);z[b+520>>2]=C(k-E)*C(.5);z[b+516>>2]=C(l-o)*C(.5);z[b+8>>2]=C(E+k)*C(.5);z[b+4>>2]=C(o+l)*C(.5);v[b+1024>>2]=v[i+12>>2]<<1|1;f=y$(e,i,c);break s}x3(v[v[g+4>>2]+24>>2]);v[d>>2]=1;b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?45015:63804;m=y3(Ba[v[v[b+12>>2]+8>>2]](b+12|0,1032,c,12354,337)|0);z3(g,m,v[g+4>>2],C(.00019999999494757503),d);f=y$(e,i,v[g+4>>2]);if(!f){break s}s=v[m+1028>>2]+1|0;v[d+172>>2]=s;h=v[d>>2];c=(h|0)!=(h&134217727)?-1:h<<5;if(c){b=v[37696];F=Ba[v[v[b>>2]+20>>2]](b)|0?48237:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,F,12354,419)|0}else{b=0}t:{if(!h){break t}c=b;if(h&1){v[b+8>>2]=0;v[b+12>>2]=0;v[b+16>>2]=-1082130432;v[b+20>>2]=-1082130432;v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=-1082130432;v[b+28>>2]=-1;c=b+32|0}if(!(h-1&134217727)){break t}F=b+(h<<5)|0;while(1){v[c+8>>2]=0;v[c+12>>2]=0;v[c+16>>2]=-1082130432;v[c+20>>2]=-1082130432;v[c>>2]=0;v[c+4>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=-1082130432;v[c+28>>2]=-1;v[c+56>>2]=-1082130432;v[c+60>>2]=-1;v[c+48>>2]=-1082130432;v[c+52>>2]=-1082130432;v[c+40>>2]=0;v[c+44>>2]=0;c=c- -64|0;if((F|0)!=(c|0)){continue}break}}c=v[g+4>>2];l=z[c+16>>2];k=z[c+20>>2];o=z[c+4>>2];E=z[c+8>>2];z[b>>2]=C(z[c>>2]+z[c+12>>2])*C(.5);z[b+8>>2]=C(E+k)*C(.5);z[b+4>>2]=C(o+l)*C(.5);l=z[c+16>>2];k=z[c>>2];o=z[c+12>>2];E=z[c+4>>2];z[b+24>>2]=C(z[c+20>>2]-z[c+8>>2])*C(.5);z[b+20>>2]=C(l-E)*C(.5);z[b+16>>2]=C(o-k)*C(.5);v[b+28>>2]=(v[m+1028>>2]<<1)+2048;v[e+36>>2]=s;v[d+168>>2]=0;v[d+164>>2]=0;s=d+172|0;c=m;m=d+168|0;A3(b,1,s,c,m,d+164|0);v[e+24>>2]=b;v[e+20>>2]=h;m1(e,b);b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,B(h,1168),24422,12354,447)|0;v[e+32>>2]=h;v[e+28>>2]=b;v[d+172>>2]=1;c=v[e+24>>2];v[d+168>>2]=((v[c+28>>2]>>>1&1023)-v[c+12>>2]|0)+1;n1(e,b,c,1,m,s);v[e+32>>2]=v[d+172>>2]}l3(g);xa=d+176|0;u:{if(!f){b9(v[37696],32,9248,1244,67383,0);break u}d=v[i+8>>2];if(!(w[q+14|0]?0:w[q+12|0])){b=v[j+68>>2];c=(b&1073741823)!=(b|0)?-1:b<<2;v:{if(!c){c=0;break v}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,9248,1252)|0;b=v[j+68>>2]}e=v[j+64>>2];w:{x:{y:{if(b){b=0;if(e){break y}while(1){e=b<<2;v[e+c>>2]=v[d+e>>2];b=b+1|0;if(b>>>0>2]){continue}break}b=j- -64|0;break w}b=j- -64|0;if(!e){break w}break x}while(1){g=b<<2;v[g+c>>2]=v[e+(v[d+g>>2]<<2)>>2];b=b+1|0;if(b>>>0>2]){continue}break}b=j- -64|0}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e)}v[b>>2]=c;d=v[i+8>>2]}if(d){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[i+8>>2]=0}b=v[i+8>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[i+8>>2]=0;xa=A+32|0;f=0;d=0;j=0;q=xa-32|0;xa=q;b=v[a+12>>2];e=v[b+68>>2];c=B(e,12);if(c){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,9248,657)|0;e=v[b+68>>2]}c=e<<4;if(c){e=v[37696];j=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,24422,9248,659)|0;e=v[b+68>>2]}b=v[a+12>>2];v[b+60>>2]=j;A=v[b+56>>2];m=v[b+16>>2];b=0;c=B(e,36);if(c){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,24422,18748,147)|0}z:{if(e){while(1){l=C(0);k=C(0);o=C(0);r=B(f,12);g=r+A|0;c=v[g+4>>2];h=m+B(c,12)|0;i=v[g>>2];s=m+B(i,12)|0;E=z[s>>2];G=C(z[h>>2]-E);g=v[g+8>>2];F=m+B(g,12)|0;p=z[s+4>>2];H=C(z[F+4>>2]-p);L=C(z[F>>2]-E);p=C(z[h+4>>2]-p);E=C(C(G*H)-C(L*p));N=p;p=z[s+8>>2];M=C(z[F+8>>2]-p);O=H;H=C(z[h+8>>2]-p);p=C(C(N*M)-C(O*H));G=C(C(H*L)-C(M*G));H=C(C(E*E)+C(C(p*p)+C(G*G)));if(H>C(0)){k=C(C(1)/C(K(H)));o=C(E*k);l=C(p*k);k=C(G*k)}h=d+r|0;z[h+8>>2]=o;z[h+4>>2]=k;z[h>>2]=l;h=B(f,36)+b|0;v[h+12>>2]=c>>>0>>0?c:g;v[h+8>>2]=f;v[h+4>>2]=c>>>0>>0?i:c;v[h>>2]=c>>>0>i>>>0?i:c;v[h+20>>2]=f;v[h+16>>2]=c>>>0>g>>>0?c:g;v[h+32>>2]=f;v[h+28>>2]=g>>>0>>0?i:g;v[h+24>>2]=g>>>0>i>>>0?i:g;f=f+1|0;if((e|0)!=(f|0)){continue}break}L3(b,B(e,3));c=0;while(1){f=B(c,12);i=f+A|0;g=v[i+8>>2];h=v[i+4>>2];i=v[i>>2];f=d+f|0;l=z[f>>2];z[q+8>>2]=l;k=z[f+4>>2];z[q+12>>2]=k;o=z[f+8>>2];z[q+16>>2]=o;f=m+B(i,12)|0;z[q+20>>2]=-C(C(o*z[f+8>>2])+C(C(l*z[f>>2])+C(k*z[f+4>>2])));f=q+8|0;s=M3(m,d,A,e,i,h,f,b,c);h=M3(m,d,A,e,h,g,f,b,c);g=M3(m,d,A,e,g,i,f,b,c);i=(c<<4)+j|0;v[i+12>>2]=0;v[i+8>>2]=g;v[i+4>>2]=h;v[i>>2]=s;c=c+1|0;if((e|0)!=(c|0)){continue}break}break z}L3(b,0)}if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}if(d){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}xa=q+32|0;A:{B:{c=(J|0)!=(J&1073741823)?-1:J<<2;C:{if(c){b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,690)|0;e=v[a+12>>2];if(!v[e+68>>2]){break B}a=e+68|0;break C}e=v[a+12>>2];if(!v[e+68>>2]){break r}d=0;a=e+68|0}c=v[e+48>>2];b=0;while(1){v[(v[c+(b<<2)>>2]<<2)+d>>2]=b;b=b+1|0;j=v[a>>2];if(b>>>0>>0){continue}break}if(!j){break A}c=v[e+64>>2];b=0;while(1){e=c+(b<<2)|0;v[e>>2]=v[(v[e>>2]<<2)+d>>2];b=b+1|0;if(b>>>0>2]){continue}break}break A}if(!d){break r}}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,d)}b=1}xa=n+48|0;return b}function aq(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,u=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;n=xa-256|0;xa=n;a:{if(v[a+4656>>2]){b9(v[37696],2,11709,468,66712,0);break a}l=a+32|0;e=v[l+2384>>2];f=v[e+12>>2]+B(v[e+8>>2],12)|0;i=v[f+4>>2];b:{if(i){v[f+4>>2]=v[i>>2];break b}c:{i=v[f+8>>2];if((i|0)==v[e>>2]){break c}h=v[e+4>>2];v[f+8>>2]=i+1;f=v[f>>2];if(!f){break c}i=f+B(i,h)|0;break b}i=NO(e)}f=0;e=i+39|0;f=e>>>0<39?1:f;e=(f&63)<<26|e>>>6;j=f>>>6|0;f=i>>>6|0;m=j-(f>>>0>e>>>0)|0;s=e-f|0;k=m;e=s+1|0;k=e?k:k+1|0;f=k;h=0;k=h;r=e&7;d:{if(!(h|r)){h=i;break d}h=i;while(1){j=e;e=e-1|0;f=f-!j|0;h=h- -64|0;j=g;g=p+1|0;j=g?j:j+1|0;p=g;g=j;if((r|0)!=(p|0)|(k|0)!=(g|0)){continue}break}}if(!m&s>>>0>=7|m){while(1){h=h+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}v[n+224>>2]=i;e=v[l+2388>>2];f=v[e+12>>2]+B(v[e+8>>2],12)|0;i=v[f+4>>2];e:{if(i){v[f+4>>2]=v[i>>2];break e}f:{g=v[f+8>>2];if((g|0)==v[e>>2]){break f}i=v[e+4>>2];v[f+8>>2]=g+1;f=v[f>>2];if(!f){break f}i=f+B(g,i)|0;break e}i=NO(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;m=e-f|0;g=0;s=g;f=k;e=m+1|0;f=e?f:f+1|0;r=e&7;g:{if(!(g|r)){h=i;break g}p=0;h=i;while(1){j=e;e=e-1|0;f=f-!j|0;h=h- -64|0;j=g;g=p+1|0;j=g?j:j+1|0;p=g;g=j;if((r|0)!=(p|0)|(s|0)!=(g|0)){continue}break}}if(!k&m>>>0>=7|k){while(1){h=h+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}v[n+220>>2]=i;e=v[l+2392>>2];f=v[e+12>>2]+B(v[e+8>>2],12)|0;i=v[f+4>>2];h:{if(i){v[f+4>>2]=v[i>>2];break h}i:{g=v[f+8>>2];if((g|0)==v[e>>2]){break i}i=v[e+4>>2];v[f+8>>2]=g+1;f=v[f>>2];if(!f){break i}i=f+B(g,i)|0;break h}i=NO(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;m=e-f|0;g=0;s=g;f=k;e=m+1|0;f=e?f:f+1|0;r=e&7;j:{if(!(g|r)){h=i;break j}p=0;h=i;while(1){j=e;e=e-1|0;f=f-!j|0;h=h- -64|0;j=g;g=p+1|0;j=g?j:j+1|0;p=g;g=j;if((r|0)!=(p|0)|(s|0)!=(g|0)){continue}break}}if(!k&m>>>0>=7|k){while(1){h=h+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}v[n+216>>2]=i;v[n+236>>2]=64;v[n+240>>2]=20;v[n+228>>2]=64;v[n+232>>2]=20;v[n+244>>2]=48;t[n+200|0]=1;v[n+208>>2]=0;v[n+212>>2]=8;v[n+204>>2]=n+8;k:{l:{if(!c){break l}s=a+16|0;H=a+5932|0;I=a+5584|0;o=1;m:{while(1){q=E;E=q+1|0;n:{if(E>>>0>=c>>>0){break n}p=0;g=0;f=0;h=v[(E<<2)+b>>2];e=h;i=e+319|0;f=i>>>0<319?1:f;j=f>>>6|0;f=(f&63)<<26|i>>>6;e=e>>>6|0;k=j-(e>>>0>f>>>0)|0;m=f-e|0;i=k;e=m+1|0;k=e?i:i+1|0;f=k;j=0;k=j;r=e&7;if(j|r){while(1){j=e;e=e-1|0;f=f-!j|0;h=h- -64|0;j=g;g=p+1|0;j=g?j:j+1|0;p=g;g=j;if((r|0)!=(p|0)|(k|0)!=(g|0)){continue}break}}if(!i&m>>>0<7){break n}while(1){h=h+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}o:{p:{e=v[(q<<2)+b>>2];h=x[e+4>>1];switch(v[(v[((h<<2)+86240|0)+72>>2]+e|0)+4>>2]>>>30|0){case 0:break o;case 3:break p;default:break m}}f=v[e+v[((x[e+4>>1]<<2)+86240|0)+72>>2]>>2];if(f){g=f-16|0}else{g=0}if((g|0)!=(a|0)){break m}h=x[e+4>>1]}q:{r:{s:{switch((h&65535)-5|0){case 1:if(v[e+40>>2]?d:1){f=v[e+52>>2];if(w[(f&1?v[e+56>>2]:(e+v[((f>>>22&60)+89188|0)+12>>2]|0)+56|0)|0]&8){break r}bq(n+8|0,x[e+24>>1]+1|0);F=v[n+204>>2];p=0;g=0;m=e;o=n+216|0;r=e+v[o+16>>2]|0;e=x[r+4>>1];A=(e|0)==1?r:v[r>>2];y=v[o+4>>2];t:{if(!e){break t}i=v[A>>2];e=i;h=v[o+28>>2]+144|0;f=e+h|0;k=0;k=f>>>0>>0?1:k;h=k-!f|0;f=f-1|0;f=(h&63)<<26|f>>>6;e=e>>>6|0;j=(h>>>6|0)-(e>>>0>f>>>0)|0;k=f-e|0;h=j;e=k+1|0;j=e?h:h+1|0;f=j;j=0;u=j;D=e&7;if(j|D){while(1){j=e;e=e-1|0;f=f-!j|0;i=i- -64|0;q=g;g=p+1|0;q=g?q:q+1|0;p=g;g=q;if((D|0)!=(p|0)|(u|0)!=(g|0)){continue}break}}if(!h&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=UJ(y,l,m+v[o+12>>2]|0);v[u>>2]=138660;e=v[l+2388>>2];f=v[e+12>>2]+B(v[e+8>>2],12)|0;h=v[f+4>>2];u:{if(h){v[f+4>>2]=v[h>>2];break u}v:{g=v[f+8>>2];if((g|0)==v[e>>2]){break v}i=v[e+4>>2];v[f+8>>2]=g+1;f=v[f>>2];if(!f){break v}h=f+B(g,i)|0;break u}h=NO(e)}j=0;e=h+51|0;j=e>>>0<51?1:j;e=(j&63)<<26|e>>>6;f=h>>>6|0;j=(j>>>6|0)-(f>>>0>e>>>0)|0;y=e-f|0;g=0;D=g;f=j;e=y+1|0;f=e?f:f+1|0;G=e&7;w:{if(!(g|G)){i=h;break w}p=0;i=h;while(1){k=e;e=e-1|0;f=f-!k|0;i=i- -64|0;q=g;g=p+1|0;q=g?q:q+1|0;p=g;g=q;if((G|0)!=(p|0)|(D|0)!=(g|0)){continue}break}}if(!j&y>>>0>=7|j){while(1){i=i+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}v[o+4>>2]=h;PP(l,A,x[r+4>>1],v[o+28>>2],u,o+8|0,F);v[l+2664>>2]=v[l+2664>>2]+1;f=v[n+204>>2];v[m+48>>2]=s;v[m+52>>2]=v[m+52>>2]&1073741823|-2147483648;g=x[m+24>>1];if(g){i=m+20|0;h=(g|0)==1?i:v[m+20>>2];o=0;while(1){e=v[h+(o<<2)>>2];j=w[e+112|0];v[e+16>>2]=v[e+16>>2]+1;if(v[e+196>>2]<0){v[e+32>>2]=s;v[e+36>>2]=v[e+36>>2]&1073741823|-2147483648}if(j&2){lu(i,I,o,e,m,0,f?f+B(o,24)|0:0,(d|0)!=0)}o=o+1|0;if((g|0)!=(o|0)){continue}break}}e=v[a+5936>>2];v[m+44>>2]=e;v[n+252>>2]=m;x:{if(e>>>0>=(v[a+5940>>2]&2147483647)>>>0){_p(H,n+252|0);break x}v[v[a+5932>>2]+(e<<2)>>2]=m;v[a+5936>>2]=e+1}if(!v[m+16>>2]){break q}qh(m+12|0);break q}b9(v[37696],8,11709,513,71747,0);break k;case 0:if(v[e+40>>2]?d:1){f=v[e+52>>2];if(!(w[(f&1?v[e+56>>2]:(e+v[((f>>>22&60)+89188|0)+12>>2]|0)+56|0)|0]&8)){bq(n+8|0,x[e+24>>1]+1|0);D=v[n+204>>2];p=0;g=0;A=xa-16|0;xa=A;j=e;o=n+216|0;y=e+v[o+24>>2]|0;e=x[y+4>>1];F=(e|0)==1?y:v[y>>2];r=v[o>>2];y:{if(!e){break y}i=v[F>>2];e=i;k=v[o+28>>2]+144|0;h=e+k|0;f=0;f=h>>>0>>0?1:f;f=f-!h|0;h=h-1|0;k=f>>>6|0;f=(f&63)<<26|h>>>6;e=e>>>6|0;q=k-(e>>>0>f>>>0)|0;m=f-e|0;h=q;e=m+1|0;q=e?h:h+1|0;f=q;k=0;q=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)|(q|0)!=(g|0)){continue}break}}if(!h&m>>>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=j+v[o+20>>2]|0;m=$G(g,l,r,0);e=v[l+2392>>2];f=v[e+12>>2]+B(v[e+8>>2],12)|0;h=v[f+4>>2];z:{if(h){v[f+4>>2]=v[h>>2];break z}A:{g=v[f+8>>2];if((g|0)==v[e>>2]){break A}i=v[e+4>>2];v[f+8>>2]=g+1;f=v[f>>2];if(!f){break A}h=f+B(g,i)|0;break z}h=NO(e)}q=0;e=h+175|0;q=e>>>0<175?1:q;e=(q&63)<<26|e>>>6;f=h>>>6|0;q=(q>>>6|0)-(f>>>0>e>>>0)|0;u=e-f|0;g=0;G=g;f=q;e=u+1|0;f=e?f:f+1|0;J=e&7;B:{if(!(g|J)){i=h;break B}p=0;i=h;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((J|0)!=(p|0)|(G|0)!=(g|0)){continue}break}}if(!q&u>>>0>=7|q){while(1){i=i+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}v[o>>2]=h;e=w[v[m+100>>2]+28|0]&32;C:{D:{if(w[v[m+44>>2]+9|0]==2){if(!e){break C}h=v[m+144>>2];f=h>>>7|0;e=f+32>>>5|0;if(e>>>0<=(v[l+4740>>2]&2147483647)>>>0){i=v[l+4736>>2];break D}g=v[37696]+12|0;i=Ba[v[v[g>>2]+8>>2]](g,e<<2,24422,17999,438)|0;g=v[l+4736>>2];E:{if(!g){break E}I9(i,g,v[l+4740>>2]<<2);if(v[l+4740>>2]<0){break E}g=v[l+4736>>2];if(!g){break E}k=v[37696]+12|0;Ba[v[v[k>>2]+12>>2]](k,g)}g=v[l+4740>>2];J9((g<<2)+i|0,0,e-g<<2);v[l+4740>>2]=e;v[l+4736>>2]=i;break D}if(!e){break C}h=v[m+144>>2];f=h>>>7|0;e=f+32>>>5|0;if(e>>>0<=(v[l+4728>>2]&2147483647)>>>0){i=v[l+4724>>2];break D}g=v[37696]+12|0;i=Ba[v[v[g>>2]+8>>2]](g,e<<2,24422,17999,438)|0;g=v[l+4724>>2];F:{if(!g){break F}I9(i,g,v[l+4728>>2]<<2);if(v[l+4728>>2]<0){break F}g=v[l+4724>>2];if(!g){break F}k=v[37696]+12|0;Ba[v[v[k>>2]+12>>2]](k,g)}g=v[l+4728>>2];J9((g<<2)+i|0,0,e-g<<2);v[l+4728>>2]=e;v[l+4724>>2]=i}e=(h>>>10&4194300)+i|0;v[e>>2]=v[e>>2]|1<>2];if(f>>>0<=4294967167){e=v[l+1012>>2];v[A+8>>2]=f;Ba[v[v[e>>2]+24>>2]](e,m- -64|0,A+8|0)}PP(l,F,x[y+4>>1],v[o+28>>2],m,o+8|0,D);G:{H:{if(!v[r+176>>2]|w[v[r+176>>2]+31|0]!=1){break H}e=v[r+176>>2];if(w[(w[e+31|0]==1?e:0)+31|0]!=1){break H}v[l+2672>>2]=v[l+2672>>2]+1;break G}v[l+2668>>2]=v[l+2668>>2]+1}xa=A+16|0;I:{J:{if(z[j+308>>2]!=C(0)|z[j+284>>2]!=C(0)|(z[j+288>>2]!=C(0)|z[j+292>>2]!=C(0))){break J}if(z[j+296>>2]!=C(0)|z[j+300>>2]!=C(0)){break J}e=1;if(z[j+304>>2]==C(0)){break I}}e=0}f=v[n+204>>2];v[j+48>>2]=s;v[j+312>>2]=e;v[j+52>>2]=v[j+52>>2]&1073741823|-2147483648;g=x[j+24>>1];if(g){i=j+20|0;h=(g|0)==1?i:v[j+20>>2];o=0;while(1){e=v[h+(o<<2)>>2];k=w[e+112|0];v[e+16>>2]=v[e+16>>2]+1;if(v[e+196>>2]<0){v[e+32>>2]=s;v[e+36>>2]=v[e+36>>2]&1073741823|-2147483648}if(k&2){lu(i,I,o,e,j,1,f?f+B(o,24)|0:0,(d|0)!=0)}o=o+1|0;if((g|0)!=(o|0)){continue}break}}e=v[a+5936>>2];v[j+44>>2]=e;v[n+252>>2]=j;K:{if(e>>>0>=(v[a+5940>>2]&2147483647)>>>0){_p(H,n+252|0);break K}v[v[a+5932>>2]+(e<<2)>>2]=j;v[a+5936>>2]=e+1}if(!v[j+16>>2]){break q}qh(j+12|0);break q}Zp(a,e,0,(d|0)!=0);break q}b9(v[37696],8,11709,536,71747,0);break k;default:break s}}b9(v[37696],2,11709,553,23402,0);break l}Yp(a,e,0,(d|0)!=0)}o=c>>>0>E>>>0;if((c|0)!=(E|0)){continue}break}q=c;break l}b9(v[37696],8,11709,495,75462,0)}if(!d){break k}e=a+5584|0;c=xa-16|0;xa=c;f=v[d+16>>2];if(f){g=v[d+8>>2];i=v[d+24>>2];v[c+12>>2]=v[d+32>>2];v[c+8>>2]=i;v[c+4>>2]=f;v[c>>2]=g;f=v[e>>2];Ba[v[v[f>>2]+20>>2]](f,c)}f=v[d+20>>2];if(f){g=v[d+12>>2];i=v[d+28>>2];v[c+12>>2]=v[d+36>>2];v[c+8>>2]=i;v[c+4>>2]=f;v[c>>2]=g;d=v[e+36>>2];Ba[v[v[d>>2]+20>>2]](d,c)}xa=c+16|0}c=0;j=xa-48|0;xa=j;f=v[n+220>>2];L:{if(!f){break L}e=v[l+2388>>2];if(w[e+24|0]){OO(v[e+12>>2],v[e+16>>2])}d=v[e+16>>2]-1|0;if((d|0)<0){break L}k=B(v[e+4>>2],v[e>>2]);i=v[e+12>>2];while(1){g=c+d>>1;h=v[i+B(g,12)>>2];if(!(h>>>0>f>>>0|f>>>0>=h+k>>>0)){c=i+B(g,12)|0;v[f>>2]=v[c+4>>2];v[c+4>>2]=f;if(w[e+24|0]){v[e+8>>2]=g}t[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=v[n+216>>2];M:{if(!f){break M}e=v[l+2392>>2];if(w[e+24|0]){OO(v[e+12>>2],v[e+16>>2])}c=0;d=v[e+16>>2]-1|0;if((d|0)<0){break M}k=B(v[e+4>>2],v[e>>2]);i=v[e+12>>2];while(1){g=c+d>>1;h=v[i+B(g,12)>>2];if(!(h>>>0>f>>>0|f>>>0>=h+k>>>0)){c=i+B(g,12)|0;v[f>>2]=v[c+4>>2];v[c+4>>2]=f;if(w[e+24|0]){v[e+8>>2]=g}t[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=v[n+224>>2];N:{if(!f){break N}e=v[l+2384>>2];if(w[e+24|0]){OO(v[e+12>>2],v[e+16>>2])}c=0;d=v[e+16>>2]-1|0;if((d|0)<0){break N}k=B(v[e+4>>2],v[e>>2]);i=v[e+12>>2];while(1){g=c+d>>1;h=v[i+B(g,12)>>2];if(!(h>>>0>f>>>0|f>>>0>=h+k>>>0)){c=i+B(g,12)|0;v[f>>2]=v[c+4>>2];v[c+4>>2]=f;if(w[e+24|0]){v[e+8>>2]=g}t[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}}xa=j+48|0;if(!(!(o&1)|!q)){h=0;while(1){O:{P:{Q:{R:{c=v[(h<<2)+b>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 2:break P;case 1:break Q;case 0:break R;default:break O}}cq(a,c,0,1);break O}dq(a,c,0,1);break O}b9(v[37696],2,11709,689,22124,0)}h=h+1|0;if((q|0)!=(h|0)){continue}break}}a=v[n+212>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[n+204>>2];if((a|0)==(n+8|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=n+256|0}function P4(a){a=a|0;var b=0,c=0,d=0,e=0,f=C(0),g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=0,q=0,r=C(0),s=0,A=C(0),E=0,F=0,G=0,H=C(0),I=0,J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=C(0),U=0,V=0,W=0,X=0,Y=0,Z=C(0),_=C(0),$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=0;g=xa-208|0;xa=g;e=v[a+4>>2];b=v[e+8>>2];b=B(b>>>0>8?b:8,12);if(b){c=v[37696];q=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,13134,1845)|0;e=v[a+4>>2]}m=v[e>>2];b=v[e+4>>2];d=v[e+8>>2];a:{b:{if(t[e+37|0]&1){F=g+172|0;p=g+192|0;s=g+176|0;c=B(d,12);if(c){e=v[37696];R=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,24422,13231,137)|0}v[a+28>>2]=R;c:{if(d){f=C(85070586659632215e21);j=C(-85070586659632215e21);c=b;o=C(-85070586659632215e21);r=C(-85070586659632215e21);k=C(85070586659632215e21);l=C(85070586659632215e21);while(1){h=z[c+8>>2];j=j>h?j:h;H=z[c+4>>2];o=o>H?o:H;A=z[c>>2];r=r>A?r:A;f=f>2]=C(f+j)*C(.5);z[a+20>>2]=C(k+o)*C(.5);z[a+16>>2]=C(l+r)*C(.5);if(!d){break c}c=0;while(1){k=z[a+16>>2];l=z[b>>2];f=z[a+20>>2];r=z[b+4>>2];e=B(c,12)+R|0;z[e+8>>2]=z[b+8>>2]-z[a+24>>2];z[e+4>>2]=r-f;z[e>>2]=l-k;b=b+m|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}break c}v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0}if(q4(a,d,R,12,F,q,p,s)){break b}e=3;if(!q){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,q);break a}if(q4(a,d,b,m,g+172|0,q,g+192|0,g+176|0)){break b}e=3;if(!q){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,q);break a}F=a;d=v[g+172>>2];b=g+96|0;z[b>>2]=z[q>>2];z[b+4>>2]=z[q+4>>2];k=z[q+8>>2];v[b+12>>2]=0;z[b+8>>2]=k;c=g+16|0;z[c>>2]=z[q>>2];z[c+4>>2]=z[q+4>>2];k=z[q+8>>2];v[c+12>>2]=0;z[c+8>>2]=k;z[b+24>>2]=z[q>>2];z[b+28>>2]=z[q+4>>2];k=z[q+8>>2];v[b+36>>2]=0;z[b+32>>2]=k;z[c+24>>2]=z[q>>2];z[c+28>>2]=z[q+4>>2];k=z[q+8>>2];v[c+36>>2]=0;z[c+32>>2]=k;z[b+48>>2]=z[q>>2];z[b+52>>2]=z[q+4>>2];k=z[q+8>>2];v[b+60>>2]=0;z[b+56>>2]=k;z[c+48>>2]=z[q>>2];z[c+52>>2]=z[q+4>>2];k=z[q+8>>2];v[c+60>>2]=0;z[c+56>>2]=k;m=1;r=z[q+8>>2];k=z[q+4>>2];l=z[q>>2];d:{if(d>>>0<=1){f=l;j=k;o=r;break d}o=r;j=k;f=l;while(1){e=B(m,12)+q|0;h=z[e>>2];e:{f:{if(h>l){a=c;n=f;l=h;break f}a=b;n=h;if(!(h>2]=h;z[a+4>>2]=z[e+4>>2];f=z[e+8>>2];v[a+12>>2]=m;z[a+8>>2]=f;f=n}h=z[e+4>>2];g:{h:{if(h>k){a=c;n=j;k=h;break h}a=b;n=h;if(!(h>2];z[a+28>>2]=h;z[a+24>>2]=j;j=z[e+8>>2];v[a+36>>2]=m;z[a+32>>2]=j;j=n}h=z[e+8>>2];i:{j:{if(h>r){a=c;n=o;r=h;break j}a=b;n=h;if(!(h>2]=z[e>>2];o=z[e+4>>2];v[a+60>>2]=m;z[a+56>>2]=h;z[a+52>>2]=o;o=n}m=m+1|0;if((d|0)!=(m|0)){continue}break}}l=C(C(C(r+C(C(C(l-f)+k)-j))-o)*C(.5));f=C(l*C(3.5762786865234375e-7));z[g+12>>2]=f>C(3.5762786865234375e-7)?f:C(3.5762786865234375e-7);h=l;l=z[v[F+8>>2]+4>>2];f=C(h*l);z[g+8>>2]=f>l?f:l;l=C(0);i=b;f=C(z[c+28>>2]-z[b+28>>2]);j=C(z[c>>2]-z[b>>2]);j=j>C(0)?j:C(0);a=f>j;b=B(C(z[c+56>>2]-z[b+56>>2])>(a?f:j)?2:a,24);a=i+b|0;b=b+c|0;Z=z[b+8>>2];L=C(z[a+8>>2]-Z);_=z[b>>2];M=C(z[a>>2]-_);$=z[b+4>>2];N=C(z[a+4>>2]-$);f=C(K(C(C(L*L)+C(C(M*M)+C(N*N)))));if(f>C(0)){f=C(C(1)/f);L=C(L*f);N=C(N*f);M=C(M*f)}k:{if(!d){a=0;break k}ba=C(-N);ca=C(-M);da=C(-L);a=0;e=0;while(1){b=B(e,12)+q|0;h=z[b+4>>2];j=C(h-$);H=z[b>>2];o=C(H-_);f=C(C(M*j)+C(o*ba));A=z[b+8>>2];T=C(A-Z);j=C(C(N*T)+C(j*da));o=C(C(L*o)+C(T*ca));T=C(C(f*f)+C(C(j*j)+C(o*o)));if(T>l){r=o;k=f;P=H;O=h;Q=A;l=T;n=j;a=e}e=e+1|0;if((d|0)!=(e|0)){continue}break}}h=C(K(l));l=z[g+12>>2];c=hC(0)){h=C(C(1)/h);f=C(f*h);o=C(o*h);j=C(j*h)}a=B(a,12)+q|0;Q=C(Q+C(l*f));z[a+8>>2]=Q;O=C(O+C(l*o));z[a+4>>2]=O;P=C(P+C(l*j));z[a>>2]=P}l=C(0);f=C(K(C(C(k*k)+C(C(n*n)+C(r*r)))));if(f>C(0)){f=C(C(1)/f);k=C(k*f);r=C(r*f);n=C(n*f)}f=C(C(Q*k)+C(C(P*n)+C(O*r)));e=0;l:{if(!d){a=0;break l}a=0;while(1){b=B(e,12)+q|0;j=C(D(C(C(C(z[b+8>>2]*k)+C(C(z[b>>2]*n)+C(r*z[b+4>>2])))-f)));b=j>l;l=b?j:l;a=b?e:a;e=e+1|0;if((d|0)!=(e|0)){continue}break}}h=C(D(l));l=z[g+12>>2];b=!c;m:{if(!(h>2];A=C(h*k);k=z[a>>2];H=C(k*n);n=z[a+4>>2];n:{if(C(C(A+C(H+C(r*n)))-f)>C(0)){f=C(j+h);j=C(o+n);n=C(l+k);break n}f=C(h-j);j=C(n-o);n=C(k-l)}z[a>>2]=n;z[a+4>>2]=j;z[a+8>>2]=f;b=0}a=v[F+32>>2];c=v[g+172>>2];v[a+24>>2]=c;o:{if(!c){break o}d=v[a+36>>2];e=0;if((c|0)!=1){s=c&-2;while(1){m=d+B(e,24)|0;i=B(e,12)+q|0;z[m>>2]=z[i>>2];z[m+4>>2]=z[i+4>>2];n=z[i+8>>2];v[m+12>>2]=e;z[m+8>>2]=n;i=e|1;m=d+B(i,24)|0;p=B(i,12)+q|0;z[m>>2]=z[p>>2];z[m+4>>2]=z[p+4>>2];n=z[p+8>>2];v[m+12>>2]=i;z[m+8>>2]=n;e=e+2|0;E=E+2|0;if((s|0)!=(E|0)){continue}break}}if(!(c&1)){break o}c=d+B(e,24)|0;d=B(e,12)+q|0;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];n=z[d+8>>2];v[c+12>>2]=e;z[c+8>>2]=n}e=3;if(b){n=z[g+12>>2];k=z[g+8>>2];z[a+108>>2]=z[g+96>>2];z[a+112>>2]=z[g+100>>2];z[a+116>>2]=z[g+104>>2];b=v[g+112>>2];v[a+120>>2]=v[g+108>>2];v[a+124>>2]=b;v[a+128>>2]=v[g+116>>2];z[a+180>>2]=z[g+16>>2];z[a+184>>2]=z[g+20>>2];z[a+188>>2]=z[g+24>>2];b=v[g+32>>2];v[a+192>>2]=v[g+28>>2];v[a+196>>2]=b;v[a+200>>2]=v[g+36>>2];z[a+132>>2]=z[g+120>>2];z[a+136>>2]=z[g+124>>2];z[a+140>>2]=z[g+128>>2];b=v[g+136>>2];v[a+144>>2]=v[g+132>>2];v[a+148>>2]=b;v[a+152>>2]=v[g+140>>2];z[a+204>>2]=z[g+40>>2];z[a+208>>2]=z[g+44>>2];z[a+212>>2]=z[g+48>>2];b=v[g+56>>2];v[a+216>>2]=v[g+52>>2];v[a+220>>2]=b;v[a+224>>2]=v[g+60>>2];z[a+156>>2]=z[g+144>>2];z[a+160>>2]=z[g+148>>2];z[a+164>>2]=z[g+152>>2];b=v[g+160>>2];v[a+168>>2]=v[g+156>>2];v[a+172>>2]=b;v[a+176>>2]=v[g+164>>2];z[a+228>>2]=z[g+64>>2];z[a+232>>2]=z[g+68>>2];z[a+236>>2]=z[g+72>>2];b=v[g+80>>2];v[a+240>>2]=v[g+76>>2];v[a+244>>2]=b;v[a+248>>2]=v[g+84>>2];z[a+256>>2]=k;z[a+252>>2]=n;t[a+104|0]=1;a=v[F+32>>2]}p:{q:{r:{switch(I4(a)|0){case 1:e=1;break p;case 0:s=v[F+32>>2];m=v[s+92>>2];if(!m){break q}e=0;while(1){E=v[v[s+88>>2]+(e<<2)>>2];if(!v[E+48>>2]){while(1){W=0;J=xa-16|0;xa=J;ea=s+260|0;b=v[E>>2];s:{t:{while(1){u:{a=v[v[b+32>>2]+36>>2];if(!(C(C(z[E+20>>2]*z[a+20>>2])+C(C(z[E+12>>2]*z[a+12>>2])+C(z[E+16>>2]*z[a+16>>2])))>C(.9986295104026794))|!(z[E+24>>2]>=z[a+24>>2])){break u}I=0;X=0;p=xa-80|0;xa=p;m=b;V=v[v[b+32>>2]+36>>2];U=v[b+36>>2];d=B(x[V+4>>1]+x[U+4>>1]|0,44);t[p+76|0]=d>>>0>1024;v:{if(d>>>0>=1025){a=u9(d,13134,1446);v[p+72>>2]=a;d=B(x[V+4>>1]+x[U+4>>1]|0,44);break v}a=p-(d+15&16777200)|0;xa=a;v[p+72>>2]=a}J9(a,0,d);t[p+68|0]=0;v[p+56>>2]=0;v[p+60>>2]=0;v[p+48>>2]=0;v[p+52>>2]=-8388609;v[p+32>>2]=0;v[p+16>>2]=0;u[p+12>>1]=0;S=v[p+72>>2];v[p+8>>2]=S;a=v[U>>2];G=(a|0)==(m|0)?v[m+28>>2]:a;d=G;a=0;while(1){i=B(a,44)+S|0;v[i+36>>2]=p+8;z[i>>2]=z[d>>2];z[i+4>>2]=z[d+4>>2];z[i+8>>2]=z[d+8>>2];v[i+20>>2]=v[d+20>>2];c=v[d+16>>2];v[i+12>>2]=v[d+12>>2];v[i+16>>2]=c;c=a+1|0;R=(G|0)==v[d+28>>2]?0:c;Y=v[m+32>>2];a=a?a:x[U+4>>1];aa=(d|0)==(m|0);X=aa?i:X;I=aa?Y:I;v[i+28>>2]=B(R,44)+S;v[i+24>>2]=(B(a,44)+S|0)-44;a=c;d=v[d+28>>2];if((G|0)!=(d|0)){continue}break}d=v[V>>2];while(1){G=B(c,44)+S|0;v[G+36>>2]=p+8;z[G>>2]=z[d>>2];z[G+4>>2]=z[d+4>>2];z[G+8>>2]=z[d+8>>2];v[G+20>>2]=v[d+20>>2];a=v[d+16>>2];v[G+12>>2]=v[d+12>>2];v[G+16>>2]=a;Y=v[V>>2];w:{if((Y|0)==v[d+28>>2]){R=x[U+4>>1];i=R;break w}R=x[U+4>>1];i=c+1|0}a=c;if((R|0)==(a|0)){a=x[V+4>>1]+c|0}I=(d|0)==(I|0)?G:I;v[G+28>>2]=B(i,44)+S;v[G+24>>2]=(B(a,44)+S|0)-44;c=c+1|0;d=v[d+28>>2];if((Y|0)!=(d|0)){continue}break}a=v[I+28>>2];c=v[X+24>>2];d=v[I+24>>2];i=v[X+28>>2];v[d+28>>2]=i;v[i+24>>2]=d;v[c+28>>2]=a;v[a+24>>2]=c;z4(p+8|0);i=v[s+24>>2];x:{y:{if(!i){Q=z[p+28>>2];H=z[p+24>>2];P=z[p+20>>2];break y}n=z[s+256>>2];I=v[s+36>>2];Q=z[p+28>>2];H=z[p+24>>2];c=0;k=z[p+48>>2];P=z[p+20>>2];a=0;while(1){d=I+B(a,24)|0;if(n>2])+C(C(P*z[d>>2])+C(z[d+4>>2]*H)))-k)){break x}a=a+1|0;if((i|0)!=(a|0)){continue}break}}i=v[p+8>>2];k=z[i+8>>2];l=z[i+4>>2];f=z[i>>2];T=z[s+252>>2];L=C(-H);M=C(-P);N=C(-Q);a=i;while(1){a=v[a+28>>2];n=z[a+8>>2];h=C(n-k);r=z[a>>2];o=C(r-f);j=z[a+4>>2];O=C(j-l);A=C(K(C(C(h*h)+C(C(o*o)+C(O*O)))));if(A>C(0)){A=C(C(1)/A);h=C(h*A);O=C(O*A);o=C(o*A)}A=C(-C(C(P*O)+C(o*L)));o=C(-C(C(Q*o)+C(h*M)));h=C(-C(C(H*h)+C(O*N)));d=a;while(1){c=0;if(T>2]-k)*A)+C(C(C(z[d>>2]-f)*h)+C(C(z[d+4>>2]-l)*o)))){break x}d=v[d+28>>2];if((d|0)!=(a|0)){continue}break}k=n;l=j;f=r;if((a|0)!=(i|0)){continue}break}I=v[m+28>>2];d=v[m+32>>2];i=v[d+24>>2];a=v[d+36>>2];while(1){d=v[d+28>>2];m=v[m+24>>2];G=v[v[m+32>>2]+36>>2];if((G|0)==(a|0)){continue}break}m=v[v[I+32>>2]+36>>2];if((a|0)==(m|0)){while(1){i=v[i+24>>2];I=v[I+28>>2];m=v[v[I+32>>2]+36>>2];if((a|0)==(m|0)){continue}break}}if(v[v[i+32>>2]+36>>2]==(m|0)){break x}c=(G|0)!=v[v[d+32>>2]+36>>2]}if(w[p+76|0]){v9(S)}xa=p+80|0;if(!c){break u}v[J+8>>2]=0;v[J>>2]=0;v[J+4>>2]=0;x4(E,b,J);a=v[J+4>>2];v[s+100>>2]=v[s+100>>2]-a;if(!a){break t}while(1){d=v[v[J>>2]+(W<<2)>>2];b=v[d+8>>2];if(b){while(1){a=b;v[J+12>>2]=a;b=v[a+20>>2];v[a+20>>2]=0;n=C(C(C(z[E+20>>2]*z[a+8>>2])+C(C(z[E+12>>2]*z[a>>2])+C(z[a+4>>2]*z[E+16>>2])))-z[E+40>>2]);z:{if(n>z[s+252>>2]){z[a+16>>2]=n;c=v[E+8>>2];if(!c){v[E+8>>2]=a;v[a+20>>2]=0;z[a+16>>2]=n;break z}if(n>2]){v[a+20>>2]=v[c+20>>2];v[c+20>>2]=a;break z}v[a+20>>2]=c;v[E+8>>2]=a;break z}c=v[s+264>>2];if(c>>>0>=(v[s+268>>2]&2147483647)>>>0){H4(ea,J+12|0);break z}v[v[s+260>>2]+(c<<2)>>2]=a;v[s+264>>2]=c+1}if(b){continue}break}v[d+8>>2]=0;a=v[J+4>>2]}W=W+1|0;if(W>>>0>>0){continue}break}break t}b=v[b+28>>2];if((b|0)!=v[E>>2]){continue}break}a=0;break s}a=v[J+8>>2];A:{if((a|0)<0|!(a&2147483647)){break A}a=v[J>>2];if(!a){break A}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=1}xa=J+16|0;if(a){continue}break}m=v[s+92>>2]}e=e+1|0;if(m>>>0>e>>>0){continue}break};break q;case 3:e=2;a=v[F+4>>2];if(y[v[F+32>>2]+28>>2]<=x[a+38>>1]){break p}if(w[a+36|0]&32){Q4(F);break p}R4(F);break p;case 2:break r;default:break p}}if(w[v[F+4>>2]+36|0]&32){e=Q4(F);break p}R4(F)}e=0}B:{if(v[F+36>>2]|(!(x[v[F+4>>2]+36>>1]&128)|e)){break B}b=v[F+32>>2];a=v[b+92>>2];if(!a){e=0;break B}c=a&1;b=v[b+88>>2];C:{if((a|0)==1){a=0;e=0;break C}d=a&-2;a=0;e=0;m=0;while(1){i=e<<2;p=v[i+b>>2];if(!v[p+48>>2]){p=x[p+4>>1];a=a>>>0>p>>>0?a:p}i=v[b+(i|4)>>2];if(!v[i+48>>2]){i=x[i+4>>1];a=a>>>0>i>>>0?a:i}e=e+2|0;m=m+2|0;if((d|0)!=(m|0)){continue}break}}D:{if(!c){break D}b=v[b+(e<<2)>>2];if(v[b+48>>2]){break D}b=x[b+4>>1];a=a>>>0>b>>>0?a:b}e=0;if(a>>>0<33){break B}R4(F)}if(!q){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,q)}xa=g+208|0;return e|0}function iaa(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=xa-16|0;xa=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=v[38166];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){c=c+((b^-1)&1)|0;a=c<<3;b=a+152704|0;d=v[a+152712>>2];a=v[d+8>>2];l:{if((b|0)==(a|0)){m=152664,n=Vaa(-2,c)&e,v[m>>2]=n;break l}v[a+12>>2]=b;v[b+8>>2]=a}a=d+8|0;b=c<<3;v[d+4>>2]=b|3;b=b+d|0;v[b+4>>2]=v[b+4>>2]|1;break a}k=v[38168];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;d=(c|a)+(b>>>a|0)|0;a=d<<3;b=a+152704|0;g=v[a+152712>>2];a=v[g+8>>2];m:{if((b|0)==(a|0)){e=Vaa(-2,d)&e;v[38166]=e;break m}v[a+12>>2]=b;v[b+8>>2]=a}v[g+4>>2]=h|3;c=g+h|0;a=d<<3;d=a-h|0;v[c+4>>2]=d|1;v[a+g>>2]=d;if(k){b=(k&-8)+152704|0;f=v[38171];a=1<<(k>>>3);n:{if(!(a&e)){v[38166]=a|e;a=b;break n}a=v[b+8>>2]}v[b+8>>2]=f;v[a+12>>2]=f;v[f+12>>2]=b;v[f+8>>2]=a}a=g+8|0;v[38171]=c;v[38168]=d;break a}j=v[38167];if(!j){break k}b=(0-j&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;c=v[((c|a)+(b>>>a|0)<<2)+152968>>2];f=(v[c+4>>2]&-8)-h|0;b=c;while(1){o:{a=v[b+16>>2];if(!a){a=v[b+20>>2];if(!a){break o}}b=(v[a+4>>2]&-8)-h|0;d=b>>>0>>0;f=d?b:f;c=d?a:c;b=a;continue}break}i=v[c+24>>2];d=v[c+12>>2];if((d|0)!=(c|0)){a=v[c+8>>2];v[a+12>>2]=d;v[d+8>>2]=a;break b}b=c+20|0;a=v[b>>2];if(!a){a=v[c+16>>2];if(!a){break j}b=c+16|0}while(1){g=b;d=a;b=a+20|0;a=v[b>>2];if(a){continue}b=d+16|0;a=v[d+16>>2];if(a){continue}break}v[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=v[38167];if(!j){break k}f=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}b=v[(e<<2)+152968>>2];q:{r:{s:{if(!b){a=0;break s}a=0;c=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(v[b+4>>2]&-8)-h|0;if(g>>>0>=f>>>0){break t}d=b;f=g;if(f){break t}f=0;a=b;break r}g=v[b+20>>2];b=v[((c>>>29&4)+b|0)+16>>2];a=g?(g|0)==(b|0)?a:g:a;c=c<<1;if(b){continue}break}}if(!(a|d)){d=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=v[((c|a)+(b>>>a|0)<<2)+152968>>2]}if(!a){break q}}while(1){b=(v[a+4>>2]&-8)-h|0;c=b>>>0>>0;f=c?b:f;d=c?a:d;b=v[a+16>>2];if(b){a=b}else{a=v[a+20>>2]}if(a){continue}break}}if(!d|v[38168]-h>>>0<=f>>>0){break k}e=v[d+24>>2];c=v[d+12>>2];if((d|0)!=(c|0)){a=v[d+8>>2];v[a+12>>2]=c;v[c+8>>2]=a;break c}b=d+20|0;a=v[b>>2];if(!a){a=v[d+16>>2];if(!a){break i}b=d+16|0}while(1){g=b;c=a;b=a+20|0;a=v[b>>2];if(a){continue}b=c+16|0;a=v[c+16>>2];if(a){continue}break}v[g>>2]=0;break c}c=v[38168];if(c>>>0>=h>>>0){d=v[38171];b=c-h|0;u:{if(b>>>0>=16){v[38168]=b;a=d+h|0;v[38171]=a;v[a+4>>2]=b|1;v[c+d>>2]=b;v[d+4>>2]=h|3;break u}v[38171]=0;v[38168]=0;v[d+4>>2]=c|3;a=c+d|0;v[a+4>>2]=v[a+4>>2]|1}a=d+8|0;break a}i=v[38169];if(i>>>0>h>>>0){b=i-h|0;v[38169]=b;c=v[38172];a=c+h|0;v[38172]=a;v[a+4>>2]=b|1;v[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(v[38284]){c=v[38286]}else{v[38287]=-1;v[38288]=-1;v[38285]=4096;v[38286]=4096;v[38284]=l+12&-16^1431655768;v[38289]=0;v[38277]=0;c=4096}g=j+c|0;f=0-c|0;b=g&f;if(b>>>0<=h>>>0){break a}d=v[38276];if(d){c=v[38274];e=c+b|0;if(d>>>0>>0|c>>>0>=e>>>0){break a}}if(w[153108]&4){break f}v:{w:{d=v[38172];if(d){a=153112;while(1){c=v[a>>2];if(c>>>0<=d>>>0&d>>>0>2]>>>0){break w}a=v[a+8>>2];if(a){continue}break}}c=laa(0);if((c|0)==-1){break g}e=b;d=v[38285];a=d-1|0;if(a&c){e=(b-c|0)+(a+c&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=v[38276];if(d){a=v[38274];f=a+e|0;if(d>>>0>>0|a>>>0>=f>>>0){break g}}a=laa(e);if((c|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}c=laa(e);if((c|0)==(v[a>>2]+v[a+4>>2]|0)){break h}a=c}if(!((a|0)==-1|h+48>>>0<=e>>>0)){c=v[38286];c=c+(j-e|0)&0-c;if(c>>>0>2147483646){c=a;break e}if((laa(c)|0)!=-1){e=c+e|0;c=a;break e}laa(0-e|0);break g}c=a;if((a|0)!=-1){break e}break g}d=0;break b}c=0;break c}if((c|0)!=-1){break e}}v[38277]=v[38277]|4}if(b>>>0>2147483646){break d}c=laa(b);a=laa(0);if((c|0)==-1|(a|0)==-1|a>>>0<=c>>>0){break d}e=a-c|0;if(e>>>0<=h+40>>>0){break d}}a=v[38274]+e|0;v[38274]=a;if(a>>>0>y[38275]){v[38275]=a}x:{y:{z:{g=v[38172];if(g){a=153112;while(1){d=v[a>>2];b=v[a+4>>2];if((d+b|0)==(c|0)){break z}a=v[a+8>>2];if(a){continue}break}break y}a=v[38170];if(!(a>>>0<=c>>>0?a:0)){v[38170]=c}a=0;v[38279]=e;v[38278]=c;v[38174]=-1;v[38175]=v[38284];v[38281]=0;while(1){d=a<<3;b=d+152704|0;v[d+152712>>2]=b;v[d+152716>>2]=b;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;v[38169]=b;a=a+c|0;v[38172]=a;v[a+4>>2]=b|1;v[(c+d|0)+4>>2]=40;v[38173]=v[38288];break x}if(w[a+12|0]&8|d>>>0>g>>>0|c>>>0<=g>>>0){break y}v[a+4>>2]=b+e;a=g+8&7?-8-g&7:0;c=a+g|0;v[38172]=c;b=v[38169]+e|0;a=b-a|0;v[38169]=a;v[c+4>>2]=a|1;v[(b+g|0)+4>>2]=40;v[38173]=v[38288];break x}if(y[38170]>c>>>0){v[38170]=c}b=c+e|0;a=153112;A:{B:{C:{D:{E:{F:{while(1){if((b|0)!=v[a>>2]){a=v[a+8>>2];if(a){continue}break F}break}if(!(w[a+12|0]&8)){break E}}a=153112;while(1){b=v[a>>2];if(b>>>0<=g>>>0){f=b+v[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=v[a+8>>2];continue}}v[a>>2]=c;v[a+4>>2]=v[a+4>>2]+e;j=(c+8&7?-8-c&7:0)+c|0;v[j+4>>2]=h|3;e=b+(b+8&7?-8-b&7:0)|0;i=h+j|0;a=e-i|0;if((e|0)==(g|0)){v[38172]=i;a=v[38169]+a|0;v[38169]=a;v[i+4>>2]=a|1;break B}if(v[38171]==(e|0)){v[38171]=i;a=v[38168]+a|0;v[38168]=a;v[i+4>>2]=a|1;v[a+i>>2]=a;break B}f=v[e+4>>2];if((f&3)==1){g=f&-8;G:{if(f>>>0<=255){d=v[e+8>>2];b=f>>>3|0;c=v[e+12>>2];if((c|0)==(d|0)){m=152664,n=v[38166]&Vaa(-2,b),v[m>>2]=n;break G}v[d+12>>2]=c;v[c+8>>2]=d;break G}h=v[e+24>>2];c=v[e+12>>2];H:{if((e|0)!=(c|0)){b=v[e+8>>2];v[b+12>>2]=c;v[c+8>>2]=b;break H}I:{f=e+20|0;b=v[f>>2];if(b){break I}f=e+16|0;b=v[f>>2];if(b){break I}c=0;break H}while(1){d=f;c=b;f=b+20|0;b=v[f>>2];if(b){continue}f=c+16|0;b=v[c+16>>2];if(b){continue}break}v[d>>2]=0}if(!h){break G}d=v[e+28>>2];b=(d<<2)+152968|0;J:{if(v[b>>2]==(e|0)){v[b>>2]=c;if(c){break J}m=152668,n=v[38167]&Vaa(-2,d),v[m>>2]=n;break G}v[h+(v[h+16>>2]==(e|0)?16:20)>>2]=c;if(!c){break G}}v[c+24>>2]=h;b=v[e+16>>2];if(b){v[c+16>>2]=b;v[b+24>>2]=c}b=v[e+20>>2];if(!b){break G}v[c+20>>2]=b;v[b+24>>2]=c}e=e+g|0;f=v[e+4>>2];a=a+g|0}v[e+4>>2]=f&-2;v[i+4>>2]=a|1;v[a+i>>2]=a;if(a>>>0<=255){b=(a&-8)+152704|0;c=v[38166];a=1<<(a>>>3);K:{if(!(c&a)){v[38166]=a|c;a=b;break K}a=v[b+8>>2]}v[b+8>>2]=i;v[a+12>>2]=i;v[i+12>>2]=b;v[i+8>>2]=a;break B}f=31;if(a>>>0<=16777215){b=a>>>8|0;f=b+1048320>>>16&8;b=b<>>16&4;b=b<>>16&2;b=(b<>>15|0)-(c|(d|f))|0;f=(b<<1|a>>>b+21&1)+28|0}v[i+28>>2]=f;v[i+16>>2]=0;v[i+20>>2]=0;b=(f<<2)+152968|0;d=v[38167];c=1<>2]=i;break L}f=a<<((f|0)==31?0:25-(f>>>1|0)|0);c=v[b>>2];while(1){b=c;if((v[b+4>>2]&-8)==(a|0)){break C}c=f>>>29|0;f=f<<1;d=(c&4)+b|0;c=v[d+16>>2];if(c){continue}break}v[d+16>>2]=i}v[i+24>>2]=b;v[i+12>>2]=i;v[i+8>>2]=i;break B}d=e-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;v[38169]=b;a=a+c|0;v[38172]=a;v[a+4>>2]=b|1;v[(c+d|0)+4>>2]=40;v[38173]=v[38288];a=(f+(f-39&7?39-f&7:0)|0)-47|0;d=a>>>0>>0?g:a;v[d+4>>2]=27;a=v[38281];v[d+16>>2]=v[38280];v[d+20>>2]=a;a=v[38279];v[d+8>>2]=v[38278];v[d+12>>2]=a;v[38280]=d+8;v[38279]=e;v[38278]=c;v[38281]=0;a=d+24|0;while(1){v[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((d|0)==(g|0)){break x}v[d+4>>2]=v[d+4>>2]&-2;f=d-g|0;v[g+4>>2]=f|1;v[d>>2]=f;if(f>>>0<=255){b=(f&-8)+152704|0;c=v[38166];a=1<<(f>>>3);M:{if(!(c&a)){v[38166]=a|c;a=b;break M}a=v[b+8>>2]}v[b+8>>2]=g;v[a+12>>2]=g;v[g+12>>2]=b;v[g+8>>2]=a;break x}a=31;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}v[g+28>>2]=a;v[g+16>>2]=0;v[g+20>>2]=0;b=(a<<2)+152968|0;d=v[38167];c=1<>2]=g;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);d=v[b>>2];while(1){b=d;if((f|0)==(v[b+4>>2]&-8)){break A}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;d=v[c+16>>2];if(d){continue}break}v[c+16>>2]=g}v[g+24>>2]=b;v[g+12>>2]=g;v[g+8>>2]=g;break x}a=v[b+8>>2];v[a+12>>2]=i;v[b+8>>2]=i;v[i+24>>2]=0;v[i+12>>2]=b;v[i+8>>2]=a}a=j+8|0;break a}a=v[b+8>>2];v[a+12>>2]=g;v[b+8>>2]=g;v[g+24>>2]=0;v[g+12>>2]=b;v[g+8>>2]=a}a=v[38169];if(a>>>0<=h>>>0){break d}b=a-h|0;v[38169]=b;c=v[38172];a=c+h|0;v[38172]=a;v[a+4>>2]=b|1;v[c+4>>2]=h|3;a=c+8|0;break a}v[37699]=48;a=0;break a}O:{if(!e){break O}b=v[d+28>>2];a=(b<<2)+152968|0;P:{if(v[a>>2]==(d|0)){v[a>>2]=c;if(c){break P}j=Vaa(-2,b)&j;v[38167]=j;break O}v[e+(v[e+16>>2]==(d|0)?16:20)>>2]=c;if(!c){break O}}v[c+24>>2]=e;a=v[d+16>>2];if(a){v[c+16>>2]=a;v[a+24>>2]=c}a=v[d+20>>2];if(!a){break O}v[c+20>>2]=a;v[a+24>>2]=c}Q:{if(f>>>0<=15){a=f+h|0;v[d+4>>2]=a|3;a=a+d|0;v[a+4>>2]=v[a+4>>2]|1;break Q}v[d+4>>2]=h|3;e=d+h|0;v[e+4>>2]=f|1;v[e+f>>2]=f;if(f>>>0<=255){b=(f&-8)+152704|0;c=v[38166];a=1<<(f>>>3);R:{if(!(c&a)){v[38166]=a|c;a=b;break R}a=v[b+8>>2]}v[b+8>>2]=e;v[a+12>>2]=e;v[e+12>>2]=b;v[e+8>>2]=a;break Q}a=31;if(f>>>0<=16777215){a=f>>>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|f>>>a+21&1)+28|0}v[e+28>>2]=a;v[e+16>>2]=0;v[e+20>>2]=0;b=(a<<2)+152968|0;S:{c=1<>2]=e;break T}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);h=v[b>>2];while(1){b=h;if((v[b+4>>2]&-8)==(f|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=v[c+16>>2];if(h){continue}break}v[c+16>>2]=e}v[e+24>>2]=b;v[e+12>>2]=e;v[e+8>>2]=e;break Q}a=v[b+8>>2];v[a+12>>2]=e;v[b+8>>2]=e;v[e+24>>2]=0;v[e+12>>2]=b;v[e+8>>2]=a}a=d+8|0;break a}U:{if(!i){break U}b=v[c+28>>2];a=(b<<2)+152968|0;V:{if(v[a>>2]==(c|0)){v[a>>2]=d;if(d){break V}m=152668,n=Vaa(-2,b)&j,v[m>>2]=n;break U}v[i+(v[i+16>>2]==(c|0)?16:20)>>2]=d;if(!d){break U}}v[d+24>>2]=i;a=v[c+16>>2];if(a){v[d+16>>2]=a;v[a+24>>2]=d}a=v[c+20>>2];if(!a){break U}v[d+20>>2]=a;v[a+24>>2]=d}W:{if(f>>>0<=15){a=f+h|0;v[c+4>>2]=a|3;a=a+c|0;v[a+4>>2]=v[a+4>>2]|1;break W}v[c+4>>2]=h|3;d=c+h|0;v[d+4>>2]=f|1;v[d+f>>2]=f;if(k){b=(k&-8)+152704|0;g=v[38171];a=1<<(k>>>3);X:{if(!(a&e)){v[38166]=a|e;a=b;break X}a=v[b+8>>2]}v[b+8>>2]=g;v[a+12>>2]=g;v[g+12>>2]=b;v[g+8>>2]=a}v[38171]=d;v[38168]=f}a=c+8|0}xa=l+16|0;return a|0}function by(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=C(0),i=0,j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=0,p=0,q=C(0),r=0,s=0,u=C(0),x=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=0,aa=0,ba=0,ca=0,da=C(0),ea=C(0),fa=0,ga=0;if(w[a+488|0]){b9(v[37696],8,12859,2004,76600,0);return}if(t[v[a+476>>2]]&1){c=xa-352|0;xa=c;d=v[a+468>>2];r=J9(v[b+8>>2],0,B(d,d)<<2);i=v[a+444>>2];g=v[b+52>>2];p=g+4|0;f=v[a+448>>2];l=B(f,112);d=v[g+4>>2];b=v[g+8>>2];e=v[(d+(b<<2)|0)-4>>2];if((l|0)<=(e-v[g+16>>2]|0)){e=e-l|0;v[c+160>>2]=e;a:{if(b>>>0>=(v[g+12>>2]&2147483647)>>>0){Vs(p,c+160|0);break a}v[d+(b<<2)>>2]=e;v[g+8>>2]=b+1}o=v[c+160>>2]}l=a+112|0;Lx(l,o);e=f-1|0;if(e){while(1){b=B(e,112)+o|0;z[c+48>>2]=z[b>>2];z[c+52>>2]=z[b+4>>2];z[c+56>>2]=z[b+8>>2];z[c+60>>2]=z[b+12>>2];z[c+64>>2]=z[b+16>>2];z[c+68>>2]=z[b+20>>2];z[c+72>>2]=z[b+24>>2];z[c+76>>2]=z[b+28>>2];z[c+80>>2]=z[b+32>>2];z[c+84>>2]=z[b+36>>2];z[c+88>>2]=z[b+40>>2];z[c+92>>2]=z[b+44>>2];z[c+96>>2]=z[b+48>>2];z[c+100>>2]=z[b+52>>2];z[c+104>>2]=z[b+56>>2];z[c+108>>2]=z[b+60>>2];f=b- -64|0;z[c+112>>2]=z[f>>2];z[c+116>>2]=z[b+68>>2];z[c+120>>2]=z[b+72>>2];z[c+124>>2]=z[b+76>>2];z[c+128>>2]=z[b+80>>2];z[c+132>>2]=z[b+84>>2];z[c+136>>2]=z[b+88>>2];z[c+140>>2]=z[b+92>>2];z[c+144>>2]=z[b+96>>2];z[c+148>>2]=z[b+100>>2];z[c+152>>2]=z[b+104>>2];v[c+156>>2]=v[b+108>>2];d=v[a+452>>2]+B(e,160)|0;j=z[d+128>>2];h=z[d+124>>2];k=z[d+120>>2];v[c+40>>2]=0;z[c+36>>2]=-k;z[c+32>>2]=h;z[c+28>>2]=k;v[c+24>>2]=0;z[c+12>>2]=j;v[c+8>>2]=0;z[c+20>>2]=-j;z[c+16>>2]=-h;Pw(c+8|0,c+48|0);d=B(v[(i+(e<<5)|0)+24>>2],112)+o|0;z[d>>2]=z[c+48>>2]+z[d>>2];z[d+4>>2]=z[c+52>>2]+z[d+4>>2];z[d+8>>2]=z[c+56>>2]+z[d+8>>2];z[d+12>>2]=z[c+60>>2]+z[d+12>>2];z[d+16>>2]=z[c+64>>2]+z[d+16>>2];z[d+20>>2]=z[c+68>>2]+z[d+20>>2];z[d+24>>2]=z[c+72>>2]+z[d+24>>2];z[d+28>>2]=z[c+76>>2]+z[d+28>>2];z[d+32>>2]=z[c+80>>2]+z[d+32>>2];z[d+36>>2]=z[c+84>>2]+z[d+36>>2];z[d+40>>2]=z[c+88>>2]+z[d+40>>2];z[d+44>>2]=z[c+92>>2]+z[d+44>>2];z[d+48>>2]=z[c+96>>2]+z[d+48>>2];z[d+52>>2]=z[c+100>>2]+z[d+52>>2];z[d+56>>2]=z[c+104>>2]+z[d+56>>2];z[d+60>>2]=z[c+108>>2]+z[d+60>>2];s=d- -64|0;z[s>>2]=z[c+112>>2]+z[s>>2];z[d+68>>2]=z[c+116>>2]+z[d+68>>2];z[d+72>>2]=z[c+120>>2]+z[d+72>>2];z[d+76>>2]=z[c+124>>2]+z[d+76>>2];z[d+80>>2]=z[c+128>>2]+z[d+80>>2];z[d+84>>2]=z[c+132>>2]+z[d+84>>2];z[d+88>>2]=z[c+136>>2]+z[d+88>>2];z[d+92>>2]=z[c+140>>2]+z[d+92>>2];z[d+96>>2]=z[c+144>>2]+z[d+96>>2];z[d+100>>2]=z[c+148>>2]+z[d+100>>2];z[d+104>>2]=z[c+152>>2]+z[d+104>>2];s=w[(v[a+456>>2]+B(e,80)|0)+76|0];if(s){K=v[a+384>>2]+B(e,76)|0;u=z[b+20>>2];x=z[b+16>>2];A=z[b+12>>2];D=z[b+8>>2];E=z[b+4>>2];F=z[b>>2];O=z[b+104>>2];P=z[b+100>>2];Q=z[b+96>>2];R=z[b+92>>2];S=z[b+88>>2];T=z[b+84>>2];U=z[b+80>>2];V=z[b+76>>2];W=z[b+72>>2];X=z[b+68>>2];Y=z[f>>2];Z=z[b+60>>2];L=z[b+56>>2];M=z[b+52>>2];N=z[b+48>>2];da=z[b+44>>2];ea=z[b+40>>2];J=z[b+36>>2];G=z[b+32>>2];H=z[b+28>>2];I=z[b+24>>2];d=0;while(1){b=(c+160|0)+(d<<5)|0;f=K+B(d,24)|0;j=z[f+20>>2];h=z[f+12>>2];k=z[f+16>>2];m=z[f>>2];n=z[f+4>>2];q=z[f+8>>2];z[b+24>>2]=C(C(G*j)+C(C(I*h)+C(H*k)))+C(C(C(m*U)+C(n*R))+C(q*O));z[b+20>>2]=C(C(u*j)+C(C(A*h)+C(x*k)))+C(C(C(m*V)+C(n*S))+C(q*P));z[b+16>>2]=C(C(D*j)+C(C(F*h)+C(E*k)))+C(C(C(m*W)+C(n*T))+C(q*Q));z[b+8>>2]=C(C(C(m*D)+C(n*u))+C(q*G))+C(C(C(h*da)+C(k*L))+C(j*X));z[b+4>>2]=C(C(C(m*E)+C(n*x))+C(q*H))+C(C(C(h*ea)+C(k*M))+C(j*Y));z[b>>2]=C(C(C(m*F)+C(n*A))+C(q*I))+C(C(C(h*J)+C(k*N))+C(j*Z));d=d+1|0;if((s|0)!=(d|0)){continue}break}}ay(l,e,r,c+160|0);e=e-1|0;if(e){continue}break}}a=v[g+16>>2];b:{if(!(a>>>0<=o>>>0&a+v[g+20>>2]>>>0>o>>>0)){if(!o){break b}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,o);break b}i=v[g+4>>2];d=0;r=v[g+8>>2];e=r;while(1){a=d;d=d+1|0;b=e;e=b-1|0;f=i+(e<<2)|0;if(y[f>>2]>>0){continue}break}c:{if(b>>>0>=r>>>0){break c}e=a&3;if(e){d=0;while(1){v[f>>2]=v[v[p>>2]+(b<<2)>>2];b=b+1|0;f=f+4|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}if(a-1>>>0<3){break c}while(1){a=b<<2;v[f>>2]=v[a+v[p>>2]>>2];v[f+4>>2]=v[(a+v[p>>2]|0)+4>>2];v[f+8>>2]=v[(a+v[p>>2]|0)+8>>2];v[f+12>>2]=v[(a+v[p>>2]|0)+12>>2];f=f+16|0;b=b+4|0;if((r|0)!=(b|0)){continue}break}}v[g+8>>2]=r-1}xa=c+352|0;return}c=xa-160|0;xa=c;f=v[a+468>>2];K=J9(v[b+8>>2],0,B(f,f)<<2);fa=v[a+452>>2];ga=v[a+444>>2];g=v[b+52>>2];o=g+4|0;i=v[a+448>>2];l=B(i,112);d=v[g+4>>2];b=v[g+8>>2];e=v[(d+(b<<2)|0)-4>>2];if((l|0)<=(e-v[g+16>>2]|0)){e=e-l|0;v[c+48>>2]=e;d:{if(b>>>0>=(v[g+12>>2]&2147483647)>>>0){Vs(o,c+48|0);break d}v[d+(b<<2)>>2]=e;v[g+8>>2]=b+1}p=v[c+48>>2]}l=f<<5;d=v[g+4>>2];b=v[g+8>>2];e=v[(d+(b<<2)|0)-4>>2];if((l|0)<=(e-v[g+16>>2]|0)){e=e-l|0;v[c+48>>2]=e;e:{if(b>>>0>=(v[g+12>>2]&2147483647)>>>0){Vs(o,c+48|0);break e}v[d+(b<<2)>>2]=e;v[g+8>>2]=b+1}r=v[c+48>>2]}aa=a+112|0;Lx(aa,p);e=i-1|0;if(e){while(1){d=B(e,112)+p|0;z[c+48>>2]=z[d>>2];z[c+52>>2]=z[d+4>>2];z[c+56>>2]=z[d+8>>2];z[c+60>>2]=z[d+12>>2];z[c+64>>2]=z[d+16>>2];z[c+68>>2]=z[d+20>>2];z[c+72>>2]=z[d+24>>2];z[c+76>>2]=z[d+28>>2];z[c+80>>2]=z[d+32>>2];z[c+84>>2]=z[d+36>>2];z[c+88>>2]=z[d+40>>2];z[c+92>>2]=z[d+44>>2];z[c+96>>2]=z[d+48>>2];z[c+100>>2]=z[d+52>>2];z[c+104>>2]=z[d+56>>2];z[c+108>>2]=z[d+60>>2];ba=d- -64|0;z[c+112>>2]=z[ba>>2];z[c+116>>2]=z[d+68>>2];z[c+120>>2]=z[d+72>>2];z[c+124>>2]=z[d+76>>2];z[c+128>>2]=z[d+80>>2];z[c+132>>2]=z[d+84>>2];z[c+136>>2]=z[d+88>>2];z[c+140>>2]=z[d+92>>2];z[c+144>>2]=z[d+96>>2];z[c+148>>2]=z[d+100>>2];z[c+152>>2]=z[d+104>>2];v[c+156>>2]=v[d+108>>2];b=v[a+452>>2]+B(e,160)|0;j=z[b+128>>2];h=z[b+124>>2];k=z[b+120>>2];v[c+40>>2]=0;z[c+36>>2]=-k;z[c+32>>2]=h;z[c+28>>2]=k;v[c+24>>2]=0;z[c+12>>2]=j;v[c+8>>2]=0;z[c+20>>2]=-j;z[c+16>>2]=-h;Pw(c+8|0,c+48|0);b=B(v[(ga+(e<<5)|0)+24>>2],112)+p|0;z[b>>2]=z[c+48>>2]+z[b>>2];z[b+4>>2]=z[c+52>>2]+z[b+4>>2];z[b+8>>2]=z[c+56>>2]+z[b+8>>2];z[b+12>>2]=z[c+60>>2]+z[b+12>>2];z[b+16>>2]=z[c+64>>2]+z[b+16>>2];z[b+20>>2]=z[c+68>>2]+z[b+20>>2];z[b+24>>2]=z[c+72>>2]+z[b+24>>2];z[b+28>>2]=z[c+76>>2]+z[b+28>>2];z[b+32>>2]=z[c+80>>2]+z[b+32>>2];z[b+36>>2]=z[c+84>>2]+z[b+36>>2];z[b+40>>2]=z[c+88>>2]+z[b+40>>2];z[b+44>>2]=z[c+92>>2]+z[b+44>>2];z[b+48>>2]=z[c+96>>2]+z[b+48>>2];z[b+52>>2]=z[c+100>>2]+z[b+52>>2];z[b+56>>2]=z[c+104>>2]+z[b+56>>2];z[b+60>>2]=z[c+108>>2]+z[b+60>>2];i=b- -64|0;z[i>>2]=z[c+112>>2]+z[i>>2];z[b+68>>2]=z[c+116>>2]+z[b+68>>2];z[b+72>>2]=z[c+120>>2]+z[b+72>>2];z[b+76>>2]=z[c+124>>2]+z[b+76>>2];z[b+80>>2]=z[c+128>>2]+z[b+80>>2];z[b+84>>2]=z[c+132>>2]+z[b+84>>2];z[b+88>>2]=z[c+136>>2]+z[b+88>>2];z[b+92>>2]=z[c+140>>2]+z[b+92>>2];z[b+96>>2]=z[c+144>>2]+z[b+96>>2];z[b+100>>2]=z[c+148>>2]+z[b+100>>2];z[b+104>>2]=z[c+152>>2]+z[b+104>>2];_=v[a+456>>2]+B(e,80)|0;s=(v[_+72>>2]<<5)+r|0;ca=w[_+76|0];if(ca){$=v[a+384>>2]+B(e,76)|0;b=0;while(1){G=z[d+60>>2];H=z[d+48>>2];I=z[d+36>>2];O=z[ba>>2];P=z[d+52>>2];Q=z[d+40>>2];R=z[d+68>>2];S=z[d+56>>2];T=z[d+44>>2];u=z[d+8>>2];x=z[d+4>>2];A=z[d>>2];U=z[d+96>>2];V=z[d+72>>2];W=z[d+84>>2];D=z[d+20>>2];E=z[d+16>>2];F=z[d+12>>2];X=z[d+100>>2];Y=z[d+76>>2];Z=z[d+88>>2];i=s+(b<<5)|0;L=z[d+32>>2];l=$+B(b,24)|0;j=z[l+20>>2];M=z[d+24>>2];h=z[l+12>>2];N=z[d+28>>2];k=z[l+16>>2];m=z[l>>2];n=z[l+4>>2];q=z[l+8>>2];z[i+24>>2]=C(C(L*j)+C(C(M*h)+C(N*k)))+C(C(C(m*z[d+80>>2])+C(n*z[d+92>>2]))+C(q*z[d+104>>2]));z[i+20>>2]=C(C(D*j)+C(C(F*h)+C(E*k)))+C(C(C(m*Y)+C(n*Z))+C(q*X));z[i+16>>2]=C(C(u*j)+C(C(A*h)+C(x*k)))+C(C(C(m*V)+C(n*W))+C(q*U));z[i+8>>2]=C(C(C(m*u)+C(n*D))+C(q*L))+C(C(C(h*T)+C(k*S))+C(j*R));z[i+4>>2]=C(C(C(m*x)+C(n*E))+C(q*N))+C(C(C(h*Q)+C(k*P))+C(j*O));z[i>>2]=C(C(C(m*A)+C(n*F))+C(q*M))+C(C(C(h*I)+C(k*H))+C(j*G));b=b+1|0;if((ca|0)!=(b|0)){continue}break}}b=ay(aa,e,K,s);l=w[_+76|0];if(l){i=fa+B(b,160)|0;d=0;while(1){j=z[i+104>>2];h=z[i+96>>2];k=z[i+100>>2];b=s+(d<<5)|0;v[b+28>>2]=0;v[b+12>>2]=0;m=z[b+4>>2];n=z[b>>2];z[b+24>>2]=C(C(h*m)-C(k*n))+z[b+24>>2];J=h;h=z[b+8>>2];z[b+20>>2]=z[b+20>>2]+C(C(j*n)-C(J*h));z[b+16>>2]=C(C(k*h)-C(m*j))+z[b+16>>2];d=d+1|0;if((l|0)!=(d|0)){continue}break}}e=e-1|0;if(e){continue}break}}Ox(c+48|0,p);if(f){b=0;while(1){i=B(b,f);a=(b<<5)+r|0;d=0;while(1){e=K+(d+i<<2)|0;$=e;J=z[e>>2];e=(d<<5)+r|0;j=z[e>>2];u=z[c+56>>2];h=z[e+4>>2];x=z[c+68>>2];k=z[e+8>>2];A=z[c+80>>2];m=z[e+16>>2];n=z[e+20>>2];q=z[e+24>>2];D=z[c+48>>2];E=z[c+60>>2];F=z[c+72>>2];G=z[c+52>>2];H=z[c+64>>2];I=z[c+76>>2];z[$>>2]=J-C(C(C(z[a+24>>2]*C(C(C(C(j*u)+C(h*x))+C(k*A))+C(C(C(m*z[c+92>>2])+C(n*z[c+104>>2]))+C(q*z[c+116>>2]))))+C(C(z[a+16>>2]*C(C(C(C(j*D)+C(h*E))+C(k*F))+C(C(C(m*z[c+84>>2])+C(n*z[c+96>>2]))+C(q*z[c+108>>2]))))+C(C(C(C(C(j*G)+C(h*H))+C(k*I))+C(C(C(m*z[c+88>>2])+C(n*z[c+100>>2]))+C(q*z[c+112>>2])))*z[a+20>>2])))+C(C(z[a+8>>2]*C(C(C(A*q)+C(C(F*m)+C(I*n)))+C(C(C(j*z[c+128>>2])+C(h*z[c+140>>2]))+C(k*z[c+152>>2]))))+C(C(z[a>>2]*C(C(C(u*q)+C(C(D*m)+C(G*n)))+C(C(C(j*z[c+120>>2])+C(h*z[c+132>>2]))+C(k*z[c+144>>2]))))+C(C(C(C(x*q)+C(C(E*m)+C(H*n)))+C(C(C(j*z[c+124>>2])+C(h*z[c+136>>2]))+C(k*z[c+148>>2])))*z[a+4>>2]))));d=d+1|0;if((f|0)!=(d|0)){continue}break}b=b+1|0;if((f|0)!=(b|0)){continue}break}}a=v[g+16>>2];f:{if(!(a>>>0<=p>>>0&a+v[g+20>>2]>>>0>p>>>0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,p);break f}l=v[g+4>>2];a=0;i=v[g+8>>2];b=i;while(1){e=a;a=a+1|0;d=b;b=b-1|0;f=l+(b<<2)|0;if(y[f>>2]

>>0){continue}break}g:{if(d>>>0>=i>>>0){break g}b=e&3;if(b){a=0;while(1){v[f>>2]=v[v[o>>2]+(d<<2)>>2];d=d+1|0;f=f+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(e-1>>>0<3){break g}while(1){a=d<<2;v[f>>2]=v[a+v[o>>2]>>2];v[f+4>>2]=v[(a+v[o>>2]|0)+4>>2];v[f+8>>2]=v[(a+v[o>>2]|0)+8>>2];v[f+12>>2]=v[(a+v[o>>2]|0)+12>>2];f=f+16|0;d=d+4|0;if((i|0)!=(d|0)){continue}break}}v[g+8>>2]=i-1}a=v[g+16>>2];h:{if(!(a>>>0<=r>>>0&a+v[g+20>>2]>>>0>r>>>0)){if(!r){break h}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,r);break h}i=v[g+4>>2];a=0;p=v[g+8>>2];b=p;while(1){e=a;a=a+1|0;d=b;b=b-1|0;f=i+(b<<2)|0;if(y[f>>2]>>0){continue}break}i:{if(d>>>0>=p>>>0){break i}b=e&3;if(b){a=0;while(1){v[f>>2]=v[v[o>>2]+(d<<2)>>2];d=d+1|0;f=f+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(e-1>>>0<3){break i}while(1){a=d<<2;v[f>>2]=v[a+v[o>>2]>>2];v[f+4>>2]=v[(a+v[o>>2]|0)+4>>2];v[f+8>>2]=v[(a+v[o>>2]|0)+8>>2];v[f+12>>2]=v[(a+v[o>>2]|0)+12>>2];f=f+16|0;d=d+4|0;if((p|0)!=(d|0)){continue}break}}v[g+8>>2]=p-1}xa=c+160|0}function H0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0);g=xa-208|0;xa=g;r=v[a+320>>2];j=z[r+8>>2];V=w[a+12|0];H=V?d:e;i=z[H>>2];k=z[r+20>>2];h=z[H+4>>2];n=z[r+32>>2];m=z[H+8>>2];ca=C(C(C(j*i)+C(k*h))+C(n*m));l=z[r+4>>2];q=z[r+16>>2];o=z[r+28>>2];da=C(C(C(l*i)+C(q*h))+C(o*m));p=z[r>>2];x=C(p*i);i=z[r+12>>2];x=C(x+C(i*h));h=z[r+24>>2];ea=C(x+C(h*m));d=V?e:d;m=z[d>>2];s=z[d+4>>2];x=z[d+8>>2];$=C(C(C(j*m)+C(k*s))+C(n*x));aa=C(C(C(l*m)+C(q*s))+C(o*x));ba=C(C(C(p*m)+C(i*s))+C(h*x));m=z[c>>2];x=C(m*p);p=z[c+4>>2];x=C(x+C(p*i));i=z[c+8>>2];fa=C(x+C(i*h));ga=C(C(C(m*j)+C(p*k))+C(i*n));ha=C(C(C(m*l)+C(p*q))+C(i*o));ma=z[a+364>>2];e=v[b+8>>2];R=z[a+440>>2];a:{b:{if(!w[a+445|0]){j=C(ba-fa);i=C(da-aa);k=C(ea-ba);h=C(aa-ha);x=C(C(C(j*i)-C(k*h))*z[a+436>>2]);o=h;h=C(ca-$);l=i;i=C($-ga);if(C(x+C(C(C(C(o*h)-C(l*i))*z[a+428>>2])+C(C(C(i*k)-C(h*j))*z[a+432>>2])))<=C(0)){break b}}v[g+152>>2]=0;v[g+156>>2]=0;v[g+144>>2]=0;v[g+148>>2]=0;v[g+128>>2]=0;j=z[a+272>>2];i=z[a+256>>2];k=z[a+240>>2];h=z[a+276>>2];n=z[a+260>>2];m=z[a+228>>2];l=z[a+244>>2];q=z[a+280>>2];o=z[a+264>>2];p=z[a+232>>2];s=z[a+248>>2];x=z[a+224>>2];v[g+124>>2]=0;v[g+108>>2]=0;v[g+92>>2]=0;I=C(q+C(C(o*ca)+C(C(p*ea)+C(da*s))));z[g+120>>2]=I;D=C(h+C(C(n*ca)+C(C(m*ea)+C(da*l))));z[g+116>>2]=D;J=C(j+C(C(i*ca)+C(C(x*ea)+C(da*k))));z[g+112>>2]=J;A=C(q+C(C(o*$)+C(C(p*ba)+C(aa*s))));z[g+104>>2]=A;E=C(h+C(C(n*$)+C(C(m*ba)+C(aa*l))));z[g+100>>2]=E;y=C(j+C(C(i*$)+C(C(x*ba)+C(aa*k))));z[g+96>>2]=y;q=C(q+C(C(o*ga)+C(C(p*fa)+C(ha*s))));z[g+88>>2]=q;h=C(h+C(C(n*ga)+C(C(m*fa)+C(ha*l))));z[g+84>>2]=h;t[g+64|0]=0;v[g+60>>2]=5;v[g+44>>2]=0;j=C(j+C(C(i*ga)+C(C(x*fa)+C(ha*k))));z[g+80>>2]=j;j=C(C(J+C(j+y))*C(.33333298563957214));z[g+32>>2]=j;i=C(C(D+C(h+E))*C(.33333298563957214));z[g+36>>2]=i;k=C(C(I+C(q+A))*C(.33333298563957214));z[g+40>>2]=k;v[g+56>>2]=2139095039;v[g+48>>2]=0;v[g+52>>2]=2139095039;v[g+24>>2]=141856;v[g+28>>2]=g+32;v[g+16>>2]=141216;v[g+20>>2]=a- -64;h=z[a+68>>2];n=z[a+72>>2];m=z[a+64>>2];v[g+12>>2]=0;z[g+8>>2]=k-n;z[g+4>>2]=i-h;z[g>>2]=j-m;b=xa-272|0;xa=b;v[b+248>>2]=0;v[b+252>>2]=0;v[b+240>>2]=0;v[b+244>>2]=0;A=z[g+152>>2];E=z[g+148>>2];y=z[g+144>>2];W=z[a+408>>2];G=z[a+404>>2];P=z[a+400>>2];v[b+224>>2]=1;c=v[g+28>>2];l=z[c+72>>2];o=z[c- -64>>2];q=z[c+68>>2];p=z[c+56>>2];s=z[c+52>>2];x=z[c+88>>2];I=z[c+80>>2];D=z[c+84>>2];J=z[c+48>>2];j=z[g+8>>2];i=z[g>>2];k=z[g+4>>2];c=v[g+20>>2];m=z[c+56>>2];Z=z[c+52>>2];S=z[c+72>>2];H=c- -64|0;M=z[H>>2];T=z[c+68>>2];h=z[c+88>>2];U=z[c+80>>2];L=z[c+84>>2];O=z[c+48>>2];d=0;v[b+172>>2]=0;Q=h;r=C(C(j*j)+C(C(i*i)+C(k*k)))>C(1.1920928955078125e-7);j=r?j:C(0);i=r?i:C(1);h=r?k:C(0);n=C(C(1)/C(K(C(C(j*j)+C(C(i*i)+C(h*h))))));j=C(j*n);k=C(i*n);i=C(h*n);z[b+168>>2]=C(Q*j)+C(C(U*k)+C(L*i));z[b+164>>2]=C(S*j)+C(C(M*k)+C(i*T));z[b+160>>2]=C(m*j)+C(C(O*k)+C(i*Z));r=IV(c,b+160|0);Z=z[H>>2];S=z[c+80>>2];M=z[c+84>>2];T=z[c+52>>2];U=z[c+68>>2];L=z[c+88>>2];r=v[c+152>>2]+B(r,12)|0;h=z[r+8>>2];O=z[c+56>>2];n=z[r>>2];X=z[c+72>>2];m=z[r+4>>2];Y=z[c+48>>2];v[b+180>>2]=0;v[b+184>>2]=0;v[b+188>>2]=0;v[b+192>>2]=0;v[b+196>>2]=0;v[b+200>>2]=0;v[b+204>>2]=0;v[b+208>>2]=0;v[b+212>>2]=0;v[b+216>>2]=0;v[b+220>>2]=0;v[b+172>>2]=0;v[b+176>>2]=0;_=l;Q=x;k=C(-k);l=C(C(C(o*k)-C(q*i))-C(l*j));x=C(C(C(I*k)-C(D*i))-C(x*j));c=l>x;j=C(C(C(J*k)-C(s*i))-C(p*j));r=!(j>l)|!(j>x);j=r?c?_:Q:p;i=C(C(L*h)+C(C(O*n)+C(m*X)));l=C(j-i);z[b+168>>2]=l;k=r?c?q:D:s;p=C(C(M*h)+C(C(T*n)+C(m*U)));q=C(k-p);z[b+164>>2]=q;s=r?c?o:I:J;h=C(C(S*h)+C(C(Y*n)+C(m*Z)));o=C(s-h);z[b+160>>2]=o;v[b+116>>2]=0;v[b+120>>2]=0;v[b+124>>2]=0;v[b+128>>2]=0;v[b+132>>2]=0;v[b+136>>2]=0;v[b+140>>2]=0;v[b+144>>2]=0;v[b+148>>2]=0;v[b+152>>2]=0;v[b+156>>2]=0;v[b+108>>2]=0;v[b+112>>2]=0;z[b+104>>2]=j;z[b+100>>2]=k;z[b+96>>2]=s;v[b+52>>2]=0;v[b+56>>2]=0;v[b+60>>2]=0;v[b+64>>2]=0;v[b+68>>2]=0;v[b+72>>2]=0;v[b+76>>2]=0;v[b+80>>2]=0;v[b+84>>2]=0;v[b+88>>2]=0;v[b+92>>2]=0;v[b+44>>2]=0;v[b+48>>2]=0;z[b+40>>2]=i;z[b+36>>2]=p;z[b+32>>2]=h;i=C(-l);k=C(-q);j=C(-o);p=C(C(l*l)+C(C(o*o)+C(q*q)));h=z[v[g+20>>2]+24>>2];h=C((hka)){h=j;n=k;m=i;s=o;x=q;I=l;break d}Z=C(h+R);na=C(Z*Z);D=C(C(P*C(0))+y);J=C(C(G*C(0))+E);R=C(C(W*C(0))+A);m=i;n=k;h=j;while(1){s=o;x=q;I=l;c=v[g+28>>2];q=z[c+72>>2];o=z[c- -64>>2];y=z[c+68>>2];P=z[c+52>>2];S=z[c+56>>2];M=z[c+88>>2];G=z[c+80>>2];T=z[c+84>>2];U=z[c+48>>2];c=v[g+20>>2];L=z[c+52>>2];O=z[c+56>>2];X=z[c+72>>2];V=c- -64|0;Y=z[V>>2];ia=z[c+68>>2];oa=z[c+88>>2];l=z[c+80>>2];A=z[c+84>>2];ja=z[c+48>>2];v[b+268>>2]=0;_=l;E=C(C(1)/C(K(C(C(i*i)+C(C(j*j)+C(k*k))))));l=C(j*E);W=C(-l);Q=A;A=C(k*E);E=C(i*E);z[b+264>>2]=C(C(_*W)-C(Q*A))-C(oa*E);z[b+260>>2]=C(C(Y*W)-C(ia*A))-C(X*E);z[b+256>>2]=C(C(ja*W)-C(L*A))-C(O*E);H=IV(c,b+256|0);ja=o;_=G;o=C(C(q*E)+C(C(o*l)+C(A*y)));G=C(C(M*E)+C(C(G*l)+C(A*T)));d=o>G;Q=o;o=C(C(S*E)+C(C(U*l)+C(A*P)));r=!(QG);U=r?d?ja:_:U;H=v[c+152>>2]+B(H,12)|0;o=z[H+8>>2];L=z[H>>2];O=z[H+4>>2];X=C(D+C(C(z[c+80>>2]*o)+C(C(z[c+48>>2]*L)+C(O*z[V>>2]))));G=C(U-X);T=r?d?y:T:P;Y=C(J+C(C(z[c+84>>2]*o)+C(C(z[c+52>>2]*L)+C(O*z[c+68>>2]))));P=C(T-Y);S=r?d?q:M:S;M=C(R+C(C(z[c+88>>2]*o)+C(C(z[c+56>>2]*L)+C(O*z[c+72>>2]))));y=C(S-M);q=C(C(C(C(l*C(-G))-C(A*P))-C(E*y))-Z);if(q>C(0)){d=0;o=z[a+408>>2];L=z[a+400>>2];O=z[a+404>>2];ia=C(C(E*o)+C(C(l*L)+C(A*O)));if(ia>=C(0)){break c}l=N;N=C(l-C(q/ia));if(N>l){if(N>C(1)){break c}m=z[g+152>>2];n=z[g+148>>2];h=z[g+144>>2];v[b+76>>2]=0;v[b+60>>2]=0;v[b+44>>2]=0;l=C(h+C(L*N));h=C(l-D);p=C(h+z[b+64>>2]);z[b+64>>2]=p;q=C(n+C(O*N));n=C(q-J);D=C(n+z[b+68>>2]);z[b+68>>2]=D;o=C(m+C(o*N));m=C(o-R);J=C(m+z[b+72>>2]);z[b+72>>2]=J;R=C(h+z[b+48>>2]);z[b+48>>2]=R;y=C(n+z[b+52>>2]);z[b+52>>2]=y;G=C(m+z[b+56>>2]);z[b+56>>2]=G;h=C(h+z[b+32>>2]);z[b+32>>2]=h;n=C(n+z[b+36>>2]);z[b+36>>2]=n;m=C(m+z[b+40>>2]);z[b+40>>2]=m;P=z[b+96>>2];M=z[b+100>>2];L=z[b+104>>2];v[b+172>>2]=0;z[b+168>>2]=L-m;z[b+164>>2]=M-n;z[b+160>>2]=P-h;h=z[b+112>>2];n=z[b+116>>2];m=z[b+120>>2];v[b+188>>2]=0;z[b+184>>2]=m-G;z[b+180>>2]=n-y;z[b+176>>2]=h-R;h=z[b+128>>2];n=z[b+132>>2];m=z[b+136>>2];v[b+204>>2]=0;z[b+200>>2]=m-J;z[b+196>>2]=n-D;z[b+192>>2]=h-p;c=v[g+20>>2];m=z[c+56>>2];p=z[c+52>>2];D=z[c+72>>2];r=c- -64|0;J=z[r>>2];R=z[c+68>>2];h=z[c+88>>2];n=z[c+80>>2];y=z[c+84>>2];G=z[c+48>>2];v[b+268>>2]=0;Q=h;h=C(-E);_=C(n*W);n=C(-A);z[b+264>>2]=C(Q*h)+C(_+C(y*n));z[b+260>>2]=C(D*h)+C(C(J*W)+C(R*n));z[b+256>>2]=C(m*h)+C(C(G*W)+C(p*n));d=IV(c,b+256|0);d=v[c+152>>2]+B(d,12)|0;h=z[d+8>>2];n=z[d>>2];m=z[d+4>>2];M=C(o+C(C(z[c+88>>2]*h)+C(C(z[c+56>>2]*n)+C(m*z[c+72>>2]))));y=C(S-M);Y=C(q+C(C(z[c+84>>2]*h)+C(C(z[c+52>>2]*n)+C(m*z[c+68>>2]))));P=C(T-Y);X=C(l+C(C(z[c+80>>2]*h)+C(C(z[c+48>>2]*n)+C(m*z[r>>2]))));G=C(U-X);h=j;n=k;m=i;D=l;J=q;R=o;l=C(34028234663852886e22)}else{l=p}}else{l=p}A=l;d=v[b+224>>2];r=d<<4;c=r+(b+96|0)|0;v[c+12>>2]=0;z[c+8>>2]=S;z[c+4>>2]=T;z[c>>2]=U;c=r+(b+32|0)|0;v[c+12>>2]=0;z[c+8>>2]=M;z[c+4>>2]=Y;z[c>>2]=X;c=r+(b+160|0)|0;v[c+12>>2]=0;z[c+8>>2]=y;z[c+4>>2]=P;z[c>>2]=G;v[b+224>>2]=d+1;e:{f:{switch(d-1|0){case 0:l=z[b+168>>2];j=C(z[b+184>>2]-l);q=z[b+160>>2];i=C(z[b+176>>2]-q);o=z[b+164>>2];k=C(z[b+180>>2]-o);p=C(C(j*j)+C(C(i*i)+C(k*k)));if(p<=C(1.1920928955078125e-7)){v[b+224>>2]=1;c=v[b+164>>2];v[b+256>>2]=v[b+160>>2];v[b+260>>2]=c;c=v[b+172>>2];v[b+264>>2]=v[b+168>>2];v[b+268>>2]=c;break e}Q=j;j=C(F(C(C(C(C(C(-q)*i)-C(k*o))-C(l*j))/p),C(1)));j=j>C(0)?j:C(0);z[b+264>>2]=l+C(Q*j);z[b+260>>2]=o+C(k*j);z[b+256>>2]=q+C(i*j);break e;case 1:KV(b+256|0,b+160|0,b+96|0,b+32|0,b+224|0);break e;case 2:O_(b+256|0,b+160|0,b+96|0,b+32|0,b+224|0);break e;default:break f}}z[b+264>>2]=y;z[b+260>>2]=P;z[b+256>>2]=G}l=z[b+264>>2];i=C(-l);q=z[b+260>>2];k=C(-q);o=z[b+256>>2];j=C(-o);p=C(C(l*l)+C(C(o*o)+C(q*q)));if(na>2]+32|0];D=C(0);y=C(0);r=!(p>ka)|d;i=r?m:i;j=r?h:j;k=r?n:k;h=C(K(C(C(i*i)+C(C(j*j)+C(k*k)))));if(!(h<=C(1.1920928955078125e-7))){m=i;i=C(C(1)/h);la=C(m*i);y=C(j*i);D=C(k*i)}v[g+188>>2]=0;z[g+184>>2]=-la;z[g+180>>2]=-D;z[g+176>>2]=-y;z[g+160>>2]=N;v[g+172>>2]=v[b+236>>2];r=v[b+232>>2];v[g+164>>2]=v[b+228>>2];v[g+168>>2]=r;v[b+268>>2]=0;z[b+264>>2]=d?I:l;z[b+260>>2]=d?x:q;z[b+256>>2]=d?s:o;d=v[b+252>>2];H=v[b+248>>2];v[b+24>>2]=H;v[b+28>>2]=d;r=v[b+244>>2];V=v[b+240>>2];v[b+16>>2]=V;v[b+20>>2]=r;v[b+8>>2]=H;v[b+12>>2]=d;v[b>>2]=V;v[b+4>>2]=r;JV(b+160|0,b+96|0,b+32|0,b+256|0,b+16|0,b,v[b+224>>2]);j=z[v[g+28>>2]+16>>2];i=z[b+16>>2];k=z[b+20>>2];h=z[b+24>>2];v[g+204>>2]=0;z[g+200>>2]=h+(c?C(la*j):C(-0));z[g+196>>2]=k+(c?C(D*j):C(-0));z[g+192>>2]=i+(c?C(y*j):C(-0));d=1}xa=b+272|0;if(!d){break b}j=z[g+160>>2];g:{if(j<=z[g+128>>2]){t[a+11|0]=1;v[a+364>>2]=0;u[a+336>>1]=1026;v[a+332>>2]=e;z[a+352>>2]=-z[a+416>>2];z[a+360>>2]=-z[a+424>>2];z[a+356>>2]=-z[a+420>>2];j=C(0);break g}j=C(j*z[a+384>>2]);if(!(ma>j)){break b}l=z[g+184>>2];q=z[g+180>>2];o=z[g+176>>2];p=z[g+200>>2];s=z[g+196>>2];x=z[g+192>>2];z[a+364>>2]=j;u[a+336>>1]=1027;v[a+332>>2]=e;i=z[a+296>>2];k=z[a+288>>2];h=z[a+292>>2];I=C(C(i*p)+C(C(x*k)+C(s*h)));n=z[a+300>>2];m=C(C(n*n)+C(-.5));N=C(C(i*I)+C(C(n*C(C(k*s)-C(x*h)))+C(p*m)));z[a+348>>2]=z[a+312>>2]+C(N+N);N=C(C(h*I)+C(C(n*C(C(i*x)-C(p*k)))+C(s*m)));z[a+344>>2]=z[a+308>>2]+C(N+N);p=C(C(k*I)+C(C(n*C(C(h*p)-C(s*i)))+C(x*m)));z[a+340>>2]=z[a+304>>2]+C(p+p);p=C(C(i*l)+C(C(k*o)+C(q*h)));s=C(C(i*p)+C(C(n*C(C(k*q)-C(o*h)))+C(l*m)));s=C(s+s);x=s;I=C(s*s);s=C(C(k*p)+C(C(n*C(C(h*l)-C(q*i)))+C(o*m)));s=C(s+s);i=C(C(h*p)+C(C(n*C(C(i*o)-C(l*k)))+C(q*m)));i=C(i+i);k=C(C(1)/C(K(C(I+C(C(s*s)+C(i*i))))));z[a+360>>2]=x*k;z[a+356>>2]=i*k;z[a+352>>2]=s*k}t[a+10|0]=1;z[f>>2]=j*z[a+16>>2];z[a+52>>2]=ca;z[a+48>>2]=da;z[a+44>>2]=ea;z[a+40>>2]=$;z[a+36>>2]=aa;z[a+32>>2]=ba;z[a+28>>2]=ga;z[a+24>>2]=ha;z[a+20>>2]=fa;b=0;if(w[a+444|0]|z[a+364>>2]==C(0)){break a}}b=1}xa=g+208|0;return b|0}function yw(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=C(0),q=0,r=C(0),s=C(0),u=0,x=C(0),y=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0),fa=C(0),ga=0,ha=0,ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=0,wa=0,ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=C(0),Ia=0,Ja=C(0),Ka=0,La=0,Ma=0,Na=0;q=xa-192|0;xa=q;da=(m<<5)+b|0;u=v[da+20>>2];o=!(z[u+112>>2]>C(0))|!(z[u+108>>2]>C(0)?1:z[u+104>>2]>C(0))?o:1;o=!(z[u+128>>2]>C(0))|!(z[u+124>>2]>C(0)?1:z[u+120>>2]>C(0))?o:o+1|0;o=!(z[u+144>>2]>C(0))|!(z[u+140>>2]>C(0)?1:z[u+136>>2]>C(0))?o:o+1|0;I=B(m,80);y=v[e+344>>2];o=!(z[u+160>>2]>C(0))|!(z[u+156>>2]>C(0)?1:z[u+152>>2]>C(0))?o:o+1|0;ga=y+I|0;o=!(z[u+176>>2]>C(0))|!(z[u+172>>2]>C(0)?1:z[u+168>>2]>C(0))?o:o+1|0;I=w[ga+79|0];N=w[ga+77|0];p=z[u+248>>2];J=m<<5;ha=J+b|0;o=(N<<1)+(!(z[u+192>>2]>C(0))|!(z[u+188>>2]>C(0)?1:z[u+184>>2]>C(0))?o:o+1|0)|0;Ea=y+B(m,80)|0;N=p>C(0);R=N?w[Ea+76|0]:0;a:{if((o+R&255)==(0-I&255)){break a}Fa=v[e+68>>2]+(v[ga+72>>2]<<2)|0;ia=v[e+348>>2];Ga=ia+B(m,96)|0;aa=z[u+12>>2];Z=z[u>>2];ba=z[u+4>>2];_=z[u+8>>2];o=v[ha+16>>2];L=z[o+8>>2];$=z[u+28>>2];ca=z[u+32>>2];ja=z[u+40>>2];ka=z[u+36>>2];r=C(p*g);y=J+v[e+164>>2]|0;p=z[y+8>>2];s=C(p*p);p=z[y>>2];x=C(p*p);p=z[y+4>>2];s=C(K(C(s+C(x+C(p*p)))));p=z[y+24>>2];x=C(p*p);p=z[y+16>>2];A=C(p*p);p=z[y+20>>2];Ha=N?C(r*C(s+C(K(C(x+C(A+C(p*p))))))):C(0);p=z[u+52>>2];E=C(p+p);F=z[o+12>>2];r=C(C(F*F)+C(-.5));O=z[o>>2];p=z[u+48>>2];p=C(p+p);s=z[u+44>>2];P=C(s+s);Q=z[o+4>>2];ya=C(C(E*r)+C(F*C(C(O*p)-C(P*Q))));za=C(C(p*r)+C(F*C(C(L*P)-C(E*O))));Aa=C(C(P*r)+C(F*C(C(Q*E)-C(p*L))));r=z[u+24>>2];S=C(r+r);Ia=(v[da+24>>2]<<5)+b|0;y=v[Ia+16>>2];G=z[y+12>>2];s=C(C(G*G)+C(-.5));H=z[y>>2];r=z[u+20>>2];r=C(r+r);x=z[u+16>>2];W=C(x+x);T=z[y+4>>2];Ba=C(C(S*s)+C(G*C(C(H*r)-C(W*T))));U=z[y+8>>2];la=C(C(r*s)+C(G*C(C(U*W)-C(S*H))));ma=C(C(W*s)+C(G*C(C(T*S)-C(r*U))));Ja=l?C(0):C(1);na=C(p*Q);oa=C(r*T);pa=z[o+16>>2];qa=z[y+16>>2];ra=z[o+24>>2];sa=z[o+20>>2];ta=z[y+24>>2];ua=z[y+20>>2];Ca=B(m,76);Da=R&255;y=0;I=0;while(1){J=u+I|0;o=w[J+258|0];if(o){N=(I<<4)+u|0;V=v[N+116>>2];if(Da?1:(o|0)==1|(V|0)!=4){o=(Ca+v[e+272>>2]|0)+B(y,24)|0;p=z[o>>2];r=z[o+4>>2];s=z[o+8>>2];o=v[da+24>>2];v[q+136>>2]=0;v[q+140>>2]=0;v[q+128>>2]=0;v[q+132>>2]=0;v[q+156>>2]=0;z[q+152>>2]=s;z[q+148>>2]=r;z[q+144>>2]=p;v[q+104>>2]=0;v[q+108>>2]=0;v[q+96>>2]=0;v[q+100>>2]=0;v[q+124>>2]=0;z[q+120>>2]=-s;z[q+116>>2]=-r;z[q+112>>2]=-p;lx(b,f,e,o,q+128|0,q+48|0,m,q+96|0,q+160|0);M=C(0);x=z[q+72>>2];A=z[q+64>>2];X=z[q+68>>2];Y=z[q+184>>2];ea=z[q+176>>2];fa=z[q+180>>2];D=C(C(C(s*x)+C(C(p*A)+C(r*X)))-C(C(s*Y)+C(C(p*ea)+C(r*fa))));if(D>C(9999999747378752e-21)){M=C(C(1)/C(D+k))}o=v[e+180>>2];v[e+180>>2]=o+1;o=v[e+176>>2]+B(o,176)|0;z[o+100>>2]=D;z[o+96>>2]=M;z[o+48>>2]=A;v[o+24>>2]=0;v[o+28>>2]=0;z[o+12>>2]=p;v[o+8>>2]=0;v[o>>2]=0;v[o+4>>2]=0;z[o+56>>2]=x;z[o+52>>2]=X;z[o+44>>2]=s;z[o+40>>2]=r;z[o+36>>2]=p;v[o+32>>2]=0;z[o+20>>2]=s;z[o+16>>2]=r;z[o+60>>2]=z[q+48>>2];z[o- -64>>2]=z[q+52>>2];p=z[q+56>>2];z[o+80>>2]=Y;z[o+76>>2]=fa;z[o+72>>2]=ea;z[o+68>>2]=p;z[o+84>>2]=z[q+160>>2];z[o+88>>2]=z[q+164>>2];p=z[q+168>>2];t[o+168|0]=0;z[o+120>>2]=j;z[o+92>>2]=p;b:{if(w[J+258|0]!=1){p=C(34028234663852886e22);r=C(-34028234663852886e22);break b}va=(I<<3)+u|0;p=z[va+60>>2];r=z[va+56>>2]}va=1<>2]=0;v[o+112>>2]=0;v[o+116>>2]=0;z[o+108>>2]=p;z[o+104>>2]=r;z[o+164>>2]=Ja;z[o+156>>2]=Ha;c:{d:{e:{f:{if((V|0)!=4){V=y<<2;Ka=V+Ga|0;r=z[Ka+12>>2];if(w[J+258|0]==1){J=(I<<3)+u|0;p=z[J+60>>2];s=z[J+56>>2];r=r>2];A=z[Ka>>2];p=C(9999999562023526e9);s=C(0);g:{h:{J=v[N+116>>2];switch(J-2|0){case 0:break g;case 1:break h;default:break f}}p=C(0);s=C(9999999562023526e9)}Y=C(C(C(s*A)+C(C(r-X)*p))*h);x=C(C(C(g*p)+s)*g);r=C(C(C(h*p)+s)*h);break e}v[o+124>>2]=0;v[o+128>>2]=0;v[o+148>>2]=0;v[o+152>>2]=0;v[o+140>>2]=0;v[o+144>>2]=0;v[o+132>>2]=0;v[o+136>>2]=0;break c}p=z[N+104>>2];s=z[N+108>>2];x=C(C(C(g*p)+s)*g);Y=C(C(C(s*A)+C(C(r-X)*p))*h);r=C(C(C(h*p)+s)*h);A=C(0);s=C(0);p=C(0);i:{switch(J|0){case 0:break e;case 1:break i;default:break d}}p=C(C(1)/C(r+C(1)));z[o+124>>2]=M*C(Y*p);z[o+136>>2]=M*C(r*C(-p));s=C(C(1)/C(x+C(1)));A=C(M*C(x*s));break d}p=C(0);s=C(0);if(D>C(0)){s=C(C(1)/C(C(x*D)+C(1)));p=C(C(1)/C(C(r*D)+C(1)))}z[o+136>>2]=r*C(-p);z[o+124>>2]=Y*p;A=C(x*s)}z[o+144>>2]=C(1)-p;z[o+132>>2]=X;v[o+128>>2]=0;p=z[N+112>>2];v[o+152>>2]=0;z[o+140>>2]=C(C(D*A)*C(C(1)-s))*j;z[o+148>>2]=p*n}wa=wa|va}y=y+1|0}I=I+1|0;if((I|0)!=3){continue}break}p=C(C(L*E)+C(C(O*P)+na));X=C(ra+C(C(L*p)+ya));Y=C(sa+C(C(Q*p)+za));ya=C(pa+C(C(O*p)+Aa));p=C(C(U*S)+C(C(H*W)+oa));za=C(ta+C(C(U*p)+Ba));Aa=C(ua+C(C(T*p)+la));Ba=C(qa+C(C(H*p)+ma));Ca=B(m,76);ia=ia+B(m,96)|0;Da=R&255;I=3;while(1){J=u+I|0;o=w[J+258|0];if(o){R=0;N=(I<<4)+u|0;j:{k:{if(z[N+112>>2]>C(0)){R=1;if(z[N+104>>2]>C(0)){break k}R=z[N+108>>2]>C(0)}if(R|(o|0)==1){break k}if(!Da){break j}}o=(Ca+v[e+272>>2]|0)+B(y,24)|0;p=z[o+20>>2];r=z[o+16>>2];s=z[o+12>>2];o=v[ha+16>>2];D=z[o+24>>2];M=z[o+20>>2];V=v[Ia+16>>2];A=z[V+24>>2];x=z[V+20>>2];P=z[o+16>>2];E=z[V+16>>2];o=v[da+24>>2];v[q+156>>2]=0;E=C(Ba-E);S=C(Aa-x);x=C(C(r*E)-C(s*S));z[q+152>>2]=x;W=C(za-A);A=C(C(s*W)-C(p*E));z[q+148>>2]=A;E=C(C(S*p)-C(r*W));z[q+144>>2]=E;v[q+140>>2]=0;z[q+136>>2]=p;z[q+132>>2]=r;z[q+128>>2]=s;v[q+124>>2]=0;S=C(ya-P);M=C(Y-M);P=C(C(r*S)-C(s*M));z[q+120>>2]=-P;D=C(X-D);S=C(C(s*D)-C(p*S));z[q+116>>2]=-S;W=C(C(M*p)-C(r*D));z[q+112>>2]=-W;v[q+108>>2]=0;z[q+104>>2]=-p;z[q+100>>2]=-r;z[q+96>>2]=-s;lx(b,f,e,o,q+128|0,q+48|0,m,q+96|0,q+160|0);M=C(0);la=z[q+56>>2];ma=z[q+48>>2];na=z[q+52>>2];oa=z[q+72>>2];pa=z[q+64>>2];qa=z[q+68>>2];ra=z[q+168>>2];sa=z[q+160>>2];ta=z[q+164>>2];ua=z[q+184>>2];ea=z[q+176>>2];fa=z[q+180>>2];D=C(C(C(C(p*la)+C(C(s*ma)+C(r*na)))+C(C(oa*x)+C(C(pa*E)+C(A*qa))))-C(C(C(p*ra)+C(C(s*sa)+C(r*ta)))+C(C(ua*P)+C(C(ea*W)+C(S*fa)))));if(D>C(9999999747378752e-21)){M=C(C(1)/C(D+k))}o=v[e+180>>2];v[e+180>>2]=o+1;o=v[e+176>>2]+B(o,176)|0;z[o+96>>2]=M;z[o+100>>2]=D;t[o+168|0]=1;z[o+120>>2]=j;z[o+72>>2]=ea;z[o+48>>2]=pa;z[o+24>>2]=s;z[o+12>>2]=E;z[o+8>>2]=p;z[o+4>>2]=r;z[o>>2]=s;z[o+92>>2]=ra;z[o+88>>2]=ta;z[o+84>>2]=sa;z[o+80>>2]=ua;z[o+76>>2]=fa;z[o+68>>2]=la;z[o- -64>>2]=na;z[o+60>>2]=ma;z[o+56>>2]=oa;z[o+52>>2]=qa;z[o+44>>2]=P;z[o+40>>2]=S;z[o+36>>2]=W;z[o+32>>2]=p;z[o+28>>2]=r;z[o+20>>2]=x;z[o+16>>2]=A;v[o+160>>2]=0;v[o+112>>2]=0;v[o+116>>2]=0;z[o+156>>2]=Ha;z[o+164>>2]=Ja;l:{if(w[J+258|0]!=1){p=C(34028234663852886e22);r=C(-34028234663852886e22);break l}V=(I<<3)+u|0;p=z[V+60>>2];r=z[V+56>>2]}V=1<>2]=p;z[o+104>>2]=r;m:{n:{o:{p:{if(R){R=y<<2;r=z[(R+ia|0)+12>>2];p=z[R+Ga>>2];if(w[J+258|0]==1){J=(I<<3)+u|0;s=z[J+60>>2];x=z[J+56>>2];r=rs?s:r}P=z[R+Fa>>2];x=C(-p);p=C(0);s=C(9999999562023526e9);q:{r:{R=v[N+116>>2];switch(R-2|0){case 0:break q;case 1:break r;default:break p}}p=C(9999999562023526e9);s=C(0)}A=C(C(C(p*x)+C(C(r-P)*s))*h);E=C(C(C(g*s)+p)*g);r=C(C(C(h*s)+p)*h);break o}v[o+124>>2]=0;v[o+128>>2]=0;v[o+148>>2]=0;v[o+152>>2]=0;v[o+140>>2]=0;v[o+144>>2]=0;v[o+132>>2]=0;v[o+136>>2]=0;break m}p=z[N+104>>2];s=z[N+108>>2];E=C(C(C(g*p)+s)*g);A=C(C(C(s*x)+C(C(r-P)*p))*h);r=C(C(C(h*p)+s)*h);s=C(0);p=C(0);x=C(0);s:{switch(R|0){case 0:break o;case 1:break s;default:break n}}p=C(C(1)/C(r+C(1)));z[o+124>>2]=M*C(A*p);z[o+136>>2]=M*C(r*C(-p));s=C(C(1)/C(E+C(1)));x=C(M*C(E*s));break n}p=C(0);s=C(0);if(D>C(0)){s=C(C(1)/C(C(E*D)+C(1)));p=C(C(1)/C(C(r*D)+C(1)))}z[o+136>>2]=r*C(-p);z[o+124>>2]=A*p;x=C(E*s)}z[o+144>>2]=C(1)-p;z[o+132>>2]=P;v[o+128>>2]=0;p=z[N+112>>2];v[o+152>>2]=0;z[o+140>>2]=C(C(C(1)-s)*C(D*x))*j;z[o+148>>2]=p*n}wa=V|wa}y=y+1|0}I=I+1|0;if((I|0)!=6){continue}break}if(!w[ga+79|0]){break a}p=C(C(C(C(G*aa)-C(Z*H))-C(T*ba))-C(U*_));r=C(C(C(L*$)+C(C(F*ca)+C(Q*ja)))-C(ka*O));M=C(p*r);s=C(C(C(C(F*ja)-C($*O))-C(Q*ca))-C(L*ka));x=C(C(C(U*Z)+C(C(G*ba)+C(T*aa)))-C(_*H));E=C(s*x);A=C(C(C(H*ba)+C(C(G*_)+C(U*aa)))-C(Z*T));D=C(C(C(Q*ka)+C(C(F*$)+C(O*ja)))-C(ca*L));P=C(A*D);G=C(C(C(T*_)+C(C(G*Z)+C(H*aa)))-C(ba*U));H=C(s*G);L=C(C(C(O*ca)+C(C(F*ka)+C(L*ja)))-C($*Q));F=C(x*L);O=C(D*x);Q=C(p*L);T=C(s*A);U=C(G*r);aa=C(O+C(C(Q-T)-U));Z=C(L*G);ba=C(Z+C(C(M-E)-P));_=C(r*A);$=C(p*D);ca=C(_+C(C($-H)-F));F=C(F+_);H=C(H+$);z[q+76>>2]=C(F-H)*C(.5);z[q+68>>2]=C(H+F)*C(.5);F=C(p*s);s=C(A*L);L=C(G*D);r=C(x*r);x=C(s+C(L+r));p=C(F-x);s=C(C(C(s+s)+p)*C(.5));z[q+80>>2]=s;r=C(C(C(r+r)+p)*C(.5));z[q- -64>>2]=r;G=C(P+Z);H=C(E+M);z[q+72>>2]=C(G+H)*C(.5);O=C(O+U);Q=C(T+Q);z[q+60>>2]=C(O-Q)*C(.5);z[q+56>>2]=C(G-H)*C(.5);z[q+52>>2]=C(Q+O)*C(.5);p=C(C(C(L+L)+p)*C(.5));z[q+48>>2]=p;if(C(F+x)==C(0)){z[q+80>>2]=s+C(1.1920928955078125e-7);z[q+64>>2]=r+C(1.1920928955078125e-7);z[q+48>>2]=p+C(1.1920928955078125e-7)}z[q+44>>2]=-aa;z[q+40>>2]=-ba;z[q+36>>2]=-ca;L=C(i*j);y=0;while(1){if(!w[(u+y|0)+258|0]){F=z[(q+36|0)+(y<<2)>>2];o=(q+48|0)+B(y,12)|0;p=z[o>>2];r=z[o+4>>2];s=z[o+8>>2];o=v[da+24>>2];v[q+104>>2]=0;v[q+108>>2]=0;v[q+96>>2]=0;v[q+100>>2]=0;v[q+124>>2]=0;z[q+120>>2]=s;z[q+116>>2]=r;z[q+112>>2]=p;v[q+8>>2]=0;v[q+12>>2]=0;v[q>>2]=0;v[q+4>>2]=0;v[q+28>>2]=0;z[q+24>>2]=-s;z[q+20>>2]=-r;z[q+16>>2]=-p;lx(b,f,e,o,q+96|0,q+160|0,m,q,q+128|0);x=C(0);G=z[q+184>>2];O=z[q+176>>2];Q=z[q+180>>2];H=z[q+152>>2];T=z[q+144>>2];U=z[q+148>>2];A=C(C(C(s*G)+C(C(p*O)+C(r*Q)))-C(C(s*H)+C(C(p*T)+C(r*U))));if(A>C(9999999747378752e-21)){x=C(C(1)/C(A+k))}o=v[e+192>>2];v[e+192>>2]=o+1;o=v[e+188>>2]+B(o,80)|0;z[o+48>>2]=p;z[o+8>>2]=G;z[o+4>>2]=Q;z[o>>2]=O;z[o+56>>2]=s;z[o+52>>2]=r;z[o+12>>2]=z[q+160>>2];z[o+16>>2]=z[q+164>>2];p=z[q+168>>2];z[o+32>>2]=H;z[o+28>>2]=U;z[o+24>>2]=T;z[o+20>>2]=p;z[o+36>>2]=z[q+128>>2];z[o+40>>2]=z[q+132>>2];p=z[q+136>>2];z[o+68>>2]=L;z[o+64>>2]=F;z[o+60>>2]=x;z[o+44>>2]=p}y=y+1|0;if((y|0)!=3){continue}break}}t[Ea+78|0]=wa;m=v[ha>>2];o=v[ha+4>>2];if(m|o){while(1){u=m;yw(a,b,c,d,e,f,g,h,i,j,k,l,(La=Raa(u),Ma=Raa(o)+32|0,Na=u,Na?La:Ma),n);m=u-1&u;o=o&o-!u;if(m|o){continue}break}}xa=q+192|0}function T1(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=0,q=C(0),r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;p=xa-9952|0;xa=p;Q=z[g+20>>2];J=z[g+24>>2];M=z[f+20>>2];N=z[f+24>>2];y=z[g>>2];r=z[g+4>>2];s=z[g+8>>2];q=z[g+12>>2];I=z[g+16>>2];D=z[f>>2];A=z[f+4>>2];H=z[f+8>>2];F=z[f+12>>2];O=z[f+16>>2];z[p+9936>>2]=h;v[p+9932>>2]=0;z[p+9928>>2]=N;z[p+9924>>2]=M;z[p+9920>>2]=O;z[p+9916>>2]=F;z[p+9912>>2]=H;z[p+9908>>2]=A;z[p+9904>>2]=D;v[p+9900>>2]=0;z[p+9896>>2]=J;z[p+9892>>2]=Q;z[p+9888>>2]=I;z[p+9884>>2]=q;z[p+9880>>2]=s;z[p+9876>>2]=r;z[p+9872>>2]=y;E=C(C(C(H*y)-C(s*D))+C(C(A*q)-C(F*r)));P=C(C(C(A*s)-C(r*H))+C(C(D*q)-C(F*y)));u=C(C(C(D*r)-C(y*A))+C(C(H*q)-C(F*s)));L=C(F*q);F=C(-y);D=C(L-C(C(C(D*F)-C(A*r))-C(s*H)));A=C(O-I);H=C(M-Q);I=C(C(F*A)-C(H*r));F=C(N-J);Q=C(I-C(s*F));J=z[c>>2];M=C(C(q*q)+C(-.5));N=C(C(C(M*A)+C(q*C(C(s*H)-C(r*F))))-C(y*Q));N=C(N+N);I=C(N-z[n+16>>2]);I=I>C(0)?I:C(-I);O=C(C(C(M*H)+C(q*C(C(y*F)-C(s*A))))-C(r*Q));O=C(O+O);L=C(O-z[n+20>>2]);L=L>C(0)?L:C(-L);L=I>=L?I:L;q=C(C(C(q*C(C(r*A)-C(y*H)))+C(M*F))-C(s*Q));q=C(q+q);r=C(q-z[n+24>>2]);r=(r>C(0)?r:C(-r))>=C(0)?I:C(0);a:{if(C(C(D*z[n+12>>2])+C(C(u*z[n+8>>2])+C(C(P*z[n>>2])+C(E*z[n+4>>2]))))>2]=J*C(.05000000074505806);v[n+28>>2]=0;z[n+24>>2]=q;z[n+20>>2]=O;z[n+16>>2]=N;z[n+12>>2]=D;z[n+8>>2]=u;z[n+4>>2]=E;z[n>>2]=P;t[n+62|0]=0;c=v[e+40>>2];r=z[f+4>>2];y=C(r+r);q=z[f+8>>2];D=C(y*q);u=z[f>>2];s=C(u+u);E=z[f+12>>2];A=C(s*E);z[p+9836>>2]=D-A;z[p+9828>>2]=D+A;u=C(C(1)-C(u*s));D=C(r*y);z[p+9840>>2]=u-D;J=u;u=C(q+q);A=C(q*u);z[p+9824>>2]=J-A;q=C(s*q);y=C(y*E);z[p+9832>>2]=q+y;r=C(s*r);s=C(u*E);z[p+9820>>2]=r-s;z[p+9816>>2]=q-y;z[p+9812>>2]=r+s;z[p+9808>>2]=C(C(1)-D)-A;z[p+9844>>2]=z[f+16>>2];z[p+9848>>2]=z[f+20>>2];z[p+9852>>2]=z[f+24>>2];r=z[g+4>>2];y=C(r+r);q=z[g+8>>2];D=C(y*q);u=z[g>>2];s=C(u+u);E=z[g+12>>2];A=C(s*E);z[p+9788>>2]=D-A;z[p+9780>>2]=D+A;u=C(C(1)-C(u*s));D=C(r*y);z[p+9792>>2]=u-D;J=u;u=C(q+q);A=C(q*u);z[p+9776>>2]=J-A;q=C(s*q);y=C(y*E);z[p+9784>>2]=q+y;r=C(s*r);s=C(u*E);z[p+9772>>2]=r-s;z[p+9768>>2]=q-y;z[p+9764>>2]=r+s;z[p+9760>>2]=C(C(1)-D)-A;z[p+9796>>2]=z[g+16>>2];z[p+9800>>2]=z[g+20>>2];z[p+9804>>2]=z[g+24>>2];e=p+9696|0;q_(e,d,h,p+9808|0,p+9760|0,k,m);t[p+9680|0]=1;v[p+9688>>2]=0;v[p+9692>>2]=1088;d=p+5328|0;v[p+9684>>2]=d;f=v[c+56>>2];v[p+868>>2]=0;t[p+16|0]=m;v[p+12>>2]=f;v[p+8>>2]=k;v[p>>2]=144592;v[p+4>>2]=2;d=z1(p+880|0,p+9936|0,p+9856|0,p+9904|0,p+9872|0,n,i,d,o);v[p+5276>>2]=0;J9(p+5148|0,255,128);t[p+5309|0]=1;t[p+5308|0]=l;v[p+5304>>2]=j;v[p+5300>>2]=b;v[p+5296>>2]=a;h=z[a+8>>2];q=z[a>>2];r=z[a+4>>2];v[p+5292>>2]=0;h=C(h-z[p+3192>>2]);q=C(q-z[p+3184>>2]);r=C(r-z[p+3188>>2]);z[p+5288>>2]=C(z[p+3176>>2]*h)+C(C(z[p+3168>>2]*q)+C(r*z[p+3172>>2]));z[p+5284>>2]=C(z[p+3160>>2]*h)+C(C(z[p+3152>>2]*q)+C(r*z[p+3156>>2]));z[p+5280>>2]=C(z[p+3144>>2]*h)+C(C(z[p+3136>>2]*q)+C(r*z[p+3140>>2]));v[p+5312>>2]=e;Ba[v[(x[c+4>>1]<<2)+144616>>2]](c,e,p,1,1);m=v[p+868>>2];if(m){g=p+596|0;f=p+788|0;a=p+852|0;c=p+20|0;while(1){E1(d,c,v[f>>2],w[a|0],g);a=a+1|0;f=f+4|0;g=g+12|0;c=c+36|0;m=m-1|0;if(m){continue}break}v[p+868>>2]=0}j=xa-144|0;xa=j;f=d;b=v[f+3620>>2];a=v[b+4360>>2];if(!(!a|a>>>0<15)){Z=v[b+4356>>2];T=f+3628|0;_=f+2176|0;Y=f+2324|0;U=f+2336|0;$=(a>>>0)/15|0;V=j- -64|0;aa=j+128|0;ba=j+112|0;ca=j+96|0;W=f+4268|0;while(1){b=B(X,60)+Z|0;k=v[b+36>>2];l=v[b+44>>2];m=v[b+40>>2];c=w[b+56|0];b:{c:{if(c&8){break c}e=k>>>0>m>>>0?k:m;d=k>>>0>>0?k:m;a=e|d<<16;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=w[(f+((a>>>16^a)&127)|0)+3488|0];if((a|0)==255){break c}while(1){g=(a<<3)+U|0;if((d|0)==v[g>>2]&(e|0)==v[g+4>>2]){break b}a=w[(a+f|0)+3360|0];if((a|0)!=255){continue}break}}d:{if(c&16){break d}e=l>>>0>>0?m:l;d=l>>>0>m>>>0?m:l;a=e|d<<16;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=w[(f+((a>>>16^a)&127)|0)+3488|0];if((a|0)==255){break d}while(1){g=(a<<3)+U|0;if((d|0)==v[g>>2]&(e|0)==v[g+4>>2]){break b}a=w[(a+f|0)+3360|0];if((a|0)!=255){continue}break}}e:{if(c&32){break e}d=k>>>0>>0?l:k;c=k>>>0>l>>>0?l:k;a=d|c<<16;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=w[(f+((a>>>16^a)&127)|0)+3488|0];if((a|0)==255){break e}while(1){e=(a<<3)+U|0;if((c|0)==v[e>>2]&(d|0)==v[e+4>>2]){break b}a=w[(a+f|0)+3360|0];if((a|0)!=255){continue}break}}t[j+80|0]=0;v[j+76>>2]=5;v[V+8>>2]=0;v[V>>2]=0;v[V+4>>2]=0;h=z[b+16>>2];q=z[b+20>>2];r=z[b+28>>2];s=z[b+32>>2];y=z[b>>2];u=z[b+4>>2];E=z[b+8>>2];D=z[b+12>>2];A=z[b+24>>2];v[j+140>>2]=0;z[j+136>>2]=s;z[j+132>>2]=r;z[j+128>>2]=A;v[j+124>>2]=0;z[j+120>>2]=q;z[j+116>>2]=h;z[j+112>>2]=D;v[j+108>>2]=0;z[j+104>>2]=E;z[j+100>>2]=u;z[j+96>>2]=y;v[j+60>>2]=0;v[j+68>>2]=2139095039;v[j+72>>2]=2139095039;z[j+56>>2]=C(s+C(E+q))*C(.33333298563957214);z[j+52>>2]=C(r+C(u+h))*C(.33333298563957214);z[j+48>>2]=C(A+C(y+D))*C(.33333298563957214);R=v[f+2324>>2];d=v[b+48>>2];e=v[f+2320>>2];c=xa-16|0;xa=c;a=v[v[f+4420>>2]+40>>2];s=z[a+36>>2];y=z[a+40>>2];b=v[v[f+4416>>2]+24>>2]+B(v[b+52>>2],20)|0;h=z[b>>2];q=z[b+4>>2];u=z[a+20>>2];r=z[b+8>>2];E=z[a+24>>2];D=z[a+32>>2];A=z[a+8>>2];H=z[a>>2];F=z[a+4>>2];P=z[a+16>>2];v[c+12>>2]=0;s=C(C(y*r)+C(C(D*h)+C(q*s)));y=C(C(A*r)+C(C(H*h)+C(q*F)));q=C(C(E*r)+C(C(P*h)+C(q*u)));h=C(C(1)/C(K(C(C(s*s)+C(C(y*y)+C(q*q))))));r=C(y*h);z[c>>2]=r;q=C(q*h);z[c+4>>2]=q;h=C(s*h);z[c+8>>2]=h;v[j+44>>2]=0;z[j+40>>2]=-h;z[j+36>>2]=-q;z[j+32>>2]=-r;p2(v[f+4416>>2],b,j+48|0,d,v[f+4420>>2],e,Y,_,c);xa=c+16|0;b=v[f+2324>>2];f:{if(b>>>0<=R>>>0){d=b;break f}da=(k&127)+W|0;ea=(l&127)+W|0;fa=(m&127)+W|0;ga=b+1|0;S=0;a=b;d=a;while(1){c=a;a=a-1|0;o=a<<6;fZ((o+v[f+2320>>2]|0)+16|0,ca,ba,aa,j+16|0,j);g:{h:{h=z[j+16>>2];if(h>C(.9700000286102295)){e=w[fa|0];if((e|0)==255){break g}while(1){if(v[(e<<2)+T>>2]==(m|0)){break h}e=w[(e+f|0)+4140|0];if((e|0)!=255){continue}break}break g}q=z[j>>2];if(q>C(.9700000286102295)){e=w[ea|0];if((e|0)==255){break g}while(1){if(v[(e<<2)+T>>2]==(l|0)){break h}e=w[(e+f|0)+4140|0];if((e|0)!=255){continue}break}break g}if(!(C(h+q)<=C(.029999971389770508))){break g}e=w[da|0];if((e|0)==255){break g}while(1){if(v[(e<<2)+T>>2]==(k|0)){break h}e=w[(e+f|0)+4140|0];if((e|0)!=255){continue}break}break g}g=d-1|0;i:{if(g>>>0<=a>>>0){break i}e=a;if((S-b|0)+d&1){e=v[f+2320>>2];o=e+o|0;e=e+(c<<6)|0;G=v[e+4>>2];v[o>>2]=v[e>>2];v[o+4>>2]=G;v[o+48>>2]=v[e+48>>2];G=v[e+44>>2];v[o+40>>2]=v[e+40>>2];v[o+44>>2]=G;G=v[e+36>>2];v[o+32>>2]=v[e+32>>2];v[o+36>>2]=G;G=v[e+28>>2];v[o+24>>2]=v[e+24>>2];v[o+28>>2]=G;G=v[e+20>>2];v[o+16>>2]=v[e+16>>2];v[o+20>>2]=G;G=v[e+12>>2];v[o+8>>2]=v[e+8>>2];v[o+12>>2]=G;e=c}if((ga-S|0)==(d|0)){break i}while(1){c=v[f+2320>>2];o=e<<6;d=c+o|0;o=o- -64|0;c=o+c|0;G=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=G;v[d+48>>2]=v[c+48>>2];G=v[c+44>>2];v[d+40>>2]=v[c+40>>2];v[d+44>>2]=G;G=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=G;G=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=G;G=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=G;G=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=G;c=v[f+2320>>2];d=c+o|0;e=e+2|0;c=c+(e<<6)|0;o=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=o;o=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=o;o=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=o;o=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=o;o=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=o;o=v[c+44>>2];v[d+40>>2]=v[c+40>>2];v[d+44>>2]=o;v[d+48>>2]=v[c+48>>2];if(e>>>0>>0){continue}break}}d=g}S=S+1|0;if(a>>>0>R>>>0){continue}break}}v[Y>>2]=d;if(d>>>0<=R>>>0){break b}C1(f,j+32|0,R)}X=X+1|0;if(($|0)!=(X|0)){continue}break}}xa=j+144|0;A1(f,6,0);a=v[p+9692>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[p+9684>>2];if((a|0)==(p+5328|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}g=0;v[p+60>>2]=0;z[p+56>>2]=q;z[p+52>>2]=O;v[p+44>>2]=0;v[p+28>>2]=0;q=C(E+E);r=C(u*q);h=C(P+P);s=C(D*h);z[p+36>>2]=r-s;z[p+24>>2]=r+s;r=C(C(1)-C(P*h));s=C(E*q);z[p+40>>2]=r-s;A=r;r=C(u+u);y=C(u*r);z[p+20>>2]=A-y;z[p+48>>2]=N;v[p+12>>2]=0;u=C(u*h);q=C(D*q);z[p+32>>2]=u+q;h=C(E*h);r=C(D*r);z[p+16>>2]=h-r;z[p+8>>2]=u-q;z[p+4>>2]=h+r;z[p>>2]=C(C(1)-s)-y;z[p+9696>>2]=J*C(.800000011920929);if(!w[n+62|0]){break a}while(1){b=g+n|0;a=w[b+56|0];c=B(a,400)+n|0;B2(p+5328|0,c- -64|0,p,p+9696|0);j:{if(!v[c+448>>2]){c=w[n+62|0]-1|0;t[n+62|0]=c;c=(c&255)+n|0;d=w[c+56|0];t[c+56|0]=a;t[b+56|0]=d;g=g-1|0;break j}z[((a<<2)+n|0)+32>>2]=z[p+5328>>2]}g=g+1|0;if(g>>>0>2];t[n+63|0]=e+w[n+63|0];j=a- -64|0;h=z[a+104>>2];q=z[a+100>>2];r=z[a+96>>2];k:{if(e>>>0<2){break k}a=1;d=e-1|0;l=d&1;if((e|0)!=2){m=d&-2;d=0;while(1){f=j+(a<<6)|0;r=C(C(r+z[f+32>>2])+z[f+96>>2]);h=C(C(h+z[f+40>>2])+z[f+104>>2]);q=C(C(q+z[f+36>>2])+z[f+100>>2]);a=a+2|0;d=d+2|0;if((m|0)!=(d|0)){continue}break}}if(!l){break k}a=j+(a<<6)|0;r=C(r+z[a+32>>2]);h=C(h+z[a+40>>2]);q=C(q+z[a+36>>2])}if(!(!e|b>>>0>=64)){y=z[c+8>>2];u=z[c>>2];E=z[c+4>>2];D=C(C(y*h)+C(C(u*r)+C(q*E)));s=z[c+12>>2];A=C(C(s*s)+C(-.5));H=C(C(y*D)+C(C(s*C(C(u*q)-C(r*E)))+C(h*A)));H=C(H+H);F=C(C(u*D)+C(C(s*C(C(E*h)-C(q*y)))+C(r*A)));F=C(F+F);h=C(C(E*D)+C(C(s*C(C(y*r)-C(h*u)))+C(q*A)));q=C(h+h);h=C(C(1)/C(K(C(C(H*H)+C(C(F*F)+C(q*q))))));H=C(H*h);P=C(q*h);F=C(F*h);d=0;a=b;while(1){l:{f=j+(d<<6)|0;q=z[f+20>>2];r=z[f+16>>2];s=z[f+24>>2];D=z[f+44>>2];Q=z[c+16>>2];J=z[c+20>>2];A=z[c+24>>2];y=z[c+8>>2];u=z[c>>2];E=z[c+4>>2];h=z[c+12>>2];b=(a<<6)+i|0;v[b+28>>2]=0;z[b+8>>2]=H;z[b+4>>2]=P;z[b>>2]=F;z[b+12>>2]=D;I=A;D=C(C(h*h)+C(-.5));A=C(C(y*s)+C(C(u*r)+C(E*q)));M=C(C(C(h*C(C(u*q)-C(r*E)))+C(s*D))+C(y*A));z[b+24>>2]=I+C(M+M);I=J;J=C(C(E*A)+C(C(D*q)+C(h*C(C(y*r)-C(s*u)))));z[b+20>>2]=I+C(J+J);h=C(C(u*A)+C(C(D*r)+C(h*C(C(E*s)-C(q*y)))));z[b+16>>2]=Q+C(h+h);v[b+52>>2]=v[f+48>>2];b=a+1|0;d=d+1|0;if(e>>>0<=d>>>0){break l}f=a>>>0<63;a=b;if(f){continue}}break}k=w[n+62|0]}g=g+1|0;if(k>>>0>g>>>0){continue}break}}v[i+4096>>2]=b;xa=p+9952|0;return(b|0)!=0}function wA(a,b){var c=0,d=0,e=C(0),f=C(0),g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=0,u=0,y=0,A=0,D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=0,_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=0,kb=C(0),lb=C(0),mb=C(0),nb=0,ob=0,pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=0,Kb=0,Lb=0,Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0),gc=C(0),hc=C(0),ic=C(0),jc=C(0),kc=C(0),lc=C(0),mc=C(0),nc=C(0),oc=C(0),pc=C(0),qc=C(0),rc=0,sc=C(0),tc=0,uc=0;o=v[a+100>>2];_b=z[o+28>>2];la=z[o+16>>2];p=v[a+96>>2];ma=z[p+24>>2];na=z[p+20>>2];$b=z[o+12>>2];oa=z[o+8>>2];pa=z[o+4>>2];qa=z[o>>2];q=v[a+68>>2];ac=z[q+28>>2];ra=z[q+16>>2];r=v[a+64>>2];sa=z[r+24>>2];ta=z[r+20>>2];bc=z[q+12>>2];ua=z[q+8>>2];va=z[q+4>>2];wa=z[q>>2];s=v[a+36>>2];cc=z[s+28>>2];ya=z[s+16>>2];u=v[a+32>>2];za=z[u+24>>2];Aa=z[u+20>>2];dc=z[s+12>>2];Ba=z[s+8>>2];Ca=z[s+4>>2];Da=z[s>>2];y=v[a+4>>2];Ea=z[y+24>>2];Fa=z[y+20>>2];A=v[a>>2];Ga=z[A+24>>2];Ha=z[A+20>>2];Ia=z[o+24>>2];Ja=z[o+20>>2];Ka=z[q+24>>2];La=z[q+20>>2];Ma=z[s+24>>2];Na=z[s+20>>2];ec=z[p+28>>2];Oa=z[p+16>>2];fc=z[p+12>>2];Pa=z[p+8>>2];Qa=z[p+4>>2];Ra=z[p>>2];gc=z[r+28>>2];Sa=z[r+16>>2];hc=z[r+12>>2];Ta=z[r+8>>2];Ua=z[r+4>>2];Va=z[r>>2];ic=z[u+28>>2];Wa=z[u+16>>2];jc=z[u+12>>2];Xa=z[u+8>>2];Ya=z[u+4>>2];Za=z[u>>2];kc=z[y+28>>2];_a=z[y+16>>2];lc=z[A+28>>2];$a=z[A+16>>2];mc=z[y+12>>2];ab=z[y+8>>2];bb=z[y+4>>2];cb=z[y>>2];nc=z[A+12>>2];db=z[A+8>>2];eb=z[A+4>>2];fb=z[A>>2];D=x[a+22>>1];d=v[a+24>>2];Jb=xa-16|0;c=Jb;v[c+8>>2]=2139095039;v[c+12>>2]=2139095039;v[c>>2]=2139095039;v[c+4>>2]=2139095039;if(D){Bb=z[d+76>>2];Cb=z[d+92>>2];oc=C(Bb+Cb);Db=z[d+72>>2];Eb=z[d+88>>2];pc=C(Db+Eb);Fb=z[d+68>>2];Gb=z[d+84>>2];qc=C(Fb+Gb);rc=(D<<4)+d|0;Hb=z[d+64>>2];Ib=z[d+80>>2];sc=C(Hb+Ib);nb=d+336|0;while(1){c=d;ob=c+192|0;da=w[c+1|0];d=da<<4;Y=ob+d|0;Z=t[c+3|0]&1;i=d&0-Z;d=Y+B(da,144)|0;jb=i+d|0;i=w[c+2|0];Kb=jb+(((i|0)!=0)<<7)|0;Lb=Kb+(i<<4)|0;tc=B(i,144);_=z[c+172>>2];$=z[c+168>>2];aa=z[c+164>>2];ba=z[c+156>>2];ca=z[c+152>>2];K=z[c+148>>2];L=z[c+140>>2];M=z[c+136>>2];ea=z[c+132>>2];Mb=z[c+124>>2];Nb=z[c+120>>2];Ob=z[c+116>>2];Pb=z[c+108>>2];Qb=z[c+104>>2];Rb=z[c+100>>2];gb=z[c+160>>2];fa=z[c+144>>2];hb=z[c+128>>2];Sb=z[c+112>>2];Tb=z[c+96>>2];a:{if(!da){e=C(0);l=C(0);F=C(0);G=C(0);H=C(0);R=C(0);S=C(0);I=C(0);break a}uc=Z?d:Jb;N=C(C(C(C(fb*hb)+C(eb*fa))+C(db*gb))-C(C(C(cb*hb)+C(bb*fa))+C(ab*gb)));T=C(C(C(C(Za*ea)+C(Ya*K))+C(Xa*aa))-C(C(C(Da*ea)+C(Ca*K))+C(Ba*aa)));O=C(C(C(C(Va*M)+C(Ua*ca))+C(Ta*$))-C(C(C(wa*M)+C(va*ca))+C(ua*$)));U=C(C(C(C(Ra*L)+C(Qa*ba))+C(Pa*_))-C(C(C(qa*L)+C(pa*ba))+C(oa*_)));I=C(0);D=0;S=C(0);R=C(0);H=C(0);G=C(0);F=C(0);l=C(0);e=C(0);while(1){P=((Z?D:0)<<4)+uc|0;f=z[P+4>>2];j=z[P+8>>2];E=z[P+12>>2];g=ob+(D<<4)|0;h=z[g+4>>2];d=Y+B(D,144)|0;k=z[d+84>>2];kb=z[d+52>>2];ga=z[d+36>>2];ha=z[d+20>>2];J=z[d+4>>2];ia=z[d+132>>2];ja=z[d+100>>2];ka=z[d+116>>2];m=z[g+8>>2];V=z[d+88>>2];W=z[d+56>>2];pb=z[d+40>>2];qb=z[d+24>>2];rb=z[d+8>>2];sb=z[d+136>>2];tb=z[d+104>>2];ub=z[d+120>>2];n=z[g+12>>2];ib=z[d+92>>2];vb=z[d+60>>2];wb=z[d+44>>2];xb=z[d+28>>2];X=z[d+12>>2];yb=z[d+140>>2];zb=z[d+108>>2];Ab=z[d+124>>2];lb=z[g>>2];Q=C(-lb);Ub=z[d>>2];Vb=z[d+16>>2];Wb=z[d+32>>2];Xb=z[d+96>>2];Yb=z[d+112>>2];Zb=z[d+128>>2];mb=C(z[d+80>>2]-C(C(N+C(C(C(C($a*Ub)+C(Ha*Vb))+C(Ga*Wb))-C(C(C(_a*Xb)+C(Fa*Yb))+C(Ea*Zb))))*z[d+48>>2]));Q=C(lb+(Q>2];Q=Q>2]=Q;ib=C(ib-C(vb*C(U+C(C(C(C(Oa*X)+C(na*xb))+C(ma*wb))-C(C(C(la*zb)+C(Ja*Ab))+C(Ia*yb))))));vb=C(-n);ib=C(n+(ib>vb?ib:vb));E=E>ib?ib:E;z[g+12>>2]=E;V=C(V-C(W*C(O+C(C(C(C(Sa*rb)+C(ta*qb))+C(sa*pb))-C(C(C(ra*tb)+C(La*ub))+C(Ka*sb))))));W=C(-m);V=C(m+(V>W?V:W));j=j>V?V:j;z[g+8>>2]=j;k=C(k-C(kb*C(T+C(C(C(C(Wa*J)+C(Aa*ha))+C(za*ga))-C(C(C(ya*ja)+C(Na*ka))+C(Ma*ia))))));kb=C(-h);k=C(h+(k>kb?k:kb));k=f>k?k:f;z[g+4>>2]=k;H=C(H+Q);I=C(I+E);S=C(S+j);R=C(R+k);f=C(Q-lb);e=C(e+f);N=C(N+C(sc*f));n=C(E-n);G=C(G+n);m=C(j-m);F=C(F+m);h=C(k-h);l=C(l+h);j=C(Sb*f);Ea=C(Ea-C(Zb*j));f=C(Tb*f);Ga=C(Ga+C(Wb*f));Fa=C(Fa-C(Yb*j));Ha=C(Ha+C(Vb*f));_a=C(_a-C(Xb*j));$a=C($a+C(Ub*f));U=C(U+C(oc*n));O=C(O+C(pc*m));T=C(T+C(qc*h));f=C(Mb*n);Ia=C(Ia-C(yb*f));j=C(Nb*m);Ka=C(Ka-C(sb*j));E=C(Ob*h);Ma=C(Ma-C(ia*E));n=C(Pb*n);ma=C(ma+C(wb*n));m=C(Qb*m);sa=C(sa+C(pb*m));h=C(Rb*h);za=C(za+C(ga*h));Ja=C(Ja-C(Ab*f));La=C(La-C(ub*j));Na=C(Na-C(ka*E));na=C(na+C(xb*n));ta=C(ta+C(qb*m));Aa=C(Aa+C(ha*h));la=C(la-C(zb*f));ra=C(ra-C(tb*j));ya=C(ya-C(ja*E));Oa=C(Oa+C(X*n));Sa=C(Sa+C(rb*m));Wa=C(Wa+C(J*h));nb=nb+192|0;D=D+1|0;if((da|0)!=(D|0)){continue}break}}d=Lb+tc|0;N=C(Cb*G);oa=C(oa-C(_*N));T=C(Eb*F);ua=C(ua-C($*T));O=C(Gb*l);Ba=C(Ba-C(aa*O));U=C(Ib*e);ab=C(ab-C(gb*U));G=C(Bb*G);Pa=C(Pa+C(_*G));F=C(Db*F);Ta=C(Ta+C($*F));l=C(Fb*l);Xa=C(Xa+C(aa*l));e=C(Hb*e);db=C(db+C(gb*e));pa=C(pa-C(ba*N));va=C(va-C(ca*T));Ca=C(Ca-C(K*O));bb=C(bb-C(fa*U));Qa=C(Qa+C(ba*G));Ua=C(Ua+C(ca*F));Ya=C(Ya+C(K*l));eb=C(eb+C(fa*e));qa=C(qa-C(L*N));wa=C(wa-C(M*T));Da=C(Da-C(ea*O));cb=C(cb-C(hb*U));Ra=C(Ra+C(L*G));Va=C(Va+C(M*F));Za=C(Za+C(ea*l));fb=C(fb+C(hb*e));if(!(!w[b|0]|!i)){pb=C(H*z[c+32>>2]);qb=C(I*z[c+44>>2]);rb=C(S*z[c+40>>2]);sb=C(R*z[c+36>>2]);ea=C(H*z[c+48>>2]);gb=C(-ea);fa=C(I*z[c+60>>2]);hb=C(-fa);N=C(S*z[c+56>>2]);T=C(-N);O=C(R*z[c+52>>2]);U=C(-O);ob=i>>>0>1?i:1;D=0;da=0;P=0;Y=0;Z=0;while(1){c=B(D,144)+Lb|0;h=z[c+48>>2];i=(D<<4)+Kb|0;M=z[i>>2];m=z[c+64>>2];n=z[c+32>>2];f=z[c>>2];j=z[c+16>>2];g=((D&1)<<4)+jb|0;l=z[g+96>>2];F=z[g+32>>2];G=z[g- -64>>2];E=z[c+128>>2];ga=z[c+96>>2];ha=z[c+112>>2];L=z[i+4>>2];J=z[c+52>>2];ia=z[c+68>>2];ja=z[c+36>>2];ka=z[c+20>>2];tb=z[c+4>>2];H=z[g+100>>2];R=z[g+36>>2];S=z[g+68>>2];ub=z[c+132>>2];wb=z[c+100>>2];xb=z[c+116>>2];K=z[i+8>>2];X=z[c+56>>2];yb=z[c+72>>2];zb=z[c+40>>2];Ab=z[c+24>>2];lb=z[c+8>>2];I=z[g+104>>2];_=z[g+40>>2];$=z[g+72>>2];Q=z[c+136>>2];k=z[c+104>>2];kb=z[c+120>>2];V=z[i+12>>2];aa=z[g+44>>2];ba=z[g+76>>2];ca=z[g+108>>2];e=C(C(V-z[c+60>>2])-C(C(C(C(C(C(Ra*aa)+C(Qa*ba))+C(Pa*ca))+C(C(C(Oa*z[c+12>>2])+C(na*z[c+28>>2]))+C(ma*z[c+44>>2])))-C(C(C(C(qa*aa)+C(pa*ba))+C(oa*ca))+C(C(C(la*z[c+108>>2])+C(Ja*z[c+124>>2]))+C(Ia*z[c+140>>2]))))*z[c+76>>2]));W=eC(0)?e:C(-e));W=g?fa>2]=W;e=C(C(K-X)-C(yb*C(C(C(C(C(Va*_)+C(Ua*$))+C(Ta*I))+C(C(C(Sa*lb)+C(ta*Ab))+C(sa*zb)))-C(C(C(C(wa*_)+C(va*$))+C(ua*I))+C(C(C(ra*k)+C(La*kb))+C(Ka*Q))))));X=eC(0)?e:C(-e));X=Y?N>2]=X;e=C(C(L-J)-C(ia*C(C(C(C(C(Za*R)+C(Ya*S))+C(Xa*H))+C(C(C(Wa*tb)+C(Aa*ka))+C(za*ja)))-C(C(C(C(Da*R)+C(Ca*S))+C(Ba*H))+C(C(C(ya*wb)+C(Na*xb))+C(Ma*ub))))));J=eC(0)?e:C(-e));J=P?J>O?O:J:e;z[i+4>>2]=J;Z=i;e=C(C(M-h)-C(m*C(C(C(C(C(fb*F)+C(eb*G))+C(db*l))+C(C(C($a*f)+C(Ha*j))+C(Ga*n)))-C(C(C(C(cb*F)+C(bb*G))+C(ab*l))+C(C(C(_a*ga)+C(Fa*ha))+C(Ea*E))))));h=eC(0)?e:C(-e));f=i?h>ea?ea:h:e;z[Z>>2]=f;e=C(W-V);h=C(Mb*e);Ia=C(Ia-C(h*z[c+140>>2]));K=C(X-K);m=C(Nb*K);Ka=C(Ka-C(m*z[c+136>>2]));L=C(J-L);n=C(Ob*L);Ma=C(Ma-C(n*z[c+132>>2]));M=C(f-M);f=C(Sb*M);Ea=C(Ea-C(f*z[c+128>>2]));j=C(Pb*e);ma=C(ma+C(j*z[c+44>>2]));E=C(Qb*K);sa=C(sa+C(E*z[c+40>>2]));ga=C(Rb*L);za=C(za+C(ga*z[c+36>>2]));ha=C(Tb*M);Ga=C(Ga+C(ha*z[c+32>>2]));J=C(Cb*e);oa=C(oa-C(ca*J));ia=C(Eb*K);ua=C(ua-C(I*ia));ja=C(Gb*L);Ba=C(Ba-C(H*ja));ka=C(Ib*M);ab=C(ab-C(l*ka));e=C(Bb*e);Pa=C(Pa+C(ca*e));k=I;I=C(Db*K);Ta=C(Ta+C(k*I));k=H;H=C(Fb*L);Xa=C(Xa+C(k*H));k=l;l=C(Hb*M);db=C(db+C(k*l));Ja=C(Ja-C(h*z[c+124>>2]));La=C(La-C(m*z[c+120>>2]));Na=C(Na-C(n*z[c+116>>2]));Fa=C(Fa-C(f*z[c+112>>2]));na=C(na+C(j*z[c+28>>2]));ta=C(ta+C(E*z[c+24>>2]));Aa=C(Aa+C(ga*z[c+20>>2]));Ha=C(Ha+C(ha*z[c+16>>2]));pa=C(pa-C(ba*J));va=C(va-C($*ia));Ca=C(Ca-C(S*ja));bb=C(bb-C(G*ka));Qa=C(Qa+C(ba*e));Ua=C(Ua+C($*I));Ya=C(Ya+C(S*H));eb=C(eb+C(G*l));la=C(la-C(h*z[c+108>>2]));ra=C(ra-C(m*z[c+104>>2]));ya=C(ya-C(n*z[c+100>>2]));_a=C(_a-C(f*z[c+96>>2]));Oa=C(Oa+C(z[c+12>>2]*j));Sa=C(Sa+C(z[c+8>>2]*E));Wa=C(Wa+C(z[c+4>>2]*ga));$a=C($a+C(z[c>>2]*ha));qa=C(qa-C(aa*J));wa=C(wa-C(_*ia));Da=C(Da-C(R*ja));cb=C(cb-C(F*ka));Ra=C(Ra+C(aa*e));Va=C(Va+C(_*I));Za=C(Za+C(R*H));fb=C(fb+C(F*l));Z=0-g|0;Y=0-Y|0;P=0-P|0;da=0-i|0;nb=nb+256|0;D=D+1|0;if((ob|0)!=(D|0)){continue}break}v[jb+12>>2]=Z;v[jb+8>>2]=Y;v[jb+4>>2]=P;v[jb>>2]=da}if(d>>>0>>0){continue}break}}z[A+28>>2]=lc;z[A+24>>2]=Ga;z[A+20>>2]=Ha;z[A+16>>2]=$a;z[A+12>>2]=nc;z[A+8>>2]=db;z[A+4>>2]=eb;z[A>>2]=fb;z[u+28>>2]=ic;z[u+24>>2]=za;z[u+20>>2]=Aa;z[u+16>>2]=Wa;z[u+12>>2]=jc;z[u+8>>2]=Xa;z[u+4>>2]=Ya;z[u>>2]=Za;z[r+28>>2]=gc;z[r+24>>2]=sa;z[r+20>>2]=ta;z[r+16>>2]=Sa;z[r+12>>2]=hc;z[r+8>>2]=Ta;z[r+4>>2]=Ua;z[r>>2]=Va;z[p+28>>2]=ec;z[p+24>>2]=ma;z[p+20>>2]=na;z[p+16>>2]=Oa;z[p+12>>2]=fc;z[p+8>>2]=Pa;z[p+4>>2]=Qa;z[p>>2]=Ra;if(v[a+16>>2]){z[y+28>>2]=kc;z[y+24>>2]=Ea;z[y+20>>2]=Fa;z[y+16>>2]=_a;z[y+12>>2]=mc;z[y+8>>2]=ab;z[y+4>>2]=bb;z[y>>2]=cb}if(v[a+48>>2]){z[s+28>>2]=cc;z[s+24>>2]=Ma;z[s+20>>2]=Na;z[s+16>>2]=ya;z[s+12>>2]=dc;z[s+8>>2]=Ba;z[s+4>>2]=Ca;z[s>>2]=Da}if(v[a+80>>2]){z[q+28>>2]=ac;z[q+24>>2]=Ka;z[q+20>>2]=La;z[q+16>>2]=ra;z[q+12>>2]=bc;z[q+8>>2]=ua;z[q+4>>2]=va;z[q>>2]=wa}if(v[a+112>>2]){z[o+28>>2]=_b;z[o+24>>2]=Ia;z[o+20>>2]=Ja;z[o+16>>2]=la;z[o+12>>2]=$b;z[o+8>>2]=oa;z[o+4>>2]=pa;z[o>>2]=qa}}function Fz(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=0,m=0,n=C(0),o=C(0),p=0,q=C(0),r=0,s=0,y=0,A=0,D=C(0),E=0,F=0,G=0,H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=0,P=C(0),Q=0,R=C(0),S=0,T=0,U=0,V=0,W=C(0),X=C(0),Y=0,Z=0,_=0,$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0);aa=v[a+100>>2]+v[a+96>>2]|0;d=v[a+28>>2];c=v[d+336>>2];E=v[c>>2];if(E){v[c>>2]=v[E>>2]}if(!E){c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?26947:63804;e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,12195,e,19395,82)|0;c=e+19&-16;v[c-4>>2]=c-e;E=hB(c,v[d+340>>2])}c=E+11856|0;v[c>>2]=0;v[c+4>>2]=0;T=v[a+96>>2];if(aa>>>0>T>>>0){while(1){I=0;h=0;Z=0;j=xa-1536|0;xa=j;S=E+16|0;U=v[v[a+32>>2]+12e3>>2]+B(T,36)|0;V=x[U+4>>1];if(V){_=v[U>>2];A=v[a+108>>2];N=v[A+32>>2];H=v[v[a+32>>2]+12012>>2];while(1){c=v[v[v[H+(h+_<<2)>>2]+12>>2]+68>>2];d=N+(v[A+((c&7)<<2)>>2]+(c>>>3|0)<<4)|0;G=w[d+13|0];b=w[d+12|0];g=v[d+8>>2];c=v[d+4>>2];d=v[d>>2];v[j>>2]=0;v[j+64>>2]=0;v[j+1276>>2]=0;a:{if(!d){break a}e=w[d+43|0];if(!G|e&4){break a}s=e&128?32:e&2?64:16;i=e&130;F=e&1;f=g+(b<<2)|0;e=0;m=0;p=0;while(1){if(m){b=c;c=w[d+41|0];c=b+(c>>>0>p>>>0?B(s,c-p|0):0)|0;d=d+48|0}m=m+1|0;p=w[d+41|0];b:{if(!p){p=0;break b}l=x[d+46>>1];r=x[d+44>>1];Q=w[d+42|0];k=z[d+32>>2];q=z[d+36>>2];b=(I<<6)+S|0;J=z[d+28>>2];z[b+60>>2]=J;z[b+44>>2]=q;z[b+56>>2]=k;g=e?s:0;f=(((e|0)!=0)<<2)+f|0;e=-1;e=F?v[f>>2]:e;c=c+g|0;g=(j+1280|0)+(I<<2)|0;t[b+48|0]=Q;v[b+52>>2]=e;I=I+1|0;z[b+28>>2]=i?z[c+28>>2]:C(34028234663852886e22);z[b+32>>2]=z[(i?c+16|0:j- -64|0)>>2];z[b+36>>2]=z[(i?c+20|0:j)>>2];z[b+40>>2]=z[(i?c+24|0:j+1276|0)>>2];z[b>>2]=z[d+16>>2];z[b+4>>2]=z[d+20>>2];z[b+8>>2]=z[d+24>>2];z[b+16>>2]=z[c>>2];z[b+20>>2]=z[c+4>>2];z[b+24>>2]=z[c+8>>2];z[b+12>>2]=z[c+12>>2];u[g>>1]=r;u[g+2>>1]=l;e=1;if((p|0)==1){p=1;break b}g=1;while(1){b=(I<<6)+S|0;z[b+60>>2]=J;z[b+44>>2]=q;z[b+56>>2]=k;f=f+4|0;y=-1;y=F?v[f>>2]:y;g=g+1|0;c=c+s|0;O=(j+1280|0)+(I<<2)|0;t[b+48|0]=Q;v[b+52>>2]=y;I=I+1|0;z[b+28>>2]=i?z[c+28>>2]:C(34028234663852886e22);z[b+32>>2]=z[(i?c+16|0:j- -64|0)>>2];z[b+36>>2]=z[(i?c+20|0:j)>>2];z[b+40>>2]=z[(i?c+24|0:j+1276|0)>>2];z[b>>2]=z[d+16>>2];z[b+4>>2]=z[d+20>>2];z[b+8>>2]=z[d+24>>2];z[b+16>>2]=z[c>>2];z[b+20>>2]=z[c+4>>2];z[b+24>>2]=z[c+8>>2];z[b+12>>2]=z[c+12>>2];u[O>>1]=r;u[O+2>>1]=l;if((g|0)!=(p|0)){continue}break}}if((m|0)!=(G|0)){continue}break}}h=h+1|0;if((V|0)!=(h|0)){continue}break}}v[j+1272>>2]=I;v[j+1264>>2]=S;v[j+1260>>2]=0;v[j+232>>2]=0;v[j+1268>>2]=j+1280;Q=0;f=xa-128|0;xa=f;m=j- -64|0;p=v[m+1200>>2];z[m+172>>2]=z[p>>2];z[m+176>>2]=z[p+4>>2];z[m+180>>2]=z[p+8>>2];v[m+184>>2]=0;u[m+192>>1]=0;u[m+196>>1]=0;z[m+188>>2]=z[p+12>>2];u[m+198>>1]=0;e=1;d=1;G=v[m+1208>>2];c:{if(G>>>0<2){break c}h=v[m+1204>>2];g=1;while(1){i=p+(g<<6)|0;b=-1;c=d&65535;d:{if(!c){break d}b=h+(g<<2)|0;s=b;F=x[b>>1];b=c;while(1){b=b-1|0;g=m+B(b,28)|0;l=h+(x[g+192>>1]<<2)|0;if(!((F|0)!=x[l>>1]|x[l+2>>1]!=x[s+2>>1])&C(C(z[g+180>>2]*z[i+8>>2])+C(C(z[g+172>>2]*z[i>>2])+C(z[g+176>>2]*z[i+4>>2])))>=C(.9950000047683716)){break d}if(b){continue}break}b=-1}g=c-1|0;if((g|0)!=(b|0)){g=m+B(g,28)|0;u[g+194>>1]=e-x[g+192>>1];if((d&65535)==32){d=32;break c}F=B(c,28);c=F+m|0;v[c+184>>2]=0;u[c+192>>1]=e;s=c+172|0;e:{if((b|0)==-1){u[c+196>>1]=d;z[c+172>>2]=z[i>>2];k=z[i+8>>2];q=z[i+4>>2];z[c+188>>2]=z[i+12>>2];break e}g=m+172|0;b=g+B(b,28)|0;v[b+12>>2]=s;s=x[b+24>>1];z[c+172>>2]=z[b>>2];k=z[b+8>>2];q=z[b+4>>2];b=g+F|0;g=g+B(s,28)|0;K=z[g+16>>2];J=z[i+12>>2];K=J>K?K:J;z[b+16>>2]=K;z[g+16>>2]=K;u[b+24>>1]=s}z[c+180>>2]=k;z[c+176>>2]=q;u[c+198>>1]=d;d=d+1|0}e=e+1|0;g=e&65535;if(G>>>0>g>>>0){continue}break}}F=d&65535;c=m+B(F,28)|0;u[c+166>>1]=e-x[c+164>>1];f:{if(F){i=0;b=0;if(F-1>>>0>=3){p=F&65532;c=m+172|0;g=m+1068|0;e=0;while(1){v[g+(b<<2)>>2]=c+B(b,28);h=b|1;v[g+(h<<2)>>2]=c+B(h,28);h=b|2;v[g+(h<<2)>>2]=c+B(h,28);h=b|3;v[g+(h<<2)>>2]=c+B(h,28);b=b+4|0;e=e+4|0;if((p|0)!=(e|0)){continue}break}}c=F&3;if(c){while(1){v[(m+(b<<2)|0)+1068>>2]=(m+B(b,28)|0)+172;b=b+1|0;i=i+1|0;if((c|0)!=(i|0)){continue}break}}Gz(m+1068|0,F);if(!(d&65535)){g=0;break f}V=m+20|0;_=m+4|0;i=f+116|0;p=f+112|0;s=v[m+1200>>2];g=0;while(1){d=g;c=v[(m+(Q<<2)|0)+1068>>2];g:{if(x[c+24>>1]!=x[c+26>>1]){break g}g=6;if((d|0)==6){break f}g=d+1|0;O=B(d,28);G=O+m|0;r=0;b=c;while(1){r=x[b+22>>1]+r|0;b=v[b+12>>2];if(b){continue}break}h=0;if(r>>>0>=7){l=v[m+1200>>2];b=0;k=C(0);d=c;while(1){r=x[d+22>>1];if(r){y=x[d+20>>1];h=0;while(1){A=h+y|0;e=l+(A<<6)|0;q=z[e+24>>2];o=C(q*q);q=z[e+16>>2];n=C(q*q);q=z[e+20>>2];q=C(o+C(n+C(q*q)));e=q>k;k=e?q:k;b=e?A:b;h=h+1|0;if((r|0)!=(h|0)){continue}break}}d=v[d+12>>2];if(d){continue}break}v[G+4>>2]=b;r=s+(b<<6)|0;q=z[r+24>>2];K=z[r+20>>2];J=z[r+16>>2];k=C(0);e=c;while(1){l=x[e+22>>1];if(l){y=x[e+20>>1];h=0;while(1){A=h+y|0;d=s+(A<<6)|0;o=C(q-z[d+24>>2]);n=C(o*o);o=C(J-z[d+16>>2]);D=C(o*o);o=C(K-z[d+20>>2]);o=C(n+C(D+C(o*o)));d=o>k;k=d?o:k;b=d?A:b;h=h+1|0;if((l|0)!=(h|0)){continue}break}}e=v[e+12>>2];if(e){continue}break}y=s+(b<<6)|0;ba=z[y+24>>2];ca=z[y+16>>2];da=z[y+20>>2];v[G+8>>2]=b;k=C(J-ca);P=z[c+4>>2];D=z[c>>2];M=C(K-da);o=C(C(k*P)-C(D*M));W=C(q-ba);X=z[c+8>>2];D=C(C(W*D)-C(X*k));P=C(C(M*X)-C(P*W));k=C(0);e=c;while(1){l=x[e+22>>1];if(l){A=x[e+20>>1];h=0;while(1){N=h+A|0;d=s+(N<<6)|0;M=C(C(C(z[d+24>>2]-q)*o)+C(C(C(z[d+16>>2]-J)*P)+C(D*C(z[d+20>>2]-K))));d=M>k;k=d?M:k;b=d?N:b;h=h+1|0;if((l|0)!=(h|0)){continue}break}}e=v[e+12>>2];if(e){continue}break}v[G+12>>2]=b;o=C(-o);D=C(-D);P=C(-P);k=C(0);d=c;e=b;while(1){A=x[d+22>>1];if(A){N=x[d+20>>1];h=0;while(1){H=h+N|0;l=s+(H<<6)|0;M=C(C(C(z[l+24>>2]-q)*o)+C(C(C(z[l+16>>2]-J)*P)+C(C(z[l+20>>2]-K)*D)));l=M>k;k=l?M:k;e=l?H:e;h=h+1|0;if((A|0)!=(h|0)){continue}break}}d=v[d+12>>2];if(d){continue}break}v[G+16>>2]=e;l=O+_|0;d=v[l+12>>2];v[f+72>>2]=v[l+8>>2];v[f+76>>2]=d;d=v[l+4>>2];v[f+64>>2]=v[l>>2];v[f+68>>2]=d;z[f+96>>2]=z[r+12>>2]+C(-.0010000000474974513);z[f+100>>2]=z[y+12>>2]+C(-.0010000000474974513);b=s+(b<<6)|0;z[f+104>>2]=z[b+12>>2]+C(-.0010000000474974513);e=s+(e<<6)|0;z[f+108>>2]=z[e+12>>2]+C(-.0010000000474974513);d=c;while(1){y=x[d+22>>1];if(y){P=z[e+24>>2];M=z[e+20>>2];W=z[e+16>>2];X=z[b+24>>2];ea=z[b+20>>2];fa=z[b+16>>2];A=x[d+20>>1];h=0;while(1){N=h+A|0;r=s+(N<<6)|0;k=z[r+24>>2];o=C(q-k);n=C(o*o);o=z[r+16>>2];D=C(J-o);R=C(D*D);D=z[r+20>>2];L=C(K-D);L=C(n+C(R+C(L*L)));L=Ln;Y=H;L=H?n:L;n=C(X-k);R=C(n*n);n=C(fa-o);$=C(n*n);n=C(ea-D);n=C(R+C($+C(n*n)));H=L>n;k=C(P-k);R=C(k*k);k=C(W-o);o=C(k*k);k=C(M-D);H=(C(R+C(o+C(k*k)))<(H?n:L)?3:H?2:Y)<<2;Y=H|f+96;k=z[r+12>>2];if(z[Y>>2]>k){v[(H|f- -64)>>2]=N;z[Y>>2]=k}h=h+1|0;if((y|0)!=(h|0)){continue}break}}d=v[d+12>>2];if(d){continue}break}v[f+56>>2]=0;v[f+60>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;d=v[f+76>>2];v[l+8>>2]=v[f+72>>2];v[l+12>>2]=d;d=v[f+68>>2];v[l>>2]=v[f+64>>2];v[l+4>>2]=d;t[f+v[f+64>>2]|0]=1;t[f+v[f+68>>2]|0]=1;t[f+v[f+72>>2]|0]=1;t[f+v[f+76>>2]|0]=1;v[f+80>>2]=0;v[f+84>>2]=0;v[f+112>>2]=2139095039;v[f+116>>2]=2139095039;while(1){l=x[c+22>>1];if(l){r=x[c+20>>1];b=0;while(1){h=b+r|0;h:{if(w[h+f|0]){break h}k=z[(s+(h<<6)|0)+12>>2];q=z[f+112>>2];i:{if(k>2]=q;v[f+84>>2]=v[f+80>>2];e=4;d=p;break i}e=5;d=i;if(!(k>2])){break h}}z[d>>2]=k;v[(f- -64|0)+(e<<2)>>2]=h}b=b+1|0;if((l|0)!=(b|0)){continue}break}}c=v[c+12>>2];if(c){continue}break}d=v[f+84>>2];c=O+V|0;v[c>>2]=v[f+80>>2];v[c+4>>2]=d;v[G>>2]=6;break g}while(1){d=x[c+22>>1];j:{if(!d){break j}O=d&3;l=x[c+20>>1];e=0;k:{if(d-1>>>0<3){b=0;break k}A=d&65532;b=0;d=0;while(1){y=G+(h<<2)|0;v[y+8>>2]=l+(b|1);v[y+4>>2]=b+l;v[y+12>>2]=l+(b|2);v[y+16>>2]=l+(b|3);b=b+4|0;h=h+4|0;d=d+4|0;if((A|0)!=(d|0)){continue}break}}if(!O){break j}while(1){v[(G+(h<<2)|0)+4>>2]=b+l;b=b+1|0;h=h+1|0;e=e+1|0;if((O|0)!=(e|0)){continue}break}}c=v[c+12>>2];if(c){continue}break}v[G>>2]=r}Q=Q+1|0;if((F|0)!=(Q|0)){continue}break}break f}Gz(m+1068|0,F);g=0}v[m+168>>2]=g;xa=f+128|0;v[j+56>>2]=0;v[j+60>>2]=0;v[j+48>>2]=0;v[j+52>>2]=0;v[j+40>>2]=0;v[j+44>>2]=0;v[j+32>>2]=0;v[j+36>>2]=0;v[j+24>>2]=0;v[j+28>>2]=0;v[j+16>>2]=0;v[j+20>>2]=0;v[j+8>>2]=0;v[j+12>>2]=0;v[j>>2]=0;v[j+4>>2]=0;h=v[j+232>>2];l:{m:{if(h){g=0;while(1){f=(j- -64|0)+B(g,28)|0;b=v[f>>2];if(b){d=0;c=0;if(b-1>>>0>=3){m=b&-4;e=0;while(1){i=f+4|0;p=c<<2;t[v[i+p>>2]+j|0]=1;t[v[i+(p|4)>>2]+j|0]=1;t[v[i+(p|8)>>2]+j|0]=1;t[v[i+(p|12)>>2]+j|0]=1;c=c+4|0;e=e+4|0;if((m|0)!=(e|0)){continue}break}}e=b&3;if(e){while(1){t[v[(f+(c<<2)|0)+4>>2]+j|0]=1;c=c+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}Z=b+Z|0}g=g+1|0;if((h|0)!=(g|0)){continue}break}e=E+11852|0;c=(Z<<1)+15&-16;if(c>>>0<16385){break m}g=Jy(v[e>>2],c);break l}c=0;e=E+11852|0}d=v[a+32>>2];n:{b=v[E+11856>>2];if(b){g=v[E+11860>>2];i=g+c|0;if(i>>>0<16385){break n}}g=Ky(v[E+11852>>2],d+11836|0);v[E+11860>>2]=c;v[E+11856>>2]=g;break l}v[E+11860>>2]=i;g=b+g|0}v[U+32>>2]=g;d=0;if(I){c=0;while(1){if(w[c+j|0]){if((c|0)!=(d|0)){b=(d<<6)+S|0;i=(c<<6)+S|0;z[b>>2]=z[i>>2];z[b+4>>2]=z[i+4>>2];z[b+8>>2]=z[i+8>>2];z[b+12>>2]=z[i+12>>2];z[b+16>>2]=z[i+16>>2];z[b+20>>2]=z[i+20>>2];z[b+24>>2]=z[i+24>>2];z[b+28>>2]=z[i+28>>2];z[b+32>>2]=z[i+32>>2];z[b+36>>2]=z[i+36>>2];z[b+40>>2]=z[i+40>>2];p=v[i+48>>2];v[b+44>>2]=v[i+44>>2];v[b+48>>2]=p;p=v[i+56>>2];v[b+52>>2]=v[i+52>>2];v[b+56>>2]=p;v[b+60>>2]=v[i+60>>2];b=j+1280|0;v[b+(d<<2)>>2]=v[b+(c<<2)>>2]}u[(d<<1)+g>>1]=c;d=d+1|0}c=c+1|0;if((I|0)!=(c|0)){continue}break}}c=v[a+108>>2];b=v[v[U+8>>2]+52>>2];c=v[c+32>>2]+(v[c+((b&7)<<2)>>2]+(b>>>3|0)<<4)|0;Py(S,d,0,c+12|0,c,c+4|0,j+1276|0,c+8|0,d<<2,v[a+104>>2],0,0,j+1280|0,c+13|0,0,v[a+32>>2]+11836|0,e,0,0,0,0,0);xa=j+1536|0;T=T+1|0;if((aa|0)!=(T|0)){continue}break}}a=v[v[a+28>>2]+336>>2];v[E>>2]=v[a>>2];v[a>>2]=E}function G3(a,b,c,d,e,f){var g=0,h=0,i=0,j=C(0),k=0,l=0,m=C(0),n=C(0),o=0,p=0,q=C(0),r=C(0),s=0,u=0,w=C(0),x=0,A=C(0),B=C(0),D=C(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=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=0,Z=0,_=0,$=C(0),aa=C(0),ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;h=xa-8256|0;xa=h;i=v[e>>2];L=f+1|0;v[e>>2]=f?i>>>0>L>>>0?i:L:1;v[h+8248>>2]=3;v[h+8252>>2]=4;v[h+8240>>2]=1;v[h+8244>>2]=2;a:{if(c>>>0<=3){if((c|0)==3){break a}f=c;i=f>>>0>2?f:2;p=i-f|0;u=p+1&7;if(u){while(1){v[(h+8240|0)+(f<<2)>>2]=c;f=f+1|0;g=g+1|0;if((u|0)!=(g|0)){continue}break}}if(p>>>0<7){break a}while(1){p=h+8240|0;g=p+(f<<2)|0;v[g>>2]=c;v[g+24>>2]=c;v[g+20>>2]=c;v[g+16>>2]=c;v[g+12>>2]=c;v[g+8>>2]=c;v[g+4>>2]=c;g=f+7|0;v[p+(g<<2)>>2]=c;f=f+8|0;if((g|0)!=(i|0)){continue}break}break a}t[h+8224|0]=1;v[h+8232>>2]=1;v[h+8236>>2]=1024;v[h+32>>2]=0;v[h+36>>2]=c;v[h+8228>>2]=h+32;f=1;while(1){x=v[h+8228>>2];i=-1;if(f){k=v[a+8>>2];p=0;j=C(-34028234663852886e22);while(1){g=x+(p<<3)|0;E=v[g+4>>2];if((E|0)!=1){F=v[g>>2];g=k+(v[(F<<2)+b>>2]<<5)|0;A=z[g+16>>2];m=z[g+8>>2];q=z[g+4>>2];r=z[g>>2];B=z[g+24>>2];D=z[g+20>>2];g=1;if(E){while(1){u=k+(v[(g+F<<2)+b>>2]<<5)|0;n=z[u+16>>2];A=n>2];m=m>2];q=q>2];r=n>r?r:n;n=z[u+24>>2];B=n>2];D=n>>0));g=m>j;j=g?m:j;i=g?p:i}p=p+1|0;if((p|0)!=(f|0)){continue}break}}Y=i<<3;g=x+Y|0;O=v[g>>2];F=(O<<2)+b|0;M=0;p=xa+-64|0;xa=p;G=v[g+4>>2];f=0;b:{if(G>>>0<2){break b}f=1;if((G|0)==2){break b}v[p+12>>2]=v[a+32>>2];v[p+16>>2]=v[a+36>>2];v[p+20>>2]=v[a+40>>2];v[p>>2]=v[a+20>>2];v[p+4>>2]=v[a+24>>2];v[p+8>>2]=v[a+28>>2];u=G>>>0>3?2:1;E=G-u|0;Z=E-u|0;J=G&-4;H=G&3;_=G>>>1|0;x=G-2|0;P=(G-(u<<1)|0)+1|0;Q=G-1|0;ba=Q<<2;while(1){N=M<<2;l=v[N+p>>2];c:{d:{e:{if((G|0)!=v[a+48>>2]){g=v[(p+12|0)+N>>2];f=v[a+44>>2];i=0;k=0;o=0;I=Q>>>0<3;if(!I){break e}break d}k=v[a+4>>2];f=0;g=0;i=0;if(Q>>>0>=3){while(1){o=g<<2;v[o+k>>2]=v[l+o>>2];s=o|4;v[s+k>>2]=v[l+s>>2];s=o|8;v[s+k>>2]=v[l+s>>2];o=o|12;v[o+k>>2]=v[l+o>>2];g=g+4|0;i=i+4|0;if((J|0)!=(i|0)){continue}break}}if(!H){break c}while(1){i=g<<2;v[i+k>>2]=v[i+l>>2];g=g+1|0;f=f+1|0;if((H|0)!=(f|0)){continue}break}break c}while(1){s=k<<2;v[s+f>>2]=v[g+(v[F+s>>2]<<2)>>2];K=s|4;v[K+f>>2]=v[g+(v[F+K>>2]<<2)>>2];K=s|8;v[K+f>>2]=v[g+(v[F+K>>2]<<2)>>2];s=s|12;v[s+f>>2]=v[g+(v[F+s>>2]<<2)>>2];k=k+4|0;o=o+4|0;if((J|0)!=(o|0)){continue}break}}if(H){while(1){o=k<<2;v[o+f>>2]=v[g+(v[o+F>>2]<<2)>>2];k=k+1|0;i=i+1|0;if((H|0)!=(i|0)){continue}break}}Az(f,G);k=v[a+4>>2];f=v[a+44>>2];i=0;g=0;o=0;if(!I){while(1){s=g<<2;v[s+k>>2]=v[l+(v[f+s>>2]<<2)>>2];I=s|4;v[I+k>>2]=v[l+(v[f+I>>2]<<2)>>2];I=s|8;v[I+k>>2]=v[l+(v[f+I>>2]<<2)>>2];s=s|12;v[s+k>>2]=v[l+(v[f+s>>2]<<2)>>2];g=g+4|0;o=o+4|0;if((J|0)!=(o|0)){continue}break}}if(!H){break c}while(1){o=g<<2;v[o+k>>2]=v[l+(v[f+o>>2]<<2)>>2];g=g+1|0;i=i+1|0;if((H|0)!=(i|0)){continue}break}}i=v[a+8>>2];f=i+(v[k>>2]<<5)|0;m=z[f+16>>2];q=z[f+8>>2];r=z[f+4>>2];A=z[f>>2];B=z[f+24>>2];D=z[f+20>>2];if(G>>>0>=4){f=i+(v[k+4>>2]<<5)|0;j=z[f+16>>2];m=j>2];q=j>q?q:j;j=z[f+4>>2];r=j>r?r:j;j=z[f>>2];A=j>A?A:j;j=z[f+24>>2];B=j>2];D=j>2];g=0;f=u;while(1){l=i+(v[(f<<2)+k>>2]<<5)|0;j=z[l+24>>2];B=j>2];q=j>q?q:j;j=C(B-q);n=z[l+20>>2];D=n>2];r=n>r?r:n;n=C(D-r);w=z[l+16>>2];m=m>w?m:w;w=z[l>>2];A=A>2]=C(j*n)+C(C(w*j)+C(w*n));f=f+1|0;g=g+1|0;if((P|0)!=(g|0)){continue}break}}f=i+(v[k+ba>>2]<<5)|0;m=z[f+16>>2];q=z[f+8>>2];r=z[f+4>>2];A=z[f>>2];B=z[f+24>>2];D=z[f+20>>2];g=x;if((E|0)<(g|0)){while(1){f=i+(v[(g<<2)+k>>2]<<5)|0;j=z[f+16>>2];m=j>2];q=j>q?q:j;j=z[f+4>>2];r=j>r?r:j;j=z[f>>2];A=j>A?A:j;j=z[f+24>>2];B=j>2];D=j>2];g=0;f=E;while(1){l=i+(v[(f<<2)+k>>2]<<5)|0;j=z[l+24>>2];B=j>2];q=j>q?q:j;j=C(B-q);n=z[l+20>>2];D=n>2];r=n>r?r:n;n=C(D-r);w=z[l+16>>2];m=m>w?m:w;w=z[l>>2];A=A>2]=C(j*n)+C(C(w*j)+C(w*n));f=f-1|0;g=g+1|0;if((P|0)!=(g|0)){continue}break}}i=0;f:{if((Z|0)<0){m=C(34028234663852886e22);break f}o=v[a+16>>2];s=v[a+12>>2];m=C(34028234663852886e22);k=0;while(1){f=k+u|0;g=Z-k|0;q=C(C(C(f|0)*z[s+(k<<2)>>2])+C(z[o+(g<<2)>>2]*C(g+u|0)));g:{if(!(q=q)){break g}I=f-_|0;g=I>>31;K=i-_|0;l=K>>31;if((g^I)-g>>>0>=(l^K)-l>>>0){break g}}i=f;m=q}k=k+1|0;if((P|0)!=(k|0)){continue}break}}v[(p+24|0)+N>>2]=i;z[(p+36|0)+N>>2]=m;M=M+1|0;if((M|0)!=3){continue}break}m=z[p+44>>2];q=z[p+36>>2];r=z[p+40>>2];h:{if(q<=r){u=0;if(m>=q){break h}}u=2;if(!(m>=r)){break h}u=1}f=u<<2;E=v[f+p>>2];i:{if((G|0)!=v[a+48>>2]){x=v[f+(p+12|0)>>2];k=G>>>0>1?G:1;H=k&3;g=v[a+44>>2];f=0;i=0;s=k-1|0;if(s>>>0>=3){M=k&-4;o=0;while(1){l=i<<2;v[l+g>>2]=v[x+(v[l+F>>2]<<2)>>2];J=l|4;v[J+g>>2]=v[x+(v[F+J>>2]<<2)>>2];J=l|8;v[J+g>>2]=v[x+(v[F+J>>2]<<2)>>2];l=l|12;v[l+g>>2]=v[x+(v[l+F>>2]<<2)>>2];i=i+4|0;o=o+4|0;if((M|0)!=(o|0)){continue}break}}if(H){while(1){l=i<<2;v[l+g>>2]=v[x+(v[l+F>>2]<<2)>>2];i=i+1|0;f=f+1|0;if((H|0)!=(f|0)){continue}break}}Az(g,G);x=v[a+44>>2];g=0;i=0;if(s>>>0>=3){o=k&-4;f=0;while(1){l=i<<2;v[l+F>>2]=v[E+(v[l+x>>2]<<2)>>2];H=l|4;v[H+F>>2]=v[E+(v[x+H>>2]<<2)>>2];H=l|8;v[H+F>>2]=v[E+(v[x+H>>2]<<2)>>2];l=l|12;v[l+F>>2]=v[E+(v[l+x>>2]<<2)>>2];i=i+4|0;f=f+4|0;if((o|0)!=(f|0)){continue}break}}f=k&3;if(!f){break i}while(1){k=i<<2;v[k+F>>2]=v[E+(v[k+x>>2]<<2)>>2];i=i+1|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}break i}f=G>>>0>1?G:1;x=f&3;k=0;i=0;if(f-1>>>0>=3){l=f&-4;g=0;while(1){f=i<<2;v[f+F>>2]=v[f+E>>2];o=f|4;v[o+F>>2]=v[o+E>>2];o=f|8;v[o+F>>2]=v[o+E>>2];f=f|12;v[f+F>>2]=v[f+E>>2];i=i+4|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}if(!x){break i}while(1){f=i<<2;v[f+F>>2]=v[f+E>>2];i=i+1|0;k=k+1|0;if((x|0)!=(k|0)){continue}break}}f=v[(p+24|0)+(u<<2)>>2];f=(G|0)==3?f?f:1:f}xa=p- -64|0;g=f;v[h+20>>2]=f;v[h+16>>2]=O;f=v[h+8232>>2];j:{if(f>>>0>=(v[h+8236>>2]&2147483647)>>>0){H3(h+32|0,h+16|0);f=v[h+8232>>2];break j}i=v[h+20>>2];f=v[h+8228>>2]+(f<<3)|0;v[f>>2]=v[h+16>>2];v[f+4>>2]=i;f=v[h+8232>>2]+1|0;v[h+8232>>2]=f}v[h+20>>2]=G-g;i=g+O|0;v[h+16>>2]=i;k:{if((v[h+8236>>2]&2147483647)>>>0<=f>>>0){H3(h+32|0,h+16|0);f=v[h+8232>>2];break k}g=v[h+20>>2];f=v[h+8228>>2]+(f<<3)|0;v[f>>2]=v[h+16>>2];v[f+4>>2]=g;f=v[h+8232>>2]+1|0}g=v[h+8228>>2];f=f-1|0;v[h+8232>>2]=f;p=g+Y|0;f=g+(f<<3)|0;g=v[f+4>>2];v[p>>2]=v[f>>2];v[p+4>>2]=g;v[(h+8240|0)+(R<<2)>>2]=i;R=R+1|0;if((R|0)!=3){f=v[h+8232>>2];continue}break}f=v[h+8236>>2];if((f|0)<0|!(f&2147483647)){break a}f=v[h+8228>>2];if((f|0)==(h+32|0)|!f){break a}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,f)}Az(h+8240|0,3);v[h+8252>>2]=c;p=0;v[h+16>>2]=0;f=v[h+8244>>2];v[h+20>>2]=v[h+8240>>2];v[h+24>>2]=f;f=v[h+8248>>2];v[h+28>>2]=f;u=v[h+8240>>2];v[h>>2]=u;g=v[h+8244>>2];E=g-u|0;v[h+4>>2]=E;g=f-g|0;v[h+8>>2]=g;f=c-f|0;v[h+12>>2]=f;i=f>>>0<17&g>>>0<17&(E>>>0<17&u>>>0<17)&y[(v[a+52>>2]<<2)+103968>>2]>=c>>>0;while(1){v[h+56>>2]=-1;v[h+60>>2]=0;v[h+48>>2]=-25165825;v[h+52>>2]=-25165825;v[h+40>>2]=2122317823;v[h+44>>2]=-25165825;v[h+32>>2]=2122317823;v[h+36>>2]=2122317823;l:{m:{n:{c=p<<2;f=v[c+h>>2];if(f){g=1;k=v[a+8>>2];x=v[c+(h+16|0)>>2];c=k+(v[(x<<2)+b>>2]<<5)|0;B=z[c+24>>2];m=z[c+8>>2];j=C(B-m);D=z[c+20>>2];q=z[c+4>>2];n=C(D-q);A=z[c+16>>2];r=z[c>>2];w=C(A-r);j=C(C(j*n)+C(C(w*j)+C(w*n)));n=j;if((f|0)!=1){break n}break m}v[h+52>>2]=-25165825;v[h+44>>2]=-25165825;v[h+48>>2]=-25165825;v[h+36>>2]=2122317823;v[h+40>>2]=2122317823;m=C(85070586659632215e21);f=-1;q=C(85070586659632215e21);r=C(85070586659632215e21);c=-1;break l}while(1){c=k+(v[(g+x<<2)+b>>2]<<5)|0;S=z[c+24>>2];T=z[c+8>>2];w=C(S-T);U=z[c+20>>2];V=z[c+4>>2];$=C(U-V);W=z[c+16>>2];X=z[c>>2];aa=C(W-X);w=C(C(w*$)+C(C(aa*w)+C(aa*$)));n=n>w?n:w;j=jW?A:W;m=mS?B:S;D=D>U?D:U;g=g+1|0;if((g|0)!=(f|0)){continue}break}}z[h+52>>2]=B;z[h+48>>2]=D;z[h+44>>2]=A;z[h+40>>2]=m;z[h+36>>2]=q;z[h+32>>2]=r;c=C(n/j)>>0<3|(y[(v[a+52>>2]<<2)+104032>>2]>=f>>>0|i))){f=0;i=0;c=-1;break l}c=x+(b-v[a>>2]>>2)|0}v[h+60>>2]=f;v[h+56>>2]=c;c=v[d+4>>2];o:{if(c>>>0>=(v[d+8>>2]&2147483647)>>>0){f=0;c=v[d+8>>2];x=c&2147483647?c<<1:1;p:{if(!x){break p}g=x<<5;if(!g){break p}c=v[37696];f=c+12|0;f=(da=f,ea=g,fa=Ba[v[v[c>>2]+20>>2]](c)|0?48959:63804,ga=16608,ha=553,ca=v[v[f>>2]+8>>2],Ba[ca](da|0,ea|0,fa|0,ga|0,ha|0)|0)}c=v[d+4>>2];if((c|0)>0){k=(c<<5)+f|0;g=v[d>>2];c=f;while(1){z[c>>2]=z[g>>2];z[c+4>>2]=z[g+4>>2];z[c+8>>2]=z[g+8>>2];z[c+12>>2]=z[g+12>>2];z[c+16>>2]=z[g+16>>2];z[c+20>>2]=z[g+20>>2];F=v[g+28>>2];v[c+24>>2]=v[g+24>>2];v[c+28>>2]=F;g=g+32|0;c=c+32|0;if(k>>>0>c>>>0){continue}break}c=v[d+4>>2]}c=(c<<5)+f|0;z[c>>2]=z[h+32>>2];z[c+4>>2]=z[h+36>>2];z[c+8>>2]=z[h+40>>2];z[c+12>>2]=z[h+44>>2];z[c+16>>2]=z[h+48>>2];z[c+20>>2]=z[h+52>>2];g=v[h+60>>2];v[c+24>>2]=v[h+56>>2];v[c+28>>2]=g;q:{if(v[d+8>>2]<0){break q}c=v[d>>2];if(!c){break q}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}v[d+8>>2]=x;v[d>>2]=f;break o}c=v[d>>2]+(c<<5)|0;z[c+8>>2]=m;z[c+4>>2]=q;z[c>>2]=r;z[c+12>>2]=z[h+44>>2];z[c+16>>2]=z[h+48>>2];z[c+20>>2]=z[h+52>>2];f=v[h+60>>2];v[c+24>>2]=v[h+56>>2];v[c+28>>2]=f}v[d+4>>2]=v[d+4>>2]+1;p=p+1|0;if((p|0)!=4){continue}break}r:{if(i&1){break r}f=v[d>>2];c=v[d+4>>2];g=f+(c-4<<5)|0;if(!v[g+28>>2]){v[g+24>>2]=c;G3(a,b,u,d,e,L);f=v[d>>2]}g=c-3|0;if(!v[((g<<5)+f|0)+28>>2]){v[((g<<5)+f|0)+24>>2]=v[d+4>>2];G3(a,(v[h+20>>2]<<2)+b|0,E,d,e,L);f=v[d>>2]}g=(c-2<<5)+f|0;if(!v[g+28>>2]){v[g+24>>2]=v[d+4>>2];G3(a,(v[h+24>>2]<<2)+b|0,v[h+8>>2],d,e,L);f=v[d>>2]}c=c-1|0;if(v[((c<<5)+f|0)+28>>2]){break r}v[((c<<5)+f|0)+24>>2]=v[d+4>>2];G3(a,(v[h+28>>2]<<2)+b|0,v[h+12>>2],d,e,L)}xa=h+8256|0}function r1(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=C(0),H=C(0),I=0,J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0);I=xa-16|0;M=z[b>>2];D=z[a>>2];u=z[c+4>>2];l=z[c>>2];j=z[h>>2];k=z[c+8>>2];s=C(-k);a:{if(j>s){t[I+12|0]=1;if(!(!((k>C(0)?k:s)<=C(34028234663852886e22))|(!(D>=(l>C(0)?l:C(-l)))|!(M>=(u>C(0)?u:C(-u)))))){t[I+8|0]=1;i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=u;z[i>>2]=l;q=v[c+4>>2];i=B(v[g>>2],48)+f|0;v[i+16>>2]=v[c>>2];v[i+20>>2]=q;q=v[c+12>>2];v[i+24>>2]=v[c+8>>2];v[i+28>>2]=q;k=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=s;z[i+40>>2]=k;j=z[h>>2];break a}t[I+8|0]=0;break a}t[I+8|0]=0;t[I+12|0]=0}k=z[c+20>>2];s=z[c+16>>2];n=z[c+24>>2];o=C(-n);b:{if(oC(0)?n:o)<=C(34028234663852886e22))|(!(D>=(s>C(0)?s:C(-s)))|!(M>=(k>C(0)?k:C(-k)))))){t[I+9|0]=1;i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=k;z[i>>2]=s;q=c+16|0;p=v[q+4>>2];i=B(v[g>>2],48)+f|0;v[i+16>>2]=v[q>>2];v[i+20>>2]=p;p=v[q+12>>2];v[i+24>>2]=v[q+8>>2];v[i+28>>2]=p;j=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=o;z[i+40>>2]=j;j=z[h>>2];break b}t[I+9|0]=0;break b}t[I+9|0]=0;t[I+13|0]=0}n=z[c+36>>2];o=z[c+32>>2];E=z[c+40>>2];m=C(-E);c:{if(mC(0)?E:m)<=C(34028234663852886e22))|(!(D>=(o>C(0)?o:C(-o)))|!(M>=(n>C(0)?n:C(-n)))))){t[I+10|0]=1;i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=n;z[i>>2]=o;q=c+32|0;p=v[q+4>>2];i=B(v[g>>2],48)+f|0;v[i+16>>2]=v[q>>2];v[i+20>>2]=p;p=v[q+12>>2];v[i+24>>2]=v[q+8>>2];v[i+28>>2]=p;j=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=m;z[i+40>>2]=j;j=z[h>>2];break c}t[I+10|0]=0;break c}t[I+10|0]=0;t[I+14|0]=0}E=z[c+52>>2];m=z[c+48>>2];r=j;j=z[c+56>>2];H=C(-j);d:{if(r>H){t[I+15|0]=1;if(!(!((j>C(0)?j:H)<=C(34028234663852886e22))|(!(D>=(m>C(0)?m:C(-m)))|!(M>=(E>C(0)?E:C(-E)))))){t[I+11|0]=1;i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=E;z[i>>2]=m;q=c+48|0;p=v[q+4>>2];i=B(v[g>>2],48)+f|0;v[i+16>>2]=v[q>>2];v[i+20>>2]=p;p=v[q+12>>2];v[i+24>>2]=v[q+8>>2];v[i+28>>2]=p;j=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=H;z[i+40>>2]=j;break d}t[I+11|0]=0;break d}t[I+11|0]=0;t[I+15|0]=0}q=v[g>>2];if((q|0)!=4){j=C(G(u,C(-34028234663852886e22)));j=j>k?j:k;j=j>n?j:n;H=j>E?j:E;j=C(F(u,C(34028234663852886e22)));k=js?k:s;k=k>o?k:o;L=k>m?k:m;E=z[d+8>>2];j=z[a>>2];k=C(F(l,C(34028234663852886e22)));k=kL){break e}k=z[b>>2];if(kH){break e}r=z[c+48>>2];o=z[c+52>>2];n=z[c>>2];s=z[c+4>>2];f:{if(r==j&o==k|n==j&s==k){break f}p=kC(0);i=0;if(!((J?l:y)>=(J?y:l))){break g}i=1}y=z[c+16>>2];m=z[c+20>>2];if(y==j&m==k){break f}J=x;x=kC(0);if(!((J?A:K)>=(J?K:A))){break h}if(i){break e}i=i+1|0}A=z[c+32>>2];l=z[c+36>>2];if(A==j&l==k){break f}J=x;x=kC(0);if(!((J?m:y)>=(J?y:m))){break i}if((i|0)==1){break e}i=i+1|0}j:{if((p|0)==(x|0)){break j}o=C(o-l);m=C(C(C(A+C(1.1920928955078125e-7))*o)+C(C(k-l)*C(r-A)));l=C(j*o);p=o>C(0);if(!((p?m:l)>=(p?l:m))){break j}if((i|0)!=1){break f}break e}if(!i){break e}}s=C(C(C(E*z[c+8>>2])+C(C(z[d>>2]*C(n-j))+C(z[d+4>>2]*C(s-k))))/E);n=C(-s);if(!(n>2])){break e}i=B(q,48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=k;z[i>>2]=j;i=B(v[g>>2],48)+f|0;z[i+16>>2]=j;v[i+28>>2]=0;z[i+24>>2]=s;z[i+20>>2]=k;k=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=n;z[i+40>>2]=k;j=z[a>>2]}k=C(-M);s=C(-D);k:{if(jL|(kH)){break k}y=z[c+48>>2];m=z[c+52>>2];o=z[c>>2];n=z[c+4>>2];l:{if(y==j&m==k|o==j&n==k){break l}q=kC(0);i=0;if(!((x?r:A)>=(x?A:r))){break m}i=1}A=z[c+16>>2];l=z[c+20>>2];if(A==j&l==k){break l}x=p;p=kC(0);if(!((x?K:N)>=(x?N:K))){break n}if(i){break k}i=i+1|0}K=z[c+32>>2];r=z[c+36>>2];if(K==j&r==k){break l}x=p;p=kC(0);if(!((x?l:A)>=(x?A:l))){break o}if((i|0)==1){break k}i=i+1|0}p:{if((p|0)==(q|0)){break p}m=C(m-r);l=C(C(C(K+C(1.1920928955078125e-7))*m)+C(C(k-r)*C(y-K)));r=C(j*m);q=m>C(0);if(!((q?l:r)>=(q?r:l))){break p}if((i|0)!=1){break l}break k}if(!i){break k}}n=C(C(C(z[d+8>>2]*z[c+8>>2])+C(C(z[d>>2]*C(o-j))+C(z[d+4>>2]*C(M+n))))/E);o=C(-n);if(!(o>2])){break k}i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=k;z[i>>2]=j;i=B(v[g>>2],48)+f|0;z[i+16>>2]=j;v[i+28>>2]=0;z[i+24>>2]=n;z[i+20>>2]=k;j=z[e+8>>2];q=v[e+4>>2];p=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=p;v[i+36>>2]=q;z[i+44>>2]=o;z[i+40>>2]=j}q=!(s>L)&(s>2];if(jH){break q}L=z[c+48>>2];m=z[c+52>>2];o=z[c>>2];n=z[c+4>>2];r:{if(L==s&m==j|o==s&n==j){break r}p=jC(0);i=0;if(!((J?r:y)>=(J?y:r))){break s}i=1}y=z[c+16>>2];l=z[c+20>>2];if(y==s&l==j){break r}J=x;x=jC(0);if(!((J?A:K)>=(J?K:A))){break t}if(i){break q}i=i+1|0}A=z[c+32>>2];r=z[c+36>>2];if(A==s&r==j){break r}J=x;x=jC(0);if(!((J?l:y)>=(J?y:l))){break u}if((i|0)==1){break q}i=i+1|0}v:{if((p|0)==(x|0)){break v}m=C(m-r);l=C(C(C(A+C(1.1920928955078125e-7))*m)+C(C(j-r)*C(L-A)));r=C(m*s);p=m>C(0);if(!((p?l:r)>=(p?r:l))){break v}if((i|0)!=1){break r}break q}if(!i){break q}}n=C(C(C(z[d+8>>2]*z[c+8>>2])+C(C(z[d>>2]*C(D+o))+C(z[d+4>>2]*C(n-j))))/E);o=C(-n);if(!(o>2])){break q}i=B(v[g>>2],48)+f|0;v[i+8>>2]=0;v[i+12>>2]=0;z[i+4>>2]=j;z[i>>2]=s;i=B(v[g>>2],48)+f|0;z[i+16>>2]=s;v[i+28>>2]=0;z[i+24>>2]=n;z[i+20>>2]=j;j=z[e+8>>2];p=v[e+4>>2];x=v[e>>2];i=v[g>>2];v[g>>2]=i+1;i=B(i,48)+f|0;v[i+32>>2]=x;v[i+36>>2]=p;z[i+44>>2]=o;z[i+40>>2]=j}w:{if(!(q&!(kH){break w}l=z[c+48>>2];o=z[c+52>>2];n=z[c>>2];j=z[c+4>>2];x:{if(l==s&o==k|n==s&j==k){break x}q=kk;i=0;y:{if((q|0)==(p|0)){break y}m=C(j-o);u=C(C(C(l+C(1.1920928955078125e-7))*m)+C(C(k-o)*C(n-l)));H=C(m*s);x=m>C(0);i=0;if(!((x?u:H)>=(x?H:u))){break y}i=1}H=z[c+16>>2];m=z[c+20>>2];if(H==s&m==k){break x}x=p;p=kC(0);if(!((x?r:L)>=(x?L:r))){break z}if(i){break w}i=i+1|0}r=z[c+32>>2];u=z[c+36>>2];if(r==s&u==k){break x}x=p;p=kC(0);if(!((x?m:H)>=(x?H:m))){break A}if((i|0)==1){break w}i=i+1|0}B:{if((p|0)==(q|0)){break B}o=C(o-u);m=C(C(C(r+C(1.1920928955078125e-7))*o)+C(C(k-u)*C(l-r)));u=C(o*s);q=o>C(0);if(!((q?m:u)>=(q?u:m))){break B}if((i|0)!=1){break x}break w}if(!i){break w}}j=C(C(C(z[d+8>>2]*z[c+8>>2])+C(C(z[d>>2]*C(D+n))+C(z[d+4>>2]*C(M+j))))/E);n=C(-j);if(!(n>2])){break w}d=B(v[g>>2],48)+f|0;v[d+8>>2]=0;v[d+12>>2]=0;z[d+4>>2]=k;z[d>>2]=s;d=B(v[g>>2],48)+f|0;z[d+16>>2]=s;v[d+28>>2]=0;z[d+24>>2]=j;z[d+20>>2]=k;j=z[e+8>>2];i=v[e+4>>2];q=v[e>>2];d=v[g>>2];v[g>>2]=d+1;d=B(d,48)+f|0;v[d+32>>2]=q;v[d+36>>2]=i;z[d+44>>2]=n;z[d+40>>2]=j}A=C(-C(z[h>>2]+C(1.1920928955078125e-7)));K=z[b>>2];O=z[a>>2];d=3;b=0;while(1){a=(d<<4)+c|0;M=z[a+8>>2];m=z[a+4>>2];E=z[a>>2];a=(b<<4)+c|0;j=z[a+8>>2];n=z[a+4>>2];o=z[a>>2];a=b;C:{D:{if(!w[b+(I+12|0)|0]){if(!w[(I+12|0)+d|0]){break C}i=0;b=w[(I+8|0)+d|0]!=0;break D}b=0;h=w[a+(I+8|0)|0];i=(h|0)!=0;if(!w[(I+12|0)+d|0]){break D}d=w[(I+8|0)+d|0];b=(d|0)!=0;if(!h){break D}if(d){break C}}E=C(E-o);d=(E>C(0)?E:C(-E))O)){break C}m=C(m-n);h=(m>C(0)?m:C(-m))K|k>n)){break C}M=C(M-j);q=(M>C(0)?M:C(-M))C(34028234663852886e22))){break C}D=C(C(1)/E);u=d?C(0):C(C(s-o)*D);l=d?C(34028234663852886e22):C(C(O-o)*D);D=l>u?u:l;r=C(C(1)/m);H=h?C(0):C(C(k-n)*r);r=h?C(34028234663852886e22):C(C(K-n)*r);L=r>H?H:r;D=D>=L?D:L;y=C(C(1)/M);L=q?C(0):C(C(A-j)*y);y=q?C(34028234663852886e22):C(C(C(34028234663852886e22)-j)*y);N=y>L?L:y;D=D>=N?D:N;D=D>C(0)?D:C(0);u=l=u?u:l;l=y=u?u:l;u=uu|D>C(1)){break C}if(!i){d=B(v[g>>2],48)+f|0;v[d+8>>2]=0;v[d+12>>2]=0;l=C(n+C(m*D));z[d+4>>2]=l;H=C(o+C(E*D));z[d>>2]=H;d=B(v[g>>2],48)+f|0;z[d+16>>2]=H;v[d+28>>2]=0;D=C(j+C(M*D));z[d+24>>2]=D;z[d+20>>2]=l;l=z[e+8>>2];h=v[e+4>>2];i=v[e>>2];d=v[g>>2];v[g>>2]=d+1;d=B(d,48)+f|0;v[d+32>>2]=i;v[d+36>>2]=h;z[d+44>>2]=-D;z[d+40>>2]=l}if(b){break C}b=B(v[g>>2],48)+f|0;v[b+8>>2]=0;v[b+12>>2]=0;n=C(n+C(m*u));z[b+4>>2]=n;o=C(o+C(E*u));z[b>>2]=o;b=B(v[g>>2],48)+f|0;z[b+16>>2]=o;v[b+28>>2]=0;j=C(j+C(M*u));z[b+24>>2]=j;z[b+20>>2]=n;n=z[e+8>>2];d=v[e+4>>2];h=v[e>>2];b=v[g>>2];v[g>>2]=b+1;b=B(b,48)+f|0;v[b+32>>2]=h;v[b+36>>2]=d;z[b+44>>2]=-j;z[b+40>>2]=n}d=a;b=d+1|0;if((b|0)!=4){continue}break}}}function wT(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=0,o=0,p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),E=0,F=C(0),G=C(0),H=0,I=0,J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=0,ra=0,sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0);H=xa+-64|0;xa=H;v[H+60>>2]=i;v[H+32>>2]=0;v[H+36>>2]=0;v[H+40>>2]=0;v[H+44>>2]=0;v[H+24>>2]=0;v[H+28>>2]=0;i=0;u[H+20>>1]=0;v[H+16>>2]=-1;v[H+8>>2]=0;v[H+12>>2]=0;v[H+48>>2]=2139095039;k=z[c+36>>2];u[H>>1]=w[a+299|0]?1283:1027;n=H+8|0;I=H+60|0;R=xa-48|0;xa=R;k=k>2]){case 0:l=z[e+4>>2];v[R+40>>2]=0;z[R+36>>2]=l;v[R+32>>2]=2;u[R+24>>1]=x[H>>1];L=OX(g,h,R+32|0,f,d,k,n,I,R+24|0);break a;case 2:u[R+16>>1]=x[H>>1];L=OX(g,h,e,f,d,k,n,I,R+16|0);break a;case 3:break b;default:break a}}L=x[H>>1];if(L&256){u[R+8>>1]=L;j=xa-80|0;xa=j;M=z[f+4>>2];q=C(M+M);p=z[f+8>>2];m=C(q*p);y=z[f>>2];r=C(y+y);F=z[f+12>>2];l=C(r*F);z[j+44>>2]=m-l;z[j+36>>2]=m+l;l=C(C(1)-C(y*r));G=C(M*q);z[j+48>>2]=l-G;m=l;l=C(p+p);s=C(p*l);z[j+32>>2]=m-s;p=C(r*p);y=C(q*F);z[j+40>>2]=p+y;m=C(r*M);l=C(l*F);z[j+28>>2]=m-l;z[j+24>>2]=p-y;z[j+20>>2]=m+l;z[j+16>>2]=C(C(1)-G)-s;z[j+52>>2]=z[f+16>>2];z[j+56>>2]=z[f+20>>2];z[j+60>>2]=z[f+24>>2];z[j+64>>2]=z[e+4>>2];z[j+68>>2]=z[e+8>>2];z[j+72>>2]=z[e+12>>2];u[j+8>>1]=x[R+8>>1];E=j+16|0;l=k;M=C(0);o=xa-96|0;xa=o;c:{if(!g){d=0;break c}O=z[E+40>>2];N=z[E+44>>2];W=z[E+20>>2];X=z[E+16>>2];e=x[j+8>>1];s=z[E+36>>2];Y=z[E+8>>2];Z=z[E>>2];_=z[E+4>>2];$=z[E+12>>2];aa=z[E+24>>2];J=z[d>>2];ba=z[E+28>>2];P=z[d+4>>2];ca=z[E+32>>2];r=z[d+8>>2];q=C(C(C(aa*J)+C(ba*P))+C(ca*r));z[o+88>>2]=q;F=C(C(C($*J)+C(X*P))+C(W*r));z[o+84>>2]=F;G=C(C(C(Z*J)+C(_*P))+C(Y*r));z[o+80>>2]=G;p=C(G*l);z[o+64>>2]=p;y=C(F*l);z[o+68>>2]=y;k=C(q*l);z[o+72>>2]=k;z[n+40>>2]=l;m=C(1);z[o+56>>2]=q!=C(0)?C(C(1)/k):C(0);z[o+52>>2]=F!=C(0)?C(C(1)/y):C(0);z[o+48>>2]=G!=C(0)?C(C(1)/p):C(0);p=C(-s);y=C(C(aa*p)-C(ba*O));k=C(C(C(D(q))*z[E+56>>2])+C(C(C(D(G))*z[E+48>>2])+C(C(D(F))*z[E+52>>2])));L=e&128;f=!L;ra=I?v[I>>2]:ra;da=C(y-C(ca*N));ea=C(C(C($*p)-C(X*O))-C(W*N));fa=C(C(C(Z*p)-C(_*O))-C(Y*N));I=E+48|0;F=C(C(N*r)+C(C(s*J)+C(P*O)));G=C(k+C(.0020000000949949026));ja=C(F-G);e=0;d:{while(1){e:{qa=ia?(ia|0)==(ra|0)?0:ia:ra;S=B(qa,36)+h|0;pa=z[S+8>>2];r=z[d+8>>2];ka=z[S>>2];q=z[d>>2];la=z[S+4>>2];y=z[d+4>>2];s=C(C(pa*r)+C(C(ka*q)+C(la*y)));O=z[S+20>>2];N=z[S+12>>2];J=z[S+16>>2];p=C(C(O*r)+C(C(N*q)+C(y*J)));k=p>s?s:p;P=z[S+32>>2];T=C(P*r);r=z[S+24>>2];V=C(r*q);q=z[S+28>>2];y=C(T+C(V+C(y*q)));f:{if(C(G+C(F+C(m*l)))<(k>2]=da+C(C(C(aa*r)+C(ba*q))+C(ca*P));z[o+36>>2]=ea+C(C(C($*r)+C(X*q))+C(W*P));z[o+32>>2]=fa+C(C(C(Z*r)+C(_*q))+C(Y*P));z[o+28>>2]=da+C(C(C(aa*N)+C(ba*J))+C(ca*O));z[o+24>>2]=ea+C(C(C($*N)+C(X*J))+C(W*O));z[o+20>>2]=fa+C(C(C(Z*N)+C(_*J))+C(Y*O));z[o+16>>2]=da+C(C(C(aa*ka)+C(ba*la))+C(ca*pa));z[o+12>>2]=ea+C(C(C($*ka)+C(X*la))+C(W*pa));z[o+8>>2]=fa+C(C(C(Z*ka)+C(_*la))+C(Y*pa));v[o+4>>2]=2139095039;if(!G2(o+8|0,I,o- -64|0,o+48|0,m,o+4|0,f)){break f}k=z[o+4>>2];if(!(k>1]=1026;v[n+8>>2]=qa;m=z[d>>2];l=z[d+4>>2];k=z[d+8>>2];v[n+40>>2]=0;z[n+36>>2]=-k;z[n+32>>2]=-l;z[n+28>>2]=-m;d=1;break d}v[n+8>>2]=qa;z[n+40>>2]=k*l;Q=z[o+8>>2];s=C(z[o+20>>2]-Q);m=z[o+12>>2];p=C(z[o+36>>2]-m);U=C(z[o+32>>2]-Q);y=C(z[o+24>>2]-m);M=C(C(s*p)-C(U*y));m=z[o+16>>2];Q=C(z[o+28>>2]-m);m=C(z[o+40>>2]-m);U=C(C(Q*U)-C(m*s));Q=C(C(y*m)-C(p*Q));e=1;if(w[j+8|0]&64){break e}m=k}ia=ia+1|0;if((ia|0)!=(g|0)){continue}}break}d=2}f=(d|0)!=2;d=f|e;if(!e|f){break c}u[n+12>>1]=0;g:{if(!(w[j+8|0]&3)){break g}d=B(v[n+8>>2],36)+h|0;q=z[d+8>>2];F=z[d>>2];G=z[d+4>>2];s=z[d+20>>2];p=z[d+16>>2];y=z[d+12>>2];m=z[d+24>>2];l=z[d+28>>2];k=z[d+32>>2];z[o+40>>2]=da+C(C(C(aa*m)+C(ba*l))+C(ca*k));z[o+36>>2]=ea+C(C(C($*m)+C(X*l))+C(W*k));z[o+28>>2]=da+C(C(C(aa*y)+C(ba*p))+C(ca*s));z[o+24>>2]=ea+C(C(C($*y)+C(X*p))+C(W*s));z[o+16>>2]=da+C(C(C(aa*F)+C(ba*G))+C(ca*q));z[o+12>>2]=ea+C(C(C($*F)+C(X*G))+C(W*q));z[o+8>>2]=fa+C(C(C(Z*F)+C(_*G))+C(Y*q));z[o+32>>2]=fa+C(C(C(Z*m)+C(_*l))+C(Y*k));z[o+20>>2]=fa+C(C(C(Z*y)+C(_*p))+C(Y*s));O2(n+16|0,n+28|0,I,o+80|0,o+8|0,z[n+40>>2]);d=x[j+8>>1];if(d&2){r=z[n+36>>2];m=z[n+28>>2];q=z[n+32>>2];k=C(K(C(C(r*r)+C(C(m*m)+C(q*q)))));if(k>C(0)){k=C(C(1)/k);r=C(r*k);q=C(q*k);m=C(m*k)}if(!(!L|!(C(C(M*z[o+88>>2])+C(C(Q*z[o+80>>2])+C(U*z[o+84>>2])))>C(0)))){r=C(-r);q=C(-q);m=C(-m)}F=z[E+24>>2];G=z[E>>2];s=z[E+12>>2];p=z[E+28>>2];y=z[E+4>>2];U=z[E+16>>2];Q=z[E+32>>2];l=z[E+8>>2];k=z[E+20>>2];u[n+12>>1]=x[n+12>>1]|2;z[n+36>>2]=C(C(m*l)+C(q*k))+C(r*Q);z[n+32>>2]=C(C(m*y)+C(q*U))+C(r*p);z[n+28>>2]=C(C(m*G)+C(q*s))+C(r*F);d=x[j+8>>1]}if(!(d&1)){break g}s=z[E+36>>2];p=z[E+24>>2];y=z[E+12>>2];U=z[E>>2];Q=z[E+40>>2];m=z[E+28>>2];l=z[E+16>>2];k=z[E+4>>2];q=z[n+16>>2];F=z[n+20>>2];G=z[n+24>>2];z[n+24>>2]=C(C(C(q*z[E+8>>2])+C(F*z[E+20>>2]))+C(G*z[E+32>>2]))+z[E+44>>2];z[n+20>>2]=Q+C(C(C(q*k)+C(F*l))+C(G*m));z[n+16>>2]=s+C(C(C(q*U)+C(F*y))+C(G*p));u[n+12>>1]=x[n+12>>1]|1}d=e}xa=o+96|0;xa=j+80|0;L=d&1;break a}u[R>>1]=L;L=d;p=k;j=xa-288|0;xa=j;h:{if(!g){d=0;break h}Ea=z[f+24>>2];Fa=z[f+20>>2];N=z[e+8>>2];J=z[e+12>>2];d=x[R>>1];pa=z[f+16>>2];M=z[L+8>>2];r=z[L>>2];q=z[L+4>>2];T=z[f+8>>2];V=z[f+4>>2];ga=z[f+12>>2];ha=z[f>>2];P=z[e+4>>2];v[j+224>>2]=0;v[j+216>>2]=0;v[j+220>>2]=0;v[j+208>>2]=0;v[j+212>>2]=0;v[j+204>>2]=0;z[j+200>>2]=J;z[j+196>>2]=N;t[j+176|0]=0;v[j+172>>2]=3;v[j+144>>2]=0;v[j+148>>2]=0;v[j+152>>2]=0;v[j+156>>2]=0;z[j+192>>2]=P;k=N>=P?P:N;l=k<=J?k:J;k=C(l*C(.05000000074505806));z[j+168>>2]=k;z[j+164>>2]=k;z[j+160>>2]=l*C(.15000000596046448);v[j+140>>2]=0;l=C(ha+ha);F=C(T*l);k=C(V+V);G=C(ga*k);sa=C(F+G);s=C(k*T);y=C(l*ga);ta=C(s-y);U=C(C(1)-C(ha*l));Q=C(V*k);ua=C(U-Q);ma=C(C(C(r*sa)+C(q*ta))+C(M*ua));z[j+136>>2]=ma*p;m=C(l*V);k=C(T+T);l=C(ga*k);va=C(m-l);k=C(T*k);wa=C(U-k);ya=C(s+y);na=C(C(C(r*va)+C(q*wa))+C(M*ya));z[j+132>>2]=na*p;za=C(C(C(1)-Q)-k);Aa=C(m+l);Ba=C(F-G);oa=C(C(C(r*za)+C(q*Aa))+C(M*Ba));z[j+128>>2]=oa*p;l=C(-pa);k=C(C(sa*l)-C(ta*Fa));qa=d&128;f=qa>>>7|0;ia=I?v[I>>2]:ia;q=C(C(C(J*(ma>C(0)?ma:C(-ma)))+C(C(P*(oa>C(0)?oa:C(-oa)))+C(N*(na>C(0)?na:C(-na)))))+C(0));aa=C(k-C(ua*Ea));ba=C(C(C(va*l)-C(wa*Fa))-C(ya*Ea));ca=C(C(C(za*l)-C(Aa*Fa))-C(Ba*Ea));e=0;y=C(0);U=C(0);Q=C(0);i:{j:{while(1){d=S?(S|0)==(ia|0)?0:S:ia;I=B(d,36)+h|0;ka=z[I+32>>2];la=z[I+24>>2];O=z[I+28>>2];da=C(ca+C(C(Ba*ka)+C(C(za*la)+C(Aa*O))));N=z[I+20>>2];J=z[I+12>>2];s=z[I+16>>2];Ca=C(ca+C(C(Ba*N)+C(C(za*J)+C(Aa*s))));l=C(da-Ca);P=z[I+8>>2];M=z[I>>2];r=z[I+4>>2];ea=C(ba+C(C(ya*P)+C(C(va*M)+C(wa*r))));Da=C(ba+C(C(ya*N)+C(C(va*J)+C(wa*s))));F=C(ea-Da);fa=C(ca+C(C(Ba*P)+C(C(za*M)+C(Aa*r))));k=C(fa-Ca);ja=C(ba+C(C(ya*ka)+C(C(va*la)+C(wa*O))));G=C(ja-Da);m=C(C(l*F)-C(k*G));O=C(aa+C(C(ua*ka)+C(C(sa*la)+C(ta*O))));J=C(aa+C(C(ua*N)+C(C(sa*J)+C(ta*s))));s=C(O-J);N=C(s*k);M=C(aa+C(C(ua*P)+C(C(sa*M)+C(ta*r))));k=C(M-J);l=C(N-C(k*l));k=C(C(G*k)-C(F*s));k:{if(!f&z[j+224>>2]<=C(C(m*z[j+136>>2])+C(C(k*z[j+128>>2])+C(l*z[j+132>>2])))){break k}r=C(C(O*ma)+C(C(da*oa)+C(na*ja)));F=C(C(J*ma)+C(C(Ca*oa)+C(na*Da)));s=r>2])|(!(I|G>2])|!(I|F>2])))){if(I){break k}}t[j+64|0]=0;v[j+56>>2]=2139095039;v[j+60>>2]=5;v[j+124>>2]=0;v[j+108>>2]=0;v[j+92>>2]=0;v[j+44>>2]=0;v[j+48>>2]=0;v[j+52>>2]=2139095039;z[j+80>>2]=fa;z[j+96>>2]=Ca;z[j+112>>2]=da;F=C(C(C(fa+Ca)+da)*C(.33333298563957214));z[j+32>>2]=F;z[j+84>>2]=ea;z[j+100>>2]=Da;z[j+116>>2]=ja;G=C(C(C(ea+Da)+ja)*C(.33333298563957214));z[j+36>>2]=G;z[j+88>>2]=M;z[j+104>>2]=J;z[j+120>>2]=O;s=C(C(C(M+J)+O)*C(.33333298563957214));z[j+40>>2]=s;v[j+24>>2]=141856;v[j+28>>2]=j+32;v[j+16>>2]=141808;v[j+20>>2]=j+144;v[j+12>>2]=0;z[j+8>>2]=s-z[j+152>>2];z[j+4>>2]=G-z[j+148>>2];z[j>>2]=F-z[j+144>>2];if(!cY(j+24|0,j+16|0,j,j+208|0,j+128|0,j+240|0,j+256|0,j+272|0,C(0))){break k}s=z[j+240>>2];if(s<=z[j+224>>2]){v[n+8>>2]=d;v[n+40>>2]=0;m=z[L>>2];l=z[L+4>>2];k=z[L+8>>2];u[n+12>>1]=2;z[n+36>>2]=-k;z[n+32>>2]=-l;z[n+28>>2]=-m;d=1;break i}W=z[j+264>>2];X=z[j+260>>2];Y=z[j+256>>2];Z=z[j+280>>2];_=z[j+276>>2];$=z[j+272>>2];v[j+140>>2]=0;p=C(p*s);z[j+136>>2]=ma*p;z[j+132>>2]=na*p;z[j+128>>2]=oa*p;ra=1;if(w[R|0]&64){break j}Q=k;U=l;y=m;e=d}S=S+1|0;if((S|0)!=(g|0)){continue}break}d=2;break i}Q=k;U=l;y=m;e=d;d=2}d=(d|0)!=2;if(d|!ra){break h}v[n+8>>2]=e;z[n+40>>2]=p;m=C(C(ga*ga)+C(-.5));l=C(C(T*Z)+C(C(ha*$)+C(V*_)));k=C(C(C(ga*C(C(ha*_)-C($*V)))+C(m*Z))+C(T*l));z[n+24>>2]=Ea+C(k+k);k=C(C(V*l)+C(C(m*_)+C(ga*C(C(T*$)-C(Z*ha)))));z[n+20>>2]=Fa+C(k+k);k=C(C(ha*l)+C(C(m*$)+C(ga*C(C(V*Z)-C(_*T)))));z[n+16>>2]=pa+C(k+k);l=C(C(T*W)+C(C(ha*Y)+C(V*X)));k=C(C(C(ga*C(C(ha*X)-C(Y*V)))+C(m*W))+C(T*l));k=C(k+k);q=k;r=C(k*k);k=C(C(ha*l)+C(C(m*Y)+C(ga*C(C(V*W)-C(X*T)))));p=C(k+k);k=C(C(V*l)+C(C(m*X)+C(ga*C(C(T*Y)-C(W*ha)))));l=C(k+k);k=C(C(1)/C(K(C(r+C(C(p*p)+C(l*l))))));m=C(q*k);z[n+36>>2]=-m;l=C(l*k);z[n+32>>2]=-l;k=C(p*k);z[n+28>>2]=-k;if(!(!qa|!(C(C(y*z[L+8>>2])+C(C(Q*z[L>>2])+C(U*z[L+4>>2])))>C(0)))){z[n+36>>2]=m;z[n+32>>2]=l;z[n+28>>2]=k}u[n+12>>1]=3;d=1}xa=j+288|0;L=d}xa=R+48|0;l:{if(!L){break l}k=z[H+48>>2];if(k>=z[c+36>>2]){break l}z[c+36>>2]=k;z[c+24>>2]=z[H+36>>2];z[c+28>>2]=z[H+40>>2];z[c+32>>2]=z[H+44>>2];A[c>>3]=A[b+12>>3]+ +z[H+24>>2];A[c+8>>3]=A[b+20>>3]+ +z[H+28>>2];A[c+16>>3]=A[b+28>>3]+ +z[H+32>>2];d=v[H+16>>2];v[((v[a+96>>2]<<2)+a|0)+100>>2]=d;b=v[b+40>>2];v[c+40>>2]=b+d;v[c+44>>2]=v[(v[a+20>>2]+(b<<2)|0)+(d<<2)>>2];i=1}xa=H- -64|0;return i}function JA(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,u=0,A=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=C(0),X=C(0),Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;i=xa-1072|0;xa=i;v[i+1048>>2]=v[b+12>>2];O=v[b+56>>2];e=i;v[e+1004>>2]=-128;v[e+1008>>2]=-128;v[e+972>>2]=-128;v[e+976>>2]=-128;v[e+940>>2]=-128;v[e+944>>2]=-128;v[e+908>>2]=-128;v[e+912>>2]=-128;v[e+876>>2]=-128;v[e+880>>2]=-128;v[e+844>>2]=-128;v[e+848>>2]=-128;v[e+812>>2]=-128;v[e+816>>2]=-128;v[e+780>>2]=-128;v[e+784>>2]=-128;v[e+748>>2]=-128;v[e+752>>2]=-128;v[e+716>>2]=-128;v[e+720>>2]=-128;v[e+684>>2]=-128;v[e+688>>2]=-128;v[e+652>>2]=-128;v[e+656>>2]=-128;v[e+620>>2]=-128;v[e+624>>2]=-128;v[e+588>>2]=-128;v[e+592>>2]=-128;v[e+556>>2]=-128;v[e+560>>2]=-128;v[e+524>>2]=-128;v[e+528>>2]=-128;v[e+492>>2]=-128;v[e+496>>2]=-128;v[e+460>>2]=-128;v[e+464>>2]=-128;v[e+428>>2]=-128;v[e+432>>2]=-128;v[e+396>>2]=-128;v[e+400>>2]=-128;v[e+364>>2]=-128;v[e+368>>2]=-128;v[e+332>>2]=-128;v[e+336>>2]=-128;v[e+300>>2]=-128;v[e+304>>2]=-128;v[e+268>>2]=-128;v[e+272>>2]=-128;v[e+236>>2]=-128;v[e+240>>2]=-128;v[e+204>>2]=-128;v[e+208>>2]=-128;v[e+172>>2]=-128;v[e+176>>2]=-128;v[e+140>>2]=-128;v[e+144>>2]=-128;v[e+108>>2]=-128;v[e+112>>2]=-128;v[e+76>>2]=-128;v[e+80>>2]=-128;v[e+44>>2]=-128;v[e+48>>2]=-128;v[e+12>>2]=-128;v[e+16>>2]=-128;T=v[b+40>>2];q=v[b+28>>2];F=v[b+16>>2];v[e+1040>>2]=0;v[e+1044>>2]=32;v[e+1068>>2]=d;v[e+1064>>2]=c;t[e+1033|0]=0;v[e+1036>>2]=e;M=v[b>>2];U=v[b+44>>2];P=v[b+48>>2];S=v[b+24>>2];V=v[b+32>>2];W=z[b+104>>2];X=z[b+100>>2];c=O+v[b+68>>2]|0;v[b+68>>2]=c;l=c-O|0;Y=v[b+36>>2];Z=M-1|0;L=Z;j=O;while(1){_=I+Z|0;if(_>>>0>o>>>0){ea=I?129216:129120;E=q+r|0;$=B(L-o|0,q);D=$+r|0;m=s;while(1){a:{if(v[b+88>>2]>=(m|0)){break a}d=3e4;if(v[b+88>>2]>=(m|0)){break a}while(1){if(v[b+88>>2]>=(m|0)){break a}d=d-1|0;if(d){continue}d=1e4;continue}}t[i+1032|0]=w[a+4|0]!=0|M-o>>>0<4;if(P){fa=B(N,T);J=0;while(1){b:{if(v[b+72>>2]>=(k|0)){break b}d=3e4;if(v[b+72>>2]>=(k|0)){break b}while(1){if(v[b+72>>2]>=(k|0)){break b}d=d-1|0;if(d){continue}d=1e4;continue}}K=0;aa=(J<<2)+U|0;A=v[aa>>2]+A|0;c:{if((A|0)<=(l|0)){break c}while(1){c=A-l|0;H=(c|0)<(j|0)?c:j;if((H|0)>0){p=l-fa|0;ga=H+p|0;while(1){G=0;g=0;f=0;Q=(p<<3)+Y|0;ba=(v[Q>>2]<<5)+V|0;d=v[ba+24>>2];c=d+383|0;f=c>>>0<383?1:f;e=c;e=(f&63)<<26|e>>>6;c=d>>>6|0;u=(f>>>6|0)-(c>>>0>e>>>0)|0;ca=e-c|0;f=u;c=ca+1|0;f=c?f:f+1|0;e=c;c=0;ha=c;da=e&7;if(c|da){while(1){c=e;e=e-1|0;f=f-!c|0;d=d- -64|0;c=g;g=G+1|0;c=g?c:c+1|0;G=g;g=c;if((da|0)!=(G|0)|(ha|0)!=(c|0)){continue}break}}g=x[Q+4>>1];if(!u&ca>>>0>=7|u){while(1){d=d+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}d:{if(!g){break d}c=0;d=0;if(g-1>>>0>=3){f=g&65532;e=0;while(1){d=d+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=g&3;if(!e){break d}while(1){d=d+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}Ba[v[(x[Q+6>>1]<<2)+ea>>2]](ba,g,i+1032|0);p=p+1|0;if((ga|0)>(p|0)){continue}break}}K=K+H|0;j=j-H|0;if(j){l=l+H|0}else{j=O;c=j+v[b+68>>2]|0;v[b+68>>2]=c;l=c-j|0}if((A|0)>(l|0)){continue}break}if(!K){break c}v[b+72>>2]=v[b+72>>2]+K}k=v[aa>>2]+k|0;J=J+1|0;if((J|0)!=(P|0)){continue}break}}e:{if(v[b+72>>2]>=(k|0)){break e}d=3e4;if(v[b+72>>2]>=(k|0)){break e}while(1){if(v[b+72>>2]>=(k|0)){break e}d=d-1|0;if(d){continue}d=1e4;continue}}r=q+r|0;if((r|0)>(h|0)){while(1){if((((n|0)<(r|0)?n:r)|0)>(h|0)){c=(n|0)<(E|0)?n:E;d=h;while(1){e=v[B(d-R|0,52)+S>>2];Ba[v[v[e>>2]+136>>2]](e,X,W,v[i+1064>>2],v[i+1068>>2],0,0,C(0));d=d+1|0;if((c|0)!=(d|0)){continue}break}if((c|0)!=(h|0)){v[b+88>>2]=v[b+88>>2]+(c-h|0)}h=c}if((h|0)==(n|0)){n=v[b+84>>2]+2|0;v[b+84>>2]=n;h=n-2|0}if((h|0)<(r|0)){continue}break}}m=q+m|0;E=q+E|0;N=N+1|0;R=q+R|0;o=o+1|0;if(_>>>0>o>>>0){continue}break}s=s+$|0;r=D}L=L+1|0;I=I+1|0;if((I|0)!=2){continue}break}u=v[b+52>>2];D=v[b+8>>2];a=v[b+76>>2]+32|0;v[b+76>>2]=a;f:{c=v[b+88>>2]>=(s|0);if(c|c){break f}d=3e4;while(1){if(v[b+88>>2]>=(s|0)){break f}d=d-1|0;if(d){continue}d=1e4;continue}}d=a-32|0;g:{a=v[b+72>>2]>=(k|0);if(a|a){break g}c=3e4;while(1){if(v[b+72>>2]>=(k|0)){break g}c=c-1|0;if(c){continue}c=1e4;continue}}a=32;c=0;if((d|0)<(q|0)){while(1){e=q-d|0;f=(e|0)<32?e:32;a=a-f|0;h:{if((e|0)<=0){break h}e=(f|0)>1?f:1;m=e&1;if((e|0)!=1){p=e&-2;e=0;while(1){g=B(d,52)+S|0;o=v[(v[v[g>>2]+24>>2]<<2)+149608>>2];if(o){Ba[o|0](g,v[i+1068>>2])}g=g+52|0;o=v[(v[v[g>>2]+24>>2]<<2)+149608>>2];if(o){Ba[o|0](g,v[i+1068>>2])}d=d+2|0;e=e+2|0;if((p|0)!=(e|0)){continue}break}}if(!m){break h}e=B(d,52)+S|0;g=v[(v[v[e>>2]+24>>2]<<2)+149608>>2];if(g){Ba[g|0](e,v[i+1068>>2])}d=d+1|0}if(!a){a=v[b+76>>2]+32|0;v[b+76>>2]=a;d=a-32|0;a=32}c=c+f|0;if((d|0)<(q|0)){continue}break}}e=d-q|0;if((F|0)>(e|0)){while(1){m=0;d=F-e|0;f=(a|0)<(d|0)?a:d;if((f|0)>0){while(1){d=e<<5;a=d+u|0;d=d+D|0;z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];z[a+16>>2]=z[d+16>>2];z[a+20>>2]=z[d+20>>2];z[a+24>>2]=z[d+24>>2];e=e+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}c=c+f|0;a=32;d=v[b+76>>2]+32|0;v[b+76>>2]=d;e=(d-q|0)-32|0;if((F|0)>(e|0)){continue}break}}if(c){v[b+80>>2]=v[b+80>>2]+c}i:{a=q+F|0;if((a|0)<=v[b+80>>2]|(a|0)<=v[b+80>>2]){break i}d=3e4;while(1){if((a|0)<=v[b+80>>2]){break i}d=d-1|0;if(d){continue}d=1e4;continue}}if(y[b+4>>2]>=2){o=q+r|0;E=1;while(1){j:{if(v[b+88>>2]>=(s|0)){break j}d=3e4;if(v[b+88>>2]>=(s|0)){break j}while(1){if(v[b+88>>2]>=(s|0)){break j}d=d-1|0;if(d){continue}d=1e4;continue}}if(P){H=B(N,T);m=0;while(1){k:{if(v[b+72>>2]>=(k|0)){break k}d=3e4;if(v[b+72>>2]>=(k|0)){break k}while(1){if(v[b+72>>2]>=(k|0)){break k}d=d-1|0;if(d){continue}d=1e4;continue}}a=0;L=(m<<2)+U|0;A=v[L>>2]+A|0;l:{if((A|0)<=(l|0)){break l}while(1){c=A-l|0;D=(c|0)<(j|0)?c:j;if((D|0)>0){p=l-H|0;I=D+p|0;while(1){G=0;g=0;f=0;F=(p<<3)+Y|0;J=(v[F>>2]<<5)+V|0;d=v[J+24>>2];c=d+383|0;f=c>>>0<383?1:f;e=c;e=(f&63)<<26|e>>>6;c=d>>>6|0;u=(f>>>6|0)-(c>>>0>e>>>0)|0;K=e-c|0;f=u;c=K+1|0;f=c?f:f+1|0;e=c;c=0;M=c;Q=e&7;if(c|Q){while(1){c=e;e=e-1|0;f=f-!c|0;d=d- -64|0;c=g;g=G+1|0;c=g?c:c+1|0;G=g;g=c;if((Q|0)!=(G|0)|(M|0)!=(c|0)){continue}break}}g=x[F+4>>1];if(!u&K>>>0>=7|u){while(1){d=d+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}m:{if(!g){break m}c=0;d=0;if(g-1>>>0>=3){f=g&65532;e=0;while(1){d=d+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=g&3;if(!e){break m}while(1){d=d+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}Ba[v[(x[F+6>>1]<<2)+129120>>2]](J,g,i+1032|0);p=p+1|0;if((I|0)>(p|0)){continue}break}}a=a+D|0;j=j-D|0;if(j){l=l+D|0}else{j=O;c=j+v[b+68>>2]|0;v[b+68>>2]=c;l=c-j|0}if((A|0)>(l|0)){continue}break}if(!a){break l}v[b+72>>2]=v[b+72>>2]+a}k=v[L>>2]+k|0;m=m+1|0;if((P|0)!=(m|0)){continue}break}}n:{if(v[b+72>>2]>=(k|0)){break n}d=3e4;if(v[b+72>>2]>=(k|0)){break n}while(1){if(v[b+72>>2]>=(k|0)){break n}d=d-1|0;if(d){continue}d=1e4;continue}}r=q+r|0;if((r|0)>(h|0)){while(1){if((((n|0)<(r|0)?n:r)|0)>(h|0)){a=(n|0)<(o|0)?n:o;d=h;while(1){c=v[B(d-R|0,52)+S>>2];Ba[v[v[c>>2]+136>>2]](c,X,W,v[i+1064>>2],v[i+1068>>2],1,0,C(0));d=d+1|0;if((a|0)!=(d|0)){continue}break}if((a|0)!=(h|0)){v[b+88>>2]=v[b+88>>2]+(a-h|0)}h=a}if((h|0)==(n|0)){n=v[b+84>>2]+2|0;v[b+84>>2]=n;h=n-2|0}if((h|0)<(r|0)){continue}break}}s=q+s|0;o=q+o|0;R=q+R|0;N=N+1|0;E=E+1|0;if(E>>>0>2]){continue}break}}D=v[b+140>>2];o=v[b+132>>2];v[i+1056>>2]=v[b+136>>2];v[i+1052>>2]=o;v[i+1060>>2]=D;t[i+1033|0]=1;o:{a=v[b+88>>2]>=(s|0);if(a|a){break o}d=3e4;while(1){if(v[b+88>>2]>=(s|0)){break o}d=d-1|0;if(d){continue}d=1e4;continue}}if(P){K=B(N,T);m=0;while(1){p:{if(v[b+72>>2]>=(k|0)){break p}d=3e4;if(v[b+72>>2]>=(k|0)){break p}while(1){if(v[b+72>>2]>=(k|0)){break p}d=d-1|0;if(d){continue}d=1e4;continue}}a=0;H=(m<<2)+U|0;A=v[H>>2]+A|0;q:{if((A|0)<=(l|0)){break q}while(1){c=A-l|0;u=(c|0)<(j|0)?c:j;if((u|0)>0){p=l-K|0;L=u+p|0;while(1){G=0;g=0;f=0;E=(p<<3)+Y|0;I=(v[E>>2]<<5)+V|0;d=v[I+24>>2];c=d+383|0;f=c>>>0<383?1:f;e=c;e=(f&63)<<26|e>>>6;c=d>>>6|0;s=(f>>>6|0)-(c>>>0>e>>>0)|0;F=e-c|0;f=s;c=F+1|0;f=c?f:f+1|0;e=c;c=0;J=c;M=e&7;if(c|M){while(1){c=e;e=e-1|0;f=f-!c|0;d=d- -64|0;c=g;g=G+1|0;c=g?c:c+1|0;G=g;g=c;if((M|0)!=(G|0)|(J|0)!=(c|0)){continue}break}}g=x[E+4>>1];if(!s&F>>>0>=7|s){while(1){d=d+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}r:{if(!g){break r}c=0;d=0;if(g-1>>>0>=3){f=g&65532;e=0;while(1){d=d+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=g&3;if(!e){break r}while(1){d=d+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}Ba[v[(x[E+6>>1]<<2)+129168>>2]](I,g,i+1032|0);p=p+1|0;if((L|0)>(p|0)){continue}break}}a=a+u|0;j=j-u|0;if(j){l=l+u|0}else{j=O;c=j+v[b+68>>2]|0;v[b+68>>2]=c;l=c-j|0}if((A|0)>(l|0)){continue}break}if(!a){break q}v[b+72>>2]=v[b+72>>2]+a}k=v[H>>2]+k|0;m=m+1|0;if((P|0)!=(m|0)){continue}break}}s:{a=v[b+72>>2]>=(k|0);if(a|a){break s}d=3e4;while(1){if(v[b+72>>2]>=(k|0)){break s}d=d-1|0;if(d){continue}d=1e4;continue}}c=q+r|0;if((c|0)>(h|0)){while(1){d=h;a=(c|0)>(n|0)?n:c;if((d|0)<(a|0)){while(1){e=B(d-R|0,52)+S|0;f=v[e>>2];Ba[v[v[f>>2]+136>>2]](f,X,W,v[i+1064>>2],v[i+1068>>2],0,0,C(0));e=v[e>>2];Ba[v[v[e>>2]+140>>2]](e,0);d=d+1|0;if((a|0)!=(d|0)){continue}break}if((a|0)!=(h|0)){v[b+88>>2]=v[b+88>>2]+(a-h|0)}h=a}if((h|0)==(n|0)){n=v[b+84>>2]+2|0;v[b+84>>2]=n;h=n-2|0}if((c|0)>(h|0)){continue}break}}a=v[i+1040>>2];t:{if(!a){break t}a=a+v[D>>2]|0;v[D>>2]=a;b=v[i+1040>>2];if(!b){break t}c=a-b|0;d=0;while(1){a=v[i+1036>>2]+(d<<5)|0;h=v[a+4>>2];b=o+(c+d<<5)|0;v[b>>2]=v[a>>2];v[b+4>>2]=h;h=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=h;h=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=h;h=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=h;d=d+1|0;if(d>>>0>2]){continue}break}}xa=i+1072|0;return B(N+1|0,T)|0}function MX(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=0,G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0,da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0);l=xa-288|0;xa=l;q=i;k=xa-272|0;xa=k;v[k+248>>2]=0;v[k+252>>2]=0;v[k+240>>2]=0;v[k+244>>2]=0;ia=z[d+8>>2];ja=z[d+4>>2];N=z[d>>2];O=z[e+8>>2];P=z[e+4>>2];I=z[e>>2];v[k+224>>2]=1;m=v[a+8>>2];G=z[m+52>>2];H=z[m+36>>2];D=z[m+20>>2];T=z[m+56>>2];U=z[m+40>>2];x=v[a+4>>2];s=z[x+56>>2];L=z[a+56>>2];Q=z[a+24>>2];$=z[a+40>>2];X=z[a+48>>2];J=z[a+32>>2];M=z[m+24>>2];y=z[x+52>>2];R=z[a+52>>2];V=z[a+20>>2];Y=z[a+36>>2];W=z[m+48>>2];Z=z[m+32>>2];ka=z[m>>2];la=z[m+16>>2];_=z[m+4>>2];ma=z[m+8>>2];A=z[x+48>>2];na=z[a+16>>2];i=z[c+8>>2];o=z[c>>2];p=z[c+4>>2];m=v[b+4>>2];r=z[m+56>>2];aa=z[m+52>>2];ba=z[m+72>>2];ca=m- -64|0;da=z[ca>>2];ea=z[m+68>>2];n=z[m+88>>2];fa=z[m+80>>2];ga=z[m+84>>2];ha=z[m+48>>2];x=0;v[k+172>>2]=0;S=n;E=C(C(i*i)+C(C(o*o)+C(p*p)))>C(1.1920928955078125e-7);i=E?i:C(0);o=E?o:C(1);n=E?p:C(0);u=C(C(1)/C(K(C(C(i*i)+C(C(o*o)+C(n*n))))));i=C(i*u);p=C(o*u);o=C(n*u);z[k+168>>2]=C(S*i)+C(C(fa*p)+C(ga*o));z[k+164>>2]=C(ba*i)+C(C(da*p)+C(o*ea));z[k+160>>2]=C(r*i)+C(C(ha*p)+C(o*aa));E=IV(m,k+160|0);aa=z[ca>>2];ba=z[m+80>>2];da=z[m+84>>2];ea=z[m+52>>2];fa=z[m+68>>2];ga=z[m+88>>2];E=v[m+152>>2]+B(E,12)|0;n=z[E+8>>2];ha=z[m+56>>2];u=z[E>>2];oa=z[m+72>>2];r=z[E+4>>2];pa=z[m+48>>2];v[k+180>>2]=0;v[k+184>>2]=0;v[k+188>>2]=0;v[k+192>>2]=0;v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;v[k+208>>2]=0;v[k+212>>2]=0;v[k+216>>2]=0;v[k+220>>2]=0;v[k+172>>2]=0;v[k+176>>2]=0;S=T;p=C(-p);T=C(C(C(Q*p)-C($*o))-C(L*i))>C(0)?s:C(-s);A=C(C(C(na*p)-C(J*o))-C(X*i))>C(0)?A:C(-A);i=C(C(C(V*p)-C(Y*o))-C(R*i))>C(0)?y:C(-y);o=C(S+C(C(U*T)+C(C(ma*A)+C(M*i))));p=C(C(ga*n)+C(C(ha*u)+C(r*oa)));s=C(o-p);z[k+168>>2]=s;G=C(G+C(C(H*T)+C(C(_*A)+C(i*D))));H=C(C(da*n)+C(C(ea*u)+C(r*fa)));y=C(G-H);z[k+164>>2]=y;i=C(W+C(C(Z*T)+C(C(ka*A)+C(i*la))));n=C(C(ba*n)+C(C(pa*u)+C(r*aa)));r=C(i-n);z[k+160>>2]=r;v[k+116>>2]=0;v[k+120>>2]=0;v[k+124>>2]=0;v[k+128>>2]=0;v[k+132>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+108>>2]=0;v[k+112>>2]=0;z[k+104>>2]=o;z[k+100>>2]=G;z[k+96>>2]=i;v[k+52>>2]=0;v[k+56>>2]=0;v[k+60>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+44>>2]=0;v[k+48>>2]=0;z[k+40>>2]=p;z[k+36>>2]=H;z[k+32>>2]=n;i=C(-s);o=C(-y);p=C(-r);A=C(C(s*s)+C(C(r*r)+C(y*y)));n=z[v[b+4>>2]+24>>2];m=v[a+4>>2];u=z[m+24>>2];n=C((nka)){q=p;n=o;u=i;N=C(0);T=r;ia=y;ja=s;break b}$=C(n+q);la=C($*$);I=C(C(I*C(0))+N);P=C(C(P*C(0))+ja);O=C(C(O*C(0))+ia);N=C(0);u=i;n=o;q=p;while(1){T=r;ia=y;ja=s;m=v[a+8>>2];Z=z[m+56>>2];_=z[m+40>>2];ma=z[m+24>>2];Q=z[m+52>>2];Y=z[m+36>>2];x=v[a+4>>2];y=z[x+56>>2];W=z[m+20>>2];r=z[x+52>>2];na=z[m+8>>2];L=z[m+48>>2];X=z[m+32>>2];J=z[m>>2];M=z[m+16>>2];R=z[a+56>>2];V=z[a+24>>2];aa=z[a+40>>2];ba=z[m+4>>2];D=z[x+48>>2];da=z[a+48>>2];ea=z[a+16>>2];fa=z[a+32>>2];ga=z[a+52>>2];ha=z[a+20>>2];oa=z[a+36>>2];m=v[b+4>>2];pa=z[m+52>>2];sa=z[m+56>>2];ta=z[m+72>>2];E=m- -64|0;ua=z[E>>2];va=z[m+68>>2];wa=z[m+88>>2];s=z[m+80>>2];G=z[m+84>>2];ya=z[m+48>>2];v[k+268>>2]=0;S=s;H=C(C(1)/C(K(C(C(i*i)+C(C(p*p)+C(o*o))))));s=C(p*H);U=C(-s);qa=G;G=C(o*H);H=C(i*H);z[k+264>>2]=C(C(S*U)-C(qa*G))-C(wa*H);z[k+260>>2]=C(C(ua*U)-C(va*G))-C(ta*H);z[k+256>>2]=C(C(ya*U)-C(pa*G))-C(sa*H);x=IV(m,k+256|0);y=C(C(R*H)+C(C(V*s)+C(G*aa)))>C(0)?y:C(-y);D=C(C(da*H)+C(C(ea*s)+C(G*fa)))>C(0)?D:C(-D);r=C(C(ga*H)+C(C(ha*s)+C(G*oa)))>C(0)?r:C(-r);X=C(L+C(C(X*y)+C(C(J*D)+C(M*r))));x=v[m+152>>2]+B(x,12)|0;J=z[x+8>>2];M=z[x>>2];R=z[x+4>>2];V=C(I+C(C(z[m+80>>2]*J)+C(C(z[m+48>>2]*M)+C(R*z[E>>2]))));L=C(X-V);Y=C(Q+C(C(Y*y)+C(C(ba*D)+C(r*W))));W=C(P+C(C(z[m+84>>2]*J)+C(C(z[m+52>>2]*M)+C(R*z[m+68>>2]))));Q=C(Y-W);Z=C(Z+C(C(_*y)+C(C(na*D)+C(r*ma))));J=C(O+C(C(z[m+88>>2]*J)+C(C(z[m+56>>2]*M)+C(R*z[m+72>>2]))));D=C(Z-J);y=C(C(C(C(s*C(-L))-C(G*Q))-C(H*D))-$);if(y>C(0)){m=0;r=z[e+8>>2];M=z[e>>2];R=z[e+4>>2];_=C(C(H*r)+C(C(s*M)+C(G*R)));if(_>=C(0)){break a}s=N;N=C(s-C(y/_));if(N>s){if(N>C(1)){break a}u=z[d+8>>2];n=z[d+4>>2];q=z[d>>2];v[k+76>>2]=0;v[k+60>>2]=0;v[k+44>>2]=0;s=C(q+C(M*N));q=C(s-I);A=C(q+z[k+64>>2]);z[k+64>>2]=A;y=C(n+C(R*N));n=C(y-P);I=C(n+z[k+68>>2]);z[k+68>>2]=I;r=C(u+C(r*N));u=C(r-O);P=C(u+z[k+72>>2]);z[k+72>>2]=P;O=C(q+z[k+48>>2]);z[k+48>>2]=O;D=C(n+z[k+52>>2]);z[k+52>>2]=D;L=C(u+z[k+56>>2]);z[k+56>>2]=L;q=C(q+z[k+32>>2]);z[k+32>>2]=q;n=C(n+z[k+36>>2]);z[k+36>>2]=n;u=C(u+z[k+40>>2]);z[k+40>>2]=u;Q=z[k+96>>2];J=z[k+100>>2];M=z[k+104>>2];v[k+172>>2]=0;z[k+168>>2]=M-u;z[k+164>>2]=J-n;z[k+160>>2]=Q-q;q=z[k+112>>2];n=z[k+116>>2];u=z[k+120>>2];v[k+188>>2]=0;z[k+184>>2]=u-L;z[k+180>>2]=n-D;z[k+176>>2]=q-O;q=z[k+128>>2];n=z[k+132>>2];u=z[k+136>>2];v[k+204>>2]=0;z[k+200>>2]=u-P;z[k+196>>2]=n-I;z[k+192>>2]=q-A;m=v[b+4>>2];u=z[m+56>>2];A=z[m+52>>2];I=z[m+72>>2];E=m- -64|0;P=z[E>>2];O=z[m+68>>2];q=z[m+88>>2];n=z[m+80>>2];D=z[m+84>>2];L=z[m+48>>2];v[k+268>>2]=0;S=q;q=C(-H);qa=C(n*U);n=C(-G);z[k+264>>2]=C(S*q)+C(qa+C(D*n));z[k+260>>2]=C(I*q)+C(C(P*U)+C(O*n));z[k+256>>2]=C(u*q)+C(C(L*U)+C(A*n));x=IV(m,k+256|0);x=v[m+152>>2]+B(x,12)|0;q=z[x+8>>2];n=z[x>>2];u=z[x+4>>2];J=C(r+C(C(z[m+88>>2]*q)+C(C(z[m+56>>2]*n)+C(u*z[m+72>>2]))));D=C(Z-J);W=C(y+C(C(z[m+84>>2]*q)+C(C(z[m+52>>2]*n)+C(u*z[m+68>>2]))));Q=C(Y-W);V=C(s+C(C(z[m+80>>2]*q)+C(C(z[m+48>>2]*n)+C(u*z[E>>2]))));L=C(X-V);q=p;n=o;u=i;I=s;P=y;O=r;i=C(34028234663852886e22)}else{i=A}}else{i=A}G=i;x=v[k+224>>2];E=x<<4;m=E+(k+96|0)|0;v[m+12>>2]=0;z[m+8>>2]=Z;z[m+4>>2]=Y;z[m>>2]=X;m=E+(k+32|0)|0;v[m+12>>2]=0;z[m+8>>2]=J;z[m+4>>2]=W;z[m>>2]=V;m=E+(k+160|0)|0;v[m+12>>2]=0;z[m+8>>2]=D;z[m+4>>2]=Q;z[m>>2]=L;v[k+224>>2]=x+1;c:{d:{switch(x-1|0){case 0:s=z[k+168>>2];i=C(z[k+184>>2]-s);y=z[k+160>>2];o=C(z[k+176>>2]-y);r=z[k+164>>2];p=C(z[k+180>>2]-r);A=C(C(i*i)+C(C(o*o)+C(p*p)));if(A<=C(1.1920928955078125e-7)){v[k+224>>2]=1;m=v[k+164>>2];v[k+256>>2]=v[k+160>>2];v[k+260>>2]=m;m=v[k+172>>2];v[k+264>>2]=v[k+168>>2];v[k+268>>2]=m;break c}S=i;i=C(F(C(C(C(C(C(-y)*o)-C(p*r))-C(s*i))/A),C(1)));i=i>C(0)?i:C(0);z[k+264>>2]=s+C(S*i);z[k+260>>2]=r+C(p*i);z[k+256>>2]=y+C(o*i);break c;case 1:KV(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break c;case 2:O_(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break c;default:break d}}z[k+264>>2]=D;z[k+260>>2]=Q;z[k+256>>2]=L}s=z[k+264>>2];i=C(-s);y=z[k+260>>2];o=C(-y);r=z[k+256>>2];p=C(-r);A=C(C(s*s)+C(C(r*r)+C(y*y)));if(la>2]}d=w[m+32|0];I=C(0);D=C(0);m=!(A>ka)|x;i=m?u:i;p=m?q:p;o=m?n:o;q=C(K(C(C(i*i)+C(C(p*p)+C(o*o)))));if(!(q<=C(1.1920928955078125e-7))){n=i;i=C(C(1)/q);ra=C(n*i);D=C(p*i);I=C(o*i)}v[l+268>>2]=0;z[l+264>>2]=-ra;z[l+260>>2]=-I;z[l+256>>2]=-D;z[l+240>>2]=N;v[l+252>>2]=v[k+236>>2];m=v[k+232>>2];v[l+244>>2]=v[k+228>>2];v[l+248>>2]=m;v[k+268>>2]=0;z[k+264>>2]=x?ja:s;z[k+260>>2]=x?ia:y;z[k+256>>2]=x?T:r;m=v[k+252>>2];E=v[k+248>>2];v[k+24>>2]=E;v[k+28>>2]=m;x=v[k+244>>2];ca=v[k+240>>2];v[k+16>>2]=ca;v[k+20>>2]=x;v[k+8>>2]=E;v[k+12>>2]=m;v[k>>2]=ca;v[k+4>>2]=x;JV(k+160|0,k+96|0,k+32|0,k+256|0,k+16|0,k,v[k+224>>2]);i=z[v[a+4>>2]+16>>2];o=z[k+16>>2];p=z[k+20>>2];q=z[k+24>>2];v[l+284>>2]=0;z[l+280>>2]=q+(d?C(ra*i):C(-0));z[l+276>>2]=p+(d?C(I*i):C(-0));z[l+272>>2]=o+(d?C(D*i):C(-0));m=1}xa=k+272|0;if(m){d=v[l+244>>2];v[f>>2]=v[l+240>>2];v[f+4>>2]=d;d=v[l+252>>2];v[f+8>>2]=v[l+248>>2];v[f+12>>2]=d;if(!(!j|z[l+240>>2]!=C(0))){j=v[a+4>>2];k=v[b+4>>2];z[l+224>>2]=C(z[j+16>>2]+z[k+16>>2])*C(100);t[l+215|0]=0;v[l+168>>2]=0;v[l+172>>2]=0;v[l+160>>2]=0;v[l+164>>2]=0;v[l+152>>2]=0;v[l+156>>2]=0;v[l+144>>2]=0;v[l+148>>2]=0;v[l+136>>2]=0;v[l+140>>2]=0;v[l+128>>2]=0;v[l+132>>2]=0;v[l+192>>2]=0;d=v[a+8>>2];v[l+56>>2]=d;v[l+48>>2]=141468;v[l+52>>2]=j;j=v[d+12>>2];v[l+72>>2]=v[d+8>>2];v[l+76>>2]=j;j=v[d+20>>2];v[l+80>>2]=v[d+16>>2];v[l+84>>2]=j;j=v[d+28>>2];v[l+88>>2]=v[d+24>>2];v[l+92>>2]=j;j=v[d+36>>2];v[l+96>>2]=v[d+32>>2];v[l+100>>2]=j;j=v[d+44>>2];v[l+104>>2]=v[d+40>>2];v[l+108>>2]=j;j=v[d+52>>2];v[l+112>>2]=v[d+48>>2];v[l+116>>2]=j;j=v[d+60>>2];v[l+120>>2]=v[d+56>>2];v[l+124>>2]=j;j=v[d+4>>2];v[l+64>>2]=v[d>>2];v[l+68>>2]=j;i=z[l+68>>2];z[l+68>>2]=z[l+80>>2];o=z[l+88>>2];p=z[l+72>>2];z[l+72>>2]=z[l+96>>2];z[l+80>>2]=i;z[l+96>>2]=p;z[l+88>>2]=z[l+100>>2];z[l+100>>2]=o;v[l+40>>2]=141216;v[l+44>>2]=k;e:{f:{if(NX(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 f}v[l+16>>2]=1065353216;c=v[l+28>>2];v[l+8>>2]=v[l+24>>2];v[l+12>>2]=c;c=v[l+20>>2];v[l>>2]=v[l+16>>2];v[l+4>>2]=c;if(K_(a,b,l+220|0,l+216|0,w[l+215|0],0,l,l+128|0)-5>>>0<=1){break f}v[l+280>>2]=0;v[l+284>>2]=0;v[l+272>>2]=0;v[l+276>>2]=0;i=z[e+8>>2];o=z[e>>2];p=z[e+4>>2];v[l+268>>2]=0;q=C(C(1)/C(K(C(C(i*i)+C(C(o*o)+C(p*p))))));z[l+264>>2]=q*C(-i);z[l+260>>2]=q*C(-p);z[l+256>>2]=q*C(-o);i=C(0);break e}a=v[l+140>>2];v[l+280>>2]=v[l+136>>2];v[l+284>>2]=a;a=v[l+132>>2];v[l+272>>2]=v[l+128>>2];v[l+276>>2]=a;a=v[l+164>>2];v[l+256>>2]=v[l+160>>2];v[l+260>>2]=a;a=v[l+172>>2];v[l+264>>2]=v[l+168>>2];v[l+268>>2]=a;i=z[l+192>>2]}z[f>>2]=i>2];v[h>>2]=v[l+272>>2];v[h+4>>2]=a;a=v[l+284>>2];v[h+8>>2]=v[l+280>>2];v[h+12>>2]=a;a=v[l+260>>2];v[g>>2]=v[l+256>>2];v[g+4>>2]=a;a=v[l+268>>2];v[g+8>>2]=v[l+264>>2];v[g+12>>2]=a}xa=l+288|0;return m}function yC(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=0,t=0,u=C(0),A=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;if(w[a+7648|0]){a=1}else{p=a+16|0;e=xa-160|0;xa=e;r=b+72|0;a=1;a:{b:{switch(x[b+98>>1]){case 3:if(x[b+96>>1]){a=v[b+52>>2];h=v[b+48>>2];d=z[b+56>>2];v[e+28>>2]=0;z[e+24>>2]=d;v[e+16>>2]=h;v[e+20>>2]=a;d=z[b+8>>2];f=z[b+4>>2];u=z[b>>2];z[e>>2]=u;z[e+4>>2]=f;v[e+12>>2]=0;z[e+8>>2]=d;m=z[b+24>>2];j=z[b+36>>2];g=z[b+16>>2];n=z[b+28>>2];k=z[b+40>>2];i=z[b+20>>2];o=z[b+32>>2];l=z[b+44>>2];A=z[b+12>>2];v[e+140>>2]=0;v[e+124>>2]=0;v[e+108>>2]=0;v[e+92>>2]=0;v[e+76>>2]=0;z[e+72>>2]=l;z[e+68>>2]=o;z[e- -64>>2]=i;v[e+60>>2]=0;z[e+56>>2]=k;z[e+52>>2]=n;z[e+48>>2]=g;v[e+44>>2]=0;z[e+40>>2]=j;z[e+36>>2]=m;l=C((l>C(0)?l:C(-l))+C(9.999999974752427e-7));z[e+120>>2]=l;o=C((o>C(0)?o:C(-o))+C(9.999999974752427e-7));z[e+116>>2]=o;i=C((i>C(0)?i:C(-i))+C(9.999999974752427e-7));z[e+112>>2]=i;k=C((k>C(0)?k:C(-k))+C(9.999999974752427e-7));z[e+104>>2]=k;n=C((n>C(0)?n:C(-n))+C(9.999999974752427e-7));z[e+100>>2]=n;g=C((g>C(0)?g:C(-g))+C(9.999999974752427e-7));z[e+96>>2]=g;j=C((j>C(0)?j:C(-j))+C(9.999999974752427e-7));z[e+88>>2]=j;m=C((m>C(0)?m:C(-m))+C(9.999999974752427e-7));z[e+84>>2]=m;z[e+136>>2]=C(l*d)+C(C(i*u)+C(f*o));z[e+132>>2]=C(k*d)+C(C(g*u)+C(f*n));z[e+32>>2]=A;g=C((A>C(0)?A:C(-A))+C(9.999999974752427e-7));z[e+80>>2]=g;z[e+128>>2]=C(j*d)+C(C(g*u)+C(f*m));a=nC(p,e,c,r);break a}z[e>>2]=z[b+72>>2];z[e+4>>2]=z[b+76>>2];z[e+8>>2]=z[b+80>>2];z[e+12>>2]=z[b+84>>2];z[e+16>>2]=z[b+88>>2];z[e+20>>2]=z[b+92>>2];q=xa-16|0;xa=q;b=v[p+28>>2];c:{if(b){while(1){a=B(h,24)+p|0;d:{if(z[e>>2]>z[a+172>>2]|z[a+160>>2]>z[e+12>>2]|(z[e+4>>2]>z[a+176>>2]|z[a+164>>2]>z[e+16>>2])){break d}if(z[e+8>>2]>z[a+180>>2]|z[a+168>>2]>z[e+20>>2]){break d}v[q+8>>2]=-1082130432;if(!(Ba[v[v[c>>2]>>2]](c,q+8|0,((h<<3)+p|0)+32|0)|0)){h=0;break c}b=v[p+28>>2]}h=h+1|0;if(h>>>0>>0){continue}break}}h=1;if(!v[p+636>>2]){break c}d=z[p+656>>2];f=z[p+672>>2];if(z[e>>2]>C(d+f)|z[e+12>>2]>2];f=z[p+676>>2];if(z[e+4>>2]>C(d+f)|z[e+16>>2]>2];f=z[p+680>>2];if(z[e+8>>2]>C(d+f)|z[e+20>>2]>2]<<2)|0;a=v[b>>2];H=(a|0)<0?a^-1:a|-2147483648;a=v[b+12>>2];I=(a|0)<0?a^-1:a|-2147483648;J=p+688|0;D=1;while(1){e:{b=t<<2;f:{if(!v[b+J>>2]){break f}a=(t<<5)+p|0;d=z[a+736>>2];f=z[a+752>>2];if(z[e>>2]>C(d+f)|z[e+12>>2]>2];f=z[a+756>>2];if(z[e+4>>2]>C(d+f)|z[e+16>>2]>2];f=z[a+760>>2];if(z[e+8>>2]>C(d+f)|z[e+20>>2]>2]){break g}b=E+(a<<5)|0;d=z[b+960>>2];f=z[b+976>>2];if(z[e>>2]>C(d+f)|z[e+12>>2]>2];f=z[b+980>>2];if(z[e+4>>2]>C(d+f)|z[e+16>>2]>2];f=z[b+984>>2];if(z[e+8>>2]>C(d+f)|z[e+20>>2]>2];i:{if(!b){break i}h=F+(r<<5)|0;d=z[h+2080>>2];f=z[h+2096>>2];if(z[e>>2]>C(d+f)|z[e+12>>2]>2];f=z[h+2100>>2];if(z[e+4>>2]>C(d+f)|z[e+16>>2]>2];f=z[h+2104>>2];if(z[e+8>>2]>C(d+f)|z[e+20>>2]>2]+(v[M+932>>2]+v[K+708>>2]|0)|0;h=v[p+20>>2]+(s<<5)|0;s=v[p+24>>2]+(s<<3)|0;while(1){j:{if(H>>>0>y[h+28>>2]){break j}if(I>>>0>2]){break i}d=z[h>>2];f=z[h+16>>2];if(z[e>>2]>C(d+f)|z[e+12>>2]>2];f=z[h+20>>2];if(z[e+4>>2]>C(d+f)|z[e+16>>2]>2];f=z[h+24>>2];if(z[e+8>>2]>C(d+f)|z[e+20>>2]>2]=-1082130432;if(!(Ba[v[v[c>>2]>>2]](c,q+12|0,s)|0)){break h}}s=s+8|0;h=h+32|0;b=b-1|0;if(b){continue}break}}G=r>>>0<4;r=r+1|0;if((r|0)!=5){continue}break g}break}if(G){break e}}a=a+1|0;if((a|0)!=5){continue}break}}D=t>>>0<4;t=t+1|0;if((t|0)!=5){continue}}break}h=!D}xa=q+16|0;a=h&1;break a;case 2:a=v[b+52>>2];h=v[b+48>>2];d=z[b+56>>2];v[e+28>>2]=0;z[e+24>>2]=d;v[e+16>>2]=h;v[e+20>>2]=a;d=z[b+8>>2];f=z[b+4>>2];u=z[b>>2];z[e>>2]=u;z[e+4>>2]=f;v[e+12>>2]=0;z[e+8>>2]=d;m=z[b+24>>2];j=z[b+36>>2];g=z[b+16>>2];n=z[b+28>>2];k=z[b+40>>2];i=z[b+20>>2];o=z[b+32>>2];l=z[b+44>>2];A=z[b+12>>2];v[e+140>>2]=0;v[e+124>>2]=0;v[e+108>>2]=0;v[e+92>>2]=0;v[e+76>>2]=0;z[e+72>>2]=l;z[e+68>>2]=o;z[e- -64>>2]=i;v[e+60>>2]=0;z[e+56>>2]=k;z[e+52>>2]=n;z[e+48>>2]=g;v[e+44>>2]=0;z[e+40>>2]=j;z[e+36>>2]=m;l=C((l>C(0)?l:C(-l))+C(9.999999974752427e-7));z[e+120>>2]=l;o=C((o>C(0)?o:C(-o))+C(9.999999974752427e-7));z[e+116>>2]=o;i=C((i>C(0)?i:C(-i))+C(9.999999974752427e-7));z[e+112>>2]=i;k=C((k>C(0)?k:C(-k))+C(9.999999974752427e-7));z[e+104>>2]=k;n=C((n>C(0)?n:C(-n))+C(9.999999974752427e-7));z[e+100>>2]=n;g=C((g>C(0)?g:C(-g))+C(9.999999974752427e-7));z[e+96>>2]=g;j=C((j>C(0)?j:C(-j))+C(9.999999974752427e-7));z[e+88>>2]=j;m=C((m>C(0)?m:C(-m))+C(9.999999974752427e-7));z[e+84>>2]=m;z[e+136>>2]=C(l*d)+C(C(i*u)+C(f*o));z[e+132>>2]=C(k*d)+C(C(g*u)+C(f*n));z[e+32>>2]=A;g=C((A>C(0)?A:C(-A))+C(9.999999974752427e-7));z[e+80>>2]=g;z[e+128>>2]=C(j*d)+C(C(g*u)+C(f*m));a=nC(p,e,c,r);break a;case 0:d=z[b+108>>2];a=v[b+104>>2];D=v[b+100>>2];v[e+12>>2]=0;z[e+8>>2]=d;v[e>>2]=D;v[e+4>>2]=a;d=z[b+112>>2];z[e+16>>2]=d*d;s=xa-16|0;xa=s;b=v[p+28>>2];k:{if(b){while(1){a=B(h,24)+p|0;f=z[a+168>>2];m=z[a+180>>2];d=C(z[e+8>>2]-C(C(f+m)*C(.5)));f=C(C(m-f)*C(.5));m=d>2];n=z[a+172>>2];j=C(z[e>>2]-C(C(g+n)*C(.5)));g=C(C(n-g)*C(.5));n=g>j?j:g;i=z[a+164>>2];o=z[a+176>>2];k=C(z[e+4>>2]-C(C(i+o)*C(.5)));i=C(C(o-i)*C(.5));o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d)))){v[s+8>>2]=-1082130432;if(!(Ba[v[v[c>>2]>>2]](c,s+8|0,((h<<3)+p|0)+32|0)|0)){break k}b=v[p+28>>2]}h=h+1|0;if(h>>>0>>0){continue}break}}q=1;if(!v[p+636>>2]){break k}d=C(z[e+8>>2]-z[p+664>>2]);f=z[p+680>>2];m=d>2]-z[p+656>>2]);g=z[p+672>>2];n=g>j?j:g;k=C(z[e+4>>2]-z[p+660>>2]);i=z[p+676>>2];o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d))))){break k}b=r+(v[p+644>>2]<<2)|0;a=v[b>>2];H=(a|0)<0?a^-1:a|-2147483648;a=v[b+12>>2];I=(a|0)<0?a^-1:a|-2147483648;J=p+688|0;D=1;while(1){l:{b=t<<2;m:{if(!v[b+J>>2]){break m}a=(t<<5)+p|0;d=C(z[e+8>>2]-z[a+744>>2]);f=z[a+760>>2];m=d>2]-z[a+736>>2]);g=z[a+752>>2];n=g>j?j:g;k=C(z[e+4>>2]-z[a+740>>2]);i=z[a+756>>2];o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d))))){break m}K=b+p|0;E=B(t,224)+p|0;L=E+912|0;a=0;while(1){h=a<<2;n:{if(!v[h+L>>2]){break n}b=E+(a<<5)|0;d=C(z[e+8>>2]-z[b+968>>2]);f=z[b+984>>2];m=d>2]-z[b+960>>2]);g=z[b+976>>2];n=g>j?j:g;k=C(z[e+4>>2]-z[b+964>>2]);i=z[b+980>>2];o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d))))){break n}M=h+E|0;F=(B(t,1120)+p|0)+B(a,224)|0;N=F+2032|0;r=0;G=1;while(1){o:{q=r<<2;b=v[q+N>>2];p:{if(!b){break p}h=F+(r<<5)|0;d=C(z[e+8>>2]-z[h+2088>>2]);f=z[h+2104>>2];m=d>2]-z[h+2080>>2]);g=z[h+2096>>2];n=g>j?j:g;k=C(z[e+4>>2]-z[h+2084>>2]);i=z[h+2100>>2];o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d))))){break p}h=v[(q+F|0)+2052>>2]+(v[M+932>>2]+v[K+708>>2]|0)|0;q=v[p+20>>2]+(h<<5)|0;h=v[p+24>>2]+(h<<3)|0;while(1){q:{if(H>>>0>y[q+28>>2]){break q}if(I>>>0>2]){break p}d=C(z[e+8>>2]-z[q+8>>2]);f=z[q+24>>2];m=d>2]-z[q>>2]);g=z[q+16>>2];n=g>j?j:g;k=C(z[e+4>>2]-z[q+4>>2]);i=z[q+20>>2];o=i>k?k:i;l=d;d=C(-f);d=C(l-(d>2]>=C(l+C(f+C(d*d))))){break q}v[s+12>>2]=-1082130432;if(!(Ba[v[v[c>>2]>>2]](c,s+12|0,h)|0)){break o}}h=h+8|0;q=q+32|0;b=b-1|0;if(b){continue}break}}G=r>>>0<4;r=r+1|0;if((r|0)!=5){continue}break n}break}if(G){break l}}a=a+1|0;if((a|0)!=5){continue}break}}D=t>>>0<4;t=t+1|0;if((t|0)!=5){continue}}break}q=!D}xa=s+16|0;a=q&1;break a;case 4:break b;default:break a}}a=v[b+52>>2];h=v[b+48>>2];d=z[b+56>>2];v[e+28>>2]=0;z[e+24>>2]=d;v[e+16>>2]=h;v[e+20>>2]=a;d=z[b+8>>2];f=z[b+4>>2];u=z[b>>2];z[e>>2]=u;z[e+4>>2]=f;v[e+12>>2]=0;z[e+8>>2]=d;m=z[b+24>>2];j=z[b+36>>2];g=z[b+16>>2];n=z[b+28>>2];k=z[b+40>>2];i=z[b+20>>2];o=z[b+32>>2];l=z[b+44>>2];A=z[b+12>>2];v[e+140>>2]=0;v[e+124>>2]=0;v[e+108>>2]=0;v[e+92>>2]=0;v[e+76>>2]=0;z[e+72>>2]=l;z[e+68>>2]=o;z[e- -64>>2]=i;v[e+60>>2]=0;z[e+56>>2]=k;z[e+52>>2]=n;z[e+48>>2]=g;v[e+44>>2]=0;z[e+40>>2]=j;z[e+36>>2]=m;l=C((l>C(0)?l:C(-l))+C(9.999999974752427e-7));z[e+120>>2]=l;o=C((o>C(0)?o:C(-o))+C(9.999999974752427e-7));z[e+116>>2]=o;i=C((i>C(0)?i:C(-i))+C(9.999999974752427e-7));z[e+112>>2]=i;k=C((k>C(0)?k:C(-k))+C(9.999999974752427e-7));z[e+104>>2]=k;n=C((n>C(0)?n:C(-n))+C(9.999999974752427e-7));z[e+100>>2]=n;g=C((g>C(0)?g:C(-g))+C(9.999999974752427e-7));z[e+96>>2]=g;j=C((j>C(0)?j:C(-j))+C(9.999999974752427e-7));z[e+88>>2]=j;m=C((m>C(0)?m:C(-m))+C(9.999999974752427e-7));z[e+84>>2]=m;z[e+136>>2]=C(l*d)+C(C(i*u)+C(f*o));z[e+132>>2]=C(k*d)+C(C(g*u)+C(f*n));z[e+32>>2]=A;g=C((A>C(0)?A:C(-A))+C(9.999999974752427e-7));z[e+80>>2]=g;z[e+128>>2]=C(j*d)+C(C(g*u)+C(f*m));a=nC(p,e,c,r)}xa=e+160|0}return a|0} +function xI(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,u=0,z=0,A=0,C=0,D=0,E=0,F=0;l=xa-96|0;xa=l;b=a+388|0;g=v[a+392>>2];a:{if(!g){break a}j=v[b>>2];if(g-1>>>0>=3){e=g&-4;while(1){i=c<<2;v[v[i+j>>2]+20>>2]=-1;v[v[j+(i|4)>>2]+20>>2]=-1;v[v[j+(i|8)>>2]+20>>2]=-1;v[v[j+(i|12)>>2]+20>>2]=-1;c=c+4|0;f=f+4|0;if((e|0)!=(f|0)){continue}break}}e=g&3;if(!e){break a}while(1){v[v[j+(c<<2)>>2]+20>>2]=-1;c=c+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}b:{if(g>>>0>=(v[a+396>>2]>>>1&1073741823)>>>0){v[a+392>>2]=0;break b}v[l+16>>2]=0;e=v[b+4>>2];if((e|0)<0){c=v[b>>2];d=c+(e<<2)|0;while(1){v[d>>2]=v[l+16>>2];d=d+4|0;if(c>>>0>d>>>0){continue}break}}v[b+4>>2]=0;e=b;c=0;d=v[a+392>>2];c:{if(!d){break c}i=d<<2;if(!i){break c}c=v[37696];b=c+12|0;c=(A=b,C=i,D=Ba[v[v[c>>2]+20>>2]](c)|0?59049:63804,E=16608,F=553,z=v[v[b>>2]+8>>2],Ba[z](A|0,C|0,D|0,E|0,F|0)|0)}g=v[e>>2];b=v[e+4>>2];if((b|0)>0){i=(b<<2)+c|0;b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}g=v[e>>2]}if(!(!g|v[e+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,g)}v[e+8>>2]=d;v[e>>2]=c}if(v[a+488>>2]){m=a+340|0;j=a+316|0;g=a+328|0;i=a+304|0;d=0;while(1){k=v[v[a+484>>2]+(d<<2)>>2];if(v[k+36>>2]){e=v[k+32>>2];h=0;while(1){f=v[v[k+28>>2]>>2]+B(e+h|0,12)|0;c=v[a+308>>2];d:{if(c>>>0>=(v[a+312>>2]&2147483647)>>>0){sI(i,f);break d}b=v[f+4>>2];c=v[a+304>>2]+B(c,12)|0;v[c>>2]=v[f>>2];v[c+4>>2]=b;v[c+8>>2]=v[f+8>>2];v[a+308>>2]=v[a+308>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}if(v[k+60>>2]){e=v[k+56>>2];h=0;while(1){f=v[v[k+52>>2]>>2]+B(e+h|0,12)|0;c=v[a+332>>2];e:{if(c>>>0>=(v[a+336>>2]&2147483647)>>>0){sI(g,f);break e}b=v[f+4>>2];c=v[a+328>>2]+B(c,12)|0;v[c>>2]=v[f>>2];v[c+4>>2]=b;v[c+8>>2]=v[f+8>>2];v[a+332>>2]=v[a+332>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}if(v[k+48>>2]){e=v[k+44>>2];h=0;while(1){f=v[v[k+40>>2]>>2]+B(e+h|0,12)|0;c=v[a+320>>2];f:{if(c>>>0>=(v[a+324>>2]&2147483647)>>>0){sI(j,f);break f}b=v[f+4>>2];c=v[a+316>>2]+B(c,12)|0;v[c>>2]=v[f>>2];v[c+4>>2]=b;v[c+8>>2]=v[f+8>>2];v[a+320>>2]=v[a+320>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}if(v[k+72>>2]){e=v[k+68>>2];h=0;while(1){f=v[v[k+64>>2]>>2]+B(e+h|0,12)|0;c=v[a+344>>2];g:{if(c>>>0>=(v[a+348>>2]&2147483647)>>>0){sI(m,f);break g}b=v[f+4>>2];c=v[a+340>>2]+B(c,12)|0;v[c>>2]=v[f>>2];v[c+4>>2]=b;v[c+8>>2]=v[f+8>>2];v[a+344>>2]=v[a+344>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}d=d+1|0;if(d>>>0>2]){continue}break}}h=0;v[a+488>>2]=0;t[l+80|0]=1;v[l+88>>2]=0;v[l+92>>2]=16;v[l+84>>2]=l+16;b=v[a+560>>2];c=v[b>>2];if(c){v[b>>2]=v[c>>2]}v[l+12>>2]=c;if(c){while(1){CI(c+4|0);CI(c+16|0);CI(c+28|0);CI(c+40|0);b=v[l+88>>2];h:{if(b>>>0>=(v[l+92>>2]&2147483647)>>>0){c=0;e=l+16|0;b=v[e+76>>2];d=b&2147483647?b<<1:1;i:{if(!d){break i}i=d<<2;if(!(w[e+64|0]|i>>>0>64)){t[e+64|0]=1;c=e;break i}if(!i){break i}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?61907:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,i,b,16608,553)|0}p=v[e+72>>2];i=(p<<2)+c|0;if((p|0)>0){f=v[e+68>>2];b=c;while(1){v[b>>2]=v[f>>2];f=f+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[l+12>>2];j:{if(v[e+76>>2]<0){break j}i=v[e+68>>2];if((i|0)==(e|0)){t[e+64|0]=0;break j}if(!i){break j}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,i);p=v[e+72>>2]}v[e+76>>2]=d;v[e+68>>2]=c;v[e+72>>2]=p+1;break h}v[v[l+84>>2]+(b<<2)>>2]=v[l+12>>2];v[l+88>>2]=b+1}b=v[a+560>>2];c=v[b>>2];if(c){v[b>>2]=v[c>>2]}v[l+12>>2]=c;if(c){continue}break}}if(v[l+88>>2]){while(1){c=v[v[l+84>>2]+(h<<2)>>2];b=v[a+560>>2];v[c>>2]=v[b>>2];v[b>>2]=c;h=h+1|0;if(h>>>0>2]){continue}break}}b=v[l+92>>2];k:{if((b|0)<0|!(b&2147483647)){break k}c=v[l+84>>2];if((c|0)==(l+16|0)|!c){break k}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}b=v[a+272>>2];h=Ba[v[v[b>>2]+52>>2]](b)|0;b=v[a+272>>2];c=Ba[v[v[b>>2]+56>>2]](b)|0;if(h){b=1073741823;d=1073741823;while(1){h=h-1|0;i=v[c>>2];e=v[c+4>>2];if(!((i|0)==(d|0)&(e|0)==(b|0))){n=xa-16|0;xa=n;q=v[a+196>>2];k=v[c+4>>2];j=q+(k<<3)|0;g=v[j+4>>2];m=v[c>>2];d=q+(m<<3)|0;b=v[d+4>>2];l:{if((g&b)==-1){d=v[d>>2];b=v[j>>2];v[n+4>>2]=k;v[n>>2]=m;d=d&3;b=b&3;g=B((b|0)<(d|0)?d:b,12)+a|0;d=g+304|0;b=v[g+308>>2];if(b>>>0>=(v[g+312>>2]&2147483647)>>>0){sI(d,n);break l}d=v[d>>2]+B(b,12)|0;b=v[n+4>>2];v[d>>2]=v[n>>2];v[d+4>>2]=b;v[d+8>>2]=v[n+8>>2];v[g+308>>2]=v[g+308>>2]+1;break l}f=k>>>0>>0?k:m;m=k>>>0>m>>>0?k:m;m:{if(!((b|0)==-1|(g|0)==-1)){b=v[a+376>>2];j=v[b+(v[(q+(m<<3)|0)+4>>2]<<1&-4)>>2];g=v[b+(v[(q+(f<<3)|0)+4>>2]<<1&-4)>>2];d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?31647:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,56,b,8887,1822)|0;v[b+4>>2]=-1;v[b>>2]=130904;v[b+8>>2]=0;v[b+12>>2]=0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b>>2]=130600;t[b+36|0]=0;v[b+40>>2]=v[g>>2];d=v[j>>2];v[b+52>>2]=j;v[b+48>>2]=g;v[b+44>>2]=d;o=a+444|0;break m}b=v[(q+(f<<3)|0)+4>>2];g=(b|0)!=-1&b;j=v[v[a+376>>2]+(v[(q+((g?f:m)<<3)|0)+4>>2]<<1&-4)>>2];d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?31495:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,52,b,8887,1809)|0;v[b+4>>2]=-1;v[b>>2]=130904;v[b+8>>2]=0;v[b+12>>2]=0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b>>2]=130576;t[b+36|0]=0;d=v[j>>2];v[b+48>>2]=j;v[b+44>>2]=g?m:f;v[b+40>>2]=d;o=a+404|0}v[n+4>>2]=m;v[n>>2]=f;k=0;n:{o:{q=v[o+20>>2];p:{if(!q){break p}m=v[n>>2];j=v[n+4>>2];d=m&65535|j<<16;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;k=q-1&(d>>>16^d);p=v[v[o+12>>2]+(k<<2)>>2];if((p|0)==-1){break p}g=v[o+8>>2];d=v[o+4>>2];while(1){f=d+B(p,12)|0;if((m|0)==v[f>>2]&(j|0)==v[f+4>>2]){break o}p=v[g+(p<<2)>>2];if((p|0)!=-1){continue}break}}t[n+15|0]=0;if(v[o+36>>2]==v[o+16>>2]){d=q?q<<1:16;if(d>>>0>q>>>0){kI(o,d);q=v[o+20>>2]}d=x[n>>1]|v[n+4>>2]<<16;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;k=q-1&(d>>>16^d)}g=v[o+28>>2];v[o+28>>2]=g+1;d=v[o+12>>2]+(k<<2)|0;v[v[o+8>>2]+(g<<2)>>2]=v[d>>2];v[d>>2]=g;v[o+36>>2]=v[o+36>>2]+1;v[o+32>>2]=v[o+32>>2]+1;j=v[o+4>>2]+B(g,12)|0;break n}t[n+15|0]=1;j=f}if(!w[n+15|0]){g=v[n+4>>2];d=v[n>>2];v[j+8>>2]=b;v[j>>2]=d;v[j+4>>2]=g}bI(b,v[a+400>>2],v[v[a+276>>2]+4>>2],v[v[a+192>>2]+4>>2],v[a+180>>2],a+208|0,a+196|0,a+304|0,a+328|0)}xa=n+16|0;d=i;b=e}c=c+8|0;if(h){continue}break}}g=v[a+320>>2]+v[a+308>>2]|0;c=v[a+532>>2];q:{if(!c){c=0;break q}if(!v[a+548>>2]){break q}J9(v[a+524>>2],255,c<<2);c=0;j=v[a+520>>2];b=v[a+528>>2];i=b-1|0;if(i){h=0;if(b-2>>>0>=3){e=i&-4;d=0;while(1){b=c|1;v[j+(c<<2)>>2]=b;f=j+(b<<2)|0;b=c|2;v[f>>2]=b;f=j+(b<<2)|0;b=c|3;v[f>>2]=b;c=c+4|0;v[j+(b<<2)>>2]=c;d=d+4|0;if((e|0)!=(d|0)){continue}break}}b=i&3;if(b){while(1){e=j+(c<<2)|0;c=c+1|0;v[e>>2]=c;h=h+1|0;if((b|0)!=(h|0)){continue}break}}b=v[a+528>>2]-1|0}else{b=0}v[j+(b<<2)>>2]=-1;v[a+548>>2]=0;v[a+540>>2]=0;c=v[a+532>>2]}o=a+512|0;if(c>>>0>>0){lI(o,g)}while(1){r=B(s,12)+a|0;u=v[r+332>>2];m=v[r+308>>2];r:{if(!m){break r}b=0;if(!u){i=v[a+196>>2];e=v[r+304>>2];h=0;if((m|0)!=1){b=m&-2;f=0;while(1){c=e+B(h,12)|0;v[c>>2]=v[i+(v[c>>2]<<3)>>2]&-4;v[c+4>>2]=v[i+(v[c+4>>2]<<3)>>2]&-4;c=e+B(h|1,12)|0;v[c>>2]=v[i+(v[c>>2]<<3)>>2]&-4;v[c+4>>2]=v[i+(v[c+4>>2]<<3)>>2]&-4;h=h+2|0;f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!(m&1)){break r}b=e+B(h,12)|0;v[b>>2]=v[i+(v[b>>2]<<3)>>2]&-4;v[b+4>>2]=v[i+(v[b+4>>2]<<3)>>2]&-4;break r}while(1){e=v[r+304>>2]+B(b,12)|0;f=v[e>>2];c=v[a+196>>2];v[e>>2]=v[c+(f<<3)>>2]&-4;j=v[e+4>>2];v[e+4>>2]=v[c+(j<<3)>>2]&-4;p=0;d=v[a+532>>2];s:{t:{if(!d){break t}c=f&65535|j<<16;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;p=d-1&(c>>>16^c);c=v[v[a+524>>2]+(p<<2)>>2];if((c|0)==-1){break t}g=v[a+520>>2];i=v[a+516>>2];while(1){e=i+(c<<3)|0;if((f|0)==v[e>>2]&(j|0)==v[e+4>>2]){break s}c=v[g+(c<<2)>>2];if((c|0)!=-1){continue}break}}c=v[a+540>>2];if((c|0)==-1){c=-1;e=d?d<<1:16;if(e>>>0>d>>>0){lI(o,e);d=v[a+532>>2];c=v[a+540>>2]}e=f&65535|j<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;p=d-1&(e>>>16^e)}e=v[a+520>>2]+(c<<2)|0;v[a+540>>2]=v[e>>2];d=e;e=v[a+524>>2]+(p<<2)|0;v[d>>2]=v[e>>2];v[e>>2]=c;v[a+548>>2]=v[a+548>>2]+1;v[a+544>>2]=v[a+544>>2]+1;c=v[a+516>>2]+(c<<3)|0;v[c>>2]=f;v[c+4>>2]=j}b=b+1|0;if((m|0)!=(b|0)){continue}break}}u:{if(!u){d=0;break u}f=v[a+532>>2]-1|0;q=v[a+196>>2];m=v[a+516>>2];j=v[a+524>>2];g=v[a+548>>2];k=v[r+328>>2];b=0;d=0;while(1){c=k+B(b,12)|0;n=v[c+4>>2];p=v[c>>2];v:{w:{if(!g){break w}c=p&65535|n<<16;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[j+((f&(c>>>16^c))<<2)>>2];if((c|0)==-1){break w}i=v[a+520>>2];while(1){e=m+(c<<3)|0;if((p|0)==v[e>>2]&(n|0)==v[e+4>>2]){break v}c=v[i+(c<<2)>>2];if((c|0)!=-1){continue}break}}c=k+B(d,12)|0;v[c>>2]=v[q+(p<<3)>>2]&-4;v[c+4>>2]=v[q+(n<<3)>>2]&-4;d=d+1|0}b=b+1|0;if((u|0)!=(b|0)){continue}break}}v[r+332>>2]=d;s=s+1|0;if((s|0)!=2){continue}break}b=v[a+272>>2];c=Ba[v[v[b>>2]+28>>2]](b)|0;b=v[a+272>>2];h=Ba[v[v[b>>2]+32>>2]](b)|0;if(c){i=a+280|0;e=a+292|0;while(1){c=c-1|0;b=v[h>>2];x:{if(v[v[a+148>>2]+(b>>>3&536870908)>>2]>>>b&1){break x}b=v[a+196>>2]+(b<<3)|0;if(v[b+4>>2]==-1){b=v[b>>2]&-4;v[l+16>>2]=b;d=v[a+284>>2];if(d>>>0>=(v[a+288>>2]&2147483647)>>>0){DI(i,l+16|0);break x}v[v[a+280>>2]+(d<<2)>>2]=b;v[a+284>>2]=d+1;break x}b=v[b>>2]&-4;v[l+16>>2]=b;d=v[a+296>>2];if(d>>>0>=(v[a+300>>2]&2147483647)>>>0){DI(e,l+16|0);break x}v[v[a+292>>2]+(d<<2)>>2]=b;v[a+296>>2]=d+1}h=h+4|0;if(c){continue}break}}J9(v[a+136>>2],0,v[a+140>>2]<<2);J9(v[a+148>>2],0,v[a+152>>2]<<2);xa=l+96|0}function IY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=0,n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,L=C(0),M=C(0),N=0,O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=C(0),Z=C(0),_=C(0),$=0,aa=C(0),ba=0,ca=0,da=C(0),ea=C(0),fa=0,ga=0,ha=C(0),ia=0,ja=0,ka=C(0),la=C(0),ma=C(0);m=xa-1536|0;xa=m;$=v[b>>2];q=$+4|0;JX(m+1416|0,q,$+16|0);j=z[e+24>>2];o=z[c+24>>2];n=z[e+16>>2];s=z[c+16>>2];u=C(z[c+20>>2]-z[e+20>>2]);z[m+1404>>2]=u;j=C(o-j);z[m+1408>>2]=j;o=C(s-n);z[m+1400>>2]=o;n=z[f+20>>2];s=z[d+20>>2];r=z[f+16>>2];p=z[d+16>>2];G=C(z[d+24>>2]-z[f+24>>2]);z[m+1392>>2]=G;n=C(s-n);z[m+1388>>2]=n;s=C(p-r);z[m+1384>>2]=s;G=C(j-G);z[m+1376>>2]=G;R=C(u-n);z[m+1372>>2]=R;Q=C(o-s);z[m+1368>>2]=Q;j=C(K(C(C(G*G)+C(C(Q*Q)+C(R*R)))));if(j>C(0)){o=C(C(1)/j);z[m+1376>>2]=G*o;z[m+1372>>2]=R*o;z[m+1368>>2]=Q*o}v[m+1360>>2]=1065353216;N=m+1344|0;v[N>>2]=1065353216;v[N+4>>2]=0;v[m+1352>>2]=0;v[m+1356>>2]=0;v[m+1336>>2]=0;v[m+1340>>2]=0;v[m+1328>>2]=1065353216;v[m+1332>>2]=0;DV(m+1264|0,a- -64|0,a+76|0,m+1328|0,m+1368|0,j);a:{if(!(z[$+4>>2]!=C(1)|z[$+8>>2]!=C(1)|z[$+12>>2]!=C(1))){j=z[m+1320>>2];o=z[m+1316>>2];S=z[m+1308>>2];T=z[m+1304>>2];L=z[d+20>>2];Y=z[d+16>>2];Z=z[d+24>>2];F=z[m+1284>>2];M=z[m+1280>>2];da=z[m+1312>>2];O=z[m+1272>>2];U=z[m+1264>>2];_=z[m+1268>>2];V=z[m+1300>>2];D=z[m+1276>>2];u=z[d>>2];H=C(-u);n=z[m+1288>>2];y=C(n+n);n=z[m+1292>>2];I=C(n+n);n=z[d+4>>2];s=z[d+8>>2];r=z[m+1296>>2];A=C(r+r);E=C(C(C(H*y)-C(I*n))-C(s*A));r=z[d+12>>2];p=C(C(r*r)+C(-.5));z[m+1232>>2]=C(C(A*p)+C(r*C(C(n*y)-C(u*I))))-C(s*E);z[m+1228>>2]=C(C(I*p)+C(r*C(C(u*A)-C(s*y))))-C(n*E);D=C(D+D);M=C(M+M);F=C(F+F);W=C(C(C(H*D)-C(M*n))-C(s*F));z[m+1220>>2]=C(C(F*p)+C(r*C(C(n*D)-C(u*M))))-C(s*W);z[m+1216>>2]=C(C(M*p)+C(r*C(C(u*F)-C(s*D))))-C(n*W);V=C(V+V);T=C(T+T);S=C(S+S);aa=C(C(C(H*V)-C(T*n))-C(s*S));Z=C(Z*C(-2));Y=C(Y*C(-2));L=C(L*C(-2));ea=C(C(s*Z)+C(C(u*Y)+C(n*L)));z[m+1244>>2]=C(C(s*ea)+C(C(Z*p)-C(r*C(C(u*L)-C(Y*n)))))+C(C(C(S*p)+C(r*C(C(n*V)-C(u*T))))-C(s*aa));z[m+1240>>2]=C(C(n*ea)+C(C(L*p)-C(r*C(C(s*Y)-C(Z*u)))))+C(C(C(T*p)+C(r*C(C(u*S)-C(s*V))))-C(n*aa));ha=H;H=C(U+U);U=C(_+_);O=C(O+O);_=C(C(C(ha*H)-C(U*n))-C(s*O));z[m+1208>>2]=C(C(O*p)+C(r*C(C(n*H)-C(u*U))))-C(s*_);z[m+1204>>2]=C(C(U*p)+C(r*C(C(u*O)-C(s*H))))-C(n*_);z[m+1200>>2]=C(C(H*p)+C(r*C(C(s*U)-C(n*O))))-C(u*_);z[m+1224>>2]=C(C(y*p)+C(r*C(C(s*I)-C(n*A))))-C(u*E);z[m+1212>>2]=C(C(D*p)+C(r*C(C(s*M)-C(n*F))))-C(u*W);z[m+1236>>2]=C(C(u*ea)+C(C(Y*p)-C(r*C(C(n*Z)-C(L*s)))))+C(C(C(V*p)+C(r*C(C(s*T)-C(n*S))))-C(u*aa));break a}r_(m+1200|0,m+1264|0,d,q);j=z[m+1256>>2];o=z[m+1252>>2];da=z[m+1248>>2]}z[m+1256>>2]=j+g;z[m+1252>>2]=o+g;z[m+1248>>2]=da+g;t[m+1184|0]=1;v[m+1192>>2]=0;v[m+1196>>2]=64;q=m+928|0;v[m+1188>>2]=q;v[m+912>>2]=142052;v[m+920>>2]=q;v[m+916>>2]=2;q=v[$+40>>2];Ba[v[(x[q+4>>1]<<2)+142064>>2]](q,m+1200|0,m+912|0,1,1);ba=v[m+1192>>2];b:{if(!ba){l=C(34028234663852886e22);break b}X=v[m+1188>>2];z[m+896>>2]=z[a+76>>2];z[m+900>>2]=z[a+80>>2];z[m+904>>2]=z[a+84>>2];j=z[a+68>>2];o=z[a+64>>2];z[m+888>>2]=z[a+72>>2]+g;z[m+884>>2]=j+g;z[m+880>>2]=o+g;t[m+864|0]=1;v[m+872>>2]=0;v[m+876>>2]=64;q=m+608|0;v[m+868>>2]=q;v[m+336>>2]=0;N=q;q=m+336|0;JY(N,ba,q);t[m+592|0]=1;v[m+600>>2]=0;v[m+604>>2]=64;v[m+596>>2]=q;N=v[m+1192>>2];v[m+80>>2]=0;JY(q,N,m+80|0);P=v[m+596>>2];fa=v[m+868>>2];while(1){v[m+136>>2]=-25165825;v[m+140>>2]=-25165825;v[m+128>>2]=2122317823;v[m+132>>2]=-25165825;v[m+120>>2]=2122317823;v[m+124>>2]=2122317823;v[m+92>>2]=1;v[m+80>>2]=$;ia=X+(J<<2)|0;v[m+88>>2]=ia;v[m+96>>2]=m+1496;v[m+84>>2]=m+1416;t[m+149|0]=0;t[m+150|0]=0;t[m+151|0]=0;t[m+152|0]=0;t[m+153|0]=0;t[m+154|0]=0;t[m+155|0]=0;t[m+156|0]=0;v[m+144>>2]=0;v[m+148>>2]=0;KY(m+232|0,m+80|0);o=z[d+8>>2];j=z[m+240>>2];n=C(j+j);s=z[d>>2];j=z[m+232>>2];u=C(j+j);j=z[m+236>>2];r=C(j+j);p=z[d+4>>2];H=C(C(o*n)+C(C(s*u)+C(r*p)));j=z[d+12>>2];y=C(C(j*j)+C(-.5));c:{if(!(C(C(C(Q*C(-C(C(s*H)+C(C(u*y)+C(j*C(C(p*n)-C(r*o)))))))-C(R*C(C(p*H)+C(C(r*y)+C(j*C(C(o*u)-C(n*s)))))))-C(G*C(C(o*H)+C(C(n*y)+C(j*C(C(s*r)-C(u*p)))))))>=l)){break c}LY(m+80|0,m+232|0,f);j=z[m+240>>2];o=z[m+252>>2];z[m+8>>2]=C(j+o)*C(.5);n=z[m+236>>2];s=z[m+248>>2];z[m+4>>2]=C(n+s)*C(.5);u=z[m+232>>2];r=z[m+244>>2];z[m>>2]=C(u+r)*C(.5);z[m+1528>>2]=C(C(o-j)*C(.5))+C(.019999999552965164);z[m+1524>>2]=C(C(s-n)*C(.5))+C(.019999999552965164);z[m+1520>>2]=C(C(r-u)*C(.5))+C(.019999999552965164);j=sO(m+896|0,m+880|0,m,m+1520|0,m+1400|0,m+1384|0);if(!(j<=C(1))){break c}N=0;q=ga;d:{if(!q){break d}while(1){ca=q-1|0;ja=ca<<2;o=z[P+ja>>2];if(o<=j){N=q;break d}q=q<<2;z[q+P>>2]=o;v[q+fa>>2]=v[fa+ja>>2];q=ca;if(q){continue}break}}q=N<<2;v[q+fa>>2]=v[ia>>2];z[q+P>>2]=j;ga=ga+1|0}J=J+1|0;if((ba|0)!=(J|0)){continue}break}R=z[a+4>>2];j=z[d+8>>2];Q=z[d+24>>2];l=C(z[f+24>>2]-Q);u=C(l+l);l=z[d>>2];H=z[d+16>>2];o=C(z[f+16>>2]-H);r=C(o+o);y=z[d+20>>2];o=C(z[f+20>>2]-y);p=C(o+o);o=z[d+4>>2];G=C(C(j*u)+C(C(l*r)+C(p*o)));n=z[d+12>>2];s=C(C(n*n)+C(-.5));z[m+328>>2]=C(j*G)+C(C(u*s)-C(n*C(C(l*p)-C(r*o))));z[m+324>>2]=C(o*G)+C(C(p*s)-C(n*C(C(j*r)-C(u*l))));z[m+320>>2]=C(l*G)+C(C(r*s)-C(n*C(C(o*u)-C(p*j))));e:{if(!ga){l=C(34028234663852886e22);N=-1;R=C(0);Q=C(0);H=C(0);s=C(0);u=C(0);r=C(0);break e}u=C(z[e+24>>2]-Q);u=C(u+u);r=C(z[e+16>>2]-H);r=C(r+r);p=C(z[e+20>>2]-y);p=C(p+p);G=C(C(j*u)+C(C(l*r)+C(o*p)));ea=C(C(j*G)+C(C(u*s)-C(n*C(C(l*p)-C(r*o)))));ka=C(C(o*G)+C(C(p*s)-C(n*C(C(j*r)-C(u*l)))));la=C(C(l*G)+C(C(r*s)-C(n*C(C(o*u)-C(p*j)))));G=C(R+g);ma=C(G*G);N=-1;l=C(34028234663852886e22);ca=0;r=C(0);u=C(0);s=C(0);H=C(0);Q=C(0);R=C(0);while(1){v[m+288>>2]=-25165825;v[m+292>>2]=-25165825;v[m+280>>2]=2122317823;v[m+284>>2]=-25165825;v[m+272>>2]=2122317823;v[m+276>>2]=2122317823;v[m+244>>2]=1;ba=(ca<<2)+fa|0;v[m+240>>2]=ba;v[m+248>>2]=m+316;v[m+236>>2]=m+1416;v[m+232>>2]=$;t[m+301|0]=0;t[m+302|0]=0;t[m+303|0]=0;t[m+304|0]=0;t[m+305|0]=0;t[m+306|0]=0;t[m+307|0]=0;t[m+308|0]=0;v[m+296>>2]=0;v[m+300>>2]=0;q=B(v[ba>>2],3);J=v[$+40>>2];X=v[J+28>>2];P=v[J+24>>2];f:{if(w[J+64|0]&2){J=X+(q<<1)|0;q=x[J+4>>1];X=x[J+2>>1];J=x[J>>1];break f}J=X+(q<<2)|0;q=v[J+8>>2];X=v[J+4>>2];J=v[J>>2]}q=P+B(q,12)|0;j=z[q+8>>2];X=P+B(X,12)|0;o=z[X+8>>2];n=z[q>>2];p=z[X>>2];y=z[q+4>>2];I=z[X+4>>2];q=w[m+1488|0];P=P+B(J,12)|0;A=z[P>>2];E=z[m+1424>>2];D=z[P+4>>2];M=z[m+1436>>2];F=z[P+8>>2];W=z[m+1448>>2];V=C(C(C(A*E)+C(D*M))+C(F*W));z[m+192>>2]=V;T=z[m+1420>>2];S=z[m+1432>>2];aa=z[m+1444>>2];Z=C(C(C(A*T)+C(D*S))+C(F*aa));z[m+188>>2]=Z;ha=A;A=z[m+1416>>2];L=D;D=z[m+1428>>2];O=F;F=z[m+1440>>2];Y=C(C(C(ha*A)+C(L*D))+C(O*F));z[m+184>>2]=Y;t[m+112|0]=0;v[m+104>>2]=2139095039;v[m+108>>2]=5;v[m+172>>2]=0;L=q?p:n;U=q?I:y;O=q?o:j;_=C(C(C(E*L)+C(M*U))+C(W*O));z[m+168>>2]=_;da=C(C(C(L*T)+C(U*S))+C(O*aa));z[m+164>>2]=da;L=C(C(C(L*A)+C(U*D))+C(O*F));z[m+160>>2]=L;v[m+156>>2]=0;n=q?n:p;p=q?y:I;j=q?j:o;y=C(C(C(E*n)+C(M*p))+C(W*j));z[m+152>>2]=y;I=C(C(C(n*T)+C(p*S))+C(j*aa));z[m+148>>2]=I;A=C(C(C(n*A)+C(p*D))+C(j*F));z[m+144>>2]=A;v[m+140>>2]=0;z[m+136>>2]=V;z[m+132>>2]=Z;z[m+128>>2]=Y;v[m+92>>2]=0;v[m+96>>2]=0;v[m+100>>2]=2139095039;z[m+88>>2]=C(_+C(V+y))*C(.33333298563957214);z[m+84>>2]=C(da+C(Z+I))*C(.33333298563957214);z[m+80>>2]=C(L+C(Y+A))*C(.33333298563957214);P=v[b>>2];q=v[a>>2];t[m+72|0]=0;v[m+64>>2]=0;v[m+68>>2]=1065353216;v[m+56>>2]=0;v[m+60>>2]=0;v[m+48>>2]=0;v[m+52>>2]=1065353216;v[m+40>>2]=0;v[m+44>>2]=0;v[m+32>>2]=1065353216;v[m+36>>2]=1065353216;v[m+24>>2]=0;v[m+28>>2]=0;v[m+16>>2]=1065353216;v[m+20>>2]=0;v[m+8>>2]=0;v[m+12>>2]=0;v[m>>2]=1065353216;v[m+4>>2]=0;n=C(Ba[v[(v[q>>2]<<2)+142336>>2]](q,P,c,d,e,f,g,m+216|0,m+200|0,m,m+80|0,C(0)));p=C(-z[m+216>>2]);z[m+216>>2]=p;j=C(-z[m+220>>2]);z[m+220>>2]=j;o=C(-z[m+224>>2]);z[m+224>>2]=o;if(n<=C(0)){j=z[m+184>>2];o=z[m+188>>2];n=z[m+192>>2];p=C(y-n);z[m+8>>2]=n+p;y=C(I-o);z[m+4>>2]=o+y;I=C(A-j);z[m>>2]=j+I;A=C(_-n);z[m+1528>>2]=n+A;n=o;o=C(da-o);z[m+1524>>2]=n+o;n=j;j=C(L-j);z[m+1520>>2]=n+j;E_(m+1496|0,m+320|0,m+184|0,m,m+1520|0,m+1516|0,m+1512|0);n=C(0);E=C(z[m+1504>>2]-z[m+328>>2]);D=C(E*E);E=C(z[m+1496>>2]-z[m+320>>2]);F=C(E*E);E=C(z[m+1500>>2]-z[m+324>>2]);E=C(D+C(F+C(E*E)));if(E>2])+C(C(o*z[m+184>>2])+C(j*z[m+188>>2]))))>2];j=z[m+8>>2];I=C(j+j);A=z[d>>2];j=z[m>>2];E=C(j+j);j=z[m+4>>2];D=C(j+j);M=z[d+4>>2];F=C(C(y*I)+C(C(A*E)+C(D*M)));p=z[d+12>>2];W=C(C(p*p)+C(-.5));o=C(C(y*F)+C(C(I*W)+C(p*C(C(A*D)-C(E*M)))));j=C(C(M*F)+C(C(D*W)+C(p*C(C(y*E)-C(I*A)))));p=C(C(A*F)+C(C(E*W)+C(p*C(C(M*I)-C(D*y)))))}if(l>n){N=v[ba>>2];H=z[m+208>>2];Q=z[m+204>>2];R=z[m+200>>2];s=p;u=j;r=o;l=n}ca=ca+1|0;if((ga|0)!=(ca|0)){continue}break}}z[h+8>>2]=r;z[h+4>>2]=u;z[h>>2]=s;z[i+8>>2]=H;z[i+4>>2]=Q;z[i>>2]=R;v[k>>2]=N;a=v[m+604>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=v[m+596>>2];if((a|0)==(m+336|0)|!a){break g}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[m+876>>2];if((a|0)<0|!(a&2147483647)){break b}a=v[m+868>>2];if((a|0)==(m+608|0)|!a){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[m+1196>>2];h:{if((a|0)<0|!(a&2147483647)){break h}a=v[m+1188>>2];if((a|0)==(m+928|0)|!a){break h}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=m+1536|0;return C(l)}function K_(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=C(0),q=C(0),r=0,s=0,u=C(0),x=0,y=0,A=C(0),B=0,E=C(0),F=C(0),G=0,H=C(0),I=0,J=C(0),L=C(0),M=0,N=0,O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0);n=xa-6336|0;xa=n;if(e){while(1){j=n+16|0;Ba[v[v[a>>2]>>2]](j,a,w[c+s|0]);y=v[n+28>>2];k=s<<4;i=k+(n+6272|0)|0;v[i+8>>2]=v[n+24>>2];v[i+12>>2]=y;y=v[n+20>>2];v[i>>2]=v[n+16>>2];v[i+4>>2]=y;Ba[v[v[b>>2]>>2]](j,b,w[d+s|0]);j=v[n+28>>2];i=k+(n+6208|0)|0;v[i+8>>2]=v[n+24>>2];v[i+12>>2]=j;j=v[n+20>>2];v[i>>2]=v[n+16>>2];v[i+4>>2]=j;s=s+1|0;if((s|0)!=(e|0)){continue}break}}v[n+6192>>2]=0;v[n+5932>>2]=0;t[n+5668|0]=0;v[n+5664>>2]=0;v[n+5672>>2]=0;v[n+16>>2]=0;i=n+16|0;v[n+20>>2]=i|8;c=v[g+4>>2];v[n>>2]=v[g>>2];v[n+4>>2]=c;c=v[g+12>>2];v[n+8>>2]=v[g+8>>2];v[n+12>>2]=c;g=a;s=b;j=xa-576|0;xa=j;v[j+48>>2]=2139095039;a=n+6272|0;b=v[a+4>>2];v[i+272>>2]=v[a>>2];v[i+276>>2]=b;b=v[a+12>>2];v[i+280>>2]=v[a+8>>2];v[i+284>>2]=b;b=v[a+20>>2];v[i+288>>2]=v[a+16>>2];v[i+292>>2]=b;b=v[a+28>>2];v[i+296>>2]=v[a+24>>2];v[i+300>>2]=b;b=v[a+36>>2];v[i+304>>2]=v[a+32>>2];v[i+308>>2]=b;b=v[a+44>>2];v[i+312>>2]=v[a+40>>2];v[i+316>>2]=b;b=v[a+60>>2];v[i+328>>2]=v[a+56>>2];v[i+332>>2]=b;b=v[a+52>>2];v[i+320>>2]=v[a+48>>2];v[i+324>>2]=b;b=n+6208|0;d=v[b+12>>2];k=i+1304|0;c=k;v[c>>2]=v[b+8>>2];v[c+4>>2]=d;c=v[b+4>>2];v[i+1296>>2]=v[b>>2];v[i+1300>>2]=c;d=v[b+20>>2];c=i+1312|0;v[c>>2]=v[b+16>>2];v[c+4>>2]=d;x=v[b+28>>2];y=i+1320|0;d=y;v[d>>2]=v[b+24>>2];v[d+4>>2]=x;x=v[b+36>>2];d=i+1328|0;v[d>>2]=v[b+32>>2];v[d+4>>2]=x;B=v[b+44>>2];x=i+1336|0;v[x>>2]=v[b+40>>2];v[x+4>>2]=B;G=v[b+60>>2];B=i+1352|0;v[B>>2]=v[b+56>>2];v[B+4>>2]=G;I=v[b+52>>2];G=i+1344|0;v[G>>2]=v[b+48>>2];v[G+4>>2]=I;v[j+44>>2]=0;v[i>>2]=0;a:{b:{c:{switch(e-1|0){case 0:b=7;d=j+44|0;e=j+48|0;a=xa-48|0;xa=a;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=1065353216;v[a+4>>2]=0;p=z[i+1300>>2];u=z[i+276>>2];q=z[i+1304>>2];A=z[i+280>>2];E=z[i+1296>>2];F=z[i+272>>2];v[a+24>>2]=-2147483648;v[a+28>>2]=0;v[a+16>>2]=-1082130432;v[a+20>>2]=-2147483648;c=a+16|0;Ba[v[v[g>>2]+4>>2]](a+32|0,g,c);Ba[v[v[s>>2]+4>>2]](c,s,a);c=v[a+36>>2];v[i+288>>2]=v[a+32>>2];v[i+292>>2]=c;c=v[a+44>>2];v[i+296>>2]=v[a+40>>2];v[i+300>>2]=c;k=v[a+20>>2];c=i+1312|0;v[c>>2]=v[a+16>>2];v[c+4>>2]=k;k=v[a+28>>2];c=i+1320|0;v[c>>2]=v[a+24>>2];v[c+4>>2]=k;d:{if(!(C(F-E)!=C(z[a+32>>2]-z[a+16>>2])|C(u-p)!=C(z[a+36>>2]-z[a+20>>2]))){c=0;if(C(A-q)==C(z[a+40>>2]-z[a+24>>2])){break d}}c=L_(i,g,s,d,e)}xa=a+48|0;if(!c){break a}break b;case 1:b=7;if(L_(i,g,s,j+44|0,j+48|0)){break b}break a;case 2:v[j+44>>2]=3;b=j+48|0;a=M_(i,0,1,2,b);b=M_(i,1,0,2,b);if(!v[i>>2]){b=7;break a}t[a+32|0]=0;v[a+20>>2]=b;t[b+32|0]=0;v[b+20>>2]=a;t[a+33|0]=2;v[a+24>>2]=b;t[b+34|0]=1;v[b+28>>2]=a;t[a+34|0]=1;v[a+28>>2]=b;t[b+33|0]=2;v[b+24>>2]=a;break b;case 3:break c;default:break b}}p=C(z[i+272>>2]-z[i+1296>>2]);E=C(C(z[i+288>>2]-z[i+1312>>2])-p);u=C(z[i+276>>2]-z[i+1300>>2]);A=C(C(z[i+308>>2]-z[i+1332>>2])-u);F=C(C(z[i+304>>2]-z[i+1328>>2])-p);H=C(C(z[i+292>>2]-z[i+1316>>2])-u);q=C(C(E*A)-C(F*H));L=q;O=C(q*q);P=H;q=C(z[i+280>>2]-z[k>>2]);H=C(C(z[i+312>>2]-z[x>>2])-q);J=C(C(z[i+296>>2]-z[y>>2])-q);A=C(C(P*H)-C(A*J));E=C(C(J*F)-C(H*E));F=C(C(1)/C(K(C(O+C(C(A*A)+C(E*E))))));if(C(C(C(L*F)*C(C(z[i+328>>2]-z[B>>2])-q))+C(C(C(A*F)*C(C(z[i+320>>2]-z[i+1344>>2])-p))+C(C(C(z[i+324>>2]-z[i+1348>>2])-u)*C(E*F))))>C(0)){e=v[a+36>>2];v[i+288>>2]=v[a+32>>2];v[i+292>>2]=e;e=v[a+44>>2];v[i+296>>2]=v[a+40>>2];v[i+300>>2]=e;e=v[b+36>>2];v[c>>2]=v[b+32>>2];v[c+4>>2]=e;e=v[b+44>>2];v[c+8>>2]=v[b+40>>2];v[c+12>>2]=e;c=v[a+20>>2];v[i+304>>2]=v[a+16>>2];v[i+308>>2]=c;c=v[a+28>>2];v[i+312>>2]=v[a+24>>2];v[i+316>>2]=c;a=v[b+20>>2];v[d>>2]=v[b+16>>2];v[d+4>>2]=a;a=v[b+28>>2];v[d+8>>2]=v[b+24>>2];v[d+12>>2]=a}d=j+48|0;a=M_(i,0,1,2,d);b=M_(i,0,3,1,d);c=M_(i,0,2,3,d);d=M_(i,1,3,2,d);if(!v[i>>2]){b=7;break a}t[a+32|0]=2;v[a+20>>2]=b;t[b+34|0]=0;v[b+28>>2]=a;t[a+33|0]=2;v[a+24>>2]=d;t[d+34|0]=1;v[d+28>>2]=a;t[a+34|0]=0;v[a+28>>2]=c;t[c+32|0]=2;v[c+20>>2]=a;t[b+32|0]=2;v[b+20>>2]=c;t[c+34|0]=0;v[c+28>>2]=b;t[b+33|0]=0;v[b+24>>2]=d;t[d+32|0]=1;v[d+20>>2]=b;t[c+33|0]=1;v[c+24>>2]=d;t[d+33|0]=1;v[d+24>>2]=c;v[j+44>>2]=4}B=i+1296|0;G=i+272|0;y=i+5648|0;I=i+5392|0;Q=i+5660|0;x=i+5920|0;c=i+5656|0;p=z[v[s+4>>2]+20>>2];u=z[v[g+4>>2]+20>>2];S=C((p>2];e:{if(!d){break e}k=0;if((d|0)!=1){e=d&-2;b=0;while(1){r=k<<2;o=v[r+x>>2];if((o|0)!=(v[c>>2]-1|0)){a=v[i+5916>>2];v[i+5916>>2]=a+1;a=(a<<2)+Q|0}else{a=c}v[a>>2]=o;r=v[x+(r|4)>>2];if((r|0)!=(v[c>>2]-1|0)){a=v[i+5916>>2];v[i+5916>>2]=a+1;a=(a<<2)+Q|0}else{a=c}v[a>>2]=r;k=k+2|0;b=b+2|0;if((e|0)!=(b|0)){continue}break}}if(!(d&1)){break e}b=v[x+(k<<2)>>2];if((b|0)!=(v[c>>2]-1|0)){a=v[i+5916>>2];v[i+5916>>2]=a+1;a=(a<<2)+Q|0}else{a=c}v[a>>2]=b}a=0;v[i+6176>>2]=0;r=v[i>>2]-1|0;v[i>>2]=r;k=v[i+4>>2];o=v[k+(r<<2)>>2];e=v[k>>2];f:{if(r>>>0<2){break f}u=z[o+16>>2];k=0;b=1;d=0;while(1){a=k+2|0;k=v[i+4>>2];a=(a>>>0>>0&z[v[k+(a<<2)>>2]+16>>2]>2]+16>>2])+b|0;b=v[(a<<2)+k>>2];if(u>2]){a=d;break f}v[(d<<2)+k>>2]=b;d=a;k=a<<1;b=k|1;if(r>>>0>b>>>0){continue}break}k=v[i+4>>2]}v[(a<<2)+k>>2]=o;t[e+39|0]=0;g:{if(!w[e+38|0]){a=v[e+4>>2];v[j+16>>2]=v[e>>2];v[j+20>>2]=a;a=v[e+12>>2];v[j+24>>2]=v[e+8>>2];v[j+28>>2]=a;L=z[e+16>>2];a=j- -64|0;Ba[v[v[g>>2]+4>>2]](a,g,j+16|0);T=z[j+76>>2];E=z[j+72>>2];F=z[j+64>>2];H=z[j+68>>2];v[j+12>>2]=0;z[j+8>>2]=-z[j+24>>2];z[j+4>>2]=-z[j+20>>2];z[j>>2]=-z[j+16>>2];Ba[v[v[s>>2]+4>>2]](a,s,j);P=z[j+72>>2];u=C(E-P);O=z[j+64>>2];q=C(F-O);R=z[j+68>>2];A=C(H-R);J=C(C(u*z[j+24>>2])+C(C(q*z[j+16>>2])+C(A*z[j+20>>2])));if(C(D(C(J-L)))<=S){N_(G,B,e,g,s,f,h);if(f){b=6;p=C(z[h+8>>2]-z[h+24>>2]);q=C(p*p);p=C(z[h>>2]-z[h+16>>2]);H=C(p*p);p=C(z[h+4>>2]-z[h+20>>2]);p=C(q+C(H+C(p*p)));if(C(C(z[n>>2]*C(.0010000000474974513))+C(D(z[h+64>>2])))<(p>C(0)?C(K(p)):C(0))){break a}}b=5;break a}r=v[j+44>>2];L=z[j+76>>2];p=p>J?J:p;z[j+48>>2]=p;a=i+(r<<4)|0;z[a+284>>2]=T;z[a+280>>2]=E;z[a+276>>2]=H;z[a+272>>2]=F;a=a+1296|0;z[a+12>>2]=L;z[a+8>>2]=P;z[a+4>>2]=R;z[a>>2]=O;a=1;v[j+44>>2]=r+1;b=0;t[i+5652|0]=0;v[i+5648>>2]=0;t[e+38|0]=1;d=v[e+20>>2];v[j+68>>2]=t[e+32|0];v[j+64>>2]=d;h:{while(1){i:{k=(j- -64|0)+(b<<3)|0;d=v[k>>2];j:{if(w[d+38|0]){a=b;break j}o=v[k+4>>2];l=t[d+35|0]<<4;m=l+G|0;l=l+B|0;if(C(C(z[d+8>>2]*C(u-C(z[m+8>>2]-z[l+8>>2])))+C(C(z[d>>2]*C(q-C(z[m>>2]-z[l>>2])))+C(C(A-C(z[m+4>>2]-z[l+4>>2]))*z[d+4>>2])))>2];if(a>>>0>31){break i}v[y>>2]=a+1;a=(a<<3)+I|0;v[a+4>>2]=o;v[a>>2]=d;a=b;break j}t[d+38|0]=1;b=d+32|0;o=v[(o<<2)+101432>>2];m=o<<2;l=v[m+101432>>2];M=t[b+l|0];N=l<<2;l=d+20|0;v[k>>2]=v[N+l>>2];v[(k|4)>>2]=M;k=v[l+m>>2];m=(j- -64|0)+(a<<3)|0;v[m+4>>2]=t[b+o|0];v[m>>2]=k;a=a+1|0;if(w[d+39|0]){break j}b=w[d+40|0];d=v[i+6176>>2];v[i+6176>>2]=d+1;v[x+(d<<2)>>2]=b}b=a-1|0;if(a){continue}break h}break}t[i+5652|0]=1}a=v[e+24>>2];v[j+68>>2]=t[e+33|0];v[j+64>>2]=a;a=1;b=0;k:{while(1){l:{k=(j- -64|0)+(b<<3)|0;d=v[k>>2];m:{if(w[d+38|0]){a=b;break m}o=v[k+4>>2];l=t[d+35|0]<<4;m=l+G|0;l=l+B|0;if(C(C(z[d+8>>2]*C(u-C(z[m+8>>2]-z[l+8>>2])))+C(C(z[d>>2]*C(q-C(z[m>>2]-z[l>>2])))+C(C(A-C(z[m+4>>2]-z[l+4>>2]))*z[d+4>>2])))>2];if(a>>>0>31){break l}v[y>>2]=a+1;a=(a<<3)+I|0;v[a+4>>2]=o;v[a>>2]=d;a=b;break m}t[d+38|0]=1;b=d+32|0;o=v[(o<<2)+101432>>2];m=o<<2;l=v[m+101432>>2];M=t[b+l|0];N=l<<2;l=d+20|0;v[k>>2]=v[N+l>>2];v[(k|4)>>2]=M;k=v[l+m>>2];m=(j- -64|0)+(a<<3)|0;v[m+4>>2]=t[b+o|0];v[m>>2]=k;a=a+1|0;if(w[d+39|0]){break m}b=w[d+40|0];d=v[i+6176>>2];v[i+6176>>2]=d+1;v[x+(d<<2)>>2]=b}b=a-1|0;if(a){continue}break k}break}t[i+5652|0]=1}a=v[e+28>>2];v[j+68>>2]=t[e+34|0];v[j+64>>2]=a;a=1;b=0;n:{o:{while(1){k=(j- -64|0)+(b<<3)|0;d=v[k>>2];p:{if(w[d+38|0]){a=b;break p}o=v[k+4>>2];l=t[d+35|0]<<4;m=l+G|0;l=l+B|0;if(C(C(z[d+8>>2]*C(u-C(z[m+8>>2]-z[l+8>>2])))+C(C(z[d>>2]*C(q-C(z[m>>2]-z[l>>2])))+C(C(A-C(z[m+4>>2]-z[l+4>>2]))*z[d+4>>2])))>2];if(a>>>0>31){break o}v[y>>2]=a+1;a=(a<<3)+I|0;v[a+4>>2]=o;v[a>>2]=d;a=b;break p}t[d+38|0]=1;b=d+32|0;o=v[(o<<2)+101432>>2];m=o<<2;l=v[m+101432>>2];M=t[b+l|0];N=l<<2;l=d+20|0;v[k>>2]=v[N+l>>2];v[(k|4)>>2]=M;k=v[l+m>>2];m=(j- -64|0)+(a<<3)|0;v[m+4>>2]=t[b+o|0];v[m>>2]=k;a=a+1|0;if(w[d+39|0]){break p}b=w[d+40|0];d=v[i+6176>>2];v[i+6176>>2]=d+1;v[x+(d<<2)>>2]=b}b=a-1|0;if(a){continue}break}o=v[i+5648>>2];if(w[i+5652|0]|!o|o>>>0>(v[i+5916>>2]-v[i+5656>>2]|0)- -64>>>0){break g}b=v[i+5392>>2]+35|0;a=v[i+5396>>2];b=M_(i,t[b+v[(a<<2)+101432>>2]|0],t[a+b|0],r,j+48|0);a=v[i+5392>>2];d=v[i+5396>>2];t[b+32|0]=d;v[b+20>>2]=a;v[(a+(d<<2)|0)+20>>2]=b;t[(a+d|0)+32|0]=0;k=1;a=b;if(o>>>0<=1){break n}while(1){m=(k<<3)+I|0;d=v[m>>2]+35|0;l=v[m+4>>2];d=M_(i,t[d+v[(l<<2)+101432>>2]|0],t[d+l|0],r,j+48|0);l=v[m>>2];m=v[m+4>>2];t[d+32|0]=m;v[d+20>>2]=l;v[(l+(m<<2)|0)+20>>2]=d;t[(l+m|0)+32|0]=0;t[d+34|0]=1;v[d+28>>2]=a;t[a+33|0]=2;v[a+24>>2]=d;a=d;k=k+1|0;if((o|0)!=(k|0)){continue}break}break n}t[i+5652|0]=1;break g}t[b+34|0]=1;v[b+28>>2]=a;t[a+33|0]=2;v[a+24>>2]=b}b=w[e+40|0];if((b|0)!=(v[c>>2]-1|0)){a=v[i+5916>>2];v[i+5916>>2]=a+1;a=(a<<2)+Q|0}else{a=c}v[a>>2]=b;if(!v[i>>2]|!(z[v[v[i+4>>2]>>2]+16>>2]>2]!=64){continue}}break}N_(G,B,e,g,s,f,h);b=6}xa=j+576|0;xa=n+6336|0;return b}function kM(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,x=0,A=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[a+40>>2]=0;u=v[a+32>>2];p=a;g=a+44|0;x=xa-32|0;xa=x;d=v[a+28>>2];a=v[d+108>>2];a:{if(!a){break a}if(y[d+188>>2]>B(a,5)>>>0){f=xa-48|0;xa=f;I=v[d+112>>2];r=g;m=v[g>>2];c=v[d+136>>2];v[f>>2]=c;a=v[d+140>>2];v[f+8>>2]=a;v[f+4>>2]=a;a=v[d+132>>2];v[f+20>>2]=c;v[f+16>>2]=a;v[f+12>>2]=a;a=u<<2;c=a+d|0;s=v[c+156>>2];b:{if((v[s+4>>2]&-2)==1073741822){break b}K=v[a+(d+132|0)>>2];a=f+(u<<3)|0;D=v[a+4>>2];L=v[a>>2];t=v[c+144>>2];N=v[d+168>>2];O=v[d+116>>2];c:{d:{e:{f:{g:{h:{a=v[d+108>>2];if(a>>>0>=512){a=v[d+188>>2]<<1;if(a){break h}a=v[d+176>>2];v[a>>2]=0;v[a+4>>2]=0;break e}if(!a){g=v[d+172>>2];break g}g=v[d+172>>2];k=v[d+124>>2];b=v[d+104>>2];while(1){h=v[b+(e<<2)>>2];c=(I+B(h,24)|0)+(u<<2)|0;j=k+(h<<2)|0;z[f+40>>2]=z[c>>2]-z[j>>2];a=v[f+40>>2];z[f+40>>2]=z[j>>2]+z[c+12>>2];c=v[f+40>>2];h=K+(h<<3)|0;v[t+(v[h>>2]<<2)>>2]=((a|0)<0?a^-1:a|-2147483648)-16&-16;a=c;v[t+(v[h+4>>2]<<2)>>2]=((a|0)<0?a^-1:a|-2147483648)+16&-16|4;a=n<<2;v[a+g>>2]=v[h>>2];v[(a|4)+g>>2]=v[h+4>>2];n=n+2|0;e=e+1|0;if(e>>>0>2]){continue}break}break g}b=a|1;g=v[d+172>>2];h=v[d+124>>2];c=1;while(1){j=c<<2;k=v[j+s>>2];if((k&-2)==1073741822){break f}a=k>>>1|0;if(w[a+N|0]){i=j+t|0;i:{if(k&1){z[f+40>>2]=z[h+(a<<2)>>2]+z[((I+B(a,24)|0)+(u<<2)|0)+12>>2];a=v[f+40>>2];a=((a|0)<0?a^-1:a|-2147483648)+16&-16|4;break i}z[f+40>>2]=z[(I+B(a,24)|0)+(u<<2)>>2]-z[h+(a<<2)>>2];a=v[f+40>>2];a=((a|0)<0?a^-1:a|-2147483648)-16&-16}v[i>>2]=a;v[g+(n<<2)>>2]=c;n=n+1|0}c=c+1|0;if((b|0)!=(c|0)){continue}break}break f}Az(g,n)}a=v[d+176>>2];v[a>>2]=0;v[a+4>>2]=0;if(n){break d}}h=a;break c}g=v[d+184>>2];h=a;while(1){k=v[v[d+172>>2]+(q<<2)>>2];c=v[s+(k<<2)>>2];while(1){M=k<<2;P=v[t+M>>2];o=c>>>1|0;j=o<<2;z[f+40>>2]=z[j+v[d+124>>2]>>2]+z[((I+B(o,24)|0)+(u<<2)|0)+12>>2];b=v[f+40>>2];e=v[g+M>>2];if(y[t+(e<<2)>>2]>P>>>0){a=o<<3;J=a+D|0;H=a+L|0;Q=v[j+O>>2];R=Q<<2&12;j:{if(c&1){c=k;while(1){S=e<<2;a=v[s+S>>2];k:{if(a&1){break k}E=a>>>1|0;a=E<<3;b=a+L|0;if(y[H+4>>2]<=y[b>>2]|y[b+4>>2]<=y[H>>2]){break k}a=a+D|0;if(y[J+4>>2]<=y[a>>2]|y[a+4>>2]<=y[J>>2]){break k}a=v[(E<<2)+O>>2];if((a|0)==(Q|0)|!w[v[d+120>>2]+(a&3|R)|0]){break k}l:{if((m|0)!=(A|0)){j=v[p+36>>2];break l}F=v[p+36>>2];i=v[d+4>>2];G=i+4|0;a=m<<4;b=v[i+8>>2];g=v[i+4>>2]+(b<<2)|0;j=v[g-4>>2];m:{if((a|0)<=(j-v[i+16>>2]|0)){a=j-a|0;v[f+40>>2]=a;if(b>>>0>=(v[i+12>>2]&2147483647)>>>0){Vs(G,f+40|0);j=v[f+40>>2];break m}v[g>>2]=a;v[i+8>>2]=b+1;j=v[f+40>>2];break m}j=0;if(!a){break m}b=v[37696];j=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,17461,99)|0}T=I9(j,F,m<<3);a=v[i+16>>2];n:{if(!(a>>>0<=F>>>0&F>>>0>2]>>>0)){if(!F){break n}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,F);break n}U=v[i+4>>2];a=0;C=v[i+8>>2];b=C;while(1){l=a;a=a+1|0;g=b;b=b-1|0;e=(b<<2)+U|0;if(F>>>0>y[e>>2]){continue}break}o:{if(g>>>0>=C>>>0){break o}a=0;b=l&3;if(b){while(1){v[e>>2]=v[v[G>>2]+(g<<2)>>2];g=g+1|0;e=e+4|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}}if(l-1>>>0<3){break o}while(1){a=g<<2;v[e>>2]=v[a+v[G>>2]>>2];v[e+4>>2]=v[(a+v[G>>2]|0)+4>>2];v[e+8>>2]=v[(a+v[G>>2]|0)+8>>2];v[e+12>>2]=v[(a+v[G>>2]|0)+12>>2];e=e+16|0;g=g+4|0;if((C|0)!=(g|0)){continue}break}}v[i+8>>2]=C-1}m=m<<1;v[p+36>>2]=T;g=v[d+184>>2]}a=(A<<3)+j|0;v[a+4>>2]=o>>>0>E>>>0?o:E;v[a>>2]=o>>>0>>0?o:E;A=A+1|0}c=c-1|0;e=v[g+S>>2];if(y[t+(e<<2)>>2]>P>>>0){continue}break}break j}a=b;j=((a|0)<0?a^-1:a|-2147483648)+16&-16|4;c=k;while(1){l=e<<2;a=v[l+s>>2];p:{if(!(a&1)){break p}a=a>>>1|0;b=a<<3;if(j>>>0<=y[t+(v[b+K>>2]<<2)>>2]){break p}e=b+L|0;if(y[H+4>>2]<=y[e>>2]|y[e+4>>2]<=y[H>>2]){break p}b=b+D|0;if(y[J+4>>2]<=y[b>>2]|y[b+4>>2]<=y[J>>2]){break p}b=v[(a<<2)+O>>2];if((b|0)==(Q|0)|!w[v[d+120>>2]+(b&3|R)|0]){break p}q:{if((m|0)!=(A|0)){b=v[p+36>>2];break q}b=m;m=m<<1;b=lM(b,m,v[d+4>>2],v[p+36>>2]);v[p+36>>2]=b;g=v[d+184>>2]}b=(A<<3)+b|0;v[b+4>>2]=a>>>0>o>>>0?o:a;v[b>>2]=a>>>0>>0?o:a;A=A+1|0}c=c-1|0;e=v[g+l>>2];if(y[t+(e<<2)>>2]>P>>>0){continue}break}}a=v[d+180>>2];j=a+(e<<2)|0;b=v[j>>2];l=g+M|0;i=v[l>>2];C=a+(i<<2)|0;a=a+M|0;o=v[a>>2];v[C>>2]=o;v[(o<<2)+g>>2]=i;v[a>>2]=b;v[l>>2]=e;v[(b<<2)+g>>2]=k;v[j>>2]=k;while(1){b=h;h=b-8|0;if(y[b>>2]>c>>>0){continue}break}a=v[d+176>>2];if((b|0)==(a|0)|v[b+4>>2]+1>>>0>>0){v[b+8>>2]=c;b=b+8|0}h=b;v[h+4>>2]=k}k=k+1|0;b=k<<2;c=v[b+s>>2];if(!(w[(v[s+(v[b+g>>2]<<2)>>2]>>>1|0)+N|0]?(c&-2)==1073741822|w[(c>>>1|0)+N|0]:1)){continue}break}q=q+1|0;if((n|0)!=(q|0)){continue}break}}v[p+40>>2]=A;v[r>>2]=m;c=a+8|0;if(h>>>0>>0){break b}p=v[d+180>>2];j=v[d+184>>2];while(1){k=a;a=c;c=v[k+8>>2];e=v[k+12>>2];if(c>>>0<=e>>>0){while(1){v[j+(c<<2)>>2]=c;c=c+1|0;e=v[k+12>>2];if(c>>>0<=e>>>0){continue}break}c=v[a>>2]}if(c>>>0<=e>>>0){g=c-1|0;b=v[d+184>>2];while(1){g=v[p+(g<<2)>>2];if((g|0)!=(c|0)){u=v[b+(g<<2)>>2];l=u<<2;r=l+s|0;e=v[r>>2];m=c<<2;i=m+s|0;o=v[i>>2];n=m+t|0;q=v[n>>2];C=n;n=l+t|0;v[C>>2]=v[n>>2];v[i>>2]=v[r>>2];v[n>>2]=q;v[r>>2]=o;i=b+l|0;l=b+m|0;v[i>>2]=v[l>>2];v[b+(v[l>>2]<<2)>>2]=u;v[(K+(e<<2&-8)|0)+((e&1)<<2)>>2]=c;e=v[k+12>>2]}c=c+1|0;if(e>>>0>=c>>>0){continue}break}c=v[a>>2]}c=c-1|0;if(e>>>0>=c>>>0){while(1){b=c+1|0;v[j+(b<<2)>>2]=c;v[p+(c<<2)>>2]=b;c=b;if(b>>>0<=y[k+12>>2]){continue}break}}c=a+8|0;if(h>>>0>=c>>>0){continue}break}}xa=f+48|0;break a}s=v[d+112>>2];i=v[g>>2];c=v[d+136>>2];v[x>>2]=c;a=v[d+140>>2];v[x+8>>2]=a;v[x+4>>2]=a;a=v[d+132>>2];v[x+20>>2]=c;v[x+16>>2]=a;v[x+12>>2]=a;a=u<<2;c=a+d|0;o=v[c+156>>2];h=v[o+4>>2];if((h&-2)==1073741822){break a}I=v[a+(d+132|0)>>2];t=v[c+144>>2];c=(u<<3)+x|0;A=v[c+4>>2];F=v[c>>2];J=v[d+168>>2];G=v[d+116>>2];c=h>>>1|0;z[x+28>>2]=z[a+(s+B(c,24)|0)>>2]-z[v[d+124>>2]+(c<<2)>>2];a=v[x+28>>2];v[t+4>>2]=((a|0)<0?a^-1:a|-2147483648)-16&-16;h=c+J|0;k=w[h|0];b=v[d+108>>2];c=v[d+176>>2];v[c>>2]=0;v[c+4>>2]=0;a=v[o+8>>2];r:{if((a&-2)==1073741822){k=c;break r}j=(b<<1)-k|0;b=w[h|0];k=c;h=2;while(1){s:{t:{u:{f=a>>>1|0;r=w[f+J|0];if((r|b)&255){j=j-r|0;E=h<<2;b=E+t|0;D=a&1;v:{if(D){q=v[d+124>>2];z[x+28>>2]=z[q+(f<<2)>>2]+z[((s+B(f,24)|0)+(u<<2)|0)+12>>2];a=v[x+28>>2];l=((a|0)<0?a^-1:a|-2147483648)+16&-16|4;break v}q=v[d+124>>2];z[x+28>>2]=z[(s+B(f,24)|0)+(u<<2)>>2]-z[q+(f<<2)>>2];a=v[x+28>>2];l=((a|0)<0?a^-1:a|-2147483648)-16&-16}v[b>>2]=l;e=v[d+184>>2];b=v[E+e>>2];if(l>>>0>=y[t+(b<<2)>>2]){b=r;break s}c=f<<2;z[x+28>>2]=z[c+q>>2]+z[((s+B(f,24)|0)+(u<<2)|0)+12>>2];a=v[x+28>>2];n=f<<3;r=n+A|0;n=n+F|0;H=v[c+G>>2];K=H<<2&12;if(!D){break u}a=h;while(1){q=b<<2;c=v[q+o>>2];w:{if(c&1){break w}c=c>>>1|0;b=c<<3;D=b+F|0;if(y[n+4>>2]<=y[D>>2]|y[D+4>>2]<=y[n>>2]){break w}b=b+A|0;if(y[r+4>>2]<=y[b>>2]|y[b+4>>2]<=y[r>>2]){break w}b=v[G+(c<<2)>>2];if((b|0)==(H|0)|!w[v[d+120>>2]+(K|b&3)|0]){break w}x:{if((i|0)!=(m|0)){b=v[p+36>>2];break x}b=i;i=i<<1;b=lM(b,i,v[d+4>>2],v[p+36>>2]);v[p+36>>2]=b;e=v[d+184>>2]}b=(m<<3)+b|0;v[b+4>>2]=c>>>0>>0?f:c;v[b>>2]=c>>>0>f>>>0?f:c;m=m+1|0}a=a-1|0;b=v[e+q>>2];if(l>>>0>2]){continue}break}break t}b=0;if(!j){break r}break s}D=((a|0)<0?a^-1:a|-2147483648)+16&-16|4;a=h;while(1){L=b<<2;c=v[L+o>>2];y:{if(!(c&1)){break y}c=c>>>1|0;b=c<<3;if(D>>>0<=y[t+(v[b+I>>2]<<2)>>2]){break y}q=b+F|0;if(y[n+4>>2]<=y[q>>2]|y[q+4>>2]<=y[n>>2]){break y}b=b+A|0;if(y[r+4>>2]<=y[b>>2]|y[b+4>>2]<=y[r>>2]){break y}b=v[G+(c<<2)>>2];if((b|0)==(H|0)|!w[v[d+120>>2]+(K|b&3)|0]){break y}z:{if((i|0)!=(m|0)){q=v[p+36>>2];break z}b=i;i=i<<1;q=lM(b,i,v[d+4>>2],v[p+36>>2]);v[p+36>>2]=q;e=v[d+184>>2]}b=(m<<3)+q|0;v[b+4>>2]=c>>>0>f>>>0?f:c;v[b>>2]=c>>>0>>0?f:c;m=m+1|0}a=a-1|0;b=v[e+L>>2];if(l>>>0>2]){continue}break}}c=v[d+180>>2];r=c+(b<<2)|0;l=v[r>>2];f=e+E|0;n=v[f>>2];C=c+(n<<2)|0;c=c+E|0;q=v[c>>2];v[C>>2]=q;v[(q<<2)+e>>2]=n;v[c>>2]=l;v[f>>2]=b;v[(l<<2)+e>>2]=h;v[r>>2]=h;while(1){b=k;k=b-8|0;if(y[b>>2]>a>>>0){continue}break}c=v[d+176>>2];if((b|0)==(c|0)|v[b+4>>2]+1>>>0>>0){v[b+8>>2]=a;b=b+8|0}k=b;v[k+4>>2]=h;b=1}h=h+1|0;a=v[o+(h<<2)>>2];if((a&-2)!=1073741822){continue}break}}v[p+40>>2]=m;v[g>>2]=i;g=v[d+184>>2];a=c+8|0;A:{if(k>>>0>>0){h=g;break A}j=v[d+180>>2];h=g;while(1){p=c;c=a;a=v[p+8>>2];b=v[p+12>>2];if(a>>>0<=b>>>0){while(1){v[g+(a<<2)>>2]=a;a=a+1|0;b=v[p+12>>2];if(a>>>0<=b>>>0){continue}break}a=v[c>>2]}if(a>>>0<=b>>>0){e=a-1|0;h=v[d+184>>2];while(1){e=v[j+(e<<2)>>2];if((e|0)!=(a|0)){m=v[(e<<2)+h>>2];b=m<<2;l=b+o|0;r=v[l>>2];f=a<<2;u=f+o|0;i=v[u>>2];s=f+t|0;n=v[s>>2];C=s;s=b+t|0;v[C>>2]=v[s>>2];v[u>>2]=v[l>>2];v[s>>2]=n;v[l>>2]=i;i=b+h|0;b=f+h|0;v[i>>2]=v[b>>2];v[(v[b>>2]<<2)+h>>2]=m;v[(I+(r<<2&-8)|0)+((r&1)<<2)>>2]=a;b=v[p+12>>2]}a=a+1|0;if(b>>>0>=a>>>0){continue}break}a=v[c>>2]}a=a-1|0;if(b>>>0>=a>>>0){while(1){b=a+1|0;v[g+(b<<2)>>2]=a;v[j+(a<<2)>>2]=b;a=b;if(a>>>0<=y[p+12>>2]){continue}break}}a=c+8|0;if(k>>>0>=a>>>0){continue}break}}v[h>>2]=0}xa=x+32|0}function co(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=xa-272|0;xa=d;a:{if((a|0)!=67174656){v[d>>2]=67174656;v[d+4>>2]=a;a=d+16|0;t9(a,256,2005,d);b=Ba[v[v[b>>2]+4>>2]](b)|0;Ba[v[v[b>>2]+8>>2]](b,4,a,7621,190);a=0;break a}if(!(z[c>>2]>C(0))){a=Ba[v[v[b>>2]+4>>2]](b)|0;Ba[v[v[a>>2]+8>>2]](a,4,77715,7621,196);a=0;break a}a=v[37394];if(!a){d9();v[37425]=-28;v[37422]=-20;v[37423]=-20;v[37420]=-24;v[37421]=-24;v[37416]=-64;v[37417]=-64;v[37426]=-64;v[37427]=-64;v[37418]=-64;v[37419]=-48;v[37428]=-64;v[d+24>>2]=-80;v[d+16>>2]=-80;v[d+20>>2]=-80;a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?30571:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,108,b,7621,211)|0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=121976;b=v[c+4>>2];v[a+16>>2]=v[c>>2];v[a+20>>2]=b;v[37415]=a+16;b=v[d+20>>2];v[37412]=v[d+16>>2];v[37413]=b;v[37414]=v[d+24>>2];v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,512,24422,17745,46)|0;v[a+44>>2]=128;v[a+40>>2]=b;J9(b,0,512);v[a+48>>2]=122176;b=v[37696];c=v[37696];j=a,k=(m=b+12|0,n=28,o=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,l=v[v[b+12>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0),v[j+52>>2]=k;b=xa-16|0;xa=b;xa=b+16|0;v[a+72>>2]=0;v[a+76>>2]=0;b=a- -64|0;v[b>>2]=0;v[b+4>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+80>>2]=1061158912;v[a+84>>2]=-1;nn(a+56|0,64);t[a+100|0]=0;v[a+96>>2]=122216;b=v[37696];c=v[37696];j=a,k=(q=b+12|0,p=28,o=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,n=16755,m=113,l=v[v[b+12>>2]+8>>2],Ba[l](q|0,p|0,o|0,n|0,m|0)|0),v[j+104>>2]=k;b=xa-16|0;xa=b;xa=b+16|0;v[37393]=a;a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?25141:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,3936,b,5382,101)|0;v[b>>2]=140644;a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?37931:63804;j=b,k=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,c,16755,113)|0,v[j+4>>2]=k;a=xa-16|0;xa=a;xa=a+16|0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+32>>2]=1061158912;v[b+36>>2]=-1;xh(b+8|0,64);a=b- -64|0;v[a>>2]=0;v[a+4>>2]=0;v[b+56>>2]=0;v[b+60>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+80>>2]=0;v[b+84>>2]=0;v[b+72>>2]=1061158912;v[b+76>>2]=-1;xh(b+48|0,64);v[b+104>>2]=0;v[b+108>>2]=0;v[b+96>>2]=0;v[b+100>>2]=0;v[b+88>>2]=0;v[b+92>>2]=0;v[b+120>>2]=0;v[b+124>>2]=0;v[b+112>>2]=1061158912;v[b+116>>2]=-1;xh(b+88|0,64);v[b+144>>2]=0;v[b+148>>2]=0;v[b+136>>2]=0;v[b+140>>2]=0;v[b+128>>2]=0;v[b+132>>2]=0;v[b+160>>2]=0;v[b+164>>2]=0;v[b+152>>2]=1061158912;v[b+156>>2]=-1;xh(b+128|0,64);v[b+176>>2]=0;v[b+168>>2]=0;v[b+172>>2]=0;v[b>>2]=121880;v[b+448>>2]=0;v[b+468>>2]=0;v[b+460>>2]=0;v[b+464>>2]=1536;v[b+452>>2]=64;v[b+456>>2]=32;v[b+444>>2]=b+184;t[b+440|0]=1;a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?37931:63804;j=b,k=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,c,16755,113)|0,v[j+472>>2]=k;a=xa-16|0;xa=a;xa=a+16|0;a=v[37696];c=v[37696];a=(k=a+12|0,l=884,m=Ba[v[v[c>>2]+20>>2]](c)|0?34253:63804,n=5382,o=51,j=v[v[a+12>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0);v[a>>2]=121908;c=v[37696];e=v[37696];j=a,o=(m=c+12|0,l=28,k=Ba[v[v[e>>2]+20>>2]](e)|0?37931:63804,p=16755,q=113,n=v[v[c+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+4>>2]=o;c=xa-16|0;xa=c;xa=c+16|0;v[a+568>>2]=0;v[a+292>>2]=4096;v[a+296>>2]=0;v[a+284>>2]=256;v[a+288>>2]=0;v[a+272>>2]=a+12;t[a+268|0]=1;v[a+276>>2]=0;v[a+280>>2]=64;v[a+860>>2]=0;v[a+588>>2]=0;v[a+580>>2]=0;v[a+584>>2]=4096;v[a+572>>2]=64;v[a+576>>2]=64;v[a+564>>2]=a+304;t[a+560|0]=1;v[a+880>>2]=0;v[a+872>>2]=0;v[a+876>>2]=4096;v[a+864>>2]=64;v[a+868>>2]=16;v[a+856>>2]=a+596;t[a+852|0]=1;v[b+480>>2]=0;v[b+484>>2]=0;v[b+476>>2]=a;v[b+488>>2]=0;v[b+492>>2]=0;v[b+496>>2]=0;v[b+500>>2]=0;v[b+512>>2]=0;v[b+516>>2]=0;v[b+504>>2]=1061158912;v[b+508>>2]=-1;Im(b+480|0,64);v[b+536>>2]=0;v[b+540>>2]=0;v[b+528>>2]=0;v[b+532>>2]=0;v[b+520>>2]=0;v[b+524>>2]=0;v[b+552>>2]=0;v[b+556>>2]=0;v[b+544>>2]=1061158912;v[b+548>>2]=-1;Im(b+520|0,64);v[b+576>>2]=0;v[b+580>>2]=0;v[b+568>>2]=0;v[b+572>>2]=0;v[b+560>>2]=0;v[b+564>>2]=0;v[b+592>>2]=0;v[b+596>>2]=0;v[b+584>>2]=1061158912;v[b+588>>2]=-1;Im(b+560|0,64);v[b+616>>2]=0;v[b+620>>2]=0;v[b+608>>2]=0;v[b+612>>2]=0;v[b+600>>2]=0;v[b+604>>2]=0;v[b+632>>2]=0;v[b+636>>2]=0;v[b+624>>2]=1061158912;v[b+628>>2]=-1;Im(b+600|0,64);v[b+656>>2]=0;v[b+660>>2]=0;v[b+648>>2]=0;v[b+652>>2]=0;v[b+640>>2]=0;v[b+644>>2]=0;v[b+672>>2]=0;v[b+676>>2]=0;v[b+664>>2]=1061158912;v[b+668>>2]=-1;xh(b+640|0,64);v[b+964>>2]=4096;v[b+968>>2]=0;v[b+956>>2]=12;v[b+960>>2]=0;v[b+944>>2]=b+684;t[b+940|0]=1;v[b+948>>2]=0;v[b+952>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+972>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+1260|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+1252|0;v[a>>2]=36;v[a+4>>2]=0;v[b+1240>>2]=b+980;t[b+1236|0]=1;a=b+1244|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(m=a+12|0,l=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,n=v[v[a+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+1268>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+1556|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+1548|0;v[a>>2]=19;v[a+4>>2]=0;v[b+1536>>2]=b+1276;t[b+1532|0]=1;a=b+1540|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+1564>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+1852|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+1844|0;v[a>>2]=93;v[a+4>>2]=0;v[b+1832>>2]=b+1572;t[b+1828|0]=1;a=b+1836|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(m=a+12|0,l=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,n=v[v[a+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+1860>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+2148|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+2140|0;v[a>>2]=33;v[a+4>>2]=0;v[b+2128>>2]=b+1868;t[b+2124|0]=1;a=b+2132|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+2156>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+2444|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+2436|0;v[a>>2]=64;v[a+4>>2]=0;v[b+2424>>2]=b+2164;t[b+2420|0]=1;a=b+2428|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(m=a+12|0,l=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,n=v[v[a+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+2452>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+2740|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+2732|0;v[a>>2]=34;v[a+4>>2]=0;v[b+2720>>2]=b+2460;t[b+2716|0]=1;a=b+2724|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+2748>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+3036|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+3028|0;v[a>>2]=31;v[a+4>>2]=0;v[b+3016>>2]=b+2756;t[b+3012|0]=1;a=b+3020|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(m=a+12|0,l=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,n=v[v[a+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+3044>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+3332|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+3324|0;v[a>>2]=10;v[a+4>>2]=0;v[b+3312>>2]=b+3052;t[b+3308|0]=1;a=b+3316|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+3340>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+3628|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+3620|0;v[a>>2]=10;v[a+4>>2]=0;v[b+3608>>2]=b+3348;t[b+3604|0]=1;a=b+3612|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(m=a+12|0,l=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,p=16755,q=113,n=v[v[a+12>>2]+8>>2],Ba[n](m|0,l|0,k|0,p|0,q|0)|0),v[j+3636>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;a=b+3924|0;v[a>>2]=4096;v[a+4>>2]=0;a=b+3916|0;v[a>>2]=10;v[a+4>>2]=0;v[b+3904>>2]=b+3644;t[b+3900|0]=1;a=b+3908|0;v[a>>2]=0;v[a+4>>2]=64;a=v[37696];c=v[37696];j=b,o=(q=a+12|0,p=28,k=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,l=16755,m=113,n=v[v[a+12>>2]+8>>2],Ba[n](q|0,p|0,k|0,l|0,m|0)|0),v[j+3932>>2]=o;a=xa-16|0;xa=a;xa=a+16|0;v[37389]=b;e=xa-16|0;xa=e;c=v[37389];b=v[37393]+96|0;v[e+12>>2]=b;a=v[c+172>>2];b:{if(a>>>0>=(v[c+176>>2]&2147483647)>>>0){a=0;b=v[c+176>>2];g=b&2147483647?b<<1:1;c:{if(!g){break c}b=g<<2;if(!b){break c}a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?56745:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,f,16608,553)|0}f=v[c+172>>2];i=(f<<2)+a|0;if((f|0)>0){h=v[c+168>>2];b=a;while(1){v[b>>2]=v[h>>2];h=h+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[e+12>>2];d:{if(v[c+176>>2]<0){break d}b=v[c+168>>2];if(!b){break d}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,b);f=v[c+172>>2]}v[c+176>>2]=g;v[c+168>>2]=a;v[c+172>>2]=f+1;break b}v[v[c+168>>2]+(a<<2)>>2]=b;v[c+172>>2]=a+1}xa=e+16|0;a=v[37394]}v[37394]=a+1;a=v[37393]}xa=d+272|0;return a|0}function JH(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,u=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0;m=xa-816|0;xa=m;t[m+792|0]=1;v[m+800>>2]=0;v[m+804>>2]=64;v[m+796>>2]=m+24;j=a;while(1){g=w[j+44|0];n=v[j>>2];a:{if(!(t[v[n+44>>2]+44|0]&1)){t[j+44|0]=g&254;v[m+8>>2]=j;v[m+12>>2]=0;v[m+16>>2]=0;e=v[n+28>>2];b:{if(!e){break b}o=v[n+20>>2];i=402653184;b=0;c=0;while(1){e=e-1|0;h=v[o>>2];if(w[h+20|0]==4){h=v[h+24>>2];f=x[v[h+52>>2]>>1]&(w[h+68|0]>>>3&1)-1&6;d=v[h+60>>2];c:{if((n|0)==(d|0)){l=f&4;d=v[h- -64>>2];f=f&2;break c}l=f&2;f=f&4}d:{if(!(t[v[d+44>>2]+44|0]&1?0:d)){if(l){k=k+1|0;c=c&-402653185;i=0;f=-2147483648}else{f=0}f=f|(d?536870912:1073741824);if(!(f>>>0<=c>>>0?b:0)){v[m+12>>2]=h;b=h}c=c|f;break d}e:{f:{if(!(!f|!l)){i=i&-268435457;c=c&-268435457;break f}if(l){i=0;c=c&-402653185;break f}if(!f){break e}c=i&402653184|c|-2147483648}k=k+1|0}c=c+1|0}v[m+16>>2]=c}o=o+4|0;if(e){continue}break}if(c>>>0<2415919104){break b}t[j+44|0]=g|1}e=v[m+800>>2];if(e>>>0>=(v[m+804>>2]&2147483647)>>>0){e=0;c=m+24|0;b=v[c+780>>2];h=b&2147483647?b<<1:1;g:{if(!h){break g}b=B(h,12);if(!(w[c+768|0]|b>>>0>768)){t[c+768|0]=1;e=c;break g}if(!b){break g}e=v[37696];i=e+12|0;e=(C=i,D=b,E=Ba[v[v[e>>2]+20>>2]](e)|0?39671:63804,F=16608,G=553,A=v[v[i>>2]+8>>2],Ba[A](C|0,D|0,E|0,F|0,G|0)|0)}b=v[c+776>>2];if((b|0)>0){f=B(b,12)+e|0;i=v[c+772>>2];b=e;while(1){d=v[i+4>>2];v[b>>2]=v[i>>2];v[b+4>>2]=d;v[b+8>>2]=v[i+8>>2];i=i+12|0;b=b+12|0;if(f>>>0>b>>>0){continue}break}b=v[c+776>>2]}i=v[m+12>>2];b=B(b,12)+e|0;v[b>>2]=v[m+8>>2];v[b+4>>2]=i;v[b+8>>2]=v[m+16>>2];h:{if(v[c+780>>2]<0){break h}b=v[c+772>>2];if((b|0)==(c|0)){t[c+768|0]=0;break h}if(!b){break h}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,b)}v[c+780>>2]=h;v[c+772>>2]=e;v[c+776>>2]=v[c+776>>2]+1;break a}b=v[m+12>>2];e=v[m+796>>2]+B(e,12)|0;v[e>>2]=v[m+8>>2];v[e+4>>2]=b;v[e+8>>2]=v[m+16>>2];v[m+800>>2]=v[m+800>>2]+1;break a}t[j+44|0]=g|1}j=v[j+16>>2];if(j){continue}break}e=w[a+44|0]&7;b=e|64;i:{if(k>>>0>=65){break i}b=e|32;if(k>>>0>=17){break i}b=e|16;if(k>>>0>=5){break i}b=k?e|8:e}t[a+44|0]=b;b=v[m+800>>2];j:{if(!b){break j}n=v[m+796>>2];e=0;i=0;k=0;l=32;d=xa-32|0;xa=d;t[d+12|0]=0;j=d-128|0;xa=j;v[d+8>>2]=j;c=b-1|0;k:{if((c|0)<=0){break k}while(1){l:{if((c|0)<=(e|0)){break l}while(1){if(c-e>>>0<=4){while(1){h=e;e=e+1|0;b=e;f=h;while(1){f=y[(n+B(b,12)|0)+8>>2]>y[(n+B(f,12)|0)+8>>2]?b:f;g=(b|0)<(c|0);b=b+1|0;if(g){continue}break}if((f|0)!=(h|0)){b=n+B(f,12)|0;v[d+24>>2]=v[b+8>>2];f=v[b+4>>2];v[d+16>>2]=v[b>>2];v[d+20>>2]=f;h=n+B(h,12)|0;v[b+8>>2]=v[h+8>>2];f=v[h+4>>2];v[b>>2]=v[h>>2];v[b+4>>2]=f;v[h+8>>2]=v[d+24>>2];b=v[d+20>>2];v[h>>2]=v[d+16>>2];v[h+4>>2]=b}if((c|0)!=(e|0)){continue}break l}}f=n+B(e,12)|0;o=v[f+8>>2];h=n+B((c+e|0)/2|0,12)|0;if(o>>>0>2]){v[d+24>>2]=v[f+8>>2];b=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=b;v[f+8>>2]=v[h+8>>2];b=v[h+4>>2];v[f>>2]=v[h>>2];v[f+4>>2]=b;v[h+8>>2]=v[d+24>>2];b=v[d+20>>2];v[h>>2]=v[d+16>>2];v[h+4>>2]=b;o=v[f+8>>2]}g=n+B(c,12)|0;b=v[g+8>>2];if(o>>>0>>0){v[d+24>>2]=v[f+8>>2];b=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=b;v[f+8>>2]=v[g+8>>2];b=v[g+4>>2];v[f>>2]=v[g>>2];v[f+4>>2]=b;v[g+8>>2]=v[d+24>>2];b=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=b;b=v[g+8>>2]}if(y[h+8>>2]>>0){v[d+24>>2]=v[h+8>>2];b=v[h+4>>2];v[d+16>>2]=v[h>>2];v[d+20>>2]=b;v[h+8>>2]=v[g+8>>2];b=v[g+4>>2];v[h>>2]=v[g>>2];v[h+4>>2]=b;v[g+8>>2]=v[d+24>>2];b=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=b}v[d+24>>2]=v[h+8>>2];b=v[h+4>>2];v[d+16>>2]=v[h>>2];v[d+20>>2]=b;f=c-1|0;o=n+B(f,12)|0;b=o;g=v[b+4>>2];v[h>>2]=v[b>>2];v[h+4>>2]=g;v[h+8>>2]=v[b+8>>2];v[b+8>>2]=v[d+24>>2];b=v[d+20>>2];v[o>>2]=v[d+16>>2];v[o+4>>2]=b;b=e;while(1){q=v[o+8>>2];while(1){h=b;b=b+1|0;g=n+B(b,12)|0;if(q>>>0>2]){continue}break}while(1){f=f-1|0;p=n+B(f,12)|0;if(q>>>0>y[p+8>>2]){continue}break}if((b|0)<(f|0)){v[d+24>>2]=v[g+8>>2];h=v[g+4>>2];v[d+16>>2]=v[g>>2];v[d+20>>2]=h;v[g+8>>2]=v[p+8>>2];h=v[p+4>>2];v[g>>2]=v[p>>2];v[g+4>>2]=h;v[p+8>>2]=v[d+24>>2];h=v[d+20>>2];v[p>>2]=v[d+16>>2];v[p+4>>2]=h;continue}break}v[d+24>>2]=v[g+8>>2];f=v[g+4>>2];v[d+16>>2]=v[g>>2];v[d+20>>2]=f;v[g+8>>2]=v[o+8>>2];f=v[o+4>>2];v[g>>2]=v[o>>2];v[g+4>>2]=f;v[o+8>>2]=v[d+24>>2];f=v[d+20>>2];v[o>>2]=v[d+16>>2];v[o+4>>2]=f;m:{if((b-e|0)<(c-b|0)){if(l-1>>>0<=i>>>0){f=l<<3;if(f){b=v[37696];g=b+12|0;b=(G=g,F=f,E=Ba[v[v[b>>2]+20>>2]](b)|0?39671:63804,D=17218,C=155,A=v[v[g>>2]+8>>2],Ba[A](G|0,F|0,E|0,D|0,C|0)|0)}else{b=0}l=l<<1;b=I9(b,j,i<<2);f=k;k=1;if(!(!f|!j)){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,j)}j=b}b=(i<<2)+j|0;v[b>>2]=e;v[b+4>>2]=h;e=h+2|0;break m}if(l-1>>>0<=i>>>0){f=l<<3;if(f){b=v[37696];g=b+12|0;b=(C=g,D=f,E=Ba[v[v[b>>2]+20>>2]](b)|0?39671:63804,F=17218,G=155,A=v[v[g>>2]+8>>2],Ba[A](C|0,D|0,E|0,F|0,G|0)|0)}else{b=0}l=l<<1;b=I9(b,j,i<<2);f=k;k=1;if(!(!f|!j)){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,j)}j=b}b=(i<<2)+j|0;v[b>>2]=h+2;v[b+4>>2]=c;c=h}i=i+2|0;if((c|0)>(e|0)){continue}break}}if(i){b=i-2|0;e=v[(b<<2)+j>>2];c=v[((i<<2)+j|0)-4>>2];i=b;continue}break}if(!k|!j){break k}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,j)}if(w[d+12|0]){v9(v[d+8>>2])}xa=d+32|0;n:{o:{e=v[m+800>>2]<<2;if(!e){break o}j=v[37696];h=Ba[v[v[j+12>>2]+8>>2]](j+12|0,e,24422,11939,262)|0;if(!h){break o}f=-1879048192;i=v[m+800>>2];j=0;b=0;while(1){k=h;if(b>>>0>>0){p:{while(1){d=j;c=v[m+796>>2]+B(b,12)|0;if(y[c+8>>2]>>0){break p}j=v[c>>2];v[j+40>>2]=v[c+4>>2];q:{if(w[c+11|0]&96){v[k>>2]=j;c=1;break q}r=v[j>>2];e=v[r+28>>2];if(!e){c=0;break q}z=v[c+4>>2];o=v[r+20>>2];c=0;g=k;while(1){e=e-1|0;l=v[o>>2];r:{if(w[l+20|0]!=4){break r}p=v[l+24>>2];if((p|0)==(z|0)){break r}q=x[v[p+52>>2]>>1]&(w[p+68|0]>>>3&1)-1&6;n=v[p+60>>2];s:{if((r|0)==(n|0)){l=q&4;n=v[p- -64>>2];q=q&2;break s}l=q&2;q=q&4}if(!n|t[v[n+44>>2]+44|0]&1|(q?0:l)){break r}l=v[n+164>>2];if(t[l+44|0]&1){break r}v[g>>2]=l;v[l+40>>2]=p;if(j){v[l+36>>2]=v[j+32>>2];v[j+32>>2]=l;v[l+28>>2]=j}t[l+44|0]=w[l+44|0]|1;g=g+4|0;c=c+1|0}o=o+4|0;if(e){continue}break}}v[j+24>>2]=d;k=(c<<2)+k|0;b=b+1|0;if((i|0)!=(b|0)){continue}break}b=i}e=h;if((k|0)!=(e|0)){while(1){c=e+4|0;g=v[e>>2];q=v[g>>2];e=v[q+28>>2];t:{if(!e){i=0;break t}r=v[g+40>>2];o=v[q+20>>2];i=0;f=k;while(1){e=e-1|0;d=v[o>>2];u:{if(w[d+20|0]!=4){break u}p=v[d+24>>2];if((p|0)==(r|0)){break u}d=x[v[p+52>>2]>>1]&(w[p+68|0]>>>3&1)-1&6;n=v[p+60>>2];v:{if((q|0)==(n|0)){l=d&4;n=v[p- -64>>2];d=d&2;break v}l=d&2;d=d&4}if(!n|t[v[n+44>>2]+44|0]&1|(d?0:l)){break u}d=v[n+164>>2];if(t[d+44|0]&1){break u}v[f>>2]=d;v[d+40>>2]=p;if(g){v[d+36>>2]=v[g+32>>2];v[g+32>>2]=d;v[d+28>>2]=g}t[d+44|0]=w[d+44|0]|1;f=f+4|0;i=i+1|0}o=o+4|0;if(e){continue}break}}e=c;k=(i<<2)+k|0;if((c|0)!=(k|0)){continue}break}}}b=b+s|0;s=0;i=b;e=b;c=v[m+800>>2];w:{if(b>>>0>=c>>>0){break w}while(1){f=v[m+796>>2];k=f+B(e,12)|0;if(y[k+8>>2]<2281701376){break w}d=v[k>>2];g=w[d+44|0];x:{if(!(g&1)){t[d+44|0]=g|1;c=f+B(i,12)|0;v[c+8>>2]=v[k+8>>2];f=v[k+4>>2];v[c>>2]=v[k>>2];v[c+4>>2]=f;i=i+1|0;c=v[m+800>>2];break x}s=s+1|0}e=e+1|0;if(c>>>0>e>>>0){continue}break}}f=-2013265920;u=u+1|0;if((u|0)!=2){continue}break}break n}b9(v[37696],16,11939,405,75987,0);break j}if(b>>>0>>0){while(1){i=v[m+796>>2]+B(b,12)|0;k=v[i>>2];e=w[k+44|0];if(!(e&1)){t[k+44|0]=e|1;e=h;d=0;o=v[k>>2];g=v[o+28>>2];if(g){p=v[i+4>>2];l=v[o+20>>2];while(1){g=g-1|0;c=v[l>>2];y:{if(w[c+20|0]!=4){break y}i=v[c+24>>2];if((i|0)==(p|0)){break y}c=x[v[i+52>>2]>>1]&(w[i+68|0]>>>3&1)-1&6;f=v[i+60>>2];z:{if((o|0)==(f|0)){n=c&4;f=v[i- -64>>2];c=c&2;break z}n=c&2;c=c&4}if(!f|t[v[f+44>>2]+44|0]&1|(c?0:n)){break y}c=v[f+164>>2];if(t[c+44|0]&1){break y}v[e>>2]=c;v[c+40>>2]=i;if(k){v[c+36>>2]=v[k+32>>2];v[k+32>>2]=c;v[c+28>>2]=k}t[c+44|0]=w[c+44|0]|1;e=e+4|0;d=d+1|0}l=l+4|0;if(g){continue}break}}if(d){c=h+(d<<2)|0;e=h;while(1){f=e+4|0;p=v[e>>2];s=v[p>>2];e=v[s+28>>2];A:{if(!e){i=0;break A}r=v[p+40>>2];o=v[s+20>>2];i=0;d=c;while(1){e=e-1|0;g=v[o>>2];B:{if(w[g+20|0]!=4){break B}q=v[g+24>>2];if((q|0)==(r|0)){break B}g=x[v[q+52>>2]>>1]&(w[q+68|0]>>>3&1)-1&6;n=v[q+60>>2];C:{if((s|0)==(n|0)){l=g&4;n=v[q- -64>>2];g=g&2;break C}l=g&2;g=g&4}if(!n|t[v[n+44>>2]+44|0]&1|(g?0:l)){break B}g=v[n+164>>2];if(t[g+44|0]&1){break B}v[d>>2]=g;v[g+40>>2]=q;if(p){v[g+36>>2]=v[p+32>>2];v[p+32>>2]=g;v[g+28>>2]=p}t[g+44|0]=w[g+44|0]|1;d=d+4|0;i=i+1|0}o=o+4|0;if(e){continue}break}}e=f;c=(i<<2)+c|0;if((e|0)!=(c|0)){continue}break}}v[k+24>>2]=j;c=v[m+800>>2];j=k}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+20>>2]=j;a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,h)}a=v[m+804>>2];D:{if((a|0)<0|!(a&2147483647)){break D}a=v[m+796>>2];if((a|0)==(m+24|0)|!a){break D}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,a)}xa=m+816|0}function jv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0);f=xa-320|0;xa=f;q=z[c+20>>2];n=z[c+16>>2];s=z[c+24>>2];k=z[c>>2];i=C(k+k);p=z[c+8>>2];j=z[c+4>>2];m=z[c+12>>2];r=C(m+m);c=a;o=z[a+8>>2];l=C(C(C(i*p)-C(j*r))*o);z[f+124>>2]=s-l;j=C(o*C(C(p*r)+C(i*j)));z[f+120>>2]=q-j;z[f+112>>2]=l+s;z[f+108>>2]=q+j;j=C(o*C(C(k*i)+C(C(m*r)+C(-1))));z[f+116>>2]=n-j;z[f+104>>2]=n+j;i=z[e>>2];m=z[a+4>>2];x=z[d+4>>2];n=C(x+x);s=z[d+8>>2];l=C(n*s);p=z[d>>2];q=C(p+p);k=z[d+12>>2];j=C(q*k);z[f+68>>2]=l-j;z[f+60>>2]=l+j;j=C(C(1)-C(p*q));r=C(x*n);z[f+72>>2]=j-r;l=j;j=C(s+s);o=C(s*j);z[f+56>>2]=l-o;s=C(q*s);p=C(n*k);z[f+64>>2]=s+p;l=C(q*x);j=C(j*k);z[f+52>>2]=l-j;z[f+48>>2]=s-p;z[f+44>>2]=l+j;z[f+40>>2]=C(C(1)-r)-o;z[f+76>>2]=z[d+16>>2];z[f+80>>2]=z[d+20>>2];z[f+84>>2]=z[d+24>>2];z[f+88>>2]=z[b+4>>2];z[f+92>>2]=z[b+8>>2];z[f+96>>2]=z[b+12>>2];d=0;I=f+76|0;J=f+88|0;G=G_(f+104|0,f+116|0,I,J,f+40|0,f+36|0,f+24|0);j=C(m+i);a:{if(G>=C(j*j)){break a}h=f- -64|0;b=f+52|0;b:{c:{if(G==C(0)){A=z[f+72>>2];x=z[f+68>>2];E=z[f+64>>2];r=z[f+60>>2];m=z[f+56>>2];o=z[f+52>>2];U=z[f+84>>2];V=z[f+80>>2];W=z[f+76>>2];R=z[f+124>>2];S=z[f+120>>2];T=z[f+116>>2];u=z[f+48>>2];P=z[f+112>>2];y=z[f+44>>2];F=z[f+108>>2];t=z[f+40>>2];Q=z[f+104>>2];break c}P=z[f+112>>2];R=z[f+124>>2];U=z[f+84>>2];A=z[f+72>>2];u=z[f+48>>2];r=z[f+60>>2];Q=z[f+104>>2];T=z[f+116>>2];W=z[f+76>>2];E=z[f+64>>2];t=z[f+40>>2];o=z[f+52>>2];k=z[f+36>>2];F=z[f+108>>2];S=z[f+120>>2];i=z[f+24>>2];y=z[f+44>>2];s=z[f+28>>2];m=z[f+56>>2];j=z[f+32>>2];x=z[f+68>>2];V=z[f+80>>2];p=C(C(C(C(i*y)+C(s*m))+C(j*x))+V);z[f+28>>2]=p;l=C(W+C(C(C(i*t)+C(s*o))+C(j*E)));z[f+24>>2]=l;j=C(U+C(C(C(i*u)+C(s*r))+C(j*A)));z[f+32>>2]=j;i=C(C(P+C(k*C(R-P)))-j);s=C(C(Q+C(k*C(T-Q)))-l);l=C(C(F+C(k*C(S-F)))-p);j=C(K(C(C(i*i)+C(C(s*s)+C(l*l)))));if(!(j>C(0))){break c}j=C(C(1)/j);A=C(i*j);z[f+16>>2]=A;E=C(l*j);z[f+12>>2]=E;x=C(s*j);z[f+8>>2]=x;hZ(g,f+104|0,z[c+4>>2],f+40|0,f+8|0,z[e>>2]);if(v[g+4096>>2]==2){break b}s=z[e>>2];q=z[c+4>>2];d=140784;FV(f+224|0,I,J,f+40|0,b,h);r=z[f+104>>2];z[f+208>>2]=r;o=z[f+108>>2];z[f+212>>2]=o;m=z[f+112>>2];z[f+216>>2]=m;n=z[f+116>>2];z[f+192>>2]=n;k=z[f+120>>2];z[f+196>>2]=k;i=z[f+124>>2];z[f+200>>2]=i;u=C(i-m);t=C(n-r);y=C(k-o);j=C(K(C(C(u*u)+C(C(t*t)+C(y*y)))));if(j>C(0)){p=C(C(.009999999776482582)/j);l=C(u*p);m=C(m-l);z[f+216>>2]=m;j=C(y*p);o=C(o-j);z[f+212>>2]=o;p=C(t*p);r=C(r-p);z[f+208>>2]=r;l=C(i+l);z[f+200>>2]=l;j=C(k+j);z[f+196>>2]=j;y=C(j-o);j=C(n+p);z[f+192>>2]=j;u=C(l-m);t=C(j-r)}z[f+180>>2]=y;z[f+176>>2]=t;z[f+184>>2]=u;i=C(C(t*E)-C(x*y));z[f+168>>2]=-i;l=C(C(u*x)-C(A*t));z[f+164>>2]=-l;p=C(C(y*A)-C(E*u));j=C(-p);z[f+160>>2]=j;z[f+172>>2]=-C(C(C(j*r)-C(o*l))-C(i*m));l=C(D(l));j=C(D(p));o=C(D(i));d:{e:{if(!(!(l>j)|!(l>o))){a=0;e=2;break e}b=2;e=0;a=1;if(!(j>2]*z[h+e>>2])-C(z[e+I>>2]*z[h+J>>2])));m=C(q+s);r=C(-A);o=C(-E);s=C(-x);e=0;while(1){h=w[d|0];J=w[d+1|0];z[f+136>>2]=r;z[f+132>>2]=o;z[f+128>>2]=s;I=B(h,12);h=f+224|0;f:{if(!iZ(f+208|0,f+192|0,f+176|0,f+160|0,a,b,i,f+128|0,I+h|0,h+B(J,12)|0,f+140|0,f+144|0)){break f}k=z[f+140>>2];if(!(k>2];if(h>>>0>63){break f}p=z[f+148>>2];l=z[f+152>>2];j=z[f+144>>2];v[g+4096>>2]=h+1;h=(h<<6)+g|0;z[h+16>>2]=j-C(x*k);z[h+8>>2]=A;z[h+4>>2]=E;z[h>>2]=x;v[h+52>>2]=-1;z[h+12>>2]=k-q;z[h+24>>2]=l-C(A*k);z[h+20>>2]=p-C(E*k)}d=d+2|0;e=e+1|0;if((e|0)!=12){continue}break}if(v[g+4096>>2]){break b}l=z[c+4>>2];z[g+8>>2]=A;z[g+4>>2]=E;z[g>>2]=x;v[g+4096>>2]=1;z[g+16>>2]=z[f+24>>2];z[g+20>>2]=z[f+28>>2];j=z[f+32>>2];v[g+52>>2]=-1;z[g+12>>2]=C(K(G))-l;z[g+24>>2]=j;break b}s=C(C(P*u)+C(C(Q*t)+C(F*y)));p=C(C(R*u)+C(C(T*t)+C(y*S)));a=s>p;L=z[c+4>>2];q=C(L+(a?s:p));l=C(C(U*u)+C(C(W*t)+C(y*V)));M=C(D(C(C(A*u)+C(C(E*t)+C(y*x)))));Z=z[f+96>>2];_=z[f+88>>2];$=z[f+92>>2];H=C(D(C(C(r*u)+C(C(o*t)+C(y*m)))));j=C(C(M*Z)+C(C(C(D(C(C(u*u)+C(C(t*t)+C(y*y)))))*_)+C($*H)));k=C(l-j);if(qk?k:i;if(iN;q=C(L+(a?O:N));n=C(C(U*r)+C(C(W*o)+C(V*m)));G=C(D(C(C(A*r)+C(C(E*o)+C(x*m)))));i=C(C(G*Z)+C(C(H*_)+C($*C(D(C(C(r*r)+C(C(o*o)+C(m*m))))))));k=C(n-i);if(qk?k:i;if(iH;q=C(L+(a?N:H));n=C(C(U*A)+C(C(W*E)+C(V*x)));i=C(C(C(D(C(C(A*A)+C(C(E*E)+C(x*x)))))*Z)+C(C(M*_)+C($*G)));k=C(n-i);if(qk?k:i;if(iC(0)){i=C(C(1)/C(K(i)));O=C(q*i);X=C(n*i);Y=C(k*i)}M=C(C(X*y)-C(t*Y));G=C(C(Y*u)-C(y*O));H=C(C(O*t)-C(u*X));g:{if(!(C(D(M))>C(9.999999974752427e-7)?1:C(D(G))>C(9.999999974752427e-7)|C(D(H))>C(9.999999974752427e-7))){break g}q=C(0);n=C(0);k=C(0);i=C(C(M*M)+C(C(G*G)+C(H*H)));if(i>C(0)){i=C(C(1)/C(K(i)));k=C(M*i);q=C(G*i);n=C(H*i)}N=C(C(P*k)+C(C(Q*q)+C(F*n)));M=C(C(R*k)+C(C(T*q)+C(S*n)));a=N>M;H=C(L+(a?N:M));G=C(C(U*k)+C(C(W*q)+C(V*n)));i=C(C(C(D(C(C(A*k)+C(C(E*q)+C(x*n)))))*Z)+C(C(C(D(C(C(u*k)+C(C(t*q)+C(y*n)))))*_)+C($*C(D(C(C(r*k)+C(C(o*q)+C(m*n))))))));y=C(G-i);if(Hy?y:i;if(!(iC(9.999999974752427e-7)?1:C(D(y))>C(9.999999974752427e-7)|C(D(t))>C(9.999999974752427e-7))){break h}m=C(0);r=C(0);o=C(0);i=C(C(u*u)+C(C(y*y)+C(t*t)));if(i>C(0)){m=C(C(1)/C(K(i)));o=C(u*m);r=C(t*m);m=C(y*m)}z[f+232>>2]=o;z[f+228>>2]=r;z[f+224>>2]=m;if(!jZ(f+224|0,f+104|0,L,f+40|0,f+160|0)){break a}i=z[f+160>>2];if(!(iC(9.999999974752427e-7)?1:C(D(k))>C(9.999999974752427e-7)|C(D(n))>C(9.999999974752427e-7))){break i}r=C(0);o=C(0);m=C(0);i=C(C(q*q)+C(C(k*k)+C(n*n)));if(i>C(0)){r=C(C(1)/C(K(i)));m=C(q*r);o=C(n*r);r=C(k*r)}z[f+232>>2]=m;z[f+228>>2]=o;z[f+224>>2]=r;if(!jZ(f+224|0,f+104|0,L,f+40|0,f+160|0)){break a}i=z[f+160>>2];if(!(i>2]=x;q=a?C(-l):l;z[f+132>>2]=q;n=a?C(-p):p;z[f+128>>2]=n;hZ(g,f+104|0,L,f+40|0,f+128|0,z[e>>2]);if(v[g+4096>>2]==2){break b}r=z[c+4>>2];d=140784;FV(f+224|0,I,J,f+40|0,b,h);A=z[f+104>>2];z[f+208>>2]=A;E=z[f+108>>2];z[f+212>>2]=E;F=z[f+112>>2];z[f+216>>2]=F;k=z[f+116>>2];z[f+192>>2]=k;i=z[f+120>>2];z[f+196>>2]=i;o=z[f+124>>2];z[f+200>>2]=o;u=C(o-F);t=C(k-A);m=C(i-E);j=C(K(C(C(u*u)+C(C(t*t)+C(m*m)))));if(j>C(0)){p=C(C(.009999999776482582)/j);j=C(u*p);F=C(F-j);z[f+216>>2]=F;l=C(m*p);E=C(E-l);z[f+212>>2]=E;p=C(t*p);A=C(A-p);z[f+208>>2]=A;j=C(o+j);z[f+200>>2]=j;u=C(j-F);l=C(i+l);z[f+196>>2]=l;j=C(k+p);z[f+192>>2]=j;t=C(j-A);m=C(l-E)}z[f+176>>2]=t;z[f+184>>2]=u;z[f+180>>2]=m;l=C(C(u*n)-C(x*t));z[f+164>>2]=l;o=C(C(m*x)-C(q*u));z[f+160>>2]=o;j=C(C(t*q)-C(n*m));z[f+168>>2]=j;z[f+172>>2]=-C(C(j*F)+C(C(o*A)+C(E*l)));p=C(D(j));l=C(D(l));j=C(D(o));j:{k:{if(!(!(l>j)|!(l>p))){b=0;e=2;break k}a=2;e=0;b=1;if(!(j>2]*z[h+e>>2])-C(z[e+I>>2]*z[h+J>>2])));e=0;while(1){h=f+224|0;l:{if(!iZ(f+208|0,f+192|0,f+176|0,f+160|0,b,a,o,f+128|0,h+B(w[d|0],12)|0,h+B(w[d+1|0],12)|0,f+8|0,f+144|0)){break l}h=v[g+4096>>2];if(h>>>0>63){break l}p=z[f+148>>2];l=z[f+152>>2];j=z[f+144>>2];m=z[f+8>>2];v[g+4096>>2]=h+1;h=(h<<6)+g|0;z[h+16>>2]=j-C(n*m);z[h+8>>2]=x;z[h+4>>2]=q;z[h>>2]=n;v[h+52>>2]=-1;z[h+12>>2]=-C(r+m);z[h+24>>2]=l-C(x*m);z[h+20>>2]=p-C(q*m)}d=d+2|0;e=e+1|0;if((e|0)!=12){continue}break}if(v[g+4096>>2]){break b}i=z[c+4>>2];m=z[f+116>>2];r=z[f+104>>2];o=z[f+120>>2];p=z[f+108>>2];l=z[f+124>>2];j=z[f+112>>2];z[g+8>>2]=x;z[g+4>>2]=q;z[g>>2]=n;d=1;v[g+4096>>2]=1;v[g+52>>2]=-1;z[g+24>>2]=C(j+l)*C(.5);z[g+20>>2]=C(p+o)*C(.5);z[g+16>>2]=C(r+m)*C(.5);z[g+12>>2]=-C(s+i);break a}d=1}xa=f+320|0;return d|0}function gZ(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=0,s=C(0),x=C(0),y=C(0),A=C(0),B=0,E=C(0),F=C(0),G=0,H=0,I=C(0),J=C(0),K=0,L=0,M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=0,ha=0;v[a+4096>>2]=0;q=z[f+16>>2];y=z[f+20>>2];j=z[f+8>>2];k=z[f>>2];l=z[f+4>>2];p=z[f+12>>2];r=xa-128|0;s=z[f+24>>2];F=C(-z[f+36>>2]);n=z[f+28>>2];I=z[f+40>>2];x=z[f+32>>2];J=z[f+44>>2];N=z[g+36>>2];O=z[g+40>>2];P=z[g+44>>2];A=C(C(C(C(s*F)-C(n*I))-C(x*J))+C(C(C(s*N)+C(n*O))+C(x*P)));Q=z[g>>2];R=z[g+4>>2];S=z[g+8>>2];T=z[e>>2];aa=C(C(C(C(s*Q)+C(n*R))+C(x*S))*T);E=C(A+aa);U=z[g+12>>2];V=z[g+16>>2];W=z[g+20>>2];X=z[e+4>>2];ba=C(C(C(C(s*U)+C(n*V))+C(x*W))*X);Y=z[g+24>>2];Z=z[g+28>>2];_=z[g+32>>2];$=z[e+8>>2];x=C(C(C(C(s*Y)+C(n*Z))+C(x*_))*$);s=C(ba+x);z[r+120>>2]=E+s;ca=C(C(C(C(p*F)-C(q*I))-C(y*J))+C(C(C(p*N)+C(q*O))+C(y*P)));da=C(T*C(C(C(p*Q)+C(q*R))+C(y*S)));n=C(ca+da);ea=C(X*C(C(C(p*U)+C(q*V))+C(y*W)));fa=C($*C(C(C(p*Y)+C(q*Z))+C(y*_)));q=C(ea+fa);z[r+116>>2]=n+q;y=C(A-aa);z[r+104>>2]=y+s;p=C(ca-da);z[r+100>>2]=p+q;z[r+24>>2]=E-s;z[r+20>>2]=n-q;x=C(ba-x);z[r+88>>2]=E-x;A=C(ea-fa);z[r+84>>2]=n-A;z[r+72>>2]=y-x;z[r+68>>2]=p-A;z[r+56>>2]=E+x;z[r+52>>2]=n+A;z[r+40>>2]=y+x;z[r+36>>2]=p+A;x=C(C(C(C(k*F)-C(l*I))-C(j*J))+C(C(C(k*N)+C(l*O))+C(j*P)));E=C(T*C(C(C(k*Q)+C(l*R))+C(j*S)));n=C(x+E);A=C(X*C(C(C(k*U)+C(l*V))+C(j*W)));l=C($*C(C(C(k*Y)+C(l*Z))+C(j*_)));j=C(A+l);z[r+112>>2]=n+j;k=C(x-E);z[r+96>>2]=k+j;z[r+16>>2]=n-j;z[r+8>>2]=y-s;z[r+4>>2]=p-q;z[r>>2]=k-j;q=C(A-l);z[r+80>>2]=n-q;z[r+64>>2]=k-q;z[r+48>>2]=n+q;z[r+32>>2]=k+q;d=C(d+h);c=C(c+h);y=C(-h);i=v[a+4096>>2];e=0;while(1){g=(e<<4)+r|0;q=z[g>>2];a:{if(q>1]=0;break a}t[g+12|0]=1;b:{j=z[g+4>>2];if(!(c>=C(D(j)))){break b}k=z[g+8>>2];if(!(d>=C(D(k)))){break b}t[g+13|0]=1;if(i>>>0>63){break a}g=i+1|0;v[a+4096>>2]=g;i=(i<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];l=z[b+8>>2];z[i+24>>2]=k;z[i+20>>2]=j;z[i+16>>2]=q;z[i+8>>2]=l;v[i+52>>2]=-1;z[i+12>>2]=-q;i=g;break a}t[g+13|0]=0}e=e+1|0;if((e|0)!=8){continue}break}H=100448;q=C(-d);y=C(-c);while(1){e=H;H=e+8|0;o=v[e>>2]<<4;g=o+r|0;m=v[e+4>>2]<<4;c:{if(!(w[(m+r|0)+12|0]?1:w[g+12|0])){break c}e=m+r|0;d:{if(!(!w[(o+r|0)+13|0]|!w[e+13|0])){m=i;break d}K=g+4|0;L=e+4|0;B=z[g+4>>2]>z[e+4>>2];o=B?g:e;G=B?e:g;j=z[G+4>>2];e:{if(!(j>2];if(!(k>=c)){m=i;break e}l=z[G+8>>2];k=C(C(c-j)/C(k-j));l=C(C(C(z[o+8>>2]-l)*k)+l);if(!(d>=C(D(l)))){m=i;break e}p=z[G>>2];k=C(C(C(z[o>>2]-p)*k)+p);if(!(C(k+h)>=C(0))){m=i;break e}if(i>>>0>63){m=i;break e}m=i+1|0;v[a+4096>>2]=m;i=(i<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];p=z[b+8>>2];z[i+24>>2]=l;z[i+20>>2]=c;z[i+16>>2]=k;z[i+8>>2]=p;v[i+52>>2]=-1;z[i+12>>2]=-k}f:{if(!(j>2];if(!(k>=y)){i=m;break f}l=z[G+8>>2];j=C(C(y-j)/C(k-j));k=C(C(C(z[o+8>>2]-l)*j)+l);if(!(d>=C(D(k)))){i=m;break f}l=z[G>>2];j=C(C(C(z[o>>2]-l)*j)+l);if(!(C(j+h)>=C(0))){i=m;break f}if(m>>>0>63){i=m;break f}i=m+1|0;v[a+4096>>2]=i;m=(m<<6)+a|0;z[m>>2]=z[b>>2];z[m+4>>2]=z[b+4>>2];l=z[b+8>>2];z[m+24>>2]=k;z[m+20>>2]=y;z[m+16>>2]=j;z[m+8>>2]=l;v[m+52>>2]=-1;z[m+12>>2]=-j}M=B?L:K;g=g+8|0;e=e+8|0;ga=B?g:e;ha=B?e:g;j=z[G+8>>2];k=z[o+8>>2];m=j>k;g=m?o:G;e=m?G:o;j=m?k:j;g:{if(!(j>2];if(!(l>=d)){o=i;break g}o=B?K:L;k=z[(m?o:M)>>2];l=C(C(d-j)/C(l-j));p=C(C(C(z[(m?M:o)>>2]-k)*l)+k);if(!(c>=C(D(p)))){o=i;break g}k=z[g>>2];k=C(C(C(z[e>>2]-k)*l)+k);if(!(C(k+h)>=C(0))){o=i;break g}if(i>>>0>63){o=i;break g}o=i+1|0;v[a+4096>>2]=o;i=(i<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];l=z[b+8>>2];z[i+24>>2]=d;z[i+20>>2]=p;z[i+16>>2]=k;z[i+8>>2]=l;v[i+52>>2]=-1;z[i+12>>2]=-k}if(!(j>2];if(!(l>=q)){m=o;break d}i=B?K:L;k=z[(m?i:M)>>2];j=C(C(q-j)/C(l-j));k=C(C(C(z[(m?M:i)>>2]-k)*j)+k);if(!(c>=C(D(k)))){m=o;break d}l=z[g>>2];j=C(C(C(z[e>>2]-l)*j)+l);if(!(C(j+h)>=C(0))){m=o;break d}if(o>>>0>63){m=o;break d}m=o+1|0;v[a+4096>>2]=m;i=(o<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];l=z[b+8>>2];z[i+24>>2]=q;z[i+20>>2]=k;z[i+16>>2]=j;z[i+8>>2]=l;v[i+52>>2]=-1;z[i+12>>2]=-j}h:{if(!(w[e+13|0]?1:w[g+12|0])){break h}if(w[e+12|0]){i=m;break c}if(!w[g+13|0]){break h}i=m;break c}j=z[g+4>>2];k=z[g>>2];k=C(C(-k)/C(z[e>>2]-k));j=C(C(C(z[e+4>>2]-j)*k)+j);if(!(c>=C(D(j)))){i=m;break c}l=z[g+8>>2];k=C(C(C(z[e+8>>2]-l)*k)+l);if(!(d>=C(D(k)))){i=m;break c}if(m>>>0>63){i=m;break c}i=m+1|0;v[a+4096>>2]=i;e=(m<<6)+a|0;z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];l=z[b+8>>2];z[e+24>>2]=k;z[e+20>>2]=j;z[e+8>>2]=l;v[e+52>>2]=-1;v[e+12>>2]=0;v[e+16>>2]=0}if((H|0)!=100544){continue}break}g=0;H=0;while(1){e=(g<<4)+100544|0;m=(v[e>>2]<<4)+r|0;i:{if(!w[m+12|0]){break i}o=(v[e+4>>2]<<4)+r|0;if(!w[o+12|0]){break i}G=(v[e+8>>2]<<4)+r|0;if(!w[G+12|0]){break i}B=(v[e+12>>2]<<4)+r|0;if(!w[B+12|0]){break i}if(!(!w[G+13|0]|(!w[m+13|0]|!w[o+13|0]))){if(w[B+13|0]){break i}}j:{if(H&1){e=i;break j}h=z[m+4>>2];j=z[B+4>>2];k=z[B+8>>2];l=z[m+8>>2];if(C(C(C(h-j)*C(q-k))-C(C(y-j)*C(l-k)))>=C(0)){e=i;break j}n=z[o+4>>2];p=C(n-h);x=C(q-l);E=C(y-h);A=z[o+8>>2];s=C(A-l);if(C(C(p*x)-C(E*s))>=C(0)){e=i;break j}F=z[G+4>>2];I=C(C(F-n)*C(q-A));J=C(y-n);n=z[G+8>>2];if(C(I-C(J*C(n-A)))>=C(0)){e=i;break j}if(C(C(C(j-F)*C(q-n))-C(C(y-F)*C(k-n)))>=C(0)){e=i;break j}h=C(j-h);j=C(k-l);k=z[m>>2];l=C(z[B>>2]-k);j=C(C(C(C(E*h)+C(x*j))*l)/C(C(j*j)+C(C(l*l)+C(h*h))));h=C(z[o>>2]-k);h=C(j+C(k+C(C(C(C(E*p)+C(x*s))*h)/C(C(s*s)+C(C(h*h)+C(p*p))))));if(!(h>=C(0))){e=i;break j}H=H|1;if(i>>>0>63){e=i;break j}e=i+1|0;v[a+4096>>2]=e;i=(i<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];j=z[b+8>>2];z[i+24>>2]=q;z[i+20>>2]=y;z[i+16>>2]=h;z[i+8>>2]=j;v[i+52>>2]=-1;z[i+12>>2]=-h}k:{if(H&2){i=e;break k}h=z[m+4>>2];j=z[B+4>>2];k=z[B+8>>2];l=z[m+8>>2];if(C(C(C(h-j)*C(q-k))-C(C(c-j)*C(l-k)))>=C(0)){i=e;break k}n=z[o+4>>2];p=C(n-h);x=C(q-l);E=C(c-h);A=z[o+8>>2];s=C(A-l);if(C(C(p*x)-C(E*s))>=C(0)){i=e;break k}F=z[G+4>>2];I=C(C(F-n)*C(q-A));J=C(c-n);n=z[G+8>>2];if(C(I-C(J*C(n-A)))>=C(0)){i=e;break k}if(C(C(C(j-F)*C(q-n))-C(C(c-F)*C(k-n)))>=C(0)){i=e;break k}h=C(j-h);j=C(k-l);k=z[m>>2];l=C(z[B>>2]-k);j=C(C(C(C(E*h)+C(x*j))*l)/C(C(j*j)+C(C(l*l)+C(h*h))));h=C(z[o>>2]-k);h=C(j+C(k+C(C(C(C(E*p)+C(x*s))*h)/C(C(s*s)+C(C(h*h)+C(p*p))))));if(!(h>=C(0))){i=e;break k}H=H|2;if(e>>>0>63){i=e;break k}i=e+1|0;v[a+4096>>2]=i;e=(e<<6)+a|0;z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];j=z[b+8>>2];z[e+24>>2]=q;z[e+20>>2]=c;z[e+16>>2]=h;z[e+8>>2]=j;v[e+52>>2]=-1;z[e+12>>2]=-h}l:{if(H&4){e=i;break l}h=z[m+4>>2];j=z[B+4>>2];k=z[B+8>>2];l=z[m+8>>2];if(C(C(C(h-j)*C(d-k))-C(C(y-j)*C(l-k)))>=C(0)){e=i;break l}n=z[o+4>>2];p=C(n-h);x=C(d-l);E=C(y-h);A=z[o+8>>2];s=C(A-l);if(C(C(p*x)-C(E*s))>=C(0)){e=i;break l}F=z[G+4>>2];I=C(C(F-n)*C(d-A));J=C(y-n);n=z[G+8>>2];if(C(I-C(J*C(n-A)))>=C(0)){e=i;break l}if(C(C(C(j-F)*C(d-n))-C(C(y-F)*C(k-n)))>=C(0)){e=i;break l}h=C(j-h);j=C(k-l);k=z[m>>2];l=C(z[B>>2]-k);j=C(C(C(C(E*h)+C(x*j))*l)/C(C(j*j)+C(C(l*l)+C(h*h))));h=C(z[o>>2]-k);h=C(j+C(k+C(C(C(C(E*p)+C(x*s))*h)/C(C(s*s)+C(C(h*h)+C(p*p))))));if(!(h>=C(0))){e=i;break l}H=H|4;if(i>>>0>63){e=i;break l}e=i+1|0;v[a+4096>>2]=e;i=(i<<6)+a|0;z[i>>2]=z[b>>2];z[i+4>>2]=z[b+4>>2];j=z[b+8>>2];z[i+24>>2]=d;z[i+20>>2]=y;z[i+16>>2]=h;z[i+8>>2]=j;v[i+52>>2]=-1;z[i+12>>2]=-h}if(H&8){i=e;break i}h=z[m+4>>2];j=z[B+4>>2];k=z[B+8>>2];l=z[m+8>>2];if(C(C(C(h-j)*C(d-k))-C(C(c-j)*C(l-k)))>=C(0)){i=e;break i}n=z[o+4>>2];p=C(n-h);x=C(d-l);E=C(c-h);A=z[o+8>>2];s=C(A-l);if(C(C(p*x)-C(E*s))>=C(0)){i=e;break i}F=z[G+4>>2];I=C(C(F-n)*C(d-A));J=C(c-n);n=z[G+8>>2];if(C(I-C(J*C(n-A)))>=C(0)){i=e;break i}if(C(C(C(j-F)*C(d-n))-C(C(c-F)*C(k-n)))>=C(0)){i=e;break i}h=C(j-h);j=C(k-l);k=z[m>>2];l=C(z[B>>2]-k);j=C(C(C(C(E*h)+C(x*j))*l)/C(C(j*j)+C(C(l*l)+C(h*h))));h=C(z[o>>2]-k);h=C(j+C(k+C(C(C(C(E*p)+C(x*s))*h)/C(C(s*s)+C(C(h*h)+C(p*p))))));if(!(h>=C(0))){i=e;break i}H=H|8;if(e>>>0>63){i=e;break i}i=e+1|0;v[a+4096>>2]=i;e=(e<<6)+a|0;z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];j=z[b+8>>2];z[e+24>>2]=d;z[e+20>>2]=c;z[e+16>>2]=h;z[e+8>>2]=j;v[e+52>>2]=-1;z[e+12>>2]=-h}if(g>>>0<=4){g=g+1|0;if((H|0)!=15){continue}}break}if(i){g=0;while(1){q=z[f+36>>2];y=z[f+24>>2];j=z[f+12>>2];k=z[f>>2];l=z[f+40>>2];p=z[f+28>>2];s=z[f+16>>2];n=z[f+4>>2];b=(g<<6)+a|0;c=z[b+16>>2];d=z[b+20>>2];h=z[b+24>>2];z[b+24>>2]=C(C(C(c*z[f+8>>2])+C(d*z[f+20>>2]))+C(h*z[f+32>>2]))+z[f+44>>2];z[b+20>>2]=l+C(C(C(c*n)+C(d*s))+C(h*p));z[b+16>>2]=q+C(C(C(c*k)+C(d*j))+C(h*y));g=g+1|0;if((i|0)!=(g|0)){continue}break}}return i}function UX(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=0,A=C(0),D=C(0),E=0,G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0);l=xa-288|0;xa=l;k=xa-288|0;xa=k;v[k+264>>2]=0;v[k+268>>2]=0;v[k+256>>2]=0;v[k+260>>2]=0;M=z[d+8>>2];H=z[d+4>>2];N=z[d>>2];I=z[e+8>>2];O=z[e+4>>2];x=z[e>>2];v[k+240>>2]=1;p=z[c+8>>2];q=z[c>>2];n=z[c+4>>2];v[k+172>>2]=0;o=C(C(p*p)+C(C(q*q)+C(n*n)))>C(1.1920928955078125e-7);p=o?p:C(0);r=p;q=o?q:C(1);n=o?n:C(0);p=C(C(1)/C(K(C(C(p*p)+C(C(q*q)+C(n*n))))));s=C(r*p);z[k+168>>2]=-s;u=C(n*p);z[k+164>>2]=-u;r=C(q*p);z[k+160>>2]=-r;o=k+160|0;UW(k+224|0,a,o);y=v[b+4>>2];A=z[y+56>>2];S=z[y+52>>2];T=z[y+72>>2];E=y- -64|0;U=z[E>>2];D=z[y+68>>2];G=z[y+88>>2];q=z[y+80>>2];n=z[y+84>>2];p=z[y+48>>2];v[k+172>>2]=0;z[k+168>>2]=C(G*s)+C(C(q*r)+C(u*n));z[k+164>>2]=C(T*s)+C(C(U*r)+C(u*D));z[k+160>>2]=C(A*s)+C(C(p*r)+C(u*S));o=IV(y,o);A=z[E>>2];S=z[y+80>>2];T=z[y+84>>2];U=z[y+52>>2];D=z[y+68>>2];G=z[y+88>>2];o=v[y+152>>2]+B(o,12)|0;J=z[o+8>>2];q=z[y+56>>2];L=z[o>>2];n=z[y+72>>2];r=z[o+4>>2];p=z[y+48>>2];v[k+180>>2]=0;v[k+184>>2]=0;v[k+188>>2]=0;v[k+192>>2]=0;v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;v[k+208>>2]=0;v[k+212>>2]=0;v[k+216>>2]=0;v[k+220>>2]=0;v[k+172>>2]=0;v[k+176>>2]=0;q=C(C(G*J)+C(C(q*L)+C(r*n)));s=C(z[k+232>>2]-q);z[k+168>>2]=s;n=C(C(T*J)+C(C(U*L)+C(r*D)));u=C(z[k+228>>2]-n);z[k+164>>2]=u;p=C(C(S*J)+C(C(p*L)+C(r*A)));r=C(z[k+224>>2]-p);z[k+160>>2]=r;v[k+120>>2]=0;v[k+124>>2]=0;v[k+128>>2]=0;v[k+132>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+112>>2]=0;v[k+116>>2]=0;o=v[k+236>>2];v[k+104>>2]=v[k+232>>2];v[k+108>>2]=o;o=v[k+228>>2];v[k+96>>2]=v[k+224>>2];v[k+100>>2]=o;v[k+52>>2]=0;v[k+56>>2]=0;v[k+60>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+44>>2]=0;v[k+48>>2]=0;z[k+40>>2]=q;z[k+36>>2]=n;z[k+32>>2]=p;D=C(-s);G=C(-u);p=C(-r);a:{b:{A=C(C(s*s)+C(C(r*r)+C(u*u)));q=z[v[b+4>>2]+24>>2];o=v[a+4>>2];n=z[o+24>>2];n=C((n>q?q:n)*C(.10000000149011612));ca=C(n*n);c:{if(!(A>ca)){q=p;n=G;i=D;S=r;T=u;U=s;break c}_=C(n+i);ea=C(_*_);L=C(C(x*C(0))+N);N=C(C(O*C(0))+H);O=C(C(I*C(0))+M);i=D;n=G;q=p;while(1){S=r;T=u;U=s;v[k+28>>2]=0;r=C(C(1)/C(K(C(C(D*D)+C(C(p*p)+C(G*G))))));X=C(D*r);z[k+24>>2]=X;Q=C(p*r);z[k+16>>2]=Q;Y=C(G*r);z[k+20>>2]=Y;o=k+272|0;UW(o,a,k+16|0);fa=z[k+284>>2];$=z[k+280>>2];aa=z[k+272>>2];ba=z[k+276>>2];m=v[b+4>>2];V=z[m+52>>2];J=z[m+56>>2];M=z[m+72>>2];E=m- -64|0;H=z[E>>2];I=z[m+68>>2];x=z[m+88>>2];s=z[m+80>>2];u=z[m+84>>2];r=z[m+48>>2];v[k+284>>2]=0;W=C(-Q);z[k+280>>2]=C(C(s*W)-C(u*Y))-C(x*X);z[k+276>>2]=C(C(H*W)-C(I*Y))-C(M*X);z[k+272>>2]=C(C(r*W)-C(V*Y))-C(J*X);o=IV(m,o);s=z[k+16>>2];o=v[m+152>>2]+B(o,12)|0;H=z[o+8>>2];I=z[o>>2];x=z[o+4>>2];V=C(L+C(C(z[m+80>>2]*H)+C(C(z[m+48>>2]*I)+C(x*z[E>>2]))));P=C(aa-V);u=z[k+20>>2];J=C(N+C(C(z[m+84>>2]*H)+C(C(z[m+52>>2]*I)+C(x*z[m+68>>2]))));Z=C(ba-J);r=z[k+24>>2];M=C(O+C(C(z[m+88>>2]*H)+C(C(z[m+56>>2]*I)+C(x*z[m+72>>2]))));Q=C($-M);H=C(C(C(C(s*C(-P))-C(u*Z))-C(r*Q))-_);if(H>C(0)){I=z[e+8>>2];x=z[e>>2];ga=C(s*x);s=z[e+4>>2];u=C(C(r*I)+C(ga+C(u*s)));if(u>=C(0)){break b}r=R;R=C(r-C(H/u));if(R>r){if(R>C(1)){break b}q=z[d+8>>2];n=z[d+4>>2];i=z[d>>2];v[k+76>>2]=0;v[k+60>>2]=0;v[k+44>>2]=0;u=C(i+C(x*R));x=C(u-L);J=C(x+z[k+64>>2]);z[k+64>>2]=J;r=C(n+C(s*R));n=C(r-N);M=C(n+z[k+68>>2]);z[k+68>>2]=M;A=C(q+C(I*R));i=C(A-O);H=C(i+z[k+72>>2]);z[k+72>>2]=H;I=C(x+z[k+48>>2]);z[k+48>>2]=I;L=C(n+z[k+52>>2]);z[k+52>>2]=L;N=C(i+z[k+56>>2]);z[k+56>>2]=N;O=C(x+z[k+32>>2]);z[k+32>>2]=O;x=C(n+z[k+36>>2]);z[k+36>>2]=x;s=C(i+z[k+40>>2]);z[k+40>>2]=s;q=z[k+96>>2];n=z[k+100>>2];i=z[k+104>>2];v[k+172>>2]=0;z[k+168>>2]=i-s;z[k+164>>2]=n-x;z[k+160>>2]=q-O;q=z[k+112>>2];n=z[k+116>>2];i=z[k+120>>2];v[k+188>>2]=0;z[k+184>>2]=i-N;z[k+180>>2]=n-L;z[k+176>>2]=q-I;q=z[k+128>>2];n=z[k+132>>2];i=z[k+136>>2];v[k+204>>2]=0;z[k+200>>2]=i-H;z[k+196>>2]=n-M;z[k+192>>2]=q-J;m=v[b+4>>2];I=z[m+56>>2];L=z[m+52>>2];N=z[m+72>>2];E=m- -64|0;O=z[E>>2];x=z[m+68>>2];s=z[m+88>>2];q=z[m+80>>2];n=z[m+84>>2];i=z[m+48>>2];v[k+284>>2]=0;H=s;s=C(-X);J=n;n=C(-Y);z[k+280>>2]=C(H*s)+C(C(q*W)+C(J*n));z[k+276>>2]=C(N*s)+C(C(O*W)+C(x*n));z[k+272>>2]=C(I*s)+C(C(i*W)+C(L*n));o=IV(m,k+272|0);o=v[m+152>>2]+B(o,12)|0;q=z[o+8>>2];n=z[o>>2];i=z[o+4>>2];M=C(A+C(C(z[m+88>>2]*q)+C(C(z[m+56>>2]*n)+C(i*z[m+72>>2]))));Q=C($-M);J=C(r+C(C(z[m+84>>2]*q)+C(C(z[m+52>>2]*n)+C(i*z[m+68>>2]))));Z=C(ba-J);V=C(u+C(C(z[m+80>>2]*q)+C(C(z[m+48>>2]*n)+C(i*z[E>>2]))));P=C(aa-V);q=p;n=G;i=D;L=u;N=r;O=A;A=C(34028234663852886e22)}}x=A;E=v[k+240>>2];o=E<<4;m=o+(k+96|0)|0;z[m+12>>2]=fa;z[m+8>>2]=$;z[m+4>>2]=ba;z[m>>2]=aa;m=o+(k+32|0)|0;v[m+12>>2]=0;z[m+8>>2]=M;z[m+4>>2]=J;z[m>>2]=V;o=o+(k+160|0)|0;v[o+12>>2]=0;z[o+8>>2]=Q;z[o+4>>2]=Z;z[o>>2]=P;v[k+240>>2]=E+1;d:{e:{switch(E-1|0){case 0:A=z[k+168>>2];s=C(z[k+184>>2]-A);D=z[k+160>>2];u=C(z[k+176>>2]-D);G=z[k+164>>2];r=C(z[k+180>>2]-G);p=C(C(s*s)+C(C(u*u)+C(r*r)));if(p<=C(1.1920928955078125e-7)){v[k+240>>2]=1;o=v[k+164>>2];v[k+272>>2]=v[k+160>>2];v[k+276>>2]=o;o=v[k+172>>2];v[k+280>>2]=v[k+168>>2];v[k+284>>2]=o;break d}p=C(F(C(C(C(C(C(-D)*u)-C(r*G))-C(A*s))/p),C(1)));p=p>C(0)?p:C(0);z[k+280>>2]=A+C(s*p);z[k+276>>2]=G+C(r*p);z[k+272>>2]=D+C(u*p);break d;case 1:KV(k+272|0,k+160|0,k+96|0,k+32|0,k+240|0);break d;case 2:O_(k+272|0,k+160|0,k+96|0,k+32|0,k+240|0);break d;default:break e}}z[k+280>>2]=Q;z[k+276>>2]=Z;z[k+272>>2]=P}s=z[k+280>>2];D=C(-s);u=z[k+276>>2];G=C(-u);r=z[k+272>>2];p=C(-r);A=C(C(s*s)+C(C(r*r)+C(u*u)));if(eaA){continue}break}m=!(x>A);o=v[a+4>>2]}y=w[o+32|0];P=C(0);x=C(0);d=!(A>ca)|m;D=d?i:D;q=d?q:p;p=d?n:G;i=C(K(C(C(D*D)+C(C(q*q)+C(p*p)))));if(!(i<=C(1.1920928955078125e-7))){i=C(C(1)/i);da=C(D*i);P=C(p*i);x=C(q*i)}v[l+268>>2]=0;z[l+264>>2]=-da;z[l+260>>2]=-P;z[l+256>>2]=-x;z[l+240>>2]=R;v[l+252>>2]=v[k+252>>2];d=v[k+248>>2];v[l+244>>2]=v[k+244>>2];v[l+248>>2]=d;v[k+284>>2]=0;z[k+280>>2]=m?U:s;z[k+276>>2]=m?T:u;z[k+272>>2]=m?S:r;m=v[k+268>>2];o=v[k+264>>2];v[k+24>>2]=o;v[k+28>>2]=m;E=v[k+260>>2];d=v[k+256>>2];v[k+16>>2]=d;v[k+20>>2]=E;v[k+8>>2]=o;v[k+12>>2]=m;v[k>>2]=d;v[k+4>>2]=E;JV(k+160|0,k+96|0,k+32|0,k+272|0,k+16|0,k,v[k+240>>2]);q=z[v[a+4>>2]+16>>2];n=z[k+16>>2];p=z[k+20>>2];i=z[k+24>>2];v[l+284>>2]=0;z[l+280>>2]=i+(y?C(da*q):C(-0));z[l+276>>2]=p+(y?C(P*q):C(-0));z[l+272>>2]=n+(y?C(x*q):C(-0));o=1;break a}o=0}xa=k+288|0;if(o){d=v[l+244>>2];v[f>>2]=v[l+240>>2];v[f+4>>2]=d;d=v[l+252>>2];v[f+8>>2]=v[l+248>>2];v[f+12>>2]=d;if(!(!j|z[l+240>>2]!=C(0))){j=v[a+4>>2];E=v[b+4>>2];z[l+224>>2]=C(z[j+16>>2]+z[E+16>>2])*C(100);t[l+215|0]=0;v[l+168>>2]=0;v[l+172>>2]=0;v[l+160>>2]=0;v[l+164>>2]=0;v[l+152>>2]=0;v[l+156>>2]=0;v[l+144>>2]=0;v[l+148>>2]=0;v[l+136>>2]=0;v[l+140>>2]=0;v[l+128>>2]=0;v[l+132>>2]=0;v[l+192>>2]=0;d=v[a+8>>2];v[l+56>>2]=d;v[l+48>>2]=141516;v[l+52>>2]=j;j=v[d+12>>2];v[l+72>>2]=v[d+8>>2];v[l+76>>2]=j;j=v[d+20>>2];v[l+80>>2]=v[d+16>>2];v[l+84>>2]=j;j=v[d+28>>2];v[l+88>>2]=v[d+24>>2];v[l+92>>2]=j;j=v[d+36>>2];v[l+96>>2]=v[d+32>>2];v[l+100>>2]=j;j=v[d+44>>2];v[l+104>>2]=v[d+40>>2];v[l+108>>2]=j;j=v[d+52>>2];v[l+112>>2]=v[d+48>>2];v[l+116>>2]=j;j=v[d+60>>2];v[l+120>>2]=v[d+56>>2];v[l+124>>2]=j;j=v[d+4>>2];v[l+64>>2]=v[d>>2];v[l+68>>2]=j;n=z[l+68>>2];z[l+68>>2]=z[l+80>>2];p=z[l+88>>2];i=z[l+72>>2];z[l+72>>2]=z[l+96>>2];z[l+80>>2]=n;z[l+96>>2]=i;z[l+88>>2]=z[l+100>>2];z[l+100>>2]=p;v[l+40>>2]=141216;v[l+44>>2]=E;f:{g:{if(VX(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}v[l+16>>2]=1065353216;c=v[l+28>>2];v[l+8>>2]=v[l+24>>2];v[l+12>>2]=c;c=v[l+20>>2];v[l>>2]=v[l+16>>2];v[l+4>>2]=c;if(K_(a,b,l+220|0,l+216|0,w[l+215|0],0,l,l+128|0)-5>>>0<=1){break g}v[l+280>>2]=0;v[l+284>>2]=0;v[l+272>>2]=0;v[l+276>>2]=0;q=z[e+8>>2];n=z[e>>2];p=z[e+4>>2];v[l+268>>2]=0;i=C(C(1)/C(K(C(C(q*q)+C(C(n*n)+C(p*p))))));z[l+264>>2]=i*C(-q);z[l+260>>2]=i*C(-p);z[l+256>>2]=i*C(-n);i=C(0);break f}a=v[l+140>>2];v[l+280>>2]=v[l+136>>2];v[l+284>>2]=a;a=v[l+132>>2];v[l+272>>2]=v[l+128>>2];v[l+276>>2]=a;a=v[l+164>>2];v[l+256>>2]=v[l+160>>2];v[l+260>>2]=a;a=v[l+172>>2];v[l+264>>2]=v[l+168>>2];v[l+268>>2]=a;i=z[l+192>>2]}z[f>>2]=i>2];v[h>>2]=v[l+272>>2];v[h+4>>2]=a;a=v[l+284>>2];v[h+8>>2]=v[l+280>>2];v[h+12>>2]=a;a=v[l+260>>2];v[g>>2]=v[l+256>>2];v[g+4>>2]=a;a=v[l+268>>2];v[g+8>>2]=v[l+264>>2];v[g+12>>2]=a}xa=l+288|0;return o}function qN(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=C(0),t=0,u=0,w=0,y=0,A=0,D=0,E=0,F=C(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=C(0),V=0,W=0,X=0,Y=0,Z=0,_=C(0);d=v[a+32>>2];c=v[a+36>>2];E=v[a+40>>2];b=v[a+28>>2];F=z[b+92>>2];N=v[b+80>>2];R=v[b+84>>2];y=xa-48|0;xa=y;G=v[a+44>>2];a=v[G+368>>2];t=v[a>>2];if(t){v[a>>2]=v[t>>2]}if(!t){a=v[37696];h=Ba[v[v[a>>2]+20>>2]](a)|0?26947:63804;h=Ba[v[v[a+12>>2]+8>>2]](a+12|0,12195,h,19395,82)|0;a=h+19&-16;v[a-4>>2]=a-h;t=hB(a,v[G+372>>2])}f=v[b+100>>2]+4|0;v[b+100>>2]=f;g=v[b+108>>2]+128|0;v[b+108>>2]=g;e=v[b+116>>2]+1|0;v[b+116>>2]=e;J=t+12048|0;i=v[c+4>>2];I=v[E+11896>>2];V=v[d+56>>2];S=v[E+11892>>2];D=v[G+484>>2];W=v[G+472>>2];O=v[d+44>>2];A=v[d+36>>2];h=v[c>>2];T=v[E+11968>>2];K=t+12060|0;a=v[E+12052>>2];if(a>>>0>(v[t+12056>>2]&2147483647)>>>0){zw(J,a);a=v[E+12052>>2]}if((v[t+12068>>2]&2147483647)>>>0>>0){zw(K,a)}o=f-4|0;u=g-128|0;r=e-1|0;k=i&2147483647;v[y+40>>2]=v[J>>2];v[y+44>>2]=v[K>>2];U=C(C(1)/F);a:{if(N>>>0<2){c=0;g=0;l=128;i=4;break a}a=V<<6;H=a+D|0;P=a+W|0;i=4;l=128;g=0;c=0;L=1;while(1){b:{if(v[b+112>>2]>=(p|0)){break b}a=3e4;if(v[b+112>>2]>=(p|0)){break b}while(1){if(v[b+112>>2]>=(p|0)){break b}a=a-1|0;if(a){continue}a=1e4;continue}}c:{if(v[b+120>>2]>=(c|0)){break c}a=3e4;if(v[b+120>>2]>=(c|0)){break c}while(1){if(v[b+120>>2]>=(c|0)){break c}a=a-1|0;if(a){continue}a=1e4;continue}}a=0;e=r-c|0;d:{if(k>>>0<=e>>>0){break d}while(1){d=v[v[E+12144>>2]+B(e,52)>>2];Ba[v[v[d>>2]+136>>2]](d,F,U,v[J>>2],v[K>>2],0,1,s);a=a+1|0;d=v[b+116>>2]+1|0;v[b+116>>2]=d;r=d-1|0;e=r-c|0;if(k>>>0>e>>>0){continue}break}if(!a){break d}v[b+120>>2]=v[b+120>>2]+a}e:{q=c+k|0;if((q|0)<=v[b+120>>2]){break e}a=3e4;if((q|0)<=v[b+120>>2]){break e}while(1){if((q|0)<=v[b+120>>2]){break e}a=a-1|0;if(a){continue}a=1e4;continue}}j=0;n=0;if(I){while(1){f:{if(v[b+104>>2]>=(g|0)){break f}a=3e4;if(v[b+104>>2]>=(g|0)){break f}while(1){if(v[b+104>>2]>=(g|0)){break f}a=a-1|0;if(a){continue}a=1e4;continue}}d=o-g|0;f=v[(n<<2)+S>>2];g:{if(d>>>0>=f>>>0){break g}Q=(j<<3)+O|0;e=0;while(1){a=f-d|0;m=a>>>0>>0?a:i;h:{if(!m){break h}w=Q+(d<<3)|0;a=0;if((m|0)!=1){Z=m&-2;c=0;while(1){M=a<<3;X=M+w|0;Y=y+8|0;Ba[v[(x[X+6>>1]<<2)+132448>>2]](X,A,D,C(-34028234663852886e22),s,Y);M=w+(M|8)|0;Ba[v[(x[M+6>>1]<<2)+132448>>2]](M,A,D,C(-34028234663852886e22),s,Y);a=a+2|0;c=c+2|0;if((Z|0)!=(c|0)){continue}break}}if(!(m&1)){break h}a=w+(a<<3)|0;Ba[v[(x[a+6>>1]<<2)+132448>>2]](a,A,D,C(-34028234663852886e22),s,y+8|0)}e=e+m|0;i=i-m|0;i:{if(i){o=m+o|0;d=d+m|0;break i}i=4;a=v[b+100>>2]+4|0;v[b+100>>2]=a;o=a-4|0;d=o-g|0}if(f>>>0>d>>>0){continue}break}if(!e){break g}v[b+104>>2]=v[b+104>>2]+e}j=f+j|0;g=g+f|0;n=n+1|0;if((I|0)!=(n|0)){continue}break}}j:{if(v[b+104>>2]>=(g|0)){break j}a=3e4;if(v[b+104>>2]>=(g|0)){break j}while(1){if(v[b+104>>2]>=(g|0)){break j}a=a-1|0;if(a){continue}a=1e4;continue}}d=0;c=u-p|0;k:{if(h>>>0<=c>>>0){break k}while(1){a=h-c|0;f=a>>>0>>0?a:l;if(f){a=c<<6;e=a+H|0;j=a+P|0;a=0;while(1){a=a+1|0;n=a<<6;IM(n+j|0,e+n|0,F);if((a|0)!=(f|0)){continue}break}}d=d+f|0;l=l-f|0;l:{if(l){u=f+u|0;c=c+f|0;break l}l=128;a=v[b+108>>2]+128|0;v[b+108>>2]=a;u=a-128|0;c=u-p|0}if(h>>>0>c>>>0){continue}break}if(!d){break k}v[b+112>>2]=v[b+112>>2]+d}a=0;e=r-q|0;m:{if(k>>>0<=e>>>0){break m}while(1){d=v[E+12144>>2]+B(e,52)|0;c=v[(v[v[d>>2]+24>>2]<<2)+149624>>2];if(c){Ba[c|0](d,F,v[y+44>>2])}a=a+1|0;d=v[b+116>>2]+1|0;v[b+116>>2]=d;r=d-1|0;e=r-q|0;if(k>>>0>e>>>0){continue}break}if(!a){break m}v[b+120>>2]=v[b+120>>2]+a}c=k+q|0;p=h+p|0;s=C(s+F);L=L+1|0;if((N|0)!=(L|0)){continue}break}}n:{a=v[b+112>>2]>=(p|0);if(a|a){break n}a=3e4;while(1){if(v[b+112>>2]>=(p|0)){break n}a=a-1|0;if(a){continue}a=1e4;continue}}o:{a=v[b+120>>2]>=(c|0);if(a|a){break o}a=3e4;while(1){if(v[b+120>>2]>=(c|0)){break o}a=a-1|0;if(a){continue}a=1e4;continue}}e=r-c|0;p:{if(k>>>0<=e>>>0){break p}a=0;while(1){d=v[v[E+12144>>2]+B(e,52)>>2];Ba[v[v[d>>2]+136>>2]](d,F,U,v[J>>2],v[K>>2],0,1,s);a=a+1|0;d=v[b+116>>2]+1|0;v[b+116>>2]=d;r=d-1|0;e=r-c|0;if(k>>>0>e>>>0){continue}break}if(!a){break p}v[b+120>>2]=v[b+120>>2]+a}q:{q=c+k|0;if((q|0)<=v[b+120>>2]|(q|0)<=v[b+120>>2]){break q}a=3e4;while(1){if((q|0)<=v[b+120>>2]){break q}a=a-1|0;if(a){continue}a=1e4;continue}}if(I){n=0;j=0;while(1){r:{if(v[b+104>>2]>=(g|0)){break r}a=3e4;if(v[b+104>>2]>=(g|0)){break r}while(1){if(v[b+104>>2]>=(g|0)){break r}a=a-1|0;if(a){continue}a=1e4;continue}}d=o-g|0;f=v[(n<<2)+S>>2];s:{if(d>>>0>=f>>>0){break s}N=(j<<3)+O|0;e=0;while(1){a=f-d|0;m=a>>>0>>0?a:i;t:{if(!m){break t}w=N+(d<<3)|0;a=0;if((m|0)!=1){L=m&-2;c=0;while(1){H=a<<3;P=H+w|0;Q=y+8|0;Ba[v[(x[P+6>>1]<<2)+132544>>2]](P,A,D,s,Q);H=w+(H|8)|0;Ba[v[(x[H+6>>1]<<2)+132544>>2]](H,A,D,s,Q);a=a+2|0;c=c+2|0;if((L|0)!=(c|0)){continue}break}}if(!(m&1)){break t}a=w+(a<<3)|0;Ba[v[(x[a+6>>1]<<2)+132544>>2]](a,A,D,s,y+8|0)}e=e+m|0;i=i-m|0;u:{if(i){o=m+o|0;d=d+m|0;break u}i=4;a=v[b+100>>2]+4|0;v[b+100>>2]=a;o=a-4|0;d=o-g|0}if(f>>>0>d>>>0){continue}break}if(!e){break s}v[b+104>>2]=v[b+104>>2]+e}j=f+j|0;g=g+f|0;n=n+1|0;if((I|0)!=(n|0)){continue}break}}v:{a=v[b+104>>2]>=(g|0);if(a|a){break v}a=3e4;while(1){if(v[b+104>>2]>=(g|0)){break v}a=a-1|0;if(a){continue}a=1e4;continue}}_=z[G+56>>2];c=u-p|0;w:{if(h>>>0<=c>>>0){break w}e=p+128|0;a=V<<6;j=a+D|0;n=a+W|0;d=0;while(1){a=h-c|0;f=a>>>0>>0?a:l;if(f){a=c<<6;m=a+j|0;u=a+n|0;a=0;while(1){a=a+1|0;w=a<<6;IM(w+u|0,m+w|0,F);if((a|0)!=(f|0)){continue}break}}d=d+f|0;l=l-f|0;if(l){c=c+f|0}else{l=128;a=v[b+108>>2]+128|0;v[b+108>>2]=a;c=a-e|0}if(h>>>0>c>>>0){continue}break}if(!d){break w}v[b+112>>2]=v[b+112>>2]+d}a=r-q|0;x:{if(k>>>0<=a>>>0){break x}c=0;while(1){d=v[E+12144>>2]+B(a,52)|0;a=v[v[d>>2]+24>>2];f=v[(a<<2)+149624>>2];if(f){Ba[f|0](d,F,v[y+44>>2]);a=v[v[d>>2]+24>>2]}a=v[(a<<2)+149616>>2];if(a){Ba[a|0](d,_)}c=c+1|0;a=v[b+116>>2]+1|0;v[b+116>>2]=a;r=a-1|0;a=r-q|0;if(k>>>0>a>>>0){continue}break}if(!c){break x}v[b+120>>2]=v[b+120>>2]+c}a=v[G+368>>2];v[t>>2]=v[a>>2];v[a>>2]=t;j=k+q|0;y:{d=h+p|0;if((d|0)<=v[b+112>>2]|(d|0)<=v[b+112>>2]){break y}a=3e4;while(1){if((d|0)<=v[b+112>>2]){break y}a=a-1|0;if(a){continue}a=1e4;continue}}z:{a=v[b+120>>2]>=(j|0);if(a|a){break z}a=3e4;while(1){if(v[b+120>>2]>=(j|0)){break z}a=a-1|0;if(a){continue}a=1e4;continue}}if(R){s=C(s+F);p=0;while(1){A:{if(v[b+104>>2]>=(g|0)){break A}a=3e4;if(v[b+104>>2]>=(g|0)){break A}while(1){if(v[b+104>>2]>=(g|0)){break A}a=a-1|0;if(a){continue}a=1e4;continue}}e=r-j|0;B:{if(k>>>0<=e>>>0){break B}d=R-p|0;a=0;while(1){c=v[E+12144>>2]+B(e,52)|0;h=v[c>>2];Ba[v[v[h>>2]+136>>2]](h,F,U,v[J>>2],v[K>>2],1,1,s);if((d|0)==1){c=v[c>>2];Ba[v[v[c>>2]+140>>2]](c,1)}a=a+1|0;c=v[b+116>>2]+1|0;v[b+116>>2]=c;r=c-1|0;e=r-j|0;if(k>>>0>e>>>0){continue}break}if(!a){break B}v[b+120>>2]=v[b+120>>2]+a}C:{j=j+k|0;if((j|0)<=v[b+120>>2]){break C}a=3e4;if(v[b+120>>2]>=(j|0)){break C}while(1){if(v[b+120>>2]>=(j|0)){break C}a=a-1|0;if(a){continue}a=1e4;continue}}l=0;n=0;if(I){while(1){D:{if(v[b+104>>2]>=(g|0)){break D}a=3e4;if(v[b+104>>2]>=(g|0)){break D}while(1){if(v[b+104>>2]>=(g|0)){break D}a=a-1|0;if(a){continue}a=1e4;continue}}d=o-g|0;h=v[(l<<2)+S>>2];E:{if(d>>>0>=h>>>0){break E}m=(n<<3)+O|0;e=0;while(1){a=h-d|0;f=a>>>0>>0?a:i;F:{if(!f){break F}t=m+(d<<3)|0;a=0;if((f|0)!=1){G=f&-2;c=0;while(1){u=a<<3;q=u+t|0;w=y+8|0;Ba[v[(x[q+6>>1]<<2)+132448>>2]](q,A,D,C(0),s,w);u=t+(u|8)|0;Ba[v[(x[u+6>>1]<<2)+132448>>2]](u,A,D,C(0),s,w);a=a+2|0;c=c+2|0;if((G|0)!=(c|0)){continue}break}}if(!(f&1)){break F}a=t+(a<<3)|0;Ba[v[(x[a+6>>1]<<2)+132448>>2]](a,A,D,C(0),s,y+8|0)}e=f+e|0;i=i-f|0;G:{if(i){o=f+o|0;d=d+f|0;break G}i=4;a=v[b+100>>2]+4|0;v[b+100>>2]=a;o=a-4|0;d=o-g|0}if(h>>>0>d>>>0){continue}break}if(!e){break E}v[b+104>>2]=v[b+104>>2]+e}n=h+n|0;g=g+h|0;l=l+1|0;if((I|0)!=(l|0)){continue}break}}p=p+1|0;if((R|0)!=(p|0)){continue}break}}H:{a=v[b+104>>2]>=(g|0);if(a|a){break H}c=3e4;while(1){if(v[b+104>>2]>=(g|0)){break H}c=c-1|0;if(c){continue}c=1e4;continue}}a=o-g|0;I:{if(T>>>0<=a>>>0){break I}g=g+4|0;d=0;while(1){c=T-a|0;h=c>>>0>>0?c:i;J:{if(!h){break J}f=(a<<3)+O|0;c=0;if((h|0)!=1){j=h&-2;e=0;while(1){k=c<<3;l=k+f|0;Ba[v[(x[l+6>>1]<<2)+132496>>2]](l,A,0);k=f+(k|8)|0;Ba[v[(x[k+6>>1]<<2)+132496>>2]](k,A,0);c=c+2|0;e=e+2|0;if((j|0)!=(e|0)){continue}break}}if(!(h&1)){break J}c=f+(c<<3)|0;Ba[v[(x[c+6>>1]<<2)+132496>>2]](c,A,0)}d=d+h|0;i=i-h|0;if(i){a=a+h|0}else{i=4;a=v[b+100>>2]+4|0;v[b+100>>2]=a;a=a-g|0}if(T>>>0>a>>>0){continue}break}if(!d){break I}v[b+104>>2]=v[b+104>>2]+d}xa=y+48|0}function v2(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=0,x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0;a:{b:{l=w[a+64|0];c:{if(!l){l=0;break c}g=z[e>>2];g=C(g*g);f=z[b+8>>2];h=z[b+4>>2];k=z[b>>2];i=z[c+8>>2];n=z[c+4>>2];o=z[c>>2];R=v[a+76>>2];u=1;while(1){d:{e=B(q,48)+R|0;j=C(z[e+8>>2]-f);m=C(j*j);j=C(z[e>>2]-k);p=C(j*j);j=C(z[e+4>>2]-h);j=C(m+C(p+C(j*j)));p=C(z[e+24>>2]-i);m=C(p*p);p=C(z[e+16>>2]-o);r=C(p*p);p=C(z[e+20>>2]-n);p=C(m+C(r+C(p*p)));if(g>(j>2];v[e>>2]=v[b>>2];v[e+4>>2]=l;l=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=l;l=B(q,48);e=l+v[a+76>>2]|0;q=v[c+4>>2];v[e+16>>2]=v[c>>2];v[e+20>>2]=q;q=v[c+12>>2];v[e+24>>2]=v[c+8>>2];v[e+28>>2]=q;e=l+v[a+76>>2]|0;l=v[d+4>>2];v[e+32>>2]=v[d>>2];v[e+36>>2]=l;l=v[d+12>>2];v[e+40>>2]=v[d+8>>2];v[e+44>>2]=l;if(u){break a}l=w[a+64|0];break d}q=q+1|0;u=q>>>0>>0;if((l|0)!=(q|0)){continue}}break}if(l>>>0>3){break b}}e=v[a+76>>2]+B(l,48)|0;l=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=l;l=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=l;e=v[c+4>>2];b=v[a+76>>2]+B(w[a+64|0],48)|0;v[b+16>>2]=v[c>>2];v[b+20>>2]=e;e=v[c+12>>2];v[b+24>>2]=v[c+8>>2];v[b+28>>2]=e;b=w[a+64|0];t[a+64|0]=b+1;a=v[a+76>>2]+B(b,48)|0;b=v[d+12>>2];v[a+40>>2]=v[d+8>>2];v[a+44>>2]=b;b=v[d+4>>2];v[a+32>>2]=v[d>>2];v[a+36>>2]=b;return 1}l=0;e=xa-256|0;xa=e;t[e+252|0]=0;v[e+248>>2]=0;q=v[a+76>>2];e=I9(e,q,192);u=v[b+12>>2];v[e+200>>2]=v[b+8>>2];v[e+204>>2]=u;u=v[b+4>>2];v[e+192>>2]=v[b>>2];v[e+196>>2]=u;b=v[c+12>>2];v[e+216>>2]=v[c+8>>2];v[e+220>>2]=b;b=v[c+4>>2];v[e+208>>2]=v[c>>2];v[e+212>>2]=b;b=v[d+12>>2];v[e+232>>2]=v[d+8>>2];v[e+236>>2]=b;b=v[d+4>>2];v[e+224>>2]=v[d>>2];v[e+228>>2]=b;g=z[d+12>>2];f=z[e+44>>2];b=g>f;c=!b<<2;g=b?f:g;f=z[e+92>>2];b=g>f;c=b?1:c;g=b?f:g;f=z[e+140>>2];b=g>f;b=z[e+188>>2]<(b?f:g)?3:b?2:c;t[b+(e+248|0)|0]=1;b=e+B(b,48)|0;c=v[b+12>>2];v[q+8>>2]=v[b+8>>2];v[q+12>>2]=c;c=v[b+4>>2];v[q>>2]=v[b>>2];v[q+4>>2]=c;c=v[b+44>>2];v[q+40>>2]=v[b+40>>2];v[q+44>>2]=c;c=v[b+36>>2];v[q+32>>2]=v[b+32>>2];v[q+36>>2]=c;c=v[b+28>>2];v[q+24>>2]=v[b+24>>2];v[q+28>>2]=c;c=v[b+20>>2];v[q+16>>2]=v[b+16>>2];v[q+20>>2]=c;i=z[e+24>>2];b=v[a+76>>2];f=z[b+24>>2];g=C(i-f);m=C(g*g);n=z[e+16>>2];h=z[b+16>>2];g=C(n-h);j=C(g*g);o=z[e+20>>2];k=z[b+20>>2];g=C(o-k);g=C(m+C(j+C(g*g)));if(!w[e+249|0]){j=C(z[e+72>>2]-f);m=C(j*j);j=C(z[e- -64>>2]-h);p=C(j*j);j=C(z[e+68>>2]-k);j=C(m+C(p+C(j*j)));l=j>g;g=l?j:g}if(!w[e+250|0]){j=C(z[e+120>>2]-f);m=C(j*j);j=C(z[e+112>>2]-h);p=C(j*j);j=C(z[e+116>>2]-k);j=C(m+C(p+C(j*j)));c=j>g;g=c?j:g;l=c?2:l}if(!w[e+251|0]){j=C(z[e+168>>2]-f);m=C(j*j);j=C(z[e+160>>2]-h);p=C(j*j);j=C(z[e+164>>2]-k);j=C(m+C(p+C(j*j)));c=j>g;g=c?j:g;l=c?3:l}if(!w[e+252|0]){m=g;g=C(z[e+216>>2]-f);f=C(g*g);g=C(z[e+208>>2]-h);h=C(g*g);g=C(z[e+212>>2]-k);l=m>2];v[b+56>>2]=v[c+8>>2];v[b+60>>2]=d;d=v[c+4>>2];v[b+48>>2]=v[c>>2];v[b+52>>2]=d;d=v[c+44>>2];v[b+88>>2]=v[c+40>>2];v[b+92>>2]=d;d=v[c+36>>2];v[b+80>>2]=v[c+32>>2];v[b+84>>2]=d;d=v[c+28>>2];v[b+72>>2]=v[c+24>>2];v[b+76>>2]=d;d=v[c+20>>2];b=b- -64|0;v[b>>2]=v[c+16>>2];v[b+4>>2]=d;b=v[a+76>>2];g=C(-34028234663852886e22);if(!w[e+248|0]){g=z[b+24>>2];k=C(i-g);f=z[b+16>>2];i=C(n-f);h=z[b+20>>2];n=C(o-h);g=C(z[b+72>>2]-g);f=C(z[b+64>>2]-f);h=C(z[b+68>>2]-h);o=C(C(g*g)+C(C(f*f)+C(h*h)));m=g;g=C(F(C(C(C(k*g)+C(C(i*f)+C(n*h)))/o),C(1)));g=o!=C(0)?g>C(0)?g:C(0):C(0);k=C(k-C(m*g));f=C(i-C(f*g));g=C(n-C(h*g));g=C(C(k*k)+C(C(f*f)+C(g*g)));c=g>C(-34028234663852886e22);g=c?g:C(-34028234663852886e22);l=c?0:l}if(!w[e+249|0]){f=z[b+24>>2];i=C(z[e+72>>2]-f);h=z[b+16>>2];n=C(z[e- -64>>2]-h);k=z[b+20>>2];o=C(z[e+68>>2]-k);f=C(z[b+72>>2]-f);h=C(z[b+64>>2]-h);k=C(z[b+68>>2]-k);j=C(C(f*f)+C(C(h*h)+C(k*k)));m=f;f=C(F(C(C(C(i*f)+C(C(n*h)+C(o*k)))/j),C(1)));f=j!=C(0)?f>C(0)?f:C(0):C(0);i=C(i-C(m*f));h=C(n-C(h*f));f=C(o-C(k*f));f=C(C(i*i)+C(C(h*h)+C(f*f)));c=f>g;g=c?f:g;l=c?1:l}if(!w[e+250|0]){f=z[b+24>>2];i=C(z[e+120>>2]-f);h=z[b+16>>2];n=C(z[e+112>>2]-h);k=z[b+20>>2];o=C(z[e+116>>2]-k);f=C(z[b+72>>2]-f);h=C(z[b+64>>2]-h);k=C(z[b+68>>2]-k);j=C(C(f*f)+C(C(h*h)+C(k*k)));m=f;f=C(F(C(C(C(i*f)+C(C(n*h)+C(o*k)))/j),C(1)));f=j!=C(0)?f>C(0)?f:C(0):C(0);i=C(i-C(m*f));h=C(n-C(h*f));f=C(o-C(k*f));f=C(C(i*i)+C(C(h*h)+C(f*f)));c=f>g;g=c?f:g;l=c?2:l}if(!w[e+251|0]){f=z[b+24>>2];i=C(z[e+168>>2]-f);h=z[b+16>>2];n=C(z[e+160>>2]-h);k=z[b+20>>2];o=C(z[e+164>>2]-k);f=C(z[b+72>>2]-f);h=C(z[b+64>>2]-h);k=C(z[b+68>>2]-k);j=C(C(f*f)+C(C(h*h)+C(k*k)));m=f;f=C(F(C(C(C(i*f)+C(C(n*h)+C(o*k)))/j),C(1)));f=j!=C(0)?f>C(0)?f:C(0):C(0);i=C(i-C(m*f));h=C(n-C(h*f));f=C(o-C(k*f));f=C(C(i*i)+C(C(h*h)+C(f*f)));c=f>g;g=c?f:g;l=c?3:l}if(!w[e+252|0]){f=z[b+24>>2];i=C(z[e+216>>2]-f);h=z[b+16>>2];n=C(z[e+208>>2]-h);k=z[b+20>>2];o=C(z[e+212>>2]-k);f=C(z[b+72>>2]-f);h=C(z[b+64>>2]-h);k=C(z[b+68>>2]-k);j=C(C(f*f)+C(C(h*h)+C(k*k)));m=g;g=C(F(C(C(C(i*f)+C(C(n*h)+C(o*k)))/j),C(1)));g=j!=C(0)?g>C(0)?g:C(0):C(0);f=C(i-C(f*g));i=C(f*f);f=C(n-C(h*g));g=C(o-C(k*g));l=m>2];v[b+104>>2]=v[c+8>>2];v[b+108>>2]=d;d=v[c+4>>2];v[b+96>>2]=v[c>>2];v[b+100>>2]=d;d=v[c+44>>2];v[b+136>>2]=v[c+40>>2];v[b+140>>2]=d;d=v[c+36>>2];v[b+128>>2]=v[c+32>>2];v[b+132>>2]=d;d=v[c+28>>2];v[b+120>>2]=v[c+24>>2];v[b+124>>2]=d;d=v[c+20>>2];v[b+112>>2]=v[c+16>>2];v[b+116>>2]=d;b=v[a+76>>2];g=C(-34028234663852886e22);c=0;while(1){if(!w[(e+248|0)+c|0]){O=z[b+120>>2];j=z[b+24>>2];p=C(O-j);d=e+B(c,48)|0;f=z[d+24>>2];i=C(f-j);P=z[b+112>>2];x=z[b+16>>2];y=C(P-x);h=z[d+16>>2];n=C(h-x);Q=z[b+116>>2];A=z[b+20>>2];D=C(Q-A);k=z[d+20>>2];r=C(k-A);o=C(C(p*i)+C(C(y*n)+C(D*r)));J=z[b+72>>2];E=C(J-j);K=z[b+64>>2];G=C(K-x);L=z[b+68>>2];H=C(L-A);I=C(C(E*i)+C(C(G*n)+C(H*r)));m=C(C(i*i)+C(C(n*n)+C(r*r)));e:{if(!(!(I=C(0))|!(i>=r))){break e}m=C(f-O);M=C(h-P);N=C(k-Q);s=C(C(E*m)+C(C(G*M)+C(H*N)));n=C(C(p*m)+C(C(y*M)+C(D*N)));m=C(C(m*m)+C(C(M*M)+C(N*N)));if(!(!(n>=C(0))|!(n>=s))){break e}if(!(!(i=C(0))))){m=f;f=C(I/C(I-i));i=C(m-C(j+C(E*f)));h=C(h-C(x+C(G*f)));f=C(k-C(A+C(H*f)));m=C(C(i*i)+C(C(h*h)+C(f*f)));break e}if(!(!(n<=s)|(!(C(C(i*n)-C(s*r))=C(0))))){m=f;f=C(o/C(o-n));i=C(m-C(j+C(p*f)));h=C(h-C(x+C(y*f)));f=C(k-C(A+C(D*f)));m=C(C(i*i)+C(C(h*h)+C(f*f)));break e}i=C(C(G*D)-C(y*H));n=C(C(H*p)-C(D*E));o=C(C(E*y)-C(p*G));p=C(C(i*i)+C(C(n*n)+C(o*o)));m=f;f=p>C(0)?C(C(C(i*C(j-f))+C(C(n*C(x-h))+C(o*C(A-k))))/p):C(0);i=C(m-C(m+C(i*f)));h=C(h-C(h+C(n*f)));f=C(k-C(k+C(o*f)));m=C(C(i*i)+C(C(h*h)+C(f*f)))}f=m;d=f>g;l=d?c:l;g=d?f:g}c=c+1|0;if((c|0)!=5){continue}break}d=(e+248|0)+l|0;f:{if(w[d|0]){t[a+64|0]=3;break f}c=1;t[d|0]=1;d=e+B(l,48)|0;l=v[d+12>>2];v[b+152>>2]=v[d+8>>2];v[b+156>>2]=l;l=v[d+4>>2];v[b+144>>2]=v[d>>2];v[b+148>>2]=l;l=v[d+44>>2];v[b+184>>2]=v[d+40>>2];v[b+188>>2]=l;l=v[d+36>>2];v[b+176>>2]=v[d+32>>2];v[b+180>>2]=l;l=v[d+28>>2];v[b+168>>2]=v[d+24>>2];v[b+172>>2]=l;l=v[d+20>>2];v[b+160>>2]=v[d+16>>2];v[b+164>>2]=l;g:{if(!w[e+248|0]){c=0;break g}if(!w[e+249|0]){break g}if(!w[e+250|0]){c=2;break g}if(!w[e+251|0]){c=3;break g}c=!w[e+252|0]<<2}b=v[a+76>>2];a=e+B(c,48)|0;g=z[a+8>>2];f=C(z[b+8>>2]-g);m=C(f*f);f=z[a>>2];h=C(z[b>>2]-f);i=C(h*h);h=z[a+4>>2];k=C(z[b+4>>2]-h);k=C(m+C(i+C(k*k)));k=k>2]-g);m=C(i*i);i=C(z[b+48>>2]-f);j=C(i*i);i=C(z[b+52>>2]-h);i=C(m+C(j+C(i*i)));c=k>i;d=c;k=c?i:k;i=C(z[b+104>>2]-g);m=C(i*i);i=C(z[b+96>>2]-f);j=C(i*i);i=C(z[b+100>>2]-h);i=C(m+C(j+C(i*i)));c=k>i;g=C(z[b+152>>2]-g);m=C(g*g);g=C(z[b+144>>2]-f);f=C(g*g);g=C(z[b+148>>2]-h);c=C(m+C(f+C(g*g)))<(c?i:k)?3:c?2:d;if(!(z[(B(c,48)+b|0)+44>>2]>z[a+44>>2])){break f}b=b+B(c,48)|0;c=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=c;c=v[a+44>>2];v[b+40>>2]=v[a+40>>2];v[b+44>>2]=c;c=v[a+36>>2];v[b+32>>2]=v[a+32>>2];v[b+36>>2]=c;c=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=c;c=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=c;c=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=c}xa=e+256|0}return 0}function NX(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=0,r=C(0),s=0,u=C(0),x=C(0),y=0,A=C(0),D=0,E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0);j=xa-320|0;xa=j;q=v[b+4>>2];k=z[q+20>>2];y=v[a+4>>2];l=z[y+20>>2];A=z[d>>2];da=w[y+32|0];O=z[y+16>>2];ea=w[q+32|0];W=z[q+16>>2];v[j+28>>2]=0;ba=C((k>2];d=0;while(1){c=d<<2;D=w[d+f|0];v[c+(j+48|0)>>2]=D;L=w[d+g|0];v[c+(j+32|0)>>2]=L;c=(D<<4)+101152|0;fa=v[c+8>>2];ga=v[c>>2];ha=v[c+4>>2];c=v[q+152>>2]+B(L,12)|0;k=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];u=z[s+48>>2];x=z[s+32>>2];E=z[s>>2];G=z[s+16>>2];P=z[s+52>>2];I=z[s+36>>2];J=z[s+4>>2];M=z[s+20>>2];N=z[s+56>>2];X=z[s+40>>2];p=z[y+56>>2];Q=z[s+8>>2];n=z[y+48>>2];Y=z[s+24>>2];r=z[y+52>>2];R=z[q+80>>2];Z=z[q+48>>2];S=z[q+64>>2];H=z[q+84>>2];T=z[q+52>>2];_=z[q+68>>2];U=z[q+88>>2];$=z[q+56>>2];aa=z[q+72>>2];c=o;o=c<<4;D=o+(j+128|0)|0;v[D+12>>2]=0;L=o+(j- -64|0)|0;v[L+12>>2]=0;o=o+(j+192|0)|0;v[o+12>>2]=0;U=C(C(U*k)+C(C($*l)+C(m*aa)));z[L+8>>2]=U;H=C(C(H*k)+C(C(T*l)+C(m*_)));z[L+4>>2]=H;R=C(C(R*k)+C(C(Z*l)+C(m*S)));z[L>>2]=R;k=fa?p:C(-p);l=ga?n:C(-n);m=ha?r:C(-r);p=C(N+C(C(X*k)+C(C(Q*l)+C(Y*m))));z[D+8>>2]=p;n=C(P+C(C(I*k)+C(C(J*l)+C(m*M))));z[D+4>>2]=n;k=C(u+C(C(x*k)+C(C(E*l)+C(m*G))));z[D>>2]=k;l=C(p-U);z[o+8>>2]=l;m=C(n-H);z[o+4>>2]=m;k=C(k-R);z[o>>2]=k;o=c+1|0;d=d+1|0;if((ca|0)!=(d|0)){continue}break}v[j+28>>2]=o;g:{h:{switch(c-1|0){case 0:p=z[j+200>>2];k=C(z[j+216>>2]-p);n=z[j+192>>2];l=C(z[j+208>>2]-n);r=z[j+196>>2];m=C(z[j+212>>2]-r);u=C(C(k*k)+C(C(l*l)+C(m*m)));if(!(u<=C(1.1920928955078125e-7))){break g}v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break e;case 1:jY(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}}Q_(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e}v[j+316>>2]=0;V=k;k=C(F(C(C(C(C(C(-n)*l)-C(m*r))-C(p*k))/u),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=p+C(V*k);z[j+308>>2]=r+C(m*k);z[j+304>>2]=n+C(l*k);break e}k=z[c+8>>2];m=z[c>>2];l=z[c+4>>2];v[j+268>>2]=0;c=C(C(k*k)+C(C(m*m)+C(l*l)))>C(0);k=c?k:C(0);z[j+264>>2]=k;l=c?l:C(0);z[j+260>>2]=l;m=c?m:C(1);z[j+256>>2]=m;p=C(C(1)/C(K(C(C(k*k)+C(C(m*m)+C(l*l))))));u=C(k*p);x=C(m*p);n=C(34028234663852886e22);r=C(l*p);break d}v[j+316>>2]=0;z[j+312>>2]=l;z[j+308>>2]=m;z[j+304>>2]=k}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));if(!(ba>2]=v[j+296>>2];c=v[j+292>>2];v[j+272>>2]=v[j+288>>2];v[j+276>>2]=c;d=v[a+4>>2];c=v[a+8>>2];o=v[j+28>>2]<<2;n=C(-m);q=C(C(C(z[a+20>>2]*n)-C(z[a+36>>2]*l))-C(z[a+52>>2]*k))>C(0);s=C(C(C(z[a+16>>2]*n)-C(z[a+32>>2]*l))-C(z[a+48>>2]*k))>C(0);y=C(C(C(z[a+24>>2]*n)-C(z[a+40>>2]*l))-C(z[a+56>>2]*k))>C(0);v[o+(j+48|0)>>2]=q<<1|s|y<<2;M=z[c+56>>2];N=z[c+40>>2];Q=z[c+24>>2];Y=z[c+52>>2];R=z[c+36>>2];n=z[d+56>>2];Z=z[c+20>>2];I=z[d+52>>2];S=z[c+8>>2];H=z[c+48>>2];T=z[c+32>>2];_=z[c>>2];U=z[c+16>>2];$=z[c+4>>2];J=z[d+48>>2];aa=z[j+268>>2];c=v[b+4>>2];ia=z[c+56>>2];ja=z[c+52>>2];ka=z[c+72>>2];D=c- -64|0;la=z[D>>2];ma=z[c+68>>2];A=z[c+88>>2];O=z[c+80>>2];na=z[c+84>>2];oa=z[c+48>>2];v[j+316>>2]=0;V=A;A=k;pa=O;O=m;W=l;z[j+312>>2]=C(V*k)+C(C(pa*m)+C(l*na));z[j+308>>2]=C(ka*k)+C(C(la*m)+C(l*ma));z[j+304>>2]=C(ia*k)+C(C(oa*m)+C(l*ja));d=IV(c,j+304|0);v[o+(j+32|0)>>2]=d;k=y?n:C(-n);l=s?J:C(-J);m=q?I:C(-I);Q=C(M+C(C(N*k)+C(C(S*l)+C(Q*m))));d=v[c+152>>2]+B(d,12)|0;n=z[d+8>>2];I=z[d>>2];J=z[d+4>>2];S=C(C(z[c+88>>2]*n)+C(C(z[c+56>>2]*I)+C(J*z[c+72>>2])));M=C(Q-S);H=C(H+C(C(T*k)+C(C(_*l)+C(m*U))));T=C(C(z[c+80>>2]*n)+C(C(z[c+48>>2]*I)+C(J*z[D>>2])));N=C(H-T);l=C(Y+C(C(R*k)+C(C($*l)+C(m*Z))));m=C(C(z[c+84>>2]*n)+C(C(z[c+52>>2]*I)+C(J*z[c+68>>2])));k=C(l-m);n=C(C(u*M)+C(C(x*N)+C(r*k)));if(n>X){o=0;if(!f){break a}a=v[j+28>>2];t[h|0]=a;if(!a){break a}c=0;if((a|0)!=1){h=a&-2;d=0;while(1){b=c<<2;i=j+48|0;t[c+f|0]=v[b+i>>2];q=j+32|0;t[c+g|0]=v[q+b>>2];b=c|1;e=b<<2;t[b+f|0]=v[e+i>>2];t[b+g|0]=v[e+q>>2];c=c+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(a&1)){break a}a=c<<2;t[c+f|0]=v[a+(j+48|0)>>2];t[c+g|0]=v[a+(j+32|0)>>2];break a}c=v[j+28>>2];if(n>C(p*C(.9997749924659729))){i:{if(!f){break i}t[h|0]=c;if(!c){break i}b=0;if((c|0)!=1){o=c&-2;a=0;while(1){d=b<<2;q=j+48|0;t[b+f|0]=v[d+q>>2];s=j+32|0;t[b+g|0]=v[s+d>>2];d=b|1;h=d<<2;t[d+f|0]=v[h+q>>2];t[d+g|0]=v[h+s>>2];b=b+2|0;a=a+2|0;if((o|0)!=(a|0)){continue}break}}if(!(c&1)){break i}a=b<<2;t[b+f|0]=v[a+(j+48|0)>>2];t[b+g|0]=v[a+(j+32|0)>>2]}z[i+32>>2]=x;v[i+44>>2]=0;z[i+40>>2]=u;z[i+36>>2]=r;JV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,c);j:{if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;a=v[j+292>>2];v[i+68>>2]=v[j+288>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+296>>2];break j}k=z[j+304>>2];l=z[j+308>>2];m=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=m-C(E*u);z[i+4>>2]=l-C(E*r);z[i>>2]=k-C(E*x);k=z[j>>2];l=z[j+4>>2];m=z[j+8>>2];v[i+28>>2]=0;z[i+24>>2]=m+C(G*u);z[i+20>>2]=l+C(G*r);z[i+16>>2]=k+C(G*x);p=C(p-P)}z[i+64>>2]=p;o=2;break a}o=c<<4;d=o+(j+128|0)|0;v[d+12>>2]=0;z[d+8>>2]=Q;z[d+4>>2]=l;z[d>>2]=H;d=o+(j- -64|0)|0;v[d+12>>2]=0;z[d+8>>2]=S;z[d+4>>2]=m;z[d>>2]=T;d=o+(j+192|0)|0;v[d+12>>2]=0;z[d+8>>2]=M;z[d+4>>2]=k;z[d>>2]=N;v[j+28>>2]=c+1;k:{l:{switch(c-1|0){case 0:n=z[j+200>>2];k=C(z[j+216>>2]-n);r=z[j+192>>2];l=C(z[j+208>>2]-r);u=z[j+196>>2];m=C(z[j+212>>2]-u);x=C(C(k*k)+C(C(l*l)+C(m*m)));if(x<=C(1.1920928955078125e-7)){v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break k}v[j+316>>2]=0;V=k;k=C(F(C(C(C(C(C(-r)*l)-C(m*u))-C(n*k))/x),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=n+C(V*k);z[j+308>>2]=u+C(m*k);z[j+304>>2]=r+C(l*k);break k;case 1:jY(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:Q_(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}}v[j+316>>2]=0;z[j+312>>2]=M;z[j+308>>2]=k;z[j+304>>2]=N}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));x=C(C(1)/n);u=C(k*x);r=C(l*x);x=C(m*x);if(nba){continue}break}b=v[j+28>>2];if(!(n>2];y=j+32|0;t[c+g|0]=v[y+h>>2];h=c|1;o=h<<2;t[f+h|0]=v[o+s>>2];t[g+h|0]=v[o+y>>2];c=c+2|0;a=a+2|0;if((q|0)!=(a|0)){continue}break}}if(!(d&1)){break m}a=c<<2;t[c+f|0]=v[a+(j+48|0)>>2];t[c+g|0]=v[a+(j+32|0)>>2]}v[j+296>>2]=v[j+280>>2];a=v[j+276>>2];v[j+288>>2]=v[j+272>>2];v[j+292>>2]=a;z[j+268>>2]=aa;z[j+256>>2]=O;z[j+260>>2]=W;z[j+264>>2]=A;JV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,b);v[i+60>>2]=0;z[i+56>>2]=u;z[i+52>>2]=r;z[i+48>>2]=x;v[i+44>>2]=0;k=C(C(1)/p);l=C(A*k);z[i+40>>2]=l;m=C(W*k);z[i+36>>2]=m;k=C(O*k);z[i+32>>2]=k;if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;z[i+64>>2]=p;a=v[j+276>>2];v[i+68>>2]=v[j+272>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+280>>2];o=4;break a}n=z[j+304>>2];r=z[j+308>>2];A=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=A-C(E*l);z[i+4>>2]=r-C(E*m);z[i>>2]=n-C(E*k);n=z[j>>2];r=z[j+4>>2];A=z[j+8>>2];z[i+64>>2]=p-P;v[i+28>>2]=0;z[i+24>>2]=A+C(G*l);z[i+20>>2]=r+C(G*m);z[i+16>>2]=n+C(G*k);o=2;if(p<=P){break a}o=4;break a}if(f){break b}o=5;break a}b=v[j+28>>2]}t[h|0]=b;o=5;if(!b){break a}c=0;if((b|0)!=1){h=b&-2;d=0;while(1){a=c<<2;i=j+48|0;t[c+f|0]=v[a+i>>2];q=j+32|0;t[c+g|0]=v[q+a>>2];a=c|1;e=a<<2;t[a+f|0]=v[e+i>>2];t[a+g|0]=v[e+q>>2];c=c+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(b&1)){break a}a=c<<2;t[c+f|0]=v[a+(j+48|0)>>2];t[c+g|0]=v[a+(j+32|0)>>2]}xa=j+320|0;return o}function rU(a,b,c){a=a|0;b=C(b);c=c|0;var d=0,e=C(0),f=0,g=0,h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=0,s=0,t=C(0),u=C(0),w=0,x=0,y=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=0,Ia=0,Ja=0,Ka=0,La=0;d=xa-240|0;xa=d;g=v[a+68>>2];p=v[a+72>>2];f=B(p,24);if(f){j=v[37696]+12|0;x=Ba[v[v[j>>2]+8>>2]](j,f,24422,8633,651)|0}else{x=0}a:{if(!p){v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;break a}f=x;while(1){j=v[g>>2];Ba[v[v[j>>2]+12>>2]](j,d+184|0)|0;da=A[d+184>>3];ea=A[d+192>>3];fa=A[d+200>>3];ga=A[d+208>>3];ha=A[d+216>>3];z[f+20>>2]=A[d+224>>3];z[f+16>>2]=ha;z[f+12>>2]=ga;z[f+8>>2]=fa;z[f+4>>2]=ea;z[f>>2]=da;f=f+24|0;g=g+4|0;p=p-1|0;if(p){continue}break}g=0;v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;if((f|0)==(x|0)){break a}j=v[37696]+12|0;s=f-x|0;w=(s|0)/24|0;p=Ba[v[v[j>>2]+8>>2]](j,w<<2,24422,8633,611)|0;if(w-1>>>0>=3){j=w&-4;f=0;while(1){z[(g<<2)+p>>2]=z[B(g,24)+x>>2];r=g|1;z[(r<<2)+p>>2]=z[B(r,24)+x>>2];r=g|2;z[(r<<2)+p>>2]=z[B(r,24)+x>>2];r=g|3;z[(r<<2)+p>>2]=z[B(r,24)+x>>2];g=g+4|0;f=f+4|0;if((j|0)!=(f|0)){continue}break}}j=w&3;if(j){f=0;while(1){z[(g<<2)+p>>2]=z[B(g,24)+x>>2];g=g+1|0;f=f+1|0;if((j|0)!=(f|0)){continue}break}}y=SU(d+184|0);f=XU(y,p,w);b:{c:{if((s|0)<=0){break c}j=v[f+8>>2];r=j+(w<<2)|0;w=j;while(1){f=w;w=f+4|0;f=v[f>>2];v[d+128>>2]=f;g=(f<<2)+p|0;f=j;while(1){d:{if(f>>>0>=r>>>0){j=f;break d}s=v[f>>2];j=f+4|0;f=j;if(z[(s<<2)+p>>2]>2]){continue}}break}f=j;if(r>>>0>f>>>0){while(1){e:{s=v[f>>2];v[d+40>>2]=s;ia=v[d+128>>2];g=B(ia,24)+x|0;e=z[g+12>>2];if(!(e>=z[(s<<2)+p>>2])){break e}f=f+4|0;f:{if((s|0)==(ia|0)){break f}s=B(s,24)+x|0;if(e>2]|z[g>>2]>z[s+12>>2]|(z[s+4>>2]>z[g+16>>2]|z[g+4>>2]>z[s+16>>2])){break f}if(z[s+8>>2]>z[g+20>>2]|z[g+8>>2]>z[s+20>>2]){break f}g=v[d+12>>2];g:{if(g>>>0>=(v[d+16>>2]&2147483647)>>>0){pn(d+8|0,d+128|0);g=v[d+12>>2];break g}v[v[d+8>>2]+(g<<2)>>2]=ia;g=v[d+12>>2]+1|0;v[d+12>>2]=g}if((v[d+16>>2]&2147483647)>>>0<=g>>>0){pn(d+8|0,d+40|0);break f}v[v[d+8>>2]+(g<<2)>>2]=v[d+40>>2];v[d+12>>2]=v[d+12>>2]+1}if(f>>>0>>0){continue}}break}if(r>>>0>w>>>0){continue}break c}break}if(!p){break b}}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,p)}TU(y);f=v[d+12>>2];if(f>>>0<2){break a}la=C(b*C(4));w=f>>>1|0;s=d+208|0;p=v[d+8>>2];while(1){w=w-1|0;j=v[a+68>>2];f=v[j+(v[p+4>>2]<<2)>>2];g=v[j+(v[p>>2]<<2)>>2];h:{if(c){if(!(Ja=c,Ka=Ba[v[v[g>>2]+16>>2]](g)|0,La=Ba[v[v[f>>2]+16>>2]](f)|0,Ia=v[v[c>>2]+8>>2],Ba[Ia](Ja|0,Ka|0,La|0)|0)){break h}}r=v[g+4>>2]>v[f+4>>2];j=r?g:f;i:{j:{k:{l:{f=r?f:g;switch(v[f+4>>2]){case 0:break k;case 1:break l;default:break j}}if(v[j+4>>2]!=1){break j}KS(f-8|0,d+184|0);KS(j-8|0,d+128|0);b=z[d+176>>2];e=z[d+232>>2];da=A[d+224>>3];h=C(A[d+200>>3]);z[d+48>>2]=h;i=C(A[d+184>>3]);z[d+40>>2]=i;o=C(A[d+192>>3]);z[d+44>>2]=o;ea=A[d+208>>3];fa=A[d+216>>3];k=C(A[d+128>>3]);z[d+112>>2]=k;m=C(A[d+136>>3]);z[d+116>>2]=m;n=C(A[d+144>>3]);z[d+120>>2]=n;ga=A[d+152>>3];ha=A[d+160>>3];Ha=A[d+168>>3];q=C(da);z[d+104>>2]=q-h;u=C(fa);z[d+100>>2]=u-o;o=C(ea);z[d+96>>2]=o-i;t=C(Ha);z[d+88>>2]=t-n;n=C(ha);z[d+84>>2]=n-m;m=C(ga);z[d+80>>2]=m-k;V=C(0);W=C(0);E=C(0);h=C(K(I_(d+40|0,d+96|0,d+112|0,d+80|0,d+24|0,d+108|0)));b=C(e+b);l=C(0);if(!(h>2];h=C(C(1)-b);e=z[d+108>>2];i=C(C(1)-e);k=C(C(C(h*q)+C(b*z[d+48>>2]))-C(C(i*t)+C(e*z[d+120>>2])));q=z[f+356>>2];o=C(C(C(b*z[d+40>>2])+C(h*o))-C(C(e*z[d+112>>2])+C(i*m)));m=z[f+348>>2];i=C(C(C(h*u)+C(b*z[d+44>>2]))-C(C(i*n)+C(e*z[d+116>>2])));n=z[f+352>>2];b=C(C(k*q)+C(C(o*m)+C(i*n)));e=C(k-C(q*b));h=C(o-C(m*b));b=C(i-C(n*b));i=C(C(e*e)+C(C(h*h)+C(b*b)));if(i>C(0)){l=e;e=C(C(1)/C(K(i)));W=C(l*e);V=C(h*e);l=C(b*e)}else{l=C(0)}break i}if(v[j+4>>2]!=1){break j}QT(f-8|0,d+184|0);KS(j-8|0,d+128|0);z[d+120>>2]=A[d+144>>3];z[d+116>>2]=A[d+136>>3];z[d+112>>2]=A[d+128>>3];z[d+104>>2]=A[d+168>>3];z[d+100>>2]=A[d+160>>3];z[d+96>>2]=A[d+152>>3];e=z[d+220>>2];b=C(e+e);h=z[d+224>>2];i=C(h+h);k=C(C(1)-C(e*b));m=C(h*i);z[d+72>>2]=k-m;e=z[d+228>>2];n=C(i*e);o=z[d+232>>2];q=C(b*o);z[d+68>>2]=n-q;u=C(b*e);i=C(i*o);z[d+64>>2]=u+i;z[d+60>>2]=n+q;X=k;l=e;e=C(e+e);k=C(l*e);z[d+56>>2]=X-k;b=C(b*h);e=C(e*o);z[d+52>>2]=b-e;z[d+48>>2]=u-i;z[d+44>>2]=b+e;z[d+40>>2]=C(C(1)-m)-k;z[d+32>>2]=A[d+200>>3];z[d+28>>2]=A[d+192>>3];z[d+24>>2]=A[d+184>>3];V=C(0);W=C(0);E=C(0);b=C(K(G_(d+112|0,d+96|0,d+24|0,s,d+40|0,d+108|0,d+80|0)));e=z[d+176>>2];l=C(0);if(!(b>2]-C(C(z[d+120>>2]+z[d+104>>2])*C(.5)));h=z[f+356>>2];i=C(z[d+24>>2]-C(C(z[d+112>>2]+z[d+96>>2])*C(.5)));o=z[f+348>>2];k=C(z[d+28>>2]-C(C(z[d+116>>2]+z[d+100>>2])*C(.5)));m=z[f+352>>2];b=C(C(e*h)+C(C(i*o)+C(k*m)));e=C(e-C(h*b));h=C(i-C(o*b));b=C(k-C(m*b));i=C(C(e*e)+C(C(h*h)+C(b*b)));if(i>C(0)){l=e;e=C(C(1)/C(K(i)));W=C(l*e);V=C(h*e);l=C(b*e)}else{l=C(0)}break i}QT(f-8|0,d+184|0);QT(j-8|0,d+128|0);V=C(0);W=C(0);E=C(0);h=z[d+164>>2];n=C(h+h);k=z[d+172>>2];N=C(n*k);q=z[d+168>>2];t=C(q+q);F=z[d+176>>2];O=C(t*F);o=C(N+O);G=z[d+208>>2];ca=z[d+160>>2];H=z[d+220>>2];u=C(H+H);m=z[d+228>>2];Z=C(u*m);b=z[d+224>>2];I=C(b+b);i=z[d+232>>2];_=C(I*i);e=C(Z-_);P=C(C(1)-C(h*n));Q=C(q*t);X=C(P-Q);$=C(b*I);R=C(m+m);Y=C(m*R);h=C(C(C(1)-$)-Y);aa=C(u*b);ba=C(R*i);b=C(aa+ba);t=C(t*k);S=C(n*F);R=C(t-S);ma=C(C(e*X)+C(C(h*o)+C(b*R)));na=C(C(D(ma))+C(9.999999974752427e-7));J=z[d+152>>2];N=C(N-O);l=k;k=C(k+k);T=C(l*k);O=C(C(C(1)-Q)-T);n=C(n*q);k=C(k*F);F=C(n+k);oa=C(C(e*N)+C(C(h*O)+C(b*F)));pa=C(C(D(oa))+C(9.999999974752427e-7));L=z[d+156>>2];Q=C(t+S);S=C(n-k);P=C(P-T);qa=C(C(e*Q)+C(C(h*S)+C(b*P)));ra=C(C(D(qa))+C(9.999999974752427e-7));sa=C(A[d+144>>3]);ta=C(A[d+200>>3]);M=C(sa-ta);ua=C(A[d+128>>3]);va=C(A[d+184>>3]);U=C(ua-va);wa=C(A[d+136>>3]);ya=C(A[d+192>>3]);ja=C(wa-ya);T=C(C(M*e)+C(C(U*h)+C(b*ja)));ka=C(C(G+C(C(ca*na)+C(C(J*pa)+C(L*ra))))-C(D(T)));l=C(0);if(ka>2];I=C(C(M*k)+C(C(U*m)+C(n*ja)));Y=C(C(C(C(ca*ba)+C(C(J*Aa)+C(L*Da)))+H)-C(D(I)));l=C(0);if(Y>2];M=C(C(M*q)+C(C(U*u)+C(t*ja)));U=C(C(C(C(ca*_)+C(C(J*Ea)+C(L*Ga)))+i)-C(D(M)));l=C(0);if(UU;m:{n:{o:{p:{q:{r:{y=g?2:r;i=g?U:i;g=i>J;y=g?3:y;i=g?J:i;g=i>L;y=g?4:y;i=g?L:i;g=i>G;switch((g?5:y)-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}}h=m;b=n;e=k;break m}h=u;b=t;e=q;break m}h=O;b=F;e=N;break m}h=S;b=P;e=Q;break m}h=o;b=R;e=X}E=g?G:i;g=C(C(e*C(ta-sa))+C(C(h*C(va-ua))+C(C(ya-wa)*b)))>2];h=g?C(-h):h;k=z[f+348>>2];m=z[f+352>>2];n=g?C(-b):b;b=C(C(e*o)+C(C(h*k)+C(m*n)));e=C(e-C(o*b));h=C(h-C(k*b));b=C(n-C(m*b));o=C(C(e*e)+C(C(h*h)+C(b*b)));l=C(0);if(!(o>C(0))){break i}l=e;e=C(C(1)/C(K(o)));W=C(l*e);V=C(h*e);l=C(b*e)}i=l;if(E==C(0)){break h}b=E>la?la:E;e=C(C(V*b)*C(.5));z[f+468>>2]=e+z[f+468>>2];h=C(C(i*b)*C(.5));z[f+472>>2]=h+z[f+472>>2];b=C(C(W*b)*C(.5));z[f+476>>2]=b+z[f+476>>2];z[j+468>>2]=z[j+468>>2]-e;z[j+472>>2]=z[j+472>>2]-h;z[j+476>>2]=z[j+476>>2]-b}p=p+8|0;if(w){continue}break}}if(x){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,x)}a=v[d+16>>2];s:{if((a|0)<0|!(a&2147483647)){break s}a=v[d+8>>2];if(!a){break s}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=d+240|0}function mE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=0,q=0,r=C(0),s=0,w=0,y=0;e=xa-224|0;xa=e;n=1;a:{if(!v[a+592>>2]){break a}q=a+4|0;b:{switch(x[b+98>>1]){case 3:if(x[b+96>>1]){n=ID(e+32|0,b+48|0,b+12|0,b);u[e+28>>1]=x[d>>1];v[e+24>>2]=c;v[e+20>>2]=b;v[e+16>>2]=130168;n=nE(v[a+644>>2],v[a+640>>2],q,n,e+16|0);break a}f=z[b+84>>2];g=z[b+88>>2];h=z[b+76>>2];i=z[b+92>>2];j=z[b+80>>2];k=z[b+72>>2];v[e+60>>2]=0;z[e+56>>2]=C(i-j)*C(.5);z[e+52>>2]=C(g-h)*C(.5);v[e+44>>2]=0;z[e+48>>2]=C(f-k)*C(.5);z[e+40>>2]=C(j+i)*C(.5);z[e+36>>2]=C(h+g)*C(.5);z[e+32>>2]=C(k+f)*C(.5);u[e+28>>1]=x[d>>1];v[e+24>>2]=c;v[e+20>>2]=b;v[e+16>>2]=130208;s=v[a+644>>2];w=v[a+640>>2];p=e+16|0;c=xa-1056|0;xa=c;t[c+1040|0]=1;v[c+1048>>2]=256;v[c+1052>>2]=256;v[c+1044>>2]=c+16;v[c+16>>2]=v[q+588>>2];d=1;c:while(1){d=d-1|0;a=v[v[c+1044>>2]+(d<<2)>>2];f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);while(1){d:{e:{o=C(C(f*C(.5))+z[e+48>>2]);f=C(C(h*C(.5))-z[e+32>>2]);f:{if(!(o>=(f>C(0)?f:C(-f)))){break f}f=C(C(g*C(.5))-z[e+36>>2]);if(!(C(C(k*C(.5))+z[e+52>>2])>=(f>C(0)?f:C(-f)))){break f}f=C(C(i*C(.5))-z[e+40>>2]);if(!(C(C(j*C(.5))+z[e+56>>2])>=(f>C(0)?f:C(-f)))){break f}b=a;a=v[a+36>>2];if(v[b+40>>2]){break e}b=v[a>>2];if(!b){break f}a=a+4|0;if((b|0)==1){if(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(v[a>>2],44)|0)|0){break f}break d}while(1){q=v[a>>2];n=w+B(q,24)|0;g=z[n+12>>2];h=z[n>>2];f=C(C(C(h+g)*C(.5))-z[e+32>>2]);g:{if(!(C(C(C(g-h)*C(.5))+z[e+48>>2])>=(f>C(0)?f:C(-f)))){break g}g=z[n+4>>2];h=z[n+16>>2];f=C(C(C(g+h)*C(.5))-z[e+36>>2]);if(!(C(C(C(h-g)*C(.5))+z[e+52>>2])>=(f>C(0)?f:C(-f)))){break g}g=z[n+8>>2];h=z[n+20>>2];f=C(C(C(g+h)*C(.5))-z[e+40>>2]);if(!(C(C(C(h-g)*C(.5))+z[e+56>>2])>=(f>C(0)?f:C(-f)))){break g}if(!(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(q,44)|0)|0)){break d}}a=a+4|0;b=b-1|0;if(b){continue}break}}y=!d;if(d){continue c}break d}v[v[c+1044>>2]+(d<<2)>>2]=a+48;d=d+1|0;if((d|0)==(v[c+1052>>2]&2147483647)){gD(c+16|0,d<<1)}f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);continue}break}break};a=v[c+1052>>2];h:{if((a|0)<0|!(a&2147483647)){break h}a=v[c+1044>>2];if((a|0)==(c+16|0)|!a){break h}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+1056|0;n=y;break a;case 2:h=z[b+60>>2];m=z[b+124>>2];k=z[b+112>>2];l=z[b+116>>2];f=z[b+120>>2];v[e+44>>2]=0;z[e+40>>2]=f;z[e+36>>2]=l;z[e+32>>2]=k;g=z[b+16>>2];j=z[b+20>>2];i=z[b+12>>2];v[e+124>>2]=0;v[e+108>>2]=0;v[e+92>>2]=0;m=C(m*C(1.0099999904632568));z[e+88>>2]=m;z[e+84>>2]=m;v[e+76>>2]=0;z[e+72>>2]=i;z[e+68>>2]=j;v[e+60>>2]=0;z[e+56>>2]=j;z[e+52>>2]=g;r=i>C(0)?i:C(-i);z[e+120>>2]=r;o=j>C(0)?j:C(-j);z[e+116>>2]=o;z[e+104>>2]=o;o=g>C(0)?g:C(-g);z[e+100>>2]=o;z[e+80>>2]=m;z[e+64>>2]=g;z[e+48>>2]=i;z[e+112>>2]=o;z[e+96>>2]=r;v[e+156>>2]=0;v[e+140>>2]=0;m=C(h+h);i:{if(m>=C(34028234663852886e22)){h=g==C(0)?l:g>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);i=i==C(0)?k:i>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);g=f;if(j==C(0)){break i}g=j>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break i}h=C(l+C(m*g));i=C(k+C(m*i));g=C(f+C(m*j))}z[e+152>>2]=f>g?f:g;z[e+148>>2]=h>2]=f>2]=h>l?l:h;z[e+144>>2]=i>2]=i>k?k:i;u[e+28>>1]=x[d>>1];v[e+24>>2]=c;v[e+20>>2]=b;v[e+16>>2]=130240;s=v[a+644>>2];w=v[a+640>>2];p=e+16|0;c=xa-1056|0;xa=c;t[c+1040|0]=1;v[c+1048>>2]=256;v[c+1052>>2]=256;v[c+1044>>2]=c+16;v[c+16>>2]=v[q+588>>2];d=1;j:while(1){d=d-1|0;a=v[v[c+1044>>2]+(d<<2)>>2];f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);while(1){k:{l:{l=C(h*C(.5));f=C(C(f*C(.5))+z[e+80>>2]);m:{if(!(z[e+128>>2]<=C(l+f))|!(z[e+144>>2]>=C(l-f))){break m}h=C(C(k*C(.5))+z[e+84>>2]);g=C(g*C(.5));m=C(z[e+36>>2]-g);l=C(z[e+32>>2]-l);k=C(C(m*z[e+48>>2])-C(l*z[e+64>>2]));if(!(C(C(f*z[e+112>>2])+C(h*z[e+96>>2]))>=(k>C(0)?k:C(-k)))|!(z[e+132>>2]<=C(g+h))|!(z[e+148>>2]>=C(g-h))){break m}g=C(C(j*C(.5))+z[e+88>>2]);o=C(C(h*z[e+116>>2])+C(g*z[e+100>>2]));h=C(i*C(.5));j=C(z[e+40>>2]-h);i=C(C(j*z[e+52>>2])-C(m*z[e+68>>2]));if(!(o>=(i>C(0)?i:C(-i)))|!(z[e+136>>2]<=C(h+g))|!(z[e+152>>2]>=C(h-g))){break m}g=C(C(g*z[e+120>>2])+C(f*z[e+104>>2]));f=C(C(l*z[e+56>>2])-C(j*z[e+72>>2]));if(!(g>=(f>C(0)?f:C(-f)))){break m}b=a;a=v[a+36>>2];if(v[b+40>>2]){break l}b=v[a>>2];if(!b){break m}a=a+4|0;if((b|0)==1){if(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(v[a>>2],44)|0)|0){break m}break k}while(1){q=v[a>>2];n=w+B(q,24)|0;f=z[n>>2];g=z[n+12>>2];h=C(C(f+g)*C(.5));f=C(C(C(g-f)*C(.5))+z[e+80>>2]);n:{if(!(z[e+128>>2]<=C(h+f))|!(z[e+144>>2]>=C(h-f))){break n}i=z[n+16>>2];j=z[n+4>>2];g=C(C(C(i-j)*C(.5))+z[e+84>>2]);i=C(C(j+i)*C(.5));j=C(z[e+36>>2]-i);k=C(z[e+32>>2]-h);h=C(C(j*z[e+48>>2])-C(k*z[e+64>>2]));if(!(C(C(f*z[e+112>>2])+C(g*z[e+96>>2]))>=(h>C(0)?h:C(-h)))|!(z[e+132>>2]<=C(i+g))|!(z[e+148>>2]>=C(i-g))){break n}o=C(g*z[e+116>>2]);h=z[n+20>>2];i=z[n+8>>2];g=C(C(C(h-i)*C(.5))+z[e+88>>2]);h=C(C(i+h)*C(.5));l=C(z[e+40>>2]-h);i=C(C(l*z[e+52>>2])-C(j*z[e+68>>2]));if(!(C(o+C(g*z[e+100>>2]))>=(i>C(0)?i:C(-i)))|!(z[e+136>>2]<=C(h+g))|!(z[e+152>>2]>=C(h-g))){break n}g=C(C(g*z[e+120>>2])+C(f*z[e+104>>2]));f=C(C(k*z[e+56>>2])-C(l*z[e+72>>2]));if(!(g>=(f>C(0)?f:C(-f)))){break n}if(!(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(q,44)|0)|0)){break k}}a=a+4|0;b=b-1|0;if(b){continue}break}}y=!d;if(d){continue j}break k}v[v[c+1044>>2]+(d<<2)>>2]=a+48;d=d+1|0;if((d|0)==(v[c+1052>>2]&2147483647)){gD(c+16|0,d<<1)}f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);continue}break}break};a=v[c+1052>>2];o:{if((a|0)<0|!(a&2147483647)){break o}a=v[c+1044>>2];if((a|0)==(c+16|0)|!a){break o}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+1056|0;n=y;break a;case 0:f=z[b+112>>2];g=z[b+108>>2];n=v[b+104>>2];p=v[b+100>>2];v[e+44>>2]=0;z[e+40>>2]=g;v[e+32>>2]=p;v[e+36>>2]=n;z[e+48>>2]=f*f;u[e+28>>1]=x[d>>1];v[e+24>>2]=c;v[e+20>>2]=b;v[e+16>>2]=130272;s=v[a+644>>2];w=v[a+640>>2];p=e+16|0;c=xa-1056|0;xa=c;t[c+1040|0]=1;v[c+1048>>2]=256;v[c+1052>>2]=256;v[c+1044>>2]=c+16;v[c+16>>2]=v[q+588>>2];d=1;p:while(1){d=d-1|0;a=v[v[c+1044>>2]+(d<<2)>>2];f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);while(1){q:{i=C(z[e+40>>2]-C(i*C(.5)));j=C(j*C(.5));l=i>2]-C(h*C(.5)));f=C(f*C(.5));m=f>h?h:f;g=C(z[e+36>>2]-C(g*C(.5)));k=C(k*C(.5));r=g>2]>=C(C(i*i)+C(o+C(f*f))))){break s}b=a;a=v[a+36>>2];if(v[b+40>>2]){break r}b=v[a>>2];if(!b){break s}a=a+4|0;if((b|0)==1){if(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(v[a>>2],44)|0)|0){break s}break q}while(1){q=v[a>>2];n=w+B(q,24)|0;g=z[n+8>>2];h=z[n+20>>2];f=C(z[e+40>>2]-C(C(g+h)*C(.5)));g=C(C(h-g)*C(.5));h=f>2];k=z[n+12>>2];i=C(z[e+32>>2]-C(C(j+k)*C(.5)));j=C(C(k-j)*C(.5));k=i>2];r=z[n+16>>2];l=C(z[e+36>>2]-C(C(m+r)*C(.5)));m=C(C(r-m)*C(.5));r=l>2]>=C(g+C(i+C(f*f)))){if(!(Ba[v[v[p>>2]+8>>2]](p,c+12|0,s+B(q,44)|0)|0)){break q}}a=a+4|0;b=b-1|0;if(b){continue}break}}y=!d;if(d){continue p}break q}v[v[c+1044>>2]+(d<<2)>>2]=a+48;d=d+1|0;if((d|0)==(v[c+1052>>2]&2147483647)){gD(c+16|0,d<<1)}f=z[a+16>>2];g=z[a>>2];h=C(f+g);f=C(f-g);j=z[a+24>>2];k=z[a+8>>2];i=C(j+k);l=z[a+20>>2];m=z[a+4>>2];g=C(l+m);j=C(j-k);k=C(l-m);continue}break}break};a=v[c+1052>>2];t:{if((a|0)<0|!(a&2147483647)){break t}a=v[c+1044>>2];if((a|0)==(c+16|0)|!a){break t}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+1056|0;n=y;break a;case 4:break b;default:break a}}n=ID(e+32|0,b+48|0,b+12|0,b);u[e+28>>1]=x[d>>1];v[e+24>>2]=c;v[e+20>>2]=b;v[e+16>>2]=130168;n=nE(v[a+644>>2],v[a+640>>2],q,n,e+16|0)}xa=e+224|0;return n|0}function LA(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,u=0,w=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;i=xa-1072|0;xa=i;a=i+1052|0;v[a>>2]=-128;v[a+4>>2]=-128;a=i;v[a+1020>>2]=-128;v[a+1024>>2]=-128;v[a+988>>2]=-128;v[a+992>>2]=-128;v[a+956>>2]=-128;v[a+960>>2]=-128;v[a+924>>2]=-128;v[a+928>>2]=-128;v[a+892>>2]=-128;v[a+896>>2]=-128;v[a+860>>2]=-128;v[a+864>>2]=-128;v[a+828>>2]=-128;v[a+832>>2]=-128;v[a+796>>2]=-128;v[a+800>>2]=-128;v[a+764>>2]=-128;v[a+768>>2]=-128;v[a+732>>2]=-128;v[a+736>>2]=-128;v[a+700>>2]=-128;v[a+704>>2]=-128;v[a+668>>2]=-128;v[a+672>>2]=-128;v[a+636>>2]=-128;v[a+640>>2]=-128;v[a+604>>2]=-128;v[a+608>>2]=-128;v[a+572>>2]=-128;v[a+576>>2]=-128;v[a+540>>2]=-128;v[a+544>>2]=-128;v[a+508>>2]=-128;v[a+512>>2]=-128;v[a+476>>2]=-128;v[a+480>>2]=-128;v[a+444>>2]=-128;v[a+448>>2]=-128;v[a+412>>2]=-128;v[a+416>>2]=-128;v[a+380>>2]=-128;v[a+384>>2]=-128;v[a+348>>2]=-128;v[a+352>>2]=-128;v[a+316>>2]=-128;v[a+320>>2]=-128;v[a+284>>2]=-128;v[a+288>>2]=-128;v[a+252>>2]=-128;v[a+256>>2]=-128;v[a+220>>2]=-128;v[a+224>>2]=-128;v[a+188>>2]=-128;v[a+192>>2]=-128;v[a+156>>2]=-128;v[a+160>>2]=-128;v[a+124>>2]=-128;v[a+128>>2]=-128;v[a+92>>2]=-128;v[a+96>>2]=-128;v[a+60>>2]=-128;v[a+64>>2]=-128;v[a+24>>2]=v[b+12>>2];v[a+16>>2]=0;v[a+20>>2]=32;t[a+9|0]=0;v[a+12>>2]=a+48;v[a+44>>2]=v[b+152>>2];v[a+40>>2]=v[b+148>>2];m=v[b+24>>2];s=v[b+52>>2];r=v[b+16>>2];w=v[b+8>>2];l=v[b+28>>2];q=v[b+40>>2];a:{if(!q){if(r){while(1){b=d<<5;a=b+s|0;b=b+w|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[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+B(e,52)|0;d=v[(v[v[b>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](b,v[i+44>>2])}b=m+B(e|1,52)|0;d=v[(v[v[b>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](b,v[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+B(e,52)|0;b=v[(v[v[a>>2]+24>>2]<<2)+149608>>2];if(!b){break a}Ba[b|0](a,v[i+44>>2]);break a}K=v[b+4>>2];F=v[b+108>>2];G=v[b+32>>2];u=v[b+116>>2];H=v[b+112>>2];I=v[b+36>>2];g=v[b>>2];b:{if(!g){p=(u|0)>0;break b}c:{if((q|0)>0){p=g;while(1){J=(p|0)==1?129440:129312;h=0;while(1){o=(h<<3)+I|0;n=x[o+4>>1];k=0;f=0;c=0;C=(v[o>>2]<<5)+G|0;e=v[C+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;A=c-a|0;c=j;a=A+1|0;c=a?c:c+1|0;d=a;a=0;D=a;E=d&7;if(a|E){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((E|0)!=(k|0)|(D|0)!=(a|0)){continue}break}}if(!j&A>>>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}}Ba[v[J+(x[o+6>>1]<<2)>>2]](C,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=(u|0)>0;if((u|0)<=0){break b}n=g<<1;if(!n){break b}J=(u|0)>1?u:1;while(1){C=(n|0)==1?129440:129312;h=0;while(1){o=(h<<3)+H|0;j=x[o+4>>1];k=0;f=0;c=0;D=(v[o>>2]<<5)+F|0;e=v[D+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;A=c-a|0;c=g;a=A+1|0;c=a?c:c+1|0;d=a;a=0;E=a;L=d&7;if(a|L){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((L|0)!=(k|0)|(E|0)!=(a|0)){continue}break}}if(!g&A>>>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}}Ba[v[C+(x[o+6>>1]<<2)>>2]](D,j,i+8|0);h=h+1|0;if((J|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+w|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[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+B(e,52)|0;f=v[(v[v[d>>2]+24>>2]<<2)+149608>>2];if(f){Ba[f|0](d,v[i+44>>2])}d=m+B(e|1,52)|0;f=v[(v[v[d>>2]+24>>2]<<2)+149608>>2];if(f){Ba[f|0](d,v[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+B(e,52)|0;d=v[(v[v[a>>2]+24>>2]<<2)+149608>>2];if(!d){break f}Ba[d|0](a,v[i+44>>2])}n=K-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)+I|0;s=(v[l>>2]<<5)+G|0;e=v[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;w=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)|(w|0)!=(a|0)){continue}break}}a=x[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}}Ba[v[(x[l+6>>1]<<2)+129312>>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)+H|0;s=(v[l>>2]<<5)+F|0;e=v[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;w=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)|(w|0)!=(a|0)){continue}break}}a=x[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}}Ba[v[(x[l+6>>1]<<2)+129312>>2]](s,a,i+8|0);h=h+1|0;if((u|0)!=(h|0)){continue}break}}j=j+1|0;if((n|0)!=(j|0)){continue}break}}a=v[b+140>>2];v[i+4>>2]=a;g=v[b+132>>2];b=v[b+136>>2];v[i+36>>2]=a;t[i+9|0]=1;v[i+32>>2]=b;v[i+28>>2]=g;i:{if(!K){break i}if((q|0)>0){h=0;while(1){k=0;f=0;c=0;j=(h<<3)+I|0;m=(v[j>>2]<<5)+G|0;e=v[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=x[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}}Ba[v[(x[j+6>>1]<<2)+129376>>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)+H|0;l=(v[p>>2]<<5)+F|0;e=v[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=x[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}}Ba[v[(x[p+6>>1]<<2)+129376>>2]](l,a,i+8|0);h=h+1|0;if((u|0)!=(h|0)){continue}break}}a=v[i+16>>2];if(!a){break a}a=a+v[i+4>>2]|0;v[i+4>>2]=a;b=v[i+16>>2];if(!b){break a}d=a-b|0;e=0;while(1){a=v[i+12>>2]+(e<<5)|0;c=v[a+4>>2];b=g+(d+e<<5)|0;v[b>>2]=v[a>>2];v[b+4>>2]=c;c=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=c;c=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=c;c=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=c;e=e+1|0;if(e>>>0>2]){continue}break}}xa=i+1072|0} +function VX(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=0,u=C(0),x=C(0),y=0,A=C(0),D=C(0),E=C(0),G=C(0),H=0,I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=0,ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0);j=xa-320|0;xa=j;q=v[b+4>>2];k=z[q+20>>2];s=v[a+4>>2];l=z[s+20>>2];A=z[d>>2];aa=w[s+32|0];M=z[s+16>>2];ba=w[q+32|0];R=z[q+16>>2];v[j+28>>2]=0;_=C((k>2];d=0;while(1){c=d<<2;H=w[d+f|0];v[c+(j+48|0)>>2]=H;I=w[d+g|0];v[c+(j+32|0)>>2]=I;c=v[s+152>>2]+B(H,12)|0;k=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];c=v[q+152>>2]+B(I,12)|0;o=z[c+8>>2];n=z[c>>2];r=z[c+4>>2];u=z[y+48>>2];x=z[y+32>>2];E=z[y>>2];G=z[y+16>>2];N=z[y+52>>2];S=z[y+36>>2];T=z[y+4>>2];J=z[y+20>>2];L=z[y+56>>2];U=z[y+40>>2];V=z[s+88>>2];W=z[s+56>>2];O=z[s+72>>2];P=z[y+8>>2];X=z[s+80>>2];Y=z[s+48>>2];Z=z[s+64>>2];ca=z[y+24>>2];da=z[s+84>>2];ea=z[s+52>>2];fa=z[s+68>>2];ga=z[q+80>>2];ha=z[q+48>>2];ia=z[q+64>>2];D=z[q+84>>2];ja=z[q+52>>2];ka=z[q+68>>2];Q=z[q+88>>2];la=z[q+56>>2];ma=z[q+72>>2];c=p;p=c<<4;H=p+(j+128|0)|0;v[H+12>>2]=0;I=p+(j- -64|0)|0;v[I+12>>2]=0;p=p+(j+192|0)|0;v[p+12>>2]=0;Q=C(C(Q*o)+C(C(la*n)+C(r*ma)));z[I+8>>2]=Q;D=C(C(D*o)+C(C(ja*n)+C(r*ka)));z[I+4>>2]=D;r=C(C(ga*o)+C(C(ha*n)+C(r*ia)));z[I>>2]=r;o=C(C(V*k)+C(C(W*l)+C(m*O)));n=C(C(X*k)+C(C(Y*l)+C(m*Z)));k=C(C(da*k)+C(C(ea*l)+C(m*fa)));l=C(L+C(C(U*o)+C(C(P*n)+C(ca*k))));z[H+8>>2]=l;m=C(N+C(C(S*o)+C(C(T*n)+C(k*J))));z[H+4>>2]=m;k=C(u+C(C(x*o)+C(C(E*n)+C(k*G))));z[H>>2]=k;l=C(l-Q);z[p+8>>2]=l;m=C(m-D);z[p+4>>2]=m;k=C(k-r);z[p>>2]=k;p=c+1|0;d=d+1|0;if(($|0)!=(d|0)){continue}break}v[j+28>>2]=p;g:{h:{switch(c-1|0){case 0:o=z[j+200>>2];k=C(z[j+216>>2]-o);n=z[j+192>>2];l=C(z[j+208>>2]-n);r=z[j+196>>2];m=C(z[j+212>>2]-r);u=C(C(k*k)+C(C(l*l)+C(m*m)));if(!(u<=C(1.1920928955078125e-7))){break g}v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break e;case 1:jY(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}}Q_(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e}v[j+316>>2]=0;D=k;k=C(F(C(C(C(C(C(-n)*l)-C(m*r))-C(o*k))/u),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=o+C(D*k);z[j+308>>2]=r+C(m*k);z[j+304>>2]=n+C(l*k);break e}k=z[c+8>>2];m=z[c>>2];l=z[c+4>>2];v[j+268>>2]=0;c=C(C(k*k)+C(C(m*m)+C(l*l)))>C(0);k=c?k:C(0);z[j+264>>2]=k;l=c?l:C(0);z[j+260>>2]=l;m=c?m:C(1);z[j+256>>2]=m;o=C(C(1)/C(K(C(C(k*k)+C(C(m*m)+C(l*l))))));u=C(k*o);x=C(m*o);n=C(34028234663852886e22);r=C(l*o);break d}v[j+316>>2]=0;z[j+312>>2]=l;z[j+308>>2]=m;z[j+304>>2]=k}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));if(!(_>2]=v[j+296>>2];c=v[j+292>>2];v[j+272>>2]=v[j+288>>2];v[j+276>>2]=c;V=z[j+268>>2];v[j+12>>2]=0;z[j+8>>2]=-k;z[j+4>>2]=-l;z[j>>2]=-m;d=j+304|0;WW(d,a,j,(j+48|0)+(v[j+28>>2]<<2)|0);W=z[j+316>>2];n=z[j+312>>2];S=z[j+304>>2];T=z[j+308>>2];p=v[j+28>>2];c=v[b+4>>2];J=z[c+56>>2];L=z[c+52>>2];O=z[c+72>>2];q=c- -64|0;P=z[q>>2];X=z[c+68>>2];A=z[c+88>>2];M=z[c+80>>2];Y=z[c+84>>2];Z=z[c+48>>2];v[j+316>>2]=0;D=A;A=k;Q=M;M=m;R=l;z[j+312>>2]=C(D*k)+C(C(Q*m)+C(l*Y));z[j+308>>2]=C(O*k)+C(C(P*m)+C(l*X));z[j+304>>2]=C(J*k)+C(C(Z*m)+C(l*L));d=IV(c,d);v[(j+32|0)+(p<<2)>>2]=d;d=v[c+152>>2]+B(d,12)|0;k=z[d+8>>2];l=z[d>>2];m=z[d+4>>2];O=C(C(z[c+88>>2]*k)+C(C(z[c+56>>2]*l)+C(m*z[c+72>>2])));J=C(n-O);P=C(C(z[c+80>>2]*k)+C(C(z[c+48>>2]*l)+C(m*z[q>>2])));L=C(S-P);l=C(C(z[c+84>>2]*k)+C(C(z[c+52>>2]*l)+C(m*z[c+68>>2])));k=C(T-l);m=C(C(u*J)+C(C(x*L)+C(r*k)));if(m>U){p=0;if(!f){break a}a=v[j+28>>2];t[h|0]=a;if(!a){break a}c=0;if((a|0)!=1){h=a&-2;b=0;while(1){d=c<<2;i=j+48|0;t[c+f|0]=v[d+i>>2];q=j+32|0;t[c+g|0]=v[q+d>>2];d=c|1;e=d<<2;t[d+f|0]=v[e+i>>2];t[d+g|0]=v[e+q>>2];c=c+2|0;b=b+2|0;if((h|0)!=(b|0)){continue}break}}if(!(a&1)){break a}a=c<<2;t[c+f|0]=v[a+(j+48|0)>>2];t[c+g|0]=v[a+(j+32|0)>>2];break a}c=v[j+28>>2];if(m>C(o*C(.9997749924659729))){i:{if(!f){break i}t[h|0]=c;if(!c){break i}a=0;if((c|0)!=1){p=c&-2;d=0;while(1){b=a<<2;q=j+48|0;t[a+f|0]=v[b+q>>2];s=j+32|0;t[a+g|0]=v[s+b>>2];b=a|1;h=b<<2;t[b+f|0]=v[h+q>>2];t[b+g|0]=v[h+s>>2];a=a+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(c&1)){break i}b=a<<2;t[a+f|0]=v[b+(j+48|0)>>2];t[a+g|0]=v[b+(j+32|0)>>2]}z[i+32>>2]=x;v[i+44>>2]=0;z[i+40>>2]=u;z[i+36>>2]=r;JV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,c);j:{if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;a=v[j+292>>2];v[i+68>>2]=v[j+288>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+296>>2];break j}k=z[j+304>>2];l=z[j+308>>2];m=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=m-C(E*u);z[i+4>>2]=l-C(E*r);z[i>>2]=k-C(E*x);k=z[j>>2];l=z[j+4>>2];m=z[j+8>>2];v[i+28>>2]=0;z[i+24>>2]=m+C(G*u);z[i+20>>2]=l+C(G*r);z[i+16>>2]=k+C(G*x);o=C(o-N)}z[i+64>>2]=o;p=2;break a}p=c<<4;d=p+(j+128|0)|0;z[d+12>>2]=W;z[d+8>>2]=n;z[d+4>>2]=T;z[d>>2]=S;d=p+(j- -64|0)|0;v[d+12>>2]=0;z[d+8>>2]=O;z[d+4>>2]=l;z[d>>2]=P;d=p+(j+192|0)|0;v[d+12>>2]=0;z[d+8>>2]=J;z[d+4>>2]=k;z[d>>2]=L;v[j+28>>2]=c+1;k:{l:{switch(c-1|0){case 0:n=z[j+200>>2];k=C(z[j+216>>2]-n);r=z[j+192>>2];l=C(z[j+208>>2]-r);u=z[j+196>>2];m=C(z[j+212>>2]-u);x=C(C(k*k)+C(C(l*l)+C(m*m)));if(x<=C(1.1920928955078125e-7)){v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break k}v[j+316>>2]=0;D=k;k=C(F(C(C(C(C(C(-r)*l)-C(m*u))-C(n*k))/x),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=n+C(D*k);z[j+308>>2]=u+C(m*k);z[j+304>>2]=r+C(l*k);break k;case 1:jY(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:Q_(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}}v[j+316>>2]=0;z[j+312>>2]=J;z[j+308>>2]=k;z[j+304>>2]=L}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));x=C(C(1)/n);u=C(k*x);r=C(l*x);x=C(m*x);if(n_){continue}break}a=v[j+28>>2];if(!(n>2];y=j+32|0;t[c+g|0]=v[y+h>>2];h=c|1;p=h<<2;t[f+h|0]=v[p+s>>2];t[g+h|0]=v[p+y>>2];c=c+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(b&1)){break m}b=c<<2;t[c+f|0]=v[b+(j+48|0)>>2];t[c+g|0]=v[b+(j+32|0)>>2]}v[j+296>>2]=v[j+280>>2];b=v[j+276>>2];v[j+288>>2]=v[j+272>>2];v[j+292>>2]=b;z[j+268>>2]=V;z[j+256>>2]=M;z[j+260>>2]=R;z[j+264>>2]=A;JV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,a);v[i+60>>2]=0;z[i+56>>2]=u;z[i+52>>2]=r;z[i+48>>2]=x;v[i+44>>2]=0;k=C(C(1)/o);l=C(A*k);z[i+40>>2]=l;m=C(R*k);z[i+36>>2]=m;k=C(M*k);z[i+32>>2]=k;if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;z[i+64>>2]=o;a=v[j+276>>2];v[i+68>>2]=v[j+272>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+280>>2];p=4;break a}n=z[j+304>>2];r=z[j+308>>2];A=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=A-C(E*l);z[i+4>>2]=r-C(E*m);z[i>>2]=n-C(E*k);n=z[j>>2];r=z[j+4>>2];A=z[j+8>>2];z[i+64>>2]=o-N;v[i+28>>2]=0;z[i+24>>2]=A+C(G*l);z[i+20>>2]=r+C(G*m);z[i+16>>2]=n+C(G*k);p=2;if(o<=N){break a}p=4;break a}if(f){break b}p=5;break a}a=v[j+28>>2]}t[h|0]=a;p=5;if(!a){break a}c=0;if((a|0)!=1){h=a&-2;b=0;while(1){d=c<<2;i=j+48|0;t[c+f|0]=v[d+i>>2];q=j+32|0;t[c+g|0]=v[q+d>>2];d=c|1;e=d<<2;t[d+f|0]=v[e+i>>2];t[d+g|0]=v[e+q>>2];c=c+2|0;b=b+2|0;if((h|0)!=(b|0)){continue}break}}if(!(a&1)){break a}a=c<<2;t[c+f|0]=v[a+(j+48|0)>>2];t[c+g|0]=v[a+(j+32|0)>>2]}xa=j+320|0;return p}function FX(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,u=0,x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0);l=xa-208|0;xa=l;k=xa-272|0;xa=k;v[k+248>>2]=0;v[k+252>>2]=0;v[k+240>>2]=0;v[k+244>>2]=0;J=z[d+8>>2];L=z[d+4>>2];O=z[d>>2];R=z[e+8>>2];M=z[e+4>>2];P=z[e>>2];v[k+224>>2]=1;u=v[a+4>>2];Q=z[u+56>>2];S=z[u+52>>2];q=z[u+72>>2];da=z[u+68>>2];fa=z[u+48>>2];T=z[u+64>>2];A=z[c+8>>2];p=z[c>>2];r=z[c+4>>2];o=v[b+4>>2];G=z[o+56>>2];aa=z[o+52>>2];ba=z[o+72>>2];s=o- -64|0;Z=z[s>>2];E=z[o+68>>2];D=z[o+88>>2];x=z[o+80>>2];n=z[o+84>>2];y=z[o+48>>2];v[k+172>>2]=0;I=D;u=C(C(A*A)+C(C(p*p)+C(r*r)))>C(1.1920928955078125e-7);D=u?A:C(0);A=D;p=u?p:C(1);r=u?r:C(0);D=C(C(1)/C(K(C(C(D*D)+C(C(p*p)+C(r*r))))));U=C(A*D);p=C(p*D);V=C(r*D);z[k+168>>2]=C(I*U)+C(C(x*p)+C(n*V));z[k+164>>2]=C(ba*U)+C(C(Z*p)+C(V*E));z[k+160>>2]=C(G*U)+C(C(y*p)+C(V*aa));u=IV(o,k+160|0);I=z[s>>2];A=z[o+80>>2];r=z[o+84>>2];G=z[o+52>>2];aa=z[o+68>>2];D=z[o+88>>2];u=v[o+152>>2]+B(u,12)|0;H=z[u+8>>2];x=z[o+56>>2];N=z[u>>2];n=z[o+72>>2];_=z[u+4>>2];ba=z[o+48>>2];v[k+180>>2]=0;v[k+184>>2]=0;v[k+188>>2]=0;v[k+192>>2]=0;v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;v[k+208>>2]=0;v[k+212>>2]=0;v[k+216>>2]=0;v[k+220>>2]=0;v[k+172>>2]=0;v[k+176>>2]=0;y=C(-p);u=C(C(C(fa*y)-C(S*V))-C(Q*U))>C(C(C(T*y)-C(da*V))-C(q*U));Z=u?Q:q;E=C(C(D*H)+C(C(x*N)+C(_*n)));q=C(Z-E);z[k+168>>2]=q;D=u?S:da;x=C(C(r*H)+C(C(G*N)+C(_*aa)));p=C(D-x);z[k+164>>2]=p;n=u?fa:T;y=C(C(A*H)+C(C(ba*N)+C(_*I)));r=C(n-y);z[k+160>>2]=r;v[k+116>>2]=0;v[k+120>>2]=0;v[k+124>>2]=0;v[k+128>>2]=0;v[k+132>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+108>>2]=0;v[k+112>>2]=0;z[k+104>>2]=Z;z[k+100>>2]=D;z[k+96>>2]=n;v[k+52>>2]=0;v[k+56>>2]=0;v[k+60>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+44>>2]=0;v[k+48>>2]=0;z[k+40>>2]=E;z[k+36>>2]=x;z[k+32>>2]=y;E=C(-q);D=C(-p);y=C(-r);G=C(C(q*q)+C(C(r*r)+C(p*p)));n=z[v[b+4>>2]+24>>2];n=C((nda)){x=y;n=D;i=E;aa=r;ba=p;Z=q;break b}ga=C(n+i);fa=C(ga*ga);O=C(C(P*C(0))+O);P=C(C(M*C(0))+L);I=C(C(R*C(0))+J);i=E;n=D;x=y;while(1){aa=r;ba=p;Z=q;m=v[a+4>>2];U=z[m+52>>2];V=z[m+56>>2];H=z[m+68>>2];N=z[m+72>>2];Q=z[m+48>>2];S=z[m+64>>2];o=v[b+4>>2];T=z[o+52>>2];J=z[o+56>>2];L=z[o+72>>2];u=o- -64|0;R=z[u>>2];M=z[o+68>>2];A=z[o+88>>2];q=z[o+80>>2];p=z[o+84>>2];r=z[o+48>>2];v[k+268>>2]=0;W=q;q=C(C(1)/C(K(C(C(E*E)+C(C(y*y)+C(D*D))))));ea=C(y*q);ca=C(-ea);X=C(D*q);Y=C(E*q);z[k+264>>2]=C(C(W*ca)-C(p*X))-C(A*Y);z[k+260>>2]=C(C(R*ca)-C(M*X))-C(L*Y);z[k+256>>2]=C(C(r*ca)-C(T*X))-C(J*Y);m=IV(o,k+256|0);s=C(C(V*Y)+C(C(Q*ea)+C(X*U)))>C(C(N*Y)+C(C(S*ea)+C(X*H)));_=s?Q:S;m=v[o+152>>2]+B(m,12)|0;q=z[m+8>>2];p=z[m>>2];r=z[m+4>>2];Q=C(O+C(C(z[o+80>>2]*q)+C(C(z[o+48>>2]*p)+C(r*z[u>>2]))));W=C(_-Q);S=s?U:H;J=C(P+C(C(z[o+84>>2]*q)+C(C(z[o+52>>2]*p)+C(r*z[o+68>>2]))));H=C(S-J);T=s?V:N;L=C(I+C(C(z[o+88>>2]*q)+C(C(z[o+56>>2]*p)+C(r*z[o+72>>2]))));N=C(T-L);R=C(C(C(C(ea*C(-W))-C(X*H))-C(Y*N))-ga);if(R>C(0)){m=0;M=z[e+8>>2];A=z[e>>2];q=z[e+4>>2];p=C(C(Y*M)+C(C(ea*A)+C(X*q)));if(p>=C(0)){break a}r=$;$=C(r-C(R/p));if($>r){if($>C(1)){break a}x=z[d+8>>2];n=z[d+4>>2];i=z[d>>2];v[k+76>>2]=0;v[k+60>>2]=0;v[k+44>>2]=0;p=C(i+C(A*$));A=C(p-O);J=C(A+z[k+64>>2]);z[k+64>>2]=J;r=C(n+C(q*$));n=C(r-P);L=C(n+z[k+68>>2]);z[k+68>>2]=L;G=C(x+C(M*$));i=C(G-I);R=C(i+z[k+72>>2]);z[k+72>>2]=R;M=C(A+z[k+48>>2]);z[k+48>>2]=M;O=C(n+z[k+52>>2]);z[k+52>>2]=O;P=C(i+z[k+56>>2]);z[k+56>>2]=P;I=C(A+z[k+32>>2]);z[k+32>>2]=I;A=C(n+z[k+36>>2]);z[k+36>>2]=A;q=C(i+z[k+40>>2]);z[k+40>>2]=q;x=z[k+96>>2];n=z[k+100>>2];i=z[k+104>>2];v[k+172>>2]=0;z[k+168>>2]=i-q;z[k+164>>2]=n-A;z[k+160>>2]=x-I;x=z[k+112>>2];n=z[k+116>>2];i=z[k+120>>2];v[k+188>>2]=0;z[k+184>>2]=i-P;z[k+180>>2]=n-O;z[k+176>>2]=x-M;x=z[k+128>>2];n=z[k+132>>2];i=z[k+136>>2];v[k+204>>2]=0;z[k+200>>2]=i-R;z[k+196>>2]=n-L;z[k+192>>2]=x-J;s=v[b+4>>2];M=z[s+56>>2];O=z[s+52>>2];P=z[s+72>>2];u=s- -64|0;I=z[u>>2];A=z[s+68>>2];q=z[s+88>>2];x=z[s+80>>2];n=z[s+84>>2];i=z[s+48>>2];v[k+268>>2]=0;W=q;q=C(-Y);H=n;n=C(-X);z[k+264>>2]=C(W*q)+C(C(x*ca)+C(H*n));z[k+260>>2]=C(P*q)+C(C(I*ca)+C(A*n));z[k+256>>2]=C(M*q)+C(C(i*ca)+C(O*n));m=IV(s,k+256|0);m=v[s+152>>2]+B(m,12)|0;x=z[m+8>>2];n=z[m>>2];i=z[m+4>>2];L=C(G+C(C(z[s+88>>2]*x)+C(C(z[s+56>>2]*n)+C(i*z[s+72>>2]))));N=C(T-L);J=C(r+C(C(z[s+84>>2]*x)+C(C(z[s+52>>2]*n)+C(i*z[s+68>>2]))));H=C(S-J);Q=C(p+C(C(z[s+80>>2]*x)+C(C(z[s+48>>2]*n)+C(i*z[u>>2]))));W=C(_-Q);x=y;n=D;i=E;O=p;P=r;I=G;G=C(34028234663852886e22)}}A=G;u=v[k+224>>2];m=u<<4;s=m+(k+96|0)|0;v[s+12>>2]=0;z[s+8>>2]=T;z[s+4>>2]=S;z[s>>2]=_;s=m+(k+32|0)|0;v[s+12>>2]=0;z[s+8>>2]=L;z[s+4>>2]=J;z[s>>2]=Q;m=m+(k+160|0)|0;v[m+12>>2]=0;z[m+8>>2]=N;z[m+4>>2]=H;z[m>>2]=W;v[k+224>>2]=u+1;c:{d:{switch(u-1|0){case 0:G=z[k+168>>2];q=C(z[k+184>>2]-G);E=z[k+160>>2];p=C(z[k+176>>2]-E);D=z[k+164>>2];r=C(z[k+180>>2]-D);y=C(C(q*q)+C(C(p*p)+C(r*r)));if(y<=C(1.1920928955078125e-7)){v[k+224>>2]=1;m=v[k+164>>2];v[k+256>>2]=v[k+160>>2];v[k+260>>2]=m;m=v[k+172>>2];v[k+264>>2]=v[k+168>>2];v[k+268>>2]=m;break c}y=C(F(C(C(C(C(C(-E)*p)-C(r*D))-C(G*q))/y),C(1)));y=y>C(0)?y:C(0);z[k+264>>2]=G+C(q*y);z[k+260>>2]=D+C(r*y);z[k+256>>2]=E+C(p*y);break c;case 1:KV(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break c;case 2:O_(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break c;default:break d}}z[k+264>>2]=N;z[k+260>>2]=H;z[k+256>>2]=W}q=z[k+264>>2];E=C(-q);p=z[k+260>>2];D=C(-p);r=z[k+256>>2];y=C(-r);G=C(C(q*q)+C(C(r*r)+C(p*p)));if(faG){continue}break}m=!(A>G)}o=w[v[a+4>>2]+32|0];A=C(0);H=C(0);d=!(G>da)|m;E=d?i:E;x=d?x:y;y=d?n:D;i=C(K(C(C(E*E)+C(C(x*x)+C(y*y)))));if(!(i<=C(1.1920928955078125e-7))){i=C(C(1)/i);ha=C(E*i);H=C(x*i);A=C(y*i)}v[l+188>>2]=0;z[l+184>>2]=-ha;z[l+180>>2]=-A;z[l+176>>2]=-H;z[l+160>>2]=$;v[l+172>>2]=v[k+236>>2];d=v[k+232>>2];v[l+164>>2]=v[k+228>>2];v[l+168>>2]=d;v[k+268>>2]=0;z[k+264>>2]=m?Z:q;z[k+260>>2]=m?ba:p;z[k+256>>2]=m?aa:r;s=v[k+252>>2];m=v[k+248>>2];v[k+24>>2]=m;v[k+28>>2]=s;u=v[k+244>>2];d=v[k+240>>2];v[k+16>>2]=d;v[k+20>>2]=u;v[k+8>>2]=m;v[k+12>>2]=s;v[k>>2]=d;v[k+4>>2]=u;JV(k+160|0,k+96|0,k+32|0,k+256|0,k+16|0,k,v[k+224>>2]);x=z[v[a+4>>2]+16>>2];n=z[k+16>>2];y=z[k+20>>2];i=z[k+24>>2];v[l+204>>2]=0;z[l+200>>2]=i+(o?C(ha*x):C(-0));z[l+196>>2]=y+(o?C(A*x):C(-0));z[l+192>>2]=n+(o?C(H*x):C(-0));m=1}xa=k+272|0;d=m;if(m){m=v[l+164>>2];v[f>>2]=v[l+160>>2];v[f+4>>2]=m;m=v[l+172>>2];v[f+8>>2]=v[l+168>>2];v[f+12>>2]=m;if(!(!j|z[l+160>>2]!=C(0))){u=v[a+4>>2];m=v[b+4>>2];z[l+144>>2]=C(z[u+16>>2]+z[m+16>>2])*C(100);t[l+135|0]=0;v[l+88>>2]=0;v[l+92>>2]=0;v[l+80>>2]=0;v[l+84>>2]=0;v[l+72>>2]=0;v[l+76>>2]=0;j=l- -64|0;v[j>>2]=0;v[j+4>>2]=0;v[l+56>>2]=0;v[l+60>>2]=0;v[l+48>>2]=0;v[l+52>>2]=0;v[l+112>>2]=0;v[l+40>>2]=141148;v[l+44>>2]=u;v[l+32>>2]=141216;v[l+36>>2]=m;e:{f:{if(IX(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}v[l+16>>2]=1065353216;c=v[l+28>>2];v[l+8>>2]=v[l+24>>2];v[l+12>>2]=c;c=v[l+20>>2];v[l>>2]=v[l+16>>2];v[l+4>>2]=c;if(K_(a,b,l+140|0,l+136|0,w[l+135|0],0,l,l+48|0)-5>>>0<=1){break f}v[l+200>>2]=0;v[l+204>>2]=0;v[l+192>>2]=0;v[l+196>>2]=0;x=z[e+8>>2];n=z[e>>2];y=z[e+4>>2];v[l+188>>2]=0;i=C(C(1)/C(K(C(C(x*x)+C(C(n*n)+C(y*y))))));z[l+184>>2]=i*C(-x);z[l+180>>2]=i*C(-y);z[l+176>>2]=i*C(-n);i=C(0);break e}a=v[l+60>>2];v[l+200>>2]=v[l+56>>2];v[l+204>>2]=a;a=v[l+52>>2];v[l+192>>2]=v[l+48>>2];v[l+196>>2]=a;a=v[l+84>>2];v[l+176>>2]=v[l+80>>2];v[l+180>>2]=a;a=v[l+92>>2];v[l+184>>2]=v[l+88>>2];v[l+188>>2]=a;i=z[l+112>>2]}z[f>>2]=i>2];v[h>>2]=v[l+192>>2];v[h+4>>2]=a;a=v[l+204>>2];v[h+8>>2]=v[l+200>>2];v[h+12>>2]=a;a=v[l+180>>2];v[g>>2]=v[l+176>>2];v[g+4>>2]=a;a=v[l+188>>2];v[g+8>>2]=v[l+184>>2];v[g+12>>2]=a}xa=l+208|0;return d}function HD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=C(0),u=0,y=C(0),A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;i=xa-208|0;xa=i;r=1;d=v[a+4>>2];a:{if(!d){break a}b:{switch(x[b+98>>1]){case 3:if(x[b+96>>1]){d=ID(i+16|0,b+48|0,b+12|0,b);r=JD(v[a+296>>2],v[a+292>>2],v[a+4>>2],d,c);break a}f=z[b+84>>2];e=z[b+88>>2];j=z[b+76>>2];h=z[b+92>>2];k=z[b+80>>2];m=z[b+72>>2];v[i+44>>2]=0;z[i+40>>2]=C(h-k)*C(.5);z[i+36>>2]=C(e-j)*C(.5);v[i+28>>2]=0;z[i+32>>2]=C(f-m)*C(.5);z[i+24>>2]=C(k+h)*C(.5);z[i+20>>2]=C(j+e)*C(.5);z[i+16>>2]=C(m+f)*C(.5);r=KD(v[a+296>>2],v[a+292>>2],d,i+16|0,c);break a;case 2:j=z[b+60>>2];l=z[b+124>>2];m=z[b+112>>2];n=z[b+116>>2];f=z[b+120>>2];v[i+28>>2]=0;z[i+24>>2]=f;z[i+20>>2]=n;z[i+16>>2]=m;e=z[b+16>>2];k=z[b+20>>2];h=z[b+12>>2];v[i+108>>2]=0;v[i+92>>2]=0;v[i+76>>2]=0;l=C(l*C(1.0099999904632568));z[i+72>>2]=l;z[i+68>>2]=l;v[i+60>>2]=0;z[i+56>>2]=h;z[i+52>>2]=k;v[i+44>>2]=0;z[i+40>>2]=k;z[i+36>>2]=e;y=h>C(0)?h:C(-h);z[i+104>>2]=y;s=k>C(0)?k:C(-k);z[i+100>>2]=s;z[i+88>>2]=s;s=e>C(0)?e:C(-e);z[i+84>>2]=s;z[i+64>>2]=l;z[i+48>>2]=e;z[i+32>>2]=h;z[i+96>>2]=s;z[i+80>>2]=y;v[i+140>>2]=0;v[i+124>>2]=0;l=C(j+j);c:{if(l>=C(34028234663852886e22)){j=e==C(0)?n:e>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);h=h==C(0)?m:h>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);e=f;if(k==C(0)){break c}e=k>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break c}j=C(n+C(l*e));h=C(m+C(l*h));e=C(f+C(l*k))}z[i+136>>2]=f>e?f:e;z[i+132>>2]=j>2]=f>2]=j>n?n:j;z[i+128>>2]=h>2]=h>m?m:h;r=LD(v[a+296>>2],v[a+292>>2],d,i+16|0,c);break a;case 0:f=z[b+112>>2];e=z[b+108>>2];g=v[b+104>>2];F=v[b+100>>2];v[i+28>>2]=0;z[i+24>>2]=e;v[i+16>>2]=F;v[i+20>>2]=g;z[i+32>>2]=f*f;r=MD(v[a+296>>2],v[a+292>>2],d,i+16|0,c);break a;case 4:break b;default:break a}}d=ID(i+16|0,b+48|0,b+12|0,b);r=JD(v[a+296>>2],v[a+292>>2],v[a+4>>2],d,c)}if(!(!r|!w[a+336|0]|(v[a+156>>2]+v[a+108>>2]|0)==(0-v[a+216>>2]|0))){r=0;d=xa-224|0;xa=d;q=a+52|0;d:{if(v[q+104>>2]!=(0-v[q+56>>2]|0)){D=q+4|0;a=0;g=xa-208|0;xa=g;G=b+12|0;H=b+48|0;A=1;F=1;while(1){o=B(a,48)+D|0;a=v[o+12>>2];e:{if((A^1)&1|(!a|!v[a+588>>2])){break e}f:{switch(x[b+98>>1]){case 3:if(x[b+96>>1]){a=ID(g+16|0,H,G,b);p=v[D+104>>2];A=dD(v[p+12>>2],v[p+8>>2],v[o+12>>2],a,c);break e}f=z[b+84>>2];e=z[b+72>>2];j=z[b+88>>2];h=z[b+76>>2];k=z[b+92>>2];m=z[b+80>>2];v[g+44>>2]=0;v[g+28>>2]=0;z[g+40>>2]=C(k-m)*C(.5);z[g+36>>2]=C(j-h)*C(.5);z[g+32>>2]=C(f-e)*C(.5);z[g+24>>2]=C(m+k)*C(.5);z[g+20>>2]=C(h+j)*C(.5);z[g+16>>2]=C(e+f)*C(.5);o=v[D+104>>2];I=v[o+12>>2];K=v[o+8>>2];A=0;p=xa-1056|0;xa=p;t[p+1040|0]=1;v[p+1048>>2]=256;v[p+1052>>2]=256;v[p+1044>>2]=p+16;v[p+16>>2]=v[a+588>>2];u=1;g:while(1){u=u-1|0;a=v[v[p+1044>>2]+(u<<2)>>2];f=z[a+16>>2];e=z[a>>2];j=C(f+e);f=C(f-e);k=z[a+24>>2];m=z[a+8>>2];h=C(k+m);n=z[a+20>>2];l=z[a+4>>2];e=C(n+l);k=C(k-m);m=C(n-l);while(1){h:{i:{l=C(C(f*C(.5))+z[g+32>>2]);f=C(C(j*C(.5))-z[g+16>>2]);j:{if(!(l>=(f>C(0)?f:C(-f)))){break j}f=C(C(e*C(.5))-z[g+20>>2]);if(!(C(C(m*C(.5))+z[g+36>>2])>=(f>C(0)?f:C(-f)))){break j}f=C(C(h*C(.5))-z[g+24>>2]);if(!(C(C(k*C(.5))+z[g+40>>2])>=(f>C(0)?f:C(-f)))){break j}o=a;a=v[a+36>>2];if(v[o+40>>2]){break i}E=v[a>>2];if(!E){break j}a=a+4|0;if((E|0)==1){if(Ba[v[v[c>>2]>>2]](c,p+12|0,(v[a>>2]<<3)+I|0)|0){break j}break h}while(1){J=v[a>>2];o=B(J,24)+K|0;e=z[o+12>>2];j=z[o>>2];f=C(C(C(j+e)*C(.5))-z[g+16>>2]);k:{if(!(C(C(C(e-j)*C(.5))+z[g+32>>2])>=(f>C(0)?f:C(-f)))){break k}e=z[o+4>>2];j=z[o+16>>2];f=C(C(C(e+j)*C(.5))-z[g+20>>2]);if(!(C(C(C(j-e)*C(.5))+z[g+36>>2])>=(f>C(0)?f:C(-f)))){break k}e=z[o+8>>2];j=z[o+20>>2];f=C(C(C(e+j)*C(.5))-z[g+24>>2]);if(!(C(C(C(j-e)*C(.5))+z[g+40>>2])>=(f>C(0)?f:C(-f)))){break k}if(!(Ba[v[v[c>>2]>>2]](c,p+12|0,(J<<3)+I|0)|0)){break h}}a=a+4|0;E=E-1|0;if(E){continue}break}}A=!u;if(u){continue g}break h}v[v[p+1044>>2]+(u<<2)>>2]=a+48;u=u+1|0;if((u|0)==(v[p+1052>>2]&2147483647)){gD(p+16|0,u<<1)}f=z[a+16>>2];e=z[a>>2];j=C(f+e);f=C(f-e);k=z[a+24>>2];m=z[a+8>>2];h=C(k+m);n=z[a+20>>2];l=z[a+4>>2];e=C(n+l);k=C(k-m);m=C(n-l);continue}break}break};a=v[p+1052>>2];l:{if((a|0)<0|!(a&2147483647)){break l}a=v[p+1044>>2];if((a|0)==(p+16|0)|!a){break l}o=v[37696];Ba[v[v[o+12>>2]+12>>2]](o+12|0,a)}xa=p+1056|0;break e;case 2:j=z[b+60>>2];l=z[b+124>>2];m=z[b+112>>2];n=z[b+116>>2];f=z[b+120>>2];v[g+28>>2]=0;z[g+24>>2]=f;z[g+20>>2]=n;z[g+16>>2]=m;e=z[b+16>>2];k=z[b+20>>2];h=z[b+12>>2];v[g+108>>2]=0;v[g+92>>2]=0;v[g+76>>2]=0;l=C(l*C(1.0099999904632568));z[g+72>>2]=l;z[g+68>>2]=l;z[g+64>>2]=l;v[g+60>>2]=0;z[g+56>>2]=h;z[g+52>>2]=k;z[g+48>>2]=e;v[g+44>>2]=0;z[g+40>>2]=k;z[g+36>>2]=e;z[g+32>>2]=h;l=h>C(0)?h:C(-h);z[g+104>>2]=l;y=k>C(0)?k:C(-k);z[g+100>>2]=y;s=e>C(0)?e:C(-e);z[g+96>>2]=s;z[g+88>>2]=y;z[g+84>>2]=s;z[g+80>>2]=l;v[g+140>>2]=0;v[g+124>>2]=0;l=C(j+j);m:{if(l>=C(34028234663852886e22)){j=e==C(0)?n:e>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);h=h==C(0)?m:h>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);e=f;if(k==C(0)){break m}e=k>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break m}j=C(n+C(l*e));h=C(m+C(l*h));e=C(f+C(l*k))}z[g+136>>2]=f>e?f:e;z[g+132>>2]=j>2]=h>2]=f>2]=j>n?n:j;z[g+112>>2]=h>m?m:h;o=v[D+104>>2];A=eD(v[o+12>>2],v[o+8>>2],a,g+16|0,c);break e;case 0:f=z[b+112>>2];o=v[b+104>>2];p=v[b+100>>2];e=z[b+108>>2];v[g+28>>2]=0;z[g+24>>2]=e;v[g+16>>2]=p;v[g+20>>2]=o;z[g+32>>2]=f*f;o=v[D+104>>2];A=fD(v[o+12>>2],v[o+8>>2],a,g+16|0,c);break e;case 4:break f;default:break e}}a=ID(g+16|0,H,G,b);p=v[D+104>>2];A=dD(v[p+12>>2],v[p+8>>2],v[o+12>>2],a,c)}a=1;o=F;F=0;if(o){continue}break}xa=g+208|0;if(!(A&1)){break d}}r=1;if(!v[q+164>>2]){break d}n:{switch(x[b+98>>1]){case 3:if(x[b+96>>1]){a=ID(d+32|0,b+48|0,b+12|0,b);v[d+28>>2]=v[q+124>>2];v[d+24>>2]=c;v[d+20>>2]=a;v[d+16>>2]=129804;r=JD(v[q+200>>2],v[q+196>>2],v[q+168>>2],a,d+16|0);break d}f=z[b+84>>2];e=z[b+88>>2];j=z[b+76>>2];h=z[b+92>>2];k=z[b+80>>2];m=z[b+72>>2];v[d+60>>2]=0;z[d+56>>2]=C(h-k)*C(.5);z[d+52>>2]=C(e-j)*C(.5);v[d+44>>2]=0;z[d+48>>2]=C(f-m)*C(.5);z[d+40>>2]=C(k+h)*C(.5);z[d+36>>2]=C(j+e)*C(.5);z[d+32>>2]=C(m+f)*C(.5);v[d+28>>2]=v[q+124>>2];v[d+24>>2]=c;v[d+16>>2]=129836;a=d+32|0;v[d+20>>2]=a;r=KD(v[q+200>>2],v[q+196>>2],v[q+168>>2],a,d+16|0);break d;case 2:j=z[b+60>>2];l=z[b+124>>2];m=z[b+112>>2];n=z[b+116>>2];f=z[b+120>>2];v[d+44>>2]=0;z[d+40>>2]=f;z[d+36>>2]=n;z[d+32>>2]=m;e=z[b+16>>2];k=z[b+20>>2];h=z[b+12>>2];v[d+124>>2]=0;v[d+108>>2]=0;v[d+92>>2]=0;l=C(l*C(1.0099999904632568));z[d+88>>2]=l;z[d+84>>2]=l;v[d+76>>2]=0;z[d+72>>2]=h;z[d+68>>2]=k;v[d+60>>2]=0;z[d+56>>2]=k;z[d+52>>2]=e;y=h>C(0)?h:C(-h);z[d+120>>2]=y;s=k>C(0)?k:C(-k);z[d+116>>2]=s;z[d+104>>2]=s;s=e>C(0)?e:C(-e);z[d+100>>2]=s;z[d+80>>2]=l;z[d+64>>2]=e;z[d+48>>2]=h;z[d+112>>2]=s;z[d+96>>2]=y;v[d+156>>2]=0;v[d+140>>2]=0;l=C(j+j);o:{if(l>=C(34028234663852886e22)){j=e==C(0)?n:e>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);h=h==C(0)?m:h>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);e=f;if(k==C(0)){break o}e=k>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break o}j=C(n+C(l*e));h=C(m+C(l*h));e=C(f+C(l*k))}z[d+152>>2]=f>e?f:e;z[d+148>>2]=j>2]=f>2]=j>n?n:j;z[d+144>>2]=h>2]=h>m?m:h;v[d+28>>2]=v[q+124>>2];v[d+24>>2]=c;v[d+16>>2]=129868;a=d+32|0;v[d+20>>2]=a;r=LD(v[q+200>>2],v[q+196>>2],v[q+168>>2],a,d+16|0);break d;case 0:f=z[b+112>>2];e=z[b+108>>2];a=v[b+104>>2];b=v[b+100>>2];v[d+44>>2]=0;z[d+40>>2]=e;v[d+32>>2]=b;v[d+36>>2]=a;z[d+48>>2]=f*f;v[d+28>>2]=v[q+124>>2];v[d+24>>2]=c;v[d+16>>2]=129900;a=d+32|0;v[d+20>>2]=a;r=MD(v[q+200>>2],v[q+196>>2],v[q+168>>2],a,d+16|0);break d;case 4:break n;default:break d}}a=ID(d+32|0,b+48|0,b+12|0,b);v[d+28>>2]=v[q+124>>2];v[d+24>>2]=c;v[d+20>>2]=a;v[d+16>>2]=129804;r=JD(v[q+200>>2],v[q+196>>2],v[q+168>>2],a,d+16|0)}xa=d+224|0}xa=i+208|0;return r|0}function Bv(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=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0;h=0;i=xa-672|0;xa=i;o=v[f>>2];f=v[b+40>>2];I=v[b+12>>2];T=v[b+8>>2];J=z[b+4>>2];v[i+668>>2]=0;v[i+660>>2]=T;v[i+664>>2]=I;z[i+656>>2]=J;z[i+640>>2]=z[e>>2];D=z[a+8>>2];O=z[a+4>>2];z[i+624>>2]=O;q=z[c+20>>2];s=z[c+24>>2];r=z[c>>2];k=z[c+4>>2];p=z[c+8>>2];u=z[c+12>>2];E=z[c+16>>2];v[i+620>>2]=0;z[i+616>>2]=s;z[i+612>>2]=q;z[i+608>>2]=E;z[i+604>>2]=u;z[i+600>>2]=p;z[i+596>>2]=k;z[i+592>>2]=r;A=z[d+20>>2];x=z[d+24>>2];m=z[d>>2];n=z[d+4>>2];l=z[d+8>>2];j=z[d+12>>2];y=z[d+16>>2];v[i+588>>2]=0;z[i+584>>2]=x;z[i+580>>2]=A;z[i+576>>2]=y;z[i+572>>2]=j;z[i+568>>2]=l;z[i+564>>2]=n;z[i+560>>2]=m;v[i+556>>2]=0;v[i+540>>2]=0;v[i+524>>2]=0;P=C(-m);y=C(E-y);F=C(q-A);x=C(s-x);G=C(C(C(P*y)-C(F*n))-C(l*x));L=C(C(j*j)+C(-.5));q=C(C(C(j*C(C(n*y)-C(m*F)))+C(L*x))-C(l*G));M=C(q+q);z[i+552>>2]=M;q=C(C(C(L*F)+C(j*C(C(m*x)-C(l*y))))-C(n*G));N=C(q+q);z[i+548>>2]=N;E=C(C(C(k*l)-C(n*p))+C(C(r*j)-C(u*m)));A=C(E+E);s=C(C(C(p*m)-C(l*r))+C(C(k*j)-C(u*n)));H=C(s+s);Q=C(C(1)-C(E*A));R=C(s*H);z[i+536>>2]=Q-R;q=C(C(C(r*n)-C(m*k))+C(C(p*j)-C(u*l)));S=C(q*H);r=C(C(u*j)-C(C(C(P*r)-C(k*n))-C(l*p)));k=C(r*A);z[i+532>>2]=S-k;z[i+520>>2]=S+k;k=C(q+q);p=C(q*k);z[i+516>>2]=Q-p;v[i+508>>2]=0;j=C(C(C(L*y)+C(j*C(C(l*F)-C(n*x))))-C(m*G));m=C(j+j);z[i+544>>2]=m;j=C(q*A);n=C(r*H);z[i+528>>2]=j+n;l=C(s*A);k=C(r*k);z[i+512>>2]=l-k;z[i+504>>2]=j-n;z[i+500>>2]=l+k;z[i+496>>2]=C(C(1)-R)-p;j=C(O*C(.05000000074505806));n=z[e+8>>2];l=C(n*C(.05000000074505806));k=C(J*z[f+52>>2]);p=C(z[f+56>>2]*z[i+660>>2]);k=k<=p?k:p;p=C(z[f+60>>2]*z[i+664>>2]);k=C((k<=p?k:p)*C(.25));l=k>l?l:k;l=j>2];c=c-1|0;d=e+B(c,48)|0;k=z[d+24>>2];y=z[d+40>>2];j=z[d+8>>2];p=z[d>>2];u=z[d+4>>2];F=C(z[i+552>>2]+C(C(z[i+536>>2]*j)+C(C(z[i+504>>2]*p)+C(u*z[i+520>>2]))));x=C(z[i+544>>2]+C(C(z[i+528>>2]*j)+C(C(z[i+496>>2]*p)+C(u*z[i+512>>2]))));G=z[d+16>>2];H=z[d+32>>2];p=C(z[i+548>>2]+C(C(z[i+532>>2]*j)+C(C(z[i+500>>2]*p)+C(u*z[i+516>>2]))));u=z[d+20>>2];J=z[d+36>>2];j=C(C(y*C(F-k))+C(C(C(x-G)*H)+C(C(p-u)*J)));k=C(k-C(F-C(y*j)));y=C(k*k);k=C(G-C(x-C(H*j)));x=C(k*k);k=C(u-C(p-C(J*j)));a:{if(A>2];v[d>>2]=v[e>>2];v[d+4>>2]=h;h=v[e+44>>2];v[d+40>>2]=v[e+40>>2];v[d+44>>2]=h;h=v[e+36>>2];v[d+32>>2]=v[e+32>>2];v[d+36>>2]=h;h=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=h;h=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=h;h=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=h;break a}z[d+44>>2]=j}if(c){continue}break}h=w[o+64|0]}b:{c:{d:{e:{if((a|0)!=(h|0)){break e}c=a<<2;j=C(m-z[o+16>>2]);j=j>C(0)?j:C(-j);k=C(N-z[o+20>>2]);k=k>C(0)?k:C(-k);k=j>=k?j:k;p=j;j=C(M-z[o+24>>2]);j=(j>C(0)?j:C(-j))>=C(0)?p:C(0);if(C(l*z[c+103172>>2])<(j<=k?k:j)){break e}if(!(z[c+103204>>2]>C(C(r*z[o+12>>2])+C(C(q*z[o+8>>2])+C(C(E*z[o>>2])+C(s*z[o+4>>2])))))){break d}}d=0;f:{if(z[b+4>>2]!=C(1)){break f}d=0;if(z[b+8>>2]!=C(1)){break f}d=z[b+12>>2]==C(1)}v[o+28>>2]=0;z[o+24>>2]=M;z[o+20>>2]=N;z[o+16>>2]=m;z[o+12>>2]=r;z[o+8>>2]=q;z[o+4>>2]=s;z[o>>2]=E;c=v[b+16>>2];e=v[b+20>>2];I=v[b+28>>2];v[i+488>>2]=v[b+24>>2];v[i+492>>2]=I;v[i+480>>2]=c;v[i+484>>2]=e;j=z[f+32>>2];b=f;c=v[b+28>>2];e=v[b+24>>2];t[i+352|0]=0;v[i+348>>2]=0;v[i+464>>2]=b;v[i+332>>2]=0;z[i+328>>2]=j;v[i+320>>2]=e;v[i+324>>2]=c;v[i+472>>2]=v[b+40>>2]+B(w[b+39|0],20);t[i+476|0]=w[b+38|0];j=C(z[b+52>>2]*z[i+656>>2]);m=C(z[b+56>>2]*z[i+660>>2]);j=j<=m?j:m;m=C(z[b+60>>2]*z[i+664>>2]);j=j<=m?j:m;z[i+344>>2]=j*C(.02500000037252903);z[i+340>>2]=j*C(.05000000074505806);z[i+336>>2]=j*C(.10000000149011612);GV(i+656|0,i+480|0,i+368|0,i+416|0,i+320|0,d);v[i+468>>2]=v[b+44>>2];v[i+252>>2]=4;b=v[i+552>>2];c=v[i+556>>2];e=v[i+636>>2];v[i+312>>2]=v[i+632>>2];v[i+316>>2]=e;e=v[i+544>>2];f=v[i+548>>2];I=v[i+628>>2];v[i+304>>2]=v[i+624>>2];v[i+308>>2]=I;v[i+224>>2]=e;v[i+228>>2]=f;v[i+232>>2]=b;v[i+236>>2]=c;k=z[i+528>>2];p=z[i+496>>2];u=z[i+512>>2];s=z[i+532>>2];E=z[i+500>>2];A=z[i+516>>2];y=z[i+536>>2];F=z[i+504>>2];x=z[i+520>>2];m=z[i+544>>2];q=z[i+548>>2];r=z[i+552>>2];v[i+300>>2]=0;v[i+284>>2]=0;j=C(D*C(0));G=C(C(y*j)+C(C(F*D)+C(j*x)));z[i+296>>2]=r-G;H=C(C(s*j)+C(C(E*D)+C(j*A)));z[i+292>>2]=q-H;z[i+280>>2]=G+r;z[i+276>>2]=H+q;j=C(C(k*j)+C(C(p*D)+C(j*u)));z[i+288>>2]=m-j;z[i+272>>2]=j+m;j=z[i+304>>2];t[i+256|0]=1;z[i+248>>2]=j;z[i+244>>2]=j;z[i+240>>2]=j;v[i+184>>2]=0;v[i+188>>2]=0;v[i+176>>2]=0;v[i+180>>2]=0;v[i+168>>2]=0;v[i+172>>2]=0;v[i+160>>2]=0;v[i+164>>2]=0;v[i+152>>2]=0;v[i+156>>2]=0;v[i+144>>2]=0;v[i+148>>2]=0;v[i+208>>2]=0;v[i+136>>2]=141148;v[i+140>>2]=i+224;v[i+124>>2]=0;z[i+120>>2]=z[i+232>>2]-z[i+328>>2];z[i+116>>2]=z[i+228>>2]-z[i+324>>2];z[i+112>>2]=z[i+224>>2]-z[i+320>>2];c=0;g:{h:{i:{if(d){v[i+96>>2]=144404;v[i+100>>2]=i+320;b=x1(i+136|0,i+96|0,i+112|0,i+640|0,o+67|0,o+71|0,o+66|0,i+144|0);break i}v[i+96>>2]=141216;v[i+100>>2]=i+320;b=IX(i+136|0,i+96|0,i+112|0,i+640|0,1,o+67|0,o+71|0,o+66|0,i+144|0)}switch(b|0){case 4:break h;case 0:break b;default:break g}}c=y1(i+224|0,i+320|0,i+496|0,i+592|0,i+560|0,g,g,d,o,i+176|0,i+160|0,z[i+336>>2],i+640|0,1,n);break b}z[i+96>>2]=l*C(.05000000074505806);j:{k:{if((b|0)!=2){c=1;l:{if(d){v[i+80>>2]=144404;v[i+84>>2]=i+320;b=w[o+66|0];z[i+48>>2]=n;e=v[i+60>>2];v[i+8>>2]=v[i+56>>2];v[i+12>>2]=e;e=v[i+52>>2];v[i>>2]=v[i+48>>2];v[i+4>>2]=e;b=K_(i+136|0,i+80|0,o+67|0,o+71|0,b,1,i,i+144|0);break l}v[i+80>>2]=141216;v[i+84>>2]=i+320;b=w[o+66|0];z[i+32>>2]=n;e=v[i+44>>2];v[i+24>>2]=v[i+40>>2];v[i+28>>2]=e;e=v[i+36>>2];v[i+16>>2]=v[i+32>>2];v[i+20>>2]=e;b=K_(i+136|0,i+80|0,o+67|0,o+71|0,b,1,i+16|0,i+144|0)}if((b|0)!=5){break k}}v[i+92>>2]=0;j=C(z[i+152>>2]-r);l=C(z[i+144>>2]-m);m=C(z[i+148>>2]-q);z[i+84>>2]=C(x*j)+C(C(u*l)+C(m*A));z[i+80>>2]=C(F*j)+C(C(p*l)+C(m*E));z[i+88>>2]=C(y*j)+C(C(k*l)+C(m*s));z[i+76>>2]=z[i+208>>2];z[i+72>>2]=z[i+184>>2];b=v[i+180>>2];v[i+64>>2]=v[i+176>>2];v[i+68>>2]=b;b=v[i+84>>2];v[g>>2]=v[i+80>>2];v[g+4>>2]=b;b=v[i+92>>2];v[g+8>>2]=v[i+88>>2];v[g+12>>2]=b;b=v[i+172>>2];v[g+24>>2]=v[i+168>>2];v[g+28>>2]=b;b=v[i+164>>2];v[g+16>>2]=v[i+160>>2];v[g+20>>2]=b;b=v[i+76>>2];v[g+40>>2]=v[i+72>>2];v[g+44>>2]=b;b=v[i+68>>2];v[g+32>>2]=v[i+64>>2];v[g+36>>2]=b;w2(o,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=y1(i+224|0,i+320|0,i+496|0,i+592|0,i+560|0,g,g,d,o,i+176|0,i+160|0,z[i+336>>2],i+640|0,c,n);break b}v[i+92>>2]=0;j=z[i+572>>2];n=C(C(j*j)+C(-.5));l=z[i+568>>2];m=z[i+184>>2];q=z[i+560>>2];r=z[i+176>>2];k=z[i+564>>2];p=z[i+180>>2];u=C(C(l*m)+C(C(q*r)+C(k*p)));s=C(C(C(j*C(C(q*p)-C(r*k)))+C(n*m))+C(l*u));z[i+88>>2]=s+s;s=C(C(k*u)+C(C(n*p)+C(j*C(C(l*r)-C(m*q)))));z[i+84>>2]=s+s;j=C(C(q*u)+C(C(r*n)+C(j*C(C(k*m)-C(p*l)))));z[i+80>>2]=j+j;a=i+80|0;s2(o,g,a,a,i+592|0,i+624|0,i+640|0);break c}if(!a){c=0;break b}c=1;b=v[o+76>>2];m=z[b+32>>2];j=m;q=z[b+36>>2];n=q;r=z[b+40>>2];l=r;m:{if((a|0)==1){break m}d=a-1|0;e=d&1;l=r;n=q;j=m;if((a|0)!=2){f=d&-2;d=0;while(1){a=b+B(c,48)|0;j=C(C(j+z[a+32>>2])+z[a+80>>2]);l=C(C(l+z[a+40>>2])+z[a+88>>2]);n=C(C(n+z[a+36>>2])+z[a+84>>2]);c=c+2|0;d=d+2|0;if((f|0)!=(d|0)){continue}break}}if(!e){break m}a=b+B(c,48)|0;j=C(j+z[a+32>>2]);l=C(l+z[a+40>>2]);n=C(n+z[a+36>>2])}v[i+332>>2]=0;k=z[i+568>>2];a=C(C(l*l)+C(C(j*j)+C(n*n)))>C(1.1920928955078125e-7);l=a?l:r;r=z[i+560>>2];m=a?j:m;p=z[i+564>>2];n=a?n:q;q=C(C(k*l)+C(C(r*m)+C(p*n)));j=z[i+572>>2];u=C(C(j*j)+C(-.5));s=C(C(k*q)+C(C(j*C(C(r*n)-C(m*p)))+C(l*u)));s=C(s+s);D=C(C(r*q)+C(C(j*C(C(p*l)-C(n*k)))+C(m*u)));D=C(D+D);j=C(C(p*q)+C(C(j*C(C(k*m)-C(l*r)))+C(n*u)));n=C(j+j);j=C(C(1)/C(K(C(C(s*s)+C(C(D*D)+C(n*n))))));z[i+328>>2]=s*j;z[i+324>>2]=n*j;z[i+320>>2]=D*j;a=i+320|0;s2(o,g,a,a,i+592|0,i+624|0,i+640|0)}c=1}xa=i+672|0;return c|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=0,oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=0,ta=0,ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0;d=xa-160|0;xa=d;a:{if(w[a+488|0]){b9(v[37696],8,12959,1569,76702,0);break a}Ea=v[a+448>>2];K=v[c+52>>2];v[d+152>>2]=0;v[d+144>>2]=0;v[d+148>>2]=0;v[d+136>>2]=0;v[d+140>>2]=0;v[d+128>>2]=0;v[d+132>>2]=0;v[d+120>>2]=0;v[d+124>>2]=0;v[d+112>>2]=0;v[d+116>>2]=0;j=d+112|0;ta=Cx(K,Ea,j);v[d+136>>2]=v[c+12>>2];v[d+144>>2]=v[c+24>>2];na=a+112|0;wx(na,j);rx(na);sx(na,b,j);Ex(a,na);tx(na,j);Fx(na,j);Ia=v[d+120>>2];A=v[d+116>>2];if(!(t[v[a+476>>2]]&1)){j=v[d+124>>2];b=v[a+348>>2];e=z[b+32>>2];m=z[b+20>>2];n=z[b+28>>2];D=z[b+16>>2];h=z[b+8>>2];p=z[b+4>>2];k=z[b+24>>2];s=z[b+12>>2];l=z[b>>2];V=C(1);L=C(1);r=C(1);i=C(1);q=z[b+80>>2];W=z[b+84>>2];E=z[b+100>>2];F=z[b+96>>2];ua=z[b+88>>2];M=C(C(W*E)-C(F*ua));da=z[b+72>>2];va=z[b+104>>2];ea=z[b+92>>2];N=C(C(ua*va)-C(E*ea));fa=z[b+76>>2];O=C(va*W);P=C(C(q*M)+C(C(da*N)+C(fa*C(C(ea*F)-O))));if(P!=C(0)){g=C(C(1)/P);i=C(C(C(da*ua)+C(fa*C(-W)))*g);r=C(C(C(da*va)-C(F*q))*g);Q=C(C(C(fa*ea)-C(ua*q))*g);L=C(N*g);o=C(g*C(-C(C(da*E)-C(F*fa))));u=C(g*C(-C(C(da*ea)-C(W*q))));f=C(g*C(-C(O+C(F*C(-ea)))));R=C(g*C(-C(C(fa*va)-C(q*E))));g=C(M*g)}M=C(0);N=C(0);O=C(1);P=C(0);oa=C(1);G=z[b+44>>2];I=C(-s);ga=C(C(C(f*I)-C(l*L))-C(k*g));ha=C(C(C(r*I)-C(l*R))-C(k*o));I=C(C(C(u*I)-C(l*Q))-C(k*i));x=C(G+C(C(C(h*ga)+C(m*ha))+C(e*I)));J=C(-D);ia=C(C(C(f*J)-C(p*L))-C(n*g));ja=C(C(C(r*J)-C(p*R))-C(n*o));qa=C(C(C(u*J)-C(p*Q))-C(n*i));ka=z[b+48>>2];X=C(C(C(C(l*ia)+C(s*ja))+C(k*qa))+ka);S=f;f=C(-m);L=C(C(C(S*f)-C(h*L))-C(e*g));R=C(C(C(r*f)-C(h*R))-C(e*o));Q=C(C(C(u*f)-C(h*Q))-C(e*i));la=z[b- -64>>2];Y=C(C(C(C(p*L)+C(D*R))+C(n*Q))+la);r=z[b+60>>2];g=C(C(C(C(l*L)+C(s*R))+C(k*Q))+r);ma=z[b+52>>2];Z=C(C(C(C(p*ia)+C(D*ja))+C(n*qa))+ma);wa=C(C(X*Y)-C(g*Z));u=z[b+36>>2];o=C(u+C(C(C(l*ga)+C(s*ha))+C(k*I)));_=z[b+68>>2];pa=C(C(C(C(h*L)+C(m*R))+C(e*Q))+_);$=z[b+56>>2];f=C(C(C(C(h*ia)+C(m*ja))+C(e*qa))+$);aa=C(C(Z*pa)-C(Y*f));ba=z[b+40>>2];T=C(ba+C(C(C(p*ga)+C(D*ha))+C(n*I)));ca=C(pa*X);i=C(C(x*wa)+C(C(o*aa)+C(T*C(C(f*g)-ca))));if(i!=C(0)){i=C(C(1)/i);oa=C(C(C(o*Z)+C(T*C(-X)))*i);O=C(C(C(o*pa)-C(g*x))*i);M=C(C(C(T*f)-C(Z*x))*i);ya=C(i*C(-C(C(o*Y)-C(g*T))));P=C(i*C(-C(C(o*f)-C(X*x))));N=C(i*C(-C(ca+C(g*C(-f)))));za=C(wa*i);Aa=C(i*C(-C(C(T*pa)-C(x*Y))));V=C(aa*i)}pa=C(0);wa=C(1);g=C(1);o=C(0);i=C(0);x=C(0);T=C(1);X=C(0);f=C(0);Y=C(0);Z=C(1);aa=C(C(ka*la)-C(r*ma));ca=C(C(ma*_)-C(la*$));ra=C(_*ka);S=C(C(G*aa)+C(C(u*ca)+C(ba*C(C($*r)-ra))));if(S!=C(0)){f=C(C(1)/S);Z=C(C(C(u*ma)+C(ba*C(-ka)))*f);T=C(C(C(u*_)-C(r*G))*f);i=C(C(C(ba*$)-C(ma*G))*f);g=C(ca*f);Y=C(f*C(-C(C(u*la)-C(r*ba))));X=C(f*C(-C(C(u*$)-C(ka*G))));x=C(f*C(-C(ra+C(r*C(-$)))));o=C(f*C(-C(C(ba*_)-C(G*la))));f=C(aa*f)}r=C(0);u=C(0);$=C(1);ba=C(0);ka=C(0);la=C(0);ma=C(1);S=q;q=C(-p);_=C(C(C(x*q)-C(l*g))-C(h*f));aa=C(C(C(T*q)-C(l*o))-C(h*Y));ca=C(C(C(X*q)-C(l*i))-C(h*Z));q=C(S+C(C(C(k*_)+C(n*aa))+C(e*ca)));S=W;W=C(C(C(x*J)-C(s*g))-C(m*f));ra=C(C(C(T*J)-C(s*o))-C(m*Y));J=C(C(C(X*J)-C(s*i))-C(m*Z));G=C(S+C(C(C(l*W)+C(p*ra))+C(h*J)));S=E;E=C(-n);f=C(C(C(x*E)-C(k*g))-C(e*f));x=C(C(C(T*E)-C(k*o))-C(e*Y));E=C(C(C(X*E)-C(k*i))-C(e*Z));g=C(S+C(C(C(s*f)+C(D*x))+C(m*E)));i=C(F+C(C(C(l*f)+C(p*x))+C(h*E)));o=C(ua+C(C(C(s*W)+C(D*ra))+C(m*J)));F=C(C(G*g)-C(i*o));h=C(da+C(C(C(l*_)+C(p*aa))+C(h*ca)));p=C(va+C(C(C(k*f)+C(n*x))+C(e*E)));k=C(ea+C(C(C(k*W)+C(n*ra))+C(e*J)));n=C(C(o*p)-C(g*k));l=C(fa+C(C(C(s*_)+C(D*aa))+C(m*ca)));m=C(p*G);e=C(C(q*F)+C(C(h*n)+C(l*C(C(k*i)-m))));if(e!=C(0)){e=C(C(1)/e);ma=C(C(C(h*o)+C(l*C(-G)))*e);$=C(C(C(h*p)-C(i*q))*e);wa=C(n*e);la=C(e*C(-C(C(h*g)-C(i*l))));ba=C(e*C(-C(C(h*k)-C(G*q))));pa=C(e*C(-C(C(l*p)-C(q*g))));ka=C(F*e);u=C(e*C(-C(m+C(i*C(-k)))));r=C(C(C(l*k)-C(o*q))*e)}z[d+72>>2]=V;z[d+36>>2]=wa;z[d+104>>2]=oa;z[d+100>>2]=ya;z[d+96>>2]=za;z[d+92>>2]=P;z[d+88>>2]=O;z[d+84>>2]=N;z[d+80>>2]=M;z[d+76>>2]=Aa;z[d+68>>2]=ma;b=d- -64|0;z[b>>2]=la;z[d+60>>2]=ka;z[d+56>>2]=ba;z[d+52>>2]=$;z[d+48>>2]=u;z[d+44>>2]=r;z[d+40>>2]=pa;z[d+32>>2]=C(C(I*za)+C(qa*ya))+C(Q*oa);z[d+28>>2]=C(C(ha*za)+C(ja*ya))+C(R*oa);z[d+24>>2]=C(C(ga*za)+C(ia*ya))+C(L*oa);z[d+20>>2]=C(C(I*N)+C(qa*O))+C(Q*P);z[d+16>>2]=C(C(ha*N)+C(ja*O))+C(R*P);z[d+12>>2]=C(C(ga*N)+C(ia*O))+C(L*P);z[d+8>>2]=C(C(I*V)+C(qa*Aa))+C(Q*M);z[d+4>>2]=C(C(ha*V)+C(ja*Aa))+C(R*M);z[d>>2]=C(C(ga*V)+C(ia*Aa))+C(L*M);e=z[j+24>>2];h=z[j+20>>2];V=z[d+60>>2];q=z[d+48>>2];F=z[b>>2];da=z[d+40>>2];ea=z[d+52>>2];fa=z[d+68>>2];M=z[d+44>>2];N=z[d+56>>2];O=z[d+96>>2];P=z[d+84>>2];p=z[d+20>>2];s=z[d+16>>2];oa=z[d+100>>2];G=z[d+76>>2];ga=z[d+88>>2];i=z[d+32>>2];k=z[j+16>>2];g=z[d+28>>2];ha=z[d+104>>2];l=z[j+8>>2];I=z[d+80>>2];m=z[j>>2];J=z[d+92>>2];n=z[j+4>>2];ia=z[d+36>>2];o=z[d+8>>2];f=z[d>>2];D=z[d+4>>2];ja=z[d+72>>2];r=z[d+12>>2];u=z[d+24>>2];v[A+28>>2]=0;v[A+12>>2]=0;z[A+24>>2]=-C(C(C(i*e)+C(C(u*k)+C(g*h)))+C(C(C(m*I)+C(n*J))+C(l*ha)));z[A+20>>2]=-C(C(C(p*e)+C(C(r*k)+C(s*h)))+C(C(C(m*G)+C(n*ga))+C(l*oa)));z[A+16>>2]=-C(C(C(o*e)+C(C(f*k)+C(D*h)))+C(C(C(m*ja)+C(n*P))+C(l*O)));z[A+8>>2]=-C(C(C(C(m*o)+C(n*p))+C(l*i))+C(C(C(k*M)+C(h*N))+C(e*fa)));z[A+4>>2]=-C(C(C(C(m*D)+C(n*s))+C(l*g))+C(C(C(k*da)+C(h*ea))+C(e*F)));z[A>>2]=-C(C(C(C(m*f)+C(n*r))+C(l*u))+C(C(C(k*ia)+C(h*q))+C(e*V)))}if(Ea>>>0>=2){Ja=v[c+16>>2];H=1;while(1){j=v[na+340>>2]+B(H,160)|0;e=z[j+124>>2];Fa=H<<5;b=A+(v[(Fa+v[a+444>>2]|0)+24>>2]<<5)|0;s=z[b>>2];h=z[j+120>>2];i=z[b+4>>2];o=C(C(C(e*s)-C(h*i))+z[b+24>>2]);g=z[b+8>>2];f=C(h*g);h=z[j+128>>2];f=C(C(f-C(h*s))+z[b+20>>2]);D=C(C(C(h*i)-C(e*g))+z[b+16>>2]);b:{c:{b=v[a+456>>2]+B(H,80)|0;U=w[b+76|0];if(U){Ga=(v[b+72>>2]<<2)+Ja|0;b=0;while(1){c=b<<2;sa=c+d|0;q=z[(c+j|0)+132>>2];c=j+(b<<5)|0;z[sa>>2]=q-C(C(C(z[c+24>>2]*g)+C(C(z[c+16>>2]*s)+C(i*z[c+20>>2])))+C(C(z[c+8>>2]*o)+C(C(z[c>>2]*D)+C(f*z[c+4>>2]))));b=b+1|0;if((U|0)!=(b|0)){continue}break}Ka=U&254;La=U&1;b=v[a+360>>2]+B(H,36)|0;sa=0;while(1){Ca=sa<<2;Da=Ga+Ca|0;v[Da>>2]=0;e=C(0);c=0;j=0;if((U|0)!=1){while(1){e=C(C(z[(b+B(c,12)|0)+Ca>>2]*z[(c<<2)+d>>2])+e);z[Da>>2]=e;Ha=c|1;e=C(C(z[(b+B(Ha,12)|0)+Ca>>2]*z[(Ha<<2)+d>>2])+e);z[Da>>2]=e;c=c+2|0;j=j+2|0;if((Ka|0)!=(j|0)){continue}break}}if(La){z[Da>>2]=C(z[(b+B(c,12)|0)+Ca>>2]*z[(c<<2)+d>>2])+e}sa=sa+1|0;if((U|0)!=(sa|0)){continue}break}if(U){break c}}h=C(0);k=C(0);l=C(0);m=C(0);n=C(0);p=C(0);break b}j=v[a+384>>2]+B(H,76)|0;p=C(0);b=0;n=C(0);m=C(0);l=C(0);k=C(0);h=C(0);while(1){e=z[(b<<2)+Ga>>2];c=j+B(b,24)|0;m=C(m+C(e*z[c+12>>2]));l=C(l+C(e*z[c+8>>2]));k=C(k+C(e*z[c+4>>2]));h=C(h+C(e*z[c>>2]));p=C(p+C(e*z[c+20>>2]));n=C(n+C(e*z[c+16>>2]));b=b+1|0;if((U|0)!=(b|0)){continue}break}}b=Fa+Ia|0;e=z[b+20>>2];r=z[b+24>>2];u=z[b>>2];V=z[b+4>>2];q=z[b+8>>2];F=z[b+16>>2];b=A+Fa|0;v[b+28>>2]=0;v[b+12>>2]=0;z[b+16>>2]=m+C(D+F);z[b+8>>2]=l+C(g+q);z[b+4>>2]=k+C(i+V);z[b>>2]=h+C(s+u);z[b+24>>2]=p+C(o+r);z[b+20>>2]=n+C(f+e);H=H+1|0;if((Ea|0)!=(H|0)){continue}break}}a=v[K+16>>2];if(!(a>>>0<=ta>>>0&a+v[K+20>>2]>>>0>ta>>>0)){if(!ta){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,ta);break a}U=v[K+4>>2];a=0;H=v[K+8>>2];j=H;while(1){A=a;a=a+1|0;b=j;j=b-1|0;c=U+(j<<2)|0;if(y[c>>2]>>0){continue}break}d:{if(b>>>0>=H>>>0){break d}j=A&3;if(j){a=0;while(1){v[c>>2]=v[v[K+4>>2]+(b<<2)>>2];b=b+1|0;c=c+4|0;a=a+1|0;if((j|0)!=(a|0)){continue}break}}if(A-1>>>0<3){break d}while(1){a=b<<2;v[c>>2]=v[a+v[K+4>>2]>>2];v[c+4>>2]=v[(a+v[K+4>>2]|0)+4>>2];v[c+8>>2]=v[(a+v[K+4>>2]|0)+8>>2];v[c+12>>2]=v[(a+v[K+4>>2]|0)+12>>2];c=c+16|0;b=b+4|0;if((H|0)!=(b|0)){continue}break}}v[K+8>>2]=H-1}xa=d+160|0}function aY(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=0,B=C(0),D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0);l=xa-288|0;xa=l;k=xa-272|0;xa=k;v[k+264>>2]=0;v[k+268>>2]=0;v[k+256>>2]=0;v[k+260>>2]=0;X=z[d+8>>2];_=z[d+4>>2];$=z[d>>2];aa=z[e+8>>2];ba=z[e+4>>2];ca=z[e>>2];v[k+240>>2]=1;A=v[b+4>>2];P=z[A+52>>2];n=v[a+8>>2];Q=z[n+52>>2];R=z[n+36>>2];T=z[n+20>>2];U=z[A+56>>2];B=z[n+56>>2];G=z[n+40>>2];x=v[a+4>>2];I=z[x+56>>2];J=z[a+56>>2];o=z[a+24>>2];L=z[a+40>>2];S=z[a+48>>2];u=z[a+32>>2];s=z[n+24>>2];V=z[x+52>>2];q=z[a+52>>2];W=z[a+20>>2];y=z[a+36>>2];Y=z[A+48>>2];m=z[n+48>>2];D=z[n+32>>2];da=z[n>>2];ea=z[n+16>>2];E=z[n+4>>2];r=z[n+8>>2];Z=z[x+48>>2];p=z[a+16>>2];H=z[c+8>>2];M=z[c>>2];N=z[c+4>>2];v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;v[k+208>>2]=0;v[k+212>>2]=0;v[k+216>>2]=0;v[k+220>>2]=0;v[k+224>>2]=0;v[k+228>>2]=0;v[k+232>>2]=0;v[k+236>>2]=0;v[k+188>>2]=0;v[k+192>>2]=0;ga=B;ha=G;ia=I;ja=C(-I);ka=o;n=C(C(H*H)+C(C(M*M)+C(N*N)))>C(1.1920928955078125e-7);o=n?M:C(1);M=n?H:C(0);I=n?N:C(0);B=C(C(1)/C(K(C(C(M*M)+C(C(o*o)+C(I*I))))));o=C(o*B);G=C(-o);I=C(I*B);H=J;J=C(M*B);L=C(C(C(ka*G)-C(L*I))-C(H*J))>C(0)?ia:ja;u=C(C(C(p*G)-C(u*I))-C(S*J))>C(0)?Z:C(-Z);p=C(C(C(W*G)-C(y*I))-C(q*J))>C(0)?V:C(-V);W=C(ga+C(C(ha*L)+C(C(r*u)+C(s*p))));y=J>C(0)?U:C(-U);s=C(W-y);z[k+184>>2]=s;E=C(Q+C(C(R*L)+C(C(E*u)+C(p*T))));r=I>C(0)?P:C(-P);q=C(E-r);z[k+180>>2]=q;p=C(m+C(C(D*L)+C(C(da*u)+C(p*ea))));o=o>C(0)?Y:C(-Y);m=C(p-o);z[k+176>>2]=m;v[k+132>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+160>>2]=0;v[k+164>>2]=0;v[k+168>>2]=0;v[k+172>>2]=0;v[k+124>>2]=0;v[k+128>>2]=0;z[k+120>>2]=W;z[k+116>>2]=E;z[k+112>>2]=p;v[k+68>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+96>>2]=0;v[k+100>>2]=0;v[k+104>>2]=0;v[k+108>>2]=0;v[k+60>>2]=0;v[k+64>>2]=0;z[k+56>>2]=y;z[k+52>>2]=r;z[k+48>>2]=o;y=C(-s);E=C(-q);o=C(-m);D=C(C(s*s)+C(C(m*m)+C(q*q)));r=z[A+24>>2];p=z[x+24>>2];p=C((p>r?r:p)*C(.10000000149011612));M=C(p*p);a:{b:{if(!(D>M)){r=o;p=E;i=y;G=C(0);da=m;ea=q;W=s;break b}Y=C(p+i);I=C(Y*Y);J=C(C(ca*C(0))+$);L=C(C(ba*C(0))+_);S=C(C(aa*C(0))+X);G=C(0);i=y;p=E;r=o;while(1){da=m;ea=q;W=s;q=C(C(1)/C(K(C(C(y*y)+C(C(o*o)+C(E*E))))));N=C(o*q);x=v[a+8>>2];n=v[a+4>>2];m=z[n+56>>2];B=C(y*q);P=C(E*q);u=C(C(z[a+56>>2]*B)+C(C(N*z[a+24>>2])+C(P*z[a+40>>2])))>C(0)?m:C(-m);m=z[n+48>>2];s=C(C(z[a+48>>2]*B)+C(C(N*z[a+16>>2])+C(P*z[a+32>>2])))>C(0)?m:C(-m);m=z[n+52>>2];q=C(C(z[a+52>>2]*B)+C(C(N*z[a+20>>2])+C(P*z[a+36>>2])))>C(0)?m:C(-m);Z=C(z[x+48>>2]+C(C(z[x+32>>2]*u)+C(C(z[x>>2]*s)+C(q*z[x+16>>2]))));n=v[b+4>>2];m=z[n+48>>2];aa=N>2]+C(C(z[x+36>>2]*u)+C(C(z[x+4>>2]*s)+C(q*z[x+20>>2]))));m=z[n+52>>2];ba=P>2]+C(C(z[x+40>>2]*u)+C(C(z[x+8>>2]*s)+C(q*z[x+24>>2]))));m=z[n+56>>2];ca=BC(0)){m=B;B=z[e+8>>2];u=z[e>>2];s=z[e+4>>2];q=C(C(m*B)+C(C(N*u)+C(P*s)));if(q>=C(0)){break a}m=G;G=C(m-C(T/q));if(G>m){if(G>C(1)){break a}r=z[d+8>>2];p=z[d+4>>2];i=z[d>>2];v[k+92>>2]=0;v[k+76>>2]=0;v[k+60>>2]=0;q=C(i+C(u*G));u=C(q-J);Q=C(u+z[k+80>>2]);z[k+80>>2]=Q;m=C(p+C(s*G));p=C(m-L);R=C(p+z[k+84>>2]);z[k+84>>2]=R;D=C(r+C(B*G));i=C(D-S);T=C(i+z[k+88>>2]);z[k+88>>2]=T;B=C(u+z[k+64>>2]);z[k+64>>2]=B;J=C(p+z[k+68>>2]);z[k+68>>2]=J;L=C(i+z[k+72>>2]);z[k+72>>2]=L;S=C(u+z[k+48>>2]);z[k+48>>2]=S;u=C(p+z[k+52>>2]);z[k+52>>2]=u;s=C(i+z[k+56>>2]);z[k+56>>2]=s;r=z[k+112>>2];p=z[k+116>>2];i=z[k+120>>2];v[k+188>>2]=0;z[k+184>>2]=i-s;z[k+180>>2]=p-u;z[k+176>>2]=r-S;r=z[k+128>>2];p=z[k+132>>2];i=z[k+136>>2];v[k+204>>2]=0;z[k+200>>2]=i-L;z[k+196>>2]=p-J;z[k+192>>2]=r-B;r=z[k+144>>2];p=z[k+148>>2];i=z[k+152>>2];v[k+220>>2]=0;z[k+216>>2]=i-T;z[k+212>>2]=p-R;z[k+208>>2]=r-Q;R=C(ca+D);H=C($-R);Q=C(ba+m);V=C(_-Q);X=C(aa+q);U=C(Z-X);r=o;p=E;i=y;J=q;L=m;S=D;D=C(34028234663852886e22)}}u=D;x=v[k+240>>2];n=x<<4;A=n+(k+112|0)|0;v[A+12>>2]=0;z[A+8>>2]=$;z[A+4>>2]=_;z[A>>2]=Z;A=n+(k+48|0)|0;v[A+12>>2]=0;z[A+8>>2]=R;z[A+4>>2]=Q;z[A>>2]=X;n=n+(k+176|0)|0;v[n+12>>2]=0;z[n+8>>2]=H;z[n+4>>2]=V;z[n>>2]=U;v[k+240>>2]=x+1;c:{d:{switch(x-1|0){case 0:D=z[k+184>>2];s=C(z[k+200>>2]-D);y=z[k+176>>2];q=C(z[k+192>>2]-y);E=z[k+180>>2];m=C(z[k+196>>2]-E);o=C(C(s*s)+C(C(q*q)+C(m*m)));if(o<=C(1.1920928955078125e-7)){v[k+240>>2]=1;n=v[k+180>>2];v[k+32>>2]=v[k+176>>2];v[k+36>>2]=n;n=v[k+188>>2];v[k+40>>2]=v[k+184>>2];v[k+44>>2]=n;break c}o=C(F(C(C(C(C(C(-y)*q)-C(m*E))-C(D*s))/o),C(1)));o=o>C(0)?o:C(0);z[k+40>>2]=D+C(s*o);z[k+36>>2]=E+C(m*o);z[k+32>>2]=y+C(q*o);break c;case 1:KV(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break c;case 2:O_(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break c;default:break d}}z[k+40>>2]=H;z[k+36>>2]=V;z[k+32>>2]=U}s=z[k+40>>2];y=C(-s);q=z[k+36>>2];E=C(-q);m=z[k+32>>2];o=C(-m);D=C(C(s*s)+C(C(m*m)+C(q*q)));if(ID){continue}break}O=!(u>D)}A=w[v[a+4>>2]+32|0];H=C(0);u=C(0);d=!(D>M)|O;y=d?i:y;r=d?r:o;o=d?p:E;i=C(K(C(C(y*y)+C(C(r*r)+C(o*o)))));if(!(i<=C(1.1920928955078125e-7))){i=C(C(1)/i);fa=C(y*i);H=C(o*i);u=C(r*i)}v[l+268>>2]=0;z[l+264>>2]=-fa;z[l+260>>2]=-H;z[l+256>>2]=-u;z[l+240>>2]=G;v[l+252>>2]=v[k+252>>2];d=v[k+248>>2];v[l+244>>2]=v[k+244>>2];v[l+248>>2]=d;v[k+44>>2]=0;z[k+40>>2]=O?W:s;z[k+36>>2]=O?ea:q;z[k+32>>2]=O?da:m;x=v[k+268>>2];O=v[k+264>>2];v[k+24>>2]=O;v[k+28>>2]=x;n=v[k+260>>2];d=v[k+256>>2];v[k+16>>2]=d;v[k+20>>2]=n;v[k+8>>2]=O;v[k+12>>2]=x;v[k>>2]=d;v[k+4>>2]=n;JV(k+176|0,k+112|0,k+48|0,k+32|0,k+16|0,k,v[k+240>>2]);r=z[v[a+4>>2]+16>>2];p=z[k+16>>2];o=z[k+20>>2];i=z[k+24>>2];v[l+284>>2]=0;z[l+280>>2]=i+(A?C(fa*r):C(-0));z[l+276>>2]=o+(A?C(H*r):C(-0));z[l+272>>2]=p+(A?C(u*r):C(-0));O=1}xa=k+272|0;if(O){d=v[l+244>>2];v[f>>2]=v[l+240>>2];v[f+4>>2]=d;d=v[l+252>>2];v[f+8>>2]=v[l+248>>2];v[f+12>>2]=d;if(!(!j|z[l+240>>2]!=C(0))){j=v[a+4>>2];n=v[b+4>>2];z[l+224>>2]=C(z[j+16>>2]+z[n+16>>2])*C(100);t[l+215|0]=0;v[l+168>>2]=0;v[l+172>>2]=0;v[l+160>>2]=0;v[l+164>>2]=0;v[l+152>>2]=0;v[l+156>>2]=0;v[l+144>>2]=0;v[l+148>>2]=0;v[l+136>>2]=0;v[l+140>>2]=0;v[l+128>>2]=0;v[l+132>>2]=0;v[l+192>>2]=0;d=v[a+8>>2];v[l+56>>2]=d;v[l+48>>2]=141468;v[l+52>>2]=j;j=v[d+12>>2];v[l+72>>2]=v[d+8>>2];v[l+76>>2]=j;j=v[d+20>>2];v[l+80>>2]=v[d+16>>2];v[l+84>>2]=j;j=v[d+28>>2];v[l+88>>2]=v[d+24>>2];v[l+92>>2]=j;j=v[d+36>>2];v[l+96>>2]=v[d+32>>2];v[l+100>>2]=j;j=v[d+44>>2];v[l+104>>2]=v[d+40>>2];v[l+108>>2]=j;j=v[d+52>>2];v[l+112>>2]=v[d+48>>2];v[l+116>>2]=j;j=v[d+60>>2];v[l+120>>2]=v[d+56>>2];v[l+124>>2]=j;j=v[d+4>>2];v[l+64>>2]=v[d>>2];v[l+68>>2]=j;p=z[l+68>>2];z[l+68>>2]=z[l+80>>2];o=z[l+88>>2];i=z[l+72>>2];z[l+72>>2]=z[l+96>>2];z[l+80>>2]=p;z[l+96>>2]=i;z[l+88>>2]=z[l+100>>2];z[l+100>>2]=o;v[l+40>>2]=141808;v[l+44>>2]=n;e:{f:{if(bY(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 f}v[l+16>>2]=1065353216;c=v[l+28>>2];v[l+8>>2]=v[l+24>>2];v[l+12>>2]=c;c=v[l+20>>2];v[l>>2]=v[l+16>>2];v[l+4>>2]=c;if(K_(a,b,l+220|0,l+216|0,w[l+215|0],0,l,l+128|0)-5>>>0<=1){break f}v[l+280>>2]=0;v[l+284>>2]=0;v[l+272>>2]=0;v[l+276>>2]=0;r=z[e+8>>2];p=z[e>>2];o=z[e+4>>2];v[l+268>>2]=0;i=C(C(1)/C(K(C(C(r*r)+C(C(p*p)+C(o*o))))));z[l+264>>2]=i*C(-r);z[l+260>>2]=i*C(-o);z[l+256>>2]=i*C(-p);i=C(0);break e}a=v[l+140>>2];v[l+280>>2]=v[l+136>>2];v[l+284>>2]=a;a=v[l+132>>2];v[l+272>>2]=v[l+128>>2];v[l+276>>2]=a;a=v[l+164>>2];v[l+256>>2]=v[l+160>>2];v[l+260>>2]=a;a=v[l+172>>2];v[l+264>>2]=v[l+168>>2];v[l+268>>2]=a;i=z[l+192>>2]}z[f>>2]=i>2];v[h>>2]=v[l+272>>2];v[h+4>>2]=a;a=v[l+284>>2];v[h+8>>2]=v[l+280>>2];v[h+12>>2]=a;a=v[l+260>>2];v[g>>2]=v[l+256>>2];v[g+4>>2]=a;a=v[l+268>>2];v[g+8>>2]=v[l+264>>2];v[g+12>>2]=a}xa=l+288|0;return O}function it(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=C(0),h=0,i=0,j=C(0),k=C(0),l=0,m=0,n=C(0),o=C(0),p=0,q=C(0),r=0,s=C(0),y=0,A=0,E=C(0),F=C(0),G=0,H=0,I=0,J=0,K=0,L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0;d=xa-224|0;xa=d;v[d+200>>2]=0;v[d+204>>2]=0;v[d+208>>2]=0;v[d+212>>2]=0;v[d+192>>2]=0;v[d+196>>2]=0;u[d+188>>1]=0;v[d+176>>2]=0;v[d+180>>2]=0;v[d+216>>2]=2139095039;v[d+184>>2]=-1;h=v[c+4>>2];y=v[((v[h+4>>2]>>>22&60)+89188|0)+12>>2]+h|0;K=v[((w[y+9|0]<<2)+149664|0)+40>>2]+y|0;p=v[c>>2];L=v[37419]+(p+16|0)|0;f=w[a+42|0];c=f?2:1;y=c;c=v[a+20>>2];H=u[c+16>>1];y=v[v[a+12>>2]+60>>2]?y:(H|0)>=0?2:y;r=x[a+16>>1];a:{b:{c:{if(f){break c}f=v[a+24>>2];d:{l=v[a+32>>2];if(l){break d}A=v[c+12>>2];m=v[c+8>>2];e=v[c+4>>2];i=v[c>>2];if(!(A|(m|(e|i)))|(A&v[p+28>>2]|(m&v[p+24>>2]|(e&v[p+20>>2]|i&v[p+16>>2])))){break d}a=1;break a}if(!(H&4)|!(f|l)){break c}u[d+80>>1]=r;e:{if(f){y=Ba[v[v[f>>2]>>2]](f,c,L,K,d+80|0)|0;break e}f=v[l+8>>2];if(!f){r=x[d+80>>1]&432|r&-433;break c}v[d+8>>2]=v[c>>2];v[d+12>>2]=v[c+4>>2];v[d+16>>2]=v[c+8>>2];v[d+20>>2]=v[c+12>>2];v[d+144>>2]=v[p+16>>2];v[d+148>>2]=v[p+20>>2];v[d+152>>2]=v[p+24>>2];v[d+156>>2]=v[p+28>>2];y=Ba[f|0](d+8|0,d+144|0,v[l>>2],v[l+4>>2],d+80|0)|0}if(!y){break b}r=x[d+80>>1]&432|r&-433}e=d+144|0;th(e,p,h);f=v[p+4>>2]&1?v[p+8>>2]- -64|0:p+84|0;J=v[a+72>>2];m=v[a+8>>2];I=v[a+4>>2];c=v[a+12>>2];h=v[c+56>>2];l=v[c+64>>2];c=v[c+60>>2];u[d+136>>1]=x[a+36>>1]|r;l=c>>>0>l>>>0?h+B(l,48)|0:d+176|0;F=z[a+28>>2];c=xa-160|0;xa=c;i=w[a+68|0]?a+44|0:0;g=z[i+20>>2];k=z[i+16>>2];h=v[m+16>>2];A=v[m+12>>2];n=z[i+8>>2];s=z[i+4>>2];o=z[i+12>>2];j=z[i>>2];eV(c+136|0,f,e,C(1));E=z[c+148>>2];q=z[c+136>>2];M=C(C(C(C(o-j)*C(.5))+C(C(E-q)*C(.5)))*C(1.0099999904632568));z[c+120>>2]=M;N=z[c+152>>2];O=z[c+140>>2];P=C(C(C(C(k-s)*C(.5))+C(C(N-O)*C(.5)))*C(1.0099999904632568));z[c+124>>2]=P;Q=z[c+156>>2];R=z[c+144>>2];S=C(C(C(C(g-n)*C(.5))+C(C(Q-R)*C(.5)))*C(1.0099999904632568));z[c+128>>2]=S;z[c+88>>2]=-S;z[c+84>>2]=-P;z[c+80>>2]=-M;z[c+40>>2]=C(C(n+g)*C(.5))-C(C(Q+R)*C(.5));z[c+36>>2]=C(C(s+k)*C(.5))-C(C(N+O)*C(.5));z[c+32>>2]=C(C(j+o)*C(.5))-C(C(E+q)*C(.5));k=z[c+32>>2];i=v[m+4>>2];g=z[i>>2];n=C(D(g));n=n>C(9.999999717180685e-10)?n:C(9.999999717180685e-10);n=C(C(1)/(g>=C(0)?n:C(-n)));g=C(C(C(z[c+80>>2]+C(-9999999747378752e-21))-k)*n);k=C(C(C(z[c+120>>2]+C(9999999747378752e-21))-k)*n);o=g>2];n=z[i+4>>2];j=C(D(n));j=j>C(9.999999717180685e-10)?j:C(9.999999717180685e-10);j=C(C(1)/(n>=C(0)?j:C(-j)));n=C(C(C(z[c+84>>2]+C(-9999999747378752e-21))-s)*j);s=C(C(C(z[c+124>>2]+C(9999999747378752e-21))-s)*j);j=n>2];o=z[i+8>>2];q=C(D(o));q=q>C(9.999999717180685e-10)?q:C(9.999999717180685e-10);q=C(C(1)/(o>=C(0)?q:C(-q)));o=C(C(C(z[c+88>>2]+C(-9999999747378752e-21))-j)*q);j=C(C(C(z[c+128>>2]+C(9999999747378752e-21))-j)*q);q=j>o?o:j;E=q>2]=E>C(0)?E:C(0);g=g>k?g:k;k=n>s?n:s;g=g>2]=g;j=g;g=z[c+116>>2];f:{if(!(j>g)&g>z[c+112>>2]){break f}G=g>C(10);g=G?C(g+C(-10)):C(0);i=v[m+4>>2];n=C(0);s=C(0);if(G){s=C(g*z[i+8>>2]);T=C(g*z[i>>2]);n=C(g*z[i+4>>2])}k=z[e+20>>2];o=z[e+24>>2];j=z[e+16>>2];z[c+80>>2]=z[e>>2];z[c+84>>2]=z[e+4>>2];z[c+88>>2]=z[e+8>>2];E=z[e+12>>2];z[c+104>>2]=o-s;z[c+100>>2]=k-n;z[c+96>>2]=j-T;z[c+92>>2]=E;k=z[c+112>>2];F=C((k>2];k=z[m+20>>2];G=0;g:{h:{switch(v[A>>2]+1|0){case 3:I=e+28|0;m=e;e=x[d+136>>1];m=v[(v[f>>2]<<2)+(e&256?I:m)>>2];u[c+16>>1]=e;if(Ba[m|0](f,c+80|0,A,h,J+100|0,i,F,l,c+16|0,k)|0){break g}break f;case 4:m=x[d+136>>1];e=v[(e+(m&256?84:56)|0)+(v[f>>2]<<2)>>2];u[c+8>>1]=m;if(Ba[e|0](f,c+80|0,A,h,J+12|0,i,F,l,c+8|0,k)|0){break g}break f;case 5:e=v[(e+(v[f>>2]<<2)|0)+112>>2];u[c>>1]=x[d+136>>1];if(Ba[e|0](f,c+80|0,A,h,i,F,l,c,k)|0){break g}break f;case 0:case 2:case 6:case 7:case 8:b9(v[37696],4,7394,306,64262,0);break f;case 1:break h;default:break f}}o=z[A+4>>2];v[c+72>>2]=0;z[c+68>>2]=o;v[c+64>>2]=2;j=z[h+16>>2];z[c+32>>2]=j;E=z[h+20>>2];z[c+36>>2]=E;q=z[h+24>>2];z[c+52>>2]=q;z[c+48>>2]=E;z[c+56>>2]=o;z[c+44>>2]=j;z[c+40>>2]=q;A=e+28|0;m=e;e=x[d+136>>1];m=v[(v[f>>2]<<2)+(e&256?A:m)>>2];u[c+24>>1]=e;if(!(Ba[m|0](f,c+80|0,c- -64|0,h,c+32|0,i,F,l,c+24|0,k)|0)){break f}}z[l+40>>2]=g+z[l+40>>2];z[l+16>>2]=T+z[l+16>>2];z[l+20>>2]=n+z[l+20>>2];z[l+24>>2]=s+z[l+24>>2];G=1}xa=c+160|0;i:{if(!G){break i}H=H&8;J=r&512;m=d+8|4;U=1;r=0;while(1){f=l+B(r,48)|0;v[f+4>>2]=L;v[f>>2]=K;if(!(J|z[f+40>>2]!=C(0))){c=v[v[a+8>>2]+4>>2];g=z[c>>2];F=z[c+4>>2];z[f+36>>2]=-z[c+8>>2];z[f+32>>2]=-F;z[f+28>>2]=-g}c=y;j:{if(w[a+42|0]){break j}e=v[a+24>>2];h=v[a+32>>2];c=y;if(!(e|h)){break j}c=y;if(!H){break j}if(e){c=Ba[v[v[e>>2]+4>>2]](e,v[a+20>>2],f)|0;break j}e=v[h+12>>2];c=y;if(!e){break j}c=v[a+20>>2];v[d+120>>2]=v[c>>2];v[d+124>>2]=v[c+4>>2];v[d+128>>2]=v[c+8>>2];v[d+132>>2]=v[c+12>>2];v[d+104>>2]=v[p+16>>2];v[d+108>>2]=v[p+20>>2];v[d+112>>2]=v[p+24>>2];v[d+116>>2]=v[p+28>>2];c=Ba[e|0](d+120|0,d+104|0,v[h>>2],v[h+4>>2],f)|0}if(!(!w[a+41|0]|!c)){c=v[f+4>>2];b=v[a+12>>2];v[b+4>>2]=v[f>>2];v[b+8>>2]=c;v[b+12>>2]=v[f+8>>2];u[b+16>>1]=x[f+12>>1];z[b+20>>2]=z[f+16>>2];z[b+24>>2]=z[f+20>>2];z[b+28>>2]=z[f+24>>2];z[b+32>>2]=z[f+28>>2];z[b+36>>2]=z[f+32>>2];z[b+40>>2]=z[f+36>>2];z[b+44>>2]=z[f+40>>2];v[b+48>>2]=v[(l+B(r,48)|0)+44>>2];t[v[a+12>>2]+52|0]=1;break i}k:{l:{switch((w[a+40|0]?1:c)-1|0){case 0:c=v[a+12>>2];e=v[c+60>>2];if(!(z[f+40>>2]<=z[a+28>>2])|(!e|!w[a+38|0])){break k}h=v[c+64>>2];m:{if((e|0)!=(h|0)){break m}e=v[a+20>>2];v[d+80>>2]=v[e>>2];v[d+84>>2]=v[e+4>>2];v[d+88>>2]=v[e+8>>2];v[d+92>>2]=v[e+12>>2];u[d+96>>1]=x[e+16>>1]|32768;u[d+24>>1]=0;v[d+20>>2]=-1;v[d+12>>2]=0;v[d+16>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+72>>2]=0;v[d+64>>2]=0;v[d+68>>2]=0;t[d+60|0]=0;v[d+52>>2]=2139095039;v[d+8>>2]=114448;n:{if(w[a+39|0]|!v[c+60>>2]){break n}c=v[a+8>>2];e=v[a+4>>2];u[d>>1]=x[a+16>>1];e=ht(e,c,d+8|0,d,0,d+80|0,v[a+24>>2],v[a+32>>2]);c=v[a+12>>2];if(!e){break n}e=v[m+4>>2];v[c+4>>2]=v[m>>2];v[c+8>>2]=e;v[c+12>>2]=v[m+8>>2];u[c+16>>1]=x[d+24>>1];z[c+20>>2]=z[d+28>>2];z[c+24>>2]=z[d+32>>2];z[c+28>>2]=z[d+36>>2];z[c+32>>2]=z[d+40>>2];z[c+36>>2]=z[d+44>>2];z[c+40>>2]=z[d+48>>2];z[c+44>>2]=z[d+52>>2];v[c+48>>2]=v[d+56>>2];c=v[a+12>>2];t[c+52|0]=1;h=0;g=z[d+52>>2];i=v[c+64>>2];o:{if(!i){i=0;break o}A=v[c+56>>2];while(1){c=A+B(h,48)|0;p:{if(z[c+40>>2]>g){i=i-1|0;e=A+B(i,48)|0;I=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=I;v[c+8>>2]=v[e+8>>2];u[c+12>>1]=x[e+12>>1];z[c+16>>2]=z[e+16>>2];z[c+20>>2]=z[e+20>>2];z[c+24>>2]=z[e+24>>2];z[c+28>>2]=z[e+28>>2];z[c+32>>2]=z[e+32>>2];z[c+36>>2]=z[e+36>>2];z[c+40>>2]=z[e+40>>2];v[c+44>>2]=v[e+44>>2];break p}h=h+1|0}if((h|0)!=(i|0)){continue}break}c=v[a+12>>2];g=z[d+52>>2]}v[c+64>>2]=i;z[a+28>>2]=g;z[b>>2]=g}t[a+39|0]=1;h=v[c+64>>2];if((h|0)!=v[c+60>>2]){break m}c=Ba[v[v[c>>2]>>2]](c,v[c+56>>2],h)|0;t[a+38|0]=c;if(!c){break i}h=0;c=v[a+12>>2];v[c+64>>2]=0}v[c+64>>2]=h+1;c=v[c+56>>2]+B(h,48)|0;v[c+8>>2]=v[f+8>>2];e=v[f+4>>2];v[c>>2]=v[f>>2];v[c+4>>2]=e;u[c+12>>1]=x[f+12>>1];z[c+16>>2]=z[f+16>>2];z[c+20>>2]=z[f+20>>2];z[c+24>>2]=z[f+24>>2];z[c+28>>2]=z[f+28>>2];z[c+32>>2]=z[f+32>>2];z[c+36>>2]=z[f+36>>2];z[c+40>>2]=z[f+40>>2];v[c+44>>2]=v[f+44>>2];break k;case 1:break l;default:break k}}g=z[f+40>>2];if(!(g<=z[a+28>>2])){break k}z[a+28>>2]=g;z[b>>2]=g;e=v[f+4>>2];c=v[a+12>>2];v[c+4>>2]=v[f>>2];v[c+8>>2]=e;v[c+12>>2]=v[f+8>>2];u[c+16>>1]=x[f+12>>1];z[c+20>>2]=z[f+16>>2];z[c+24>>2]=z[f+20>>2];z[c+28>>2]=z[f+24>>2];z[c+32>>2]=z[f+28>>2];z[c+36>>2]=z[f+32>>2];z[c+40>>2]=z[f+36>>2];z[c+44>>2]=z[f+40>>2];v[c+48>>2]=v[f+44>>2];t[v[a+12>>2]+52|0]=1}r=r+1|0;U=G>>>0>r>>>0;if((r|0)!=(G|0)){continue}break}}a=!U;break a}a=1}xa=d+224|0;return a&1}function KM(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,u=0,x=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0,I=C(0),J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;d=v[a+20>>2];y=v[a+36>>2];j=xa-80|0;xa=j;r=v[a+32>>2];O=v[r+408>>2];c=v[a+28>>2];s=wr(v[c+620>>2],32);b=v[c+632>>2];o=v[c+636>>2];v[s+24>>2]=0;v[s+16>>2]=0;v[s+8>>2]=b;v[s+12>>2]=o;v[s+28>>2]=0;v[s>>2]=132716;v[s+20>>2]=d;v[s+24>>2]=1;if(d){Ba[v[v[d>>2]+16>>2]](d);v[s+16>>2]=v[v[s+20>>2]+16>>2]}Ba[v[v[y>>2]+16>>2]](y);v[s+28>>2]=y;J=v[r+412>>2];if(J){P=v[c+108>>2];Q=v[c+104>>2];R=c+576|0;y=0;while(1){v[j+24>>2]=0;v[j+72>>2]=0;v[j+20>>2]=v[c+460>>2]+(S<<2);d=K<<2;v[j+16>>2]=d+v[c+448>>2];v[j+28>>2]=v[c+552>>2]+(T<<4);o=N<<5;v[j+48>>2]=o+v[c+376>>2];v[j+52>>2]=o+v[c+388>>2];v[j+60>>2]=v[c+412>>2]+(N<<3);v[j+56>>2]=o+v[c+400>>2];v[j+64>>2]=v[c+424>>2]+(K<<5);o=v[c+436>>2];b=y;v[j+32>>2]=(b<<2)+O;v[j+68>>2]=d+o;l=v[c+528>>2];v[j+40>>2]=l;v[j+44>>2]=d+v[c+540>>2];D=0;F=0;u=0;G=0;o=0;a:{if(!Q){break a}o=0;if(b>>>0>=J>>>0){break a}o=0;if(!P){break a}d=v[r+256>>2];o=b;while(1){b:{y=o+1|0;o=d+B(v[(o<<2)+O>>2],44)|0;G=v[o+36>>2]+G|0;u=v[o+40>>2]+u|0;D=v[o+12>>2]+D|0;F=v[o+8>>2]+F|0;if(Q>>>0<=F>>>0|y>>>0>=J>>>0){break b}o=y;if(D>>>0

>>0){continue}}break}o=u+G|0}v[j+36>>2]=y-b;v[j+12>>2]=u;v[j+4>>2]=v[j+4>>2]&-2147483648|D&2147483647;v[j>>2]=F;v[j+8>>2]=G;L=v[c+564>>2]+K|0;b=v[c+368>>2];x=v[b>>2];if(x){v[b>>2]=v[x>>2]}if(!x){d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?26947:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,12195,b,19395,82)|0;d=b+19&-16;v[d-4>>2]=d-b;x=hB(d,v[c+372>>2])}h=wr(v[c+620>>2],124);v[h>>2]=x;b=v[j+4>>2];v[h+4>>2]=v[j>>2];v[h+8>>2]=b;b=v[j+12>>2];v[h+12>>2]=v[j+8>>2];v[h+16>>2]=b;b=v[j+20>>2];v[h+20>>2]=v[j+16>>2];v[h+24>>2]=b;b=v[j+28>>2];v[h+28>>2]=v[j+24>>2];v[h+32>>2]=b;b=v[j+36>>2];v[h+36>>2]=v[j+32>>2];v[h+40>>2]=b;b=v[j+44>>2];v[h+44>>2]=v[j+40>>2];v[h+48>>2]=b;b=v[j+52>>2];v[h+52>>2]=v[j+48>>2];v[h+56>>2]=b;b=v[j+60>>2];v[h+60>>2]=v[j+56>>2];v[h+64>>2]=b;b=v[j+68>>2];v[h+68>>2]=v[j+64>>2];v[h+72>>2]=b;v[h+80>>2]=0;v[h+84>>2]=0;v[h+76>>2]=L;u=0;m=0;A=0;g=v[h>>2];v[g+12092>>2]=0;v[g+12112>>2]=0;v[g+12116>>2]=0;v[g+11968>>2]=0;v[g+11956>>2]=0;v[g+11868>>2]=0;v[g+11872>>2]=0;v[g+12132>>2]=v[g+11952>>2];v[g+12140>>2]=v[g+11976>>2];b=g+11876|0;v[b>>2]=0;v[b+4>>2]=0;b=g+11884|0;v[b>>2]=0;v[b+4>>2]=0;M=h+20|0;i=M;v[g+11940>>2]=v[i+48>>2];v[g+11928>>2]=v[i+52>>2];v[g+11932>>2]=v[i>>2];v[g+11936>>2]=v[i+4>>2];v[g+11944>>2]=v[i+24>>2];v[g+11948>>2]=v[i+28>>2];iB(g,0,v[h+8>>2]&2147483647);E=v[i+20>>2];c:{if(!E){break c}n=v[i+16>>2];q=v[g+11948>>2];H=v[g+11944>>2];p=v[g+11936>>2];d=v[g+11932>>2];b=v[g+11928>>2];while(1){f=v[v[r+256>>2]+B(v[n+(A<<2)>>2],44)>>2];if(f>>>0<=4294967167){while(1){f=f>>>7|0;k=v[r+184>>2]+B(f,24)|0;e=v[k+20>>2];d:{if(w[k+5|0]==1){v[p+(m<<2)>>2]=e;m=m+1|0;break d}g=u<<2;v[g+d>>2]=e;v[b+g>>2]=v[e+36>>2];v[g+q>>2]=f;v[H+(v[v[r+196>>2]+(f<<2)>>2]<<2)>>2]=u;u=u+1|0}f=v[k+8>>2];if(f>>>0<4294967168){continue}break}}A=A+1|0;if((E|0)!=(A|0)){continue}break}if(!E){u=0;break c}k=v[i+12>>2];u=0;A=0;while(1){f=v[(v[r+256>>2]+B(v[n+(A<<2)>>2],44)|0)+20>>2];if((f|0)!=-1){while(1){b=v[r+228>>2];d=(f>>>0)/(b>>>0)|0;g=f-B(b,d)|0;q=v[v[r+208>>2]+(d<<2)>>2];d=v[r+148>>2];b=(f>>>0)/(d>>>0)|0;p=v[v[v[r+128>>2]+(b<<2)>>2]+(f-B(b,d)<<2)>>2];e:{if(!p){break e}b=v[r+616>>2];e=v[b>>2];f=f<<1;d=f|1;i=v[b+20>>2];b=(d>>>0)/(i>>>0)|0;m=v[v[e+(b<<2)>>2]+(d-B(b,i)<<2)>>2];b=(f>>>0)/(i>>>0)|0;f=v[v[e+(b<<2)>>2]+(f-B(b,i)<<2)>>2];e=k+(u<<4)|0;v[e+12>>2]=p;d=f>>>7|0;b=v[r+184>>2]+B(d,24)|0;f:{if(w[b+5|0]==1){b=v[b+20>>2];Ba[v[v[b>>2]+188>>2]](b,f>>>1&63,e,e+8|0);break f}if(w[b+4|0]&4){t[e+8|0]=1;v[e>>2]=v[v[r+196>>2]+(d<<2)>>2];break f}t[e+8|0]=0;v[e>>2]=v[H+(v[v[r+196>>2]+(d<<2)>>2]<<2)>>2]}u=u+1|0;if(m>>>0>=4294967168){t[e+9|0]=3;break e}d=m>>>7|0;b=v[r+184>>2]+B(d,24)|0;if(w[b+5|0]==1){b=v[b+20>>2];Ba[v[v[b>>2]+188>>2]](b,m>>>1&63,e+4|0,e+9|0);break e}if(w[b+4|0]&4){t[e+9|0]=1;v[e+4>>2]=v[v[r+196>>2]+(d<<2)>>2];break e}t[e+9|0]=0;v[e+4>>2]=v[H+(v[v[r+196>>2]+(d<<2)>>2]<<2)>>2]}f=v[(q+(g<<4)|0)+8>>2];if((f|0)!=-1){continue}break}}A=A+1|0;if((E|0)!=(A|0)){continue}break}}v[h+12>>2]=u;p=wr(v[c+620>>2],56);d=v[c+632>>2];b=v[c+636>>2];v[p+24>>2]=0;v[p+16>>2]=0;v[p+20>>2]=0;v[p+8>>2]=d;v[p+12>>2]=b;v[p+52>>2]=c;v[p+48>>2]=R;v[p+44>>2]=L;v[p+40>>2]=l;v[p+36>>2]=r;v[p+32>>2]=M;v[p+28>>2]=h;v[p>>2]=132940;d=wr(v[c+620>>2],80);E=v[h+72>>2];H=v[h+20>>2];i=v[h+4>>2];m=v[c+472>>2];n=v[c+484>>2];e=v[c+496>>2];g=v[x+11948>>2];I=z[c+52>>2];q=v[c+632>>2];b=v[c+636>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=q;v[d+12>>2]=b;v[d+72>>2]=c;f=h+84|0;v[d+68>>2]=f;l=h+80|0;v[d+64>>2]=l;z[d+60>>2]=I;k=c+68|0;v[d+56>>2]=k;v[d+52>>2]=i;v[d+48>>2]=g;v[d+32>>2]=H;v[d+28>>2]=E;v[d>>2]=132996;v[d+44>>2]=e+B(L,48);e=L<<6;v[d+40>>2]=e+n;v[d+36>>2]=e+m;b=wr(v[c+620>>2],56);I=z[c+52>>2];g=v[c+632>>2];q=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=g;v[b+12>>2]=q;v[b+48>>2]=c;v[b+44>>2]=f;v[b+40>>2]=l;z[b+36>>2]=I;v[b+32>>2]=k;v[b+28>>2]=h;v[b>>2]=133108;i=wr(v[c+620>>2],40);g=v[c+632>>2];q=v[c+636>>2];v[i+24>>2]=0;v[i+16>>2]=0;v[i+20>>2]=0;v[i+8>>2]=g;v[i+12>>2]=q;v[i+36>>2]=0;v[i+32>>2]=c;v[i+28>>2]=h;v[i>>2]=133164;m=wr(v[c+620>>2],48);f=v[h+52>>2];l=v[c+52>>2];k=v[c+56>>2];g=v[c+632>>2];q=v[c+636>>2];v[m+24>>2]=0;v[m+16>>2]=0;v[m+20>>2]=0;v[m+8>>2]=g;v[m+12>>2]=q;v[m>>2]=133220;v[m+28>>2]=h;v[m+44>>2]=c;v[m+40>>2]=f;v[m+32>>2]=l;v[m+36>>2]=k;n=wr(v[c+620>>2],48);l=v[h+52>>2];k=v[c+472>>2];g=v[c+632>>2];q=v[c+636>>2];v[n+24>>2]=0;v[n+16>>2]=0;v[n+20>>2]=0;v[n+8>>2]=g;v[n+12>>2]=q;v[n+44>>2]=c;v[n+40>>2]=x;v[n+32>>2]=l;v[n+28>>2]=h;v[n>>2]=133276;v[n+36>>2]=(e+k|0)- -64;e=wr(v[c+620>>2],56);k=v[h+56>>2];I=z[c+52>>2];g=v[c+632>>2];q=v[c+636>>2];v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=g;v[e+12>>2]=q;v[e+48>>2]=c;z[e+44>>2]=I;v[e+40>>2]=x;v[e+36>>2]=R;v[e+32>>2]=k;v[e+28>>2]=h;v[e>>2]=133332;f=wr(v[c+620>>2],48);g=v[c+632>>2];q=v[c+636>>2];v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=g;v[f+12>>2]=q;v[f+44>>2]=c;v[f+40>>2]=x;k=h+4|0;v[f+36>>2]=k;v[f+32>>2]=M;v[f+28>>2]=h;v[f>>2]=133500;l=wr(v[c+620>>2],48);g=v[c+632>>2];q=v[c+636>>2];v[l+24>>2]=0;v[l+16>>2]=0;v[l+20>>2]=0;v[l+8>>2]=g;v[l+12>>2]=q;v[l+44>>2]=c;v[l+40>>2]=r;v[l+36>>2]=k;v[l+32>>2]=M;v[l+28>>2]=x;v[l>>2]=133612;k=wr(v[c+620>>2],40);g=v[c+632>>2];q=v[c+636>>2];v[k+24>>2]=0;v[k+16>>2]=0;v[k+8>>2]=g;v[k+12>>2]=q;v[k+32>>2]=c;v[k+28>>2]=x;v[k>>2]=133668;v[k+20>>2]=s;v[k+24>>2]=1;if(s){Ba[v[v[s>>2]+16>>2]](s);v[k+16>>2]=v[v[k+20>>2]+16>>2]}v[l+20>>2]=k;v[l+24>>2]=1;Ba[v[v[k>>2]+16>>2]](k);v[l+16>>2]=v[v[l+20>>2]+16>>2];v[f+20>>2]=l;v[f+24>>2]=1;Ba[v[v[l>>2]+16>>2]](l);v[f+16>>2]=v[v[f+20>>2]+16>>2];v[e+20>>2]=f;v[e+24>>2]=1;Ba[v[v[f>>2]+16>>2]](f);v[e+16>>2]=v[v[e+20>>2]+16>>2];v[n+20>>2]=e;v[n+24>>2]=1;Ba[v[v[e>>2]+16>>2]](e);v[n+16>>2]=v[v[n+20>>2]+16>>2];v[m+20>>2]=n;v[m+24>>2]=1;Ba[v[v[n>>2]+16>>2]](n);v[m+16>>2]=v[v[m+20>>2]+16>>2];v[i+20>>2]=m;v[i+24>>2]=1;Ba[v[v[m>>2]+16>>2]](m);q=v[v[i+20>>2]+16>>2];v[i+36>>2]=e;v[i+16>>2]=q;Ba[v[v[e>>2]+16>>2]](e);v[b+20>>2]=i;v[b+24>>2]=1;Ba[v[v[i>>2]+16>>2]](i);v[b+16>>2]=v[v[b+20>>2]+16>>2];v[d+20>>2]=i;v[d+24>>2]=1;Ba[v[v[i>>2]+16>>2]](i);v[d+16>>2]=v[v[d+20>>2]+16>>2];v[p+20>>2]=i;v[p+24>>2]=1;Ba[v[v[i>>2]+16>>2]](i);v[p+16>>2]=v[v[p+20>>2]+16>>2];Ba[v[v[k>>2]+20>>2]](k);Ba[v[v[l>>2]+20>>2]](l);Ba[v[v[f>>2]+20>>2]](f);Ba[v[v[e>>2]+20>>2]](e);Ba[v[v[n>>2]+20>>2]](n);Ba[v[v[m>>2]+20>>2]](m);Ba[v[v[i>>2]+20>>2]](i);Ba[v[v[b>>2]+20>>2]](b);Ba[v[v[d>>2]+20>>2]](d);Ba[v[v[p>>2]+20>>2]](p);N=(o+N|0)+(D<<6)|0;S=D+S|0;T=G+T|0;K=K+F|0;if(y>>>0>>0){continue}break}}Ba[v[v[s>>2]+20>>2]](s);xa=j+80|0;a=v[a+36>>2];Ba[v[v[a>>2]+20>>2]](a)}function bY(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=0,y=0,A=0,B=C(0),D=0,E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0);j=xa-320|0;xa=j;x=v[b+4>>2];k=z[x+20>>2];A=v[a+4>>2];l=z[A+20>>2];J=z[d>>2];Y=w[A+32|0];O=z[A+16>>2];Z=w[x+32|0];P=z[x+16>>2];v[j+44>>2]=0;W=C((k>2];d=0;c=0;while(1){o=d<<2;D=w[d+f|0];v[o+(j- -64|0)>>2]=D;y=w[d+g|0];v[o+(j+48|0)>>2]=y;o=(D<<4)+101152|0;_=v[o+8>>2];$=v[o>>2];aa=v[o+4>>2];o=(y<<4)+101152|0;ba=v[o>>2];ca=v[o+4>>2];S=v[o+8>>2];s=z[p+48>>2];u=z[p+32>>2];E=z[p>>2];G=z[p+16>>2];H=z[p+52>>2];B=z[p+36>>2];M=z[p+4>>2];T=z[p+20>>2];I=z[p+56>>2];U=z[p+40>>2];k=z[A+56>>2];V=z[p+8>>2];l=z[A+48>>2];N=z[p+24>>2];m=z[A+52>>2];q=z[x+48>>2];n=z[x+52>>2];r=z[x+56>>2];y=c<<4;o=y+(j+144|0)|0;v[o+12>>2]=0;D=y+(j+80|0)|0;v[D+12>>2]=0;y=y+(j+208|0)|0;v[y+12>>2]=0;r=S?r:C(-r);z[D+8>>2]=r;n=ca?n:C(-n);z[D+4>>2]=n;q=ba?q:C(-q);z[D>>2]=q;k=_?k:C(-k);l=$?l:C(-l);m=aa?m:C(-m);I=C(I+C(C(U*k)+C(C(V*l)+C(N*m))));z[o+8>>2]=I;H=C(H+C(C(B*k)+C(C(M*l)+C(m*T))));z[o+4>>2]=H;k=C(s+C(C(u*k)+C(C(E*l)+C(m*G))));z[o>>2]=k;l=C(I-r);z[y+8>>2]=l;m=C(H-n);z[y+4>>2]=m;k=C(k-q);z[y>>2]=k;o=c;c=c+1|0;d=d+1|0;if((X|0)!=(d|0)){continue}break}v[j+44>>2]=c;g:{h:{switch(o-1|0){case 0:q=z[j+216>>2];k=C(z[j+232>>2]-q);n=z[j+208>>2];l=C(z[j+224>>2]-n);r=z[j+212>>2];m=C(z[j+228>>2]-r);s=C(C(k*k)+C(C(l*l)+C(m*m)));if(!(s<=C(1.1920928955078125e-7))){break g}v[j+44>>2]=1;c=v[j+212>>2];v[j+16>>2]=v[j+208>>2];v[j+20>>2]=c;c=v[j+220>>2];v[j+24>>2]=v[j+216>>2];v[j+28>>2]=c;break e;case 1:jY(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}}Q_(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break e}v[j+28>>2]=0;L=k;k=C(F(C(C(C(C(C(-n)*l)-C(m*r))-C(q*k))/s),C(1)));k=k>C(0)?k:C(0);z[j+24>>2]=q+C(L*k);z[j+20>>2]=r+C(m*k);z[j+16>>2]=n+C(l*k);break e}k=z[c+8>>2];m=z[c>>2];l=z[c+4>>2];v[j+284>>2]=0;c=C(C(k*k)+C(C(m*m)+C(l*l)))>C(0);k=c?k:C(0);z[j+280>>2]=k;l=c?l:C(0);z[j+276>>2]=l;m=c?m:C(1);z[j+272>>2]=m;q=C(C(1)/C(K(C(C(k*k)+C(C(m*m)+C(l*l))))));s=C(k*q);u=C(m*q);n=C(34028234663852886e22);L=C(l*q);break d}v[j+28>>2]=0;z[j+24>>2]=l;z[j+20>>2]=m;z[j+16>>2]=k}c=v[j+20>>2];v[j+272>>2]=v[j+16>>2];v[j+276>>2]=c;c=v[j+28>>2];v[j+280>>2]=v[j+24>>2];v[j+284>>2]=c;k=z[j+280>>2];m=z[j+272>>2];l=z[j+276>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));if(!(W>2]=v[j+312>>2];c=v[j+308>>2];v[j+288>>2]=v[j+304>>2];v[j+292>>2]=c;o=v[a+4>>2];c=v[a+8>>2];d=v[j+44>>2];p=d<<2;n=C(-m);x=C(C(C(z[a+20>>2]*n)-C(z[a+36>>2]*l))-C(z[a+52>>2]*k))>C(0);A=C(C(C(z[a+16>>2]*n)-C(z[a+32>>2]*l))-C(z[a+48>>2]*k))>C(0);D=C(C(C(z[a+24>>2]*n)-C(z[a+40>>2]*l))-C(z[a+56>>2]*k))>C(0);v[p+(j- -64|0)>>2]=x<<1|A|D<<2;I=z[c+52>>2];U=z[c+36>>2];V=z[c+20>>2];N=z[c+56>>2];Q=z[c+40>>2];n=z[o+56>>2];R=z[c+24>>2];B=z[o+52>>2];da=z[c+48>>2];ea=z[c+32>>2];fa=z[c>>2];ga=z[c+16>>2];ha=z[c+4>>2];L=z[c+8>>2];M=z[o+48>>2];c=v[b+4>>2];ia=z[j+284>>2];S=p+(j+48|0)|0;O=m;p=m>C(0);J=l;o=l>C(0);P=k;y=k>C(0);v[S>>2]=p|o<<1|y<<2;k=D?n:C(-n);l=A?M:C(-M);m=x?B:C(-B);M=C(N+C(C(Q*k)+C(C(L*l)+C(R*m))));n=z[c+56>>2];N=y?n:C(-n);n=C(M-N);Q=C(da+C(C(ea*k)+C(C(fa*l)+C(m*ga))));B=z[c+48>>2];R=p?B:C(-B);B=C(Q-R);l=C(I+C(C(U*k)+C(C(ha*l)+C(m*V))));k=z[c+52>>2];m=o?k:C(-k);k=C(l-m);I=C(C(s*n)+C(C(u*B)+C(r*k)));if(I>T){b=0;if(!f){break a}t[h|0]=d;if(!d){break a}c=0;if((d|0)!=1){i=d&-2;a=0;while(1){e=c<<2;o=j- -64|0;t[c+f|0]=v[e+o>>2];p=j+48|0;t[c+g|0]=v[p+e>>2];e=c|1;h=e<<2;t[e+f|0]=v[h+o>>2];t[e+g|0]=v[h+p>>2];c=c+2|0;a=a+2|0;if((i|0)!=(a|0)){continue}break}}if(!(d&1)){break a}a=c<<2;t[c+f|0]=v[a+(j- -64|0)>>2];t[c+g|0]=v[a+(j+48|0)>>2];break a}if(I>C(q*C(.9997749924659729))){i:{if(!f){break i}t[h|0]=d;if(!d){break i}c=0;if((d|0)!=1){o=d&-2;a=0;while(1){b=c<<2;p=j- -64|0;t[c+f|0]=v[b+p>>2];x=j+48|0;t[c+g|0]=v[x+b>>2];b=c|1;h=b<<2;t[b+f|0]=v[h+p>>2];t[b+g|0]=v[h+x>>2];c=c+2|0;a=a+2|0;if((o|0)!=(a|0)){continue}break}}if(!(d&1)){break i}a=c<<2;t[c+f|0]=v[a+(j- -64|0)>>2];t[c+g|0]=v[a+(j+48|0)>>2]}z[i+32>>2]=u;v[i+44>>2]=0;z[i+40>>2]=s;z[i+36>>2]=r;JV(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,d);j:{if(e){a=v[j+20>>2];v[i>>2]=v[j+16>>2];v[i+4>>2]=a;a=v[j+28>>2];v[i+8>>2]=v[j+24>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;a=v[j+308>>2];v[i+68>>2]=v[j+304>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+312>>2];break j}k=z[j+16>>2];l=z[j+20>>2];m=z[j+24>>2];v[i+12>>2]=0;z[i+8>>2]=m-C(E*s);z[i+4>>2]=l-C(E*r);z[i>>2]=k-C(E*u);k=z[j>>2];l=z[j+4>>2];m=z[j+8>>2];v[i+28>>2]=0;z[i+24>>2]=m+C(G*s);z[i+20>>2]=l+C(G*r);z[i+16>>2]=k+C(G*u);q=C(q-H)}z[i+64>>2]=q;b=2;break a}o=d<<4;c=o+(j+144|0)|0;v[c+12>>2]=0;z[c+8>>2]=M;z[c+4>>2]=l;z[c>>2]=Q;c=o+(j+80|0)|0;v[c+12>>2]=0;z[c+8>>2]=N;z[c+4>>2]=m;z[c>>2]=R;c=o+(j+208|0)|0;v[c+12>>2]=0;z[c+8>>2]=n;z[c+4>>2]=k;z[c>>2]=B;v[j+44>>2]=d+1;k:{l:{switch(d-1|0){case 0:n=z[j+216>>2];k=C(z[j+232>>2]-n);r=z[j+208>>2];l=C(z[j+224>>2]-r);s=z[j+212>>2];m=C(z[j+228>>2]-s);u=C(C(k*k)+C(C(l*l)+C(m*m)));if(u<=C(1.1920928955078125e-7)){v[j+44>>2]=1;c=v[j+212>>2];v[j+16>>2]=v[j+208>>2];v[j+20>>2]=c;c=v[j+220>>2];v[j+24>>2]=v[j+216>>2];v[j+28>>2]=c;break k}v[j+28>>2]=0;L=k;k=C(F(C(C(C(C(C(-r)*l)-C(m*s))-C(n*k))/u),C(1)));k=k>C(0)?k:C(0);z[j+24>>2]=n+C(L*k);z[j+20>>2]=s+C(m*k);z[j+16>>2]=r+C(l*k);break k;case 1:jY(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:Q_(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}}v[j+28>>2]=0;z[j+24>>2]=n;z[j+20>>2]=k;z[j+16>>2]=B}c=v[j+20>>2];v[j+272>>2]=v[j+16>>2];v[j+276>>2]=c;c=v[j+28>>2];v[j+280>>2]=v[j+24>>2];v[j+284>>2]=c;k=z[j+280>>2];m=z[j+272>>2];l=z[j+276>>2];n=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));u=C(C(1)/n);s=C(k*u);r=C(l*u);u=C(m*u);if(nW){continue}break}d=v[j+44>>2];if(!(n>2];A=j+48|0;t[c+g|0]=v[A+h>>2];h=c|1;o=h<<2;t[f+h|0]=v[o+x>>2];t[g+h|0]=v[o+A>>2];c=c+2|0;b=b+2|0;if((p|0)!=(b|0)){continue}break}}if(!(a&1)){break m}a=c<<2;t[c+f|0]=v[a+(j- -64|0)>>2];t[c+g|0]=v[a+(j+48|0)>>2]}v[j+312>>2]=v[j+296>>2];a=v[j+292>>2];v[j+304>>2]=v[j+288>>2];v[j+308>>2]=a;z[j+284>>2]=ia;z[j+272>>2]=O;z[j+276>>2]=J;z[j+280>>2]=P;JV(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,d);v[i+60>>2]=0;z[i+56>>2]=s;z[i+52>>2]=r;z[i+48>>2]=u;v[i+44>>2]=0;k=C(C(1)/q);l=C(P*k);z[i+40>>2]=l;m=C(J*k);z[i+36>>2]=m;k=C(O*k);z[i+32>>2]=k;if(e){a=v[j+20>>2];v[i>>2]=v[j+16>>2];v[i+4>>2]=a;a=v[j+28>>2];v[i+8>>2]=v[j+24>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;z[i+64>>2]=q;a=v[j+292>>2];v[i+68>>2]=v[j+288>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+296>>2];b=4;break a}n=z[j+16>>2];r=z[j+20>>2];J=z[j+24>>2];v[i+12>>2]=0;z[i+8>>2]=J-C(E*l);z[i+4>>2]=r-C(E*m);z[i>>2]=n-C(E*k);n=z[j>>2];r=z[j+4>>2];J=z[j+8>>2];z[i+64>>2]=q-H;v[i+28>>2]=0;z[i+24>>2]=J+C(G*l);z[i+20>>2]=r+C(G*m);z[i+16>>2]=n+C(G*k);b=2;if(q<=H){break a}b=4;break a}if(f){break b}b=5;break a}d=v[j+44>>2]}t[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;o=j- -64|0;t[c+f|0]=v[e+o>>2];p=j+48|0;t[c+g|0]=v[p+e>>2];e=c|1;h=e<<2;t[e+f|0]=v[h+o>>2];t[e+g|0]=v[h+p>>2];c=c+2|0;a=a+2|0;if((i|0)!=(a|0)){continue}break}}if(!(d&1)){break a}a=c<<2;t[c+f|0]=v[a+(j- -64|0)>>2];t[c+g|0]=v[a+(j+48|0)>>2]}xa=j+320|0;return b}function xx(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=0,u=0,y=0,A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=0,la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0);j=xa-224|0;xa=j;A=z[b+24>>2];D=z[b+20>>2];p=z[b+8>>2];m=z[b+4>>2];o=z[b>>2];n=z[b+16>>2];v[j+152>>2]=0;v[j+156>>2]=0;v[j+144>>2]=0;v[j+148>>2]=0;v[j+136>>2]=0;v[j+140>>2]=0;v[j+128>>2]=0;v[j+132>>2]=0;v[j+120>>2]=0;v[j+124>>2]=0;v[j+112>>2]=0;v[j+116>>2]=0;v[j+104>>2]=0;v[j+108>>2]=0;v[j+96>>2]=0;v[j+100>>2]=0;a:{if(g){b:{if(x[a+8>>1]!=65535){v[j+220>>2]=0;z[j+216>>2]=A;z[j+212>>2]=D;z[j+208>>2]=n;v[j+188>>2]=0;z[j+184>>2]=p;z[j+180>>2]=m;z[j+176>>2]=o;m=z[e+24>>2];q=v[e+16>>2];g=v[e+20>>2];v[j+92>>2]=0;z[j+88>>2]=m;v[j+80>>2]=q;v[j+84>>2]=g;q=v[e>>2];g=v[e+4>>2];m=z[e+8>>2];v[j+76>>2]=0;z[j+72>>2]=m;v[j+64>>2]=q;v[j+68>>2]=g;F=z[f+12>>2];G=z[f+8>>2];I=z[f+4>>2];m=z[f>>2];v[j>>2]=0;v[j+4>>2]=0;z[j+16>>2]=m;v[j+8>>2]=0;v[j+12>>2]=1065353216;f=j+160|0;g=j+48|0;q=j+192|0;e=j+32|0;break b}v[j+204>>2]=0;z[j+200>>2]=A;z[j+196>>2]=D;z[j+192>>2]=n;v[j+172>>2]=0;z[j+168>>2]=p;z[j+164>>2]=m;z[j+160>>2]=o;m=z[e+24>>2];q=v[e+16>>2];g=v[e+20>>2];v[j+60>>2]=0;z[j+56>>2]=m;v[j+48>>2]=q;v[j+52>>2]=g;q=v[e>>2];g=v[e+4>>2];m=z[e+8>>2];v[j+44>>2]=0;z[j+40>>2]=m;v[j+32>>2]=q;v[j+36>>2]=g;ja=v[f+8>>2];q=v[f+12>>2];g=v[f+4>>2];e=v[f>>2];v[j+16>>2]=0;v[j>>2]=e;v[j+4>>2]=g;v[j+8>>2]=ja;v[j+12>>2]=q;F=C(1);f=j+176|0;g=j+80|0;q=j+208|0;e=j- -64|0}v[e>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[g>>2]=0;v[g+4>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[q>>2]=0;v[q+4>>2]=0;v[q+8>>2]=0;v[q+12>>2]=0;z[j+28>>2]=F;z[j+24>>2]=G;z[j+20>>2]=I;if(w[v[a+24>>2]]==3){uB(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}qB(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(x[a+8>>1]!=65535){v[j+220>>2]=0;z[j+216>>2]=A;z[j+212>>2]=D;z[j+208>>2]=n;z[j+176>>2]=o;f=j+192|0;g=j+160|0;e=j+176|0;break c}v[j+204>>2]=0;z[j+200>>2]=A;z[j+196>>2]=D;z[j+192>>2]=n;z[j+160>>2]=o;f=j+208|0;g=j+176|0;e=j+160|0}v[e+12>>2]=0;z[e+8>>2]=p;z[e+4>>2]=m;v[g>>2]=0;v[g+4>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;if(w[v[a+24>>2]]==3){u=j+208|0;r=j+192|0;s=j+176|0;t=j+160|0;k=xa-96|0;xa=k;f=x[a+22>>1];if(f){e=v[a+24>>2];ja=e+(f<<4)|0;while(1){ka=w[e+3|0];H=w[e+2|0];v[k+88>>2]=0;v[k+92>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;v[k+56>>2]=0;v[k+60>>2]=0;v[k+48>>2]=0;v[k+52>>2]=0;v[k+40>>2]=0;v[k+44>>2]=0;v[k+32>>2]=0;v[k+36>>2]=0;h=z[e+40>>2];g=v[e+32>>2];f=v[e+36>>2];v[k+28>>2]=0;z[k+24>>2]=h;v[k+16>>2]=g;v[k+20>>2]=f;O=z[e+44>>2];f=e- -64|0;g=f;y=k- -64|0;q=f+B(H,112)|0;E=0;i=C(0);v[k>>2]=0;if(H){while(1){l=g+B(E,112)|0;la=z[l+48>>2];J=z[l+52>>2];K=z[l+56>>2];f=q+(E<<2)|0;P=z[f>>2];L=z[l+36>>2];M=z[l+32>>2];Q=z[l+24>>2];R=z[l+8>>2];S=z[l+20>>2];T=z[l+4>>2];U=z[l>>2];V=z[l+16>>2];N=z[t+8>>2];W=z[r+8>>2];A=z[s+8>>2];X=z[k+24>>2];Y=z[u+8>>2];D=z[t+4>>2];o=z[r+4>>2];n=z[s+4>>2];Z=z[k+20>>2];_=z[u+4>>2];p=z[s>>2];$=z[u>>2];m=z[t>>2];h=z[r>>2];aa=z[k+16>>2];v[u+12>>2]=0;m=C(L-C(M*C(C(C(C(C($*aa)+C(U*p))-C(C(aa*h)+C(V*m)))+C(C(C(_*Z)+C(T*n))-C(C(Z*o)+C(S*D))))+C(C(C(Y*X)+C(R*A))-C(C(X*W)+C(Q*N))))));h=C(-P);n=h>2]=Y+C(K*n);z[u+4>>2]=_+C(J*n);z[u>>2]=$+C(la*n);p=z[l+64>>2];m=z[l+68>>2];h=z[l+72>>2];v[s+12>>2]=0;z[s+8>>2]=C(n*h)+z[s+8>>2];z[s+4>>2]=C(n*m)+z[s+4>>2];z[s>>2]=C(n*p)+z[s>>2];p=z[l+80>>2];m=z[l+84>>2];h=z[l+88>>2];v[r+12>>2]=0;z[r+8>>2]=C(n*h)+z[r+8>>2];z[r+4>>2]=C(n*m)+z[r+4>>2];z[r>>2]=C(n*p)+z[r>>2];p=z[l+96>>2];m=z[l+100>>2];h=z[l+104>>2];v[t+12>>2]=0;z[t+8>>2]=C(n*h)+z[t+8>>2];z[t+4>>2]=C(n*m)+z[t+4>>2];z[t>>2]=C(n*p)+z[t>>2];p=z[k+16>>2];m=z[k+20>>2];h=z[k+24>>2];v[k+92>>2]=0;z[k+88>>2]=C(n*h)+z[k+88>>2];z[k+84>>2]=C(n*m)+z[k+84>>2];z[k+80>>2]=C(n*p)+z[k+80>>2];v[k+60>>2]=0;z[k+56>>2]=C(R*n)+z[k+56>>2];z[k+52>>2]=C(T*n)+z[k+52>>2];z[k+48>>2]=C(U*n)+z[k+48>>2];p=z[k+16>>2];m=z[k+20>>2];h=z[k+24>>2];v[y+12>>2]=0;z[y+8>>2]=C(n*h)+z[y+8>>2];z[y+4>>2]=C(n*m)+z[y+4>>2];z[y>>2]=C(n*p)+z[y>>2];v[k+44>>2]=0;z[k+40>>2]=C(Q*n)+z[k+40>>2];z[k+36>>2]=C(S*n)+z[k+36>>2];z[k+32>>2]=C(V*n)+z[k+32>>2];h=C(P+n);z[f>>2]=h;i=C(h+i);E=E+1|0;if((H|0)!=(E|0)){continue}break}z[k>>2]=i}q=q+((H<<2)+12&2032)|0;f=q+(ka<<7)|0;d:{if(!ka){I=z[k+40>>2];ba=z[k+36>>2];ca=z[k+32>>2];da=z[k+72>>2];ea=z[k+68>>2];i=z[k+64>>2];fa=z[k+56>>2];ga=z[k+52>>2];F=z[k+48>>2];ha=z[k+88>>2];ia=z[k+84>>2];G=z[k+80>>2];break d}h=z[k>>2];h=h>O?h:O;ma=C(h*z[e+20>>2]);O=C(-ma);$=C(z[e+16>>2]*h);aa=C(-$);y=0;I=z[k+40>>2];ba=z[k+36>>2];ca=z[k+32>>2];da=z[k+72>>2];ea=z[k+68>>2];i=z[k+64>>2];fa=z[k+56>>2];ga=z[k+52>>2];F=z[k+48>>2];ha=z[k+88>>2];ia=z[k+84>>2];G=z[k+80>>2];E=0;while(1){l=q+(y<<7)|0;la=z[l+64>>2];J=z[l+68>>2];K=z[l+72>>2];P=z[l+12>>2];L=z[l+48>>2];M=z[l+44>>2];Q=z[l+28>>2];R=z[l+24>>2];S=z[l+40>>2];na=z[l+8>>2];T=z[l+20>>2];U=z[l+36>>2];oa=z[l+4>>2];V=z[l+16>>2];pa=z[l>>2];X=z[l+32>>2];N=z[s+8>>2];Y=z[u+8>>2];W=z[t+8>>2];A=z[r+8>>2];D=z[s+4>>2];Z=z[u+4>>2];o=z[t+4>>2];n=z[r+4>>2];_=z[u>>2];p=z[s>>2];m=z[r>>2];h=z[t>>2];v[u+12>>2]=0;h=C(C(P-C(Q*C(M-L)))-C(Q*C(C(C(C(C(pa*_)+C(V*p))-C(C(pa*m)+C(X*h)))+C(C(C(oa*Z)+C(T*D))-C(C(oa*n)+C(U*o))))+C(C(C(na*Y)+C(R*N))-C(C(na*A)+C(S*W))))));H=h>$;g=h>2]=Y+C(K*o);z[u+4>>2]=Z+C(J*o);z[u>>2]=_+C(la*o);p=z[l+80>>2];m=z[l+84>>2];h=z[l+88>>2];v[s+12>>2]=0;z[s+8>>2]=C(h*o)+z[s+8>>2];z[s+4>>2]=C(m*o)+z[s+4>>2];z[s>>2]=z[s>>2]+C(p*o);p=z[l+96>>2];m=z[l+100>>2];h=z[l+104>>2];v[r+12>>2]=0;z[r+8>>2]=C(o*h)+z[r+8>>2];z[r+4>>2]=C(o*m)+z[r+4>>2];z[r>>2]=C(o*p)+z[r>>2];p=z[l+112>>2];m=z[l+116>>2];h=z[l+120>>2];v[t+12>>2]=0;z[t+8>>2]=C(o*h)+z[t+8>>2];z[t+4>>2]=C(o*m)+z[t+4>>2];z[t>>2]=C(o*p)+z[t>>2];z[l+12>>2]=n;I=C(C(S*o)+I);ba=C(C(U*o)+ba);ca=C(C(X*o)+ca);p=C(na*o);da=C(p+da);m=C(oa*o);ea=C(m+ea);h=C(pa*o);i=C(h+i);fa=C(C(R*o)+fa);ga=C(C(T*o)+ga);F=C(C(V*o)+F);ha=C(p+ha);ia=C(m+ia);G=C(h+G);E=0-(g|H|(E|0)!=0)|0;y=y+1|0;if((ka|0)!=(y|0)){continue}break}z[k+48>>2]=F;z[k+80>>2]=G;z[k+64>>2]=i;v[e+52>>2]=E}h=z[e+24>>2];v[j+156>>2]=0;z[j+152>>2]=C(ha*h)+z[j+152>>2];z[j+148>>2]=C(ia*h)+z[j+148>>2];z[j+144>>2]=C(G*h)+z[j+144>>2];h=z[e+4>>2];v[j+124>>2]=0;z[j+120>>2]=C(fa*h)+z[j+120>>2];z[j+116>>2]=C(ga*h)+z[j+116>>2];z[j+112>>2]=C(F*h)+z[j+112>>2];h=z[e+28>>2];v[j+140>>2]=0;z[j+136>>2]=z[j+136>>2]-C(da*h);z[j+132>>2]=z[j+132>>2]-C(ea*h);z[j+128>>2]=z[j+128>>2]-C(i*h);h=z[e+8>>2];v[j+108>>2]=0;z[j+104>>2]=z[j+104>>2]-C(I*h);z[j+100>>2]=z[j+100>>2]-C(ba*h);z[j+96>>2]=z[j+96>>2]-C(ca*h);e=f;if(ja>>>0>e>>>0){continue}break}}xa=k+96|0;break a}sA(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=x[a+8>>1]==65535;a=e?j+96|0:j+112|0;W=z[a+8>>2];A=z[a+4>>2];D=z[a>>2];a=e?j+128|0:j+144|0;o=z[a+8>>2];n=z[a+4>>2];p=z[a>>2];a=e?j+192|0:j+208|0;J=z[a+8>>2];K=z[a+4>>2];L=z[a>>2];a=e?j+160|0:j+176|0;M=z[a+8>>2];N=z[a+4>>2];i=z[b+8>>2];h=z[b+4>>2];m=z[a>>2];z[d>>2]=C(m-z[b>>2])+z[d>>2];z[d+4>>2]=C(N-h)+z[d+4>>2];z[d+8>>2]=C(M-i)+z[d+8>>2];i=z[b+24>>2];h=z[b+20>>2];z[d+16>>2]=C(L-z[b+16>>2])+z[d+16>>2];z[d+20>>2]=C(K-h)+z[d+20>>2];z[d+24>>2]=C(J-i)+z[d+24>>2];z[b+24>>2]=J;z[b+20>>2]=K;z[b+16>>2]=L;z[b+8>>2]=M;z[b+4>>2]=N;z[b>>2]=m;z[c>>2]=z[c>>2]-p;z[c+4>>2]=z[c+4>>2]-n;z[c+8>>2]=z[c+8>>2]-o;z[c+16>>2]=z[c+16>>2]-D;z[c+20>>2]=z[c+20>>2]-A;z[c+24>>2]=z[c+24>>2]-W;xa=j+224|0}function pB(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=0,Y=0,Z=0,_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=0,fa=0,ga=0,ha=C(0),ia=0,ja=0,ka=0;l=xa-976|0;xa=l;u[v[b+16>>2]+22>>1]=0;q=v[a+4>>2];if(q){k=l+16|0;J9(k,0,960);v[l+956>>2]=2139095039;v[l+940>>2]=-8388609;v[l+876>>2]=2139095039;v[l+860>>2]=-8388609;v[l+796>>2]=2139095039;v[l+780>>2]=-8388609;v[l+716>>2]=2139095039;v[l+700>>2]=-8388609;v[l+636>>2]=2139095039;v[l+620>>2]=-8388609;v[l+556>>2]=2139095039;v[l+540>>2]=-8388609;v[l+476>>2]=2139095039;v[l+460>>2]=-8388609;v[l+396>>2]=2139095039;v[l+380>>2]=-8388609;v[l+316>>2]=2139095039;v[l+300>>2]=-8388609;v[l+236>>2]=2139095039;v[l+220>>2]=-8388609;v[l+156>>2]=2139095039;v[l+140>>2]=-8388609;v[l+76>>2]=2139095039;v[l+60>>2]=-8388609;v[b+4>>2]=1065353216;v[b+8>>2]=1065353216;v[b+12>>2]=1065353216;v[b>>2]=1065353216;v[l+8>>2]=0;v[l>>2]=0;v[l+4>>2]=0;ja=b,ka=Ba[q|0](k,l,12,b,v[a+8>>2],b+44|0,b+72|0,w[b+135|0],b+148|0,b+160|0)|0,v[ja+112>>2]=ka;v[b+108>>2]=k;z[b+136>>2]=z[l>>2];z[b+140>>2]=z[l+4>>2];z[b+144>>2]=z[l+8>>2];if(!(!w[v[b+20>>2]+62|0]|v[b+100>>2]==8)){v[b+4>>2]=0}if(!(!w[v[b+24>>2]+62|0]|v[b+104>>2]==8)){v[b+12>>2]=0}P=e;a=xa-560|0;xa=a;q=v[b+16>>2];j=v[b+112>>2];a:{if(!j){v[q+20>>2]=0;v[q+24>>2]=0;v[q+28>>2]=0;break a}k=x[q+10>>1];I=1;if(x[q+8>>1]==65535){ga=w[v[q>>2]+62|0]!=0;I=(k|0)!=65535}Z=(k|0)==65535?w[v[q+4>>2]+62|0]!=0:Z;_=I?160:96;k=B(j,_);c=Ba[v[v[c>>2]>>2]](c,k+192|0)|0;if(c+1>>>0<2){break a}v[q+24>>2]=c;k=k+176|0;u[q+22>>1]=k>>>4;j=v[b+128>>2];u[q+20>>1]=8;v[q+28>>2]=j;J9(c,0,k);c=v[b+112>>2];k=v[q+24>>2];t[k+2|0]=0;t[k+1|0]=c;t[k|0]=I?4:2;e=z[b>>2];z[k+44>>2]=e;z[k+60>>2]=z[b+4>>2];H=z[b+8>>2];z[k+64>>2]=-H;z[k+68>>2]=-z[b+12>>2];z[k+16>>2]=z[b+136>>2];z[k+20>>2]=z[b+140>>2];z[k+24>>2]=z[b+144>>2];n=z[b+116>>2];z[k+4>>2]=n*P;z[k+8>>2]=z[b+120>>2]*P;t[k+3|0]=n!=C(34028234663852886e22)|z[b+120>>2]!=C(34028234663852886e22);p=e;e=z[v[b+36>>2]+32>>2];z[k+12>>2]=p*e;p=H;H=z[v[b+40>>2]+32>>2];z[k+28>>2]=p*H;n=z[b+60>>2];o=z[b- -64>>2];p=z[b+152>>2];N=z[b+148>>2];z[k+40>>2]=z[b+156>>2]-z[b+68>>2];z[k+36>>2]=p-o;z[k+32>>2]=N-n;n=z[b+88>>2];o=z[b+92>>2];p=z[b+164>>2];N=z[b+160>>2];z[k+56>>2]=z[b+168>>2]-z[b+96>>2];z[k+52>>2]=p-o;z[k+48>>2]=N-n;m=v[b+108>>2];b:{if(!c){break b}if((c|0)!=1){Q=c&-2;while(1){s=m+B(i,80)|0;c:{if(!(w[s+76|0]&64)){break c}j=1024;d:{switch(x[s+78>>1]-2048|0){case 1:j=1025;break;case 0:break d;default:break c}}u[s+78>>1]=j}s=m+B(i|1,80)|0;e:{if(!(w[s+76|0]&64)){break e}j=1024;f:{switch(x[s+78>>1]-2048|0){case 1:j=1025;break;case 0:break f;default:break e}}u[s+78>>1]=j}i=i+2|0;r=r+2|0;if((Q|0)!=(r|0)){continue}break}}if(!(c&1)){break b}i=m+B(i,80)|0;if(!(w[i+76|0]&64)){break b}r=1024;g:{switch(x[i+78>>1]-2048|0){case 1:r=1025;break;case 0:break g;default:break b}}u[i+78>>1]=r}py(a+480|0,m,a+288|0,a+96|0,c,v[b+28>>2]+28|0,v[b+32>>2]+28|0,e,H,b,w[b+132|0]!=0|I,w[b+133|0],0);if(!v[b+112>>2]){break a}i=k+176|0;ha=P>2];r=x[c+76>>1];G=r&32?w[b+134|0]?ha:C(1):C(1);h:{if(!I){m=R<<4;j=m+(a+288|0)|0;K=z[j+8>>2];L=z[j>>2];M=z[j+4>>2];j=m+(a+96|0)|0;O=z[j+8>>2];S=z[j>>2];T=z[j+4>>2];p=z[c+44>>2];U=z[c+60>>2];e=z[c>>2];z[i>>2]=e;o=z[c+4>>2];z[i+4>>2]=o;A=z[c+8>>2];z[i+8>>2]=A;D=z[c+32>>2];z[i+16>>2]=D;E=z[c+36>>2];z[i+20>>2]=E;F=z[c+40>>2];z[i+24>>2]=F;V=z[c+16>>2];z[i+32>>2]=V;$=z[c+20>>2];z[i+36>>2]=$;aa=z[c+24>>2];z[i+40>>2]=aa;ba=z[c+48>>2];z[i+48>>2]=ba;ca=z[c+52>>2];z[i+52>>2]=ca;n=z[c+56>>2];v[i+84>>2]=0;z[i+72>>2]=G*U;z[i+68>>2]=G*p;z[i+56>>2]=n;v[i+92>>2]=1065353216;v[i+76>>2]=0;j=v[b+36>>2];p=C(C(C(A*z[j+8>>2])+C(C(e*z[j>>2])+C(o*z[j+4>>2])))+C(C(aa*z[j+24>>2])+C(C(V*z[j+16>>2])+C($*z[j+20>>2]))));m=v[b+40>>2];n=C(C(C(F*z[m+8>>2])+C(C(D*z[m>>2])+C(E*z[m+4>>2])))+C(C(n*z[m+24>>2])+C(C(ba*z[m+16>>2])+C(ca*z[m+20>>2]))));G=C(p-n);o=C(C(C(C(C(C(A*A)+C(C(e*e)+C(o*o)))*z[j+32>>2])*z[b>>2])+C(C(C(C(F*F)+C(C(D*D)+C(E*E)))*z[m+32>>2])*z[b+8>>2]))+C(C(C(C(K*K)+C(C(L*L)+C(M*M)))*z[b+4>>2])+C(C(C(O*O)+C(C(S*S)+C(T*T)))*z[b+12>>2])));e=H;if(r&64){break h}v[i+92>>2]=0;v[i+56>>2]=0;v[i+48>>2]=0;v[i+52>>2]=0;v[i+40>>2]=0;v[i+32>>2]=0;v[i+36>>2]=0;e=H;break h}Q=v[b+20>>2];j=v[b+28>>2];r=v[b+36>>2];W=x[q+8>>1];u[a+92>>1]=W;v[a+88>>2]=r;v[a+84>>2]=j;v[a+80>>2]=Q;X=v[b+24>>2];m=v[b+32>>2];s=v[b+40>>2];Y=x[q+10>>1];u[a+76>>1]=Y;v[a+72>>2]=s;v[a+68>>2]=m;v[a+64>>2]=X;da=(W|0)!=65535;i:{if(!da){p=z[j+40>>2];A=z[j+52>>2];D=z[j+32>>2];E=z[j+44>>2];F=z[j+56>>2];K=z[j+36>>2];L=z[j+48>>2];e=z[c+20>>2];M=z[j+60>>2];n=z[c+24>>2];O=z[j+28>>2];o=z[c+16>>2];J=z[c>>2];z[a+32>>2]=J;E=C(C(C(o*D)+C(e*E))+C(n*F));F=C(C(C(o*O)+C(e*p))+C(n*A));e=C(C(C(o*K)+C(e*L))+C(n*M));break i}J=z[c>>2];z[a+32>>2]=J;E=z[c+20>>2];F=z[c+16>>2];e=z[c+24>>2]}j=i+128|0;K=z[c+4>>2];L=z[c+8>>2];v[a+60>>2]=0;p=e;z[a+56>>2]=e;z[a+52>>2]=E;z[a+48>>2]=F;v[a+44>>2]=0;z[a+40>>2]=L;z[a+36>>2]=K;A=z[c+56>>2];e=C(-z[c+52>>2]);M=z[c+40>>2];O=C(-M);S=z[c+36>>2];T=C(-S);D=z[c+48>>2];U=z[c+32>>2];V=C(-U);ea=(Y|0)!=65535;j:{if(!ea){n=C(C(C(z[m+48>>2]*e)-C(D*z[m+36>>2]))-C(A*z[m+60>>2]));o=C(C(C(z[m+44>>2]*e)-C(D*z[m+32>>2]))-C(A*z[m+56>>2]));e=C(C(C(z[m+40>>2]*e)-C(D*z[m+28>>2]))-C(A*z[m+52>>2]));break j}n=C(-A);o=e;e=C(-D)}v[a+28>>2]=0;v[a+12>>2]=0;z[a+8>>2]=O;z[a+4>>2]=T;z[a>>2]=V;z[a+16>>2]=e;z[a+20>>2]=o;z[a+24>>2]=n;A=z[c+44>>2];D=z[c+60>>2];v[i+84>>2]=0;z[i+56>>2]=-n;z[i+52>>2]=-o;z[i+48>>2]=-e;z[i+40>>2]=p;z[i+36>>2]=E;z[i+32>>2]=F;z[i+24>>2]=M;z[i+20>>2]=S;z[i+16>>2]=U;z[i+8>>2]=L;z[i+4>>2]=K;z[i>>2]=J;v[i+92>>2]=1065353216;v[i+76>>2]=0;z[i+72>>2]=G*D;z[i+68>>2]=G*A;e=kB(a+80|0,a+32|0,i+96|0,z[b>>2],z[b+4>>2],a- -64|0,a,j,z[b+8>>2],z[b+12>>2]);if(da){Ba[v[v[Q>>2]+116>>2]](a+528|0,Q,W);p=C(C(C(C(z[i>>2]*z[a+528>>2])+C(z[i+32>>2]*z[a+544>>2]))+C(C(z[i+4>>2]*z[a+532>>2])+C(z[i+36>>2]*z[a+548>>2])))+C(C(z[i+8>>2]*z[a+536>>2])+C(z[i+40>>2]*z[a+552>>2])))}else{p=C(C(C(z[r+8>>2]*z[i+8>>2])+C(C(z[r>>2]*z[i>>2])+C(z[r+4>>2]*z[i+4>>2])))+C(C(z[r+24>>2]*z[i+40>>2])+C(C(z[r+16>>2]*z[i+32>>2])+C(z[r+20>>2]*z[i+36>>2]))))}if(ea){Ba[v[v[X>>2]+116>>2]](a+528|0,X,Y);n=C(C(C(C(z[i+16>>2]*z[a+528>>2])+C(z[i+48>>2]*z[a+544>>2]))+C(C(z[i+20>>2]*z[a+532>>2])+C(z[i+52>>2]*z[a+548>>2])))+C(C(z[i+24>>2]*z[a+536>>2])+C(z[i+56>>2]*z[a+552>>2])))}else{n=C(C(C(z[s+8>>2]*z[i+24>>2])+C(C(z[s>>2]*z[i+16>>2])+C(z[s+4>>2]*z[i+20>>2])))+C(C(z[s+24>>2]*z[i+56>>2])+C(C(z[s+16>>2]*z[i+48>>2])+C(z[s+20>>2]*z[i+52>>2]))))}if(!(w[c+76|0]&64)){v[i+92>>2]=0}o=e>2]=0;j=i- -64|0;oB(i+12|0,i+28|0,j,i+80|0,i+44|0,i+60|0,a+528|0,c,G,o,I?C(9999999747378752e-21):z[b+124>>2],J,d,P,x[c+76>>1]&64?N:C(e*h),f,g);o=z[a+528>>2];z[i+88>>2]=o;if(ga){z[j>>2]=z[j>>2]-p}if(Z){z[i+44>>2]=n+z[i+44>>2]}j=x[c+76>>1];if(j&16){v[i+84>>2]=v[i+84>>2]|2}if(j&8){v[i+84>>2]=v[i+84>>2]|4}j=x[c+78>>1];if(j&1){v[i+84>>2]=v[i+84>>2]|64}k:{if(!(ia&!w[b+132|0])){break k}if((j|0)==1024){v[i+84>>2]=v[i+84>>2]|8;m=R<<4;j=m+(a+288|0)|0;n=z[j>>2];p=z[j+4>>2];G=z[j+8>>2];e=z[b+4>>2];j=(fa<<4)+k|0;z[j+92>>2]=o;z[j+88>>2]=e*G;z[j+84>>2]=e*p;z[j+80>>2]=n*e;m=m+(a+96|0)|0;e=z[b+12>>2];z[j+128>>2]=z[m>>2]*e;z[j+132>>2]=e*z[m+4>>2];z[j+136>>2]=e*z[m+8>>2];z[j+140>>2]=z[c+12>>2];fa=fa+1|0;break k}if(!(j&2048)){break k}v[i+84>>2]=v[i+84>>2]|16}i=i+_|0;R=R+1|0;if(R>>>0>2]){continue}break}}xa=a+560|0}xa=l+976|0}function IX(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=0,q=C(0),r=C(0),s=0,u=0,x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=0,W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0);j=xa-320|0;xa=j;p=v[b+4>>2];k=z[p+20>>2];n=v[a+4>>2];l=z[n+20>>2];D=z[d>>2];U=w[n+32|0];J=z[n+16>>2];V=w[p+32|0];O=z[p+16>>2];v[j+28>>2]=0;S=C((k>2]=s;u=c+(j+32|0)|0;c=w[g+n|0];v[u>>2]=c;c=v[p+152>>2]+B(c,12)|0;k=z[c+8>>2];l=z[c>>2];m=z[c+4>>2];s=(1-s<<4)+W|0;q=z[s>>2];o=z[s+4>>2];r=z[s+8>>2];x=z[p+80>>2];y=z[p+48>>2];E=z[p+64>>2];A=z[p+84>>2];L=z[p+52>>2];P=z[p+68>>2];G=z[p+88>>2];H=z[p+56>>2];I=z[p+72>>2];c=d;M=c<<4;u=M+(j+128|0)|0;z[u+12>>2]=z[s+12>>2];z[u+8>>2]=r;z[u+4>>2]=o;z[u>>2]=q;s=M+(j- -64|0)|0;v[s+12>>2]=0;u=M+(j+192|0)|0;v[u+12>>2]=0;G=C(C(G*k)+C(C(H*l)+C(m*I)));z[s+8>>2]=G;A=C(C(A*k)+C(C(L*l)+C(m*P)));z[s+4>>2]=A;k=C(C(x*k)+C(C(y*l)+C(m*E)));z[s>>2]=k;l=C(r-G);z[u+8>>2]=l;m=C(o-A);z[u+4>>2]=m;k=C(q-k);z[u>>2]=k;d=c+1|0;v[j+28>>2]=d;n=n+1|0;if((T|0)!=(n|0)){continue}break}g:{h:{switch(c-1|0){case 0:q=z[j+200>>2];k=C(z[j+216>>2]-q);o=z[j+192>>2];l=C(z[j+208>>2]-o);r=z[j+196>>2];m=C(z[j+212>>2]-r);x=C(C(k*k)+C(C(l*l)+C(m*m)));if(!(x<=C(1.1920928955078125e-7))){break g}v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break e;case 1:jY(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}}Q_(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e}v[j+316>>2]=0;N=k;k=C(F(C(C(C(C(C(-o)*l)-C(m*r))-C(q*k))/x),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=q+C(N*k);z[j+308>>2]=r+C(m*k);z[j+304>>2]=o+C(l*k);break e}k=z[c+8>>2];m=z[c>>2];l=z[c+4>>2];v[j+268>>2]=0;c=C(C(k*k)+C(C(m*m)+C(l*l)))>C(0);k=c?k:C(0);z[j+264>>2]=k;l=c?l:C(0);z[j+260>>2]=l;m=c?m:C(1);z[j+256>>2]=m;q=C(C(1)/C(K(C(C(k*k)+C(C(m*m)+C(l*l))))));x=C(k*q);y=C(m*q);o=C(34028234663852886e22);r=C(l*q);break d}v[j+316>>2]=0;z[j+312>>2]=l;z[j+308>>2]=m;z[j+304>>2]=k}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];o=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));if(!(S>2]=v[j+296>>2];c=v[j+292>>2];v[j+272>>2]=v[j+288>>2];v[j+276>>2]=c;c=v[a+4>>2];n=c+52|0;p=v[j+28>>2]<<2;o=C(-m);s=c+56|0;u=c+68|0;M=c+72|0;d=C(C(C(z[c+48>>2]*o)-C(z[n>>2]*l))-C(z[s>>2]*k))>C(C(C(z[c+64>>2]*o)-C(z[u>>2]*l))-C(z[M>>2]*k));v[p+(j+48|0)>>2]=d;o=z[(d?s:M)>>2];P=z[(d?c+48|0:c- -64|0)>>2];G=z[(d?n:u)>>2];Y=z[j+268>>2];c=v[b+4>>2];H=z[c+56>>2];I=z[c+52>>2];Q=z[c+72>>2];n=c- -64|0;R=z[n>>2];Z=z[c+68>>2];D=z[c+88>>2];J=z[c+80>>2];_=z[c+84>>2];$=z[c+48>>2];v[j+316>>2]=0;N=D;D=k;aa=J;J=m;O=l;z[j+312>>2]=C(N*k)+C(C(aa*m)+C(l*_));z[j+308>>2]=C(Q*k)+C(C(R*m)+C(l*Z));z[j+304>>2]=C(H*k)+C(C($*m)+C(l*I));d=IV(c,j+304|0);v[p+(j+32|0)>>2]=d;d=v[c+152>>2]+B(d,12)|0;k=z[d+8>>2];l=z[d>>2];m=z[d+4>>2];Q=C(C(z[c+88>>2]*k)+C(C(z[c+56>>2]*l)+C(m*z[c+72>>2])));H=C(o-Q);R=C(C(z[c+80>>2]*k)+C(C(z[c+48>>2]*l)+C(m*z[n>>2])));I=C(P-R);l=C(C(z[c+84>>2]*k)+C(C(z[c+52>>2]*l)+C(m*z[c+68>>2])));k=C(G-l);m=C(C(x*H)+C(C(y*I)+C(r*k)));if(m>X){b=0;if(!f){break a}d=v[j+28>>2];t[h|0]=d;if(!d){break a}a=0;if((d|0)!=1){i=d&-2;c=0;while(1){e=a<<2;n=j+48|0;t[a+f|0]=v[e+n>>2];p=j+32|0;t[a+g|0]=v[p+e>>2];e=a|1;h=e<<2;t[e+f|0]=v[h+n>>2];t[e+g|0]=v[h+p>>2];a=a+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}}if(!(d&1)){break a}c=a<<2;t[a+f|0]=v[c+(j+48|0)>>2];t[a+g|0]=v[c+(j+32|0)>>2];break a}c=v[j+28>>2];if(m>C(q*C(.9997749924659729))){i:{if(!f){break i}t[h|0]=c;if(!c){break i}n=0;if((c|0)!=1){h=c&-2;d=0;while(1){a=n<<2;p=j+48|0;t[f+n|0]=v[a+p>>2];s=j+32|0;t[g+n|0]=v[s+a>>2];a=n|1;b=a<<2;t[a+f|0]=v[b+p>>2];t[a+g|0]=v[b+s>>2];n=n+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(c&1)){break i}a=n<<2;t[f+n|0]=v[a+(j+48|0)>>2];t[g+n|0]=v[a+(j+32|0)>>2]}z[i+32>>2]=y;v[i+44>>2]=0;z[i+40>>2]=x;z[i+36>>2]=r;JV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,c);j:{if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;a=v[j+292>>2];v[i+68>>2]=v[j+288>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+296>>2];break j}k=z[j+304>>2];l=z[j+308>>2];m=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=m-C(E*x);z[i+4>>2]=l-C(E*r);z[i>>2]=k-C(E*y);k=z[j>>2];l=z[j+4>>2];m=z[j+8>>2];v[i+28>>2]=0;z[i+24>>2]=m+C(A*x);z[i+20>>2]=l+C(A*r);z[i+16>>2]=k+C(A*y);q=C(q-L)}z[i+64>>2]=q;b=2;break a}n=c<<4;d=n+(j+128|0)|0;v[d+12>>2]=0;z[d+8>>2]=o;z[d+4>>2]=G;z[d>>2]=P;d=n+(j- -64|0)|0;v[d+12>>2]=0;z[d+8>>2]=Q;z[d+4>>2]=l;z[d>>2]=R;d=n+(j+192|0)|0;v[d+12>>2]=0;z[d+8>>2]=H;z[d+4>>2]=k;z[d>>2]=I;v[j+28>>2]=c+1;k:{l:{switch(c-1|0){case 0:o=z[j+200>>2];k=C(z[j+216>>2]-o);r=z[j+192>>2];l=C(z[j+208>>2]-r);x=z[j+196>>2];m=C(z[j+212>>2]-x);y=C(C(k*k)+C(C(l*l)+C(m*m)));if(y<=C(1.1920928955078125e-7)){v[j+28>>2]=1;c=v[j+196>>2];v[j+304>>2]=v[j+192>>2];v[j+308>>2]=c;c=v[j+204>>2];v[j+312>>2]=v[j+200>>2];v[j+316>>2]=c;break k}v[j+316>>2]=0;N=k;k=C(F(C(C(C(C(C(-r)*l)-C(m*x))-C(o*k))/y),C(1)));k=k>C(0)?k:C(0);z[j+312>>2]=o+C(N*k);z[j+308>>2]=x+C(m*k);z[j+304>>2]=r+C(l*k);break k;case 1:jY(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:Q_(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}}v[j+316>>2]=0;z[j+312>>2]=H;z[j+308>>2]=k;z[j+304>>2]=I}c=v[j+308>>2];v[j+256>>2]=v[j+304>>2];v[j+260>>2]=c;c=v[j+316>>2];v[j+264>>2]=v[j+312>>2];v[j+268>>2]=c;k=z[j+264>>2];m=z[j+256>>2];l=z[j+260>>2];o=C(K(C(C(k*k)+C(C(m*m)+C(l*l)))));y=C(C(1)/o);x=C(k*y);r=C(l*y);y=C(m*y);if(oS){continue}break}n=v[j+28>>2];if(!(o>2];u=j+32|0;t[a+g|0]=v[u+c>>2];c=a|1;h=c<<2;t[c+f|0]=v[h+s>>2];t[c+g|0]=v[h+u>>2];a=a+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(b&1)){break m}b=a<<2;t[a+f|0]=v[b+(j+48|0)>>2];t[a+g|0]=v[b+(j+32|0)>>2]}v[j+296>>2]=v[j+280>>2];a=v[j+276>>2];v[j+288>>2]=v[j+272>>2];v[j+292>>2]=a;z[j+268>>2]=Y;z[j+256>>2]=J;z[j+260>>2]=O;z[j+264>>2]=D;JV(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,n);v[i+60>>2]=0;z[i+56>>2]=x;z[i+52>>2]=r;z[i+48>>2]=y;v[i+44>>2]=0;k=C(C(1)/q);l=C(D*k);z[i+40>>2]=l;m=C(O*k);z[i+36>>2]=m;k=C(J*k);z[i+32>>2]=k;if(e){a=v[j+308>>2];v[i>>2]=v[j+304>>2];v[i+4>>2]=a;a=v[j+316>>2];v[i+8>>2]=v[j+312>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;z[i+64>>2]=q;a=v[j+276>>2];v[i+68>>2]=v[j+272>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+280>>2];b=4;break a}o=z[j+304>>2];r=z[j+308>>2];D=z[j+312>>2];v[i+12>>2]=0;z[i+8>>2]=D-C(E*l);z[i+4>>2]=r-C(E*m);z[i>>2]=o-C(E*k);o=z[j>>2];r=z[j+4>>2];D=z[j+8>>2];z[i+64>>2]=q-L;v[i+28>>2]=0;z[i+24>>2]=D+C(A*l);z[i+20>>2]=r+C(A*m);z[i+16>>2]=o+C(A*k);b=2;if(q<=L){break a}b=4;break a}if(f){break b}b=5;break a}n=v[j+28>>2]}t[h|0]=n;b=5;if(!n){break a}a=0;if((n|0)!=1){h=n&-2;c=0;while(1){d=a<<2;i=j+48|0;t[a+f|0]=v[d+i>>2];p=j+32|0;t[a+g|0]=v[p+d>>2];d=a|1;e=d<<2;t[d+f|0]=v[e+i>>2];t[d+g|0]=v[e+p>>2];a=a+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(n&1)){break a}c=a<<2;t[a+f|0]=v[c+(j+48|0)>>2];t[a+g|0]=v[c+(j+32|0)>>2]}xa=j+320|0;return b}function uv(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=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0);h=xa-576|0;xa=h;k=v[f>>2];v[h+568>>2]=0;v[h+572>>2]=0;v[h+560>>2]=0;v[h+564>>2]=0;f=v[b+40>>2];T=v[b+8>>2];p=v[b+12>>2];i=z[b+4>>2];v[h+556>>2]=0;v[h+548>>2]=T;v[h+552>>2]=p;z[h+544>>2]=i;D=z[a+4>>2];z[h+528>>2]=z[e>>2];A=z[c+20>>2];E=z[c+24>>2];u=z[c>>2];x=z[c+4>>2];y=z[c+8>>2];m=z[c+12>>2];Q=z[c+16>>2];v[h+524>>2]=0;z[h+520>>2]=E;z[h+516>>2]=A;z[h+512>>2]=Q;z[h+508>>2]=m;z[h+504>>2]=y;z[h+500>>2]=x;z[h+496>>2]=u;q=z[d+20>>2];F=z[d+24>>2];o=z[d>>2];r=z[d+4>>2];n=z[d+8>>2];G=z[d+12>>2];s=z[d+16>>2];v[h+492>>2]=0;z[h+488>>2]=F;z[h+484>>2]=q;z[h+480>>2]=s;z[h+476>>2]=G;z[h+472>>2]=n;z[h+468>>2]=r;z[h+464>>2]=o;L=C(C(C(y*o)-C(n*u))+C(C(x*G)-C(m*r)));N=C(C(C(x*n)-C(r*y))+C(C(u*G)-C(m*o)));H=C(C(C(u*r)-C(o*x))+C(C(y*G)-C(m*n)));R=z[e+8>>2];l=C(R*C(.05000000074505806));j=C(i*z[f+52>>2]);i=C(z[f+56>>2]*z[h+548>>2]);j=i>=j?j:i;i=C(z[f+60>>2]*z[h+552>>2]);i=C((i>=j?j:i)*C(.25));i=i>l?l:i;S=i>D?D:i;i=C(-o);O=C(C(m*G)-C(C(C(u*i)-C(x*r))-C(n*y)));m=C(Q-s);q=C(A-q);s=C(E-F);l=C(C(C(i*m)-C(q*r))-C(n*s));j=C(C(G*G)+C(-.5));i=C(C(C(G*C(C(r*m)-C(o*q)))+C(j*s))-C(n*l));I=C(i+i);i=C(C(C(j*q)+C(G*C(C(o*s)-C(n*m))))-C(r*l));J=C(i+i);i=C(C(C(j*m)+C(G*C(C(n*q)-C(r*s))))-C(o*l));K=C(i+i);a:{b:{c=w[k+64|0];if(c){q=C(N+N);i=C(C(1)-C(N*q));l=C(L+L);j=C(L*l);U=C(i-j);M=i;F=C(H+H);i=C(H*F);V=C(M-i);G=C(C(C(1)-j)-i);i=C(S*C(.05000000074505806));r=C(i*i);j=C(H*l);i=C(O*q);n=C(j-i);s=C(H*q);l=C(O*l);o=C(s+l);u=C(j+i);j=C(L*q);i=C(O*F);x=C(j-i);y=C(s-l);m=C(j+i);a=c;while(1){e=v[k+76>>2];a=a-1|0;p=e+B(a,48)|0;M=z[p+24>>2];A=z[p+40>>2];s=z[p+8>>2];l=z[p>>2];j=z[p+4>>2];i=C(I+C(C(U*s)+C(C(y*l)+C(u*j))));E=C(K+C(C(o*s)+C(C(G*l)+C(x*j))));q=z[p+16>>2];F=z[p+32>>2];s=C(J+C(C(n*s)+C(C(m*l)+C(V*j))));l=z[p+20>>2];j=z[p+36>>2];P=C(C(A*C(i-M))+C(C(C(E-q)*F)+C(C(s-l)*j)));i=C(M-C(i-C(A*P)));A=C(i*i);i=C(q-C(E-C(F*P)));M=C(i*i);i=C(l-C(s-C(j*P)));c:{if(r>2];v[p>>2]=v[e>>2];v[p+4>>2]=d;d=v[e+44>>2];v[p+40>>2]=v[e+40>>2];v[p+44>>2]=d;d=v[e+36>>2];v[p+32>>2]=v[e+32>>2];v[p+36>>2]=d;d=v[e+28>>2];v[p+24>>2]=v[e+24>>2];v[p+28>>2]=d;d=v[e+20>>2];v[p+16>>2]=v[e+16>>2];v[p+20>>2]=d;d=v[e+12>>2];v[p+8>>2]=v[e+8>>2];v[p+12>>2]=d;break c}z[p+44>>2]=P}if(a){continue}break}a=w[k+64|0]}else{a=0}d:{if((a|0)!=(c|0)){break d}a=c<<2;i=C(K-z[k+16>>2]);l=i>C(0)?i:C(-i);i=C(J-z[k+20>>2]);i=i>C(0)?i:C(-i);j=i<=l?l:i;i=C(I-z[k+24>>2]);i=(i>C(0)?i:C(-i))>=C(0)?l:C(0);if(C(S*z[a+103172>>2])<(i<=j?j:i)){break d}if(!(z[a+103204>>2]>C(C(O*z[k+12>>2])+C(C(H*z[k+8>>2])+C(C(N*z[k>>2])+C(L*z[k+4>>2])))))){break b}}v[k+28>>2]=0;z[k+24>>2]=I;z[k+20>>2]=J;z[k+16>>2]=K;z[k+12>>2]=O;z[k+8>>2]=H;z[k+4>>2]=L;z[k>>2]=N;d=v[b+16>>2];c=v[b+20>>2];a=v[b+28>>2];v[h+456>>2]=v[b+24>>2];v[h+460>>2]=a;v[h+448>>2]=d;v[h+452>>2]=c;a=0;e:{if(z[b+4>>2]!=C(1)){break e}a=0;if(z[b+8>>2]!=C(1)){break e}a=z[b+12>>2]==C(1)}i=z[f+32>>2];c=v[f+28>>2];b=v[f+24>>2];t[h+320|0]=0;v[h+316>>2]=0;v[h+432>>2]=f;v[h+300>>2]=0;z[h+296>>2]=i;v[h+288>>2]=b;v[h+292>>2]=c;v[h+440>>2]=v[f+40>>2]+B(w[f+39|0],20);t[h+444|0]=w[f+38|0];j=C(z[f+52>>2]*z[h+544>>2]);i=C(z[f+56>>2]*z[h+548>>2]);j=i>=j?j:i;i=C(z[f+60>>2]*z[h+552>>2]);i=i>=j?j:i;z[h+312>>2]=i*C(.02500000037252903);z[h+308>>2]=i*C(.05000000074505806);z[h+304>>2]=i*C(.10000000149011612);b=a;GV(h+544|0,h+448|0,h+336|0,h+384|0,h+288|0,b);v[h+436>>2]=v[f+44>>2];v[h+268>>2]=0;z[h+264>>2]=I;z[h+260>>2]=J;v[h+252>>2]=0;z[h+248>>2]=I;z[h+244>>2]=J;z[h+272>>2]=D;v[h+204>>2]=0;z[h+200>>2]=I;z[h+196>>2]=J;z[h+192>>2]=K;v[h+220>>2]=4;z[h+256>>2]=K;z[h+240>>2]=K;t[h+224|0]=1;z[h+216>>2]=D;z[h+212>>2]=D;z[h+208>>2]=D;v[h+152>>2]=0;v[h+156>>2]=0;v[h+144>>2]=0;v[h+148>>2]=0;v[h+136>>2]=0;v[h+140>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+120>>2]=0;v[h+124>>2]=0;v[h+112>>2]=0;v[h+116>>2]=0;v[h+176>>2]=0;v[h+104>>2]=141148;v[h+108>>2]=h+192;v[h+92>>2]=0;z[h+88>>2]=I-z[h+296>>2];z[h+84>>2]=J-z[h+292>>2];z[h+80>>2]=K-z[h+288>>2];a=0;f:{g:{h:{i:{j:{if(b){v[h+72>>2]=144404;v[h+76>>2]=h+288;c=x1(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}v[h+72>>2]=141216;v[h+76>>2]=h+288;c=IX(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=v[h+564>>2];c=v[k+76>>2];b=c;v[b>>2]=v[h+560>>2];v[b+4>>2]=a;a=v[h+572>>2];v[b+8>>2]=v[h+568>>2];v[b+12>>2]=a;a=v[h+132>>2];v[b+16>>2]=v[h+128>>2];v[b+20>>2]=a;a=v[h+140>>2];v[b+24>>2]=v[h+136>>2];v[b+28>>2]=a;b=v[h+144>>2];a=v[h+148>>2];i=z[h+176>>2];z[c+40>>2]=z[h+152>>2];z[c+44>>2]=i;v[c+32>>2]=b;v[c+36>>2]=a;a=1;t[k+64|0]=1;n=z[h+152>>2];o=z[h+148>>2];q=z[h+512>>2];F=z[h+516>>2];s=z[h+520>>2];r=z[h+476>>2];u=z[h+472>>2];x=z[h+144>>2];y=z[h+464>>2];m=z[h+468>>2];i=z[h+176>>2];b=v[g+4096>>2];v[g+4096>>2]=b+1;b=(b<<6)+g|0;v[b+52>>2]=-1;z[b+12>>2]=i-D;v[b+28>>2]=0;A=C(C(r*r)+C(-.5));E=C(C(u*n)+C(C(y*x)+C(m*o)));i=C(C(C(r*C(C(y*o)-C(x*m)))+C(n*A))+C(u*E));l=C(i+i);z[b+8>>2]=l;i=C(C(m*E)+C(C(A*o)+C(r*C(C(u*x)-C(n*y)))));j=C(i+i);z[b+4>>2]=j;i=C(C(y*E)+C(C(x*A)+C(r*C(C(m*n)-C(o*u)))));i=C(i+i);z[b>>2]=i;z[b+24>>2]=s-C(D*l);z[b+20>>2]=F-C(D*j);z[b+16>>2]=q-C(D*i);break a}a=g2(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){v[h+72>>2]=144404;v[h+76>>2]=h+288;c=w[k+66|0];z[h+48>>2]=R;a=v[h+60>>2];v[h+8>>2]=v[h+56>>2];v[h+12>>2]=a;a=v[h+52>>2];v[h>>2]=v[h+48>>2];v[h+4>>2]=a;a=K_(h+104|0,h+72|0,k+67|0,k+71|0,c,1,h,h+112|0);break k}v[h+72>>2]=141216;v[h+76>>2]=h+288;c=w[k+66|0];z[h+32>>2]=R;a=v[h+44>>2];v[h+24>>2]=v[h+40>>2];v[h+28>>2]=a;a=v[h+36>>2];v[h+16>>2]=v[h+32>>2];v[h+20>>2]=a;a=K_(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=v[h+564>>2];c=v[k+76>>2];b=c;v[b>>2]=v[h+560>>2];v[b+4>>2]=a;a=v[h+572>>2];v[b+8>>2]=v[h+568>>2];v[b+12>>2]=a;a=v[h+132>>2];v[b+16>>2]=v[h+128>>2];v[b+20>>2]=a;a=v[h+140>>2];v[b+24>>2]=v[h+136>>2];v[b+28>>2]=a;b=v[h+144>>2];a=v[h+148>>2];i=z[h+176>>2];z[c+40>>2]=z[h+152>>2];z[c+44>>2]=i;v[c+32>>2]=b;v[c+36>>2]=a;a=1;t[k+64|0]=1;n=z[h+152>>2];o=z[h+148>>2];q=z[h+512>>2];F=z[h+516>>2];s=z[h+520>>2];r=z[h+476>>2];u=z[h+472>>2];x=z[h+144>>2];y=z[h+464>>2];m=z[h+468>>2];i=z[h+176>>2];b=v[g+4096>>2];v[g+4096>>2]=b+1;b=(b<<6)+g|0;v[b+52>>2]=-1;z[b+12>>2]=i-D;v[b+28>>2]=0;A=C(C(r*r)+C(-.5));E=C(C(u*n)+C(C(y*x)+C(m*o)));i=C(C(C(r*C(C(y*o)-C(x*m)))+C(n*A))+C(u*E));l=C(i+i);z[b+8>>2]=l;i=C(C(m*E)+C(C(A*o)+C(r*C(C(u*x)-C(n*y)))));j=C(i+i);z[b+4>>2]=j;i=C(C(y*E)+C(C(x*A)+C(r*C(C(m*n)-C(o*u)))));i=C(i+i);z[b>>2]=i;z[b+24>>2]=s-C(D*l);z[b+20>>2]=F-C(D*j);z[b+16>>2]=q-C(D*i);break a}a=g2(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=v[k+76>>2];o=z[b+36>>2];u=z[b+40>>2];i=z[b+44>>2];a=1;x=z[b+32>>2];F=z[h+516>>2];s=z[h+520>>2];y=z[h+472>>2];m=z[h+464>>2];A=z[h+468>>2];n=z[h+476>>2];b=v[g+4096>>2];v[g+4096>>2]=b+1;b=(b<<6)+g|0;v[b+28>>2]=0;v[b+52>>2]=-1;z[b+12>>2]=i-D;E=C(C(y*u)+C(C(m*x)+C(o*A)));q=C(C(n*n)+C(-.5));i=C(C(y*E)+C(C(n*C(C(m*o)-C(x*A)))+C(u*q)));l=C(i+i);z[b+8>>2]=l;i=C(C(A*E)+C(C(n*C(C(y*x)-C(u*m)))+C(o*q)));j=C(i+i);z[b+4>>2]=j;i=C(C(m*E)+C(C(n*C(C(A*u)-C(o*y)))+C(x*q)));i=C(i+i);z[b>>2]=i;z[b+24>>2]=s-C(D*l);z[b+20>>2]=F-C(D*j);z[b+16>>2]=Q-C(D*i)}xa=h+576|0;return a|0}function Av(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=0,x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=0,Y=C(0),Z=C(0),_=C(0),$=C(0),aa=0,ba=0;h=xa-544|0;xa=h;O=z[b+12>>2];T=z[b+8>>2];f=v[f>>2];R=z[b+4>>2];z[h+528>>2]=z[e>>2];y=z[c+20>>2];L=z[c+24>>2];n=z[c>>2];m=z[c+4>>2];l=z[c+8>>2];q=z[c+12>>2];A=z[c+16>>2];v[h+524>>2]=0;z[h+520>>2]=L;z[h+516>>2]=y;z[h+512>>2]=A;z[h+508>>2]=q;z[h+504>>2]=l;z[h+500>>2]=m;z[h+496>>2]=n;M=z[d+20>>2];G=z[d+24>>2];o=z[d>>2];k=z[d+4>>2];j=z[d+8>>2];i=z[d+12>>2];U=z[d+16>>2];v[h+492>>2]=0;z[h+488>>2]=G;z[h+484>>2]=M;z[h+480>>2]=U;z[h+476>>2]=i;z[h+472>>2]=j;z[h+468>>2]=k;z[h+464>>2]=o;x=C(C(C(m*j)-C(k*l))+C(C(n*i)-C(q*o)));E=C(x+x);s=C(C(C(l*o)-C(j*n))+C(C(m*i)-C(q*k)));I=C(s+s);N=C(C(1)-C(x*E));P=C(s*I);S=C(N-P);p=C(C(C(n*k)-C(o*m))+C(C(l*i)-C(q*j)));Q=C(p+p);J=C(p*Q);N=C(N-J);P=C(C(C(1)-P)-J);J=z[a+4>>2];z[h+448>>2]=J;Z=z[e+8>>2];D=C(Z*C(.15000000596046448));H=R<=T?R:T;_=H<=O?H:O;Y=C(_*C(.15000000596046448));D=DJ?J:D;D=C(p*I);V=C(-o);n=C(C(q*i)-C(C(C(n*V)-C(m*k))-C(j*l)));m=C(n*E);q=C(D-m);l=C(p*E);H=C(n*I);I=C(l+H);D=C(D+m);m=C(s*E);F=C(n*Q);E=C(m-F);Q=C(l-H);H=C(m+F);A=C(A-U);y=C(y-M);L=C(L-G);M=C(C(C(V*A)-C(y*k))-C(j*L));G=C(C(i*i)+C(-.5));m=C(C(C(i*C(C(k*A)-C(o*y)))+C(G*L))-C(j*M));m=C(m+m);l=C(C(C(G*y)+C(i*C(C(o*L)-C(j*A))))-C(k*M));l=C(l+l);i=C(C(C(G*A)+C(i*C(C(j*y)-C(k*L))))-C(o*M));o=C(i+i);k=z[a+8>>2];a=w[f+64|0];if(a){i=C(J*C(.800000011920929));L=C(i*i);c=a;while(1){u=v[f+76>>2];c=c-1|0;d=u+B(c,48)|0;j=z[d+24>>2];M=z[d+40>>2];i=z[d+8>>2];A=z[d>>2];y=z[d+4>>2];G=C(m+C(C(S*i)+C(C(Q*A)+C(D*y))));U=C(o+C(C(I*i)+C(C(P*A)+C(E*y))));V=z[d+16>>2];F=z[d+32>>2];A=C(l+C(C(q*i)+C(C(H*A)+C(N*y))));y=z[d+20>>2];$=z[d+36>>2];i=C(C(M*C(G-j))+C(C(C(U-V)*F)+C(C(A-y)*$)));j=C(j-C(G-C(M*i)));G=C(j*j);j=C(V-C(U-C(F*i)));F=C(j*j);j=C(y-C(A-C($*i)));a:{if(L>2];v[d>>2]=v[u>>2];v[d+4>>2]=r;r=v[u+44>>2];v[d+40>>2]=v[u+40>>2];v[d+44>>2]=r;r=v[u+36>>2];v[d+32>>2]=v[u+32>>2];v[d+36>>2]=r;r=v[u+28>>2];v[d+24>>2]=v[u+24>>2];v[d+28>>2]=r;r=v[u+20>>2];v[d+16>>2]=v[u+16>>2];v[d+20>>2]=r;r=v[u+12>>2];v[d+8>>2]=v[u+8>>2];v[d+12>>2]=r;break a}z[d+44>>2]=i}if(c){continue}break}u=w[f+64|0]}b:{c:{d:{e:{if((a|0)!=(u|0)){break e}c=a<<2;i=C(o-z[f+16>>2]);i=i>C(0)?i:C(-i);j=C(l-z[f+20>>2]);j=j>C(0)?j:C(-j);j=i>=j?i:j;F=i;i=C(m-z[f+24>>2]);i=(i>C(0)?i:C(-i))>=C(0)?F:C(0);if(C(J*z[c+103172>>2])<(i<=j?j:i)){break e}if(!(z[c+103204>>2]>C(C(n*z[f+12>>2])+C(C(p*z[f+8>>2])+C(C(x*z[f>>2])+C(s*z[f+4>>2])))))){break d}}c=0;v[f+28>>2]=0;z[f+24>>2]=m;z[f+20>>2]=l;z[f+16>>2]=o;z[f+12>>2]=n;z[f+8>>2]=p;z[f+4>>2]=s;z[f>>2]=x;v[h+444>>2]=0;z[h+440>>2]=m;z[h+436>>2]=l;v[h+428>>2]=0;z[h+424>>2]=S;z[h+420>>2]=q;v[h+412>>2]=0;z[h+408>>2]=D;z[h+404>>2]=N;z[h+432>>2]=o;v[h+396>>2]=0;z[h+416>>2]=I;z[h+384>>2]=P;z[h+400>>2]=E;z[h+388>>2]=H;z[h+392>>2]=Q;t[h+352|0]=0;v[h+348>>2]=3;d=v[h+488>>2];r=v[h+492>>2];W=v[h+484>>2];X=v[h+480>>2];v[h+380>>2]=0;z[h+376>>2]=O;z[h+372>>2]=T;v[h+320>>2]=X;v[h+324>>2]=W;v[h+328>>2]=d;v[h+332>>2]=r;z[h+368>>2]=R;i=C(_*C(.05000000074505806));z[h+344>>2]=i;z[h+340>>2]=i;z[h+336>>2]=Y;v[h+300>>2]=0;i=C(k*C(0));j=C(C(S*i)+C(C(Q*k)+C(D*i)));z[h+296>>2]=m-j;q=C(C(q*i)+C(C(H*k)+C(N*i)));z[h+292>>2]=l-q;v[h+284>>2]=0;z[h+280>>2]=m+j;z[h+276>>2]=l+q;v[h+252>>2]=4;d=v[h+436>>2];v[h+224>>2]=v[h+432>>2];v[h+228>>2]=d;d=v[h+444>>2];v[h+232>>2]=v[h+440>>2];v[h+236>>2]=d;d=v[h+460>>2];v[h+312>>2]=v[h+456>>2];v[h+316>>2]=d;d=v[h+452>>2];v[h+304>>2]=v[h+448>>2];v[h+308>>2]=d;i=C(C(I*i)+C(C(P*k)+C(E*i)));z[h+288>>2]=o-i;z[h+272>>2]=o+i;i=z[h+304>>2];d=1;t[h+256|0]=1;z[h+248>>2]=i;z[h+244>>2]=i;z[h+240>>2]=i;v[h+216>>2]=141148;v[h+220>>2]=h+224;v[h+208>>2]=141808;v[h+212>>2]=h+320;v[h+168>>2]=0;v[h+172>>2]=0;r=h+160|0;v[r>>2]=0;v[r+4>>2]=0;v[h+152>>2]=0;v[h+156>>2]=0;W=h+144|0;v[W>>2]=0;v[W+4>>2]=0;v[h+136>>2]=0;v[h+140>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+192>>2]=0;v[h+124>>2]=0;z[h+120>>2]=z[h+232>>2]-z[h+328>>2];z[h+116>>2]=z[h+228>>2]-z[h+324>>2];z[h+112>>2]=z[h+224>>2]-z[h+320>>2];X=f+67|0;aa=f+71|0;ba=YX(h+216|0,h+208|0,h+112|0,h+528|0,1,X,aa,f+66|0,h+128|0);v[h+108>>2]=0;f:{g:{h:{i:{switch(ba|0){case 4:z[h+96>>2]=z[b+4>>2];z[h+100>>2]=z[b+8>>2];z[h+104>>2]=z[b+12>>2];c=w1(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,z[h+336>>2],h+528|0,1,z[e+8>>2]);break b;case 2:q=z[h+136>>2];i=C(q-z[h+440>>2]);E=z[h+128>>2];k=C(E-z[h+432>>2]);O=z[h+132>>2];j=C(O-z[h+436>>2]);F=C(C(z[h+392>>2]*i)+C(C(z[h+384>>2]*k)+C(j*z[h+388>>2])));break h;case 0:break b;default:break i}}c=w[f+66|0];z[h+80>>2]=Z;r=v[h+92>>2];v[h+8>>2]=v[h+88>>2];v[h+12>>2]=r;r=v[h+84>>2];v[h>>2]=v[h+80>>2];v[h+4>>2]=r;if((K_(h+216|0,h+208|0,X,aa,c,1,h,h+128|0)|0)!=5){break g}q=z[h+136>>2];i=C(q-z[h+440>>2]);E=z[h+128>>2];k=C(E-z[h+432>>2]);O=z[h+132>>2];j=C(O-z[h+436>>2]);F=C(C(z[h+392>>2]*i)+C(C(z[h+384>>2]*k)+C(j*z[h+388>>2])))}T=F;R=z[h+164>>2];I=z[h+168>>2];S=z[h+160>>2];N=z[h+192>>2];P=z[h+408>>2];D=z[h+400>>2];Q=z[h+404>>2];H=z[h+424>>2];A=z[h+416>>2];y=z[h+420>>2];d=0;v[g+12>>2]=0;z[g>>2]=T;z[g+8>>2]=C(H*i)+C(C(A*k)+C(j*y));z[g+4>>2]=C(P*i)+C(C(D*k)+C(j*Q));c=v[h+148>>2];v[g+16>>2]=v[h+144>>2];v[g+20>>2]=c;c=v[h+156>>2];v[g+24>>2]=v[h+152>>2];v[g+28>>2]=c;v[h+108>>2]=1;z[g+44>>2]=N;z[g+40>>2]=I;z[g+36>>2]=R;z[g+32>>2]=S;if(!a){break g}if((a|0)==(u|0)){break f}}z[h+64>>2]=z[b+4>>2];z[h+68>>2]=z[b+8>>2];z[h+72>>2]=z[b+12>>2];c=w1(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,z[h+336>>2],h+528|0,d,z[e+8>>2]);break b}z[h+48>>2]=J*C(.10000000149011612);z[h+44>>2]=N;z[h+40>>2]=I;z[h+36>>2]=R;z[h+32>>2]=S;v[h+28>>2]=0;i=C(q-m);k=C(E-o);j=C(O-l);o=C(C(p*i)+C(C(x*k)+C(s*j)));m=C(C(n*n)+C(-.5));l=C(C(C(m*i)-C(n*C(C(x*j)-C(k*s))))+C(p*o));z[h+24>>2]=l+l;l=C(C(s*o)+C(C(m*j)-C(n*C(C(p*k)-C(i*x)))));z[h+20>>2]=l+l;i=C(C(x*o)+C(C(m*k)-C(n*C(C(s*i)-C(j*p)))));z[h+16>>2]=i+i;a=h+16|0;w2(f,a,h+144|0,h+32|0,h+48|0);v[h+28>>2]=0;i=z[h+476>>2];k=C(C(i*i)+C(-.5));j=z[h+472>>2];p=z[h+168>>2];s=z[h+464>>2];n=z[h+160>>2];o=z[h+468>>2];x=z[h+164>>2];m=C(C(j*p)+C(C(s*n)+C(o*x)));l=C(C(C(i*C(C(s*x)-C(n*o)))+C(k*p))+C(j*m));z[h+24>>2]=l+l;l=C(C(o*m)+C(C(k*x)+C(i*C(C(j*n)-C(p*s)))));z[h+20>>2]=l+l;i=C(C(s*m)+C(C(n*k)+C(i*C(C(o*p)-C(x*j)))));z[h+16>>2]=i+i;s2(f,g,a,a,h+496|0,h+448|0,h+528|0);break c}if(!a){c=0;break b}c=1;b=v[f+76>>2];p=z[b+32>>2];i=p;s=z[b+36>>2];k=s;n=z[b+40>>2];j=n;j:{if((a|0)==1){break j}d=a-1|0;e=d&1;j=n;k=s;i=p;if((a|0)!=2){u=d&-2;d=0;while(1){a=b+B(c,48)|0;i=C(C(i+z[a+32>>2])+z[a+80>>2]);j=C(C(j+z[a+40>>2])+z[a+88>>2]);k=C(C(k+z[a+36>>2])+z[a+84>>2]);c=c+2|0;d=d+2|0;if((u|0)!=(d|0)){continue}break}}if(!e){break j}a=b+B(c,48)|0;i=C(i+z[a+32>>2]);j=C(j+z[a+40>>2]);k=C(k+z[a+36>>2])}v[h+236>>2]=0;o=z[h+472>>2];a=C(C(j*j)+C(C(i*i)+C(k*k)))>C(1.1920928955078125e-7);j=a?j:n;n=z[h+464>>2];p=a?i:p;x=z[h+468>>2];k=a?k:s;s=C(C(o*j)+C(C(n*p)+C(x*k)));i=z[h+476>>2];m=C(C(i*i)+C(-.5));l=C(C(o*s)+C(C(i*C(C(n*k)-C(p*x)))+C(j*m)));l=C(l+l);q=C(C(n*s)+C(C(i*C(C(x*j)-C(k*o)))+C(p*m)));q=C(q+q);i=C(C(x*s)+C(C(i*C(C(o*p)-C(j*n)))+C(k*m)));k=C(i+i);i=C(C(1)/C(K(C(C(l*l)+C(C(q*q)+C(k*k))))));z[h+232>>2]=l*i;z[h+228>>2]=k*i;z[h+224>>2]=q*i;a=h+224|0;s2(f,g,a,a,h+496|0,h+448|0,h+528|0)}c=1}xa=h+544|0;return c|0}function W1(a,b,c,d,e,f,g,h,i,j){var k=C(0),l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=0,ba=C(0),ca=0,da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=0,la=C(0),ma=C(0),na=C(0),oa=0,pa=0,qa=0,ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=0,wa=C(0),ya=C(0),za=C(0);m=xa+-64|0;xa=m;ja=x[c+16>>1];pa=v[a+32>>2];o=v[e+40>>2];X=z[o+40>>2];Q=z[o+36>>2];R=z[o+24>>2];r=z[o+20>>2];p=z[o+32>>2];n=z[o+16>>2];y=z[c+8>>2];q=z[o+8>>2];L=z[c>>2];l=z[o>>2];M=z[c+4>>2];k=z[o+4>>2];v[m+60>>2]=0;p=C(C(X*y)+C(C(p*L)+C(M*Q)));l=C(C(q*y)+C(C(l*L)+C(M*k)));k=C(C(R*y)+C(C(n*L)+C(M*r)));q=C(C(1)/C(K(C(C(p*p)+C(C(l*l)+C(k*k))))));z[m+56>>2]=p*q;z[m+52>>2]=k*q;z[m+48>>2]=l*q;q2(m,m+48|0);qa=x[d+16>>1];ca=v[b+32>>2];aa=w[c+18|0];S=(m-(aa<<4)|0)-16|0;o=S;xa=o;s=w[d+18|0];o=(s<<4)+16|0;N=S-o|0;xa=N;ka=N-(s+15&496)|0;xa=ka;oa=ka-o|0;xa=oa;Ba[v[v[e>>2]+16>>2]](e,ja+pa|0,aa,v[a+28>>2],S);Ba[v[v[f>>2]+16>>2]](f,ca+qa|0,w[d+18|0],v[b+28>>2],N);O=C(34028234663852886e22);da=C(-34028234663852886e22);T=C(-34028234663852886e22);E=C(-34028234663852886e22);A=C(34028234663852886e22);Y=C(34028234663852886e22);a=w[c+18|0];if(a){L=z[m+40>>2];M=z[m+24>>2];X=z[m+36>>2];Q=z[m+20>>2];l=C(-34028234663852886e22);F=C(34028234663852886e22);R=z[m+8>>2];r=z[m+4>>2];p=z[m+32>>2];n=z[m+16>>2];q=z[m>>2];e=0;k=C(34028234663852886e22);I=C(-34028234663852886e22);while(1){b=(e<<4)+S|0;v[b+12>>2]=0;P=z[b+8>>2];Z=z[b>>2];y=z[b+4>>2];z[b+8>>2]=C(L*P)+C(C(R*Z)+C(y*M));G=C(C(X*P)+C(C(r*Z)+C(y*Q)));z[b+4>>2]=G;y=C(C(p*P)+C(C(q*Z)+C(y*n)));z[b>>2]=y;l=l>G?l:G;I=y>2];sa=z[N+4>>2];ta=z[N>>2];J=z[S+8>>2];e=w[d+18|0];a:{if(!e){e=0;U=C(34028234663852886e22);q=C(-34028234663852886e22);break a}Z=C(J+z[j>>2]);da=z[m+40>>2];H=z[m+24>>2];ea=z[m+36>>2];fa=z[m+20>>2];ga=C(-34028234663852886e22);U=C(34028234663852886e22);y=z[m+56>>2];L=z[m+52>>2];M=z[m+48>>2];ha=z[m+8>>2];ia=z[m+4>>2];F=z[m+32>>2];I=z[m+16>>2];G=z[m>>2];b=0;ba=C(34028234663852886e22);O=C(-34028234663852886e22);while(1){a=b<<4;o=a+N|0;X=z[o+12>>2];Q=z[o+8>>2];p=C(Q-z[g+56>>2]);R=z[o>>2];l=C(R-z[g+48>>2]);r=z[o+4>>2];k=C(r-z[g+52>>2]);n=C(C(z[g+40>>2]*p)+C(C(z[g+32>>2]*l)+C(k*z[g+36>>2])));q=C(C(z[g+8>>2]*p)+C(C(z[g>>2]*l)+C(k*z[g+4>>2])));l=C(C(z[g+24>>2]*p)+C(C(z[g+16>>2]*l)+C(k*z[g+20>>2])));k=C(C(da*n)+C(C(ha*q)+C(l*H)));p=C(k-J);z[a+oa>>2]=p;v[o+12>>2]=0;z[o+8>>2]=J;u=C(C(ea*n)+C(C(ia*q)+C(l*fa)));z[o+4>>2]=u;D=C(C(F*n)+C(C(G*q)+C(l*I)));z[o>>2]=D;pa=uU;aa=D>ba;a=b+ka|0;b:{if(kD|D>T|(uE)){break b}ja=w[c+18|0];if(!ja){break b}a=((ja<<4)+S|0)-16|0;k=z[a>>2];l=z[a+4>>2];s=0;o=0;c:{while(1){q=k;if(k==D&l==u){break c}n=l;a=(s<<4)+S|0;k=z[a>>2];l=z[a+4>>2];if(D==k&u==l){break c}d:{if((n>u|0)==(l>u|0)){break d}P=C(l-n);n=C(C(C(q+C(1.1920928955078125e-7))*P)+C(C(u-n)*C(k-q)));q=C(D*P);a=P>C(0);if(!((a?n:q)>=(a?q:n))){break d}if((o|0)==1){break b}o=o+1|0}s=s+1|0;if((ja|0)!=(s|0)){continue}break}if(!o){break b}}a=B(v[i>>2],48)+h|0;z[a+12>>2]=X;z[a+8>>2]=Q;z[a+4>>2]=r;z[a>>2]=R;a=B(v[i>>2],48)+h|0;z[a+16>>2]=C(ha*J)+C(C(G*D)+C(ia*u));v[a+28>>2]=0;z[a+24>>2]=C(da*J)+C(C(F*D)+C(ea*u));z[a+20>>2]=C(H*J)+C(C(I*D)+C(fa*u));a=v[i>>2];v[i>>2]=a+1;a=B(a,48)+h|0;z[a+32>>2]=M;z[a+44>>2]=p;z[a+40>>2]=y;z[a+36>>2]=L;va=va+1|0;e=w[d+18|0];break b}t[a|0]=0}ga=pa?ga:u;O=qa?O:D;U=ca?U:u;ba=aa?ba:D;b=b+1|0;if(e>>>0>b>>>0){continue}break}da=C(O+C(1.1920928955078125e-7));U=C(U+C(-1.1920928955078125e-7));O=C(ba+C(-1.1920928955078125e-7));q=C(ga+C(1.1920928955078125e-7))}e:{if((e|0)==(va|0)){break e}la=z[m+52>>2];ma=z[m+48>>2];na=z[m+56>>2];a=w[c+18|0];f:{if(!a){a=0;b=0;break f}b=v[f+40>>2];r=z[d+8>>2];p=z[d>>2];l=z[d+4>>2];k=C(C(z[b+40>>2]*r)+C(C(z[b+32>>2]*p)+C(l*z[b+36>>2])));ua=k;n=C(C(z[b+8>>2]*r)+C(C(z[b>>2]*p)+C(l*z[b+4>>2])));l=C(C(z[b+24>>2]*r)+C(C(z[b+16>>2]*p)+C(l*z[b+20>>2])));k=C(C(1)/C(K(C(C(k*k)+C(C(n*n)+C(l*l))))));ea=C(ua*k);fa=C(C(z[g+40>>2]*na)+C(C(z[g+8>>2]*ma)+C(la*z[g+24>>2])));ha=C(n*k);ia=C(C(z[g+32>>2]*na)+C(C(z[g>>2]*ma)+C(la*z[g+16>>2])));F=C(l*k);I=C(C(z[g+36>>2]*na)+C(C(z[g+4>>2]*ma)+C(la*z[g+20>>2])));G=C(C(ea*fa)+C(C(ha*ia)+C(F*I)));P=z[m+40>>2];Z=z[m+36>>2];y=z[m+24>>2];L=z[m+20>>2];M=z[m+32>>2];X=z[m+16>>2];Q=z[m+8>>2];R=z[m+4>>2];r=z[m>>2];f=0;b=0;while(1){ca=(f<<4)+S|0;A=z[ca>>2];g:{if(Ada){break g}E=z[ca+4>>2];if(E>2];l=z[e+4>>2];s=0;o=0;h:{while(1){n=k;if(k==A&l==E){break h}p=l;e=N+(s<<4)|0;k=z[e>>2];l=z[e+4>>2];if(A==k&E==l){break h}i:{if((p>E|0)==(l>E|0)){break i}H=C(l-p);p=C(C(C(n+C(1.1920928955078125e-7))*H)+C(C(E-p)*C(k-n)));n=C(A*H);e=H>C(0);if(!((e?p:n)>=(e?n:p))){break i}if((o|0)==1){break g}o=o+1|0}s=s+1|0;if((aa|0)!=(s|0)){continue}break}if(!o){break g}}k=z[ca+8>>2];Y=C(C(P*k)+C(C(M*A)+C(E*Z)));H=C(C(Q*k)+C(C(r*A)+C(E*R)));p=C(C(y*k)+C(C(X*A)+C(E*L)));n=C(z[g+56>>2]+C(C(z[g+40>>2]*Y)+C(C(z[g+8>>2]*H)+C(p*z[g+24>>2]))));l=C(z[g+48>>2]+C(C(z[g+32>>2]*Y)+C(C(z[g>>2]*H)+C(p*z[g+16>>2]))));k=C(z[g+52>>2]+C(C(z[g+36>>2]*Y)+C(C(z[g+4>>2]*H)+C(p*z[g+20>>2]))));A=C(C(C(ea*C(ra-n))+C(C(ha*C(ta-l))+C(F*C(sa-k))))/G);if(A>z[j>>2]){break g}a=B(v[i>>2],48)+h|0;v[a+12>>2]=0;z[a+8>>2]=n+C(fa*A);z[a+4>>2]=k+C(I*A);z[a>>2]=l+C(ia*A);a=B(v[i>>2],48)+h|0;z[a+16>>2]=H;v[a+28>>2]=0;z[a+24>>2]=Y;z[a+20>>2]=p;a=v[i>>2];v[i>>2]=a+1;a=B(a,48)+h|0;z[a+32>>2]=ma;z[a+44>>2]=A;z[a+40>>2]=na;z[a+36>>2]=la;b=b+1|0;a=w[c+18|0]}f=f+1|0;if(f>>>0<(a&255)>>>0){continue}break}}if((a&255)==(b|0)){break e}f=w[d+18|0];if(!f){break e}e=f-1|0;E=z[m+20>>2];D=z[m+24>>2];A=z[m+36>>2];U=z[m+40>>2];Y=z[m+16>>2];da=z[m+4>>2];H=z[m>>2];ga=z[m+8>>2];ra=z[m+32>>2];o=a;s=0;while(1){b=s;j:{if(!(w[e+ka|0]?1:w[b+ka|0])){break j}if(!(o&255)){o=0;break j}s=b<<4;o=s+N|0;V=z[o+4>>2];f=e<<4;e=f+N|0;_=z[e+4>>2];sa=V>_?V:_;W=z[o>>2];$=z[e>>2];ta=W>$?W:$;ea=V<_?V:_;fa=W<$?W:$;ha=C(_-V);ia=C($-W);F=C(J+z[s+oa>>2]);I=C(C(J+z[f+oa>>2])-F);e=(((a&255)<<4)+S|0)-16|0;k=z[e+4>>2];l=z[e>>2];s=0;while(1){n=l;q=k;e=(s<<4)+S|0;k=z[e+4>>2];l=z[e>>2];k:{if(fa>(l>n?l:n)|ta<(l(k>q?k:q))){break k}r=C(C(C(l-W)*C(q-V))-C(C(k-V)*C(n-W)));p=C(C(C(l-$)*C(q-_))-C(C(k-_)*C(n-$)));if(!(C(r*p)z[j>>2]){break k}P=z[g+48>>2];Z=z[g+32>>2];y=z[g>>2];L=z[g+16>>2];M=z[g+52>>2];X=z[g+36>>2];Q=z[g+4>>2];R=z[g+20>>2];r=z[g+56>>2];p=z[g+40>>2];n=z[g+8>>2];q=z[g+24>>2];a=B(v[i>>2],48)+h|0;v[a+12>>2]=0;wa=r;ya=p;ba=C(W-C(ia*T));r=C(V-C(ha*T));p=C(C(ra*ba)+C(r*A));O=C(C(U*u)+p);za=n;n=C(C(H*ba)+C(r*da));T=C(C(ga*u)+n);ua=q;q=C(C(Y*ba)+C(r*E));r=C(C(D*u)+q);z[a+8>>2]=wa+C(C(ya*O)+C(C(za*T)+C(ua*r)));z[a+4>>2]=M+C(C(X*O)+C(C(Q*T)+C(r*R)));z[a>>2]=P+C(C(Z*O)+C(C(y*T)+C(r*L)));a=B(v[i>>2],48)+h|0;z[a+16>>2]=C(ga*J)+n;v[a+28>>2]=0;z[a+24>>2]=C(U*J)+p;z[a+20>>2]=C(D*J)+q;a=v[i>>2];v[i>>2]=a+1;a=B(a,48)+h|0;z[a+32>>2]=ma;z[a+44>>2]=G;z[a+40>>2]=na;z[a+36>>2]=la;a=w[c+18|0]}s=s+1|0;if(s>>>0<(a&255)>>>0){continue}break}f=w[d+18|0];o=a}e=b;s=b+1|0;if(s>>>0<(f&255)>>>0){continue}break}}xa=m- -64|0}function OW(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0);f=xa-496|0;xa=f;S=v[c+32>>2];a:{if(!e){X=C(1);h=C(0);break a}X=C(1);h=C(0);if(x[e+12>>1]!=2){break a}X=z[e+8>>2];$=z[e>>2];h=z[e+4>>2]}aa=h;L=z[c+8>>2];M=z[c+12>>2];N=z[c+4>>2];v[f+492>>2]=0;z[f+488>>2]=M;z[f+484>>2]=L;z[f+480>>2]=N;g=v[c+16>>2];O=v[c+20>>2];P=v[c+28>>2];v[f+472>>2]=v[c+24>>2];v[f+476>>2]=P;v[f+464>>2]=g;v[f+468>>2]=O;Q=z[a+8>>2];R=z[a+12>>2];A=z[a+4>>2];q=z[d+20>>2];k=z[b+20>>2];D=z[d+24>>2];j=z[b+24>>2];U=z[b+8>>2];V=z[b+4>>2];l=z[b+12>>2];m=z[b>>2];H=z[d+12>>2];I=z[d>>2];i=z[d+16>>2];h=z[b+16>>2];J=z[d+4>>2];r=z[d+8>>2];v[f+460>>2]=0;v[f+444>>2]=0;v[f+428>>2]=0;h=C(h-i);o=C(h+h);h=C(k-q);k=C(h+h);h=C(j-D);j=C(h+h);i=C(C(C(C(-I)*o)-C(k*J))-C(r*j));h=C(C(H*H)+C(-.5));z[f+456>>2]=C(C(j*h)+C(H*C(C(J*o)-C(I*k))))-C(r*i);z[f+452>>2]=C(C(k*h)+C(H*C(C(I*j)-C(r*o))))-C(J*i);d=f+448|0;z[d>>2]=C(C(o*h)+C(H*C(C(r*k)-C(J*j))))-C(I*i);T=C(C(m*J)+C(C(C(H*U)-C(l*r))-C(I*V)));n=C(C(U*I)+C(C(C(H*V)-C(l*J))-C(r*m)));p=C(n+n);i=C(T*p);j=C(C(r*U)+C(C(J*V)+C(C(H*l)+C(I*m))));m=C(C(V*r)+C(C(C(H*m)-C(l*I))-C(J*U)));l=C(m+m);h=C(j*l);z[f+436>>2]=i-h;o=C(T*l);q=C(j*p);z[f+432>>2]=o+q;z[f+424>>2]=h+i;k=C(l*n);D=C(T+T);j=C(j*D);z[f+416>>2]=k-j;h=C(C(1)-C(m*l));i=C(n*p);z[f+440>>2]=h-i;m=h;h=C(T*D);z[f+420>>2]=m-h;v[f+412>>2]=0;z[f+408>>2]=o-q;z[f+404>>2]=k+j;z[f+400>>2]=C(C(1)-i)-h;t[f+272|0]=0;v[f+264>>2]=0;v[f+268>>2]=0;v[f+256>>2]=0;v[f+260>>2]=0;v[f+248>>2]=0;v[f+252>>2]=0;v[f+240>>2]=0;v[f+244>>2]=0;v[f+384>>2]=S+16;v[f+392>>2]=v[S+56>>2]+B(w[S+55|0],20);t[f+396|0]=w[S+54|0];i=C(N*z[S+68>>2]);h=C(L*z[S+72>>2]);i=h>=i?i:h;h=C(M*z[S+76>>2]);h=h>=i?i:h;z[f+264>>2]=h*C(.02500000037252903);z[f+256>>2]=h*C(.10000000149011612);z[f+260>>2]=h*C(.05000000074505806);b=f+240|0;GV(f+480|0,f+464|0,f+288|0,f+336|0,b,N==C(1)&L==C(1)&M==C(1));v[f+388>>2]=v[S+60>>2];v[f+236>>2]=0;z[f+232>>2]=R;z[f+228>>2]=Q;t[f+208|0]=0;v[f+204>>2]=3;v[f+176>>2]=0;v[f+180>>2]=0;v[f+184>>2]=0;v[f+188>>2]=0;z[f+224>>2]=A;h=A<=Q?A:Q;i=h<=R?h:R;h=C(i*C(.05000000074505806));z[f+200>>2]=h;z[f+196>>2]=h;z[f+192>>2]=i*C(.15000000596046448);v[f+32>>2]=141468;v[f+40>>2]=f+400;v[f+36>>2]=f+176;a=v[f+420>>2];c=f- -64|0;v[c>>2]=v[f+416>>2];v[c+4>>2]=a;a=v[f+428>>2];v[f+72>>2]=v[f+424>>2];v[f+76>>2]=a;a=v[f+412>>2];v[f+56>>2]=v[f+408>>2];v[f+60>>2]=a;a=v[f+436>>2];v[f+80>>2]=v[f+432>>2];v[f+84>>2]=a;a=v[f+444>>2];v[f+88>>2]=v[f+440>>2];v[f+92>>2]=a;a=v[d+4>>2];v[f+96>>2]=v[d>>2];v[f+100>>2]=a;a=v[f+460>>2];v[f+104>>2]=v[f+456>>2];v[f+108>>2]=a;a=v[f+404>>2];v[f+48>>2]=v[f+400>>2];v[f+52>>2]=a;j=z[f+52>>2];z[f+52>>2]=z[c>>2];i=z[f+72>>2];h=z[f+56>>2];z[f+56>>2]=z[f+80>>2];z[f+72>>2]=z[f+84>>2];z[f+80>>2]=h;z[f+84>>2]=i;z[c>>2]=j;v[f+24>>2]=141216;v[f+28>>2]=b;v[f>>2]=0;a=0;g=xa-288|0;xa=g;v[g+76>>2]=0;j=z[d+8>>2];i=z[d>>2];h=z[d+4>>2];v[g+60>>2]=0;b=C(C(j*j)+C(C(i*i)+C(h*h)))>C(0);s=b?j:C(0);z[g+56>>2]=s;y=b?h:C(0);z[g+52>>2]=y;E=b?i:C(1);z[g+48>>2]=E;c=v[f+36>>2];O=w[c+32|0];b=v[f+28>>2];P=w[b+32|0];W=C((O?z[c+16>>2]:C(0))+(P?z[b+16>>2]:C(0)));ba=C(z[f>>2]+W);h=C(C(1)/C(K(C(C(s*s)+C(C(E*E)+C(y*y))))));j=C(s*h);i=C(y*h);h=C(E*h);k=z[b+20>>2];D=z[c+20>>2];ca=C(G(C((k>2];v[g+24>>2]=v[g+56>>2];v[g+28>>2]=b;b=v[g+52>>2];v[g+16>>2]=v[g+48>>2];v[g+20>>2]=b;c=v[f+40>>2];da=z[c+56>>2];ea=z[c+40>>2];fa=z[c+24>>2];ga=z[c+52>>2];ha=z[c+36>>2];b=v[f+36>>2];Y=z[b+56>>2];ia=z[c+20>>2];Z=z[b+52>>2];ja=z[c+8>>2];ka=z[c+48>>2];la=z[c+32>>2];ma=z[c>>2];H=z[c+16>>2];I=z[f+88>>2];J=z[f+56>>2];r=z[f+72>>2];U=z[c+4>>2];_=z[b+48>>2];V=z[f+80>>2];T=z[f+48>>2];L=z[f+64>>2];M=z[f+84>>2];N=z[f+52>>2];Q=z[f+68>>2];d=v[f+28>>2];R=z[d+56>>2];A=z[d+52>>2];n=z[d+72>>2];c=d- -64|0;l=z[c>>2];p=z[d+68>>2];m=z[d+88>>2];o=z[d+80>>2];q=z[d+84>>2];k=z[d+48>>2];v[g+284>>2]=0;z[g+280>>2]=C(m*s)+C(C(o*E)+C(y*q));z[g+276>>2]=C(n*s)+C(C(l*E)+C(y*p));z[g+272>>2]=C(R*s)+C(C(k*E)+C(y*A));b=IV(d,g+272|0);m=j;j=C(-E);r=C(C(C(J*j)-C(r*y))-C(I*s))>C(0)?Y:C(-Y);L=C(C(C(T*j)-C(L*y))-C(V*s))>C(0)?_:C(-_);M=C(C(C(N*j)-C(Q*y))-C(M*s))>C(0)?Z:C(-Z);l=C(da+C(C(ea*r)+C(C(ja*L)+C(fa*M))));b=v[d+152>>2]+B(b,12)|0;N=z[b+8>>2];A=z[b>>2];n=z[b+4>>2];p=C(C(z[d+88>>2]*N)+C(C(z[d+56>>2]*A)+C(n*z[d+72>>2])));Q=C(l-p);o=h;k=C(ka+C(C(la*r)+C(C(ma*L)+C(M*H))));j=C(C(z[d+80>>2]*N)+C(C(z[d+48>>2]*A)+C(n*z[c>>2])));R=C(k-j);q=i;i=C(ga+C(C(ha*r)+C(C(U*L)+C(M*ia))));h=C(C(z[d+84>>2]*N)+C(C(z[d+52>>2]*A)+C(n*z[d+68>>2])));A=C(i-h);n=C(C(m*Q)+C(C(o*R)+C(q*A)));if(n>ba){break b}if(!(!(n>W)|!(n>C(D*C(.9997749924659729))))){JV(g+208|0,g+144|0,g+80|0,g+48|0,g+272|0,g,v[g+76>>2]);k=z[v[f+36>>2]+16>>2];j=z[g+272>>2];i=z[g+276>>2];h=z[g+280>>2];v[f+172>>2]=0;z[f+168>>2]=h-(O?C(m*k):C(0));z[f+164>>2]=i-(O?C(q*k):C(0));z[f+160>>2]=j-(O?C(o*k):C(0));k=z[v[f+28>>2]+16>>2];j=z[g>>2];i=z[g+4>>2];h=z[g+8>>2];v[f+156>>2]=0;z[f+152>>2]=h+(P?C(m*k):C(-0));z[f+148>>2]=i+(P?C(q*k):C(-0));z[f+144>>2]=j+(P?C(o*k):C(-0));z[f+112>>2]=G(C(D-W),C(0));v[f+140>>2]=0;z[f+136>>2]=-m;z[f+132>>2]=-q;z[f+128>>2]=-o;a=1;break b}c=v[g+76>>2];b=c<<4;d=b+(g+144|0)|0;v[d+12>>2]=0;z[d+8>>2]=l;z[d+4>>2]=i;z[d>>2]=k;d=b+(g+80|0)|0;v[d+12>>2]=0;z[d+8>>2]=p;z[d+4>>2]=h;z[d>>2]=j;b=b+(g+208|0)|0;v[b+12>>2]=0;z[b+8>>2]=Q;z[b+4>>2]=A;z[b>>2]=R;v[g+76>>2]=c+1;c:{d:{switch(c-1|0){case 0:k=z[g+216>>2];n=C(z[g+232>>2]-k);j=z[g+208>>2];l=C(z[g+224>>2]-j);i=z[g+212>>2];p=C(z[g+228>>2]-i);h=C(C(n*n)+C(C(l*l)+C(p*p)));if(h<=C(1.1920928955078125e-7)){v[g+76>>2]=1;b=v[g+212>>2];v[g+272>>2]=v[g+208>>2];v[g+276>>2]=b;b=v[g+220>>2];v[g+280>>2]=v[g+216>>2];v[g+284>>2]=b;break c}v[g+284>>2]=0;h=C(F(C(C(C(C(C(-j)*l)-C(p*i))-C(k*n))/h),C(1)));h=h>C(0)?h:C(0);z[g+280>>2]=k+C(n*h);z[g+276>>2]=i+C(p*h);z[g+272>>2]=j+C(l*h);break c;case 1:KV(g+272|0,g+208|0,g+144|0,g+80|0,g+76|0);break c;case 2:O_(g+272|0,g+208|0,g+144|0,g+80|0,g+76|0);break c;default:break d}}v[g+284>>2]=0;z[g+280>>2]=Q;z[g+276>>2]=A;z[g+272>>2]=R}b=v[g+276>>2];v[g+48>>2]=v[g+272>>2];v[g+52>>2]=b;b=v[g+284>>2];v[g+56>>2]=v[g+280>>2];v[g+60>>2]=b;s=z[g+56>>2];E=z[g+48>>2];y=z[g+52>>2];k=C(K(C(C(s*s)+C(C(E*E)+C(y*y)))));if(ca>2]=0;a=v[g+276>>2];v[f+116>>2]=v[g+272>>2];v[f+120>>2]=a;v[f+124>>2]=v[g+280>>2];a=2;break b}p=z[v[f+28>>2]+16>>2];k=z[v[f+36>>2]+16>>2];JV(g+208|0,g+144|0,g+80|0,g+16|0,g+272|0,g,v[g+76>>2]);l=z[v[f+36>>2]+16>>2];j=z[g+272>>2];i=z[g+276>>2];h=z[g+280>>2];v[f+172>>2]=0;z[f+168>>2]=h-(O?C(m*l):C(0));z[f+164>>2]=i-(O?C(q*l):C(0));z[f+160>>2]=j-(O?C(o*l):C(0));l=z[v[f+28>>2]+16>>2];j=z[g>>2];i=z[g+4>>2];h=z[g+8>>2];v[f+156>>2]=0;z[f+152>>2]=h+(P?C(m*l):C(-0));z[f+148>>2]=i+(P?C(q*l):C(-0));z[f+144>>2]=j+(P?C(o*l):C(-0));v[f+140>>2]=0;z[f+136>>2]=-m;z[f+132>>2]=-q;z[f+128>>2]=-o;h=C(G(C(D-W),C(0)));z[f+112>>2]=h;a=v[g+40>>2];v[f+116>>2]=v[g+36>>2];v[f+120>>2]=a;v[f+124>>2]=v[g+44>>2];a=h>(W>C(0)?W:C((k>p?p:k)*C(.20000000298023224)))?1:2}xa=g+288|0;if(!(!e|(a|0)!=2)){z[e+8>>2]=X;z[e+4>>2]=aa;z[e>>2]=$}if(e){u[e+12>>1]=((a|0)==2)<<1}xa=f+496|0;return(a|0)==2|0}function A1(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0,m=0,n=C(0),o=0,p=0,q=0,r=0,s=0,u=0,x=C(0),A=C(0),D=0,E=0,F=0,G=0,H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=0;a:{d=v[a+2324>>2];if(!d){break a}u=v[a+2328>>2];if(u>>>0>=2){g=1;while(1){e=(g<<2)+a|0;h=e+2044|0;p=v[h>>2];e=e+2048|0;k=v[e>>2];b:{if(!(z[p+32>>2]>z[k+32>>2])){break b}v[h>>2]=k;v[e>>2]=p;e=g-2|0;if((e|0)<0){break b}while(1){h=(e<<2)+a|0;p=h+2048|0;q=v[p>>2];if(z[k+32>>2]>=z[q+32>>2]){break b}v[h+2052>>2]=q;v[p>>2]=k;h=(e|0)>0;e=e-1|0;if(h){continue}break}}g=g+1|0;if((u|0)!=(g|0)){continue}break}}G=a+2224|0;k=a+2048|0;c:{if(u){d=0;while(1){e=v[k+(d<<2)>>2];v[e+16>>2]=0;q=v[e+52>>2]-v[e+48>>2]|0;v[e+56>>2]=q;v[e+20>>2]=e;v[e+24>>2]=e;i=z[G>>2];g=d;d:{while(1){if(!g){break d}g=g-1|0;p=v[k+(g<<2)>>2];h=v[p+24>>2];if(!(i<=C(C(z[e+8>>2]*z[h+8>>2])+C(C(z[e>>2]*z[h>>2])+C(z[e+4>>2]*z[h+4>>2]))))){continue}break}v[p+16>>2]=e;v[h+20>>2]=e;v[e+24>>2]=h;g=v[p+24>>2];v[g+56>>2]=q+v[g+56>>2]}d=d+1|0;if((u|0)!=(d|0)){continue}break}s=a+2240|0;q=v[a+2320>>2];while(1){e:{d=v[k+(r<<2)>>2];if(!d|v[d+24>>2]!=(d|0)){break e}while(1){g=v[d+16>>2];if(!g){break e}p=d;d=g;e=v[p+52>>2];j=v[p+48>>2];if(e>>>0<=j>>>0){continue}h=v[d+52>>2];if(h>>>0<=y[d+48>>2]){continue}while(1){g=v[d+48>>2];if(h>>>0>g>>>0){o=q+(j<<6)|0;while(1){e=q+(g<<6)|0;i=C(z[e+24>>2]-z[o+24>>2]);A=C(i*i);i=C(z[e+16>>2]-z[o+16>>2]);n=C(i*i);i=C(z[e+20>>2]-z[o+20>>2]);if(z[s>>2]>C(A+C(n+C(i*i)))){h=(q+(h<<6)|0)+-64|0;f=v[h+4>>2];v[e>>2]=v[h>>2];v[e+4>>2]=f;v[e+48>>2]=v[h+48>>2];f=v[h+44>>2];v[e+40>>2]=v[h+40>>2];v[e+44>>2]=f;f=v[h+36>>2];v[e+32>>2]=v[h+32>>2];v[e+36>>2]=f;f=v[h+28>>2];v[e+24>>2]=v[h+24>>2];v[e+28>>2]=f;f=v[h+20>>2];v[e+16>>2]=v[h+16>>2];v[e+20>>2]=f;f=v[h+12>>2];v[e+8>>2]=v[h+8>>2];v[e+12>>2]=f;h=v[d+52>>2]-1|0;v[d+52>>2]=h;g=g-1|0}g=g+1|0;if(g>>>0>>0){continue}break}e=v[p+52>>2]}j=j+1|0;if(j>>>0>>0){continue}break}continue}}r=r+1|0;if((u|0)!=(r|0)){continue}break}d=v[a+2324>>2];g=v[a+2328>>2];break c}g=0}h=g;r=v[a+2320>>2];p=d;q=k;u=b;d=0;j=xa-80|0;xa=j;k=v[a+2216>>2];f:{if(!w[k+62|0]){if(!h){break f}b=k+56|0;while(1){g=v[q+(d<<2)>>2];if(v[g+24>>2]==(g|0)){e=l&255;if(e>>>0>5){break f}C2(j+16|0,(B(w[b+e|0],400)+k|0)- -64|0,r,p,g,u);g=w[k+62|0];z[((w[g+b|0]<<2)+k|0)+32>>2]=z[j+16>>2];l=g+1|0;t[k+62|0]=l}d=d+1|0;if((h|0)!=(d|0)){continue}break}break f}v[j+48>>2]=2139095039;v[j+32>>2]=0;v[j+36>>2]=0;v[j+40>>2]=j+16;if(!h){break f}H=k+56|0;while(1){e=v[q+(E<<2)>>2];g:{if((e|0)!=v[e+24>>2]){break g}h:{i:{f=w[k+62|0];if(!f){break i}g=e;I=z[G>>2];J=z[e+8>>2];L=z[e+4>>2];M=z[e>>2];m=0;while(1){F=k+m|0;s=B(w[F+56|0],400)+k|0;o=s- -64|0;i=z[s+104>>2];n=z[s+100>>2];x=z[s+96>>2];D=v[s+448>>2];j:{if(D>>>0<2){break j}b=1;d=D-1|0;N=d&1;if((D|0)!=2){O=d&-2;l=0;while(1){d=(b<<6)+o|0;x=C(C(x+z[d+32>>2])+z[d+96>>2]);i=C(C(i+z[d+40>>2])+z[d+104>>2]);n=C(C(n+z[d+36>>2])+z[d+100>>2]);b=b+2|0;l=l+2|0;if((O|0)!=(l|0)){continue}break}}if(!N){break j}b=(b<<6)+o|0;x=C(x+z[b+32>>2]);i=C(i+z[b+40>>2]);n=C(n+z[b+36>>2])}A=i;i=C(C(1)/C(K(C(C(i*i)+C(C(x*x)+C(n*n))))));A=C(A*i);x=C(x*i);i=C(n*i);if(C(C(J*A)+C(C(M*x)+C(L*i)))>=I){d=0;l=0;if(!D){break h}while(1){b=(l<<6)+o|0;f=v[b+4>>2];d=(l+p<<6)+r|0;v[d>>2]=v[b>>2];v[d+4>>2]=f;v[d+48>>2]=v[b+48>>2];f=v[b+44>>2];v[d+40>>2]=v[b+40>>2];v[d+44>>2]=f;f=v[b+36>>2];v[d+32>>2]=v[b+32>>2];v[d+36>>2]=f;f=v[b+28>>2];v[d+24>>2]=v[b+24>>2];v[d+28>>2]=f;f=v[b+20>>2];v[d+16>>2]=v[b+16>>2];v[d+20>>2]=f;f=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=f;d=v[s+448>>2];l=l+1|0;if(d>>>0>l>>>0){continue}break}break h}m=m+1|0;if(f>>>0>m>>>0){continue}break}if(f>>>0<6){break i}b=f-1|0;l=b&-2;o=b&1;h=0;g=k+32|0;q=k+56|0;d=1;b=0;while(1){s=d+1|0;h=z[g+(w[d+q|0]<<2)>>2]>z[g+(w[h+q|0]<<2)>>2]?d:h;h=z[g+(w[q+s|0]<<2)>>2]>z[g+(w[h+q|0]<<2)>>2]?s:h;d=d+2|0;b=b+2|0;if((l|0)!=(b|0)){continue}break}if(o){g=d;b=k+56|0;q=w[b+d|0]<<2;d=k+32|0;h=z[q+d>>2]>z[d+(w[b+h|0]<<2)>>2]?g:h}b=h+k|0;d=w[b+56|0];if(!(z[((d<<2)+k|0)+32>>2]>z[e+32>>2])){break f}d=B(d,400)+k|0;v[d+448>>2]=0;C2(j,d- -64|0,r,p,e,u);z[((w[b+56|0]<<2)+k|0)+32>>2]=z[j>>2];break f}C2(j,(B(w[f+H|0],400)+k|0)- -64|0,r,p,e,u);b=w[k+62|0];z[((w[b+H|0]<<2)+k|0)+32>>2]=z[j>>2];t[k+62|0]=b+1;break g}v[j+40>>2]=e;z[j+24>>2]=A;z[j+20>>2]=i;z[j+16>>2]=x;v[j+28>>2]=0;v[j+32>>2]=0;v[j+64>>2]=p;v[j+68>>2]=d+p;v[v[e+20>>2]+16>>2]=j+16;d=v[e+56>>2]+d|0;v[e+56>>2]=d;i=z[((w[F+56|0]<<2)+k|0)+32>>2];n=z[e+32>>2];z[e+32>>2]=i>2]|0;k:{l:{switch(u-1|0){case 0:b=-1;i=C(34028234663852886e22);while(1){d=v[e+48>>2];f=v[e+52>>2];m:{if(d>>>0>=f>>>0){break m}g=f+(d^-1)|0;l=0;m=f-d&3;if(m){while(1){n=z[((d<<6)+r|0)+44>>2];if(n>>0<=2){break m}while(1){n=z[((d<<6)+r|0)+44>>2];if(n>2];if(n>2];if(n>2];if(n>2];if(e){continue}break};z[j>>2]=i;b=(b<<6)+r|0;d=v[b+4>>2];v[o>>2]=v[b>>2];v[o+4>>2]=d;v[o+48>>2]=v[b+48>>2];d=v[b+44>>2];v[o+40>>2]=v[b+40>>2];v[o+44>>2]=d;d=v[b+36>>2];v[o+32>>2]=v[b+32>>2];v[o+36>>2]=d;d=v[b+28>>2];v[o+24>>2]=v[b+24>>2];v[o+28>>2]=d;d=v[b+20>>2];v[o+16>>2]=v[b+16>>2];v[o+20>>2]=d;d=v[b+12>>2];v[o+8>>2]=v[b+8>>2];v[o+12>>2]=d;v[s+448>>2]=1;break k;default:b=0;if(d>>>0<=6){while(1){l=v[e+48>>2];if(l>>>0>2]){while(1){d=(l<<6)+r|0;m=v[d+4>>2];f=(b<<6)+o|0;v[f>>2]=v[d>>2];v[f+4>>2]=m;v[f+48>>2]=v[d+48>>2];m=v[d+44>>2];v[f+40>>2]=v[d+40>>2];v[f+44>>2]=m;m=v[d+36>>2];v[f+32>>2]=v[d+32>>2];v[f+36>>2]=m;m=v[d+28>>2];v[f+24>>2]=v[d+24>>2];v[f+28>>2]=m;m=v[d+20>>2];v[f+16>>2]=v[d+16>>2];v[f+20>>2]=m;m=v[d+12>>2];v[f+8>>2]=v[d+8>>2];v[f+12>>2]=m;b=b+1|0;l=l+1|0;if(l>>>0>2]){continue}break}}e=v[e+16>>2];if(e){continue}break}v[s+448>>2]=b;b=v[g+44>>2];v[j+8>>2]=v[g+40>>2];v[j+12>>2]=b;b=v[g+36>>2];v[j>>2]=v[g+32>>2];v[j+4>>2]=b;break k}y2(j,o,r,l,e);v[s+448>>2]=6;break k;case 2:break l}}b=0;if(d>>>0<=3){while(1){l=v[e+48>>2];if(l>>>0>2]){while(1){d=(l<<6)+r|0;m=v[d+4>>2];f=(b<<6)+o|0;v[f>>2]=v[d>>2];v[f+4>>2]=m;v[f+48>>2]=v[d+48>>2];m=v[d+44>>2];v[f+40>>2]=v[d+40>>2];v[f+44>>2]=m;m=v[d+36>>2];v[f+32>>2]=v[d+32>>2];v[f+36>>2]=m;m=v[d+28>>2];v[f+24>>2]=v[d+24>>2];v[f+28>>2]=m;m=v[d+20>>2];v[f+16>>2]=v[d+16>>2];v[f+20>>2]=m;m=v[d+12>>2];v[f+8>>2]=v[d+8>>2];v[f+12>>2]=m;b=b+1|0;l=l+1|0;if(l>>>0>2]){continue}break}}e=v[e+16>>2];if(e){continue}break}v[s+448>>2]=b;b=v[g+44>>2];v[j+8>>2]=v[g+40>>2];v[j+12>>2]=b;b=v[g+36>>2];v[j>>2]=v[g+32>>2];v[j+4>>2]=b;break k}z2(j,o,r,l,e);v[s+448>>2]=3}z[((w[F+56|0]<<2)+k|0)+32>>2]=z[j>>2]}E=E+1|0;if((h|0)!=(E|0)){continue}break}}xa=j+80|0;v[a+2324>>2]=0;v[a+2328>>2]=0;if(!c){break a}v[a+2048>>2]=a;v[a+2172>>2]=a+1984;v[a+2168>>2]=a+1920;v[a+2164>>2]=a+1856;v[a+2160>>2]=a+1792;v[a+2156>>2]=a+1728;v[a+2152>>2]=a+1664;v[a+2148>>2]=a+1600;v[a+2144>>2]=a+1536;v[a+2140>>2]=a+1472;v[a+2136>>2]=a+1408;v[a+2132>>2]=a+1344;v[a+2128>>2]=a+1280;v[a+2124>>2]=a+1216;v[a+2120>>2]=a+1152;v[a+2116>>2]=a+1088;v[a+2112>>2]=a+1024;v[a+2108>>2]=a+960;v[a+2104>>2]=a+896;v[a+2100>>2]=a+832;v[a+2096>>2]=a+768;v[a+2092>>2]=a+704;v[a+2088>>2]=a+640;v[a+2084>>2]=a+576;v[a+2080>>2]=a+512;v[a+2076>>2]=a+448;v[a+2072>>2]=a+384;v[a+2068>>2]=a+320;v[a+2064>>2]=a+256;v[a+2060>>2]=a+192;v[a+2056>>2]=a+128;v[a+2052>>2]=a- -64}}function z0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),H=C(0),I=0,J=C(0),L=C(0),M=0,N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=0;b=xa-272|0;xa=b;f=1;l=z[a- -64>>2];q=z[a+48>>2];s=z[c+8>>2];n=z[a+16>>2];k=z[c>>2];y=z[c+4>>2];o=z[a+32>>2];i=C(l+C(C(q*s)+C(C(n*k)+C(y*o))));h=z[d+8>>2];m=z[d>>2];r=z[d+4>>2];j=C(l+C(C(q*h)+C(C(n*m)+C(r*o))));p=i>2];x=C(q*l);u=n;n=z[e>>2];q=z[e+4>>2];o=C(D+C(x+C(C(u*n)+C(q*o))));D=o>p?p:o;p=z[a+80>>2];a:{if(D>p){break a}i=i>j?i:j;if(C(-p)>(i>o?i:o)){break a}o=z[a+68>>2];p=z[a+52>>2];u=z[a+20>>2];x=z[a+36>>2];i=C(o+C(C(p*s)+C(C(u*k)+C(y*x))));j=C(o+C(C(p*h)+C(C(u*m)+C(r*x))));A=i>2];if((o>A?A:o)>p){break a}i=i>j?i:j;if(C(-p)>(i>o?i:o)){break a}o=z[a+72>>2];p=z[a+56>>2];u=z[a+24>>2];x=z[a+40>>2];i=C(o+C(C(p*s)+C(C(u*k)+C(y*x))));j=C(o+C(C(p*h)+C(C(u*m)+C(r*x))));A=i>2];if((o>A?A:o)>p){break a}i=i>j?i:j;if(C(-p)>(i>o?i:o)){break a}b:{if(w[a+369|0]){i=q;j=l;q=r;l=h;r=y;h=s;break b}o=z[a+360>>2];p=z[a+328>>2];u=z[a+344>>2];j=C(C(o*l)+C(C(p*n)+C(q*u)));x=z[a+356>>2];A=z[a+324>>2];E=z[a+340>>2];i=C(C(x*l)+C(C(A*n)+C(q*E)));H=z[a+352>>2];J=z[a+320>>2];L=z[a+336>>2];n=C(C(H*l)+C(C(J*n)+C(q*L)));l=C(C(o*h)+C(C(p*m)+C(r*u)));q=C(C(x*h)+C(C(A*m)+C(r*E)));m=C(C(H*h)+C(C(J*m)+C(r*L)));h=C(C(o*s)+C(C(p*k)+C(y*u)));r=C(C(x*s)+C(C(A*k)+C(y*E)));k=C(C(H*s)+C(C(J*k)+C(y*L)))}v[b+268>>2]=0;z[b+264>>2]=j;z[b+260>>2]=i;z[b+256>>2]=n;v[b+252>>2]=0;z[b+248>>2]=l;z[b+244>>2]=q;z[b+240>>2]=m;v[b+236>>2]=0;z[b+232>>2]=h;z[b+228>>2]=r;t[b+208|0]=0;v[b+200>>2]=2139095039;v[b+204>>2]=5;v[b+188>>2]=0;v[b+192>>2]=0;v[b+196>>2]=2139095039;z[b+184>>2]=C(j+C(l+h))*C(.33333298563957214);z[b+180>>2]=C(i+C(q+r))*C(.33333298563957214);z[b+224>>2]=k;z[b+176>>2]=C(n+C(m+k))*C(.33333298563957214);v[b+40>>2]=a+256;v[b+32>>2]=142420;v[b+36>>2]=b+176;d=v[a+276>>2];c=b- -64|0;v[c>>2]=v[a+272>>2];v[c+4>>2]=d;d=v[a+284>>2];v[b+72>>2]=v[a+280>>2];v[b+76>>2]=d;d=v[a+268>>2];v[b+56>>2]=v[a+264>>2];v[b+60>>2]=d;d=v[a+292>>2];v[b+80>>2]=v[a+288>>2];v[b+84>>2]=d;d=v[a+300>>2];v[b+88>>2]=v[a+296>>2];v[b+92>>2]=d;d=a+304|0;e=v[d+4>>2];v[b+96>>2]=v[d>>2];v[b+100>>2]=e;e=v[a+316>>2];v[b+104>>2]=v[a+312>>2];v[b+108>>2]=e;e=v[a+260>>2];v[b+48>>2]=v[a+256>>2];v[b+52>>2]=e;h=z[b+52>>2];z[b+52>>2]=z[c>>2];i=z[b+72>>2];j=z[b+56>>2];z[b+56>>2]=z[b+80>>2];z[b+72>>2]=z[b+84>>2];z[b+80>>2]=j;z[b+84>>2]=i;z[c>>2]=h;v[b+24>>2]=141216;v[b+28>>2]=a+96;v[b>>2]=0;c=xa-288|0;xa=c;v[c+76>>2]=0;h=z[d+8>>2];i=z[d>>2];j=z[d+4>>2];v[c+60>>2]=0;d=C(C(h*h)+C(C(i*i)+C(j*j)))>C(0);k=d?h:C(0);z[c+56>>2]=k;m=d?j:C(0);z[c+52>>2]=m;n=d?i:C(1);z[c+48>>2]=n;d=v[b+36>>2];f=w[d+32|0];e=v[b+28>>2];g=w[e+32|0];o=C((f?z[d+16>>2]:C(0))+(g?z[e+16>>2]:C(0)));J=C(z[b>>2]+o);h=C(C(1)/C(K(C(C(k*k)+C(C(n*n)+C(m*m))))));l=C(k*h);i=C(m*h);j=C(n*h);h=z[e+20>>2];s=z[d+20>>2];L=C(G(C((h>2];v[c+24>>2]=v[c+56>>2];v[c+28>>2]=d;d=v[c+52>>2];v[c+16>>2]=v[c+48>>2];v[c+20>>2]=d;d=v[b+40>>2];O=z[d+56>>2];P=z[d+40>>2];Q=z[d+24>>2];R=z[d+52>>2];S=z[d+36>>2];T=z[d+20>>2];e=v[b+36>>2];h=z[e+72>>2];y=z[e- -64>>2];r=z[e+68>>2];p=z[e+56>>2];u=z[e+52>>2];x=z[e+88>>2];A=z[e+80>>2];E=z[e+84>>2];U=z[d+8>>2];V=z[d+48>>2];W=z[d+32>>2];X=z[d>>2];Y=z[d+16>>2];Z=z[d+4>>2];H=z[e+48>>2];_=z[b+88>>2];$=z[b+56>>2];aa=z[b+72>>2];ba=z[b+80>>2];ca=z[b+48>>2];da=z[b+64>>2];ea=z[b+84>>2];fa=z[b+52>>2];ga=z[b+68>>2];d=v[b+28>>2];s=z[d+56>>2];D=z[d+52>>2];ha=z[d+72>>2];N=d- -64|0;ia=z[N>>2];ja=z[d+68>>2];ka=z[d+88>>2];la=z[d+80>>2];ma=z[d+84>>2];na=z[d+48>>2];v[c+284>>2]=0;z[c+280>>2]=C(ka*k)+C(C(la*n)+C(m*ma));z[c+276>>2]=C(ha*k)+C(C(ia*n)+C(m*ja));z[c+272>>2]=C(s*k)+C(C(na*n)+C(m*D));oa=IV(d,c+272|0);s=l;D=h;h=C(-n);l=C(C(C($*h)-C(aa*m))-C(_*k));n=C(C(C(ca*h)-C(da*m))-C(ba*k));h=C(C(C(fa*h)-C(ga*m))-C(ea*k));k=C(C(D*l)+C(C(y*n)+C(r*h)));m=C(C(x*l)+C(C(A*n)+C(h*E)));e=k>m;h=C(C(p*l)+C(C(H*n)+C(h*u)));I=!(h>k)|!(h>m);h=I?e?D:x:p;l=I?e?y:A:H;k=I?e?r:E:u;x=C(O+C(C(P*h)+C(C(U*l)+C(Q*k))));e=v[d+152>>2]+B(oa,12)|0;m=z[e+8>>2];n=z[e>>2];p=z[e+4>>2];A=C(C(z[d+88>>2]*m)+C(C(z[d+56>>2]*n)+C(p*z[d+72>>2])));u=C(x-A);y=j;E=C(V+C(C(W*h)+C(C(X*l)+C(k*Y))));H=C(C(z[d+80>>2]*m)+C(C(z[d+48>>2]*n)+C(p*z[N>>2])));j=C(E-H);r=i;l=C(R+C(C(S*h)+C(C(Z*l)+C(k*T))));k=C(C(z[d+84>>2]*m)+C(C(z[d+52>>2]*n)+C(p*z[d+68>>2])));h=C(l-k);i=C(C(s*u)+C(C(y*j)+C(i*h)));if(i>J){break c}if(!(!(i>o)|!(i>C(q*C(.9997749924659729))))){JV(c+208|0,c+144|0,c+80|0,c+48|0,c+272|0,c,v[c+76>>2]);h=z[v[b+36>>2]+16>>2];i=z[c+272>>2];j=z[c+276>>2];l=z[c+280>>2];v[b+172>>2]=0;z[b+168>>2]=l-(f?C(s*h):C(0));z[b+164>>2]=j-(f?C(r*h):C(0));z[b+160>>2]=i-(f?C(y*h):C(0));h=z[v[b+28>>2]+16>>2];i=z[c>>2];j=z[c+4>>2];l=z[c+8>>2];v[b+156>>2]=0;z[b+152>>2]=l+(g?C(s*h):C(-0));z[b+148>>2]=j+(g?C(r*h):C(-0));z[b+144>>2]=i+(g?C(y*h):C(-0));z[b+112>>2]=G(C(q-o),C(0));v[b+140>>2]=0;z[b+136>>2]=-s;z[b+132>>2]=-r;z[b+128>>2]=-y;M=1;break c}e=v[c+76>>2];I=e<<4;d=I+(c+144|0)|0;v[d+12>>2]=0;z[d+8>>2]=x;z[d+4>>2]=l;z[d>>2]=E;d=I+(c+80|0)|0;v[d+12>>2]=0;z[d+8>>2]=A;z[d+4>>2]=k;z[d>>2]=H;d=I+(c+208|0)|0;v[d+12>>2]=0;z[d+8>>2]=u;z[d+4>>2]=h;z[d>>2]=j;v[c+76>>2]=e+1;d:{e:{switch(e-1|0){case 0:l=z[c+216>>2];h=C(z[c+232>>2]-l);k=z[c+208>>2];i=C(z[c+224>>2]-k);m=z[c+212>>2];j=C(z[c+228>>2]-m);n=C(C(h*h)+C(C(i*i)+C(j*j)));if(n<=C(1.1920928955078125e-7)){v[c+76>>2]=1;d=v[c+212>>2];v[c+272>>2]=v[c+208>>2];v[c+276>>2]=d;d=v[c+220>>2];v[c+280>>2]=v[c+216>>2];v[c+284>>2]=d;break d}v[c+284>>2]=0;D=h;h=C(F(C(C(C(C(C(-k)*i)-C(j*m))-C(l*h))/n),C(1)));h=h>C(0)?h:C(0);z[c+280>>2]=l+C(D*h);z[c+276>>2]=m+C(j*h);z[c+272>>2]=k+C(i*h);break d;case 1:KV(c+272|0,c+208|0,c+144|0,c+80|0,c+76|0);break d;case 2:O_(c+272|0,c+208|0,c+144|0,c+80|0,c+76|0);break d;default:break e}}v[c+284>>2]=0;z[c+280>>2]=u;z[c+276>>2]=h;z[c+272>>2]=j}d=v[c+276>>2];v[c+48>>2]=v[c+272>>2];v[c+52>>2]=d;d=v[c+284>>2];v[c+56>>2]=v[c+280>>2];v[c+60>>2]=d;k=z[c+56>>2];n=z[c+48>>2];m=z[c+52>>2];h=C(K(C(C(k*k)+C(C(n*n)+C(m*m)))));if(L>2]=0;d=v[c+276>>2];v[b+116>>2]=v[c+272>>2];v[b+120>>2]=d;v[b+124>>2]=v[c+280>>2];M=2;break c}i=z[v[b+28>>2]+16>>2];j=z[v[b+36>>2]+16>>2];JV(c+208|0,c+144|0,c+80|0,c+16|0,c+272|0,c,v[c+76>>2]);h=z[v[b+36>>2]+16>>2];l=z[c+272>>2];k=z[c+276>>2];m=z[c+280>>2];v[b+172>>2]=0;z[b+168>>2]=m-(f?C(s*h):C(0));z[b+164>>2]=k-(f?C(r*h):C(0));z[b+160>>2]=l-(f?C(y*h):C(0));h=z[v[b+28>>2]+16>>2];l=z[c>>2];k=z[c+4>>2];m=z[c+8>>2];v[b+156>>2]=0;z[b+152>>2]=m+(g?C(s*h):C(-0));z[b+148>>2]=k+(g?C(r*h):C(-0));z[b+144>>2]=l+(g?C(y*h):C(-0));v[b+140>>2]=0;z[b+136>>2]=-s;z[b+132>>2]=-r;z[b+128>>2]=-y;h=C(G(C(q-o),C(0)));z[b+112>>2]=h;d=v[c+40>>2];v[b+116>>2]=v[c+36>>2];v[b+120>>2]=d;v[b+124>>2]=v[c+44>>2];M=h>(o>C(0)?o:C((i>2];s=v[c+32>>2];o=v[a+12>>2];x=v[a+8>>2];q=z[a+4>>2];v[f+620>>2]=0;v[f+612>>2]=x;v[f+616>>2]=o;z[f+608>>2]=q;o=v[a+16>>2];x=v[a+20>>2];I=v[a+28>>2];v[f+600>>2]=v[a+24>>2];v[f+604>>2]=I;v[f+592>>2]=o;v[f+596>>2]=x;g=z[c+12>>2];o=v[c+8>>2];x=v[c+4>>2];v[f+588>>2]=0;z[f+584>>2]=g;v[f+576>>2]=x;v[f+580>>2]=o;o=v[c+16>>2];x=v[c+20>>2];I=v[c+28>>2];v[f+568>>2]=v[c+24>>2];v[f+572>>2]=I;v[f+560>>2]=o;v[f+564>>2]=x;j=z[d+20>>2];k=z[b+20>>2];E=z[d+24>>2];D=z[b+24>>2];y=z[b+8>>2];l=z[b>>2];p=z[b+4>>2];m=z[b+12>>2];g=z[d+12>>2];h=z[d>>2];A=z[d+16>>2];H=z[b+16>>2];i=z[d+4>>2];n=z[d+8>>2];v[f+556>>2]=0;v[f+540>>2]=0;v[f+524>>2]=0;N=C(-h);A=C(H-A);H=C(k-j);E=C(D-E);D=C(C(C(N*A)-C(H*i))-C(n*E));L=C(C(g*g)+C(-.5));j=C(C(C(g*C(C(i*A)-C(h*H)))+C(L*E))-C(n*D));z[f+552>>2]=j+j;j=C(C(C(L*H)+C(g*C(C(h*E)-C(n*A))))-C(i*D));z[f+548>>2]=j+j;k=C(C(C(p*n)-C(i*y))+C(C(l*g)-C(m*h)));j=C(k+k);J=C(C(C(y*h)-C(n*l))+C(C(p*g)-C(m*i)));M=C(J+J);P=C(C(1)-C(k*j));Q=C(J*M);z[f+536>>2]=P-Q;k=C(C(C(l*i)-C(h*p))+C(C(y*g)-C(m*n)));O=C(k*M);y=C(C(m*g)-C(C(C(N*l)-C(p*i))-C(n*y)));l=C(y*j);z[f+532>>2]=O-l;z[f+520>>2]=O+l;l=C(k+k);p=C(k*l);z[f+516>>2]=P-p;v[f+508>>2]=0;g=C(C(C(L*A)+C(g*C(C(n*H)-C(i*E))))-C(h*D));z[f+544>>2]=g+g;g=C(k*j);i=C(y*M);z[f+528>>2]=g+i;n=C(J*j);h=C(y*l);z[f+512>>2]=n-h;z[f+504>>2]=g-i;z[f+500>>2]=n+h;z[f+496>>2]=C(C(1)-Q)-p;o=r+16|0;b=0;a:{if(q!=C(1)){break a}b=0;if(z[a+8>>2]!=C(1)){break a}b=z[a+12>>2]==C(1)}a=s+16|0;d=f+544|0;t[f+368|0]=0;v[f+360>>2]=0;v[f+364>>2]=0;v[f+352>>2]=0;v[f+356>>2]=0;v[f+344>>2]=0;v[f+348>>2]=0;v[f+336>>2]=0;v[f+340>>2]=0;v[f+480>>2]=o;v[f+488>>2]=v[r+56>>2]+B(w[r+55|0],20);t[f+492|0]=w[r+54|0];g=C(q*z[r+68>>2]);i=C(z[r+72>>2]*z[f+612>>2]);g=g<=i?g:i;i=C(z[r+76>>2]*z[f+616>>2]);g=g<=i?g:i;z[f+360>>2]=g*C(.02500000037252903);z[f+352>>2]=g*C(.10000000149011612);z[f+356>>2]=g*C(.05000000074505806);GV(f+608|0,f+592|0,f+384|0,f+432|0,f+336|0,b);v[f+484>>2]=v[r+60>>2];R=z[c+4>>2]!=C(1)|z[c+8>>2]!=C(1)?R:z[c+12>>2]==C(1);t[f+208|0]=0;v[f+200>>2]=0;v[f+204>>2]=0;v[f+192>>2]=0;v[f+196>>2]=0;v[f+184>>2]=0;v[f+188>>2]=0;v[f+176>>2]=0;v[f+180>>2]=0;v[f+320>>2]=a;v[f+328>>2]=v[s+56>>2]+B(w[s+55|0],20);t[f+332|0]=w[s+54|0];g=C(z[s+68>>2]*z[f+576>>2]);i=C(z[s+72>>2]*z[f+580>>2]);g=g<=i?g:i;i=C(z[s+76>>2]*z[f+584>>2]);g=g<=i?g:i;z[f+200>>2]=g*C(.02500000037252903);z[f+192>>2]=g*C(.10000000149011612);z[f+196>>2]=g*C(.05000000074505806);b=f+176|0;GV(f+576|0,f+560|0,f+224|0,f+272|0,b,R);v[f+324>>2]=v[s+60>>2];c=v[f+516>>2];a=f- -64|0;v[a>>2]=v[f+512>>2];v[a+4>>2]=c;c=v[f+508>>2];v[f+56>>2]=v[f+504>>2];v[f+60>>2]=c;c=v[f+524>>2];v[f+72>>2]=v[f+520>>2];v[f+76>>2]=c;c=v[f+532>>2];v[f+80>>2]=v[f+528>>2];v[f+84>>2]=c;c=v[f+540>>2];v[f+88>>2]=v[f+536>>2];v[f+92>>2]=c;c=v[f+548>>2];v[f+96>>2]=v[f+544>>2];v[f+100>>2]=c;c=v[f+556>>2];v[f+104>>2]=v[f+552>>2];v[f+108>>2]=c;c=v[f+500>>2];v[f+48>>2]=v[f+496>>2];v[f+52>>2]=c;g=z[f+52>>2];z[f+52>>2]=z[a>>2];v[f+32>>2]=141516;v[f+40>>2]=f+496;v[f+36>>2]=f+336;i=z[f+56>>2];n=z[f+72>>2];z[a>>2]=g;z[f+56>>2]=z[f+80>>2];z[f+72>>2]=z[f+84>>2];z[f+84>>2]=n;z[f+80>>2]=i;v[f+24>>2]=141216;v[f+28>>2]=b;v[f>>2]=0;a=0;b=xa-288|0;xa=b;v[b+76>>2]=0;g=z[d+8>>2];i=z[d>>2];n=z[d+4>>2];v[b+60>>2]=0;c=C(C(g*g)+C(C(i*i)+C(n*n)))>C(0);j=c?g:C(0);z[b+56>>2]=j;k=c?n:C(0);z[b+52>>2]=k;q=c?i:C(1);z[b+48>>2]=q;s=f+32|0;c=v[s+4>>2];d=w[c+32|0];o=v[f+28>>2];r=w[o+32|0];A=C((d?z[c+16>>2]:C(0))+(r?z[o+16>>2]:C(0)));H=C(z[f>>2]+A);g=C(C(1)/C(K(C(C(j*j)+C(C(q*q)+C(k*k))))));l=C(j*g);p=C(k*g);m=C(q*g);g=z[o+20>>2];i=z[c+20>>2];E=C(G(C((g>2];v[b+40>>2]=v[b+56>>2];v[b+44>>2]=c;c=v[b+52>>2];v[b+32>>2]=v[b+48>>2];v[b+36>>2]=c;v[b+284>>2]=0;z[b+280>>2]=-j;z[b+276>>2]=-k;z[b+272>>2]=-q;o=b+272|0;UW(b+16|0,s,o);c=v[f+28>>2];g=z[c+56>>2];i=z[c+52>>2];n=z[c+72>>2];x=c- -64|0;h=z[x>>2];D=z[c+68>>2];J=z[c+88>>2];M=z[c+80>>2];L=z[c+84>>2];N=z[c+48>>2];v[b+284>>2]=0;z[b+280>>2]=C(J*j)+C(C(M*q)+C(k*L));z[b+276>>2]=C(n*j)+C(C(h*q)+C(k*D));z[b+272>>2]=C(g*j)+C(C(N*q)+C(k*i));o=IV(c,o);g=l;o=v[c+152>>2]+B(o,12)|0;h=z[o+8>>2];l=z[o>>2];j=z[o+4>>2];q=C(C(z[c+88>>2]*h)+C(C(z[c+56>>2]*l)+C(j*z[c+72>>2])));k=C(z[b+24>>2]-q);i=m;D=C(C(z[c+80>>2]*h)+C(C(z[c+48>>2]*l)+C(j*z[x>>2])));m=C(z[b+16>>2]-D);n=p;p=C(C(z[c+84>>2]*h)+C(C(z[c+52>>2]*l)+C(j*z[c+68>>2])));h=C(z[b+20>>2]-p);l=C(C(g*k)+C(C(i*m)+C(n*h)));if(l>H){break b}if(!(!(l>A)|!(l>C(y*C(.9997749924659729))))){JV(b+208|0,b+144|0,b+80|0,b+48|0,b+272|0,b,v[b+76>>2]);h=z[v[s+4>>2]+16>>2];l=z[b+272>>2];p=z[b+276>>2];m=z[b+280>>2];v[f+172>>2]=0;z[f+168>>2]=m-(d?C(g*h):C(0));z[f+164>>2]=p-(d?C(n*h):C(0));z[f+160>>2]=l-(d?C(i*h):C(0));h=z[v[f+28>>2]+16>>2];l=z[b>>2];p=z[b+4>>2];m=z[b+8>>2];v[f+156>>2]=0;z[f+152>>2]=m+(r?C(g*h):C(-0));z[f+148>>2]=p+(r?C(n*h):C(-0));z[f+144>>2]=l+(r?C(i*h):C(-0));z[f+112>>2]=G(C(y-A),C(0));v[f+140>>2]=0;z[f+136>>2]=-g;z[f+132>>2]=-n;z[f+128>>2]=-i;a=1;break b}I=v[b+20>>2];o=v[b+76>>2];x=o<<4;c=x+(b+144|0)|0;v[c>>2]=v[b+16>>2];v[c+4>>2]=I;I=v[b+28>>2];v[c+8>>2]=v[b+24>>2];v[c+12>>2]=I;c=x+(b+80|0)|0;v[c+12>>2]=0;z[c+8>>2]=q;z[c+4>>2]=p;z[c>>2]=D;c=x+(b+208|0)|0;v[c+12>>2]=0;z[c+8>>2]=k;z[c+4>>2]=h;z[c>>2]=m;v[b+76>>2]=o+1;c:{d:{e:{switch(o-1|0){case 0:m=z[b+216>>2];h=C(z[b+232>>2]-m);j=z[b+208>>2];l=C(z[b+224>>2]-j);k=z[b+212>>2];p=C(z[b+228>>2]-k);q=C(C(h*h)+C(C(l*l)+C(p*p)));if(!(q<=C(1.1920928955078125e-7))){break d}v[b+76>>2]=1;c=v[b+212>>2];v[b+272>>2]=v[b+208>>2];v[b+276>>2]=c;c=v[b+220>>2];v[b+280>>2]=v[b+216>>2];v[b+284>>2]=c;break c;case 1:KV(b+272|0,b+208|0,b+144|0,b+80|0,b+76|0);break c;case 2:O_(b+272|0,b+208|0,b+144|0,b+80|0,b+76|0);break c;default:break e}}v[b+284>>2]=0;z[b+280>>2]=k;z[b+276>>2]=h;z[b+272>>2]=m;break c}v[b+284>>2]=0;O=h;h=C(F(C(C(C(C(C(-j)*l)-C(p*k))-C(m*h))/q),C(1)));h=h>C(0)?h:C(0);z[b+280>>2]=m+C(O*h);z[b+276>>2]=k+C(p*h);z[b+272>>2]=j+C(l*h)}c=v[b+276>>2];v[b+48>>2]=v[b+272>>2];v[b+52>>2]=c;c=v[b+284>>2];v[b+56>>2]=v[b+280>>2];v[b+60>>2]=c;j=z[b+56>>2];q=z[b+48>>2];k=z[b+52>>2];h=C(K(C(C(j*j)+C(C(q*q)+C(k*k)))));if(E>2]=0;a=v[b+276>>2];v[f+116>>2]=v[b+272>>2];v[f+120>>2]=a;v[f+124>>2]=v[b+280>>2];a=2;break b}l=z[v[f+28>>2]+16>>2];p=z[v[s+4>>2]+16>>2];JV(b+208|0,b+144|0,b+80|0,b+32|0,b+272|0,b+16|0,v[b+76>>2]);h=z[v[s+4>>2]+16>>2];m=z[b+272>>2];j=z[b+276>>2];k=z[b+280>>2];v[f+172>>2]=0;z[f+168>>2]=k-(d?C(g*h):C(0));z[f+164>>2]=j-(d?C(n*h):C(0));z[f+160>>2]=m-(d?C(i*h):C(0));h=z[v[f+28>>2]+16>>2];m=z[b+16>>2];j=z[b+20>>2];k=z[b+24>>2];v[f+156>>2]=0;z[f+152>>2]=k+(r?C(g*h):C(-0));z[f+148>>2]=j+(r?C(n*h):C(-0));z[f+144>>2]=m+(r?C(i*h):C(-0));v[f+140>>2]=0;z[f+136>>2]=-g;z[f+132>>2]=-n;z[f+128>>2]=-i;g=C(G(C(y-A),C(0)));z[f+112>>2]=g;a=v[b+4>>2];v[f+116>>2]=v[b>>2];v[f+120>>2]=a;v[f+124>>2]=v[b+8>>2];a=g>(A>C(0)?A:C((l>1]=((a|0)==2)<<1}xa=f+624|0;return(a|0)==2|0}function qy(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=0,A=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=0,N=C(0),O=0,P=C(0),Q=C(0),R=0,S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=C(0),da=0,ea=0,fa=C(0),ga=C(0);y=xa+-64|0;O=v[a+8>>2];w=z[O+40>>2];P=z[d+16>>2];A=z[d+48>>2];l=z[O+8>>2];U=z[d>>2];L=z[d+32>>2];Q=z[b+40>>2];r=z[c+40>>2];s=z[O+32>>2];V=z[O>>2];H=z[b+32>>2];j=z[c+32>>2];Z=z[O+36>>2];I=z[O+4>>2];J=z[b+36>>2];T=z[c+36>>2];ca=C(C(C(w*C(w*P))+C(A*C(C(C(l*C(l*U))+C(L*C(Q*Q)))+C(r*r))))+C(C(C(s*C(P*s))+C(A*C(C(C(V*C(U*V))+C(L*C(H*H)))+C(j*j))))+C(C(Z*C(P*Z))+C(A*C(C(C(I*C(U*I))+C(L*C(J*J)))+C(T*T))))));R=v[a+4>>2];o=z[R+40>>2];q=C(P*o);p=z[R+8>>2];k=C(U*p);_=z[b+24>>2];$=z[c+24>>2];g=z[R+32>>2];h=C(P*g);W=z[R>>2];i=C(U*W);aa=z[b+16>>2];m=z[c+16>>2];t=z[R+36>>2];f=C(P*t);F=z[R+4>>2];e=C(U*F);N=z[b+20>>2];u=z[c+20>>2];X=C(C(C(q*w)+C(A*C(C(C(k*l)+C(L*C(_*Q)))+C($*r))))+C(C(C(h*s)+C(A*C(C(C(i*V)+C(L*C(aa*H)))+C(m*j))))+C(C(f*Z)+C(A*C(C(C(e*I)+C(L*C(N*J)))+C(u*T))))));x=C(C(C(o*q)+C(A*C(C(C(p*k)+C(L*C(_*_)))+C($*$))))+C(C(C(g*h)+C(A*C(C(C(W*i)+C(L*C(aa*aa)))+C(m*m))))+C(C(t*f)+C(A*C(C(C(F*e)+C(L*C(N*N)))+C(u*u))))));S=v[a>>2];k=z[S+40>>2];G=C(k*P);e=C(G*w);h=z[S+8>>2];w=C(h*U);n=z[b+8>>2];f=C(C(w*l)+C(L*C(n*Q)));l=z[c+8>>2];fa=C(e+C(A*C(f+C(l*r))));i=z[S+32>>2];r=C(i*P);e=C(r*s);Y=z[S>>2];s=C(Y*U);Q=z[b>>2];f=C(C(s*V)+C(L*C(Q*H)));H=z[c>>2];ga=C(e+C(A*C(f+C(H*j))));f=z[S+36>>2];j=C(f*P);e=z[S+4>>2];q=C(e*U);P=C(q*I);I=z[b+4>>2];P=C(P+C(L*C(I*J)));J=z[c+4>>2];T=C(fa+C(ga+C(C(j*Z)+C(A*C(P+C(J*T))))));u=C(C(C(G*o)+C(A*C(C(C(w*p)+C(L*C(n*_)))+C(l*$))))+C(C(C(r*g)+C(A*C(C(C(s*W)+C(L*C(Q*aa)))+C(H*m))))+C(C(j*t)+C(A*C(C(C(q*F)+C(L*C(I*N)))+C(J*u))))));t=C(C(C(k*G)+C(A*C(C(l*l)+C(C(h*w)+C(C(n*n)*L)))))+C(C(C(i*r)+C(A*C(C(H*H)+C(C(Y*s)+C(C(Q*Q)*L)))))+C(C(f*j)+C(A*C(C(J*J)+C(C(e*q)+C(C(I*I)*L)))))));N=C(0);n=C(0);m=C(0);l=C(1);while(1){a:{i=C(N+N);j=C(C(1)-C(N*i));e=C(n+n);q=C(n*e);g=C(j-q);k=C(i*m);h=C(e*l);H=C(k+h);f=C(e*m);e=C(i*l);I=C(f-e);F=C(C(ca*g)+C(C(T*H)+C(X*I)));G=C(C(T*g)+C(C(t*H)+C(u*I)));w=C(C(X*g)+C(C(u*H)+C(x*I)));z[y+56>>2]=C(g*F)+C(C(H*G)+C(I*w));J=C(f+e);i=C(i*n);e=C(m+m);f=C(e*l);o=C(i-f);e=C(m*e);p=C(j-e);r=C(C(ca*J)+C(C(T*o)+C(X*p)));s=C(C(T*J)+C(C(t*o)+C(u*p)));j=C(C(X*J)+C(C(u*o)+C(x*p)));z[y+52>>2]=C(g*r)+C(C(H*s)+C(I*j));A=g;g=C(k-h);k=C(C(C(1)-q)-e);h=C(i+f);i=C(C(ca*g)+C(C(T*k)+C(X*h)));f=C(C(T*g)+C(C(t*k)+C(u*h)));e=C(C(X*g)+C(C(u*k)+C(x*h)));z[y+48>>2]=C(A*i)+C(C(H*f)+C(I*e));z[y+40>>2]=C(J*r)+C(C(o*s)+C(p*j));z[y+36>>2]=C(J*i)+C(C(o*f)+C(p*e));z[y+24>>2]=C(g*i)+C(C(k*f)+C(h*e));f=C(C(g*F)+C(C(k*G)+C(h*w)));z[y+32>>2]=f;e=C(C(g*r)+C(C(k*s)+C(h*j)));z[y+28>>2]=e;i=C(C(J*F)+C(C(o*G)+C(p*w)));z[y+44>>2]=i;f=C(D(f));e=C(D(e));d=f>e?1:2;g=e;e=C(D(i));ba=e>f?g>>1|0)|0)+1|0;da=d&3;ea=(y+24|0)+B(da,12)|0;M=(d+(da>>>1|0)|0)+1&3;d=M<<2;e=z[ea+d>>2];if(e==C(0)){break a}f=C(z[ea+(da<<2)>>2]-z[d+((y+24|0)+B(M,12)|0)>>2]);e=C(e+e);if(C(D(f))>C(C(D(e))*C(2e6))){break a}f=C(f/e);e=C(D(f));b:{if(e>C(1e3)){v[y+16>>2]=0;v[y+20>>2]=1065353216;v[y+8>>2]=0;v[y+12>>2]=0;z[(y+8|0)+(ba<<2)>>2]=C(1)/C(f*C(4));break b}v[y+16>>2]=0;v[y+8>>2]=0;v[y+12>>2]=0;e=C(C(1)/C(e+C(K(C(C(f*f)+C(1))))));e=C(C(1)/C(K(C(C(e*e)+C(1)))));z[y+20>>2]=K(C(C(e+C(1))*C(.5)));e=C(K(C(C(C(1)-e)*C(.5))));z[(y+8|0)+(ba<<2)>>2]=f>=C(0)?e:C(-e)}j=z[y+20>>2];q=z[y+8>>2];k=z[y+12>>2];h=z[y+16>>2];e=C(C(C(C(l*j)-C(q*N))-C(n*k))-C(m*h));g=e;A=C(e*e);i=C(C(C(N*k)+C(C(l*h)+C(m*j)))-C(q*n));f=C(C(C(n*h)+C(C(l*q)+C(N*j)))-C(k*m));e=C(C(C(m*q)+C(C(l*k)+C(n*j)))-C(h*N));h=C(C(1)/C(K(C(A+C(C(i*i)+C(C(f*f)+C(e*e)))))));l=C(g*h);m=C(i*h);n=C(e*h);N=C(f*h);E=E+1|0;if((E|0)!=5){continue}}break}Q=z[R+4>>2];H=z[O+4>>2];I=z[R+8>>2];J=z[O+8>>2];f=C(-n);g=C(f-n);j=C(g*f);o=C(-m);e=C(o-m);q=C(e*o);m=C(C(C(1)-j)-q);t=z[S+12>>2];p=C(C(-N)-N);f=C(p*f);F=C(-l);e=C(e*F);u=C(f+e);G=z[R+12>>2];k=C(p*o);h=C(g*F);x=C(k-h);w=z[O+12>>2];z[S+12>>2]=C(m*t)+C(C(u*G)+C(x*w));r=z[S+8>>2];z[S+8>>2]=C(m*r)+C(C(u*I)+C(x*J));s=z[S+4>>2];z[S+4>>2]=C(s*m)+C(C(u*Q)+C(x*H));z[S>>2]=C(Y*m)+C(C(W*u)+C(V*x));n=C(f-e);i=C(C(N*p)+C(1));l=C(i-q);f=C(g*o);e=C(p*F);o=C(f+e);z[R+12>>2]=C(t*n)+C(C(G*l)+C(w*o));z[R+8>>2]=C(n*r)+C(C(l*I)+C(o*J));z[R+4>>2]=C(s*n)+C(C(l*Q)+C(o*H));z[R>>2]=C(Y*n)+C(C(W*l)+C(V*o));p=C(k+h);A=C(t*p);g=C(f-e);t=C(i-j);z[O+12>>2]=A+C(C(G*g)+C(w*t));z[O+8>>2]=C(p*r)+C(C(g*I)+C(t*J));z[O+4>>2]=C(s*p)+C(C(g*Q)+C(t*H));z[O>>2]=C(Y*p)+C(C(V*t)+C(W*g));M=v[a+4>>2];r=z[M+36>>2];E=v[a+8>>2];s=z[E+36>>2];j=z[M+40>>2];q=z[E+40>>2];d=v[a>>2];k=z[d+32>>2];h=z[M+32>>2];i=z[E+32>>2];z[d+32>>2]=C(m*k)+C(C(u*h)+C(x*i));f=z[d+40>>2];z[d+40>>2]=C(m*f)+C(C(u*j)+C(x*q));e=z[d+36>>2];z[d+36>>2]=C(m*e)+C(C(u*r)+C(x*s));z[M+40>>2]=C(n*f)+C(C(l*j)+C(o*q));z[M+36>>2]=C(n*e)+C(C(l*r)+C(o*s));z[M+32>>2]=C(n*k)+C(C(l*h)+C(o*i));z[E+40>>2]=C(p*f)+C(C(g*j)+C(t*q));z[E+36>>2]=C(p*e)+C(C(g*r)+C(t*s));z[E+32>>2]=C(p*k)+C(C(g*h)+C(t*i));F=z[M+20>>2];G=z[E+20>>2];w=z[M+16>>2];r=z[E+16>>2];s=z[M+28>>2];j=z[E+28>>2];q=z[d+24>>2];k=z[M+24>>2];h=z[E+24>>2];z[d+24>>2]=C(m*q)+C(C(u*k)+C(x*h));i=z[d+28>>2];z[d+28>>2]=C(m*i)+C(C(u*s)+C(x*j));f=z[d+20>>2];z[d+20>>2]=C(m*f)+C(C(u*F)+C(x*G));e=z[d+16>>2];z[d+16>>2]=C(m*e)+C(C(u*w)+C(x*r));z[M+20>>2]=C(n*f)+C(C(l*F)+C(o*G));z[M+24>>2]=C(n*q)+C(C(l*k)+C(o*h));z[M+28>>2]=C(n*i)+C(C(l*s)+C(o*j));z[M+16>>2]=C(n*e)+C(C(l*w)+C(o*r));z[E+28>>2]=C(p*i)+C(C(g*s)+C(t*j));z[E+24>>2]=C(p*q)+C(C(g*k)+C(t*h));z[E+20>>2]=C(p*f)+C(C(g*F)+C(t*G));z[E+16>>2]=C(p*e)+C(C(g*w)+C(t*r));E=v[a+4>>2];r=z[E+52>>2];d=v[a+8>>2];s=z[d+52>>2];j=z[E+56>>2];q=z[d+56>>2];a=v[a>>2];k=z[a+48>>2];h=z[E+48>>2];i=z[d+48>>2];z[a+48>>2]=C(m*k)+C(C(u*h)+C(x*i));f=z[a+56>>2];z[a+56>>2]=C(m*f)+C(C(u*j)+C(x*q));e=z[a+52>>2];z[a+52>>2]=C(m*e)+C(C(u*r)+C(x*s));z[E+56>>2]=C(n*f)+C(C(l*j)+C(o*q));z[E+52>>2]=C(n*e)+C(C(l*r)+C(o*s));z[E+48>>2]=C(n*k)+C(C(l*h)+C(o*i));z[d+56>>2]=C(p*f)+C(C(g*j)+C(t*q));z[d+52>>2]=C(p*e)+C(C(g*r)+C(t*s));z[d+48>>2]=C(p*k)+C(C(g*h)+C(t*i));F=z[b+12>>2];G=z[b+28>>2];w=z[b+44>>2];z[b+44>>2]=C(p*F)+C(C(g*G)+C(t*w));r=z[b+8>>2];s=z[b+24>>2];j=z[b+40>>2];z[b+40>>2]=C(p*r)+C(C(g*s)+C(t*j));q=z[b+4>>2];k=z[b+20>>2];h=z[b+36>>2];z[b+36>>2]=C(p*q)+C(C(g*k)+C(t*h));i=z[b>>2];f=z[b+16>>2];e=z[b+32>>2];z[b+32>>2]=C(p*i)+C(C(g*f)+C(t*e));z[b+28>>2]=C(n*F)+C(C(l*G)+C(o*w));z[b+24>>2]=C(n*r)+C(C(l*s)+C(o*j));z[b+20>>2]=C(n*q)+C(C(l*k)+C(o*h));z[b+16>>2]=C(n*i)+C(C(l*f)+C(o*e));z[b+12>>2]=C(m*F)+C(C(u*G)+C(x*w));z[b+8>>2]=C(m*r)+C(C(u*s)+C(x*j));z[b+4>>2]=C(m*q)+C(C(u*k)+C(x*h));z[b>>2]=C(m*i)+C(C(u*f)+C(x*e));F=z[c+12>>2];G=z[c+28>>2];w=z[c+44>>2];z[c+44>>2]=C(p*F)+C(C(g*G)+C(t*w));r=z[c+8>>2];s=z[c+24>>2];j=z[c+40>>2];z[c+40>>2]=C(p*r)+C(C(g*s)+C(t*j));q=z[c+4>>2];k=z[c+20>>2];h=z[c+36>>2];z[c+36>>2]=C(p*q)+C(C(g*k)+C(t*h));i=z[c>>2];f=z[c+16>>2];e=z[c+32>>2];z[c+32>>2]=C(p*i)+C(C(g*f)+C(t*e));z[c+28>>2]=C(n*F)+C(C(l*G)+C(o*w));z[c+24>>2]=C(n*r)+C(C(l*s)+C(o*j));z[c+20>>2]=C(n*q)+C(C(l*k)+C(o*h));z[c+16>>2]=C(n*i)+C(C(l*f)+C(o*e));z[c+12>>2]=C(m*F)+C(C(u*G)+C(x*w));z[c+8>>2]=C(m*r)+C(C(u*s)+C(x*j));z[c+4>>2]=C(m*q)+C(C(u*k)+C(x*h));z[c>>2]=C(m*i)+C(C(u*f)+C(x*e))}function N$(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=C(f);g=g|0;h=h|0;i=i|0;var k=C(0),m=0,n=0,o=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=0,ja=0;n=xa-160|0;xa=n;y=z[b+12>>2];a:{b:{k=z[b+4>>2];o=z[b+8>>2];if(k!=C(1)|o!=C(1)){break b}D=C(1);if(y!=C(1)){break b}G=z[c+8>>2];k=C(z[d+8>>2]-z[c+24>>2]);r=C(k+k);E=z[c>>2];k=C(z[d>>2]-z[c+16>>2]);y=C(k+k);k=C(z[d+4>>2]-z[c+20>>2]);o=C(k+k);F=z[c+4>>2];k=C(C(G*r)+C(C(E*y)+C(o*F)));A=z[c+12>>2];s=C(C(A*A)+C(-.5));z[n+40>>2]=C(G*k)+C(C(r*s)-C(A*C(C(E*o)-C(y*F))));z[n+36>>2]=C(F*k)+C(C(o*s)-C(A*C(C(G*y)-C(r*E))));z[n+32>>2]=C(E*k)+C(C(y*s)-C(A*C(C(F*r)-C(o*G))));k=z[e+8>>2];r=C(k+k);k=z[e>>2];y=C(k+k);k=z[e+4>>2];o=C(k+k);k=C(C(G*r)+C(C(E*y)+C(F*o)));z[n+8>>2]=C(G*k)+C(C(r*s)-C(A*C(C(E*o)-C(y*F))));z[n+4>>2]=C(F*k)+C(C(o*s)-C(A*C(C(G*y)-C(r*E))));z[n>>2]=C(E*k)+C(C(y*s)-C(A*C(C(F*r)-C(o*G))));Q=0;break a}z[n+40>>2]=C(1)/y;z[n+36>>2]=C(1)/o;z[n+32>>2]=C(1)/k;z[n+44>>2]=z[b+16>>2];z[n+48>>2]=z[b+20>>2];z[n+52>>2]=z[b+24>>2];z[n+56>>2]=z[b+28>>2];F=z[c+8>>2];s=C(z[c+24>>2]*C(-2));A=z[c>>2];r=C(z[c+16>>2]*C(-2));y=C(z[c+20>>2]*C(-2));D=z[c+4>>2];o=C(C(F*s)+C(C(A*r)+C(y*D)));E=z[c+12>>2];k=C(C(E*E)+C(-.5));z[n+24>>2]=C(F*o)+C(C(s*k)-C(E*C(C(A*y)-C(r*D))));z[n+20>>2]=C(D*o)+C(C(y*k)-C(E*C(C(F*r)-C(s*A))));z[n+12>>2]=E;z[n+8>>2]=-F;z[n+4>>2]=-D;z[n>>2]=-A;z[n+16>>2]=C(A*o)+C(C(r*k)-C(E*C(C(D*s)-C(y*F))));bX(n- -64|0,n+32|0,n);T=z[n+80>>2];z[n+128>>2]=T;U=z[n+84>>2];z[n+132>>2]=U;V=z[n+92>>2];z[n+140>>2]=V;W=z[n+96>>2];z[n+144>>2]=W;G=z[n+64>>2];z[n+112>>2]=G;E=z[n+68>>2];z[n+116>>2]=E;F=z[n+72>>2];z[n+120>>2]=F;A=z[n+76>>2];z[n+124>>2]=A;D=z[n+88>>2];z[n+136>>2]=D;s=z[n+100>>2];o=z[n+104>>2];z[n+152>>2]=o;k=z[n+108>>2];z[n+156>>2]=k;z[n+148>>2]=s;H=k;r=z[d>>2];y=z[d+4>>2];k=z[d+8>>2];z[n+40>>2]=H+C(C(C(F*r)+C(U*y))+C(W*k));z[n+36>>2]=o+C(C(C(E*r)+C(T*y))+C(V*k));z[n+32>>2]=s+C(C(C(G*r)+C(A*y))+C(D*k));y=z[e>>2];o=z[e+4>>2];k=z[e+8>>2];s=C(C(C(F*y)+C(U*o))+C(W*k));z[n+8>>2]=s;r=C(C(C(E*y)+C(T*o))+C(V*k));z[n+4>>2]=r;o=C(C(C(G*y)+C(A*o))+C(D*k));z[n>>2]=o;k=C(K(C(C(s*s)+C(C(o*o)+C(r*r)))));D=C(C(1)/k);if(k>C(0)){z[n+8>>2]=s*D;z[n+4>>2]=r*D;z[n>>2]=o*D}f=C(C(k*f)+C(.0010000000474974513));Q=n+112|0}d=1;I=w[b+32|0]&2;d=I?d:w[g|0]>>>7|0;g=x[g>>1];z[n+108>>2]=D;t[n+104|0]=I>>>1;v[n+100>>2]=e;v[n+96>>2]=g;v[n+92>>2]=Q;v[n+88>>2]=c;v[n+84>>2]=b+4;v[n+76>>2]=0;v[n+72>>2]=i;v[n+64>>2]=143152;v[n+80>>2]=h;v[n+68>>2]=h>>>0<2?(g>>>6^-1)&1:2;g=n- -64|0;h=0;i=0;m=xa-288|0;xa=m;c:{if(f==C(0)){y=z[a+60>>2];e=w[a+64|0];c=v[a+28>>2];b=v[a+24>>2];v[m+36>>2]=143208;v[m+56>>2]=0;v[m+32>>2]=143184;ia=m,ja=Waa(b,c),v[ia+48>>2]=ja;v[m+52>>2]=Aa;v[m+44>>2]=e>>>1&1;v[m+40>>2]=g;A=z[n+32>>2];z[m+60>>2]=A;D=z[n+36>>2];z[m- -64>>2]=D;s=z[n+40>>2];z[m+68>>2]=s;o=z[n>>2];z[m+72>>2]=o;k=z[n+4>>2];z[m+76>>2]=k;r=z[n+8>>2];v[m+112>>2]=0;v[m+116>>2]=0;u[m+108>>1]=0;v[m+104>>2]=-1;z[m+88>>2]=y;t[m+84|0]=d;z[m+80>>2]=r;v[m+120>>2]=0;v[m+124>>2]=0;v[m+128>>2]=0;v[m+132>>2]=0;v[m+144>>2]=0;v[m+136>>2]=2139095039;v[m+140>>2]=0;v[m+96>>2]=0;v[m+100>>2]=0;z[m+92>>2]=f;b=v[g+4>>2];z[m+244>>2]=D;z[m+248>>2]=s;z[m+260>>2]=k;z[m+264>>2]=r;v[m+268>>2]=0;v[m+252>>2]=0;t[m+208|0]=0;z[m+240>>2]=A;z[m+256>>2]=o;t[m+209|0]=(b|0)==1;z[m+24>>2]=s;z[m+20>>2]=D;z[m+16>>2]=A;z[m+8>>2]=s+C(0);z[m+4>>2]=D+C(0);z[m>>2]=A+C(0);C0(a+112|0,m+16|0,m,m+32|4);v[m+36>>2]=143208;v[m+32>>2]=143184;if(!w[m+208|0]){break c}a=v[m+40>>2];Ba[v[v[a>>2]>>2]](a,m+96|0,m+160|0,m+172|0,m+184|0,m+92|0,m+196|0)|0;break c}D=z[a+60>>2];e=w[a+64|0];c=v[a+28>>2];b=v[a+24>>2];v[m+36>>2]=143384;v[m+56>>2]=0;v[m+32>>2]=143360;ia=m,ja=Waa(b,c),v[ia+48>>2]=ja;v[m+52>>2]=Aa;v[m+44>>2]=e>>>1&1;v[m+40>>2]=g;s=z[n+32>>2];z[m+60>>2]=s;r=z[n+36>>2];z[m- -64>>2]=r;y=z[n+40>>2];z[m+68>>2]=y;o=z[n>>2];z[m+72>>2]=o;k=z[n+4>>2];z[m+76>>2]=k;A=z[n+8>>2];v[m+112>>2]=0;v[m+116>>2]=0;u[m+108>>1]=0;v[m+104>>2]=-1;z[m+88>>2]=D;t[m+84|0]=d;z[m+80>>2]=A;v[m+120>>2]=0;v[m+124>>2]=0;v[m+128>>2]=0;v[m+132>>2]=0;v[m+144>>2]=0;v[m+136>>2]=2139095039;v[m+140>>2]=0;v[m+96>>2]=0;v[m+100>>2]=0;z[m+92>>2]=f;b=v[g+4>>2];z[m+244>>2]=r;z[m+248>>2]=y;z[m+260>>2]=k;z[m+264>>2]=A;v[m+268>>2]=0;v[m+252>>2]=0;t[m+208|0]=0;z[m+240>>2]=s;z[m+256>>2]=o;t[m+209|0]=(b|0)==1;d=m+32|0;J=xa-528|0;xa=J;e=v[a+180>>2];g=e-1|0;d:{if((g|0)<0){break d}I=J+16|4;if(g>>>0>=3){b=e&-4;while(1){Q=h<<2;c=B(g,112);v[Q+I>>2]=c;v[I+(Q|4)>>2]=c-112;v[I+(Q|8)>>2]=c-224;v[I+(Q|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){v[I+(h<<2)>>2]=B(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}k=z[n+8>>2];k=k>C(0)?k:C(-k);o=(l(2,(p(k>C(9.999999717180685e-10)?k:C(9.999999717180685e-10)),j(2))|v[n+8>>2]&-2147483648),q());k=C(C(1)/o);H=C(k*C(C(2)-C(k*o)));N=C(C(0)-C(z[n+40>>2]*H));k=z[n+4>>2];k=k>C(0)?k:C(-k);o=(l(2,(p(k>C(9.999999717180685e-10)?k:C(9.999999717180685e-10)),j(2))|v[n+4>>2]&-2147483648),q());k=C(C(1)/o);L=C(k*C(C(2)-C(k*o)));O=C(C(0)-C(z[n+36>>2]*L));k=z[n>>2];k=k>C(0)?k:C(-k);o=(l(2,(p(k>C(9.999999717180685e-10)?k:C(9.999999717180685e-10)),j(2))|v[n>>2]&-2147483648),q());k=C(C(1)/o);M=C(k*C(C(2)-C(k*o)));P=C(C(0)-C(z[n+32>>2]*M));b=v[a+200>>2];while(1){a=(J+16|0)+(e<<2)|0;c=v[a>>2];e:{if(c&1){v[J+12>>2]=c-1;z[J+8>>2]=f;if(!(Ba[v[v[d>>2]>>2]](d,1,J+12|0,J+8|0)|0)){break d}k=z[J+8>>2];if(k!=f){f=k}e=e-1|0;break e}c=b+c|0;fa=z[c+44>>2];ga=z[c+92>>2];$=z[c+60>>2];aa=z[c+12>>2];ha=z[c+28>>2];T=z[c+76>>2];U=z[c+40>>2];V=z[c+88>>2];ba=z[c+56>>2];ca=z[c+8>>2];W=z[c+24>>2];G=z[c+72>>2];E=z[c+36>>2];F=z[c+84>>2];da=z[c+52>>2];ea=z[c+4>>2];A=z[c+20>>2];D=z[c+68>>2];s=z[c+32>>2];r=z[c+80>>2];R=z[c>>2];S=z[c+48>>2];y=z[c+16>>2];k=z[c+64>>2];v[a>>2]=v[c+96>>2];X=C(P+C(M*R));Y=C(P+C(M*S));o=Xs?s:r;y=kY?X:Y;k=Z>_?Z:_;o=k>o?o:k;k=ro?o:k;a=e-(y>k|(kS|f>2]=v[c+100>>2];R=C(P+C(M*ea));S=C(P+C(M*da));o=Rs?s:r;y=kS?R:S;k=A>D?A:D;o=k>o?o:k;k=ro?o:k;a=a+((y>k^-1)&(!(k>2]=v[c+104>>2];E=C(P+C(M*ca));F=C(P+C(M*ba));o=Es?s:r;y=kF?E:F;k=A>D?A:D;o=k>o?o:k;k=ro?o:k;a=a+((y>k^-1)&(!(k>2]=v[c+108>>2];E=C(P+C(M*aa));F=C(P+C(M*$));o=Es?s:r;y=kF?E:F;k=A>D?A:D;o=k>o?o:k;k=ro?o:k;e=a+((y>k^-1)&(!(k>2]=143384;v[m+32>>2]=143360;if(!w[m+208|0]){break c}a=v[m+40>>2];Ba[v[v[a>>2]>>2]](a,m+96|0,m+160|0,m+172|0,m+184|0,m+92|0,m+196|0)|0}xa=m+288|0;xa=n+160|0;return v[n+76>>2]}function lv(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=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=0,oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0);h=xa-224|0;xa=h;na=w[f+6|0];n=z[c+4>>2];m=C(n+n);l=z[c+8>>2];o=C(m*l);B=z[c>>2];i=C(B+B);k=z[c+12>>2];s=C(i*k);K=C(o-s);z[h+76>>2]=K;o=C(o+s);z[h+68>>2]=o;s=C(C(1)-C(B*i));r=C(n*m);B=C(s-r);z[h+80>>2]=B;q=C(l+l);u=C(l*q);s=C(s-u);z[h- -64>>2]=s;l=C(i*l);m=C(m*k);P=C(l+m);z[h+72>>2]=P;i=C(i*n);k=C(q*k);Q=C(i-k);z[h+60>>2]=Q;n=C(l-m);z[h+56>>2]=n;l=C(i+k);z[h+52>>2]=l;F=C(C(C(1)-r)-u);z[h+48>>2]=F;V=z[c+16>>2];z[h+84>>2]=V;W=z[c+20>>2];z[h+88>>2]=W;X=z[c+24>>2];z[h+92>>2]=X;m=z[d+4>>2];r=C(m+m);i=z[d+8>>2];x=C(r*i);q=z[d>>2];k=C(q+q);u=z[d+12>>2];y=C(k*u);G=C(x-y);z[h+28>>2]=G;H=C(x+y);z[h+20>>2]=H;q=C(C(1)-C(q*k));x=C(m*r);I=C(q-x);z[h+32>>2]=I;A=q;q=C(i+i);y=C(i*q);J=C(A-y);z[h+16>>2]=J;i=C(k*i);r=C(r*u);L=C(i+r);z[h+24>>2]=L;m=C(k*m);k=C(q*u);M=C(m-k);z[h+12>>2]=M;q=C(i-r);z[h+8>>2]=q;k=C(m+k);z[h+4>>2]=k;N=C(C(C(1)-x)-y);z[h>>2]=N;Y=z[d+16>>2];z[h+36>>2]=Y;Z=z[d+20>>2];z[h+40>>2]=Z;_=z[d+24>>2];z[h+44>>2]=_;r=z[e>>2];O=C(_-X);S=C(Y-V);aa=C(Z-W);A=C(C(n*O)+C(C(F*S)+C(l*aa)));z[h+192>>2]=A;i=z[b+12>>2];oa=C(C(n*I)+C(C(F*L)+C(l*G)));ba=C(C(D(oa))+C(9.999999974752427e-7));m=z[b+8>>2];pa=C(C(n*H)+C(C(F*M)+C(l*J)));ca=C(C(D(pa))+C(9.999999974752427e-7));u=z[b+4>>2];qa=C(C(n*q)+C(C(F*N)+C(l*k)));da=C(C(D(qa))+C(9.999999974752427e-7));x=z[a+4>>2];ea=C(r+C(C(C(i*ba)+C(C(m*ca)+C(C(u*da)+x)))-C(D(A))));z[h+160>>2]=ea;a:{if(((p(ea),j(2))|0)<0){c=0;break a}$=C(C(o*O)+C(C(Q*S)+C(s*aa)));z[h+196>>2]=$;ra=C(C(o*I)+C(C(Q*L)+C(s*G)));fa=C(C(D(ra))+C(9.999999974752427e-7));sa=C(C(o*H)+C(C(Q*M)+C(s*J)));ga=C(C(D(sa))+C(9.999999974752427e-7));ta=C(C(o*q)+C(C(Q*N)+C(s*k)));ha=C(C(D(ta))+C(9.999999974752427e-7));y=z[a+8>>2];ia=C(r+C(C(C(i*fa)+C(C(m*ga)+C(C(u*ha)+y)))-C(D($))));z[h+164>>2]=ia;c=0;if(((p(ia),j(2))|0)<0){break a}R=C(C(B*O)+C(C(P*S)+C(K*aa)));z[h+200>>2]=R;ua=C(C(B*I)+C(C(P*L)+C(K*G)));ja=C(C(D(ua))+C(9.999999974752427e-7));va=C(C(B*H)+C(C(P*M)+C(K*J)));ka=C(C(D(va))+C(9.999999974752427e-7));wa=C(C(B*q)+C(C(P*N)+C(K*k)));la=C(C(D(wa))+C(9.999999974752427e-7));E=z[a+12>>2];ma=C(r+C(C(C(i*ja)+C(C(m*ka)+C(C(u*la)+E)))-C(D(R))));z[h+168>>2]=ma;if(((p(ma),j(2))|0)<0){break a}T=C(C(q*O)+C(C(N*S)+C(k*aa)));z[h+204>>2]=T;T=C(r+C(C(C(E*la)+C(C(y*ha)+C(C(x*da)+u)))-C(D(T))));z[h+172>>2]=T;if(((p(T),j(2))|0)<0){break a}U=C(C(H*O)+C(C(M*S)+C(J*aa)));z[h+208>>2]=U;U=C(r+C(C(C(E*ka)+C(C(y*ga)+C(C(x*ca)+m)))-C(D(U))));z[h+176>>2]=U;if(((p(U),j(2))|0)<0){break a}O=C(C(I*O)+C(C(L*S)+C(G*aa)));z[h+212>>2]=O;O=C(r+C(C(C(E*ja)+C(C(y*fa)+C(C(x*ba)+i)))-C(D(O))));z[h+180>>2]=O;if(((p(O),j(2))|0)<0){break a}b:{if(!na){na=0;if(C(D(C(C(R*ta)-C(wa*$))))>C(C(i*ca)+C(C(m*ba)+C(C(E*ha)+C(C(y*la)+r))))){break a}S=C(-$);if(C(D(C(C(R*sa)+C(va*S))))>C(C(i*da)+C(C(u*ba)+C(C(E*ga)+C(C(y*ka)+r))))|C(D(C(C(R*ra)+C(ua*S))))>C(C(m*da)+C(C(u*ca)+C(C(E*fa)+C(C(y*ja)+r))))|C(D(C(C(A*wa)-C(qa*R))))>C(C(i*ga)+C(C(m*fa)+C(C(E*da)+C(C(x*la)+r))))){break a}R=C(-R);if(C(D(C(C(A*va)+C(pa*R))))>C(C(i*ha)+C(C(u*fa)+C(C(E*ca)+C(C(x*ka)+r))))|C(D(C(C(A*ua)+C(oa*R))))>C(C(m*ha)+C(C(u*ga)+C(C(E*ba)+C(C(x*ja)+r))))|C(D(C(C($*qa)-C(ta*A))))>C(C(i*ka)+C(C(m*ja)+C(C(y*da)+C(C(x*ha)+r))))){break a}A=C(-A);if(C(D(C(C($*pa)+C(sa*A))))>C(C(i*la)+C(C(u*ja)+C(C(y*ca)+C(C(x*ga)+r))))){break a}if(!(C(D(C(C($*oa)+C(ra*A))))>C(C(m*la)+C(C(u*ka)+C(C(y*ba)+C(C(x*fa)+r)))))){break b}break a}c=(na<<2)+h|0;z[c+156>>2]=z[c+156>>2]*C(.9990000128746033);O=z[h+180>>2];U=z[h+176>>2];T=z[h+172>>2];ma=z[h+168>>2];ia=z[h+164>>2];ea=z[h+160>>2]}b=b+4|0;d=a+4|0;A=ea>=C(0)?eaia&ia>=C(0);c=a;A=a?ia:A;a=A>ma&ma>=C(0);c=a?2:c;A=a?ma:A;a=A>T&T>=C(0);c=a?3:c;A=a?T:A;a=A>U&U>=C(0);c=a?4:c;e=O>=C(0)?(a?U:A)>O?5:c:c;a=v[(h+192|0)+(e<<2)>>2]&-2147483648;c=0;c:{d:{switch(e|0){case 0:e:{if(a){z[h+96>>2]=F;z[h+112>>2]=F;z[h+104>>2]=n;q=C(X-C(n*x));z[h+100>>2]=l;k=C(W-C(l*x));i=C(V-C(F*x));break e}i=C(-n);z[h+104>>2]=i;m=C(-l);z[h+100>>2]=m;k=C(-F);z[h+96>>2]=k;z[h+112>>2]=k;q=C(X+C(n*x));k=C(W+C(l*x));o=C(-o);s=C(-s);Q=C(-Q);l=m;n=i;i=C(V+C(F*x))}z[h+156>>2]=q;z[h+152>>2]=k;z[h+144>>2]=B;z[h+140>>2]=K;z[h+132>>2]=o;z[h+128>>2]=s;z[h+148>>2]=i;z[h+136>>2]=P;z[h+124>>2]=Q;z[h+120>>2]=n;z[h+116>>2]=l;c=gZ(g,h+96|0,y,E,b,h+112|0,h,r);break c;case 1:z[h+144>>2]=n;z[h+140>>2]=l;z[h+136>>2]=F;f:{if(a){z[h+96>>2]=Q;z[h+112>>2]=Q;z[h+104>>2]=o;l=C(X-C(o*y));z[h+100>>2]=s;F=C(W-C(s*y));n=C(V-C(Q*y));break f}n=C(-o);z[h+104>>2]=n;i=C(-s);z[h+100>>2]=i;l=C(-Q);z[h+96>>2]=l;z[h+112>>2]=l;l=C(X+C(o*y));F=C(W+C(s*y));B=C(-B);K=C(-K);P=C(-P);s=i;o=n;n=C(V+C(Q*y))}z[h+156>>2]=l;z[h+152>>2]=F;z[h+132>>2]=B;z[h+128>>2]=K;z[h+148>>2]=n;z[h+124>>2]=P;z[h+120>>2]=o;z[h+116>>2]=s;c=gZ(g,h+96|0,E,x,b,h+112|0,h,r);break c;case 2:z[h+144>>2]=o;z[h+140>>2]=s;z[h+136>>2]=Q;g:{if(a){z[h+96>>2]=P;z[h+112>>2]=P;z[h+104>>2]=B;k=C(X-C(B*E));z[h+100>>2]=K;o=C(W-C(K*E));s=C(V-C(P*E));break g}s=C(-B);z[h+104>>2]=s;i=C(-K);z[h+100>>2]=i;o=C(-P);z[h+96>>2]=o;z[h+112>>2]=o;k=C(X+C(B*E));o=C(W+C(K*E));n=C(-n);l=C(-l);F=C(-F);K=i;B=s;s=C(V+C(P*E))}z[h+156>>2]=k;z[h+152>>2]=o;z[h+132>>2]=n;z[h+128>>2]=l;z[h+148>>2]=s;z[h+124>>2]=F;z[h+120>>2]=B;z[h+116>>2]=K;c=gZ(g,h+96|0,x,y,b,h+112|0,h,r);break c;case 3:h:{if(a){z[h+96>>2]=N;z[h+112>>2]=-N;z[h+104>>2]=q;n=C(_+C(q*u));z[h+100>>2]=k;l=C(Z+C(k*u));H=C(-H);J=C(-J);M=C(-M);q=C(-q);k=C(-k);o=C(Y+C(N*u));break h}z[h+104>>2]=-q;z[h+100>>2]=-k;z[h+112>>2]=N;z[h+96>>2]=-N;n=C(_-C(q*u));l=C(Z-C(k*u));o=C(Y-C(N*u))}z[h+156>>2]=n;z[h+152>>2]=l;z[h+144>>2]=I;z[h+140>>2]=G;z[h+132>>2]=H;z[h+128>>2]=J;z[h+148>>2]=o;z[h+136>>2]=L;z[h+124>>2]=M;z[h+120>>2]=q;z[h+116>>2]=k;c=gZ(g,h+96|0,m,i,d,h+112|0,h+48|0,r);break c;case 4:z[h+144>>2]=q;z[h+140>>2]=k;z[h+136>>2]=N;i:{if(a){z[h+96>>2]=M;z[h+112>>2]=-M;z[h+104>>2]=H;n=C(_+C(H*m));z[h+100>>2]=J;l=C(Z+C(J*m));I=C(-I);G=C(-G);L=C(-L);H=C(-H);J=C(-J);o=C(Y+C(M*m));break i}z[h+104>>2]=-H;z[h+100>>2]=-J;z[h+112>>2]=M;z[h+96>>2]=-M;n=C(_-C(H*m));l=C(Z-C(J*m));o=C(Y-C(M*m))}z[h+156>>2]=n;z[h+152>>2]=l;z[h+132>>2]=I;z[h+128>>2]=G;z[h+148>>2]=o;z[h+124>>2]=L;z[h+120>>2]=H;z[h+116>>2]=J;c=gZ(g,h+96|0,i,u,d,h+112|0,h+48|0,r);break c;case 5:break d;default:break c}}z[h+144>>2]=H;z[h+140>>2]=J;z[h+136>>2]=M;j:{if(a){z[h+96>>2]=L;z[h+112>>2]=-L;z[h+104>>2]=I;n=C(_+C(I*i));z[h+100>>2]=G;l=C(Z+C(G*i));q=C(-q);k=C(-k);N=C(-N);I=C(-I);G=C(-G);o=C(Y+C(L*i));break j}z[h+104>>2]=-I;z[h+100>>2]=-G;z[h+112>>2]=L;z[h+96>>2]=-L;n=C(_-C(I*i));l=C(Z-C(G*i));o=C(Y-C(L*i))}z[h+156>>2]=n;z[h+152>>2]=l;z[h+132>>2]=q;z[h+128>>2]=k;z[h+148>>2]=o;z[h+124>>2]=N;z[h+120>>2]=I;z[h+116>>2]=G;c=gZ(g,h+96|0,u,m,d,h+112|0,h+48|0,r)}na=e+1|0}t[f+6|0]=c?na:0;xa=h+224|0;return(c|0)!=0|0}function JZ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,u){var x=C(0),y=0,A=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=0,ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=0,ha=0,ia=0,ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=0,za=0;y=xa-112|0;xa=y;x=z[m>>2];a:{if(r){A=z[m+8>>2];ma=C(-A);E=z[m+4>>2];na=C(-E);U=C(-x);break a}E=z[m+4>>2];na=E;A=z[m+8>>2];ma=A;U=x}sa=U;V=y-(B(a>>>0>g>>>0?a:g,12)+15&-16)|0;xa=V;G=a+15&-16;ga=V-G|0;m=ga;xa=m;aa=m-G|0;xa=aa;G=g+15&-16;ha=aa-G|0;m=ha;xa=m;ia=m-G|0;xa=ia;ya=v[q+4096>>2];m=0;v[y+16>>2]=0;v[y+32>>2]=0;v[y>>2]=0;v[y+44>>2]=0;b:{c:{d:{if(g>>>0<3){break d}oa=C(C(z[j+8>>2]*A)+C(C(z[j>>2]*x)+C(z[j+4>>2]*E)));pa=C(C(z[j+20>>2]*A)+C(C(z[j+12>>2]*x)+C(E*z[j+16>>2])));qa=C(C(z[j+32>>2]*A)+C(C(z[j+24>>2]*x)+C(E*z[j+28>>2])));O=C(C(C(C(-oa)*z[k>>2])-C(z[k+4>>2]*pa))-C(qa*z[k+8>>2]));if(!(O>=C(1.0000000116860974e-7))){break d}Q=z[n+44>>2];R=z[l+32>>2];T=z[n+40>>2];P=z[l+28>>2];M=z[n+36>>2];J=z[l+24>>2];N=z[n+32>>2];K=z[n+28>>2];L=z[n+24>>2];I=z[n+20>>2];H=z[n+16>>2];F=z[n+12>>2];A=z[n+4>>2];E=z[n>>2];x=z[n+8>>2];ra=z[k+12>>2];KZ(y+16|0,y+32|0,y,y+44|0,V,g,h,i,l);if(!a){k=0;break c}ta=C(C(R*Q)+C(C(J*M)+C(P*T)));ua=C(C(R*N)+C(C(J*L)+C(P*K)));va=C(C(R*I)+C(C(J*F)+C(P*H)));wa=C(C(R*x)+C(C(J*E)+C(A*P)));W=C(C(1)/O);X=C(-ra);Y=z[y+44>>2];Z=z[y>>2];_=z[y+32>>2];R=z[y+16>>2];k=0;while(1){S=c+m|0;ba=B(w[S|0],12)+b|0;I=z[ba+8>>2];H=z[ba>>2];x=z[ba+4>>2];F=C(ta+C(C(I*ua)+C(C(H*wa)+C(va*x))));ca=C(W*C(ra+F));A=C(C(qa*ca)+C(C(C(C(H*z[n+8>>2])+C(x*z[n+20>>2]))+C(I*z[n+32>>2]))+z[n+44>>2]));E=C(C(oa*ca)+C(C(C(C(H*z[n>>2])+C(x*z[n+12>>2]))+C(I*z[n+24>>2]))+z[n+36>>2]));x=C(C(pa*ca)+C(C(C(C(H*z[n+4>>2])+C(x*z[n+16>>2]))+C(I*z[n+28>>2]))+z[n+40>>2]));G=LZ(V,g,C(C(C(z[l+8>>2]*A)+C(C(z[l>>2]*E)+C(x*z[l+4>>2])))-R),C(C(C(z[l+20>>2]*A)+C(C(z[l+12>>2]*E)+C(x*z[l+16>>2])))-_),Z,Y,m+aa|0);t[m+ga|0]=G;e:{if(!G){break e}$=$+1|0;if(!(F>2];if(G>>>0>63){break e}v[q+4096>>2]=G+1;t[(y+48|0)+za|0]=w[S|0];G=(G<<6)+q|0;z[G+8>>2]=ma;z[G+4>>2]=na;z[G>>2]=sa;P=z[d+36>>2];J=z[d+24>>2];O=z[d>>2];Q=z[d+12>>2];T=z[s>>2];M=z[d+40>>2];N=z[d+28>>2];K=z[d+4>>2];L=z[d+16>>2];I=z[s+4>>2];H=z[d+44>>2];F=z[d+32>>2];ja=z[ba+8>>2];A=z[d+8>>2];ka=z[ba>>2];E=z[d+20>>2];la=z[ba+4>>2];x=z[s+8>>2];v[G+52>>2]=p;z[G+12>>2]=ca+u;z[G+24>>2]=C(H+C(C(C(ka*A)+C(la*E))+C(ja*F)))+(r?x:C(0));z[G+20>>2]=C(M+C(C(C(ka*K)+C(la*L))+C(ja*N)))+(r?I:C(0));z[G+16>>2]=C(P+C(C(C(ka*O)+C(la*Q))+C(ja*J)))+(r?T:C(0));za=za+1|0}m=m+1|0;if((m|0)!=(a|0)){continue}break}break c}J9(ga,0,a);J9(aa,0,a);break b}m=k}f:{if((a|0)==($|0)){MZ(q,ya,a,f,b,y+48|0);break f}MZ(q,ya,$,f,b,y+48|0);g:{h:{if(a>>>0>=3){Q=z[o+44>>2];W=z[f+32>>2];T=z[o+40>>2];X=z[f+28>>2];M=z[o+36>>2];Y=z[f+24>>2];Z=z[f+20>>2];_=z[f+16>>2];R=z[f+12>>2];N=z[o+32>>2];K=z[o+28>>2];L=z[o+24>>2];I=z[o+20>>2];H=z[o+16>>2];F=z[o+12>>2];P=z[f+4>>2];J=z[f>>2];O=z[f+8>>2];A=z[o+4>>2];E=z[o>>2];x=z[o+8>>2];S=v[q+4096>>2];U=z[e+12>>2];KZ(y+16|0,y+32|0,y,y+44|0,V,a,b,c,f);if(!g){f=0;break h}ca=C(C(W*Q)+C(C(Y*M)+C(X*T)));ja=C(C(Z*Q)+C(C(R*M)+C(_*T)));ka=C(C(W*N)+C(C(Y*L)+C(X*K)));la=C(C(Z*N)+C(C(R*L)+C(_*K)));ra=C(C(W*I)+C(C(Y*F)+C(X*H)));oa=C(C(Z*I)+C(C(R*F)+C(_*H)));pa=C(C(O*Q)+C(C(J*M)+C(P*T)));qa=C(C(O*N)+C(C(J*L)+C(P*K)));ta=C(C(O*I)+C(C(J*F)+C(P*H)));ua=C(C(W*x)+C(C(Y*E)+C(A*X)));va=C(C(Z*x)+C(C(R*E)+C(A*_)));wa=C(C(O*x)+C(C(J*E)+C(P*A)));W=C(-U);f=0;X=z[y+44>>2];Y=z[y>>2];Z=z[y+32>>2];_=z[y+16>>2];$=0;n=0;while(1){G=w[i+n|0];k=B(G,12)+h|0;da=z[k+8>>2];ea=z[k>>2];fa=z[k+4>>2];k=LZ(V,a,C(C(pa+C(C(da*qa)+C(C(ea*wa)+C(ta*fa))))-_),C(C(ja+C(C(da*la)+C(C(ea*va)+C(oa*fa))))-Z),Y,X,n+ia|0);t[n+ha|0]=k;i:{if(!k){break i}f=f+1|0;R=C(ca+C(C(da*ka)+C(C(ea*ua)+C(ra*fa))));if(!(R>2];if(k>>>0>63){break i}v[q+4096>>2]=k+1;t[(y+48|0)+$|0]=G;k=(k<<6)+q|0;z[k+8>>2]=ma;z[k+4>>2]=na;z[k>>2]=sa;P=z[j+36>>2];J=z[j+24>>2];O=z[j>>2];Q=z[j+12>>2];T=z[s>>2];M=z[j+40>>2];N=z[j+28>>2];K=z[j+4>>2];L=z[j+16>>2];I=z[s+4>>2];H=z[j+44>>2];F=z[j+32>>2];A=z[j+8>>2];E=z[j+20>>2];x=z[s+8>>2];v[k+52>>2]=p;z[k+12>>2]=C(U+R)+u;z[k+24>>2]=C(H+C(C(C(ea*A)+C(fa*E))+C(da*F)))+(r?C(0):x);z[k+20>>2]=C(M+C(C(C(ea*K)+C(fa*L))+C(da*N)))+(r?C(0):I);z[k+16>>2]=C(P+C(C(C(ea*O)+C(fa*Q))+C(da*J)))+(r?C(0):T);$=$+1|0}n=n+1|0;if((n|0)!=(g|0)){continue}break}break h}J9(ha,0,g);J9(ia,0,g);break g}if((f|0)==(g|0)){MZ(q,S,g,l,h,y+48|0);break f}MZ(q,S,f,l,h,y+48|0)}if(!g){break f}Q=z[o+44>>2];T=z[o+40>>2];M=z[o+36>>2];N=z[o+32>>2];K=z[o+28>>2];L=z[o+24>>2];I=z[o+20>>2];H=z[o+16>>2];F=z[o+12>>2];A=z[o+8>>2];E=z[o+4>>2];x=z[o>>2];n=0;while(1){j=B(n,12)+V|0;f=B(w[i+n|0],12)+h|0;P=z[f>>2];J=z[f+4>>2];O=z[f+8>>2];z[j+8>>2]=C(C(C(P*A)+C(J*I))+C(O*N))+Q;z[j+4>>2]=C(C(C(P*E)+C(J*H))+C(O*K))+T;z[j>>2]=C(C(C(P*x)+C(J*F))+C(O*L))+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(!(w[h+ia|0]&w[f+ia|0]|(w[h+ha|0]?w[f+ha|0]:0))){S=B(f,12)+V|0;M=z[S>>2];G=B(h,12)+V|0;E=z[G>>2];N=z[S+8>>2];x=z[G+8>>2];A=z[S+4>>2];K=C(z[G+4>>2]-A);z[y+36>>2]=K;F=C(x-N);z[y+40>>2]=F;L=C(E-M);z[y+32>>2]=L;I=z[e+4>>2];E=z[e>>2];x=z[e+8>>2];H=C(C(F*E)-C(x*L));z[y+20>>2]=H;F=C(C(K*x)-C(I*F));z[y+16>>2]=F;x=C(C(L*I)-C(E*K));z[y+24>>2]=x;z[y+28>>2]=-C(C(x*N)+C(C(F*M)+C(A*H)));A=C(D(x));E=C(D(H));x=C(D(F));j:{k:{if(!(!(E>x)|!(A>2]*z[h+e>>2])-C(z[e+l>>2]*z[h+j>>2])));n=0;while(1){h=n;n=n+1|0;j=a>>>0>n>>>0?n:0;l:{if(w[j+aa|0]&w[h+aa|0]|(w[j+ga|0]?w[h+ga|0]:0)){break l}o=y+32|0;l=0;h=B(w[c+h|0],12)+b|0;M=z[h+8>>2];F=z[y+24>>2];N=z[h>>2];K=z[y+16>>2];L=z[h+4>>2];I=z[y+20>>2];x=z[y+28>>2];H=C(C(C(M*F)+C(C(N*K)+C(L*I)))+x);U=x;h=B(w[c+j|0],12)+b|0;A=z[h+8>>2];E=z[h>>2];x=z[h+4>>2];m:{if(C(H*C(U+C(C(A*F)+C(C(E*K)+C(I*x)))))>C(0)){break m}U=F;F=C(A-M);A=C(E-N);E=C(x-L);x=C(C(U*F)+C(C(K*A)+C(I*E)));if(x==C(0)){break m}x=C(H/x);z[y+8>>2]=M-C(F*x);z[y+4>>2]=L-C(E*x);z[y>>2]=N-C(A*x);j=f<<2;h=i<<2;H=C(C(C(z[j+o>>2]*C(z[h+y>>2]-z[h+S>>2]))-C(C(z[j+y>>2]-z[j+S>>2])*z[h+o>>2]))*T);z[y+44>>2]=H;if(H>2];x=z[e+4>>2];F=C(z[y>>2]-C(H*z[e>>2]));z[y>>2]=F;A=C(z[y+4>>2]-C(H*x));z[y+4>>2]=A;x=C(z[y+8>>2]-C(H*E));z[y+8>>2]=x;l=C(C(C(z[S+8>>2]-x)*C(z[G+8>>2]-x))+C(C(C(z[S>>2]-F)*C(z[G>>2]-F))+C(C(z[S+4>>2]-A)*C(z[G+4>>2]-A))))>2];if(h>>>0>63){break l}v[q+4096>>2]=h+1;h=(h<<6)+q|0;z[h+8>>2]=ma;z[h+4>>2]=na;z[h>>2]=sa;M=z[d+36>>2];N=z[d+24>>2];K=z[d>>2];L=z[d+12>>2];I=z[s>>2];H=z[d+40>>2];F=z[d+28>>2];A=z[d+4>>2];E=z[d+16>>2];x=z[s+4>>2];J=z[y>>2];O=z[y+4>>2];Q=z[y+8>>2];z[h+24>>2]=C(C(C(C(J*z[d+8>>2])+C(O*z[d+20>>2]))+C(Q*z[d+32>>2]))+z[d+44>>2])+(r?C(0):z[s+8>>2]);z[h+20>>2]=C(H+C(C(C(J*A)+C(O*E))+C(Q*F)))+(r?C(0):x);z[h+16>>2]=C(M+C(C(C(J*K)+C(O*L))+C(Q*N)))+(r?C(0):I);x=z[y+44>>2];v[h+52>>2]=p;z[h+12>>2]=u-x}if((a|0)!=(n|0)){continue}break}}if((g|0)!=(k|0)){continue}break}}xa=y+112|0;return m}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=0,q=0,r=0,s=0,y=0;c=xa-208|0;xa=c;n=a+40|0;f=v[n>>2];v[n>>2]=f?f:1;a:{b:{switch(f+1|0){case 2:b9(v[37696],8,5611,312,19906,0);break a;case 0:b9(v[37696],8,5611,317,16532,0);break a;default:break b}}d=v[a+28>>2];c:{if(!d){break c}f=v[a+60>>2];if(d-1>>>0>=7){g=d&-8;while(1){b=f+B(e,80)|0;v[b+64>>2]=0;v[b+68>>2]=0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;b=f+B(e|1,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|2,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|3,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|4,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|5,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|6,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;b=f+B(e|7,80)|0;u[b+70>>1]=0;u[b+72>>1]=0;u[b+74>>1]=0;u[b+76>>1]=0;v[b+64>>2]=0;v[b+68>>2]=0;e=e+8|0;j=j+8|0;if((g|0)!=(j|0)){continue}break}}b=d&7;if(!b){break c}while(1){j=f+B(e,80)|0;v[j+64>>2]=0;v[j+68>>2]=0;u[j+70>>1]=0;u[j+72>>1]=0;u[j+74>>1]=0;u[j+76>>1]=0;e=e+1|0;h=h+1|0;if((b|0)!=(h|0)){continue}break}}g=v[a+32>>2];d:{if(!g){break d}f=v[a+76>>2];j=0;h=0;if(g-1>>>0>=7){l=g&-8;e=0;while(1){b=h<<5;d=b+f|0;v[d+16>>2]=0;v[d+20>>2]=0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;d=f+(b|32)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;d=f+(b|64)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;d=f+(b|96)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;d=f+(b|128)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;d=f+(b|160)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;d=f+(b|192)|0;u[d+22>>1]=0;u[d+24>>1]=0;u[d+26>>1]=0;u[d+28>>1]=0;v[d+16>>2]=0;v[d+20>>2]=0;b=f+(b|224)|0;u[b+22>>1]=0;u[b+24>>1]=0;u[b+26>>1]=0;u[b+28>>1]=0;v[b+16>>2]=0;v[b+20>>2]=0;h=h+8|0;e=e+8|0;if((l|0)!=(e|0)){continue}break}}b=g&7;if(!b){break d}while(1){e=f+(h<<5)|0;v[e+16>>2]=0;v[e+20>>2]=0;u[e+22>>1]=0;u[e+24>>1]=0;u[e+26>>1]=0;u[e+28>>1]=0;h=h+1|0;j=j+1|0;if((b|0)!=(j|0)){continue}break}}g=v[a+36>>2];e:{if(!g){break e}f=v[a+68>>2];j=0;h=0;if(g-1>>>0>=7){l=g&-8;e=0;while(1){b=h<<6;d=b+f|0;v[d+48>>2]=0;v[d+52>>2]=0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;d=f+(b|64)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;d=f+(b|128)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;d=f+(b|192)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;d=f+(b|256)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;d=f+(b|320)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;d=f+(b|384)|0;u[d+54>>1]=0;u[d+56>>1]=0;u[d+58>>1]=0;u[d+60>>1]=0;v[d+48>>2]=0;v[d+52>>2]=0;b=f+(b|448)|0;u[b+54>>1]=0;u[b+56>>1]=0;u[b+58>>1]=0;u[b+60>>1]=0;v[b+48>>2]=0;v[b+52>>2]=0;h=h+8|0;e=e+8|0;if((l|0)!=(e|0)){continue}break}}b=g&7;if(!b){break e}while(1){e=f+(h<<6)|0;v[e+48>>2]=0;v[e+52>>2]=0;u[e+54>>1]=0;u[e+56>>1]=0;u[e+58>>1]=0;u[e+60>>1]=0;h=h+1|0;j=j+1|0;if((b|0)!=(j|0)){continue}break}}y=v[a+88>>2];e=v[a+68>>2];l=v[a+72>>2];q=v[a+92>>2];f=v[a+76>>2];o=v[a+80>>2];r=v[a+84>>2];h=v[a+60>>2];p=v[a- -64>>2];j=v[a+44>>2];b=v[a+48>>2];d=v[a+56>>2];v[c+200>>2]=v[a+52>>2];v[c+204>>2]=d;v[c+192>>2]=j;v[c+196>>2]=b;if(v[a+108>>2]!=-16){d=c+24|4;j=0;while(1){b=v[a+12>>2]+j|0;g=b+40|0;if(v[b+40>>2]){v[b+40>>2]=b- -64;j=76}else{j=64}if(v[g+4>>2]){v[b+44>>2]=b+j;j=j+12|0}if(v[g+16>>2]){v[b+56>>2]=b+j;j=j+28|0}if(v[g+12>>2]){i=0;j=b+j|0;k=v[j>>2];if(!(k>>>0>4|(k|0)==1)){i=j+4|0}v[g+12>>2]=i}j=v[b>>2];f:{g:{switch(t[b+38|0]){case 0:k=v[a+64>>2];i=x[b+36>>1];u[c+40>>1]=0;v[c+36>>2]=-1;v[c+28>>2]=0;v[c+32>>2]=0;v[c+60>>2]=0;v[c+64>>2]=0;v[c+52>>2]=0;v[c+56>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+104>>2]=0;t[c+92|0]=0;v[c+76>>2]=0;v[c+68>>2]=2139095039;v[c+72>>2]=0;u[c+128>>1]=0;v[c+124>>2]=-1;v[c+116>>2]=0;v[c+120>>2]=0;t[c+108|0]=0;v[c+24>>2]=124748;v[c+96>>2]=p;k=p-k>>6;m=r-k|0;v[c+100>>2]=i>>>0>>0?i:m;v[c+148>>2]=0;v[c+152>>2]=0;v[c+140>>2]=0;v[c+144>>2]=0;v[c+132>>2]=0;v[c+136>>2]=0;t[c+184|0]=0;v[c+164>>2]=0;v[c+156>>2]=2139095039;v[c+160>>2]=0;i=v[a+8>>2];u[c+16>>1]=x[b+4>>1];bt(i,g,c+24|0,c+16|0,v[b+32>>2],b+8|0,0,c+192|0);i=w[c+108|0]|(k|0)==(r|0)&x[b+36>>1]!=0;t[c+108|0]=i;v[h+72>>2]=v[b+28>>2];g=v[d+4>>2];v[h>>2]=v[d>>2];v[h+4>>2]=g;v[h+8>>2]=v[d+8>>2];u[h+12>>1]=x[c+40>>1];z[h+16>>2]=z[c+44>>2];z[h+20>>2]=z[c+48>>2];z[h+24>>2]=z[c+52>>2];z[h+28>>2]=z[c+56>>2];z[h+32>>2]=z[c+60>>2];z[h+36>>2]=z[c+64>>2];z[h+40>>2]=z[c+68>>2];g=v[c+76>>2];v[h+44>>2]=v[c+72>>2];v[h+48>>2]=g;g=v[c+84>>2];v[h+52>>2]=v[c+80>>2];v[h+56>>2]=g;v[h+60>>2]=v[c+88>>2];t[h+77|0]=w[c+92|0];g=v[c+104>>2];i=i&255;t[h+76|0]=i?2:1;v[h+68>>2]=g;k=v[c+96>>2];v[h+64>>2]=i?g?k:0:k;h=h+80|0;p=(g<<6)+p|0;break f;case 1:k=v[a+80>>2];i=x[b+36>>1];v[c+56>>2]=0;t[c+44|0]=0;v[c+36>>2]=-1;v[c+28>>2]=0;v[c+32>>2]=0;t[c+88|0]=0;v[c+76>>2]=-1;v[c+68>>2]=0;v[c+72>>2]=0;t[c+60|0]=0;v[c+24>>2]=124784;v[c+48>>2]=o;k=o-k>>4;m=q-k|0;v[c+52>>2]=i>>>0>>0?i:m;i=v[a+8>>2];u[c+8>>1]=x[b+4>>1];et(i,g,c+24|0,c+8|0,v[b+32>>2],b+8|0,0,c+192|0);i=w[c+60|0]|(k|0)==(q|0)&x[b+36>>1]!=0;t[c+60|0]=i;v[f+24>>2]=v[b+28>>2];g=v[d+4>>2];v[f>>2]=v[d>>2];v[f+4>>2]=g;g=v[d+12>>2];v[f+8>>2]=v[d+8>>2];v[f+12>>2]=g;t[f+29|0]=w[c+44|0];g=v[c+56>>2];i=i&255;t[f+28|0]=i?2:1;v[f+20>>2]=g;k=v[c+48>>2];v[f+16>>2]=i?g?k:0:k;f=f+32|0;o=(g<<4)+o|0;break f;case 2:break g;default:break f}}k=v[a+72>>2];i=x[b+36>>1];u[c+40>>1]=0;v[c+36>>2]=-1;v[c+28>>2]=0;v[c+32>>2]=0;v[c+60>>2]=0;v[c+64>>2]=0;v[c+52>>2]=0;v[c+56>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+88>>2]=0;t[c+76|0]=0;v[c+68>>2]=2139095039;u[c+112>>1]=0;v[c+108>>2]=-1;v[c+100>>2]=0;v[c+104>>2]=0;t[c+92|0]=0;v[c+24>>2]=124840;v[c+80>>2]=l;k=((l-k|0)/-48|0)+y|0;v[c+84>>2]=i>>>0>>0?i:k;v[c+132>>2]=0;v[c+136>>2]=0;v[c+124>>2]=0;v[c+128>>2]=0;v[c+116>>2]=0;v[c+120>>2]=0;t[c+152|0]=0;v[c+140>>2]=2139095039;i=v[a+8>>2];u[c>>1]=x[b+4>>1];ht(i,g,c+24|0,c,v[b+32>>2],b+8|0,0,c+192|0);i=w[c+92|0]|(k?0:x[b+36>>1]!=0);t[c+92|0]=i;v[e+56>>2]=v[b+28>>2];g=v[d+4>>2];v[e>>2]=v[d>>2];v[e+4>>2]=g;v[e+8>>2]=v[d+8>>2];u[e+12>>1]=x[c+40>>1];z[e+16>>2]=z[c+44>>2];z[e+20>>2]=z[c+48>>2];z[e+24>>2]=z[c+52>>2];z[e+28>>2]=z[c+56>>2];z[e+32>>2]=z[c+60>>2];z[e+36>>2]=z[c+64>>2];z[e+40>>2]=z[c+68>>2];v[e+44>>2]=v[c+72>>2];t[e+61|0]=w[c+76|0];g=v[c+88>>2];i=i&255;t[e+60|0]=i?2:1;v[e+52>>2]=g;k=v[c+80>>2];v[e+48>>2]=i?g?k:0:k;e=e- -64|0;l=B(g,48)+l|0}b=v[b>>2];if((b|0)!=-16){s=((b|0)!=-16)+s|0;if(s>>>0<1e6){continue}}break}t[a+112|0]=0;v[a+108>>2]=-16;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[n>>2]=0;break a}t[a+112|0]=0;v[a+108>>2]=-16;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[n>>2]=0}xa=c+208|0}function Mz(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,A=0,D=0,E=0,F=0,G=0,H=C(0);A=xa-16|0;xa=A;E=v[a+92>>2]<<5;b=v[a+28>>2];F=v[b+440>>2];D=v[b+452>>2];e=v[v[a+32>>2]>>2];j=v[e+11960>>2];a:{if(!v[e+11896>>2]){n=j;break a}g=v[e+11892>>2];n=j;b=0;while(1){o=s<<2;d=v[o+g>>2]+c|0;b:{if(d>>>0>c>>>0){m=0;l=c;while(1){q=h;k=x[(v[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(!x[g+22>>1]){k=k-1|0;break d}if((b|0)!=(h|0)){p=v[g+4>>2];i=j+(h<<5)|0;v[i>>2]=v[g>>2];v[i+4>>2]=p;p=v[g+28>>2];v[i+24>>2]=v[g+24>>2];v[i+28>>2]=p;p=v[g+20>>2];v[i+16>>2]=v[g+16>>2];v[i+20>>2]=p;p=v[g+12>>2];v[i+8>>2]=v[g+8>>2];v[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=v[e+11964>>2]+(f<<3)|0;u[t+4>>1]=k;v[t>>2]=q;i=w[v[(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){G=i;i=j+(g+q<<5)|0;i=w[v[i+120>>2]]==1?1:w[v[i+88>>2]]==1?1:w[v[i+56>>2]]==1?1:w[v[i+24>>2]]==1?1:G;g=g+4|0;k=k+4|0;if((r|0)!=(k|0)){continue}break}}k=0;if(!p){break e}while(1){i=w[v[(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}}u[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=v[e+11892>>2];c=v[o+g>>2]+c|0;break b}m=0;c=d}v[g+o>>2]=m;s=s+1|0;if(s>>>0>2]){continue}break}b=v[a+28>>2]}v[e+11968>>2]=f;v[e+12080>>2]=h;c=n-j>>5;v[e+11868>>2]=c;v[e+11876>>2]=h-c;if(v[b+112>>2]){v[e+11992>>2]=0;n=v[e+11976>>2];if((v[e+11996>>2]&2147483647)>>>0>>0){ez(e+11988|0,f)}v[e+11908>>2]=0;t=e+11904|0;l=v[e+11988>>2];b=v[e+11900>>2]&2147483647;if(b>>>0>(v[e+11912>>2]&2147483647)>>>0){Aw(t,b)}g:{if(!v[e+11896>>2]){k=0;b=n;break g}b=n;k=0;h=0;m=0;s=0;while(1){f=m;c=h;h=v[v[e+11892>>2]+(s<<2)>>2]+c|0;if(c>>>0>>0){while(1){i=v[e+11964>>2]+(c<<3)|0;d=x[i+6>>1];h:{if(d>>>0>8){break h}q=x[i+4>>1];d=1<>2]<<5)|0;g=v[d+24>>2];o=x[g+2>>1];g=g+o|0;p=w[g|0];r=x[d+22>>1];v[b+24>>2]=g;o=(r<<4)-o>>>4|0;u[b+22>>1]=o;v[b>>2]=v[d>>2];v[b+4>>2]=v[d+4>>2];v[b+12>>2]=v[d+12>>2];v[b+16>>2]=v[d+16>>2];u[b+8>>1]=x[d+8>>1];d=x[d+10>>1];v[b+28>>2]=0;u[b+10>>1]=d;u[b+20>>1]=0;d=v[i>>2];v[b+56>>2]=g;u[b+54>>1]=o;d=j+(d<<5)|0;v[b+32>>2]=v[d+32>>2];v[b+36>>2]=v[d+36>>2];v[b+44>>2]=v[d+44>>2];v[b+48>>2]=v[d+48>>2];u[b+40>>1]=x[d+40>>1];d=x[d+42>>1];v[b+60>>2]=0;u[b+42>>1]=d;u[b+52>>1]=0;d=v[i>>2];v[b+88>>2]=g;u[b+86>>1]=o;d=j+(d<<5)|0;v[b+64>>2]=v[d- -64>>2];v[b+68>>2]=v[d+68>>2];v[b+76>>2]=v[d+76>>2];v[b+80>>2]=v[d+80>>2];u[b+72>>1]=x[d+72>>1];d=x[d+74>>1];v[b+92>>2]=0;u[b+74>>1]=d;u[b+84>>1]=0;d=v[i>>2];v[b+120>>2]=g;u[b+118>>1]=o;d=j+(d<<5)|0;v[b+96>>2]=v[d+96>>2];v[b+100>>2]=v[d+100>>2];v[b+108>>2]=v[d+108>>2];v[b+112>>2]=v[d+112>>2];u[b+104>>1]=x[d+104>>1];d=x[d+106>>1];v[b+124>>2]=0;u[b+106>>1]=d;u[b+116>>1]=0;u[l+6>>1]=p;u[l+4>>1]=q;v[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+(v[i>>2]+g<<5)|0;p=x[d+22>>1];r=v[d+24>>2];o=x[r+2>>1];r=o+r|0;v[b+24>>2]=r;u[b+22>>1]=(p<<4)-o>>>4;v[b>>2]=v[d>>2];v[b+4>>2]=v[d+4>>2];v[b+12>>2]=v[d+12>>2];v[b+16>>2]=v[d+16>>2];u[b+8>>1]=x[d+8>>1];d=x[d+10>>1];v[b+28>>2]=0;u[b+10>>1]=d;u[b+20>>1]=0;b=b+32|0;g=g+1|0;if((q|0)!=(g|0)){continue}break}g=w[r|0];d=q}u[l+4>>1]=q;v[l>>2]=k;u[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;v[A+12>>2]=c;m=v[e+11908>>2];if(m>>>0>=(v[e+11912>>2]&2147483647)>>>0){pn(t,A+12|0);break j}v[v[e+11904>>2]+(m<<2)>>2]=c;v[e+11908>>2]=v[e+11908>>2]+1}m=f}s=s+1|0;if(s>>>0>2]){continue}break}}v[e+12084>>2]=k;b=b-n>>5;v[e+11872>>2]=b;v[e+11992>>2]=l-v[e+11988>>2]>>3;v[e+11884>>2]=k-b;b=v[a+28>>2]}h=v[e+11976>>2];f=v[e+11960>>2];c=wr(v[b+584>>2],156);v[c>>2]=v[e+12112>>2];j=v[e+12116>>2];v[c+12>>2]=D;m=E+F|0;v[c+8>>2]=m;v[c+4>>2]=j;v[c+20>>2]=v[a+92>>2];v[c+16>>2]=v[v[a+32>>2]+4>>2];v[c+24>>2]=v[e+12144>>2];j=v[e+12148>>2];v[c+68>>2]=0;v[c+72>>2]=0;v[c+32>>2]=f;v[c+28>>2]=j;v[c+76>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;v[c+88>>2]=0;v[c+92>>2]=0;f=v[a+28>>2];j=v[f+4>>2];v[c+132>>2]=v[j+4>>2];j=v[j+8>>2];v[c+140>>2]=b+536;v[c+136>>2]=j;v[c+52>>2]=v[e+11940>>2];b=v[e+11928>>2];v[c+96>>2]=0;v[c+60>>2]=b;v[c+36>>2]=v[e+11964>>2];v[c+40>>2]=v[e+11968>>2];v[c+44>>2]=v[e+11892>>2];v[c+48>>2]=v[e+11896>>2];v[c+64>>2]=v[a+36>>2];v[c+120>>2]=v[e+11904>>2];v[c+124>>2]=v[e+11908>>2];v[c+112>>2]=v[e+11988>>2];b=v[e+11992>>2];v[c+128>>2]=0;v[c+116>>2]=b;v[c+108>>2]=h;v[c+144>>2]=v[e+12128>>2];z[c+100>>2]=z[f+52>>2];z[c+104>>2]=z[f+56>>2];f=v[e+12104>>2];b=v[a+16>>2];b=Ba[v[v[b>>2]+4>>2]](b)|0;b=Ba[v[v[b>>2]+4>>2]](b)|0;f=f<<3;f=f>>>0>1?f:1;f=((f+v[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;v[c+56>>2]=b>>>0>8?b:8;n=1;while(1){b=wr(v[v[a+28>>2]+584>>2],48);f=v[a+28>>2];j=v[f+112>>2];m=v[a+96>>2];e=v[f+600>>2];l=v[f+604>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=e;v[b+12>>2]=l;v[b+40>>2]=m;v[b+36>>2]=j;v[b+32>>2]=f;v[b+28>>2]=c;v[b>>2]=128724;f=v[a+20>>2];v[b+20>>2]=f;v[b+24>>2]=1;if(f){Ba[v[v[f>>2]+16>>2]](f);v[b+16>>2]=v[v[b+20>>2]+16>>2];d=v[b>>2]}else{d=128724}Ba[v[d+20>>2]](b);n=n+1|0;if((h|0)!=(n|0)){continue}break}nz(v[a+28>>2],c,v[a+96>>2]);a=v[a+32>>2];a=(v[a+8>>2]&2147483647)+v[a+4>>2]|0;if((a|0)<=v[c+96>>2]|(a|0)<=v[c+96>>2]){break k}b=3e4;while(1){if((a|0)<=v[c+96>>2]){break k}b=b-1|0;if(b){continue}b=1e4;continue}}v[e+12052>>2]=0;b=v[e+12128>>2];if(b>>>0>(v[e+12056>>2]&2147483647)>>>0){zw(e+12048|0,b);b=v[e+12128>>2]}v[e+12052>>2]=b;v[e+12064>>2]=0;if((v[e+12068>>2]&2147483647)>>>0>>0){zw(e+12060|0,b);b=v[e+12128>>2]}v[e+12064>>2]=b;v[c+148>>2]=v[e+12048>>2];v[c+152>>2]=v[e+12060>>2];b=v[a+28>>2];b=v[((v[b+112>>2]<<2)+b|0)+484>>2];Ba[v[v[b>>2]+16>>2]](b,c);h=v[a+32>>2];if(v[h+4>>2]){n=(B(v[a+92>>2],112)+D|0)+112|0;f=0;while(1){j=f<<5;b=j+v[e+11940>>2]|0;h=n+B(f,112)|0;oz(b,b+16|0,j+m|0,h,z[v[a+28>>2]+52>>2]);c=v[v[a+36>>2]+(f<<2)>>2];b=v[c+36>>2];z[c>>2]=z[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];z[b>>2]=z[h+80>>2];z[b+4>>2]=z[h+84>>2];z[b+8>>2]=z[h+88>>2];z[b+12>>2]=z[h+92>>2];z[b+16>>2]=z[h+96>>2];z[b+20>>2]=z[h+100>>2];z[b+24>>2]=z[h+104>>2];z[b+64>>2]=z[h>>2];z[b+68>>2]=z[h+4>>2];z[b+72>>2]=z[h+8>>2];z[b+80>>2]=z[h+16>>2];z[b+84>>2]=z[h+20>>2];z[b+88>>2]=z[h+24>>2];b=v[a+28>>2];H=z[b+52>>2];q=w[b+64|0];d=w[b+66|0];b=v[a+96>>2];if(pz(c,H,q,d,j+v[e+11940>>2]|0,v[v[b+100>>2]+(v[v[b+204>>2]+((v[h+72>>2]&33554431)<<2)>>2]<<2)>>2]!=0)==C(0)){v[c+64>>2]=0;v[c+68>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+72>>2]=0;v[c+56>>2]=0;u[c+28>>1]=x[c+28>>1]|16}f=f+1|0;h=v[a+32>>2];if(f>>>0>2]){continue}break}}if(!(v[h+8>>2]&2147483647)){break k}b=0;while(1){c=v[e+12144>>2]+B(b,52)|0;f=v[(v[v[c>>2]+24>>2]<<2)+149592>>2];if(f){Ba[f|0](c,z[v[a+28>>2]+52>>2]);h=v[a+32>>2]}b=b+1|0;if(b>>>0<(v[h+8>>2]&2147483647)>>>0){continue}break}}xa=A+16|0}function Nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=0,x=C(0),y=0,A=0,D=C(0),E=0,F=0,G=C(0),H=0,I=0,J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=0,X=0,Y=0,Z=C(0),_=C(0),$=0,aa=0;F=xa-16|0;xa=F;y=v[a+192>>2];E=v[a+180>>2];p=v[a+144>>2];n=v[a+156>>2];t[F+8|0]=w[c|0];u=a+112|0;U=v[a+668>>2];A=U;c=w[F+8|0];if(c&1){Gw(u,n,v[b+12>>2]);A=v[a+668>>2]|4;v[a+668>>2]=A;c=w[F+8|0]}if(c&2){Gw(u,p,v[b+16>>2]);A=v[a+668>>2]|8;v[a+668>>2]=A;c=w[F+8|0]}a:{if(!(c&64)){H=c&4;break a}I=v[a+444>>2];H=c&4;if(H){n=v[b+36>>2];l=z[n+20>>2];m=z[n+24>>2];q=z[n+16>>2];p=v[I+16>>2];j=z[p+44>>2];d=z[n+12>>2];i=z[p+32>>2];e=z[n>>2];g=z[n+4>>2];h=z[p+36>>2];f=z[n+8>>2];k=z[p+40>>2];z[p+12>>2]=C(C(C(d*j)-C(i*e))-C(g*h))-C(f*k);z[p+8>>2]=C(C(e*h)+C(C(d*k)+C(f*j)))-C(i*g);z[p+4>>2]=C(C(f*i)+C(C(d*h)+C(g*j)))-C(k*e);z[p>>2]=C(C(g*k)+C(C(d*i)+C(e*j)))-C(h*f);R=m;j=z[p+56>>2];j=C(j+j);i=z[p+48>>2];i=C(i+i);h=z[p+52>>2];h=C(h+h);k=C(C(f*j)+C(C(e*i)+C(g*h)));m=C(C(d*d)+C(-.5));z[p+24>>2]=R+C(C(f*k)+C(C(j*m)+C(d*C(C(e*h)-C(i*g)))));z[p+20>>2]=l+C(C(g*k)+C(C(h*m)+C(d*C(C(f*i)-C(j*e)))));z[p+16>>2]=q+C(C(e*k)+C(C(i*m)+C(d*C(C(g*j)-C(h*f)))))}if(c&1){p=v[I+16>>2];n=v[b+36>>2];z[p+64>>2]=z[n+28>>2];z[p+68>>2]=z[n+32>>2];z[p+72>>2]=z[n+36>>2];z[p+80>>2]=z[n+40>>2];z[p+84>>2]=z[n+44>>2];z[p+88>>2]=z[n+48>>2]}v[a+668>>2]=A|32}if(H){Gw(u,E,v[b+20>>2]);v[a+668>>2]=v[a+668>>2]|2;c=w[F+8|0]}if(c&8){Gw(u,y,v[b+24>>2]);v[a+668>>2]=v[a+668>>2]|16;c=w[F+8|0]}if(c&4){f=C(0);d=C(0);j=C(0);e=C(0);g=C(0);qx(a,u,1);V=v[a+448>>2];if(V>>>0>=2){W=v[a+456>>2];H=v[a+444>>2];X=v[u+68>>2];Y=v[a+432>>2];A=v[u+260>>2];b=1;while(1){y=B(b,80)+W|0;p=(v[y+72>>2]<<2)+X|0;c=(b<<4)+Y|0;i=z[c+12>>2];h=z[c+8>>2];k=z[c+4>>2];m=z[c>>2];I=H+(b<<5)|0;c=v[I+20>>2];q=z[c+16>>2];r=z[c+24>>2];s=z[c+20>>2];D=z[c+52>>2];S=z[c+48>>2];T=z[c+44>>2];n=v[(H+(v[I+24>>2]<<5)|0)+16>>2];Z=z[n+16>>2];J=z[n+12>>2];L=z[n+8>>2];N=z[n+4>>2];O=z[n>>2];_=z[n+24>>2];R=z[n+20>>2];b:{c:{d:{e:{switch(w[c+270|0]){default:l=C(-d);q=C(-e);i=C(-j);break b;case 0:d=C(r+r);e=C(q+q);f=C(s+s);j=C(C(h*d)+C(C(m*e)+C(f*k)));o=C(C(i*i)+C(-.5));l=z[p>>2];c=A+B(b,76)|0;x=C(C(C(C(h*j)+C(C(d*o)+C(i*C(C(m*f)-C(e*k)))))-D)+C(l*z[c+20>>2]));g=C(C(C(C(m*j)+C(C(e*o)+C(i*C(C(k*d)-C(f*h)))))-T)+C(l*z[c+12>>2]));o=C(C(C(C(k*j)+C(C(f*o)+C(i*C(C(h*e)-C(d*m)))))-S)+C(l*z[c+16>>2]));break d;case 1:c=A+B(b,76)|0;e=z[c+8>>2];g=C(z[p>>2]*C(-.5));d=R9(g);f=C(e*d);e=C(d*z[c+4>>2]);d=C(d*z[c>>2]);g=H9(g);if(g>>0>=3){$=c&254;aa=c&1;n=A+B(b,76)|0;d=C(0);c=0;g=C(0);l=C(0);y=0;while(1){e=z[p+(c<<2)>>2];E=n+B(c,24)|0;M=c|1;f=z[p+(M<<2)>>2];M=n+B(M,24)|0;d=C(C(d-C(e*z[E+8>>2]))-C(f*z[M+8>>2]));g=C(C(g-C(e*z[E+4>>2]))-C(f*z[M+4>>2]));l=C(C(l-C(e*z[E>>2]))-C(f*z[M>>2]));c=c+2|0;y=y+2|0;if(($|0)!=(y|0)){continue}break}if(aa){e=z[p+(c<<2)>>2];c=n+B(c,24)|0;d=C(d-C(e*z[c+8>>2]));l=C(l-C(e*z[c>>2]));g=C(g-C(e*z[c+4>>2]))}e=C(C(d*d)+C(C(l*l)+C(g*g)));if(!(e>2];e=C(z[p+(n<<2)>>2]*C(-.5));d=R9(e);e=H9(e);g=C(d*z[y+4>>2]);x=C(g*C(0));l=C(d*f);f=C(e*C(0));d=C(d*z[y>>2]);o=C(d*C(0));j=C(C(x+C(l+f))-o);G=C(l*C(0));o=C(C(o+C(g+f))-G);f=C(C(G+C(d+f))-x);l=C(C(l*C(-0))+C(C(g*C(-0))+C(e+C(d*C(-0)))));if(n){break g}d=o;g=j;e=l;break f}f=C(K(e));o=C(f*C(.5));e=R9(o);f=C(C(1)/f);j=C(e*C(d*f));d=C(e*C(g*f));l=C(e*C(l*f));e=H9(o)}f=C(C(1)/C(K(C(C(e*e)+C(C(j*j)+C(C(l*l)+C(d*d)))))));e=C(e*f);g=C(j*f);d=C(d*f);f=C(l*f);break f}n=c-2|0;c=E+B(n,24)|0;e=z[c+4>>2];g=C(z[p+(n<<2)>>2]*C(-.5));d=R9(g);G=z[c>>2];x=H9(g);G=C(d*G);P=C(d*e);Q=C(d*z[c+8>>2]);e=C(C(C(C(l*x)-C(G*f))-C(o*P))-C(j*Q));g=C(C(C(f*P)+C(C(l*Q)+C(j*x)))-C(G*o));d=C(C(C(j*G)+C(C(l*P)+C(o*x)))-C(Q*f));f=C(C(C(o*Q)+C(C(l*G)+C(f*x)))-C(P*j))}o=C(C(C(C(e*i)-C(m*f))-C(d*k))-C(g*h));j=C(C(C(f*k)+C(C(e*h)+C(i*g)))-C(m*d));l=C(C(C(d*h)+C(C(e*m)+C(i*f)))-C(k*g));d=C(C(C(g*m)+C(C(e*k)+C(i*d)))-C(h*f));f=C(C(1)/C(K(C(C(o*o)+C(C(j*j)+C(C(l*l)+C(d*d)))))));break c;case 3:break e}}d=C(r+r);e=C(q+q);f=C(s+s);j=C(C(h*d)+C(C(m*e)+C(f*k)));o=C(C(i*i)+C(-.5));x=C(C(C(h*j)+C(C(d*o)+C(i*C(C(m*f)-C(e*k)))))-D);g=C(C(C(m*j)+C(C(e*o)+C(i*C(C(k*d)-C(f*h)))))-T);o=C(C(C(k*j)+C(C(f*o)+C(i*C(C(h*e)-C(d*m)))))-S)}l=C(-k);q=C(-m);e=m;d=k;f=i;j=h;i=C(-h);break b}j=C(j*f);g=C(r+r);e=C(l*f);i=C(q+q);h=C(s+s);d=C(d*f);k=C(C(j*g)+C(C(e*i)+C(h*d)));f=C(o*f);m=C(C(f*f)+C(-.5));x=C(C(C(j*k)+C(C(g*m)+C(f*C(C(e*h)-C(i*d)))))-D);o=C(C(C(d*k)+C(C(h*m)+C(f*C(C(j*i)-C(g*e)))))-S);g=C(C(C(e*k)+C(C(i*m)+C(f*C(C(d*g)-C(h*j)))))-T);l=C(-d);q=C(-e);i=C(-j)}k=C(C(L*j)+C(C(N*d)+C(C(J*f)+C(O*e))));m=C(C(e*N)+C(C(O*l)+C(C(J*i)+C(L*f))));r=C(C(d*L)+C(C(N*i)+C(C(J*q)+C(O*f))));l=C(C(j*O)+C(C(L*q)+C(C(J*l)+C(N*f))));h=C(C(1)/C(K(C(C(k*k)+C(C(m*m)+C(C(r*r)+C(l*l)))))));c=v[I+16>>2];i=C(k*h);z[c+12>>2]=i;k=C(m*h);z[c+8>>2]=k;m=C(l*h);z[c+4>>2]=m;h=C(r*h);z[c>>2]=h;l=C(x+x);q=C(g+g);r=C(o+o);s=C(C(k*l)+C(C(h*q)+C(r*m)));D=C(C(i*i)+C(-.5));z[c+24>>2]=_+C(C(k*s)+C(C(l*D)+C(i*C(C(h*r)-C(q*m)))));z[c+20>>2]=R+C(C(m*s)+C(C(r*D)+C(i*C(C(k*q)-C(l*h)))));z[c+16>>2]=Z+C(C(h*s)+C(C(q*D)+C(i*C(C(m*l)-C(r*k)))));b=b+1|0;if((V|0)!=(b|0)){continue}break}}c=w[F+8|0]}if(c&5){qx(a,u,1);A=v[u+336>>2];if(A>>>0>=2){p=v[u+44>>2];n=v[u+332>>2];H=v[u+260>>2];I=v[u+344>>2];c=1;while(1){a=n+(c<<5)|0;b=v[(n+(v[a+24>>2]<<5)|0)+16>>2];d=z[b+80>>2];a=v[a+16>>2];e=C(z[a+20>>2]-z[b+20>>2]);g=C(z[a+16>>2]-z[b+16>>2]);q=z[b+84>>2];o=C(z[b+72>>2]+C(C(d*e)-C(g*q)));x=z[b+88>>2];m=C(x*g);g=C(z[a+24>>2]-z[b+24>>2]);D=C(z[b+68>>2]+C(m-C(g*d)));J=C(z[b+64>>2]+C(C(q*g)-C(e*x)));if(p){e=z[a+12>>2];g=z[a+8>>2];f=z[a+4>>2];r=z[a>>2];b=I+B(c,80)|0;y=w[b+76|0];j:{if(!y){i=C(0);h=C(0);k=C(0);m=C(0);j=C(0);l=C(0);break j}E=p+(v[b+72>>2]<<2)|0;M=H+B(c,76)|0;l=C(0);u=0;j=C(0);m=C(0);k=C(0);h=C(0);i=C(0);while(1){s=z[E+(u<<2)>>2];b=M+B(u,24)|0;k=C(k+C(s*z[b+12>>2]));m=C(m+C(s*z[b+8>>2]));j=C(j+C(s*z[b+4>>2]));l=C(l+C(s*z[b>>2]));i=C(i+C(s*z[b+20>>2]));h=C(h+C(s*z[b+16>>2]));u=u+1|0;if((y|0)!=(u|0)){continue}break}}s=C(i+i);k=C(k+k);h=C(h+h);L=C(C(g*s)+C(C(r*k)+C(f*h)));i=C(C(e*e)+C(-.5));o=C(o+C(C(g*L)+C(C(s*i)+C(e*C(C(r*h)-C(k*f))))));D=C(D+C(C(f*L)+C(C(h*i)+C(e*C(C(g*k)-C(s*r))))));J=C(J+C(C(r*L)+C(C(k*i)+C(e*C(C(f*s)-C(h*g))))));h=C(m+m);k=C(l+l);j=C(j+j);m=C(C(g*h)+C(C(r*k)+C(f*j)));x=C(x+C(C(g*m)+C(C(h*i)+C(e*C(C(r*j)-C(k*f))))));q=C(q+C(C(f*m)+C(C(j*i)+C(e*C(C(g*k)-C(h*r))))));d=C(d+C(C(r*m)+C(C(k*i)+C(e*C(C(f*h)-C(j*g))))))}z[a+80>>2]=d;z[a+64>>2]=J;z[a+88>>2]=x;z[a+84>>2]=q;z[a+72>>2]=o;z[a+68>>2]=D;c=c+1|0;if((A|0)!=(c|0)){continue}break}}}xa=F+16|0;return!U|0}function DX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),y=C(0),A=C(0),B=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=C(0),ca=C(0),da=0;c=xa-48|0;xa=c;l=z[b+20>>2];k=z[b+16>>2];s=z[b+24>>2];p=z[b>>2];m=C(p+p);w=z[b+8>>2];A=z[b+4>>2];n=z[b+12>>2];o=C(n+n);q=z[a+8>>2];D=C(C(C(m*w)-C(A*o))*q);z[c+36>>2]=s-D;w=C(q*C(C(w*o)+C(m*A)));z[c+32>>2]=l-w;z[c+24>>2]=D+s;z[c+20>>2]=l+w;l=C(q*C(C(p*m)+C(C(n*o)+C(-1))));z[c+28>>2]=k-l;z[c+16>>2]=k+l;z[c+40>>2]=z[a+4>>2]+j;i=x[i>>1];j=z[f>>2];l=z[f+4>>2];z[c+8>>2]=-z[f+8>>2];z[c+4>>2]=-l;z[c>>2]=-j;b=0;a=xa-208|0;xa=a;d=c+16|0;p=C(z[e+24>>2]+z[d+24>>2]);a:{b:{c:{d:{e:{f:{if(i&16){break f}g:{l=z[e>>2];n=z[e+12>>2];if(l!=n){break g}k=z[e+4>>2];if(k!=z[e+16>>2]){break g}j=z[e+8>>2];if(j!=z[e+20>>2]){break g}m=z[d+8>>2];j=C(j-m);m=C(z[d+20>>2]-m);n=z[d>>2];l=C(l-n);n=C(z[d+12>>2]-n);q=z[d+4>>2];o=C(z[d+16>>2]-q);k=C(k-q);q=C(C(j*m)+C(C(l*n)+C(o*k)));h:{if(q<=C(0)){break h}s=C(C(m*m)+C(C(n*n)+C(o*o)));if(s<=q){j=C(j-m);k=C(k-o);l=C(l-n);break h}r=m;m=C(q/s);j=C(j-C(r*m));k=C(k-C(o*m));l=C(l-C(n*m))}if(!(C(C(j*j)+C(C(l*l)+C(k*k)))>2];m=z[d+12>>2];if(k!=m){j=z[d+16>>2];q=z[d+4>>2];break i}j=z[d+16>>2];q=z[d+4>>2];if(j!=q){break i}o=z[d+8>>2];if(o!=z[d+20>>2]){break i}m=z[e+8>>2];j=C(o-m);m=C(z[e+20>>2]-m);k=C(k-l);n=C(n-l);l=z[e+4>>2];o=C(z[e+16>>2]-l);l=C(q-l);q=C(C(j*m)+C(C(k*n)+C(o*l)));j:{if(q<=C(0)){break j}s=C(C(m*m)+C(C(n*n)+C(o*o)));if(s<=q){j=C(j-m);l=C(l-o);k=C(k-n);break j}r=m;m=C(q/s);j=C(j-C(r*m));l=C(l-C(o*m));k=C(k-C(n*m))}if(!(C(C(j*j)+C(C(k*k)+C(l*l)))>2];s=z[e+20>>2];w=z[e+4>>2];A=z[e+8>>2];z[a+80>>2]=n-l;z[a+88>>2]=s-A;z[a+84>>2]=o-w;l=z[d+20>>2];n=z[d+8>>2];z[a+196>>2]=j-q;z[a+192>>2]=m-k;z[a+200>>2]=l-n;if(I_(e,a+80|0,d,a+192|0,0,0)>2];R=z[d>>2];V=C(Q-R);m=C(V*C(.5));j=z[e+12>>2];q=C(m+j);G=z[e>>2];W=C(m+G);k=C(q-W);l=z[e+16>>2];S=z[d+16>>2];ba=z[d+4>>2];X=C(S-ba);n=C(X*C(.5));s=C(l-n);H=z[e+4>>2];Y=C(n+H);E=C(s-Y);w=C(j-m);t=C(w-W);A=C(n+l);j=C(A-Y);l=C(C(k*E)-C(t*j));y=j;j=z[e+20>>2];T=z[d+20>>2];ca=z[d+8>>2];Z=C(T-ca);o=C(Z*C(.5));D=C(j-o);r=z[e+8>>2];_=C(o+r);I=C(D-_);F=E;E=C(o+j);J=C(E-_);j=C(C(y*I)-C(F*J));k=C(C(J*t)-C(I*k));t=C(K(C(C(l*l)+C(C(j*j)+C(k*k)))));if(t>C(0)){t=C(C(1)/t);l=C(l*t);k=C(k*t);j=C(j*t)}t=C(G-m);G=C(r-o);H=C(H-n);m=C(p*l);n=C(p*k);o=C(p*j);r=z[c+8>>2];I=z[c>>2];J=z[c+4>>2];if(!(C(C(l*r)+C(C(j*I)+C(k*J)))>=C(0))){break d}F=C(E-m);M=C(A-n);N=C(q-o);k=C(w-o);O=C(G-m);y=C(H-n);U=C(t-o);l=C(D-m);j=C(s-n);break c}v[h+40>>2]=0;g=z[c>>2];j=z[c+4>>2];z[h+36>>2]=-z[c+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;u[c+14>>1]=2;break b}O=C(E+m);y=C(A+n);U=C(q+o);k=C(w+o);F=C(G+m);M=C(H+n);N=C(t+o);l=C(D+m);j=C(s+n)}T=C(C(ca+T)*C(.5));z[a+200>>2]=T;S=C(C(ba+S)*C(.5));z[a+196>>2]=S;Q=C(C(Q+R)*C(.5));z[a+192>>2]=Q;n=C(F-l);o=C(y-j);F=C(U-k);y=C(C(I*o)-C(F*J));N=C(N-k);O=C(O-l);U=C(C(J*O)-C(o*r));M=C(M-j);R=C(C(r*F)-C(O*I));m=C(C(n*y)+C(C(N*U)+C(M*R)));k:{l:{if(mm){break l}l=C(C(C(1)/m)*C(C(O*r)+C(C(F*j)+C(o*l))));if(!(l>=C(0))){break l}if(g>l){break k}}z[a+188>>2]=p;z[a+184>>2]=_;z[a+180>>2]=Y;L=a+176|0;z[L>>2]=W;z[a+172>>2]=G;z[a+168>>2]=H;z[a+160>>2]=p;z[a+156>>2]=_;z[a+152>>2]=Y;$=a+148|0;z[$>>2]=W;z[a+144>>2]=E;z[a+140>>2]=A;z[a+132>>2]=p;z[a+128>>2]=E;z[a+124>>2]=A;aa=a+120|0;z[aa>>2]=q;z[a+116>>2]=D;z[a+112>>2]=s;z[a+100>>2]=D;z[a+96>>2]=s;z[a+164>>2]=t;z[a+136>>2]=q;z[a+108>>2]=w;z[a+104>>2]=p;z[a+92>>2]=w;z[a+88>>2]=G;z[a+84>>2]=H;z[a+80>>2]=t;f=a+192|0;B=a+80|0;P=B;da=B|12;B=a- -64|0;P=_W(f,c,P,da,p,B);j=z[a+64>>2];aa=_W(f,c,a+108|0,aa,z[a+132>>2],B);l=z[a+64>>2];$=_W(f,c,a+136|0,$,z[a+160>>2],B);k=z[a+64>>2];L=_W(f,c,a+164|0,L,z[a+188>>2],B);P=!(g>=j)|(!(j>=C(0))|P^1);g=P?g:j;f=!(g>=l)|(!(l>=C(0))|aa^1);g=f?g:l;B=!(g>=k)|(!(k>=C(0))|$^1);j=B?g:k;g=z[a+64>>2];L=!(j>=g)|(!(g>=C(0))|L^1);l=L?j:g;if(!f|(!B|(L|0)!=1)){break k}f=0;if(P){break a}}u[c+14>>1]=0;m:{if(!(i&3)){break m}g=z[e+8>>2];j=z[c+8>>2];k=z[e+4>>2];p=z[c+4>>2];n=C(l*z[c>>2]);o=C(z[e>>2]-n);z[a+80>>2]=o;m=k;k=C(l*p);m=C(m-k);z[a+84>>2]=m;r=g;g=C(l*j);j=C(r-g);z[a+88>>2]=j;q=z[e+12>>2];s=z[e+16>>2];p=C(C(z[e+20>>2]-g)-j);z[a+72>>2]=p;m=C(C(s-k)-m);z[a+68>>2]=m;n=C(C(q-n)-o);z[a+64>>2]=n;z[a+56>>2]=Z;z[a+52>>2]=X;z[a+48>>2]=V;I2(a+32|0,a+16|0,a+80|0,a- -64|0,d,a+48|0);if(i&2){k=z[a+16>>2];o=z[a+32>>2];j=z[a+20>>2];q=z[a+36>>2];g=C(z[a+40>>2]-z[a+24>>2]);z[h+36>>2]=g;j=C(q-j);z[h+32>>2]=j;k=C(o-k);z[h+28>>2]=k;o=C(K(C(C(g*g)+C(C(k*k)+C(j*j)))));if(o>C(0)){r=g;g=C(C(1)/o);z[h+36>>2]=r*g;z[h+32>>2]=j*g;z[h+28>>2]=k*g}n:{if(!(o>2]=g;j=C(C(Z*n)-C(p*V));z[h+32>>2]=j;k=C(C(X*p)-C(m*Z));z[h+28>>2]=k;p=C(K(C(C(g*g)+C(C(k*k)+C(j*j)))));if(p>C(0)){m=g;g=C(C(1)/p);z[h+36>>2]=m*g;z[h+32>>2]=j*g;z[h+28>>2]=k*g}if(!(p>2];j=z[e+12>>2];k=z[e+4>>2];p=z[e+16>>2];z[a+8>>2]=z[e+20>>2]-z[e+8>>2];z[a+4>>2]=p-k;z[a>>2]=j-g;I2(a+32|0,a+16|0,e,a,d,a+48|0);k=z[a+16>>2];p=z[a+32>>2];j=z[a+20>>2];m=z[a+36>>2];g=C(z[a+40>>2]-z[a+24>>2]);z[h+36>>2]=g;j=C(m-j);z[h+32>>2]=j;k=C(p-k);z[h+28>>2]=k;p=C(K(C(C(g*g)+C(C(k*k)+C(j*j)))));if(!(p>C(0))){break n}m=g;g=C(C(1)/p);z[h+36>>2]=m*g;z[h+32>>2]=j*g;z[h+28>>2]=k*g}u[c+14>>1]=x[c+14>>1]|2}if(!(i&1)){break m}p=z[a+32>>2];m=z[a+16>>2];n=z[a+36>>2];o=z[a+20>>2];g=z[d+24>>2];j=z[e+24>>2];k=C(C(1)/C(g+j));z[h+24>>2]=k*C(C(g*z[a+40>>2])+C(j*z[a+24>>2]));z[h+20>>2]=k*C(C(g*n)+C(j*o));z[h+16>>2]=k*C(C(g*p)+C(j*m));u[c+14>>1]=x[c+14>>1]|1}z[h+40>>2]=l}f=1}xa=a+208|0;o:{if(!f){break o}a=x[c+14>>1];u[h+12>>1]=a;b=1;if(!(i&512)|z[h+40>>2]!=C(0)){break o}u[h+12>>1]=a|1;b=xa-48|0;xa=b;g=z[e+16>>2];j=z[e>>2];l=z[e+12>>2];k=z[e+4>>2];z[b+40>>2]=z[e+20>>2]-z[e+8>>2];z[b+36>>2]=g-k;z[b+32>>2]=l-j;a=c+16|0;g=z[a+16>>2];j=z[a>>2];l=z[a+12>>2];k=z[a+4>>2];z[b+24>>2]=z[a+20>>2]-z[a+8>>2];z[b+20>>2]=g-k;z[b+16>>2]=l-j;I_(e,b+32|0,a,b+16|0,b+12|0,b+8|0);j=z[e+8>>2];g=z[b+12>>2];k=C(j+C(g*C(z[e+20>>2]-j)));l=z[a+8>>2];j=z[b+8>>2];m=C(l+C(j*C(z[a+20>>2]-l)));l=C(k-m);k=z[e>>2];r=C(k+C(g*C(z[e+12>>2]-k)));k=z[a>>2];n=C(k+C(j*C(z[a+12>>2]-k)));k=C(r-n);p=z[e+4>>2];r=C(p+C(g*C(z[e+16>>2]-p)));g=z[a+4>>2];o=C(g+C(j*C(z[a+16>>2]-g)));g=C(r-o);j=C(C(l*l)+C(C(k*k)+C(g*g)));p=C(K(j));q=z[a+24>>2];s=z[e+24>>2];p:{if(j>2]=l;z[h+36>>2]=j;z[h+32>>2]=g;z[h+40>>2]=p-C(s+q);k=j;j=z[a+24>>2];z[h+24>>2]=m+C(k*j);z[h+20>>2]=o+C(g*j);z[h+16>>2]=n+C(l*j);xa=b+48|0;b=1}xa=c+48|0;return b|0}function r3(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=0,t=0,u=0;while(1){j=c?c+36|0:0;k=v[j+24>>2];a:{l=v[c+24>>2];b:{if(!l){if(!k){v[d+4>>2]=v[d+4>>2]+1;r=z[c+16>>2];k=v[c+28>>2];l=v[c+32>>2];s=v[a>>2];p=z[d+20>>2];o=z[c+12>>2];i=z[c>>2];f=z[c+4>>2];m=z[c+20>>2];n=z[c+8>>2];g=C(C(m-n)*C(.5));z[b+28>>2]=g;h=C(C(r-f)*C(.5));z[b+24>>2]=h;e=C(C(o-i)*C(.5));z[b+20>>2]=e;z[b+16>>2]=C(n+m)*C(.5);z[b+12>>2]=C(f+r)*C(.5);z[b+8>>2]=C(i+o)*C(.5);q=p==C(0);if(!q){z[b+28>>2]=p+g;z[b+24>>2]=p+h;z[b+20>>2]=p+e}v[b+32>>2]=l<<1&30|k-s<<3|1;r=z[j+16>>2];d=v[j+28>>2];a=v[j+32>>2];o=z[j+12>>2];i=z[j>>2];f=z[j+4>>2];m=z[j+20>>2];n=z[j+8>>2];g=C(C(m-n)*C(.5));z[b- -64>>2]=g;h=C(C(r-f)*C(.5));z[b+60>>2]=h;e=C(C(o-i)*C(.5));z[b+56>>2]=e;z[b+52>>2]=C(n+m)*C(.5);z[b+48>>2]=C(f+r)*C(.5);z[b+44>>2]=C(i+o)*C(.5);if(!q){z[b+64>>2]=p+g;z[b+60>>2]=p+h;z[b+56>>2]=p+e}v[b+68>>2]=a<<1&30|d-s<<3|1;f=C(C(C(z[c+8>>2]+z[c+20>>2])*C(.5))-C(C(z[j+8>>2]+z[j+20>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[c>>2]+z[c+12>>2])*C(.5))-C(C(z[j>>2]+z[j+12>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[c+4>>2]+z[c+16>>2])*C(.5))-C(C(z[j+4>>2]+z[j+16>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);a=!(C(i+e)>2]=(C(i+e)>2]=v[d+8>>2]+1;r=z[c+16>>2];s=v[c+28>>2];l=v[c+32>>2];q=v[a>>2];p=z[d+20>>2];o=z[c+12>>2];i=z[c>>2];f=z[c+4>>2];m=z[c+20>>2];n=z[c+8>>2];g=C(C(m-n)*C(.5));z[b+28>>2]=g;h=C(C(r-f)*C(.5));z[b+24>>2]=h;e=C(C(o-i)*C(.5));z[b+20>>2]=e;z[b+16>>2]=C(n+m)*C(.5);z[b+12>>2]=C(f+r)*C(.5);z[b+8>>2]=C(i+o)*C(.5);if(p!=C(0)){z[b+28>>2]=p+g;z[b+24>>2]=p+h;z[b+20>>2]=p+e}v[b+32>>2]=l<<1&30|s-q<<3|1;l=v3(v[a>>2],b,1,k,d);q=v3(v[a>>2],b,2,k+36|0,d);f=C(C(C(z[c+8>>2]+z[c+20>>2])*C(.5))-C(C(z[j+8>>2]+z[j+20>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[c>>2]+z[c+12>>2])*C(.5))-C(C(z[j>>2]+z[j+12>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[c+4>>2]+z[c+16>>2])*C(.5))-C(C(z[j+4>>2]+z[j+16>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);c=!(C(i+e)>2]=(C(i+e)>2]+z[k+20>>2])*C(.5))-C(C(z[k+44>>2]+z[k+56>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[k>>2]+z[k+12>>2])*C(.5))-C(C(z[k+36>>2]+z[k+48>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[k+4>>2]+z[k+16>>2])*C(.5))-C(C(z[k+40>>2]+z[k+52>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);b=!(C(i+e)>2]=(C(i+e)>2],d)}if(!q){break b}break a}if(!k){v[d+12>>2]=v[d+12>>2]+1;r=z[j+16>>2];s=v[j+28>>2];k=v[j+32>>2];q=v[a>>2];p=z[d+20>>2];o=z[j+12>>2];i=z[j>>2];f=z[j+4>>2];m=z[j+20>>2];n=z[j+8>>2];g=C(C(m-n)*C(.5));z[b+100>>2]=g;h=C(C(r-f)*C(.5));z[b+96>>2]=h;e=C(C(o-i)*C(.5));z[b+92>>2]=e;z[b+88>>2]=C(n+m)*C(.5);z[b+84>>2]=C(f+r)*C(.5);z[b+80>>2]=C(i+o)*C(.5);if(p!=C(0)){z[b+100>>2]=p+g;z[b+96>>2]=p+h;z[b+92>>2]=p+e}v[b+104>>2]=k<<1&30|s-q<<3|1;k=v3(v[a>>2],b,0,l,d);q=v3(v[a>>2],b,1,l+36|0,d);f=C(C(C(z[c+8>>2]+z[c+20>>2])*C(.5))-C(C(z[j+8>>2]+z[j+20>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[c>>2]+z[c+12>>2])*C(.5))-C(C(z[j>>2]+z[j+12>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[c+4>>2]+z[c+16>>2])*C(.5))-C(C(z[j+4>>2]+z[j+16>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);c=!(C(i+e)>2]=(C(i+e)>2]+z[l+20>>2])*C(.5))-C(C(z[l+44>>2]+z[l+56>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[l>>2]+z[l+12>>2])*C(.5))-C(C(z[l+36>>2]+z[l+48>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[l+4>>2]+z[l+16>>2])*C(.5))-C(C(z[l+40>>2]+z[l+52>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);b=!(C(i+e)>2]=(C(i+e)>2],d)}k=l;if(q){break a}break b}v[d+16>>2]=v[d+16>>2]+1;t=v3(v[a>>2],b,0,l,d);u=v3(v[a>>2],b,1,l+36|0,d);s=v3(v[a>>2],b,2,k,d);q=v3(v[a>>2],b,3,k+36|0,d);f=C(C(C(z[c+8>>2]+z[c+20>>2])*C(.5))-C(C(z[j+8>>2]+z[j+20>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[c>>2]+z[c+12>>2])*C(.5))-C(C(z[j>>2]+z[j+12>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[c+4>>2]+z[c+16>>2])*C(.5))-C(C(z[j+4>>2]+z[j+16>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);c=!(C(i+e)>2]=(C(i+e)>2]+z[l+20>>2])*C(.5))-C(C(z[l+44>>2]+z[l+56>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[l>>2]+z[l+12>>2])*C(.5))-C(C(z[l+36>>2]+z[l+48>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[l+4>>2]+z[l+16>>2])*C(.5))-C(C(z[l+40>>2]+z[l+52>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);c=!(C(i+e)>2]=(C(i+e)>2]+z[k+20>>2])*C(.5))-C(C(z[k+44>>2]+z[k+56>>2])*C(.5)));i=C(f*C(.5773502588272095));m=C(C(C(z[k>>2]+z[k+12>>2])*C(.5))-C(C(z[k+36>>2]+z[k+48>>2])*C(.5)));g=C(m*C(.5773502588272095));h=C(C(C(z[k+4>>2]+z[k+16>>2])*C(.5))-C(C(z[k+40>>2]+z[k+52>>2])*C(.5)));n=C(h*C(.5773502588272095));e=C(g+n);b=!(C(i+e)>2]=(C(i+e)>2],d)}if(u){r3(a,u,v[l+60>>2],d)}if(s){r3(a,s,v[k+24>>2],d)}if(q){break a}}return}c=v[k+60>>2];b=q;continue}}function E1(a,b,c,d,e){var f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),A=0,D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0,S=C(0),T=C(0),U=0;f=xa-224|0;xa=f;v[f+200>>2]=0;v[f+204>>2]=0;v[f+196>>2]=1065353216;v[f+208>>2]=0;v[f+212>>2]=0;v[f+216>>2]=1065353216;v[f+220>>2]=0;v[f+180>>2]=0;v[f+184>>2]=0;v[f+176>>2]=1065353216;v[f+188>>2]=0;v[f+192>>2]=0;j=z[b+12>>2];i=z[b>>2];x=C(j-i);n=z[b+28>>2];k=z[b+4>>2];q=C(n-k);o=z[b+24>>2];D=C(o-i);u=z[b+16>>2];r=C(u-k);l=C(C(x*q)-C(D*r));F=l;L=C(l*l);s=r;r=z[b+32>>2];l=z[b+8>>2];G=C(r-l);H=q;q=z[b+20>>2];J=C(q-l);s=C(C(s*G)-C(H*J));x=C(C(J*D)-C(G*x));D=C(C(1)/C(K(C(L+C(C(s*s)+C(x*x))))));G=C(F*D);s=C(s*D);x=C(x*D);a:{if(C(C(C(z[a+4408>>2]*G)+C(C(z[a+4400>>2]*s)+C(z[a+4404>>2]*x)))-C(C(l*G)+C(C(i*s)+C(k*x))))>2];x=z[a+2288>>2];D=z[a+2272>>2];G=z[a+2308>>2];J=z[a+2292>>2];F=z[a+2260>>2];H=z[a+2276>>2];L=z[a+2312>>2];M=z[a+2296>>2];N=z[a+2264>>2];O=z[a+2280>>2];P=z[a+2256>>2];v[f+172>>2]=0;v[f+156>>2]=0;v[f+140>>2]=0;S=C(L+C(C(M*r)+C(C(N*o)+C(n*O))));z[f+168>>2]=S;T=C(G+C(C(J*r)+C(C(F*o)+C(n*H))));z[f+164>>2]=T;n=C(s+C(C(x*r)+C(C(P*o)+C(n*D))));z[f+160>>2]=n;o=C(L+C(C(M*q)+C(C(N*j)+C(u*O))));z[f+152>>2]=o;r=C(G+C(C(J*q)+C(C(F*j)+C(u*H))));z[f+148>>2]=r;j=C(s+C(C(x*q)+C(C(P*j)+C(u*D))));z[f+144>>2]=j;u=C(L+C(C(M*l)+C(C(N*i)+C(k*O))));z[f+136>>2]=u;q=C(G+C(C(J*l)+C(C(F*i)+C(k*H))));z[f+132>>2]=q;t[f+112|0]=0;v[f+104>>2]=2139095039;v[f+108>>2]=5;v[f+92>>2]=0;v[f+96>>2]=0;v[f+100>>2]=2139095039;z[f+88>>2]=C(S+C(u+o))*C(.33333298563957214);z[f+84>>2]=C(T+C(q+r))*C(.33333298563957214);i=C(s+C(C(x*l)+C(C(P*i)+C(k*D))));z[f+128>>2]=i;z[f+80>>2]=C(n+C(i+j))*C(.33333298563957214);b=v[a+2208>>2];t[f+60|0]=1;v[f+48>>2]=b;v[f+16>>2]=144504;b=f+176|0;v[f+56>>2]=b;v[f+52>>2]=b;h=f+80|0;v[f+64>>2]=h;U=v[a+2324>>2];g=v[a+4416>>2];p=f+16|0;m=v[a+4420>>2];Q=v[a+2320>>2];R=a+2324|0;b=xa-96|0;xa=b;n=z[h+80>>2];o=z[h- -64>>2];j=z[h+68>>2];u=z[h+88>>2];r=z[h+84>>2];i=z[h+52>>2];k=z[h+56>>2];q=z[h+72>>2];l=z[h+48>>2];v[b+60>>2]=0;s=C(j-i);u=C(u-k);r=C(r-i);q=C(q-k);j=C(C(s*u)-C(r*q));F=j;o=C(o-l);H=C(o*r);r=C(n-l);n=C(H-C(r*s));s=C(j*j);j=C(C(q*r)-C(u*o));o=C(C(1)/C(K(C(C(n*n)+C(s+C(j*j))))));u=C(F*o);z[b+48>>2]=u;n=C(n*o);z[b+56>>2]=n;j=C(j*o);z[b+52>>2]=j;Ba[v[v[m>>2]+12>>2]](m,b+48|0,b+80|0,b- -64|0);E=a+2176|0;o=z[E>>2];i=C(C(n*k)+C(C(u*l)+C(i*j)));k=z[b+80>>2];b:{if(i>C(o+z[b+64>>2])?1:C(o+i)>2]=0;A=v[b+52>>2];v[b>>2]=v[b+48>>2];v[b+4>>2]=A;A=v[b+60>>2];v[b+8>>2]=v[b+56>>2];v[b+12>>2]=A;z[b+16>>2]=C(i-k)+C(-1.1920928955078125e-7);if(!m2(g,p,m,E,b+16|0,b+48|0,b,b+44|0)){break b}if(!n2(h,d,g,p,m,E,b+16|0,b,b+44|0)){break b}j=z[h+68>>2];n=z[h+84>>2];i=z[h+52>>2];o=z[h+72>>2];u=z[h+80>>2];r=z[h+88>>2];k=z[h+56>>2];l=z[h+48>>2];q=z[h+64>>2];v[b+92>>2]=0;q=C(q-l);n=C(n-i);l=C(u-l);j=C(j-i);i=C(C(q*n)-C(l*j));F=i;s=C(i*i);i=j;j=C(r-k);k=C(o-k);i=C(C(i*j)-C(n*k));k=C(C(k*l)-C(j*q));l=C(C(1)/C(K(C(s+C(C(i*i)+C(k*k))))));j=C(F*l);z[b+88>>2]=j;k=C(k*l);z[b+84>>2]=k;i=C(i*l);z[b+80>>2]=i;c:{d:{switch(v[b+44>>2]){case 0:p=v[g+24>>2];A=_1(g,m,b);I=v[b+92>>2];v[f+8>>2]=v[b+88>>2];v[f+12>>2]=I;I=v[b+84>>2];v[f>>2]=v[b+80>>2];v[f+4>>2]=I;o2(h,c,g,p+B(A,20)|0,m,Q,R,E,b+80|0);break c;case 1:p=v[b+48>>2];if(C(C(C(C(-z[b>>2])*i)-C(k*z[b+4>>2]))-C(z[b+8>>2]*j))>C(.7071067690849304)){A=v[g+24>>2];I=v[b+92>>2];v[f+8>>2]=v[b+88>>2];v[f+12>>2]=I;I=v[b+84>>2];v[f>>2]=v[b+80>>2];v[f+4>>2]=I;o2(h,c,g,A+B(p,20)|0,m,Q,R,E,b+80|0);break c}if(w[a+4429|0]?0:d&7){break c}g=v[a+3620>>2];E=v[g+4360>>2];m=E+15|0;if(m>>>0>(v[g+4364>>2]&2147483647)>>>0){GZ(g,m);g=v[a+3620>>2];E=v[g+4360>>2]}v[g+4360>>2]=m;g=v[g+4356>>2]+(E<<2)|0;t[g+56|0]=d;v[g+52>>2]=p;v[g+48>>2]=c;v[g+36>>2]=v[e>>2];v[g+40>>2]=v[e+4>>2];v[g+44>>2]=v[e+8>>2];c=v[h+52>>2];m=v[h+48>>2];z[g+8>>2]=z[h+56>>2];v[g>>2]=m;v[g+4>>2]=c;c=v[h+68>>2];m=v[h+64>>2];z[g+20>>2]=z[h+72>>2];v[g+12>>2]=m;v[g+16>>2]=c;c=v[h+84>>2];m=v[h+80>>2];z[g+32>>2]=z[h+88>>2];v[g+24>>2]=m;v[g+28>>2]=c;break c;default:break d}}A=_1(g,m,b);v[b+48>>2]=A;p=v[m+40>>2];j=z[p+36>>2];n=z[p+40>>2];A=v[g+24>>2]+B(A,20)|0;i=z[A>>2];k=z[A+4>>2];o=z[p+20>>2];l=z[A+8>>2];u=z[p+24>>2];r=z[p+32>>2];q=z[p+8>>2];s=z[p>>2];x=z[p+4>>2];D=z[p+16>>2];v[b+76>>2]=0;j=C(C(n*l)+C(C(r*i)+C(k*j)));n=C(C(q*l)+C(C(s*i)+C(k*x)));k=C(C(u*l)+C(C(D*i)+C(k*o)));i=C(C(1)/C(K(C(C(j*j)+C(C(n*n)+C(k*k))))));l=C(n*i);z[b+64>>2]=l;k=C(k*i);z[b+68>>2]=k;i=C(j*i);z[b+72>>2]=i;v[f+12>>2]=0;z[f+8>>2]=-i;z[f+4>>2]=-k;z[f>>2]=-l;p2(g,A,h,c,m,Q,R,E,b- -64|0)}}xa=b+96|0;if(y[a+2324>>2]<=U>>>0){break a}E=d&16;e:{if(d&8){break e}g=v[a+3616>>2];if((g|0)==128){break e}m=a+2336|0;b=v[e>>2];c=v[e+4>>2];p=b>>>0>>0?b:c;h=b>>>0>c>>>0?b:c;b=p<<16|h;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=(((b>>>16^b)&127)+a|0)+3488|0;b=w[c|0];if((b|0)!=255){while(1){b=b&255;c=m+(b<<3)|0;if((p|0)==v[c>>2]&(h|0)==v[c+4>>2]){break e}c=(a+b|0)+3360|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=g;t[(a+g|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;c=m+(b<<3)|0;v[c>>2]=p;v[c+4>>2]=h}p=d&32;f:{if(E){break f}h=v[a+3616>>2];if((h|0)==128){break f}g=a+2336|0;b=v[e+4>>2];c=v[e+8>>2];m=b>>>0>>0?b:c;c=b>>>0>c>>>0?b:c;b=m<<16|c;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+a|0)+3488|0;b=w[d|0];if((b|0)!=255){while(1){b=b&255;d=g+(b<<3)|0;if((m|0)==v[d>>2]&(c|0)==v[d+4>>2]){break f}d=(a+b|0)+3360|0;b=w[d|0];if((b|0)!=255){continue}break}}t[d|0]=h;t[(a+h|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;d=g+(b<<3)|0;v[d>>2]=m;v[d+4>>2]=c}g:{if(p){break g}h=v[a+3616>>2];if((h|0)==128){break g}g=a+2336|0;b=v[e+8>>2];c=v[e>>2];m=b>>>0>>0?b:c;c=b>>>0>c>>>0?b:c;b=m<<16|c;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+a|0)+3488|0;b=w[d|0];if((b|0)!=255){while(1){b=b&255;d=g+(b<<3)|0;if((m|0)==v[d>>2]&(c|0)==v[d+4>>2]){break g}d=(a+b|0)+3360|0;b=w[d|0];if((b|0)!=255){continue}break}}t[d|0]=h;t[(a+h|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;d=g+(b<<3)|0;v[d>>2]=m;v[d+4>>2]=c}d=v[a+4396>>2];h:{if((d|0)==128){break h}h=a+3628|0;g=v[e>>2];c=((g&127)+a|0)+4268|0;b=w[c|0];i:{if((b|0)!=255){while(1){b=b&255;if((g|0)==v[h+(b<<2)>>2]){break i}c=(a+b|0)+4140|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+4140|0]=255;b=v[a+4396>>2];v[a+4396>>2]=b+1;v[h+(b<<2)>>2]=g;d=v[a+4396>>2]}if((d|0)==128){break h}g=v[e+4>>2];c=((g&127)+a|0)+4268|0;b=w[c|0];j:{if((b|0)!=255){while(1){b=b&255;if((g|0)==v[h+(b<<2)>>2]){break j}c=(a+b|0)+4140|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+4140|0]=255;b=v[a+4396>>2];v[a+4396>>2]=b+1;v[h+(b<<2)>>2]=g;d=v[a+4396>>2]}if((d|0)==128){break h}e=v[e+8>>2];c=((e&127)+a|0)+4268|0;b=w[c|0];if((b|0)!=255){while(1){b=b&255;if((e|0)==v[h+(b<<2)>>2]){break h}c=(a+b|0)+4140|0;b=w[c|0];if((b|0)!=255){continue}break}}t[c|0]=d;t[(a+d|0)+4140|0]=255;b=v[a+4396>>2];v[a+4396>>2]=b+1;v[h+(b<<2)>>2]=e}C1(a,f,U)}xa=f+224|0}function L5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0);f=xa-288|0;xa=f;E5(f+192|0,f+160|0,b,c,d);if(e&1){Ba[v[v[a>>2]+8>>2]](a,f+192|0,f+160|0)}a:{if(!(e&2)){break a}E=z[f+212>>2];H=z[f+180>>2];I=z[f+216>>2];y=z[f+184>>2];J=z[f+168>>2];O=z[f+160>>2];P=z[f+172>>2];L=z[f+164>>2];j=z[f+208>>2];o=z[f+176>>2];i=z[f+196>>2];p=C(i+i);h=z[f+200>>2];m=C(p*h);l=z[f+192>>2];k=C(l+l);g=z[f+204>>2];A=C(k*g);n=C(m-A);z[f+148>>2]=n;m=C(m+A);z[f+140>>2]=m;q=C(C(1)-C(l*k));u=C(i*p);A=C(q-u);z[f+152>>2]=A;x=C(h+h);M=C(h*x);q=C(q-M);z[f+136>>2]=q;t=C(k*h);p=C(p*g);B=C(t+p);z[f+144>>2]=B;k=C(k*i);r=C(x*g);x=C(k-r);z[f+132>>2]=x;t=C(t-p);z[f+128>>2]=t;r=C(k+r);z[f+124>>2]=r;u=C(C(C(1)-u)-M);z[f+120>>2]=u;k=C(o-j);o=C(k+k);k=C(H-E);E=C(k+k);k=C(y-I);H=C(k+k);I=C(C(C(C(-l)*o)-C(E*i))-C(h*H));y=C(C(g*g)+C(-.5));k=C(C(C(H*y)+C(g*C(C(i*o)-C(l*E))))-C(h*I));p=C(C(C(E*y)+C(g*C(C(l*H)-C(h*o))))-C(i*I));o=C(C(C(o*y)+C(g*C(C(h*E)-C(i*H))))-C(l*I));ha=C(C(g*P)+C(l*O));ia=C(i*L);ja=C(C(g*J)-C(P*h));ka=C(l*L);la=C(C(g*L)-C(P*i));ma=C(h*O);na=C(C(C(g*O)-C(P*l))-C(i*J));oa=C(L*h);d=f+208|0;b:{if(!w[b+477|0]){break b}c=f+144|0;e=f+132|0;c:{switch(v[b+456>>2]-1|0){case 0:m=z[b+140>>2];A=z[b+144>>2];q=z[b+136>>2];g=z[b+148>>2];n=z[b+152>>2];B=z[f+216>>2];z[f+80>>2]=C(t*n)+B;x=z[f+212>>2];z[f+76>>2]=C(r*n)+x;z[f+72>>2]=j+C(u*n);z[f+48>>2]=B+C(t*g);z[f+44>>2]=x+C(r*g);z[f+40>>2]=j+C(u*g);s=g;g=m>C(0)?C(0):q>C(0)?C(0):A;Ba[v[v[a>>2]+28>>2]](a,f+72|0,f+40|0,oC(s-g)?16711680:16777215);break b;case 1:A=z[b+168>>2];B=z[b+172>>2];t=z[b+164>>2];g=z[b+176>>2];n=z[b+180>>2];r=z[f+216>>2];z[f+80>>2]=C(n*m)+r;u=z[f+212>>2];z[f+76>>2]=C(n*q)+u;z[f+72>>2]=j+C(x*n);z[f+48>>2]=r+C(g*m);z[f+44>>2]=u+C(g*q);z[f+40>>2]=j+C(x*g);s=g;g=A>C(0)?C(0):t>C(0)?C(0):B;Ba[v[v[a>>2]+28>>2]](a,f+72|0,f+40|0,pC(s-g)?16711680:16777215);break b;case 3:q=z[b+196>>2];x=z[b+200>>2];t=z[b+192>>2];g=z[b+204>>2];m=z[b+208>>2];r=z[f+216>>2];z[f+80>>2]=C(m*A)+r;u=z[f+212>>2];z[f+76>>2]=C(m*n)+u;z[f+72>>2]=j+C(B*m);z[f+48>>2]=r+C(g*A);z[f+44>>2]=u+C(g*n);z[f+40>>2]=j+C(B*g);s=g;g=q>C(0)?C(0):t>C(0)?C(0):x;Ba[v[v[a>>2]+28>>2]](a,f+72|0,f+40|0,kC(s-g)?16711680:16777215);break b;case 2:M5(a,d,f+120|0,b+128|0,o,e,b+156|0,p);break b;case 4:M5(a,d,f+120|0,b+128|0,o,c,b+184|0,k);break b;case 5:M5(a,d,e,b+156|0,p,c,b+184|0,k);break b;case 6:break c;default:break b}}pa=z[b+140>>2];qa=z[b+144>>2];ra=z[b+136>>2];sa=z[b+168>>2];ta=z[b+172>>2];ua=z[b+164>>2];va=z[b+196>>2];wa=z[b+200>>2];ya=z[b+192>>2];g=z[b+204>>2];E=z[b+176>>2];H=z[b+148>>2];I=z[b+208>>2];y=C(I*A);M=z[b+180>>2];Q=C(M*m);S=z[b+152>>2];R=z[f+216>>2];$=C(C(t*S)+R);aa=C(Q+$);z[f+80>>2]=y+aa;N=C(I*n);ba=C(M*q);ca=z[f+212>>2];da=C(C(r*S)+ca);ea=C(ba+da);z[f+76>>2]=N+ea;fa=C(j+C(u*S));s=C(x*M);ga=C(fa+s);T=C(B*I);z[f+72>>2]=ga+T;t=C(R+C(t*H));Q=C(Q+t);z[f+48>>2]=y+Q;r=C(ca+C(r*H));R=C(ba+r);z[f+44>>2]=N+R;j=C(j+C(u*H));u=C(j+s);z[f+40>>2]=u+T;m=C(E*m);t=C(m+t);z[f+16>>2]=y+t;q=C(E*q);r=C(q+r);z[f+12>>2]=N+r;s=j;j=C(x*E);x=C(s+j);z[f+8>>2]=x+T;s=y;y=C(m+$);z[f+112>>2]=s+y;q=C(q+da);z[f+108>>2]=N+q;N=C(fa+j);z[f+104>>2]=N+T;j=C(g*A);z[f+280>>2]=j+aa;n=C(g*n);z[f+276>>2]=n+ea;m=C(B*g);z[f+272>>2]=ga+m;z[f+264>>2]=j+Q;z[f+260>>2]=n+R;z[f+256>>2]=u+m;z[f+248>>2]=j+t;z[f+244>>2]=n+r;z[f+240>>2]=x+m;z[f+232>>2]=j+y;z[f+228>>2]=n+q;z[f+224>>2]=N+m;e=f+72|0;U=f+40|0;s=g;g=va>C(0)?C(0):ya>C(0)?C(0):wa;c=kC(s-g)?16711680:16777215;g=sa>C(0)?C(0):ua>C(0)?C(0):ta;c=pC(E-g)?16711680:c;g=pa>C(0)?C(0):ra>C(0)?C(0):qa;c=oC(H-g)?16711680:c;Ba[v[v[a>>2]+28>>2]](a,e,U,c);V=f+8|0;Ba[v[v[a>>2]+28>>2]](a,U,V,c);W=f+104|0;Ba[v[v[a>>2]+28>>2]](a,V,W,c);Ba[v[v[a>>2]+28>>2]](a,W,e,c);X=f+272|0;Y=f+256|0;Ba[v[v[a>>2]+28>>2]](a,X,Y,c);Z=f+240|0;Ba[v[v[a>>2]+28>>2]](a,Y,Z,c);_=f+224|0;Ba[v[v[a>>2]+28>>2]](a,Z,_,c);Ba[v[v[a>>2]+28>>2]](a,_,X,c);Ba[v[v[a>>2]+28>>2]](a,e,X,c);Ba[v[v[a>>2]+28>>2]](a,U,Y,c);Ba[v[v[a>>2]+28>>2]](a,V,Z,c);Ba[v[v[a>>2]+28>>2]](a,W,_,c)}j=C(ia+ha);n=C(h*J);m=C(ja-ka);A=C(O*i);q=C(la-ma);B=C(J*l);l=C(oa+na);d:{if(!w[b+476|0]){break d}h=C(0);i=C(0);g=C(0);c=v[b+456>>2];if(c&1){g=C(C(o*z[f+128>>2])+C(0));i=C(C(o*z[f+124>>2])+C(0));h=C(C(o*z[f+120>>2])+C(0))}if(c&2){g=C(g+C(p*z[f+140>>2]));i=C(i+C(p*z[f+136>>2]));h=C(h+C(p*z[f+132>>2]))}if(c&4){g=C(g+C(k*z[f+152>>2]));i=C(i+C(k*z[f+148>>2]));h=C(h+C(k*z[f+144>>2]))}h=C(K(C(C(g*g)+C(C(h*h)+C(i*i)))));if(!(h>z[b+464>>2])){break d}Ba[v[v[a>>2]+28>>2]](a,d,f+176|0,h>z[b+124>>2]?16711680:65280)}j=C(n+j);k=C(A+m);p=C(B+q);h=C(0);e:{if(l==C(0)){i=C(1);g=C(0);break e}h=C(C(1)/C(K(C(C(j*j)+C(C(C(l*l)+C(0))+C(0))))));i=C(j*h);g=C(h*C(0));h=C(l*h)}n=C(g*k);m=C(p*g);o=C(n+C(m+C(C(j*i)+C(l*h))));z[f+116>>2]=o;z[f+104>>2]=n+C(C(C(l*i)-C(j*h))-m);j=C(j*C(-g));n=C(g*l);l=C(C(h*p)+C(C(j+C(k*i))-n));z[f+112>>2]=l;j=C(n+C(C(j+C(p*i))-C(k*h)));z[f+108>>2]=j;e=v[b+456>>2];if(e&8){g=C(g*g);g=C(K(C(C(i*i)+C(g+C(g+C(h*h))))));if(g!=C(0)){g=C(C(1)/g);i=C(i*g);h=C(h*g)}g=z[b+236>>2];k=z[b+232>>2];s=k;k=z[b+224>>2]>C(0)?C(0):z[b+220>>2]>C(0)?C(0):z[b+228>>2];i=A9(C(F(C(G(i,C(-1))),C(1))));i=C(i+i);h=h>2]+16>>2]](a,f+192|0,g,s,C(s-k)>2]}if((e&48)==48){if(w[b+478|0]){h=C(o+C(1));i=C9(j,h);h=C9(l,h);g=z[b+264>>2];j=W9(C(g*C(.25)));l=z[b+260>>2];y=W9(C(l*C(.25)));s=C(D(C(i*C(4))));i=z[b+252>>2]>C(0)?C(0):z[b+248>>2]>C(0)?C(0):z[b+256>>2];l=C(C(s+i)/l);h=C(C(C(D(C(h*C(4))))+i)/g);Ba[v[v[a>>2]+20>>2]](a,f+192|0,j,y,!(C(C(l*l)+C(h*h))<=C(1)))}if(!w[b+479|0]){break a}N5(a,b,f+192|0,f+104|0,1,1);break a}d=e&16;if((e>>>5&1)==(d>>>4|0)){break a}i=C(O+O);g=C(L+L);h=C(C(i*J)-C(P*g));k=C(J+J);i=C(C(i*L)+C(P*k));g=C(C(C(1)-C(L*g))-C(J*k));v[f+96>>2]=0;v[f+88>>2]=0;v[f+92>>2]=0;v[f+80>>2]=-1087044365;v[f+84>>2]=1060439283;v[f+72>>2]=-2147483648;v[f+76>>2]=-2147483648;v[f- -64>>2]=0;v[f+56>>2]=0;v[f+60>>2]=0;v[f+48>>2]=0;v[f+52>>2]=1060439283;v[f+40>>2]=0;v[f+44>>2]=1060439283;c=v[b+452>>2];if(d){d=w[b+479|0];if(c&32){if(d){N5(a,b,f+192|0,f+104|0,1,0);break a}c=f+8|0;O5(c,f+192|0,f+72|0);P5(a,z[b+256>>2],c,j,o,z[b+260>>2]);break a}if(d){break a}c=f+8|0;O5(c,f+192|0,f+40|0);Q5(a,b,c,C(C(z[f+152>>2]*h)+C(C(z[f+144>>2]*g)+C(i*z[f+148>>2]))),z[b+260>>2]);break a}d=w[b+479|0];if(c&16){if(d){N5(a,b,f+192|0,f+104|0,0,1);break a}c=f+8|0;O5(c,f+192|0,f+40|0);P5(a,z[b+256>>2],c,l,o,z[b+264>>2]);break a}if(d){break a}c=f+8|0;O5(c,f+192|0,f+72|0);Q5(a,b,c,C(C(z[f+140>>2]*h)+C(C(z[f+132>>2]*g)+C(i*z[f+136>>2]))),z[b+264>>2])}xa=f+288|0}function sL(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,z=0,A=0,C=0,D=0,E=0;if(v[a+116>>2]){a:{if(!w[a+28|0]){break a}s=v[a+20>>2];C=v[a+12>>2];m=v[a+4>>2];t=v[a>>2];q=v[a+24>>2];b:{if(!q){break b}if(!s){break a}u=v[a+16>>2];o=v[a+8>>2];while(1){n=B(k,24)+m|0;c=v[n>>2];l=v[n+12>>2];while(1){d=e;e=d+1|0;f=v[o+B(d,24)>>2];if(f>>>0>>0){continue}break}if(f>>>0<=l>>>0){r=C+(k<<1)|0;e=d;while(1){c=o+B(e,24)|0;c:{if(v[c+20>>2]-v[n+8>>2]>>>1&1073741824|v[c+16>>2]-v[n+4>>2]&-2147483648|v[n+16>>2]-v[c+4>>2]>>>2&536870912|v[n+20>>2]-v[c+8>>2]>>>3&268435456){break c}i=v[b+28>>2];g=v[b+32>>2];c=v[(t+(x[r>>1]<<3)|0)+4>>2];j=v[i+(v[g+B(c>>>2|0,12)>>2]<<2)>>2];f=v[(t+(x[u+(e<<1)>>1]<<3)|0)+4>>2];g=v[i+(v[g+B(f>>>2|0,12)>>2]<<2)>>2];if((j|0)==(g|0)|!w[v[b+36>>2]+(j<<2&12|g&3)|0]){break c}i=c>>>0>>0?c:f;j=c>>>0>f>>>0?c:f;c=i&65535|j<<16;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;A=c>>>16^c;f=A&v[b+4>>2];d:{g=v[b+12>>2];e:{if(!g){break e}c=v[(f<<2)+g>>2];if((c|0)==-1){break e}D=v[b+16>>2];z=v[b+20>>2];while(1){p=z+(c<<3)|0;if((i|0)==(v[p>>2]&2147483647)){E=v[p+4>>2];if((j|0)==(E&2147483647)){break d}}c=v[D+(c<<2)>>2];if((c|0)!=-1){continue}break}}c=v[b+8>>2];if(c>>>0>=y[b>>2]){f=_H(b,A);g=v[b+12>>2];c=v[b+8>>2]}v[b+8>>2]=c+1;p=v[b+20>>2]+(c<<3)|0;v[p+4>>2]=j;v[p>>2]=i|-2147483648;f=(f<<2)+g|0;v[v[b+16>>2]+(c<<2)>>2]=v[f>>2];v[f>>2]=c;break c}v[p+4>>2]=E|-2147483648}e=e+1|0;if(l>>>0>=y[o+B(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+B(h,24)|0;f=v[e>>2];n=v[e+12>>2];while(1){d=c;c=c+1|0;e=v[B(d,24)+m>>2];if(e>>>0<=f>>>0){continue}break}if(e>>>0<=n>>>0){p=u+(h<<1)|0;k=o+B(h,24)|0;e=d;while(1){c=B(e,24)+m|0;g:{if(v[c+20>>2]-v[k+8>>2]>>>1&1073741824|v[c+16>>2]-v[k+4>>2]&-2147483648|v[k+16>>2]-v[c+4>>2]>>>2&536870912|v[k+20>>2]-v[c+8>>2]>>>3&268435456){break g}l=v[b+28>>2];g=v[b+32>>2];c=v[(t+(x[C+(e<<1)>>1]<<3)|0)+4>>2];i=v[l+(v[g+B(c>>>2|0,12)>>2]<<2)>>2];f=v[(t+(x[p>>1]<<3)|0)+4>>2];g=v[l+(v[g+B(f>>>2|0,12)>>2]<<2)>>2];if((i|0)==(g|0)|!w[v[b+36>>2]+(i<<2&12|g&3)|0]){break g}l=c>>>0>>0?c:f;i=c>>>0>f>>>0?c:f;c=l&65535|i<<16;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;r=c>>>16^c;f=r&v[b+4>>2];h:{g=v[b+12>>2];i:{if(!g){break i}c=v[(f<<2)+g>>2];if((c|0)==-1){break i}A=v[b+16>>2];D=v[b+20>>2];while(1){j=D+(c<<3)|0;if((l|0)==(v[j>>2]&2147483647)){z=v[j+4>>2];if((i|0)==(z&2147483647)){break h}}c=v[A+(c<<2)>>2];if((c|0)!=-1){continue}break}}c=v[b+8>>2];if(c>>>0>=y[b>>2]){f=_H(b,r);g=v[b+12>>2];c=v[b+8>>2]}v[b+8>>2]=c+1;j=v[b+20>>2]+(c<<3)|0;v[j+4>>2]=i;v[j>>2]=l|-2147483648;f=(f<<2)+g|0;v[v[b+16>>2]+(c<<2)>>2]=v[f>>2];v[f>>2]=c;break g}v[j+4>>2]=z|-2147483648}e=e+1|0;if(n>>>0>=y[B(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=B(f,24)+m|0;c=v[g>>2];e=d;while(1){h=B(e,24);d=e+1|0;e=d;if(c>>>0>y[h+m>>2]){continue}break}if(d>>>0>=s>>>0){break a}u=v[g+12>>2];if(u>>>0>=y[B(d,24)+m>>2]){l=C+(f<<1)|0;c=d;while(1){e=B(c,24)+m|0;j:{if(v[e+20>>2]-v[g+8>>2]>>>1&1073741824|v[e+16>>2]-v[g+4>>2]&-2147483648|v[g+16>>2]-v[e+4>>2]>>>2&536870912|v[g+20>>2]-v[e+8>>2]>>>3&268435456){break j}o=v[b+28>>2];k=v[b+32>>2];e=v[(t+(x[l>>1]<<3)|0)+4>>2];n=v[o+(v[k+B(e>>>2|0,12)>>2]<<2)>>2];h=v[(t+(x[C+(c<<1)>>1]<<3)|0)+4>>2];k=v[o+(v[k+B(h>>>2|0,12)>>2]<<2)>>2];if((n|0)==(k|0)|!w[v[b+36>>2]+(n<<2&12|k&3)|0]){break j}o=e>>>0>>0?e:h;n=e>>>0>h>>>0?e:h;e=o&65535|n<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;i=e>>>16^e;h=i&v[b+4>>2];k:{k=v[b+12>>2];l:{if(!k){break l}e=v[(h<<2)+k>>2];if((e|0)==-1){break l}j=v[b+16>>2];p=v[b+20>>2];while(1){q=p+(e<<3)|0;if((o|0)==(v[q>>2]&2147483647)){r=v[q+4>>2];if((n|0)==(r&2147483647)){break k}}e=v[j+(e<<2)>>2];if((e|0)!=-1){continue}break}}e=v[b+8>>2];if(e>>>0>=y[b>>2]){h=_H(b,i);k=v[b+12>>2];e=v[b+8>>2]}v[b+8>>2]=e+1;q=v[b+20>>2]+(e<<3)|0;v[q+4>>2]=n;v[q>>2]=o|-2147483648;h=(h<<2)+k|0;v[v[b+16>>2]+(e<<2)>>2]=v[h>>2];v[h>>2]=e;break j}v[q+4>>2]=r|-2147483648}c=c+1|0;if(u>>>0>=y[B(c,24)+m>>2]){continue}break}}f=f+1|0;if((s|0)!=(f|0)){continue}break}}m:{if(!w[a+60|0]){break m}C=v[a+56>>2];q=v[a+52>>2];k=v[a+48>>2];s=v[a+44>>2];o=v[a+32>>2];n=v[a+40>>2];t=v[a+36>>2];n:{if(!n|!t){break n}h=0;d=0;while(1){m=s+B(h,24)|0;e=v[m>>2];u=v[m+12>>2];while(1){c=d;d=c+1|0;f=v[k+B(c,24)>>2];if(f>>>0>>0){continue}break}if(f>>>0<=u>>>0){p=C+(h<<1)|0;e=c;while(1){d=k+B(e,24)|0;o:{if(v[d+20>>2]-v[m+8>>2]>>>1&1073741824|v[d+16>>2]-v[m+4>>2]&-2147483648|v[m+16>>2]-v[d+4>>2]>>>2&536870912|v[m+20>>2]-v[d+8>>2]>>>3&268435456){break o}l=v[b+28>>2];g=v[b+32>>2];d=v[(o+(x[p>>1]<<3)|0)+4>>2];i=v[l+(v[g+B(d>>>2|0,12)>>2]<<2)>>2];f=v[(o+(x[q+(e<<1)>>1]<<3)|0)+4>>2];g=v[l+(v[g+B(f>>>2|0,12)>>2]<<2)>>2];if((i|0)==(g|0)|!w[v[b+36>>2]+(i<<2&12|g&3)|0]){break o}l=d>>>0>>0?d:f;i=d>>>0>f>>>0?d:f;d=l&65535|i<<16;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;r=d>>>16^d;f=r&v[b+4>>2];p:{g=v[b+12>>2];q:{if(!g){break q}d=v[(f<<2)+g>>2];if((d|0)==-1){break q}A=v[b+16>>2];D=v[b+20>>2];while(1){j=D+(d<<3)|0;if((l|0)==(v[j>>2]&2147483647)){z=v[j+4>>2];if((i|0)==(z&2147483647)){break p}}d=v[A+(d<<2)>>2];if((d|0)!=-1){continue}break}}d=v[b+8>>2];if(d>>>0>=y[b>>2]){f=_H(b,r);g=v[b+12>>2];d=v[b+8>>2]}v[b+8>>2]=d+1;j=v[b+20>>2]+(d<<3)|0;v[j+4>>2]=i;v[j>>2]=l|-2147483648;f=(f<<2)+g|0;v[v[b+16>>2]+(d<<2)>>2]=v[f>>2];v[f>>2]=d;break o}v[j+4>>2]=z|-2147483648}e=e+1|0;if(u>>>0>=y[k+B(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+B(h,24)|0;e=v[m>>2];u=v[m+12>>2];while(1){c=d;d=c+1|0;f=v[s+B(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+B(e,24)|0;r:{if(v[d+20>>2]-v[m+8>>2]>>>1&1073741824|v[d+16>>2]-v[m+4>>2]&-2147483648|v[m+16>>2]-v[d+4>>2]>>>2&536870912|v[m+20>>2]-v[d+8>>2]>>>3&268435456){break r}l=v[b+28>>2];g=v[b+32>>2];d=v[(o+(x[C+(e<<1)>>1]<<3)|0)+4>>2];i=v[l+(v[g+B(d>>>2|0,12)>>2]<<2)>>2];f=v[(o+(x[p>>1]<<3)|0)+4>>2];g=v[l+(v[g+B(f>>>2|0,12)>>2]<<2)>>2];if((i|0)==(g|0)|!w[v[b+36>>2]+(i<<2&12|g&3)|0]){break r}l=d>>>0>>0?d:f;i=d>>>0>f>>>0?d:f;d=l&65535|i<<16;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;r=d>>>16^d;f=r&v[b+4>>2];s:{g=v[b+12>>2];t:{if(!g){break t}d=v[(f<<2)+g>>2];if((d|0)==-1){break t}A=v[b+16>>2];D=v[b+20>>2];while(1){j=D+(d<<3)|0;if((l|0)==(v[j>>2]&2147483647)){z=v[j+4>>2];if((i|0)==(z&2147483647)){break s}}d=v[A+(d<<2)>>2];if((d|0)!=-1){continue}break}}d=v[b+8>>2];if(d>>>0>=y[b>>2]){f=_H(b,r);g=v[b+12>>2];d=v[b+8>>2]}v[b+8>>2]=d+1;j=v[b+20>>2]+(d<<3)|0;v[j+4>>2]=i;v[j>>2]=l|-2147483648;f=(f<<2)+g|0;v[v[b+16>>2]+(d<<2)>>2]=v[f>>2];v[f>>2]=d;break r}v[j+4>>2]=z|-2147483648}e=e+1|0;if(u>>>0>=y[s+B(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}}v[a+116>>2]=0}}function wX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=0,U=C(0);c=xa-144|0;xa=c;j=z[b+20>>2];t=z[e+40>>2];D=z[b+24>>2];m=z[e+44>>2];y=z[b+16>>2];E=z[e+36>>2];z[c+80>>2]=z[e>>2];z[c+84>>2]=z[e+4>>2];z[c+88>>2]=z[e+8>>2];z[c+92>>2]=z[e+12>>2];z[c+96>>2]=z[e+16>>2];z[c+100>>2]=z[e+20>>2];z[c+104>>2]=z[e+24>>2];z[c+108>>2]=z[e+28>>2];J=z[e+32>>2];z[c+124>>2]=m-D;z[c+120>>2]=t-j;z[c+112>>2]=J;z[c+116>>2]=E-y;z[c+128>>2]=z[e+48>>2];z[c+132>>2]=z[e+52>>2];z[c+136>>2]=z[e+56>>2];j=z[b+8>>2];t=z[b+4>>2];D=z[b+12>>2];m=z[b>>2];v[c+60>>2]=0;E=C(t+t);J=C(j*E);y=C(m+m);Q=C(D*y);z[c+44>>2]=J-Q;z[c+36>>2]=J+Q;m=C(C(1)-C(m*y));J=C(t*E);z[c+48>>2]=m-J;k=m;m=C(j+j);Q=C(j*m);z[c+32>>2]=k-Q;v[c+52>>2]=0;v[c+56>>2]=0;j=C(y*j);E=C(E*D);z[c+40>>2]=j+E;t=C(y*t);D=C(m*D);z[c+28>>2]=t-D;z[c+24>>2]=j-E;z[c+20>>2]=t+D;z[c+16>>2]=C(C(1)-J)-Q;z[c+64>>2]=z[a+4>>2];z[c+68>>2]=z[a+8>>2];z[c+72>>2]=z[a+12>>2];u[c+8>>1]=x[i>>1];d=c+80|0;e=c+16|0;t=C(0);D=C(0);J=C(0);Q=C(0);a=xa-592|0;xa=a;a:{b:{if(w[c+8|0]&16){break b}i=1;if(!p$(d+48|0,d+36|0,d,e+48|0,e+36|0,e)){break b}v[h+40>>2]=0;u[h+12>>1]=2;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break a}FV(a+496|0,d+36|0,d+48|0,d,d+12|0,d+24|0);FV(a+400|0,e+36|0,e+48|0,e,e+12|0,e+24|0);j=z[d+52>>2];m=z[d+48>>2];y=z[d+56>>2];z[a+232>>2]=-y;z[a+228>>2]=-j;z[a+224>>2]=-m;z[a+88>>2]=y;z[a+84>>2]=j;z[a+80>>2]=m;H=z[d+24>>2];j=C(-z[d+36>>2]);k=z[d+28>>2];m=z[d+40>>2];l=z[d+32>>2];y=z[d+44>>2];L=C(C(C(H*j)-C(k*m))-C(l*y));s=z[d+12>>2];F=z[d+16>>2];G=z[d+20>>2];o=C(C(C(s*j)-C(F*m))-C(G*y));q=z[d>>2];M=z[d+4>>2];N=z[d+8>>2];A=C(C(C(q*j)-C(M*m))-C(N*y));j=z[f>>2];E=z[f+4>>2];n=z[f+8>>2];m=C(-C(C(C(H*j)+C(k*E))+C(l*n)));y=C(-C(C(C(s*j)+C(F*E))+C(G*n)));E=C(-C(C(C(q*j)+C(M*E))+C(N*n)));T=h+28|0;i=0;I=-1;while(1){p=(a+400|0)+B(i,12)|0;j=z[p>>2];n=z[p+4>>2];r=z[p+8>>2];z[a+392>>2]=L+C(C(C(H*j)+C(k*n))+C(l*r));z[a+388>>2]=o+C(C(C(s*j)+C(F*n))+C(G*r));z[a+384>>2]=A+C(C(C(q*j)+C(M*n))+C(N*r));z[a+376>>2]=m;z[a+372>>2]=y;z[a+368>>2]=E;R=r$(a+224|0,a+80|0,a+384|0,a+368|0,a- -64|0,a+48|0);c:{if((R|0)==-1){break c}j=z[a+64>>2];if(j=j)){break c}O=z[d+24>>2];t=z[d>>2];D=z[d+12>>2];J=z[d+28>>2];Q=z[d+4>>2];S=z[d+16>>2];I=B(R,12)+103216|0;g=z[I>>2];n=z[I+4>>2];r=z[I+8>>2];z[h+36>>2]=C(C(g*z[d+8>>2])+C(n*z[d+20>>2]))+C(r*z[d+32>>2]);z[h+32>>2]=C(C(g*Q)+C(n*S))+C(r*J);z[h+28>>2]=C(C(g*t)+C(n*D))+C(r*O);z[h+16>>2]=z[p>>2];z[h+20>>2]=z[p+4>>2];z[h+24>>2]=z[p+8>>2];I=0;g=j}i=i+1|0;if((i|0)!=8){continue}break}j=z[e+52>>2];H=z[e+48>>2];k=z[e+56>>2];z[a+232>>2]=-k;z[a+228>>2]=-j;z[a+224>>2]=-H;z[a+88>>2]=k;z[a+84>>2]=j;z[a+80>>2]=H;j=z[e+40>>2];H=z[e+44>>2];k=z[e+20>>2];l=z[e+16>>2];A=z[e+36>>2];s=z[e+8>>2];F=z[e>>2];G=z[e+4>>2];q=z[e+12>>2];n=z[e+24>>2];M=z[f>>2];r=z[e+28>>2];N=z[f+4>>2];L=z[e+32>>2];o=z[f+8>>2];z[a+392>>2]=C(C(n*M)+C(r*N))+C(L*o);z[a+388>>2]=C(C(q*M)+C(l*N))+C(k*o);z[a+384>>2]=C(C(F*M)+C(G*N))+C(s*o);o=C(-A);M=C(C(C(n*o)-C(r*j))-C(L*H));N=C(C(C(q*o)-C(l*j))-C(k*H));H=C(C(C(F*o)-C(G*j))-C(s*H));i=0;while(1){p=(a+496|0)+B(i,12)|0;j=z[p>>2];o=z[p+4>>2];A=z[p+8>>2];z[a+376>>2]=M+C(C(C(n*j)+C(r*o))+C(L*A));z[a+372>>2]=N+C(C(C(q*j)+C(l*o))+C(k*A));z[a+368>>2]=H+C(C(C(F*j)+C(G*o))+C(s*A));R=r$(a+224|0,a+80|0,a+368|0,a+384|0,a- -64|0,a+48|0);d:{if((R|0)==-1){break d}j=z[a+64>>2];if(j=j)){break d}O=z[e+24>>2];m=z[e+12>>2];y=z[e>>2];E=z[e+28>>2];t=z[e+16>>2];D=z[e+4>>2];I=B(R,12)+103216|0;g=C(-z[I+4>>2]);o=z[I>>2];A=z[I+8>>2];z[h+36>>2]=C(C(z[e+20>>2]*g)-C(o*z[e+8>>2]))-C(A*z[e+32>>2]);z[h+32>>2]=C(C(t*g)-C(o*D))-C(A*E);z[h+28>>2]=C(C(m*g)-C(o*y))-C(A*O);g=z[p>>2];o=z[f>>2];A=z[p+4>>2];O=z[f+4>>2];z[h+24>>2]=C(j*z[f+8>>2])+z[p+8>>2];z[h+20>>2]=A+C(j*O);z[h+16>>2]=g+C(j*o);I=1;g=j}i=i+1|0;if((i|0)!=8){continue}break}s=z[d+32>>2];F=z[d+28>>2];G=z[d+24>>2];q=z[d+20>>2];n=z[d+16>>2];r=z[d+12>>2];L=z[d+8>>2];o=z[d+4>>2];A=z[d>>2];d=0;while(1){p=B(d,12);i=p+(a+224|0)|0;p=p+103296|0;j=z[p>>2];k=z[p+4>>2];l=z[p+8>>2];z[i+8>>2]=C(C(j*L)+C(k*q))+C(l*s);z[i+4>>2]=C(C(j*o)+C(k*n))+C(l*F);z[i>>2]=C(C(j*A)+C(k*r))+C(l*G);d=d+1|0;if((d|0)!=12){continue}break}s=z[e+32>>2];F=z[e+28>>2];G=z[e+24>>2];q=z[e+20>>2];n=z[e+16>>2];r=z[e+12>>2];L=z[e+8>>2];o=z[e+4>>2];A=z[e>>2];e=0;while(1){i=B(e,12);d=i+(a+80|0)|0;i=i+103296|0;j=z[i>>2];k=z[i+4>>2];l=z[i+8>>2];z[d+8>>2]=C(C(j*L)+C(k*q))+C(l*s);z[d+4>>2]=C(C(j*o)+C(k*n))+C(l*F);z[d>>2]=C(C(j*A)+C(k*r))+C(l*G);e=e+1|0;if((e|0)!=12){continue}break}d=0;while(1){e=(a+224|0)+B(d,12)|0;L=z[e+8>>2];o=z[e>>2];A=z[e+4>>2];if(C(C(L*z[f+8>>2])+C(C(o*z[f>>2])+C(A*z[f+4>>2])))>=C(0)){p=a+496|0;i=(d<<1)+140784|0;e=p+B(w[i|0],12)|0;j=z[e>>2];z[a+64>>2]=j;k=z[e+4>>2];z[a+68>>2]=k;l=z[e+8>>2];z[a+72>>2]=l;e=p+B(w[i+1|0],12)|0;s=z[e>>2];z[a+48>>2]=s;F=z[e+4>>2];z[a+52>>2]=F;G=z[e+8>>2];z[a+56>>2]=G;q=C(G-l);n=C(s-j);r=C(F-k);O=C(K(C(C(q*q)+C(C(n*n)+C(r*r)))));if(O>C(0)){P=l;l=C(C(.009999999776482582)/O);q=C(q*l);z[a+72>>2]=P-q;P=k;k=C(r*l);z[a+68>>2]=P-k;P=j;j=C(n*l);z[a+64>>2]=P-j;z[a+56>>2]=G+q;z[a+52>>2]=F+k;z[a+48>>2]=s+j}e=0;while(1){i=(a+80|0)+B(e,12)|0;j=z[i+8>>2];k=z[i>>2];l=z[i+4>>2];e:{if(C(C(j*z[f+8>>2])+C(C(k*z[f>>2])+C(l*z[f+4>>2])))>=C(0)|C(C(L*j)+C(C(o*k)+C(A*l)))>=C(0)){break e}R=a+400|0;p=(e<<1)+140784|0;i=R+B(w[p|0],12)|0;j=z[i>>2];z[a+32>>2]=j;k=z[i+4>>2];z[a+36>>2]=k;l=z[i+8>>2];z[a+40>>2]=l;i=R+B(w[p+1|0],12)|0;s=z[i>>2];z[a+16>>2]=s;F=z[i+4>>2];z[a+20>>2]=F;G=z[i+8>>2];z[a+24>>2]=G;q=C(G-l);n=C(s-j);r=C(F-k);O=C(K(C(C(q*q)+C(C(n*n)+C(r*r)))));if(O>C(0)){P=l;l=C(C(.009999999776482582)/O);q=C(q*l);z[a+40>>2]=P-q;P=k;k=C(r*l);z[a+36>>2]=P-k;P=j;j=C(n*l);z[a+32>>2]=P-j;z[a+24>>2]=G+q;z[a+20>>2]=F+k;z[a+16>>2]=s+j}if(!q$(a- -64|0,a+48|0,f,a+32|0,a+16|0,a+12|0,a)){break e}j=z[a+12>>2];if(!(j<=g)){break e}E=z[a+64>>2];z[a+384>>2]=E;y=z[a+68>>2];z[a+388>>2]=y;m=z[a+72>>2];z[a+392>>2]=m;H=z[a+32>>2];z[a+368>>2]=H;N=z[a+36>>2];z[a+372>>2]=N;M=z[a+40>>2];z[a+376>>2]=M;g=z[f>>2];k=z[f+4>>2];J=z[a+48>>2];D=z[a+52>>2];t=z[a+56>>2];U=z[a+16>>2];S=z[a+20>>2];Q=z[a+24>>2];l=z[a>>2];s=z[a+4>>2];z[h+24>>2]=C(j*z[f+8>>2])+z[a+8>>2];z[h+20>>2]=s+C(j*k);z[h+16>>2]=l+C(j*g);I=2;g=j}e=e+1|0;if((e|0)!=12){continue}break}}d=d+1|0;if((d|0)!=12){continue}break}if((I|0)!=-1){f:{if((I|0)!=2){break f}z[a+232>>2]=t-m;z[a+228>>2]=D-y;z[a+224>>2]=J-E;z[a+88>>2]=Q-M;z[a+84>>2]=S-N;z[a+80>>2]=U-H;P2(T,a+384|0,a+224|0,a+368|0,a+80|0,f,g);j=z[h+36>>2];t=z[h+28>>2];D=z[h+32>>2];m=C(K(C(C(j*j)+C(C(t*t)+C(D*D)))));if(!(m>C(0))){break f}k=j;j=C(C(1)/m);z[h+36>>2]=k*j;z[h+32>>2]=D*j;z[h+28>>2]=t*j}z[h+40>>2]=g;u[h+12>>1]=3}i=(I|0)!=-1}xa=a+592|0;if(!(!i|z[h+40>>2]==C(0))){z[h+16>>2]=z[b+16>>2]+z[h+16>>2];z[h+20>>2]=z[b+20>>2]+z[h+20>>2];z[h+24>>2]=z[b+24>>2]+z[h+24>>2]}xa=c+144|0;return i|0}function Pn(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=C(0),s=0,A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=0;A=v[37389];o=xa-16|0;xa=o;a=v[37696];e=Ba[v[v[a>>2]+20>>2]](a)|0?40633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,132,e,5452,524)|0;v[a+12>>2]=1;v[a+4>>2]=196610;v[a+88>>2]=0;v[a+92>>2]=1065353216;v[a+80>>2]=0;v[a+84>>2]=0;v[a+120>>2]=0;v[a+124>>2]=1065353216;v[a+112>>2]=0;v[a+116>>2]=0;v[a+104>>2]=0;v[a+108>>2]=1065353216;v[a+96>>2]=0;v[a+100>>2]=0;v[a+8>>2]=142832;v[a>>2]=142748;v[a+36>>2]=-25165825;v[a+28>>2]=-25165825;v[a+32>>2]=-25165825;v[a+40>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;e=a- -64|0;v[e>>2]=0;v[e+4>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+128>>2]=A;i=xa-48|0;xa=i;a:{if(!rX(67,86,88,77,i+36|0,i+35|0,b)){break a}if(y[i+36>>2]<=12){b9(v[37696],32,10646,318,65100,0);break a}hX(w[i+35|0],b);if(!sX(67,76,72,76,i+44|0,i+43|0,b)){break a}if(y[i+44>>2]<=8){if(!sX(67,86,72,76,i+44|0,i+43|0,b)){break a}}mX(i,4,w[i+43|0],b);d=v[i>>2];t[a+54|0]=d;e=v[i+4>>2];u[a+52>>1]=e;f=v[i+8>>2];t[a+55|0]=f;h=B(d&255,15);d=e&32767;h=(h+(d<<1)|0)+(e<<16>>16>=0?0:d<<2)|0;e=v[i+12>>2];d=(h+e|0)+B(f&255,20)|0;f=d&3;d=(f?4-f|0:0)+d|0;f=v[a+56>>2];if(f){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,f)}v[a+80>>2]=e;if(d){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,24422,10646,199)|0}v[a+56>>2]=c;f=x[a+52>>1];c=B(w[a+55|0],20)+c|0;g=w[a+54|0];j=B(g,3);mX(c,j,w[i+43|0],b);d=0;l=f&32767;h=f<<16>>16>=0?0:l<<2;g=c+B(g,12)|0;l=g+(l<<1)|0;f=l+j|0;if(y[i+44>>2]<=6){gX(w[i+43|0],b)}h=f+h|0;Ba[v[v[b>>2]>>2]](b,v[a+56>>2],B(w[a+55|0],20))|0;if(!(!w[i+43|0]|!w[a+55|0])){while(1){c=v[a+56>>2]+B(d,20)|0;j=w[c+3|0];t[c+3|0]=w[c|0];t[c|0]=j;j=w[c+1|0];t[c+1|0]=w[c+2|0];t[c+2|0]=j;j=w[c+4|0];t[c+4|0]=w[c+7|0];t[c+7|0]=j;j=w[c+5|0];t[c+5|0]=w[c+6|0];t[c+6|0]=j;j=w[c+11|0];t[c+11|0]=w[c+8|0];t[c+8|0]=j;j=w[c+10|0];t[c+10|0]=w[c+9|0];t[c+9|0]=j;j=w[c+15|0];t[c+15|0]=w[c+12|0];t[c+12|0]=j;j=w[c+14|0];t[c+14|0]=w[c+13|0];t[c+13|0]=j;j=w[c+17|0];t[c+17|0]=w[c+16|0];t[c+16|0]=j;d=d+1|0;if(d>>>0>2]>>2]](b,h,e)|0;Ba[v[v[b>>2]>>2]](b,g,x[a+52>>1]<<1&65534)|0;c=w[a+54|0];b:{if(y[i+44>>2]<=5){if(!c){break b}d=0;g=1;c:while(1){k=w[a+55|0];if(k){m=v[a+56>>2];e=0;j=0;while(1){d:{c=m+B(e,20)|0;p=w[c+18|0];if(!p){break d}q=x[c+16>>1];c=0;e:{while(1){if(w[h+(c+q|0)|0]!=(d|0)){c=c+1|0;if((p|0)!=(c|0)){continue}break e}break}t[i+j|0]=e;j=j+1|0}if((j|0)!=3){break d}c=l+B(d,3)|0;t[c|0]=w[i|0];t[c+1|0]=w[i+1|0];t[c+2|0]=w[i+2|0];d=d+1|0;g=w[a+54|0];if(d>>>0>>0){continue c}break b}e=e+1|0;if((k|0)!=(e|0)){continue}break}}break}if(!g){break b}c=0;while(1){e=l+B(c,3)|0;t[e|0]=255;t[e+1|0]=255;t[e+2|0]=255;c=c+1|0;if(c>>>0>2]>>2]](b,l,B(c,3))|0}c=u[a+52>>1];f:{if((c|0)>=0){break f}if(y[i+44>>2]<=7){if(!(c&32767)){break f}c=0;while(1){u[f+(c<<1)>>1]=65535;c=c+1|0;if(c>>>0<(x[a+52>>1]<<1&65534)>>>0){continue}break}break f}d=w[i+43|0];j=0;l=0;e=c<<1&65534;Ba[v[v[b>>2]>>2]](b,f,e<<1)|0;g:{if(!e|!d){break g}c=0;if(e-1>>>0>=3){h=e&-4;while(1){d=c<<1;g=d+f|0;k=w[g+1|0];t[g+1|0]=w[g|0];t[g|0]=k;g=f+(d|2)|0;k=w[g+1|0];t[g+1|0]=w[g|0];t[g|0]=k;g=f+(d|4)|0;k=w[g+1|0];t[g+1|0]=w[g|0];t[g|0]=k;d=f+(d|6)|0;g=w[d+1|0];t[d+1|0]=w[d|0];t[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=w[e+1|0];t[e+1|0]=w[e|0];t[e|0]=g;c=c+1|0;j=j+1|0;if((d|0)!=(j|0)){continue}break}}}mX(i,8,w[i+35|0],b);r=z[i+16>>2];D=z[i+4>>2];E=z[i+20>>2];F=z[i+8>>2];G=z[i+24>>2];H=z[i+12>>2];z[a+36>>2]=C(G-H)*C(.5);z[a+32>>2]=C(E-F)*C(.5);z[a+28>>2]=C(r-D)*C(.5);z[a+24>>2]=C(H+G)*C(.5);z[a+20>>2]=C(F+E)*C(.5);z[a+16>>2]=C(D+r)*C(.5);r=z[i+28>>2];z[a+88>>2]=r;if(r!=C(-1)){mX(a+92|0,9,w[i+35|0],b);mX(a+40|0,3,w[i+35|0],b)}if(iX(w[i+35|0],b)!=C(-1)){c=v[a+84>>2];if(c){c=YZ(c);e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[a+84>>2]=0;c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?46773:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,28,e,10646,351)|0;v[c>>2]=0;v[c+4>>2]=0;v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[a+84>>2]=c;k=0;m=0;p=0;q=0;j=xa-16|0;xa=j;h:{if(!sX(83,85,80,77,j+12|0,j+11|0,b)){break h}if(!sX(71,65,85,83,j+12|0,j+11|0,b)){break h}J=c,K=hX(w[j+11|0],b),u[J>>1]=K;d=hX(w[j+11|0],b);u[c+2>>1]=d;e=d<<1&131070;i:{if(!e){f=0;break i}d=v[37696];f=Ba[v[v[d+12>>2]+8>>2]](d+12|0,e,24422,13319,161)|0;d=x[c+2>>1]}v[c+4>>2]=f;Ba[v[v[b>>2]>>2]](b,f,(d&65535)<<1)|0;l=xa-16|0;xa=l;j:{if(!sX(86,65,76,69,l+12|0,l+11|0,b)){break j}J=c,K=hX(w[l+11|0],b),v[J+8>>2]=K;e=hX(w[l+11|0],b);v[c+12>>2]=e;d=v[c+24>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d);e=v[c+12>>2]}d=(v[c+8>>2]<<2)+12&-16;e=d+e|0;if(e){f=v[37696];e=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,24422,13319,99)|0}else{e=0}v[c+16>>2]=e;v[c+24>>2]=e;v[c+20>>2]=d+e;d=hX(w[l+11|0],b)&65535;f=v[c+8>>2];g=w[l+11|0];h=xa;I=h;k:{if(d>>>0<=255){h=h-(f+15&-16)|0;xa=h;Ba[v[v[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){u[e+(d<<1)>>1]=w[d+h|0];n=d|1;u[e+(n<<1)>>1]=w[h+n|0];n=d|2;u[e+(n<<1)>>1]=w[h+n|0];n=d|3;u[e+(n<<1)>>1]=w[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){u[e+(d<<1)>>1]=w[d+h|0];d=d+1|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}break k}Ba[v[v[b>>2]>>2]](b,e,f<<1)|0;if(!f|!g){break k}g=0;d=0;if(f-1>>>0>=3){n=f&-4;while(1){h=d<<1;k=h+e|0;s=w[k+1|0];t[k+1|0]=w[k|0];t[k|0]=s;k=e+(h|2)|0;s=w[k+1|0];t[k+1|0]=w[k|0];t[k|0]=s;k=e+(h|4)|0;s=w[k+1|0];t[k+1|0]=w[k|0];t[k|0]=s;h=e+(h|6)|0;k=w[h+1|0];t[h+1|0]=w[h|0];t[h|0]=k;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;k=w[f+1|0];t[f+1|0]=w[f|0];t[f|0]=k;d=d+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}xa=I;f=v[c+8>>2];l:{if(!f){break l}g=v[c+16>>2];d=0;if(f-1>>>0>=3){k=f&-4;while(1){h=f+(d^-1)|0;u[g+(h<<2)>>1]=x[e+(h<<1)>>1];h=f-d|0;m=h-2|0;u[g+(m<<2)>>1]=x[e+(m<<1)>>1];m=h-3|0;u[g+(m<<2)>>1]=x[e+(m<<1)>>1];h=h-4|0;u[g+(h<<2)>>1]=x[e+(h<<1)>>1];d=d+4|0;p=p+4|0;if((k|0)!=(p|0)){continue}break}}h=f&3;if(!h){break l}while(1){k=f+(d^-1)|0;u[g+(k<<2)>>1]=x[e+(k<<1)>>1];d=d+1|0;q=q+1|0;if((h|0)!=(q|0)){continue}break}}Ba[v[v[b>>2]>>2]](b,v[c+20>>2],v[c+12>>2])|0;f=0;g=v[c+16>>2];u[g+2>>1]=0;c=v[c+8>>2];if(c>>>0<2){break j}d=c-1|0;h=d&3;e=1;if(c-2>>>0>=3){k=d&-4;d=0;while(1){c=g+(e<<2)|0;f=x[c-4>>1]+f|0;u[c+2>>1]=f;f=f+x[c>>1]|0;u[c+6>>1]=f;f=f+x[c+4>>1]|0;u[c+10>>1]=f;f=f+x[c+8>>1]|0;u[c+14>>1]=f;e=e+4|0;d=d+4|0;if((k|0)!=(d|0)){continue}break}}if(!h){break j}d=0;while(1){c=g+(e<<2)|0;f=x[c-4>>1]+f|0;u[c+2>>1]=f;e=e+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}xa=l+16|0}xa=j+16|0;v[a+60>>2]=v[a+84>>2]}mX(a- -64|0,4,w[i+35|0],b);c=1}xa=i+48|0;m:{if(!c){b=v[a+12>>2]-1|0;v[a+12>>2]=b;if(b){a=0;break m}Ba[v[v[a+8>>2]+8>>2]](a+8|0);a=0;break m}v[o+8>>2]=a;b=rh(A+48|0,o+8|0,o+15|0);if(!w[o+15|0]){v[b>>2]=v[o+8>>2]}}xa=o+16|0;return a|0}function mP(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,y=0,A=0,D=0;r=xa-16|0;xa=r;h=v[a+2396>>2];f=v[h+288>>2];if(!f){p=xa-16|0;xa=p;j=v[h+284>>2];if(j){f=v[37696];n=Ba[v[v[f>>2]+20>>2]](f)|0?37683:63804;n=Ba[v[v[f+12>>2]+8>>2]](f+12|0,j,n,18373,180)|0}else{n=0}v[p+12>>2]=n;f=v[h+268>>2];a:{if(f>>>0>=(v[h+272>>2]&2147483647)>>>0){f=0;j=h+4|0;e=v[j+268>>2];k=e&2147483647?e<<1:1;b:{if(!k){break b}e=k<<2;if(!(w[j+256|0]|e>>>0>256)){t[j+256|0]=1;f=j;break b}if(!e){break b}f=v[37696];g=Ba[v[v[f>>2]+20>>2]](f)|0?37683:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,e,g,16608,553)|0}g=v[j+264>>2];l=(g<<2)+f|0;if((g|0)>0){m=v[j+260>>2];e=f;while(1){v[e>>2]=v[m>>2];m=m+4|0;e=e+4|0;if(l>>>0>e>>>0){continue}break}}v[l>>2]=v[p+12>>2];c:{if(v[j+268>>2]<0){break c}e=v[j+260>>2];if((e|0)==(j|0)){t[j+256|0]=0;break c}if(!e){break c}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e);g=v[j+264>>2]}v[j+268>>2]=k;v[j+260>>2]=f;v[j+264>>2]=g+1;break a}v[v[h+264>>2]+(f<<2)>>2]=n;v[h+268>>2]=f+1}f=(n+B(v[h+276>>2],80)|0)-80|0;if(n>>>0<=f>>>0){j=v[h+288>>2];while(1){v[f>>2]=j;j=f;f=f-80|0;if(n>>>0<=f>>>0){continue}break}v[h+288>>2]=j}xa=p+16|0;f=v[h+288>>2]}v[h+288>>2]=v[f>>2];v[h+280>>2]=v[h+280>>2]+1;e=0;k=xa-48|0;xa=k;t[f+68|0]=0;v[f+56>>2]=0;n=b;v[f+52>>2]=b;j=a;v[f+48>>2]=a;p=c;a=0;d:{if(!c){break d}a=0;if(!w[p+9|0]){break d}a=v[p>>2]}v[f+60>>2]=a;v[f- -64>>2]=!d|!w[d+9|0]?e:v[d>>2];a=v[j+2364>>2];b=v[a+12>>2];e:{if(b){b=b-1|0;e=v[v[a+8>>2]+(b<<2)>>2];v[a+12>>2]=b;break e}e=v[a+4>>2];v[a+4>>2]=e+1}v[f+40>>2]=e;c=v[j+1004>>2];a=c+164|0;b=v[c+176>>2]&2147483647;f:{if(b>>>0>e>>>0){break f}h=b;b=b<<1;if(h>>>0>=b>>>0){break f}PH(a,b);e=v[f+40>>2]}b=v[c+172>>2];v[k+40>>2]=0;v[k+44>>2]=0;v[k+32>>2]=0;v[k+36>>2]=0;v[k+24>>2]=0;v[k+28>>2]=0;v[k+16>>2]=0;v[k+20>>2]=0;e=e+1|0;b=b>>>0>e>>>0?b:e;if(b>>>0>(v[a+12>>2]&2147483647)>>>0){PH(a,b)}e=v[a+8>>2];if((e|0)<(b|0)){h=v[a+4>>2];g=h+(b<<5)|0;e=h+(e<<5)|0;while(1){z[e>>2]=z[k+16>>2];z[e+4>>2]=z[k+20>>2];z[e+8>>2]=z[k+24>>2];v[e+12>>2]=v[k+28>>2];z[e+16>>2]=z[k+32>>2];z[e+20>>2]=z[k+36>>2];z[e+24>>2]=z[k+40>>2];v[e+28>>2]=v[k+44>>2];e=e+32|0;if(g>>>0>e>>>0){continue}break}}v[a+8>>2]=b;a=v[c+168>>2]+(v[f+40>>2]<<5)|0;v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;l=v[f+48>>2];s=v[f+52>>2];y=v[s+44>>2];a=y;g:{if(a>>>0<=128){b=v[l+1580>>2];if(!b){h=xa-16|0;xa=h;i=l+1292|0;b=v[i+284>>2];if(b){a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?52331:63804;e=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,18373,180)|0}else{e=0}v[h+12>>2]=e;a=v[i+268>>2];h:{if(a>>>0>=(v[i+272>>2]&2147483647)>>>0){a=0;c=i+4|0;b=v[c+268>>2];o=b&2147483647?b<<1:1;i:{if(!o){break i}b=o<<2;if(!(w[c+256|0]|b>>>0>256)){t[c+256|0]=1;a=c;break i}if(!b){break i}a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?52331:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,16608,553)|0}g=v[c+264>>2];q=(g<<2)+a|0;if((g|0)>0){m=v[c+260>>2];b=a;while(1){v[b>>2]=v[m>>2];m=m+4|0;b=b+4|0;if(q>>>0>b>>>0){continue}break}}v[q>>2]=v[h+12>>2];j:{if(v[c+268>>2]<0){break j}b=v[c+260>>2];if((b|0)==(c|0)){t[c+256|0]=0;break j}if(!b){break j}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,b);g=v[c+264>>2]}v[c+268>>2]=o;v[c+260>>2]=a;v[c+264>>2]=g+1;break h}v[v[i+264>>2]+(a<<2)>>2]=e;v[i+268>>2]=a+1}b=(e+(v[i+276>>2]<<7)|0)-128|0;if(e>>>0<=b>>>0){a=v[i+288>>2];while(1){v[b>>2]=a;a=b;b=a-128|0;if(e>>>0<=b>>>0){continue}break}v[i+288>>2]=a}xa=h+16|0;b=v[l+1580>>2]}v[l+1580>>2]=v[b>>2];a=l+1572|0;v[a>>2]=v[a>>2]+1;break g}if(a>>>0<=256){b=v[l+1872>>2];if(!b){h=xa-16|0;xa=h;i=l+1584|0;b=v[i+284>>2];if(b){a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?52633:63804;e=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,18373,180)|0}else{e=0}v[h+12>>2]=e;a=v[i+268>>2];k:{if(a>>>0>=(v[i+272>>2]&2147483647)>>>0){a=0;c=i+4|0;b=v[c+268>>2];o=b&2147483647?b<<1:1;l:{if(!o){break l}b=o<<2;if(!(w[c+256|0]|b>>>0>256)){t[c+256|0]=1;a=c;break l}if(!b){break l}a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?52633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,16608,553)|0}g=v[c+264>>2];q=(g<<2)+a|0;if((g|0)>0){m=v[c+260>>2];b=a;while(1){v[b>>2]=v[m>>2];m=m+4|0;b=b+4|0;if(q>>>0>b>>>0){continue}break}}v[q>>2]=v[h+12>>2];m:{if(v[c+268>>2]<0){break m}b=v[c+260>>2];if((b|0)==(c|0)){t[c+256|0]=0;break m}if(!b){break m}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,b);g=v[c+264>>2]}v[c+268>>2]=o;v[c+260>>2]=a;v[c+264>>2]=g+1;break k}v[v[i+264>>2]+(a<<2)>>2]=e;v[i+268>>2]=a+1}b=(e+(v[i+276>>2]<<8)|0)-256|0;if(e>>>0<=b>>>0){a=v[i+288>>2];while(1){v[b>>2]=a;a=b;b=a-256|0;if(e>>>0<=b>>>0){continue}break}v[i+288>>2]=a}xa=h+16|0;b=v[l+1872>>2]}v[l+1872>>2]=v[b>>2];a=l+1864|0;v[a>>2]=v[a>>2]+1;break g}if(a>>>0<=384){b=v[l+2164>>2];if(!b){h=xa-16|0;xa=h;i=l+1876|0;b=v[i+284>>2];if(b){a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?53263:63804;e=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,18373,180)|0}else{e=0}v[h+12>>2]=e;a=v[i+268>>2];n:{if(a>>>0>=(v[i+272>>2]&2147483647)>>>0){a=0;c=i+4|0;b=v[c+268>>2];o=b&2147483647?b<<1:1;o:{if(!o){break o}b=o<<2;if(!(w[c+256|0]|b>>>0>256)){t[c+256|0]=1;a=c;break o}if(!b){break o}a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?53263:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,16608,553)|0}g=v[c+264>>2];q=(g<<2)+a|0;if((g|0)>0){m=v[c+260>>2];b=a;while(1){v[b>>2]=v[m>>2];m=m+4|0;b=b+4|0;if(q>>>0>b>>>0){continue}break}}v[q>>2]=v[h+12>>2];p:{if(v[c+268>>2]<0){break p}b=v[c+260>>2];if((b|0)==(c|0)){t[c+256|0]=0;break p}if(!b){break p}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,b);g=v[c+264>>2]}v[c+268>>2]=o;v[c+260>>2]=a;v[c+264>>2]=g+1;break n}v[v[i+264>>2]+(a<<2)>>2]=e;v[i+268>>2]=a+1}b=(e+B(v[i+276>>2],384)|0)-384|0;if(e>>>0<=b>>>0){a=v[i+288>>2];while(1){v[b>>2]=a;a=b;b=a-384|0;if(e>>>0<=b>>>0){continue}break}v[i+288>>2]=a}xa=h+16|0;b=v[l+2164>>2]}v[l+2164>>2]=v[b>>2];a=l+2156|0;v[a>>2]=v[a>>2]+1;break g}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,11777,1823)|0}q:{if(!b){b9(v[37696],32,9874,127,65718,0);break q}a=J9(b,0,y);z[f>>2]=z[s+48>>2];z[f+4>>2]=z[s+52>>2];c=x[s>>1];u[f+8>>1]=y;u[f+10>>1]=c;v[f+12>>2]=v[s+36>>2];c=v[s+32>>2];v[f+20>>2]=a;v[f+16>>2]=c;a=v[f+60>>2];e=a?a- -64|0:0;v[f+24>>2]=e;c=v[f- -64>>2];h=c?c- -64|0:0;v[f+28>>2]=h;v[f+32>>2]=a?v[e+36>>2]:0;v[f+36>>2]=c?v[h+36>>2]:0;z[f+44>>2]=z[s+56>>2]}if(b){z[k+16>>2]=z[n+48>>2];z[k+12>>2]=z[n+52>>2];if(z[k+12>>2]>2]>2]=f;a=v[j+1136>>2];r:{if(!(v[(v[v[v[f+48>>2]+1004>>2]+168>>2]+(v[f+40>>2]<<5)|0)+12>>2]?0:w[v[f+52>>2]]&6)){b=v[f+64>>2];c=v[f+60>>2];s:{if(!c){break s}c=v[c+164>>2];if(!c){break s}IH(a,c,f)}if(!b){break r}b=v[b+164>>2];if(!b){break r}IH(a,b,f);break r}CH(a,f)}e=v[v[f+48>>2]+2408>>2];if(p){c=v[p>>2]}else{c=v[j+2380>>2]}if(d){a=v[d>>2]}else{a=v[j+2380>>2]}b=v[e+288>>2];if(!b){QH(e);b=v[e+288>>2]}v[e+288>>2]=v[b>>2];v[e+280>>2]=v[e+280>>2]+1;A=f,D=LH(b,f,c,a),v[A+56>>2]=D}xa=k+48|0;v[r+8>>2]=n;a=rh(j+1096|0,r+8|0,r+15|0);if(!w[r+15|0]){v[a>>2]=v[r+8>>2]}xa=r+16|0}function YX(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,u=0,x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),G=0,H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0);j=xa-320|0;xa=j;s=v[b+4>>2];k=z[s+20>>2];l=v[a+4>>2];m=z[l+20>>2];A=z[d>>2];G=w[l+32|0];H=z[l+16>>2];I=w[s+32|0];J=z[s+16>>2];v[j+44>>2]=0;N=C((k>2]=r;P=w[g+l|0];v[c+(j+48|0)>>2]=P;c=(1-r<<4)+U|0;k=z[c>>2];m=z[c+4>>2];n=z[c+8>>2];p=z[s+48>>2];o=z[s+52>>2];q=z[s+56>>2];u=d<<4;r=u+(j+144|0)|0;z[r+12>>2]=z[c+12>>2];z[r+8>>2]=n;z[r+4>>2]=m;z[r>>2]=k;c=u+(j+80|0)|0;v[c+12>>2]=0;r=u+(j+208|0)|0;v[r+12>>2]=0;u=(P<<4)+101152|0;q=v[u+8>>2]?q:C(-q);z[c+8>>2]=q;o=v[u+4>>2]?o:C(-o);z[c+4>>2]=o;p=v[u>>2]?p:C(-p);z[c>>2]=p;n=C(n-q);z[r+8>>2]=n;m=C(m-o);z[r+4>>2]=m;k=C(k-p);z[r>>2]=k;c=d;d=c+1|0;v[j+44>>2]=d;l=l+1|0;if((O|0)!=(l|0)){continue}break}g:{h:{switch(c-1|0){case 0:p=z[j+216>>2];k=C(z[j+232>>2]-p);o=z[j+208>>2];m=C(z[j+224>>2]-o);q=z[j+212>>2];n=C(z[j+228>>2]-q);x=C(C(k*k)+C(C(m*m)+C(n*n)));if(!(x<=C(1.1920928955078125e-7))){break g}v[j+44>>2]=1;c=v[j+212>>2];v[j+16>>2]=v[j+208>>2];v[j+20>>2]=c;c=v[j+220>>2];v[j+24>>2]=v[j+216>>2];v[j+28>>2]=c;break e;case 1:jY(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}}Q_(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break e}v[j+28>>2]=0;E=k;k=C(F(C(C(C(C(C(-o)*m)-C(n*q))-C(p*k))/x),C(1)));k=k>C(0)?k:C(0);z[j+24>>2]=p+C(E*k);z[j+20>>2]=q+C(n*k);z[j+16>>2]=o+C(m*k);break e}k=z[c+8>>2];n=z[c>>2];m=z[c+4>>2];v[j+284>>2]=0;c=C(C(k*k)+C(C(n*n)+C(m*m)))>C(0);k=c?k:C(0);z[j+280>>2]=k;m=c?m:C(0);z[j+276>>2]=m;n=c?n:C(1);z[j+272>>2]=n;p=C(C(1)/C(K(C(C(k*k)+C(C(n*n)+C(m*m))))));x=C(k*p);y=C(n*p);o=C(34028234663852886e22);q=C(m*p);break d}v[j+28>>2]=0;z[j+24>>2]=n;z[j+20>>2]=m;z[j+16>>2]=k}c=v[j+20>>2];v[j+272>>2]=v[j+16>>2];v[j+276>>2]=c;c=v[j+28>>2];v[j+280>>2]=v[j+24>>2];v[j+284>>2]=c;k=z[j+280>>2];n=z[j+272>>2];m=z[j+276>>2];o=C(K(C(C(k*k)+C(C(n*n)+C(m*m)))));if(!(N>2]=v[j+312>>2];c=v[j+308>>2];v[j+288>>2]=v[j+304>>2];v[j+292>>2]=c;d=v[a+4>>2];s=d+52|0;c=v[j+44>>2];r=c<<2;o=C(-n);u=d+56|0;G=d+68|0;I=d+72|0;l=C(C(C(z[d+48>>2]*o)-C(z[s>>2]*m))-C(z[u>>2]*k))>C(C(C(z[d+64>>2]*o)-C(z[G>>2]*m))-C(z[I>>2]*k));v[r+(j- -64|0)>>2]=l;o=z[(l?d+48|0:d- -64|0)>>2];E=z[(l?s:G)>>2];Q=z[(l?u:I)>>2];d=v[b+4>>2];u=r+(j+48|0)|0;H=n;s=n>C(0);A=m;l=m>C(0);J=k;r=k>C(0);v[u>>2]=s|l<<1|r<<2;k=z[d+56>>2];R=r?k:C(-k);k=C(Q-R);m=z[d+48>>2];S=s?m:C(-m);m=C(o-S);n=z[d+52>>2];T=l?n:C(-n);n=C(E-T);M=C(C(x*k)+C(C(y*m)+C(q*n)));if(M>V){a=0;if(!f){break a}t[h|0]=c;if(!c){break a}l=0;if((c|0)!=1){h=c&-2;d=0;while(1){b=l<<2;i=j- -64|0;t[f+l|0]=v[b+i>>2];s=j+48|0;t[g+l|0]=v[s+b>>2];b=l|1;e=b<<2;t[b+f|0]=v[e+i>>2];t[b+g|0]=v[e+s>>2];l=l+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(c&1)){break a}b=l<<2;t[f+l|0]=v[b+(j- -64|0)>>2];t[g+l|0]=v[b+(j+48|0)>>2];break a}if(M>C(p*C(.9997749924659729))){i:{if(!f){break i}t[h|0]=c;if(!c){break i}l=0;if((c|0)!=1){h=c&-2;a=0;while(1){b=l<<2;s=j- -64|0;t[f+l|0]=v[b+s>>2];r=j+48|0;t[g+l|0]=v[r+b>>2];b=l|1;d=b<<2;t[b+f|0]=v[d+s>>2];t[b+g|0]=v[d+r>>2];l=l+2|0;a=a+2|0;if((h|0)!=(a|0)){continue}break}}if(!(c&1)){break i}a=l<<2;t[f+l|0]=v[a+(j- -64|0)>>2];t[g+l|0]=v[a+(j+48|0)>>2]}z[i+32>>2]=y;v[i+44>>2]=0;z[i+40>>2]=x;z[i+36>>2]=q;JV(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,c);j:{if(e){a=v[j+20>>2];v[i>>2]=v[j+16>>2];v[i+4>>2]=a;a=v[j+28>>2];v[i+8>>2]=v[j+24>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;a=v[j+308>>2];v[i+68>>2]=v[j+304>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+312>>2];break j}k=z[j+16>>2];m=z[j+20>>2];n=z[j+24>>2];v[i+12>>2]=0;z[i+8>>2]=n-C(B*x);z[i+4>>2]=m-C(B*q);z[i>>2]=k-C(B*y);k=z[j>>2];m=z[j+4>>2];n=z[j+8>>2];v[i+28>>2]=0;z[i+24>>2]=n+C(D*x);z[i+20>>2]=m+C(D*q);z[i+16>>2]=k+C(D*y);p=C(p-L)}z[i+64>>2]=p;a=2;break a}M=z[j+284>>2];l=c<<4;d=l+(j+144|0)|0;v[d+12>>2]=0;z[d+8>>2]=Q;z[d+4>>2]=E;z[d>>2]=o;d=l+(j+80|0)|0;v[d+12>>2]=0;z[d+8>>2]=R;z[d+4>>2]=T;z[d>>2]=S;d=l+(j+208|0)|0;v[d+12>>2]=0;z[d+8>>2]=k;z[d+4>>2]=n;z[d>>2]=m;v[j+44>>2]=c+1;k:{l:{switch(c-1|0){case 0:o=z[j+216>>2];k=C(z[j+232>>2]-o);q=z[j+208>>2];m=C(z[j+224>>2]-q);x=z[j+212>>2];n=C(z[j+228>>2]-x);y=C(C(k*k)+C(C(m*m)+C(n*n)));if(y<=C(1.1920928955078125e-7)){v[j+44>>2]=1;c=v[j+212>>2];v[j+16>>2]=v[j+208>>2];v[j+20>>2]=c;c=v[j+220>>2];v[j+24>>2]=v[j+216>>2];v[j+28>>2]=c;break k}v[j+28>>2]=0;E=k;k=C(F(C(C(C(C(C(-q)*m)-C(n*x))-C(o*k))/y),C(1)));k=k>C(0)?k:C(0);z[j+24>>2]=o+C(E*k);z[j+20>>2]=x+C(n*k);z[j+16>>2]=q+C(m*k);break k;case 1:jY(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:Q_(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}}v[j+28>>2]=0;z[j+24>>2]=k;z[j+20>>2]=n;z[j+16>>2]=m}c=v[j+20>>2];v[j+272>>2]=v[j+16>>2];v[j+276>>2]=c;c=v[j+28>>2];v[j+280>>2]=v[j+24>>2];v[j+284>>2]=c;k=z[j+280>>2];n=z[j+272>>2];m=z[j+276>>2];o=C(K(C(C(k*k)+C(C(n*n)+C(m*m)))));y=C(C(1)/o);x=C(k*y);q=C(m*y);y=C(n*y);if(oN){continue}break}c=v[j+44>>2];if(!(o>2];u=j+48|0;t[g+l|0]=v[u+d>>2];d=l|1;h=d<<2;t[d+f|0]=v[h+r>>2];t[d+g|0]=v[h+u>>2];l=l+2|0;a=a+2|0;if((s|0)!=(a|0)){continue}break}}if(!(b&1)){break m}a=l<<2;t[f+l|0]=v[a+(j- -64|0)>>2];t[g+l|0]=v[a+(j+48|0)>>2]}v[j+312>>2]=v[j+296>>2];a=v[j+292>>2];v[j+304>>2]=v[j+288>>2];v[j+308>>2]=a;z[j+284>>2]=M;z[j+272>>2]=H;z[j+276>>2]=A;z[j+280>>2]=J;JV(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,c);v[i+60>>2]=0;z[i+56>>2]=x;z[i+52>>2]=q;z[i+48>>2]=y;v[i+44>>2]=0;k=C(C(1)/p);m=C(J*k);z[i+40>>2]=m;n=C(A*k);z[i+36>>2]=n;k=C(H*k);z[i+32>>2]=k;if(e){a=v[j+20>>2];v[i>>2]=v[j+16>>2];v[i+4>>2]=a;a=v[j+28>>2];v[i+8>>2]=v[j+24>>2];v[i+12>>2]=a;a=v[j+4>>2];v[i+16>>2]=v[j>>2];v[i+20>>2]=a;a=v[j+12>>2];v[i+24>>2]=v[j+8>>2];v[i+28>>2]=a;z[i+64>>2]=p;a=v[j+292>>2];v[i+68>>2]=v[j+288>>2];v[i+72>>2]=a;v[i+76>>2]=v[j+296>>2];a=4;break a}o=z[j+16>>2];q=z[j+20>>2];A=z[j+24>>2];v[i+12>>2]=0;z[i+8>>2]=A-C(B*m);z[i+4>>2]=q-C(B*n);z[i>>2]=o-C(B*k);o=z[j>>2];q=z[j+4>>2];A=z[j+8>>2];z[i+64>>2]=p-L;v[i+28>>2]=0;z[i+24>>2]=A+C(D*m);z[i+20>>2]=q+C(D*n);z[i+16>>2]=o+C(D*k);a=2;if(p<=L){break a}a=4;break a}if(f){break b}a=5;break a}c=v[j+44>>2]}t[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;i=j- -64|0;t[f+l|0]=v[b+i>>2];s=j+48|0;t[g+l|0]=v[s+b>>2];b=l|1;e=b<<2;t[b+f|0]=v[e+i>>2];t[b+g|0]=v[e+s>>2];l=l+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(c&1)){break a}b=l<<2;t[f+l|0]=v[b+(j- -64|0)>>2];t[g+l|0]=v[b+(j+48|0)>>2]}xa=j+320|0;return a} +function dV(a,b,c,d){var e=0,f=C(0),g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=0,F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=0,P=C(0);e=xa-32|0;xa=e;f=z[d+52>>2];l=z[d+56>>2];t=z[d+60>>2];n=z[d+20>>2];o=z[d+24>>2];w=z[d+28>>2];p=z[d+36>>2];q=z[d+40>>2];x=z[d+48>>2];y=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];A=z[d+12>>2];r=z[d+16>>2];s=z[d+32>>2];u=z[d+44>>2];z[a+80>>2]=u;z[a+76>>2]=q;z[a+72>>2]=p;z[a+68>>2]=s;z[a- -64>>2]=w;z[a+60>>2]=o;z[a+56>>2]=n;z[a+52>>2]=r;z[a+48>>2]=A;z[a+44>>2]=k;z[a+40>>2]=j;z[a+36>>2]=y;t=C(t+C(0));z[a+96>>2]=t;x=C(x+C(C(C(r*C(0))-C(y*c))+C(s*C(0))));z[a+84>>2]=x;l=C(l+C(C(C(o*C(0))-C(k*c))+C(q*C(0))));z[a+92>>2]=l;B=C(f+C(C(C(n*C(0))-C(j*c))+C(p*C(0))));z[a+88>>2]=B;v[a+32>>2]=0;v[a>>2]=2;f=C(3.1415927410125732);while(1){v[e+24>>2]=0;O=e,P=C(H9(f)*b),z[O+20>>2]=P;O=e,P=C(R9(f)*b),z[O+16>>2]=P;f=C(f+C(.03141592815518379));g=_U(a,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;z[e+4>>2]=b;D=C(b*C(1.7484555314695172e-7));z[e>>2]=D;g=_U(g,e);z[a+96>>2]=t;z[a+92>>2]=l;z[a+88>>2]=B;z[a+84>>2]=x;z[a+80>>2]=w;z[a+76>>2]=o;z[a+72>>2]=n;z[a+68>>2]=r;u=C(-u);z[a+64>>2]=u;q=C(-q);z[a+60>>2]=q;p=C(-p);z[a+56>>2]=p;s=C(-s);z[a+52>>2]=s;z[a+48>>2]=A;z[a+44>>2]=k;z[a+40>>2]=j;z[a+36>>2]=y;v[g>>2]=2;v[a+32>>2]=0;f=C(3.1415927410125732);h=0;while(1){v[e+24>>2]=0;O=e,P=C(H9(f)*b),z[O+20>>2]=P;O=e,P=C(R9(f)*b),z[O+16>>2]=P;f=C(f+C(.03141592815518379));i=_U(g,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;z[e+4>>2]=b;z[e>>2]=D;g=_U(i,e);z[a+96>>2]=t;z[a+92>>2]=l;z[a+88>>2]=B;z[a+84>>2]=x;z[a+80>>2]=A;z[a+76>>2]=k;z[a+72>>2]=j;z[a+68>>2]=y;z[a+64>>2]=u;z[a+60>>2]=q;z[a+56>>2]=p;z[a+52>>2]=s;z[a+48>>2]=-w;z[a+44>>2]=-o;z[a+40>>2]=-n;z[a+36>>2]=-r;v[g>>2]=2;v[a+32>>2]=0;f=C(0);h=0;while(1){v[e+24>>2]=0;O=e,P=C(H9(f)*b),z[O+20>>2]=P;O=e,P=C(R9(f)*b),z[O+16>>2]=P;f=C(f+C(.06283185631036758));i=_U(g,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;z[e+4>>2]=b;v[e>>2]=0;g=_U(i,e);y=z[d+48>>2];B=z[d+52>>2];l=z[d+56>>2];x=z[d+60>>2];n=z[d>>2];o=z[d+4>>2];j=z[d+8>>2];p=z[d+12>>2];k=z[d+16>>2];r=z[d+20>>2];w=z[d+24>>2];q=z[d+28>>2];A=z[d+32>>2];s=z[d+36>>2];t=z[d+40>>2];D=z[d+44>>2];z[a+80>>2]=D;z[a+76>>2]=t;z[a+72>>2]=s;z[a+68>>2]=A;z[a+64>>2]=q;z[a+60>>2]=w;z[a+56>>2]=r;z[a+52>>2]=k;z[a+48>>2]=p;z[a+44>>2]=j;z[a+40>>2]=o;z[a+36>>2]=n;f=C(0);x=C(x+C(0));z[a+96>>2]=x;l=C(l+C(C(C(j*c)+C(w*C(0)))+C(t*C(0))));z[a+92>>2]=l;B=C(B+C(C(C(o*c)+C(r*C(0)))+C(s*C(0))));z[a+88>>2]=B;u=C(y+C(C(C(n*c)+C(k*C(0)))+C(A*C(0))));z[a+84>>2]=u;v[g>>2]=2;v[a+32>>2]=0;h=0;while(1){v[e+24>>2]=0;O=e,P=C(H9(f)*b),z[O+20>>2]=P;O=e,P=C(R9(f)*b),z[O+16>>2]=P;f=C(f+C(.03141592815518379));i=_U(g,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;y=C(-b);z[e+4>>2]=y;F=C(b*C(-8.742277657347586e-8));z[e>>2]=F;g=_U(i,e);z[a+96>>2]=x;z[a+92>>2]=l;z[a+88>>2]=B;z[a+84>>2]=u;z[a+80>>2]=q;z[a+76>>2]=w;z[a+72>>2]=r;z[a+68>>2]=k;D=C(-D);z[a+64>>2]=D;t=C(-t);z[a+60>>2]=t;s=C(-s);z[a+56>>2]=s;A=C(-A);z[a+52>>2]=A;z[a+48>>2]=p;z[a+44>>2]=j;z[a+40>>2]=o;z[a+36>>2]=n;v[g>>2]=2;v[a+32>>2]=0;f=C(0);h=0;while(1){v[e+24>>2]=0;O=e,P=C(H9(f)*b),z[O+20>>2]=P;O=e,P=C(R9(f)*b),z[O+16>>2]=P;f=C(f+C(.03141592815518379));i=_U(g,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;z[e+4>>2]=y;z[e>>2]=F;g=_U(i,e);z[a+96>>2]=x;z[a+92>>2]=l;z[a+88>>2]=B;z[a+84>>2]=u;z[a+80>>2]=p;z[a+76>>2]=j;z[a+72>>2]=o;z[a+68>>2]=n;z[a+64>>2]=D;z[a+60>>2]=t;z[a+56>>2]=s;z[a+52>>2]=A;z[a+48>>2]=-q;z[a+44>>2]=-w;z[a+40>>2]=-r;z[a+36>>2]=-k;v[g>>2]=2;v[a+32>>2]=0;f=C(0);h=0;while(1){v[e+24>>2]=0;O=e,P=C(H9(f)*b),z[O+20>>2]=P;O=e,P=C(R9(f)*b),z[O+16>>2]=P;f=C(f+C(.06283185631036758));i=_U(g,e+16|0);h=h+1|0;if((h|0)!=100){continue}break}v[e+8>>2]=0;v[e>>2]=0;z[e+4>>2]=b;K=_U(i,e);z[a+36>>2]=z[d>>2];z[a+40>>2]=z[d+4>>2];z[a+44>>2]=z[d+8>>2];z[a+48>>2]=z[d+12>>2];z[a+52>>2]=z[d+16>>2];z[a+56>>2]=z[d+20>>2];z[a+60>>2]=z[d+24>>2];z[a+64>>2]=z[d+28>>2];z[a+68>>2]=z[d+32>>2];z[a+72>>2]=z[d+36>>2];z[a+76>>2]=z[d+40>>2];z[a+80>>2]=z[d+44>>2];z[a+84>>2]=z[d+48>>2];z[a+88>>2]=z[d+52>>2];z[a+92>>2]=z[d+56>>2];z[a+96>>2]=z[d+60>>2];x=z[d+8>>2];j=C(x*c);w=z[d+24>>2];H=C(w*b);A=z[d+40>>2];l=C(A*C(0));f=z[d+56>>2];L=C(C(C(j+H)+l)+f);B=z[d+4>>2];k=C(B*c);p=z[d+20>>2];I=C(p*b);s=z[d+36>>2];u=C(s*C(0));n=z[d+52>>2];M=C(C(C(k+I)+u)+n);D=z[d>>2];r=C(D*c);q=z[d+16>>2];J=C(q*b);t=z[d+32>>2];F=C(t*C(0));o=z[d+48>>2];N=C(C(C(r+J)+F)+o);H=C(C(C(H-j)+l)+f);I=C(C(C(I-k)+u)+n);J=C(C(C(J-r)+F)+o);m=v[K+100>>2];g=v[m+20>>2];h=g+1|0;a=v[m+24>>2]&2147483647;a:{if(h>>>0<=a>>>0){i=m;break a}i=m;E=a?a<<1:2;E=h>>>0>E>>>0?h:E;if(E>>>0<=a>>>0){break a}Bk(m+16|0,E);A=z[d+40>>2];l=C(A*C(0));s=z[d+36>>2];u=C(s*C(0));t=z[d+32>>2];F=C(t*C(0));x=z[d+8>>2];j=C(x*c);B=z[d+4>>2];k=C(B*c);D=z[d>>2];r=C(D*c);i=v[K+100>>2];a=v[i+24>>2]&2147483647;f=z[d+56>>2];n=z[d+52>>2];o=z[d+48>>2];w=z[d+24>>2];p=z[d+20>>2];q=z[d+16>>2];g=v[m+20>>2]}v[m+20>>2]=h;g=v[m+16>>2]+(g<<5)|0;z[g+16>>2]=N;z[g+8>>2]=H;z[g+4>>2]=I;z[g>>2]=J;z[g+24>>2]=L;z[g+20>>2]=M;h=v[K+4>>2];v[g+12>>2]=h;v[g+28>>2]=h;H=C(w*y);L=C(C(C(j+H)+l)+f);I=C(p*y);M=C(C(C(k+I)+u)+n);J=C(q*y);N=C(C(C(r+J)+F)+o);l=C(C(C(H-j)+l)+f);u=C(C(C(I-k)+u)+n);F=C(C(C(J-r)+F)+o);E=v[i+20>>2];m=E+1|0;b:{if(m>>>0<=a>>>0){g=i;break b}g=i;G=a?a<<1:2;G=m>>>0>G>>>0?m:G;if(G>>>0<=a>>>0){break b}Bk(i+16|0,G);x=z[d+8>>2];j=C(x*c);B=z[d+4>>2];k=C(B*c);D=z[d>>2];r=C(D*c);g=v[K+100>>2];a=v[g+24>>2]&2147483647;f=z[d+56>>2];n=z[d+52>>2];o=z[d+48>>2];A=z[d+40>>2];s=z[d+36>>2];t=z[d+32>>2];w=z[d+24>>2];p=z[d+20>>2];q=z[d+16>>2];h=v[K+4>>2];E=v[i+20>>2]}v[i+20>>2]=m;i=v[i+16>>2]+(E<<5)|0;v[i+28>>2]=h;z[i+16>>2]=N;z[i+8>>2]=l;z[i+4>>2]=u;z[i>>2]=F;v[i+12>>2]=h;z[i+24>>2]=L;z[i+20>>2]=M;l=C(w*C(0));u=C(A*b);F=C(C(C(j+l)+u)+f);H=C(p*C(0));L=C(s*b);I=C(C(C(k+H)+L)+n);M=C(q*C(0));b=C(t*b);J=C(C(C(r+M)+b)+o);j=C(C(C(l-j)+u)+f);k=C(C(C(H-k)+L)+n);b=C(C(C(M-r)+b)+o);E=v[g+20>>2];i=E+1|0;c:{if(i>>>0<=a>>>0){m=g;break c}m=g;G=a?a<<1:2;G=i>>>0>G>>>0?i:G;if(G>>>0<=a>>>0){break c}Bk(g+16|0,G);m=v[K+100>>2];a=v[m+24>>2]&2147483647;f=z[d+56>>2];n=z[d+52>>2];o=z[d+48>>2];A=z[d+40>>2];s=z[d+36>>2];t=z[d+32>>2];w=z[d+24>>2];p=z[d+20>>2];q=z[d+16>>2];x=z[d+8>>2];B=z[d+4>>2];D=z[d>>2];h=v[K+4>>2];E=v[g+20>>2]}v[g+20>>2]=i;d=v[g+16>>2]+(E<<5)|0;v[d+28>>2]=h;z[d+16>>2]=J;z[d+8>>2]=j;z[d+4>>2]=k;z[d>>2]=b;v[d+12>>2]=h;z[d+24>>2]=F;z[d+20>>2]=I;i=v[m+20>>2];d=i+1|0;d:{if(d>>>0<=a>>>0){break d}g=a;a=a?a<<1:2;a=a>>>0>>0?d:a;if(g>>>0>=a>>>0){break d}Bk(m+16|0,a);h=v[K+4>>2];i=v[m+20>>2]}v[m+20>>2]=d;a=v[m+16>>2]+(i<<5)|0;v[a+28>>2]=h;v[a+12>>2]=h;b=C(x*c);j=C(w*C(0));k=C(A*y);z[a+24>>2]=C(C(b+j)+k)+f;r=C(B*c);w=C(p*C(0));p=C(s*y);z[a+20>>2]=C(C(r+w)+p)+n;c=C(D*c);q=C(q*C(0));y=C(t*y);z[a+16>>2]=C(C(c+q)+y)+o;z[a+8>>2]=C(C(j-b)+k)+f;z[a+4>>2]=C(C(w-r)+p)+n;z[a>>2]=C(C(q-c)+y)+o;xa=e+32|0}function HY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=0,y=C(0),A=C(0),B=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=0,O=0,P=C(0),Q=0,R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=0,X=0,Y=0,Z=C(0),_=C(0),$=0,aa=0,ba=0;m=xa-720|0;xa=m;x=v[b>>2];L=v[x+4>>2];v[m+672>>2]=x;v[m+668>>2]=L;j=z[x+8>>2];n=z[x+12>>2];z[m+664>>2]=C(1)/z[x+16>>2];z[m+656>>2]=C(1)/n;z[m+660>>2]=C(1)/j;v[m+648>>2]=0;v[m+652>>2]=64;t[m+640|0]=1;x=m+384|0;v[m+644>>2]=x;v[m+376>>2]=142020;v[m+380>>2]=x;j=z[e+24>>2];n=z[c+24>>2];p=z[e+16>>2];o=z[c+16>>2];q=C(z[c+20>>2]-z[e+20>>2]);z[m+364>>2]=q;j=C(n-j);z[m+368>>2]=j;n=C(o-p);z[m+360>>2]=n;p=z[f+20>>2];o=z[d+20>>2];r=z[f+16>>2];s=z[d+16>>2];u=C(z[d+24>>2]-z[f+24>>2]);z[m+352>>2]=u;p=C(o-p);z[m+348>>2]=p;o=C(s-r);z[m+344>>2]=o;r=z[a+68>>2];s=z[a+80>>2];w=z[a+64>>2];y=z[a+76>>2];T=C(j-u);j=C(T*C(.5));u=C(C(C(D(j))+z[a+72>>2])+g);j=C(j+z[a+84>>2]);z[m+340>>2]=u+j;U=C(q-p);p=C(U*C(.5));q=C(C(r+C(D(p)))+g);p=C(p+s);z[m+336>>2]=q+p;V=C(n-o);n=C(V*C(.5));o=C(C(w+C(D(n)))+g);n=C(n+y);z[m+332>>2]=o+n;z[m+328>>2]=j-u;z[m+324>>2]=p-q;z[m+320>>2]=n-o;m$(m+656|0,d,m+320|0,1,m+376|0);v[m+312>>2]=0;v[m+304>>2]=0;v[m+308>>2]=0;x=v[m+648>>2];v[m+80>>2]=0;N=x;x=m+80|0;cz(m+304|0,N,x);v[m+296>>2]=0;v[m+288>>2]=0;v[m+292>>2]=0;L=v[m+648>>2];v[m+80>>2]=0;cz(m+288|0,L,x);W=v[m+304>>2];Q=v[m+288>>2];z[m+272>>2]=z[a+76>>2];z[m+276>>2]=z[a+80>>2];z[m+280>>2]=z[a+84>>2];L=0;X=v[m+648>>2];if(X){aa=v[m+644>>2];ba=b+8|0;E=C(C(z[a+72>>2]+g)*C(1.100000023841858));P=C(C(z[a+68>>2]+g)*C(1.100000023841858));R=C(C(z[a+64>>2]+g)*C(1.100000023841858));while(1){Y=(O<<2)+aa|0;n$(m+656|0,ba,m+80|0,0,0,v[Y>>2],1,1);j=z[m+92>>2];y=z[m+80>>2];n=C(j-y);p=z[m+108>>2];B=z[m+84>>2];u=C(p-B);o=z[m+104>>2];w=C(o-y);q=z[m+96>>2];M=C(q-B);A=C(C(n*u)-C(w*M));s=C(-A);r=z[m+100>>2];I=z[m+88>>2];Z=C(r-I);J=C(Z*w);w=z[m+112>>2];_=C(w-I);H=C(J-C(_*n));n=C(-H);M=C(C(M*_)-C(u*Z));u=C(-M);A=C(K(C(C(A*A)+C(C(M*M)+C(H*H)))));if(A>C(0)){A=C(C(1)/A);s=C(A*s);u=C(A*u);n=C(A*n)}a:{if(!(C(C(T*s)+C(C(V*u)+C(U*n)))>=l)){break a}z[m+8>>2]=E;z[m+4>>2]=P;z[m>>2]=R;n=C(F(I,C(85070586659632215e21)));n=nw?r:w;z[m+224>>2]=C(n+r)*C(.5);s=C(F(B,C(85070586659632215e21)));s=q>s?s:q;s=p>s?s:p;u=C(G(B,C(-85070586659632215e21)));q=q>2]=C(s+p)*C(.5);q=C(F(y,C(85070586659632215e21)));q=j>q?q:j;q=o>q?q:o;u=C(G(y,C(-85070586659632215e21)));j=jo?j:o;z[m+216>>2]=C(q+j)*C(.5);z[m+712>>2]=C(C(C(r-n)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[m+708>>2]=C(C(C(p-s)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[m+704>>2]=C(C(C(j-q)*C(.5))+C(.009999999776482582))*C(1.100000023841858);j=sO(m+272|0,m,m+216|0,m+704|0,m+360|0,m+344|0);if(!(j<=C(1))){break a}S=0;x=L;b:{if(!x){break b}while(1){N=x-1|0;$=N<<2;n=z[Q+$>>2];if(n<=j){S=x;break b}x=x<<2;z[x+Q>>2]=n;v[x+W>>2]=v[W+$>>2];x=N;if(x){continue}break}}x=S<<2;v[x+W>>2]=v[Y>>2];z[x+Q>>2]=j;L=L+1|0}O=O+1|0;if((X|0)!=(O|0)){continue}break}}v[h+8>>2]=0;v[h>>2]=0;v[h+4>>2]=0;v[i+8>>2]=0;v[i>>2]=0;v[i+4>>2]=0;l=z[a+4>>2];p=z[d+8>>2];y=z[d+24>>2];j=C(z[a+32>>2]-y);n=C(j+j);o=z[d>>2];B=z[d+16>>2];j=C(z[a+24>>2]-B);s=C(j+j);I=z[d+20>>2];j=C(z[a+28>>2]-I);u=C(j+j);q=z[d+4>>2];w=C(C(p*n)+C(C(o*s)+C(u*q)));j=z[d+12>>2];r=C(C(j*j)+C(-.5));z[m+264>>2]=C(p*w)+C(C(n*r)-C(j*C(C(o*u)-C(s*q))));z[m+260>>2]=C(q*w)+C(C(u*r)-C(j*C(C(p*s)-C(n*o))));z[m+256>>2]=C(o*w)+C(C(s*r)-C(j*C(C(q*n)-C(u*p))));c:{if(!L){A=C(-q);n=C(34028234663852886e22);O=-1;u=C(0);s=C(0);I=C(0);w=C(0);y=C(0);B=C(0);H=C(-o);l=C(-p);break c}n=C(z[e+24>>2]-y);n=C(n+n);s=C(z[e+16>>2]-B);s=C(s+s);u=C(z[e+20>>2]-I);u=C(u+u);w=C(C(p*n)+C(C(o*s)+C(q*u)));M=C(C(p*w)+C(C(n*r)-C(j*C(C(o*u)-C(s*q)))));T=C(C(q*w)+C(C(u*r)-C(j*C(C(p*s)-C(n*o)))));U=C(C(o*w)+C(C(s*r)-C(j*C(C(q*n)-C(u*p)))));V=C(l*l);O=-1;n=C(34028234663852886e22);x=0;B=C(0);y=C(0);w=C(0);I=C(0);s=C(0);u=C(0);while(1){N=(x<<2)+W|0;n$(m+656|0,f,m+216|0,0,0,v[N>>2],0,0);t[m+112|0]=0;v[m+108>>2]=5;v[m+172>>2]=0;j=z[m+248>>2];z[m+168>>2]=j;p=z[m+244>>2];z[m+164>>2]=p;o=z[m+240>>2];z[m+160>>2]=o;v[m+156>>2]=0;q=z[m+236>>2];z[m+152>>2]=q;r=z[m+232>>2];z[m+148>>2]=r;A=z[m+228>>2];z[m+144>>2]=A;v[m+140>>2]=0;H=z[m+224>>2];z[m+136>>2]=H;E=z[m+220>>2];z[m+132>>2]=E;P=z[m+216>>2];z[m+128>>2]=P;v[m+92>>2]=0;z[m+88>>2]=C(j+C(H+q))*C(.33333298563957214);z[m+84>>2]=C(p+C(E+r))*C(.33333298563957214);z[m+80>>2]=C(o+C(P+A))*C(.33333298563957214);v[m+104>>2]=2139095039;v[m+96>>2]=0;v[m+100>>2]=2139095039;Q=v[b>>2];S=v[a>>2];t[m+72|0]=0;v[m+64>>2]=0;v[m+68>>2]=1065353216;v[m+56>>2]=0;v[m+60>>2]=0;v[m+48>>2]=0;v[m+52>>2]=1065353216;v[m+40>>2]=0;v[m+44>>2]=0;v[m+32>>2]=1065353216;v[m+36>>2]=1065353216;v[m+24>>2]=0;v[m+28>>2]=0;v[m+16>>2]=1065353216;v[m+20>>2]=0;v[m+8>>2]=0;v[m+12>>2]=0;v[m>>2]=1065353216;v[m+4>>2]=0;j=C(Ba[v[(v[S>>2]<<2)+142336>>2]](S,Q,c,d,e,f,g,m+200|0,m+184|0,m,m+80|0,C(0)));d:{if(!(j<=C(0))){break d}H=z[m+240>>2];E=z[m+244>>2];P=z[m+248>>2];j=z[m+216>>2];A=z[m+228>>2];p=z[m+220>>2];r=z[m+232>>2];o=z[m+224>>2];q=C(z[m+236>>2]-o);z[m+8>>2]=o+q;r=C(r-p);z[m+4>>2]=p+r;A=C(A-j);z[m>>2]=j+A;J=o;o=C(P-o);z[m+712>>2]=J+o;J=p;p=C(E-p);z[m+708>>2]=J+p;H=C(H-j);z[m+704>>2]=j+H;E_(m+680|0,m+256|0,m+216|0,m,m+704|0,m+700|0,m+696|0);j=C(0);E=C(z[m+688>>2]-z[m+264>>2]);R=C(E*E);E=C(z[m+680>>2]-z[m+256>>2]);J=C(E*E);E=C(z[m+684>>2]-z[m+260>>2]);E=C(R+C(J+C(E*E)));if(!(E>2])+C(C(p*z[m+216>>2])+C(o*z[m+220>>2]))))>C(0)?R:J}if(j>2];p=C(z[m+228>>2]-n);o=z[m+220>>2];q=C(z[m+244>>2]-o);n=C(z[m+240>>2]-n);o=C(z[m+232>>2]-o);B=C(C(p*q)-C(n*o));J=o;o=z[m+224>>2];r=C(z[m+248>>2]-o);o=C(z[m+236>>2]-o);w=C(C(J*r)-C(q*o));y=C(C(o*n)-C(r*p));n=C(K(C(C(B*B)+C(C(w*w)+C(y*y)))));if(n>C(0)){n=C(C(1)/n);B=C(B*n);y=C(y*n);w=C(w*n)}O=v[N>>2];I=z[m+192>>2];s=z[m+188>>2];u=z[m+184>>2];n=j}x=x+1|0;if((L|0)!=(x|0)){continue}break}j=z[d+12>>2];r=C(C(j*j)+C(-.5));q=z[d+4>>2];A=C(-q);o=z[d>>2];H=C(-o);p=z[d+8>>2];l=C(-p)}g=C(B+B);w=C(w+w);y=C(y+y);B=C(C(p*g)+C(C(o*w)+C(y*q)));z[h+8>>2]=C(p*B)+C(C(g*r)+C(j*C(C(o*y)+C(w*A))));z[h+4>>2]=C(q*B)+C(C(y*r)+C(j*C(C(p*w)+C(g*H))));z[h>>2]=C(o*B)+C(C(w*r)+C(j*C(C(q*g)+C(y*l))));z[i+8>>2]=I;z[i+4>>2]=s;z[i>>2]=u;v[k>>2]=O;a=v[m+296>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[m+288>>2];if(!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[m+312>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[m+304>>2];if(!a){break f}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}a=v[m+652>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=v[m+644>>2];if((a|0)==(m+384|0)|!a){break g}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=m+720|0;return C(n)}function o2(a,b,c,d,e,f,g,h,i){var j=C(0),k=0,l=0,m=C(0),n=0,o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=C(0),la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0;k=xa-96|0;xa=k;_=v[g>>2];q2(k+48|0,i);E=x[d+16>>1];l=v[c+32>>2];S=w[d+18|0];n=(S<<4)+16|0;X=k-n|0;xa=X;ja=X-n|0;xa=ja;ma=ja-(S+15&496)|0;xa=ma;n=v[a+60>>2];v[k+8>>2]=v[a+56>>2];v[k+12>>2]=n;n=v[a+52>>2];v[k>>2]=v[a+48>>2];v[k+4>>2]=n;n=v[a+76>>2];v[k+24>>2]=v[a+72>>2];v[k+28>>2]=n;p=a- -64|0;n=v[p+4>>2];v[k+16>>2]=v[p>>2];v[k+20>>2]=n;n=v[a+92>>2];v[k+40>>2]=v[a+88>>2];v[k+44>>2]=n;n=v[a+84>>2];v[k+32>>2]=v[a+80>>2];v[k+36>>2]=n;na=l+E|0;Ba[v[v[e>>2]+16>>2]](e,na,S,v[c+28>>2],X);u=z[k+84>>2];N=z[k+24>>2];T=z[k+52>>2];r=z[k+16>>2];H=z[k+20>>2];s=z[k+68>>2];Q=C(C(u*N)+C(C(T*r)+C(H*s)));z[k+20>>2]=Q;y=z[k+88>>2];A=z[k+56>>2];q=z[k+72>>2];z[k+24>>2]=C(N*y)+C(C(r*A)+C(H*q));v[k+12>>2]=0;o=z[k+8>>2];m=z[k>>2];j=z[k+4>>2];R=C(C(y*o)+C(C(A*m)+C(q*j)));z[k+8>>2]=R;Y=C(C(u*o)+C(C(T*m)+C(j*s)));z[k+4>>2]=Y;da=o;o=z[k+80>>2];ea=m;m=z[k+48>>2];Z=j;j=z[k+64>>2];$=C(C(da*o)+C(C(ea*m)+C(Z*j)));z[k>>2]=$;v[k+28>>2]=0;U=C(C(o*N)+C(C(m*r)+C(H*j)));z[k+16>>2]=U;N=z[k+40>>2];r=z[k+36>>2];H=z[k+32>>2];v[k+44>>2]=0;z[k+40>>2]=C(y*N)+C(C(A*H)+C(r*q));y=C(C(u*N)+C(C(T*H)+C(r*s)));z[k+36>>2]=y;A=C(C(o*N)+C(C(m*H)+C(r*j)));z[k+32>>2]=A;a:{if(!w[d+18|0]){break a}da=C(-34028234663852886e22);j=C(G(Y,C(-34028234663852886e22)));j=j>Q?j:Q;fa=C((j>y?j:y)+C(1.1920928955078125e-7));j=C(G($,C(-34028234663852886e22)));j=j>U?j:U;ka=C((j>A?j:A)+C(1.1920928955078125e-7));ea=C(34028234663852886e22);j=C(F(Y,C(34028234663852886e22)));j=j>2]);M=C(y-Q);aa=C(C(U+C(1.1920928955078125e-7))*M);O=C(Q-Y);ba=C(C($+C(1.1920928955078125e-7))*O);P=C(Y-y);ca=C(C(A+C(1.1920928955078125e-7))*P);J=C(A-U);u=C(U-$);N=C($-A);pa=_+5|0;qa=(_<<6)+f|0;n=0;Z=C(34028234663852886e22);L=C(-34028234663852886e22);while(1){p=n<<4;l=p+X|0;T=z[l+12>>2];r=z[k+80>>2];H=z[k+48>>2];s=z[k+64>>2];q=z[k+84>>2];o=z[k+52>>2];m=z[k+68>>2];ga=z[l+8>>2];ha=z[l>>2];ia=z[l+4>>2];j=C(C(z[k+88>>2]*ga)+C(C(z[k+56>>2]*ha)+C(ia*z[k+72>>2])));z[p+ja>>2]=j-R;v[l+12>>2]=0;z[l+8>>2]=R;I=C(C(q*ga)+C(C(o*ha)+C(ia*m)));z[l+4>>2]=I;r=C(C(r*ga)+C(C(H*ha)+C(ia*s)));z[l>>2]=r;ra=Iea;ua=r>Z;la=jka)|I>fa){break b}c:{if(r==A&y==I|r==$&I==Y){break c}S=y>I;l=IC(0);E=0;if(!((p?m:j)>=(p?j:m))){break d}E=1}p=E;if(r==U&I==Q){break c}E=IC(0);if(!((l?m:j)>=(l?j:m))){break e}if(p){break b}p=p+1|0}f:{if((E|0)==(S|0)){break f}m=C(aa+C(C(I-Q)*J));j=C(r*M);l=M>C(0);if(!((l?m:j)>=(l?j:m))){break f}if((p|0)!=1){break c}break b}if(!p){break b}}o=z[a+56>>2];m=z[a+48>>2];j=z[a+52>>2];H=z[i+4>>2];s=z[i+8>>2];q=z[i>>2];p=v[g>>2];l=(p<<6)+f|0;v[l+48>>2]=b;z[l+32>>2]=q;z[l+12>>2]=T;z[l+8>>2]=ga;z[l+4>>2]=ia;z[l>>2]=ha;z[l+40>>2]=s;z[l+36>>2]=H;v[l+28>>2]=0;j=C(C(s*C(o-ga))+C(C(q*C(m-ha))+C(H*C(j-ia))));z[l+44>>2]=-j;z[l+24>>2]=ga+C(s*j);z[l+20>>2]=ia+C(H*j);z[l+16>>2]=ha+C(q*j);p=p+1|0;v[g>>2]=p;oa=oa+1|0;p=p-_|0;if(p>>>0<16){break b}A2(qa,p);v[g>>2]=pa}da=ra?da:I;L=sa?L:r;ea=ta?ea:I;Z=ua?Z:r;t[n+ma|0]=la;n=n+1|0;p=w[d+18|0];if(n>>>0

>>0){continue}break}if((p|0)==(oa|0)){break a}N=C(da+C(1.1920928955078125e-7));T=C(L+C(1.1920928955078125e-7));r=C(ea+C(-1.1920928955078125e-7));H=C(Z+C(-1.1920928955078125e-7));a=v[e+40>>2];q=z[d+8>>2];o=z[d>>2];m=z[d+4>>2];j=C(C(z[a+40>>2]*q)+C(C(z[a+32>>2]*o)+C(m*z[a+36>>2])));u=C(C(z[a+8>>2]*q)+C(C(z[a>>2]*o)+C(m*z[a+4>>2])));s=C(C(z[a+24>>2]*q)+C(C(z[a+16>>2]*o)+C(m*z[a+20>>2])));q=C(C(1)/C(K(C(C(j*j)+C(C(u*u)+C(s*s))))));aa=C(j*q);e=v[e+36>>2];a=v[c+28>>2]+B(w[na|0],12)|0;o=z[a+8>>2];m=z[a>>2];j=z[a+4>>2];ba=C(u*q);ca=C(s*q);s=C(C(aa*C(C(z[e+40>>2]*o)+C(C(z[e+8>>2]*m)+C(j*z[e+24>>2]))))+C(C(ba*C(C(z[e+32>>2]*o)+C(C(z[e>>2]*m)+C(j*z[e+16>>2]))))+C(ca*C(C(z[e+36>>2]*o)+C(C(z[e+4>>2]*m)+C(j*z[e+20>>2]))))));la=_+5|0;S=(_<<6)+f|0;c=0;e=0;while(1){E=(e<<4)+k|0;J=z[E>>2];g:{if(JT){break g}D=z[E+4>>2];if(DN){break g}l=w[d+18|0];if(!l){break g}a=((l<<4)+X|0)-16|0;o=z[a>>2];q=z[a+4>>2];p=0;a=0;h:{while(1){if(o==J&q==D){break h}j=o;m=q;n=(p<<4)+X|0;o=z[n>>2];q=z[n+4>>2];if(J==o&D==q){break h}i:{if((m>D|0)==(q>D|0)){break i}u=C(q-m);m=C(C(C(j+C(1.1920928955078125e-7))*u)+C(C(D-m)*C(o-j)));j=C(J*u);n=u>C(0);if(!((n?m:j)>=(n?j:m))){break i}if((a|0)==1){break g}a=a+1|0}p=p+1|0;if((l|0)!=(p|0)){continue}break}if(!a){break g}}c=c+1|0;j=z[E+8>>2];V=C(C(z[k+88>>2]*j)+C(C(z[k+80>>2]*J)+C(D*z[k+84>>2])));W=C(C(z[k+56>>2]*j)+C(C(z[k+48>>2]*J)+C(D*z[k+52>>2])));D=C(C(z[k+72>>2]*j)+C(C(z[k+64>>2]*J)+C(D*z[k+68>>2])));j=C(C(C(aa*V)+C(C(ba*W)+C(ca*D)))-s);if(j>z[h>>2]){break g}J=z[i+4>>2];u=z[i+8>>2];q=z[i>>2];a=v[g>>2];n=(a<<6)+f|0;v[n+48>>2]=b;z[n+32>>2]=q;z[n+16>>2]=W;v[n+12>>2]=0;o=C(V-C(aa*j));z[n+8>>2]=o;m=C(D-C(ca*j));z[n+4>>2]=m;j=C(W-C(ba*j));z[n>>2]=j;z[n+40>>2]=u;z[n+36>>2]=J;v[n+28>>2]=0;z[n+24>>2]=V;z[n+20>>2]=D;z[n+44>>2]=C(u*C(o-V))+C(C(q*C(j-W))+C(J*C(m-D)));a=a+1|0;v[g>>2]=a;a=a-_|0;if(a>>>0<16){break g}A2(S,a);v[g>>2]=la}e=e+1|0;if((e|0)!=3){continue}break}if((c|0)==3){break a}a=w[d+18|0];e=0;while(1){c=(e<<4)+k|0;m=z[c+4>>2];j=z[c>>2];c=a;a=0;if(c){aa=m>y?m:y;ba=j>A?j:A;ca=m>2];c=n<<4;a=c+X|0;O=z[a>>2];if(ba<(L(L>O?L:O)){break j}M=z[l+4>>2];P=z[a+4>>2];if(aa<(M(M>P?M:P)){break j}s=C(C(C(j-L)*C(y-M))-C(C(A-L)*C(m-M)));q=C(C(C(j-O)*C(y-P))-C(C(A-O)*C(m-P)));if(!(C(s*q)>2]);ka=C(s*C(C(1)/C(q-s)));fa=C(o-C(ka*C(C(R+z[c+ja>>2])-o)));u=C(fa-R);if(u>z[h>>2]){break j}s=z[i+8>>2];n=v[i+4>>2];c=v[i>>2];V=z[k+56>>2];N=z[k+48>>2];T=z[k+52>>2];W=z[k+88>>2];r=z[k+80>>2];H=z[k+84>>2];D=z[k+72>>2];q=z[k+64>>2];o=z[k+68>>2];a=v[g>>2];l=(a<<6)+f|0;v[l+12>>2]=0;v[l+48>>2]=b;v[l+32>>2]=c;v[l+36>>2]=n;v[l+28>>2]=0;z[l+44>>2]=u;z[l+40>>2]=s;u=C(L-C(C(O-L)*ka));Z=o;o=C(M-C(C(P-M)*ka));s=C(C(q*u)+C(Z*o));z[l+4>>2]=C(D*fa)+s;q=C(C(r*u)+C(o*H));z[l+8>>2]=C(W*fa)+q;o=C(C(N*u)+C(o*T));z[l+16>>2]=C(V*R)+o;z[l+20>>2]=C(D*R)+s;z[l+24>>2]=C(W*R)+q;z[l>>2]=C(V*fa)+o;a=a+1|0;v[g>>2]=a;a=a-_|0;if(a>>>0<16){break j}A2(S,a);v[g>>2]=la}a=w[d+18|0];n=p;p=n+1|0;if(a>>>0>p>>>0){continue}break}}y=m;A=j;e=e+1|0;if((e|0)!=3){continue}break}}xa=k+96|0}function IA(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,u=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0;g=xa-1072|0;xa=g;c=g+1052|0;v[c>>2]=-128;v[c+4>>2]=-128;c=g;v[c+1020>>2]=-128;v[c+1024>>2]=-128;v[c+988>>2]=-128;v[c+992>>2]=-128;v[c+956>>2]=-128;v[c+960>>2]=-128;v[c+924>>2]=-128;v[c+928>>2]=-128;v[c+892>>2]=-128;v[c+896>>2]=-128;v[c+860>>2]=-128;v[c+864>>2]=-128;v[c+828>>2]=-128;v[c+832>>2]=-128;v[c+796>>2]=-128;v[c+800>>2]=-128;v[c+764>>2]=-128;v[c+768>>2]=-128;v[c+732>>2]=-128;v[c+736>>2]=-128;v[c+700>>2]=-128;v[c+704>>2]=-128;v[c+668>>2]=-128;v[c+672>>2]=-128;v[c+636>>2]=-128;v[c+640>>2]=-128;v[c+604>>2]=-128;v[c+608>>2]=-128;v[c+572>>2]=-128;v[c+576>>2]=-128;v[c+540>>2]=-128;v[c+544>>2]=-128;v[c+508>>2]=-128;v[c+512>>2]=-128;v[c+476>>2]=-128;v[c+480>>2]=-128;v[c+444>>2]=-128;v[c+448>>2]=-128;v[c+412>>2]=-128;v[c+416>>2]=-128;v[c+380>>2]=-128;v[c+384>>2]=-128;v[c+348>>2]=-128;v[c+352>>2]=-128;v[c+316>>2]=-128;v[c+320>>2]=-128;v[c+284>>2]=-128;v[c+288>>2]=-128;v[c+252>>2]=-128;v[c+256>>2]=-128;v[c+220>>2]=-128;v[c+224>>2]=-128;v[c+188>>2]=-128;v[c+192>>2]=-128;v[c+156>>2]=-128;v[c+160>>2]=-128;v[c+124>>2]=-128;v[c+128>>2]=-128;v[c+92>>2]=-128;v[c+96>>2]=-128;v[c+60>>2]=-128;v[c+64>>2]=-128;v[c+24>>2]=v[b+12>>2];v[c+16>>2]=0;v[c+20>>2]=32;t[c+9|0]=0;v[c+12>>2]=c+48;v[c+40>>2]=v[b+148>>2];v[c+44>>2]=v[b+152>>2];k=v[b+24>>2];j=v[b>>2];q=v[b+4>>2];r=v[b+52>>2];n=v[b+16>>2];u=v[b+8>>2];h=v[b+28>>2];s=v[b+40>>2];a:{if(!s){if(n){while(1){c=d<<5;a=c+r|0;c=c+u|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[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=v[B(e,52)+k>>2];Ba[v[v[a>>2]+136>>2]](a,z[b+100>>2],z[b+104>>2],v[g+40>>2],v[g+44>>2],0,0,C(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=B(e,52)+k|0;d=v[(v[v[c>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](c,v[g+44>>2])}c=B(e|1,52)+k|0;d=v[(v[v[c>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](c,v[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=B(e,52)+k|0;d=v[(v[v[c>>2]+24>>2]<<2)+149608>>2];if(!d){break b}Ba[d|0](c,v[g+44>>2])}if(q){if(a){break a}d=0;while(1){e=0;while(1){c=v[B(e,52)+k>>2];Ba[v[v[c>>2]+136>>2]](c,z[b+100>>2],z[b+104>>2],v[g+40>>2],v[g+44>>2],1,0,C(0));e=e+1|0;if((h|0)!=(e|0)){continue}break}d=d+1|0;if((q|0)!=(d|0)){continue}break}}if(a){break a}e=0;if((h|0)!=1){a=h&-2;f=0;while(1){b=v[B(e,52)+k>>2];Ba[v[v[b>>2]+140>>2]](b,0);b=v[B(e|1,52)+k>>2];Ba[v[v[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=v[B(e,52)+k>>2];Ba[v[v[a>>2]+140>>2]](a,0);break a}E=v[b+32>>2];F=v[b+36>>2];if(j){while(1){t[g+8|0]=w[a+4|0]!=0|j>>>0<4;if((s|0)>0){A=(j|0)==1?129216:129120;l=0;while(1){o=0;i=0;f=0;p=(l<<3)+F|0;G=(v[p>>2]<<5)+E|0;e=v[G+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;D=f-c|0;f=m;c=D+1|0;f=c?f:f+1|0;d=c;c=0;I=c;H=d&7;if(c|H){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((H|0)!=(o|0)|(I|0)!=(c|0)){continue}break}}c=x[p+4>>1];if(!m&D>>>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}}Ba[v[(x[p+6>>1]<<2)+A>>2]](G,c,g+8|0);l=l+1|0;if((s|0)!=(l|0)){continue}break}}e=0;if(h){while(1){c=v[B(e,52)+k>>2];Ba[v[v[c>>2]+136>>2]](c,z[b+100>>2],z[b+104>>2],v[g+40>>2],v[g+44>>2],0,0,C(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+u|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[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=B(e,52)+k|0;d=v[(v[v[c>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](c,v[g+44>>2])}c=B(e|1,52)+k|0;d=v[(v[v[c>>2]+24>>2]<<2)+149608>>2];if(d){Ba[d|0](c,v[g+44>>2])}e=e+2|0;f=f+2|0;if((a|0)!=(f|0)){continue}break}}if(!(h&1)){break d}a=B(e,52)+k|0;c=v[(v[v[a>>2]+24>>2]<<2)+149608>>2];if(!c){break d}Ba[c|0](a,v[g+44>>2])}j=0;if((q|0)>=2){j=q-1|0;u=(s|0)<=0;m=0;while(1){l=0;if(!u){while(1){o=0;i=0;f=0;n=(l<<3)+F|0;p=(v[n>>2]<<5)+E|0;e=v[p+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;r=d-c|0;c=r+1|0;f=c?a:a+1|0;d=c;c=0;D=c;A=d&7;if(c|A){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((A|0)!=(o|0)|(D|0)!=(c|0)){continue}break}}c=x[n+4>>1];if(!a&r>>>0>=7|a){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){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 e}while(1){e=e+1|0;f=f+1|0;if((a|0)!=(f|0)){continue}break}}Ba[v[(x[n+6>>1]<<2)+129120>>2]](p,c,g+8|0);l=l+1|0;if((s|0)!=(l|0)){continue}break}}e=0;if(h){while(1){a=v[B(e,52)+k>>2];Ba[v[v[a>>2]+136>>2]](a,z[b+100>>2],z[b+104>>2],v[g+40>>2],v[g+44>>2],1,0,C(0));e=e+1|0;if((h|0)!=(e|0)){continue}break}}m=m+1|0;if((m|0)!=(j|0)){continue}break}}m=v[b+132>>2];a=v[b+136>>2];n=v[b+140>>2];v[g+36>>2]=n;v[g+32>>2]=a;v[g+28>>2]=m;t[g+9|0]=1;f:{if((j|0)>=(q|0)){break f}if((s|0)>0){l=0;while(1){o=0;i=0;f=0;j=(l<<3)+F|0;r=(v[j>>2]<<5)+E|0;e=v[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;q=d-c|0;c=q+1|0;f=c?a:a+1|0;d=c;c=0;u=c;p=d&7;if(c|p){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((p|0)!=(o|0)|(u|0)!=(c|0)){continue}break}}c=x[j+4>>1];if(!a&q>>>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}}Ba[v[(x[j+6>>1]<<2)+129168>>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=B(e,52)+k|0;c=v[a>>2];Ba[v[v[c>>2]+136>>2]](c,z[b+100>>2],z[b+104>>2],v[g+40>>2],v[g+44>>2],1,0,C(0));a=v[a>>2];Ba[v[v[a>>2]+140>>2]](a,0);e=e+1|0;if((h|0)!=(e|0)){continue}break}}a=v[g+16>>2];if(!a){break a}a=a+v[n>>2]|0;v[n>>2]=a;b=v[g+16>>2];if(!b){break a}c=a-b|0;e=0;while(1){a=v[g+12>>2]+(e<<5)|0;d=v[a+4>>2];b=m+(c+e<<5)|0;v[b>>2]=v[a>>2];v[b+4>>2]=d;d=v[a+28>>2];v[b+24>>2]=v[a+24>>2];v[b+28>>2]=d;d=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=d;d=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=d;e=e+1|0;if(e>>>0>2]){continue}break}}xa=g+1072|0}function O3(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=0,A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0);i=v[a+12>>2];j=v[b+8>>2];f=B(j,12)+12|0;if(f){g=v[37696];g=Ba[v[v[g+12>>2]+8>>2]](g+12|0,f,24422,19733,148)|0;f=v[a+12>>2]}else{f=i}v[i+12>>2]=j;v[i+16>>2]=g;j=w[c+14|0];k=v[b+20>>2];i=B(k,12);a:{b:{if(!i){v[f+72>>2]=0;i=0;if(j){break b}break a}h=v[37696];h=Ba[v[v[h+12>>2]+8>>2]](h+12|0,i,24422,19733,228)|0;v[f+72>>2]=h;if(!j){break a}h=v[37696];l=Ba[v[v[h+12>>2]+8>>2]](h+12|0,i,24422,19733,230)|0;i=v[f+72>>2]}h=i;v[f+56>>2]=l}v[f+68>>2]=k;j=v[a+12>>2];l=v[j+12>>2];if(l){i=v[b>>2];F=l-1|0;f=v[b+4>>2];s=l&3;if(s){j=0;while(1){k=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);n=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[g|0]=n;t[g+1|0]=n>>>8;t[g+2|0]=n>>>16;t[g+3|0]=n>>>24;t[g+4|0]=k;t[g+5|0]=k>>>8;t[g+6|0]=k>>>16;t[g+7|0]=k>>>24;k=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[g+8|0]=k;t[g+9|0]=k>>>8;t[g+10|0]=k>>>16;t[g+11|0]=k>>>24;f=f+i|0;g=g+12|0;l=l-1|0;j=j+1|0;if((s|0)!=(j|0)){continue}break}}if(F>>>0>=3){while(1){j=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);k=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[g|0]=k;t[g+1|0]=k>>>8;t[g+2|0]=k>>>16;t[g+3|0]=k>>>24;t[g+4|0]=j;t[g+5|0]=j>>>8;t[g+6|0]=j>>>16;t[g+7|0]=j>>>24;j=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[g+8|0]=j;t[g+9|0]=j>>>8;t[g+10|0]=j>>>16;t[g+11|0]=j>>>24;f=f+i|0;j=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[g+20|0]=j;t[g+21|0]=j>>>8;t[g+22|0]=j>>>16;t[g+23|0]=j>>>24;j=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);k=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[g+12|0]=k;t[g+13|0]=k>>>8;t[g+14|0]=k>>>16;t[g+15|0]=k>>>24;t[g+16|0]=j;t[g+17|0]=j>>>8;t[g+18|0]=j>>>16;t[g+19|0]=j>>>24;f=f+i|0;j=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[g+32|0]=j;t[g+33|0]=j>>>8;t[g+34|0]=j>>>16;t[g+35|0]=j>>>24;j=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);k=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[g+24|0]=k;t[g+25|0]=k>>>8;t[g+26|0]=k>>>16;t[g+27|0]=k>>>24;t[g+28|0]=j;t[g+29|0]=j>>>8;t[g+30|0]=j>>>16;t[g+31|0]=j>>>24;f=f+i|0;j=w[f+4|0]|w[f+5|0]<<8|(w[f+6|0]<<16|w[f+7|0]<<24);k=w[f|0]|w[f+1|0]<<8|(w[f+2|0]<<16|w[f+3|0]<<24);t[g+36|0]=k;t[g+37|0]=k>>>8;t[g+38|0]=k>>>16;t[g+39|0]=k>>>24;t[g+40|0]=j;t[g+41|0]=j>>>8;t[g+42|0]=j>>>16;t[g+43|0]=j>>>24;j=w[f+8|0]|w[f+9|0]<<8|(w[f+10|0]<<16|w[f+11|0]<<24);t[g+44|0]=j;t[g+45|0]=j>>>8;t[g+46|0]=j>>>16;t[g+47|0]=j>>>24;g=g+48|0;f=f+i|0;l=l-4|0;if(l){continue}break}}j=v[a+12>>2]}k=x[b+24>>1];f=k&1;i=v[j+68>>2];l=B(i,12)+h|0;g=v[b+16>>2];c:{if(k&2){if((i|0)<=0){break c}i=(f?2:1)<<1;f=(f?1:2)<<1;while(1){v[h>>2]=x[g>>1];v[h+4>>2]=x[g+i>>1];v[h+8>>2]=x[f+g>>1];g=v[b+12>>2]+g|0;h=h+12|0;if(l>>>0>h>>>0){continue}break}break c}if((i|0)<=0){break c}i=(f?2:1)<<2;f=(f?1:2)<<2;while(1){v[h>>2]=v[g>>2];v[h+4>>2]=v[g+i>>2];v[h+8>>2]=v[f+g>>2];g=v[b+12>>2]+g|0;h=h+12|0;if(l>>>0>h>>>0){continue}break}}h=v[b+32>>2];d:{if(!h){break d}i=v[j+68>>2];f=i+i|0;f=f>>>0>>0?-1:f;e:{if(!f){g=0;break e}h=v[37696];i=Ba[v[v[h>>2]+20>>2]](h)|0?27439:63804;g=Ba[v[v[h+12>>2]+8>>2]](h+12|0,f,i,19733,239)|0;h=v[b+32>>2];i=v[v[a+12>>2]+68>>2]}v[j+80>>2]=g;if(!i){break d}b=v[b+28>>2];f=i-1|0;j=i&3;if(j){l=0;while(1){k=w[h|0]|w[h+1|0]<<8;t[g|0]=k;t[g+1|0]=k>>>8;h=b+h|0;g=g+2|0;i=i-1|0;l=l+1|0;if((j|0)!=(l|0)){continue}break}}if(f>>>0<3){break d}while(1){f=w[h|0]|w[h+1|0]<<8;t[g|0]=f;t[g+1|0]=f>>>8;h=b+h|0;f=w[h|0]|w[h+1|0]<<8;t[g+2|0]=f;t[g+3|0]=f>>>8;h=b+h|0;f=w[h|0]|w[h+1|0]<<8;t[g+4|0]=f;t[g+5|0]=f>>>8;h=b+h|0;f=w[h|0]|w[h+1|0]<<8;t[g+6|0]=f;t[g+7|0]=f>>>8;g=g+8|0;h=b+h|0;i=i-4|0;if(i){continue}break}}f:{if(!(e?0:w[c+24|0]&2)){c=0;b=0;j=xa-32|0;xa=j;h=a;a=v[h+8>>2];g:{if(!(t[a+24|0]&1)){break g}p=z[a+28>>2];if(p!=C(0)){break g}b9(v[37696],2,9248,140,73556,0);p=C(0)}a=v[h+12>>2];g=j3(j+8|0,v[a+12>>2],v[a+16>>2],v[a+68>>2],v[a+72>>2],p);l=v[g+4>>2];h:{if(!l){break h}if(e){a=v[h+12>>2];if(v[g>>2]!=v[a+12>>2]|(l|0)!=v[a+68>>2]){break h}}c=v[g+16>>2];i:{if(!c){break i}a=v[h+12>>2];i=v[a+80>>2];if(i){a=0;f=l+l|0;f=f>>>0>>0?-1:f;if(f){b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?27439:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,f,c,9248,171)|0;i=v[v[h+12>>2]+80>>2];c=v[g+16>>2]}if(l-1>>>0>=3){k=l&-4;f=0;while(1){u[(a<<1)+b>>1]=x[(v[(a<<2)+c>>2]<<1)+i>>1];n=a|1;u[(n<<1)+b>>1]=x[(v[(n<<2)+c>>2]<<1)+i>>1];n=a|2;u[(n<<1)+b>>1]=x[(v[(n<<2)+c>>2]<<1)+i>>1];n=a|3;u[(n<<1)+b>>1]=x[(v[(n<<2)+c>>2]<<1)+i>>1];a=a+4|0;f=f+4|0;if((k|0)!=(f|0)){continue}break}}k=l&3;if(k){f=0;while(1){u[(a<<1)+b>>1]=x[(v[(a<<2)+c>>2]<<1)+i>>1];a=a+1|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,i);a=v[h+12>>2];v[a+80>>2]=b}b=v[h+8>>2];if(w[b+14|0]?0:w[b+12|0]){break i}b=l<<2;c=(l|0)!=(l&1073741823)?-1:b;j:{if(!c){c=0;break j}a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?29035:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,f,9248,181)|0;a=v[h+12>>2]}v[a+48>>2]=c;I9(c,v[g+16>>2],b)}b=v[g>>2];a=v[h+12>>2];i=v[a+12>>2];k:{if((b|0)==(i|0)){c=a;break k}i=0;c=v[a+16>>2];if(c){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,c);b=v[g>>2];a=v[h+12>>2]}v[a+16>>2]=0;c=a;f=B(b,12)+12|0;if(f){c=v[37696];i=Ba[v[v[c+12>>2]+8>>2]](c+12|0,f,24422,19733,148)|0;c=v[h+12>>2]}v[a+12>>2]=b;v[a+16>>2]=i;i=v[c+12>>2]}I9(v[c+16>>2],v[g+8>>2],B(i,12));a=v[h+12>>2];c=v[a+68>>2];i=v[g+4>>2];l:{if((c|0)==(i|0)){b=a;break l}c=0;b=v[a+72>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);i=v[g+4>>2];a=v[h+12>>2]}v[a+72>>2]=0;b=a;f=B(i,12);if(f){b=v[37696];c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,f,24422,19733,228)|0;b=v[h+12>>2]}v[a+68>>2]=i;v[a+72>>2]=c;c=v[b+68>>2]}if(c){p=z[v[h+8>>2]+16>>2];p=C(p*C(p*C(25e4)));c=v[b+16>>2];n=v[b+72>>2];F=v[g+12>>2];a=0;i=0;while(1){m:{k=B(a,12);h=k+F|0;f=v[h>>2];l=v[h+4>>2];k=k+n|0;s=v[h+8>>2];v[k+8>>2]=s;v[k+4>>2]=l;v[k>>2]=f;n:{h=c+B(f,12)|0;o=z[h+8>>2];f=c+B(l,12)|0;q=z[f+8>>2];A=C(o-q);G=C(A*A);A=z[h>>2];r=z[f>>2];D=C(A-r);H=C(D*D);D=z[h+4>>2];E=z[f+4>>2];m=C(D-E);if(C(G+C(H+C(m*m)))>=p){break n}m=q;h=c+B(s,12)|0;q=z[h+8>>2];m=C(m-q);G=C(m*m);m=r;r=z[h>>2];m=C(m-r);H=C(m*m);m=E;E=z[h+4>>2];m=C(m-E);if(C(G+C(H+C(m*m)))>=p){break n}o=C(q-o);q=C(o*o);o=C(r-A);r=C(o*o);o=C(E-D);if(C(q+C(r+C(o*o)))>=p){break n}a=a+1|0;if(a>>>0>2]){continue}c=1;if(i){break m}break h}i=1;a=a+1|0;if(a>>>0>2]){continue}}break}if(d){v[d>>2]=1}b9(v[37696],2,9248,230,72020,0)}c=1}k3(g);xa=j+32|0;h=c;if(e|h){break f}b9(v[37696],32,9248,1043,23915,0);return 0}h=1;if(w[c+12|0]){break f}g=0;f=0;i=v[a+12>>2];l=v[i+68>>2];c=(l&1073741823)!=(l|0)?-1:l<<2;if(c){b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,1053)|0;i=v[a+12>>2];l=v[i+68>>2]}v[i+48>>2]=f;if(!l){break f}while(1){v[(g<<2)+f>>2]=g;g=g+1|0;if(g>>>0>2]){continue}break}}return h}function zx(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=0,da=0,ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=0,ka=C(0),la=C(0),ma=C(0),na=C(0),oa=0,pa=C(0),qa=0,ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=0,Ha=0,Ia=0;n=xa-224|0;xa=n;s=v[b+456>>2];O=v[b+452>>2];r=v[b+444>>2];v[n+216>>2]=0;v[n+220>>2]=0;v[n+208>>2]=0;v[n+212>>2]=0;v[n+200>>2]=0;v[n+204>>2]=0;v[n+192>>2]=0;v[n+196>>2]=0;ba=j<<5;S=ba+r|0;r=v[b+228>>2]+(v[S+24>>2]<<5)|0;o=z[r+16>>2];p=z[r+8>>2];q=z[r+4>>2];I=z[r>>2];P=z[r+24>>2];Q=z[r+20>>2];G=z[k+24>>2];T=z[k+20>>2];ha=z[k+16>>2];R=z[k+8>>2];J=z[k+4>>2];U=z[k>>2];qa=(O+B(j,160)|0)+120|0;$w(n+160|0,qa,v[b+348>>2]+B(j,112)|0,v[b+360>>2]+B(j,36)|0,v[b+384>>2]+B(j,76)|0,ba+v[b+264>>2]|0,k);k=ba+v[b+228>>2]|0;x=z[k>>2];y=z[k+4>>2];A=z[k+8>>2];D=z[k+16>>2];K=z[k+20>>2];M=z[n+184>>2];V=C(z[k+24>>2]+M);z[n+152>>2]=V;t=K;K=z[n+180>>2];W=C(t+K);z[n+148>>2]=W;v[n+156>>2]=0;X=z[n+176>>2];Y=C(D+X);z[n+144>>2]=Y;v[n+140>>2]=0;Z=z[n+168>>2];A=C(A+Z);z[n+136>>2]=A;_=z[n+164>>2];y=C(y+_);z[n+132>>2]=y;N=z[n+160>>2];D=C(x+N);z[n+128>>2]=D;z[n+120>>2]=M;z[n+116>>2]=K;z[n+104>>2]=Z;z[n+100>>2]=_;z[n+96>>2]=N;z[n+112>>2]=X;z[n+108>>2]=z[n+172>>2];z[n+124>>2]=z[n+188>>2];k=s+B(j,80)|0;ca=w[k+78|0];da=w[k+79|0];if(ca|da){x=z[v[S+20>>2]+264>>2];I=C(U+I);J=C(J+q);R=C(R+p);U=z[n+208>>2];E=z[n+200>>2];F=z[n+196>>2];O=w[k+76|0];if(O){ja=v[b+180>>2]+(v[k+72>>2]<<2)|0;P=C(G+P);Q=C(T+Q);G=C(ha+o);oa=v[b+288>>2];q=C(-x);s=0;T=z[n+216>>2];ha=z[n+212>>2];pa=z[n+192>>2];while(1){a:{if(!(ca>>>s&1)){break a}k=v[l>>2];v[l>>2]=k+1;k=oa+B(k,176)|0;p=z[k+132>>2];o=z[ja+(s<<2)>>2];b:{if(w[k+168|0]){break b}if(o>C(6.2831854820251465)){p=C(p+C(-12.566370964050293));o=C(o+C(-12.566370964050293));break b}if(!(o>2];u=z[k+100>>2];H=z[k+156>>2];L=C(-H);$=z[k+160>>2];ia=C($*z[k+164>>2]);ra=z[k+44>>2];sa=z[k+36>>2];ta=z[k+40>>2];ua=z[k+32>>2];va=z[k+24>>2];wa=z[k+28>>2];ya=z[k+20>>2];za=z[k+12>>2];Aa=z[k+16>>2];Ca=z[k+8>>2];Da=z[k>>2];Ea=z[k+4>>2];Fa=C(C(C(C(ra*A)+C(C(sa*D)+C(ta*y)))+C(C(ua*V)+C(C(va*Y)+C(wa*W))))-C(C(C(ya*R)+C(C(za*I)+C(J*Aa)))+C(C(Ca*P)+C(C(Da*G)+C(Q*Ea)))));aa=z[k+96>>2];ka=C(ia-C(Fa*aa));L=L>ka?L:ka;H=C((H>2]=$+H;L=z[k+148>>2];$=C(-L);ka=C(C(C(C(C(t*u)*i)+p)-o)*z[k+128>>2]);p=t;t=z[k+152>>2];ia=C(C(H*u)+Fa);p=C(ka+C(p+C(C(z[k+144>>2]*t)+C(z[k+136>>2]*ia))));p=p<$?$:p;L=p>L?L:p;p=C(L-t);$=C(H+p);p=C(C(p*u)+ia);c:{d:{if(g){break d}t=z[k+108>>2];r=tt){H=z[k+116>>2];o=C(p+C(C(C(t-u)*d)*(r?z[k+120>>2]:C(1))));o=ox?x:o)-p)*aa));o=C((o>2]=H+o;break c}t=o;o=z[k+104>>2];r=tu)){break d}t=z[k+112>>2];o=C(p+C(C(C(o-u)*d)*(r?z[k+120>>2]:C(1))));o=ox?x:o)-p)*aa));o=C((o>C(0)?o:C(0))-t);z[k+112>>2]=t+o;break c}o=C(aa*C(-p));if(p>C(0)){p=z[k+112>>2];u=C(-p);o=o>u?o:u;z[k+112>>2]=p+o;break c}p=z[k+116>>2];u=C(-p);o=o>2]=p+o}o=C($+o);if(o==C(0)){break a}z[k+152>>2]=L;T=C(T-C(o*ra));ha=C(ha-C(o*ta));U=C(U-C(o*sa));E=C(E-C(ua*o));F=C(F-C(wa*o));pa=C(pa-C(va*o));ea=C(ea+C(ya*o));fa=C(fa+C(Aa*o));ga=C(ga+C(za*o));la=C(la+C(Ca*o));ma=C(ma+C(Ea*o));na=C(na+C(Da*o));p=C(-o);u=C(z[k+72>>2]*p);N=C(u+N);D=C(D+u);I=C(I-C(o*z[k+48>>2]));u=C(z[k+92>>2]*p);M=C(u+M);aa=C(z[k+88>>2]*p);K=C(aa+K);t=C(z[k+84>>2]*p);X=C(t+X);H=C(z[k+80>>2]*p);Z=C(H+Z);p=C(z[k+76>>2]*p);_=C(p+_);V=C(V+u);W=C(W+aa);Y=C(Y+t);A=C(A+H);y=C(y+p);P=C(P-C(o*z[k+68>>2]));Q=C(Q-C(o*z[k- -64>>2]));G=C(G-C(o*z[k+60>>2]));R=C(R-C(o*z[k+56>>2]));J=C(J-C(o*z[k+52>>2]))}s=s+1|0;if((O|0)!=(s|0)){continue}break}z[n+216>>2]=T;z[n+212>>2]=ha;z[n+192>>2]=pa;z[n+120>>2]=M;z[n+116>>2]=K;z[n+96>>2]=N}z[n+200>>2]=E;z[n+196>>2]=F;s=O-da|0;if(O>>>0>s>>>0){ja=v[b+312>>2];ca=ja+(j<<5)|0;oa=v[b+300>>2];k=v[m>>2];o=C(-x);P=z[n+216>>2];Q=z[n+212>>2];while(1){r=k+1|0;v[m>>2]=r;k=oa+B(k,80)|0;E=z[k+56>>2];F=z[k+48>>2];G=z[k+52>>2];p=C(C(C(E*A)+C(C(F*D)+C(G*y)))-C(C(E*R)+C(C(F*I)+C(J*G))));q=C(-p);T=z[k+60>>2];if(!g){da=ja+(v[S+24>>2]<<5)|0;q=C(C(C(z[k+64>>2]-C(C(C(E*z[ca+8>>2])+C(C(F*z[ca>>2])+C(G*z[ca+4>>2])))-C(C(E*z[da+8>>2])+C(C(F*z[da>>2])+C(G*z[da+4>>2])))))*z[k+68>>2])+q)}q=C(p+q);q=o>q?o:q;p=C(T*C((q>x?x:q)-p));if(p!=C(0)){q=C(E*p);P=C(P-q);E=C(G*p);Q=C(Q-E);F=C(F*p);U=C(U-F);ea=C(ea+q);fa=C(fa+E);ga=C(ga+F);R=C(R-C(p*z[k+8>>2]));J=C(J-C(p*z[k+4>>2]));I=C(I-C(p*z[k>>2]));p=C(-p);q=C(z[k+24>>2]*p);N=C(q+N);D=C(D+q);q=C(z[k+44>>2]*p);M=C(q+M);E=C(z[k+40>>2]*p);K=C(E+K);F=C(z[k+36>>2]*p);X=C(F+X);G=C(z[k+32>>2]*p);Z=C(G+Z);p=C(z[k+28>>2]*p);_=C(p+_);V=C(q+V);W=C(E+W);Y=C(F+Y);y=C(y+p);A=C(A+G)}k=r;s=s+1|0;if((O|0)!=(s|0)){continue}break}z[n+216>>2]=P;z[n+212>>2]=Q;z[n+120>>2]=M;z[n+116>>2]=K;z[n+96>>2]=N}z[n+136>>2]=A;z[n+132>>2]=y;z[n+128>>2]=D;z[n+208>>2]=U;z[n+152>>2]=V;z[n+148>>2]=W;z[n+144>>2]=Y;z[n+112>>2]=X;z[n+104>>2]=Z;z[n+100>>2]=_}k=v[b+312>>2];s=j<<2;r=v[s+v[b+408>>2]>>2];O=Ba[v[v[b>>2]+168>>2]](b,j)|0;if(r){ba=k+ba|0;x=g?C(0):C(-34028234663852886e22);k=v[s+v[b+420>>2]>>2];s=0;while(1){xx(v[b+656>>2]+(k<<5)|0,n+128|0,n+192|0,n+96|0,ba,O,h,i,x);k=k+1|0;s=s+1|0;if((r|0)!=(s|0)){continue}break}}o=z[n+216>>2];A=z[n+212>>2];y=z[n+208>>2];D=z[n+200>>2];I=z[n+196>>2];J=z[n+192>>2];k=v[S>>2];r=v[S+4>>2];if(k|r){S=B(j,192);while(1){s=k;zx(n- -64|0,b,c,d,e,f,g,h,i,(Ga=Raa(k),Ha=Raa(r)+32|0,Ia=k,Ia?Ga:Ha),n+96|0,l,m);x=z[n+88>>2];o=C(x+o);p=z[n+84>>2];A=C(p+A);q=z[n+80>>2];y=C(q+y);M=z[n+72>>2];D=C(M+D);K=z[n+68>>2];I=C(K+I);N=z[n+64>>2];J=C(N+J);k=k&k-1;r=r&r-!s;if(k|r){s=v[b+336>>2];v[n+28>>2]=0;z[n+24>>2]=-x;z[n+20>>2]=-p;z[n+16>>2]=-q;v[n+12>>2]=0;z[n+8>>2]=-M;z[n+4>>2]=-K;z[n>>2]=-N;Rw(n+32|0,s+S|0,n);z[n+96>>2]=z[n+32>>2]+z[n+96>>2];z[n+100>>2]=z[n+36>>2]+z[n+100>>2];z[n+104>>2]=z[n+40>>2]+z[n+104>>2];z[n+112>>2]=z[n+48>>2]+z[n+112>>2];z[n+116>>2]=z[n+52>>2]+z[n+116>>2];z[n+120>>2]=z[n+56>>2]+z[n+120>>2];continue}break}z[n+216>>2]=o;z[n+212>>2]=A;z[n+208>>2]=y;z[n+200>>2]=D;z[n+196>>2]=I;z[n+192>>2]=J;ea=C(ea+C(0));fa=C(fa+C(0));la=C(la+C(0));ma=C(ma+C(0));na=C(na+C(0));ga=C(ga+C(0))}e=(j<<5)+e|0;v[e+28>>2]=0;z[e+16>>2]=y;v[e+12>>2]=0;z[e+8>>2]=D;z[e+4>>2]=I;z[e>>2]=J;z[e+24>>2]=o;z[e+20>>2]=A;dx(n- -64|0,v[b+396>>2]+B(j,96)|0,qa,v[b+384>>2]+B(j,76)|0,n+192|0);c=z[n+84>>2];d=z[n+88>>2];i=z[n+64>>2];x=z[n+68>>2];o=z[n+72>>2];p=z[n+80>>2];v[a+28>>2]=0;v[a+12>>2]=0;z[a+24>>2]=ea+d;z[a+20>>2]=fa+c;z[a+16>>2]=ga+p;z[a+8>>2]=la+o;z[a+4>>2]=ma+x;z[a>>2]=na+i;xa=n+224|0}function p2(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,u=C(0),y=C(0),A=0,B=C(0),D=C(0),E=0,F=C(0),G=0,H=C(0),I=C(0),J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=0,U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=0,$=0,aa=C(0),ba=0,ca=0,da=0,ea=0,fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0);j=xa-208|0;xa=j;U=v[g>>2];u=z[i+4>>2];r=z[i>>2];F=z[i+8>>2];s=x[b+16>>1];A=v[a+32>>2];q2(j+160|0,i);E=w[b+18|0];G=(j-(E<<4)|0)-16|0;xa=G;Ba[v[v[e>>2]+16>>2]](e,s+A|0,E,v[a+28>>2],G);a=v[c+60>>2];v[j+120>>2]=v[c+56>>2];v[j+124>>2]=a;a=v[c+52>>2];v[j+112>>2]=v[c+48>>2];v[j+116>>2]=a;a=v[c+76>>2];v[j+136>>2]=v[c+72>>2];v[j+140>>2]=a;ba=c- -64|0;a=ba;e=v[a+4>>2];v[j+128>>2]=v[a>>2];v[j+132>>2]=e;a=v[c+92>>2];v[j+152>>2]=v[c+88>>2];v[j+156>>2]=a;ca=c+80|0;a=ca;e=v[a+4>>2];v[j+144>>2]=v[a>>2];v[j+148>>2]=e;Q=z[G+4>>2];R=z[G>>2];y=C(34028234663852886e22);L=C(-34028234663852886e22);I=z[G+8>>2];B=I;M=C(-34028234663852886e22);N=C(-34028234663852886e22);O=C(34028234663852886e22);D=C(34028234663852886e22);s=w[b+18|0];if(s){H=z[j+200>>2];V=z[j+184>>2];W=z[j+196>>2];X=z[j+180>>2];k=C(-34028234663852886e22);o=C(34028234663852886e22);M=z[j+168>>2];N=z[j+164>>2];O=z[j+192>>2];D=z[j+176>>2];P=z[j+160>>2];e=0;m=C(34028234663852886e22);p=C(-34028234663852886e22);while(1){a=(e<<4)+G|0;v[a+12>>2]=0;B=z[a+8>>2];n=z[a>>2];q=z[a+4>>2];z[a+8>>2]=C(H*B)+C(C(M*n)+C(q*V));l=C(C(W*B)+C(C(N*n)+C(q*X)));z[a+4>>2]=l;B=C(C(O*B)+C(C(P*n)+C(q*D)));z[a>>2]=B;k=k>l?k:l;p=p>B?p:B;o=l>o?o:l;m=m>2]}da=c+48|0;V=C(-F);W=C(-r);X=C(-u);_=U+5|0;$=(U<<6)+f|0;Y=C(B+z[h>>2]);e=0;s=0;F=C(34028234663852886e22);H=C(-34028234663852886e22);while(1){A=s<<4;a=A+(j+112|0)|0;aa=z[a+12>>2];v[a+12>>2]=0;q=z[a+8>>2];z[a+8>>2]=B;u=z[a>>2];r=z[a+4>>2];l=C(C(q*z[j+196>>2])+C(C(z[j+164>>2]*u)+C(r*z[j+180>>2])));z[a+4>>2]=l;n=C(C(q*z[j+192>>2])+C(C(u*z[j+160>>2])+C(r*z[j+176>>2])));z[a>>2]=n;k=C(C(q*z[j+200>>2])+C(C(u*z[j+168>>2])+C(r*z[j+184>>2])));z[A+(j- -64|0)>>2]=k-B;S=ly;ea=n>F;a:{if(!(kM|(lN)){break a}E=w[b+18|0];if(!E){break a}a=((E<<4)+G|0)-16|0;m=z[a>>2];k=z[a+4>>2];a=0;A=0;b:{while(1){if(m==n&k==l){break b}p=m;o=k;J=(a<<4)+G|0;m=z[J>>2];k=z[J+4>>2];if(n==m&l==k){break b}c:{if((ll|0)){break c}P=C(k-o);o=C(C(C(p+C(1.1920928955078125e-7))*P)+C(C(l-o)*C(m-p)));p=C(n*P);J=P>C(0);if(!((J?o:p)>=(J?p:o))){break c}if((A|0)==1){break a}A=A+1|0}a=a+1|0;if((E|0)!=(a|0)){continue}break}if(!A){break a}}m=z[i+8>>2];o=z[i>>2];p=z[i+4>>2];A=v[g>>2];a=(A<<6)+f|0;v[a+48>>2]=d;z[a+32>>2]=W;z[a+16>>2]=u;v[a+12>>2]=0;k=C(C(m*C(q-I))+C(C(o*C(u-R))+C(p*C(r-Q))));z[a+44>>2]=k;z[a+40>>2]=V;z[a+36>>2]=X;z[a+28>>2]=aa;z[a+24>>2]=q;z[a+20>>2]=r;z[a+8>>2]=q-C(m*k);z[a+4>>2]=r-C(p*k);z[a>>2]=u-C(o*k);a=A+1|0;v[g>>2]=a;e=e+1|0;a=a-U|0;if(a>>>0<16){break a}A2($,a);v[g>>2]=_}L=S?L:l;H=T?H:n;y=Z?y:l;F=ea?F:n;s=s+1|0;if((s|0)!=3){continue}break}d:{if((e|0)==3){break d}A=0;e=w[b+18|0];e:{if(!e){e=0;E=0;break e}k=z[c+48>>2];l=C(z[c+64>>2]-k);m=z[c+52>>2];p=C(z[c+84>>2]-m);n=C(z[c+80>>2]-k);q=C(z[c+68>>2]-m);o=C(C(l*p)-C(n*q));I=o;D=C(o*o);r=q;o=z[c+56>>2];q=C(z[c+88>>2]-o);u=C(z[c+72>>2]-o);p=C(C(r*q)-C(p*u));l=C(C(u*n)-C(q*l));n=C(C(1)/C(K(C(D+C(C(p*p)+C(l*l))))));M=C(I*n);N=C(p*n);O=C(l*n);P=C(C(M*o)+C(C(N*k)+C(m*O)));Q=C(L+C(1.1920928955078125e-7));R=C(H+C(1.1920928955078125e-7));I=C(y+C(-1.1920928955078125e-7));Y=C(F+C(-1.1920928955078125e-7));n=z[j+128>>2];o=z[j+148>>2];p=z[j+132>>2];L=C(o-p);aa=C(C(n+C(1.1920928955078125e-7))*L);q=z[j+112>>2];l=z[j+116>>2];F=C(p-l);fa=C(C(q+C(1.1920928955078125e-7))*F);u=z[j+144>>2];H=C(l-o);ga=C(C(u+C(1.1920928955078125e-7))*H);ha=C(u-n);ia=C(n-q);ja=C(q-u);E=0;a=0;while(1){c=(a<<4)+G|0;m=z[c>>2];f:{if(mR){break f}k=z[c+4>>2];if(kQ){break f}g:{if(m==u&k==o|m==q&k==l){break g}S=kC(0);J=0;if(!((s?r:y)>=(s?y:r))){break h}J=1}s=J;if(m==n&k==p){break g}Z=kC(0);if(!((T?r:y)>=(T?y:r))){break i}if(s){break f}s=s+1|0}j:{if((S|0)==(Z|0)){break j}r=C(aa+C(C(k-p)*ha));y=C(m*L);S=L>C(0);if(!((S?r:y)>=(S?y:r))){break j}if((s|0)!=1){break g}break f}if(!s){break f}}D=z[c+8>>2];r=C(C(z[j+200>>2]*D)+C(C(z[j+192>>2]*m)+C(k*z[j+196>>2])));y=C(C(z[j+168>>2]*D)+C(C(z[j+160>>2]*m)+C(k*z[j+164>>2])));k=C(C(z[j+184>>2]*D)+C(C(z[j+176>>2]*m)+C(k*z[j+180>>2])));m=C(C(C(M*r)+C(C(N*y)+C(O*k)))-P);if(m>z[h>>2]){break f}v[j+44>>2]=0;z[j+40>>2]=r-C(M*m);z[j+36>>2]=k-C(O*m);z[j+32>>2]=y-C(N*m);fZ(j+32|0,da,ba,ca,j+16|0,j);m=z[j+16>>2];k:{if(!(m>=C(0))){break k}D=z[j>>2];if(!(D>=C(0))|!(C(m+D)<=C(1))){break k}m=z[i+8>>2];D=z[i>>2];ka=z[i+4>>2];la=z[j+40>>2];ma=z[j+32>>2];na=z[j+36>>2];e=v[g>>2];c=(e<<6)+f|0;v[c+12>>2]=0;z[c+8>>2]=r;z[c+4>>2]=k;z[c>>2]=y;s=v[j+36>>2];v[c+16>>2]=v[j+32>>2];v[c+20>>2]=s;s=v[j+44>>2];v[c+24>>2]=v[j+40>>2];v[c+28>>2]=s;v[c+48>>2]=d;z[c+44>>2]=C(m*C(la-r))+C(C(D*C(ma-y))+C(ka*C(na-k)));z[c+40>>2]=V;z[c+36>>2]=X;z[c+32>>2]=W;c=e+1|0;v[g>>2]=c;E=E+1|0;c=c-U|0;if(c>>>0<16){break k}A2($,c);v[g>>2]=_}e=w[b+18|0]}a=a+1|0;if(a>>>0<(e&255)>>>0){continue}break}}if((e&255)==(E|0)){break d}a=2;s=e;while(1){i=j+61|0;c=A;l:{if(!(w[a+i|0]?1:w[i+c|0])){break l}if(!(s&255)){s=0;break l}s=c<<4;i=j+112|0;A=s+i|0;k=z[A+4>>2];a=a<<4;i=a+i|0;o=z[i+4>>2];L=k>o?k:o;m=z[A>>2];p=z[i>>2];F=m>p?m:p;H=k>2];i=(i<<4)+G|0;n=z[i>>2];m:{if(M>(l>n?l:n)|F<(l>2];u=z[i+4>>2];if(H>(q>u?q:u)|L<(q>2]);n=C(r*C(C(1)/C(y-r)));l=C(l-C(n*C(C(B+z[A>>2])-l)));y=C(l-B);if(y>z[h>>2]){break m}q=z[j+168>>2];D=z[j+160>>2];P=z[j+164>>2];u=z[j+184>>2];Q=z[j+176>>2];R=z[j+180>>2];r=z[j+200>>2];I=z[j+192>>2];Y=z[j+196>>2];i=v[g>>2];e=(i<<6)+f|0;v[e+48>>2]=d;z[e+32>>2]=W;v[e+12>>2]=0;z[e+44>>2]=y;z[e+40>>2]=V;z[e+36>>2]=X;v[e+28>>2]=0;y=C(m-C(n*O));n=C(k-C(n*N));I=C(C(I*y)+C(Y*n));z[e+24>>2]=C(r*l)+I;Q=C(C(Q*y)+C(n*R));z[e+20>>2]=C(u*l)+Q;R=C(q*l);l=C(C(D*y)+C(n*P));z[e+16>>2]=R+l;z[e+8>>2]=C(r*B)+I;z[e+4>>2]=C(u*B)+Q;z[e>>2]=C(q*B)+l;e=i+1|0;v[g>>2]=e;e=e-U|0;if(e>>>0<16){break m}A2($,e);v[g>>2]=_}e=w[b+18|0];s=e;i=a;a=a+1|0;if(e>>>0>a>>>0){continue}break}}a=c;A=a+1|0;if((A|0)!=3){continue}break}}xa=j+208|0}function Iw(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=xa-16|0;xa=i;j=Tv(a,b);if(!(!j|w[a+76|0]==(b|0))){t[i+15|0]=0;e=B(b+3&-4,288);Ov(a+640|0,e,i+15|0);u[a+78>>1]=e;v[a+68>>2]=v[a+640>>2];h=xa-80|0;xa=h;d=b;c=a+112|0;if((v[c+124>>2]&2147483647)>>>0>>0){zw(c+116|0,d)}v[c+120>>2]=d;if((v[c+136>>2]&2147483647)>>>0>>0){zw(c+128|0,d)}v[c+132>>2]=d;if((v[c+148>>2]&2147483647)>>>0>>0){zw(c+140|0,d)}v[c+144>>2]=d;if((v[c+160>>2]&2147483647)>>>0>>0){zw(c+152|0,d)}v[c+156>>2]=d;if((v[c+304>>2]&2147483647)>>>0>>0){Aw(c+296|0,d)}v[c+300>>2]=d;if((v[c+316>>2]&2147483647)>>>0>>0){Aw(c+308|0,d)}v[c+312>>2]=d;if((v[c+208>>2]&2147483647)>>>0>>0){zw(c+200|0,d)}v[c+204>>2]=d;if((v[c+220>>2]&2147483647)>>>0>>0){Rv(c+212|0,d)}v[c+216>>2]=d;if((v[c+232>>2]&2147483647)>>>0>>0){e=0;a:{if(!d){break a}b=B(d,192);e=0;if(!b){break a}e=v[37696];a=Ba[v[v[e>>2]+20>>2]](e)|0?25945:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,b,a,16608,553)|0}a=v[c+224>>2];b=e;f=b+B(v[c+228>>2],192)|0;if(b>>>0>>0){while(1){z[b>>2]=z[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];z[b+28>>2]=z[a+28>>2];z[b+32>>2]=z[a+32>>2];z[b+36>>2]=z[a+36>>2];z[b+40>>2]=z[a+40>>2];z[b+44>>2]=z[a+44>>2];z[b+48>>2]=z[a+48>>2];z[b+52>>2]=z[a+52>>2];z[b+56>>2]=z[a+56>>2];z[b+60>>2]=z[a+60>>2];z[b+64>>2]=z[a+64>>2];z[b+68>>2]=z[a+68>>2];z[b+72>>2]=z[a+72>>2];z[b+76>>2]=z[a+76>>2];z[b+80>>2]=z[a+80>>2];z[b+84>>2]=z[a+84>>2];z[b+88>>2]=z[a+88>>2];z[b+92>>2]=z[a+92>>2];z[b+96>>2]=z[a+96>>2];z[b+100>>2]=z[a+100>>2];z[b+104>>2]=z[a+104>>2];z[b+108>>2]=z[a+108>>2];z[b+112>>2]=z[a+112>>2];z[b+116>>2]=z[a+116>>2];z[b+120>>2]=z[a+120>>2];z[b+124>>2]=z[a+124>>2];z[b+128>>2]=z[a+128>>2];z[b+132>>2]=z[a+132>>2];z[b+136>>2]=z[a+136>>2];z[b+140>>2]=z[a+140>>2];z[b+144>>2]=z[a+144>>2];z[b+148>>2]=z[a+148>>2];z[b+152>>2]=z[a+152>>2];z[b+156>>2]=z[a+156>>2];z[b+160>>2]=z[a+160>>2];z[b+164>>2]=z[a+164>>2];z[b+168>>2]=z[a+168>>2];z[b+172>>2]=z[a+172>>2];z[b+176>>2]=z[a+176>>2];z[b+180>>2]=z[a+180>>2];z[b+184>>2]=z[a+184>>2];z[b+188>>2]=z[a+188>>2];a=a+192|0;b=b+192|0;if(f>>>0>b>>>0){continue}break}}b:{if(v[c+232>>2]<0){break b}b=v[c+224>>2];if(!b){break b}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}v[c+232>>2]=d;v[c+224>>2]=e}v[c+228>>2]=d;if((v[c+244>>2]&2147483647)>>>0>>0){e=0;c:{if(!d){break c}b=B(d,112);if(!b){break c}e=v[37696];a=Ba[v[v[e>>2]+20>>2]](e)|0?25823:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,b,a,16608,553)|0}f=v[c+236>>2];a=v[c+240>>2];if((a|0)>0){g=B(a,112)+e|0;a=f;b=e;while(1){z[b>>2]=z[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];z[b+28>>2]=z[a+28>>2];z[b+32>>2]=z[a+32>>2];z[b+36>>2]=z[a+36>>2];z[b+40>>2]=z[a+40>>2];z[b+44>>2]=z[a+44>>2];z[b+48>>2]=z[a+48>>2];z[b+52>>2]=z[a+52>>2];z[b+56>>2]=z[a+56>>2];z[b+60>>2]=z[a+60>>2];z[b- -64>>2]=z[a- -64>>2];z[b+68>>2]=z[a+68>>2];z[b+72>>2]=z[a+72>>2];z[b+76>>2]=z[a+76>>2];z[b+80>>2]=z[a+80>>2];z[b+84>>2]=z[a+84>>2];z[b+88>>2]=z[a+88>>2];z[b+92>>2]=z[a+92>>2];z[b+96>>2]=z[a+96>>2];z[b+100>>2]=z[a+100>>2];z[b+104>>2]=z[a+104>>2];v[b+108>>2]=v[a+108>>2];a=a+112|0;b=b+112|0;if(g>>>0>b>>>0){continue}break}}if(!(!f|v[c+244>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,f)}v[c+244>>2]=d;v[c+236>>2]=e}v[c+240>>2]=d;if((v[c+256>>2]&2147483647)>>>0>>0){b=0;d:{if(!d){break d}e=B(d,36);if(!e){break d}b=v[37696];a=Ba[v[v[b>>2]+20>>2]](b)|0?30677:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,a,16608,553)|0}e=v[c+248>>2];a=v[c+252>>2];if((a|0)>0){g=B(a,36)+b|0;a=b;while(1){f=v[e+4>>2];v[a>>2]=v[e>>2];v[a+4>>2]=f;v[a+32>>2]=v[e+32>>2];f=v[e+28>>2];v[a+24>>2]=v[e+24>>2];v[a+28>>2]=f;f=v[e+20>>2];v[a+16>>2]=v[e+16>>2];v[a+20>>2]=f;f=v[e+12>>2];v[a+8>>2]=v[e+8>>2];v[a+12>>2]=f;e=e+36|0;a=a+36|0;if(g>>>0>a>>>0){continue}break}e=v[c+248>>2]}if(!(!e|v[c+256>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,e)}v[c+256>>2]=d;v[c+248>>2]=b}v[c+252>>2]=d;h=J9(h,0,76);g=h;f=c+260|0;if((v[f+8>>2]&2147483647)>>>0>>0){Bw(f,d)}e=v[f+4>>2];if((e|0)<(d|0)){a=v[f>>2];b=a+B(d,76)|0;a=a+B(e,76)|0;while(1){z[a>>2]=z[g>>2];z[a+4>>2]=z[g+4>>2];z[a+8>>2]=z[g+8>>2];z[a+12>>2]=z[g+12>>2];z[a+16>>2]=z[g+16>>2];z[a+20>>2]=z[g+20>>2];z[a+24>>2]=z[g+24>>2];z[a+28>>2]=z[g+28>>2];z[a+32>>2]=z[g+32>>2];z[a+36>>2]=z[g+36>>2];z[a+40>>2]=z[g+40>>2];z[a+44>>2]=z[g+44>>2];z[a+48>>2]=z[g+48>>2];z[a+52>>2]=z[g+52>>2];z[a+56>>2]=z[g+56>>2];z[a+60>>2]=z[g+60>>2];z[a- -64>>2]=z[g+64>>2];z[a+68>>2]=z[g+68>>2];v[a+72>>2]=v[g+72>>2];a=a+76|0;if(b>>>0>a>>>0){continue}break}}v[f+4>>2]=d;if((v[c+280>>2]&2147483647)>>>0>>0){Bw(c+272|0,d)}v[c+276>>2]=d;if((v[c+292>>2]&2147483647)>>>0>>0){e=0;e:{if(!d){break e}b=B(d,96);if(!b){break e}e=v[37696];a=Ba[v[v[e>>2]+20>>2]](e)|0?49623:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,b,a,16608,553)|0}f=v[c+284>>2];a=v[c+288>>2];if((a|0)>0){g=B(a,96)+e|0;a=f;b=e;while(1){z[b>>2]=z[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];z[b+28>>2]=z[a+28>>2];z[b+32>>2]=z[a+32>>2];z[b+36>>2]=z[a+36>>2];z[b+40>>2]=z[a+40>>2];z[b+44>>2]=z[a+44>>2];z[b+48>>2]=z[a+48>>2];z[b+52>>2]=z[a+52>>2];z[b+56>>2]=z[a+56>>2];z[b+60>>2]=z[a+60>>2];z[b+64>>2]=z[a+64>>2];z[b+68>>2]=z[a+68>>2];z[b+72>>2]=z[a+72>>2];z[b+76>>2]=z[a+76>>2];z[b+80>>2]=z[a+80>>2];z[b+84>>2]=z[a+84>>2];z[b+88>>2]=z[a+88>>2];z[b+92>>2]=z[a+92>>2];a=a+96|0;b=b+96|0;if(g>>>0>b>>>0){continue}break}}if(!(!f|v[c+292>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,f)}v[c+292>>2]=d;v[c+284>>2]=e}v[c+288>>2]=d;if((v[c+392>>2]&2147483647)>>>0>>0){Rv(c+384|0,d)}v[c+388>>2]=d;if((v[c+404>>2]&2147483647)>>>0>>0){Sv(c+396|0,d)}v[c+400>>2]=d;if((v[c+112>>2]&2147483647)>>>0>>0){zw(c+104|0,d)}v[c+108>>2]=d;if((v[c+172>>2]&2147483647)>>>0>>0){zw(c+164|0,d)}v[c+168>>2]=d;Qv(c+320|0,d,h);b=v[c+340>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);v[c+340>>2]=0}b=v[c+344>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);v[c+344>>2]=0}b=v[c+348>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);v[c+348>>2]=0}a=v[37696];f=B(d,160);a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,f,24422,9698,172)|0;v[a+144>>2]=0;v[c+340>>2]=a;a=v[37696];e=B(d,80);a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,e,24422,9698,173)|0;t[a+78|0]=0;v[a+72>>2]=-1;v[c+344>>2]=a;b=v[37696];a=B(d,96);b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,9698,174)|0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[c+348>>2]=b;b=d<<5;J9(v[c+116>>2],0,b);J9(v[c+128>>2],0,b);J9(v[c+140>>2],0,b);J9(v[c+152>>2],0,b);J9(v[c+200>>2],0,b);J9(v[c+212>>2],0,B(d,28));J9(v[c+340>>2],0,f);J9(v[c+344>>2],0,e);J9(v[c+348>>2],0,a);xa=h+80|0}xa=i+16|0;return j|0}function Py(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,y,A,D){var E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=0,U=C(0),V=C(0),W=C(0),X=0,Y=0,Z=0,_=C(0),$=0,aa=0,ba=0,ca=0,da=0;F=xa-32|0;J=F;xa=F;a:{if(!b){s=0;t[d|0]=0;v[e>>2]=0;v[f>>2]=0;v[h>>2]=0;u[g>>1]=0;t[n|0]=0;break a}G=B(b,5);$=G>>>0>1024;t[J+28|0]=$;b:{if(G>>>0>=1025){M=u9(G,12597,87);break b}M=F-(G+15&-16)|0;xa=M}v[J+24>>2]=M;Y=x[m+2>>1];Z=x[m>>1];c:{if(b>>>0<2){G=1;F=0;N=1;K=1;R=1;break c}O=z[a>>2];P=z[a+4>>2];Q=z[a+8>>2];F=0;R=1;K=1;N=b;G=1;T=Z;I=Y;L=1;while(1){X=(L<<6)+a|0;V=z[X+8>>2];W=z[X>>2];S=z[X+4>>2];d:{e:{if(C(C(Q*V)+C(C(O*W)+C(P*S)))>1]!=(T&65535)){break e}if(x[X+2>>1]==(I&65535)){break d}}I=(B(R,5)+M|0)-5|0;t[I+4|0]=G&1;aa=L-F|0;t[I+3|0]=aa;t[I+2|0]=255;t[I+1|0]=L;t[I|0]=F;if(H){t[H+3|0]=aa+w[H+3|0]}f:{g:{if(R>>>0<2){T=0;break g}X=(L<<2)+m|0;T=1;E=1;while(1){h:{G=E-1|0;H=B(G,5)+M|0;if(!w[H+4|0]){break h}F=w[H|0];I=(F<<6)+a|0;if(!(C(C(V*z[I+8>>2])+C(C(W*z[I>>2])+C(S*z[I+4>>2])))>=C(.9990000128746033))){break h}F=(F<<2)+m|0;if(x[X>>1]!=x[F>>1]|x[X+2>>1]!=x[F+2>>1]){break h}while(1){F=B(G,5)+M|0;G=w[F+2|0];if((G|0)!=255){continue}break}t[F+2|0]=R;break f}E=E+1|0;T=R>>>0>E>>>0;if((E|0)!=(R|0)){continue}break}}H=0}R=R+1|0;G=T^1;K=(G&1)+K|0;N=(aa>>>0>1&r)+N|0;F=(L<<2)+m|0;I=x[F+2>>1];T=x[F>>1];F=L;Q=V;P=S;O=W}L=L+1|0;if((L|0)!=(b|0)){continue}break}}I=(B(R,5)+M|0)-5|0;t[I+4|0]=G&1;G=b-F|0;t[I+3|0]=G;t[I+2|0]=255;t[I+1|0]=b;t[I|0]=F;T=(G>>>0>1&r)+N|0;F=i?r?T-b<<2:0:0;if(H){t[H+3|0]=G+w[H+3|0]}H=i+F|0;t[n|0]=K;I=(l^-1)&k;N=B(T,I?64:16);K=B(I?T:K,48)+o|0;i:{j:{k:{l:{m:{n:{if(!(!s|(o|I))){i=N+v[s+4>>2]|0;v[s+4>>2]=i;G=v[s+8>>2];E=(G+v[s>>2]|0)-i|0;q=v[s+12>>2];p=v[s+4>>2];k=K+v[y+4>>2]|0;v[y+4>>2]=k;i=v[y+8>>2];F=(i+v[y>>2]|0)-k|0;p=i>>>0<=v[y+12>>2]+v[y+4>>2]>>>0|G>>>0<=p+q>>>0;if(H){k=v[A+4>>2]+(H<>2]=k;i=v[A+8>>2];if(p|i>>>0<=v[A+12>>2]+v[A+4>>2]>>>0){break k}i=(i+v[A>>2]|0)-k|0;H=D?i+(b<<2)|0:0;s=N+K|0;break l}if(p){break k}s=N+K|0;break n}s=(N+K|0)+15&-16;A=H<>>0>=16385){F=Jy(v[q>>2],G);break o}p:{y=v[q+4>>2];if(y){k=v[q+8>>2];i=k+G|0;if(i>>>0<16385){break p}}F=Ky(v[q>>2],p);v[q+8>>2]=G;v[q+4>>2]=F;break o}v[q+8>>2]=i;F=k+y|0;break o}q=i+15&-16;if(q>>>0>=16385){F=Jy(v[c+500>>2],q);break o}q:{p=v[c+504>>2];if(p){k=v[c+508>>2];i=k+q|0;if(i>>>0<16385){break q}}F=Ly(v[c+500>>2]);v[c+508>>2]=q;v[c+504>>2]=F;break o}v[c+508>>2]=i;F=k+p|0}E=F+K|0;if(A){break m}}H=0;i=0;break l}if(!F){break k}i=s+F|0;H=(ba=J9(i,0,A)+(b<<2)|0,ca=0,da=D,da?ba:ca);break j}if(F){break j}}s=0;t[d|0]=0;v[e>>2]=0;v[f>>2]=0;v[h>>2]=0;u[g>>1]=0;t[n|0]=0;break i}if(c){v[c+7140>>2]=v[c+7140>>2]+s;v[c+7168>>2]=v[c+7168>>2]+s}u[g>>1]=s;b=v[j>>2];c=b+(Z<<5)|0;b=b+(Y<<5)|0;_=Ny(c,b);g=J+16|0;z[g+4>>2]=1;z[g>>2]=1;Oy(J,g,c,b);L=v[J+8>>2];V=z[J+4>>2];W=z[J>>2];v[e>>2]=F;v[f>>2]=E;v[h>>2]=i;n=o+F|0;r:{if(!I){if(!R){break r}K=0;h=0;while(1){i=B(K,5)+M|0;s:{if(!w[i+4|0]){break s}I=w[i|0];b=(I<<2)+m|0;c=x[b+2>>1];b=x[b>>1];if(!((b|0)==(Z&65535)&(c|0)==(Y&65535))){e=v[j>>2];f=e+(b<<5)|0;e=e+(c<<5)|0;_=Ny(f,e);g=J+16|0;z[g+4>>2]=1;z[g>>2]=1;Oy(J,g,f,e);L=v[J+8>>2];V=z[J+4>>2];W=z[J>>2];I=w[i|0];Y=c;Z=b}e=(I<<6)+a|0;z[n+16>>2]=z[e>>2];z[n+20>>2]=z[e+4>>2];z[n+24>>2]=z[e+8>>2];g=w[i+3|0];t[n+40|0]=h;t[n+41|0]=g;z[n+36>>2]=W;z[n+32>>2]=V;u[n+46>>1]=c;u[n+44>>1]=b;z[n+28>>2]=_;t[n+43|0]=D;t[n+42|0]=L;v[n+8>>2]=1065353216;v[n+12>>2]=1065353216;v[n>>2]=1065353216;v[n+4>>2]=1065353216;if(!(!r|g>>>0<2)){t[n+41|0]=g+1;O=C(0);P=C(0);Q=C(0);U=C(0);F=K;if((F|0)!=255){while(1){e=B(F,5)+M|0;b=w[e|0];f=w[e+1|0];t:{if(b>>>0>=f>>>0){break t}c=b^-1;u:{if(!(f-b&1)){G=b;break u}G=b+1|0;b=(b<<6)+a|0;O=C(O+z[b+12>>2]);P=C(P+z[b+16>>2]);U=C(U+z[b+24>>2]);Q=C(Q+z[b+20>>2])}if((c|0)==(0-f|0)){break t}while(1){b=(G<<6)+a|0;O=C(C(O+z[b+12>>2])+z[b+76>>2]);P=C(C(P+z[b+16>>2])+z[b+80>>2]);U=C(C(U+z[b+24>>2])+z[b+88>>2]);Q=C(C(Q+z[b+20>>2])+z[b+84>>2]);G=G+2|0;if((f|0)!=(G|0)){continue}break}}F=w[e+2|0];if((F|0)!=255){continue}break}}S=C(C(1)/C(g>>>0));if(H){v[H>>2]=v[((w[M+1275|0]<<6)+a|0)+52>>2];H=H+4|0}else{H=0}z[E+12>>2]=S*O;z[E+8>>2]=S*U;z[E+4>>2]=S*Q;z[E>>2]=S*P;E=E+16|0;h=h+1|0}n=n+48|0;F=K;if((F|0)==255){break s}while(1){i=B(F,5)+M|0;b=w[i|0];g=w[i+1|0];if(b>>>0>>0){f=g+h|0;G=b;while(1){h=(G<<6)+a|0;e=v[h+20>>2];c=v[h+16>>2];z[E+8>>2]=z[h+24>>2];v[E>>2]=c;v[E+4>>2]=e;z[E+12>>2]=z[h+12>>2];if(H){v[H>>2]=v[h+52>>2];H=H+4|0}else{H=0}E=E+16|0;G=G+1|0;if((g|0)!=(G|0)){continue}break}h=f-b|0}F=w[i+2|0];if((F|0)!=255){continue}break}}K=K+1|0;if((R|0)!=(K|0)){continue}break}break r}if(!R){break r}k=(l?6:2)|D;b=0;N=0;while(1){i=B(b,5)+M|0;v:{if(!w[i+4|0]){break v}c=(w[i|0]<<2)+m|0;f=x[c+2>>1];e=x[c>>1];if(!((e|0)==(Z&65535)&(f|0)==(Y&65535))){c=v[j>>2];g=c+(e<<5)|0;c=c+(f<<5)|0;_=Ny(g,c);h=J+16|0;z[h+4>>2]=1;z[h>>2]=1;Oy(J,h,g,c);L=v[J+8>>2];V=z[J+4>>2];W=z[J>>2];Y=f;Z=e}l=w[i+3|0];t[n+42|0]=L;t[n+40|0]=N;t[n+41|0]=l;z[n+36>>2]=W;z[n+32>>2]=V;u[n+46>>1]=f;u[n+44>>1]=e;z[n+28>>2]=_;z[n+16>>2]=z[a>>2];z[n+20>>2]=z[a+4>>2];z[n+24>>2]=z[a+8>>2];t[n+43|0]=k;v[n+8>>2]=1065353216;v[n+12>>2]=1065353216;v[n>>2]=1065353216;v[n+4>>2]=1065353216;if(!(!r|l>>>0<2)){O=C(0);P=C(0);Q=C(0);U=C(0);F=b;if((b|0)!=255){while(1){h=B(F,5)+M|0;c=w[h|0];i=w[h+1|0];w:{if(c>>>0>=i>>>0){break w}g=c^-1;x:{if(!(i-c&1)){G=c;break x}G=c+1|0;c=(c<<6)+a|0;O=C(O+z[c+12>>2]);U=C(U+z[c+16>>2]);P=C(P+z[c+24>>2]);Q=C(Q+z[c+20>>2])}if((g|0)==(0-i|0)){break w}while(1){c=(G<<6)+a|0;O=C(C(O+z[c+12>>2])+z[c+76>>2]);U=C(C(U+z[c+16>>2])+z[c+80>>2]);P=C(C(P+z[c+24>>2])+z[c+88>>2]);Q=C(C(Q+z[c+20>>2])+z[c+84>>2]);G=G+2|0;if((i|0)!=(G|0)){continue}break}}F=w[h+2|0];if((F|0)!=255){continue}break}}S=C(C(1)/C(l>>>0));if(H){v[H>>2]=v[((w[M+1275|0]<<6)+a|0)+52>>2];H=H+4|0}else{H=0}t[n+41|0]=l+1;z[E+12>>2]=S*O;z[E+8>>2]=S*P;z[E+4>>2]=S*Q;z[E>>2]=S*U;z[E+32>>2]=z[a>>2];z[E+36>>2]=z[a+4>>2];z[E+40>>2]=z[a+8>>2];z[E+60>>2]=V;z[E+56>>2]=W;v[E+24>>2]=0;v[E+28>>2]=2139095039;v[E+16>>2]=0;v[E+20>>2]=0;u[E+54>>1]=f;u[E+52>>1]=e;v[E+48>>2]=L;z[E+44>>2]=_;E=E- -64|0;N=N+1|0}n=n+48|0;F=b;if((b|0)==255){break v}while(1){o=B(F,5)+M|0;c=w[o|0];l=w[o+1|0];if(c>>>0>>0){i=l+N|0;G=c;while(1){p=(G<<6)+a|0;h=v[p+20>>2];g=v[p+16>>2];z[E+8>>2]=z[p+24>>2];v[E>>2]=g;v[E+4>>2]=h;z[E+12>>2]=z[p+12>>2];z[E+32>>2]=z[p>>2];z[E+36>>2]=z[p+4>>2];z[E+40>>2]=z[p+8>>2];z[E+60>>2]=V;z[E+56>>2]=W;v[E+24>>2]=0;v[E+28>>2]=2139095039;v[E+16>>2]=0;v[E+20>>2]=0;u[E+54>>1]=f;u[E+52>>1]=e;v[E+48>>2]=L;z[E+44>>2]=_;if(H){v[H>>2]=v[p+52>>2];H=H+4|0}else{H=0}E=E- -64|0;G=G+1|0;if((l|0)!=(G|0)){continue}break}N=i-c|0}F=w[o+2|0];if((F|0)!=255){continue}break}}b=b+1|0;if((R|0)!=(b|0)){continue}break}}t[d|0]=T;$=w[J+28|0]}if(!$){break a}v9(v[J+24>>2])}xa=J+32|0;return s}function xC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),l=C(0),m=0,n=C(0),o=0,q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),A=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=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;if(w[a+7648|0]){a=1}else{m=c;W=d;G=xa-32|0;xa=G;l=z[b+84>>2];h=z[b+76>>2];i=z[b+88>>2];k=z[b+72>>2];g=z[b+92>>2];f=z[b+80>>2];s=C(C(g+f)*C(.5));z[G+24>>2]=s;t=C(C(i+h)*C(.5));z[G+20>>2]=t;u=C(C(l+k)*C(.5));z[G+16>>2]=u;S=C(C(g-f)*C(.5));z[G+8>>2]=S;T=C(C(i-h)*C(.5));z[G+4>>2]=T;U=C(C(l-k)*C(.5));z[G>>2]=U;o=a+16|0;X=v[o+636>>2];d=v[o+28>>2];a=1;a:{if(!(X|d)){break a}n=z[W>>2];if(n==C(34028234663852886e22)){i=z[o+664>>2];k=z[o+680>>2];r=C(S+C(i+k));g=z[o+660>>2];f=z[o+676>>2];I=C(T+C(g+f));i=C(C(i-k)-S);H=C(C(g-f)-T);g=z[o+656>>2];f=z[o+672>>2];l=C(U+C(g+f));k=C(C(g-f)-U);if(d){F=C(85070586659632215e21);n=C(-85070586659632215e21);f=C(-85070586659632215e21);L=C(-85070586659632215e21);M=C(85070586659632215e21);N=C(85070586659632215e21);while(1){a=B(J,24)+o|0;g=z[a+180>>2];n=g>2];f=f>g?f:g;g=z[a+172>>2];L=g>2];F=g>F?F:g;g=z[a+164>>2];M=g>M?M:g;g=z[a+160>>2];N=g>N?N:g;J=J+1|0;if((J|0)!=(d|0)){continue}break}f=C(T+f);I=fi?i:f;f=C(M-T);H=f>H?H:f;f=C(N-U);k=f>k?k:f;f=C(S+n);r=f>2];g=z[m>>2];f=z[m+4>>2];k=C(C(q*i)+C(C(C(C(l+k)*C(.5))*g)+C(C(C(I+H)*C(.5))*f)));f=C(C(s*i)+C(C(u*g)+C(t*f)));g=C(D(C(C(k-h)-f)));f=C(D(C(C(h+k)-f)));n=C(n+(f>g?g:f));z[W>>2]=n}q=z[m+8>>2];c=q>C(0);i=C(-q);A=z[m+4>>2];b=A>C(0);k=C(-A);E=z[m>>2];a=E>C(0);g=C(-E);b:{if(n>=C(34028234663852886e22)){F=A==C(0)?t:A>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);n=E==C(0)?u:E>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);if(q==C(0)){f=s;break b}f=q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break b}f=C(s+C(n*q));F=C(t+C(n*A));n=C(u+C(n*E))}O=c?q:i;P=b?A:k;Q=a?E:g;L=fF?t:F;N=ns?s:f;F=tu?u:n;if(d){J=0;while(1){a=B(J,24)+o|0;g=z[a+160>>2];f=z[a+172>>2];k=C(C(g+f)*C(.5));H=C(U+C(C(f-g)*C(.5)));c:{if(!(C(k+H)>=n)|!(C(k-H)<=N)){break c}g=z[a+176>>2];f=z[a+164>>2];h=C(T+C(C(g-f)*C(.5)));g=C(C(f+g)*C(.5));i=C(t-g);k=C(u-k);f=C(C(E*i)-C(A*k));if(!(C(C(P*H)+C(Q*h))>=(f>C(0)?f:C(-f)))|!(C(g+h)>=F)|!(C(g-h)<=M)){break c}g=z[a+180>>2];f=z[a+168>>2];l=C(S+C(C(g-f)*C(.5)));r=C(C(O*h)+C(P*l));h=C(C(f+g)*C(.5));f=C(s-h);g=C(C(A*f)-C(q*i));if(!(r>=(g>C(0)?g:C(-g)))|!(C(h+l)>=I)|!(C(h-l)<=L)){break c}f=C(C(q*k)-C(E*f));if(!(C(C(O*H)+C(Q*l))>=(f>C(0)?f:C(-f)))){break c}a=0;if(!(Ba[v[v[e>>2]>>2]](e,W,((J<<3)+o|0)+32|0)|0)){break a}d=v[o+28>>2]}J=J+1|0;if(J>>>0>>0){continue}break}}a=1;if(!X){break a}f=z[o+656>>2];l=C(U+z[o+672>>2]);a=1;if(!(C(f+l)>=n)){break a}a=1;if(!(C(f-l)<=N)){break a}h=C(T+z[o+676>>2]);i=z[o+660>>2];k=C(t-i);g=C(u-f);f=C(C(E*k)-C(A*g));a=1;if(!(C(C(P*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break a}a=1;if(!(C(i+h)>=F)){break a}a=1;if(!(C(i-h)<=M)){break a}r=C(O*h);h=C(S+z[o+680>>2]);i=z[o+664>>2];f=C(s-i);k=C(C(A*f)-C(q*k));a=1;if(!(C(r+C(P*h))>=(k>C(0)?k:C(-k)))){break a}a=1;if(!(C(i+h)>=I)){break a}a=1;if(!(C(i-h)<=L)){break a}f=C(C(q*g)-C(E*f));a=1;if(!(C(C(O*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break a}a=v[o+644>>2]<<2;H=z[a+G>>2];r=z[a+(G+16|0)>>2];fa=a+m|0;g=z[fa>>2];f=z[W>>2];z[G+28>>2]=f;f=C(r+C(f*g));a=(p(C(H+(fr?r:f)-H)),j(2));d=(a|0)<0?a^-1:a|-2147483648;ga=o+688|0;ha=v[m+4>>2]>>>30&2|v[m>>2]>>>29&4|v[m+8>>2]>>>31;ia=ha<<1;_=x[(ga+ia|0)+208>>1];ja=1;d:{while(1){Y=_&7;a=Y<<2;e:{if(!v[a+ga>>2]){break e}b=(Y<<5)+o|0;f=z[b+736>>2];l=C(U+z[b+752>>2]);if(!(C(f+l)>=n)|!(C(f-l)<=N)){break e}h=C(T+z[b+756>>2]);i=z[b+740>>2];k=C(t-i);g=C(u-f);f=C(C(E*k)-C(A*g));if(!(C(C(P*l)+C(Q*h))>=(f>C(0)?f:C(-f)))|!(C(i+h)>=F)|!(C(i-h)<=M)){break e}V=C(O*h);h=C(S+z[b+760>>2]);i=z[b+744>>2];f=C(s-i);k=C(C(A*f)-C(q*k));if(!(C(V+C(P*h))>=(k>C(0)?k:C(-k)))|!(C(i+h)>=I)|!(C(i-h)<=L)){break e}f=C(C(q*g)-C(E*f));if(!(C(C(O*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break e}$=B(Y,224)+o|0;ka=$+912|0;aa=x[(ka+ia|0)+208>>1];ma=a+o|0;ba=0;while(1){b=aa&7;a=b<<2;f:{if(!v[a+ka>>2]){break f}m=(b<<5)+$|0;f=z[m+960>>2];l=C(U+z[m+976>>2]);if(!(C(f+l)>=n)|!(C(f-l)<=N)){break f}h=C(T+z[m+980>>2]);i=z[m+964>>2];k=C(t-i);g=C(u-f);f=C(C(E*k)-C(A*g));if(!(C(C(P*l)+C(Q*h))>=(f>C(0)?f:C(-f)))|!(C(i+h)>=F)|!(C(i-h)<=M)){break f}V=C(O*h);h=C(S+z[m+984>>2]);i=z[m+968>>2];f=C(s-i);k=C(C(A*f)-C(q*k));if(!(C(V+C(P*h))>=(k>C(0)?k:C(-k)))|!(C(i+h)>=I)|!(C(i-h)<=L)){break f}f=C(C(q*g)-C(E*f));if(!(C(C(O*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break f}na=v[(a+$|0)+932>>2]+v[ma+708>>2]|0;la=1;ca=(B(Y,1120)+o|0)+B(b,224)|0;X=ca+2032|0;da=x[(X+(ha<<1)|0)+208>>1];Z=0;while(1){b=d;a=c;g:{h:{m=da&7;c=m<<2;d=v[c+X>>2];if(!d){break h}m=(m<<5)+ca|0;f=z[m+2080>>2];l=C(U+z[m+2096>>2]);if(!(C(f+l)>=n)|!(C(f-l)<=N)){break h}h=C(T+z[m+2100>>2]);i=z[m+2084>>2];k=C(t-i);g=C(u-f);f=C(C(E*k)-C(A*g));if(!(C(C(P*l)+C(Q*h))>=(f>C(0)?f:C(-f)))|!(C(i+h)>=F)|!(C(i-h)<=M)){break h}V=C(O*h);h=C(S+z[m+2104>>2]);i=z[m+2088>>2];f=C(s-i);k=C(C(A*f)-C(q*k));if(!(C(V+C(P*h))>=(k>C(0)?k:C(-k)))|!(C(i+h)>=I)|!(C(i-h)<=L)){break h}f=C(C(q*g)-C(E*f));if(!(C(C(O*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break h}c=v[(c+ca|0)+2052>>2]+na|0;J=v[o+24>>2]+(c<<3)|0;R=v[o+20>>2]+(c<<5)|0;m=R+(d<<5)|0;d=b;c=a;while(1){i:{j:{if(y[R+28>>2]>>0){break j}if(y[R+12>>2]>c>>>0){break g}f=z[R>>2];l=C(U+z[R+16>>2]);if(!(C(f+l)>=n)|!(C(f-l)<=N)){break j}h=C(T+z[R+20>>2]);i=z[R+4>>2];k=C(t-i);g=C(u-f);f=C(C(E*k)-C(A*g));if(!(C(C(P*l)+C(Q*h))>=(f>C(0)?f:C(-f)))|!(C(i+h)>=F)|!(C(i-h)<=M)){break j}V=C(O*h);h=C(S+z[R+24>>2]);i=z[R+8>>2];f=C(s-i);k=C(C(A*f)-C(q*k));if(!(C(V+C(P*h))>=(k>C(0)?k:C(-k)))|!(C(i+h)>=I)|!(C(i-h)<=L)){break j}f=C(C(q*g)-C(E*f));if(!(C(C(O*l)+C(Q*h))>=(f>C(0)?f:C(-f)))){break j}f=z[G+28>>2];if(!(Ba[v[v[e>>2]>>2]](e,G+28|0,J)|0)){break i}i=z[G+28>>2];if(!(i>2]));c=(p(C(H+(fr?r:f)-H)),j(2));d=(d|0)<0?d^-1:d|-2147483648;k=C(s+C(q*i));L=ks?s:k;F=g>t?t:g;n=f>u?u:f}J=J+8|0;R=R+32|0;if((m|0)!=(R|0)){continue}break g}break}d=b;c=a;if(la){break d}break f}d=b;c=a}da=da>>>3|0;la=Z>>>0<4;Z=Z+1|0;if((Z|0)!=5){continue}break}}aa=aa>>>3|0;ba=ba+1|0;if((ba|0)!=5){continue}break}}_=_>>>3|0;ja=ea>>>0<4;ea=ea+1|0;if((ea|0)!=5){continue}break}z[W>>2]=z[G+28>>2]}a=!ja}xa=G+32|0;a=a&1}return a|0}function PF(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,z=0,A=0;k=xa-16|0;xa=k;d=xa-16|0;xa=d;b=a;c=v[b+80>>2];a=v[b+56>>2]<<1;a:{if(c>>>0>=a>>>0){break a}f=a;a=v[b+84>>2];f=((f+a|0)-1>>>0)/(a>>>0)|0;e=v[b+68>>2];g=f-e|0;v[b+80>>2]=c+B(a,g);if((e|0)==(f|0)){break a}e=b- -64|0;c=0;while(1){a=0;f=v[b+84>>2]<<3;if(f){a=v[37696];a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,f,24422,16683,84)|0}v[d+12>>2]=a;f=v[b+68>>2];b:{if(f>>>0>=(v[b+72>>2]&2147483647)>>>0){rF(e,d+12|0);break b}v[v[b+64>>2]+(f<<2)>>2]=a;v[b+68>>2]=f+1}c=c+1|0;if((g|0)!=(c|0)){continue}break}}c=v[b+288>>2];if(c){a=0;while(1){g=v[v[b+284>>2]+(a<<2)>>2];f=v[b+60>>2];e=(g>>>0)/(f>>>0)|0;f=v[v[b+40>>2]+(e<<2)>>2]+(g-B(e,f)<<4)|0;if(!(w[f+4|0]&3)){BF(b,g);u[f+4>>1]=x[f+4>>1]|1;c=v[b+288>>2]}a=a+1|0;if(c>>>0>a>>>0){continue}break}}c=v[b+300>>2];if(c){a=0;while(1){g=v[v[b+296>>2]+(a<<2)>>2];f=v[b+60>>2];e=(g>>>0)/(f>>>0)|0;f=v[v[b+40>>2]+(e<<2)>>2]+(g-B(e,f)<<4)|0;if(!(w[f+4|0]&3)){BF(b,g);u[f+4>>1]=x[f+4>>1]|1;c=v[b+300>>2]}a=a+1|0;if(c>>>0>a>>>0){continue}break}}xa=d+16|0;a=v[b+20>>2];v[k+8>>2]=0;c=a;a=k+8|0;cz(b+180|0,c,a);c=v[b+20>>2];v[k+8>>2]=-128;uF(b+192|0,c,a);p=b+240|0;while(1){s=B(r,12)+b|0;if(v[s+288>>2]){q=0;while(1){h=v[b+40>>2];o=v[v[s+284>>2]+(q<<2)>>2];a=v[b+60>>2];c=(o>>>0)/(a>>>0)|0;c:{if(w[(v[h+(c<<2)>>2]+(o-B(a,c)<<4)|0)+4|0]&2){break c}a=v[b+448>>2];f=v[a>>2];e=o<<1;c=e|1;d=v[a+20>>2];a=(c>>>0)/(d>>>0)|0;g=v[v[f+(a<<2)>>2]+(c-B(a,d)<<2)>>2];a=-1;c=-1;i=(e>>>0)/(d>>>0)|0;f=v[v[f+(i<<2)>>2]+(e-B(d,i)<<2)>>2];e=f>>>7|0;m=(e|0)==33554431;if(!m){c=v[v[b+204>>2]+(e<<2)>>2]}l=g>>>7|0;n=(l|0)==33554431;if(!n){a=v[v[b+204>>2]+(l<<2)>>2]}d=0;i=0;i=m?i:(w[(v[b+16>>2]+B(e,24)|0)+4|0]&2)>>>1|0;d=n?d:(w[(v[b+16>>2]+B(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=v[b+180>>2];d=e<<2;e=a+d|0;i=v[e>>2];h=i+1|0;j=a;a=l<<2;l=j+a|0;m=v[l>>2];if(h>>>0>>0){v[l>>2]=h;v[a+v[b+192>>2]>>2]=f;break e}a=m+1|0;if(a>>>0>=i>>>0){break e}v[e>>2]=a;v[d+v[b+192>>2]>>2]=g;break e}if(!j){h=v[b+16>>2];if(!m){j=h+B(e,24)|0;if(!(w[j+4|0]&4)){m=v[b+88>>2];n=B(a,44);c=m+n|0;v[(h+B(v[c+4>>2]>>>7|0,24)|0)+8>>2]=f;v[j+12>>2]=v[c+4>>2];v[c+4>>2]=f;h=c+(w[j+5|0]<<2)|0;v[h+8>>2]=v[h+8>>2]+1;e=e<<2;v[e+v[b+204>>2]>>2]=a;h=v[b+180>>2];v[h+e>>2]=v[h+(l<<2)>>2]+1;v[e+v[b+192>>2]>>2]=g;if((d|i)!=1){c=a;break e}h=1<>2];g=a>>>5<<2;f:{if(h&v[d+g>>2]){break f}c=v[c>>2];e=c>>>7|0;if((e|0)!=33554431){while(1){LF(b,c);c=v[(v[b+16>>2]+B(e,24)|0)+8>>2];e=c>>>7|0;if((e|0)!=33554431){continue}break}m=v[b+88>>2];d=v[b+216>>2]}v[k+8>>2]=a;c=d+g|0;v[c>>2]=h|v[c>>2];c=v[b+244>>2];v[(m+n|0)+16>>2]=c;if(c>>>0>=(v[b+248>>2]&2147483647)>>>0){pn(p,k+8|0);break f}v[v[b+240>>2]+(c<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1}if(i){c=a;break e}LF(b,f);c=a;break e}if(i^1|d){c=a;break e}d=v[b+88>>2];g=B(a,44);c=v[d+g>>2];e=c>>>7|0;if((e|0)!=33554431){while(1){LF(b,c);c=v[(v[b+16>>2]+B(e,24)|0)+8>>2];e=c>>>7|0;if((e|0)!=33554431){continue}break}d=v[b+88>>2]}v[k+8>>2]=a;c=v[b+216>>2]+(a>>>3&536870908)|0;v[c>>2]=v[c>>2]|1<>2];v[(d+g|0)+16>>2]=c;if(c>>>0>=(v[b+248>>2]&2147483647)>>>0){pn(p,k+8|0);c=a;break e}v[v[b+240>>2]+(c<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1;c=a;break e}c=h+B(l,24)|0;u[c+6>>1]=x[c+6>>1]+1;c=v[b+100>>2]+(a<<2)|0;v[c>>2]=v[c>>2]+1;c=a;break e}if((a|0)==-1){j=v[b+16>>2];if(!n){n=j+B(l,24)|0;if(!(w[n+4|0]&4)){m=v[b+88>>2];t=B(c,44);a=m+t|0;v[(j+B(v[a+4>>2]>>>7|0,24)|0)+8>>2]=g;v[n+12>>2]=v[a+4>>2];v[a+4>>2]=g;j=a+(w[n+5|0]<<2)|0;v[j+8>>2]=v[j+8>>2]+1;l=l<<2;v[l+v[b+204>>2]>>2]=c;j=v[b+180>>2];v[j+l>>2]=v[j+(e<<2)>>2]+1;v[l+v[b+192>>2]>>2]=f;if((d|i)!=1){break d}h=1<>2];f=c>>>5<<2;g:{if(h&v[d+f>>2]){break g}e=v[a>>2];a=e>>>7|0;if((a|0)!=33554431){while(1){LF(b,e);e=v[(v[b+16>>2]+B(a,24)|0)+8>>2];a=e>>>7|0;if((a|0)!=33554431){continue}break}m=v[b+88>>2];d=v[b+216>>2]}v[k+8>>2]=c;a=d+f|0;v[a>>2]=h|v[a>>2];a=v[b+244>>2];v[(m+t|0)+16>>2]=a;if(a>>>0>=(v[b+248>>2]&2147483647)>>>0){pn(p,k+8|0);break g}v[v[b+240>>2]+(a<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1}if(i){break e}LF(b,g);break e}if(!d|i){break d}d=v[b+88>>2];g=B(c,44);e=v[d+g>>2];a=e>>>7|0;if((a|0)!=33554431){while(1){LF(b,e);e=v[(v[b+16>>2]+B(a,24)|0)+8>>2];a=e>>>7|0;if((a|0)!=33554431){continue}break}d=v[b+88>>2]}v[k+8>>2]=c;a=v[b+216>>2]+(c>>>3&536870908)|0;v[a>>2]=v[a>>2]|1<>2];v[(d+g|0)+16>>2]=a;if(a>>>0>=(v[b+248>>2]&2147483647)>>>0){pn(p,k+8|0);break e}v[v[b+240>>2]+(a<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1;break e}a=j+B(e,24)|0;u[a+6>>1]=x[a+6>>1]+1;a=v[b+100>>2]+(c<<2)|0;v[a>>2]=v[a>>2]+1;break d}h:{if((d|i)!=1){break h}m=1<>2];l=c>>>5<<2;i:{if(m&v[h+l>>2]){break i}i=v[b+88>>2];j=B(c,44);e=v[i+j>>2];d=e>>>7|0;if((d|0)!=33554431){while(1){LF(b,e);e=v[(v[b+16>>2]+B(d,24)|0)+8>>2];d=e>>>7|0;if((d|0)!=33554431){continue}break}h=v[b+216>>2];i=v[b+88>>2]}v[k+8>>2]=c;d=h+l|0;v[d>>2]=m|v[d>>2];d=v[b+244>>2];v[(i+j|0)+16>>2]=d;if(d>>>0>=(v[b+248>>2]&2147483647)>>>0){pn(p,k+8|0);h=v[b+216>>2];break i}v[v[b+240>>2]+(d<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1}m=1<>>5<<2;if(m&v[l+h>>2]){break h}i=v[b+88>>2];j=B(a,44);e=v[i+j>>2];d=e>>>7|0;if((d|0)!=33554431){while(1){LF(b,e);e=v[(v[b+16>>2]+B(d,24)|0)+8>>2];d=e>>>7|0;if((d|0)!=33554431){continue}break}h=v[b+216>>2];i=v[b+88>>2]}v[k+8>>2]=a;d=h+l|0;v[d>>2]=m|v[d>>2];d=v[b+244>>2];v[(i+j|0)+16>>2]=d;if(d>>>0>=(v[b+248>>2]&2147483647)>>>0){pn(p,k+8|0);break h}v[v[b+240>>2]+(d<<2)>>2]=v[k+8>>2];v[b+244>>2]=v[b+244>>2]+1}e=xa-16|0;xa=e;d=a;j:{k:{h=v[b+88>>2];i=h+B(c,44)|0;a=h+B(a,44)|0;if(v[i+12>>2]+v[i+8>>2]>>>0>v[a+12>>2]+v[a+8>>2]>>>0){QF(b,i,a,c,d,f,g);a=v[b+216>>2]+(d>>>3&536870908)|0;i=v[a>>2];z=a,A=Vaa(-2,d)&i,v[z>>2]=A;v[e+8>>2]=d;if(v[b+12>>2]==(d|0)){v[b+12>>2]=d-1;break k}a=v[b+4>>2];if(a>>>0>=(v[b+8>>2]&2147483647)>>>0){pn(b,e+8|0);break k}v[v[b>>2]+(a<<2)>>2]=d;v[b+4>>2]=v[b+4>>2]+1;break k}QF(b,a,i,d,c,g,f);a=v[b+216>>2]+(c>>>3&536870908)|0;i=v[a>>2];z=a,A=Vaa(-2,c)&i,v[z>>2]=A;v[e+12>>2]=c;l:{if(v[b+12>>2]==(c|0)){v[b+12>>2]=c-1;break l}a=v[b+4>>2];if(a>>>0>=(v[b+8>>2]&2147483647)>>>0){pn(b,e+12|0);break l}v[v[b>>2]+(a<<2)>>2]=c;v[b+4>>2]=v[b+4>>2]+1}a=f;break j}a=g;g=f;d=c}v[v[b+192>>2]+(a>>>5&134217724)>>2]=g;xa=e+16|0;c=d}if((c|0)==-1){break c}h=v[b+40>>2]}d=v[b+88>>2]+B(c,44)|0;c=v[b+60>>2];a=(o>>>0)/(c>>>0)|0;g=v[(a<<2)+h>>2]+(o-B(a,c)<<4)|0;a=d+(v[g>>2]<<2)|0;d=v[a+28>>2];m:{if((d|0)!=-1){f=(d>>>0)/(c>>>0)|0;v[(v[(f<<2)+h>>2]+(d-B(c,f)<<4)|0)+8>>2]=o;c=v[a+28>>2];break m}v[a+20>>2]=o;c=-1}v[g+12>>2]=c;v[a+28>>2]=o;v[a+36>>2]=v[a+36>>2]+1}q=q+1|0;if(q>>>0>2]){continue}break}}r=r+1|0;if((r|0)!=2){continue}break}xa=k+16|0}function fq(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,u=0,y=0,z=0,A=0,B=0;m=xa-560|0;xa=m;j=v[a+5936>>2]+31>>>5|0;i=a+32|0;if(j>>>0>(v[i+2436>>2]&2147483647)>>>0){h=v[37696]+12|0;e=Ba[v[v[h>>2]+8>>2]](h,j<<2,24422,17999,438)|0;h=v[i+2432>>2];a:{if(!h){break a}I9(e,h,v[i+2436>>2]<<2);if(v[i+2436>>2]<0){break a}f=v[i+2432>>2];if(!f){break a}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,f)}h=v[i+2436>>2];J9(e+(h<<2)|0,0,j-h<<2);v[i+2436>>2]=j;v[i+2432>>2]=e}g=v[i+2372>>2];if(j>>>0>(v[g+24>>2]&2147483647)>>>0){h=v[37696]+12|0;e=Ba[v[v[h>>2]+8>>2]](h,j<<2,24422,17999,438)|0;h=v[g+20>>2];b:{if(!h){break b}I9(e,h,v[g+24>>2]<<2);if(v[g+24>>2]<0){break b}f=v[g+20>>2];if(!f){break b}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,f)}h=v[g+24>>2];J9(e+(h<<2)|0,0,j-h<<2);v[g+24>>2]=j;v[g+20>>2]=e}s=c;if((v[g+40>>2]&2147483647)>>>0>>0){Aw(g+32|0,s)}e=v[i+2368>>2];if(j>>>0>(v[e+24>>2]&2147483647)>>>0){c=v[37696]+12|0;f=Ba[v[v[c>>2]+8>>2]](c,j<<2,24422,17999,438)|0;c=v[e+20>>2];c:{if(!c){break c}I9(f,c,v[e+24>>2]<<2);if(v[e+24>>2]<0){break c}h=v[e+20>>2];if(!h){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}c=v[e+24>>2];J9(f+(c<<2)|0,0,j-c<<2);v[e+24>>2]=j;v[e+20>>2]=f}if(s>>>0>(v[e+40>>2]&2147483647)>>>0){Aw(e+32|0,s)}v[m+552>>2]=0;v[m+556>>2]=64;z=m+288|0;v[m+548>>2]=z;t[m+544|0]=1;t[m+272|0]=1;v[m+280>>2]=0;v[m+284>>2]=64;c=m+16|0;v[m+276>>2]=c;v[a+2448>>2]=c;c=z;if(s){A=a+16|0;B=a+5584|0;while(1){j=y;y=j+1|0;d:{if(s>>>0<=y>>>0){break d}k=0;h=0;f=0;c=v[(y<<2)+b>>2];e=c+319|0;f=e>>>0<319?1:f;e=(f&63)<<26|e>>>6;g=c>>>6|0;f=(f>>>6|0)-(g>>>0>e>>>0)|0;p=e-g|0;i=f;g=0;n=g;e=p+1|0;f=e?f:f+1|0;o=e&7;if(g|o){while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((o|0)!=(k|0)|(n|0)!=(g|0)){continue}break}}if(!i&p>>>0<7){break d}while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}l=v[(j<<2)+b>>2];c=x[l+4>>1];e:{if((Ba[v[v[l>>2]+28>>2]](l)|0)!=(a|0)){b=v[37696];v[m>>2]=4661;b9(b,8,11709,79,75385,m);break e}v[m+552>>2]=0;v[m+280>>2]=0;f:{g:{h:{switch(c-5|0){case 1:q=l+48|0;c=v[l+52>>2];n=c&1?v[l+56>>2]:(q+v[((c>>>22&60)+89188|0)+12>>2]|0)+8|0;r=l+20|0;c=x[l+24>>1];i:{if(!c){break i}k=0;h=0;f=0;c=v[((c|0)==1?r:v[r>>2])>>2];e=c+207|0;f=e>>>0<207?1:f;e=(f&63)<<26|e>>>6;g=c>>>6|0;f=(f>>>6|0)-(g>>>0>e>>>0)|0;p=e-g|0;i=f;g=0;o=g;e=p+1|0;f=e?f:f+1|0;j=e&7;if(g|j){while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&p>>>0<7){break i}while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}p=w[n|0];k=0;h=0;i=v[l- -64>>2];j:{if(!i){break j}f=0;c=i+51|0;f=c>>>0<51?1:f;g=f>>>6|0;f=(f&63)<<26|c>>>6;e=i>>>6|0;c=g-(e>>>0>f>>>0)|0;u=f-e|0;j=c;f=c;c=u+1|0;f=c?f:f+1|0;e=c;c=0;n=c;o=e&7;k:{if(!(c|o)){c=i;break k}c=i;while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((o|0)!=(k|0)|(n|0)!=(g|0)){continue}break}}if(!j&u>>>0>=7|j){while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}f=0;c=v[i+32>>2];e=c+11|0;f=e>>>0<11?1:f;e=(f&63)<<26|e>>>6;h=c>>>6|0;f=(f>>>6|0)-(h>>>0>e>>>0)|0;n=e-h|0;i=f;h=n+1|0;f=h?f:f+1|0;e=h;h=0;o=h;j=e&7;if(h|j){k=0;while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&n>>>0<7){break j}while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}k=0;h=0;f=0;c=v[(v[a+5932>>2]+(v[a+5936>>2]<<2)|0)-4>>2];e=c+319|0;f=e>>>0<319?1:f;e=(f&63)<<26|e>>>6;g=c>>>6|0;f=(f>>>6|0)-(g>>>0>e>>>0)|0;n=e-g|0;g=0;o=g;i=f;e=n+1|0;f=e?f:f+1|0;j=e&7;if(g|j){while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&n>>>0>=7|i){while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}if(!(p&8)){ph(l+12|0)}iu(r,B,l);Cu(A,q,d,(w[(q+v[((v[l+52>>2]>>>22&60)+89188|0)+12>>2]|0)+8|0]&8)>>>3|0);e=v[l+44>>2];f=v[a+5936>>2]-1|0;v[a+5936>>2]=f;h=v[a+5932>>2];c=e<<2;v[h+c>>2]=v[h+(f<<2)>>2];if(!f|(f|0)==(e|0)){break f}c=v[c+v[a+5932>>2]>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 0:case 1:break g;default:break f};case 0:q=l+48|0;c=v[l+52>>2];n=c&1?v[l+56>>2]:(q+v[((c>>>22&60)+89188|0)+12>>2]|0)+8|0;r=l+20|0;c=x[l+24>>1];l:{if(!c){break l}k=0;h=0;f=0;c=v[((c|0)==1?r:v[r>>2])>>2];e=c+207|0;f=e>>>0<207?1:f;e=(f&63)<<26|e>>>6;g=c>>>6|0;f=(f>>>6|0)-(g>>>0>e>>>0)|0;p=e-g|0;i=f;g=0;o=g;e=p+1|0;f=e?f:f+1|0;j=e&7;if(g|j){while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&p>>>0<7){break l}while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}p=w[n|0];k=0;h=0;i=v[l- -64>>2];m:{if(!i){break m}f=0;c=i+175|0;f=c>>>0<175?1:f;g=f>>>6|0;f=(f&63)<<26|c>>>6;e=i>>>6|0;c=g-(e>>>0>f>>>0)|0;u=f-e|0;j=c;f=c;c=u+1|0;f=c?f:f+1|0;e=c;c=0;n=c;o=e&7;n:{if(!(c|o)){c=i;break n}c=i;while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((o|0)!=(k|0)|(n|0)!=(g|0)){continue}break}}if(!j&u>>>0>=7|j){while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}f=0;c=v[i+32>>2];e=c+11|0;f=e>>>0<11?1:f;e=(f&63)<<26|e>>>6;h=c>>>6|0;f=(f>>>6|0)-(h>>>0>e>>>0)|0;n=e-h|0;i=f;h=n+1|0;f=h?f:f+1|0;e=h;h=0;o=h;j=e&7;if(h|j){k=0;while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&n>>>0<7){break m}while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}k=0;h=0;f=0;c=v[(v[a+5932>>2]+(v[a+5936>>2]<<2)|0)-4>>2];e=c+319|0;f=e>>>0<319?1:f;e=(f&63)<<26|e>>>6;g=c>>>6|0;f=(f>>>6|0)-(g>>>0>e>>>0)|0;n=e-g|0;g=0;o=g;i=f;e=n+1|0;f=e?f:f+1|0;j=e&7;if(g|j){while(1){g=e;e=e-1|0;f=f-!g|0;c=c- -64|0;g=h;h=k+1|0;g=h?g:g+1|0;k=h;h=g;if((j|0)!=(k|0)|(o|0)!=(g|0)){continue}break}}if(!i&n>>>0>=7|i){while(1){c=c+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}if(!(p&8)){ph(l+12|0)}iu(r,B,l);Fu(A,q,d,(w[(q+v[((v[l+52>>2]>>>22&60)+89188|0)+12>>2]|0)+8|0]&8)>>>3|0);e=v[l+44>>2];f=v[a+5936>>2]-1|0;v[a+5936>>2]=f;h=v[a+5932>>2];c=e<<2;v[h+c>>2]=v[h+(f<<2)>>2];if(!f|(f|0)==(e|0)){break f}o:{c=v[c+v[a+5932>>2]>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 0:case 1:break o;default:break f}}v[c+44>>2]=e;break f;default:break h}}b9(v[37696],2,11709,651,22124,0);break e}v[c+44>>2]=e}if((s|0)!=(y|0)){continue}}break}c=v[m+548>>2]}v[a+2448>>2]=0;a=v[m+556>>2];p:{if((a|0)<0|!(a&2147483647)){break p}if((c|0)==(z|0)){t[m+544|0]=0;break p}if(!c){break p}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,c)}a=v[m+284>>2];q:{if((a|0)<0|!(a&2147483647)){break q}b=v[m+276>>2];if((b|0)==(m+16|0)|!b){break q}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}xa=m+560|0}function Q4(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=C(0),i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=C(0),q=0,r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=0,U=0,V=0,W=0,X=0;e=xa-96|0;xa=e;v[e+88>>2]=0;v[e+80>>2]=0;v[e+84>>2]=0;j=v[a+32>>2];c=v[j+24>>2];if(c){a:{if(!c){break a}d=B(c,60);if(!d){break a}o=v[37696];b=o+12|0;b=(T=b,U=d,V=Ba[v[v[o>>2]+20>>2]](o)|0?27653:63804,W=16608,X=553,S=v[v[b>>2]+8>>2],Ba[S](T|0,U|0,V|0,W|0,X|0)|0)}f=v[e+80>>2];d=v[e+84>>2];if((d|0)>0){g=B(d,60)+b|0;d=b;while(1){z[d>>2]=z[f>>2];z[d+4>>2]=z[f+4>>2];z[d+8>>2]=z[f+8>>2];z[d+12>>2]=z[f+12>>2];z[d+16>>2]=z[f+16>>2];z[d+20>>2]=z[f+20>>2];z[d+24>>2]=z[f+24>>2];z[d+28>>2]=z[f+28>>2];z[d+32>>2]=z[f+32>>2];z[d+36>>2]=z[f+36>>2];z[d+40>>2]=z[f+40>>2];z[d+44>>2]=z[f+44>>2];o=v[f+52>>2];v[d+48>>2]=v[f+48>>2];v[d+52>>2]=o;v[d+56>>2]=v[f+56>>2];f=f+60|0;d=d+60|0;if(g>>>0>d>>>0){continue}break}f=v[e+80>>2]}if(!(!f|v[e+88>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,f)}v[e+88>>2]=c;v[e+80>>2]=b;j=v[a+32>>2]}b:{if(!v[j+92>>2]){break b}o=e+72|0;d=e+68|0;g=e- -64|0;while(1){D=v[v[j+88>>2]+(l<<2)>>2];if(!v[D+48>>2]){j=v[D>>2];c=v[v[v[j+32>>2]+36>>2]+56>>2];b=v[v[j+36>>2]+56>>2];f=b>>>0>>0?c:b;v[e+68>>2]=f;b=b>>>0>c>>>0?c:b;v[e+64>>2]=b;c=v[v[v[v[j+28>>2]+32>>2]+36>>2]+56>>2];c:{if(c>>>0>>0){v[e+68>>2]=b;v[e+72>>2]=f;b=g;break c}b=o;if(c>>>0>=f>>>0){break c}v[e+72>>2]=f;b=d}v[b>>2]=c;m=e+16|0;r=e+80|0;c=v[r+4>>2];d:{if(c){n=v[m+56>>2];q=v[m+52>>2];i=v[m+48>>2];f=v[r>>2];b=c;while(1){b=b-1|0;k=f+B(b,60)|0;if(!((i|0)!=v[k+48>>2]|(q|0)!=v[k+52>>2])&(n|0)==v[k+56>>2]){break d}if(b){continue}break}}if(c>>>0>=(v[r+8>>2]&2147483647)>>>0){L4(r,m);break d}c=v[r>>2]+B(c,60)|0;z[c>>2]=z[m>>2];z[c+4>>2]=z[m+4>>2];z[c+8>>2]=z[m+8>>2];z[c+12>>2]=z[m+12>>2];z[c+16>>2]=z[m+16>>2];z[c+20>>2]=z[m+20>>2];z[c+24>>2]=z[m+24>>2];z[c+28>>2]=z[m+28>>2];z[c+32>>2]=z[m+32>>2];z[c+36>>2]=z[m+36>>2];z[c+40>>2]=z[m+40>>2];z[c+44>>2]=z[m+44>>2];b=v[m+52>>2];v[c+48>>2]=v[m+48>>2];v[c+52>>2]=b;v[c+56>>2]=v[m+56>>2];v[r+4>>2]=v[r+4>>2]+1}j=v[j+28>>2];if((j|0)!=v[D>>2]){while(1){c=v[v[v[j+32>>2]+36>>2]+56>>2];b=v[v[j+36>>2]+56>>2];f=b>>>0>>0?c:b;v[e+68>>2]=f;b=b>>>0>c>>>0?c:b;v[e+64>>2]=b;c=v[v[v[v[j+28>>2]+32>>2]+36>>2]+56>>2];e:{if(c>>>0>>0){v[e+68>>2]=b;v[e+72>>2]=f;b=g;break e}b=o;if(c>>>0>=f>>>0){break e}v[e+72>>2]=f;b=d}v[b>>2]=c;c=v[e+84>>2];f:{if(c){n=v[e+72>>2];q=v[e+68>>2];i=v[e+64>>2];f=v[e+80>>2];b=c;while(1){b=b-1|0;k=f+B(b,60)|0;if(!((i|0)!=v[k+48>>2]|(q|0)!=v[k+52>>2])&(n|0)==v[k+56>>2]){break f}if(b){continue}break}}if(c>>>0>=(v[e+88>>2]&2147483647)>>>0){L4(e+80|0,e+16|0);break f}c=v[e+80>>2]+B(c,60)|0;z[c>>2]=z[e+16>>2];z[c+4>>2]=z[e+20>>2];z[c+8>>2]=z[e+24>>2];z[c+12>>2]=z[e+28>>2];z[c+16>>2]=z[e+32>>2];z[c+20>>2]=z[e+36>>2];z[c+24>>2]=z[e+40>>2];z[c+28>>2]=z[e+44>>2];z[c+32>>2]=z[e+48>>2];z[c+36>>2]=z[e+52>>2];z[c+40>>2]=z[e+56>>2];z[c+44>>2]=z[e+60>>2];b=v[g+4>>2];v[c+48>>2]=v[g>>2];v[c+52>>2]=b;v[c+56>>2]=v[g+8>>2];v[e+84>>2]=v[e+84>>2]+1}j=v[j+28>>2];if((j|0)!=v[D>>2]){continue}break}}j=v[a+32>>2]}l=l+1|0;c=v[j+92>>2];if(l>>>0>>0){continue}break}g=v[j+24>>2];if(!g|!c){break b}o=v[j+36>>2];d=v[j+88>>2];k=0;while(1){f=o+B(k,24)|0;b=0;while(1){i=v[d+(b<<2)>>2];g:{if(v[i+48>>2]){break g}h=C(C(C(z[i+20>>2]*z[f+8>>2])+C(C(z[i+12>>2]*z[f>>2])+C(z[f+4>>2]*z[i+16>>2])))-z[i+40>>2]);if(!(h>C(0))|!(h>z[i+44>>2])){break g}z[i+44>>2]=h}b=b+1|0;if((c|0)!=(b|0)){continue}break}k=k+1|0;if((g|0)!=(k|0)){continue}break}}h:{i:{k=v[e+84>>2];if(!k){b=0;t[e+20|0]=0;break i}g=v[j+76>>2];f=v[j+64>>2];n=0;o=v[e+80>>2];while(1){i=o+B(n,60)|0;d=v[i+48>>2];b=(d>>>0)/(f>>>0)|0;c=v[g+(b<<2)>>2]+(d-B(b,f)<<6)|0;h=z[c+40>>2];p=z[c+44>>2];d=v[c+16>>2];b=v[c+12>>2];z[i+8>>2]=z[c+20>>2];v[i>>2]=b;v[i+4>>2]=d;z[i+12>>2]=C(-h)-(p>C(0)?p:C(0));d=v[i+52>>2];b=(d>>>0)/(f>>>0)|0;c=v[g+(b<<2)>>2]+(d-B(b,f)<<6)|0;h=z[c+40>>2];p=z[c+44>>2];d=v[c+16>>2];b=v[c+12>>2];z[i+24>>2]=z[c+20>>2];v[i+16>>2]=b;v[i+20>>2]=d;z[i+28>>2]=C(-h)-(p>C(0)?p:C(0));d=v[i+56>>2];b=(d>>>0)/(f>>>0)|0;c=v[g+(b<<2)>>2]+(d-B(b,f)<<6)|0;h=z[c+40>>2];p=z[c+44>>2];d=v[c+16>>2];b=v[c+12>>2];z[i+40>>2]=z[c+20>>2];v[i+32>>2]=b;v[i+36>>2]=d;z[i+44>>2]=C(-h)-(p>C(0)?p:C(0));n=n+1|0;if((n|0)!=(k|0)){continue}break}b=B(k,12);d=b>>>0>1024;t[e+20|0]=d;if(!d){break i}n=u9(b,13134,2169);v[e+16>>2]=n;k=v[e+84>>2];o=1;break h}n=e-(b+15&-16)|0;xa=n;v[e+16>>2]=n;o=0}if(k){f=0;b=v[e+80>>2];while(1){I=C(0);J=C(1);K=C(0);L=C(0);M=C(1);N=C(0);O=C(0);P=C(0);Q=C(1);g=b+B(f,60)|0;u=z[g+32>>2];E=z[g+4>>2];F=z[g+24>>2];w=z[g+8>>2];G=z[g+20>>2];R=C(C(E*F)-C(w*G));x=z[g>>2];H=z[g+40>>2];y=z[g+36>>2];s=C(C(G*H)-C(F*y));A=z[g+16>>2];p=C(H*E);h=C(C(u*R)+C(C(x*s)+C(A*C(C(y*w)-p))));if(h!=C(0)){h=C(C(1)/h);Q=C(C(C(x*G)+C(A*C(-E)))*h);M=C(C(C(x*H)-C(w*u))*h);K=C(C(C(A*y)-C(G*u))*h);J=C(s*h);N=C(h*C(-C(C(x*y)-C(E*u))));L=C(h*C(-C(p+C(w*C(-y)))));I=C(h*C(-C(C(A*H)-C(u*F))));O=C(R*h);P=C(h*C(-C(C(x*F)-C(w*A))))}d=B(f,12)+n|0;s=z[g+12>>2];p=z[g+28>>2];h=z[g+44>>2];z[d+8>>2]=-C(C(C(K*s)+C(N*p))+C(Q*h));z[d+4>>2]=-C(C(C(I*s)+C(M*p))+C(P*h));z[d>>2]=-C(C(C(J*s)+C(L*p))+C(O*h));f=f+1|0;if((k|0)!=(f|0)){continue}break}}d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?38977:63804;l=Ba[v[v[d+12>>2]+8>>2]](d+12|0,320,b,13134,2177)|0;b=v[a+32>>2];A4(l,v[b>>2],v[b+4>>2]);C4(l,v[e+84>>2]);q=v[e+84>>2];v[l+24>>2]=q;j:{if(!q){break j}i=v[l+36>>2];b=0;if((q|0)!=1){d=q&-2;k=0;while(1){c=i+B(b,24)|0;g=B(b,12)+n|0;z[c>>2]=z[g>>2];z[c+4>>2]=z[g+4>>2];h=z[g+8>>2];v[c+12>>2]=b;z[c+8>>2]=h;c=b|1;f=i+B(c,24)|0;g=B(c,12)+n|0;z[f>>2]=z[g>>2];z[f+4>>2]=z[g+4>>2];h=z[g+8>>2];v[f+12>>2]=c;z[f+8>>2]=h;b=b+2|0;k=k+2|0;if((d|0)!=(k|0)){continue}break}}if(!(q&1)){break j}g=i+B(b,24)|0;d=B(b,12)+n|0;z[g>>2]=z[d>>2];z[g+4>>2]=z[d+4>>2];h=z[d+8>>2];v[g+12>>2]=b;z[g+8>>2]=h}f=0;k:{l:{switch(I4(l)|0){case 1:b=v[l+36>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);v[l+36>>2]=0}v[l+92>>2]=0;B4(l);a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,l);f=1;break k;case 0:case 2:case 3:b=v[a+32>>2];g=v[b+36>>2];m:{n:{if(!g){v[b+92>>2]=0;break n}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,g);v[b+36>>2]=0;d=b;b=v[a+32>>2];v[d+92>>2]=0;if(!b){break m}}B4(b);d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[a+32>>2]=l;break k;case 4:break l;default:break k}}b=v[l+36>>2];if(b){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);v[l+36>>2]=0}v[l+92>>2]=0;B4(l);a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,l);f=3}if(o){v9(n)}a=v[e+88>>2];o:{if((a|0)<0|!(a&2147483647)){break o}b=v[e+80>>2];if(!b){break o}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}xa=e+96|0;return f} +function XX(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0);l=xa-208|0;xa=l;k=xa-272|0;xa=k;v[k+264>>2]=0;v[k+268>>2]=0;v[k+256>>2]=0;v[k+260>>2]=0;I=z[d+8>>2];J=z[d+4>>2];L=z[d>>2];G=z[e+8>>2];D=z[e+4>>2];B=z[e>>2];v[k+240>>2]=1;H=v[b+4>>2];x=z[H+52>>2];y=z[H+56>>2];s=v[a+4>>2];p=z[s+56>>2];u=z[s+52>>2];q=z[s+72>>2];A=z[s+68>>2];T=z[H+48>>2];U=z[s+48>>2];V=z[s+64>>2];m=z[c+8>>2];n=z[c>>2];r=z[c+4>>2];v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;v[k+208>>2]=0;v[k+212>>2]=0;v[k+216>>2]=0;v[k+220>>2]=0;v[k+224>>2]=0;v[k+228>>2]=0;v[k+232>>2]=0;v[k+236>>2]=0;v[k+188>>2]=0;v[k+192>>2]=0;s=C(C(m*m)+C(C(n*n)+C(r*r)))>C(1.1920928955078125e-7);n=s?n:C(1);M=n;m=s?m:C(0);X=C(n*n);n=s?r:C(0);r=C(C(1)/C(K(C(C(m*m)+C(X+C(n*n))))));E=C(M*r);O=C(-E);n=C(n*r);m=C(m*r);s=C(C(C(U*O)-C(u*n))-C(p*m))>C(C(C(V*O)-C(A*n))-C(q*m));r=s?p:q;m=m>C(0)?y:C(-y);p=C(r-m);z[k+184>>2]=p;y=s?u:A;n=n>C(0)?x:C(-x);u=C(y-n);z[k+180>>2]=u;x=s?U:V;A=E>C(0)?T:C(-T);q=C(x-A);z[k+176>>2]=q;v[k+132>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+152>>2]=0;v[k+156>>2]=0;v[k+160>>2]=0;v[k+164>>2]=0;v[k+168>>2]=0;v[k+172>>2]=0;v[k+124>>2]=0;v[k+128>>2]=0;z[k+120>>2]=r;z[k+116>>2]=y;z[k+112>>2]=x;v[k+68>>2]=0;v[k+72>>2]=0;v[k+76>>2]=0;v[k+80>>2]=0;v[k+84>>2]=0;v[k+88>>2]=0;v[k+92>>2]=0;v[k+96>>2]=0;v[k+100>>2]=0;v[k+104>>2]=0;v[k+108>>2]=0;v[k+60>>2]=0;v[k+64>>2]=0;z[k+56>>2]=m;z[k+52>>2]=n;z[k+48>>2]=A;m=C(-p);n=C(-u);r=C(-q);A=C(C(p*p)+C(C(q*q)+C(u*u)));x=z[H+24>>2];x=C((xZ)){x=r;y=n;i=m;T=q;U=u;V=p;break b}O=C(x+i);ea=C(O*O);L=C(C(B*C(0))+L);J=C(C(D*C(0))+J);I=C(C(G*C(0))+I);i=m;y=n;x=r;while(1){T=q;U=u;V=p;q=C(C(1)/C(K(C(C(m*m)+C(C(r*r)+C(n*n))))));p=C(r*q);o=v[a+4>>2];G=z[o+48>>2];E=z[o+56>>2];u=C(m*q);q=C(n*q);B=z[o+52>>2];P=z[o+72>>2];D=z[o+64>>2];Q=z[o+68>>2];o=C(C(E*u)+C(C(G*p)+C(q*B)))>C(C(P*u)+C(C(D*p)+C(q*Q)));Y=o?G:D;s=v[b+4>>2];G=z[s+48>>2];G=p>2];_=q>2];$=uC(0)){o=0;ba=z[e+8>>2];X=C(u*ba);u=z[e>>2];M=q;q=z[e+4>>2];M=C(X+C(C(p*u)+C(M*q)));if(M>=C(0)){break a}p=N;N=C(p-C(aa/M));if(N>p){if(N>C(1)){break a}y=z[d+8>>2];x=z[d+4>>2];i=z[d>>2];v[k+92>>2]=0;v[k+76>>2]=0;v[k+60>>2]=0;p=C(i+C(u*N));i=C(p-L);A=C(i+z[k+80>>2]);z[k+80>>2]=A;u=C(x+C(q*N));x=C(u-J);L=C(x+z[k+84>>2]);z[k+84>>2]=L;q=C(y+C(ba*N));y=C(q-I);J=C(y+z[k+88>>2]);z[k+88>>2]=J;I=C(i+z[k+64>>2]);z[k+64>>2]=I;D=C(x+z[k+68>>2]);z[k+68>>2]=D;B=C(y+z[k+72>>2]);z[k+72>>2]=B;i=C(i+z[k+48>>2]);z[k+48>>2]=i;x=C(x+z[k+52>>2]);z[k+52>>2]=x;y=C(y+z[k+56>>2]);z[k+56>>2]=y;E=z[k+112>>2];R=z[k+116>>2];S=z[k+120>>2];v[k+188>>2]=0;z[k+184>>2]=S-y;z[k+180>>2]=R-x;z[k+176>>2]=E-i;i=z[k+128>>2];x=z[k+132>>2];y=z[k+136>>2];v[k+204>>2]=0;z[k+200>>2]=y-B;z[k+196>>2]=x-D;z[k+192>>2]=i-I;i=z[k+144>>2];x=z[k+148>>2];y=z[k+152>>2];v[k+220>>2]=0;z[k+216>>2]=y-J;z[k+212>>2]=x-L;z[k+208>>2]=i-A;W=C($+q);E=C(P-W);S=C(_+u);B=C(Q-S);R=C(G+p);D=C(Y-R);x=r;y=n;i=m;L=p;J=u;I=q;p=C(34028234663852886e22)}else{p=A}}else{p=A}G=p;s=v[k+240>>2];H=s<<4;o=H+(k+112|0)|0;v[o+12>>2]=0;z[o+8>>2]=P;z[o+4>>2]=Q;z[o>>2]=Y;o=H+(k+48|0)|0;v[o+12>>2]=0;z[o+8>>2]=W;z[o+4>>2]=S;z[o>>2]=R;o=H+(k+176|0)|0;v[o+12>>2]=0;z[o+8>>2]=E;z[o+4>>2]=B;z[o>>2]=D;v[k+240>>2]=s+1;c:{d:{switch(s-1|0){case 0:p=z[k+184>>2];m=C(z[k+200>>2]-p);u=z[k+176>>2];n=C(z[k+192>>2]-u);q=z[k+180>>2];r=C(z[k+196>>2]-q);A=C(C(m*m)+C(C(n*n)+C(r*r)));if(A<=C(1.1920928955078125e-7)){v[k+240>>2]=1;o=v[k+180>>2];v[k+32>>2]=v[k+176>>2];v[k+36>>2]=o;o=v[k+188>>2];v[k+40>>2]=v[k+184>>2];v[k+44>>2]=o;break c}M=m;m=C(F(C(C(C(C(C(-u)*n)-C(r*q))-C(p*m))/A),C(1)));m=m>C(0)?m:C(0);z[k+40>>2]=p+C(M*m);z[k+36>>2]=q+C(r*m);z[k+32>>2]=u+C(n*m);break c;case 1:KV(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break c;case 2:O_(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break c;default:break d}}z[k+40>>2]=E;z[k+36>>2]=B;z[k+32>>2]=D}p=z[k+40>>2];m=C(-p);u=z[k+36>>2];n=C(-u);q=z[k+32>>2];r=C(-q);A=C(C(p*p)+C(C(q*q)+C(u*u)));if(ea>2]+32|0];D=C(0);B=C(0);s=!(A>Z)|o;i=s?i:m;m=s?x:r;n=s?y:n;r=C(K(C(C(i*i)+C(C(m*m)+C(n*n)))));if(!(r<=C(1.1920928955078125e-7))){y=i;i=C(C(1)/r);ca=C(y*i);B=C(m*i);D=C(n*i)}v[l+188>>2]=0;z[l+184>>2]=-ca;z[l+180>>2]=-D;z[l+176>>2]=-B;z[l+160>>2]=N;v[l+172>>2]=v[k+252>>2];s=v[k+248>>2];v[l+164>>2]=v[k+244>>2];v[l+168>>2]=s;v[k+44>>2]=0;z[k+40>>2]=o?V:p;z[k+36>>2]=o?U:u;z[k+32>>2]=o?T:q;o=v[k+268>>2];H=v[k+264>>2];v[k+24>>2]=H;v[k+28>>2]=o;s=v[k+260>>2];da=v[k+256>>2];v[k+16>>2]=da;v[k+20>>2]=s;v[k+8>>2]=H;v[k+12>>2]=o;v[k>>2]=da;v[k+4>>2]=s;JV(k+176|0,k+112|0,k+48|0,k+32|0,k+16|0,k,v[k+240>>2]);i=z[v[a+4>>2]+16>>2];m=z[k+16>>2];n=z[k+20>>2];r=z[k+24>>2];v[l+204>>2]=0;z[l+200>>2]=r+(d?C(ca*i):C(-0));z[l+196>>2]=n+(d?C(D*i):C(-0));z[l+192>>2]=m+(d?C(B*i):C(-0));o=1}xa=k+272|0;if(o){d=v[l+164>>2];v[f>>2]=v[l+160>>2];v[f+4>>2]=d;d=v[l+172>>2];v[f+8>>2]=v[l+168>>2];v[f+12>>2]=d;if(!(!j|z[l+160>>2]!=C(0))){d=v[a+4>>2];j=v[b+4>>2];z[l+144>>2]=C(z[d+16>>2]+z[j+16>>2])*C(100);t[l+135|0]=0;v[l+88>>2]=0;v[l+92>>2]=0;v[l+80>>2]=0;v[l+84>>2]=0;v[l+72>>2]=0;v[l+76>>2]=0;k=l- -64|0;v[k>>2]=0;v[k+4>>2]=0;v[l+56>>2]=0;v[l+60>>2]=0;v[l+48>>2]=0;v[l+52>>2]=0;v[l+112>>2]=0;v[l+40>>2]=141148;v[l+44>>2]=d;v[l+32>>2]=141808;v[l+36>>2]=j;e:{f:{if(YX(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}v[l+16>>2]=1065353216;c=v[l+28>>2];v[l+8>>2]=v[l+24>>2];v[l+12>>2]=c;c=v[l+20>>2];v[l>>2]=v[l+16>>2];v[l+4>>2]=c;if(K_(a,b,l+140|0,l+136|0,w[l+135|0],0,l,l+48|0)-5>>>0<=1){break f}v[l+200>>2]=0;v[l+204>>2]=0;v[l+192>>2]=0;v[l+196>>2]=0;i=z[e+8>>2];m=z[e>>2];n=z[e+4>>2];v[l+188>>2]=0;r=C(C(1)/C(K(C(C(i*i)+C(C(m*m)+C(n*n))))));z[l+184>>2]=r*C(-i);z[l+180>>2]=r*C(-n);z[l+176>>2]=r*C(-m);i=C(0);break e}a=v[l+60>>2];v[l+200>>2]=v[l+56>>2];v[l+204>>2]=a;a=v[l+52>>2];v[l+192>>2]=v[l+48>>2];v[l+196>>2]=a;a=v[l+84>>2];v[l+176>>2]=v[l+80>>2];v[l+180>>2]=a;a=v[l+92>>2];v[l+184>>2]=v[l+88>>2];v[l+188>>2]=a;i=z[l+112>>2]}z[f>>2]=i>2];v[h>>2]=v[l+192>>2];v[h+4>>2]=a;a=v[l+204>>2];v[h+8>>2]=v[l+200>>2];v[h+12>>2]=a;a=v[l+180>>2];v[g>>2]=v[l+176>>2];v[g+4>>2]=a;a=v[l+188>>2];v[g+8>>2]=v[l+184>>2];v[g+12>>2]=a}xa=l+208|0;return o}function BU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=C(0),i=0,j=0,k=0,l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,t=0,w=0,D=C(0),E=C(0),F=C(0),G=0,H=0,I=0,J=0,K=0,L=0;d=xa-80|0;xa=d;o=-1;a:{b:{c:{switch(v[b>>2]-2|0){case 1:o=xU(a+28|0,v[a+8>>2]<<16|4);v[d+8>>2]=o;c=v[b+12>>2];v[d+24>>2]=v[b+8>>2];v[d+28>>2]=c;c=v[b+20>>2];v[d+32>>2]=v[b+16>>2];v[d+36>>2]=c;c=v[b+28>>2];v[d+40>>2]=v[b+24>>2];v[d+44>>2]=c;c=v[b+4>>2];v[d+16>>2]=v[b>>2];v[d+20>>2]=c;z[d+48>>2]=z[b+32>>2];z[d+52>>2]=z[b+36>>2];z[d+56>>2]=z[b+40>>2];z[d+60>>2]=z[b+44>>2];z[d- -64>>2]=z[b+48>>2];z[d+68>>2]=z[b+52>>2];z[d+72>>2]=z[b+56>>2];b=v[a+8>>2];if(b>>>0>=(v[a+12>>2]&2147483647)>>>0){f=d+8|0;b=v[a+12>>2];s=b&2147483647?b<<1:1;d:{if(!s){break d}c=B(s,72);if(!c){break d}e=v[37696];b=Ba[v[v[e>>2]+20>>2]](e)|0?43365:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,b,16608,553)|0}b=v[a+8>>2];if((b|0)>0){k=B(b,72)+e|0;c=v[a+4>>2];b=e;while(1){v[b>>2]=v[c>>2];g=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=g;g=v[c+20>>2];v[b+16>>2]=v[c+16>>2];v[b+20>>2]=g;g=v[c+28>>2];v[b+24>>2]=v[c+24>>2];v[b+28>>2]=g;g=v[c+36>>2];v[b+32>>2]=v[c+32>>2];v[b+36>>2]=g;z[b+40>>2]=z[c+40>>2];z[b+44>>2]=z[c+44>>2];z[b+48>>2]=z[c+48>>2];z[b+52>>2]=z[c+52>>2];z[b+56>>2]=z[c+56>>2];z[b+60>>2]=z[c+60>>2];z[b- -64>>2]=z[c- -64>>2];c=c+72|0;b=b+72|0;if(k>>>0>b>>>0){continue}break}b=v[a+8>>2]}c=B(b,72)+e|0;v[c>>2]=v[f>>2];b=v[f+12>>2];v[c+8>>2]=v[f+8>>2];v[c+12>>2]=b;b=v[f+20>>2];v[c+16>>2]=v[f+16>>2];v[c+20>>2]=b;b=v[f+28>>2];v[c+24>>2]=v[f+24>>2];v[c+28>>2]=b;b=v[f+36>>2];v[c+32>>2]=v[f+32>>2];v[c+36>>2]=b;z[c+40>>2]=z[f+40>>2];z[c+44>>2]=z[f+44>>2];z[c+48>>2]=z[f+48>>2];z[c+52>>2]=z[f+52>>2];z[c+56>>2]=z[f+56>>2];z[c+60>>2]=z[f+60>>2];z[c- -64>>2]=z[f- -64>>2];e:{if(v[a+12>>2]<0){break e}c=v[a+4>>2];if(!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[a+12>>2]=s;v[a+4>>2]=e;v[a+8>>2]=v[a+8>>2]+1;break b}e=v[a+4>>2]+B(b,72)|0;v[e>>2]=o;b=v[d+20>>2];v[e+8>>2]=v[d+16>>2];v[e+12>>2]=b;b=v[d+28>>2];v[e+16>>2]=v[d+24>>2];v[e+20>>2]=b;b=v[d+36>>2];v[e+24>>2]=v[d+32>>2];v[e+28>>2]=b;b=v[d+44>>2];v[e+32>>2]=v[d+40>>2];v[e+36>>2]=b;z[e+40>>2]=z[d+48>>2];z[e+44>>2]=z[d+52>>2];z[e+48>>2]=z[d+56>>2];z[e+52>>2]=z[d+60>>2];z[e+56>>2]=z[d+64>>2];z[e+60>>2]=z[d+68>>2];z[e- -64>>2]=z[d+72>>2];v[a+8>>2]=v[a+8>>2]+1;break b;case 0:break c;default:break a}}o=xU(a+28|0,v[a+20>>2]<<16|3);v[d+8>>2]=o;c=v[b+12>>2];v[d+24>>2]=v[b+8>>2];v[d+28>>2]=c;c=v[b+20>>2];v[d+32>>2]=v[b+16>>2];v[d+36>>2]=c;c=v[b+28>>2];v[d+40>>2]=v[b+24>>2];v[d+44>>2]=c;c=v[b+4>>2];v[d+16>>2]=v[b>>2];v[d+20>>2]=c;z[d+48>>2]=z[b+32>>2];z[d+52>>2]=z[b+36>>2];z[d+56>>2]=z[b+40>>2];z[d+60>>2]=z[b+44>>2];c=v[b+52>>2];f=d- -64|0;v[f>>2]=v[b+48>>2];v[f+4>>2]=c;b=v[a+20>>2];if(b>>>0>=(v[a+24>>2]&2147483647)>>>0){b=v[a+24>>2];k=b&2147483647?b<<1:1;f:{if(!k){break f}c=k<<6;if(!c){break f}e=v[37696];b=Ba[v[v[e>>2]+20>>2]](e)|0?43535:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,b,16608,553)|0}b=v[a+20>>2];if((b|0)>0){g=(b<<6)+e|0;c=v[a+16>>2];b=e;while(1){v[b>>2]=v[c>>2];f=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=f;f=v[c+20>>2];v[b+16>>2]=v[c+16>>2];v[b+20>>2]=f;f=v[c+28>>2];v[b+24>>2]=v[c+24>>2];v[b+28>>2]=f;f=v[c+36>>2];v[b+32>>2]=v[c+32>>2];v[b+36>>2]=f;z[b+40>>2]=z[c+40>>2];z[b+44>>2]=z[c+44>>2];z[b+48>>2]=z[c+48>>2];z[b+52>>2]=z[c+52>>2];f=v[c+60>>2];v[b+56>>2]=v[c+56>>2];v[b+60>>2]=f;c=c- -64|0;b=b- -64|0;if(g>>>0>b>>>0){continue}break}b=v[a+20>>2]}c=(b<<6)+e|0;v[c>>2]=v[d+8>>2];b=v[d+20>>2];v[c+8>>2]=v[d+16>>2];v[c+12>>2]=b;b=v[d+28>>2];v[c+16>>2]=v[d+24>>2];v[c+20>>2]=b;b=v[d+36>>2];v[c+24>>2]=v[d+32>>2];v[c+28>>2]=b;b=v[d+44>>2];v[c+32>>2]=v[d+40>>2];v[c+36>>2]=b;z[c+40>>2]=z[d+48>>2];z[c+44>>2]=z[d+52>>2];z[c+48>>2]=z[d+56>>2];z[c+52>>2]=z[d+60>>2];b=v[d+68>>2];v[c+56>>2]=v[d+64>>2];v[c+60>>2]=b;g:{if(v[a+24>>2]<0){break g}c=v[a+16>>2];if(!c){break g}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[a+24>>2]=k;v[a+16>>2]=e;v[a+20>>2]=v[a+20>>2]+1;break b}e=v[a+16>>2]+(b<<6)|0;v[e>>2]=o;b=v[d+20>>2];v[e+8>>2]=v[d+16>>2];v[e+12>>2]=b;b=v[d+28>>2];v[e+16>>2]=v[d+24>>2];v[e+20>>2]=b;b=v[d+36>>2];v[e+24>>2]=v[d+32>>2];v[e+28>>2]=b;b=v[d+44>>2];v[e+32>>2]=v[d+40>>2];v[e+36>>2]=b;z[e+40>>2]=z[d+48>>2];z[e+44>>2]=z[d+52>>2];z[e+48>>2]=z[d+56>>2];z[e+52>>2]=z[d+60>>2];b=v[d+68>>2];v[e+56>>2]=v[d+64>>2];v[e+60>>2]=b;v[a+20>>2]=v[a+20>>2]+1}j=xa-32|0;xa=j;G=v[a+56>>2];if(v[G+72>>2]){while(1){i=v[v[G+68>>2]+(H<<2)>>2];t=A[i+432>>3];w=A[i+440>>3];z[j+24>>2]=A[i+448>>3];z[j+20>>2]=w;z[j+16>>2]=t;l=z[i+28>>2];h=z[i+32>>2];z[j+8>>2]=-z[i+36>>2];z[j+4>>2]=-h;z[j>>2]=-l;J=j+16|0;l=C(Ba[v[v[i>>2]+8>>2]](i));m=0;e=xa-80|0;xa=e;v[e+76>>2]=o;h:{if(v[i+264>>2]==-1){break h}v[e+32>>2]=0;v[e+36>>2]=0;v[e+40>>2]=0;v[e+44>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;u[e+20>>1]=0;v[e+16>>2]=-1;v[e+8>>2]=0;v[e+12>>2]=0;v[e+56>>2]=0;v[e+48>>2]=2139095039;v[e+52>>2]=0;s=e+8|0;b=xa+-64|0;xa=b;f=v[a+36>>2];c=v[e+76>>2];k=c&65535;i:{if(f>>>0<=k>>>0){break i}g=x[v[a+40>>2]+(k<<1)>>1];if((g|0)==65535|f>>>0<=g>>>0|x[v[a+48>>2]+(k<<1)>>1]!=(c>>>16|0)){break i}f=v[v[a+28>>2]+(g<<2)>>2];if(!f){break i}c=f>>>16|0;if((f&65535)==4){k=v[35395];g=v[a+4>>2]+B(c,72)|0;f=v[g+60>>2];c=v[g+56>>2];z[b+60>>2]=z[g- -64>>2];v[b+52>>2]=c;v[b+56>>2]=f;v[b+48>>2]=3;I=A[g+16>>3];t=A[g+24>>3];w=A[g+32>>3];z[b+16>>2]=z[g+40>>2];z[b+20>>2]=z[g+44>>2];z[b+24>>2]=z[g+48>>2];h=z[g+52>>2];z[b+40>>2]=w;z[b+36>>2]=t;z[b+32>>2]=I;z[b+28>>2]=h;u[b+8>>1]=0;if(!(Ba[k|0](b+48|0,b+16|0,J,j,l,b+8|0,1,s)|0)){break i}m=g+8|0;break i}k=v[35394];g=v[a+16>>2]+(c<<6)|0;f=v[g+60>>2];c=v[g+56>>2];v[b+48>>2]=2;K=b,L=Waa(c,f),v[K+52>>2]=L;v[b+56>>2]=Aa;I=A[g+16>>3];t=A[g+24>>3];w=A[g+32>>3];z[b+16>>2]=z[g+40>>2];z[b+20>>2]=z[g+44>>2];z[b+24>>2]=z[g+48>>2];h=z[g+52>>2];z[b+40>>2]=w;z[b+36>>2]=t;z[b+32>>2]=I;z[b+28>>2]=h;u[b>>1]=0;if(!(Ba[k|0](b+48|0,b+16|0,J,j,l,b,1,s)|0)){break i}m=g+8|0}xa=b- -64|0;if(!m){break h}p=z[e+32>>2];r=z[j+8>>2];q=z[e+24>>2];l=z[j>>2];n=z[e+28>>2];h=z[j+4>>2];if(!(C(C(p*r)+C(C(q*l)+C(n*h)))>2]*r)+C(C(z[i+316>>2]*l)+C(h*z[i+320>>2]))))){break h}b=v[e+76>>2];z[i+324>>2]=p;z[i+320>>2]=n;z[i+316>>2]=q;v[i+264>>2]=b;D=z[m+40>>2];h=C(p-C(A[m+24>>3]));E=C(h+h);F=z[m+32>>2];h=C(q-C(A[m+8>>3]));p=C(h+h);q=z[m+36>>2];h=C(n-C(A[m+16>>3]));r=C(h+h);l=C(C(D*E)+C(C(F*p)+C(q*r)));n=z[m+44>>2];h=C(C(n*n)+C(-.5));z[i+312>>2]=C(D*l)+C(C(E*h)-C(n*C(C(F*r)-C(p*q))));z[i+308>>2]=C(q*l)+C(C(r*h)-C(n*C(C(D*p)-C(E*F))));z[i+304>>2]=C(F*l)+C(C(p*h)-C(n*C(C(q*E)-C(r*D))))}xa=e+80|0;H=H+1|0;if(H>>>0>2]){continue}break}}xa=j+32|0}xa=d+80|0;return o|0}function DM(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=C(l);m=m|0;n=n|0;var o=0,p=0,q=0;f=xa+-64|0;xa=f;e=v[j+4>>2];v[a+576>>2]=v[j>>2];v[a+580>>2]=e;v[a+608>>2]=v[j+32>>2];e=v[j+28>>2];v[a+600>>2]=v[j+24>>2];v[a+604>>2]=e;e=v[j+20>>2];v[a+592>>2]=v[j+16>>2];v[a+596>>2]=e;e=v[j+12>>2];v[a+584>>2]=v[j+8>>2];v[a+588>>2]=e;z[a+56>>2]=C(1)/l;z[a+52>>2]=l;z[a+68>>2]=z[m>>2];z[a+72>>2]=z[m+4>>2];z[a+76>>2]=z[m+8>>2];g=v[b+412>>2];h=v[b+320>>2];if(h){i=v[b+316>>2];e=v[b+148>>2];k=v[b+128>>2];j=0;while(1){m=v[i+(j<<2)>>2];n=(m>>>0)/(e>>>0)|0;m=v[v[k+(n<<2)>>2]+(m-B(e,n)<<2)>>2];if(m){t[m+42|0]=0}j=j+1|0;if((h|0)!=(j|0)){continue}break}}e=v[a+180>>2];v[e+608>>2]=v[b+308>>2];a:{if(g){v[e+604>>2]=v[b+284>>2];h=v[b+344>>2];break a}v[e+604>>2]=0;h=0}v[e+600>>2]=h;v[a+568>>2]=0;e=v[a+368>>2];j=v[e>>2];v[e>>2]=0;if(j){m=j;while(1){e=v[m>>2];jB(m);m=e;if(e){continue}break}while(1){e=v[j>>2];h=v[a+368>>2];v[j>>2]=v[h>>2];v[h>>2]=j;j=e;if(e){continue}break}}if(g){Ba[v[v[d>>2]+16>>2]](d);g=wr(v[a+620>>2],40);e=v[a+636>>2];h=v[a+632>>2];v[g+24>>2]=0;v[g+16>>2]=0;v[g+8>>2]=h;v[g+12>>2]=e;v[g+36>>2]=d;v[g+32>>2]=b;v[g+28>>2]=a;v[g>>2]=132604;v[g+20>>2]=c;v[g+24>>2]=1;if(c){Ba[v[v[c>>2]+16>>2]](c);v[g+16>>2]=v[v[g+20>>2]+16>>2]}v[a+192>>2]=0;v[a+196>>2]=0;v[a+216>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+200>>2]=0;n=v[b+304>>2];j=v[b+308>>2];v[a+564>>2]=j;h=a+472|0;k=v[b+296>>2];i=v[b+284>>2];e=i+j|0;c=v[a+480>>2]&2147483647;b:{if(e>>>0<=c>>>0){break b}d=e+32&-32;if(d>>>0>(v[a+536>>2]&2147483647)>>>0){Aw(a+528|0,d);c=v[a+480>>2]&2147483647}if(c>>>0>>0){EM(h,d)}if(d>>>0>(v[a+492>>2]&2147483647)>>>0){FM(a+484|0,d)}if(d>>>0<=(v[a+504>>2]&2147483647)>>>0){break b}GM(a+496|0,d)}v[f+56>>2]=0;v[f+60>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;d=e+1|0;if(d>>>0>(v[h+8>>2]&2147483647)>>>0){EM(h,d)}c=v[h+4>>2];if((c|0)<(d|0)){e=v[h>>2];m=e+(d<<6)|0;e=e+(c<<6)|0;while(1){z[e>>2]=z[f>>2];z[e+4>>2]=z[f+4>>2];z[e+8>>2]=z[f+8>>2];v[e+12>>2]=v[f+12>>2];z[e+16>>2]=z[f+16>>2];z[e+20>>2]=z[f+20>>2];z[e+24>>2]=z[f+24>>2];v[e+28>>2]=v[f+28>>2];z[e+32>>2]=z[f+32>>2];z[e+36>>2]=z[f+36>>2];z[e+40>>2]=z[f+40>>2];z[e+44>>2]=z[f+44>>2];z[e+48>>2]=z[f+48>>2];z[e+52>>2]=z[f+52>>2];z[e+56>>2]=z[f+56>>2];v[e+60>>2]=v[f+60>>2];e=e- -64|0;if(m>>>0>e>>>0){continue}break}}v[h+4>>2]=d;v[f+56>>2]=0;v[f+60>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;c=a+484|0;if(d>>>0>(v[c+8>>2]&2147483647)>>>0){FM(c,d)}e=v[c+4>>2];if((e|0)<(d|0)){h=v[c>>2];m=h+(d<<6)|0;e=h+(e<<6)|0;while(1){z[e>>2]=z[f>>2];z[e+4>>2]=z[f+4>>2];z[e+8>>2]=z[f+8>>2];z[e+12>>2]=z[f+12>>2];z[e+16>>2]=z[f+16>>2];z[e+20>>2]=z[f+20>>2];z[e+24>>2]=z[f+24>>2];z[e+28>>2]=z[f+28>>2];z[e+32>>2]=z[f+32>>2];z[e+36>>2]=z[f+36>>2];z[e+40>>2]=z[f+40>>2];z[e+44>>2]=z[f+44>>2];z[e+48>>2]=z[f+48>>2];z[e+52>>2]=z[f+52>>2];z[e+56>>2]=z[f+56>>2];z[e+60>>2]=z[f+60>>2];e=e- -64|0;if(m>>>0>e>>>0){continue}break}}v[c+4>>2]=d;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;e=a+496|0;if(d>>>0>(v[e+8>>2]&2147483647)>>>0){GM(e,d)}c=v[e+4>>2];if((c|0)<(d|0)){h=v[e>>2];m=h+B(d,48)|0;c=h+B(c,48)|0;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];z[c+12>>2]=z[f+12>>2];z[c+16>>2]=z[f+16>>2];z[c+20>>2]=z[f+20>>2];z[c+24>>2]=z[f+24>>2];h=v[f+32>>2];v[c+28>>2]=v[f+28>>2];v[c+32>>2]=h;h=v[f+40>>2];v[c+36>>2]=v[f+36>>2];v[c+40>>2]=h;v[c+44>>2]=v[f+44>>2];c=c+48|0;if(m>>>0>c>>>0){continue}break}}v[e+4>>2]=d;m=0;v[f>>2]=0;cz(a+528|0,d,f);c=v[a+472>>2];z[c>>2]=z[a+192>>2];z[c+4>>2]=z[a+196>>2];z[c+8>>2]=z[a+200>>2];v[c+12>>2]=v[a+204>>2];z[c+16>>2]=z[a+208>>2];z[c+20>>2]=z[a+212>>2];z[c+24>>2]=z[a+216>>2];v[c+28>>2]=v[a+220>>2];z[c+32>>2]=z[a+224>>2];z[c+36>>2]=z[a+228>>2];z[c+40>>2]=z[a+232>>2];z[c+44>>2]=z[a+236>>2];z[c+48>>2]=z[a+240>>2];z[c+52>>2]=z[a+244>>2];z[c+56>>2]=z[a+248>>2];v[c+60>>2]=v[a+252>>2];c=v[a+484>>2];z[c>>2]=z[a+256>>2];z[c+4>>2]=z[a+260>>2];z[c+8>>2]=z[a+264>>2];z[c+12>>2]=z[a+268>>2];z[c+16>>2]=z[a+272>>2];z[c+20>>2]=z[a+276>>2];z[c+24>>2]=z[a+280>>2];z[c+28>>2]=z[a+284>>2];z[c+32>>2]=z[a+288>>2];z[c+36>>2]=z[a+292>>2];z[c+40>>2]=z[a+296>>2];z[c+44>>2]=z[a+300>>2];z[c+48>>2]=z[a+304>>2];z[c+52>>2]=z[a+308>>2];z[c+56>>2]=z[a+312>>2];z[c+60>>2]=z[a+316>>2];c=v[a+496>>2];z[c>>2]=z[a+320>>2];z[c+4>>2]=z[a+324>>2];z[c+8>>2]=z[a+328>>2];z[c+12>>2]=z[a+332>>2];z[c+16>>2]=z[a+336>>2];z[c+20>>2]=z[a+340>>2];z[c+24>>2]=z[a+344>>2];d=v[a+352>>2];v[c+28>>2]=v[a+348>>2];v[c+32>>2]=d;d=v[a+360>>2];v[c+36>>2]=v[a+356>>2];v[c+40>>2]=d;v[c+44>>2]=v[a+364>>2];if(j){d=b+168|0;while(1){c=wr(v[a+620>>2],56);e=v[a+472>>2];h=v[a+484>>2];p=v[a+496>>2];o=v[a+636>>2];q=v[a+632>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=q;v[c+12>>2]=o;v[c+36>>2]=d;o=j-m|0;v[c+32>>2]=o>>>0<1024?o:1024;v[c+28>>2]=n+(m<<2);v[c>>2]=132660;v[c+20>>2]=g;v[c+24>>2]=1;o=m|1;v[c+48>>2]=p+B(o,48);p=h;h=o<<6;v[c+44>>2]=p+h;v[c+40>>2]=e+h;Ba[v[v[g>>2]+16>>2]](g);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);m=m+1024|0;if(j>>>0>m>>>0){continue}break}}d=v[b+344>>2];c=v[b+340>>2];v[a+380>>2]=0;d=d+(c+(k<<6)|0)|0;b=d+63&-64;if(b>>>0>(v[a+384>>2]&2147483647)>>>0){dz(a+376|0,b)}v[a+380>>2]=d;v[a+392>>2]=0;if(b>>>0>(v[a+396>>2]&2147483647)>>>0){dz(a+388|0,b)}v[a+392>>2]=d;v[a+416>>2]=0;if(b>>>0>(v[a+420>>2]&2147483647)>>>0){ez(a+412|0,b)}v[a+416>>2]=d;v[a+404>>2]=0;if(b>>>0>(v[a+408>>2]&2147483647)>>>0){dz(a+400|0,b)}v[a+404>>2]=d;v[a+556>>2]=0;b=c+63&-64;if(b>>>0>(v[a+560>>2]&2147483647)>>>0){fz(a+552|0,b)}v[a+556>>2]=c;v[a+428>>2]=0;b=i+63&-64;if(b>>>0>(v[a+432>>2]&2147483647)>>>0){gz(a+424|0,b)}v[a+428>>2]=i;v[a+440>>2]=0;if(b>>>0>(v[a+444>>2]&2147483647)>>>0){hz(a+436|0,b)}v[a+440>>2]=i;v[a+452>>2]=0;if(b>>>0>(v[a+456>>2]&2147483647)>>>0){iz(a+448|0,b)}v[a+452>>2]=i;v[a+464>>2]=0;d=k+63&-64;if(d>>>0>(v[a+468>>2]&2147483647)>>>0){jz(a+460|0,d)}v[a+464>>2]=k;v[a+544>>2]=0;if(b>>>0>(v[a+548>>2]&2147483647)>>>0){Aw(a+540|0,b)}v[a+544>>2]=i;b=v[a+4>>2];v[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>(v[b+12>>2]&2147483647)>>>0){kz(b,c)}v[a+628>>2]=1-v[a+628>>2];Ba[v[v[g>>2]+20>>2]](g)}xa=f- -64|0}function iO(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,y=0,A=0,D=C(0),E=0,F=C(0),G=0,H=0,I=0,J=0,K=C(0);h=xa-16|0;E=h;xa=h;H=v[g>>2];G=v[f>>2];I=v[e>>2];a:{if(!v[a+52>>2]){break a}k=B(c,80);t[E+12|0]=k>>>0>1024;b:{if(k>>>0>=1025){j=u9(k,6023,144);break b}j=h-(k+15&-16)|0;xa=j}v[E+8>>2]=j;if(c){n=v[v[a+48>>2]+1816>>2];while(1){h=v[(m<<2)+b>>2];k=v[a+32>>2]+(h<<4)|0;i=w[k+12|0];if(i){l=v[E+8>>2]+B(m,80)|0;y=v[v[a+28>>2]+(h<<2)>>2];h=v[37412];v[l+8>>2]=v[y+24>>2]+h;v[l+12>>2]=h+v[y+28>>2];h=x[y+40>>1];v[l>>2]=v[y+16>>2]+v[(h&32?149652:149656)>>2];v[l+4>>2]=v[y+20>>2]+v[(h&64?149652:149656)>>2];h=v[n+4>>2];o=h+(v[y+56>>2]<<5)|0;z[l+16>>2]=z[o>>2];z[l+20>>2]=z[o+4>>2];z[l+24>>2]=z[o+8>>2];z[l+28>>2]=z[o+12>>2];z[l+32>>2]=z[o+16>>2];z[l+36>>2]=z[o+20>>2];z[l+40>>2]=z[o+24>>2];h=h+(v[y+60>>2]<<5)|0;z[l+44>>2]=z[h>>2];z[l+48>>2]=z[h+4>>2];z[l+52>>2]=z[h+8>>2];z[l+56>>2]=z[h+12>>2];z[l+60>>2]=z[h+16>>2];z[l- -64>>2]=z[h+20>>2];z[l+68>>2]=z[h+24>>2];p=v[k+4>>2];v[l+76>>2]=p;v[l+72>>2]=i;F=C(34028234663852886e22);D=C(34028234663852886e22);h=x[y+40>>1];D=h&32?z[v[y+16>>2]+128>>2]:D;F=h&64?z[v[y+20>>2]+128>>2]:F;D=D>>0>1?i:1;k=h&7;l=0;r=0;if(h-1>>>0>=7){h=h&248;i=0;while(1){o=r<<6;z[(o+p|0)+28>>2]=D;z[(p+(o|64)|0)+28>>2]=D;z[(p+(o|128)|0)+28>>2]=D;z[(p+(o|192)|0)+28>>2]=D;z[(p+(o|256)|0)+28>>2]=D;z[(p+(o|320)|0)+28>>2]=D;z[(p+(o|384)|0)+28>>2]=D;z[(p+(o|448)|0)+28>>2]=D;r=r+8|0;i=i+8|0;if((h|0)!=(i|0)){continue}break}}if(k){while(1){z[(p+(r<<6)|0)+28>>2]=D;r=r+1|0;l=l+1|0;if((k|0)!=(l|0)){continue}break}}k=w[y+46|0];h=w[y+47|0];h=(B(h>>>0>k>>>0?k:h,28)+d|0)+((h>>>0>>0?k:h)<<2)|0;v[h+304>>2]=v[h+304>>2]+1}m=m+1|0;if((m|0)!=(c|0)){continue}break}j=v[E+8>>2]}h=v[a+52>>2];Ba[v[v[h>>2]>>2]](h,j,c);if(!w[E+12|0]){break a}v9(v[E+8>>2])}if(c){while(1){h=v[(J<<2)+b>>2];q=v[a+32>>2]+(h<<4)|0;k=w[q+13|0];p=v[v[a+28>>2]+(h<<2)>>2];c:{if(!w[q+12|0]){h=0;break c}y=v[q+4>>2];o=v[q>>2];d:{if(!(w[o+43|0]&64)){break d}l=0;m=0;if(!k){break d}while(1){A=o+B(l,48)|0;h=w[A+40|0];s=y+(h<<6)|0;z[A+16>>2]=z[s+32>>2];z[A+20>>2]=z[s+36>>2];z[A+24>>2]=z[s+40>>2];z[A+32>>2]=z[s+60>>2];z[A+36>>2]=z[s+56>>2];z[A+28>>2]=z[s+44>>2];r=w[A+41|0];e:{if(r>>>0<2){break e}K=z[s+40>>2];F=z[s+36>>2];D=z[s+32>>2];j=1;while(1){n=h+j|0;i=y+(n<<6)|0;if(!(!(C(C(K*z[i+40>>2])+C(C(D*z[i+32>>2])+C(F*z[i+36>>2])))>2]>C(0)))){h=k;i=h-1|0;if(l>>>0>>0){while(1){r=o+B(h,48)|0;s=o+B(i,48)|0;h=v[s+4>>2];v[r>>2]=v[s>>2];v[r+4>>2]=h;h=v[s+12>>2];v[r+8>>2]=v[s+8>>2];v[r+12>>2]=h;z[r+16>>2]=z[s+16>>2];z[r+20>>2]=z[s+20>>2];z[r+24>>2]=z[s+24>>2];h=v[s+32>>2];v[r+28>>2]=v[s+28>>2];v[r+32>>2]=h;h=v[s+40>>2];v[r+36>>2]=v[s+36>>2];v[r+40>>2]=h;v[r+44>>2]=v[s+44>>2];h=i;i=h-1|0;if(l>>>0>>0){continue}break}r=w[A+41|0]}u[A+90>>1]=x[A+42>>1];t[A+89|0]=r-j;t[A+88|0]=n;t[A+41|0]=j;k=k+1|0;break e}j=j+1|0;if((r|0)!=(j|0)){continue}break}}m=m+1|0;l=m&255;if(l>>>0>>0){continue}break}}if(w[q+15|0]>>0){n=v[p+48>>2];m=n+32>>>5|0;f:{if(m>>>0<=(v[d+7208>>2]&2147483647)>>>0){j=v[d+7204>>2];break f}h=v[37696]+12|0;j=Ba[v[v[h>>2]+8>>2]](h,m<<2,24422,18067,438)|0;h=v[d+7204>>2];g:{if(!h){break g}I9(j,h,v[d+7208>>2]<<2);if(v[d+7208>>2]<0){break g}i=v[d+7204>>2];if(!i){break g}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,i)}h=v[d+7208>>2];J9((h<<2)+j|0,0,m-h<<2);v[d+7208>>2]=m;v[d+7204>>2]=j}h=(n>>>3&536870908)+j|0;v[h>>2]=v[h>>2]|1<>>0>>0?H:k;m=w[q+12|0];if(!m){h=0;break c}i=0;h=0;j=0;if(m-1>>>0>=3){n=m&252;l=0;while(1){o=h;h=j<<6;h=(((o+(z[(h+y|0)+28>>2]!=C(0))|0)+(z[(y+(h|64)|0)+28>>2]!=C(0))|0)+(z[(y+(h|128)|0)+28>>2]!=C(0))|0)+(z[(y+(h|192)|0)+28>>2]!=C(0))|0;j=j+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}n=m&3;if(!n){break c}while(1){h=(z[(y+(j<<6)|0)+28>>2]!=C(0))+h|0;j=j+1|0;i=i+1|0;if((n|0)!=(i|0)){continue}break}}if(w[q+15|0]>(k&255)>>>0){n=v[p+48>>2];m=n+32>>>5|0;h:{if(m>>>0<=(v[d+7208>>2]&2147483647)>>>0){j=v[d+7204>>2];break h}k=v[37696]+12|0;j=Ba[v[v[k>>2]+8>>2]](k,m<<2,24422,18067,438)|0;k=v[d+7204>>2];i:{if(!k){break i}I9(j,k,v[d+7208>>2]<<2);if(v[d+7208>>2]<0){break i}i=v[d+7204>>2];if(!i){break i}k=v[37696]+12|0;Ba[v[v[k>>2]+12>>2]](k,i)}k=v[d+7208>>2];J9((k<<2)+j|0,0,m-k<<2);v[d+7208>>2]=m;v[d+7204>>2]=j}k=(n>>>3&536870908)+j|0;v[k>>2]=v[k>>2]|1<>2]=0;v[p+36>>2]=0;t[q+13|0]=0;t[q+12|0]=0;if(!w[q+15|0]){break j}i=v[p+48>>2];n=i+32>>>5|0;k:{if(n>>>0<=(v[d+7208>>2]&2147483647)>>>0){j=v[d+7204>>2];break k}h=v[37696]+12|0;j=Ba[v[v[h>>2]+8>>2]](h,n<<2,24422,18067,438)|0;h=v[d+7204>>2];l:{if(!h){break l}I9(j,h,v[d+7208>>2]<<2);if(v[d+7208>>2]<0){break l}k=v[d+7204>>2];if(!k){break l}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,k)}h=v[d+7208>>2];J9((h<<2)+j|0,0,n-h<<2);v[d+7208>>2]=n;v[d+7204>>2]=j}G=G+1|0;h=(i>>>3&536870908)+j|0;v[h>>2]=v[h>>2]|1<>2];if(!k){break j}h=w[q+13|0];i=k;k=v[k+4>>2]+(w[q+12|0]<<5)|0;v[i+4>>2]=k;i=v[d+7172>>2];j=v[i+8>>2];s=v[i>>2];y=v[i+12>>2];l=v[i+4>>2];i=v[d+7176>>2];h=v[i+4>>2]+B(h,48)|0;v[i+4>>2]=h;i=v[d+7176>>2];A=v[i+8>>2];p=v[i>>2];o=w[v[q>>2]+43|0];m=v[i+12>>2];n=v[i+4>>2];i=v[d+7180>>2];r=v[i+4>>2]+(w[q+12|0]<<2)|0;v[i+4>>2]=r;m:{if(!(A>>>0<=m+n>>>0|j>>>0<=l+y>>>0)){m=v[d+7180>>2];i=v[m+8>>2];if(i>>>0>v[m+12>>2]+v[m+4>>2]>>>0){break m}}v[q>>2]=0;v[q+4>>2]=0;u[q+6>>1]=0;u[q+8>>1]=0;u[q+10>>1]=0;u[q+12>>1]=0;break j}n=j+s|0;i=(i+v[m>>2]|0)-r|0;v[q+8>>2]=i;J9(i,0,w[q+12|0]<<2);p=I9((p+A|0)-h|0,v[q>>2],B(w[q+13|0],48));m=w[q+13|0];n:{if(!m){break n}o=o|-128;l=0;j=0;if(m-1>>>0>=7){h=m&248;i=0;while(1){t[(p+B(j,48)|0)+43|0]=o;t[(p+B(j|1,48)|0)+43|0]=o;t[(p+B(j|2,48)|0)+43|0]=o;t[(p+B(j|3,48)|0)+43|0]=o;t[(p+B(j|4,48)|0)+43|0]=o;t[(p+B(j|5,48)|0)+43|0]=o;t[(p+B(j|6,48)|0)+43|0]=o;t[(p+B(j|7,48)|0)+43|0]=o;j=j+8|0;i=i+8|0;if((h|0)!=(i|0)){continue}break}}h=m&7;if(h){while(1){t[(p+B(j,48)|0)+43|0]=o;j=j+1|0;l=l+1|0;if((h|0)!=(l|0)){continue}break}}j=1;if(m>>>0<=1){break n}while(1){h=v[p+4>>2];i=p+B(j,48)|0;v[i>>2]=v[p>>2];v[i+4>>2]=h;h=v[p+12>>2];v[i+8>>2]=v[p+8>>2];v[i+12>>2]=h;j=j+1|0;if(j>>>0>2];l=0;while(1){m=i+(l<<5)|0;n=h+(l<<6)|0;z[m>>2]=z[n>>2];z[m+4>>2]=z[n+4>>2];z[m+8>>2]=z[n+8>>2];z[m+12>>2]=z[n+12>>2];z[m+16>>2]=z[n+16>>2];z[m+20>>2]=z[n+20>>2];z[m+24>>2]=z[n+24>>2];z[m+28>>2]=z[n+28>>2];l=l+1|0;if((k|0)!=(l|0)){continue}break}}v[q>>2]=p;v[q+4>>2]=i}J=J+1|0;if((J|0)!=(c|0)){continue}break}}v[e>>2]=I;v[f>>2]=G;v[g>>2]=H;xa=E+16|0}function _A(a){var b=C(0),c=C(0),d=C(0),e=C(0),f=C(0),g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=0,Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=0,Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=0,_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=0,Tb=0,Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0),cc=C(0),dc=C(0),ec=C(0),fc=C(0);g=v[a+100>>2];Cb=z[g+28>>2];H=z[g+16>>2];h=v[a+96>>2];I=z[h+24>>2];J=z[h+20>>2];Db=z[g+12>>2];K=z[g+8>>2];L=z[g+4>>2];M=z[g>>2];i=v[a+68>>2];Eb=z[i+28>>2];N=z[i+16>>2];j=v[a+64>>2];O=z[j+24>>2];P=z[j+20>>2];Fb=z[i+12>>2];Q=z[i+8>>2];R=z[i+4>>2];S=z[i>>2];k=v[a+36>>2];Gb=z[k+28>>2];T=z[k+16>>2];l=v[a+32>>2];U=z[l+24>>2];V=z[l+20>>2];Hb=z[k+12>>2];W=z[k+8>>2];X=z[k+4>>2];Y=z[k>>2];m=v[a+4>>2];Z=z[m+24>>2];_=z[m+20>>2];n=v[a>>2];$=z[n+24>>2];aa=z[n+20>>2];ba=z[g+24>>2];ca=z[g+20>>2];da=z[i+24>>2];ea=z[i+20>>2];fa=z[k+24>>2];ga=z[k+20>>2];Ib=z[h+28>>2];ha=z[h+16>>2];Jb=z[h+12>>2];ia=z[h+8>>2];ja=z[h+4>>2];ka=z[h>>2];Kb=z[j+28>>2];la=z[j+16>>2];Lb=z[j+12>>2];ma=z[j+8>>2];na=z[j+4>>2];oa=z[j>>2];Mb=z[l+28>>2];pa=z[l+16>>2];Nb=z[l+12>>2];qa=z[l+8>>2];ra=z[l+4>>2];sa=z[l>>2];Ob=z[m+28>>2];ta=z[m+16>>2];Pb=z[n+28>>2];ua=z[n+16>>2];Qb=z[m+12>>2];va=z[m+8>>2];wa=z[m+4>>2];xa=z[m>>2];Rb=z[n+12>>2];ya=z[n+8>>2];za=z[n+4>>2];Aa=z[n>>2];a=v[a+24>>2];Ba=x[a+2>>1];if(Ba){Sb=a+Ba|0;while(1){Za=a+160|0;Pa=w[a+1|0];Ba=Za+B(Pa,176)|0;Ca=z[a+76>>2];Da=z[a+72>>2];Ea=z[a+68>>2];Fa=z[a+60>>2];Ga=z[a+56>>2];Ha=z[a+52>>2];Ia=z[a+44>>2];Ja=z[a+40>>2];Ka=z[a+36>>2];_a=z[a+108>>2];$a=z[a+104>>2];ab=z[a+100>>2];bb=z[a+92>>2];cb=z[a+88>>2];db=z[a+84>>2];La=z[a+64>>2];Ma=z[a+48>>2];Na=z[a+32>>2];eb=z[a+96>>2];fb=z[a+80>>2];a:{if(!Pa){q=C(0);r=C(0);s=C(0);t=C(0);break a}Tb=x[a+2>>1]+(a+96|0)|0;Ub=z[a+140>>2];Vb=z[a+136>>2];Wb=z[a+132>>2];Xb=z[a+124>>2];Yb=z[a+120>>2];Zb=z[a+116>>2];_b=z[a+128>>2];$b=z[a+112>>2];Qa=C(C(C(Aa*Na)+C(za*Ma))+C(ya*La));Ra=C(C(C(sa*Ka)+C(ra*Ha))+C(qa*Ea));Sa=C(C(C(oa*Ja)+C(na*Ga))+C(ma*Da));Ta=C(C(C(ka*Ia)+C(ja*Fa))+C(ia*Ca));Ua=C(C(C(xa*Na)+C(wa*Ma))+C(va*La));Va=C(C(C(Y*Ka)+C(X*Ha))+C(W*Ea));Wa=C(C(C(S*Ja)+C(R*Ga))+C(Q*Da));Xa=C(C(C(M*Ia)+C(L*Fa))+C(K*Ca));t=C(0);G=0;s=C(0);r=C(0);q=C(0);while(1){a=B(G,176)+Za|0;b=z[a+116>>2];d=z[a+52>>2];ac=z[a+100>>2];bc=z[a+84>>2];c=z[a+68>>2];gb=z[a+36>>2];hb=z[a+20>>2];ib=z[a+4>>2];D=z[a+164>>2];jb=z[a+132>>2];kb=z[a+148>>2];E=z[a+120>>2];e=z[a+56>>2];cc=z[a+104>>2];dc=z[a+88>>2];o=z[a+72>>2];lb=z[a+40>>2];mb=z[a+24>>2];nb=z[a+8>>2];ob=z[a+168>>2];pb=z[a+136>>2];qb=z[a+152>>2];F=z[a+124>>2];f=z[a+60>>2];Oa=z[a+108>>2];ec=z[a+92>>2];p=z[a+76>>2];rb=z[a+44>>2];sb=z[a+28>>2];tb=z[a+12>>2];ub=z[a+172>>2];vb=z[a+140>>2];wb=z[a+156>>2];Ya=z[a+48>>2];u=C(-Ya);y=z[a+64>>2];fc=C(C(y*z[a+80>>2])-z[a+96>>2]);A=y;y=z[a>>2];xb=z[a+16>>2];yb=z[a+32>>2];zb=z[a+128>>2];Ab=z[a+144>>2];Bb=z[a+160>>2];A=C(fc-C(A*C(C(Qa+C(C(C(ua*y)+C(aa*xb))+C($*yb)))-C(Ua+C(C(C(ta*zb)+C(_*Ab))+C(Z*Bb))))));u=C(Ya+(u>2];u=u>2]=u;p=C(C(C(p*ec)-Oa)-C(p*C(C(Ta+C(C(C(ha*tb)+C(J*sb))+C(I*rb)))-C(Xa+C(C(C(H*vb)+C(ca*wb))+C(ba*ub))))));Oa=C(-f);p=C(f+(p>Oa?p:Oa));F=p>2]=F;o=C(C(C(o*dc)-cc)-C(o*C(C(Sa+C(C(C(la*nb)+C(P*mb))+C(O*lb)))-C(Wa+C(C(C(N*pb)+C(ea*qb))+C(da*ob))))));p=C(-e);o=C(e+(o>p?o:p));E=o>2]=E;c=C(C(C(c*bc)-ac)-C(c*C(C(Ra+C(C(C(pa*ib)+C(V*hb))+C(U*gb)))-C(Va+C(C(C(T*jb)+C(ga*kb))+C(fa*D))))));o=C(-d);c=C(d+(c>o?c:o));c=b>c?c:b;z[a+52>>2]=c;a=(G<<4)+Tb|0;z[a+12>>2]=F;z[a+8>>2]=E;z[a+4>>2]=c;z[a>>2]=u;b=C(u-Ya);q=C(q+b);f=C(F-f);t=C(t+f);e=C(E-e);s=C(s+e);d=C(c-d);r=C(r+d);Ua=C(Ua-C(eb*b));Qa=C(Qa+C(fb*b));c=C(_b*b);Z=C(Z-C(Bb*c));b=C($b*b);$=C($+C(yb*b));_=C(_-C(Ab*c));aa=C(aa+C(xb*b));ta=C(ta-C(zb*c));ua=C(ua+C(y*b));Xa=C(Xa-C(_a*f));Wa=C(Wa-C($a*e));Va=C(Va-C(ab*d));Ta=C(Ta+C(bb*f));Sa=C(Sa+C(cb*e));Ra=C(Ra+C(db*d));b=C(Ub*f);ba=C(ba-C(ub*b));c=C(Vb*e);da=C(da-C(ob*c));y=D;D=C(Wb*d);fa=C(fa-C(y*D));f=C(Xb*f);I=C(I+C(rb*f));e=C(Yb*e);O=C(O+C(lb*e));d=C(Zb*d);U=C(U+C(gb*d));ca=C(ca-C(wb*b));ea=C(ea-C(qb*c));ga=C(ga-C(kb*D));J=C(J+C(sb*f));P=C(P+C(mb*e));V=C(V+C(hb*d));H=C(H-C(vb*b));N=C(N-C(pb*c));T=C(T-C(jb*D));ha=C(ha+C(tb*f));la=C(la+C(nb*e));pa=C(pa+C(ib*d));G=G+1|0;if((Pa|0)!=(G|0)){continue}break}}b=C(_a*t);K=C(K-C(Ca*b));f=C($a*s);Q=C(Q-C(Da*f));e=C(ab*r);W=C(W-C(Ea*e));d=C(eb*q);va=C(va-C(La*d));t=C(bb*t);ia=C(ia+C(Ca*t));s=C(cb*s);ma=C(ma+C(Da*s));r=C(db*r);qa=C(qa+C(Ea*r));q=C(fb*q);ya=C(ya+C(La*q));L=C(L-C(Fa*b));R=C(R-C(Ga*f));X=C(X-C(Ha*e));wa=C(wa-C(Ma*d));ja=C(ja+C(Fa*t));na=C(na+C(Ga*s));ra=C(ra+C(Ha*r));za=C(za+C(Ma*q));M=C(M-C(Ia*b));S=C(S-C(Ja*f));Y=C(Y-C(Ka*e));xa=C(xa-C(Na*d));ka=C(ka+C(Ia*t));oa=C(oa+C(Ja*s));sa=C(sa+C(Ka*r));Aa=C(Aa+C(Na*q));a=Ba;if(Sb>>>0>a>>>0){continue}break}}z[n+12>>2]=Rb;z[n+8>>2]=ya;z[n+4>>2]=za;z[n>>2]=Aa;z[l+12>>2]=Nb;z[l+8>>2]=qa;z[l+4>>2]=ra;z[l>>2]=sa;z[j+12>>2]=Lb;z[j+8>>2]=ma;z[j+4>>2]=na;z[j>>2]=oa;z[h+12>>2]=Jb;z[h+8>>2]=ia;z[h+4>>2]=ja;z[h>>2]=ka;z[m+12>>2]=Qb;z[m+8>>2]=va;z[m+4>>2]=wa;z[m>>2]=xa;z[k+12>>2]=Hb;z[k+8>>2]=W;z[k+4>>2]=X;z[k>>2]=Y;z[i+12>>2]=Fb;z[i+8>>2]=Q;z[i+4>>2]=R;z[i>>2]=S;z[g+12>>2]=Db;z[g+8>>2]=K;z[g+4>>2]=L;z[g>>2]=M;z[n+28>>2]=Pb;z[n+24>>2]=$;z[n+20>>2]=aa;z[n+16>>2]=ua;z[l+28>>2]=Mb;z[l+24>>2]=U;z[l+20>>2]=V;z[l+16>>2]=pa;z[j+28>>2]=Kb;z[j+24>>2]=O;z[j+20>>2]=P;z[j+16>>2]=la;z[h+28>>2]=Ib;z[h+24>>2]=I;z[h+20>>2]=J;z[h+16>>2]=ha;z[m+28>>2]=Ob;z[m+24>>2]=Z;z[m+20>>2]=_;z[m+16>>2]=ta;z[k+28>>2]=Gb;z[k+24>>2]=fa;z[k+20>>2]=ga;z[k+16>>2]=T;z[i+28>>2]=Eb;z[i+24>>2]=da;z[i+20>>2]=ea;z[i+16>>2]=N;z[g+28>>2]=Cb;z[g+24>>2]=ba;z[g+20>>2]=ca;z[g+16>>2]=H}function CE(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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;v[a+32>>2]=0;v[a+28>>2]=b;a:{switch(b|0){case 0:b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?32269:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,7696,c,8548,83)|0;v[c>>2]=129652;b=c+16|0;v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b+608>>2]=0;v[b+612>>2]=0;v[b+632>>2]=0;v[b+624>>2]=0;v[b+628>>2]=0;v[b+616>>2]=0;v[b+620>>2]=0;v[b+644>>2]=0;v[b+636>>2]=0;v[b+640>>2]=0;jC(b+688|0);jC(b+912|0);d=b+1136|0;jC(d);e=b+1360|0;jC(e);f=b+1584|0;jC(f);g=b+1808|0;jC(g);jC(b+2032|0);h=b+2256|0;jC(h);i=b+2480|0;jC(i);j=b+2704|0;jC(j);k=b+2928|0;jC(k);l=b+3152|0;jC(l);m=b+3376|0;jC(m);n=b+3600|0;jC(n);o=b+3824|0;jC(o);p=b+4048|0;jC(p);q=b+4272|0;jC(q);r=b+4496|0;jC(r);s=b+4720|0;jC(s);u=b+4944|0;jC(u);w=b+5168|0;jC(w);x=b+5392|0;jC(x);y=b+5616|0;jC(y);z=b+5840|0;jC(z);A=b+6064|0;jC(A);B=b+6288|0;jC(B);C=b+6512|0;jC(C);D=b+6736|0;jC(D);E=b+6960|0;jC(E);F=b+7184|0;jC(F);G=b+7408|0;jC(G);t[b+7633|0]=0;t[b+7632|0]=1;v[b+688>>2]=0;v[b+692>>2]=0;v[b+680>>2]=-25165825;v[b+672>>2]=-25165825;v[b+676>>2]=-25165825;v[b+664>>2]=0;v[b+656>>2]=0;v[b+660>>2]=0;v[b+696>>2]=0;v[b+700>>2]=0;v[b+704>>2]=0;v[b+708>>2]=0;v[b+712>>2]=0;v[b+716>>2]=0;v[b+720>>2]=0;v[b+724>>2]=0;v[b+912>>2]=0;v[b+916>>2]=0;v[b+920>>2]=0;v[b+924>>2]=0;v[b+928>>2]=0;v[b+932>>2]=0;v[b+936>>2]=0;v[b+940>>2]=0;v[b+944>>2]=0;v[b+948>>2]=0;v[d>>2]=0;v[d+4>>2]=0;d=b+1144|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1152|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1160|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1168|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1392|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1384|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1376|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1368|0;v[d>>2]=0;v[d+4>>2]=0;v[e>>2]=0;v[e+4>>2]=0;d=b+1616|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1608|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1600|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1592|0;v[d>>2]=0;v[d+4>>2]=0;v[f>>2]=0;v[f+4>>2]=0;d=b+1840|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1832|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1824|0;v[d>>2]=0;v[d+4>>2]=0;d=b+1816|0;v[d>>2]=0;v[d+4>>2]=0;v[g>>2]=0;v[g+4>>2]=0;d=b+2064|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2056|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2048|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2040|0;v[d>>2]=0;v[d+4>>2]=0;v[b+2032>>2]=0;v[b+2036>>2]=0;d=b+2288|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2280|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2272|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2264|0;v[d>>2]=0;v[d+4>>2]=0;v[h>>2]=0;v[h+4>>2]=0;v[i>>2]=0;v[i+4>>2]=0;d=b+2488|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2496|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2504|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2512|0;v[d>>2]=0;v[d+4>>2]=0;v[j>>2]=0;v[j+4>>2]=0;d=b+2712|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2720|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2728|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2736|0;v[d>>2]=0;v[d+4>>2]=0;v[k>>2]=0;v[k+4>>2]=0;d=b+2936|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2944|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2952|0;v[d>>2]=0;v[d+4>>2]=0;d=b+2960|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3184|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3176|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3168|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3160|0;v[d>>2]=0;v[d+4>>2]=0;v[l>>2]=0;v[l+4>>2]=0;d=b+3408|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3400|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3392|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3384|0;v[d>>2]=0;v[d+4>>2]=0;v[m>>2]=0;v[m+4>>2]=0;d=b+3632|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3624|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3616|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3608|0;v[d>>2]=0;v[d+4>>2]=0;v[n>>2]=0;v[n+4>>2]=0;d=b+3856|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3848|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3840|0;v[d>>2]=0;v[d+4>>2]=0;d=b+3832|0;v[d>>2]=0;v[d+4>>2]=0;v[o>>2]=0;v[o+4>>2]=0;d=b+4080|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4072|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4064|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4056|0;v[d>>2]=0;v[d+4>>2]=0;v[p>>2]=0;v[p+4>>2]=0;d=b+4304|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4296|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4288|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4280|0;v[d>>2]=0;v[d+4>>2]=0;v[q>>2]=0;v[q+4>>2]=0;d=b+4528|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4520|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4512|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4504|0;v[d>>2]=0;v[d+4>>2]=0;v[r>>2]=0;v[r+4>>2]=0;d=b+4752|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4744|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4736|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4728|0;v[d>>2]=0;v[d+4>>2]=0;v[s>>2]=0;v[s+4>>2]=0;d=b+4976|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4968|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4960|0;v[d>>2]=0;v[d+4>>2]=0;d=b+4952|0;v[d>>2]=0;v[d+4>>2]=0;v[u>>2]=0;v[u+4>>2]=0;d=b+5200|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5192|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5184|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5176|0;v[d>>2]=0;v[d+4>>2]=0;v[w>>2]=0;v[w+4>>2]=0;d=b+5424|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5416|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5408|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5400|0;v[d>>2]=0;v[d+4>>2]=0;v[x>>2]=0;v[x+4>>2]=0;d=b+5648|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5640|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5632|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5624|0;v[d>>2]=0;v[d+4>>2]=0;v[y>>2]=0;v[y+4>>2]=0;d=b+5872|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5864|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5856|0;v[d>>2]=0;v[d+4>>2]=0;d=b+5848|0;v[d>>2]=0;v[d+4>>2]=0;v[z>>2]=0;v[z+4>>2]=0;d=b+6096|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6088|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6080|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6072|0;v[d>>2]=0;v[d+4>>2]=0;v[A>>2]=0;v[A+4>>2]=0;d=b+6320|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6312|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6304|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6296|0;v[d>>2]=0;v[d+4>>2]=0;v[B>>2]=0;v[B+4>>2]=0;d=b+6544|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6536|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6528|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6520|0;v[d>>2]=0;v[d+4>>2]=0;v[C>>2]=0;v[C+4>>2]=0;d=b+6768|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6760|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6752|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6744|0;v[d>>2]=0;v[d+4>>2]=0;v[D>>2]=0;v[D+4>>2]=0;d=b+6992|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6984|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6976|0;v[d>>2]=0;v[d+4>>2]=0;d=b+6968|0;v[d>>2]=0;v[d+4>>2]=0;v[E>>2]=0;v[E+4>>2]=0;d=b+7216|0;v[d>>2]=0;v[d+4>>2]=0;d=b+7208|0;v[d>>2]=0;v[d+4>>2]=0;d=b+7200|0;v[d>>2]=0;v[d+4>>2]=0;d=b+7192|0;v[d>>2]=0;v[d+4>>2]=0;v[F>>2]=0;v[F+4>>2]=0;d=b+7440|0;v[d>>2]=0;v[d+4>>2]=0;d=b+7432|0;v[d>>2]=0;v[d+4>>2]=0;d=b+7424|0;v[d>>2]=0;v[d+4>>2]=0;b=b+7416|0;v[b>>2]=0;v[b+4>>2]=0;v[G>>2]=0;v[G+4>>2]=0;b=c+7664|0;v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=-1;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[a>>2]=c;return;case 1:b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?32519:63804;H=a,I=zD(Ba[v[v[b+12>>2]+8>>2]](b+12|0,376,e,8548,84)|0,1,c,d),v[H>>2]=I;return;case 2:b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?32519:63804;e=zD(Ba[v[v[b+12>>2]+8>>2]](b+12|0,376,e,8548,85)|0,0,c,d);break;default:break a}}v[a>>2]=e}function TQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=v[a+20>>2];e=v[a+28>>2];v[v[v[e+1004>>2]+4>>2]+8>>2]=0;i=v[e+1e3>>2];a=v[i+284>>2];v[e+2704>>2]=0;v[e+2708>>2]=0;o=v[v[e+976>>2]+1156>>2];b=v[e+1012>>2];Ba[v[v[b>>2]+124>>2]](b,a);j=v[e+2360>>2]&8;d=v[e+2448>>2]&2147483647;a:{if(!d){break a}g=v[e+2444>>2];a=1;while(1){c=v[g+(f<<2)>>2];if(!c){a=a+1|0;f=f+1|0;if((d|0)!=(f|0)){continue}break a}break}b=Raa(c)|f<<5;c=c&c-1;b:{if(c){break b}a=a>>>0>d>>>0?a:d;while(1){f=f+1|0;if(d>>>0<=f>>>0){c=0;f=a;break b}c=v[g+(f<<2)>>2];if(!c){continue}break}}if((b|0)==-1){break a}while(1){a=wr(o,1072);k=z[e+1080>>2];d=v[e+1e3>>2];g=v[e+1012>>2];l=v[e+16>>2];m=v[e+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=l;v[a+12>>2]=m;t[a+1068|0]=(j|0)!=0;v[a+1064>>2]=g;v[a+1060>>2]=d;z[a+1056>>2]=k;v[a+28>>2]=-128;v[a+32>>2]=-128;d=a+1044|0;v[d>>2]=-128;v[d+4>>2]=-128;d=a+1036|0;v[d>>2]=-128;v[d+4>>2]=-128;d=a+1028|0;v[d>>2]=-128;v[d+4>>2]=-128;v[a+1020>>2]=-128;v[a+1024>>2]=-128;v[a+1012>>2]=-128;v[a+1016>>2]=-128;v[a+1004>>2]=-128;v[a+1008>>2]=-128;v[a+996>>2]=-128;v[a+1e3>>2]=-128;v[a+988>>2]=-128;v[a+992>>2]=-128;v[a+980>>2]=-128;v[a+984>>2]=-128;v[a+972>>2]=-128;v[a+976>>2]=-128;v[a+964>>2]=-128;v[a+968>>2]=-128;v[a+956>>2]=-128;v[a+960>>2]=-128;v[a+948>>2]=-128;v[a+952>>2]=-128;v[a+940>>2]=-128;v[a+944>>2]=-128;v[a+932>>2]=-128;v[a+936>>2]=-128;v[a+924>>2]=-128;v[a+928>>2]=-128;v[a+916>>2]=-128;v[a+920>>2]=-128;v[a+908>>2]=-128;v[a+912>>2]=-128;v[a+900>>2]=-128;v[a+904>>2]=-128;v[a+892>>2]=-128;v[a+896>>2]=-128;v[a+884>>2]=-128;v[a+888>>2]=-128;v[a+876>>2]=-128;v[a+880>>2]=-128;v[a+868>>2]=-128;v[a+872>>2]=-128;v[a+860>>2]=-128;v[a+864>>2]=-128;v[a+852>>2]=-128;v[a+856>>2]=-128;v[a+844>>2]=-128;v[a+848>>2]=-128;v[a+836>>2]=-128;v[a+840>>2]=-128;v[a+828>>2]=-128;v[a+832>>2]=-128;v[a+820>>2]=-128;v[a+824>>2]=-128;v[a+812>>2]=-128;v[a+816>>2]=-128;v[a+804>>2]=-128;v[a+808>>2]=-128;v[a+796>>2]=-128;v[a+800>>2]=-128;v[a+788>>2]=-128;v[a+792>>2]=-128;v[a+780>>2]=-128;v[a+784>>2]=-128;v[a+772>>2]=-128;v[a+776>>2]=-128;v[a+764>>2]=-128;v[a+768>>2]=-128;v[a+756>>2]=-128;v[a+760>>2]=-128;v[a+748>>2]=-128;v[a+752>>2]=-128;v[a+740>>2]=-128;v[a+744>>2]=-128;v[a+732>>2]=-128;v[a+736>>2]=-128;v[a+724>>2]=-128;v[a+728>>2]=-128;v[a+716>>2]=-128;v[a+720>>2]=-128;v[a+708>>2]=-128;v[a+712>>2]=-128;v[a+700>>2]=-128;v[a+704>>2]=-128;v[a+692>>2]=-128;v[a+696>>2]=-128;v[a+684>>2]=-128;v[a+688>>2]=-128;v[a+676>>2]=-128;v[a+680>>2]=-128;v[a+668>>2]=-128;v[a+672>>2]=-128;v[a+660>>2]=-128;v[a+664>>2]=-128;v[a+652>>2]=-128;v[a+656>>2]=-128;v[a+644>>2]=-128;v[a+648>>2]=-128;v[a+636>>2]=-128;v[a+640>>2]=-128;v[a+628>>2]=-128;v[a+632>>2]=-128;v[a+620>>2]=-128;v[a+624>>2]=-128;v[a+612>>2]=-128;v[a+616>>2]=-128;v[a+604>>2]=-128;v[a+608>>2]=-128;v[a+596>>2]=-128;v[a+600>>2]=-128;v[a+588>>2]=-128;v[a+592>>2]=-128;v[a+580>>2]=-128;v[a+584>>2]=-128;v[a+572>>2]=-128;v[a+576>>2]=-128;v[a+564>>2]=-128;v[a+568>>2]=-128;v[a+556>>2]=-128;v[a+560>>2]=-128;v[a+548>>2]=-128;v[a+552>>2]=-128;v[a+540>>2]=-128;v[a+544>>2]=-128;v[a+532>>2]=-128;v[a+536>>2]=-128;v[a+524>>2]=-128;v[a+528>>2]=-128;v[a+516>>2]=-128;v[a+520>>2]=-128;v[a+508>>2]=-128;v[a+512>>2]=-128;v[a+500>>2]=-128;v[a+504>>2]=-128;v[a+492>>2]=-128;v[a+496>>2]=-128;v[a+484>>2]=-128;v[a+488>>2]=-128;v[a+476>>2]=-128;v[a+480>>2]=-128;v[a+468>>2]=-128;v[a+472>>2]=-128;v[a+460>>2]=-128;v[a+464>>2]=-128;v[a+452>>2]=-128;v[a+456>>2]=-128;v[a+444>>2]=-128;v[a+448>>2]=-128;v[a+436>>2]=-128;v[a+440>>2]=-128;v[a+428>>2]=-128;v[a+432>>2]=-128;v[a+420>>2]=-128;v[a+424>>2]=-128;v[a+412>>2]=-128;v[a+416>>2]=-128;v[a+404>>2]=-128;v[a+408>>2]=-128;v[a+396>>2]=-128;v[a+400>>2]=-128;v[a+388>>2]=-128;v[a+392>>2]=-128;v[a+380>>2]=-128;v[a+384>>2]=-128;v[a+372>>2]=-128;v[a+376>>2]=-128;v[a+364>>2]=-128;v[a+368>>2]=-128;v[a+356>>2]=-128;v[a+360>>2]=-128;v[a+348>>2]=-128;v[a+352>>2]=-128;v[a+340>>2]=-128;v[a+344>>2]=-128;v[a+332>>2]=-128;v[a+336>>2]=-128;v[a+324>>2]=-128;v[a+328>>2]=-128;v[a+316>>2]=-128;v[a+320>>2]=-128;v[a+308>>2]=-128;v[a+312>>2]=-128;v[a+300>>2]=-128;v[a+304>>2]=-128;v[a+292>>2]=-128;v[a+296>>2]=-128;v[a+284>>2]=-128;v[a+288>>2]=-128;v[a+276>>2]=-128;v[a+280>>2]=-128;v[a+268>>2]=-128;v[a+272>>2]=-128;v[a+260>>2]=-128;v[a+264>>2]=-128;v[a+252>>2]=-128;v[a+256>>2]=-128;v[a+244>>2]=-128;v[a+248>>2]=-128;v[a+236>>2]=-128;v[a+240>>2]=-128;v[a+228>>2]=-128;v[a+232>>2]=-128;v[a+220>>2]=-128;v[a+224>>2]=-128;v[a+212>>2]=-128;v[a+216>>2]=-128;v[a+204>>2]=-128;v[a+208>>2]=-128;v[a+196>>2]=-128;v[a+200>>2]=-128;v[a+188>>2]=-128;v[a+192>>2]=-128;v[a+180>>2]=-128;v[a+184>>2]=-128;v[a+172>>2]=-128;v[a+176>>2]=-128;v[a+164>>2]=-128;v[a+168>>2]=-128;v[a+156>>2]=-128;v[a+160>>2]=-128;v[a+148>>2]=-128;v[a+152>>2]=-128;v[a+140>>2]=-128;v[a+144>>2]=-128;v[a+132>>2]=-128;v[a+136>>2]=-128;v[a+124>>2]=-128;v[a+128>>2]=-128;v[a+116>>2]=-128;v[a+120>>2]=-128;v[a+108>>2]=-128;v[a+112>>2]=-128;v[a+100>>2]=-128;v[a+104>>2]=-128;v[a+92>>2]=-128;v[a+96>>2]=-128;v[a+84>>2]=-128;v[a+88>>2]=-128;v[a+76>>2]=-128;v[a+80>>2]=-128;v[a+68>>2]=-128;v[a+72>>2]=-128;v[a+60>>2]=-128;v[a+64>>2]=-128;v[a+52>>2]=-128;v[a+56>>2]=-128;v[a+44>>2]=-128;v[a+48>>2]=-128;v[a+36>>2]=-128;v[a+40>>2]=-128;v[a>>2]=135284;l=v[e+2444>>2];m=v[i+184>>2];d=0;while(1){g=v[(B(b&33554431,24)+m|0)+20>>2];c:{if(g){v[(a+(d<<2)|0)+28>>2]=b<<7;d=d+1|0;if(t[v[g+36>>2]+28|0]<0){break c}}g=(b>>>3&536870908)+l|0;n=v[g>>2];r=g,s=Vaa(-2,b)&n,v[r>>2]=s}d:{if(!c){c=0;b=-1;break d}n=f<<5;p=Raa(c);c=c-1&c;e:{if(c){break e}b=f+1|0;g=v[e+2448>>2]&2147483647;b=b>>>0>g>>>0?b:g;q=v[e+2444>>2];while(1){f=f+1|0;if(g>>>0<=f>>>0){c=0;f=b;break e}c=v[(f<<2)+q>>2];if(!c){continue}break}}b=n|p;if(d>>>0>255){break d}if((b|0)!=-1){continue}}break}v[a+24>>2]=1;v[a+1052>>2]=d;v[a+20>>2]=h;if(h){Ba[v[v[h>>2]+16>>2]](h);v[a+16>>2]=v[v[a+20>>2]+16>>2]}Ba[v[v[a>>2]+20>>2]](a);if((b|0)!=-1){continue}break}}f=v[i+296>>2];if(f){d=v[i+292>>2];i=j>>>3|0;c=0;while(1){a=wr(o,48);k=z[e+1080>>2];b=v[e+1e3>>2];j=v[e+16>>2];g=v[e+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=j;v[a+12>>2]=g;t[a+44|0]=i;v[a+40>>2]=b;z[a+36>>2]=k;b=f-c|0;v[a+32>>2]=b>>>0<32?b:32;v[a+28>>2]=d+(c<<2);v[a>>2]=135340;v[a+20>>2]=h;v[a+24>>2]=1;if(h){Ba[v[v[h>>2]+16>>2]](h);v[a+16>>2]=v[v[a+20>>2]+16>>2];b=v[a>>2]}else{b=135340}Ba[v[b+20>>2]](a);c=c+32|0;if(f>>>0>c>>>0){continue}break}}v[e+1064>>2]=0;Fy(v[e+976>>2]+24|0)}function rn(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=v[37394]-1|0;v[37394]=a;if(!a){e=v[37389];a=0;c=xa-16|0;xa=c;v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;g=v[e+516>>2];if(g){a:{if(!g){break a}b=g<<2;if(!b){break a}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?58935:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c>>2];b=v[c+4>>2];if((b|0)>0){i=(b<<2)+a|0;b=a;while(1){v[b>>2]=v[d>>2];d=d+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}d=v[c>>2]}if(!(!d|v[c+8>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[c+8>>2]=g;v[c>>2]=a}b:{if(!v[e+496>>2]){break b}b=v[e+492>>2];a=v[b>>2];if((a|0)==-1){d=v[e+500>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break b}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){j=a<<2;i=j+v[e+484>>2]|0;a=v[c+4>>2];c:{if(a>>>0>=(v[c+8>>2]&2147483647)>>>0){a=0;b=v[c+8>>2];h=b&2147483647?b<<1:1;d:{if(!h){break d}b=h<<2;if(!b){break d}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?58935:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c+4>>2];k=(d<<2)+a|0;if((d|0)>0){g=v[c>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[i>>2];e:{if(v[c+8>>2]<0){break e}b=v[c>>2];if(!b){break e}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b);d=v[c+4>>2]}v[c+8>>2]=h;v[c>>2]=a;v[c+4>>2]=d+1;break c}v[v[c>>2]+(a<<2)>>2]=v[i>>2];v[c+4>>2]=a+1}a=v[j+v[e+488>>2]>>2];if((a|0)!=-1){continue}b=v[e+492>>2];d=v[e+500>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break b}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(v[c+4>>2]){a=0;while(1){b=v[v[c>>2]+(a<<2)>>2];Ba[v[v[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=v[c+8>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[c>>2];if(!a){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;f=v[e+596>>2];if(f){a=0;g:{if(!f){break g}b=f<<2;if(!b){break g}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?56071:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c>>2];b=v[c+4>>2];if((b|0)>0){g=(b<<2)+a|0;b=a;while(1){v[b>>2]=v[d>>2];d=d+4|0;b=b+4|0;if(g>>>0>b>>>0){continue}break}d=v[c>>2]}if(!(!d|v[c+8>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[c+8>>2]=f;v[c>>2]=a}h:{if(!v[e+576>>2]){break h}f=0;b=v[e+572>>2];a=v[b>>2];if((a|0)==-1){d=v[e+580>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break h}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){j=a<<2;i=j+v[e+564>>2]|0;a=v[c+4>>2];i:{if(a>>>0>=(v[c+8>>2]&2147483647)>>>0){a=0;b=v[c+8>>2];h=b&2147483647?b<<1:1;j:{if(!h){break j}b=h<<2;if(!b){break j}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?56071:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c+4>>2];k=(d<<2)+a|0;if((d|0)>0){g=v[c>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[i>>2];k:{if(v[c+8>>2]<0){break k}b=v[c>>2];if(!b){break k}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b);d=v[c+4>>2]}v[c+8>>2]=h;v[c>>2]=a;v[c+4>>2]=d+1;break i}v[v[c>>2]+(a<<2)>>2]=v[i>>2];v[c+4>>2]=a+1}a=v[j+v[e+568>>2]>>2];if((a|0)!=-1){continue}b=v[e+572>>2];d=v[e+580>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break h}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(v[c+4>>2]){a=0;while(1){b=v[v[c>>2]+(a<<2)>>2];Ba[v[v[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=v[c+8>>2];l:{if((a|0)<0|!(a&2147483647)){break l}a=v[c>>2];if(!a){break l}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;f=v[e+556>>2];if(f){a=0;m:{if(!f){break m}b=f<<2;if(!b){break m}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?59305:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c>>2];b=v[c+4>>2];if((b|0)>0){g=(b<<2)+a|0;b=a;while(1){v[b>>2]=v[d>>2];d=d+4|0;b=b+4|0;if(g>>>0>b>>>0){continue}break}d=v[c>>2]}if(!(!d|v[c+8>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[c+8>>2]=f;v[c>>2]=a}n:{if(!v[e+536>>2]){break n}f=0;b=v[e+532>>2];a=v[b>>2];if((a|0)==-1){d=v[e+540>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break n}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){j=a<<2;i=j+v[e+524>>2]|0;a=v[c+4>>2];o:{if(a>>>0>=(v[c+8>>2]&2147483647)>>>0){a=0;b=v[c+8>>2];h=b&2147483647?b<<1:1;p:{if(!h){break p}b=h<<2;if(!b){break p}a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?59305:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,16608,553)|0}d=v[c+4>>2];k=(d<<2)+a|0;if((d|0)>0){g=v[c>>2];b=a;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}v[k>>2]=v[i>>2];q:{if(v[c+8>>2]<0){break q}b=v[c>>2];if(!b){break q}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b);d=v[c+4>>2]}v[c+8>>2]=h;v[c>>2]=a;v[c+4>>2]=d+1;break o}v[v[c>>2]+(a<<2)>>2]=v[i>>2];v[c+4>>2]=a+1}a=v[j+v[e+528>>2]>>2];if((a|0)!=-1){continue}b=v[e+532>>2];d=v[e+540>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break n}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(v[c+4>>2]){a=0;while(1){b=v[v[c>>2]+(a<<2)>>2];Ba[v[v[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=v[c+8>>2];r:{if((a|0)<0|!(a&2147483647)){break r}a=v[c>>2];if(!a){break r}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;a=v[e+636>>2];if(a){Lm(c,a)}s:{if(!v[e+616>>2]){break s}f=0;b=v[e+612>>2];a=v[b>>2];if((a|0)==-1){d=v[e+620>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break s}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){d=a<<2;a=d+v[e+604>>2]|0;b=v[c+4>>2];t:{if(b>>>0>=(v[c+8>>2]&2147483647)>>>0){Mm(c,a);break t}v[v[c>>2]+(b<<2)>>2]=v[a>>2];v[c+4>>2]=b+1}a=v[d+v[e+608>>2]>>2];if((a|0)!=-1){continue}b=v[e+612>>2];d=v[e+620>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break s}a=v[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(v[c+4>>2]){a=0;while(1){b=v[v[c>>2]+(a<<2)>>2];Ba[v[v[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=v[c+8>>2];u:{if((a|0)<0|!(a&2147483647)){break u}a=v[c>>2];if(!a){break u}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[e+676>>2]){while(1){a=v[v[e+644>>2]>>2];b=v[a+16>>2]-1|0;v[a+16>>2]=b;if(!b){Ba[v[v[a+12>>2]+8>>2]](a+12|0)}if(v[e+676>>2]){continue}break}}if(v[e+44>>2]){while(1){a=v[v[e+12>>2]>>2];Ba[v[v[a>>2]>>2]](a);if(v[e+44>>2]){continue}break}}if(v[e+84>>2]){while(1){a=v[v[e+52>>2]>>2];Ba[v[v[a>>2]>>2]](a);if(v[e+84>>2]){continue}break}}if(v[e+124>>2]){while(1){a=v[v[e+92>>2]>>2];Ba[v[v[a>>2]>>2]](a);if(v[e+124>>2]){continue}break}}if(v[e+164>>2]){while(1){a=v[v[e+132>>2]>>2];Ba[v[v[a>>2]>>2]](a);if(v[e+164>>2]){continue}break}}Ba[v[v[e>>2]+4>>2]](e);xa=c+16|0;v[37389]=0;a=v[37393];if(a){Ba[v[v[a>>2]+4>>2]](a)}v[37393]=0;e9()}}function Xx(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0);l=xa-160|0;xa=l;m=a+112|0;E=v[a+444>>2];a:{if(v[(E+(d<<5)|0)+24>>2]==(c|0)){n=z[f+20>>2];o=z[f+24>>2];p=z[f>>2];q=z[f+4>>2];w=z[f+8>>2];s=z[f+16>>2];y=z[g+20>>2];u=z[g>>2];r=z[g+4>>2];x=z[g+8>>2];D=z[g+16>>2];z[l+152>>2]=-z[g+24>>2];z[l+148>>2]=-y;v[l+156>>2]=0;v[l+140>>2]=0;z[l+144>>2]=-D;z[l+136>>2]=-x;z[l+132>>2]=-r;z[l+128>>2]=-u;f=B(d,76);g=l+128|0;dx(l+96|0,v[a+396>>2]+B(d,96)|0,(v[m+340>>2]+B(d,160)|0)+120|0,f+v[a+384>>2]|0,g);z[l+88>>2]=o-z[l+120>>2];z[l+84>>2]=n-z[l+116>>2];v[l+92>>2]=0;v[l+76>>2]=0;z[l+80>>2]=s-z[l+112>>2];z[l+72>>2]=w-z[l+104>>2];z[l+68>>2]=q-z[l+100>>2];z[l+64>>2]=p-z[l+96>>2];jx(c,m,e,l- -64|0);ix(l,b,c,m,e,j);b=v[l+24>>2];v[l+52>>2]=v[l+20>>2];v[l+56>>2]=b;v[l+44>>2]=0;v[l+60>>2]=0;z[l+32>>2]=z[l>>2];b=v[l+8>>2];v[l+36>>2]=v[l+4>>2];v[l+40>>2]=b;z[l+48>>2]=z[l+16>>2];Zw(l,(v[m+340>>2]+B(d,160)|0)+120|0,v[a+348>>2]+B(d,112)|0,v[a+360>>2]+B(d,36)|0,f+v[a+384>>2]|0,g,j,l+32|0);n=z[l+24>>2];a=v[l+16>>2];b=v[l+20>>2];c=v[l+4>>2];d=v[l>>2];o=z[l+8>>2];z[h>>2]=z[l+48>>2];z[h+4>>2]=z[l+52>>2];z[h+8>>2]=z[l+56>>2];z[h+16>>2]=z[l+32>>2];z[h+20>>2]=z[l+36>>2];z[h+24>>2]=z[l+40>>2];z[i+24>>2]=o;v[i+16>>2]=d;v[i+20>>2]=c;z[i+8>>2]=n;v[i>>2]=a;v[i+4>>2]=b;break a}k=xa-2432|0;xa=k;e=c;if((d|0)!=(c|0)){b=c;e=d;while(1){b:{if(b>>>0>>0){e=v[((e<<5)+E|0)+24>>2];break b}b=v[((b<<5)+E|0)+24>>2]}if((b|0)!=(e|0)){continue}break}}n=z[f+20>>2];p=z[f>>2];q=z[f+4>>2];o=z[f+8>>2];s=z[f+16>>2];w=C(-z[f+24>>2]);z[k+120>>2]=w;y=C(-n);z[k+116>>2]=y;b=0;v[k+124>>2]=0;u=C(-s);z[k+112>>2]=u;v[k+108>>2]=0;o=C(-o);z[k+104>>2]=o;r=C(-q);z[k+100>>2]=r;n=C(-p);z[k+96>>2]=n;q=z[g+20>>2];p=z[g+24>>2];A=z[g+16>>2];D=z[g+8>>2];s=z[g+4>>2];x=z[g>>2];f=k+128|0;a=f+(c<<5)|0;v[a+28>>2]=0;z[a+24>>2]=w;z[a+20>>2]=y;z[a+16>>2]=u;v[a+12>>2]=0;z[a+8>>2]=o;z[a+4>>2]=r;z[a>>2]=n;p=C(-p);z[k+88>>2]=p;q=C(-q);z[k+84>>2]=q;a=f+(d<<5)|0;x=C(-x);z[a>>2]=x;s=C(-s);z[a+4>>2]=s;D=C(-D);z[a+8>>2]=D;A=C(-A);z[a+16>>2]=A;z[a+20>>2]=q;z[a+24>>2]=p;v[a+28>>2]=0;v[a+12>>2]=0;v[k+92>>2]=0;v[k+76>>2]=0;z[k+80>>2]=A;z[k+72>>2]=D;z[k+68>>2]=s;z[k+64>>2]=x;if((c|0)!=(e|0)){while(1){dx(k+32|0,v[m+284>>2]+B(c,96)|0,(v[m+340>>2]+B(c,160)|0)+120|0,v[m+272>>2]+B(c,76)|0,k+96|0);v[k+108>>2]=0;v[k+124>>2]=0;n=z[k+32>>2];z[k+96>>2]=n;r=z[k+36>>2];z[k+100>>2]=r;o=z[k+40>>2];z[k+104>>2]=o;u=z[k+48>>2];z[k+112>>2]=u;y=z[k+52>>2];z[k+116>>2]=y;w=z[k+56>>2];z[k+120>>2]=w;a=v[((c<<5)+E|0)+24>>2];v[(k+2176|0)+(b<<2)>>2]=c;c=(k+128|0)+(a<<5)|0;v[c+28>>2]=0;z[c+16>>2]=u;v[c+12>>2]=0;z[c+8>>2]=o;z[c+4>>2]=r;z[c>>2]=n;z[c+24>>2]=w;z[c+20>>2]=y;b=b+1|0;c=a;if((e|0)!=(c|0)){continue}break}}a=b;if((d|0)!=(e|0)){while(1){dx(k+32|0,v[m+284>>2]+B(d,96)|0,(v[m+340>>2]+B(d,160)|0)+120|0,v[m+272>>2]+B(d,76)|0,k- -64|0);v[k+76>>2]=0;v[k+92>>2]=0;x=z[k+32>>2];z[k+64>>2]=x;s=z[k+36>>2];z[k+68>>2]=s;D=z[k+40>>2];z[k+72>>2]=D;A=z[k+48>>2];z[k+80>>2]=A;q=z[k+52>>2];z[k+84>>2]=q;p=z[k+56>>2];z[k+88>>2]=p;c=v[((d<<5)+E|0)+24>>2];v[(k+2176|0)+(a<<2)>>2]=d;d=(k+128|0)+(c<<5)|0;v[d+28>>2]=0;z[d+16>>2]=A;v[d+12>>2]=0;z[d+8>>2]=D;z[d+4>>2]=s;z[d>>2]=x;z[d+24>>2]=p;z[d+20>>2]=q;a=a+1|0;d=c;if((c|0)!=(e|0)){continue}break}w=z[k+120>>2];y=z[k+116>>2];u=z[k+112>>2];r=z[k+100>>2];o=z[k+104>>2];n=z[k+96>>2]}c=(k+128|0)+(e<<5)|0;v[c+28>>2]=0;z[c+16>>2]=u+A;v[c+12>>2]=0;z[c+8>>2]=o+D;z[c+4>>2]=r+s;z[c>>2]=n+x;z[c+24>>2]=w+p;z[c+20>>2]=y+q;d=a;if(e){while(1){c=e<<5;f=k+128|0;dx(k+32|0,v[m+284>>2]+B(e,96)|0,(v[m+340>>2]+B(e,160)|0)+120|0,v[m+260>>2]+B(e,76)|0,c+f|0);c=v[(c+E|0)+24>>2];f=(c<<5)+f|0;z[f>>2]=z[k+32>>2];v[f+12>>2]=0;g=v[k+40>>2];v[f+4>>2]=v[k+36>>2];v[f+8>>2]=g;z[f+16>>2]=z[k+48>>2];v[f+28>>2]=0;g=v[k+56>>2];v[f+20>>2]=v[k+52>>2];v[f+24>>2]=g;v[(k+2176|0)+(d<<2)>>2]=e;d=d+1|0;e=c;if(c){continue}break}}c:{if(!(t[v[m+364>>2]]&1)){o=z[k+148>>2];s=z[k+144>>2];p=z[k+136>>2];w=z[k+132>>2];q=z[k+128>>2];n=z[k+152>>2];break c}v[k+152>>2]=0;v[k+156>>2]=0;v[k+144>>2]=0;v[k+148>>2]=0;v[k+136>>2]=0;v[k+140>>2]=0;v[k+128>>2]=0;v[k+132>>2]=0;o=C(0);s=C(0);p=C(0);w=C(0);q=C(0);n=C(0)}L=z[m+472>>2];M=z[m+460>>2];N=z[m+448>>2];O=z[m+476>>2];P=z[m+464>>2];Q=z[m+452>>2];R=z[m+480>>2];S=z[m+468>>2];T=z[m+456>>2];r=z[m+420>>2];D=z[m+416>>2];U=z[m+508>>2];V=z[m+496>>2];W=z[m+484>>2];A=z[m+432>>2];F=z[m+424>>2];G=z[m+428>>2];y=z[m+512>>2];X=z[m+500>>2];Y=z[m+488>>2];H=z[m+412>>2];I=z[m+436>>2];u=C(-s);J=z[m+440>>2];K=z[m+444>>2];x=C(-w);w=C(C(C(C(I*u)-C(J*o))-C(K*n))+C(C(C(z[m+504>>2]*x)-C(q*z[m+492>>2]))-C(p*z[m+516>>2])));z[k+56>>2]=w;y=C(C(C(C(F*u)-C(G*o))-C(A*n))+C(C(C(X*x)-C(q*Y))-C(p*y)));z[k+52>>2]=y;v[k+60>>2]=0;v[k+44>>2]=0;u=C(C(C(C(H*u)-C(D*o))-C(r*n))+C(C(C(V*x)-C(q*W))-C(p*U)));z[k+48>>2]=u;r=C(C(C(A*x)-C(q*r))-C(p*K));A=C(-o);o=C(r+C(C(C(S*A)-C(s*T))-C(n*R)));z[k+40>>2]=o;r=C(C(C(C(G*x)-C(q*D))-C(p*J))+C(C(C(P*A)-C(s*Q))-C(n*O)));z[k+36>>2]=r;n=C(C(C(C(F*x)-C(q*H))-C(p*I))+C(C(C(M*A)-C(s*N))-C(n*L)));z[k+32>>2]=n;if(a>>>0>>0){while(1){d=d-1|0;c=v[(k+2176|0)+(d<<2)>>2];Zw(k,(v[m+340>>2]+B(c,160)|0)+120|0,v[m+236>>2]+B(c,112)|0,v[m+248>>2]+B(c,36)|0,v[m+272>>2]+B(c,76)|0,(k+128|0)+(c<<5)|0,j,k+32|0);v[k+44>>2]=0;v[k+60>>2]=0;n=z[k>>2];z[k+32>>2]=n;r=z[k+4>>2];z[k+36>>2]=r;o=z[k+8>>2];z[k+40>>2]=o;u=z[k+16>>2];z[k+48>>2]=u;y=z[k+20>>2];z[k+52>>2]=y;w=z[k+24>>2];z[k+56>>2]=w;if(a>>>0>>0){continue}break}}p=w;q=y;x=u;s=o;D=r;A=n;if(a>>>0>b>>>0){while(1){a=a-1|0;c=v[(k+2176|0)+(a<<2)>>2];Zw(k,(v[m+340>>2]+B(c,160)|0)+120|0,v[m+236>>2]+B(c,112)|0,v[m+248>>2]+B(c,36)|0,v[m+272>>2]+B(c,76)|0,(k+128|0)+(c<<5)|0,j,k+32|0);if(a>>>0>b>>>0){continue}break}p=z[k+24>>2];q=z[k+20>>2];x=z[k+16>>2];s=z[k+8>>2];D=z[k+4>>2];w=z[k+56>>2];y=z[k+52>>2];u=z[k+48>>2];r=z[k+36>>2];o=z[k+40>>2];A=z[k>>2];n=z[k+32>>2]}if(b){while(1){b=b-1|0;a=v[(k+2176|0)+(b<<2)>>2];Zw(k,(v[m+340>>2]+B(a,160)|0)+120|0,v[m+236>>2]+B(a,112)|0,v[m+248>>2]+B(a,36)|0,v[m+272>>2]+B(a,76)|0,(k+128|0)+(a<<5)|0,j,k+32|0);if(b){continue}break}w=z[k+24>>2];y=z[k+20>>2];u=z[k+16>>2];o=z[k+8>>2];r=z[k+4>>2];n=z[k>>2]}z[h+16>>2]=n;z[h+8>>2]=w;z[h+4>>2]=y;z[h>>2]=u;z[h+24>>2]=o;z[h+20>>2]=r;z[i+24>>2]=s;z[i+20>>2]=D;z[i+16>>2]=A;z[i+8>>2]=p;z[i+4>>2]=q;z[i>>2]=x;xa=k+2432|0}xa=l+160|0}function zC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=0,N=C(0),O=0,P=C(0),Q=C(0),R=0,S=0,T=0,U=0,V=0,W=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;if(w[a+7648|0]){a=1}else{R=d;O=xa-16|0;xa=O;r=a+16|0;M=v[r+636>>2];a=v[r+28>>2];d=1;a:{if(!(M|a)){break a}l=z[R>>2];if(l==C(34028234663852886e22)){i=z[r+664>>2];l=z[r+680>>2];m=C(i-l);s=z[r+660>>2];n=z[r+676>>2];o=C(s-n);t=C(C(i+l)+C(0));n=C(C(s+n)+C(0));i=z[r+656>>2];l=z[r+672>>2];A=C(i-l);E=C(C(i+l)+C(0));if(a){s=C(85070586659632215e21);q=C(-85070586659632215e21);G=C(-85070586659632215e21);H=C(-85070586659632215e21);l=C(85070586659632215e21);i=C(85070586659632215e21);while(1){d=B(I,24)+r|0;u=z[d+180>>2];q=q>u?q:u;u=z[d+176>>2];G=G>u?G:u;u=z[d+172>>2];H=H>u?H:u;u=z[d+168>>2];s=s>2];l=l>2];i=iq?n:q;q=C(H+C(0));E=qo?o:l;A=i>A?A:i;m=m>2];l=z[c>>2];s=z[c+4>>2];o=C(C(f*m)+C(C(C(C(E+A)*C(.5))*l)+C(C(C(n+o)*C(.5))*s)));m=C(C(z[b+8>>2]*m)+C(C(z[b>>2]*l)+C(s*z[b+4>>2])));l=C(D(C(C(o-i)-m)));i=C(D(C(C(i+o)-m)));l=C(g+(i>l?l:i));z[R>>2]=l}o=z[c+8>>2];d=o>C(0);q=C(-o);t=z[c+4>>2];I=t>C(0);G=C(-t);n=z[c>>2];S=n>C(0);H=C(-n);m=z[b+8>>2];A=z[b+4>>2];E=z[b>>2];b:{if(l>=C(34028234663852886e22)){s=t==C(0)?A:t>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);l=n==C(0)?E:n>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);if(o==C(0)){i=m;break b}i=o>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break b}i=C(m+C(l*o));s=C(A+C(l*t));l=C(E+C(l*n))}q=d?o:q;G=I?t:G;H=S?n:H;u=im?m:i;s=s>A?A:s;l=l>E?E:l;if(a){I=0;while(1){d=B(I,24)+r|0;g=z[d+160>>2];h=z[d+172>>2];f=C(C(g+h)*C(.5));g=C(C(h-g)*C(.5));c:{if(!(C(f+g)>=l)|!(C(f-g)<=Q)){break c}k=z[d+176>>2];F=z[d+164>>2];h=C(C(k-F)*C(.5));k=C(C(F+k)*C(.5));F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))|!(C(k+h)>=s)|!(C(k-h)<=P)){break c}N=C(q*h);f=z[d+180>>2];k=z[d+168>>2];h=C(C(f-k)*C(.5));f=C(C(k+f)*C(.5));L=C(m-f);k=C(C(t*L)-C(o*F));if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))|!(C(f+h)>=i)|!(C(f-h)<=u)){break c}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));if(!(f>=(g>C(0)?g:C(-g)))){break c}d=0;if(!(Ba[v[v[e>>2]>>2]](e,R,((I<<3)+r|0)+32|0)|0)){break a}a=v[r+28>>2]}I=I+1|0;if(I>>>0>>0){continue}break}}d=1;if(!M){break a}f=z[r+656>>2];g=z[r+672>>2];d=1;if(!(C(f+g)>=l)){break a}d=1;if(!(C(f-g)<=Q)){break a}h=z[r+676>>2];k=z[r+660>>2];F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));d=1;if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))){break a}d=1;if(!(C(k+h)>=s)){break a}d=1;if(!(C(k-h)<=P)){break a}N=C(q*h);h=z[r+680>>2];f=z[r+664>>2];L=C(m-f);k=C(C(t*L)-C(o*F));d=1;if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))){break a}d=1;if(!(C(f+h)>=i)){break a}d=1;if(!(C(f-h)<=u)){break a}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));d=1;if(!(f>=(g>C(0)?g:C(-g)))){break a}a=v[r+644>>2]<<2;aa=a+b|0;g=z[aa>>2];ba=a+c|0;h=z[ba>>2];f=z[R>>2];z[O+12>>2]=f;h=C(g+C(f*h));a=(p(g>h?g:h),j(2));b=(a|0)<0?a^-1:a|-2147483648;a=(p(g>2]>>>30&2|v[c>>2]>>>29&4|v[c+8>>2]>>>31;ea=da<<1;S=x[(ca+ea|0)+208>>1];fa=1;d:{while(1){T=S&7;d=T<<2;e:{if(!v[d+ca>>2]){break e}c=(T<<5)+r|0;f=z[c+736>>2];g=z[c+752>>2];if(!(C(f+g)>=l)|!(C(f-g)<=Q)){break e}h=z[c+756>>2];k=z[c+740>>2];F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))|!(C(k+h)>=s)|!(C(k-h)<=P)){break e}N=C(q*h);h=z[c+760>>2];f=z[c+744>>2];L=C(m-f);k=C(C(t*L)-C(o*F));if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))|!(C(f+h)>=i)|!(C(f-h)<=u)){break e}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));if(!(f>=(g>C(0)?g:C(-g)))){break e}W=B(T,224)+r|0;ga=W+912|0;X=x[(ga+ea|0)+208>>1];ja=d+r|0;Y=0;while(1){d=X&7;I=d<<2;f:{if(!v[I+ga>>2]){break f}c=(d<<5)+W|0;f=z[c+960>>2];g=z[c+976>>2];if(!(C(f+g)>=l)|!(C(f-g)<=Q)){break f}h=z[c+980>>2];k=z[c+964>>2];F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))|!(C(k+h)>=s)|!(C(k-h)<=P)){break f}N=C(q*h);h=z[c+984>>2];f=z[c+968>>2];L=C(m-f);k=C(C(t*L)-C(o*F));if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))|!(C(f+h)>=i)|!(C(f-h)<=u)){break f}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));if(!(f>=(g>C(0)?g:C(-g)))){break f}ka=v[(I+W|0)+932>>2]+v[ja+708>>2]|0;ha=1;Z=(B(T,1120)+r|0)+B(d,224)|0;ia=Z+2032|0;_=x[(ia+(da<<1)|0)+208>>1];U=0;while(1){c=a;d=b;g:{h:{a=_&7;b=a<<2;V=v[b+ia>>2];if(!V){break h}a=(a<<5)+Z|0;f=z[a+2080>>2];g=z[a+2096>>2];if(!(C(f+g)>=l)|!(C(f-g)<=Q)){break h}h=z[a+2100>>2];k=z[a+2084>>2];F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))|!(C(k+h)>=s)|!(C(k-h)<=P)){break h}N=C(q*h);h=z[a+2104>>2];f=z[a+2088>>2];L=C(m-f);k=C(C(t*L)-C(o*F));if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))|!(C(f+h)>=i)|!(C(f-h)<=u)){break h}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));if(!(f>=(g>C(0)?g:C(-g)))){break h}a=v[(b+Z|0)+2052>>2]+ka|0;I=v[r+24>>2]+(a<<3)|0;M=v[r+20>>2]+(a<<5)|0;V=M+(V<<5)|0;a=c;b=d;while(1){i:{j:{if(y[M+28>>2]>>0){break j}if(y[M+12>>2]>b>>>0){break g}f=z[M>>2];g=z[M+16>>2];if(!(C(f+g)>=l)|!(C(f-g)<=Q)){break j}h=z[M+20>>2];k=z[M+4>>2];F=C(A-k);J=C(E-f);f=C(C(n*F)-C(t*J));if(!(C(C(G*g)+C(H*h))>=(f>C(0)?f:C(-f)))|!(C(k+h)>=s)|!(C(k-h)<=P)){break j}N=C(q*h);h=z[M+24>>2];f=z[M+8>>2];L=C(m-f);k=C(C(t*L)-C(o*F));if(!(C(N+C(G*h))>=(k>C(0)?k:C(-k)))|!(C(f+h)>=i)|!(C(f-h)<=u)){break j}f=C(C(q*g)+C(H*h));g=C(C(o*J)-C(n*L));if(!(f>=(g>C(0)?g:C(-g)))){break j}g=z[O+12>>2];if(!(Ba[v[v[e>>2]>>2]](e,O+12|0,I)|0)){break i}f=g;g=z[O+12>>2];if(!(f>g)){break j}i=z[aa>>2];l=C(i+C(g*z[ba>>2]));a=(p(i>l?i:l),j(2));b=(a|0)<0?a^-1:a|-2147483648;a=(p(im?m:i;s=l>A?A:l;l=g>E?E:g}I=I+8|0;M=M+32|0;if((V|0)!=(M|0)){continue}break g}break}a=c;b=d;if(ha){break d}break f}a=c;b=d}_=_>>>3|0;ha=U>>>0<4;U=U+1|0;if((U|0)!=5){continue}break}}X=X>>>3|0;Y=Y+1|0;if((Y|0)!=5){continue}break}}S=S>>>3|0;fa=$>>>0<4;$=$+1|0;if(($|0)!=5){continue}break}z[R>>2]=z[O+12>>2]}d=!fa}xa=O+16|0;a=d&1}return a|0}function Cq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;if(!v[a+4656>>2]){e=a+32|0;c=v[e+2352>>2];d=v[e+976>>2]+1164|0;a=J9(b,0,900);v[a+704>>2]=v[c+16>>2]+v[a+704>>2];f=v[c+20>>2]+v[a+708>>2]|0;v[a+708>>2]=f;v[a+732>>2]=v[c+20>>2]+v[a+732>>2];v[a+712>>2]=v[c+24>>2]+v[a+712>>2];v[a+760>>2]=v[c+24>>2]+v[a+760>>2];v[a+716>>2]=v[c+28>>2]+v[a+716>>2];v[a+788>>2]=v[c+28>>2]+v[a+788>>2];v[a+720>>2]=v[c+32>>2]+v[a+720>>2];v[a+816>>2]=v[c+32>>2]+v[a+816>>2];v[a+724>>2]=v[c+36>>2]+v[a+724>>2];v[a+844>>2]=v[c+36>>2]+v[a+844>>2];v[a+728>>2]=v[c+40>>2]+v[a+728>>2];v[a+872>>2]=v[c+40>>2]+v[a+872>>2];v[a+732>>2]=v[c+44>>2]+v[a+732>>2];v[a+708>>2]=f+v[c+44>>2];v[a+736>>2]=v[c+48>>2]+v[a+736>>2];v[a+740>>2]=v[c+52>>2]+v[a+740>>2];v[a+764>>2]=v[c+52>>2]+v[a+764>>2];v[a+744>>2]=v[c+56>>2]+v[a+744>>2];v[a+792>>2]=v[c+56>>2]+v[a+792>>2];v[a+748>>2]=v[c+60>>2]+v[a+748>>2];v[a+820>>2]=v[c+60>>2]+v[a+820>>2];f=c- -64|0;v[a+752>>2]=v[f>>2]+v[a+752>>2];v[a+848>>2]=v[f>>2]+v[a+848>>2];v[a+756>>2]=v[c+68>>2]+v[a+756>>2];v[a+876>>2]=v[c+68>>2]+v[a+876>>2];v[a+760>>2]=v[c+72>>2]+v[a+760>>2];v[a+712>>2]=v[c+72>>2]+v[a+712>>2];v[a+764>>2]=v[c+76>>2]+v[a+764>>2];v[a+740>>2]=v[c+76>>2]+v[a+740>>2];v[a+768>>2]=v[c+80>>2]+v[a+768>>2];v[a+772>>2]=v[c+84>>2]+v[a+772>>2];v[a+796>>2]=v[c+84>>2]+v[a+796>>2];v[a+776>>2]=v[c+88>>2]+v[a+776>>2];v[a+824>>2]=v[c+88>>2]+v[a+824>>2];v[a+780>>2]=v[c+92>>2]+v[a+780>>2];v[a+852>>2]=v[c+92>>2]+v[a+852>>2];v[a+784>>2]=v[c+96>>2]+v[a+784>>2];v[a+880>>2]=v[c+96>>2]+v[a+880>>2];v[a+788>>2]=v[c+100>>2]+v[a+788>>2];v[a+716>>2]=v[c+100>>2]+v[a+716>>2];v[a+792>>2]=v[c+104>>2]+v[a+792>>2];v[a+744>>2]=v[c+104>>2]+v[a+744>>2];v[a+796>>2]=v[c+108>>2]+v[a+796>>2];v[a+772>>2]=v[c+108>>2]+v[a+772>>2];v[a+800>>2]=v[c+112>>2]+v[a+800>>2];v[a+804>>2]=v[c+116>>2]+v[a+804>>2];v[a+828>>2]=v[c+116>>2]+v[a+828>>2];v[a+808>>2]=v[c+120>>2]+v[a+808>>2];v[a+856>>2]=v[c+120>>2]+v[a+856>>2];v[a+812>>2]=v[c+124>>2]+v[a+812>>2];v[a+884>>2]=v[c+124>>2]+v[a+884>>2];v[a+816>>2]=v[c+128>>2]+v[a+816>>2];v[a+720>>2]=v[c+128>>2]+v[a+720>>2];v[a+820>>2]=v[c+132>>2]+v[a+820>>2];v[a+748>>2]=v[c+132>>2]+v[a+748>>2];v[a+824>>2]=v[c+136>>2]+v[a+824>>2];v[a+776>>2]=v[c+136>>2]+v[a+776>>2];v[a+828>>2]=v[c+140>>2]+v[a+828>>2];v[a+804>>2]=v[c+140>>2]+v[a+804>>2];v[a+832>>2]=v[c+144>>2]+v[a+832>>2];v[a+836>>2]=v[c+148>>2]+v[a+836>>2];v[a+860>>2]=v[c+148>>2]+v[a+860>>2];v[a+840>>2]=v[c+152>>2]+v[a+840>>2];v[a+888>>2]=v[c+152>>2]+v[a+888>>2];v[a+108>>2]=v[c>>2];v[a+112>>2]=v[c+4>>2];v[a+116>>2]=v[d>>2];v[a+508>>2]=v[d+392>>2];v[a+312>>2]=v[d+196>>2];c=v[d+4>>2];v[a+144>>2]=c;v[a+120>>2]=c;c=v[d+396>>2];v[a+536>>2]=c;v[a+512>>2]=c;c=v[d+200>>2];v[a+340>>2]=c;v[a+316>>2]=c;c=v[d+8>>2];v[a+172>>2]=c;v[a+124>>2]=c;c=v[d+400>>2];v[a+564>>2]=c;v[a+516>>2]=c;c=v[d+204>>2];v[a+368>>2]=c;v[a+320>>2]=c;c=v[d+12>>2];v[a+200>>2]=c;v[a+128>>2]=c;c=v[d+404>>2];v[a+592>>2]=c;v[a+520>>2]=c;c=v[d+208>>2];v[a+396>>2]=c;v[a+324>>2]=c;c=v[d+16>>2];v[a+228>>2]=c;v[a+132>>2]=c;c=v[d+408>>2];v[a+620>>2]=c;v[a+524>>2]=c;c=v[d+212>>2];v[a+424>>2]=c;v[a+328>>2]=c;c=v[d+20>>2];v[a+256>>2]=c;v[a+136>>2]=c;c=v[d+412>>2];v[a+648>>2]=c;v[a+528>>2]=c;c=v[d+216>>2];v[a+452>>2]=c;v[a+332>>2]=c;c=v[d+24>>2];v[a+284>>2]=c;v[a+140>>2]=c;c=v[d+416>>2];v[a+676>>2]=c;v[a+532>>2]=c;c=v[d+220>>2];v[a+480>>2]=c;v[a+336>>2]=c;v[a+148>>2]=v[d+32>>2];v[a+540>>2]=v[d+424>>2];v[a+344>>2]=v[d+228>>2];c=v[d+36>>2];v[a+176>>2]=c;v[a+152>>2]=c;c=v[d+428>>2];v[a+568>>2]=c;v[a+544>>2]=c;c=v[d+232>>2];v[a+372>>2]=c;v[a+348>>2]=c;c=v[d+40>>2];v[a+204>>2]=c;v[a+156>>2]=c;c=v[d+432>>2];v[a+596>>2]=c;v[a+548>>2]=c;c=v[d+236>>2];v[a+400>>2]=c;v[a+352>>2]=c;c=v[d+44>>2];v[a+232>>2]=c;v[a+160>>2]=c;c=v[d+436>>2];v[a+624>>2]=c;v[a+552>>2]=c;c=v[d+240>>2];v[a+428>>2]=c;v[a+356>>2]=c;c=v[d+48>>2];v[a+260>>2]=c;v[a+164>>2]=c;c=v[d+440>>2];v[a+652>>2]=c;v[a+556>>2]=c;c=v[d+244>>2];v[a+456>>2]=c;v[a+360>>2]=c;c=v[d+52>>2];v[a+288>>2]=c;v[a+168>>2]=c;c=v[d+444>>2];v[a+680>>2]=c;v[a+560>>2]=c;c=v[d+248>>2];v[a+484>>2]=c;v[a+364>>2]=c;v[a+180>>2]=v[d- -64>>2];v[a+572>>2]=v[d+456>>2];v[a+376>>2]=v[d+260>>2];c=v[d+68>>2];v[a+208>>2]=c;v[a+184>>2]=c;c=v[d+460>>2];v[a+600>>2]=c;v[a+576>>2]=c;c=v[d+264>>2];v[a+404>>2]=c;v[a+380>>2]=c;c=v[d+72>>2];v[a+236>>2]=c;v[a+188>>2]=c;c=v[d+464>>2];v[a+628>>2]=c;v[a+580>>2]=c;c=v[d+268>>2];v[a+432>>2]=c;v[a+384>>2]=c;c=v[d+76>>2];v[a+264>>2]=c;v[a+192>>2]=c;c=v[d+468>>2];v[a+656>>2]=c;v[a+584>>2]=c;c=v[d+272>>2];v[a+460>>2]=c;v[a+388>>2]=c;c=v[d+80>>2];v[a+292>>2]=c;v[a+196>>2]=c;c=v[d+472>>2];v[a+684>>2]=c;v[a+588>>2]=c;c=v[d+276>>2];v[a+488>>2]=c;v[a+392>>2]=c;v[a+212>>2]=v[d+96>>2];v[a+604>>2]=v[d+488>>2];v[a+408>>2]=v[d+292>>2];c=v[d+100>>2];v[a+240>>2]=c;v[a+216>>2]=c;c=v[d+492>>2];v[a+632>>2]=c;v[a+608>>2]=c;c=v[d+296>>2];v[a+436>>2]=c;v[a+412>>2]=c;c=v[d+104>>2];v[a+268>>2]=c;v[a+220>>2]=c;c=v[d+496>>2];v[a+660>>2]=c;v[a+612>>2]=c;c=v[d+300>>2];v[a+464>>2]=c;v[a+416>>2]=c;c=v[d+108>>2];v[a+296>>2]=c;v[a+224>>2]=c;c=v[d+500>>2];v[a+688>>2]=c;v[a+616>>2]=c;c=v[d+304>>2];v[a+492>>2]=c;v[a+420>>2]=c;v[a+244>>2]=v[d+128>>2];v[a+636>>2]=v[d+520>>2];v[a+440>>2]=v[d+324>>2];c=v[d+132>>2];v[a+272>>2]=c;v[a+248>>2]=c;c=v[d+524>>2];v[a+664>>2]=c;v[a+640>>2]=c;c=v[d+328>>2];v[a+468>>2]=c;v[a+444>>2]=c;c=v[d+136>>2];v[a+300>>2]=c;v[a+252>>2]=c;c=v[d+528>>2];v[a+692>>2]=c;v[a+644>>2]=c;c=v[d+332>>2];v[a+496>>2]=c;v[a+448>>2]=c;v[a+276>>2]=v[d+160>>2];v[a+668>>2]=v[d+552>>2];v[a+472>>2]=v[d+356>>2];c=v[d+164>>2];v[a+304>>2]=c;v[a+280>>2]=c;c=v[d+556>>2];v[a+696>>2]=c;v[a+672>>2]=c;c=v[d+360>>2];v[a+500>>2]=c;v[a+476>>2]=c;v[a+308>>2]=v[d+192>>2];v[a+700>>2]=v[d+584>>2];v[a+504>>2]=v[d+388>>2];v[a+76>>2]=v[d+588>>2];v[a+80>>2]=v[d+592>>2];v[a+84>>2]=v[d+596>>2];v[a>>2]=v[d+600>>2];v[a+4>>2]=v[d+604>>2];v[a+8>>2]=v[d+608>>2];v[a+60>>2]=v[d+612>>2];v[a+72>>2]=v[d+624>>2]<<14;v[a+64>>2]=v[d+616>>2];v[a+68>>2]=v[d+620>>2];v[a+88>>2]=v[d+628>>2];v[a+92>>2]=v[d+632>>2];v[a+96>>2]=v[d+636>>2];v[a+100>>2]=v[d+640>>2];v[a+104>>2]=v[d+644>>2];v[b+12>>2]=v[e+2664>>2];v[b+16>>2]=v[e+2668>>2];v[b+20>>2]=v[e+2672>>2];v[b+56>>2]=v[e+1236>>2];v[b+52>>2]=v[v[e+980>>2]+368>>2];v[b+24>>2]=v[e+2676>>2];v[b+28>>2]=v[e+2680>>2];v[b+32>>2]=v[e+2684>>2];v[b+36>>2]=v[e+2688>>2];v[b+40>>2]=v[e+2692>>2];v[b+44>>2]=v[e+2696>>2];v[b+48>>2]=v[e+2700>>2];return}b9(v[37696],2,11709,1551,68230,0)}function V3(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=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0;v[a+112>>2]=0;g=a+104|0;b=v[a+12>>2];v[g>>2]=v[b+12>>2];v[a+116>>2]=v[b+68>>2];d=v[b+72>>2];c=w[b+8|0];v[a+108>>2]=v[b+16>>2];v[a+120>>2]=c&2?0:d;v[a+124>>2]=d&c<<30>>31;e=a+128|0;b=v[a+8>>2];if(v[b+40>>2]==1){b=v[b+32>>2]}else{b=4}c=xa-176|0;xa=c;i=v[g+12>>2];d=c+88|0;v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;a:{if(!m3(d,g,b)){break a}d=i<<2;if(d){f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,d,24422,12274,1483)|0}v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+56>>2]=0;v[c+60>>2]=0;d=c- -64|0;v[d>>2]=0;v[d+4>>2]=0;v[c+72>>2]=0;v[c+76>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+12>>2]=i;v[c+8>>2]=0;v[c+4>>2]=b;v[c>>2]=f;v[c+80>>2]=g;v[c+152>>2]=0;v[c+136>>2]=0;o3(v[c+92>>2],c+152|0,c+136|0,2958,c);x$(g,f);if(f){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,f)}d=v[g+12>>2];if(d>>>0<=b>>>0){j=y$(e,g,v[c+92>>2]);break a}b=v[c+92>>2];if(d>>>0<=4){j=y$(e,g,b);break a}q3(v[b+24>>2]);v[c+12>>2]=0;v[c+16>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=1;z[c+20>>2]=.00019999999494757503;b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?46279:63804;d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,37900,d,12274,509)|0;i=d+37892|0;f=d+4|0;b=f;while(1){v[b+8>>2]=0;v[b+12>>2]=0;v[b+32>>2]=-1;v[b+36>>2]=0;v[b+24>>2]=-1082130432;v[b+28>>2]=-1082130432;v[b+16>>2]=0;v[b+20>>2]=-1082130432;v[b+44>>2]=0;v[b+48>>2]=0;v[b+68>>2]=-1;v[b+72>>2]=0;v[b+60>>2]=-1082130432;v[b+64>>2]=-1082130432;v[b+52>>2]=0;v[b+56>>2]=-1082130432;v[b+80>>2]=0;v[b+84>>2]=0;v[b+104>>2]=-1;v[b+108>>2]=0;v[b+96>>2]=-1082130432;v[b+100>>2]=-1082130432;v[b+88>>2]=0;v[b+92>>2]=-1082130432;v[b+116>>2]=0;v[b+120>>2]=0;v[b+140>>2]=-1;v[b+144>>2]=0;v[b+132>>2]=-1082130432;v[b+136>>2]=-1082130432;v[b+124>>2]=0;v[b+128>>2]=-1082130432;v[b+156>>2]=0;v[b+160>>2]=0;v[b+180>>2]=-1;v[b+184>>2]=0;v[b+172>>2]=-1082130432;v[b+176>>2]=-1082130432;v[b+164>>2]=0;v[b+168>>2]=-1082130432;v[b+192>>2]=0;v[b+196>>2]=0;v[b+216>>2]=-1;v[b+220>>2]=0;v[b+208>>2]=-1082130432;v[b+212>>2]=-1082130432;v[b+200>>2]=0;v[b+204>>2]=-1082130432;v[b+228>>2]=0;v[b+232>>2]=0;v[b+252>>2]=-1;v[b+256>>2]=0;v[b+244>>2]=-1082130432;v[b+248>>2]=-1082130432;v[b+236>>2]=0;v[b+240>>2]=-1082130432;v[b+264>>2]=0;v[b+268>>2]=0;v[b+288>>2]=-1;v[b+292>>2]=0;v[b+280>>2]=-1082130432;v[b+284>>2]=-1082130432;v[b+272>>2]=0;v[b+276>>2]=-1082130432;b=b+296|0;if((i|0)!=(b|0)){continue}break}i=0;v[d+37896>>2]=0;v[c+24>>2]=d;v[d+37892>>2]=1;r3(c+88|0,f,v[v[c+92>>2]+24>>2],c);j=y$(e,g,v[c+92>>2]);if(j){t[e+57|0]=1;b=(((v[d+72>>2]!=-1)+(v[d+36>>2]!=-1)|0)+(v[d+108>>2]!=-1)|0)+(v[d+144>>2]!=-1)|0;h=v[c+16>>2]+(v[c+12>>2]+(v[c+8>>2]+v[c+4>>2]|0)|0)|0;k=h<<6;if(k){d=v[37696];i=Ba[v[v[d+12>>2]+8>>2]](d+12|0,k,24422,12274,1090)|0}v[c+172>>2]=4;b=b-2|0;v[e+28>>2]=b>>>0<3?b<<1:-1;v[c+168>>2]=0;v[c+164>>2]=0;if(w[e+57|0]){v[c+128>>2]=-8388609;v[c+120>>2]=-8388609;v[c+124>>2]=-8388609;v[c+112>>2]=-8388609;v[c+104>>2]=-8388609;v[c+108>>2]=-8388609;s3(f,c+120|0,c+104|0);l=z[c+120>>2];m=z[c+124>>2];n=z[c+128>>2];o=z[c+104>>2];p=z[c+108>>2];q=z[c+112>>2];z[e+52>>2]=q/C(32767);z[e+48>>2]=p/C(32767);z[e+44>>2]=o/C(32767);z[e+40>>2]=n/C(32767);z[e+36>>2]=m/C(32767);z[e+32>>2]=l/C(32767);z[c+160>>2]=n!=C(0)?C(C(32767)/n):C(0);z[c+156>>2]=m!=C(0)?C(C(32767)/m):C(0);z[c+152>>2]=l!=C(0)?C(C(32767)/l):C(0);z[c+144>>2]=q!=C(0)?C(C(32767)/q):C(0);z[c+140>>2]=p!=C(0)?C(C(32767)/p):C(0);z[c+136>>2]=o!=C(0)?C(C(32767)/o):C(0);t3(i,0,c+172|0,f,c+168|0,c+164|0,c+152|0,c+136|0,e+32|0,e+44|0)}b=v[c+24>>2];if(b){while(1){d=v[b+37896>>2];f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,b);b=d;if(b){continue}break}}g=h<<2;v[c+24>>2]=0;b:{if(!w[e+57|0]){break b}d=(g|0)!=(g&268435455)?-1:g<<4;c:{d:{if(d){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?51265:63804;r=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,f,12274,1218)|0;b=I9(r,i,k);h=h&1073741823;if(h){break d}if(b){break c}break b}I9(0,i,k);h=h&1073741823;if(!h){break b}}f=0;while(1){d=f<<6;b=d+i|0;d=d+r|0;u[b>>1]=x[d+2>>1];u[b+16>>1]=x[d+6>>1];u[b+32>>1]=x[d+10>>1];u[b+2>>1]=x[d>>1];u[b+18>>1]=x[d+4>>1];u[b+34>>1]=x[d+8>>1];v[b+48>>2]=v[d+12>>2];u[b+4>>1]=x[d+18>>1];u[b+20>>1]=x[d+22>>1];u[b+36>>1]=x[d+26>>1];u[b+6>>1]=x[d+16>>1];u[b+22>>1]=x[d+20>>1];u[b+38>>1]=x[d+24>>1];v[b+52>>2]=v[d+28>>2];u[b+8>>1]=x[d+34>>1];u[b+24>>1]=x[d+38>>1];u[b+40>>1]=x[d+42>>1];u[b+10>>1]=x[d+32>>1];u[b+26>>1]=x[d+36>>1];u[b+42>>1]=x[d+40>>1];v[b+56>>2]=v[d+44>>2];u[b+12>>1]=x[d+50>>1];u[b+28>>1]=x[d+54>>1];u[b+44>>1]=x[d+58>>1];u[b+14>>1]=x[d+48>>1];u[b+30>>1]=x[d+52>>1];u[b+46>>1]=x[d+56>>1];v[b+60>>2]=v[d+60>>2];f=f+1|0;if((h|0)!=(f|0)){continue}break}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,r)}v[e+24>>2]=i;v[e+20>>2]=g}b=v[c+24>>2];if(b){while(1){d=v[b+37896>>2];e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b);b=d;if(b){continue}break}}v[c+24>>2]=0}l3(c+88|0);xa=c+176|0;if(!j){b9(v[37696],32,9248,1150,67357,0);return}f=v[a+112>>2];d=v[a+12>>2];if(v[d+80>>2]){e=v[d+68>>2];b=e+e|0;c=b>>>0>>0?-1:b;e:{if(!c){c=0;break e}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?27439:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,1159)|0;d=v[a+12>>2];e=v[d+68>>2]}g=v[d+80>>2];f:{g:{if(e){i=e&3;d=0;b=0;if(e-1>>>0>=3){j=e&-4;e=0;while(1){u[(b<<1)+c>>1]=x[g+(v[f+(b<<2)>>2]<<1)>>1];h=b|1;u[(h<<1)+c>>1]=x[g+(v[f+(h<<2)>>2]<<1)>>1];h=b|2;u[(h<<1)+c>>1]=x[g+(v[f+(h<<2)>>2]<<1)>>1];h=b|3;u[(h<<1)+c>>1]=x[g+(v[f+(h<<2)>>2]<<1)>>1];b=b+4|0;e=e+4|0;if((j|0)!=(e|0)){continue}break}}if(!i){break g}while(1){u[(b<<1)+c>>1]=x[g+(v[f+(b<<2)>>2]<<1)>>1];b=b+1|0;d=d+1|0;if((i|0)!=(d|0)){continue}break}break g}if(!g){break f}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);d=v[a+12>>2]}v[d+80>>2]=c}b=v[a+8>>2];if(!(w[b+14|0]?0:w[b+12|0])){b=v[d+68>>2];c=(b&1073741823)!=(b|0)?-1:b<<2;h:{if(!c){c=0;break h}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,9248,1168)|0;d=v[a+12>>2];b=v[d+68>>2]}e=v[d+48>>2];i:{j:{k:{if(b){b=0;if(e){break k}while(1){e=b<<2;v[e+c>>2]=v[e+f>>2];b=b+1|0;if(b>>>0>2]){continue}break}break i}if(!e){break i}break j}while(1){g=b<<2;v[g+c>>2]=v[e+(v[f+g>>2]<<2)>>2];b=b+1|0;if(b>>>0>2]){continue}break}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);d=v[a+12>>2]}v[d+48>>2]=c}b=v[a+112>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[a+112>>2]=0}function VD(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,u=0,x=0;a:{e=v[a+268>>2];if(!w[a+337|0]&(e|0)!=6){break a}t[a+337|0]=0;c=v[a+4>>2];if(!(w[a+336|0]?c:0)){d=xa-16|0;xa=d;b=v[a+4>>2];if(b){e=KB(b);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e)}v[a+4>>2]=0;c=v[a+284>>2];b:{if(!c){break b}e=v[37696];b=e+12|0;e=JB((q=b,r=64,s=Ba[v[v[e>>2]+20>>2]](e)|0?44169:63804,u=8103,x=750,p=v[v[b>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0));v[a+4>>2]=e;v[d+4>>2]=c;v[d+12>>2]=0;b=v[a+292>>2];v[d>>2]=4;v[d+8>>2]=b;NB(e,d);v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;e=v[d+12>>2];if(e){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e)}if(!w[a+336|0]){break b}b=v[a+40>>2];kD(a+312|0,b>>>0>>0?c:b,v[a+4>>2])}xa=d+16|0;return}if((e|0)!=6){if(!v[a+284>>2]){break a}qD(a+52|0,v[a+292>>2]);UB(c,v[a+292>>2]);return}c=KB(c);e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);c=v[a+36>>2];if(c){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[a+268>>2]=0;v[a+36>>2]=0;e=1;d=v[a+44>>2];c=v[a+272>>2];c:{if(d>>>0<=c>>>0){e=-1;if(c>>>0<=d>>>0){break c}}v[a+280>>2]=v[a+280>>2]+e}d=v[a+32>>2];v[a+32>>2]=0;v[a+4>>2]=d;g=a+312|0;c=v[a+284>>2];e=v[a+40>>2];kD(g,c>>>0>e>>>0?c:e,d);if(v[a+344>>2]>0){e=v[a+340>>2];while(1){f=v[e>>2];d:{if(f>>>0>=y[a+316>>2]){break d}c=v[v[g>>2]+(f<<2)>>2];if((c|0)==-1){break d}SB(v[a+4>>2],c);f=v[e>>2]}lD(g,f,v[e+4>>2],v[a+4>>2]);e=e+8|0;if(e>>>0>2]+(v[a+344>>2]<<3)>>>0){continue}break}}v[a+344>>2]=0;d=v[a+356>>2];if(d){e=0;while(1){c=v[v[a+352>>2]+(e<<2)>>2];e:{if(c>>>0>=y[a+316>>2]){break e}c=v[v[g>>2]+(c<<2)>>2];if((c|0)==-1){break e}SB(v[a+4>>2],c)}e=e+1|0;if((d|0)!=(e|0)){continue}break}}v[a+356>>2]=0;e=v[a+4>>2];if(!(!e|!v[a+284>>2])){qD(a+52|0,v[a+292>>2]);UB(e,v[a+292>>2])}o=v[a+48>>2]-1|0;c=0;e=0;i=xa-16|0;xa=i;h=a+52|0;j=h+4|0;g=v[j+4>>2];n=B(g,48)+j|0;d=v[n+12>>2];if(!(!d|!v[d+588>>2])){k=j+B(g,48)|0;j=v[k+52>>2];g=v[k+36>>2];if(!(!g|!j)){J9(v[k+28>>2],255,g<<2);f=v[k+24>>2];d=v[k+32>>2];l=d-1|0;if(l){if(d-2>>>0>=3){j=l&-4;d=0;while(1){g=e|1;v[f+(e<<2)>>2]=g;m=f+(g<<2)|0;g=e|2;v[m>>2]=g;m=f+(g<<2)|0;g=e|3;v[m>>2]=g;e=e+4|0;v[f+(g<<2)>>2]=e;d=d+4|0;if((j|0)!=(d|0)){continue}break}}d=l&3;if(d){while(1){g=f+(e<<2)|0;e=e+1|0;v[g>>2]=e;b=b+1|0;if((d|0)!=(b|0)){continue}break}}b=v[k+32>>2]-1|0}else{b=0}v[f+(b<<2)>>2]=-1;v[k+52>>2]=0;v[k+44>>2]=0;d=v[n+12>>2]}v[k+8>>2]=0;IC(d)}g=v[h+204>>2];f:{if(!g){break f}e=-1;g:{h:{i:{d=v[h+200>>2];b=g-1|0;if((o|0)!=v[(d+(b<<3)|0)+4>>2]){j:{if((o|0)!=v[d+4>>2]){break j}while(1){e=c;c=c+1|0;if((g|0)==(c|0)){e=b;break j}if((o|0)==v[((c<<3)+d|0)+4>>2]){continue}break}}if((e|0)==-1){break f}k=e+1|0;v[h+204>>2]=g-k;if((g|0)==(k|0)){c=0;break h}f=0;while(1){c=v[h+196>>2]+B(f,24)|0;j=f+k<<3;g=j+d|0;b=v[v[g>>2]+8>>2];z[c>>2]=z[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];c=f<<3;b=c+d|0;v[b+4>>2]=v[g+4>>2];b=v[b>>2];LB(b,1);d=v[h+200>>2];g=j+d|0;v[c+d>>2]=v[g>>2];v[g+4>>2]=0;v[g>>2]=b;f=f+1|0;c=v[h+204>>2];if(f>>>0>>0){continue}break}break i}f=0;b=0;if(v[h+204>>2]){e=v[h+200>>2];while(1){d=f<<3;LB(v[d+e>>2],1);e=v[h+200>>2];v[(d+e|0)+4>>2]=0;f=f+1|0;if(f>>>0>2]){continue}break}}e=v[h+148>>2];if(!(!e|!v[h+164>>2])){J9(v[h+140>>2],255,e<<2);f=0;g=v[h+136>>2];e=v[h+144>>2];j=e-1|0;if(j){if(e-2>>>0>=3){d=j&-4;while(1){e=f|1;v[g+(f<<2)>>2]=e;m=g+(e<<2)|0;e=f|2;v[m>>2]=e;m=g+(e<<2)|0;e=f|3;v[m>>2]=e;f=f+4|0;v[g+(e<<2)>>2]=f;c=c+4|0;if((d|0)!=(c|0)){continue}break}}e=j&3;if(e){while(1){c=g+(f<<2)|0;f=f+1|0;v[c>>2]=f;b=b+1|0;if((e|0)!=(b|0)){continue}break}}b=v[h+144>>2]-1|0}else{b=0}v[g+(b<<2)>>2]=-1;v[h+164>>2]=0;v[h+156>>2]=0}v[h+204>>2]=0;LB(v[h+168>>2],1);break f}if(c>>>0>e>>>0){break g}}while(1){b=c<<3;LB(v[b+d>>2],1);d=v[h+200>>2];v[(b+d|0)+4>>2]=0;c=c+1|0;if(e>>>0>=c>>>0){continue}break}c=v[h+204>>2]}v[i+4>>2]=c;v[i+12>>2]=0;b=v[h+196>>2];v[i>>2]=4;v[i+8>>2]=b;NB(v[h+168>>2],i);kD(h+172|0,v[h+204>>2],v[h+168>>2]);v[i+8>>2]=0;v[i>>2]=0;v[i+4>>2]=0;e=v[i+12>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}v[i+8>>2]=h+128;e=v[h+148>>2];k:{if(!e){break k}b=v[h+140>>2];d=0;l:{while(1){c=b+(d<<2)|0;if(v[c>>2]!=-1){break l}d=d+1|0;v[i+4>>2]=d;if((d|0)!=(e|0)){continue}break}break k}v[i>>2]=c;v[i+4>>2]=d+1;b=v[h+132>>2];if(!b){break k}d=b+B(v[c>>2],20)|0;e=0;while(1){b=v[d+8>>2];m:{if((b|0)==(o|0)){e=e+1|0;break m}v[d+16>>2]=v[d+16>>2]-k}f=v[i>>2];n:{o:{p:{q:{if((b|0)==(o|0)){if(!f){break q}l=v[f>>2];d=l<<2;h=v[i+8>>2];v[f>>2]=v[d+v[h+8>>2]>>2];g=v[h+36>>2]-1|0;v[h+36>>2]=g;v[h+32>>2]=v[h+32>>2]+1;if((g|0)!=(l|0)){b=v[h+4>>2];c=B(l,20);j=b+c|0;g=b+B(g,20)|0;b=v[g+4>>2];v[j>>2]=v[g>>2];v[j+4>>2]=b;b=v[g+12>>2];v[j+8>>2]=v[g+8>>2];v[j+12>>2]=b;v[j+16>>2]=v[g+16>>2];n=v[h+8>>2];v[n+d>>2]=v[n+(v[h+36>>2]<<2)>>2];j=v[h+12>>2];c=c+v[h+4>>2]|0;b=v[c+4>>2];d=v[c>>2];c=b;b=-1;f=b+d|0;g=(d^-1)+c|0;g=b>>>0>f>>>0?g+1|0:g;b=f;b=b^((g&4194303)<<10|b>>>22);d=b;c=g^g>>>22;g=c<<13|b>>>19;b=b<<13^-1;d=d+b|0;c=(g^-1)+c|0;c=b>>>0>d>>>0?c+1|0:c;b=d;b=Saa(b^((c&255)<<24|b>>>8),c^c>>>8,9,0);d=Aa;c=d>>>15|0;b=b^((d&32767)<<17|b>>>15);c=c^d;g=c;f=j;d=c<<27|b>>>5;c=b<<27^-1;j=c+b|0;b=(d^-1)+g|0;b=c>>>0>j>>>0?b+1|0:b;c=j;b=f+((v[h+20>>2]-1&(c^((b&2147483647)<<1|c>>>31)))<<2)|0;f=v[b>>2];c=v[h+36>>2];if((f|0)!=(c|0)){while(1){b=n+(f<<2)|0;f=v[b>>2];if((c|0)!=(f|0)){continue}break}}v[b>>2]=l;f=v[i>>2]}v[h+28>>2]=v[h+28>>2]-1;b=v[f>>2];if((b|0)!=-1){b=v[v[i+8>>2]+4>>2]+B(b,20)|0;break n}b=0;v[i>>2]=0;f=v[i+4>>2];d=v[i+8>>2];j=v[d+20>>2];if(f>>>0>=j>>>0){break n}g=v[d+12>>2];while(1){c=g+(f<<2)|0;if(v[c>>2]!=-1){break o}f=f+1|0;v[i+4>>2]=f;if((f|0)!=(j|0)){continue}break}break n}if(f){break p}}b=0;v[i>>2]=0;f=v[i+4>>2];d=v[i+8>>2];j=v[d+20>>2];if(f>>>0>=j>>>0){break n}g=v[d+12>>2];while(1){c=g+(f<<2)|0;if(v[c>>2]!=-1){break o}f=f+1|0;v[i+4>>2]=f;if((f|0)!=(j|0)){continue}break}break n}d=v[i+8>>2];c=v[d+8>>2]+(v[f>>2]<<2)|0;b=v[c>>2];if((b|0)==-1){b=0;v[i>>2]=0;f=v[i+4>>2];j=v[d+20>>2];if(f>>>0>=j>>>0){break n}g=v[d+12>>2];while(1){c=g+(f<<2)|0;if(v[c>>2]!=-1){break o}f=f+1|0;v[i+4>>2]=f;if((f|0)!=(j|0)){continue}break}break n}v[i>>2]=c;b=v[d+4>>2]+B(b,20)|0;break n}v[i>>2]=c;v[i+4>>2]=f+1;b=v[d+4>>2]+B(v[c>>2],20)|0}d=b;if(b){continue}break}}}xa=i+16|0;t[a+338|0]=(v[a+156>>2]+v[a+108>>2]|0)!=(0-v[a+216>>2]|0)}}function x1(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=0,l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=C(0),x=0,y=C(0),A=0,D=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=C(0),O=C(0),P=0,Q=0,R=0,S=C(0),T=C(0);i=xa-320|0;xa=i;q=v[b+4>>2];j=z[q+20>>2];k=v[a+4>>2];l=z[k+20>>2];D=z[d>>2];P=w[k+32|0];E=z[k+16>>2];Q=w[q+32|0];G=z[q+16>>2];v[i+44>>2]=0;J=C((j>2]=n;A=c+(i+48|0)|0;c=w[f+k|0];v[A>>2]=c;c=v[q+152>>2]+B(c,12)|0;j=z[c>>2];l=z[c+4>>2];m=z[c+8>>2];n=(1-n<<4)+R|0;o=z[n>>2];p=z[n+4>>2];r=z[n+8>>2];c=d;A=c<<4;x=A+(i+144|0)|0;z[x+12>>2]=z[n+12>>2];z[x+8>>2]=r;z[x+4>>2]=p;z[x>>2]=o;n=A+(i+80|0)|0;v[n+12>>2]=0;z[n+8>>2]=m;z[n+4>>2]=l;z[n>>2]=j;n=A+(i+208|0)|0;v[n+12>>2]=0;m=C(r-m);z[n+8>>2]=m;l=C(p-l);z[n+4>>2]=l;j=C(o-j);z[n>>2]=j;d=c+1|0;v[i+44>>2]=d;k=k+1|0;if((L|0)!=(k|0)){continue}break}g:{h:{switch(c-1|0){case 0:o=z[i+216>>2];j=C(z[i+232>>2]-o);p=z[i+208>>2];l=C(z[i+224>>2]-p);r=z[i+212>>2];m=C(z[i+228>>2]-r);s=C(C(j*j)+C(C(l*l)+C(m*m)));if(!(s<=C(1.1920928955078125e-7))){break g}v[i+44>>2]=1;c=v[i+212>>2];v[i+16>>2]=v[i+208>>2];v[i+20>>2]=c;c=v[i+220>>2];v[i+24>>2]=v[i+216>>2];v[i+28>>2]=c;break e;case 1:jY(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}}Q_(i+16|0,i+208|0,i+144|0,i+80|0,i- -64|0,i+48|0,i+44|0);break e}v[i+28>>2]=0;y=j;j=C(F(C(C(C(C(C(-p)*l)-C(m*r))-C(o*j))/s),C(1)));j=j>C(0)?j:C(0);z[i+24>>2]=o+C(y*j);z[i+20>>2]=r+C(m*j);z[i+16>>2]=p+C(l*j);break e}j=z[c+8>>2];m=z[c>>2];l=z[c+4>>2];v[i+284>>2]=0;c=C(C(j*j)+C(C(m*m)+C(l*l)))>C(0);j=c?j:C(0);z[i+280>>2]=j;l=c?l:C(0);z[i+276>>2]=l;m=c?m:C(1);z[i+272>>2]=m;p=C(C(1)/C(K(C(C(j*j)+C(C(m*m)+C(l*l))))));s=C(j*p);u=C(m*p);o=C(34028234663852886e22);y=C(l*p);break d}v[i+28>>2]=0;z[i+24>>2]=m;z[i+20>>2]=l;z[i+16>>2]=j}c=v[i+20>>2];v[i+272>>2]=v[i+16>>2];v[i+276>>2]=c;c=v[i+28>>2];v[i+280>>2]=v[i+24>>2];v[i+284>>2]=c;j=z[i+280>>2];m=z[i+272>>2];l=z[i+276>>2];o=C(K(C(C(j*j)+C(C(m*m)+C(l*l)))));if(!(J>2]=v[i+312>>2];c=v[i+308>>2];v[i+288>>2]=v[i+304>>2];v[i+292>>2]=c;D=m;c=v[a+4>>2];k=c+52|0;E=l;G=j;q=v[i+44>>2]<<2;m=C(-m);n=c+56|0;x=c+68|0;A=c+72|0;d=C(C(C(z[c+48>>2]*m)-C(z[k>>2]*l))-C(z[n>>2]*j))>C(C(C(z[c+64>>2]*m)-C(z[x>>2]*l))-C(z[A>>2]*j));v[q+(i- -64|0)>>2]=d;j=z[(d?n:A)>>2];l=z[(d?c+48|0:c- -64|0)>>2];m=z[(d?k:x)>>2];T=z[i+284>>2];c=v[b+4>>2];d=IV(c,i+272|0);v[q+(i+48|0)>>2]=d;c=v[c+152>>2]+B(d,12)|0;M=z[c+8>>2];o=C(j-M);N=z[c>>2];H=C(l-N);O=z[c+4>>2];I=C(m-O);y=C(C(s*o)+C(C(u*H)+C(r*I)));if(y>S){a=0;if(!e){break a}b=v[i+44>>2];t[g|0]=b;if(!b){break a}k=0;if((b|0)!=1){h=b&-2;d=0;while(1){c=k<<2;q=i- -64|0;t[e+k|0]=v[c+q>>2];n=i+48|0;t[f+k|0]=v[n+c>>2];c=k|1;g=c<<2;t[c+e|0]=v[g+q>>2];t[c+f|0]=v[g+n>>2];k=k+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(b&1)){break a}b=k<<2;t[e+k|0]=v[b+(i- -64|0)>>2];t[f+k|0]=v[b+(i+48|0)>>2];break a}d=v[i+44>>2];if(C(p*C(.9997749924659729))>2];n=i+48|0;t[c+f|0]=v[n+b>>2];b=c|1;g=b<<2;t[b+e|0]=v[g+q>>2];t[b+f|0]=v[g+n>>2];c=c+2|0;a=a+2|0;if((k|0)!=(a|0)){continue}break}}if(!(d&1)){break i}a=c<<2;t[c+e|0]=v[a+(i- -64|0)>>2];t[c+f|0]=v[a+(i+48|0)>>2]}z[h+32>>2]=u;v[h+44>>2]=0;z[h+40>>2]=s;z[h+36>>2]=r;JV(i+208|0,i+144|0,i+80|0,i+272|0,i+16|0,i,d);a=v[i+20>>2];v[h>>2]=v[i+16>>2];v[h+4>>2]=a;a=v[i+28>>2];v[h+8>>2]=v[i+24>>2];v[h+12>>2]=a;a=v[i+4>>2];v[h+16>>2]=v[i>>2];v[h+20>>2]=a;a=v[i+12>>2];v[h+24>>2]=v[i+8>>2];v[h+28>>2]=a;a=v[i+308>>2];v[h+68>>2]=v[i+304>>2];v[h+72>>2]=a;v[h+76>>2]=v[i+312>>2];z[h+64>>2]=p;a=2;break a}k=d<<4;c=k+(i+144|0)|0;v[c+12>>2]=0;z[c+8>>2]=j;z[c+4>>2]=m;z[c>>2]=l;c=k+(i+80|0)|0;v[c+12>>2]=0;z[c+8>>2]=M;z[c+4>>2]=O;z[c>>2]=N;c=k+(i+208|0)|0;v[c+12>>2]=0;z[c+8>>2]=o;z[c+4>>2]=I;z[c>>2]=H;v[i+44>>2]=d+1;j:{k:{switch(d-1|0){case 0:o=z[i+216>>2];j=C(z[i+232>>2]-o);r=z[i+208>>2];l=C(z[i+224>>2]-r);s=z[i+212>>2];m=C(z[i+228>>2]-s);u=C(C(j*j)+C(C(l*l)+C(m*m)));if(u<=C(1.1920928955078125e-7)){v[i+44>>2]=1;c=v[i+212>>2];v[i+16>>2]=v[i+208>>2];v[i+20>>2]=c;c=v[i+220>>2];v[i+24>>2]=v[i+216>>2];v[i+28>>2]=c;break j}v[i+28>>2]=0;y=j;j=C(F(C(C(C(C(C(-r)*l)-C(m*s))-C(o*j))/u),C(1)));j=j>C(0)?j:C(0);z[i+24>>2]=o+C(y*j);z[i+20>>2]=s+C(m*j);z[i+16>>2]=r+C(l*j);break j;case 1:jY(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:Q_(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}}v[i+28>>2]=0;z[i+24>>2]=o;z[i+20>>2]=I;z[i+16>>2]=H}c=v[i+20>>2];v[i+272>>2]=v[i+16>>2];v[i+276>>2]=c;c=v[i+28>>2];v[i+280>>2]=v[i+24>>2];v[i+284>>2]=c;j=z[i+280>>2];m=z[i+272>>2];l=z[i+276>>2];o=C(K(C(C(j*j)+C(C(m*m)+C(l*l)))));u=C(C(1)/o);s=C(j*u);r=C(l*u);u=C(m*u);if(oJ){continue}break}c=v[i+44>>2];if(!(o>2];x=i+48|0;t[f+k|0]=v[x+d>>2];d=k|1;g=d<<2;t[d+e|0]=v[g+n>>2];t[d+f|0]=v[g+x>>2];k=k+2|0;a=a+2|0;if((q|0)!=(a|0)){continue}break}}if(!(b&1)){break l}a=k<<2;t[e+k|0]=v[a+(i- -64|0)>>2];t[f+k|0]=v[a+(i+48|0)>>2]}v[i+312>>2]=v[i+296>>2];a=v[i+292>>2];v[i+304>>2]=v[i+288>>2];v[i+308>>2]=a;z[i+284>>2]=T;z[i+272>>2]=D;z[i+276>>2]=E;z[i+280>>2]=G;JV(i+208|0,i+144|0,i+80|0,i+272|0,i+16|0,i,c);v[h+60>>2]=0;z[h+56>>2]=s;z[h+52>>2]=r;z[h+48>>2]=u;v[h+44>>2]=0;j=C(C(1)/p);z[h+40>>2]=G*j;z[h+36>>2]=E*j;z[h+32>>2]=D*j;a=v[i+20>>2];v[h>>2]=v[i+16>>2];v[h+4>>2]=a;a=v[i+28>>2];v[h+8>>2]=v[i+24>>2];v[h+12>>2]=a;a=v[i+4>>2];v[h+16>>2]=v[i>>2];v[h+20>>2]=a;a=v[i+12>>2];v[h+24>>2]=v[i+8>>2];v[h+28>>2]=a;z[h+64>>2]=p;a=v[i+292>>2];v[h+68>>2]=v[i+288>>2];v[h+72>>2]=a;v[h+76>>2]=v[i+296>>2];a=4;break a}if(e){break b}a=5;break a}c=v[i+44>>2]}t[g|0]=c;a=5;if(!c){break a}k=0;if((c|0)!=1){h=c&-2;d=0;while(1){b=k<<2;q=i- -64|0;t[e+k|0]=v[b+q>>2];n=i+48|0;t[f+k|0]=v[n+b>>2];b=k|1;g=b<<2;t[b+e|0]=v[g+q>>2];t[b+f|0]=v[g+n>>2];k=k+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(c&1)){break a}b=k<<2;t[e+k|0]=v[b+(i- -64|0)>>2];t[f+k|0]=v[b+(i+48|0)>>2]}xa=i+320|0;return a}function G1(a,b,c,d,e){var f=0,g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=0,q=C(0),r=0,s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;f=xa-96|0;xa=f;s=z[a+3640>>2];g=z[b+12>>2];i=z[b>>2];R=C(g-i);q=z[b+28>>2];n=z[b+4>>2];S=C(q-n);y=z[b+24>>2];T=C(y-i);k=z[b+16>>2];U=C(k-n);D=C(C(R*S)-C(T*U));Z=z[b+32>>2];o=z[b+8>>2];V=C(Z-o);l=z[b+20>>2];W=C(l-o);E=C(C(U*V)-C(S*W));F=C(C(W*T)-C(V*R));ea=C(C(D*D)+C(C(E*E)+C(F*F)));A=C(C(1)/C(K(ea)));_=C(D*A);u=z[a+3632>>2];$=C(E*A);x=z[a+3636>>2];A=C(F*A);a:{if(C(C(C(s*_)+C(C(u*$)+C(x*A)))-C(C(o*_)+C(C(i*$)+C(n*A))))>2]=o;z[f+84>>2]=n;z[f+80>>2]=i;v[f+92>>2]=0;m=(d&40)!=0;g=C(C(G*G)+C(C(H*H)+C(I*I)));break d}J=C(s-l);L=C(u-g);M=C(x-k);ca=C(C(V*J)+C(C(T*L)+C(S*M)));X=C(C(W*J)+C(C(R*L)+C(U*M)));if(!(!(X>=C(0))|!(X>=ca))){z[f+88>>2]=l;z[f+84>>2]=k;z[f+80>>2]=g;v[f+92>>2]=0;m=(d&24)!=0;o=l;n=k;i=g;g=C(C(J*J)+C(C(L*L)+C(M*M)));break d}N=C(s-Z);O=C(u-y);P=C(x-q);da=C(C(W*N)+C(C(R*O)+C(U*P)));Y=C(C(V*N)+C(C(T*O)+C(S*P)));if(!(!(Y>=C(0))|!(Y>=da))){z[f+88>>2]=Z;z[f+84>>2]=q;z[f+80>>2]=y;v[f+92>>2]=0;m=(d&48)!=0;o=Z;n=q;i=y;g=C(C(N*N)+C(C(O*O)+C(P*P)));break d}if(!(!(X=C(0))))){v[f+92>>2]=0;g=C(ba/C(ba-X));o=C(o+C(W*g));z[f+88>>2]=o;n=C(n+C(U*g));z[f+84>>2]=n;i=C(i+C(R*g));z[f+80>>2]=i;m=d>>>3&1;g=C(s-o);k=C(g*g);g=C(u-i);l=C(g*g);g=C(x-n);g=C(k+C(l+C(g*g)));break d}if(!(!(Y<=da)|(!(C(C(D*C(C(L*P)-C(O*M)))+C(C(E*C(C(M*N)-C(P*J)))+C(F*C(C(J*O)-C(N*L)))))>2]=0;i=C(ca-X);i=C(i/C(i+C(da-Y)));o=C(l+C(C(Z-l)*i));z[f+88>>2]=o;n=C(k+C(C(q-k)*i));z[f+84>>2]=n;i=C(g+C(C(y-g)*i));z[f+80>>2]=i;m=d>>>4&1;g=C(s-o);k=C(g*g);g=C(u-i);l=C(g*g);g=C(x-n);g=C(k+C(l+C(g*g)));break d}if(!(Y=C(0)))){break c}v[f+92>>2]=0;g=C(aa/C(aa-Y));o=C(o+C(V*g));z[f+88>>2]=o;n=C(n+C(S*g));z[f+84>>2]=n;i=C(i+C(T*g));z[f+80>>2]=i;m=d>>>5&1;g=C(s-o);k=C(g*g);g=C(u-i);l=C(g*g);g=C(x-n);g=C(k+C(l+C(g*g)))}if(!(g>2])){break a}k=C(s-o);y=C(u-i);l=C(x-n);q=C(C(1)/C(K(C(C(k*k)+C(C(y*y)+C(l*l))))));k=C(k*q);z[f+72>>2]=k;l=C(l*q);z[f+68>>2]=l;q=C(y*q);z[f+64>>2]=q;break b}v[f+92>>2]=0;i=C(C(C(D*C(o-s))+C(C(E*C(i-u))+C(F*C(n-x))))/ea);g=C(D*i);o=C(s+g);z[f+88>>2]=o;k=C(F*i);n=C(x+k);z[f+84>>2]=n;l=C(E*i);i=C(u+l);z[f+80>>2]=i;g=C(C(g*g)+C(C(l*l)+C(k*k)));if(!(g>2])){break a}z[f+72>>2]=_;z[f+68>>2]=A;z[f+64>>2]=$;m=1;k=_;l=A;q=$}v[f+76>>2]=0;if(C(C(k*_)+C(C(q*$)+C(A*l)))>C(.9959999918937683)){i=C(K(g));b=v[a+3616>>2];e:{if((b|0)==128){break e}Q=a+2336|0;d=v[e>>2];m=v[e+4>>2];h=d>>>0>>0?d:m;j=d>>>0>m>>>0?d:m;d=h<<16|j;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;p=(((d>>>16^d)&127)+a|0)+3488|0;d=w[p|0];f:{if((d|0)!=255){while(1){d=d&255;p=Q+(d<<3)|0;if((h|0)==v[p>>2]&(j|0)==v[p+4>>2]){break f}p=(a+d|0)+3360|0;d=w[p|0];if((d|0)!=255){continue}break}}t[p|0]=b;t[(a+b|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;d=Q+(b<<3)|0;v[d>>2]=h;v[d+4>>2]=j;m=v[e+4>>2];b=v[a+3616>>2]}if((b|0)==128){break e}h=v[e+8>>2];r=h>>>0>m>>>0?m:h;j=h>>>0>>0?m:h;d=r<<16|j;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;p=(((d>>>16^d)&127)+a|0)+3488|0;d=w[p|0];g:{if((d|0)!=255){while(1){d=d&255;m=Q+(d<<3)|0;if((r|0)==v[m>>2]&(j|0)==v[m+4>>2]){break g}p=(a+d|0)+3360|0;d=w[p|0];if((d|0)!=255){continue}break}}t[p|0]=b;t[(a+b|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;d=Q+(b<<3)|0;v[d>>2]=r;v[d+4>>2]=j;b=v[a+3616>>2];h=v[e+8>>2]}if((b|0)==128){break e}d=v[e>>2];m=d>>>0>h>>>0?h:d;j=d>>>0>>0?h:d;d=m<<16|j;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;e=(((d>>>16^d)&127)+a|0)+3488|0;d=w[e|0];if((d|0)!=255){while(1){d=d&255;e=Q+(d<<3)|0;if((m|0)==v[e>>2]&(j|0)==v[e+4>>2]){break e}e=(a+d|0)+3360|0;d=w[e|0];if((d|0)!=255){continue}break}}t[e|0]=b;t[(a+b|0)+3360|0]=255;b=v[a+3616>>2];v[a+3616>>2]=b+1;d=Q+(b<<3)|0;v[d>>2]=m;v[d+4>>2]=j}z[f+48>>2]=i;b=v[f+60>>2];v[f+8>>2]=v[f+56>>2];v[f+12>>2]=b;b=v[f+52>>2];v[f>>2]=v[f+48>>2];v[f+4>>2]=b;H1(a,f+80|0,f- -64|0,f,c);break a}d=v[a+3620>>2];p=v[d+4360>>2];b=p+15|0;if(b>>>0>(v[d+4364>>2]&2147483647)>>>0){GZ(d,b);d=v[a+3620>>2];p=v[d+4360>>2]}v[d+4360>>2]=b;d=v[d+4356>>2];z[f+16>>2]=g;b=v[a+5736>>2];v[f+32>>2]=b;j=d+(p<<2)|0;h:{if(b>>>0>=(v[a+5740>>2]&2147483647)>>>0){b=0;a=a+3680|0;d=v[a+2060>>2];p=d&2147483647?d<<1:1;i:{if(!p){break i}d=p<<5;if(!(w[a+2048|0]|d>>>0>2048)){t[a+2048|0]=1;b=a;break i}if(!d){break i}b=v[37696];h=b+12|0;b=(ga=h,ha=d,ia=Ba[v[v[b>>2]+20>>2]](b)|0?43241:63804,ja=16608,ka=553,fa=v[v[h>>2]+8>>2],Ba[fa](ga|0,ha|0,ia|0,ja|0,ka|0)|0)}d=v[a+2056>>2];if((d|0)>0){Q=(d<<5)+b|0;h=v[a+2052>>2];d=b;while(1){r=v[h+4>>2];v[d>>2]=v[h>>2];v[d+4>>2]=r;r=v[h+28>>2];v[d+24>>2]=v[h+24>>2];v[d+28>>2]=r;r=v[h+20>>2];v[d+16>>2]=v[h+16>>2];v[d+20>>2]=r;r=v[h+12>>2];v[d+8>>2]=v[h+8>>2];v[d+12>>2]=r;h=h+32|0;d=d+32|0;if(Q>>>0>d>>>0){continue}break}d=v[a+2056>>2]}h=v[f+20>>2];d=(d<<5)+b|0;v[d>>2]=v[f+16>>2];v[d+4>>2]=h;h=v[f+44>>2];v[d+24>>2]=v[f+40>>2];v[d+28>>2]=h;h=v[f+36>>2];v[d+16>>2]=v[f+32>>2];v[d+20>>2]=h;h=v[f+28>>2];v[d+8>>2]=v[f+24>>2];v[d+12>>2]=h;j:{if(v[a+2060>>2]<0){break j}d=v[a+2052>>2];if((d|0)==(a|0)){t[a+2048|0]=0;break j}if(!d){break j}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,d)}v[a+2060>>2]=p;v[a+2052>>2]=b;v[a+2056>>2]=v[a+2056>>2]+1;break h}d=v[f+20>>2];b=v[a+5732>>2]+(b<<5)|0;v[b>>2]=v[f+16>>2];v[b+4>>2]=d;d=v[f+44>>2];v[b+24>>2]=v[f+40>>2];v[b+28>>2]=d;d=v[f+36>>2];v[b+16>>2]=v[f+32>>2];v[b+20>>2]=d;d=v[f+28>>2];v[b+8>>2]=v[f+24>>2];v[b+12>>2]=d;v[a+5736>>2]=v[a+5736>>2]+1}t[j+56|0]=m;v[j+52>>2]=0;v[j+48>>2]=c;v[j+36>>2]=v[e>>2];v[j+40>>2]=v[e+4>>2];a=v[e+8>>2];z[j+32>>2]=g;z[j+28>>2]=g;z[j+24>>2]=g;z[j+20>>2]=k;z[j+16>>2]=l;z[j+12>>2]=q;z[j+8>>2]=o;z[j+4>>2]=n;z[j>>2]=i;v[j+44>>2]=a}xa=f+96|0}function yA(a,b){var c=C(0),d=0,e=0,f=0,g=C(0),h=C(0),i=0,j=0,k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=0,za=0,Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=0,Ma=0,Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=0,Xa=0,Ya=0,Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=0,mb=0,nb=0;i=v[a>>2];j=v[a+32>>2];k=v[a+64>>2];l=v[a+96>>2];d=v[a+24>>2];m=x[a+22>>1];Wa=xa-16|0;a=Wa;v[a+8>>2]=2139095039;v[a+12>>2]=2139095039;v[a>>2]=2139095039;v[a+4>>2]=2139095039;X=z[l+24>>2];Y=z[l+20>>2];Z=z[k+24>>2];_=z[k+20>>2];$=z[j+24>>2];aa=z[j+20>>2];ba=z[i+24>>2];ca=z[i+20>>2];db=z[l+28>>2];da=z[l+16>>2];eb=z[l+12>>2];ea=z[l+8>>2];fa=z[l+4>>2];ga=z[l>>2];fb=z[k+28>>2];ha=z[k+16>>2];gb=z[k+12>>2];ia=z[k+8>>2];ja=z[k+4>>2];ka=z[k>>2];hb=z[j+28>>2];la=z[j+16>>2];ib=z[j+12>>2];ma=z[j+8>>2];na=z[j+4>>2];oa=z[j>>2];jb=z[i+28>>2];pa=z[i+16>>2];kb=z[i+12>>2];qa=z[i+8>>2];ra=z[i+4>>2];sa=z[i>>2];if(m){lb=(m<<4)+d|0;Sa=z[d+76>>2];Ta=z[d+72>>2];Ua=z[d+68>>2];Va=z[d+64>>2];La=d+288|0;while(1){a=d;Ma=a+192|0;V=w[a+1|0];d=V<<4;ya=Ma+d|0;K=t[a+3|0]&1;f=d&0-K;d=ya+B(V,96)|0;za=f+d|0;f=w[a+2|0];Xa=za+(((f|0)!=0)<<7)|0;Ya=Xa+(f<<4)|0;mb=B(f,96);Ca=z[a+172>>2];L=z[a+168>>2];M=z[a+164>>2];Da=z[a+156>>2];Ea=z[a+152>>2];N=z[a+148>>2];Fa=z[a+140>>2];Ga=z[a+136>>2];O=z[a+132>>2];Za=z[a+108>>2];_a=z[a+104>>2];$a=z[a+100>>2];Ha=z[a+160>>2];Ia=z[a+144>>2];Ja=z[a+128>>2];ab=z[a+96>>2];a:{if(!V){s=C(0);u=C(0);y=C(0);A=C(0);c=C(0);P=C(0);Q=C(0);R=C(0);break a}nb=K?d:Wa;Aa=C(C(C(sa*Ja)+C(ra*Ia))+C(qa*Ha));E=C(C(C(oa*O)+C(na*N))+C(ma*M));F=C(C(C(ka*Ga)+C(ja*Ea))+C(ia*L));Ba=C(C(C(ga*Fa)+C(fa*Da))+C(ea*Ca));R=C(0);m=0;Q=C(0);P=C(0);c=C(0);A=C(0);y=C(0);u=C(0);s=C(0);while(1){D=((K?m:0)<<4)+nb|0;g=z[D>>2];S=z[D+4>>2];T=z[D+8>>2];e=Ma+(m<<4)|0;n=z[e>>2];d=ya+B(m,96)|0;G=z[d+80>>2];ta=z[d+48>>2];Na=z[d+32>>2];Oa=z[d>>2];Pa=z[d+16>>2];h=z[e+4>>2];H=z[d+84>>2];ua=z[d+52>>2];Qa=z[d+36>>2];q=z[d+4>>2];va=z[d+20>>2];o=z[e+8>>2];I=z[d+88>>2];wa=z[d+56>>2];r=z[d+40>>2];Ra=z[d+8>>2];J=z[d+24>>2];U=z[e+12>>2];p=C(-U);W=z[d+12>>2];bb=z[d+28>>2];cb=z[d+44>>2];Ka=C(z[d+92>>2]-C(C(C(C(Ba+C(da*W))+C(Y*bb))+C(X*cb))*z[d+60>>2]));p=C(U+(p>2];p=p>2]=p;I=C(I-C(wa*C(C(C(F+C(ha*Ra))+C(_*J))+C(Z*r))));wa=C(-o);I=C(o+(I>wa?I:wa));T=T>I?I:T;z[e+8>>2]=T;H=C(H-C(ua*C(C(C(E+C(la*q))+C(aa*va))+C($*Qa))));ua=C(-h);H=C(h+(H>ua?H:ua));S=S>H?H:S;z[e+4>>2]=S;G=C(G-C(ta*C(C(C(Aa+C(pa*Oa))+C(ca*Pa))+C(ba*Na))));ta=C(-n);G=C(n+(G>ta?G:ta));g=g>G?G:g;z[e>>2]=g;R=C(R+p);Q=C(Q+T);P=C(P+S);c=C(c+g);U=C(p-U);A=C(A+U);o=C(T-o);y=C(y+o);h=C(S-h);u=C(u+h);n=C(g-n);s=C(s+n);Ba=C(Ba+C(Sa*U));F=C(F+C(Ta*o));E=C(E+C(Ua*h));Aa=C(Aa+C(Va*n));g=C(Za*U);X=C(X+C(cb*g));o=C(_a*o);Z=C(Z+C(r*o));h=C($a*h);$=C($+C(Qa*h));n=C(ab*n);ba=C(ba+C(Na*n));Y=C(Y+C(bb*g));_=C(_+C(J*o));aa=C(aa+C(va*h));ca=C(ca+C(Pa*n));da=C(da+C(W*g));ha=C(ha+C(Ra*o));la=C(la+C(q*h));pa=C(pa+C(Oa*n));La=La+192|0;m=m+1|0;if((V|0)!=(m|0)){continue}break}}d=Ya+mb|0;A=C(Sa*A);ea=C(ea+C(Ca*A));y=C(Ta*y);ia=C(ia+C(L*y));u=C(Ua*u);ma=C(ma+C(M*u));s=C(Va*s);qa=C(qa+C(Ha*s));fa=C(fa+C(Da*A));ja=C(ja+C(Ea*y));na=C(na+C(N*u));ra=C(ra+C(Ia*s));ga=C(ga+C(Fa*A));ka=C(ka+C(Ga*y));oa=C(oa+C(O*u));sa=C(sa+C(Ja*s));if(!(!w[b|0]|!f)){Na=C(c*z[a+32>>2]);Oa=C(R*z[a+44>>2]);Pa=C(Q*z[a+40>>2]);Qa=C(P*z[a+36>>2]);s=C(c*z[a+48>>2]);u=C(-s);R=C(R*z[a+60>>2]);y=C(-R);Q=C(Q*z[a+56>>2]);A=C(-Q);P=C(P*z[a+52>>2]);Aa=C(-P);Ma=f>>>0>1?f:1;m=0;V=0;D=0;ya=0;K=0;while(1){a=B(m,96)+Ya|0;q=z[a+48>>2];f=(m<<4)+Xa|0;E=z[f>>2];va=z[a+64>>2];e=((m&1)<<4)+za|0;F=z[e+96>>2];Ba=z[e+32>>2];n=z[e- -64>>2];h=z[a+32>>2];o=z[a>>2];Ca=z[a+16>>2];L=z[f+4>>2];r=z[a+52>>2];Ra=z[a+68>>2];M=z[e+100>>2];Da=z[e+36>>2];Ea=z[e+68>>2];N=z[a+36>>2];Fa=z[a+20>>2];Ga=z[a+4>>2];O=z[f+8>>2];J=z[a+56>>2];U=z[a+72>>2];Ha=z[e+104>>2];Ia=z[e+40>>2];Ja=z[e+72>>2];g=z[a+40>>2];S=z[a+24>>2];T=z[a+8>>2];p=z[f+12>>2];G=z[e+44>>2];ta=z[e+76>>2];H=z[e+108>>2];ua=z[a+12>>2];I=z[a+28>>2];wa=z[a+44>>2];c=C(C(p-z[a+60>>2])-C(C(C(C(C(ga*G)+C(fa*ta))+C(ea*H))+C(C(C(da*ua)+C(Y*I))+C(X*wa)))*z[a+76>>2]));W=cC(0)?c:C(-c));W=a?R>2]=W;c=C(C(O-J)-C(U*C(C(C(C(ka*Ia)+C(ja*Ja))+C(ia*Ha))+C(C(C(ha*T)+C(_*S))+C(Z*g)))));J=cC(0)?c:C(-c));J=e?Q>2]=J;c=C(C(L-r)-C(Ra*C(C(C(C(oa*Da)+C(na*Ea))+C(ma*M))+C(C(C(la*Ga)+C(aa*Fa))+C($*N)))));r=cC(0)?c:C(-c));r=D?r>P?P:r:c;z[f+4>>2]=r;K=f;c=C(C(E-q)-C(va*C(C(C(C(sa*Ba)+C(ra*n))+C(qa*F))+C(C(C(pa*o)+C(ca*Ca))+C(ba*h)))));q=cC(0)?c:C(-c));q=f?s>2]=q;va=C(W-p);c=C(Za*va);X=C(X+C(wa*c));p=g;g=C(J-O);O=C(_a*g);Z=C(Z+C(p*O));r=C(r-L);L=C($a*r);$=C($+C(N*L));q=C(q-E);E=C(ab*q);ba=C(ba+C(h*E));h=C(Sa*va);ea=C(ea+C(H*h));N=C(Ta*g);ia=C(ia+C(Ha*N));g=M;M=C(Ua*r);ma=C(ma+C(g*M));g=F;F=C(Va*q);qa=C(qa+C(g*F));Y=C(Y+C(I*c));_=C(_+C(S*O));aa=C(aa+C(Fa*L));ca=C(ca+C(Ca*E));fa=C(fa+C(ta*h));ja=C(ja+C(Ja*N));na=C(na+C(Ea*M));ra=C(ra+C(n*F));da=C(da+C(ua*c));ha=C(ha+C(T*O));la=C(la+C(Ga*L));pa=C(pa+C(o*E));ga=C(ga+C(G*h));ka=C(ka+C(Ia*N));oa=C(oa+C(Da*M));sa=C(sa+C(Ba*F));K=0-a|0;ya=0-e|0;D=0-D|0;V=0-f|0;La=La+192|0;m=m+1|0;if((Ma|0)!=(m|0)){continue}break}v[za+12>>2]=K;v[za+8>>2]=ya;v[za+4>>2]=D;v[za>>2]=V}if(d>>>0>>0){continue}break}}z[i+12>>2]=kb;z[i+8>>2]=qa;z[i+4>>2]=ra;z[i>>2]=sa;z[j+12>>2]=ib;z[j+8>>2]=ma;z[j+4>>2]=na;z[j>>2]=oa;z[k+12>>2]=gb;z[k+8>>2]=ia;z[k+4>>2]=ja;z[k>>2]=ka;z[l+12>>2]=eb;z[l+8>>2]=ea;z[l+4>>2]=fa;z[l>>2]=ga;z[i+28>>2]=jb;z[i+24>>2]=ba;z[i+20>>2]=ca;z[i+16>>2]=pa;z[j+28>>2]=hb;z[j+24>>2]=$;z[j+20>>2]=aa;z[j+16>>2]=la;z[k+28>>2]=fb;z[k+24>>2]=Z;z[k+20>>2]=_;z[k+16>>2]=ha;z[l+28>>2]=db;z[l+24>>2]=X;z[l+20>>2]=Y;z[l+16>>2]=da}function QQ(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=C(0);h=v[a+20>>2];m=xa-2048|0;xa=m;e=v[a+28>>2];a=v[v[e+976>>2]+1816>>2];t[a+20|0]=0;c=v[e+1140>>2];t[c+16|0]=0;d=v[e+1012>>2];Ba[v[v[d>>2]+76>>2]](d,a,c,h);a=v[e+2704>>2];f=v[e+1e3>>2];i=v[f+432>>2];if(a>>>0>>0){l=v[e+980>>2]+160|0;g=v[f+428>>2];while(1){c=v[(v[f+184>>2]+B(v[g+(a<<2)>>2]>>>7|0,24)|0)+20>>2];j=c-20|0;d=v[j>>2];b=v[c+36>>2];z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];z[b+12>>2]=z[c+12>>2];z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];z[b+24>>2]=z[c+24>>2];k=c+-64|0;fH(k,l);j=w[v[j>>2]+9|0];b=v[e+1012>>2];v[m+1024>>2]=v[c+80>>2];Ba[v[v[b>>2]+44>>2]](b,(j|0)==2,m+1024|0);b=x[c+28>>1];if(b&2){uH(k,v[e+980>>2]+160|0);b=x[c+28>>1]}v[d+104>>2]=0;v[d+96>>2]=0;v[d+100>>2]=0;v[d+88>>2]=0;v[d+80>>2]=0;v[d+84>>2]=0;v[d+156>>2]=0;u[c+28>>1]=b&1;a=a+1|0;if((i|0)!=(a|0)){continue}break}}a:{if(!v[e+1172>>2]){break a}d=v[v[e+976>>2]+1156>>2];b=0;while(1){a=wr(d,40);c=v[e+1172>>2];f=v[e+1168>>2];i=v[e+16>>2];l=v[e+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=i;v[a+12>>2]=l;v[a>>2]=135396;v[a+20>>2]=h;v[a+24>>2]=1;v[a+28>>2]=f+(b<<2);c=c-b|0;v[a+32>>2]=c>>>0<256?c:256;if(h){Ba[v[v[h>>2]+16>>2]](h);v[a+16>>2]=v[v[a+20>>2]+16>>2];c=v[a>>2]}else{c=135396}Ba[v[c+20>>2]](a);a=v[e+1172>>2];b=b+256|0;if(a>>>0>b>>>0){continue}break}if(!a){break a}c=v[e+980>>2];d=0;while(1){b=v[v[e+1168>>2]+(d<<2)>>2];b:{if(t[b+92|0]&1){break b}f=v[b+32>>2];if(!f){break b}while(1){i=v[f+8>>2];if((i|0)<0){l=i&2147483647;b=l+32>>>5|0;c:{if(b>>>0<=(v[c+164>>2]&2147483647)>>>0){a=v[c+160>>2];break c}a=v[c+168>>2];a=Ba[v[v[a>>2]+8>>2]](a,b<<2,17999,438)|0;g=v[c+160>>2];d:{if(!g){break d}I9(a,g,v[c+164>>2]<<2);if(v[c+164>>2]<0){break d}g=v[c+160>>2];if(!g){break d}j=v[c+168>>2];Ba[v[v[j>>2]+12>>2]](j,g)}g=v[c+164>>2];J9((g<<2)+a|0,0,b-g<<2);v[c+164>>2]=b;v[c+160>>2]=a}a=(l>>>3&268435452)+a|0;v[a>>2]=v[a>>2]|1<>2];if(f){continue}break}a=v[e+1172>>2]}d=d+1|0;if(d>>>0>>0){continue}break}if(!a){break a}d=0;b=0;while(1){c=a-b|0;i=c>>>0<256?c:256;e:{if(!i){break e}a=a+d|0;a=a>>>0<256?a:256;l=a&1;c=v[e+1168>>2];f=0;if((a|0)!=1){g=a&510;a=0;while(1){j=f<<2;k=m+1024|0;o=c+(b+f<<2)|0;v[j+k>>2]=v[o>>2]- -64;v[j+m>>2]=v[v[o>>2]+144>>2]>>>7;n=k;j=f|1;k=j<<2;j=c+(b+j<<2)|0;v[n+k>>2]=v[j>>2]- -64;v[k+m>>2]=v[v[j>>2]+144>>2]>>>7;f=f+2|0;a=a+2|0;if((g|0)!=(a|0)){continue}break}}if(!l){break e}a=f<<2;c=c+(b+f<<2)|0;v[a+(m+1024|0)>>2]=v[c>>2]- -64;v[a+m>>2]=v[v[c>>2]+144>>2]>>>7}a=v[e+1012>>2];Ba[v[v[a>>2]+28>>2]](a,m+1024|0,m,i);d=d-256|0;a=v[e+1172>>2];b=b+256|0;if(a>>>0>b>>>0){continue}break}}a=0;c=0;d=0;l=xa-16|0;xa=l;f=v[e+36>>2];f:{if(!f){break f}i=v[e+24>>2];g=v[v[e+976>>2]+1156>>2];g:{if(!h){while(1){d=v[v[v[i+(a<<2)>>2]>>2]+36>>2]+d|0;h:{if(d>>>0<=1023){a=a+1|0;break h}b=wr(g,48);j=v[v[e+976>>2]+1816>>2];k=v[e+1140>>2];o=v[e+16>>2];q=v[e+20>>2];d=0;v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=o;v[b+12>>2]=q;v[b+40>>2]=k;v[b+36>>2]=j;a=a+1|0;v[b+32>>2]=a-c;v[b+28>>2]=i+(c<<2);v[b>>2]=135060;v[b+24>>2]=1;c=v[b+16>>2];Ba[v[v[c>>2]+72>>2]](c,b);c=a}if((a|0)!=(f|0)){continue}break}break g}while(1){d=v[v[v[i+(a<<2)>>2]>>2]+36>>2]+d|0;i:{if(d>>>0<=1023){a=a+1|0;break i}b=wr(g,48);j=v[v[e+976>>2]+1816>>2];k=v[e+1140>>2];o=v[e+16>>2];q=v[e+20>>2];d=0;v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=o;v[b+12>>2]=q;v[b+40>>2]=k;v[b+36>>2]=j;a=a+1|0;v[b+32>>2]=a-c;v[b+28>>2]=i+(c<<2);v[b>>2]=135060;v[b+20>>2]=h;v[b+24>>2]=1;Ba[v[v[h>>2]+16>>2]](h);v[b+16>>2]=v[v[b+20>>2]+16>>2];Ba[v[v[b>>2]+20>>2]](b);c=a}if((a|0)!=(f|0)){continue}break}}if(d){a=wr(g,48);d=v[v[e+976>>2]+1816>>2];b=v[e+1140>>2];g=v[e+16>>2];j=v[e+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=g;v[a+12>>2]=j;v[a+40>>2]=b;v[a+36>>2]=d;v[a+32>>2]=f-c;v[a+28>>2]=i+(c<<2);v[a>>2]=135060;v[a+20>>2]=h;v[a+24>>2]=1;if(h){Ba[v[v[h>>2]+16>>2]](h);v[a+16>>2]=v[v[a+20>>2]+16>>2];c=v[a>>2]}else{c=135060}Ba[v[c+20>>2]](a)}if(!f){break f}b=v[e+980>>2];t[v[v[e+976>>2]+1816>>2]+20|0]=1;t[v[e+1140>>2]+16|0]=1;c=0;while(1){a=v[v[i+(c<<2)>>2]>>2];d=v[a+32>>2];if(d){while(1){if(w[v[d+28>>2]- -64|0]&5){g=v[d+8>>2];j=v[b+160>>2]+(g>>>3&268435452)|0;v[j>>2]=v[j>>2]|1<>2];if(d){continue}break}}d=v[e+1012>>2];v[l+8>>2]=v[a+144>>2];Ba[v[v[d>>2]+44>>2]](d,0,l+8|0);c=c+1|0;if((f|0)!=(c|0)){continue}break}}xa=l+16|0;l=v[e+1e3>>2];c=v[l+296>>2];if(c){f=l+168|0;j=v[l+292>>2];i=v[v[e+976>>2]+1156>>2];b=0;while(1){a=wr(i,48);s=z[e+1080>>2];d=v[e+16>>2];g=v[e+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=d;v[a+12>>2]=g;z[a+40>>2]=s;d=c-b|0;v[a+36>>2]=d>>>0<64?d:64;v[a+32>>2]=j+(b<<2);v[a+28>>2]=f;v[a>>2]=135452;v[a+20>>2]=h;v[a+24>>2]=1;if(h){Ba[v[v[h>>2]+16>>2]](h);v[a+16>>2]=v[v[a+20>>2]+16>>2];k=v[a>>2]}else{k=135452}Ba[v[k+20>>2]](a);b=b- -64|0;if(c>>>0>b>>>0){continue}break}o=c>>>0>1?c:1;q=e+1156|0;h=v[e+980>>2];c=0;while(1){f=0;d=0;k=0;a=0;i=v[v[(v[l+184>>2]+B(v[j+(c<<2)>>2]>>>7|0,24)|0)+20>>2]+16>>2];b=v[i+28>>2];if(b){g=m+1024|0;n=b&1;j:{if((b|0)==1){break j}b=b&-2;while(1){p=d<<2;r=v[p+v[i+24>>2]>>2];if(w[v[r+100>>2]+28|0]&4){v[g+(a<<2)>>2]=r;a=a+1|0}p=v[v[i+24>>2]+(p|4)>>2];if(w[v[p+100>>2]+28|0]&4){v[g+(a<<2)>>2]=p;a=a+1|0}d=d+2|0;k=k+2|0;if((b|0)!=(k|0)){continue}break}}k:{if(!n){break k}d=v[v[i+24>>2]+(d<<2)>>2];if(!(w[v[d+100>>2]+28|0]&4)){break k}v[g+(a<<2)>>2]=d;a=a+1|0}}if(a){while(1){d=(m+1024|0)+(f<<2)|0;b=v[e+1160>>2];l:{if(b>>>0>=(v[e+1164>>2]&2147483647)>>>0){qG(q,d);break l}v[v[e+1156>>2]+(b<<2)>>2]=v[d>>2];v[e+1160>>2]=b+1}f=f+1|0;if((a|0)!=(f|0)){continue}break}}d=0;a=v[i+28>>2];if(a){while(1){b=v[v[v[i+24>>2]+(d<<2)>>2]+32>>2];if(b){while(1){g=v[b+8>>2];if((g|0)<0){k=g&2147483647;f=k+32>>>5|0;m:{if(f>>>0<=(v[h+164>>2]&2147483647)>>>0){a=v[h+160>>2];break m}a=v[h+168>>2];a=Ba[v[v[a>>2]+8>>2]](a,f<<2,17999,438)|0;n=v[h+160>>2];n:{if(!n){break n}I9(a,n,v[h+164>>2]<<2);if(v[h+164>>2]<0){break n}n=v[h+160>>2];if(!n){break n}p=v[h+168>>2];Ba[v[v[p>>2]+12>>2]](p,n)}n=v[h+164>>2];J9((n<<2)+a|0,0,f-n<<2);v[h+164>>2]=f;v[h+160>>2]=a}a=(k>>>3&268435452)+a|0;v[a>>2]=v[a>>2]|1<>2];if(b){continue}break}a=v[i+28>>2]}d=d+1|0;if(d>>>0>>0){continue}break}}c=c+1|0;if((o|0)!=(c|0)){continue}break}}CP(e,0);xa=m+2048|0}function vC(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,k=0,l=0,m=0,n=0,o=0,q=C(0),r=0,s=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=0,H=0,I=0,J=0,K=C(0),L=0,M=0;i=xa-10368|0;xa=i;a=a+16|0;a:{if(!w[a+7632|0]){break a}t[a+7632|0]=0;d=v[a>>2];if(!d){v[a+636>>2]=0;break a}b=d<<2;if(b){g=v[37696];k=Ba[v[v[g+12>>2]+8>>2]](g+12|0,b,24422,7935,1093)|0}m=v[a+12>>2];b=0;h=d-1|0;if(h>>>0>=3){l=d&-4;g=0;while(1){c=m+(b<<3)|0;v[(b<<2)+k>>2]=v[c>>2];v[c>>2]=b;c=b|1;e=m+(c<<3)|0;v[(c<<2)+k>>2]=v[e>>2];v[e>>2]=c;c=b|2;e=m+(c<<3)|0;v[(c<<2)+k>>2]=v[e>>2];v[e>>2]=c;c=b|3;e=m+(c<<3)|0;v[(c<<2)+k>>2]=v[e>>2];v[e>>2]=c;b=b+4|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}g=d&3;if(g){while(1){c=m+(b<<3)|0;v[(b<<2)+k>>2]=v[c>>2];v[c>>2]=b;b=b+1|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}b:{if(d>>>0<=256){g=i+8288|0;m=i+96|0;break b}m=0;g=0;b=d<<3;if(b){g=v[37696];g=Ba[v[v[g+12>>2]+8>>2]](g+12|0,b,24422,7935,1108)|0}b=d<<5;if(!b){break b}f=v[37696];m=Ba[v[v[f+12>>2]+8>>2]](f+12|0,b,24422,7935,1109)|0}c=v[a+8>>2];e=d-1|0;b=c+B(e,24)|0;s=z[b+12>>2];x=z[b+8>>2];y=z[b+4>>2];A=z[b>>2];E=z[b+20>>2];F=z[b+16>>2];if(e){f=0;while(1){b=c+B(f,24)|0;q=z[b+12>>2];s=q>2];x=q>x?x:q;q=z[b+4>>2];y=q>y?y:q;q=z[b>>2];A=q>A?A:q;q=z[b+20>>2];E=q>2];F=q>2];q=C(C(E-x)*C(.5));z[a+680>>2]=q;K=C(C(F-y)*C(.5));z[a+676>>2]=K;z[a+672>>2]=C(s-A)*C(.5);z[a+664>>2]=C(E+x)*C(.5);z[a+660>>2]=C(F+y)*C(.5);z[a+656>>2]=C(s+A)*C(.5);l=C(D(K))>>0>=3){o=d&-4;e=0;while(1){h=l<<2;z[(b<<2)+g>>2]=z[h+(c+B(b,24)|0)>>2];n=b|1;z[(n<<2)+g>>2]=z[h+(c+B(n,24)|0)>>2];n=b|2;z[(n<<2)+g>>2]=z[h+(c+B(n,24)|0)>>2];n=b|3;z[(n<<2)+g>>2]=z[h+(c+B(n,24)|0)>>2];b=b+4|0;e=e+4|0;if((o|0)!=(e|0)){continue}break}}e=d&3;if(e){while(1){z[(b<<2)+g>>2]=z[(c+B(b,24)|0)+(l<<2)>>2];b=b+1|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}o=SU(i);e=v[XU(o,g,d)+8>>2];f=0;while(1){n=v[e>>2];h=c+B(n,24)|0;x=z[h+4>>2];y=z[h+16>>2];A=z[h+8>>2];E=z[h+20>>2];F=z[h>>2];b=(f<<5)+m|0;s=z[h+12>>2];z[b+28>>2]=C(C(0)-s)*C(.5);z[b+16>>2]=C(s-F)*C(.5);z[b+12>>2]=C(s+C(0))*C(.5);z[b>>2]=C(F+s)*C(.5);z[b+24>>2]=C(E-A)*C(.5);z[b+20>>2]=C(y-x)*C(.5);z[b+8>>2]=C(A+E)*C(.5);z[b+4>>2]=C(x+y)*C(.5);h=r+(n<<3)|0;n=v[h+4>>2];b=(f<<3)+g|0;v[b>>2]=v[h>>2];v[b+4>>2]=n;e=e+4|0;f=f+1|0;if((d|0)!=(f|0)){continue}break}TU(o);v[a+644>>2]=l;v[a+636>>2]=d;b=v[a+640>>2];if(!(b>>>0>=d>>>0&d>>>0>=b>>>1>>>0)){b=d|d>>>1;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0;v[a+640>>2]=b;f=v[a+24>>2];if(f){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}f=v[a+20>>2];if(f){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}f=b<<5;if(f){c=v[37696];f=Ba[v[v[c+12>>2]+8>>2]](c+12|0,f,24422,7935,484)|0}else{f=0}v[a+20>>2]=f;b=(b<<3)+15&-16;if(b){f=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,b,24422,7935,485)|0}else{f=0}v[a+24>>2]=f}h=a+688|0;b=v[a+644>>2];kC(h,z[a+656>>2],z[(a+656|0)+((b|0)==1?8:4)>>2],d,m,g,v[a+20>>2],v[a+24>>2],0,b);l=a+912|0;lC(m,g,h,l,v[a+20>>2],v[a+24>>2],v[a+644>>2]);b=v[a+708>>2];lC(m,g,l,a+2032|0,v[a+20>>2]+(b<<5)|0,v[a+24>>2]+(b<<3)|0,v[a+644>>2]);r=a+1136|0;b=v[a+712>>2];lC(m,g,r,a+3152|0,v[a+20>>2]+(b<<5)|0,v[a+24>>2]+(b<<3)|0,v[a+644>>2]);o=a+1360|0;b=v[a+716>>2];lC(m,g,o,a+4272|0,v[a+20>>2]+(b<<5)|0,v[a+24>>2]+(b<<3)|0,v[a+644>>2]);n=a+1584|0;b=v[a+720>>2];lC(m,g,n,a+5392|0,v[a+20>>2]+(b<<5)|0,v[a+24>>2]+(b<<3)|0,v[a+644>>2]);L=a+1808|0;b=v[a+724>>2];lC(m,g,L,a+6512|0,v[a+20>>2]+(b<<5)|0,v[a+24>>2]+(b<<3)|0,v[a+644>>2]);c=d>>>0>1?d:1;J=v[a+20>>2];G=v[a+644>>2]<<2;b=0;while(1){f=J+(b<<5)|0;e=f+G|0;s=z[e>>2];x=z[e+16>>2];e=(p(C(s+x)),j(2));v[f+28>>2]=(e|0)<0?e^-1:e|-2147483648;e=f;f=(p(C(s-x)),j(2));v[e+12>>2]=(f|0)<0?f^-1:f|-2147483648;b=b+1|0;if((c|0)!=(b|0)){continue}break}c:{if(d>>>0<=256){break c}if(m){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,m)}if(!g){break c}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g)}g=v[a+16>>2];m=v[a+12>>2];e=v[a+24>>2];b=0;if(d>>>0>=2){J=c&-2;f=0;while(1){G=e+(b<<3)|0;H=v[G>>2];I=H<<2;d=v[I+k>>2];v[G>>2]=d;v[m+(H<<3)>>2]=d;if(g){v[g+I>>2]=b}G=b|1;H=e+(G<<3)|0;I=v[H>>2];M=I<<2;d=v[M+k>>2];v[H>>2]=d;v[m+(I<<3)>>2]=d;if(g){v[g+M>>2]=G}b=b+2|0;f=f+2|0;if((J|0)!=(f|0)){continue}break}}d:{if(!(c&1)){break d}f=e+(b<<3)|0;c=v[f>>2];e=c<<2;d=v[e+k>>2];v[f>>2]=d;v[m+(c<<3)>>2]=d;if(!g){break d}v[e+g>>2]=b}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,k);v[i+88>>2]=-1089221318;v[i+92>>2]=-1089221318;v[i+80>>2]=1058262330;v[i+84>>2]=-1089221318;b=i- -64|0;v[b>>2]=1058262330;v[b+4>>2]=-1089221318;v[i+56>>2]=1058262330;v[i+60>>2]=-1089221318;v[i+40>>2]=-1089221318;v[i+44>>2]=-1089221318;v[i+32>>2]=1058262330;v[i+36>>2]=1058262330;v[i+16>>2]=1058262330;v[i+20>>2]=-1089221318;v[i+72>>2]=-1089221318;v[i+76>>2]=-1089221318;v[i+48>>2]=-1089221318;v[i+52>>2]=1058262330;v[i+24>>2]=1058262330;v[i+28>>2]=-1089221318;v[i+8>>2]=1058262330;v[i+12>>2]=1058262330;v[i>>2]=1058262330;v[i+4>>2]=1058262330;mC(h);mC(l);mC(r);mC(o);mC(n);mC(L);g=0;while(1){f=0;while(1){m=0;b=(a+B(g,1120)|0)+B(f,224)|0;e:{if((((v[b+2036>>2]+v[b+2032>>2]|0)+v[b+2040>>2]|0)+v[b+2044>>2]|0)+v[b+2048>>2]>>>0<=15){d=b+2248|0;v[d>>2]=1183336072;v[d+4>>2]=1183336072;b=b+2240|0;v[b>>2]=1183336072;v[b+4>>2]=1183336072;break e}while(1){v[i+10364>>2]=i+10336;d=v[i+10364>>2];k=v[d+16>>2]&2147483640|4;c=v[d+12>>2]&2147483640|3;e=v[d+8>>2]&2147483640|2;h=v[d+4>>2]&2147483640|1;d=v[d>>2]&2147483640;l=d>>>0>>0?h:d;r=e>>>0>l>>>0?e:l;o=c>>>0>r>>>0?c:r;n=k>>>0>o>>>0?k:o;k=k>>>0>>0?k:o;c=c>>>0>>0?c:r;e=e>>>0>>0?e:l;d=d>>>0>h>>>0?h:d;h=d>>>0>>0?e:d;l=c>>>0>h>>>0?c:h;r=k>>>0>l>>>0?k:l;o=n>>>0>>0?n:r;k=k>>>0>>0?k:l;c=c>>>0>>0?c:h;e=d>>>0>e>>>0?e:d;h=c>>>0>e>>>0?c:e;l=h>>>0>>0?k:h;d=l>>>0>o>>>0?o:l;r=n>>>0>r>>>0?n:r;l=l>>>0>>0?o:l;o=l>>>0>r>>>0?r:l;h=h>>>0>k>>>0?k:h;c=c>>>0>>0?c:e;e=c>>>0>>0?h:c;n=d>>>0>e>>>0?d:e;k=n>>>0>>0?o:n;e=(n>>>0>o>>>0?o:n)<<6&448|((d>>>0>>0?d:e)<<3&56|(c>>>0>h>>>0?h:c)&7);d=l>>>0>>0?r:l;u[(b+(m<<1)|0)+2240>>1]=e|(d>>>0>>0?d:k)<<9&3584|(d>>>0>k>>>0?d:k)<<12&28672;m=m+1|0;if((m|0)!=8){continue}break}}f=f+1|0;if((f|0)!=5){continue}break}g=g+1|0;if((g|0)!=5){continue}break}}xa=i+10368|0}function EA(a){var b=C(0),c=C(0),d=C(0),e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=0,za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=0,rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=C(0),Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0),Yb=C(0),Zb=C(0),_b=C(0),$b=C(0),ac=C(0),bc=C(0);e=v[a+100>>2];rb=z[e+28>>2];B=z[e+16>>2];f=v[a+96>>2];D=z[f+24>>2];E=z[f+20>>2];sb=z[e+12>>2];F=z[e+8>>2];G=z[e+4>>2];H=z[e>>2];g=v[a+68>>2];tb=z[g+28>>2];I=z[g+16>>2];h=v[a+64>>2];J=z[h+24>>2];K=z[h+20>>2];ub=z[g+12>>2];L=z[g+8>>2];M=z[g+4>>2];N=z[g>>2];i=v[a+36>>2];vb=z[i+28>>2];O=z[i+16>>2];j=v[a+32>>2];P=z[j+24>>2];Q=z[j+20>>2];wb=z[i+12>>2];R=z[i+8>>2];S=z[i+4>>2];T=z[i>>2];k=v[a+4>>2];U=z[k+24>>2];V=z[k+20>>2];l=v[a>>2];W=z[l+24>>2];X=z[l+20>>2];Y=z[e+24>>2];Z=z[e+20>>2];_=z[g+24>>2];$=z[g+20>>2];aa=z[i+24>>2];ba=z[i+20>>2];xb=z[f+28>>2];ca=z[f+16>>2];yb=z[f+12>>2];da=z[f+8>>2];ea=z[f+4>>2];fa=z[f>>2];zb=z[h+28>>2];ga=z[h+16>>2];Ab=z[h+12>>2];ha=z[h+8>>2];ia=z[h+4>>2];ja=z[h>>2];Bb=z[j+28>>2];ka=z[j+16>>2];Cb=z[j+12>>2];la=z[j+8>>2];ma=z[j+4>>2];na=z[j>>2];Db=z[k+28>>2];oa=z[k+16>>2];Eb=z[l+28>>2];pa=z[l+16>>2];Fb=z[k+12>>2];qa=z[k+8>>2];ra=z[k+4>>2];sa=z[k>>2];Gb=z[l+12>>2];ta=z[l+8>>2];ua=z[l+4>>2];va=z[l>>2];a=v[a+24>>2];ya=v[a+4>>2];if(ya){Hb=z[a+108>>2];Ib=z[a+104>>2];Jb=z[a+100>>2];Kb=z[a+92>>2];Lb=z[a+88>>2];Mb=z[a+84>>2];Nb=z[a+76>>2];Ob=z[a+72>>2];Pb=z[a+68>>2];Qb=z[a+60>>2];Rb=z[a+56>>2];Sb=z[a+52>>2];Tb=z[a+96>>2];Ub=z[a+80>>2];Vb=z[a+64>>2];Wb=z[a+48>>2];a=a+160|0;while(1){c=z[a+212>>2];d=z[a+228>>2];wa=z[a+196>>2];o=z[a+244>>2];Xb=z[a+148>>2];Yb=z[a+180>>2];za=z[a+36>>2];Aa=z[a+20>>2];p=z[a+84>>2];Ba=z[a+52>>2];Ca=z[a+68>>2];q=z[a+308>>2];Da=z[a+276>>2];Ea=z[a+292>>2];r=z[a+356>>2];Fa=z[a+324>>2];Ga=z[a+340>>2];m=z[a+216>>2];n=z[a+232>>2];Zb=z[a+200>>2];s=z[a+248>>2];_b=z[a+152>>2];$b=z[a+184>>2];Ha=z[a+40>>2];Ia=z[a+24>>2];t=z[a+88>>2];Ja=z[a+56>>2];Ka=z[a+72>>2];u=z[a+312>>2];La=z[a+280>>2];Ma=z[a+296>>2];w=z[a+360>>2];Na=z[a+328>>2];Oa=z[a+344>>2];x=z[a+220>>2];b=z[a+236>>2];xa=z[a+204>>2];Pa=z[a+252>>2];ac=z[a+156>>2];bc=z[a+188>>2];Qa=z[a+44>>2];Ra=z[a+28>>2];Sa=z[a+92>>2];Ta=z[a+60>>2];Ua=z[a+76>>2];Va=z[a+316>>2];Wa=z[a+284>>2];Xa=z[a+300>>2];Ya=z[a+364>>2];Za=z[a+332>>2];_a=z[a+348>>2];$a=z[a+4>>2];ab=z[a+8>>2];bb=z[a+12>>2];y=z[a+208>>2];A=z[a+224>>2];cb=z[a+240>>2];db=z[a>>2];eb=z[a+16>>2];fb=z[a+32>>2];gb=z[a+48>>2];hb=z[a+64>>2];ib=z[a+80>>2];jb=z[a+272>>2];kb=z[a+288>>2];lb=z[a+304>>2];mb=z[a+320>>2];nb=z[a+336>>2];ob=z[a+352>>2];pb=C(C(cb*z[a+192>>2])+C(C(C(C(C(C(C(va*db)+C(ua*eb))+C(ta*fb))+C(C(C(pa*gb)+C(X*hb))+C(W*ib)))-C(C(C(C(sa*jb)+C(ra*kb))+C(qa*lb))+C(C(C(oa*mb)+C(V*nb))+C(U*ob))))*z[a+176>>2])+z[a+144>>2]));A=AA?y:A;z[a+240>>2]=y;xa=C(C(Pa*xa)+C(ac+C(bc*C(C(C(C(C(fa*bb)+C(ea*Ra))+C(da*Qa))+C(C(C(ca*Ta)+C(E*Ua))+C(D*Sa)))-C(C(C(C(H*Wa)+C(G*Xa))+C(F*Va))+C(C(C(B*Za)+C(Z*_a))+C(Y*Ya)))))));b=b>2]=x;b=C(C(s*Zb)+C(_b+C($b*C(C(C(C(C(ja*ab)+C(ia*Ia))+C(ha*Ha))+C(C(C(ga*Ja)+C(K*Ka))+C(J*t)))-C(C(C(C(N*La)+C(M*Ma))+C(L*u))+C(C(C(I*Na)+C($*Oa))+C(_*w)))))));n=nn?m:n;z[a+248>>2]=b;m=C(C(o*wa)+C(Xb+C(Yb*C(C(C(C(C(na*$a)+C(ma*Aa))+C(la*za))+C(C(C(ka*Ba)+C(Q*Ca))+C(P*p)))-C(C(C(C(T*Da)+C(S*Ea))+C(R*q))+C(C(C(O*Fa)+C(ba*Ga))+C(aa*r)))))));d=dd?c:d;z[a+244>>2]=wa;c=C(y-cb);d=C(Tb*c);U=C(U-C(ob*d));m=C(Ub*c);W=C(W+C(ib*m));n=C(Vb*c);qa=C(qa-C(lb*n));c=C(Wb*c);ta=C(ta+C(fb*c));V=C(V-C(nb*d));X=C(X+C(hb*m));ra=C(ra-C(kb*n));ua=C(ua+C(eb*c));oa=C(oa-C(mb*d));pa=C(pa+C(gb*m));sa=C(sa-C(jb*n));va=C(va+C(db*c));c=C(x-Pa);m=C(Hb*c);Y=C(Y-C(Ya*m));d=C(b-s);n=C(Ib*d);_=C(_-C(w*n));b=r;o=C(wa-o);r=C(Jb*o);aa=C(aa-C(b*r));s=C(Kb*c);D=C(D+C(Sa*s));b=t;t=C(Lb*d);J=C(J+C(b*t));b=p;p=C(Mb*o);P=C(P+C(b*p));w=C(Nb*c);F=C(F-C(Va*w));b=u;u=C(Ob*d);L=C(L-C(b*u));b=q;q=C(Pb*o);R=C(R-C(b*q));c=C(Qb*c);da=C(da+C(Qa*c));d=C(Rb*d);ha=C(ha+C(Ha*d));o=C(Sb*o);la=C(la+C(za*o));Z=C(Z-C(_a*m));$=C($-C(Oa*n));ba=C(ba-C(Ga*r));E=C(E+C(Ua*s));K=C(K+C(Ka*t));Q=C(Q+C(Ca*p));G=C(G-C(Xa*w));M=C(M-C(Ma*u));S=C(S-C(Ea*q));ea=C(ea+C(Ra*c));ia=C(ia+C(Ia*d));ma=C(ma+C(Aa*o));B=C(B-C(Za*m));I=C(I-C(Na*n));O=C(O-C(Fa*r));ca=C(ca+C(Ta*s));ga=C(ga+C(Ja*t));ka=C(ka+C(Ba*p));H=C(H-C(Wa*w));N=C(N-C(La*u));T=C(T-C(Da*q));fa=C(fa+C(bb*c));ja=C(ja+C(ab*d));na=C(na+C($a*o));a=a+368|0;qb=qb+1|0;if((ya|0)!=(qb|0)){continue}break}}z[l+12>>2]=Gb;z[l+8>>2]=ta;z[l+4>>2]=ua;z[l>>2]=va;z[j+12>>2]=Cb;z[j+8>>2]=la;z[j+4>>2]=ma;z[j>>2]=na;z[h+12>>2]=Ab;z[h+8>>2]=ha;z[h+4>>2]=ia;z[h>>2]=ja;z[f+12>>2]=yb;z[f+8>>2]=da;z[f+4>>2]=ea;z[f>>2]=fa;z[k+12>>2]=Fb;z[k+8>>2]=qa;z[k+4>>2]=ra;z[k>>2]=sa;z[i+12>>2]=wb;z[i+8>>2]=R;z[i+4>>2]=S;z[i>>2]=T;z[g+12>>2]=ub;z[g+8>>2]=L;z[g+4>>2]=M;z[g>>2]=N;z[e+12>>2]=sb;z[e+8>>2]=F;z[e+4>>2]=G;z[e>>2]=H;z[l+28>>2]=Eb;z[l+24>>2]=W;z[l+20>>2]=X;z[l+16>>2]=pa;z[j+28>>2]=Bb;z[j+24>>2]=P;z[j+20>>2]=Q;z[j+16>>2]=ka;z[h+28>>2]=zb;z[h+24>>2]=J;z[h+20>>2]=K;z[h+16>>2]=ga;z[f+28>>2]=xb;z[f+24>>2]=D;z[f+20>>2]=E;z[f+16>>2]=ca;z[k+28>>2]=Db;z[k+24>>2]=U;z[k+20>>2]=V;z[k+16>>2]=oa;z[i+28>>2]=vb;z[i+24>>2]=aa;z[i+20>>2]=ba;z[i+16>>2]=O;z[g+28>>2]=tb;z[g+24>>2]=_;z[g+20>>2]=$;z[g+16>>2]=I;z[e+28>>2]=rb;z[e+24>>2]=Y;z[e+20>>2]=Z;z[e+16>>2]=B}function DJ(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=C(0),n=0,o=0;b=xa-2768|0;xa=b;J9(b+2560|0,0,140);t[b+2556|0]=0;t[b+2532|0]=0;t[b+2508|0]=0;t[b+2484|0]=0;t[b+2460|0]=0;t[b+2436|0]=0;t[b+2412|0]=0;t[b+2388|0]=0;t[b+2364|0]=0;t[b+2340|0]=0;t[b+2316|0]=0;t[b+2292|0]=0;t[b+2268|0]=0;t[b+2244|0]=0;t[b+2220|0]=0;t[b+2196|0]=0;t[b+2172|0]=0;t[b+2148|0]=0;t[b+2124|0]=0;t[b+2100|0]=0;t[b+2076|0]=0;t[b+2052|0]=0;t[b+2028|0]=0;t[b+2004|0]=0;t[b+1980|0]=0;t[b+1956|0]=0;t[b+1932|0]=0;t[b+1908|0]=0;t[b+1884|0]=0;t[b+1860|0]=0;t[b+1836|0]=0;t[b+1812|0]=0;t[b+1788|0]=0;t[b+1764|0]=0;t[b+1740|0]=0;t[b+1716|0]=0;t[b+1692|0]=0;t[b+1668|0]=0;t[b+1644|0]=0;t[b+1620|0]=0;t[b+1596|0]=0;t[b+1572|0]=0;t[b+1548|0]=0;t[b+1524|0]=0;t[b+1500|0]=0;t[b+1476|0]=0;t[b+1452|0]=0;t[b+1428|0]=0;t[b+1404|0]=0;t[b+1380|0]=0;t[b+1356|0]=0;t[b+1332|0]=0;t[b+1308|0]=0;t[b+1284|0]=0;t[b+1260|0]=0;t[b+1236|0]=0;t[b+1212|0]=0;t[b+1188|0]=0;t[b+1164|0]=0;t[b+1140|0]=0;t[b+1116|0]=0;t[b+1092|0]=0;t[b+1068|0]=0;t[b+1044|0]=0;u[b+276>>1]=65535;u[b+288>>1]=65535;u[b+300>>1]=65535;u[b+312>>1]=65535;u[b+324>>1]=65535;u[b+336>>1]=65535;u[b+348>>1]=65535;u[b+360>>1]=65535;u[b+264>>1]=65535;v[b+256>>2]=-1;v[b+260>>2]=-1;v[b+268>>2]=-1;v[b+272>>2]=-1;v[b+280>>2]=-1;v[b+284>>2]=-1;v[b+292>>2]=-1;v[b+296>>2]=-1;v[b+304>>2]=-1;v[b+308>>2]=-1;v[b+316>>2]=-1;v[b+320>>2]=-1;v[b+328>>2]=-1;v[b+332>>2]=-1;v[b+340>>2]=-1;v[b+344>>2]=-1;v[b+352>>2]=-1;v[b+356>>2]=-1;u[b+372>>1]=65535;u[b+384>>1]=65535;u[b+396>>1]=65535;u[b+408>>1]=65535;u[b+420>>1]=65535;u[b+432>>1]=65535;u[b+444>>1]=65535;u[b+456>>1]=65535;u[b+468>>1]=65535;v[b+364>>2]=-1;v[b+368>>2]=-1;v[b+376>>2]=-1;v[b+380>>2]=-1;v[b+388>>2]=-1;v[b+392>>2]=-1;v[b+400>>2]=-1;v[b+404>>2]=-1;v[b+412>>2]=-1;v[b+416>>2]=-1;v[b+424>>2]=-1;v[b+428>>2]=-1;v[b+436>>2]=-1;v[b+440>>2]=-1;v[b+448>>2]=-1;v[b+452>>2]=-1;v[b+460>>2]=-1;v[b+464>>2]=-1;u[b+480>>1]=65535;u[b+492>>1]=65535;u[b+504>>1]=65535;u[b+516>>1]=65535;u[b+528>>1]=65535;u[b+540>>1]=65535;u[b+552>>1]=65535;u[b+564>>1]=65535;u[b+576>>1]=65535;v[b+472>>2]=-1;v[b+476>>2]=-1;v[b+484>>2]=-1;v[b+488>>2]=-1;v[b+496>>2]=-1;v[b+500>>2]=-1;v[b+508>>2]=-1;v[b+512>>2]=-1;v[b+520>>2]=-1;v[b+524>>2]=-1;v[b+532>>2]=-1;v[b+536>>2]=-1;v[b+544>>2]=-1;v[b+548>>2]=-1;v[b+556>>2]=-1;v[b+560>>2]=-1;v[b+568>>2]=-1;v[b+572>>2]=-1;u[b+588>>1]=65535;v[b+580>>2]=-1;v[b+584>>2]=-1;u[b+600>>1]=65535;v[b+592>>2]=-1;v[b+596>>2]=-1;u[b+612>>1]=65535;v[b+604>>2]=-1;v[b+608>>2]=-1;u[b+624>>1]=65535;v[b+616>>2]=-1;v[b+620>>2]=-1;u[b+636>>1]=65535;v[b+628>>2]=-1;v[b+632>>2]=-1;u[b+648>>1]=65535;v[b+640>>2]=-1;v[b+644>>2]=-1;u[b+660>>1]=65535;v[b+652>>2]=-1;v[b+656>>2]=-1;u[b+672>>1]=65535;v[b+664>>2]=-1;v[b+668>>2]=-1;u[b+684>>1]=65535;v[b+676>>2]=-1;v[b+680>>2]=-1;u[b+696>>1]=65535;v[b+688>>2]=-1;v[b+692>>2]=-1;u[b+708>>1]=65535;v[b+700>>2]=-1;v[b+704>>2]=-1;u[b+720>>1]=65535;v[b+712>>2]=-1;v[b+716>>2]=-1;u[b+732>>1]=65535;v[b+724>>2]=-1;v[b+728>>2]=-1;u[b+744>>1]=65535;v[b+736>>2]=-1;v[b+740>>2]=-1;u[b+756>>1]=65535;v[b+748>>2]=-1;v[b+752>>2]=-1;u[b+768>>1]=65535;v[b+760>>2]=-1;v[b+764>>2]=-1;u[b+780>>1]=65535;v[b+772>>2]=-1;v[b+776>>2]=-1;u[b+792>>1]=65535;v[b+784>>2]=-1;v[b+788>>2]=-1;u[b+804>>1]=65535;v[b+796>>2]=-1;v[b+800>>2]=-1;u[b+816>>1]=65535;v[b+808>>2]=-1;v[b+812>>2]=-1;u[b+828>>1]=65535;v[b+820>>2]=-1;v[b+824>>2]=-1;u[b+840>>1]=65535;v[b+832>>2]=-1;v[b+836>>2]=-1;u[b+852>>1]=65535;v[b+844>>2]=-1;v[b+848>>2]=-1;u[b+864>>1]=65535;v[b+856>>2]=-1;v[b+860>>2]=-1;u[b+876>>1]=65535;v[b+868>>2]=-1;v[b+872>>2]=-1;u[b+888>>1]=65535;v[b+880>>2]=-1;v[b+884>>2]=-1;u[b+900>>1]=65535;v[b+892>>2]=-1;v[b+896>>2]=-1;u[b+912>>1]=65535;v[b+904>>2]=-1;v[b+908>>2]=-1;u[b+924>>1]=65535;v[b+916>>2]=-1;v[b+920>>2]=-1;u[b+936>>1]=65535;v[b+928>>2]=-1;v[b+932>>2]=-1;u[b+948>>1]=65535;v[b+940>>2]=-1;v[b+944>>2]=-1;u[b+960>>1]=65535;v[b+952>>2]=-1;v[b+956>>2]=-1;u[b+972>>1]=65535;v[b+964>>2]=-1;v[b+968>>2]=-1;u[b+984>>1]=65535;v[b+976>>2]=-1;v[b+980>>2]=-1;u[b+996>>1]=65535;v[b+988>>2]=-1;v[b+992>>2]=-1;u[b+1008>>1]=65535;v[b+1e3>>2]=-1;v[b+1004>>2]=-1;u[b+1020>>1]=65535;v[b+1012>>2]=-1;v[b+1016>>2]=-1;a:{if(!v[a+32>>2]){break a}while(1){d=v[v[a+28>>2]+(l<<2)>>2];d=d?d-4|0:0;j=x[d+56>>1];c=v[d+28>>2];f=v[v[c+28>>2]+68>>2];e=v[d+32>>2];g=v[v[e+28>>2]+68>>2];k=((b+2560|0)+B(f,28)|0)+(g<<2)|0;v[k>>2]=v[k>>2]+1;g=(f|0)>(g|0);f=g?e:c;g=g?c:e;k=v[(B(v[v[f+28>>2]+68>>2],28)+141264|0)+(v[v[g+28>>2]+68>>2]<<2)>>2];n=b+2736|0;ZR(f,n);o=b+2704|0;ZR(g,o);f=Ba[k|0](v[f+28>>2]+68|0,n,v[g+28>>2]+68|0,o,d+40|0)|0;g=w[d+58|0];t[d+58|0]=f;g=g?f?0:16:f?4:0;k=g&j;if(k){f=(b+1024|0)+B(h,24)|0;v[f>>2]=v[37419]+v[c+28>>2];j=v[37419]+v[e+28>>2]|0;t[f+20|0]=0;v[f+16>>2]=g;v[f+8>>2]=j;g=v[v[e+4>>2]+44>>2];j=v[v[c+4>>2]+44>>2];v[f+4>>2]=v[((w[j+9|0]<<2)+149664|0)+40>>2]+j;v[f+12>>2]=g+v[((w[g+9|0]<<2)+149664|0)+40>>2];f=w[j+7|0];j=v[c+32>>2];e=v[e+32>>2];c=(b+256|0)+B(h,12)|0;t[c+9|0]=w[g+7|0];t[c+8|0]=f;v[c+4>>2]=e;v[c>>2]=j}c=(k|0)!=0;e=x[d+56>>1];b:{if(!(e&32)){break b}u[d+56>>1]=e&65503;if(rS(d)){break b}t[d+25|0]=w[d+25|0]&223;v[(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=v[a+48>>2];e=v[c+1188>>2]&2147483647;f=v[c+1184>>2];g=f+h|0;m=C(C(g>>>0)*C(1.5));c:{if(m=C(0)){d=~~m>>>0;break c}d=0}if(e>>>0>>0){hP(c+1180|0,d)}v[c+1184>>2]=g;v[b+2736>>2]=v[c+1180>>2]+B(f,24);e=v[c+1192>>2];if(d>>>0>(v[e+8>>2]&2147483647)>>>0){iP(e,d);e=v[c+1192>>2]}v[e+4>>2]=g;v[b+2704>>2]=v[e>>2]+B(f,12);I9(v[b+2736>>2],b+1024|0,B(h,24));I9(v[b+2704>>2],b+256|0,B(h,12))}if(!i){break a}h=v[a+44>>2];d=v[h>>2]+i|0;v[h>>2]=d;c=v[a+40>>2]+(d<<2)|0;d=i<<2;I9(c-d|0,b,d)}a=v[v[a+48>>2]+2352>>2];i=0;while(1){d=B(i,28);h=d+(b+2560|0)|0;c=v[h>>2];if(c){e=a+d|0;v[e+16>>2]=c+v[e+16>>2]}c=v[h+4>>2];if(c){e=a+d|0;v[e+20>>2]=c+v[e+20>>2]}c=v[h+8>>2];if(c){e=a+d|0;v[e+24>>2]=c+v[e+24>>2]}c=v[h+12>>2];if(c){e=a+d|0;v[e+28>>2]=c+v[e+28>>2]}c=v[h+16>>2];if(c){e=a+d|0;v[e+32>>2]=c+v[e+32>>2]}c=v[h+20>>2];if(c){e=a+d|0;v[e+36>>2]=c+v[e+36>>2]}h=v[h+24>>2];if(h){d=a+d|0;v[d+40>>2]=h+v[d+40>>2]}i=i+1|0;if((i|0)!=5){continue}break}xa=b+2768|0}function ox(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,u=0,y=0,z=0;o=32;c=xa-48|0;xa=c;t[c+12|0]=0;j=c-128|0;xa=j;v[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){b=m;m=b+1|0;i=m;e=b;while(1){g=(i<<5)+a|0;k=x[g+8>>1];d=(e<<5)+a|0;f=x[d+8>>1];e=(((k|0)==65535?x[g+10>>1]:k)&65535)>>>0<(((f|0)==65535?x[d+10>>1]:f)&65535)>>>0?i:e;d=(i|0)<(l|0);i=i+1|0;if(d){continue}break}if((b|0)!=(e|0)){d=(e<<5)+a|0;e=v[d+28>>2];v[c+40>>2]=v[d+24>>2];v[c+44>>2]=e;e=v[d+20>>2];v[c+32>>2]=v[d+16>>2];v[c+36>>2]=e;e=v[d+12>>2];v[c+24>>2]=v[d+8>>2];v[c+28>>2]=e;e=v[d+4>>2];v[c+16>>2]=v[d>>2];v[c+20>>2]=e;e=(b<<5)+a|0;b=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=b;b=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=b;b=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=b;b=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b}if((l|0)!=(m|0)){continue}break b}}f=((l+m|0)/2<<5)+a|0;b=x[f+8>>1];g=(m<<5)+a|0;e=x[g+10>>1];k=x[g+8>>1];if((((b|0)==65535?x[f+10>>1]:b)&65535)>>>0<(((k|0)==65535?e:k)&65535)>>>0){b=v[g+28>>2];v[c+40>>2]=v[g+24>>2];v[c+44>>2]=b;b=v[g+20>>2];v[c+32>>2]=v[g+16>>2];v[c+36>>2]=b;b=v[g+12>>2];v[c+24>>2]=v[g+8>>2];v[c+28>>2]=b;b=v[g+4>>2];v[c+16>>2]=v[g>>2];v[c+20>>2]=b;b=v[f+28>>2];v[g+24>>2]=v[f+24>>2];v[g+28>>2]=b;b=v[f+20>>2];v[g+16>>2]=v[f+16>>2];v[g+20>>2]=b;b=v[f+12>>2];v[g+8>>2]=v[f+8>>2];v[g+12>>2]=b;b=v[f+4>>2];v[g>>2]=v[f>>2];v[g+4>>2]=b;b=v[c+44>>2];v[f+24>>2]=v[c+40>>2];v[f+28>>2]=b;b=v[c+36>>2];v[f+16>>2]=v[c+32>>2];v[f+20>>2]=b;b=v[c+28>>2];v[f+8>>2]=v[c+24>>2];v[f+12>>2]=b;b=v[c+20>>2];v[f>>2]=v[c+16>>2];v[f+4>>2]=b;k=x[g+8>>1];e=x[g+10>>1]}d=(l<<5)+a|0;b=x[d+10>>1];i=x[d+8>>1];if((((i|0)==65535?b:i)&65535)>>>0<(((k&65535)==65535?e:k)&65535)>>>0){b=v[g+28>>2];v[c+40>>2]=v[g+24>>2];v[c+44>>2]=b;b=v[g+20>>2];v[c+32>>2]=v[g+16>>2];v[c+36>>2]=b;b=v[g+12>>2];v[c+24>>2]=v[g+8>>2];v[c+28>>2]=b;b=v[g+4>>2];v[c+16>>2]=v[g>>2];v[c+20>>2]=b;b=v[d+28>>2];v[g+24>>2]=v[d+24>>2];v[g+28>>2]=b;b=v[d+20>>2];v[g+16>>2]=v[d+16>>2];v[g+20>>2]=b;b=v[d+12>>2];v[g+8>>2]=v[d+8>>2];v[g+12>>2]=b;b=v[d+4>>2];v[g>>2]=v[d>>2];v[g+4>>2]=b;b=v[c+44>>2];v[d+24>>2]=v[c+40>>2];v[d+28>>2]=b;b=v[c+36>>2];v[d+16>>2]=v[c+32>>2];v[d+20>>2]=b;b=v[c+28>>2];v[d+8>>2]=v[c+24>>2];v[d+12>>2]=b;b=v[c+20>>2];v[d>>2]=v[c+16>>2];v[d+4>>2]=b;i=x[d+8>>1];e=x[d+10>>1]}else{e=b}b=x[f+8>>1];if((((i|0)==65535?e:i)&65535)>>>0<(((b|0)==65535?x[f+10>>1]:b)&65535)>>>0){b=v[f+28>>2];v[c+40>>2]=v[f+24>>2];v[c+44>>2]=b;b=v[f+20>>2];v[c+32>>2]=v[f+16>>2];v[c+36>>2]=b;b=v[f+12>>2];v[c+24>>2]=v[f+8>>2];v[c+28>>2]=b;b=v[f+4>>2];v[c+16>>2]=v[f>>2];v[c+20>>2]=b;b=v[d+28>>2];v[f+24>>2]=v[d+24>>2];v[f+28>>2]=b;b=v[d+20>>2];v[f+16>>2]=v[d+16>>2];v[f+20>>2]=b;b=v[d+12>>2];v[f+8>>2]=v[d+8>>2];v[f+12>>2]=b;b=v[d+4>>2];v[f>>2]=v[d>>2];v[f+4>>2]=b;b=v[c+44>>2];v[d+24>>2]=v[c+40>>2];v[d+28>>2]=b;b=v[c+36>>2];v[d+16>>2]=v[c+32>>2];v[d+20>>2]=b;b=v[c+28>>2];v[d+8>>2]=v[c+24>>2];v[d+12>>2]=b;b=v[c+20>>2];v[d>>2]=v[c+16>>2];v[d+4>>2]=b}b=v[f+28>>2];v[c+40>>2]=v[f+24>>2];v[c+44>>2]=b;b=v[f+20>>2];v[c+32>>2]=v[f+16>>2];v[c+36>>2]=b;b=v[f+12>>2];v[c+24>>2]=v[f+8>>2];v[c+28>>2]=b;b=v[f+4>>2];v[c+16>>2]=v[f>>2];v[c+20>>2]=b;k=l-1|0;i=(k<<5)+a|0;e=i;b=v[e+4>>2];v[f>>2]=v[e>>2];v[f+4>>2]=b;b=v[e+28>>2];v[f+24>>2]=v[e+24>>2];v[f+28>>2]=b;b=v[e+20>>2];v[f+16>>2]=v[e+16>>2];v[f+20>>2]=b;b=v[e+12>>2];v[f+8>>2]=v[e+8>>2];v[f+12>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b;b=m;while(1){e=x[i+8>>1];d=(e|0)==65535?x[i+10>>1]:e;while(1){e=b;b=b+1|0;h=(b<<5)+a|0;g=x[h+8>>1];f=((g|0)==65535?x[h+10>>1]:g)&65535;g=d&65535;if(f>>>0>>0){continue}break}while(1){k=k-1|0;d=(k<<5)+a|0;f=x[d+8>>1];if(g>>>0<(((f|0)==65535?x[d+10>>1]:f)&65535)>>>0){continue}break}if((b|0)<(k|0)){e=v[h+28>>2];v[c+40>>2]=v[h+24>>2];v[c+44>>2]=e;e=v[h+20>>2];v[c+32>>2]=v[h+16>>2];v[c+36>>2]=e;e=v[h+12>>2];v[c+24>>2]=v[h+8>>2];v[c+28>>2]=e;e=v[h+4>>2];v[c+16>>2]=v[h>>2];v[c+20>>2]=e;e=v[d+28>>2];v[h+24>>2]=v[d+24>>2];v[h+28>>2]=e;e=v[d+20>>2];v[h+16>>2]=v[d+16>>2];v[h+20>>2]=e;e=v[d+12>>2];v[h+8>>2]=v[d+8>>2];v[h+12>>2]=e;e=v[d+4>>2];v[h>>2]=v[d>>2];v[h+4>>2]=e;e=v[c+44>>2];v[d+24>>2]=v[c+40>>2];v[d+28>>2]=e;e=v[c+36>>2];v[d+16>>2]=v[c+32>>2];v[d+20>>2]=e;e=v[c+28>>2];v[d+8>>2]=v[c+24>>2];v[d+12>>2]=e;e=v[c+20>>2];v[d>>2]=v[c+16>>2];v[d+4>>2]=e;continue}break}d=v[h+28>>2];v[c+40>>2]=v[h+24>>2];v[c+44>>2]=d;d=v[h+20>>2];v[c+32>>2]=v[h+16>>2];v[c+36>>2]=d;d=v[h+12>>2];v[c+24>>2]=v[h+8>>2];v[c+28>>2]=d;d=v[h+4>>2];v[c+16>>2]=v[h>>2];v[c+20>>2]=d;d=v[i+28>>2];v[h+24>>2]=v[i+24>>2];v[h+28>>2]=d;d=v[i+20>>2];v[h+16>>2]=v[i+16>>2];v[h+20>>2]=d;d=v[i+12>>2];v[h+8>>2]=v[i+8>>2];v[h+12>>2]=d;d=v[i+4>>2];v[h>>2]=v[i>>2];v[h+4>>2]=d;d=v[c+44>>2];v[i+24>>2]=v[c+40>>2];v[i+28>>2]=d;d=v[c+36>>2];v[i+16>>2]=v[c+32>>2];v[i+20>>2]=d;d=v[c+28>>2];v[i+8>>2]=v[c+24>>2];v[i+12>>2]=d;d=v[c+20>>2];v[i>>2]=v[c+16>>2];v[i+4>>2]=d;c:{if((b-m|0)<(l-b|0)){if(o-1>>>0<=n>>>0){d=o<<3;if(d){g=v[37696];b=g+12|0;b=(r=b,s=d,u=Ba[v[v[g>>2]+20>>2]](g)|0?45645:63804,y=17218,z=155,q=v[v[b>>2]+8>>2],Ba[q](r|0,s|0,u|0,y|0,z|0)|0)}else{b=0}o=o<<1;d=I9(b,j,n<<2);b=p;p=1;if(!(!b|!j)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,j)}j=d}b=(n<<2)+j|0;v[b>>2]=m;v[b+4>>2]=e;m=e+2|0;break c}if(o-1>>>0<=n>>>0){d=o<<3;if(d){g=v[37696];b=g+12|0;b=(z=b,y=d,u=Ba[v[v[g>>2]+20>>2]](g)|0?45645:63804,s=17218,r=155,q=v[v[b>>2]+8>>2],Ba[q](z|0,y|0,u|0,s|0,r|0)|0)}else{b=0}o=o<<1;d=I9(b,j,n<<2);b=p;p=1;if(!(!b|!j)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,j)}j=d}b=(n<<2)+j|0;v[b>>2]=e+2;v[b+4>>2]=l;l=e}n=n+2|0;if((l|0)>(m|0)){continue}break}}if(n){b=n-2|0;m=v[(b<<2)+j>>2];l=v[((n<<2)+j|0)-4>>2];n=b;continue}break}if(!p|!j){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,j)}if(w[c+12|0]){v9(v[c+8>>2])}xa=c+48|0}function aW(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0);U=z[d+24>>2];V=z[d+20>>2];ba=z[c+8>>2];ca=z[c+12>>2];W=z[d+16>>2];da=z[c+4>>2];q=z[d+8>>2];r=z[d+4>>2];m=z[d+12>>2];g=z[d>>2];d=xa+-64|0;i=z[f+4>>2];w=C(i+i);l=z[f+8>>2];t=C(w*l);s=z[f>>2];j=C(s+s);x=z[f+12>>2];u=C(j*x);H=C(t-u);z[d+28>>2]=H;I=C(t+u);z[d+20>>2]=I;s=C(C(1)-C(s*j));t=C(i*w);J=C(s-t);z[d+32>>2]=J;h=s;s=C(l+l);u=C(l*s);L=C(h-u);z[d+16>>2]=L;l=C(j*l);w=C(w*x);M=C(l+w);z[d+24>>2]=M;i=C(j*i);j=C(s*x);N=C(i-j);z[d+12>>2]=N;O=C(l-w);z[d+8>>2]=O;P=C(i+j);z[d+4>>2]=P;Q=C(C(C(1)-t)-u);z[d>>2]=Q;R=z[f+16>>2];z[d+36>>2]=R;S=z[f+20>>2];z[d+40>>2]=S;T=z[f+24>>2];z[d+44>>2]=T;X=z[e+4>>2];z[d+48>>2]=X;Y=z[e+8>>2];z[d+52>>2]=Y;Z=z[e+12>>2];z[d+56>>2]=Z;f=0;l=C(g+g);j=C(q*l);i=C(r+r);u=C(m*i);w=C(j-u);t=C(r*i);x=C(q+q);y=C(q*x);s=C(C(C(1)-t)-y);r=C(l*r);A=C(x*m);x=C(r+A);h=C(C(U*w)+C(C(W*s)+C(V*x)));g=C(C(1)-C(g*l));t=C(g-t);u=C(j+u);q=C(i*q);l=C(l*m);F=C(q-l);i=C(D(C(C(t*w)+C(C(u*s)+C(x*F)))));G=C(q+l);A=C(r-A);y=C(g-y);q=C(D(C(C(G*w)+C(C(A*s)+C(x*y)))));r=C(C(ca*i)+C(C(da*C(D(C(C(w*w)+C(C(s*s)+C(x*x))))))+C(ba*q)));m=C(h+r);l=C(C(T*w)+C(C(R*s)+C(x*S)));j=C(D(C(C(J*w)+C(C(M*s)+C(x*H)))));k=C(D(C(C(O*w)+C(C(Q*s)+C(x*P)))));v=C(D(C(C(I*w)+C(C(N*s)+C(x*L)))));g=C(C(Z*j)+C(C(X*k)+C(Y*v)));p=C(l-g);a:{if(mm?m:g;m=mg){m=g;r=y;l=G;q=A}g=C(C(U*t)+C(C(W*u)+C(V*F)));i=C(C(C(D(C(C(t*t)+C(C(u*u)+C(F*F)))))*ca)+C(C(i*da)+C(ba*n)));h=C(g+i);p=C(C(T*t)+C(C(R*u)+C(F*S)));n=C(D(C(C(J*t)+C(C(M*u)+C(F*H)))));o=C(D(C(C(O*t)+C(C(Q*u)+C(F*P)))));$=C(D(C(C(I*t)+C(C(N*u)+C(F*L)))));aa=C(C(n*Z)+C(C(o*X)+C(Y*$)));ea=C(p-aa);if(hi?i:g;if(gi?i:g;if(gi?i:g;if(gi?i:g;if(g>2];v=z[e>>2];h=C(C(s*k)+C(v*ja));p=z[e+8>>2];n=C(C(w*v)+C(p*ka));o=C(C(x*p)+C(k*la));b:{if(!(C(D(h))>C(9.999999974752427e-7)?1:C(D(o))>C(9.999999974752427e-7)|C(D(n))>C(9.999999974752427e-7))){break b}g=C(0);i=C(0);j=C(0);E=C(C(h*h)+C(C(o*o)+C(n*n)));if(E>C(0)){g=C(C(1)/C(K(E)));j=C(h*g);i=C(n*g);g=C(o*g)}h=C(C(U*j)+C(C(W*g)+C(V*i)));n=C(C(C(D(C(C(t*j)+C(C(u*g)+C(F*i)))))*ca)+C(C(C(D(C(C(w*j)+C(C(s*g)+C(x*i)))))*da)+C(ba*C(D(C(C(G*j)+C(C(A*g)+C(y*i))))))));o=C(h+n);E=C(C(T*j)+C(C(R*g)+C(S*i)));fa=C(C(C(D(C(C(J*j)+C(C(M*g)+C(H*i)))))*Z)+C(C(C(D(C(C(O*j)+C(C(Q*g)+C(P*i)))))*X)+C(Y*C(D(C(C(I*j)+C(C(N*g)+C(L*i))))))));ga=C(E-fa);if(on?n:h;if(!(hC(9.999999974752427e-7)?1:C(D(o))>C(9.999999974752427e-7)|C(D(n))>C(9.999999974752427e-7))){break c}g=C(0);i=C(0);j=C(0);E=C(C(h*h)+C(C(o*o)+C(n*n)));if(E>C(0)){g=C(C(1)/C(K(E)));j=C(h*g);i=C(n*g);g=C(o*g)}h=C(C(U*j)+C(C(W*g)+C(V*i)));n=C(C(C(D(C(C(t*j)+C(C(u*g)+C(F*i)))))*ca)+C(C(C(D(C(C(w*j)+C(C(s*g)+C(x*i)))))*da)+C(ba*C(D(C(C(G*j)+C(C(A*g)+C(y*i))))))));o=C(h+n);E=C(C(T*j)+C(C(R*g)+C(S*i)));fa=C(C(C(D(C(C(J*j)+C(C(M*g)+C(H*i)))))*Z)+C(C(C(D(C(C(O*j)+C(C(Q*g)+C(P*i)))))*X)+C(Y*C(D(C(C(I*j)+C(C(N*g)+C(L*i))))))));ga=C(E-fa);if(on?n:h;if(!(hC(9.999999974752427e-7)?1:C(D(k))>C(9.999999974752427e-7)|C(D(v))>C(9.999999974752427e-7))){break d}g=C(0);i=C(0);j=C(0);p=C(C(h*h)+C(C(k*k)+C(v*v)));if(p>C(0)){g=C(C(1)/C(K(p)));j=C(h*g);i=C(v*g);g=C(k*g)}h=C(C(U*j)+C(C(W*g)+C(V*i)));k=C(C(C(D(C(C(t*j)+C(C(u*g)+C(F*i)))))*ca)+C(C(C(D(C(C(w*j)+C(C(s*g)+C(x*i)))))*da)+C(ba*C(D(C(C(G*j)+C(C(A*g)+C(y*i))))))));v=C(h+k);p=C(C(T*j)+C(C(R*g)+C(S*i)));n=C(C(C(D(C(C(J*j)+C(C(M*g)+C(H*i)))))*Z)+C(C(C(D(C(C(O*j)+C(C(Q*g)+C(P*i)))))*X)+C(Y*C(D(C(C(I*j)+C(C(N*g)+C(L*i))))))));o=C(p-n);if(vk?k:h;if(!(h>2]=c?l:C(-l);z[a+4>>2]=c?r:C(-r);z[a>>2]=c?q:C(-q);z[b>>2]=m>C(0)?m:C(0);f=1}return f|0}function fB(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=0,Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=0,Qa=0,Ra=0,Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0),mb=C(0),nb=C(0),ob=C(0),pb=C(0),qb=C(0),rb=C(0),sb=C(0),tb=C(0),ub=C(0),vb=C(0),wb=C(0),xb=C(0),yb=C(0),zb=C(0),Ab=C(0),Bb=0,Cb=C(0),Db=C(0),Eb=C(0),Fb=C(0),Gb=C(0),Hb=C(0),Ib=C(0),Jb=C(0),Kb=C(0),Lb=C(0),Mb=C(0),Nb=C(0),Ob=C(0),Pb=C(0),Qb=C(0),Rb=C(0),Sb=C(0),Tb=C(0),Ub=C(0),Vb=C(0),Wb=C(0),Xb=C(0);g=v[a+100>>2];lb=z[g+28>>2];L=z[g+16>>2];h=v[a+96>>2];M=z[h+24>>2];N=z[h+20>>2];mb=z[g+12>>2];O=z[g+8>>2];P=z[g+4>>2];Q=z[g>>2];i=v[a+68>>2];nb=z[i+28>>2];R=z[i+16>>2];j=v[a+64>>2];S=z[j+24>>2];T=z[j+20>>2];ob=z[i+12>>2];U=z[i+8>>2];V=z[i+4>>2];W=z[i>>2];k=v[a+36>>2];pb=z[k+28>>2];X=z[k+16>>2];l=v[a+32>>2];Y=z[l+24>>2];Z=z[l+20>>2];qb=z[k+12>>2];_=z[k+8>>2];$=z[k+4>>2];aa=z[k>>2];m=v[a+4>>2];ba=z[m+24>>2];ca=z[m+20>>2];n=v[a>>2];da=z[n+24>>2];ea=z[n+20>>2];fa=z[g+24>>2];ga=z[g+20>>2];ha=z[i+24>>2];ia=z[i+20>>2];ja=z[k+24>>2];ka=z[k+20>>2];rb=z[h+28>>2];la=z[h+16>>2];sb=z[h+12>>2];ma=z[h+8>>2];na=z[h+4>>2];oa=z[h>>2];tb=z[j+28>>2];pa=z[j+16>>2];ub=z[j+12>>2];qa=z[j+8>>2];ra=z[j+4>>2];sa=z[j>>2];vb=z[l+28>>2];ta=z[l+16>>2];wb=z[l+12>>2];ua=z[l+8>>2];va=z[l+4>>2];wa=z[l>>2];xb=z[m+28>>2];xa=z[m+16>>2];yb=z[n+28>>2];ya=z[n+16>>2];zb=z[m+12>>2];za=z[m+8>>2];Aa=z[m+4>>2];Ba=z[m>>2];Ab=z[n+12>>2];Ca=z[n+8>>2];Da=z[n+4>>2];Ea=z[n>>2];c=x[a+22>>1];if(c){b=v[a+24>>2];Bb=b+(c<<4)|0;while(1){a=b;Qa=a+96|0;Ra=Qa+(w[a+1|0]<<4)|0;Pa=w[a+2|0];b=Ra+B(Pa,192)|0;if(Pa){Cb=z[a+92>>2];Db=z[a+88>>2];Eb=z[a+84>>2];Fb=z[a+76>>2];Gb=z[a+72>>2];Hb=z[a+68>>2];Ib=z[a+60>>2];Jb=z[a+56>>2];Kb=z[a+52>>2];Lb=z[a+44>>2];Mb=z[a+40>>2];Nb=z[a+36>>2];Ob=z[a+28>>2];Pb=z[a+24>>2];Qb=z[a+20>>2];Rb=z[a+80>>2];Sb=z[a+64>>2];Tb=z[a+48>>2];Ub=z[a+32>>2];Vb=z[a+16>>2];K=0;while(1){Fa=(K>>>v[a+12>>2]<<4)+Qa|0;Ga=z[Fa+4>>2];c=B(K,192)+Ra|0;D=z[c+100>>2];Wb=z[c+132>>2];f=z[c+116>>2];E=z[c+84>>2];Sa=z[c+52>>2];Ta=z[c+68>>2];t=z[c+36>>2];Ha=z[c+20>>2];Ia=z[c+4>>2];F=z[c+180>>2];Ua=z[c+148>>2];Va=z[c+164>>2];Ja=z[Fa+8>>2];G=z[c+104>>2];Xb=z[c+136>>2];d=z[c+120>>2];H=z[c+88>>2];Wa=z[c+56>>2];Xa=z[c+72>>2];u=z[c+40>>2];Ka=z[c+24>>2];La=z[c+8>>2];I=z[c+184>>2];Ya=z[c+152>>2];Za=z[c+168>>2];A=z[Fa+12>>2];J=z[c+108>>2];Ma=z[c+140>>2];e=z[c+124>>2];_a=z[c+92>>2];$a=z[c+60>>2];ab=z[c+76>>2];y=z[c+44>>2];Na=z[c+28>>2];Oa=z[c+12>>2];bb=z[c+188>>2];cb=z[c+156>>2];db=z[c+172>>2];r=z[c>>2];s=z[c+16>>2];q=z[c+32>>2];eb=z[c+48>>2];fb=z[c+64>>2];gb=z[c+80>>2];hb=z[c+144>>2];ib=z[c+160>>2];jb=z[c+176>>2];o=z[c+112>>2];kb=z[c+96>>2];p=C(C(C(C(C(C(C(Ea*r)+C(Da*s))+C(Ca*q))+C(C(C(ya*eb)+C(ea*fb))+C(da*gb)))-C(C(C(C(Ba*r)+C(Aa*s))+C(za*q))+C(C(C(xa*hb)+C(ca*ib))+C(ba*jb))))*o)+C(kb-C(o*z[c+128>>2])));o=C(Vb*z[Fa>>2]);p=o>p?p:o;o=C(-o);o=o>2]=o;Ma=C(C(e*C(C(C(C(C(oa*Oa)+C(na*Na))+C(ma*y))+C(C(C(la*$a)+C(N*ab))+C(M*_a)))-C(C(C(C(Q*Oa)+C(P*Na))+C(O*y))+C(C(C(L*cb)+C(ga*db))+C(fa*bb)))))+C(J-C(e*Ma)));e=C(Ob*A);A=e>Ma?Ma:e;e=C(-e);A=e>2]=A;e=C(C(d*C(C(C(C(C(sa*La)+C(ra*Ka))+C(qa*u))+C(C(C(pa*Wa)+C(T*Xa))+C(S*H)))-C(C(C(C(W*La)+C(V*Ka))+C(U*u))+C(C(C(R*Ya)+C(ia*Za))+C(ha*I)))))+C(G-C(d*Xb)));d=C(Pb*Ja);e=d>e?e:d;d=C(-d);Ja=d>2]=Ja;d=C(C(f*C(C(C(C(C(wa*Ia)+C(va*Ha))+C(ua*t))+C(C(C(ta*Sa)+C(Z*Ta))+C(Y*E)))-C(C(C(C(aa*Ia)+C($*Ha))+C(_*t))+C(C(C(X*Ua)+C(ka*Va))+C(ja*F)))))+C(D-C(f*Wb)));f=C(Qb*Ga);d=df?d:f;z[c+100>>2]=Ga;f=C(o-kb);d=C(Rb*f);ba=C(ba-C(jb*d));e=C(Sb*f);da=C(da+C(gb*e));o=C(Tb*f);za=C(za-C(q*o));p=q;q=C(Ub*f);Ca=C(Ca+C(p*q));ca=C(ca-C(ib*d));ea=C(ea+C(fb*e));Aa=C(Aa-C(s*o));Da=C(Da+C(s*q));xa=C(xa-C(hb*d));ya=C(ya+C(eb*e));Ba=C(Ba-C(r*o));Ea=C(Ea+C(r*q));r=C(A-J);f=C(Cb*r);fa=C(fa-C(bb*f));s=C(Ja-G);G=C(Db*s);ha=C(ha-C(I*G));q=C(Ga-D);D=C(Eb*q);ja=C(ja-C(F*D));F=C(Fb*r);M=C(M+C(_a*F));d=C(Gb*s);S=C(S+C(H*d));p=E;E=C(Hb*q);Y=C(Y+C(p*E));H=C(Ib*r);O=C(O-C(y*H));I=C(Jb*s);U=C(U-C(u*I));J=C(Kb*q);_=C(_-C(t*J));p=y;y=C(Lb*r);ma=C(ma+C(p*y));p=u;u=C(Mb*s);qa=C(qa+C(p*u));p=t;t=C(Nb*q);ua=C(ua+C(p*t));ga=C(ga-C(db*f));ia=C(ia-C(Za*G));ka=C(ka-C(Va*D));N=C(N+C(ab*F));T=C(T+C(Xa*d));Z=C(Z+C(Ta*E));P=C(P-C(Na*H));V=C(V-C(Ka*I));$=C($-C(Ha*J));na=C(na+C(Na*y));ra=C(ra+C(Ka*u));va=C(va+C(Ha*t));L=C(L-C(cb*f));R=C(R-C(Ya*G));X=C(X-C(Ua*D));la=C(la+C($a*F));pa=C(pa+C(Wa*d));ta=C(ta+C(Sa*E));Q=C(Q-C(Oa*H));W=C(W-C(La*I));aa=C(aa-C(Ia*J));oa=C(oa+C(Oa*y));sa=C(sa+C(La*u));wa=C(wa+C(Ia*t));K=K+1|0;if((Pa|0)!=(K|0)){continue}break}}if(b>>>0>>0){continue}break}}z[n+12>>2]=Ab;z[n+8>>2]=Ca;z[n+4>>2]=Da;z[n>>2]=Ea;z[l+12>>2]=wb;z[l+8>>2]=ua;z[l+4>>2]=va;z[l>>2]=wa;z[j+12>>2]=ub;z[j+8>>2]=qa;z[j+4>>2]=ra;z[j>>2]=sa;z[h+12>>2]=sb;z[h+8>>2]=ma;z[h+4>>2]=na;z[h>>2]=oa;z[m+12>>2]=zb;z[m+8>>2]=za;z[m+4>>2]=Aa;z[m>>2]=Ba;z[k+12>>2]=qb;z[k+8>>2]=_;z[k+4>>2]=$;z[k>>2]=aa;z[i+12>>2]=ob;z[i+8>>2]=U;z[i+4>>2]=V;z[i>>2]=W;z[g+12>>2]=mb;z[g+8>>2]=O;z[g+4>>2]=P;z[g>>2]=Q;z[n+28>>2]=yb;z[n+24>>2]=da;z[n+20>>2]=ea;z[n+16>>2]=ya;z[l+28>>2]=vb;z[l+24>>2]=Y;z[l+20>>2]=Z;z[l+16>>2]=ta;z[j+28>>2]=tb;z[j+24>>2]=S;z[j+20>>2]=T;z[j+16>>2]=pa;z[h+28>>2]=rb;z[h+24>>2]=M;z[h+20>>2]=N;z[h+16>>2]=la;z[m+28>>2]=xb;z[m+24>>2]=ba;z[m+20>>2]=ca;z[m+16>>2]=xa;z[k+28>>2]=pb;z[k+24>>2]=ja;z[k+20>>2]=ka;z[k+16>>2]=X;z[i+28>>2]=nb;z[i+24>>2]=ha;z[i+20>>2]=ia;z[i+16>>2]=R;z[g+28>>2]=lb;z[g+24>>2]=fa;z[g+20>>2]=ga;z[g+16>>2]=L}function X1(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),w=C(0),x=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0);o=xa-224|0;xa=o;I=v[c+32>>2];L=z[I+20>>2];s=v[d+32>>2];M=z[s+20>>2];O=z[I+24>>2];P=z[s+24>>2];J=z[I+16>>2];R=z[s+16>>2];p=z[s+8>>2];r=z[I>>2];E=z[s>>2];x=z[I+8>>2];q=z[s+4>>2];t=z[I+12>>2];A=z[s+12>>2];u=z[I+4>>2];v[o+220>>2]=0;v[o+204>>2]=0;v[o+188>>2]=0;w=C(C(C(x*q)-C(u*p))+C(C(t*E)-C(r*A)));F=C(w+w);H=C(C(C(r*p)-C(x*E))+C(C(t*q)-C(u*A)));G=C(H+H);N=C(C(1)-C(w*F));V=C(H*G);_=C(N-V);z[o+200>>2]=_;w=C(C(C(u*E)-C(r*q))+C(C(t*p)-C(x*A)));W=C(w*G);U=C(-r);S=C(C(t*A)-C(C(C(E*U)-C(q*u))-C(x*p)));Q=C(S*F);$=C(W-Q);z[o+196>>2]=$;W=C(W+Q);z[o+184>>2]=W;T=N;N=C(w+w);Q=C(w*N);aa=C(T-Q);z[o+180>>2]=aa;J=C(R-J);L=C(M-L);M=C(P-O);O=C(C(C(U*J)-C(L*u))-C(x*M));P=C(C(t*t)+C(-.5));R=C(C(C(t*C(C(u*J)-C(r*L)))+C(P*M))-C(x*O));z[o+216>>2]=R+R;R=C(C(C(P*L)+C(t*C(C(r*M)-C(x*J))))-C(u*O));z[o+212>>2]=R+R;v[o+172>>2]=0;w=C(w*F);G=C(S*G);R=C(w+G);z[o+192>>2]=R;F=C(H*F);H=C(S*N);N=C(F-H);z[o+176>>2]=N;z[o+168>>2]=w-G;z[o+164>>2]=F+H;V=C(C(C(1)-V)-Q);z[o+160>>2]=V;t=C(C(C(P*J)+C(t*C(C(x*L)-C(u*M))))-C(r*O));z[o+208>>2]=t+t;L=z[s+20>>2];M=z[I+20>>2];O=z[s+24>>2];P=z[I+24>>2];J=z[s+16>>2];U=z[I+16>>2];t=z[I>>2];x=z[I+4>>2];u=z[I+8>>2];r=z[I+12>>2];v[o+156>>2]=0;v[o+140>>2]=0;v[o+124>>2]=0;F=C(C(C(q*t)-C(E*x))+C(C(A*u)-C(p*r)));w=C(C(C(E*u)-C(p*t))+C(C(A*x)-C(q*r)));G=C(w+w);Q=C(F*G);X=C(-E);S=C(C(A*r)-C(C(C(t*X)-C(x*q))-C(p*u)));u=C(C(C(p*x)-C(q*u))+C(C(A*t)-C(E*r)));H=C(u+u);x=C(S*H);t=C(Q-x);z[o+132>>2]=t;x=C(Q+x);z[o+120>>2]=x;J=C(U-J);L=C(M-L);M=C(P-O);O=C(C(C(X*J)-C(L*q))-C(p*M));P=C(C(A*A)+C(-.5));r=C(C(C(A*C(C(q*J)-C(E*L)))+C(P*M))-C(p*O));U=C(r+r);z[o+152>>2]=U;r=C(C(C(P*L)+C(A*C(C(E*M)-C(p*J))))-C(q*O));Q=C(r+r);z[o+148>>2]=Q;r=C(C(1)-C(u*H));X=C(w*G);u=C(r-X);z[o+136>>2]=u;ba=C(F+F);ca=C(F*ba);r=C(r-ca);z[o+116>>2]=r;v[o+108>>2]=0;Y=C(F*H);G=C(S*G);F=C(Y+G);z[o+128>>2]=F;T=C(w*H);S=C(S*ba);w=C(T-S);z[o+112>>2]=w;H=C(Y-G);z[o+104>>2]=H;G=C(T+S);z[o+100>>2]=G;A=C(C(C(P*J)+C(A*C(C(p*L)-C(q*M))))-C(E*O));J=C(A+A);z[o+144>>2]=J;A=C(C(C(1)-X)-ca);z[o+96>>2]=A;a:{b:{if(m){v[o+92>>2]=0;v[o+64>>2]=2139095039;v[o+56>>2]=0;v[o+60>>2]=0;v[o+48>>2]=0;v[o+52>>2]=0;if(!Y1(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(!Y1(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}p=z[o+168>>2];q=z[o+164>>2];j=B(v[o+44>>2],20);I=B(v[o+40>>2],20);m=0;while(1){c:{d:{if(m&1){h=Z1(a,b,c,d,o+96|0,o+160|0,g,o- -64|0,o+48|0,o+92|0);if(!h|v[o+92>>2]!=2){break a}break d}e:{switch(v[o+92>>2]){case 0:h=v[a+24>>2];v[o+28>>2]=0;k=z[o+56>>2];l=z[o+48>>2];n=z[o+52>>2];z[o+24>>2]=C(u*k)+C(C(H*l)+C(n*x));z[o+20>>2]=C(t*k)+C(C(G*l)+C(n*r));z[o+16>>2]=C(F*k)+C(C(A*l)+C(n*w));W1(a,b,h+j|0,v[b+24>>2]+B(_1(b,d,o+16|0),20)|0,c,d,o+96|0,e,f,g);if(!v[f>>2]){break c}k=C(-z[o+24>>2]);l=C(-z[o+20>>2]);n=C(-z[o+16>>2]);i=0;while(1){h=B(i,48)+e|0;s=v[h+20>>2];v[o>>2]=v[h+16>>2];v[o+4>>2]=s;s=v[h+4>>2];v[h+16>>2]=v[h>>2];v[h+20>>2]=s;s=v[h+28>>2];v[o+8>>2]=v[h+24>>2];v[o+12>>2]=s;s=v[h+12>>2];v[h+24>>2]=v[h+8>>2];v[h+28>>2]=s;s=v[o+4>>2];v[h>>2]=v[o>>2];v[h+4>>2]=s;s=v[o+12>>2];Z=v[o+8>>2];z[h+36>>2]=l;z[h+40>>2]=k;v[h+8>>2]=Z;v[h+12>>2]=s;z[h+32>>2]=n;i=i+1|0;if(i>>>0>2]){continue}break};break c;case 1:break e;default:break d}}h=v[a+24>>2];i=v[b+24>>2];v[o+28>>2]=0;k=z[o+56>>2];l=z[o+48>>2];n=z[o+52>>2];z[o+24>>2]=C(_*k)+C(C(p*l)+C(W*n));z[o+20>>2]=C($*k)+C(C(q*l)+C(aa*n));z[o+16>>2]=C(R*k)+C(C(V*l)+C(N*n));W1(b,a,i+I|0,h+B(_1(a,c,o+16|0),20)|0,d,c,o+160|0,e,f,g);break c}h=v[a+24>>2];v[o+28>>2]=0;k=z[o+56>>2];z[o+24>>2]=-k;l=z[o+52>>2];z[o+20>>2]=-l;n=z[o+48>>2];z[o+16>>2]=-n;i=o+16|0;s=_1(a,c,i);Z=v[b+24>>2];v[o+28>>2]=0;z[o+24>>2]=C(u*k)+C(C(H*n)+C(l*x));z[o+20>>2]=C(t*k)+C(C(G*n)+C(l*r));z[o+16>>2]=C(F*k)+C(C(A*n)+C(l*w));W1(b,a,B(_1(b,d,i),20)+Z|0,h+B(s,20)|0,d,c,o+160|0,e,f,g)}h=v[f>>2]!=0|m;m=1;if(!(h&1)){continue}break}break b}p=z[h>>2];q=z[h+4>>2];E=z[h+8>>2];v[o+76>>2]=0;z[o+72>>2]=-E;z[o+68>>2]=-q;z[o+64>>2]=-p;v[o+60>>2]=0;z[o+56>>2]=C(u*E)+C(C(F*p)+C(t*q));z[o+52>>2]=C(x*E)+C(C(w*p)+C(r*q));z[o+48>>2]=C(H*E)+C(C(A*p)+C(q*G));p=C(n*C(.05000000074505806));n=C(n*C(.009999999776482582));l=lp?p:l);l=z[i+8>>2];q=z[i>>2];E=z[i+4>>2];v[o+28>>2]=0;l=C(l-U);q=C(q-J);E=C(E-Q);z[o+24>>2]=C(u*l)+C(C(F*q)+C(t*E));z[o+20>>2]=C(x*l)+C(C(w*q)+C(r*E));z[o+16>>2]=C(H*l)+C(C(A*q)+C(E*G));k=kp?p:k);h=v[d+40>>2];i=v[b+24>>2]+B(j,20)|0;k=z[i+8>>2];l=z[i>>2];n=z[i+4>>2];p=C(C(z[h+40>>2]*k)+C(C(z[h+32>>2]*l)+C(n*z[h+36>>2])));T=p;N=C(p*p);p=C(C(z[h+8>>2]*k)+C(C(z[h>>2]*l)+C(n*z[h+4>>2])));k=C(C(z[h+24>>2]*k)+C(C(z[h+16>>2]*l)+C(n*z[h+20>>2])));l=C(C(1)/C(K(C(N+C(C(p*p)+C(k*k))))));Y=C(D(C(C(C(T*l)*z[o+72>>2])+C(C(C(p*l)*z[o+64>>2])+C(C(k*l)*z[o+68>>2])))));h=v[c+40>>2];j=v[a+24>>2]+B(m,20)|0;k=z[j+8>>2];l=z[j>>2];n=z[j+4>>2];p=C(C(z[h+40>>2]*k)+C(C(z[h+32>>2]*l)+C(n*z[h+36>>2])));T=p;N=C(p*p);p=C(C(z[h+8>>2]*k)+C(C(z[h>>2]*l)+C(n*z[h+4>>2])));n=C(C(z[h+24>>2]*k)+C(C(z[h+16>>2]*l)+C(n*z[h+20>>2])));q=C(C(1)/C(K(C(N+C(C(p*p)+C(n*n))))));k=C(T*q);l=C(p*q);n=C(n*q);if(Y>=C(D(C(C(k*z[o+56>>2])+C(C(l*z[o+48>>2])+C(z[o+52>>2]*n)))))){W1(b,a,i,j,d,c,o+160|0,e,f,g);break b}W1(a,b,j,i,c,d,o+96|0,e,f,g);if(!v[f>>2]){break b}p=C(-C(C(u*k)+C(C(H*l)+C(x*n))));q=C(-C(C(t*k)+C(C(G*l)+C(r*n))));k=C(-C(C(F*k)+C(C(A*l)+C(w*n))));i=0;while(1){a=B(i,48)+e|0;b=v[a+20>>2];v[o+16>>2]=v[a+16>>2];v[o+20>>2]=b;b=v[a+4>>2];v[a+16>>2]=v[a>>2];v[a+20>>2]=b;b=v[a+28>>2];v[o+24>>2]=v[a+24>>2];v[o+28>>2]=b;b=v[a+12>>2];v[a+24>>2]=v[a+8>>2];v[a+28>>2]=b;b=v[o+20>>2];v[a>>2]=v[o+16>>2];v[a+4>>2]=b;b=v[o+28>>2];c=v[o+24>>2];z[a+36>>2]=q;z[a+40>>2]=p;v[a+8>>2]=c;v[a+12>>2]=b;z[a+32>>2]=k;i=i+1|0;if(i>>>0>2]){continue}break}}h=1}xa=o+224|0;return h}function OQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),A=C(0),D=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0);e=v[a+100>>2];F=xa-16|0;xa=F;a=v[e+988>>2];if(a){b=v[a+212>>2];if(b){c=v[a+208>>2];while(1){g=v[c+(d<<2)>>2];f=w[v[g-20>>2]+9|0];a=v[e+1012>>2];v[F+8>>2]=v[g+80>>2];Ba[v[v[a>>2]+44>>2]](a,(f|0)==2,F+8|0);d=d+1|0;if((b|0)!=(d|0)){continue}break}a=v[e+988>>2]}v[a+212>>2]=0}i=v[e+4628>>2];if(i){f=v[e+976>>2];a=v[f+16>>2];a:{if(!(a>>>0<=i>>>0&i>>>0>2]>>>0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,i);break a}k=v[f+4>>2];c=0;h=v[f+8>>2];b=h;while(1){g=c;c=c+1|0;a=b;b=a-1|0;d=k+(b<<2)|0;if(i>>>0>y[d>>2]){continue}break}b:{if(a>>>0>=h>>>0){break b}b=g&3;if(b){c=0;while(1){v[d>>2]=v[v[f+4>>2]+(a<<2)>>2];a=a+1|0;d=d+4|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}if(g-1>>>0<3){break b}while(1){b=a<<2;v[d>>2]=v[b+v[f+4>>2]>>2];v[d+4>>2]=v[(b+v[f+4>>2]|0)+4>>2];v[d+8>>2]=v[(b+v[f+4>>2]|0)+8>>2];v[d+12>>2]=v[(b+v[f+4>>2]|0)+12>>2];d=d+16|0;a=a+4|0;if((h|0)!=(a|0)){continue}break}}v[f+8>>2]=h-1}v[e+4628>>2]=0}d=xa-32|0;xa=d;c:{if(!v[e+2344>>2]){break c}k=v[e+4668>>2];if(!k){break c}v[e+2324>>2]=0;f=e+2320|0;if(k>>>0>(v[e+2328>>2]&2147483647)>>>0){b=0;d:{if(!k){break d}c=k<<2;if(!c){break d}a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?54985:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,b,16608,553)|0}c=v[f>>2];a=v[f+4>>2];if((a|0)>0){g=(a<<2)+b|0;a=b;while(1){v[a>>2]=v[c>>2];c=c+4|0;a=a+4|0;if(g>>>0>a>>>0){continue}break}c=v[f>>2]}if(!(!c|v[f+8>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,c)}v[f+8>>2]=k;v[f>>2]=b}v[e+2336>>2]=0;i=e+2332|0;if(k>>>0>(v[e+2340>>2]&2147483647)>>>0){Rv(i,k)}Q=v[e+4636>>2];while(1){a=v[(J<<2)+Q>>2];e:{if(t[a+92|0]&1){break e}c=v[a+44>>2];a=c;b=v[((w[a+9|0]<<2)+149664|0)+40>>2]+a|0;v[d>>2]=b;a=v[e+2324>>2];f:{if(a>>>0>=(v[e+2328>>2]&2147483647)>>>0){b=0;a=v[f+8>>2];o=a&2147483647?a<<1:1;g:{if(!o){break g}g=o<<2;if(!g){break g}a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?54985:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,g,b,16608,553)|0}g=v[f+4>>2];G=(g<<2)+b|0;if((g|0)>0){h=v[f>>2];a=b;while(1){v[a>>2]=v[h>>2];h=h+4|0;a=a+4|0;if(G>>>0>a>>>0){continue}break}}v[G>>2]=v[d>>2];h:{if(v[f+8>>2]<0){break h}a=v[f>>2];if(!a){break h}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,a);g=v[f+4>>2]}v[f+8>>2]=o;v[f>>2]=b;v[f+4>>2]=g+1;break f}v[v[e+2320>>2]+(a<<2)>>2]=b;v[e+2324>>2]=a+1}R=z[c+32>>2];S=z[c+36>>2];q=z[c+40>>2];H=z[c- -64>>2];I=z[c+72>>2];r=z[c+68>>2];s=z[c+24>>2];l=z[c+56>>2];A=z[c+20>>2];m=z[c+52>>2];n=z[c+28>>2];j=z[c+60>>2];p=z[c+48>>2];D=z[c+16>>2];M=C(C(s*l)+C(C(A*m)+C(C(n*j)+C(p*D))));z[d+12>>2]=M;N=C(C(p*A)+C(C(C(j*s)-C(n*l))-C(D*m)));z[d+8>>2]=N;O=C(C(l*D)+C(C(C(j*A)-C(n*m))-C(s*p)));z[d+4>>2]=O;P=C(C(m*s)+C(C(C(j*D)-C(n*p))-C(A*l)));z[d>>2]=P;T=q;q=C(I*C(-2));H=C(H*C(-2));I=C(r*C(-2));K=C(C(l*q)+C(C(p*H)+C(m*I)));L=C(C(j*j)+C(-.5));r=C(C(l*K)+C(C(q*L)-C(j*C(C(p*I)-C(H*m)))));r=C(r+r);E=C(C(p*K)+C(C(H*L)-C(j*C(C(m*q)-C(I*l)))));E=C(E+E);j=C(C(m*K)+C(C(I*L)-C(j*C(C(l*H)-C(q*p)))));j=C(j+j);l=C(C(s*r)+C(C(D*E)+C(A*j)));m=C(C(n*n)+C(-.5));p=C(T+C(C(s*l)+C(C(r*m)+C(n*C(C(D*j)-C(E*A))))));z[d+24>>2]=p;q=C(S+C(C(A*l)+C(C(j*m)+C(n*C(C(s*E)-C(r*D))))));z[d+20>>2]=q;n=C(R+C(C(D*l)+C(C(E*m)+C(n*C(C(A*r)-C(j*s))))));z[d+16>>2]=n;b=v[e+2336>>2];if(b>>>0>=(v[e+2340>>2]&2147483647)>>>0){c=0;a=v[i+8>>2];G=a&2147483647?a<<1:1;i:{if(!G){break i}b=B(G,28);if(!b){break i}a=v[37696];c=Ba[v[v[a>>2]+20>>2]](a)|0?37437:63804;c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,c,16608,553)|0}o=v[i+4>>2];h=B(o,28)+c|0;g=v[i>>2];if((o|0)>0){b=g;a=c;while(1){z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];b=b+28|0;a=a+28|0;if(h>>>0>a>>>0){continue}break}}z[h>>2]=z[d>>2];z[h+4>>2]=z[d+4>>2];z[h+8>>2]=z[d+8>>2];z[h+12>>2]=z[d+12>>2];z[h+16>>2]=z[d+16>>2];z[h+20>>2]=z[d+20>>2];z[h+24>>2]=z[d+24>>2];if(!(!g|v[i+8>>2]<0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,g);o=v[i+4>>2]}v[i+8>>2]=G;v[i>>2]=c;v[i+4>>2]=o+1;break e}a=v[e+2332>>2]+B(b,28)|0;z[a+16>>2]=n;z[a+12>>2]=M;z[a+8>>2]=N;z[a+4>>2]=O;z[a>>2]=P;z[a+24>>2]=p;z[a+20>>2]=q;v[e+2336>>2]=b+1}J=J+1|0;if((k|0)!=(J|0)){continue}break}a=v[e+2324>>2];if(!a){break c}b=v[e+2344>>2];Ba[v[v[b>>2]+20>>2]](b,v[e+2320>>2],v[e+2332>>2],a)}xa=d+32|0;d=v[e+1288>>2];if(d){J=v[e+1256>>2];while(1){d=d-1|0;f=v[J+(d<<2)>>2];b=v[f+48>>2];if(v[(v[v[b+1004>>2]+168>>2]+(v[f+40>>2]<<5)|0)+12>>2]){t[f+68|0]=w[f+68|0]|8;i=xa-16|0;xa=i;c=v[f+52>>2];v[i+12>>2]=c;a=v[b+1244>>2];j:{if(a>>>0>=(v[b+1248>>2]&2147483647)>>>0){a=0;c=b+1240|0;b=v[c+8>>2];k=b&2147483647?b<<1:1;k:{if(!k){break k}b=k<<2;if(!b){break k}a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?59663:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,16608,553)|0}g=v[c+4>>2];o=(g<<2)+a|0;if((g|0)>0){h=v[c>>2];b=a;while(1){v[b>>2]=v[h>>2];h=h+4|0;b=b+4|0;if(o>>>0>b>>>0){continue}break}}v[o>>2]=v[i+12>>2];l:{if(v[c+8>>2]<0){break l}b=v[c>>2];if(!b){break l}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,b);g=v[c+4>>2]}v[c+8>>2]=k;v[c>>2]=a;v[c+4>>2]=g+1;break j}v[v[b+1240>>2]+(a<<2)>>2]=c;v[b+1244>>2]=a+1}xa=i+16|0;a=v[f+52>>2];u[a>>1]=x[a>>1]|1;MH(v[f+56>>2]);a=v[f+56>>2];b=v[a>>2];a=v[a+4>>2];XE(y[b+28>>2]>2]?b:a,1,1)}if(d){continue}break}}b=v[e+2376>>2];a=b;if(v[a+36>>2]){g=b+8|0;a=0;while(1){c=v[v[b+32>>2]+(a<<2)>>2];v[F+12>>2]=c;m:{if((c|0)==(v[b+4>>2]-1|0)){v[b+4>>2]=c;break m}d=v[b+12>>2];if(d>>>0>=(v[b+16>>2]&2147483647)>>>0){pn(g,F+12|0);break m}v[v[b+8>>2]+(d<<2)>>2]=c;v[b+12>>2]=v[b+12>>2]+1}a=a+1|0;if(a>>>0>2]){continue}break}a=v[e+2376>>2]}v[b+36>>2]=0;J9(v[a+20>>2],0,v[a+24>>2]<<2);d=v[e+4592>>2];b=v[e+4600>>2]+2|0;if(d>>>0>b>>>0){while(1){d=d-1|0;a=v[v[e+4588>>2]+(d<<2)>>2];v[e+4592>>2]=d;if(a){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a);d=v[e+4592>>2]}if(b>>>0>>0){continue}break}}v[e+4600>>2]=0;v[e+4604>>2]=0;v[e+1092>>2]=v[e+1092>>2]+1;xa=F+16|0}function u2(a,b,c,d){var e=0,f=0,g=0,h=C(0),i=C(0),j=0,k=0,l=0,m=0,n=C(0),o=0,p=C(0),q=0,r=0,s=0,u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=0,M=0;i=z[b+44>>2];j=xa+-64|0;t[j|0]=0;D=C(-34028234663852886e22);a:{if(c>>>0<2){break a}e=1;g=c-1|0;m=g&1;b:{if((c|0)==2){g=0;break b}q=g&-2;g=0;while(1){t[e+j|0]=e;l=B(e,48)+b|0;h=z[l+44>>2];o=e+1|0;t[o+j|0]=o;u=z[l+92>>2];r=hu?h:u;s=l?o:r?e:s;g=l?o:r?e:g;e=e+2|0;k=k+2|0;if((q|0)!=(k|0)){continue}break}}if(!m){break a}t[e+j|0]=e;h=z[(B(e,48)+b|0)+44>>2];k=h>2];F=z[g+20>>2];G=z[g+16>>2];o=w[j|0];if(r>>>0>=2){e=B(o,48)+b|0;h=C(z[e+24>>2]-u);p=C(h*h);h=C(z[e+16>>2]-G);J=C(h*h);h=C(z[e+20>>2]-F);h=C(p+C(J+C(h*h)));e=1;while(1){m=w[e+j|0];l=B(m,48)+b|0;n=C(z[l+24>>2]-u);p=C(n*n);n=C(z[l+16>>2]-G);J=C(n*n);n=C(z[l+20>>2]-F);n=C(p+C(J+C(n*n)));l=n>h;h=l?n:h;o=l?m:o;f=l?e:f;e=e+1|0;if((r|0)!=(e|0)){continue}break}}m=c-2|0;t[f+j|0]=w[m+j|0];e=B(o&255,48)+b|0;y=C(z[e+16>>2]-G);h=z[g+36>>2];n=z[g+32>>2];A=C(z[e+20>>2]-F);p=C(C(y*h)-C(n*A));J=p;E=C(p*p);p=z[g+40>>2];H=C(z[e+24>>2]-u);A=C(C(A*p)-C(h*H));y=C(C(H*n)-C(p*y));E=C(E+C(C(A*A)+C(y*y)));H=C(C(1)/C(K(E)));e=E>C(0);E=e?C(J*H):p;y=e?C(y*H):h;A=e?C(A*H):n;e=0;c:{if(!m){r=-1;g=-1;l=-1;break c}n=C(34028234663852886e22);h=C(-34028234663852886e22);l=-1;g=-1;r=-1;while(1){q=w[e+j|0];f=B(q,48)+b|0;p=C(C(C(z[f+24>>2]-u)*E)+C(C(C(z[f+16>>2]-G)*A)+C(y*C(z[f+20>>2]-F))));f=pC(0)}f=c-3|0;t[j+k|0]=w[f+j|0];g=(f|0)==(g|0)?k:g;if(!(!e|!f)){e=B(s&255,48)+b|0;u=z[e+16>>2];F=z[e+24>>2];G=z[e+20>>2];h=C(-34028234663852886e22);e=0;while(1){m=w[e+j|0];k=B(m,48)+b|0;n=C(C(C(z[k+24>>2]-F)*E)+C(C(C(z[k+16>>2]-u)*A)+C(y*C(z[k+20>>2]-G))));k=n>h;h=k?n:h;g=k?e:g;r=k?m:r;e=e+1|0;if((f|0)!=(e|0)){continue}break}}k=c-4|0;t[g+j|0]=w[k+j|0];d:{e:{f:{g:{d=C(d*C(.019999999552965164));if(!(!(d>i)|!(d>2];if(!(d>2];e=v[a+76>>2];v[e>>2]=v[c>>2];v[e+4>>2]=f;f=v[c+36>>2];v[e+32>>2]=v[c+32>>2];v[e+36>>2]=f;f=v[c+20>>2];v[e+16>>2]=v[c+16>>2];v[e+20>>2]=f;f=v[c+44>>2];v[e+40>>2]=v[c+40>>2];v[e+44>>2]=f;f=v[c+28>>2];v[e+24>>2]=v[c+24>>2];v[e+28>>2]=f;f=v[c+12>>2];v[e+8>>2]=v[c+8>>2];v[e+12>>2]=f;c=B(o&255,48)+b|0;f=v[c+4>>2];e=v[a+76>>2];v[e+48>>2]=v[c>>2];v[e+52>>2]=f;j=v[c+20>>2];f=e- -64|0;v[f>>2]=v[c+16>>2];v[f+4>>2]=j;f=v[c+36>>2];v[e+80>>2]=v[c+32>>2];v[e+84>>2]=f;f=v[c+12>>2];v[e+56>>2]=v[c+8>>2];v[e+60>>2]=f;f=v[c+28>>2];v[e+72>>2]=v[c+24>>2];v[e+76>>2]=f;f=v[c+44>>2];v[e+88>>2]=v[c+40>>2];v[e+92>>2]=f;c=B(l&255,48)+b|0;f=v[c+12>>2];e=v[a+76>>2];v[e+104>>2]=v[c+8>>2];v[e+108>>2]=f;f=v[c+44>>2];v[e+136>>2]=v[c+40>>2];v[e+140>>2]=f;f=v[c+4>>2];v[e+96>>2]=v[c>>2];v[e+100>>2]=f;f=v[c+20>>2];v[e+112>>2]=v[c+16>>2];v[e+116>>2]=f;f=v[c+28>>2];v[e+120>>2]=v[c+24>>2];v[e+124>>2]=f;f=v[c+36>>2];v[e+128>>2]=v[c+32>>2];v[e+132>>2]=f;l=r&255;break d}L=k&-2;f=-1;e=0;g=0;while(1){i=z[(B(w[e+j|0],48)+b|0)+44>>2];q=!(ii);i=q?h:i;M=e|1;h=z[(B(w[M+j|0],48)+b|0)+44>>2];x=!(i>h)|!(d>h);f=x?q?f:e:M;h=x?i:h;e=e+2|0;g=g+2|0;if((L|0)!=(g|0)){continue}break}}if(I){i=z[(B(w[e+j|0],48)+b|0)+44>>2];f=h>i?i>>0>=k>>>0){break e}e=f+j|0;m=w[e|0];t[e|0]=s}f=B(m,48)+b|0;g=v[f+4>>2];e=v[a+76>>2];v[e>>2]=v[f>>2];v[e+4>>2]=g;g=v[f+44>>2];v[e+40>>2]=v[f+40>>2];v[e+44>>2]=g;g=v[f+36>>2];v[e+32>>2]=v[f+32>>2];v[e+36>>2]=g;g=v[f+28>>2];v[e+24>>2]=v[f+24>>2];v[e+28>>2]=g;g=v[f+20>>2];v[e+16>>2]=v[f+16>>2];v[e+20>>2]=g;g=v[f+12>>2];v[e+8>>2]=v[f+8>>2];v[e+12>>2]=g;m=o&255;h=z[(B(m,48)+b|0)+44>>2];h:{if(!(d>2];s=!(ii);i=s?h:i;L=e|1;h=z[(B(w[L+j|0],48)+b|0)+44>>2];q=!(i>h)|!(d>h);f=q?s?f:e:L;h=q?i:h;e=e+2|0;g=g+2|0;if((I|0)!=(g|0)){continue}break}}if(x){i=z[(B(w[e+j|0],48)+b|0)+44>>2];f=h>i?i>>0>=k>>>0){break h}e=f+j|0;m=w[e|0];t[e|0]=o}e=B(m,48)+b|0;g=v[e+4>>2];f=v[a+76>>2];v[f+48>>2]=v[e>>2];v[f+52>>2]=g;g=v[e+44>>2];v[f+88>>2]=v[e+40>>2];v[f+92>>2]=g;g=v[e+36>>2];v[f+80>>2]=v[e+32>>2];v[f+84>>2]=g;g=v[e+28>>2];v[f+72>>2]=v[e+24>>2];v[f+76>>2]=g;o=v[e+20>>2];g=f- -64|0;v[g>>2]=v[e+16>>2];v[g+4>>2]=o;g=v[e+12>>2];v[f+56>>2]=v[e+8>>2];v[f+60>>2]=g;o=l&255;h=z[(B(o,48)+b|0)+44>>2];j:{if(!(d>2];s=!(ii);i=s?h:i;I=e|1;h=z[(B(w[I+j|0],48)+b|0)+44>>2];m=!(i>h)|!(d>h);f=m?s?f:e:I;h=m?i:h;e=e+2|0;g=g+2|0;if((x|0)!=(g|0)){continue}break}}if(q){i=z[(B(w[e+j|0],48)+b|0)+44>>2];f=h>i?i>>0>=k>>>0){break j}e=f+j|0;o=w[e|0];t[e|0]=l}f=B(o,48)+b|0;g=v[f+4>>2];e=v[a+76>>2];v[e+96>>2]=v[f>>2];v[e+100>>2]=g;g=v[f+44>>2];v[e+136>>2]=v[f+40>>2];v[e+140>>2]=g;g=v[f+36>>2];v[e+128>>2]=v[f+32>>2];v[e+132>>2]=g;g=v[f+28>>2];v[e+120>>2]=v[f+24>>2];v[e+124>>2]=g;g=v[f+20>>2];v[e+112>>2]=v[f+16>>2];v[e+116>>2]=g;g=v[f+12>>2];v[e+104>>2]=v[f+8>>2];v[e+108>>2]=g;l=r&255;h=z[(B(l,48)+b|0)+44>>2];if(!(d>2];c=!(ii);i=c?h:i;q=e|1;h=z[(B(w[q+j|0],48)+b|0)+44>>2];o=!(i>h)|!(d>h);f=o?c?f:e:q;h=o?i:h;e=e+2|0;g=g+2|0;if((m|0)!=(g|0)){continue}break}}if(s){p=d;d=z[(B(w[e+j|0],48)+b|0)+44>>2];f=dd?e:f:f}if(f>>>0>=k>>>0){break d}c=f+j|0;l=w[c|0];t[c|0]=r}c=v[a+76>>2];a=B(l,48)+b|0;b=v[a+4>>2];v[c+144>>2]=v[a>>2];v[c+148>>2]=b;b=v[a+44>>2];v[c+184>>2]=v[a+40>>2];v[c+188>>2]=b;b=v[a+36>>2];v[c+176>>2]=v[a+32>>2];v[c+180>>2]=b;b=v[a+28>>2];v[c+168>>2]=v[a+24>>2];v[c+172>>2]=b;b=v[a+20>>2];v[c+160>>2]=v[a+16>>2];v[c+164>>2]=b;b=v[a+12>>2];v[c+152>>2]=v[a+8>>2];v[c+156>>2]=b}function ry(a,b,c,d,e){var f=0,g=0,h=C(0),i=0,j=C(0),k=C(0),l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=0,s=C(0),A=C(0),D=0,E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=0,M=0,N=0,O=0,P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0);i=xa-560|0;xa=i;E=v[a+16>>2];g=v[a+116>>2];a:{if(!g){v[E+20>>2]=0;v[E+24>>2]=0;v[E+28>>2]=0;f=0;break a}b:{if(!(x[E+8>>1]!=65535|x[E+10>>1]!=65535)){O=96;L=0;break b}O=160;L=1}g=B(g,O);b=Ba[v[v[b>>2]>>2]](b,g- -64|0)|0;f=0;if(b+1>>>0<2){break a}v[E+24>>2]=b;f=g+48|0;u[E+22>>1]=f>>>4;g=v[a+132>>2];u[E+20>>1]=8;v[E+28>>2]=g;J9(b,0,f);f=v[a+116>>2];b=v[E+24>>2];t[b+2|0]=0;t[b+1|0]=f;t[b|0]=L?4:2;j=z[a>>2];z[b+32>>2]=j;z[b+36>>2]=z[a+4>>2];h=z[a+8>>2];z[b+40>>2]=-h;z[b+44>>2]=-z[a+12>>2];z[b+16>>2]=z[a+140>>2];z[b+20>>2]=z[a+144>>2];z[b+24>>2]=z[a+148>>2];p=z[a+120>>2];z[b+4>>2]=p*c;z[b+8>>2]=z[a+124>>2]*c;t[b+3|0]=p!=C(34028234663852886e22)|z[a+124>>2]!=C(34028234663852886e22);k=j;g=v[a+28>>2];j=z[g+12>>2];z[b+12>>2]=k*j;k=h;l=v[a+32>>2];h=z[l+12>>2];z[b+28>>2]=k*h;py(i+128|0,v[a+112>>2],i+368|0,i+176|0,f,g+32|0,l+32|0,j,h,a,w[a+136|0]!=0|L,w[a+137|0],1);b=b+48|0;if(v[a+116>>2]){T=c>2];j=w[f+76|0]&32?w[a+138|0]?T:C(1):C(1);p=z[a+128>>2];c:{if(!L){l=M<<4;g=l+(i+368|0)|0;h=z[g>>2];k=z[g+4>>2];m=z[g+8>>2];g=l+(i+176|0)|0;o=z[g>>2];F=z[g+4>>2];G=z[g+8>>2];P=z[f+44>>2];Q=z[f+60>>2];q=z[f>>2];z[b>>2]=q;I=z[f+4>>2];z[b+4>>2]=I;H=z[f+8>>2];z[b+8>>2]=H;s=z[f+32>>2];z[b+16>>2]=s;K=z[f+36>>2];z[b+20>>2]=K;A=z[f+40>>2];z[b+84>>2]=j*Q;z[b+80>>2]=j*P;z[b+56>>2]=G;z[b+52>>2]=F;z[b+48>>2]=o;z[b+40>>2]=m;z[b+36>>2]=k;z[b+32>>2]=h;z[b+24>>2]=A;v[b+88>>2]=0;v[b+92>>2]=0;z[b+64>>2]=z[f+16>>2];z[b+68>>2]=z[f+20>>2];z[b+72>>2]=z[f+24>>2];g=v[a+28>>2];l=v[a+32>>2];j=C(C(C(C(C(C(H*H)+C(C(q*q)+C(I*I)))*z[g+12>>2])*z[a>>2])+C(z[a+4>>2]*C(C(m*m)+C(C(h*h)+C(k*k)))))+C(C(C(C(C(A*A)+C(C(s*s)+C(K*K)))*z[l+12>>2])*z[a+8>>2])+C(z[a+12>>2]*C(C(G*G)+C(C(o*o)+C(F*F))))));k=C(C(C(C(z[g+8>>2]*z[f+8>>2])+C(C(z[g>>2]*z[f>>2])+C(z[g+4>>2]*z[f+4>>2])))+C(C(z[g+24>>2]*z[f+24>>2])+C(C(z[g+16>>2]*z[f+16>>2])+C(z[g+20>>2]*z[f+20>>2]))))-C(C(C(z[l+8>>2]*z[f+40>>2])+C(C(z[l>>2]*z[f+32>>2])+C(z[l+4>>2]*z[f+36>>2])))+C(C(z[l+24>>2]*z[f+56>>2])+C(C(z[l+16>>2]*z[f+48>>2])+C(z[l+20>>2]*z[f+52>>2])))));m=k;break c}h=z[f+44>>2];k=z[f+60>>2];z[b>>2]=z[f>>2];z[b+4>>2]=z[f+4>>2];z[b+8>>2]=z[f+8>>2];z[b+16>>2]=z[f+32>>2];z[b+20>>2]=z[f+36>>2];z[b+24>>2]=z[f+40>>2];z[b+32>>2]=z[f+16>>2];z[b+36>>2]=z[f+20>>2];z[b+40>>2]=z[f+24>>2];z[b+48>>2]=z[f+48>>2];z[b+52>>2]=z[f+52>>2];m=z[f+56>>2];z[b+84>>2]=j*k;z[b+80>>2]=j*h;z[b+56>>2]=m;v[b+88>>2]=0;v[b+92>>2]=0;g=v[a+20>>2];l=v[a+28>>2];u[i+120>>1]=x[E+8>>1];v[i+116>>2]=l;v[i+112>>2]=g;g=v[a+24>>2];l=v[a+32>>2];u[i+104>>1]=x[E+10>>1];v[i+100>>2]=l;v[i+96>>2]=g;l=i- -64|0;J=i+112|0;my(l,b,b+32|0,J);j=z[b+20>>2];h=z[b+16>>2];z[i+24>>2]=-z[b+24>>2];z[i+20>>2]=-j;z[i+16>>2]=-h;j=z[b+52>>2];h=z[b+48>>2];z[i+8>>2]=-z[b+56>>2];z[i+4>>2]=-j;z[i>>2]=-h;n=i+32|0;N=i+96|0;my(n,i+16|0,i,N);r=b+96|0;j=z[a>>2];h=z[a+4>>2];D=b+128|0;k=z[a+8>>2];m=z[a+12>>2];g=xa-32|0;xa=g;S=x[J+8>>1];d:{if((S|0)==65535){A=z[l>>2];G=z[l+4>>2];o=z[v[J+4>>2]+12>>2];F=C(C(o*z[l+8>>2])*j);z[r+8>>2]=F;G=C(C(o*G)*j);z[r+4>>2]=G;j=C(C(o*A)*j);z[r>>2]=j;A=z[l+20>>2];q=z[l+16>>2];o=C(z[l+24>>2]*h);z[r+24>>2]=o;A=C(A*h);z[r+20>>2]=A;h=C(q*h);z[r+16>>2]=h;break d}J=v[J>>2];o=z[l+20>>2];F=z[l>>2];G=z[l+4>>2];A=z[l+8>>2];q=z[l+16>>2];z[g+24>>2]=z[l+24>>2]*h;z[g+20>>2]=o*h;v[g+28>>2]=0;v[g+12>>2]=0;z[g+16>>2]=q*h;z[g+8>>2]=A*j;z[g+4>>2]=G*j;z[g>>2]=F*j;Ba[v[v[J>>2]+104>>2]](J,S,e,g,r);o=z[r+24>>2];A=z[r+20>>2];h=z[r+16>>2];F=z[r+8>>2];G=z[r+4>>2];j=z[r>>2]}K=z[l+24>>2];P=z[l+20>>2];Q=z[l+16>>2];V=z[l+8>>2];W=z[l+4>>2];X=z[l>>2];r=x[N+8>>1];e:{if((r|0)==65535){s=z[n>>2];H=z[n+4>>2];q=z[v[N+4>>2]+12>>2];I=C(C(q*z[n+8>>2])*k);z[D+8>>2]=I;H=C(C(q*H)*k);z[D+4>>2]=H;k=C(C(q*s)*k);z[D>>2]=k;s=z[n+20>>2];R=z[n+16>>2];q=C(z[n+24>>2]*m);z[D+24>>2]=q;s=C(s*m);z[D+20>>2]=s;m=C(R*m);z[D+16>>2]=m;break e}l=v[N>>2];q=z[n+20>>2];I=z[n>>2];H=z[n+4>>2];s=z[n+8>>2];R=z[n+16>>2];z[g+24>>2]=z[n+24>>2]*m;z[g+20>>2]=q*m;v[g+28>>2]=0;v[g+12>>2]=0;z[g+16>>2]=R*m;z[g+8>>2]=s*k;z[g+4>>2]=H*k;z[g>>2]=I*k;Ba[v[v[l>>2]+104>>2]](l,r,e,g,D);q=z[D+24>>2];s=z[D+20>>2];m=z[D+16>>2];I=z[D+8>>2];H=z[D+4>>2];k=z[D>>2]}xa=g+32|0;j=C(C(C(C(V*F)+C(C(X*j)+C(W*G)))+C(C(K*o)+C(C(Q*h)+C(P*A))))+C(C(C(z[n+8>>2]*I)+C(C(z[n>>2]*k)+C(z[n+4>>2]*H)))+C(C(z[n+24>>2]*q)+C(C(z[n+16>>2]*m)+C(z[n+20>>2]*s)))));z[b+64>>2]=z[f+16>>2];z[b+68>>2]=z[f+20>>2];z[b+72>>2]=z[f+24>>2];z[b>>2]=z[i+64>>2];z[b+4>>2]=z[i+68>>2];z[b+8>>2]=z[i+72>>2];z[b+32>>2]=z[i+80>>2];z[b+36>>2]=z[i+84>>2];z[b+40>>2]=z[i+88>>2];h=z[i+32>>2];k=z[i+36>>2];z[b+24>>2]=-z[i+40>>2];z[b+20>>2]=-k;z[b+16>>2]=-h;h=z[i+48>>2];k=z[i+52>>2];z[b+56>>2]=-z[i+56>>2];z[b+52>>2]=-k;z[b+48>>2]=-h;g=x[f+76>>1];f:{if(!(g&4|(g&3)==3|x[i+120>>1]==65535)){k=C(0);m=C(0);if(x[i+104>>1]!=65535){break f}}m=jy(i+112|0,f,f+16|0);h=jy(i+96|0,f+32|0,f+48|0);k=C(m-h);if(x[i+120>>1]==65535){break f}m=x[i+104>>1]==65535?C(-h):C(0)}p=p>C(9999999747378752e-21)?p:C(9999999747378752e-21)}p=j<=p?C(0):C(C(1)/j);h=z[f+12>>2];g=x[f+76>>1];g:{if(g&1){o=z[f+64>>2];F=z[f+68>>2];k=C(C(U*o)+C(F*c));o=C(C(C(F*z[f+28>>2])-C(h*o))*c);h:{if(g&2){j=C(C(1)/C(k+C(1)));h=C(p*j);p=C(p*C(-j));break h}h=j!=C(0)?C(C(1)/C(C(k*j)+C(1))):C(0);p=C(-h);j=h}z[b+60>>2]=C(1)-j;j=C(k*p);z[b+44>>2]=j;h=C(o*h);k=h;break g}v[b+60>>2]=1065353216;j=C(-p);z[b+44>>2]=j;i:{if(!(g&4)){break i}k=C(-k);if(!(k>z[f+68>>2])){break i}h=C(C(p*z[f+64>>2])*k);k=h;break g}k=C(p*C(z[f+28>>2]-C(h*d)));z[b+12>>2]=k;h=C(p*C(z[f+28>>2]-C(z[f+72>>2]*d)))}j=C(m*j);z[b+28>>2]=j+h;z[b+12>>2]=k+j;if(g&16){v[b+92>>2]=v[b+92>>2]|2}b=b+O|0;M=M+1|0;if(M>>>0>2]){continue}break}}v[b>>2]=0;v[b+4>>2]=0;f=v[a+116>>2]}xa=i+560|0;return f}function NC(a,b,c,d,e,f){var g=0,h=C(0),i=0,j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=0,q=C(0),r=0,s=C(0),t=C(0),u=C(0),w=C(0),x=0,A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0;r=xa-16|0;xa=r;b=b+36|0;j=v[b+(d<<2)>>2];i=v[b+(!d<<2)>>2];s=C(z[i+24>>2]+z[i+8>>2]);b=v[j+36>>2];l=C(s-C(z[b+24>>2]+z[b+8>>2]));k=C(l*l);l=C(z[i+16>>2]+z[i>>2]);m=C(l-C(z[b+16>>2]+z[b>>2]));o=C(m*m);m=C(z[i+20>>2]+z[i+4>>2]);h=C(m-C(z[b+20>>2]+z[b+4>>2]));k=C(k+C(o+C(h*h)));b=v[j+40>>2];h=C(s-C(z[b+24>>2]+z[b+8>>2]));o=C(h*h);h=C(l-C(z[b+16>>2]+z[b>>2]));q=C(h*h);h=C(m-C(z[b+20>>2]+z[b+4>>2]));b=v[(j+36|0)+((k>C(o+C(q+C(h*h))))<<2)>>2];d=v[b+40>>2];if(d){while(1){g=b+36|0;b=v[b+36>>2];h=C(s-C(z[b+24>>2]+z[b+8>>2]));k=C(h*h);h=C(l-C(z[b+16>>2]+z[b>>2]));o=C(h*h);h=C(m-C(z[b+20>>2]+z[b+4>>2]));k=C(k+C(o+C(h*h)));h=C(s-C(z[d+24>>2]+z[d+8>>2]));o=C(h*h);h=C(l-C(z[d+16>>2]+z[d>>2]));q=C(h*h);h=C(m-C(z[d+20>>2]+z[d+4>>2]));b=v[g+((k>C(o+C(q+C(h*h))))<<2)>>2];d=v[b+40>>2];if(d){continue}break}}a:{b:{j=v[c+4>>2];if(!j){d=0;break b}g=v[c>>2];d=0;while(1){if(v[g+(d<<2)>>2]==(b|0)){break b}d=d+1|0;if((j|0)!=(d|0)){continue}break}break a}if((d|0)==(j|0)){break a}j=j-1|0;v[c+4>>2]=j;g=d<<2;d=v[c>>2];v[g+d>>2]=v[d+(j<<2)>>2]}j=v[b+32>>2];v[r+12>>2]=j;I=v[j+36>>2];g=I;if((g|0)==(b|0)){g=v[j+40>>2]}d=v[g+20>>2];v[j+16>>2]=v[g+16>>2];v[j+20>>2]=d;d=v[g+28>>2];v[j+24>>2]=v[g+24>>2];v[j+28>>2]=d;d=v[g+4>>2];v[j>>2]=v[g>>2];v[j+4>>2]=d;d=v[g+12>>2];v[j+8>>2]=v[g+8>>2];v[j+12>>2]=d;d=v[g+40>>2];p=v[g+36>>2];v[j+36>>2]=p;c:{if(!d){d=0;v[j+40>>2]=0;d:{e:{p=v[c+4>>2];if(!p){break e}j=v[c>>2];while(1){if(v[j+(d<<2)>>2]==(g|0)){break e}d=d+1|0;if((p|0)!=(d|0)){continue}break}break d}if((d|0)==(p|0)){break d}p=p-1|0;v[c+4>>2]=p;g=d<<2;d=v[c>>2];v[g+d>>2]=v[d+(p<<2)>>2]}if((v[c+8>>2]&2147483647)>>>0<=p>>>0){OC(c,r+12|0);break c}v[v[c>>2]+(p<<2)>>2]=v[r+12>>2];v[c+4>>2]=p+1;break c}v[p+32>>2]=j;d=v[g+40>>2];v[j+40>>2]=d;v[d+32>>2]=j}d=v[v[r+12>>2]+32>>2];if(d){PC(d,e)}d=v[i+40>>2];f:{if(!d){v[r+8>>2]=i;j=0;p=0;break f}s=C(z[b+16>>2]+z[b>>2]);l=C(z[b+24>>2]+z[b+8>>2]);m=C(z[b+20>>2]+z[b+4>>2]);h=z[d+24>>2];o=z[d+20>>2];j=v[i+36>>2];k=z[j+24>>2];q=z[j+20>>2];t=z[d+8>>2];A=z[d+4>>2];B=z[d>>2];D=z[d+16>>2];E=z[j+8>>2];F=z[j+4>>2];G=z[j>>2];H=z[j+16>>2];p=0;g=1;j=0;g:{if(!f){break g}u=C(C(C(D-B)*C(o-A))*C(h-t));w=C(C(C(H-G)*C(q-F))*C(k-E));if(!(u>C(w*C(3)))){j=0;if(!(w>C(u*C(3)))){break g}}n=1;g=0;j=!(w>u)}d=i+36|0;k=C(l-C(k+E));u=C(k*k);k=C(s-C(H+G));w=C(k*k);k=C(m-C(q+F));h=C(l-C(h+t));q=C(h*h);h=C(s-C(D+B));t=C(h*h);h=C(m-C(o+A));x=C(u+C(w+C(k*k)))>C(q+C(t+C(h*h)));if(!g){g=v[v[d+(j<<2)>>2]+40>>2];p=g?i:0;f=!g&f}i=v[d+(x<<2)>>2];v[r+8>>2]=i;d=v[i+40>>2];if(!d){break f}while(1){h=z[d+24>>2];o=z[d+20>>2];g=v[i+36>>2];k=z[g+24>>2];q=z[g+20>>2];t=z[d+8>>2];A=z[d+4>>2];B=z[d>>2];D=z[d+16>>2];E=z[g+8>>2];F=z[g+4>>2];G=z[g>>2];H=z[g+16>>2];h:{if(!(f&1)){break h}u=C(C(C(D-B)*C(o-A))*C(h-t));w=C(C(C(H-G)*C(q-F))*C(k-E));if(!(u>C(w*C(3))|w>C(u*C(3)))){break h}n=1;j=!(w>u)}d=i+36|0;k=C(l-C(k+E));u=C(k*k);k=C(s-C(H+G));w=C(k*k);k=C(m-C(q+F));h=C(l-C(h+t));q=C(h*h);h=C(s-C(D+B));t=C(h*h);h=C(m-C(o+A));g=C(u+C(w+C(k*k)))>C(q+C(t+C(h*h)));i:{if(p){break i}if(!n){p=0;break i}p=i;i=v[v[d+(j<<2)>>2]+40>>2];p=i?p:0;f=!i&f}i=v[d+(g<<2)>>2];v[r+8>>2]=i;d=v[i+40>>2];if(d){continue}break}}f=v[b+36>>2];g=v[f>>2];d=v[i+36>>2];j:{if(g+v[d>>2]>>>0<=4){if(g){g=0;while(1){n=v[(f+(g<<2)|0)+4>>2];x=v[d>>2];v[d>>2]=x+1;v[(d+(x<<2)|0)+4>>2]=n;g=g+1|0;if(g>>>0>2]){continue}break}}g=v[c>>2];d=0;k:{l:{m:{f=v[c+4>>2];if(!f){break m}while(1){if(v[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>=(v[c+8>>2]&2147483647)>>>0){OC(c,r+8|0);break k}v[g+(f<<2)>>2]=i;v[c+4>>2]=f+1}d=v[b+36>>2];if(d){v[a+284>>2]=v[a+284>>2]-1;v[d>>2]=v[a+292>>2];v[a+292>>2]=d}s=z[b>>2];l=z[b+4>>2];m=z[b+8>>2];d=v[r+8>>2];h=z[d+12>>2];o=z[b+12>>2];z[d+12>>2]=h>2];z[d+8>>2]=h>2];z[d+4>>2]=l>m?m:l;l=z[d>>2];z[d>>2]=l>2];l=z[b+20>>2];m=z[d+24>>2];h=z[b+24>>2];o=z[d+16>>2];k=z[b+16>>2];f=v[r+8>>2];q=z[d+28>>2];t=z[b+28>>2];z[f+28>>2]=q>t?q:t;z[f+24>>2]=h>2]=l>2]=k>2];if(!g){KC(a+296|0);g=v[a+584>>2]}v[a+584>>2]=v[g>>2];v[a+576>>2]=v[a+576>>2]+1;v[r+4>>2]=g;f=g+48|0;v[r>>2]=f;v[g+80>>2]=i;v[g+32>>2]=i;n=v[i+36>>2];d=0;v[g+40>>2]=0;v[g+36>>2]=n;n=v[i+4>>2];v[g>>2]=v[i>>2];v[g+4>>2]=n;x=i+8|0;J=v[x+4>>2];n=g+8|0;v[n>>2]=v[x>>2];v[n+4>>2]=J;n=v[i+20>>2];v[g+16>>2]=v[i+16>>2];v[g+20>>2]=n;n=v[i+28>>2];v[g+24>>2]=v[i+24>>2];v[g+28>>2]=n;n=v[b+36>>2];v[g+88>>2]=0;v[g+84>>2]=n;n=v[b+4>>2];v[g+48>>2]=v[b>>2];v[g+52>>2]=n;x=v[b+12>>2];n=g+56|0;v[n>>2]=v[b+8>>2];v[n+4>>2]=x;x=v[b+20>>2];n=g- -64|0;v[n>>2]=v[b+16>>2];v[n+4>>2]=x;n=v[b+28>>2];v[g+72>>2]=v[b+24>>2];v[g+76>>2]=n;v[i+40>>2]=f;v[i+36>>2]=g;s=z[g+52>>2];l=z[g+56>>2];m=z[g+8>>2];h=z[g+48>>2];o=z[g>>2];k=z[g+4>>2];q=z[g+12>>2];t=z[g+60>>2];z[i+12>>2]=q>2]=l>m?m:l;z[i+4>>2]=k>2]=h>o?o:h;f=v[r>>2];s=z[f+20>>2];g=v[r+4>>2];l=z[g+20>>2];m=z[f+24>>2];h=z[g+24>>2];o=z[f+28>>2];k=z[g+28>>2];b=v[r+8>>2];q=z[g+16>>2];t=z[f+16>>2];z[b+16>>2]=q>t?q:t;z[b+28>>2]=k>o?k:o;z[b+24>>2]=h>m?h:m;z[b+20>>2]=l>s?l:s;MC(b);n:{o:{i=v[c+4>>2];if(!i){break o}f=v[c>>2];while(1){if((b|0)==v[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;v[c+4>>2]=i;b=v[c>>2];v[b+(d<<2)>>2]=v[b+(i<<2)>>2]}b=v[c+8>>2]&2147483647;p:{if(i>>>0>=b>>>0){OC(c,r+4|0);b=v[c+8>>2]&2147483647;d=v[c+4>>2];break p}v[v[c>>2]+(i<<2)>>2]=v[r+4>>2];d=i+1|0;v[c+4>>2]=d}if(b>>>0<=d>>>0){OC(c,r);break j}v[v[c>>2]+(d<<2)>>2]=v[r>>2];v[c+4>>2]=d+1}if(I){v[a+576>>2]=v[a+576>>2]-1;v[I>>2]=v[a+584>>2];v[a+584>>2]=I}if(p){NC(a,p,c,j,e,0)}xa=r+16|0}function H2(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=C(0),Z=C(0);j=xa-896|0;xa=j;a:{b:{if(w[i|0]&16){break b}m=z[b+4>>2];n=C(m+m);l=z[b+8>>2];r=C(n*l);q=z[b>>2];o=C(q+q);E=z[b+12>>2];A=C(o*E);z[j+492>>2]=r-A;z[j+484>>2]=r+A;q=C(C(1)-C(q*o));r=C(m*n);z[j+496>>2]=q-r;k=q;q=C(l+l);A=C(l*q);z[j+480>>2]=k-A;l=C(o*l);n=C(n*E);z[j+488>>2]=l+n;m=C(o*m);o=C(q*E);z[j+476>>2]=m-o;z[j+472>>2]=l-n;z[j+468>>2]=m+o;z[j+464>>2]=C(C(1)-r)-A;k=G_(a,a+12|0,b+16|0,c,j+464|0,0,0);l=z[a+24>>2];if(!(k>2]=0;e=z[d>>2];l=z[d+4>>2];z[h+8>>2]=-z[d+8>>2];z[h+4>>2]=-l;z[h>>2]=-e;c=1;break a}o=z[a+16>>2];n=z[a+20>>2];L=z[a>>2];M=z[a+12>>2];q=z[a+4>>2];E=z[a+8>>2];l=z[c>>2];m=z[c+4>>2];r=z[c+8>>2];z[j+28>>2]=r;z[j+24>>2]=m;z[j+20>>2]=l;z[j+16>>2]=-r;z[j+12>>2]=-m;z[j+8>>2]=-l;t[j+4|0]=1;c=u9(3024,5770,198);v[j>>2]=c;N=C(n-E);Q=C(C(o-q)*C(.5));AV(j+8|0,j+368|0);l=z[b+12>>2];m=C(C(l*l)+C(-.5));E=z[b+24>>2];r=z[b+20>>2];A=z[b+16>>2];o=z[b+4>>2];D=C(-o);n=z[b>>2];x=C(-n);q=z[b+8>>2];y=C(-q);i=0;while(1){H=j+368|0;W=B(i,3)+103520|0;b=H+B(w[W+1|0],12)|0;F=z[b+8>>2];O=z[b+4>>2];P=z[b>>2];b=B(w[W+2|0],12)+H|0;G=z[b+8>>2];J=z[b+4>>2];K=z[b>>2];b=(j+464|0)+B(i,36)|0;H=B(w[W|0],12)+H|0;k=z[H+8>>2];k=C(k+k);p=z[H>>2];p=C(p+p);s=z[H+4>>2];s=C(s+s);I=C(C(q*k)+C(C(n*p)+C(s*o)));z[b+8>>2]=E+C(C(q*I)+C(C(k*m)+C(l*C(C(n*s)+C(p*D)))));z[b+4>>2]=r+C(C(o*I)+C(C(s*m)+C(l*C(C(q*p)+C(k*x)))));z[b>>2]=A+C(C(n*I)+C(C(p*m)+C(l*C(C(o*k)+C(s*y)))));k=C(G+G);p=C(K+K);s=C(J+J);G=C(C(q*k)+C(C(n*p)+C(s*o)));z[b+32>>2]=E+C(C(q*G)+C(C(k*m)+C(l*C(C(n*s)+C(p*D)))));z[b+28>>2]=r+C(C(o*G)+C(C(s*m)+C(l*C(C(q*p)+C(k*x)))));z[b+24>>2]=A+C(C(n*G)+C(C(p*m)+C(l*C(C(o*k)+C(s*y)))));k=C(F+F);p=C(P+P);s=C(O+O);F=C(C(q*k)+C(C(n*p)+C(s*o)));z[b+20>>2]=E+C(C(q*F)+C(C(k*m)+C(l*C(C(n*s)+C(p*D)))));z[b+16>>2]=r+C(C(o*F)+C(C(s*m)+C(l*C(C(q*p)+C(k*x)))));z[b+12>>2]=A+C(C(n*F)+C(C(p*m)+C(l*C(C(o*k)+C(s*y)))));i=i+1|0;if((i|0)!=12){continue}break}R=C(N*C(.5));S=C(C(M-L)*C(.5));r=z[d>>2];i=0;b=j+32|0;while(1){H=(j+464|0)+B(i,36)|0;p=z[H+12>>2];x=z[H>>2];l=C(p-x);P=z[H+28>>2];y=z[H+4>>2];m=C(P-y);O=z[H+24>>2];o=C(O-x);s=z[H+16>>2];n=C(s-y);X=C(C(l*m)-C(o*n));q=n;G=z[H+32>>2];k=z[H+8>>2];n=C(G-k);D=m;F=z[H+20>>2];m=C(F-k);Y=C(C(q*n)-C(D*m));Z=C(C(m*o)-C(n*l));if(!(C(C(X*z[d+8>>2])+C(C(Y*r)+C(z[d+4>>2]*Z)))>C(0))){r=C(G-R);A=C(P-Q);D=C(O-S);l=C(F-R);m=C(s-Q);o=C(p-S);n=C(k-R);q=C(y-Q);E=C(x-S);L=C(S+x);x=L;M=C(Q+y);y=M;N=C(R+k);k=N;T=C(S+p);p=T;U=C(Q+s);s=U;V=C(R+F);F=V;J=C(S+O);O=J;K=C(Q+P);P=K;I=C(R+G);G=I;if(!(C(C(X*R)+C(C(Y*S)+C(Q*Z)))>=C(0))){y=q;k=n;p=o;s=m;F=l;O=D;P=A;G=r;x=E}z[c+24>>2]=O;z[c+12>>2]=p;z[c+8>>2]=k;z[c+4>>2]=y;z[c>>2]=x;z[c+32>>2]=G;z[c+28>>2]=P;z[c+20>>2]=F;z[c+16>>2]=s;v[b>>2]=i;z[c+68>>2]=I;z[c- -64>>2]=K;z[c+60>>2]=J;z[c+56>>2]=V;z[c+52>>2]=U;z[c+48>>2]=T;z[c+44>>2]=l;z[c+40>>2]=m;z[c+36>>2]=o;p=C(T-o);x=C(K-m);y=C(J-o);k=C(U-m);G=C(C(C(p*x)-C(y*k))*z[d+8>>2]);F=k;k=C(I-l);s=C(V-l);if(C(G+C(C(C(C(F*k)-C(x*s))*z[d>>2])+C(C(C(s*y)-C(k*p))*z[d+4>>2])))>C(0)){z[c+68>>2]=V;z[c+64>>2]=U;z[c+60>>2]=T;z[c+56>>2]=I;z[c+52>>2]=K;z[c+48>>2]=J}v[b+4>>2]=i;z[c+104>>2]=r;z[c+100>>2]=A;z[c+96>>2]=D;z[c+92>>2]=I;z[c+88>>2]=K;z[c+84>>2]=J;z[c+80>>2]=l;z[c+76>>2]=m;z[c+72>>2]=o;p=C(A-m);s=C(D-o);G=C(C(C(y*p)-C(s*x))*z[d+8>>2]);F=x;x=C(r-l);if(C(G+C(C(C(C(F*x)-C(p*k))*z[d>>2])+C(C(C(k*s)-C(x*y))*z[d+4>>2])))>C(0)){z[c+104>>2]=I;z[c+100>>2]=K;z[c+96>>2]=J;z[c+92>>2]=r;z[c+88>>2]=A;z[c+84>>2]=D}v[b+8>>2]=i;z[c+140>>2]=I;z[c+136>>2]=K;z[c+132>>2]=J;z[c+128>>2]=r;z[c+124>>2]=A;z[c+120>>2]=D;z[c+116>>2]=n;z[c+112>>2]=q;z[c+108>>2]=E;p=C(D-E);x=C(K-q);y=C(J-E);k=C(A-q);G=C(C(C(p*x)-C(y*k))*z[d+8>>2]);F=k;k=C(I-n);s=C(r-n);if(C(G+C(C(C(C(F*k)-C(x*s))*z[d>>2])+C(C(C(s*y)-C(k*p))*z[d+4>>2])))>C(0)){z[c+140>>2]=r;z[c+136>>2]=A;z[c+132>>2]=D;z[c+128>>2]=I;z[c+124>>2]=K;z[c+120>>2]=J}v[b+12>>2]=i;z[c+176>>2]=N;z[c+172>>2]=M;z[c+168>>2]=L;z[c+164>>2]=I;z[c+160>>2]=K;z[c+156>>2]=J;z[c+152>>2]=n;z[c+148>>2]=q;z[c+144>>2]=E;r=C(M-q);A=C(L-E);D=C(N-n);if(C(C(C(C(y*r)-C(A*x))*z[d+8>>2])+C(C(C(C(x*D)-C(r*k))*z[d>>2])+C(C(C(k*A)-C(D*y))*z[d+4>>2])))>C(0)){z[c+176>>2]=I;z[c+172>>2]=K;z[c+168>>2]=J;z[c+164>>2]=N;z[c+160>>2]=M;z[c+156>>2]=L}v[b+16>>2]=i;z[c+212>>2]=l;z[c+208>>2]=m;z[c+204>>2]=o;z[c+200>>2]=V;z[c+196>>2]=U;z[c+192>>2]=T;z[c+188>>2]=N;z[c+184>>2]=M;z[c+180>>2]=L;x=C(T-L);r=C(m-M);A=C(o-L);D=C(U-M);p=C(C(C(x*r)-C(A*D))*z[d+8>>2]);k=D;D=C(l-N);y=C(V-N);if(C(p+C(C(C(C(k*D)-C(r*y))*z[d>>2])+C(C(C(y*A)-C(D*x))*z[d+4>>2])))>C(0)){z[c+212>>2]=V;z[c+208>>2]=U;z[c+204>>2]=T;z[c+200>>2]=l;z[c+196>>2]=m;z[c+192>>2]=o}v[b+20>>2]=i;z[c+248>>2]=n;z[c+244>>2]=q;z[c+240>>2]=E;z[c+236>>2]=l;z[c+232>>2]=m;z[c+228>>2]=o;z[c+224>>2]=N;z[c+220>>2]=M;z[c+216>>2]=L;x=C(q-M);y=C(E-L);p=C(C(C(A*x)-C(y*r))*z[d+8>>2]);k=C(n-N);x=C(C(r*k)-C(x*D));r=z[d>>2];if(C(p+C(C(x*r)+C(C(C(D*y)-C(k*A))*z[d+4>>2])))>C(0)){z[c+248>>2]=l;z[c+244>>2]=m;z[c+240>>2]=o;z[c+236>>2]=n;z[c+232>>2]=q;z[c+228>>2]=E;r=z[d>>2]}v[b+24>>2]=i;c=c+252|0;b=b+28|0}i=i+1|0;if((i|0)!=12){continue}break}v[j+488>>2]=0;v[j+492>>2]=0;v[j+496>>2]=0;v[j+500>>2]=0;v[j+480>>2]=0;v[j+484>>2]=0;u[j+476>>1]=0;v[j+472>>2]=-1;v[j+464>>2]=0;v[j+468>>2]=0;v[j+504>>2]=2139095039;i=v[j>>2];l=z[a+12>>2];m=z[a>>2];o=z[a+16>>2];n=z[a+4>>2];z[j+376>>2]=C(z[a+8>>2]+z[a+20>>2])*C(.5);z[j+372>>2]=C(n+o)*C(.5);z[j+368>>2]=C(m+l)*C(.5);c=b;b=j+32|0;c=M2(c-b>>2,i,j+368|0,z[a+24>>2],d,e,0,j+464|0,b,0,0,0,0);if(c){z[f>>2]=z[j+480>>2];z[f+4>>2]=z[j+484>>2];z[f+8>>2]=z[j+488>>2];e=z[j+504>>2];z[h>>2]=z[j+492>>2];z[h+4>>2]=z[j+496>>2];z[h+8>>2]=z[j+500>>2]}if(w[j+4|0]){v9(i)}z[g>>2]=e}xa=j+896|0;return c}function rO(a,b){var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=0,E=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0);d=xa-224|0;xa=d;qO(a);k=v[a+12>>2];q=v[a+8>>2];c=v[a+64>>2];m=v[a+60>>2];B=(c|0)<(m|0);e=B?k:q;z[d+192>>2]=z[e+36>>2];z[d+196>>2]=z[e+40>>2];z[d+200>>2]=z[e+44>>2];z[d+204>>2]=z[e+48>>2];f=z[e+52>>2];z[d+208>>2]=f;g=z[e+56>>2];z[d+212>>2]=g;h=z[e+60>>2];z[d+216>>2]=h;z[d+160>>2]=z[e+8>>2];z[d+164>>2]=z[e+12>>2];z[d+168>>2]=z[e+16>>2];z[d+172>>2]=z[e+20>>2];i=z[e+24>>2];z[d+176>>2]=i;l=z[e+28>>2];z[d+180>>2]=l;j=z[e+32>>2];z[d+184>>2]=j;h=C(h-j);z[d+88>>2]=h;i=C(f-i);z[d+80>>2]=i;g=C(g-l);z[d+84>>2]=g;k=B?q:k;z[d+128>>2]=z[k+36>>2];z[d+132>>2]=z[k+40>>2];z[d+136>>2]=z[k+44>>2];z[d+140>>2]=z[k+48>>2];f=z[k+52>>2];z[d+144>>2]=f;l=z[k+56>>2];z[d+148>>2]=l;j=z[k+60>>2];z[d+152>>2]=j;z[d+96>>2]=z[k+8>>2];z[d+100>>2]=z[k+12>>2];z[d+104>>2]=z[k+16>>2];z[d+108>>2]=z[k+20>>2];r=z[k+24>>2];z[d+112>>2]=r;o=z[k+28>>2];z[d+116>>2]=o;n=z[k+32>>2];z[d+120>>2]=n;j=C(j-n);z[d+72>>2]=j;r=C(f-r);z[d+64>>2]=r;l=C(l-o);z[d+68>>2]=l;f=z[v[a+52>>2]+52>>2];o=z[k+4>>2];n=z[e+4>>2];v[a+104>>2]=0;h=C(h-j);j=C(h*h);h=C(i-r);g=C(g-l);j=C(j+C(C(h*h)+C(g*g)));g=C(n+o);r=b>g?g:b;a:{if(j<=C(r*r)){v[a+28>>2]=2139095039;b=C(34028234663852886e22);break a}b=f>C(0)?f:C(0);b:{c:{switch(((c|0)>(m|0)?c:m)-5|0){case 0:c=xa-400|0;xa=c;m=v[k>>2];q=m+4|0;JX(c+320|0,q,m+16|0);f=z[d+184>>2];g=z[d+216>>2];h=z[d+176>>2];i=z[d+208>>2];l=C(z[d+212>>2]-z[d+180>>2]);z[c+308>>2]=l;f=C(g-f);z[c+312>>2]=f;h=C(i-h);z[c+304>>2]=h;g=z[d+116>>2];k=d+128|0;i=z[k+20>>2];j=z[d+112>>2];o=z[k+16>>2];n=C(z[k+24>>2]-z[d+120>>2]);z[c+296>>2]=n;g=C(i-g);z[c+292>>2]=g;i=C(o-j);z[c+288>>2]=i;f=C(f-n);z[c+280>>2]=f;g=C(l-g);z[c+276>>2]=g;h=C(h-i);z[c+272>>2]=h;z[c+264>>2]=f;z[c+260>>2]=g;z[c+256>>2]=h;i=C(K(C(C(f*f)+C(C(h*h)+C(g*g)))));if(i>C(0)){j=f;f=C(C(1)/i);z[c+264>>2]=j*f;z[c+260>>2]=g*f;z[c+256>>2]=h*f}v[c+248>>2]=1065353216;v[c+232>>2]=1065353216;v[c+236>>2]=0;v[c+240>>2]=0;v[c+244>>2]=0;v[c+224>>2]=0;v[c+228>>2]=0;v[c+216>>2]=1065353216;v[c+220>>2]=0;B=c+152|0;DV(B,e- -64|0,e+76|0,c+216|0,c+256|0,i);H=c+88|0;r_(H,B,k,q);z[c+140>>2]=z[c+140>>2]+b;z[c+144>>2]=z[c+144>>2]+b;z[c+136>>2]=z[c+136>>2]+b;z[c+72>>2]=z[e+76>>2];z[c+76>>2]=z[e+80>>2];z[c+80>>2]=z[e+84>>2];f=z[e+68>>2];g=z[e+64>>2];z[c+64>>2]=z[e+72>>2]+b;z[c+60>>2]=f+b;z[c+56>>2]=g+b;v[c+44>>2]=k;z[c+20>>2]=r;v[c+8>>2]=142092;v[c+12>>2]=2;v[c+16>>2]=2139095039;v[c+52>>2]=c+56;v[c+48>>2]=c+72;v[c+40>>2]=c+288;v[c+36>>2]=c+304;v[c+32>>2]=c+272;v[c+28>>2]=c+320;v[c+24>>2]=m;e=v[m+40>>2];Ba[v[(x[e+4>>1]<<2)+142064>>2]](e,H,c+8|0,1,1);xa=c+400|0;b=z[c+16>>2];break b;case 1:c=xa-464|0;xa=c;m=v[k>>2];q=v[m+4>>2];v[c+456>>2]=m;v[c+452>>2]=q;f=z[m+8>>2];g=z[m+12>>2];z[c+448>>2]=C(1)/z[m+16>>2];z[c+440>>2]=C(1)/g;z[c+444>>2]=C(1)/f;v[c+432>>2]=0;v[c+436>>2]=64;t[c+424|0]=1;m=c+168|0;v[c+428>>2]=m;v[c+160>>2]=142020;v[c+164>>2]=m;f=z[d+184>>2];g=z[d+216>>2];h=z[d+176>>2];i=z[d+208>>2];l=C(z[d+212>>2]-z[d+180>>2]);z[c+148>>2]=l;f=C(g-f);z[c+152>>2]=f;g=C(i-h);z[c+144>>2]=g;h=z[d+116>>2];m=d+128|0;i=z[m+20>>2];j=z[d+112>>2];o=z[m+16>>2];n=C(z[m+24>>2]-z[d+120>>2]);z[c+136>>2]=n;h=C(i-h);z[c+132>>2]=h;i=C(o-j);z[c+128>>2]=i;j=z[e+68>>2];o=z[e+80>>2];p=z[e+64>>2];u=z[e+76>>2];I=C(f-n);f=C(I*C(.5));n=C(C(C(D(f))+z[e+72>>2])+b);f=C(f+z[e+84>>2]);z[c+124>>2]=n+f;J=C(l-h);h=C(J*C(.5));l=C(C(j+C(D(h)))+b);h=C(h+o);z[c+120>>2]=l+h;L=C(g-i);g=C(L*C(.5));b=C(C(p+C(D(g)))+b);g=C(g+u);z[c+116>>2]=b+g;z[c+112>>2]=f-n;z[c+108>>2]=h-l;z[c+104>>2]=g-b;m$(c+440|0,m,c+104|0,1,c+160|0);z[c+88>>2]=z[e+76>>2];z[c+92>>2]=z[e+80>>2];z[c+96>>2]=z[e+84>>2];m=v[c+428>>2];q=v[c+432>>2];d:{if(!q){b=C(34028234663852886e22);break d}k=k+8|0;O=C(z[e+72>>2]*C(1.100000023841858));P=C(z[e+68>>2]*C(1.100000023841858));Q=C(z[e+64>>2]*C(1.100000023841858));b=C(34028234663852886e22);e=0;while(1){n$(c+440|0,k,c+48|0,0,0,v[(e<<2)+m>>2],1,1);f=z[c+60>>2];o=z[c+48>>2];w=C(f-o);g=z[c+76>>2];n=z[c+52>>2];y=C(g-n);h=z[c+72>>2];j=C(h-o);i=z[c+64>>2];A=C(i-n);s=C(C(w*y)-C(j*A));p=C(-s);l=z[c+68>>2];u=z[c+56>>2];M=C(l-u);E=C(M*j);j=z[c+80>>2];N=C(j-u);E=C(E-C(N*w));w=C(-E);A=C(C(A*N)-C(y*M));y=C(-A);s=C(K(C(C(s*s)+C(C(A*A)+C(E*E)))));if(s>C(0)){s=C(C(1)/s);p=C(s*p);y=C(s*y);w=C(s*w)}if(r<=C(C(I*p)+C(C(L*y)+C(J*w)))){z[c+40>>2]=O;z[c+36>>2]=P;z[c+32>>2]=Q;p=C(F(u,C(85070586659632215e21)));p=l>p?p:l;p=j>p?p:j;u=C(G(u,C(-85070586659632215e21)));l=l>2]=C(p+l)*C(.5);j=C(F(n,C(85070586659632215e21)));j=i>j?j:i;j=g>j?j:g;n=C(G(n,C(-85070586659632215e21)));i=i>2]=C(j+g)*C(.5);i=C(F(o,C(85070586659632215e21)));i=f>i?i:f;i=h>i?i:h;o=C(G(o,C(-85070586659632215e21)));f=fh?f:h;z[c+16>>2]=C(i+f)*C(.5);z[c+8>>2]=C(C(C(l-p)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[c+4>>2]=C(C(C(g-j)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[c>>2]=C(C(C(f-i)*C(.5))+C(.009999999776482582))*C(1.100000023841858);f=sO(c+88|0,c+32|0,c+16|0,c,c+144|0,c+128|0);b=b>2]}e=v[c+436>>2];if(!((e|0)<0|!(e&2147483647)|(!m|(c+168|0)==(m|0)))){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,m)}xa=c+464|0;break b;default:break c}}z[d+48>>2]=z[e+76>>2];z[d+52>>2]=z[e+80>>2];z[d+56>>2]=z[e+84>>2];f=z[e+68>>2];g=z[e+72>>2];h=z[e+64>>2];z[d+32>>2]=z[k+76>>2];z[d+36>>2]=z[k+80>>2];z[d+40>>2]=z[k+84>>2];i=z[k+68>>2];l=z[k+72>>2];j=z[k+64>>2];z[d+24>>2]=C(b+g)*C(1.100000023841858);z[d+20>>2]=C(b+f)*C(1.100000023841858);z[d+16>>2]=C(b+h)*C(1.100000023841858);z[d+8>>2]=l*C(1.100000023841858);z[d+4>>2]=i*C(1.100000023841858);z[d>>2]=j*C(1.100000023841858);b=sO(d+48|0,d+16|0,d+32|0,d,d+80|0,d- -64|0)}z[a+28>>2]=b}xa=d+224|0;return b}function $D(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=C(0),m=C(0),n=0,o=C(0),p=C(0),q=0,r=0,s=0,u=0,x=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0;j=xa-32|0;xa=j;c=v[a+4>>2];a:{if(!c){break a}e=v[b+4>>2];f=v[b>>2];d=v[b+12>>2];b=v[b+8>>2];v[j+24>>2]=v[a+284>>2]-b;v[j+20>>2]=d;v[j+16>>2]=b;v[j+8>>2]=f;v[j+12>>2]=e;if(!w[a+336|0]){b=c;a=v[b+4>>2];d=j+8|0;c=a+v[d+8>>2]<<2;b:{if(!c){c=0;break b}a=v[37696];c=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,24422,12118,840)|0;a=v[b+4>>2]}c=I9(c,v[b>>2],a<<2);a=v[b>>2];if(a){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,a)}v[b>>2]=c;a=v[d+8>>2];v[b+44>>2]=a+v[b+44>>2];if(a){e=v[d+12>>2];a=0;while(1){v[c+(v[b+4>>2]+a<<2)>>2]=v[e+(a<<2)>>2]+v[d+16>>2];a=a+1|0;if(a>>>0>2]){continue}break}}a=(v[b+40>>2]+v[d>>2]|0)+1|0;a=(a>>>5|0)+((a&31)!=0)|0;if(a>>>0>y[b+56>>2]){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,a<<2,24422,12118,337)|0;e=v[b+56>>2];J9(c+(e<<2)|0,0,a-e<<2);c=I9(c,v[b+52>>2],v[b+56>>2]<<2);e=v[b+52>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[b+56>>2]=a;v[b+52>>2]=c}if(!v[b+36>>2]){c=v[b+40>>2];a=c<<2;c:{if(!a){a=0;break c}c=v[37696];a=Ba[v[v[c+12>>2]+8>>2]](c+12|0,a,24422,12118,859)|0;c=v[b+40>>2]}v[b+36>>2]=a;f=a;a=v[b+8>>2];TB(c,f,a,a,a)}d:{e:{a=v[b+8>>2];c=v[d+4>>2];if(z[a>>2]>z[c>>2]|z[a+4>>2]>z[c+4>>2]|(z[a+12>>2]>2]|z[a+8>>2]>z[c+8>>2])){break e}if(t[a+24|0]&1|(z[a+16>>2]>2]|z[a+20>>2]>2])){break e}c=0;i=v[b+8>>2];g=v[d+4>>2];l=z[g>>2];while(1){e=c;f=a;h=v[a+24>>2];c=h>>>1|0;a=i+B(c,28)|0;f:{if(l>2]|z[a+4>>2]>z[g+4>>2]|(z[a+12>>2]>2]|z[a+8>>2]>z[g+8>>2])){break f}if(z[a+16>>2]>2]){break f}if(!(z[a+20>>2]>2])){continue}}g:{if(l>2]){break g}a=a+28|0;if(z[a+4>>2]>z[g+4>>2]|z[a+8>>2]>z[g+8>>2]|(z[a+12>>2]>2]|z[a+16>>2]>2])){break g}if(z[a+20>>2]>2]){break g}c=c+1|0;continue}break}h:{if(h&1){VB(b,f,d,e);break h}WB(b,f,d,e)}break d}i:{if(t[a+24|0]&1){VB(b,a,d,0);break i}WB(b,a,d,0)}c=v[d+4>>2];l=z[c>>2];o=z[c+4>>2];a=v[b+8>>2];m=z[a+8>>2];p=z[c+8>>2];z[a+8>>2]=m>2];z[a+4>>2]=m>2];z[a>>2]=l>o?o:l;l=z[c+16>>2];o=z[c+12>>2];m=z[a+20>>2];p=z[c+20>>2];z[a+20>>2]=m>p?m:p;m=z[a+16>>2];z[a+16>>2]=l>2];z[a+12>>2]=l>o?l:o}v[b+4>>2]=v[b+4>>2]+v[d+8>>2];break a}s=v[a+48>>2];g=xa-32|0;xa=g;d=a+52|0;e=v[d+204>>2];if((e|0)==v[d+208>>2]){a=e<<1;b=B(a,24)+24|0;if(b){c=v[37696];b=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,8015,201)|0}else{b=0}b=I9(b,v[d+196>>2],B(v[d+208>>2],24));c=v[d+196>>2];if(c){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c)}v[d+196>>2]=b;b=a<<3;if(b){c=v[37696];e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,8015,208)|0}else{e=0}b=I9(e,v[d+200>>2],v[d+208>>2]<<3);c=v[d+200>>2];if(c){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,c)}v[d+200>>2]=b;h=v[d+208>>2];if(a>>>0>h>>>0){while(1){c=h<<3;v[(c+e|0)+4>>2]=0;b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?44169:63804;b=JB(Ba[v[v[b+12>>2]+8>>2]](b+12|0,64,e,8015,217)|0);e=v[d+200>>2];v[c+e>>2]=b;h=h+1|0;if((a|0)!=(h|0)){continue}break}}v[d+208>>2]=a;e=v[d+204>>2]}v[d+204>>2]=e+1;f=v[v[d+124>>2]+12>>2];i=v[j+24>>2];a=v[d+200>>2]+(e<<3)|0;v[a+4>>2]=s;q=v[a>>2];b=q;k=v[j+16>>2];a=k<<2;j:{if(!a){h=0;a=0;break j}c=v[37696];h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,a,24422,12118,168)|0;k=v[j+16>>2];a=k<<2}v[b+4>>2]=k;v[b>>2]=h;I9(h,v[j+20>>2],a);c=v[37696];k=v[j+8>>2];a=Saa(k,0,28,0);h=a+4|0;a=(E=c+12|0,F=Aa?-1:a>>>0>h>>>0?-1:h,G=Ba[v[v[c>>2]+20>>2]](c)|0?44527:63804,H=12118,I=173,D=v[v[c+12>>2]+8>>2],Ba[D](E|0,F|0,G|0,H|0,I|0)|0);v[a>>2]=k;a=a+4|0;v[b+8>>2]=a;c=b;b=v[j+8>>2];v[c+40>>2]=b;I9(a,v[j+12>>2],B(b,28));a=v[d+196>>2]+B(e,24)|0;b=v[j+12>>2];z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];kD(d+184|0,v[j+16>>2],q);v[g+20>>2]=0;v[g+12>>2]=v[d+204>>2];a=v[d+196>>2];v[g+8>>2]=4;v[g+16>>2]=a;NB(v[d+168>>2],g+8|0);kD(d+172|0,v[d+204>>2],v[d+168>>2]);v[g+16>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;a=v[g+20>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}if(v[j+16>>2]){A=f+(i<<3)|0;i=d+128|0;k=0;while(1){r=-1;r=y[d+188>>2]>k>>>0?v[v[d+184>>2]+(k<<2)>>2]:r;a=A+(k<<3)|0;b=v[a+4>>2];v[g+8>>2]=v[a>>2];v[g+12>>2]=b;b=0;k:{l:{h=v[i+20>>2];m:{if(!h){break m}n=v[i+12>>2];u=v[g+8>>2];b=u;a=0;f=b|a;a=a^-1;f=f+a|0;x=v[g+12>>2];b=x+(b^-1)|0;c=f;b=a>>>0>c>>>0?b+1|0:b;f=b;a=b>>>22|0;b=c^((b&4194303)<<10|c>>>22);c=a^f;a=b;b=c<<13|a>>>19;f=a<<13^-1;a=a+f|0;c=(b^-1)+c|0;c=a>>>0>>0?c+1|0:c;a=Saa(a^((c&255)<<24|a>>>8),c^c>>>8,9,0);b=Aa;c=b>>>15|0;a=a^((b&32767)<<17|a>>>15);c=b^c;b=a;a=c<<27|a>>>5;f=b<<27^-1;b=b+f|0;a=(a^-1)+c|0;a=b>>>0>>0?a+1|0:a;b=h-1&(b^((a&2147483647)<<1|b>>>31));c=v[(b<<2)+n>>2];if((c|0)==-1){break m}f=v[i+8>>2];n=v[i+4>>2];while(1){a=n+B(c,20)|0;if((u|0)==v[a>>2]&(x|0)==v[a+4>>2]){break l}c=v[f+(c<<2)>>2];if((c|0)!=-1){continue}break}}t[g+31|0]=0;if(v[i+36>>2]==v[i+16>>2]){a=h?h<<1:16;if(a>>>0>h>>>0){mD(i,a);h=v[i+20>>2]}c=v[g+8>>2];a=0;f=a^-1;b=(c|a)+f|0;a=v[g+12>>2]+(c^-1)|0;a=b>>>0>>0?a+1|0:a;f=a;c=a>>>22|0;a=b^((a&4194303)<<10|b>>>22);c=c^f;f=c;b=a;a=c<<13|a>>>19;n=b<<13^-1;c=b+n|0;b=(a^-1)+f|0;b=c>>>0>>0?b+1|0:b;a=Saa(c^((b&255)<<24|c>>>8),b^b>>>8,9,0);c=Aa;b=c>>>15|0;a=a^((c&32767)<<17|a>>>15);b=b^c;f=b;c=b<<27|a>>>5;n=a<<27^-1;b=n+a|0;a=(c^-1)+f|0;a=b>>>0>>0?a+1|0:a;b=h-1&(b^((a&2147483647)<<1|b>>>31))}a=v[i+28>>2];v[i+28>>2]=a+1;b=v[i+12>>2]+(b<<2)|0;v[v[i+8>>2]+(a<<2)>>2]=v[b>>2];v[b>>2]=a;v[i+36>>2]=v[i+36>>2]+1;v[i+32>>2]=v[i+32>>2]+1;a=v[i+4>>2]+B(a,20)|0;break k}t[g+31|0]=1}if(!w[g+31|0]){b=v[g+12>>2];c=v[g+8>>2];v[a+8>>2]=s;v[a>>2]=c;v[a+4>>2]=b;v[a+16>>2]=e;v[a+12>>2]=r}k=k+1|0;if(k>>>0>2]){continue}break}}a=v[j+24>>2];c=0;if(v[q+4>>2]){b=v[q>>2];while(1){e=b+(c<<2)|0;v[e>>2]=a+v[e>>2];c=c+1|0;if(c>>>0>2]){continue}break}}xa=g+32|0}xa=j+32|0}function yv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0);h=xa+-64|0;xa=h;F=z[d+20>>2];r=z[d+24>>2];f=v[f>>2];G=z[d+16>>2];n=z[d+8>>2];H=z[d>>2];I=z[d+4>>2];x=z[d+12>>2];N=z[c+20>>2];O=z[c+24>>2];j=z[c>>2];k=z[c+4>>2];A=z[c+8>>2];i=z[c+12>>2];o=z[c+16>>2];v[h+60>>2]=0;z[h+56>>2]=O;z[h+52>>2]=N;z[h+48>>2]=o;z[h+44>>2]=i;z[h+40>>2]=A;z[h+36>>2]=k;z[h+32>>2]=j;J=z[b+12>>2];S=v[b+40>>2];q=z[S+60>>2];m=z[S+52>>2];Q=z[b+8>>2];y=z[S+56>>2];$=z[e+8>>2];L=z[b+4>>2];v[h+28>>2]=0;l=C(j+j);p=C(i+i);s=C(C(A*l)-C(k*p));D=C(C(C(j*l)+C(i*p))+C(-1));l=C(C(l*k)+C(A*p));p=C(C(1)/C(K(C(C(s*s)+C(C(D*D)+C(l*l))))));z[h+24>>2]=p*C(-s);z[h+20>>2]=p*C(-l);z[h+16>>2]=p*C(-D);z[h>>2]=z[e>>2];s=C(C(C(I*A)-C(k*n))+C(C(H*i)-C(x*j)));D=C(s+s);p=C(C(C(n*j)-C(A*H))+C(C(I*i)-C(x*k)));M=C(p+p);T=C(C(1)-C(s*D));U=C(p*M);V=C(T-U);l=C(C(C(H*k)-C(j*I))+C(C(n*i)-C(x*A)));P=C(l+l);u=C(l*P);T=C(T-u);U=C(C(C(1)-U)-u);u=C($*C(.05000000074505806));m=C(L*m);y=C(Q*y);m=m<=y?m:y;q=C(J*q);q=C((m<=q?m:q)*C(.25));q=C((q>u?u:q)*C(.20000000298023224));m=C(l*M);y=C(-j);n=C(C(x*i)-C(C(C(H*y)-C(I*k))-C(A*n)));x=C(n*D);H=C(m-x);u=C(l*D);M=C(n*M);I=C(u+M);x=C(m+x);m=C(p*D);P=C(n*P);D=C(m-P);M=C(u-M);P=C(m+P);o=C(G-o);F=C(F-N);r=C(r-O);G=C(C(C(y*o)-C(F*k))-C(A*r));m=C(C(i*i)+C(-.5));N=C(C(C(i*C(C(k*o)-C(j*F)))+C(m*r))-C(A*G));N=C(N+N);O=C(C(C(m*F)+C(i*C(C(j*r)-C(A*o))))-C(k*G));O=C(O+O);i=C(C(C(m*o)+C(i*C(C(A*F)-C(k*r))))-C(j*G));A=C(i+i);c=w[f+64|0];if(c){F=C(q*q);a=c;while(1){e=v[f+76>>2];a=a-1|0;d=e+B(a,48)|0;j=z[d+24>>2];r=z[d+40>>2];i=z[d+8>>2];k=z[d>>2];o=z[d+4>>2];G=C(N+C(C(V*i)+C(C(M*k)+C(x*o))));m=C(A+C(C(I*i)+C(C(U*k)+C(D*o))));y=z[d+16>>2];u=z[d+32>>2];k=C(O+C(C(H*i)+C(C(P*k)+C(T*o))));o=z[d+20>>2];R=z[d+36>>2];i=C(C(r*C(G-j))+C(C(C(m-y)*u)+C(C(k-o)*R)));j=C(j-C(G-C(r*i)));r=C(j*j);j=C(y-C(m-C(u*i)));m=C(j*j);j=C(o-C(k-C(R*i)));a:{if(F>2];v[d>>2]=v[e>>2];v[d+4>>2]=E;E=v[e+44>>2];v[d+40>>2]=v[e+40>>2];v[d+44>>2]=E;E=v[e+36>>2];v[d+32>>2]=v[e+32>>2];v[d+36>>2]=E;E=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=E;E=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=E;E=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=E;break a}z[d+44>>2]=i}if(a){continue}break}a=w[f+64|0]}else{a=0}b:{c:{if((a|0)!=(c|0)){break c}i=C(A-z[f+16>>2]);i=i>C(0)?i:C(-i);j=C(O-z[f+20>>2]);j=j>C(0)?j:C(-j);j=i>=j?i:j;k=i;i=C(N-z[f+24>>2]);i=(i>C(0)?i:C(-i))>=C(0)?k:C(0);if(q<(i<=j?j:i)){break c}if(!(C(C(n*z[f+12>>2])+C(C(l*z[f+8>>2])+C(C(s*z[f>>2])+C(p*z[f+4>>2]))))>2];k=z[b+16>>2];q=z[b+28>>2];j=z[b+20>>2];c=0;v[f+28>>2]=0;z[f+24>>2]=N;z[f+20>>2]=O;z[f+16>>2]=A;z[f+12>>2]=n;z[f+8>>2]=l;z[f+4>>2]=p;z[f>>2]=s;t[f+64|0]=0;d=w[S+38|0];if(d){n=k;k=C(k+k);X=C(C(1)-C(n*k));o=C(j+j);y=C(j*o);l=C(X-y);p=C(J*l);R=C(o*i);W=C(k*q);n=C(R-W);s=C(Q*n);r=C(k*i);m=C(o*q);o=C(r+m);G=C(L*o);F=C(C(p*l)+C(C(G*o)+C(n*s)));r=C(r-m);m=C(J*r);u=C(i+i);Y=C(i*u);i=C(C(C(1)-y)-Y);y=C(L*i);Z=C(k*j);_=C(u*q);j=C(Z+_);u=C(Q*j);q=C(C(m*l)+C(C(y*o)+C(n*u)));k=C(R+W);R=C(J*k);aa=C(R*l);l=C(Z-_);W=C(L*l);L=C(W*o);J=n;n=C(X-Y);o=C(Q*n);J=C(aa+C(L+C(J*o)));X=C(C(V*F)+C(C(M*q)+C(x*J)));Y=C(C(H*F)+C(C(P*q)+C(T*J)));Z=C(C(I*F)+C(C(U*q)+C(D*J)));Q=C(C(p*k)+C(C(G*l)+C(n*s)));L=C(C(m*k)+C(C(y*l)+C(n*u)));n=C(C(R*k)+C(C(W*l)+C(n*o)));_=C(C(V*Q)+C(C(M*L)+C(x*n)));aa=C(C(H*Q)+C(C(P*L)+C(T*n)));ba=C(C(I*Q)+C(C(U*L)+C(D*n)));p=C(C(p*r)+C(C(G*i)+C(j*s)));s=C(C(m*r)+C(C(y*i)+C(j*u)));k=x;x=C(C(R*r)+C(C(W*i)+C(j*o)));V=C(C(V*p)+C(C(M*s)+C(k*x)));H=C(C(H*p)+C(C(P*s)+C(T*x)));I=C(C(I*p)+C(C(U*s)+C(D*x)));e=v[S+40>>2]+B(w[S+39|0],20)|0;D=z[h>>2];a=0;while(1){b=e+B(a,12)|0;i=z[b+8>>2];j=z[b>>2];k=z[b+4>>2];l=C(A+C(C(Z*i)+C(C(I*j)+C(ba*k))));d:{if(!(l>2]=l-l;v[b+12>>2]=0;z[b+44>>2]=l;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=1065353216;z[b+8>>2]=C(F*i)+C(C(p*j)+C(Q*k));z[b+4>>2]=C(J*i)+C(C(x*j)+C(n*k));z[b>>2]=C(q*i)+C(C(s*j)+C(L*k));l=C(l*C(0));z[b+24>>2]=C(N+C(C(X*i)+C(C(V*j)+C(_*k))))-l;z[b+20>>2]=C(O+C(C(Y*i)+C(C(H*j)+C(aa*k))))-l;c=c+1|0;if(c>>>0<64){break d}u2(f,g,c,$);b=v[f+76>>2];c=v[b+4>>2];v[g>>2]=v[b>>2];v[g+4>>2]=c;c=v[b+44>>2];v[g+40>>2]=v[b+40>>2];v[g+44>>2]=c;c=v[b+36>>2];v[g+32>>2]=v[b+32>>2];v[g+36>>2]=c;c=v[b+28>>2];v[g+24>>2]=v[b+24>>2];v[g+28>>2]=c;c=v[b+20>>2];v[g+16>>2]=v[b+16>>2];v[g+20>>2]=c;c=v[b+12>>2];v[g+8>>2]=v[b+8>>2];v[g+12>>2]=c;b=v[f+76>>2];c=v[b+52>>2];v[g+48>>2]=v[b+48>>2];v[g+52>>2]=c;c=v[b+92>>2];v[g+88>>2]=v[b+88>>2];v[g+92>>2]=c;c=v[b+84>>2];v[g+80>>2]=v[b+80>>2];v[g+84>>2]=c;c=v[b+76>>2];v[g+72>>2]=v[b+72>>2];v[g+76>>2]=c;c=b- -64|0;S=v[c+4>>2];v[g+64>>2]=v[c>>2];v[g+68>>2]=S;c=v[b+60>>2];v[g+56>>2]=v[b+56>>2];v[g+60>>2]=c;b=v[f+76>>2];c=v[b+100>>2];v[g+96>>2]=v[b+96>>2];v[g+100>>2]=c;c=v[b+140>>2];v[g+136>>2]=v[b+136>>2];v[g+140>>2]=c;c=v[b+124>>2];v[g+120>>2]=v[b+120>>2];v[g+124>>2]=c;c=v[b+116>>2];v[g+112>>2]=v[b+112>>2];v[g+116>>2]=c;c=v[b+132>>2];v[g+128>>2]=v[b+128>>2];v[g+132>>2]=c;c=v[b+108>>2];v[g+104>>2]=v[b+104>>2];v[g+108>>2]=c;b=v[f+76>>2];c=v[b+148>>2];v[g+144>>2]=v[b+144>>2];v[g+148>>2]=c;c=v[b+164>>2];v[g+160>>2]=v[b+160>>2];v[g+164>>2]=c;c=v[b+180>>2];v[g+176>>2]=v[b+176>>2];v[g+180>>2]=c;c=v[b+188>>2];v[g+184>>2]=v[b+184>>2];v[g+188>>2]=c;c=v[b+172>>2];v[g+168>>2]=v[b+168>>2];v[g+172>>2]=c;c=v[b+156>>2];v[g+152>>2]=v[b+152>>2];v[g+156>>2]=c;c=4}a=a+1|0;if((d|0)!=(a|0)){continue}break}}t2(f,g,c,$)}r2(f,g,h+16|0,h+32|0,h);xa=h- -64|0;return w[f+64|0]!=0|0}function y0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0),u=C(0),y=C(0),A=0,E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=0,L=0,M=0,N=0;e=xa-736|0;xa=e;r=0;a:{if(z[a+4>>2]!=C(1)){break a}r=0;if(z[a+8>>2]!=C(1)){break a}r=z[a+12>>2]==C(1)}I=z[c+4>>2]!=C(1)|z[c+8>>2]!=C(1)?I:z[c+12>>2]==C(1);A=a+4|0;K=v[c+36>>2];q=v[a+32>>2];v[e+720>>2]=0;v[e+724>>2]=1065353216;v[e+712>>2]=0;v[e+716>>2]=0;v[e+704>>2]=0;v[e+708>>2]=1065353216;v[e+696>>2]=0;v[e+700>>2]=0;v[e+688>>2]=1065353216;v[e+692>>2]=1065353216;v[e+672>>2]=1065353216;v[e+676>>2]=0;t[e+728|0]=0;v[e+680>>2]=0;v[e+684>>2]=0;v[e+664>>2]=0;v[e+668>>2]=0;v[e+656>>2]=1065353216;v[e+660>>2]=0;if(!r){JX(e+656|0,A,a+16|0)}v[e+640>>2]=0;v[e+644>>2]=1065353216;v[e+632>>2]=0;v[e+636>>2]=0;v[e+624>>2]=0;v[e+628>>2]=1065353216;v[e+616>>2]=0;v[e+620>>2]=0;v[e+608>>2]=1065353216;v[e+612>>2]=1065353216;v[e+592>>2]=1065353216;v[e+596>>2]=0;t[e+648|0]=0;v[e+600>>2]=0;v[e+604>>2]=0;v[e+584>>2]=0;v[e+588>>2]=0;v[e+576>>2]=1065353216;v[e+580>>2]=0;if(!I){JX(e+576|0,c+4|0,c+16|0)}l=z[b+4>>2];k=C(l+l);i=z[b+8>>2];h=C(k*i);g=z[b>>2];n=C(g+g);m=z[b+12>>2];f=C(n*m);z[e+556>>2]=h-f;z[e+548>>2]=h+f;f=C(C(1)-C(g*n));o=C(l*k);z[e+560>>2]=f-o;g=f;f=C(i+i);j=C(i*f);z[e+544>>2]=g-j;i=C(n*i);g=C(k*m);z[e+552>>2]=i+g;h=C(n*l);f=C(f*m);z[e+540>>2]=h-f;z[e+536>>2]=i-g;z[e+532>>2]=h+f;z[e+528>>2]=C(C(1)-o)-j;z[e+564>>2]=z[b+16>>2];z[e+568>>2]=z[b+20>>2];z[e+572>>2]=z[b+24>>2];l=z[d+4>>2];k=C(l+l);i=z[d+8>>2];h=C(k*i);g=z[d>>2];n=C(g+g);m=z[d+12>>2];f=C(n*m);z[e+508>>2]=h-f;z[e+500>>2]=h+f;f=C(C(1)-C(g*n));o=C(l*k);z[e+512>>2]=f-o;g=f;f=C(i+i);j=C(i*f);z[e+496>>2]=g-j;i=C(n*i);g=C(k*m);z[e+504>>2]=i+g;h=C(n*l);f=C(f*m);z[e+492>>2]=h-f;z[e+488>>2]=i-g;z[e+484>>2]=h+f;z[e+480>>2]=C(C(1)-o)-j;z[e+516>>2]=z[d+16>>2];z[e+520>>2]=z[d+20>>2];z[e+524>>2]=z[d+24>>2];i=z[q+16>>2];g=z[e+664>>2];E=z[q+20>>2];h=z[e+676>>2];s=z[q+24>>2];f=z[e+688>>2];k=C(C(C(i*g)+C(E*h))+C(s*f));u=z[q+28>>2];l=z[q+32>>2];n=z[q+36>>2];m=C(C(C(D(C(g*u)))+C(D(C(h*l))))+C(D(C(f*n))));z[e+476>>2]=k+m;g=z[e+660>>2];h=z[e+672>>2];f=z[e+684>>2];o=C(C(C(i*g)+C(E*h))+C(s*f));j=C(C(C(D(C(g*u)))+C(D(C(h*l))))+C(D(C(f*n))));z[e+472>>2]=o+j;h=i;i=z[e+656>>2];g=z[e+668>>2];f=z[e+680>>2];h=C(C(C(h*i)+C(E*g))+C(s*f));f=C(C(C(D(C(i*u)))+C(D(C(g*l))))+C(D(C(f*n))));z[e+468>>2]=h+f;z[e+464>>2]=k-m;z[e+460>>2]=o-j;z[e+456>>2]=h-f;p=e+392|0;a=e+576|0;q_(p,e+456|0,C(0),e+528|0,e+480|0,a,I);c=a;a=xa-192|0;xa=a;v[e+4>>2]=2;v[e+96>>2]=0;v[e+100>>2]=0;v[e+16>>2]=1065353216;r=e- -64|0;v[r>>2]=0;v[r+4>>2]=0;v[e>>2]=143748;v[e+72>>2]=0;v[e+76>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+32>>2]=0;v[e+40>>2]=0;v[e+44>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+56>>2]=1065353216;v[e+60>>2]=0;v[e+36>>2]=1065353216;v[e+104>>2]=0;v[e+108>>2]=0;v[e+112>>2]=0;v[e+116>>2]=0;v[e+120>>2]=0;v[e+124>>2]=0;t[e+128|0]=0;v[e+312>>2]=0;v[e+316>>2]=0;v[e+304>>2]=0;v[e+308>>2]=0;v[e+268>>2]=0;v[e+272>>2]=0;v[e+260>>2]=0;v[e+264>>2]=0;v[e+288>>2]=0;v[e+292>>2]=0;v[e+280>>2]=0;v[e+284>>2]=0;t[e+368|0]=0;v[e+296>>2]=1065353216;v[e+300>>2]=0;v[e+276>>2]=1065353216;v[e+256>>2]=1065353216;t[e+369|0]=I;if(!I){g=z[c+32>>2];h=z[c+20>>2];f=z[c+8>>2];L=v[c>>2];M=v[c+4>>2];N=v[c+12>>2];J=v[c+16>>2];r=v[c+28>>2];c=v[c+24>>2];v[e+332>>2]=0;z[e+344>>2]=h;v[e+348>>2]=0;v[e+364>>2]=0;z[e+360>>2]=g;v[e+352>>2]=c;v[e+356>>2]=r;v[e+336>>2]=N;v[e+340>>2]=J;v[e+320>>2]=L;v[e+324>>2]=M;z[e+328>>2]=f}j=z[A>>2];i=z[A+4>>2];g=z[A+8>>2];v[a+188>>2]=0;z[a+184>>2]=g;z[a+180>>2]=i;z[a+176>>2]=j;J=v[A+12>>2];r=v[A+16>>2];c=v[A+24>>2];v[a+168>>2]=v[A+20>>2];v[a+172>>2]=c;v[a+160>>2]=J;v[a+164>>2]=r;t[a+32|0]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=0;v[a+4>>2]=0;v[a+144>>2]=q+16;v[a+152>>2]=v[q+56>>2]+B(w[q+55|0],20);t[a+156|0]=w[q+54|0];h=C(j*z[q+68>>2]);f=C(i*z[q+72>>2]);h=f>=h?h:f;f=C(g*z[q+76>>2]);f=f>=h?h:f;z[a+24>>2]=f*C(.02500000037252903);z[a+16>>2]=f*C(.10000000149011612);z[a+20>>2]=f*C(.05000000074505806);GV(a+176|0,a+160|0,a+48|0,a+96|0,a,j==C(1)&i==C(1)&g==C(1));v[a+148>>2]=v[q+60>>2];I9(e+96|0,a,157);o=z[b+20>>2];j=z[d+20>>2];i=z[b+24>>2];g=z[d+24>>2];E=z[d+8>>2];s=z[d+4>>2];u=z[d+12>>2];k=z[d>>2];y=z[b+12>>2];F=z[b>>2];h=z[b+16>>2];f=z[d+16>>2];G=z[b+4>>2];H=z[b+8>>2];t[e+369|0]=I;v[e+316>>2]=0;v[e+300>>2]=0;v[e+284>>2]=0;v[e+268>>2]=0;f=C(f-h);m=C(f+f);f=C(j-o);j=C(f+f);f=C(g-i);g=C(f+f);h=C(C(C(C(-F)*m)-C(j*G))-C(H*g));f=C(C(y*y)+C(-.5));z[e+312>>2]=C(C(g*f)+C(y*C(C(G*m)-C(F*j))))-C(H*h);z[e+308>>2]=C(C(j*f)+C(y*C(C(F*g)-C(H*m))))-C(G*h);z[e+304>>2]=C(C(m*f)+C(y*C(C(H*j)-C(G*g))))-C(F*h);l=C(C(k*G)+C(C(C(y*E)-C(u*H))-C(F*s)));n=C(C(E*F)+C(C(C(y*s)-C(u*G))-C(H*k)));m=C(n+n);h=C(l*m);g=C(C(H*E)+C(C(G*s)+C(C(y*u)+C(F*k))));o=C(C(s*H)+C(C(C(y*k)-C(u*F))-C(G*E)));k=C(o+o);f=C(g*k);z[e+292>>2]=h-f;j=C(l*k);i=C(g*m);z[e+288>>2]=j+i;z[e+280>>2]=f+h;h=C(k*n);f=g;g=C(l+l);f=C(f*g);z[e+272>>2]=h-f;z[e+264>>2]=j-i;z[e+260>>2]=h+f;f=C(C(1)-C(o*k));h=C(n*m);z[e+296>>2]=f-h;i=f;f=C(l*g);z[e+276>>2]=i-f;z[e+256>>2]=C(C(1)-h)-f;s=z[p+40>>2];u=z[p+44>>2];l=z[p+16>>2];n=z[p+28>>2];k=z[p+20>>2];m=z[p+32>>2];f=z[p+36>>2];o=z[p>>2];j=z[p+12>>2];i=z[p+24>>2];g=z[p+4>>2];h=z[p+8>>2];v[e+76>>2]=0;v[e+60>>2]=0;z[e+56>>2]=m;z[e+52>>2]=k;z[e+48>>2]=h;v[e+44>>2]=0;z[e+40>>2]=n;z[e+36>>2]=l;z[e+32>>2]=g;v[e+28>>2]=0;z[e+24>>2]=i;z[e+20>>2]=j;z[e+16>>2]=o;f=C(-f);z[e+72>>2]=C(C(i*f)-C(n*s))-C(m*u);z[e+68>>2]=C(C(j*f)-C(l*s))-C(k*u);z[e+64>>2]=C(C(o*f)-C(g*s))-C(h*u);g=z[p+52>>2];h=z[p+56>>2];f=z[p+48>>2];v[e+92>>2]=0;z[e+88>>2]=h+C(.0010000000474974513);z[e+84>>2]=g+C(.0010000000474974513);z[e+80>>2]=f+C(.0010000000474974513);xa=a+192|0;Ba[v[(x[K+4>>1]<<2)+143760>>2]](K,p,e,1,0);xa=e+736|0;return w[e+368|0]}function Bz(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,u=0,x=0;n=32;c=xa-48|0;xa=c;t[c+12|0]=0;j=c-128|0;xa=j;v[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=y[v[((b<<5)+a|0)+24>>2]+40>>2]>y[v[((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=v[d+28>>2];v[c+40>>2]=v[d+24>>2];v[c+44>>2]=b;b=v[d+20>>2];v[c+32>>2]=v[d+16>>2];v[c+36>>2]=b;b=v[d+12>>2];v[c+24>>2]=v[d+8>>2];v[c+28>>2]=b;b=v[d+4>>2];v[c+16>>2]=v[d>>2];v[c+20>>2]=b;e=(e<<5)+a|0;b=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=b;b=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=b;b=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=b;b=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b}if((k|0)!=(l|0)){continue}break b}}d=(l<<5)+a|0;b=v[v[d+24>>2]+40>>2];f=((k+l|0)/2<<5)+a|0;if(b>>>0>2]+40>>2]){b=v[d+28>>2];v[c+40>>2]=v[d+24>>2];v[c+44>>2]=b;b=v[d+20>>2];v[c+32>>2]=v[d+16>>2];v[c+36>>2]=b;b=v[d+12>>2];v[c+24>>2]=v[d+8>>2];v[c+28>>2]=b;b=v[d+4>>2];v[c+16>>2]=v[d>>2];v[c+20>>2]=b;b=v[f+28>>2];v[d+24>>2]=v[f+24>>2];v[d+28>>2]=b;b=v[f+20>>2];v[d+16>>2]=v[f+16>>2];v[d+20>>2]=b;b=v[f+12>>2];v[d+8>>2]=v[f+8>>2];v[d+12>>2]=b;b=v[f+4>>2];v[d>>2]=v[f>>2];v[d+4>>2]=b;b=v[c+44>>2];v[f+24>>2]=v[c+40>>2];v[f+28>>2]=b;b=v[c+36>>2];v[f+16>>2]=v[c+32>>2];v[f+20>>2]=b;b=v[c+28>>2];v[f+8>>2]=v[c+24>>2];v[f+12>>2]=b;b=v[c+20>>2];v[f>>2]=v[c+16>>2];v[f+4>>2]=b;h=v[v[d+24>>2]+40>>2]}else{h=b}e=(k<<5)+a|0;b=v[v[e+24>>2]+40>>2];if(h>>>0>>0){b=v[d+28>>2];v[c+40>>2]=v[d+24>>2];v[c+44>>2]=b;b=v[d+20>>2];v[c+32>>2]=v[d+16>>2];v[c+36>>2]=b;b=v[d+12>>2];v[c+24>>2]=v[d+8>>2];v[c+28>>2]=b;b=v[d+4>>2];v[c+16>>2]=v[d>>2];v[c+20>>2]=b;b=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=b;b=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=b;b=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=b;b=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b;b=v[v[e+24>>2]+40>>2]}if(y[v[f+24>>2]+40>>2]>>0){b=v[f+28>>2];v[c+40>>2]=v[f+24>>2];v[c+44>>2]=b;b=v[f+20>>2];v[c+32>>2]=v[f+16>>2];v[c+36>>2]=b;b=v[f+12>>2];v[c+24>>2]=v[f+8>>2];v[c+28>>2]=b;b=v[f+4>>2];v[c+16>>2]=v[f>>2];v[c+20>>2]=b;b=v[e+28>>2];v[f+24>>2]=v[e+24>>2];v[f+28>>2]=b;b=v[e+20>>2];v[f+16>>2]=v[e+16>>2];v[f+20>>2]=b;b=v[e+12>>2];v[f+8>>2]=v[e+8>>2];v[f+12>>2]=b;b=v[e+4>>2];v[f>>2]=v[e>>2];v[f+4>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b}b=v[f+28>>2];v[c+40>>2]=v[f+24>>2];v[c+44>>2]=b;b=v[f+20>>2];v[c+32>>2]=v[f+16>>2];v[c+36>>2]=b;b=v[f+12>>2];v[c+24>>2]=v[f+8>>2];v[c+28>>2]=b;b=v[f+4>>2];v[c+16>>2]=v[f>>2];v[c+20>>2]=b;h=k-1|0;i=(h<<5)+a|0;e=i;b=v[e+4>>2];v[f>>2]=v[e>>2];v[f+4>>2]=b;b=v[e+28>>2];v[f+24>>2]=v[e+24>>2];v[f+28>>2]=b;b=v[e+20>>2];v[f+16>>2]=v[e+16>>2];v[f+20>>2]=b;b=v[e+12>>2];v[f+8>>2]=v[e+8>>2];v[f+12>>2]=b;b=v[c+44>>2];v[e+24>>2]=v[c+40>>2];v[e+28>>2]=b;b=v[c+36>>2];v[e+16>>2]=v[c+32>>2];v[e+20>>2]=b;b=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=b;b=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=b;b=l;while(1){f=v[v[i+24>>2]+40>>2];while(1){e=b;b=b+1|0;g=(b<<5)+a|0;if(y[v[g+24>>2]+40>>2]>f>>>0){continue}break}while(1){h=h-1|0;d=(h<<5)+a|0;if(y[v[d+24>>2]+40>>2]>>0){continue}break}if((b|0)<(h|0)){e=v[g+28>>2];v[c+40>>2]=v[g+24>>2];v[c+44>>2]=e;e=v[g+20>>2];v[c+32>>2]=v[g+16>>2];v[c+36>>2]=e;e=v[g+12>>2];v[c+24>>2]=v[g+8>>2];v[c+28>>2]=e;e=v[g+4>>2];v[c+16>>2]=v[g>>2];v[c+20>>2]=e;e=v[d+28>>2];v[g+24>>2]=v[d+24>>2];v[g+28>>2]=e;e=v[d+20>>2];v[g+16>>2]=v[d+16>>2];v[g+20>>2]=e;e=v[d+12>>2];v[g+8>>2]=v[d+8>>2];v[g+12>>2]=e;e=v[d+4>>2];v[g>>2]=v[d>>2];v[g+4>>2]=e;e=v[c+44>>2];v[d+24>>2]=v[c+40>>2];v[d+28>>2]=e;e=v[c+36>>2];v[d+16>>2]=v[c+32>>2];v[d+20>>2]=e;e=v[c+28>>2];v[d+8>>2]=v[c+24>>2];v[d+12>>2]=e;e=v[c+20>>2];v[d>>2]=v[c+16>>2];v[d+4>>2]=e;continue}break}d=v[g+28>>2];v[c+40>>2]=v[g+24>>2];v[c+44>>2]=d;d=v[g+20>>2];v[c+32>>2]=v[g+16>>2];v[c+36>>2]=d;d=v[g+12>>2];v[c+24>>2]=v[g+8>>2];v[c+28>>2]=d;d=v[g+4>>2];v[c+16>>2]=v[g>>2];v[c+20>>2]=d;d=v[i+28>>2];v[g+24>>2]=v[i+24>>2];v[g+28>>2]=d;d=v[i+20>>2];v[g+16>>2]=v[i+16>>2];v[g+20>>2]=d;d=v[i+12>>2];v[g+8>>2]=v[i+8>>2];v[g+12>>2]=d;d=v[i+4>>2];v[g>>2]=v[i>>2];v[g+4>>2]=d;d=v[c+44>>2];v[i+24>>2]=v[c+40>>2];v[i+28>>2]=d;d=v[c+36>>2];v[i+16>>2]=v[c+32>>2];v[i+20>>2]=d;d=v[c+28>>2];v[i+8>>2]=v[c+24>>2];v[i+12>>2]=d;d=v[c+20>>2];v[i>>2]=v[c+16>>2];v[i+4>>2]=d;c:{if((b-l|0)<(k-b|0)){if(n-1>>>0<=m>>>0){d=n<<3;if(d){h=v[37696];b=h+12|0;b=(q=b,r=d,s=Ba[v[v[h>>2]+20>>2]](h)|0?45645:63804,u=17218,x=155,p=v[v[b>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}else{b=0}n=n<<1;d=I9(b,j,m<<2);b=o;o=1;if(!(!b|!j)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,j)}j=d}b=(m<<2)+j|0;v[b>>2]=l;v[b+4>>2]=e;l=e+2|0;break c}if(n-1>>>0<=m>>>0){d=n<<3;if(d){h=v[37696];b=h+12|0;b=(x=b,u=d,s=Ba[v[v[h>>2]+20>>2]](h)|0?45645:63804,r=17218,q=155,p=v[v[b>>2]+8>>2],Ba[p](x|0,u|0,s|0,r|0,q|0)|0)}else{b=0}n=n<<1;d=I9(b,j,m<<2);b=o;o=1;if(!(!b|!j)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,j)}j=d}b=(m<<2)+j|0;v[b>>2]=e+2;v[b+4>>2]=k;k=e}m=m+2|0;if((k|0)>(l|0)){continue}break}}if(m){b=m-2|0;l=v[(b<<2)+j>>2];k=v[((m<<2)+j|0)-4>>2];m=b;continue}break}if(!o|!j){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,j)}if(w[c+12|0]){v9(v[c+8>>2])}xa=c+48|0}function m4(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=C(0),j=0,k=C(0),l=0,m=C(0),n=C(0),o=0,p=0,q=0,r=C(0),s=C(0),t=0,u=C(0),w=0,x=C(0),A=C(0),E=0,F=0,G=0,H=0,I=0,J=0;E=xa-16|0;xa=E;v[g>>2]=0;v[a+44>>2]=0;v[a+32>>2]=0;a:{if(!b){break a}h=xa-16|0;xa=h;v[a+44>>2]=0;v[a+32>>2]=0;m=C(-85070586659632215e21);u=C(85070586659632215e21);p=b;b:{if(!b){n=C(85070586659632215e21);k=C(85070586659632215e21);A=C(-85070586659632215e21);x=C(-85070586659632215e21);break b}b=c;x=C(-85070586659632215e21);A=C(-85070586659632215e21);k=C(85070586659632215e21);n=C(85070586659632215e21);while(1){s=z[b+8>>2];m=m>s?m:s;r=z[b+4>>2];x=r>2];A=in?n:i;b=b+d|0;o=o+1|0;if((p|0)!=(o|0)){continue}break}}z[a+24>>2]=C(u+m)*C(.5);z[a+20>>2]=C(k+x)*C(.5);z[a+16>>2]=C(n+A)*C(.5);s=C(C(m-u)*C(1.0010000467300415));m=C(s*C(.5));z[a+12>>2]=m;r=C(C(x-k)*C(1.0010000467300415));k=C(r*C(.5));z[a+8>>2]=k;i=C(C(A-n)*C(1.0010000467300415));n=C(i*C(.5));z[a+4>>2]=n;if(i==C(0)){v[a+4>>2]=1065353216;n=C(1)}if(r==C(0)){v[a+8>>2]=1065353216;k=C(1)}if(s==C(0)){v[a+12>>2]=1065353216;m=C(1)}if(p){l=a+28|0;x=C(C(1)/m);u=C(C(1)/k);s=C(C(1)/n);b=0;while(1){r=z[a+16>>2];n=z[c>>2];m=z[a+20>>2];i=z[c+4>>2];k=C(x*C(z[c+8>>2]-z[a+24>>2]));z[h+8>>2]=k;m=C(u*C(i-m));z[h+4>>2]=m;i=C(s*C(n-r));z[h>>2]=i;o=v[a+32>>2];c:{if(o>>>0>=(v[a+36>>2]&2147483647)>>>0){J3(l,h);break c}j=v[a+28>>2]+B(o,12)|0;z[j+8>>2]=k;z[j+4>>2]=m;z[j>>2]=i;v[a+32>>2]=o+1}c=c+d|0;b=b+1|0;if((p|0)!=(b|0)){continue}break}}xa=h+16|0;c=0;d=0;l=B(p,12);if(l){b=v[37696];d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,l,24422,7858,229)|0}l=p<<2;if(l){b=v[37696];c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,l,24422,7858,230)|0}w=v[a+28>>2];o=0;l=f<<2;if(l){b=v[37696];l=Ba[v[v[b+12>>2]+8>>2]](b+12|0,l,24422,7858,61)|0}else{l=0}d:{e:{f:{g:{if(f>>>0>=p>>>0){if(!p){break f}h=0;if(!c){while(1){b=B(h,12);f=b+d|0;b=b+w|0;z[f>>2]=z[b>>2];z[f+4>>2]=z[b+4>>2];z[f+8>>2]=z[b+8>>2];v[(h<<2)+l>>2]=1;h=h+1|0;if((p|0)!=(h|0)){continue}break}f=p;break g}while(1){f=h<<2;v[f+c>>2]=h;b=B(h,12);j=b+d|0;b=b+w|0;z[j>>2]=z[b>>2];z[j+4>>2]=z[b+4>>2];z[j+8>>2]=z[b+8>>2];v[f+l>>2]=1;h=h+1|0;if((p|0)!=(h|0)){continue}break}f=p;break g}h=0;j=B(f,12);if(j){b=v[37696];t=Ba[v[v[b+12>>2]+8>>2]](b+12|0,j,24422,7858,78)|0}if(f){while(1){j=B(h,12)+d|0;b=w+B((B(h,p)>>>0)/(f>>>0)|0,12)|0;z[j>>2]=z[b>>2];z[j+4>>2]=z[b+4>>2];z[j+8>>2]=z[b+8>>2];h=h+1|0;if((h|0)!=(f|0)){continue}break}}G=p>>>0>1?p:1;H=f&-2;I=f&1;o=64;m=C(34028234663852886e22);while(1){h:{if(!f){break h}h=0;q=0;if((f|0)!=1){while(1){v[(h<<2)+l>>2]=0;b=B(h,12)+t|0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;b=h|1;v[(b<<2)+l>>2]=0;b=B(b,12)+t|0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;h=h+2|0;q=q+2|0;if((H|0)!=(q|0)){continue}break}}if(!I){break h}v[(h<<2)+l>>2]=0;b=B(h,12)+t|0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0}j=0;n=C(0);while(1){b=w+B(j,12)|0;u=z[b+8>>2];s=z[b+4>>2];r=z[b>>2];i:{if(!f){k=C(34028234663852886e22);break i}b=(j<<2)+c|0;k=C(34028234663852886e22);h=0;while(1){F=B(h,12)+d|0;i=C(u-z[F+8>>2]);x=C(i*i);i=C(r-z[F>>2]);A=C(i*i);i=C(s-z[F+4>>2]);i=C(x+C(A+C(i*i)));if(i>2]=h;k=i}h=h+1|0;if((h|0)!=(f|0)){continue}break}}b=v[(j<<2)+c>>2];h=B(b,12)+t|0;z[h>>2]=r+z[h>>2];z[h+4>>2]=s+z[h+4>>2];z[h+8>>2]=u+z[h+8>>2];b=(b<<2)+l|0;v[b>>2]=v[b>>2]+1;n=C(n+k);j=j+1|0;if((G|0)!=(j|0)){continue}break}q=0;if(f){while(1){b=v[(q<<2)+l>>2];if(b){i=C(C(1)/C(b>>>0));b=B(q,12);j=b+t|0;r=C(i*z[j>>2]);z[j>>2]=r;k=C(i*z[j+4>>2]);z[j+4>>2]=k;i=C(i*z[j+8>>2]);z[j+8>>2]=i;b=b+d|0;z[b+8>>2]=i;z[b+4>>2]=k;z[b>>2]=r}q=q+1|0;if((q|0)!=(f|0)){continue}break}}o=o-1|0;if(!(!o|nC(.009999999776482582)){continue}}break}if(!t){break g}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,t)}if(!f){o=0;break e}H=p&-4;F=p&3;q=0;I=p-1>>>0<3;o=0;while(1){j:{if(!v[(q<<2)+l>>2]){break j}t=!p;w=!c;k:{if(!o){b=0;h=0;break k}j=0;b=0;h=B(q,12)+d|0;n=z[h+8>>2];i=C(n-z[d+8>>2]);r=C(i*i);k=z[h>>2];i=C(k-z[d>>2]);s=C(i*i);m=z[h+4>>2];i=C(m-z[d+4>>2]);h=1;if(C(r+C(s+C(i*i)))>2]);r=C(i*i);i=C(k-z[b>>2]);s=C(i*i);i=C(m-z[b+4>>2]);if(!(C(r+C(s+C(i*i)))>>0>>0}J=h;n:{if(t|(w|!(h|(o|0)!=(q|0)))){break n}t=0;h=0;G=0;if(!I){while(1){w=h<<2;j=w+c|0;if(v[j>>2]==(q|0)){v[j>>2]=b}j=(w|4)+c|0;if(v[j>>2]==(q|0)){v[j>>2]=b}j=(w|8)+c|0;if(v[j>>2]==(q|0)){v[j>>2]=b}j=(w|12)+c|0;if(v[j>>2]==(q|0)){v[j>>2]=b}h=h+4|0;G=G+4|0;if((H|0)!=(G|0)){continue}break}}if(!F){break n}while(1){j=(h<<2)+c|0;if(v[j>>2]==(q|0)){v[j>>2]=b}h=h+1|0;t=t+1|0;if((F|0)!=(t|0)){continue}break}}if(J){break j}j=B(o,12)+d|0;b=B(q,12)+d|0;z[j>>2]=z[b>>2];z[j+4>>2]=z[b+4>>2];z[j+8>>2]=z[b+8>>2];o=o+1|0}q=q+1|0;if((q|0)!=(f|0)){continue}break}}if(!l){break d}}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,l)}v[g>>2]=o;if(o){p=a+40|0;o:{if(!e){b=0;while(1){l=B(b,12)+d|0;f=v[a+44>>2];p:{if(f>>>0>=(v[a+48>>2]&2147483647)>>>0){J3(p,l);break p}e=v[a+40>>2]+B(f,12)|0;z[e>>2]=z[l>>2];z[e+4>>2]=z[l+4>>2];z[e+8>>2]=z[l+8>>2];v[a+44>>2]=f+1}b=b+1|0;if(b>>>0>2]){continue}break}break o}b=0;while(1){e=B(b,12)+d|0;u=z[e>>2];s=z[e+4>>2];r=z[a+16>>2];n=z[a+4>>2];m=z[a+20>>2];i=z[a+8>>2];k=C(C(z[e+8>>2]*z[a+12>>2])+z[a+24>>2]);z[E+8>>2]=k;m=C(m+C(s*i));z[E+4>>2]=m;i=C(r+C(u*n));z[E>>2]=i;f=v[a+44>>2];q:{if(f>>>0>=(v[a+48>>2]&2147483647)>>>0){J3(p,E);break q}e=v[a+40>>2]+B(f,12)|0;z[e+8>>2]=k;z[e+4>>2]=m;z[e>>2]=i;v[a+44>>2]=f+1}b=b+1|0;if(b>>>0>2]){continue}break}}h=v[p>>2]}else{h=0}if(d){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,d)}if(!c){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,c)}xa=E+16|0;return h|0}function cP(a){var b=0,c=0,d=0,e=0,f=C(0),g=0,h=0,i=0,j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=0,u=0,A=0,E=C(0),F=0,G=0,H=0,I=C(0),J=0,K=0,L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0);t[a+4620|0]=0;v[a+1092>>2]=v[a+1092>>2]+1;v[a+1196>>2]=v[v[a+2368>>2]+36>>2];b=v[a+976>>2];Ba[v[v[b+212>>2]+44>>2]](b+212|0);v[a+1244>>2]=0;a:{if(!w[a+2660|0]){break a}t[a+2660|0]=0;if(!(z[v[a+976>>2]+1056>>2]!=C(0)|z[v[a+976>>2]+1060>>2]!=C(0)|z[v[a+976>>2]+1064>>2]!=C(0))){if(z[v[a+976>>2]+1068>>2]==C(0)){break a}}v[a+2356>>2]=v[a+2356>>2]|4}g=xa-144|0;xa=g;if(z[a+2656>>2]!=C(0)){h=v[a+976>>2];b=g- -64|0;v[b>>2]=0;v[b+4>>2]=0;v[g+56>>2]=0;v[g+60>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+80>>2]=0;v[g+84>>2]=0;v[g+72>>2]=0;v[g+76>>2]=1065353216;v[g+88>>2]=0;v[g+92>>2]=0;v[g+100>>2]=0;v[g+104>>2]=0;v[g+96>>2]=1065353216;v[g+108>>2]=0;v[g+112>>2]=0;v[g+120>>2]=0;v[g+124>>2]=0;v[g+116>>2]=1065353216;v[g+128>>2]=0;v[g+132>>2]=0;v[g+136>>2]=1065353216;v[g+40>>2]=0;v[g+44>>2]=0;v[g+140>>2]=h+212;if(z[h+1088>>2]!=C(0)){e=v[a+980>>2];d=xa+-64|0;xa=d;v[d+56>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+40>>2]=0;v[d+44>>2]=1065353216;v[d+32>>2]=0;v[d+36>>2]=0;k=g+40|0;ZU(k,d+32|0);h=v[e+380>>2];if(h){while(1){b=v[v[e+376>>2]+(i<<2)>>2];if(v[b+8>>2]){v[k+4>>2]=-16711936;b=v[v[e+276>>2]+4>>2]+B(v[b>>2],24)|0;z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];n=z[b+20>>2];t[d+24|0]=1;z[d+20>>2]=n;$U(k,d)}i=i+1|0;if((h|0)!=(i|0)){continue}break}}xa=d- -64|0}d=v[a+1132>>2];if(d){e=v[a+1100>>2];i=0;while(1){k=v[a+976>>2]+212|0;b=xa-160|0;xa=b;s=v[v[e+(i<<2)>>2]+60>>2];if(w[v[s+52>>2]]&16){p=v[s+28>>2];h=v[s+24>>2];v[b+152>>2]=0;v[b+144>>2]=0;v[b+148>>2]=0;v[b+136>>2]=0;v[b+140>>2]=1065353216;v[b+128>>2]=0;v[b+132>>2]=0;u=b+128|0;G=h?v[h+36>>2]:u;u=p?v[p+36>>2]:u;p=v[s+48>>2];l=z[p+2656>>2];h=v[p+976>>2];m=z[h+1112>>2];f=z[p+2656>>2];n=z[h+1116>>2];v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;h=b- -64|0;v[h>>2]=0;v[h+4>>2]=0;v[b+56>>2]=0;v[b+60>>2]=1065353216;v[b+72>>2]=0;v[b+76>>2]=0;v[b+84>>2]=0;v[b+88>>2]=0;v[b+80>>2]=1065353216;v[b+92>>2]=0;v[b+96>>2]=0;v[b+104>>2]=0;v[b+108>>2]=0;v[b+100>>2]=1065353216;v[b+112>>2]=0;v[b+116>>2]=0;v[b+120>>2]=1065353216;v[b+24>>2]=0;v[b+28>>2]=0;v[b+124>>2]=k;v[b+8>>2]=120416;f=C(f*n);z[b+16>>2]=f;n=C(l*m);z[b+12>>2]=n;v[b+20>>2]=b+24;h=n!=C(0);Ba[v[v[s+52>>2]+40>>2]](b+8|0,v[s+20>>2],G,u,f!=C(0)?h|2:h)}xa=b+160|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}b=v[v[a+976>>2]+1024>>2];Ba[v[v[b>>2]+84>>2]](g,b);j=g+40|0;a=v[v[a+2168>>2]>>2];b:{if(z[a+2656>>2]==C(0)){break b}H=v[a+88>>2];if(!H){break b}L=v[a+52>>2];while(1){a=0;k=0;h=0;c=xa-128|0;xa=c;A=v[L>>2]-4|0;if(v[A+56>>2]){E=y[v[A+28>>2]+4>>2]>2]+4>>2]?C(1):C(-1);G=v[v[A+4>>2]+40>>2];I=z[G+2656>>2];o=C(I*C(.10000000149011612));while(1){i=v[A+56>>2];c:{d:{if(i){e=v[i+68>>2];e:{if((e|0)<0){b=v[v[v[v[A+4>>2]+40>>2]+976>>2]+1024>>2];b=Ba[v[v[b>>2]+80>>2]](b,e)|0;break e}b=v[g+32>>2]+(v[((e&7)<<2)+g>>2]+(e>>>3|0)<<4)|0}d=v[i+32>>2];F=0;e=0;f:{if(!w[b+12|0]){break f}e=1;if(h){break f}F=v[b+8>>2];J=w[b+13|0];i=v[b+4>>2];e=v[b>>2];b=(d|0)!=0;break c}if(!d){break d}while(1){if((e|0)==(h|0)){i=d- -64|0;e=d+16|0;F=(x[d+4>>1]+15&131056)+d|0;J=1;b=(v[d>>2]!=0)+h|0;break c}e=e+1|0;d=v[d>>2];if(d){continue}break}}F=0}J=0;i=0;e=0;b=h}d=v[G+976>>2];n=z[d+1068>>2];M=z[d+1060>>2];N=z[d+1064>>2];Q=z[d+1056>>2];g:{if(!e){K=0;break g}a=w[e+43|0];K=a&128?32:a&2?64:16;k=e;a=i}if(J){s=0;u=(F|0)!=0&n!=C(0);O=C(I*n);n=C(I*M);P=C(I*N);i=0;e=0;while(1){if(i){p=a;a=w[k+41|0];a=p+(a>>>0>e>>>0?B(a-e|0,K):0)|0;k=k+48|0}i=i+1|0;h:{if(!w[k+41|0]){e=0;break h}a=(s?K:0)+a|0;i:{j:{if(!u){e=255;f=n;if(M!=C(0)){break j}if(N==C(0)){break i}e=16776960;f=C(D(C(P*z[a+12>>2])));break j}e=16711680;f=C(O*z[F>>2])}if(f==C(0)){break i}v[j+32>>2]=0;v[j>>2]=1;v[j+4>>2]=e;z[c+112>>2]=z[a>>2];z[c+116>>2]=z[a+4>>2];z[c+120>>2]=z[a+8>>2];e=_U(j,c+112|0);q=z[a>>2];r=z[k+16>>2];l=z[a+4>>2];m=z[k+20>>2];z[c+104>>2]=C(E*C(f*z[k+24>>2]))+z[a+8>>2];z[c+100>>2]=l+C(E*C(f*m));z[c+96>>2]=q+C(E*C(f*r));_U(e,c+96|0)}p=Q==C(0);if(!p){f=z[a>>2];q=z[a+4>>2];r=z[a+8>>2];v[j+32>>2]=0;v[j>>2]=1;v[j+4>>2]=-65536;l=C(r+C(0));z[c+88>>2]=l;m=C(q+C(0));z[c+84>>2]=m;z[c+80>>2]=f-o;e=_U(j,c+80|0);z[c+72>>2]=l;z[c+68>>2]=m;z[c+64>>2]=o+f;_U(e,c- -64|0);z[c+56>>2]=l;z[c+52>>2]=q-o;f=C(f+C(0));z[c+48>>2]=f;e=_U(j,c+48|0);z[c+40>>2]=l;z[c+36>>2]=o+q;z[c+32>>2]=f;_U(e,c+32|0);z[c+24>>2]=r-o;z[c+20>>2]=m;z[c+16>>2]=f;e=_U(j,c+16|0);z[c+8>>2]=o+r;z[c+4>>2]=m;z[c>>2]=f;_U(e,c)}s=1;if(w[k+41|0]<2){e=1;break h}e=1;while(1){a=a+K|0;k:{l:{if(u){d=16711680;f=C(O*z[F>>2]);break l}d=255;f=n;if(M!=C(0)){break l}if(N==C(0)){break k}d=16776960;f=C(D(C(P*z[a+12>>2])))}if(f==C(0)){break k}v[j+32>>2]=0;v[j>>2]=1;v[j+4>>2]=d;z[c+112>>2]=z[a>>2];z[c+116>>2]=z[a+4>>2];z[c+120>>2]=z[a+8>>2];d=_U(j,c+112|0);q=z[a>>2];r=z[k+16>>2];l=z[a+4>>2];m=z[k+20>>2];z[c+104>>2]=C(E*C(f*z[k+24>>2]))+z[a+8>>2];z[c+100>>2]=l+C(E*C(f*m));z[c+96>>2]=q+C(E*C(f*r));_U(d,c+96|0)}e=e+1|0;if(!p){f=z[a>>2];q=z[a+4>>2];r=z[a+8>>2];v[j+32>>2]=0;v[j>>2]=1;v[j+4>>2]=-65536;l=C(r+C(0));z[c+88>>2]=l;m=C(q+C(0));z[c+84>>2]=m;z[c+80>>2]=f-o;d=_U(j,c+80|0);z[c+72>>2]=l;z[c+68>>2]=m;z[c+64>>2]=o+f;_U(d,c- -64|0);z[c+56>>2]=l;z[c+52>>2]=q-o;f=C(f+C(0));z[c+48>>2]=f;d=_U(j,c+48|0);z[c+40>>2]=l;z[c+36>>2]=o+q;z[c+32>>2]=f;_U(d,c+32|0);z[c+24>>2]=r-o;z[c+20>>2]=m;z[c+16>>2]=f;d=_U(j,c+16|0);z[c+8>>2]=o+r;z[c+4>>2]=m;z[c>>2]=f;_U(d,c)}if(w[k+41|0]>e>>>0){continue}break}}if((i|0)!=(J|0)){continue}break}}i=(b|0)!=(h|0);h=b;if(i){continue}break}}xa=c+128|0;L=L+4|0;H=H-1|0;if(H){continue}break}}}xa=g+144|0}function X2(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,y=0,A=0,D=0,E=0,F=0,G=0;o=xa-240|0;xa=o;v[o+192>>2]=v[b+32>>2];e=v[b+28>>2];v[o+184>>2]=v[b+24>>2];v[o+188>>2]=e;e=v[b+20>>2];v[o+176>>2]=v[b+16>>2];v[o+180>>2]=e;e=v[b+12>>2];v[o+168>>2]=v[b+8>>2];v[o+172>>2]=e;e=v[b+4>>2];v[o+160>>2]=v[b>>2];v[o+164>>2]=e;f=x[b+36>>1];u[o+196>>1]=f;e=x[b+38>>1]|x[b+40>>1]<<16;u[o+198>>1]=e;u[o+200>>1]=e>>>16;b=0;if(f&2){if(f&128){b=e&65535;u[o+198>>1]=b>>>0<64?b:64}e=v[37696];b=Ba[v[v[e>>2]+20>>2]](e)|0?46147:63804;b=M4(Ba[v[v[e+12>>2]+8>>2]](e+12|0,48,b,10899,283)|0,o+160|0,a+4|0)}a:{b:{g=e4(o+8|0,w[a+18|0]);if(!W2(a,o+160|0,g,b,d)){break b}h=Ba[v[v[a>>2]+12>>2]](a)|0;q=xa-16|0;xa=q;a=0;c:{if(!pX(67,86,88,77,13,h,c)){break c}kX(0,h,c);i=xa-32|0;xa=i;m=qX(67,76,72,76,9,h,c);d:{if(!m){break d}f=v[g+28>>2];e=x[f+36>>1];a=w[g+32|0];kX(w[f+38|0],h,c);kX(e&32767|a<<15&32768,h,c);kX(w[v[g+28>>2]+39|0],h,c);f=w[v[g+28>>2]+39|0];e:{if(!f){break e}l=v[g+4>>2];a=0;if(f-1>>>0>=3){e=f&252;while(1){r=w[(l+B(a|3,20)|0)+18|0]+(w[(l+B(a|2,20)|0)+18|0]+(w[(l+B(a|1,20)|0)+18|0]+(w[(l+B(a,20)|0)+18|0]+r|0)|0)|0)|0;a=a+4|0;n=n+4|0;if((e|0)!=(n|0)){continue}break}}e=f&3;if(!e){break e}while(1){r=w[(l+B(a,20)|0)+18|0]+r|0;a=a+1|0;p=p+1|0;if((e|0)!=(p|0)){continue}break}}kX(r,h,c);nX(v[g>>2],B(w[v[g+28>>2]+38|0],3),h,c);j=v[g+28>>2];f:{if(!w[j+39|0]){break f}a=0;if(h){while(1){k=v[g+4>>2]+B(a,20)|0;e=k;p=v[e>>2];z[i+8>>2]=z[e>>2];l=v[e+4>>2];z[i+12>>2]=z[e+4>>2];f=v[e+8>>2];z[i+16>>2]=z[e+8>>2];e=v[e+12>>2];z[i+20>>2]=z[k+12>>2];k=v[k+16>>2];v[i+24>>2]=k;t[i+25|0]=k;t[i+24|0]=k>>>8;t[i+11|0]=p;t[i+8|0]=p>>>24;t[i+15|0]=l;t[i+12|0]=l>>>24;t[i+10|0]=p>>>8;t[i+9|0]=p>>>16;t[i+19|0]=f;t[i+16|0]=f>>>24;t[i+14|0]=l>>>8;t[i+13|0]=l>>>16;t[i+23|0]=e;t[i+20|0]=e>>>24;t[i+18|0]=f>>>8;t[i+17|0]=f>>>16;t[i+22|0]=e>>>8;t[i+21|0]=e>>>16;Ba[v[v[c>>2]>>2]](c,i+8|0,20)|0;a=a+1|0;j=v[g+28>>2];if(a>>>0>2]+B(a,20)|0;z[i+8>>2]=z[e>>2];z[i+12>>2]=z[e+4>>2];z[i+16>>2]=z[e+8>>2];z[i+20>>2]=z[e+12>>2];v[i+24>>2]=v[e+16>>2];Ba[v[v[c>>2]>>2]](c,i+8|0,20)|0;a=a+1|0;j=v[g+28>>2];if(a>>>0>2]>>2]](c,v[g+8>>2]+a|0,1)|0;Ba[v[v[c>>2]>>2]](c,v[g+8>>2]+(a|1)|0,1)|0;a=a+2|0;j=j+2|0;if((e|0)!=(j|0)){continue}break}}if(r&1){Ba[v[v[c>>2]>>2]](c,v[g+8>>2]+a|0,1)|0}j=v[g+28>>2]}Ba[v[v[c>>2]>>2]](c,v[g+12>>2],x[j+36>>1]<<1&65534)|0;Ba[v[v[c>>2]>>2]](c,v[g+16>>2],B(w[v[g+28>>2]+38|0],3))|0;if(!w[g+32|0]){break d}oX(v[g+24>>2],x[v[g+28>>2]+36>>1]<<1&65534,h,c)}xa=i+32|0;a=0;if(!m){break c}lX(C(0),h,c);lX(C(z[g+44>>2]-z[g+56>>2]),h,c);lX(C(z[g+48>>2]-z[g+60>>2]),h,c);a=g- -64|0;lX(C(z[g+52>>2]-z[a>>2]),h,c);lX(C(z[g+44>>2]+z[g+56>>2]),h,c);lX(C(z[g+48>>2]+z[g+60>>2]),h,c);lX(C(z[g+52>>2]+z[a>>2]),h,c);lX(z[g+112>>2],h,c);nX(g+116|0,9,h,c);nX(g+68|0,3,h,c);g:{if(v[g+108>>2]){lX(C(1),h,c);a=v[g>>2];v[q+4>>2]=v[g+108>>2];v[q+8>>2]=a;v[q>>2]=g+44;p=0;n=0;h:{if(!qX(83,85,80,77,0,h,c)){break h}if(!qX(71,65,85,83,0,h,c)){break h}kX(x[v[q+4>>2]>>1],h,c);kX(x[v[q+4>>2]+2>>1],h,c);a=v[q+4>>2];Ba[v[v[c>>2]>>2]](c,v[a+4>>2],x[a+2>>1]<<1)|0;if(qX(86,65,76,69,2,h,c)){kX(v[v[q+4>>2]+8>>2],h,c);kX(v[v[q+4>>2]+12>>2],h,c);e=v[q+4>>2];j=v[e+8>>2];a=j+j|0;f=a>>>0>>0?-1:a;i:{if(!f){a=0;break i}e=v[37696];a=e+12|0;a=(A=a,D=f,E=Ba[v[v[e>>2]+20>>2]](e)|0?27439:63804,F=9427,G=345,y=v[v[a>>2]+8>>2],Ba[y](A|0,D|0,E|0,F|0,G|0)|0);e=v[q+4>>2];j=v[e+8>>2]}j:{if(!j){break j}m=v[e+16>>2];e=0;if(j-1>>>0>=3){l=j&-4;while(1){u[(e<<1)+a>>1]=x[m+(e<<2)>>1];f=e|1;u[(f<<1)+a>>1]=x[m+(f<<2)>>1];f=e|2;u[(f<<1)+a>>1]=x[m+(f<<2)>>1];f=e|3;u[(f<<1)+a>>1]=x[m+(f<<2)>>1];e=e+4|0;p=p+4|0;if((l|0)!=(p|0)){continue}break}}f=j&3;if(!f){break j}while(1){u[(e<<1)+a>>1]=x[m+(e<<2)>>1];e=e+1|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}e=a;r=0;n=0;k:{if(!j){j=0;break k}s=j&3;l:{if(j-1>>>0<3){j=0;break l}i=j&-4;j=0;while(1){k=x[e+6>>1];m=x[e+4>>1];p=x[e+2>>1];l=x[e>>1];f=j&65535;f=f>>>0>>0?l:f;f=f>>>0

>>0?p:f;f=f>>>0>>0?m:f;j=f>>>0>>0?k:f;e=e+8|0;r=r+4|0;if((i|0)!=(r|0)){continue}break}}if(!s){break k}while(1){l=x[e>>1];f=j&65535;j=f>>>0>>0?l:f;e=e+2|0;n=n+1|0;if((s|0)!=(n|0)){continue}break}}e=j&65535;kX(e,h,c);m=v[v[q+4>>2]+8>>2];k=xa-16|0;xa=k;m:{if(e>>>0>=256){if(!m){break m}if(!h){e=0;if((m|0)!=1){l=m&-2;n=0;while(1){f=e<<1;u[k+14>>1]=x[f+a>>1];Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;u[k+14>>1]=x[(f|2)+a>>1];Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;e=e+2|0;n=n+2|0;if((l|0)!=(n|0)){continue}break}}if(!(m&1)){break m}u[k+14>>1]=x[(e<<1)+a>>1];Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;break m}e=0;if((m|0)!=1){p=m&-2;n=0;while(1){l=e<<1;f=x[l+a>>1];u[k+14>>1]=f<<8|f>>>8;Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;f=x[(l|2)+a>>1];u[k+14>>1]=f<<8|f>>>8;Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;e=e+2|0;n=n+2|0;if((p|0)!=(n|0)){continue}break}}if(!(m&1)){break m}e=x[(e<<1)+a>>1];u[k+14>>1]=e<<8|e>>>8;Ba[v[v[c>>2]>>2]](c,k+14|0,2)|0;break m}if(!m){break m}e=0;if((m|0)!=1){l=m&-2;n=0;while(1){f=e<<1;t[k+13|0]=w[f+a|0];Ba[v[v[c>>2]>>2]](c,k+13|0,1)|0;t[k+13|0]=w[(f|2)+a|0];Ba[v[v[c>>2]>>2]](c,k+13|0,1)|0;e=e+2|0;n=n+2|0;if((l|0)!=(n|0)){continue}break}}if(!(m&1)){break m}t[k+13|0]=w[(e<<1)+a|0];Ba[v[v[c>>2]>>2]](c,k+13|0,1)|0}xa=k+16|0;if(a){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,a)}a=v[q+4>>2];Ba[v[v[c>>2]>>2]](c,v[a+20>>2],v[a+12>>2])|0}}break g}lX(C(-1),h,c)}lX(z[g+92>>2],h,c);lX(z[g+96>>2],h,c);lX(z[g+100>>2],h,c);lX(z[g+104>>2],h,c);a=1}xa=q+16|0;if(!a){if(!d){break b}v[d>>2]=3;break b}a=1;break a}a=0}if(b){Ba[v[v[b>>2]+4>>2]](b)}f4(g);xa=o+240|0;return a|0}function daa(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,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,u=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0;m=xa-560|0;xa=m;v[m+44>>2]=0;o(+b);g=j(1)|0;j(0)|0;a:{if((g|0)<0){x=1;A=2078;b=-b;o(+b);g=j(1)|0;j(0)|0;break a}if(e&2048){x=1;A=2081;break a}x=e&1;A=x?2084:2079;F=!x}b:{if((g&2146435072)==2146435072){d=x+3|0;caa(a,32,c,d,e&-65537);_9(a,A,x);f=f&32;_9(a,b!=b?f?14751:62605:f?20613:62745,3);caa(a,32,c,d,e^8192);i=(c|0)<(d|0)?d:c;break b}z=m+16|0;c:{d:{e:{b=X9(b,m+44|0);b=b+b;if(b!=0){g=v[m+44>>2];v[m+44>>2]=g-1;u=f|32;if((u|0)!=97){break e}break c}u=f|32;if((u|0)==97){break c}l=v[m+44>>2];n=(d|0)<0?6:d;break d}l=g-29|0;v[m+44>>2]=l;b=b*268435456;n=(d|0)<0?6:d}r=(m+48|0)+((l|0)<0?0:288)|0;h=r;while(1){if(b<4294967296&b>=0){d=~~b>>>0}else{d=0}v[h>>2]=d;h=h+4|0;b=(b-+(d>>>0))*1e9;if(b!=0){continue}break}f:{if((l|0)<=0){d=l;g=h;k=r;break f}k=r;d=l;while(1){d=(d|0)<29?d:29;g=h-4|0;g:{if(k>>>0>g>>>0){break g}i=0;while(1){q=v[g>>2];p=d&31;C=i;if((d&63)>>>0>=32){i=q<>>32-p;q=q<>>0>>0?i+1|0:i;i=Taa(p,i,1e9);q=Saa(i,Aa,1e9,0);v[g>>2]=p-q;g=g-4|0;if(k>>>0<=g>>>0){continue}break}if(!i){break g}k=k-4|0;v[k>>2]=i}while(1){g=h;if(k>>>0>>0){h=g-4|0;if(!v[h>>2]){continue}}break}d=v[m+44>>2]-d|0;v[m+44>>2]=d;h=g;if((d|0)>0){continue}break}}if((d|0)<0){y=((n+25>>>0)/9|0)+1|0;p=(u|0)==102;while(1){d=0-d|0;i=(d|0)<9?d:9;h:{if(g>>>0<=k>>>0){h=v[k>>2];break h}q=1e9>>>i|0;E=-1<>2];v[h>>2]=C+(d>>>i|0);d=B(q,d&E);h=h+4|0;if(h>>>0>>0){continue}break}h=v[k>>2];if(!d){break h}v[g>>2]=d;g=g+4|0}d=i+v[m+44>>2]|0;v[m+44>>2]=d;k=(!h<<2)+k|0;h=p?r:k;g=g-h>>2>(y|0)?h+(y<<2)|0:g;if((d|0)<0){continue}break}}d=0;i:{if(g>>>0<=k>>>0){break i}d=B(r-k>>2,9);h=10;i=v[k>>2];if(i>>>0<10){break i}while(1){d=d+1|0;h=B(h,10);if(i>>>0>=h>>>0){continue}break}}h=(n-((u|0)==102?0:d)|0)-((u|0)==103&(n|0)!=0)|0;if((h|0)<(B(g-r>>2,9)-9|0)){i=h+9216|0;p=(i|0)/9|0;l=((((l|0)<0?4:292)+m|0)+(p<<2)|0)-4048|0;h=10;i=i-B(p,9)|0;if((i|0)<=7){while(1){h=B(h,10);i=i+1|0;if((i|0)!=8){continue}break}}p=v[l>>2];y=(p>>>0)/(h>>>0)|0;i=p-B(h,y)|0;q=l+4|0;j:{if(!i&(q|0)==(g|0)){break j}k:{if(!(y&1)){b=9007199254740992;if(!(t[l-4|0]&1)|((h|0)!=1e9|k>>>0>=l>>>0)){break k}}b=9007199254740994}s=(g|0)==(q|0)?1:1.5;q=h>>>1|0;s=i>>>0>>0?.5:(q|0)==(i|0)?s:1.5;if(!(w[A|0]!=45|F)){s=-s;b=-b}i=p-i|0;v[l>>2]=i;if(b+s==b){break j}d=h+i|0;v[l>>2]=d;if(d>>>0>=1e9){while(1){v[l>>2]=0;l=l-4|0;if(l>>>0>>0){k=k-4|0;v[k>>2]=0}d=v[l>>2]+1|0;v[l>>2]=d;if(d>>>0>999999999){continue}break}}d=B(r-k>>2,9);h=10;i=v[k>>2];if(i>>>0<10){break j}while(1){d=d+1|0;h=B(h,10);if(i>>>0>=h>>>0){continue}break}}h=l+4|0;g=g>>>0>h>>>0?h:g}while(1){h=g;i=g>>>0<=k>>>0;if(!i){g=h-4|0;if(!v[g>>2]){continue}}break}l:{if((u|0)!=103){l=e&8;break l}g=n?n:1;l=(g|0)>(d|0)&(d|0)>-5;n=(l?d^-1:-1)+g|0;f=(l?-1:-2)+f|0;l=e&8;if(l){break l}g=-9;m:{if(i){break m}p=v[h-4>>2];if(!p){break m}i=10;g=0;if((p>>>0)%10|0){break m}while(1){l=g;g=g+1|0;i=B(i,10);if(!((p>>>0)%(i>>>0)|0)){continue}break}g=l^-1}i=B(h-r>>2,9);if((f&-33)==70){l=0;g=(g+i|0)-9|0;g=(g|0)>0?g:0;n=(g|0)>(n|0)?n:g;break l}l=0;g=((d+i|0)+g|0)-9|0;g=(g|0)>0?g:0;n=(g|0)>(n|0)?n:g}i=-1;u=l|n;if(((u?2147483645:2147483646)|0)<(n|0)){break b}p=(((u|0)!=0)+n|0)+1|0;q=f&-33;n:{if((q|0)==70){if((2147483647-p|0)<(d|0)){break b}g=(d|0)>0?d:0;break n}g=d>>31;g=baa((g^d)-g|0,0,z);if((z-g|0)<=1){while(1){g=g-1|0;t[g|0]=48;if((z-g|0)<2){continue}break}}y=g-2|0;t[y|0]=f;t[g-1|0]=(d|0)<0?45:43;g=z-y|0;if((g|0)>(2147483647-p|0)){break b}}d=g+p|0;if((d|0)>(x^2147483647)){break b}f=d+x|0;caa(a,32,c,f,e);_9(a,A,x);caa(a,48,c,f,e^65536);o:{p:{q:{if((q|0)==70){g=m+16|0;d=g|8;l=g|9;i=k>>>0>r>>>0?r:k;k=i;while(1){g=baa(v[k>>2],0,l);r:{if((i|0)!=(k|0)){if(m+16>>>0>=g>>>0){break r}while(1){g=g-1|0;t[g|0]=48;if(m+16>>>0>>0){continue}break}break r}if((g|0)!=(l|0)){break r}t[m+24|0]=48;g=d}_9(a,g,l-g|0);k=k+4|0;if(r>>>0>=k>>>0){continue}break}if(u){_9(a,70749,1)}if((n|0)<=0|h>>>0<=k>>>0){break q}while(1){g=baa(v[k>>2],0,l);if(g>>>0>m+16>>>0){while(1){g=g-1|0;t[g|0]=48;if(m+16>>>0>>0){continue}break}}_9(a,g,(n|0)<9?n:9);g=n-9|0;k=k+4|0;if(h>>>0<=k>>>0){break p}d=(n|0)>9;n=g;if(d){continue}break}break p}s:{if((n|0)<0){break s}i=h>>>0>k>>>0?h:k+4|0;g=m+16|0;d=g|8;r=g|9;h=k;while(1){g=baa(v[h>>2],0,r);if((r|0)==(g|0)){t[m+24|0]=48;g=d}t:{if((h|0)!=(k|0)){if(m+16>>>0>=g>>>0){break t}while(1){g=g-1|0;t[g|0]=48;if(m+16>>>0>>0){continue}break}break t}_9(a,g,1);g=g+1|0;if(!(l|n)){break t}_9(a,70749,1)}C=g;g=r-g|0;_9(a,C,(g|0)>(n|0)?n:g);n=n-g|0;h=h+4|0;if(i>>>0<=h>>>0){break s}if((n|0)>=0){continue}break}}caa(a,48,n+18|0,18,0);_9(a,y,z-y|0);break o}g=n}caa(a,48,g+9|0,9,0)}caa(a,32,c,f,e^8192);i=(c|0)<(f|0)?f:c;break b}n=(f<<26>>31&9)+A|0;u:{if(d>>>0>11){break u}g=12-d|0;s=16;while(1){s=s*16;g=g-1|0;if(g){continue}break}if(w[n|0]==45){b=-(s+(-b-s));break u}b=b+s-s}h=v[m+44>>2];g=h>>31;g=baa((g^h)-g|0,0,z);if((z|0)==(g|0)){t[m+15|0]=48;g=m+15|0}l=x|2;k=f&32;h=v[m+44>>2];r=g-2|0;t[r|0]=f+15;t[g-1|0]=(h|0)<0?45:43;i=e&8;h=m+16|0;while(1){f=h;if(D(b)<2147483648){g=~~b}else{g=-2147483648}t[h|0]=k|w[g+109616|0];b=(b-+(g|0))*16;h=f+1|0;if(!(!((d|0)>0|i)&b==0|(h-(m+16|0)|0)!=1)){t[f+1|0]=46;h=f+2|0}if(b!=0){continue}break}i=-1;p=z-r|0;f=p+l|0;if((2147483645-f|0)<(d|0)){break b}v:{w:{if(!d){break w}k=h-(m+16|0)|0;if((k-2|0)>=(d|0)){break w}g=d+2|0;break v}k=h-(m+16|0)|0;g=k}d=g+f|0;caa(a,32,c,d,e);_9(a,n,l);caa(a,48,c,d,e^65536);_9(a,m+16|0,k);caa(a,48,g-k|0,0,0);_9(a,r,p);caa(a,32,c,d,e^8192);i=(c|0)<(d|0)?d:c}xa=m+560|0;return i|0}function w1(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var q=C(0),r=C(0),s=C(0),u=0,y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,L=0,M=C(0),N=0,O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0);u=xa-416|0;xa=u;N=u+344|0;k2(z_(u+120|0,c),N);v[u+88>>2]=0;v[u+92>>2]=0;v[u+84>>2]=1065353216;v[u+96>>2]=0;v[u+100>>2]=0;v[u+104>>2]=1065353216;v[u+108>>2]=0;v[u+68>>2]=0;v[u+72>>2]=0;v[u+64>>2]=1065353216;v[u+76>>2]=0;v[u+80>>2]=0;t[u+44|0]=1;v[u+32>>2]=f;v[u+48>>2]=b;v[u>>2]=141108;b=u- -64|0;v[u+40>>2]=b;v[u+36>>2]=b;b=v[h>>2];L=xa-32|0;xa=L;a:{b:{if(o){if(d2(a,N,u,n,L+16|0,k)){c=v[N+24>>2];m=z[k>>2];p=z[k+4>>2];q=z[k+8>>2];v[L+12>>2]=0;z[L+8>>2]=-q;z[L+4>>2]=-p;z[L>>2]=-m;c=c+B(_1(N,u,L),20)|0;break b}o=0;break a}q=z[k>>2];r=z[k+4>>2];s=z[k+8>>2];v[L+28>>2]=0;z[L+24>>2]=-s;z[L+20>>2]=-r;z[L+16>>2]=-q;q=C(p*C(.05000000074505806));p=C(p*C(.009999999776482582));m=mq?q:m);c=v[N+24>>2]+B(c,20)|0}l=xa+-64|0;xa=l;D=z[n>>2];F=z[a+80>>2];o=v[u+40>>2];r=z[o+40>>2];s=z[o+36>>2];E=z[o+24>>2];G=z[o+20>>2];y=z[o+32>>2];M=z[o+16>>2];m=z[c+8>>2];H=z[o+8>>2];p=z[c>>2];S=z[o>>2];q=z[c+4>>2];O=z[o+4>>2];v[l+60>>2]=0;r=C(C(r*m)+C(C(y*p)+C(q*s)));s=C(C(H*m)+C(C(S*p)+C(q*O)));E=C(C(E*m)+C(C(M*p)+C(q*G)));m=C(C(1)/C(K(C(C(r*r)+C(C(s*s)+C(E*E))))));p=C(r*m);z[l+56>>2]=p;q=C(s*m);z[l+48>>2]=q;m=C(E*m);z[l+52>>2]=m;o=v[u+36>>2];I=v[N+32>>2]+x[c+16>>1]|0;A=v[N+28>>2]+B(w[I|0],12)|0;r=z[A+8>>2];s=z[A>>2];E=z[A+4>>2];G=C(C(z[o+40>>2]*r)+C(C(z[o+8>>2]*s)+C(E*z[o+24>>2])));y=C(C(z[o+32>>2]*r)+C(C(z[o>>2]*s)+C(E*z[o+16>>2])));r=C(C(z[o+36>>2]*r)+C(C(z[o+4>>2]*s)+C(E*z[o+20>>2])));s=C(C(p*z[k+8>>2])+C(C(q*z[k>>2])+C(m*z[k+4>>2])));s=s>C(0)?C(C(1)/s):C(0);E=C(C(C(p*C(z[a+72>>2]-G))+C(C(q*C(z[a+64>>2]-y))+C(m*C(z[a+68>>2]-r))))*s);S=C(F+D);M=C(C(C(p*C(z[a+56>>2]-G))+C(C(q*C(z[a+48>>2]-y))+C(m*C(z[a+52>>2]-r))))*s);J=S>=M;c:{if(!(J|E<=S)){break c}q2(l,l+48|0);o=w[c+18|0];Q=(l-(o<<4)|0)-16|0;xa=Q;Ba[v[v[u>>2]+16>>2]](u,I,o,v[N+28>>2],Q);I=w[c+18|0];d:{if(!I){D=C(34028234663852886e22);p=C(-34028234663852886e22);F=C(-34028234663852886e22);G=C(34028234663852886e22);break d}y=z[l+40>>2];H=z[l+24>>2];O=z[l+36>>2];T=z[l+20>>2];F=C(-34028234663852886e22);G=C(34028234663852886e22);U=z[l+8>>2];R=z[l+4>>2];V=z[l+32>>2];P=z[l+16>>2];W=z[l>>2];o=0;D=C(34028234663852886e22);p=C(-34028234663852886e22);while(1){A=(o<<4)+Q|0;v[A+12>>2]=0;q=z[A+8>>2];r=z[A>>2];s=z[A+4>>2];z[A+8>>2]=C(y*q)+C(C(U*r)+C(s*H));m=C(C(O*q)+C(C(R*r)+C(s*T)));z[A+4>>2]=m;q=C(C(V*q)+C(C(W*r)+C(s*P)));z[A>>2]=q;F=mq?p:q;G=m>G?G:m;D=q>D?D:q;o=o+1|0;if((I|0)!=(o|0)){continue}break}}e:{if(!J){break e}V=z[a+56>>2];O=C(V-C(M*z[k+8>>2]));P=z[a+48>>2];T=C(P-C(M*z[k>>2]));W=z[a+52>>2];U=C(W-C(M*z[k+4>>2]));H=C(C(z[l+32>>2]*O)+C(C(z[l>>2]*T)+C(U*z[l+16>>2])));if(H>2]*O)+C(C(z[l+4>>2]*T)+C(U*z[l+20>>2])));if(!I|(yF)){break e}o=((I<<4)+Q|0)-16|0;q=z[o>>2];m=z[o+4>>2];A=0;o=0;f:{while(1){if(q==H&m==y){break f}s=q;r=m;J=(A<<4)+Q|0;q=z[J>>2];m=z[J+4>>2];if(H==q&y==m){break f}g:{if((r>y|0)==(m>y|0)){break g}R=C(m-r);r=C(C(C(s+C(1.1920928955078125e-7))*R)+C(C(y-r)*C(q-s)));s=C(H*R);J=R>C(0);if(!((J?r:s)>=(J?s:r))){break g}if((o|0)==1){break e}o=o+1|0}A=A+1|0;if((I|0)!=(A|0)){continue}break}if(!o){break e}}s=z[d+20>>2];y=z[d+24>>2];r=z[d+36>>2];H=z[d+52>>2];m=z[d+40>>2];q=z[d+56>>2];R=z[d+8>>2];Y=z[d+4>>2];Z=z[d>>2];_=z[d+16>>2];$=z[d+32>>2];aa=z[d+48>>2];o=B(v[h>>2],48)+g|0;v[o+12>>2]=0;X=m;m=C(V-q);q=C(P-aa);P=r;r=C(W-H);z[o+8>>2]=C(X*m)+C(C($*q)+C(P*r));z[o+4>>2]=C(y*m)+C(C(_*q)+C(r*s));z[o>>2]=C(R*m)+C(C(Z*q)+C(r*Y));o=B(v[h>>2],48)+g|0;z[o+16>>2]=T;v[o+28>>2]=0;z[o+24>>2]=O;z[o+20>>2]=U;m=z[k+8>>2];A=v[k+4>>2];I=v[k>>2];o=v[h>>2];v[h>>2]=o+1;o=B(o,48)+g|0;v[o+32>>2]=I;v[o+36>>2]=A;z[o+44>>2]=M;z[o+40>>2]=m}if(!(E<=S)){break c}m=D;S=z[a+72>>2];y=C(S-C(E*z[k+8>>2]));O=z[a+64>>2];M=C(O-C(E*z[k>>2]));T=z[a+68>>2];H=C(T-C(E*z[k+4>>2]));D=C(C(z[l+32>>2]*y)+C(C(z[l>>2]*M)+C(H*z[l+16>>2])));if(m>D|p>2]*y)+C(C(z[l+4>>2]*M)+C(H*z[l+20>>2])));if(sF){break c}I=w[c+18|0];if(!I){break c}o=((I<<4)+Q|0)-16|0;p=z[o>>2];m=z[o+4>>2];A=0;o=0;h:{while(1){r=p;q=m;if(r==D&m==s){break h}J=(A<<4)+Q|0;p=z[J>>2];m=z[J+4>>2];if(D==p&s==m){break h}i:{if((q>s|0)==(m>s|0)){break i}F=C(m-q);q=C(C(C(r+C(1.1920928955078125e-7))*F)+C(C(s-q)*C(p-r)));r=C(D*F);J=F>C(0);if(!((J?q:r)>=(J?r:q))){break i}if((o|0)==1){break c}o=o+1|0}A=A+1|0;if((I|0)!=(A|0)){continue}break}if(!o){break c}}r=z[d+20>>2];s=z[d+24>>2];q=z[d+36>>2];D=z[d+52>>2];m=z[d+40>>2];p=z[d+56>>2];F=z[d+8>>2];G=z[d+4>>2];U=z[d>>2];R=z[d+16>>2];V=z[d+32>>2];P=z[d+48>>2];o=B(v[h>>2],48)+g|0;v[o+12>>2]=0;X=m;m=C(S-p);p=C(O-P);P=q;q=C(T-D);z[o+8>>2]=C(X*m)+C(C(V*p)+C(P*q));z[o+4>>2]=C(s*m)+C(C(R*p)+C(q*r));z[o>>2]=C(F*m)+C(C(U*p)+C(q*G));o=B(v[h>>2],48)+g|0;z[o+16>>2]=M;v[o+28>>2]=0;z[o+24>>2]=y;z[o+20>>2]=H;m=z[k+8>>2];A=v[k+4>>2];Q=v[k>>2];o=v[h>>2];v[h>>2]=o+1;o=B(o,48)+g|0;v[o+32>>2]=Q;v[o+36>>2]=A;z[o+44>>2]=E;z[o+40>>2]=m}xa=l- -64|0;o=1;if(v[h>>2]-b>>>0>1){break a}c2(a,N,c,u,d,g,h,n,k)}xa=L+32|0;if(o){c=v[h>>2];j:{if(!b){break j}if((b|0)==(c|0)){c=b;break j}c=c-1|0;v[h>>2]=c;g=g+48|0}x2(j,g,c);m=z[f+12>>2];p=z[f+8>>2];q=z[f>>2];r=z[f+4>>2];v[k+12>>2]=0;s=z[k+8>>2];E=z[k>>2];D=z[k+4>>2];F=C(C(p*s)+C(C(q*E)+C(r*D)));G=C(C(m*m)+C(-.5));y=C(C(C(m*C(C(q*D)-C(r*E)))+C(G*s))+C(p*F));z[k+8>>2]=y+y;y=C(C(r*F)+C(C(G*D)+C(m*C(C(p*E)-C(s*q)))));z[k+4>>2]=y+y;m=C(C(q*F)+C(C(E*G)+C(m*C(C(r*s)-C(D*p)))));z[k>>2]=m+m;s2(j,i,k,k,e,a+80|0,n)}xa=u+416|0;return o}function ks(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=C(0),l=0,m=0,n=C(0),o=0,p=0,q=0,r=C(0),s=C(0),u=C(0);l=xa-16|0;xa=l;a:{if(w[a+4801|0]){b9(v[37696],2,11709,2838,68519,0);break a}i=v[a+5932>>2];f=v[a+5936>>2];if(f>>>0>=4){m=f&3;o=f-5|0;p=f>>>2|0;q=p-1|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(o-(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=v[e+i>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 0:break e;case 1:break f;default:break d}}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];YG(c- -64|0,b);break c}z[c+96>>2]=z[c+96>>2]-z[b>>2];z[c+100>>2]=z[c+100>>2]-z[b+4>>2];z[c+104>>2]=z[c+104>>2]-z[b+8>>2];break c}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];YG(c- -64|0,b)}g:{h:{i:{j:{c=v[i+(e|4)>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 1:break i;case 0:break j;default:break h}}z[c+96>>2]=z[c+96>>2]-z[b>>2];z[c+100>>2]=z[c+100>>2]-z[b+4>>2];z[c+104>>2]=z[c+104>>2]-z[b+8>>2];break g}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];YG(c- -64|0,b);break g}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];YG(c- -64|0,b)}k:{l:{m:{n:{c=v[i+(e|8)>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 1:break m;case 0:break n;default:break l}}z[c+96>>2]=z[c+96>>2]-z[b>>2];z[c+100>>2]=z[c+100>>2]-z[b+4>>2];z[c+104>>2]=z[c+104>>2]-z[b+8>>2];break k}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];YG(c- -64|0,b);break k}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];YG(c- -64|0,b)}o:{p:{q:{r:{c=v[i+(e|12)>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 1:break q;case 0:break r;default:break p}}z[c+96>>2]=z[c+96>>2]-z[b>>2];z[c+100>>2]=z[c+100>>2]-z[b+4>>2];z[c+104>>2]=z[c+104>>2]-z[b+8>>2];break o}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];YG(c- -64|0,b);break o}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];YG(c- -64|0,b)}g=g+1|0;if((p|0)!=(g|0)){continue}break}}if(d>>>0>>0){while(1){s:{t:{u:{v:{c=v[i+(d<<2)>>2];switch(Ba[v[v[c>>2]+24>>2]](c)|0){case 0:break u;case 1:break v;default:break t}}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];YG(c- -64|0,b);break s}z[c+96>>2]=z[c+96>>2]-z[b>>2];z[c+100>>2]=z[c+100>>2]-z[b+4>>2];z[c+104>>2]=z[c+104>>2]-z[b+8>>2];break s}z[c+272>>2]=z[c+272>>2]-z[b>>2];z[c+276>>2]=z[c+276>>2]-z[b+4>>2];z[c+280>>2]=z[c+280>>2]-z[b+8>>2];YG(c- -64|0,b)}d=d+1|0;if((f|0)!=(d|0)){continue}break}}if(v[a+5980>>2]){f=v[a+5948>>2];e=0;while(1){c=v[f+(e<<2)>>2];g=v[(Ba[v[v[c>>2]+100>>2]](c)|0)+84>>2];h=0;if(Ba[v[v[c>>2]+76>>2]](c)|0){while(1){w:{x:{y:{z:{d=v[g+(h<<2)>>2];switch(Ba[v[v[d>>2]+24>>2]](d)|0){case 0:break y;case 1:break z;default:break x}}z[d+272>>2]=z[d+272>>2]-z[b>>2];z[d+276>>2]=z[d+276>>2]-z[b+4>>2];z[d+280>>2]=z[d+280>>2]-z[b+8>>2];YG(d- -64|0,b);break w}z[d+96>>2]=z[d+96>>2]-z[b>>2];z[d+100>>2]=z[d+100>>2]-z[b+4>>2];z[d+104>>2]=z[d+104>>2]-z[b+8>>2];break w}z[d+272>>2]=z[d+272>>2]-z[b>>2];z[d+276>>2]=z[d+276>>2]-z[b+4>>2];z[d+280>>2]=z[d+280>>2]-z[b+8>>2];YG(d- -64|0,b)}h=h+1|0;if(Ba[v[v[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=v[f+976>>2];m=v[d+1816>>2];c=v[m+12>>2];e=c&2147483647;A:{if(!e){break A}j=z[b+8>>2];k=z[b+4>>2];n=z[b>>2];o=c&1;i=v[m+4>>2];c=0;if((e|0)!=1){p=e-o|0;while(1){q=c<<5;e=q+i|0;z[e+16>>2]=z[e+16>>2]-n;z[e+20>>2]=z[e+20>>2]-k;z[e+24>>2]=z[e+24>>2]-j;e=i+(q|32)|0;z[e+16>>2]=z[e+16>>2]-n;z[e+20>>2]=z[e+20>>2]-k;z[e+24>>2]=z[e+24>>2]-j;c=c+2|0;g=g+2|0;if((p|0)!=(g|0)){continue}break}}if(!o){break A}c=i+(c<<5)|0;z[c+16>>2]=z[c+16>>2]-n;z[c+20>>2]=z[c+20>>2]-k;z[c+24>>2]=z[c+24>>2]-j}t[m+20|0]=1;n=z[d+1140>>2];r=z[d+1136>>2];s=z[d+1128>>2];u=z[d+1132>>2];B:{C:{if(!(!(s!=C(-85070586659632215e21)|u!=C(-85070586659632215e21))&r==C(-85070586659632215e21))){j=z[d+1148>>2];k=z[d+1144>>2];break C}j=z[d+1148>>2];k=z[d+1144>>2];if(n!=C(85070586659632215e21)|k!=C(85070586659632215e21)){break C}if(j==C(85070586659632215e21)){break B}}z[d+1128>>2]=s-z[b>>2];z[d+1132>>2]=u-z[b+4>>2];z[d+1136>>2]=r-z[b+8>>2];z[d+1140>>2]=n-z[b>>2];z[d+1144>>2]=k-z[b+4>>2];z[d+1148>>2]=j-z[b+8>>2]}c=v[f+1140>>2];e=v[c+8>>2];if(e){g=v[c+4>>2];while(1){d=g+B(h,24)|0;z[d>>2]=z[d>>2]-z[b>>2];z[d+4>>2]=z[d+4>>2]-z[b+4>>2];z[d+8>>2]=z[d+8>>2]-z[b+8>>2];z[d+12>>2]=z[d+12>>2]-z[b>>2];z[d+16>>2]=z[d+16>>2]-z[b+4>>2];z[d+20>>2]=z[d+20>>2]-z[b+8>>2];h=h+1|0;if((e|0)!=(h|0)){continue}break}}t[c+16|0]=1;d=v[f+980>>2];c=v[d+272>>2];Ba[v[v[c>>2]+72>>2]](c,b,v[v[d+276>>2]+4>>2],v[v[d+192>>2]+4>>2]);t[d+364|0]=1;e=v[f+1132>>2];D:{if(!e){break D}h=v[f+1100>>2];d=0;if((e|0)!=1){f=e&-2;c=0;while(1){g=d<<2;i=v[v[g+h>>2]+28>>2];Ba[v[v[i>>2]+16>>2]](i,b);g=v[v[h+(g|4)>>2]+28>>2];Ba[v[v[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=v[v[h+(d<<2)>>2]+28>>2];Ba[v[v[d>>2]+16>>2]](d,b)}d=a+5584|0;c=v[d>>2];Ba[v[v[c>>2]+48>>2]](c,b);c=v[d+36>>2];Ba[v[v[c>>2]+48>>2]](c,b);d=v[d+72>>2];Ba[v[v[d>>2]+44>>2]](d,b);j=z[b>>2];k=z[b+4>>2];z[l+8>>2]=-z[b+8>>2];z[l+4>>2]=-k;z[l>>2]=-j;ls(a+5828|0,l)}xa=l+16|0}function Z9(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,x=0,y=0,z=0,C=0,D=0,E=0,F=0,G=0;j=xa-80|0;xa=j;v[j+76>>2]=b;E=j+55|0;s=j+56|0;a:{b:{c:{d:{e:while(1){l=b;if((2147483647-p|0)<(h|0)){break d}p=h+p|0;f:{g:{h:{h=l;i=w[h|0];if(i){while(1){i:{b=i&255;j:{if(!b){b=h;break j}if((b|0)!=37){break i}i=h;while(1){if(w[i+1|0]!=37){b=i;break j}h=h+1|0;k=w[i+2|0];b=i+2|0;i=b;if((k|0)==37){continue}break}}h=h-l|0;D=2147483647-p|0;if((h|0)>(D|0)){break d}if(a){_9(a,l,h)}if(h){continue e}v[j+76>>2]=b;h=b+1|0;q=-1;if(!(w[b+2|0]!=36|t[b+1|0]-48>>>0>=10)){q=t[b+1|0]-48|0;y=1;h=b+3|0}v[j+76>>2]=h;n=0;i=t[h|0];b=i-32|0;k:{if(b>>>0>31){k=h;break k}k=h;b=1<>2]=k;n=b|n;i=t[h+1|0];b=i-32|0;if(b>>>0>=32){break k}h=k;b=1<>>0>=10)){v[((t[k+1|0]<<2)+e|0)-192>>2]=10;i=k+3|0;y=1;b=v[((t[k+1|0]<<3)+d|0)-384>>2];break m}if(y){break h}i=k+1|0;if(!a){v[j+76>>2]=i;y=0;r=0;break l}b=v[c>>2];v[c>>2]=b+4;y=0;b=v[b>>2]}r=b;v[j+76>>2]=i;if((r|0)>=0){break l}r=0-r|0;n=n|8192;break l}r=$9(j+76|0);if((r|0)<0){break d}i=v[j+76>>2]}h=0;m=-1;n:{if(w[i|0]!=46){b=i;C=0;break n}if(w[i+1|0]==42){o:{if(!(w[i+3|0]!=36|t[i+2|0]-48>>>0>=10)){v[((t[i+2|0]<<2)+e|0)-192>>2]=10;b=i+4|0;m=v[((t[i+2|0]<<3)+d|0)-384>>2];break o}if(y){break h}b=i+2|0;m=0;if(!a){break o}i=v[c>>2];v[c>>2]=i+4;m=v[i>>2]}v[j+76>>2]=b;C=(m^-1)>>>31|0;break n}v[j+76>>2]=i+1;m=$9(j+76|0);b=v[j+76>>2];C=1}p:{while(1){o=h;x=b;h=t[b|0];if(h-123>>>0<4294967238){break p}b=x+1|0;h=w[(h+B(o,58)|0)+109087|0];if(h-1>>>0<8){continue}break}v[j+76>>2]=b;k=28;q:{r:{if((h|0)!=27){if(!h){break c}if((q|0)>=0){v[(q<<2)+e>>2]=h;h=(q<<3)+d|0;i=v[h+4>>2];v[j+64>>2]=v[h>>2];v[j+68>>2]=i;break r}if(!a){break f}aaa(j- -64|0,h,c,g);break q}if((q|0)>=0){break c}}h=0;if(!a){continue e}}i=n&-65537;n=n&8192?i:n;q=0;z=2068;k=s;s:{t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{h=t[x|0];h=o?(h&15)==3?h&-33:h:h;switch(h-88|0){case 11:break s;case 9:case 13:case 14:case 15:break t;case 27:break y;case 12:case 17:break B;case 23:break C;case 0:case 32:break D;case 24:break E;case 22:break F;case 29:break G;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 H}}I:{switch(h-65|0){case 0:case 4:case 5:case 6:break t;case 2:break w;case 1:case 3:break g;default:break I}}if((h|0)==83){break x}break g}o=v[j+64>>2];i=v[j+68>>2];z=2068;break A}h=0;J:{switch(o&255){case 0:v[v[j+64>>2]>>2]=p;continue e;case 1:v[v[j+64>>2]>>2]=p;continue e;case 2:l=v[j+64>>2];v[l>>2]=p;v[l+4>>2]=p>>31;continue e;case 3:u[v[j+64>>2]>>1]=p;continue e;case 4:t[v[j+64>>2]]=p;continue e;case 6:v[v[j+64>>2]>>2]=p;continue e;case 7:break J;default:continue e}}l=v[j+64>>2];v[l>>2]=p;v[l+4>>2]=p>>31;continue e}m=m>>>0>8?m:8;n=n|8;h=120}l=s;F=h&32;o=v[j+64>>2];i=v[j+68>>2];if(o|i){while(1){l=l-1|0;t[l|0]=F|w[(o&15)+109616|0];G=!i&o>>>0>15|(i|0)!=0;x=i;i=i>>>4|0;o=(x&15)<<28|o>>>4;if(G){continue}break}}if(!(v[j+64>>2]|v[j+68>>2])|!(n&8)){break z}z=(h>>>4|0)+2068|0;q=2;break z}h=s;l=v[j+68>>2];i=l;o=v[j+64>>2];if(i|o){while(1){h=h-1|0;t[h|0]=o&7|48;x=!i&o>>>0>7|(i|0)!=0;l=i;i=i>>>3|0;o=(l&7)<<29|o>>>3;if(x){continue}break}}l=h;if(!(n&8)){break z}h=s-l|0;m=(h|0)<(m|0)?m:h+1|0;break z}h=v[j+68>>2];i=h;o=v[j+64>>2];if((h|0)<0){i=0-(i+((o|0)!=0)|0)|0;o=0-o|0;v[j+64>>2]=o;v[j+68>>2]=i;q=1;z=2068;break A}if(n&2048){q=1;z=2069;break A}q=n&1;z=q?2070:2068}l=baa(o,i,s)}if((m|0)<0?C:0){break d}n=C?n&-65537:n;i=v[j+64>>2];h=v[j+68>>2];if(!(m|(i|h)!=0)){l=s;k=l;m=0;break g}h=!(h|i)+(s-l|0)|0;m=(h|0)<(m|0)?m:h;break g}o=m>>>0<2147483647?m:2147483647;k=o;n=(k|0)!=0;h=v[j+64>>2];l=h?h:70751;h=l;K:{L:{M:{N:{if(!(h&3)|!k){break N}while(1){if(!w[h|0]){break M}k=k-1|0;n=(k|0)!=0;h=h+1|0;if(!(h&3)){break N}if(k){continue}break}}if(!n){break L}}O:{if(!(!w[h|0]|k>>>0<4)){while(1){n=v[h>>2];if((n^-1)&n-16843009&-2139062144){break O}h=h+4|0;k=k-4|0;if(k>>>0>3){continue}break}}if(!k){break L}}while(1){if(!w[h|0]){break K}h=h+1|0;k=k-1|0;if(k){continue}break}}h=0}h=h?h-l|0:o;k=h+l|0;if((m|0)>=0){n=i;m=h;break g}n=i;m=h;if(w[k|0]){break d}break g}if(m){i=v[j+64>>2];break v}h=0;caa(a,32,r,0,n);break u}v[j+12>>2]=0;v[j+8>>2]=v[j+64>>2];i=j+8|0;v[j+64>>2]=i;m=-1}h=0;P:{while(1){l=v[i>>2];if(!l){break P}l=haa(j+4|0,l);k=(l|0)<0;if(!(k|l>>>0>m-h>>>0)){i=i+4|0;h=h+l|0;if(m>>>0>h>>>0){continue}break P}break}if(k){break b}}k=61;if((h|0)<0){break c}caa(a,32,r,h,n);if(!h){h=0;break u}k=0;i=v[j+64>>2];while(1){l=v[i>>2];if(!l){break u}l=haa(j+4|0,l);k=l+k|0;if(k>>>0>h>>>0){break u}_9(a,j+4|0,l);i=i+4|0;if(h>>>0>k>>>0){continue}break}}caa(a,32,r,h,n^8192);h=(h|0)<(r|0)?r:h;continue e}if((m|0)<0?C:0){break d}k=61;h=Ba[f|0](a,A[j+64>>3],r,m,n,h)|0;if((h|0)>=0){continue e}break c}t[j+55|0]=v[j+64>>2];m=1;l=E;n=i;break g}v[j+76>>2]=x;break h}i=w[h+1|0];h=h+1|0;continue}}if(a){break a}if(!y){break f}h=1;while(1){a=v[(h<<2)+e>>2];if(a){aaa((h<<3)+d|0,a,c,g);p=1;h=h+1|0;if((h|0)!=10){continue}break a}break}p=1;if(h>>>0>=10){break a}while(1){if(v[(h<<2)+e>>2]){break h}h=h+1|0;if((h|0)!=10){continue}break}break a}k=28;break c}o=k-l|0;m=(m|0)>(o|0)?m:o;if((m|0)>(2147483647-q|0)){break d}k=61;i=m+q|0;h=(i|0)<(r|0)?r:i;if((D|0)<(h|0)){break c}caa(a,32,h,i,n);_9(a,z,q);caa(a,48,h,i,n^65536);caa(a,48,m,o,0);_9(a,l,o);caa(a,32,h,i,n^8192);continue}break}p=0;break a}k=61}v[37699]=k}p=-1}xa=j+80|0;return p}function MZ(a,b,c,d,e,f){var g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=0,n=0,o=0,p=0,q=0,r=0,s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0);i=xa-96|0;a:{b:{q=v[a+4096>>2]-b|0;if(q>>>0>=5){g=(b<<6)+a|0;if((c|0)==(q|0)){h=z[g+12>>2];e=0;if(c>>>0<2){break a}d=c-1|0;Q=d&3;if(c-2>>>0<3){d=1;l=h;break b}n=d&-4;l=h;d=1;while(1){j=z[((d<<6)+g|0)+12>>2];q=j>2];l=q?j:l;E=k>2];l=E?k:l;H=j>2];l=H?j:l;m=k>2]=1053028119;v[i+80>>2]=0;v[i+84>>2]=-1083407522;c=i- -64|0;v[c>>2]=1064076126;v[c+4>>2]=0;v[i+56>>2]=0;v[i+60>>2]=-1094455528;v[i+40>>2]=1064076126;v[i+44>>2]=0;v[i+32>>2]=0;v[i+36>>2]=1053028117;v[i+16>>2]=1053028118;v[i+20>>2]=0;v[i+72>>2]=-1087044365;v[i+76>>2]=1060439283;v[i+48>>2]=-1287930578;v[i+52>>2]=1065353216;v[i+24>>2]=1060439283;v[i+28>>2]=1060439283;v[i+8>>2]=0;v[i+12>>2]=1064076126;v[i>>2]=1065353216;v[i+4>>2]=0;R=z[d+28>>2];S=z[d+16>>2];T=z[d+24>>2];U=z[d+12>>2];V=z[d+4>>2];W=z[d>>2];d=0;l=C(-34028234663852886e22);s=C(34028234663852886e22);I=C(34028234663852886e22);J=C(34028234663852886e22);K=C(34028234663852886e22);L=C(34028234663852886e22);M=C(34028234663852886e22);N=C(34028234663852886e22);O=C(34028234663852886e22);P=C(-34028234663852886e22);t=C(-34028234663852886e22);u=C(-34028234663852886e22);y=C(-34028234663852886e22);A=C(-34028234663852886e22);F=C(-34028234663852886e22);D=C(-34028234663852886e22);while(1){c=B(w[d+f|0],12)+e|0;j=z[c>>2];k=z[c+4>>2];h=z[c+8>>2];x=C(C(C(j*W)+C(k*U))+C(h*T));G=C(C(C(j*V)+C(k*S))+C(h*R));h=C(C(x*C(-.9238795042037964))+C(G*C(.38268348574638367)));l=hs?s:h;k=C(G*C(.7071067690849304));h=C(C(x*C(-.7071067690849304))+k);P=hI?I:h;h=C(G*C(.9238795042037964));j=C(C(x*C(-.38268351554870605))+h);t=jJ?J:j;j=C(C(x*C(-4.371138828673793e-8))+G);u=jK?K:j;h=C(C(x*C(.3826834261417389))+h);y=hL?L:h;h=C(C(x*C(.7071067690849304))+k);A=hM?M:h;h=C(C(x*C(.9238795042037964))+C(G*C(.3826834559440613)));F=hN?N:h;h=C(x+C(G*C(0)));D=hO?O:h;d=d+1|0;if((q|0)!=(d|0)){continue}break}j=C(F-N);h=C(D-O);c=j>h;d=c;k=C(A-M);h=c?j:h;c=k>h;d=c?2:d;j=C(y-L);h=c?k:h;c=j>h;d=c?3:d;k=C(u-K);h=c?j:h;c=k>h;d=c?4:d;j=C(t-J);h=c?k:h;c=j>h;d=c?5:d;k=C(P-I);h=c?j:h;c=k>h;c=i+B(C(l-s)>(c?k:h)?7:c?6:d,12)|0;y=z[c>>2];A=z[c+4>>2];F=C(-A);n=q>>>0>1?q:1;t=C(34028234663852886e22);u=C(-34028234663852886e22);d=0;c=0;l=C(-34028234663852886e22);s=C(34028234663852886e22);while(1){i=B(w[d+f|0],12)+e|0;D=z[i>>2];j=z[i+4>>2];h=z[i+8>>2];k=C(C(C(D*W)+C(j*U))+C(h*T));h=C(C(C(D*V)+C(j*S))+C(h*R));j=C(C(F*k)+C(y*h));H=j>u;u=H?j:u;p=jl;l=m?h:l;i=h>>0>1?q:1;o=0;f=0;while(1){c:{if(!((o|0)==(r|0)|(o|0)==(p|0)|(i|0)==(o|0))){if((e|0)!=(o|0)){break c}}m=(f<<6)+g|0;n=(o<<6)+g|0;z[m>>2]=z[n>>2];z[m+4>>2]=z[n+4>>2];z[m+8>>2]=z[n+8>>2];z[m+12>>2]=z[n+12>>2];z[m+16>>2]=z[n+16>>2];z[m+20>>2]=z[n+20>>2];z[m+24>>2]=z[n+24>>2];z[m+28>>2]=z[n+28>>2];z[m+32>>2]=z[n+32>>2];z[m+36>>2]=z[n+36>>2];z[m+40>>2]=z[n+40>>2];c=v[n+48>>2];v[m+44>>2]=v[n+44>>2];v[m+48>>2]=c;c=v[n+56>>2];v[m+52>>2]=v[n+52>>2];v[m+56>>2]=c;v[m+60>>2]=v[n+60>>2];f=f+1|0}o=o+1|0;if((d|0)!=(o|0)){continue}break}v[a+4096>>2]=b+f}return}if(!Q){break a}while(1){k=z[((d<<6)+g|0)+12>>2];f=k>2]=h;d=c<<14&1073725440;p=d>>>16|0;f=(p<<6)+g|0;z[g+64>>2]=z[f>>2];z[g+68>>2]=z[f+4>>2];z[g+72>>2]=z[f+8>>2];z[g+76>>2]=z[f+12>>2];z[g+80>>2]=z[f+16>>2];z[g+84>>2]=z[f+20>>2];z[g+88>>2]=z[f+24>>2];z[g+92>>2]=z[f+28>>2];z[g+96>>2]=z[f+32>>2];z[g+100>>2]=z[f+36>>2];z[g+104>>2]=z[f+40>>2];c=v[f+48>>2];v[g+108>>2]=v[f+44>>2];v[g+112>>2]=c;c=v[f+56>>2];v[g+116>>2]=v[f+52>>2];v[g+120>>2]=c;v[g+124>>2]=v[f+60>>2];i=d>>>15|0;f=(i<<6)+g|0;z[g+128>>2]=z[f>>2];z[g+132>>2]=z[f+4>>2];z[g+136>>2]=z[f+8>>2];z[g+140>>2]=z[f+12>>2];z[g+144>>2]=z[f+16>>2];z[g+148>>2]=z[f+20>>2];z[g+152>>2]=z[f+24>>2];z[g+156>>2]=z[f+28>>2];z[g+160>>2]=z[f+32>>2];z[g+164>>2]=z[f+36>>2];z[g+168>>2]=z[f+40>>2];c=v[f+48>>2];v[g+172>>2]=v[f+44>>2];v[g+176>>2]=c;c=v[f+56>>2];v[g+180>>2]=v[f+52>>2];v[g+184>>2]=c;v[g+188>>2]=v[f+60>>2];f=B(d,3)>>>16|0;d=(f<<6)+g|0;z[g+192>>2]=z[d>>2];z[g+196>>2]=z[d+4>>2];z[g+200>>2]=z[d+8>>2];z[g+204>>2]=z[d+12>>2];z[g+208>>2]=z[d+16>>2];z[g+212>>2]=z[d+20>>2];z[g+216>>2]=z[d+24>>2];z[g+220>>2]=z[d+28>>2];z[g+224>>2]=z[d+32>>2];z[g+228>>2]=z[d+36>>2];z[g+232>>2]=z[d+40>>2];c=v[d+48>>2];v[g+236>>2]=v[d+44>>2];v[g+240>>2]=c;c=v[d+56>>2];v[g+244>>2]=v[d+52>>2];v[g+248>>2]=c;v[g+252>>2]=v[d+60>>2];d=4;if(!((e|0)==(f|0)|(e|0)==(i|0)|(!e|(e|0)==(p|0)))){d=(e<<6)+g|0;z[g+256>>2]=z[d>>2];z[g+260>>2]=z[d+4>>2];z[g+264>>2]=z[d+8>>2];z[g+268>>2]=z[d+12>>2];z[g+272>>2]=z[d+16>>2];z[g+276>>2]=z[d+20>>2];z[g+280>>2]=z[d+24>>2];z[g+284>>2]=z[d+28>>2];z[g+288>>2]=z[d+32>>2];z[g+292>>2]=z[d+36>>2];z[g+296>>2]=z[d+40>>2];c=v[d+48>>2];v[g+300>>2]=v[d+44>>2];v[g+304>>2]=c;c=v[d+56>>2];v[g+308>>2]=v[d+52>>2];v[g+312>>2]=c;v[g+316>>2]=v[d+60>>2];d=5}v[a+4096>>2]=b+d}function YV(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=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0);h=xa-112|0;xa=h;l=z[d+20>>2];o=z[d+16>>2];m=z[d+24>>2];n=z[d>>2];r=C(n+n);q=z[d+8>>2];p=z[d+4>>2];g=z[d+12>>2];i=C(g+g);j=z[c+8>>2];t=C(C(C(r*q)-C(p*i))*j);z[h+84>>2]=m-t;q=C(j*C(C(q*i)+C(r*p)));z[h+80>>2]=l-q;z[h+72>>2]=t+m;z[h+68>>2]=l+q;l=C(j*C(C(n*r)+C(C(g*i)+C(-1))));z[h+76>>2]=o-l;z[h+64>>2]=o+l;z[h+88>>2]=z[c+4>>2];o=z[f+4>>2];r=C(o+o);l=z[f+8>>2];j=C(r*l);g=z[f>>2];n=C(g+g);i=z[f+12>>2];m=C(n*i);z[h+28>>2]=j-m;z[h+20>>2]=j+m;g=C(C(1)-C(g*n));j=C(o*r);z[h+32>>2]=g-j;k=g;g=C(l+l);m=C(l*g);z[h+16>>2]=k-m;l=C(n*l);r=C(r*i);z[h+24>>2]=l+r;o=C(n*o);n=C(g*i);z[h+12>>2]=o-n;z[h+8>>2]=l-r;z[h+4>>2]=o+n;z[h>>2]=C(C(1)-j)-m;z[h+36>>2]=z[f+16>>2];z[h+40>>2]=z[f+20>>2];z[h+44>>2]=z[f+24>>2];z[h+48>>2]=z[e+4>>2];z[h+52>>2]=z[e+8>>2];z[h+56>>2]=z[e+12>>2];d=0;l=G_(h- -64|0,h+76|0,h+36|0,h+48|0,h,h+108|0,h+96|0);w=z[h+88>>2];a:{if(l>C(w*w)){break a}b:{c:{if(l==C(0)){t=z[h+32>>2];u=z[h+28>>2];x=z[h+24>>2];y=z[h+20>>2];A=z[h+16>>2];B=z[h+12>>2];P=z[h+44>>2];Q=z[h+40>>2];R=z[h+36>>2];M=z[h+84>>2];N=z[h+80>>2];O=z[h+76>>2];E=z[h+8>>2];H=z[h+72>>2];F=z[h+4>>2];I=z[h+68>>2];G=z[h>>2];J=z[h+64>>2];break c}H=z[h+72>>2];o=z[h+108>>2];M=z[h+84>>2];n=z[h+96>>2];E=z[h+8>>2];r=z[h+100>>2];y=z[h+20>>2];g=z[h+104>>2];t=z[h+32>>2];P=z[h+44>>2];i=C(C(H+C(o*C(M-H)))-C(C(C(C(n*E)+C(r*y))+C(g*t))+P));J=z[h+64>>2];O=z[h+76>>2];G=z[h>>2];B=z[h+12>>2];x=z[h+24>>2];R=z[h+36>>2];j=C(C(J+C(o*C(O-J)))-C(C(C(C(n*G)+C(r*B))+C(g*x))+R));I=z[h+68>>2];N=z[h+80>>2];F=z[h+4>>2];A=z[h+16>>2];u=z[h+28>>2];Q=z[h+40>>2];o=C(C(I+C(o*C(N-I)))-C(C(C(C(n*F)+C(r*A))+C(g*u))+Q));n=C(K(C(C(i*i)+C(C(j*j)+C(o*o)))));if(n==C(0)){break c}n=C(C(1)/n);z[a+8>>2]=i*n;z[a+4>>2]=o*n;z[a>>2]=j*n;l=C(w-C(K(l)));z[b>>2]=l>C(0)?l:C(0);break b}l=C(C(H*E)+C(C(J*G)+C(I*F)));o=C(C(M*E)+C(C(O*G)+C(F*N)));c=l>o;g=C(w+(c?l:o));n=C(C(P*E)+C(C(R*G)+C(F*Q)));j=C(D(C(C(t*E)+C(C(x*G)+C(F*u)))));S=z[h+56>>2];T=z[h+48>>2];U=z[h+52>>2];m=C(D(C(C(y*E)+C(C(B*G)+C(F*A)))));r=C(C(j*S)+C(C(C(D(C(C(E*E)+C(C(G*G)+C(F*F)))))*T)+C(U*m)));i=C(n-r);if(gi;q=C(w+(c?g:i));p=C(C(P*y)+C(C(R*B)+C(Q*A)));k=C(D(C(C(t*y)+C(C(x*B)+C(u*A)))));m=C(C(k*S)+C(C(m*T)+C(U*C(D(C(C(y*y)+C(C(B*B)+C(A*A))))))));s=C(p-m);if(qi?i:g;if(gi;m=C(w+(c?g:i));q=C(C(P*t)+C(C(R*x)+C(Q*u)));j=C(C(C(D(C(C(t*t)+C(C(x*x)+C(u*u)))))*S)+C(C(j*T)+C(U*k)));p=C(q-j);if(mi?i:g;if(gC(0)){p=g;g=C(C(1)/C(K(k)));p=C(p*g);q=C(j*g);m=C(i*g)}k=C(C(m*F)-C(G*q));v=C(C(q*E)-C(F*p));s=C(C(p*G)-C(E*m));d:{if(!(C(D(k))>C(9.999999974752427e-7)?1:C(D(v))>C(9.999999974752427e-7)|C(D(s))>C(9.999999974752427e-7))){break d}g=C(0);i=C(0);j=C(0);L=C(C(k*k)+C(C(v*v)+C(s*s)));if(L>C(0)){g=C(C(1)/C(K(L)));j=C(k*g);i=C(s*g);g=C(v*g)}k=C(C(H*j)+C(C(J*g)+C(I*i)));s=C(C(M*j)+C(C(O*g)+C(N*i)));c=k>s;v=C(w+(c?k:s));L=C(C(P*j)+C(C(R*g)+C(Q*i)));V=C(C(C(D(C(C(t*j)+C(C(x*g)+C(u*i)))))*S)+C(C(C(D(C(C(E*j)+C(C(G*g)+C(F*i)))))*T)+C(U*C(D(C(C(y*j)+C(C(B*g)+C(A*i))))))));W=C(L-V);if(vs?s:k;if(!(kC(9.999999974752427e-7)?1:C(D(v))>C(9.999999974752427e-7)|C(D(s))>C(9.999999974752427e-7))){break e}g=C(0);i=C(0);j=C(0);X=C(C(k*k)+C(C(v*v)+C(s*s)));if(X>C(0)){g=C(C(1)/C(K(X)));j=C(k*g);i=C(s*g);g=C(v*g)}k=C(C(H*j)+C(C(J*g)+C(I*i)));s=C(C(M*j)+C(C(O*g)+C(N*i)));c=k>s;v=C(C(P*j)+C(C(R*g)+C(Q*i)));X=C(C(C(D(C(C(t*j)+C(C(x*g)+C(u*i)))))*S)+C(C(C(D(C(C(E*j)+C(C(G*g)+C(F*i)))))*T)+C(U*C(D(C(C(y*j)+C(C(B*g)+C(A*i))))))));Y=C(v-X);Z=C(w+(c?k:s));if(Y>Z){break a}v=C(v+X);k=C((c?s:k)-w);if(vs?s:k;if(!(kC(9.999999974752427e-7)?1:C(D(j))>C(9.999999974752427e-7)|C(D(i))>C(9.999999974752427e-7))){break f}m=C(0);q=C(0);p=C(0);k=C(C(g*g)+C(C(j*j)+C(i*i)));if(k>C(0)){p=g;g=C(C(1)/C(K(k)));p=C(p*g);q=C(i*g);m=C(j*g)}g=C(C(H*p)+C(C(J*m)+C(I*q)));i=C(C(M*p)+C(C(O*m)+C(N*q)));c=g>i;j=C(w+(c?g:i));k=C(C(P*p)+C(C(R*m)+C(Q*q)));t=C(C(C(D(C(C(t*p)+C(C(x*m)+C(u*q)))))*S)+C(C(C(D(C(C(E*p)+C(C(G*m)+C(F*q)))))*T)+C(U*C(D(C(C(y*p)+C(C(B*m)+C(A*q))))))));u=C(k-t);if(ji?i:g;if(!(g>2]=l>C(0)?l:C(0);b=C(C(r*C(C(C(H+M)*C(.5))-P))+C(C(o*C(C(C(J+O)*C(.5))-R))+C(C(C(C(I+N)*C(.5))-Q)*n)))>2]=b?C(-r):r;z[a+4>>2]=b?C(-n):n;z[a>>2]=b?C(-o):o}d=1}xa=h+112|0;return d|0}function LN(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=xa-48|0;xa=h;v[h+44>>2]=b;e=w[b+47|0];f=w[b+46|0];v[h+8>>2]=0;v[h+12>>2]=0;l=v[a+4>>2];a:{if(!b|!w[l+1812|0]){break a}if(w[e+(B(f,7)+131536|0)|0]){if(!(f>>>0>4|e>>>0>4)){b:{if(!(e?f:0)){e=v[l+932>>2];if(!e){m=xa-16|0;xa=m;i=l+644|0;f=v[i+284>>2];if(f){e=v[37696];g=Ba[v[v[e>>2]+20>>2]](e)|0?45213:63804;j=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,g,18373,180)|0}else{j=0}v[m+12>>2]=j;e=v[i+268>>2];c:{if(e>>>0>=(v[i+272>>2]&2147483647)>>>0){e=0;g=i+4|0;f=v[g+268>>2];n=f&2147483647?f<<1:1;d:{if(!n){break d}f=n<<2;if(!(w[g+256|0]|f>>>0>256)){t[g+256|0]=1;e=g;break d}if(!f){break d}e=v[37696];k=Ba[v[v[e>>2]+20>>2]](e)|0?45213:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,k,16608,553)|0}k=v[g+264>>2];p=(k<<2)+e|0;if((k|0)>0){o=v[g+260>>2];f=e;while(1){v[f>>2]=v[o>>2];o=o+4|0;f=f+4|0;if(p>>>0>f>>>0){continue}break}}v[p>>2]=v[m+12>>2];e:{if(v[g+268>>2]<0){break e}f=v[g+260>>2];if((f|0)==(g|0)){t[g+256|0]=0;break e}if(!f){break e}k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,f);k=v[g+264>>2]}v[g+268>>2]=n;v[g+260>>2]=e;v[g+264>>2]=k+1;break c}v[v[i+264>>2]+(e<<2)>>2]=j;v[i+268>>2]=e+1}e=(j+(v[i+276>>2]<<7)|0)-128|0;if(j>>>0<=e>>>0){f=v[i+288>>2];while(1){v[e>>2]=f;f=e;e=e-128|0;if(j>>>0<=e>>>0){continue}break}v[i+288>>2]=f}xa=m+16|0;e=v[l+932>>2]}v[l+932>>2]=v[e>>2];v[l+924>>2]=v[l+924>>2]+1;g=e+80|0;f=1;break b}e=v[l+640>>2];if(!e){m=xa-16|0;xa=m;i=l+352|0;f=v[i+284>>2];if(f){e=v[37696];g=Ba[v[v[e>>2]+20>>2]](e)|0?45371:63804;j=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,g,18373,180)|0}else{j=0}v[m+12>>2]=j;e=v[i+268>>2];f:{if(e>>>0>=(v[i+272>>2]&2147483647)>>>0){e=0;g=i+4|0;f=v[g+268>>2];n=f&2147483647?f<<1:1;g:{if(!n){break g}f=n<<2;if(!(w[g+256|0]|f>>>0>256)){t[g+256|0]=1;e=g;break g}if(!f){break g}e=v[37696];k=Ba[v[v[e>>2]+20>>2]](e)|0?45371:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,k,16608,553)|0}k=v[g+264>>2];p=(k<<2)+e|0;if((k|0)>0){o=v[g+260>>2];f=e;while(1){v[f>>2]=v[o>>2];o=o+4|0;f=f+4|0;if(p>>>0>f>>>0){continue}break}}v[p>>2]=v[m+12>>2];h:{if(v[g+268>>2]<0){break h}f=v[g+260>>2];if((f|0)==(g|0)){t[g+256|0]=0;break h}if(!f){break h}k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,f);k=v[g+264>>2]}v[g+268>>2]=n;v[g+260>>2]=e;v[g+264>>2]=k+1;break f}v[v[i+264>>2]+(e<<2)>>2]=j;v[i+268>>2]=e+1}e=(j+B(v[i+276>>2],272)|0)-272|0;if(j>>>0<=e>>>0){f=v[i+288>>2];while(1){v[e>>2]=f;f=e;e=e-272|0;if(j>>>0<=e>>>0){continue}break}v[i+288>>2]=f}xa=m+16|0;e=v[l+640>>2]}v[l+640>>2]=v[e>>2];v[l+632>>2]=v[l+632>>2]+1;g=e+80|0;f=4}v[e+76>>2]=g;t[e+66|0]=0;t[e+65|0]=f;t[e+64|0]=0;v[e+16>>2]=2139095039;v[e+20>>2]=2139095039;v[e+48>>2]=0;v[e+52>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+8>>2]=0;v[e+12>>2]=1065353216;v[e>>2]=0;v[e+4>>2]=0;v[e+24>>2]=2139095039;v[e+28>>2]=0;v[e+56>>2]=0;v[e+60>>2]=1065353216;v[e+40>>2]=0;v[e+44>>2]=1065353216;v[h+8>>2]=e;t[h+15|0]=w[h+15|0]|1;t[e+64|0]=0;t[e+66|0]=0;v[e+24>>2]=2139095039;v[e+28>>2]=0;v[e+16>>2]=2139095039;v[e+20>>2]=2139095039;v[e+8>>2]=0;v[e+12>>2]=1065353216;v[e>>2]=0;v[e+4>>2]=0;break a}v[h+8>>2]=0;t[h+15|0]=w[h+15|0]|3;break a}t[h+15|0]=0;v[h+8>>2]=0}v[h+24>>2]=0;v[h+28>>2]=0;v[h+16>>2]=0;v[h+20>>2]=0;t[h+29|0]=d;t[h+30|0]=w[b+40|0]<<2&8|((c|0)>0?2:c>>>31|0)|32;c=w[b+43|0];if(c&2){t[b+43|0]=c|64}c=v[a+72>>2];i:{if(c>>>0>=(v[a+76>>2]&2147483647)>>>0){c=0;d=v[a+76>>2];f=d&2147483647?d<<1:1;j:{if(!f){break j}d=f<<4;if(!d){break j}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?27179:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,e,16608,553)|0}d=v[a+72>>2];if((d|0)>0){g=(d<<4)+c|0;e=v[a+68>>2];d=c;while(1){j=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=j;j=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=j;e=e+16|0;d=d+16|0;if(g>>>0>d>>>0){continue}break}d=v[a+72>>2]}e=v[h+20>>2];d=(d<<4)+c|0;v[d>>2]=v[h+16>>2];v[d+4>>2]=e;e=v[h+28>>2];v[d+8>>2]=v[h+24>>2];v[d+12>>2]=e;k:{if(v[a+76>>2]<0){break k}d=v[a+68>>2];if(!d){break k}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}v[a+76>>2]=f;v[a+68>>2]=c;break i}d=v[h+20>>2];c=v[a+68>>2]+(c<<4)|0;v[c>>2]=v[h+16>>2];v[c+4>>2]=d;d=v[h+28>>2];v[c+8>>2]=v[h+24>>2];v[c+12>>2]=d}v[a+72>>2]=v[a+72>>2]+1;c=v[a+96>>2];l:{if(c>>>0>=(v[a+100>>2]&2147483647)>>>0){c=0;d=v[a+100>>2];f=d&2147483647?d<<1:1;m:{if(!f){break m}d=f<<3;if(!d){break m}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?43713:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,e,16608,553)|0}d=v[a+96>>2];if((d|0)>0){g=(d<<3)+c|0;e=v[a+92>>2];d=c;while(1){j=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=j;e=e+8|0;d=d+8|0;if(g>>>0>d>>>0){continue}break}d=v[a+96>>2]}e=v[h+12>>2];d=(d<<3)+c|0;v[d>>2]=v[h+8>>2];v[d+4>>2]=e;n:{if(v[a+100>>2]<0){break n}d=v[a+92>>2];if(!d){break n}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}v[a+100>>2]=f;v[a+92>>2]=c;break l}d=v[h+12>>2];c=v[a+92>>2]+(c<<3)|0;v[c>>2]=v[h+8>>2];v[c+4>>2]=d}v[a+96>>2]=v[a+96>>2]+1;c=v[a+84>>2];o:{if(c>>>0>=(v[a+88>>2]&2147483647)>>>0){b=0;c=v[a+88>>2];f=c&2147483647?c<<1:1;p:{if(!f){break p}c=f<<2;if(!c){break p}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?57149:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,d,16608,553)|0}d=v[a+84>>2];g=(d<<2)+b|0;if((d|0)>0){e=v[a+80>>2];c=b;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}v[g>>2]=v[h+44>>2];q:{if(v[a+88>>2]<0){break q}c=v[a+80>>2];if(!c){break q}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);d=v[a+84>>2]}v[a+88>>2]=f;v[a+80>>2]=b;v[a+84>>2]=d+1;break o}v[v[a+80>>2]+(c<<2)>>2]=b;v[a+84>>2]=c+1}v[v[h+44>>2]+68>>2]=v[a+64>>2]|(v[a+72>>2]<<3)+2147483640|-2147483648;xa=h+48|0}function L1(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0);j=xa-112|0;xa=j;t=z[b>>2];J=z[c>>2];q=z[b+4>>2];F=z[c+4>>2];B=z[b+8>>2];y=z[c+8>>2];v[j+108>>2]=0;z[j+104>>2]=y-B;z[j+100>>2]=F-q;S=C(J-t);z[j+96>>2]=S;G=z[d>>2];D=z[e>>2];L=z[d+4>>2];A=z[e+4>>2];P=z[d+8>>2];E=z[e+8>>2];v[j+92>>2]=0;k=C(E-P);z[j+88>>2]=k;l=C(A-L);z[j+84>>2]=l;o=C(D-G);z[j+80>>2]=o;H=z[f>>2];Q=z[f+4>>2];R=z[f+8>>2];v[j+76>>2]=0;s=C(R-P);z[j+72>>2]=s;w=C(Q-L);z[j+68>>2]=w;I=C(H-G);z[j+64>>2]=I;v[j+60>>2]=0;z[j+56>>2]=R-E;z[j+52>>2]=Q-A;z[j+48>>2]=H-D;Q=C(C(C(o*o)+C(l*l))+C(k*k));R=C(C(C(I*I)+C(w*w))+C(s*s));D=C(C(C(o*I)+C(l*w))+C(k*s));A=C(C(1)/C(C(Q*R)-C(D*D)));H=C(C(o*w)-C(I*l));M=C(C(l*s)-C(w*k));N=C(C(k*I)-C(s*o));E=C(C(1)/C(K(C(C(H*H)+C(C(M*M)+C(N*N))))));a:{b:{m=C(B-P);B=C(H*E);H=C(M*E);r=C(q-L);q=C(N*E);E=C(C(m*B)+C(C(C(t-G)*H)+C(r*q)));t=C(C(C(y-P)*B)+C(C(C(J-G)*H)+C(C(F-L)*q)));if(!(C(E*t)>2];V=z[b+4>>2];r=z[b>>2];break b}F=z[j+104>>2];y=z[j+100>>2];J=C(C(C(-1)/C(C(B*F)+C(C(H*S)+C(q*y))))*E);S=z[b+8>>2];F=C(C(C(F*J)+S)-P);r=z[b>>2];M=C(C(r+C(z[j+96>>2]*J))-G);V=z[b+4>>2];y=C(C(V+C(y*J))-L);N=C(C(F*k)+C(C(M*o)+C(l*y)));y=C(C(F*s)+C(C(M*I)+C(w*y)));F=C(A*C(C(R*N)-C(D*y)));if(!(F>=C(-1.1920928955078125e-7))|!(F<=C(1.0000001192092896))){break b}y=C(A*C(C(Q*y)-C(D*N)));if(!(y>=C(-1.1920928955078125e-7))|!(y<=C(1.0000001192092896))|!(C(F+y)>2]=J;z[h>>2]=F;z[i>>2]=y;v[a>>2]=0;break a}F=C(t*t);y=C(E*E);J=C(C(z[c>>2]-C(H*t))-G);M=C(C(z[c+4>>2]-C(q*t))-L);t=C(C(z[c+8>>2]-C(B*t))-P);N=C(C(C(J*o)+C(M*l))+C(t*k));t=C(C(C(J*I)+C(M*w))+C(t*s));M=C(A*C(C(R*N)-C(D*t)));N=C(A*C(C(Q*t)-C(D*N)));f=M>=C(-1.1920928955078125e-7)&M<=C(1.0000001192092896)&(N>=C(-1.1920928955078125e-7)&N<=C(1.0000001192092896))&C(M+N)=C(-1.1920928955078125e-7)&S<=C(1.0000001192092896)&(V>=C(-1.1920928955078125e-7)&V<=C(1.0000001192092896))&C(S+V)>2]=b?C(0):C(1);z[h>>2]=b?S:M;z[i>>2]=b?V:N;z[a>>2]=b?y:F;break a}c=j+80|0;P=z[c+8>>2];ca=z[e+8>>2];da=z[e>>2];ea=z[e+4>>2];D=z[j+56>>2];A=z[j+48>>2];E=z[j+52>>2];e=j- -64|0;t=z[e+8>>2];B=z[e>>2];H=z[e+4>>2];k=z[j+104>>2];l=z[j+96>>2];o=z[j+100>>2];q=C(C(k*k)+C(C(l*l)+C(o*o)));r=C(C(1)/q);W=z[c+8>>2];s=z[c>>2];w=z[c+4>>2];x=C(C(k*W)+C(C(l*s)+C(o*w)));aa=C(C(s*s)+C(w*w));p=C(C(W*W)+aa);n=C(C(q*p)-C(x*x));c=j+32|0;Z=x;I=z[b+8>>2];J=z[d+8>>2];U=C(I-J);G=z[b>>2];Q=z[d>>2];T=C(G-Q);L=z[b+4>>2];R=z[d+4>>2];u=C(L-R);m=C(C(W*U)+C(C(s*T)+C(w*u)));U=C(C(k*U)+C(C(l*T)+C(o*u)));x=n!=C(0)?C(C(C(x*m)-C(p*U))/n):C(1);x=xC(0)?x:C(0))))):C(1);x=xC(0)?x:C(0);b=q!=C(0);p=b?C(r*C(C(Z*x)-U)):C(1);p=pC(0)?p:C(0);z[c+12>>2]=U;n=C(C(t*t)+C(C(B*B)+C(H*H)));p=C(C(k*t)+C(C(l*B)+C(o*H)));T=C(C(q*n)-C(p*p));X=p;Z=C(I-J);u=Z;fa=C(G-Q);m=fa;ga=C(L-R);O=ga;Y=C(C(t*u)+C(C(B*m)+C(H*O)));u=C(C(k*u)+C(C(l*m)+C(o*O)));p=T!=C(0)?C(C(C(p*Y)-C(n*u))/T):C(1);p=pC(0)?p:C(0))))):C(1);p=pC(0)?p:C(0);n=b?C(r*C(C(X*p)-u)):C(1);n=nC(0)?n:C(0);z[c+8>>2]=T;u=C(C(D*D)+C(C(A*A)+C(E*E)));n=C(C(k*D)+C(C(l*A)+C(o*E)));m=C(C(q*u)-C(n*n));_=n;O=C(I-ca);Y=C(G-da);X=C(L-ea);$=C(C(D*O)+C(C(A*Y)+C(E*X)));O=C(C(k*O)+C(C(l*Y)+C(o*X)));n=m!=C(0)?C(C(C(n*$)-C(u*O))/m):C(1);n=nC(0)?n:C(0))))):C(1);n=nC(0)?n:C(0);u=b?C(r*C(C(_*n)-O)):C(1);u=uC(0)?u:C(0);z[c+4>>2]=u;O=q;q=C(C(P*P)+aa);m=C(C(k*P)+C(C(l*s)+C(o*w)));O=C(C(O*q)-C(m*m));aa=r;_=m;r=Z;Y=fa;X=ga;$=C(C(P*r)+C(C(s*Y)+C(w*X)));r=C(C(k*r)+C(C(l*Y)+C(o*X)));m=O!=C(0)?C(C(C(m*$)-C(q*r))/O):C(1);m=mC(0)?m:C(0))))):C(1);q=qC(0)?q:C(0);r=b?C(aa*C(C(_*q)-r)):C(1);r=rC(0)?r:C(0);z[c>>2]=r;z[j+28>>2]=x;z[j+24>>2]=p;z[j+20>>2]=n;z[j+16>>2]=q;m=C(C(G+C(l*U))-C(Q+C(s*x)));Z=C(m*m);m=C(C(L+C(o*U))-C(R+C(w*x)));W=C(C(I+C(k*U))-C(J+C(W*x)));z[j+12>>2]=Z+C(C(m*m)+C(W*W));B=C(C(G+C(l*T))-C(Q+C(B*p)));m=C(B*B);B=C(C(L+C(o*T))-C(R+C(H*p)));t=C(C(I+C(k*T))-C(J+C(t*p)));z[j+8>>2]=m+C(C(B*B)+C(t*t));A=C(C(G+C(l*u))-C(da+C(A*n)));m=C(A*A);A=C(C(L+C(o*u))-C(ea+C(E*n)));D=C(C(I+C(k*u))-C(ca+C(D*n)));z[j+4>>2]=m+C(C(A*A)+C(D*D));l=C(C(G+C(l*r))-C(Q+C(s*q)));m=C(l*l);l=C(C(L+C(o*r))-C(R+C(w*q)));k=C(C(I+C(k*r))-C(J+C(P*q)));z[j>>2]=m+C(C(l*l)+C(k*k));o=z[j+20>>2];k=z[j+8>>2];s=z[j+4>>2];b=k>s;w=z[j>>2];d=!(ww);l=d?b?C(C(1)-o):C(0):z[j+16>>2];o=d?b?o:z[j+24>>2]:C(0);k=d?b?s:k:w;s=z[(d?b?c|4:c|8:c)>>2];c:{if(ba){b=k>y;z[g>>2]=b?C(0):s;z[h>>2]=b?S:l;z[i>>2]=b?V:o;k=b?y:k;break c}if(f){b=k>F;z[g>>2]=b?C(1):s;z[h>>2]=b?M:l;z[i>>2]=b?N:o;k=b?F:k;break c}z[g>>2]=s;z[h>>2]=l;z[i>>2]=o}z[a>>2]=k}xa=j+112|0}function Zx(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=C(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=C(0),u=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;e=xa-1328|0;xa=e;a:{if(w[a+488|0]){b9(v[37696],8,12859,1211,76502,0);break a}m=a+112|0;Ex(a,m);f=v[a+448>>2];D=v[a+468>>2];H=J9(v[d+40>>2],0,B(D,c)<<2);g=w[v[a+476>>2]];l=v[d+52>>2];v[e+1320>>2]=0;d=e+1312|0;v[d>>2]=0;v[d+4>>2]=0;d=e+1304|0;v[d>>2]=0;v[d+4>>2]=0;d=e+1296|0;v[d>>2]=0;v[d+4>>2]=0;d=e+1288|0;v[d>>2]=0;v[d+4>>2]=0;v[e+1280>>2]=0;v[e+1284>>2]=0;r=Cx(l,f,e+1280|0);u=v[e+1292>>2];n=l+4|0;o=v[a+468>>2];j=(o<<3)+15&-16;f=v[l+4>>2];d=v[l+8>>2];h=v[(f+(d<<2)|0)-4>>2];if((j|0)<=(h-v[l+16>>2]|0)){h=h-j|0;v[e+320>>2]=h;b:{if(d>>>0>=(v[l+12>>2]&2147483647)>>>0){Vs(n,e+320|0);break b}v[f+(d<<2)>>2]=h;v[l+8>>2]=d+1}E=v[e+320>>2]}if(!c){break a}s=g&1;F=o<<2;p=F+E|0;t=C(C(1)/z[a+464>>2]);I=o&-4;G=o&3;J=o-1>>>0<3;while(1){g=B(A,12)+b|0;d=v[g+8>>2];J9(e+320|0,0,960);v[e+1260>>2]=2139095039;v[e+1244>>2]=-8388609;v[e+1180>>2]=2139095039;v[e+1164>>2]=-8388609;v[e+1100>>2]=2139095039;v[e+1084>>2]=-8388609;v[e+1020>>2]=2139095039;v[e+1004>>2]=-8388609;v[e+940>>2]=2139095039;v[e+924>>2]=-8388609;v[e+860>>2]=2139095039;v[e+844>>2]=-8388609;v[e+780>>2]=2139095039;v[e+764>>2]=-8388609;v[e+700>>2]=2139095039;v[e+684>>2]=-8388609;v[e+620>>2]=2139095039;v[e+604>>2]=-8388609;v[e+540>>2]=2139095039;v[e+524>>2]=-8388609;v[e+460>>2]=2139095039;v[e+444>>2]=-8388609;v[e+380>>2]=2139095039;v[e+364>>2]=-8388609;c:{if(v[d+24>>2]){f=v[d+32>>2];z[e+288>>2]=z[f>>2];z[e+292>>2]=z[f+4>>2];z[e+296>>2]=z[f+8>>2];z[e+300>>2]=z[f+12>>2];z[e+304>>2]=z[f+16>>2];z[e+308>>2]=z[f+20>>2];i=z[f+24>>2];break c}v[e+304>>2]=0;v[e+308>>2]=0;v[e+296>>2]=0;v[e+300>>2]=1065353216;v[e+288>>2]=0;v[e+292>>2]=0;i=C(0)}z[e+312>>2]=i;d:{if(v[d+28>>2]){f=v[d+36>>2];z[e+256>>2]=z[f>>2];z[e+260>>2]=z[f+4>>2];z[e+264>>2]=z[f+8>>2];z[e+268>>2]=z[f+12>>2];z[e+272>>2]=z[f+16>>2];z[e+276>>2]=z[f+20>>2];i=z[f+24>>2];break d}v[e+272>>2]=0;v[e+276>>2]=0;v[e+264>>2]=0;v[e+268>>2]=1065353216;v[e+256>>2]=0;v[e+260>>2]=0;i=C(0)}z[e+280>>2]=i;v[e+248>>2]=0;v[e+240>>2]=0;v[e+244>>2]=0;j=Ba[v[d+12>>2]](e+320|0,e+240|0,12,e+192|0,v[d+20>>2],e+288|0,e+256|0,(x[d+10>>1]&512)>>>9|0,e+224|0,e+208|0)|0;h=v[g+4>>2];g=v[g>>2];k=J9(E,0,F);e:{if(!j){break e}f:{if((g|0)==-2147483648){break f}f=0;if((h|0)==-2147483648){break f}while(1){d=(e+320|0)+B(f,80)|0;z[e+160>>2]=z[d>>2];z[e+164>>2]=z[d+4>>2];i=z[d+8>>2];v[e+172>>2]=0;z[e+168>>2]=i;z[e+176>>2]=z[d+16>>2];z[e+180>>2]=z[d+20>>2];i=z[d+24>>2];v[e+188>>2]=0;z[e+184>>2]=i;z[e+128>>2]=z[d+32>>2];z[e+132>>2]=z[d+36>>2];i=z[d+40>>2];v[e+140>>2]=0;z[e+136>>2]=i;z[e+144>>2]=z[d+48>>2];z[e+148>>2]=z[d+52>>2];i=z[d+56>>2];v[e+156>>2]=0;z[e+152>>2]=i;g:{if(g>>>0<=h>>>0){Xx(a,s,g,h,u,e+160|0,e+128|0,e+96|0,e- -64|0,k);break g}Xx(a,s,h,g,u,e+128|0,e+160|0,e- -64|0,e+96|0,k)}f=f+1|0;if((j|0)!=(f|0)){continue}break}break e}d=0;if((g|0)==-2147483648){while(1){f=(e+320|0)+B(d,80)|0;z[e+160>>2]=z[f+32>>2];z[e+164>>2]=z[f+36>>2];i=z[f+40>>2];v[e+172>>2]=0;z[e+168>>2]=i;z[e+176>>2]=z[f+48>>2];z[e+180>>2]=z[f+52>>2];i=z[f+56>>2];v[e+188>>2]=0;z[e+184>>2]=i;Yx(e+32|0,a,s,h,u,e+160|0,k);d=d+1|0;if((j|0)!=(d|0)){continue}break e}}while(1){f=(e+320|0)+B(d,80)|0;z[e+160>>2]=z[f>>2];z[e+164>>2]=z[f+4>>2];i=z[f+8>>2];v[e+172>>2]=0;z[e+168>>2]=i;z[e+176>>2]=z[f+16>>2];z[e+180>>2]=z[f+20>>2];i=z[f+24>>2];v[e+188>>2]=0;z[e+184>>2]=i;Yx(e,a,s,g,u,e+160|0,k);d=d+1|0;if((j|0)!=(d|0)){continue}break}}h:{if(!o){break h}h=0;d=0;g=0;if(!J){while(1){f=d<<2;z[f+p>>2]=t*z[f+k>>2];j=f|4;z[j+p>>2]=t*z[k+j>>2];j=f|8;z[j+p>>2]=t*z[k+j>>2];f=f|12;z[f+p>>2]=t*z[f+k>>2];d=d+4|0;g=g+4|0;if((I|0)!=(g|0)){continue}break}}if(!G){break h}while(1){f=d<<2;z[f+p>>2]=t*z[f+k>>2];d=d+1|0;h=h+1|0;if((G|0)!=(h|0)){continue}break}}rx(m);v[e+1308>>2]=p;v[e+1296>>2]=0;v[e+1304>>2]=0;v[e+1312>>2]=(B(A,D)<<2)+H;i:{if(s){v[e+168>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;d=e+1280|0;wx(m,d);J9(v[e+1288>>2],0,v[a+448>>2]<<5);sx(m,e+160|0,d);Ix(m,d);Kx(m,d);Jx(m,d);break i}v[e+168>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;d=e+1280|0;wx(m,d);J9(v[e+1288>>2],0,v[a+448>>2]<<5);sx(m,e+160|0,d);Ix(m,d);Kx(m,d);Mx(m,d);Nx(m,d)}d=v[l+16>>2];j:{if(!(d>>>0<=k>>>0&k>>>0>2]>>>0)){if(!k){break j}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,k);break j}K=v[l+4>>2];h=0;q=v[l+8>>2];g=q;while(1){j=h;h=h+1|0;f=g;g=f-1|0;d=(g<<2)+K|0;if(k>>>0>y[d>>2]){continue}break}k:{if(f>>>0>=q>>>0){break k}g=0;h=j&3;if(h){while(1){v[d>>2]=v[v[n>>2]+(f<<2)>>2];f=f+1|0;d=d+4|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}if(j-1>>>0<3){break k}while(1){g=f<<2;v[d>>2]=v[g+v[n>>2]>>2];v[d+4>>2]=v[(g+v[n>>2]|0)+4>>2];v[d+8>>2]=v[(g+v[n>>2]|0)+8>>2];v[d+12>>2]=v[(g+v[n>>2]|0)+12>>2];d=d+16|0;f=f+4|0;if((q|0)!=(f|0)){continue}break}}v[l+8>>2]=q-1}d=v[l+16>>2];l:{if(!(d>>>0<=r>>>0&d+v[l+20>>2]>>>0>r>>>0)){if(!r){break l}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,r);break l}q=v[l+4>>2];f=0;k=v[l+8>>2];h=k;while(1){j=f;f=f+1|0;g=h;h=g-1|0;d=q+(h<<2)|0;if(y[d>>2]>>0){continue}break}m:{if(g>>>0>=k>>>0){break m}f=0;h=j&3;if(h){while(1){v[d>>2]=v[v[n>>2]+(g<<2)>>2];g=g+1|0;d=d+4|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}}if(j-1>>>0<3){break m}while(1){f=g<<2;v[d>>2]=v[f+v[n>>2]>>2];v[d+4>>2]=v[(f+v[n>>2]|0)+4>>2];v[d+8>>2]=v[(f+v[n>>2]|0)+8>>2];v[d+12>>2]=v[(f+v[n>>2]|0)+12>>2];d=d+16|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}v[l+8>>2]=k-1}A=A+1|0;if((A|0)!=(c|0)){continue}break}}xa=e+1328|0}function eV(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=0,x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0);i=xa-80|0;xa=i;a:{b:{c:{d:{e:{f:{g:{switch(v[b>>2]+1|0){case 1:e=z[c+20>>2];f=z[c+16>>2];d=C(C(z[b+4>>2]+C(0))*d);z[a+8>>2]=z[c+24>>2]-d;z[a+4>>2]=e-d;z[a>>2]=f-d;e=z[c+20>>2];f=z[c+16>>2];z[a+20>>2]=d+z[c+24>>2];z[a+16>>2]=d+e;z[a+12>>2]=d+f;break a;case 2:e=z[c>>2];f=C(e+e);j=z[c+8>>2];m=z[c+4>>2];h=z[c+12>>2];g=C(h+h);n=C(C(f*j)-C(m*g));k=C(C(e*f)+C(C(h*g)+C(-1)));g=C(C(j*g)+C(f*m));f=C(C(z[c+24>>2]*n)+C(C(z[c+16>>2]*k)+C(g*z[c+20>>2])));h=C(-f);e=C(D(g));m=C(D(n));b=mC(.9999989867210388))))){if(k>C(0)){k=C(f+C(0));g=C(-85070586659632215e21);break f}g=C(h-C(0));j=C(-85070586659632215e21);break c}if(!(!(e>C(.9999989867210388))|(!b|!(jC(0)){g=C(-85070586659632215e21);k=C(85070586659632215e21);e=C(f+C(0));break e}j=C(h-C(0));g=C(-85070586659632215e21);break c}g=C(-85070586659632215e21);k=C(85070586659632215e21);if(!(eC(.9999989867210388))|!(jC(0)){e=C(85070586659632215e21);f=C(f+C(0));break d}e=C(85070586659632215e21);f=C(85070586659632215e21);j=C(-85070586659632215e21);h=C(h-C(0));break b;case 3:n=z[c+20>>2];m=z[c+16>>2];e=z[c>>2];f=C(e+e);l=z[c+8>>2];o=z[c+4>>2];h=z[c+12>>2];g=C(h+h);k=z[b+8>>2];j=z[b+4>>2];p=C(C(C(C(C(D(C(C(f*l)-C(o*g))))*k)+j)+C(0))*d);z[a+8>>2]=z[c+24>>2]-p;q=n;n=C(C(C(j+C(k*C(D(C(C(l*g)+C(f*o))))))+C(0))*d);z[a+4>>2]=q-n;d=C(C(C(j+C(k*C(D(C(C(e*f)+C(C(h*g)+C(-1)))))))+C(0))*d);z[a>>2]=m-d;e=z[c+20>>2];f=z[c+16>>2];z[a+20>>2]=p+z[c+24>>2];z[a+16>>2]=n+e;z[a+12>>2]=d+f;break a;case 4:k=z[c+20>>2];j=z[c+16>>2];n=z[b+4>>2];m=z[c>>2];f=C(m+m);e=z[c+8>>2];y=C(f*e);h=z[c+4>>2];l=C(h+h);o=z[c+12>>2];A=C(l*o);g=C(n*C(y-A));E=z[c+24>>2];r=C(C(1)-C(m*f));s=C(h*l);m=z[b+12>>2];p=C(C(r-s)*m);F=p>C(0)?p:C(-p);q=g>C(0)?g:C(-g);p=C(l*e);G=C(f*o);g=z[b+8>>2];l=C(C(p+G)*g);l=C(C(C(F+C(q+(l>C(0)?l:C(-l))))+C(0))*d);z[a+20>>2]=E+l;z[a+8>>2]=E-l;l=C(m*C(p-G));F=l>C(0)?l:C(-l);h=C(f*h);l=C(e+e);o=C(o*l);f=C(n*C(h+o));q=f>C(0)?f:C(-f);f=C(e*l);e=C(g*C(r-f));l=C(C(C(F+C(q+(e>C(0)?e:C(-e))))+C(0))*d);z[a+16>>2]=k+l;e=C(n*C(C(C(1)-s)-f));f=e>C(0)?e:C(-e);e=C(g*C(h-o));h=C(f+(e>C(0)?e:C(-e)));e=C(m*C(y+A));d=C(C(C(h+(e>C(0)?e:C(-e)))+C(0))*d);z[a+12>>2]=j+d;z[a+4>>2]=k-l;z[a>>2]=j-d;break a;case 5:u=v[b+32>>2];if(t[b+36|0]&1){f=z[c+4>>2];g=C(f+f);e=z[c+8>>2];m=C(g*e);k=z[c>>2];h=C(k+k);j=z[c+12>>2];l=C(h*j);n=C(m-l);z[i+68>>2]=n;m=C(m+l);z[i+60>>2]=m;k=C(C(1)-C(k*h));r=C(f*g);l=C(k-r);z[i+72>>2]=l;q=k;k=C(e+e);s=C(e*k);o=C(q-s);z[i+56>>2]=o;e=C(h*e);g=C(g*j);p=C(e+g);z[i+64>>2]=p;f=C(h*f);h=C(k*j);y=C(f-h);z[i+52>>2]=y;A=C(e-g);z[i+48>>2]=A;E=C(f+h);z[i+44>>2]=E;r=C(C(C(1)-r)-s);z[i+40>>2]=r;if(v[b+12>>2]-1065353216|(v[b+8>>2]-1065353216|v[b+4>>2]-1065353216)){fV(i+40|0,b+4|0);l=z[i+72>>2];p=z[i+64>>2];m=z[i+60>>2];o=z[i+56>>2];y=z[i+52>>2];A=z[i+48>>2];E=z[i+44>>2];r=z[i+40>>2];n=z[i+68>>2]}b=v[u+56>>2]+B(w[u+55|0],20)|0;e=z[b>>2];f=z[b+4>>2];g=z[b+8>>2];h=C(C(C(e*A)+C(f*m))+C(g*l));k=C(C(C(e*E)+C(f*o))+C(g*n));g=C(C(C(e*r)+C(f*y))+C(g*p));u=w[u+54|0]-1|0;h:{if(!u){j=g;f=k;e=h;break h}e=h;f=k;j=g;while(1){x=z[b+12>>2];F=z[b+16>>2];q=z[b+20>>2];s=C(C(C(A*x)+C(m*F))+C(l*q));e=e>s?e:s;G=C(C(C(E*x)+C(o*F))+C(n*q));f=f>G?f:G;x=C(C(C(r*x)+C(y*F))+C(p*q));j=j>x?j:x;h=h>2];m=z[c+24>>2];q=C(j+C(0));j=z[c+16>>2];l=C(q+j);g=C(C(g-C(0))+j);j=C(C(l+g)*C(.5));d=C(d*C(.5));g=C(d*C(l-g));z[a+12>>2]=j+g;z[a>>2]=j-g;e=C(m+C(e+C(0)));h=C(m+C(h-C(0)));g=C(C(e+h)*C(.5));e=C(d*C(e-h));z[a+20>>2]=g+e;f=C(n+C(f+C(0)));h=C(n+C(k-C(0)));k=C(C(f+h)*C(.5));d=C(d*C(f-h));z[a+16>>2]=k+d;z[a+8>>2]=g-e;z[a+4>>2]=k-d;break a}gV(c,u+16|0,b+4|0,i+40|0,i+24|0);e=z[i+40>>2];h=z[i+24>>2];f=z[i+44>>2];g=z[i+28>>2];k=C(C(z[i+32>>2]+C(0))*d);j=z[i+48>>2];z[a+20>>2]=k+j;g=C(C(g+C(0))*d);z[a+16>>2]=f+g;d=C(C(h+C(0))*d);z[a+12>>2]=e+d;z[a+8>>2]=j-k;z[a+4>>2]=f-g;z[a>>2]=e-d;break a;case 6:gV(c,v[b+36>>2]+32|0,b+4|0,i+40|0,i+24|0);e=z[i+40>>2];h=z[i+24>>2];f=z[i+44>>2];g=z[i+28>>2];k=C(C(z[i+32>>2]+C(0))*d);j=z[i+48>>2];z[a+20>>2]=k+j;g=C(C(g+C(0))*d);z[a+16>>2]=f+g;d=C(C(h+C(0))*d);z[a+12>>2]=e+d;z[a+8>>2]=j-k;z[a+4>>2]=f-g;z[a>>2]=e-d;break a;case 7:e=z[b+12>>2];f=z[b+8>>2];h=z[b+16>>2];v[i+60>>2]=0;v[i+64>>2]=1065353216;v[i+52>>2]=0;v[i+56>>2]=0;z[i+48>>2]=h;z[i+44>>2]=f;z[i+40>>2]=e;gV(c,v[b+4>>2]+16|0,i+40|0,i+24|0,i+8|0);e=z[i+24>>2];h=z[i+8>>2];f=z[i+28>>2];g=z[i+12>>2];k=C(C(z[i+16>>2]+C(0))*d);j=z[i+32>>2];z[a+20>>2]=k+j;g=C(C(g+C(0))*d);z[a+16>>2]=f+g;d=C(C(h+C(0))*d);z[a+12>>2]=e+d;z[a+8>>2]=j-k;z[a+4>>2]=f-g;z[a>>2]=e-d;break a;case 0:case 8:break g;default:break a}}b9(v[37696],32,7548,364,66912,0);break a}e=C(85070586659632215e21)}f=C(85070586659632215e21)}j=C(-85070586659632215e21);h=C(-85070586659632215e21);break b}k=C(85070586659632215e21);e=C(85070586659632215e21);f=C(85070586659632215e21);h=C(-85070586659632215e21)}if(d!=C(1)){n=C(C(f+h)*C(.5));h=C(C(C(f-h)*C(.5))*d);f=C(n+h);m=C(C(e+j)*C(.5));j=C(C(C(e-j)*C(.5))*d);e=C(m+j);l=C(C(k+g)*C(.5));d=C(C(C(k-g)*C(.5))*d);k=C(l+d);j=C(m-j);g=C(l-d);h=C(n-h)}z[a+12>>2]=k;z[a+8>>2]=h;z[a+4>>2]=j;z[a>>2]=g;z[a+20>>2]=f;z[a+16>>2]=e}xa=i+80|0}function cY(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=0,E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0);j=xa-272|0;xa=j;v[j+264>>2]=0;v[j+268>>2]=0;v[j+256>>2]=0;v[j+260>>2]=0;t=z[d+8>>2];u=z[d+4>>2];B=z[d>>2];L=z[e+8>>2];E=z[e+4>>2];M=z[e>>2];v[j+240>>2]=1;D=v[b+4>>2];q=z[D+52>>2];s=z[D+56>>2];r=v[a+4>>2];x=z[r+72>>2];m=z[r- -64>>2];n=z[r+68>>2];o=z[r+56>>2];y=z[r+52>>2];N=z[r+88>>2];S=z[r+80>>2];T=z[r+84>>2];H=z[D+48>>2];I=z[r+48>>2];k=z[c+8>>2];l=z[c>>2];p=z[c+4>>2];v[j+196>>2]=0;v[j+200>>2]=0;v[j+204>>2]=0;v[j+208>>2]=0;v[j+212>>2]=0;v[j+216>>2]=0;v[j+220>>2]=0;v[j+224>>2]=0;v[j+228>>2]=0;v[j+232>>2]=0;c=0;v[j+236>>2]=0;v[j+188>>2]=0;v[j+192>>2]=0;O=x;G=N;r=C(C(k*k)+C(C(l*l)+C(p*p)))>C(1.1920928955078125e-7);l=r?l:C(1);J=l;A=r?k:C(0);k=r?p:C(0);l=C(C(1)/C(K(C(C(A*A)+C(C(l*l)+C(k*k))))));Q=C(J*l);p=C(-Q);k=C(k*l);l=C(A*l);x=C(C(C(m*p)-C(n*k))-C(x*l));N=C(C(C(S*p)-C(T*k))-C(N*l));r=x>N;p=C(C(C(I*p)-C(y*k))-C(o*l));V=!(p>x)|!(p>N);p=V?r?O:G:o;l=l>C(0)?s:C(-s);o=C(p-l);z[j+184>>2]=o;s=V?r?n:T:y;k=k>C(0)?q:C(-q);n=C(s-k);z[j+180>>2]=n;q=V?r?m:S:I;x=Q>C(0)?H:C(-H);m=C(q-x);z[j+176>>2]=m;v[j+132>>2]=0;v[j+136>>2]=0;v[j+140>>2]=0;v[j+144>>2]=0;v[j+148>>2]=0;v[j+152>>2]=0;v[j+156>>2]=0;v[j+160>>2]=0;v[j+164>>2]=0;v[j+168>>2]=0;v[j+172>>2]=0;v[j+124>>2]=0;v[j+128>>2]=0;z[j+120>>2]=p;z[j+116>>2]=s;z[j+112>>2]=q;v[j+68>>2]=0;v[j+72>>2]=0;v[j+76>>2]=0;v[j+80>>2]=0;v[j+84>>2]=0;v[j+88>>2]=0;v[j+92>>2]=0;v[j+96>>2]=0;v[j+100>>2]=0;v[j+104>>2]=0;v[j+108>>2]=0;v[j+60>>2]=0;v[j+64>>2]=0;z[j+56>>2]=l;z[j+52>>2]=k;z[j+48>>2]=x;k=C(-o);l=C(-n);p=C(-m);y=C(C(o*o)+C(C(m*m)+C(n*n)));q=z[D+24>>2];q=C((qW)){q=p;s=l;x=k;N=m;S=n;T=o;break b}Q=C(q+i);$=C(Q*Q);i=C(C(M*C(0))+B);H=C(C(E*C(0))+u);I=C(C(L*C(0))+t);x=k;s=l;q=p;while(1){N=m;S=n;T=o;m=C(C(1)/C(K(C(C(k*k)+C(C(p*p)+C(l*l))))));o=C(p*m);c=v[a+4>>2];A=z[c- -64>>2];B=z[c+72>>2];n=C(k*m);m=C(l*m);u=z[c+68>>2];t=C(C(B*n)+C(C(A*o)+C(m*u)));R=z[c+88>>2];L=z[c+80>>2];M=z[c+84>>2];E=C(C(R*n)+C(C(L*o)+C(m*M)));r=t>E;O=t;J=z[c+56>>2];t=z[c+48>>2];G=z[c+52>>2];U=C(C(J*n)+C(C(t*o)+C(m*G)));c=!(O>2];A=z[D+48>>2];A=o>2];U=m>2];X=nC(0)){c=0;Z=z[e+8>>2];aa=C(n*Z);n=z[e>>2];O=m;m=z[e+4>>2];O=C(aa+C(C(o*n)+C(O*m)));if(O>=C(0)){break a}o=P;P=C(o-C(Y/O));if(P>o){if(P>C(1)){break a}s=z[d+8>>2];q=z[d+4>>2];x=z[d>>2];v[j+92>>2]=0;v[j+76>>2]=0;v[j+60>>2]=0;o=C(x+C(n*P));i=C(o-i);x=C(i+z[j+80>>2]);z[j+80>>2]=x;n=C(q+C(m*P));q=C(n-H);y=C(q+z[j+84>>2]);z[j+84>>2]=y;m=C(s+C(Z*P));s=C(m-I);H=C(s+z[j+88>>2]);z[j+88>>2]=H;I=C(i+z[j+64>>2]);z[j+64>>2]=I;t=C(q+z[j+68>>2]);z[j+68>>2]=t;u=C(s+z[j+72>>2]);z[j+72>>2]=u;i=C(i+z[j+48>>2]);z[j+48>>2]=i;q=C(q+z[j+52>>2]);z[j+52>>2]=q;s=C(s+z[j+56>>2]);z[j+56>>2]=s;B=z[j+112>>2];E=z[j+116>>2];G=z[j+120>>2];v[j+188>>2]=0;z[j+184>>2]=G-s;z[j+180>>2]=E-q;z[j+176>>2]=B-i;i=z[j+128>>2];q=z[j+132>>2];s=z[j+136>>2];v[j+204>>2]=0;z[j+200>>2]=s-u;z[j+196>>2]=q-t;z[j+192>>2]=i-I;i=z[j+144>>2];q=z[j+148>>2];s=z[j+152>>2];v[j+220>>2]=0;z[j+216>>2]=s-H;z[j+212>>2]=q-y;z[j+208>>2]=i-x;J=C(X+m);B=C(R-J);G=C(U+n);u=C(M-G);E=C(A+o);t=C(L-E);q=p;s=l;x=k;i=o;H=n;I=m;k=C(34028234663852886e22)}else{k=y}}else{k=y}A=k;r=v[j+240>>2];D=r<<4;c=D+(j+112|0)|0;v[c+12>>2]=0;z[c+8>>2]=R;z[c+4>>2]=M;z[c>>2]=L;c=D+(j+48|0)|0;v[c+12>>2]=0;z[c+8>>2]=J;z[c+4>>2]=G;z[c>>2]=E;c=D+(j+176|0)|0;v[c+12>>2]=0;z[c+8>>2]=B;z[c+4>>2]=u;z[c>>2]=t;v[j+240>>2]=r+1;c:{d:{switch(r-1|0){case 0:o=z[j+184>>2];k=C(z[j+200>>2]-o);n=z[j+176>>2];l=C(z[j+192>>2]-n);m=z[j+180>>2];p=C(z[j+196>>2]-m);y=C(C(k*k)+C(C(l*l)+C(p*p)));if(y<=C(1.1920928955078125e-7)){v[j+240>>2]=1;c=v[j+180>>2];v[j+32>>2]=v[j+176>>2];v[j+36>>2]=c;c=v[j+188>>2];v[j+40>>2]=v[j+184>>2];v[j+44>>2]=c;break c}t=k;k=C(F(C(C(C(C(C(-n)*l)-C(p*m))-C(o*k))/y),C(1)));k=k>C(0)?k:C(0);z[j+40>>2]=o+C(t*k);z[j+36>>2]=m+C(p*k);z[j+32>>2]=n+C(l*k);break c;case 1:KV(j+32|0,j+176|0,j+112|0,j+48|0,j+240|0);break c;case 2:O_(j+32|0,j+176|0,j+112|0,j+48|0,j+240|0);break c;default:break d}}z[j+40>>2]=B;z[j+36>>2]=u;z[j+32>>2]=t}o=z[j+40>>2];k=C(-o);n=z[j+36>>2];l=C(-n);m=z[j+32>>2];p=C(-m);y=C(C(o*o)+C(C(m*m)+C(n*n)));if($>2]+32|0];t=C(0);u=C(0);d=!(y>W)|c;i=d?x:k;k=d?q:p;l=d?s:l;p=C(K(C(C(i*i)+C(C(k*k)+C(l*l)))));if(!(p<=C(1.1920928955078125e-7))){x=i;i=C(C(1)/p);_=C(x*i);u=C(k*i);t=C(l*i)}v[g+12>>2]=0;z[g+8>>2]=-_;z[g+4>>2]=-t;z[g>>2]=-u;z[f>>2]=P;v[f+12>>2]=v[j+252>>2];d=v[j+248>>2];v[f+4>>2]=v[j+244>>2];v[f+8>>2]=d;v[j+44>>2]=0;z[j+40>>2]=c?T:o;z[j+36>>2]=c?S:n;z[j+32>>2]=c?N:m;c=v[j+268>>2];e=v[j+264>>2];v[j+24>>2]=e;v[j+28>>2]=c;d=v[j+260>>2];f=v[j+256>>2];v[j+16>>2]=f;v[j+20>>2]=d;v[j+8>>2]=e;v[j+12>>2]=c;v[j>>2]=f;v[j+4>>2]=d;JV(j+176|0,j+112|0,j+48|0,j+32|0,j+16|0,j,v[j+240>>2]);i=z[v[a+4>>2]+16>>2];k=z[j+16>>2];l=z[j+20>>2];p=z[j+24>>2];v[h+12>>2]=0;z[h+8>>2]=p+(b?C(_*i):C(-0));z[h+4>>2]=l+(b?C(t*i):C(-0));z[h>>2]=k+(b?C(u*i):C(-0));c=1}xa=j+272|0;return c}function a$(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=C(0),s=C(0),A=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(!(t[a+6|0]&1)){break a}d=v[a+60>>2];if(!d){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d)}v[a+72>>2]=v[b+8>>2];c=v[b>>2];v[a+40>>2]=c;d=v[b+4>>2];v[a+44>>2]=d;z[a- -64>>2]=z[b+20>>2];u[a+68>>1]=x[b+24>>1];e=v[b+12>>2];v[a+84>>2]=2139095039;v[a+88>>2]=-8388609;v[a+60>>2]=0;z[a+56>>2]=d>>>0;z[a+52>>2]=d-2>>>0;z[a+48>>2]=c-2>>>0;v[a+76>>2]=e;e=B(c,d);if(e){b:{d=e<<2;if(d){c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,24422,12435,308)|0;v[a+60>>2]=d;if(d){break b}}b9(v[37696],16,12435,311,76028,0);return 0}l=e&1;c=v[b+16>>2];c:{if((e|0)==1){e=32767;f=32768;break c}m=e&-2;e=32767;f=32768;while(1){g=x[c>>1]|x[c+2>>1]<<16;u[d>>1]=g;u[d+2>>1]=g>>>16;g=u[c>>1];c=v[b+12>>2]+c|0;h=x[c>>1]|x[c+2>>1]<<16;u[d+4>>1]=h;u[d+6>>1]=h>>>16;h=u[c>>1];f=f<<16>>16;f=(f|0)<(g|0)?g:f;f=(f|0)<(h|0)?h:f;e=e<<16>>16;e=(e|0)>(g|0)?g:e;e=(e|0)>(h|0)?h:e;d=d+8|0;c=c+v[b+12>>2]|0;k=k+2|0;if((m|0)!=(k|0)){continue}break}}if(l){b=x[c>>1]|x[c+2>>1]<<16;u[d>>1]=b;u[d+2>>1]=b>>>16;b=u[c>>1];d=f<<16>>16;f=(b|0)>(d|0)?b:d;e=(b|0)<(e|0)?b:e}z[a+88>>2]=f<<16>>16;z[a+84>>2]=e<<16>>16}l=0;e=xa-256|0;xa=e;d=a;A=v[a+40>>2];m=v[a+44>>2];v[e+12>>2]=0;v[e+16>>2]=0;v[e>>2]=0;v[e+4>>2]=0;d:{e:{if(m>>>0>4294967263){break e}b=m+32>>>5|0;v[e+4>>2]=b;c=v[37696]+12|0;a=b<<2;l=Ba[v[v[c>>2]+8>>2]](c,a,24422,17999,461)|0;v[e>>2]=l;J9(l,0,a);v[e+16>>2]=b;b=v[37696]+12|0;D=Ba[v[v[b>>2]+8>>2]](b,a,24422,17999,461)|0;v[e+12>>2]=D;J9(D,0,a);if(m){break e}b=1;break d}a=v[d+60>>2];b=w[a+3|0]&127;if(!((w[a+2|0]&127)!=127&(b|0)!=127)){v[l>>2]=v[l>>2]|3}c=1;f:{if(t[d+68|0]&1){break f}g:{if($_(d,0,0,e+128|0)){a=v[d+60>>2];break g}a=v[d+60>>2];if(w[e+128|0]){break g}b=w[a+3|0]&127;break f}b=w[a+3|0]|-128}t[a+3|0]=b;b=0;if((m|0)==1){break d}while(1){b=c<<2;f=b+a|0;if(!((w[f+2|0]&127)!=127&(w[f+3|0]&127)!=127)){f=(c>>>3&536870908)+l|0;v[f>>2]=v[f>>2]|1<>>3&536870908)+l|0;v[g>>2]=v[g>>2]|1<>2];break j}a=v[d+60>>2];if(!w[e+128|0]){break i}if(v[d+44>>2]-1>>>0<=c>>>0){break j}f=a+b|0;f=(u[f>>1]<<1)-(u[f+4>>1]+u[f-4>>1]|0)|0;if((f|0)>=0|!(z[d+64>>2]>>0<2){break k}I=A-1|0;if(!b){L=m-1|0;J=1;k=1;while(1){M=B(m,k);N=e+B(J,12)|0;E=e+B(K,12)|0;h=v[d+60>>2];f=0;while(1){p=f+M|0;F=p<<2;b=F+h|0;j=w[b+3|0];if(!((w[b+2|0]&127)!=127&(j&127)!=127)){a=v[E>>2];c=f>>>3&536870908;g=a+c|0;n=g;q=v[g>>2];g=1<>2]=q|g;n=a;a=f+1|0;i=a>>>3&536870908;o=n+i|0;a=1<>2]=a|v[o>>2];n=c;c=v[N>>2];o=n+c|0;v[o>>2]=g|v[o>>2];c=c+i|0;v[c>>2]=a|v[c>>2]}l:{m:{n:{o:{if(!(!f|(f|0)==(L|0)|(k|0)==(I|0))){if(!(v[v[E>>2]+(f>>>3&536870908)>>2]>>>f&1)){break o}}if(t[d+68|0]&1){if(!f|v[d+40>>2]-1>>>0<=k>>>0|v[d+44>>2]-1>>>0<=f>>>0){break m}}G=__(d,p,k,f,e+128|0);if(G){break n}break m}i=u[b>>1]<<1;c=v[d+44>>2];p:{q:{r:{if(v[d+40>>2]-1>>>0>k>>>0){g=i-(u[(c+p<<2)+h>>1]+u[(p-c<<2)+h>>1]|0)|0;a=0;if(c-1>>>0>f>>>0){break r}break q}g=0;if(c-1>>>0<=f>>>0){break p}}a=i-(u[b+4>>1]+u[b-4>>1]|0)|0}if(!(z[d+64>>2]=0){break l}}t[b+3|0]=j|128;break l}H=v[d+44>>2];o=H-1|0;q=v[d+40>>2]-1|0;h=v[d+60>>2];c=0;g=e+32|0;while(1){a=(e+128|0)+(c<<4)|0;i=v[a+12>>2];n=v[a+8>>2];b=0;s:{t:{u:{v:{w:{j=v[a+4>>2];switch(v[a>>2]+B(j,-3)|0){case 0:break u;case 1:break v;case 2:break w;default:break s}}if(q>>>0<=n>>>0){break s}if(i){v[g>>2]=(j<<1)-1;a=1}else{a=0}if(i>>>0>=o>>>0){b=a;break s}i=j<<1;b=a+1|0;break t}if(q>>>0<=n>>>0|i>>>0>=o>>>0){break s}a=1;b=j<<1;v[g>>2]=b;i=b|1;b=2;break t}if(i>>>0>=o>>>0){break s}if(n){a=j-H|0;v[g>>2]=a<<1|t[((a<<2)+h|0)+2|0]>=0;a=1}else{a=0}if(q>>>0<=n>>>0){b=a;break s}i=j<<1;b=a+1|0;if(t[((j<<2)+h|0)+2|0]>=0){break t}i=i|1;b=a+1|0}v[(a<<2)+g>>2]=i}v[(e+96|0)+(c<<2)>>2]=b;g=g+8|0;b=1;c=c+1|0;if((G|0)!=(c|0)){continue}break}a=e+32|0;g=0;c=0;while(1){x:{j=v[a>>2];j=w[((j<<1&-4)+h|0)+(j&1?3:2)|0]&127;y:{if(y[(e+96|0)+(c<<2)>>2]<=1){if((j|0)!=127){break x}break y}i=v[a+4>>2];i=w[((i<<1&-4)+h|0)+(i&1?3:2)|0]&127;if((j|0)!=127){g=1;if((i|0)!=127){break y}break x}if((i|0)==127){break y}g=1;break x}a=a+8|0;c=c+1|0;b=G>>>0>c>>>0;if((c|0)!=(G|0)){continue}}break}z:{if(b&1){break z}if(!g){break m}a=h+F|0;b=u[a>>1]<<1;c=0;g=k>>>0>=q>>>0;c=g?c:b-(u[(p+H<<2)+h>>1]+u[(p-H<<2)+h>>1]|0)|0;A:{if(!(!f|f>>>0>=o>>>0)){a=b-(u[a+4>>1]+u[a-4>>1]|0)|0;break A}a=0;if(g){break z}}if(!(z[d+64>>2]=0){break m}}a=h+F|0;t[a+3|0]=w[a+3|0]|128;break l}h=v[d+60>>2];a=F+h|0;t[a+3|0]=w[a+3|0]&127}f=f+1|0;if((m|0)!=(f|0)){continue}break}J9(v[E>>2],0,v[E+4>>2]<<2);K=K^1;J=J^1;k=k+1|0;if((A|0)!=(k|0)){continue}break}break k}if((A|0)!=2){a=v[e+4>>2]<<2;b=I&-2;f=v[e+16>>2]<<2;g=v[e+12>>2];h=v[e>>2];c=0;while(1){J9(h,0,a);J9(g,0,f);c=c+2|0;if((b|0)!=(c|0)){continue}break}}if(!(I&1)){break k}J9(v[e>>2],0,v[e+4>>2]<<2)}if(!(!D|v[e+16>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,D)}if(!(!l|v[e+4>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,l)}xa=e+256|0;a=v[d+44>>2];b=v[d+40>>2];v[d+80>>2]=B(a,b);r=z[d+88>>2];s=z[d+84>>2];z[d+32>>2]=C(r-s)*C(.5);z[d+20>>2]=C(s+r)*C(.5);r=C(C(a-1>>>0)*C(.5));z[d+36>>2]=r;s=C(C(b-1>>>0)*C(.5));z[d+28>>2]=s;z[d+24>>2]=r;z[d+16>>2]=s;return 1}function ct(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=C(0),s=0,y=0,A=0,B=0,D=0;d=xa-256|0;xa=d;v[d+216>>2]=0;v[d+220>>2]=0;v[d+224>>2]=0;v[d+228>>2]=0;v[d+208>>2]=0;v[d+212>>2]=0;u[d+204>>1]=0;v[d+192>>2]=0;v[d+196>>2]=0;v[d+240>>2]=0;v[d+232>>2]=2139095039;v[d+236>>2]=0;v[d+200>>2]=-1;s=v[c+4>>2];j=v[((v[s+4>>2]>>>22&60)+89188|0)+12>>2]+s|0;y=v[((w[j+9|0]<<2)+149664|0)+40>>2]+j|0;k=v[c>>2];A=v[37419]+(k+16|0)|0;m=w[a+42|0];c=m?2:1;g=v[a+20>>2];l=u[g+16>>1];j=v[v[a+12>>2]+76>>2]?c:(l|0)>=0?2:c;n=x[a+16>>1];a:{b:{c:{if(m){break c}o=v[a+24>>2];d:{p=v[a+32>>2];if(p){break d}c=v[g+12>>2];m=v[g+8>>2];e=v[g+4>>2];q=v[g>>2];if(!(c|(m|(e|q)))|(c&v[k+28>>2]|(m&v[k+24>>2]|(e&v[k+20>>2]|q&v[k+16>>2])))){break d}a=1;break a}if(!(l&4)|!(o|p)){break c}u[d+104>>1]=n;e:{if(o){j=Ba[v[v[o>>2]>>2]](o,g,A,y,d+104|0)|0;break e}c=v[p+8>>2];if(!c){n=x[d+104>>1]&432|n&-433;break c}v[d+16>>2]=v[g>>2];v[d+20>>2]=v[g+4>>2];v[d+24>>2]=v[g+8>>2];v[d+28>>2]=v[g+12>>2];v[d+160>>2]=v[k+16>>2];v[d+164>>2]=v[k+20>>2];v[d+168>>2]=v[k+24>>2];v[d+172>>2]=v[k+28>>2];j=Ba[c|0](d+16|0,d+160|0,v[p>>2],v[p+4>>2],d+104|0)|0}if(!j){break b}n=x[d+104>>1]&432|n&-433}o=d+160|0;th(o,k,s);r=z[a+28>>2];c=v[a+12>>2];p=v[c+72>>2];h=v[c+80>>2];g=v[c+76>>2];s=v[k+4>>2]&1?v[k+8>>2]- -64|0:k+84|0;e=v[s>>2];q=v[v[v[a+4>>2]+5728>>2]+(e<<2)>>2];c=v[a+8>>2];m=v[c+4>>2];c=v[c>>2];u[d+16>>1]=x[a+36>>1]|n;f=o;i=c;D=m;m=g>>>0>h>>>0;c=m?g-h|0:1;o=m?p+(h<<6)|0:d+192|0;p=Ba[q|0](s,f,i,D,r,d+16|0,(e|0)==5?n&32?c:1:c,o)|0;f:{if(!p){break f}s=l&8;q=d- -64|0;m=d+16|4;B=1;n=0;while(1){f=o+(n<<6)|0;v[f+4>>2]=A;v[f>>2]=y;c=j;g:{if(w[a+42|0]){break g}e=v[a+24>>2];g=v[a+32>>2];c=j;if(!(e|g)){break g}c=j;if(!s){break g}if(e){c=Ba[v[v[e>>2]+4>>2]](e,v[a+20>>2],f)|0;break g}e=v[g+12>>2];c=j;if(!e){break g}c=v[a+20>>2];v[d+144>>2]=v[c>>2];v[d+148>>2]=v[c+4>>2];v[d+152>>2]=v[c+8>>2];v[d+156>>2]=v[c+12>>2];v[d+128>>2]=v[k+16>>2];v[d+132>>2]=v[k+20>>2];v[d+136>>2]=v[k+24>>2];v[d+140>>2]=v[k+28>>2];c=Ba[e|0](d+144|0,d+128|0,v[g>>2],v[g+4>>2],f)|0}if(!(!w[a+41|0]|!c)){b=v[f+4>>2];j=v[a+12>>2];c=j;v[c+4>>2]=v[f>>2];v[c+8>>2]=b;v[c+12>>2]=v[f+8>>2];u[c+16>>1]=x[f+12>>1];z[c+20>>2]=z[f+16>>2];z[c+24>>2]=z[f+20>>2];z[c+28>>2]=z[f+24>>2];z[c+32>>2]=z[f+28>>2];z[c+36>>2]=z[f+32>>2];z[c+40>>2]=z[f+36>>2];z[c+44>>2]=z[f+40>>2];c=o+(n<<6)|0;b=v[c+48>>2];v[j+48>>2]=v[c+44>>2];v[j+52>>2]=b;b=v[c+56>>2];v[j+56>>2]=v[c+52>>2];v[j+60>>2]=b;v[j- -64>>2]=v[c+60>>2];t[v[a+12>>2]+68|0]=1;break f}h:{i:{switch((w[a+40|0]?1:c)-1|0){case 0:c=v[a+12>>2];e=v[c+76>>2];if(!(z[f+40>>2]<=z[a+28>>2])|(!e|!w[a+38|0])){break h}l=v[c+80>>2];j:{if((e|0)!=(l|0)){break j}e=v[a+20>>2];v[d+104>>2]=v[e>>2];v[d+108>>2]=v[e+4>>2];v[d+112>>2]=v[e+8>>2];v[d+116>>2]=v[e+12>>2];u[d+120>>1]=x[e+16>>1]|32768;u[d+32>>1]=0;v[d+28>>2]=-1;v[d+20>>2]=0;v[d+24>>2]=0;v[d+52>>2]=0;v[d+56>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;v[d+96>>2]=0;v[d+88>>2]=0;v[d+92>>2]=0;t[d+84|0]=0;v[d+68>>2]=0;v[d+60>>2]=2139095039;v[d+64>>2]=0;v[d+16>>2]=114128;k:{if(w[a+39|0]|!v[c+76>>2]){break k}e=v[a+8>>2];c=v[a+4>>2];u[d+8>>1]=x[a+16>>1];e=bt(c,e,d+16|0,d+8|0,0,d+104|0,v[a+24>>2],v[a+32>>2]);c=v[a+12>>2];if(!e){break k}e=v[m+4>>2];v[c+4>>2]=v[m>>2];v[c+8>>2]=e;v[c+12>>2]=v[m+8>>2];u[c+16>>1]=x[d+32>>1];z[c+20>>2]=z[d+36>>2];z[c+24>>2]=z[d+40>>2];z[c+28>>2]=z[d+44>>2];z[c+32>>2]=z[d+48>>2];z[c+36>>2]=z[d+52>>2];z[c+40>>2]=z[d+56>>2];z[c+44>>2]=z[d+60>>2];e=v[q+4>>2];v[c+48>>2]=v[q>>2];v[c+52>>2]=e;e=v[q+12>>2];v[c+56>>2]=v[q+8>>2];v[c+60>>2]=e;v[c- -64>>2]=v[q+16>>2];c=v[a+12>>2];t[c+68|0]=1;l=0;r=z[d+60>>2];g=v[c+80>>2];l:{if(!g){g=0;break l}e=v[c+72>>2];while(1){i=e+(l<<6)|0;m:{if(z[i+40>>2]>r){g=g-1|0;h=e+(g<<6)|0;c=v[h+4>>2];v[i>>2]=v[h>>2];v[i+4>>2]=c;v[i+8>>2]=v[h+8>>2];u[i+12>>1]=x[h+12>>1];z[i+16>>2]=z[h+16>>2];z[i+20>>2]=z[h+20>>2];z[i+24>>2]=z[h+24>>2];z[i+28>>2]=z[h+28>>2];z[i+32>>2]=z[h+32>>2];z[i+36>>2]=z[h+36>>2];z[i+40>>2]=z[h+40>>2];v[i+60>>2]=v[h+60>>2];c=v[h+56>>2];v[i+52>>2]=v[h+52>>2];v[i+56>>2]=c;c=v[h+48>>2];v[i+44>>2]=v[h+44>>2];v[i+48>>2]=c;break m}l=l+1|0}if((g|0)!=(l|0)){continue}break}c=v[a+12>>2];r=z[d+60>>2]}v[c+80>>2]=g;z[a+28>>2]=r;z[b>>2]=r}t[a+39|0]=1;l=v[c+80>>2];if((l|0)!=v[c+76>>2]){break j}c=Ba[v[v[c>>2]>>2]](c,v[c+72>>2],l)|0;t[a+38|0]=c;if(!c){break f}l=0;c=v[a+12>>2];v[c+80>>2]=0}v[c+80>>2]=l+1;e=v[c+72>>2]+(l<<6)|0;v[e+8>>2]=v[f+8>>2];c=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=c;u[e+12>>1]=x[f+12>>1];z[e+16>>2]=z[f+16>>2];z[e+20>>2]=z[f+20>>2];z[e+24>>2]=z[f+24>>2];z[e+28>>2]=z[f+28>>2];z[e+32>>2]=z[f+32>>2];z[e+36>>2]=z[f+36>>2];z[e+40>>2]=z[f+40>>2];c=v[f+48>>2];v[e+44>>2]=v[f+44>>2];v[e+48>>2]=c;c=v[f+56>>2];v[e+52>>2]=v[f+52>>2];v[e+56>>2]=c;v[e+60>>2]=v[f+60>>2];break h;case 1:break i;default:break h}}r=z[f+40>>2];if(!(r<=z[a+28>>2])){break h}z[a+28>>2]=r;z[b>>2]=r;c=v[f+4>>2];e=v[a+12>>2];v[e+4>>2]=v[f>>2];v[e+8>>2]=c;v[e+12>>2]=v[f+8>>2];u[e+16>>1]=x[f+12>>1];z[e+20>>2]=z[f+16>>2];z[e+24>>2]=z[f+20>>2];z[e+28>>2]=z[f+24>>2];z[e+32>>2]=z[f+28>>2];z[e+36>>2]=z[f+32>>2];z[e+40>>2]=z[f+36>>2];z[e+44>>2]=z[f+40>>2];c=v[f+48>>2];v[e+48>>2]=v[f+44>>2];v[e+52>>2]=c;c=v[f+56>>2];v[e+56>>2]=v[f+52>>2];v[e+60>>2]=c;v[e- -64>>2]=v[f+60>>2];t[v[a+12>>2]+68|0]=1}n=n+1|0;B=p>>>0>n>>>0;if((n|0)!=(p|0)){continue}break}}a=!B;break a}a=1}xa=d+256|0;return a&1}function zv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0);f=xa-112|0;xa=f;l=z[d+24>>2];L=z[c+24>>2];k=z[d+20>>2];M=z[c+20>>2];E=z[e>>2];S=z[b+4>>2];u=z[a+4>>2];i=z[b+8>>2];x=z[d+4>>2];j=z[d>>2];y=z[d+8>>2];o=z[d+12>>2];G=z[d+16>>2];N=z[c+16>>2];q=z[a+8>>2];A=z[c+4>>2];m=z[c>>2];B=z[c+8>>2];r=z[c+12>>2];v[f+108>>2]=0;n=M;M=C(C(M+k)*C(.5));I=C(n-M);O=C(m+m);H=C(r+r);n=C(q*C(C(A*O)+C(B*H)));s=C(I+n);z[f+100>>2]=s;p=L;L=C(C(L+l)*C(.5));t=C(p-L);A=C(q*C(C(O*B)-C(A*H)));B=C(t+A);z[f+104>>2]=B;p=N;N=C(C(N+G)*C(.5));J=C(p-N);q=C(q*C(C(C(m*O)+C(r*H))+C(-1)));m=C(J+q);z[f+96>>2]=m;v[f+92>>2]=0;A=C(t-A);H=C(A-B);z[f+88>>2]=H;B=C(I-n);I=C(B-s);z[f+84>>2]=I;O=C(J-q);J=C(O-m);z[f+80>>2]=J;v[f+76>>2]=0;r=C(k-M);q=C(j+j);m=C(o+o);k=C(i*C(C(x*q)+C(y*m)));t=C(r+k);z[f+68>>2]=t;l=C(l-L);x=C(i*C(C(q*y)-C(x*m)));y=C(l+x);z[f+72>>2]=y;G=C(G-N);i=C(i*C(C(C(j*q)+C(o*m))+C(-1)));j=C(G+i);z[f+64>>2]=j;v[f+60>>2]=0;n=C(l-x);P=C(n-y);z[f+56>>2]=P;s=C(r-k);Q=C(s-t);z[f+52>>2]=Q;t=C(G-i);p=C(t-j);z[f+48>>2]=p;i=z[f+80>>2];j=z[f+84>>2];o=z[f+88>>2];q=C(C(C(i*i)+C(j*j))+C(o*o));m=z[f+48>>2];r=z[f+52>>2];l=z[f+56>>2];k=C(C(C(i*m)+C(j*r))+C(o*l));x=C(C(C(m*m)+C(r*r))+C(l*l));y=C(C(q*x)-C(k*k));w=q>C(1.1920928955078125e-7)?C(C(1)/q):C(0);a=f- -64|0;q=C(z[f+104>>2]-z[a+8>>2]);G=C(l*q);T=m;m=C(z[f+96>>2]-z[a>>2]);l=C(z[f+100>>2]-z[a+4>>2]);r=C(G+C(C(T*m)+C(l*r)));j=C(C(C(m*i)+C(l*j))+C(q*o));i=C(F(C(C(C(k*r)-C(j*x))/y),C(1)));i=C(F(C((x>C(1.1920928955078125e-7)?C(C(1)/x):C(0))*C(r+C(k*(yC(0)?i:C(0))))),C(1)));i=i>C(0)?i:C(0);j=C(F(C(w*C(C(k*i)-j)),C(1)));j=j>C(0)?j:C(0);z[f+32>>2]=j;z[f+16>>2]=i;o=C(C(z[f+104>>2]+C(z[f+88>>2]*j))-C(C(z[f+56>>2]*i)+z[a+8>>2]));m=C(o*o);o=C(C(z[f+96>>2]+C(z[f+80>>2]*j))-C(z[a>>2]+C(z[f+48>>2]*i)));i=C(C(z[f+100>>2]+C(z[f+84>>2]*j))-C(z[a+4>>2]+C(z[f+52>>2]*i)));z[f>>2]=m+C(C(o*o)+C(i*i));x=C(u+S);i=C(E+x);y=C(i*i);S=z[f>>2];e=y>=S;a:{if(!e){break a}U=C(C(H*H)+C(C(J*J)+C(I*I)));i=C(C(1)/C(K(U)));G=z[f+88>>2];a=U>2];b=o>2];P=z[f+48>>2];I=z[f+84>>2];Q=z[f+52>>2];b:{c:{if(!(C(D(C(C((a?C(0):C(i*G))*(b?C(0):C(j*J)))+C(C((a?C(0):C(i*H))*(b?C(0):C(j*P)))+C((a?C(0):C(i*I))*(b?C(0):C(j*Q)))))))>C(.9998000264167786))){o=z[f+72>>2];q=z[f+68>>2];m=z[f+64>>2];i=z[f+104>>2];j=z[f+100>>2];r=z[f+96>>2];break c}m=z[f+64>>2];i=C(t-m);q=z[f+68>>2];j=C(s-q);o=z[f+72>>2];l=C(n-o);Y=C(C(C(C(O-m)*i)+C(C(B-q)*j))+C(C(A-o)*l));R=C(C(l*l)+C(C(i*i)+C(j*j)));c=R!=C(0);r=z[f+96>>2];p=j;j=z[f+100>>2];p=C(C(i*C(r-m))+C(p*C(j-q)));i=z[f+104>>2];Z=C(C(p+C(l*C(i-o)))/R);k=C(A-i);p=C(O-r);E=C(B-j);w=C(C(k*k)+C(C(p*p)+C(E*E)));a=w!=C(0);l=a?C(C(C(C(C(t-r)*p)+C(C(s-j)*E))+C(C(n-i)*k))/w):C(0);b=0;k=a?C(C(C(C(C(m-r)*p)+C(C(q-j)*E))+C(C(o-i)*k))/w):C(0);d:{if(!(k>=C(0))|!(k<=C(1))){break d}V=C(i+C(G*k));p=C(V-o);W=C(r+C(H*k));E=C(W-m);X=C(j+C(I*k));k=C(X-q);w=C(C(p*p)+C(C(E*E)+C(k*k)));if(!(w>C(9.999999974752427e-7))|!(y>w)){break d}b=1;a=v[g+4096>>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;v[a+52>>2]=-1;w=C(K(w));z[a+12>>2]=w-x;T=p;p=C(C(1)/w);w=C(T*p);z[a+8>>2]=w;k=C(k*p);z[a+4>>2]=k;p=C(E*p);z[a>>2]=p;z[a+24>>2]=L+C(V-C(u*w));z[a+20>>2]=M+C(X-C(u*k));z[a+16>>2]=N+C(W-C(u*p))}p=C(Y/R);k=c?Z:C(0);e:{if(!(l>=C(0))|!(l<=C(1))){break e}E=C(i+C(l*G));n=C(E-n);R=C(r+C(l*H));t=C(R-t);w=C(j+C(l*I));l=C(w-s);s=C(C(n*n)+C(C(t*t)+C(l*l)));if(!(s>C(9.999999974752427e-7))|!(s>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;v[a+52>>2]=-1;s=C(K(s));z[a+12>>2]=s-x;T=n;n=C(C(1)/s);s=C(T*n);z[a+8>>2]=s;l=C(l*n);z[a+4>>2]=l;n=C(t*n);z[a>>2]=n;z[a+24>>2]=L+C(E-C(u*s));z[a+20>>2]=M+C(w-C(u*l));z[a+16>>2]=N+C(R-C(u*n));b=b+1|0}l=c?p:C(0);f:{if(!(k>=C(0))|!(k<=C(1))){break f}n=C(i-C(C(k*J)+o));s=C(r-C(C(k*P)+m));k=C(j-C(C(k*Q)+q));t=C(C(n*n)+C(C(s*s)+C(k*k)));if(!(t>C(9.999999974752427e-7))|!(t>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;v[a+52>>2]=-1;t=C(K(t));z[a+12>>2]=t-x;p=n;n=C(C(1)/t);t=C(p*n);z[a+8>>2]=t;k=C(k*n);z[a+4>>2]=k;n=C(s*n);z[a>>2]=n;z[a+24>>2]=L+C(i-C(u*t));z[a+20>>2]=M+C(j-C(u*k));z[a+16>>2]=N+C(r-C(u*n));b=b+1|0}g:{if(!(l>=C(0))|!(l<=C(1))){break g}k=C(A-C(C(l*J)+o));n=C(O-C(C(l*P)+m));l=C(B-C(C(l*Q)+q));s=C(C(k*k)+C(C(n*n)+C(l*l)));if(!(s>C(9.999999974752427e-7))|!(s>2];v[g+4096>>2]=a+1;b=(a<<6)+g|0;i=C(K(s));j=C(C(1)/i);m=C(n*j);z[b>>2]=m;o=C(k*j);q=C(A-C(u*o));m=C(O-C(u*m));j=C(l*j);u=C(B-C(u*j));break b}if(b){break a}}l=z[f+32>>2];k=z[f+16>>2];a=v[g+4096>>2];v[g+4096>>2]=a+1;b=(a<<6)+g|0;d=U>C(9.999999974752427e-7);A=C(C(H*l)+r);c=S>2]=m;o=C(i*r);q=C(B-C(u*o));m=C(A-C(u*m));i=c?C(0):C(K(S));j=C(j*r);u=C(l-C(u*j))}z[b+8>>2]=o;z[b+4>>2]=j;z[b+12>>2]=i-x;a=(a<<6)+g|0;v[a+52>>2]=-1;z[a+16>>2]=N+m;z[a+24>>2]=L+q;z[a+20>>2]=M+u}xa=f+112|0;return e|0}function Pk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=0,n=0,o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=0,u=C(0),A=C(0),D=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0);t=xa-32|0;xa=t;if(w[a+72|0]){Qk(a+12|0)}m=b- -64|0;F=v[a+24>>2];if(F){b=c;c=0;n=xa-4112|0;xa=n;k=v[F+16>>2]<<5;J9(n+16|0,0,k);J9(n+2064|0,0,k);k=v[m>>2];m=-2147483648;p=v[F+28>>2];a:{if(!p){break a}G=v[F+24>>2];while(1){if((k|0)==v[G+(c<<2)>>2]){m=c;break a}c=c+1|0;if((p|0)!=(c|0)){continue}break}}f=z[d>>2];g=z[d+4>>2];h=z[d+8>>2];G=0;k=n+16|0;c=k+(m<<5)|0;v[c+12>>2]=0;z[c+8>>2]=-h;z[c+4>>2]=-g;z[c>>2]=-f;f=z[e>>2];g=z[e+4>>2];h=z[e+8>>2];v[c+28>>2]=0;z[c+24>>2]=-h;z[c+20>>2]=-g;z[c+16>>2]=-f;da=n+2064|0;m=xa-3072|0;xa=m;$=b+x[b+6>>1]|0;c=x[b+18>>1];aa=(c+b|0)+144|0;e=x[b+4>>1];if(e>>>0>=2){while(1){e=e-1|0;d=e<<5;c=d+k|0;o=z[c+16>>2];q=z[c+20>>2];d=d+$|0;h=z[d+24>>2];i=z[c+8>>2];r=z[c+24>>2];j=z[c>>2];s=z[d+20>>2];g=z[d+16>>2];l=z[c+4>>2];c=m+(e<<4)|0;v[c+12>>2]=0;f=C(r+C(C(j*s)-C(g*l)));z[c+8>>2]=f;g=C(q+C(C(i*g)-C(h*j)));z[c+4>>2]=g;h=C(o+C(C(l*h)-C(s*i)));z[c>>2]=h;c=B(e,160)+aa|0;u=z[c+24>>2];A=z[c+56>>2];K=z[c+88>>2];L=z[c+20>>2];M=z[c+52>>2];N=z[c+84>>2];s=z[d>>2];O=z[c+16>>2];P=z[c+48>>2];Q=z[c+80>>2];D=z[d+4>>2];E=z[d+8>>2];d=k+(w[(b+e|0)- -64|0]<<5)|0;R=z[d>>2];S=z[c>>2];T=z[c+32>>2];U=z[c+64>>2];V=z[d+4>>2];W=z[c+4>>2];H=z[c+36>>2];I=z[c+68>>2];J=z[d+8>>2];Y=z[c+8>>2];X=z[c+40>>2];Z=z[c+72>>2];v[d+12>>2]=0;v[d+28>>2]=0;i=C(i-C(C(h*Y)+C(C(g*X)+C(f*Z))));z[d+8>>2]=J+i;l=C(l-C(C(h*W)+C(C(g*H)+C(f*I))));z[d+4>>2]=V+l;j=C(j-C(C(h*S)+C(C(g*T)+C(f*U))));z[d>>2]=R+j;z[d+16>>2]=C(C(o-C(C(h*O)+C(C(g*P)+C(f*Q))))+C(C(D*i)-C(l*E)))+z[d+16>>2];z[d+20>>2]=C(C(q-C(C(h*L)+C(C(g*M)+C(f*N))))+C(C(E*j)-C(i*s)))+z[d+20>>2];z[d+24>>2]=C(C(r-C(C(h*u)+C(C(g*A)+C(f*K))))+C(C(s*l)-C(j*D)))+z[d+24>>2];if(e>>>0>1){continue}break}c=x[b+18>>1]}c=b+c|0;u=z[c+32>>2];A=z[c>>2];K=z[c+16>>2];L=z[c+36>>2];M=z[c+20>>2];N=z[c+4>>2];O=z[c+40>>2];P=z[c+24>>2];Q=z[c+8>>2];o=z[c+56>>2];q=z[c+52>>2];r=z[c+48>>2];R=z[c+96>>2];S=z[c+112>>2];T=z[c+128>>2];s=z[c+72>>2];D=z[c- -64>>2];E=z[c+68>>2];U=z[c+100>>2];V=z[c+116>>2];W=z[c+132>>2];H=z[c+80>>2];f=C(-z[k>>2]);I=z[c+84>>2];g=z[k+4>>2];J=z[c+88>>2];h=z[k+8>>2];i=C(-z[k+16>>2]);j=z[k+20>>2];l=z[k+24>>2];z[m+1048>>2]=C(C(C(H*f)-C(I*g))-C(J*h))+C(C(C(z[c+104>>2]*i)-C(z[c+120>>2]*j))-C(z[c+136>>2]*l));z[m+1044>>2]=C(C(C(D*f)-C(E*g))-C(s*h))+C(C(C(U*i)-C(V*j))-C(W*l));v[m+1036>>2]=0;z[m+1040>>2]=C(C(C(r*f)-C(q*g))-C(o*h))+C(C(C(R*i)-C(S*j))-C(T*l));z[m+1032>>2]=C(C(C(Q*f)-C(P*g))-C(O*h))+C(C(C(o*i)-C(s*j))-C(J*l));z[m+1028>>2]=C(C(C(N*f)-C(M*g))-C(L*h))+C(C(C(q*i)-C(E*j))-C(I*l));z[m+1024>>2]=C(C(C(A*f)-C(K*g))-C(u*h))+C(C(C(r*i)-C(D*j))-C(H*l));d=1;c=x[b+4>>1];if(c>>>0>1){while(1){ba=d<<5;k=ba+$|0;s=z[k+24>>2];D=z[k+16>>2];E=z[k+20>>2];e=B(d,160)+aa|0;K=z[e+128>>2];L=z[e+112>>2];M=z[e+96>>2];N=z[e+24>>2];O=z[e+20>>2];P=z[e+16>>2];Q=z[e+8>>2];R=z[e>>2];S=z[e+4>>2];A=z[e+132>>2];T=z[e+100>>2];U=z[e+116>>2];V=z[e+56>>2];W=z[e+52>>2];H=z[e+48>>2];I=z[e+40>>2];J=z[e+32>>2];Y=z[e+36>>2];p=m+(d<<4)|0;i=z[p+8>>2];o=z[e+136>>2];j=z[p>>2];X=z[e+104>>2];l=z[p+4>>2];Z=z[e+120>>2];ea=z[e+88>>2];fa=z[e+84>>2];ga=z[e+80>>2];ha=z[e+72>>2];ca=m+1024|0;p=ca+(w[(b+d|0)- -64|0]<<5)|0;ia=z[p+8>>2];ja=z[e+64>>2];ka=z[p>>2];f=z[p+20>>2];q=z[k+4>>2];la=z[e+68>>2];ma=z[p+4>>2];r=z[k>>2];g=z[p+24>>2];u=z[k+8>>2];h=z[p+16>>2];e=ba+ca|0;v[e+28>>2]=0;v[e+12>>2]=0;X=C(C(o*i)+C(C(X*j)+C(l*Z)));o=C(ia+C(C(q*h)-C(r*f)));q=C(ka+C(C(u*f)-C(q*g)));r=C(ma+C(C(r*g)-C(u*h)));u=C(X+C(C(C(ha*o)+C(C(ja*q)+C(la*r)))+C(C(ea*g)+C(C(ga*h)+C(f*fa)))));z[e+24>>2]=g-u;A=C(C(C(A*i)+C(C(T*j)+C(l*U)))+C(C(C(I*o)+C(C(J*q)+C(r*Y)))+C(C(V*g)+C(C(H*h)+C(f*W)))));z[e+20>>2]=f-A;f=C(C(C(K*i)+C(C(M*j)+C(l*L)))+C(C(C(Q*o)+C(C(R*q)+C(r*S)))+C(C(N*g)+C(C(P*h)+C(f*O)))));z[e+16>>2]=h-f;z[e+8>>2]=o-C(C(D*A)-C(f*E));z[e+4>>2]=r-C(C(s*f)-C(u*D));z[e>>2]=q-C(C(E*u)-C(A*s));d=d+1|0;if((c|0)!=(d|0)){continue}break}c=x[b+4>>1]}if(c){while(1){c=_<<5;d=c+(m+1024|0)|0;f=z[d>>2];g=z[d+4>>2];h=z[d+8>>2];c=c+da|0;v[c+12>>2]=0;z[c+8>>2]=h+z[c+8>>2];z[c+4>>2]=g+z[c+4>>2];z[c>>2]=f+z[c>>2];f=z[d+16>>2];g=z[d+20>>2];h=z[d+24>>2];v[c+28>>2]=0;z[c+24>>2]=h+z[c+24>>2];z[c+20>>2]=g+z[c+20>>2];z[c+16>>2]=f+z[c+16>>2];_=_+1|0;if(_>>>0>1]){continue}break}}xa=m+3072|0;if(v[F+16>>2]){while(1){c=(n+2064|0)+(G<<5)|0;f=z[c+16>>2];g=z[c+20>>2];h=z[c+24>>2];i=z[c>>2];j=z[c+4>>2];b=v[v[v[F+24>>2]+(G<<2)>>2]+44>>2];l=z[b+80>>2];o=z[b+84>>2];z[n+8>>2]=z[c+8>>2]+z[b+88>>2];z[n+4>>2]=j+o;z[n>>2]=i+l;CG(b,n);i=z[b+96>>2];j=z[b+100>>2];z[n+8>>2]=h+z[b+104>>2];z[n+4>>2]=g+j;z[n>>2]=f+i;DG(b,n);G=G+1|0;if(G>>>0>2]){continue}break}}xa=n+4112|0}if(v[a+100>>2]){d=0;while(1){c=d<<2;b=v[c+v[a+96>>2]>>2];z[t+16>>2]=z[b+144>>2];z[t+20>>2]=z[b+148>>2];z[t+24>>2]=z[b+152>>2];z[t>>2]=z[b+160>>2];z[t+4>>2]=z[b+164>>2];z[t+8>>2]=z[b+168>>2];Ba[v[v[b>>2]+160>>2]](b,t+16|0,1);b=v[c+v[a+96>>2]>>2];Ba[v[v[b>>2]+168>>2]](b,t,1);d=d+1|0;if(d>>>0>2]){continue}break}}xa=t+32|0}function $y(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=C(l);m=m|0;n=n|0;var o=0;f=xa-160|0;xa=f;e=v[j+4>>2];v[a+544>>2]=v[j>>2];v[a+548>>2]=e;v[a+576>>2]=v[j+32>>2];e=v[j+28>>2];v[a+568>>2]=v[j+24>>2];v[a+572>>2]=e;e=v[j+20>>2];v[a+560>>2]=v[j+16>>2];v[a+564>>2]=e;e=v[j+12>>2];v[a+552>>2]=v[j+8>>2];v[a+556>>2]=e;z[a+56>>2]=l==C(0)?C(0):C(C(1)/l);z[a+52>>2]=l;z[a+68>>2]=z[m>>2];z[a+72>>2]=z[m+4>>2];z[a+76>>2]=z[m+8>>2];g=v[b+412>>2];h=v[b+320>>2];if(h){i=v[b+316>>2];e=v[b+148>>2];k=v[b+128>>2];j=0;while(1){m=v[i+(j<<2)>>2];n=(m>>>0)/(e>>>0)|0;m=v[v[k+(n<<2)>>2]+(m-B(e,n)<<2)>>2];if(m){t[m+42|0]=0}j=j+1|0;if((h|0)!=(j|0)){continue}break}}e=v[a+180>>2];v[e+608>>2]=v[b+308>>2];a:{if(g){v[e+604>>2]=v[b+284>>2];h=v[b+344>>2];break a}v[e+604>>2]=0;h=0}v[e+600>>2]=h;v[a+536>>2]=0;e=v[a+336>>2];j=v[e>>2];v[e>>2]=0;if(j){m=j;while(1){e=v[m>>2];jB(m);m=e;if(e){continue}break}while(1){e=v[j>>2];h=v[a+336>>2];v[j>>2]=v[h>>2];v[h>>2]=j;j=e;if(e){continue}break}}if(g){Ba[v[v[d>>2]+16>>2]](d);h=wr(v[a+584>>2],40);e=v[a+604>>2];g=v[a+600>>2];v[h+24>>2]=0;v[h+16>>2]=0;v[h+8>>2]=g;v[h+12>>2]=e;v[h+36>>2]=d;v[h+32>>2]=b;v[h+28>>2]=a;v[h>>2]=128836;v[h+20>>2]=c;v[h+24>>2]=1;if(c){Ba[v[v[c>>2]+16>>2]](c);v[h+16>>2]=v[v[h+20>>2]+16>>2]}v[a+192>>2]=0;v[a+196>>2]=0;v[a+216>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+200>>2]=0;n=v[b+304>>2];j=v[b+308>>2];v[a+532>>2]=j;d=a+440|0;k=v[b+296>>2];i=v[b+284>>2];c=i+j|0;e=v[a+448>>2]&2147483647;b:{if(c>>>0<=e>>>0){break b}g=e;e=c+31&-32;if(g>>>0>>0){az(d,e)}e=c+32&-32;if(e>>>0>(v[a+460>>2]&2147483647)>>>0){bz(a+452|0,e)}if(e>>>0<=(v[a+504>>2]&2147483647)>>>0){break b}Aw(a+496|0,e)}v[f+152>>2]=0;v[f+156>>2]=0;v[f+144>>2]=0;v[f+148>>2]=0;v[f+136>>2]=0;v[f+140>>2]=0;v[f+128>>2]=0;v[f+132>>2]=0;if(c>>>0>(v[d+8>>2]&2147483647)>>>0){az(d,c)}e=v[d+4>>2];if((e|0)<(c|0)){g=v[d>>2];m=g+(c<<5)|0;g=g+(e<<5)|0;while(1){z[g>>2]=z[f+128>>2];z[g+4>>2]=z[f+132>>2];z[g+8>>2]=z[f+136>>2];v[g+12>>2]=v[f+140>>2];z[g+16>>2]=z[f+144>>2];z[g+20>>2]=z[f+148>>2];z[g+24>>2]=z[f+152>>2];v[g+28>>2]=v[f+156>>2];g=g+32|0;if(m>>>0>g>>>0){continue}break}}v[d+4>>2]=c;m=0;J9(f+16|0,0,112);c=c+1|0;d=a+452|0;if(c>>>0>(v[d+8>>2]&2147483647)>>>0){bz(d,c)}e=v[d+4>>2];if((e|0)<(c|0)){g=v[d>>2];o=g+B(c,112)|0;e=g+B(e,112)|0;while(1){z[e>>2]=z[f+16>>2];z[e+4>>2]=z[f+20>>2];z[e+8>>2]=z[f+24>>2];z[e+12>>2]=z[f+28>>2];z[e+16>>2]=z[f+32>>2];z[e+20>>2]=z[f+36>>2];z[e+24>>2]=z[f+40>>2];z[e+28>>2]=z[f+44>>2];z[e+32>>2]=z[f+48>>2];z[e+36>>2]=z[f+52>>2];z[e+40>>2]=z[f+56>>2];z[e+44>>2]=z[f+60>>2];z[e+48>>2]=z[f+64>>2];z[e+52>>2]=z[f+68>>2];z[e+56>>2]=z[f+72>>2];z[e+60>>2]=z[f+76>>2];z[e- -64>>2]=z[f+80>>2];g=v[f+88>>2];v[e+68>>2]=v[f+84>>2];v[e+72>>2]=g;v[e+76>>2]=v[f+92>>2];z[e+80>>2]=z[f+96>>2];z[e+84>>2]=z[f+100>>2];z[e+88>>2]=z[f+104>>2];z[e+92>>2]=z[f+108>>2];z[e+96>>2]=z[f+112>>2];z[e+100>>2]=z[f+116>>2];z[e+104>>2]=z[f+120>>2];v[e+108>>2]=v[f+124>>2];e=e+112|0;if(o>>>0>e>>>0){continue}break}}v[d+4>>2]=c;v[f+12>>2]=0;cz(a+496|0,i,f+12|0);c=v[a+452>>2];z[c>>2]=z[a+224>>2];z[c+4>>2]=z[a+228>>2];z[c+8>>2]=z[a+232>>2];z[c+12>>2]=z[a+236>>2];z[c+16>>2]=z[a+240>>2];z[c+20>>2]=z[a+244>>2];z[c+24>>2]=z[a+248>>2];z[c+28>>2]=z[a+252>>2];z[c+32>>2]=z[a+256>>2];z[c+36>>2]=z[a+260>>2];z[c+40>>2]=z[a+264>>2];z[c+44>>2]=z[a+268>>2];z[c+48>>2]=z[a+272>>2];z[c+52>>2]=z[a+276>>2];z[c+56>>2]=z[a+280>>2];z[c+60>>2]=z[a+284>>2];z[c- -64>>2]=z[a+288>>2];d=v[a+296>>2];v[c+68>>2]=v[a+292>>2];v[c+72>>2]=d;v[c+76>>2]=v[a+300>>2];z[c+80>>2]=z[a+304>>2];z[c+84>>2]=z[a+308>>2];z[c+88>>2]=z[a+312>>2];z[c+92>>2]=z[a+316>>2];z[c+96>>2]=z[a+320>>2];z[c+100>>2]=z[a+324>>2];z[c+104>>2]=z[a+328>>2];v[c+108>>2]=v[a+332>>2];J9(v[a+440>>2],0,j<<5);if(j){d=b+168|0;while(1){c=wr(v[a+584>>2],48);e=v[a+452>>2];g=v[a+604>>2];o=v[a+600>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=o;v[c+12>>2]=g;v[c+36>>2]=d;g=j-m|0;v[c+32>>2]=g>>>0<1024?g:1024;v[c+28>>2]=n+(m<<2);v[c>>2]=128892;v[c+20>>2]=h;v[c+24>>2]=1;v[c+40>>2]=e+B(m,112);Ba[v[v[h>>2]+16>>2]](h);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);m=m+1024|0;if(j>>>0>m>>>0){continue}break}}d=v[b+344>>2];c=v[b+340>>2];v[a+348>>2]=0;d=d+(c+(k<<6)|0)|0;b=d+63&-64;if(b>>>0>(v[a+352>>2]&2147483647)>>>0){dz(a+344|0,b)}v[a+348>>2]=d;v[a+360>>2]=0;if(b>>>0>(v[a+364>>2]&2147483647)>>>0){dz(a+356|0,b)}v[a+360>>2]=d;v[a+372>>2]=0;if(b>>>0>(v[a+376>>2]&2147483647)>>>0){dz(a+368|0,b)}v[a+372>>2]=d;v[a+384>>2]=0;if(b>>>0>(v[a+388>>2]&2147483647)>>>0){ez(a+380|0,b)}v[a+384>>2]=d;v[a+524>>2]=0;b=c+63&-64;if(b>>>0>(v[a+528>>2]&2147483647)>>>0){fz(a+520|0,b)}v[a+524>>2]=c;v[a+396>>2]=0;b=i+63&-64;if(b>>>0>(v[a+400>>2]&2147483647)>>>0){gz(a+392|0,b)}v[a+396>>2]=i;v[a+408>>2]=0;if(b>>>0>(v[a+412>>2]&2147483647)>>>0){hz(a+404|0,b)}v[a+408>>2]=i;v[a+420>>2]=0;if(b>>>0>(v[a+424>>2]&2147483647)>>>0){iz(a+416|0,b)}v[a+420>>2]=i;v[a+432>>2]=0;d=k+63&-64;if(d>>>0>(v[a+436>>2]&2147483647)>>>0){jz(a+428|0,d)}v[a+432>>2]=k;v[a+512>>2]=0;if(b>>>0>(v[a+516>>2]&2147483647)>>>0){Aw(a+508|0,b)}v[a+512>>2]=i;b=v[a+4>>2];v[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>(v[b+12>>2]&2147483647)>>>0){kz(b,c)}v[a+592>>2]=1-v[a+592>>2];Ba[v[v[h>>2]+20>>2]](h)}xa=f+160|0}function UK(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=C(0),u=0,w=0,x=0,y=0,A=0,D=0,E=0,F=0,G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0,S=0,T=C(0),U=0,V=0,W=0,X=0,Y=0,Z=0,_=C(0);w=xa-5168|0;xa=w;E=v[a+40>>2];a:{if(!E){if(!v[a+88>>2]){break a}TK(a,b);break a}g=E<<2;U=v[a+8>>2];V=v[a+4>>2];m=v[a+36>>2];while(1){h=v[m+(d<<2)>>2];b:{if((h|0)==-1){break b}if((h|0)<0){if(!(!g|n)){n=v[37696]+12|0;n=Ba[v[v[n>>2]+8>>2]](n,g,24422,13489,1402)|0}e=h&2147483647;z[(o<<2)+n>>2]=z[B(e,24)+V>>2]-z[(h<<2)+U>>2];c:{if(i){break c}i=v[c>>2];if(i){i=Dx(i,g,1);break c}if(!g){i=0;break c}i=v[37696]+12|0;i=Ba[v[v[i>>2]+8>>2]](i,g,24422,13489,373)|0}v[((o^-1)+E<<2)+i>>2]=e;o=o+1|0;break b}d:{if(i){break d}i=v[c>>2];if(i){i=Dx(i,g,1);break d}if(!g){i=0;break d}i=v[37696]+12|0;i=Ba[v[v[i>>2]+8>>2]](i,g,24422,13489,373)|0}v[(f<<2)+i>>2]=d;f=f+1|0}d=d+1|0;if((E|0)!=(d|0)){continue}break}u=v[a+68>>2];e:{if(f){if(u){F=v[a+56>>2];g=v[F+(v[i>>2]<<3)>>2];W=v[a+84>>2];X=v[a+60>>2];Q=v[a+80>>2];l=v[Q>>2];Y=v[a+64>>2];Z=v[a+36>>2];m=0;h=f+u|0;q=h-v[a+88>>2]|0;d=q+6|0;e=d<<3;if(e){m=v[37696]+12|0;m=Ba[v[v[m>>2]+8>>2]](m,e,24422,13489,1521)|0}d=d<<4;if(d){e=v[37696]+12|0;x=Ba[v[v[e>>2]+8>>2]](e,d,24422,13489,1522)|0}d=(q<<3)+m|0;v[d>>2]=-1;v[d+40>>2]=-1;v[d+32>>2]=-1;v[d+24>>2]=-1;v[d+16>>2]=-1;v[d+8>>2]=-1;d=q<<2;if(d){e=v[37696]+12|0;y=Ba[v[v[e>>2]+8>>2]](e,d,24422,13489,1525)|0}if(h){e=0;d=0;while(1){f:{if(g>>>0>l>>>0){r=v[(e<<2)+Y>>2];if((r|0)!=-1){v[(d<<2)+y>>2]=r;l=(d<<3)+m|0;k=(e<<3)+Q|0;v[l>>2]=v[k>>2];v[l+4>>2]=v[k+4>>2];l=(e<<4)+W|0;A=v[l>>2];R=v[l+4>>2];S=v[l+12>>2];k=(d<<4)+x|0;v[k+8>>2]=v[l+8>>2];v[k+12>>2]=S;v[k>>2]=A;v[k+4>>2]=R}l=-1;e=e+1|0;if(u>>>0<=e>>>0){break f}l=v[(e<<3)+Q>>2];break f}g=v[(D<<2)+i>>2];r=v[(g<<2)+Z>>2];v[(d<<2)+y>>2]=r;k=(d<<3)+m|0;A=(g<<3)+F|0;v[k>>2]=v[A>>2];v[k+4>>2]=v[A+4>>2];g=(g<<4)+X|0;A=v[g>>2];R=v[g+4>>2];S=v[g+12>>2];k=(d<<4)+x|0;v[k+8>>2]=v[g+8>>2];v[k+12>>2]=S;v[k>>2]=A;v[k+4>>2]=R;g=-1;D=D+1|0;if(D>>>0>=f>>>0){break f}g=v[(v[(D<<2)+i>>2]<<3)+F>>2]}h=h-1|0;if((r|0)!=-1){v[(r<<2)+b>>2]=v[a>>2]|d<<3|4;d=d+1|0}if(h){continue}break}}d=v[a+84>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d);v[a+84>>2]=0}d=v[a+80>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+84>>2]=x;v[a+80>>2]=m;v[a+72>>2]=q;v[a+76>>2]=q;d=v[a+64>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+88>>2]=0;v[a+68>>2]=q;v[a+64>>2]=y;break e}g:{if(MK(a+72|0,f)){d=f<<2;if(d){g=v[37696]+12|0;g=Ba[v[v[g>>2]+8>>2]](g,d,24422,13489,1604)|0}else{g=0}d=v[a+64>>2];if(d){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,d)}v[a+64>>2]=g;break g}g=v[a+64>>2]}u=v[a+84>>2];r=v[a+60>>2];l=v[a+56>>2];x=v[a+80>>2];d=x+(f<<3)|0;v[d>>2]=-1;v[d+40>>2]=-1;v[d+32>>2]=-1;v[d+24>>2]=-1;v[d+16>>2]=-1;v[d+8>>2]=-1;d=0;while(1){e=d<<2;h=v[e+i>>2];q=v[m+(h<<2)>>2];v[g+e>>2]=q;y=d<<3;e=y+x|0;k=l+(h<<3)|0;v[e>>2]=v[k>>2];v[e+4>>2]=v[k+4>>2];h=r+(h<<4)|0;k=v[h>>2];D=v[h+4>>2];F=v[h+12>>2];e=u+(d<<4)|0;v[e+8>>2]=v[h+8>>2];v[e+12>>2]=F;v[e>>2]=k;v[e+4>>2]=D;v[(q<<2)+b>>2]=y|v[a>>2]|4;d=d+1|0;if((f|0)!=(d|0)){continue}break}v[a+68>>2]=f;break e}if(!u|!v[a+88>>2]){break e}TK(a,b)}h:{if(o){d=o<<2;f=v[c>>2];i:{j:{if(f){g=Dx(f,d,1);break j}if(!d){g=0;e=0;break i}f=v[37696]+12|0;g=Ba[v[v[f>>2]+8>>2]](f,d,24422,13489,373)|0}f=v[c>>2];if(f){e=Dx(f,d,1);break i}e=0;if(!d){break i}f=v[37696]+12|0;e=Ba[v[v[f>>2]+8>>2]](f,d,24422,13489,373)|0}d=w+5128|0;v[d+8>>2]=0;v[d+12>>2]=0;t[d+32|0]=1;v[d+4>>2]=-2147483648;v[d>>2]=140592;v[d+16>>2]=0;v[d+20>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;f=w+1024|0;if((g|0)!=0&(e|0)!=0&(f|0)!=0&(w|0)!=0){t[d+32|0]=0;v[d+20>>2]=w;v[d+16>>2]=f;v[d+12>>2]=e;v[d+8>>2]=g;v[d+4>>2]=v[d+4>>2]|-2147483648}f=v[RU(d,n,o)+8>>2];k:{if(MK(a+48|0,o)){d=v[a+36>>2];if(d){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,d)}v[a+36>>2]=n;break k}if(n){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,n)}n=v[a+36>>2]}m=v[a+56>>2];d=m+(o<<3)|0;v[d>>2]=-1;v[d+40>>2]=-1;v[d+32>>2]=-1;v[d+24>>2]=-1;v[d+16>>2]=-1;v[d+8>>2]=-1;q=v[a+60>>2];u=v[a>>2];K=C(-34028234663852886e22);L=C(34028234663852886e22);h=0;M=C(34028234663852886e22);N=C(34028234663852886e22);O=C(-34028234663852886e22);P=C(-34028234663852886e22);while(1){d=v[((v[f>>2]^-1)+E<<2)+i>>2];v[(h<<2)+n>>2]=d;r=d<<2;l=h<<3;v[r+b>>2]=l|u;d=B(d,24)+V|0;_=z[d+4>>2];G=z[d+8>>2];H=z[d+16>>2];I=z[d+20>>2];J=z[d>>2];l=l+m|0;s=z[r+U>>2];T=C(s+z[d+12>>2]);d=(p(T),j(2));v[l+4>>2]=(d|0)<0?d^-1:d|-2147483648;J=C(J-s);d=(p(J),j(2));v[l>>2]=(d|0)<0?d^-1:d|-2147483648;d=q+(h<<4)|0;I=C(s+I);z[d+12>>2]=I;H=C(s+H);z[d+8>>2]=H;G=C(G-s);z[d+4>>2]=G;s=C(_-s);z[d>>2]=s;K=K>I?K:I;O=O>H?O:H;P=P>T?P:T;L=LM?M:s;N=N>2]=N;z[a+32>>2]=K;z[a+28>>2]=O;z[a+24>>2]=P;z[a+20>>2]=L;z[a+16>>2]=M;KK(c,e);KK(c,g);break h}if(n){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,n)}b=v[a+60>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+60>>2]=0}b=v[a+56>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+48>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;b=v[a+36>>2];if(!b){break h}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+36>>2]=0}v[a+40>>2]=o;v[a+44>>2]=o;if(!i){break a}KK(c,i)}xa=w+5168|0}function RU(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=C(0),r=C(0),s=0,t=0,u=0,x=0,y=0,A=0;a:{if(!b|(c|0)<=0){break a}v[a+24>>2]=v[a+24>>2]+1;J9(v[a+16>>2],0,4096);m=c<<2;g=m+b|0;f=v[a+16>>2];h=f+3072|0;n=f+2048|0;o=f+1024|0;b:{if(v[a+4>>2]<0){if(m){q=z[b>>2];d=b;while(1){r=q;e=v[d>>2];q=z[d>>2];if(r>q){break b}e=f+((e&255)<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[d+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[d+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[d+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;d=d+4|0;if((g|0)!=(d|0)){continue}break}}v[a+28>>2]=v[a+28>>2]+1;c=c>>>0>1?c:1;h=c&7;b=v[a+8>>2];f=0;d=0;if(c-1>>>0>=7){c=c&-8;e=0;while(1){v[b+(d<<2)>>2]=d;g=d|1;v[b+(g<<2)>>2]=g;g=d|2;v[b+(g<<2)>>2]=g;g=d|3;v[b+(g<<2)>>2]=g;g=d|4;v[b+(g<<2)>>2]=g;g=d|5;v[b+(g<<2)>>2]=g;g=d|6;v[b+(g<<2)>>2]=g;g=d|7;v[b+(g<<2)>>2]=g;d=d+8|0;e=e+8|0;if((c|0)!=(e|0)){continue}break}}if(!h){break a}while(1){v[b+(d<<2)>>2]=d;d=d+1|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}break a}if(m){e=v[a+8>>2];q=z[(v[e>>2]<<2)+b>>2];d=b;while(1){r=q;q=z[(v[e>>2]<<2)+b>>2];if(r>q){break b}l=f+(w[d|0]<<2)|0;v[l>>2]=v[l>>2]+1;l=o+(w[d+1|0]<<2)|0;v[l>>2]=v[l>>2]+1;l=n+(w[d+2|0]<<2)|0;v[l>>2]=v[l>>2]+1;l=h+(w[d+3|0]<<2)|0;v[l>>2]=v[l>>2]+1;e=e+4|0;d=d+4|0;if((g|0)!=(d|0)){continue}break}}v[a+28>>2]=v[a+28>>2]+1;return a}if((d|0)!=(g|0)){while(1){e=f+(w[d|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[d+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[d+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[d+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;d=d+4|0;if((g|0)!=(d|0)){continue}break}}f=128;l=0;while(1){d=f<<2;l=v[h+(d|12)>>2]+(v[h+(d|8)>>2]+(v[h+(d|4)>>2]+(v[d+h>>2]+l|0)|0)|0)|0;f=f+4|0;if((f|0)!=256){continue}break}u=m-4|0;A=u&4;d=c>>>0>1?c:1;x=d&-4;o=d&3;s=d&-2;t=d&1;m=d-1|0;n=0;while(1){h=v[a+16>>2]+(n<<10)|0;g=b+n|0;f=w[g|0];d=v[h+(f<<2)>>2]==(c|0);h=d?0:h;c:{d:{e:{f:{if((n|0)!=3){if(!h){break c}d=v[a+20>>2];e=v[a+12>>2];v[d>>2]=e;f=1;while(1){i=f<<2;j=i+d|0;k=e;e=h+i|0;k=k+(v[e-4>>2]<<2)|0;v[j>>2]=k;i=i+4|0;e=k+(v[e>>2]<<2)|0;v[i+d>>2]=e;e=e+(v[h+i>>2]<<2)|0;v[j+8>>2]=e;f=f+3|0;if((f|0)!=256){continue}break}if(v[a+4>>2]<0){h=0;f=0;if(!m){break f}while(1){i=d+(w[g+(h<<2)|0]<<2)|0;e=v[i>>2];v[i>>2]=e+4;v[e>>2]=h;i=h|1;j=d+(w[g+(i<<2)|0]<<2)|0;e=v[j>>2];v[j>>2]=e+4;v[e>>2]=i;h=h+2|0;f=f+2|0;if((s|0)!=(f|0)){continue}break}break f}f=v[a+8>>2];h=f;if(!A){e=v[f>>2];i=d+(w[g+(e<<2)|0]<<2)|0;h=v[i>>2];v[i>>2]=h+4;v[h>>2]=e;h=f+4|0}if(!u){break e}e=f+(c<<2)|0;while(1){i=v[h>>2];j=d+(w[g+(i<<2)|0]<<2)|0;f=v[j>>2];v[j>>2]=f+4;v[f>>2]=i;i=v[h+4>>2];j=d+(w[g+(i<<2)|0]<<2)|0;f=v[j>>2];v[j>>2]=f+4;v[f>>2]=i;h=h+8|0;if((e|0)!=(h|0)){continue}break}break e}g:{if(!d){d=v[a+20>>2];e=v[a+12>>2]+(l<<2)|0;v[d>>2]=e;f=1;while(1){k=e;e=f<<2;i=e+h|0;g=k+(v[i-4>>2]<<2)|0;v[d+e>>2]=g;e=e+4|0;g=g+(v[i>>2]<<2)|0;v[e+d>>2]=g;i=f+2<<2;e=g+(v[e+h>>2]<<2)|0;v[i+d>>2]=e;g=f+3|0;if((g|0)!=128){e=e+(v[h+i>>2]<<2)|0;v[d+(g<<2)>>2]=e;f=f+4|0;continue}break}v[d+1020>>2]=v[a+12>>2];f=0;while(1){e=254-f<<2;g=e+d|0;i=255-f<<2;v[g>>2]=v[i+d>>2]+(v[h+i>>2]<<2);if((f|0)==126){e=128;while(1){f=e<<2;g=f+d|0;v[g>>2]=v[g>>2]+(v[f+h>>2]<<2);g=f|4;i=g+d|0;v[i>>2]=v[i>>2]+(v[h+g>>2]<<2);g=f|8;i=g+d|0;v[i>>2]=v[i>>2]+(v[h+g>>2]<<2);f=f|12;g=f+d|0;v[g>>2]=v[g>>2]+(v[f+h>>2]<<2);e=e+4|0;if((e|0)!=256){continue}break}if(v[a+4>>2]<0){h=0;e=0;if(!m){break g}while(1){i=v[(h<<2)+b>>2];j=d+(i>>>22&1020)|0;f=v[j>>2];g=f-4|0;i=(i|0)>=0;v[j>>2]=i?f+4|0:g;v[(i?f:g)>>2]=h;i=h|1;j=v[(i<<2)+b>>2];k=d+(j>>>22&1020)|0;f=v[k>>2];g=f-4|0;j=(j|0)>=0;v[k>>2]=j?f+4|0:g;v[(j?f:g)>>2]=i;h=h+2|0;e=e+2|0;if((s|0)!=(e|0)){continue}break}break g}f=v[a+8>>2];h=0;e=0;if(m){while(1){j=h<<2;k=v[j+f>>2];p=v[(k<<2)+b>>2];y=d+(p>>>22&1020)|0;g=v[y>>2];i=g-4|0;p=(p|0)>=0;v[y>>2]=p?g+4|0:i;v[(p?g:i)>>2]=k;j=v[f+(j|4)>>2];k=v[(j<<2)+b>>2];p=d+(k>>>22&1020)|0;g=v[p>>2];i=g-4|0;k=(k|0)>=0;v[p>>2]=k?g+4|0:i;v[(k?g:i)>>2]=j;h=h+2|0;e=e+2|0;if((s|0)!=(e|0)){continue}break}}if(!t){break e}f=v[f+(h<<2)>>2];e=v[(f<<2)+b>>2];g=d+(e>>>22&1020)|0;d=v[g>>2];h=d-4|0;e=(e|0)>=0;v[g>>2]=e?d+4|0:h;v[(e?d:h)>>2]=f;break e}else{v[d+(253-f<<2)>>2]=v[g>>2]+(v[e+h>>2]<<2);f=f+2|0;continue}}}if(f<<24>>24>=0){break a}h:{if(v[a+4>>2]<0){h=v[a+12>>2];e=0;d=0;f=0;if(m>>>0<3){break h}while(1){g=d<<2;v[g+h>>2]=(d^-1)+c;i=c-d|0;v[(g|4)+h>>2]=i-2;v[(g|8)+h>>2]=i-3;v[(g|12)+h>>2]=i-4;d=d+4|0;f=f+4|0;if((x|0)!=(f|0)){continue}break}break h}h=v[a+12>>2];e=v[a+8>>2];f=0;d=0;i=0;if(m>>>0>=3){while(1){g=d<<2;v[g+h>>2]=v[((d^-1)+c<<2)+e>>2];j=(c-d<<2)+e|0;v[(g|4)+h>>2]=v[j-8>>2];v[(g|8)+h>>2]=v[j-12>>2];v[(g|12)+h>>2]=v[j-16>>2];d=d+4|0;i=i+4|0;if((x|0)!=(i|0)){continue}break}}if(!o){break d}while(1){v[(d<<2)+h>>2]=v[((d^-1)+c<<2)+e>>2];d=d+1|0;f=f+1|0;if((o|0)!=(f|0)){continue}break}break d}if(o){while(1){v[(d<<2)+h>>2]=(d^-1)+c;d=d+1|0;e=e+1|0;if((o|0)!=(e|0)){continue}break}}v[a+4>>2]=v[a+4>>2]&2147483647;e=v[a+8>>2];break d}if(t){e=v[(h<<2)+b>>2];g=d+(e>>>22&1020)|0;d=v[g>>2];f=d-4|0;e=(e|0)>=0;v[g>>2]=e?d+4|0:f;v[(e?d:f)>>2]=h}v[a+4>>2]=v[a+4>>2]&2147483647;break e}if(t){f=d+(w[g+(h<<2)|0]<<2)|0;d=v[f>>2];v[f>>2]=d+4;v[d>>2]=h}v[a+4>>2]=v[a+4>>2]&2147483647}h=v[a+12>>2];e=v[a+8>>2]}v[a+12>>2]=e;v[a+8>>2]=h}n=n+1|0;if((n|0)!=4){continue}break}}return a}function A2(a,b){var c=0,d=0,e=0,f=0,g=C(0),h=C(0),i=0,j=0,k=0,l=0,m=C(0),n=0,o=0,p=C(0),q=C(0),r=0,s=0,u=C(0),x=C(0),y=C(0),A=C(0),B=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0);c=xa-256|0;xa=c;g=z[a+44>>2];k=c-(b+15&-16)|0;t[k|0]=0;if(b>>>0>=2){e=1;d=b-1|0;r=d&1;if((b|0)!=2){s=d&-2;d=0;while(1){t[e+k|0]=e;p=z[((e<<6)+a|0)+44>>2];l=e+1|0;t[l+k|0]=l;q=z[((l<<6)+a|0)+44>>2];j=g>p;g=j?p:g;o=q>2]>2];E=z[l+36>>2];F=z[l+32>>2];J=z[l+28>>2];p=z[l+24>>2];q=z[l+20>>2];y=z[l+16>>2];d=v[l+48>>2];v[c+216>>2]=v[l+44>>2];v[c+220>>2]=d;f=w[k|0];if(i>>>0>=2){d=(f<<6)+a|0;g=C(z[d+24>>2]-p);u=C(g*g);g=C(z[d+16>>2]-y);x=C(g*g);g=C(z[d+20>>2]-q);g=C(u+C(x+C(g*g)));e=1;while(1){j=w[e+k|0];d=(j<<6)+a|0;h=C(z[d+24>>2]-p);u=C(h*h);h=C(z[d+16>>2]-y);x=C(h*h);h=C(z[d+20>>2]-q);h=C(u+C(x+C(h*h)));d=h>g;g=d?h:g;n=d?e:n;f=d?j:f;e=e+1|0;if((i|0)!=(e|0)){continue}break}}j=b-2|0;t[k+n|0]=w[j+k|0];d=255;f=((f&255)<<6)+a|0;e=v[f+12>>2];v[c+244>>2]=v[f+8>>2];v[c+248>>2]=e;e=v[f+4>>2];v[c+236>>2]=v[f>>2];v[c+240>>2]=e;G=z[f+20>>2];H=z[f+24>>2];I=z[f+16>>2];e=v[f+48>>2];v[c+144>>2]=v[f+44>>2];v[c+148>>2]=e;e=v[f+40>>2];v[c+136>>2]=v[f+36>>2];v[c+140>>2]=e;e=v[f+32>>2];v[c+128>>2]=v[f+28>>2];v[c+132>>2]=e;h=C(I-y);m=C(G-q);g=C(C(h*E)-C(F*m));x=g;u=C(g*g);g=C(m*D);m=C(H-p);g=C(g-C(E*m));h=C(C(m*F)-C(D*h));A=C(u+C(C(g*g)+C(h*h)));m=C(C(1)/C(K(A)));f=A>C(0);A=f?C(x*m):D;u=f?C(h*m):E;x=f?C(g*m):F;e=0;a:{if(!j){f=-1;break a}g=C(34028234663852886e22);h=C(-34028234663852886e22);f=-1;d=-1;while(1){r=w[e+k|0];i=(r<<6)+a|0;m=C(C(C(z[i+24>>2]-p)*A)+C(C(C(z[i+16>>2]-y)*x)+C(u*C(z[i+20>>2]-q))));i=mC(0)}i=b-3|0;t[k+n|0]=w[i+k|0];d=(d<<6)+a|0;v[c+212>>2]=v[d+48>>2];j=v[d+44>>2];v[c+204>>2]=v[d+40>>2];v[c+208>>2]=j;j=v[d+36>>2];v[c+196>>2]=v[d+32>>2];v[c+200>>2]=j;j=v[d+28>>2];v[c+188>>2]=v[d+24>>2];v[c+192>>2]=j;j=v[d+20>>2];v[c+180>>2]=v[d+16>>2];v[c+184>>2]=j;j=v[d+12>>2];v[c+172>>2]=v[d+8>>2];v[c+176>>2]=j;j=v[d+4>>2];v[c+164>>2]=v[d>>2];v[c+168>>2]=j;d=(f|0)==(i|0)?n:f;if(!(!e|!i)){g=C(-34028234663852886e22);e=0;while(1){n=w[e+k|0];f=(n<<6)+a|0;h=C(C(C(z[f+24>>2]-p)*A)+C(C(C(z[f+16>>2]-y)*x)+C(u*C(z[f+20>>2]-q))));f=h>g;g=f?h:g;d=f?e:d;o=f?n:o;e=e+1|0;if((i|0)!=(e|0)){continue}break}}f=b-4|0;t[d+k|0]=w[f+k|0];d=((o&255)<<6)+a|0;v[c+124>>2]=v[d+48>>2];e=v[d+44>>2];v[c+116>>2]=v[d+40>>2];v[c+120>>2]=e;e=v[d+36>>2];v[c+108>>2]=v[d+32>>2];v[c+112>>2]=e;e=v[d+28>>2];v[c+100>>2]=v[d+24>>2];v[c+104>>2]=e;e=v[d+20>>2];v[c+92>>2]=v[d+16>>2];v[c+96>>2]=e;e=v[d+12>>2];v[c+84>>2]=v[d+8>>2];v[c+88>>2]=e;e=v[d+4>>2];v[c+76>>2]=v[d>>2];v[c+80>>2]=e;if(f){o=b&1;b:{if((b|0)==5){g=C(34028234663852886e22);d=-1;e=0;break b}j=f&-2;g=C(34028234663852886e22);f=-1;e=0;d=-1;i=0;while(1){r=w[e+k|0];h=z[((r<<6)+a|0)+44>>2];b=h>2];n=g>h;d=n?B:b?r:d;g=n?h:g;f=n?s:b?e:f;e=e+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(o){b=w[e+k|0];d=z[((b<<6)+a|0)+44>>2]>2]=v[b+48>>2];d=v[b+44>>2];v[c+52>>2]=v[b+40>>2];v[c+56>>2]=d;d=v[b+36>>2];v[c+44>>2]=v[b+32>>2];v[c+48>>2]=d;d=v[b+28>>2];v[c+36>>2]=v[b+24>>2];v[c+40>>2]=d;d=v[b+20>>2];v[c+28>>2]=v[b+16>>2];v[c+32>>2]=d;d=v[b+12>>2];v[c+20>>2]=v[b+8>>2];v[c+24>>2]=d;d=v[b+4>>2];v[c+12>>2]=v[b>>2];v[c+16>>2]=d;b=v[l+8>>2];d=v[l+12>>2];f=v[l>>2];e=v[l+4>>2];z[a+40>>2]=D;z[a+36>>2]=E;z[a+32>>2]=F;z[a+28>>2]=J;z[a+24>>2]=p;z[a+20>>2]=q;z[a+16>>2]=y;v[a+8>>2]=b;v[a+12>>2]=d;v[a>>2]=f;v[a+4>>2]=e;b=v[c+220>>2];v[a+44>>2]=v[c+216>>2];v[a+48>>2]=b;b=v[c+240>>2];v[a+64>>2]=v[c+236>>2];v[a+68>>2]=b;b=v[c+248>>2];v[a+72>>2]=v[c+244>>2];v[a+76>>2]=b;z[a+88>>2]=H;z[a+84>>2]=G;z[a+80>>2]=I;b=v[c+148>>2];v[a+108>>2]=v[c+144>>2];v[a+112>>2]=b;b=v[c+140>>2];v[a+100>>2]=v[c+136>>2];v[a+104>>2]=b;b=v[c+132>>2];v[a+92>>2]=v[c+128>>2];v[a+96>>2]=b;b=v[c+168>>2];v[a+128>>2]=v[c+164>>2];v[a+132>>2]=b;b=v[c+176>>2];v[a+136>>2]=v[c+172>>2];v[a+140>>2]=b;b=v[c+184>>2];v[a+144>>2]=v[c+180>>2];v[a+148>>2]=b;b=v[c+192>>2];v[a+152>>2]=v[c+188>>2];v[a+156>>2]=b;b=v[c+200>>2];v[a+160>>2]=v[c+196>>2];v[a+164>>2]=b;b=v[c+208>>2];v[a+168>>2]=v[c+204>>2];v[a+172>>2]=b;v[a+176>>2]=v[c+212>>2];v[a+240>>2]=v[c+124>>2];b=v[c+120>>2];v[a+232>>2]=v[c+116>>2];v[a+236>>2]=b;b=v[c+112>>2];v[a+224>>2]=v[c+108>>2];v[a+228>>2]=b;b=v[c+104>>2];v[a+216>>2]=v[c+100>>2];v[a+220>>2]=b;b=v[c+96>>2];v[a+208>>2]=v[c+92>>2];v[a+212>>2]=b;b=v[c+88>>2];v[a+200>>2]=v[c+84>>2];v[a+204>>2]=b;b=v[c+80>>2];v[a+192>>2]=v[c+76>>2];v[a+196>>2]=b;b=v[c+16>>2];v[a+256>>2]=v[c+12>>2];v[a+260>>2]=b;b=v[c+24>>2];v[a+264>>2]=v[c+20>>2];v[a+268>>2]=b;b=v[c+32>>2];v[a+272>>2]=v[c+28>>2];v[a+276>>2]=b;b=v[c+40>>2];v[a+280>>2]=v[c+36>>2];v[a+284>>2]=b;b=v[c+48>>2];v[a+288>>2]=v[c+44>>2];v[a+292>>2]=b;b=v[c+56>>2];v[a+296>>2]=v[c+52>>2];v[a+300>>2]=b;v[a+304>>2]=v[c+60>>2];xa=c+256|0}function Cv(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=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0);i=xa-4944|0;xa=i;f=v[f>>2];D=z[a+4>>2];z[i+4928>>2]=D;s=z[e>>2];z[i+4912>>2]=s;H=z[c+20>>2];u=z[c+24>>2];k=z[c>>2];F=z[c+4>>2];p=z[c+8>>2];y=z[c+12>>2];E=z[c+16>>2];v[i+4908>>2]=0;z[i+4904>>2]=u;z[i+4900>>2]=H;z[i+4896>>2]=E;z[i+4892>>2]=y;z[i+4888>>2]=p;z[i+4884>>2]=F;z[i+4880>>2]=k;o=z[d+20>>2];G=z[d+24>>2];n=z[d>>2];m=z[d+4>>2];l=z[d+8>>2];j=z[d+12>>2];q=z[d+16>>2];v[i+4876>>2]=0;z[i+4872>>2]=G;z[i+4868>>2]=o;z[i+4864>>2]=q;z[i+4860>>2]=j;z[i+4856>>2]=l;z[i+4852>>2]=m;z[i+4848>>2]=n;N=C(C(C(p*n)-C(l*k))+C(C(F*j)-C(y*m)));Q=C(C(C(F*l)-C(m*p))+C(C(k*j)-C(y*n)));I=C(C(C(k*m)-C(n*F))+C(C(p*j)-C(y*l)));A=k;k=C(-n);F=C(C(y*j)-C(C(C(A*k)-C(F*m))-C(l*p)));A=k;k=C(E-q);p=C(H-o);y=C(u-G);H=C(C(C(A*k)-C(p*m))-C(l*y));u=C(C(j*j)+C(-.5));E=C(C(C(u*k)+C(j*C(C(l*p)-C(m*y))))-C(n*H));T=C(E+E);E=C(T-z[f+16>>2]);E=E>C(0)?E:C(-E);o=C(C(C(u*p)+C(j*C(C(n*y)-C(l*k))))-C(m*H));U=C(o+o);o=C(U-z[f+20>>2]);o=o>C(0)?o:C(-o);o=o<=E?E:o;j=C(C(C(j*C(C(m*k)-C(n*p)))+C(u*y))-C(l*H));V=C(j+j);j=C(V-z[f+24>>2]);j=(j>C(0)?j:C(-j))>=C(0)?E:C(0);a:{if(C(C(F*z[f+12>>2])+C(C(I*z[f+8>>2])+C(C(Q*z[f>>2])+C(N*z[f+4>>2]))))>2]=D*C(.0010000000474974513);r=i+4816|0;v[r>>2]=0;v[r+4>>2]=1065353216;r=i+4808|0;v[r>>2]=0;v[r+4>>2]=0;r=i+4800|0;v[r>>2]=0;v[r+4>>2]=1065353216;r=i+4792|0;v[r>>2]=0;v[r+4>>2]=0;r=i+4784|0;v[r>>2]=1065353216;v[r+4>>2]=1065353216;r=i+4768|0;v[r>>2]=1065353216;v[r+4>>2]=0;t[i+4824|0]=0;v[i+4776>>2]=0;v[i+4780>>2]=0;v[i+4760>>2]=0;v[i+4764>>2]=0;v[i+4752>>2]=1065353216;v[i+4756>>2]=0;r=z[b+4>>2]==C(1)&z[b+8>>2]==C(1)&z[b+12>>2]==C(1);if(!r){JX(i+4752|0,b+4|0,b+16|0)}Y=z[e>>2];Z=z[a+4>>2];p=z[d+20>>2];y=z[c+20>>2];D=z[d+16>>2];H=z[c+16>>2];u=z[d+24>>2];E=z[c+24>>2];j=z[d+8>>2];n=z[d+12>>2];m=z[d+4>>2];l=z[d>>2];o=z[a+8>>2];K=z[c+8>>2];G=z[c+12>>2];O=z[c+4>>2];q=z[c>>2];c=v[i+4940>>2];a=i+4744|0;v[a>>2]=v[i+4936>>2];v[a+4>>2]=c;v[i+4732>>2]=0;v[i+4716>>2]=0;k=C(E-u);s=C(k+k);k=C(H-D);A=C(k+k);k=C(y-p);J=C(k+k);W=C(C(j*s)+C(C(l*A)+C(m*J)));k=C(C(n*n)+C(-.5));L=C(C(j*W)+C(C(s*k)-C(n*C(C(l*J)-C(A*m)))));z[i+4664>>2]=L;M=C(q+q);P=C(G+G);R=C(o*C(C(K*M)-C(O*P)));S=C(R+R);G=C(o*C(C(q*M)+C(C(G*P)+C(-1))));q=C(G+G);o=C(o*C(C(K*P)+C(M*O)));K=C(o+o);O=C(C(j*S)+C(C(l*q)+C(m*K)));P=C(C(j*O)+C(C(S*k)-C(n*C(C(l*K)-C(q*m)))));z[i+4728>>2]=L-P;M=C(C(m*W)+C(C(J*k)-C(n*C(C(j*A)-C(s*l)))));z[i+4660>>2]=M;X=C(C(m*O)+C(C(K*k)-C(n*C(C(j*q)-C(S*l)))));z[i+4724>>2]=M-X;z[i+4712>>2]=L+P;z[i+4708>>2]=M+X;a=v[i+4932>>2];v[i+4736>>2]=v[i+4928>>2];v[i+4740>>2]=a;v[i+4668>>2]=0;v[i+4684>>2]=4;t[i+4688|0]=1;L=z[i+4736>>2];z[i+4680>>2]=L;z[i+4676>>2]=L;z[i+4672>>2]=L;s=C(C(l*W)+C(C(A*k)-C(n*C(C(m*s)-C(J*j)))));z[i+4656>>2]=s;q=C(C(l*O)+C(C(q*k)-C(n*C(C(m*S)-C(K*j)))));z[i+4720>>2]=s-q;z[i+4704>>2]=s+q;q=C(C(E-R)-u);q=C(q+q);s=C(C(H-G)-D);s=C(s+s);A=C(C(y-o)-p);A=C(A+A);J=C(C(j*q)+C(C(l*s)+C(m*A)));z[i+4644>>2]=C(j*J)+C(C(q*k)-C(n*C(C(l*A)-C(s*m))));z[i+4640>>2]=C(m*J)+C(C(A*k)-C(n*C(C(j*s)-C(q*l))));z[i+4648>>2]=Z+Y;z[i+4636>>2]=C(l*J)+C(C(s*k)-C(n*C(C(m*q)-C(A*j))));u=C(C(R+E)-u);u=C(u+u);D=C(C(H+G)-D);D=C(D+D);p=C(C(y+o)-p);p=C(p+p);y=C(C(j*u)+C(C(l*D)+C(m*p)));z[i+4632>>2]=C(j*y)+C(C(u*k)-C(n*C(C(l*p)-C(D*m))));z[i+4628>>2]=C(m*y)+C(C(p*k)-C(n*C(C(j*D)-C(u*l))));z[i+4624>>2]=C(l*y)+C(C(D*k)-C(n*C(C(m*u)-C(p*j))));a=v[b+40>>2];v[f+28>>2]=0;z[f+24>>2]=V;z[f+20>>2]=U;z[f+16>>2]=T;z[f+12>>2]=F;z[f+8>>2]=I;z[f+4>>2]=N;z[f>>2]=Q;t[f+62|0]=0;b=v[a+56>>2];v[i+932>>2]=0;t[i+80|0]=r;v[i+76>>2]=b;v[i+68>>2]=2;v[i+64>>2]=144452;v[i+72>>2]=i+4752;e=z1(i+944|0,i+4912|0,i+4832|0,i+4880|0,i+4848|0,f,g,0,h);j=C(z[i+4736>>2]+z[i+4912>>2]);z[i+4576>>2]=j;z[i+4592>>2]=j*j;v[i+4608>>2]=i+4656;EV(i,i+4624|0);if(!r){nZ(i+4752|0,i+36|0,i+48|0,i)}Ba[v[(x[a+4>>1]<<2)+144476>>2]](a,i,i- -64|0,1,1);h=v[i+932>>2];if(h){a=i+660|0;b=i+852|0;c=i+916|0;d=i+84|0;while(1){M1(e,d,v[b>>2],w[c|0]);c=c+1|0;b=b+4|0;a=a+12|0;d=d+36|0;h=h-1|0;if(h){continue}break}v[i+932>>2]=0}A1(e,3,0);break a}a=0;v[i+124>>2]=0;z[i+120>>2]=V;z[i+116>>2]=U;v[i+108>>2]=0;v[i+92>>2]=0;m=C(N+N);l=C(I*m);j=C(Q+Q);n=C(F*j);z[i+100>>2]=l-n;z[i+88>>2]=l+n;l=C(C(1)-C(Q*j));n=C(N*m);z[i+104>>2]=l-n;A=l;l=C(I+I);k=C(I*l);z[i+84>>2]=A-k;z[i+112>>2]=T;v[i+76>>2]=0;I=C(I*j);m=C(F*m);z[i+96>>2]=I+m;j=C(N*j);l=C(F*l);z[i+80>>2]=j-l;z[i+72>>2]=I-m;z[i+68>>2]=j+l;z[i+64>>2]=C(C(1)-n)-k;z[i+4752>>2]=D*C(.05000000074505806);z[i>>2]=D+s;if(!w[f+62|0]){break a}while(1){c=a+f|0;b=w[c+56|0];d=f+B(b,400)|0;B2(i+4656|0,d- -64|0,i- -64|0,i+4752|0);b:{if(!v[d+448>>2]){d=w[f+62|0]-1|0;t[f+62|0]=d;d=f+(d&255)|0;e=w[d+56|0];t[d+56|0]=b;t[c+56|0]=e;a=a-1|0;break b}z[(f+(b<<2)|0)+32>>2]=z[i+4656>>2]}a=a+1|0;if(a>>>0>2];a:{if((f|0)==v[a+4>>2]){Ba[v[v[f>>2]+152>>2]](f,x[a+8>>1],x[a+10>>1],e+160|0,e+128|0);d=v[e+172>>2];v[e+344>>2]=v[e+168>>2];v[e+348>>2]=d;d=v[e+164>>2];v[e+336>>2]=v[e+160>>2];v[e+340>>2]=d;d=v[e+180>>2];v[e+320>>2]=v[e+176>>2];v[e+324>>2]=d;d=v[e+188>>2];v[e+328>>2]=v[e+184>>2];v[e+332>>2]=d;d=v[e+132>>2];v[e+304>>2]=v[e+128>>2];v[e+308>>2]=d;d=v[e+140>>2];v[e+312>>2]=v[e+136>>2];v[e+316>>2]=d;d=v[e+148>>2];v[e+288>>2]=v[e+144>>2];v[e+292>>2]=d;d=v[e+156>>2];v[e+296>>2]=v[e+152>>2];v[e+300>>2]=d;d=v[a>>2];Ba[v[v[d>>2]+120>>2]](e+96|0,d,x[a+8>>1]);d=v[a+4>>2];Ba[v[v[d>>2]+120>>2]](e- -64|0,d,x[a+10>>1]);d=v[e+116>>2];v[e+256>>2]=v[e+112>>2];v[e+260>>2]=d;d=v[e+108>>2];v[e+280>>2]=v[e+104>>2];v[e+284>>2]=d;d=v[e+100>>2];v[e+272>>2]=v[e+96>>2];v[e+276>>2]=d;d=v[e+124>>2];v[e+264>>2]=v[e+120>>2];v[e+268>>2]=d;d=v[e+68>>2];v[e+240>>2]=v[e+64>>2];v[e+244>>2]=d;d=v[e+76>>2];v[e+248>>2]=v[e+72>>2];v[e+252>>2]=d;d=v[e+84>>2];v[e+224>>2]=v[e+80>>2];v[e+228>>2]=d;d=v[e+92>>2];v[e+232>>2]=v[e+88>>2];v[e+236>>2]=d;d=v[a>>2];d=Ba[v[v[d>>2]+168>>2]](d,x[a+8>>1])|0;f=v[d>>2];g=v[d+4>>2];h=v[d+12>>2];v[e+216>>2]=v[d+8>>2];v[e+220>>2]=h;v[e+208>>2]=f;v[e+212>>2]=g;d=v[a+4>>2];d=Ba[v[v[d>>2]+168>>2]](d,x[a+10>>1])|0;f=v[d>>2];g=v[d+4>>2];h=v[d+12>>2];v[e+200>>2]=v[d+8>>2];v[e+204>>2]=h;v[e+192>>2]=f;v[e+196>>2]=g;break a}g=x[a+8>>1];b:{if((g|0)==65535){g=v[f+4>>2];h=v[f>>2];i=z[f+8>>2];v[e+348>>2]=0;z[e+344>>2]=i;v[e+336>>2]=h;v[e+340>>2]=g;i=z[f+24>>2];g=v[f+16>>2];h=v[f+20>>2];v[e+332>>2]=0;z[e+328>>2]=i;v[e+320>>2]=g;v[e+324>>2]=h;i=z[f+56>>2];g=v[f+48>>2];h=v[f+52>>2];v[e+284>>2]=0;z[e+280>>2]=i;v[e+272>>2]=g;v[e+276>>2]=h;i=z[f+40>>2];g=v[f+32>>2];f=v[f+36>>2];v[e+268>>2]=0;z[e+264>>2]=i;v[e+256>>2]=g;v[e+260>>2]=f;f=(v[a+12>>2]<<6)+d|0;i=z[f+12>>2];k=z[f+8>>2];l=z[f+4>>2];z[e+208>>2]=z[f>>2];break b}Ba[v[v[f>>2]+156>>2]](e+160|0,f,g);f=v[a>>2];f=Ba[v[v[f>>2]+168>>2]](f,x[a+8>>1])|0;i=z[f+12>>2];k=z[f+8>>2];l=z[f+4>>2];z[e+208>>2]=z[f>>2];f=v[a>>2];Ba[v[v[f>>2]+120>>2]](e+128|0,f,x[a+8>>1]);f=v[e+172>>2];v[e+344>>2]=v[e+168>>2];v[e+348>>2]=f;f=v[e+164>>2];v[e+336>>2]=v[e+160>>2];v[e+340>>2]=f;f=v[e+180>>2];v[e+320>>2]=v[e+176>>2];v[e+324>>2]=f;f=v[e+188>>2];v[e+328>>2]=v[e+184>>2];v[e+332>>2]=f;f=v[e+132>>2];v[e+272>>2]=v[e+128>>2];v[e+276>>2]=f;f=v[e+140>>2];v[e+280>>2]=v[e+136>>2];v[e+284>>2]=f;f=v[e+148>>2];v[e+256>>2]=v[e+144>>2];v[e+260>>2]=f;f=v[e+156>>2];v[e+264>>2]=v[e+152>>2];v[e+268>>2]=f}z[e+220>>2]=i;z[e+216>>2]=k;z[e+212>>2]=l;f=x[a+10>>1];if((f|0)==65535){f=v[a+4>>2];g=v[f+4>>2];h=v[f>>2];i=z[f+8>>2];v[e+316>>2]=0;z[e+312>>2]=i;v[e+304>>2]=h;v[e+308>>2]=g;i=z[f+24>>2];g=v[f+16>>2];h=v[f+20>>2];v[e+300>>2]=0;z[e+296>>2]=i;v[e+288>>2]=g;v[e+292>>2]=h;i=z[f+56>>2];g=v[f+48>>2];h=v[f+52>>2];v[e+252>>2]=0;z[e+248>>2]=i;v[e+240>>2]=g;v[e+244>>2]=h;i=z[f+40>>2];g=v[f+32>>2];f=v[f+36>>2];v[e+236>>2]=0;z[e+232>>2]=i;v[e+224>>2]=g;v[e+228>>2]=f;d=(v[a+16>>2]<<6)+d|0;f=v[d+8>>2];g=v[d+12>>2];h=v[d+4>>2];v[e+192>>2]=v[d>>2];v[e+196>>2]=h;v[e+200>>2]=f;v[e+204>>2]=g;break a}d=v[a+4>>2];Ba[v[v[d>>2]+156>>2]](e+160|0,d,f);d=v[a+4>>2];d=Ba[v[v[d>>2]+168>>2]](d,x[a+10>>1])|0;f=v[d>>2];g=v[d+4>>2];h=v[d+12>>2];v[e+200>>2]=v[d+8>>2];v[e+204>>2]=h;v[e+192>>2]=f;v[e+196>>2]=g;d=v[a+4>>2];Ba[v[v[d>>2]+120>>2]](e+128|0,d,x[a+10>>1]);d=v[e+172>>2];v[e+312>>2]=v[e+168>>2];v[e+316>>2]=d;d=v[e+164>>2];v[e+304>>2]=v[e+160>>2];v[e+308>>2]=d;d=v[e+180>>2];v[e+288>>2]=v[e+176>>2];v[e+292>>2]=d;d=v[e+188>>2];v[e+296>>2]=v[e+184>>2];v[e+300>>2]=d;d=v[e+132>>2];v[e+240>>2]=v[e+128>>2];v[e+244>>2]=d;d=v[e+140>>2];v[e+248>>2]=v[e+136>>2];v[e+252>>2]=d;d=v[e+148>>2];v[e+224>>2]=v[e+144>>2];v[e+228>>2]=d;d=v[e+156>>2];v[e+232>>2]=v[e+152>>2];v[e+236>>2]=d}qB(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=x[a+8>>1];d=v[a>>2];c:{if((d|0)==v[a+4>>2]){Ba[v[v[d>>2]+132>>2]](d,f,e+160|0,e+96|0,x[a+10>>1],e+128|0,e- -64|0,v[c+32>>2],v[c+36>>2]);break c}d:{if((f|0)==65535){f=v[e+336>>2];g=v[e+340>>2];z[d+8>>2]=z[e+344>>2];v[d>>2]=f;v[d+4>>2]=g;b=z[e+328>>2];f=v[e+324>>2];d=v[a>>2];v[d+16>>2]=v[e+320>>2];v[d+20>>2]=f;z[d+24>>2]=b;break d}g=v[c+36>>2];h=v[c+32>>2];m=v[v[d>>2]+128>>2];j=v[e+172>>2];v[e+56>>2]=v[e+168>>2];v[e+60>>2]=j;j=v[e+164>>2];v[e+48>>2]=v[e+160>>2];v[e+52>>2]=j;j=v[e+100>>2];v[e+32>>2]=v[e+96>>2];v[e+36>>2]=j;j=v[e+108>>2];v[e+40>>2]=v[e+104>>2];v[e+44>>2]=j;Ba[m|0](d,f,e+48|0,e+32|0,h,g)}d=x[a+10>>1];if((d|0)==65535){d=v[e+304>>2];f=v[e+308>>2];c=v[a+4>>2];z[c+8>>2]=z[e+312>>2];v[c>>2]=d;v[c+4>>2]=f;b=z[e+296>>2];c=v[e+292>>2];a=v[a+4>>2];v[a+16>>2]=v[e+288>>2];v[a+20>>2]=c;z[a+24>>2]=b;break c}f=v[c+36>>2];c=v[c+32>>2];a=v[a+4>>2];g=v[v[a>>2]+128>>2];h=v[e+140>>2];v[e+24>>2]=v[e+136>>2];v[e+28>>2]=h;h=v[e+132>>2];v[e+16>>2]=v[e+128>>2];v[e+20>>2]=h;h=v[e+68>>2];v[e>>2]=v[e+64>>2];v[e+4>>2]=h;h=v[e+76>>2];v[e+8>>2]=v[e+72>>2];v[e+12>>2]=h;Ba[g|0](a,d,e+16|0,e,c,f)}xa=e+352|0}function G_(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);j=xa+-64|0;xa=j;p=z[b>>2];r=z[b+4>>2];t=z[b+8>>2];h=z[e+16>>2];i=z[e+20>>2];m=z[e+8>>2];o=z[e>>2];w=z[e+4>>2];x=z[e+12>>2];s=z[a+8>>2];k=C(s-z[c+8>>2]);y=z[e+32>>2];A=z[a>>2];u=C(A-z[c>>2]);B=z[e+24>>2];D=z[a+4>>2];q=C(D-z[c+4>>2]);E=z[e+28>>2];l=C(C(k*y)+C(C(u*B)+C(q*E)));z[j+40>>2]=l;n=C(C(k*i)+C(C(u*x)+C(q*h)));z[j+36>>2]=n;k=C(C(k*m)+C(C(u*o)+C(q*w)));z[j+32>>2]=k;q=C(t-s);p=C(p-A);r=C(r-D);u=C(C(y*q)+C(C(B*p)+C(E*r)));z[j+24>>2]=u;x=C(C(q*i)+C(C(p*x)+C(r*h)));z[j+20>>2]=x;w=C(C(q*m)+C(C(p*o)+C(r*w)));z[j+16>>2]=w;a:{if(!(w>2]=h;k=C(-k);z[j+32>>2]=k}b:{if(!(x>2]=i;n=C(-n);z[j+36>>2]=n}c:{if(!(u>2]=m;l=C(-l);z[j+40>>2]=l}v[j+12>>2]=0;d:{if(h>C(0)){if(i>C(0)){if(m>C(0)){q=z[d>>2];p=z[d+4>>2];o=C(l-z[d+8>>2]);z[j+56>>2]=o;n=C(n-p);z[j+52>>2]=n;k=C(k-q);z[j+48>>2]=k;if(C(i*k)>=C(h*n)){if(C(m*k)>=C(h*o)){H_(0,1,2,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}H_(2,0,1,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}if(C(m*n)>=C(i*o)){H_(1,2,0,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}H_(2,0,1,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}o=z[d>>2];m=C(k-o);t=C(m*i);r=z[d+4>>2];q=C(n-r);s=C(q*h);e:{if(t>=s){z[j+32>>2]=o;p=C(0);q=C(n+r);k=C(t-C(h*q));if(k>=C(0)){z[j+36>>2]=-r;o=C(C(1)/C(C(h*h)+C(i*i)));p=C(C(C(k*k)*o)+C(0));z[j+12>>2]=p;m=C(C(h*m)+C(q*i));break e}o=C(C(1)/h);z[j+36>>2]=n-C(t*o);break e}z[j+36>>2]=r;p=C(0);n=C(k+o);m=C(s-C(i*n));if(m>=C(0)){z[j+32>>2]=-o;o=C(C(1)/C(C(h*h)+C(i*i)));p=C(C(C(m*m)*o)+C(0));z[j+12>>2]=p;m=C(C(h*n)+C(q*i));break e}o=C(C(1)/i);z[j+32>>2]=k-C(s*o);m=q}z[j+8>>2]=o*C(-m);h=z[d+8>>2];k=C(-h);f:{if(l>2]=k;z[j+12>>2]=h;break d}i=z[d>>2];if(m>C(0)){o=C(k-i);t=C(o*m);r=z[d+8>>2];q=C(l-r);s=C(q*h);g:{if(t>=s){z[j+32>>2]=i;p=C(0);k=C(l+r);i=C(t-C(h*k));if(i>=C(0)){z[j+40>>2]=-r;q=C(i*i);i=C(C(1)/C(C(h*h)+C(m*m)));p=C(C(q*i)+C(0));z[j+12>>2]=p;o=C(C(h*o)+C(k*m));break g}i=C(C(1)/h);z[j+40>>2]=l-C(t*i);break g}z[j+40>>2]=r;p=C(0);l=C(k+i);o=C(s-C(m*l));if(o>=C(0)){z[j+32>>2]=-i;i=C(C(1)/C(C(h*h)+C(m*m)));p=C(C(C(o*o)*i)+C(0));z[j+12>>2]=p;o=C(C(h*l)+C(q*m));break g}i=C(C(1)/m);z[j+32>>2]=k-C(s*i);o=q}z[j+8>>2]=i*C(-o);h=z[d+4>>2];k=C(-h);h:{if(n>2]=k;z[j+12>>2]=h;break d}z[j+32>>2]=i;z[j+8>>2]=C(i-k)/h;h=z[d+4>>2];i=C(-h);i:{j:{if(n>2]=i;z[j+12>>2]=k}i=z[d+8>>2];h=C(-i);k:{if(l>2]=h;z[j+12>>2]=l;break d}if(i>C(0)){h=z[d+4>>2];if(m>C(0)){o=C(n-h);t=C(o*m);r=z[d+8>>2];q=C(l-r);s=C(q*i);l:{if(t>=s){z[j+36>>2]=h;p=C(0);n=C(l+r);h=C(t-C(i*n));if(h>=C(0)){z[j+40>>2]=-r;q=C(h*h);h=C(C(1)/C(C(i*i)+C(m*m)));p=C(C(q*h)+C(0));z[j+12>>2]=p;o=C(C(i*o)+C(n*m));break l}h=C(C(1)/i);z[j+40>>2]=l-C(t*h);break l}z[j+40>>2]=r;p=C(0);l=C(n+h);o=C(s-C(m*l));if(o>=C(0)){z[j+36>>2]=-h;h=C(C(1)/C(C(i*i)+C(m*m)));p=C(C(C(o*o)*h)+C(0));z[j+12>>2]=p;o=C(C(i*l)+C(q*m));break l}h=C(C(1)/m);z[j+36>>2]=n-C(s*h);o=q}z[j+8>>2]=h*C(-o);h=z[d>>2];n=C(-h);m:{if(n>k){h=C(k+h);h=C(C(h*h)+p);break m}if(!(h>2]=n;z[j+12>>2]=h;break d}z[j+36>>2]=h;z[j+8>>2]=C(h-n)/i;h=z[d>>2];i=C(-h);n:{o:{if(k>2]=i;z[j+12>>2]=n}i=z[d+8>>2];h=C(-i);p:{if(l>2]=h;z[j+12>>2]=l;break d}if(m>C(0)){h=z[d+8>>2];z[j+40>>2]=h;z[j+8>>2]=C(h-l)/m;h=z[d>>2];i=C(-h);q:{r:{if(k>2]=i;z[j+12>>2]=l}i=z[d+4>>2];h=C(-i);s:{if(n>2]=h;z[j+12>>2]=l;break d}i=z[d>>2];m=C(-i);t:{u:{if(m>k){h=C(k+i);h=C(C(h*h)+C(0));break u}h=C(0);if(!(i>2]=m;z[j+12>>2]=h}k=z[d+4>>2];i=C(-k);v:{w:{if(n>2]=i;z[j+12>>2]=h}i=z[d+8>>2];k=C(-i);x:{y:{if(l>2]=k;z[j+12>>2]=l}v[j+8>>2]=0}if(w>2]=-z[j+32>>2]}if(x>2]=-z[j+36>>2]}h=z[j+8>>2];z:{if(h>=C(0)){if(h<=C(1)){if(f){z[f>>2]=h}i=z[j+12>>2];if(!g){break z}h=z[j+36>>2];k=z[j+32>>2];m=z[j+40>>2];z[g+8>>2]=u>2]=h;z[g>>2]=k;break z}if(f){v[f>>2]=1065353216}i=D_(b,c,d,e,g);break z}if(f){v[f>>2]=0}i=D_(a,c,d,e,g)}xa=j- -64|0;return i}function sB(a,b,c){var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=0,ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0),$a=C(0),ab=C(0),bb=C(0),cb=C(0),db=C(0),eb=C(0),fb=C(0),gb=C(0),hb=C(0),ib=C(0),jb=C(0),kb=C(0),lb=C(0);d=v[a+24>>2];if(d){m=v[a+4>>2];y=z[m+24>>2];A=z[m+20>>2];n=v[a>>2];B=z[n+24>>2];D=z[n+20>>2];E=z[m+16>>2];F=z[n+16>>2];G=z[m+8>>2];H=z[m+4>>2];I=z[m>>2];J=z[n+8>>2];K=z[n+4>>2];L=z[n>>2];sa=w[d+1|0];if(sa){U=z[d+120>>2];M=z[n+40>>2];V=z[d+112>>2];N=z[n+32>>2];O=z[n+36>>2];W=z[d+116>>2];X=z[d+168>>2];P=z[m+40>>2];Y=z[d+160>>2];Q=z[m+32>>2];R=z[m+36>>2];Z=z[d+164>>2];Aa=C(z[d+172>>2]+C(C(C(U*M)+C(C(V*N)+C(O*W)))-C(C(X*P)+C(C(Y*Q)+C(R*Z)))));_=z[d+104>>2];$=z[d+96>>2];aa=z[d+100>>2];ba=z[d+152>>2];ca=z[d+144>>2];da=z[d+148>>2];Ba=C(z[d+156>>2]+C(C(C(_*M)+C(C($*N)+C(O*aa)))-C(C(ba*P)+C(C(ca*Q)+C(R*da)))));ea=z[d+88>>2];fa=z[d+80>>2];ga=z[d+84>>2];ha=z[d+136>>2];ia=z[d+128>>2];ja=z[d+132>>2];Ca=C(z[d+140>>2]+C(C(C(ea*M)+C(C(fa*N)+C(O*ga)))-C(C(ha*P)+C(C(ia*Q)+C(R*ja)))));s=(v[a+16>>2]<<6)+b|0;e=z[s+12>>2];i=z[s+8>>2];k=z[d+56>>2];j=z[s>>2];h=z[d+48>>2];o=z[s+4>>2];g=z[d+52>>2];p=C(C(i*k)+C(C(j*h)+C(o*g)));q=C(C(e*e)+C(-.5));l=C(C(C(e*C(C(j*g)-C(h*o)))+C(q*k))+C(i*p));ka=C(l+l);Da=C(C(ka+z[m+56>>2])-k);l=C(C(o*p)+C(C(q*g)+C(e*C(C(i*h)-C(k*j)))));la=C(l+l);Ea=C(C(la+z[m+52>>2])-g);e=C(C(j*p)+C(C(q*h)+C(e*C(C(o*k)-C(g*i)))));ma=C(e+e);Fa=C(C(ma+z[m+48>>2])-h);a=(v[a+12>>2]<<6)+b|0;e=z[a+12>>2];i=z[a+8>>2];k=z[d+40>>2];j=z[a>>2];h=z[d+32>>2];o=z[a+4>>2];g=z[d+36>>2];p=C(C(i*k)+C(C(j*h)+C(o*g)));q=C(C(e*e)+C(-.5));l=C(C(C(e*C(C(j*g)-C(h*o)))+C(q*k))+C(i*p));na=C(l+l);Ga=C(C(na+z[n+56>>2])-k);l=C(C(o*p)+C(C(q*g)+C(e*C(C(i*h)-C(k*j)))));oa=C(l+l);Ha=C(C(oa+z[n+52>>2])-g);e=C(C(j*p)+C(C(q*h)+C(e*C(C(o*k)-C(g*i)))));pa=C(e+e);Ia=C(C(pa+z[n+48>>2])-h);Ja=z[d+124>>2];Ka=z[d+108>>2];La=z[d+92>>2];Ma=z[s+28>>2];Na=z[a+28>>2];Oa=z[s+60>>2];Pa=z[s+56>>2];Qa=z[s+52>>2];Ra=z[s+48>>2];Sa=z[s+44>>2];Ta=z[s+40>>2];Ua=z[s+36>>2];Va=z[s+32>>2];Wa=z[a+60>>2];Xa=z[a+56>>2];Ya=z[a+52>>2];Za=z[a+48>>2];_a=z[a+44>>2];$a=z[a+40>>2];ab=z[a+36>>2];bb=z[a+32>>2];S=z[d+68>>2];T=z[d+60>>2];ta=z[d+28>>2];ua=z[d+12>>2];a=d+176|0;cb=C(-la);db=C(-ma);eb=C(-ka);fb=C(-oa);gb=C(-pa);hb=C(-na);b=0;while(1){o=z[a+4>>2];p=z[a>>2];h=C(C(C(pa*o)+C(p*fb))+z[a+40>>2]);q=z[a+8>>2];g=C(C(C(oa*q)+C(o*hb))+z[a+32>>2]);i=C(C(C(na*p)+C(q*gb))+z[a+36>>2]);e=C(C(Wa*h)+C(C(ab*g)+C(Za*i)));k=C(C(Xa*h)+C(C(bb*g)+C(_a*i)));h=C(C(Ya*h)+C(C(Na*g)+C($a*i)));l=z[a+20>>2];u=z[a+16>>2];j=C(C(C(ma*l)+C(u*cb))+z[a+56>>2]);x=z[a+24>>2];f=C(C(C(la*x)+C(l*eb))+z[a+48>>2]);r=C(C(C(ka*u)+C(x*db))+z[a+52>>2]);g=C(C(Oa*j)+C(C(Ua*f)+C(Ra*r)));i=C(C(Pa*j)+C(C(Va*f)+C(Sa*r)));j=C(C(Qa*j)+C(C(Ma*f)+C(Ta*r)));qa=z[a+80>>2];d=v[a+84>>2];va=d&64?C(-34028234663852886e22):C(-qa);ra=z[a+12>>2];wa=z[a+68>>2];xa=z[a+72>>2];ib=z[a+44>>2];ya=z[a+76>>2];jb=z[a+60>>2];za=z[a+64>>2];kb=z[a+28>>2];lb=z[a+92>>2];if(d&16){f=C(La*C(C(C(ea*e)+C(ha*g))+C(C(C(fa*h)+C(ia*j))+C(C(ga*k)+C(ja*i)))));r=C(Ka*C(C(C(_*e)+C(ba*g))+C(C(C($*h)+C(ca*j))+C(C(aa*k)+C(da*i)))));t=C(Ja*C(C(C(U*e)+C(X*g))+C(C(C(V*h)+C(Y*j))+C(C(W*k)+C(Z*i)))));ra=C(ra-C(C(Ca*f)+C(C(Ba*r)+C(Aa*t))));g=C(g-C(C(ha*f)+C(C(ba*r)+C(X*t))));i=C(i-C(C(ja*f)+C(C(da*r)+C(Z*t))));j=C(j-C(C(ia*f)+C(C(ca*r)+C(Y*t))));k=C(k-C(C(ga*f)+C(C(aa*r)+C(W*t))));h=C(h-C(C(fa*f)+C(C($*r)+C(V*t))));e=C(e-C(C(ea*f)+C(C(_*r)+C(U*t))))}f=C(C(C(ta*C(C(x*x)+C(C(u*u)+C(l*l))))-C(C(C(j*C(S*j))+C(i*C(S*i)))+C(g*C(S*g))))+C(C(ua*C(C(q*q)+C(C(p*p)+C(o*o))))+C(C(C(h*C(T*h))+C(k*C(T*k)))+C(e*C(T*e)))));f=f>C(0)?C(C(1)/f):C(0);t=C(C(C(C(C(C(L*p)+C(F*h))-C(C(I*u)+C(E*j)))+C(C(C(K*o)+C(D*k))-C(C(H*l)+C(A*i))))+C(C(C(J*q)+C(B*e))-C(C(G*x)+C(y*g))))*C(ib*f));r=f;f=C(kb*C(C(C(C(C(C(Ga*q)+C(C(Ia*p)+C(Ha*o)))-C(C(Da*x)+C(C(Fa*u)+C(Ea*l))))+ra)+C(lb*C(C(C(e*M)+C(C(h*N)+C(O*k)))-C(C(g*P)+C(C(j*Q)+C(R*i))))))-C(za*c)));f=f>qa?qa:f;f=C(C(jb*ya)+C(t+C(r*C(za+(f>va?f:va)))));f=f>xa?xa:f;f=f>wa?f:wa;z[a+76>>2]=f;r=g;g=C(f-ya);f=C(S*g);y=C(y+C(r*f));A=C(A+C(i*f));E=C(E+C(j*f));f=e;e=C(T*g);B=C(B+C(f*e));D=C(D+C(k*e));F=C(F+C(h*e));e=C(ta*g);G=C(G-C(x*e));H=C(H-C(l*e));I=C(I-C(u*e));e=C(ua*g);J=C(J+C(q*e));K=C(K+C(o*e));L=C(L+C(p*e));a=a+96|0;b=b+1|0;if((sa|0)!=(b|0)){continue}break}}z[n+24>>2]=B;z[n+20>>2]=D;z[n+16>>2]=F;z[n+8>>2]=J;z[n+4>>2]=K;z[n>>2]=L;z[m+24>>2]=y;z[m+20>>2]=A;z[m+16>>2]=E;z[m+8>>2]=G;z[m+4>>2]=H;z[m>>2]=I}}function iV(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),w=C(0),x=0,y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0;q=xa+-64|0;xa=q;l=z[c+12>>2];V=C(D(l));a:{if(!(V>2];n=C(i+i);e=z[c+8>>2];o=C(n*e);t=z[c>>2];h=C(t+t);f=C(h*l);w=C(o-f);B=C(h*e);E=C(n*l);m=C(B+E);r=C(o+f);g=C(h*i);j=C(e+e);k=C(j*l);o=C(g-k);f=C(B-E);t=C(C(1)-C(t*h));n=C(i*n);h=C(t-n);e=C(e*j);i=C(t-e);n=C(C(C(1)-n)-e);e=C(g+k)}z[a+12>>2]=n;z[a+44>>2]=h;z[a+40>>2]=w;z[a+36>>2]=m;z[a+32>>2]=r;z[a+28>>2]=i;z[a+24>>2]=o;z[a+20>>2]=f;z[a+16>>2]=e;t=z[c+16>>2];z[a+48>>2]=t;B=z[c+20>>2];z[a+52>>2]=B;E=z[c+24>>2];z[a+56>>2]=E;b:{c:{switch(v[b>>2]){case 0:e=z[b+4>>2];d=C(C(C(e+d)+C(0))*C(1.0099999904632568));z[a+92>>2]=E+d;z[a+88>>2]=B+d;z[a+84>>2]=t+d;z[a+80>>2]=E-d;z[a+76>>2]=B-d;z[a+72>>2]=t-d;x=v[c+20>>2];X=v[c+16>>2];d=z[c+24>>2];z[a+112>>2]=e;z[a+108>>2]=d;v[a+100>>2]=X;v[a+104>>2]=x;break b;case 2:i=z[b+8>>2];h=z[b+4>>2];v[a+96>>2]=2143289344;d=C(h+d);m=C(C(C(i*C(D(f)))+d)*C(1.0099999904632568));z[a+92>>2]=E+m;e=C(C(C(i*C(D(e)))+d)*C(1.0099999904632568));z[a+88>>2]=B+e;d=C(C(C(i*C(D(n)))+d)*C(1.0099999904632568));z[a+84>>2]=t+d;z[a+80>>2]=E-m;z[a+76>>2]=B-e;z[a+72>>2]=t-d;o=z[c+16>>2];f=z[c+20>>2];d=z[c>>2];e=C(d+d);w=z[c+8>>2];r=z[c+4>>2];m=C(l+l);n=C(i*C(C(e*w)-C(r*m)));z[a+108>>2]=n+z[c+24>>2];k=f;f=C(i*C(C(w*m)+C(e*r)));z[a+104>>2]=k+f;d=C(i*C(C(d*e)+C(C(l*m)+C(-1))));z[a+100>>2]=o+d;e=z[c+16>>2];m=z[c+20>>2];o=z[c+24>>2];z[a+124>>2]=h;z[a+60>>2]=i;w=C(h*C(1.0099999904632568));z[a+8>>2]=w;z[a+4>>2]=w;z[a>>2]=C(h+i)*C(1.0099999904632568);z[a+120>>2]=o-n;z[a+116>>2]=m-f;z[a+112>>2]=e-d;break b;case 3:l=z[b+8>>2];g=z[b+4>>2];j=z[b+12>>2];z[a+68>>2]=j;z[a- -64>>2]=l;k=z[a+60>>2];z[a+60>>2]=g;p=k;k=C(o*g);s=k>C(0)?k:C(-k);k=C(m*l);s=C(s+(k>C(0)?k:C(-k)));k=C(t*j);z[a+96>>2]=p+C(C(C(s+(k>C(0)?k:C(-k)))+d)*C(1.0099999904632568));f=C(f*g);k=f>C(0)?f:C(-f);f=C(r*l);h=C(h*j);h=C(C(C(C(k+(f>C(0)?f:C(-f)))+(h>C(0)?h:C(-h)))+d)*C(1.0099999904632568));z[a+92>>2]=E+h;e=C(e*g);f=e>C(0)?e:C(-e);e=C(i*l);f=C(f+(e>C(0)?e:C(-e)));e=C(w*j);i=C(C(C(f+(e>C(0)?e:C(-e)))+d)*C(1.0099999904632568));z[a+88>>2]=B+i;e=C(n*g);f=e>C(0)?e:C(-e);e=C(o*l);f=C(f+(e>C(0)?e:C(-e)));e=C(m*j);d=C(C(C(f+(e>C(0)?e:C(-e)))+d)*C(1.0099999904632568));z[a+84>>2]=t+d;z[a+80>>2]=E-h;z[a+76>>2]=B-i;z[a+72>>2]=t-d;d=z[b+8>>2];e=z[b+4>>2];z[a+8>>2]=z[b+12>>2]*C(1.0099999904632568);z[a+4>>2]=d*C(1.0099999904632568);z[a>>2]=e*C(1.0099999904632568);break b;case 4:break c;default:break b}}l=z[b+12>>2];x=v[b+32>>2];k=z[b+4>>2];g=z[b+8>>2];d:{if(!(k!=C(1)|g!=C(1)|l!=C(1))){l=z[x+16>>2];g=z[x+20>>2];j=z[x+24>>2];k=C(C(C(l*f)+C(g*r))+C(j*h));A=C(C(C(l*e)+C(g*i))+C(j*w));l=C(C(C(l*n)+C(g*o))+C(j*m));g=z[x+36>>2];h=C(h*g);w=C(w*g);m=C(m*g);g=z[x+32>>2];r=C(r*g);i=C(i*g);g=C(o*g);j=z[x+28>>2];f=C(f*j);o=C(e*j);e=C(n*j);break d}I=z[b+16>>2];A=C(I+I);j=z[b+24>>2];H=C(A*j);p=z[b+20>>2];F=C(p+p);J=z[b+28>>2];L=C(F*J);s=C(H-L);K=C(l*s);M=C(p*F);N=C(j+j);O=C(j*N);y=C(C(C(1)-M)-O);S=C(k*y);P=C(A*p);G=C(N*J);p=C(P+G);N=C(g*p);T=z[x+16>>2];U=C(C(s*K)+C(C(y*S)+C(p*N)));Q=C(F*j);W=C(A*J);j=C(Q+W);J=C(l*j);F=C(P-G);P=C(k*F);G=C(C(1)-C(I*A));A=C(G-O);I=C(g*A);O=C(C(s*J)+C(C(y*P)+C(p*I)));R=s;s=l;l=C(G-M);s=C(s*l);G=y;y=k;k=C(H+L);y=C(y*k);H=p;p=g;g=C(Q-W);p=C(p*g);H=C(C(R*s)+C(C(G*y)+C(H*p)));Q=C(C(C(f*U)+C(O*r))+C(H*h));L=z[x+20>>2];M=C(C(j*K)+C(C(F*S)+C(A*N)));G=C(C(j*J)+C(C(F*P)+C(A*I)));j=C(C(j*s)+C(C(F*y)+C(A*p)));F=C(C(C(f*M)+C(G*r))+C(j*h));R=f;f=C(C(l*K)+C(C(k*S)+C(g*N)));K=C(C(l*J)+C(C(k*P)+C(g*I)));R=C(C(R*f)+C(K*r));r=C(C(l*s)+C(C(k*y)+C(g*p)));g=C(R+C(r*h));h=z[x+24>>2];k=C(C(C(T*Q)+C(L*F))+C(g*h));p=C(C(C(e*U)+C(i*O))+C(H*w));s=C(C(C(e*M)+C(i*G))+C(j*w));i=C(C(C(e*f)+C(i*K))+C(r*w));A=C(C(C(T*p)+C(s*L))+C(i*h));y=C(C(C(n*U)+C(o*O))+C(H*m));j=C(C(C(n*M)+C(o*G))+C(j*m));m=C(C(C(n*f)+C(o*K))+C(r*m));l=C(C(C(y*T)+C(j*L))+C(m*h));e=z[x+36>>2];h=C(g*e);w=C(i*e);m=C(m*e);e=z[x+32>>2];r=C(F*e);i=C(s*e);g=C(j*e);e=z[x+28>>2];f=C(Q*e);o=C(p*e);e=C(y*e)}v[a+96>>2]=2143289344;n=C(E+k);h=C(C(C(C(C(D(f))+C(D(r)))+C(D(h)))+d)*C(1.0099999904632568));z[a+92>>2]=n+h;f=C(B+A);i=C(C(C(C(C(D(o))+C(D(i)))+C(D(w)))+d)*C(1.0099999904632568));z[a+88>>2]=f+i;o=C(t+l);d=C(C(C(C(C(D(e))+C(D(g)))+C(D(m)))+d)*C(1.0099999904632568));z[a+84>>2]=o+d;z[a+80>>2]=n-h;z[a+76>>2]=f-i;z[a+72>>2]=o-d;t_(q,b,x,c);z[a+12>>2]=z[q>>2];z[a+16>>2]=z[q+4>>2];z[a+20>>2]=z[q+8>>2];z[a+24>>2]=z[q+12>>2];z[a+28>>2]=z[q+16>>2];z[a+32>>2]=z[q+20>>2];z[a+36>>2]=z[q+24>>2];z[a+40>>2]=z[q+28>>2];z[a+44>>2]=z[q+32>>2];d=z[q+52>>2];e=z[q+48>>2];z[a+8>>2]=z[q+56>>2]*C(1.0099999904632568);z[a+4>>2]=d*C(1.0099999904632568);z[a>>2]=e*C(1.0099999904632568);z[a+48>>2]=z[q+36>>2];z[a+52>>2]=z[q+40>>2];z[a+56>>2]=z[q+44>>2]}u[a+96>>1]=V>1]=v[b>>2];xa=q- -64|0;return a}function P$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0);f=xa-208|0;xa=f;X=z[d+8>>2];a:{b:{aa=z[d>>2];Y=z[d+4>>2];if(aa!=C(1)|Y!=C(1)){break b}q=C(1);if(X!=C(1)){break b}y=z[c+20>>2];r=z[c+24>>2];D=z[a+40>>2];o=z[a+44>>2];s=z[a+16>>2];k=z[a+20>>2];l=z[a+28>>2];p=z[a+32>>2];X=z[a+52>>2];Y=z[a+8>>2];M=z[a>>2];U=z[a+4>>2];O=z[a+48>>2];K=z[c+16>>2];E=z[a+36>>2];h=z[a+12>>2];g=z[c+8>>2];i=z[c+4>>2];A=z[a+24>>2];m=z[c>>2];j=z[c+12>>2];R=z[a+56>>2];z[f+160>>2]=R;z[f+156>>2]=X;G=C(-m);A=C(A+A);H=C(l+l);p=C(p+p);F=C(C(C(G*A)-C(H*i))-C(g*p));l=C(C(j*j)+C(-.5));I=C(C(C(p*l)+C(j*C(C(i*A)-C(m*H))))-C(g*F));z[f+136>>2]=I;B=C(C(C(H*l)+C(j*C(C(m*p)-C(g*A))))-C(i*F));z[f+132>>2]=B;h=C(h+h);x=C(s+s);n=C(k+k);J=C(C(C(G*h)-C(x*i))-C(g*n));s=C(C(C(n*l)+C(j*C(C(i*h)-C(m*x))))-C(g*J));z[f+124>>2]=s;k=C(C(C(x*l)+C(j*C(C(m*n)-C(g*h))))-C(i*J));z[f+120>>2]=k;E=C(E+E);D=C(D+D);o=C(o+o);L=C(C(C(G*E)-C(D*i))-C(g*o));r=C(r*C(-2));K=C(K*C(-2));y=C(y*C(-2));T=C(C(g*r)+C(C(m*K)+C(i*y)));N=C(C(C(g*T)+C(C(r*l)-C(j*C(C(m*y)-C(K*i)))))+C(C(C(o*l)+C(j*C(C(i*E)-C(m*D))))-C(g*L)));z[f+148>>2]=N;S=C(C(C(i*T)+C(C(y*l)-C(j*C(C(g*K)-C(r*m)))))+C(C(C(D*l)+C(j*C(C(m*o)-C(g*E))))-C(i*L)));z[f+144>>2]=S;z[f+152>>2]=O;A=C(C(C(A*l)+C(j*C(C(g*H)-C(i*p))))-C(m*F));z[f+128>>2]=A;F=C(C(C(h*l)+C(j*C(C(g*x)-C(i*n))))-C(m*J));z[f+116>>2]=F;p=C(M+M);h=C(U+U);x=C(Y+Y);n=C(C(C(G*p)-C(h*i))-C(g*x));G=C(C(C(x*l)+C(j*C(C(i*p)-C(m*h))))-C(g*n));z[f+112>>2]=G;H=C(C(C(h*l)+C(j*C(C(m*x)-C(g*p))))-C(i*n));z[f+108>>2]=H;p=C(C(C(p*l)+C(j*C(C(g*h)-C(i*x))))-C(m*n));z[f+104>>2]=p;i=C(C(C(m*T)+C(C(K*l)-C(j*C(C(i*r)-C(y*g)))))+C(C(C(E*l)+C(j*C(C(g*D)-C(i*o))))-C(m*L)));z[f+140>>2]=i;m=C(0);j=C(0);l=C(0);h=C(1);x=C(0);g=C(0);n=C(0);J=C(1);E=C(C(F*B)-C(A*k));D=C(C(k*I)-C(B*s));o=C(I*F);L=C(C(G*E)+C(C(p*D)+C(H*C(C(s*A)-o))));if(L!=C(0)){g=C(C(1)/L);J=C(C(C(p*k)+C(H*C(-F)))*g);h=C(C(C(p*I)-C(A*G))*g);j=C(C(C(H*s)-C(k*G))*g);q=C(D*g);n=C(g*C(-C(C(p*B)-C(A*H))));x=C(g*C(-C(C(p*s)-C(F*G))));l=C(g*C(-C(o+C(A*C(-s)))));m=C(g*C(-C(C(H*I)-C(G*B))));g=C(E*g)}z[f+200>>2]=J;z[f+196>>2]=n;z[f+188>>2]=x;z[f+184>>2]=h;z[f+192>>2]=g;z[f+180>>2]=l;z[f+168>>2]=q;z[f+172>>2]=m;z[f+176>>2]=j;z[f+76>>2]=R;z[f+72>>2]=X;s=C(-S);z[f+92>>2]=-C(C(C(x*s)-C(i*j))-C(N*J));z[f+88>>2]=-C(C(C(h*s)-C(i*m))-C(N*n));u[f+16>>1]=0;v[f+12>>2]=e;v[f+4>>2]=2;v[f>>2]=143596;z[f+68>>2]=O;z[f+84>>2]=-C(C(C(l*s)-C(i*q))-C(N*g));v[f+8>>2]=f+168;H$(f+104|0,1,b,f,1);break a}ba=f+104|0;r_(ba,a,c,d);g=z[d+20>>2];F=z[d+24>>2];B=z[d+16>>2];i=z[a+16>>2];m=z[a+20>>2];q=z[a+40>>2];h=z[a+44>>2];x=z[c+20>>2];j=z[a+28>>2];n=z[c+24>>2];l=z[a+32>>2];k=z[c+4>>2];J=z[c+12>>2];E=z[c>>2];s=z[c+8>>2];D=z[d+8>>2];o=z[d+4>>2];L=z[d>>2];r=z[d+12>>2];A=z[a+8>>2];G=z[a>>2];H=z[a+4>>2];p=z[a+12>>2];y=z[a+36>>2];K=z[c+16>>2];I=z[a+24>>2];v[f+92>>2]=0;y=C(-y);z[f- -64>>2]=C(C(C(I*y)-C(j*q))-C(l*h))+C(C(C(I*K)+C(j*x))+C(l*n));z[f+60>>2]=C(C(C(p*y)-C(i*q))-C(m*h))+C(C(C(p*K)+C(i*x))+C(m*n));z[f+56>>2]=C(C(C(G*y)-C(H*q))-C(A*h))+C(C(C(G*K)+C(H*x))+C(A*n));q=C(r+r);V=C(g*q);y=C(B+B);P=C(F*y);h=C(V+P);x=C(L*h);Z=C(y*g);_=C(q*F);n=C(Z-_);K=C(n*o);$=C(C(1)-C(r*q));R=C(B*y);r=C($-R);y=C(r*D);N=C(E+E);ca=C(s*N);M=C(k+k);da=C(J*M);U=C(ca+da);O=C(C(C(h*x)+C(n*K))+C(r*y));ea=C(k*M);W=C(s+s);fa=C(s*W);T=C(C(C(1)-ea)-fa);S=C(g+g);ga=C(g*S);g=C(C(C(1)-R)-ga);R=C(L*g);q=C(q*B);Q=C(S*F);B=C(q+Q);S=C(o*B);F=C(V-P);V=C(D*F);P=C(C(C(h*R)+C(n*S))+C(r*V));ha=C(N*k);ia=C(W*J);W=C(ha-ia);k=C(q-Q);L=C(L*k);Q=n;q=C($-ga);n=C(o*q);Q=C(C(h*L)+C(Q*n));h=C(Z+_);D=C(D*h);o=C(Q+C(r*D));r=C(C(U*O)+C(C(T*P)+C(W*o)));Z=C(M*s);_=C(N*J);s=C(Z-_);J=C(ha+ia);M=C(C(1)-C(E*N));E=C(M-fa);N=C(C(s*O)+C(C(J*P)+C(E*o)));M=C(M-ea);Q=C(M*O);O=C(ca-da);$=C(O*P);P=C(Z+_);o=C(Q+C($+C(P*o)));z[f+52>>2]=C(C(I*r)+C(j*N))+C(l*o);z[f+48>>2]=C(m*o)+C(C(p*r)+C(i*N));z[f+44>>2]=C(A*o)+C(C(G*r)+C(H*N));o=C(C(C(k*x)+C(q*K))+C(h*y));r=C(C(C(k*R)+C(q*S))+C(h*V));k=C(C(C(k*L)+C(q*n))+C(h*D));q=C(C(U*o)+C(C(T*r)+C(W*k)));h=C(C(s*o)+C(C(J*r)+C(E*k)));k=C(C(M*o)+C(C(O*r)+C(P*k)));z[f+40>>2]=C(C(I*q)+C(j*h))+C(l*k);z[f+36>>2]=C(m*k)+C(C(p*q)+C(i*h));z[f+32>>2]=C(A*k)+C(C(G*q)+C(H*h));Q=I;I=C(C(C(g*x)+C(B*K))+C(F*y));k=C(C(C(g*R)+C(B*S))+C(F*V));g=C(C(C(g*L)+C(B*n))+C(F*D));B=C(C(U*I)+C(C(T*k)+C(W*g)));n=j;j=C(C(s*I)+C(C(J*k)+C(E*g)));g=C(C(M*I)+C(C(O*k)+C(P*g)));z[f+28>>2]=C(C(Q*B)+C(n*j))+C(l*g);z[f+24>>2]=C(g*m)+C(C(p*B)+C(i*j));t[f+17|0]=C(C(aa*Y)*X)>2]=e;v[f+4>>2]=2;v[f+84>>2]=0;v[f+88>>2]=0;v[f>>2]=143628;z[f+20>>2]=C(A*g)+C(C(G*B)+C(H*j));v[f+8>>2]=f+168;c=v[a+52>>2];d=v[a+48>>2];z[f+76>>2]=z[a+56>>2];v[f+68>>2]=d;v[f+72>>2]=c;H$(ba,1,b,f,1)}xa=f+208|0;return w[f+16|0]!=0|0}function GD(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,u=0,x=0,z=0,A=0,C=0,D=0,E=0,F=0;l=xa-32|0;xa=l;a:{if(!c){break a}t[a+337|0]=1;i=a+52|0;x=a+312|0;u=a+284|0;while(1){h=v[(s<<2)+b>>2];d=v[a+300>>2]+(h<<2)|0;e=v[a+296>>2]+(v[d>>2]<<3)|0;o=v[e+4>>2];v[l+24>>2]=v[e>>2];v[l+28>>2]=o;n=v[d>>2];o=iC(u,h);b:{if(!w[a+336|0]){break b}d=v[a+4>>2];if(!d){break b}t[a+338|0]=1;c:{d:{if(n>>>0>=y[a+316>>2]){h=v[a+296>>2]+(n<<3)|0;d=v[h+4>>2];v[l+16>>2]=v[h>>2];v[l+20>>2]=d;break d}h=v[v[a+312>>2]+(n<<2)>>2];e=v[a+296>>2]+(n<<3)|0;f=v[e+4>>2];v[l+16>>2]=v[e>>2];v[l+20>>2]=f;if((h|0)==-1){break d}SB(d,h);rD(i,n,l+16|0,o,1);break c}r=l+16|0;h=o;m=xa-32|0;xa=m;v[m+24>>2]=0;v[m+16>>2]=0;v[m+20>>2]=0;v[m+8>>2]=0;v[m+12>>2]=0;e:{f:{g:{if(!v[i+164>>2]){break g}k=v[i+140>>2];j=v[l+24>>2];e=j;d=0;q=d^-1;g=(e|d)+q|0;p=v[l+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=Saa(f^((d&255)<<24|f>>>8),d^d>>>8,9,0);f=Aa;d=f>>>15|0;e=e^((f&32767)<<17|e>>>15);d=d^f;g=k;k=e<<27^-1;f=k+e|0;e=((d<<27|e>>>5)^-1)+d|0;d=f;e=d>>>0>>0?e+1|0:e;e=g+((v[i+148>>2]-1&(d^((e&2147483647)<<1|d>>>31)))<<2)|0;d=v[e>>2];if((d|0)==-1){break g}k=v[i+136>>2];g=v[i+132>>2];f=g+B(d,20)|0;if((j|0)==v[f>>2]&(p|0)==v[f+4>>2]){break f}while(1){e=(d<<2)+k|0;d=v[e>>2];if((d|0)==-1){break g}f=g+B(d,20)|0;if((j|0)!=v[f>>2]|(p|0)!=v[f+4>>2]){continue}break}break f}g=0;break e}j=v[f+4>>2];v[m+8>>2]=v[f>>2];v[m+12>>2]=j;d=g+B(d,20)|0;f=v[d+12>>2];v[m+16>>2]=v[d+8>>2];v[m+20>>2]=f;v[m+24>>2]=v[d+16>>2];j=v[e>>2];f=j<<2;v[e>>2]=v[f+v[i+136>>2]>>2];e=v[i+164>>2]-1|0;v[i+164>>2]=e;v[i+160>>2]=v[i+160>>2]+1;if((e|0)!=(j|0)){g=v[i+132>>2];k=B(j,20);d=g+k|0;e=g+B(e,20)|0;g=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=g;g=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=g;v[d+16>>2]=v[e+16>>2];p=v[i+136>>2];v[p+f>>2]=v[p+(v[i+164>>2]<<2)>>2];q=v[i+140>>2];e=k+v[i+132>>2]|0;d=v[e+4>>2];e=v[e>>2];k=-1;g=e+k|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;k=e<<13^-1;f=e+k|0;e=(d^-1)+g|0;e=f>>>0>>0?e+1|0:e;d=Saa(f^((e&255)<<24|f>>>8),e^e>>>8,9,0);f=Aa;e=f>>>15|0;d=d^((f&32767)<<17|d>>>15);e=e^f;k=d<<27^-1;f=k+d|0;d=((e<<27|d>>>5)^-1)+e|0;e=f;d=e>>>0>>0?d+1|0:d;e=((v[i+148>>2]-1&(e^((d&2147483647)<<1|e>>>31)))<<2)+q|0;d=v[e>>2];f=v[i+164>>2];if((d|0)!=(f|0)){while(1){e=p+(d<<2)|0;d=v[e>>2];if((f|0)!=(d|0)){continue}break}}v[e>>2]=j}v[i+156>>2]=v[i+156>>2]-1;g=1}h:{if(!g){rD(i,n,r,h,0);d=xa-32|0;xa=d;v[d+20>>2]=h;v[d+24>>2]=n;v[d+8>>2]=0;v[d+12>>2]=0;e=i+4|0;g=cD((B(v[e+4>>2],48)+e|0)+16|0,d+24|0,d+8|0);f=v[e>>2];g=g?v[e+4>>2]:f;i:{if((f|0)==(g|0)){if(!cD((e+B(f,48)|0)+16|0,d+24|0,d+8|0)){break i}}f=e+B(g,48)|0;v[l+8>>2]=v[f+8>>2];f=SC(v[f+12>>2],v[d+12>>2],v[d+24>>2],v[v[e+104>>2]+8>>2]);j:{if(!f|v[f+40>>2]){break j}j=v[f+36>>2];if(!v[j>>2]){break j}r=(e+B(g,48)|0)+16|0;h=0;while(1){v[d>>2]=v[((h<<2)+j|0)+4>>2];g=bD(r,d,d+31|0);if(!w[d+31|0]){v[g>>2]=v[d>>2]}v[g+4>>2]=f;h=h+1|0;j=v[f+36>>2];if(h>>>0>2]){continue}break}h=v[d+20>>2]}if(v[d+24>>2]==(h|0)){break i}v[d>>2]=0;v[d+4>>2]=0;h=cD((e+B(v[e>>2],48)|0)+16|0,d+20|0,d);f=v[e+4>>2];h=h?v[e>>2]:f;if((f|0)==(h|0)){if(!cD((e+B(f,48)|0)+16|0,d+20|0,d)){break i}}g=v[d+4>>2];f=bD((e+B(h,48)|0)+16|0,d+24|0,d+31|0);if(!w[d+31|0]){j=v[d+24>>2];v[f+4>>2]=0;v[f>>2]=j}v[f+4>>2]=g;TC(v[d+4>>2],v[d+20>>2],v[d+24>>2])}xa=d+32|0;break h}SB(v[v[i+200>>2]+(v[m+24>>2]<<3)>>2],v[m+20>>2]);e=v[i+168>>2];d=v[m+24>>2];if(d>>>0>2]){g=v[v[i+172>>2]+(d<<2)>>2]}else{g=-1}SB(e,g);d=v[v[i+200>>2]+(v[m+24>>2]<<3)>>2];p=v[d+8>>2]+B(v[m+20>>2],28)|0;e=v[p+24>>2];f=e>>>1&15;k:{if(!f){break k}g=v[d>>2]+(e>>>3&536870908)|0;d=0;while(1){j=g+(d<<2)|0;if((n|0)==v[j>>2]){k=e&-31;e=f-1|0;v[p+24>>2]=k|e<<1;v[j>>2]=-1;if((d|0)==(e|0)){break k}d=g+(e<<2)|0;v[j>>2]=v[d>>2];v[d>>2]=-1;break k}d=d+1|0;if((f|0)!=(d|0)){continue}break}}rD(i,n,r,h,1);t[i+212|0]=1}xa=m+32|0}lD(x,n,o,v[a+4>>2]);if(!v[a+32>>2]){break b}v[l+12>>2]=o;v[l+8>>2]=n;h=v[a+344>>2];if(h>>>0>=(v[a+348>>2]&2147483647)>>>0){h=0;d=v[a+348>>2];o=d&2147483647?d<<1:1;l:{if(!o){break l}d=o<<3;if(!d){break l}h=v[37696];e=h+12|0;h=(A=e,C=d,D=Ba[v[v[h>>2]+20>>2]](h)|0?35195:63804,E=16608,F=553,z=v[v[e>>2]+8>>2],Ba[z](A|0,C|0,D|0,E|0,F|0)|0)}d=v[a+344>>2];if((d|0)>0){f=(d<<3)+h|0;e=v[a+340>>2];d=h;while(1){g=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=g;e=e+8|0;d=d+8|0;if(f>>>0>d>>>0){continue}break}d=v[a+344>>2]}e=v[l+12>>2];d=(d<<3)+h|0;v[d>>2]=v[l+8>>2];v[d+4>>2]=e;m:{if(v[a+348>>2]<0){break m}d=v[a+340>>2];if(!d){break m}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}v[a+348>>2]=o;v[a+340>>2]=h;v[a+344>>2]=v[a+344>>2]+1;break b}d=v[l+12>>2];h=v[a+340>>2]+(h<<3)|0;v[h>>2]=v[l+8>>2];v[h+4>>2]=d;v[a+344>>2]=v[a+344>>2]+1}s=s+1|0;if((s|0)!=(c|0)){continue}break}if(v[u>>2]){break a}BD(a);t[a+337|0]=1}xa=l+32|0}function py(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=0,p=0,q=0,r=C(0),s=0,t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=0,X=C(0),Y=C(0),Z=C(0),_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=C(0);o=xa-832|0;xa=o;a:{if(!e){break a}while(1){F=B(q,80)+b|0;s=0;b:{if(!q){break b}W=x[F+78>>1];n=q;while(1){G=n-1|0;V=v[(G<<2)+a>>2];if(W>>>0>=x[V+78>>1]){s=n;break b}v[(n<<2)+a>>2]=V;n=G;if(n){continue}break}}v[(s<<2)+a>>2]=F;q=q+1|0;if((q|0)!=(e|0)){continue}break}if(!e){break a}n=0;if((e|0)!=1){s=e&-2;F=0;while(1){r=C(0);t=C(0);q=B(n,80)+b|0;if(w[q+76|0]&8){t=z[q+12>>2]}z[q+72>>2]=t;q=B(n|1,80)+b|0;if(w[q+76|0]&8){r=z[q+12>>2]}z[q+72>>2]=r;n=n+2|0;F=F+2|0;if((s|0)!=(F|0)){continue}break}}if(!(e&1)){break a}r=C(0);b=B(n,80)+b|0;if(w[b+76|0]&8){r=z[b+12>>2]}z[b+72>>2]=r}if(e){H=z[g+32>>2];I=z[g+28>>2];J=z[g+20>>2];K=z[g+16>>2];L=z[f+32>>2];D=z[f+28>>2];M=z[f+20>>2];N=z[f+16>>2];O=z[g+24>>2];P=z[g+12>>2];Q=z[g+8>>2];R=z[g+4>>2];S=z[g>>2];T=z[f+24>>2];U=z[f+12>>2];X=z[f+8>>2];Y=z[f+4>>2];Z=z[f>>2];f=0;while(1){b=v[(f<<2)+a>>2];r=z[b+56>>2];t=z[b+52>>2];u=z[b+48>>2];y=z[b+24>>2];A=z[b+20>>2];E=z[b+16>>2];g=f<<4;b=g+c|0;v[b+12>>2]=0;z[b+8>>2]=C(L*y)+C(C(X*E)+C(M*A));z[b+4>>2]=C(D*y)+C(C(Y*E)+C(N*A));z[b>>2]=C(T*y)+C(C(Z*E)+C(U*A));b=d+g|0;v[b+12>>2]=0;z[b+8>>2]=C(H*r)+C(C(Q*u)+C(J*t));z[b+4>>2]=C(I*r)+C(C(R*u)+C(K*t));z[b>>2]=C(O*r)+C(C(S*u)+C(P*t));f=f+1|0;if((f|0)!=(e|0)){continue}break}}c:{if(k){break c}z[o>>2]=z[j>>2]*h;z[o+16>>2]=z[j+8>>2]*i;z[o+32>>2]=z[j+4>>2];z[o+48>>2]=z[j+12>>2];if(!e){break c}f=0;while(1){b=f;g=b+1|0;k=e>>>0>g>>>0?e:g;j=k-1|0;_=(b<<2)+a|0;W=w[v[_>>2]+79|0];while(1){d:{g=f;if((j|0)==(g|0)){g=j;f=k;break d}f=g+1|0;if((W|0)==w[v[(f<<2)+a>>2]+79|0]){continue}}break}e:{f:{switch(W-1|0){case 7:if(!m){break e}case 3:n=b;g:{if(n>>>0>g>>>0){break g}j=g+1|0;while(1){if(w[v[(n<<2)+a>>2]+78|0]){break g}k=(g|0)!=(n|0);n=n+1|0;if(k){continue}break}n=j}if((b|0)!=(f|0)){V=n-b|0;ga=f-b|0;j=b<<4;da=j+d|0;ea=c+j|0;q=0;while(1){k=q<<4;s=k+da|0;T=z[s+12>>2];E=z[s+8>>2];H=z[s+4>>2];I=z[s>>2];G=k+ea|0;U=z[G+12>>2];J=z[G+8>>2];K=z[G+4>>2];L=z[G>>2];$=(q<<2)+_|0;j=v[$>>2];D=z[j+48>>2];t=z[j+32>>2];M=z[j+28>>2];N=z[j+16>>2];O=z[j+12>>2];i=z[j+8>>2];r=z[j+4>>2];u=z[j>>2];P=z[j+56>>2];Q=z[j+52>>2];y=z[j+40>>2];A=z[j+36>>2];R=z[j+24>>2];S=z[j+20>>2];F=0;fa=q>>>0>V>>>0?V:q;if(fa){while(1){n=F<<4;p=n+(o+736|0)|0;aa=n+(o+352|0)|0;ba=n+(o+640|0)|0;ca=n+(o+256|0)|0;h=C(C(C(C(C(t*z[p>>2])+C(u*z[aa>>2]))+C(C(I*z[ba>>2])+C(L*z[ca>>2])))+C(C(C(A*z[p+4>>2])+C(r*z[aa+4>>2]))+C(C(H*z[ba+4>>2])+C(K*z[ca+4>>2]))))+C(C(C(y*z[p+8>>2])+C(i*z[aa+8>>2]))+C(C(E*z[ba+8>>2])+C(J*z[ca+8>>2]))));p=n+da|0;T=C(T-C(h*z[p+12>>2]));E=C(E-C(h*z[p+8>>2]));H=C(H-C(h*z[p+4>>2]));I=C(I-C(h*z[p>>2]));p=n+ea|0;U=C(U-C(h*z[p+12>>2]));J=C(J-C(h*z[p+8>>2]));K=C(K-C(h*z[p+4>>2]));L=C(L-C(h*z[p>>2]));p=n+(o+448|0)|0;P=C(P-C(h*z[p+8>>2]));Q=C(Q-C(h*z[p+4>>2]));D=C(D-C(h*z[p>>2]));p=n+(o+544|0)|0;y=C(y-C(h*z[p+8>>2]));A=C(A-C(h*z[p+4>>2]));t=C(t-C(h*z[p>>2]));p=n+(o- -64|0)|0;M=C(M-C(h*z[p+12>>2]));R=C(R-C(h*z[p+8>>2]));S=C(S-C(h*z[p+4>>2]));N=C(N-C(h*z[p>>2]));n=n+(o+160|0)|0;O=C(O-C(z[n+12>>2]*h));i=C(i-C(z[n+8>>2]*h));r=C(r-C(z[n+4>>2]*h));u=C(u-C(z[n>>2]*h));F=F+1|0;if((fa|0)!=(F|0)){continue}break}}z[j+12>>2]=O;z[j+8>>2]=i;z[j+4>>2]=r;z[j>>2]=u;j=v[$>>2];z[j+28>>2]=M;z[j+16>>2]=N;z[j+24>>2]=R;z[j+20>>2]=S;j=v[$>>2];z[j+48>>2]=D;z[j+32>>2]=t;z[j+56>>2]=P;z[j+52>>2]=Q;z[j+40>>2]=y;z[j+36>>2]=A;z[G+12>>2]=U;z[G+8>>2]=J;z[G+4>>2]=K;z[G>>2]=L;z[s+12>>2]=T;z[s+8>>2]=E;z[s+4>>2]=H;z[s>>2]=I;if(q>>>0>>0){j=k+(o+160|0)|0;z[j+12>>2]=O;z[j+8>>2]=i;z[j+4>>2]=r;z[j>>2]=u;j=k+(o- -64|0)|0;z[j+12>>2]=M;z[j+8>>2]=R;z[j+4>>2]=S;z[j>>2]=N;j=k+(o+544|0)|0;v[j+12>>2]=0;z[j+8>>2]=y;z[j+4>>2]=A;z[j>>2]=t;j=k+(o+448|0)|0;v[j+12>>2]=0;z[j+8>>2]=P;z[j+4>>2]=Q;z[j>>2]=D;h=z[o>>2];D=z[o+16>>2];M=z[o+32>>2];N=z[o+48>>2];j=k+(o+736|0)|0;v[j+12>>2]=0;n=k+(o+640|0)|0;v[n+12>>2]=0;s=k+(o+352|0)|0;ha=i;i=C(i*h);O=y;y=C(y*D);P=J;J=C(J*M);Q=E;E=C(E*N);R=u;u=C(u*h);S=t;t=C(t*D);T=L;L=C(L*M);U=I;I=C(I*N);X=r;r=C(r*h);Y=A;A=C(A*D);Z=K;K=C(K*M);h=H;H=C(H*N);h=C(C(C(C(ha*i)+C(O*y))+C(C(P*J)+C(Q*E)))+C(C(C(C(R*u)+C(S*t))+C(C(T*L)+C(U*I)))+C(C(C(X*r)+C(Y*A))+C(C(Z*K)+C(h*H)))));h=h>C(0)?C(C(1)/h):C(0);D=C(h*C(0));z[s+12>>2]=D;z[s+8>>2]=i*h;z[s+4>>2]=r*h;z[s>>2]=u*h;k=k+(o+256|0)|0;z[k>>2]=L*h;z[k+4>>2]=K*h;z[k+8>>2]=J*h;z[k+12>>2]=D;z[j>>2]=t*h;z[j+4>>2]=A*h;z[j+8>>2]=y*h;z[n>>2]=I*h;z[n+4>>2]=H*h;z[n+8>>2]=E*h}q=q+1|0;if((ga|0)!=(q|0)){continue}break}}if((W|0)!=1){break e}break;case 0:break f;default:break e}}if(!l){break e}n=b;h:{if(n>>>0>g>>>0){break h}j=g+1|0;while(1){if(w[v[(n<<2)+a>>2]+78|0]==2){break h}k=(g|0)!=(n|0);n=n+1|0;if(k){continue}break}n=j}if((n+2|0)==(g|0)){g=n<<4;qy((n<<2)+a|0,g+c|0,d+g|0,o)}b=b<<4;qy(_,b+c|0,b+d|0,o)}if(e>>>0>f>>>0){continue}break}}xa=o+832|0} +function DZ(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0);h=xa-304|0;xa=h;i=z[d>>2];n=v[a+2188>>2];j=z[d+4>>2];m=z[d+8>>2];k=z[e+8>>2];q=C(C(z[a+2176>>2]-C(C(C(C(i*z[n+8>>2])+C(j*z[n+20>>2]))+C(m*z[n+32>>2]))+z[n+44>>2]))*k);l=z[e>>2];A=C(C(z[a+2168>>2]-C(C(C(C(i*z[n>>2])+C(j*z[n+12>>2]))+C(m*z[n+24>>2]))+z[n+36>>2]))*l);P=C(z[a+2172>>2]-C(C(C(C(i*z[n+4>>2])+C(j*z[n+16>>2]))+C(m*z[n+28>>2]))+z[n+40>>2]));i=z[e+4>>2];if(C(q+C(A+C(P*i)))>2]=k;i=C(-i);z[e+4>>2]=i;l=C(-l);z[e>>2]=l}n=v[a+2192>>2];I=v[a+2180>>2];O=v[I+68>>2];d=v[a+2184>>2];j=z[d+20>>2];m=z[d+16>>2];o=z[d+32>>2];p=z[d+28>>2];r=z[d+12>>2];G=z[d+24>>2];l=C(-l);z[h+192>>2]=C(C(z[d>>2]*l)-C(z[d+4>>2]*i))-C(z[d+8>>2]*k);z[h+200>>2]=C(C(G*l)-C(p*i))-C(o*k);z[h+196>>2]=C(C(r*l)-C(m*i))-C(j*k);I=Ba[O|0](I,n,h+192|0)|0;O=v[a+2180>>2];W=v[O+24>>2];d=W+B(I,20)|0;Q=w[a+2205|0];a:{if(Q){k=z[d>>2];i=z[d+4>>2];l=z[d+8>>2];z[h+300>>2]=z[d+12>>2];z[h+296>>2]=l;z[h+292>>2]=i;break a}n=v[a+2192>>2];k=z[d+8>>2];i=z[d>>2];l=z[d+4>>2];j=C(C(z[n+68>>2]*k)+C(C(z[n+60>>2]*i)+C(l*z[n- -64>>2])));m=C(C(z[n+44>>2]*k)+C(C(z[n+36>>2]*i)+C(z[n+40>>2]*l)));i=C(C(z[n+56>>2]*k)+C(C(z[n+48>>2]*i)+C(l*z[n+52>>2])));k=C(C(1)/C(K(C(C(j*j)+C(C(m*m)+C(i*i))))));z[h+300>>2]=z[d+12>>2]*k;l=C(j*k);z[h+296>>2]=l;i=C(i*k);z[h+292>>2]=i;k=C(m*k)}z[h+288>>2]=k;d=v[a+2184>>2];j=z[d+28>>2];m=z[d+16>>2];o=z[d+4>>2];p=z[d+24>>2];r=z[d>>2];G=z[d+12>>2];X=C(C(C(k*z[d+8>>2])+C(i*z[d+20>>2]))+C(l*z[d+32>>2]));z[h+280>>2]=X;Y=C(C(C(k*r)+C(i*G))+C(l*p));z[h+272>>2]=Y;Z=C(C(C(k*o)+C(i*m))+C(l*j));z[h+276>>2]=Z;R=z[e+8>>2];S=z[e+4>>2];T=z[e>>2];e=v[a+2188>>2];j=z[e+28>>2];m=z[e+16>>2];o=z[e+24>>2];p=z[e>>2];r=z[e+12>>2];G=z[e+4>>2];k=z[b>>2];i=z[b+4>>2];l=z[b+8>>2];_=C(C(C(k*z[e+8>>2])+C(i*z[e+20>>2]))+C(l*z[e+32>>2]));z[h+264>>2]=_;$=C(C(C(k*G)+C(i*m))+C(l*j));z[h+260>>2]=$;aa=C(C(C(k*p)+C(i*r))+C(l*o));z[h+256>>2]=aa;G=C((f<=C(0)?C(-f):C(0))+z[a+2208>>2]);j=C(T*G);z[h+240>>2]=j;m=C(S*G);z[h+244>>2]=m;o=C(R*G);z[h+248>>2]=o;z[h+192>>2]=z[d>>2];z[h+196>>2]=z[d+4>>2];z[h+200>>2]=z[d+8>>2];z[h+204>>2]=z[d+12>>2];z[h+208>>2]=z[d+16>>2];z[h+212>>2]=z[d+20>>2];z[h+216>>2]=z[d+24>>2];z[h+220>>2]=z[d+28>>2];z[h+224>>2]=z[d+32>>2];p=z[d+40>>2];e=v[a+2212>>2];k=z[e+8>>2];i=z[e+4>>2];f=z[e+12>>2];l=z[e>>2];r=z[d+36>>2];J=C(z[d+44>>2]-o);z[h+236>>2]=J;L=C(p-m);z[h+232>>2]=L;U=C(r-j);z[h+228>>2]=U;d=v[a+2216>>2];ba=z[d+20>>2];ca=z[d+24>>2];da=z[d+16>>2];m=z[d+4>>2];ea=C(l*m);j=z[d+12>>2];fa=C(k*j);o=z[d+8>>2];ga=C(f*o);p=z[d>>2];ha=C(i*p);E=C(ea+C(C(fa-ga)-ha));ia=C(k*p);ja=C(j*i);ka=C(f*m);la=C(o*l);H=C(ia+C(C(ja-ka)-la));M=C(H+H);s=C(E*M);r=C(C(o*k)+C(C(m*i)+C(C(j*f)+C(l*p))));ma=C(i*o);na=C(j*l);oa=C(f*p);pa=C(m*k);A=C(ma+C(C(na-oa)-pa));F=C(A+A);y=C(r*F);z[h+172>>2]=s-y;z[h+164>>2]=s+y;s=C(U-da);s=C(s+s);y=C(L-ba);y=C(y+y);q=C(J-ca);q=C(q+q);N=C(C(C(C(-p)*s)-C(y*m))-C(o*q));V=C(C(j*j)+C(-.5));z[h+188>>2]=C(C(q*V)+C(j*C(C(m*s)-C(p*y))))-C(o*N);z[h+184>>2]=C(C(y*V)+C(j*C(C(p*q)-C(o*s))))-C(m*N);A=C(C(1)-C(A*F));qa=C(H*M);z[h+176>>2]=A-qa;P=A;A=C(E+E);ra=C(E*A);z[h+160>>2]=P-ra;E=C(E*F);M=C(r*M);z[h+168>>2]=E+M;H=C(H*F);F=C(r*A);z[h+156>>2]=H-F;z[h+152>>2]=E-M;z[h+148>>2]=H+F;z[h+180>>2]=C(C(s*V)+C(j*C(C(o*y)-C(m*q))))-C(p*N);z[h+144>>2]=C(C(1)-qa)-ra;j=C(da-U);o=C(j+j);j=C(ba-L);p=C(j+j);j=C(ca-J);E=C(j+j);H=C(C(C(C(-l)*o)-C(p*i))-C(k*E));y=C(C(f*f)+C(-.5));z[h+140>>2]=C(C(E*y)+C(f*C(C(i*o)-C(l*p))))-C(k*H);z[h+136>>2]=C(C(p*y)+C(f*C(C(l*E)-C(k*o))))-C(i*H);m=C(pa+C(C(oa-na)-ma));j=C(m+m);F=C(la+C(C(ka-ja)-ia));s=C(F+F);q=C(C(1)-C(m*j));N=C(F*s);z[h+128>>2]=q-N;m=C(ha+C(C(ga-fa)-ea));J=C(m*s);L=C(r*j);z[h+124>>2]=J-L;z[h+116>>2]=J+L;A=q;q=C(m+m);J=C(m*q);z[h+112>>2]=A-J;z[h+132>>2]=C(C(o*y)+C(f*C(C(k*p)-C(i*E))))-C(l*H);f=C(m*j);k=C(r*s);z[h+120>>2]=f+k;i=C(F*j);l=C(r*q);z[h+108>>2]=i-l;z[h+104>>2]=f-k;z[h+100>>2]=i+l;z[h+96>>2]=C(C(1)-N)-J;e=B(I,20)+W|0;n=w[e+18|0];d=0;I=0;if(!Q){d=h-(B(n,12)+15&8176)|0;xa=d;I=d-(n+15&496)|0;xa=I}WZ(h+92|0,h+88|0,d,I,(Q|0)!=0,v[O+28>>2],v[O+32>>2]+x[e+16>>1]|0,n,v[a+2192>>2]);t[h+86|0]=w[100866];u[h+84>>1]=w[100864]|w[100865]<<8;IZ(h+48|0,h+288|0);IZ(h+8|0,b);b:{c:{if(C(D(C(C(X*R)+C(C(Y*T)+C(Z*S)))))>C(D(C(C(_*R)+C(C(aa*T)+C(S*$)))))){d=1;if(!JZ(w[e+18|0],v[h+92>>2],v[h+88>>2],h+192|0,h+288|0,h+48|0,3,c,h+84|0,v[a+2188>>2],b,h+8|0,h+272|0,h+144|0,h+96|0,g,v[a+2220>>2],1,h+240|0,G)){break c}break b}d=1;if(JZ(3,c,h+84|0,v[a+2188>>2],b,h+8|0,w[e+18|0],v[h+92>>2],v[h+88>>2],h+192|0,h+288|0,h+48|0,h+256|0,h+96|0,h+144|0,g,v[a+2220>>2],0,h+240|0,G)){break b}}d=0}xa=h+304|0;return d}function TX(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=0,E=C(0),F=0,G=C(0),H=0,I=C(0),J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0;j=xa-672|0;xa=j;F=v[c+32>>2];m=v[a+32>>2];v[j+664>>2]=0;v[j+668>>2]=0;v[j+656>>2]=0;v[j+660>>2]=0;v[j+640>>2]=0;D=v[a+12>>2];H=v[a+8>>2];I=z[a+4>>2];v[j+636>>2]=0;v[j+628>>2]=H;v[j+632>>2]=D;z[j+624>>2]=I;D=v[a+16>>2];H=v[a+20>>2];M=v[a+28>>2];v[j+616>>2]=v[a+24>>2];v[j+620>>2]=M;v[j+608>>2]=D;v[j+612>>2]=H;q=z[c+12>>2];D=v[c+8>>2];H=v[c+4>>2];v[j+604>>2]=0;z[j+600>>2]=q;v[j+592>>2]=H;v[j+596>>2]=D;D=v[c+16>>2];H=v[c+20>>2];M=v[c+28>>2];v[j+584>>2]=v[c+24>>2];v[j+588>>2]=M;v[j+576>>2]=D;v[j+580>>2]=H;R=z[d+20>>2];N=z[b+20>>2];S=z[d+24>>2];O=z[b+24>>2];k=z[b+8>>2];l=z[b>>2];r=z[b+4>>2];y=z[b+12>>2];T=z[d+16>>2];P=z[b+16>>2];q=z[d+8>>2];o=z[d>>2];E=z[e+4>>2];s=z[d+4>>2];p=z[e>>2];A=z[d+12>>2];n=z[e+8>>2];v[j+572>>2]=0;n=C(n*f);p=C(p*f);J=C(E*f);L=C(C(q*n)+C(C(o*p)+C(s*J)));E=C(C(A*A)+C(-.5));G=C(C(C(E*n)-C(A*C(C(o*J)-C(s*p))))+C(q*L));z[j+568>>2]=G+G;G=C(C(s*L)+C(C(E*J)-C(A*C(C(q*p)-C(n*o)))));z[j+564>>2]=G+G;n=C(C(o*L)+C(C(E*p)-C(A*C(C(s*n)-C(J*q)))));z[j+560>>2]=n+n;v[j+556>>2]=0;J=C(-o);L=C(P-T);N=C(N-R);O=C(O-S);P=C(C(C(J*L)-C(N*s))-C(q*O));n=C(C(C(A*C(C(s*L)-C(o*N)))+C(E*O))-C(q*P));z[j+552>>2]=n+n;n=C(C(C(E*N)+C(A*C(C(o*O)-C(q*L))))-C(s*P));z[j+548>>2]=n+n;v[j+540>>2]=0;p=C(C(C(r*q)-C(s*k))+C(C(l*A)-C(y*o)));n=C(p+p);G=C(C(C(k*o)-C(q*l))+C(C(r*A)-C(y*s)));Q=C(G+G);U=C(C(1)-C(p*n));V=C(G*Q);z[j+536>>2]=U-V;p=C(C(C(l*s)-C(o*r))+C(C(k*A)-C(y*q)));W=C(p*Q);k=C(C(y*A)-C(C(C(J*l)-C(r*s))-C(q*k)));l=C(k*n);z[j+532>>2]=W-l;v[j+524>>2]=0;z[j+520>>2]=W+l;l=C(p+p);r=C(p*l);z[j+516>>2]=U-r;y=C(C(C(E*L)+C(A*C(C(q*N)-C(s*O))))-C(o*P));z[j+544>>2]=y+y;y=C(p*n);p=C(k*Q);z[j+528>>2]=y+p;n=C(G*n);k=C(k*l);z[j+512>>2]=n-k;v[j+508>>2]=0;z[j+504>>2]=y-p;z[j+500>>2]=n+k;z[j+496>>2]=C(C(1)-V)-r;H=m+16|0;D=0;a:{if(I!=C(1)){break a}D=0;if(z[a+8>>2]!=C(1)){break a}D=z[a+12>>2]==C(1)}M=F+16|0;t[j+368|0]=0;v[j+360>>2]=0;v[j+364>>2]=0;v[j+352>>2]=0;v[j+356>>2]=0;v[j+344>>2]=0;v[j+348>>2]=0;v[j+336>>2]=0;v[j+340>>2]=0;v[j+480>>2]=H;v[j+488>>2]=v[m+56>>2]+B(w[m+55|0],20);t[j+492|0]=w[m+54|0];k=C(I*z[m+68>>2]);l=C(z[m+72>>2]*z[j+628>>2]);k=k<=l?k:l;l=C(z[m+76>>2]*z[j+632>>2]);k=k<=l?k:l;z[j+360>>2]=k*C(.02500000037252903);z[j+352>>2]=k*C(.10000000149011612);z[j+356>>2]=k*C(.05000000074505806);GV(j+624|0,j+608|0,j+384|0,j+432|0,j+336|0,D);v[j+484>>2]=v[m+60>>2];X=z[c+4>>2]!=C(1)|z[c+8>>2]!=C(1)?X:z[c+12>>2]==C(1);t[j+208|0]=0;v[j+204>>2]=0;c=v[j+660>>2];v[j+176>>2]=v[j+656>>2];v[j+180>>2]=c;c=v[j+668>>2];v[j+184>>2]=v[j+664>>2];v[j+188>>2]=c;v[j+320>>2]=M;v[j+328>>2]=v[F+56>>2]+B(w[F+55|0],20);t[j+332|0]=w[F+54|0];k=C(z[F+68>>2]*z[j+592>>2]);l=C(z[F+72>>2]*z[j+596>>2]);k=k<=l?k:l;l=C(z[F+76>>2]*z[j+600>>2]);k=k<=l?k:l;z[j+200>>2]=k*C(.02500000037252903);z[j+196>>2]=k*C(.05000000074505806);z[j+192>>2]=k*C(.10000000149011612);c=j+176|0;GV(j+592|0,j+576|0,j+224|0,j+272|0,c,X);v[j+324>>2]=v[F+60>>2];F=x[h>>1];m=v[j+516>>2];v[j+80>>2]=v[j+512>>2];v[j+84>>2]=m;m=v[j+508>>2];v[j+72>>2]=v[j+504>>2];v[j+76>>2]=m;m=v[j+524>>2];v[j+88>>2]=v[j+520>>2];v[j+92>>2]=m;m=v[j+532>>2];v[j+96>>2]=v[j+528>>2];v[j+100>>2]=m;m=v[j+540>>2];v[j+104>>2]=v[j+536>>2];v[j+108>>2]=m;m=v[j+548>>2];v[j+112>>2]=v[j+544>>2];v[j+116>>2]=m;m=v[j+556>>2];v[j+120>>2]=v[j+552>>2];v[j+124>>2]=m;m=v[j+500>>2];v[j+64>>2]=v[j+496>>2];v[j+68>>2]=m;k=z[j+68>>2];z[j+68>>2]=z[j+80>>2];v[j+48>>2]=141516;v[j+56>>2]=j+496;v[j+52>>2]=j+336;l=z[j+72>>2];r=z[j+88>>2];z[j+80>>2]=k;z[j+72>>2]=z[j+96>>2];z[j+88>>2]=z[j+100>>2];z[j+100>>2]=r;z[j+96>>2]=l;v[j+40>>2]=141216;v[j+44>>2]=c;c=F&512;F=UX(j+48|0,j+40|0,j+544|0,j+656|0,j+560|0,j+160|0,j+128|0,j+144|0,i,c>>>9|0);b:{if(!F){break b}m=v[d>>2];D=v[d+4>>2];M=v[d+12>>2];v[j+8>>2]=v[d+8>>2];v[j+12>>2]=M;v[j>>2]=m;v[j+4>>2]=D;m=v[d+16>>2];D=v[d+20>>2];i=z[d+24>>2];v[j+28>>2]=0;z[j+24>>2]=i;v[j+16>>2]=m;v[j+20>>2]=D;if(GX(g,e,j+160|0,j+128|0,j+144|0,j,(c|0)!=0,0)){break b}u[g+12>>1]=x[g+12>>1]|1;i=z[j+132>>2];k=z[j+128>>2];l=z[j+136>>2];r=z[j+152>>2];y=z[j+144>>2];n=z[j+148>>2];z[g+40>>2]=z[j+160>>2]*f;p=C(-s);f=C(C(q*r)+C(C(o*y)+C(s*n)));I=C(C(C(A*C(C(o*n)+C(y*p)))+C(E*r))+C(q*f));z[g+24>>2]=S+C(I+I);I=C(C(s*f)+C(C(E*n)+C(A*C(C(q*y)+C(r*J)))));z[g+20>>2]=R+C(I+I);G=C(E*y);y=C(-q);f=C(C(o*f)+C(G+C(A*C(C(s*r)+C(n*y)))));z[g+16>>2]=T+C(f+f);f=C(C(q*l)+C(C(o*k)+C(s*i)));r=C(C(C(A*C(C(o*i)+C(k*p)))+C(E*l))+C(q*f));r=C(r+r);o=C(C(o*f)+C(C(E*k)+C(A*C(C(s*l)+C(i*y)))));o=C(o+o);f=C(C(s*f)+C(C(E*i)+C(A*C(C(q*k)+C(l*J)))));f=C(f+f);i=C(C(1)/C(K(C(C(r*r)+C(C(o*o)+C(f*f))))));z[g+36>>2]=i*C(-r);z[g+32>>2]=i*C(-f);z[g+28>>2]=i*C(-o);HX(g,x[h>>1],a,H,b,e)}xa=j+672|0;return F|0}function Ld(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=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,w=0,y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=0;i=xa+-64|0;xa=i;z[i+32>>2]=z[d>>2];z[i+36>>2]=z[d+4>>2];z[i+40>>2]=z[d+8>>2];z[i+44>>2]=z[d+12>>2];z[i+48>>2]=z[c>>2];z[i+52>>2]=z[c+4>>2];z[i+56>>2]=z[c+8>>2];z[i>>2]=z[g>>2];z[i+4>>2]=z[g+4>>2];z[i+8>>2]=z[g+8>>2];z[i+12>>2]=z[g+12>>2];z[i+16>>2]=z[f>>2];z[i+20>>2]=z[f+4>>2];z[i+24>>2]=z[f+8>>2];c=v[37696];d=Ba[v[v[c>>2]+20>>2]](c)|0?28507:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,88,d,6908,49)|0;g=Ba[v[v[a>>2]+20>>2]](a)|0;r=xa-16|0;xa=r;u[r+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[r+8>>1];u[c+4>>1]=261;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=145824;v[c>>2]=145556;v[c+8>>2]=0;d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,480,24422,17141,454)|0;h=z[i+44>>2];l=z[i+40>>2];m=z[i+32>>2];j=z[i+36>>2];s=v[i+52>>2];w=v[i+48>>2];z[c+44>>2]=z[i+56>>2];v[c+36>>2]=w;v[c+40>>2]=s;k=j;j=C(C(1)/C(K(C(C(h*h)+C(C(l*l)+C(C(m*m)+C(j*j)))))));z[c+24>>2]=k*j;z[c+28>>2]=l*j;z[c+32>>2]=h*j;z[c+20>>2]=m*j;h=z[i+12>>2];l=z[i+8>>2];m=z[i>>2];j=z[i+4>>2];s=v[i+20>>2];w=v[i+16>>2];z[c+72>>2]=z[i+24>>2];F=c- -64|0;v[F>>2]=w;v[F+4>>2]=s;k=j;j=C(C(1)/C(K(C(C(h*h)+C(C(l*l)+C(C(m*m)+C(j*j)))))));z[c+52>>2]=k*j;z[c+56>>2]=l*j;z[c+60>>2]=h*j;z[c+48>>2]=m*j;Z4(f,b);q=z[i+52>>2];y=z[i+56>>2];A=z[i+48>>2];B=z[f+20>>2];D=z[f+24>>2];E=z[f+16>>2];l=z[f+8>>2];k=z[i+40>>2];m=z[f+4>>2];n=z[i+36>>2];h=z[f+12>>2];o=z[i+44>>2];j=z[f>>2];p=z[i+32>>2];z[d+28>>2]=C(l*k)+C(C(m*n)+C(C(h*o)+C(j*p)));z[d+24>>2]=C(p*m)+C(C(C(h*k)-C(o*l))-C(j*n));z[d+20>>2]=C(k*j)+C(C(C(h*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(h*p)-C(o*j))-C(m*k));k=C(A-E);k=C(k+k);n=C(q-B);n=C(n+n);o=C(y-D);o=C(o+o);p=C(C(C(C(-j)*k)-C(n*m))-C(l*o));q=C(C(h*h)+C(-.5));z[d+40>>2]=C(C(o*q)+C(h*C(C(m*k)-C(j*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(h*C(C(j*o)-C(l*k))))-C(m*p);z[d+32>>2]=C(C(k*q)+C(h*C(C(l*n)-C(m*o))))-C(j*p);Z4(f,e);q=z[i+20>>2];y=z[i+24>>2];A=z[i+16>>2];B=z[f+20>>2];D=z[f+24>>2];E=z[f+16>>2];l=z[f+8>>2];k=z[i+8>>2];m=z[f+4>>2];n=z[i+4>>2];h=z[f+12>>2];o=z[i+12>>2];j=z[f>>2];p=z[i>>2];z[d+56>>2]=C(l*k)+C(C(m*n)+C(C(h*o)+C(j*p)));z[d+52>>2]=C(p*m)+C(C(C(h*k)-C(o*l))-C(j*n));z[d+48>>2]=C(k*j)+C(C(C(h*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(h*p)-C(o*j))-C(m*k));k=C(A-E);k=C(k+k);n=C(q-B);n=C(n+n);o=C(y-D);o=C(o+o);p=C(C(C(C(-j)*k)-C(n*m))-C(l*o));q=C(C(h*h)+C(-.5));z[d+68>>2]=C(C(o*q)+C(h*C(C(m*k)-C(j*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(h*C(C(j*o)-C(l*k))))-C(m*p);z[d+60>>2]=C(C(k*q)+C(h*C(C(l*n)-C(m*o))))-C(j*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;t[c+84|0]=1;v[c+12>>2]=145428;v[c>>2]=145152;d=v[c+80>>2];v[d+212>>2]=0;v[d+216>>2]=1056964608;v[d+96>>2]=0;v[d+100>>2]=0;v[d+88>>2]=0;v[d+92>>2]=0;v[d+80>>2]=0;v[d+84>>2]=0;v[d+300>>2]=1070141403;v[d+292>>2]=1070141403;v[d+296>>2]=-1077342245;v[d+284>>2]=0;v[d+288>>2]=-1077342245;v[d+276>>2]=0;v[d+280>>2]=0;v[d+272>>2]=1056964608;v[d+264>>2]=1070141403;v[d+268>>2]=0;v[d+256>>2]=1036831949;v[d+260>>2]=1070141403;v[d+248>>2]=0;v[d+252>>2]=0;v[d+244>>2]=1056964608;v[d+236>>2]=-1077342245;v[d+240>>2]=0;v[d+228>>2]=1036831949;v[d+232>>2]=1070141403;v[d+220>>2]=0;v[d+224>>2]=0;h=z[g>>2];v[d+112>>2]=0;v[d+116>>2]=0;v[d+104>>2]=0;v[d+108>>2]=0;v[d+124>>2]=2139095039;z[d+120>>2]=h*C(.009999999776482582);h=z[g>>2];v[d+148>>2]=2125114026;v[d+152>>2]=-22369622;v[d+136>>2]=0;v[d+140>>2]=0;v[d+128>>2]=0;z[d+132>>2]=h+h;z[d+464>>2]=h*C(9.999999974752427e-7);h=C(h*C(.009999999776482582));z[d+144>>2]=h>2];v[d+176>>2]=2125114026;v[d+180>>2]=-22369622;v[d+164>>2]=0;v[d+168>>2]=0;v[d+156>>2]=0;z[d+160>>2]=h+h;h=C(h*C(.009999999776482582));z[d+172>>2]=h>2];v[d+392>>2]=2139095039;v[d+384>>2]=0;v[d+388>>2]=0;v[d+376>>2]=2139095039;v[d+380>>2]=0;v[d+368>>2]=0;v[d+372>>2]=0;v[d+360>>2]=2139095039;v[d+364>>2]=0;v[d+352>>2]=0;v[d+356>>2]=0;v[d+344>>2]=2139095039;v[d+348>>2]=0;v[d+336>>2]=0;v[d+340>>2]=0;v[d+328>>2]=2139095039;v[d+332>>2]=0;v[d+320>>2]=0;v[d+324>>2]=0;v[d+312>>2]=2139095039;v[d+316>>2]=0;v[d+304>>2]=0;v[d+308>>2]=0;v[d+204>>2]=2125114026;v[d+208>>2]=-22369622;v[d+192>>2]=0;v[d+196>>2]=0;v[d+184>>2]=0;z[d+188>>2]=h+h;h=C(h*C(.009999999776482582));z[d+200>>2]=h>2]=0;v[d+408>>2]=0;v[d+396>>2]=0;v[d+400>>2]=0;v[d+412>>2]=1065353216;v[d+416>>2]=0;v[d+420>>2]=0;v[d+424>>2]=0;v[d+428>>2]=0;v[d+432>>2]=0;v[d+436>>2]=0;v[d+440>>2]=0;v[d+444>>2]=0;v[d+448>>2]=0;v[d+476>>2]=0;v[d+468>>2]=1343554297;v[d+472>>2]=1078530011;xa=r+16|0;a=Ba[v[v[a>>2]+108>>2]](a,b,e,c+12|0,145472,480)|0;v[c+76>>2]=a;if(!a){Ba[v[v[c>>2]+16>>2]](c);c=0}xa=i- -64|0;return c|0}function y2(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=0,j=C(0),k=0,l=C(0),m=0,n=0,o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=0,A=0,B=C(0),D=C(0),E=C(0);f=xa-48|0;m=f;xa=f;f=f-(d+15&-16)|0;xa=f;y=J9(f,0,d);g=C(-34028234663852886e22);k=-1;f=e;while(1){d=v[f+48>>2];n=v[f+52>>2];a:{if(d>>>0>=n>>>0){break a}i=d+1|0;if(n-d&1){p=(d<<6)+c|0;h=z[p+24>>2];l=C(h*h);h=z[p+16>>2];r=C(h*h);h=z[p+20>>2];h=C(l+C(r+C(h*h)));p=h>g;g=p?h:g;k=p?d:k;d=i}if((i|0)==(n|0)){break a}while(1){i=(d<<6)+c|0;h=z[i+24>>2];l=C(h*h);h=z[i+16>>2];r=C(h*h);h=z[i+20>>2];h=C(l+C(r+C(h*h)));i=h>g;A=d+1|0;p=(A<<6)+c|0;o=z[p+24>>2];l=C(o*o);o=z[p+16>>2];r=C(o*o);o=z[p+20>>2];o=C(l+C(r+C(o*o)));g=i?h:g;p=o>g;g=p?o:g;k=p?A:i?d:k;d=d+2|0;if((n|0)!=(d|0)){continue}break}}f=v[f+16>>2];if(f){continue}break}t[k+y|0]=1;d=(k<<6)+c|0;h=z[d+24>>2];o=z[d+20>>2];B=z[d+16>>2];v[b+48>>2]=v[d+48>>2];f=v[d+44>>2];v[b+40>>2]=v[d+40>>2];v[b+44>>2]=f;f=v[d+36>>2];v[b+32>>2]=v[d+32>>2];v[b+36>>2]=f;f=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=f;f=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=f;f=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=f;f=v[d+4>>2];v[b>>2]=v[d>>2];v[b+4>>2]=f;k=v[e+48>>2];f=(k<<6)+c|0;g=C(z[f+24>>2]-h);l=C(g*g);g=C(z[f+16>>2]-B);r=C(g*g);g=C(z[f+20>>2]-o);g=C(l+C(r+C(g*g)));s=z[d+44>>2];i=e;while(1){d=v[i+48>>2];n=v[i+52>>2];if(d>>>0>>0){while(1){f=(d<<6)+c|0;j=C(z[f+24>>2]-h);l=C(j*j);j=C(z[f+16>>2]-B);r=C(j*j);j=C(z[f+20>>2]-o);j=C(l+C(r+C(j*j)));f=j>g;g=f?j:g;k=f?d:k;d=d+1|0;if((n|0)!=(d|0)){continue}break}}i=v[i+16>>2];if(i){continue}break}t[k+y|0]=1;d=(k<<6)+c|0;g=z[d+16>>2];l=z[d+20>>2];x=z[d+24>>2];v[b+112>>2]=v[d+48>>2];f=v[d+44>>2];v[b+104>>2]=v[d+40>>2];v[b+108>>2]=f;f=v[d+36>>2];v[b+96>>2]=v[d+32>>2];v[b+100>>2]=f;f=v[d+28>>2];v[b+88>>2]=v[d+24>>2];v[b+92>>2]=f;f=v[d+20>>2];v[b+80>>2]=v[d+16>>2];v[b+84>>2]=f;f=v[d+12>>2];v[b+72>>2]=v[d+8>>2];v[b+76>>2]=f;f=v[d+4>>2];v[b+64>>2]=v[d>>2];v[b+68>>2]=f;u=C(g-B);g=z[b+36>>2];j=z[b+32>>2];q=C(l-o);l=C(C(u*g)-C(j*q));r=l;E=C(l*l);l=z[b+40>>2];D=C(q*l);q=C(x-h);x=C(D-C(g*q));u=C(C(q*j)-C(l*u));D=C(E+C(C(x*x)+C(u*u)));q=C(C(1)/C(K(D)));f=D>C(0);l=f?C(r*q):l;u=f?C(u*q):g;x=f?C(x*q):j;g=z[d+44>>2];q=g>2];p=v[f+52>>2];if(d>>>0

>>0){while(1){if(!w[d+y|0]){n=(d<<6)+c|0;j=C(C(C(z[n+24>>2]-h)*l)+C(C(C(z[n+16>>2]-B)*x)+C(u*C(z[n+20>>2]-o))));n=js;s=A?j:s;k=n?d:k;i=A?d:i}d=d+1|0;if((p|0)!=(d|0)){continue}break}}f=v[f+16>>2];if(f){continue}break}t[i+y|0]=1;d=(i<<6)+c|0;f=v[d+4>>2];v[b+128>>2]=v[d>>2];v[b+132>>2]=f;v[b+176>>2]=v[d+48>>2];f=v[d+44>>2];v[b+168>>2]=v[d+40>>2];v[b+172>>2]=f;f=v[d+36>>2];v[b+160>>2]=v[d+32>>2];v[b+164>>2]=f;f=v[d+28>>2];v[b+152>>2]=v[d+24>>2];v[b+156>>2]=f;f=v[d+20>>2];v[b+144>>2]=v[d+16>>2];v[b+148>>2]=f;f=v[d+12>>2];v[b+136>>2]=v[d+8>>2];v[b+140>>2]=f;j=z[d+44>>2];j=j>2]=j;if(C(g*s)>C(0)){g=C(-34028234663852886e22);i=e;while(1){d=v[i+48>>2];n=v[i+52>>2];if(d>>>0>>0){while(1){if(!w[d+y|0]){f=(d<<6)+c|0;s=C(C(C(z[f+24>>2]-h)*l)+C(C(C(z[f+16>>2]-B)*x)+C(u*C(z[f+20>>2]-o))));f=s>g;g=f?s:g;k=f?d:k}d=d+1|0;if((n|0)!=(d|0)){continue}break}}i=v[i+16>>2];if(i){continue}break}}t[k+y|0]=1;d=(k<<6)+c|0;f=v[d+4>>2];v[b+192>>2]=v[d>>2];v[b+196>>2]=f;v[b+240>>2]=v[d+48>>2];f=v[d+44>>2];v[b+232>>2]=v[d+40>>2];v[b+236>>2]=f;f=v[d+36>>2];v[b+224>>2]=v[d+32>>2];v[b+228>>2]=f;f=v[d+28>>2];v[b+216>>2]=v[d+24>>2];v[b+220>>2]=f;f=v[d+20>>2];v[b+208>>2]=v[d+16>>2];v[b+212>>2]=f;f=v[d+12>>2];v[b+200>>2]=v[d+8>>2];v[b+204>>2]=f;g=z[d+44>>2];v[m+32>>2]=2139095039;v[m+16>>2]=2139095039;v[m+8>>2]=0;v[m+12>>2]=0;i=m+32|0;while(1){d=v[e+48>>2];n=v[e+52>>2];if(d>>>0>>0){while(1){b:{if(w[d+y|0]){break b}h=z[((d<<6)+c|0)+44>>2];c:{if(h>2]){v[m+12>>2]=v[m+8>>2];f=v[m+28>>2];v[i+8>>2]=v[m+24>>2];v[i+12>>2]=f;f=v[m+20>>2];v[i>>2]=v[m+16>>2];v[i+4>>2]=f;k=0;f=m+16|0;break c}k=1;f=i;if(!(h>2])){break b}}z[f>>2]=h;v[(m+8|k<<2)>>2]=d}d=d+1|0;if(n>>>0>d>>>0){continue}break}}e=v[e+16>>2];if(e){continue}break}d=(v[m+8>>2]<<6)+c|0;e=v[d+4>>2];v[b+256>>2]=v[d>>2];v[b+260>>2]=e;v[b+304>>2]=v[d+48>>2];e=v[d+44>>2];v[b+296>>2]=v[d+40>>2];v[b+300>>2]=e;e=v[d+36>>2];v[b+288>>2]=v[d+32>>2];v[b+292>>2]=e;e=v[d+28>>2];v[b+280>>2]=v[d+24>>2];v[b+284>>2]=e;e=v[d+20>>2];v[b+272>>2]=v[d+16>>2];v[b+276>>2]=e;e=v[d+12>>2];v[b+264>>2]=v[d+8>>2];v[b+268>>2]=e;h=z[m+16>>2];c=(v[m+12>>2]<<6)+c|0;d=v[c+4>>2];v[b+320>>2]=v[c>>2];v[b+324>>2]=d;d=v[c+20>>2];v[b+336>>2]=v[c+16>>2];v[b+340>>2]=d;d=v[c+36>>2];v[b+352>>2]=v[c+32>>2];v[b+356>>2]=d;v[b+368>>2]=v[c+48>>2];d=v[c+44>>2];v[b+360>>2]=v[c+40>>2];v[b+364>>2]=d;d=v[c+28>>2];v[b+344>>2]=v[c+24>>2];v[b+348>>2]=d;d=v[c+12>>2];v[b+328>>2]=v[c+8>>2];v[b+332>>2]=d;o=z[m+32>>2];g=gh?h:g;z[a>>2]=g>o?o:g;xa=m+48|0}function WU(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,x=0;q=xa-5120|0;xa=q;if(!(!b|(c|0)<=0)){f=v[a+4>>2]&2147483647;if((f|0)!=(c|0)){if(c>>>0>f>>>0){VU(a,c)}v[a+4>>2]=c|-2147483648}v[a+20>>2]=q;v[a+16>>2]=q+1024;l=c;a:{if(!b|(c|0)<=0){break a}v[a+24>>2]=v[a+24>>2]+1;J9(v[a+16>>2],0,4096);m=l<<2;j=m+b|0;g=v[a+16>>2];h=g+3072|0;n=g+2048|0;o=g+1024|0;c=v[a+4>>2];b:{c:{d:{if((d|0)==1){e:{if((c|0)<0){if(m){f=v[b>>2];c=b;while(1){e=f;f=v[c>>2];if(e>>>0>f>>>0){break e}e=g+((f&255)<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[c+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[c+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[c+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;c=c+4|0;if((j|0)!=(c|0)){continue}break}}v[a+28>>2]=v[a+28>>2]+1;d=l>>>0>1?l:1;l=d&7;b=v[a+8>>2];f=0;c=0;if(d-1>>>0>=7){d=d&-8;e=0;while(1){v[b+(c<<2)>>2]=c;g=c|1;v[b+(g<<2)>>2]=g;g=c|2;v[b+(g<<2)>>2]=g;g=c|3;v[b+(g<<2)>>2]=g;g=c|4;v[b+(g<<2)>>2]=g;g=c|5;v[b+(g<<2)>>2]=g;g=c|6;v[b+(g<<2)>>2]=g;g=c|7;v[b+(g<<2)>>2]=g;c=c+8|0;e=e+8|0;if((d|0)!=(e|0)){continue}break}}if(!l){break a}while(1){v[b+(c<<2)>>2]=c;c=c+1|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}break a}if(!m){break d}k=v[a+8>>2];f=v[(v[k>>2]<<2)+b>>2];c=b;while(1){e=f;f=v[(v[k>>2]<<2)+b>>2];if(e>>>0>f>>>0){break e}e=g+(w[c|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[c+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[c+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[c+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;k=k+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}break d}if((c|0)==(j|0)){break b}while(1){f=g+(w[c|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=o+(w[c+1|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=n+(w[c+2|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=h+(w[c+3|0]<<2)|0;v[f>>2]=v[f>>2]+1;c=c+4|0;if((j|0)!=(c|0)){continue}break}break b}if((c|0)<0){if(m){f=v[b>>2];c=b;while(1){e=f;f=v[c>>2];if((e|0)>(f|0)){break c}e=g+((f&255)<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[c+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[c+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[c+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;c=c+4|0;if((j|0)!=(c|0)){continue}break}}v[a+28>>2]=v[a+28>>2]+1;d=l>>>0>1?l:1;l=d&7;b=v[a+8>>2];f=0;c=0;if(d-1>>>0>=7){d=d&-8;e=0;while(1){v[b+(c<<2)>>2]=c;g=c|1;v[b+(g<<2)>>2]=g;g=c|2;v[b+(g<<2)>>2]=g;g=c|3;v[b+(g<<2)>>2]=g;g=c|4;v[b+(g<<2)>>2]=g;g=c|5;v[b+(g<<2)>>2]=g;g=c|6;v[b+(g<<2)>>2]=g;g=c|7;v[b+(g<<2)>>2]=g;c=c+8|0;e=e+8|0;if((d|0)!=(e|0)){continue}break}}if(!l){break a}while(1){v[b+(c<<2)>>2]=c;c=c+1|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}break a}if(!m){break d}k=v[a+8>>2];f=v[(v[k>>2]<<2)+b>>2];c=b;while(1){e=f;f=v[(v[k>>2]<<2)+b>>2];if((e|0)>(f|0)){break c}e=g+(w[c|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=o+(w[c+1|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=n+(w[c+2|0]<<2)|0;v[e>>2]=v[e>>2]+1;e=h+(w[c+3|0]<<2)|0;v[e>>2]=v[e>>2]+1;k=k+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}v[a+28>>2]=v[a+28>>2]+1;break a}if((c|0)==(j|0)){break b}while(1){f=g+(w[c|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=o+(w[c+1|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=n+(w[c+2|0]<<2)|0;v[f>>2]=v[f>>2]+1;f=h+(w[c+3|0]<<2)|0;v[f>>2]=v[f>>2]+1;c=c+4|0;if((j|0)!=(c|0)){continue}break}}k=0;e=0;if(!d){c=g+3072|0;f=128;while(1){g=f<<2;e=v[c+(g|12)>>2]+(v[c+(g|8)>>2]+(v[c+(g|4)>>2]+(v[c+g>>2]+e|0)|0)|0)|0;f=f+4|0;if((f|0)!=256){continue}break}}n=m-4|0;o=n&4;m=l>>>0>1;c=m?l:1;r=c&-2;s=c&1;t=e<<2;while(1){c=v[a+16>>2];g=c+(k<<10)|0;j=b+k|0;if(!((l|0)==v[g+(w[j|0]<<2)>>2]|!c)){e=v[a+12>>2];c=v[a+20>>2];f:{if(!((k|0)==3&(d|0)!=1)){v[c>>2]=e;f=1;while(1){h=f<<2;i=h+c|0;p=e;e=g+h|0;p=p+(v[e-4>>2]<<2)|0;v[i>>2]=p;h=h+4|0;e=p+(v[e>>2]<<2)|0;v[h+c>>2]=e;e=e+(v[g+h>>2]<<2)|0;v[i+8>>2]=e;f=f+3|0;if((f|0)!=256){continue}break}break f}e=e+t|0;v[c>>2]=e;f=1;while(1){p=e;e=f<<2;i=e+g|0;h=p+(v[i-4>>2]<<2)|0;v[c+e>>2]=h;e=e+4|0;h=h+(v[i>>2]<<2)|0;v[e+c>>2]=h;i=f+2<<2;e=h+(v[e+g>>2]<<2)|0;v[i+c>>2]=e;h=f+3|0;if((h|0)!=128){e=e+(v[g+i>>2]<<2)|0;v[c+(h<<2)>>2]=e;f=f+4|0;continue}break}e=v[a+12>>2];v[c+512>>2]=e;f=129;while(1){p=e;e=f<<2;i=e+g|0;h=p+(v[i-4>>2]<<2)|0;v[c+e>>2]=h;e=e+4|0;h=h+(v[i>>2]<<2)|0;v[e+c>>2]=h;i=f+2<<2;e=h+(v[e+g>>2]<<2)|0;v[i+c>>2]=e;h=f+3|0;if((h|0)==256){break f}e=e+(v[g+i>>2]<<2)|0;v[c+(h<<2)>>2]=e;f=f+4|0;continue}}g:{h:{if(v[a+4>>2]<0){e=0;f=0;if(!m){break h}while(1){h=c+(w[j+(e<<2)|0]<<2)|0;g=v[h>>2];v[h>>2]=g+4;v[g>>2]=e;h=e|1;i=c+(w[j+(h<<2)|0]<<2)|0;g=v[i>>2];v[i>>2]=g+4;v[g>>2]=h;e=e+2|0;f=f+2|0;if((r|0)!=(f|0)){continue}break}break h}f=v[a+8>>2];e=f;if(!o){g=v[f>>2];h=c+(w[j+(g<<2)|0]<<2)|0;e=v[h>>2];v[h>>2]=e+4;v[e>>2]=g;e=f+4|0}if(!n){break g}g=f+(l<<2)|0;while(1){h=v[e>>2];i=c+(w[j+(h<<2)|0]<<2)|0;f=v[i>>2];v[i>>2]=f+4;v[f>>2]=h;h=v[e+4>>2];i=c+(w[j+(h<<2)|0]<<2)|0;f=v[i>>2];v[i>>2]=f+4;v[f>>2]=h;e=e+8|0;if((g|0)!=(e|0)){continue}break}break g}if(s){f=c+(w[j+(e<<2)|0]<<2)|0;c=v[f>>2];v[f>>2]=c+4;v[c>>2]=e}v[a+4>>2]=v[a+4>>2]&2147483647}u=a,x=Waa(v[a+8>>2],v[a+12>>2]),v[u+8>>2]=x;v[a+12>>2]=Aa}k=k+1|0;if((k|0)!=4){continue}break}}}xa=q+5120|0;return a}function lx(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=0,A=0,D=C(0),E=C(0);k=xa-160|0;xa=k;a:{if(v[((g<<5)+a|0)+24>>2]==(d|0)){l=z[e+20>>2];m=z[e+24>>2];n=z[h+20>>2];o=z[e>>2];p=z[e+4>>2];q=z[e+8>>2];w=z[e+16>>2];r=z[h>>2];s=z[h+4>>2];t=z[h+8>>2];u=z[h+16>>2];z[k+152>>2]=-z[h+24>>2];z[k+148>>2]=-n;v[k+156>>2]=0;z[k+144>>2]=-u;v[k+140>>2]=0;z[k+136>>2]=-t;z[k+132>>2]=-s;z[k+128>>2]=-r;a=B(g,160);b=B(g,76);e=k+128|0;dx(k+96|0,v[c+284>>2]+B(g,96)|0,(a+v[c+340>>2]|0)+120|0,b+v[c+272>>2]|0,e);z[k+88>>2]=m-z[k+120>>2];z[k+84>>2]=l-z[k+116>>2];v[k+92>>2]=0;v[k+76>>2]=0;z[k+80>>2]=w-z[k+112>>2];z[k+72>>2]=q-z[k+104>>2];z[k+68>>2]=p-z[k+100>>2];z[k+64>>2]=o-z[k+96>>2];h=k+32|0;Rw(h,v[c+224>>2]+B(d,192)|0,k- -64|0);$w(k,(a+v[c+340>>2]|0)+120|0,v[c+236>>2]+B(g,112)|0,v[c+248>>2]+B(g,36)|0,b+v[c+272>>2]|0,e,h);l=z[k+56>>2];a=v[k+52>>2];b=v[k+48>>2];v[f+12>>2]=0;z[f+8>>2]=l;v[f>>2]=b;v[f+4>>2]=a;a=v[k+36>>2];b=v[k+32>>2];l=z[k+40>>2];v[f+28>>2]=0;z[f+24>>2]=l;v[f+16>>2]=b;v[f+20>>2]=a;l=z[k+24>>2];a=v[k+20>>2];b=v[k+16>>2];v[i+12>>2]=0;z[i+8>>2]=l;v[i>>2]=b;v[i+4>>2]=a;a=v[k+4>>2];b=v[k>>2];l=z[k+8>>2];v[i+28>>2]=0;z[i+24>>2]=l;v[i+16>>2]=b;v[i+20>>2]=a;break a}A=a;y=b;j=xa-448|0;xa=j;b=d;if((g|0)!=(b|0)){a=d;b=g;while(1){b:{if(a>>>0>>0){b=v[((b<<5)+A|0)+24>>2];break b}a=v[((a<<5)+A|0)+24>>2]}if((a|0)!=(b|0)){continue}break}}m=z[e+20>>2];q=z[e>>2];p=z[e+4>>2];o=z[e+8>>2];n=z[e+16>>2];l=C(-z[e+24>>2]);z[j+184>>2]=l;m=C(-m);z[j+180>>2]=m;a=0;v[j+188>>2]=0;n=C(-n);z[j+176>>2]=n;v[j+172>>2]=0;o=C(-o);z[j+168>>2]=o;p=C(-p);z[j+164>>2]=p;q=C(-q);z[j+160>>2]=q;r=z[h+20>>2];x=z[h>>2];u=z[h+4>>2];t=z[h+8>>2];s=z[h+16>>2];w=C(-z[h+24>>2]);z[j+152>>2]=w;r=C(-r);z[j+148>>2]=r;v[j+156>>2]=0;v[j+140>>2]=0;s=C(-s);z[j+144>>2]=s;t=C(-t);z[j+136>>2]=t;u=C(-u);z[j+132>>2]=u;x=C(-x);z[j+128>>2]=x;e=(d<<5)+y|0;v[e+28>>2]=0;z[e+24>>2]=l;z[e+20>>2]=m;z[e+16>>2]=n;v[e+12>>2]=0;z[e+8>>2]=o;z[e+4>>2]=p;z[e>>2]=q;e=(g<<5)+y|0;v[e+28>>2]=0;z[e+24>>2]=w;z[e+20>>2]=r;z[e+16>>2]=s;v[e+12>>2]=0;z[e+8>>2]=t;z[e+4>>2]=u;z[e>>2]=x;if((b|0)!=(d|0)){while(1){dx(j+96|0,v[c+284>>2]+B(d,96)|0,(v[c+340>>2]+B(d,160)|0)+120|0,v[c+272>>2]+B(d,76)|0,j+160|0);v[j+172>>2]=0;v[j+188>>2]=0;q=z[j+96>>2];z[j+160>>2]=q;p=z[j+100>>2];z[j+164>>2]=p;o=z[j+104>>2];z[j+168>>2]=o;n=z[j+112>>2];z[j+176>>2]=n;m=z[j+116>>2];z[j+180>>2]=m;l=z[j+120>>2];z[j+184>>2]=l;e=v[((d<<5)+A|0)+24>>2];h=(e<<5)+y|0;v[h+28>>2]=0;z[h+16>>2]=n;v[h+12>>2]=0;z[h+8>>2]=o;z[h+4>>2]=p;z[h>>2]=q;z[h+24>>2]=l;z[h+20>>2]=m;v[(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){dx(j+96|0,v[c+284>>2]+B(g,96)|0,(v[c+340>>2]+B(g,160)|0)+120|0,v[c+272>>2]+B(g,76)|0,j+128|0);v[j+140>>2]=0;v[j+156>>2]=0;x=z[j+96>>2];z[j+128>>2]=x;u=z[j+100>>2];z[j+132>>2]=u;t=z[j+104>>2];z[j+136>>2]=t;s=z[j+112>>2];z[j+144>>2]=s;r=z[j+116>>2];z[j+148>>2]=r;w=z[j+120>>2];z[j+152>>2]=w;e=v[((g<<5)+A|0)+24>>2];h=(e<<5)+y|0;v[h+28>>2]=0;z[h+16>>2]=s;v[h+12>>2]=0;z[h+8>>2]=t;z[h+4>>2]=u;z[h>>2]=x;z[h+24>>2]=w;z[h+20>>2]=r;v[(j+192|0)+(d<<2)>>2]=g;d=d+1|0;g=e;if((e|0)!=(b|0)){continue}break}}e=v[c+224>>2];z[j+88>>2]=-C(l+w);z[j+84>>2]=-C(m+r);v[j+92>>2]=0;z[j+80>>2]=-C(n+s);v[j+76>>2]=0;z[j+72>>2]=-C(o+t);z[j+68>>2]=-C(p+u);z[j+64>>2]=-C(q+x);Rw(j+96|0,e+B(b,192)|0,j- -64|0);w=z[j+116>>2];z[j+84>>2]=w;r=z[j+120>>2];z[j+88>>2]=r;s=z[j+96>>2];z[j+64>>2]=s;t=z[j+100>>2];z[j+68>>2]=t;u=z[j+104>>2];z[j+72>>2]=u;D=z[j+108>>2];z[j+76>>2]=D;x=z[j+112>>2];z[j+80>>2]=x;E=z[j+124>>2];z[j+92>>2]=E;l=r;m=w;n=x;o=u;p=t;q=s;if(a>>>0>>0){while(1){d=d-1|0;b=v[(j+192|0)+(d<<2)>>2];$w(j+32|0,(v[c+340>>2]+B(b,160)|0)+120|0,v[c+236>>2]+B(b,112)|0,v[c+248>>2]+B(b,36)|0,v[c+272>>2]+B(b,76)|0,(b<<5)+y|0,j- -64|0);v[j+76>>2]=0;v[j+92>>2]=0;s=z[j+32>>2];z[j+64>>2]=s;t=z[j+36>>2];z[j+68>>2]=t;u=z[j+40>>2];z[j+72>>2]=u;x=z[j+48>>2];z[j+80>>2]=x;w=z[j+52>>2];z[j+84>>2]=w;r=z[j+56>>2];z[j+88>>2]=r;if(a>>>0>>0){continue}break}E=z[j+124>>2];m=z[j+116>>2];n=z[j+112>>2];D=z[j+108>>2];o=z[j+104>>2];p=z[j+100>>2];q=z[j+96>>2];l=z[j+120>>2]}z[j+56>>2]=l;z[j+52>>2]=m;z[j+60>>2]=E;z[j+48>>2]=n;z[j+44>>2]=D;z[j+40>>2]=o;z[j+36>>2]=p;z[j+32>>2]=q;if(a){while(1){a=a-1|0;b=v[(j+192|0)+(a<<2)>>2];$w(j,(v[c+340>>2]+B(b,160)|0)+120|0,v[c+236>>2]+B(b,112)|0,v[c+248>>2]+B(b,36)|0,v[c+272>>2]+B(b,76)|0,(b<<5)+y|0,j+32|0);v[j+44>>2]=0;v[j+60>>2]=0;q=z[j>>2];z[j+32>>2]=q;p=z[j+4>>2];z[j+36>>2]=p;o=z[j+8>>2];z[j+40>>2]=o;n=z[j+16>>2];z[j+48>>2]=n;m=z[j+20>>2];z[j+52>>2]=m;l=z[j+24>>2];z[j+56>>2]=l;if(a){continue}break}}z[f+16>>2]=q;z[f+8>>2]=l;z[f+4>>2]=m;z[f>>2]=n;z[f+24>>2]=o;z[f+20>>2]=p;z[i+24>>2]=u;z[i+20>>2]=t;z[i+16>>2]=s;z[i+8>>2]=r;z[i+4>>2]=w;z[i>>2]=x;xa=j+448|0}xa=k+160|0}function BX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),y=C(0),A=0,B=0,D=C(0),E=C(0),F=C(0);c=xa-48|0;xa=c;k=z[a+4>>2];z[c+32>>2]=z[b+16>>2];z[c+36>>2]=z[b+20>>2];l=z[b+24>>2];z[c+44>>2]=k+j;z[c+40>>2]=l;j=z[f>>2];k=z[f+4>>2];z[c+16>>2]=-z[f+8>>2];z[c+12>>2]=-k;z[c+8>>2]=-j;u[c+24>>1]=x[i>>1];b=0;q=c+8|0;A=h+40|0;d=h+28|0;a=xa-48|0;xa=a;D=z[e+24>>2];f=c+32|0;y=z[f+12>>2];o=C(D+y);a:{b:{if(w[c+24|0]&16){t=z[e+12>>2];j=z[e>>2];break b}j=z[e+8>>2];k=C(z[f+8>>2]-j);n=C(z[e+20>>2]-j);j=z[e>>2];l=C(z[f>>2]-j);t=z[e+12>>2];p=C(t-j);m=z[e+4>>2];r=C(z[e+16>>2]-m);m=C(z[f+4>>2]-m);s=C(C(k*n)+C(C(l*p)+C(r*m)));c:{if(s<=C(0)){break c}E=C(C(n*n)+C(C(p*p)+C(r*r)));if(s>=E){k=C(k-n);m=C(m-r);l=C(l-p);break c}F=n;n=C(s/E);k=C(k-C(F*n));m=C(m-C(r*n));l=C(l-C(p*n))}if(!(C(C(k*k)+C(C(l*l)+C(m*m)))>2]=0;g=z[q>>2];j=z[q+4>>2];z[d+8>>2]=-z[q+8>>2];z[d+4>>2]=-j;z[d>>2]=-g;q=1;break a}k=z[e+16>>2];l=z[e+4>>2];if(!(j!=t|k!=l|z[e+8>>2]!=z[e+20>>2])){j=z[q>>2];k=z[q+4>>2];z[a+24>>2]=C(-z[q+8>>2])*g;z[a+20>>2]=C(-k)*g;z[a+16>>2]=C(-j)*g;d:{e:{f:{g:{h:{j=z[e+8>>2];k=z[f+8>>2];l=C(j-k);m=z[e>>2];o=z[f>>2];n=C(m-o);p=z[e+4>>2];r=z[f+4>>2];t=C(p-r);s=C(y+D);s=C(C(C(l*l)+C(C(n*n)+C(t*t)))-C(s*s));if(!(s<=C(0))){k=C(C(C(j+z[a+24>>2])-j)-C(k-k));m=C(C(C(m+z[a+16>>2])-m)-C(o-o));o=C(C(C(p+z[a+20>>2])-p)-C(r-r));j=C(C(k*k)+C(C(m*m)+C(o*o)));if(j!=C(0)){break h}}v[A>>2]=0;break g}k=C(C(k*l)+C(C(m*n)+C(t*o)));k=C(k+k);l=C(C(k*k)+C(s*C(j*C(-4))));if(!(l>=C(0))){break d}j=C(C(1)/C(j+j));m=C(K(l));l=C(j*C(C(-k)-m));k=C(j*C(m-k));q=l>2]=j;if((q?k:l)C(1)){break d}if(j!=C(0)){break f}}k=C(-z[a+24>>2]);l=C(-z[a+20>>2]);j=C(-z[a+16>>2]);break e}k=C(C(C(j*z[a+24>>2])+z[e+8>>2])-z[f+8>>2]);l=C(C(C(j*z[a+20>>2])+z[e+4>>2])-z[f+4>>2]);j=C(C(C(j*z[a+16>>2])+z[e>>2])-z[f>>2])}z[d+8>>2]=k;z[d+4>>2]=l;z[d>>2]=j;B=1;m=C(K(C(C(k*k)+C(C(j*j)+C(l*l)))));if(!(m>C(0))){break d}n=k;k=C(C(1)/m);z[d+8>>2]=n*k;z[d+4>>2]=l*k;z[d>>2]=j*k}q=0;if(!B){break a}z[A>>2]=z[A>>2]*g;j=z[f>>2];k=z[d>>2];l=z[f+4>>2];m=z[d+4>>2];g=z[f+12>>2];z[h+24>>2]=C(g*z[d+8>>2])+z[f+8>>2];z[h+20>>2]=l+C(g*m);z[h+16>>2]=j+C(g*k);q=1;break a}z[a+20>>2]=l;z[a+16>>2]=j;j=z[e+8>>2];z[a+32>>2]=k;z[a+28>>2]=t;z[a+24>>2]=j;z[a+36>>2]=z[e+20>>2];z[a+40>>2]=o;v[a+12>>2]=0;j=C(0);B=_W(f,q,a+16|0,a+28|0,o,a+12|0)^1;k=z[a+12>>2];B=B|!(k>=C(0))|!(g>=k);if(!B){z[A>>2]=k;m=z[q+8>>2];l=z[q+4>>2];o=C(k*z[q>>2]);g=C(z[a+16>>2]-o);z[a+16>>2]=g;n=C(k*l);l=C(z[a+20>>2]-n);z[a+20>>2]=l;m=C(k*m);k=C(z[a+24>>2]-m);z[a+24>>2]=k;n=C(z[a+32>>2]-n);z[a+32>>2]=n;o=C(z[a+28>>2]-o);z[a+28>>2]=o;m=C(C(z[a+36>>2]-m)-k);o=C(o-g);n=C(n-l);p=C(C(C(z[f+8>>2]-k)*m)+C(C(C(z[f>>2]-g)*o)+C(n*C(z[f+4>>2]-l))));i:{if(p<=C(0)){break i}j=C(1);r=C(C(m*m)+C(C(o*o)+C(n*n)));if(r<=p){break i}j=C(p/r)}k=C(k+C(m*j));z[h+24>>2]=k;l=C(l+C(n*j));z[h+20>>2]=l;g=C(g+C(o*j));z[h+16>>2]=g;m=z[f>>2];j=z[f+4>>2];k=C(k-z[f+8>>2]);z[d+8>>2]=k;j=C(l-j);z[d+4>>2]=j;g=C(g-m);z[d>>2]=g;l=C(K(C(C(k*k)+C(C(g*g)+C(j*j)))));if(l>C(0)){l=C(C(1)/l);k=C(k*l);z[d+8>>2]=k;j=C(j*l);z[d+4>>2]=j;g=C(g*l);z[d>>2]=g}l=z[e+24>>2];z[h+16>>2]=z[h+16>>2]-C(l*g);z[h+20>>2]=z[h+20>>2]-C(l*j);z[h+24>>2]=z[h+24>>2]-C(l*k)}q=B^1}xa=a+48|0;j:{if(!q){break j}b=1;if(w[i+1|0]&2){u[h+12>>1]=3;if(z[h+40>>2]!=C(0)){break j}k:{g=z[e>>2];if(g!=z[e+12>>2]){break k}j=z[e+4>>2];if(j!=z[e+16>>2]){break k}k=z[e+8>>2];if(k!=z[e+20>>2]){break k}z[c+20>>2]=z[e+24>>2];z[c+16>>2]=k;z[c+12>>2]=j;z[c+8>>2]=g;g=C(z[c+16>>2]-z[c+40>>2]);k=C(z[c+8>>2]-z[c+32>>2]);l=C(z[c+12>>2]-z[c+36>>2]);j=C(C(g*g)+C(C(k*k)+C(l*l)));m=C(K(j));n=z[c+20>>2];p=z[c+44>>2];l:{if(j>2]=g;z[h+36>>2]=j;z[h+32>>2]=k;z[h+40>>2]=m-C(p+n);l=z[c+32>>2];m=z[c+36>>2];n=j;j=z[c+44>>2];z[h+24>>2]=C(n*j)+z[c+40>>2];z[h+20>>2]=m+C(k*j);z[h+16>>2]=l+C(g*j);break j}g=C(0);o=z[e+8>>2];k=C(z[e+20>>2]-o);n=z[e>>2];l=C(z[e+12>>2]-n);t=z[c+40>>2];s=z[c+32>>2];p=z[e+4>>2];m=C(z[e+16>>2]-p);D=z[c+36>>2];r=C(C(C(t-o)*k)+C(C(C(s-n)*l)+C(m*C(D-p))));j=C(0);m:{if(r<=C(0)){break m}y=C(C(k*k)+C(C(l*l)+C(m*m)));j=C(1);if(y<=r){break m}j=C(r/y)}r=z[e+24>>2];y=z[c+44>>2];o=C(C(o+C(k*j))-t);l=C(C(n+C(l*j))-s);m=C(C(p+C(m*j))-D);p=C(C(o*o)+C(C(l*l)+C(m*m)));n=C(K(p));j=C(1);k=C(0);if(!(p>2]=j;z[h+36>>2]=k;z[h+32>>2]=g;z[h+40>>2]=n-C(y+r);l=z[c+32>>2];m=z[c+36>>2];n=k;k=z[c+44>>2];z[h+24>>2]=C(n*k)+z[c+40>>2];z[h+20>>2]=m+C(g*k);z[h+16>>2]=l+C(j*k);break j}if(z[h+40>>2]!=C(0)){u[h+12>>1]=3;break j}u[h+12>>1]=2}xa=c+48|0;return b|0}function XF(a){var b=0,c=0,d=0,e=0,f=0;f=xa-16|0;xa=f;b=v[a+440>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+432>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+428>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+420>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+416>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+408>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+404>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+396>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+384>>2];if(!(!b|v[a+388>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+384>>2]=0;b=v[a+380>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+372>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+364>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+356>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+348>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+344>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+336>>2];if(!b){break g}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+332>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[a+324>>2];if(!b){break h}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+308>>2];if(!(!b|v[a+312>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+308>>2]=0;b=v[a+304>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=v[a+296>>2];if(!b){break i}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+292>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=v[a+284>>2];if(!b){break j}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+280>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=v[a+272>>2];if(!b){break k}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+268>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=v[a+260>>2];if(!b){break l}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+248>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=v[a+240>>2];if(!b){break m}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+228>>2];if(!(!b|v[a+232>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+228>>2]=0;b=v[a+216>>2];if(!(!b|v[a+220>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+216>>2]=0;b=v[a+212>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=v[a+204>>2];if(!b){break n}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+200>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=v[a+192>>2];if(!b){break o}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+188>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=v[a+180>>2];if(!b){break p}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+168>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=v[a+160>>2];if(!b){break q}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+156>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=v[a+148>>2];if(!b){break r}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+144>>2];s:{if((b|0)<0|!(b&2147483647)){break s}b=v[a+136>>2];if(!b){break s}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+132>>2];t:{if((b|0)<0|!(b&2147483647)){break t}b=v[a+124>>2];if(!b){break t}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+120>>2];u:{if((b|0)<0|!(b&2147483647)){break u}b=v[a+112>>2];if(!b){break u}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+108>>2];v:{if((b|0)<0|!(b&2147483647)){break v}b=v[a+100>>2];if(!b){break v}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=0;c=v[a+96>>2];w:{if((c|0)<0|!(c&2147483647)){break w}c=v[a+88>>2];if(!c){break w}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}d=a- -64|0;c=v[a+68>>2];if(c){while(1){e=v[v[d>>2]+(b<<2)>>2];if(e){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e);c=v[a+68>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}b=0;v[f+8>>2]=0;c=v[d+4>>2];if((c|0)<0){e=v[d>>2];c=e+(c<<2)|0;while(1){v[c>>2]=v[f+8>>2];c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[d+4>>2]=0;c=v[a+72>>2];x:{if((c|0)<0|!(c&2147483647)){break x}c=v[a+64>>2];if(!c){break x}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}d=a+40|0;c=v[a+44>>2];if(c){while(1){e=v[v[d>>2]+(b<<2)>>2];if(e){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e);c=v[a+44>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[f+12>>2]=0;b=v[d+4>>2];if((b|0)<0){c=v[d>>2];b=c+(b<<2)|0;while(1){v[b>>2]=v[f+12>>2];b=b+4|0;if(c>>>0>b>>>0){continue}break}}v[d+4>>2]=0;b=v[a+48>>2];y:{if((b|0)<0|!(b&2147483647)){break y}b=v[a+40>>2];if(!b){break y}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+36>>2];z:{if((b|0)<0|!(b&2147483647)){break z}b=v[a+28>>2];if(!b){break z}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+24>>2];A:{if((b|0)<0|!(b&2147483647)){break A}b=v[a+16>>2];if(!b){break A}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+8>>2];B:{if((b|0)<0|!(b&2147483647)){break B}a=v[a>>2];if(!a){break B}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=f+16|0}function DY(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;var g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,u=C(0),w=C(0),x=C(0),A=0,D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=C(0),W=C(0),X=C(0),Y=C(0);i=xa+-64|0;xa=i;z[i+60>>2]=d;M=v[a+36>>2];a:{if(M){break a}M=0;G=v[a+20>>2];T=G<<2;if(T){U=v[37696];M=Ba[v[v[U+12>>2]+8>>2]](U+12|0,T,24422,11302,133)|0;G=v[a+20>>2]}v[a+36>>2]=M;if(!G){break a}while(1){v[(A<<2)+M>>2]=A;A=A+1|0;if(A>>>0>2]){continue}break}}j=z[b+16>>2];o=z[b+20>>2];l=z[b+4>>2];h=z[b+8>>2];g=z[b+12>>2];d=z[b>>2];z[i+48>>2]=C(g-d)*C(.5);z[i+56>>2]=C(o-h)*C(.5);z[i+52>>2]=C(j-l)*C(.5);v[i+40>>2]=0;v[i+36>>2]=e;v[i+32>>2]=f;b=v[a+40>>2];v[i+28>>2]=v[a+32>>2];v[i+24>>2]=b;U=v[a+28>>2];z[i+8>>2]=C(o+h)*C(.5);z[i+4>>2]=C(j+l)*C(.5);z[i>>2]=C(g+d)*C(.5);s=xa-1040|0;xa=s;d=z[c+8>>2];p=C(d+d);e=p>C(0);o=C(-p);d=z[c+4>>2];q=C(d+d);b=q>C(0);l=C(-q);d=z[c>>2];r=C(d+d);a=r>C(0);h=C(-r);H=z[i+56>>2];m=z[i+52>>2];j=z[i+48>>2];d=z[i+8>>2];u=C(d+d);d=z[i+4>>2];w=C(d+d);d=z[i>>2];x=C(d+d);g=z[i+60>>2];b:{if(g>=C(34028234663852886e22)){d=q==C(0)?w:q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);E=r==C(0)?x:r>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);g=u;if(p==C(0)){break b}g=p>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break b}d=C(w+C(q*g));E=C(x+C(r*g));g=C(u+C(p*g))}J=e?p:o;K=b?q:l;L=a?r:h;V=C(H+H);W=C(m+m);X=C(j+j);t[s+1024|0]=1;v[s+1032>>2]=256;v[s+1036>>2]=256;v[s+1028>>2]=s;e=v[i+24>>2];v[s>>2]=e;O=gE?x:E;H=g>u?u:g;d=d>w?w:d;E=x>2]+(f<<2)>>2];h=z[c>>2];g=z[c+12>>2];l=C(h+g);k=C(X+C(g-h));d:{e:{if(!(C(l+k)>=E)|!(C(l-k)<=Q)){break e}h=z[c+16>>2];g=z[c+4>>2];j=C(W+C(h-g));h=C(g+h);o=C(w-h);l=C(x-l);g=C(C(r*o)-C(q*l));if(!(C(C(K*k)+C(L*j))>=(g>C(0)?g:C(-g)))|!(C(h+j)>=d)|!(C(h-j)<=P)){break e}h=z[c+20>>2];g=z[c+8>>2];m=C(V+C(h-g));n=C(C(J*j)+C(K*m));j=C(g+h);g=C(u-j);h=C(C(q*g)-C(p*o));if(!(n>=(h>C(0)?h:C(-h)))|!(C(j+m)>=H)|!(C(j-m)<=O)){break e}g=C(C(p*l)-C(r*g));if(!(C(C(J*k)+C(L*m))>=(g>C(0)?g:C(-g)))){break e}R=z[i+60>>2];A=v[c+24>>2];if(!(A&1)){while(1){c=B(A>>>1|0,28)+e|0;h=z[c+28>>2];g=z[c+40>>2];I=C(h+g);m=C(X+C(g-h));h=z[c+44>>2];g=z[c+32>>2];j=C(W+C(h-g));D=C(g+h);o=C(w-D);l=C(x-I);g=C(C(r*o)-C(q*l));a=C(I+m)>=E&C(I-m)<=Q&C(C(K*m)+C(L*j))>=(g>C(0)?g:C(-g))&C(D+j)>=d&C(D-j)<=P;k=C(J*j);h=z[c+48>>2];g=z[c+36>>2];j=C(V+C(h-g));N=C(g+h);g=C(u-N);h=C(C(q*g)-C(p*o));g=C(C(p*l)-C(r*g));b=a&C(k+C(K*j))>=(h>C(0)?h:C(-h))&C(N+j)>=H&C(N-j)<=O&C(C(J*m)+C(L*j))>=(g>C(0)?g:C(-g));h=z[c+16>>2];g=z[c+4>>2];m=C(W+C(h-g));F=C(g+h);o=C(w-F);h=z[c>>2];g=z[c+12>>2];n=C(h+g);l=C(x-n);j=C(C(r*o)-C(q*l));k=C(X+C(g-h));a=C(n+k)>=E&C(n-k)<=Q&C(C(K*k)+C(L*m))>=(j>C(0)?j:C(-j))&C(F+m)>=d&C(F-m)<=P;S=C(J*m);h=z[c+20>>2];g=z[c+8>>2];m=C(V+C(h-g));j=C(g+h);g=C(u-j);h=C(C(q*g)-C(p*o));g=C(C(p*l)-C(r*g));a=a&C(S+C(K*m))>=(h>C(0)?h:C(-h))&C(j+m)>=H&C(j-m)<=O&C(C(J*k)+C(L*m))>=(g>C(0)?g:C(-g));f:{if(!(!a|!b)){a=C(C(C(N-j)*p)+C(C(C(I-n)*r)+C(q*C(D-F))))>C(0);v[v[s+1028>>2]+(f<<2)>>2]=c+B(a,28);c=c+B(!a,28)|0;f=f+1|0;if((f|0)!=(v[s+1036>>2]&2147483647)){break f}CY(s,f<<1);break f}if(!(a|b)){break e}c=a?c:c+28|0}A=v[c+24>>2];if(!(A&1)){continue}break}}a=v[c+24>>2];G=a>>>1&15;if(!G){break e}l=C(u+C(p*R));m=lu?u:l;h=h>w?w:h;g=g>x?x:g;A=v[i+28>>2]+(a>>>3&536870908)|0;T=R>2];c=v[i+32>>2];if((G|0)!=1){while(1){a=v[A>>2];b=U+B(a,24)|0;n=z[b>>2];k=z[b+12>>2];F=C(n+k);S=C(X+C(k-n));g:{if(!(C(F+S)>=E)|!(C(F-S)<=Q)){break g}n=z[b+16>>2];k=z[b+4>>2];D=C(W+C(n-k));n=C(k+n);N=C(w-n);F=C(x-F);k=C(C(r*N)-C(q*F));if(!(C(C(K*S)+C(L*D))>=(k>C(0)?k:C(-k)))|!(C(n+D)>=d)|!(C(n-D)<=P)){break g}n=z[b+20>>2];k=z[b+8>>2];I=C(V+C(n-k));Y=C(C(J*D)+C(K*I));D=C(k+n);k=C(u-D);n=C(C(q*k)-C(p*N));if(!(Y>=(n>C(0)?n:C(-n)))|!(C(D+I)>=H)|!(C(D-I)<=O)){break g}k=C(C(p*F)-C(r*k));if(!(C(C(J*S)+C(L*I))>=(k>C(0)?k:C(-k)))){break g}b=v[(a<<2)+M>>2];a=v[i+40>>2];v[i+40>>2]=a+1;v[c+(a<<2)>>2]=b;if(v[i+40>>2]==v[i+36>>2]){break c}if(!T){break g}z[i+60>>2]=R;E=g;d=h;H=l;Q=o;P=j;O=m}A=A+4|0;G=G-1|0;if(G){continue}break e}}b=v[(v[A>>2]<<2)+M>>2];a=v[i+40>>2];v[i+40>>2]=a+1;v[c+(a<<2)>>2]=b;c=v[i+36>>2];b=v[i+40>>2];if(!T){if((b|0)!=(c|0)){break d}break c}if((b|0)==(c|0)){break c}z[i+60>>2]=R;E=g;d=h;H=l;Q=o;P=j;O=m}}a=f;f=a-1|0;if(a){continue}}break}a=v[s+1036>>2];h:{if((a|0)<0|!(a&2147483647)){break h}b=v[s+1028>>2];if((b|0)==(s|0)|!b){break h}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}xa=s+1040|0;xa=i- -64|0;return v[i+40>>2]}function uB(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=C(0),q=0,r=0,s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=0,ba=C(0),ca=C(0),da=C(0),ea=0,fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=0,Fa=0,Ga=C(0),Ha=C(0),Ia=C(0),Ja=0,Ka=0,La=C(0);q=x[a+22>>1];if(q){Ga=C(z[f+8>>2]-z[g+8>>2]);Ha=C(z[f+4>>2]-z[g+4>>2]);Ia=C(z[f>>2]-z[g>>2]);r=v[a+24>>2];Ja=r+(q<<4)|0;while(1){aa=r+80|0;a=r;q=w[r+2|0];P=aa+B(q,112)|0;Ea=P+((q<<2)+12&2032)|0;ea=w[r+3|0];Ka=ea<<7;a:{if(!q){t=C(0);Q=C(0);R=C(0);S=C(0);T=C(0);U=C(0);V=C(0);W=C(0);X=C(0);Y=C(0);Z=C(0);_=C(0);$=C(0);break a}u=z[a+40>>2];y=z[a+32>>2];K=z[a+36>>2];fa=C(C(u*C(z[f+8>>2]-z[g+8>>2]))+C(C(y*C(z[f>>2]-z[g>>2]))+C(K*C(z[f+4>>2]-z[g+4>>2]))));ga=z[i+8>>2];ha=z[i+4>>2];ia=z[i>>2];A=z[e+8>>2];E=z[e+4>>2];s=z[e>>2];L=C(-z[a+44>>2]);F=0;Q=C(0);R=C(0);S=C(0);T=C(0);U=C(0);V=C(0);W=C(0);X=C(0);Y=C(0);Z=C(0);_=C(0);$=C(0);t=C(0);while(1){r=aa+B(F,112)|0;ja=z[r+96>>2];ka=z[r+100>>2];la=z[r+104>>2];ma=z[r+80>>2];na=z[r+84>>2];oa=z[r+88>>2];pa=z[r+48>>2];qa=z[r+52>>2];ra=z[r+56>>2];Fa=P+(F<<2)|0;G=z[Fa>>2];sa=z[r+28>>2];ta=z[r+36>>2];ua=z[r+12>>2];p=z[r+32>>2];H=z[r+24>>2];I=z[r+20>>2];J=z[r+16>>2];M=z[r+8>>2];N=z[r>>2];O=z[r+4>>2];va=z[c+8>>2];wa=z[d+8>>2];ba=z[b+8>>2];xa=z[c+4>>2];ya=z[d+4>>2];ca=z[b+4>>2];za=z[d>>2];da=z[b>>2];Aa=z[c>>2];Ba=z[h+8>>2];Ca=z[h>>2];Da=z[h+4>>2];v[b+12>>2]=0;La=p;p=C(ua+C(C(fa+C(C(C(Ba*M)+C(C(Ca*N)+C(O*Da)))-C(C(ga*H)+C(C(ia*J)+C(ha*I)))))-C(p*o)));p=C(ta*(n>p?n:p));p=C(sa*C(C(La+(pA?p:A;z[b+8>>2]=ba+C(ra*p);z[b+4>>2]=ca+C(qa*p);z[b>>2]=da+C(pa*p);v[d+12>>2]=0;z[d+8>>2]=C(oa*p)+z[d+8>>2];z[d+4>>2]=C(na*p)+z[d+4>>2];z[d>>2]=C(ma*p)+z[d>>2];A=z[r+64>>2];E=z[r+68>>2];s=z[r+72>>2];v[c+12>>2]=0;z[c+8>>2]=C(p*s)+z[c+8>>2];z[c+4>>2]=C(p*E)+z[c+4>>2];z[c>>2]=C(p*A)+z[c>>2];v[e+12>>2]=0;A=C(C(la*p)+z[e+8>>2]);z[e+8>>2]=A;E=C(C(ka*p)+z[e+4>>2]);z[e+4>>2]=E;s=C(C(ja*p)+z[e>>2]);z[e>>2]=s;G=C(G+p);z[Fa>>2]=G;t=C(t+G);Q=C(Q+C(H*p));R=C(R+C(I*p));S=C(S+C(J*p));H=C(u*p);W=C(W+H);I=C(K*p);X=C(X+I);J=C(y*p);Y=C(Y+J);T=C(T+C(M*p));U=C(U+C(O*p));V=C(V+C(N*p));Z=C(Z+H);_=C(_+I);$=C($+J);F=F+1|0;if((q|0)!=(F|0)){continue}break}}r=Ea+Ka|0;if(ea){p=z[a+52>>2];p=p>2]);A=C(-O);ca=C(z[a+16>>2]*p);F=0;P=0;while(1){q=(F<<7)+Ea|0;da=z[q+112>>2];fa=z[q+116>>2];ga=z[q+120>>2];ha=z[q+96>>2];ia=z[q+100>>2];ja=z[q+104>>2];ka=z[q+64>>2];la=z[q+68>>2];ma=z[q+72>>2];E=z[q+52>>2];na=z[q+48>>2];oa=z[q+12>>2];p=z[q+28>>2];s=z[q+44>>2];K=z[q+24>>2];H=z[q+40>>2];t=z[q+8>>2];I=z[q+20>>2];J=z[q+36>>2];u=z[q+4>>2];M=z[q+16>>2];y=z[q>>2];N=z[q+32>>2];pa=z[h+8>>2];qa=z[h+4>>2];ra=z[h>>2];sa=z[i+8>>2];ta=z[i+4>>2];ua=z[i>>2];va=z[d+8>>2];L=z[b+8>>2];wa=z[e+8>>2];xa=z[c+8>>2];ya=z[d+4>>2];G=z[b+4>>2];za=z[e+4>>2];Aa=z[c+4>>2];ba=z[b>>2];Ba=z[d>>2];Ca=z[c>>2];Da=z[e>>2];v[b+12>>2]=0;p=C(C(E-C(s*C(C(na*C(oa+C(C(p*o)+C(C(C(t*Ga)+C(C(y*Ia)+C(Ha*u)))+C(C(C(K*pa)+C(C(M*ra)+C(I*qa)))-C(C(H*sa)+C(C(N*ua)+C(J*ta))))))))-p)))-C(s*C(C(C(C(C(y*ba)+C(M*Ba))-C(C(y*Ca)+C(N*Da)))+C(C(C(u*G)+C(I*ya))-C(C(u*Aa)+C(J*za))))+C(C(C(t*L)+C(K*va))-C(C(t*xa)+C(H*wa))))));s=p>2]=L+C(ma*p);z[b+4>>2]=G+C(la*p);z[b>>2]=ba+C(ka*p);v[d+12>>2]=0;z[d+8>>2]=z[d+8>>2]+C(ja*p);z[d+4>>2]=z[d+4>>2]+C(ia*p);z[d>>2]=z[d>>2]+C(ha*p);E=z[q+80>>2];L=z[q+84>>2];G=z[q+88>>2];v[c+12>>2]=0;z[c+8>>2]=C(p*G)+z[c+8>>2];z[c+4>>2]=C(p*L)+z[c+4>>2];z[c>>2]=C(p*E)+z[c>>2];v[e+12>>2]=0;z[e+8>>2]=C(ga*p)+z[e+8>>2];z[e+4>>2]=C(fa*p)+z[e+4>>2];z[e>>2]=C(da*p)+z[e>>2];z[q+52>>2]=s;Q=C(Q+C(H*p));R=C(R+C(J*p));S=C(S+C(N*p));t=C(t*p);W=C(W+t);u=C(u*p);X=C(X+u);y=C(y*p);Y=C(Y+y);T=C(T+C(K*p));U=C(U+C(I*p));V=C(V+C(M*p));Z=C(Z+t);_=C(_+u);$=C($+y);P=0-(aa|(P|0)!=0)|0;F=F+1|0;if((ea|0)!=(F|0)){continue}break}v[a+56>>2]=P}p=z[a+24>>2];v[j+12>>2]=0;z[j+8>>2]=C(Z*p)+z[j+8>>2];z[j+4>>2]=C(_*p)+z[j+4>>2];z[j>>2]=C($*p)+z[j>>2];p=z[a+4>>2];v[l+12>>2]=0;z[l+8>>2]=C(T*p)+z[l+8>>2];z[l+4>>2]=C(U*p)+z[l+4>>2];z[l>>2]=C(V*p)+z[l>>2];p=z[a+28>>2];v[k+12>>2]=0;z[k+8>>2]=z[k+8>>2]-C(W*p);z[k+4>>2]=z[k+4>>2]-C(X*p);z[k>>2]=z[k>>2]-C(Y*p);p=z[a+8>>2];v[m+12>>2]=0;z[m+8>>2]=z[m+8>>2]-C(Q*p);z[m+4>>2]=z[m+4>>2]-C(R*p);z[m>>2]=z[m>>2]-C(S*p);if(r>>>0>>0){continue}break}}}function y3(a){v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+28>>2]=-1082130432;v[a+32>>2]=-1;v[a+20>>2]=-1082130432;v[a+24>>2]=-1082130432;v[a+60>>2]=-1082130432;v[a+64>>2]=-1;v[a+52>>2]=-1082130432;v[a+56>>2]=-1082130432;v[a+44>>2]=0;v[a+48>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+124>>2]=-1082130432;v[a+128>>2]=-1;v[a+92>>2]=-1082130432;v[a+96>>2]=-1;v[a+84>>2]=-1082130432;v[a+88>>2]=-1082130432;v[a+76>>2]=0;v[a+80>>2]=0;v[a+68>>2]=0;v[a+72>>2]=0;v[a+108>>2]=0;v[a+112>>2]=0;v[a+116>>2]=-1082130432;v[a+120>>2]=-1082130432;v[a+100>>2]=0;v[a+104>>2]=0;v[a+160>>2]=-1;v[a+144>>2]=0;v[a+188>>2]=-1082130432;v[a+192>>2]=-1;v[a+156>>2]=-1082130432;v[a+148>>2]=-1082130432;v[a+152>>2]=-1082130432;v[a+140>>2]=0;v[a+132>>2]=0;v[a+136>>2]=0;v[a+172>>2]=0;v[a+176>>2]=0;v[a+180>>2]=-1082130432;v[a+184>>2]=-1082130432;v[a+164>>2]=0;v[a+168>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+220>>2]=-1082130432;v[a+224>>2]=-1;v[a+212>>2]=-1082130432;v[a+216>>2]=-1082130432;v[a+196>>2]=0;v[a+200>>2]=0;v[a+252>>2]=-1082130432;v[a+256>>2]=-1;v[a+236>>2]=0;v[a+240>>2]=0;v[a+272>>2]=0;v[a+288>>2]=-1;v[a+228>>2]=0;v[a+232>>2]=0;v[a+244>>2]=-1082130432;v[a+248>>2]=-1082130432;v[a+320>>2]=-1;v[a+304>>2]=0;v[a+284>>2]=-1082130432;v[a+276>>2]=-1082130432;v[a+280>>2]=-1082130432;v[a+268>>2]=0;v[a+260>>2]=0;v[a+264>>2]=0;v[a+352>>2]=-1;v[a+336>>2]=0;v[a+316>>2]=-1082130432;v[a+308>>2]=-1082130432;v[a+312>>2]=-1082130432;v[a+300>>2]=0;v[a+292>>2]=0;v[a+296>>2]=0;v[a+384>>2]=-1;v[a+368>>2]=0;v[a+348>>2]=-1082130432;v[a+340>>2]=-1082130432;v[a+344>>2]=-1082130432;v[a+332>>2]=0;v[a+324>>2]=0;v[a+328>>2]=0;v[a+416>>2]=-1;v[a+400>>2]=0;v[a+380>>2]=-1082130432;v[a+372>>2]=-1082130432;v[a+376>>2]=-1082130432;v[a+364>>2]=0;v[a+356>>2]=0;v[a+360>>2]=0;v[a+448>>2]=-1;v[a+432>>2]=0;v[a+412>>2]=-1082130432;v[a+404>>2]=-1082130432;v[a+408>>2]=-1082130432;v[a+396>>2]=0;v[a+388>>2]=0;v[a+392>>2]=0;v[a+480>>2]=-1;v[a+464>>2]=0;v[a+444>>2]=-1082130432;v[a+436>>2]=-1082130432;v[a+440>>2]=-1082130432;v[a+428>>2]=0;v[a+420>>2]=0;v[a+424>>2]=0;v[a+512>>2]=-1;v[a+496>>2]=0;v[a+476>>2]=-1082130432;v[a+468>>2]=-1082130432;v[a+472>>2]=-1082130432;v[a+460>>2]=0;v[a+452>>2]=0;v[a+456>>2]=0;v[a+544>>2]=-1;v[a+528>>2]=0;v[a+508>>2]=-1082130432;v[a+500>>2]=-1082130432;v[a+504>>2]=-1082130432;v[a+492>>2]=0;v[a+484>>2]=0;v[a+488>>2]=0;v[a+576>>2]=-1;v[a+560>>2]=0;v[a+540>>2]=-1082130432;v[a+532>>2]=-1082130432;v[a+536>>2]=-1082130432;v[a+524>>2]=0;v[a+516>>2]=0;v[a+520>>2]=0;v[a+608>>2]=-1;v[a+592>>2]=0;v[a+572>>2]=-1082130432;v[a+564>>2]=-1082130432;v[a+568>>2]=-1082130432;v[a+556>>2]=0;v[a+548>>2]=0;v[a+552>>2]=0;v[a+640>>2]=-1;v[a+624>>2]=0;v[a+604>>2]=-1082130432;v[a+596>>2]=-1082130432;v[a+600>>2]=-1082130432;v[a+588>>2]=0;v[a+580>>2]=0;v[a+584>>2]=0;v[a+672>>2]=-1;v[a+656>>2]=0;v[a+636>>2]=-1082130432;v[a+628>>2]=-1082130432;v[a+632>>2]=-1082130432;v[a+620>>2]=0;v[a+612>>2]=0;v[a+616>>2]=0;v[a+704>>2]=-1;v[a+688>>2]=0;v[a+668>>2]=-1082130432;v[a+660>>2]=-1082130432;v[a+664>>2]=-1082130432;v[a+652>>2]=0;v[a+644>>2]=0;v[a+648>>2]=0;v[a+736>>2]=-1;v[a+720>>2]=0;v[a+700>>2]=-1082130432;v[a+692>>2]=-1082130432;v[a+696>>2]=-1082130432;v[a+684>>2]=0;v[a+676>>2]=0;v[a+680>>2]=0;v[a+768>>2]=-1;v[a+752>>2]=0;v[a+732>>2]=-1082130432;v[a+724>>2]=-1082130432;v[a+728>>2]=-1082130432;v[a+716>>2]=0;v[a+708>>2]=0;v[a+712>>2]=0;v[a+800>>2]=-1;v[a+784>>2]=0;v[a+764>>2]=-1082130432;v[a+756>>2]=-1082130432;v[a+760>>2]=-1082130432;v[a+748>>2]=0;v[a+740>>2]=0;v[a+744>>2]=0;v[a+832>>2]=-1;v[a+816>>2]=0;v[a+796>>2]=-1082130432;v[a+788>>2]=-1082130432;v[a+792>>2]=-1082130432;v[a+780>>2]=0;v[a+772>>2]=0;v[a+776>>2]=0;v[a+864>>2]=-1;v[a+848>>2]=0;v[a+828>>2]=-1082130432;v[a+820>>2]=-1082130432;v[a+824>>2]=-1082130432;v[a+812>>2]=0;v[a+804>>2]=0;v[a+808>>2]=0;v[a+896>>2]=-1;v[a+880>>2]=0;v[a+860>>2]=-1082130432;v[a+852>>2]=-1082130432;v[a+856>>2]=-1082130432;v[a+844>>2]=0;v[a+836>>2]=0;v[a+840>>2]=0;v[a+928>>2]=-1;v[a+912>>2]=0;v[a+892>>2]=-1082130432;v[a+884>>2]=-1082130432;v[a+888>>2]=-1082130432;v[a+876>>2]=0;v[a+868>>2]=0;v[a+872>>2]=0;v[a+960>>2]=-1;v[a+944>>2]=0;v[a+924>>2]=-1082130432;v[a+916>>2]=-1082130432;v[a+920>>2]=-1082130432;v[a+908>>2]=0;v[a+900>>2]=0;v[a+904>>2]=0;v[a+992>>2]=-1;v[a+976>>2]=0;v[a+956>>2]=-1082130432;v[a+948>>2]=-1082130432;v[a+952>>2]=-1082130432;v[a+940>>2]=0;v[a+932>>2]=0;v[a+936>>2]=0;v[a+1024>>2]=-1;v[a+1008>>2]=0;v[a+988>>2]=-1082130432;v[a+980>>2]=-1082130432;v[a+984>>2]=-1082130432;v[a+972>>2]=0;v[a+964>>2]=0;v[a+968>>2]=0;v[a+1028>>2]=0;v[a+1020>>2]=-1082130432;v[a+1012>>2]=-1082130432;v[a+1016>>2]=-1082130432;v[a+1004>>2]=0;v[a+996>>2]=0;v[a+1e3>>2]=0;return a}function iw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=0,l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=0,N=0,O=0,P=0,Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=0,ja=0,ka=0,la=0,ma=0,na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=0,Da=0,Ea=0;m=xa-2304|0;xa=m;f=v[b+100>>2];P=f+128|0;ia=v[f+8>>2];d=f+x[f+18>>1]|0;ja=d+144|0;h=ja+B(c,160)|0;q=v[h+152>>2];b=ia&q;ka=v[f+12>>2];k=v[h+156>>2];h=ka&k;e=h;if(b|e){g=x[f+4>>1]<<5;Q=g+P|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}R=z[d+136>>2];S=z[d+104>>2];T=z[d+120>>2];U=z[d+132>>2];V=z[d+100>>2];W=z[d+116>>2];X=z[d+112>>2];Y=z[d+128>>2];u=z[d- -64>>2];F=z[d+80>>2];H=z[d+84>>2];y=z[d+52>>2];I=z[d+68>>2];n=z[d+20>>2];o=z[d+36>>2];J=z[d+88>>2];j=z[f+56>>2];A=z[d+56>>2];r=z[f+48>>2];D=z[d+72>>2];l=z[f+52>>2];t=z[d+24>>2];i=z[f+36>>2];Z=z[d+40>>2];p=z[f+40>>2];_=z[d+96>>2];$=z[f+128>>2];aa=z[d+32>>2];ba=z[d>>2];ca=z[d+16>>2];K=z[d+48>>2];da=z[f+132>>2];ea=z[d+4>>2];s=z[f+136>>2];fa=z[d+8>>2];ga=z[f+32>>2];v[f+140>>2]=0;v[f+156>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+56>>2]=0;v[f+60>>2]=0;ha=s;s=C(-ga);r=C(-r);t=C(C(C(C(fa*s)-C(t*i))-C(Z*p))+C(C(C(A*r)-C(D*l))-C(J*j)));z[f+136>>2]=ha+t;n=C(C(C(C(ea*s)-C(n*i))-C(o*p))+C(C(C(y*r)-C(I*l))-C(H*j)));z[f+132>>2]=da+n;o=C(C(C(C(ba*s)-C(ca*i))-C(aa*p))+C(C(C(K*r)-C(u*l))-C(F*j)));z[f+128>>2]=$+o;y=C(C(C(C(K*s)-C(y*i))-C(A*p))+C(C(C(_*r)-C(X*l))-C(Y*j)));z[f+144>>2]=y+z[f+144>>2];u=C(C(C(C(u*s)-C(I*i))-C(D*p))+C(C(C(V*r)-C(W*l))-C(U*j)));z[f+148>>2]=u+z[f+148>>2];i=C(C(C(C(F*s)-C(H*i))-C(J*p))+C(C(C(S*r)-C(T*l))-C(R*j)));z[f+152>>2]=i+z[f+152>>2];v[m+28>>2]=0;z[m+24>>2]=i;z[m+20>>2]=u;z[m+16>>2]=y;v[m+12>>2]=0;z[m+8>>2]=t;z[m+4>>2]=n;z[m>>2]=o;v[m+2048>>2]=0;L=v[d+288>>2];M=v[d+292>>2];N=1;d=q-!h|0;b=h-1|0}if(b|d){la=f+x[f+6>>1]|0;ma=g+(g+Q|0)|0;while(1){e=b;O=(Ca=Raa(e),Da=Raa(d)+32|0,Ea=e,Ea?Ca:Da);e=O<<5;k=e+P|0;R=z[k>>2];S=z[k+4>>2];G=e+la|0;H=z[G+24>>2];T=z[k+8>>2];I=z[G+16>>2];J=z[G+20>>2];g=B(O,160)+ja|0;U=z[g+136>>2];V=z[g+104>>2];W=z[g+120>>2];X=z[g+88>>2];Y=z[g+84>>2];Z=z[g+80>>2];_=z[g+72>>2];$=z[g+64>>2];aa=z[g+68>>2];ba=z[g+132>>2];ca=z[g+100>>2];da=z[g+116>>2];ea=z[g+56>>2];fa=z[g+52>>2];ga=z[g+48>>2];ha=z[g+40>>2];na=z[g+32>>2];oa=z[g+36>>2];pa=z[g+128>>2];E=(O<<4)+ma|0;s=z[E+8>>2];r=z[E+4>>2];qa=z[g+112>>2];ra=z[g+96>>2];F=z[E>>2];sa=z[g+24>>2];ta=z[g+20>>2];ua=z[g+16>>2];va=z[g+8>>2];e=e+Q|0;j=z[e+8>>2];wa=z[g>>2];ya=z[e>>2];l=z[e+20>>2];A=z[G+4>>2];za=z[g+4>>2];Aa=z[e+4>>2];D=z[G>>2];Ba=z[e+24>>2];K=z[G+8>>2];p=z[e+16>>2];v[k+12>>2]=0;v[k+28>>2]=0;t=C(t+j);j=C(y+p);l=C(u+l);p=C(t+C(C(j*A)-C(D*l)));i=C(i+Ba);o=C(C(o+ya)+C(C(l*K)-C(A*i)));n=C(C(n+Aa)+C(C(i*D)-C(K*j)));A=C(C(C(pa*s)+C(C(ra*F)+C(r*qa)))+C(C(C(va*p)+C(C(wa*o)+C(za*n)))+C(C(sa*i)+C(C(ua*j)+C(l*ta)))));y=C(j-A);z[k+16>>2]=y+z[k+16>>2];D=C(C(C(ba*s)+C(C(ca*F)+C(r*da)))+C(C(C(ha*p)+C(C(na*o)+C(n*oa)))+C(C(ea*i)+C(C(ga*j)+C(l*fa)))));u=C(l-D);z[k+20>>2]=u+z[k+20>>2];j=C(C(C(U*s)+C(C(V*F)+C(r*W)))+C(C(C(_*p)+C(C($*o)+C(n*aa)))+C(C(X*i)+C(C(Z*j)+C(l*Y)))));i=C(i-j);z[k+24>>2]=i+z[k+24>>2];t=C(p-C(C(I*D)-C(A*J)));z[k+8>>2]=T+t;n=C(n-C(C(H*A)-C(j*I)));z[k+4>>2]=S+n;o=C(o-C(C(J*j)-C(D*H)));z[k>>2]=R+o;v[e+24>>2]=0;v[e+28>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e>>2]=0;v[e+4>>2]=0;v[E+8>>2]=0;v[E+12>>2]=0;v[E>>2]=0;v[E+4>>2]=0;v[(m+2048|0)+(O<<2)>>2]=N;k=v[g+144>>2];g=v[g+148>>2];e=(N<<5)+m|0;v[e+28>>2]=0;z[e+24>>2]=i;z[e+20>>2]=u;z[e+16>>2]=y;v[e+12>>2]=0;z[e+8>>2]=t;z[e+4>>2]=n;z[e>>2]=o;N=N+1|0;L=k|L;M=g|M;e=b;b=e-1&e;d=d&d-!e;if(b|d){continue}break}}g=h^-1;b=g&L;q=q^-1;d=q&M;if(b|d){while(1){h=b;h=(Ca=Raa(h),Da=Raa(d)+32|0,Ea=h,Ea?Ca:Da);e=(v[(m+2048|0)+(w[(h+f|0)- -64|0]<<2)>>2]<<5)+m|0;j=z[e>>2];l=z[e+4>>2];i=z[e+8>>2];h=(h<<5)+Q|0;v[h+12>>2]=0;z[h+8>>2]=i+z[h+8>>2];z[h+4>>2]=l+z[h+4>>2];z[h>>2]=j+z[h>>2];j=z[e+16>>2];l=z[e+20>>2];i=z[e+24>>2];v[h+28>>2]=0;z[h+24>>2]=i+z[h+24>>2];z[h+20>>2]=l+z[h+20>>2];z[h+16>>2]=j+z[h+16>>2];h=b;b=h-1&h;d=d&d-!h;if(b|d){continue}break}}v[f+8>>2]=g&(L|ia);v[f+12>>2]=q&(M|ka)}b=(c<<5)+P|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c;c=v[b+20>>2];v[a+16>>2]=v[b+16>>2];v[a+20>>2]=c;c=v[b+28>>2];v[a+24>>2]=v[b+24>>2];v[a+28>>2]=c;xa=m+2304|0}function rI(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=xa-16|0;xa=m;v[a+356>>2]=g;v[a+352>>2]=d;t[a+365|0]=w[a+365|0]!=0|e;a:{if(b>>>0<2){break a}v[a+128>>2]=g;v[a+124>>2]=d;v[a+120>>2]=b;v[a+116>>2]=a;v[a+112>>2]=1;v[a+108>>2]=f;if(!f){break a}Ba[v[v[f>>2]+16>>2]](f);v[a+104>>2]=v[v[a+108>>2]+16>>2]}n=a+224|0;b:{if(y[a+232>>2]>=(v[a+236>>2]>>>1&1073741823)>>>0){v[a+232>>2]=0;break b}v[m+8>>2]=0;iI(n,0,m+8|0);jI(n,v[a+232>>2])}j=v[a+136>>2];if(j){e=v[a+140>>2]&2147483647;c:{while(1){i=0;if(!e){break c}e=e-1|0;i=v[j+(e<<2)>>2];if(!i){continue}break}i=(E(i)|e<<5)^31}l=i>>>5|0;while(1){e=v[j+(k<<2)>>2];if(e){o=k<<5;while(1){h=Raa(e)|o;v[m+8>>2]=h;i=v[a+232>>2];d:{if(i>>>0>=(v[a+236>>2]&2147483647)>>>0){nI(n,m+8|0);break d}v[v[a+228>>2]+(i<<2)>>2]=h;v[a+232>>2]=v[a+232>>2]+1}e=e-1&e;if(e){continue}break}}e=(k|0)==(l|0);k=k+1|0;if(!e){continue}break}}p=a+240|0;e:{if(y[a+248>>2]>=(v[a+252>>2]>>>1&1073741823)>>>0){v[a+248>>2]=0;break e}v[m+8>>2]=0;iI(p,0,m+8|0);jI(p,v[a+248>>2])}f:{if(!w[a+364|0]){q=v[a+160>>2];if(q){e=v[a+164>>2]&2147483647;g:{while(1){i=1;if(!e){break g}e=e-1|0;if(!v[q+(e<<2)>>2]){continue}break}i=(e&134217727)+1|0}j=a+388|0;k=0;while(1){l=k<<2;e=v[q+l>>2];if(e){o=k<<5;while(1){h=Raa(e);n=h|o;v[m>>2]=n;h:{if(v[v[a+136>>2]+l>>2]>>>h&1){break h}h=v[(v[a+196>>2]+(n<<3)|0)+4>>2];if((h|0)==-1){h=v[a+248>>2];if(h>>>0>=(v[a+252>>2]&2147483647)>>>0){nI(p,m);break h}v[v[a+244>>2]+(h<<2)>>2]=n;v[a+248>>2]=v[a+248>>2]+1;break h}n=v[v[a+376>>2]+(h<<1&-4)>>2];if(v[n+20>>2]!=-1){break h}h=v[a+392>>2];v[n+20>>2]=h;v[m+8>>2]=n;if(h>>>0>=(v[a+396>>2]&2147483647)>>>0){mI(j,m+8|0);break h}v[v[a+388>>2]+(h<<2)>>2]=n;v[a+392>>2]=h+1}e=e-1&e;if(e){continue}break}}k=k+1|0;if((i|0)!=(k|0)){continue}break}}e=v[a+392>>2];if(!e){break f}l=0;while(1){h=v[v[a+388>>2]+(l<<2)>>2];fI(h);i:{if(b>>>0>=2){k=v[h>>2];break i}gI(h,v[v[a+276>>2]+4>>2],v[v[a+192>>2]+4>>2]);k=v[h>>2];i=v[v[a+276>>2]+4>>2]+B(k,24)|0;z[i>>2]=z[h+36>>2];z[i+4>>2]=z[h+40>>2];z[i+8>>2]=z[h+44>>2];z[i+12>>2]=z[h+48>>2];z[i+16>>2]=z[h+52>>2];z[i+20>>2]=z[h+56>>2]}j:{if(v[v[a+136>>2]+(k>>>3&536870908)>>2]>>>k&1){break j}i=v[a+248>>2];if(i>>>0>=(v[a+252>>2]&2147483647)>>>0){nI(p,h);break j}v[v[a+244>>2]+(i<<2)>>2]=k;v[a+248>>2]=v[a+248>>2]+1}l=l+1|0;if((l|0)!=(e|0)){continue}break}if(b>>>0>=2){k=b>>>0>>0?(e>>>0)/(b>>>0)|0:e;o=a+88|0;l=0;while(1){j=wr(c,48);h=v[a+556>>2];i=v[a+552>>2];v[j+24>>2]=0;v[j+16>>2]=0;v[j+8>>2]=i;v[j+12>>2]=h;v[j+28>>2]=0;v[j+32>>2]=0;v[j>>2]=130648;v[j+36>>2]=0;v[j+40>>2]=0;v[j+40>>2]=v[a+388>>2];i=e>>>0>>0?e:k;v[j+36>>2]=i;v[j+32>>2]=l;v[j+28>>2]=a;v[j+24>>2]=1;v[j+20>>2]=o;Ba[v[v[a+88>>2]+16>>2]](o);v[j+16>>2]=v[v[j+20>>2]+16>>2];Ba[v[v[j>>2]+20>>2]](j);l=i+l|0;e=e-i|0;if(e){continue}break}}t[a+365|0]=1;Az(v[a+244>>2],v[a+248>>2]);break f}c=0;h=xa-16|0;xa=h;u[a+364>>1]=256;v[h+8>>2]=0;if(v[a+360>>2]){k=a+240|0;i=a+388|0;while(1){k:{if(v[v[a+180>>2]+(c<<2)>>2]==-1){break k}e=v[(v[a+196>>2]+(c<<3)|0)+4>>2];if((e|0)==-1){if(v[v[a+136>>2]+(c>>>3&536870908)>>2]>>>c&1){break k}e=v[a+248>>2];if(e>>>0>=(v[a+252>>2]&2147483647)>>>0){nI(k,h+8|0);break k}v[v[a+244>>2]+(e<<2)>>2]=c;v[a+248>>2]=v[a+248>>2]+1;break k}if(!(e&1)){break k}e=v[v[a+376>>2]+(e<<1&-4)>>2];if(!v[e+8>>2]){break k}l:{if(v[e+20>>2]!=-1){break l}c=v[a+392>>2];v[e+20>>2]=c;v[h+12>>2]=e;if(c>>>0>=(v[a+396>>2]&2147483647)>>>0){mI(i,h+12|0);break l}v[v[a+388>>2]+(c<<2)>>2]=e;v[a+392>>2]=c+1}fI(e);gI(e,v[v[a+276>>2]+4>>2],v[v[a+192>>2]+4>>2]);c=v[v[a+276>>2]+4>>2]+B(v[e>>2],24)|0;z[c>>2]=z[e+36>>2];z[c+4>>2]=z[e+40>>2];z[c+8>>2]=z[e+44>>2];z[c+12>>2]=z[e+48>>2];z[c+16>>2]=z[e+52>>2];z[c+20>>2]=z[e+56>>2];e=v[h+8>>2];if(v[v[a+136>>2]+(e>>>3&536870908)>>2]>>>e&1){break k}c=v[a+248>>2];if(c>>>0>=(v[a+252>>2]&2147483647)>>>0){nI(k,h+8|0);break k}v[v[a+244>>2]+(c<<2)>>2]=e;v[a+248>>2]=v[a+248>>2]+1}c=v[h+8>>2]+1|0;v[h+8>>2]=c;if(y[a+360>>2]>c>>>0){continue}break}}xa=h+16|0}j=a+256|0;m:{if(y[a+264>>2]>=(v[a+268>>2]>>>1&1073741823)>>>0){v[a+264>>2]=0;break m}v[m+8>>2]=0;iI(j,0,m+8|0);jI(j,v[a+264>>2])}l=v[a+148>>2];if(l){e=v[a+152>>2]&2147483647;n:{while(1){c=1;if(!e){break n}e=e-1|0;if(!v[l+(e<<2)>>2]){continue}break}c=(e&134217727)+1|0}k=0;while(1){e=v[l+(k<<2)>>2];if(e){o=k<<5;while(1){h=Raa(e)|o;v[m+8>>2]=h;i=v[a+264>>2];o:{if(i>>>0>=(v[a+268>>2]&2147483647)>>>0){nI(j,m+8|0);break o}v[v[a+260>>2]+(i<<2)>>2]=h;v[a+264>>2]=v[a+264>>2]+1}e=e-1&e;if(e){continue}break}}k=k+1|0;if((c|0)!=(k|0)){continue}break}}p:{if(b>>>0<=1){qI(a,b,d,f,g);break p}b=v[a+104>>2];Ba[v[v[b>>2]+72>>2]](b,a+88|0)}xa=m+16|0}function gR(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=C(0),o=0,p=0,q=0;i=v[a+20>>2];e=v[a+28>>2];m=v[v[e+976>>2]+1156>>2];a=v[e+4728>>2]&2147483647;a:{if(!a){break a}b=v[e+4724>>2];while(1){g=v[b+(f<<2)>>2];if(g){break a}f=f+1|0;if((a|0)!=(f|0)){continue}break}g=0;f=a}b=wr(m,560);a=v[v[e+1144>>2]+4>>2];n=z[e+1080>>2];c=v[e+1140>>2];d=v[e+16>>2];h=v[e+20>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=d;v[b+12>>2]=h;v[b+552>>2]=c;v[b+548>>2]=0;z[b+32>>2]=n;v[b+28>>2]=a;v[b>>2]=134780;d=w[e+1148|0]!=0;h=v[e+980>>2];o=v[e+1e3>>2];b:{if(!g){break b}while(1){c=Raa(g)|f<<5;g=g-1&g;c:{if(g){break c}a=f+1|0;k=v[e+4728>>2]&2147483647;a=a>>>0>k>>>0?a:k;j=v[e+4724>>2];while(1){f=f+1|0;if(k>>>0<=f>>>0){g=0;f=a;break c}g=v[j+(f<<2)>>2];if(!g){continue}break}}if((c|0)!=-1){a=v[(v[o+184>>2]+B(c&33554431,24)|0)+20>>2];d:{if(!a){break d}d=v[b+548>>2];c=d+1|0;v[b+548>>2]=c;v[((d<<2)+b|0)+36>>2]=a+-64;a=v[a-32>>2];if(a){while(1){if(t[v[a+28>>2]- -64|0]&1){k=v[a+8>>2];j=k&2147483647;d=j+32>>>5|0;e:{if(d>>>0<=(v[h+164>>2]&2147483647)>>>0){c=v[h+160>>2];break e}c=v[h+168>>2];c=Ba[v[v[c>>2]+8>>2]](c,d<<2,17999,438)|0;l=v[h+160>>2];f:{if(!l){break f}I9(c,l,v[h+164>>2]<<2);if(v[h+164>>2]<0){break f}l=v[h+160>>2];if(!l){break f}p=v[h+168>>2];Ba[v[v[p>>2]+12>>2]](p,l)}l=v[h+164>>2];J9((l<<2)+c|0,0,d-l<<2);v[h+164>>2]=d;v[h+160>>2]=c}c=(j>>>3&268435452)+c|0;v[c>>2]=v[c>>2]|1<>2];if(a){continue}break}c=v[b+548>>2]}d=1;if((c|0)!=128){break d}v[b+20>>2]=i;v[b+24>>2]=1;if(i){Ba[v[v[i>>2]+16>>2]](i);v[b+16>>2]=v[v[b+20>>2]+16>>2]}Ba[v[v[b>>2]+20>>2]](b);b=wr(m,560);a=v[v[e+1144>>2]+4>>2];n=z[e+1080>>2];c=v[e+1140>>2];k=v[e+16>>2];j=v[e+20>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=k;v[b+12>>2]=j;v[b+552>>2]=c;v[b+548>>2]=0;z[b+32>>2]=n;v[b+28>>2]=a;v[b>>2]=134780}if(g){continue}}break}if(!v[b+548>>2]){break b}v[b+20>>2]=i;v[b+24>>2]=1;if(i){Ba[v[v[i>>2]+16>>2]](i);v[b+16>>2]=v[v[b+20>>2]+16>>2]}Ba[v[v[b>>2]+20>>2]](b)}b=v[e+4740>>2]&2147483647;g:{if(!b){break g}c=v[e+4736>>2];a=0;while(1){f=v[c+(a<<2)>>2];if(!f){a=a+1|0;if((b|0)!=(a|0)){continue}break g}break}while(1){c=Raa(f)|a<<5;f=f-1&f;h:{if(f){break h}f=a+1|0;g=v[e+4740>>2]&2147483647;b=f>>>0>g>>>0?f:g;k=v[e+4736>>2];while(1){a=a+1|0;if(g>>>0<=a>>>0){f=0;a=b;break h}f=v[k+(a<<2)>>2];if(!f){continue}break}}if((c|0)==-1){break g}c=v[v[(v[o+184>>2]+B(c&33554431,24)|0)+20>>2]+16>>2];if(c){b=wr(m,48);d=v[v[e+1144>>2]+4>>2];n=z[e+1080>>2];g=v[e+1140>>2];k=v[e+16>>2];j=v[e+20>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=k;v[b+12>>2]=j;v[b+40>>2]=g;z[b+32>>2]=n;v[b+28>>2]=d;v[b>>2]=134836;v[b+36>>2]=c;v[b+20>>2]=i;v[b+24>>2]=1;if(i){Ba[v[v[i>>2]+16>>2]](i);v[b+16>>2]=v[v[b+20>>2]+16>>2];c=v[b>>2]}else{c=134836}Ba[v[c+20>>2]](b);d=1}if(f){continue}break}}t[e+1148|0]=d;a=0;f=0;b=v[e+2520>>2]&2147483647;i:{if(!b){break i}c=v[e+2516>>2];while(1){f=v[c+(a<<2)>>2];if(f){break i}a=a+1|0;if((b|0)!=(a|0)){continue}break}f=0;a=b}o=v[v[e+976>>2]+1816>>2];k=v[v[e+980>>2]+276>>2];d=wr(m,1064);b=v[e+16>>2];c=v[e+20>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=b;v[d+12>>2]=c;v[d+1060>>2]=0;v[d+32>>2]=k;v[d+28>>2]=o;v[d>>2]=134892;j:{if(!f){break j}j=0;while(1){p=Raa(f);b=a;g=p|b<<5;f=f-1&f;k:{if(f){break k}a=b+1|0;l=v[e+2520>>2]&2147483647;c=a>>>0>l>>>0?a:l;q=v[e+2516>>2];a=b;while(1){a=a+1|0;if(l>>>0<=a>>>0){f=0;a=c;break k}f=v[q+(a<<2)>>2];if(!f){continue}break}}if((g|0)!=-1){c=v[e+980>>2];l:{if(g>>>0>=y[c+200>>2]){break l}l=v[v[c+196>>2]+(g<<3)>>2]&-4;if(!l){break l}g=g+32>>>5|0;m:{if(g>>>0<=(v[h+164>>2]&2147483647)>>>0){c=v[h+160>>2];break m}c=v[h+168>>2];c=Ba[v[v[c>>2]+8>>2]](c,g<<2,17999,438)|0;j=v[h+160>>2];n:{if(!j){break n}I9(c,j,v[h+164>>2]<<2);if(v[h+164>>2]<0){break n}j=v[h+160>>2];if(!j){break n}q=v[h+168>>2];Ba[v[v[q>>2]+12>>2]](q,j)}j=v[h+164>>2];J9((j<<2)+c|0,0,g-j<<2);v[h+164>>2]=g;v[h+160>>2]=c}j=1;b=((b&134217727)<<2)+c|0;v[b>>2]=v[b>>2]|1<>2];c=b+1|0;v[d+1060>>2]=c;v[((b<<2)+d|0)+36>>2]=l;if((c|0)!=256){break l}v[d+20>>2]=i;v[d+24>>2]=1;if(i){Ba[v[v[i>>2]+16>>2]](i);v[d+16>>2]=v[v[d+20>>2]+16>>2]}Ba[v[v[d>>2]+20>>2]](d);d=wr(m,1064);b=v[e+16>>2];c=v[e+20>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=b;v[d+12>>2]=c;v[d+1060>>2]=0;v[d+32>>2]=k;v[d+28>>2]=o;v[d>>2]=134892}if(f){continue}}break}if(!j){break j}t[v[e+1140>>2]+16|0]=1;t[v[v[e+976>>2]+1816>>2]+20|0]=1}if(v[d+1060>>2]){v[d+20>>2]=i;v[d+24>>2]=1;if(i){Ba[v[v[i>>2]+16>>2]](i);v[d+16>>2]=v[v[d+20>>2]+16>>2]}Ba[v[v[d>>2]+20>>2]](d)}J9(v[e+2516>>2],0,v[e+2520>>2]<<2)}function P3(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;n=xa-16|0;xa=n;a:{if(!pX(77,69,83,72,15,c,b)){break a}kX(Ba[v[v[a>>2]+8>>2]](a)|0,c,b);f=v[a+12>>2];g=v[f+80>>2]!=0;g=v[f+48>>2]?g|2:g;g=v[f+52>>2]?g|16:g;q=w[d+14|0]?g|32:g;g=v[f+72>>2];h=v[f+68>>2];b:{c:{if(h){f=0;if((h|0)!=1){l=h&-2;while(1){k=g+B(f|1,12)|0;j=v[k+8>>2];m=v[k+4>>2];o=v[k>>2];k=g+B(f,12)|0;p=v[k+8>>2];r=v[k+4>>2];k=v[k>>2];e=e>>>0>>0?k:e;e=e>>>0>>0?r:e;e=e>>>0

>>0?p:e;e=e>>>0>>0?o:e;e=e>>>0>>0?m:e;e=e>>>0>>0?j:e;f=f+2|0;i=i+2|0;if((l|0)!=(i|0)){continue}break}}if(h&1){f=g+B(f,12)|0;i=v[f+8>>2];h=v[f+4>>2];f=v[f>>2];e=e>>>0>>0?f:e;e=e>>>0>>0?h:e;e=e>>>0>>0?i:e}i=(w[d+24|0]&8)>>>3|e>>>0>65535;h=8;if(e>>>0>255){break b}break c}i=(w[d+24|0]&8)>>>3|0}h=4}f=0;k=q|(i?0:h);kX(k,c,b);kX(v[v[a+12>>2]+12>>2],c,b);kX(v[v[a+12>>2]+68>>2],c,b);e=v[a+12>>2];nX(v[e+16>>2],B(v[e+12>>2],3),c,b);q=k&4;d:{if(q){e=v[a+12>>2];if(!B(v[e+68>>2],3)){break d}while(1){t[n+15|0]=v[g+(f<<2)>>2];Ba[v[v[b>>2]>>2]](b,n+15|0,1)|0;f=f+1|0;e=v[a+12>>2];if(f>>>0>2],3)>>>0){continue}break}break d}e=v[a+12>>2];f=B(v[e+68>>2],3);if(k&8){if(!f){break d}f=0;while(1){jX(x[g+(f<<2)>>1],c,b);f=f+1|0;e=v[a+12>>2];if(f>>>0>2],3)>>>0){continue}break}break d}nX(g,f,c,b);e=v[a+12>>2]}g=v[e+80>>2];if(g){oX(g,v[e+68>>2],c,b);e=v[a+12>>2]}f=v[e+48>>2];if(f){i=0;g=0;e=v[e+68>>2];e:{if(!e){break e}h=e&3;f:{if(e-1>>>0<3){e=0;break f}l=e&-4;e=0;while(1){j=v[f+12>>2];m=v[f+8>>2];o=v[f+4>>2];p=v[f>>2];e=e>>>0

>>0?p:e;e=e>>>0>>0?o:e;e=e>>>0>>0?m:e;e=e>>>0>>0?j:e;f=f+16|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}if(h){while(1){g=v[f>>2];e=e>>>0>>0?g:e;f=f+4|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}}g=e}kX(g,c,b);f=v[a+12>>2];e=v[f+68>>2];i=v[f+48>>2];h=xa-16|0;xa=h;g:{if(g>>>0<=255){if(!e){break g}g=e&1;f=0;if((e|0)!=1){l=e&-2;e=0;while(1){j=f<<2;t[h+9|0]=v[j+i>>2];Ba[v[v[b>>2]>>2]](b,h+9|0,1)|0;t[h+9|0]=v[(j|4)+i>>2];Ba[v[v[b>>2]>>2]](b,h+9|0,1)|0;f=f+2|0;e=e+2|0;if((l|0)!=(e|0)){continue}break}}if(!g){break g}t[h+9|0]=v[(f<<2)+i>>2];Ba[v[v[b>>2]>>2]](b,h+9|0,1)|0;break g}if(g>>>0<=65535){if(!e){break g}if(!c){g=e&1;f=0;if((e|0)!=1){l=e&-2;e=0;while(1){j=f<<2;u[h+10>>1]=v[j+i>>2];Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;u[h+10>>1]=v[(j|4)+i>>2];Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;f=f+2|0;e=e+2|0;if((l|0)!=(e|0)){continue}break}}if(!g){break g}u[h+10>>1]=v[(f<<2)+i>>2];Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;break g}g=e&1;f=0;if((e|0)!=1){l=e&-2;e=0;while(1){j=f<<2;m=x[j+i>>1];u[h+10>>1]=m<<8|m>>>8;Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;j=x[(j|4)+i>>1];u[h+10>>1]=j<<8|j>>>8;Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;f=f+2|0;e=e+2|0;if((l|0)!=(e|0)){continue}break}}if(!g){break g}g=x[(f<<2)+i>>1];u[h+10>>1]=g<<8|g>>>8;Ba[v[v[b>>2]>>2]](b,h+10|0,2)|0;break g}if(c){if(!e){break g}while(1){g=v[i>>2];v[h+12>>2]=g<<24|g<<8&16711680|(g>>>8&65280|g>>>24);Ba[v[v[b>>2]>>2]](b,h+12|0,4)|0;i=i+4|0;e=e-1|0;if(e){continue}break}break g}Ba[v[v[b>>2]>>2]](b,i,e<<2)|0}xa=h+16|0;e=v[a+12>>2]}g=v[e+52>>2];if(g){nX(g,B(v[e+68>>2],3),c,b)}Ba[v[v[a>>2]+16>>2]](a,b,c);lX(z[v[a+12>>2]+44>>2],c,b);lX(z[v[a+12>>2]+20>>2],c,b);lX(z[v[a+12>>2]+24>>2],c,b);lX(z[v[a+12>>2]+28>>2],c,b);lX(z[v[a+12>>2]+32>>2],c,b);lX(z[v[a+12>>2]+36>>2],c,b);lX(z[v[a+12>>2]+40>>2],c,b);g=v[a+12>>2];h:{if(v[g+76>>2]){kX(v[g+68>>2],c,b);g=v[a+12>>2];Ba[v[v[b>>2]>>2]](b,v[g+76>>2],v[g+68>>2])|0;break h}kX(0,c,b)}if(!w[d+14|0]){break a}d=v[a+12>>2];g=v[d+56>>2];i:{if(q){e=v[d+68>>2];if(!B(e,3)){break i}f=0;while(1){t[n+14|0]=v[g+(f<<2)>>2];Ba[v[v[b>>2]>>2]](b,n+14|0,1)|0;f=f+1|0;d=v[a+12>>2];e=v[d+68>>2];if(f>>>0>>0){continue}break}break i}e=v[d+68>>2];f=B(e,3);if(k&8){if(!f){break i}f=0;while(1){jX(x[g+(f<<2)>>1],c,b);f=f+1|0;d=v[a+12>>2];e=v[d+68>>2];if(f>>>0>>0){continue}break}break i}nX(g,f,c,b);d=v[a+12>>2];e=v[d+68>>2]}nX(v[d+60>>2],e<<2,c,b);d=v[a+12>>2];nX(v[d+64>>2],v[d+68>>2],c,b);a=v[v[a+12>>2]+84>>2];e=0;d=xa-16|0;xa=d;t[d+15|0]=66;t[d+14|0]=86;t[d+13|0]=51;t[d+12|0]=50;Ba[v[v[b>>2]>>2]](b,d+15|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+14|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+13|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+12|0,1)|0;kX(2,c,b);lX(z[a+4>>2],c,b);lX(z[a+8>>2],c,b);lX(z[a+12>>2],c,b);lX(z[a+16>>2],c,b);kX(v[a+36>>2],c,b);kX(v[a+32>>2],c,b);if(v[a+32>>2]){while(1){g=v[a+28>>2]+B(e,1168)|0;f=v[g+1152>>2];kX(f,c,b);nX(g+1024|0,v[g+1152>>2],c,b);f=f<<2;nX(g,f,c,b);nX(g+512|0,f,c,b);e=e+1|0;if(e>>>0>2]){continue}break}}xa=d+16|0}xa=n+16|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;g=v[a+256>>2];a:{if(!g){break a}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break a}j=v[d+4>>2];h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}b:{if(b>>>0>=h>>>0){break b}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break b}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+264>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;g=v[a+268>>2];c:{if(!g){break c}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break c}j=v[d+4>>2];c=0;h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}d:{if(b>>>0>=h>>>0){break d}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break d}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+268>>2]=0;v[a+272>>2]=0;v[a+276>>2]=0;v[a+280>>2]=0;g=v[a+204>>2];e:{if(!g){break e}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break e}j=v[d+4>>2];c=0;h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}f:{if(b>>>0>=h>>>0){break f}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break f}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+212>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;g=v[a+324>>2];g:{if(!g){break g}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break g}j=v[d+4>>2];c=0;h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}h:{if(b>>>0>=h>>>0){break h}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break h}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+324>>2]=0;v[a+328>>2]=0;v[a+332>>2]=0;g=v[a+372>>2];i:{if(!g){break i}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break i}j=v[d+4>>2];c=0;h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}j:{if(b>>>0>=h>>>0){break j}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break j}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+372>>2]=0;v[a+376>>2]=0;v[a+380>>2]=0;g=v[a+420>>2];k:{if(!g){break k}d=v[a+4>>2];b=v[d+16>>2];if(!(b>>>0<=g>>>0&g>>>0>2]>>>0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break k}j=v[d+4>>2];c=0;h=v[d+8>>2];f=h;while(1){i=c;c=c+1|0;b=f;f=b-1|0;e=j+(f<<2)|0;if(g>>>0>y[e>>2]){continue}break}l:{if(b>>>0>=h>>>0){break l}f=i&3;if(f){c=0;while(1){v[e>>2]=v[v[d+4>>2]+(b<<2)>>2];b=b+1|0;e=e+4|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(i-1>>>0<3){break l}while(1){c=b<<2;v[e>>2]=v[c+v[d+4>>2]>>2];v[e+4>>2]=v[(c+v[d+4>>2]|0)+4>>2];v[e+8>>2]=v[(c+v[d+4>>2]|0)+8>>2];v[e+12>>2]=v[(c+v[d+4>>2]|0)+12>>2];e=e+16|0;b=b+4|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=h-1}v[a+420>>2]=0;v[a+424>>2]=0;v[a+428>>2]=0;a=a+216|0;b=v[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;f=v[a+8>>2];m:{if((b|0)==(f|0)){break m}c=v[a+16>>2];if(c>>>0>b>>>0&(c|0)==(f|0)){break m}f=b>>>0>c>>>0;b=f?b:c;v[a+8>>2]=b;v[a+36>>2]=b-1;c=1;UL(a,b>>>0<=v[a+12>>2]>>>2>>>0|f?c:b>>>0<=v[a+32>>2]>>>2>>>0)}}function vB(a,b,c,d){var e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0;e=xa-320|0;xa=e;f=v[a>>2];a:{if((f|0)==v[a+4>>2]){Ba[v[v[f>>2]+152>>2]](f,x[a+8>>1],x[a+10>>1],e+160|0,e+128|0);f=v[e+172>>2];v[e+312>>2]=v[e+168>>2];v[e+316>>2]=f;f=v[e+164>>2];v[e+304>>2]=v[e+160>>2];v[e+308>>2]=f;f=v[e+180>>2];v[e+288>>2]=v[e+176>>2];v[e+292>>2]=f;f=v[e+188>>2];v[e+296>>2]=v[e+184>>2];v[e+300>>2]=f;f=v[e+132>>2];v[e+272>>2]=v[e+128>>2];v[e+276>>2]=f;f=v[e+140>>2];v[e+280>>2]=v[e+136>>2];v[e+284>>2]=f;f=v[e+148>>2];v[e+256>>2]=v[e+144>>2];v[e+260>>2]=f;f=v[e+156>>2];v[e+264>>2]=v[e+152>>2];v[e+268>>2]=f;f=v[a>>2];Ba[v[v[f>>2]+120>>2]](e+96|0,f,x[a+8>>1]);f=v[a+4>>2];Ba[v[v[f>>2]+120>>2]](e- -64|0,f,x[a+10>>1]);f=v[e+108>>2];v[e+248>>2]=v[e+104>>2];v[e+252>>2]=f;f=v[e+100>>2];v[e+240>>2]=v[e+96>>2];v[e+244>>2]=f;f=v[e+116>>2];v[e+224>>2]=v[e+112>>2];v[e+228>>2]=f;f=v[e+124>>2];v[e+232>>2]=v[e+120>>2];v[e+236>>2]=f;f=v[e+68>>2];v[e+208>>2]=v[e+64>>2];v[e+212>>2]=f;f=v[e+76>>2];v[e+216>>2]=v[e+72>>2];v[e+220>>2]=f;f=v[e+84>>2];v[e+192>>2]=v[e+80>>2];v[e+196>>2]=f;f=v[e+92>>2];v[e+200>>2]=v[e+88>>2];v[e+204>>2]=f;break a}g=x[a+8>>1];b:{if((g|0)==65535){g=v[f+4>>2];h=v[f>>2];i=z[f+8>>2];v[e+316>>2]=0;z[e+312>>2]=i;v[e+304>>2]=h;v[e+308>>2]=g;i=z[f+24>>2];g=v[f+20>>2];h=v[f+16>>2];v[e+300>>2]=0;z[e+296>>2]=i;v[e+288>>2]=h;v[e+292>>2]=g;i=z[f+56>>2];g=v[f+52>>2];h=v[f+48>>2];v[e+252>>2]=0;z[e+248>>2]=i;v[e+240>>2]=h;v[e+244>>2]=g;i=z[f+40>>2];g=v[f+36>>2];f=v[f+32>>2];v[e+236>>2]=0;z[e+232>>2]=i;v[e+224>>2]=f;v[e+228>>2]=g;break b}Ba[v[v[f>>2]+156>>2]](e+160|0,f,g);f=v[a>>2];Ba[v[v[f>>2]+120>>2]](e+128|0,f,x[a+8>>1]);f=v[e+172>>2];v[e+312>>2]=v[e+168>>2];v[e+316>>2]=f;f=v[e+164>>2];v[e+304>>2]=v[e+160>>2];v[e+308>>2]=f;f=v[e+180>>2];v[e+288>>2]=v[e+176>>2];v[e+292>>2]=f;f=v[e+188>>2];v[e+296>>2]=v[e+184>>2];v[e+300>>2]=f;f=v[e+132>>2];v[e+240>>2]=v[e+128>>2];v[e+244>>2]=f;f=v[e+140>>2];v[e+248>>2]=v[e+136>>2];v[e+252>>2]=f;f=v[e+148>>2];v[e+224>>2]=v[e+144>>2];v[e+228>>2]=f;f=v[e+156>>2];v[e+232>>2]=v[e+152>>2];v[e+236>>2]=f}f=x[a+10>>1];if((f|0)==65535){f=v[a+4>>2];g=v[f+4>>2];h=v[f>>2];i=z[f+8>>2];v[e+284>>2]=0;z[e+280>>2]=i;v[e+272>>2]=h;v[e+276>>2]=g;i=z[f+24>>2];g=v[f+20>>2];h=v[f+16>>2];v[e+268>>2]=0;z[e+264>>2]=i;v[e+256>>2]=h;v[e+260>>2]=g;i=z[f+56>>2];g=v[f+52>>2];h=v[f+48>>2];v[e+220>>2]=0;z[e+216>>2]=i;v[e+208>>2]=h;v[e+212>>2]=g;i=z[f+40>>2];g=v[f+36>>2];f=v[f+32>>2];v[e+204>>2]=0;z[e+200>>2]=i;v[e+192>>2]=f;v[e+196>>2]=g;break a}g=v[a+4>>2];Ba[v[v[g>>2]+156>>2]](e+160|0,g,f);f=v[a+4>>2];Ba[v[v[f>>2]+120>>2]](e+128|0,f,x[a+10>>1]);f=v[e+172>>2];v[e+280>>2]=v[e+168>>2];v[e+284>>2]=f;f=v[e+164>>2];v[e+272>>2]=v[e+160>>2];v[e+276>>2]=f;f=v[e+180>>2];v[e+256>>2]=v[e+176>>2];v[e+260>>2]=f;f=v[e+188>>2];v[e+264>>2]=v[e+184>>2];v[e+268>>2]=f;f=v[e+132>>2];v[e+208>>2]=v[e+128>>2];v[e+212>>2]=f;f=v[e+140>>2];v[e+216>>2]=v[e+136>>2];v[e+220>>2]=f;f=v[e+148>>2];v[e+192>>2]=v[e+144>>2];v[e+196>>2]=f;f=v[e+156>>2];v[e+200>>2]=v[e+152>>2];v[e+204>>2]=f}v[e+168>>2]=0;v[e+172>>2]=0;v[e+160>>2]=0;v[e+164>>2]=0;v[e+136>>2]=0;v[e+140>>2]=0;v[e+128>>2]=0;v[e+132>>2]=0;v[e+104>>2]=0;v[e+108>>2]=0;v[e+96>>2]=0;v[e+100>>2]=0;v[e+72>>2]=0;v[e+76>>2]=0;v[e+64>>2]=0;v[e+68>>2]=0;uB(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=x[a+8>>1];f=v[a>>2];c:{if((f|0)==v[a+4>>2]){Ba[v[v[f>>2]+132>>2]](f,g,e+160|0,e+96|0,x[a+10>>1],e+128|0,e- -64|0,v[d+32>>2],v[d+36>>2]);break c}d:{if((g|0)==65535){g=v[e+308>>2];h=v[e+304>>2];z[f+8>>2]=z[e+312>>2];v[f>>2]=h;v[f+4>>2]=g;b=z[e+296>>2];g=v[e+292>>2];f=v[a>>2];v[f+16>>2]=v[e+288>>2];v[f+20>>2]=g;z[f+24>>2]=b;break d}h=v[d+36>>2];j=v[d+32>>2];l=v[v[f>>2]+128>>2];k=v[e+172>>2];v[e+56>>2]=v[e+168>>2];v[e+60>>2]=k;k=v[e+164>>2];v[e+48>>2]=v[e+160>>2];v[e+52>>2]=k;k=v[e+100>>2];v[e+32>>2]=v[e+96>>2];v[e+36>>2]=k;k=v[e+108>>2];v[e+40>>2]=v[e+104>>2];v[e+44>>2]=k;Ba[l|0](f,g,e+48|0,e+32|0,j,h)}f=x[a+10>>1];if((f|0)==65535){f=v[e+276>>2];g=v[e+272>>2];d=v[a+4>>2];z[d+8>>2]=z[e+280>>2];v[d>>2]=g;v[d+4>>2]=f;b=z[e+264>>2];d=v[e+260>>2];a=v[a+4>>2];v[a+16>>2]=v[e+256>>2];v[a+20>>2]=d;z[a+24>>2]=b;break c}g=v[d+36>>2];d=v[d+32>>2];a=v[a+4>>2];h=v[v[a>>2]+128>>2];j=v[e+140>>2];v[e+24>>2]=v[e+136>>2];v[e+28>>2]=j;j=v[e+132>>2];v[e+16>>2]=v[e+128>>2];v[e+20>>2]=j;j=v[e+68>>2];v[e>>2]=v[e+64>>2];v[e+4>>2]=j;j=v[e+76>>2];v[e+8>>2]=v[e+72>>2];v[e+12>>2]=j;Ba[h|0](a,f,e+16|0,e,d,g)}xa=e+320|0}function CZ(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=0;j=xa-6752|0;xa=j;ea=v[c+4>>2];v[j+6744>>2]=c;v[j+6740>>2]=ea;u=z[c+8>>2];r=z[c+12>>2];z[j+6736>>2]=C(1)/z[c+16>>2];z[j+6728>>2]=C(1)/r;z[j+6732>>2]=C(1)/u;p=z[d+4>>2];m=C(p+p);u=z[d+8>>2];k=C(m*u);l=z[d>>2];r=C(l+l);s=z[d+12>>2];x=C(r*s);M=C(k-x);z[j+6708>>2]=M;P=C(k+x);z[j+6700>>2]=P;k=C(C(1)-C(l*r));x=C(p*m);Q=C(k-x);z[j+6712>>2]=Q;q=k;k=C(u+u);n=C(u*k);R=C(q-n);z[j+6696>>2]=R;o=C(r*u);m=C(m*s);S=C(o+m);z[j+6704>>2]=S;T=C(C(C(1)-x)-n);z[j+6680>>2]=T;r=C(r*p);k=C(k*s);U=C(r-k);z[j+6692>>2]=U;V=C(r+k);z[j+6684>>2]=V;W=C(o-m);z[j+6688>>2]=W;K=z[d+16>>2];z[j+6716>>2]=K;L=z[d+20>>2];z[j+6720>>2]=L;E=z[d+24>>2];z[j+6724>>2]=E;m=z[e+4>>2];o=C(m+m);r=z[e+8>>2];q=C(o*r);x=z[e>>2];n=C(x+x);k=z[e+12>>2];A=C(n*k);z[j+6660>>2]=q-A;z[j+6652>>2]=q+A;q=C(C(1)-C(x*n));A=C(m*o);z[j+6664>>2]=q-A;y=q;q=C(r+r);F=C(r*q);z[j+6648>>2]=y-F;y=C(n*r);o=C(o*k);z[j+6656>>2]=y+o;n=C(n*m);q=C(q*k);z[j+6644>>2]=n-q;z[j+6640>>2]=y-o;z[j+6636>>2]=n+q;z[j+6632>>2]=C(C(1)-A)-F;F=z[e+16>>2];z[j+6668>>2]=F;y=z[e+20>>2];z[j+6672>>2]=y;G=z[e+24>>2];z[j+6676>>2]=G;v[j+6628>>2]=1088;t[j+6616|0]=1;c=j+2264|0;v[j+6620>>2]=c;n=z[f>>2];o=z[f+8>>2];q=z[f+4>>2];v[j+1312>>2]=0;v[j+24>>2]=142612;v[j+28>>2]=c;J9(j+1184|0,255,128);v[j+2084>>2]=0;J9(j+1956|0,255,128);v[j+2248>>2]=g;v[j+2244>>2]=e;v[j+2240>>2]=d;z[j+2236>>2]=q;t[j+2233|0]=i;z[j+2228>>2]=o;z[j+2224>>2]=n;v[j+2220>>2]=h;v[j+2208>>2]=a;n=C(F-K);n=C(n+n);o=C(y-L);o=C(o+o);q=C(G-E);q=C(q+q);A=C(C(C(C(-l)*n)-C(o*p))-C(u*q));H=C(C(s*s)+C(-.5));z[j+2180>>2]=C(C(q*H)+C(s*C(C(p*n)-C(l*o))))-C(u*A);z[j+2176>>2]=C(C(o*H)+C(s*C(C(l*q)-C(u*n))))-C(p*A);z[j+2172>>2]=C(C(n*H)+C(s*C(C(u*o)-C(p*q))))-C(l*A);H=C(m*u);B=C(s*x);N=C(k*l);J=C(p*r);o=C(H+C(C(B-N)-J));n=C(o+o);O=C(r*l);I=C(s*m);X=C(k*p);Y=C(u*x);q=C(O+C(C(I-X)-Y));A=C(q+q);Z=C(C(1)-C(o*n));_=C(q*A);z[j+2168>>2]=Z-_;$=C(x*p);aa=C(s*r);ba=C(k*u);ca=C(l*m);o=C($+C(C(aa-ba)-ca));da=C(o*A);u=C(C(r*u)+C(C(m*p)+C(C(k*s)+C(l*x))));p=C(u*n);z[j+2164>>2]=da-p;s=C(o*n);l=C(u*A);z[j+2160>>2]=s+l;z[j+2156>>2]=da+p;p=C(o+o);o=C(o*p);z[j+2152>>2]=Z-o;n=C(q*n);p=C(u*p);z[j+2148>>2]=n-p;z[j+2144>>2]=s-l;z[j+2140>>2]=n+p;z[j+2136>>2]=C(C(1)-_)-o;p=C(K-F);p=C(p+p);s=C(L-y);s=C(s+s);l=C(E-G);l=C(l+l);n=C(C(C(C(-x)*p)-C(s*m))-C(r*l));o=C(C(k*k)+C(-.5));q=C(C(C(l*o)+C(k*C(C(m*p)-C(x*s))))-C(r*n));z[j+2132>>2]=q;A=C(C(C(s*o)+C(k*C(C(x*l)-C(r*p))))-C(m*n));z[j+2128>>2]=A;x=C(C(C(p*o)+C(k*C(C(r*s)-C(m*l))))-C(x*n));z[j+2124>>2]=x;s=C(J+C(C(N-B)-H));m=C(s+s);p=C(Y+C(C(X-I)-O));k=C(p+p);l=C(C(1)-C(s*m));J=C(p*k);n=C(l-J);z[j+2120>>2]=n;r=C(ca+C(C(ba-aa)-$));y=C(r*k);G=C(u*m);o=C(y-G);z[j+2116>>2]=o;B=C(r*m);k=C(u*k);F=C(B+k);z[j+2112>>2]=F;y=C(y+G);z[j+2108>>2]=y;I=l;l=C(r+r);O=C(r*l);G=C(I-O);z[j+2104>>2]=G;m=C(p*m);l=C(u*l);H=C(m-l);z[j+2100>>2]=H;B=C(B-k);z[j+2096>>2]=B;N=C(m+l);z[j+2092>>2]=N;J=C(C(C(1)-J)-O);z[j+2088>>2]=J;v[j+2216>>2]=j+6632;v[j+2212>>2]=j+6680;c=j+2252|0;t[c|0]=0;v[j+6624>>2]=0;m=z[a>>2];k=z[a+4>>2];l=z[a+8>>2];z[j+2204>>2]=E+C(C(C(W*m)+C(P*k))+C(Q*l));z[j+2200>>2]=L+C(C(C(V*m)+C(R*k))+C(M*l));z[j+2196>>2]=K+C(C(C(T*m)+C(U*k))+C(S*l));z[j+2192>>2]=q+C(C(C(B*m)+C(y*k))+C(n*l));z[j+2188>>2]=A+C(C(C(N*m)+C(G*k))+C(o*l));z[j+2184>>2]=x+C(C(C(J*m)+C(H*k))+C(F*l));a=j+6728|0;v[j+2256>>2]=a;k=z[b+12>>2];l=z[b>>2];K=C(C(k-l)*C(.5));I=y;E=z[b+16>>2];y=z[b+4>>2];L=C(C(E-y)*C(.5));M=C(C(D(C(B*K)))+C(D(C(I*L))));I=n;m=z[b+20>>2];B=z[b+8>>2];n=C(C(m-B)*C(.5));M=C(M+C(D(C(I*n))));I=q;m=C(C(B+m)*C(.5));m=C(m+m);k=C(C(l+k)*C(.5));k=C(k+k);l=C(C(y+E)*C(.5));l=C(l+l);E=C(C(r*m)+C(C(s*k)+C(p*l)));q=C(C(u*u)+C(-.5));y=C(I+C(C(r*E)+C(C(m*q)+C(u*C(C(s*l)-C(k*p))))));z[j+20>>2]=M+y;o=C(C(C(D(C(N*K)))+C(D(C(G*L))))+C(D(C(o*n))));A=C(A+C(C(p*E)+C(C(l*q)+C(u*C(C(r*k)-C(m*s))))));z[j+16>>2]=o+A;n=C(C(C(D(C(J*K)))+C(D(C(H*L))))+C(D(C(F*n))));u=C(x+C(C(s*E)+C(C(k*q)+C(u*C(C(p*m)-C(l*r))))));z[j+12>>2]=n+u;z[j+8>>2]=y-M;z[j+4>>2]=A-o;z[j>>2]=u-n;b=a;a=j+24|0;m$(b,e,j,0,a);AZ(a|4);b=w[c|0];a=v[j+6628>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=v[j+6620>>2];if((a|0)==(j+2264|0)|!a){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=j+6752|0;return(b|0)!=0}function Sz(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,u=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0;l=v[a+36>>2];b=xa-80|0;xa=b;o=v[a+32>>2];p=v[o+412>>2];g=v[a+28>>2];F=v[g+108>>2];G=v[g+104>>2];k=wr(v[g+584>>2],32);d=v[g+604>>2];e=v[g+600>>2];v[k+24>>2]=0;v[k+16>>2]=0;v[k+8>>2]=e;v[k+12>>2]=d;v[k+28>>2]=g;v[k>>2]=128948;v[k+20>>2]=l;v[k+24>>2]=1;if(l){Ba[v[v[l>>2]+16>>2]](l);v[k+16>>2]=v[v[k+20>>2]+16>>2]}if(p){C=v[o+408>>2];x=g+544|0;d=0;l=0;while(1){v[b+32>>2]=0;v[b+28>>2]=v[g+428>>2]+(D<<2);e=u<<2;v[b+24>>2]=e+v[g+416>>2];v[b+36>>2]=v[g+520>>2]+(E<<4);c=y<<5;v[b+56>>2]=c+v[g+344>>2];v[b+60>>2]=c+v[g+356>>2];v[b+64>>2]=c+v[g+368>>2];v[b+68>>2]=v[g+380>>2]+(y<<3);v[b+72>>2]=v[g+392>>2]+(u<<5);c=v[g+404>>2];v[b+40>>2]=(d<<2)+C;v[b+76>>2]=c+e;i=v[g+496>>2];v[b+48>>2]=i;v[b+52>>2]=e+v[g+508>>2];z=0;m=0;n=0;e=0;q=0;a:{if(d>>>0>=p>>>0){break a}f=v[o+256>>2];l=d;while(1){if(!(!z|n>>>0>>0)|m>>>0>=F>>>0){break a}c=f+B(v[(l<<2)+C>>2],44)|0;q=v[c+36>>2]+q|0;e=v[c+40>>2]+e|0;z=q+e|0;n=v[c+8>>2]+n|0;m=v[c+12>>2]+m|0;l=l+1|0;if((p|0)!=(l|0)){continue}break}l=p}v[b+44>>2]=l-d;v[b+20>>2]=e;v[b+16>>2]=q;d=m&2147483647;v[b+12>>2]=d|v[b+12>>2]&-2147483648;v[b+8>>2]=n;if((d|0)!=(0-n|0)){r=v[g+532>>2]+u|0;e=v[g+540>>2];A=w[g+65|0];f=v[g+584>>2];j=wr(f,20);v[j>>2]=0;d=v[b+12>>2];v[j+4>>2]=v[b+8>>2];v[j+8>>2]=d;d=v[b+20>>2];v[j+12>>2]=v[b+16>>2];v[j+16>>2]=d;d=wr(f,120);c=v[g+532>>2];h=v[g+600>>2];s=v[g+604>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=h;v[d+12>>2]=s;v[d+32>>2]=j;v[d+28>>2]=g;v[d>>2]=128444;h=v[b+28>>2];v[d+36>>2]=v[b+24>>2];v[d+40>>2]=h;h=v[b+36>>2];v[d+44>>2]=v[b+32>>2];v[d+48>>2]=h;h=v[b+44>>2];v[d+52>>2]=v[b+40>>2];v[d+56>>2]=h;h=v[b+52>>2];v[d+60>>2]=v[b+48>>2];v[d+64>>2]=h;h=v[b+60>>2];v[d+68>>2]=v[b+56>>2];v[d+72>>2]=h;h=v[b+68>>2];v[d+76>>2]=v[b+64>>2];v[d+80>>2]=h;h=v[b+76>>2];v[d+84>>2]=v[b+72>>2];v[d+88>>2]=h;t[d+116|0]=A;v[d+112>>2]=x;v[d+108>>2]=e;v[d+104>>2]=i;v[d+100>>2]=o;v[d+96>>2]=c;v[d+92>>2]=r;e=wr(f,104);c=v[g+600>>2];i=v[g+604>>2];v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=c;v[e+12>>2]=i;v[e+32>>2]=j;v[e+28>>2]=g;v[e>>2]=128612;c=v[b+28>>2];v[e+36>>2]=v[b+24>>2];v[e+40>>2]=c;c=v[b+36>>2];v[e+44>>2]=v[b+32>>2];v[e+48>>2]=c;c=v[b+44>>2];v[e+52>>2]=v[b+40>>2];v[e+56>>2]=c;c=v[b+52>>2];v[e+60>>2]=v[b+48>>2];v[e+64>>2]=c;c=v[b+60>>2];v[e+68>>2]=v[b+56>>2];v[e+72>>2]=c;c=v[b+68>>2];v[e+76>>2]=v[b+64>>2];v[e+80>>2]=c;c=v[b+76>>2];v[e+84>>2]=v[b+72>>2];v[e+88>>2]=c;v[e+96>>2]=x;v[e+92>>2]=r;i=wr(f,48);c=v[g+600>>2];h=v[g+604>>2];v[i+24>>2]=0;v[i+16>>2]=0;v[i+20>>2]=0;v[i+8>>2]=c;v[i+12>>2]=h;t[i+44|0]=A;v[i+40>>2]=x;v[i+36>>2]=r;v[i+32>>2]=j;v[i+28>>2]=g;v[i>>2]=128344;c=wr(f,104);h=v[g+600>>2];s=v[g+604>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=h;v[c+12>>2]=s;v[c+32>>2]=j;v[c+28>>2]=g;v[c>>2]=128668;h=v[b+28>>2];v[c+36>>2]=v[b+24>>2];v[c+40>>2]=h;h=v[b+36>>2];v[c+44>>2]=v[b+32>>2];v[c+48>>2]=h;h=v[b+44>>2];v[c+52>>2]=v[b+40>>2];v[c+56>>2]=h;h=v[b+52>>2];v[c+60>>2]=v[b+48>>2];v[c+64>>2]=h;h=v[b+60>>2];v[c+68>>2]=v[b+56>>2];v[c+72>>2]=h;h=v[b+68>>2];v[c+76>>2]=v[b+64>>2];v[c+80>>2]=h;h=v[b+76>>2];v[c+84>>2]=v[b+72>>2];v[c+88>>2]=h;v[c+96>>2]=o+168;v[c+92>>2]=r;f=wr(f,104);h=v[g+600>>2];s=v[g+604>>2];v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=h;v[f+12>>2]=s;v[f+32>>2]=j;v[f+28>>2]=g;v[f>>2]=128780;j=v[b+28>>2];v[f+36>>2]=v[b+24>>2];v[f+40>>2]=j;j=v[b+36>>2];v[f+44>>2]=v[b+32>>2];v[f+48>>2]=j;j=v[b+44>>2];v[f+52>>2]=v[b+40>>2];v[f+56>>2]=j;j=v[b+52>>2];v[f+60>>2]=v[b+48>>2];v[f+64>>2]=j;j=v[b+60>>2];v[f+68>>2]=v[b+56>>2];v[f+72>>2]=j;j=v[b+68>>2];v[f+76>>2]=v[b+64>>2];v[f+80>>2]=j;j=v[b+76>>2];v[f+84>>2]=v[b+72>>2];v[f+88>>2]=j;t[f+96|0]=A;v[f+92>>2]=r;v[e+20>>2]=k;v[e+24>>2]=1;if(k){Ba[v[v[k>>2]+16>>2]](k);v[e+16>>2]=v[v[e+20>>2]+16>>2]}v[c+20>>2]=e;v[c+24>>2]=1;Ba[v[v[e>>2]+16>>2]](e);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[e>>2]+20>>2]](e);v[i+20>>2]=c;v[i+24>>2]=1;Ba[v[v[c>>2]+16>>2]](c);v[i+16>>2]=v[v[i+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);v[f+20>>2]=i;v[f+24>>2]=1;Ba[v[v[i>>2]+16>>2]](i);v[f+16>>2]=v[v[f+20>>2]+16>>2];Ba[v[v[i>>2]+20>>2]](i);v[d+20>>2]=f;v[d+24>>2]=1;Ba[v[v[f>>2]+16>>2]](f);v[d+16>>2]=v[v[d+20>>2]+16>>2];Ba[v[v[f>>2]+20>>2]](f);Ba[v[v[d>>2]+20>>2]](d)}E=q+E|0;D=m+D|0;u=n+u|0;y=(y+z|0)+(m<<6)|0;d=l;if(p>>>0>d>>>0){continue}break}}Ba[v[v[k>>2]+20>>2]](k);xa=b+80|0;a=v[a+36>>2];Ba[v[v[a>>2]+20>>2]](a)}function cy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=0,x=0,A=0,D=0,E=0,F=0,G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=0,R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0);f=xa+-64|0;xa=f;a:{if(w[a+488|0]){b9(v[37696],8,12859,2024,76600,0);break a}k=v[a+468>>2];d=v[a+448>>2];A=v[b+8>>2];g=v[b+52>>2];v[f+56>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;s=Cx(g,d,f+16|0);n=g+4|0;b=0;h=k<<2;i=h+15&-16;e=v[g+4>>2];d=v[g+8>>2];c=v[(e+(d<<2)|0)-4>>2];if((i|0)<=(c-v[g+16>>2]|0)){b=c-i|0;v[f>>2]=b;b:{if(d>>>0>=(v[g+12>>2]&2147483647)>>>0){Vs(n,f);break b}v[e+(d<<2)>>2]=b;v[g+8>>2]=d+1}b=v[f>>2]}v[f+40>>2]=0;v[f+44>>2]=b;v[f+32>>2]=0;d=w[v[a+476>>2]];h=J9(b,0,h);c:{if(!k){break c}b=0;if(!(d&1)){d=a+112|0;while(1){v[f+48>>2]=(B(b,k)<<2)+A;c=h+(b<<2)|0;v[c>>2]=1065353216;v[f+8>>2]=0;v[f>>2]=0;v[f+4>>2]=0;e=f+16|0;wx(d,e);J9(v[f+24>>2],0,v[a+448>>2]<<5);sx(d,f,e);Ix(d,e);Kx(d,e);Mx(d,e);Nx(d,e);v[c>>2]=0;b=b+1|0;if((k|0)!=(b|0)){continue}break}break c}while(1){v[f+48>>2]=(B(b,k)<<2)+A;D=h+(b<<2)|0;v[D>>2]=1065353216;E=v[a+448>>2];t=f+16|0;P=v[t+28>>2];d=v[t+12>>2];u=v[t+4>>2];e=u;v[e+16>>2]=0;v[e+20>>2]=0;v[e>>2]=0;v[e+4>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[d>>2]=0;v[d+4>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;F=a+112|0;if(E>>>0>=2){e=1;while(1){i=v[F+340>>2]+B(e,160)|0;l=z[i+124>>2];x=e<<5;c=u+(v[(x+v[a+444>>2]|0)+24>>2]<<5)|0;o=z[c>>2];j=z[i+120>>2];p=z[c+4>>2];r=C(C(C(l*o)-C(j*p))+z[c+24>>2]);q=j;j=z[c+8>>2];m=z[i+128>>2];q=C(C(C(q*j)-C(m*o))+z[c+20>>2]);l=C(C(C(m*p)-C(l*j))+z[c+16>>2]);c=v[a+456>>2]+B(e,80)|0;G=w[c+76|0];if(G){Q=(v[c+72>>2]<<2)+P|0;R=v[a+384>>2]+B(e,76)|0;i=0;while(1){m=z[(i<<2)+Q>>2];c=B(i,24)+R|0;l=C(l+C(m*z[c+12>>2]));j=C(j+C(m*z[c+8>>2]));p=C(p+C(m*z[c+4>>2]));o=C(o+C(m*z[c>>2]));r=C(r+C(m*z[c+20>>2]));q=C(q+C(m*z[c+16>>2]));i=i+1|0;if((G|0)!=(i|0)){continue}break}}c=u+x|0;v[c+28>>2]=0;z[c+16>>2]=l;v[c+12>>2]=0;z[c+8>>2]=j;z[c+4>>2]=p;z[c>>2]=o;z[c+24>>2]=r;z[c+20>>2]=q;c=v[a+348>>2]+B(e,112)|0;S=z[c+60>>2];T=z[c+48>>2];U=z[c+36>>2];V=z[c- -64>>2];W=z[c+40>>2];X=z[c+52>>2];Y=z[c+68>>2];Z=z[c+44>>2];_=z[c+56>>2];$=z[c+96>>2];aa=z[c+84>>2];ba=z[c+72>>2];m=z[c+8>>2];H=z[c>>2];I=z[c+4>>2];J=z[c+20>>2];K=z[c+16>>2];L=z[c+12>>2];ca=z[c+100>>2];da=z[c+76>>2];ea=z[c+88>>2];M=z[c+32>>2];N=z[c+28>>2];O=z[c+24>>2];fa=z[c+104>>2];ga=z[c+80>>2];ha=z[c+92>>2];c=d+x|0;v[c+28>>2]=0;v[c+12>>2]=0;z[c+24>>2]=C(C(M*r)+C(C(O*l)+C(q*N)))+C(C(C(o*ga)+C(p*ha))+C(j*fa));z[c+20>>2]=C(C(J*r)+C(C(L*l)+C(q*K)))+C(C(C(o*da)+C(p*ea))+C(j*ca));z[c+16>>2]=C(C(m*r)+C(C(H*l)+C(q*I)))+C(C(C(o*ba)+C(p*aa))+C(j*$));z[c+8>>2]=C(C(C(o*m)+C(p*J))+C(j*M))+C(C(C(l*Z)+C(q*_))+C(r*Y));z[c+4>>2]=C(C(C(o*I)+C(p*K))+C(j*N))+C(C(C(l*W)+C(q*X))+C(r*V));z[c>>2]=C(C(C(o*H)+C(p*L))+C(j*O))+C(C(C(l*U)+C(q*T))+C(r*S));e=e+1|0;if((E|0)!=(e|0)){continue}break}}Jx(F,t);v[D>>2]=0;b=b+1|0;if((k|0)!=(b|0)){continue}break}}a=v[g+16>>2];d:{if(!(a>>>0<=h>>>0&h>>>0>2]>>>0)){if(!h){break d}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,h);break d}i=v[g+4>>2];a=0;k=v[g+8>>2];e=k;while(1){c=a;a=c+1|0;d=e;e=d-1|0;b=i+(e<<2)|0;if(h>>>0>y[b>>2]){continue}break}e:{if(d>>>0>=k>>>0){break e}e=c&3;if(e){a=0;while(1){v[b>>2]=v[v[n>>2]+(d<<2)>>2];d=d+1|0;b=b+4|0;a=a+1|0;if((e|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break e}while(1){a=d<<2;v[b>>2]=v[a+v[n>>2]>>2];v[b+4>>2]=v[(a+v[n>>2]|0)+4>>2];v[b+8>>2]=v[(a+v[n>>2]|0)+8>>2];v[b+12>>2]=v[(a+v[n>>2]|0)+12>>2];b=b+16|0;d=d+4|0;if((k|0)!=(d|0)){continue}break}}v[g+8>>2]=k-1}a=v[g+16>>2];if(!(a>>>0<=s>>>0&a+v[g+20>>2]>>>0>s>>>0)){if(!s){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,s);break a}k=v[g+4>>2];a=0;h=v[g+8>>2];e=h;while(1){c=a;a=c+1|0;d=e;e=d-1|0;b=k+(e<<2)|0;if(y[b>>2]>>0){continue}break}f:{if(d>>>0>=h>>>0){break f}e=c&3;if(e){a=0;while(1){v[b>>2]=v[v[n>>2]+(d<<2)>>2];d=d+1|0;b=b+4|0;a=a+1|0;if((e|0)!=(a|0)){continue}break}}if(c-1>>>0<3){break f}while(1){a=d<<2;v[b>>2]=v[a+v[n>>2]>>2];v[b+4>>2]=v[(a+v[n>>2]|0)+4>>2];v[b+8>>2]=v[(a+v[n>>2]|0)+8>>2];v[b+12>>2]=v[(a+v[n>>2]|0)+12>>2];b=b+16|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}v[g+8>>2]=h-1}xa=f- -64|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=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=0;g=xa-288|0;xa=g;a:{b:{if(t[a+9|0]&1){H=w[a+12|0];i=H?e:d;h=z[i+8>>2];l=z[i>>2];m=z[i+4>>2];i=v[a+20>>2];k=z[i+40>>2];A=z[i+28>>2];B=z[i+16>>2];D=z[i+36>>2];s=z[c+8>>2];u=z[i+24>>2];x=z[c>>2];j=z[i>>2];n=z[c+4>>2];o=z[i+12>>2];E=z[i+4>>2];F=z[i+44>>2];p=z[i+8>>2];c=H?d:e;q=z[c>>2];G=z[i+20>>2];r=z[c+4>>2];y=z[i+32>>2];I=z[c+8>>2];z[g+80>>2]=F+C(C(C(p*q)+C(G*r))+C(y*I));z[g+76>>2]=k+C(C(C(E*q)+C(B*r))+C(A*I));z[g+68>>2]=F+C(C(C(p*l)+C(G*m))+C(y*h));z[g- -64>>2]=k+C(C(C(E*l)+C(B*m))+C(A*h));z[g+48>>2]=D+C(C(C(x*j)+C(n*o))+C(s*u));z[g+72>>2]=D+C(C(C(j*q)+C(o*r))+C(u*I));z[g+60>>2]=D+C(C(C(j*l)+C(o*m))+C(u*h));z[g+56>>2]=F+C(C(C(x*p)+C(n*G))+C(s*y));z[g+52>>2]=k+C(C(C(x*E)+C(n*B))+C(s*A));v[g+144>>2]=2139095039;d=G2(g+48|0,v[a+48>>2]+48|0,v[a+52>>2],a+164|0,z[a+24>>2],g+144|0,!w[a+176|0]);if(d){h=z[g+144>>2];if(!(h<=z[a+24>>2])){break b}z[a+24>>2]=h;z[f>>2]=h*z[a+16>>2];l=z[g+48>>2];m=z[g+52>>2];k=z[g+56>>2];v[a+124>>2]=0;z[a+120>>2]=k;z[a+116>>2]=m;z[a+112>>2]=l;c=v[a+56>>2];A=z[c>>2];B=z[c+4>>2];D=z[c+8>>2];v[a+140>>2]=0;t[a+10|0]=1;z[a+136>>2]=-D;z[a+132>>2]=-B;z[a+128>>2]=-A;v[a+160>>2]=v[b+8>>2];z[a+64>>2]=l;z[a+68>>2]=m;z[a+72>>2]=k;z[a+76>>2]=z[g+60>>2];z[a+80>>2]=z[g+64>>2];z[a+84>>2]=z[g+68>>2];z[a+88>>2]=z[g+72>>2];z[a+92>>2]=z[g+76>>2];z[a+96>>2]=z[g+80>>2];if(h!=C(0)){break b}t[a+11|0]=1}a=!d;break a}v[g+224>>2]=0;i=v[a+20>>2];h=z[i+44>>2];u=z[i+8>>2];J=w[a+12|0];H=J?d:e;l=z[H>>2];x=z[i+20>>2];m=z[H+4>>2];j=z[i+32>>2];k=z[H+8>>2];A=C(h+C(C(C(u*l)+C(x*m))+C(j*k)));n=z[i+40>>2];o=z[i+4>>2];E=z[i+16>>2];F=z[i+28>>2];B=C(n+C(C(C(o*l)+C(E*m))+C(F*k)));s=z[i+36>>2];p=z[i>>2];q=z[i+12>>2];G=z[i+24>>2];D=C(s+C(C(C(p*l)+C(q*m))+C(G*k)));d=J?e:d;k=z[d>>2];r=z[d+4>>2];y=z[d+8>>2];l=C(h+C(C(C(u*k)+C(x*r))+C(j*y)));m=C(n+C(C(C(o*k)+C(E*r))+C(F*y)));k=C(s+C(C(C(p*k)+C(q*r))+C(G*y)));r=z[c>>2];y=C(r*p);p=z[c+4>>2];y=C(y+C(p*q));q=z[c+8>>2];s=C(C(y+C(q*G))+s);u=C(C(C(C(r*u)+C(p*x))+C(q*j))+h);x=C(C(C(C(r*o)+C(p*E))+C(q*F))+n);if(!w[a+176|0]){h=C(D-k);j=C(x-m);n=C(s-k);o=C(B-m);r=C(C(C(h*j)-C(n*o))*z[a+152>>2]);p=o;o=C(u-l);q=j;j=C(A-l);if(C(r+C(C(C(C(p*o)-C(q*j))*z[a+144>>2])+C(C(C(j*n)-C(o*h))*z[a+148>>2])))>=C(0)){break b}}v[g+216>>2]=0;v[g+220>>2]=0;v[g+208>>2]=0;v[g+212>>2]=0;c=v[a+48>>2];h=z[c+52>>2];j=z[c+56>>2];n=z[c+48>>2];v[g+204>>2]=0;z[g+200>>2]=j;z[g+196>>2]=h;t[g+176|0]=0;v[g+172>>2]=3;v[g+144>>2]=0;v[g+148>>2]=0;v[g+152>>2]=0;v[g+156>>2]=0;z[g+192>>2]=n;h=h>=n?n:h;h=h<=j?h:j;j=C(h*C(.05000000074505806));z[g+168>>2]=j;z[g+164>>2]=j;z[g+160>>2]=h*C(.15000000596046448);v[g+140>>2]=0;z[g+136>>2]=A;z[g+132>>2]=B;z[g+128>>2]=D;v[g+124>>2]=0;z[g+120>>2]=l;z[g+116>>2]=m;z[g+112>>2]=k;v[g+108>>2]=0;z[g+104>>2]=u;z[g+100>>2]=x;t[g+80|0]=0;v[g+72>>2]=2139095039;v[g+76>>2]=5;v[g+60>>2]=0;v[g+64>>2]=0;v[g+68>>2]=2139095039;z[g+96>>2]=s;h=C(C(C(s+k)+D)*C(.33333298563957214));z[g+48>>2]=h;j=C(C(C(x+m)+B)*C(.33333298563957214));z[g+52>>2]=j;n=C(C(C(u+l)+A)*C(.33333298563957214));z[g+56>>2]=n;v[g+24>>2]=141856;v[g+28>>2]=g+48;v[g+16>>2]=141808;v[g+20>>2]=g+144;v[g+12>>2]=0;z[g+8>>2]=n-z[g+152>>2];z[g+4>>2]=j-z[g+148>>2];z[g>>2]=h-z[g+144>>2];c:{c=cY(g+24|0,g+16|0,g,g+208|0,a+144|0,g+240|0,g+256|0,g+272|0,z[a+60>>2]);if(c){h=z[g+240>>2];d=v[g+276>>2];v[a+112>>2]=v[g+272>>2];v[a+116>>2]=d;d=v[g+284>>2];v[a+120>>2]=v[g+280>>2];v[a+124>>2]=d;d=v[g+260>>2];v[g+32>>2]=v[g+256>>2];v[g+36>>2]=d;d=v[g+268>>2];v[g+40>>2]=v[g+264>>2];v[g+44>>2]=d;t[a+10|0]=1;v[a+160>>2]=v[b+8>>2];if(!(h<=z[g+224>>2])){break c}t[a+11|0]=1;v[f>>2]=0;b=v[g+236>>2];v[a+40>>2]=v[g+232>>2];v[a+44>>2]=b;b=v[g+228>>2];v[a+32>>2]=v[g+224>>2];v[a+36>>2]=b;v[a+24>>2]=0;b=v[a+56>>2];h=z[b>>2];l=z[b+4>>2];m=z[b+8>>2];v[a+140>>2]=0;z[a+136>>2]=-m;z[a+132>>2]=-l;z[a+128>>2]=-h}a=c^1;break a}v[a+156>>2]=0;j=C(h*z[a+24>>2]);z[a+24>>2]=j;z[a+144>>2]=h*z[a+144>>2];z[a+32>>2]=h*z[a+32>>2];z[a+148>>2]=h*z[a+148>>2];z[a+152>>2]=h*z[a+152>>2];b=v[g+44>>2];v[a+136>>2]=v[g+40>>2];v[a+140>>2]=b;b=v[g+36>>2];v[a+128>>2]=v[g+32>>2];v[a+132>>2]=b;h=C(j*z[a+16>>2]);if(h>2]){z[f>>2]=h}z[a+64>>2]=s;z[a+96>>2]=A;z[a+92>>2]=B;z[a+88>>2]=D;z[a+84>>2]=l;z[a+80>>2]=m;z[a+76>>2]=k;z[a+72>>2]=u;z[a+68>>2]=x}a=1}xa=g+288|0;return a|0}function WY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=0;k=xa-576|0;xa=k;b=v[b>>2];a=v[a>>2];t[k+192|0]=0;v[k+184>>2]=0;v[k+188>>2]=0;v[k+176>>2]=0;v[k+180>>2]=0;v[k+168>>2]=0;v[k+172>>2]=0;v[k+160>>2]=0;v[k+164>>2]=0;D=v[a+40>>2];j=z[a+8>>2];l=z[a+12>>2];q=z[a+4>>2];v[k+12>>2]=0;z[k+8>>2]=l;z[k+4>>2]=j;z[k>>2]=q;G=v[a+16>>2];K=v[a+20>>2];M=v[a+28>>2];v[k+344>>2]=v[a+24>>2];v[k+348>>2]=M;v[k+336>>2]=G;v[k+340>>2]=K;v[k+304>>2]=D;v[k+312>>2]=v[D+40>>2]+B(w[D+39|0],20);t[k+316|0]=w[D+38|0];m=C(q*z[D+52>>2]);s=C(j*z[D+56>>2]);m=m<=s?m:s;s=C(l*z[D+60>>2]);m=m<=s?m:s;z[k+184>>2]=m*C(.02500000037252903);z[k+176>>2]=m*C(.10000000149011612);z[k+180>>2]=m*C(.05000000074505806);G=k+336|0;K=k+160|0;GV(k,G,k+208|0,k+256|0,K,q==C(1)&j==C(1)&l==C(1));v[k+308>>2]=v[D+44>>2];t[k+32|0]=0;v[k+24>>2]=0;v[k+28>>2]=0;v[k+16>>2]=0;v[k+20>>2]=0;v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;a=v[b+40>>2];j=z[b+8>>2];l=z[b+12>>2];q=z[b+4>>2];v[k+348>>2]=0;z[k+344>>2]=l;z[k+340>>2]=j;z[k+336>>2]=q;D=v[b+16>>2];M=v[b+20>>2];R=v[b+28>>2];v[k+504>>2]=v[b+24>>2];v[k+508>>2]=R;v[k+496>>2]=D;v[k+500>>2]=M;v[k+144>>2]=a;v[k+152>>2]=v[a+40>>2]+B(w[a+39|0],20);t[k+156|0]=w[a+38|0];m=C(q*z[a+52>>2]);s=C(j*z[a+56>>2]);m=m<=s?m:s;s=C(l*z[a+60>>2]);m=m<=s?m:s;z[k+24>>2]=m*C(.02500000037252903);z[k+16>>2]=m*C(.10000000149011612);z[k+20>>2]=m*C(.05000000074505806);b=k+496|0;GV(G,b,k+48|0,k+96|0,k,q==C(1)&j==C(1)&l==C(1));v[k+148>>2]=v[a+44>>2];v[k+568>>2]=0;v[k+572>>2]=0;v[k+560>>2]=0;v[k+564>>2]=0;N=z[f+20>>2];H=z[e+20>>2];F=z[f+24>>2];I=z[e+24>>2];o=z[c+8>>2];u=z[c>>2];x=z[c+4>>2];r=z[c+12>>2];q=z[d+12>>2];m=z[d>>2];O=z[f+16>>2];J=z[e+16>>2];j=z[d+4>>2];l=z[d+8>>2];v[k+556>>2]=0;v[k+540>>2]=0;v[k+524>>2]=0;L=C(-m);n=C(J-O);p=C(H-N);A=C(I-F);E=C(C(C(L*n)-C(p*j))-C(l*A));s=C(C(q*q)+C(-.5));y=C(C(C(q*C(C(j*n)-C(m*p)))+C(s*A))-C(l*E));z[k+552>>2]=y+y;y=C(C(C(s*p)+C(q*C(C(m*A)-C(l*n))))-C(j*E));z[k+548>>2]=y+y;a=k+544|0;n=C(C(C(s*n)+C(q*C(C(l*p)-C(j*A))))-C(m*E));z[a>>2]=n+n;p=C(C(C(x*l)-C(j*o))+C(C(u*q)-C(r*m)));n=C(p+p);A=C(C(C(o*m)-C(l*u))+C(C(x*q)-C(r*j)));E=C(A+A);y=C(C(1)-C(p*n));P=C(A*E);z[k+536>>2]=y-P;p=C(C(C(u*j)-C(m*x))+C(C(o*q)-C(r*l)));Q=C(p*E);o=C(C(r*q)-C(C(C(L*u)-C(x*j))-C(l*o)));u=C(o*n);z[k+532>>2]=Q-u;x=C(p*n);r=C(o*E);z[k+528>>2]=x+r;z[k+520>>2]=Q+u;u=C(p+p);p=C(p*u);z[k+516>>2]=y-p;n=C(A*n);o=C(o*u);z[k+512>>2]=n-o;v[k+508>>2]=0;z[k+504>>2]=x-r;z[k+500>>2]=n+o;z[k+496>>2]=C(C(1)-P)-p;x=z[d+20>>2];r=z[c+20>>2];o=z[d+24>>2];u=z[c+24>>2];n=z[d+16>>2];p=z[c+16>>2];v[k+492>>2]=0;E=C(u-I);o=C(C(o-F)-E);I=C(p-J);u=C(C(n-O)-I);H=C(r-H);x=C(C(x-N)-H);r=C(C(l*o)+C(C(m*u)+C(j*x)));n=C(C(C(s*o)-C(q*C(C(m*x)-C(j*u))))+C(l*r));z[k+488>>2]=n+n;n=C(C(j*r)+C(C(s*x)-C(q*C(C(l*u)-C(o*m)))));z[k+484>>2]=n+n;o=C(C(m*r)+C(C(s*u)-C(q*C(C(j*o)-C(x*l)))));z[k+480>>2]=o+o;v[k+416>>2]=0;v[k+336>>2]=141516;v[k+344>>2]=b;v[k+340>>2]=K;b=v[k+516>>2];v[k+368>>2]=v[k+512>>2];v[k+372>>2]=b;b=v[k+524>>2];v[k+376>>2]=v[k+520>>2];v[k+380>>2]=b;b=v[k+508>>2];v[k+360>>2]=v[k+504>>2];v[k+364>>2]=b;b=v[k+532>>2];v[k+384>>2]=v[k+528>>2];v[k+388>>2]=b;b=v[k+540>>2];v[k+392>>2]=v[k+536>>2];v[k+396>>2]=b;b=v[a+4>>2];v[k+400>>2]=v[a>>2];v[k+404>>2]=b;b=v[k+556>>2];v[k+408>>2]=v[k+552>>2];v[k+412>>2]=b;b=v[k+500>>2];v[k+352>>2]=v[k+496>>2];v[k+356>>2]=b;o=z[k+356>>2];z[k+356>>2]=z[k+368>>2];u=z[k+376>>2];x=z[k+360>>2];z[k+360>>2]=z[k+384>>2];z[k+376>>2]=z[k+388>>2];z[k+384>>2]=x;z[k+388>>2]=u;z[k+368>>2]=o;v[k+328>>2]=141216;v[k+332>>2]=k;o=C(34028234663852886e22);if(UX(G,k+328|0,a,k+560|0,k+480|0,k+464|0,k+432|0,k+448|0,C(g+C(0)),1)){o=z[k+464>>2];g=z[k+456>>2];u=z[k+448>>2];x=z[k+452>>2];r=z[k+440>>2];n=z[k+432>>2];p=z[k+436>>2];A=C(C(l*r)+C(C(m*n)+C(j*p)));J=C(-j);y=C(C(C(q*C(C(m*p)+C(n*J)))+C(s*r))+C(l*A));z[h+8>>2]=y+y;y=C(C(j*A)+C(C(s*p)+C(q*C(C(l*n)+C(r*L)))));z[h+4>>2]=y+y;y=p;p=C(-l);r=C(C(m*A)+C(C(s*n)+C(q*C(C(j*r)+C(y*p)))));z[h>>2]=r+r;r=o>C(0)?o:C(0);y=F;n=C(C(l*g)+C(C(m*u)+C(j*x)));F=C(C(C(q*C(C(m*x)+C(u*J)))+C(s*g))+C(l*n));z[i+8>>2]=C(E*r)+C(y+C(F+F));l=C(C(j*n)+C(C(s*x)+C(q*C(C(l*u)+C(g*L)))));z[i+4>>2]=C(H*r)+C(N+C(l+l));g=C(C(m*n)+C(C(s*u)+C(q*C(C(j*g)+C(x*p)))));z[i>>2]=C(I*r)+C(O+C(g+g))}xa=k+576|0;return C(o)}function $X(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0);c=xa-384|0;xa=c;v[c+368>>2]=0;v[c+360>>2]=0;v[c+364>>2]=0;v[c+352>>2]=0;v[c+356>>2]=0;B=z[e+52>>2];A=z[e+56>>2];H=z[a+8>>2];I=z[a+12>>2];J=z[d+20>>2];y=z[b+20>>2];L=z[d+24>>2];D=z[b+24>>2];R=z[f+4>>2];S=z[f>>2];T=z[f+8>>2];M=z[e+48>>2];N=z[a+4>>2];k=z[b+8>>2];m=z[b>>2];r=z[b+4>>2];o=z[b+12>>2];s=z[d+12>>2];w=z[d>>2];O=z[d+16>>2];l=z[b+16>>2];n=z[d+4>>2];q=z[d+8>>2];v[c+348>>2]=0;v[c+332>>2]=0;v[c+316>>2]=0;G=C(-w);l=C(l-O);p=C(y-J);D=C(D-L);F=C(C(C(G*l)-C(p*n))-C(q*D));y=C(C(s*s)+C(-.5));E=C(C(C(s*C(C(n*l)-C(w*p)))+C(y*D))-C(q*F));z[c+344>>2]=E+E;E=C(C(C(y*p)+C(s*C(C(w*D)-C(q*l))))-C(n*F));z[c+340>>2]=E+E;a=c+336|0;l=C(C(C(y*l)+C(s*C(C(q*p)-C(n*D))))-C(w*F));z[a>>2]=l+l;p=C(C(C(r*q)-C(n*k))+C(C(m*s)-C(o*w)));l=C(p+p);D=C(C(C(k*w)-C(q*m))+C(C(r*s)-C(o*n)));F=C(D+D);E=C(C(1)-C(p*l));P=C(D*F);z[c+328>>2]=E-P;p=C(C(C(m*n)-C(w*r))+C(C(k*s)-C(o*q)));Q=C(p*F);k=C(C(o*s)-C(C(C(G*m)-C(r*n))-C(q*k)));m=C(k*l);z[c+324>>2]=Q-m;r=C(p*l);o=C(k*F);z[c+320>>2]=r+o;z[c+312>>2]=Q+m;m=C(p+p);p=C(p*m);z[c+308>>2]=E-p;l=C(D*l);k=C(k*m);z[c+304>>2]=l-k;v[c+300>>2]=0;z[c+296>>2]=r-o;z[c+292>>2]=l+k;z[c+288>>2]=C(C(1)-P)-p;v[c+284>>2]=0;z[c+280>>2]=I;z[c+276>>2]=H;t[c+256|0]=0;v[c+252>>2]=3;v[c+224>>2]=0;v[c+228>>2]=0;v[c+232>>2]=0;v[c+236>>2]=0;z[c+272>>2]=N;k=H>=N?N:H;k=k<=I?k:I;m=C(k*C(.05000000074505806));z[c+248>>2]=m;z[c+244>>2]=m;z[c+240>>2]=k*C(.15000000596046448);v[c+220>>2]=0;z[c+216>>2]=A;z[c+212>>2]=B;t[c+192|0]=0;v[c+188>>2]=3;v[c+160>>2]=0;v[c+164>>2]=0;v[c+168>>2]=0;v[c+172>>2]=0;z[c+208>>2]=M;k=B>=M?M:B;k=k<=A?k:A;m=C(k*C(.05000000074505806));z[c+184>>2]=m;z[c+180>>2]=m;z[c+176>>2]=k*C(.15000000596046448);v[c+156>>2]=0;k=C(T*g);m=C(S*g);r=C(R*g);o=C(C(q*k)+C(C(w*m)+C(n*r)));l=C(C(q*o)+C(C(k*y)-C(s*C(C(w*r)-C(m*n)))));z[c+152>>2]=l+l;l=C(C(n*o)+C(C(r*y)-C(s*C(C(q*m)-C(k*w)))));z[c+148>>2]=l+l;k=C(C(w*o)+C(C(m*y)-C(s*C(C(n*k)-C(r*q)))));z[c+144>>2]=k+k;d=x[i>>1];v[c+16>>2]=141468;v[c+24>>2]=c+288;v[c+20>>2]=c+224;b=v[c+308>>2];v[c+48>>2]=v[c+304>>2];v[c+52>>2]=b;b=v[c+316>>2];v[c+56>>2]=v[c+312>>2];v[c+60>>2]=b;b=v[c+300>>2];v[c+40>>2]=v[c+296>>2];v[c+44>>2]=b;e=v[c+324>>2];b=c- -64|0;v[b>>2]=v[c+320>>2];v[b+4>>2]=e;e=v[c+332>>2];v[c+72>>2]=v[c+328>>2];v[c+76>>2]=e;e=v[a+4>>2];v[c+80>>2]=v[a>>2];v[c+84>>2]=e;e=v[c+348>>2];v[c+88>>2]=v[c+344>>2];v[c+92>>2]=e;e=v[c+292>>2];v[c+32>>2]=v[c+288>>2];v[c+36>>2]=e;k=z[c+36>>2];z[c+36>>2]=z[c+48>>2];m=z[c+56>>2];r=z[c+40>>2];z[c+40>>2]=z[b>>2];z[c+56>>2]=z[c+68>>2];z[b>>2]=r;z[c+68>>2]=m;z[c+48>>2]=k;v[c+8>>2]=141808;v[c+12>>2]=c+160;b=a;a=d&512;b=aY(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=C(-q);k=C(-n);u[h+12>>1]=2;A=z[c+128>>2];if(A<=z[c+368>>2]){if(a){u[h+12>>1]=3;g=z[c+100>>2];m=z[c+96>>2];r=z[c+104>>2];o=z[c+120>>2];l=z[c+112>>2];p=z[c+116>>2];z[h+40>>2]=A;B=C(C(q*o)+C(C(w*l)+C(n*p)));A=C(C(C(s*C(C(w*p)+C(l*k)))+C(y*o))+C(q*B));z[h+24>>2]=L+C(A+A);A=C(C(n*B)+C(C(y*p)+C(s*C(C(q*l)+C(o*G)))));z[h+20>>2]=J+C(A+A);o=C(C(w*B)+C(C(y*l)+C(s*C(C(n*o)+C(p*j)))));z[h+16>>2]=O+C(o+o);l=C(C(s*C(C(w*g)+C(m*k)))+C(y*r));k=C(C(q*r)+C(C(w*m)+C(n*g)));o=C(l+C(q*k));o=C(o+o);j=C(C(w*k)+C(C(y*m)+C(s*C(C(n*r)+C(g*j)))));j=C(j+j);g=C(C(n*k)+C(C(y*g)+C(s*C(C(q*m)+C(r*G)))));g=C(g+g);n=C(C(1)/C(K(C(C(o*o)+C(C(j*j)+C(g*g))))));z[h+36>>2]=n*C(-o);z[h+32>>2]=n*C(-g);z[h+28>>2]=n*C(-j);break a}v[h+40>>2]=0;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break a}u[h+12>>1]=3;m=z[c+100>>2];r=z[c+96>>2];o=z[c+104>>2];l=z[c+120>>2];p=z[c+112>>2];B=z[c+116>>2];z[h+40>>2]=A*g;g=C(C(q*l)+C(C(w*p)+C(n*B)));A=C(C(C(s*C(C(w*B)+C(p*k)))+C(y*l))+C(q*g));z[h+24>>2]=L+C(A+A);A=C(C(n*g)+C(C(y*B)+C(s*C(C(q*p)+C(l*G)))));z[h+20>>2]=J+C(A+A);g=C(C(w*g)+C(C(y*p)+C(s*C(C(n*l)+C(B*j)))));z[h+16>>2]=O+C(g+g);g=C(C(q*o)+C(C(w*r)+C(n*m)));k=C(C(C(s*C(C(w*m)+C(r*k)))+C(y*o))+C(q*g));k=C(k+k);j=C(C(w*g)+C(C(y*r)+C(s*C(C(n*o)+C(m*j)))));j=C(j+j);g=C(C(n*g)+C(C(y*m)+C(s*C(C(q*r)+C(o*G)))));g=C(g+g);n=C(C(1)/C(K(C(C(k*k)+C(C(j*j)+C(g*g))))));z[h+36>>2]=n*C(-k);z[h+32>>2]=n*C(-g);z[h+28>>2]=n*C(-j)}xa=c+384|0;return b|0}function RG(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:{i=w[a+44|0];g=w[c|0];if((i|0)==(g|0)){break a}t[a+44|0]=g;k=g&!(i&1);e=v[a>>2];b:{if(!e){break b}f=w[c|0]&16;if((f|0)!=(i&16)){d=xa-16|0;xa=d;c:{if(y[e+152>>2]>4294967293){break c}h=v[e+40>>2]+4632|0;if(f&16){v[d+4>>2]=e;h=rh(h,d+4|0,d+11|0);if(w[d+11|0]){break c}v[h>>2]=v[d+4>>2];break c}v[d+12>>2]=e;Pg(h,d+12|0)}xa=d+16|0}d:{if(k){d=v[a+176>>2];if(!d){d=v[b+288>>2];if(!d){GG(b);d=v[b+288>>2]}v[b+288>>2]=v[d>>2];v[b+280>>2]=v[b+280>>2]+1}t[d+24|0]=0;t[d+25|0]=0;t[d+26|0]=0;t[d+27|0]=0;t[d+28|0]=0;t[d+29|0]=0;t[d+30|0]=0;t[d+31|0]=0;t[d|0]=0;t[d+1|0]=0;t[d+2|0]=0;t[d+3|0]=0;t[d+4|0]=0;t[d+5|0]=0;t[d+6|0]=0;t[d+7|0]=0;t[d+56|0]=0;t[d+57|0]=0;t[d+58|0]=0;t[d+59|0]=0;t[d+60|0]=0;t[d+61|0]=0;t[d+62|0]=0;t[d+63|0]=0;t[d+48|0]=0;t[d+49|0]=0;t[d+50|0]=0;t[d+51|0]=0;t[d+52|0]=0;t[d+53|0]=0;t[d+54|0]=0;t[d+55|0]=0;t[d+40|0]=0;t[d+41|0]=0;t[d+42|0]=0;t[d+43|0]=0;t[d+44|0]=0;t[d+45|0]=0;t[d+46|0]=0;t[d+47|0]=0;t[d+32|0]=0;t[d+33|0]=0;t[d+34|0]=0;t[d+35|0]=0;t[d+36|0]=0;t[d+37|0]=0;t[d+38|0]=0;t[d+39|0]=0;t[d+16|0]=0;t[d+17|0]=0;t[d+18|0]=0;t[d+19|0]=0;t[d+20|0]=0;t[d+21|0]=0;t[d+22|0]=0;t[d+23|0]=0;t[d+8|0]=0;t[d+9|0]=0;t[d+10|0]=0;t[d+11|0]=0;t[d+12|0]=0;t[d+13|0]=0;t[d+14|0]=0;t[d+15|0]=0;t[d+31|0]=1;z[d+48>>2]=z[a+120>>2];z[d+52>>2]=z[a+124>>2];z[d+32>>2]=z[a+128>>2];z[d+36>>2]=z[a+132>>2];z[d+40>>2]=z[a+136>>2];z[d+44>>2]=z[a+140>>2];z[d+56>>2]=z[a+112>>2];z[d+60>>2]=z[a+116>>2];v[a+136>>2]=0;v[a+140>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+176>>2]=d;v[a+112>>2]=2139095039;v[a+116>>2]=2139095039;if(y[e+152>>2]<=4294967293){WO(v[e+40>>2],e)}b=v[e+164>>2];if(b){BH(b,v[v[e+40>>2]+1136>>2])}XE(e,5,4);b=v[v[e+40>>2]+1e3>>2];d=v[e+144>>2];UF(b+168|0,d);UF(b+640|0,d);b=v[e+32>>2];if(b){while(1){eS(b);b=v[b>>2];if(b){continue}break}}break d}if(!(!(g&1)&i)){break d}d=v[a+176>>2];if(d){z[a+140>>2]=z[d+44>>2];z[a+128>>2]=z[d+32>>2];z[a+132>>2]=z[d+36>>2];z[a+136>>2]=z[d+40>>2];z[a+120>>2]=z[d+48>>2];z[a+124>>2]=z[d+52>>2];z[a+112>>2]=z[d+56>>2];z[a+116>>2]=z[d+60>>2];v[b+280>>2]=v[b+280>>2]-1;v[d>>2]=v[b+288>>2];v[b+288>>2]=d;v[a+176>>2]=0}b=v[v[e+40>>2]+1e3>>2];d=v[e+144>>2];VF(b+168|0,d);VF(b+640|0,d);b=v[e+44>>2];d=v[b+176>>2];e:{if(t[v[e+100>>2]+28|0]>=0){f:{if(!d|w[v[b+176>>2]+31|0]==1){break f}b=v[b+176>>2];if(!b){break f}v[b+48>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+56>>2]=0;v[b+40>>2]=0;v[b+24>>2]=0}t[e+150|0]=1;break e}g:{if(!d|w[v[b+176>>2]+31|0]==1){break g}b=v[b+176>>2];if(!b){break g}v[b+48>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+56>>2]=0;v[b+40>>2]=0}t[e+150|0]=w[e+150|0]&251}b=v[e+164>>2];if(b){BH(b,v[v[e+40>>2]+1136>>2])}XE(e,5,6);u[e+148>>1]=x[e+148>>1]&63995;if(y[e+152>>2]<=4294967293){WO(v[e+40>>2],e)}b=v[e+32>>2];if(b){while(1){eS(b);b=v[b>>2];if(b){continue}break}}}b=i&32;if((b|0)==(w[c|0]&32)){break b}if(b){g=v[e+144>>2];d=g>>>7|0;b=v[e+40>>2];h:{i:{if(w[v[e+44>>2]+9|0]==2){if(d>>>0>=v[b+4740>>2]<<5>>>0){break h}b=b+4736|0;break i}if(d>>>0>=v[b+4728>>2]<<5>>>0){break h}b=b+4724|0}b=v[b>>2]+(g>>>10&4194300)|0;g=v[b>>2];l=b,m=Vaa(-2,d)&g,v[l>>2]=m}u[e+92>>1]=x[e+92>>1]&65471;break b}j:{if(k){break j}g=v[e+144>>2]>>>7|0;b=v[e+40>>2];if(w[v[e+44>>2]+9|0]==2){h=g+32>>>5|0;k:{if(h>>>0<=(v[b+4740>>2]&2147483647)>>>0){d=v[b+4736>>2];break k}d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,h<<2,24422,17999,438)|0;f=v[b+4736>>2];l:{if(!f){break l}I9(d,f,v[b+4740>>2]<<2);if(v[b+4740>>2]<0){break l}f=v[b+4736>>2];if(!f){break l}j=v[37696]+12|0;Ba[v[v[j>>2]+12>>2]](j,f)}f=v[b+4740>>2];J9((f<<2)+d|0,0,h-f<<2);v[b+4740>>2]=h;v[b+4736>>2]=d}b=(g>>>3&536870908)+d|0;v[b>>2]=v[b>>2]|1<>>5|0;m:{if(h>>>0<=(v[b+4728>>2]&2147483647)>>>0){d=v[b+4724>>2];break m}d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,h<<2,24422,17999,438)|0;f=v[b+4724>>2];n:{if(!f){break n}I9(d,f,v[b+4728>>2]<<2);if(v[b+4728>>2]<0){break n}f=v[b+4724>>2];if(!f){break n}j=v[37696]+12|0;Ba[v[v[j>>2]+12>>2]](j,f)}f=v[b+4728>>2];J9((f<<2)+d|0,0,h-f<<2);v[b+4728>>2]=h;v[b+4724>>2]=d}b=(g>>>3&536870908)+d|0;v[b>>2]=v[b>>2]|1<>1]=x[e+92>>1]|64}if(k){SG(a)}if(!e){break a}b=i&3;a=w[c|0]&3;if(!((b|0)==3|(a|0)!=3)){a=v[e+32>>2];if(a){while(1){bS(a);a=v[a>>2];if(a){continue}break}}return}if((a|0)==3|(b|0)!=3){break a}nH(e)}}function kT(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=0,o=0,p=0,q=C(0),r=0,s=0,y=0,B=0,E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0,M=0;g=xa-160|0;xa=g;v[g+152>>2]=0;v[g+156>>2]=0;v[g+144>>2]=v[e>>2];v[g+148>>2]=v[e+4>>2];l=w[e+8|0];t[g+155|0]=l>>>3&1;t[g+154|0]=l>>>2&1;l=v[b>>2];l=Ba[v[v[l>>2]+360>>2]](l)|0;a:{b:{if((l|0)!=v[a+312>>2]){v[a+312>>2]=l;break b}if(A[a+48>>3]>A[d>>3]|A[a+56>>3]>A[d+8>>3]|(A[a+72>>3]>3]|A[a- -64>>3]>A[d+16>>3])){break b}if(A[a+80>>3]>3]|A[a+88>>3]>3]){break b}l=-16711936;f=v[a+324>>2];if(!(f&128)){break a}v[a+324>>2]=f&-129;f=v[a+112>>2];c:{if(!w[a+328|0]){break c}i=v[a+36>>2];if(!i|(f|0)==(i|0)){break c}y=v[a+32>>2];f=y+(f<<2)|0;i=y+(i<<2)|0;while(1){if(v[f+8>>2]){hU(v[a+332>>2],v[f+4>>2]);f=v[(v[f>>2]<<2)+99008>>2]+f|0;if((i|0)!=(f|0)){continue}}break}f=v[a+112>>2]}v[a+36>>2]=f;f=v[a+116>>2];v[a+24>>2]=f;v[a+12>>2]=f;t[g+152|0]=0;if(w[e+8|0]&2){t[g+153|0]=1}e=a+48|0;tS(b,e,a+8|0,a+20|0,a+32|0,g+144|0,a+240|0,a+320|0);d:{if(!w[a+328|0]){break d}b=v[a+36>>2];if(!b){break d}f=v[a+112>>2];if((f|0)==(b|0)){break d}i=v[a+32>>2];f=i+(f<<2)|0;b=i+(b<<2)|0;while(1){if(!v[f+8>>2]){break d}gU(v[a+332>>2],v[f+4>>2]);f=v[(v[f>>2]<<2)+99008>>2]+f|0;if((b|0)!=(f|0)){continue}break}}jT(a,c,e);u[a+318>>1]=x[a+318>>1]+1;break a}l=v[d+44>>2];v[a+88>>2]=v[d+40>>2];v[a+92>>2]=l;i=v[d+20>>2];l=a- -64|0;v[l>>2]=v[d+16>>2];v[l+4>>2]=i;i=v[d+36>>2];v[a+80>>2]=v[d+32>>2];v[a+84>>2]=i;i=v[d+12>>2];v[a+56>>2]=v[d+8>>2];v[a+60>>2]=i;i=v[d+28>>2];v[a+72>>2]=v[d+24>>2];v[a+76>>2]=i;i=v[d+4>>2];v[a+48>>2]=v[d>>2];v[a+52>>2]=i;h=A[l>>3];j=A[a+88>>3];n=(h+j)*.5;m=z[a+304>>2];o=+C(m*C(C(j-h)*C(.5)));h=n+o;A[a+88>>3]=h;j=A[a+56>>3];k=A[a+80>>3];s=(j+k)*.5;B=+C(m*C(C(k-j)*C(.5)));j=s+B;A[a+80>>3]=j;k=A[a+48>>3];p=A[a+72>>3];E=(k+p)*.5;p=+C(m*C(C(p-k)*C(.5)));k=E+p;A[a+72>>3]=k;n=n-o;A[l>>3]=n;o=s-B;A[a+56>>3]=o;s=E-p;A[a+48>>3]=s;l=a+48|0;m=C(0);q=z[f+8>>2];F=z[f>>2];G=z[f+4>>2];e:{if(!(F!=C(0)|G!=C(0))&q==C(0)){break e}J=C(C(q*q)+C(C(F*F)+C(G*G)));if(J>C(0)){m=C(C(1)/C(K(J)));H=C(q*m);I=C(G*m);m=C(F*m)}r=h;q=C(C(C(D(C(C(C(h-n)*H)+C(C(C(k-s)*m)+C(I*C(j-o))))))-C(D(C(C(C(A[d+40>>3]-A[d+16>>3])*H)+C(C(C(A[d+24>>3]-A[d>>3])*m)+C(I*C(A[d+32>>3]-A[d+8>>3])))))))*C(.44999998807907104));h=+C(H*q);B=r+h;A[a+88>>3]=B;r=j;j=+C(I*q);p=r+j;A[a+80>>3]=p;r=k;k=+C(m*q);E=r+k;A[a+72>>3]=E;h=n+h;A[a+64>>3]=h;j=o+j;A[a+56>>3]=j;k=s+k;A[a+48>>3]=k;r=k;k=A[d>>3];if(r>k){A[l>>3]=k}k=j;j=A[d+8>>3];if(k>j){A[a+56>>3]=j}j=h;h=A[d+16>>3];if(j>h){A[a+64>>3]=h}h=A[d+24>>3];if(h>E){A[a+72>>3]=h}h=A[d+32>>3];if(h>p){A[a+80>>3]=h}h=A[d+40>>3];if(!(h>B)){break e}A[a+88>>3]=h}f:{if(!w[a+328|0]){break f}i=v[a+36>>2];if(!i){break f}f=v[a+32>>2];i=f+(i<<2)|0;while(1){if(!v[f+8>>2]){break f}hU(v[a+332>>2],v[f+4>>2]);f=v[(v[f>>2]<<2)+99008>>2]+f|0;if((i|0)!=(f|0)){continue}break}}v[a+96>>2]=0;v[a+100>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+12>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;u[a+316>>1]=x[a+316>>1]+1;if(t[e+8|0]&1){t[g+152|0]=1}t[g+153|0]=0;f=a+8|0;i=a+20|0;y=a+32|0;L=a+240|0;M=a+320|0;tS(b,l,f,i,y,g+144|0,L,M);v[a+112>>2]=v[a+36>>2];v[a+116>>2]=v[a+12>>2];t[g+152|0]=0;if(w[e+8|0]&2){t[g+153|0]=1}tS(b,l,f,i,y,g+144|0,L,M);g:{if(!w[a+328|0]){break g}b=v[a+36>>2];if(!b){break g}f=v[a+32>>2];b=f+(b<<2)|0;while(1){if(!v[f+8>>2]){break g}gU(v[a+332>>2],v[f+4>>2]);f=v[(v[f>>2]<<2)+99008>>2]+f|0;if((b|0)!=(f|0)){continue}break}}jT(a,c,l);v[a+324>>2]=v[a+324>>2]&-129;l=-65536}b=v[a>>2];h:{if(!b){break h}c=g- -64|0;v[c>>2]=0;v[c+4>>2]=0;v[g+56>>2]=0;v[g+60>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+80>>2]=0;v[g+84>>2]=0;v[g+72>>2]=0;v[g+76>>2]=1065353216;v[g+88>>2]=0;v[g+92>>2]=0;v[g+100>>2]=0;v[g+104>>2]=0;v[g+96>>2]=1065353216;v[g+108>>2]=0;v[g+112>>2]=0;v[g+120>>2]=0;v[g+124>>2]=0;v[g+116>>2]=1065353216;v[g+128>>2]=0;v[g+132>>2]=0;v[g+136>>2]=1065353216;v[g+40>>2]=0;v[g+44>>2]=0;v[g+140>>2]=b;b=v[a+4>>2];if(b&1){b=g+40|0;v[b+4>>2]=-65281;h=A[d+32>>3];j=A[d>>3];k=A[d+8>>3];n=A[d+16>>3];o=A[d+24>>3];z[g+28>>2]=A[d+40>>3];z[g+24>>2]=h;t[g+32|0]=1;z[g+20>>2]=o;z[g+16>>2]=n;z[g+12>>2]=k;z[g+8>>2]=j;$U(b,g+8|0);b=v[a+4>>2]}if(!(b&2)){break h}b=g+40|0;v[b+4>>2]=l;h=A[a+56>>3];j=A[a- -64>>3];k=A[a+72>>3];n=A[a+80>>3];o=A[a+48>>3];z[g+28>>2]=A[a+88>>3];z[g+24>>2]=n;t[g+32|0]=1;z[g+20>>2]=k;z[g+16>>2]=j;z[g+12>>2]=h;z[g+8>>2]=o;$U(b,g+8|0)}xa=g+160|0}function BY(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;var g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=0,A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=C(0);j=xa-48|0;xa=j;z[j+44>>2]=d;L=v[a+36>>2];a:{if(L){break a}L=0;G=v[a+20>>2];T=G<<2;if(T){U=v[37696];L=Ba[v[v[U+12>>2]+8>>2]](U+12|0,T,24422,11302,133)|0;G=v[a+20>>2]}v[a+36>>2]=L;if(!G){break a}while(1){v[(x<<2)+L>>2]=x;x=x+1|0;if(x>>>0>2]){continue}break}}v[j+40>>2]=0;v[j+36>>2]=e;v[j+32>>2]=f;e=v[a+40>>2];v[j+28>>2]=v[a+32>>2];v[j+24>>2]=e;U=v[a+28>>2];v[j+8>>2]=0;v[j>>2]=0;v[j+4>>2]=0;r=xa-1040|0;xa=r;d=z[c+8>>2];o=C(d+d);f=o>C(0);A=C(-o);d=z[c+4>>2];p=C(d+d);e=p>C(0);k=C(-p);d=z[c>>2];q=C(d+d);a=q>C(0);h=C(-q);d=z[b+8>>2];s=C(d+d);d=z[b+4>>2];u=C(d+d);d=z[b>>2];w=C(d+d);g=z[j+44>>2];b:{if(g>=C(34028234663852886e22)){d=p==C(0)?u:p>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);E=q==C(0)?w:q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);g=s;if(o==C(0)){break b}g=o>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break b}d=C(u+C(p*g));E=C(w+C(q*g));g=C(s+C(o*g))}I=f?o:A;J=e?p:k;K=a?q:h;t[r+1024|0]=1;v[r+1032>>2]=256;v[r+1036>>2]=256;v[r+1028>>2]=r;e=v[j+24>>2];v[r>>2]=e;N=gE?w:E;Q=g>s?s:g;d=d>u?u:d;E=w>2]+(c<<2)>>2];h=z[b+12>>2];g=z[b>>2];i=C(h-g);k=C(g+h);d:{e:{if(!(C(i+k)>=E)|!(C(k-i)<=P)){break e}h=z[b+16>>2];g=z[b+4>>2];l=C(h-g);h=C(g+h);A=C(u-h);k=C(w-k);g=C(C(q*A)-C(p*k));if(!(C(C(J*i)+C(K*l))>=(g>C(0)?g:C(-g)))|!(C(l+h)>=d)|!(C(h-l)<=O)){break e}h=z[b+20>>2];g=z[b+8>>2];n=C(h-g);m=C(C(I*l)+C(J*n));l=C(g+h);g=C(s-l);h=C(C(p*g)-C(o*A));if(!(m>=(h>C(0)?h:C(-h)))|!(C(n+l)>=Q)|!(C(l-n)<=N)){break e}g=C(C(o*k)-C(q*g));if(!(C(C(I*i)+C(K*n))>=(g>C(0)?g:C(-g)))){break e}R=z[j+44>>2];x=v[b+24>>2];if(!(x&1)){while(1){f=B(x>>>1|0,28)+e|0;l=z[f+40>>2];k=z[f+28>>2];i=C(l-k);h=z[f+44>>2];g=z[f+32>>2];n=C(h-g);D=C(g+h);A=C(u-D);M=C(k+l);k=C(w-M);g=C(C(q*A)-C(p*k));a=C(M-i)<=P&C(i+M)>=E&C(C(J*i)+C(K*n))>=(g>C(0)?g:C(-g))&C(n+D)>=d&C(D-n)<=O;h=z[f+48>>2];g=z[f+36>>2];l=C(h-g);F=C(g+h);g=C(s-F);h=C(C(p*g)-C(o*A));g=C(C(o*k)-C(q*g));b=a&C(C(I*n)+C(J*l))>=(h>C(0)?h:C(-h))&C(l+F)>=Q&C(F-l)<=N&C(C(I*i)+C(K*l))>=(g>C(0)?g:C(-g));l=z[f+12>>2];k=z[f>>2];H=C(l-k);h=z[f+16>>2];g=z[f+4>>2];n=C(h-g);m=C(g+h);A=C(u-m);i=C(k+l);k=C(w-i);g=C(C(q*A)-C(p*k));a=C(i-H)<=P&C(H+i)>=E&C(C(J*H)+C(K*n))>=(g>C(0)?g:C(-g))&C(n+m)>=d&C(m-n)<=O;S=C(I*n);h=z[f+20>>2];g=z[f+8>>2];n=C(h-g);l=C(g+h);g=C(s-l);h=C(C(p*g)-C(o*A));g=C(C(o*k)-C(q*g));a=a&C(S+C(J*n))>=(h>C(0)?h:C(-h))&C(n+l)>=Q&C(l-n)<=N&C(C(I*H)+C(K*n))>=(g>C(0)?g:C(-g));f:{if(!(!a|!b)){a=C(C(C(F-l)*o)+C(C(C(M-i)*q)+C(p*C(D-m))))>C(0);v[v[r+1028>>2]+(c<<2)>>2]=f+B(a,28);b=f+B(!a,28)|0;c=c+1|0;if((c|0)!=(v[r+1036>>2]&2147483647)){break f}CY(r,c<<1);break f}if(!(a|b)){break e}b=a?f:f+28|0}x=v[b+24>>2];if(!(x&1)){continue}break}}a=v[b+24>>2];G=a>>>1&15;if(!G){break e}k=C(s+C(o*R));n=ks?s:k;h=h>u?u:h;g=g>w?w:g;x=v[j+28>>2]+(a>>>3&536870908)|0;T=R>2];f=v[j+32>>2];if((G|0)!=1){while(1){a=v[x>>2];b=U+B(a,24)|0;m=z[b+12>>2];i=z[b>>2];S=C(m-i);F=C(i+m);g:{if(!(C(S+F)>=E)|!(C(F-S)<=P)){break g}m=z[b+16>>2];i=z[b+4>>2];D=C(m-i);m=C(i+m);M=C(u-m);F=C(w-F);i=C(C(q*M)-C(p*F));if(!(C(C(J*S)+C(K*D))>=(i>C(0)?i:C(-i)))|!(C(D+m)>=d)|!(C(m-D)<=O)){break g}m=z[b+20>>2];i=z[b+8>>2];H=C(m-i);V=C(C(I*D)+C(J*H));D=C(i+m);i=C(s-D);m=C(C(p*i)-C(o*M));if(!(V>=(m>C(0)?m:C(-m)))|!(C(H+D)>=Q)|!(C(D-H)<=N)){break g}i=C(C(o*F)-C(q*i));if(!(C(C(I*S)+C(K*H))>=(i>C(0)?i:C(-i)))){break g}b=v[(a<<2)+L>>2];a=v[j+40>>2];v[j+40>>2]=a+1;v[f+(a<<2)>>2]=b;if(v[j+40>>2]==v[j+36>>2]){break c}if(!T){break g}z[j+44>>2]=R;E=g;d=h;Q=k;P=A;O=l;N=n}x=x+4|0;G=G-1|0;if(G){continue}break e}}b=v[(v[x>>2]<<2)+L>>2];a=v[j+40>>2];v[j+40>>2]=a+1;v[f+(a<<2)>>2]=b;f=v[j+36>>2];b=v[j+40>>2];if(!T){if((b|0)!=(f|0)){break d}break c}if((b|0)==(f|0)){break c}z[j+44>>2]=R;E=g;d=h;Q=k;P=A;O=l;N=n}}a=c;c=a-1|0;if(a){continue}}break}a=v[r+1036>>2];h:{if((a|0)<0|!(a&2147483647)){break h}b=v[r+1028>>2];if((b|0)==(r|0)|!b){break h}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}xa=r+1040|0;xa=j+48|0;return v[j+40>>2]}function iv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=C(0),R=0,S=0,T=0,U=C(0),V=C(0),W=C(0);h=xa-144|0;xa=h;i=z[c+20>>2];k=z[d+20>>2];s=z[c+16>>2];y=z[d+16>>2];f=a;p=z[a+8>>2];t=z[c+8>>2];r=z[c>>2];u=z[c+4>>2];l=z[c+12>>2];T=b;q=C(z[d+24>>2]-z[c+24>>2]);n=z[d>>2];j=C(n+n);A=z[d+8>>2];o=z[d+4>>2];x=z[d+12>>2];H=C(x+x);E=z[b+8>>2];m=C(C(C(j*A)-C(o*H))*E);w=C(q-m);z[h+92>>2]=w;k=C(k-i);i=C(E*C(C(A*H)+C(j*o)));I=C(k-i);z[h+88>>2]=I;J=C(m+q);z[h+80>>2]=J;L=C(i+k);z[h+76>>2]=L;m=C(m*C(-2));z[h+116>>2]=m;i=C(i*C(-2));z[h+112>>2]=i;A=C(r+r);o=C(l+l);k=C(p*C(C(t*A)-C(u*o)));z[h+56>>2]=k;M=C(-k);z[h+68>>2]=M;q=C(p*C(C(t*o)+C(A*u)));z[h+52>>2]=q;N=C(-q);z[h- -64>>2]=N;s=C(y-s);j=C(E*C(C(n*j)+C(C(x*H)+C(-1))));x=C(s-j);z[h+84>>2]=x;t=C(k*C(-2));z[h+104>>2]=t;u=C(q*C(-2));z[h+100>>2]=u;n=C(j*C(-2));z[h+108>>2]=n;r=C(p*C(C(r*A)+C(C(l*o)+C(-1))));z[h+48>>2]=r;p=C(r*C(-2));z[h+96>>2]=p;l=C(j+s);z[h+72>>2]=l;j=C(-r);z[h+60>>2]=j;z[h+8>>2]=M-k;z[h+4>>2]=N-q;z[h>>2]=j-r;z[h+136>>2]=w-J;z[h+132>>2]=I-L;z[h+128>>2]=x-l;I=I_(h+48|0,h,h+72|0,h+128|0,h+44|0,h+40|0);x=z[a+4>>2];H=C(x+z[b+4>>2]);r=C(H+z[e>>2]);A=C(r*r);R=I>=A;a:{if(R){break a}l=C(K(C(C(m*m)+C(C(n*n)+C(i*i)))));z[h+132>>2]=l;r=C(K(C(C(t*t)+C(C(p*p)+C(u*u)))));z[h+128>>2]=r;if(r!=C(0)){k=C(C(1)/r);t=C(t*k);z[h+104>>2]=t;u=C(u*k);z[h+100>>2]=u;p=C(p*k);z[h+96>>2]=p}if(l!=C(0)){k=C(C(1)/l);m=C(k*m);z[h+116>>2]=m;i=C(k*i);z[h+112>>2]=i;n=C(n*k);z[h+108>>2]=n}if(C(D(C(C(t*m)+C(C(p*n)+C(u*i)))))>C(.9998000264167786)){z[h+36>>2]=l*C(.0010000000474974513);z[h+32>>2]=r*C(.0010000000474974513);a=v[g+4096>>2];e=0;while(1){O=e<<2;E=z[O+(h+32|0)>>2];F=B(e,12);b=F+(h+96|0)|0;m=z[b+8>>2];G=h+48|0;d=G+B(e,24)|0;i=z[d+8>>2];n=z[b+4>>2];l=z[d+4>>2];k=z[b>>2];q=z[d>>2];F=h+F|0;b=1-e|0;G=G+B(b,24)|0;j=z[G>>2];z[F>>2]=j;o=z[G+4>>2];z[F+4>>2]=o;s=z[G+8>>2];z[F+8>>2]=s;S=(e|0)==1?f:T;d=B(b,12)+h|0;O=O+(h+128|0)|0;j=C(C(m*C(s-i))+C(C(k*C(j-q))+C(n*C(o-l))));J=C(-E);b:{if(!(j>=J)){b=a;break b}if(!(j<=C(E+z[O>>2]))){b=a;break b}z[d>>2]=q+C(k*j);z[d+4>>2]=l+C(n*j);z[d+8>>2]=i+C(m*j);L=z[h+20>>2];o=C(L-z[h+8>>2]);M=z[h+12>>2];s=C(M-z[h>>2]);N=z[h+16>>2];y=C(N-z[h+4>>2]);w=C(C(o*o)+C(C(s*s)+C(y*y)));if(!(w>C(9.999999974752427e-7))){b=a;break b}if(!(w>>0>63){b=a;break c}U=z[c+16>>2];V=z[c+20>>2];W=z[c+24>>2];j=z[S+4>>2];b=a+1|0;v[g+4096>>2]=b;a=(a<<6)+g|0;v[a+52>>2]=-1;w=C(K(w));z[a+12>>2]=w-H;Q=o;o=C(C(1)/w);w=C(Q*o);z[a+8>>2]=w;y=C(y*o);z[a+4>>2]=y;o=C(s*o);z[a>>2]=o;z[a+24>>2]=W+C(L-C(w*j));z[a+20>>2]=V+C(N-C(y*j));z[a+16>>2]=U+C(M-C(o*j))}P=P+1|0}j=z[G+12>>2];z[F>>2]=j;o=z[G+16>>2];z[F+4>>2]=o;s=z[G+20>>2];z[F+8>>2]=s;j=C(C(m*C(s-i))+C(C(k*C(j-q))+C(C(o-l)*n)));d:{if(!(j>=J)){a=b;break d}if(!(j<=C(E+z[O>>2]))){a=b;break d}z[d>>2]=q+C(k*j);z[d+4>>2]=l+C(n*j);z[d+8>>2]=i+C(m*j);q=z[h+20>>2];i=C(q-z[h+8>>2]);j=z[h+12>>2];n=C(j-z[h>>2]);E=z[h+16>>2];l=C(E-z[h+4>>2]);k=C(C(i*i)+C(C(n*n)+C(l*l)));if(!(k>C(9.999999974752427e-7))){a=b;break d}if(!(k>>0>63){a=b;break e}o=z[c+16>>2];s=z[c+20>>2];y=z[c+24>>2];m=z[S+4>>2];a=b+1|0;v[g+4096>>2]=a;b=(b<<6)+g|0;v[b+52>>2]=-1;k=C(K(k));z[b+12>>2]=k-H;Q=i;i=C(C(1)/k);k=C(Q*i);z[b+8>>2]=k;l=C(l*i);z[b+4>>2]=l;i=C(n*i);z[b>>2]=i;z[b+24>>2]=y+C(q-C(k*m));z[b+20>>2]=s+C(E-C(l*m));z[b+16>>2]=o+C(j-C(i*m))}P=P+1|0}e=e+1|0;if((e|0)!=2){continue}break}if(P){break a}}i=z[h+56>>2];m=z[h+44>>2];k=C(i+C(m*C(z[h+68>>2]-i)));n=z[h+80>>2];i=z[h+40>>2];n=C(k-C(n+C(i*C(z[h+92>>2]-n))));l=z[h+48>>2];q=C(l+C(m*C(z[h+60>>2]-l)));l=z[h+72>>2];l=C(q-C(l+C(i*C(z[h+84>>2]-l))));j=z[h+52>>2];j=C(j+C(m*C(z[h+64>>2]-j)));m=z[h+76>>2];m=C(j-C(m+C(i*C(z[h+88>>2]-m))));i=C(C(n*n)+C(C(l*l)+C(m*m)));f:{if(iC(9.999999974752427e-7)){break f}p=C(1);t=C(0);u=C(0);break f}p=C(C(1)/C(K(i)));t=C(n*p);u=C(m*p);p=C(l*p)}a=v[g+4096>>2];if(a>>>0>63){break a}m=z[c+16>>2];i=z[c+20>>2];n=z[c+24>>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=t;z[a+4>>2]=u;z[a>>2]=p;v[a+52>>2]=-1;z[a+12>>2]=C(K(I))-H;z[a+24>>2]=C(k+n)-C(x*t);z[a+20>>2]=C(j+i)-C(x*u);z[a+16>>2]=C(q+m)-C(x*p)}xa=h+144|0;return!R|0}function yr(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;i=xa-16|0;xa=i;a:{if(v[a+4656>>2]){b9(v[37696],2,11709,2308,23536,0);break a}u[i+6>>1]=0;c=a+4872|0;zr(c,0,i+6|0);Ar(c,v[a+4876>>2]);v[i+8>>2]=0;c=a+4884|0;Br(c,0,i+8|0);Cr(c,v[a+4888>>2]);v[i+12>>2]=0;c=a+4896|0;Dr(c,0,i+12|0);Er(c,v[a+4900>>2]);g=a+32|0;f=xa-32|0;xa=f;b:{if(b){fP(g,1);b=v[g+2168>>2];v[b+60>>2]=-1;v[b+48>>2]=0;eJ(b,1);gP(g);break b}eJ(v[g+2168>>2],1)}PO(g);c=v[g+2168>>2];v[c+60>>2]=-1;v[c+48>>2]=0;b=v[c+56>>2];if((b|0)!=v[c+52>>2]){d=v[c+44>>2];if(d){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d);b=v[c+56>>2]}c:{if(!b){b=0;d=0;break c}d=v[37696];b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,b,24422,17904,169)|0;d=v[c+56>>2]}v[c+52>>2]=d;v[c+44>>2]=b}t[f+28|0]=0;b=g+1180|0;c=v[b+4>>2];if((c|0)<0){d=v[b>>2];c=d+B(c,24)|0;while(1){e=v[f+12>>2];v[c>>2]=v[f+8>>2];v[c+4>>2]=e;v[c+16>>2]=v[f+24>>2];e=v[f+20>>2];v[c+8>>2]=v[f+16>>2];v[c+12>>2]=e;t[c+20|0]=w[f+28|0];c=c+24|0;if(d>>>0>c>>>0){continue}break}}v[b+4>>2]=0;hP(b,v[g+1184>>2]);c=v[g+1192>>2];u[f+16>>1]=65535;v[f+8>>2]=-1;v[f+12>>2]=-1;b=v[c+4>>2];if((b|0)<0){d=v[c>>2];b=d+B(b,12)|0;while(1){e=v[f+12>>2];v[b>>2]=v[f+8>>2];v[b+4>>2]=e;v[b+8>>2]=v[f+16>>2];b=b+12|0;if(d>>>0>b>>>0){continue}break}}v[c+4>>2]=0;iP(c,v[c+4>>2]);d=g+1244|0;v[d>>2]=0;v[f+8>>2]=0;c=g+1240|0;b=v[c+4>>2];if((b|0)<0){e=v[c>>2];b=e+(b<<2)|0;while(1){v[b>>2]=v[f+8>>2];b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[c+4>>2]=0;b=c;c=0;h=v[d>>2];d:{if(!h){break d}d=h<<2;if(!d){break d}c=v[37696];e=c+12|0;c=(m=e,n=d,o=Ba[v[v[c>>2]+20>>2]](c)|0?59663:63804,p=16608,q=553,l=v[v[e>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}e=v[b>>2];d=v[b+4>>2];if((d|0)>0){j=(d<<2)+c|0;d=c;while(1){v[d>>2]=v[e>>2];e=e+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}e=v[b>>2]}if(!(!e|v[b+8>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[b+8>>2]=h;v[b>>2]=c;jP(g);d=g+2284|0;b=0;h=v[g+2288>>2];e:{if(!h){break e}c=h<<2;if(!c){break e}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?56187:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,16608,553)|0}e=v[d>>2];c=v[d+4>>2];if((c|0)>0){j=(c<<2)+b|0;c=b;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(j>>>0>c>>>0){continue}break}e=v[d>>2]}if(!(!e|v[d+8>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e)}v[d+8>>2]=h;v[d>>2]=b;c=v[g+2368>>2];if(v[c+36>>2]){e=c+8|0;b=0;while(1){d=v[v[c+32>>2]+(b<<2)>>2];v[f+8>>2]=d;f:{if((d|0)==(v[c+4>>2]-1|0)){v[c+4>>2]=d;break f}h=v[c+12>>2];if(h>>>0>=(v[c+16>>2]&2147483647)>>>0){pn(e,f+8|0);break f}v[v[c+8>>2]+(h<<2)>>2]=d;v[c+12>>2]=v[c+12>>2]+1}b=b+1|0;if(b>>>0>2]){continue}break}}b=0;v[c+36>>2]=0;v[f+8>>2]=0;d=c+32|0;cz(d,0,f+8|0);Aw(d,v[c+36>>2]);c=v[g+2372>>2];if(v[c+36>>2]){e=c+8|0;while(1){d=v[v[c+32>>2]+(b<<2)>>2];v[f+8>>2]=d;g:{if((d|0)==(v[c+4>>2]-1|0)){v[c+4>>2]=d;break g}h=v[c+12>>2];if(h>>>0>=(v[c+16>>2]&2147483647)>>>0){pn(e,f+8|0);break g}v[v[c+8>>2]+(h<<2)>>2]=d;v[c+12>>2]=v[c+12>>2]+1}b=b+1|0;if(b>>>0>2]){continue}break}}v[c+36>>2]=0;v[f+8>>2]=0;b=c+32|0;cz(b,0,f+8|0);Aw(b,v[c+36>>2]);kP(g);v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;c=g+2420|0;b=v[c+4>>2];if((b|0)<0){d=v[c>>2];b=d+(b<<4)|0;while(1){e=v[f+12>>2];v[b>>2]=v[f+8>>2];v[b+4>>2]=e;e=v[f+20>>2];v[b+8>>2]=v[f+16>>2];v[b+12>>2]=e;b=b+16|0;if(d>>>0>b>>>0){continue}break}}v[c+4>>2]=0;b=c;d=0;h=v[g+2424>>2];h:{if(!h){break h}e=h<<4;if(!e){break h}c=v[37696];d=c+12|0;d=(q=d,p=e,o=Ba[v[v[c>>2]+20>>2]](c)|0?31019:63804,n=16608,m=553,l=v[v[d>>2]+8>>2],Ba[l](q|0,p|0,o|0,n|0,m|0)|0)}e=v[b>>2];c=v[b+4>>2];if((c|0)>0){j=(c<<4)+d|0;c=d;while(1){k=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=k;k=v[e+12>>2];v[c+8>>2]=v[e+8>>2];v[c+12>>2]=k;e=e+16|0;c=c+16|0;if(j>>>0>c>>>0){continue}break}e=v[b>>2]}if(!(!e|v[b+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[b+8>>2]=h;v[b>>2]=d;RO(g+24|0,v[g+28>>2]);YO(g+52|0,v[g+56>>2]);YO(g- -64|0,v[g+68>>2]);YO(g+76|0,v[g+80>>2]);b=v[g+976>>2];c=v[b+140>>2];if(c){while(1){c=c-1|0;d=v[v[b+136>>2]+(c<<2)>>2];v[b+140>>2]=c;if(d){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,d);c=v[b+140>>2]}v[b+164>>2]=v[b+164>>2]-1;if(c){continue}break}}xa=f+32|0;b=xa-16|0;xa=b;a=a+5584|0;if(!v[a+20>>2]){v[b+12>>2]=0;c=a+16|0;cz(c,0,b+12|0);Aw(c,v[a+20>>2])}if(!v[a+56>>2]){v[b+12>>2]=0;c=a+52|0;cz(c,0,b+12|0);Aw(c,v[a+56>>2])}xa=b+16|0}xa=i+16|0}function LX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=0,P=C(0),Q=C(0),R=C(0),S=C(0);c=xa-544|0;xa=c;G=v[a+32>>2];v[c+536>>2]=0;v[c+540>>2]=0;v[c+528>>2]=0;v[c+532>>2]=0;v[c+512>>2]=0;D=z[d+20>>2];A=z[d+24>>2];k=z[d+8>>2];l=z[d>>2];n=z[d+4>>2];q=z[d+12>>2];m=z[d+16>>2];I=z[b+20>>2];L=z[b+24>>2];p=z[b>>2];s=z[b+4>>2];y=z[b+8>>2];r=z[b+12>>2];P=z[b+16>>2];v[c+508>>2]=0;z[c+504>>2]=L;z[c+500>>2]=I;z[c+496>>2]=P;z[c+492>>2]=r;z[c+488>>2]=y;z[c+484>>2]=s;z[c+480>>2]=p;v[c+476>>2]=0;v[c+460>>2]=0;v[c+444>>2]=0;Q=C(-p);m=C(m-P);o=C(D-I);A=C(A-L);E=C(C(C(Q*m)-C(o*s))-C(y*A));D=C(C(r*r)+C(-.5));F=C(C(C(r*C(C(s*m)-C(p*o)))+C(D*A))-C(y*E));z[c+472>>2]=F+F;F=C(C(C(D*o)+C(r*C(C(p*A)-C(y*m))))-C(s*E));z[c+468>>2]=F+F;d=c+464|0;m=C(C(C(D*m)+C(r*C(C(y*o)-C(s*A))))-C(p*E));z[d>>2]=m+m;o=C(C(C(n*y)-C(s*k))+C(C(l*r)-C(q*p)));m=C(o+o);A=C(C(C(k*p)-C(y*l))+C(C(n*r)-C(q*s)));E=C(A+A);F=C(C(1)-C(o*m));M=C(A*E);z[c+456>>2]=F-M;o=C(C(C(l*s)-C(p*n))+C(C(k*r)-C(q*y)));J=C(o*E);k=C(C(q*r)-C(C(C(Q*l)-C(n*s))-C(y*k)));l=C(k*m);z[c+452>>2]=J-l;n=C(o*m);q=C(k*E);z[c+448>>2]=n+q;z[c+440>>2]=J+l;l=C(o+o);o=C(o*l);z[c+436>>2]=F-o;m=C(A*m);k=C(k*l);z[c+432>>2]=m-k;v[c+428>>2]=0;z[c+424>>2]=n-q;z[c+420>>2]=m+k;z[c+416>>2]=C(C(1)-M)-o;k=z[e+52>>2];l=z[e+56>>2];n=z[e+48>>2];q=z[a+8>>2];m=z[a+12>>2];o=z[a+4>>2];v[c+412>>2]=0;z[c+408>>2]=m;z[c+404>>2]=q;z[c+400>>2]=o;e=v[a+16>>2];N=v[a+20>>2];O=v[a+28>>2];v[c+392>>2]=v[a+24>>2];v[c+396>>2]=O;v[c+384>>2]=e;v[c+388>>2]=N;v[c+380>>2]=0;z[c+376>>2]=l;z[c+372>>2]=k;t[c+352|0]=0;v[c+348>>2]=3;v[c+320>>2]=0;v[c+324>>2]=0;v[c+328>>2]=0;v[c+332>>2]=0;z[c+368>>2]=n;k=k>=n?n:k;k=k<=l?k:l;l=C(k*C(.05000000074505806));z[c+344>>2]=l;z[c+340>>2]=l;z[c+336>>2]=k*C(.15000000596046448);t[c+192|0]=0;v[c+184>>2]=0;v[c+188>>2]=0;v[c+176>>2]=0;v[c+180>>2]=0;v[c+168>>2]=0;v[c+172>>2]=0;v[c+160>>2]=0;v[c+164>>2]=0;N=G+16|0;v[c+304>>2]=N;v[c+312>>2]=v[G+56>>2]+B(w[G+55|0],20);t[c+316|0]=w[G+54|0];k=C(o*z[G+68>>2]);l=C(q*z[G+72>>2]);k=k<=l?k:l;l=C(m*z[G+76>>2]);k=k<=l?k:l;z[c+184>>2]=k*C(.02500000037252903);z[c+176>>2]=k*C(.10000000149011612);z[c+180>>2]=k*C(.05000000074505806);O=c+160|0;GV(c+400|0,c+384|0,c+208|0,c+256|0,O,o==C(1)&q==C(1)&m==C(1));v[c+308>>2]=v[G+60>>2];F=z[f+4>>2];M=z[f>>2];J=z[f+8>>2];v[c+156>>2]=0;k=C(C(-J)*g);l=C(C(-M)*g);n=C(C(-F)*g);q=C(C(y*k)+C(C(p*l)+C(s*n)));m=C(C(C(D*k)-C(r*C(C(p*n)-C(s*l))))+C(y*q));z[c+152>>2]=m+m;m=C(C(s*q)+C(C(D*n)-C(r*C(C(y*l)-C(k*p)))));z[c+148>>2]=m+m;k=C(C(p*q)+C(C(D*l)-C(r*C(C(s*k)-C(n*y)))));z[c+144>>2]=k+k;G=x[i>>1];e=v[c+436>>2];v[c+48>>2]=v[c+432>>2];v[c+52>>2]=e;e=v[c+428>>2];v[c+40>>2]=v[c+424>>2];v[c+44>>2]=e;e=v[c+444>>2];v[c+56>>2]=v[c+440>>2];v[c+60>>2]=e;H=v[c+452>>2];e=c- -64|0;v[e>>2]=v[c+448>>2];v[e+4>>2]=H;H=v[c+460>>2];v[c+72>>2]=v[c+456>>2];v[c+76>>2]=H;H=v[d+4>>2];v[c+80>>2]=v[d>>2];v[c+84>>2]=H;H=v[c+476>>2];v[c+88>>2]=v[c+472>>2];v[c+92>>2]=H;H=v[c+420>>2];v[c+32>>2]=v[c+416>>2];v[c+36>>2]=H;k=z[c+36>>2];z[c+36>>2]=z[c+48>>2];v[c+16>>2]=141468;v[c+24>>2]=c+416;v[c+20>>2]=c+320;l=z[c+40>>2];n=z[c+56>>2];z[c+48>>2]=k;z[c+40>>2]=z[e>>2];z[c+56>>2]=z[c+68>>2];z[c+68>>2]=n;z[e>>2]=l;v[c+8>>2]=141216;v[c+12>>2]=O;e=d;d=G&512;e=MX(c+16|0,c+8|0,e,c+528|0,c+144|0,c+128|0,c+96|0,c+112|0,j,d>>>9|0);a:{if(!e){break a}if(GX(h,f,c+128|0,c+96|0,c+112|0,c+480|0,(d|0)!=0,1)){break a}u[h+12>>1]=x[h+12>>1]|1;j=z[c+100>>2];k=z[c+96>>2];l=z[c+104>>2];n=z[c+120>>2];q=z[c+488>>2];m=z[c+112>>2];o=z[c+480>>2];A=z[c+116>>2];E=z[c+484>>2];g=C(z[c+128>>2]*g);z[h+40>>2]=g;S=C(J*g);R=L;L=C(C(q*n)+C(C(o*m)+C(E*A)));J=C(C(C(r*C(C(o*A)-C(m*E)))+C(D*n))+C(q*L));z[h+24>>2]=S+C(R+C(J+J));R=I;I=C(C(E*L)+C(C(D*A)+C(r*C(C(q*m)-C(n*o)))));z[h+20>>2]=C(F*g)+C(R+C(I+I));I=C(M*g);g=C(C(o*L)+C(C(D*m)+C(r*C(C(E*n)-C(A*q)))));z[h+16>>2]=I+C(P+C(g+g));g=C(C(y*l)+C(C(p*k)+C(s*j)));n=C(C(C(r*C(C(p*j)+C(k*C(-s))))+C(D*l))+C(y*g));n=C(n+n);p=C(C(p*g)+C(C(D*k)+C(r*C(C(s*l)+C(j*C(-y))))));p=C(p+p);g=C(C(s*g)+C(C(D*j)+C(r*C(C(y*k)+C(l*Q)))));g=C(g+g);j=C(C(1)/C(K(C(C(n*n)+C(C(p*p)+C(g*g))))));z[h+36>>2]=n*j;z[h+32>>2]=g*j;z[h+28>>2]=p*j;HX(h,x[i>>1],a,N,b,f)}xa=c+544|0;return e|0}function ti(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0,g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0),p=0,q=0,r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=0,E=0,F=C(0),G=C(0),H=0,I=0,J=0,L=0,M=0,N=0,O=0;h=xa-32|0;xa=h;g=v[a+100>>2];a:{b:{if(b){if(g){break b}c=0;b9(v[37696],8,19147,332,73026,0);break a}if(!g){break b}c=0;b9(v[37696],8,19147,338,72967,0);break a}v[a+116>>2]=v[a+116>>2]+1;j=z[c+12>>2];k=z[c+8>>2];l=z[c>>2];o=z[c+4>>2];e=C(C(1)/C(K(C(C(j*j)+C(C(k*k)+C(C(l*l)+C(o*o)))))));z[h+12>>2]=j*e;z[h+8>>2]=k*e;z[h+4>>2]=o*e;z[h>>2]=l*e;z[h+16>>2]=z[c+16>>2];z[h+20>>2]=z[c+20>>2];z[h+24>>2]=z[c+24>>2];c:{if(!v[37391]){b9(v[37696],8,5382,324,70455,0);c=0;break c}g=b;d=xa+-64|0;xa=d;p=v[37389];b=v[p+3336>>2];if(!b){q=xa-16|0;xa=q;m=p+3048|0;c=v[m+284>>2];if(c){b=v[37696];f=b+12|0;f=(J=f,L=c,M=Ba[v[v[b>>2]+20>>2]](b)|0?39419:63804,N=18373,O=180,I=v[v[f>>2]+8>>2],Ba[I](J|0,L|0,M|0,N|0,O|0)|0)}else{f=0}v[q+12>>2]=f;b=v[m+268>>2];d:{if(b>>>0>=(v[m+272>>2]&2147483647)>>>0){b=0;c=m+4|0;i=v[c+268>>2];D=i&2147483647?i<<1:1;e:{if(!D){break e}i=D<<2;if(!(w[c+256|0]|i>>>0>256)){t[c+256|0]=1;b=c;break e}if(!i){break e}b=v[37696];n=Ba[v[v[b>>2]+20>>2]](b)|0?39419:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,i,n,16608,553)|0}n=v[c+264>>2];H=(n<<2)+b|0;if((n|0)>0){E=v[c+260>>2];i=b;while(1){v[i>>2]=v[E>>2];E=E+4|0;i=i+4|0;if(H>>>0>i>>>0){continue}break}}v[H>>2]=v[q+12>>2];f:{if(v[c+268>>2]<0){break f}i=v[c+260>>2];if((i|0)==(c|0)){t[c+256|0]=0;break f}if(!i){break f}n=v[37696];Ba[v[v[n+12>>2]+12>>2]](n+12|0,i);n=v[c+264>>2]}v[c+268>>2]=D;v[c+260>>2]=b;v[c+264>>2]=n+1;break d}v[v[m+264>>2]+(b<<2)>>2]=f;v[m+268>>2]=b+1}b=(B(v[m+276>>2],384)+f|0)-384|0;if(f>>>0<=b>>>0){c=v[m+288>>2];while(1){v[b>>2]=c;c=b;b=b-384|0;if(f>>>0<=b>>>0){continue}break}v[m+288>>2]=c}xa=q+16|0;b=v[p+3336>>2]}v[p+3336>>2]=v[b>>2];c=p+3328|0;v[c>>2]=v[c>>2]+1;c=xa-16|0;xa=c;v[b+4>>2]=65549;v[b+8>>2]=0;v[b>>2]=120136;v[b+16>>2]=0;v[b+12>>2]=0;v[b>>2]=119540;v[b+8>>2]=0;v[b+20>>2]=0;v[b+24>>2]=65536;v[b+28>>2]=0;v[b+32>>2]=65536;v[b+36>>2]=-1;v[b+40>>2]=0;v[b+56>>2]=0;v[b>>2]=119236;v[b+48>>2]=0;v[b+52>>2]=0;AG(b- -64|0,2,h);z[b+256>>2]=z[b+80>>2];f=v[b+88>>2];v[b+260>>2]=v[b+84>>2];v[b+264>>2]=f;f=v[b+96>>2];v[b+268>>2]=v[b+92>>2];v[b+272>>2]=f;f=v[b+104>>2];v[b+276>>2]=v[b+100>>2];v[b+280>>2]=f;f=v[b+148>>2];v[b+284>>2]=v[b+144>>2];v[b+288>>2]=f;z[b+292>>2]=z[b+152>>2];f=v[b+164>>2];v[b+296>>2]=v[b+160>>2];v[b+300>>2]=f;z[b+304>>2]=z[b+168>>2];f=v[b+52>>2];e=z[b+220>>2];v[b+312>>2]=1;v[b+316>>2]=0;z[b+308>>2]=e;v[b+356>>2]=0;v[b+328>>2]=g;v[b+324>>2]=0;v[b+320>>2]=a;v[b>>2]=118828;v[b+368>>2]=-1;v[b+360>>2]=4;v[b+364>>2]=-1;v[b+352>>2]=b+332;t[b+348|0]=1;v[b+52>>2]=f&-251658241|67108864;g:{if(!g){break g}v[c+12>>2]=b;f=v[g+356>>2];if(f>>>0>=(v[g+360>>2]&2147483647)>>>0){Yk(g+332|0,c+12|0);break g}v[v[g+352>>2]+(f<<2)>>2]=b;v[g+356>>2]=f+1}xa=c+16|0;h:{if(g){Ba[v[v[g>>2]+112>>2]](d,g);o=z[h+8>>2];r=z[h+4>>2];s=z[h+12>>2];u=z[h>>2];j=z[d>>2];e=C(z[h+16>>2]-z[d+16>>2]);x=C(e+e);e=C(z[h+20>>2]-z[d+20>>2]);y=C(e+e);k=z[d+4>>2];l=z[d+8>>2];e=C(z[h+24>>2]-z[d+24>>2]);A=C(e+e);F=C(C(C(C(-j)*x)-C(y*k))-C(l*A));e=z[d+12>>2];G=C(C(e*e)+C(-.5));z[d+56>>2]=C(C(A*G)+C(e*C(C(k*x)-C(j*y))))-C(l*F);z[d+52>>2]=C(C(y*G)+C(e*C(C(j*A)-C(l*x))))-C(k*F);z[d+44>>2]=C(l*o)+C(C(k*r)+C(C(e*s)+C(j*u)));z[d+40>>2]=C(u*k)+C(C(C(e*o)-C(s*l))-C(j*r));z[d+36>>2]=C(o*j)+C(C(C(e*r)-C(s*k))-C(l*u));z[d+32>>2]=C(r*l)+C(C(C(e*u)-C(s*j))-C(k*o));z[d+48>>2]=C(C(x*G)+C(e*C(C(l*y)-C(k*A))))-C(j*F);c=0;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;g=Ba[v[v[a>>2]+108>>2]](a,g,d+32|0,b,d)|0;if(!g){Ba[v[v[b>>2]+16>>2]](b);b9(v[37696],32,5382,207,70369,0);break h}v[b+324>>2]=g}c=b}xa=d- -64|0}if(!c){c=0;break a}i:{if((v[a+16>>2]>>>30|0)-3>>>0<4294967294){break i}b=v[a+12>>2];if(!b){break i}b=b-16|0;if(!b){break i}g=b+16|0;Au(g,c+48|0,0,0,0);ku(c+20|0,b,c,0,0,0);b=Ba[v[v[c>>2]+252>>2]](c)|0;if(b){Lu(g,Ba[v[v[b>>2]+48>>2]](b)|0)}if(v[c+16>>2]){qh(c+12|0)}b=Ba[v[v[c>>2]+248>>2]](c)|0;b=v[(Ba[v[v[b>>2]+100>>2]](b)|0)+12>>2];if(b){I=c,O=tG(b,v[c- -64>>2]),v[I+364>>2]=O}}v[h>>2]=c;b=v[a+100>>2];if(b>>>0>=(v[a+104>>2]&2147483647)>>>0){Yk(a+76|0,h);break a}v[v[a+96>>2]+(b<<2)>>2]=c;v[a+100>>2]=b+1}xa=h+32|0;return c|0}function pr(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=Ba[v[v[b>>2]+12>>2]](b)|0;i=Ba[v[v[b>>2]+8>>2]](b)|0;g=a+4|0;j=i+v[a+8>>2]|0;if(j>>>0>(v[a+12>>2]&2147483647)>>>0){a:{if(!j){break a}d=j<<4;if(!d){break a}c=v[37696];f=c+12|0;f=(m=f,n=d,o=Ba[v[v[c>>2]+20>>2]](c)|0?27541:63804,p=16608,q=553,l=v[v[f>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}h=v[g>>2];c=v[g+4>>2];if((c|0)>0){k=(c<<4)+f|0;d=h;c=f;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];d=d+16|0;c=c+16|0;if(k>>>0>c>>>0){continue}break}}if(!(!h|v[g+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}v[g+8>>2]=j;v[g>>2]=f}if((i|0)>0){f=(i<<4)+e|0;while(1){d=v[a+8>>2];b:{if(d>>>0>=(v[a+12>>2]&2147483647)>>>0){qr(g,e);break b}c=v[a+4>>2]+(d<<4)|0;z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];v[c+12>>2]=v[e+12>>2];v[a+8>>2]=d+1}e=e+16|0;if(f>>>0>e>>>0){continue}break}}e=Ba[v[v[b>>2]+20>>2]](b)|0;c=Ba[v[v[b>>2]+16>>2]](b)|0;d=a+16|0;f=c+v[a+20>>2]|0;if(f>>>0>(v[a+24>>2]&2147483647)>>>0){Bk(d,f)}if((c|0)>0){h=(c<<5)+e|0;while(1){f=v[a+20>>2];c:{if(f>>>0>=(v[a+24>>2]&2147483647)>>>0){rr(d,e);break c}c=v[a+16>>2]+(f<<5)|0;z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];v[c+12>>2]=v[e+12>>2];z[c+16>>2]=z[e+16>>2];z[c+20>>2]=z[e+20>>2];z[c+24>>2]=z[e+24>>2];v[c+28>>2]=v[e+28>>2];v[a+20>>2]=f+1}e=e+32|0;if(h>>>0>e>>>0){continue}break}}e=Ba[v[v[b>>2]+28>>2]](b)|0;j=Ba[v[v[b>>2]+24>>2]](b)|0;g=a+28|0;i=j+v[g+4>>2]|0;if(i>>>0>(v[g+8>>2]&2147483647)>>>0){f=0;d:{if(!i){break d}d=B(i,48);if(!d){break d}c=v[37696];f=Ba[v[v[c>>2]+20>>2]](c)|0?43123:63804;f=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,f,16608,553)|0}h=v[g>>2];c=v[g+4>>2];if((c|0)>0){k=B(c,48)+f|0;d=h;c=f;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];v[c+44>>2]=v[d+44>>2];d=d+48|0;c=c+48|0;if(k>>>0>c>>>0){continue}break}}if(!(!h|v[g+8>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,h)}v[g+8>>2]=i;v[g>>2]=f}if((j|0)>0){f=B(j,48)+e|0;while(1){d=v[g+4>>2];e:{if(d>>>0>=(v[g+8>>2]&2147483647)>>>0){Us(g,e);break e}c=v[g>>2]+B(d,48)|0;z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];v[c+12>>2]=v[e+12>>2];z[c+16>>2]=z[e+16>>2];z[c+20>>2]=z[e+20>>2];z[c+24>>2]=z[e+24>>2];v[c+28>>2]=v[e+28>>2];z[c+32>>2]=z[e+32>>2];z[c+36>>2]=z[e+36>>2];z[c+40>>2]=z[e+40>>2];v[c+44>>2]=v[e+44>>2];v[g+4>>2]=d+1}e=e+48|0;if(f>>>0>e>>>0){continue}break}}e=Ba[v[v[b>>2]+36>>2]](b)|0;f=Ba[v[v[b>>2]+32>>2]](b)|0;h=f+v[a+44>>2]|0;if(h>>>0>(v[a+48>>2]&2147483647)>>>0){c=0;f:{if(!h){break f}d=B(h,24);if(!d){break f}b=v[37696];c=b+12|0;c=(q=c,p=d,o=Ba[v[v[b>>2]+20>>2]](b)|0?27069:63804,n=16608,m=553,l=v[v[c>>2]+8>>2],Ba[l](q|0,p|0,o|0,n|0,m|0)|0)}b=v[a+40>>2];d=v[a+44>>2];if((d|0)>0){g=B(d,24)+c|0;d=c;while(1){z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];i=v[b+16>>2];v[d+12>>2]=v[b+12>>2];v[d+16>>2]=i;v[d+20>>2]=v[b+20>>2];b=b+24|0;d=d+24|0;if(g>>>0>d>>>0){continue}break}b=v[a+40>>2]}if(!(!b|v[a+48>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+48>>2]=h;v[a+40>>2]=c}if((f|0)>0){g=B(f,24)+e|0;while(1){b=v[a+44>>2];g:{if(b>>>0>=(v[a+48>>2]&2147483647)>>>0){c=0;b=v[a+48>>2];h=b&2147483647?b<<1:1;h:{if(!h){break h}d=B(h,24);if(!d){break h}b=v[37696];c=b+12|0;c=(m=c,n=d,o=Ba[v[v[b>>2]+20>>2]](b)|0?27069:63804,p=16608,q=553,l=v[v[c>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}b=v[a+44>>2];if((b|0)>0){b=B(b,24)+c|0;f=v[a+40>>2];d=c;while(1){z[d>>2]=z[f>>2];z[d+4>>2]=z[f+4>>2];z[d+8>>2]=z[f+8>>2];i=v[f+16>>2];v[d+12>>2]=v[f+12>>2];v[d+16>>2]=i;v[d+20>>2]=v[f+20>>2];f=f+24|0;d=d+24|0;if(b>>>0>d>>>0){continue}break}b=v[a+44>>2]}b=B(b,24)+c|0;z[b>>2]=z[e>>2];z[b+4>>2]=z[e+4>>2];z[b+8>>2]=z[e+8>>2];v[b+20>>2]=v[e+20>>2];d=v[e+16>>2];v[b+12>>2]=v[e+12>>2];v[b+16>>2]=d;i:{if(v[a+48>>2]<0){break i}b=v[a+40>>2];if(!b){break i}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+48>>2]=h;v[a+40>>2]=c;break g}b=v[a+40>>2]+B(b,24)|0;z[b>>2]=z[e>>2];z[b+4>>2]=z[e+4>>2];z[b+8>>2]=z[e+8>>2];c=v[e+16>>2];v[b+12>>2]=v[e+12>>2];v[b+16>>2]=c;v[b+20>>2]=v[e+20>>2]}v[a+44>>2]=v[a+44>>2]+1;e=e+24|0;if(g>>>0>e>>>0){continue}break}}}function CL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,w=C(0),A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0;i=v[a+88>>2];a=v[i+8>>2];a:{b:{if((a|0)!=-1){l=v[i+12>>2]+B(a,40)|0;v[i+8>>2]=v[l+36>>2];break b}a=v[i>>2];if(a>>>0>=256){b9(v[37696],16,13406,2106,69936,0);a=-1;break a}v[i>>2]=a+1;g=v[i+16>>2];f=g+1|0;h=v[i+20>>2]&2147483647;c:{if(f>>>0<=h>>>0){break c}o=h;h=h?h<<1:2;h=f>>>0>h>>>0?f:h;if(o>>>0>=h>>>0){break c}tL(i+12|0,h);g=v[i+16>>2]}v[i+16>>2]=f;l=v[i+12>>2]+B(g,40)|0}f=v[37696];h=Ba[v[v[f>>2]+20>>2]](f)|0?37221:63804;D=Ba[v[v[f+12>>2]+8>>2]](f+12|0,13008,h,13406,2114)|0;f=D;v[f+32>>2]=0;v[f+36>>2]=0;v[f>>2]=0;v[f+4>>2]=0;v[f+76>>2]=0;v[f+80>>2]=0;v[f+72>>2]=-1;v[f+64>>2]=0;v[f+68>>2]=0;t[f+53|0]=0;t[f+54|0]=0;t[f+55|0]=0;t[f+56|0]=0;t[f+57|0]=0;t[f+58|0]=0;t[f+59|0]=0;t[f+60|0]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;t[f+21|0]=0;t[f+22|0]=0;t[f+23|0]=0;t[f+24|0]=0;t[f+25|0]=0;t[f+26|0]=0;t[f+27|0]=0;t[f+28|0]=0;v[f+84>>2]=0;v[f+88>>2]=0;v[f+92>>2]=0;v[f+96>>2]=0;v[f+100>>2]=0;v[f+104>>2]=0;v[f+108>>2]=0;v[f+112>>2]=0;v[f+116>>2]=0;v[f+120>>2]=0;v[f+124>>2]=0;v[f+128>>2]=0;SU(f+132|0);u[f+168>>1]=256;f=f+176|0;v[f+12800>>2]=0;v[f+12804>>2]=0;v[f+12816>>2]=0;f=f+12808|0;v[f>>2]=0;v[f+4>>2]=0;f=v[b>>2];v[l+4>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;f=v[b+4>>2];v[l+8>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;f=v[b+8>>2];v[l+12>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;f=v[b+12>>2];v[l+16>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;f=v[b+16>>2];v[l+20>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;f=v[b+20>>2];v[l+28>>2]=D;v[l+24>>2]=((f|0)<0?f^-1:f|-2147483648)>>>1;v[l+36>>2]=v[b+24>>2];vL(v[i>>2],v[i+12>>2]);if(c){h=xa-32|0;xa=h;E=v[i+4216>>2];if(E){G=v[i+24>>2];H=v[i+12>>2];q=v[i+4220>>2];d:{while(1){f=1;if(!q){break d}q=q-1|0;if(!v[(q<<2)+E>>2]){continue}break}f=(q&134217727)+1|0}while(1){q=v[(A<<2)+E>>2];if(q){I=A<<5;while(1){g=B(Raa(q)|I,12)+G|0;b=x[g+4>>1];e:{if(b){c=g+8|0;c=(b|0)!=1?v[(i+B(b,12)|0)+92>>2]+(v[g+8>>2]<<2)|0:c;b=v[(B(x[c+2>>1],40)+H|0)+28>>2];c=v[b+76>>2]+(x[c>>1]<<3)|0;g=v[c+4>>2];b=v[(g&1?96:100)+b>>2]+B(v[c>>2],24)|0;c=v[b+12>>2];v[h+16>>2]=v[b+8>>2];v[h+20>>2]=c;c=v[b+20>>2];v[h+24>>2]=v[b+16>>2];v[h+28>>2]=c;c=v[b+4>>2];v[h+8>>2]=v[b>>2];v[h+12>>2]=c;c=v[h+20>>2];break e}c=v[g>>2];b=B(c,24)+d|0;J=z[b+16>>2];K=z[b+20>>2];L=z[b>>2];M=z[b+4>>2];N=z[b+8>>2];w=z[(c<<2)+e>>2];b=(p(C(z[b+12>>2]+w)),j(2));c=((b|0)<0?b^-1:b|-2147483648)>>>1|0;v[h+20>>2]=c;b=(p(C(N-w)),j(2));v[h+16>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=(p(C(M-w)),j(2));v[h+12>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=(p(C(L-w)),j(2));v[h+8>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=(p(C(K+w)),j(2));v[h+28>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=(p(C(J+w)),j(2));v[h+24>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;g=v[g+8>>2]}f:{if(y[l+16>>2]>2]|y[l+4>>2]>c>>>0|(y[h+24>>2]>2]|y[l+20>>2]>2])){break f}if(y[h+28>>2]>2]|y[l+24>>2]>2]){break f}o=h+8|0;m=0;b=xa-1040|0;xa=b;k=g>>>2|0;O=v[i+24>>2];F=g>>>7|0;g:{if(F>>>0>2]){r=k&31;c=v[i+76>>2];break g}c=v[37696];r=k&31;n=(k+128>>>5|0)+((r|0)!=0)|0;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,n<<2,24422,13406,274)|0;s=v[i+80>>2];h:{if(s){I9(c,v[i+76>>2],s<<2);m=v[i+80>>2];if((n|0)==(m|0)){break h}}J9((m<<2)+c|0,0,n-m<<2)}m=v[i+76>>2];if(m){s=v[37696];Ba[v[v[s+12>>2]+12>>2]](s+12|0,m)}v[i+80>>2]=n;v[i+76>>2]=c}n=g&1;c=(F<<2)+c|0;v[c>>2]=v[c>>2]|1<>1];i:{if((k|0)!=1){if(!k){break i}c=v[(i+B(k,12)|0)+92>>2]+(v[m+8>>2]<<2)|0}I9(b,c,k<<2)}c=pL(D,o,g,n);g=k<<2;n=g+b|0;u[n+2>>1]=a;u[n>>1]=c;if(k>>>0>=2){c=v[m+8>>2];g=(i+g|0)+3176|0;v[v[(i+B(k,12)|0)+92>>2]+(c<<2)>>2]=v[g>>2];v[g>>2]=c}c=k+1|0;j:{if(!k){v[m+8>>2]=v[b>>2];break j}k=i+B(c,12)|0;n=k+92|0;r=(i+(c<<2)|0)+3176|0;g=v[r>>2];k:{if((g|0)!=-1){v[m+8>>2]=g;g=v[n>>2]+(g<<2)|0;v[r>>2]=v[g>>2];break k}g=v[k+96>>2];v[m+8>>2]=g;r=c+g|0;o=v[k+100>>2]&2147483647;l:{if(r>>>0<=o>>>0){break l}s=o;o=o?o<<1:2;o=o>>>0>>0?r:o;if(s>>>0>=o>>>0){break l}Aw(n,o);g=v[k+96>>2]}n=v[n>>2];v[k+96>>2]=r;g=n+(g<<2)|0}I9(g,b,c<<2)}u[m+4>>1]=c;xa=b+1040|0}q=q-1&q;if(q){continue}break}}A=A+1|0;if((f|0)!=(A|0)){continue}break}}xa=h+32|0}}return a|0}function PV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),L=0,M=0,N=C(0);p=xa-32|0;xa=p;y=z[c+4>>2];I=z[d+16>>2];z[p>>2]=I;J=z[d+20>>2];z[p+4>>2]=J;F=z[d+24>>2];z[p+12>>2]=y;z[p+8>>2]=F;G=v[e+32>>2];d=G;c=xa-448|0;xa=c;m=z[p+8>>2];l=z[p>>2];n=z[p+4>>2];g=z[e+4>>2];k=z[e+8>>2];h=z[e+12>>2];v[c+380>>2]=0;z[c+376>>2]=h;z[c+372>>2]=k;z[c+368>>2]=g;A=v[e+16>>2];L=v[e+20>>2];M=v[e+28>>2];v[c+360>>2]=v[e+24>>2];v[c+364>>2]=M;v[c+352>>2]=A;v[c+356>>2]=L;t[c+224|0]=0;v[c+216>>2]=0;v[c+220>>2]=0;v[c+208>>2]=0;v[c+212>>2]=0;v[c+200>>2]=0;v[c+204>>2]=0;v[c+192>>2]=0;v[c+196>>2]=0;v[c+336>>2]=d+16;v[c+344>>2]=v[d+56>>2]+B(w[d+55|0],20);t[c+348|0]=w[d+54|0];i=C(g*z[d+68>>2]);j=C(k*z[d+72>>2]);i=i<=j?i:j;j=C(h*z[d+76>>2]);i=i<=j?i:j;z[c+216>>2]=i*C(.02500000037252903);z[c+208>>2]=i*C(.10000000149011612);z[c+212>>2]=i*C(.05000000074505806);e=c+192|0;GV(c+368|0,c+352|0,c+240|0,c+288|0,e,g==C(1)&k==C(1)&h==C(1));v[c+340>>2]=v[d+60>>2];k=z[f>>2];g=C(l-z[f+16>>2]);l=C(g+g);g=C(n-z[f+20>>2]);n=C(g+g);h=z[f+4>>2];i=z[f+8>>2];g=C(m-z[f+24>>2]);j=C(g+g);o=C(C(C(C(-k)*l)-C(n*h))-C(i*j));g=z[f+12>>2];D=C(C(g*g)+C(-.5));z[c+180>>2]=C(C(n*D)+C(g*C(C(k*j)-C(i*l))))-C(h*o);v[c+188>>2]=0;v[c+172>>2]=0;v[c+156>>2]=0;z[c+184>>2]=C(C(j*D)+C(g*C(C(h*l)-C(k*n))))-C(i*o);s=C(h*C(0));q=C(g*C(0));x=C(k*C(0));m=C(s+C(C(q-i)-x));u=C(i*C(0));r=C(x+C(C(q-h)-u));H=C(r+r);E=C(m*H);x=C(u+C(s+C(x+g)));q=C(u+C(C(q-k)-s));s=C(q+q);u=C(x*s);z[c+164>>2]=E-u;z[c+152>>2]=E+u;q=C(C(1)-C(q*s));u=C(r*H);z[c+168>>2]=q-u;N=q;q=C(m+m);E=C(m*q);z[c+148>>2]=N-E;z[c+176>>2]=C(C(l*D)+C(g*C(C(i*n)-C(h*j))))-C(k*o);v[c+140>>2]=0;g=C(m*s);k=C(x*H);z[c+160>>2]=g+k;h=C(r*s);i=C(x*q);z[c+144>>2]=h-i;z[c+136>>2]=g-k;z[c+132>>2]=h+i;z[c+128>>2]=C(C(1)-u)-E;v[c+56>>2]=0;v[c+60>>2]=4;d=v[c+180>>2];v[c+32>>2]=v[c+176>>2];v[c+36>>2]=d;d=v[c+188>>2];v[c+40>>2]=v[c+184>>2];v[c+44>>2]=d;v[c+112>>2]=0;d=v[c+188>>2];v[c+88>>2]=v[c+184>>2];v[c+92>>2]=d;d=v[c+180>>2];v[c+80>>2]=v[c+176>>2];v[c+84>>2]=d;d=v[c+188>>2];v[c+104>>2]=v[c+184>>2];v[c+108>>2]=d;t[c+64|0]=1;v[c+48>>2]=0;v[c+52>>2]=0;d=v[c+180>>2];v[c+96>>2]=v[c+176>>2];v[c+100>>2]=d;v[c+24>>2]=141148;v[c+28>>2]=c+32;v[c+16>>2]=141216;v[c+20>>2]=e;v[c>>2]=2139095039;d=HV(c+24|0,c+16|0,c+176|0,c,c+432|0,c+416|0,c+400|0,c+384|0);a:{if((d|0)==2){v[p+28>>2]=0;break a}g=z[c+384>>2];z[p+28>>2]=g*g;e=v[c+400>>2];A=v[c+404>>2];z[a+8>>2]=z[c+408>>2];v[a>>2]=e;v[a+4>>2]=A;e=v[c+416>>2];A=v[c+420>>2];z[p+24>>2]=z[c+424>>2];v[p+16>>2]=e;v[p+20>>2]=A;g=z[f+8>>2];k=z[a+8>>2];l=C(k+k);k=z[f>>2];h=z[a>>2];n=C(h+h);h=z[a+4>>2];j=C(h+h);h=z[f+4>>2];o=C(C(g*l)+C(C(k*n)+C(j*h)));i=z[f+12>>2];m=C(C(i*i)+C(-.5));z[a+8>>2]=C(g*o)+C(C(l*m)+C(i*C(C(k*j)-C(n*h))));z[a+4>>2]=C(h*o)+C(C(j*m)+C(i*C(C(g*n)-C(l*k))));z[a>>2]=C(k*o)+C(C(n*m)+C(i*C(C(h*l)-C(j*g))));r=z[f+16>>2];s=z[f+20>>2];l=z[p+24>>2];l=C(l+l);n=z[p+16>>2];n=C(n+n);j=z[p+20>>2];j=C(j+j);o=C(C(g*l)+C(C(k*n)+C(h*j)));z[p+24>>2]=z[f+24>>2]+C(C(g*o)+C(C(l*m)+C(i*C(C(k*j)-C(n*h)))));z[p+20>>2]=s+C(C(h*o)+C(C(j*m)+C(i*C(C(g*n)-C(l*k)))));z[p+16>>2]=r+C(C(k*o)+C(C(n*m)+C(i*C(C(h*l)-C(j*g)))))}xa=c+448|0;b:{c:{if((d|0)!=2){g=z[p+28>>2];c=0;if(g>C(y*y)){break b}g=C(y-C(K(g)));z[b>>2]=g>C(0)?g:C(0);z[a+8>>2]=-z[a+8>>2];z[a+4>>2]=-z[a+4>>2];z[a>>2]=-z[a>>2];break c}d=w[G+55|0];d:{if(!d){g=C(-34028234663852886e22);break d}h=z[f+8>>2];g=C(F-z[f+24>>2]);g=C(g+g);i=z[f>>2];k=C(I-z[f+16>>2]);k=C(k+k);m=C(J-z[f+20>>2]);j=C(m+m);m=z[f+4>>2];o=C(C(h*g)+C(C(i*k)+C(j*m)));l=z[f+12>>2];n=C(C(l*l)+C(-.5));s=C(C(h*o)+C(C(g*n)-C(l*C(C(i*j)-C(k*m)))));F=C(C(m*o)+C(C(j*n)-C(l*C(C(h*k)-C(g*i)))));D=C(C(i*o)+C(C(k*n)-C(l*C(C(m*g)-C(j*h)))));q=C(-m);x=C(-i);u=C(-h);f=v[G+56>>2];g=C(-34028234663852886e22);while(1){d=d-1|0;j=z[f+8>>2];o=z[f>>2];r=z[f+4>>2];k=C(z[f+12>>2]+C(C(s*j)+C(C(D*o)+C(F*r))));if(k>g){g=C(j+j);j=C(o+o);o=C(r+r);r=C(C(h*g)+C(C(i*j)+C(m*o)));z[a+8>>2]=C(h*r)+C(C(g*n)+C(l*C(C(i*o)+C(j*q))));z[a+4>>2]=C(m*r)+C(C(o*n)+C(l*C(C(h*j)+C(g*x))));z[a>>2]=C(i*r)+C(C(j*n)+C(l*C(C(m*g)+C(o*u))));g=k}f=f+20|0;if(d){continue}break}}g=C(y-g);z[b>>2]=g>C(0)?g:C(0)}c=1}xa=p+32|0;return c|0}function L2(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0;r=xa-48|0;xa=r;t[g|0]=0;i=z[a+16>>2];k=z[a>>2];m=z[a+12>>2];l=z[a+4>>2];s=z[a+8>>2];j=C(z[a+20>>2]-s);z[r+40>>2]=j;i=C(i-l);z[r+36>>2]=i;n=C(m-k);z[r+32>>2]=n;m=z[a+28>>2];o=z[a+24>>2];s=C(z[a+32>>2]-s);z[r+24>>2]=s;x=C(m-l);z[r+20>>2]=x;o=C(o-k);z[r+16>>2]=o;a:{b:{if(h){A=z[r+24>>2];s=z[c+8>>2];j=z[a+8>>2];l=C(s-j);F=z[r+16>>2];x=z[c>>2];i=z[a>>2];m=C(x-i);o=z[c+4>>2];k=z[a+4>>2];n=C(o-k);G=z[r+20>>2];u=C(C(A*l)+C(C(F*m)+C(n*G)));H=z[r+40>>2];I=z[r+32>>2];D=z[r+36>>2];w=C(C(H*l)+C(C(I*m)+C(n*D)));c:{if(w<=C(0)&u<=C(0)){break c}l=z[a+20>>2];q=C(s-l);m=z[a+12>>2];p=C(x-m);n=z[a+16>>2];y=C(o-n);J=C(C(A*q)+C(C(F*p)+C(G*y)));q=C(C(H*q)+C(C(I*p)+C(D*y)));if(!(!(q>=C(0))|!(q>=J))){i=m;k=n;j=l;break c}K=C(C(w*J)-C(u*q));if(!(!(K<=C(0))|(!(q<=C(0))|!(w>=C(0))))){l=C(w/C(w-q));j=C(j+C(H*l));k=C(k+C(D*l));i=C(i+C(I*l));break c}y=s;s=z[a+32>>2];p=C(y-s);y=x;x=z[a+24>>2];E=C(y-x);y=o;o=z[a+28>>2];L=C(y-o);y=C(C(H*p)+C(C(I*E)+C(D*L)));p=C(C(A*p)+C(C(F*E)+C(G*L)));if(!(!(p>=C(0))|!(p>=y))){i=x;k=o;j=s;break c}w=C(C(y*u)-C(p*w));if(!(!(w<=C(0))|(!(p<=C(0))|!(u>=C(0))))){l=C(u/C(u-p));j=C(j+C(A*l));k=C(k+C(G*l));i=C(i+C(F*l));break c}d:{E=C(C(q*p)-C(J*y));if(!(E<=C(0))){break d}u=C(J-q);if(!(u>=C(0))){break d}q=C(y-p);if(!(q>=C(0))){break d}i=C(u/C(u+q));j=C(l+C(C(s-l)*i));k=C(n+C(C(o-n)*i));i=C(m+C(C(x-m)*i));break c}m=C(C(1)/C(K+C(E+w)));l=C(K*m);m=C(w*m);j=C(C(A*l)+C(j+C(H*m)));k=C(C(G*l)+C(k+C(D*m)));i=C(C(F*l)+C(i+C(I*m)))}z[r+8>>2]=j;z[r+4>>2]=k;z[r>>2]=i;j=C(z[r+8>>2]-z[c+8>>2]);i=C(j*j);j=C(z[r>>2]-z[c>>2]);k=C(j*j);j=C(z[r+4>>2]-z[c+4>>2]);if(C(i+C(k+C(j*j)))<=C(d*d)){v[f>>2]=0;break b}i=z[r+36>>2];n=z[r+32>>2];o=z[r+16>>2];x=z[r+20>>2];s=z[r+24>>2];j=z[r+40>>2]}m=z[e>>2];u=z[e+4>>2];F=C(C(m*x)-C(o*u));k=z[e+8>>2];G=C(C(u*s)-C(x*k));H=C(C(k*o)-C(s*m));l=C(C(j*F)+C(C(n*G)+C(H*i)));if(l>C(-9999999747378752e-21)&l>2]*d);p=C(z[b>>2]*d);w=C(z[b+4>>2]*d);b=C(C(k*q)+C(C(m*p)+C(w*u)))>=C(0);A=C(C(1)/l);y=k;k=z[a>>2];p=C(C(z[c>>2]-(b?C(-p):p))-k);l=z[a+4>>2];w=C(C(z[c+4>>2]-(b?C(-w):w))-l);I=C(C(p*i)-C(n*w));D=m;E=i;m=z[a+8>>2];i=C(C(z[c+8>>2]-(b?C(-q):q))-m);q=C(C(w*j)-C(E*i));n=C(C(i*n)-C(j*p));j=C(A*C(C(y*I)+C(C(D*q)+C(u*n))));i=C(A*C(C(i*F)+C(C(p*G)+C(H*w))));b=iC(1)|(jC(1)))){d=C(A*C(C(s*I)+C(C(o*q)+C(x*n))));if(d>2]=d;M=1;t[g|0]=1;break a}e:{f:{g:{h:{if(b){if(j>2];s=C(m-n);x=z[a+32>>2];o=C(C(C(1)-i)-j);w=C(C(C(i*n)+C(j*x))+C(o*m));D=C(s*C(w-n));n=z[a+12>>2];u=C(k-n);q=z[a+24>>2];A=C(C(C(i*n)+C(j*q))+C(o*k));E=C(u*C(A-n));n=z[a+16>>2];p=C(l-n);y=j;j=z[a+28>>2];o=C(C(C(i*n)+C(y*j))+C(o*l));if(!(C(D+C(E+C(p*C(o-n))))C(1))){g=2;b=0;break e}n=z[a+32>>2];s=C(n-m);x=z[a+20>>2];o=C(C(C(1)-i)-j);w=C(C(C(i*x)+C(j*n))+C(o*m));D=C(s*C(w-m));m=z[a+24>>2];u=C(m-k);q=z[a+12>>2];A=C(C(C(i*q)+C(j*m))+C(o*k));E=C(u*C(A-k));k=z[a+28>>2];p=C(k-l);y=i;i=z[a+16>>2];o=C(C(C(y*i)+C(j*k))+C(o*l));if(C(D+C(E+C(p*C(o-l))))C(1))){break f}n=z[a+20>>2];s=C(n-m);x=z[a+32>>2];o=C(C(C(1)-i)-j);w=C(C(C(i*n)+C(j*x))+C(o*m));D=C(s*C(w-m));m=z[a+12>>2];u=C(m-k);q=z[a+24>>2];A=C(C(C(i*m)+C(j*q))+C(o*k));E=C(u*C(A-k));k=z[a+16>>2];p=C(k-l);y=j;j=z[a+28>>2];o=C(C(C(i*k)+C(y*j))+C(o*l));if(C(D+C(E+C(p*C(o-l))))>2]=z[r>>2];break b}g=1;b=0}if(!_W(c,e,B(b,12)+a|0,B(g,12)+a|0,d,r)){break a}d=z[r>>2];if(!(d>=C(0))){break a}z[f>>2]=d}M=1}xa=r+48|0;return M}function Ax(a,b,c,d,e,f,g,h){a=a|0;b=C(b);c=C(c);d=d|0;e=e|0;f=f|0;g=g|0;h=C(h);var i=0,j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=0,D=C(0),E=0,F=C(0),G=C(0),H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0),fa=C(0),ga=0,ha=0,ia=0;i=xa-144|0;xa=i;$=v[a+448>>2];if(v[a+660>>2]?1:v[a+292>>2]|v[a+304>>2]){B=v[a+264>>2];j=v[a+228>>2];E=v[a+444>>2];k=v[a+420>>2];H=v[a+408>>2];I=w[v[a+476>>2]];v[i+104>>2]=0;v[i+108>>2]=0;v[i+96>>2]=0;v[i+100>>2]=0;v[i+88>>2]=0;v[i+92>>2]=0;v[i+80>>2]=0;v[i+84>>2]=0;I=I&1;if(!I){J=z[a+560>>2];K=z[a+572>>2];L=z[a+584>>2];M=z[a+564>>2];N=z[a+576>>2];G=z[a+588>>2];T=z[a+568>>2];U=z[a+580>>2];V=z[a+592>>2];W=z[a+620>>2];X=z[a+608>>2];Y=z[a+596>>2];x=z[a+524>>2];u=z[a+528>>2];m=z[a+532>>2];F=z[a+624>>2];Z=z[a+612>>2];_=z[a+600>>2];A=z[a+536>>2];y=z[a+540>>2];D=z[a+544>>2];O=z[a+548>>2];s=z[B+16>>2];n=C(-s);P=z[a+552>>2];q=z[B+20>>2];Q=z[a+556>>2];l=z[B+24>>2];o=C(-z[B+4>>2]);r=z[B>>2];p=z[B+8>>2];R=C(C(C(C(O*n)-C(P*q))-C(Q*l))+C(C(C(z[a+616>>2]*o)-C(r*z[a+604>>2]))-C(p*z[a+628>>2])));z[i+104>>2]=R;F=C(C(C(C(A*n)-C(y*q))-C(D*l))+C(C(C(Z*o)-C(r*_))-C(p*F)));z[i+100>>2]=F;n=C(C(C(C(x*n)-C(u*q))-C(m*l))+C(C(C(X*o)-C(r*Y))-C(p*W)));z[i+96>>2]=n;D=C(C(C(D*o)-C(r*m))-C(p*Q));m=C(-q);q=C(D+C(C(C(U*m)-C(s*T))-C(l*V)));z[i+88>>2]=q;u=C(C(C(C(y*o)-C(r*u))-C(p*P))+C(C(C(N*m)-C(s*M))-C(l*G)));z[i+84>>2]=u;l=C(C(C(C(A*o)-C(r*x))-C(p*O))+C(C(C(K*m)-C(s*J))-C(l*L)));z[i+80>>2]=l}o=z[j+20>>2];r=z[j>>2];p=z[j+4>>2];s=z[j+8>>2];x=z[j+16>>2];z[i+136>>2]=R+z[j+24>>2];z[i+132>>2]=F+o;j=0;v[i+140>>2]=0;z[i+128>>2]=n+x;v[i+124>>2]=0;z[i+120>>2]=q+s;z[i+116>>2]=u+p;z[i+112>>2]=l+r;v[i+72>>2]=0;v[i+76>>2]=0;S=i- -64|0;v[S>>2]=0;v[S+4>>2]=0;v[i+56>>2]=0;v[i+60>>2]=0;v[i+48>>2]=0;v[i+52>>2]=0;H=v[H>>2];if(H){n=f?C(0):C(-34028234663852886e22);S=v[a+312>>2];da=Ba[v[v[a>>2]+168>>2]](a,0)|0;k=v[k>>2];while(1){xx(v[a+656>>2]+(k<<5)|0,i+112|0,i+48|0,i+80|0,S,da,g,h,n);k=k+1|0;j=j+1|0;if((H|0)!=(j|0)){continue}break}}v[i+44>>2]=0;v[i+40>>2]=0;j=v[E>>2];k=v[E+4>>2];a:{if(!(j|k)){r=z[i+72>>2];n=z[i+68>>2];q=z[i+64>>2];u=z[i+56>>2];l=z[i+52>>2];o=z[i+48>>2];break a}r=z[i+72>>2];n=z[i+68>>2];q=z[i+64>>2];u=z[i+56>>2];l=z[i+52>>2];o=z[i+48>>2];b:{if(!I){while(1){E=j;zx(i,a,b,c,d,e,f,g,h,(ga=Raa(j),ha=Raa(k)+32|0,ia=j,ia?ga:ha),i+80|0,i+44|0,i+40|0);p=z[i+24>>2];r=C(p+r);A=z[i+20>>2];n=C(A+n);y=z[i+16>>2];q=C(y+q);s=z[i+8>>2];u=C(s+u);m=z[i+4>>2];l=C(m+l);x=z[i>>2];o=C(x+o);j=j&j-1;k=k&k-!E;if(!(j|k)){break b}T=z[a+628>>2];U=z[a+616>>2];V=z[a+604>>2];W=z[a+624>>2];X=z[a+612>>2];Y=z[a+600>>2];F=z[a+620>>2];Z=z[a+608>>2];_=z[a+596>>2];D=z[a+556>>2];J=z[a+544>>2];K=z[a+532>>2];O=z[a+592>>2];P=z[a+580>>2];Q=z[a+568>>2];L=z[a+552>>2];M=z[a+540>>2];N=z[a+528>>2];R=z[a+588>>2];ea=z[a+576>>2];fa=z[a+564>>2];aa=z[a+536>>2];m=C(-m);ba=z[a+524>>2];ca=z[a+548>>2];G=C(-A);z[i+80>>2]=C(C(C(C(aa*m)-C(x*ba))-C(s*ca))+C(C(C(z[a+572>>2]*G)-C(y*z[a+560>>2]))-C(p*z[a+584>>2])))+z[i+80>>2];z[i+84>>2]=C(C(C(C(M*m)-C(x*N))-C(s*L))+C(C(C(ea*G)-C(y*fa))-C(p*R)))+z[i+84>>2];z[i+88>>2]=C(C(C(C(J*m)-C(x*K))-C(s*D))+C(C(C(P*G)-C(y*Q))-C(p*O)))+z[i+88>>2];y=C(-y);z[i+96>>2]=C(C(C(C(ba*y)-C(N*A))-C(K*p))+C(C(C(Z*m)-C(x*_))-C(s*F)))+z[i+96>>2];z[i+100>>2]=C(C(C(C(aa*y)-C(M*A))-C(J*p))+C(C(C(X*m)-C(x*Y))-C(s*W)))+z[i+100>>2];z[i+104>>2]=C(C(C(C(ca*y)-C(L*A))-C(D*p))+C(C(C(U*m)-C(x*V))-C(s*T)))+z[i+104>>2];continue}}while(1){E=j;zx(i,a,b,c,d,e,f,g,h,(ga=Raa(j),ha=Raa(k)+32|0,ia=j,ia?ga:ha),i+80|0,i+44|0,i+40|0);r=C(z[i+24>>2]+r);n=C(z[i+20>>2]+n);q=C(z[i+16>>2]+q);u=C(z[i+8>>2]+u);l=C(z[i+4>>2]+l);o=C(z[i>>2]+o);j=j&j-1;k=k&k-!E;if(j|k){continue}break}}z[i+68>>2]=n;z[i+64>>2]=q;z[i+56>>2]=u;z[i+52>>2]=l;z[i+48>>2]=o}z[d+16>>2]=q;z[d+8>>2]=u;z[d+4>>2]=l;z[d>>2]=o;z[d+24>>2]=r;z[d+20>>2]=n;if($){j=0;while(1){f=j<<5;e=f+B|0;f=d+f|0;z[e>>2]=z[f>>2]+z[e>>2];z[e+4>>2]=z[f+4>>2]+z[e+4>>2];z[e+8>>2]=z[f+8>>2]+z[e+8>>2];z[e+16>>2]=z[f+16>>2]+z[e+16>>2];z[e+20>>2]=z[f+20>>2]+z[e+20>>2];z[e+24>>2]=z[f+24>>2]+z[e+24>>2];j=j+1|0;if(($|0)!=(j|0)){continue}break}}t[a+489|0]=1}xa=i+144|0}function n$(a,b,c,d,e,f,g,h){var i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),x=C(0),y=0,A=0,D=C(0),E=0,F=C(0),G=0,H=0,I=0,J=C(0),K=C(0),L=0,M=0,N=C(0),O=C(0);E=xa-16|0;xa=E;j=v[a+16>>2];k=z[j+16>>2];H=z[j+12>>2]>2];j=f>>>1|0;a:{if(t[(v[A+60>>2]+(j<<2)|0)+2|0]<0){if(!y){y=j+v[A+44>>2]|0;v[E+4>>2]=y;v[I>>2]=j;G=y+1|0;break a}y=j+1|0;v[E+4>>2]=y;v[I>>2]=v[A+44>>2]+y;G=j;break a}if(!y){v[E+4>>2]=j;v[I>>2]=j+1;G=j+v[A+44>>2]|0;y=j;break a}G=j+1|0;M=v[A+44>>2];y=G+M|0;v[E+4>>2]=y;v[I>>2]=j+M}v[L>>2]=G;if(e){G=v[A+60>>2];j=f>>>1|0;M=t[(G+(j<<2)|0)+2|0];I=(H?8:0)+e|0;v[I>>2]=-1;L=f&1;H=(H?0:8)+e|0;b:{c:{if((M|0)<0){if(!L){v[e+4>>2]=f+1;v[H>>2]=-1;e=v[A+44>>2];if((j>>>0)%(e>>>0)|0){v[I>>2]=f-1;e=v[A+44>>2]}if((v[A+40>>2]-2|0)==((j>>>0)/(e>>>0)|0)){break b}e=e+j|0;e=e<<1|w[(G+(e<<2)|0)+2|0]>>>7;break c}v[e+4>>2]=f-1;v[H>>2]=-1;e=v[A+44>>2];if((j>>>0)%(e>>>0)>>>0>>0){v[I>>2]=f+1;e=v[A+44>>2]}if(j>>>0>>0){break b}e=j-e|0;e=e<<1|t[(G+(e<<2)|0)+2|0]>=0;break c}if(!L){v[e+4>>2]=f+1;v[H>>2]=-1;e=v[A+44>>2];if(j>>>0>=e-1>>>0){e=j-e|0;v[I>>2]=e<<1|t[(G+(e<<2)|0)+2|0]>=0;e=v[A+44>>2]}if(!((j>>>0)%(e>>>0)|0)){break b}e=f-1|0;break c}v[e+4>>2]=f-1;v[H>>2]=-1;e=v[A+44>>2];if((v[A+40>>2]-2|0)!=((j>>>0)/(e>>>0)|0)){e=e+j|0;v[I>>2]=e<<1|w[(G+(e<<2)|0)+2|0]>>>7;e=v[A+44>>2]}if(e-2>>>0<=(j>>>0)%(e>>>0)>>>0){break b}e=f+1|0}v[H>>2]=e}}if(d){v[d>>2]=y;v[d+4>>2]=v[E+8>>2];v[d+8>>2]=v[E+12>>2]}d:{if(h){k=z[b+12>>2];q=C(C(k*k)+C(-.5));d=v[a+12>>2];e=v[d+60>>2];d=v[d+44>>2];o=z[b+4>>2];D=C(-o);p=z[b>>2];J=C(-p);n=z[b+8>>2];K=C(-n);a=v[a+16>>2];r=z[a+16>>2];s=z[a+8>>2];x=z[a+12>>2];if(!g){i=C(r*C((y>>>0)%(d>>>0)>>>0));i=C(i+i);l=C(x*C((y>>>0)/(d>>>0)>>>0));l=C(l+l);m=C(s*C(u[e+(y<<2)>>1]));m=C(m+m);F=C(C(n*i)+C(C(p*l)+C(m*o)));z[c+8>>2]=C(n*F)+C(C(i*q)+C(k*C(C(p*m)+C(l*D))));z[c+4>>2]=C(o*F)+C(C(m*q)+C(k*C(C(n*l)+C(i*J))));z[c>>2]=C(p*F)+C(C(l*q)+C(k*C(C(o*i)+C(m*K))));a=v[E+8>>2];b=(a>>>0)/(d>>>0)|0;i=C(r*C(a-B(b,d)>>>0));i=C(i+i);l=C(x*C(b>>>0));l=C(l+l);m=C(s*C(u[e+(a<<2)>>1]));m=C(m+m);F=C(C(n*i)+C(C(p*l)+C(m*o)));z[c+20>>2]=C(n*F)+C(C(i*q)+C(k*C(C(p*m)+C(l*D))));z[c+16>>2]=C(o*F)+C(C(m*q)+C(k*C(C(n*l)+C(i*J))));z[c+12>>2]=C(p*F)+C(C(l*q)+C(k*C(C(o*i)+C(m*K))));a=v[E+12>>2];b=(a>>>0)/(d>>>0)|0;r=C(r*C(a-B(b,d)>>>0));r=C(r+r);x=C(x*C(b>>>0));x=C(x+x);s=C(s*C(u[e+(a<<2)>>1]));s=C(s+s);i=C(C(n*r)+C(C(p*x)+C(s*o)));D=C(C(n*i)+C(C(r*q)+C(k*C(C(p*s)+C(x*D)))));n=C(C(o*i)+C(C(s*q)+C(k*C(C(n*x)+C(r*J)))));k=C(C(p*i)+C(C(x*q)+C(k*C(C(o*r)+C(s*K)))));break d}N=z[b+20>>2];O=z[b+16>>2];a=(y>>>0)/(d>>>0)|0;i=C(r*C(y-B(a,d)>>>0));i=C(i+i);l=C(x*C(a>>>0));l=C(l+l);m=C(s*C(u[e+(y<<2)>>1]));m=C(m+m);F=C(C(n*i)+C(C(p*l)+C(m*o)));z[c+8>>2]=z[b+24>>2]+C(C(n*F)+C(C(i*q)+C(k*C(C(p*m)+C(l*D)))));z[c+4>>2]=N+C(C(o*F)+C(C(m*q)+C(k*C(C(n*l)+C(i*J)))));z[c>>2]=O+C(C(p*F)+C(C(l*q)+C(k*C(C(o*i)+C(m*K)))));N=z[b+20>>2];O=z[b+16>>2];a=v[E+8>>2];f=(a>>>0)/(d>>>0)|0;i=C(r*C(a-B(d,f)>>>0));i=C(i+i);l=C(x*C(f>>>0));l=C(l+l);m=C(s*C(u[e+(a<<2)>>1]));m=C(m+m);F=C(C(n*i)+C(C(p*l)+C(m*o)));z[c+20>>2]=z[b+24>>2]+C(C(n*F)+C(C(i*q)+C(k*C(C(p*m)+C(l*D)))));z[c+16>>2]=N+C(C(o*F)+C(C(m*q)+C(k*C(C(n*l)+C(i*J)))));z[c+12>>2]=O+C(C(p*F)+C(C(l*q)+C(k*C(C(o*i)+C(m*K)))));a=v[E+12>>2];f=(a>>>0)/(d>>>0)|0;r=C(r*C(a-B(d,f)>>>0));r=C(r+r);x=C(x*C(f>>>0));x=C(x+x);s=C(s*C(u[e+(a<<2)>>1]));s=C(s+s);i=C(C(n*r)+C(C(p*x)+C(s*o)));D=C(z[b+24>>2]+C(C(n*i)+C(C(r*q)+C(k*C(C(p*s)+C(x*D))))));n=C(z[b+20>>2]+C(C(o*i)+C(C(s*q)+C(k*C(C(n*x)+C(r*J))))));k=C(z[b+16>>2]+C(C(p*i)+C(C(x*q)+C(k*C(C(o*r)+C(s*K))))));break d}D=z[b+24>>2];e=v[a+12>>2];d=v[e+44>>2];a=v[a+16>>2];q=z[a+16>>2];k=z[a+12>>2];n=z[b+16>>2];o=g?z[b+20>>2]:C(0);p=z[a+8>>2];a=v[e+60>>2];z[c+4>>2]=o+C(p*C(u[a+(y<<2)>>1]));n=g?n:C(0);b=(y>>>0)/(d>>>0)|0;z[c>>2]=n+C(k*C(b>>>0));D=g?D:C(0);z[c+8>>2]=D+C(q*C(y-B(b,d)>>>0));b=v[E+8>>2];e=u[a+(b<<2)>>1];f=(b>>>0)/(d>>>0)|0;z[c+12>>2]=n+C(k*C(f>>>0));z[c+16>>2]=o+C(p*C(e|0));z[c+20>>2]=D+C(q*C(b-B(d,f)>>>0));b=v[E+12>>2];e=(b>>>0)/(d>>>0)|0;k=C(n+C(k*C(e>>>0)));n=C(o+C(p*C(u[a+(b<<2)>>1])));D=C(D+C(q*C(b-B(d,e)>>>0)))}z[c+24>>2]=k;z[c+32>>2]=D;z[c+28>>2]=n;xa=E+16|0}function oE(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=0,U=0,V=0,W=C(0);m=xa+-64|0;xa=m;if(v[a+592>>2]){h=z[b+84>>2];w=z[b+76>>2];q=z[b+88>>2];r=z[b+72>>2];s=z[b+92>>2];y=z[b+80>>2];z[m+56>>2]=C(s-y)*C(.5);z[m+52>>2]=C(q-w)*C(.5);z[m+48>>2]=C(h-r)*C(.5);z[m+40>>2]=C(s+y)*C(.5);z[m+36>>2]=C(q+w)*C(.5);z[m+32>>2]=C(h+r)*C(.5);u[m+28>>1]=x[f>>1];v[m+24>>2]=e;v[m+16>>2]=c;v[m+8>>2]=130332;v[m+20>>2]=m+48;v[m+12>>2]=m+32;U=v[a+644>>2];V=v[a+640>>2];R=m+8|0;e=xa-1056|0;xa=e;h=z[c+8>>2];q=C(h+h);b=q>C(0);G=C(-q);h=z[c+4>>2];r=C(h+h);f=r>C(0);H=C(-r);h=z[c>>2];s=C(h+h);c=s>C(0);I=C(-s);J=z[m+56>>2];K=z[m+52>>2];L=z[m+48>>2];h=z[m+40>>2];w=C(h+h);h=z[m+36>>2];y=C(h+h);h=z[m+32>>2];E=C(h+h);h=z[d>>2];a:{if(h>=C(34028234663852886e22)){A=r==C(0)?y:r>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);D=s==C(0)?E:s>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);h=w;if(q==C(0)){break a}h=q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}A=C(y+C(r*h));D=C(E+C(s*h));h=C(w+C(q*h))}G=b?q:G;H=f?r:H;I=c?s:I;O=C(J+J);P=C(K+K);Q=C(L+L);t[e+1040|0]=1;v[e+1048>>2]=256;v[e+1052>>2]=256;v[e+1044>>2]=e+16;v[e+16>>2]=v[a+592>>2];J=hA?y:A;L=E>D?E:D;h=h>w?w:h;A=y>2]+(c<<2)>>2];g=z[f+16>>2];l=z[f>>2];i=C(g+l);g=C(Q+C(g-l));d:{if(!(C(i+g)>=D)|!(C(i-g)<=L)){break d}j=z[f+20>>2];k=z[f+4>>2];l=C(P+C(j-k));j=C(j+k);k=C(y-j);n=C(E-i);i=C(C(s*k)-C(r*n));if(!(C(C(H*g)+C(I*l))>=(i>C(0)?i:C(-i)))|!(C(j+l)>=A)|!(C(j-l)<=K)){break d}o=C(G*l);i=z[f+24>>2];j=z[f+8>>2];l=C(O+C(i-j));i=C(i+j);p=C(w-i);j=C(C(r*p)-C(q*k));if(!(C(o+C(H*l))>=(j>C(0)?j:C(-j)))|!(C(i+l)>=h)|!(C(i-l)<=J)){break d}i=C(C(G*g)+C(I*l));g=C(C(q*n)-C(s*p));if(!(i>=(g>C(0)?g:C(-g)))){break d}i=z[d>>2];z[e+12>>2]=i;if(v[f+40>>2]){while(1){a=v[f+36>>2];g=z[a- -64>>2];i=z[a+48>>2];l=C(g+i);g=C(Q+C(g-i));j=z[a+68>>2];k=z[a+52>>2];i=C(P+C(j-k));j=C(j+k);n=C(y-j);p=C(E-l);k=C(C(s*n)-C(r*p));b=C(l+g)>=D&C(l-g)<=L&C(C(H*g)+C(I*i))>=(k>C(0)?k:C(-k))&C(j+i)>=A&C(j-i)<=K;F=C(G*i);k=z[a+72>>2];o=z[a+56>>2];i=C(O+C(k-o));k=C(k+o);o=C(w-k);n=C(C(r*o)-C(q*n));M=C(C(G*g)+C(I*i));g=C(C(q*p)-C(s*o));b=b&C(F+C(H*i))>=(n>C(0)?n:C(-n))&C(k+i)>=h&C(k-i)<=J&M>=(g>C(0)?g:C(-g));i=z[a+20>>2];n=z[a+4>>2];g=C(P+C(i-n));i=C(i+n);M=C(y-i);o=z[a+16>>2];F=z[a>>2];n=C(o+F);S=C(E-n);p=C(C(s*M)-C(r*S));o=C(Q+C(o-F));f=C(n+o)>=D&C(n-o)<=L&C(C(H*o)+C(I*g))>=(p>C(0)?p:C(-p))&C(i+g)>=A&C(i-g)<=K;W=C(G*g);p=z[a+24>>2];F=z[a+8>>2];g=C(O+C(p-F));p=C(p+F);F=C(w-p);M=C(C(r*F)-C(q*M));f=f&C(W+C(H*g))>=(M>C(0)?M:C(-M))&C(p+g)>=h&C(p-g)<=J;o=C(C(G*o)+C(I*g));g=C(C(q*S)-C(s*F));f=f&o>=(g>C(0)?g:C(-g));e:{if(!(!f|!b)){b=C(C(C(k-p)*q)+C(C(C(l-n)*s)+C(r*C(j-i))))>C(0);v[v[e+1044>>2]+(c<<2)>>2]=a+B(b,48);f=a+B(!b,48)|0;c=c+1|0;if((c|0)!=(v[e+1052>>2]&2147483647)){break e}gD(e+16|0,c<<1);break e}if(!(b|f)){break d}f=f?a:a+48|0}if(v[f+40>>2]){continue}break}i=z[d>>2]}a=v[f+36>>2];b=v[a>>2];if(!b){break d}f=a+4|0;a=b;while(1){T=v[f>>2];f:{if(b>>>0>=2){N=B(T,24)+V|0;g=z[N>>2];l=z[N+12>>2];j=C(g+l);g=C(Q+C(l-g));if(!(C(j+g)>=D)|!(C(j-g)<=L)){break f}k=z[N+16>>2];n=z[N+4>>2];l=C(P+C(k-n));k=C(n+k);n=C(y-k);p=C(E-j);j=C(C(s*n)-C(r*p));if(!(C(C(H*g)+C(I*l))>=(j>C(0)?j:C(-j)))|!(C(k+l)>=A)|!(C(k-l)<=K)){break f}F=C(G*l);j=z[N+20>>2];k=z[N+8>>2];l=C(O+C(j-k));j=C(k+j);o=C(w-j);k=C(C(r*o)-C(q*n));if(!(C(F+C(H*l))>=(k>C(0)?k:C(-k)))|!(C(j+l)>=h)|!(C(j-l)<=J)){break f}j=C(C(G*g)+C(I*l));g=C(C(q*p)-C(s*o));if(!(j>=(g>C(0)?g:C(-g)))){break f}}if(!(Ba[v[v[R>>2]+8>>2]](R,e+12|0,B(T,44)+U|0)|0)){break c}g=z[e+12>>2];if(!(g>2]=g;h=C(w+C(q*g));J=hA?y:A;D=C(E+C(s*g));L=E>D?E:D;h=h>w?w:h;A=y>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[e+1044>>2];if((b|0)==(e+16|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=e+1056|0}else{a=1}xa=m- -64|0;return a|0}function Ew(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=127872;d=v[a+664>>2];a:{if((d|0)<0|!(d&2147483647)){break a}d=v[a+656>>2];if(!d){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}d=v[a+648>>2];b:{if((d|0)<0|!(d&2147483647)){break b}d=v[a+640>>2];if(!d){break b}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}d=a+112|0;b=v[d+340>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[d+340>>2]=0}b=v[d+344>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[d+344>>2]=0}b=v[d+348>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[d+348>>2]=0}b=v[d+404>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[d+396>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+392>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[d+384>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+328>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[d+320>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+316>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[d+308>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+304>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[d+296>>2];if(!b){break g}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+292>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[d+284>>2];if(!b){break h}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+280>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=v[d+272>>2];if(!b){break i}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+268>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=v[d+260>>2];if(!b){break j}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+256>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=v[d+248>>2];if(!b){break k}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+244>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=v[d+236>>2];if(!b){break l}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+232>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=v[d+224>>2];if(!b){break m}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+220>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=v[d+212>>2];if(!b){break n}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+208>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=v[d+200>>2];if(!b){break o}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+196>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=v[d+188>>2];if(!b){break p}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+184>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=v[d+176>>2];if(!b){break q}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+172>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=v[d+164>>2];if(!b){break r}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+160>>2];s:{if((b|0)<0|!(b&2147483647)){break s}b=v[d+152>>2];if(!b){break s}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+148>>2];t:{if((b|0)<0|!(b&2147483647)){break t}b=v[d+140>>2];if(!b){break t}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+136>>2];u:{if((b|0)<0|!(b&2147483647)){break u}b=v[d+128>>2];if(!b){break u}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+124>>2];v:{if((b|0)<0|!(b&2147483647)){break v}b=v[d+116>>2];if(!b){break v}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+112>>2];w:{if((b|0)<0|!(b&2147483647)){break w}b=v[d+104>>2];if(!b){break w}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+100>>2];x:{if((b|0)<0|!(b&2147483647)){break x}b=v[d+92>>2];if(!b){break x}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+88>>2];y:{if((b|0)<0|!(b&2147483647)){break y}b=v[d+80>>2];if(!b){break y}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+76>>2];z:{if((b|0)<0|!(b&2147483647)){break z}b=v[d+68>>2];if(!b){break z}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d- -64>>2];A:{if((b|0)<0|!(b&2147483647)){break A}b=v[d+56>>2];if(!b){break A}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+52>>2];B:{if((b|0)<0|!(b&2147483647)){break B}b=v[d+44>>2];if(!b){break B}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[d+40>>2];C:{if((b|0)<0|!(b&2147483647)){break C}d=v[d+32>>2];if(!d){break C}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}v[a>>2]=127652;d=v[a+88>>2];D:{if((d|0)<0|!(d&2147483647)){break D}d=v[a+80>>2];if(!d){break D}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d)}return a|0}function JM(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=C(0),m=0,n=0,o=0,p=0,q=0,r=0,s=C(0),t=0,u=0,w=0,y=C(0);s=C(C(1)/e);p=v[b+56>>2];a:{b:{c:{if(v[d+11968>>2]){if(f>>>0>1){break c}k=v[c+4>>2];break b}if(v[c+4>>2]&2147483647){while(1){b=v[d+12144>>2]+B(k,52)|0;l=C(0);j=0;if(f){while(1){h=v[b>>2];Ba[v[v[h>>2]+136>>2]](h,e,s,v[d+12048>>2],v[d+12060>>2],0,1,l);h=v[(v[v[b>>2]+24>>2]<<2)+149624>>2];if(h){Ba[h|0](b,e,v[d+12060>>2])}l=C(l+e);j=j+1|0;if((j|0)!=(f|0)){continue}break}}h=v[(v[v[b>>2]+24>>2]<<2)+149616>>2];if(h){Ba[h|0](b,z[a+56>>2])}j=0;if(g){while(1){h=v[b>>2];Ba[v[v[h>>2]+136>>2]](h,e,s,v[d+12048>>2],v[d+12060>>2],1,1,l);j=j+1|0;if((j|0)!=(g|0)){continue}break}}b=v[b>>2];Ba[v[v[b>>2]+140>>2]](b,1);k=k+1|0;if(k>>>0<(v[c+4>>2]&2147483647)>>>0){continue}break}}b=v[c>>2];if(!b){break a}c=p<<6;f=c+v[a+484>>2]|0;c=c+v[a+472>>2]|0;e=z[a+52>>2];d=0;while(1){d=d+1|0;a=d<<6;IM(a+c|0,a+f|0,e);if((b|0)!=(d|0)){continue}break}break a}k=v[c+4>>2];n=p<<6;q=1;while(1){i=0;if(k&2147483647){while(1){j=v[v[d+12144>>2]+B(i,52)>>2];Ba[v[v[j>>2]+136>>2]](j,e,s,v[d+12048>>2],v[d+12060>>2],0,1,l);i=i+1|0;if(i>>>0<(v[c+4>>2]&2147483647)>>>0){continue}break}}j=v[a+484>>2];m=v[d+11968>>2];if(m){o=v[b+44>>2];r=v[b+36>>2];i=0;if((m|0)!=1){w=m&-2;k=0;while(1){t=i<<3;u=t+o|0;Ba[v[(x[u+6>>1]<<2)+132448>>2]](u,r,j,C(-34028234663852886e22),l,h);t=o+(t|8)|0;Ba[v[(x[t+6>>1]<<2)+132448>>2]](t,r,j,C(-34028234663852886e22),l,h);i=i+2|0;k=k+2|0;if((w|0)!=(k|0)){continue}break}}if(m&1){i=o+(i<<3)|0;Ba[v[(x[i+6>>1]<<2)+132448>>2]](i,r,j,C(-34028234663852886e22),l,h)}j=v[a+484>>2]}k=v[c>>2];if(k){j=j+n|0;m=n+v[a+472>>2]|0;i=0;while(1){i=i+1|0;o=i<<6;IM(o+m|0,j+o|0,e);if((i|0)!=(k|0)){continue}break}}i=0;k=v[c+4>>2];if(k&2147483647){while(1){j=v[d+12144>>2]+B(i,52)|0;m=v[(v[v[j>>2]+24>>2]<<2)+149624>>2];if(m){Ba[m|0](j,e,v[d+12060>>2]);k=v[c+4>>2]}i=i+1|0;if(i>>>0<(k&2147483647)>>>0){continue}break}}l=C(l+e);q=q+1|0;if((q|0)!=(f|0)){continue}break}}if(k&2147483647){i=0;while(1){f=v[v[d+12144>>2]+B(i,52)>>2];Ba[v[v[f>>2]+136>>2]](f,e,s,v[d+12048>>2],v[d+12060>>2],0,1,l);i=i+1|0;if(i>>>0<(v[c+4>>2]&2147483647)>>>0){continue}break}}j=v[a+484>>2];f=v[d+11968>>2];if(f){m=v[b+44>>2];o=v[b+36>>2];i=0;if((f|0)!=1){r=f&-2;k=0;while(1){n=i<<3;q=n+m|0;Ba[v[(x[q+6>>1]<<2)+132544>>2]](q,o,j,l,h);n=m+(n|8)|0;Ba[v[(x[n+6>>1]<<2)+132544>>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;Ba[v[(x[f+6>>1]<<2)+132544>>2]](f,o,j,l,h)}j=v[a+484>>2]}y=z[a+56>>2];f=v[c>>2];if(f){i=p<<6;j=i+j|0;k=i+v[a+472>>2]|0;i=0;while(1){i=i+1|0;p=i<<6;IM(p+k|0,j+p|0,e);if((f|0)!=(i|0)){continue}break}}j=v[c+4>>2];d:{if(!(j&2147483647)){break d}i=0;while(1){f=v[d+12144>>2]+B(i,52)|0;k=v[(v[v[f>>2]+24>>2]<<2)+149624>>2];if(k){Ba[k|0](f,e,v[d+12060>>2]);j=v[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=v[d+12144>>2]+B(i,52)|0;k=v[(v[v[f>>2]+24>>2]<<2)+149616>>2];if(k){Ba[k|0](f,y);j=v[c+4>>2]}i=i+1|0;if(i>>>0<(j&2147483647)>>>0){continue}break}}if(g){l=C(l+e);o=0;while(1){i=0;if(v[c+4>>2]&2147483647){while(1){f=v[v[d+12144>>2]+B(i,52)>>2];Ba[v[v[f>>2]+136>>2]](f,e,s,v[d+12048>>2],v[d+12060>>2],0,1,l);i=i+1|0;if(i>>>0<(v[c+4>>2]&2147483647)>>>0){continue}break}}f=v[d+11968>>2];e:{if(!f){break e}j=v[a+484>>2];p=v[b+44>>2];m=v[b+36>>2];i=0;if((f|0)!=1){r=f&-2;k=0;while(1){n=i<<3;q=n+p|0;Ba[v[(x[q+6>>1]<<2)+132448>>2]](q,m,j,C(0),l,h);n=p+(n|8)|0;Ba[v[(x[n+6>>1]<<2)+132448>>2]](n,m,j,C(0),l,h);i=i+2|0;k=k+2|0;if((r|0)!=(k|0)){continue}break}}if(!(f&1)){break e}f=p+(i<<3)|0;Ba[v[(x[f+6>>1]<<2)+132448>>2]](f,m,j,C(0),l,h)}o=o+1|0;if((o|0)!=(g|0)){continue}break}}a=v[d+11968>>2];f:{if(!a){break f}f=v[b+36>>2];b=v[b+44>>2];i=0;if((a|0)!=1){g=a&-2;k=0;while(1){h=i<<3;j=h+b|0;Ba[v[(x[j+6>>1]<<2)+132496>>2]](j,f,0);h=b+(h|8)|0;Ba[v[(x[h+6>>1]<<2)+132496>>2]](h,f,0);i=i+2|0;k=k+2|0;if((g|0)!=(k|0)){continue}break}}if(!(a&1)){break f}a=b+(i<<3)|0;Ba[v[(x[a+6>>1]<<2)+132496>>2]](a,f,0)}if(!(v[c+4>>2]&2147483647)){break a}i=0;while(1){a=v[v[d+12144>>2]+B(i,52)>>2];Ba[v[v[a>>2]+140>>2]](a,1);i=i+1|0;if(i>>>0<(v[c+4>>2]&2147483647)>>>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,r=0,s=0,u=0,x=0;n=v[a+28>>2];a:{if((n|0)!=v[a+24>>2]){c=v[a+20>>2];d=n;break a}d=n+1|0;b:{if(!d){break b}o=4;c=a+4|0;if(d>>>0<=4){break b}i=v[a+40>>2];c:{d:{e:{f:{g:{c=n>>>1|n;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=v[i+388>>2];if(!c){j=xa-16|0;xa=j;g=i+100|0;d=v[g+284>>2];if(d){c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?52491:63804;h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,e,18373,180)|0}else{h=0}v[j+12>>2]=h;c=v[g+268>>2];h:{if(c>>>0>=(v[g+272>>2]&2147483647)>>>0){c=0;e=g+4|0;d=v[e+268>>2];k=d&2147483647?d<<1:1;i:{if(!k){break i}d=k<<2;if(!(w[e+256|0]|d>>>0>256)){t[e+256|0]=1;c=e;break i}if(!d){break i}c=v[37696];f=c+12|0;c=(q=f,r=d,s=Ba[v[v[c>>2]+20>>2]](c)|0?52491:63804,u=16608,x=553,p=v[v[f>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}f=v[e+264>>2];m=(f<<2)+c|0;if((f|0)>0){l=v[e+260>>2];d=c;while(1){v[d>>2]=v[l>>2];l=l+4|0;d=d+4|0;if(m>>>0>d>>>0){continue}break}}v[m>>2]=v[j+12>>2];j:{if(v[e+268>>2]<0){break j}d=v[e+260>>2];if((d|0)==(e|0)){t[e+256|0]=0;break j}if(!d){break j}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d);f=v[e+264>>2]}v[e+268>>2]=k;v[e+260>>2]=c;v[e+264>>2]=f+1;break h}v[v[g+264>>2]+(c<<2)>>2]=h;v[g+268>>2]=c+1}c=(h+(v[g+276>>2]<<5)|0)-32|0;if(h>>>0<=c>>>0){d=v[g+288>>2];while(1){v[c>>2]=d;d=c;c=c-32|0;if(h>>>0<=c>>>0){continue}break}v[g+288>>2]=d}xa=j+16|0;c=v[i+388>>2]}v[i+388>>2]=v[c>>2];v[i+380>>2]=v[i+380>>2]+1;break c}c=v[i+680>>2];if(!c){j=xa-16|0;xa=j;g=i+392|0;d=v[g+284>>2];if(d){c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?52957:63804;h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,e,18373,180)|0}else{h=0}v[j+12>>2]=h;c=v[g+268>>2];k:{if(c>>>0>=(v[g+272>>2]&2147483647)>>>0){c=0;e=g+4|0;d=v[e+268>>2];k=d&2147483647?d<<1:1;l:{if(!k){break l}d=k<<2;if(!(w[e+256|0]|d>>>0>256)){t[e+256|0]=1;c=e;break l}if(!d){break l}c=v[37696];f=c+12|0;c=(x=f,u=d,s=Ba[v[v[c>>2]+20>>2]](c)|0?52957:63804,r=16608,q=553,p=v[v[f>>2]+8>>2],Ba[p](x|0,u|0,s|0,r|0,q|0)|0)}f=v[e+264>>2];m=(f<<2)+c|0;if((f|0)>0){l=v[e+260>>2];d=c;while(1){v[d>>2]=v[l>>2];l=l+4|0;d=d+4|0;if(m>>>0>d>>>0){continue}break}}v[m>>2]=v[j+12>>2];m:{if(v[e+268>>2]<0){break m}d=v[e+260>>2];if((d|0)==(e|0)){t[e+256|0]=0;break m}if(!d){break m}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d);f=v[e+264>>2]}v[e+268>>2]=k;v[e+260>>2]=c;v[e+264>>2]=f+1;break k}v[v[g+264>>2]+(c<<2)>>2]=h;v[g+268>>2]=c+1}c=(h+(v[g+276>>2]<<6)|0)+-64|0;if(h>>>0<=c>>>0){d=v[g+288>>2];while(1){v[c>>2]=d;d=c;c=c+-64|0;if(h>>>0<=c>>>0){continue}break}v[g+288>>2]=d}xa=j+16|0;c=v[i+680>>2]}v[i+680>>2]=v[c>>2];v[i+672>>2]=v[i+672>>2]+1;break c}c=v[i+972>>2];if(!c){j=xa-16|0;xa=j;g=i+684|0;d=v[g+284>>2];if(d){c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?54083:63804;h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,e,18373,180)|0}else{h=0}v[j+12>>2]=h;c=v[g+268>>2];n:{if(c>>>0>=(v[g+272>>2]&2147483647)>>>0){c=0;e=g+4|0;d=v[e+268>>2];k=d&2147483647?d<<1:1;o:{if(!k){break o}d=k<<2;if(!(w[e+256|0]|d>>>0>256)){t[e+256|0]=1;c=e;break o}if(!d){break o}c=v[37696];f=c+12|0;c=(q=f,r=d,s=Ba[v[v[c>>2]+20>>2]](c)|0?54083:63804,u=16608,x=553,p=v[v[f>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}f=v[e+264>>2];m=(f<<2)+c|0;if((f|0)>0){l=v[e+260>>2];d=c;while(1){v[d>>2]=v[l>>2];l=l+4|0;d=d+4|0;if(m>>>0>d>>>0){continue}break}}v[m>>2]=v[j+12>>2];p:{if(v[e+268>>2]<0){break p}d=v[e+260>>2];if((d|0)==(e|0)){t[e+256|0]=0;break p}if(!d){break p}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d);f=v[e+264>>2]}v[e+268>>2]=k;v[e+260>>2]=c;v[e+264>>2]=f+1;break n}v[v[g+264>>2]+(c<<2)>>2]=h;v[g+268>>2]=c+1}c=(h+(v[g+276>>2]<<7)|0)-128|0;if(h>>>0<=c>>>0){d=v[g+288>>2];while(1){v[c>>2]=d;d=c;c=c-128|0;if(h>>>0<=c>>>0){continue}break}v[g+288>>2]=d}xa=j+16|0;c=v[i+972>>2]}v[i+972>>2]=v[c>>2];v[i+964>>2]=v[i+964>>2]+1;break c}c=0;d=d<<2;if(!d){break c}c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,24422,11777,1342)|0}}d=v[a+20>>2];q:{if(!d){break q}I9(c,d,n<<2);d=v[a+20>>2];if((d|0)==(a+4|0)){break q}bP(v[a+40>>2],d,v[a+24>>2])}v[a+20>>2]=c;v[a+24>>2]=o;d=v[a+28>>2]}v[a+28>>2]=d+1;v[(d<<2)+c>>2]=b;v[(v[b>>2]==(a|0)?12:16)+b>>2]=n}function Vn(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,u=0;d=v[37696];a=Ba[v[v[d>>2]+20>>2]](d)|0?41765:63804;e=Ba[v[v[d+12>>2]+8>>2]](d+12|0,52,a,7621,560)|0;t[e+48|0]=1;v[e+40>>2]=0;v[e+44>>2]=0;v[e+4>>2]=196624;v[e>>2]=129560;v[e+8>>2]=0;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;g=xa-144|0;xa=g;a:{b:{if(!c){break b}u=1;c:{while(1){q=l+1|0;d:{if(q>>>0>=c>>>0){break d}s=0;f=0;i=0;h=v[(q<<2)+b>>2];a=h;d=a+319|0;i=d>>>0<319?1:i;d=i<<26|d>>>6;k=a>>>6|0;a=(i>>>6|0)-(k>>>0>d>>>0)|0;j=d-k|0;i=a;k=0;m=k;d=j+1|0;a=d?a:a+1|0;n=d&7;if(k|n){while(1){k=d;d=d-1|0;a=a-!k|0;h=h- -64|0;k=f;f=s+1|0;k=f?k:k+1|0;s=f;f=k;if((n|0)!=(s|0)|(m|0)!=(f|0)){continue}break}}if(!i&j>>>0<7){break d}while(1){h=h+512|0;a=a-(d>>>0<8)|0;d=d-8|0;if(a|d){continue}break}}e:{k=(l<<2)+b|0;i=v[k>>2];d=x[i+4>>1];switch(v[(v[((d<<2)+86240|0)+72>>2]+i|0)+4>>2]>>>30|0){case 0:case 3:break e;default:break c}}f:{f=Ba[v[v[i>>2]+92>>2]](i)|0;if(f){h=0;g:{if((d|0)!=6){j=0;while(1){Ba[v[v[i>>2]+96>>2]](i,g+16|0,1,h)|0;a=v[g+16>>2];Ba[v[v[a>>2]+156>>2]](g,a);a=(w[g|0]&2)>>>1|0;j=a|j;o=a+o|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}break g}j=0;while(1){Ba[v[v[i>>2]+96>>2]](i,g+16|0,1,h)|0;a=v[g+16>>2];Ba[v[v[a>>2]+156>>2]](g,a);a=(w[g|0]&2)>>>1|0;j=a|j;p=a+p|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}if(j&1){break f}}b9(v[37696],4,11218,190,73432,0);break a}h:{i:{switch(d-5|0){case 1:h=v[k>>2]+40|0;if(!v[h>>2]){break h}b9(v[37696],4,11218,199,73360,0);break a;case 0:h=v[k>>2]+40|0;if(!v[h>>2]){break h}b9(v[37696],4,11218,209,73360,0);break a;default:break i}}b9(v[37696],4,11218,216,72861,0);break a}u=c>>>0>q>>>0;v[h>>2]=e;l=q;if((l|0)!=(c|0)){continue}break}a=0;f=0;j:{if(!p){break j}d=B(p,24)+24|0;f=0;if(!d){break j}f=v[37696]+12|0;f=Ba[v[v[f>>2]+8>>2]](f,d,24422,11218,227)|0}k:{if(!o){break k}d=B(o,24)+24|0;if(!d){break k}a=v[37696]+12|0;a=Ba[v[v[a>>2]+8>>2]](a,d,24422,11218,227)|0}p=v[32386];q=v[32387];j=0;o=0;while(1){l:{m:{n:{m=v[(j<<2)+b>>2];switch(x[m+4>>1]-5|0){case 0:break m;case 1:break n;default:break l}}i=Ba[v[v[m>>2]+92>>2]](m)|0;if(!i){break l}k=m+48|0;d=m+20|0;h=B(o,24)+f|0;l=0;while(1){n=v[(l<<2)+(x[m+24>>1]==1?d:v[m+20>>2])>>2];Ba[v[v[n>>2]+156>>2]](g+16|0,n);if(w[g+16|0]&2){Ba[p|0](h,n+32|0,k);h=h+24|0;o=o+1|0}l=l+1|0;if((i|0)!=(l|0)){continue}break}break l}i=Ba[v[v[m>>2]+92>>2]](m)|0;if(!i){break l}k=m+48|0;d=m+20|0;h=B(r,24)+a|0;l=0;while(1){n=v[(l<<2)+(x[m+24>>1]==1?d:v[m+20>>2])>>2];Ba[v[v[n>>2]+156>>2]](g+16|0,n);if(w[g+16|0]&2){Ba[q|0](h,n+32|0,k);h=h+24|0;r=r+1|0}l=l+1|0;if((i|0)!=(l|0)){continue}break}}j=j+1|0;if((j|0)!=(c|0)){continue}break}p=a;break b}b9(v[37696],4,11218,167,73497,0);break a}i=JB(g+16|0);k=JB(i- -64|0);v[e+24>>2]=o;o:{if(!o){break o}v[g+8>>2]=f;v[g+4>>2]=o;h=0;v[g+12>>2]=0;v[g>>2]=4;NB(i,g);a=v[i+40>>2];v[e+8>>2]=a;d=B(a,28);p:{if(!d){j=0;a=0;break p}a=v[37696]+12|0;j=Ba[v[v[a>>2]+8>>2]](a,d,24422,11218,267)|0;a=B(v[e+8>>2],28)}v[e+16>>2]=j;I9(j,v[i+8>>2],a);d=v[e+24>>2]<<2;q:{if(!d){j=0;break q}a=v[37696]+12|0;j=Ba[v[v[a>>2]+8>>2]](a,d,24422,11218,269)|0;h=v[e+24>>2]<<2}v[e+32>>2]=j;I9(j,v[i>>2],h);if(f){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,f)}v[g+8>>2]=0;v[g>>2]=0;v[g+4>>2]=0;f=v[g+12>>2];if(!f){break o}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,f)}v[e+28>>2]=r;r:{if(!r){break r}v[g+8>>2]=p;v[g+4>>2]=r;h=0;v[g+12>>2]=0;v[g>>2]=4;NB(k,g);a=v[i+104>>2];v[e+12>>2]=a;f=B(a,28);s:{if(!f){j=0;a=0;break s}a=v[37696]+12|0;j=Ba[v[v[a>>2]+8>>2]](a,f,24422,11218,267)|0;a=B(v[e+12>>2],28)}v[e+20>>2]=j;I9(j,v[i+72>>2],a);f=v[e+28>>2]<<2;t:{if(!f){j=0;break t}a=v[37696]+12|0;j=Ba[v[v[a>>2]+8>>2]](a,f,24422,11218,269)|0;h=v[e+28>>2]<<2}v[e+36>>2]=j;I9(j,v[k>>2],h);if(p){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,p)}v[g+8>>2]=0;v[g>>2]=0;v[g+4>>2]=0;f=v[g+12>>2];if(!f){break r}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,f)}v[e+40>>2]=c;c=c<<2;u:{if(!c){l=0;a=0;break u}a=v[37696]+12|0;l=Ba[v[v[a>>2]+8>>2]](a,c,24422,11218,279)|0;a=v[e+40>>2]<<2}v[e+44>>2]=l;I9(l,b,a);KB(i- -64|0);KB(i)}xa=g+144|0;if(!((u^-1)&1)){Ba[v[v[e>>2]+16>>2]](e);e=0}return e|0}function Q$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=0;f=xa-240|0;xa=f;j=z[d+8>>2];g=z[d>>2];i=z[d+4>>2];a:{if(!(g!=C(1)|i!=C(1)|j!=C(1))){u[f+144>>1]=0;v[f+140>>2]=e;v[f+132>>2]=2;v[f+128>>2]=143660;v[f+136>>2]=f- -64;l=z[a+24>>2];j=z[c+8>>2];q=z[c+24>>2];i=C(z[a+8>>2]-q);h=C(i+i);i=z[c>>2];s=z[c+16>>2];g=C(z[a>>2]-s);k=C(g+g);y=z[c+20>>2];g=C(z[a+4>>2]-y);n=C(g+g);g=z[c+4>>2];p=C(C(j*h)+C(C(i*k)+C(n*g)));m=z[c+12>>2];o=C(C(m*m)+C(-.5));r=C(C(j*p)+C(C(h*o)-C(m*C(C(i*n)-C(k*g)))));z[f+156>>2]=r;x=C(C(g*p)+C(C(n*o)-C(m*C(C(j*k)-C(h*i)))));z[f+152>>2]=x;A=C(C(i*p)+C(C(k*o)-C(m*C(C(g*h)-C(n*j)))));z[f+148>>2]=A;n=z[a+16>>2];h=z[a+20>>2];k=z[a+12>>2];z[f+172>>2]=l;h=C(h-q);h=C(h+h);k=C(k-s);k=C(k+k);n=C(n-y);n=C(n+n);p=C(C(j*h)+C(C(i*k)+C(g*n)));q=C(C(j*p)+C(C(h*o)-C(m*C(C(i*n)-C(k*g)))));z[f+168>>2]=q;s=C(C(g*p)+C(C(n*o)-C(m*C(C(j*k)-C(h*i)))));z[f+164>>2]=s;g=C(C(i*p)+C(C(k*o)-C(m*C(C(g*h)-C(n*j)))));z[f+160>>2]=g;j=C(q-r);z[f+184>>2]=j;i=C(s-x);z[f+180>>2]=i;g=C(g-A);m=C(C(j*j)+C(C(g*g)+C(i*i)));z[f+188>>2]=m;z[f+192>>2]=m!=C(0)?C(C(1)/m):C(0);z[f+176>>2]=g;z[f+8>>2]=l;z[f+4>>2]=l;z[f>>2]=l;z[f+208>>2]=j;z[f+204>>2]=i;z[f+200>>2]=g;a=xa-288|0;xa=a;i=z[b+60>>2];c=w[b+64|0];d=v[b+28>>2];e=v[b+24>>2];v[a+36>>2]=143304;v[a+56>>2]=f;v[a+32>>2]=143280;J=a,K=Waa(e,d),v[J+48>>2]=K;v[a+52>>2]=Aa;v[a+44>>2]=c>>>1&1;v[a+40>>2]=f+128;c=f+148|0;g=z[c>>2];z[a+60>>2]=g;m=z[c+4>>2];z[a- -64>>2]=m;o=z[c+8>>2];z[a+68>>2]=o;d=f+200|0;l=z[d>>2];z[a+72>>2]=l;h=z[d+4>>2];z[a+76>>2]=h;j=z[d+8>>2];v[a+112>>2]=0;v[a+116>>2]=0;u[a+108>>1]=0;v[a+104>>2]=-1;z[a+88>>2]=i;t[a+84|0]=1;z[a+80>>2]=j;v[a+120>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+144>>2]=0;v[a+136>>2]=2139095039;v[a+140>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;z[a+92>>2]=1;e=v[f+132>>2];t[a+208|0]=0;t[a+209|0]=(e|0)==1;e=v[f+4>>2];I=v[f>>2];i=z[f+8>>2];v[a+268>>2]=0;z[a+264>>2]=j;z[a+260>>2]=h;v[a+252>>2]=0;z[a+248>>2]=o;z[a+244>>2]=m;v[a+236>>2]=0;z[a+232>>2]=i;z[a+256>>2]=l;z[a+240>>2]=g;v[a+224>>2]=I;v[a+228>>2]=e;B0(b+112|0,c,d,a+32|0,f,C(1));v[a+36>>2]=143304;v[a+32>>2]=143280;if(w[a+208|0]){b=v[a+40>>2];Ba[v[v[b>>2]>>2]](b,a+96|0,a+160|0,a+172|0,a+184|0,a+92|0,a+196|0)|0}xa=a+288|0;break a}o=z[d+12>>2];m=C(o+o);l=z[d+16>>2];h=C(l+l);A=C(C(1)-C(o*m));B=C(l*h);k=C(A-B);n=C(j*k);o=z[d+20>>2];D=C(m*o);r=z[d+24>>2];E=C(h*r);p=C(D+E);q=C(g*p);y=C(h*o);x=C(m*r);h=C(y-x);s=C(i*h);z[f+232>>2]=C(k*n)+C(C(p*q)+C(h*s));y=C(y+x);x=C(j*y);F=C(m*l);l=C(o+o);G=C(r*l);m=C(F-G);r=C(g*m);H=C(o*l);o=C(A-H);A=C(i*o);z[f+228>>2]=C(k*x)+C(C(p*r)+C(h*A));z[f+220>>2]=C(y*n)+C(C(m*q)+C(o*s));z[f+216>>2]=C(y*x)+C(C(m*r)+C(o*A));l=C(D-E);D=C(l*n);n=C(C(C(1)-B)-H);B=C(n*q);q=C(F+G);z[f+208>>2]=D+C(B+C(q*s));z[f+204>>2]=C(l*x)+C(C(n*r)+C(q*A));r=k;k=C(j*l);s=p;p=C(g*n);x=h;h=C(i*q);z[f+224>>2]=C(r*k)+C(C(s*p)+C(x*h));z[f+212>>2]=C(y*k)+C(C(m*p)+C(o*h));z[f+200>>2]=C(l*k)+C(C(n*p)+C(q*h));t[f+145|0]=C(C(g*i)*j)>2]=e;v[f+132>>2]=2;v[f+128>>2]=143692;v[f+136>>2]=f+200;p=z[a+24>>2];j=z[c+8>>2];q=z[c+24>>2];i=C(z[a+8>>2]-q);l=C(i+i);i=z[c>>2];s=z[c+16>>2];g=C(z[a>>2]-s);h=C(g+g);y=z[c+20>>2];g=C(z[a+4>>2]-y);k=C(g+g);g=z[c+4>>2];n=C(C(j*l)+C(C(i*h)+C(k*g)));m=z[c+12>>2];o=C(C(m*m)+C(-.5));r=C(C(j*n)+C(C(l*o)-C(m*C(C(i*k)-C(h*g)))));z[f+156>>2]=r;x=C(C(g*n)+C(C(k*o)-C(m*C(C(j*h)-C(l*i)))));z[f+152>>2]=x;A=C(C(i*n)+C(C(h*o)-C(m*C(C(g*l)-C(k*j)))));z[f+148>>2]=A;k=z[a+16>>2];l=z[a+20>>2];h=z[a+12>>2];z[f+172>>2]=p;l=C(l-q);l=C(l+l);h=C(h-s);h=C(h+h);k=C(k-y);k=C(k+k);n=C(C(j*l)+C(C(i*h)+C(g*k)));p=C(C(j*n)+C(C(l*o)-C(m*C(C(i*k)-C(h*g)))));z[f+168>>2]=p;q=C(C(g*n)+C(C(k*o)-C(m*C(C(j*h)-C(l*i)))));z[f+164>>2]=q;g=C(C(i*n)+C(C(h*o)-C(m*C(C(g*l)-C(k*j)))));z[f+160>>2]=g;j=C(p-r);z[f+184>>2]=j;i=C(q-x);z[f+180>>2]=i;g=C(g-A);z[f+176>>2]=g;j=C(C(j*j)+C(C(g*g)+C(i*i)));z[f+188>>2]=j;z[f+192>>2]=j!=C(0)?C(C(1)/j):C(0);EV(f,a);a=f- -64|0;r_(a,f,c,d);H$(a,1,b,f+128|0,1)}xa=f+240|0;return w[f+144|0]!=0|0}function s1(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=0,D=C(0),E=C(0),F=0,G=0,H=0,I=C(0),J=C(0),L=0,M=0;o=xa-672|0;xa=o;a:{if(!f){break a}F=w[h+64|0];if(F){A=1;H=v[h+76>>2];p=z[H+40>>2];r=z[H+36>>2];s=z[H+32>>2];b:{if((F|0)==1){break b}G=F-1|0;L=G&1;if((F|0)!=2){M=G&-2;F=0;while(1){G=B(A,48)+H|0;s=C(C(s+z[G+32>>2])+z[G+80>>2]);p=C(C(p+z[G+40>>2])+z[G+88>>2]);r=C(C(r+z[G+36>>2])+z[G+84>>2]);A=A+2|0;F=F+2|0;if((M|0)!=(F|0)){continue}break}}if(!L){break b}A=B(A,48)+H|0;s=C(s+z[A+32>>2]);p=C(p+z[A+40>>2]);r=C(r+z[A+36>>2])}q=p;p=C(C(1)/C(K(C(C(p*p)+C(C(s*s)+C(r*r))))));q=C(q*p);y=C(s*p);p=C(r*p)}else{p=C(0)}r=z[k>>2];z[o+32>>2]=n;z[o+48>>2]=r*C(.05000000074505806);k=v[o+60>>2];v[o+24>>2]=v[o+56>>2];v[o+28>>2]=k;k=v[o+44>>2];v[o+8>>2]=v[o+40>>2];v[o+12>>2]=k;k=v[o+36>>2];v[o>>2]=v[o+32>>2];v[o+4>>2]=k;k=v[o+52>>2];v[o+16>>2]=v[o+48>>2];v[o+20>>2]=k;c:{e=a2(a,b,e,f,i,o+16|0,o,g,h);d:{if(e){break d}D=z[g+40>>2];E=z[g+32>>2];u=z[g+36>>2];if(C(C(q*D)+C(C(y*E)+C(p*u)))=j>>>0){break c}}f=g+32|0;b=v[b+4>>2];a=v[a+4>>2];j=v[a+52>>2];k=v[a+48>>2];z[o+592>>2]=z[a+56>>2];v[o+584>>2]=k;v[o+588>>2]=j;k2(z_(o+352|0,o+584|0),o+600|0);v[o+632>>2]=103120;l2(b,m,o+280|0);v[o+248>>2]=0;v[o+252>>2]=0;v[o+244>>2]=1065353216;v[o+256>>2]=0;v[o+260>>2]=0;v[o+264>>2]=1065353216;v[o+268>>2]=0;v[o+228>>2]=0;v[o+232>>2]=0;v[o+224>>2]=1065353216;v[o+236>>2]=0;v[o+240>>2]=0;t[o+204|0]=1;v[o+192>>2]=c;v[o+208>>2]=a;v[o+160>>2]=141108;c=o+224|0;v[o+200>>2]=c;v[o+196>>2]=c;v[o+136>>2]=b+96;v[o+132>>2]=b+48;v[o+128>>2]=d;c=g+16|0;e:{if(m){t[o+140|0]=1;v[o+96>>2]=141020;break e}t[o+140|0]=0;v[o+96>>2]=141068}v[o+144>>2]=b;v[o+92>>2]=0;F=X1(o+600|0,o+280|0,o+160|0,o+96|0,i,o+92|0,l,f,g,c,z[a+16>>2],z[b+16>>2],e,n);if(!F){break a}a=v[o+92>>2];if(a){t2(h,i,a,n);c=v[h+76>>2];n=z[c+32>>2];p=n;x=z[c+36>>2];r=x;q=z[c+40>>2];s=q;a=w[h+64|0];f:{if(a>>>0<2){break f}A=1;b=a-1|0;e=b&1;s=q;r=x;p=n;if((a|0)!=2){f=b&-2;a=0;while(1){b=c+B(A,48)|0;p=C(C(p+z[b+32>>2])+z[b+80>>2]);s=C(C(s+z[b+40>>2])+z[b+88>>2]);r=C(C(r+z[b+36>>2])+z[b+84>>2]);A=A+2|0;a=a+2|0;if((f|0)!=(a|0)){continue}break}}if(!e){break f}a=c+B(A,48)|0;p=C(p+z[a+32>>2]);s=C(s+z[a+40>>2]);r=C(r+z[a+36>>2])}D=z[d+4>>2];E=z[d+8>>2];u=z[d>>2];y=z[d+12>>2];v[o+76>>2]=0;a=C(C(s*s)+C(C(p*p)+C(r*r)))>C(1.1920928955078125e-7);s=a?s:q;n=a?p:n;p=a?r:x;r=C(C(E*s)+C(C(u*n)+C(D*p)));x=C(C(y*y)+C(-.5));q=C(C(E*r)+C(C(y*C(C(u*p)-C(n*D)))+C(s*x)));q=C(q+q);I=q;J=C(q*q);q=C(C(u*r)+C(C(y*C(C(D*s)-C(p*E)))+C(n*x)));q=C(q+q);n=C(C(D*r)+C(C(y*C(C(E*n)-C(s*u)))+C(p*x)));n=C(n+n);p=C(C(1)/C(K(C(J+C(C(q*q)+C(n*n))))));z[o+72>>2]=I*p;z[o+68>>2]=n*p;z[o+64>>2]=q*p;r2(h,i,o- -64|0,d,l);break a}if(e){break a}c=v[h+76>>2];n=z[c+32>>2];p=n;x=z[c+36>>2];r=x;q=z[c+40>>2];s=q;a=w[h+64|0];g:{if(a>>>0<2){break g}A=1;b=a-1|0;e=b&1;s=q;r=x;p=n;if((a|0)!=2){f=b&-2;a=0;while(1){b=c+B(A,48)|0;p=C(C(p+z[b+32>>2])+z[b+80>>2]);s=C(C(s+z[b+40>>2])+z[b+88>>2]);r=C(C(r+z[b+36>>2])+z[b+84>>2]);A=A+2|0;a=a+2|0;if((f|0)!=(a|0)){continue}break}}if(!e){break g}a=c+B(A,48)|0;p=C(p+z[a+32>>2]);s=C(s+z[a+40>>2]);r=C(r+z[a+36>>2])}D=z[d+4>>2];E=z[d+8>>2];u=z[d>>2];y=z[d+12>>2];v[o+76>>2]=0;a=C(C(s*s)+C(C(p*p)+C(r*r)))>C(1.1920928955078125e-7);s=a?s:q;n=a?p:n;p=a?r:x;r=C(C(E*s)+C(C(u*n)+C(D*p)));x=C(C(y*y)+C(-.5));q=C(C(E*r)+C(C(y*C(C(u*p)-C(n*D)))+C(s*x)));q=C(q+q);I=q;J=C(q*q);q=C(C(u*r)+C(C(y*C(C(D*s)-C(p*E)))+C(n*x)));q=C(q+q);n=C(C(D*r)+C(C(y*C(C(E*n)-C(s*u)))+C(p*x)));n=C(n+n);p=C(C(1)/C(K(C(J+C(C(q*q)+C(n*n))))));z[o+72>>2]=I*p;z[o+68>>2]=n*p;z[o+64>>2]=q*p;r2(h,i,o- -64|0,d,l);break a}r=z[d+4>>2];s=z[d+8>>2];x=z[d>>2];n=z[d+12>>2];v[o+364>>2]=0;q=C(q+D);y=C(y+E);p=C(p+u);D=C(C(s*q)+C(C(x*y)+C(r*p)));E=C(C(n*n)+C(-.5));u=C(C(s*D)+C(C(n*C(C(x*p)-C(y*r)))+C(q*E)));u=C(u+u);I=u;J=C(u*u);u=C(C(x*D)+C(C(n*C(C(r*q)-C(p*s)))+C(y*E)));u=C(u+u);n=C(C(r*D)+C(C(n*C(C(s*y)-C(q*x)))+C(p*E)));n=C(n+n);p=C(C(1)/C(K(C(J+C(C(u*u)+C(n*n))))));z[o+360>>2]=I*p;z[o+356>>2]=n*p;z[o+352>>2]=u*p;r2(h,i,o+352|0,d,l);F=1}xa=o+672|0;return F}function Xm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;v[a>>2]=121908;if(v[a+872>>2]){d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[a+880>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];a:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;b:{if(!f){break b}e=f<<2;if(!e){break b}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?53423:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,b,16608,553)|0}h=v[d+20>>2];e=(h<<2)+c|0;if((h|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[e>>2]=v[d+8>>2];c:{if(v[d+24>>2]<0){break c}e=v[d+16>>2];if(!e){break c}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);h=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=c;v[d+20>>2]=h+1;break a}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[a+880>>2]>>2];v[a+880>>2]=c;if(c){continue}break}b=v[d+16>>2];c=v[d+20>>2]}else{c=0}g=b;b=d+8|0;Zm(g,c,b);Zm(v[a+856>>2],v[a+860>>2],b);b=v[d+24>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=v[d+16>>2];if(!c){break d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}xa=d+32|0}c=v[a+856>>2];b=v[a+860>>2];if(b){f=(b<<2)+c|0;while(1){e=v[c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((f|0)!=(c|0)){continue}break}c=v[a+856>>2]}b=v[a+864>>2];e:{if((b|0)<0|!(b&2147483647)){break e}if((a+596|0)==(c|0)){t[a+852|0]=0;break e}if(!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[a+580>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[a+588>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];f:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;g:{if(!f){break g}e=f<<2;if(!e){break g}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?52793:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,b,16608,553)|0}h=v[d+20>>2];e=(h<<2)+c|0;if((h|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[e>>2]=v[d+8>>2];h:{if(v[d+24>>2]<0){break h}e=v[d+16>>2];if(!e){break h}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);h=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=c;v[d+20>>2]=h+1;break f}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[a+588>>2]>>2];v[a+588>>2]=c;if(c){continue}break}b=v[d+16>>2];c=v[d+20>>2]}else{c=0}g=b;b=d+8|0;_m(g,c,b);_m(v[a+564>>2],v[a+568>>2],b);b=v[d+24>>2];i:{if((b|0)<0|!(b&2147483647)){break i}c=v[d+16>>2];if(!c){break i}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}xa=d+32|0}c=v[a+564>>2];b=v[a+568>>2];if(b){f=(b<<2)+c|0;while(1){e=v[c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((f|0)!=(c|0)){continue}break}c=v[a+564>>2]}b=v[a+572>>2];j:{if((b|0)<0|!(b&2147483647)){break j}if((a+304|0)==(c|0)){t[a+560|0]=0;break j}if(!c){break j}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[a+288>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[a+296>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];k:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;l:{if(!f){break l}e=f<<2;if(!e){break l}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?53101:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,b,16608,553)|0}h=v[d+20>>2];e=(h<<2)+c|0;if((h|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[e>>2]=v[d+8>>2];m:{if(v[d+24>>2]<0){break m}e=v[d+16>>2];if(!e){break m}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);h=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=c;v[d+20>>2]=h+1;break k}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[a+296>>2]>>2];v[a+296>>2]=c;if(c){continue}break}b=v[d+16>>2];c=v[d+20>>2]}else{c=0}g=b;b=d+8|0;$m(g,c,b);$m(v[a+272>>2],v[a+276>>2],b);b=v[d+24>>2];n:{if((b|0)<0|!(b&2147483647)){break n}c=v[d+16>>2];if(!c){break n}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}xa=d+32|0}c=v[a+272>>2];b=v[a+276>>2];if(b){f=(b<<2)+c|0;while(1){e=v[c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((f|0)!=(c|0)){continue}break}c=v[a+272>>2]}b=v[a+280>>2];o:{if((b|0)<0|!(b&2147483647)){break o}if((a+12|0)==(c|0)){t[a+268|0]=0;break o}if(!c){break o}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+4>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}return a|0}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,o=C(0),p=C(0),q=0,r=0,s=0,x=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0;n=xa-16|0;xa=n;q=v[v[a+4>>2]+40>>2];c=v[q+976>>2];r=v[a+44>>2];x=r&2048;s=x>>>11|0;a:{if(!b){d=v[c+328>>2];b:{if(!d){e=B(v[c+312>>2],80);c:{if(!e){break c}d=v[37696];h=Ba[v[v[d>>2]+20>>2]](d)|0?33299:63804;k=Ba[v[v[d+12>>2]+8>>2]](d+12|0,e,h,18447,236)|0;if(!k){break c}d=v[c+316>>2];f=d+1|0;h=v[c+312>>2];i=B(f,h);e=v[c+344>>2];d:{if(i>>>0<=e<<5>>>0){e=v[c+332>>2];break d}d=(i<<1)+31>>>5|0;if(d>>>0>(e&2147483647)>>>0){e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,d<<2,24422,17999,438)|0;h=v[c+340>>2];e:{if(!h){break e}I9(e,h,v[c+344>>2]<<2);if(v[c+344>>2]<0){break e}h=v[c+340>>2];if(!h){break e}i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,h)}h=v[c+344>>2];J9(e+(h<<2)|0,0,d-h<<2);v[c+344>>2]=d;v[c+340>>2]=e}d=v[c+324>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}e=0;d=c;i=f<<3;j=B(i,v[c+312>>2]);if(j){h=v[37696];l=Ba[v[v[h>>2]+20>>2]](h)|0?33299:63804;h=Ba[v[v[h+12>>2]+8>>2]](h+12|0,j,l,18447,248)|0}else{h=0}v[d+324>>2]=h;if(i){d=v[37696];e=Ba[v[v[d>>2]+20>>2]](d)|0?33299:63804;e=Ba[v[v[d+12>>2]+8>>2]](d+12|0,i,e,18447,250)|0}d=v[c+332>>2];f:{if(!d){break f}I9(e,d,f<<2);d=v[c+332>>2];if(!d){break f}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,d)}v[c+332>>2]=e;d=v[c+316>>2];f=d+1|0;h=v[c+312>>2]}v[c+316>>2]=f;v[(d<<2)+e>>2]=k;e=v[c+328>>2];f=h-1|0;if((f|0)>=0){d=B(d,h);while(1){h=uK(k+B(f,80)|0,d+f|0);v[v[c+324>>2]+(e<<2)>>2]=h;e=e+1|0;h=(f|0)>0;f=f-1|0;if(h){continue}break}}v[c+328>>2]=e;f=1}if(!f){break b}d=v[c+328>>2]}g=d-1|0;v[c+328>>2]=g;g=v[v[c+324>>2]+(g<<2)>>2];d=v[g+48>>2];f=v[c+340>>2]+(d>>>3&536870908)|0;v[f>>2]=v[f>>2]|1<>2]=0;v[g+36>>2]=0;t[g+42|0]=0;f=v[g+48>>2];d=v[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=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,d<<2,24422,17999,438)|0;e=v[c+936>>2];h:{if(!e){break h}I9(f,e,v[c+940>>2]<<2);if(v[c+940>>2]<0){break h}e=v[c+936>>2];if(!e){break h}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,e)}e=v[c+940>>2];J9(f+(e<<2)|0,0,d-e<<2);v[c+940>>2]=d;v[c+936>>2]=f;f=v[g+48>>2]}d=v[c+936>>2]+(f>>>3&536870908)|0;v[d>>2]=v[d>>2]|1<>2];d=v[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=v[37696];f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,d<<2,24422,17999,438)|0;e=v[c+948>>2];j:{if(!e){break j}I9(f,e,v[c+952>>2]<<2);if(v[c+952>>2]<0){break j}e=v[c+948>>2];if(!e){break j}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,e)}e=v[c+952>>2];J9(f+(e<<2)|0,0,d-e<<2);v[c+952>>2]=d;v[c+948>>2]=f;f=v[g+48>>2]}c=v[c+948>>2]+(f>>>3&536870908)|0;v[c>>2]=v[c>>2]|1<>2]=0;v[b+36>>2]=0;t[b+42|0]=0;c=b}g=v[a+44>>2];y=g&32768;A=g&98304;h=A?y?1:-1:0;k=g&262144;D=!(r&448)|k>>>18;f=r&2;E=f>>>1|0;F=g&131072;g=v[a+32>>2];i=w[v[v[g+4>>2]+44>>2]+9|0];d=v[a+28>>2];s=w[v[v[d+4>>2]+44>>2]+9|0];l=n+8|0;e=v[d+4>>2];m=w[v[e+44>>2]+9|0]-1>>>0<2?e:0;G=w[v[m+44>>2]+10|0];e=v[g+4>>2];e=w[v[e+44>>2]+9|0]-1>>>0<2?e:0;if(e){j=v[e+44>>2];H=t[j+44|0]&1;j=w[j+10|0]}else{j=0}RP(l,q,G,j);j=v[d+28>>2];l=v[g+28>>2];v[c+12>>2]=a;v[c+4>>2]=e?e- -64|0:0;v[c>>2]=m- -64;v[c+28>>2]=l+32;v[c+24>>2]=j+32;v[c+16>>2]=v[v[d+4>>2]+44>>2]+16;v[c+20>>2]=v[v[g+4>>2]+44>>2]+16;e=v[d+28>>2];m=v[g+28>>2];z[c+52>>2]=z[e+128>>2]+z[m+128>>2];t[c+44|0]=w[n+8|0];t[c+45|0]=w[n+9|0];t[c+46|0]=v[j+68>>2];t[c+47|0]=v[l+68>>2];v[c+56>>2]=v[d+8>>2]&2147483647;v[c+60>>2]=v[g+8>>2]&2147483647;o=z[e+132>>2];p=z[m+132>>2];z[c+72>>2]=o>p?o:p;o=z[m+136>>2];p=z[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=H?g|1024:g;g=k?g|2048:g;g=(f|F)!=0|(x?g|4096:g);u[c+40>>1]=f<<6|(D?g:g|256);v[c+68>>2]=-1;v[c+8>>2]=x>>>10|E;z[c+76>>2]=o>2]=c;t[c+43|0]=(h|0)>0?2:!y&(A|0)!=0;if(!b){b=v[a+60>>2];d=v[q+1e3>>2];f=v[d+148>>2];g=(b>>>0)/(f>>>0)|0;v[v[v[d+128>>2]+(g<<2)>>2]+(b-B(f,g)<<2)>>2]=c;v[c- -64>>2]=b;b=v[v[q+976>>2]+1024>>2];Ba[v[v[b>>2]+28>>2]](b,v[a+56>>2],h,0)}xa=n+16|0}function QC(a,b,c,d){var e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=0,u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=0,N=C(0),O=C(0);h=xa-48|0;xa=h;f=B(b,24)+c|0;i=z[f>>2];m=z[f+4>>2];n=z[f+8>>2];v[h+44>>2]=0;z[h+40>>2]=n;z[h+36>>2]=m;z[h+32>>2]=i;y=z[f+12>>2];A=z[f+16>>2];D=z[f+20>>2];v[h+28>>2]=0;z[h+24>>2]=D;z[h+20>>2]=A;z[h+16>>2]=y;f=v[a+588>>2];a:{if(!f){e=v[a+292>>2];if(!e){LC(a+4|0);e=v[a+292>>2]}v[a+292>>2]=v[e>>2];v[a+284>>2]=v[a+284>>2]+1;v[e+8>>2]=0;v[e+12>>2]=0;v[e+4>>2]=b;v[e>>2]=1;v[e+16>>2]=0;b=v[a+584>>2];if(!b){KC(a+296|0);b=v[a+584>>2]}v[a+584>>2]=v[b>>2];v[a+588>>2]=b;v[a+576>>2]=v[a+576>>2]+1;c=v[h+44>>2];v[b+8>>2]=v[h+40>>2];v[b+12>>2]=c;c=v[h+36>>2];v[b>>2]=v[h+32>>2];v[b+4>>2]=c;c=v[h+20>>2];b=v[a+588>>2];v[b+16>>2]=v[h+16>>2];v[b+20>>2]=c;c=v[h+28>>2];v[b+24>>2]=v[h+24>>2];v[b+28>>2]=c;v[v[a+588>>2]+36>>2]=e;v[v[a+588>>2]+40>>2]=0;e=v[a+588>>2];v[e+32>>2]=0;break a}e=v[f+40>>2];if(!e){e=v[f+36>>2];g=v[e>>2];if(g>>>0<=3){v[e>>2]=g+1;v[(e+(g<<2)|0)+4>>2]=b;k=z[f+12>>2];z[f+12>>2]=k>2];z[f+8>>2]=k>2];z[f+4>>2]=m>n?n:m;m=z[f>>2];z[f>>2]=i>m?m:i;i=z[f+16>>2];z[f+16>>2]=i>y?i:y;i=z[f+20>>2];z[f+20>>2]=i>A?i:A;i=z[f+24>>2];z[f+24>>2]=i>D?i:D;i=z[f+28>>2];z[f+28>>2]=i>C(0)?i:C(0);MC(f);e=v[a+588>>2];break a}e=v[d+4>>2];if(!(!e|(f|0)!=v[v[d>>2]>>2])){v[d+4>>2]=e-1}b=JC(a,f,b,h+32|0,h+16|0,c);v[h+12>>2]=b;c=a;a=v[b+32>>2];v[c+588>>2]=a;e=v[a+36>>2];if((b|0)==(e|0)){e=v[a+40>>2]}v[h+8>>2]=e;b:{if(v[e+40>>2]){break b}a=v[d+4>>2];if(a>>>0>=(v[d+8>>2]&2147483647)>>>0){OC(d,h+8|0);break b}v[v[d>>2]+(a<<2)>>2]=e;v[d+4>>2]=a+1}a=v[d+4>>2];if(a>>>0>=(v[d+8>>2]&2147483647)>>>0){OC(d,h+12|0);e=v[h+12>>2];break a}v[v[d>>2]+(a<<2)>>2]=v[h+12>>2];v[d+4>>2]=a+1;e=v[h+12>>2];break a}k=C(D+n);g=v[f+36>>2];j=z[g+24>>2];s=z[g+8>>2];w=C(k-C(j+s));o=C(w*w);w=C(i+y);l=z[g+16>>2];E=z[g>>2];x=C(w-C(l+E));p=C(x*x);x=C(A+m);F=z[g+20>>2];G=z[g+4>>2];r=C(x-C(F+G));H=C(o+C(p+C(r*r)));r=z[e+24>>2];I=z[e+8>>2];o=C(k-C(r+I));N=C(o*o);o=z[e+16>>2];J=z[e>>2];p=C(w-C(o+J));O=C(p*p);p=z[e+20>>2];K=z[e+4>>2];u=C(x-C(p+K));g=H>C(N+C(O+C(u*u)));j=C(C(C(l-E)*C(F-G))*C(j-s));s=C(C(C(o-J)*C(p-K))*C(r-I));L=C(j*C(3))C(s*C(3));M=L&(j>s^-1);e=f+36|0;c:{if(!L){f=1;break c}t=f;f=v[v[e+(M<<2)>>2]+40>>2];t=f?t:0;f=!f}g=v[e+(g<<2)>>2];v[h+12>>2]=g;e=v[g+40>>2];if(e){while(1){j=z[e+24>>2];s=z[e+20>>2];q=v[g+36>>2];l=z[q+24>>2];E=z[q+20>>2];F=z[e+8>>2];G=z[e+4>>2];r=z[e>>2];I=z[e+16>>2];o=z[q+8>>2];J=z[q+4>>2];p=z[q>>2];K=z[q+16>>2];d:{if(!f){break d}H=C(C(C(I-r)*C(s-G))*C(j-F));u=C(C(C(K-p)*C(E-J))*C(l-o));if(!(H>C(u*C(3))|C(H*C(3))H)}e=g+36|0;l=C(k-C(l+o));o=C(l*l);l=C(w-C(K+p));p=C(l*l);l=C(x-C(E+J));j=C(k-C(j+F));u=C(j*j);j=C(w-C(I+r));r=C(j*j);j=C(x-C(s+G));q=C(o+C(p+C(l*l)))>C(u+C(r+C(j*j)));e:{if(t){break e}if(!L){t=0;break e}t=g;g=v[v[e+(M<<2)>>2]+40>>2];t=g?t:0;f=!g&f}g=v[e+(q<<2)>>2];v[h+12>>2]=g;e=v[g+40>>2];if(e){continue}break}}f=v[g+36>>2];e=v[f>>2];f:{if(e>>>0<=3){v[f>>2]=e+1;v[(f+(e<<2)|0)+4>>2]=b;k=z[g+12>>2];z[g+12>>2]=k>2];z[g+8>>2]=k>2];z[g+4>>2]=m>n?n:m;m=z[g>>2];z[g>>2]=i>m?m:i;i=z[g+16>>2];z[g+16>>2]=i>y?i:y;i=z[g+20>>2];z[g+20>>2]=i>A?i:A;i=z[g+24>>2];z[g+24>>2]=i>D?i:D;i=z[g+28>>2];z[g+28>>2]=i>C(0)?i:C(0);MC(g);e=v[h+12>>2];b=v[d+4>>2];if(b){f=v[d>>2];if(v[f>>2]==(e|0)){break f}if(b>>>0>=(v[d+8>>2]&2147483647)>>>0){OC(d,h+12|0);break f}v[f+(b<<2)>>2]=e;v[d+4>>2]=b+1;break f}if(!(v[d+8>>2]&2147483647)){OC(d,h+12|0);break f}v[v[d>>2]>>2]=e;v[d+4>>2]=1;break f}f=v[d+4>>2];if(!(!f|v[v[d>>2]>>2]!=(g|0))){v[d+4>>2]=f-1}e=JC(a,g,b,h+32|0,h+16|0,c);q=v[e+32>>2];b=q+36|0;g=v[d+8>>2]&2147483647;f=v[d+4>>2];g:{if(g>>>0<=f>>>0){OC(d,b);g=v[d+8>>2]&2147483647;b=v[d+4>>2];break g}v[v[d>>2]+(f<<2)>>2]=v[b>>2];b=f+1|0;v[d+4>>2]=b}f=q+40|0;if(b>>>0>=g>>>0){OC(d,f);break f}v[v[d>>2]+(b<<2)>>2]=v[f>>2];v[d+4>>2]=b+1}if(!t){break a}NC(a,t,d,M,c,1);e=0}xa=h+48|0;return e}function VY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0;k=xa-480|0;xa=k;b=v[b>>2];a=v[a>>2];v[k+168>>2]=0;v[k+172>>2]=0;v[k+160>>2]=0;v[k+164>>2]=0;t[k+192|0]=0;v[k+188>>2]=3;j=z[a+8>>2];l=z[a+12>>2];q=z[a+4>>2];v[k+220>>2]=0;z[k+216>>2]=l;z[k+212>>2]=j;z[k+208>>2]=q;j=j>=q?q:j;j=j<=l?j:l;z[k+184>>2]=j*C(.05000000074505806);z[k+180>>2]=j*C(.004999999888241291);z[k+176>>2]=j*C(.009999999776482582);t[k+32|0]=0;v[k+24>>2]=0;v[k+28>>2]=0;v[k+16>>2]=0;v[k+20>>2]=0;v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;a=v[b+40>>2];j=z[b+8>>2];l=z[b+12>>2];q=z[b+4>>2];v[k+252>>2]=0;z[k+248>>2]=l;z[k+244>>2]=j;z[k+240>>2]=q;I=v[b+16>>2];O=v[b+20>>2];P=v[b+28>>2];v[k+408>>2]=v[b+24>>2];v[k+412>>2]=P;v[k+400>>2]=I;v[k+404>>2]=O;v[k+144>>2]=a;v[k+152>>2]=v[a+40>>2]+B(w[a+39|0],20);t[k+156|0]=w[a+38|0];o=C(q*z[a+52>>2]);x=C(j*z[a+56>>2]);o=o<=x?o:x;x=C(l*z[a+60>>2]);o=o<=x?o:x;z[k+24>>2]=o*C(.02500000037252903);z[k+16>>2]=o*C(.10000000149011612);z[k+20>>2]=o*C(.05000000074505806);b=k+240|0;I=k+400|0;GV(b,I,k+48|0,k+96|0,k,q==C(1)&j==C(1)&l==C(1));v[k+148>>2]=v[a+44>>2];v[k+472>>2]=0;v[k+476>>2]=0;v[k+464>>2]=0;v[k+468>>2]=0;K=z[f+20>>2];F=z[e+20>>2];E=z[f+24>>2];G=z[e+24>>2];n=z[c+8>>2];s=z[c>>2];u=z[c+4>>2];r=z[c+12>>2];q=z[d+12>>2];o=z[d>>2];L=z[f+16>>2];H=z[e+16>>2];j=z[d+4>>2];l=z[d+8>>2];v[k+460>>2]=0;v[k+444>>2]=0;v[k+428>>2]=0;J=C(-o);m=C(H-L);p=C(F-K);A=C(G-E);D=C(C(C(J*m)-C(p*j))-C(l*A));x=C(C(q*q)+C(-.5));y=C(C(C(q*C(C(j*m)-C(o*p)))+C(x*A))-C(l*D));z[k+456>>2]=y+y;y=C(C(C(x*p)+C(q*C(C(o*A)-C(l*m))))-C(j*D));z[k+452>>2]=y+y;a=k+448|0;m=C(C(C(x*m)+C(q*C(C(l*p)-C(j*A))))-C(o*D));z[a>>2]=m+m;p=C(C(C(u*l)-C(j*n))+C(C(s*q)-C(r*o)));m=C(p+p);A=C(C(C(n*o)-C(l*s))+C(C(u*q)-C(r*j)));D=C(A+A);y=C(C(1)-C(p*m));M=C(A*D);z[k+440>>2]=y-M;p=C(C(C(s*j)-C(o*u))+C(C(n*q)-C(r*l)));N=C(p*D);n=C(C(r*q)-C(C(C(J*s)-C(u*j))-C(l*n)));s=C(n*m);z[k+436>>2]=N-s;u=C(p*m);r=C(n*D);z[k+432>>2]=u+r;z[k+424>>2]=N+s;s=C(p+p);p=C(p*s);z[k+420>>2]=y-p;m=C(A*m);n=C(n*s);z[k+416>>2]=m-n;v[k+412>>2]=0;z[k+408>>2]=u-r;z[k+404>>2]=m+n;z[k+400>>2]=C(C(1)-M)-p;u=z[d+20>>2];r=z[c+20>>2];n=z[d+24>>2];s=z[c+24>>2];m=z[d+16>>2];p=z[c+16>>2];v[k+396>>2]=0;D=C(s-G);n=C(C(n-E)-D);G=C(p-H);s=C(C(m-L)-G);F=C(r-F);u=C(C(u-K)-F);r=C(C(l*n)+C(C(o*s)+C(j*u)));m=C(C(C(x*n)-C(q*C(C(o*u)-C(j*s))))+C(l*r));z[k+392>>2]=m+m;m=C(C(j*r)+C(C(x*u)-C(q*C(C(l*s)-C(n*o)))));z[k+388>>2]=m+m;n=C(C(o*r)+C(C(x*s)-C(q*C(C(j*n)-C(u*l)))));z[k+384>>2]=n+n;v[k+320>>2]=0;v[k+240>>2]=141468;v[k+248>>2]=I;v[k+244>>2]=k+160;c=v[k+420>>2];v[k+272>>2]=v[k+416>>2];v[k+276>>2]=c;c=v[k+428>>2];v[k+280>>2]=v[k+424>>2];v[k+284>>2]=c;c=v[k+412>>2];v[k+264>>2]=v[k+408>>2];v[k+268>>2]=c;c=v[k+436>>2];v[k+288>>2]=v[k+432>>2];v[k+292>>2]=c;c=v[k+444>>2];v[k+296>>2]=v[k+440>>2];v[k+300>>2]=c;c=v[a+4>>2];v[k+304>>2]=v[a>>2];v[k+308>>2]=c;c=v[k+460>>2];v[k+312>>2]=v[k+456>>2];v[k+316>>2]=c;c=v[k+404>>2];v[k+256>>2]=v[k+400>>2];v[k+260>>2]=c;n=z[k+260>>2];z[k+260>>2]=z[k+272>>2];s=z[k+280>>2];u=z[k+264>>2];z[k+264>>2]=z[k+288>>2];z[k+280>>2]=z[k+292>>2];z[k+288>>2]=u;z[k+292>>2]=s;z[k+272>>2]=n;v[k+232>>2]=141216;v[k+236>>2]=k;n=C(34028234663852886e22);if(MX(b,k+232|0,a,k+464|0,k+384|0,k+368|0,k+336|0,k+352|0,C(g+C(0)),1)){n=z[k+368>>2];g=z[k+360>>2];s=z[k+352>>2];u=z[k+356>>2];r=z[k+344>>2];m=z[k+336>>2];p=z[k+340>>2];A=C(C(l*r)+C(C(o*m)+C(j*p)));H=C(-j);y=C(C(C(q*C(C(o*p)+C(m*H)))+C(x*r))+C(l*A));z[h+8>>2]=y+y;y=C(C(j*A)+C(C(x*p)+C(q*C(C(l*m)+C(r*J)))));z[h+4>>2]=y+y;y=p;p=C(-l);r=C(C(o*A)+C(C(x*m)+C(q*C(C(j*r)+C(y*p)))));z[h>>2]=r+r;r=n>C(0)?n:C(0);y=E;m=C(C(l*g)+C(C(o*s)+C(j*u)));E=C(C(C(q*C(C(o*u)+C(s*H)))+C(x*g))+C(l*m));z[i+8>>2]=C(D*r)+C(y+C(E+E));l=C(C(j*m)+C(C(x*u)+C(q*C(C(l*s)+C(g*J)))));z[i+4>>2]=C(F*r)+C(K+C(l+l));g=C(C(o*m)+C(C(x*s)+C(q*C(C(j*g)+C(u*p)))));z[i>>2]=C(G*r)+C(L+C(g+g))}xa=k+480|0;return C(n)}function fM(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,u=0;v[a+88>>2]=v[b>>2];c=v[b+4>>2];v[a+92>>2]=c;v[a+104>>2]=v[b+8>>2];v[a+108>>2]=v[b+12>>2];v[a+96>>2]=v[b+16>>2];v[a+100>>2]=v[b+20>>2];v[a+112>>2]=v[b+24>>2];v[a+116>>2]=v[b+28>>2];v[a+120>>2]=v[b+32>>2];v[a+124>>2]=v[b+36>>2];j=v[b+40>>2];b=v[a+128>>2];if(j>>>0>b>>>0){g=(j<<3)+15&-16;a:{if(!g){c=0;h=0;break a}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,g,24422,9522,540)|0;i=v[37696]+12|0;i=Ba[v[v[i>>2]+8>>2]](i,g,24422,9522,541)|0;h=v[37696]+12|0;h=Ba[v[v[h>>2]+8>>2]](h,g,24422,9522,542)|0}d=c;c=b<<3;g=I9(d,v[a+132>>2],c);i=I9(i,v[a+136>>2],c);h=I9(h,v[a+140>>2],c);c=b+1|0;if(j-b&1){b=b<<3;f=b+g|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;f=b+i|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;b=b+h|0;v[b>>2]=1073741823;v[b+4>>2]=1073741823;b=c}if((c|0)!=(j|0)){while(1){c=b<<3;f=c+g|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;f=c+i|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;f=c+h|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;c=c+8|0;f=c+g|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;f=c+i|0;v[f>>2]=1073741823;v[f+4>>2]=1073741823;c=c+h|0;v[c>>2]=1073741823;v[c+4>>2]=1073741823;b=b+2|0;if((j|0)!=(b|0)){continue}break}}b=v[a+132>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+136>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+140>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+140>>2]=h;v[a+136>>2]=i;v[a+132>>2]=g;v[a+128>>2]=j;b=v[a+168>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=j+15&-16;if(b){c=v[37696]+12|0;b=Ba[v[v[c>>2]+8>>2]](c,b,24422,9522,567)|0}else{b=0}v[a+168>>2]=b;c=v[a+92>>2]}f=c+v[a+188>>2]<<1;k=f+2|0;if(k>>>0>y[a+196>>2]){g=(k<<2)+15&-16;if(g){b=v[37696]+12|0;m=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,575)|0;b=v[37696]+12|0;n=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,576)|0;b=v[37696]+12|0;o=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,577)|0;b=v[37696]+12|0;p=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,578)|0;b=v[37696]+12|0;q=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,579)|0;b=v[37696]+12|0;j=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,580)|0}else{j=0}b=v[a+180>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+184>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b:{if(!g){v[a+180>>2]=0;c=0;break b}b=v[37696]+12|0;s=a,u=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,585)|0,v[s+180>>2]=u;b=v[37696]+12|0;c=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,586)|0}v[a+184>>2]=c;h=v[a+180>>2];b=1;if(f>>>0>=3){r=f&-4;i=0;while(1){e=b-1|0;v[h+(e<<2)>>2]=b;d=b<<2;v[d+c>>2]=e;e=b+1|0;v[d+h>>2]=e;d=e<<2;v[d+c>>2]=b;l=d+h|0;d=b+2|0;v[l>>2]=d;l=d<<2;v[c+l>>2]=e;e=b+3|0;v[h+l>>2]=e;v[c+(e<<2)>>2]=d;b=b+4|0;i=i+4|0;if((r|0)!=(i|0)){continue}break}}e=f&2|1;i=0;while(1){d=b-1|0;v[h+(d<<2)>>2]=b;v[c+(b<<2)>>2]=d;b=b+1|0;i=i+1|0;if((e|0)!=(i|0)){continue}break}b=f|1;v[h+(b<<2)>>2]=b;v[c>>2]=0;b=I9(m,v[a+144>>2],(v[a+188>>2]<<3)+8|0);c=I9(n,v[a+148>>2],(v[a+188>>2]<<3)+8|0);i=I9(o,v[a+152>>2],(v[a+188>>2]<<3)+8|0);h=I9(p,v[a+156>>2],(v[a+188>>2]<<3)+8|0);f=I9(q,v[a+160>>2],(v[a+188>>2]<<3)+8|0);j=I9(j,v[a+164>>2],(v[a+188>>2]<<3)+8|0);e=v[a+144>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=v[a+148>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=v[a+152>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=v[a+156>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=v[a+160>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=v[a+164>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+196>>2]=k;v[a+164>>2]=j;v[a+160>>2]=f;v[a+156>>2]=h;v[a+152>>2]=i;v[a+148>>2]=c;v[a+144>>2]=b;b=v[a+172>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+176>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}if(g){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,g,24422,9522,619)|0}else{b=0}v[a+172>>2]=b;b=k<<3;if(b){c=v[37696]+12|0;b=Ba[v[v[c>>2]+8>>2]](c,b,24422,9522,620)|0}else{b=0}v[a+176>>2]=b}b=0;J9(v[a+168>>2],0,v[a+128>>2]);if(v[a+108>>2]){while(1){t[v[a+168>>2]+v[v[a+104>>2]+(b<<2)>>2]|0]=1;b=b+1|0;if(b>>>0>2]){continue}break}}v[a+188>>2]=v[a+188>>2]+v[a+92>>2]}function wn(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=xa-16|0;xa=a;t[a+8|0]=w[f|0];l=v[37389];p=b;n=e;e=0;b=0;f=xa-32|0;xa=f;v[f+16>>2]=0;v[f+20>>2]=4;v[f+12>>2]=f;t[f+8|0]=1;u[f+24>>1]=0;if((v[f+20>>2]&2147483647)>>>0>>0){a:{if(!d){break a}g=d<<1;if(!(w[f+8|0]|g>>>0>8)){t[f+8|0]=1;b=f;break a}if(!g){break a}b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?27439:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g,h,16608,553)|0}g=v[f+12>>2];h=v[f+16>>2];if((h|0)>0){m=(h<<1)+b|0;h=g;i=b;while(1){u[i>>1]=x[h>>1];h=h+2|0;i=i+2|0;if(m>>>0>i>>>0){continue}break}}b:{if(v[f+20>>2]<0){break b}if((f|0)==(g|0)){t[f+8|0]=0;break b}if(!g){break b}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,g)}v[f+20>>2]=d;v[f+12>>2]=b}b=v[f+16>>2];if((b|0)<(d|0)){g=v[f+12>>2];h=g+(d<<1)|0;b=g+(b<<1)|0;while(1){u[b>>1]=x[f+24>>1];b=b+2|0;if(h>>>0>b>>>0){continue}break}}v[f+16>>2]=d;c:{if((d|0)==1){u[v[f+12>>2]>>1]=x[v[c>>2]+52>>1];break c}if(!d){break c}b=v[f+12>>2];if(d-1>>>0>=3){g=d&65532;while(1){u[b+(e<<1)>>1]=x[v[(e<<2)+c>>2]+52>>1];h=e|1;u[b+(h<<1)>>1]=x[v[(h<<2)+c>>2]+52>>1];h=e|2;u[b+(h<<1)>>1]=x[v[(h<<2)+c>>2]+52>>1];h=e|3;u[b+(h<<1)>>1]=x[v[(h<<2)+c>>2]+52>>1];e=e+4|0;j=j+4|0;if((g|0)!=(j|0)){continue}break}}g=d&3;if(!g){break c}while(1){u[b+(e<<1)>>1]=x[v[(e<<2)+c>>2]+52>>1];e=e+1|0;k=k+1|0;if((g|0)!=(k|0)){continue}break}}q=v[f+12>>2];e=v[l+1560>>2];if(!e){h=xa-16|0;xa=h;i=l+1272|0;c=v[i+284>>2];if(c){b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?42245:63804;g=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,e,18373,180)|0}else{g=0}v[h+12>>2]=g;b=v[i+268>>2];d:{if(b>>>0>=(v[i+272>>2]&2147483647)>>>0){c=0;e=i+4|0;b=v[e+268>>2];m=b&2147483647?b<<1:1;e:{if(!m){break e}j=m<<2;if(!(w[e+256|0]|j>>>0>256)){t[e+256|0]=1;c=e;break e}if(!j){break e}b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?42245:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,j,c,16608,553)|0}k=v[e+264>>2];o=(k<<2)+c|0;if((k|0)>0){j=v[e+260>>2];b=c;while(1){v[b>>2]=v[j>>2];j=j+4|0;b=b+4|0;if(o>>>0>b>>>0){continue}break}}v[o>>2]=v[h+12>>2];f:{if(v[e+268>>2]<0){break f}b=v[e+260>>2];if((b|0)==(e|0)){t[e+256|0]=0;break f}if(!b){break f}j=v[37696];Ba[v[v[j+12>>2]+12>>2]](j+12|0,b);k=v[e+264>>2]}v[e+268>>2]=m;v[e+260>>2]=c;v[e+264>>2]=k+1;break d}v[v[i+264>>2]+(b<<2)>>2]=g;v[i+268>>2]=b+1}c=(g+B(v[i+276>>2],208)|0)-208|0;if(g>>>0<=c>>>0){e=v[i+288>>2];while(1){v[c>>2]=e;e=c;c=e-208|0;if(g>>>0<=c>>>0){continue}break}v[i+288>>2]=e}xa=h+16|0;e=v[l+1560>>2]}v[l+1560>>2]=v[e>>2];b=l+1552|0;v[b>>2]=v[b>>2]+1;t[f+24|0]=w[a+8|0];c=xa-16|0;xa=c;v[e+16>>2]=1;v[e+4>>2]=196615;v[e+8>>2]=0;v[e+20>>2]=0;v[e+12>>2]=126968;v[e>>2]=126776;b=w[f+24|0];v[e+40>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;t[c+8|0]=b;b=e+48|0;v[b>>2]=0;v[b+4>>2]=0;v[b+136>>2]=0;v[b+128>>2]=0;v[b+132>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;g=b+68|0;v[g>>2]=-1;t[b+65|0]=1;h=v[37415];lV(g,p);v[b+56>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=0;v[b+44>>2]=1065353216;v[b+32>>2]=0;v[b+36>>2]=0;z[b+60>>2]=z[h>>2]*C(.019999999552965164);t[b- -64|0]=w[c+8|0];FR(b,q,d);b=v[e+36>>2];v[e+36>>2]=b&-251658241|(n?16777216:33554432);v[e+196>>2]=n?-2147483648:0;v[e+192>>2]=0;v[e+8>>2]=0;g:{h:{i:{j:{k:{g=e+116|0;switch(v[g>>2]-4|0){case 1:break i;case 2:break j;case 0:break k;default:break g}}b=v[(b&1?v[e+40>>2]- -64|0:g)+32>>2];if(!b){break g}b=b+8|0;break h}b=v[(b&1?v[e+40>>2]- -64|0:g)+4>>2];if(!b){break g}b=b+8|0;break h}b=v[(b&1?v[e+40>>2]- -64|0:g)+36>>2];if(!b){break g}b=b+8|0}v[b+4>>2]=v[b+4>>2]+1}xa=c+16|0;b=e;if(d){g=b+48|0;e=0;while(1){h=v[37393];l:{if(w[b+36|0]&2){c=v[b+40>>2];c=x[c+124>>1]==1?c+120|0:v[v[b+32>>2]+4856>>2]+(v[c+120>>2]<<1)|0;break l}c=GR(g)}c=v[v[h+40>>2]+(x[c+(e<<1)>>1]<<2)>>2];v[c+16>>2]=v[c+16>>2]+1;e=e+1|0;if((e|0)!=(d|0)){continue}break}}v[f+24>>2]=b;c=rh(l+640|0,f+24|0,f+31|0);if(!w[f+31|0]){v[c>>2]=v[f+24>>2]}c=v[f+20>>2];m:{if((c|0)<0|!(c&2147483647)){break m}c=v[f+12>>2];if((c|0)==(f|0)|!c){break m}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}xa=f+32|0;xa=a+16|0;return b|0}function NQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=v[a+100>>2];t[g+1148|0]=0;b=v[g+976>>2];a=v[b+1024>>2];Ba[v[v[a>>2]+24>>2]](a);a=v[b+1024>>2];Ba[v[v[a>>2]+76>>2]](a);a=v[b+304>>2];f=v[a>>2];v[a>>2]=0;a:{if(!f){break a}i=b+984|0;j=b+972|0;a=f;while(1){h=v[a>>2];v[b+996>>2]=v[b+996>>2]+v[a+7220>>2];v[b+1e3>>2]=v[b+1e3>>2]+v[a+7216>>2];v[b+1008>>2]=v[b+1008>>2]+v[a+7224>>2];v[b+1012>>2]=v[b+1012>>2]+v[a+7228>>2];c=v[a+304>>2];e=v[a+108>>2];v[b+1164>>2]=e+v[b+1164>>2];v[b+1556>>2]=c+v[b+1556>>2];c=e+v[b+1752>>2]|0;v[b+1752>>2]=c;e=v[a+308>>2];d=v[a+112>>2];v[b+1168>>2]=d+v[b+1168>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1560>>2]=e+v[b+1560>>2];e=v[a+312>>2];d=v[a+116>>2];v[b+1172>>2]=d+v[b+1172>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1564>>2]=e+v[b+1564>>2];e=v[a+316>>2];d=v[a+120>>2];v[b+1176>>2]=d+v[b+1176>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1568>>2]=e+v[b+1568>>2];e=v[a+320>>2];d=v[a+124>>2];v[b+1180>>2]=d+v[b+1180>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1572>>2]=e+v[b+1572>>2];e=v[a+324>>2];d=v[a+128>>2];v[b+1184>>2]=d+v[b+1184>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1576>>2]=e+v[b+1576>>2];e=v[a+328>>2];d=v[a+132>>2];v[b+1188>>2]=d+v[b+1188>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1580>>2]=e+v[b+1580>>2];e=v[a+336>>2];d=v[a+140>>2];v[b+1196>>2]=d+v[b+1196>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1588>>2]=e+v[b+1588>>2];e=v[a+340>>2];d=v[a+144>>2];v[b+1200>>2]=d+v[b+1200>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1592>>2]=e+v[b+1592>>2];e=v[a+344>>2];d=v[a+148>>2];v[b+1204>>2]=d+v[b+1204>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1596>>2]=e+v[b+1596>>2];e=v[a+348>>2];d=v[a+152>>2];v[b+1208>>2]=d+v[b+1208>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1600>>2]=e+v[b+1600>>2];e=v[a+352>>2];d=v[a+156>>2];v[b+1212>>2]=d+v[b+1212>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1604>>2]=e+v[b+1604>>2];e=v[a+356>>2];d=v[a+160>>2];v[b+1216>>2]=d+v[b+1216>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1608>>2]=e+v[b+1608>>2];e=v[a+368>>2];d=v[a+172>>2];v[b+1228>>2]=d+v[b+1228>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1620>>2]=e+v[b+1620>>2];e=v[a+372>>2];d=v[a+176>>2];v[b+1232>>2]=d+v[b+1232>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1624>>2]=e+v[b+1624>>2];e=v[a+376>>2];d=v[a+180>>2];v[b+1236>>2]=d+v[b+1236>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1628>>2]=e+v[b+1628>>2];e=v[a+380>>2];d=v[a+184>>2];v[b+1240>>2]=d+v[b+1240>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1632>>2]=e+v[b+1632>>2];e=v[a+384>>2];d=v[a+188>>2];v[b+1244>>2]=d+v[b+1244>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1636>>2]=e+v[b+1636>>2];e=v[a+400>>2];d=v[a+204>>2];v[b+1260>>2]=d+v[b+1260>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1652>>2]=e+v[b+1652>>2];e=v[a+404>>2];d=v[a+208>>2];v[b+1264>>2]=d+v[b+1264>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1656>>2]=e+v[b+1656>>2];e=v[a+408>>2];d=v[a+212>>2];v[b+1268>>2]=d+v[b+1268>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1660>>2]=e+v[b+1660>>2];e=v[a+412>>2];d=v[a+216>>2];v[b+1272>>2]=d+v[b+1272>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1664>>2]=e+v[b+1664>>2];e=v[a+432>>2];d=v[a+236>>2];v[b+1292>>2]=d+v[b+1292>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1684>>2]=e+v[b+1684>>2];e=v[a+436>>2];d=v[a+240>>2];v[b+1296>>2]=d+v[b+1296>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1688>>2]=e+v[b+1688>>2];e=v[a+440>>2];d=v[a+244>>2];v[b+1300>>2]=d+v[b+1300>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1692>>2]=e+v[b+1692>>2];e=v[a+464>>2];d=v[a+268>>2];v[b+1324>>2]=d+v[b+1324>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1716>>2]=e+v[b+1716>>2];e=v[a+468>>2];d=v[a+272>>2];v[b+1328>>2]=d+v[b+1328>>2];c=c+d|0;v[b+1752>>2]=c;v[b+1720>>2]=e+v[b+1720>>2];e=v[a+496>>2];d=v[a+300>>2];v[b+1356>>2]=d+v[b+1356>>2];v[b+1752>>2]=c+d;v[b+1748>>2]=e+v[b+1748>>2];v[b+1756>>2]=v[b+1756>>2]+v[a+7144>>2];v[b+1760>>2]=v[b+1760>>2]+v[a+7148>>2];v[b+1780>>2]=v[b+1780>>2]+v[a+7140>>2];v[a+7148>>2]=0;v[a+7140>>2]=0;v[a+7144>>2]=0;J9(a+108|0,0,392);yK(j,v[a+7192>>2],v[a+7196>>2]&2147483647);yK(i,v[a+7204>>2],v[a+7208>>2]&2147483647);v[b+1828>>2]=v[b+1828>>2]+v[a+7168>>2];c=v[b+1824>>2];e=v[a+7164>>2];v[b+1824>>2]=c>>>0>e>>>0?c:e;v[a+7164>>2]=0;v[a+7168>>2]=0;a=h;if(a){continue}break}if(!f){break a}while(1){a=v[f>>2];h=v[b+304>>2];v[f>>2]=v[h>>2];v[h>>2]=f;f=a;if(a){continue}break}}if(w[g+2282|0]){Hy(v[g+976>>2]+24|0)}}function wv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0);h=xa-160|0;xa=h;f=v[f>>2];u=z[d+20>>2];A=z[d+24>>2];p=z[d>>2];q=z[d+4>>2];x=z[d+8>>2];o=z[d+12>>2];D=z[d+16>>2];v[h+156>>2]=0;z[h+152>>2]=A;z[h+148>>2]=u;z[h+144>>2]=D;z[h+140>>2]=o;z[h+136>>2]=x;z[h+132>>2]=q;z[h+128>>2]=p;E=z[c+20>>2];y=z[c+24>>2];G=z[c+16>>2];j=z[c+4>>2];i=z[c>>2];k=z[c+8>>2];m=z[c+12>>2];v[h+124>>2]=0;l=C(i+i);n=C(m+m);r=C(C(C(i*l)+C(m*n))+C(-1));s=C(C(l*k)-C(j*n));l=C(C(l*j)+C(k*n));n=C(C(1)/C(K(C(C(s*s)+C(C(r*r)+C(l*l))))));r=C(r*n);z[h+112>>2]=r;l=C(l*n);z[h+116>>2]=l;n=C(s*n);z[h+120>>2]=n;v[h+108>>2]=0;z[h+104>>2]=-n;z[h+100>>2]=-l;z[h+96>>2]=-r;N=z[e>>2];z[h+80>>2]=N;F=z[b+4>>2];z[h+64>>2]=F;H=z[b+8>>2];z[h+48>>2]=F*C(.0010000000474974513);r=C(C(C(q*k)-C(j*x))+C(C(p*m)-C(o*i)));s=C(r+r);O=C(r*s);n=C(C(C(p*j)-C(i*q))+C(C(x*m)-C(o*k)));I=C(n*s);J=C(-i);l=C(C(o*m)-C(C(C(p*J)-C(q*j))-C(k*x)));D=C(D-G);E=C(u-E);A=C(A-y);y=C(C(C(J*D)-C(E*j))-C(k*A));G=C(C(m*m)+C(-.5));u=C(C(C(m*C(C(j*D)-C(i*E)))+C(G*A))-C(k*y));u=C(u+u);p=C(C(C(x*i)-C(k*p))+C(C(q*m)-C(o*j)));x=C(p*s);q=C(C(C(G*E)+C(m*C(C(i*A)-C(k*D))))-C(j*y));q=C(q+q);m=C(C(C(G*D)+C(m*C(C(k*E)-C(j*A))))-C(i*y));m=C(m+m);b=w[f+64|0];if(b){i=C(C(1)-O);j=C(p+p);k=C(p*j);D=C(i-k);y=i;i=C(n+n);o=C(n*i);E=C(y-o);A=C(C(C(1)-k)-o);k=C(n*j);o=C(l*s);s=C(k-o);j=C(l*j);y=C(I+j);G=C(k+o);i=C(l*i);J=C(x-i);T=C(I-j);U=C(x+i);j=C(F*C(.05000000074505806));V=C(j*j);a=b;while(1){d=v[f+76>>2];a=a-1|0;c=d+B(a,48)|0;i=z[c+24>>2];L=z[c+40>>2];j=z[c+8>>2];k=z[c>>2];o=z[c+4>>2];M=C(u+C(C(D*j)+C(C(T*k)+C(G*o))));P=C(m+C(C(y*j)+C(C(A*k)+C(J*o))));Q=z[c+16>>2];R=z[c+32>>2];k=C(q+C(C(s*j)+C(C(U*k)+C(E*o))));o=z[c+20>>2];S=z[c+36>>2];j=C(C(L*C(M-i))+C(C(C(P-Q)*R)+C(C(k-o)*S)));i=C(i-C(M-C(L*j)));L=C(i*i);i=C(Q-C(P-C(R*j)));M=C(i*i);i=C(o-C(k-C(S*j)));a:{if(C(L+C(M+C(i*i)))>V){e=w[f+64|0]-1|0;t[f+64|0]=e;d=d+B(e&255,48)|0;e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+44>>2];v[c+40>>2]=v[d+40>>2];v[c+44>>2]=e;e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;break a}z[c+44>>2]=j}if(a){continue}break}a=w[f+64|0]}else{a=0}b:{c:{if((a|0)!=(b|0)){break c}j=C(m-z[f+16>>2]);j=j>C(0)?j:C(-j);i=C(q-z[f+20>>2]);i=i>C(0)?i:C(-i);i=j>=i?j:i;y=j;j=C(u-z[f+24>>2]);j=(j>C(0)?j:C(-j))>=C(0)?y:C(0);if(C(z[h+64>>2]*C(.019999999552965164))<(j<=i?i:j)){break c}if(!(C(C(l*z[f+12>>2])+C(C(n*z[f+8>>2])+C(C(r*z[f>>2])+C(p*z[f+4>>2]))))>2]=0;z[f+24>>2]=u;z[f+20>>2]=q;z[f+16>>2]=m;z[f+12>>2]=l;z[f+8>>2]=n;z[f+4>>2]=p;z[f>>2]=r;t[f+64|0]=0;H=C(N+F);i=C(m+i);if(H>i){v[h+44>>2]=0;E=C(u+I);k=C(E-u);x=C(i-m);A=C(q+D);o=C(A-q);s=C(C(n*k)+C(C(r*x)+C(p*o)));F=C(C(l*l)+C(-.5));y=C(C(C(F*k)-C(l*C(C(r*o)-C(x*p))))+C(n*s));z[h+40>>2]=y+y;y=C(C(p*s)+C(C(F*o)-C(l*C(C(n*x)-C(k*r)))));z[h+36>>2]=y+y;k=C(C(r*s)+C(C(F*x)-C(l*C(C(p*k)-C(o*n)))));z[h+32>>2]=k+k;v[h+28>>2]=0;k=C(i*C(0));z[h+24>>2]=E-k;z[h+20>>2]=A-k;z[h+16>>2]=i-i;z[h+12>>2]=i;v[h+8>>2]=0;v[h>>2]=1065353216;v[h+4>>2]=0;w2(f,h+32|0,h+16|0,h,h+48|0)}if(!(j>2]=0;x=C(u-I);i=C(x-u);m=C(j-m);o=C(q-D);k=C(o-q);u=C(C(n*i)+C(C(r*m)+C(p*k)));q=C(C(l*l)+C(-.5));s=C(C(C(q*i)-C(l*C(C(r*k)-C(m*p))))+C(n*u));z[h+40>>2]=s+s;s=C(C(p*u)+C(C(q*k)-C(l*C(C(n*m)-C(i*r)))));z[h+36>>2]=s+s;l=C(C(r*u)+C(C(q*m)-C(l*C(C(p*i)-C(k*n)))));z[h+32>>2]=l+l;v[h+28>>2]=0;l=C(j*C(0));z[h+24>>2]=x-l;z[h+20>>2]=o-l;z[h+16>>2]=j-j;z[h+12>>2]=j;v[h+8>>2]=0;v[h>>2]=1065353216;v[h+4>>2]=0;w2(f,h+32|0,h+16|0,h,h+48|0)}s2(f,g,h+96|0,h+112|0,h+128|0,h- -64|0,h+80|0);xa=h+160|0;return w[f+64|0]!=0|0}function jq(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=xa-48|0;xa=f;k=Ba[v[v[b>>2]+76>>2]](b)|0;e=Ba[v[v[b>>2]+100>>2]](b)|0;if(v[e+88>>2]){h=v[v[e+84>>2]>>2]}else{h=0}c=h;e=xa-32|0;xa=e;if(C(Ba[v[v[c>>2]+120>>2]](c))==C(0)){b9(v[37696],2,11709,844,64121,0);Ba[v[v[c>>2]+116>>2]](c,C(1))}Ba[v[v[c>>2]+132>>2]](e+16|0,c);if(!(!(z[e+16>>2]==C(0)|z[e+20>>2]==C(0))&z[e+24>>2]!=C(0))){b9(v[37696],2,11709,851,70758,0);v[e+8>>2]=1065353216;v[e>>2]=1065353216;v[e+4>>2]=1065353216;Ba[v[v[c>>2]+128>>2]](c,e)}xa=e+32|0;c=h+48|0;e=1;a:{if(z[h+284>>2]!=C(0)|z[h+288>>2]!=C(0)|(z[h+292>>2]!=C(0)|z[h+296>>2]!=C(0))){break a}if(z[h+300>>2]!=C(0)){break a}e=z[h+304>>2]!=C(0)}i=a+16|0;Au(i,c,0,0,0);ku(h+20|0,a,h,0,0,0);n=Ba[v[v[b>>2]+100>>2]](b)|0;c=n;l=i+5012|0;d=xa-16|0;xa=d;v[c>>2]=i;g=v[c+4>>2];b:{if(!w[i+4785|0]){v[c+4>>2]=g&268435455|-2147483648;j=i+16|0;l=c+12|0;if(v[c+88>>2]){g=v[v[c+84>>2]>>2];g=g?g+48|0:0}else{g=0}oP(j,l,g+16|0);break b}j=g&1073741823;if(g>>>0>=3221225472){v[c+4>>2]=j|-2147483648;if(g&268435456){break b}v[d+4>>2]=c;Pg(l,d+4|0);break b}v[c+4>>2]=j|1073741824;v[d+8>>2]=c;g=rh(l,d+8|0,d+15|0);if(w[d+15|0]){break b}v[g>>2]=v[d+8>>2]}xa=d+16|0;t[c+60|0]=z[c+56>>2]==C(0);l=v[n+12>>2];if(l){r=h,s=tG(l,v[h- -64>>2]),v[r+364>>2]=s}v[h+368>>2]=0;c=Ba[v[v[h>>2]+252>>2]](h)|0;if(c){Lu(i,Ba[v[v[c>>2]+48>>2]](c)|0)}if(v[h+16>>2]){qh(h+12|0)}o=k<<2;t[f+12|0]=o>>>0>1024;c:{if(o>>>0>=1025){g=u9(o,11709,888);break c}g=f-(o+15&-16)|0;xa=g}v[f+8>>2]=g;v[g>>2]=h;p=k-1|0;if(p){k=1;while(1){j=v[v[f+8>>2]+(m<<2)>>2];c=v[j+356>>2];d=v[j+352>>2];if(Ba[v[v[j>>2]+260>>2]](j)|0){q=c?d:0;c=e;g=0;while(1){d=v[q+(g<<2)>>2];if(C(Ba[v[v[d>>2]+120>>2]](d))==C(0)){b9(v[37696],2,11709,844,64121,0);Ba[v[v[d>>2]+116>>2]](d,C(1))}Ba[v[v[d>>2]+132>>2]](f+32|0,d);if(!(!(z[f+32>>2]==C(0)|z[f+36>>2]==C(0))&z[f+40>>2]!=C(0))){b9(v[37696],2,11709,851,70758,0);v[f+24>>2]=1065353216;v[f+16>>2]=1065353216;v[f+20>>2]=1065353216;Ba[v[v[d>>2]+128>>2]](d,f+16|0)}e=1;if(!(c&1)){e=0;d:{if(z[d+284>>2]!=C(0)|z[d+288>>2]!=C(0)|(z[d+292>>2]!=C(0)|z[d+296>>2]!=C(0))){break d}if(z[d+300>>2]!=C(0)){break d}e=z[d+304>>2]==C(0)}e=e^1}Au(i,d+48|0,0,0,0);ku(d+20|0,a,d,0,0,0);c=Ba[v[v[d>>2]+252>>2]](d)|0;if(c){Lu(i,Ba[v[v[c>>2]+48>>2]](c)|0)}if(v[d+16>>2]){qh(d+12|0)}c=Ba[v[v[d>>2]+248>>2]](d)|0;c=v[(Ba[v[v[c>>2]+100>>2]](c)|0)+12>>2];if(c){r=d,s=tG(c,v[d- -64>>2]),v[r+364>>2]=s}v[v[f+8>>2]+(k<<2)>>2]=d;k=k+1|0;c=e;g=g+1|0;if(Ba[v[v[j>>2]+260>>2]](j)>>>0>g>>>0){continue}break}}m=m+1|0;if((p|0)!=(m|0)){continue}break}}if(!(!(e&1)|z[n+56>>2]!=C(0))){dj(n,1,0)}v[f+32>>2]=b;e=rh(a+5944|0,f+32|0,f+16|0);if(!w[f+16|0]){v[e>>2]=v[f+32>>2]}e:{if(!l){break e}xG(l);v[v[f+8>>2]>>2]=h;if(!p){break e}m=0;e=1;while(1){i=v[v[f+8>>2]+(m<<2)>>2];c=v[i+356>>2];d=v[i+352>>2];if(Ba[v[v[i>>2]+260>>2]](i)|0){g=c?d:0;k=0;while(1){d=v[g+(k<<2)>>2];c=Ba[v[v[d>>2]+264>>2]](d)|0;j=v[l>>2];r=d,s=Ba[v[v[j>>2]+32>>2]](j,c)|0,v[r+368>>2]=s;f:{if(x[b+4>>1]!=12){break f}g:{h:{c=Ba[v[v[d>>2]+252>>2]](d)|0;switch((Ba[v[v[c>>2]+60>>2]](c)|0)-3|0){case 0:break f;case 1:break h;default:break g}}b9(v[37696],2,11709,952,1723,0);Ba[v[v[c>>2]+56>>2]](c,3);v[d+368>>2]=0}if((Ba[v[v[c>>2]+68>>2]](c,3)|Ba[v[v[c>>2]+68>>2]](c,4)|Ba[v[v[c>>2]+68>>2]](c,5)|Ba[v[v[c>>2]+68>>2]](c,1)|Ba[v[v[c>>2]+68>>2]](c,2)|Ba[v[v[c>>2]+68>>2]](c,0))&255){break f}b9(v[37696],2,11709,973,1623,0);Ba[v[v[c>>2]+56>>2]](c,3);v[d+368>>2]=0}v[v[f+8>>2]+(e<<2)>>2]=d;e=e+1|0;k=k+1|0;if(Ba[v[v[i>>2]+260>>2]](i)>>>0>k>>>0){continue}break}}m=m+1|0;if((p|0)!=(m|0)){continue}break}}i:{if(x[b+4>>1]!=12){break i}if(t[n+48|0]&1){e=v[h- -64>>2];if(e){t[v[e+100>>2]+159|0]=1}}c=a+32|0;a=xa-16|0;xa=a;e=v[n+12>>2];if(e){h=v[e>>2];c=v[c+1012>>2];v[a+8>>2]=v[e+48>>2];Ba[v[v[c>>2]+32>>2]](c,h,a+8|0)}xa=a+16|0;if(!v[b+124>>2]){break i}a=0;while(1){e=v[v[b+120>>2]+(a<<2)>>2];uG(l,v[(Ba[v[v[e>>2]+104>>2]](e)|0)+88>>2]);a=a+1|0;if(a>>>0>2]){continue}break}}if(o>>>0>=1025){v9(v[f+8>>2])}xa=f+48|0}function G2(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0);p=xa-16|0;xa=p;l=z[a+20>>2];i=z[a+32>>2];k=z[a+8>>2];h=z[a>>2];j=C(z[a+12>>2]-h);o=z[a+4>>2];q=C(z[a+28>>2]-o);h=C(z[a+24>>2]-h);o=C(z[a+16>>2]-o);r=C(C(j*q)-C(h*o));z[p+8>>2]=r;l=C(l-k);k=C(i-k);i=C(C(l*h)-C(k*j));z[p+4>>2]=i;k=C(C(o*k)-C(q*l));z[p>>2]=k;xa=p+16|0;a:{if(g){g=0;if(C(C(r*z[c+8>>2])+C(C(k*z[c>>2])+C(i*z[c+4>>2])))>=C(0)){break a}}g=a;k=z[p+8>>2];I=z[b+8>>2];l=z[p>>2];J=z[b>>2];i=z[p+4>>2];K=z[b+4>>2];v=C(C(C(D(k))*I)+C(C(C(D(l))*J)+C(C(D(i))*K)));o=z[a+8>>2];q=z[a>>2];r=z[a+4>>2];h=C(C(o*k)+C(C(q*l)+C(r*i)));w=z[a+20>>2];x=z[a+12>>2];y=z[a+16>>2];j=C(C(w*k)+C(C(x*l)+C(i*y)));A=h>j?h:j;E=z[a+32>>2];F=z[a+24>>2];G=z[a+28>>2];s=C(C(E*k)+C(C(F*l)+C(i*G)));m=C(C(-v)-(s=C(0);b:{c:{s=z[c+8>>2];v=z[c>>2];A=z[c+4>>2];k=C(C(s*k)+C(C(v*l)+C(i*A)));d:{if(!(C(D(k))C(34028234663852886e22)){break c}k=k>l?k:l;if(kC(-34028234663852886e22)?i:C(-34028234663852886e22);break d}if(!a){break c}l=C(34028234663852886e22);k=C(-34028234663852886e22)}i=q>x?q:x;i=C(C(-J)-(i>F?i:F));h=q=C(0);e:{if(!(C(D(v))>2]);i=C(i*j);h=C(h*j);j=h>i?i:h;if(j>l){break c}i=hk?j:k;l=iy?r:y;i=C(C(-K)-(i>G?i:G));h=r=C(0);f:{if(!(C(D(A))>2]);i=C(i*j);h=C(h*j);j=h>i?i:h;if(j>l){break c}i=hk?j:k;l=iw?o:w;i=C(C(-I)-(i>E?i:E));h=o=C(0);g:{if(!(C(D(s))>2]);i=C(i*j);h=C(h*j);j=h>i?i:h;if(j>l){break c}i=hk?j:k;l=i>2];b=g+B(b,12)|0;t=z[b>>2];i=C(z[c+4>>2]-z[b+4>>2]);N=C(i*i);h=C(z[c+8>>2]-z[b+8>>2]);L=C(C(h*h)+C(0));h:{if(!(C(N+L)>=C(9.999999974752427e-7))){break h}H=C(C(C(D(i))*I)+C(C(J*C(0))+C(K*C(D(h)))));j=C(C(o*i)+C(C(q*C(0))-C(r*h)));m=C(C(w*i)+C(C(x*C(0))-C(y*h)));M=j>m?j:m;n=C(C(E*i)+C(C(F*C(0))-C(G*h)));M=C(C(-H)-(n=C(0);d=b&d;j=C(C(s*i)+C(C(v*C(0))-C(A*h)));if(!(C(D(j))l){break c}j=j>m?j:m;if(j=C(9.999999974752427e-7))){break i}L=C(C(C(D(j))*I)+C(C(C(D(h))*J)+P));m=C(C(C(q*h)+S)-C(o*j));n=C(C(C(x*h)+R)-C(w*j));H=m>n?m:n;u=C(C(C(F*h)+Q)-C(E*j));H=C(C(-L)-(u=C(0);d=b&d;h=C(C(C(v*h)+O)-C(s*j));if(!(C(D(h))l){break c}h=h>m?h:m;if(h=C(9.999999974752427e-7))){break j}u=C(C(I*C(0))+C(C(C(D(i))*J)+C(K*C(D(j)))));h=C(C(o*C(0))+C(C(r*j)-C(q*i)));m=C(C(w*C(0))+C(C(y*j)-C(x*i)));t=h>m?h:m;n=C(C(E*C(0))+C(C(G*j)-C(F*i)));t=C(C(-u)-(n=C(0);d=b&d;i=C(C(s*C(0))+C(C(A*j)-C(v*i)));if(!(C(D(i))i?i:h;if(j>l){break c}i=hk?j:k;l=i>2]=k;g=1;break b}g=0}}return g}function HV(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0,x=0,y=C(0),A=C(0),D=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=0,M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0);i=xa-288|0;xa=i;v[i+76>>2]=0;n=z[c+8>>2];q=z[c>>2];s=z[c+4>>2];v[i+60>>2]=0;c=C(C(n*n)+C(C(q*q)+C(s*s)))>C(0);k=c?n:C(0);z[i+56>>2]=k;l=c?s:C(0);z[i+52>>2]=l;p=c?q:C(1);z[i+48>>2]=p;c=v[a+4>>2];u=w[c+32|0];t=v[b+4>>2];x=w[t+32|0];y=C((u?z[c+16>>2]:C(0))+(x?z[t+16>>2]:C(0)));O=C(z[d>>2]+y);n=C(C(1)/C(K(C(C(k*k)+C(C(p*p)+C(l*l))))));m=C(k*n);r=C(l*n);o=C(p*n);n=z[t+20>>2];q=z[c+20>>2];P=C(G(C((n>2];v[i+24>>2]=v[i+56>>2];v[i+28>>2]=c;c=v[i+52>>2];v[i+16>>2]=v[i+48>>2];v[i+20>>2]=c;c=v[a+4>>2];q=z[c+56>>2];j=z[c+52>>2];s=z[c+72>>2];M=z[c+68>>2];D=z[c+48>>2];E=z[c+64>>2];c=v[b+4>>2];n=z[c+56>>2];H=z[c+52>>2];I=z[c+72>>2];N=c- -64|0;Q=z[N>>2];R=z[c+68>>2];S=z[c+88>>2];T=z[c+80>>2];U=z[c+84>>2];J=z[c+48>>2];v[i+284>>2]=0;z[i+280>>2]=C(S*k)+C(C(T*p)+C(l*U));z[i+276>>2]=C(I*k)+C(C(Q*p)+C(l*R));z[i+272>>2]=C(n*k)+C(C(J*p)+C(l*H));t=IV(c,i+272|0);n=m;m=C(-p);d=C(C(C(D*m)-C(j*l))-C(q*k))>C(C(C(E*m)-C(M*l))-C(s*k));H=d?q:s;t=v[c+152>>2]+B(t,12)|0;m=z[t+8>>2];k=z[t>>2];l=z[t+4>>2];I=C(C(z[c+88>>2]*m)+C(C(z[c+56>>2]*k)+C(l*z[c+72>>2])));p=C(H-I);q=o;D=d?D:E;E=C(C(z[c+80>>2]*m)+C(C(z[c+48>>2]*k)+C(l*z[N>>2])));o=C(D-E);s=r;r=d?j:M;k=C(C(z[c+84>>2]*m)+C(C(z[c+52>>2]*k)+C(l*z[c+68>>2])));j=C(r-k);m=C(C(n*p)+C(C(q*o)+C(s*j)));if(m>O){break a}if(!(!(m>y)|!(m>C(A*C(.9997749924659729))))){JV(i+208|0,i+144|0,i+80|0,i+48|0,i+272|0,i,v[i+76>>2]);j=z[v[a+4>>2]+16>>2];m=z[i+272>>2];r=z[i+276>>2];o=z[i+280>>2];v[e+12>>2]=0;z[e+8>>2]=o-(u?C(n*j):C(0));z[e+4>>2]=r-(u?C(s*j):C(0));z[e>>2]=m-(u?C(q*j):C(0));j=z[v[b+4>>2]+16>>2];m=z[i>>2];r=z[i+4>>2];o=z[i+8>>2];v[f+12>>2]=0;z[f+8>>2]=o+(x?C(n*j):C(-0));z[f+4>>2]=r+(x?C(s*j):C(-0));z[f>>2]=m+(x?C(q*j):C(-0));z[h>>2]=G(C(A-y),C(0));v[g+12>>2]=0;z[g+8>>2]=-n;z[g+4>>2]=-s;z[g>>2]=-q;L=1;break a}d=v[i+76>>2];t=d<<4;c=t+(i+144|0)|0;v[c+12>>2]=0;z[c+8>>2]=H;z[c+4>>2]=r;z[c>>2]=D;c=t+(i+80|0)|0;v[c+12>>2]=0;z[c+8>>2]=I;z[c+4>>2]=k;z[c>>2]=E;c=t+(i+208|0)|0;v[c+12>>2]=0;z[c+8>>2]=p;z[c+4>>2]=j;z[c>>2]=o;v[i+76>>2]=d+1;b:{c:{switch(d-1|0){case 0:o=z[i+216>>2];j=C(z[i+232>>2]-o);k=z[i+208>>2];m=C(z[i+224>>2]-k);l=z[i+212>>2];r=C(z[i+228>>2]-l);p=C(C(j*j)+C(C(m*m)+C(r*r)));if(p<=C(1.1920928955078125e-7)){v[i+76>>2]=1;c=v[i+212>>2];v[i+272>>2]=v[i+208>>2];v[i+276>>2]=c;c=v[i+220>>2];v[i+280>>2]=v[i+216>>2];v[i+284>>2]=c;break b}v[i+284>>2]=0;J=j;j=C(F(C(C(C(C(C(-k)*m)-C(r*l))-C(o*j))/p),C(1)));j=j>C(0)?j:C(0);z[i+280>>2]=o+C(J*j);z[i+276>>2]=l+C(r*j);z[i+272>>2]=k+C(m*j);break b;case 1:KV(i+272|0,i+208|0,i+144|0,i+80|0,i+76|0);break b;case 2:O_(i+272|0,i+208|0,i+144|0,i+80|0,i+76|0);break b;default:break c}}v[i+284>>2]=0;z[i+280>>2]=p;z[i+276>>2]=j;z[i+272>>2]=o}c=v[i+276>>2];v[i+48>>2]=v[i+272>>2];v[i+52>>2]=c;c=v[i+284>>2];v[i+56>>2]=v[i+280>>2];v[i+60>>2]=c;k=z[i+56>>2];p=z[i+48>>2];l=z[i+52>>2];j=C(K(C(C(k*k)+C(C(p*p)+C(l*l)))));if(P>2]=0;a=v[i+276>>2];v[h+4>>2]=v[i+272>>2];v[h+8>>2]=a;v[h+12>>2]=v[i+280>>2];L=2;break a}m=z[v[b+4>>2]+16>>2];r=z[v[a+4>>2]+16>>2];JV(i+208|0,i+144|0,i+80|0,i+16|0,i+272|0,i,v[i+76>>2]);j=z[v[a+4>>2]+16>>2];o=z[i+272>>2];k=z[i+276>>2];l=z[i+280>>2];v[e+12>>2]=0;z[e+8>>2]=l-(u?C(n*j):C(0));z[e+4>>2]=k-(u?C(s*j):C(0));z[e>>2]=o-(u?C(q*j):C(0));j=z[v[b+4>>2]+16>>2];o=z[i>>2];k=z[i+4>>2];l=z[i+8>>2];v[f+12>>2]=0;z[f+8>>2]=l+(x?C(n*j):C(-0));z[f+4>>2]=k+(x?C(s*j):C(-0));z[f>>2]=o+(x?C(q*j):C(-0));v[g+12>>2]=0;z[g+8>>2]=-n;z[g+4>>2]=-s;z[g>>2]=-q;n=C(G(C(A-y),C(0)));z[h>>2]=n;a=v[i+40>>2];v[h+4>>2]=v[i+36>>2];v[h+8>>2]=a;v[h+12>>2]=v[i+44>>2];L=n>(y>C(0)?y:C((m>2];L=k+6360|0;v[L>>2]=v[h+12>>2];y=v[h+8>>2];v[k+6352>>2]=v[h+4>>2];v[k+6356>>2]=y;M=z[b+48>>2];N=z[b+52>>2];O=z[b+56>>2];P=z[a+48>>2];Q=z[a+52>>2];R=z[a+56>>2];S=z[f+52>>2];o=z[f+36>>2];p=z[f+20>>2];T=z[f+56>>2];q=z[f+40>>2];r=z[f+24>>2];U=z[a+44>>2];V=z[b+44>>2];s=z[a>>2];W=z[f+48>>2];H=z[f+32>>2];u=z[f>>2];w=z[f+16>>2];I=z[a+4>>2];D=z[f+4>>2];J=z[a+8>>2];l=z[b+8>>2];E=z[f+8>>2];m=z[b>>2];n=z[b+4>>2];v[k+6284>>2]=0;J=C(C(T+C(C(q*l)+C(C(E*m)+C(n*r))))-J);z[k+6280>>2]=J;I=C(C(S+C(C(o*l)+C(C(D*m)+C(n*p))))-I);z[k+6276>>2]=I;H=C(C(W+C(C(H*l)+C(C(u*m)+C(n*w))))-s);z[k+6272>>2]=H;y=k+6272|0;Ba[v[v[c>>2]+8>>2]](k+6256|0,c,y);o=z[e+36>>2];p=z[e+20>>2];n=z[e+40>>2];m=z[e+24>>2];q=z[e+32>>2];r=z[e>>2];s=z[e+16>>2];u=z[e+4>>2];l=z[e+8>>2];v[k+6252>>2]=0;x=l;l=C(-z[k+6272>>2]);A=m;m=z[k+6276>>2];w=n;n=z[k+6280>>2];z[k+6248>>2]=C(C(x*l)-C(A*m))-C(w*n);z[k+6244>>2]=C(C(u*l)-C(p*m))-C(o*n);z[k+6240>>2]=C(C(r*l)-C(s*m))-C(q*n);t=k+6240|0;Ba[v[v[d>>2]+8>>2]](k+6224|0,d,t);o=z[e+52>>2];p=z[e+36>>2];q=z[e+20>>2];l=z[e+56>>2];m=z[e+40>>2];n=z[e+24>>2];r=z[e+48>>2];s=z[e+32>>2];u=z[e>>2];w=z[e+16>>2];D=z[e+4>>2];E=z[e+8>>2];v[k+6220>>2]=0;x=l;l=z[k+6264>>2];F=C(m*l);m=z[k+6256>>2];A=n;n=z[k+6260>>2];z[k+6216>>2]=x+C(F+C(C(E*m)+C(A*n)));z[k+6212>>2]=o+C(C(p*l)+C(C(D*m)+C(n*q)));z[k+6208>>2]=r+C(C(s*l)+C(C(u*m)+C(n*w)));o=z[f+52>>2];p=z[f+36>>2];q=z[f+20>>2];l=z[f+56>>2];m=z[f+40>>2];n=z[f+24>>2];r=z[f+48>>2];s=z[f+32>>2];u=z[f>>2];w=z[f+16>>2];D=z[f+4>>2];E=z[f+8>>2];v[k+6204>>2]=0;x=l;l=z[k+6232>>2];F=C(m*l);m=z[k+6224>>2];A=n;n=z[k+6228>>2];z[k+6200>>2]=x+C(F+C(C(E*m)+C(A*n)));z[k+6196>>2]=o+C(C(p*l)+C(C(D*m)+C(n*q)));z[k+6192>>2]=r+C(C(s*l)+C(C(u*m)+C(n*w)));v[k+3112>>2]=0;v[k+32>>2]=0;V1(a,c,k+3112|0,k+6192|0,y);V1(b,d,k+32|0,k+6208|0,t);y=v[k+3112>>2];a:{b:{if(!y){break b}a=0;X=v[k+32>>2];if(!X){break b}u=C(-R);w=C(-Q);D=C(-P);E=C(-O);_=C(-N);$=C(-M);aa=k+32|4;ba=k+3112|4;Y=1;while(1){b=B(a,12)+ba|0;A=z[b+4>>2];ca=C(-A);F=z[b>>2];da=C(-F);Z=z[b+8>>2];ea=C(-Z);b=0;while(1){t=B(b,12)+aa|0;l=z[t+8>>2];m=z[t>>2];n=z[t+4>>2];p=C(C(z[f+36>>2]*l)+C(C(z[f+4>>2]*m)+C(n*z[f+20>>2])));q=C(C(z[f+32>>2]*l)+C(C(z[f>>2]*m)+C(n*z[f+16>>2])));o=C(C(F*p)+C(q*ca));l=C(C(z[f+40>>2]*l)+C(C(z[f+8>>2]*m)+C(n*z[f+24>>2])));m=C(C(A*l)+C(p*ea));n=C(C(Z*q)+C(l*da));l=C(C(o*o)+C(C(m*m)+C(n*n)));c:{if(l>2]=0;x=o;o=C(C(1)/C(K(l)));l=C(x*o);z[k+24>>2]=l;m=C(m*o);z[k+16>>2]=m;n=C(n*o);z[k+20>>2]=n;q=z[e+40>>2];r=z[e+8>>2];s=z[e+24>>2];p=z[e+32>>2];x=z[e>>2];fa=z[e+16>>2];o=z[e+36>>2];ga=z[e+4>>2];ha=z[e+20>>2];v[k+12>>2]=0;o=C(C(o*l)+C(C(ga*m)+C(n*ha)));z[k+4>>2]=o;p=C(C(p*l)+C(C(x*m)+C(n*fa)));z[k>>2]=p;q=C(C(q*l)+C(C(r*m)+C(n*s)));z[k+8>>2]=q;r=C(C(l*(l>C(0)?R:u))+C(C(m*(m>C(0)?P:D))+C(n*(n>C(0)?Q:w))));r=r>U?r:U;s=C(-r);l=C(C(J*l)+C(C(H*m)+C(I*n)));m=C(C(q*(q>C(0)?O:E))+C(C(p*(p>C(0)?M:$))+C(o*(o>C(0)?N:_))));m=m>V?m:V;n=C(l+m);l=C(l-m);if(C((nG){break c}Ba[v[v[c>>2]+12>>2]](c,k+16|0,k+6336|0,k+6320|0);l=z[k+24>>2];m=z[k+16>>2];n=z[k+20>>2];Ba[v[v[d>>2]+12>>2]](d,k,k+6304|0,k+6288|0);m=C(C(T*l)+C(C(W*m)+C(S*n)));l=C(m+z[k+6304>>2]);z[k+6304>>2]=l;m=C(m+z[k+6288>>2]);z[k+6288>>2]=m;n=z[k+6320>>2];o=z[g>>2];if(l>C(n+o)|z[k+6336>>2]>C(m+o)){break a}l=C(n-l);if(!(l>2];v[i>>2]=v[k+16>>2];v[i+4>>2]=t;t=v[k+28>>2];v[i+8>>2]=v[k+24>>2];v[i+12>>2]=t;v[j>>2]=2;G=l}b=b+1|0;if((X|0)!=(b|0)){continue}break}a=a+1|0;Y=y>>>0>a>>>0;if((a|0)!=(y|0)){continue}break}}z[h>>2]=G;v[h+12>>2]=v[L>>2];a=v[k+6356>>2];v[h+4>>2]=v[k+6352>>2];v[h+8>>2]=a}xa=k+6368|0;return(Y^-1)&1}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,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:{if(b>>>0<=16){b=v[a+296>>2];if(!b){h=xa-16|0;xa=h;e=a+8|0;c=v[e+284>>2];if(c){b=v[37696];d=b+12|0;g=(m=d,n=c,o=Ba[v[v[b>>2]+20>>2]](b)|0?53101:63804,p=18373,q=180,l=v[v[d>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}else{g=0}v[h+12>>2]=g;b=v[e+268>>2];b:{if(b>>>0>=(v[e+272>>2]&2147483647)>>>0){b=0;d=e+4|0;c=v[d+268>>2];i=c&2147483647?c<<1:1;c:{if(!i){break c}c=i<<2;if(!(w[d+256|0]|c>>>0>256)){t[d+256|0]=1;b=d;break c}if(!c){break c}b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?53101:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,16608,553)|0}f=v[d+264>>2];k=(f<<2)+b|0;if((f|0)>0){j=v[d+260>>2];c=b;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(k>>>0>c>>>0){continue}break}}v[k>>2]=v[h+12>>2];d:{if(v[d+268>>2]<0){break d}c=v[d+260>>2];if((c|0)==(d|0)){t[d+256|0]=0;break d}if(!c){break d}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,c);f=v[d+264>>2]}v[d+268>>2]=i;v[d+260>>2]=b;v[d+264>>2]=f+1;break b}v[v[e+264>>2]+(b<<2)>>2]=g;v[e+268>>2]=b+1}b=(g+(v[e+276>>2]<<4)|0)-16|0;if(g>>>0<=b>>>0){c=v[e+288>>2];while(1){v[b>>2]=c;c=b;b=b-16|0;if(g>>>0<=b>>>0){continue}break}v[e+288>>2]=c}xa=h+16|0;b=v[a+296>>2]}v[a+296>>2]=v[b>>2];v[a+288>>2]=v[a+288>>2]+1;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;break a}if(b>>>0<=64){b=v[a+588>>2];if(!b){h=xa-16|0;xa=h;e=a+300|0;c=v[e+284>>2];if(c){b=v[37696];d=b+12|0;g=(q=d,p=c,o=Ba[v[v[b>>2]+20>>2]](b)|0?52793:63804,n=18373,m=180,l=v[v[d>>2]+8>>2],Ba[l](q|0,p|0,o|0,n|0,m|0)|0)}else{g=0}v[h+12>>2]=g;b=v[e+268>>2];e:{if(b>>>0>=(v[e+272>>2]&2147483647)>>>0){b=0;d=e+4|0;c=v[d+268>>2];i=c&2147483647?c<<1:1;f:{if(!i){break f}c=i<<2;if(!(w[d+256|0]|c>>>0>256)){t[d+256|0]=1;b=d;break f}if(!c){break f}b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?52793:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,16608,553)|0}f=v[d+264>>2];k=(f<<2)+b|0;if((f|0)>0){j=v[d+260>>2];c=b;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(k>>>0>c>>>0){continue}break}}v[k>>2]=v[h+12>>2];g:{if(v[d+268>>2]<0){break g}c=v[d+260>>2];if((c|0)==(d|0)){t[d+256|0]=0;break g}if(!c){break g}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,c);f=v[d+264>>2]}v[d+268>>2]=i;v[d+260>>2]=b;v[d+264>>2]=f+1;break e}v[v[e+264>>2]+(b<<2)>>2]=g;v[e+268>>2]=b+1}b=(g+(v[e+276>>2]<<6)|0)+-64|0;if(g>>>0<=b>>>0){c=v[e+288>>2];while(1){v[b>>2]=c;c=b;b=b+-64|0;if(g>>>0<=b>>>0){continue}break}v[e+288>>2]=c}xa=h+16|0;b=v[a+588>>2]}v[a+588>>2]=v[b>>2];v[a+580>>2]=v[a+580>>2]+1;v[b+56>>2]=0;v[b+60>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;break a}if(b>>>0<=256){b=v[a+880>>2];if(!b){h=xa-16|0;xa=h;e=a+592|0;c=v[e+284>>2];if(c){b=v[37696];d=b+12|0;g=(m=d,n=c,o=Ba[v[v[b>>2]+20>>2]](b)|0?53423:63804,p=18373,q=180,l=v[v[d>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}else{g=0}v[h+12>>2]=g;b=v[e+268>>2];h:{if(b>>>0>=(v[e+272>>2]&2147483647)>>>0){b=0;d=e+4|0;c=v[d+268>>2];i=c&2147483647?c<<1:1;i:{if(!i){break i}c=i<<2;if(!(w[d+256|0]|c>>>0>256)){t[d+256|0]=1;b=d;break i}if(!c){break i}b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?53423:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,16608,553)|0}f=v[d+264>>2];k=(f<<2)+b|0;if((f|0)>0){j=v[d+260>>2];c=b;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(k>>>0>c>>>0){continue}break}}v[k>>2]=v[h+12>>2];j:{if(v[d+268>>2]<0){break j}c=v[d+260>>2];if((c|0)==(d|0)){t[d+256|0]=0;break j}if(!c){break j}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,c);f=v[d+264>>2]}v[d+268>>2]=i;v[d+260>>2]=b;v[d+264>>2]=f+1;break h}v[v[e+264>>2]+(b<<2)>>2]=g;v[e+268>>2]=b+1}b=(g+(v[e+276>>2]<<8)|0)-256|0;if(g>>>0<=b>>>0){c=v[e+288>>2];while(1){v[b>>2]=c;c=b;b=b-256|0;if(g>>>0<=b>>>0){continue}break}v[e+288>>2]=c}xa=h+16|0;b=v[a+880>>2]}v[a+880>>2]=v[b>>2];v[a+872>>2]=v[a+872>>2]+1;J9(b,0,256);break a}a=b<<2;if(!a){b=0;break a}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,17821,60)|0}return b|0}function I_(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0);n=xa+-64|0;xa=n;g=z[b>>2];z[n+48>>2]=g;h=z[b+4>>2];z[n+52>>2]=h;i=z[b+8>>2];z[n+56>>2]=i;k=z[a>>2];l=z[a+4>>2];z[n+40>>2]=C(i*C(.5))+z[a+8>>2];z[n+36>>2]=l+C(h*C(.5));z[n+32>>2]=k+C(g*C(.5));u=C(K(C(C(i*i)+C(C(g*g)+C(h*h)))));k=u;if(k!=C(0)){v=C(C(1)/u);z[n+56>>2]=i*v;z[n+52>>2]=h*v;z[n+48>>2]=g*v;k=C(u*C(.5))}g=z[d>>2];z[n+16>>2]=g;h=z[d+4>>2];z[n+20>>2]=h;i=z[d+8>>2];z[n+24>>2]=i;l=z[c>>2];s=z[c+4>>2];z[n+8>>2]=C(i*C(.5))+z[c+8>>2];z[n+4>>2]=s+C(h*C(.5));z[n>>2]=l+C(g*C(.5));t=C(K(C(C(i*i)+C(C(g*g)+C(h*h)))));s=t;if(t!=C(0)){w=C(C(1)/t);z[n+24>>2]=i*w;z[n+20>>2]=h*w;z[n+16>>2]=g*w;s=C(t*C(.5))}h=s;g=C(z[n+40>>2]-z[n+8>>2]);i=C(z[n+32>>2]-z[n>>2]);l=C(z[n+36>>2]-z[n+4>>2]);m=C(C(g*g)+C(C(i*i)+C(l*l)));o=z[n+56>>2];p=z[n+48>>2];r=z[n+52>>2];j=C(C(g*o)+C(C(i*p)+C(l*r)));q=g;g=z[n+24>>2];x=i;i=z[n+16>>2];y=l;l=z[n+20>>2];q=C(C(q*g)+C(C(x*i)+C(y*l)));a:{b:{o=C(C(o*g)+C(C(p*i)+C(r*l)));r=C(D(C(C(1)-C(o*o))));if(r>=C(9.999999974752427e-7)){l=C(-q);g=C(r*h);p=C(-o);i=C(C(p*j)+q);q=C(C(o*q)-j);x=C(r*k);if(q>=C(-x)){y=C(-g);if(q<=x){if(i>=y){if(g>=i){h=C(C(1)/r);g=C(q*h);h=C(i*h);j=C(m+C(C(g*C(C(j+j)+C(g+C(p*h))))+C(h*C(C(l+l)+C(h+C(p*g))))));break a}i=C(C(p*h)+j);g=C(-i);if(i>k){j=C(m+C(C(C(C(l+l)+h)*h)-C(k*C(C(g*C(-2))-k))));g=C(-k);break a}if(g<=k){j=C(m+C(C(i*g)+C(C(C(l+l)+h)*h)));break a}j=C(m+C(C(k*C(k-C(g+g)))+C(C(C(l+l)+h)*h)));g=k;break a}i=C(C(o*h)+j);g=C(-i);h=C(-h);if(i>k){j=C(m+C(C(C(C(l+l)+h)*h)-C(k*C(C(g*C(-2))-k))));g=C(-k);break a}if(g<=k){j=C(m+C(C(i*g)+C(C(C(l+l)+h)*h)));break a}j=C(m+C(C(k*C(k-C(g+g)))+C(C(C(l+l)+h)*h)));g=k;break a}if(i>=y){if(g>=i){i=C(C(p*k)+l);g=C(-i);if(hk){j=C(m+C(C(C(C(l+l)+h)*h)-C(k*C(C(g*C(-2))-k))));g=C(-k);break a}if(g<=k){j=C(m+C(C(i*g)+C(C(C(l+l)+h)*h)));break a}i=C(C(p*k)+l);g=C(-i);if(hh){j=C(m+C(C(h*C(h-C(g+g)))+C(C(C(j+j)+k)*k)));g=k;break a}if(h>=l){j=C(m+C(C(l*g)+C(C(C(j+j)+k)*k)));h=g;g=k;break a}j=C(m+C(C(i*C(i-C(g+g)))+C(C(C(j+j)+k)*k)));h=i;g=k;break a}if(i>=C(-g)){if(g>=i){l=C(C(o*k)+l);i=C(-l);g=C(-k);if(h=i){j=C(m+C(C(l*i)+C(C(C(j+j)+g)*g)));h=i;break a}j=C(m+C(C(h*C(h-C(i+i)))+C(C(C(j+j)+g)*g)));break a}i=C(C(p*h)+j);g=C(-i);if(k=i){j=C(m+C(C(l*i)+C(C(C(j+j)+g)*g)));h=i;break a}j=C(m+C(C(h*C(h-C(i+i)))+C(C(C(j+j)+g)*g)));break a}i=C(-h);p=C(C(o*h)+j);g=C(-p);if(k=p){j=C(m+C(C(p*g)+C(C(C(l+l)+i)*i)));h=i;break a}g=C(-k);o=C(C(o*k)+l);l=C(-o);if(h=l){j=C(m+C(C(o*l)+C(C(C(j+j)+g)*g)));h=l;break a}j=C(m+C(C(h*C(h-C(l+l)))+C(C(C(j+j)+g)*g)));break a}o=oi){g=C(-i);break c}g=C(-l);if(!(i>2]=g}if(f){z[f>>2]=h}h=C(G(j,C(0)));if(e){z[e>>2]=u!=C(0)?C(v*C(k+z[e>>2])):C(0)}if(f){z[f>>2]=t!=C(0)?C(w*C(s+z[f>>2])):C(0)}xa=n- -64|0;return h}function pL(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=xa-32|0;xa=j;i=v[a+72>>2];a:{if((i|0)!=-1){v[a+72>>2]=v[v[a+76>>2]+((i&65535)<<3)>>2];e=v[a+64>>2];break a}e=v[a+64>>2];i=e;if(v[a+68>>2]!=(e|0)){break a}g=v[a+68>>2];f=g+128|0;e=(f|0)!=(f&536870911)?-1:f<<3;if(e){i=v[37696];h=Ba[v[v[i>>2]+20>>2]](i)|0?25051:63804;i=Ba[v[v[i+12>>2]+8>>2]](i+12|0,e,h,13406,870)|0}else{i=0}b:{if(!f){break b}e=i;h=g&7;if(h){while(1){v[e+4>>2]=-1;e=e+8|0;k=k+1|0;if((h|0)!=(k|0)){continue}break}}if((g+127&536870911)>>>0<7){break b}g=i+(f<<3)|0;while(1){v[e+4>>2]=-1;v[e+60>>2]=-1;v[e+52>>2]=-1;v[e+44>>2]=-1;v[e+36>>2]=-1;v[e+28>>2]=-1;v[e+20>>2]=-1;v[e+12>>2]=-1;e=e- -64|0;if((g|0)!=(e|0)){continue}break}}e=v[a+64>>2];if(e){I9(i,v[a+76>>2],e<<3)}e=v[a+76>>2];if(e){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}v[a+68>>2]=f;v[a+76>>2]=i;e=v[a+64>>2];i=e}v[a+64>>2]=e+1;c:{if(d){e=v[a+84>>2];f=v[a+80>>2];if((e|0)==(f|0)){e=v[a+96>>2];g=f+128|0;h=(o=-1,p=Saa(g,0,24,0),q=Aa,q?o:p);if(h){d=v[37696];k=Ba[v[v[d>>2]+20>>2]](d)|0?49731:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,h,k,13406,884)|0}else{d=0}if(f){I9(d,e,B(f,24))}if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[a+96>>2]=d;e=v[a+104>>2];f=v[a+84>>2];d=g<<1;if(d){h=v[37696];d=Ba[v[v[h+12>>2]+8>>2]](h+12|0,d,24422,13406,893)|0}else{d=0}if(f){I9(d,e,f<<1)}if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[a+80>>2]=g;v[a+104>>2]=d;e=v[a+84>>2]}v[a+84>>2]=e+1;f=v[b+20>>2];d=v[a+96>>2]+B(e,24)|0;v[d+16>>2]=v[b+16>>2];v[d+20>>2]=f;f=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=f;f=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=f;u[v[a+104>>2]+(e<<1)>>1]=i;t[a+168|0]=1;d=v[a+128>>2];k=e>>>5|0;d:{if(d>>>0>k>>>0){h=e&31;b=v[a+124>>2];break d}f=0;b=0;h=e&31;g=(e+128>>>5|0)+((h|0)!=0)|0;if(g){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g<<2,24422,13406,274)|0;d=v[a+128>>2]}if(d){I9(b,v[a+124>>2],d<<2);f=v[a+128>>2]}if((f|0)!=(g|0)){J9((f<<2)+b|0,0,g-f<<2)}d=v[a+124>>2];if(d){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,d)}v[a+128>>2]=g;v[a+124>>2]=b}b=(k<<2)+b|0;v[b>>2]=v[b>>2]|1<>2]+((i&65535)<<3)|0;v[a+4>>2]=c;v[a>>2]=e;break c}e=v[a+92>>2];f=v[a+88>>2];if((e|0)==(f|0)){e=v[a+100>>2];g=f+128|0;h=(o=-1,p=Saa(g,0,24,0),q=Aa,q?o:p);if(h){d=v[37696];k=Ba[v[v[d>>2]+20>>2]](d)|0?49731:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,h,k,13406,884)|0}else{d=0}if(f){I9(d,e,B(f,24))}if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[a+100>>2]=d;e=v[a+108>>2];f=v[a+92>>2];d=g<<1;if(d){h=v[37696];d=Ba[v[v[h+12>>2]+8>>2]](h+12|0,d,24422,13406,893)|0}else{d=0}if(f){I9(d,e,f<<1)}if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[a+88>>2]=g;v[a+108>>2]=d;d=v[a+112>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d);v[a+112>>2]=0}d=(g<<2)+4|0;if(d){e=v[37696];d=Ba[v[v[e+12>>2]+8>>2]](e+12|0,d,24422,13406,974)|0}else{d=0}v[a+112>>2]=d;e=v[a+92>>2]}v[a+92>>2]=e+1;f=v[b+20>>2];g=B(e,24);d=g+v[a+100>>2]|0;v[d+16>>2]=v[b+16>>2];v[d+20>>2]=f;f=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=f;f=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=f;k=v[a+108>>2];m=k+(e<<1)|0;u[m>>1]=i;n=v[a+76>>2];h=n+((i&65535)<<3)|0;v[h+4>>2]=c;v[h>>2]=e;d=v[a+100>>2];f=v[a+116>>2];e:{if((f|0)!=(e|0)){c=d+B(f,24)|0;l=v[c+20>>2];v[j+24>>2]=v[c+16>>2];v[j+28>>2]=l;l=v[c+12>>2];v[j+16>>2]=v[c+8>>2];v[j+20>>2]=l;l=v[c+4>>2];v[j+8>>2]=v[c>>2];v[j+12>>2]=l;l=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=l;l=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=l;l=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=l;c=v[j+20>>2];b=d+g|0;v[b+8>>2]=v[j+16>>2];v[b+12>>2]=c;c=v[j+28>>2];v[b+16>>2]=v[j+24>>2];v[b+20>>2]=c;c=v[j+12>>2];v[b>>2]=v[j+8>>2];v[b+4>>2]=c;c=k+(f<<1)|0;b=x[c>>1];u[c>>1]=i;u[m>>1]=b;v[(b<<3)+n>>2]=e;v[h>>2]=f;break e}c=d+g|0;d=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d}t[a+169|0]=1;v[a+120>>2]=0;v[a+116>>2]=v[a+116>>2]+1}xa=j+32|0;return i&65535}function zZ(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=0;l=xa-6784|0;xa=l;M=l+6764|0;m=z[d+4>>2];y=C(m+m);u=z[d+8>>2];A=C(y*u);q=z[d>>2];o=C(q+q);r=z[d+12>>2];B=C(o*r);z[M>>2]=A-B;N=l+6756|0;z[N>>2]=A+B;O=l+6768|0;A=C(C(1)-C(q*o));B=C(m*y);z[O>>2]=A-B;P=l+6752|0;s=A;A=C(u+u);p=C(u*A);z[P>>2]=s-p;n=C(o*u);y=C(y*r);z[l+6760>>2]=n+y;o=C(o*m);A=C(A*r);z[l+6748>>2]=o-A;z[l+6744>>2]=n-y;z[l+6740>>2]=o+A;z[l+6736>>2]=C(C(1)-B)-p;F=z[d+16>>2];z[l+6772>>2]=F;Q=l+6776|0;H=z[d+20>>2];z[Q>>2]=H;R=l+6780|0;I=z[d+24>>2];z[R>>2]=I;y=z[e+4>>2];n=C(y+y);o=z[e+8>>2];s=C(n*o);B=z[e>>2];p=C(B+B);A=z[e+12>>2];D=C(p*A);z[l+6716>>2]=s-D;z[l+6708>>2]=s+D;s=C(C(1)-C(B*p));D=C(y*n);z[l+6720>>2]=s-D;E=s;s=C(o+o);G=C(o*s);z[l+6704>>2]=E-G;E=C(p*o);n=C(n*A);z[l+6712>>2]=E+n;p=C(p*y);s=C(s*A);z[l+6700>>2]=p-s;z[l+6696>>2]=E-n;z[l+6692>>2]=p+s;z[l+6688>>2]=C(C(1)-D)-G;G=z[e+16>>2];z[l+6724>>2]=G;E=z[e+20>>2];z[l+6728>>2]=E;K=z[e+24>>2];z[l+6732>>2]=K;L=l+6624|0;S=l+6736|0;T=l+6688|0;q_(L,b,z[f>>2],S,T,i,k);b=v[c+40>>2];v[l+6620>>2]=1088;t[l+6608|0]=1;c=l+2256|0;v[l+6612>>2]=c;ga=v[b+56>>2];p=z[f>>2];n=z[f+8>>2];s=z[f+4>>2];v[l+1292>>2]=0;v[l>>2]=142572;v[l+8>>2]=c;v[l+4>>2]=2;J9(l+1164|0,255,128);v[l+2064>>2]=0;J9(l+1936|0,255,128);v[l+2228>>2]=g;v[l+2224>>2]=e;v[l+2220>>2]=d;z[l+2216>>2]=s;t[l+2213|0]=j;z[l+2208>>2]=n;z[l+2204>>2]=p;v[l+2200>>2]=h;v[l+2188>>2]=a;p=C(G-F);p=C(p+p);n=C(E-H);n=C(n+n);s=C(K-I);s=C(s+s);D=C(C(C(C(-q)*p)-C(n*m))-C(u*s));J=C(C(r*r)+C(-.5));z[l+2160>>2]=C(C(s*J)+C(r*C(C(m*p)-C(q*n))))-C(u*D);z[l+2156>>2]=C(C(n*J)+C(r*C(C(q*s)-C(u*p))))-C(m*D);z[l+2152>>2]=C(C(p*J)+C(r*C(C(u*n)-C(m*s))))-C(q*D);J=C(y*u);U=C(r*B);V=C(A*q);W=C(m*o);n=C(J+C(C(U-V)-W));p=C(n+n);X=C(o*q);Y=C(r*y);Z=C(A*m);_=C(u*B);s=C(X+C(C(Y-Z)-_));D=C(s+s);$=C(C(1)-C(n*p));aa=C(s*D);z[l+2148>>2]=$-aa;ba=C(B*m);ca=C(r*o);da=C(A*u);ea=C(q*y);n=C(ba+C(C(ca-da)-ea));fa=C(n*D);u=C(C(o*u)+C(C(y*m)+C(C(A*r)+C(q*B))));m=C(u*p);z[l+2144>>2]=fa-m;r=C(n*p);q=C(u*D);z[l+2140>>2]=r+q;z[l+2136>>2]=fa+m;m=C(n+n);n=C(n*m);z[l+2132>>2]=$-n;p=C(s*p);m=C(u*m);z[l+2128>>2]=p-m;z[l+2124>>2]=r-q;z[l+2120>>2]=p+m;z[l+2116>>2]=C(C(1)-aa)-n;m=C(F-G);m=C(m+m);r=C(H-E);r=C(r+r);q=C(I-K);q=C(q+q);p=C(C(C(C(-B)*m)-C(r*y))-C(o*q));n=C(C(A*A)+C(-.5));s=C(C(C(q*n)+C(A*C(C(y*m)-C(B*r))))-C(o*p));z[l+2112>>2]=s;D=C(C(C(r*n)+C(A*C(C(B*q)-C(o*m))))-C(y*p));z[l+2108>>2]=D;A=C(C(C(m*n)+C(A*C(C(o*r)-C(y*q))))-C(B*p));z[l+2104>>2]=A;m=C(W+C(C(V-U)-J));o=C(m+m);r=C(_+C(C(Z-Y)-X));y=C(r+r);q=C(C(1)-C(m*o));B=C(r*y);p=C(q-B);z[l+2100>>2]=p;m=C(ea+C(C(da-ca)-ba));n=C(m*y);F=C(u*o);H=C(n-F);z[l+2096>>2]=H;I=C(m*o);y=C(u*y);G=C(I+y);z[l+2092>>2]=G;n=C(n+F);z[l+2088>>2]=n;E=q;q=m;m=C(m+m);q=C(q*m);F=C(E-q);z[l+2084>>2]=F;o=C(r*o);u=C(u*m);r=C(o-u);z[l+2080>>2]=r;m=C(I-y);z[l+2076>>2]=m;y=C(o+u);z[l+2072>>2]=y;q=C(C(C(1)-B)-q);z[l+2068>>2]=q;v[l+2196>>2]=T;v[l+2192>>2]=S;c=l+2232|0;t[c|0]=0;v[l+6616>>2]=0;u=z[a>>2];o=z[a+4>>2];E=C(C(m*u)+C(n*o));m=z[a+8>>2];z[l+2172>>2]=s+C(E+C(p*m));z[l+2168>>2]=D+C(C(C(y*u)+C(F*o))+C(H*m));z[l+2164>>2]=A+C(C(C(q*u)+C(r*o))+C(G*m));z[l+2184>>2]=C(C(C(u*z[l+6744>>2])+C(o*z[N>>2]))+C(m*z[O>>2]))+z[R>>2];z[l+2180>>2]=C(C(C(u*z[l+6740>>2])+C(o*z[P>>2]))+C(m*z[M>>2]))+z[Q>>2];z[l+2176>>2]=C(C(C(u*z[l+6736>>2])+C(o*z[l+6748>>2]))+C(m*z[l+6760>>2]))+z[l+6772>>2];v[l+2248>>2]=b;t[l+2244|0]=k;v[l+2240>>2]=ga;v[l+2236>>2]=i;v[l+2252>>2]=L;Ba[v[(x[b+4>>1]<<2)+142584>>2]](b,L,l,0,1);AZ(l+8|0);b=w[c|0];a=v[l+6620>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=v[l+6612>>2];if((a|0)==(l+2256|0)|!a){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=l+6784|0;return(b|0)!=0}function aB(a){var b=0,c=0,d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0,y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=0,aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=C(0),Na=C(0),Oa=C(0),Pa=0,Qa=0,Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0),Wa=C(0),Xa=C(0),Ya=C(0),Za=C(0),_a=C(0);b=v[a+96>>2];A=z[b+24>>2];B=z[b+20>>2];c=v[a+64>>2];D=z[c+24>>2];E=z[c+20>>2];d=v[a+32>>2];F=z[d+24>>2];G=z[d+20>>2];e=v[a>>2];H=z[e+24>>2];I=z[e+20>>2];Ha=z[b+28>>2];J=z[b+16>>2];Ia=z[b+12>>2];K=z[b+8>>2];L=z[b+4>>2];M=z[b>>2];Ja=z[c+28>>2];N=z[c+16>>2];Ka=z[c+12>>2];O=z[c+8>>2];P=z[c+4>>2];Q=z[c>>2];La=z[d+28>>2];R=z[d+16>>2];Ma=z[d+12>>2];S=z[d+8>>2];T=z[d+4>>2];U=z[d>>2];Na=z[e+28>>2];V=z[e+16>>2];Oa=z[e+12>>2];W=z[e+8>>2];X=z[e+4>>2];Y=z[e>>2];a=v[a+24>>2];Z=x[a+2>>1];if(Z){Pa=a+Z|0;while(1){fa=a+160|0;$=w[a+1|0];Z=fa+($<<7)|0;ga=z[a+76>>2];ha=z[a+72>>2];ia=z[a+68>>2];ja=z[a+60>>2];ka=z[a+56>>2];la=z[a+52>>2];ma=z[a+44>>2];na=z[a+40>>2];oa=z[a+36>>2];pa=z[a+92>>2];qa=z[a+88>>2];ra=z[a+84>>2];sa=z[a+64>>2];ta=z[a+48>>2];ua=z[a+32>>2];va=z[a+80>>2];a:{if(!$){n=C(0);o=C(0);p=C(0);q=C(0);break a}Qa=(x[a+2>>1]+a|0)+96|0;Ra=z[a+124>>2];Sa=z[a+120>>2];Ta=z[a+116>>2];Ua=z[a+112>>2];aa=C(C(C(Y*ua)+C(X*ta))+C(W*sa));ba=C(C(C(U*oa)+C(T*la))+C(S*ia));ca=C(C(C(Q*na)+C(P*ka))+C(O*ha));da=C(C(C(M*ma)+C(L*ja))+C(K*ga));q=C(0);u=0;p=C(0);o=C(0);n=C(0);while(1){a=(u<<7)+fa|0;l=z[a+116>>2];g=z[a+52>>2];wa=z[a+36>>2];xa=z[a+20>>2];ya=z[a+4>>2];Va=z[a+100>>2];Wa=z[a+84>>2];f=z[a+68>>2];s=z[a+120>>2];h=z[a+56>>2];za=z[a+40>>2];Aa=z[a+24>>2];Ba=z[a+8>>2];Xa=z[a+104>>2];Ya=z[a+88>>2];i=z[a+72>>2];t=z[a+124>>2];j=z[a+60>>2];Ca=z[a+44>>2];Da=z[a+28>>2];Ea=z[a+12>>2];_=z[a+108>>2];Za=z[a+92>>2];k=z[a+76>>2];ea=z[a+48>>2];m=C(-ea);y=z[a+64>>2];_a=C(C(y*z[a+80>>2])-z[a+96>>2]);r=y;y=z[a>>2];Fa=z[a+16>>2];Ga=z[a+32>>2];r=C(_a-C(r*C(aa+C(C(C(V*y)+C(I*Fa))+C(H*Ga)))));m=C(ea+(m>2];m=m>2]=m;k=C(C(C(k*Za)-_)-C(k*C(da+C(C(C(J*Ea)+C(B*Da))+C(A*Ca)))));_=C(-j);k=C(j+(k>_?k:_));t=k>2]=t;i=C(C(C(i*Ya)-Xa)-C(i*C(ca+C(C(C(N*Ba)+C(E*Aa))+C(D*za)))));k=C(-h);i=C(h+(i>k?i:k));s=i>2]=s;f=C(C(C(f*Wa)-Va)-C(f*C(ba+C(C(C(R*ya)+C(G*xa))+C(F*wa)))));i=C(-g);f=C(g+(f>i?f:i));l=f>2]=l;a=(u<<4)+Qa|0;z[a+12>>2]=t;z[a+8>>2]=s;z[a+4>>2]=l;z[a>>2]=m;f=C(m-ea);n=C(n+f);j=C(t-j);q=C(q+j);h=C(s-h);p=C(p+h);g=C(l-g);o=C(o+g);aa=C(aa+C(va*f));l=C(Ua*f);H=C(H+C(Ga*l));I=C(I+C(Fa*l));V=C(V+C(y*l));da=C(da+C(pa*j));ca=C(ca+C(qa*h));ba=C(ba+C(ra*g));j=C(Ra*j);A=C(A+C(Ca*j));h=C(Sa*h);D=C(D+C(za*h));g=C(Ta*g);F=C(F+C(wa*g));B=C(B+C(Da*j));E=C(E+C(Aa*h));G=C(G+C(xa*g));J=C(J+C(Ea*j));N=C(N+C(Ba*h));R=C(R+C(ya*g));u=u+1|0;if(($|0)!=(u|0)){continue}break}}q=C(pa*q);K=C(K+C(ga*q));p=C(qa*p);O=C(O+C(ha*p));o=C(ra*o);S=C(S+C(ia*o));n=C(va*n);W=C(W+C(sa*n));L=C(L+C(ja*q));P=C(P+C(ka*p));T=C(T+C(la*o));X=C(X+C(ta*n));M=C(M+C(ma*q));Q=C(Q+C(na*p));U=C(U+C(oa*o));Y=C(Y+C(ua*n));a=Z;if(Pa>>>0>a>>>0){continue}break}}z[e+12>>2]=Oa;z[e+8>>2]=W;z[e+4>>2]=X;z[e>>2]=Y;z[d+12>>2]=Ma;z[d+8>>2]=S;z[d+4>>2]=T;z[d>>2]=U;z[c+12>>2]=Ka;z[c+8>>2]=O;z[c+4>>2]=P;z[c>>2]=Q;z[b+12>>2]=Ia;z[b+8>>2]=K;z[b+4>>2]=L;z[b>>2]=M;z[e+28>>2]=Na;z[e+24>>2]=H;z[e+20>>2]=I;z[e+16>>2]=V;z[d+28>>2]=La;z[d+24>>2]=F;z[d+20>>2]=G;z[d+16>>2]=R;z[c+28>>2]=Ja;z[c+24>>2]=D;z[c+20>>2]=E;z[c+16>>2]=N;z[b+28>>2]=Ha;z[b+24>>2]=A;z[b+20>>2]=B;z[b+16>>2]=J}function n3(a,b,c,d,e,f){var g=0,h=0,i=0,j=C(0),k=0,l=0,m=0,n=0,o=0,p=C(0),q=C(0),r=0,s=0,t=C(0),u=0,w=0,x=C(0),y=0,A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=0,M=0,N=0,O=C(0),P=C(0);w=xa-16|0;xa=w;L=c+8|0;M=c+4|0;while(1){l=v[a+28>>2];h=v[l>>2];g=B(h,12)+c|0;j=z[g+8>>2];q=z[g+4>>2];t=z[g>>2];g=B(h,24)+b|0;D=z[g+12>>2];E=z[g+8>>2];F=z[g+4>>2];G=z[g>>2];H=z[g+20>>2];I=z[g+16>>2];h=1;s=v[a+32>>2];if(s>>>0>1){while(1){k=v[(h<<2)+l>>2];g=B(k,24)+b|0;p=z[g+12>>2];D=p>2];E=p>E?E:p;p=z[g+4>>2];F=p>F?F:p;p=z[g>>2];G=p>G?G:p;p=z[g+20>>2];H=p>2];I=p>2]);q=C(q+z[g+4>>2]);t=C(t+z[g>>2]);h=h+1|0;if((s|0)!=(h|0)){continue}break}}z[a+12>>2]=D;z[a+8>>2]=E;z[a+4>>2]=F;z[a>>2]=G;z[a+20>>2]=H;z[a+16>>2]=I;if(f>>>0>>0){u=a+12|0;p=C(s>>>0);x=C(C(1)/p);O=C(x*j);P=C(x*q);x=C(x*t);j=C(0);g=0;q=C(0);t=C(0);while(1){J=t;h=B(v[(g<<2)+l>>2],12)+c|0;t=C(z[h+8>>2]-O);t=C(J+C(t*t));J=q;q=C(z[h+4>>2]-P);q=C(J+C(q*q));J=j;j=C(z[h>>2]-x);j=C(J+C(j*j));g=g+1|0;if((s|0)!=(g|0)){continue}break}y=s-1|0;x=C(C(1)/C(y>>>0));j=C(x*j);z[w>>2]=j;q=C(x*q);z[w+4>>2]=q;g=j>2]>2]+z[g+u>>2])*C(.5));k=c+g|0;K=s&1;a:{if(!y){g=0;h=0;break a}o=s&-2;g=0;h=0;n=0;while(1){i=h<<2;m=i+l|0;r=v[m>>2];if(j>2]){A=m;m=(g<<2)+l|0;v[A>>2]=v[m>>2];v[m>>2]=r;g=g+1|0}i=(i|4)+l|0;m=v[i>>2];if(j>2]){r=i;i=(g<<2)+l|0;v[r>>2]=v[i>>2];v[i>>2]=m;g=g+1|0}h=h+2|0;n=n+2|0;if((o|0)!=(n|0)){continue}break}}b:{if(!K){break b}h=(h<<2)+l|0;n=v[h>>2];if(!(j>2])){break b}i=h;h=(g<<2)+l|0;v[i>>2]=v[h>>2];v[h>>2]=n;g=g+1|0}if(!((g|0)!=(s|0)?g:0)){j=C(C(D+G)*C(.5));c:{if(!y){g=0;h=0;break c}n=s&-2;g=0;h=0;k=0;while(1){o=h<<2;i=o+l|0;m=v[i>>2];if(j>2]){r=i;i=(g<<2)+l|0;v[r>>2]=v[i>>2];v[i>>2]=m;g=g+1|0}o=(o|4)+l|0;i=v[o>>2];if(j>2]){m=o;o=(g<<2)+l|0;v[m>>2]=v[o>>2];v[o>>2]=i;g=g+1|0}h=h+2|0;k=k+2|0;if((n|0)!=(k|0)){continue}break}}d:{if(!K){break d}h=(h<<2)+l|0;k=v[h>>2];if(!(j>2])){break d}i=h;h=(g<<2)+l|0;v[i>>2]=v[h>>2];v[h>>2]=k;g=g+1|0}j=C(C(I+F)*C(.5));e:{if(!y){h=0;k=0;break e}o=s&-2;h=0;k=0;n=0;while(1){i=k<<2;m=i+l|0;r=v[m>>2];if(j>2]){A=m;m=(h<<2)+l|0;v[A>>2]=v[m>>2];v[m>>2]=r;h=h+1|0}i=(i|4)+l|0;m=v[i>>2];if(j>2]){r=i;i=(h<<2)+l|0;v[r>>2]=v[i>>2];v[i>>2]=m;h=h+1|0}k=k+2|0;n=n+2|0;if((o|0)!=(n|0)){continue}break}}f:{if(!K){break f}k=(k<<2)+l|0;n=v[k>>2];if(!(j>2])){break f}i=k;k=(h<<2)+l|0;v[i>>2]=v[k>>2];v[k>>2]=n;h=h+1|0}j=C(C(H+E)*C(.5));g:{if(!y){k=0;n=0;break g}i=s&-2;k=0;n=0;o=0;while(1){m=n<<2;r=m+l|0;N=v[r>>2];if(j>2]){A=r;r=(k<<2)+l|0;v[A>>2]=v[r>>2];v[r>>2]=N;k=k+1|0}m=(m|4)+l|0;r=v[m>>2];if(j>2]){A=m;m=(k<<2)+l|0;v[A>>2]=v[m>>2];v[m>>2]=r;k=k+1|0}n=n+2|0;o=o+2|0;if((i|0)!=(o|0)){continue}break}}q=C(g>>>0);t=C(h>>>0);h:{if(!K){break h}g=(n<<2)+l|0;h=v[g>>2];if(!(j>2])){break h}i=g;g=(k<<2)+l|0;v[i>>2]=v[g>>2];v[g>>2]=h;k=k+1|0}j=C(C(q/p)+C(-.5));j=C(j*j);z[w>>2]=j;q=C(C(t/p)+C(-.5));q=C(q*q);z[w+4>>2]=q;t=C(C(k>>>0)/p);z[w+8>>2]=t;g=j>q;j=C(t+C(-.5));g=(z[(g<<2)+w>>2]>C(j*j)?2:g)<<2;j=C(C(z[g+a>>2]+z[g+u>>2])*C(.5));k=c+g|0;i:{if(!y){g=0;h=0;break i}y=s&-2;g=0;h=0;n=0;while(1){u=h<<2;o=u+l|0;i=v[o>>2];if(j>2]){m=o;o=(g<<2)+l|0;v[m>>2]=v[o>>2];v[o>>2]=i;g=g+1|0}u=(u|4)+l|0;o=v[u>>2];if(j>2]){i=u;u=(g<<2)+l|0;v[i>>2]=v[u>>2];v[u>>2]=o;g=g+1|0}h=h+2|0;n=n+2|0;if((y|0)!=(n|0)){continue}break}}j:{if(!K){break j}h=(h<<2)+l|0;n=v[h>>2];if(!(j>2])){break j}i=h;h=(g<<2)+l|0;v[i>>2]=v[h>>2];v[h>>2]=n;g=g+1|0}h=s>>>1|0;g=g?(g|0)==(s|0)?h:g:h}i=a;a=v[d>>2];h=B(a,36)+e|0;v[i+24>>2]=h;v[d>>2]=a+2;v[h+32>>2]=g;v[h+28>>2]=l;a=e?h+36|0:0;v[a+32>>2]=s-g;v[a+28>>2]=(g<<2)+l;n3(h,b,c,d,e,f);continue}break}xa=w+16|0}function lE(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=0,R=0,S=0,T=C(0),U=C(0);E=xa-48|0;xa=E;if(v[a+592>>2]){v[E+40>>2]=0;v[E+32>>2]=0;v[E+36>>2]=0;u[E+28>>1]=x[f>>1];v[E+24>>2]=e;v[E+16>>2]=c;v[E+12>>2]=b;v[E+8>>2]=130304;v[E+20>>2]=E+32;R=v[a+644>>2];S=v[a+640>>2];O=E+8|0;e=xa-1056|0;xa=e;h=z[c+8>>2];o=C(h+h);f=o>C(0);G=C(-o);h=z[c+4>>2];p=C(h+h);J=p>C(0);H=C(-p);h=z[c>>2];q=C(h+h);c=q>C(0);I=C(-q);h=z[b+8>>2];y=C(h+h);h=z[b+4>>2];A=C(h+h);h=z[b>>2];D=C(h+h);h=z[d>>2];a:{if(h>=C(34028234663852886e22)){r=p==C(0)?A:p>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);s=q==C(0)?D:q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);h=y;if(o==C(0)){break a}h=o>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}r=C(A+C(p*h));s=C(D+C(q*h));h=C(y+C(o*h))}G=f?o:G;H=J?p:H;I=c?q:I;t[e+1040|0]=1;v[e+1048>>2]=256;v[e+1052>>2]=256;v[e+1044>>2]=e+16;v[e+16>>2]=v[a+592>>2];L=hr?A:r;N=D>s?D:s;h=h>y?y:h;r=A>2]+(a<<2)>>2];g=z[f+16>>2];l=z[f>>2];i=C(g-l);l=C(g+l);d:{if(!(C(i+l)>=s)|!(C(l-i)<=N)){break d}j=z[f+20>>2];k=z[f+4>>2];g=C(j-k);j=C(j+k);k=C(A-j);m=C(D-l);l=C(C(q*k)-C(p*m));if(!(C(C(H*i)+C(I*g))>=(l>C(0)?l:C(-l)))|!(C(g+j)>=r)|!(C(j-g)<=M)){break d}n=C(G*g);l=z[f+24>>2];j=z[f+8>>2];g=C(l-j);l=C(l+j);w=C(y-l);j=C(C(p*w)-C(o*k));if(!(C(n+C(H*g))>=(j>C(0)?j:C(-j)))|!(C(g+l)>=h)|!(C(l-g)<=L)){break d}g=C(C(G*i)+C(I*g));i=C(C(o*m)-C(q*w));if(!(g>=(i>C(0)?i:C(-i)))){break d}l=z[d>>2];z[e+12>>2]=l;if(v[f+40>>2]){while(1){b=v[f+36>>2];j=z[b- -64>>2];k=z[b+48>>2];i=C(j-k);l=z[b+68>>2];m=z[b+52>>2];g=C(l-m);l=C(l+m);m=C(A-l);j=C(j+k);w=C(D-j);k=C(C(q*m)-C(p*w));c=C(j-i)<=N&C(i+j)>=s&C(C(H*i)+C(I*g))>=(k>C(0)?k:C(-k))&C(g+l)>=r&C(l-g)<=M;F=C(G*g);k=z[b+72>>2];n=z[b+56>>2];g=C(k-n);k=C(k+n);n=C(y-k);m=C(C(p*n)-C(o*m));K=C(C(G*i)+C(I*g));i=C(C(o*w)-C(q*n));c=c&C(F+C(H*g))>=(m>C(0)?m:C(-m))&C(g+k)>=h&C(k-g)<=L&K>=(i>C(0)?i:C(-i));w=z[b+16>>2];n=z[b>>2];i=C(w-n);m=z[b+20>>2];F=z[b+4>>2];g=C(m-F);m=C(m+F);F=C(A-m);w=C(w+n);P=C(D-w);n=C(C(q*F)-C(p*P));f=C(w-i)<=N&C(i+w)>=s&C(C(H*i)+C(I*g))>=(n>C(0)?n:C(-n))&C(g+m)>=r&C(m-g)<=M;T=C(G*g);n=z[b+24>>2];K=z[b+8>>2];g=C(n-K);n=C(n+K);K=C(y-n);F=C(C(p*K)-C(o*F));U=C(C(G*i)+C(I*g));i=C(C(o*P)-C(q*K));f=f&C(T+C(H*g))>=(F>C(0)?F:C(-F))&C(g+n)>=h&C(n-g)<=L&U>=(i>C(0)?i:C(-i));e:{if(!(!f|!c)){c=C(C(C(k-n)*o)+C(C(C(j-w)*q)+C(p*C(l-m))))>C(0);v[v[e+1044>>2]+(a<<2)>>2]=b+B(c,48);f=b+B(!c,48)|0;a=a+1|0;if((a|0)!=(v[e+1052>>2]&2147483647)){break e}gD(e+16|0,a<<1);break e}if(!(c|f)){break d}f=f?b:b+48|0}if(v[f+40>>2]){continue}break}l=z[d>>2]}c=v[f+36>>2];b=v[c>>2];if(!b){break d}f=c+4|0;c=b;while(1){Q=v[f>>2];f:{if(b>>>0>=2){J=B(Q,24)+S|0;g=z[J+12>>2];j=z[J>>2];i=C(g-j);j=C(j+g);if(!(C(i+j)>=s)|!(C(j-i)<=N)){break f}k=z[J+16>>2];m=z[J+4>>2];g=C(k-m);k=C(m+k);m=C(A-k);w=C(D-j);j=C(C(q*m)-C(p*w));if(!(C(C(H*i)+C(I*g))>=(j>C(0)?j:C(-j)))|!(C(g+k)>=r)|!(C(k-g)<=M)){break f}F=C(G*g);j=z[J+20>>2];k=z[J+8>>2];g=C(j-k);j=C(k+j);n=C(y-j);k=C(C(p*n)-C(o*m));if(!(C(F+C(H*g))>=(k>C(0)?k:C(-k)))|!(C(g+j)>=h)|!(C(j-g)<=L)){break f}g=C(C(G*i)+C(I*g));i=C(C(o*w)-C(q*n));if(!(g>=(i>C(0)?i:C(-i)))){break f}}if(!(Ba[v[v[O>>2]+8>>2]](O,e+12|0,B(Q,44)+R|0)|0)){break c}i=z[e+12>>2];if(!(i>2]=i;h=C(y+C(o*i));L=hr?A:r;s=C(D+C(q*i));N=D>s?D:s;h=h>y?y:h;r=A>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[e+1044>>2];if((b|0)==(e+16|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=e+1056|0}else{a=1}xa=E+48|0;return a|0}function gv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0);a=xa-48|0;s=z[d+8>>2];D=z[c>>2];o=z[c+12>>2];t=z[d+4>>2];x=z[d+12>>2];u=z[c+4>>2];G=z[c+8>>2];l=z[d>>2];j=C(C(s*D)+C(C(C(o*t)-C(x*u))-C(G*l)));i=C(C(t*G)+C(C(C(o*l)-C(x*D))-C(u*s)));E=C(i+i);F=C(C(G*s)+C(C(u*t)+C(C(o*x)+C(D*l))));i=C(C(l*u)+C(C(C(o*s)-C(x*G))-C(D*t)));A=C(i+i);k=z[b+8>>2];p=C(C(C(j*E)-C(F*A))*k);B=C(j+j);q=C(C(C(1)-C(j*B))-C(i*A));j=z[b+4>>2];y=C(q*j);m=C(p-y);q=C(C(i*E)+C(F*B));i=z[b+12>>2];w=C(q*i);E=z[e>>2];F=z[d+16>>2];A=C(F-z[c+16>>2]);n=C(A+A);A=z[d+20>>2];B=C(A-z[c+20>>2]);r=C(B+B);B=z[d+24>>2];q=C(B-z[c+24>>2]);q=C(q+q);n=C(E-C(C(C(n*C(C(o*o)+C(-.5)))+C(o*C(C(G*r)-C(u*q))))-C(D*C(C(C(C(-D)*n)-C(r*u))-C(G*q)))));I=C(C(m-w)-n);z[a+20>>2]=I;J=C(C(m+w)-n);z[a+16>>2]=J;m=C(y-p);K=C(C(m-w)-n);z[a+12>>2]=K;L=C(C(m+w)-n);z[a+8>>2]=L;m=C(y+p);M=C(C(m-w)-n);z[a+4>>2]=M;N=C(C(m+w)-n);z[a>>2]=N;p=C(C(-y)-p);O=C(C(p-w)-n);z[a+28>>2]=O;P=C(C(p+w)-n);z[a+24>>2]=P;q=C(t+t);p=C(s*q);r=C(l+l);y=C(x*r);w=C(p-y);m=C(r*s);H=C(q*x);n=C(m+H);p=C(p+y);Q=C(r*t);R=C(s+s);S=C(x*R);x=C(Q-S);y=C(m-H);m=C(Q+S);l=C(C(1)-C(l*r));r=C(t*q);t=C(l-r);q=l;l=C(s*R);s=C(q-l);l=C(C(C(1)-r)-l);q=C(D+D);H=C(o+o);r=C(-C(C(G*q)-C(u*H)));u=C(-C(C(G*H)+C(q*u)));o=C(-C(C(D*q)+C(C(o*H)+C(-1))));v[a+44>>2]=a;b=v[a+44>>2];a:{if(v[b>>2]>=0){break a}a=v[g+4096>>2];if(a>>>0>63){break a}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+N;z[a+24>>2]=B+C(C(C(y*j)+C(p*k))+C(t*i));z[a+20>>2]=A+C(C(C(m*j)+C(s*k))+C(w*i));z[a+16>>2]=F+C(C(C(l*j)+C(x*k))+C(n*i))}b:{if(v[b+4>>2]>=0){break b}a=v[g+4096>>2];if(a>>>0>63){break b}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+M;z[a+24>>2]=B+C(C(C(y*j)+C(p*k))-C(t*i));z[a+20>>2]=A+C(C(C(m*j)+C(s*k))-C(w*i));z[a+16>>2]=F+C(C(C(l*j)+C(x*k))-C(n*i))}c:{if(v[b+8>>2]>=0){break c}a=v[g+4096>>2];if(a>>>0>63){break c}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+L;z[a+24>>2]=B+C(C(C(y*j)-C(p*k))+C(t*i));z[a+20>>2]=A+C(C(C(m*j)-C(s*k))+C(w*i));z[a+16>>2]=F+C(C(C(l*j)-C(x*k))+C(n*i))}d:{if(v[b+12>>2]>=0){break d}a=v[g+4096>>2];if(a>>>0>63){break d}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+K;z[a+24>>2]=B+C(C(C(y*j)-C(p*k))-C(t*i));z[a+20>>2]=A+C(C(C(m*j)-C(s*k))-C(w*i));z[a+16>>2]=F+C(C(C(l*j)-C(x*k))-C(n*i))}e:{if(v[b+16>>2]>=0){break e}a=v[g+4096>>2];if(a>>>0>63){break e}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+J;z[a+24>>2]=B+C(C(C(p*k)-C(y*j))+C(t*i));z[a+20>>2]=A+C(C(C(s*k)-C(m*j))+C(w*i));z[a+16>>2]=F+C(C(C(x*k)-C(l*j))+C(n*i))}f:{if(v[b+20>>2]>=0){break f}a=v[g+4096>>2];if(a>>>0>63){break f}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+I;z[a+24>>2]=B+C(C(C(p*k)-C(y*j))-C(t*i));z[a+20>>2]=A+C(C(C(s*k)-C(m*j))-C(w*i));z[a+16>>2]=F+C(C(C(x*k)-C(l*j))-C(n*i))}g:{if(v[b+24>>2]>=0){break g}a=v[g+4096>>2];if(a>>>0>63){break g}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+P;D=C(-k);z[a+24>>2]=B+C(C(C(p*D)-C(y*j))+C(t*i));z[a+20>>2]=A+C(C(C(s*D)-C(m*j))+C(w*i));z[a+16>>2]=F+C(C(C(x*D)-C(l*j))+C(n*i))}a=v[g+4096>>2];h:{if(v[b+28>>2]>=0){b=a;break h}if(a>>>0>63){b=a;break h}b=a+1|0;v[g+4096>>2]=b;a=(a<<6)+g|0;z[a+8>>2]=r;z[a+4>>2]=u;z[a>>2]=o;v[a+52>>2]=-1;z[a+12>>2]=E+O;k=C(-k);z[a+24>>2]=B+C(C(C(p*k)-C(y*j))-C(t*i));z[a+20>>2]=A+C(C(C(s*k)-C(m*j))-C(w*i));z[a+16>>2]=F+C(C(C(x*k)-C(l*j))-C(n*i))}return(b|0)!=0|0}function P1(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=0,H=0,I=0,J=C(0),L=C(0),M=0,N=0;p=xa-384|0;xa=p;a:{if(!f){break a}G=w[h+64|0];if(G){D=1;I=v[h+76>>2];q=z[I+40>>2];s=z[I+36>>2];u=z[I+32>>2];b:{if((G|0)==1){break b}H=G-1|0;M=H&1;if((G|0)!=2){N=H&-2;G=0;while(1){H=B(D,48)+I|0;u=C(C(u+z[H+32>>2])+z[H+80>>2]);q=C(C(q+z[H+40>>2])+z[H+88>>2]);s=C(C(s+z[H+36>>2])+z[H+84>>2]);D=D+2|0;G=G+2|0;if((N|0)!=(G|0)){continue}break}}if(!M){break b}D=B(D,48)+I|0;u=C(u+z[D+32>>2]);q=C(q+z[D+40>>2]);s=C(s+z[D+36>>2])}r=q;q=C(C(1)/C(K(C(C(q*q)+C(C(u*u)+C(s*s))))));r=C(r*q);A=C(u*q);q=C(s*q)}else{q=C(0)}s=z[k>>2];z[p+32>>2]=o;z[p+48>>2]=s*C(.05000000074505806);k=v[p+60>>2];v[p+24>>2]=v[p+56>>2];v[p+28>>2]=k;k=v[p+44>>2];v[p+8>>2]=v[p+40>>2];v[p+12>>2]=k;k=v[p+36>>2];v[p>>2]=v[p+32>>2];v[p+4>>2]=k;k=v[p+52>>2];v[p+16>>2]=v[p+48>>2];v[p+20>>2]=k;c:{e=a2(a,b,e,f,i,p+16|0,p,g,h);d:{if(e){break d}E=z[g+40>>2];F=z[g+32>>2];x=z[g+36>>2];if(C(C(r*E)+C(C(A*F)+C(q*x)))=j>>>0){break c}}b=v[b+4>>2];a=v[a+4>>2];l2(a,m,p+304|0);l2(b,n,p+232|0);v[p+200>>2]=a+96;v[p+196>>2]=a+48;v[p+192>>2]=c;e:{if(m){t[p+204|0]=1;v[p+160>>2]=141020;break e}t[p+204|0]=0;v[p+160>>2]=141068}c=g+32|0;f=g+16|0;v[p+128>>2]=d;v[p+208>>2]=a;v[p+136>>2]=b+96;v[p+132>>2]=b+48;f:{if(n){t[p+140|0]=1;v[p+96>>2]=141020;break f}t[p+140|0]=0;v[p+96>>2]=141068}v[p+144>>2]=b;v[p+92>>2]=0;G=X1(p+304|0,p+232|0,p+160|0,p+96|0,i,p+92|0,l,c,g,f,z[a+16>>2],z[b+16>>2],e,o);if(!G){break a}a=v[p+92>>2];if(a){t2(h,i,a,o);c=v[h+76>>2];o=z[c+32>>2];q=o;y=z[c+36>>2];s=y;r=z[c+40>>2];u=r;a=w[h+64|0];g:{if(a>>>0<2){break g}D=1;b=a-1|0;e=b&1;u=r;s=y;q=o;if((a|0)!=2){f=b&-2;a=0;while(1){b=c+B(D,48)|0;q=C(C(q+z[b+32>>2])+z[b+80>>2]);u=C(C(u+z[b+40>>2])+z[b+88>>2]);s=C(C(s+z[b+36>>2])+z[b+84>>2]);D=D+2|0;a=a+2|0;if((f|0)!=(a|0)){continue}break}}if(!e){break g}a=c+B(D,48)|0;q=C(q+z[a+32>>2]);u=C(u+z[a+40>>2]);s=C(s+z[a+36>>2])}E=z[d+4>>2];F=z[d+8>>2];x=z[d>>2];A=z[d+12>>2];v[p+76>>2]=0;a=C(C(u*u)+C(C(q*q)+C(s*s)))>C(1.1920928955078125e-7);u=a?u:r;o=a?q:o;q=a?s:y;s=C(C(F*u)+C(C(x*o)+C(E*q)));y=C(C(A*A)+C(-.5));r=C(C(F*s)+C(C(A*C(C(x*q)-C(o*E)))+C(u*y)));r=C(r+r);J=r;L=C(r*r);r=C(C(x*s)+C(C(A*C(C(E*u)-C(q*F)))+C(o*y)));r=C(r+r);o=C(C(E*s)+C(C(A*C(C(F*o)-C(u*x)))+C(q*y)));o=C(o+o);q=C(C(1)/C(K(C(L+C(C(r*r)+C(o*o))))));z[p+72>>2]=J*q;z[p+68>>2]=o*q;z[p+64>>2]=r*q;r2(h,i,p- -64|0,d,l);break a}if(e){break a}c=v[h+76>>2];o=z[c+32>>2];q=o;y=z[c+36>>2];s=y;r=z[c+40>>2];u=r;a=w[h+64|0];h:{if(a>>>0<2){break h}D=1;b=a-1|0;e=b&1;u=r;s=y;q=o;if((a|0)!=2){f=b&-2;a=0;while(1){b=c+B(D,48)|0;q=C(C(q+z[b+32>>2])+z[b+80>>2]);u=C(C(u+z[b+40>>2])+z[b+88>>2]);s=C(C(s+z[b+36>>2])+z[b+84>>2]);D=D+2|0;a=a+2|0;if((f|0)!=(a|0)){continue}break}}if(!e){break h}a=c+B(D,48)|0;q=C(q+z[a+32>>2]);u=C(u+z[a+40>>2]);s=C(s+z[a+36>>2])}E=z[d+4>>2];F=z[d+8>>2];x=z[d>>2];A=z[d+12>>2];v[p+76>>2]=0;a=C(C(u*u)+C(C(q*q)+C(s*s)))>C(1.1920928955078125e-7);u=a?u:r;o=a?q:o;q=a?s:y;s=C(C(F*u)+C(C(x*o)+C(E*q)));y=C(C(A*A)+C(-.5));r=C(C(F*s)+C(C(A*C(C(x*q)-C(o*E)))+C(u*y)));r=C(r+r);J=r;L=C(r*r);r=C(C(x*s)+C(C(A*C(C(E*u)-C(q*F)))+C(o*y)));r=C(r+r);o=C(C(E*s)+C(C(A*C(C(F*o)-C(u*x)))+C(q*y)));o=C(o+o);q=C(C(1)/C(K(C(L+C(C(r*r)+C(o*o))))));z[p+72>>2]=J*q;z[p+68>>2]=o*q;z[p+64>>2]=r*q;r2(h,i,p- -64|0,d,l);break a}s=z[d+4>>2];u=z[d+8>>2];y=z[d>>2];o=z[d+12>>2];v[p+316>>2]=0;r=C(r+E);A=C(A+F);q=C(q+x);E=C(C(u*r)+C(C(y*A)+C(s*q)));F=C(C(o*o)+C(-.5));x=C(C(u*E)+C(C(o*C(C(y*q)-C(A*s)))+C(r*F)));x=C(x+x);J=x;L=C(x*x);x=C(C(y*E)+C(C(o*C(C(s*r)-C(q*u)))+C(A*F)));x=C(x+x);o=C(C(s*E)+C(C(o*C(C(u*A)-C(r*y)))+C(q*F)));o=C(o+o);q=C(C(1)/C(K(C(L+C(C(x*x)+C(o*o))))));z[p+312>>2]=J*q;z[p+308>>2]=o*q;z[p+304>>2]=x*q;r2(h,i,p+304|0,d,l);G=1}xa=p+384|0;return G}function EX(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=C(g);h=h|0;i=i|0;j=C(j);var k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0;k=xa-448|0;xa=k;E=v[a+32>>2];v[k+440>>2]=0;v[k+444>>2]=0;v[k+432>>2]=0;v[k+436>>2]=0;v[k+416>>2]=0;D=z[d+20>>2];y=z[d+24>>2];W=z[f+8>>2];X=z[f+4>>2];Y=z[f>>2];J=z[d+16>>2];m=z[d+8>>2];l=z[d>>2];n=z[d+4>>2];r=z[d+12>>2];G=z[b+20>>2];H=z[b+24>>2];o=z[b>>2];p=z[b+4>>2];q=z[b+8>>2];s=z[b+12>>2];Q=z[b+16>>2];v[k+412>>2]=0;z[k+408>>2]=H;z[k+404>>2]=G;z[k+400>>2]=Q;z[k+396>>2]=s;z[k+392>>2]=q;z[k+388>>2]=p;z[k+384>>2]=o;A=z[e+24>>2];I=z[c+8>>2];R=z[a+8>>2];S=z[a+12>>2];T=z[a+4>>2];v[k+380>>2]=0;z[k+376>>2]=S;z[k+372>>2]=R;z[k+368>>2]=T;c=v[a+16>>2];d=v[a+20>>2];ca=v[a+28>>2];v[k+360>>2]=v[a+24>>2];v[k+364>>2]=ca;v[k+352>>2]=c;v[k+356>>2]=d;v[k+332>>2]=0;v[k+316>>2]=0;N=C(-o);J=C(J-Q);O=C(D-G);P=C(y-H);U=C(C(C(N*J)-C(O*p))-C(q*P));D=C(C(s*s)+C(-.5));y=C(C(C(s*C(C(p*J)-C(o*O)))+C(D*P))-C(q*U));V=C(y+y);z[k+264>>2]=V;y=C(C(C(l*p)-C(o*n))+C(C(m*s)-C(r*q)));L=C(C(C(n*q)-C(p*m))+C(C(l*s)-C(r*o)));F=C(L+L);Z=C(y*F);M=C(C(r*s)-C(C(C(N*l)-C(n*p))-C(q*m)));l=C(C(C(m*o)-C(q*l))+C(C(n*s)-C(r*p)));n=C(l+l);r=C(M*n);L=C(C(1)-C(L*F));_=C(l*n);m=C(I*C(0));$=C(y*n);aa=C(M*F);ba=C(C(C(L-_)*m)+C(C(I*C(Z-r))+C(C($+aa)*m)));z[k+328>>2]=V-ba;n=C(C(C(D*O)+C(s*C(C(o*P)-C(q*J))))-C(p*U));n=C(n+n);z[k+260>>2]=n;F=C(l*F);l=C(y+y);M=C(M*l);y=C(y*l);l=C(C(C($-aa)*m)+C(C(I*C(F+M))+C(C(L-y)*m)));z[k+324>>2]=n-l;z[k+312>>2]=V+ba;z[k+308>>2]=n+l;z[k+336>>2]=A;v[k+268>>2]=0;v[k+284>>2]=4;t[k+288|0]=1;z[k+280>>2]=A;z[k+276>>2]=A;z[k+272>>2]=A;l=C(C(C(D*J)+C(s*C(C(q*O)-C(p*P))))-C(o*U));l=C(l+l);z[k+256>>2]=l;m=C(C(C(Z+r)*m)+C(C(I*C(C(C(1)-_)-y))+C(C(F-M)*m)));z[k+320>>2]=l-m;z[k+304>>2]=l+m;t[k+128|0]=0;v[k+120>>2]=0;v[k+124>>2]=0;v[k+112>>2]=0;v[k+116>>2]=0;v[k+104>>2]=0;v[k+108>>2]=0;v[k+96>>2]=0;v[k+100>>2]=0;c=E+16|0;v[k+240>>2]=c;v[k+248>>2]=v[E+56>>2]+B(w[E+55|0],20);t[k+252|0]=w[E+54|0];m=C(T*z[E+68>>2]);l=C(R*z[E+72>>2]);m=m<=l?m:l;l=C(S*z[E+76>>2]);m=m<=l?m:l;z[k+120>>2]=m*C(.02500000037252903);z[k+112>>2]=m*C(.10000000149011612);z[k+116>>2]=m*C(.05000000074505806);d=k+96|0;GV(k+368|0,k+352|0,k+144|0,k+192|0,d,T==C(1)&R==C(1)&S==C(1));v[k+244>>2]=v[E+60>>2];v[k+92>>2]=0;m=C(C(-W)*g);l=C(C(-Y)*g);n=C(C(-X)*g);r=C(C(q*m)+C(C(o*l)+C(p*n)));A=C(C(q*r)+C(C(m*D)-C(s*C(C(o*n)-C(l*p)))));z[k+88>>2]=A+A;A=C(C(p*r)+C(C(n*D)-C(s*C(C(q*l)-C(m*o)))));z[k+84>>2]=A+A;m=C(C(o*r)+C(C(l*D)-C(s*C(C(p*m)-C(n*q)))));z[k+80>>2]=m+m;E=x[i>>1];v[k+24>>2]=141148;v[k+28>>2]=k+256;v[k+16>>2]=141216;v[k+20>>2]=d;v[k+12>>2]=0;z[k+8>>2]=z[k+264>>2]-z[k+104>>2];z[k+4>>2]=z[k+260>>2]-z[k+100>>2];z[k>>2]=z[k+256>>2]-z[k+96>>2];d=E&512;e=FX(k+24|0,k+16|0,k,k+432|0,k+80|0,k- -64|0,k+32|0,k+48|0,C(z[e+24>>2]+j),d>>>9|0);a:{if(!e){break a}if(GX(h,f,k- -64|0,k+32|0,k+48|0,k+384|0,(d|0)!=0,1)){break a}u[h+12>>1]=x[h+12>>1]|1;j=z[k+36>>2];m=z[k+32>>2];l=z[k+40>>2];n=z[k+56>>2];r=z[k+48>>2];A=z[k+52>>2];g=C(z[k+64>>2]*g);z[h+40>>2]=g;F=H;y=C(-p);I=C(C(q*n)+C(C(o*r)+C(p*A)));H=C(C(C(s*C(C(o*A)+C(r*y)))+C(D*n))+C(q*I));z[h+24>>2]=C(W*g)+C(F+C(H+H));H=G;G=C(C(p*I)+C(C(D*A)+C(s*C(C(q*r)+C(n*N)))));z[h+20>>2]=C(X*g)+C(H+C(G+G));G=C(Y*g);g=C(D*r);r=C(-q);g=C(C(o*I)+C(g+C(s*C(C(p*n)+C(A*r)))));z[h+16>>2]=G+C(Q+C(g+g));g=C(C(q*l)+C(C(o*m)+C(p*j)));n=C(C(C(s*C(C(o*j)+C(m*y)))+C(D*l))+C(q*g));n=C(n+n);o=C(C(o*g)+C(C(D*m)+C(s*C(C(p*l)+C(j*r)))));o=C(o+o);g=C(C(p*g)+C(C(D*j)+C(s*C(C(q*m)+C(l*N)))));g=C(g+g);j=C(C(1)/C(K(C(C(n*n)+C(C(o*o)+C(g*g))))));z[h+36>>2]=n*j;z[h+32>>2]=g*j;z[h+28>>2]=o*j;HX(h,x[i>>1],a,c,b,f)}xa=k+448|0;return e|0}function Wz(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=C(0),r=0,s=0,t=0,u=0,w=0,x=0,A=0;c=v[a+28>>2];v[v[c+4>>2]+8>>2]=v[c+536>>2];c=xa-32|0;xa=c;j=v[a+28>>2];i=j+12|0;f=v[j+4>>2];Xz(i,f);e=v[a+28>>2];b=e+464|0;g=v[e+592>>2];p=v[b+(1-g<<2)>>2];h=v[b+(g<<2)>>2];v[h+8>>2]=0;if(v[j+36>>2]){while(1){b=v[j+28>>2]+(d<<3)|0;q=z[b+4>>2];b=v[f+4>>2]+(v[b>>2]<<5)|0;a:{if(!(q>C(z[b+8>>2]*z[v[a+28>>2]+52>>2]))){break a}z[b+20>>2]=q;g=v[h+8>>2];if(g>>>0>=(v[h+12>>2]&2147483647)>>>0){Yz(h,b);break a}e=v[b+4>>2];g=v[h+4>>2]+(g<<5)|0;v[g>>2]=v[b>>2];v[g+4>>2]=e;e=v[b+28>>2];v[g+24>>2]=v[b+24>>2];v[g+28>>2]=e;e=v[b+20>>2];v[g+16>>2]=v[b+16>>2];v[g+20>>2]=e;e=v[b+12>>2];v[g+8>>2]=v[b+8>>2];v[g+12>>2]=e;v[h+8>>2]=v[h+8>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}e=v[a+28>>2]}f=v[e+8>>2];v[f+8>>2]=0;n=v[h+8>>2];o=v[p+8>>2];b:{if(!o){if(n>>>0>(v[f+12>>2]&2147483647)>>>0){kz(f,n)}v[f+8>>2]=n;I9(v[f+4>>2],v[h+4>>2],n<<5);break b}s=e+472|0;Xz(i,p);c:{d:{k=n+o|0;if(k>>>0>(v[e+480>>2]&2147483647)>>>0){Aw(s,k);v[e+476>>2]=k;break d}v[e+476>>2]=k;if(k){break d}r=1;break c}a=v[s>>2];e=0;if(k-1>>>0>=7){d=k&-8;while(1){b=e<<2;v[b+a>>2]=1;v[a+(b|4)>>2]=1;v[a+(b|8)>>2]=1;v[a+(b|12)>>2]=1;v[a+(b|16)>>2]=1;v[a+(b|20)>>2]=1;v[a+(b|24)>>2]=1;v[a+(b|28)>>2]=1;e=e+8|0;l=l+8|0;if((d|0)!=(l|0)){continue}break}}b=k&7;if(!b){break c}while(1){v[a+(e<<2)>>2]=1;e=e+1|0;r=r+1|0;if((b|0)!=(r|0)){continue}break}r=0}if(n){w=v[j+28>>2];x=v[j+32>>2];g=v[j+16>>2];A=v[h+4>>2];e=0;while(1){l=(e<<5)+A|0;t=v[l+12>>2];a=t>>>7|0;u=v[l+16>>2];b=u>>>7|0;m=-1;i=b+m|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;m=b<<13^-1;d=b+m|0;b=(a^-1)+i|0;b=d>>>0>>0?b+1|0:b;a=Saa(d^((b&255)<<24|d>>>8),b^b>>>8,9,0);d=Aa;b=d>>>15|0;a=a^((d&32767)<<17|a>>>15);b=b^d;m=a<<27^-1;d=m+a|0;a=((b<<27|a>>>5)^-1)+b|0;b=d;a=b>>>0>>0?a+1|0:a;d=v[(((b^((a&2147483647)<<1|b>>>31))>>>0)%y[j+20>>2]<<2)+g>>2];e:{if((d|0)==-1){break e}b=v[l>>2];i=v[p+4>>2];while(1){l=v[w+(d<<3)>>2];a=(l<<5)+i|0;if(!(!(v[a+12>>2]!=(t|0)|v[a+16>>2]!=(u|0))&v[a>>2]==(b|0))){d=v[x+(d<<2)>>2];if((d|0)!=-1){continue}break e}break}a=v[s>>2];v[a+(l<<2)>>2]=0;v[a+(e+o<<2)>>2]=0}e=e+1|0;if((n|0)!=(e|0)){continue}break}}if(r){break b}d=0;while(1){f:{if(v[v[s>>2]+(d<<2)>>2]){g:{if(d>>>0>>0){a=v[p+4>>2];v[c+12>>2]=-128;v[c+16>>2]=-128;a=a+(d<<5)|0;b=v[a+12>>2];v[c+8>>2]=v[a+8>>2];v[c+12>>2]=b;b=v[a+28>>2];v[c+24>>2]=v[a+24>>2];v[c+28>>2]=b;b=v[a+20>>2];v[c+16>>2]=v[a+16>>2];v[c+20>>2]=b;b=v[a+4>>2];v[c>>2]=v[a>>2];v[c+4>>2]=b;q=C(0);break g}a=v[h+4>>2];v[c+12>>2]=-128;v[c+16>>2]=-128;a=a+(d-o<<5)|0;b=v[a+28>>2];v[c+24>>2]=v[a+24>>2];v[c+28>>2]=b;b=v[a+20>>2];v[c+16>>2]=v[a+16>>2];v[c+20>>2]=b;b=v[a+12>>2];v[c+8>>2]=v[a+8>>2];v[c+12>>2]=b;b=v[a+4>>2];v[c>>2]=v[a>>2];v[c+4>>2]=b;q=z[a+20>>2]}z[c+20>>2]=q;a=v[f+8>>2];if(a>>>0>=(v[f+12>>2]&2147483647)>>>0){Yz(f,c);break f}b=v[c+4>>2];a=v[f+4>>2]+(a<<5)|0;v[a>>2]=v[c>>2];v[a+4>>2]=b;b=v[c+28>>2];v[a+24>>2]=v[c+24>>2];v[a+28>>2]=b;b=v[c+20>>2];v[a+16>>2]=v[c+16>>2];v[a+20>>2]=b;b=v[c+12>>2];v[a+8>>2]=v[c+8>>2];v[a+12>>2]=b;v[f+8>>2]=v[f+8>>2]+1;break f}if(d>>>0>=o>>>0){break f}a=v[p+4>>2];v[c+12>>2]=-128;v[c+16>>2]=-128;a=a+(d<<5)|0;b=v[a+12>>2];v[c+8>>2]=v[a+8>>2];v[c+12>>2]=b;b=v[a+28>>2];v[c+24>>2]=v[a+24>>2];v[c+28>>2]=b;b=v[a+20>>2];v[c+16>>2]=v[a+16>>2];v[c+20>>2]=b;b=v[a+4>>2];v[c>>2]=v[a>>2];v[c+4>>2]=b;z[c+20>>2]=z[a+20>>2];a=v[f+8>>2];if(a>>>0>=(v[f+12>>2]&2147483647)>>>0){Yz(f,c);break f}b=v[c+4>>2];a=v[f+4>>2]+(a<<5)|0;v[a>>2]=v[c>>2];v[a+4>>2]=b;b=v[c+28>>2];v[a+24>>2]=v[c+24>>2];v[a+28>>2]=b;b=v[c+20>>2];v[a+16>>2]=v[c+16>>2];v[a+20>>2]=b;b=v[c+12>>2];v[a+8>>2]=v[c+8>>2];v[a+12>>2]=b;v[f+8>>2]=v[f+8>>2]+1}d=d+1|0;if((k|0)!=(d|0)){continue}break}}xa=c+32|0}function $V(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=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0,S=C(0),T=C(0),U=C(0),V=C(0);h=xa-4320|0;xa=h;j=z[d+20>>2];k=z[d+16>>2];s=z[d+24>>2];l=z[d>>2];m=C(l+l);r=z[d+8>>2];n=z[d+4>>2];u=z[d+12>>2];g=C(u+u);i=z[c+8>>2];x=C(C(C(m*r)-C(n*g))*i);z[h+20>>2]=s-x;r=C(i*C(C(r*g)+C(m*n)));z[h+16>>2]=j-r;z[h+8>>2]=x+s;z[h+4>>2]=j+r;j=C(i*C(C(l*m)+C(C(u*g)+C(-1))));z[h+12>>2]=k-j;z[h>>2]=k+j;z[h+24>>2]=z[c+4>>2];H=h+4288|0;LU(H,h,h+12|0,h+4316|0);v[h+4232>>2]=-1;z[h+56>>2]=z[h+4316>>2];z[h+52>>2]=z[h+24>>2];v[h+48>>2]=2;Q=h+4232|0;R=h+48|0;lV(Q,R);v[h+4176>>2]=-1;L=h+4176|0;lV(L,e);v[h+4168>>2]=0;v[h+4172>>2]=0;d=0;v[h+4144>>2]=0;v[h+40>>2]=1065353216;v[h+32>>2]=0;v[h+36>>2]=0;c=xa-192|0;xa=c;t=z[h+32>>2];E=z[Q+4>>2];j=z[f+8>>2];k=z[Q+8>>2];r=z[H>>2];m=C(r+r);x=z[H+8>>2];F=z[H+4>>2];n=z[H+12>>2];u=C(n+n);p=C(k*C(C(m*x)-C(F*u)));J=z[f+24>>2];N=z[H+24>>2];q=C(J-N);l=C(C(-p)-q);g=C(l+l);l=z[f>>2];o=C(k*C(C(r*m)+C(C(n*u)+C(-1))));K=z[f+16>>2];O=z[H+16>>2];A=C(K-O);i=C(C(-o)-A);i=C(i+i);B=C(k*C(C(x*u)+C(m*F)));G=z[f+20>>2];P=z[H+20>>2];I=C(G-P);k=C(C(-B)-I);s=C(k+k);k=z[f+4>>2];y=C(C(j*g)+C(C(l*i)+C(s*k)));m=z[f+12>>2];u=C(C(m*m)+C(-.5));w=C(C(j*y)+C(C(g*u)-C(m*C(C(l*s)-C(i*k)))));z[c+188>>2]=w;M=C(C(k*y)+C(C(s*u)-C(m*C(C(j*i)-C(g*l)))));z[c+184>>2]=M;p=C(p-q);p=C(p+p);q=C(o-A);q=C(q+q);o=C(B-I);o=C(o+o);A=C(C(j*p)+C(C(l*q)+C(k*o)));B=C(C(l*A)+C(C(q*u)-C(m*C(C(k*p)-C(o*j)))));z[c+168>>2]=B;s=C(C(l*y)+C(C(i*u)-C(m*C(C(k*g)-C(s*j)))));z[c+180>>2]=s;y=C(C(k*A)+C(C(o*u)-C(m*C(C(j*q)-C(p*l)))));z[c+172>>2]=y;p=C(C(j*A)+C(C(p*u)-C(m*C(C(l*o)-C(q*k)))));z[c+176>>2]=p;e=v[L+4>>2];v[c+160>>2]=L;v[c+156>>2]=e;g=z[L+8>>2];i=z[L+12>>2];z[c+152>>2]=C(1)/z[L+16>>2];z[c+144>>2]=C(1)/i;z[c+148>>2]=C(1)/g;z[c+132>>2]=E;z[c+128>>2]=t;g=C(E+t);z[c+124>>2]=g;z[c+84>>2]=J;z[c+80>>2]=G;z[c+76>>2]=K;i=C(l+l);o=C(C(1)-C(l*i));q=C(k+k);t=C(k*q);z[c+72>>2]=o-t;E=C(q*j);A=C(m*i);z[c+68>>2]=E-A;I=C(i*j);q=C(m*q);z[c- -64>>2]=I+q;z[c+60>>2]=A+E;S=o;o=C(j+j);E=C(j*o);z[c+56>>2]=S-E;i=C(i*k);o=C(m*o);z[c+52>>2]=i-o;z[c+48>>2]=I-q;z[c+44>>2]=i+o;z[c+40>>2]=C(C(1)-t)-E;z[c+116>>2]=g+C(D(C(C(p-w)*C(.5))));z[c+112>>2]=g+C(D(C(C(y-M)*C(.5))));z[c+108>>2]=g+C(D(C(C(B-s)*C(.5))));z[c+100>>2]=C(p+w)*C(.5);z[c+96>>2]=C(y+M)*C(.5);z[c+92>>2]=C(B+s)*C(.5);v[c+88>>2]=c+168;v[c+32>>2]=142540;v[c+140>>2]=f;e=c+144|0;v[c+136>>2]=e;v[c+36>>2]=R;y=C(C(F*j)+C(C(C(m*r)-C(n*l))-C(k*x)));p=C(y+y);i=C(C(r*k)+C(C(C(m*x)-C(n*j))-C(l*F)));E=C(p*i);s=C(C(j*x)+C(C(k*F)+C(C(m*n)+C(r*l))));r=C(C(x*l)+C(C(C(m*F)-C(n*k))-C(j*r)));w=C(r+r);M=C(s*w);n=C(O-K);x=C(n+n);n=C(P-G);F=C(n+n);n=C(N-J);q=C(n+n);o=C(C(C(C(-l)*x)-C(F*k))-C(j*q));G=C(C(1)-C(y*p));A=C(r*w);n=C(C(g+g)*C(.5));t=C(g+z[Q+8>>2]);J=C(C(t+t)*C(.5));B=C(s*p);w=C(w*i);N=C(C(D(C(C(G-A)*n)))+C(C(D(C(C(E-M)*J)))+C(D(C(C(B+w)*n)))));g=C(C(g-g)*C(.5));g=C(g+g);O=C(i*g);t=C(C(t-t)*C(.5));t=C(t+t);P=C(r*g);K=C(O+C(C(y*t)+P));I=C(C(s*s)+C(-.5));T=C(g*I);g=C(y*g);U=C(C(C(C(q*u)+C(m*C(C(k*x)-C(l*F))))-C(j*o))+C(C(i*K)+C(T+C(s*C(g-C(t*r))))));z[c+28>>2]=N+U;V=C(D(C(C(w-B)*n)));p=C(p*r);w=C(i+i);B=C(s*w);S=G;G=C(i*w);w=C(V+C(C(D(C(C(p+B)*J)))+C(D(C(C(S-G)*n)))));g=C(C(C(C(F*u)+C(m*C(C(l*q)-C(j*x))))-C(k*o))+C(C(r*K)+C(T+C(s*C(C(i*t)-g)))));z[c+24>>2]=w+g;i=C(C(D(C(C(E+M)*n)))+C(C(D(C(C(C(C(1)-A)-G)*J)))+C(D(C(C(p-B)*n)))));j=C(C(C(C(x*u)+C(m*C(C(F*j)-C(k*q))))-C(l*o))+C(C(y*K)+C(C(t*I)+C(s*C(P-O)))));z[c+20>>2]=i+j;z[c+16>>2]=U-N;z[c+12>>2]=g-w;z[c+8>>2]=j-i;m$(e,f,c+8|0,0,c+32|0);xa=c+192|0;a:{if(!v[R+4096>>2]){break a}if(!RV(a,b,v[h+4144>>2],h+48|0)){break a}d=v[h+4144>>2]!=0}xa=h+4320|0;return d|0}function WX(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=C(g);h=h|0;i=i|0;j=C(j);var k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0);k=xa-288|0;xa=k;v[k+272>>2]=0;v[k+264>>2]=0;v[k+268>>2]=0;v[k+256>>2]=0;v[k+260>>2]=0;L=z[b+20>>2];D=z[d+20>>2];M=z[b+24>>2];F=z[d+24>>2];q=z[a+8>>2];E=z[a+12>>2];P=z[f+4>>2];Q=z[f>>2];R=z[f+8>>2];G=z[e+24>>2];N=z[b+16>>2];A=z[d+16>>2];B=z[c+8>>2];y=z[b>>2];l=z[d+8>>2];o=z[b+8>>2];m=z[d>>2];w=z[b+12>>2];n=z[d+4>>2];r=z[b+4>>2];s=z[d+12>>2];p=z[a+4>>2];v[k+252>>2]=0;z[k+248>>2]=E;z[k+244>>2]=q;t[k+224|0]=0;v[k+220>>2]=3;v[k+192>>2]=0;v[k+196>>2]=0;v[k+200>>2]=0;v[k+204>>2]=0;z[k+240>>2]=p;q=q>=p?p:q;q=q<=E?q:E;E=C(q*C(.05000000074505806));z[k+216>>2]=E;z[k+212>>2]=E;z[k+208>>2]=q*C(.15000000596046448);v[k+172>>2]=0;v[k+156>>2]=0;E=C(-y);A=C(A-N);D=C(D-L);F=C(F-M);O=C(C(C(E*A)-C(D*r))-C(o*F));q=C(C(w*w)+C(-.5));p=C(C(C(w*C(C(r*A)-C(y*D)))+C(q*F))-C(o*O));K=C(p+p);z[k+104>>2]=K;p=C(C(C(m*r)-C(y*n))+C(C(l*w)-C(s*o)));I=C(C(C(n*o)-C(r*l))+C(C(m*w)-C(s*y)));H=C(I+I);S=C(p*H);J=C(C(s*w)-C(C(C(E*m)-C(n*r))-C(o*l)));m=C(C(C(l*y)-C(o*m))+C(C(n*w)-C(s*r)));n=C(m+m);s=C(J*n);I=C(C(1)-C(I*H));T=C(m*n);l=C(B*C(0));U=C(p*n);V=C(J*H);W=C(C(C(I-T)*l)+C(C(B*C(S-s))+C(l*C(U+V))));z[k+168>>2]=K-W;n=C(C(C(q*D)+C(w*C(C(y*F)-C(o*A))))-C(r*O));n=C(n+n);z[k+100>>2]=n;H=C(m*H);m=C(p+p);J=C(J*m);p=C(p*m);m=C(C(C(U-V)*l)+C(C(B*C(H+J))+C(l*C(I-p))));z[k+164>>2]=n-m;z[k+152>>2]=K+W;z[k+148>>2]=n+m;z[k+176>>2]=G;v[k+108>>2]=0;v[k+124>>2]=4;t[k+128|0]=1;z[k+120>>2]=G;z[k+116>>2]=G;z[k+112>>2]=G;m=C(C(C(q*A)+C(w*C(C(o*D)-C(r*F))))-C(y*O));m=C(m+m);z[k+96>>2]=m;l=C(C(C(S+s)*l)+C(C(B*C(C(C(1)-T)-p))+C(l*C(H-J))));z[k+160>>2]=m-l;z[k+144>>2]=m+l;v[k+92>>2]=0;l=C(C(-R)*g);B=C(C(-Q)*g);s=C(C(-P)*g);p=C(C(o*l)+C(C(y*B)+C(r*s)));A=C(C(o*p)+C(C(l*q)-C(w*C(C(y*s)-C(B*r)))));z[k+88>>2]=A+A;A=C(C(r*p)+C(C(s*q)-C(w*C(C(o*B)-C(l*y)))));z[k+84>>2]=A+A;l=C(C(y*p)+C(C(B*q)-C(w*C(C(r*l)-C(s*o)))));z[k+80>>2]=l+l;a=x[i>>1];v[k+64>>2]=2139095039;v[k+24>>2]=141148;v[k+28>>2]=k+96;v[k+16>>2]=141808;v[k+20>>2]=k+192;v[k+12>>2]=0;z[k+8>>2]=K-z[k+200>>2];z[k+4>>2]=n-z[k+196>>2];z[k>>2]=m-z[k+192>>2];a=a&512;b=XX(k+24|0,k+16|0,k,k+256|0,k+80|0,k- -64|0,k+32|0,k+48|0,C(G+j),a>>>9|0);a:{if(!b){break a}G=C(-o);l=C(-r);u[h+12>>1]=2;j=z[k+64>>2];if(j<=z[k+272>>2]){if(a){u[h+12>>1]=3;g=z[k+56>>2];B=z[k+48>>2];m=z[k+52>>2];n=z[k+40>>2];s=z[k+32>>2];p=z[k+36>>2];z[h+40>>2]=j;A=C(C(o*n)+C(C(y*s)+C(r*p)));D=C(C(C(w*C(C(y*p)+C(s*l)))+C(q*n))+C(o*A));D=C(D+D);z[h+36>>2]=D;F=C(C(r*A)+C(C(q*p)+C(w*C(C(o*s)+C(n*E)))));F=C(F+F);z[h+32>>2]=F;n=C(C(y*A)+C(C(q*s)+C(w*C(C(r*n)+C(p*G)))));n=C(n+n);z[h+28>>2]=n;p=C(C(w*C(C(y*m)+C(B*l)))+C(q*g));l=C(C(o*g)+C(C(y*B)+C(r*m)));s=C(p+C(o*l));z[h+24>>2]=C(M+C(s+s))-C(j*D);o=C(C(r*l)+C(C(q*m)+C(w*C(C(o*B)+C(g*E)))));z[h+20>>2]=C(L+C(o+o))-C(j*F);g=C(C(y*l)+C(C(q*B)+C(w*C(C(r*g)+C(m*G)))));z[h+16>>2]=C(N+C(g+g))-C(j*n);break a}v[h+40>>2]=0;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break a}u[h+12>>1]=3;B=z[k+56>>2];m=z[k+48>>2];n=z[k+52>>2];s=z[k+40>>2];p=z[k+32>>2];A=z[k+36>>2];g=C(j*g);z[h+40>>2]=g;j=C(C(o*s)+C(C(y*p)+C(r*A)));D=C(C(C(w*C(C(y*A)+C(p*l)))+C(q*s))+C(o*j));z[h+36>>2]=D+D;D=C(C(r*j)+C(C(q*A)+C(w*C(C(o*p)+C(s*E)))));z[h+32>>2]=D+D;j=C(C(y*j)+C(C(q*p)+C(w*C(C(r*s)+C(A*G)))));z[h+28>>2]=j+j;j=C(C(o*B)+C(C(y*m)+C(r*n)));l=C(C(C(w*C(C(y*n)+C(m*l)))+C(q*B))+C(o*j));z[h+24>>2]=C(R*g)+C(M+C(l+l));o=C(C(r*j)+C(C(q*n)+C(w*C(C(o*m)+C(B*E)))));z[h+20>>2]=C(P*g)+C(L+C(o+o));l=C(Q*g);g=C(C(y*j)+C(C(q*m)+C(w*C(C(r*B)+C(n*G)))));z[h+16>>2]=l+C(N+C(g+g))}xa=k+288|0;return b|0}function QD(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=0,V=C(0);r=xa-1056|0;xa=r;j=z[e+8>>2];s=C(j+j);F=s>C(0);H=C(-s);j=z[e+4>>2];u=C(j+j);K=u>C(0);I=C(-u);j=z[e>>2];w=C(j+j);e=w>C(0);J=C(-w);L=z[g+8>>2];M=z[g+4>>2];N=z[g>>2];j=z[d+8>>2];A=C(j+j);j=z[d+4>>2];D=C(j+j);j=z[d>>2];E=C(j+j);j=z[f>>2];a:{if(j>=C(34028234663852886e22)){x=u==C(0)?D:u>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);y=w==C(0)?E:w>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);j=A;if(s==C(0)){break a}j=s>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}x=C(D+C(u*j));y=C(E+C(w*j));j=C(A+C(s*j))}H=F?s:H;I=K?u:I;J=e?w:J;P=C(L+L);Q=C(M+M);R=C(N+N);t[r+1040|0]=1;v[r+1048>>2]=256;v[r+1052>>2]=256;v[r+1044>>2]=r+16;S=v[c+8>>2];v[r+16>>2]=S;L=jx?D:x;N=E>y?E:y;j=j>A?A:j;x=D>2]+(d<<2)>>2];i=z[e>>2];n=z[e+12>>2];k=C(i+n);i=C(R+C(n-i));d:{if(!(C(k+i)>=y)|!(C(k-i)<=N)){break d}l=z[e+16>>2];m=z[e+4>>2];n=C(Q+C(l-m));l=C(m+l);m=C(D-l);o=C(E-k);k=C(C(w*m)-C(u*o));if(!(C(C(I*i)+C(J*n))>=(k>C(0)?k:C(-k)))|!(C(l+n)>=x)|!(C(l-n)<=M)){break d}p=C(H*n);k=z[e+20>>2];l=z[e+8>>2];n=C(P+C(k-l));k=C(l+k);q=C(A-k);l=C(C(u*q)-C(s*m));if(!(C(p+C(I*n))>=(l>C(0)?l:C(-l)))|!(C(k+n)>=j)|!(C(k-n)<=L)){break d}k=C(C(H*i)+C(J*n));i=C(C(s*o)-C(w*q));if(!(k>=(i>C(0)?i:C(-i)))){break d}k=z[f>>2];z[r+12>>2]=k;g=v[e+24>>2];if(!(g&1)){while(1){e=B(g>>>1|0,28)+S|0;i=z[e+28>>2];k=z[e+40>>2];n=C(i+k);i=C(R+C(k-i));l=z[e+44>>2];m=z[e+32>>2];k=C(Q+C(l-m));l=C(m+l);o=C(D-l);q=C(E-n);m=C(C(w*o)-C(u*q));g=C(n+i)>=y&C(n-i)<=N&C(C(I*i)+C(J*k))>=(m>C(0)?m:C(-m))&C(l+k)>=x&C(l-k)<=M;G=C(H*k);m=z[e+48>>2];p=z[e+36>>2];k=C(P+C(m-p));m=C(p+m);p=C(A-m);o=C(C(u*p)-C(s*o));O=C(C(H*i)+C(J*k));i=C(C(s*q)-C(w*p));g=g&C(G+C(I*k))>=(o>C(0)?o:C(-o))&C(m+k)>=j&C(m-k)<=L&O>=(i>C(0)?i:C(-i));k=z[e+16>>2];o=z[e+4>>2];i=C(Q+C(k-o));k=C(o+k);O=C(D-k);p=z[e>>2];G=z[e+12>>2];o=C(p+G);T=C(E-o);q=C(C(w*O)-C(u*T));p=C(R+C(G-p));F=C(o+p)>=y&C(o-p)<=N&C(C(I*p)+C(J*i))>=(q>C(0)?q:C(-q))&C(k+i)>=x&C(k-i)<=M;V=C(H*i);q=z[e+20>>2];G=z[e+8>>2];i=C(P+C(q-G));q=C(G+q);G=C(A-q);O=C(C(u*G)-C(s*O));F=F&C(V+C(I*i))>=(O>C(0)?O:C(-O))&C(q+i)>=j&C(q-i)<=L;p=C(C(H*p)+C(J*i));i=C(C(s*T)-C(w*G));F=F&p>=(i>C(0)?i:C(-i));e:{if(!(!F|!g)){g=C(C(C(m-q)*s)+C(C(C(n-o)*w)+C(u*C(l-k))))>C(0);v[v[r+1044>>2]+(d<<2)>>2]=e+B(g,28);e=e+B(!g,28)|0;d=d+1|0;if((d|0)!=(v[r+1052>>2]&2147483647)){break e}OD(r+16|0,d<<1);break e}if(!(g|F)){break d}e=F?e:e+28|0}g=v[e+24>>2];if(!(g&1)){continue}break}k=z[f>>2]}e=v[e+24>>2];F=e>>>1&15;if(!F){break d}e=v[c>>2]+(e>>>3&536870908)|0;g=F;while(1){U=v[e>>2];f:{if(F>>>0>=2){K=B(U,24)+b|0;i=z[K>>2];n=z[K+12>>2];l=C(i+n);i=C(R+C(n-i));if(!(C(l+i)>=y)|!(C(l-i)<=N)){break f}m=z[K+16>>2];o=z[K+4>>2];n=C(Q+C(m-o));m=C(o+m);o=C(D-m);q=C(E-l);l=C(C(w*o)-C(u*q));if(!(C(C(I*i)+C(J*n))>=(l>C(0)?l:C(-l)))|!(C(m+n)>=x)|!(C(m-n)<=M)){break f}G=C(H*n);l=z[K+20>>2];m=z[K+8>>2];n=C(P+C(l-m));l=C(m+l);p=C(A-l);m=C(C(u*p)-C(s*o));if(!(C(G+C(I*n))>=(m>C(0)?m:C(-m)))|!(C(l+n)>=j)|!(C(l-n)<=L)){break f}l=C(C(H*i)+C(J*n));i=C(C(s*q)-C(w*p));if(!(l>=(i>C(0)?i:C(-i)))){break f}}if(!(Ba[v[v[h>>2]>>2]](h,r+12|0,(U<<3)+a|0)|0)){break c}i=z[r+12>>2];if(!(i>2]=i;j=C(A+C(s*i));L=jx?D:x;y=C(E+C(w*i));N=E>y?E:y;j=j>A?A:j;x=D>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[r+1044>>2];if((b|0)==(r+16|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=r+1056|0;return a}function Xv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0);d=xa-160|0;xa=d;r=v[a+100>>2];a:{if(w[(r+c|0)- -64|0]==(b|0)){a=(x[r+18>>1]+r|0)+B(c,160)|0;y=z[a+168>>2];A=z[a+200>>2];D=z[a+232>>2];s=z[a+160>>2];t=z[a+192>>2];G=z[a+224>>2];c=(x[r+6>>1]+r|0)+(c<<5)|0;o=z[c+4>>2];H=z[a+164>>2];I=z[a+196>>2];J=z[a+228>>2];p=z[c+8>>2];q=z[c>>2];K=z[a+152>>2];L=z[a+184>>2];M=z[a+216>>2];N=z[a+144>>2];O=z[a+176>>2];P=z[a+208>>2];Q=z[e+24>>2];R=z[e+20>>2];S=z[e+16>>2];T=z[e+8>>2];U=z[e>>2];k=z[f+8>>2];i=z[c+20>>2];l=z[f+4>>2];n=z[c+24>>2];E=z[f+16>>2];m=C(C(C(k*i)-C(l*n))-E);V=C(-l);j=z[f>>2];u=z[c+16>>2];F=z[f+20>>2];n=C(C(C(j*n)-C(k*u))-F);i=C(C(l*u)-C(j*i));u=z[f+24>>2];l=C(i-u);i=C(V-C(C(z[a+148>>2]*m)+C(C(n*z[a+180>>2])+C(l*z[a+212>>2]))));z[d+116>>2]=z[e+4>>2]-i;j=C(C(-j)-C(C(N*m)+C(C(n*O)+C(l*P))));z[d+112>>2]=U-j;v[d+124>>2]=0;k=C(C(-k)-C(C(m*K)+C(C(n*L)+C(l*M))));z[d+120>>2]=T-k;z[d+100>>2]=R-C(C(C(-F)-C(C(m*H)+C(C(n*I)+C(l*J))))+C(C(p*j)-C(k*q)));z[d+96>>2]=S-C(C(C(-E)-C(C(m*s)+C(C(n*t)+C(l*G))))+C(C(o*k)-C(i*p)));v[d+108>>2]=0;z[d+104>>2]=Q-C(C(C(-u)-C(C(m*y)+C(C(n*A)+C(l*D))))+C(C(q*i)-C(j*o)));e=v[d+116>>2];v[d+16>>2]=v[d+112>>2];v[d+20>>2]=e;e=v[d+124>>2];v[d+24>>2]=v[d+120>>2];v[d+28>>2]=e;e=v[d+100>>2];v[d>>2]=v[d+96>>2];v[d+4>>2]=e;e=v[d+108>>2];v[d+8>>2]=v[d+104>>2];v[d+12>>2]=e;ww(d+128|0,r,b,d+16|0,d);b=v[d+132>>2];v[g>>2]=v[d+128>>2];v[g+4>>2]=b;b=v[d+140>>2];v[g+8>>2]=v[d+136>>2];v[g+12>>2]=b;b=v[d+148>>2];v[g+16>>2]=v[d+144>>2];v[g+20>>2]=b;b=v[d+156>>2];v[g+24>>2]=v[d+152>>2];v[g+28>>2]=b;y=z[c+24>>2];A=z[c+16>>2];D=z[c+20>>2];G=z[a+168>>2];H=z[a+160>>2];I=z[a+164>>2];J=z[a+152>>2];K=z[a+144>>2];L=z[a+148>>2];M=z[a+272>>2];N=z[a+240>>2];O=z[a+256>>2];t=z[a+200>>2];P=z[a+192>>2];Q=z[a+196>>2];R=z[a+184>>2];S=z[a+176>>2];T=z[a+180>>2];U=z[a+276>>2];E=z[a+244>>2];u=z[a+260>>2];F=z[a+232>>2];W=z[a+224>>2];X=z[a+228>>2];k=z[a+216>>2];Y=z[a+208>>2];j=z[c+4>>2];Z=z[a+212>>2];i=z[c+8>>2];s=z[c>>2];_=z[a+280>>2];$=z[a+248>>2];aa=z[a+264>>2];ba=z[g+8>>2];o=z[g+20>>2];p=z[g+24>>2];ca=z[g>>2];da=z[g+4>>2];q=z[g+16>>2];v[h+28>>2]=0;v[h+12>>2]=0;V=k;k=C(ba-C(C(s*o)-C(q*j)));j=C(ca-C(C(j*p)-C(o*i)));i=C(da-C(C(i*q)-C(p*s)));s=C(C(C(C(V*k)+C(C(Y*j)+C(Z*i)))+C(C(F*p)+C(C(W*q)+C(o*X))))+C(C(_*l)+C(C($*m)+C(n*aa))));z[h+24>>2]=p-s;t=C(C(C(C(R*k)+C(C(S*j)+C(i*T)))+C(C(t*p)+C(C(P*q)+C(o*Q))))+C(C(U*l)+C(C(E*m)+C(n*u))));z[h+20>>2]=o-t;m=C(C(C(C(J*k)+C(C(K*j)+C(L*i)))+C(C(G*p)+C(C(H*q)+C(o*I))))+C(C(M*l)+C(C(N*m)+C(n*O))));z[h+16>>2]=q-m;z[h+8>>2]=k-C(C(A*t)-C(m*D));z[h+4>>2]=i-C(C(y*m)-C(s*A));z[h>>2]=j-C(C(D*s)-C(t*y));break a}a=v[e+4>>2];v[d+80>>2]=v[e>>2];v[d+84>>2]=a;a=v[e+12>>2];v[d+88>>2]=v[e+8>>2];v[d+92>>2]=a;a=v[e+20>>2];v[d+64>>2]=v[e+16>>2];v[d+68>>2]=a;a=v[e+28>>2];v[d+72>>2]=v[e+24>>2];v[d+76>>2]=a;a=d+128|0;ww(a,r,b,d+80|0,d- -64|0);b=v[d+140>>2];v[g+8>>2]=v[d+136>>2];v[g+12>>2]=b;b=v[d+132>>2];v[g>>2]=v[d+128>>2];v[g+4>>2]=b;b=v[d+156>>2];v[g+24>>2]=v[d+152>>2];v[g+28>>2]=b;b=v[d+148>>2];v[g+16>>2]=v[d+144>>2];v[g+20>>2]=b;b=v[f+12>>2];v[d+56>>2]=v[f+8>>2];v[d+60>>2]=b;b=v[f+4>>2];v[d+48>>2]=v[f>>2];v[d+52>>2]=b;b=v[f+28>>2];v[d+40>>2]=v[f+24>>2];v[d+44>>2]=b;b=v[f+20>>2];v[d+32>>2]=v[f+16>>2];v[d+36>>2]=b;ww(a,r,c,d+48|0,d+32|0);a=v[d+132>>2];v[h>>2]=v[d+128>>2];v[h+4>>2]=a;a=v[d+140>>2];v[h+8>>2]=v[d+136>>2];v[h+12>>2]=a;a=v[d+148>>2];v[h+16>>2]=v[d+144>>2];v[h+20>>2]=a;a=v[d+156>>2];v[h+24>>2]=v[d+152>>2];v[h+28>>2]=a}xa=d+160|0}function Bx(a){a=a|0;var b=C(0),c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=C(0),T=C(0),U=C(0);qx(a,a+112|0,0);I=v[a+448>>2];if(I>>>0>=2){O=v[a+228>>2];P=v[a+180>>2];J=v[a+444>>2];L=v[a+372>>2];Q=v[a+432>>2];R=v[a+456>>2];t=1;while(1){M=(v[(B(t,80)+R|0)+72>>2]<<2)+P|0;a=(t<<4)+Q|0;e=z[a+12>>2];f=z[a+8>>2];i=z[a+4>>2];h=z[a>>2];N=t<<5;s=N+J|0;m=v[s+20>>2];k=z[m+16>>2];a=v[s+16>>2];l=z[m+24>>2];p=z[m+20>>2];E=z[m+52>>2];F=z[m+48>>2];G=z[m+44>>2];s=v[((v[s+24>>2]<<5)+J|0)+16>>2];S=z[s+16>>2];q=z[s+12>>2];r=z[s+8>>2];u=z[s+4>>2];x=z[s>>2];T=z[s+24>>2];U=z[s+20>>2];a:{b:{c:{d:{switch(w[m+270|0]){default:k=C(-d);l=C(-c);e=C(-g);break a;case 0:b=C(l+l);d=C(k+k);c=C(p+p);g=C(C(f*b)+C(C(h*d)+C(c*i)));j=C(C(e*e)+C(-.5));k=z[M>>2];m=B(t,76)+L|0;n=C(C(C(C(f*g)+C(C(b*j)+C(e*C(C(h*c)-C(d*i)))))-E)+C(k*z[m+20>>2]));o=C(C(C(C(i*g)+C(C(c*j)+C(e*C(C(f*d)-C(b*h)))))-F)+C(k*z[m+16>>2]));b=C(C(C(C(h*g)+C(C(d*j)+C(e*C(C(i*b)-C(c*f)))))-G)+C(k*z[m+12>>2]));break c;case 1:m=B(t,76)+L|0;b=z[m+8>>2];g=C(z[M>>2]*C(-.5));c=R9(g);b=C(b*c);d=C(c*z[m+4>>2]);c=C(c*z[m>>2]);g=H9(g);if(g>2];g=z[a+8>>2];j=z[a+4>>2];H=z[a>>2];m=O+N|0;b=z[m+8>>2];n=z[m>>2];y=z[m+4>>2];d=C(C(b*b)+C(C(n*n)+C(y*y)));e:{if(d>2]=e;i=C(h*f);z[a+8>>2]=i;h=C(l*f);z[a+4>>2]=h;f=C(k*f);z[a>>2]=f;k=C(n+n);l=C(j+j);p=C(o+o);q=C(C(i*k)+C(C(f*l)+C(p*h)));r=C(C(e*e)+C(-.5));z[a+24>>2]=T+C(C(i*q)+C(C(k*r)+C(e*C(C(f*p)-C(l*h)))));z[a+20>>2]=U+C(C(h*q)+C(C(p*r)+C(e*C(C(i*l)-C(k*f)))));z[a+16>>2]=S+C(C(f*q)+C(C(l*r)+C(e*C(C(h*k)-C(p*i)))));t=t+1|0;if((I|0)!=(t|0)){continue}break}}}function jT(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,k=C(0),l=0,m=C(0),n=0,p=C(0),q=0,r=0,s=0,t=0,u=C(0),w=C(0),x=C(0),y=0,D=C(0),E=C(0),F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=0,X=0,Y=0;d=xa-160|0;xa=d;l=A[c>>3];n=A[c+24>>3];J=(l+n)*.5;q=A[c+16>>3];r=A[c+40>>3];K=(q+r)*.5;s=A[c+8>>3];t=A[c+32>>3];L=(s+t)*.5;y=v[b>>2];if(y){G=v[b+8>>2];H=v[b+4>>2];P=a+32|0;k=C(r);p=C(q);Q=C(C(k-p)*C(.5));x=C(t);m=C(s);R=C(C(x-m)*C(.5));u=C(n);D=C(l);S=C(C(u-D)*C(.5));T=C(C(p+k)*C(.5));U=C(C(m+x)*C(.5));D=C(C(D+u)*C(.5));V=d+72|0;W=d+60|0;while(1){f=H+B(h,56)|0;k=z[f+44>>2];x=z[f+48>>2];m=z[f+36>>2];p=z[f+40>>2];l=A[f>>3];n=A[f+8>>3];z[d+68>>2]=A[f+16>>3];z[d+64>>2]=n;z[d+60>>2]=l;w=m;m=C(m+m);w=C(C(1)-C(w*m));u=C(p+p);M=C(p*u);z[d+56>>2]=w-M;E=C(u*k);N=C(m*x);z[d+52>>2]=E-N;O=C(m*k);u=C(u*x);z[d+48>>2]=O+u;z[d+44>>2]=E+N;E=w;w=k;k=C(k+k);w=C(w*k);z[d+40>>2]=E-w;p=C(m*p);k=C(k*x);z[d+36>>2]=p-k;z[d+32>>2]=O-u;z[d+28>>2]=p+k;z[d+24>>2]=C(C(1)-M)-w;z[d+72>>2]=z[f+24>>2];z[d+76>>2]=z[f+28>>2];z[d+80>>2]=z[f+32>>2];z[d+152>>2]=T;z[d+148>>2]=U;z[d+144>>2]=D;z[d+136>>2]=Q;z[d+132>>2]=R;z[d+128>>2]=S;v[d+120>>2]=1065353216;v[d+112>>2]=0;v[d+116>>2]=0;v[d+104>>2]=1065353216;v[d+108>>2]=0;v[d+96>>2]=0;v[d+100>>2]=0;v[d+88>>2]=1065353216;v[d+92>>2]=0;if(p$(V,W,d+24|0,d+128|0,d+144|0,d+88|0)){g=v[a+36>>2];e=g+23|0;i=v[a+40>>2]&2147483647;a:{if(e>>>0<=i>>>0){break a}I=i;i=i?i<<1:2;i=e>>>0>i>>>0?e:i;if(I>>>0>=i>>>0){break a}Aw(P,i);g=v[a+36>>2]}v[a+36>>2]=e;e=v[a+32>>2]+(g<<2)|0;v[e>>2]=0;g=v[G+(h<<2)>>2];o(+K);i=j(1)|0;X=e,Y=j(0)|0,v[X+28>>2]=Y;v[e+32>>2]=i;o(+L);i=j(1)|0;X=e,Y=j(0)|0,v[X+20>>2]=Y;v[e+24>>2]=i;o(+J);i=j(1)|0;X=e,Y=j(0)|0,v[X+12>>2]=Y;v[e+16>>2]=i;v[e+8>>2]=0;v[e+4>>2]=g;g=v[f+4>>2];v[e+36>>2]=v[f>>2];v[e+40>>2]=g;g=v[f+12>>2];v[e+44>>2]=v[f+8>>2];v[e+48>>2]=g;g=v[f+20>>2];v[e+52>>2]=v[f+16>>2];v[e+56>>2]=g;z[e+60>>2]=z[f+24>>2];z[e- -64>>2]=z[f+28>>2];z[e+68>>2]=z[f+32>>2];z[e+72>>2]=z[f+36>>2];z[e+76>>2]=z[f+40>>2];z[e+80>>2]=z[f+44>>2];z[e+84>>2]=z[f+48>>2]}h=h+1|0;if((y|0)!=(h|0)){continue}break}r=A[c+40>>3];q=A[c+16>>3];t=A[c+32>>3];s=A[c+8>>3];n=A[c+24>>3];l=A[c>>3]}y=v[b+20>>2];G=v[b+16>>2];i=v[b+12>>2];z[d+96>>2]=C(r-q)*C(.5);z[d+92>>2]=C(t-s)*C(.5);z[d+88>>2]=C(n-l)*C(.5);if(i){H=a+32|0;p=C((q+r)*.5);x=C((s+t)*.5);m=C((l+n)*.5);f=0;while(1){e=G+B(f,56)|0;n=A[e>>3];q=A[e+24>>3];b=n>2];l=+k;b:{if(A[c+24>>3]<(b?n:q)-l|A[c>>3]>(b?q:n)+l){break b}r=A[e+8>>3];s=A[e+32>>3];b=r>3]<(b?r:s)-l|A[c+8>>3]>(b?s:r)+l){break b}t=A[e+40>>3];F=A[e+16>>3];b=t>F;if(A[c+40>>3]<(b?F:t)-l|A[c+16>>3]>(b?t:F)+l){break b}z[d+152>>2]=F;z[d+148>>2]=r;z[d+144>>2]=n;z[d+136>>2]=t;z[d+132>>2]=s;z[d+128>>2]=q;z[d+16>>2]=p;z[d+12>>2]=x;z[d+8>>2]=m;v[d+56>>2]=1065353216;v[d+48>>2]=0;v[d+52>>2]=0;v[d+40>>2]=1065353216;v[d+44>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=1065353216;v[d+28>>2]=0;if(G_(d+144|0,d+128|0,d+8|0,d+88|0,d+24|0,0,0)>C(k*k)){break b}g=v[a+36>>2];b=g+23|0;h=v[a+40>>2]&2147483647;c:{if(b>>>0<=h>>>0){break c}I=h;h=h?h<<1:2;h=b>>>0>h>>>0?b:h;if(I>>>0>=h>>>0){break c}Aw(H,h);g=v[a+36>>2]}v[a+36>>2]=b;b=v[a+32>>2]+(g<<2)|0;v[b>>2]=1;g=v[y+(f<<2)>>2];o(+K);h=j(1)|0;X=b,Y=j(0)|0,v[X+28>>2]=Y;v[b+32>>2]=h;o(+L);h=j(1)|0;X=b,Y=j(0)|0,v[X+20>>2]=Y;v[b+24>>2]=h;o(+J);h=j(1)|0;X=b,Y=j(0)|0,v[X+12>>2]=Y;v[b+16>>2]=h;v[b+8>>2]=0;v[b+4>>2]=g;g=v[e+4>>2];v[b+36>>2]=v[e>>2];v[b+40>>2]=g;g=v[e+12>>2];v[b+44>>2]=v[e+8>>2];v[b+48>>2]=g;g=v[e+20>>2];v[b+52>>2]=v[e+16>>2];v[b+56>>2]=g;g=v[e+28>>2];v[b+60>>2]=v[e+24>>2];v[b+64>>2]=g;g=v[e+36>>2];v[b+68>>2]=v[e+32>>2];v[b+72>>2]=g;g=v[e+44>>2];v[b+76>>2]=v[e+40>>2];v[b+80>>2]=g;v[b+84>>2]=v[e+48>>2]}f=f+1|0;if((i|0)!=(f|0)){continue}break}}xa=d+160|0}function oP(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=xa-16|0;xa=g;k=c;c=v[37696];d=Ba[v[v[c>>2]+20>>2]](c)|0?37805:63804;d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,68,d,11777,1746)|0;c=d;v[c+12>>2]=0;v[c+16>>2]=0;i=b;v[c+8>>2]=b;j=a;v[c+4>>2]=a;v[c>>2]=0;v[c+52>>2]=0;v[c+56>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+48>>2]=-128;v[c+60>>2]=0;v[c+64>>2]=0;oG(c+12|0,16);if(!(v[c+44>>2]&2147483632)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?58041:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,64,b,16608,553)|0;e=v[d+36>>2];b=v[d+40>>2];if((b|0)>0){c=a+(b<<2)|0;b=a;while(1){v[b>>2]=v[e>>2];e=e+4|0;b=b+4|0;if(c>>>0>b>>>0){continue}break}e=v[d+36>>2]}if(!(!e|v[d+44>>2]<0)){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}v[d+44>>2]=16;v[d+36>>2]=a}if(!(v[d+32>>2]&2147483632)){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?57927:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,64,b,16608,553)|0;b=v[d+24>>2];c=v[d+28>>2];if((c|0)>0){e=a+(c<<2)|0;c=a;while(1){v[c>>2]=v[b>>2];b=b+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}b=v[d+24>>2]}if(!(!b|v[d+32>>2]<0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[d+32>>2]=16;v[d+24>>2]=a}a=v[d+4>>2];e=0;h=xa-16|0;xa=h;a:{if(!w[v[d+8>>2]+40|0]){f=v[a+2400>>2];a=v[f+288>>2];b:{if(a){break b}a=v[f+284>>2]+67|0;c:{if(!a){break c}b=v[37696];a=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,18373,180)|0;if(!a){break c}e=a+67&-64;v[e-4>>2]=e-a}v[h+8>>2]=e;a=v[f+268>>2];d:{if(a>>>0>=(v[f+272>>2]&2147483647)>>>0){UP(f+4|0,h+8|0);break d}v[v[f+264>>2]+(a<<2)>>2]=e;v[f+268>>2]=a+1}b=v[f+288>>2];c=(B(v[f+276>>2],192)+e|0)-192|0;if(e>>>0>c>>>0){a=b;break b}while(1){a=c;v[a>>2]=b;b=a;c=a-192|0;if(e>>>0<=c>>>0){continue}break}}v[f+288>>2]=v[a>>2];v[f+280>>2]=v[f+280>>2]+1;v[a+96>>2]=0;u[a+92>>1]=1;v[a+80>>2]=0;v[a+84>>2]=0;v[a+20>>2]=0;v[a+24>>2]=1;v[a+16>>2]=d;v[a+88>>2]=0;v[a>>2]=127452;J9(a+100|0,0,84);break a}f=v[a+2404>>2];a=v[f+288>>2];e:{if(a){break e}a=v[f+284>>2]+67|0;f:{if(!a){break f}b=v[37696];a=Ba[v[v[b+12>>2]+8>>2]](b+12|0,a,24422,18373,180)|0;if(!a){break f}e=a+67&-64;v[e-4>>2]=e-a}v[h+12>>2]=e;a=v[f+268>>2];g:{if(a>>>0>=(v[f+272>>2]&2147483647)>>>0){UP(f+4|0,h+12|0);break g}v[v[f+264>>2]+(a<<2)>>2]=e;v[f+268>>2]=a+1}b=v[f+288>>2];c=(B(v[f+276>>2],704)+e|0)-704|0;if(e>>>0>c>>>0){a=b;break e}while(1){a=c;v[a>>2]=b;b=a;c=a-704|0;if(e>>>0<=c>>>0){continue}break}}v[f+288>>2]=v[a>>2];v[f+280>>2]=v[f+280>>2]+1;v[a+96>>2]=0;u[a+92>>1]=1;v[a+80>>2]=0;v[a+84>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a+16>>2]=d;v[a+88>>2]=0;v[a>>2]=127872;J9(a+144|0,0,300);v[a+460>>2]=0;v[a+464>>2]=0;v[a+452>>2]=0;v[a+456>>2]=0;t[a+488|0]=1;v[a+468>>2]=-1;v[a+472>>2]=0;v[a+112>>2]=0;v[a+116>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+136>>2]=0;v[a+140>>2]=0;v[a+496>>2]=0;v[a+500>>2]=0;v[a+504>>2]=0;v[a+508>>2]=0;v[a+512>>2]=0;v[a+516>>2]=0;v[a+640>>2]=0;v[a+644>>2]=0;t[a+645|0]=0;t[a+646|0]=0;t[a+647|0]=0;t[a+648|0]=0;t[a+649|0]=0;t[a+650|0]=0;t[a+651|0]=0;t[a+652|0]=0;v[a+656>>2]=0;v[a+660>>2]=0;v[a+664>>2]=0;v[a+668>>2]=0}xa=h+16|0;v[d>>2]=a;c=v[j+1e3>>2];b=v[c+4>>2];h:{if(b){e=b-1|0;b=v[v[c>>2]+(e<<2)>>2];v[c+4>>2]=e;break h}b=v[c+12>>2];v[c+12>>2]=b+1}b=b<<7;zF(c+168|0,a,b);zF(c+640|0,a,b);v[d+48>>2]=b;a=v[d>>2];i:{if(!a){b9(v[37696],32,10053,71,65770,0);break i}t[a+93|0]=1;pG(d,v[k>>2],0,0);v[v[d+8>>2]>>2]=d;b=v[v[d+4>>2]+1004>>2];a=v[d>>2];v[a+28>>2]=0;v[a+32>>2]=0;v[a+20>>2]=b;v[a+36>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0;b=a- -64|0;v[b>>2]=0;v[b+4>>2]=0;v[a+60>>2]=i+4;v[a+72>>2]=0;v[a+76>>2]=0}a=d;j:{if(!v[a>>2]){a=sG(a);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break j}v[g+8>>2]=i;a=rh(j+1200|0,g+8|0,g+15|0);if(w[g+15|0]){break j}v[a>>2]=v[g+8>>2]}xa=g+16|0}function hD(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0);r=xa-1056|0;xa=r;j=z[e+8>>2];s=C(j+j);J=s>C(0);G=C(-s);j=z[e+4>>2];u=C(j+j);O=u>C(0);H=C(-u);j=z[e>>2];w=C(j+j);e=w>C(0);I=C(-w);K=z[g+8>>2];L=z[g+4>>2];M=z[g>>2];j=z[d+8>>2];A=C(j+j);j=z[d+4>>2];D=C(j+j);j=z[d>>2];E=C(j+j);j=z[f>>2];a:{if(j>=C(34028234663852886e22)){x=u==C(0)?D:u>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);y=w==C(0)?E:w>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);j=A;if(s==C(0)){break a}j=s>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}x=C(D+C(u*j));y=C(E+C(w*j));j=C(A+C(s*j))}G=J?s:G;H=O?u:H;I=e?w:I;P=C(K+K);Q=C(L+L);R=C(M+M);t[r+1040|0]=1;v[r+1048>>2]=256;v[r+1052>>2]=256;v[r+1044>>2]=r+16;v[r+16>>2]=v[c+588>>2];K=jx?D:x;M=E>y?E:y;j=j>A?A:j;x=D>2]+(d<<2)>>2];i=z[e+16>>2];n=z[e>>2];k=C(i+n);i=C(R+C(i-n));d:{if(!(C(k+i)>=y)|!(C(k-i)<=M)){break d}l=z[e+20>>2];m=z[e+4>>2];n=C(Q+C(l-m));l=C(l+m);m=C(D-l);o=C(E-k);k=C(C(w*m)-C(u*o));if(!(C(C(H*i)+C(I*n))>=(k>C(0)?k:C(-k)))|!(C(l+n)>=x)|!(C(l-n)<=L)){break d}p=C(G*n);k=z[e+24>>2];l=z[e+8>>2];n=C(P+C(k-l));k=C(k+l);q=C(A-k);l=C(C(u*q)-C(s*m));if(!(C(p+C(H*n))>=(l>C(0)?l:C(-l)))|!(C(k+n)>=j)|!(C(k-n)<=K)){break d}k=C(C(G*i)+C(I*n));i=C(C(s*o)-C(w*q));if(!(k>=(i>C(0)?i:C(-i)))){break d}k=z[f>>2];z[r+12>>2]=k;if(v[e+40>>2]){while(1){c=v[e+36>>2];i=z[c- -64>>2];k=z[c+48>>2];n=C(i+k);i=C(R+C(i-k));l=z[c+68>>2];m=z[c+52>>2];k=C(Q+C(l-m));l=C(l+m);o=C(D-l);q=C(E-n);m=C(C(w*o)-C(u*q));e=C(n+i)>=y&C(n-i)<=M&C(C(H*i)+C(I*k))>=(m>C(0)?m:C(-m))&C(l+k)>=x&C(l-k)<=L;F=C(G*k);m=z[c+72>>2];p=z[c+56>>2];k=C(P+C(m-p));m=C(m+p);p=C(A-m);o=C(C(u*p)-C(s*o));N=C(C(G*i)+C(I*k));i=C(C(s*q)-C(w*p));e=e&C(F+C(H*k))>=(o>C(0)?o:C(-o))&C(m+k)>=j&C(m-k)<=K&N>=(i>C(0)?i:C(-i));k=z[c+20>>2];o=z[c+4>>2];i=C(Q+C(k-o));k=C(k+o);N=C(D-k);p=z[c+16>>2];F=z[c>>2];o=C(p+F);S=C(E-o);q=C(C(w*N)-C(u*S));p=C(R+C(p-F));g=C(o+p)>=y&C(o-p)<=M&C(C(H*p)+C(I*i))>=(q>C(0)?q:C(-q))&C(k+i)>=x&C(k-i)<=L;T=C(G*i);q=z[c+24>>2];F=z[c+8>>2];i=C(P+C(q-F));q=C(q+F);F=C(A-q);N=C(C(u*F)-C(s*N));g=g&C(T+C(H*i))>=(N>C(0)?N:C(-N))&C(q+i)>=j&C(q-i)<=K;p=C(C(G*p)+C(I*i));i=C(C(s*S)-C(w*F));g=g&p>=(i>C(0)?i:C(-i));e:{if(!(!g|!e)){e=C(C(C(m-q)*s)+C(C(C(n-o)*w)+C(u*C(l-k))))>C(0);v[v[r+1044>>2]+(d<<2)>>2]=c+B(e,48);e=c+B(!e,48)|0;d=d+1|0;if((d|0)!=(v[r+1052>>2]&2147483647)){break e}gD(r+16|0,d<<1);break e}if(!(e|g)){break d}e=g?c:c+48|0}if(v[e+40>>2]){continue}break}k=z[f>>2]}c=v[e+36>>2];g=v[c>>2];if(!g){break d}e=c+4|0;c=g;while(1){O=v[e>>2];f:{if(g>>>0>=2){J=B(O,24)+b|0;i=z[J>>2];n=z[J+12>>2];l=C(i+n);i=C(R+C(n-i));if(!(C(l+i)>=y)|!(C(l-i)<=M)){break f}m=z[J+16>>2];o=z[J+4>>2];n=C(Q+C(m-o));m=C(o+m);o=C(D-m);q=C(E-l);l=C(C(w*o)-C(u*q));if(!(C(C(H*i)+C(I*n))>=(l>C(0)?l:C(-l)))|!(C(m+n)>=x)|!(C(m-n)<=L)){break f}F=C(G*n);l=z[J+20>>2];m=z[J+8>>2];n=C(P+C(l-m));l=C(m+l);p=C(A-l);m=C(C(u*p)-C(s*o));if(!(C(F+C(H*n))>=(m>C(0)?m:C(-m)))|!(C(l+n)>=j)|!(C(l-n)<=K)){break f}l=C(C(G*i)+C(I*n));i=C(C(s*q)-C(w*p));if(!(l>=(i>C(0)?i:C(-i)))){break f}}if(!(Ba[v[v[h>>2]>>2]](h,r+12|0,(O<<3)+a|0)|0)){break c}i=z[r+12>>2];if(!(i>2]=i;j=C(A+C(s*i));K=jx?D:x;y=C(E+C(w*i));M=E>y?E:y;j=j>A?A:j;x=D>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[r+1044>>2];if((b|0)==(r+16|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=r+1056|0;return a}function cw(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0);f=xa-240|0;xa=f;Jv(f,b,c,f+144|0);i=z[d>>2];h=z[d+4>>2];g=z[e>>2];j=z[d+8>>2];v[f+12>>2]=0;k=C(C(j*g)+z[f+8>>2]);z[f+8>>2]=k;h=C(C(h*g)+z[f+4>>2]);z[f+4>>2]=h;i=C(C(i*g)+z[f>>2]);z[f>>2]=i;j=z[d+20>>2];l=z[d+24>>2];n=z[d+16>>2];v[f+28>>2]=0;m=C(C(g*l)+z[f+24>>2]);z[f+24>>2]=m;j=C(C(g*j)+z[f+20>>2]);z[f+20>>2]=j;z[f+16>>2]=C(g*n)+z[f+16>>2];l=z[d+36>>2];n=z[d+40>>2];q=z[d+32>>2];v[f+44>>2]=0;F=C(C(g*n)+z[f+40>>2]);z[f+40>>2]=F;z[f+36>>2]=C(g*l)+z[f+36>>2];z[f+32>>2]=C(g*q)+z[f+32>>2];P=z[f+212>>2];Q=z[f+216>>2];R=z[f+224>>2];S=z[f+228>>2];T=z[f+232>>2];u=z[f+180>>2];w=z[f+184>>2];x=z[f+192>>2];y=z[f+196>>2];A=z[f+200>>2];n=z[f+164>>2];l=z[f+168>>2];U=z[f+208>>2];r=z[f+176>>2];q=z[f+144>>2];s=z[f+148>>2];t=z[f+152>>2];o=z[f+160>>2];v[f+140>>2]=0;v[f+124>>2]=0;v[f+108>>2]=0;v[f+92>>2]=0;v[f+76>>2]=0;g=C(K(C(G(C(C(1)/i),C(0)))));z[f+72>>2]=l*g;z[f+68>>2]=g*n;h=C(h*g);i=C(K(C(G(C(C(1)/C(j-C(h*h))),C(0)))));j=C(C(g*h)*i);z[f+104>>2]=C(A*i)-C(l*j);z[f+100>>2]=C(i*y)-C(j*n);z[f+96>>2]=C(i*x)-C(j*o);z[f+88>>2]=C(i*w)-C(t*j);z[f+84>>2]=C(i*u)-C(s*j);k=C(k*g);m=C(C(m-C(h*k))*i);h=C(K(C(G(C(C(1)/C(C(F-C(m*m))-C(k*k))),C(0)))));p=l;l=C(C(C(m*j)-C(g*k))*h);k=C(C(i*h)*C(-m));z[f+136>>2]=C(p*l)+C(C(A*k)+C(h*T));z[f+132>>2]=C(n*l)+C(C(k*y)+C(h*S));z[f+128>>2]=C(o*l)+C(C(x*k)+C(h*R));z[f+120>>2]=C(t*l)+C(C(Q*h)+C(w*k));z[f+116>>2]=C(s*l)+C(C(P*h)+C(u*k));v[f+60>>2]=0;z[f+64>>2]=g*o;z[f+56>>2]=g*t;z[f+52>>2]=g*s;z[f+48>>2]=g*q;z[f+80>>2]=C(i*r)-C(q*j);z[f+112>>2]=C(q*l)+C(C(U*h)+C(r*k));F=z[b- -64>>2];P=z[b+68>>2];Q=z[b+72>>2];R=z[b+80>>2];S=z[b+84>>2];T=z[b+88>>2];U=z[b+100>>2];W=z[b+104>>2];X=z[b+112>>2];Y=z[b+116>>2];Z=z[b+120>>2];H=z[b+128>>2];g=z[f+132>>2];I=z[b+132>>2];i=z[f+68>>2];h=z[f+100>>2];j=z[f+136>>2];l=z[f+104>>2];J=z[b+136>>2];k=z[f+72>>2];D=z[b+20>>2];E=z[b+24>>2];p=z[b+36>>2];L=z[b+40>>2];n=z[f+116>>2];M=z[b+52>>2];q=z[f+84>>2];s=z[f+120>>2];B=z[b+56>>2];t=z[f+88>>2];o=z[f+128>>2];m=z[f+96>>2];_=z[b>>2];$=z[b+4>>2];aa=z[b+8>>2];ba=z[b+16>>2];N=z[b+32>>2];u=z[f+112>>2];O=z[b+48>>2];w=z[f+48>>2];x=z[f+80>>2];y=z[f+52>>2];A=z[f+56>>2];V=z[b+96>>2];r=z[f+64>>2];v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;z[a+96>>2]=C(C(V-C(r*r))-C(m*m))-C(o*o);z[a+56>>2]=C(C(B-C(A*r))-C(t*m))-C(s*o);z[a+52>>2]=C(C(M-C(y*r))-C(q*m))-C(n*o);z[a+48>>2]=C(C(O-C(w*r))-C(x*m))-C(u*o);z[a+40>>2]=C(C(L-C(A*A))-C(t*t))-C(s*s);B=p;p=C(y*A);L=C(q*t);M=C(n*s);z[a+36>>2]=C(C(B-p)-L)-M;B=C(w*A);V=C(N-B);N=C(x*t);O=C(u*s);z[a+32>>2]=C(V-N)-O;z[a+24>>2]=C(C(E-p)-L)-M;z[a+20>>2]=C(C(D-C(y*y))-C(q*q))-C(n*n);D=C(w*y);E=C(x*q);p=C(u*n);z[a+16>>2]=C(C(ba-D)-E)-p;z[a+8>>2]=C(C(aa-B)-N)-O;z[a+4>>2]=C(C($-D)-E)-p;z[a>>2]=C(C(_-C(w*w))-C(x*x))-C(u*u);z[a+136>>2]=C(C(J-C(k*k))-C(l*l))-C(j*j);p=I;I=C(i*k);J=C(h*l);D=C(g*j);z[a+132>>2]=C(C(p-I)-J)-D;B=H;H=C(r*k);E=C(m*l);p=C(o*j);z[a+128>>2]=C(C(B-H)-E)-p;z[a+120>>2]=C(C(Z-I)-J)-D;z[a+116>>2]=C(C(Y-C(i*i))-C(h*h))-C(g*g);r=C(r*i);m=C(m*h);o=C(o*g);z[a+112>>2]=C(C(X-r)-m)-o;z[a+104>>2]=C(C(W-H)-E)-p;z[a+100>>2]=C(C(U-r)-m)-o;z[a+88>>2]=C(C(T-C(A*k))-C(t*l))-C(s*j);z[a+84>>2]=C(C(S-C(y*k))-C(q*l))-C(n*j);z[a+80>>2]=C(C(R-C(w*k))-C(x*l))-C(u*j);z[a+72>>2]=C(C(Q-C(A*i))-C(t*h))-C(s*g);z[a+68>>2]=C(C(P-C(y*i))-C(q*h))-C(n*g);z[a- -64>>2]=C(C(F-C(w*i))-C(x*h))-C(u*g);xa=f+240|0}function M1(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0,w=0,x=C(0),A=0,B=0,D=C(0),E=C(0),F=0,G=C(0);e=xa-160|0;xa=e;f=z[b>>2];h=z[b+4>>2];i=z[b+8>>2];v[e+156>>2]=0;z[e+152>>2]=i;z[e+148>>2]=h;z[e+144>>2]=f;l=z[b+16>>2];m=z[b+20>>2];g=z[b+12>>2];v[e+140>>2]=0;z[e+136>>2]=m;z[e+132>>2]=l;z[e+128>>2]=g;n=z[b+28>>2];o=z[b+32>>2];x=z[b+24>>2];v[e+124>>2]=0;z[e+120>>2]=o;z[e+116>>2]=n;z[e+112>>2]=x;v[e+108>>2]=0;p=C(m-i);q=C(x-f);D=C(o-i);g=C(g-f);m=C(C(p*q)-C(D*g));E=m;r=g;g=C(n-h);s=q;q=C(l-h);l=C(C(r*g)-C(s*q));g=C(C(q*D)-C(g*p));m=C(C(1)/C(K(C(C(l*l)+C(C(g*g)+C(m*m))))));p=C(E*m);z[e+100>>2]=p;g=C(g*m);z[e+96>>2]=g;l=C(l*m);z[e+104>>2]=l;b=v[a+3664>>2];a:{if(C(C(C(z[b+8>>2]*l)+C(C(z[b>>2]*g)+C(p*z[b+4>>2])))-C(C(i*l)+C(C(f*g)+C(h*p))))>2];if(!(i>2])){break a}j=a+3648|0;b:{c:{d:{e:{h=z[e+64>>2];if(h>2];if(fC(.9999989867210388))){break e}if(!(d&48)){break c}break d}f=z[e+48>>2];if(h>C(.9999989867210388)){if(d&24){break d}if(f=C(.9998999834060669)){break d}break c}if(!(d&32)){break c}}if(i==C(0)){b=v[e+108>>2];v[e+24>>2]=v[e+104>>2];v[e+28>>2]=b;b=v[e+100>>2];v[e+16>>2]=v[e+96>>2];v[e+20>>2]=b;break b}b=v[a+3664>>2];i=z[b+56>>2];g=z[b+72>>2];l=z[b+52>>2];p=z[b+68>>2];m=z[b+48>>2];q=z[b+64>>2];v[e+28>>2]=0;s=i;r=C(g-i);i=z[e+80>>2];g=C(C(1)-C(h+f));o=C(C(s+C(r*i))-C(C(g*z[e+152>>2])+C(C(o*f)+C(h*z[e+136>>2]))));s=o;r=C(o*o);o=C(C(m+C(C(q-m)*i))-C(C(z[e+144>>2]*g)+C(C(x*f)+C(h*z[e+128>>2]))));f=C(C(l+C(C(p-l)*i))-C(C(z[e+148>>2]*g)+C(C(n*f)+C(h*z[e+132>>2]))));h=C(C(1)/C(K(C(r+C(C(o*o)+C(f*f))))));z[e+24>>2]=s*h;z[e+20>>2]=f*h;z[e+16>>2]=o*h;break b}b=v[e+108>>2];v[e+24>>2]=v[e+104>>2];v[e+28>>2]=b;b=v[e+100>>2];v[e+16>>2]=v[e+96>>2];v[e+20>>2]=b}u=v[a+2324>>2];d=e+144|0;k=e+128|0;F=e+112|0;b=e+16|0;t=v[a+3664>>2];A=t+48|0;B=t- -64|0;t=a+2324|0;K1(d,k,F,e+96|0,b,c,A,B,a+3632|0,v[a+2320>>2],t);w=v[a+3664>>2];A=w+48|0;w=w- -64|0;B=v[a+2320>>2];I1(A,w,j,b,c,d,k,B,t);I1(A,w,j,b,c,k,F,B,t);I1(A,w,j,b,c,d,F,B,t);d=v[a+2324>>2];if((u|0)==(d|0)){break a}v[e>>2]=2139095039;if(d>>>0>u>>>0){c=u;while(1){b=v[a+2320>>2]+(c<<6)|0;n=z[b+44>>2];f=z[b+8>>2];h=z[b>>2];i=z[b+4>>2];o=z[a+2304>>2];x=z[a+2288>>2];l=z[a+2256>>2];m=z[a+2272>>2];g=z[a+2308>>2];p=z[a+2292>>2];q=z[a+2260>>2];D=z[a+2276>>2];G=z[a+2312>>2];E=z[a+2296>>2];r=z[a+2264>>2];s=z[a+2280>>2];v[b+12>>2]=0;z[b+8>>2]=G+C(C(E*f)+C(C(r*h)+C(i*s)));z[b+4>>2]=g+C(C(p*f)+C(C(q*h)+C(i*D)));z[b>>2]=o+C(C(x*f)+C(C(l*h)+C(i*m)));f=z[e>>2];z[e>>2]=f>n?n:f;c=c+1|0;d=v[a+2324>>2];if(c>>>0>>0){continue}break}}if(d>>>0>u>>>0){b=u;while(1){c=b;b=b+1|0;if(d>>>0>b>>>0){c=v[a+2320>>2]+(c<<6)|0;f=z[c+16>>2];h=z[c+24>>2];i=z[c+20>>2];c=b;while(1){k=v[a+2320>>2];j=k+(c<<6)|0;n=C(z[j+24>>2]-h);r=C(n*n);n=C(z[j+16>>2]-f);s=C(n*n);n=C(z[j+20>>2]-i);if(z[a+2240>>2]>C(r+C(s+C(n*n)))){d=(k+(d<<6)|0)+-64|0;k=v[d+4>>2];v[j>>2]=v[d>>2];v[j+4>>2]=k;v[j+48>>2]=v[d+48>>2];k=v[d+44>>2];v[j+40>>2]=v[d+40>>2];v[j+44>>2]=k;k=v[d+36>>2];v[j+32>>2]=v[d+32>>2];v[j+36>>2]=k;k=v[d+28>>2];v[j+24>>2]=v[d+24>>2];v[j+28>>2]=k;k=v[d+20>>2];v[j+16>>2]=v[d+16>>2];v[j+20>>2]=k;k=v[d+12>>2];v[j+8>>2]=v[d+8>>2];v[j+12>>2]=k;d=v[t>>2]-1|0;v[t>>2]=d;c=c-1|0}c=c+1|0;if(c>>>0>>0){continue}break}}if(b>>>0>>0){continue}break}}D1(a,e+16|0,e,u);if(y[a+2324>>2]<=15){break a}A1(a,3,1)}xa=e+160|0}function SD(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=0,W=C(0),X=C(0);p=xa-1056|0;xa=p;m=z[e+8>>2];m=C(m+m);G=m>C(0);H=C(-m);n=z[e+4>>2];n=C(n+n);I=n>C(0);J=C(-n);o=z[e>>2];o=C(o+o);e=o>C(0);L=C(-o);q=z[d+8>>2];q=C(q+q);r=z[d+4>>2];r=C(r+r);s=z[d>>2];s=C(s+s);A=z[f>>2];a:{if(A>=C(34028234663852886e22)){w=n==C(0)?r:n>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);x=o==C(0)?s:o>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);D=q;if(m==C(0)){break a}D=m>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}w=C(r+C(n*A));x=C(s+C(o*A));D=C(q+C(m*A))}A=G?m:H;H=I?n:J;J=e?o:L;t[p+1040|0]=1;v[p+1048>>2]=256;v[p+1052>>2]=256;v[p+1044>>2]=p+16;R=v[c+8>>2];v[p+16>>2]=R;L=q>D?q:D;P=r>w?r:w;Q=s>x?s:x;D=q>2]+(G<<2)>>2];k=z[e+12>>2];i=z[e>>2];j=C(k-i);i=C(i+k);d:{if(!(C(j+i)>=x)|!(C(i-j)<=Q)){break d}h=z[e+16>>2];l=z[e+4>>2];k=C(h-l);h=C(l+h);l=C(r-h);y=C(s-i);i=C(C(o*l)-C(n*y));if(!(C(C(H*j)+C(J*k))>=(i>C(0)?i:C(-i)))|!(C(k+h)>=w)|!(C(h-k)<=P)){break d}u=C(A*k);i=z[e+20>>2];h=z[e+8>>2];k=C(i-h);i=C(h+i);E=C(q-i);h=C(C(n*E)-C(m*l));if(!(C(u+C(H*k))>=(h>C(0)?h:C(-h)))|!(C(k+i)>=D)|!(C(i-k)<=L)){break d}h=C(C(A*j)+C(J*k));j=C(C(m*y)-C(o*E));if(!(h>=(j>C(0)?j:C(-j)))){break d}i=z[f>>2];z[p+12>>2]=i;d=v[e+24>>2];if(!(d&1)){while(1){d=B(d>>>1|0,28)+R|0;i=z[d+40>>2];h=z[d+28>>2];j=C(i-h);l=z[d+44>>2];y=z[d+32>>2];k=C(l-y);l=C(y+l);S=C(r-l);y=C(h+i);T=C(s-y);E=C(C(o*S)-C(n*T));M=z[d+12>>2];u=z[d>>2];i=C(M-u);K=z[d+16>>2];F=z[d+4>>2];h=C(K-F);K=C(F+K);F=C(r-K);M=C(u+M);U=C(s-M);u=C(C(o*F)-C(n*U));e=C(M-i)<=Q&C(i+M)>=x&C(C(H*i)+C(J*h))>=(u>C(0)?u:C(-u))&C(h+K)>=w&C(K-h)<=P;W=C(A*h);u=z[d+20>>2];N=z[d+8>>2];h=C(u-N);u=C(N+u);N=C(q-u);F=C(C(n*N)-C(m*F));X=C(C(A*i)+C(J*h));i=C(C(m*U)-C(o*N));e=e&C(W+C(H*h))>=(F>C(0)?F:C(-F))&C(h+u)>=D&C(u-h)<=L&X>=(i>C(0)?i:C(-i));I=C(y-j)<=Q&C(j+y)>=x&C(C(H*j)+C(J*k))>=(E>C(0)?E:C(-E))&C(k+l)>=w&C(l-k)<=P;F=C(A*k);i=z[d+48>>2];h=z[d+36>>2];k=C(i-h);i=C(h+i);E=C(q-i);h=C(C(n*E)-C(m*S));N=C(C(A*j)+C(J*k));j=C(C(m*T)-C(o*E));I=I&C(F+C(H*k))>=(h>C(0)?h:C(-h))&C(k+i)>=D&C(i-k)<=L&N>=(j>C(0)?j:C(-j));e:{if(!(!e|!I)){e=C(C(C(i-u)*m)+C(C(C(y-M)*o)+C(n*C(l-K))))>C(0);v[v[p+1044>>2]+(G<<2)>>2]=d+B(e,28);e=d+B(!e,28)|0;G=G+1|0;if((G|0)!=(v[p+1052>>2]&2147483647)){break e}OD(p+16|0,G<<1);break e}if(!(e|I)){break d}e=e?d:d+28|0}d=v[e+24>>2];if(!(d&1)){continue}break}i=z[f>>2]}e=v[e+24>>2];d=e>>>1&15;if(!d){break d}e=v[c>>2]+(e>>>3&536870908)|0;I=d;while(1){V=v[e>>2];f:{if(d>>>0>=2){O=B(V,24)+b|0;k=z[O+12>>2];h=z[O>>2];j=C(k-h);h=C(h+k);if(!(C(j+h)>=x)|!(C(h-j)<=Q)){break f}l=z[O+16>>2];y=z[O+4>>2];k=C(l-y);l=C(y+l);y=C(r-l);E=C(s-h);h=C(C(o*y)-C(n*E));if(!(C(C(H*j)+C(J*k))>=(h>C(0)?h:C(-h)))|!(C(k+l)>=w)|!(C(l-k)<=P)){break f}u=C(A*k);h=z[O+20>>2];l=z[O+8>>2];k=C(h-l);h=C(l+h);K=C(q-h);l=C(C(n*K)-C(m*y));if(!(C(u+C(H*k))>=(l>C(0)?l:C(-l)))|!(C(k+h)>=D)|!(C(h-k)<=L)){break f}h=C(C(A*j)+C(J*k));j=C(C(m*E)-C(o*K));if(!(h>=(j>C(0)?j:C(-j)))){break f}}if(!(Ba[v[v[g>>2]>>2]](g,p+12|0,(V<<3)+a|0)|0)){break c}j=z[p+12>>2];if(!(j>2]=j;w=C(q+C(m*j));L=q>w?q:w;x=C(r+C(n*j));P=r>x?r:x;j=C(s+C(o*j));Q=js?s:j}e=e+4|0;I=I-1|0;if(I){continue}break}}d=G;G=d-1|0;if(d){continue}break}b=1;break b}b=0}a=v[p+1052>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=v[p+1044>>2];if((a|0)==(p+16|0)|!a){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=p+1056|0;return b}function j3(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=C(0),p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=C(0),y=0,A=0,D=C(0),E=C(0),F=0,G=0,I=C(0),J=C(0);g=B(b,12);if(g){n=v[37696]+12|0;t=Ba[v[v[n>>2]+8>>2]](n,g,24422,8181,79)|0}n=B(d,12);if(n){h=v[37696]+12|0;A=Ba[v[v[h>>2]+8>>2]](h,n,24422,8181,82)|0}n=d<<2;if(n){h=v[37696]+12|0;n=Ba[v[v[h>>2]+8>>2]](h,n,24422,8181,84)|0}else{n=0}a:{if(f!=C(0)){g=0;h=b<<2;if(h){j=v[37696]+12|0;w=Ba[v[v[j>>2]+8>>2]](j,h,24422,8181,89)|0}if(!b){break a}f=C(C(1)/f);while(1){v[(g<<2)+w>>2]=g;j=B(g,12);h=j+c|0;x=z[h>>2];o=z[h+4>>2];j=j+t|0;z[j+8>>2]=H(C(C(z[h+8>>2]*f)+C(.5)));z[j+4>>2]=H(C(C(o*f)+C(.5)));z[j>>2]=H(C(C(x*f)+C(.5)));g=g+1|0;if((g|0)!=(b|0)){continue}break}break a}I9(t,c,g)}g=b>>>0>>0?d:b;h=g>>>1|g;h=h>>>2|h;h=h>>>4|h;h=h>>>8|h;F=h>>>16|h;h=F+1|0;g=g+h<<2;if(g){j=v[37696]+12|0;g=Ba[v[v[j>>2]+8>>2]](j,g,24422,8181,108)|0}else{g=0}u=h<<2;m=J9(g,255,u);g=b<<2;if(g){h=v[37696]+12|0;i=Ba[v[v[h>>2]+8>>2]](h,g,24422,8181,113)|0}else{i=0}j=J9(i,255,g);q=B(d,3);b:{if(!q){break b}g=0;if((q|0)!=1){k=q&-2;h=0;while(1){r=g<<2;i=v[r+e>>2];if(i>>>0>>0){v[j+(i<<2)>>2]=0}r=v[(r|4)+e>>2];if(r>>>0>>0){v[j+(r<<2)>>2]=0}g=g+2|0;h=h+2|0;if((k|0)!=(h|0)){continue}break}}if(!(q&1)){break b}g=v[(g<<2)+e>>2];if(g>>>0>=b>>>0){break b}v[j+(g<<2)>>2]=0}r=m+u|0;q=0;h=0;if(b){k=0;while(1){i=j+(k<<2)|0;c:{if(v[i>>2]==-1){break c}g=B(k,12)+t|0;f=z[g+4>>2];x=z[g>>2];o=z[g+8>>2];d:{s=v[g>>2];y=v[g+4>>2];G=v[g+8>>2];g=(s+B(y,11)|0)+B(G,2147483631)|0;l=g&2147483647;l=m+(((l>>>12^g^l>>>22)&F)<<2)|0;g=v[l>>2];if((g|0)!=-1){while(1){p=B(g,12)+t|0;if(!(x!=z[p>>2]|f!=z[p+4>>2])&o==z[p+8>>2]){break d}g=v[r+(g<<2)>>2];if((g|0)!=-1){continue}break}}v[i>>2]=h;g=B(h,12)+t|0;v[g+8>>2]=G;v[g+4>>2]=y;v[g>>2]=s;if(w){v[(h<<2)+w>>2]=k}v[r+(h<<2)>>2]=v[l>>2];v[l>>2]=h;h=h+1|0;break c}v[i>>2]=g}k=k+1|0;if((k|0)!=(b|0)){continue}break}}if(d){g=0;while(1){k=v[e>>2];e:{if(k>>>0>=b>>>0){break e}i=v[e+4>>2];if(i>>>0>=b>>>0){break e}l=v[e+8>>2];if(l>>>0>=b>>>0){break e}p=B(k,12)+c|0;f=z[p>>2];y=B(i,12)+c|0;x=C(f-z[y>>2]);o=z[p+4>>2];s=B(l,12)+c|0;D=C(o-z[s+4>>2]);f=C(f-z[s>>2]);o=C(o-z[y+4>>2]);E=C(C(x*D)-C(f*o));I=C(E*E);J=o;o=z[p+8>>2];E=C(o-z[s+8>>2]);o=C(o-z[y+8>>2]);D=C(C(J*E)-C(D*o));f=C(C(o*f)-C(E*x));if(C(I+C(C(D*D)+C(f*f)))==C(0)){break e}k=v[j+(k<<2)>>2];i=v[j+(i<<2)>>2];if((k|0)==(i|0)){break e}l=v[j+(l<<2)>>2];if((l|0)==(i|0)|(k|0)==(l|0)){break e}p=B(q,12)+A|0;v[p>>2]=k;v[p+8>>2]=l;v[p+4>>2]=i;v[(q<<2)+n>>2]=g;q=q+1|0}e=e+12|0;g=g+1|0;if((g|0)!=(d|0)){continue}break}}if(j){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,j)}u=J9(m,255,u);f:{g:{if(q){d=1;e=0;b=0;while(1){j=B(e,12)+A|0;k=v[j+8>>2];p=v[j>>2];l=v[j+4>>2];m=p-(l+k|0)^k>>>13;i=l-(k+m|0)^m<<8;g=k-(m+i|0)^i>>>13;s=i;i=m-(g+i|0)^g>>>12;m=s-(i+g|0)^i<<16;g=g-(i+m|0)^m>>>5;i=i-(g+m|0)^g>>>3;s=g;g=m-(g+i|0)^i<<10;m=u+(((s-(g+i|0)^g>>>15)&F)<<2)|0;g=v[m>>2];h:{if((g|0)!=-1){while(1){i=B(g,12)+A|0;if(!((p|0)!=v[i>>2]|(l|0)!=v[i+4>>2])&(k|0)==v[i+8>>2]){break h}g=v[r+(g<<2)>>2];if((g|0)!=-1){continue}break}}k=b<<2;i=v[(e<<2)+n>>2];v[k+n>>2]=i;g=B(b,12)+A|0;v[g+8>>2]=v[j+8>>2];l=v[j+4>>2];v[g>>2]=v[j>>2];v[g+4>>2]=l;v[k+r>>2]=v[m>>2];v[m>>2]=b;d=(b|0)==(i|0)&d;b=b+1|0}e=e+1|0;if((q|0)!=(e|0)){continue}break}break g}b=0;d=1;if(!u){break f}}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,u)}if(w){if(h){g=0;while(1){e=B(g,12)+t|0;j=B(v[(g<<2)+w>>2],12)+c|0;z[e>>2]=z[j>>2];z[e+4>>2]=z[j+4>>2];z[e+8>>2]=z[j+8>>2];g=g+1|0;if((h|0)!=(g|0)){continue}break}}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,w)}v[a+12>>2]=A;v[a+8>>2]=t;v[a+4>>2]=b;v[a>>2]=h;if(!d){v[a+16>>2]=n;return a}if(n){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,n)}v[a+16>>2]=0;return a}function _X(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0);c=xa-288|0;xa=c;A=z[a+4>>2];y=z[a+8>>2];v[c+272>>2]=0;v[c+264>>2]=0;v[c+268>>2]=0;v[c+256>>2]=0;v[c+260>>2]=0;K=z[d+20>>2];F=z[b+20>>2];L=z[d+24>>2];G=z[b+24>>2];n=z[e+52>>2];D=z[e+56>>2];T=z[f+4>>2];U=z[f>>2];V=z[f+8>>2];M=z[d+16>>2];B=z[b+16>>2];s=z[d>>2];l=z[b+8>>2];m=z[d+8>>2];k=z[b>>2];r=z[d+12>>2];p=z[b+4>>2];q=z[d+4>>2];w=z[b+12>>2];o=z[e+48>>2];v[c+252>>2]=0;z[c+248>>2]=D;z[c+244>>2]=n;t[c+224|0]=0;v[c+220>>2]=3;v[c+192>>2]=0;v[c+196>>2]=0;v[c+200>>2]=0;v[c+204>>2]=0;z[c+240>>2]=o;n=n>=o?o:n;n=n<=D?n:D;D=C(n*C(.05000000074505806));z[c+216>>2]=D;z[c+212>>2]=D;z[c+208>>2]=n*C(.15000000596046448);v[c+172>>2]=0;v[c+156>>2]=0;D=C(-s);B=C(B-M);F=C(F-K);G=C(G-L);N=C(C(C(D*B)-C(F*q))-C(m*G));n=C(C(r*r)+C(-.5));o=C(C(C(r*C(C(q*B)-C(s*F)))+C(n*G))-C(m*N));J=C(o+o);z[c+104>>2]=J;o=C(C(C(k*q)-C(s*p))+C(C(l*r)-C(w*m)));H=C(C(C(p*m)-C(q*l))+C(C(k*r)-C(w*s)));E=C(H+H);O=C(o*E);I=C(C(w*r)-C(C(C(D*k)-C(p*q))-C(m*l)));k=C(C(C(l*s)-C(m*k))+C(C(p*r)-C(w*q)));p=C(k+k);w=C(I*p);H=C(C(1)-C(H*E));P=C(k*p);l=C(y*C(0));Q=C(o*p);R=C(I*E);S=C(C(C(H-P)*l)+C(C(y*C(O-w))+C(l*C(Q+R))));z[c+168>>2]=J-S;p=C(C(C(n*F)+C(r*C(C(s*G)-C(m*B))))-C(q*N));p=C(p+p);z[c+100>>2]=p;E=C(k*E);k=C(o+o);I=C(I*k);o=C(o*k);k=C(C(C(Q-R)*l)+C(C(y*C(E+I))+C(l*C(H-o))));z[c+164>>2]=p-k;z[c+152>>2]=J+S;z[c+148>>2]=p+k;z[c+176>>2]=A;v[c+108>>2]=0;v[c+124>>2]=4;t[c+128|0]=1;z[c+120>>2]=A;z[c+116>>2]=A;z[c+112>>2]=A;k=C(C(C(n*B)+C(r*C(C(m*F)-C(q*G))))-C(s*N));k=C(k+k);z[c+96>>2]=k;l=C(C(C(O+w)*l)+C(C(y*C(C(C(1)-P)-o))+C(l*C(E-I))));z[c+160>>2]=k-l;z[c+144>>2]=k+l;v[c+92>>2]=0;l=C(V*g);y=C(U*g);w=C(T*g);o=C(C(m*l)+C(C(s*y)+C(q*w)));B=C(C(m*o)+C(C(l*n)-C(r*C(C(s*w)-C(y*q)))));z[c+88>>2]=B+B;B=C(C(q*o)+C(C(w*n)-C(r*C(C(m*y)-C(l*s)))));z[c+84>>2]=B+B;l=C(C(s*o)+C(C(y*n)-C(r*C(C(q*l)-C(w*m)))));z[c+80>>2]=l+l;a=x[i>>1];v[c+28>>2]=0;z[c+24>>2]=J-z[c+200>>2];z[c+20>>2]=p-z[c+196>>2];z[c+16>>2]=k-z[c+192>>2];v[c+8>>2]=141148;v[c+12>>2]=c+96;v[c>>2]=141808;v[c+4>>2]=c+192;a=a&512;b=XX(c+8|0,c,c+16|0,c+256|0,c+80|0,c- -64|0,c+32|0,c+48|0,C(A+j),a>>>9|0);a:{if(!b){break a}j=C(-m);A=C(-q);u[h+12>>1]=2;B=z[c+64>>2];if(B<=z[c+272>>2]){if(a){u[h+12>>1]=3;g=z[c+56>>2];l=z[c+48>>2];y=z[c+52>>2];k=z[c+40>>2];p=z[c+32>>2];w=z[c+36>>2];z[h+40>>2]=B;o=C(C(m*k)+C(C(s*p)+C(q*w)));z[h+36>>2]=C(C(C(r*C(C(s*w)+C(p*A)))+C(n*k))+C(m*o))*C(-2);z[h+32>>2]=C(C(q*o)+C(C(n*w)+C(r*C(C(m*p)+C(k*D)))))*C(-2);z[h+28>>2]=C(C(s*o)+C(C(n*p)+C(r*C(C(q*k)+C(w*j)))))*C(-2);k=C(C(r*C(C(s*y)+C(l*A)))+C(n*g));A=C(C(m*g)+C(C(s*l)+C(q*y)));k=C(k+C(m*A));z[h+24>>2]=L+C(k+k);m=C(C(q*A)+C(C(n*y)+C(r*C(C(m*l)+C(g*D)))));z[h+20>>2]=K+C(m+m);g=C(C(s*A)+C(C(n*l)+C(r*C(C(q*g)+C(y*j)))));z[h+16>>2]=M+C(g+g);break a}v[h+40>>2]=0;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break a}u[h+12>>1]=3;l=z[c+56>>2];y=z[c+48>>2];k=z[c+52>>2];p=z[c+40>>2];w=z[c+32>>2];o=z[c+36>>2];z[h+40>>2]=B*g;g=C(C(m*p)+C(C(s*w)+C(q*o)));z[h+36>>2]=C(C(C(r*C(C(s*o)+C(w*A)))+C(n*p))+C(m*g))*C(-2);z[h+32>>2]=C(C(q*g)+C(C(n*o)+C(r*C(C(m*w)+C(p*D)))))*C(-2);z[h+28>>2]=C(C(s*g)+C(C(n*w)+C(r*C(C(q*p)+C(o*j)))))*C(-2);g=C(C(m*l)+C(C(s*y)+C(q*k)));A=C(C(C(r*C(C(s*k)+C(y*A)))+C(n*l))+C(m*g));z[h+24>>2]=L+C(A+A);m=C(C(q*g)+C(C(n*k)+C(r*C(C(m*y)+C(l*D)))));z[h+20>>2]=K+C(m+m);g=C(C(s*g)+C(C(n*y)+C(r*C(C(q*l)+C(k*j)))));z[h+16>>2]=M+C(g+g)}xa=c+288|0;return b|0}function UY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0);k=xa-384|0;xa=k;b=v[b>>2];a=v[a>>2];v[k+72>>2]=0;v[k+76>>2]=0;v[k+64>>2]=0;v[k+68>>2]=0;t[k+96|0]=0;v[k+92>>2]=3;j=z[a+8>>2];l=z[a+12>>2];p=z[a+4>>2];v[k+124>>2]=0;z[k+120>>2]=l;z[k+116>>2]=j;z[k+112>>2]=p;j=j>=p?p:j;j=j<=l?j:l;z[k+88>>2]=j*C(.05000000074505806);z[k+84>>2]=j*C(.004999999888241291);z[k+80>>2]=j*C(.009999999776482582);v[k+8>>2]=0;v[k+12>>2]=0;v[k>>2]=0;v[k+4>>2]=0;t[k+32|0]=0;v[k+28>>2]=3;j=z[b+8>>2];l=z[b+12>>2];p=z[b+4>>2];v[k+60>>2]=0;z[k+56>>2]=l;z[k+52>>2]=j;z[k+48>>2]=p;j=j>=p?p:j;j=j<=l?j:l;z[k+24>>2]=j*C(.05000000074505806);z[k+20>>2]=j*C(.004999999888241291);z[k+16>>2]=j*C(.009999999776482582);v[k+376>>2]=0;v[k+380>>2]=0;v[k+368>>2]=0;v[k+372>>2]=0;H=z[f+20>>2];D=z[e+20>>2];B=z[f+24>>2];E=z[e+24>>2];n=z[c+8>>2];r=z[c>>2];s=z[c+4>>2];q=z[c+12>>2];p=z[d+12>>2];w=z[d>>2];I=z[f+16>>2];F=z[e+16>>2];j=z[d+4>>2];l=z[d+8>>2];v[k+364>>2]=0;v[k+348>>2]=0;v[k+332>>2]=0;G=C(-w);m=C(F-I);o=C(D-H);x=C(E-B);A=C(C(C(G*m)-C(o*j))-C(l*x));y=C(C(p*p)+C(-.5));u=C(C(C(p*C(C(j*m)-C(w*o)))+C(y*x))-C(l*A));z[k+360>>2]=u+u;u=C(C(C(y*o)+C(p*C(C(w*x)-C(l*m))))-C(j*A));z[k+356>>2]=u+u;a=k+352|0;m=C(C(C(y*m)+C(p*C(C(l*o)-C(j*x))))-C(w*A));z[a>>2]=m+m;o=C(C(C(s*l)-C(j*n))+C(C(r*p)-C(q*w)));m=C(o+o);x=C(C(C(n*w)-C(l*r))+C(C(s*p)-C(q*j)));A=C(x+x);u=C(C(1)-C(o*m));J=C(x*A);z[k+344>>2]=u-J;o=C(C(C(r*j)-C(w*s))+C(C(n*p)-C(q*l)));K=C(o*A);n=C(C(q*p)-C(C(C(G*r)-C(s*j))-C(l*n)));r=C(n*m);z[k+340>>2]=K-r;s=C(o*m);q=C(n*A);z[k+336>>2]=s+q;z[k+328>>2]=K+r;r=C(o+o);o=C(o*r);z[k+324>>2]=u-o;m=C(x*m);n=C(n*r);z[k+320>>2]=m-n;v[k+316>>2]=0;z[k+312>>2]=s-q;z[k+308>>2]=m+n;z[k+304>>2]=C(C(1)-J)-o;s=z[d+20>>2];q=z[c+20>>2];n=z[d+24>>2];r=z[c+24>>2];m=z[d+16>>2];o=z[c+16>>2];v[k+300>>2]=0;A=C(r-E);n=C(C(n-B)-A);E=C(o-F);r=C(C(m-I)-E);D=C(q-D);s=C(C(s-H)-D);q=C(C(l*n)+C(C(w*r)+C(j*s)));m=C(C(C(y*n)-C(p*C(C(w*s)-C(j*r))))+C(l*q));z[k+296>>2]=m+m;m=C(C(j*q)+C(C(y*s)-C(p*C(C(l*r)-C(n*w)))));z[k+292>>2]=m+m;n=C(C(w*q)+C(C(y*r)-C(p*C(C(j*n)-C(s*l)))));z[k+288>>2]=n+n;v[k+224>>2]=0;v[k+144>>2]=141468;v[k+152>>2]=k+304;v[k+148>>2]=k- -64;b=v[k+324>>2];v[k+176>>2]=v[k+320>>2];v[k+180>>2]=b;b=v[k+332>>2];v[k+184>>2]=v[k+328>>2];v[k+188>>2]=b;b=v[k+316>>2];v[k+168>>2]=v[k+312>>2];v[k+172>>2]=b;b=v[k+340>>2];v[k+192>>2]=v[k+336>>2];v[k+196>>2]=b;b=v[k+348>>2];v[k+200>>2]=v[k+344>>2];v[k+204>>2]=b;b=v[a+4>>2];v[k+208>>2]=v[a>>2];v[k+212>>2]=b;b=v[k+364>>2];v[k+216>>2]=v[k+360>>2];v[k+220>>2]=b;b=v[k+308>>2];v[k+160>>2]=v[k+304>>2];v[k+164>>2]=b;n=z[k+164>>2];z[k+164>>2]=z[k+176>>2];r=z[k+184>>2];s=z[k+168>>2];z[k+168>>2]=z[k+192>>2];z[k+184>>2]=z[k+196>>2];z[k+192>>2]=s;z[k+196>>2]=r;z[k+176>>2]=n;v[k+136>>2]=141808;v[k+140>>2]=k;n=C(34028234663852886e22);if(aY(k+144|0,k+136|0,a,k+368|0,k+288|0,k+272|0,k+240|0,k+256|0,C(g+C(0)),1)){n=z[k+272>>2];g=z[k+264>>2];r=z[k+256>>2];s=z[k+260>>2];q=z[k+248>>2];m=z[k+240>>2];o=z[k+244>>2];x=C(C(l*q)+C(C(w*m)+C(j*o)));F=C(-j);u=C(C(C(p*C(C(w*o)+C(m*F)))+C(y*q))+C(l*x));z[h+8>>2]=u+u;u=C(C(j*x)+C(C(y*o)+C(p*C(C(l*m)+C(q*G)))));z[h+4>>2]=u+u;u=o;o=C(-l);q=C(C(w*x)+C(C(y*m)+C(p*C(C(j*q)+C(u*o)))));z[h>>2]=q+q;q=n>C(0)?n:C(0);u=B;m=C(C(l*g)+C(C(w*r)+C(j*s)));B=C(C(C(p*C(C(w*s)+C(r*F)))+C(y*g))+C(l*m));z[i+8>>2]=C(A*q)+C(u+C(B+B));l=C(C(j*m)+C(C(y*s)+C(p*C(C(l*r)+C(g*G)))));z[i+4>>2]=C(D*q)+C(H+C(l+l));g=C(C(w*m)+C(C(y*r)+C(p*C(C(j*g)+C(s*o)))));z[i>>2]=C(E*q)+C(I+C(g+g))}xa=k+384|0;return C(n)}function aX(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=0,da=C(0);g=xa-112|0;xa=g;r=v[a+32>>2];m=z[a+8>>2];i=z[a+4>>2];z[g+40>>2]=C(1)/z[a+12>>2];z[g+36>>2]=C(1)/m;z[g+32>>2]=C(1)/i;z[g+44>>2]=z[a+16>>2];z[g+48>>2]=z[a+20>>2];z[g+52>>2]=z[a+24>>2];z[g+56>>2]=z[a+28>>2];n=z[b+8>>2];p=C(z[b+24>>2]*C(-2));l=z[b>>2];k=C(z[b+16>>2]*C(-2));j=C(z[b+20>>2]*C(-2));o=z[b+4>>2];m=C(C(n*p)+C(C(l*k)+C(j*o)));q=z[b+12>>2];i=C(C(q*q)+C(-.5));z[g+24>>2]=C(n*m)+C(C(p*i)-C(q*C(C(l*j)-C(k*o))));z[g+20>>2]=C(o*m)+C(C(j*i)-C(q*C(C(n*k)-C(p*l))));z[g+12>>2]=q;z[g+8>>2]=-n;z[g+4>>2]=-o;z[g>>2]=-l;z[g+16>>2]=C(l*m)+C(C(k*i)-C(q*C(C(o*p)-C(j*n))));bX(g- -64|0,g+32|0,g);ba=v[r+56>>2];ca=w[r+55|0];j=z[g+104>>2];m=z[g+108>>2];t=z[c+8>>2];y=z[c>>2];G=z[c+4>>2];Q=z[g+92>>2];R=z[g+80>>2];S=z[g+96>>2];q=z[d+8>>2];n=z[d>>2];T=z[g+84>>2];l=z[d+4>>2];i=z[g+100>>2];U=z[g+88>>2];V=z[g+64>>2];W=z[g+76>>2];X=z[g+68>>2];Y=z[g+72>>2];v[h+8>>2]=-1;a:{b:{c:{if(ca){D=C(C(C(Y*n)+C(T*l))+C(S*q));da=C(C(C(X*n)+C(R*l))+C(Q*q));E=C(C(C(V*n)+C(W*l))+C(U*q));H=C(C(C(C(y*Y)+C(G*T))+C(t*S))+m);F=C(C(C(C(y*X)+C(G*R))+C(t*Q))+j);I=C(C(C(C(y*V)+C(G*W))+C(t*U))+i);d=0;o=C(34028234663852886e22);m=C(-34028234663852886e22);c=1;while(1){r=B(d,20)+ba|0;p=z[r+8>>2];k=z[r>>2];i=z[r+4>>2];j=C(z[r+12>>2]+C(C(H*p)+C(C(I*k)+C(F*i))));k=C(C(p*D)+C(C(k*E)+C(da*i)));i=C(C(-j)/k);r=j>C(0);d:{if(k>C(1.0000000116860974e-7)){o=i>o?o:i;break d}if(km)){break d}v[h+8>>2]=d;m=i;break d}if(!r){break d}c=0;break a}c=!r&c;d=d+1|0;if((ca|0)!=(d|0)){continue}break}if(!c){break c}}v[h+48>>2]=0;v[h+8>>2]=-1;v[h+40>>2]=0;v[h+44>>2]=0;z[h+16>>2]=y;z[h+36>>2]=-q;z[h+32>>2]=-l;z[h+28>>2]=-n;z[h+24>>2]=t;z[h+20>>2]=G;c=3;break b}c=0;if(!(m>C(0))|(!(C(e+C(-9999999747378752e-21))>m)|!(m>1];if(d&1){G=z[b+16>>2];q=z[b+20>>2];i=z[a+16>>2];J=C(i+i);j=z[a+24>>2];n=C(J*j);s=z[a+20>>2];e=C(s+s);A=z[a+28>>2];l=C(e*A);L=C(n+l);Z=z[a+4>>2];_=C(L*Z);o=C(e*j);p=C(J*A);M=C(o-p);t=z[a+8>>2];$=C(M*t);k=C(C(1)-C(i*J));e=C(s*e);N=C(k-e);y=z[a+12>>2];aa=C(N*y);O=z[b+8>>2];H=C(H+C(D*m));I=C(I+C(E*m));i=C(C(1)-e);e=C(j+j);j=C(j*e);P=C(i-j);i=C(J*s);e=C(e*A);s=C(i+e);D=C(n-l);l=C(F+C(da*m));E=C(i-e);F=C(k-j);A=C(o+p);e=C(C(H*C(C(C(L*_)+C(M*$))+C(N*aa)))+C(C(I*C(C(C(P*_)+C(s*$))+C(D*aa)))+C(l*C(C(C(E*_)+C(F*$))+C(A*aa)))));n=C(e+e);o=z[b>>2];j=C(Z*P);i=C(s*t);e=C(D*y);e=C(C(H*C(C(C(L*j)+C(M*i))+C(N*e)))+C(C(I*C(C(C(P*j)+C(s*i))+C(D*e)))+C(l*C(C(C(E*j)+C(F*i))+C(A*e)))));p=C(e+e);k=z[b+4>>2];j=C(Z*E);i=C(F*t);e=C(A*y);e=C(C(H*C(C(C(L*j)+C(M*i))+C(N*e)))+C(C(I*C(C(C(P*j)+C(s*i))+C(D*e)))+C(l*C(C(C(E*j)+C(F*i))+C(A*e)))));j=C(e+e);i=C(C(O*n)+C(C(o*p)+C(k*j)));l=z[b+12>>2];e=C(C(l*l)+C(-.5));z[h+24>>2]=z[b+24>>2]+C(C(O*i)+C(C(n*e)+C(l*C(C(o*j)-C(p*k)))));z[h+20>>2]=q+C(C(k*i)+C(C(j*e)+C(l*C(C(O*p)-C(n*o)))));z[h+16>>2]=G+C(C(o*i)+C(C(p*e)+C(l*C(C(k*n)-C(j*O)))));c=1025}v[h+44>>2]=0;v[h+48>>2]=0;z[h+40>>2]=m;v[h+28>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0;if(!(d&2)){break b}a=B(v[h+8>>2],20)+ba|0;m=z[a+8>>2];i=z[a>>2];e=z[a+4>>2];k=C(C(S*m)+C(C(U*i)+C(Q*e)));z[h+36>>2]=k;j=C(C(T*m)+C(C(W*i)+C(R*e)));z[h+32>>2]=j;i=C(C(Y*m)+C(C(V*i)+C(X*e)));z[h+28>>2]=i;c=c|2;e=C(K(C(C(k*k)+C(C(i*i)+C(j*j)))));if(!(e>C(0))){break b}e=C(C(1)/e);z[h+36>>2]=k*e;z[h+32>>2]=j*e;z[h+28>>2]=i*e}u[h+12>>1]=c;c=1}xa=g+112|0;return c|0}function qx(a,b,c){var d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=0,J=0,L=C(0),M=C(0),N=0,O=0,P=0,Q=0,R=0,S=C(0),T=C(0),U=C(0);if(c?1:w[a+93|0]){J=v[b+336>>2];if(J>>>0>=2){P=v[b+348>>2];Q=v[b+344>>2];R=v[b+332>>2];x=1;while(1){s=B(x,80)+Q|0;e=v[((x<<5)+R|0)+20>>2];Hw(s,e,c);r=w[e+269|0];if(c?1:r&2){j=v[b+260>>2];d=v[a+432>>2]+(x<<4)|0;f=z[e+36>>2];h=z[e+8>>2];m=z[e+32>>2];g=z[e+4>>2];l=z[e+40>>2];o=z[e+12>>2];p=z[e>>2];q=z[e+28>>2];i=C(C(f*h)+C(C(m*g)+C(C(l*o)+C(p*q))));n=i;u=C(i*i);i=C(C(p*m)+C(C(C(o*f)-C(l*h))-C(q*g)));k=C(C(g*f)+C(C(C(o*q)-C(l*p))-C(m*h)));h=C(C(h*q)+C(C(C(o*m)-C(l*g))-C(f*p)));f=C(C(1)/C(K(C(u+C(C(i*i)+C(C(k*k)+C(h*h)))))));z[d+12>>2]=n*f;z[d+8>>2]=i*f;z[d+4>>2]=h*f;z[d>>2]=k*f;d=j+B(x,76)|0;f=C(0);h=C(0);i=C(0);k=C(0);m=C(0);r=0;u=z[e+52>>2];E=C(-u);G=z[e+48>>2];L=C(-G);H=z[e+44>>2];M=C(-H);a:{b:{switch(w[e+270|0]){case 0:h=z[e+36>>2];f=z[s+20>>2];m=C(f+f);g=z[e+28>>2];f=z[s+12>>2];l=C(f+f);f=z[s+16>>2];o=C(f+f);p=z[e+32>>2];q=C(C(h*m)+C(C(g*l)+C(o*p)));f=z[e+40>>2];n=C(C(f*f)+C(-.5));u=C(C(h*q)+C(C(m*n)+C(f*C(C(g*o)-C(l*p)))));E=C(C(g*q)+C(C(l*n)+C(f*C(C(p*m)-C(o*h)))));f=C(C(p*q)+C(C(o*n)+C(f*C(C(h*l)-C(m*g)))));h=C(C(u*u)+C(C(E*E)+C(f*f)));if(h>C(0)){h=C(C(1)/C(K(h)));k=C(u*h);i=C(f*h);n=C(E*h)}else{n=C(0)}z[d+12>>2]=n;v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;v[d+72>>2]=1;z[d+20>>2]=k;z[d+16>>2]=i;break a;case 1:l=z[e+36>>2];g=z[s+8>>2];o=C(g+g);p=z[e+28>>2];g=z[s>>2];q=C(g+g);g=z[s+4>>2];i=C(g+g);k=z[e+32>>2];n=C(C(l*o)+C(C(p*q)+C(i*k)));g=z[e+40>>2];y=C(C(g*g)+C(-.5));A=C(C(l*n)+C(C(o*y)+C(g*C(C(p*i)-C(q*k)))));D=C(C(p*n)+C(C(q*y)+C(g*C(C(k*o)-C(i*l)))));g=C(C(k*n)+C(C(i*y)+C(g*C(C(l*q)-C(o*p)))));l=C(C(A*A)+C(C(D*D)+C(g*g)));if(l>C(0)){f=C(C(1)/C(K(l)));m=C(A*f);h=C(g*f);f=C(D*f)}z[d+8>>2]=m;z[d+4>>2]=h;z[d>>2]=f;v[d+72>>2]=1;z[d+20>>2]=C(f*L)+C(H*h);z[d+16>>2]=C(m*M)+C(u*f);z[d+12>>2]=C(h*E)+C(G*m);break a;case 2:I=w[s+76|0];v[d+72>>2]=I;if(!I){break a}m=z[e+40>>2];l=C(C(m*m)+C(-.5));o=z[e+32>>2];S=C(-o);p=z[e+36>>2];T=C(-p);q=z[e+28>>2];U=C(-q);while(1){g=C(0);f=C(0);h=C(0);N=B(r,24);j=N+s|0;i=z[j+8>>2];i=C(i+i);k=z[j>>2];k=C(k+k);n=z[j+4>>2];n=C(n+n);y=C(C(p*i)+C(C(q*k)+C(n*o)));A=C(C(p*y)+C(C(i*l)+C(m*C(C(q*n)+C(k*S)))));D=C(C(q*y)+C(C(k*l)+C(m*C(C(o*i)+C(n*T)))));i=C(C(o*y)+C(C(n*l)+C(m*C(C(p*k)+C(i*U)))));k=C(C(A*A)+C(C(D*D)+C(i*i)));if(k>C(0)){g=C(C(1)/C(K(k)));h=C(A*g);f=C(i*g);g=C(D*g)}j=d+N|0;z[j+12>>2]=C(f*E)+C(G*h);z[j+8>>2]=h;z[j+4>>2]=f;z[j>>2]=g;z[j+20>>2]=C(g*L)+C(H*f);z[j+16>>2]=C(h*M)+C(u*g);r=r+1|0;if((I|0)!=(r|0)){continue}break};break a;case 3:break b;default:break a}}v[d+72>>2]=0}r=w[e+269|0]&-3;t[e+269|0]=r}j=B(x,96)+P|0;if(r&8){if(w[e+258|0]){z[j>>2]=z[e+224>>2];d=1}else{d=0}if(w[e+259|0]){z[j+(d<<2)>>2]=z[e+228>>2];d=d+1|0}if(w[e+260|0]){z[j+(d<<2)>>2]=z[e+232>>2];d=d+1|0}if(w[e+261|0]){z[j+(d<<2)>>2]=z[e+236>>2];d=d+1|0}if(w[e+262|0]){z[j+(d<<2)>>2]=z[e+240>>2];d=d+1|0}if(w[e+263|0]){z[j+(d<<2)>>2]=z[e+244>>2]}r=r&247;t[e+269|0]=r}if(r&4){if(w[e+258|0]){z[j+12>>2]=z[e+200>>2];d=1}else{d=0}if(w[e+259|0]){z[(j+(d<<2)|0)+12>>2]=z[e+204>>2];d=d+1|0}if(w[e+260|0]){z[(j+(d<<2)|0)+12>>2]=z[e+208>>2];d=d+1|0}if(w[e+261|0]){z[(j+(d<<2)|0)+12>>2]=z[e+212>>2];d=d+1|0}if(w[e+262|0]){z[(j+(d<<2)|0)+12>>2]=z[e+216>>2];d=d+1|0}if(w[e+263|0]){z[(j+(d<<2)|0)+12>>2]=z[e+220>>2]}t[e+269|0]=r&251}d=w[e+270|0];v[s+72>>2]=F&255;t[e+268|0]=F;O=(d|0)==2|O;F=w[s+76|0]+F|0;x=x+1|0;if((J|0)!=(x|0)){continue}break}d=F&255}if(v[a+468>>2]!=(d|0)){Cw(a+112|0,d);v[a+468>>2]=d}t[a+93|0]=0;t[a+652|0]=O&1}}function JO(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=C(0),m=0,n=0,o=0,p=0,q=0;f=xa+-64|0;xa=f;i=v[a+28>>2];o=v[i+292>>2];if(o){while(1){a=m;m=a+v[v[i+288>>2]+(n<<2)>>2]|0;a:{if(a>>>0>=m>>>0){break a}while(1){e=v[v[i+276>>2]+(a<<2)>>2];if(z[e+28>>2]>C(1)){break a}b:{if(!w[e+68|0]){break b}d=v[e+52>>2];v[d+8>>2]=v[d+8>>2]|4;j=v[d+48>>2];g=j+32>>>5|0;c=v[i+312>>2];b=v[c+976>>2]&2147483647;h=w[d+43|0];c:{if(!(h&2)){d:{if(b>>>0>=g>>>0){b=v[c+972>>2];break d}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g<<2,24422,17999,438)|0;d=v[c+972>>2];e:{if(!d){break e}I9(b,d,v[c+976>>2]<<2);if(v[c+976>>2]<0){break e}d=v[c+972>>2];if(!d){break e}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,d)}d=v[c+976>>2];J9((d<<2)+b|0,0,g-d<<2);v[c+976>>2]=g;v[c+972>>2]=b;d=v[e+52>>2];h=w[d+43|0]}b=(j>>>3&536870908)+b|0;v[b>>2]=v[b>>2]|1<>2];Ba[v[v[b>>2]+36>>2]](b,d);b=v[i+320>>2];Ba[v[v[b>>2]+28>>2]](b,v[e+52>>2],1,0);p=p+1|0;d=v[e+52>>2];break c}f:{if(b>>>0>=g>>>0){b=v[c+972>>2];break f}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,g<<2,24422,17999,438)|0;d=v[c+972>>2];g:{if(!d){break g}I9(b,d,v[c+976>>2]<<2);if(v[c+976>>2]<0){break g}d=v[c+972>>2];if(!d){break g}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,d)}d=v[c+976>>2];J9((d<<2)+b|0,0,g-d<<2);v[c+976>>2]=g;v[c+972>>2]=b;d=v[e+52>>2];h=w[d+43|0]}b=(j>>>3&536870908)+b|0;v[b>>2]=v[b>>2]|1<>1];h:{if(b&1){break h}if(!(b&256)){break b}if(v[v[d+16>>2]+92>>2]!=2139095039?b&32:0){break h}if(!(b&64)|v[v[d+20>>2]+92>>2]==2139095039){break b}}h=v[d+48>>2];j=h+32>>>5|0;c=v[i+312>>2];i:{if(j>>>0<=(v[c+964>>2]&2147483647)>>>0){g=v[c+960>>2];break i}b=v[37696];g=Ba[v[v[b+12>>2]+8>>2]](b+12|0,j<<2,24422,17999,438)|0;b=v[c+960>>2];j:{if(!b){break j}I9(g,b,v[c+964>>2]<<2);if(v[c+964>>2]<0){break j}b=v[c+960>>2];if(!b){break j}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+964>>2];J9((b<<2)+g|0,0,j-b<<2);v[c+964>>2]=j;v[c+960>>2]=g;d=v[e+52>>2];b=x[d+40>>1]}c=(h>>>3&536870908)+g|0;v[c>>2]=v[c>>2]|1<>2];z[c+544>>2]=z[e+36>>2];z[c+548>>2]=z[e+40>>2];z[c+552>>2]=z[e+44>>2];k=z[e+20>>2];l=z[e+16>>2];z[c+536>>2]=-z[e+24>>2];z[c+532>>2]=-k;z[c+528>>2]=-l;g=v[e+72>>2];v[c+540>>2]=0;v[c+580>>2]=g;z[c+588>>2]=z[e+88>>2];z[c+584>>2]=z[e+80>>2];k=z[e+84>>2];v[c+568>>2]=0;v[c+560>>2]=0;v[c+564>>2]=0;z[c+572>>2]=k;v[c+556>>2]=2139095039;u[f+56>>1]=x[e+76>>1];u[f+58>>1]=x[e+78>>1];d=v[d+32>>2];k:{if(Py(c+528|0,1,c,f+41|0,f+48|0,f+44|0,f+42|0,f+52|0,4,v[c+7188>>2],(b&128)>>>7|0,1,f+56|0,f+40|0,16,0,0,0,0,0,0,(g|0)!=-1)){b=x[f+42>>1];c=v[f+48>>2];u[c+6>>1]=0;u[c+4>>1]=b;b=v[e+52>>2];v[b+32>>2]=c;l:{if(!d){v[c>>2]=0;break l}v[c>>2]=d;u[d+6>>1]=1}z[v[f+52>>2]>>2]=z[e+96>>2];break k}if(!d){b=v[e+52>>2];v[b+32>>2]=0;break k}u[d+6>>1]=1;b=v[e+52>>2]}if(w[b+40|0]&24){break b}k=z[e+96>>2];if(k==C(0)){break b}v[f+28>>2]=0;z[f+12>>2]=k;k=C(34028234663852886e22);l=C(34028234663852886e22);b=v[e>>2];if(b){l=z[v[b+36>>2]+92>>2]}b=v[e+4>>2];if(b){k=z[v[b+36>>2]+92>>2]}z[f+16>>2]=k>l?l:k;b=v[v[e+8>>2]+100>>2];v[f+20>>2]=b;e=v[v[e+12>>2]+100>>2];v[f+24>>2]=e;if(b>>>0>e>>>0){v[f+24>>2]=b;v[f+20>>2]=e}b=v[i+316>>2];e=v[b+8>>2];if(e>>>0>=(v[b+12>>2]&2147483647)>>>0){Yz(b,f+8|0);break b}c=v[f+12>>2];e=v[b+4>>2]+(e<<5)|0;v[e>>2]=v[f+8>>2];v[e+4>>2]=c;c=v[f+36>>2];v[e+24>>2]=v[f+32>>2];v[e+28>>2]=c;c=v[f+28>>2];v[e+16>>2]=v[f+24>>2];v[e+20>>2]=c;c=v[f+20>>2];v[e+8>>2]=v[f+16>>2];v[e+12>>2]=c;v[b+8>>2]=v[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=v[i+312>>2];v[a+1e3>>2]=v[a+1e3>>2]+p;v[a+1004>>2]=v[a+1004>>2]+q;xa=f- -64|0}function uS(a,b,c,d){var e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=C(0),s=0,t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0);k=xa-16|0;xa=k;u=z[a+44>>2];a:{if(u==C(0)){break a}l=z[b+12>>2];w=z[b>>2];i=C(l-w);D=z[b+28>>2];x=z[b+4>>2];j=C(D-x);E=z[b+24>>2];f=C(E-w);m=z[b+16>>2];g=C(m-x);n=C(C(i*j)-C(f*g));A=g;F=z[b+32>>2];g=z[b+8>>2];r=C(F-g);y=z[b+20>>2];t=C(y-g);j=C(C(A*r)-C(j*t));i=C(C(t*f)-C(r*i));f=C(K(C(C(n*n)+C(C(j*j)+C(i*i)))));if(f>C(0)){f=C(C(1)/f);n=C(n*f);i=C(i*f);j=C(j*f)}A=n;n=z[a+28>>2];t=z[a+20>>2];f=C(j*t);j=z[a+24>>2];i=C(C(A*n)+C(f+C(i*j)));if(!(i>=C(0))|!(i>2])){break a}f=C(u*n);n=C(g+f);r=C(u*j);j=C(x+r);t=C(u*t);i=C(w+t);a=v[c+8>>2]&2147483647;p=v[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>>0?o:h;e=p;if(h>>>0<=a>>>0){break b}vS(c,h);a=v[c+8>>2]&2147483647;e=v[c+4>>2]}A=C(f+y);G=C(r+m);H=C(l+t);s=p+1|0;v[c+4>>2]=s;h=v[c>>2];e=h+B(e,36)|0;z[e+24>>2]=i;z[e+12>>2]=l;z[e+8>>2]=g;z[e+4>>2]=x;z[e>>2]=w;z[e+32>>2]=n;z[e+28>>2]=j;z[e+20>>2]=y;z[e+16>>2]=m;g=z[b+20>>2];l=z[b+16>>2];m=z[b+12>>2];q=p+3|0;c:{if(q>>>0<=a>>>0){break c}e=a?a<<1:2;e=e>>>0>>0?q:e;if(e>>>0<=a>>>0){break c}vS(c,e);a=v[c+8>>2]&2147483647;h=v[c>>2];s=v[c+4>>2]}u=C(f+F);w=C(r+D);x=C(E+t);v[c+4>>2]=o;e=B(s,36)+h|0;z[e+24>>2]=H;z[e+12>>2]=m;z[e+8>>2]=n;z[e+4>>2]=j;z[e>>2]=i;z[e+32>>2]=A;z[e+28>>2]=G;z[e+20>>2]=g;z[e+16>>2]=l;g=z[b+20>>2];l=z[b+16>>2];m=z[b+12>>2];s=p+4|0;d:{if(s>>>0<=a>>>0){break d}e=a?a<<1:2;e=e>>>0>>0?s:e;if(e>>>0<=a>>>0){break d}vS(c,e);a=v[c+8>>2]&2147483647;h=v[c>>2];o=v[c+4>>2]}v[c+4>>2]=q;e=B(o,36)+h|0;z[e+24>>2]=x;z[e+12>>2]=m;z[e+8>>2]=A;z[e+4>>2]=G;z[e>>2]=H;z[e+32>>2]=u;z[e+28>>2]=w;z[e+20>>2]=g;z[e+16>>2]=l;g=z[b+32>>2];l=z[b+28>>2];m=z[b+24>>2];y=z[b+20>>2];f=z[b+16>>2];r=z[b+12>>2];o=p+5|0;e:{if(o>>>0<=a>>>0){break e}e=a?a<<1:2;e=e>>>0>>0?o:e;if(e>>>0<=a>>>0){break e}vS(c,e);a=v[c+8>>2]&2147483647;h=v[c>>2];q=v[c+4>>2]}v[c+4>>2]=s;e=B(q,36)+h|0;z[e+24>>2]=m;z[e+12>>2]=r;z[e+8>>2]=u;z[e+4>>2]=w;z[e>>2]=x;z[e+32>>2]=g;z[e+28>>2]=l;z[e+20>>2]=y;z[e+16>>2]=f;g=z[b+8>>2];l=z[b+4>>2];m=z[b>>2];y=z[b+32>>2];f=z[b+28>>2];r=z[b+24>>2];q=p+6|0;f:{if(q>>>0<=a>>>0){break f}e=a?a<<1:2;e=e>>>0>>0?q:e;if(e>>>0<=a>>>0){break f}vS(c,e);a=v[c+8>>2]&2147483647;h=v[c>>2];s=v[c+4>>2]}v[c+4>>2]=o;e=B(s,36)+h|0;z[e+24>>2]=m;z[e+12>>2]=r;z[e+8>>2]=n;z[e+4>>2]=j;z[e>>2]=i;z[e+32>>2]=g;z[e+28>>2]=l;z[e+20>>2]=y;z[e+16>>2]=f;g=z[b+32>>2];l=z[b+28>>2];m=z[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>>0?b:a;if(e>>>0>=a>>>0){break g}vS(c,a);h=v[c>>2];o=v[c+4>>2]}v[c+4>>2]=q;a=B(o,36)+h|0;z[a+24>>2]=m;z[a+12>>2]=x;z[a+8>>2]=n;z[a+4>>2]=j;z[a>>2]=i;z[a+32>>2]=g;z[a+28>>2]=l;z[a+20>>2]=u;z[a+16>>2]=w;v[k+12>>2]=-1;a=v[d+4>>2];h:{if(a>>>0>=(v[d+8>>2]&2147483647)>>>0){pn(d,k+12|0);b=v[d+4>>2];break h}v[v[d>>2]+(a<<2)>>2]=-1;b=v[d+4>>2]+1|0;v[d+4>>2]=b}i:{if((v[d+8>>2]&2147483647)>>>0<=b>>>0){pn(d,k+12|0);b=v[d+4>>2];break i}v[v[d>>2]+(b<<2)>>2]=v[k+12>>2];b=v[d+4>>2]+1|0;v[d+4>>2]=b}j:{if((v[d+8>>2]&2147483647)>>>0<=b>>>0){pn(d,k+12|0);b=v[d+4>>2];break j}v[v[d>>2]+(b<<2)>>2]=v[k+12>>2];b=v[d+4>>2]+1|0;v[d+4>>2]=b}k:{if((v[d+8>>2]&2147483647)>>>0<=b>>>0){pn(d,k+12|0);b=v[d+4>>2];break k}v[v[d>>2]+(b<<2)>>2]=v[k+12>>2];b=v[d+4>>2]+1|0;v[d+4>>2]=b}l:{if((v[d+8>>2]&2147483647)>>>0<=b>>>0){pn(d,k+12|0);b=v[d+4>>2];break l}v[v[d>>2]+(b<<2)>>2]=v[k+12>>2];b=v[d+4>>2]+1|0;v[d+4>>2]=b}m:{if((v[d+8>>2]&2147483647)>>>0<=b>>>0){pn(d,k+12|0);break m}v[v[d>>2]+(b<<2)>>2]=v[k+12>>2];v[d+4>>2]=v[d+4>>2]+1}p=6}xa=k+16|0;return p}function gB(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=0,g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0),Y=C(0),Z=0,_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0,da=0,ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0),wa=C(0),xa=C(0),ya=C(0),za=C(0),Aa=C(0),Ba=C(0),Ca=C(0),Da=C(0),Ea=C(0),Fa=C(0),Ga=C(0),Ha=C(0),Ia=C(0),Ja=C(0),Ka=C(0),La=C(0),Ma=0,Na=C(0),Oa=C(0),Pa=C(0),Qa=C(0),Ra=C(0),Sa=C(0),Ta=C(0),Ua=C(0),Va=C(0);f=v[a+96>>2];q=z[f+24>>2];r=z[f+20>>2];g=v[a+64>>2];s=z[g+24>>2];t=z[g+20>>2];h=v[a+32>>2];u=z[h+24>>2];y=z[h+20>>2];i=v[a>>2];A=z[i+24>>2];D=z[i+20>>2];Ea=z[f+28>>2];E=z[f+16>>2];Fa=z[f+12>>2];F=z[f+8>>2];G=z[f+4>>2];H=z[f>>2];Ga=z[g+28>>2];I=z[g+16>>2];Ha=z[g+12>>2];J=z[g+8>>2];K=z[g+4>>2];L=z[g>>2];Ia=z[h+28>>2];M=z[h+16>>2];Ja=z[h+12>>2];N=z[h+8>>2];O=z[h+4>>2];P=z[h>>2];Ka=z[i+28>>2];Q=z[i+16>>2];La=z[i+12>>2];R=z[i+8>>2];S=z[i+4>>2];T=z[i>>2];c=x[a+22>>1];if(c){b=v[a+24>>2];Ma=b+(c<<4)|0;while(1){a=b;ca=a+96|0;da=ca+(w[a+1|0]<<4)|0;Z=w[a+2|0];b=da+B(Z,144)|0;if(Z){Na=z[a+76>>2];Oa=z[a+72>>2];Pa=z[a+68>>2];_=z[a+44>>2];$=z[a+40>>2];aa=z[a+36>>2];Qa=z[a+28>>2];Ra=z[a+24>>2];Sa=z[a+20>>2];Ta=z[a+64>>2];ba=z[a+32>>2];Ua=z[a+16>>2];o=0;while(1){U=(o>>>v[a+12>>2]<<4)+ca|0;V=z[U+4>>2];c=B(o,144)+da|0;l=z[c+100>>2];Va=z[c+132>>2];d=z[c+116>>2];ea=z[c+36>>2];fa=z[c+20>>2];ga=z[c+4>>2];ha=z[c+84>>2];ia=z[c+52>>2];ja=z[c+68>>2];n=z[U+8>>2];m=z[c+104>>2];W=z[c+136>>2];e=z[c+120>>2];ka=z[c+40>>2];la=z[c+24>>2];ma=z[c+8>>2];na=z[c+88>>2];oa=z[c+56>>2];pa=z[c+72>>2];X=z[U+12>>2];qa=z[c+108>>2];Y=z[c+140>>2];j=z[c+124>>2];ra=z[c+44>>2];sa=z[c+28>>2];ta=z[c+12>>2];ua=z[c+92>>2];va=z[c+60>>2];wa=z[c+76>>2];xa=z[c>>2];ya=z[c+16>>2];za=z[c+32>>2];Aa=z[c+48>>2];Ba=z[c+64>>2];Ca=z[c+80>>2];k=z[c+112>>2];Da=z[c+96>>2];p=C(C(C(C(C(C(T*xa)+C(S*ya))+C(R*za))+C(C(C(Q*Aa)+C(D*Ba))+C(A*Ca)))*k)+C(Da-C(k*z[c+128>>2])));k=C(Ua*z[U>>2]);p=k>p?p:k;k=C(-k);k=k>2]=k;Y=C(C(j*C(C(C(C(H*ta)+C(G*sa))+C(F*ra))+C(C(C(E*va)+C(r*wa))+C(q*ua))))+C(qa-C(j*Y)));j=C(Qa*X);X=j>Y?Y:j;j=C(-j);j=j>2]=j;W=C(C(e*C(C(C(C(L*ma)+C(K*la))+C(J*ka))+C(C(C(I*oa)+C(t*pa))+C(s*na))))+C(m-C(e*W)));e=C(Ra*n);n=e>W?W:e;e=C(-e);n=e>2]=n;e=C(C(d*C(C(C(C(P*ga)+C(O*fa))+C(N*ea))+C(C(C(M*ia)+C(y*ja))+C(u*ha))))+C(l-C(d*Va)));d=C(Sa*V);e=d>e?e:d;d=C(-d);V=d>2]=V;d=C(k-Da);R=C(R+C(C(ba*za)*d));S=C(S+C(C(ba*ya)*d));T=C(T+C(C(ba*xa)*d));e=C(Ta*d);A=C(A+C(Ca*e));d=C(j-qa);F=C(F+C(C(_*ra)*d));m=C(n-m);J=C(J+C(C($*ka)*m));l=C(V-l);N=C(N+C(C(aa*ea)*l));D=C(D+C(Ba*e));G=C(G+C(C(_*sa)*d));K=C(K+C(C($*la)*m));O=C(O+C(C(aa*fa)*l));Q=C(Q+C(Aa*e));H=C(H+C(C(_*ta)*d));L=C(L+C(C($*ma)*m));P=C(P+C(C(aa*ga)*l));d=C(Na*d);q=C(q+C(ua*d));m=C(Oa*m);s=C(s+C(na*m));l=C(Pa*l);u=C(u+C(ha*l));r=C(r+C(wa*d));t=C(t+C(pa*m));y=C(y+C(ja*l));E=C(E+C(va*d));I=C(I+C(oa*m));M=C(M+C(ia*l));o=o+1|0;if((Z|0)!=(o|0)){continue}break}}if(b>>>0>>0){continue}break}}z[i+12>>2]=La;z[i+8>>2]=R;z[i+4>>2]=S;z[i>>2]=T;z[h+12>>2]=Ja;z[h+8>>2]=N;z[h+4>>2]=O;z[h>>2]=P;z[g+12>>2]=Ha;z[g+8>>2]=J;z[g+4>>2]=K;z[g>>2]=L;z[f+12>>2]=Fa;z[f+8>>2]=F;z[f+4>>2]=G;z[f>>2]=H;z[i+28>>2]=Ka;z[i+24>>2]=A;z[i+20>>2]=D;z[i+16>>2]=Q;z[h+28>>2]=Ia;z[h+24>>2]=u;z[h+20>>2]=y;z[h+16>>2]=M;z[g+28>>2]=Ga;z[g+24>>2]=s;z[g+20>>2]=t;z[g+16>>2]=I;z[f+28>>2]=Ea;z[f+24>>2]=q;z[f+20>>2]=r;z[f+16>>2]=E}function Hv(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=C(0),l=0,m=C(0),n=C(0),o=0,p=0,q=0,r=C(0),s=C(0),x=C(0),y=C(0),A=0,E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=C(0),O=0,P=C(0);i=xa-560|0;xa=i;M=v[f>>2];q=v[a+40>>2];k=z[c+24>>2];f=v[c>>2];j=v[c+4>>2];l=v[c+8>>2];A=v[c+12>>2];o=v[c+20>>2];E=v[c+16>>2];v[i+556>>2]=0;z[i+552>>2]=k;v[i+544>>2]=E;v[i+548>>2]=o;v[i+536>>2]=l;v[i+540>>2]=A;v[i+528>>2]=f;v[i+532>>2]=j;f=0;a:{if(z[b+4>>2]!=C(1)){break a}f=0;if(z[b+8>>2]!=C(1)){break a}f=z[b+12>>2]==C(1)}v[i+512>>2]=0;v[i+516>>2]=1065353216;v[i+504>>2]=0;v[i+508>>2]=0;v[i+496>>2]=0;v[i+500>>2]=1065353216;v[i+488>>2]=0;v[i+492>>2]=0;v[i+480>>2]=1065353216;v[i+484>>2]=1065353216;v[i+464>>2]=1065353216;v[i+468>>2]=0;t[i+520|0]=0;v[i+472>>2]=0;v[i+476>>2]=0;v[i+456>>2]=0;v[i+460>>2]=0;v[i+448>>2]=1065353216;v[i+452>>2]=0;if(!f){JX(i+448|0,b+4|0,b+16|0)}v[i+432>>2]=0;v[i+436>>2]=1065353216;v[i+424>>2]=0;v[i+428>>2]=0;v[i+416>>2]=0;v[i+420>>2]=1065353216;v[i+408>>2]=0;v[i+412>>2]=0;v[i+400>>2]=1065353216;v[i+404>>2]=1065353216;v[i+384>>2]=1065353216;v[i+388>>2]=0;t[i+440|0]=0;v[i+392>>2]=0;v[i+396>>2]=0;v[i+376>>2]=0;v[i+380>>2]=0;v[i+368>>2]=1065353216;v[i+372>>2]=0;j=i+368|0;A=z[a+4>>2]==C(1)&z[a+8>>2]==C(1)&z[a+12>>2]==C(1);if(!A){JX(j,a+4|0,a+16|0)}k=z[j+28>>2];m=z[j+16>>2];n=z[j+24>>2];r=z[j>>2];I=z[j+12>>2];J=z[j+4>>2];l=v[a+40>>2];F=z[l>>2];s=z[j+8>>2];G=z[l+4>>2];x=z[j+20>>2];H=z[l+8>>2];y=z[j+32>>2];N=C(C(C(F*s)+C(G*x))+C(H*y));K=s;s=z[l+12>>2];L=x;x=z[l+16>>2];P=y;y=z[l+20>>2];K=C(C(C(D(C(K*s)))+C(D(C(L*x))))+C(D(C(P*y))));z[i+364>>2]=N+K;L=C(C(C(F*J)+C(G*m))+C(H*k));k=C(C(C(D(C(J*s)))+C(D(C(m*x))))+C(D(C(k*y))));z[i+360>>2]=L+k;m=C(C(C(F*r)+C(G*I))+C(H*n));n=C(C(C(D(C(r*s)))+C(D(C(I*x))))+C(D(C(n*y))));z[i+356>>2]=m+n;z[i+352>>2]=N-K;z[i+348>>2]=L-k;z[i+344>>2]=m-n;r=z[j+16>>2];I=z[j+28>>2];J=z[j+24>>2];F=z[j>>2];G=z[j+12>>2];H=z[j+4>>2];k=z[l+24>>2];m=z[l+28>>2];n=z[l+32>>2];z[i+280>>2]=C(C(k*z[j+8>>2])+C(m*z[j+20>>2]))+C(n*z[j+32>>2]);z[i+276>>2]=C(C(k*H)+C(m*r))+C(n*I);z[i+272>>2]=C(C(k*F)+C(m*G))+C(n*J);o=w[l+38|0];v[i+284>>2]=o;p=w[l+39|0];v[i+288>>2]=p;j=u[l+36>>1];E=j&32767;v[i+292>>2]=E;O=v[l+40>>2];v[i+296>>2]=O;p=B(p,20)+O|0;v[i+300>>2]=p;p=p+B(o,12)|0;v[i+308>>2]=p;o=B(o,3);v[i+312>>2]=(j|0)>=0?0:o+(p+(j<<1&65534)|0)|0;v[i+304>>2]=(o+(p+(E<<1)|0)|0)+(E<<2&j>>31);v[i+332>>2]=v[l+44>>2];j=v[l+52>>2];v[i+316>>2]=v[l+48>>2];v[i+320>>2]=j;j=v[l+60>>2];v[i+324>>2]=v[l+56>>2];v[i+328>>2]=j;j=v[a+16>>2];l=v[a+20>>2];o=v[a+28>>2];v[i+264>>2]=v[a+24>>2];v[i+268>>2]=o;v[i+256>>2]=j;v[i+260>>2]=l;k=z[a+8>>2];m=z[a+12>>2];n=z[a+4>>2];v[i+252>>2]=0;z[i+248>>2]=m;z[i+244>>2]=k;z[i+240>>2]=n;r=C(z[e+8>>2]*C(.05000000074505806));n=C(n*z[q+52>>2]);k=C(k*z[q+56>>2]);k=k>=n?n:k;m=C(m*z[q+60>>2]);k=k<=m?k:m;m=C(k*C(.25));z[i+224>>2]=m>r?r:m;t[i+96|0]=0;v[i+88>>2]=0;v[i+92>>2]=0;v[i+80>>2]=0;v[i+84>>2]=0;v[i+72>>2]=0;v[i+76>>2]=0;v[i+64>>2]=0;v[i+68>>2]=0;v[i+208>>2]=q;v[i+216>>2]=v[q+40>>2]+B(w[q+39|0],20);a=w[q+38|0];z[i+88>>2]=k*C(.02500000037252903);z[i+80>>2]=k*C(.10000000149011612);z[i+84>>2]=k*C(.05000000074505806);t[i+220|0]=a;a=i+112|0;j=i+160|0;GV(i+240|0,i+256|0,a,j,i- -64|0,A);v[i+212>>2]=v[q+44>>2];b:{if(A){t[i+44|0]=1;v[i+40>>2]=j;v[i+36>>2]=a;v[i>>2]=141020;v[i+32>>2]=i+528;v[i+48>>2]=i- -64;a=T1(i+272|0,i,i+224|0,i+344|0,b,c,d,z[e>>2],g,i+368|0,i+448|0,1,f,M,h);break b}t[i+44|0]=0;v[i+40>>2]=j;v[i+36>>2]=a;v[i>>2]=141068;v[i+32>>2]=i+528;v[i+48>>2]=i- -64;a=T1(i+272|0,i,i+224|0,i+344|0,b,c,d,z[e>>2],g,i+368|0,i+448|0,0,f,M,h)}xa=i+560|0;return a|0}function G9(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,k=0,m=0,n=0,o=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0,E=0,F=0,G=0,I=0;s=xa-16|0;xa=s;x=(p(a),j(2));e=x&2147483647;a:{if(e>>>0<=1305022426){k=+a;d=k*.6366197723675814+6755399441055744+-6755399441055744;w=k+d*-1.5707963109016418+d*-1.5893254773528196e-8;A[b>>3]=w;c=w<-.7853981852531433;if(D(d)<2147483648){e=~~d}else{e=-2147483648}if(c){d=d+-1;A[b>>3]=k+d*-1.5707963109016418+d*-1.5893254773528196e-8;e=e-1|0;break a}if(!(w>.7853981852531433)){break a}d=d+1;A[b>>3]=k+d*-1.5707963109016418+d*-1.5893254773528196e-8;e=e+1|0;break a}if(e>>>0>=2139095040){A[b>>3]=C(a-a);e=0;break a}c=e;e=(e>>>23|0)-150|0;A[s+8>>3]=(l(2,c-(e<<23)|0),q());y=s+8|0;g=xa-560|0;xa=g;c=(e-3|0)/24|0;t=(c|0)>0?c:0;m=e+B(t,-24)|0;n=v[26576];if((n|0)>=0){e=n+1|0;c=t;while(1){A[(g+320|0)+(f<<3)>>3]=(c|0)<0?0:+v[(c<<2)+106320>>2];c=c+1|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}o=m-24|0;e=0;f=(n|0)>0?n:0;while(1){c=0;d=0;while(1){d=A[(c<<3)+y>>3]*A[(g+320|0)+(e-c<<3)>>3]+d;c=c+1|0;if((c|0)!=1){continue}break}A[(e<<3)+g>>3]=d;c=(e|0)==(f|0);e=e+1|0;if(!c){continue}break}G=47-m|0;z=48-m|0;I=m-25|0;e=n;b:{while(1){d=A[(e<<3)+g>>3];c=0;f=e;i=(e|0)<=0;if(!i){while(1){r=(g+480|0)+(c<<2)|0;k=d*5.960464477539063e-8;c:{if(D(k)<2147483648){h=~~k;break c}h=-2147483648}k=+(h|0);d=k*-16777216+d;d:{if(D(d)<2147483648){h=~~d;break d}h=-2147483648}v[r>>2]=h;f=f-1|0;d=A[(f<<3)+g>>3]+k;c=c+1|0;if((e|0)!=(c|0)){continue}break}}d=Q9(d,o);d=d+H(d*.125)*-8;e:{if(D(d)<2147483648){r=~~d;break e}r=-2147483648}d=d-+(r|0);f:{g:{h:{E=(o|0)<=0;i:{if(!E){f=(e<<2)+g|0;h=v[f+476>>2];c=h>>z;u=f;f=h-(c<>2]=f;r=c+r|0;h=f>>G;break i}if(o){break h}h=v[((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(!i){while(1){u=(g+480|0)+(c<<2)|0;F=v[u>>2];i=16777215;j:{k:{if(f){break k}i=16777216;if(F){break k}f=0;break j}v[u>>2]=i-F;f=1}c=c+1|0;if((e|0)!=(c|0)){continue}break}}l:{if(E){break l}c=8388607;m:{switch(I|0){case 1:c=4194303;break;case 0:break m;default:break l}}i=(e<<2)+g|0;v[i+476>>2]=v[i+476>>2]&c}r=r+1|0;if((h|0)!=2){break f}d=1-d;h=2;if(!f){break f}d=d-Q9(1,o)}if(d==0){f=0;n:{c=e;if((n|0)>=(e|0)){break n}while(1){c=c-1|0;f=v[(g+480|0)+(c<<2)>>2]|f;if((c|0)>(n|0)){continue}break}if(!f){break n}m=o;while(1){m=m-24|0;e=e-1|0;if(!v[(g+480|0)+(e<<2)>>2]){continue}break}break b}c=1;while(1){f=c;c=c+1|0;if(!v[(g+480|0)+(n-f<<2)>>2]){continue}break}f=e+f|0;while(1){e=e+1|0;A[(g+320|0)+(e<<3)>>3]=v[(e+t<<2)+106320>>2];c=0;d=0;while(1){d=A[(c<<3)+y>>3]*A[(g+320|0)+(e-c<<3)>>3]+d;c=c+1|0;if((c|0)!=1){continue}break}A[(e<<3)+g>>3]=d;if((e|0)<(f|0)){continue}break}e=f;continue}break}d=Q9(d,24-m|0);o:{if(d>=16777216){o=(g+480|0)+(e<<2)|0;k=d*5.960464477539063e-8;p:{if(D(k)<2147483648){c=~~k;break p}c=-2147483648}d=+(c|0)*-16777216+d;q:{if(D(d)<2147483648){f=~~d;break q}f=-2147483648}v[o>>2]=f;e=e+1|0;break o}if(D(d)<2147483648){c=~~d}else{c=-2147483648}m=o}v[(g+480|0)+(e<<2)>>2]=c}d=Q9(1,m);r:{if((e|0)<0){break r}c=e;while(1){f=c;A[(c<<3)+g>>3]=d*+v[(g+480|0)+(c<<2)>>2];c=c-1|0;d=d*5.960464477539063e-8;if(f){continue}break}i=0;if((e|0)<0){break r}m=(n|0)>0?n:0;f=e;while(1){o=m>>>0>>0?m:i;n=e-f|0;c=0;d=0;while(1){d=A[(c<<3)+109088>>3]*A[(c+f<<3)+g>>3]+d;t=(c|0)!=(o|0);c=c+1|0;if(t){continue}break}A[(g+160|0)+(n<<3)>>3]=d;f=f-1|0;c=(e|0)!=(i|0);i=i+1|0;if(c){continue}break}}d=0;if((e|0)>=0){while(1){c=e;e=e-1|0;d=d+A[(g+160|0)+(c<<3)>>3];if(c){continue}break}}A[s>>3]=h?-d:d;xa=g+560|0;e=r&7;d=A[s>>3];if((x|0)<0){A[b>>3]=-d;e=0-e|0;break a}A[b>>3]=d}xa=s+16|0;return e}function iD(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0);p=xa-1056|0;xa=p;i=z[e+8>>2];q=C(i+i);F=q>C(0);G=C(-q);i=z[e+4>>2];r=C(i+i);J=r>C(0);H=C(-r);i=z[e>>2];s=C(i+i);e=s>C(0);I=C(-s);i=z[d+8>>2];y=C(i+i);i=z[d+4>>2];A=C(i+i);i=z[d>>2];D=C(i+i);i=z[f>>2];a:{if(i>=C(34028234663852886e22)){u=r==C(0)?A:r>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);w=s==C(0)?D:s>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);i=y;if(q==C(0)){break a}i=q>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break a}u=C(A+C(r*i));w=C(D+C(s*i));i=C(y+C(q*i))}G=F?q:G;H=J?r:H;I=e?s:I;t[p+1040|0]=1;v[p+1048>>2]=256;v[p+1052>>2]=256;v[p+1044>>2]=p+16;v[p+16>>2]=v[c+588>>2];L=iu?A:u;N=D>w?D:w;i=i>y?y:i;u=A>2]+(c<<2)>>2];h=z[e+16>>2];m=z[e>>2];j=C(h-m);m=C(h+m);d:{if(!(C(j+m)>=w)|!(C(m-j)<=N)){break d}k=z[e+20>>2];l=z[e+4>>2];h=C(k-l);k=C(k+l);l=C(A-k);n=C(D-m);m=C(C(s*l)-C(r*n));if(!(C(C(H*j)+C(I*h))>=(m>C(0)?m:C(-m)))|!(C(h+k)>=u)|!(C(k-h)<=M)){break d}o=C(G*h);m=z[e+24>>2];k=z[e+8>>2];h=C(m-k);m=C(m+k);x=C(y-m);k=C(C(r*x)-C(q*l));if(!(C(o+C(H*h))>=(k>C(0)?k:C(-k)))|!(C(h+m)>=i)|!(C(m-h)<=L)){break d}h=C(C(G*j)+C(I*h));j=C(C(q*n)-C(s*x));if(!(h>=(j>C(0)?j:C(-j)))){break d}m=z[f>>2];z[p+12>>2]=m;if(v[e+40>>2]){while(1){d=v[e+36>>2];k=z[d- -64>>2];l=z[d+48>>2];j=C(k-l);m=z[d+68>>2];n=z[d+52>>2];h=C(m-n);m=C(m+n);n=C(A-m);k=C(k+l);x=C(D-k);l=C(C(s*n)-C(r*x));e=C(k-j)<=N&C(j+k)>=w&C(C(H*j)+C(I*h))>=(l>C(0)?l:C(-l))&C(h+m)>=u&C(m-h)<=M;E=C(G*h);l=z[d+72>>2];o=z[d+56>>2];h=C(l-o);l=C(l+o);o=C(y-l);n=C(C(r*o)-C(q*n));K=C(C(G*j)+C(I*h));j=C(C(q*x)-C(s*o));e=e&C(E+C(H*h))>=(n>C(0)?n:C(-n))&C(h+l)>=i&C(l-h)<=L&K>=(j>C(0)?j:C(-j));x=z[d+16>>2];o=z[d>>2];j=C(x-o);n=z[d+20>>2];E=z[d+4>>2];h=C(n-E);n=C(n+E);E=C(A-n);x=C(x+o);O=C(D-x);o=C(C(s*E)-C(r*O));F=C(x-j)<=N&C(j+x)>=w&C(C(H*j)+C(I*h))>=(o>C(0)?o:C(-o))&C(h+n)>=u&C(n-h)<=M;Q=C(G*h);o=z[d+24>>2];K=z[d+8>>2];h=C(o-K);o=C(o+K);K=C(y-o);E=C(C(r*K)-C(q*E));R=C(C(G*j)+C(I*h));j=C(C(q*O)-C(s*K));F=F&C(Q+C(H*h))>=(E>C(0)?E:C(-E))&C(h+o)>=i&C(o-h)<=L&R>=(j>C(0)?j:C(-j));e:{if(!(!F|!e)){e=C(C(C(l-o)*q)+C(C(C(k-x)*s)+C(r*C(m-n))))>C(0);v[v[p+1044>>2]+(c<<2)>>2]=d+B(e,48);e=d+B(!e,48)|0;c=c+1|0;if((c|0)!=(v[p+1052>>2]&2147483647)){break e}gD(p+16|0,c<<1);break e}if(!(e|F)){break d}e=F?d:d+48|0}if(v[e+40>>2]){continue}break}m=z[f>>2]}d=v[e+36>>2];F=v[d>>2];if(!F){break d}e=d+4|0;d=F;while(1){P=v[e>>2];f:{if(F>>>0>=2){J=B(P,24)+b|0;h=z[J+12>>2];k=z[J>>2];j=C(h-k);k=C(k+h);if(!(C(j+k)>=w)|!(C(k-j)<=N)){break f}l=z[J+16>>2];n=z[J+4>>2];h=C(l-n);l=C(n+l);n=C(A-l);x=C(D-k);k=C(C(s*n)-C(r*x));if(!(C(C(H*j)+C(I*h))>=(k>C(0)?k:C(-k)))|!(C(h+l)>=u)|!(C(l-h)<=M)){break f}E=C(G*h);k=z[J+20>>2];l=z[J+8>>2];h=C(k-l);k=C(l+k);o=C(y-k);l=C(C(r*o)-C(q*n));if(!(C(E+C(H*h))>=(l>C(0)?l:C(-l)))|!(C(h+k)>=i)|!(C(k-h)<=L)){break f}h=C(C(G*j)+C(I*h));j=C(C(q*x)-C(s*o));if(!(h>=(j>C(0)?j:C(-j)))){break f}}if(!(Ba[v[v[g>>2]>>2]](g,p+12|0,(P<<3)+a|0)|0)){break c}j=z[p+12>>2];if(!(j>2]=j;i=C(y+C(q*j));L=iu?A:u;w=C(D+C(s*j));N=D>w?D:w;i=i>y?y:i;u=A>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[p+1044>>2];if((b|0)==(p+16|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=p+1056|0;return a}function XW(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;var i=C(0),j=C(0),k=C(0),m=C(0),n=C(0),o=C(0),p=C(0),r=0,s=C(0),t=0,w=C(0),y=0,A=0,B=0,D=0,E=0,F=C(0),G=C(0),H=0;g=xa+-64|0;xa=g;j=z[b+8>>2];i=C(z[c+8>>2]-z[b+24>>2]);m=C(i+i);i=z[b>>2];k=C(z[c>>2]-z[b+16>>2]);n=C(k+k);k=C(z[c+4>>2]-z[b+20>>2]);p=C(k+k);k=z[b+4>>2];w=C(C(j*m)+C(C(i*n)+C(p*k)));o=z[b+12>>2];s=C(C(o*o)+C(-.5));z[g+56>>2]=C(j*w)+C(C(m*s)-C(o*C(C(i*p)-C(n*k))));z[g+52>>2]=C(k*w)+C(C(p*s)-C(o*C(C(j*n)-C(m*i))));z[g+48>>2]=C(i*w)+C(C(n*s)-C(o*C(C(k*m)-C(p*j))));m=z[d+8>>2];m=C(m+m);n=z[d>>2];n=C(n+n);p=z[d+4>>2];p=C(p+p);w=C(C(j*m)+C(C(i*n)+C(k*p)));z[g+40>>2]=C(j*w)+C(C(m*s)-C(o*C(C(i*p)-C(n*k))));z[g+36>>2]=C(k*w)+C(C(p*s)-C(o*C(C(j*n)-C(m*i))));z[g+32>>2]=C(i*w)+C(C(n*s)-C(o*C(C(k*m)-C(p*j))));j=z[a+8>>2];i=z[a+4>>2];z[g+8>>2]=-z[a+12>>2];z[g+4>>2]=-j;z[g>>2]=-i;y=a+4|0;t=xa-16|0;v[t>>2]=-1082130432;v[t+4>>2]=-1082130432;i=z[g+48>>2];j=z[g>>2];a:{b:{if(i>2]=j;j=z[g+32>>2];if(!v[g+32>>2]){j=C(-1);break a}j=C(C(z[g>>2]-z[g+48>>2])/j);break b}r=1;j=C(-1);m=i;i=z[y>>2];if(!(m>i)){break a}z[g+16>>2]=i;r=0;i=z[g+32>>2];if(!v[g+32>>2]){break a}j=C(C(z[y>>2]-z[g+48>>2])/i)}z[t>>2]=j}D=g+4|0;c:{d:{e:{i=z[g+52>>2];k=z[g+4>>2];if(!(i>2];if(!(m>i)){break c}z[g+20>>2]=i;r=v[g+36>>2];if(!r){break d}a=y+4|0;break e}z[g+20>>2]=k;a=D;r=v[g+36>>2];if(r){break e}r=0;k=C(-1);break c}k=C(C(z[a>>2]-z[g+52>>2])/(l(2,r),q()));z[t+4>>2]=k}r=0}E=g+8|0;f:{g:{h:{i:{i=z[g+56>>2];o=z[g+8>>2];if(!(i>2];if(!(m>i)){break i}z[g+24>>2]=i;r=v[g+40>>2];if(r){a=y+8|0;break h}i=C(-1);break g}z[g+24>>2]=o;a=E;r=v[g+40>>2];if(r){break h}i=C(-1);break g}if(!r){i=C(-1);break g}z[g+16>>2]=z[g+48>>2];z[g+20>>2]=z[g+52>>2];z[g+24>>2]=z[g+56>>2];v[g+12>>2]=0;a=1;break f}i=C(C(z[a>>2]-z[g+56>>2])/(l(2,r),q()));z[t+8>>2]=i}a=0;A=j>2]>2];t=v[t>>2];if((t|0)<0){break f}if(B){i=C(C(j*z[g+32>>2])+z[g+48>>2]);z[g+16>>2]=i;if(i>2]+C(-9999999747378752e-21))|i>C(z[y>>2]+C(9999999747378752e-21))){break f}}if(A?r:1){i=C(C(j*z[g+36>>2])+z[g+52>>2]);z[g+20>>2]=i;if(i>2]+C(-9999999747378752e-21))|i>C(z[y+4>>2]+C(9999999747378752e-21))){break f}}if(!r){j=C(C(j*z[g+40>>2])+z[g+56>>2]);z[g+24>>2]=j;if(j>2]+C(-9999999747378752e-21))|j>C(z[y+8>>2]+C(9999999747378752e-21))){break f}}v[g+12>>2]=t;a=B+1|0}t=a;j:{if(!t){break j}j=z[g+12>>2];if(j>e){break j}v[h+44>>2]=0;v[h+48>>2]=0;v[h+8>>2]=-1;z[h+40>>2]=j;a=0;f=x[f>>1];if(f&1){k:{if(j!=C(0)){F=z[b+24>>2];G=z[b+16>>2];i=z[b+8>>2];e=z[g+24>>2];k=C(e+e);o=z[b>>2];e=z[g+16>>2];s=C(e+e);m=z[b+4>>2];e=z[g+20>>2];n=C(e+e);p=C(C(i*k)+C(C(o*s)+C(m*n)));e=z[b+12>>2];w=C(C(e*e)+C(-.5));z[h+20>>2]=z[b+20>>2]+C(C(m*p)+C(C(n*w)+C(e*C(C(i*s)-C(k*o)))));z[h+16>>2]=G+C(C(o*p)+C(C(s*w)+C(e*C(C(m*k)-C(n*i)))));e=C(F+C(C(i*p)+C(C(k*w)+C(e*C(C(o*n)-C(s*m))))));break k}z[h+16>>2]=z[c>>2];z[h+20>>2]=z[c+4>>2];e=z[c+8>>2]}z[h+24>>2]=e;a=1}l:{if(f&2){a=a|2;if(j==C(0)){e=z[d>>2];j=z[d+4>>2];z[h+36>>2]=-z[d+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-e;break l}v[g+8>>2]=0;v[g>>2]=0;v[g+4>>2]=0;c=(t<<2)-4|0;z[c+g>>2]=z[c+(g+16|0)>>2]>C(0)?C(1):C(-1);j=z[b+8>>2];e=z[g+8>>2];i=C(e+e);k=z[b>>2];e=z[g>>2];o=C(e+e);e=z[g+4>>2];s=C(e+e);m=z[b+4>>2];n=C(C(j*i)+C(C(k*o)+C(s*m)));e=z[b+12>>2];p=C(C(e*e)+C(-.5));z[h+36>>2]=C(j*n)+C(C(i*p)+C(e*C(C(k*s)-C(o*m))));z[h+32>>2]=C(m*n)+C(C(s*p)+C(e*C(C(j*o)-C(i*k))));z[h+28>>2]=C(k*n)+C(C(o*p)+C(e*C(C(m*i)-C(s*j))));break l}v[h+28>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0}u[h+12>>1]=a;H=1}xa=g- -64|0;return H|0}function ar(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=xa-16|0;xa=m;e=c?d:x[a+24>>1];q=e<<2;d=q>>>0>1024;t[m+12|0]=d;a:{b:{c:{if(!d){d=m-(q+15&-16)|0;xa=d;v[m+8>>2]=d;break c}d=u9(q,19068,417);v[m+8>>2]=d;if(!d){break b}}d:{e:{if(c){if(!e){break d}d=0;while(1){a=v[(g<<2)+c>>2];i=a+32|0;k=v[m+8>>2];h=v[b+4>>2];f:{g:{if(!(h&8)){break g}a=v[a+36>>2];if((a&251658240)!=16777216){a=v[b+8>>2];if(!a){a=Qu(v[b>>2],h>>>24&15);v[b+8>>2]=a}h=v[a+28>>2];if(!h){break g}f=v[a+24>>2];a=0;while(1){if((i|0)==v[f+(a<<2)>>2]){break f}a=a+1|0;if((h|0)!=(a|0)){continue}break}break g}if((a&-1073741824)==1073741824){break f}}v[k+(d<<2)>>2]=i;d=d+1|0}g=g+1|0;if((e|0)!=(g|0)){continue}break}break e}if(!e){break d}k=x[a+24>>1]==1?a+20|0:v[a+20>>2];d=0;while(1){a=v[k+(g<<2)>>2];c=v[a+36>>2];h:{if(!(w[(c&64?v[a+40>>2]+52|0:a+112|0)|0]&5)){break h}i=a+32|0;h=v[m+8>>2];a=v[b+4>>2];i:{if(!(a&8)){break i}if((c&251658240)!=16777216){c=v[b+8>>2];if(!c){c=Qu(v[b>>2],a>>>24&15);v[b+8>>2]=c}f=v[c+28>>2];if(!f){break i}c=v[c+24>>2];a=0;while(1){if((i|0)==v[c+(a<<2)>>2]){break h}a=a+1|0;if((f|0)!=(a|0)){continue}break}break i}if((c&-1073741824)==1073741824){break h}}v[h+(d<<2)>>2]=i;d=d+1|0}g=g+1|0;if((e|0)!=(g|0)){continue}break}}if(!d){break d}g=v[m+8>>2];h=0;k=xa-32|0;xa=k;j:{k:{l:{m:{a=v[b+4>>2];switch((a>>>30|0)-2|0){case 1:break k;case 0:break m;default:break l}}if(w[v[b>>2]+4785|0]){break k}}if(!d){break j}a=0;while(1){c=v[g+(a<<2)>>2];e=v[b+4>>2];v[k+16>>2]=128;t[k+8|0]=0;TJ(v[((e>>>22&60)+89188|0)+12>>2]+b|0,c+16|0,k+16|0,k+8|0,0);a=a+1|0;if((d|0)!=(a|0)){continue}break}break j}i=v[b+8>>2];if(!i){i=Qu(v[b>>2],a>>>24&15);v[b+8>>2]=i}c=v[i+88>>2];n:{if(!c){if((d|0)==1){a=v[g>>2];v[i+88>>2]=1;v[i+84>>2]=a;break n}a=v[b>>2];f=v[a+4872>>2];v[k+24>>2]=0;Br(a+4868|0,d+f|0,k+24|0);a=v[a+4868>>2];if(!a){break j}o:{if(!d){break o}c=a+(f<<2)|0;a=0;if(d-1>>>0>=3){n=d&-4;while(1){e=a<<2;v[e+c>>2]=v[e+g>>2];o=e|4;v[o+c>>2]=v[g+o>>2];o=e|8;v[o+c>>2]=v[g+o>>2];e=e|12;v[e+c>>2]=v[e+g>>2];a=a+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}e=d&3;if(!e){break o}while(1){n=a<<2;v[n+c>>2]=v[g+n>>2];a=a+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}v[i+88>>2]=d;v[i+84>>2]=f;break n}a=v[b>>2];n=v[a+4872>>2];v[k+28>>2]=0;o=c+d|0;Br(a+4868|0,n+o|0,k+28|0);a=v[a+4868>>2];if(!a){break j}e=a+(n<<2)|0;c=v[i+88>>2];p:{if((c|0)==1){v[e>>2]=v[i+84>>2];if(!d){break p}a=0;if(d-1>>>0>=3){l=d&-4;f=0;while(1){c=a<<2;j=c|4;v[j+e>>2]=v[c+g>>2];p=c|8;v[p+e>>2]=v[g+j>>2];c=c|12;v[c+e>>2]=v[g+p>>2];a=a+4|0;v[e+(a<<2)>>2]=v[c+g>>2];f=f+4|0;if((l|0)!=(f|0)){continue}break}}d=d&3;if(!d){break p}while(1){c=a+1|0;v[e+(c<<2)>>2]=v[g+(a<<2)>>2];a=c;h=h+1|0;if((d|0)!=(h|0)){continue}break}break p}q:{if(!c){break q}h=v[v[b>>2]+4868>>2]+(v[i+84>>2]<<2)|0;a=0;if(c-1>>>0>=3){l=c&-4;while(1){f=a<<2;v[f+e>>2]=v[f+h>>2];j=f|4;v[j+e>>2]=v[h+j>>2];j=f|8;v[j+e>>2]=v[h+j>>2];f=f|12;v[f+e>>2]=v[f+h>>2];a=a+4|0;p=p+4|0;if((l|0)!=(p|0)){continue}break}}f=c&3;if(!f){break q}while(1){l=a<<2;v[l+e>>2]=v[h+l>>2];a=a+1|0;r=r+1|0;if((f|0)!=(r|0)){continue}break}}if(!d){break p}h=0;a=0;if(d-1>>>0>=3){l=d&-4;f=0;while(1){v[e+(a+c<<2)>>2]=v[g+(a<<2)>>2];j=a|1;v[e+(j+c<<2)>>2]=v[g+(j<<2)>>2];j=a|2;v[e+(j+c<<2)>>2]=v[g+(j<<2)>>2];j=a|3;v[e+(j+c<<2)>>2]=v[g+(j<<2)>>2];a=a+4|0;f=f+4|0;if((l|0)!=(f|0)){continue}break}}d=d&3;if(!d){break p}while(1){v[e+(a+c<<2)>>2]=v[g+(a<<2)>>2];a=a+1|0;h=h+1|0;if((d|0)!=(h|0)){continue}break}}v[i+88>>2]=o;v[i+84>>2]=n}Yu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|32}xa=k+32|0}if(q>>>0<1025){break a}}v9(v[m+8>>2])}xa=m+16|0;return 1}function i4(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=C(0),t=0,u=0,w=0;f=xa-48|0;o=f;xa=f;g=1;a:{if(!b){break a}e=v[a>>2];if(!e){break a}h=f-(B(e,12)+15&-16)|0;xa=h;if((e|0)!=1){i=e&-2;g=0;while(1){k=B(d,12);f=k+h|0;k=b+k|0;v[f>>2]=v[k>>2];v[f+4>>2]=v[k+4>>2];v[f+8>>2]=v[k+8>>2];k=B(d|1,12);f=k+h|0;k=b+k|0;v[f>>2]=v[k>>2];v[f+4>>2]=v[k+4>>2];v[f+8>>2]=v[k+8>>2];d=d+2|0;g=g+2|0;if((i|0)!=(g|0)){continue}break}}if(e&1){g=B(d,12);d=g+h|0;g=b+g|0;v[d>>2]=v[g>>2];v[d+4>>2]=v[g+4>>2];v[d+8>>2]=v[g+8>>2]}f=o+24|0;v[f+16>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f+4>>2]=h;v[f>>2]=e;p=o+8|0;h=0;k=xa+-64|0;xa=k;d=v[f+16>>2];if(d){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d)}v[f+16>>2]=0;d=v[f+12>>2];if(d){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d)}v[f+12>>2]=0;e=-1;d=v[f>>2];g=(d&1073741823)!=(d|0)?-1:d<<2;b:{if(!g){v[f+16>>2]=0;break b}d=v[37696];i=Ba[v[v[d>>2]+20>>2]](d)|0?29035:63804;u=f,w=Ba[v[v[d+12>>2]+8>>2]](d+12|0,g,i,7314,75)|0,v[u+16>>2]=w;c:{d=v[f>>2];if((d|0)!=(d&1073741823)){break c}e=d<<2;if(e){break c}break b}d=v[37696];g=Ba[v[v[d>>2]+20>>2]](d)|0?29941:63804;h=Ba[v[v[d+12>>2]+8>>2]](d+12|0,e,g,7314,77)|0;d=v[f>>2]}d:{if(!d){break d}l=d&3;i=v[f+4>>2];g=0;e=0;if(d-1>>>0>=3){n=d&-4;d=0;while(1){z[(e<<2)+h>>2]=z[i+B(e,12)>>2];m=e|1;z[(m<<2)+h>>2]=z[i+B(m,12)>>2];m=e|2;z[(m<<2)+h>>2]=z[i+B(m,12)>>2];m=e|3;z[(m<<2)+h>>2]=z[i+B(m,12)>>2];e=e+4|0;d=d+4|0;if((n|0)!=(d|0)){continue}break}}if(!l){break d}while(1){z[(e<<2)+h>>2]=z[i+B(e,12)>>2];e=e+1|0;g=g+1|0;if((l|0)!=(g|0)){continue}break}}n=SU(k+24|0);WU(n,h,v[f>>2],1);l=v[f>>2];e:{if(!l){break e}i=v[f+4>>2];g=0;e=0;if(l-1>>>0>=3){m=l&-4;d=0;while(1){z[(e<<2)+h>>2]=z[(i+B(e,12)|0)+4>>2];j=e|1;z[(j<<2)+h>>2]=z[(i+B(j,12)|0)+4>>2];j=e|2;z[(j<<2)+h>>2]=z[(i+B(j,12)|0)+4>>2];j=e|3;z[(j<<2)+h>>2]=z[(i+B(j,12)|0)+4>>2];e=e+4|0;d=d+4|0;if((m|0)!=(d|0)){continue}break}}d=l&3;if(!d){break e}while(1){z[(e<<2)+h>>2]=z[(i+B(e,12)|0)+4>>2];e=e+1|0;g=g+1|0;if((d|0)!=(g|0)){continue}break}}WU(n,h,l,1);i=v[f>>2];f:{g:{if(i){l=v[f+4>>2];g=0;e=0;if(i-1>>>0>=3){m=i&-4;d=0;while(1){z[(e<<2)+h>>2]=z[(l+B(e,12)|0)+8>>2];j=e|1;z[(j<<2)+h>>2]=z[(l+B(j,12)|0)+8>>2];j=e|2;z[(j<<2)+h>>2]=z[(l+B(j,12)|0)+8>>2];j=e|3;z[(j<<2)+h>>2]=z[(l+B(j,12)|0)+8>>2];e=e+4|0;d=d+4|0;if((m|0)!=(d|0)){continue}break}}d=i&3;if(d){while(1){z[(e<<2)+h>>2]=z[(l+B(e,12)|0)+8>>2];e=e+1|0;g=g+1|0;if((d|0)!=(g|0)){continue}break}}e=v[WU(n,h,i,1)+8>>2];break g}e=v[WU(n,h,i,1)+8>>2];if(!h){break f}}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,h)}i=0;v[f+8>>2]=0;v[k+16>>2]=-1;v[k+8>>2]=-1;v[k+12>>2]=-1;h=v[f>>2];d=B(h,12);if(d){g=v[37696];i=Ba[v[v[g+12>>2]+8>>2]](g+12|0,d,24422,7314,98)|0;h=v[f>>2]}v[f+12>>2]=i;if(h){t=v[f+16>>2];l=v[f+4>>2];d=k+8|0;while(1){h=h-1|0;h:{i:{q=v[e>>2];m=B(q,12);g=m+l|0;r=v[g>>2];if((r|0)!=v[d>>2]){s=z[(l+m|0)+4>>2];break i}s=z[g+4>>2];if(v[d+4>>2]!=v[g+4>>2]|v[g+8>>2]!=v[d+8>>2]){break i}d=v[f+8>>2];break h}j=v[f+8>>2];d=j+1|0;v[f+8>>2]=d;j=B(j,12)+i|0;z[j+4>>2]=s;v[j>>2]=r;z[j+8>>2]=z[(l+m|0)+8>>2]}e=e+4|0;v[(q<<2)+t>>2]=d-1;d=g;if(h){continue}break}}if(p){v[p+8>>2]=v[f+16>>2];d=v[f+8>>2];v[p>>2]=i;v[p+4>>2]=d}TU(n);xa=k- -64|0;d=v[o+12>>2];g=d>>>0>=y[a>>2];j:{if(g|!c){break j}v[a>>2]=d;if(!d){break j}d=0;h=v[o+8>>2];while(1){e=B(d,12);c=e+b|0;e=e+h|0;v[c>>2]=v[e>>2];v[c+4>>2]=v[e+4>>2];v[c+8>>2]=v[e+8>>2];d=d+1|0;if(d>>>0>2]){continue}break}}a=v[f+16>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[f+16>>2]=0;a=v[f+12>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[f+12>>2]=0}xa=o+48|0;return g}function Gx(a,b,c){var d=C(0),e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=0,o=0,p=C(0),q=0,r=C(0),s=C(0),u=0,x=C(0),y=C(0),A=C(0),E=0,F=0,G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=0,R=0,S=0,T=0,U=0,V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=0,ha=0,ia=0,ja=0,ka=0;E=xa-32|0;xa=E;V=v[c+8>>2];q=v[c+4>>2];l=v[c>>2];i=z[b+352>>2];R=v[b+336>>2];if(!(t[v[b+364>>2]]&1)){N=z[b+448>>2];O=z[b+460>>2];P=z[b+472>>2];W=z[b+452>>2];X=z[b+464>>2];Y=z[b+476>>2];Z=z[b+456>>2];_=z[b+468>>2];$=z[b+480>>2];J=z[b+508>>2];aa=z[b+484>>2];ba=z[b+496>>2];m=z[b+416>>2];r=z[b+420>>2];K=z[b+512>>2];ca=z[b+488>>2];da=z[b+500>>2];x=z[b+424>>2];y=z[b+428>>2];G=z[b+432>>2];L=z[b+516>>2];ea=z[b+492>>2];fa=z[b+504>>2];H=z[b+436>>2];I=z[b+440>>2];h=v[c+12>>2];d=z[h+20>>2];s=z[b+444>>2];f=z[h+24>>2];A=z[b+412>>2];g=z[h+8>>2];j=z[h>>2];k=z[h+4>>2];p=z[h+16>>2];v[q+28>>2]=0;v[q+12>>2]=0;L=C(C(C(C(ea*j)+C(fa*k))+C(L*g))+C(C(s*f)+C(C(H*p)+C(I*d))));z[q+24>>2]=-L;K=C(C(C(C(ca*j)+C(da*k))+C(K*g))+C(C(G*f)+C(C(x*p)+C(y*d))));z[q+20>>2]=-K;J=C(C(C(C(aa*j)+C(ba*k))+C(J*g))+C(C(r*f)+C(C(A*p)+C(m*d))));z[q+16>>2]=-J;r=C(C(C(C(r*j)+C(G*k))+C(s*g))+C(C(C(Z*p)+C(_*d))+C($*f)));z[q+8>>2]=-r;m=C(C(C(C(m*j)+C(y*k))+C(I*g))+C(C(C(W*p)+C(X*d))+C(Y*f)));z[q+4>>2]=-m;d=C(C(C(C(A*j)+C(x*k))+C(H*g))+C(C(C(N*p)+C(O*d))+C(P*f)));z[q>>2]=-d;z[l>>2]=z[l>>2]-C(i*d);z[l+4>>2]=z[l+4>>2]-C(i*m);z[l+8>>2]=z[l+8>>2]-C(i*r);z[l+16>>2]=z[l+16>>2]-C(i*J);z[l+20>>2]=z[l+20>>2]-C(i*K);z[l+24>>2]=z[l+24>>2]-C(i*L)}if(R>>>0>=2){ga=v[c+24>>2];ha=v[c+28>>2];h=1;while(1){n=v[b+340>>2]+B(h,160)|0;d=z[n+124>>2];M=h<<5;e=M+v[b+332>>2]|0;c=(v[e+24>>2]<<5)+q|0;r=z[c>>2];f=z[n+120>>2];x=z[c+4>>2];G=C(C(C(d*r)-C(f*x))+z[c+24>>2]);y=z[c+8>>2];g=C(f*y);f=z[n+128>>2];H=C(C(g-C(f*r))+z[c+20>>2]);I=C(C(C(f*x)-C(d*y))+z[c+16>>2]);a:{b:{c=v[b+344>>2]+B(h,80)|0;u=w[c+76|0];if(u){S=v[c+72>>2]<<2;T=S+ha|0;ia=v[e+20>>2];c=0;while(1){e=c<<2;o=e+E|0;d=z[(e+n|0)+132>>2];e=n+(c<<5)|0;z[o>>2]=d-C(C(C(z[e+24>>2]*y)+C(C(z[e+16>>2]*r)+C(x*z[e+20>>2])))+C(C(z[e+8>>2]*G)+C(C(z[e>>2]*I)+C(H*z[e+4>>2]))));c=c+1|0;if((u|0)!=(c|0)){continue}break}ja=u&254;ka=u&1;e=v[a+360>>2]+B(h,36)|0;n=0;while(1){F=n<<2;o=F+T|0;v[o>>2]=0;d=C(0);c=0;Q=0;if((u|0)!=1){while(1){d=C(C(z[F+(e+B(c,12)|0)>>2]*z[(c<<2)+E>>2])+d);z[o>>2]=d;U=c|1;d=C(C(z[F+(e+B(U,12)|0)>>2]*z[(U<<2)+E>>2])+d);z[o>>2]=d;c=c+2|0;Q=Q+2|0;if((ja|0)!=(Q|0)){continue}break}}if(ka){z[o>>2]=C(z[F+(e+B(c,12)|0)>>2]*z[(c<<2)+E>>2])+d}n=n+1|0;if((u|0)!=(n|0)){continue}break}if(u){break b}}f=C(0);g=C(0);j=C(0);k=C(0);p=C(0);m=C(0);break a}n=ga+S|0;F=v[b+272>>2]+B(h,76)|0;m=C(0);c=0;p=C(0);k=C(0);j=C(0);g=C(0);f=C(0);while(1){s=z[ia+264>>2];o=c<<2;e=o+T|0;o=n+o|0;A=z[o>>2];d=C(C(z[e>>2]*i)+A);if(s>2]=C(d-A)/i}z[o>>2]=d;d=z[e>>2];e=F+B(c,24)|0;k=C(k+C(d*z[e+12>>2]));j=C(j+C(d*z[e+8>>2]));g=C(g+C(d*z[e+4>>2]));f=C(f+C(d*z[e>>2]));m=C(m+C(d*z[e+20>>2]));p=C(p+C(d*z[e+16>>2]));c=c+1|0;if((u|0)!=(c|0)){continue}break}}c=M+V|0;d=z[c+20>>2];s=z[c+24>>2];A=z[c>>2];N=z[c+4>>2];O=z[c+8>>2];P=z[c+16>>2];c=q+M|0;v[c+28>>2]=0;v[c+12>>2]=0;k=C(k+C(I+P));z[c+16>>2]=k;j=C(j+C(y+O));z[c+8>>2]=j;g=C(g+C(x+N));z[c+4>>2]=g;f=C(f+C(r+A));z[c>>2]=f;m=C(m+C(G+s));z[c+24>>2]=m;d=C(p+C(H+d));z[c+20>>2]=d;c=l+M|0;z[c>>2]=C(i*f)+z[c>>2];z[c+4>>2]=C(i*g)+z[c+4>>2];z[c+8>>2]=C(i*j)+z[c+8>>2];z[c+16>>2]=C(i*k)+z[c+16>>2];z[c+20>>2]=C(i*d)+z[c+20>>2];z[c+24>>2]=C(i*m)+z[c+24>>2];h=h+1|0;if((R|0)!=(h|0)){continue}break}}xa=E+32|0}function Wx(a,b,c,d,e,f){a=a|0;b=C(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=C(0),q=0,r=C(0),s=C(0),u=C(0),x=0,A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;h=xa-176|0;xa=h;a:{if(w[a+488|0]){b9(v[37696],8,12859,893,76502,0);break a}o=a+112|0;Ex(a,o);L=v[a+448>>2];g=v[a+444>>2];M=v[a+468>>2];O=J9(v[f+40>>2],0,B(M,e)<<2);if(!e){break a}N=t[v[a+476>>2]]&1;H=C(C(1)/b);P=L<<5;Q=g+(c<<5)|0;while(1){g=B(J,12)+d|0;Ba[v[v[g>>2]+160>>2]](g,h+128|0);g=v[Q+16>>2];m=v[f+52>>2];n=0;v[h+120>>2]=0;v[h+112>>2]=0;v[h+116>>2]=0;v[h+104>>2]=0;v[h+108>>2]=0;v[h+96>>2]=0;v[h+100>>2]=0;v[h+88>>2]=0;v[h+92>>2]=0;v[h+80>>2]=0;v[h+84>>2]=0;I=Cx(m,L,h+80|0);i=J9(v[h+92>>2],0,P);b=z[g+8>>2];A=z[g+12>>2];D=z[g>>2];E=z[g+4>>2];v[h+76>>2]=0;v[h+60>>2]=0;p=z[h+160>>2];r=C(p+p);p=z[h+152>>2];s=C(p+p);p=z[h+156>>2];u=C(p+p);F=C(C(b*r)+C(C(D*s)+C(E*u)));p=C(C(A*A)+C(-.5));z[h+72>>2]=C(b*F)+C(C(r*p)-C(A*C(C(D*u)-C(s*E))));z[h+68>>2]=C(E*F)+C(C(u*p)-C(A*C(C(b*s)-C(r*D))));z[h+64>>2]=C(D*F)+C(C(s*p)-C(A*C(C(E*r)-C(u*b))));r=z[h+136>>2];r=C(r+r);s=z[h+128>>2];s=C(s+s);u=z[h+132>>2];u=C(u+u);F=C(C(b*r)+C(C(D*s)+C(E*u)));z[h+56>>2]=C(b*F)+C(C(r*p)-C(A*C(C(D*u)-C(s*E))));z[h+52>>2]=C(E*F)+C(C(u*p)-C(A*C(C(b*s)-C(r*D))));z[h+48>>2]=C(D*F)+C(C(s*p)-C(A*C(C(E*r)-C(u*b))));jx(c,o,i,h+48|0);x=m+4|0;G=h+16|0;k=v[a+468>>2];q=(k<<3)+15&-16;g=v[m+8>>2];l=v[m+4>>2]+(g<<2)|0;j=v[l-4>>2];if((q|0)<=(j-v[m+16>>2]|0)){n=j-q|0;v[h>>2]=n;b:{if(g>>>0>=(v[m+12>>2]&2147483647)>>>0){Vs(x,h);break b}v[l>>2]=n;v[m+8>>2]=g+1}n=v[h>>2]}g=k<<2;j=J9(n,0,g);ix(G,N,c,o,i,j);g=g+j|0;c:{if(!k){break c}n=0;i=0;if(k-1>>>0>=3){K=k&-4;q=0;while(1){l=i<<2;z[l+g>>2]=H*z[j+l>>2];G=l|4;z[G+g>>2]=H*z[j+G>>2];G=l|8;z[G+g>>2]=H*z[j+G>>2];l=l|12;z[l+g>>2]=H*z[j+l>>2];i=i+4|0;q=q+4|0;if((K|0)!=(q|0)){continue}break}}k=k&3;if(!k){break c}while(1){l=i<<2;z[l+g>>2]=H*z[j+l>>2];i=i+1|0;n=n+1|0;if((k|0)!=(n|0)){continue}break}}rx(o);v[h+108>>2]=g;v[h+96>>2]=0;v[h+104>>2]=0;v[h+112>>2]=(B(J,M)<<2)+O;d:{if(N){v[h+8>>2]=0;v[h>>2]=0;v[h+4>>2]=0;g=h+80|0;wx(o,g);J9(v[h+88>>2],0,v[a+448>>2]<<5);sx(o,h,g);Ix(o,g);Kx(o,g);Jx(o,g);break d}v[h+8>>2]=0;v[h>>2]=0;v[h+4>>2]=0;g=h+80|0;wx(o,g);J9(v[h+88>>2],0,v[a+448>>2]<<5);sx(o,h,g);Ix(o,g);Kx(o,g);Mx(o,g);Nx(o,g)}g=v[m+16>>2];e:{if(!(g>>>0<=j>>>0&j>>>0>2]>>>0)){if(!j){break e}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,j);break e}K=v[m+4>>2];k=0;q=v[m+8>>2];n=q;while(1){l=k;k=k+1|0;g=n;n=g-1|0;i=K+(n<<2)|0;if(j>>>0>y[i>>2]){continue}break}f:{if(g>>>0>=q>>>0){break f}j=0;k=l&3;if(k){while(1){v[i>>2]=v[v[x>>2]+(g<<2)>>2];g=g+1|0;i=i+4|0;j=j+1|0;if((k|0)!=(j|0)){continue}break}}if(l-1>>>0<3){break f}while(1){k=g<<2;v[i>>2]=v[k+v[x>>2]>>2];v[i+4>>2]=v[(k+v[x>>2]|0)+4>>2];v[i+8>>2]=v[(k+v[x>>2]|0)+8>>2];v[i+12>>2]=v[(k+v[x>>2]|0)+12>>2];i=i+16|0;g=g+4|0;if((q|0)!=(g|0)){continue}break}}v[m+8>>2]=q-1}g=v[m+16>>2];g:{if(!(g>>>0<=I>>>0&g+v[m+20>>2]>>>0>I>>>0)){if(!I){break g}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,I);break g}q=v[m+4>>2];g=0;l=v[m+8>>2];k=l;while(1){n=g;g=g+1|0;i=k;k=i-1|0;j=q+(k<<2)|0;if(y[j>>2]>>0){continue}break}h:{if(i>>>0>=l>>>0){break h}g=0;k=n&3;if(k){while(1){v[j>>2]=v[v[x>>2]+(i<<2)>>2];i=i+1|0;j=j+4|0;g=g+1|0;if((k|0)!=(g|0)){continue}break}}if(n-1>>>0<3){break h}while(1){g=i<<2;v[j>>2]=v[g+v[x>>2]>>2];v[j+4>>2]=v[(g+v[x>>2]|0)+4>>2];v[j+8>>2]=v[(g+v[x>>2]|0)+8>>2];v[j+12>>2]=v[(g+v[x>>2]|0)+12>>2];j=j+16|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}v[m+8>>2]=l-1}J=J+1|0;if((J|0)!=(e|0)){continue}break}}xa=h+176|0}function kC(a,b,c,d,e,f,g,h,i,j){var k=0,l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=0,u=0,x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0);k=xa-160|0;xa=k;v[a+16>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=0;v[a+4>>2]=0;v[k+104>>2]=2122317823;v[k+108>>2]=0;v[k+24>>2]=-25165825;v[k+28>>2]=0;v[k+120>>2]=2122317823;v[k+124>>2]=0;v[k+40>>2]=-25165825;v[k+44>>2]=0;v[k+136>>2]=2122317823;v[k+140>>2]=0;v[k+56>>2]=-25165825;v[k+60>>2]=0;v[k+152>>2]=2122317823;v[k+156>>2]=0;v[k+80>>2]=2122317823;v[k+84>>2]=2122317823;v[k+88>>2]=2122317823;v[k+92>>2]=0;v[k>>2]=-25165825;v[k+4>>2]=-25165825;v[k+8>>2]=-25165825;v[k+12>>2]=0;v[k+96>>2]=2122317823;v[k+100>>2]=2122317823;v[k+16>>2]=-25165825;v[k+20>>2]=-25165825;v[k+112>>2]=2122317823;v[k+116>>2]=2122317823;v[k+32>>2]=-25165825;v[k+36>>2]=-25165825;v[k+128>>2]=2122317823;v[k+132>>2]=2122317823;v[k+48>>2]=-25165825;v[k+52>>2]=-25165825;v[k+144>>2]=2122317823;v[k+148>>2]=2122317823;v[k+72>>2]=-25165825;v[k+76>>2]=0;v[k+64>>2]=-25165825;v[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=z[t+r>>2];l=z[r+(t+16|0)>>2];i=(C(n-l)>c)<<2|q|(C(n+l)>2];l=z[t+16>>2];x=C(n-l);y=C(n+l);j=w[(i|x>b|(y>2];B=z[m+4>>2];D=z[m+8>>2];E=z[m+12>>2];i=i+(k+80|0)|0;F=z[i>>2];G=z[i+4>>2];H=z[i+8>>2];I=z[t+4>>2];J=z[t+20>>2];K=z[t+8>>2];L=z[t+24>>2];o=z[i+12>>2];p=z[t+12>>2];n=z[t+28>>2];l=C(p-n);z[i+12>>2]=l>o?o:l;l=C(K-L);z[i+8>>2]=l>H?H:l;l=C(I-J);z[i+4>>2]=l>G?G:l;z[i>>2]=x>F?F:x;l=C(p+n);z[m+12>>2]=l>2]=l>2]=l>2]=y>2]=j;i=(j<<2)+a|0;v[i>>2]=v[i>>2]+1;s=s+1|0;if((s|0)!=(d|0)){continue}break}m=v[a+8>>2];r=v[a+4>>2];s=v[a+12>>2];q=v[a>>2]}v[a+20>>2]=0;r=q+r|0;v[a+28>>2]=r;v[a+24>>2]=q;m=m+r|0;v[a+32>>2]=m;i=m+s|0;v[a+36>>2]=i;if(d){while(1){m=(u<<5)+e|0;q=v[m+12>>2];i=(q<<2)+a|0;r=v[i+20>>2];v[i+20>>2]=r+1;j=v[m>>2];i=v[m+4>>2];b=z[m+8>>2];s=(r<<5)+g|0;v[s+12>>2]=q;z[s+8>>2]=b;v[s>>2]=j;v[s+4>>2]=i;q=v[m+24>>2];j=v[m+28>>2];i=v[m+20>>2];v[s+16>>2]=v[m+16>>2];v[s+20>>2]=i;v[s+24>>2]=q;v[s+28>>2]=j;j=(u<<3)+f|0;i=v[j+4>>2];q=(r<<3)+h|0;v[q>>2]=v[j>>2];v[q+4>>2]=i;u=u+1|0;if((u|0)!=(d|0)){continue}break}q=v[a>>2];r=q+v[a+4>>2]|0;m=r+v[a+8>>2]|0;i=m+v[a+12>>2]|0}v[a+36>>2]=i;v[a+32>>2]=m;v[a+28>>2]=r;v[a+24>>2]=q;v[a+20>>2]=0;o=z[k>>2];p=z[k+80>>2];n=z[k+4>>2];l=z[k+84>>2];c=z[k+8>>2];b=z[k+88>>2];z[a+72>>2]=C(c-b)*C(.5);z[a+68>>2]=C(n-l)*C(.5);z[a- -64>>2]=C(o-p)*C(.5);z[a+56>>2]=C(b+c)*C(.5);z[a+52>>2]=C(l+n)*C(.5);z[a+48>>2]=C(p+o)*C(.5);o=z[k+20>>2];p=z[k+100>>2];n=z[k+16>>2];l=z[k+96>>2];c=z[k+24>>2];b=z[k+104>>2];z[a+104>>2]=C(c-b)*C(.5);z[a+100>>2]=C(o-p)*C(.5);z[a+96>>2]=C(n-l)*C(.5);z[a+88>>2]=C(b+c)*C(.5);z[a+84>>2]=C(p+o)*C(.5);z[a+80>>2]=C(l+n)*C(.5);o=z[k+36>>2];p=z[k+116>>2];n=z[k+32>>2];l=z[k+112>>2];c=z[k+40>>2];b=z[k+120>>2];z[a+136>>2]=C(c-b)*C(.5);z[a+132>>2]=C(o-p)*C(.5);z[a+128>>2]=C(n-l)*C(.5);z[a+120>>2]=C(b+c)*C(.5);z[a+116>>2]=C(p+o)*C(.5);z[a+112>>2]=C(l+n)*C(.5);o=z[k+52>>2];p=z[k+132>>2];n=z[k+48>>2];l=z[k+128>>2];c=z[k+56>>2];b=z[k+136>>2];z[a+168>>2]=C(c-b)*C(.5);z[a+164>>2]=C(o-p)*C(.5);z[a+160>>2]=C(n-l)*C(.5);z[a+152>>2]=C(b+c)*C(.5);z[a+148>>2]=C(p+o)*C(.5);z[a+144>>2]=C(l+n)*C(.5);o=z[k+68>>2];p=z[k+148>>2];n=z[k+64>>2];l=z[k+144>>2];c=z[k+72>>2];b=z[k+152>>2];z[a+200>>2]=C(c-b)*C(.5);z[a+196>>2]=C(o-p)*C(.5);z[a+192>>2]=C(n-l)*C(.5);z[a+184>>2]=C(b+c)*C(.5);z[a+180>>2]=C(p+o)*C(.5);z[a+176>>2]=C(l+n)*C(.5);xa=k+160|0}function OZ(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=C(0),q=0,r=C(0),s=C(0);q=xa-256|0;xa=q;l=v[a+24>>2];if(l){a:{c=l-1|0;if((c|0)<=0){break a}h=a+2076|0;while(1){b:{c:{if((c|0)<=(k|0)){break c}while(1){if(c-k>>>0<=4){while(1){e=k;k=e+1|0;b=k;g=e;while(1){g=z[h+(b<<3)>>2]>2]?b:g;d=(b|0)<(c|0);b=b+1|0;if(d){continue}break}if((e|0)!=(g|0)){i=h+(g<<3)|0;g=v[i>>2];d=v[i+4>>2];e=h+(e<<3)|0;b=v[e+4>>2];v[i>>2]=v[e>>2];v[i+4>>2]=b;v[e>>2]=g;v[e+4>>2]=d}if((c|0)!=(k|0)){continue}break c}}f=h+((c+k|0)/2<<3)|0;p=z[f>>2];i=h+(k<<3)|0;r=z[i>>2];if(p>2];d=v[i>>2];e=v[i+4>>2];b=v[f+4>>2];v[i>>2]=v[f>>2];v[i+4>>2]=b;v[f>>2]=d;v[f+4>>2]=e;s=z[i>>2]}else{s=r}g=h+(c<<3)|0;r=z[g>>2];if(s>r){r=z[i>>2];d=v[i>>2];e=v[i+4>>2];b=v[g+4>>2];v[i>>2]=v[g>>2];v[i+4>>2]=b;v[g>>2]=d;v[g+4>>2]=e;p=z[f>>2]}if(p>r){d=v[f>>2];e=v[f+4>>2];b=v[g+4>>2];v[f>>2]=v[g>>2];v[f+4>>2]=b;v[g>>2]=d;v[g+4>>2]=e}p=z[f>>2];d=v[f>>2];e=v[f+4>>2];g=c-1|0;j=h+(g<<3)|0;b=v[j+4>>2];v[f>>2]=v[j>>2];v[f+4>>2]=b;v[j>>2]=d;v[j+4>>2]=e;b=k;while(1){e=b;b=b+1|0;n=h+(b<<3)|0;if(z[n>>2]>2]>p){continue}break}f=v[n>>2];i=v[n+4>>2];if((b|0)<(g|0)){e=v[d+4>>2];v[n>>2]=v[d>>2];v[n+4>>2]=e;v[d>>2]=f;v[d+4>>2]=i;p=z[j>>2];continue}break}d=v[j+4>>2];v[n>>2]=v[j>>2];v[n+4>>2]=d;v[j>>2]=f;v[j+4>>2]=i;d:{if((b-k|0)<(c-b|0)){b=(o<<2)+q|0;v[b>>2]=k;v[b+4>>2]=e;k=e+2|0;break d}b=(o<<2)+q|0;v[b>>2]=e+2;v[b+4>>2]=c;c=e}o=o+2|0;if((c|0)>(k|0)){continue}break}break b}if(!o){break a}}b=o-2|0;k=v[(b<<2)+q>>2];c=v[((o<<2)+q|0)-4>>2];o=b;continue}}i=l>>>0>1?l:1;e=a+2592|0;g=a+28|0;k=0;while(1){o=(k<<3)+a|0;n=g+(v[o+2080>>2]<<5)|0;j=v[n+20>>2];m=v[n+28>>2];h=v[n+24>>2];e:{f:{g:{switch(v[n+12>>2]){case 0:c=v[a+2588>>2];b=e;while(1){if(!c){break f}if(v[b>>2]==(j|0)|v[b+4>>2]==(j|0)){break e}c=c-1|0;d=v[b+8>>2];b=b+12|0;if((d|0)!=(j|0)){continue}break};break e;case 1:c=v[a+2588>>2];b=e;while(1){if(!c){break f}if(v[b>>2]==(h|0)|v[b+4>>2]==(h|0)){break e}c=c-1|0;d=v[b+8>>2];b=b+12|0;if((d|0)!=(h|0)){continue}break};break e;case 2:c=v[a+2588>>2];b=e;while(1){if(!c){break f}if(v[b>>2]==(m|0)|v[b+4>>2]==(m|0)){break e}c=c-1|0;d=v[b+8>>2];b=b+12|0;if((d|0)!=(m|0)){continue}break};break e;case 3:b=e;c=v[a+2588>>2];if(!c){break f}while(1){l=v[b+8>>2];f=v[b+4>>2];d=v[b>>2];h:{if((d|0)==(j|0)){if((f|0)==(h|0)){break e}if((h|0)!=(l|0)){break h}break e}if((f|0)==(j|0)){if((d|0)==(h|0)){break e}if((h|0)!=(l|0)){break h}break e}if((j|0)!=(l|0)){break h}if((f|0)==(h|0)|(d|0)==(h|0)){break e}}b=b+12|0;c=c-1|0;if(c){continue}break};break f;case 4:b=e;c=v[a+2588>>2];if(!c){break f}while(1){l=v[b+8>>2];f=v[b+4>>2];d=v[b>>2];i:{if((d|0)==(h|0)){if((f|0)==(m|0)){break e}if((m|0)!=(l|0)){break i}break e}if((f|0)==(h|0)){if((d|0)==(m|0)){break e}if((m|0)!=(l|0)){break i}break e}if((h|0)!=(l|0)){break i}if((f|0)==(m|0)|(d|0)==(m|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=e;c=v[a+2588>>2];if(!c){break f}while(1){l=v[b+8>>2];f=v[b+4>>2];d=v[b>>2];j:{if((d|0)==(j|0)){if((f|0)==(m|0)){break e}if((m|0)!=(l|0)){break j}break e}if((f|0)==(j|0)){if((d|0)==(m|0)){break e}if((m|0)!=(l|0)){break j}break e}if((j|0)!=(l|0)){break j}if((f|0)==(m|0)|(d|0)==(m|0)){break e}}b=b+12|0;c=c-1|0;if(c){continue}break}}QZ(a,n,z[o+2076>>2],v[n+16>>2])}b=v[a+2588>>2];if(b>>>0<=63){v[a+2588>>2]=b+1;b=B(b,12)+a|0;v[b+2600>>2]=m;v[b+2596>>2]=h;v[b+2592>>2]=j}k=k+1|0;if((i|0)!=(k|0)){continue}break}}xa=q+256|0}function _W(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0);q=xa-32|0;xa=q;o=z[a+8>>2];g=z[c+8>>2];i=C(o-g);l=C(z[d+8>>2]-g);m=z[a>>2];j=z[c>>2];g=C(m-j);h=C(z[d>>2]-j);j=z[c+4>>2];k=C(z[d+4>>2]-j);r=z[a+4>>2];j=C(r-j);n=C(C(i*l)+C(C(g*h)+C(k*j)));a:{if(n<=C(0)){break a}s=C(C(l*l)+C(C(h*h)+C(k*k)));if(s<=n){i=C(i-l);j=C(j-k);g=C(g-h);break a}y=l;l=C(n/s);i=C(i-C(y*l));j=C(j-C(k*l));g=C(g-C(h*l))}g=C(C(K(C(C(i*i)+C(C(g*g)+C(j*j)))))-e);b:{if(g<=C(0)){v[f>>2]=0;a=1;break b}i=z[b>>2];j=z[b+4>>2];B=g>C(10)?C(g+C(-10)):C(0);z[q+16>>2]=o+C(B*z[b+8>>2]);z[q+12>>2]=r+C(B*j);z[q+8>>2]=m+C(B*i);a=q+8|0;p=q+24|0;j=z[d+8>>2];t=z[c+8>>2];i=C(j-t);n=z[d>>2];u=z[c>>2];h=C(n-u);o=z[d+4>>2];E=z[c+4>>2];k=C(o-E);l=C(K(C(C(i*i)+C(C(h*h)+C(k*k)))));if(l!=C(0)){g=C(C(1)/l);i=C(i*g);k=C(k*g);h=C(h*g)}c:{if(l<=C(9.999999974752427e-7)){g=z[a+8>>2];i=C(g-t);k=C(i*i);i=z[a>>2];l=C(i-u);m=C(l*l);l=z[a+4>>2];h=C(l-E);h=C(k+C(m+C(h*h)));g=C(g-j);k=C(g*g);g=C(i-n);m=C(g*g);g=C(l-o);g=C(k+C(m+C(g*g)));g=C((gC(0))){break d}g=C(i*i);if(C(D(h))>=C(D(k))){g=C(C(1)/C(K(C(C(h*h)+g))));n=C(h*g);g=C(g*C(-i));break d}g=C(C(1)/C(K(C(C(k*k)+g))));n=C(g*C(-k));o=C(i*g);g=C(0)}m=C(C(h*o)-C(g*k));r=C(C(k*n)-C(o*i));s=C(C(i*g)-C(n*h));j=C(K(C(C(m*m)+C(C(r*r)+C(s*s)))));if(j>C(0)){j=C(C(1)/j);m=C(m*j);s=C(s*j);r=C(r*j)}j=z[b+8>>2];w=z[b>>2];x=z[b+4>>2];A=C(C(i*j)+C(C(h*w)+C(k*x)));F=C(C(n*j)+C(C(g*w)+C(o*x)));w=C(C(m*j)+C(C(r*w)+C(s*x)));x=C(K(C(C(A*A)+C(C(F*F)+C(w*w)))));j=x!=C(0)?C(C(1)/x):C(0);t=C(z[a+8>>2]-t);u=C(z[a>>2]-u);y=k;k=C(z[a+4>>2]-E);i=C(C(i*t)+C(C(h*u)+C(y*k)));h=C(C(m*t)+C(C(r*u)+C(s*k)));g=C(C(n*t)+C(C(g*u)+C(o*k)));n=C(e*e);e:{f:{if(!(x=C(.9999998807907104))){break f}}e=C(C(n-C(g*g))-C(h*h));if(!(!(A=C(0)))){e=C(K(e));z[p>>2]=j*C(i+e);z[p+4>>2]=j*C(-C(C(l-i)+e));a=2;break c}d=0;if(!(A>C(0))|!(e>=C(0))){break e}e=C(K(e));z[p+4>>2]=j*C(C(l-i)+e);z[p>>2]=j*C(-C(i+e));a=2;break c}d=0;o=C(F*j);m=C(w*j);k=C(C(g*o)+C(h*m));n=C(C(C(g*g)+C(h*h))-n);g=C(C(o*o)+C(m*m));h=C(C(k*k)-C(n*g));if(hC(0)){a=0;g=C(C(1)/g);h=C(K(h));o=C(g*C(C(-k)-h));m=C(C(o*e)+i);b=!(m>=C(-.0010000000474974513));y=m;m=C(l+C(.0010000000474974513));b=b|!(y<=m);if(!b){z[p>>2]=j*o;a=1}g=C(g*C(h-k));h=C(C(g*e)+i);if(!(h>=C(-.0010000000474974513))|!(h<=m)){break g}d=2;z[(a<<2)+p>>2]=j*g;a=1;if(!b){break e}break g}a=0;g=C(C(-k)/g);h=C(C(g*e)+i);if(!(h>=C(0))|!(h<=l)){break g}z[p>>2]=j*g;a=1;break c}g=C(C(i*e)+k);k=C(C(i*i)+n);h=C(C(g*g)-k);h:{if(h>C(0)){h=C(K(h));n=C(C(-g)-h);i:{if(!(C(C(n*e)+i)<=C(0))){c=a;break i}d=2;z[(a<<2)+p>>2]=j*n;c=1;if(a){break e}}h=C(h-g);if(!(C(C(h*e)+i)<=C(0))){b=c;break h}d=2;z[(c<<2)+p>>2]=j*h;b=1;if(!c){break h}break e}if(h!=C(0)){b=a;break h}if(!(C(i-C(g*e))<=C(0))){b=a;break h}d=2;z[(a<<2)+p>>2]=j*C(-g);b=1;if(a){break e}}g=C(g-C(e*l));h=C(C(g*g)-C(C(l*C(l-C(i+i)))+k));if(h>C(0)){h=C(K(h));k=C(C(-g)-h);j:{k:{if(!(l<=C(C(k*e)+i))){a=b;break k}z[(b<<2)+p>>2]=j*k;a=1;if(b){break j}}g=C(h-g);if(!(l<=C(C(g*e)+i))){break c}z[(a<<2)+p>>2]=j*g;d=1;if(!a){break e}}a=2;break c}a=b;if(h!=C(0)){break c}l:{if(!(l<=C(i-C(g*e)))){break l}d=2;z[(b<<2)+p>>2]=j*C(-g);a=1;if(b){break e}}d=a}a=d}if(a){e=z[q+24>>2];g=z[q+28>>2];z[f>>2]=B+((a|0)==1?e:e>2];O=z[d+20>>2];s=z[c+4>>2];P=z[d+16>>2];r=z[c+8>>2];Q=z[d+8>>2];q=z[d+12>>2];R=z[d+4>>2];A=z[d>>2];c=v[e+32>>2];h=z[e+8>>2];k=z[e+12>>2];n=z[e+4>>2];v[g+348>>2]=0;z[g+344>>2]=k;z[g+340>>2]=h;z[g+336>>2]=n;I=v[e+16>>2];J=v[e+20>>2];W=v[e+28>>2];v[g+328>>2]=v[e+24>>2];v[g+332>>2]=W;v[g+320>>2]=I;v[g+324>>2]=J;t[g+192|0]=0;v[g+184>>2]=0;v[g+188>>2]=0;v[g+176>>2]=0;v[g+180>>2]=0;v[g+168>>2]=0;v[g+172>>2]=0;v[g+160>>2]=0;v[g+164>>2]=0;v[g+304>>2]=c+16;v[g+312>>2]=v[c+56>>2]+B(w[c+55|0],20);t[g+316|0]=w[c+54|0];j=C(n*z[c+68>>2]);i=C(h*z[c+72>>2]);j=i>=j?j:i;i=C(k*z[c+76>>2]);j=i>=j?j:i;z[g+184>>2]=j*C(.02500000037252903);z[g+176>>2]=j*C(.10000000149011612);z[g+180>>2]=j*C(.05000000074505806);I=g+208|0;J=g+256|0;GV(g+336|0,g+320|0,I,J,g+160|0,n==C(1)&h==C(1)&k==C(1));v[g+308>>2]=v[c+60>>2];D=z[d+20>>2];H=z[d+24>>2];l=z[f+20>>2];x=z[f+24>>2];E=z[d+16>>2];i=z[d>>2];o=z[d+4>>2];p=z[d+8>>2];m=z[d+12>>2];j=z[f>>2];k=z[f+4>>2];n=z[f+8>>2];h=z[f+12>>2];y=z[f+16>>2];v[g+156>>2]=0;z[g+152>>2]=x;z[g+148>>2]=l;z[g+144>>2]=y;z[g+140>>2]=h;z[g+136>>2]=n;z[g+132>>2]=k;z[g+128>>2]=j;v[g+120>>2]=0;v[g+124>>2]=0;v[g+112>>2]=0;v[g+116>>2]=0;v[g+96>>2]=0;v[g+76>>2]=0;v[g+60>>2]=0;F=C(-j);y=C(E-y);D=C(D-l);x=C(H-x);H=C(C(C(F*y)-C(D*k))-C(n*x));L=C(C(h*h)+C(-.5));l=C(C(C(h*C(C(k*y)-C(j*D)))+C(L*x))-C(n*H));M=C(l+l);z[g+8>>2]=M;l=C(C(C(i*k)-C(j*o))+C(C(p*h)-C(m*n)));G=C(C(C(o*n)-C(k*p))+C(C(i*h)-C(m*j)));E=C(G+G);S=C(l*E);F=C(C(m*h)-C(C(C(F*i)-C(o*k))-C(n*p)));o=C(C(C(p*j)-C(n*i))+C(C(o*h)-C(m*k)));m=C(o+o);T=C(F*m);G=C(C(1)-C(G*E));U=C(o*m);i=C(A+A);p=C(q+q);V=C(r*C(C(Q*i)-C(R*p)));u=C(C(u-V)-C(V+u));q=C(r*C(C(A*i)+C(C(q*p)+C(-1))));q=C(C(P-q)-C(P+q));i=C(r*C(C(Q*p)+C(i*R)));i=C(C(O-i)-C(O+i));p=C(C(K(C(C(u*u)+C(C(q*q)+C(i*i)))))*C(.5));i=C(p*C(0));r=C(l*m);q=C(F*E);A=C(C(C(G-U)*i)+C(C(C(S-T)*p)+C(i*C(r+q))));z[g+72>>2]=M-A;m=C(C(C(L*D)+C(h*C(C(j*x)-C(n*y))))-C(k*H));m=C(m+m);z[g+4>>2]=m;u=C(C(r-q)*i);o=C(o*E);r=C(l+l);q=C(F*r);l=C(l*r);r=C(u+C(C(C(o+q)*p)+C(i*C(G-l))));z[g+68>>2]=m-r;z[g+56>>2]=A+M;z[g+52>>2]=r+m;z[g+80>>2]=s;v[g+12>>2]=0;v[g+28>>2]=4;t[g+32|0]=1;z[g+24>>2]=s;z[g+20>>2]=s;z[g+16>>2]=s;h=C(C(C(L*y)+C(h*C(C(n*D)-C(k*x))))-C(j*H));h=C(h+h);z[g>>2]=h;k=C(C(C(S+T)*i)+C(C(C(C(C(1)-U)-l)*p)+C(i*C(o-q))));z[g+64>>2]=h-k;z[g+48>>2]=k+h;N=z[e+4>>2]!=C(1)|z[e+8>>2]!=C(1)?N:z[e+12>>2]==C(1);l2(g+160|0,N,g+424|0);v[g+392>>2]=J;v[g+388>>2]=I;v[g+384>>2]=g+128;a:{if(N){t[g+396|0]=1;v[g+352>>2]=141020;break a}t[g+396|0]=0;v[g+352>>2]=141068}v[g+400>>2]=g+160;d=xa-48|0;xa=d;v[d+32>>2]=0;e=g+352|0;c=d2(g,g+424|0,e,d+32|0,d,d+16|0);if(c){e=v[e+32>>2];h=z[e+12>>2];k=z[e+8>>2];n=z[e>>2];j=z[e+4>>2];i=z[d+24>>2];s=z[d+16>>2];o=z[d+20>>2];v[g+124>>2]=0;p=C(C(h*h)+C(-.5));m=C(C(k*i)+C(C(n*s)+C(j*o)));l=C(C(C(h*C(C(n*o)-C(s*j)))+C(i*p))+C(k*m));z[g+120>>2]=l+l;l=C(C(j*m)+C(C(p*o)+C(h*C(C(k*s)-C(i*n)))));z[g+116>>2]=l+l;h=C(C(n*m)+C(C(s*p)+C(h*C(C(j*i)-C(o*k)))));z[g+112>>2]=h+h;e=v[d+12>>2];v[g+104>>2]=v[d+8>>2];v[g+108>>2]=e;e=v[d+4>>2];v[g+96>>2]=v[d>>2];v[g+100>>2]=e}xa=d+48|0;if(c){h=z[g+96>>2];z[b>>2]=h>C(0)?h:C(0);b=v[g+112>>2];d=v[g+116>>2];z[a+8>>2]=z[g+120>>2];v[a>>2]=b;v[a+4>>2]=d}xa=g+496|0;return c|0}function t3(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,w=0,x=0,A=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=0,N=0,O=C(0),P=C(0),Q=C(0),R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=0;n=xa-32|0;xa=n;k=v[f>>2]+1|0;v[f>>2]=k;if(k>>>0>y[e>>2]){v[e>>2]=k}a:{s=v[d+68>>2];t=v[d+32>>2];w=v[d+104>>2];x=v[d+140>>2];N=((((s|0)!=-1)+((t|0)!=-1)|0)+((w|0)!=-1)|0)+((x|0)!=-1)|0;if(!N){break a}S=z[j+8>>2];T=z[i+8>>2];U=z[j+4>>2];V=z[i+4>>2];W=z[j>>2];X=z[i>>2];Y=z[h+8>>2];Z=z[h+4>>2];_=z[h>>2];$=z[g+8>>2];aa=z[g+4>>2];ba=z[g>>2];b:while(1){E=B(L,36)+d|0;F=z[E+16>>2];G=z[E+28>>2];O=C(F-G);A=C(O*$);c:{if(C(D(A))>2];H=z[E+8>>2];I=z[E+24>>2];J=z[E+12>>2];k=(b+L<<4)+a|0;u[k+10>>1]=r;P=C(J-I);K=C(P*aa);d:{if(C(D(K))>1]=p;K=C(H-A);Q=C(K*ba);e:{if(C(D(Q))>1]=m;F=C(F+G);G=C(F*Y);f:{if(C(D(G))>1]=o;I=C(J+I);J=C(I*Z);g:{if(C(D(J))>1]=q;A=C(H+A);H=C(A*_);h:{if(C(D(H))>1]=l;while(1){M=K>16));R=m&65535;ca=!M|!R;i:{while(1){j:{if(!((l&65535)!=32767&A>C(W*C(l<<16>>16)))){if(!M){break i}if(R){break j}break i}l=l+1|0;u[k>>1]=l;if(ca){continue}}break}m=m-1|0;u[k+2>>1]=m;continue}break}while(1){m=C(V*C(p<<16>>16))>P;l=p&65535;M=!m|!l;k:{while(1){l:{if(!((q&65535)!=32767&I>C(U*C(q<<16>>16)))){if(!m){break k}if(l){break l}break k}q=q+1|0;u[k+4>>1]=q;if(M){continue}}break}p=p-1|0;u[k+6>>1]=p;continue}break}while(1){p=C(T*C(r<<16>>16))>O;m=r&65535;q=!p|!m;while(1){m:{if(!((o&65535)!=32767&F>C(S*C(o<<16>>16)))){if(m?p:0){break m}v[k+12>>2]=v[E+32>>2];L=L+1|0;if((N|0)!=(L|0)){continue b}break a}o=o+1|0;u[k+8>>1]=o;if(q){continue}}break}r=r-1|0;u[k+10>>1]=r;continue}}}v[n+24>>2]=-1;v[n+28>>2]=-1;v[n+16>>2]=-1;v[n+20>>2]=-1;v[n+8>>2]=0;v[n+12>>2]=0;v[n>>2]=0;v[n+4>>2]=0;k=(b<<4)+a|0;n:{if((t|0)!=-1){l=0;if(t&1){break n}l=v[c>>2];v[c>>2]=l+4;o=v[t+140>>2];r=v[t+104>>2];p=v[t+68>>2];m=v[t+32>>2];v[n>>2]=t;v[n+16>>2]=l;v[((b<<4)+a|0)+12>>2]=(l<<11|((((p|0)!=-1)+((m|0)!=-1)|0)+((r|0)!=-1)|0)+((o|0)!=-1)<<1)-4|v[d+36>>2]<<3;l=1;break n}v[k>>2]=0;v[k+4>>2]=0;v[k+8>>2]=0;v[k+12>>2]=-1;l=0}o:{if((s|0)!=-1){if(s&1){break o}b=v[c>>2];v[c>>2]=b+4;o=v[s+140>>2];r=v[s+104>>2];p=v[s+68>>2];m=v[s+32>>2];q=l<<2;v[(q|n)>>2]=s;v[(q|n+16)>>2]=b;v[k+28>>2]=(b<<11|((((p|0)!=-1)+((m|0)!=-1)|0)+((r|0)!=-1)|0)+((o|0)!=-1)<<1)-4|v[d+72>>2]<<3;l=l+1|0;break o}v[k+16>>2]=0;v[k+20>>2]=0;v[k+24>>2]=0;v[k+28>>2]=-1}p:{if((w|0)!=-1){if(w&1){break p}b=v[c>>2];v[c>>2]=b+4;o=v[w+140>>2];r=v[w+104>>2];p=v[w+68>>2];m=v[w+32>>2];q=l<<2;v[(q|n)>>2]=w;v[(q|n+16)>>2]=b;v[k+44>>2]=(b<<11|((((p|0)!=-1)+((m|0)!=-1)|0)+((r|0)!=-1)|0)+((o|0)!=-1)<<1)-4|v[d+108>>2]<<3;l=l+1|0;break p}v[k+32>>2]=0;v[k+36>>2]=0;v[k+40>>2]=0;v[k+44>>2]=-1}q:{r:{s:{if((x|0)!=-1){if(x&1){break s}b=v[c>>2];v[c>>2]=b+4;o=v[x+140>>2];r=v[x+104>>2];p=v[x+68>>2];m=v[x+32>>2];q=l<<2;v[q+n>>2]=x;v[q+(n+16|0)>>2]=b;v[k+60>>2]=(b<<11|((((p|0)!=-1)+((m|0)!=-1)|0)+((r|0)!=-1)|0)+((o|0)!=-1)<<1)-4|v[d+144>>2]<<3;l=l+1|0;break r}v[k+48>>2]=0;v[k+52>>2]=0;v[k+56>>2]=0;v[k+60>>2]=-1}if(!l){break q}}o=0;while(1){b=o<<2;t3(a,v[b+(n+16|0)>>2],c,v[b+n>>2],e,f,g,h,i,j);v[f>>2]=v[f>>2]-1;o=o+1|0;if((o|0)!=(l|0)){continue}break}}xa=n+32|0}function d1(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=0,k=0,l=0,m=0,n=0,o=C(0),p=0,q=0,r=C(0),s=0,u=0;k=xa-16|0;xa=k;a:{if(w[b+64|0]&2){c=v[b+28>>2];v[k+4>>2]=v[b+24>>2];v[k+8>>2]=c;v[k>>2]=144332;break a}c=v[b+28>>2];v[k+4>>2]=v[b+24>>2];v[k+8>>2]=c;v[k>>2]=144372}i=xa-48|0;xa=i;j=v[b+192>>2];if((j|0)>0){s=v[b+200>>2];while(1){m=j;j=j-1|0;u=v[b+200>>2]+B(j,112)|0;n=0;while(1){c=(n<<2)+u|0;b:{if(z[c>>2]>z[c+48>>2]){break b}e=v[c+96>>2];if(e&1){Ba[v[v[k>>2]>>2]](k,e-1|0,i,i+32|0);f=z[i+36>>2];g=z[i+40>>2];d=z[i+32>>2];h=z[i+4>>2];o=z[i+8>>2];z[c>>2]=z[i>>2];z[c+32>>2]=o;z[c+16>>2]=h;z[c+48>>2]=d;z[c+80>>2]=g;z[c- -64>>2]=f;break b}l=c- -64|0;c:{d:{e:{f:{e=e+s|0;f=z[e>>2];g:{h:{if(f>z[e+48>>2]){f=z[e+4>>2];if(f>z[e+52>>2]){break f}z[c>>2]=f;z[c+16>>2]=z[e+20>>2];z[c+32>>2]=z[e+36>>2];g=z[e+52>>2];z[c+48>>2]=g;z[l>>2]=z[e+68>>2];d=z[e+84>>2];break h}z[c>>2]=f;z[c+16>>2]=z[e+16>>2];z[c+32>>2]=z[e+32>>2];g=z[e+48>>2];z[c+48>>2]=g;z[l>>2]=z[e+64>>2];z[c+80>>2]=z[e+80>>2];d=z[e+4>>2];if(d>z[e+52>>2]){break g}f=d>f?f:d;z[c>>2]=f;d=z[c+16>>2];h=z[e+20>>2];z[c+16>>2]=d>2];h=z[e+36>>2];z[c+32>>2]=d>2];g=d>2]=g;d=z[l>>2];h=z[e+68>>2];z[l>>2]=d>h?d:h;d=z[c+80>>2];h=z[e+84>>2];d=d>h?d:h}z[c+80>>2]=d}d=z[e+8>>2];if(d>z[e+56>>2]){break d}f=d>f?f:d;z[c>>2]=f;d=z[c+16>>2];h=z[e+24>>2];z[c+16>>2]=d>2];h=z[e+40>>2];z[c+32>>2]=d>2];g=d>2]=g;d=z[l>>2];h=z[e+72>>2];z[l>>2]=d>h?d:h;d=z[c+80>>2];h=z[e+88>>2];d=d>h?d:h;break e}f=z[e+8>>2];if(f>z[e+56>>2]){break c}z[c>>2]=f;z[c+16>>2]=z[e+24>>2];z[c+32>>2]=z[e+40>>2];g=z[e+56>>2];z[c+48>>2]=g;z[l>>2]=z[e+72>>2];d=z[e+88>>2]}z[c+80>>2]=d}d=z[e+12>>2];if(d>z[e+60>>2]){break b}z[c>>2]=d>f?f:d;f=z[c+16>>2];d=z[e+28>>2];z[c+16>>2]=d>f?f:d;f=z[c+32>>2];d=z[e+44>>2];z[c+32>>2]=d>f?f:d;f=z[e+60>>2];z[c+48>>2]=f>2];g=z[e+76>>2];z[l>>2]=f>g?f:g;f=z[c+80>>2];g=z[e+92>>2];z[c+80>>2]=f>g?f:g;break b}f=z[e+12>>2];if(f>z[e+60>>2]){break b}z[c>>2]=f;z[c+16>>2]=z[e+28>>2];z[c+32>>2]=z[e+44>>2];z[c+48>>2]=z[e+60>>2];z[l>>2]=z[e+76>>2];z[c+80>>2]=z[e+92>>2]}n=n+1|0;if((n|0)!=4){continue}break}if((m|0)>1){continue}break}}i:{if(!a|!v[b+180>>2]){break i}A0(v[b+200>>2],i);c=v[i+4>>2];j=v[i>>2];z[a+8>>2]=z[i+8>>2];v[a>>2]=j;v[a+4>>2]=c;c=v[i+16>>2];j=v[i+12>>2];z[a+20>>2]=z[i+20>>2];v[a+12>>2]=j;v[a+16>>2]=c;j=1;if(y[b+180>>2]<=1){break i}while(1){A0(v[b+200>>2]+B(j,112)|0,i);f=z[i>>2];g=z[i+4>>2];d=z[a+8>>2];h=z[i+8>>2];z[a+8>>2]=d>2];z[a+4>>2]=d>2];z[a>>2]=f>g?g:f;f=z[i+12>>2];g=z[i+16>>2];d=z[a+20>>2];h=z[i+20>>2];z[a+20>>2]=d>h?d:h;d=z[a+16>>2];z[a+16>>2]=d>g?d:g;g=z[a+12>>2];z[a+12>>2]=f>>0>2]){continue}break}}xa=i+48|0;c=v[b+196>>2];j:{if(c&2){break j}v[b+196>>2]=c|2;if(!v[b+56>>2]){break j}c=Ba[v[v[b>>2]+40>>2]](b)|0;if(!c){break j}j=0;if(c-1>>>0>=3){m=c&-4;while(1){e=v[b+56>>2]+j|0;t[e|0]=w[e|0]|56;e=v[b+56>>2]+(j|1)|0;t[e|0]=w[e|0]|56;e=v[b+56>>2]+(j|2)|0;t[e|0]=w[e|0]|56;e=v[b+56>>2]+(j|3)|0;t[e|0]=w[e|0]|56;j=j+4|0;p=p+4|0;if((m|0)!=(p|0)){continue}break}}c=c&3;if(!c){break j}while(1){m=v[b+56>>2]+j|0;t[m|0]=w[m|0]|56;j=j+1|0;q=q+1|0;if((c|0)!=(q|0)){continue}break}}f=z[a+16>>2];g=z[a+20>>2];d=z[a+4>>2];h=z[a+8>>2];o=z[a+12>>2];r=z[a>>2];z[b+44>>2]=C(o-r)*C(.5);z[b+32>>2]=C(r+o)*C(.5);z[b+52>>2]=C(g-h)*C(.5);z[b+48>>2]=C(f-d)*C(.5);z[b+40>>2]=C(h+g)*C(.5);z[b+36>>2]=C(d+f)*C(.5);xa=k+16|0}function E3(a,b,c,d,e,f,g){var h=0,i=0,j=C(0),k=0,l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),w=0,x=0,A=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=xa-48|0;xa=h;i=1;w=v[e>>2];L=g+1|0;v[e>>2]=g?w>>>0>L>>>0?w:L:1;g=c>>>2|0;w=g>>>0>1?g:1;g=v[a+8>>2];m=g+(v[b>>2]<<5)|0;l=z[m+8>>2];o=z[m+4>>2];p=z[m>>2];t=z[m+16>>2];u=z[m+24>>2];q=z[m+20>>2];if(c>>>0>1){while(1){m=g+(v[(i<<2)+b>>2]<<5)|0;j=z[m+8>>2];l=j>l?l:j;j=z[m+4>>2];o=j>o?o:j;j=z[m>>2];p=j>p?p:j;j=z[m+16>>2];t=j>2];u=j>2];q=j>2]=r;n=C(u-l);z[h+40>>2]=n;j=C(q-o);z[h+36>>2]=j;H=v[a+12>>2];D=d;g=v[d+8>>2]&2147483647;N=v[d+4>>2];d=N+4|0;if(g>>>0>>0){D3(D,d)}v[D+4>>2]=d;d=j>n?1:2;M=j0?d:0;O=c-1|0;while(1){E=B(w,x);P=s;if((x|0)==3){d=m}else{if(E>>>0<=O>>>0){A=w;s=O;d=E;while(1){I=(s<<2)+b|0;k=v[I>>2];g=(d+s<<1&-4)+b|0;i=v[g>>2];v[I>>2]=i;v[g>>2]=k;g=d;a:{if(s>>>0<=d>>>0){break a}J=M<<2;j=z[J+(B(i,12)+H|0)>>2];k=d+1|0;i=d;if(s-g&1){i=k;g=j>=z[(B(v[(d<<2)+b>>2],12)+H|0)+J>>2]?i:d}if((k|0)==(s|0)){break a}while(1){K=(i<<2)+b|0;F=v[K>>2];if(j>=z[(B(F,12)+H|0)+J>>2]){G=(g<<2)+b|0;k=v[G>>2];v[G>>2]=F;v[K>>2]=k;g=g+1|0}F=v[K+4>>2];if(j>=z[(B(F,12)+H|0)+J>>2]){G=(g<<2)+b|0;k=v[G>>2];v[G>>2]=F;v[K+4>>2]=k;g=g+1|0}i=i+2|0;if((s|0)!=(i|0)){continue}break}}k=v[I>>2];i=(g<<2)+b|0;v[I>>2]=v[i>>2];v[i>>2]=k;k=(g-d|0)+1|0;if((k|0)!=(A|0)){i=k>>>0>A>>>0;d=i?d:g+1|0;s=i?g-1|0:s;A=A-(i?0:k)|0;continue}break}d=(h+32|0)+(M<<2)|0;z[d>>2]=z[d>>2]*z[(x<<2)+103908>>2];n=z[h+36>>2];j=z[h+40>>2];d=n>j?1:2;l=j;j=z[h+32>>2];M=j>n?l>2]|0;b:{if(d>>>0<=y[a+24>>2]){if(!(!d|c>>>0>>0)){v[i+28>>2]=d;v[i+24>>2]=(b-v[a+4>>2]>>2)+E;k=v[a+8>>2];i=k+(v[(E<<2)+b>>2]<<5)|0;g=v[i+28>>2];v[h+24>>2]=v[i+24>>2];v[h+28>>2]=g;g=v[i+20>>2];v[h+16>>2]=v[i+16>>2];v[h+20>>2]=g;g=v[i+4>>2];v[h>>2]=v[i>>2];v[h+4>>2]=g;g=v[i+12>>2];v[h+8>>2]=v[i+8>>2];v[h+12>>2]=g;if(d>>>0<2){break b}i=1;l=z[h+24>>2];o=z[h+20>>2];p=z[h+16>>2];t=z[h+8>>2];u=z[h+4>>2];q=z[h>>2];while(1){g=k+(v[(i+E<<2)+b>>2]<<5)|0;r=z[g>>2];n=z[g+4>>2];j=z[g+8>>2];v[h+12>>2]=0;t=j>t?t:j;z[h+8>>2]=t;u=n>u?u:n;z[h+4>>2]=u;q=q>2]=q;r=z[g+16>>2];n=z[g+20>>2];j=z[g+24>>2];v[h+28>>2]=0;l=j>2]=l;o=o>n?o:n;z[h+20>>2]=o;p=p>r?p:r;z[h+16>>2]=p;i=i+1|0;if((d|0)!=(i|0)){continue}break}break b}v[h+24>>2]=0;v[h+28>>2]=0;v[h+16>>2]=0;v[h+20>>2]=0;v[h+8>>2]=0;v[h+12>>2]=0;v[h>>2]=0;v[h+4>>2]=0;v[i+16>>2]=-25165825;v[i+20>>2]=-25165825;v[i+8>>2]=2122317823;v[i+12>>2]=-25165825;v[i>>2]=2122317823;v[i+4>>2]=2122317823;v[i+24>>2]=-1;v[i+28>>2]=-1;break b}g=v[D+4>>2];v[i+28>>2]=0;v[i+24>>2]=g;E3(a,(E<<2)+b|0,d,D,e,h,L)}c:{if(!x){d=v[h+4>>2];v[f>>2]=v[h>>2];v[f+4>>2]=d;d=v[h+12>>2];v[f+8>>2]=v[h+8>>2];v[f+12>>2]=d;d=v[h+28>>2];v[f+24>>2]=v[h+24>>2];v[f+28>>2]=d;d=v[h+20>>2];v[f+16>>2]=v[h+16>>2];v[f+20>>2]=d;l=z[h+8>>2];o=z[h+4>>2];p=z[h>>2];break c}p=z[h>>2];o=z[h+4>>2];l=z[h+8>>2];v[f+12>>2]=0;j=z[f+8>>2];z[f+8>>2]=j>2];z[f+4>>2]=j>2];z[f>>2]=j>2];r=z[h+20>>2];n=z[h+24>>2];v[f+28>>2]=0;j=z[f+24>>2];z[f+24>>2]=j>n?j:n;j=z[f+20>>2];z[f+20>>2]=j>r?j:r;j=z[f+16>>2];z[f+16>>2]=j>q?j:q}i=A+v[D>>2]|0;z[i+8>>2]=l;z[i+4>>2]=o;z[i>>2]=p;g=v[h+20>>2];d=v[h+16>>2];z[i+20>>2]=z[h+24>>2];v[i+12>>2]=d;v[i+16>>2]=g;x=x+1|0;if((x|0)!=4){continue}break}xa=h+48|0}function mT(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=C(0),p=0,q=C(0),r=C(0),s=0,u=C(0),x=0,y=C(0),B=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=C(0),R=C(0),S=0,T=0,U=0,V=0,W=C(0),X=0;n=xa-112|0;xa=n;U=v[b+324>>2];t[a|0]=0;V=A[e+24>>3];F=A[e+16>>3];P=z[b+264>>2];S=+P;Q=z[b+260>>2];T=+Q;x=A[e+8>>3];W=z[e+32>>2];p=U&-258;u=z[b+280>>2];q=z[f+8>>2];R=z[b+268>>2];y=z[f>>2];o=z[f+4>>2];B=C(C(q*R)+C(C(y*Q)+C(P*o)));a:{if(B>C(0)){v[b+324>>2]=p|256;u=k?u:C(0);break a}v[b+324>>2]=p}X=v[b+240>>2];v[n+104>>2]=0;v[n+96>>2]=0;v[n+100>>2]=0;v[n+88>>2]=0;v[n+80>>2]=0;v[n+84>>2]=0;r=q;q=C(R*B);L=C(r-q);r=o;o=C(P*B);M=C(r-o);r=C(Q*B);N=C(y-r);b:{if(B<=C(0)){O=n+80|4;z[n+80>>2]=r;G=q;H=o;I=r;r=C(0);y=C(0);p=n+88|0;break b}O=n+96|4;z[n+96>>2]=r;J=o;y=q;p=n+104|0}z[O>>2]=o;z[p>>2]=q;z[n+68>>2]=M;z[n+64>>2]=N;z[n+72>>2]=L;E=C(D(N));q=C(D(M));o=C(D(L));O=E>C(9.999999974752427e-7)|k|q>C(9.999999974752427e-7)|o>C(9.999999974752427e-7);if((O|0)==1){z[n+104>>2]=C(R*u)+y;z[n+100>>2]=C(P*u)+J;z[n+96>>2]=C(Q*u)+r}F=V*+R+(x*T+F*S);k=n+16|0;s=e+8|0;Ba[v[v[e>>2]+8>>2]](e,b,k,s,f);kT(b,c,g,k,i,n- -64|0);v[b+96>>2]=0;v[n+12>>2]=0;k=0;c:{if(w[b+324|0]&2){break c}k=0;if(!lT(b,c,d,g,e,n+96|0,n- -64|0,w[b+300|0]?1:E>C(9.999999974752427e-7)?1:q>C(9.999999974752427e-7)?1:o>C(9.999999974752427e-7)?1:10,n+12|0,h,i,0,l,m)|!v[n+12>>2]){break c}t[a|0]=2;o=C(A[e+24>>3]*+z[b+268>>2]+(A[e+8>>3]*+z[b+260>>2]+A[e+16>>3]*+z[b+264>>2])-F);u=o>2]=1;v[b+324>>2]=v[b+324>>2]&-9;v[n+12>>2]=0;p=n- -64|0;if(!(!lT(b,c,d,g,e,p,p,10,n+12|0,h,i,1,l,m)|!v[n+12>>2])){k=k|1;t[a|0]=k}d:{if(!j|v[e+36>>2]!=1){break d}p=v[b+324>>2];if(p&8){break d}q=C(C(L*L)+C(C(N*N)+C(M*M)));o=C(K(q));E=z[e+40>>2];if(!(oC(0)){o=C(C(1)/o);y=C(L*o);r=C(N*o);J=C(M*o)}z[n+8>>2]=E*y;z[n+4>>2]=E*J;z[n>>2]=E*r;v[b+324>>2]=p&-9;v[n+12>>2]=0;p=v[s+20>>2];v[n+32>>2]=v[s+16>>2];v[n+36>>2]=p;p=v[s+12>>2];v[n+24>>2]=v[s+8>>2];v[n+28>>2]=p;p=v[s+4>>2];v[n+16>>2]=v[s>>2];v[n+20>>2]=p;lT(b,c,d,g,e,n,n- -64|0,1,n+12|0,h,i,3,l,m);p=v[n+36>>2];v[s+16>>2]=v[n+32>>2];v[s+20>>2]=p;p=v[n+28>>2];v[s+8>>2]=v[n+24>>2];v[s+12>>2]=p;p=v[n+20>>2];v[s>>2]=v[n+16>>2];v[s+4>>2]=p}v[b+96>>2]=2;v[n+12>>2]=0;if(O){q=z[b+260>>2];o=z[b+264>>2];z[n+88>>2]=G-C(u*z[b+268>>2]);z[n+84>>2]=H-C(u*o);z[n+80>>2]=I-C(u*q)}x=F-+W;v[b+324>>2]=v[b+324>>2]&-5;v[m>>2]=0;v[l>>2]=0;v[b+176>>2]=-1;e:{f:{g:{if(!(!lT(b,c,d,g,e,n+80|0,n- -64|0,(U&2)>>>1|0?(X|0)==1?10:1:1,n+12|0,h,i,2,l,m)|!v[n+12>>2])){if(B<=C(0)){t[a|0]=k|4}if(!w[b+297|0]){break e}k=v[b+324>>2];if((k&56)!=8){break g}o=C(C(z[b+140>>2]*z[b+268>>2])+C(C(z[b+132>>2]*z[b+260>>2])+C(z[b+136>>2]*z[b+264>>2])));if(!(o>=C(0))|!(o>2])|(!j|!(+z[b+308>>2]>x+ +u))){break g}a=k|1;v[b+324>>2]=a;if(k&2){break f}break e}if(!w[b+297|0]){break e}}a=v[b+324>>2]}if(!(B<=C(0))|a&48|(!(a&4)|!(z[b+280>>2]>2]-x)))){break e}G=z[b+268>>2];H=z[b+260>>2];I=z[b+264>>2];o=C(C(z[b+128>>2]*G)+C(C(z[b+120>>2]*H)+C(z[b+124>>2]*I)));if(!(o>=C(0))|!(o>2])){break e}v[b+324>>2]=a|1;if(!(a&2)){break e}v[b+324>>2]=a|65;J=z[f+8>>2];q=z[f>>2];o=z[f+4>>2];S=A[e+24>>3];T=A[e+8>>3];x=A[e+16>>3];v[n+12>>2]=0;x=S*+G+(T*+H+x*+I);o=C((x>F?C(x-F):C(0))+C(D(C(C(J*G)+C(C(q*H)+C(I*o))))));z[n+24>>2]=o*C(-G);z[n+20>>2]=o*C(-I);z[n+16>>2]=o*C(-H);lT(b,c,d,g,e,n+16|0,n- -64|0,10,n+12|0,h>o?C(o/C(10)):h,i,0,l,m);v[b+324>>2]=v[b+324>>2]&-65}xa=n+112|0}function hM(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;j=xa-544|0;xa=j;a:{if(!v[a+100>>2]){break a}n=v[a+188>>2];v[a+188>>2]=v[a+192>>2];f=v[a+132>>2];l=v[a+156>>2];k=v[a+144>>2];m=v[a+96>>2];c=-1;while(1){d=f+(v[(e<<2)+m>>2]<<3)|0;b=v[d+4>>2];d=v[d>>2];v[(d<<2)+l>>2]=1073741821;v[(b<<2)+l>>2]=1073741821;c=c>>>0>d>>>0?d:c;e=e+1|0;g=v[a+100>>2];if(e>>>0>>0){continue}break}i=(v[a+188>>2]<<1)+2|0;if((i|0)!=(c|0)){h=v[a+132>>2];b=c;while(1){b:{if((c|0)==(i|0)){break b}while(1){e=c<<2;f=e+l|0;if(v[f>>2]==1073741821){c=c+1|0;if((i|0)!=(c|0)){continue}break b}break}c:{if((b|0)==(c|0)){break c}d=b<<2;v[d+k>>2]=v[e+k>>2];e=d+l|0;d=v[f>>2];v[e>>2]=d;if((d&-2)==1073741822){break c}v[(h+(d<<2&-8)|0)+((d&1)<<2)>>2]=b}b=b+1|0;c=c+1|0;if((i|0)!=(c|0)){continue}}break}g=v[a+100>>2]}i=v[a+160>>2];k=v[a+148>>2];d:{e:{if(!g){g=(v[a+188>>2]<<1)+2|0;c=-1;break e}f=v[a+136>>2];g=0;c=-1;while(1){d=f+(v[(g<<2)+m>>2]<<3)|0;b=v[d+4>>2];d=v[d>>2];v[i+(d<<2)>>2]=1073741821;v[i+(b<<2)>>2]=1073741821;c=c>>>0>d>>>0?d:c;b=v[a+100>>2];g=g+1|0;if(b>>>0>g>>>0){continue}break}g=(v[a+188>>2]<<1)+2|0;if((g|0)==(c|0)){break d}}h=v[a+136>>2];b=c;f:while(1){g:{if((c|0)==(g|0)){break g}while(1){e=c<<2;f=e+i|0;if(v[f>>2]!=1073741821){h:{if((b|0)==(c|0)){break h}d=b<<2;v[d+k>>2]=v[e+k>>2];e=d+i|0;d=v[f>>2];v[e>>2]=d;if((d&-2)==1073741822){break h}v[(h+(d<<2&-8)|0)+((d&1)<<2)>>2]=b}b=b+1|0;c=c+1|0;if((g|0)!=(c|0)){continue f}break g}c=c+1|0;if((g|0)!=(c|0)){continue}break}}break}b=v[a+100>>2]}i=v[a+164>>2];k=v[a+152>>2];i:{j:{if(!b){g=(v[a+188>>2]<<1)+2|0;c=-1;break j}f=v[a+140>>2];g=0;c=-1;while(1){d=f+(v[(g<<2)+m>>2]<<3)|0;b=v[d+4>>2];d=v[d>>2];v[i+(d<<2)>>2]=1073741821;v[i+(b<<2)>>2]=1073741821;c=c>>>0>d>>>0?d:c;b=v[a+100>>2];g=g+1|0;if(b>>>0>g>>>0){continue}break}g=(v[a+188>>2]<<1)+2|0;if((g|0)==(c|0)){break i}}h=v[a+140>>2];b=c;k:while(1){l:{if((c|0)==(g|0)){break l}while(1){e=c<<2;f=e+i|0;if(v[f>>2]!=1073741821){m:{if((b|0)==(c|0)){break m}d=b<<2;v[d+k>>2]=v[e+k>>2];e=d+i|0;d=v[f>>2];v[e>>2]=d;if((d&-2)==1073741822){break m}v[(h+(d<<2&-8)|0)+((d&1)<<2)>>2]=b}b=b+1|0;c=c+1|0;if((g|0)!=(c|0)){continue k}break l}c=c+1|0;if((g|0)!=(c|0)){continue}break}}break}b=v[a+100>>2]}if(b){e=v[a+140>>2];f=v[a+136>>2];d=v[a+132>>2];c=0;while(1){h=v[(c<<2)+m>>2]<<3;b=h+d|0;v[b>>2]=1073741821;v[b+4>>2]=1073741821;b=f+h|0;v[b>>2]=1073741821;v[b+4>>2]=1073741821;b=e+h|0;v[b>>2]=1073741821;v[b+4>>2]=1073741821;c=c+1|0;if(c>>>0>2]){continue}break}}b=v[a+128>>2];d=(b>>>5|0)+1|0;f=d<<2;e=j+24|0;if(b>>>0>=4096){b=v[37696]+12|0;e=Ba[v[v[b>>2]+8>>2]](b,f,24422,18213,56)|0}v[j+536>>2]=e;c=0;J9(e,0,f);v[j+12>>2]=d|-2147483648;e=v[j+536>>2];v[j+8>>2]=e;if(v[a+100>>2]){f=v[a+96>>2];while(1){d=v[f+(c<<2)>>2];b=e+(d>>>3&536870908)|0;v[b>>2]=v[b>>2]|1<>>0>2]){continue}break}}h=0;e=a+216|0;c=v[e+28>>2];if(c){f=v[j+8>>2];while(1){b=v[e+20>>2]+(h<<3)|0;d=v[b+4>>2];b=v[b>>2];n:{if(v[(d>>>3&536870908)+f>>2]>>>d&1?1:v[(b>>>3&536870908)+f>>2]>>>b&1){b=b|d<<16;b=(b<<15^-1)+b|0;b=B(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;VL(e,v[e+36>>2]&(b>>16^b),h);c=v[e+28>>2];f=v[j+8>>2];break n}h=h+1|0}if(c>>>0>h>>>0){continue}break}}b=n-v[a+100>>2]|0;v[a+188>>2]=b;v[a+192>>2]=b-v[a+92>>2];b=v[j+8>>2];if(!(!b|v[j+12>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}b=v[j+536>>2];if((b|0)==(j+24|0)|!b){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}xa=j+544|0} +function pz(a,b,c,d,e,f){var g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);h=v[a+36>>2];t=z[h+140>>2];a:{b:{c:{d:{e:{if(c){i=z[h+8>>2];g=z[e+24>>2];k=C(g+g);m=z[h>>2];g=z[e+16>>2];j=C(g+g);g=z[e+20>>2];l=C(g+g);n=z[h+4>>2];o=C(C(i*k)+C(C(m*j)+C(l*n)));x=z[e+8>>2];y=z[e>>2];w=z[e+4>>2];g=z[h+124>>2];A=g==C(0)?C(1):g;g=z[h+12>>2];q=C(C(g*g)+C(-.5));r=C(C(i*o)+C(C(k*q)-C(g*C(C(m*l)-C(j*n)))));p=z[h+120>>2];B=p>C(0)?C(C(1)/p):C(1);p=C(C(m*o)+C(C(j*q)-C(g*C(C(n*k)-C(l*i)))));s=z[h+112>>2];s=s>C(0)?C(C(1)/s):C(1);D=z[h+116>>2];D=D>C(0)?C(C(1)/D):C(1);m=C(C(n*o)+C(C(l*q)-C(g*C(C(i*j)-C(k*m)))));k=C(C(C(C(x*x)+C(C(y*y)+C(w*w)))+C(A*C(C(C(r*r)*B)+C(C(C(p*p)*s)+C(D*C(m*m))))))*C(.5));g=C(0);if(f){c=v[h+152>>2];g=C((c>>>0<10?c:10)>>>0)}j=z[h+136>>2];i=C(z[a+60>>2]-b);l=i>C(0)?i:C(0);z[a+60>>2]=l;i=C(F(C(z[a+76>>2]+b),C(1)));if(k>=C(g*j)){v[a+60>>2]=1069547520;j=f?i:C(1);break e}j=C(1);if(!f){break e}if(g>C(1)){g=C(C(b*C(-.5))+C(1));z[h+72>>2]=g*z[h+72>>2];z[h+68>>2]=g*z[h+68>>2];z[h+64>>2]=g*z[h+64>>2];z[h+80>>2]=g*z[h+80>>2];z[h+84>>2]=g*z[h+84>>2];z[h+88>>2]=g*z[h+88>>2];i=C(C((f?i:C(1))*C(.75))+C(.02500000037252903))}g=z[h+136>>2];z[a+76>>2]=i;f=a+28|0;c=u[a+28>>1]&1;if(!(k>2]=z[a>>2];z[h+4>>2]=z[a+4>>2];z[h+8>>2]=z[a+8>>2];z[h+12>>2]=z[a+12>>2];z[h+16>>2]=z[a+16>>2];z[h+20>>2]=z[a+20>>2];z[h+24>>2]=z[a+24>>2];c=c?1:3;break c}if(d){g=C(1);f:{if(!f){break f}c=v[h+152>>2];if(c>>>0<2){break f}g=C(C(1)/C(c>>>0))}z[a+76>>2]=g}if(!(tt)){break b}o=z[h+120>>2];x=z[h+116>>2];j=z[e+24>>2];n=z[e+20>>2];y=z[h+112>>2];i=z[h>>2];l=z[e+16>>2];g=z[h+12>>2];k=z[h+4>>2];m=z[h+8>>2];r=z[e+8>>2];q=z[e+4>>2];w=C(z[e>>2]+z[a+48>>2]);z[a+48>>2]=w;q=C(q+z[a+52>>2]);z[a+52>>2]=q;r=C(r+z[a+56>>2]);z[a+56>>2]=r;j=C(j+j);l=C(l+l);n=C(n+n);p=C(C(m*j)+C(C(i*l)+C(k*n)));A=C(C(g*g)+C(-.5));B=C(C(C(i*p)+C(C(l*A)-C(g*C(C(k*j)-C(n*m)))))+z[a+64>>2]);z[a+64>>2]=B;s=C(C(C(k*p)+C(C(n*A)-C(g*C(C(m*l)-C(j*i)))))+z[a+68>>2]);z[a+68>>2]=s;g=C(C(C(m*p)+C(C(j*A)-C(g*C(C(i*n)-C(l*k)))))+z[a+72>>2]);z[a+72>>2]=g;i=C(C(C(g*g)*(o>C(0)?C(C(1)/o):C(1)))+C(C(C(B*B)*(y>C(0)?C(C(1)/y):C(1)))+C((x>C(0)?C(C(1)/x):C(1))*C(s*s))));g=z[h+124>>2];i=C(C(C(C(r*r)+C(C(w*w)+C(q*q)))+C(i*(g==C(0)?C(1):g)))*C(.5));k=C(v[h+148>>2]+1>>>0);g=C(z[h+132>>2]*k);if(!(i>=g)){break b}v[a+72>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;v[a+56>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;if(g!=C(0)){g=C(i/g);g=C((g>2]=b;u[a+28>>1]=(t==C(0))<<3;return b}z[a+76>>2]=j;f=a+28|0;c=u[a+28>>1]&1}c=c<<2}u[f>>1]=c;if(!(tt)){break b}g=C(y+z[a+48>>2]);z[a+48>>2]=g;i=C(p+z[a+64>>2]);z[a+64>>2]=i;j=C(w+z[a+52>>2]);z[a+52>>2]=j;l=C(x+z[a+56>>2]);z[a+56>>2]=l;m=C(m+z[a+68>>2]);z[a+68>>2]=m;n=C(r+z[a+72>>2]);z[a+72>>2]=n;o=z[h+132>>2];if(!(k>=o)){break b}g=C(C(C(C(l*l)+C(C(g*g)+C(j*j)))+C(A*C(C(C(n*n)*B)+C(C(C(i*i)*s)+C(D*C(m*m))))))*C(.5));i=C(v[h+148>>2]+1>>>0);k=C(o*i);if(!(g>=k)){break b}v[a+72>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;v[a+56>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;if(o!=C(0)){g=C(g/k);g=C((g>2]=b;if(t!=C(0)){break a}u[f>>1]=c|8;return b}b=C(t-b);b=b>C(0)?b:C(0);z[h+144>>2]=b}return b}function AZ(a){var b=0,c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=0,j=0,k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=0,x=0,y=0,A=C(0),E=C(0),F=0,G=0,H=0;l=xa-48|0;xa=l;b=v[a>>2];c=v[b+4360>>2];if(!(!c|c>>>0<17)){F=v[b+4356>>2];u=a+1288|0;x=a+4|0;G=(c>>>0)/17|0;while(1){c=B(y,68)+F|0;h=v[c+40>>2];H=v[c>>2];i=v[c+48>>2];j=v[c+44>>2];a:{b:{c:{d:{e:{f:{g:{h:{e=z[c+12>>2];m=C(z[c+24>>2]-e);o=C(z[c+36>>2]-e);d=z[c+4>>2];p=C(z[c+16>>2]-d);q=C(z[c+28>>2]-d);g=z[c+8>>2];r=C(z[c+20>>2]-g);s=C(z[c+32>>2]-g);f=C(C(m*o)+C(C(p*q)+C(r*s)));k=C(e-z[a+2164>>2]);d=C(d-z[a+2156>>2]);g=C(g-z[a+2160>>2]);e=C(C(k*o)+C(C(d*q)+C(s*g)));d=C(C(k*m)+C(C(d*p)+C(r*g)));g=C(C(o*o)+C(C(q*q)+C(s*s)));A=C(C(f*e)-C(d*g));k=C(C(m*m)+C(C(p*p)+C(r*r)));n=C(C(f*d)-C(e*k));E=C(C(k*g)-C(f*f));if(C(A+n)<=C(D(E))){if(A=C(0)){break g}if(g<=C(-e)){break e}break d}if(e>=C(0)){break g}if(!(g<=C(-e))){break d}break e}if(!(n=C(0)){break g}if(!(k<=C(-d))){break c}break f}i:{if(Ad){if(C(g+C(k-C(f+f)))<=C(n-d)){break f}break i}if(n<=C(0)){break e}if(!(e>=C(0))){break d}break g}if(ne){if(C(g+C(k-C(f+f)))<=C(n-e)){break e}break i}if(n<=C(0)){break f}if(!(d>=C(0))){break c}break g}e=C(C(C(g+e)-f)-d);if(e<=C(0)){break e}if(e>=C(g+C(k-C(f+f)))){break f}}h=i>>>0>j>>>0?j:i;i=i>>>0>>0?j:i;b=h<<16|i;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=w[(((b>>>16^b)&127)+a|0)+1156|0];if((b|0)==255){break b}while(1){j=(b<<3)+x|0;if((h|0)==v[j>>2]&(i|0)==v[j+4>>2]){break a}b=w[(a+b|0)+1028|0];if((b|0)!=255){continue}break}break b}if(E!=C(0)){break b}}b=w[((h&127)+a|0)+1928|0];if((b|0)==255){break b}while(1){if((h|0)==v[(b<<2)+u>>2]){break a}b=w[(a+b|0)+1800|0];if((b|0)!=255){continue}break}break b}b=w[((j&127)+a|0)+1928|0];if((b|0)==255){break b}while(1){if((j|0)==v[(b<<2)+u>>2]){break a}b=w[(a+b|0)+1800|0];if((b|0)!=255){continue}break}break b}b=w[((i&127)+a|0)+1928|0];if((b|0)==255){break b}while(1){if((i|0)==v[(b<<2)+u>>2]){break a}b=w[(a+b|0)+1800|0];if((b|0)!=255){continue}break}break b}j=h>>>0>>0?h:i;h=h>>>0>i>>>0?h:i;b=j<<16|h;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=w[(((b>>>16^b)&127)+a|0)+1156|0];if((b|0)==255){break b}while(1){i=(b<<3)+x|0;if((j|0)==v[i>>2]&(h|0)==v[i+4>>2]){break a}b=w[(a+b|0)+1028|0];if((b|0)!=255){continue}break}break b}i=h>>>0>>0?h:j;h=h>>>0>j>>>0?h:j;b=i<<16|h;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=w[(((b>>>16^b)&127)+a|0)+1156|0];if((b|0)==255){break b}while(1){j=(b<<3)+x|0;if((i|0)==v[j>>2]&(h|0)==v[j+4>>2]){break a}b=w[(a+b|0)+1028|0];if((b|0)!=255){continue}break}}f=C(0);e=C(0);d=C(0);g=C(C(p*s)-C(q*r));k=C(C(r*o)-C(s*m));m=C(C(m*q)-C(o*p));o=C(C(g*g)+C(C(k*k)+C(m*m)));if(o>C(0)){f=C(C(1)/C(K(o)));d=C(g*f);e=C(m*f);f=C(k*f)}z[l+40>>2]=d;z[l+32>>2]=f;z[l+36>>2]=e;b=c+4|0;g=z[b+8>>2];k=C(g*d);d=z[b>>2];m=C(d*f);f=z[b+4>>2];z[l+44>>2]=-C(k+C(m+C(e*f)));e=z[c+28>>2];k=z[c+16>>2];m=z[c+32>>2];o=z[c+20>>2];z[l+24>>2]=C(C(g+z[c+24>>2])+z[c+36>>2])*C(.3333333432674408);z[l+20>>2]=C(m+C(f+o))*C(.3333333432674408);z[l+16>>2]=C(e+C(d+k))*C(.3333333432674408);z[l>>2]=z[c+52>>2];z[l+4>>2]=z[c+56>>2];z[l+8>>2]=z[c+60>>2];if(!DZ(a,l+32|0,b,l+16|0,l,z[c+64>>2],H)){break a}t[a+2224|0]=1}y=y+1|0;if((G|0)!=(y|0)){continue}break}}xa=l+48|0}function F2(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=C(0),x=C(0),y=C(0),A=0,D=0,E=0,F=0;i=xa-192|0;xa=i;a:{b:{if(w[h|0]&16){break b}z[i+96>>2]=z[c>>2];z[i+100>>2]=z[c+4>>2];k=z[c+8>>2];z[i+108>>2]=b;z[i+104>>2]=k;if(!t$(i+96|0,a)){break b}v[f>>2]=0;b=z[d>>2];e=z[d+4>>2];z[g+8>>2]=-z[d+8>>2];z[g+4>>2]=-e;z[g>>2]=-b;t=1;break a}FV(i+96|0,a+36|0,a+48|0,a,a+12|0,a+24|0);E=i+76|0;h=140784;while(1){F=w[h+1|0];A=i+96|0;s=A+B(w[h|0],12)|0;z[i+64>>2]=z[s>>2];z[i+68>>2]=z[s+4>>2];z[i+72>>2]=z[s+8>>2];s=B(F,12)+A|0;z[i+76>>2]=z[s>>2];z[i+80>>2]=z[s+4>>2];k=z[s+8>>2];z[i+88>>2]=b;z[i+84>>2]=k;c:{if(!_W(c,d,i- -64|0,E,b,i+48|0)){break c}k=z[i+48>>2];if(!(k>=C(0))|!(e>=k)){break c}q=z[i+72>>2];j=C(z[i+84>>2]-q);r=z[i+64>>2];l=C(z[i+76>>2]-r);p=C(C(k*z[d+8>>2])+z[c+8>>2]);u=C(C(k*z[d>>2])+z[c>>2]);m=z[i+68>>2];n=C(z[i+80>>2]-m);x=C(C(k*z[d+4>>2])+z[c+4>>2]);o=C(C(C(p-q)*j)+C(C(C(u-r)*l)+C(n*C(x-m))));e=C(0);d:{if(o<=C(0)){break d}y=C(C(j*j)+C(C(l*l)+C(n*n)));e=C(1);if(y<=o){break d}e=C(o/y)}j=C(C(q+C(j*e))-p);z[g+8>>2]=j;n=C(C(m+C(n*e))-x);z[g+4>>2]=n;e=C(C(r+C(l*e))-u);z[g>>2]=e;t=1;l=C(K(C(C(j*j)+C(C(e*e)+C(n*n)))));if(l>C(0)){m=j;j=C(C(1)/l);z[g+8>>2]=m*j;z[g+4>>2]=n*j;z[g>>2]=e*j}e=k}h=h+2|0;D=D+1|0;if((D|0)!=12){continue}break}k=z[a+16>>2];j=z[a+20>>2];l=z[a+8>>2];n=z[a+4>>2];q=z[a>>2];r=z[a+12>>2];u=z[a+32>>2];m=C(z[c+8>>2]-z[a+44>>2]);x=z[a+24>>2];o=C(z[c>>2]-z[a+36>>2]);y=z[a+28>>2];p=C(z[c+4>>2]-z[a+40>>2]);z[i+72>>2]=C(u*m)+C(C(x*o)+C(y*p));z[i+68>>2]=C(j*m)+C(C(r*o)+C(k*p));z[i+64>>2]=C(l*m)+C(C(q*o)+C(n*p));m=z[d+8>>2];o=z[d>>2];p=z[d+4>>2];z[i+56>>2]=C(u*m)+C(C(x*o)+C(y*p));z[i+52>>2]=C(j*m)+C(C(r*o)+C(k*p));z[i+48>>2]=C(l*m)+C(C(q*o)+C(n*p));k=z[a+48>>2];j=z[a+52>>2];z[i+28>>2]=j;l=z[a+56>>2];z[i+32>>2]=l;k=C(k+b);z[i+24>>2]=k;z[i+16>>2]=-l;z[i+12>>2]=-j;z[i+8>>2]=-k;c=r$(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=z[i+44>>2];if(!(k>=C(-9999999747378752e-21))|!(e>=k)){break e}n=z[a+24>>2];q=z[a>>2];r=z[a+12>>2];m=z[a+28>>2];o=z[a+4>>2];p=z[a+16>>2];c=B(c,12)+103440|0;e=z[c>>2];j=z[c+4>>2];l=z[c+8>>2];z[g+8>>2]=C(C(e*z[a+8>>2])+C(j*z[a+20>>2]))+C(l*z[a+32>>2]);z[g+4>>2]=C(C(e*o)+C(j*p))+C(l*m);z[g>>2]=C(C(e*q)+C(j*r))+C(l*n);e=k>C(0)?k:C(0);t=1}k=z[a+48>>2];z[i+24>>2]=k;j=z[a+52>>2];l=z[a+56>>2];z[i+32>>2]=l;j=C(j+b);z[i+28>>2]=j;z[i+16>>2]=-l;z[i+12>>2]=-j;z[i+8>>2]=-k;c=r$(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=z[i+44>>2];if(!(k>=C(-9999999747378752e-21))|!(e>=k)){break f}n=z[a+24>>2];q=z[a>>2];r=z[a+12>>2];m=z[a+28>>2];o=z[a+4>>2];p=z[a+16>>2];c=B(c,12)+103440|0;e=z[c>>2];j=z[c+4>>2];l=z[c+8>>2];z[g+8>>2]=C(C(e*z[a+8>>2])+C(j*z[a+20>>2]))+C(l*z[a+32>>2]);z[g+4>>2]=C(C(e*o)+C(j*p))+C(l*m);z[g>>2]=C(C(e*q)+C(j*r))+C(l*n);e=k>C(0)?k:C(0);t=1}k=z[a+48>>2];z[i+24>>2]=k;j=z[a+52>>2];z[i+28>>2]=j;b=C(z[a+56>>2]+b);z[i+32>>2]=b;z[i+16>>2]=-b;z[i+12>>2]=-j;z[i+8>>2]=-k;c=r$(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=z[i+44>>2];if(!(b>=C(-9999999747378752e-21))|!(b<=e)){break g}l=z[a+24>>2];n=z[a>>2];q=z[a+12>>2];r=z[a+28>>2];m=z[a+4>>2];o=z[a+16>>2];c=B(c,12)+103440|0;e=z[c>>2];k=z[c+4>>2];j=z[c+8>>2];z[g+8>>2]=C(C(e*z[a+8>>2])+C(k*z[a+20>>2]))+C(j*z[a+32>>2]);z[g+4>>2]=C(C(e*m)+C(k*o))+C(j*r);z[g>>2]=C(C(e*n)+C(k*q))+C(j*l);e=b>C(0)?b:C(0);t=1}z[f>>2]=e}xa=i+192|0;return t} +function G$(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0);B=z[b+8>>2];t=z[e+8>>2];h=C(B-t);n=z[f+8>>2];D=z[b>>2];u=z[e>>2];j=C(D-u);o=z[f>>2];E=z[b+4>>2];H=z[e+4>>2];g=C(E-H);r=z[f+4>>2];s=C(C(h*n)+C(C(j*o)+C(g*r)));a:{if(s<=C(0)){break a}y=C(C(n*n)+C(C(o*o)+C(r*r)));if(y<=s){h=C(h-n);g=C(g-r);j=C(j-o);break a}s=C(s/y);h=C(h-C(n*s));g=C(g-C(r*s));j=C(j-C(o*s))}b=1;N=z[e+24>>2];b:{if(C(C(h*h)+C(C(j*j)+C(g*g)))<=C(N*N)){break b}b=0;j=z[a+8>>2];g=z[a>>2];h=z[a+4>>2];A=C(N*C(K(C(C(j*j)+C(C(g*g)+C(h*h))))));l=C(C(t*j)+C(C(u*g)+C(H*h)));O=z[e+20>>2];P=z[e+12>>2];Q=z[e+16>>2];m=C(C(O*j)+C(C(P*g)+C(h*Q)));a=l>m;s=z[d+8>>2];y=z[d>>2];I=z[d+4>>2];i=C(C(s*j)+C(C(y*g)+C(h*I)));J=z[c+8>>2];L=z[c>>2];M=z[c+4>>2];k=C(C(J*j)+C(C(L*g)+C(h*M)));j=C(C(B*j)+C(C(D*g)+C(E*h)));g=j>k?k:j;if(C(A+(a?l:m))<(g>i?i:g)){break b}j=j(i>j?i:j)){break b}i=C(J-B);p=C(t-B);k=C(L-D);v=C(u-D);w=C(H-E);l=C(M-E);q=C(C(i*p)+C(C(k*v)+C(w*l)));g=C(-C(C(n*p)+C(C(o*v)+C(w*r))));j=z[f+16>>2];x=C(C(i*i)+C(C(k*k)+C(l*l)));A=z[f+12>>2];m=C(C(i*n)+C(C(k*o)+C(r*l)));h=C(C(x*A)-C(m*m));if(h!=C(0)){h=C(C(C(q*A)+C(m*g))/h)}else{h=C(0)}h=C(F(C(G(h,C(0))),C(1)));g=C(j*C(C(h*m)+g));c:{if(gC(1))){break c}g=C(1);h=C(F(C(G(C(C(q+m)/x),C(0))),C(1)))}i=C(C(p+C(n*g))-C(i*h));k=C(C(v+C(o*g))-C(k*h));g=C(C(w+C(r*g))-C(l*h));m=C(N*C(K(C(C(i*i)+C(C(k*k)+C(g*g))))));q=C(C(t*i)+C(C(u*k)+C(H*g)));p=C(C(O*i)+C(C(P*k)+C(Q*g)));a=q>p;h=C(C(s*i)+C(C(y*k)+C(I*g)));l=C(C(J*i)+C(C(L*k)+C(M*g)));g=C(C(B*i)+C(C(D*k)+C(E*g)));i=g>l?l:g;if(C(m+(a?q:p))<(h(gC(1))){break d}g=C(1);h=C(F(C(G(C(C(q+m)/x),C(0))),C(1)))}i=C(C(p+C(n*g))-C(i*h));k=C(C(v+C(o*g))-C(k*h));g=C(C(w+C(r*g))-C(l*h));m=C(N*C(K(C(C(i*i)+C(C(k*k)+C(g*g))))));q=C(C(t*i)+C(C(u*k)+C(H*g)));p=C(C(O*i)+C(C(P*k)+C(Q*g)));a=q>p;h=C(C(s*i)+C(C(y*k)+C(I*g)));l=C(C(J*i)+C(C(L*k)+C(M*g)));g=C(C(B*i)+C(C(D*k)+C(E*g)));i=g>l?l:g;if(C(m+(a?q:p))<(h(gC(1))){break e}g=C(1);h=C(F(C(G(C(C(q+m)/x),C(0))),C(1)))}j=C(C(p+C(n*g))-C(i*h));n=C(C(v+C(o*g))-C(k*h));g=C(C(w+C(r*g))-C(l*h));r=C(N*C(K(C(C(j*j)+C(C(n*n)+C(g*g))))));t=C(C(t*j)+C(C(u*n)+C(H*g)));u=C(C(O*j)+C(C(P*n)+C(Q*g)));a=t>u;h=C(C(s*j)+C(C(y*n)+C(I*g)));o=C(C(J*j)+C(C(L*n)+C(M*g)));j=C(C(B*j)+C(C(D*n)+C(E*g)));g=j>o?o:j;j=jh?h:g)^-1)&!(C((a?u:t)-r)>(h>j?h:j))}return b}function gL(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=v[b+24>>2];c=v[a+4>>2];e=v[b+36>>2];v[c+232>>2]=e;v[c+228>>2]=d;v[c+104>>2]=e;v[c+100>>2]=d;v[c+12>>2]=e;v[c+8>>2]=d;d=v[b+40>>2];if(y[c+320>>2]>>0){NK(c+316|0,d)}v[a+32>>2]=v[b+28>>2];v[a+36>>2]=v[b+32>>2];k=v[b+20>>2];if(k){j=v[b+16>>2];while(1){c=0;e=0;d=v[a+4>>2];f=v[d+328>>2];g=v[j>>2];l=g>>>5|0;a:{if(f>>>0>l>>>0){h=g&31;c=v[d+324>>2];break a}h=g&31;i=(g+128>>>5|0)+((h|0)!=0)|0;if(i){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,i<<2,24422,13489,855)|0;f=v[d+328>>2]}if(f){I9(c,v[d+324>>2],f<<2);e=v[d+328>>2]}if((e|0)!=(i|0)){J9((e<<2)+c|0,0,i-e<<2)}e=v[d+324>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[d+328>>2]=i;v[d+324>>2]=c}c=(l<<2)+c|0;v[c>>2]=v[c>>2]|1<>2];b:{if(l>>>0>>0){h=g&31;c=v[d+332>>2];break b}e=0;c=0;h=g&31;i=(g+128>>>5|0)+((h|0)!=0)|0;if(i){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,i<<2,24422,13489,855)|0;f=v[d+336>>2]}if(f){I9(c,v[d+332>>2],f<<2);e=v[d+336>>2]}if((e|0)!=(i|0)){J9((e<<2)+c|0,0,i-e<<2)}e=v[d+332>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[d+336>>2]=i;v[d+332>>2]=c}c=(l<<2)+c|0;v[c>>2]=v[c>>2]|1<>2]+(g<<2)|0;e=v[f>>2];switch(e&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=e>>>3|0;g:{if(e&4){v[v[c+64>>2]+(d<<2)>>2]=-1;v[c+88>>2]=v[c+88>>2]+1;break g}v[v[c+36>>2]+(d<<2)>>2]=-1}v[f>>2]=-1;j=j+4|0;k=k-1|0;if(k){continue}break}}c=xa-1584|0;xa=c;e=v[b+4>>2];h:{if(!e){break h}k=v[b+28>>2];j=v[b>>2];v[c+1064>>2]=0;v[c+1068>>2]=0;v[c+544>>2]=0;v[c+548>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;d=c+544|0;v[c+12>>2]=d;v[c+8>>2]=d;v[c>>2]=c+1064;v[c+4>>2]=c+24;while(1){f=v[a+4>>2];h=v[j>>2];i=v[k+(h<<2)>>2]&3;d=v[(c|i<<2)>>2];g=v[d+4>>2];v[d+4>>2]=g>>>0>h>>>0?g:h;g=d+8|0;l=v[d>>2];v[g+(l<<2)>>2]=h;e=e-1|0;h=l+1|0;i:{if((h|0)==128){v[d>>2]=0;j:{switch(i|0){case 0:ZK(f,g,128,v[d+4>>2]);v[d+4>>2]=0;break i;case 1:$K(f,g,128,v[d+4>>2]);v[d+4>>2]=0;break i;default:break j}}_K(f,g,128,v[d+4>>2]);v[d+4>>2]=0;break i}v[d>>2]=h}j=j+4|0;if(e){continue}break}d=v[c+1064>>2];if(d){ZK(v[a+4>>2],c+1072|0,d,v[c+1068>>2])}d=v[c+24>>2];if(d){$K(v[a+4>>2],c+32|0,d,v[c+28>>2])}d=v[c+544>>2];if(!d){break h}_K(v[a+4>>2],c+552|0,d,v[c+548>>2])}xa=c+1584|0;j=v[b+8>>2];k:{if(!j){break k}k=v[b+12>>2];if(!k){break k}while(1){c=0;e=0;b=v[a+4>>2];f=v[b+328>>2];d=v[j>>2];i=d>>>5|0;l:{if(f>>>0>i>>>0){h=d&31;c=v[b+324>>2];break l}h=d&31;g=(d+128>>>5|0)+((h|0)!=0)|0;if(g){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,g<<2,24422,13489,855)|0;f=v[b+328>>2]}if(f){I9(c,v[b+324>>2],f<<2);e=v[b+328>>2]}if((e|0)!=(g|0)){J9((e<<2)+c|0,0,g-e<<2)}e=v[b+324>>2];if(e){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}v[b+328>>2]=g;v[b+324>>2]=c}c=(i<<2)+c|0;v[c>>2]=v[c>>2]|1<>2]+(d<<2)|0;switch(v[c>>2]&3){case 1:break o;case 0:break p;default:break n}}SK(b+4|0,c,d);break m}SK(b+224|0,c,d);break m}SK(b+96|0,c,d)}j=j+4|0;k=k-1|0;if(k){continue}break}}a=v[a+4>>2];if(v[a+44>>2]|v[a+92>>2]?1:v[a+136>>2]|v[a+184>>2]|(v[a+264>>2]|v[a+312>>2])){if(v[a+44>>2]|v[a+92>>2]){UK(a+4|0,v[a+316>>2],a)}UK(a+96|0,v[a+316>>2],a);UK(a+224|0,v[a+316>>2],a);if(w[a+220|0]){b=v[a+200>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+200>>2]=0;b=v[a+196>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+196>>2]=0}v[a+192>>2]=-2147483648}}function nx(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);f=f|0;g=g|0;h=C(h);i=C(i);j=C(j);k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=C(p);var q=0,r=0,s=0,A=0,D=0,E=0,F=0,G=0,H=0,I=C(0),J=0,K=0,L=0,M=0,N=0,O=C(0),P=C(0),Q=C(0),R=0;o=xa-256|0;xa=o;v[o+236>>2]=m;v[o+248>>2]=g+12088;v[o+244>>2]=g+11824;v[o+240>>2]=g+11852;v[o+232>>2]=128228;v[o+224>>2]=0;v[o+216>>2]=0;v[o+220>>2]=0;v[o+208>>2]=0;v[o+212>>2]=1065353216;v[o+200>>2]=0;v[o+204>>2]=0;ox(v[a+656>>2],v[a+660>>2]);if(v[a+660>>2]){while(1){N=G<<5;m=N+v[a+656>>2]|0;E=x[m+10>>1];r=x[m+8>>1];D=(r|0)==65535;R=D?E:r;a:{if(x[m+22>>1]==1){J=v[m+4>>2];A=v[m+12>>2];F=v[m+16>>2];r=v[m+24>>2];H=v[r+68>>2];K=v[((H&7)<<2)+f>>2];q=v[r+20>>2];L=v[m>>2];M=v[f+32>>2];s=v[r+16>>2];z[o+60>>2]=z[s>>2];z[o+64>>2]=z[s+4>>2];z[o+68>>2]=z[s+8>>2];z[o+72>>2]=z[s+12>>2];z[o+76>>2]=z[s+16>>2];z[o+80>>2]=z[s+20>>2];z[o+84>>2]=z[s+24>>2];z[o+88>>2]=z[q>>2];z[o+92>>2]=z[q+4>>2];z[o+96>>2]=z[q+8>>2];z[o+100>>2]=z[q+12>>2];z[o+104>>2]=z[q+16>>2];z[o+108>>2]=z[q+20>>2];z[o+112>>2]=z[q+24>>2];v[o+124>>2]=v[r+12>>2];s=M+(K+(H>>>3|0)<<4)|0;q=v[s+8>>2];E=B((E|0)==65535?F:0,48)+k|0;v[o+56>>2]=E;H=B(D?A:0,48)+k|0;v[o+52>>2]=H;v[o+48>>2]=(F<<6)+l;v[o+44>>2]=(A<<6)+l;v[o+40>>2]=J;v[o+36>>2]=L;v[o+32>>2]=m;v[o+156>>2]=q;q=x[r+40>>1];t[o+137|0]=q>>>2&1;t[o+138|0]=q>>>8&1;A=q&8;v[o+116>>2]=A?8:1;F=q&16;D=8;b:{if(F){break b}D=4;if(q&1024){break b}D=q&64?1:2}v[o+120>>2]=D;I=z[(F?v[r+20>>2]+128|0:E+12|0)>>2];O=z[(A?v[r+16>>2]+128|0:H+12|0)>>2];q=w[r+44|0];P=w[r+45|0]?C(1):C(0);z[o+28>>2]=P;Q=q?C(1):C(0);z[o+16>>2]=Q;z[o+20>>2]=Q;z[o+24>>2]=P;z[o+140>>2]=z[r+52>>2];v[o+148>>2]=v[r+36>>2];q=w[r+42|0];z[o+176>>2]=I>O?O:I;v[o+144>>2]=2139095039;t[o+152|0]=q;z[o+180>>2]=z[r+72>>2];z[o+184>>2]=z[r+76>>2];mB(o+16|0,s,g,d,e,i,j,h,o+232|0);u[m+20>>1]=w[s+12|0];v[m+28>>2]=v[s+8>>2];v[r+36>>2]=v[o+148>>2];t[r+42|0]=w[o+152|0];break a}r=o+200|0;s=r;q=v[m+24>>2];A=v[q+24>>2];if(A){s=v[A+36>>2]}J=x[q+8>>1];H=v[q+20>>2];K=v[q+12>>2];A=v[q+28>>2];if(A){r=v[A+36>>2]}L=v[m+4>>2];A=v[m+12>>2];F=v[m+16>>2];M=v[m>>2];v[o+12>>2]=J;v[o+8>>2]=H;v[o+4>>2]=K;v[o+32>>2]=m;v[o>>2]=q;z[o+60>>2]=z[s>>2];z[o+64>>2]=z[s+4>>2];z[o+68>>2]=z[s+8>>2];z[o+72>>2]=z[s+12>>2];z[o+76>>2]=z[s+16>>2];z[o+80>>2]=z[s+20>>2];z[o+84>>2]=z[s+24>>2];z[o+88>>2]=z[r>>2];z[o+92>>2]=z[r+4>>2];z[o+96>>2]=z[r+8>>2];z[o+100>>2]=z[r+12>>2];z[o+104>>2]=z[r+16>>2];z[o+108>>2]=z[r+20>>2];I=z[r+24>>2];s=(E|0)==65535;v[o+56>>2]=B(s?F:0,48)+k;v[o+52>>2]=B(D?A:0,48)+k;v[o+48>>2]=(F<<6)+l;v[o+44>>2]=(A<<6)+l;v[o+40>>2]=L;v[o+36>>2]=M;z[o+112>>2]=I;z[o+132>>2]=z[q>>2];z[o+136>>2]=z[q+4>>2];v[o+144>>2]=(v[q+40>>2]<<5)+n;r=x[q+10>>1];t[o+151|0]=r>>>9&1;E=r&255;t[o+149|0]=E>>>7;t[o+148|0]=r>>>8&1;t[o+150|0]=E>>>5&1;I=z[q+44>>2];v[o+120>>2]=s?1:8;v[o+116>>2]=D?1:8;z[o+140>>2]=I;pB(o,o+16|0,o+232|0,b,c,d,e,p)}c:{if(v[m+24>>2]){r=(R&65535)<<2;m=r+v[a+408>>2]|0;q=v[m>>2];if(!q){v[r+v[a+420>>2]>>2]=G;q=v[m>>2]}v[m>>2]=q+1;break c}q=v[a+660>>2];r=G+1|0;if(q>>>0>r>>>0){m=v[a+656>>2]+N|0;while(1){q=v[a+656>>2]+(r<<5)|0;s=v[q+4>>2];v[m>>2]=v[q>>2];v[m+4>>2]=s;s=v[q+28>>2];v[m+24>>2]=v[q+24>>2];v[m+28>>2]=s;s=v[q+20>>2];v[m+16>>2]=v[q+16>>2];v[m+20>>2]=s;s=v[q+12>>2];v[m+8>>2]=v[q+8>>2];v[m+12>>2]=s;m=m+32|0;q=v[a+660>>2];r=r+1|0;if(q>>>0>r>>>0){continue}break}}v[a+660>>2]=q-1;G=G-1|0}G=G+1|0;if(G>>>0>2]){continue}break}}xa=o+256|0} +function ax(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=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0,x=0,y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=0,P=0,Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=0,aa=0,ba=0,ca=0;f=xa-96|0;xa=f;h=v[a+444>>2];u=v[a+264>>2];i=w[v[a+476>>2]];v[f+88>>2]=0;v[f+92>>2]=0;v[f+80>>2]=0;v[f+84>>2]=0;v[f+72>>2]=0;v[f+76>>2]=0;v[f+64>>2]=0;v[f+68>>2]=0;if(!(i&1)){H=z[a+560>>2];I=z[a+572>>2];J=z[a+584>>2];Q=z[a+564>>2];R=z[a+576>>2];S=z[a+588>>2];T=z[a+568>>2];U=z[a+580>>2];V=z[a+592>>2];W=z[a+620>>2];X=z[a+608>>2];Y=z[a+596>>2];y=z[a+524>>2];r=z[a+528>>2];m=z[a+532>>2];s=z[a+624>>2];Z=z[a+612>>2];_=z[a+600>>2];F=z[a+536>>2];G=z[a+540>>2];D=z[a+544>>2];K=z[a+548>>2];t=z[u+16>>2];n=C(-t);L=z[a+552>>2];l=z[u+20>>2];M=z[a+556>>2];j=z[u+24>>2];o=C(-z[u+4>>2]);p=z[u>>2];q=z[u+8>>2];A=C(C(C(C(K*n)-C(L*l))-C(M*j))+C(C(C(z[a+616>>2]*o)-C(p*z[a+604>>2]))-C(q*z[a+628>>2])));z[f+88>>2]=A;s=C(C(C(C(F*n)-C(G*l))-C(D*j))+C(C(C(Z*o)-C(p*_))-C(q*s)));z[f+84>>2]=s;n=C(C(C(C(y*n)-C(r*l))-C(m*j))+C(C(C(X*o)-C(p*Y))-C(q*W)));z[f+80>>2]=n;D=C(C(C(D*o)-C(p*m))-C(q*M));m=C(-l);l=C(D+C(C(C(U*m)-C(t*T))-C(j*V)));z[f+72>>2]=l;r=C(C(C(C(G*o)-C(p*r))-C(q*L))+C(C(C(R*m)-C(t*Q))-C(j*S)));z[f+68>>2]=r;j=C(C(C(C(F*o)-C(p*y))-C(q*K))+C(C(C(I*m)-C(t*H))-C(j*J)));z[f+64>>2]=j}i=(c<<5)+h|0;N=v[i+8>>2];h=(b<<5)+h|0;g=v[h+8>>2];k=N&g;g=k^g;O=v[i+12>>2];h=v[h+12>>2];P=O&h;i=P;E=i^h;h=k-1|0;i=i-!k|0;if(h|i){while(1){$=v[a+452>>2];x=(aa=Raa(h),ba=Raa(i)+32|0,ca=h,ca?aa:ba);$w(f+32|0,($+B(x,160)|0)+120|0,v[a+348>>2]+B(x,112)|0,v[a+360>>2]+B(x,36)|0,v[a+384>>2]+B(x,76)|0,(x<<5)+u|0,f- -64|0);v[f+76>>2]=0;v[f+92>>2]=0;j=z[f+32>>2];z[f+64>>2]=j;r=z[f+36>>2];z[f+68>>2]=r;l=z[f+40>>2];z[f+72>>2]=l;n=z[f+48>>2];z[f+80>>2]=n;s=z[f+52>>2];z[f+84>>2]=s;A=z[f+56>>2];z[f+88>>2]=A;x=h;h=h&h-1;i=i&i-!x;if(h|i){continue}break}}h=k^N;i=O^P;z[f+56>>2]=A;z[f+52>>2]=s;v[f+60>>2]=0;z[f+48>>2]=n;v[f+44>>2]=0;z[f+40>>2]=l;z[f+36>>2]=r;z[f+32>>2]=j;o=A;p=s;q=n;t=l;y=r;m=j;if(g|E){while(1){x=v[a+452>>2];k=(aa=Raa(g),ba=Raa(E)+32|0,ca=g,ca?aa:ba);$w(f,(x+B(k,160)|0)+120|0,v[a+348>>2]+B(k,112)|0,v[a+360>>2]+B(k,36)|0,v[a+384>>2]+B(k,76)|0,(k<<5)+u|0,f- -64|0);v[f+76>>2]=0;v[f+92>>2]=0;m=z[f>>2];z[f+64>>2]=m;y=z[f+4>>2];z[f+68>>2]=y;t=z[f+8>>2];z[f+72>>2]=t;q=z[f+16>>2];z[f+80>>2]=q;p=z[f+20>>2];z[f+84>>2]=p;o=z[f+24>>2];z[f+88>>2]=o;k=g;g=g&g-1;E=E&E-!k;if(g|E){continue}break}}if(h|i){while(1){k=v[a+452>>2];g=h;g=(aa=Raa(g),ba=Raa(i)+32|0,ca=g,ca?aa:ba);$w(f,(k+B(g,160)|0)+120|0,v[a+348>>2]+B(g,112)|0,v[a+360>>2]+B(g,36)|0,v[a+384>>2]+B(g,76)|0,(g<<5)+u|0,f+32|0);v[f+44>>2]=0;v[f+60>>2]=0;j=z[f>>2];z[f+32>>2]=j;r=z[f+4>>2];z[f+36>>2]=r;l=z[f+8>>2];z[f+40>>2]=l;n=z[f+16>>2];z[f+48>>2]=n;s=z[f+20>>2];z[f+52>>2]=s;A=z[f+24>>2];z[f+56>>2]=A;g=h;h=g-1&g;i=i&i-!g;if(h|i){continue}break}}b=v[a+228>>2]+(b<<5)|0;F=z[b+20>>2];G=z[b+24>>2];D=z[b+16>>2];H=z[b>>2];I=z[b+4>>2];J=z[b+8>>2];v[d+28>>2]=0;z[d+24>>2]=J+t;z[d+20>>2]=I+y;z[d+16>>2]=H+m;v[d+12>>2]=0;z[d>>2]=D+q;z[d+8>>2]=G+o;z[d+4>>2]=F+p;a=v[a+228>>2]+(c<<5)|0;o=z[a+20>>2];p=z[a+24>>2];q=z[a+16>>2];t=z[a>>2];y=z[a+4>>2];m=z[a+8>>2];v[e+28>>2]=0;z[e+24>>2]=m+l;z[e+20>>2]=y+r;z[e+16>>2]=t+j;v[e+12>>2]=0;z[e>>2]=q+n;z[e+8>>2]=p+A;z[e+4>>2]=o+s;xa=f+96|0}function L3(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,u=0,x=0,z=0;m=32;d=xa-32|0;xa=d;t[d+12|0]=0;h=d-128|0;xa=h;v[d+8>>2]=h;j=b-1|0;a:{if((j|0)<=0){break a}while(1){b:{if((j|0)<=(k|0)){break b}while(1){if(j-k>>>0<=4){while(1){f=k;k=f+1|0;c=k;b=f;while(1){e=c;c=B(e,12)+a|0;g=v[c>>2];i=B(b,12)+a|0;n=v[i>>2];if(!(g>>>0>=n>>>0&((g|0)!=(n|0)|y[c+4>>2]>=y[i+4>>2]))){b=e}c=e+1|0;if((e|0)<(j|0)){continue}break}if((b|0)!=(f|0)){b=B(b,12)+a|0;v[d+24>>2]=v[b+8>>2];c=v[b+4>>2];v[d+16>>2]=v[b>>2];v[d+20>>2]=c;c=B(f,12)+a|0;v[b+8>>2]=v[c+8>>2];f=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=f;v[c+8>>2]=v[d+24>>2];b=v[d+20>>2];v[c>>2]=v[d+16>>2];v[c+4>>2]=b}if((j|0)!=(k|0)){continue}break b}}e=B(k,12)+a|0;b=v[e>>2];f=B((j+k|0)/2|0,12)+a|0;c=v[f>>2];c:{if(b>>>0<=c>>>0){if((b|0)!=(c|0)){break c}b=c;if(y[f+4>>2]>=y[e+4>>2]){break c}}v[d+24>>2]=v[e+8>>2];b=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=b;v[e+8>>2]=v[f+8>>2];b=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=b;v[f+8>>2]=v[d+24>>2];b=v[d+20>>2];v[f>>2]=v[d+16>>2];v[f+4>>2]=b;b=v[e>>2]}g=B(j,12)+a|0;c=v[g>>2];d:{if(c>>>0>=b>>>0){if((b|0)!=(c|0)){break d}c=b;if(y[g+4>>2]>=y[e+4>>2]){break d}}v[d+24>>2]=v[e+8>>2];b=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=b;v[e+8>>2]=v[g+8>>2];b=v[g+4>>2];v[e>>2]=v[g>>2];v[e+4>>2]=b;v[g+8>>2]=v[d+24>>2];b=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=b;c=v[g>>2]}b=v[f>>2];if(!(b>>>0<=c>>>0&((b|0)!=(c|0)|y[g+4>>2]>=y[f+4>>2]))){v[d+24>>2]=v[f+8>>2];b=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=b;v[f+8>>2]=v[g+8>>2];b=v[g+4>>2];v[f>>2]=v[g>>2];v[f+4>>2]=b;v[g+8>>2]=v[d+24>>2];b=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=b}v[d+24>>2]=v[f+8>>2];b=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=b;b=j-1|0;g=B(b,12)+a|0;c=g;e=v[c+4>>2];v[f>>2]=v[c>>2];v[f+4>>2]=e;v[f+8>>2]=v[c+8>>2];v[c+8>>2]=v[d+24>>2];c=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=c;c=k;while(1){n=v[g>>2];while(1){f=c;c=c+1|0;e=B(c,12)+a|0;i=v[e>>2];if(i>>>0>>0|(i|0)==(n|0)&y[e+4>>2]>2]){continue}break}while(1){b=b-1|0;i=B(b,12)+a|0;p=v[i>>2];if(n>>>0

>>0|(n|0)==(p|0)&y[g+4>>2]>2]){continue}break}if((b|0)>(c|0)){v[d+24>>2]=v[e+8>>2];f=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=f;v[e+8>>2]=v[i+8>>2];f=v[i+4>>2];v[e>>2]=v[i>>2];v[e+4>>2]=f;v[i+8>>2]=v[d+24>>2];f=v[d+20>>2];v[i>>2]=v[d+16>>2];v[i+4>>2]=f;continue}break}v[d+24>>2]=v[e+8>>2];b=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=b;v[e+8>>2]=v[g+8>>2];b=v[g+4>>2];v[e>>2]=v[g>>2];v[e+4>>2]=b;v[g+8>>2]=v[d+24>>2];b=v[d+20>>2];v[g>>2]=v[d+16>>2];v[g+4>>2]=b;e:{if((c-k|0)<(j-c|0)){if(m-1>>>0<=l>>>0){c=m<<3;if(c){b=v[37696];e=b+12|0;b=(r=e,s=c,u=Ba[v[v[b>>2]+20>>2]](b)|0?35339:63804,x=17218,z=155,q=v[v[e>>2]+8>>2],Ba[q](r|0,s|0,u|0,x|0,z|0)|0)}else{b=0}m=m<<1;b=I9(b,h,l<<2);c=o;o=1;if(!(!c|!h)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}h=b}b=(l<<2)+h|0;v[b>>2]=k;v[b+4>>2]=f;k=f+2|0;break e}if(m-1>>>0<=l>>>0){c=m<<3;if(c){b=v[37696];e=b+12|0;b=(z=e,x=c,u=Ba[v[v[b>>2]+20>>2]](b)|0?35339:63804,s=17218,r=155,q=v[v[e>>2]+8>>2],Ba[q](z|0,x|0,u|0,s|0,r|0)|0)}else{b=0}m=m<<1;b=I9(b,h,l<<2);c=o;o=1;if(!(!c|!h)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,h)}h=b}b=(l<<2)+h|0;v[b>>2]=f+2;v[b+4>>2]=j;j=f}l=l+2|0;if((j|0)>(k|0)){continue}break}}if(l){b=l-2|0;k=v[(b<<2)+h>>2];j=v[((l<<2)+h|0)-4>>2];l=b;continue}break}if(!o|!h){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,h)}if(w[d+12|0]){v9(v[d+8>>2])}xa=d+32|0}function WK(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,u=0,x=0,y=0,A=0,B=0,D=0,E=0,F=C(0),G=C(0),H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=C(0),P=C(0),Q=0;h=xa-128|0;xa=h;j=v[e+40>>2];a:{b:{c:{if(!f){break c}d:{e:{if(j){o=v[c>>2];u=v[e+60>>2];x=v[e+56>>2];f=v[e+68>>2];if(f){XK(b,o,j,f,x,v[e+80>>2],u,v[e+84>>2],v[e+36>>2],v[e+64>>2])}N=v[e+36>>2];if(j>>>0>=5001){f=(j<<3)+240|0;k=v[a>>2];f:{if(k){k=Dx(k,f,1);break f}if(!f){f=j<<4;k=0;break e}k=v[37696]+12|0;k=Ba[v[v[k>>2]+8>>2]](k,f,24422,13489,373)|0}f=j<<4;l=v[a>>2];if(!l){break e}l=Dx(l,f,1);break d}YK(b,j,x,u,N,o);break c}if(g){break b}break a}l=0;if(!f){break d}l=v[37696]+12|0;l=Ba[v[v[l>>2]+8>>2]](l,f,24422,13489,373)|0}F=z[e+16>>2];O=z[e+28>>2];G=z[e+20>>2];P=z[e+32>>2];v[h+112>>2]=0;v[h+104>>2]=0;v[h+108>>2]=0;v[h+96>>2]=0;v[h+100>>2]=0;G=C(C(P+G)*C(.5));F=C(C(O+F)*C(.5));f=j<<2;g:{h:{p=v[a>>2];i:{j:{if(p){s=Dx(p,f,1);break j}if(!f){break i}s=v[37696]+12|0;s=Ba[v[v[s>>2]+8>>2]](s,f,24422,13489,373)|0}f=v[a>>2];if(f){break h}}f=v[37696]+12|0;p=Ba[v[v[f>>2]+8>>2]](f,j,24422,13489,373)|0;break g}p=Dx(f,j,1)}f=0;while(1){i=u+(f<<4)|0;i=w[((G>2])<<2|z[i>>2]>F|(G>z[i+12>>2])<<3|(F>z[i+8>>2])<<1)+92304|0];t[f+p|0]=i;i=(h+96|0)+(i<<2)|0;v[i>>2]=v[i>>2]+1;f=f+1|0;if((j|0)!=(f|0)){continue}break}f=v[h+96>>2];i=v[h+108>>2];q=v[h+104>>2];r=v[h+100>>2];v[h+64>>2]=k;B=((f<<3)+k|0)+48|0;v[h+68>>2]=B;v[h+32>>2]=l;H=(f<<4)+l|0;v[h+36>>2]=H;v[h>>2]=s;I=(f<<2)+s|0;v[h+4>>2]=I;J=(r<<4)+H|0;v[h+40>>2]=J;D=((r<<3)+B|0)+48|0;v[h+72>>2]=D;K=(r<<2)+I|0;v[h+8>>2]=K;L=(q<<4)+J|0;v[h+44>>2]=L;M=(q<<2)+K|0;v[h+12>>2]=M;r=(i<<4)+L|0;v[h+48>>2]=r;E=((q<<3)+D|0)+48|0;v[h+76>>2]=E;q=(i<<2)+M|0;v[h+16>>2]=q;i=((i<<3)+E|0)+48|0;v[h+80>>2]=i;f=0;v[h+112>>2]=0;v[h+104>>2]=0;v[h+108>>2]=0;v[h+96>>2]=0;v[h+100>>2]=0;while(1){m=w[f+p|0]<<2;y=m+(h+96|0)|0;n=v[y>>2];v[y>>2]=n+1;y=v[m+(h+32|0)>>2];A=v[m+(h- -64|0)>>2];v[v[h+m>>2]+(n<<2)>>2]=v[(f<<2)+N>>2];m=A+(n<<3)|0;A=x+(f<<3)|0;v[m>>2]=v[A>>2];v[m+4>>2]=v[A+4>>2];m=u+(f<<4)|0;A=v[m>>2];Q=v[m+4>>2];n=(n<<4)+y|0;y=v[m+12>>2];v[n+8>>2]=v[m+8>>2];v[n+12>>2]=y;v[n>>2]=A;v[n+4>>2]=Q;f=f+1|0;if((j|0)!=(f|0)){continue}break}f=v[h+96>>2];KK(a,p);f=(f<<3)+k|0;v[f>>2]=-1;v[f+40>>2]=-1;v[f+32>>2]=-1;v[f+24>>2]=-1;v[f+16>>2]=-1;v[f+8>>2]=-1;f=(v[h+100>>2]<<3)+B|0;v[f>>2]=-1;v[f+40>>2]=-1;v[f+32>>2]=-1;v[f+24>>2]=-1;v[f+16>>2]=-1;v[f+8>>2]=-1;f=(v[h+104>>2]<<3)+D|0;v[f>>2]=-1;v[f+40>>2]=-1;v[f+32>>2]=-1;v[f+24>>2]=-1;v[f+16>>2]=-1;v[f+8>>2]=-1;f=(v[h+108>>2]<<3)+E|0;v[f>>2]=-1;v[f+40>>2]=-1;v[f+32>>2]=-1;v[f+24>>2]=-1;v[f+16>>2]=-1;v[f+8>>2]=-1;f=i+(v[h+112>>2]<<3)|0;v[f>>2]=-1;v[f+40>>2]=-1;v[f+32>>2]=-1;v[f+24>>2]=-1;v[f+16>>2]=-1;v[f+8>>2]=-1;p=v[h+96>>2];YK(b,p,k,l,s,o);u=v[h+100>>2];YK(b,u,B,H,I,o);n=v[h+104>>2];YK(b,n,D,J,K,o);x=v[h+108>>2];YK(b,x,E,L,M,o);f=v[h+112>>2];YK(b,f,i,r,q,o);XK(b,o,p,f,k,i,l,r,s,q);XK(b,o,u,f,B,i,H,r,I,q);XK(b,o,n,f,D,i,J,r,K,q);XK(b,o,x,f,E,i,L,r,M,q);KK(a,s);KK(a,l);KK(a,k)}if(!g){break a}if(!j){break b}a=v[d+40>>2];if(a){XK(b,v[c>>2],j,a,v[e+56>>2],v[d+56>>2],v[e+60>>2],v[d+60>>2],v[e+36>>2],v[d+36>>2])}a=v[d+68>>2];if(!a){break b}XK(b,v[c>>2],j,a,v[e+56>>2],v[d+80>>2],v[e+60>>2],v[d+84>>2],v[e+36>>2],v[d+64>>2])}a=v[d+40>>2];if(!a){break a}f=v[e+68>>2];if(!f){break a}XK(b,v[c>>2],f,a,v[e+80>>2],v[d+56>>2],v[e+84>>2],v[d+60>>2],v[e+64>>2],v[d+36>>2])}xa=h+128|0}function T7(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),y=C(0),A=C(0),B=C(0);c=xa-176|0;xa=c;v[c+60>>2]=a;v[c+56>>2]=a;a=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=a;a=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=a;E5(c+144|0,c+112|0,e,f,g);k=z[f+20>>2];n=z[f+16>>2];m=z[c+132>>2];l=z[c+128>>2];o=z[c+136>>2];z[b+8>>2]=o-z[f+24>>2];z[b+4>>2]=m-k;z[b>>2]=l-n;k=z[f+20>>2];n=z[f+16>>2];z[c+72>>2]=o-z[f+24>>2];z[c+68>>2]=m-k;z[c+64>>2]=l-n;k=z[g+20>>2];n=z[g+24>>2];p=z[g+16>>2];r=z[c+164>>2];z[c+92>>2]=r;z[c+108>>2]=o;z[c+104>>2]=m;s=z[c+168>>2];z[c+96>>2]=s;z[c+84>>2]=o-n;z[c+80>>2]=m-k;t=z[c+160>>2];z[c+88>>2]=t;z[c+100>>2]=l;z[c+76>>2]=l-p;k=z[c+156>>2];w=z[c+124>>2];n=z[c+152>>2];y=z[c+120>>2];p=z[c+144>>2];A=z[c+112>>2];q=z[c+148>>2];B=z[c+116>>2];if(C(C(k*w)+C(C(n*y)+C(C(p*A)+C(q*B))))>2]=-w;z[c+120>>2]=-y;z[c+116>>2]=-B;z[c+112>>2]=-A}b=0;a=x[e+116>>1]&2;b=a?z[e+104>>2]>=z[e+100>>2]:b;o=C(o-s);o=C(o+o);l=C(l-t);l=C(l+l);m=C(m-r);m=C(m+m);r=C(C(n*o)+C(C(p*l)+C(q*m)));s=C(C(k*k)+C(-.5));z[c+48>>2]=C(n*r)+C(C(o*s)-C(k*C(C(p*m)-C(l*q))));z[c+44>>2]=C(q*r)+C(C(m*s)-C(k*C(C(n*l)-C(o*p))));z[c+40>>2]=C(p*r)+C(C(l*s)-C(k*C(C(q*o)-C(m*n))));b=b&1;I5(c+56|0,c+144|0,c+112|0,c+40|0,b?7:6,7,c+24|0,c+8|0);m=z[f+16>>2];l=z[f+20>>2];k=z[c+24>>2];o=z[c+28>>2];z[i+8>>2]=z[c+32>>2]+z[f+24>>2];z[i+4>>2]=o+l;z[i>>2]=k+m;m=z[g+16>>2];l=z[g+20>>2];k=z[c+8>>2];o=z[c+12>>2];z[j+8>>2]=z[c+16>>2]+z[g+24>>2];z[j+4>>2]=o+l;z[j>>2]=k+m;a:{if(b|!a){break a}k=z[c+152>>2];o=z[c+144>>2];l=z[c+148>>2];r=C(l*C(0));p=C(C(k*C(0))+C(C(o+o)+r));n=z[c+156>>2];q=C(C(n*n)+C(-.5));s=C(q*C(0));m=C(C(k*p)+C(s+C(n*C(C(o*C(0))-C(l+l)))));l=C(C(l*p)+C(s+C(n*C(C(k+k)+C(o*C(-0))))));k=C(C(o*p)+C(C(q+q)+C(n*C(r+C(k*C(-0))))));r=z[e+100>>2];o=z[c+40>>2];p=z[e+96>>2];q=z[e+88>>2];n=z[e+92>>2];d=n>C(0);if(rC(0)?C(0):p))){a=v[c+60>>2];v[c+60>>2]=a+80;z[a+8>>2]=m;z[a+4>>2]=l;z[a>>2]=k;u[a+78>>1]=0;n=z[c+72>>2];p=z[c+64>>2];q=z[c+68>>2];z[a+40>>2]=m;z[a+36>>2]=l;z[a+32>>2]=k;z[a+24>>2]=C(p*l)-C(k*q);z[a+20>>2]=C(n*k)-C(m*p);z[a+16>>2]=C(q*m)-C(l*n);n=z[c+84>>2];p=z[c+76>>2];q=z[c+80>>2];r=C(r-o);z[a+12>>2]=r;z[a+56>>2]=C(p*l)-C(k*q);z[a+52>>2]=C(n*k)-C(m*p);z[a+48>>2]=C(q*m)-C(l*n);b=x[a+76>>1];n=z[e+88>>2];b:{if(d|n>C(0)){z[a+64>>2]=n;z[a+68>>2]=z[e+92>>2];b=b|17;break b}u[a+78>>1]=2049;z[a+64>>2]=z[e+80>>2];z[a+68>>2]=z[e+84>>2];b=b|(r>C(0)?24:16);if(!(z[e+80>>2]>C(0))){break b}b=b|4}v[a+44>>2]=0;u[a+76>>1]=b;p=z[e+96>>2];q=z[e+88>>2];n=z[e+92>>2]}s=z[e+104>>2];if(!(C(-s)C(0)?C(0):q>C(0)?C(0):p)-o))){break a}a=v[c+60>>2];v[c+60>>2]=a+80;t=C(-m);z[a+8>>2]=t;w=C(-l);z[a+4>>2]=w;y=C(-k);z[a>>2]=y;u[a+78>>1]=0;p=z[c+72>>2];q=z[c+68>>2];r=z[c+64>>2];z[a+40>>2]=t;z[a+36>>2]=w;z[a+32>>2]=y;z[a+24>>2]=C(k*q)-C(r*l);z[a+20>>2]=C(m*r)-C(p*k);z[a+16>>2]=C(l*p)-C(q*m);p=z[c+84>>2];q=z[c+80>>2];r=z[c+76>>2];o=C(o-s);z[a+12>>2]=o;z[a+56>>2]=C(k*q)-C(r*l);z[a+52>>2]=C(m*r)-C(p*k);z[a+48>>2]=C(l*p)-C(q*m);b=x[a+76>>1];m=z[e+88>>2];c:{if(n>C(0)|m>C(0)){z[a+64>>2]=m;z[a+68>>2]=z[e+92>>2];b=b|17;break c}u[a+78>>1]=2049;z[a+64>>2]=z[e+80>>2];z[a+68>>2]=z[e+84>>2];b=b|(o>C(0)?24:16);if(!(z[e+80>>2]>C(0))){break c}b=b|4}v[a+44>>2]=0;u[a+76>>1]=b}xa=c+176|0;return(v[c+60>>2]-v[c+56>>2]|0)/80|0}function Au(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=xa-288|0;xa=f;a:{if(!c){v[b>>2]=a;c=v[b+4>>2];b:{if(!w[a+4785|0]){v[b+4>>2]=c&268435455|-2147483648;Bu(a+16|0,b,d,e);break b}d=c&1073741823;if(c>>>0>=3221225472){v[b+4>>2]=d|-2147483648;if(c&268435456){break b}v[f+16>>2]=b;Pg(g,f+16|0);break b}v[b+4>>2]=d|1073741824;v[f+16>>2]=b;c=rh(g,f+16|0,f+12|0);if(w[f+12|0]){break b}v[c>>2]=v[f+16>>2]}c:{d:{if(z[b+260>>2]!=C(0)|z[b+236>>2]!=C(0)|(z[b+240>>2]!=C(0)|z[b+244>>2]!=C(0))){break d}if(z[b+248>>2]!=C(0)|z[b+252>>2]!=C(0)){break d}c=1;if(z[b+256>>2]==C(0)){break c}}c=0}v[b+264>>2]=c;if(!w[a+4785|0]){break a}t[f+272|0]=1;v[f+280>>2]=0;v[f+284>>2]=64;v[f+276>>2]=f+16;a=0;c=Io(b,f+12|0,0);e:{if(!c){break e}d=v[b+4>>2]&-1073741824;b=v[b>>2];if((c|0)!=1){i=c&-2;e=0;while(1){h=a<<2;g=v[h+v[f+12>>2]>>2];j=v[(g+32|0)+4>>2];if((j&251658240)==16777216){v[g+32>>2]=b;v[g+36>>2]=d|j&1073741823}g=v[v[f+12>>2]+(h|4)>>2];h=v[(g+32|0)+4>>2];if((h&251658240)==16777216){v[g+32>>2]=b;v[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=v[v[f+12>>2]+(a<<2)>>2];c=v[(a+32|0)+4>>2];if((c&251658240)!=16777216){break e}v[a+32>>2]=b;v[a+36>>2]=d|c&1073741823}a=v[f+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[f+276>>2];if((a|0)==(f+16|0)|!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a);break a}c=xa-288|0;xa=c;v[b>>2]=a;d=v[b+4>>2];f:{if(!w[a+4785|0]){v[b+4>>2]=d&268435455|-2147483648;t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;a=0;e=Io(b,c+12|0,0);g:{if(!e){break g}g=v[b>>2];if((e|0)!=1){h=e&-2;d=0;while(1){j=a<<2;i=v[j+v[c+12>>2]>>2];k=v[i+36>>2];if((k&251658240)==16777216){v[i+32>>2]=g;v[i+36>>2]=k&1073741823|-2147483648}i=v[v[c+12>>2]+(j|4)>>2];j=v[i+36>>2];if((j&251658240)==16777216){v[i+32>>2]=g;v[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=v[v[c+12>>2]+(a<<2)>>2];d=v[a+36>>2];if((d&251658240)!=16777216){break g}v[a+32>>2]=g;v[a+36>>2]=d&1073741823|-2147483648}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break f}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break f}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,a);break f}a=d&1073741823;h:{if(d>>>0>=3221225472){v[b+4>>2]=a|-2147483648;if(d&268435456){break h}v[c+16>>2]=b;Pg(g,c+16|0);break h}v[b+4>>2]=a|1073741824;v[c+16>>2]=b;a=rh(g,c+16|0,c+12|0);if(w[c+12|0]){break h}v[a>>2]=v[c+16>>2]}t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;a=0;e=Io(b,c+12|0,0);i:{if(!e){break i}g=v[b+4>>2]&-1073741824;i=v[b>>2];if((e|0)!=1){j=e&-2;d=0;while(1){k=a<<2;h=v[k+v[c+12>>2]>>2];l=v[h+36>>2];if((l&251658240)==16777216){v[h+32>>2]=i;v[h+36>>2]=g|l&1073741823}h=v[v[c+12>>2]+(k|4)>>2];k=v[h+36>>2];if((k&251658240)==16777216){v[h+32>>2]=i;v[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=v[v[c+12>>2]+(a<<2)>>2];d=v[a+36>>2];if((d&251658240)!=16777216){break i}v[a+32>>2]=i;v[a+36>>2]=g|d&1073741823}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break f}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break f}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,a)}xa=c+288|0;j:{k:{if(z[b+260>>2]!=C(0)|z[b+236>>2]!=C(0)|(z[b+240>>2]!=C(0)|z[b+244>>2]!=C(0))){break k}if(z[b+248>>2]!=C(0)|z[b+252>>2]!=C(0)){break k}a=1;if(z[b+256>>2]==C(0)){break j}}a=0}v[b+264>>2]=a}xa=f+288|0}function UF(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;h=xa-16|0;xa=h;v[h+8>>2]=b;c=v[a+16>>2];m=b>>>7|0;g=c+B(m,24)|0;f=w[g+4|0];a:{if(f&4){break a}b=v[a+204>>2]+(m<<2)|0;i=v[b>>2];p=v[a+88>>2];v[b>>2]=-1;b=c+B(v[h+8>>2]>>>7|0,24)|0;e=v[b+8>>2];d=B(i,44)+p|0;v[(e>>>0<4294967168?(c+B(e>>>7|0,24)|0)+12|0:d+4|0)>>2]=v[b+12>>2];e=v[b+12>>2];v[(e>>>0<4294967168?(c+B(e>>>7|0,24)|0)+8|0:d)>>2]=v[b+8>>2];d=d+(w[b+5|0]<<2)|0;v[d+8>>2]=v[d+8>>2]-1;v[b+8>>2]=-128;v[b+12>>2]=-128;b:{c:{if(f&2){q=v[h+8>>2];b=q>>>7|0;l=w[(c+B(b,24)|0)+5|0];d=B(l,12)+a|0;k=v[a+28>>2];b=k+(b<<2)|0;e=v[b>>2];j=(l<<2)+a|0;n=v[j+252>>2];d:{if(e>>>0>=n>>>0){d=v[d+112>>2];break d}d=v[d+112>>2];n=v[(d+(n<<2)|0)-4>>2];o=k+(n>>>5&134217724)|0;v[b>>2]=v[o>>2];v[o>>2]=e;v[(e<<2)+d>>2]=n;v[(v[b>>2]<<2)+d>>2]=q;v[j+252>>2]=v[j+252>>2]-1;e=v[b>>2]}l=B(l,12)+a|0;j=v[((v[l+116>>2]<<2)+d|0)-4>>2];v[k+(j>>>5&134217724)>>2]=e;v[(v[b>>2]<<2)+d>>2]=j;v[l+116>>2]=v[l+116>>2]-1;break c}if(!(f&32)){break b}b=v[a+28>>2];d=v[a+324>>2];e=v[(d+(v[a+328>>2]<<2)|0)-4>>2];v[b+(e>>>5&134217724)>>2]=v[b+(v[h+8>>2]>>>5&134217724)>>2];v[d+(v[b+(v[h+8>>2]>>>5&134217724)>>2]<<2)>>2]=e;v[a+328>>2]=v[a+328>>2]-1;f=f&223;b=b+(v[h+8>>2]>>>5&134217724)|0}v[b>>2]=33554431}b=f&249|4;t[g+4|0]=b;if(v[(c+B(m,24)|0)+16>>2]){v[v[a+28>>2]+(v[h+8>>2]>>>5&134217724)>>2]=v[a+328>>2];c=v[a+328>>2];e:{if(c>>>0>=(v[a+332>>2]&2147483647)>>>0){ZF(a+324|0,h+8|0);b=w[g+4|0];break e}v[v[a+324>>2]+(c<<2)>>2]=v[h+8>>2];v[a+328>>2]=v[a+328>>2]+1}t[g+4|0]=b|32}d=B(i,44)+p|0;m=v[d+8>>2];l=v[d+12>>2];c=v[g>>2];if((c|0)!=-1){while(1){b=v[a+84>>2];f=(c>>>0)/(b>>>0)|0;f=v[v[v[a+64>>2]+(f<<2)>>2]+(c-B(b,f)<<3)>>2];c=c>>>1|0;v[h+4>>2]=c;g=v[a+40>>2];b=v[a+60>>2];e=(c>>>0)/(b>>>0)|0;c=v[g+(e<<2)>>2]+(c-B(b,e)<<4)|0;k=v[c+12>>2];e=v[c+8>>2];f:{if((e|0)!=-1){j=(e>>>0)/(b>>>0)|0;b=(v[g+(j<<2)>>2]+(e-B(b,j)<<4)|0)+12|0;break f}b=(d+(v[c>>2]<<2)|0)+28|0}v[b>>2]=k;e=v[c+8>>2];b=v[c+12>>2];g:{if((b|0)!=-1){k=v[a+60>>2];j=(b>>>0)/(k>>>0)|0;v[(v[g+(j<<2)>>2]+(b-B(k,j)<<4)|0)+8>>2]=e;b=v[c>>2];break g}b=v[c>>2];v[(d+(b<<2)|0)+20>>2]=e}b=d+(b<<2)|0;v[b+36>>2]=v[b+36>>2]-1;v[c+12>>2]=-1;v[c+8>>2]=-1;GF(a,v[h+4>>2]);EF(a,v[h+4>>2]);g=x[c+4>>1];b=g&65534;u[c+4>>1]=b;if(g&4){MF(a,v[h+4>>2]);b=x[c+4>>1]&-5;u[c+4>>1]=b;g=(v[c>>2]<<2)+a|0;v[g+172>>2]=v[g+172>>2]-1}h:{i:{if(!(b&2)){if(b&8){break h}g=B(v[c>>2],12)+a|0;e=g+284|0;k=v[g+288>>2];if(k>>>0>=(v[g+292>>2]&2147483647)>>>0){pn(e,h+4|0);b=x[c+4>>1]|8;break i}v[v[e>>2]+(k<<2)>>2]=v[h+4>>2];v[g+288>>2]=v[g+288>>2]+1;b=b|8;break i}b=b|32}u[c+4>>1]=b}c=f;if((c|0)!=-1){continue}break}}if((m|0)!=(0-l|0)){break a}c=v[a+100>>2];f=B(i,44);b=f+p|0;v[b+20>>2]=-1;v[b+24>>2]=-1;v[b+28>>2]=-1;v[b+32>>2]=-1;v[b+36>>2]=0;v[b+40>>2]=0;v[c+(i<<2)>>2]=0;j:{if(v[b+16>>2]==-1){c=Vaa(-2,i);b=v[a+216>>2];f=i>>>5|0;d=v[b+(f<<2)>>2];break j}c=v[a+88>>2];b=c+f|0;f=v[a+240>>2];d=v[(f+(v[a+244>>2]<<2)|0)-4>>2];v[(c+B(d,44)|0)+16>>2]=v[b+16>>2];v[f+(v[b+16>>2]<<2)>>2]=d;v[a+244>>2]=v[a+244>>2]-1;v[b+16>>2]=-1;b=v[a+216>>2];f=i>>>5|0;d=b+(f<<2)|0;o=d;c=Vaa(-2,i);d=c&v[d>>2];v[o>>2]=d}v[(f<<2)+b>>2]=c&d;v[h+12>>2]=i;if(v[a+12>>2]==(i|0)){v[a+12>>2]=i-1;break a}b=v[a+4>>2];if(b>>>0>=(v[a+8>>2]&2147483647)>>>0){pn(a,h+12|0);break a}v[v[a>>2]+(b<<2)>>2]=i;v[a+4>>2]=v[a+4>>2]+1}xa=h+16|0}function Kv(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0),qa=C(0),ra=C(0),sa=C(0);U=z[b+20>>2];V=z[b+24>>2];W=z[b+36>>2];X=z[b+40>>2];Y=z[b+52>>2];Z=z[b+56>>2];_=z[b+68>>2];$=z[b+72>>2];aa=z[b+84>>2];ba=z[b+88>>2];ca=z[b+100>>2];da=z[b+104>>2];ea=z[b+112>>2];fa=z[b+116>>2];ga=z[b+120>>2];ha=z[b+128>>2];ia=z[b+132>>2];ja=z[b+136>>2];ka=z[b- -64>>2];la=z[b+80>>2];f=z[c+20>>2];g=z[c+24>>2];E=z[d+36>>2];F=z[d+68>>2];G=z[d+40>>2];H=z[d+72>>2];m=z[d+48>>2];n=z[d+80>>2];o=z[d+20>>2];p=z[d+52>>2];q=z[d+84>>2];r=z[d+24>>2];i=z[c+36>>2];s=z[d+56>>2];j=z[c+40>>2];t=z[d+88>>2];ma=z[b+4>>2];na=z[b+8>>2];oa=z[b+96>>2];pa=z[b>>2];qa=z[b+16>>2];ra=z[b+32>>2];sa=z[b+48>>2];k=z[c+16>>2];I=z[d+4>>2];J=z[d+8>>2];u=z[d+16>>2];l=z[c+32>>2];K=z[c>>2];L=z[d>>2];M=z[c+4>>2];N=z[d+32>>2];h=z[c+8>>2];O=z[d+64>>2];v[e+92>>2]=0;v[e+76>>2]=0;v[e+60>>2]=0;v[e+44>>2]=0;v[e+28>>2]=0;v[e+12>>2]=0;w=C(C(L*K)+C(C(N*M)+C(O*h)));z[e>>2]=w;P=C(C(r*l)+C(C(s*i)+C(t*j)));z[e+88>>2]=P;Q=C(C(o*l)+C(C(p*i)+C(q*j)));z[e+84>>2]=Q;R=C(C(u*l)+C(C(m*i)+C(n*j)));z[e+80>>2]=R;x=C(C(J*l)+C(C(G*i)+C(H*j)));z[e+72>>2]=x;y=C(C(I*l)+C(C(E*i)+C(F*j)));z[e+68>>2]=y;A=C(C(L*l)+C(C(N*i)+C(O*j)));z[e+64>>2]=A;S=C(C(r*k)+C(C(s*f)+C(t*g)));z[e+56>>2]=S;T=C(C(o*k)+C(C(p*f)+C(q*g)));z[e+52>>2]=T;i=C(C(u*k)+C(C(m*f)+C(n*g)));z[e+48>>2]=i;B=C(C(J*k)+C(C(G*f)+C(H*g)));z[e+40>>2]=B;D=C(C(I*k)+C(C(E*f)+C(F*g)));z[e+36>>2]=D;f=C(C(L*k)+C(C(N*f)+C(O*g)));z[e+32>>2]=f;j=C(C(r*K)+C(C(s*M)+C(t*h)));z[e+24>>2]=j;k=C(C(o*K)+C(C(p*M)+C(q*h)));z[e+20>>2]=k;l=C(C(u*K)+C(C(m*M)+C(n*h)));z[e+16>>2]=l;g=C(C(J*K)+C(C(G*M)+C(H*h)));z[e+8>>2]=g;h=C(C(I*K)+C(C(E*M)+C(F*h)));z[e+4>>2]=h;v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;z[a+80>>2]=C(C(la-C(r*w))-C(s*f))-C(t*A);z[a- -64>>2]=C(C(ka-C(o*w))-C(p*f))-C(q*A);z[a+48>>2]=C(C(sa-C(u*w))-C(m*f))-C(n*A);z[a+32>>2]=C(C(ra-C(J*w))-C(G*f))-C(H*A);z[a+16>>2]=C(C(qa-C(I*w))-C(E*f))-C(F*A);z[a>>2]=C(C(pa-C(L*w))-C(N*f))-C(O*A);z[a+136>>2]=C(C(ja-C(r*j))-C(s*S))-C(t*P);z[a+132>>2]=C(C(ia-C(r*k))-C(s*T))-C(t*Q);z[a+128>>2]=C(C(ha-C(r*l))-C(s*i))-C(t*R);z[a+120>>2]=C(C(ga-C(o*j))-C(p*S))-C(q*P);z[a+116>>2]=C(C(fa-C(o*k))-C(p*T))-C(q*Q);z[a+112>>2]=C(C(ea-C(o*l))-C(p*i))-C(q*R);z[a+104>>2]=C(C(da-C(u*j))-C(m*S))-C(n*P);z[a+100>>2]=C(C(ca-C(u*k))-C(m*T))-C(n*Q);z[a+96>>2]=C(C(oa-C(u*l))-C(m*i))-C(n*R);z[a+88>>2]=C(C(ba-C(r*g))-C(s*B))-C(t*x);z[a+84>>2]=C(C(aa-C(r*h))-C(s*D))-C(t*y);z[a+72>>2]=C(C($-C(o*g))-C(p*B))-C(q*x);z[a+68>>2]=C(C(_-C(o*h))-C(p*D))-C(q*y);z[a+56>>2]=C(C(Z-C(u*g))-C(m*B))-C(n*x);z[a+52>>2]=C(C(Y-C(u*h))-C(m*D))-C(n*y);z[a+40>>2]=C(C(X-C(J*g))-C(G*B))-C(H*x);z[a+36>>2]=C(C(W-C(J*h))-C(G*D))-C(H*y);z[a+24>>2]=C(C(V-C(I*g))-C(E*B))-C(F*x);z[a+20>>2]=C(C(U-C(I*h))-C(E*D))-C(F*y);z[a+8>>2]=C(C(na-C(L*g))-C(N*B))-C(O*x);z[a+4>>2]=C(C(ma-C(L*h))-C(N*D))-C(O*y)}function I5(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=0,P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0);G=z[a+28>>2];H=z[a+24>>2];y=z[a+16>>2];A=z[a+12>>2];I=z[a+20>>2];B=z[a+8>>2];k=v[a+4>>2];E=k;a:{if(!e){break a}l=z[b>>2];n=C(l+l);o=z[b+12>>2];q=C(n*o);j=z[b+4>>2];p=C(j+j);i=z[b+8>>2];r=C(p*i);w=C(n*i);J=C(p*o);m=C(w-J);F=C(n*j);s=C(i+i);K=C(s*o);o=C(F+K);L=C(j*p);M=C(i*s);i=C(C(C(1)-L)-M);s=C(0);E=e&1;if(E){j=z[d>>2];t=C(C(0)-C(m*j));D=C(C(0)-C(o*j));s=C(C(0)-C(i*j))}j=C(r+q);p=C(F-K);F=C(C(1)-C(l*n));n=C(F-M);N=e&2;if(N){l=z[d+4>>2];t=C(t-C(j*l));D=C(D-C(n*l));s=C(s-C(p*l))}l=C(r-q);q=C(w+J);r=C(F-L);O=e&4;if(O){w=z[d+8>>2];t=C(t-C(r*w));D=C(D-C(l*w));s=C(s-C(q*w))}y=C(y+t);A=C(A+D);B=C(B+s);e=k;if(E){s=z[d>>2];z[k+40>>2]=m;z[k+36>>2]=o;z[k+32>>2]=i;z[k+8>>2]=m;z[k+4>>2]=o;z[k>>2]=i;u[k+78>>1]=2048;z[k+56>>2]=C(I*o)-C(i*H);z[k+52>>2]=C(G*i)-C(m*I);z[k+48>>2]=C(H*m)-C(o*G);z[k+24>>2]=C(B*o)-C(i*A);z[k+20>>2]=C(y*i)-C(m*B);z[k+16>>2]=C(A*m)-C(o*y);z[k+12>>2]=-s;e=k+80|0}if(N){m=z[d+4>>2];z[e+40>>2]=j;z[e+36>>2]=n;z[e+32>>2]=p;z[e+8>>2]=j;z[e+4>>2]=n;z[e>>2]=p;u[e+78>>1]=2048;z[e+56>>2]=C(I*n)-C(p*H);z[e+52>>2]=C(G*p)-C(j*I);z[e+48>>2]=C(H*j)-C(n*G);z[e+24>>2]=C(B*n)-C(p*A);z[e+20>>2]=C(y*p)-C(j*B);z[e+16>>2]=C(A*j)-C(n*y);z[e+12>>2]=-m;e=e+80|0}E=e;if(!O){break a}m=z[d+8>>2];z[e+40>>2]=r;z[e+36>>2]=l;z[e+32>>2]=q;z[e+8>>2]=r;z[e+4>>2]=l;z[e>>2]=q;u[e+78>>1]=2048;z[e+56>>2]=C(I*l)-C(q*H);z[e+52>>2]=C(G*q)-C(r*I);z[e+48>>2]=C(H*r)-C(l*G);z[e+24>>2]=C(B*l)-C(q*A);z[e+20>>2]=C(y*q)-C(r*B);z[e+16>>2]=C(A*r)-C(l*y);z[e+12>>2]=-m;E=e+80|0}e=E;b:{if(!f){break b}p=z[b+12>>2];m=z[c+12>>2];r=C(p*m);n=z[b+8>>2];o=z[c+8>>2];s=C(n*o);i=z[b>>2];l=z[c>>2];t=C(i*l);j=z[b+4>>2];q=z[c+4>>2];D=C(j*q);w=C(s+C(t+D));b=C(r+w)!=C(0);r=C(r-w);w=C(p*l);J=C(n*q);L=C(j*m);M=C(p*q);F=C(L+M);P=C(n*l);Q=C(o*i);K=C(P+Q);R=C(n*m);S=C(p*o);p=C(R+S);l=C(l*j);q=C(i*q);n=C(l+q);if(f&1){v[e+32>>2]=0;v[e+36>>2]=0;v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;u[e+78>>1]=2048;v[e+40>>2]=0;T=C(C(K-F)*C(.5));z[e+56>>2]=T;U=C(C(p+n)*C(.5));z[e+52>>2]=U;z[e+24>>2]=T;z[e+20>>2]=U;u[e+76>>1]=x[e+76>>1]|64;z[e+12>>2]=-C(J+C(C(C(-j)*o)+C(w+C(m*C(-i)))));t=C(C(C(t+t)+r)*C(.5));t=b?t:C(t+C(1.1920928955078125e-7));z[e+48>>2]=t;z[e+16>>2]=t;e=e+80|0}m=C(w+C(i*m));o=C(C(j*o)+J);if(f&2){i=C(C(n-p)*C(.5));z[e+48>>2]=i;v[e+32>>2]=0;v[e+36>>2]=0;z[e+16>>2]=i;v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;u[e+78>>1]=2048;i=C(C(m+o)*C(.5));z[e+56>>2]=i;j=C(C(C(D+D)+r)*C(.5));j=b?j:C(j+C(1.1920928955078125e-7));z[e+52>>2]=j;v[e+40>>2]=0;z[e+24>>2]=i;z[e+20>>2]=j;z[e+12>>2]=-C(Q+C(C(M-L)-P));u[e+76>>1]=x[e+76>>1]|64;e=e+80|0}if(!(f&4)){break b}i=C(C(K+F)*C(.5));z[e+48>>2]=i;v[e+32>>2]=0;v[e+36>>2]=0;z[e+16>>2]=i;v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;u[e+78>>1]=2048;i=C(C(C(s+s)+r)*C(.5));i=b?i:C(i+C(1.1920928955078125e-7));z[e+56>>2]=i;m=C(C(o-m)*C(.5));z[e+52>>2]=m;v[e+40>>2]=0;z[e+24>>2]=i;z[e+20>>2]=m;z[e+12>>2]=-C(l+C(C(S-R)-q));u[e+76>>1]=x[e+76>>1]|64;e=e+80|0}z[g+8>>2]=y;z[g+4>>2]=A;z[g>>2]=B;z[h+8>>2]=G;z[h+4>>2]=H;z[h>>2]=I;if(e>>>0>k>>>0){while(1){u[k+76>>1]=x[k+76>>1]|16;k=k+80|0;if(e>>>0>k>>>0){continue}break}}v[a+4>>2]=e}function Q_(a,b,c,d,e,f,g){var h=0,i=0,j=C(0),k=0,l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=0,A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0;h=xa-128|0;xa=h;r=z[b+16>>2];q=z[b>>2];s=C(r-q);J=z[b+36>>2];w=z[b+4>>2];A=C(J-w);L=z[b+32>>2];E=C(L-q);B=z[b+20>>2];F=C(B-w);n=C(C(s*A)-C(E*F));M=z[b+40>>2];x=z[b+8>>2];G=C(M-x);t=z[b+24>>2];H=C(t-x);l=C(C(F*G)-C(A*H));j=C(C(H*E)-C(G*s));N=C(C(1)/C(K(C(C(n*n)+C(C(l*l)+C(j*j))))));O=z[b+56>>2];o=C(O-x);P=z[b+48>>2];p=C(P-q);Q=z[b+52>>2];u=C(Q-w);a:{if(C(D(C(C(C(n*N)*o)+C(C(C(l*N)*p)+C(u*C(j*N))))))>2]=3;jY(a,b,c,d,e,f,g);break a}i=C(C(C(n*x)+C(C(l*q)+C(w*j)))*C(C(n*O)+C(C(l*P)+C(Q*j))))>=C(-9.999999974752427e-7);v[h+112>>2]=i?-1:0;n=C(C(p*F)-C(s*u));l=C(C(u*H)-C(F*o));j=C(C(o*s)-C(H*p));n=C(C(C(n*x)+C(C(l*q)+C(w*j)))*C(C(n*M)+C(C(l*L)+C(J*j))));v[h+120>>2]=n>=C(-9.999999974752427e-7)?-1:0;l=C(C(E*u)-C(p*A));j=C(C(A*o)-C(u*G));o=C(C(G*p)-C(o*E));k=C(C(C(l*x)+C(C(j*q)+C(w*o)))*C(C(l*t)+C(C(j*r)+C(B*o))))>=C(-9.999999974752427e-7);v[h+116>>2]=k?-1:0;l=C(P-r);j=C(J-B);o=C(L-r);p=C(Q-B);u=C(C(l*j)-C(o*p));A=C(u*t);s=p;p=C(M-t);t=C(O-t);j=C(C(s*p)-C(j*t));s=C(j*r);r=C(C(t*o)-C(p*l));q=C(C(A+C(s+C(B*r)))*C(C(u*x)+C(C(j*q)+C(w*r))));v[h+124>>2]=q>=C(-9.999999974752427e-7)?-1:0;if(!(i|k|(n>=C(-9.999999974752427e-7)|q>=C(-9.999999974752427e-7)))){v[a>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;break a}v[h+104>>2]=v[25363];i=v[25362];v[h+96>>2]=v[25361];v[h+100>>2]=i;P_(a,b,h+112|0,h+96|0,g);g=v[h+96>>2];I=v[h+100>>2];i=I<<4;a=i+b|0;k=v[a+4>>2];v[h+80>>2]=v[a>>2];v[h+84>>2]=k;k=v[a+12>>2];v[h+88>>2]=v[a+8>>2];v[h+92>>2]=k;y=v[h+104>>2];k=y<<4;a=k+b|0;m=v[a+4>>2];v[h+64>>2]=v[a>>2];v[h+68>>2]=m;m=v[a+12>>2];v[h+72>>2]=v[a+8>>2];v[h+76>>2]=m;a=c+i|0;m=v[a+12>>2];v[h+56>>2]=v[a+8>>2];v[h+60>>2]=m;m=v[a+4>>2];v[h+48>>2]=v[a>>2];v[h+52>>2]=m;a=c+k|0;m=v[a+12>>2];v[h+40>>2]=v[a+8>>2];v[h+44>>2]=m;m=v[a+4>>2];v[h+32>>2]=v[a>>2];v[h+36>>2]=m;a=d+i|0;i=v[a+12>>2];v[h+24>>2]=v[a+8>>2];v[h+28>>2]=i;i=v[a+4>>2];v[h+16>>2]=v[a>>2];v[h+20>>2]=i;a=d+k|0;i=v[a+12>>2];v[h+8>>2]=v[a+8>>2];v[h+12>>2]=i;i=v[a+4>>2];v[h>>2]=v[a>>2];v[h+4>>2]=i;a=g<<2;i=v[a+f>>2];k=I<<2;I=v[k+f>>2];y=y<<2;m=v[y+f>>2];S=v[a+e>>2];k=v[e+k>>2];y=v[e+y>>2];g=g<<4;a=g+b|0;R=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=R;R=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=R;a=v[h+92>>2];v[b+24>>2]=v[h+88>>2];v[b+28>>2]=a;a=v[h+84>>2];v[b+16>>2]=v[h+80>>2];v[b+20>>2]=a;a=v[h+76>>2];v[b+40>>2]=v[h+72>>2];v[b+44>>2]=a;a=v[h+68>>2];v[b+32>>2]=v[h+64>>2];v[b+36>>2]=a;a=c+g|0;b=v[a+4>>2];v[c>>2]=v[a>>2];v[c+4>>2]=b;b=v[a+12>>2];v[c+8>>2]=v[a+8>>2];v[c+12>>2]=b;a=v[h+60>>2];v[c+24>>2]=v[h+56>>2];v[c+28>>2]=a;a=v[h+52>>2];v[c+16>>2]=v[h+48>>2];v[c+20>>2]=a;a=v[h+36>>2];v[c+32>>2]=v[h+32>>2];v[c+36>>2]=a;a=v[h+44>>2];v[c+40>>2]=v[h+40>>2];v[c+44>>2]=a;a=d+g|0;b=v[a+4>>2];v[d>>2]=v[a>>2];v[d+4>>2]=b;b=v[a+12>>2];v[d+8>>2]=v[a+8>>2];v[d+12>>2]=b;a=v[h+20>>2];v[d+16>>2]=v[h+16>>2];v[d+20>>2]=a;a=v[h+28>>2];v[d+24>>2]=v[h+24>>2];v[d+28>>2]=a;a=v[h+12>>2];v[d+40>>2]=v[h+8>>2];v[d+44>>2]=a;a=v[h+4>>2];v[d+32>>2]=v[h>>2];v[d+36>>2]=a;v[e+8>>2]=y;v[e+4>>2]=k;v[e>>2]=S;v[f+8>>2]=m;v[f+4>>2]=I;v[f>>2]=i}xa=h+128|0}function PX(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=0,H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=0,O=C(0);j=xa-448|0;xa=j;D=v[c+32>>2];v[j+440>>2]=0;v[j+444>>2]=0;v[j+432>>2]=0;v[j+436>>2]=0;v[j+416>>2]=0;G=v[c+12>>2];I=v[c+8>>2];p=z[c+4>>2];v[j+412>>2]=0;v[j+404>>2]=I;v[j+408>>2]=G;z[j+400>>2]=p;G=v[c+16>>2];I=v[c+20>>2];N=v[c+28>>2];v[j+392>>2]=v[c+24>>2];v[j+396>>2]=N;v[j+384>>2]=G;v[j+388>>2]=I;J=z[d+20>>2];s=z[b+20>>2];L=z[d+24>>2];H=z[b+24>>2];E=z[a+4>>2];M=z[d+16>>2];O=z[b+16>>2];q=z[d+8>>2];n=z[d>>2];y=z[e+4>>2];r=z[d+4>>2];k=z[e>>2];A=z[d+12>>2];m=z[e+8>>2];v[j+380>>2]=0;m=C(m*f);k=C(k*f);l=C(y*f);o=C(C(q*m)+C(C(n*k)+C(r*l)));y=C(C(A*A)+C(-.5));F=C(C(C(y*m)-C(A*C(C(n*l)-C(r*k))))+C(q*o));z[j+376>>2]=F+F;F=C(C(r*o)+C(C(y*l)-C(A*C(C(q*k)-C(m*n)))));z[j+372>>2]=F+F;m=C(C(n*o)+C(C(y*k)-C(A*C(C(r*m)-C(l*q)))));z[j+368>>2]=m+m;F=C(-n);l=C(O-M);o=C(s-J);s=C(H-L);H=C(C(C(F*l)-C(o*r))-C(q*s));m=C(C(C(A*C(C(r*l)-C(n*o)))+C(y*s))-C(q*H));m=C(m+m);k=C(C(C(y*o)+C(A*C(C(n*s)-C(q*l))))-C(r*H));k=C(k+k);l=C(C(C(y*l)+C(A*C(C(q*o)-C(r*s))))-C(n*H));l=C(l+l);G=D+16|0;b=0;a:{if(p!=C(1)){break a}b=0;if(z[c+8>>2]!=C(1)){break a}b=z[c+12>>2]==C(1)}t[j+240|0]=0;v[j+232>>2]=0;v[j+236>>2]=0;v[j+224>>2]=0;v[j+228>>2]=0;v[j+216>>2]=0;v[j+220>>2]=0;v[j+208>>2]=0;v[j+212>>2]=0;v[j+352>>2]=G;v[j+360>>2]=v[D+56>>2]+B(w[D+55|0],20);t[j+364|0]=w[D+54|0];p=C(p*z[D+68>>2]);o=C(z[D+72>>2]*z[j+404>>2]);p=p<=o?p:o;o=C(z[D+76>>2]*z[j+408>>2]);p=p<=o?p:o;z[j+232>>2]=p*C(.02500000037252903);z[j+224>>2]=p*C(.10000000149011612);z[j+228>>2]=p*C(.05000000074505806);c=j+208|0;GV(j+400|0,j+384|0,j+256|0,j+304|0,c,b);v[j+356>>2]=v[D+60>>2];v[j+188>>2]=0;z[j+184>>2]=m;z[j+180>>2]=k;v[j+172>>2]=0;z[j+168>>2]=m;z[j+164>>2]=k;z[j+192>>2]=E;v[j+124>>2]=0;z[j+120>>2]=m;z[j+116>>2]=k;z[j+112>>2]=l;v[j+140>>2]=4;z[j+176>>2]=l;z[j+160>>2]=l;t[j+144|0]=1;z[j+136>>2]=E;z[j+132>>2]=E;z[j+128>>2]=E;b=x[h>>1];v[j+56>>2]=141148;v[j+60>>2]=j+112;v[j+48>>2]=141216;v[j+52>>2]=c;v[j+44>>2]=0;z[j+40>>2]=m-z[j+216>>2];z[j+36>>2]=k-z[j+212>>2];z[j+32>>2]=l-z[j+208>>2];i=C(z[a+4>>2]+i);a=b&512;b=FX(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);b:{if(!b){break b}c=v[d>>2];h=v[d+4>>2];D=v[d+12>>2];v[j+8>>2]=v[d+8>>2];v[j+12>>2]=D;v[j>>2]=c;v[j+4>>2]=h;c=v[d+16>>2];h=v[d+20>>2];i=z[d+24>>2];v[j+28>>2]=0;z[j+24>>2]=i;v[j+16>>2]=c;v[j+20>>2]=h;if(GX(g,e,j+96|0,j- -64|0,j+80|0,j,(a|0)!=0,0)){break b}u[g+12>>1]=x[g+12>>1]|1;i=z[j+68>>2];E=z[j+64>>2];m=z[j+72>>2];k=z[j+88>>2];l=z[j+80>>2];p=z[j+84>>2];o=z[j+96>>2];v[g+8>>2]=-1;z[g+40>>2]=o*f;o=C(-r);f=C(C(q*k)+C(C(n*l)+C(r*p)));s=C(C(C(A*C(C(n*p)+C(l*o)))+C(y*k))+C(q*f));z[g+24>>2]=L+C(s+s);s=C(C(r*f)+C(C(y*p)+C(A*C(C(q*l)+C(k*F)))));z[g+20>>2]=J+C(s+s);s=C(y*l);l=C(-q);f=C(C(n*f)+C(s+C(A*C(C(r*k)+C(p*l)))));z[g+16>>2]=M+C(f+f);f=C(C(q*m)+C(C(n*E)+C(r*i)));k=C(C(C(A*C(C(n*i)+C(E*o)))+C(y*m))+C(q*f));k=C(k+k);n=C(C(n*f)+C(C(y*E)+C(A*C(C(r*m)+C(i*l)))));n=C(n+n);f=C(C(r*f)+C(C(y*i)+C(A*C(C(q*E)+C(m*F)))));f=C(f+f);i=C(C(1)/C(K(C(C(k*k)+C(C(n*n)+C(f*f))))));z[g+36>>2]=i*C(-k);z[g+32>>2]=i*C(-f);z[g+28>>2]=i*C(-n)}xa=j+448|0;return b|0}function m3(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),t=C(0),u=C(0),w=C(0),y=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=0,L=0,M=0,N=0,O=0;q=xa-16|0;xa=q;i=v[b+12>>2];a:{if(!i){break a}e=i+1|0;d=B(e,24);if(d){k=v[37696]+12|0;k=Ba[v[v[k>>2]+8>>2]](k,d,24422,12274,252)|0}e=B(e,12);if(e){d=v[37696]+12|0;y=Ba[v[v[d>>2]+8>>2]](d,e,24422,12274,253)|0}I=v[b+20>>2];e=v[b+4>>2];r=v[b+16>>2];d=0;while(1){b:{if(r){g=r+B(d,12)|0;b=v[g+8>>2];f=v[g>>2];h=v[g+4>>2];break b}g=B(d,6)+I|0;b=x[g+4>>1];f=x[g>>1];h=x[g+2>>1]}g=e+B(b,12)|0;l=z[g>>2];h=e+B(h,12)|0;j=z[h>>2];f=e+B(f,12)|0;A=z[f>>2];m=z[g+4>>2];n=z[h+4>>2];D=z[f+4>>2];o=z[g+8>>2];p=z[h+8>>2];E=z[f+8>>2];b=B(d,24)+k|0;F=z[f+12>>2];G=z[h+12>>2];s=F>G?F:G;H=z[g+12>>2];s=s>H?s:H;z[b+24>>2]=s;t=p>2]=t;u=n>2]=u;w=j>2]=w;p=p>E?E:p;o=o>p?p:o;z[b+8>>2]=o;n=n>D?D:n;m=m>n?n:m;z[b+4>>2]=m;j=j>A?A:j;l=j>2]=l;b=B(d,12)+y|0;j=F>2]=C(s+(j>2]=C(t+o)*C(.5);z[b+4>>2]=C(u+m)*C(.5);z[b>>2]=C(w+l)*C(.5);d=d+1|0;if((i|0)!=(d|0)){continue}break}e=v[a+4>>2];if(e){g=e-4|0;b=v[g>>2];c:{if(!b){break c}d=B(b,36);b=d+e|0;h=d-36|0;f=((h>>>0)/36|0)+1&3;if(f){d=0;while(1){b=b-36|0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}if(h>>>0<108){break c}while(1){d=b-36|0;v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;d=b-72|0;v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;d=b-108|0;v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;b=b-144|0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;if((b|0)!=(e|0)){continue}break}}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,g);v[a+4>>2]=0}b=v[a>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b)}b=0;v[a>>2]=0;v[q+8>>2]=1;v[q+12>>2]=0;d=0;e=i<<2;if(e){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,e,24422,12274,283)|0}v[a>>2]=d;e=i>>>0>1?i:1;g=e&7;if(e-1>>>0>=7){h=e&-8;e=0;while(1){v[(b<<2)+d>>2]=b;f=b|1;v[(f<<2)+d>>2]=f;f=b|2;v[(f<<2)+d>>2]=f;f=b|3;v[(f<<2)+d>>2]=f;f=b|4;v[(f<<2)+d>>2]=f;f=b|5;v[(f<<2)+d>>2]=f;f=b|6;v[(f<<2)+d>>2]=f;f=b|7;v[(f<<2)+d>>2]=f;b=b+8|0;e=e+8|0;if((h|0)!=(e|0)){continue}break}}if(g){e=0;while(1){v[(b<<2)+d>>2]=b;b=b+1|0;e=e+1|0;if((g|0)!=(e|0)){continue}break}}e=v[37696];d=e+12|0;h=(i<<1)-1|0;b=Saa(h,0,36,0);f=b+4|0;g=(K=d,L=Aa?-1:b>>>0>f>>>0?-1:f,M=Ba[v[v[e>>2]+20>>2]](e)|0?44661:63804,N=12274,O=291,J=v[v[d>>2]+8>>2],Ba[J](K|0,L|0,M|0,N|0,O|0)|0);v[g>>2]=h;e=g+4|0;b=e;f=B(i,72)-72|0;r=((f>>>0)/36|0)+1&7;if(r){d=0;b=e;while(1){v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;b=b+36|0;d=d+1|0;if((r|0)!=(d|0)){continue}break}}if(f>>>0>=252){d=e+B(h,36)|0;while(1){v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+284>>2]=0;v[b+276>>2]=0;v[b+280>>2]=0;v[b+248>>2]=0;v[b+240>>2]=0;v[b+244>>2]=0;v[b+212>>2]=0;v[b+204>>2]=0;v[b+208>>2]=0;v[b+176>>2]=0;v[b+168>>2]=0;v[b+172>>2]=0;v[b+140>>2]=0;v[b+132>>2]=0;v[b+136>>2]=0;v[b+104>>2]=0;v[b+96>>2]=0;v[b+100>>2]=0;v[b+68>>2]=0;v[b+60>>2]=0;v[b+64>>2]=0;b=b+288|0;if((d|0)!=(b|0)){continue}break}}v[a+4>>2]=e;b=v[a>>2];v[g+36>>2]=i;v[g+32>>2]=b;n3(e,k,y,q+8|0,e,c);v[a+8>>2]=v[q+8>>2];if(y){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,y)}if(!k){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,k)}xa=q+16|0;return(i|0)!=0}function Y4(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=0,L=0,M=C(0),N=0,O=0,P=C(0),Q=C(0),R=0,S=0,T=C(0),U=0,V=0,W=0,X=0,Y=0,Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0),la=C(0),ma=0,na=0,oa=0,pa=C(0),qa=C(0),ra=C(0),sa=C(0),ta=C(0),ua=C(0),va=C(0);G=z[c>>2];X=v[a+20>>2];if(X){na=v[a+16>>2];O=v[a+4>>2];P=z[c+8>>2];Q=z[c+4>>2];oa=v[a+28>>2];while(1){a=B(R,20)+na|0;Y=w[a+18|0]-2|0;if(Y){pa=z[a+8>>2];qa=z[a+4>>2];ra=z[a>>2];S=x[a+16>>1]+oa|0;a=B(w[S|0],12)+O|0;q=C(z[a+8>>2]-P);Z=C(q*q);sa=C(q*Z);r=C(z[a+4>>2]-Q);_=C(r*r);ta=C(r*_);s=C(z[a>>2]-G);$=C(s*s);ua=C(s*$);T=z[a+12>>2];va=C(T*T);a=0;while(1){aa=C(0);K=B(w[(a+S|0)+2|0],12)+O|0;k=z[K+12>>2];a=a+1|0;L=B(w[S+a|0],12)+O|0;h=z[L+12>>2];j=C(z[L>>2]-G);d=C(j-s);m=C(z[K+4>>2]-Q);e=C(m-r);l=C(z[K>>2]-G);f=C(l-s);D=C(z[L+4>>2]-Q);g=C(D-r);E=C(C(d*e)-C(f*g));i=g;n=C(z[K+8>>2]-P);g=C(n-q);H=e;o=C(z[L+8>>2]-P);e=C(o-q);t=C(C(i*g)-C(H*e));F=C(C(e*f)-C(g*d));a:{if(!(C(C(E*pa)+C(C(t*ra)+C(qa*F)))>3]=h;p=+C(da*C(-.008333333767950535));A[b+48>>3]=p;y=+C(ca*C(-.008333333767950535));A[b+80>>3]=y;A[b+32>>3]=p;N=+C(u*C(-.008333333767950535));A[b+72>>3]=N;A[b- -64>>3]=y;A[b+40>>3]=N;d=C(ka*C(.01666666753590107));e=C(ja*C(.01666666753590107));U=+C(d+e);A[b+88>>3]=U;g=d;d=C(ia*C(.01666666753590107));V=+C(g+d);A[b+56>>3]=V;W=+C(e+d);A[b+24>>3]=W;f=C(C(1)/h);z[b+12>>2]=C(ea*C(.0416666679084301))*f;d=C(C(fa*C(.0416666679084301))*f);z[b+8>>2]=d;e=C(C(ga*C(.0416666679084301))*f);z[b+4>>2]=e;f=C(C(ha*C(.0416666679084301))*f);z[b>>2]=f;J=p+ +C(e*C(h*f));A[b+120>>3]=J;ma=y+ +C(d*C(h*e));A[b+152>>3]=ma;A[b+104>>3]=J;g=C(f*f);i=C(e*e);j=C(g+i);A[b+160>>3]=U-+C(h*j);k=C(d*d);m=C(k+g);A[b+128>>3]=V-+C(h*m);l=C(i+k);A[b+96>>3]=W-+C(h*l);J=N+ +C(f*C(h*d));A[b+144>>3]=J;A[b+136>>3]=ma;A[b+112>>3]=J;g=z[c+8>>2];i=z[c+4>>2];if(!(!(G!=C(0)|i!=C(0))&g==C(0))){g=C(d+g);z[b+8>>2]=g;i=C(e+i);z[b+4>>2]=i;k=C(G+f);z[b>>2]=k;p=p+ +C(h*C(C(f*e)-C(i*k)));A[b+48>>3]=p;y=y+ +C(h*C(C(e*d)-C(g*i)));A[b+80>>3]=y;A[b+32>>3]=p;p=N+ +C(h*C(C(d*f)-C(k*g)));A[b+72>>3]=p;A[b+64>>3]=y;A[b+40>>3]=p;d=C(k*k);e=C(i*i);A[b+88>>3]=U-+C(h*C(j-C(d+e)));f=C(g*g);A[b+56>>3]=V-+C(h*C(m-C(f+d)));A[b+24>>3]=W-+C(h*C(l-C(e+f)))}return 1}function Ow(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),x=C(0),y=0,A=0,D=C(0),E=C(0),F=0,G=0,H=0,I=0,J=0,K=0,L=C(0),M=C(0),N=C(0);d=w[c|0];if(d&1){I9(v[b+12>>2],v[a+156>>2],v[a+468>>2]<<2);d=w[c|0]}if(d&2){I9(v[b+16>>2],v[a+144>>2],v[a+468>>2]<<2);d=w[c|0]}if(d&4){I9(v[b+20>>2],v[a+180>>2],v[a+468>>2]<<2);d=w[c|0]}if(d&8){I9(v[b+24>>2],v[a+192>>2],v[a+468>>2]<<2);d=w[c|0]}a:{if(!(d&16)){break a}r=v[a+448>>2];if(!r){break a}y=v[a+228>>2];A=v[b+28>>2];while(1){i=e<<5;g=i+A|0;i=i+y|0;z[g>>2]=z[i+16>>2];z[g+4>>2]=z[i+20>>2];z[g+8>>2]=z[i+24>>2];z[g+16>>2]=z[i>>2];z[g+20>>2]=z[i+4>>2];z[g+24>>2]=z[i+8>>2];e=e+1|0;if((r|0)!=(e|0)){continue}break}}b:{if(!(d&32)){break b}y=v[a+448>>2];h=z[a+464>>2];if(h>C(0)){h=C(C(1)/h);G=v[a+168>>2];A=v[a+448>>2];H=v[a+456>>2];d=v[a+240>>2];c:{if(t[v[a+476>>2]]&1){v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;m=C(0);break c}f=z[a+132>>2];e=v[a+228>>2];l=z[e+20>>2];j=z[a+116>>2];n=z[e+4>>2];k=z[a+136>>2];o=z[e+24>>2];p=z[e>>2];m=z[a+120>>2];q=z[e+8>>2];u=z[a+112>>2];z[d+16>>2]=h*C(z[e+16>>2]-z[a+128>>2]);z[d+8>>2]=h*C(q-m);z[d>>2]=h*C(p-u);z[d+24>>2]=h*C(o-k);l=C(h*C(l-f));m=C(h*C(n-j))}z[d+4>>2]=m;z[d+20>>2]=l;if(A>>>0>=2){I=v[a+384>>2];g=1;while(1){e=B(g,80)+H|0;F=w[e+76|0];if(F){J=(v[e+72>>2]<<2)+G|0;K=B(g,76)+I|0;e=d+(g<<5)|0;l=z[e+16>>2];j=z[e+8>>2];n=z[e+4>>2];k=z[e>>2];o=z[e+24>>2];p=z[e+20>>2];r=0;while(1){i=B(r,24)+K|0;m=z[i>>2];q=z[i+4>>2];f=C(h*z[(r<<2)+J>>2]);j=C(C(f*z[i+8>>2])+j);z[e+8>>2]=j;n=C(C(f*q)+n);z[e+4>>2]=n;k=C(C(f*m)+k);z[e>>2]=k;m=z[i+20>>2];q=z[i+16>>2];l=C(C(f*z[i+12>>2])+l);z[e+16>>2]=l;p=C(C(f*q)+p);z[e+20>>2]=p;o=C(C(f*m)+o);z[e+24>>2]=o;r=r+1|0;if((F|0)!=(r|0)){continue}break}}g=g+1|0;if((A|0)!=(g|0)){continue}break}}}if(!y){break b}i=v[a+240>>2];r=v[b+32>>2];e=0;while(1){g=e<<5;d=g+r|0;g=g+i|0;z[d>>2]=z[g+16>>2];z[d+4>>2]=z[g+20>>2];z[d+8>>2]=z[g+24>>2];z[d+16>>2]=z[g>>2];z[d+20>>2]=z[g+4>>2];z[d+24>>2]=z[g+8>>2];e=e+1|0;if((y|0)!=(e|0)){continue}break}}if(w[c|0]&64){d=v[a+228>>2];c=v[v[a+444>>2]+16>>2];L=z[c+16>>2];M=z[c+20>>2];m=z[c+24>>2];q=z[c+48>>2];u=z[c+56>>2];s=z[c+52>>2];b=v[b+36>>2];l=z[c+8>>2];j=z[c+40>>2];n=z[c+4>>2];k=z[c+36>>2];h=z[c+12>>2];f=z[c+44>>2];o=z[c+32>>2];p=z[c>>2];z[b+12>>2]=C(l*j)+C(C(n*k)+C(C(h*f)+C(o*p)));z[b+8>>2]=C(o*n)+C(C(C(f*l)-C(h*j))-C(p*k));z[b+4>>2]=C(j*p)+C(C(C(f*n)-C(h*k))-C(l*o));z[b>>2]=C(k*l)+C(C(C(f*p)-C(h*o))-C(n*j));N=m;m=C(u*C(-2));q=C(q*C(-2));u=C(s*C(-2));D=C(C(j*m)+C(C(o*q)+C(k*u)));E=C(C(f*f)+C(-.5));s=C(C(j*D)+C(C(m*E)-C(f*C(C(o*u)-C(q*k)))));s=C(s+s);x=C(C(o*D)+C(C(q*E)-C(f*C(C(k*m)-C(u*j)))));x=C(x+x);f=C(C(k*D)+C(C(u*E)-C(f*C(C(j*q)-C(m*o)))));f=C(f+f);j=C(C(l*s)+C(C(p*x)+C(n*f)));k=C(C(h*h)+C(-.5));z[b+24>>2]=N+C(C(l*j)+C(C(s*k)+C(h*C(C(p*f)-C(x*n)))));z[b+20>>2]=M+C(C(n*j)+C(C(f*k)+C(h*C(C(l*x)-C(s*p)))));z[b+16>>2]=L+C(C(p*j)+C(C(x*k)+C(h*C(C(n*s)-C(f*l)))));z[b+28>>2]=z[d+16>>2];z[b+32>>2]=z[d+20>>2];z[b+36>>2]=z[d+24>>2];z[b+40>>2]=z[d>>2];z[b+44>>2]=z[d+4>>2];z[b+48>>2]=z[d+8>>2];a=v[a+240>>2];z[b+52>>2]=z[a+16>>2];z[b+56>>2]=z[a+20>>2];z[b+60>>2]=z[a+24>>2];z[b+64>>2]=z[a>>2];z[b+68>>2]=z[a+4>>2];z[b+72>>2]=z[a+8>>2]}}function t_(a,b,c,d){var e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0);f=xa-80|0;xa=f;h=z[b+12>>2];q=z[b+4>>2];m=z[b+8>>2];a:{if(!(q!=C(1)|m!=C(1)|h!=C(1))){J=z[d+20>>2];K=z[d+24>>2];m=z[c+24>>2];y=z[c+20>>2];b=v[c+32>>2];_=v[c+28>>2];L=z[d+16>>2];A=z[c+16>>2];h=z[d+4>>2];i=z[d>>2];e=z[d+12>>2];g=z[d+8>>2];z[a+56>>2]=z[c+36>>2];v[a+48>>2]=_;v[a+52>>2]=b;n=C(i+i);j=C(h*n);k=C(g+g);o=C(e*k);l=C(j+o);z[a+4>>2]=l;s=C(n*g);q=C(h+h);p=C(e*q);w=C(s-p);z[a+8>>2]=w;j=C(j-o);z[a+12>>2]=j;o=C(q*g);e=C(n*e);r=C(o+e);z[a+20>>2]=r;s=C(s+p);z[a+24>>2]=s;e=C(o-e);z[a+28>>2]=e;i=C(C(1)-C(i*n));g=C(g*k);n=C(i-g);z[a+16>>2]=n;h=C(h*q);i=C(i-h);z[a+32>>2]=i;g=C(C(C(1)-h)-g);z[a>>2]=g;z[a+44>>2]=K+C(C(C(A*w)+C(y*r))+C(i*m));z[a+36>>2]=L+C(C(C(A*g)+C(y*j))+C(s*m));z[a+40>>2]=J+C(C(C(A*l)+C(y*n))+C(e*m));break a}y=z[c+28>>2];$=z[d+20>>2];aa=z[d+24>>2];J=z[c+24>>2];K=z[c+20>>2];A=z[c+32>>2];ba=z[d+16>>2];L=z[c+16>>2];e=z[b+16>>2];i=C(e+e);j=z[b+20>>2];g=C(j+j);F=C(C(1)-C(e*i));G=C(j*g);k=C(F-G);o=C(k*h);e=z[b+24>>2];H=C(i*e);D=z[b+28>>2];x=C(g*D);l=C(H+x);s=C(q*l);B=C(g*e);I=C(i*D);p=C(B-I);w=C(m*p);t=z[d>>2];r=C(t+t);n=z[d+8>>2];R=C(r*n);u=z[d+4>>2];E=C(u+u);N=z[d+12>>2];S=C(E*N);O=C(R-S);M=z[c+36>>2];g=C(M*C(0));T=C(C(1)-C(t*r));U=C(u*E);P=C(T-U);Q=C(C(k*o)+C(C(l*s)+C(p*w)));t=C(H-x);H=C(t*h);x=C(e+e);V=C(e*x);e=C(C(C(1)-G)-V);G=C(q*e);W=C(i*j);X=C(x*D);i=C(W+X);D=C(m*i);x=C(C(k*H)+C(C(l*G)+C(p*D)));Y=C(E*n);Z=C(r*N);E=C(Y+Z);ca=k;j=C(B+I);k=C(j*h);B=l;h=C(W-X);l=C(q*h);q=p;p=m;m=C(F-V);p=C(p*m);F=C(C(ca*k)+C(C(B*l)+C(q*p)));q=C(C(P*Q)+C(C(O*x)+C(E*F)));B=C(C(t*o)+C(C(e*s)+C(i*w)));I=C(C(t*H)+C(C(e*G)+C(i*D)));t=C(C(t*k)+C(C(e*l)+C(i*p)));i=C(C(P*B)+C(C(O*I)+C(E*t)));s=C(C(j*o)+C(C(h*s)+C(m*w)));w=C(C(j*H)+C(C(h*G)+C(m*D)));l=C(C(j*k)+C(C(h*l)+C(m*p)));m=C(C(P*s)+C(C(O*w)+C(E*l)));z[f+32>>2]=C(M*q)+C(C(i*g)+C(m*g));h=C(Y-Z);o=C(r*u);e=C(n+n);u=C(N*e);j=C(o+u);r=C(n*e);k=C(T-r);e=C(C(h*Q)+C(C(j*x)+C(k*F)));n=C(C(h*B)+C(C(j*I)+C(k*t)));j=C(C(h*s)+C(C(j*w)+C(k*l)));z[f+28>>2]=C(M*e)+C(C(n*g)+C(j*g));h=C(A*C(0));z[f+20>>2]=C(h*q)+C(C(h*i)+C(A*m));z[f+16>>2]=C(h*e)+C(C(h*n)+C(A*j));z[f+44>>2]=aa+C(C(J*q)+C(C(L*i)+C(K*m)));z[f+40>>2]=$+C(C(J*e)+C(C(L*n)+C(K*j)));p=C(R+S);r=C(C(C(1)-U)-r);u=C(o-u);k=C(C(p*Q)+C(C(r*x)+C(u*F)));o=C(C(p*B)+C(C(r*I)+C(u*t)));l=C(C(p*s)+C(C(r*w)+C(u*l)));z[f+24>>2]=C(M*k)+C(C(o*g)+C(l*g));z[f+12>>2]=C(h*k)+C(C(h*o)+C(A*l));g=C(y*C(0));z[f+8>>2]=C(g*q)+C(C(y*i)+C(g*m));z[f+4>>2]=C(g*e)+C(C(y*n)+C(g*j));z[f>>2]=C(g*k)+C(C(y*o)+C(g*l));z[f+36>>2]=ba+C(C(J*k)+C(C(L*o)+C(K*l)));r9(f- -64|0,f);b=v[f+68>>2];c=v[f+64>>2];g=z[f+72>>2];z[a>>2]=z[f>>2];z[a+4>>2]=z[f+4>>2];z[a+8>>2]=z[f+8>>2];z[a+12>>2]=z[f+12>>2];z[a+16>>2]=z[f+16>>2];z[a+20>>2]=z[f+20>>2];z[a+24>>2]=z[f+24>>2];z[a+28>>2]=z[f+28>>2];z[a+32>>2]=z[f+32>>2];z[a+36>>2]=z[f+36>>2];z[a+40>>2]=z[f+40>>2];h=z[f+44>>2];z[a+56>>2]=g;v[a+48>>2]=c;v[a+52>>2]=b;z[a+44>>2]=h}xa=f+80|0}function Kd(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0,L=0;h=xa+-64|0;xa=h;z[h+32>>2]=z[d>>2];z[h+36>>2]=z[d+4>>2];z[h+40>>2]=z[d+8>>2];z[h+44>>2]=z[d+12>>2];z[h+48>>2]=z[c>>2];z[h+52>>2]=z[c+4>>2];z[h+56>>2]=z[c+8>>2];z[h>>2]=z[g>>2];z[h+4>>2]=z[g+4>>2];z[h+8>>2]=z[g+8>>2];z[h+12>>2]=z[g+12>>2];z[h+16>>2]=z[f>>2];z[h+20>>2]=z[f+4>>2];z[h+24>>2]=z[f+8>>2];g=xa-16|0;xa=g;c=v[37696];d=c+12|0;c=(G=d,H=84,I=Ba[v[v[c>>2]+20>>2]](c)|0?28381:63804,J=6820,L=45,F=v[v[d>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,L|0)|0);E=Ba[v[v[a>>2]+20>>2]](a)|0;u[g+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[g+8>>1];u[c+4>>1]=258;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=147844;v[c>>2]=147632;v[c+8>>2]=0;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,128,24422,17141,454)|0;j=z[h+44>>2];l=z[h+40>>2];m=z[h+32>>2];i=z[h+36>>2];r=v[h+52>>2];s=v[h+48>>2];z[c+44>>2]=z[h+56>>2];v[c+36>>2]=s;v[c+40>>2]=r;k=i;i=C(C(1)/C(K(C(C(j*j)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+24>>2]=k*i;z[c+28>>2]=l*i;z[c+32>>2]=j*i;z[c+20>>2]=m*i;j=z[h+12>>2];l=z[h+8>>2];m=z[h>>2];i=z[h+4>>2];r=v[h+20>>2];s=v[h+16>>2];z[c+72>>2]=z[h+24>>2];D=c- -64|0;v[D>>2]=s;v[D+4>>2]=r;k=i;i=C(C(1)/C(K(C(C(j*j)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+52>>2]=k*i;z[c+56>>2]=l*i;z[c+60>>2]=j*i;z[c+48>>2]=m*i;Z4(f,b);q=z[h+52>>2];t=z[h+56>>2];w=z[h+48>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];k=z[h+40>>2];m=z[f+4>>2];n=z[h+36>>2];j=z[f+12>>2];o=z[h+44>>2];i=z[f>>2];p=z[h+32>>2];z[d+28>>2]=C(l*k)+C(C(m*n)+C(C(j*o)+C(i*p)));z[d+24>>2]=C(p*m)+C(C(C(j*k)-C(o*l))-C(i*n));z[d+20>>2]=C(k*i)+C(C(C(j*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(j*p)-C(o*i))-C(m*k));k=C(w-B);k=C(k+k);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*k)-C(n*m))-C(l*o));q=C(C(j*j)+C(-.5));z[d+40>>2]=C(C(o*q)+C(j*C(C(m*k)-C(i*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(j*C(C(i*o)-C(l*k))))-C(m*p);z[d+32>>2]=C(C(k*q)+C(j*C(C(l*n)-C(m*o))))-C(i*p);Z4(f,e);q=z[h+20>>2];t=z[h+24>>2];w=z[h+16>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];k=z[h+8>>2];m=z[f+4>>2];n=z[h+4>>2];j=z[f+12>>2];o=z[h+12>>2];i=z[f>>2];p=z[h>>2];z[d+56>>2]=C(l*k)+C(C(m*n)+C(C(j*o)+C(i*p)));z[d+52>>2]=C(p*m)+C(C(C(j*k)-C(o*l))-C(i*n));z[d+48>>2]=C(k*i)+C(C(C(j*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(j*p)-C(o*i))-C(m*k));k=C(w-B);k=C(k+k);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*k)-C(n*m))-C(l*o));q=C(C(j*j)+C(-.5));z[d+68>>2]=C(C(o*q)+C(j*C(C(m*k)-C(i*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(j*C(C(i*o)-C(l*k))))-C(m*p);z[d+60>>2]=C(C(k*q)+C(j*C(C(l*n)-C(m*o))))-C(i*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;v[c+12>>2]=147528;v[c>>2]=147308;j=z[E>>2];d=0;f=v[c+80>>2];u[f+116>>1]=0;v[f+108>>2]=1343554297;v[f+112>>2]=1078530011;v[f+100>>2]=2125114026;v[f+104>>2]=-22369622;v[f+88>>2]=0;v[f+92>>2]=0;v[f+80>>2]=0;z[f+84>>2]=j+j;j=C(j*C(.009999999776482582));z[f+96>>2]=j>2]+108>>2]](a,b,e,c+12|0,147284,128)|0;v[c+76>>2]=a;a:{if(a){d=c;break a}Ba[v[v[c>>2]+16>>2]](c)}xa=g+16|0;xa=h- -64|0;return d|0}function O$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0),J=C(0),K=C(0);f=xa-256|0;xa=f;g=z[d+8>>2];l=z[d>>2];h=z[d+4>>2];a:{if(!(l!=C(1)|h!=C(1)|g!=C(1))){u[f+16>>1]=0;v[f+12>>2]=e;v[f+4>>2]=2;v[f>>2]=143520;v[f+8>>2]=f- -64;h=z[c+8>>2];g=C(z[a+8>>2]-z[c+24>>2]);l=C(g+g);m=z[c>>2];g=C(z[a>>2]-z[c+16>>2]);i=C(g+g);g=C(z[a+4>>2]-z[c+20>>2]);j=C(g+g);k=z[c+4>>2];n=C(C(h*l)+C(C(m*i)+C(j*k)));g=z[c+12>>2];o=C(C(g*g)+C(-.5));p=C(C(h*n)+C(C(l*o)-C(g*C(C(m*j)-C(i*k)))));z[f+32>>2]=p;q=C(C(k*n)+C(C(j*o)-C(g*C(C(h*i)-C(l*m)))));z[f+28>>2]=q;h=C(C(m*n)+C(C(i*o)-C(g*C(C(k*l)-C(j*h)))));z[f+24>>2]=h;g=z[a+12>>2];z[f+20>>2]=g*g;z[f+224>>2]=p;z[f+220>>2]=q;z[f+216>>2]=h;v[f+184>>2]=0;v[f+176>>2]=1065353216;v[f+180>>2]=0;g=g>C(.0010000000474974513)?g:C(.0010000000474974513);z[f+168>>2]=g;z[f+164>>2]=g;z[f+160>>2]=g;L$(f+216|0,f+176|0,C(0),1,b,f,f+160|0);a=w[f+16|0];break a}i=z[d+12>>2];m=C(i+i);j=z[d+16>>2];k=C(j+j);A=C(C(1)-C(i*m));E=C(j*k);n=C(A-E);o=C(g*n);i=z[d+20>>2];F=C(m*i);r=z[d+24>>2];H=C(k*r);p=C(F+H);q=C(l*p);y=C(k*i);s=C(m*r);k=C(y-s);x=C(h*k);z[f+248>>2]=C(n*o)+C(C(p*q)+C(k*x));y=C(y+s);s=C(g*y);I=C(m*j);j=C(i+i);J=C(r*j);m=C(I-J);r=C(l*m);K=C(i*j);i=C(A-K);A=C(h*i);z[f+244>>2]=C(n*s)+C(C(p*r)+C(k*A));z[f+236>>2]=C(y*o)+C(C(m*q)+C(i*x));z[f+232>>2]=C(y*s)+C(C(m*r)+C(i*A));j=C(F-H);F=C(j*o);o=C(C(C(1)-E)-K);E=C(o*q);q=C(I+J);z[f+224>>2]=F+C(E+C(q*x));z[f+220>>2]=C(j*s)+C(C(o*r)+C(q*A));r=n;n=C(g*j);s=p;p=C(l*o);x=k;k=C(h*q);z[f+240>>2]=C(r*n)+C(C(s*p)+C(x*k));z[f+228>>2]=C(y*n)+C(C(m*p)+C(i*k));z[f+216>>2]=C(j*n)+C(C(o*p)+C(q*k));t[f+193|0]=C(C(l*h)*g)>2]=e;v[f+176>>2]=143564;v[f+184>>2]=f+216;t[f+192|0]=0;v[f+180>>2]=2;h=z[c+8>>2];p=z[a+8>>2];g=C(p-z[c+24>>2]);l=C(g+g);m=z[c>>2];q=z[a>>2];g=C(q-z[c+16>>2]);i=C(g+g);x=z[a+4>>2];g=C(x-z[c+20>>2]);j=C(g+g);k=z[c+4>>2];n=C(C(h*l)+C(C(m*i)+C(j*k)));g=z[c+12>>2];o=C(C(g*g)+C(-.5));z[f+208>>2]=C(h*n)+C(C(l*o)-C(g*C(C(m*j)-C(i*k))));z[f+204>>2]=C(k*n)+C(C(j*o)-C(g*C(C(h*i)-C(l*m))));z[f+200>>2]=C(m*n)+C(C(i*o)-C(g*C(C(k*l)-C(j*h))));g=z[a+12>>2];z[f+196>>2]=g*g;z[f+120>>2]=g;z[f+116>>2]=g;z[f+108>>2]=p;z[f+104>>2]=x;v[f+96>>2]=1065353216;v[f+80>>2]=1065353216;v[f+84>>2]=0;z[f+112>>2]=g;z[f+100>>2]=q;v[f+88>>2]=0;v[f+92>>2]=0;v[f+72>>2]=0;v[f+76>>2]=0;v[f+64>>2]=1065353216;v[f+68>>2]=0;r_(f,f- -64|0,c,d);g=z[f+52>>2];h=z[f+56>>2];e=g>=h;a=z[f+48>>2]>=(g>h?g:h);d=a?2:e?2:1;c=B(d,12)+f|0;m=z[c>>2];i=z[c+4>>2];G=d<<2;d=f+48|0;g=z[G+d>>2];j=z[c+8>>2];G=a?0:e?1:2;c=B(G,12)+f|0;k=z[c>>2];n=z[c+4>>2];e=B(a,12)+f|0;o=z[e>>2];p=z[e+4>>2];h=z[(d|a<<2)>>2];q=z[e+8>>2];x=z[f+40>>2];y=z[f+44>>2];r=z[f+36>>2];l=z[d+(G<<2)>>2];s=C(l*z[c+8>>2]);z[f+152>>2]=s;z[f+168>>2]=y-s;n=C(l*n);z[f+148>>2]=n;z[f+164>>2]=x-n;l=C(l*k);z[f+144>>2]=l;z[f+160>>2]=r-l;z[f+136>>2]=C(C(h*C(D(q)))+C(g*C(D(j))))+C(.0010000000474974513);z[f+132>>2]=C(C(h*C(D(p)))+C(g*C(D(i))))+C(.0010000000474974513);z[f+128>>2]=C(C(h*C(D(o)))+C(g*C(D(m))))+C(.0010000000474974513);L$(f+160|0,f+144|0,C(2),1,b,f+176|0,f+128|0);a=w[f+192|0]}xa=f+256|0;return(a&255)!=0|0}function b2(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=0,A=0,B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0);g=xa-208|0;xa=g;y=v[c+32>>2];D=z[y+20>>2];A=v[d+32>>2];B=z[A+20>>2];H=z[y+24>>2];I=z[A+24>>2];J=z[y+16>>2];K=z[A+16>>2];m=z[A+8>>2];j=z[y>>2];p=z[A>>2];i=z[y+8>>2];q=z[A+4>>2];h=z[y+12>>2];k=z[A+12>>2];n=z[y+4>>2];y=0;v[g+204>>2]=0;v[g+188>>2]=0;v[g+172>>2]=0;L=C(i*q);M=C(n*m);N=C(h*p);O=C(j*k);l=C(C(L-M)+C(N-O));o=C(l+l);P=C(j*m);Q=C(i*p);R=C(h*q);S=C(n*k);r=C(C(P-Q)+C(R-S));u=C(r+r);w=C(C(1)-C(l*o));T=C(r*u);z[g+184>>2]=w-T;U=C(n*p);V=C(j*q);W=C(h*m);X=C(i*k);l=C(C(U-V)+C(W-X));x=C(l*u);Y=C(h*k);s=C(-j);Z=C(n*q);_=C(m*i);F=C(Y-C(C(C(p*s)-Z)-_));t=C(F*o);z[g+180>>2]=x-t;z[g+168>>2]=x+t;$=C(l+l);aa=C(l*$);z[g+164>>2]=w-aa;w=C(K-J);x=C(B-D);t=C(C(s*w)-C(x*n));s=C(I-H);t=C(t-C(i*s));G=C(C(h*h)+C(-.5));E=C(C(C(h*C(C(n*w)-C(j*x)))+C(G*s))-C(i*t));z[g+200>>2]=E+E;E=C(C(C(G*x)+C(h*C(C(j*s)-C(i*w))))-C(n*t));z[g+196>>2]=E+E;v[g+156>>2]=0;l=C(l*o);u=C(F*u);z[g+176>>2]=l+u;o=C(r*o);r=C(F*$);z[g+160>>2]=o-r;z[g+152>>2]=l-u;z[g+148>>2]=o+r;z[g+144>>2]=C(C(1)-T)-aa;h=C(C(C(G*w)+C(h*C(C(i*x)-C(n*s))))-C(j*t));z[g+192>>2]=h+h;v[g+140>>2]=0;s=C(-p);n=C(J-K);o=C(D-B);l=C(H-I);r=C(C(C(s*n)-C(o*q))-C(m*l));x=C(C(k*k)+C(-.5));h=C(C(C(k*C(C(q*n)-C(p*o)))+C(l*x))-C(m*r));z[g+136>>2]=h+h;h=C(C(C(k*C(C(p*l)-C(m*n)))+C(o*x))-C(q*r));z[g+132>>2]=h+h;v[g+124>>2]=0;i=C(C(M-L)+C(O-N));h=C(i+i);u=C(C(Q-P)+C(S-R));w=C(u+u);t=C(C(1)-C(i*h));D=C(u*w);z[g+120>>2]=t-D;i=C(C(V-U)+C(X-W));B=C(i*w);j=C(Y-C(C(C(s*j)-Z)-_));s=C(j*h);z[g+116>>2]=B-s;v[g+108>>2]=0;z[g+104>>2]=B+s;B=t;s=C(i+i);t=C(i*s);z[g+100>>2]=B-t;k=C(C(C(k*C(C(o*m)-C(q*l)))+C(n*x))-C(p*r));z[g+128>>2]=k+k;k=C(i*h);m=C(j*w);z[g+112>>2]=k+m;h=C(u*h);j=C(j*s);z[g+96>>2]=h-j;v[g+92>>2]=0;z[g+88>>2]=k-m;z[g+84>>2]=h+j;z[g+80>>2]=C(C(1)-D)-t;v[g+76>>2]=0;v[g+48>>2]=2139095039;v[g+40>>2]=0;v[g+44>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+16>>2]=0;a:{if(!Y1(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(!Y1(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(!Z1(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=v[g+52>>2];v[e>>2]=v[g+48>>2];v[e+4>>2]=a;a=v[g+60>>2];v[e+8>>2]=v[g+56>>2];v[e+12>>2]=a;b:{if(v[g+76>>2]==1){a=v[d+32>>2];h=z[a+12>>2];k=z[a+8>>2];m=z[g+40>>2];j=z[a>>2];p=z[g+32>>2];i=z[a+4>>2];q=z[g+36>>2];n=C(C(k*m)+C(C(j*p)+C(i*q)));o=C(C(h*h)+C(-.5));l=C(C(C(h*C(C(j*q)-C(p*i)))+C(o*m))+C(k*n));l=C(l+l);r=C(C(i*n)+C(C(o*q)+C(h*C(C(k*p)-C(m*j)))));r=C(r+r);h=C(C(j*n)+C(C(p*o)+C(h*C(C(i*m)-C(q*k)))));h=C(h+h);break b}a=v[c+32>>2];h=z[a+12>>2];k=z[a+8>>2];m=z[g+40>>2];j=z[a>>2];p=z[g+32>>2];i=z[a+4>>2];q=z[g+36>>2];n=C(C(k*m)+C(C(j*p)+C(i*q)));o=C(C(h*h)+C(-.5));l=C(C(C(C(h*C(C(j*q)-C(p*i)))+C(o*m))+C(k*n))*C(-2));r=C(C(C(i*n)+C(C(o*q)+C(h*C(C(k*p)-C(m*j)))))*C(-2));h=C(C(C(j*n)+C(C(p*o)+C(h*C(C(i*m)-C(q*k)))))*C(-2))}v[f+12>>2]=0;z[f+8>>2]=l;z[f+4>>2]=r;z[f>>2]=h;y=1}xa=g+208|0;return y}function Ux(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=0,i=C(0),j=C(0),k=0,l=0,m=0,n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),u=0,x=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0);d=xa+-64|0;xa=d;a:{if(w[a+488|0]){b9(v[37696],8,12859,545,76983,0);break a}k=v[a+448>>2];h=v[b+52>>2];v[d+56>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;m=Cx(h,k,d+16|0);v[d+40>>2]=0;v[d+44>>2]=0;v[d+48>>2]=v[b+24>>2];l=h+4|0;u=k<<5;e=v[h+4>>2];c=v[h+8>>2];f=v[(e+(c<<2)|0)-4>>2];if((u|0)<=(f-v[h+16>>2]|0)){f=f-u|0;v[d>>2]=f;b:{if(c>>>0>=(v[h+12>>2]&2147483647)>>>0){Vs(l,d);break b}v[e+(c<<2)>>2]=f;v[h+8>>2]=c+1}q=v[d>>2]}if(k){u=v[a+444>>2];O=v[b>>2];e=0;while(1){b=e<<5;c=b+O|0;o=z[c>>2];n=z[c+4>>2];f=b+q|0;b=v[(b+u|0)+16>>2];g=z[b+124>>2];z[f+8>>2]=g*z[c+8>>2];z[f+4>>2]=g*n;z[f>>2]=g*o;j=z[b>>2];n=C(j+j);g=z[b+8>>2];p=C(n*g);r=z[b+4>>2];i=C(r+r);s=z[b+12>>2];x=C(i*s);o=C(p-x);J=C(p+x);p=z[b+120>>2];x=C(J*p);K=C(C(1)-C(j*n));A=C(r*i);j=C(K-A);B=z[b+112>>2];D=C(g+g);L=C(g*D);M=C(C(C(1)-A)-L);A=C(B*M);E=C(i*g);G=C(n*s);g=C(E+G);i=z[b+116>>2];H=C(n*r);F=C(D*s);N=C(H-F);n=C(i*N);r=C(C(x*j)+C(C(A*o)+C(g*n)));s=z[c+24>>2];P=C(s*C(C(C(j*p)*j)+C(C(C(B*o)*o)+C(g*C(g*i)))));D=z[c+16>>2];I=z[c+20>>2];E=C(E-G);p=C(E*p);G=C(p*j);j=C(H+F);B=C(B*j);H=C(B*o);F=g;g=C(K-L);o=C(i*g);i=C(G+C(H+C(F*o)));z[f+24>>2]=P+C(C(D*r)+C(I*i));F=C(s*i);i=C(C(x*E)+C(C(A*j)+C(g*n)));z[f+20>>2]=F+C(C(D*i)+C(I*C(C(p*E)+C(C(B*j)+C(g*o)))));z[f+16>>2]=C(s*r)+C(C(D*C(C(x*J)+C(C(A*M)+C(N*n))))+C(I*i));e=e+1|0;if((k|0)!=(e|0)){continue}break}}b=a+112|0;v[d+32>>2]=q;c:{if(t[v[a+476>>2]]&1){v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;c=d+16|0;wx(b,c);J9(v[d+24>>2],0,v[a+448>>2]<<5);sx(b,d,c);Ix(b,c);Kx(b,c);Jx(b,c);break c}v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;c=d+16|0;wx(b,c);J9(v[d+24>>2],0,v[a+448>>2]<<5);sx(b,d,c);Ix(b,c);Kx(b,c);Mx(b,c);Nx(b,c)}a=v[h+16>>2];d:{if(!(a>>>0<=m>>>0&m>>>0>2]>>>0)){if(!m){break d}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,m);break d}u=v[h+4>>2];c=0;k=v[h+8>>2];e=k;while(1){f=c;c=c+1|0;a=e;e=a-1|0;b=u+(e<<2)|0;if(m>>>0>y[b>>2]){continue}break}e:{if(a>>>0>=k>>>0){break e}e=f&3;if(e){c=0;while(1){v[b>>2]=v[v[l>>2]+(a<<2)>>2];a=a+1|0;b=b+4|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}if(f-1>>>0<3){break e}while(1){c=a<<2;v[b>>2]=v[c+v[l>>2]>>2];v[b+4>>2]=v[(c+v[l>>2]|0)+4>>2];v[b+8>>2]=v[(c+v[l>>2]|0)+8>>2];v[b+12>>2]=v[(c+v[l>>2]|0)+12>>2];b=b+16|0;a=a+4|0;if((k|0)!=(a|0)){continue}break}}v[h+8>>2]=k-1}a=v[h+16>>2];if(!(a>>>0<=q>>>0&a+v[h+20>>2]>>>0>q>>>0)){if(!q){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,q);break a}k=v[h+4>>2];c=0;m=v[h+8>>2];e=m;while(1){f=c;c=c+1|0;a=e;e=a-1|0;b=k+(e<<2)|0;if(y[b>>2]>>0){continue}break}f:{if(a>>>0>=m>>>0){break f}e=f&3;if(e){c=0;while(1){v[b>>2]=v[v[l>>2]+(a<<2)>>2];a=a+1|0;b=b+4|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}if(f-1>>>0<3){break f}while(1){c=a<<2;v[b>>2]=v[c+v[l>>2]>>2];v[b+4>>2]=v[(c+v[l>>2]|0)+4>>2];v[b+8>>2]=v[(c+v[l>>2]|0)+8>>2];v[b+12>>2]=v[(c+v[l>>2]|0)+12>>2];b=b+16|0;a=a+4|0;if((m|0)!=(a|0)){continue}break}}v[h+8>>2]=m-1}xa=d- -64|0}function oN(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,A=0,C=0,D=0;n=xa-48|0;xa=n;b=v[a+40>>2];if(v[b+11896>>2]){g=v[a+32>>2];s=v[g+44>>2];m=v[g+36>>2];e=v[b+11892>>2];while(1){t=p<<2;i=v[t+e>>2]+c|0;a:{if(i>>>0>c>>>0){l=0;j=c;while(1){g=d;f=x[((j<<3)+s|0)+4>>1];b:{if(!f){break b}o=f+h|0;while(1){b=(h<<5)+m|0;c:{if(!x[b+22>>1]){f=f-1|0;break c}if((d|0)!=(h|0)){k=v[b+4>>2];e=(d<<5)+m|0;v[e>>2]=v[b>>2];v[e+4>>2]=k;k=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=k;k=v[b+20>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=k;k=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=k}d=d+1|0}h=h+1|0;if((o&65535)!=(h&65535)){continue}break}e=f&65535;if(!e){break b}o=(A<<3)+s|0;u[o+4>>1]=f;v[o>>2]=g;b=w[v[((g<<5)+m|0)+24>>2]];d:{if((b|0)!=5){break d}b=5;if(e>>>0<2){break d}f=e-1|0;k=f&3;e:{if(e-2>>>0<3){e=1;break e}C=f&-4;f=0;e=1;while(1){D=b;b=(e+g<<5)+m|0;b=w[v[b+120>>2]]==1?1:w[v[b+88>>2]]==1?1:w[v[b+56>>2]]==1?1:w[v[b+24>>2]]==1?1:D;e=e+4|0;f=f+4|0;if((C|0)!=(f|0)){continue}break}}f=0;if(!k){break d}while(1){b=w[v[((e+g<<5)+m|0)+24>>2]]==1?1:b;e=e+1|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}u[o+6>>1]=b&255;l=l+1|0;A=A+1|0}j=j+1|0;if((i|0)!=(j|0)){continue}break}b=v[a+40>>2];e=v[b+11892>>2];c=v[t+e>>2]+c|0;break a}l=0;c=i}v[(q<<2)+e>>2]=l;r=l+r|0;q=((l|0)!=0)+q|0;p=p+1|0;if(p>>>0>2]){continue}break}}v[b+11968>>2]=r;v[b+11896>>2]=q;c=v[v[a+36>>2]+4>>2];i=c&2147483647;f:{if(!i){d=0;v[b+12064>>2]=0;v[b+12052>>2]=0;break f}j=c&3;g=v[b+12144>>2];c=0;h=0;d=0;if(i-1>>>0>=3){i=i-j|0;f=0;while(1){e=w[(g+B(h,52)|0)+48|0];d=d>>>0>e>>>0?d:e;e=w[(g+B(h|1,52)|0)+48|0];d=d>>>0>e>>>0?d:e;e=w[(g+B(h|2,52)|0)+48|0];d=d>>>0>e>>>0?d:e;e=w[(g+B(h|3,52)|0)+48|0];d=d>>>0>e>>>0?d:e;h=h+4|0;f=f+4|0;if((i|0)!=(f|0)){continue}break}}if(j){while(1){i=w[(g+B(h,52)|0)+48|0];d=d>>>0>i>>>0?d:i;h=h+1|0;c=c+1|0;if((j|0)!=(c|0)){continue}break}}v[b+12052>>2]=0;if((v[b+12056>>2]&2147483647)>>>0>>0){zw(b+12048|0,d);b=v[a+40>>2]}v[b+12064>>2]=0;v[b+12052>>2]=d;if((v[b+12068>>2]&2147483647)>>>0>=d>>>0){break f}zw(b+12060|0,d);b=v[a+40>>2]}v[b+12064>>2]=d;v[n+40>>2]=v[b+12048>>2];v[n+44>>2]=v[b+12060>>2];g:{if(v[b+11896>>2]){c=v[a+16>>2];c=Ba[v[v[c>>2]+4>>2]](c)|0;d=Ba[v[v[c>>2]+4>>2]](c)|0;c=v[a+40>>2];b=v[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=v[a+44>>2];d=v[a+32>>2];g=v[a+36>>2];a=v[a+28>>2];JM(b,d,g,c,z[a+92>>2],v[a+80>>2],v[a+84>>2],n+8|0);break g}c=v[a+28>>2];v[c+100>>2]=0;v[c+104>>2]=0;v[c+116>>2]=0;v[c+120>>2]=0;v[c+108>>2]=0;v[c+112>>2]=0;c=b>>>3|0;b=c>>>0>d>>>0?d:c;g=wr(v[v[a+44>>2]+620>>2],B(b,48));e=0;while(1){j=v[a+28>>2];i=v[a+32>>2];f=v[a+36>>2];h=v[a+40>>2];d=v[a+44>>2];l=v[d+632>>2];m=v[d+636>>2];c=g+B(e,48)|0;v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=l;v[c+12>>2]=m;v[c>>2]=133556;v[c+44>>2]=d;v[c+36>>2]=f;v[c+40>>2]=h;v[c+28>>2]=j;v[c+32>>2]=i;d=v[a+20>>2];v[c+24>>2]=1;v[c+20>>2]=d;if(d){Ba[v[v[d>>2]+16>>2]](d);v[c+16>>2]=v[v[c+20>>2]+16>>2];d=v[c>>2]}else{d=133556}Ba[v[d+20>>2]](c);e=e+1|0;if((b|0)!=(e|0)){continue}break}break g}c=v[a+44>>2];d=v[a+32>>2];g=v[a+36>>2];a=v[a+28>>2];JM(c,d,g,b,z[a+92>>2],v[a+80>>2],v[a+84>>2],n+8|0)}xa=n+48|0}function Hd(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0;h=xa+-64|0;xa=h;z[h+32>>2]=z[d>>2];z[h+36>>2]=z[d+4>>2];z[h+40>>2]=z[d+8>>2];z[h+44>>2]=z[d+12>>2];z[h+48>>2]=z[c>>2];z[h+52>>2]=z[c+4>>2];z[h+56>>2]=z[c+8>>2];z[h>>2]=z[g>>2];z[h+4>>2]=z[g+4>>2];z[h+8>>2]=z[g+8>>2];z[h+12>>2]=z[g+12>>2];z[h+16>>2]=z[f>>2];z[h+20>>2]=z[f+4>>2];z[h+24>>2]=z[f+8>>2];g=xa-16|0;xa=g;c=v[37696];d=c+12|0;c=(F=d,G=84,H=Ba[v[v[c>>2]+20>>2]](c)|0?28015:63804,I=6562,J=45,E=v[v[d>>2]+8>>2],Ba[E](F|0,G|0,H|0,I|0,J|0)|0);Ba[v[v[a>>2]+20>>2]](a)|0;u[g+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[g+8>>1];u[c+4>>1]=257;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=148496;v[c>>2]=148260;v[c+8>>2]=0;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,144,24422,17141,454)|0;k=z[h+44>>2];l=z[h+40>>2];m=z[h+32>>2];i=z[h+36>>2];r=v[h+52>>2];s=v[h+48>>2];z[c+44>>2]=z[h+56>>2];v[c+36>>2]=s;v[c+40>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+24>>2]=j*i;z[c+28>>2]=l*i;z[c+32>>2]=k*i;z[c+20>>2]=m*i;k=z[h+12>>2];l=z[h+8>>2];m=z[h>>2];i=z[h+4>>2];r=v[h+20>>2];s=v[h+16>>2];z[c+72>>2]=z[h+24>>2];D=c- -64|0;v[D>>2]=s;v[D+4>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+52>>2]=j*i;z[c+56>>2]=l*i;z[c+60>>2]=k*i;z[c+48>>2]=m*i;Z4(f,b);q=z[h+52>>2];t=z[h+56>>2];w=z[h+48>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+40>>2];m=z[f+4>>2];n=z[h+36>>2];k=z[f+12>>2];o=z[h+44>>2];i=z[f>>2];p=z[h+32>>2];z[d+28>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+24>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+20>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+40>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+32>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);Z4(f,e);q=z[h+20>>2];t=z[h+24>>2];w=z[h+16>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+8>>2];m=z[f+4>>2];n=z[h+4>>2];k=z[f+12>>2];o=z[h+12>>2];i=z[f>>2];p=z[h>>2];z[d+56>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+52>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+48>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+68>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+60>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;v[c+12>>2]=148156;v[c>>2]=147912;f=v[c+80>>2];v[f+124>>2]=1078530011;d=0;u[f+128>>1]=0;v[f+88>>2]=1065353216;v[f+92>>2]=0;v[f+80>>2]=0;v[f+84>>2]=2139095039;v[f+116>>2]=-1077342245;v[f+120>>2]=1343554297;v[f+108>>2]=1036831949;v[f+112>>2]=1070141403;v[f+100>>2]=0;v[f+104>>2]=0;v[f+96>>2]=1056964608;a=Ba[v[v[a>>2]+108>>2]](a,b,e,c+12|0,147888,144)|0;v[c+76>>2]=a;a:{if(a){d=c;break a}Ba[v[v[c>>2]+16>>2]](c)}xa=g+16|0;xa=h- -64|0;return d|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=0,y=0;g=xa+-64|0;xa=g;c=v[a+40>>2];k=v[c+12144>>2];b=v[a+28>>2];d=v[b+8>>2];if(!(!(d&2147483647)|!(d&2147483646))){h=v[a+32>>2];i=v[b+88>>2];j=i+w[k+49|0]|0;c=i;m=1;while(1){i=i- -64|0;d=c- -64|0;l=w[(k+B(m,52)|0)+49|0];if(d+l>>>0>d>>>0){if(l&1){b=h+(d<<5)|0;f=v[b+4>>2];e=h+(j<<5)|0;v[e>>2]=v[b>>2];v[e+4>>2]=f;f=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=f;f=v[b+20>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;j=j+1|0;b=c+65|0}else{b=d}if((l|0)!=1){l=i+l|0;while(1){c=h+(b<<5)|0;f=v[c+4>>2];e=h+(j<<5)|0;v[e>>2]=v[c>>2];v[e+4>>2]=f;f=v[c+28>>2];v[e+24>>2]=v[c+24>>2];v[e+28>>2]=f;f=v[c+20>>2];v[e+16>>2]=v[c+16>>2];v[e+20>>2]=f;f=v[c+12>>2];v[e+8>>2]=v[c+8>>2];v[e+12>>2]=f;f=v[c+36>>2];v[e+32>>2]=v[c+32>>2];v[e+36>>2]=f;f=v[c+60>>2];v[e+56>>2]=v[c+56>>2];v[e+60>>2]=f;f=v[c+44>>2];v[e+40>>2]=v[c+40>>2];v[e+44>>2]=f;f=v[c+52>>2];v[e+48>>2]=v[c+48>>2];v[e+52>>2]=f;j=j+2|0;b=b+2|0;if((l|0)!=(b|0)){continue}break}}b=v[a+28>>2]}c=d;m=m+1|0;if(m>>>0<(v[b+8>>2]&2147483647)>>>0){continue}break}c=v[a+40>>2]}e=0;v[c+11896>>2]=0;i=v[c+11956>>2];v[g>>2]=0;cz(c+11892|0,1,g);b=v[a+40>>2];v[v[b+11892>>2]>>2]=0;d=v[a+36>>2];v[g+12>>2]=k;v[g+8>>2]=64;v[g>>2]=d;v[g+20>>2]=v[a+32>>2];v[g+16>>2]=v[b+12148>>2];d=v[a+28>>2];c=v[d+4>>2];v[g+24>>2]=i;v[g+4>>2]=c;v[g+28>>2]=v[d+56>>2];d=v[d+60>>2];v[g+44>>2]=0;v[g+32>>2]=d;t[g+56|0]=0;v[g+52>>2]=b+11916;v[g+48>>2]=b+11892;v[g+36>>2]=0;v[g+40>>2]=0;b=Qy(g);h=v[a+40>>2];v[h+12104>>2]=b;k=v[g+36>>2];v[h+11868>>2]=k;v[h+11876>>2]=v[g+40>>2];p=v[g+44>>2];v[h+11880>>2]=p;s=k+p|0;q=v[h+11956>>2];a:{if(!k){f=v[v[a+28>>2]- -64>>2];break a}y=w[g+56|0]?1:4;a=v[a+28>>2];m=v[a+56>>2];f=v[a- -64>>2];o=v[v[h+11892>>2]>>2];c=0;l=0;i=0;while(1){a=o-c|0;j=a>>>0>>0?a:y;b:{if(!j){b=0;break b}r=(e<<3)+f|0;b=m+(c<<5)|0;a=x[b+22>>1];c:{d:{if(x[b+8>>1]!=65535|x[b+10>>1]!=65535){break d}e:{if((a|0)!=1){if((i|0)==-1|(a|0)!=2|j>>>0<=1){break d}break e}d=1;if((i|0)==-1){b=1;break c}b=1;if(j>>>0<2){break c}}b=1;f:{d=m+(c+1<<5)|0;g:{if((a|0)!=x[d+22>>1]|x[d+8>>1]!=65535|x[d+10>>1]!=65535){break g}d=j&65535;if(d>>>0<3){break f}b=2;n=m+(c+2<<5)|0;if((a|0)!=x[n+22>>1]|x[n+8>>1]!=65535|x[n+10>>1]!=65535){break g}if(d>>>0<4){break f}b=3;n=m+(c+3<<5)|0;if((a|0)!=x[n+22>>1]|x[n+8>>1]!=65535|x[n+10>>1]!=65535){break g}if(d>>>0<5){break f}b=4;d=m+(c+4<<5)|0;if((a|0)!=x[d+22>>1]){break g}b=(x[d+8>>1]&x[d+10>>1])!=65535?4:j}d=a;break c}d=a;b=j;break c}d=a;b=1}e=e+1|0;v[r>>2]=c;u[r+6>>1]=d;u[r+4>>1]=b;l=l+1|0}c=(b&65535)+c|0;if(!((k|0)==(o|0)|(o|0)!=(c|0))){a=v[h+11892>>2];v[a+(i<<2)>>2]=l;i=i+1|0;o=v[a+(i<<2)>>2];l=0}if(c>>>0>>0){continue}break}if(!k){break a}v[v[h+11892>>2]+(i<<2)>>2]=l}v[h+11896>>2]=v[h+12104>>2];b=e;h:{if((q|0)==(s|0)){break h}a=q-s|0;i=a&1;i:{if((k|0)==((p^-1)+q|0)){c=0;break i}j=a&-2;c=0;d=0;while(1){a=(b<<3)+f|0;v[a+4>>2]=262145;v[a>>2]=c+k;v[a+12>>2]=262145;v[a+8>>2]=k+(c|1);c=c+2|0;b=b+2|0;d=d+2|0;if((j|0)!=(d|0)){continue}break}}if(!i){break h}a=(b<<3)+f|0;v[a+4>>2]=262145;v[a>>2]=c+k;b=b+1|0}v[h+12072>>2]=e;v[h+11968>>2]=b;v[h+12076>>2]=b-e;xa=g- -64|0}function K5(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0);a:{if(g){G=z[c+20>>2];y=z[c+24>>2];s=z[e+24>>2];H=z[e+20>>2];A=z[f- -64>>2];B=z[f+60>>2];I=z[f+68>>2];J=z[c+16>>2];L=z[e+16>>2];i=z[c+12>>2];m=z[e+8>>2];l=z[f+52>>2];u=z[e+4>>2];k=z[f+48>>2];j=z[e+12>>2];h=z[f+56>>2];r=z[f+44>>2];n=z[e>>2];q=C(C(m*l)+C(C(u*k)+C(C(j*h)+C(r*n))));o=C(C(k*m)+C(C(C(h*n)-C(j*r))-C(u*l)));v=z[c>>2];w=z[c+4>>2];p=C(C(l*n)+C(C(C(h*u)-C(j*k))-C(m*r)));x=z[c+8>>2];t=C(C(r*u)+C(C(C(h*m)-C(j*l))-C(n*k)));D=C(C(C(C(i*q)-C(o*v))-C(w*p))-C(x*t));z[b+12>>2]=D;E=C(C(C(v*p)+C(C(i*t)+C(q*x)))-C(o*w));z[b+8>>2]=E;F=C(C(C(x*o)+C(C(i*p)+C(q*w)))-C(t*v));z[b+4>>2]=F;q=C(C(C(w*t)+C(C(i*o)+C(q*v)))-C(p*x));z[b>>2]=q;M=y;N=s;o=C(I*C(-2));p=C(B*C(-2));t=C(A*C(-2));A=C(C(l*o)+C(C(r*p)+C(k*t)));B=C(C(h*h)+C(-.5));y=C(C(l*A)+C(C(o*B)-C(h*C(C(r*t)-C(p*k)))));y=C(y+y);s=C(C(r*A)+C(C(p*B)-C(h*C(C(k*o)-C(t*l)))));s=C(s+s);h=C(C(k*A)+C(C(t*B)-C(h*C(C(l*p)-C(o*r)))));h=C(h+h);r=C(C(m*y)+C(C(n*s)+C(u*h)));o=C(C(j*j)+C(-.5));l=C(N+C(C(m*r)+C(C(y*o)+C(j*C(C(n*h)-C(s*u))))));l=C(l+l);k=C(L+C(C(n*r)+C(C(s*o)+C(j*C(C(u*y)-C(h*m))))));k=C(k+k);j=C(H+C(C(u*r)+C(C(h*o)+C(j*C(C(m*s)-C(y*n))))));j=C(j+j);h=C(C(x*l)+C(C(v*k)+C(w*j)));m=C(C(i*i)+C(-.5));z[b+24>>2]=M+C(C(x*h)+C(C(l*m)+C(i*C(C(v*j)-C(k*w)))));z[b+20>>2]=G+C(C(w*h)+C(C(j*m)+C(i*C(C(x*k)-C(l*v)))));z[b+16>>2]=J+C(C(v*h)+C(C(k*m)+C(i*C(C(w*l)-C(j*x)))));i=C(K(C(C(D*D)+C(C(E*E)+C(C(q*q)+C(F*F))))));if(i==C(0)){break a}i=C(C(1)/i);z[b+12>>2]=D*i;z[b+8>>2]=E*i;z[b+4>>2]=F*i;z[b>>2]=q*i;return}G=z[d+20>>2];H=z[d+24>>2];s=z[e+24>>2];I=z[e+20>>2];y=z[f+40>>2];A=z[f+32>>2];B=z[f+36>>2];J=z[d+16>>2];L=z[e+16>>2];i=z[d+12>>2];j=z[e+12>>2];h=z[f+28>>2];m=z[e>>2];l=z[f+16>>2];u=z[e+4>>2];k=z[f+20>>2];r=z[e+8>>2];n=z[f+24>>2];q=C(C(C(C(j*h)-C(m*l))-C(u*k))-C(r*n));o=C(C(C(u*n)+C(C(j*C(-l))-C(h*m)))-C(k*r));v=z[d>>2];w=z[d+4>>2];p=C(C(C(r*l)+C(C(j*C(-k))-C(h*u)))-C(n*m));x=z[d+8>>2];t=C(C(C(m*k)+C(C(j*C(-n))-C(h*r)))-C(l*u));D=C(C(C(C(i*q)-C(o*v))-C(w*p))-C(x*t));z[a+12>>2]=D;E=C(C(C(w*t)+C(C(i*o)+C(q*v)))-C(p*x));z[a>>2]=E;F=C(C(C(v*p)+C(C(i*t)+C(q*x)))-C(o*w));z[a+8>>2]=F;o=C(C(C(x*o)+C(C(i*p)+C(q*w)))-C(t*v));z[a+4>>2]=o;p=C(y*C(-2));t=C(A*C(-2));y=C(B*C(-2));A=C(C(n*p)+C(C(l*t)+C(k*y)));B=C(C(h*h)+C(-.5));q=C(C(C(n*A)+C(C(p*B)-C(h*C(C(l*y)-C(t*k)))))-s);q=C(q+q);s=C(C(C(l*A)+C(C(t*B)-C(h*C(C(k*p)-C(y*n)))))-L);s=C(s+s);h=C(C(C(k*A)+C(C(y*B)-C(h*C(C(n*t)-C(p*l)))))-I);h=C(h+h);l=C(C(C(C(-m)*s)-C(h*u))-C(r*q));p=C(C(j*j)+C(-.5));k=C(C(C(q*p)+C(j*C(C(u*s)-C(m*h))))-C(r*l));k=C(k+k);n=C(C(C(s*p)+C(j*C(C(r*h)-C(u*q))))-C(m*l));n=C(n+n);j=C(C(C(h*p)+C(j*C(C(m*q)-C(r*s))))-C(u*l));j=C(j+j);h=C(C(x*k)+C(C(v*n)+C(w*j)));m=C(C(i*i)+C(-.5));z[a+24>>2]=H+C(C(x*h)+C(C(k*m)+C(i*C(C(v*j)-C(n*w)))));z[a+20>>2]=G+C(C(w*h)+C(C(j*m)+C(i*C(C(x*n)-C(k*v)))));z[a+16>>2]=J+C(C(v*h)+C(C(n*m)+C(i*C(C(w*k)-C(j*x)))));i=C(K(C(C(D*D)+C(C(F*F)+C(C(E*E)+C(o*o))))));if(i==C(0)){break a}i=C(C(1)/i);z[a+12>>2]=D*i;z[a+8>>2]=F*i;z[a+4>>2]=o*i;z[a>>2]=E*i}}function M8(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=C(0),B=C(0),D=C(0);c=xa-176|0;xa=c;v[c+60>>2]=a;v[c+56>>2]=a;h=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=h;h=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=h;E5(c+144|0,c+112|0,e,f,g);l=z[f+20>>2];m=z[f+16>>2];k=z[c+132>>2];q=z[c+128>>2];t=z[c+136>>2];z[b+8>>2]=t-z[f+24>>2];z[b+4>>2]=k-l;z[b>>2]=q-m;l=z[f+20>>2];m=z[f+16>>2];z[c+72>>2]=t-z[f+24>>2];z[c+68>>2]=k-l;z[c+64>>2]=q-m;l=z[g+20>>2];m=z[g+24>>2];n=z[g+16>>2];A=z[c+164>>2];z[c+92>>2]=A;z[c+108>>2]=t;z[c+104>>2]=k;B=z[c+168>>2];z[c+96>>2]=B;z[c+84>>2]=t-m;z[c+80>>2]=k-l;D=z[c+160>>2];z[c+88>>2]=D;z[c+100>>2]=q;z[c+76>>2]=q-n;o=z[c+124>>2];l=z[c+156>>2];r=z[c+120>>2];m=z[c+152>>2];s=z[c+112>>2];p=z[c+144>>2];y=z[c+116>>2];n=z[c+148>>2];if(C(C(o*l)+C(C(r*m)+C(C(s*p)+C(y*n))))>2]=o;r=C(-r);z[c+120>>2]=r;y=C(-y);z[c+116>>2]=y;s=C(-s);z[c+112>>2]=s}if(w[e+112|0]&2){k=C(C(m*r)+C(C(n*y)+C(C(l*o)+C(p*s))));q=C(C(s*n)+C(C(C(l*r)-C(o*m))-C(p*y)));t=C(C(r*p)+C(C(C(l*y)-C(o*n))-C(m*s)));A=C(0);p=C(C(y*m)+C(C(C(l*s)-C(o*p))-C(n*r)));a:{if(p==C(0)){m=C(1);n=C(0);l=C(0);break a}l=C(C(1)/C(K(C(C(k*k)+C(C(C(p*p)+C(0))+C(0))))));m=C(k*l);n=C(l*C(0));l=C(p*l)}o=C(n*q);r=C(t*n);z[c+52>>2]=o+C(r+C(C(k*m)+C(p*l)));z[c+40>>2]=o+C(C(C(p*m)-C(k*l))-r);k=C(k*C(-n));n=C(n*p);z[c+48>>2]=C(l*t)+C(C(k+C(q*m))-n);z[c+44>>2]=n+C(C(k+C(t*m))-C(q*l));b=v[e+104>>2];d=v[e+100>>2];z[c+16>>2]=z[e+92>>2]>C(0)|z[e+88>>2]>C(0)?A:z[e+96>>2];v[c+8>>2]=d;v[c+12>>2]=b;b:{if(!F5(c+8|0,c+40|0,c+24|0,c+20|0)){m=z[c+152>>2];n=z[c+148>>2];p=z[c+144>>2];l=z[c+156>>2];break b}v[c+60>>2]=a+80;m=z[c+152>>2];k=z[c+32>>2];l=z[c+156>>2];p=z[c+144>>2];o=z[c+28>>2];n=z[c+148>>2];q=z[c+24>>2];r=z[c+20>>2];v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;z[a+12>>2]=r;b=x[a+76>>1];d=b|64;u[a+76>>1]=d;k=C(k+k);q=C(q+q);o=C(o+o);s=C(C(m*k)+C(C(p*q)+C(n*o)));y=C(C(l*l)+C(-.5));t=C(C(m*s)+C(C(k*y)+C(l*C(C(p*o)-C(q*n)))));z[a+56>>2]=t;A=C(C(n*s)+C(C(o*y)+C(l*C(C(m*q)-C(k*p)))));z[a+52>>2]=A;k=C(C(p*s)+C(C(q*y)+C(l*C(C(n*k)-C(o*m)))));z[a+48>>2]=k;z[a+24>>2]=t;z[a+20>>2]=A;z[a+16>>2]=k;k=z[e+88>>2];c:{if(z[e+92>>2]>C(0)|k>C(0)){z[a+64>>2]=k;z[a+68>>2]=z[e+92>>2];b=b|81;break c}u[a+78>>1]=2049;z[a+64>>2]=z[e+80>>2];z[a+68>>2]=z[e+84>>2];b=d|(r>C(0)?24:16);if(!(z[e+80>>2]>C(0))){break c}b=b|4}v[a+44>>2]=0;u[a+76>>1]=b}B=z[c+168>>2];t=z[c+136>>2];A=z[c+164>>2];D=z[c+160>>2];q=z[c+128>>2];k=z[c+132>>2]}o=C(t-B);o=C(o+o);q=C(q-D);q=C(q+q);k=C(k-A);k=C(k+k);r=C(C(m*o)+C(C(p*q)+C(k*n)));s=C(C(l*l)+C(-.5));z[c+16>>2]=C(m*r)+C(C(o*s)-C(l*C(C(p*k)-C(q*n))));z[c+12>>2]=C(n*r)+C(C(k*s)-C(l*C(C(m*q)-C(o*p))));z[c+8>>2]=C(p*r)+C(C(q*s)-C(l*C(C(n*o)-C(k*m))));I5(c+56|0,c+144|0,c+112|0,c+8|0,7,0,c+40|0,c+24|0);l=z[f+16>>2];m=z[f+20>>2];n=z[c+40>>2];p=z[c+44>>2];z[i+8>>2]=z[c+48>>2]+z[f+24>>2];z[i+4>>2]=p+m;z[i>>2]=n+l;l=z[g+16>>2];m=z[g+20>>2];n=z[c+24>>2];p=z[c+28>>2];z[j+8>>2]=z[c+32>>2]+z[g+24>>2];z[j+4>>2]=p+m;z[j>>2]=n+l;xa=c+176|0;return(v[c+60>>2]-v[c+56>>2]|0)/80|0}function B0(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),k=C(0),m=C(0),n=C(0),o=C(0),r=C(0),s=C(0),t=0,u=0,w=0,x=0,y=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=0,T=C(0),U=C(0),V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0);u=xa-528|0;xa=u;t=v[a+68>>2];w=t-1|0;a:{if((w|0)<0){break a}x=u+16|4;if(w>>>0>=3){V=t&-4;while(1){y=N<<2;M=B(w,112);v[y+x>>2]=M;v[(y|4)+x>>2]=M-112;v[(y|8)+x>>2]=M-224;v[(y|12)+x>>2]=M-336;w=w-4|0;N=N+4|0;S=S+4|0;if((S|0)!=(V|0)){continue}break}}M=t&3;if(M){y=0;while(1){v[(N<<2)+x>>2]=B(w,112);w=w-1|0;N=N+1|0;y=y+1|0;if((M|0)!=(y|0)){continue}break}}if(!t){break a}g=z[c+8>>2];g=g>C(0)?g:C(-g);g=(l(2,(p(g>C(9.999999717180685e-10)?g:C(9.999999717180685e-10)),j(2))|v[c+8>>2]&-2147483648),q());o=C(C(1)/g);o=C(o*C(C(2)-C(o*g)));A=C(C(0)-C(z[b+8>>2]*o));g=z[c+4>>2];g=g>C(0)?g:C(-g);g=(l(2,(p(g>C(9.999999717180685e-10)?g:C(9.999999717180685e-10)),j(2))|v[c+4>>2]&-2147483648),q());r=C(C(1)/g);r=C(r*C(C(2)-C(r*g)));D=C(C(0)-C(z[b+4>>2]*r));g=z[c>>2];g=g>C(0)?g:C(-g);g=(l(2,(p(g>C(9.999999717180685e-10)?g:C(9.999999717180685e-10)),j(2))|v[c>>2]&-2147483648),q());s=C(C(1)/g);s=C(s*C(C(2)-C(s*g)));E=C(C(0)-C(z[b>>2]*s));F=C(z[e+8>>2]+C(1.0000000116860974e-7));G=C(z[e+4>>2]+C(1.0000000116860974e-7));H=C(z[e>>2]+C(1.0000000116860974e-7));b=v[a+88>>2];while(1){c=(u+16|0)+(t<<2)|0;a=v[c>>2];b:{if(a&1){v[u+12>>2]=a-1;z[u+8>>2]=f;if(!(Ba[v[v[d>>2]>>2]](d,1,u+12|0,u+8|0)|0)){break a}g=z[u+8>>2];if(g!=f){f=g}t=t-1|0;break b}a=a+b|0;W=z[a+44>>2];X=z[a+92>>2];T=z[a+60>>2];U=z[a+12>>2];Y=z[a+28>>2];Z=z[a+76>>2];_=z[a+40>>2];$=z[a+88>>2];I=z[a+56>>2];O=z[a+8>>2];aa=z[a+24>>2];ba=z[a+72>>2];ca=z[a+36>>2];da=z[a+84>>2];J=z[a+52>>2];P=z[a+4>>2];ea=z[a+20>>2];fa=z[a+68>>2];i=z[a+32>>2];k=z[a+80>>2];K=z[a>>2];Q=z[a+48>>2];m=z[a+16>>2];n=z[a+64>>2];v[c>>2]=v[a+96>>2];g=C(E+C(s*C(K-H)));h=C(E+C(s*C(H+Q)));L=gR?L:R;i=C(A+C(o*C(i-F)));k=C(A+C(o*C(F+k)));R=iR?L:R;g=g>h?g:h;h=m>n?m:n;g=gk?i:k;g=gg|(gQ|f>2]=v[a+100>>2];g=C(E+C(s*C(P-H)));h=C(E+C(s*C(H+J)));i=gk?i:k;i=C(A+C(o*C(ca-F)));k=C(A+C(o*C(F+da)));Q=iQ?K:Q;g=g>h?g:h;h=m>n?m:n;g=gk?i:k;g=gg^-1)&(!(g>2]=v[a+104>>2];g=C(E+C(s*C(O-H)));h=C(E+C(s*C(H+I)));i=gk?i:k;i=C(A+C(o*C(_-F)));k=C(A+C(o*C(F+$)));P=iP?J:P;g=g>h?g:h;h=m>n?m:n;g=gk?i:k;g=gg^-1)&(!(g>2]=v[a+108>>2];g=C(E+C(s*C(U-H)));h=C(E+C(s*C(H+T)));i=gk?i:k;i=C(A+C(o*C(W-F)));k=C(A+C(o*C(F+X)));O=iO?I:O;g=g>h?g:h;h=m>n?m:n;g=gk?i:k;g=gg^-1)&(!(g>2];g=z[b+8>>2];h=z[b>>2];c=z[b+4>>2];d=C(C(1)/C(K(C(C(f*f)+C(C(g*g)+C(C(h*h)+C(c*c)))))));i=C(f*d);z[e+44>>2]=i;k=C(g*d);z[e+40>>2]=k;c=C(c*d);z[e+36>>2]=c;h=C(h*d);z[e+32>>2]=h;d=z[b+16>>2];z[e+48>>2]=d;f=z[b+20>>2];z[e+52>>2]=f;g=z[b+24>>2];z[e+56>>2]=g;b=v[a+316>>2]&1024?v[a+56>>2]+144|0:a+112|0;m=z[b+8>>2];l=z[b+4>>2];o=z[b+12>>2];p=z[b>>2];u=z[b+24>>2];q=z[b+20>>2];E=z[b+16>>2];aj(a,e+32|0);d=C(E-d);d=C(d+d);f=C(q-f);f=C(f+f);g=C(u-g);g=C(g+g);u=C(C(C(C(-h)*d)-C(f*c))-C(k*g));q=C(C(i*i)+C(-.5));E=C(C(C(g*q)+C(i*C(C(c*d)-C(h*f))))-C(k*u));G=C(C(C(f*q)+C(i*C(C(h*g)-C(k*d))))-C(c*u));u=C(C(C(d*q)+C(i*C(C(k*f)-C(c*g))))-C(h*u));d=C(C(k*m)+C(C(c*l)+C(C(i*o)+C(h*p))));f=C(C(p*c)+C(C(C(i*m)-C(o*k))-C(h*l)));g=C(C(m*h)+C(C(C(i*l)-C(o*c))-C(k*p)));i=C(C(l*k)+C(C(C(i*p)-C(o*h))-C(c*m)));b=v[a+324>>2];a:{if(!b){break a}j=Ba[v[v[b>>2]+48>>2]](b)|0;b=v[j+8>>2];x=v[j+4>>2];n=x&2?b:j+16|0;k=z[n+36>>2];c=z[n+32>>2];h=z[n+40>>2];m=z[n+28>>2];l=z[n+52>>2];l=C(l+l);o=z[n+44>>2];o=C(o+o);p=z[n+48>>2];p=C(p+p);q=C(C(f*l)+C(C(i*o)+C(g*p)));r=C(C(d*d)+C(-.5));s=C(E+C(C(f*q)+C(C(l*r)+C(d*C(C(i*p)-C(o*g))))));z[e+24>>2]=s;t=C(G+C(C(g*q)+C(C(p*r)+C(d*C(C(f*o)-C(l*i))))));z[e+20>>2]=t;A=C(C(C(C(d*h)-C(m*i))-C(g*c))-C(f*k));z[e+12>>2]=A;B=C(C(C(i*c)+C(C(d*k)+C(f*h)))-C(m*g));z[e+8>>2]=B;D=C(C(C(f*m)+C(C(d*c)+C(g*h)))-C(k*i));z[e+4>>2]=D;k=C(C(C(g*k)+C(C(d*m)+C(i*h)))-C(c*f));z[e>>2]=k;c=C(u+C(C(i*q)+C(C(o*r)+C(d*C(C(g*l)-C(p*f))))));z[e+16>>2]=c;b:{c:{switch((x>>>30|0)-2|0){case 0:if(w[v[j>>2]+4785|0]){break b}break;case 1:break b;default:break c}}bF(j+12|0,e);break a}if(!b){b=Qu(v[j>>2],x>>>24&15);v[j+8>>2]=b}z[b+28>>2]=k;z[b+52>>2]=s;z[b+48>>2]=t;z[b+44>>2]=c;z[b+40>>2]=A;z[b+36>>2]=B;z[b+32>>2]=D;Yu(v[j>>2],j);v[j+4>>2]=v[j+4>>2]|2}if(v[a+356>>2]){k=C(C(d*d)+C(-.5));o=C(-g);p=C(-i);q=C(-f);x=0;while(1){b=v[v[a+352>>2]+(x<<2)>>2];j=Ba[v[v[b>>2]+252>>2]](b)|0;b=v[j+16>>2];F=v[j+12>>2];n=F&1?b:j+24|0;r=z[n+24>>2];s=z[n+20>>2];t=z[n+16>>2];c=z[n+8>>2];h=z[n+4>>2];m=z[n+12>>2];l=z[n>>2];A=C(C(q*c)+C(C(o*h)+C(C(d*m)+C(l*p))));z[e+12>>2]=A;B=C(C(C(i*h)+C(C(d*c)+C(f*m)))-C(l*g));z[e+8>>2]=B;D=C(C(C(f*l)+C(C(d*h)+C(g*m)))-C(c*i));z[e+4>>2]=D;l=C(C(C(g*c)+C(C(d*l)+C(i*m)))-C(h*f));z[e>>2]=l;c=C(r+r);h=C(t+t);m=C(s+s);r=C(C(f*c)+C(C(i*h)+C(g*m)));s=C(E+C(C(f*r)+C(C(c*k)+C(d*C(C(i*m)+C(h*o))))));z[e+24>>2]=s;t=C(G+C(C(g*r)+C(C(m*k)+C(d*C(C(f*h)+C(c*p))))));z[e+20>>2]=t;c=C(u+C(C(i*r)+C(C(h*k)+C(d*C(C(g*c)+C(m*q))))));z[e+16>>2]=c;n=j+8|0;d:{e:{f:{switch((F>>>30|0)-2|0){case 0:if(w[v[n>>2]+4785|0]){break e}break;case 1:break e;default:break f}}aF(j+20|0,e);break d}if(!b){b=Qu(v[j+8>>2],F>>>24&15);v[j+16>>2]=b;s=z[e+24>>2];t=z[e+20>>2];A=z[e+12>>2];B=z[e+8>>2];D=z[e+4>>2];l=z[e>>2];c=z[e+16>>2]}z[b+16>>2]=c;z[b+12>>2]=A;z[b+8>>2]=B;z[b+4>>2]=D;z[b>>2]=l;z[b+24>>2]=s;z[b+20>>2]=t;Yu(v[j+8>>2],n);v[j+12>>2]=v[j+12>>2]|1}x=x+1|0;if(x>>>0>2]){continue}break}}xa=e- -64|0}function px(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=C(b);c=C(c);d=d|0;e=e|0;f=C(f);g=C(g);h=C(h);i=C(i);j=C(j);k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,A=0,D=0,E=C(0),F=0,G=0,H=0,I=0,J=C(0),K=0,L=0,M=0,N=0,O=0;n=xa-256|0;xa=n;v[n+236>>2]=l;v[n+248>>2]=e+12088;v[n+244>>2]=e+11824;v[n+240>>2]=e+11852;v[n+232>>2]=128228;v[n+224>>2]=0;v[n+216>>2]=0;v[n+220>>2]=0;v[n+208>>2]=0;v[n+212>>2]=1065353216;v[n+200>>2]=0;v[n+204>>2]=0;H=v[e+12048>>2];ox(v[a+656>>2],v[a+660>>2]);if(v[a+660>>2]){while(1){I=D<<5;o=I+v[a+656>>2]|0;r=x[o+10>>1];l=x[o+8>>1];A=(l|0)==65535;K=A?r:l;a:{if(x[o+22>>1]==1){p=v[o+24>>2];l=v[p+68>>2];q=v[((l&7)<<2)+d>>2];s=v[o+12>>2];G=v[d+32>>2];v[n+48>>2]=B((r|0)==65535?v[o+16>>2]:0,112)+k;v[n+44>>2]=B(A?s:0,112)+k;A=G+(q+(l>>>3|0)<<4)|0;r=v[p+16>>2];s=w[r+28|0];l=v[p+20>>2];if(l){s=w[l+28|0]|s;q=l}else{q=n+200|0}z[n+52>>2]=z[r>>2];z[n+56>>2]=z[r+4>>2];z[n+60>>2]=z[r+8>>2];z[n+64>>2]=z[r+12>>2];z[n+68>>2]=z[r+16>>2];z[n+72>>2]=z[r+20>>2];z[n+76>>2]=z[r+24>>2];z[n+80>>2]=z[q>>2];l=l?l:n+200|0;z[n+84>>2]=z[l+4>>2];z[n+88>>2]=z[l+8>>2];z[n+92>>2]=z[l+12>>2];z[n+96>>2]=z[l+16>>2];z[n+100>>2]=z[l+20>>2];z[n+104>>2]=z[l+24>>2];v[n+128>>2]=v[p+12>>2];v[n+160>>2]=v[A+8>>2];v[n+32>>2]=o;v[n+36>>2]=v[o>>2];v[n+40>>2]=v[o+4>>2];l=x[p+40>>1];t[n+141|0]=l>>>2&1;t[n+142|0]=l>>>8&1;v[n+108>>2]=l&8?8:1;q=8;b:{if(l&16){break b}q=4;if(l&1024){break b}q=l&64?1:2}v[n+112>>2]=q;l=w[p+44|0];E=w[p+45|0]?C(1):C(0);z[n+28>>2]=E;J=l?C(1):C(0);z[n+16>>2]=J;z[n+20>>2]=J;z[n+24>>2]=E;z[n+144>>2]=z[p+52>>2];v[n+152>>2]=v[p+36>>2];l=w[p+42|0];z[n+148>>2]=s&32?j:C(34028234663852886e22);t[n+156|0]=l;ty(n+16|0,A,e,c,g,h,f,i,n+232|0,H);u[o+20>>1]=w[A+12|0];v[o+28>>2]=v[A+8>>2];v[p+36>>2]=v[n+152>>2];t[p+42|0]=w[n+156|0];break a}q=n+200|0;l=q;p=v[o+24>>2];s=v[p+24>>2];if(s){l=v[s+36>>2]}s=x[p+8>>1];G=v[p+20>>2];L=v[p+12>>2];F=v[p+28>>2];if(F){q=v[F+36>>2]}F=v[o+4>>2];M=v[o+12>>2];N=v[o+16>>2];O=v[o>>2];v[n+12>>2]=s;v[n+8>>2]=G;v[n+4>>2]=L;v[n+32>>2]=o;v[n>>2]=p;z[n+52>>2]=z[l>>2];z[n+56>>2]=z[l+4>>2];z[n+60>>2]=z[l+8>>2];z[n+64>>2]=z[l+12>>2];z[n+68>>2]=z[l+16>>2];z[n+72>>2]=z[l+20>>2];z[n+76>>2]=z[l+24>>2];z[n+80>>2]=z[q>>2];z[n+84>>2]=z[q+4>>2];z[n+88>>2]=z[q+8>>2];z[n+92>>2]=z[q+12>>2];z[n+96>>2]=z[q+16>>2];z[n+100>>2]=z[q+20>>2];E=z[q+24>>2];v[n+48>>2]=B((r|0)==65535?N:0,112)+k;v[n+44>>2]=B(A?M:0,112)+k;z[n+104>>2]=E;v[n+40>>2]=F;v[n+36>>2]=O;z[n+136>>2]=z[p>>2];z[n+140>>2]=z[p+4>>2];v[n+148>>2]=(v[p+40>>2]<<5)+m;l=x[p+10>>1];t[n+155|0]=l>>>9&1;q=l&255;t[n+153|0]=q>>>7;t[n+152|0]=l>>>8&1;t[n+154|0]=q>>>5&1;z[n+144>>2]=z[p+44>>2];sy(n,n+16|0,n+232|0,b,c,H)}c:{if(v[o+24>>2]){q=(K&65535)<<2;l=q+v[a+408>>2]|0;o=v[l>>2];if(!o){v[q+v[a+420>>2]>>2]=D;o=v[l>>2]}v[l>>2]=o+1;break c}q=D+1|0;o=v[a+660>>2];if(q>>>0>>0){l=v[a+656>>2]+I|0;while(1){o=v[a+656>>2]+(q<<5)|0;p=v[o+4>>2];v[l>>2]=v[o>>2];v[l+4>>2]=p;p=v[o+28>>2];v[l+24>>2]=v[o+24>>2];v[l+28>>2]=p;p=v[o+20>>2];v[l+16>>2]=v[o+16>>2];v[l+20>>2]=p;p=v[o+12>>2];v[l+8>>2]=v[o+8>>2];v[l+12>>2]=p;l=l+32|0;q=q+1|0;o=v[a+660>>2];if(q>>>0>>0){continue}break}}v[a+660>>2]=o-1;D=D-1|0}D=D+1|0;if(D>>>0>2]){continue}break}}xa=n+256|0}function _U(a,b){var c=0,d=0,e=0,f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);c=xa-48|0;xa=c;k=z[a+84>>2];n=z[a+68>>2];p=z[a+52>>2];m=z[a+88>>2];q=z[a+72>>2];r=z[a+40>>2];s=z[a+56>>2];t=z[a+36>>2];l=z[b>>2];i=z[b+4>>2];j=z[b+8>>2];h=C(C(C(C(l*z[a+44>>2])+C(i*z[a+60>>2]))+C(j*z[a+76>>2]))+z[a+92>>2]);z[b+8>>2]=h;m=C(m+C(C(C(l*r)+C(i*s))+C(j*q)));z[b+4>>2]=m;l=C(k+C(C(C(l*t)+C(i*p))+C(j*n)));z[b>>2]=l;d=v[a+32>>2]+1|0;v[a+32>>2]=d;a:{b:{c:{d:{e:{f:{switch(v[a>>2]){case 0:d=v[a+100>>2];z[c+8>>2]=h;z[c+4>>2]=m;z[c>>2]=l;g=v[a+4>>2];v[c+12>>2]=g;e=v[d+8>>2];if(e>>>0>=(v[d+12>>2]&2147483647)>>>0){qr(d+4|0,c);break e}f=v[d+4>>2]+(e<<4)|0;v[f+12>>2]=g;z[f+8>>2]=h;z[f+4>>2]=m;z[f>>2]=l;v[d+8>>2]=e+1;break e;case 1:if((d|0)!=2){break d}f=v[a+100>>2];i=z[a+8>>2];z[c>>2]=i;j=z[a+12>>2];z[c+4>>2]=j;k=z[a+16>>2];z[c+8>>2]=k;e=v[a+4>>2];z[c+24>>2]=h;z[c+20>>2]=m;v[c+28>>2]=e;z[c+16>>2]=l;v[c+12>>2]=e;g=v[f+20>>2];if(g>>>0<(v[f+24>>2]&2147483647)>>>0){break c}rr(f+16|0,c);break b;case 2:if(d>>>0<2){break a}f=v[a+100>>2];i=z[a+8>>2];z[c>>2]=i;j=z[a+12>>2];z[c+4>>2]=j;k=z[a+16>>2];z[c+8>>2]=k;e=v[a+4>>2];z[c+24>>2]=h;z[c+20>>2]=m;v[c+28>>2]=e;z[c+16>>2]=l;v[c+12>>2]=e;g=v[f+20>>2];if(g>>>0>=(v[f+24>>2]&2147483647)>>>0){rr(f+16|0,c);break e}d=v[f+16>>2]+(g<<5)|0;v[d+12>>2]=e;z[d+8>>2]=k;z[d+4>>2]=j;z[d>>2]=i;z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];h=z[c+24>>2];v[d+28>>2]=e;z[d+24>>2]=h;v[f+20>>2]=g+1;break e;case 3:if((d|0)!=3){break d}f=v[a+100>>2];i=z[a+20>>2];z[c>>2]=i;j=z[a+24>>2];z[c+4>>2]=j;k=z[a+28>>2];z[c+8>>2]=k;e=v[a+4>>2];v[c+12>>2]=e;z[c+16>>2]=z[a+8>>2];z[c+20>>2]=z[a+12>>2];n=z[a+16>>2];z[c+40>>2]=h;z[c+36>>2]=m;z[c+24>>2]=n;v[c+44>>2]=e;z[c+32>>2]=l;v[c+28>>2]=e;g=v[f+32>>2];if(g>>>0>=(v[f+36>>2]&2147483647)>>>0){Us(f+28|0,c);break b}d=v[f+28>>2]+B(g,48)|0;v[d+12>>2]=e;z[d+8>>2]=k;z[d+4>>2]=j;z[d>>2]=i;z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];h=z[c+24>>2];v[d+28>>2]=e;z[d+24>>2]=h;z[d+32>>2]=z[c+32>>2];z[d+36>>2]=z[c+36>>2];h=z[c+40>>2];v[d+44>>2]=e;z[d+40>>2]=h;v[f+32>>2]=g+1;break b;case 4:break f;default:break d}}if(d>>>0<3){break d}f=v[a+100>>2];d=d&1;i=z[(d?8:20)+a>>2];z[c>>2]=i;g=a+8|0;o=a+20|0;e=d?g:o;j=z[e+4>>2];z[c+4>>2]=j;k=z[e+8>>2];z[c+8>>2]=k;e=v[a+4>>2];v[c+12>>2]=e;z[c+16>>2]=z[(d?20:8)+a>>2];d=d?o:g;z[c+20>>2]=z[d+4>>2];n=z[d+8>>2];z[c+40>>2]=h;z[c+36>>2]=m;z[c+24>>2]=n;v[c+44>>2]=e;z[c+32>>2]=l;v[c+28>>2]=e;g=v[f+32>>2];if(g>>>0>=(v[f+36>>2]&2147483647)>>>0){Us(f+28|0,c);break e}d=v[f+28>>2]+B(g,48)|0;v[d+12>>2]=e;z[d+8>>2]=k;z[d+4>>2]=j;z[d>>2]=i;z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];h=z[c+24>>2];v[d+28>>2]=e;z[d+24>>2]=h;z[d+32>>2]=z[c+32>>2];z[d+36>>2]=z[c+36>>2];h=z[c+40>>2];v[d+44>>2]=e;z[d+40>>2]=h;v[f+32>>2]=g+1}d=v[a+32>>2]}if(d>>>0<2){break a}z[a+20>>2]=z[a+8>>2];d=v[a+16>>2];v[a+24>>2]=v[a+12>>2];v[a+28>>2]=d;break a}d=v[f+16>>2]+(g<<5)|0;v[d+12>>2]=e;z[d+8>>2]=k;z[d+4>>2]=j;z[d>>2]=i;z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];h=z[c+24>>2];v[d+28>>2]=e;z[d+24>>2]=h;v[f+20>>2]=g+1}v[a+32>>2]=0}z[a+8>>2]=z[b>>2];z[a+12>>2]=z[b+4>>2];z[a+16>>2]=z[b+8>>2];xa=c+48|0;return a}function cA(a,b,c,d,e,f,g){var h=C(0),i=0,j=C(0),k=C(0),l=0,m=0,n=C(0),o=0,p=0,q=C(0),r=C(0),s=C(0),t=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0),Q=0,R=C(0),S=0,T=C(0),U=C(0),V=C(0),W=0,X=0,Y=0,Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0);o=xa-32|0;S=v[a+7688>>2];if(S>>>0>f>>>0){I=z[d+12>>2];P=C(C(I*I)+C(-.5));A=z[c+12>>2];H=C(C(A*A)+C(-.5));Z=C(e*e);L=z[d+4>>2];_=C(-L);M=z[d>>2];$=C(-M);N=z[d+8>>2];aa=C(-N);E=z[c+4>>2];T=C(-E);F=z[c>>2];U=C(-F);G=z[c+8>>2];V=C(-G);while(1){p=B(f,104)+a|0;O=p+2818|0;i=x[O>>1];a:{b:{if(!((i|0)!=2&v[((f<<2)+a|0)+7424>>2]!=65535)){if(!v[((f<<2)+a|0)+7296>>2]){break a}i=B(f,24)+a|0;e=C(z[i+6548>>2]-z[i+6536>>2]);q=C(e*e);e=C(z[i+6540>>2]-z[i+6528>>2]);r=C(e*e);e=C(z[i+6544>>2]-z[i+6532>>2]);h=C(z[p+2864>>2]-z[p+2876>>2]);s=C(h*h);h=C(z[p+2856>>2]-z[p+2868>>2]);j=C(h*h);h=C(z[p+2860>>2]-z[p+2872>>2]);if(C(q+C(r+C(e*e)))<=C(C(s+C(j+C(h*h)))*C(4))){break a}i=0;u[O>>1]=0;t=0;break b}t=0;if((i|0)!=1){break b}y=z[c+16>>2];r=z[c+20>>2];e=z[p+2864>>2];e=C(e+e);h=z[p+2856>>2];h=C(h+h);j=z[p+2860>>2];j=C(j+j);k=C(C(G*e)+C(C(F*h)+C(j*E)));z[o+8>>2]=z[c+24>>2]+C(C(G*k)+C(C(e*H)+C(A*C(C(F*j)+C(h*T)))));z[o+4>>2]=r+C(C(E*k)+C(C(j*H)+C(A*C(C(G*h)+C(e*U)))));e=C(y+C(C(F*k)+C(C(h*H)+C(A*C(C(E*e)+C(j*V))))));z[o>>2]=e;i=1;t=1}l=(f<<2)+a|0;m=v[l+7424>>2];if((m|0)!=65535){W=l+7556|0;X=l+7558|0;h=C(0);j=z[o+20>>2];k=z[o+16>>2];y=z[o+12>>2];J=z[o+8>>2];K=z[o+4>>2];while(1){Q=B(m,44)+a|0;Y=w[Q+5|0];if(Y){m=0;while(1){l=x[Q>>1]+m|0;i=(l<<6)+b|0;c:{if(!(z[i+12>>2]>1]=l;J=z[i+24>>2];K=z[i+20>>2];e=z[i+16>>2];t=1;break c;case 1:t=1;r=z[i+24>>2];h=C(r-J);n=C(h*h);q=z[i+16>>2];h=C(q-e);D=C(h*h);s=z[i+20>>2];h=C(s-K);h=C(n+C(D+C(h*h)));if(!(Z>1]=l;t=2;j=r;k=s;y=q;break c;default:break d}}r=z[i+24>>2];q=C(r-J);n=C(q*q);q=z[i+16>>2];s=C(q-e);R=C(s*s);s=z[i+20>>2];D=C(s-K);D=C(n+C(R+C(D*D)));n=C(r-j);R=C(n*n);n=C(q-y);ba=C(n*n);n=C(s-k);n=C(R+C(ba+C(n*n)));if(D>n){if(!(h>1]=l;j=r;k=s;y=q;h=D;break c}if(!(h>1]=l;J=r;K=s;e=q;h=n}m=m+1|0;if((Y|0)!=(m|0)){continue}break}}m=x[Q+2>>1];if((m|0)!=65535){continue}break}z[o+20>>2]=j;z[o+16>>2]=k;z[o+12>>2]=y;z[o+8>>2]=J;z[o+4>>2]=K;z[o>>2]=e;i=x[O>>1]}i=i&65535;if(t>>>0>i>>>0){while(1){l=B(i,12);m=l+p|0;l=o+l|0;y=z[l+8>>2];e=C(y-z[c+24>>2]);e=C(e+e);r=z[l>>2];h=C(r-z[c+16>>2]);h=C(h+h);q=z[l+4>>2];j=C(q-z[c+20>>2]);j=C(j+j);k=C(C(G*e)+C(C(F*h)+C(j*E)));z[m+2864>>2]=C(G*k)+C(C(e*H)-C(A*C(C(F*j)+C(h*T))));z[m+2860>>2]=C(E*k)+C(C(j*H)-C(A*C(C(G*h)+C(e*U))));z[m+2856>>2]=C(F*k)+C(C(h*H)-C(A*C(C(E*e)+C(j*V))));e=C(y-z[d+24>>2]);e=C(e+e);h=C(r-z[d+16>>2]);h=C(h+h);j=C(q-z[d+20>>2]);j=C(j+j);k=C(C(N*e)+C(C(M*h)+C(j*L)));z[m+2888>>2]=C(N*k)+C(C(e*P)-C(I*C(C(M*j)+C(h*_))));z[m+2884>>2]=C(L*k)+C(C(j*P)-C(I*C(C(N*h)+C(e*$))));z[m+2880>>2]=C(M*k)+C(C(h*P)-C(I*C(C(L*e)+C(j*aa))));i=i+1|0;if((t|0)!=(i|0)){continue}break}}if(!t){v[p+2888>>2]=0;i=p+2880|0;v[i>>2]=0;v[i+4>>2]=0;v[p+2864>>2]=0;i=p+2856|0;v[i>>2]=0;v[i+4>>2]=0}u[O>>1]=t}f=f+1|0;if((S|0)!=(f|0)){continue}break}}}function bW(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=0,D=0,E=0,F=C(0),G=0,H=0,I=0;g=xa-912|0;xa=g;k=z[d+4>>2];s=C(k+k);h=z[d+8>>2];l=C(s*h);u=z[d>>2];r=C(u+u);m=z[d+12>>2];j=C(r*m);p=C(l-j);o=C(r*h);n=C(s*m);i=C(o+n);l=C(l+j);q=C(r*k);x=C(h+h);y=C(x*m);m=C(q-y);j=C(o-n);o=C(q+y);n=C(C(1)-C(u*r));r=C(h*x);h=C(n-r);q=C(k*s);k=C(C(C(1)-q)-r);r=z[c+12>>2];s=z[c+8>>2];x=z[d+24>>2];y=z[d+20>>2];u=z[c+4>>2];F=z[d+16>>2];n=C(n-q);a:{if(n>2]=0;z[g+360>>2]=r;z[g+356>>2]=s;t[g+336|0]=0;v[g+332>>2]=3;v[g+304>>2]=0;v[g+308>>2]=0;v[g+312>>2]=0;v[g+316>>2]=0;z[g+352>>2]=u;i=s>=u?u:s;i=i<=r?i:r;l=C(i*C(.05000000074505806));z[g+328>>2]=l;z[g+324>>2]=l;z[g+320>>2]=i*C(.15000000596046448);d=v[e+32>>2];i=z[e+8>>2];l=z[e+12>>2];m=z[e+4>>2];v[g+300>>2]=0;z[g+296>>2]=l;z[g+292>>2]=i;z[g+288>>2]=m;A=v[e+16>>2];D=v[e+20>>2];E=v[e+28>>2];v[g+280>>2]=v[e+24>>2];v[g+284>>2]=E;v[g+272>>2]=A;v[g+276>>2]=D;t[g+144|0]=0;v[g+136>>2]=0;v[g+140>>2]=0;v[g+128>>2]=0;v[g+132>>2]=0;v[g+120>>2]=0;v[g+124>>2]=0;v[g+112>>2]=0;v[g+116>>2]=0;v[g+256>>2]=d+16;v[g+264>>2]=v[d+56>>2]+B(w[d+55|0],20);t[g+268|0]=w[d+54|0];j=C(m*z[d+68>>2]);o=C(i*z[d+72>>2]);j=j<=o?j:o;o=C(l*z[d+76>>2]);j=j<=o?j:o;z[g+136>>2]=j*C(.02500000037252903);z[g+128>>2]=j*C(.10000000149011612);z[g+132>>2]=j*C(.05000000074505806);A=g+160|0;D=g+208|0;GV(g+288|0,g+272|0,A,D,g+112|0,m==C(1)&i==C(1)&l==C(1));v[g+260>>2]=v[d+60>>2];i=z[f+24>>2];d=v[f>>2];E=v[f+4>>2];G=v[f+8>>2];H=v[f+12>>2];I=v[f+20>>2];f=v[f+16>>2];v[g+108>>2]=0;z[g+104>>2]=x;z[g+100>>2]=y;z[g+96>>2]=F;z[g+92>>2]=h;z[g+88>>2]=k;z[g+84>>2]=n;z[g+80>>2]=p;v[g+76>>2]=0;z[g+72>>2]=i;v[g+64>>2]=f;v[g+68>>2]=I;v[g+56>>2]=G;v[g+60>>2]=H;v[g+48>>2]=d;v[g+52>>2]=E;v[g+40>>2]=0;v[g+44>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+16>>2]=0;c=z[e+4>>2]!=C(1)|z[e+8>>2]!=C(1)?c:z[e+12>>2]==C(1);z[g+8>>2]=r;z[g+4>>2]=s;z[g>>2]=u;k2(z_(g+616|0,g),g+840|0);v[g+872>>2]=103120;l2(g+112|0,c,g+544|0);v[g+520>>2]=0;v[g+524>>2]=0;v[g+516>>2]=1065353216;v[g+528>>2]=0;v[g+532>>2]=0;v[g+536>>2]=1065353216;v[g+540>>2]=0;v[g+500>>2]=0;v[g+504>>2]=0;v[g+496>>2]=1065353216;v[g+508>>2]=0;v[g+512>>2]=0;t[g+476|0]=1;v[g+432>>2]=141108;d=g+496|0;v[g+472>>2]=d;v[g+468>>2]=d;v[g+464>>2]=g+80;v[g+480>>2]=g+304;v[g+408>>2]=D;v[g+404>>2]=A;v[g+400>>2]=g+48;b:{if(c){t[g+412|0]=1;v[g+368>>2]=141020;break b}t[g+412|0]=0;v[g+368>>2]=141068}v[g+416>>2]=g+112;c=b2(g+840|0,g+544|0,g+432|0,g+368|0,g+16|0,g+32|0);if(c){h=z[g+16>>2];z[b>>2]=h>C(0)?h:C(0);b=v[g+32>>2];d=v[g+36>>2];z[a+8>>2]=z[g+40>>2];v[a>>2]=b;v[a+4>>2]=d}xa=g+912|0;return c|0}function Id(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0;h=xa+-64|0;xa=h;z[h+32>>2]=z[d>>2];z[h+36>>2]=z[d+4>>2];z[h+40>>2]=z[d+8>>2];z[h+44>>2]=z[d+12>>2];z[h+48>>2]=z[c>>2];z[h+52>>2]=z[c+4>>2];z[h+56>>2]=z[c+8>>2];z[h>>2]=z[g>>2];z[h+4>>2]=z[g+4>>2];z[h+8>>2]=z[g+8>>2];z[h+12>>2]=z[g+12>>2];z[h+16>>2]=z[f>>2];z[h+20>>2]=z[f+4>>2];z[h+24>>2]=z[f+8>>2];g=xa-16|0;xa=g;c=v[37696];d=c+12|0;c=(F=d,G=84,H=Ba[v[v[c>>2]+20>>2]](c)|0?27889:63804,I=6474,J=47,E=v[v[d>>2]+8>>2],Ba[E](F|0,G|0,H|0,I|0,J|0)|0);Ba[v[v[a>>2]+20>>2]](a)|0;u[g+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[g+8>>1];u[c+4>>1]=256;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=149084;v[c>>2]=148880;v[c+8>>2]=0;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,128,24422,17141,454)|0;k=z[h+44>>2];l=z[h+40>>2];m=z[h+32>>2];i=z[h+36>>2];r=v[h+52>>2];s=v[h+48>>2];z[c+44>>2]=z[h+56>>2];v[c+36>>2]=s;v[c+40>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+24>>2]=j*i;z[c+28>>2]=l*i;z[c+32>>2]=k*i;z[c+20>>2]=m*i;k=z[h+12>>2];l=z[h+8>>2];m=z[h>>2];i=z[h+4>>2];r=v[h+20>>2];s=v[h+16>>2];z[c+72>>2]=z[h+24>>2];D=c- -64|0;v[D>>2]=s;v[D+4>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+52>>2]=j*i;z[c+56>>2]=l*i;z[c+60>>2]=k*i;z[c+48>>2]=m*i;Z4(f,b);q=z[h+52>>2];t=z[h+56>>2];w=z[h+48>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+40>>2];m=z[f+4>>2];n=z[h+36>>2];k=z[f+12>>2];o=z[h+44>>2];i=z[f>>2];p=z[h+32>>2];z[d+28>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+24>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+20>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+40>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+32>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);Z4(f,e);q=z[h+20>>2];t=z[h+24>>2];w=z[h+16>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+8>>2];m=z[f+4>>2];n=z[h+4>>2];k=z[f+12>>2];o=z[h+12>>2];i=z[f>>2];p=z[h>>2];z[d+56>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+52>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+48>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+68>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+60>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;v[c+12>>2]=148776;v[c>>2]=148564;d=0;f=v[c+80>>2];u[f+112>>1]=0;v[f+80>>2]=0;v[f+84>>2]=1056964608;v[f+96>>2]=1036831949;v[f+100>>2]=1070141403;v[f+88>>2]=0;v[f+92>>2]=0;v[f+104>>2]=1070141403;v[f+108>>2]=1343554297;a=Ba[v[v[a>>2]+108>>2]](a,b,e,c+12|0,148540,128)|0;v[c+76>>2]=a;a:{if(a){d=c;break a}Ba[v[v[c>>2]+16>>2]](c)}xa=g+16|0;xa=h- -64|0;return d|0}function W4(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,A=C(0),D=C(0);a:{if(v[a+36>>2]){e=v[a+36>>2];m=v[e+16>>2];d=m<<2;o=v[e+28>>2];c=B(o,20);p=v[e+4>>2];f=B(p,12);h=((d+c|0)+f|0)+12|0;if(h){e=v[37696]+12|0;g=Ba[v[v[e>>2]+8>>2]](e,h,24422,13134,2527)|0;e=v[a+36>>2]}v[a+40>>2]=g;k=d+g|0;r=I9(k+c|0,v[e>>2],f);i=v[a+36>>2];j=v[i+16>>2];if(j){s=v[i+24>>2];e=0;while(1){f=k+B(l,20)|0;d=1;h=e+1|0;b:{if(j>>>0<=h>>>0){break b}c=j-e|0;n=v[i+12>>2];q=w[(n+(e<<2)|0)+3|0];while(1){if((q|0)!=w[(n+(h<<2)|0)+3|0]){break b}d=d+1|0;h=e+d|0;if((c|0)!=(d|0)){continue}break}d=c}u[f+18>>1]=e;u[f+16>>1]=d;c=s+(l<<4)|0;z[f>>2]=z[c>>2];z[f+4>>2]=z[c+4>>2];z[f+8>>2]=z[c+8>>2];z[f+12>>2]=z[c+12>>2];if(d){f=d-1|0;c=v[i+12>>2];h=0;j=d&3;if(j){while(1){n=e<<2;v[n+g>>2]=w[(c+n|0)+2|0];e=e+1|0;d=d-1|0;h=h+1|0;if((j|0)!=(h|0)){continue}break}}if(f>>>0>=3){while(1){f=e<<2;v[f+g>>2]=w[(c+f|0)+2|0];h=f+4|0;v[h+g>>2]=w[(c+h|0)+2|0];h=f+8|0;v[h+g>>2]=w[(c+h|0)+2|0];f=f+12|0;v[f+g>>2]=w[(c+f|0)+2|0];e=e+4|0;d=d-4|0;if(d){continue}break}}j=v[i+16>>2]}l=l+1|0;if(e>>>0>>0){continue}break}}v[b+24>>2]=4;v[b+8>>2]=p;v[b+4>>2]=r;v[b>>2]=12;v[b+12>>2]=20;v[b+28>>2]=g;v[b+32>>2]=m;v[b+20>>2]=o;v[b+16>>2]=k;f=0;c=0;i=0;h=xa-16|0;xa=h;d=v[b+20>>2];c:{if(d>>>0<2){break c}e=v[b+16>>2];g=d-1|0;j=g&3;d:{if(d-2>>>0<3){g=1;break d}l=g&-4;g=1;while(1){d=e+B(g,20)|0;f=x[(e+B(f,20)|0)+16>>1]>1]?g:f;f=x[(e+B(f,20)|0)+16>>1]>1]?g+1|0:f;f=x[(e+B(f,20)|0)+16>>1]>1]?g+2|0:f;f=x[(e+B(f,20)|0)+16>>1]>1]?g+3|0:f;g=g+4|0;c=c+4|0;if((l|0)!=(c|0)){continue}break}}if(j){while(1){f=x[(e+B(f,20)|0)+16>>1]>1]?g:f;g=g+1|0;i=i+1|0;if((j|0)!=(i|0)){continue}break}}if(!f){break c}j=v[b+28>>2];d=v[b+32>>2]<<2;if(d){c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,24422,13231,313)|0}else{d=0}v[a+12>>2]=d;d=v[e+12>>2];v[h+8>>2]=v[e+8>>2];v[h+12>>2]=d;d=v[e+4>>2];v[h>>2]=v[e>>2];v[h+4>>2]=d;c=e+B(f,20)|0;l=x[c+18>>1];g=x[c+16>>1];d=x[e+16>>1];i=x[e+18>>1];v[e+16>>2]=v[c+16>>2];k=v[c+12>>2];v[e+8>>2]=v[c+8>>2];v[e+12>>2]=k;k=v[c+4>>2];v[e>>2]=v[c>>2];v[e+4>>2]=k;k=v[h+8>>2];m=v[h+12>>2];o=v[h+4>>2];p=v[h>>2];u[c+16>>1]=d;v[c>>2]=p;v[c+4>>2]=o;v[c+8>>2]=k;v[c+12>>2]=m;u[c+18>>1]=i;e:{if(!v[b+20>>2]){break e}I9(v[a+12>>2],j+(l<<2)|0,g<<2);u[e+18>>1]=0;if(y[b+20>>2]<2){break e}l=d<<2;k=j+(i<<2)|0;m=e+B(f,20)|0;i=1;while(1){c=v[a+12>>2]+((g&65535)<<2)|0;f:{if((f|0)==(i|0)){I9(c,k,l);u[m+18>>1]=g;c=d;break f}q=c;c=e+B(i,20)|0;I9(q,j+(x[c+18>>1]<<2)|0,x[c+16>>1]<<2);u[c+18>>1]=g;c=x[c+16>>1]}g=c+g|0;i=i+1|0;if(i>>>0>2]){continue}break}}v[b+28>>2]=v[a+12>>2]}xa=h+16|0;break a}U4(a,b)}if(t[v[a+4>>2]+37|0]&1){d=0;e=v[b+8>>2];if(e){g=v[b+4>>2];while(1){A=z[a+16>>2];D=z[a+20>>2];c=g+B(d,12)|0;z[c+8>>2]=z[c+8>>2]+z[a+24>>2];z[c+4>>2]=D+z[c+4>>2];z[c>>2]=A+z[c>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}c=v[b+20>>2];if(c){e=v[b+16>>2];d=0;while(1){b=e+B(d,20)|0;z[b+12>>2]=z[b+12>>2]-C(C(z[b+8>>2]*z[a+24>>2])+C(C(z[b>>2]*z[a+16>>2])+C(z[b+4>>2]*z[a+20>>2])));d=d+1|0;if((c|0)!=(d|0)){continue}break}}}}function F1(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0);l=xa-224|0;xa=l;v[l+200>>2]=0;v[l+204>>2]=0;v[l+196>>2]=1065353216;v[l+208>>2]=0;v[l+212>>2]=0;v[l+216>>2]=1065353216;v[l+220>>2]=0;v[l+180>>2]=0;v[l+184>>2]=0;v[l+176>>2]=1065353216;v[l+188>>2]=0;v[l+192>>2]=0;n=z[i+56>>2];m=z[i+40>>2];p=z[c+32>>2];o=z[i+8>>2];u=z[c+24>>2];A=z[c+28>>2];x=z[i+24>>2];q=C(n+C(C(m*p)+C(C(o*u)+C(A*x))));s=z[i+52>>2];E=z[i+36>>2];y=z[i+4>>2];I=z[i+20>>2];w=C(s+C(C(E*p)+C(C(y*u)+C(A*I))));F=z[c+20>>2];G=z[c+12>>2];H=z[c+16>>2];r=C(n+C(C(m*F)+C(C(o*G)+C(H*x))));D=C(s+C(C(E*F)+C(C(y*G)+C(H*I))));J=z[i+48>>2];L=z[i+32>>2];N=C(L*p);p=z[i>>2];M=z[i+16>>2];u=C(J+C(N+C(C(p*u)+C(A*M))));A=C(J+C(C(L*F)+C(C(p*G)+C(H*M))));F=z[c+8>>2];H=o;o=z[c>>2];G=z[c+4>>2];n=C(n+C(C(m*F)+C(C(H*o)+C(G*x))));m=C(s+C(C(E*F)+C(C(y*o)+C(G*I))));p=C(J+C(C(L*F)+C(C(p*o)+C(G*M))));a:{if(!g){x=C(A-p);s=C(w-m);E=C(u-p);y=C(D-m);o=C(C(x*s)-C(E*y));H=o;G=C(o*o);o=y;y=C(q-n);F=s;s=C(r-n);o=C(C(o*y)-C(F*s));x=C(C(s*E)-C(y*x));s=C(C(1)/C(K(C(G+C(C(o*o)+C(x*x))))));E=C(H*s);o=C(o*s);x=C(x*s);if(C(C(C(z[b+24>>2]*E)+C(C(z[b+16>>2]*o)+C(x*z[b+20>>2])))-C(C(n*E)+C(C(p*o)+C(m*x))))>2]=0;z[l+168>>2]=q;z[l+164>>2]=w;z[l+160>>2]=u;v[l+156>>2]=0;z[l+152>>2]=r;z[l+148>>2]=D;z[l+144>>2]=A;v[l+140>>2]=0;z[l+136>>2]=n;z[l+132>>2]=m;t[l+112|0]=0;v[l+104>>2]=2139095039;v[l+108>>2]=5;v[l+92>>2]=0;v[l+96>>2]=0;v[l+100>>2]=2139095039;z[l+88>>2]=C(q+C(n+r))*C(.33333298563957214);z[l+84>>2]=C(w+C(m+D))*C(.33333298563957214);z[l+128>>2]=p;z[l+80>>2]=C(u+C(p+A))*C(.33333298563957214);t[l+60|0]=1;v[l+48>>2]=h;v[l+16>>2]=144504;c=l+176|0;v[l+56>>2]=c;v[l+52>>2]=c;g=l+80|0;v[l+64>>2]=g;h=l+16|0;c=xa-96|0;xa=c;w=z[g+80>>2];r=z[g- -64>>2];q=z[g+68>>2];D=z[g+88>>2];u=z[g+84>>2];n=z[g+52>>2];m=z[g+56>>2];A=z[g+72>>2];p=z[g+48>>2];v[c+60>>2]=0;o=C(q-n);D=C(D-m);u=C(u-n);A=C(A-m);q=C(C(o*D)-C(u*A));s=q;r=C(r-p);y=C(r*u);u=C(w-p);w=C(y-C(u*o));o=C(q*q);q=C(C(A*u)-C(D*r));r=C(C(1)/C(K(C(C(w*w)+C(o+C(q*q))))));D=C(s*r);z[c+48>>2]=D;w=C(w*r);z[c+56>>2]=w;q=C(q*r);z[c+52>>2]=q;Ba[v[v[b>>2]+12>>2]](b,c+48|0,c+80|0,c- -64|0);r=z[f>>2];n=C(C(w*m)+C(C(D*p)+C(n*q)));m=z[c+80>>2];b:{if(n>C(r+z[c+64>>2])?1:C(r+n)>2]=0;i=v[c+52>>2];v[c>>2]=v[c+48>>2];v[c+4>>2]=i;i=v[c+60>>2];v[c+8>>2]=v[c+56>>2];v[c+12>>2]=i;z[c+16>>2]=C(n-m)+C(-1.1920928955078125e-7);if(!m2(a,h,b,f,c+16|0,c- -64|0,c,c+44|0)){break b}if(!n2(g,e,a,h,b,f,c+16|0,c,c+44|0)){break b}n=z[g+56>>2];p=C(z[g+72>>2]-n);m=z[g+48>>2];q=C(z[g+80>>2]-m);w=C(z[g+88>>2]-n);m=C(z[g+64>>2]-m);n=C(C(p*q)-C(w*m));o=n;s=m;m=z[g+52>>2];r=C(z[g+84>>2]-m);y=q;q=C(z[g+68>>2]-m);m=C(C(s*r)-C(y*q));p=C(C(q*w)-C(r*p));n=C(C(1)/C(K(C(C(m*m)+C(C(p*p)+C(n*n))))));z[c+84>>2]=o*n;z[c+80>>2]=p*n;v[c+92>>2]=0;z[c+88>>2]=m*n;e=v[c+84>>2];v[l>>2]=v[c+80>>2];v[l+4>>2]=e;e=v[c+92>>2];v[l+8>>2]=v[c+88>>2];v[l+12>>2]=e;h=v[a+24>>2];e=a;a=c+80|0;o2(g,d,e,h+B(_1(e,b,a),20)|0,b,j,k,f,a)}xa=c+96|0}xa=l+224|0}function Pj(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(v[a+40>>2]){b9(v[37696],8,19068,247,74291,0);bC(v[a+40>>2],a)}j=a+20|0;k=NU(j,b);if((k|0)!=-1){d=vh(a);a:{if(!d|!(w[(w[b+36|0]&64?v[b+40>>2]+52|0:b+112|0)|0]&2)){break a}JE(d+5584|0,v[j+16>>2],v[(k<<2)+(x[j+12>>1]==1?j+8|0:v[j+8>>2])>>2]);if(v[j+16>>2]==-1|x[j+4>>1]!=1){break a}v[j+16>>2]=-1;d=x[a+4>>1];if((d&65527)!=5){break a}b:{c:{switch(d-5|0){case 0:d=a- -64|0;break b;case 8:break c;default:break a}}d=a- -64|0}d=v[d>>2];if(y[d+152>>2]<=4294967293){e=v[d+40>>2];f=v[d+156>>2];v[d+156>>2]=-2;h=v[e+44>>2]-1|0;if((h|0)!=(f|0)){i=v[e+40>>2];g=v[i+(h<<2)>>2];v[i+(f<<2)>>2]=g;v[v[g>>2]+152>>2]=f}v[e+44>>2]=h}u[d+148>>1]=x[d+148>>1]&61439}e=b+32|0;p=v[b+16>>2]==1;h=xa-16|0;xa=h;f=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;d=v[f+4>>2];d:{if(d>>>0<1073741824){break d}l=v[f>>2];if(!w[l+4785|0]){a=f+v[((d>>>22&60)+89188|0)+12>>2]|0;if(!(w[(d&1?v[f+8>>2]:a+8|0)|0]&8)){SJ(a,e+16|0,c);bu(e)}a=v[e+4>>2];if((a&251658240)!=16777216){break d}v[e>>2]=0;v[e+4>>2]=a&1073741823;break d}if((d&-1073741824)==1073741824){a=v[e+4>>2];if((a&251658240)!=16777216){break d}v[e>>2]=0;v[e+4>>2]=a&1073741823;break d}a=v[f+8>>2];if(!a){a=Qu(l,d>>>24&15);v[f+8>>2]=a;d=v[f+4>>2]}e:{if(!(d&32)){break e}g=v[a+88>>2];if((g|0)==1){if((e|0)!=v[a+84>>2]){break e}v[a+84>>2]=0;v[a+88>>2]=0;v[f+4>>2]=v[f+4>>2]&-33;break e}f:{g:{h:{if(g){i=v[l+4868>>2]+(v[a+84>>2]<<2)|0;n=g&1;if((g|0)==1){d=0;break h}q=g&-2;d=0;while(1){m=i+(d<<2)|0;i:{if((e|0)!=v[m>>2]){d=d+1|0;break i}g=g-1|0;v[m>>2]=v[i+(g<<2)>>2]}m=i+(d<<2)|0;j:{if((e|0)!=v[m>>2]){d=d+1|0;break j}g=g-1|0;v[m>>2]=v[i+(g<<2)>>2]}o=o+2|0;if((o|0)!=(q|0)){continue}break}break h}v[a+88>>2]=0;break g}k:{if(!n){break k}n=i+(d<<2)|0;if((e|0)!=v[n>>2]){d=d+1|0;break k}v[n>>2]=v[(i+(g<<2)|0)-4>>2]}v[a+88>>2]=d;switch(d|0){case 1:break f;case 0:break g;default:break e}}v[a+84>>2]=0;v[f+4>>2]=v[f+4>>2]&-33;break e}v[a+84>>2]=v[i>>2]}l:{m:{n:{o:{g=v[a+28>>2];if(!g){d=0;break o}i=v[a+24>>2];d=0;while(1){if((e|0)==v[i+(d<<2)>>2]){break o}d=d+1|0;if((g|0)!=(d|0)){continue}break}break n}if((d|0)==(g|0)){break n}c=g-1|0;v[a+28>>2]=c;a=v[a+24>>2];v[a+(d<<2)>>2]=v[a+(c<<2)>>2];a=v[e+4>>2];if((a&251658240)!=16777216){break l}v[e+4>>2]=a&1073741823|-2147483648;break m}p:{if(!(w[(f+v[((v[f+4>>2]>>>22&60)+89188|0)+12>>2]|0)+8|0]&8)){t[h+12|0]=c;v[h+8>>2]=e;c=v[a+76>>2];if(c>>>0>=(v[a+80>>2]&2147483647)>>>0){hu(a+36|0,h+8|0);break p}d=v[h+12>>2];c=v[a+72>>2]+(c<<3)|0;v[c>>2]=v[h+8>>2];v[c+4>>2]=d;v[a+76>>2]=v[a+76>>2]+1;break p}if(p){if(!(w[e+7|0]&16)){break p}uu(l+4816|0,e);v[e+4>>2]=v[e+4>>2]&-268435457;break p}t[h+12|0]=0;v[h+8>>2]=e;c=v[a+76>>2];if(c>>>0>=(v[a+80>>2]&2147483647)>>>0){hu(a+36|0,h+8|0);break p}d=v[h+12>>2];c=v[a+72>>2]+(c<<3)|0;v[c>>2]=v[h+8>>2];v[c+4>>2]=d;v[a+76>>2]=v[a+76>>2]+1}a=v[e+4>>2];if((a&251658240)!=16777216){break l}v[e+4>>2]=a|-1073741824}v[e>>2]=l}Yu(v[f>>2],f);v[f+4>>2]=v[f+4>>2]|8}xa=h+16|0;a=v[v[37389]+476>>2];QU(j,k,a);QU(j+8|0,k,a);_t(b)}if((k|0)==-1){b9(v[37696],8,19068,253,72797,0)}}function O_(a,b,c,d,e){var f=0,g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=0,x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0);f=xa-128|0;xa=f;o=z[b+16>>2];n=z[b>>2];p=C(o-n);F=z[b+36>>2];s=z[b+4>>2];u=C(F-s);G=z[b+32>>2];y=C(G-n);x=z[b+20>>2];A=C(x-s);k=C(C(p*u)-C(y*A));H=z[b+40>>2];t=z[b+8>>2];B=C(H-t);q=z[b+24>>2];E=C(q-t);i=C(C(A*B)-C(u*E));g=C(C(E*y)-C(B*p));I=C(C(1)/C(K(C(C(k*k)+C(C(i*i)+C(g*g))))));J=z[b+56>>2];l=C(J-t);L=z[b+48>>2];m=C(L-n);M=z[b+52>>2];r=C(M-s);a:{if(C(D(C(C(C(k*I)*l)+C(C(C(i*I)*m)+C(r*C(g*I))))))>2]=3;KV(a,b,c,d,e);break a}h=C(C(C(k*t)+C(C(i*n)+C(s*g)))*C(C(k*J)+C(C(i*L)+C(M*g))))>=C(-9.999999974752427e-7);v[f+112>>2]=h?-1:0;k=C(C(m*A)-C(p*r));i=C(C(r*E)-C(A*l));g=C(C(l*p)-C(E*m));k=C(C(C(k*t)+C(C(i*n)+C(s*g)))*C(C(k*H)+C(C(i*G)+C(F*g))));v[f+120>>2]=k>=C(-9.999999974752427e-7)?-1:0;i=C(C(y*r)-C(m*u));g=C(C(u*l)-C(r*B));l=C(C(B*m)-C(l*y));w=C(C(C(i*t)+C(C(g*n)+C(s*l)))*C(C(i*q)+C(C(g*o)+C(x*l))))>=C(-9.999999974752427e-7);v[f+116>>2]=w?-1:0;i=C(L-o);g=C(F-x);l=C(G-o);m=C(M-x);r=C(C(i*g)-C(l*m));u=C(r*q);p=m;m=C(H-q);q=C(J-q);g=C(C(p*m)-C(g*q));p=C(g*o);o=C(C(q*l)-C(m*i));n=C(C(u+C(p+C(x*o)))*C(C(r*t)+C(C(g*n)+C(s*o))));v[f+124>>2]=n>=C(-9.999999974752427e-7)?-1:0;if(!(h|w|(k>=C(-9.999999974752427e-7)|n>=C(-9.999999974752427e-7)))){v[a>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;break a}v[f+104>>2]=v[25363];h=v[25362];v[f+96>>2]=v[25361];v[f+100>>2]=h;P_(a,b,f+112|0,f+96|0,e);w=v[f+96>>2];e=v[f+100>>2]<<4;a=e+b|0;h=v[a+4>>2];v[f+80>>2]=v[a>>2];v[f+84>>2]=h;h=v[a+12>>2];v[f+88>>2]=v[a+8>>2];v[f+92>>2]=h;h=v[f+104>>2]<<4;a=h+b|0;j=v[a+4>>2];v[f+64>>2]=v[a>>2];v[f+68>>2]=j;j=v[a+12>>2];v[f+72>>2]=v[a+8>>2];v[f+76>>2]=j;a=c+e|0;j=v[a+12>>2];v[f+56>>2]=v[a+8>>2];v[f+60>>2]=j;j=v[a+4>>2];v[f+48>>2]=v[a>>2];v[f+52>>2]=j;a=c+h|0;j=v[a+12>>2];v[f+40>>2]=v[a+8>>2];v[f+44>>2]=j;j=v[a+4>>2];v[f+32>>2]=v[a>>2];v[f+36>>2]=j;a=d+e|0;e=v[a+12>>2];v[f+24>>2]=v[a+8>>2];v[f+28>>2]=e;e=v[a+4>>2];v[f+16>>2]=v[a>>2];v[f+20>>2]=e;a=d+h|0;e=v[a+4>>2];v[f>>2]=v[a>>2];v[f+4>>2]=e;h=v[a+8>>2];j=v[a+12>>2];e=w<<4;a=e+b|0;w=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=w;v[f+8>>2]=h;v[f+12>>2]=j;h=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=h;a=v[f+92>>2];v[b+24>>2]=v[f+88>>2];v[b+28>>2]=a;a=v[f+84>>2];v[b+16>>2]=v[f+80>>2];v[b+20>>2]=a;a=v[f+68>>2];v[b+32>>2]=v[f+64>>2];v[b+36>>2]=a;a=v[f+76>>2];v[b+40>>2]=v[f+72>>2];v[b+44>>2]=a;a=c+e|0;b=v[a+4>>2];v[c>>2]=v[a>>2];v[c+4>>2]=b;b=v[a+12>>2];v[c+8>>2]=v[a+8>>2];v[c+12>>2]=b;a=v[f+60>>2];v[c+24>>2]=v[f+56>>2];v[c+28>>2]=a;a=v[f+52>>2];v[c+16>>2]=v[f+48>>2];v[c+20>>2]=a;a=v[f+36>>2];v[c+32>>2]=v[f+32>>2];v[c+36>>2]=a;a=v[f+44>>2];v[c+40>>2]=v[f+40>>2];v[c+44>>2]=a;a=d+e|0;b=v[a+4>>2];v[d>>2]=v[a>>2];v[d+4>>2]=b;b=v[a+12>>2];v[d+8>>2]=v[a+8>>2];v[d+12>>2]=b;a=v[f+20>>2];v[d+16>>2]=v[f+16>>2];v[d+20>>2]=a;a=v[f+28>>2];v[d+24>>2]=v[f+24>>2];v[d+28>>2]=a;a=v[f+12>>2];v[d+40>>2]=v[f+8>>2];v[d+44>>2]=a;a=v[f+4>>2];v[d+32>>2]=v[f>>2];v[d+36>>2]=a}xa=f+128|0}function JW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=C(0),G=C(0),H=0,I=C(0),J=0,K=0,L=0,M=C(0),N=C(0),O=0;e=xa-96|0;xa=e;a=v[c+32>>2];o=z[b+8>>2];m=z[b+4>>2];l=z[b+12>>2];n=z[b>>2];f=z[d+8>>2];q=C(z[d+24>>2]*C(-2));i=z[d>>2];r=C(z[d+16>>2]*C(-2));y=C(z[d+20>>2]*C(-2));h=z[d+4>>2];s=C(C(f*q)+C(C(i*r)+C(y*h)));g=z[b+16>>2];A=C(g+g);g=z[b+20>>2];t=C(g+g);g=z[b+24>>2];u=C(g+g);E=C(C(C(C(-i)*A)-C(t*h))-C(f*u));g=z[d+12>>2];k=C(C(g*g)+C(-.5));z[e+48>>2]=C(C(f*s)+C(C(q*k)-C(g*C(C(i*y)-C(r*h)))))+C(C(C(u*k)+C(g*C(C(h*A)-C(i*t))))-C(f*E));z[e+44>>2]=C(C(h*s)+C(C(y*k)-C(g*C(C(f*r)-C(q*i)))))+C(C(C(t*k)+C(g*C(C(i*u)-C(f*A))))-C(h*E));z[e+36>>2]=C(f*o)+C(C(h*m)+C(C(g*l)+C(i*n)));z[e+32>>2]=C(n*h)+C(C(C(g*o)-C(l*f))-C(i*m));z[e+28>>2]=C(o*i)+C(C(C(g*m)-C(l*h))-C(f*n));z[e+24>>2]=C(m*f)+C(C(C(g*n)-C(l*i))-C(h*o));z[e+40>>2]=C(C(i*s)+C(C(r*k)-C(g*C(C(h*q)-C(y*f)))))+C(C(C(A*k)+C(g*C(C(f*t)-C(h*u))))-C(i*E));BV(e+8|0,e+24|0);i=z[c+20>>2];h=C(i+i);f=z[c+24>>2];m=C(f+f);q=C(i*h);r=C(f*m);g=C(C(C(1)-q)-r);y=z[c+4>>2];n=z[c+16>>2];k=C(n+n);t=C(k*f);l=z[c+28>>2];u=C(h*l);o=C(t+u);s=C(y*o);E=C(k*i);G=C(m*l);m=C(E+G);I=C(h*f);M=C(k*l);f=C(I-M);A=z[c+8>>2];i=C(f*A);l=C(t-u);N=C(C(1)-C(n*k));k=C(N-q);t=z[c+12>>2];h=C(k*t);u=z[e+8>>2];n=C(E-G);q=C(N-r);r=C(I+M);E=z[e+12>>2];G=C(C(C(C(C(g*s)+C(m*i))+C(l*h))*u)+C(C(C(C(n*s)+C(q*i))+C(r*h))*E));h=C(C(C(o*s)+C(f*i))+C(k*h));s=z[e+16>>2];i=C(G+C(h*s));z[e+88>>2]=i;h=C(y*n);G=C(q*A);I=C(r*t);h=C(C(C(u*C(C(C(g*h)+C(m*G))+C(l*I)))+C(E*C(C(C(n*h)+C(q*G))+C(r*I))))+C(s*C(C(C(o*h)+C(f*G))+C(k*I))));z[e+84>>2]=h;G=g;g=C(y*g);y=m;m=C(m*A);A=l;l=C(l*t);g=C(C(C(u*C(C(C(G*g)+C(y*m))+C(A*l)))+C(E*C(C(C(n*g)+C(q*m))+C(r*l))))+C(s*C(C(C(o*g)+C(f*m))+C(k*l))));z[e+80>>2]=g;c=v[a+56>>2]+B(w[a+55|0],20)|0;b=v[a+60>>2];a:{if(!b){a=w[a+54|0];b:{if(!(a&1)){f=C(34028234663852886e22);d=a;break b}f=C(F(C(C(z[c+8>>2]*i)+C(C(z[c>>2]*g)+C(h*z[c+4>>2]))),C(34028234663852886e22)));c=c+12|0;d=a-1|0}if((a|0)==1){break a}while(1){k=C(C(z[c+8>>2]*i)+C(C(z[c>>2]*g)+C(h*z[c+4>>2])));f=f>2]*i)+C(C(z[c+12>>2]*g)+C(h*z[c+16>>2])));f=f>1];O=e+80|0;J=(p(h),j(2))&2147483647;H=(p(g),j(2))&2147483647;d=(p(i),j(2))&2147483647;c:{if(!(J>>>0<=H>>>0|J>>>0<=d>>>0)){J=0;H=2;d=1;break c}if(d>>>0<=H>>>0){J=2;H=1;d=0;break c}J=1;H=0;d=2}L=O+(d<<2)|0;f=z[L>>2];L=B(K,d<<1|v[L>>2]>>>31);k=C(C(K-1>>>0)*C(.5));o=C(C(1)/C(D(f)));f=C(C(k*C(C(z[(H<<2)+O>>2]*o)+C(1)))+C(.5));d:{if(f=C(0)){d=~~f>>>0;break d}d=0}K=B(K,d+L|0);H=v[b+4>>2];f=C(C(k*C(C(o*z[(e+80|0)+(J<<2)>>2])+C(1)))+C(.5));e:{if(f=C(0)){d=~~f>>>0;break e}d=0}d=d+K|0;v[e+76>>2]=w[H+d|0];v[e+72>>2]=w[d+(H+x[b+2>>1]|0)|0];z[e+64>>2]=-i;z[e+60>>2]=-h;z[e+56>>2]=-g;u_(e+76|0,e+56|0,c,b);u_(e+72|0,e+80|0,c,v[a+60>>2]);a=B(v[e+76>>2],12)+c|0;f=C(C(z[a+8>>2]*z[e+88>>2])+C(C(z[a>>2]*z[e+80>>2])+C(z[a+4>>2]*z[e+84>>2])))}xa=e+96|0;return C(-z[e+20>>2])>=f|0}function x2(a,b,c){var d=0,e=0,f=0,g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=0,r=0,s=0,u=0,x=0,y=0,A=0,D=C(0);a:{if(c>>>0<=2){if(!c){break a}g=v[b+4>>2];e=v[a+76>>2];v[e>>2]=v[b>>2];v[e+4>>2]=g;g=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=g;g=v[b+20>>2];e=v[a+76>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=g;g=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=g;g=v[b+36>>2];e=v[a+76>>2];v[e+32>>2]=v[b+32>>2];v[e+36>>2]=g;g=v[b+44>>2];v[e+40>>2]=v[b+40>>2];v[e+44>>2]=g;if((c|0)==1){break a}g=v[b+52>>2];e=v[a+76>>2];v[e+48>>2]=v[b+48>>2];v[e+52>>2]=g;g=v[b+60>>2];v[e+56>>2]=v[b+56>>2];v[e+60>>2]=g;d=b- -64|0;f=v[d+4>>2];e=v[a+76>>2];g=e- -64|0;v[g>>2]=v[d>>2];v[g+4>>2]=f;g=v[b+76>>2];v[e+72>>2]=v[b+72>>2];v[e+76>>2]=g;g=v[b+84>>2];e=v[a+76>>2];v[e+80>>2]=v[b+80>>2];v[e+84>>2]=g;g=v[b+92>>2];v[e+88>>2]=v[b+88>>2];v[e+92>>2]=g;t[a+64|0]=c;return}d=xa+-64|0;xa=d;e=c;o=J9(d,0,c);q=c>>>0<2;b:{if(q){break b}d=e-1|0;r=d&3;h=z[b+44>>2];c=0;c:{if(e-2>>>0<3){d=1;break c}A=d&-4;d=1;while(1){i=B(d,48)+b|0;j=z[i+188>>2];k=z[i+44>>2];s=k>2];h=s?k:h;u=m>2];h=u?m:h;i=kj;h=x?j:h;f=x?d+3|0:i?d+2|0:u?d+1|0:s?d:f;d=d+4|0;y=y+4|0;if((A|0)!=(y|0)){continue}break}}if(!r){break b}while(1){j=z[(B(d,48)+b|0)+44>>2];i=j>2];d=v[a+76>>2];v[d>>2]=v[c>>2];v[d+4>>2]=i;i=v[c+44>>2];v[d+40>>2]=v[c+40>>2];v[d+44>>2]=i;i=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=i;i=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=i;i=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=i;i=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=i;t[f+o|0]=1;c=v[a+76>>2];if(!q){j=z[c+24>>2];h=C(z[b+24>>2]-j);l=C(h*h);k=z[c+16>>2];h=C(z[b+16>>2]-k);n=C(h*h);m=z[c+20>>2];h=C(z[b+20>>2]-m);h=C(l+C(n+C(h*h)));d=1;while(1){f=B(d,48)+b|0;l=C(z[f+24>>2]-j);n=C(l*l);l=C(z[f+16>>2]-k);p=C(l*l);l=C(z[f+20>>2]-m);l=C(n+C(p+C(l*l)));f=l>h;h=f?l:h;g=f?d:g;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=B(g,48)+b|0;f=v[d+4>>2];v[c+48>>2]=v[d>>2];v[c+52>>2]=f;f=v[d+44>>2];v[c+88>>2]=v[d+40>>2];v[c+92>>2]=f;f=v[d+36>>2];v[c+80>>2]=v[d+32>>2];v[c+84>>2]=f;f=v[d+28>>2];v[c+72>>2]=v[d+24>>2];v[c+76>>2]=f;i=v[d+20>>2];f=c- -64|0;v[f>>2]=v[d+16>>2];v[f+4>>2]=i;f=v[d+12>>2];v[c+56>>2]=v[d+8>>2];v[c+60>>2]=f;t[g+o|0]=1;d:{if(!e){break d}h=z[d+44>>2];f=v[a+76>>2];d=0;c=g;while(1){e:{if(w[d+o|0]){break e}i=B(d,48)+b|0;j=z[i+24>>2];k=C(z[f+24>>2]-j);n=C(k*k);k=z[i+16>>2];m=C(z[f+16>>2]-k);p=C(m*m);m=z[i+20>>2];l=C(z[f+20>>2]-m);j=C(z[f+72>>2]-j);D=C(j*j);j=C(z[f+64>>2]-k);k=C(j*j);j=C(z[f+68>>2]-m);if(!(C(n+C(p+C(l*l)))>C(D+C(k+C(j*j))))){break e}c=h>z[i+44>>2]?d:c}d=d+1|0;if((e|0)!=(d|0)){continue}break}if((c|0)==(g|0)){break d}b=B(c,48)+b|0;c=v[b+4>>2];e=v[a+76>>2];v[e+48>>2]=v[b>>2];v[e+52>>2]=c;c=v[b+44>>2];v[e+88>>2]=v[b+40>>2];v[e+92>>2]=c;c=v[b+36>>2];v[e+80>>2]=v[b+32>>2];v[e+84>>2]=c;c=v[b+28>>2];v[e+72>>2]=v[b+24>>2];v[e+76>>2]=c;g=v[b+20>>2];c=e- -64|0;v[c>>2]=v[b+16>>2];v[c+4>>2]=g;c=v[b+12>>2];v[e+56>>2]=v[b+8>>2];v[e+60>>2]=c}xa=o- -64|0;c=2}t[a+64|0]=c}function vx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),u=0,x=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=C(0),L=C(0),M=C(0),N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;Ba[v[v[a>>2]+52>>2]](a);N=v[a+452>>2];O=v[a+444>>2];I=v[a+448>>2];f=Ba[v[v[a>>2]+28>>2]](a)|0;g=v[a+448>>2];F=t[v[a+476>>2]]&1;G=F?0:6;v[d>>2]=f+G;J=G-6|0;v[c>>2]=J+B(g,6);if(!F){c=v[b+4>>2];v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=1065353216;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;f=v[d>>2];e=c+(f<<2)|0;v[e>>2]=0;v[e+4>>2]=1065353216;v[e+8>>2]=0;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;e=c+(f<<3)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+8>>2]=1065353216;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;e=c+B(f,12)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e+12>>2]=1065353216;v[e+16>>2]=0;v[e+20>>2]=0;e=c+(f<<4)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[e+16>>2]=1065353216;v[e+20>>2]=0;c=c+B(f,20)|0;v[c>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+20>>2]=1065353216;e=6}if(I>>>0>=2){P=v[a+372>>2];a=v[a+456>>2];g=v[d>>2];f=v[b+4>>2];d=e;q=1;while(1){m=B(q,160)+N|0;b=(q<<5)+O|0;r=v[b+16>>2];z[m+144>>2]=z[r+76>>2];c=v[b+24>>2];a:{b:{if(c){b=a+B(c,80)|0;break b}b=a;if(F){break a}}u=B(e,g);x=B(g,e+5|0);y=B(g,e+4|0);A=B(g,e+3|0);D=B(g,e+2|0);E=B(g,e|1);c=B(c,6)+J|0;H=B(c,g);b=w[b+76|0]+(v[b+72>>2]+G|0)|0;Q=B(g,c+2|0);R=B(g,c|1);S=B(g,c+5|0);T=B(g,c+4|0);U=B(g,c+3|0);c=0;while(1){k=z[f+(c+U<<2)>>2];j=z[m+120>>2];h=z[f+(c+T<<2)>>2];n=z[m+128>>2];l=z[m+124>>2];i=z[f+(c+S<<2)>>2];z[f+(c+u<<2)>>2]=z[f+(c+H<<2)>>2]+C(C(h*n)-C(l*i));z[f+(c+E<<2)>>2]=C(C(i*j)-C(n*k))+z[f+(c+R<<2)>>2];z[f+(c+D<<2)>>2]=C(C(k*l)-C(j*h))+z[f+(c+Q<<2)>>2];z[f+(c+A<<2)>>2]=k;z[f+(c+y<<2)>>2]=h;z[f+(c+x<<2)>>2]=i;V=b>>>0>c>>>0;c=c+1|0;if(V){continue}break}c=b+1|0;if(d>>>0<=c>>>0){break a}while(1){v[f+(c+u<<2)>>2]=0;v[f+(c+E<<2)>>2]=0;v[f+(c+D<<2)>>2]=0;v[f+(c+A<<2)>>2]=0;v[f+(c+y<<2)>>2]=0;v[f+(c+x<<2)>>2]=0;c=c+1|0;if(d>>>0>c>>>0){continue}break}}m=w[(a+B(q,80)|0)+76|0];if(m){u=B(e,g);x=B(g,e+5|0);y=B(g,e+4|0);A=B(g,e+3|0);D=B(g,e+2|0);E=B(g,e|1);H=B(q,76)+P|0;b=0;while(1){c=H+B(b,24)|0;K=z[c+8>>2];L=z[c+4>>2];M=z[c>>2];k=z[r+8>>2];j=z[c+20>>2];l=C(j+j);j=z[r>>2];h=z[c+12>>2];o=C(h+h);h=z[r+4>>2];i=z[c+16>>2];p=C(i+i);s=C(C(k*l)+C(C(j*o)+C(h*p)));i=z[r+12>>2];n=C(C(i*i)+C(-.5));z[f+(d+u<<2)>>2]=C(j*s)+C(C(o*n)+C(i*C(C(h*l)-C(p*k))));z[f+(d+E<<2)>>2]=C(h*s)+C(C(p*n)+C(i*C(C(k*o)-C(l*j))));z[f+(d+D<<2)>>2]=C(k*s)+C(C(l*n)+C(i*C(C(j*p)-C(o*h))));l=C(K+K);o=C(M+M);p=C(L+L);s=C(C(k*l)+C(C(j*o)+C(h*p)));z[f+(d+A<<2)>>2]=C(j*s)+C(C(o*n)+C(i*C(C(h*l)-C(p*k))));z[f+(d+y<<2)>>2]=C(h*s)+C(C(p*n)+C(i*C(C(k*o)-C(l*j))));z[f+(d+x<<2)>>2]=C(k*s)+C(C(l*n)+C(i*C(C(j*p)-C(o*h))));d=d+1|0;b=b+1|0;if((m|0)!=(b|0)){continue}break}}if(d>>>0>>0){b=B(e,g);r=B(g,e+5|0);m=B(g,e+4|0);u=B(g,e+3|0);x=B(g,e+2|0);y=B(g,e|1);c=d;while(1){v[f+(b+c<<2)>>2]=0;v[f+(c+y<<2)>>2]=0;v[f+(c+x<<2)>>2]=0;v[f+(c+u<<2)>>2]=0;v[f+(c+m<<2)>>2]=0;v[f+(c+r<<2)>>2]=0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}e=e+6|0;q=q+1|0;if((I|0)!=(q|0)){continue}break}}}function ZX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);c=xa-288|0;xa=c;v[c+272>>2]=0;v[c+264>>2]=0;v[c+268>>2]=0;v[c+256>>2]=0;v[c+260>>2]=0;F=z[d+20>>2];o=z[b+20>>2];G=z[d+24>>2];m=z[b+24>>2];k=z[e+52>>2];B=z[e+56>>2];D=z[f+4>>2];E=z[f>>2];I=z[f+8>>2];w=z[a+4>>2];q=z[d+12>>2];r=z[d>>2];H=z[d+16>>2];s=z[b+16>>2];p=z[d+4>>2];l=z[d+8>>2];n=z[e+48>>2];v[c+252>>2]=0;z[c+248>>2]=B;z[c+244>>2]=k;t[c+224|0]=0;v[c+220>>2]=3;v[c+192>>2]=0;v[c+196>>2]=0;v[c+200>>2]=0;v[c+204>>2]=0;z[c+240>>2]=n;k=k>=n?n:k;k=k<=B?k:B;B=C(k*C(.05000000074505806));z[c+216>>2]=B;z[c+212>>2]=B;z[c+208>>2]=k*C(.15000000596046448);v[c+172>>2]=0;B=C(-r);n=C(s-H);o=C(o-F);m=C(m-G);s=C(C(C(B*n)-C(o*p))-C(l*m));k=C(C(q*q)+C(-.5));y=C(C(C(q*C(C(p*n)-C(r*o)))+C(k*m))-C(l*s));y=C(y+y);z[c+168>>2]=y;A=C(C(C(k*o)+C(q*C(C(r*m)-C(l*n))))-C(p*s));A=C(A+A);z[c+164>>2]=A;v[c+156>>2]=0;z[c+152>>2]=y;z[c+148>>2]=A;z[c+176>>2]=w;v[c+108>>2]=0;z[c+104>>2]=y;z[c+100>>2]=A;n=C(C(C(k*n)+C(q*C(C(l*o)-C(p*m))))-C(r*s));n=C(n+n);z[c+96>>2]=n;v[c+124>>2]=4;z[c+160>>2]=n;z[c+144>>2]=n;t[c+128|0]=1;z[c+120>>2]=w;z[c+116>>2]=w;z[c+112>>2]=w;v[c+92>>2]=0;o=C(I*g);m=C(E*g);s=C(D*g);D=C(C(l*o)+C(C(r*m)+C(p*s)));E=C(C(l*D)+C(C(o*k)-C(q*C(C(r*s)-C(m*p)))));z[c+88>>2]=E+E;E=C(C(p*D)+C(C(s*k)-C(q*C(C(l*m)-C(o*r)))));z[c+84>>2]=E+E;o=C(C(r*D)+C(C(m*k)-C(q*C(C(p*o)-C(s*l)))));z[c+80>>2]=o+o;a=x[i>>1];v[c+28>>2]=0;z[c+24>>2]=y-z[c+200>>2];z[c+20>>2]=A-z[c+196>>2];z[c+16>>2]=n-z[c+192>>2];v[c+8>>2]=141148;v[c+12>>2]=c+96;v[c>>2]=141808;v[c+4>>2]=c+192;a=a&512;b=XX(c+8|0,c,c+16|0,c+256|0,c+80|0,c- -64|0,c+32|0,c+48|0,C(w+j),a>>>9|0);a:{if(!b){break a}j=C(-l);w=C(-p);u[h+12>>1]=2;D=z[c+64>>2];if(D<=z[c+272>>2]){if(a){u[h+12>>1]=3;g=z[c+56>>2];n=z[c+48>>2];o=z[c+52>>2];m=z[c+40>>2];s=z[c+32>>2];y=z[c+36>>2];z[h+40>>2]=D;A=C(C(l*m)+C(C(r*s)+C(p*y)));z[h+36>>2]=C(C(C(q*C(C(r*y)+C(s*w)))+C(k*m))+C(l*A))*C(-2);z[h+32>>2]=C(C(p*A)+C(C(k*y)+C(q*C(C(l*s)+C(m*B)))))*C(-2);z[h+28>>2]=C(C(r*A)+C(C(k*s)+C(q*C(C(p*m)+C(y*j)))))*C(-2);m=C(C(q*C(C(r*o)+C(n*w)))+C(k*g));w=C(C(l*g)+C(C(r*n)+C(p*o)));m=C(m+C(l*w));z[h+24>>2]=G+C(m+m);l=C(C(p*w)+C(C(k*o)+C(q*C(C(l*n)+C(g*B)))));z[h+20>>2]=F+C(l+l);g=C(C(r*w)+C(C(k*n)+C(q*C(C(p*g)+C(o*j)))));z[h+16>>2]=H+C(g+g);break a}v[h+40>>2]=0;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break a}u[h+12>>1]=3;n=z[c+56>>2];o=z[c+48>>2];m=z[c+52>>2];s=z[c+40>>2];y=z[c+32>>2];A=z[c+36>>2];z[h+40>>2]=D*g;g=C(C(l*s)+C(C(r*y)+C(p*A)));z[h+36>>2]=C(C(C(q*C(C(r*A)+C(y*w)))+C(k*s))+C(l*g))*C(-2);z[h+32>>2]=C(C(p*g)+C(C(k*A)+C(q*C(C(l*y)+C(s*B)))))*C(-2);z[h+28>>2]=C(C(r*g)+C(C(k*y)+C(q*C(C(p*s)+C(A*j)))))*C(-2);g=C(C(l*n)+C(C(r*o)+C(p*m)));w=C(C(C(q*C(C(r*m)+C(o*w)))+C(k*n))+C(l*g));z[h+24>>2]=G+C(w+w);l=C(C(p*g)+C(C(k*m)+C(q*C(C(l*o)+C(n*B)))));z[h+20>>2]=F+C(l+l);g=C(C(r*g)+C(C(k*o)+C(q*C(C(p*n)+C(m*j)))));z[h+16>>2]=H+C(g+g)}xa=c+288|0;return b|0}function QX(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=C(f);g=g|0;h=h|0;i=C(i);var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=0,X=0,Y=C(0),Z=C(0);a=xa-96|0;xa=a;G=v[c+32>>2];v[g+8>>2]=-1;I=w[G+54|0];W=w[G+55|0];G=v[G+56>>2];h=x[h>>1];JX(a+16|0,c+4|0,c+16|0);BV(a,b);H=C(z[a+12>>2]-i);z[a+12>>2]=H;z[g+40>>2]=f;a:{if(!I){h=0;break a}X=h&512;b=G+B(W,20)|0;q=z[d+12>>2];n=C(C(q*q)+C(-.5));j=z[d+8>>2];J=C(-j);m=z[d>>2];K=C(-m);o=z[d+4>>2];L=C(-o);M=z[a+44>>2];N=z[a+32>>2];O=z[a+48>>2];P=z[a+36>>2];h=0;Q=z[a+20>>2];R=z[a+40>>2];S=z[a+28>>2];T=z[a+16>>2];U=z[a+24>>2];p=z[a+8>>2];r=z[a+4>>2];s=z[a>>2];while(1){b:{A=z[e+8>>2];t=z[e>>2];E=z[e+4>>2];F=C(C(A*p)+C(C(t*s)+C(E*r)));c:{if(F>C(-1.0000000116860974e-7)&F>2];y=z[b+4>>2];D=z[b+8>>2];i=C(C(C(k*U)+C(y*P))+C(D*O));i=C(i+i);l=C(C(C(k*T)+C(y*S))+C(D*R));l=C(l+l);k=C(C(C(k*Q)+C(y*N))+C(D*M));k=C(k+k);y=C(C(j*i)+C(C(m*l)+C(o*k)));D=C(z[d+24>>2]+C(C(j*y)+C(C(i*n)+C(q*C(C(m*k)+C(l*L))))));V=C(z[d+16>>2]+C(C(m*y)+C(C(l*n)+C(q*C(C(o*i)+C(k*J))))));l=C(z[d+20>>2]+C(C(o*y)+C(C(k*n)+C(C(C(j*l)+C(i*K))*q))));i=C(H+C(C(D*p)+C(C(V*s)+C(r*l))));if(i<=C(0)){break b}i=C(C(-i)/F);if(!(i>C(0))|!(f>=i)){break c}z[g+36>>2]=p;z[g+32>>2]=r;z[g+28>>2]=s;z[g+24>>2]=D+C(A*i);z[g+20>>2]=l+C(E*i);z[g+16>>2]=V+C(t*i);u[g+12>>1]=3;z[g+40>>2]=i;h=1;f=i}b=b+12|0;I=I-1|0;if(I){continue}break a}break}if(X){u[g+12>>1]=3;b=xa-80|0;xa=b;e=v[c+32>>2];JX(b,c+4|0,c+16|0);r=z[d+8>>2];c=v[e+56>>2]+B(w[e+55|0],20)|0;i=z[c>>2];H=z[b+8>>2];q=z[c+4>>2];J=z[b+20>>2];j=z[c+8>>2];K=z[b+32>>2];f=C(C(C(i*H)+C(q*J))+C(j*K));f=C(f+f);s=z[d>>2];L=z[b>>2];M=z[b+12>>2];N=z[b+24>>2];n=C(C(C(i*L)+C(q*M))+C(j*N));n=C(n+n);O=z[b+4>>2];P=z[b+16>>2];Q=z[b+28>>2];i=C(C(C(i*O)+C(q*P))+C(j*Q));j=C(i+i);l=z[d+4>>2];m=C(C(r*f)+C(C(s*n)+C(j*l)));R=z[a+12>>2];S=z[d+24>>2];k=z[d+12>>2];A=C(C(k*k)+C(-.5));i=C(S+C(C(r*m)+C(C(f*A)+C(k*C(C(s*j)-C(n*l))))));E=z[a+8>>2];T=z[d+16>>2];q=C(T+C(C(s*m)+C(C(n*A)+C(k*C(C(l*f)-C(j*r))))));F=z[a>>2];U=z[d+20>>2];n=C(U+C(C(l*m)+C(C(j*A)+C(k*C(C(r*n)-C(f*s))))));y=z[a+4>>2];f=C(R+C(C(i*E)+C(C(q*F)+C(n*y))));d=1;h=w[e+54|0];if(h>>>0>1){V=C(-l);Y=C(-s);Z=C(-r);while(1){e=c+B(d,12)|0;j=z[e>>2];m=z[e+4>>2];t=z[e+8>>2];o=C(C(C(H*j)+C(J*m))+C(K*t));o=C(o+o);p=C(C(C(L*j)+C(M*m))+C(N*t));p=C(p+p);j=C(C(C(O*j)+C(P*m))+C(Q*t));t=C(j+j);D=C(C(r*o)+C(C(s*p)+C(l*t)));j=C(S+C(C(r*D)+C(C(o*A)+C(k*C(C(s*t)+C(p*V))))));m=C(T+C(C(s*D)+C(C(p*A)+C(k*C(C(l*o)+C(t*Z))))));o=C(U+C(C(l*D)+C(C(t*A)+C(k*C(C(r*p)+C(o*Y))))));p=C(R+C(C(j*E)+C(C(m*F)+C(y*o))));if(p>2]=f;z[g+28>>2]=F;z[g+36>>2]=E;z[g+32>>2]=y;j=z[a>>2];m=z[a+4>>2];z[g+24>>2]=i-C(f*z[a+8>>2]);z[g+20>>2]=n-C(f*m);z[g+16>>2]=q-C(f*j);xa=b+80|0;h=1;break a}u[g+12>>1]=2;v[g+40>>2]=0;z[g+36>>2]=-A;z[g+32>>2]=-E;z[g+28>>2]=-t;h=1}xa=a+96|0;return h&1}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=C(0),i=0,k=0;a=a+16|0;f=v[a+28>>2];if(f){while(1){c=a+B(e,24)|0;z[c+160>>2]=z[c+160>>2]-z[b>>2];z[c+164>>2]=z[c+164>>2]-z[b+4>>2];z[c+168>>2]=z[c+168>>2]-z[b+8>>2];z[c+172>>2]=z[c+172>>2]-z[b>>2];z[c+176>>2]=z[c+176>>2]-z[b+4>>2];z[c+180>>2]=z[c+180>>2]-z[b+8>>2];e=e+1|0;if((f|0)!=(e|0)){continue}break}}z[a+656>>2]=z[a+656>>2]-z[b>>2];z[a+660>>2]=z[a+660>>2]-z[b+4>>2];z[a+664>>2]=z[a+664>>2]-z[b+8>>2];e=0;f=v[a+644>>2];c=(a+656|0)+(f<<2)|0;g=z[c>>2];h=z[c+16>>2];c=(p(C(g-h)),j(2));v[a+668>>2]=(c|0)<0?c^-1:c|-2147483648;c=(p(C(g+h)),j(2));v[a+684>>2]=(c|0)<0?c^-1:c|-2147483648;d=v[a>>2];if(d){i=v[a+8>>2];while(1){c=i+B(e,24)|0;z[c>>2]=z[c>>2]-z[b>>2];z[c+4>>2]=z[c+4>>2]-z[b+4>>2];z[c+8>>2]=z[c+8>>2]-z[b+8>>2];z[c+12>>2]=z[c+12>>2]-z[b>>2];z[c+16>>2]=z[c+16>>2]-z[b+4>>2];z[c+20>>2]=z[c+20>>2]-z[b+8>>2];e=e+1|0;if((d|0)!=(e|0)){continue}break}}d=v[a+636>>2];if(d){i=v[a+20>>2];k=f<<2;e=0;while(1){c=i+(e<<5)|0;z[c>>2]=z[c>>2]-z[b>>2];z[c+4>>2]=z[c+4>>2]-z[b+4>>2];z[c+8>>2]=z[c+8>>2]-z[b+8>>2];f=c+k|0;g=z[f>>2];h=z[f+16>>2];f=(p(C(g+h)),j(2));v[c+28>>2]=(f|0)<0?f^-1:f|-2147483648;f=c;c=(p(C(g-h)),j(2));v[f+12>>2]=(c|0)<0?c^-1:c|-2147483648;e=e+1|0;if((d|0)!=(e|0)){continue}break}}z[a+736>>2]=z[a+736>>2]-z[b>>2];z[a+740>>2]=z[a+740>>2]-z[b+4>>2];z[a+744>>2]=z[a+744>>2]-z[b+8>>2];z[a+768>>2]=z[a+768>>2]-z[b>>2];z[a+772>>2]=z[a+772>>2]-z[b+4>>2];z[a+776>>2]=z[a+776>>2]-z[b+8>>2];z[a+800>>2]=z[a+800>>2]-z[b>>2];z[a+804>>2]=z[a+804>>2]-z[b+4>>2];z[a+808>>2]=z[a+808>>2]-z[b+8>>2];z[a+832>>2]=z[a+832>>2]-z[b>>2];z[a+836>>2]=z[a+836>>2]-z[b+4>>2];z[a+840>>2]=z[a+840>>2]-z[b+8>>2];z[a+864>>2]=z[a+864>>2]-z[b>>2];z[a+868>>2]=z[a+868>>2]-z[b+4>>2];z[a+872>>2]=z[a+872>>2]-z[b+8>>2];f=0;e=0;while(1){c=a+B(e,224)|0;z[c+960>>2]=z[c+960>>2]-z[b>>2];z[c+964>>2]=z[c+964>>2]-z[b+4>>2];z[c+968>>2]=z[c+968>>2]-z[b+8>>2];z[c+992>>2]=z[c+992>>2]-z[b>>2];z[c+996>>2]=z[c+996>>2]-z[b+4>>2];z[c+1e3>>2]=z[c+1e3>>2]-z[b+8>>2];d=c+1024|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+1028|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+1032|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+1056|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+1060|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+1064|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+1088|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+1092|0;z[d>>2]=z[d>>2]-z[b+4>>2];c=c+1096|0;z[c>>2]=z[c>>2]-z[b+8>>2];e=e+1|0;if((e|0)!=5){continue}break}while(1){e=0;while(1){c=(a+B(f,1120)|0)+B(e,224)|0;d=c+2080|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+2084|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+2088|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+2112|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+2116|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+2120|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+2144|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+2148|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+2152|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+2176|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+2180|0;z[d>>2]=z[d>>2]-z[b+4>>2];d=c+2184|0;z[d>>2]=z[d>>2]-z[b+8>>2];d=c+2208|0;z[d>>2]=z[d>>2]-z[b>>2];d=c+2212|0;z[d>>2]=z[d>>2]-z[b+4>>2];c=c+2216|0;z[c>>2]=z[c>>2]-z[b+8>>2];e=e+1|0;if((e|0)!=5){continue}break}f=f+1|0;if((f|0)!=5){continue}break}}function j0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=0,l=C(0),m=C(0),n=0,o=0,p=C(0),q=C(0),r=C(0),s=C(0),y=0,A=0,D=0,E=0,F=0,H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=0;e=xa-160|0;xa=e;v[e+120>>2]=0;v[e+124>>2]=0;v[e+128>>2]=0;v[e+132>>2]=0;v[e+112>>2]=0;v[e+116>>2]=0;u[e+108>>1]=0;v[e+104>>2]=-1;v[e+96>>2]=0;v[e+100>>2]=0;v[e+144>>2]=0;v[e+136>>2]=2139095039;v[e+140>>2]=0;a:{if(!b){break a}D=a- -64|0;E=a+224|0;F=a+208|0;H=1;while(1){j=v[(y<<2)+c>>2];N=j>>>5|0;O=j>>>1&15;A=0;while(1){I=A+N|0;j=B(I,3);o=v[a+16>>2];b:{if(v[a+12>>2]){k=o+(j<<1)|0;j=x[k+4>>1];o=x[k+2>>1];k=x[k>>1];break b}k=o+(j<<2)|0;j=v[k+8>>2];o=v[k+4>>2];k=v[k>>2]}n=v[a+20>>2];v[e+92>>2]=j;v[e+84>>2]=k;v[e+88>>2]=o;j=n+B(j,12)|0;f=z[j>>2];o=n+B(o,12)|0;g=z[o>>2];k=n+B(k,12)|0;h=z[k>>2];l=z[j+4>>2];i=z[o+4>>2];m=z[k+4>>2];p=z[j+8>>2];q=z[o+8>>2];r=z[k+8>>2];J=z[a+60>>2];K=z[a+192>>2];L=z[a+196>>2];M=z[a+200>>2];v[e+44>>2]=0;s=q>r?r:q;z[e+40>>2]=(p>s?s:p)-M;s=i>m?m:i;z[e+36>>2]=(l>s?s:l)-L;s=g>h?h:g;z[e+32>>2]=(f>s?s:f)-K;v[e+28>>2]=0;q=q>2]=M+(p>2]=L+(i>l?i:l);g=g>2]=K+(f>2]=J+C(C(G(J,C(1)))*C(.0010000000474974513));n=e- -64|0;f=z[E>>2];g=f>C(0)?f:C(-f);g=g>C(9.999999717180685e-10)?g:C(9.999999717180685e-10);g=C(C(1)/(f>=C(0)?g:C(-g)));h=z[F>>2];f=C(g*C(z[e+16>>2]-h));g=C(g*C(z[e+32>>2]-h));p=f>2];l=h>C(0)?h:C(-h);l=l>C(9.999999717180685e-10)?l:C(9.999999717180685e-10);l=C(C(1)/(h>=C(0)?l:C(-l)));i=z[F+4>>2];h=C(l*C(z[e+20>>2]-i));l=C(l*C(z[e+36>>2]-i));q=h>2];m=i>C(0)?i:C(-i);m=m>C(9.999999717180685e-10)?m:C(9.999999717180685e-10);m=C(C(1)/(i>=C(0)?m:C(-m)));r=z[F+8>>2];i=C(m*C(z[e+24>>2]-r));m=C(m*C(z[e+40>>2]-r));r=ir?q:r;p=p>q?p:q;z[n>>2]=p>C(0)?p:C(0);p=z[e>>2];i=i>m?i:m;h=h>l?h:l;h=h>i?i:h;f=f>g?f:g;f=f>h?h:f;f=f>p?p:f;z[e+48>>2]=f;if(f>z[n>>2]){f=z[a+60>>2];z[e+136>>2]=f;v[e+140>>2]=0;v[e+144>>2]=0;u[e+108>>1]=1;v[e+104>>2]=I;c:{if(w[a+177|0]){if(!(f>2])){break c}n=v[e+100>>2];v[D>>2]=v[e+96>>2];v[D+4>>2]=n;v[D+8>>2]=v[e+104>>2];u[a+76>>1]=1;z[a+80>>2]=z[e+112>>2];z[a+84>>2]=z[e+116>>2];z[a+88>>2]=z[e+120>>2];z[a+92>>2]=z[e+124>>2];z[a+96>>2]=z[e+128>>2];g=z[e+132>>2];z[a+104>>2]=f;z[a+100>>2]=g;v[a+124>>2]=v[e+156>>2];n=v[e+152>>2];v[a+116>>2]=v[e+148>>2];v[a+120>>2]=n;n=v[e+144>>2];v[a+108>>2]=v[e+140>>2];v[a+112>>2]=n;g=z[d>>2];z[d>>2]=f>2]=z[k>>2];z[a+132>>2]=z[k+4>>2];z[a+136>>2]=z[k+8>>2];z[a+140>>2]=z[o>>2];z[a+144>>2]=z[o+4>>2];z[a+148>>2]=z[o+8>>2];z[a+152>>2]=z[j>>2];z[a+156>>2]=z[j+4>>2];z[a+160>>2]=z[j+8>>2];v[a+164>>2]=v[e+84>>2];v[a+168>>2]=v[e+88>>2];j=v[e+92>>2];t[a+176|0]=1;v[a+172>>2]=j;break c}z[e+64>>2]=z[d>>2];n=v[a+8>>2];if(!(Ba[v[v[n>>2]>>2]](n,e+96|0,k,o,j,e- -64|0,e+84|0)|0)){break a}f=z[e+64>>2];if(!(f>2])){break c}z[d>>2]=f;z[a+60>>2]=f}if(!v[v[a+8>>2]+4>>2]){break a}}j=(A|0)==(O|0);A=A+1|0;if(!j){continue}break}y=y+1|0;H=y>>>0>>0;if((b|0)!=(y|0)){continue}break}}xa=e+160|0;return(H^-1)&1}function Su(a){var b=0,c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),A=C(0),B=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0);e=xa-48|0;xa=e;i=v[a+4>>2];B=v[a+268>>2];a:{if(!(B&1048576)){z[a+208>>2]=z[a+32>>2];b=v[a+40>>2];v[a+212>>2]=v[a+36>>2];v[a+216>>2]=b;b=v[a+48>>2];v[a+220>>2]=v[a+44>>2];v[a+224>>2]=b;b=v[a+56>>2];v[a+228>>2]=v[a+52>>2];v[a+232>>2]=b;break a}if(!(B&2097152)){BG(a+16|0,a+208|0);break a}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],i>>>24&15);v[a+8>>2]=c}D=z[c+148>>2];E=z[c+156>>2];F=z[c+152>>2];G=z[c+144>>2];O=z[a+48>>2];f=z[a+52>>2];j=z[a- -64>>2];d=C(z[c+160>>2]-z[a+80>>2]);p=C(d+d);d=C(z[c+164>>2]-z[a+84>>2]);q=C(d+d);k=z[a+68>>2];l=z[a+72>>2];d=C(z[c+168>>2]-z[a+88>>2]);r=C(d+d);s=C(C(C(C(-j)*p)-C(q*k))-C(l*r));m=z[a+40>>2];g=z[a+76>>2];A=C(C(g*g)+C(-.5));d=C(C(C(r*A)+C(g*C(C(k*p)-C(j*q))))-C(l*s));H=C(d+d);n=z[a+32>>2];d=C(C(C(p*A)+C(g*C(C(l*q)-C(k*r))))-C(j*s));I=C(d+d);d=C(C(C(q*A)+C(g*C(C(j*r)-C(l*p))))-C(k*s));J=C(d+d);o=z[a+36>>2];N=C(C(m*H)+C(C(n*I)+C(J*o)));h=z[a+44>>2];d=C(C(h*h)+C(-.5));p=C(C(C(m*N)+C(C(H*d)+C(C(C(n*J)-C(I*o))*h)))+z[a+56>>2]);z[e+40>>2]=p;q=C(f+C(C(o*N)+C(C(J*d)+C(h*C(C(m*I)-C(H*n))))));z[e+36>>2]=q;K=C(C(l*F)+C(C(k*D)+C(C(g*E)+C(j*G))));L=C(C(D*l)+C(C(C(g*G)-C(E*j))-C(k*F)));M=C(C(F*j)+C(C(C(g*D)-C(E*k))-C(l*G)));f=C(C(G*k)+C(C(C(g*F)-C(E*l))-C(j*D)));r=C(C(C(C(h*K)-C(n*L))-C(o*M))-C(m*f));z[e+28>>2]=r;s=C(C(C(n*M)+C(C(h*f)+C(K*m)))-C(L*o));z[e+24>>2]=s;A=C(C(C(m*L)+C(C(h*M)+C(K*o)))-C(f*n));z[e+20>>2]=A;f=C(C(C(o*f)+C(C(h*L)+C(n*K)))-C(M*m));z[e+16>>2]=f;d=C(O+C(C(n*N)+C(C(I*d)+C(h*C(C(o*H)-C(J*m))))));z[e+32>>2]=d;z[a+232>>2]=p;z[a+228>>2]=q;z[a+224>>2]=d;z[a+220>>2]=r;z[a+216>>2]=s;z[a+212>>2]=A;z[a+208>>2]=f;BG(a+16|0,e+16|0)}b:{if(!(i&1)){break b}b=v[a+8>>2];if(!b){b=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}b=w[b|0]&8;i=w[a+24|0]&8;if(!(b|!i)){xu(v[a>>2],a,1);break b}if(!b|i){break b}wu(v[a>>2],a,1)}c:{if(!(B&-131072001)){break c}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=c}b=v[a+268>>2];if(b&1){LG(a+16|0,z[c+92>>2]);b=v[a+268>>2]}if(b&2){MG(a+16|0,c+96|0);b=v[a+268>>2]}if(b&4){NG(a+16|0,z[c+108>>2]);b=v[a+268>>2]}if(b&8){OG(a+16|0,z[c+112>>2]);b=v[a+268>>2]}if(b&16){PG(a+16|0,z[c+116>>2]);b=v[a+268>>2]}if(b&32){QG(a+16|0,z[c+120>>2]);b=v[a+268>>2]}if(b&64){WG(a+16|0,z[c+124>>2]);b=v[a+268>>2]}if(b&512){i=x[c+136>>1];u[a+62>>1]=i;b=v[a+16>>2];if(b){u[b+94>>1]=i}b=v[a+268>>2]}if(b&256){z[a+124>>2]=z[c+132>>2]}if(b&1024){EG(a+16|0,c+144|0);b=v[a+268>>2]}if(b&4096){XG(a+16|0,z[c+176>>2]);b=v[a+268>>2]}if(b&2048){z[a+108>>2]=z[c+172>>2]}if(b&8192){UG(a+16|0,z[c+180>>2]);b=v[a+268>>2]}if(b&128){z[a+92>>2]=z[c+128>>2]}if(!(B&16384)){break c}b=v[v[a>>2]+2428>>2];t[e+8|0]=w[c+268|0];RG(a+16|0,b,e+8|0)}Pu(a);b=a+16|0;d:{if(!(B&33554432)){b=v[b>>2];if(b){b=y[b+152>>2]>4294967293}else{b=1}if(y[a+4>>2]>3221225471){break d}v[a+264>>2]=b;break d}SG(b)}Vu(a);v[a+8>>2]=0;v[a+268>>2]=0;v[a+4>>2]=w[a+7|0]<<24;xa=e+48|0}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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0,L=0;h=xa+-64|0;xa=h;z[h+32>>2]=z[d>>2];z[h+36>>2]=z[d+4>>2];z[h+40>>2]=z[d+8>>2];z[h+44>>2]=z[d+12>>2];z[h+48>>2]=z[c>>2];z[h+52>>2]=z[c+4>>2];z[h+56>>2]=z[c+8>>2];z[h>>2]=z[g>>2];z[h+4>>2]=z[g+4>>2];z[h+8>>2]=z[g+8>>2];z[h+12>>2]=z[g+12>>2];z[h+16>>2]=z[f>>2];z[h+20>>2]=z[f+4>>2];z[h+24>>2]=z[f+8>>2];g=xa-16|0;xa=g;c=v[37696];d=c+12|0;c=(G=d,H=84,I=Ba[v[v[c>>2]+20>>2]](c)|0?28139:63804,J=6649,L=45,F=v[v[d>>2]+8>>2],Ba[F](G|0,H|0,I|0,J|0,L|0)|0);E=Ba[v[v[a>>2]+20>>2]](a)|0;u[g+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[g+8>>1];u[c+4>>1]=260;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=146692;v[c>>2]=146468;v[c+8>>2]=0;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,112,24422,17141,454)|0;j=z[h+44>>2];l=z[h+40>>2];m=z[h+32>>2];i=z[h+36>>2];r=v[h+52>>2];s=v[h+48>>2];z[c+44>>2]=z[h+56>>2];v[c+36>>2]=s;v[c+40>>2]=r;k=i;i=C(C(1)/C(K(C(C(j*j)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+24>>2]=k*i;z[c+28>>2]=l*i;z[c+32>>2]=j*i;z[c+20>>2]=m*i;j=z[h+12>>2];l=z[h+8>>2];m=z[h>>2];i=z[h+4>>2];r=v[h+20>>2];s=v[h+16>>2];z[c+72>>2]=z[h+24>>2];D=c- -64|0;v[D>>2]=s;v[D+4>>2]=r;k=i;i=C(C(1)/C(K(C(C(j*j)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+52>>2]=k*i;z[c+56>>2]=l*i;z[c+60>>2]=j*i;z[c+48>>2]=m*i;Z4(f,b);q=z[h+52>>2];t=z[h+56>>2];w=z[h+48>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];k=z[h+40>>2];m=z[f+4>>2];n=z[h+36>>2];j=z[f+12>>2];o=z[h+44>>2];i=z[f>>2];p=z[h+32>>2];z[d+28>>2]=C(l*k)+C(C(m*n)+C(C(j*o)+C(i*p)));z[d+24>>2]=C(p*m)+C(C(C(j*k)-C(o*l))-C(i*n));z[d+20>>2]=C(k*i)+C(C(C(j*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(j*p)-C(o*i))-C(m*k));k=C(w-B);k=C(k+k);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*k)-C(n*m))-C(l*o));q=C(C(j*j)+C(-.5));z[d+40>>2]=C(C(o*q)+C(j*C(C(m*k)-C(i*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(j*C(C(i*o)-C(l*k))))-C(m*p);z[d+32>>2]=C(C(k*q)+C(j*C(C(l*n)-C(m*o))))-C(i*p);Z4(f,e);q=z[h+20>>2];t=z[h+24>>2];w=z[h+16>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];k=z[h+8>>2];m=z[f+4>>2];n=z[h+4>>2];j=z[f+12>>2];o=z[h+12>>2];i=z[f>>2];p=z[h>>2];z[d+56>>2]=C(l*k)+C(C(m*n)+C(C(j*o)+C(i*p)));z[d+52>>2]=C(p*m)+C(C(C(j*k)-C(o*l))-C(i*n));z[d+48>>2]=C(k*i)+C(C(C(j*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(j*p)-C(o*i))-C(m*k));k=C(w-B);k=C(k+k);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*k)-C(n*m))-C(l*o));q=C(C(j*j)+C(-.5));z[d+68>>2]=C(C(o*q)+C(j*C(C(m*k)-C(i*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(j*C(C(i*o)-C(l*k))))-C(m*p);z[d+60>>2]=C(C(k*q)+C(j*C(C(l*n)-C(m*o))))-C(i*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;v[c+12>>2]=146364;v[c>>2]=146132;d=v[c+80>>2];v[d+80>>2]=0;v[d+84>>2]=0;v[d+92>>2]=0;v[d+96>>2]=0;j=z[E>>2];u[d+100>>1]=2;z[d+88>>2]=j*C(.02500000037252903);a=Ba[v[v[a>>2]+108>>2]](a,b,e,c+12|0,146108,112)|0;v[c+76>>2]=a;if(!a){Ba[v[v[c>>2]+16>>2]](c);c=0}xa=g+16|0;xa=h- -64|0;return c|0}function ww(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),D=C(0),E=0,F=0,G=C(0),H=C(0),I=0,J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0);E=xa-1280|0;xa=E;I=x[b+6>>1]+b|0;f=x[b+18>>1]+b|0;J=f+144|0;k=C(-z[e+8>>2]);n=C(-z[e+4>>2]);p=C(-z[e>>2]);h=C(-z[d+8>>2]);i=C(-z[d+4>>2]);j=C(-z[d>>2]);if(c){while(1){F=(c<<5)+I|0;l=z[F+24>>2];q=z[F+20>>2];m=z[F+16>>2];g=(E+256|0)+(r<<4)|0;v[g+12>>2]=0;o=C(k+C(C(j*q)-C(m*i)));z[g+8>>2]=o;m=C(n+C(C(h*m)-C(l*j)));z[g+4>>2]=m;l=C(p+C(C(i*l)-C(q*h)));z[g>>2]=l;g=B(c,160)+J|0;u=z[g+16>>2];y=z[g+80>>2];A=z[g+48>>2];D=z[g+20>>2];G=z[g+84>>2];H=z[g+52>>2];q=z[F+8>>2];K=z[g+8>>2];L=z[g+72>>2];M=z[g+40>>2];N=z[g+24>>2];O=z[g+88>>2];P=z[g+56>>2];s=z[F>>2];Q=z[g+4>>2];R=z[g+68>>2];S=z[g+36>>2];t=z[F+4>>2];T=z[g>>2];U=z[g+64>>2];V=z[g+32>>2];v[(r<<2)+E>>2]=c;i=C(C(C(i-C(o*R))-C(m*S))-C(l*Q));j=C(C(C(j-C(o*U))-C(m*V))-C(l*T));k=C(C(C(C(k-C(o*O))-C(m*P))-C(l*N))+C(C(s*i)-C(t*j)));h=C(C(C(h-C(o*L))-C(m*M))-C(l*K));n=C(C(C(C(n-C(o*G))-C(m*H))-C(l*D))+C(C(q*j)-C(s*h)));p=C(C(C(C(p-C(o*y))-C(m*A))-C(l*u))+C(C(t*h)-C(i*q)));r=r+1|0;c=w[(b+c|0)- -64|0];if(c){continue}break}v[d+12>>2]=0;z[d+8>>2]=h;z[d+4>>2]=i;z[d>>2]=j;v[e+12>>2]=0;z[e+8>>2]=k;z[e+4>>2]=n;z[e>>2]=p}q=z[f+88>>2];t=z[f+80>>2];s=z[f+84>>2];o=C(-C(C(C(q*h)+C(C(t*j)+C(i*s)))+C(C(z[f+136>>2]*k)+C(C(z[f+104>>2]*p)+C(n*z[f+120>>2])))));u=z[f+72>>2];y=z[f- -64>>2];A=z[f+68>>2];m=C(-C(C(C(u*h)+C(C(y*j)+C(i*A)))+C(C(z[f+132>>2]*k)+C(C(z[f+100>>2]*p)+C(n*z[f+116>>2])))));D=z[f+56>>2];G=z[f+48>>2];H=z[f+52>>2];l=C(-C(C(C(D*h)+C(C(G*j)+C(i*H)))+C(C(z[f+128>>2]*k)+C(C(z[f+96>>2]*p)+C(n*z[f+112>>2])))));q=C(-C(C(C(z[f+40>>2]*h)+C(C(z[f+8>>2]*j)+C(i*z[f+24>>2])))+C(C(q*k)+C(C(D*p)+C(n*u)))));s=C(-C(C(C(z[f+36>>2]*h)+C(C(z[f+4>>2]*j)+C(i*z[f+20>>2])))+C(C(s*k)+C(C(H*p)+C(n*A)))));i=C(-C(C(C(z[f+32>>2]*h)+C(C(z[f>>2]*j)+C(i*z[f+16>>2])))+C(C(t*k)+C(C(G*p)+C(n*y)))));if(r){while(1){r=r-1|0;b=v[(r<<2)+E>>2];c=(b<<5)+I|0;j=z[c>>2];k=z[c+4>>2];h=C(q-C(C(j*m)-C(l*k)));y=z[c+16>>2];b=B(b,160)+J|0;n=C(k*o);k=z[c+8>>2];i=C(i-C(n-C(m*k)));j=C(s-C(C(k*l)-C(o*j)));d=(E+256|0)+(r<<4)|0;k=z[d+8>>2];n=z[d>>2];p=z[d+4>>2];t=C(C(C(C(h*z[b+40>>2])+C(C(z[b+32>>2]*i)+C(j*z[b+36>>2])))+C(C(z[b+56>>2]*o)+C(C(z[b+48>>2]*l)+C(m*z[b+52>>2]))))+C(C(z[b+132>>2]*k)+C(C(z[b+100>>2]*n)+C(p*z[b+116>>2]))));u=C(C(C(C(h*z[b+8>>2])+C(C(z[b>>2]*i)+C(z[b+4>>2]*j)))+C(C(z[b+24>>2]*o)+C(C(z[b+16>>2]*l)+C(m*z[b+20>>2]))))+C(C(z[b+128>>2]*k)+C(C(z[b+96>>2]*n)+C(p*z[b+112>>2]))));A=z[c+20>>2];q=C(h-C(C(y*t)-C(u*A)));D=z[c+24>>2];h=C(C(C(C(h*z[b+72>>2])+C(C(z[b+64>>2]*i)+C(j*z[b+68>>2])))+C(C(z[b+88>>2]*o)+C(C(z[b+80>>2]*l)+C(m*z[b+84>>2]))))+C(C(z[b+136>>2]*k)+C(C(z[b+104>>2]*n)+C(p*z[b+120>>2]))));s=C(j-C(C(D*u)-C(h*y)));i=C(i-C(C(A*h)-C(t*D)));o=C(o-h);m=C(m-t);l=C(l-u);if(r){continue}break}}z[a+16>>2]=l;v[a+12>>2]=0;z[a+8>>2]=q;z[a+4>>2]=s;z[a>>2]=i;v[a+28>>2]=0;z[a+24>>2]=o;z[a+20>>2]=m;xa=E+1280|0}function sz(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;i=v[v[a+32>>2]>>2];k=v[i+11868>>2];h=v[i+11880>>2];m=k+h|0;s=v[i+11956>>2];a:{if(!k){break a}p=w[a+44|0]?1:4;j=v[v[i+11892>>2]>>2];while(1){b=j-g|0;b=b>>>0

>>0?b:p;b:{if(!b){d=0;break b}n=v[i+11964>>2]+(f<<3)|0;d=1;q=v[i+11960>>2];c=q+(g<<5)|0;c:{if(x[c+8>>1]!=65535|x[c+10>>1]!=65535){break c}o=x[c+22>>1];d:{if((o|0)!=1){if((l|0)==-1|(o|0)!=2){break c}if(b>>>0>1){break d}break c}if((l|0)==-1|b>>>0<2){break c}}c=q+(g+1<<5)|0;if((o|0)!=x[c+22>>1]|x[c+8>>1]!=65535|x[c+10>>1]!=65535){break c}d=b;e=b&65535;if(e>>>0<3){break c}d=2;c=q+(g+2<<5)|0;if((o|0)!=x[c+22>>1]|x[c+8>>1]!=65535|x[c+10>>1]!=65535){break c}d=b;if(e>>>0<4){break c}d=3;c=q+(g+3<<5)|0;if((o|0)!=x[c+22>>1]|x[c+8>>1]!=65535|x[c+10>>1]!=65535){break c}d=b;if(e>>>0<5){break c}d=4;c=q+(g+4<<5)|0;if((o|0)!=x[c+22>>1]){break c}d=(x[c+8>>1]&x[c+10>>1])!=65535?4:b}f=f+1|0;v[n>>2]=g;u[n+4>>1]=d;r=r+1|0}g=(d&65535)+g|0;if(!((k|0)==(j|0)|(j|0)!=(g|0))){b=v[i+11892>>2];v[b+(l<<2)>>2]=r;l=l+1|0;j=v[b+(l<<2)>>2];r=0}if(g>>>0>>0){continue}break}if(!k){break a}v[v[i+11892>>2]+(l<<2)>>2]=r}v[i+11896>>2]=v[i+12104>>2];c=f;e:{if((m|0)==(s|0)){break e}b=s-m|0;n=b&3;e=v[i+11964>>2];j=0;g=0;if((s+(k^-1)|0)-h>>>0>=3){b=b&-4;d=0;while(1){h=e+(c<<3)|0;u[h+4>>1]=1;v[h>>2]=g+k;u[h+12>>1]=1;v[h+8>>2]=(g|1)+k;u[h+20>>1]=1;v[h+16>>2]=(g|2)+k;u[h+28>>1]=1;v[h+24>>2]=(g|3)+k;g=g+4|0;c=c+4|0;d=d+4|0;if((b|0)!=(d|0)){continue}break}}if(!n){break e}while(1){b=e+(c<<3)|0;u[b+4>>1]=1;v[b>>2]=g+k;g=g+1|0;c=c+1|0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}v[i+12072>>2]=f;v[i+11968>>2]=c;v[i+12076>>2]=c-f;q=v[i+11960>>2];b=v[a+16>>2];b=Ba[v[v[b>>2]+4>>2]](b)|0;d=Ba[v[v[b>>2]+4>>2]](b)|0;b=c+63|0;if(b>>>0>=64){b=b>>>6|0;h=b>>>0>>0?c+15>>>4|0:b;o=((h+c|0)-1>>>0)/(h>>>0)|0;f=h;l=0;while(1){b=h-l|0;b=b>>>0<64?b:64;r=wr(v[v[a+28>>2]+584>>2],b<<6);if(b){s=f>>>0<64?f:64;d=0;while(1){j=v[a+28>>2];m=v[j+452>>2];p=v[a+40>>2];n=v[j+600>>2];e=v[j+604>>2];b=r+(d<<6)|0;v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=n;v[b+12>>2]=e;e=B(o,d+l|0);v[b+52>>2]=e;v[b+48>>2]=p;v[b+44>>2]=j;v[b+40>>2]=i;v[b+36>>2]=m;v[b+32>>2]=q;v[b+28>>2]=k;v[b>>2]=129004;e=e+o|0;v[b+56>>2]=c>>>0>e>>>0?e:c;e=v[a+20>>2];v[b+20>>2]=e;v[b+24>>2]=1;if(e){Ba[v[v[e>>2]+16>>2]](e);v[b+16>>2]=v[v[b+20>>2]+16>>2];e=v[b>>2]}else{e=129004}Ba[v[e+20>>2]](b);d=d+1|0;if((s|0)!=(d|0)){continue}break}}f=f+-64|0;l=l- -64|0;if(h>>>0>l>>>0){continue}break}}p=v[v[a+32>>2]+8>>2]&2147483647;if(p){d=0;while(1){b=wr(v[v[a+28>>2]+584>>2],56);n=v[i+11936>>2];m=v[a+28>>2];e=v[m+452>>2];c=v[a+40>>2];h=v[m+600>>2];f=v[m+604>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=h;v[b+12>>2]=f;v[b+48>>2]=c;v[b+44>>2]=m;v[b+40>>2]=i;v[b+36>>2]=e;f=p-d|0;v[b+32>>2]=f>>>0<32?f:32;v[b+28>>2]=n+(d<<2);v[b>>2]=129060;f=v[a+20>>2];v[b+20>>2]=f;v[b+24>>2]=1;if(f){Ba[v[v[f>>2]+16>>2]](f);v[b+16>>2]=v[v[b+20>>2]+16>>2];f=v[b>>2]}else{f=129060}Ba[v[f+20>>2]](b);d=d+32|0;if(p>>>0>d>>>0){continue}break}}}function OO(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,u=0,x=0;l=32;d=xa-32|0;xa=d;t[d+12|0]=0;g=d-128|0;xa=g;v[d+8>>2]=g;h=b-1|0;a:{if((h|0)<=0){break a}while(1){b:{if((h|0)<=(i|0)){break b}while(1){if(h-i>>>0<=4){while(1){e=i;i=e+1|0;b=i;c=e;while(1){c=y[B(b,12)+a>>2]>2]?b:c;f=(b|0)<(h|0);b=b+1|0;if(f){continue}break}if((c|0)!=(e|0)){b=B(c,12)+a|0;v[d+24>>2]=v[b+8>>2];c=v[b+4>>2];v[d+16>>2]=v[b>>2];v[d+20>>2]=c;e=B(e,12)+a|0;v[b+8>>2]=v[e+8>>2];c=v[e+4>>2];v[b>>2]=v[e>>2];v[b+4>>2]=c;v[e+8>>2]=v[d+24>>2];b=v[d+20>>2];v[e>>2]=v[d+16>>2];v[e+4>>2]=b}if((h|0)!=(i|0)){continue}break b}}c=B(i,12)+a|0;b=v[c>>2];e=B((h+i|0)/2|0,12)+a|0;if(b>>>0>y[e>>2]){v[d+24>>2]=v[c+8>>2];b=v[c+4>>2];v[d+16>>2]=v[c>>2];v[d+20>>2]=b;v[c+8>>2]=v[e+8>>2];b=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=b;v[e+8>>2]=v[d+24>>2];b=v[d+20>>2];v[e>>2]=v[d+16>>2];v[e+4>>2]=b;j=v[c>>2]}else{j=b}f=B(h,12)+a|0;b=v[f>>2];if(j>>>0>b>>>0){v[d+24>>2]=v[c+8>>2];b=v[c+4>>2];v[d+16>>2]=v[c>>2];v[d+20>>2]=b;v[c+8>>2]=v[f+8>>2];b=v[f+4>>2];v[c>>2]=v[f>>2];v[c+4>>2]=b;v[f+8>>2]=v[d+24>>2];b=v[d+20>>2];v[f>>2]=v[d+16>>2];v[f+4>>2]=b;b=v[f>>2]}if(y[e>>2]>b>>>0){v[d+24>>2]=v[e+8>>2];b=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=b;v[e+8>>2]=v[f+8>>2];b=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=b;v[f+8>>2]=v[d+24>>2];b=v[d+20>>2];v[f>>2]=v[d+16>>2];v[f+4>>2]=b}v[d+24>>2]=v[e+8>>2];b=v[e+4>>2];v[d+16>>2]=v[e>>2];v[d+20>>2]=b;c=h-1|0;j=B(c,12)+a|0;b=j;f=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=f;v[e+8>>2]=v[b+8>>2];v[b+8>>2]=v[d+24>>2];b=v[d+20>>2];v[j>>2]=v[d+16>>2];v[j+4>>2]=b;b=i;while(1){o=v[j>>2];while(1){e=b;b=b+1|0;f=B(b,12)+a|0;if(y[f>>2]>>0){continue}break}while(1){c=c-1|0;m=B(c,12)+a|0;if(y[m>>2]>o>>>0){continue}break}if((b|0)<(c|0)){v[d+24>>2]=v[f+8>>2];e=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=e;v[f+8>>2]=v[m+8>>2];e=v[m+4>>2];v[f>>2]=v[m>>2];v[f+4>>2]=e;v[m+8>>2]=v[d+24>>2];e=v[d+20>>2];v[m>>2]=v[d+16>>2];v[m+4>>2]=e;continue}break}v[d+24>>2]=v[f+8>>2];c=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=c;v[f+8>>2]=v[j+8>>2];c=v[j+4>>2];v[f>>2]=v[j>>2];v[f+4>>2]=c;v[j+8>>2]=v[d+24>>2];c=v[d+20>>2];v[j>>2]=v[d+16>>2];v[j+4>>2]=c;c:{if((b-i|0)<(h-b|0)){if(l-1>>>0<=k>>>0){c=l<<3;if(c){b=v[37696];f=b+12|0;b=(q=f,r=c,s=Ba[v[v[b>>2]+20>>2]](b)|0?37087:63804,u=17218,x=155,p=v[v[f>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}else{b=0}l=l<<1;b=I9(b,g,k<<2);c=n;n=1;if(!(!c|!g)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,g)}g=b}b=(k<<2)+g|0;v[b>>2]=i;v[b+4>>2]=e;i=e+2|0;break c}if(l-1>>>0<=k>>>0){c=l<<3;if(c){b=v[37696];f=b+12|0;b=(x=f,u=c,s=Ba[v[v[b>>2]+20>>2]](b)|0?37087:63804,r=17218,q=155,p=v[v[f>>2]+8>>2],Ba[p](x|0,u|0,s|0,r|0,q|0)|0)}else{b=0}l=l<<1;b=I9(b,g,k<<2);c=n;n=1;if(!(!c|!g)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,g)}g=b}b=(k<<2)+g|0;v[b>>2]=e+2;v[b+4>>2]=h;h=e}k=k+2|0;if((h|0)>(i|0)){continue}break}}if(k){b=k-2|0;i=v[(b<<2)+g>>2];h=v[((k<<2)+g|0)-4>>2];k=b;continue}break}if(!n|!g){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,g)}if(w[d+12|0]){v9(v[d+8>>2])}xa=d+32|0}function Nx(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=0,l=C(0),m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=0;c=xa-112|0;xa=c;W=v[b+32>>2];j=v[b+4>>2];n=v[b+12>>2];T=v[b+20>>2];Ox(c,T);f=z[n+24>>2];g=z[n+20>>2];y=z[c+60>>2];A=z[c+48>>2];D=z[c- -64>>2];E=z[c+40>>2];F=z[c+52>>2];G=z[c+68>>2];H=z[c+44>>2];I=z[c+56>>2];J=z[c+96>>2];K=z[c+84>>2];l=z[c+20>>2];o=z[c+16>>2];L=z[c+100>>2];M=z[c+76>>2];N=z[c+88>>2];p=z[c+32>>2];h=z[n+16>>2];q=z[c+28>>2];O=z[c+104>>2];i=z[n+8>>2];P=z[c+80>>2];d=z[n>>2];Q=z[c+92>>2];e=z[n+4>>2];R=z[c+36>>2];r=z[c+8>>2];s=z[c>>2];t=z[c+4>>2];S=z[c+72>>2];u=z[c+12>>2];x=z[c+24>>2];v[j+28>>2]=0;v[j+12>>2]=0;z[j+24>>2]=-C(C(C(p*f)+C(C(x*h)+C(q*g)))+C(C(C(d*P)+C(e*Q))+C(i*O)));z[j+20>>2]=-C(C(C(l*f)+C(C(u*h)+C(o*g)))+C(C(C(d*M)+C(e*N))+C(i*L)));z[j+16>>2]=-C(C(C(r*f)+C(C(s*h)+C(t*g)))+C(C(C(d*S)+C(e*K))+C(i*J)));z[j+8>>2]=-C(C(C(C(d*r)+C(e*l))+C(i*p))+C(C(C(h*H)+C(g*I))+C(f*G)));z[j+4>>2]=-C(C(C(C(d*t)+C(e*o))+C(i*q))+C(C(C(h*E)+C(g*F))+C(f*D)));z[j>>2]=-C(C(C(C(d*s)+C(e*u))+C(i*x))+C(C(C(h*R)+C(g*A))+C(f*y)));U=v[a+336>>2];if(U>>>0>=2){X=v[a+332>>2];Y=v[a+272>>2];Z=v[a+344>>2];_=v[a+340>>2];m=1;while(1){b=m<<5;a=(v[(b+X|0)+24>>2]<<5)+j|0;o=z[a+16>>2];p=z[a+20>>2];k=B(m,160)+_|0;e=z[k+128>>2];i=z[a+24>>2];l=z[k+124>>2];d=z[k+120>>2];f=z[a>>2];g=z[a+4>>2];h=z[a+8>>2];a=b+j|0;v[a+28>>2]=0;v[a+12>>2]=0;z[a+8>>2]=h;z[a+4>>2]=g;z[a>>2]=f;i=C(i+C(C(l*f)-C(d*g)));z[a+24>>2]=i;d=C(p+C(C(d*h)-C(e*f)));z[a+20>>2]=d;e=C(o+C(C(e*g)-C(l*h)));z[a+16>>2]=e;b=b+n|0;y=z[b>>2];a=B(m,112)+T|0;A=z[a+60>>2];D=z[a+36>>2];E=z[a+48>>2];F=z[b+4>>2];G=z[a- -64>>2];H=z[a+40>>2];I=z[a+52>>2];J=z[b+8>>2];K=z[a+68>>2];L=z[a+44>>2];M=z[a+56>>2];N=z[b+16>>2];O=z[a+96>>2];P=z[a+72>>2];Q=z[a+84>>2];l=z[a+8>>2];o=z[a>>2];p=z[a+4>>2];R=z[b+20>>2];S=z[a+100>>2];$=z[a+76>>2];aa=z[a+88>>2];q=z[a+20>>2];r=z[a+12>>2];s=z[a+16>>2];ba=z[b+24>>2];ca=z[a+104>>2];da=z[a+80>>2];ea=z[a+92>>2];t=z[a+32>>2];u=z[a+24>>2];x=z[a+28>>2];v[b+28>>2]=0;v[b+12>>2]=0;z[b+24>>2]=ba+C(C(C(t*i)+C(C(u*e)+C(d*x)))+C(C(C(f*da)+C(g*ea))+C(h*ca)));z[b+20>>2]=R+C(C(C(q*i)+C(C(r*e)+C(d*s)))+C(C(C(f*$)+C(g*aa))+C(h*S)));z[b+16>>2]=N+C(C(C(l*i)+C(C(o*e)+C(d*p)))+C(C(C(f*P)+C(g*Q))+C(h*O)));z[b+8>>2]=J+C(C(C(C(f*l)+C(g*q))+C(h*t))+C(C(C(e*L)+C(d*M))+C(i*K)));z[b+4>>2]=F+C(C(C(C(f*p)+C(g*s))+C(h*x))+C(C(C(e*H)+C(d*I))+C(i*G)));z[b>>2]=y+C(C(C(C(f*o)+C(g*r))+C(h*u))+C(C(C(e*D)+C(d*E))+C(i*A)));a=B(m,80)+Z|0;V=w[a+76|0];if(V){fa=(v[a+72>>2]<<2)+W|0;ga=B(m,76)+Y|0;a=0;while(1){k=B(a,24)+ga|0;z[(a<<2)+fa>>2]=C(C(z[k+20>>2]*z[b+8>>2])+C(C(z[k+12>>2]*z[b>>2])+C(z[k+16>>2]*z[b+4>>2])))+C(C(z[k+8>>2]*z[b+24>>2])+C(C(z[k>>2]*z[b+16>>2])+C(z[k+4>>2]*z[b+20>>2])));a=a+1|0;if((V|0)!=(a|0)){continue}break}}m=m+1|0;if((U|0)!=(m|0)){continue}break}}xa=c+112|0}function jaa(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=v[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=v[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=v[d+8>>2];b=b>>>3|0;c=v[d+12>>2];if((c|0)==(e|0)){i=152664,j=v[38166]&Vaa(-2,b),v[i>>2]=j;break b}v[e+12>>2]=c;v[c+8>>2]=e;break b}h=v[d+24>>2];b=v[d+12>>2];c:{if((d|0)!=(b|0)){c=v[d+8>>2];v[c+12>>2]=b;v[b+8>>2]=c;break c}d:{e=d+20|0;c=v[e>>2];if(c){break d}e=d+16|0;c=v[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=v[e>>2];if(c){continue}e=b+16|0;c=v[b+16>>2];if(c){continue}break}v[g>>2]=0}if(!h){break b}e=v[d+28>>2];c=(e<<2)+152968|0;e:{if(v[c>>2]==(d|0)){v[c>>2]=b;if(b){break e}i=152668,j=v[38167]&Vaa(-2,e),v[i>>2]=j;break b}v[h+(v[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}v[b+24>>2]=h;c=v[d+16>>2];if(c){v[b+16>>2]=c;v[c+24>>2]=b}c=v[d+20>>2];if(!c){break b}v[b+20>>2]=c;v[c+24>>2]=b;break b}b=v[f+4>>2];if((b&3)!=3){break b}v[38168]=a;v[f+4>>2]=b&-2;v[d+4>>2]=a|1;v[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=v[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(v[38172]==(f|0)){v[38172]=d;a=v[38169]+a|0;v[38169]=a;v[d+4>>2]=a|1;if(v[38171]!=(d|0)){break a}v[38168]=0;v[38171]=0;return}if(v[38171]==(f|0)){v[38171]=d;a=v[38168]+a|0;v[38168]=a;v[d+4>>2]=a|1;v[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=v[f+8>>2];b=b>>>3|0;c=v[f+12>>2];if((c|0)==(e|0)){i=152664,j=v[38166]&Vaa(-2,b),v[i>>2]=j;break g}v[e+12>>2]=c;v[c+8>>2]=e;break g}h=v[f+24>>2];b=v[f+12>>2];h:{if((f|0)!=(b|0)){c=v[f+8>>2];v[c+12>>2]=b;v[b+8>>2]=c;break h}i:{e=f+20|0;c=v[e>>2];if(c){break i}e=f+16|0;c=v[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=v[e>>2];if(c){continue}e=b+16|0;c=v[b+16>>2];if(c){continue}break}v[g>>2]=0}if(!h){break g}e=v[f+28>>2];c=(e<<2)+152968|0;j:{if(v[c>>2]==(f|0)){v[c>>2]=b;if(b){break j}i=152668,j=v[38167]&Vaa(-2,e),v[i>>2]=j;break g}v[h+(v[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}v[b+24>>2]=h;c=v[f+16>>2];if(c){v[b+16>>2]=c;v[c+24>>2]=b}c=v[f+20>>2];if(!c){break g}v[b+20>>2]=c;v[c+24>>2]=b}v[d+4>>2]=a|1;v[a+d>>2]=a;if(v[38171]!=(d|0)){break f}v[38168]=a;return}v[f+4>>2]=b&-2;v[d+4>>2]=a|1;v[a+d>>2]=a}if(a>>>0<=255){b=(a&-8)+152704|0;c=v[38166];a=1<<(a>>>3);k:{if(!(c&a)){v[38166]=a|c;a=b;break k}a=v[b+8>>2]}v[b+8>>2]=d;v[a+12>>2]=d;v[d+12>>2]=b;v[d+8>>2]=a;return}e=31;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}v[d+28>>2]=e;v[d+16>>2]=0;v[d+20>>2]=0;g=(e<<2)+152968|0;l:{m:{c=v[38167];b=1<>2]=d;v[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=v[g>>2];while(1){c=b;if((v[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=v[g+16>>2];if(b){continue}break}v[g+16>>2]=d;v[d+24>>2]=c}v[d+12>>2]=d;v[d+8>>2]=d;break l}a=v[c+8>>2];v[a+12>>2]=d;v[c+8>>2]=d;v[d+24>>2]=0;v[d+12>>2]=c;v[d+8>>2]=a}a=v[38174]-1|0;v[38174]=a?a:-1}}function m$(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=0,t=0,x=0,y=0,A=C(0),E=C(0),F=C(0),G=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0,S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=0,$=0,aa=0;y=xa-256|0;xa=y;a:{if(d&1){f=z[b>>2];k=C(-f);m=C(k-f);l=z[b+8>>2];n=C(-l);S=C(m*n);g=z[b+12>>2];i=z[b+4>>2];F=C(-i);h=C(F-i);T=C(g*h);o=z[c+12>>2];r=z[c>>2];M=C(C(o-r)*C(.5));K=C(g*m);L=C(h*n);G=z[c+16>>2];A=z[c+4>>2];N=C(C(G-A)*C(.5));U=C(C(f*m)+C(1));V=C(h*F);h=z[c+20>>2];E=z[c+8>>2];O=C(C(h-E)*C(.5));W=C(C(C(D(C(C(S-T)*M)))+C(D(C(C(K+L)*N))))+C(D(C(C(U-V)*O))));J=k;k=C(C(r+o)*C(.5));k=C(k+k);o=C(C(A+G)*C(.5));o=C(o+o);h=C(C(E+h)*C(.5));r=C(h+h);G=C(C(C(J*k)-C(o*i))-C(l*r));A=C(z[b+24>>2]*C(-2));E=C(z[b+16>>2]*C(-2));J=C(z[b+20>>2]*C(-2));P=C(C(l*A)+C(C(f*E)+C(J*i)));h=C(C(g*g)+C(-.5));X=C(C(C(l*P)+C(C(A*h)-C(g*C(C(f*J)-C(E*i)))))+C(C(C(r*h)+C(g*C(C(i*k)-C(f*o))))-C(l*G)));Y=C(W+X);F=C(m*F);m=C(n-l);Z=C(g*m);n=C(m*n);K=C(C(C(D(C(C(F+Z)*M)))+C(D(C(C(U-n)*N))))+C(D(C(C(L-K)*O))));L=C(C(C(i*P)+C(C(J*h)-C(g*C(C(l*E)-C(A*f)))))+C(C(C(o*h)+C(g*C(C(f*r)-C(l*k))))-C(i*G)));m=C(K+L);n=C(C(C(D(C(C(C(C(1)-V)-n)*M)))+C(D(C(C(F-Z)*N))))+C(D(C(C(S+T)*O))));g=C(C(C(f*P)+C(C(E*h)-C(g*C(C(i*A)-C(J*l)))))+C(C(C(k*h)+C(g*C(C(l*o)-C(i*r))))-C(f*G)));f=C(n+g);l=C(L-K);i=C(g-n);g=C(X-W);break a}Y=z[c+20>>2];m=z[c+16>>2];f=z[c+12>>2];l=z[c+4>>2];i=z[c>>2];g=z[c+8>>2]}k=f;f=z[a>>2];h=C(k*f);i=C(i*f);c=v[a+16>>2];s=z[c+12>>2]>2];j=v[p+40>>2];b=j-1|0;n=C(b>>>0);b:{if(f>n){break b}k=z[a+8>>2];o=C(Y*k);k=C(g*k);q=z[c+16>>2]>2];c=p-1|0;r=C(c>>>0);if(g>r){break b}i=s?i:h;if(iC(t>>>0)){break c}f=C(H(f));if(f=C(0)){t=~~f>>>0;break c}t=0}j=i>n;f=C(I(i));d:{if(f=C(0)){q=~~f>>>0;break d}q=0}Q=j?b:q;b=0;e:{if(gC(b>>>0)){break e}g=C(H(g));if(g=C(0)){b=~~g>>>0;break e}b=0}j=h>r;q=Q-t|0;g=C(I(h));f:{if(g=C(0)){s=~~g>>>0;break f}s=0}R=j?c:s;_=R-b|0;if(!(B(q,_)<<1)){break b}f=z[a+4>>2];q=0;g:{if(t>>>0>=Q>>>0|b>>>0>=R>>>0){break g}g=C(m*f);f=C(l*f);$=d&2;d=B(p,t)+b|0;j=0;h:{while(1){s=b;while(1){x=v[a+12>>2];p=v[x+60>>2];c=d;d=c+1|0;l=C(u[p+(d<<2)>>1]);x=p+(c+v[x+44>>2]<<2)|0;i=C(u[x>>1]);h=C(u[x+4>>1]);x=c<<2;aa=x+p|0;m=C(u[aa>>1]);i:{if(!(!(gg)|!(gi)|(!(f>m)|!(f>l)))){if(f>h){break i}}if((w[aa+2|0]&127)!=127){if(j>>>0>=64){Ba[v[v[e>>2]+8>>2]](e,j,y)|0;j=0}v[(j<<2)+y>>2]=c<<1;q=q+1|0;j=j+1|0;if($){break h}p=v[v[a+12>>2]+60>>2]}if((w[(p+x|0)+3|0]&127)==127){break i}if(j>>>0>=64){Ba[v[v[e>>2]+8>>2]](e,j,y)|0;j=0}v[(j<<2)+y>>2]=c<<1|1;q=q+1|0;j=j+1|0;if($){break h}}s=s+1|0;if((R|0)!=(s|0)){continue}break}d=v[v[a+12>>2]+44>>2]+(d-_|0)|0;t=t+1|0;if((Q|0)!=(t|0)){continue}break}if(!j){break g}}Ba[v[v[e>>2]+8>>2]](e,j,y)|0}}xa=y+256|0}function LY(a,b,c){var d=C(0),e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),y=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=0,L=0,M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=0,S=0,T=0,U=0,V=C(0);K=v[a+12>>2];a:{if(!K){d=z[a+48>>2];g=z[a+44>>2];D=z[a+72>>2];E=z[a+68>>2];e=z[a+40>>2];n=z[a+64>>2];break a}k=z[c+12>>2];A=C(C(k*k)+C(-.5));f=v[v[a>>2]+40>>2];T=w[f+64|0]&2;R=v[f+28>>2];L=v[f+24>>2];f=v[a+4>>2];U=v[a+8>>2];r=z[c+4>>2];M=C(-r);s=z[c>>2];N=C(-s);u=z[c+8>>2];O=C(-u);while(1){j=B(v[(P<<2)+U>>2],3);b:{if(T){j=(j<<1)+R|0;y=x[j+4>>1];S=x[j+2>>1];j=x[j>>1];break b}j=(j<<2)+R|0;y=v[j+8>>2];S=v[j+4>>2];j=v[j>>2]}y=B(y,12)+L|0;n=z[y+8>>2];D=z[y>>2];E=z[y+4>>2];y=B(S,12)+L|0;m=z[y+8>>2];q=z[y>>2];F=z[y+4>>2];o=z[c+24>>2];p=z[c+20>>2];j=B(j,12)+L|0;d=z[j>>2];g=z[j+4>>2];h=z[j+8>>2];e=C(C(C(d*z[f+8>>2])+C(g*z[f+20>>2]))+C(h*z[f+32>>2]));e=C(e+e);i=C(C(C(d*z[f>>2])+C(g*z[f+12>>2]))+C(h*z[f+24>>2]));i=C(i+i);d=C(C(C(d*z[f+4>>2])+C(g*z[f+16>>2]))+C(h*z[f+28>>2]));h=C(d+d);l=C(C(u*e)+C(C(s*i)+C(r*h)));d=C(z[c+16>>2]+C(C(s*l)+C(C(i*A)+C(k*C(C(r*e)+C(h*O))))));G=C(z[a+64>>2]+d);z[a+64>>2]=G;g=C(p+C(C(r*l)+C(C(h*A)+C(k*C(C(u*i)+C(e*N))))));H=C(z[a+68>>2]+g);z[a+68>>2]=H;e=C(o+C(C(u*l)+C(C(e*A)+C(k*C(C(s*h)+C(i*M))))));i=C(e+z[a+72>>2]);z[a+72>>2]=i;h=z[a+40>>2];h=d>h?h:d;z[a+40>>2]=h;l=z[a+44>>2];l=g>l?l:g;z[a+44>>2]=l;o=z[a+48>>2];o=e>o?o:e;z[a+48>>2]=o;p=z[a+52>>2];p=d>2]=p;d=z[a+56>>2];I=d>g?d:g;z[a+56>>2]=I;d=z[a+60>>2];Q=d>e?d:e;z[a+60>>2]=Q;V=z[c+16>>2];g=z[c+20>>2];J=i;d=C(C(C(q*z[f+8>>2])+C(F*z[f+20>>2]))+C(m*z[f+32>>2]));e=C(d+d);d=C(C(C(q*z[f>>2])+C(F*z[f+12>>2]))+C(m*z[f+24>>2]));i=C(d+d);d=C(C(C(q*z[f+4>>2])+C(F*z[f+16>>2]))+C(m*z[f+28>>2]));m=C(d+d);q=C(C(u*e)+C(C(s*i)+C(r*m)));d=C(z[c+24>>2]+C(C(u*q)+C(C(e*A)+C(k*C(C(s*m)+C(i*M))))));J=C(J+d);z[a+72>>2]=J;g=C(g+C(C(r*q)+C(C(m*A)+C(k*C(C(u*i)+C(e*N))))));H=C(H+g);z[a+68>>2]=H;e=C(V+C(C(s*q)+C(C(i*A)+C(k*C(C(r*e)+C(m*O))))));G=C(G+e);z[a+64>>2]=G;q=d>2]=q;F=g>2]=F;i=e>2]=i;o=d>o?o:d;z[a+48>>2]=o;l=g>l?l:g;z[a+44>>2]=l;h=e>h?h:e;z[a+40>>2]=h;I=z[c+16>>2];g=z[c+20>>2];d=C(C(C(D*z[f+8>>2])+C(E*z[f+20>>2]))+C(n*z[f+32>>2]));e=C(d+d);d=C(C(C(D*z[f>>2])+C(E*z[f+12>>2]))+C(n*z[f+24>>2]));m=C(d+d);d=C(C(C(D*z[f+4>>2])+C(E*z[f+16>>2]))+C(n*z[f+28>>2]));n=C(d+d);p=C(C(u*e)+C(C(s*m)+C(r*n)));d=C(z[c+24>>2]+C(C(u*p)+C(C(e*A)+C(k*C(C(s*n)+C(m*M))))));D=C(J+d);z[a+72>>2]=D;g=C(g+C(C(r*p)+C(C(n*A)+C(k*C(C(u*m)+C(e*N))))));E=C(H+g);z[a+68>>2]=E;e=C(I+C(C(s*p)+C(C(m*A)+C(k*C(C(r*e)+C(n*O))))));n=C(G+e);z[a+64>>2]=n;z[a+60>>2]=d>2]=g>2]=eo?o:d;z[a+48>>2]=d;g=g>l?l:g;z[a+44>>2]=g;e=e>h?h:e;z[a+40>>2]=e;P=P+1|0;if((K|0)!=(P|0)){continue}break}}t[a+76|0]=1;k=C(C(1)/C(B(K,3)>>>0));z[a+72>>2]=k*D;z[a+68>>2]=k*E;z[a+64>>2]=k*n;z[b+8>>2]=d;z[b+4>>2]=g;z[b>>2]=e;z[b+12>>2]=z[a+52>>2];z[b+16>>2]=z[a+56>>2];z[b+20>>2]=z[a+60>>2]}function nC(a,b,c,d){var e=0,f=C(0),g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=C(0),u=0,w=0,x=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;j=xa-32|0;xa=j;a:{if(v[a+28>>2]){while(1){h=B(e,24)+a|0;f=z[h+172>>2];g=z[h+160>>2];i=z[h+176>>2];k=z[h+164>>2];l=z[h+180>>2];m=z[h+168>>2];z[j+24>>2]=C(l-m)*C(.5);z[j+20>>2]=C(i-k)*C(.5);z[j+16>>2]=C(f-g)*C(.5);z[j+8>>2]=C(m+l)*C(.5);z[j+4>>2]=C(k+i)*C(.5);z[j>>2]=C(g+f)*C(.5);b:{if(!oC(b,j)){break b}v[j>>2]=-1082130432;if(Ba[v[v[c>>2]>>2]](c,j,((e<<3)+a|0)+32|0)|0){break b}h=0;break a}e=e+1|0;if(e>>>0>2]){continue}break}}h=1;if(!v[a+636>>2]){break a}if(!oC(b,a+656|0)){break a}e=(v[a+644>>2]<<2)+d|0;d=v[e>>2];D=(d|0)<0?d^-1:d|-2147483648;d=v[e+12>>2];E=(d|0)<0?d^-1:d|-2147483648;F=a+688|0;x=1;while(1){c:{d=r<<2;d:{if(!v[d+F>>2]){break d}if(!oC(b,((r<<5)+a|0)+736|0)){break d}G=a+d|0;u=B(r,224)+a|0;H=u+912|0;s=0;while(1){d=s<<2;e:{if(!v[d+H>>2]){break e}if(!oC(b,((s<<5)+u|0)+960|0)){break e}I=d+u|0;w=(B(r,1120)+a|0)+B(s,224)|0;J=w+2032|0;h=0;A=1;while(1){f:{q=h<<2;d=v[q+J>>2];g:{if(!d){break g}e=(h<<5)+w|0;f=C(z[b+16>>2]-z[e+2080>>2]);k=z[e+2096>>2];n=C(k+z[b+128>>2]);if(f>n){break g}g=C(z[b+20>>2]-z[e+2084>>2]);l=z[e+2100>>2];o=C(l+z[b+132>>2]);if(g>o){break g}i=C(z[b+24>>2]-z[e+2088>>2]);m=z[e+2104>>2];p=C(m+z[b+136>>2]);if(fp|(g>2])+C(g*z[b+48>>2]))+C(i*z[b+64>>2]));o=C(C(m*z[b+112>>2])+C(C(l*z[b+96>>2])+C(C(k*z[b+80>>2])+z[b>>2])));if(n>o){break g}p=C(C(C(f*z[b+36>>2])+C(g*z[b+52>>2]))+C(i*z[b+68>>2]));t=C(C(m*z[b+116>>2])+C(C(l*z[b+100>>2])+C(C(k*z[b+84>>2])+z[b+4>>2])));if(p>t){break g}f=C(C(C(f*z[b+40>>2])+C(g*z[b+56>>2]))+C(i*z[b+72>>2]));g=C(C(m*z[b+120>>2])+C(C(l*z[b+104>>2])+C(C(k*z[b+88>>2])+z[b+8>>2])));if(ng|(p>2]+(v[I+932>>2]+v[G+708>>2]|0)|0;e=v[a+20>>2]+(q<<5)|0;q=v[a+24>>2]+(q<<3)|0;while(1){h:{if(y[e+28>>2]>>0){break h}if(y[e+12>>2]>E>>>0){break g}f=C(z[b+16>>2]-z[e>>2]);k=z[e+16>>2];n=C(k+z[b+128>>2]);if(f>n){break h}g=C(z[b+20>>2]-z[e+4>>2]);l=z[e+20>>2];o=C(l+z[b+132>>2]);if(g>o){break h}i=C(z[b+24>>2]-z[e+8>>2]);m=z[e+24>>2];p=C(m+z[b+136>>2]);if(fp|(g>2])+C(g*z[b+48>>2]))+C(i*z[b+64>>2]));o=C(C(m*z[b+112>>2])+C(C(l*z[b+96>>2])+C(C(k*z[b+80>>2])+z[b>>2])));if(n>o){break h}p=C(C(C(f*z[b+36>>2])+C(g*z[b+52>>2]))+C(i*z[b+68>>2]));t=C(C(m*z[b+116>>2])+C(C(l*z[b+100>>2])+C(C(k*z[b+84>>2])+z[b+4>>2])));if(p>t){break h}f=C(C(C(f*z[b+40>>2])+C(g*z[b+56>>2]))+C(i*z[b+72>>2]));g=C(C(m*z[b+120>>2])+C(C(l*z[b+104>>2])+C(C(k*z[b+88>>2])+z[b+8>>2])));if(ng|(p>2]=-1082130432;if(!(Ba[v[v[c>>2]>>2]](c,j,q)|0)){break f}}q=q+8|0;e=e+32|0;d=d-1|0;if(d){continue}break}}A=h>>>0<4;h=h+1|0;if((h|0)!=5){continue}break e}break}if(A){break c}}s=s+1|0;if((s|0)!=5){continue}break}}x=r>>>0<4;r=r+1|0;if((r|0)!=5){continue}}break}h=!x}xa=j+32|0;return h&1}function It(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=xa-16|0;xa=k;if(w[a+36|0]&2){d=x[v[a+40>>2]+124>>1]}else{l=v[a+116>>2];d=1;a:{if(l-7>>>0<4294967294){break a}d=x[a+168>>1];if((l|0)==5){break a}d=x[a+148>>1]}}l=d;m=l&65535;t[k+12|0]=m>>>0>256;d=m<<2;b:{if(m>>>0>=257){i=u9(d,11562,410);break b}i=k-(d+15&524272)|0;xa=i}v[k+8>>2]=i;f=v[37393];c:{if(w[a+36|0]&2){e=v[a+40>>2];d=x[e+124>>1];e=(d|0)==1?e+120|0:v[v[a+32>>2]+4856>>2]+(v[e+120>>2]<<1)|0;break c}e=GR(a+48|0);g=v[a+116>>2];d=1;d:{if(g-7>>>0<4294967294){break d}d=x[a+168>>1];if((g|0)==5){break d}d=x[a+148>>1]}}g=a+32|0;a=l&65535;h=a>>>0>d>>>0?d:a;e:{if(!h){break e}a=0;if((h|0)!=1){n=h&65534;d=0;while(1){v[(a<<2)+i>>2]=v[v[f+40>>2]+(x[(a<<1)+e>>1]<<2)>>2];j=a|1;v[(j<<2)+i>>2]=v[v[f+40>>2]+(x[(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}v[(a<<2)+i>>2]=v[v[f+40>>2]+(x[(a<<1)+e>>1]<<2)>>2]}i=xa-16|0;xa=i;f:{g:{h:{i:{d=v[g+4>>2];switch((d>>>30|0)-2|0){case 1:break g;case 0:break i;default:break h}}if(w[v[g>>2]+4785|0]){break g}}f=0;h=0;a=xa-32|0;d=a;xa=a;j:{k:{if((c|0)==1){u[d+30>>1]=x[v[b>>2]+52>>1];FR(g+16|0,d+30|0,1);break k}t[d+20|0]=c>>>0>512;e=c<<1;l:{m:{if(c>>>0>=513){e=u9(e,11630,48);v[d+16>>2]=e;if(!e){break m}break l}e=a-(e+15&262128)|0;xa=e;v[d+16>>2]=e;if(c){break l}FR(g+16|0,e,c);break k}a=0;b9(v[37696],16,11630,57,67891,0);v9(0);break j}a=0;if(c-1>>>0>=3){n=c&65532;while(1){u[(a<<1)+e>>1]=x[v[(a<<2)+b>>2]+52>>1];j=a|1;u[(j<<1)+e>>1]=x[v[(j<<2)+b>>2]+52>>1];j=a|2;u[(j<<1)+e>>1]=x[v[(j<<2)+b>>2]+52>>1];j=a|3;u[(j<<1)+e>>1]=x[v[(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){u[(a<<1)+e>>1]=x[v[(a<<2)+b>>2]+52>>1];a=a+1|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}FR(g+16|0,e,c);if(c>>>0<513){break k}v9(e)}a=1;e=v[g>>2];if(!e){break j}e=v[v[e+992>>2]+1024>>2];Ba[v[v[e>>2]+64>>2]](e,g+48|0)}xa=d+32|0;break f}a=v[g+8>>2];if(!a){a=Qu(v[g>>2],d>>>24&15);v[g+8>>2]=a}n:{if((c|0)==1){u[a+124>>1]=1;u[a+120>>1]=x[v[b>>2]+52>>1];break n}f=v[g>>2];d=v[f+4860>>2];e=0;u[i+14>>1]=0;zr(f+4856|0,c+d|0,i+14|0);f=v[f+4856>>2];u[a+124>>1]=c;v[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){u[d+(e<<1)>>1]=x[v[(e<<2)+b>>2]+52>>1];h=e|1;u[d+(h<<1)>>1]=x[v[(h<<2)+b>>2]+52>>1];h=e|2;u[d+(h<<1)>>1]=x[v[(h<<2)+b>>2]+52>>1];h=e|3;u[d+(h<<1)>>1]=x[v[(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){u[d+(e<<1)>>1]=x[v[(e<<2)+b>>2]+52>>1];e=e+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}Yu(v[g>>2],g);v[g+4>>2]=v[g+4>>2]|2;a=1}xa=i+16|0;o:{if(!a){break o}if(c){a=0;while(1){d=v[(a<<2)+b>>2];v[d+16>>2]=v[d+16>>2]+1;a=a+1|0;if((c|0)!=(a|0)){continue}break}}if(!(l&65535)){break o}a=0;d=v[k+8>>2];while(1){b=v[d+(a<<2)>>2];c=v[b+16>>2]-1|0;v[b+16>>2]=c;if(!c){Ba[v[v[b+12>>2]+8>>2]](b+12|0)}a=a+1|0;if((m|0)!=(a|0)){continue}break}}if((l&65535)>>>0>=257){v9(v[k+8>>2])}xa=k+16|0}function c4(a){var b=0,c=0,d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=0,u=C(0),y=0,A=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=C(0),M=C(0),N=0,O=0,P=0;a:{l=v[a>>2];if(!l){break a}K=v[a+4>>2];if(!K){break a}s=v[a+28>>2];if(w[s+39|0]<4){break a}d=z[l+8>>2];e=z[l+4>>2];f=z[l>>2];m=C(-34028234663852886e22);g=w[s+38|0];b:{if(!g){h=f;n=e;o=d;i=C(-34028234663852886e22);j=C(-34028234663852886e22);break b}p=C(-34028234663852886e22);u=C(-34028234663852886e22);o=d;n=e;h=f;while(1){b=B(c,12)+l|0;j=z[b+8>>2];i=z[b+4>>2];k=z[b>>2];c:{if(k>f){f=k;break c}if(!(h>k)){break c}h=k}L=C(D(j));M=C(D(i));k=C(D(k));d:{if(eu;e:{if(d>2];f=C(D(f));h=C(D(h));h=f>h?f:h;e=C(D(e));f=C(D(n));n=C(h+(e>f?e:f));d=C(D(d));e=C(D(o));d=C(C(n+(d>e?d:e))*C(.019999999552965164));n=d>C(.019999999552965164)?d:C(.019999999552965164);e=C(-m);f=C(-i);d=j;h=C(-d);q=0;r=0;f:{while(1){b=B(y,20)+K|0;g:{if(q){break g}q=0;if(!(C(C(C(i*z[b+8>>2])+C(C(m*z[b>>2])+C(d*z[b+4>>2])))+z[b+12>>2])>=C(0))){break g}q=1}h:{if(r){break h}r=0;if(!(C(C(C(f*z[b+8>>2])+C(C(m*z[b>>2])+C(z[b+4>>2]*h)))+z[b+12>>2])>=C(0))){break h}r=1}i:{if(A){break i}A=0;if(!(C(C(C(f*z[b+8>>2])+C(C(m*z[b>>2])+C(d*z[b+4>>2])))+z[b+12>>2])>=C(0))){break i}A=1}j:{if(E){break j}E=0;if(!(C(C(C(i*z[b+8>>2])+C(C(m*z[b>>2])+C(z[b+4>>2]*h)))+z[b+12>>2])>=C(0))){break j}E=1}k:{if(F){break k}F=0;if(!(C(C(C(i*z[b+8>>2])+C(C(e*z[b>>2])+C(d*z[b+4>>2])))+z[b+12>>2])>=C(0))){break k}F=1}l:{if(G){break l}G=0;if(!(C(C(C(i*z[b+8>>2])+C(C(e*z[b>>2])+C(z[b+4>>2]*h)))+z[b+12>>2])>=C(0))){break l}G=1}m:{if(H){break m}H=0;if(!(C(C(C(f*z[b+8>>2])+C(C(e*z[b>>2])+C(d*z[b+4>>2])))+z[b+12>>2])>=C(0))){break m}H=1}n:{if(I){break n}I=0;if(!(C(C(C(f*z[b+8>>2])+C(C(e*z[b>>2])+C(z[b+4>>2]*h)))+z[b+12>>2])>=C(0))){break n}I=1}o:{t=w[s+38|0];p:{if(!t){break p}N=w[b+18|0];q:{if(N){P=x[b+16>>1];g=0;J=1;while(1){c=0;r:{while(1){if(w[(c+P|0)+O|0]==(g&255)){break r}c=c+1|0;if((N|0)!=(c|0)){continue}break}c=B(g,12)+l|0;if(n>2]*z[b+8>>2])+C(C(z[c>>2]*z[b>>2])+C(z[c+4>>2]*z[b+4>>2])))+z[b+12>>2])){break q}}g=g+1|0;J=t>>>0>g>>>0;if((g|0)!=(t|0)){continue}break}break p}o=z[b+8>>2];j=z[b>>2];k=z[b+4>>2];p=z[b+12>>2];if(n>2]*o)+C(C(z[l>>2]*j)+C(z[l+4>>2]*k)))+p)){break o}g=t-1|0;c=0;while(1){if((c|0)==(g|0)){break p}c=c+1|0;b=B(c,12)+l|0;if(!(n>2]*o)+C(C(z[b>>2]*j)+C(z[b+4>>2]*k)))+p))){continue}break}J=c>>>0>>0}g=0;b9(v[37696],32,9064,327,65562,0);if(J){break a}s=v[a+28>>2]}y=y+1|0;if(y>>>0>=w[s+39|0]){break f}continue}break}g=0;b9(v[37696],32,9064,327,65562,0);break a}s:{if(!q|!r|(!A|!E)){break s}if(!H|(!F|!G)){break s}g=1;if(I){break a}}b9(v[37696],32,9064,338,63086,0);return 0}return g}function qD(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0;g=xa-16|0;xa=g;if(w[a+212|0]){a:{b:{e=v[a+204>>2];if(e){while(1){e=e-1|0;c=v[v[a+200>>2]+(e<<3)>>2];UB(c,b);c=v[c+8>>2];k=z[c>>2];h=v[c>>2];c:{if((h&2139095040)==2139095040){i=z[c+4>>2];break c}i=z[c+4>>2];if((v[c+4>>2]&2139095040)==2139095040){break c}l=z[c+8>>2];if((v[c+8>>2]&2139095040)==2139095040){break c}m=z[c+12>>2];if((v[c+12>>2]&2139095040)==2139095040){break c}n=z[c+16>>2];if((v[c+16>>2]&2139095040)==2139095040){break c}o=z[c+20>>2];if((v[c+20>>2]&2139095040)==2139095040){break c}if(!(!(!(k<=m)|!(i<=n))&l<=o)){if(!(k==C(85070586659632215e21)&i==C(85070586659632215e21)&l==C(85070586659632215e21)&m==C(-85070586659632215e21)&n==C(-85070586659632215e21)&o==C(-85070586659632215e21))){break c}}j=j+1|0}d=v[a+196>>2]+B(e,24)|0;z[d+4>>2]=i;v[d>>2]=h;z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];if(e){continue}break}b=v[a+204>>2];if((b|0)!=(j|0)){break b}}UB(v[a+168>>2],v[a+196>>2]);break a}c=v[37696]+12|0;h=Ba[v[v[c>>2]+8>>2]](c,b<<2|1,24422,8015,300)|0;if(v[a+204>>2]){e=v[a+200>>2];c=0;b=0;while(1){f=b<<3;q=f+e|0;p=v[q>>2];d=v[p+8>>2];m=z[d>>2];d:{e:{if((v[d>>2]&2139095040)==2139095040){break e}l=z[d+4>>2];if((v[d+4>>2]&2139095040)==2139095040){break e}n=z[d+8>>2];if((v[d+8>>2]&2139095040)==2139095040){break e}i=z[d+12>>2];if((v[d+12>>2]&2139095040)==2139095040){break e}o=z[d+16>>2];if((v[d+16>>2]&2139095040)==2139095040){break e}k=z[d+20>>2];if((v[d+20>>2]&2139095040)==2139095040){break e}if(!(!(!(i>=m)|!(l<=o))&k>=n)){if(m!=C(85070586659632215e21)|l!=C(85070586659632215e21)|(n!=C(85070586659632215e21)|i!=C(-85070586659632215e21))){break e}if(o!=C(-85070586659632215e21)|k!=C(-85070586659632215e21)){break e}}if((b|0)!=(c|0)){d=(c<<3)+e|0;p=v[d>>2];e=v[q+4>>2];v[d>>2]=v[q>>2];v[d+4>>2]=e;e=v[a+200>>2];v[f+e>>2]=p;f=v[a+196>>2];d=f+B(c,24)|0;f=f+B(b,24)|0;z[d>>2]=z[f>>2];z[d+4>>2]=z[f+4>>2];z[d+8>>2]=z[f+8>>2];z[d+12>>2]=z[f+12>>2];z[d+16>>2]=z[f+16>>2];z[d+20>>2]=z[f+20>>2]}v[h+(b<<2)>>2]=c;c=c+1|0;break d}LB(p,1);e=v[a+200>>2];v[(f+e|0)+4>>2]=0}v[h+(v[a+204>>2]<<2)>>2]=b;b=b+1|0;if(b>>>0>2]){continue}break}}v[a+204>>2]=j;f:{if(j){v[g+4>>2]=j;v[g+12>>2]=0;b=v[a+196>>2];v[g>>2]=4;v[g+8>>2]=b;NB(v[a+168>>2],g);kD(a+172|0,v[a+204>>2],v[a+168>>2]);v[g+8>>2]=0;v[g>>2]=0;v[g+4>>2]=0;b=v[g+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}if(!v[a+144>>2]){break f}c=0;d=v[a+140>>2];b=v[d>>2];if((b|0)==-1){e=v[a+148>>2];while(1){c=c+1|0;if((e|0)==(c|0)){break f}b=v[d+(c<<2)>>2];if((b|0)==-1){continue}break}}d=v[a+148>>2];e=v[a+136>>2];j=v[a+132>>2];while(1){f=j+B(b,20)|0;v[f+16>>2]=v[h+(v[f+16>>2]<<2)>>2];b=v[e+(b<<2)>>2];if((b|0)!=-1){continue}f=v[a+140>>2];while(1){c=c+1|0;if((d|0)==(c|0)){break f}b=v[f+(c<<2)>>2];if((b|0)==-1){continue}break}continue}}LB(v[a+168>>2],1)}if(!h){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,h)}t[a+212|0]=0}xa=g+16|0}function Fd(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=0,F=0,G=0,H=0,I=0,J=0;h=xa+-64|0;xa=h;z[h+32>>2]=z[d>>2];z[h+36>>2]=z[d+4>>2];z[h+40>>2]=z[d+8>>2];z[h+44>>2]=z[d+12>>2];z[h+48>>2]=z[c>>2];z[h+52>>2]=z[c+4>>2];z[h+56>>2]=z[c+8>>2];z[h>>2]=z[g>>2];z[h+4>>2]=z[g+4>>2];z[h+8>>2]=z[g+8>>2];z[h+12>>2]=z[g+12>>2];z[h+16>>2]=z[f>>2];z[h+20>>2]=z[f+4>>2];z[h+24>>2]=z[f+8>>2];g=xa-16|0;xa=g;c=v[37696];d=c+12|0;c=(F=d,G=84,H=Ba[v[v[c>>2]+20>>2]](c)|0?28263:63804,I=6736,J=45,E=v[v[d>>2]+8>>2],Ba[E](F|0,G|0,H|0,I|0,J|0)|0);Ba[v[v[a>>2]+20>>2]](a)|0;u[g+8>>1]=3;f=xa-32|0;xa=f;u[c+6>>1]=x[g+8>>1];u[c+4>>1]=259;v[c+76>>2]=0;v[c+16>>2]=0;v[c+12>>2]=147240;v[c>>2]=147056;v[c+8>>2]=0;d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,96,24422,17141,454)|0;k=z[h+44>>2];l=z[h+40>>2];m=z[h+32>>2];i=z[h+36>>2];r=v[h+52>>2];s=v[h+48>>2];z[c+44>>2]=z[h+56>>2];v[c+36>>2]=s;v[c+40>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+24>>2]=j*i;z[c+28>>2]=l*i;z[c+32>>2]=k*i;z[c+20>>2]=m*i;k=z[h+12>>2];l=z[h+8>>2];m=z[h>>2];i=z[h+4>>2];r=v[h+20>>2];s=v[h+16>>2];z[c+72>>2]=z[h+24>>2];D=c- -64|0;v[D>>2]=s;v[D+4>>2]=r;j=i;i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(i*i)))))));z[c+52>>2]=j*i;z[c+56>>2]=l*i;z[c+60>>2]=k*i;z[c+48>>2]=m*i;Z4(f,b);q=z[h+52>>2];t=z[h+56>>2];w=z[h+48>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+40>>2];m=z[f+4>>2];n=z[h+36>>2];k=z[f+12>>2];o=z[h+44>>2];i=z[f>>2];p=z[h+32>>2];z[d+28>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+24>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+20>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+16>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+40>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d+36>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+32>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);Z4(f,e);q=z[h+20>>2];t=z[h+24>>2];w=z[h+16>>2];y=z[f+20>>2];A=z[f+24>>2];B=z[f+16>>2];l=z[f+8>>2];j=z[h+8>>2];m=z[f+4>>2];n=z[h+4>>2];k=z[f+12>>2];o=z[h+12>>2];i=z[f>>2];p=z[h>>2];z[d+56>>2]=C(l*j)+C(C(m*n)+C(C(k*o)+C(i*p)));z[d+52>>2]=C(p*m)+C(C(C(k*j)-C(o*l))-C(i*n));z[d+48>>2]=C(j*i)+C(C(C(k*n)-C(o*m))-C(l*p));z[d+44>>2]=C(n*l)+C(C(C(k*p)-C(o*i))-C(m*j));j=C(w-B);j=C(j+j);n=C(q-y);n=C(n+n);o=C(t-A);o=C(o+o);p=C(C(C(C(-i)*j)-C(n*m))-C(l*o));q=C(C(k*k)+C(-.5));z[d+68>>2]=C(C(o*q)+C(k*C(C(m*j)-C(i*n))))-C(l*p);z[d- -64>>2]=C(C(n*q)+C(k*C(C(i*o)-C(l*j))))-C(m*p);z[d+60>>2]=C(C(j*q)+C(k*C(C(l*n)-C(m*o))))-C(i*p);v[d+8>>2]=1065353216;v[d+12>>2]=1065353216;v[d>>2]=1065353216;v[d+4>>2]=1065353216;v[c+80>>2]=d;xa=f+32|0;v[c+12>>2]=146952;v[c>>2]=146760;d=v[c+80>>2];v[d+80>>2]=1343554297;v[d+84>>2]=1078530011;a=Ba[v[v[a>>2]+108>>2]](a,b,e,c+12|0,146736,96)|0;v[c+76>>2]=a;if(!a){Ba[v[v[c>>2]+16>>2]](c);c=0}xa=g+16|0;xa=h- -64|0;return c|0}function tA(a,b){var c=0,d=0,e=0,f=C(0),g=0,h=0,i=0,j=0;c=xa-224|0;xa=c;d=v[a>>2];a:{if((d|0)==v[a+4>>2]){Ba[v[v[d>>2]+152>>2]](d,x[a+8>>1],x[a+10>>1],c+128|0,c+96|0);d=v[c+140>>2];v[c+216>>2]=v[c+136>>2];v[c+220>>2]=d;d=v[c+132>>2];v[c+208>>2]=v[c+128>>2];v[c+212>>2]=d;d=v[c+148>>2];v[c+192>>2]=v[c+144>>2];v[c+196>>2]=d;d=v[c+156>>2];v[c+200>>2]=v[c+152>>2];v[c+204>>2]=d;d=v[c+100>>2];v[c+176>>2]=v[c+96>>2];v[c+180>>2]=d;d=v[c+108>>2];v[c+184>>2]=v[c+104>>2];v[c+188>>2]=d;d=v[c+116>>2];v[c+160>>2]=v[c+112>>2];v[c+164>>2]=d;d=v[c+124>>2];v[c+168>>2]=v[c+120>>2];v[c+172>>2]=d;break a}e=x[a+8>>1];b:{if((e|0)==65535){e=v[d+4>>2];g=v[d>>2];f=z[d+8>>2];v[c+220>>2]=0;z[c+216>>2]=f;v[c+208>>2]=g;v[c+212>>2]=e;f=z[d+24>>2];e=v[d+20>>2];d=v[d+16>>2];v[c+204>>2]=0;z[c+200>>2]=f;v[c+192>>2]=d;v[c+196>>2]=e;break b}Ba[v[v[d>>2]+156>>2]](c+128|0,d,e);d=v[c+140>>2];v[c+216>>2]=v[c+136>>2];v[c+220>>2]=d;d=v[c+132>>2];v[c+208>>2]=v[c+128>>2];v[c+212>>2]=d;d=v[c+148>>2];v[c+192>>2]=v[c+144>>2];v[c+196>>2]=d;d=v[c+156>>2];v[c+200>>2]=v[c+152>>2];v[c+204>>2]=d}d=x[a+10>>1];if((d|0)==65535){d=v[a+4>>2];e=v[d+4>>2];g=v[d>>2];f=z[d+8>>2];v[c+188>>2]=0;z[c+184>>2]=f;v[c+176>>2]=g;v[c+180>>2]=e;f=z[d+24>>2];e=v[d+20>>2];d=v[d+16>>2];v[c+172>>2]=0;z[c+168>>2]=f;v[c+160>>2]=d;v[c+164>>2]=e;break a}e=v[a+4>>2];Ba[v[v[e>>2]+156>>2]](c+128|0,e,d);d=v[c+140>>2];v[c+184>>2]=v[c+136>>2];v[c+188>>2]=d;d=v[c+132>>2];v[c+176>>2]=v[c+128>>2];v[c+180>>2]=d;d=v[c+148>>2];v[c+160>>2]=v[c+144>>2];v[c+164>>2]=d;d=v[c+156>>2];v[c+168>>2]=v[c+152>>2];v[c+172>>2]=d}v[c+136>>2]=0;v[c+140>>2]=0;v[c+128>>2]=0;v[c+132>>2]=0;v[c+104>>2]=0;v[c+108>>2]=0;v[c+96>>2]=0;v[c+100>>2]=0;v[c+88>>2]=0;v[c+92>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;v[c+72>>2]=0;v[c+76>>2]=0;v[c+64>>2]=0;v[c+68>>2]=0;sA(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=x[a+8>>1];d=v[a>>2];c:{if((d|0)==v[a+4>>2]){Ba[v[v[d>>2]+132>>2]](d,e,c+128|0,c+80|0,x[a+10>>1],c+96|0,c- -64|0,v[b+32>>2],v[b+36>>2]);break c}d:{if((e|0)==65535){e=v[c+212>>2];g=v[c+208>>2];z[d+8>>2]=z[c+216>>2];v[d>>2]=g;v[d+4>>2]=e;f=z[c+200>>2];e=v[c+196>>2];d=v[a>>2];v[d+16>>2]=v[c+192>>2];v[d+20>>2]=e;z[d+24>>2]=f;break d}g=v[b+36>>2];h=v[b+32>>2];j=v[v[d>>2]+128>>2];i=v[c+140>>2];v[c+56>>2]=v[c+136>>2];v[c+60>>2]=i;i=v[c+132>>2];v[c+48>>2]=v[c+128>>2];v[c+52>>2]=i;i=v[c+84>>2];v[c+32>>2]=v[c+80>>2];v[c+36>>2]=i;i=v[c+92>>2];v[c+40>>2]=v[c+88>>2];v[c+44>>2]=i;Ba[j|0](d,e,c+48|0,c+32|0,h,g)}d=x[a+10>>1];if((d|0)==65535){d=v[c+180>>2];e=v[c+176>>2];b=v[a+4>>2];z[b+8>>2]=z[c+184>>2];v[b>>2]=e;v[b+4>>2]=d;f=z[c+168>>2];b=v[c+164>>2];a=v[a+4>>2];v[a+16>>2]=v[c+160>>2];v[a+20>>2]=b;z[a+24>>2]=f;break c}e=v[b+36>>2];b=v[b+32>>2];a=v[a+4>>2];g=v[v[a>>2]+128>>2];h=v[c+108>>2];v[c+24>>2]=v[c+104>>2];v[c+28>>2]=h;h=v[c+100>>2];v[c+16>>2]=v[c+96>>2];v[c+20>>2]=h;h=v[c+68>>2];v[c>>2]=v[c+64>>2];v[c+4>>2]=h;h=v[c+76>>2];v[c+8>>2]=v[c+72>>2];v[c+12>>2]=h;Ba[g|0](a,d,c+16|0,c,b,e)}xa=c+224|0}function qB(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0);a=v[a+24>>2];if(w[a+1|0]){y=z[k+8>>2];q=z[a+56>>2];A=z[k>>2];s=z[a+48>>2];t=z[a+52>>2];B=z[k+4>>2];D=C(C(y*q)+C(C(A*s)+C(t*B)));u=z[k+12>>2];E=C(C(u*u)+C(-.5));x=C(C(y*D)+C(C(u*C(C(A*t)-C(s*B)))+C(q*E)));Y=C(C(C(x+x)+z[g+8>>2])-q);x=C(C(B*D)+C(C(u*C(C(y*s)-C(q*A)))+C(t*E)));Z=C(C(z[g+4>>2]+C(x+x))-t);q=C(C(A*D)+C(C(u*C(C(B*q)-C(t*y)))+C(s*E)));_=C(C(z[g>>2]+C(q+q))-s);y=z[j+8>>2];q=z[a+40>>2];A=z[j>>2];s=z[a+32>>2];t=z[a+36>>2];B=z[j+4>>2];D=C(C(y*q)+C(C(A*s)+C(t*B)));u=z[j+12>>2];E=C(C(u*u)+C(-.5));x=C(C(y*D)+C(C(u*C(C(A*t)-C(s*B)))+C(q*E)));$=C(C(C(x+x)+z[f+8>>2])-q);x=C(C(B*D)+C(C(u*C(C(y*s)-C(q*A)))+C(t*E)));aa=C(C(C(x+x)+z[f+4>>2])-t);q=C(C(A*D)+C(C(u*C(C(B*q)-C(t*y)))+C(s*E)));ba=C(C(z[f>>2]+C(q+q))-s);k=a+176|0;j=0;s=C(0);t=C(0);u=C(0);y=C(0);A=C(0);B=C(0);D=C(0);E=C(0);x=C(0);while(1){q=z[k+80>>2];H=z[k+8>>2];I=z[k>>2];J=z[k+4>>2];K=z[k+24>>2];L=z[k+16>>2];M=z[k+20>>2];N=z[k+40>>2];O=z[k+32>>2];P=z[k+36>>2];Q=z[k+56>>2];R=z[k+48>>2];S=z[k+52>>2];F=z[k+64>>2];r=C(z[k+28>>2]*C(C(C(C(C(C($*H)+C(C(ba*I)+C(aa*J)))-C(C(Y*K)+C(C(_*L)+C(Z*M))))+z[k+12>>2])+C(z[k+92>>2]*C(C(C(N*z[h+8>>2])+C(C(O*z[h>>2])+C(P*z[h+4>>2])))-C(C(Q*z[i+8>>2])+C(C(R*z[i>>2])+C(S*z[i+4>>2]))))))-C(F*l)));r=q>2];T=z[k+76>>2];U=z[k+88>>2];q=v[k+84>>2]&64?C(-34028234663852886e22):C(-q);q=C(C(z[k+60>>2]*T)+C(C(U*C(F+(q>2])*C(C(C(C(C(I*z[b>>2])+C(O*z[d>>2]))-C(C(L*z[c>>2])+C(R*z[e>>2])))+C(C(C(J*z[b+4>>2])+C(P*z[d+4>>2]))-C(C(M*z[c+4>>2])+C(S*z[e+4>>2]))))+C(C(C(H*z[b+8>>2])+C(N*z[d+8>>2]))-C(C(K*z[c+8>>2])+C(Q*z[e+8>>2])))))));q=q>2];q=q>2]=q;r=z[k+104>>2];F=z[k+100>>2];G=z[k+96>>2];v[b+12>>2]=0;q=C(q-T);z[b+4>>2]=z[b+4>>2]+C(F*q);z[b+8>>2]=z[b+8>>2]+C(r*q);z[b>>2]=z[b>>2]+C(G*q);r=z[k+112>>2];F=z[k+116>>2];G=z[k+120>>2];v[d+12>>2]=0;z[d+8>>2]=C(q*G)+z[d+8>>2];z[d+4>>2]=C(q*F)+z[d+4>>2];z[d>>2]=C(r*q)+z[d>>2];r=z[k+132>>2];F=z[k+136>>2];G=z[k+128>>2];v[c+12>>2]=0;z[c+8>>2]=C(q*F)+z[c+8>>2];z[c+4>>2]=C(q*r)+z[c+4>>2];z[c>>2]=C(q*G)+z[c>>2];r=z[k+144>>2];F=z[k+148>>2];G=z[k+152>>2];v[e+12>>2]=0;z[e+8>>2]=C(q*G)+z[e+8>>2];z[e+4>>2]=C(q*F)+z[e+4>>2];z[e>>2]=C(q*r)+z[e>>2];x=C(x+C(Q*q));E=C(E+C(S*q));D=C(D+C(R*q));u=C(u+C(K*q));t=C(t+C(M*q));s=C(s+C(L*q));B=C(B+C(N*q));A=C(A+C(P*q));y=C(y+C(O*q));V=C(V+C(H*q));W=C(W+C(J*q));X=C(X+C(I*q));k=k+160|0;j=j+1|0;if(j>>>0>2];v[m+12>>2]=0;z[m+8>>2]=V*l;z[m+4>>2]=W*l;z[m>>2]=X*l;l=z[a+64>>2];v[n+12>>2]=0;z[n+8>>2]=u*l;z[n+4>>2]=t*l;z[n>>2]=s*l;l=z[a+60>>2];v[o+12>>2]=0;z[o+8>>2]=B*l;z[o+4>>2]=A*l;z[o>>2]=y*l;l=z[a+68>>2];v[p+12>>2]=0;z[p+8>>2]=x*l;z[p+4>>2]=E*l;z[p>>2]=D*l}function f2(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=0,E=C(0),F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0);q=z[a+56>>2];r=z[a+52>>2];s=z[a+48>>2];o=v[c+40>>2];K=z[o>>2];O=z[h>>2];k=C(-O);L=z[o+16>>2];I=z[h+4>>2];M=z[o+32>>2];J=z[h+8>>2];P=C(C(C(K*k)-C(L*I))-C(M*J));N=z[o+8>>2];u=z[o+24>>2];w=z[o+40>>2];Q=C(C(C(N*k)-C(u*I))-C(w*J));x=z[o+4>>2];y=z[o+20>>2];n=z[o+36>>2];R=C(C(C(x*k)-C(y*I))-C(n*J));S=C(z[a+80>>2]+z[g>>2]);A=v[b+16>>2];a:{b:{if(!A){k=C(0);break b}E=C(C(w*q)+C(C(N*s)+C(u*r)));F=C(C(n*q)+C(C(x*s)+C(y*r)));G=C(C(M*q)+C(C(K*s)+C(L*r)));o=v[b+24>>2];j=C(1);H=1;k=C(0);c:{while(1){d:{g=o+B(p,20)|0;t=z[g+8>>2];l=z[g>>2];i=z[g+4>>2];m=C(z[g+12>>2]+C(C(t*E)+C(C(l*G)+C(F*i))));i=C(C(t*Q)+C(C(l*P)+C(R*i)));e:{if(C(D(i))C(0))){break e}break d}l=C(C(-m)/i);g=il?l:j;k=g?k>>0>p>>>0;if((p|0)!=(A|0)){continue}break c}break}k=C(0)}if(H){break a}}if(!(k<=S)){break a}u=z[d+20>>2];w=z[d+24>>2];x=z[d+36>>2];y=z[d+52>>2];t=z[d+40>>2];m=z[d+56>>2];E=z[d+8>>2];F=z[d+4>>2];G=z[d>>2];l=z[d+16>>2];i=z[d+32>>2];j=z[d+48>>2];g=B(v[f>>2],48)+e|0;v[g+12>>2]=0;m=C(q-m);n=i;i=C(s-j);j=C(r-y);z[g+8>>2]=C(t*m)+C(C(n*i)+C(x*j));z[g+4>>2]=C(w*m)+C(C(l*i)+C(j*u));z[g>>2]=C(E*m)+C(C(G*i)+C(j*F));i=z[a+52>>2];j=z[a+56>>2];g=B(v[f>>2],48)+e|0;z[g+16>>2]=z[a+48>>2]-C(O*k);v[g+28>>2]=0;z[g+24>>2]=j-C(J*k);z[g+20>>2]=i-C(I*k);j=z[h+8>>2];H=v[h+4>>2];o=v[h>>2];g=v[f>>2];v[f>>2]=g+1;g=B(g,48)+e|0;v[g+32>>2]=o;v[g+36>>2]=H;z[g+44>>2]=k;z[g+40>>2]=j;c=v[c+40>>2];w=z[c+40>>2];u=z[c+24>>2];n=z[c+36>>2];y=z[c+20>>2];A=v[b+16>>2];N=z[c+8>>2];x=z[c+4>>2];M=z[c+32>>2];L=z[c+16>>2];K=z[c>>2]}q=z[a+64>>2];r=z[a+68>>2];s=z[a+72>>2];f:{g:{if(!A){j=C(0);break g}E=C(C(w*s)+C(C(N*q)+C(r*u)));F=C(C(n*s)+C(C(x*q)+C(r*y)));G=C(C(M*s)+C(C(K*q)+C(r*L)));c=v[b+24>>2];n=C(1);p=0;H=1;j=C(0);h:{while(1){i:{b=c+B(p,20)|0;t=z[b+8>>2];l=z[b>>2];i=z[b+4>>2];m=C(z[b+12>>2]+C(C(t*E)+C(C(l*G)+C(F*i))));i=C(C(t*Q)+C(C(l*P)+C(R*i)));j:{if(C(D(i))C(0))){break j}break i}l=C(C(-m)/i);b=in){break i}p=p+1|0;H=A>>>0>p>>>0;if((p|0)!=(A|0)){continue}break h}break}j=k}if(H){break f}}if(!(j<=S)){break f}u=z[d+20>>2];w=z[d+24>>2];x=z[d+36>>2];y=z[d+52>>2];t=z[d+40>>2];m=z[d+56>>2];E=z[d+8>>2];F=z[d+4>>2];G=z[d>>2];l=z[d+16>>2];i=z[d+32>>2];k=z[d+48>>2];b=B(v[f>>2],48)+e|0;v[b+12>>2]=0;m=C(s-m);n=i;i=C(q-k);k=C(r-y);z[b+8>>2]=C(t*m)+C(C(n*i)+C(x*k));z[b+4>>2]=C(w*m)+C(C(l*i)+C(k*u));z[b>>2]=C(E*m)+C(C(G*i)+C(k*F));i=z[a+68>>2];k=z[a+72>>2];b=B(v[f>>2],48)+e|0;z[b+16>>2]=z[a+64>>2]-C(O*j);v[b+28>>2]=0;z[b+24>>2]=k-C(J*j);z[b+20>>2]=i-C(I*j);k=z[h+8>>2];c=v[h+4>>2];b=v[h>>2];a=v[f>>2];v[f>>2]=a+1;a=B(a,48)+e|0;v[a+32>>2]=b;v[a+36>>2]=c;z[a+44>>2]=j;z[a+40>>2]=k}}function nB(a,b,c){var d=C(0),e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=0,ga=C(0),ha=C(0),ia=0,ja=0,ka=0,la=C(0),ma=C(0),na=C(0),oa=C(0),pa=C(0);f=v[a+4>>2];p=z[f+24>>2];q=z[f+20>>2];g=v[a>>2];r=z[g+24>>2];s=z[g+20>>2];t=z[f+16>>2];u=z[g+16>>2];y=z[f+8>>2];A=z[f+4>>2];E=z[f>>2];G=z[g+8>>2];H=z[g+4>>2];I=z[g>>2];e=x[a+22>>1];if(e){Y=C(z[g+56>>2]-z[f+56>>2]);Z=C(z[g+52>>2]-z[f+52>>2]);h=v[a+24>>2];ja=h+(e<<4)|0;_=C(z[g+48>>2]-z[f+48>>2]);$=z[f+40>>2];aa=z[f+36>>2];ba=z[g+40>>2];ca=z[g+36>>2];da=z[f+32>>2];ea=z[g+32>>2];while(1){a=h;N=a+80|0;e=w[a+2|0];U=N+B(e,48)|0;fa=U+((e<<2)+12&2032)|0;W=w[a+3|0];ka=W<<6;O=z[a+48>>2];P=z[a+12>>2];ga=z[a+8>>2];ha=z[a+4>>2];a:{if(!e){i=C(0);break a}j=z[a+40>>2];k=z[a+32>>2];n=z[a+36>>2];X=C(C(Y*j)+C(C(_*k)+C(Z*n)));V=C(O*k);J=C(P*k);la=C(O*j);ma=C(O*n);na=C(P*j);oa=C(P*n);Q=C(-z[a+44>>2]);m=0;i=C(0);while(1){h=N+B(m,48)|0;d=z[h+32>>2];ia=(m<<2)+U|0;l=z[ia>>2];R=C(-l);pa=d;K=z[h+8>>2];L=z[h>>2];M=z[h+4>>2];o=z[h+24>>2];T=z[h+16>>2];S=z[h+20>>2];d=C(z[h+12>>2]+C(C(X+C(C(C(ba*K)+C(C(ea*L)+C(ca*M)))-C(C($*o)+C(C(da*T)+C(aa*S)))))-C(d*c)));d=C(z[h+36>>2]*(b>d?b:d));d=C(z[h+28>>2]*C(C(pa+(dR?d:R)),C(34028234663852886e22)));z[ia>>2]=d;i=C(i+d);d=C(d-l);y=C(y-C(la*d));A=C(A-C(ma*d));E=C(E-C(V*d));G=C(G+C(na*d));H=C(H+C(oa*d));I=C(I+C(J*d));l=C(ga*d);p=C(p-C(o*l));q=C(q-C(S*l));t=C(t-C(T*l));d=C(ha*d);r=C(r+C(K*d));s=C(s+C(M*d));u=C(u+C(L*d));m=m+1|0;if((e|0)!=(m|0)){continue}break}}h=fa+ka|0;if(W){T=C(i*z[a+16>>2]);S=C(i*z[a+20>>2]);X=C(-S);m=0;N=0;while(1){e=(m<<6)+fa|0;n=z[e+56>>2];o=C(n*X);V=z[e+52>>2];d=z[e+44>>2];i=z[e+8>>2];j=z[e>>2];k=z[e+4>>2];Q=z[e+24>>2];l=z[e+16>>2];R=z[e+20>>2];K=z[e+40>>2];L=z[e+32>>2];M=z[e+36>>2];J=z[e+28>>2];d=C(C(V-C(d*C(C(z[e+48>>2]*C(z[e+12>>2]+C(C(C(C(i*Y)+C(C(j*_)+C(Z*k)))+C(C(C(Q*ba)+C(C(l*ea)+C(ca*R)))-C(C(K*$)+C(C(L*da)+C(aa*M)))))-C(J*c))))-J)))-C(d*C(C(C(C(C(I*j)+C(u*l))-C(C(E*j)+C(t*L)))+C(C(C(H*k)+C(s*R))-C(C(A*k)+C(q*M))))+C(C(C(G*i)+C(r*Q))-C(C(y*i)+C(p*K))))));o=dC(T*n);d=e?o>2]=d;d=C(d-V);y=C(y-C(C(O*i)*d));A=C(A-C(C(O*k)*d));E=C(E-C(C(O*j)*d));G=C(G+C(C(P*i)*d));H=C(H+C(C(P*k)*d));I=C(I+C(C(P*j)*d));i=C(ga*d);p=C(p-C(K*i));q=C(q-C(M*i));t=C(t-C(L*i));d=C(ha*d);r=C(r+C(Q*d));s=C(s+C(R*d));u=C(u+C(l*d));N=0-(e|(N|0)!=0)|0;m=m+1|0;if((W|0)!=(m|0)){continue}break}v[a+56>>2]=N}if(h>>>0>>0){continue}break}}z[g+8>>2]=G;z[g+4>>2]=H;z[g>>2]=I;z[f+8>>2]=y;z[f+4>>2]=A;z[f>>2]=E;z[g+24>>2]=r;z[g+20>>2]=s;z[g+16>>2]=u;z[f+24>>2]=p;z[f+20>>2]=q;z[f+16>>2]=t}function Jv(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0);h=z[c+20>>2];i=z[c+24>>2];e=z[c+36>>2];q=z[c+40>>2];r=z[c+56>>2];s=z[c+48>>2];t=z[c+52>>2];R=z[b+20>>2];S=z[b+36>>2];T=z[b+24>>2];U=z[b+40>>2];j=z[b+52>>2];k=z[b+56>>2];B=z[b+112>>2];V=z[b+128>>2];l=z[b- -64>>2];D=z[b+68>>2];E=z[b+72>>2];F=z[b+132>>2];W=z[b+100>>2];X=z[b+116>>2];G=z[b+80>>2];H=z[b+84>>2];f=z[c+68>>2];I=z[b+88>>2];g=z[c+72>>2];J=z[b+136>>2];w=z[c+88>>2];Y=z[b+104>>2];x=z[c+80>>2];Z=z[b+120>>2];y=z[c+84>>2];m=z[c+8>>2];n=z[c>>2];o=z[c+4>>2];p=z[c+16>>2];u=z[c+32>>2];_=z[b+32>>2];$=z[b+16>>2];aa=z[b>>2];ba=z[b+4>>2];ca=z[b+8>>2];K=z[b+48>>2];da=z[b+96>>2];A=z[c+64>>2];v[d+92>>2]=0;v[d+76>>2]=0;v[d+60>>2]=0;v[d+44>>2]=0;v[d+28>>2]=0;v[d+12>>2]=0;L=C(C(C(I*g)+C(C(G*A)+C(f*H)))+C(C(J*w)+C(C(Y*x)+C(y*Z))));z[d+88>>2]=L;M=C(C(C(E*g)+C(C(l*A)+C(f*D)))+C(C(F*w)+C(C(W*x)+C(y*X))));z[d+84>>2]=M;N=C(C(C(k*g)+C(C(K*A)+C(f*j)))+C(C(V*w)+C(C(da*x)+C(y*B))));z[d+80>>2]=N;O=C(C(C(U*g)+C(C(ca*A)+C(f*T)))+C(C(I*w)+C(C(k*x)+C(y*E))));z[d+72>>2]=O;P=C(C(C(S*g)+C(C(ba*A)+C(f*R)))+C(C(H*w)+C(C(j*x)+C(y*D))));z[d+68>>2]=P;Q=C(C(C(_*g)+C(C(aa*A)+C(f*$)))+C(C(G*w)+C(C(K*x)+C(y*l))));z[d+64>>2]=Q;ea=C(C(C(I*q)+C(C(G*u)+C(e*H)))+C(C(J*r)+C(C(Y*s)+C(t*Z))));z[d+56>>2]=ea;fa=C(C(C(E*q)+C(C(l*u)+C(e*D)))+C(C(F*r)+C(C(W*s)+C(t*X))));z[d+52>>2]=fa;ga=C(C(C(k*q)+C(C(K*u)+C(e*j)))+C(C(V*r)+C(C(da*s)+C(t*B))));z[d+48>>2]=ga;ha=C(C(C(U*q)+C(C(ca*u)+C(e*T)))+C(C(I*r)+C(C(k*s)+C(t*E))));z[d+40>>2]=ha;ia=C(C(C(S*q)+C(C(ba*u)+C(e*R)))+C(C(H*r)+C(C(j*s)+C(t*D))));z[d+36>>2]=ia;ja=C(C(C(_*q)+C(C(aa*u)+C(e*$)))+C(C(G*r)+C(C(K*s)+C(t*l))));z[d+32>>2]=ja;J=C(C(C(I*m)+C(C(G*n)+C(o*H)))+C(C(J*i)+C(C(Y*p)+C(h*Z))));z[d+24>>2]=J;F=C(C(C(E*m)+C(C(l*n)+C(o*D)))+C(C(F*i)+C(C(W*p)+C(h*X))));z[d+20>>2]=F;B=C(C(C(k*m)+C(C(K*n)+C(o*j)))+C(C(V*i)+C(C(da*p)+C(h*B))));z[d+16>>2]=B;k=C(C(C(U*m)+C(C(ca*n)+C(o*T)))+C(C(I*i)+C(C(k*p)+C(h*E))));z[d+8>>2]=k;j=C(C(C(S*m)+C(C(ba*n)+C(o*R)))+C(C(H*i)+C(C(j*p)+C(h*D))));z[d+4>>2]=j;l=C(C(C(_*m)+C(C(aa*n)+C(o*$)))+C(C(G*i)+C(C(K*p)+C(h*l))));z[d>>2]=l;v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;z[a+40>>2]=C(C(g*O)+C(C(A*Q)+C(f*P)))+C(C(w*L)+C(C(x*N)+C(y*M)));f=C(C(C(q*O)+C(C(u*Q)+C(e*P)))+C(C(r*L)+C(C(s*N)+C(t*M))));z[a+36>>2]=f;g=C(C(C(m*O)+C(C(n*Q)+C(o*P)))+C(C(i*L)+C(C(p*N)+C(h*M))));z[a+32>>2]=g;z[a+24>>2]=f;z[a+20>>2]=C(C(q*ha)+C(C(u*ja)+C(e*ia)))+C(C(r*ea)+C(C(s*ga)+C(t*fa)));e=C(C(C(m*ha)+C(C(n*ja)+C(o*ia)))+C(C(i*ea)+C(C(p*ga)+C(h*fa))));z[a+16>>2]=e;z[a+8>>2]=g;z[a+4>>2]=e;z[a>>2]=C(C(m*k)+C(C(n*l)+C(o*j)))+C(C(i*J)+C(C(p*B)+C(h*F)))}function mJ(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=xa-48|0;xa=h;WH(b+4|0,e);if(w[b+25|0]&16){e=v[b+36>>2];nJ(v[a>>2],v[b+28>>2],v[b+32>>2],e,c&1);i=v[a+108>>2];v[v[i>>2]+(e<<2)>>2]=v[i+12>>2];v[i+12>>2]=e}a:{b:{switch(w[b+24|0]){case 1:t[h+44|0]=0;u[h+16>>1]=65535;v[h+8>>2]=-1;v[h+12>>2]=-1;e=w[b+58|0];t[b+58|0]=0;c:{if(!(x[b+56>>1]&((e|0)!=0)<<4)){break c}d=v[b+32>>2];f=v[b+28>>2];v[h+24>>2]=v[37419]+v[f+28>>2];g=v[37419]+v[d+28>>2]|0;t[h+44|0]=c<<2&4;v[h+40>>2]=e<<4;v[h+32>>2]=g;c=v[v[d+4>>2]+44>>2];e=v[v[f+4>>2]+44>>2];v[h+28>>2]=v[((w[e+9|0]<<2)+149664|0)+40>>2]+e;v[h+36>>2]=c+v[((w[c+9|0]<<2)+149664|0)+40>>2];e=w[e+7|0];f=v[f+32>>2];d=v[d+32>>2];t[h+17|0]=w[c+7|0];t[h+16|0]=e;v[h+12>>2]=d;v[h+8>>2]=f;c=v[a>>2];d=v[c+1184>>2];d:{if(d>>>0>=(v[c+1188>>2]&2147483647)>>>0){d=0;e=c+1180|0;c=v[e+8>>2];g=c&2147483647?c<<1:1;e:{if(!g){break e}f=B(g,24);if(!f){break e}c=v[37696];d=c+12|0;d=(l=d,m=f,n=Ba[v[v[c>>2]+20>>2]](c)|0?31271:63804,o=16608,p=553,k=v[v[d>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}c=v[e+4>>2];if((c|0)>0){i=B(c,24)+d|0;f=v[e>>2];c=d;while(1){j=v[f+4>>2];v[c>>2]=v[f>>2];v[c+4>>2]=j;v[c+16>>2]=v[f+16>>2];j=v[f+12>>2];v[c+8>>2]=v[f+8>>2];v[c+12>>2]=j;t[c+20|0]=w[f+20|0];f=f+24|0;c=c+24|0;if(i>>>0>c>>>0){continue}break}c=v[e+4>>2]}f=v[h+28>>2];c=B(c,24)+d|0;v[c>>2]=v[h+24>>2];v[c+4>>2]=f;v[c+16>>2]=v[h+40>>2];f=v[h+36>>2];v[c+8>>2]=v[h+32>>2];v[c+12>>2]=f;t[c+20|0]=w[h+44|0];f:{if(v[e+8>>2]<0){break f}c=v[e>>2];if(!c){break f}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,c)}v[e+8>>2]=g;v[e>>2]=d;v[e+4>>2]=v[e+4>>2]+1;break d}e=v[h+28>>2];d=v[c+1180>>2]+B(d,24)|0;v[d>>2]=v[h+24>>2];v[d+4>>2]=e;v[d+16>>2]=v[h+40>>2];e=v[h+36>>2];v[d+8>>2]=v[h+32>>2];v[d+12>>2]=e;t[d+20|0]=w[h+44|0];v[c+1184>>2]=v[c+1184>>2]+1}g=v[v[a>>2]+1192>>2];c=v[g+4>>2];if(c>>>0>=(v[g+8>>2]&2147483647)>>>0){d=0;c=v[g+8>>2];i=c&2147483647?c<<1:1;g:{if(!i){break g}e=B(i,12);if(!e){break g}c=v[37696];d=c+12|0;d=(p=d,o=e,n=Ba[v[v[c>>2]+20>>2]](c)|0?48101:63804,m=16608,l=553,k=v[v[d>>2]+8>>2],Ba[k](p|0,o|0,n|0,m|0,l|0)|0)}c=v[g+4>>2];if((c|0)>0){c=B(c,12)+d|0;f=v[g>>2];e=d;while(1){j=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=j;v[e+8>>2]=v[f+8>>2];f=f+12|0;e=e+12|0;if(c>>>0>e>>>0){continue}break}c=v[g+4>>2]}e=v[h+12>>2];c=B(c,12)+d|0;v[c>>2]=v[h+8>>2];v[c+4>>2]=e;v[c+8>>2]=v[h+16>>2];h:{if(v[g+8>>2]<0){break h}c=v[g>>2];if(!c){break h}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,c)}v[g+8>>2]=i;v[g>>2]=d;v[g+4>>2]=v[g+4>>2]+1;break c}d=v[h+12>>2];c=v[g>>2]+B(c,12)|0;v[c>>2]=v[h+8>>2];v[c+4>>2]=d;v[c+8>>2]=v[h+16>>2];v[g+4>>2]=v[g+4>>2]+1}Ba[v[v[b>>2]>>2]](b)|0;c=a+1268|0;v[c>>2]=v[c>>2]-1;a=a+1276|0;v[b>>2]=v[a>>2];v[a>>2]=b;break a;case 2:Ba[v[v[b>>2]>>2]](b)|0;c=a+1852|0;v[c>>2]=v[c>>2]-1;a=a+1860|0;v[b>>2]=v[a>>2];v[a>>2]=b;break a;case 0:break b;default:break a}}if(c&3){oJ(a,b,c,d,f,g)}Ba[v[v[b>>2]>>2]](b)|0;v[a+976>>2]=v[a+976>>2]-1;v[b>>2]=v[a+984>>2];v[a+984>>2]=b}xa=h+48|0}function yu(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=a+4892|0;e=xa-288|0;xa=e;a:{if(!c){v[b>>2]=a;c=v[b+4>>2];b:{if(!w[a+4785|0]){v[b+4>>2]=c&268435455|-2147483648;zu(a+16|0,b,d);break b}d=c&1073741823;if(c>>>0>=3221225472){v[b+4>>2]=d|-2147483648;if(c&268435456){break b}v[e+16>>2]=b;Pg(f,e+16|0);break b}v[b+4>>2]=d|1073741824;v[e+16>>2]=b;c=rh(f,e+16|0,e+12|0);if(w[e+12|0]){break b}v[c>>2]=v[e+16>>2]}if(!w[a+4785|0]){break a}t[e+272|0]=1;v[e+280>>2]=0;v[e+284>>2]=64;v[e+276>>2]=e+16;c=_o(b,e+12|0);c:{if(!c){break c}d=v[b+4>>2]&-1073741824;b=v[b>>2];a=0;if((c|0)!=1){h=c&-2;while(1){g=a<<2;f=v[g+v[e+12>>2]>>2];j=v[(f+32|0)+4>>2];if((j&251658240)==16777216){v[f+32>>2]=b;v[f+36>>2]=d|j&1073741823}f=v[v[e+12>>2]+(g|4)>>2];g=v[(f+32|0)+4>>2];if((g&251658240)==16777216){v[f+32>>2]=b;v[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=v[v[e+12>>2]+(a<<2)>>2];c=v[(a+32|0)+4>>2];if((c&251658240)!=16777216){break c}v[a+32>>2]=b;v[a+36>>2]=d|c&1073741823}a=v[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a);break a}c=xa-288|0;xa=c;v[b>>2]=a;d=v[b+4>>2];d:{if(!w[a+4785|0]){v[b+4>>2]=d&268435455|-2147483648;t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;d=_o(b,c+12|0);e:{if(!d){break e}f=v[b>>2];a=0;if((d|0)!=1){g=d&-2;b=0;while(1){j=a<<2;h=v[j+v[c+12>>2]>>2];i=v[h+36>>2];if((i&251658240)==16777216){v[h+32>>2]=f;v[h+36>>2]=i&1073741823|-2147483648}h=v[v[c+12>>2]+(j|4)>>2];j=v[h+36>>2];if((j&251658240)==16777216){v[h+32>>2]=f;v[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=v[v[c+12>>2]+(a<<2)>>2];b=v[a+36>>2];if((b&251658240)!=16777216){break e}v[a+32>>2]=f;v[a+36>>2]=b&1073741823|-2147483648}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break d}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break d}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break d}a=d&1073741823;f:{if(d>>>0>=3221225472){v[b+4>>2]=a|-2147483648;if(d&268435456){break f}v[c+16>>2]=b;Pg(f,c+16|0);break f}v[b+4>>2]=a|1073741824;v[c+16>>2]=b;a=rh(f,c+16|0,c+12|0);if(w[c+12|0]){break f}v[a>>2]=v[c+16>>2]}t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;d=_o(b,c+12|0);g:{if(!d){break g}f=v[b+4>>2]&-1073741824;h=v[b>>2];a=0;if((d|0)!=1){j=d&-2;b=0;while(1){i=a<<2;g=v[i+v[c+12>>2]>>2];k=v[g+36>>2];if((k&251658240)==16777216){v[g+32>>2]=h;v[g+36>>2]=f|k&1073741823}g=v[v[c+12>>2]+(i|4)>>2];i=v[g+36>>2];if((i&251658240)==16777216){v[g+32>>2]=h;v[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=v[v[c+12>>2]+(a<<2)>>2];b=v[a+36>>2];if((b&251658240)!=16777216){break g}v[a+32>>2]=h;v[a+36>>2]=f|b&1073741823}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break d}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break d}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=c+288|0}xa=e+288|0}function wJ(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,z=0,A=0,C=0;i=xa-16|0;xa=i;e=v[b+4>>2];f=v[c+4>>2];g=y[e+48>>2]>y[f+48>>2];k=g?f:e;v[i>>2]=v[k+48>>2];l=g?e:f;v[i+4>>2]=v[l+48>>2];a:{b:{g=a+1916|0;e=v[g+20>>2];c:{if(!e){break c}m=v[i>>2];n=v[i+4>>2];f=m&65535|n<<16;f=(f<<15^-1)+f|0;f=B(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;j=e-1&(f>>>16^f);h=v[v[g+12>>2]+(j<<2)>>2];if((h|0)==-1){break c}o=v[g+8>>2];p=v[g+4>>2];while(1){f=B(h,12)+p|0;if((m|0)==v[f>>2]&v[f+4>>2]==(n|0)){break b}h=v[(h<<2)+o>>2];if((h|0)!=-1){continue}break}}t[i+15|0]=0;if(v[g+36>>2]==v[g+16>>2]){f=e?e<<1:16;if(f>>>0>e>>>0){kI(g,f);e=v[g+20>>2]}f=e-1|0;e=x[i>>1]|v[i+4>>2]<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;j=f&(e>>>16^e)}e=v[g+28>>2];v[g+28>>2]=e+1;f=v[g+12>>2]+(j<<2)|0;v[v[g+8>>2]+(e<<2)>>2]=v[f>>2];v[f>>2]=e;v[g+36>>2]=v[g+36>>2]+1;v[g+32>>2]=v[g+32>>2]+1;f=v[g+4>>2]+B(e,12)|0;break a}t[i+15|0]=1}e=f;d:{e:{f:{g:{if(!w[i+15|0]){f=v[i+4>>2];g=v[i>>2];v[e+8>>2]=0;v[e>>2]=g;v[e+4>>2]=f;j=e+8|0;break g}j=e+8|0;e=v[e+8>>2];if(e){break f}}if(!d){e=v[a+400>>2];if(!e){f=xa-16|0;xa=f;g=a+112|0;c=v[g+284>>2];if(c){b=v[37696];d=b+12|0;e=(r=d,s=c,z=Ba[v[v[b>>2]+20>>2]](b)|0?31157:63804,A=18373,C=180,q=v[v[d>>2]+8>>2],Ba[q](r|0,s|0,z|0,A|0,C|0)|0)}else{e=0}v[f+12>>2]=e;b=v[g+268>>2];h:{if(b>>>0>=(v[g+272>>2]&2147483647)>>>0){b=0;c=g+4|0;d=v[c+268>>2];l=d&2147483647?d<<1:1;i:{if(!l){break i}d=l<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break i}if(!d){break i}b=v[37696];h=Ba[v[v[b>>2]+20>>2]](b)|0?31157:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,h,16608,553)|0}h=v[c+264>>2];m=(h<<2)+b|0;if((h|0)>0){k=v[c+260>>2];d=b;while(1){v[d>>2]=v[k>>2];k=k+4|0;d=d+4|0;if(m>>>0>d>>>0){continue}break}}v[m>>2]=v[f+12>>2];j:{if(v[c+268>>2]<0){break j}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break j}if(!d){break j}h=v[37696];Ba[v[v[h+12>>2]+12>>2]](h+12|0,d);h=v[c+264>>2]}v[c+268>>2]=l;v[c+260>>2]=b;v[c+264>>2]=h+1;break h}v[v[g+264>>2]+(b<<2)>>2]=e;v[g+268>>2]=b+1}b=(e+(v[g+276>>2]<<3)|0)-8|0;if(e>>>0<=b>>>0){c=v[g+288>>2];while(1){v[b>>2]=c;c=b;b=c-8|0;if(e>>>0<=b>>>0){continue}break}v[g+288>>2]=c}xa=f+16|0;e=v[a+400>>2]}v[a+400>>2]=v[e>>2];v[a+392>>2]=v[a+392>>2]+1;u[e+4>>1]=0;u[e>>1]=0;u[e+2>>1]=0;break e}f=v[c+4>>2];g=v[b+4>>2];e=v[a+692>>2];if(!e){xJ(a+404|0);e=v[a+692>>2]}v[a+692>>2]=v[e>>2];v[a+684>>2]=v[a+684>>2]+1;v[e+16>>2]=0;v[e+12>>2]=f;v[e+8>>2]=g;u[e+4>>1]=0;v[e>>2]=1;v[j>>2]=e}if(!d|u[e>>1]&1){break d}d=v[k+28>>2];c=v[c+4>>2];f=v[b+4>>2];b=v[k+20>>2];e=v[a+692>>2];if(!e){xJ(a+404|0);e=v[a+692>>2]}v[a+692>>2]=v[e>>2];v[a+684>>2]=v[a+684>>2]+1;v[e+16>>2]=0;v[e+12>>2]=c;v[e+8>>2]=f;u[e+4>>1]=0;v[e>>2]=1;a=v[j>>2];u[e+2>>1]=x[a+2>>1];u[e+4>>1]=x[a+4>>1];if(!d){break e}while(1){d=d-1|0;a=v[b>>2];if(!((l|0)!=v[a>>2]&(l|0)!=v[a+4>>2]|w[a+20|0]|!v[a+44>>2])){v[a+44>>2]=e}b=b+4|0;if(d){continue}break}}v[j>>2]=e}xa=i+16|0;return e}function HM(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),y=C(0),A=0,D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=0,X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=0,ea=C(0);if(g){while(1){A=U<<2;l=v[A+a>>2];p=x[l+30>>1];m=C(C(1)-C(z[l+108>>2]*i));n=C(C(1)-C(z[l+104>>2]*i));D=z[l+80>>2];y=z[l+64>>2];F=z[l+100>>2];H=z[l+88>>2];I=z[l+84>>2];r=z[l+72>>2];s=z[l+68>>2];if(!w[l+157|0]){q=z[v[b+A>>2]+76>>2];r=C(r+C(q*C(z[h+8>>2]*i)));s=C(s+C(q*C(z[h+4>>2]*i)));y=C(y+C(q*C(z[h>>2]*i)))}O=z[l+96>>2];o=m>=C(0)?m:C(0);m=C(o*H);q=C(o*I);o=C(o*D);n=n>=C(0)?n:C(0);r=C(n*r);y=C(n*y);s=C(n*s);n=C(C(r*r)+C(C(y*y)+C(s*s)));if(n>F){n=C(K(C(F/n)));r=C(r*n);s=C(s*n);y=C(y*n)}n=C(C(m*m)+C(C(o*o)+C(q*q)));if(n>O){n=C(K(C(O/n)));m=C(m*n);o=C(o*n);q=C(q*n)}E=p>>>8|0;V=E>>>0>V>>>0?E:V;p=p&255;W=p>>>0>W>>>0?p:W;z[l+88>>2]=m;z[l+84>>2]=q;z[l+80>>2]=o;z[l+72>>2]=r;z[l+68>>2]=s;z[l+64>>2]=y;aa=z[l+124>>2];ba=z[l+76>>2];ca=z[l+128>>2];da=v[f+A>>2];ea=z[l+92>>2];N=w[l+158|0];U=U+1|0;p=U<<6;A=p+c|0;E=B(U,48)+e|0;r=z[l>>2];q=C(r+r);m=z[l+8>>2];J=C(q*m);o=z[l+4>>2];s=C(o+o);n=z[l+12>>2];L=C(s*n);y=C(J-L);p=d+p|0;F=C(C(1)-C(r*q));M=C(o*s);r=C(F-M);D=z[l+120>>2];H=D==C(0)?C(0):C(K(D));D=z[l+112>>2];I=D==C(0)?C(0):C(K(D));D=C(s*m);P=C(q*n);s=C(D+P);G=z[l+116>>2];G=G==C(0)?C(0):C(K(G));z[p+60>>2]=C(C(r*H)*r)+C(C(C(y*I)*y)+C(s*C(s*G)));Q=C(q*o);o=C(m+m);R=C(n*o);n=C(Q+R);q=C(n*I);S=C(m*o);F=C(F-S);o=C(F*G);D=C(D-P);T=C(D*H);z[p+44>>2]=C(T*D)+C(C(q*n)+C(F*o));P=C(Q-R);m=C(P*G);Q=C(J+L);J=C(Q*H);R=C(C(C(1)-M)-S);L=C(R*I);z[p+28>>2]=C(J*Q)+C(C(L*R)+C(P*m));M=C(C(J*D)+C(C(L*n)+C(F*m)));z[p+40>>2]=M;z[p+32>>2]=M;m=C(C(J*r)+C(C(L*y)+C(s*m)));z[p+52>>2]=m;z[p+36>>2]=m;m=C(C(T*r)+C(C(q*y)+C(s*o)));z[p+56>>2]=m;z[p+48>>2]=m;z[p+16>>2]=z[l+16>>2];z[p+20>>2]=z[l+20>>2];m=z[l+24>>2];v[p+8>>2]=0;v[p+12>>2]=1065353216;v[p>>2]=0;v[p+4>>2]=0;z[p+24>>2]=m;m=z[l+88>>2];q=z[l+84>>2];o=z[l+80>>2];l=l- -64|0;J=z[l+8>>2];L=z[l+4>>2];M=z[l>>2];if(N){q=N&16?C(0):q;o=N&8?C(0):o;J=N&4?C(0):J;L=N&2?C(0):L;M=N&1?C(0):M;m=N&32?C(0):m}v[A+48>>2]=0;v[A+52>>2]=0;z[A+8>>2]=J;z[A+4>>2]=L;z[A>>2]=M;t[A+62|0]=0;u[A+60>>1]=N;v[A+28>>2]=0;v[A+32>>2]=0;v[A+56>>2]=0;v[A+36>>2]=0;v[A+40>>2]=0;z[A+44>>2]=K(O);H=H==C(0)?C(0):C(C(1)/H);O=C(Q*H);I=I==C(0)?C(0):C(C(1)/I);S=C(R*I);G=G==C(0)?C(0):C(C(1)/G);T=C(P*G);X=C(C(O*r)+C(C(S*y)+C(s*T)));Y=C(D*H);Z=C(n*I);_=C(F*G);$=C(C(Y*r)+C(C(Z*y)+C(s*_)));z[A+24>>2]=C(C(X*o)+C($*q))+C(C(C(C(r*H)*r)+C(C(C(y*I)*y)+C(s*C(s*G))))*m);y=C(C(O*D)+C(C(S*n)+C(F*T)));z[A+20>>2]=C(C(y*o)+C(C(C(Y*D)+C(C(Z*n)+C(F*_)))*q))+C($*m);z[A+16>>2]=C(C(C(C(O*Q)+C(C(S*R)+C(P*T)))*o)+C(y*q))+C(X*m);z[E>>2]=M;z[E+4>>2]=L;z[E+8>>2]=J;z[E+16>>2]=o;z[E+20>>2]=q;z[E+24>>2]=m;z[E+12>>2]=ca;z[E+40>>2]=ea;z[E+28>>2]=ba;z[E+32>>2]=aa;v[E+36>>2]=da;if((g|0)!=(U|0)){continue}break}}v[j>>2]=W;v[k>>2]=V}function XP(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,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;x=v[d>>2];w=v[b>>2];y=a-w|0;m=y;o=(w<<2)+j|0;n=v[f+328>>2];q=m-n|0;p=m>>>0>>0?0:q;j=m-p|0;t=I9(o,v[f+324>>2]+(n-j<<2)|0,j<<2);o=f;r=v[f+328>>2]-j|0;v[f+328>>2]=r;a:{b:{if(m>>>0<=n>>>0){f=j;break b}m=p-1|0;n=v[o+312>>2];f=m+n|0;c:{if(f>>>0>>0){f=j;break c}f=(f>>>0)/(n>>>0)|0;C=f>>>0>1?f:1;while(1){m=B(v[o+312>>2],80);if(!m){break a}f=v[37696];n=f+12|0;u=(E=n,F=m,G=Ba[v[v[f>>2]+20>>2]](f)|0?33299:63804,H=18447,I=135,D=v[v[n>>2]+8>>2],Ba[D](E|0,F|0,G|0,H|0,I|0)|0);if(!u){break a}m=v[o+316>>2];f=m+1|0;n=v[o+312>>2];s=B(f,n);p=v[o+344>>2];d:{if(s>>>0<=p<<5>>>0){p=v[o+332>>2];break d}m=(s<<1)+31>>>5|0;if(m>>>0>(p&2147483647)>>>0){n=v[37696]+12|0;n=Ba[v[v[n>>2]+8>>2]](n,m<<2,24422,17999,438)|0;p=v[o+340>>2];e:{if(!p){break e}I9(n,p,v[o+344>>2]<<2);if(v[o+344>>2]<0){break e}p=v[o+340>>2];if(!p){break e}s=v[37696]+12|0;Ba[v[v[s>>2]+12>>2]](s,p)}p=v[o+344>>2];J9(n+(p<<2)|0,0,m-p<<2);v[o+344>>2]=m;v[o+340>>2]=n}m=v[o+324>>2];if(m){n=v[37696]+12|0;Ba[v[v[n>>2]+12>>2]](n,m)}p=0;m=f<<3;s=B(m,v[o+312>>2]);if(s){n=v[37696];z=n+12|0;n=(I=z,H=s,G=Ba[v[v[n>>2]+20>>2]](n)|0?33299:63804,F=18447,E=147,D=v[v[z>>2]+8>>2],Ba[D](I|0,H|0,G|0,F|0,E|0)|0)}else{n=0}v[o+324>>2]=n;if(m){n=v[37696];p=n+12|0;p=(E=p,F=m,G=Ba[v[v[n>>2]+20>>2]](n)|0?33299:63804,H=18447,I=149,D=v[v[p>>2]+8>>2],Ba[D](E|0,F|0,G|0,H|0,I|0)|0)}m=v[o+332>>2];f:{if(!m){break f}I9(p,m,f<<2);f=v[o+332>>2];if(!f){break f}m=v[37696]+12|0;Ba[v[v[m>>2]+12>>2]](m,f)}v[o+332>>2]=p;m=v[o+316>>2];f=m+1|0;n=v[o+312>>2]}v[o+316>>2]=f;v[(m<<2)+p>>2]=u;p=B(m,n);m=n-1|0;if((q|0)<=(m|0)){while(1){f=uK(B(m,80)+u|0,m+p|0);v[v[o+324>>2]+(r<<2)>>2]=f;r=r+1|0;m=m-1|0;if((q|0)<=(m|0)){continue}break}}f=j;n=q+f|0;if((m|0)>=0){q=(f<<2)+t|0;s=f+1|0;f=m;while(1){j=f;D=q+(f<<2)|0,I=uK(B(f,80)+u|0,f+p|0),v[D>>2]=I;f=f-1|0;if(j){continue}break}f=m+s|0}q=n-f|0;j=f;A=A+1|0;if((A|0)!=(C|0)){continue}break}}v[o+328>>2]=r}g:{if(!f){break g}j=v[o+340>>2];n=0;if((f|0)!=1){m=f&-2;o=0;while(1){q=n<<2;r=v[v[q+t>>2]+48>>2];p=j+(r>>>3&536870908)|0;v[p>>2]=v[p>>2]|1<>2]+48>>2];r=j+(q>>>3&536870908)|0;v[r>>2]=v[r>>2]|1<>2]+48>>2];j=j+(f>>>3&536870908)|0;v[j>>2]=v[j>>2]|1<>2];if(!f){uJ(o);f=v[g+984>>2]}v[g+984>>2]=v[f>>2];v[g+976>>2]=v[g+976>>2]+1;v[(v[b>>2]+j<<2)+k>>2]=f;j=j+1|0;if((y|0)!=(j|0)){continue}break}}if((c|0)!=(x|0)){k=c-x|0;o=g+1572|0;j=0;while(1){f=v[g+1860>>2];if(!f){sJ(o);f=v[g+1860>>2]}v[g+1860>>2]=v[f>>2];v[g+1852>>2]=v[g+1852>>2]+1;v[(v[d>>2]+j<<2)+l>>2]=f;j=j+1|0;if((k|0)!=(j|0)){continue}break}}v[b>>2]=a;v[d>>2]=c;v[h+24>>2]=1;v[h+52>>2]=e;v[h+20>>2]=i;if(i){Ba[v[v[i>>2]+16>>2]](i);v[h+16>>2]=v[v[h+20>>2]+16>>2]}Ba[v[v[h>>2]+20>>2]](h)}function tI(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=xa-16|0;xa=o;if(b){v[a+68>>2]=b;v[a+72>>2]=1;Ba[v[v[b>>2]+16>>2]](b);v[a- -64>>2]=v[v[a+68>>2]+16>>2];v[a+32>>2]=1;e=a+48|0;v[a+28>>2]=e;Ba[v[v[a+48>>2]+16>>2]](e);v[a+24>>2]=v[v[a+28>>2]+16>>2]}v[a+400>>2]=v[a+400>>2]+1;if(v[a+264>>2]?1:v[a+232>>2]|v[a+248>>2]){e=v[a+272>>2];Ba[v[v[e>>2]+48>>2]](e,c)}a:{if(y[a+308>>2]>=(v[a+312>>2]>>>1&1073741823)>>>0){v[a+308>>2]=0;break a}c=a+304|0;uI(c,o);vI(c,v[a+308>>2])}b:{if(y[a+332>>2]>=(v[a+336>>2]>>>1&1073741823)>>>0){v[a+332>>2]=0;break b}c=a+328|0;uI(c,o);vI(c,v[a+332>>2])}c:{if(y[a+320>>2]>=(v[a+324>>2]>>>1&1073741823)>>>0){v[a+320>>2]=0;break c}c=a+316|0;uI(c,o);vI(c,v[a+320>>2])}d:{if(y[a+344>>2]>=(v[a+348>>2]>>>1&1073741823)>>>0){v[a+344>>2]=0;break d}c=a+340|0;uI(c,o);vI(c,v[a+344>>2])}c=v[a+272>>2];j=Ba[v[v[c>>2]+60>>2]](c)|0;c=v[a+272>>2];c=Ba[v[v[c>>2]+64>>2]](c)|0;if(j){i=1073741823;e=1073741823;while(1){j=j-1|0;l=v[c>>2];p=v[c+4>>2];if(!((l|0)==(e|0)&(p|0)==(i|0))){i=xa-16|0;xa=i;g=v[a+196>>2];e=v[c+4>>2];h=g+(e<<3)|0;m=v[h+4>>2];f=v[c>>2];g=g+(f<<3)|0;k=v[g+4>>2];e:{if((m&k)==-1){g=v[g>>2];if(g>>>0<4){break e}h=v[h>>2];if(h>>>0<4){break e}v[i+4>>2]=e;v[i>>2]=f;e=g&3;f=h&3;e=(a+328|0)+B((e|0)>(f|0)?e:f,12)|0;f=v[e+4>>2];if(f>>>0>=(v[e+8>>2]&2147483647)>>>0){sI(e,i);break e}g=v[i+4>>2];f=v[e>>2]+B(f,12)|0;v[f>>2]=v[i>>2];v[f+4>>2]=g;v[f+8>>2]=v[i+8>>2];v[e+4>>2]=v[e+4>>2]+1;break e}g=a+404|0;g=(k|0)==-1?g:(m|0)==-1?g:a+444|0;m=v[g+8>>2];h=e>>>0>>0?e:f;f=e>>>0>f>>>0?e:f;e=h&65535|f<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=v[v[g+12>>2]+((v[g+20>>2]-1&(e>>>16^e))<<2)>>2];g=v[g+4>>2];k=B(e,12)+g|0;if(!(v[k>>2]==(h|0)&(f|0)==v[k+4>>2])){while(1){e=v[m+(e<<2)>>2];k=g+B(e,12)|0;if((h|0)!=v[k>>2]|v[k+4>>2]!=(f|0)){continue}break}}g=v[(g+B(e,12)|0)+8>>2];m=v[g+16>>2];if(m){k=a+328|0;e=0;while(1){n=v[a+196>>2];f=v[g+28>>2]+(e<<3)|0;h=v[f>>2];q=v[n+(h<<3)>>2];f:{if(q>>>0<4){break f}f=v[f+4>>2]&2147483647;n=v[n+(f<<3)>>2];if(n>>>0<4){break f}v[i+4>>2]=f;v[i>>2]=h&2147483647;f=q&3;h=n&3;f=k+B((f|0)>(h|0)?f:h,12)|0;h=v[f+4>>2];if(h>>>0>=(v[f+8>>2]&2147483647)>>>0){sI(f,i);break f}n=v[i+4>>2];h=v[f>>2]+B(h,12)|0;v[h>>2]=v[i>>2];v[h+4>>2]=n;v[h+8>>2]=v[i+8>>2];v[f+4>>2]=v[f+4>>2]+1}e=e+1|0;if((m|0)!=(e|0)){continue}break}}t[g+36|0]=1}xa=i+16|0;i=p;e=l}c=c+8|0;if(j){continue}break}}g:{if(b){c=v[a+392>>2];if(c){e=a+8|0;j=0;while(1){b=wr(d,40);i=v[a+388>>2];l=v[a+556>>2];p=v[a+552>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=p;v[b+12>>2]=l;l=c-j|0;v[b+32>>2]=l>>>0<16?l:16;v[b>>2]=130928;v[b+20>>2]=e;v[b+24>>2]=1;v[b+28>>2]=i+(j<<2);Ba[v[v[a+8>>2]+16>>2]](e);v[b+16>>2]=v[v[b+20>>2]+16>>2];Ba[v[v[b>>2]+20>>2]](b);j=j+16|0;if(c>>>0>j>>>0){continue}break}}v[a+36>>2]=d;b=v[a- -64>>2];Ba[v[v[b>>2]+72>>2]](b,a+48|0);b=v[a+24>>2];Ba[v[v[b>>2]+72>>2]](b,a+8|0);break g}wI(a,0,d);xI(a)}xa=o+16|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,o=0,p=0,q=0;e=xa-48|0;xa=e;o=v[a+16>>2];m=b>>>7|0;l=o+B(m,24)|0;g=w[l+4|0];a:{if(!(g&4)){break a}d=v[l>>2];if((d|0)!=-1){while(1){i=v[a+84>>2];c=(d>>>0)/(i>>>0)|0;i=v[v[v[a+64>>2]+(c<<2)>>2]+(d-B(c,i)<<3)>>2];f=d^1;h=v[a+448>>2];c=v[h+20>>2];j=(f>>>0)/(c>>>0)|0;h=v[v[v[h>>2]+(j<<2)>>2]+(f-B(c,j)<<2)>>2];g=d>>>1|0;v[e>>2]=g;k=v[a+40>>2];j=v[a+60>>2];c=(g>>>0)/(j>>>0)|0;c=v[k+(c<<2)>>2]+(g-B(c,j)<<4)|0;b:{if(h>>>0>4294967167){break b}n=v[v[a+204>>2]+(h>>>5&134217724)>>2];if((n|0)==-1){break b}h=v[c+12>>2];g=v[a+88>>2];f=v[c+8>>2];c:{if((f|0)!=-1){d=(f>>>0)/(j>>>0)|0;d=(v[k+(d<<2)>>2]+(f-B(d,j)<<4)|0)+12|0;break c}d=((g+B(n,44)|0)+(v[c>>2]<<2)|0)+28|0}v[d>>2]=h;j=v[c+8>>2];f=v[c+12>>2];d:{if((f|0)!=-1){h=v[a+60>>2];d=(f>>>0)/(h>>>0)|0;v[(v[k+(d<<2)>>2]+(f-B(d,h)<<4)|0)+8>>2]=j;d=v[c>>2];break d}d=v[c>>2];v[((g+B(n,44)|0)+(d<<2)|0)+20>>2]=j}d=(g+B(n,44)|0)+(d<<2)|0;v[d+36>>2]=v[d+36>>2]-1;v[c+12>>2]=-1;v[c+8>>2]=-1;g=v[e>>2]}GF(a,g);EF(a,v[e>>2]);d=x[c+4>>1];g=d&65534;u[c+4>>1]=g;if(d&4){u[c+4>>1]=d&65530;MF(a,v[e>>2]);d=(v[c>>2]<<2)+a|0;v[d+172>>2]=v[d+172>>2]-1;g=x[c+4>>1]}e:{f:{if(!(g&2)){if(g&8){break e}f=B(v[c>>2],12)+a|0;h=f+284|0;d=v[f+288>>2];if(d>>>0>=(v[f+292>>2]&2147483647)>>>0){pn(h,e);d=x[c+4>>1]|8;break f}v[v[h>>2]+(d<<2)>>2]=v[e>>2];v[f+288>>2]=v[f+288>>2]+1;d=g|8;break f}d=g|32}u[c+4>>1]=d}d=i;if((d|0)!=-1){continue}break}g=w[l+4|0]}g:{if(g&32){break g}f=v[a+28>>2];k=f+(m<<2)|0;if(v[k>>2]==33554431){break g}c=B(m,24);j=c+o|0;h=v[j+16>>2];v[j+16>>2]=0;h:{if(v[(c+v[a+16>>2]|0)+16>>2]){break h}d=v[k>>2];if((d|0)==33554431){break h}i=v[a+136>>2];c=v[(i+(v[a+140>>2]<<2)|0)-4>>2];v[f+(c>>>5&134217724)>>2]=d;v[i+(v[k>>2]<<2)>>2]=c;v[a+140>>2]=v[a+140>>2]-1;v[k>>2]=33554431}v[j+16>>2]=h}t[l+4|0]=g&251;c=v[a+4>>2];i:{if(c){c=c-1|0;d=v[v[a>>2]+(c<<2)>>2];v[a+4>>2]=c;break i}d=v[a+12>>2];v[a+12>>2]=d+1}f=a+88|0;if((v[a+96>>2]&2147483647)==(d|0)){c=d<<1;h=c|1;if(h>>>0>d>>>0){vF(f,h)}k=c+32>>>5|0;if(k>>>0>(v[a+220>>2]&2147483647)>>>0){c=v[37696]+12|0;j=Ba[v[v[c>>2]+8>>2]](c,k<<2,24422,17999,438)|0;c=v[a+216>>2];j:{if(!c){break j}I9(j,c,v[a+220>>2]<<2);if(v[a+220>>2]<0){break j}i=v[a+216>>2];if(!i){break j}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,i)}c=v[a+220>>2];J9(j+(c<<2)|0,0,k-c<<2);v[a+220>>2]=k;v[a+216>>2]=j}v[e>>2]=0;cz(a+100|0,h,e)}i=v[a+216>>2]+(d>>>3&536870908)|0;c=v[i>>2];p=i,q=Vaa(-2,d)&c,v[p>>2]=q;c=v[a+92>>2];v[e+24>>2]=-1;v[e+28>>2]=-1;v[e+32>>2]=-1;v[e+16>>2]=-1;v[e+20>>2]=-1;v[e>>2]=-128;v[e+4>>2]=-128;v[e+36>>2]=0;v[e+40>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;i=d+1|0;wF(f,c>>>0>>0?i:c,e);c=v[a+92>>2];v[e>>2]=0;cz(a+100|0,c>>>0>>0?i:c,e);c=v[a+88>>2]+B(d,44)|0;v[c+4>>2]=b;v[c>>2]=b;v[(c+(w[(B(m,24)+o|0)+5|0]<<2)|0)+8>>2]=1;v[v[a+204>>2]+(m<<2)>>2]=d;v[v[a+100>>2]+(d<<2)>>2]=0;c=w[l+4|0];if(!(c&2)){break a}t[l+4|0]=c&253;xF(a,b)}xa=e+48|0}function D0(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=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=0,A=C(0),B=C(0),E=C(0),F=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0);g=xa-144|0;xa=g;y=w[a+12|0];j=y?e:d;h=z[j+8>>2];i=z[j>>2];k=z[j+4>>2];j=v[a+24>>2];m=z[j+40>>2];n=z[j+28>>2];l=z[j+16>>2];o=z[j+36>>2];q=z[c+8>>2];r=z[j+24>>2];B=z[c>>2];E=z[j>>2];F=z[c+4>>2];H=z[j+12>>2];I=z[j+4>>2];J=z[j+44>>2];L=z[j+8>>2];c=y?d:e;s=z[c>>2];M=z[j+20>>2];N=z[c+4>>2];O=z[j+32>>2];P=z[c+8>>2];R=C(J+C(C(C(L*s)+C(M*N))+C(O*P)));z[g+112>>2]=R;S=C(m+C(C(C(I*s)+C(l*N))+C(n*P)));z[g+108>>2]=S;A=C(J+C(C(C(L*i)+C(M*k))+C(O*h)));z[g+100>>2]=A;p=C(m+C(C(C(I*i)+C(l*k))+C(n*h)));z[g+96>>2]=p;Q=C(o+C(C(C(B*E)+C(F*H))+C(q*r)));z[g+80>>2]=Q;s=C(o+C(C(C(E*s)+C(H*N))+C(r*P)));z[g+104>>2]=s;k=C(o+C(C(C(E*i)+C(H*k))+C(r*h)));z[g+92>>2]=k;i=C(J+C(C(C(B*L)+C(F*M))+C(q*O)));z[g+88>>2]=i;h=C(m+C(C(C(B*I)+C(F*l))+C(q*n)));z[g+84>>2]=h;v[g+56>>2]=0;v[g+60>>2]=0;c=g- -64|0;v[c>>2]=0;v[c+4>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;u[g+44>>1]=0;v[g+40>>2]=-1;v[g+32>>2]=0;v[g+36>>2]=0;v[g+72>>2]=2139095039;m=z[v[a+20>>2]+40>>2];n=C(m+C(C(G(m,C(1)))*C(.0010000000474974513)));d=v[a+40>>2];a:{b:{if(w[a+49|0]){c=x[a+8>>1];j=c&128;y=w[a+48|0];e=v[a+44>>2];m=z[d+24>>2];c:{if(c&16){break c}k=C(k-Q);l=C(S-h);o=C(s-Q);q=C(p-h);h=C(C(k*l)-C(o*q));r=C(A-i);p=C(r*o);o=C(R-i);i=C(p-C(o*k));k=C(C(q*o)-C(l*r));if(!(j|y)){c=1;if(C(C(h*z[e+8>>2])+C(C(k*z[e>>2])+C(i*z[e+4>>2])))>C(0)){break a}}E_(g+120|0,d,g+80|0,g+92|0,g+104|0,g+140|0,g+136|0);l=C(z[g+128>>2]-z[d+8>>2]);A=C(l*l);l=C(z[g+120>>2]-z[d>>2]);p=C(l*l);l=C(z[g+124>>2]-z[d+4>>2]);if(!(C(A+C(p+C(l*l)))<=C(m*m))){break c}m=C(0);n=C(0);l=C(0);o=C(C(h*h)+C(C(k*k)+C(i*i)));if(o>C(0)){p=h;h=C(C(1)/C(K(o)));l=C(p*h);n=C(i*h);m=C(k*h)}z[g+24>>2]=l;z[g+20>>2]=n;z[g+16>>2]=m;u[g+44>>1]=1026;v[g+40>>2]=0;h=z[e>>2];i=z[e+4>>2];z[g+68>>2]=-z[e+8>>2];z[g- -64>>2]=-i;v[g+72>>2]=0;z[g+60>>2]=-h;break b}c=1;if(M2(1,g+80|0,d,m,e,n,0,g+32|0,g+16|0,(y|0)!=0,(j|0)!=0,0,0)){break b}break a}e=v[a+44>>2];u[g+8>>1]=x[a+8>>1];c=1;if(!J2(1,g+80|0,d,e,n,0,g+32|0,g+16|0,g+8|0,w[a+48|0],0)){break a}}h=z[g+72>>2];d:{if(h>z[a+28>>2]){break d}c=v[a+44>>2];k=C(-C(D(C(C(z[g+24>>2]*z[c+8>>2])+C(C(z[g+16>>2]*z[c>>2])+C(z[g+20>>2]*z[c+4>>2]))))));i=z[a+36>>2];m=C(C(G(h>i?h:i,C(1)))*C(.0010000000474974513));e:{if(h>2];if(hk|h==C(0)){break e}if(!(k==n&h>2]=k;z[f>>2]=h*z[a+16>>2];i=z[a+36>>2];z[a+36>>2]=h>i?i:h;d=x[g+44>>1];c=v[a+20>>2];z[c+40>>2]=h;u[c+12>>1]=d;z[c+28>>2]=z[g+60>>2];z[c+32>>2]=z[g- -64>>2];z[c+36>>2]=z[g+68>>2];z[c+16>>2]=z[g+48>>2];z[c+20>>2]=z[g+52>>2];z[c+24>>2]=z[g+56>>2];v[c+8>>2]=v[b+8>>2];t[a+10|0]=1;if(z[g+72>>2]==C(0)){t[a+11|0]=1;c=0;break a}c=0;if(w[a+8|0]&64){break a}}c=1}xa=g+144|0;return c|0}function hv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=C(0),W=C(0),X=C(0);f=xa-80|0;xa=f;a=v[b+40>>2];J=0;a:{if(z[b+4>>2]!=C(1)){break a}J=0;if(z[b+8>>2]!=C(1)){break a}J=z[b+12>>2]==C(1)}o=z[d>>2];q=z[c>>2];r=z[d+12>>2];i=z[c+12>>2];y=z[d+4>>2];j=z[c+4>>2];A=z[d+8>>2];m=z[c+8>>2];n=z[c+24>>2];p=z[d+24>>2];l=z[c+20>>2];G=z[d+20>>2];k=z[c+16>>2];Q=z[d+16>>2];d=w[a+39|0];U=v[a+40>>2];h=w[a+38|0];a=f- -64|0;v[a>>2]=0;v[a+4>>2]=1065353216;v[f+56>>2]=0;v[f+60>>2]=0;v[f+48>>2]=0;v[f+52>>2]=1065353216;v[f+40>>2]=0;v[f+44>>2]=0;v[f+32>>2]=1065353216;v[f+36>>2]=1065353216;v[f+16>>2]=1065353216;v[f+20>>2]=0;t[f+72|0]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=1065353216;v[f+4>>2]=0;R=n;S=l;T=k;s=i;u=m;D=j;H=C(1);I=C(1);x=C(1);if(!J){JX(f,b+4|0,b+16|0);R=z[c+24>>2];S=z[c+20>>2];s=z[c+12>>2];D=z[c+4>>2];H=z[f+32>>2];K=z[f+28>>2];E=z[f+24>>2];L=z[f+20>>2];I=z[f+16>>2];F=z[f+12>>2];M=z[f+8>>2];N=z[f+4>>2];x=z[f>>2];T=z[c+16>>2];u=z[c+8>>2]}b:{if(!h){c=0;break b}k=C(Q-k);k=C(k+k);l=C(G-l);l=C(l+l);n=C(p-n);n=C(n+n);p=C(C(C(C(-q)*k)-C(l*j))-C(m*n));G=C(C(i*i)+C(-.5));Q=C(C(C(n*G)+C(i*C(C(j*k)-C(q*l))))-C(m*p));V=C(C(C(l*G)+C(i*C(C(q*n)-C(m*k))))-C(j*p));G=C(C(C(k*G)+C(i*C(C(m*l)-C(j*n))))-C(q*p));d=U+B(d,20)|0;n=C(C(o*j)+C(C(C(i*A)-C(r*m))-C(q*y)));k=C(C(y*m)+C(C(C(i*o)-C(r*q))-C(j*A)));l=C(k+k);O=C(n*l);p=C(C(m*A)+C(C(j*y)+C(C(i*r)+C(q*o))));i=C(C(A*q)+C(C(C(i*y)-C(r*j))-C(m*o)));j=C(i+i);r=C(p*j);m=C(O-r);o=C(p*l);y=C(n*j);q=C(o+y);k=C(C(1)-C(k*l));A=C(i*j);j=C(k-A);W=C(C(C(m*E)+C(q*K))+C(j*H));P=C(l*i);l=C(n+n);p=C(p*l);i=C(P+p);X=k;k=C(n*l);n=C(X-k);l=C(y-o);y=C(C(C(i*E)+C(n*K))+C(l*H));k=C(C(C(1)-A)-k);o=C(P-p);r=C(O+r);A=C(C(C(k*E)+C(o*K))+C(r*H));H=C(C(C(m*F)+C(q*I))+C(j*L));K=C(C(C(i*F)+C(n*I))+C(l*L));I=C(C(C(k*F)+C(o*I))+C(r*L));q=C(C(C(m*x)+C(q*N))+C(j*M));n=C(C(C(i*x)+C(n*N))+C(l*M));l=C(C(C(k*x)+C(o*N))+C(r*M));j=C(D+D);k=C(j*u);m=z[c>>2];i=C(m+m);o=C(i*s);r=C(k-o);x=C(i*u);E=C(j*s);L=C(x+E);k=C(k+o);o=C(i*D);F=C(u+u);s=C(F*s);M=C(o-s);i=C(C(1)-C(m*i));j=C(D*j);N=C(i-j);m=i;i=C(u*F);F=C(m-i);x=C(x-E);E=C(-x);s=C(o+s);o=C(-s);p=C(C(C(1)-j)-i);O=C(-p);b=v[g+4096>>2];P=z[e>>2];c=0;while(1){h=h-1|0;j=z[d>>2];m=z[d+4>>2];u=z[d+8>>2];i=C(G+C(C(C(l*j)+C(I*m))+C(A*u)));c:{if(!(i<=P)){break c}c=1;if(b>>>0>63){break c}a=b+1|0;v[g+4096>>2]=a;b=(b<<6)+g|0;z[b+8>>2]=E;z[b+4>>2]=o;z[b>>2]=O;v[b+52>>2]=-1;z[b+12>>2]=i;D=C(Q+C(C(C(q*j)+C(H*m))+C(W*u)));j=C(V+C(C(C(n*j)+C(K*m))+C(y*u)));z[b+24>>2]=R+C(C(N*D)+C(C(x*i)+C(k*j)));z[b+20>>2]=S+C(C(r*D)+C(C(s*i)+C(F*j)));z[b+16>>2]=T+C(C(L*D)+C(C(p*i)+C(M*j)));b=a}d=d+12|0;if(h){continue}break}}xa=f+80|0;return c|0}function kaa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+b|0;c=v[a+4>>2];a:{b:{if(c&1){break b}if(!(c&3)){break a}c=v[a>>2];b=c+b|0;c:{a=a-c|0;if((a|0)!=v[38171]){if(c>>>0<=255){e=v[a+8>>2];c=c>>>3|0;d=v[a+12>>2];if((d|0)!=(e|0)){break c}i=152664,j=v[38166]&Vaa(-2,c),v[i>>2]=j;break b}h=v[a+24>>2];c=v[a+12>>2];d:{if((c|0)!=(a|0)){d=v[a+8>>2];v[d+12>>2]=c;v[c+8>>2]=d;break d}e:{e=a+20|0;d=v[e>>2];if(d){break e}e=a+16|0;d=v[e>>2];if(d){break e}c=0;break d}while(1){g=e;c=d;e=c+20|0;d=v[e>>2];if(d){continue}e=c+16|0;d=v[c+16>>2];if(d){continue}break}v[g>>2]=0}if(!h){break b}e=v[a+28>>2];d=(e<<2)+152968|0;f:{if(v[d>>2]==(a|0)){v[d>>2]=c;if(c){break f}i=152668,j=v[38167]&Vaa(-2,e),v[i>>2]=j;break b}v[h+(v[h+16>>2]==(a|0)?16:20)>>2]=c;if(!c){break b}}v[c+24>>2]=h;d=v[a+16>>2];if(d){v[c+16>>2]=d;v[d+24>>2]=c}d=v[a+20>>2];if(!d){break b}v[c+20>>2]=d;v[d+24>>2]=c;break b}c=v[f+4>>2];if((c&3)!=3){break b}v[38168]=b;v[f+4>>2]=c&-2;v[a+4>>2]=b|1;v[f>>2]=b;return}v[e+12>>2]=d;v[d+8>>2]=e}c=v[f+4>>2];g:{if(!(c&2)){if(v[38172]==(f|0)){v[38172]=a;b=v[38169]+b|0;v[38169]=b;v[a+4>>2]=b|1;if(v[38171]!=(a|0)){break a}v[38168]=0;v[38171]=0;return}if(v[38171]==(f|0)){v[38171]=a;b=v[38168]+b|0;v[38168]=b;v[a+4>>2]=b|1;v[a+b>>2]=b;return}b=(c&-8)+b|0;h:{if(c>>>0<=255){e=v[f+8>>2];c=c>>>3|0;d=v[f+12>>2];if((d|0)==(e|0)){i=152664,j=v[38166]&Vaa(-2,c),v[i>>2]=j;break h}v[e+12>>2]=d;v[d+8>>2]=e;break h}h=v[f+24>>2];c=v[f+12>>2];i:{if((f|0)!=(c|0)){d=v[f+8>>2];v[d+12>>2]=c;v[c+8>>2]=d;break i}j:{d=f+20|0;e=v[d>>2];if(e){break j}d=f+16|0;e=v[d>>2];if(e){break j}c=0;break i}while(1){g=d;c=e;d=c+20|0;e=v[d>>2];if(e){continue}d=c+16|0;e=v[c+16>>2];if(e){continue}break}v[g>>2]=0}if(!h){break h}e=v[f+28>>2];d=(e<<2)+152968|0;k:{if(v[d>>2]==(f|0)){v[d>>2]=c;if(c){break k}i=152668,j=v[38167]&Vaa(-2,e),v[i>>2]=j;break h}v[h+(v[h+16>>2]==(f|0)?16:20)>>2]=c;if(!c){break h}}v[c+24>>2]=h;d=v[f+16>>2];if(d){v[c+16>>2]=d;v[d+24>>2]=c}d=v[f+20>>2];if(!d){break h}v[c+20>>2]=d;v[d+24>>2]=c}v[a+4>>2]=b|1;v[a+b>>2]=b;if(v[38171]!=(a|0)){break g}v[38168]=b;return}v[f+4>>2]=c&-2;v[a+4>>2]=b|1;v[a+b>>2]=b}if(b>>>0<=255){c=(b&-8)+152704|0;d=v[38166];b=1<<(b>>>3);l:{if(!(d&b)){v[38166]=b|d;b=c;break l}b=v[c+8>>2]}v[c+8>>2]=a;v[b+12>>2]=a;v[a+12>>2]=c;v[a+8>>2]=b;return}e=31;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}v[a+28>>2]=e;v[a+16>>2]=0;v[a+20>>2]=0;g=(e<<2)+152968|0;m:{d=v[38167];c=1<>2]=a;v[a+24>>2]=g;break n}e=b<<((e|0)==31?0:25-(e>>>1|0)|0);c=v[g>>2];while(1){d=c;if((v[c+4>>2]&-8)==(b|0)){break m}c=e>>>29|0;e=e<<1;g=d+(c&4)|0;c=v[g+16>>2];if(c){continue}break}v[g+16>>2]=a;v[a+24>>2]=d}v[a+12>>2]=a;v[a+8>>2]=a;return}b=v[d+8>>2];v[b+12>>2]=a;v[d+8>>2]=a;v[a+24>>2]=0;v[a+12>>2]=d;v[a+8>>2]=b}}function d0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=0,s=C(0),y=0,A=C(0),E=C(0),F=0,G=0,H=0,I=0,J=0,K=0,L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=0,T=0,U=0;e=xa-80|0;xa=e;v[e+40>>2]=0;v[e+44>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;u[e+28>>1]=0;v[e+24>>2]=-1;v[e+16>>2]=0;v[e+20>>2]=0;a:{if(!b){break a}F=e+60|0;G=a+108|0;Q=a- -64|0;S=1;while(1){g=v[(H<<2)+c>>2];T=g>>>5|0;U=g>>>1&15;I=0;while(1){r=I+T|0;g=B(r,3);o=v[a+16>>2];b:{if(v[a+12>>2]){g=o+(g<<1)|0;J=x[g+4>>1];K=x[g>>1];g=x[g+2>>1];break b}g=o+(g<<2)|0;J=v[g+8>>2];K=v[g>>2];g=v[g+4>>2]}m=v[a+20>>2];v[e+4>>2]=K;v[e+8>>2]=g;v[e+12>>2]=J;o=m+B(g,12)|0;y=m+B(K,12)|0;i=z[y+8>>2];h=C(z[o+8>>2]-i);L=z[a+40>>2];m=m+B(J,12)|0;j=z[y+4>>2];M=C(z[m+4>>2]-j);k=z[y>>2];N=C(z[m>>2]-k);O=z[a+44>>2];q=C(C(L*M)-C(N*O));s=C(z[o>>2]-k);P=C(z[m+8>>2]-i);p=z[a+48>>2];R=C(C(O*P)-C(M*p));n=C(z[o+4>>2]-j);A=C(C(p*N)-C(P*L));f=C(C(h*q)+C(C(s*R)+C(n*A)));l=z[a+56>>2];c:{d:{if(!w[a+52|0]){if(f>2]-i);k=C(z[a+28>>2]-k);j=C(z[a+32>>2]-j);i=C(C(E*q)+C(C(k*R)+C(A*j)));l=C(l*f);q=C(-l);if(i>2]=f*i;z[e+56>>2]=f*C(C(P*p)+C(C(N*n)+C(M*s)));f=C(f*h);break d}if(C(D(f))>2]-i);k=C(z[a+28>>2]-k);j=C(z[a+32>>2]-j);i=C(E*C(C(f*q)+C(C(k*R)+C(A*j))));q=C(-l);if(if|l>2]=i;z[e+56>>2]=E*C(C(P*p)+C(C(N*n)+C(M*h)))}z[e+64>>2]=f;f=z[e+56>>2];if(f>2])){break c}u[e+28>>1]=1;v[e+24>>2]=r;e:{if(w[a+177|0]){if(!(f>2])){break e}r=v[e+20>>2];v[Q>>2]=v[e+16>>2];v[Q+4>>2]=r;v[Q+8>>2]=v[e+24>>2];u[a+76>>1]=1;z[a+80>>2]=z[e+32>>2];z[a+84>>2]=z[e+36>>2];z[a+88>>2]=z[e+40>>2];z[a+92>>2]=z[e+44>>2];z[a+96>>2]=z[e+48>>2];h=z[e+52>>2];z[a+104>>2]=f;z[a+100>>2]=h;v[G+16>>2]=v[F+16>>2];r=v[F+12>>2];v[G+8>>2]=v[F+8>>2];v[G+12>>2]=r;r=v[F+4>>2];v[G>>2]=v[F>>2];v[G+4>>2]=r;h=z[d>>2];z[d>>2]=f>2]=z[y>>2];z[a+132>>2]=z[y+4>>2];z[a+136>>2]=z[y+8>>2];z[a+140>>2]=z[o>>2];z[a+144>>2]=z[o+4>>2];z[a+148>>2]=z[o+8>>2];z[a+152>>2]=z[m>>2];z[a+156>>2]=z[m+4>>2];f=z[m+8>>2];t[a+176|0]=1;v[a+172>>2]=J;v[a+168>>2]=g;v[a+164>>2]=K;z[a+160>>2]=f;break e}z[e>>2]=z[d>>2];g=v[a+8>>2];if(!(Ba[v[v[g>>2]>>2]](g,e+16|0,y,o,m,e,e+4|0)|0)){break a}f=z[e>>2];if(!(f>2])){break e}z[d>>2]=f;z[a+60>>2]=f}if(!v[v[a+8>>2]+4>>2]){break a}}g=(I|0)!=(U|0);I=I+1|0;if(g){continue}break}H=H+1|0;S=H>>>0>>0;if((b|0)!=(H|0)){continue}break}}xa=e+80|0;return(S^-1)&1}function p8(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),y=C(0),A=C(0),B=C(0);c=xa-176|0;xa=c;v[c+60>>2]=a;v[c+56>>2]=a;a=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=a;a=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=a;E5(c+144|0,c+112|0,e,f,g);l=z[f+20>>2];k=z[f+16>>2];m=z[c+132>>2];n=z[c+128>>2];o=z[c+136>>2];z[b+8>>2]=o-z[f+24>>2];z[b+4>>2]=m-l;z[b>>2]=n-k;l=z[f+20>>2];k=z[f+16>>2];z[c+72>>2]=o-z[f+24>>2];z[c+68>>2]=m-l;z[c+64>>2]=n-k;l=z[g+20>>2];k=z[g+24>>2];q=z[g+16>>2];z[c+108>>2]=o;z[c+104>>2]=m;r=z[c+168>>2];z[c+96>>2]=r;s=z[c+164>>2];z[c+92>>2]=s;z[c+84>>2]=o-k;z[c+80>>2]=m-l;z[c+100>>2]=n;t=z[c+160>>2];z[c+88>>2]=t;z[c+76>>2]=n-q;b=0;d=u[e+128>>1]&1;b=d?z[e+116>>2]>=z[e+112>>2]:b;a:{if(h){k=z[c+152>>2];q=z[c+148>>2];p=z[c+144>>2];l=z[c+156>>2];break a}w=z[c+124>>2];l=z[c+156>>2];y=z[c+120>>2];k=z[c+152>>2];A=z[c+112>>2];p=z[c+144>>2];B=z[c+116>>2];q=z[c+148>>2];if(!(C(C(w*l)+C(C(y*k)+C(C(A*p)+C(B*q))))>2]=-w;z[c+120>>2]=-y;z[c+116>>2]=-B;z[c+112>>2]=-A}o=C(o-r);o=C(o+o);n=C(n-t);n=C(n+n);m=C(m-s);m=C(m+m);r=C(C(k*o)+C(C(p*n)+C(m*q)));s=C(C(l*l)+C(-.5));z[c+16>>2]=C(k*r)+C(C(o*s)-C(l*C(C(p*m)-C(n*q))));z[c+12>>2]=C(q*r)+C(C(m*s)-C(l*C(C(k*n)-C(o*p))));z[c+8>>2]=C(p*r)+C(C(n*s)-C(l*C(C(q*o)-C(m*k))));I5(c+56|0,c+144|0,c+112|0,c+8|0,7,b?7:6,c+40|0,c+24|0);l=z[f+16>>2];k=z[f+20>>2];m=z[c+40>>2];n=z[c+44>>2];z[i+8>>2]=z[c+48>>2]+z[f+24>>2];z[i+4>>2]=n+k;z[i>>2]=m+l;l=z[g+16>>2];k=z[g+20>>2];m=z[c+24>>2];n=z[c+28>>2];z[j+8>>2]=z[c+32>>2]+z[g+24>>2];z[j+4>>2]=n+k;z[j>>2]=m+l;if(b){a=v[c+60>>2]-v[c+56>>2]|0}else{l=z[c+152>>2];m=z[c+144>>2];q=z[c+148>>2];o=C(q*C(0));k=C(C(l*C(0))+C(C(m+m)+o));n=z[c+156>>2];p=C(C(n*n)+C(-.5));r=C(p*C(0));z[c+16>>2]=C(l*k)+C(r+C(n*C(C(m*C(0))-C(q+q))));z[c+12>>2]=C(q*k)+C(r+C(n*C(C(l+l)+C(m*C(-0)))));z[c+8>>2]=C(m*k)+C(C(p+p)+C(n*C(o+C(l*C(-0)))));b=x[e+128>>1];if(b&2){a=v[c+60>>2];v[c+60>>2]=a+80;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;k=z[c+8>>2];p=z[c+12>>2];o=z[c+16>>2];v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;o=C(-o);z[a+24>>2]=o;p=C(-p);z[a+20>>2]=p;r=C(-k);z[a+16>>2]=r;k=z[e+88>>2];z[a+56>>2]=k*o;z[a+52>>2]=k*p;z[a+48>>2]=k*r;k=z[e+80>>2];z[a+28>>2]=k;p=z[e+84>>2];z[a+60>>2]=p;z[a+44>>2]=-p;f=x[a+76>>1];u[a+76>>1]=f|64;b:{if(!(b&4)){break b}if(k>C(0)){v[a+44>>2]=0}if(!(k>2]=0}u[a+76>>1]=f|96}if(d){p=z[c+120>>2];o=z[c+116>>2];r=z[c+124>>2];s=z[c+112>>2];k=C(C(l*p)+C(C(q*o)+C(C(n*r)+C(m*s))));l=C(C(o*l)+C(C(C(-q)*p)+C(C(n*s)+C(r*C(-m)))));m=C(K(C(C(k*k)+C(C(C(l*l)+C(0))+C(0)))));if(m!=C(0)){m=C(C(1)/m);k=C(k*m);l=C(l*m)}k=A9(C(F(C(G(k,C(-1))),C(1))));k=C(k+k);G5(c+56|0,l>2],z[e+112>>2],z[e+108>>2],c+8|0,e+92|0)}a=v[c+60>>2]-v[c+56>>2]|0}xa=c+176|0;return(a|0)/80|0}function LQ(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;d=xa-16|0;xa=d;j=v[a+28>>2];a=v[j+1e3>>2]+640|0;a:{if(!v[a+328>>2]){v[a+328>>2]=0;break a}l=a+240|0;k=v[a+244>>2];h=a+136|0;while(1){b=v[v[a+324>>2]+(f<<2)>>2];v[d>>2]=b;c=b>>>7|0;i=c<<2;b=v[i+v[a+204>>2]>>2];g=v[a+16>>2]+B(c,24)|0;e=w[g+4|0]&-33;t[g+4|0]=e;b:{if((b|0)!=-1){e=1<>2]+(b>>>3&536870908)|0;if(!(e&v[g>>2])){v[d+8>>2]=b;c=v[a+88>>2];v[g>>2]=e|v[g>>2];e=c+B(b,44)|0;b=v[a+244>>2];v[e+16>>2]=b;c:{if(b>>>0>=(v[a+248>>2]&2147483647)>>>0){pn(l,d+8|0);break c}v[v[a+240>>2]+(b<<2)>>2]=v[d+8>>2];v[a+244>>2]=v[a+244>>2]+1}c=v[d>>2]>>>7|0}v[v[a+28>>2]+(c<<2)>>2]=33554431;LF(a,v[d>>2]);break b}t[g+4|0]=e|2;v[i+v[a+28>>2]>>2]=v[a+140>>2];b=v[a+140>>2];d:{if(b>>>0>=(v[a+144>>2]&2147483647)>>>0){ZF(h,d);break d}v[v[a+136>>2]+(b<<2)>>2]=v[d>>2];v[a+140>>2]=v[a+140>>2]+1}b=v[g>>2];if((b|0)==-1){break b}while(1){c=v[a+84>>2];g=(b>>>0)/(c>>>0)|0;g=v[v[a+64>>2]+(g<<2)>>2]+(b-B(c,g)<<3)|0;e=b^1;i=v[a+448>>2];n=v[i+20>>2];c=(e>>>0)/(n>>>0)|0;e:{f:{c=v[v[v[i>>2]+(c<<2)>>2]+(e-B(c,n)<<2)>>2];if(c>>>0<=4294967167){c=v[v[a+204>>2]+(c>>>5&134217724)>>2];if((c|0)!=-1){break f}}c=b>>>1|0;b=v[a+60>>2];e=(c>>>0)/(b>>>0)|0;b=v[v[a+40>>2]+(e<<2)>>2]+(c-B(b,e)<<4)|0;if(w[b+4|0]&4|v[b>>2]==1){break e}CF(a,c);u[b+4>>1]=x[b+4>>1]|4;break e}e=1<>2]+(c>>>3&536870908)|0;if(e&v[b>>2]){break e}v[d+12>>2]=c;i=v[a+88>>2];v[b>>2]=e|v[b>>2];b=v[a+244>>2];v[(i+B(c,44)|0)+16>>2]=b;if(b>>>0>=(v[a+248>>2]&2147483647)>>>0){pn(l,d+12|0);break e}v[v[a+240>>2]+(b<<2)>>2]=v[d+12>>2];v[a+244>>2]=v[a+244>>2]+1}b=v[g>>2];if((b|0)!=-1){continue}break}}f=f+1|0;if(f>>>0>2]){continue}break}v[a+328>>2]=0;f=v[a+244>>2];if(k>>>0>=f>>>0){break a}while(1){b=v[v[a+88>>2]+B(v[v[a+240>>2]+(k<<2)>>2],44)>>2];c=b>>>7|0;if((c|0)!=33554431){while(1){LF(a,b);b=v[(v[a+16>>2]+B(c,24)|0)+8>>2];c=b>>>7|0;if((c|0)!=33554431){continue}break}f=v[a+244>>2]}k=k+1|0;if(k>>>0>>0){continue}break}}xa=d+16|0;b=v[j+1e3>>2];g=v[b+792>>2];if(g){l=v[b+788>>2];while(1){d=v[l+(m<<2)>>2];c=v[j+1e3>>2];f=v[c- -64>>2];a=(d>>>0)/(f>>>0)|0;a=v[v[v[c+44>>2]+(a<<2)>>2]+(d-B(a,f)<<2)>>2];g:{if(!a|w[a+21|0]&32){break g}c=v[b+700>>2];f=(d>>>0)/(c>>>0)|0;if(!(w[(v[v[b+680>>2]+(f<<2)>>2]+(d-B(c,f)<<4)|0)+4|0]&4)){break g}h:{i:{switch(w[a+20|0]){case 1:if(rS(a-4|0)){break h}break g;case 4:if(NH(a)){break h}break g;case 5:if(mF(a)){break h}break g;case 0:break i;default:break g}}if(!IR(a-4|0,0)){break g}}c=w[a+20|0];if(c>>>0>2){break g}f=(c<<2)+j|0;d=v[f+88>>2];c=B(c,12)+j|0;if(d>>>0>2]){e=v[c+52>>2];h=e+(d<<2)|0;k=v[h>>2];i=h;h=e;a=v[a+8>>2];e=a<<2;h=v[h+e>>2];v[i>>2]=h;v[e+v[c+52>>2]>>2]=k;v[k+8>>2]=a;v[h+8>>2]=d;d=v[f+88>>2]}v[f+88>>2]=d+1}m=m+1|0;if((g|0)!=(m|0)){continue}break}}a=v[v[j+976>>2]+1024>>2];Ba[v[v[a>>2]+20>>2]](a,z[j+1080>>2],j+2752|0)}function n2(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=0;k=xa-144|0;xa=k;P=z[g>>2];v[k+136>>2]=v[g+12>>2];j=v[g+8>>2];v[k+128>>2]=v[g+4>>2];v[k+132>>2]=j;j=v[e+40>>2];o=z[j+40>>2];D=z[a+88>>2];p=z[j+8>>2];E=z[a+80>>2];n=z[j+24>>2];s=z[a+84>>2];r=C(C(o*D)+C(C(p*E)+C(n*s)));J=z[j+36>>2];F=z[j+4>>2];L=z[j+20>>2];G=C(C(J*D)+C(C(F*E)+C(L*s)));H=z[a+72>>2];m=C(o*H);M=z[a- -64>>2];N=z[a+68>>2];l=C(C(p*M)+C(n*N));O=z[a+56>>2];u=z[a+48>>2];y=z[a+52>>2];t=C(C(o*O)+C(C(p*u)+C(y*n)));q=C(C(J*O)+C(C(F*u)+C(y*L)));o=z[j+32>>2];p=z[j>>2];n=z[j+16>>2];s=C(C(o*D)+C(C(p*E)+C(n*s)));u=C(C(o*O)+C(C(p*u)+C(y*n)));if(b&32){v[k+28>>2]=0;z[k+24>>2]=r-t;z[k+20>>2]=G-q;z[k+16>>2]=s-u;A=1}y=C(m+l);m=C(C(J*H)+C(C(F*M)+C(L*N)));l=C(C(o*H)+C(C(p*M)+C(n*N)));if(b&8){a=(k+16|0)+(A<<4)|0;v[a+12>>2]=0;z[a+8>>2]=t-y;z[a+4>>2]=q-m;z[a>>2]=u-l;A=A+1|0}a:{b:{c:{d:{if(b&16){a=(k+16|0)+(A<<4)|0;v[a+12>>2]=0;z[a+8>>2]=y-r;z[a+4>>2]=m-G;z[a>>2]=l-s;A=A+1|0;break d}if(!A){break c}}a=v[c+16>>2];if(a){o=C(l-u);p=C(G-q);n=C(s-u);l=C(m-q);m=C(C(o*p)-C(n*l));q=m;s=C(m*m);m=C(r-t);r=C(l*m);l=C(y-t);p=C(r-C(p*l));m=C(C(l*n)-C(m*o));l=C(C(1)/C(K(C(s+C(C(p*p)+C(m*m))))));G=C(q*l);D=C(m*l);E=C(p*l);while(1){I=v[c+24>>2]+B(Q,20)|0;e:{if(C(C(z[I+8>>2]*G)+C(C(z[I>>2]*E)+C(D*z[I+4>>2])))>C(0)){break e}b=w[I+18|0];if(!b){break e}R=v[c+32>>2]+x[I+16>>1]|0;a=b-1|0;b=0;while(1){j=B(w[a+R|0],12);a=v[c+28>>2];j=j+a|0;a=a+B(w[b+R|0],12)|0;s=C(z[j+4>>2]-z[a+4>>2]);J=C(-s);F=C(z[j>>2]-z[a>>2]);L=C(-F);H=C(z[j+8>>2]-z[a+8>>2]);M=C(-H);a=0;while(1){j=(k+16|0)+(a<<4)|0;m=z[j>>2];l=z[j+8>>2];t=C(C(H*m)+C(l*L));q=C(s*l);l=z[j+4>>2];q=C(q+C(l*M));r=C(C(F*l)+C(m*J));f:{if(!(!((r>C(0)?r:C(-r))C(0)?q:C(-q))C(0)?t:C(-t))C(0))){break f}j=v[e+40>>2];N=z[j+40>>2];O=z[j+36>>2];u=z[j+24>>2];y=z[j+20>>2];o=z[j+32>>2];p=z[j+16>>2];n=z[j+8>>2];m=z[j>>2];l=z[j+4>>2];v[k+12>>2]=0;o=C(C(N*r)+C(C(o*q)+C(t*O)));m=C(C(n*r)+C(C(m*q)+C(t*l)));l=C(C(u*r)+C(C(p*q)+C(t*y)));n=C(C(1)/C(K(C(C(o*o)+C(C(m*m)+C(l*l))))));z[k+8>>2]=o*n;z[k+4>>2]=l*n;z[k>>2]=m*n;Ba[v[v[d>>2]+12>>2]](d,k,k+112|0,k+96|0);Ba[v[v[e>>2]+12>>2]](e,k,k+80|0,k- -64|0);l=z[k+80>>2];n=z[k+96>>2];m=z[f>>2];if(l>C(n+m)|z[k+112>>2]>C(m+z[k+64>>2])){break b}l=C(n-l);if(!(l>2];v[h>>2]=v[k>>2];v[h+4>>2]=j;j=v[k+12>>2];v[h+8>>2]=v[k+8>>2];v[h+12>>2]=j;v[i>>2]=2;P=l}a=a+1|0;if((A|0)!=(a|0)){continue}break}a=b;b=a+1|0;if(b>>>0>2]}Q=Q+1|0;if(Q>>>0>>0){continue}break}}z[g>>2]=P;v[g+12>>2]=v[k+136>>2];a=v[k+132>>2];v[g+4>>2]=v[k+128>>2];v[g+8>>2]=a}a=1;break a}a=0}xa=k+144|0;return a}function mZ(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=0;g=xa-288|0;xa=g;A=z[e>>2];B=z[a+4>>2];m=z[d+8>>2];h=z[a+8>>2];i=z[c>>2];j=C(i+i);q=z[c+8>>2];s=z[c+4>>2];w=z[c+12>>2];y=C(w+w);p=C(h*C(C(j*q)-C(s*y)));r=C(z[d+24>>2]-z[c+24>>2]);n=C(C(-p)-r);t=C(n+n);n=z[d>>2];l=C(h*C(C(i*j)+C(C(w*y)+C(-1))));k=C(z[d+16>>2]-z[c+16>>2]);i=C(C(-l)-k);u=C(i+i);q=C(h*C(C(q*y)+C(j*s)));s=C(z[d+20>>2]-z[c+20>>2]);h=C(C(-q)-s);o=C(h+h);h=z[d+4>>2];E=C(C(m*t)+C(C(n*u)+C(o*h)));i=z[d+12>>2];j=C(C(i*i)+C(-.5));w=C(C(m*E)+C(C(t*j)-C(i*C(C(n*o)-C(u*h)))));z[g+284>>2]=w;y=C(C(h*E)+C(C(o*j)-C(i*C(C(m*u)-C(t*n)))));z[g+280>>2]=y;p=C(p-r);p=C(p+p);r=C(l-k);r=C(r+r);q=C(q-s);l=C(q+q);k=C(C(m*p)+C(C(n*r)+C(h*l)));q=C(C(m*k)+C(C(p*j)-C(i*C(C(n*l)-C(r*h)))));z[g+272>>2]=q;s=C(C(h*k)+C(C(l*j)-C(i*C(C(m*r)-C(p*n)))));z[g+268>>2]=s;p=C(C(n*k)+C(C(r*j)-C(i*C(C(h*p)-C(l*m)))));z[g+264>>2]=p;n=C(C(n*E)+C(C(u*j)-C(i*C(C(h*t)-C(o*m)))));z[g+276>>2]=n;c=v[b+40>>2];z[g+20>>2]=w;z[g+16>>2]=y;m=C(B+A);z[g+24>>2]=m;z[g+12>>2]=n;z[g+8>>2]=q;z[g+4>>2]=s;z[g>>2]=p;EV(g+200|0,g);a:{if(!(z[b+4>>2]!=C(1)|z[b+8>>2]!=C(1)|z[b+12>>2]!=C(1))){E=z[e>>2];r=z[a+4>>2];v[g+8>>2]=f;v[g>>2]=142468;v[g+4>>2]=2;i=z[d+4>>2];t=C(i+i);h=z[d+8>>2];l=C(t*h);u=z[d>>2];j=C(u+u);o=z[d+12>>2];k=C(j*o);z[g+40>>2]=l-k;A=C(j*h);B=C(t*o);z[g+36>>2]=A+B;z[g+32>>2]=l+k;l=C(j*i);k=o;o=C(h+h);k=C(k*o);z[g+24>>2]=l-k;z[g+20>>2]=A-B;z[g+16>>2]=l+k;j=C(C(1)-C(u*j));i=C(i*t);z[g+44>>2]=j-i;h=C(h*o);z[g+28>>2]=j-h;z[g+12>>2]=C(C(1)-i)-h;z[g+48>>2]=z[d+16>>2];z[g+52>>2]=z[d+20>>2];h=z[d+24>>2];z[g+104>>2]=r;z[g+100>>2]=E;z[g+96>>2]=m;z[g+56>>2]=h;z[g+88>>2]=m+C(D(C(C(q-w)*C(.5))));z[g+84>>2]=m+C(D(C(C(s-y)*C(.5))));z[g+80>>2]=m+C(D(C(C(p-n)*C(.5))));z[g+72>>2]=C(q+w)*C(.5);z[g+68>>2]=C(s+y)*C(.5);z[g- -64>>2]=C(p+n)*C(.5);v[g+60>>2]=g+264;v[g+108>>2]=c;Ba[v[(x[c+4>>1]<<2)+142480>>2]](c,g+200|0,g,1,1);break a}F=g+120|0;JX(F,b+4|0,b+16|0);E=z[e>>2];r=z[a+4>>2];v[g+8>>2]=f;v[g+4>>2]=2;i=z[d+4>>2];t=C(i+i);h=z[d+8>>2];l=C(t*h);u=z[d>>2];j=C(u+u);o=z[d+12>>2];k=C(j*o);z[g+40>>2]=l-k;A=C(j*h);B=C(t*o);z[g+36>>2]=A+B;z[g+32>>2]=l+k;l=C(j*i);k=o;o=C(h+h);k=C(k*o);z[g+24>>2]=l-k;z[g+20>>2]=A-B;z[g+16>>2]=l+k;j=C(C(1)-C(u*j));i=C(i*t);z[g+44>>2]=j-i;h=C(h*o);z[g+28>>2]=j-h;z[g+12>>2]=C(C(1)-i)-h;z[g+48>>2]=z[d+16>>2];z[g+52>>2]=z[d+20>>2];h=z[d+24>>2];z[g+104>>2]=r;z[g+100>>2]=E;z[g+96>>2]=m;z[g+56>>2]=h;z[g+88>>2]=m+C(D(C(C(q-w)*C(.5))));z[g+84>>2]=m+C(D(C(C(s-y)*C(.5))));z[g+80>>2]=m+C(D(C(C(p-n)*C(.5))));z[g+72>>2]=C(q+w)*C(.5);z[g+68>>2]=C(s+y)*C(.5);z[g- -64>>2]=C(p+n)*C(.5);v[g+60>>2]=g+264;v[g+108>>2]=c;v[g>>2]=142508;v[g+112>>2]=F;a=g+200|0;nZ(F,g+236|0,g+248|0,a);Ba[v[(x[c+4>>1]<<2)+142480>>2]](c,a,g,1,1)}xa=g+288|0;return v[f+4096>>2]!=0}function $U(a,b){var c=0,d=0,e=0,f=C(0),g=C(0),h=0;c=xa-480|0;xa=c;a:{if(w[b+24|0]){v[a+32>>2]=0;v[a>>2]=2;d=v[b+4>>2];e=v[b>>2];z[c+472>>2]=z[b+8>>2];v[c+464>>2]=e;v[c+468>>2]=d;d=_U(a,c+464|0);f=z[b+12>>2];g=z[b+4>>2];z[c+456>>2]=z[b+8>>2];z[c+452>>2]=g;z[c+448>>2]=f;d=_U(d,c+448|0);e=v[b+16>>2];h=v[b+12>>2];z[c+440>>2]=z[b+8>>2];v[c+432>>2]=h;v[c+436>>2]=e;d=_U(d,c+432|0);f=z[b+16>>2];g=z[b>>2];z[c+424>>2]=z[b+8>>2];z[c+420>>2]=f;z[c+416>>2]=g;d=_U(d,c+416|0);e=v[b+4>>2];h=v[b>>2];z[c+408>>2]=z[b+8>>2];v[c+400>>2]=h;v[c+404>>2]=e;d=_U(d,c+400|0);e=v[b+4>>2];h=v[b>>2];z[c+392>>2]=z[b+20>>2];v[c+384>>2]=h;v[c+388>>2]=e;d=_U(d,c+384|0);f=z[b+12>>2];g=z[b+4>>2];z[c+376>>2]=z[b+20>>2];z[c+372>>2]=g;z[c+368>>2]=f;d=_U(d,c+368|0);e=v[b+16>>2];h=v[b+12>>2];z[c+360>>2]=z[b+20>>2];v[c+352>>2]=h;v[c+356>>2]=e;d=_U(d,c+352|0);f=z[b+16>>2];g=z[b>>2];z[c+344>>2]=z[b+20>>2];z[c+340>>2]=f;z[c+336>>2]=g;d=_U(d,c+336|0);e=v[b+4>>2];h=v[b>>2];z[c+328>>2]=z[b+20>>2];v[c+320>>2]=h;v[c+324>>2]=e;d=_U(d,c+320|0);v[d>>2]=1;v[a+32>>2]=0;f=z[b+12>>2];g=z[b+4>>2];z[c+312>>2]=z[b+8>>2];z[c+308>>2]=g;z[c+304>>2]=f;d=_U(d,c+304|0);f=z[b+12>>2];g=z[b+4>>2];z[c+296>>2]=z[b+20>>2];z[c+292>>2]=g;z[c+288>>2]=f;d=_U(d,c+288|0);e=v[b+16>>2];h=v[b+12>>2];z[c+280>>2]=z[b+8>>2];v[c+272>>2]=h;v[c+276>>2]=e;d=_U(d,c+272|0);e=v[b+16>>2];h=v[b+12>>2];z[c+264>>2]=z[b+20>>2];v[c+256>>2]=h;v[c+260>>2]=e;d=_U(d,c+256|0);f=z[b+16>>2];g=z[b>>2];z[c+248>>2]=z[b+8>>2];z[c+244>>2]=f;z[c+240>>2]=g;_U(d,c+240|0);f=z[b+20>>2];g=z[b+16>>2];z[c+224>>2]=z[b>>2];b=c+224|0;break a}v[a+32>>2]=0;v[a>>2]=4;d=v[b+4>>2];e=v[b>>2];z[c+216>>2]=z[b+8>>2];v[c+208>>2]=e;v[c+212>>2]=d;d=_U(a,c+208|0);f=z[b+16>>2];g=z[b>>2];z[c+200>>2]=z[b+8>>2];z[c+196>>2]=f;z[c+192>>2]=g;d=_U(d,c+192|0);f=z[b+12>>2];g=z[b+4>>2];z[c+184>>2]=z[b+8>>2];z[c+180>>2]=g;z[c+176>>2]=f;d=_U(d,c+176|0);e=v[b+16>>2];h=v[b+12>>2];z[c+168>>2]=z[b+8>>2];v[c+160>>2]=h;v[c+164>>2]=e;d=_U(d,c+160|0);e=v[b+16>>2];h=v[b+12>>2];z[c+152>>2]=z[b+20>>2];v[c+144>>2]=h;v[c+148>>2]=e;d=_U(d,c+144|0);f=z[b+16>>2];g=z[b>>2];z[c+136>>2]=z[b+8>>2];z[c+132>>2]=f;z[c+128>>2]=g;d=_U(d,c+128|0);f=z[b+16>>2];g=z[b>>2];z[c+120>>2]=z[b+20>>2];z[c+116>>2]=f;z[c+112>>2]=g;d=_U(d,c+112|0);e=v[b+4>>2];h=v[b>>2];z[c+104>>2]=z[b+8>>2];v[c+96>>2]=h;v[c+100>>2]=e;d=_U(d,c+96|0);e=v[b+4>>2];h=v[b>>2];z[c+88>>2]=z[b+20>>2];v[c+80>>2]=h;v[c+84>>2]=e;d=_U(d,c+80|0);f=z[b+12>>2];g=z[b+4>>2];z[c+72>>2]=z[b+8>>2];z[c+68>>2]=g;z[c+64>>2]=f;d=_U(d,c- -64|0);f=z[b+12>>2];g=z[b+4>>2];z[c+56>>2]=z[b+20>>2];z[c+52>>2]=g;z[c+48>>2]=f;d=_U(d,c+48|0);e=v[b+16>>2];h=v[b+12>>2];z[c+40>>2]=z[b+20>>2];v[c+32>>2]=h;v[c+36>>2]=e;d=_U(d,c+32|0);e=v[b+4>>2];h=v[b>>2];z[c+24>>2]=z[b+20>>2];v[c+16>>2]=h;v[c+20>>2]=e;_U(d,c+16|0);f=z[b+20>>2];g=z[b+16>>2];z[c>>2]=z[b>>2];b=c}z[b+8>>2]=f;z[b+4>>2]=g;_U(a,b);xa=c+480|0}function Fu(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=xa-288|0;xa=e;a:{if(!d){b:{if(!v[b+192>>2]|(v[b+4>>2]&-1073741824)!=1073741824){break b}d=v[b+192>>2];f=b+16|0;g=w[v[f+176>>2]+31|0]==1;c:{if(g){if(d){break c}break b}if(!v[b+192>>2]|(!d|w[v[f+176>>2]+31|0]==1)){break b}}TG(f,v[v[b>>2]+2428>>2],g)}d:{if(!w[a+4785|0]){Gu(a+16|0,b,c);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break d}f=a+4932|0;e:{f:{d=v[b+4>>2];switch((d>>>30|0)-1|0){case 1:break e;case 0:break f;default:break d}}v[b+4>>2]=d&1073741823;v[e+16>>2]=b;Pg(f,e+16|0);break d}v[b+4>>2]=d|-1073741824;if(d&268435456){break d}v[e+16>>2]=b;d=rh(f,e+16|0,e+12|0);if(w[e+12|0]){break d}v[d>>2]=v[e+16>>2]}d=v[b+268>>2];g:{if(!(t[(d&16384?v[b+8>>2]+268|0:b+60|0)|0]&1)){v[b+264>>2]=1;v[b+268>>2]=d&-983041;break g}Xk(b)}d=v[b+4>>2]&-33;v[b+4>>2]=d;if(!w[a+4785|0]){break a}if(c){v[b+4>>2]=d|16}t[e+272|0]=1;v[e+280>>2]=0;v[e+284>>2]=64;v[e+276>>2]=e+16;a=0;c=Io(b,e+12|0,0);h:{if(!c){break h}d=v[b+4>>2]&-1073741824;f=v[b>>2];if((c|0)!=1){h=c&-2;b=0;while(1){j=a<<2;g=v[j+v[e+12>>2]>>2];i=v[g+36>>2];if((i&251658240)==16777216){v[g+32>>2]=f;v[g+36>>2]=d|i&1073741823}g=v[v[e+12>>2]+(j|4)>>2];j=v[g+36>>2];if((j&251658240)==16777216){v[g+32>>2]=f;v[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=v[v[e+12>>2]+(a<<2)>>2];b=v[a+36>>2];if((b&251658240)!=16777216){break h}v[a+32>>2]=f;v[a+36>>2]=d|b&1073741823}a=v[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}d=a+4932|0;c=xa-288|0;xa=c;i:{if(!w[a+4785|0]){Hu(b);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break i}j:{k:{l:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break k;case 0:break l;default:break j}}v[b+4>>2]=a&1073741823;v[c+16>>2]=b;Pg(d,c+16|0);break j}v[b+4>>2]=a|-1073741824;if(a&268435456){break j}v[c+16>>2]=b;a=rh(d,c+16|0,c+12|0);if(w[c+12|0]){break j}v[a>>2]=v[c+16>>2]}t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;a=0;d=Io(b,c+12|0,0);m:{if(!d){break m}f=v[b+4>>2]&-1073741824;g=v[b>>2];if((d|0)!=1){j=d&-2;while(1){i=a<<2;h=v[i+v[c+12>>2]>>2];k=v[(h+32|0)+4>>2];if((k&251658240)==16777216){v[h+32>>2]=g;v[h+36>>2]=f|k&1073741823}h=v[v[c+12>>2]+(i|4)>>2];i=v[(h+32|0)+4>>2];if((i&251658240)==16777216){v[h+32>>2]=g;v[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=v[v[c+12>>2]+(a<<2)>>2];d=v[(a+32|0)+4>>2];if((d&251658240)!=16777216){break m}v[a+32>>2]=g;v[a+36>>2]=f|d&1073741823}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break i}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break i}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,a)}xa=c+288|0;a=v[b+268>>2];n:{if(!(t[(a&16384?v[b+8>>2]+268|0:b+60|0)|0]&1)){v[b+264>>2]=1;v[b+268>>2]=a&-983041;break n}Xk(b)}v[b+4>>2]=v[b+4>>2]&-33}xa=e+288|0}function Z_(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=C(0),j=C(0),k=0,l=C(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=C(0),K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;q=xa-224|0;xa=q;A=Ba[v[v[a>>2]+36>>2]](a)|0;K=Ba[v[v[a>>2]+32>>2]](a)|0;i=z[a+88>>2];j=z[a+84>>2];o=(c|0)>0?c:0;f=v[d>>2]+c|0;f=(f|0)>0?f:0;M=f>>>0>>0?f:K;a:{if(o>>>0>=M>>>0){break a}N=(b|0)>0?b:0;f=v[d+4>>2]+b|0;f=(f|0)>0?f:0;O=f>>>0>>0?f:A;if(N>>>0>=O>>>0){break a}g=v[a+60>>2];while(1){P=(o|0)!=0;Q=o-c|0;R=B(o,A);p=N;while(1){D=p+R|0;L=D<<2;s=L+g|0;f=v[d+16>>2]+((p-b|0)+B(v[d+4>>2],Q)<<2)|0;f=x[f>>1]|x[f+2>>1]<<16;u[s>>1]=f;u[s+2>>1]=f>>>16;b:{c:{if(t[a+68|0]&1){if(!o|!p|(v[a+40>>2]-1>>>0<=o>>>0|v[a+44>>2]-1>>>0<=p>>>0)){break c}}E=__(a,D,o,p,q+96|0);if(!E){break c}F=v[a+44>>2];G=F-1|0;H=v[a+40>>2]-1|0;r=v[a+60>>2];g=0;m=q;while(1){f=(q+96|0)+(g<<4)|0;k=v[f+12>>2];I=v[f+8>>2];h=0;d:{e:{f:{g:{h:{n=v[f+4>>2];switch(v[f>>2]+B(n,-3)|0){case 0:break f;case 1:break g;case 2:break h;default:break d}}if(H>>>0<=I>>>0){break d}if(k){v[m>>2]=(n<<1)-1;f=1}else{f=0}if(k>>>0>=G>>>0){h=f;break d}k=n<<1;h=f+1|0;break e}if(H>>>0<=I>>>0|k>>>0>=G>>>0){break d}f=1;h=n<<1;v[m>>2]=h;k=h|1;h=2;break e}if(k>>>0>=G>>>0){break d}if(I){f=n-F|0;v[m>>2]=f<<1|t[((f<<2)+r|0)+2|0]>=0;f=1}else{f=0}if(H>>>0<=I>>>0){h=f;break d}k=n<<1;h=f+1|0;if(t[((n<<2)+r|0)+2|0]>=0){break e}k=k|1;h=f+1|0}v[(f<<2)+m>>2]=k}v[(q- -64|0)+(g<<2)>>2]=h;m=m+8|0;h=1;g=g+1|0;if((E|0)!=(g|0)){continue}break}f=q;m=0;g=0;while(1){i:{n=v[f>>2];n=w[((n<<1&-4)+r|0)+(n&1?3:2)|0]&127;j:{if(y[(q- -64|0)+(g<<2)>>2]<=1){if((n|0)!=127){break i}break j}k=v[f+4>>2];k=w[((k<<1&-4)+r|0)+(k&1?3:2)|0]&127;if((n|0)!=127){m=1;if((k|0)!=127){break j}break i}if((k|0)==127){break j}m=1;break i}f=f+8|0;g=g+1|0;h=E>>>0>g>>>0;if((g|0)!=(E|0)){continue}}break}k:{if(h&1){break k}if(!m){break c}f=r+L|0;h=u[f>>1]<<1;g=0;m=o>>>0>>0&P;g=m?h-(u[(D+F<<2)+r>>1]+u[(D-F<<2)+r>>1]|0)|0:g;l:{if(!(!p|p>>>0>=G>>>0)){f=h-(u[f+4>>1]+u[f-4>>1]|0)|0;break l}f=0;if(!m){break k}}if(!(z[a+64>>2]=0){break c}}t[s+3|0]=w[s+3|0]|128;break b}t[s+3|0]=w[s+3|0]&127}g=v[a+60>>2];l=C(u[L+g>>1]);i=il?l:j;p=p+1|0;if((O|0)!=(p|0)){continue}break}o=o+1|0;if((M|0)!=(o|0)){continue}break}}m:{if(!e){break m}b=B(A,K);if(!b){j=C(34028234663852886e22);i=C(-34028234663852886e22);break m}d=b&1;c=v[a+60>>2];n:{if((b|0)==1){g=0;i=C(-34028234663852886e22);j=C(34028234663852886e22);break n}b=b&-2;g=0;i=C(-34028234663852886e22);j=C(34028234663852886e22);h=0;while(1){e=g<<2;l=C(u[c+(e|4)>>1]);J=C(u[c+e>>1]);i=iJ?J:j;j=j>l?l:j;g=g+2|0;h=h+2|0;if((b|0)!=(h|0)){continue}break}}if(!d){break m}l=C(u[c+(g<<2)>>1]);i=il?l:j}z[a+88>>2]=i;z[a+84>>2]=j;z[a+32>>2]=C(i-j)*C(.5);z[a+20>>2]=C(i+j)*C(.5);v[a+92>>2]=v[a+92>>2]+1;xa=q+224|0;return 1}function Iv(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0);n=z[b+20>>2];u=z[b+24>>2];D=z[b+36>>2];M=z[b+40>>2];c=z[b+88>>2];p=z[b+56>>2];d=z[b+72>>2];i=z[b+84>>2];t=z[b+52>>2];j=z[b+68>>2];o=z[b+80>>2];w=z[b- -64>>2];e=z[b+116>>2];l=z[b+136>>2];m=z[b+100>>2];k=z[b+112>>2];g=z[b+120>>2];x=z[b+132>>2];y=z[b+104>>2];q=z[b+128>>2];h=z[b>>2];F=z[b+8>>2];G=z[b+32>>2];E=z[b+4>>2];H=z[b+16>>2];B=z[b+48>>2];f=z[b+96>>2];v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;A=C(C(h+h)*C(.5));r=C(-B);h=C(C(k+m)*C(.5));m=C(C(x+g)*C(.5));k=C(C(q+y)*C(.5));g=C(C(e+e)*C(.5));e=C(C(h*m)-C(k*g));L=e;s=C(C(l+l)*C(.5));q=C(C(g*s)-C(m*m));l=C(C(f+f)*C(.5));f=C(C(m*k)-C(s*h));e=C(C(1)/C(C(e*k)+C(C(q*l)+C(h*f))));x=C(L*e);y=C(C(C(k*h)-C(l*m))*e);I=C(C(C(l*g)-C(h*h))*e);h=C(C(C(r*x)-C(w*y))-C(o*I));J=C(q*e);q=C(f*e);m=C(C(C(r*J)-C(w*q))-C(o*x));K=C(C(C(s*l)-C(k*k))*e);k=C(C(C(r*q)-C(w*K))-C(o*y));s=C(A+C(C(o*h)+C(C(B*m)+C(w*k))));f=C(C(n+n)*C(.5));n=C(-t);e=C(C(C(n*x)-C(y*j))-C(i*I));l=C(C(C(n*J)-C(q*j))-C(i*x));n=C(C(C(n*q)-C(K*j))-C(i*y));A=C(f+C(C(i*e)+C(C(t*l)+C(j*n))));H=C(C(H+E)*C(.5));E=C(H+C(C(h*i)+C(C(m*t)+C(j*k))));N=C(C(D+u)*C(.5));D=C(N+C(C(e*c)+C(C(l*p)+C(d*n))));f=C(C(G+F)*C(.5));u=C(f+C(C(h*c)+C(C(m*p)+C(d*k))));F=C(C(E*D)-C(u*A));L=f;g=C(-p);f=C(C(C(g*x)-C(y*d))-C(c*I));r=C(C(C(g*J)-C(q*d))-C(c*x));g=C(C(C(g*q)-C(K*d))-C(c*y));G=C(L+C(C(o*f)+C(C(B*r)+C(w*g))));p=C(C(C(M+M)*C(.5))+C(C(f*c)+C(C(r*p)+C(d*g))));d=C(N+C(C(f*i)+C(C(r*t)+C(j*g))));t=C(C(A*p)-C(D*d));c=C(H+C(C(e*o)+C(C(l*B)+C(w*n))));i=C(C(d*u)-C(p*E));j=C(C(1)/C(C(F*G)+C(C(t*s)+C(c*i))));o=C(C(C(s*A)-C(E*c))*j);z[a+40>>2]=o;c=C(C(C(u*c)-C(s*D))*j);z[a+36>>2]=c;d=C(F*j);z[a+32>>2]=d;z[a+24>>2]=c;w=C(C(C(p*s)-C(G*u))*j);z[a+20>>2]=w;i=C(i*j);z[a+16>>2]=i;z[a+8>>2]=d;z[a+4>>2]=i;j=C(t*j);z[a>>2]=j;p=C(C(o*f)+C(C(d*h)+C(e*c)));z[a+88>>2]=p;t=C(C(c*f)+C(C(i*h)+C(e*w)));z[a+84>>2]=t;B=C(C(d*f)+C(C(j*h)+C(e*i)));z[a+80>>2]=B;s=C(C(o*g)+C(C(d*k)+C(n*c)));z[a+72>>2]=s;A=C(C(c*g)+C(C(i*k)+C(n*w)));z[a+68>>2]=A;u=C(C(d*g)+C(C(j*k)+C(n*i)));z[a- -64>>2]=u;o=C(C(o*r)+C(C(d*m)+C(l*c)));z[a+56>>2]=o;c=C(C(c*r)+C(C(i*m)+C(l*w)));z[a+52>>2]=c;d=C(C(d*r)+C(C(j*m)+C(l*i)));z[a+48>>2]=d;z[a+136>>2]=I+C(C(f*p)+C(C(h*B)+C(e*t)));z[a+132>>2]=y+C(C(g*p)+C(C(k*B)+C(n*t)));z[a+128>>2]=x+C(C(r*p)+C(C(m*B)+C(l*t)));z[a+120>>2]=y+C(C(f*s)+C(C(h*u)+C(e*A)));z[a+116>>2]=K+C(C(g*s)+C(C(k*u)+C(n*A)));z[a+112>>2]=q+C(C(r*s)+C(C(m*u)+C(l*A)));z[a+104>>2]=x+C(C(f*o)+C(C(h*d)+C(e*c)));z[a+100>>2]=q+C(C(g*o)+C(C(k*d)+C(n*c)));z[a+96>>2]=J+C(C(r*o)+C(C(m*d)+C(l*c)))}function fx(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=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=0,A=0,D=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=0,U=0;h=xa-128|0;xa=h;t[a+489|0]=1;p=v[a+32>>2];A=b<<5;i=p+A|0;R=v[i+8>>2];S=v[i+12>>2];D=e<<5;i=D+p|0;T=v[i+8>>2];U=v[i+12>>2];y=v[a+452>>2];i=v[a+264>>2];F=z[f>>2];G=z[f+4>>2];H=z[f+8>>2];I=z[g>>2];J=z[g+4>>2];K=z[g+8>>2];L=z[c>>2];M=z[c+4>>2];N=z[c+8>>2];O=z[d>>2];P=z[d+4>>2];Q=z[d+8>>2];j=C(-Q);z[h+120>>2]=j;k=C(-P);z[h+116>>2]=k;v[h+124>>2]=0;l=C(-O);z[h+112>>2]=l;v[h+108>>2]=0;m=C(-N);z[h+104>>2]=m;n=C(-M);z[h+100>>2]=n;o=C(-L);z[h+96>>2]=o;q=C(-K);z[h+88>>2]=q;r=C(-J);z[h+84>>2]=r;v[h+92>>2]=0;s=C(-I);z[h+80>>2]=s;v[h+76>>2]=0;u=C(-H);z[h+72>>2]=u;w=C(-G);z[h+68>>2]=w;x=C(-F);z[h+64>>2]=x;c=i+D|0;z[c>>2]=z[c>>2]-F;z[c+4>>2]=z[c+4>>2]-G;z[c+8>>2]=z[c+8>>2]-H;z[c+16>>2]=z[c+16>>2]-I;z[c+20>>2]=z[c+20>>2]-J;z[c+24>>2]=z[c+24>>2]-K;c=S&U;g=c?E(c)^63:31-E(R&T)|0;if((e|0)!=(g|0)){while(1){dx(h+32|0,v[a+396>>2]+B(e,96)|0,(B(e,160)+y|0)+120|0,v[a+384>>2]+B(e,76)|0,h- -64|0);v[h+76>>2]=0;v[h+92>>2]=0;x=z[h+32>>2];z[h+64>>2]=x;w=z[h+36>>2];z[h+68>>2]=w;u=z[h+40>>2];z[h+72>>2]=u;s=z[h+48>>2];z[h+80>>2]=s;r=z[h+52>>2];z[h+84>>2]=r;q=z[h+56>>2];z[h+88>>2]=q;e=v[((e<<5)+p|0)+24>>2];c=(e<<5)+i|0;z[c>>2]=x+z[c>>2];z[c+4>>2]=w+z[c+4>>2];z[c+8>>2]=u+z[c+8>>2];z[c+16>>2]=s+z[c+16>>2];z[c+20>>2]=r+z[c+20>>2];z[c+24>>2]=q+z[c+24>>2];if((e|0)!=(g|0)){continue}break}}c=i+A|0;z[c>>2]=z[c>>2]-L;z[c+4>>2]=z[c+4>>2]-M;z[c+8>>2]=z[c+8>>2]-N;z[c+16>>2]=z[c+16>>2]-O;z[c+20>>2]=z[c+20>>2]-P;z[c+24>>2]=z[c+24>>2]-Q;if((b|0)!=(g|0)){while(1){dx(h+32|0,v[a+396>>2]+B(b,96)|0,(B(b,160)+y|0)+120|0,v[a+384>>2]+B(b,76)|0,h+96|0);v[h+108>>2]=0;v[h+124>>2]=0;o=z[h+32>>2];z[h+96>>2]=o;n=z[h+36>>2];z[h+100>>2]=n;m=z[h+40>>2];z[h+104>>2]=m;l=z[h+48>>2];z[h+112>>2]=l;k=z[h+52>>2];z[h+116>>2]=k;j=z[h+56>>2];z[h+120>>2]=j;b=v[((b<<5)+p|0)+24>>2];c=(b<<5)+i|0;z[c>>2]=o+z[c>>2];z[c+4>>2]=n+z[c+4>>2];z[c+8>>2]=m+z[c+8>>2];z[c+16>>2]=l+z[c+16>>2];z[c+20>>2]=k+z[c+20>>2];z[c+24>>2]=j+z[c+24>>2];if((b|0)!=(g|0)){continue}break}}z[h+56>>2]=j+q;z[h+52>>2]=k+r;v[h+60>>2]=0;v[h+44>>2]=0;z[h+48>>2]=l+s;z[h+40>>2]=m+u;z[h+36>>2]=n+w;z[h+32>>2]=o+x;if(g){while(1){dx(h,v[a+396>>2]+B(g,96)|0,(B(g,160)+y|0)+120|0,v[a+384>>2]+B(g,76)|0,h+32|0);v[h+44>>2]=0;v[h+60>>2]=0;j=z[h>>2];z[h+32>>2]=j;k=z[h+4>>2];z[h+36>>2]=k;l=z[h+8>>2];z[h+40>>2]=l;m=z[h+16>>2];z[h+48>>2]=m;n=z[h+20>>2];z[h+52>>2]=n;o=z[h+24>>2];z[h+56>>2]=o;g=v[((g<<5)+p|0)+24>>2];b=(g<<5)+i|0;z[b>>2]=j+z[b>>2];z[b+4>>2]=k+z[b+4>>2];z[b+8>>2]=l+z[b+8>>2];z[b+16>>2]=m+z[b+16>>2];z[b+20>>2]=n+z[b+20>>2];z[b+24>>2]=o+z[b+24>>2];if(g){continue}break}}xa=h+128|0}function tX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),v=C(0),w=C(0),y=C(0),A=C(0);c=xa-128|0;xa=c;a:{b:{if(!(z[e>>2]!=z[e+12>>2]|z[e+4>>2]!=z[e+16>>2]|z[e+8>>2]!=z[e+20>>2])){k=z[b+4>>2];l=C(k+k);j=z[b+8>>2];o=C(l*j);m=z[b>>2];n=C(m+m);p=z[b+12>>2];q=C(n*p);z[c+92>>2]=o-q;z[c+84>>2]=o+q;m=C(C(1)-C(m*n));o=C(k*l);z[c+96>>2]=m-o;r=m;m=C(j+j);q=C(j*m);z[c+80>>2]=r-q;j=C(n*j);l=C(l*p);z[c+88>>2]=j+l;k=C(n*k);n=C(m*p);z[c+76>>2]=k-n;z[c+72>>2]=j-l;z[c+68>>2]=k+n;z[c+64>>2]=C(C(1)-o)-q;z[c+100>>2]=z[b+16>>2];z[c+104>>2]=z[b+20>>2];z[c+108>>2]=z[b+24>>2];z[c+112>>2]=z[a+4>>2];z[c+116>>2]=z[a+8>>2];z[c+120>>2]=z[a+12>>2];j=z[e+24>>2];u[c+56>>1]=x[i>>1];if(!F2(c- -64|0,j,e,f,g,h+40|0,h+28|0,c+56|0)){break b}u[h+12>>1]=2;z[h+28>>2]=-z[h+28>>2];z[h+36>>2]=-z[h+36>>2];z[h+32>>2]=-z[h+32>>2];d=1;if(!(t[i|0]&1)){break a}g=z[h+40>>2];if(g==C(0)){break a}j=z[e>>2];k=z[f>>2];n=z[e+4>>2];l=z[f+4>>2];z[c+8>>2]=C(g*z[f+8>>2])+z[e+8>>2];z[c+4>>2]=n+C(g*l);z[c>>2]=j+C(g*k);D_(c,c+100|0,c+112|0,c- -64|0,c+40|0);n=z[c+100>>2];l=z[c+88>>2];m=z[c+64>>2];p=z[c+76>>2];o=z[c+104>>2];q=z[c+92>>2];s=z[c+68>>2];v=z[c+80>>2];r=z[c+108>>2];w=z[c+96>>2];g=z[c+48>>2];y=z[c+72>>2];j=z[c+40>>2];A=z[c+84>>2];k=z[c+44>>2];u[h+12>>1]=x[h+12>>1]|1;z[h+24>>2]=r+C(C(C(j*y)+C(k*A))+C(g*w));z[h+20>>2]=o+C(C(C(j*s)+C(k*v))+C(g*q));z[h+16>>2]=n+C(C(C(j*m)+C(k*p))+C(g*l));break a}u[c+32>>1]=x[i>>1];d=0;if(!H2(e,b,a+4|0,f,g,h+16|0,h+40|0,h+28|0,c+32|0)){break a}u[h+12>>1]=2;d=1;if(!(t[i|0]&1)){break a}g=z[h+40>>2];if(g==C(0)){break a}j=z[e+16>>2];k=z[e+20>>2];n=z[e>>2];l=z[e+4>>2];m=z[e+8>>2];p=z[e+12>>2];z[c+24>>2]=z[e+24>>2];o=z[f>>2];q=z[f+4>>2];r=k;k=C(g*z[f+8>>2]);z[c+20>>2]=r+k;r=j;j=C(g*q);z[c+16>>2]=r+j;g=C(g*o);z[c+12>>2]=p+g;z[c+8>>2]=m+k;z[c+4>>2]=l+j;z[c>>2]=n+g;j=z[b+4>>2];n=C(j+j);g=z[b+8>>2];p=C(n*g);l=z[b>>2];k=C(l+l);m=z[b+12>>2];o=C(k*m);z[c+92>>2]=p-o;z[c+84>>2]=p+o;l=C(C(1)-C(l*k));p=C(j*n);z[c+96>>2]=l-p;r=l;l=C(g+g);o=C(g*l);z[c+80>>2]=r-o;g=C(k*g);n=C(n*m);z[c+88>>2]=g+n;j=C(k*j);k=C(l*m);z[c+76>>2]=j-k;z[c+72>>2]=g-n;z[c+68>>2]=j+k;z[c+64>>2]=C(C(1)-p)-o;z[c+100>>2]=z[b+16>>2];z[c+104>>2]=z[b+20>>2];z[c+108>>2]=z[b+24>>2];z[c+112>>2]=z[a+4>>2];z[c+116>>2]=z[a+8>>2];z[c+120>>2]=z[a+12>>2];G_(c,c+12|0,c+100|0,c+112|0,c- -64|0,0,c+40|0);s=z[b+20>>2];o=z[b+24>>2];v=z[b+16>>2];j=z[b+8>>2];g=z[b+12>>2];k=z[b>>2];n=z[b+4>>2];l=z[c+48>>2];p=z[c+44>>2];m=z[c+40>>2];u[h+12>>1]=x[h+12>>1]|1;r=o;l=C(l+l);m=C(m+m);p=C(p+p);o=C(C(j*l)+C(C(k*m)+C(n*p)));q=C(C(g*g)+C(-.5));z[h+24>>2]=r+C(C(j*o)+C(C(l*q)+C(g*C(C(k*p)-C(m*n)))));z[h+20>>2]=s+C(C(n*o)+C(C(p*q)+C(g*C(C(j*m)-C(l*k)))));z[h+16>>2]=v+C(C(k*o)+C(C(m*q)+C(g*C(C(n*l)-C(p*j)))));break a}d=0}xa=c+128|0;return d|0}function PR(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,y=0,z=0,A=0,C=0;a:{l=v[a+48>>2];b:{if(!l){break b}q=v[v[a+4>>2]+40>>2];o=v[q+2168>>2];h=v[l+16>>2];c:{if(h){break c}i=JJ(o);v[l+16>>2]=i;if(!i){h=0;break c}j=v[l+8>>2];v[i+16>>2]=v[j+48>>2];v[i+20>>2]=v[v[l+12>>2]+48>>2];j=v[j+44>>2];v[i+24>>2]=v[((w[j+9|0]<<2)+149664|0)+40>>2]+j;j=i;i=v[v[l+12>>2]+44>>2];v[j+28>>2]=v[((w[i+9|0]<<2)+149664|0)+40>>2]+i;h=v[l+16>>2]}y=v[q+1092>>2];i=v[h+12>>2];n=v[a+44>>2];z=v[a+32>>2];A=v[l+8>>2];s=v[a+28>>2];C=v[s+4>>2];j=v[q+1088>>2];v[h+12>>2]=j;r=n&28672;d:{e:{f:{g:{if((i|0)!=(j|0)){i=x[h+4>>1];if(!i){u[h+4>>1]=2;i=2}j=x[h+10>>1];h:{if(!(d?0:r)){u[h+10>>1]=j&31;i=HJ(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){u[h+10>>1]=j&31|(k>>>4|0)+((k&15)!=0)<<5;i=HJ(o,i,k,h);break f}i=HJ(o,i,p,h);if(p){break f}}u[h+6>>1]=0;u[h+8>>1]=0;u[h+10>>1]=x[h+10>>1]&65504;break g}p=x[h+6>>1];if(!p){break a}j=v[o+44>>2]+v[h>>2]|0;i:{if(d|!r){break i}k=x[h+8>>1];if(((k?x[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>(x[h+10>>1]>>>1&32752)>>>0){i=x[h+4>>1];i=IJ(o,(i>>>0<=p>>>0)+i|0,m,h)}if(i){QR(h,i,r,v[l+8>>2],v[l+12>>2],e,f,p,k?k:4);if((n&10240)==10240){break e}break d}u[h+10>>1]=x[h+10>>1]|4}i=j}if(!i){break a}break d}if(!i){break a}u[h+6>>1]=0;u[h+8>>1]=0;u[h+10>>1]=x[h+10>>1]&65504;QR(h,i,r,v[l+8>>2],v[l+12>>2],e,f,0,4);if((n&10240)!=10240){break d}}t[q+4620|0]=1}b=e?b|32:b;j=x[h+10>>1]>>>1&32752;f=j+i|0;j:{if(v[a+40>>2]!=(y|0)){i=x[h+6>>1];k:{if(i>>>0>1]){f=f+B(i,40)|0;break k}d=IJ(o,((i>>>1|0)+i|0)+1|0,j,h);f=x[h+10>>1];if(!d){u[h+10>>1]=f|4;return}i=x[h+6>>1];f=(d+(f>>>1&32752)|0)+B(i,40)|0}u[a+64>>1]=i;d=(A|0)==(C|0);i=d?s:z;v[f>>2]=v[37419]+v[i+28>>2];d=d?z:s;j=v[37419]+v[d+28>>2]|0;v[f+8>>2]=0;v[f+12>>2]=0;v[f+4>>2]=j;v[f+16>>2]=0;v[f+20>>2]=0;v[f+24>>2]=0;u[f+30>>1]=b;u[f+28>>1]=c;v[f+32>>2]=v[i+32>>2];v[f+36>>2]=v[d+32>>2];u[h+6>>1]=x[h+6>>1]+1;v[a+40>>2]=y;break j}f=f+B(x[a+64>>1],40)|0;u[f+28>>1]=x[f+28>>1]|c;c=b|x[f+30>>1];u[f+30>>1]=d?c&8?c&65527:c:c}if(!(w[a+45|0]&2)){break b}d=v[a+56>>2];if(v[f+8>>2]|(!d|b&272)){break b}b=v[d+68>>2];l:{if((b|0)<0){a=v[v[v[v[a+4>>2]+40>>2]+976>>2]+1024>>2];c=Ba[v[v[a>>2]+80>>2]](a,b)|0;break l}c=v[g+32>>2]+(v[((b&7)<<2)+g>>2]+(b>>>3|0)<<4)|0}d=v[d+32>>2];a=w[c+13|0];if(a?e:1){if(x[d+6>>1]|(!d|!e)){break b}}m:{if(!e){h=v[c+8>>2];i=v[c+4>>2];b=v[c>>2];c=w[c+12|0];e=B(a,48)+(c<<4)|0;d=e;break m}i=d- -64|0;b=d+16|0;a=x[d+4>>1];e=a-16|0;a=a+15&131056;h=a+d|0;d=a-16|0;c=1;a=1}u[f+26>>1]=e;t[f+25|0]=a;t[f+24|0]=c;v[f+12>>2]=i;v[f+8>>2]=b;v[f+16>>2]=h;a=h?c<<2:0;v[f+20>>2]=a+d;b=x[f+28>>1]|((A|0)!=(C|0))<<5;u[f+28>>1]=a?b|16:b}return}u[h+10>>1]=x[h+10>>1]|2}function BM(a){a=a|0;var b=0,c=0;v[a>>2]=132404;b=v[a+508>>2];a:{if(!b){break a}c=v[b+12>>2];b:{if((c|0)<0|!(c&2147483647)){break b}c=v[b+4>>2];if(!c){break b}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+508>>2];if(!b){break a}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+508>>2]=0;b=v[a+512>>2];c:{if(!b){break c}c=v[b+12>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=v[b+4>>2];if(!c){break d}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+512>>2];if(!b){break c}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+512>>2]=0;b=v[a+560>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+552>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+548>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+540>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+536>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+528>>2];if(!b){break g}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+524>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[a+516>>2];if(!b){break h}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+504>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=v[a+496>>2];if(!b){break i}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+492>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=v[a+484>>2];if(!b){break j}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+480>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=v[a+472>>2];if(!b){break k}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+468>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=v[a+460>>2];if(!b){break l}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+456>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=v[a+448>>2];if(!b){break m}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+444>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=v[a+436>>2];if(!b){break n}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+432>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=v[a+424>>2];if(!b){break o}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+420>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=v[a+412>>2];if(!b){break p}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+408>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=v[a+400>>2];if(!b){break q}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+396>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=v[a+388>>2];if(!b){break r}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+384>>2];s:{if((b|0)<0|!(b&2147483647)){break s}b=v[a+376>>2];if(!b){break s}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}c=v[a+368>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}if(b){while(1){b=Yy(b);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0);c=v[a+368>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}if(b){continue}break}}b=v[a+368>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return Zy(a)|0}function KX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,w=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0);a=xa-112|0;xa=a;v[h+8>>2]=-1;BV(a+96|0,b);z[a+108>>2]=z[a+108>>2]-j;FV(a,e+36|0,e+48|0,e,e+12|0,e+24|0);j=z[a+104>>2];k=z[a+96>>2];l=z[a+100>>2];p=C(C(z[a+92>>2]*j)+C(C(z[a+84>>2]*k)+C(z[a+88>>2]*l)));m=C(C(z[a+20>>2]*j)+C(C(z[a+12>>2]*k)+C(z[a+16>>2]*l)));n=C(C(z[a+8>>2]*j)+C(C(z[a>>2]*k)+C(z[a+4>>2]*l)));n=n>2]*j)+C(C(z[a+24>>2]*k)+C(z[a+28>>2]*l)));m=b?m:n;c=o>2]*j)+C(C(z[a+36>>2]*k)+C(z[a+40>>2]*l)));m=c?o:m;d=n>2]*j)+C(C(z[a+48>>2]*k)+C(z[a+52>>2]*l)));m=d?n:m;s=o>2]*j)+C(C(z[a+60>>2]*k)+C(z[a- -64>>2]*l)));m=s?o:m;t=n>2]*j)+C(C(z[a+72>>2]*k)+C(z[a+76>>2]*l)));l=t?n:m;I=kp;k=J?p:k;a:{b:{c:{i=x[i>>1];if(i&512){if(!(k<=C(-z[a+108>>2]))){break c}u[h+12>>1]=3;b=xa-96|0;xa=b;FV(b,e+36|0,e+48|0,e,e+12|0,e+24|0);p=z[b+92>>2];m=z[b+88>>2];n=z[b+80>>2];o=z[b+76>>2];q=z[b+68>>2];r=z[b- -64>>2];w=z[b+56>>2];y=z[b+52>>2];A=z[b+44>>2];D=z[b+40>>2];E=z[b+32>>2];F=z[b+28>>2];k=z[a+108>>2];G=z[b+20>>2];H=z[b+16>>2];g=z[a+96>>2];j=z[a+100>>2];K=z[b+84>>2];L=z[b+72>>2];M=z[b+60>>2];N=z[b+48>>2];O=z[b+36>>2];P=z[b+24>>2];Q=z[b+8>>2];R=z[b>>2];S=z[b+4>>2];T=z[b+12>>2];l=z[a+104>>2];z[h+36>>2]=l;z[h+32>>2]=j;z[h+28>>2]=g;G=C(k+C(C(G*l)+C(C(T*g)+C(j*H))));H=C(k+C(C(Q*l)+C(C(R*g)+C(S*j))));c=G>2]=g;c=b+B(t?7:s?6:i?5:f?4:e?3:d?2:c,12)|0;j=z[c>>2];k=z[c+4>>2];l=z[a+96>>2];p=z[a+100>>2];z[h+24>>2]=z[c+8>>2]-C(g*z[a+104>>2]);z[h+20>>2]=k-C(g*p);z[h+16>>2]=j-C(g*l);xa=b+96|0;e=1;break a}if(!(k<=C(-z[a+108>>2]))|i&16){break c}v[h+40>>2]=0;u[h+12>>1]=2;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break b}e=0;l=z[a+96>>2];p=z[a+100>>2];k=C(C(z[f+8>>2]*j)+C(C(z[f>>2]*l)+C(z[f+4>>2]*p)));if(k>C(-1.0000000116860974e-7)&k>2];n=z[b>>2];o=z[b+4>>2];k=C(C(-C(z[a+108>>2]+C(C(m*j)+C(C(n*l)+C(p*o)))))/k);z[h+40>>2]=k;q=z[f>>2];r=z[f+4>>2];z[h+24>>2]=m+C(k*z[f+8>>2]);z[h+20>>2]=o+C(k*r);z[h+16>>2]=n+C(q*k);if(!(k>C(0))|!(g>=k)){break a}z[h+28>>2]=l;u[h+12>>1]=3;z[h+36>>2]=j;z[h+32>>2]=p}e=1}xa=a+112|0;return e|0}function jE(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=xa-16|0;xa=i;v[i+8>>2]=b;a:{if(!v[a+684>>2]){break a}c=(b<<15^-1)+b|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[v[a+660>>2]+((v[a+668>>2]-1&(c>>>16^c))<<2)>>2];if((d|0)==-1){break a}g=a+648|0;h=v[a+656>>2];c=v[a+652>>2];while(1){if(v[c+(d<<3)>>2]!=(b|0)){d=v[h+(d<<2)>>2];if((d|0)!=-1){continue}break a}break}h=v[(c+(d<<3)|0)+4>>2];d=h;c=B(d,44);IC(v[c+v[a+644>>2]>>2]);GC(v[c+v[a+644>>2]>>2]);b=v[a+644>>2];e=v[b+c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);b=v[a+644>>2]}b=b+c|0;v[b>>2]=0;b=v[b+8>>2];v[b+4>>2]=0;c=v[b+8>>2];b:{c:{if((c|0)<0|!(c&2147483647)){break c}c=v[b>>2];if(!c){break c}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c);c=v[a+644>>2];b=v[(c+B(d,44)|0)+8>>2];if(!b){break b}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);c=v[a+644>>2]}b=c;c=B(d,44);b=b+c|0;v[b+8>>2]=0;eC(v[b+4>>2]);b=v[a+644>>2];e=v[(c+b|0)+4>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);b=v[a+644>>2]}v[(b+c|0)+4>>2]=0;c=v[a+632>>2]-1|0;v[a+632>>2]=c;if((c|0)!=(d|0)){f=v[a+640>>2];e=f+B(d,24)|0;f=f+B(c,24)|0;z[e>>2]=z[f>>2];z[e+4>>2]=z[f+4>>2];z[e+8>>2]=z[f+8>>2];z[e+12>>2]=z[f+12>>2];z[e+16>>2]=z[f+16>>2];z[e+20>>2]=z[f+20>>2];d=B(d,44)+b|0;e=B(c,44);b=e+b|0;v[d+8>>2]=v[b+8>>2];f=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=f;z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];z[d+24>>2]=z[b+24>>2];z[d+28>>2]=z[b+28>>2];z[d+32>>2]=z[b+32>>2];z[d+36>>2]=z[b+36>>2];v[d+40>>2]=v[b+40>>2];b=e+v[a+644>>2]|0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0}f=a+4|0;e=SC(f,v[v[a+620>>2]+(h<<2)>>2],h,v[a+640>>2]);d:{if(!e|v[e+40>>2]){break d}b=v[e+36>>2];if(!v[b>>2]){break d}d=0;while(1){v[v[a+620>>2]+(v[((d<<2)+b|0)+4>>2]<<2)>>2]=e;d=d+1|0;b=v[e+36>>2];if(d>>>0>2]){continue}break}}if((c|0)!=(h|0)){b=v[a+620>>2];d=h<<2;e=c<<2;v[b+d>>2]=v[e+b>>2];TC(v[d+v[a+620>>2]>>2],c,h);c=e+v[a+688>>2]|0;b=bD(g,c,i+15|0);if(!w[i+15|0]){c=v[c>>2];v[b+4>>2]=0;v[b>>2]=c}v[b+4>>2]=h;a=v[a+688>>2];v[a+d>>2]=v[a+e>>2]}e:{if(!v[g+36>>2]){break e}f=v[g+12>>2];b=v[i+8>>2];a=(b<<15^-1)+b|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;c=f+((v[g+20>>2]-1&(a>>>16^a))<<2)|0;a=v[c>>2];if((a|0)==-1){break e}h=v[g+8>>2];e=v[g+4>>2];d=e+(a<<3)|0;if((b|0)!=v[d>>2]){while(1){c=h+(a<<2)|0;a=v[c>>2];if((a|0)==-1){break e}d=e+(a<<3)|0;if((b|0)!=v[d>>2]){continue}break}}b=c;c=h+(a<<2)|0;v[b>>2]=v[c>>2];b=v[g+36>>2]-1|0;v[g+36>>2]=b;v[g+32>>2]=v[g+32>>2]+1;if((a|0)!=(b|0)){j=e+(b<<3)|0;v[d>>2]=v[j>>2];v[(e+(a<<3)|0)+4>>2]=v[j+4>>2];v[c>>2]=v[h+(b<<2)>>2];b=v[d>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=f+((v[g+20>>2]-1&(b>>>16^b))<<2)|0;b=v[c>>2];d=v[g+36>>2];if((b|0)!=(d|0)){while(1){c=h+(b<<2)|0;b=v[c>>2];if((d|0)!=(b|0)){continue}break}}v[c>>2]=a}v[g+28>>2]=v[g+28>>2]-1}}xa=i+16|0}function Ox(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0);N=C(C(z[b+56>>2]+z[b- -64>>2])*C(.5));s=C(C(z[b+44>>2]+z[b+60>>2])*C(.5));O=C(C(z[b+40>>2]+z[b+48>>2])*C(.5));c=z[b+36>>2];Q=C(C(c+c)*C(.5));c=z[b+68>>2];R=C(C(c+c)*C(.5));c=z[b+52>>2];u=C(C(c+c)*C(.5));i=z[b+32>>2];l=z[b+28>>2];y=z[b+20>>2];G=z[b+16>>2];p=z[b+24>>2];H=z[b+12>>2];m=z[b+8>>2];g=z[b+4>>2];v=z[b>>2];A=C(1);B=C(1);c=C(0);D=C(1);E=C(1);e=C(C(z[b+76>>2]+z[b+84>>2])*C(.5));n=C(C(z[b+92>>2]+z[b+100>>2])*C(.5));f=C(C(z[b+80>>2]+z[b+96>>2])*C(.5));d=z[b+88>>2];h=C(C(d+d)*C(.5));t=C(C(e*n)-C(f*h));d=z[b+104>>2];q=C(C(d+d)*C(.5));j=C(C(h*q)-C(n*n));d=z[b+72>>2];d=C(C(d+d)*C(.5));k=C(C(n*f)-C(q*e));r=C(C(t*f)+C(C(j*d)+C(e*k)));if(r!=C(0)){c=C(C(1)/r);E=C(C(C(d*h)+C(e*C(-e)))*c);w=C(C(C(f*e)+C(d*C(-n)))*c);D=C(C(C(q*d)-C(f*f))*c);x=C(t*c);B=C(j*c);c=C(k*c)}e=C(0);r=C(1);f=C(0);F=C(1);h=C(-H);n=C(C(C(c*h)-C(v*B))-C(p*x));d=C(C(C(D*h)-C(v*c))-C(p*w));h=C(C(C(w*h)-C(v*x))-C(p*E));K=C(O+C(C(C(g*n)+C(G*d))+C(l*h)));j=C(-G);q=C(C(C(c*j)-C(g*B))-C(l*x));t=C(C(C(D*j)-C(g*c))-C(l*w));j=C(C(C(w*j)-C(g*x))-C(l*E));L=C(N+C(C(C(m*q)+C(y*t))+C(i*j)));I=C(s+C(C(C(m*n)+C(y*d))+C(i*h)));M=C(u+C(C(C(g*q)+C(G*t))+C(l*j)));P=C(C(K*L)-C(I*M));J=s;k=C(-y);s=C(C(C(c*k)-C(m*B))-C(i*x));u=C(C(C(D*k)-C(m*c))-C(i*w));k=C(C(C(w*k)-C(m*x))-C(i*E));J=C(J+C(C(C(v*s)+C(H*u))+C(p*k)));m=C(R+C(C(C(m*s)+C(y*u))+C(i*k)));g=C(N+C(C(C(g*s)+C(G*u))+C(l*k)));y=C(C(M*m)-C(L*g));i=C(Q+C(C(C(v*n)+C(H*d))+C(p*h)));l=C(O+C(C(C(v*q)+C(H*t))+C(p*j)));p=C(C(g*I)-C(m*K));g=C(C(P*J)+C(C(y*i)+C(l*p)));if(g!=C(0)){o=C(C(1)/g);F=C(C(C(i*M)-C(K*l))*o);f=C(C(C(I*l)-C(i*L))*o);r=C(C(C(m*i)-C(J*I))*o);e=C(P*o);A=C(y*o);o=C(p*o)}z[a+72>>2]=A;z[a+104>>2]=F;z[a+100>>2]=f;z[a+96>>2]=e;z[a+92>>2]=f;z[a+88>>2]=r;z[a+84>>2]=o;z[a+80>>2]=e;z[a+76>>2]=o;i=C(C(C(h*e)+C(j*f))+C(k*F));z[a+32>>2]=i;l=C(C(C(d*e)+C(t*f))+C(u*F));z[a+28>>2]=l;p=C(C(C(n*e)+C(q*f))+C(s*F));z[a+24>>2]=p;m=C(C(C(h*o)+C(j*r))+C(k*f));z[a+20>>2]=m;g=C(C(C(d*o)+C(t*r))+C(u*f));z[a+16>>2]=g;f=C(C(C(n*o)+C(q*r))+C(s*f));z[a+12>>2]=f;v=C(C(C(h*A)+C(j*o))+C(k*e));z[a+8>>2]=v;r=C(C(C(d*A)+C(t*o))+C(u*e));z[a+4>>2]=r;e=C(C(C(n*A)+C(q*o))+C(s*e));z[a>>2]=e;z[a+68>>2]=E+C(C(C(h*v)+C(j*m))+C(k*i));z[a- -64>>2]=w+C(C(C(d*v)+C(t*m))+C(u*i));z[a+60>>2]=x+C(C(C(n*v)+C(q*m))+C(s*i));z[a+56>>2]=w+C(C(C(h*r)+C(j*g))+C(k*l));z[a+52>>2]=D+C(C(C(d*r)+C(t*g))+C(u*l));z[a+48>>2]=c+C(C(C(n*r)+C(q*g))+C(s*l));z[a+44>>2]=x+C(C(C(h*e)+C(j*f))+C(k*p));z[a+40>>2]=c+C(C(C(d*e)+C(t*f))+C(u*p));z[a+36>>2]=B+C(C(C(n*e)+C(q*f))+C(s*p))}function Xy(a){a=a|0;var b=0,c=0;v[a>>2]=128184;b=v[a+484>>2];Ba[v[v[b>>2]>>2]](b);b=v[a+488>>2];Ba[v[v[b>>2]>>2]](b);b=v[a+492>>2];Ba[v[v[b>>2]>>2]](b);b=v[a+464>>2];a:{if(!b){break a}c=v[b+12>>2];b:{if((c|0)<0|!(c&2147483647)){break b}c=v[b+4>>2];if(!c){break b}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+464>>2];if(!b){break a}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+464>>2]=0;b=v[a+468>>2];c:{if(!b){break c}c=v[b+12>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=v[b+4>>2];if(!c){break d}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+468>>2];if(!b){break c}}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+468>>2]=0;b=v[a+528>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+520>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+516>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+508>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+504>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+496>>2];if(!b){break g}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+480>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[a+472>>2];if(!b){break h}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+460>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=v[a+452>>2];if(!b){break i}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+448>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=v[a+440>>2];if(!b){break j}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+436>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=v[a+428>>2];if(!b){break k}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+424>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=v[a+416>>2];if(!b){break l}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+412>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=v[a+404>>2];if(!b){break m}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+400>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=v[a+392>>2];if(!b){break n}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+388>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=v[a+380>>2];if(!b){break o}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+376>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=v[a+368>>2];if(!b){break p}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+364>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=v[a+356>>2];if(!b){break q}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+352>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=v[a+344>>2];if(!b){break r}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}c=v[a+336>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}if(b){while(1){b=Yy(b);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0);c=v[a+336>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}if(b){continue}break}}b=v[a+336>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return Zy(a)|0}function GQ(a){a=a|0;var b=0,c=0,d=C(0),e=0,f=0,g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=0,A=C(0),D=C(0),E=C(0),F=C(0),H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0);if(v[a+36>>2]){while(1){F=z[a+40>>2];g=0;p=C(0);H=0;i=xa-32|0;xa=i;f=v[v[(v[v[a+28>>2]+16>>2]+B(v[v[a+32>>2]+(I<<2)>>2]>>>7|0,24)|0)+20>>2]+16>>2];a:{if(!v[f+28>>2]|y[v[v[f+24>>2]>>2]+152>>2]>4294967293){break a}b=v[f+8>>2];b:{if(v[f+16>>2]){O=z[b+24>>2];A=C(34028234663852886e22);while(1){b=v[f>>2];Ba[v[v[b>>2]+180>>2]](i,b,g);c=v[v[f+24>>2]+(g<<2)>>2];d=z[c+136>>2];q=z[c+132>>2];r=z[c+128>>2];s=z[c+120>>2];t=z[c+116>>2];u=z[c+112>>2];c:{d:{b=v[c+44>>2];D=z[b+156>>2];if(!(DD)){break d}j=z[b+28>>2];k=z[i+20>>2];l=z[i+24>>2];m=z[b+16>>2];n=z[b+24>>2];o=z[i+16>>2];E=z[b+20>>2];e=v[b+176>>2];e:{if(!(!e|w[e+31|0]!=1)){e=e+32|0;break e}e=b+128|0}K=z[e+4>>2];L=z[e>>2];M=z[e+8>>2];s=C(s+z[i+8>>2]);u=C(u+z[i>>2]);t=C(t+z[i+4>>2]);P=C(C(s*s)+C(C(u*u)+C(t*t)));e=v[b+176>>2];f:{if(!(!e|w[e+31|0]!=1)){h=z[e+44>>2];break f}h=z[b+140>>2]}Q=h==C(0)?C(1):h;h=C(l+l);l=C(o+o);k=C(k+k);o=C(C(n*h)+C(C(m*l)+C(E*k)));J=C(C(j*j)+C(-.5));d=C(d+C(C(n*o)+C(C(h*J)-C(j*C(C(m*k)-C(l*E))))));r=C(r+C(C(m*o)+C(C(l*J)-C(j*C(C(E*h)-C(k*n))))));q=C(q+C(C(E*o)+C(C(k*J)-C(j*C(C(n*l)-C(h*m))))));m=C(C(P+C(Q*C(C(C(d*d)*(M>C(0)?C(C(1)/M):C(1)))+C(C(C(r*r)*(L>C(0)?C(C(1)/L):C(1)))+C((K>C(0)?C(C(1)/K):C(1))*C(q*q))))))*C(.5));n=C(v[v[c+100>>2]+148>>2]+1>>>0);j=C(n*O);if(!(m>=j)){break d}v[c+136>>2]=0;v[c+128>>2]=0;v[c+132>>2]=0;v[c+120>>2]=0;v[c+112>>2]=0;v[c+116>>2]=0;if(j!=C(0)){d=C(m/j);h=C((d>2]=d;if(D!=C(0)){break c}cG(v[v[c+40>>2]+1e3>>2],v[c+144>>2]);break c}z[c+136>>2]=d;z[c+132>>2]=q;z[c+128>>2]=r;z[c+120>>2]=s;z[c+116>>2]=t;z[c+112>>2]=u;d=C(D-F);d=d>C(0)?d:C(0);z[b+156>>2]=d}A=d>A?A:d;p=d>2];if(g>>>0>>0){continue}break}z[v[f+8>>2]+32>>2]=p;if(p==C(0)){if(!b){break b}g=0;while(1){b=g<<2;mH(v[b+v[f+24>>2]>>2]);b=v[b+v[f+24>>2]>>2];v[b+136>>2]=0;v[b+128>>2]=0;v[b+132>>2]=0;v[b+120>>2]=0;v[b+112>>2]=0;v[b+116>>2]=0;g=g+1|0;if(g>>>0>2]){continue}break}break b}if(!b|A!=C(0)){break a}c=v[f+24>>2];e=0;if((b|0)!=1){g=b&-2;while(1){x=e<<2;N=v[v[x+c>>2]+44>>2];z[N+156>>2]=G(z[N+156>>2],C(9.999999974752427e-7));x=v[v[c+(x|4)>>2]+44>>2];z[x+156>>2]=G(z[x+156>>2],C(9.999999974752427e-7));e=e+2|0;H=H+2|0;if((g|0)!=(H|0)){continue}break}}if(!(b&1)){break a}b=v[v[c+(e<<2)>>2]+44>>2];z[b+156>>2]=G(z[b+156>>2],C(9.999999974752427e-7));break a}v[b+32>>2]=0}dG(v[v[f+4>>2]+1e3>>2],v[f+48>>2])}xa=i+32|0;vG(f,0);I=I+1|0;if(I>>>0>2]){continue}break}}}function V$(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=0;s=z[e+4>>2];r=z[c+4>>2];t=z[d+4>>2];J=z[e>>2];k=z[c>>2];L=z[d>>2];M=z[e+8>>2];l=z[c+8>>2];h=z[b+48>>2];N=z[d+8>>2];i=z[b+44>>2];c=xa-32|0;v[c+24>>2]=v[b+8>>2];d=v[b+4>>2];v[c+16>>2]=v[b>>2];v[c+20>>2]=d;Q=z[b+40>>2];v[c+8>>2]=v[b+60>>2];d=v[b+56>>2];v[c>>2]=v[b+52>>2];v[c+4>>2]=d;d=v[a+20>>2];O=z[d+4>>2];G=z[d+8>>2];P=z[d>>2];e=v[a+24>>2];x=z[e+4>>2];y=z[e>>2];A=z[e+12>>2];H=C(C(A*A)+C(-.5));B=z[e+8>>2];a:{if(!(w[a+32|0]&2)){f=1033;n=i;q=h;break a}n=C(L-k);o=C(s-r);p=C(J-k);m=C(t-r);q=C(C(n*o)-C(p*m));j=C(N-l);I=C(j*p);p=C(M-l);n=C(I-C(p*n));m=C(C(m*p)-C(o*j));b=v[a+28>>2];b:{c:{if(b){o=C(C(z[b+8>>2]*q)+C(C(z[b>>2]*m)+C(n*z[b+4>>2])));p=C(C(z[b+32>>2]*q)+C(C(z[b+24>>2]*m)+C(n*z[b+28>>2])));m=C(C(z[b+20>>2]*q)+C(C(z[b+12>>2]*m)+C(n*z[b+16>>2])));if(!(C(C(P*O)*G)C(0)){j=C(C(1)/j);p=C(p*j);m=C(m*j);o=C(o*j)}f=1035;if(!w[a+40|0]){break a}b=v[a+36>>2];if(!(C(C(p*z[b+8>>2])+C(C(o*z[b>>2])+C(m*z[b+4>>2])))>C(0))){break a}p=C(-p);m=C(-m);o=C(-o)}g=v[a+16>>2];b=v[a+12>>2];if((g|0)!=(b|0)){j=z[d+12>>2];D=z[d+20>>2];E=z[d+24>>2];F=z[d+16>>2];R=z[e+24>>2];S=z[e+20>>2];T=z[e+16>>2];U=z[a+44>>2];v[a+12>>2]=b+1;d=v[c+24>>2];e=v[c+20>>2];V=v[c+16>>2];a=v[a+8>>2]+(b<<6)|0;u[a+12>>1]=f;I=G;G=C(C(C(1)-i)-h);l=C(C(C(G*l)+C(i*N))+C(h*M));l=C(l+l);k=C(C(C(k*G)+C(i*L))+C(h*J));k=C(k+k);h=C(C(C(G*r)+C(i*t))+C(h*s));i=C(h+h);t=C(C(D*l)+C(C(j*k)+C(F*i)));h=C(C(E*E)+C(-.5));r=C(I*C(C(D*t)+C(C(l*h)+C(E*C(C(j*i)-C(k*F))))));r=C(r+r);s=C(P*C(C(j*t)+C(C(k*h)+C(E*C(C(F*l)-C(i*D))))));s=C(s+s);i=C(O*C(C(F*t)+C(C(i*h)+C(E*C(C(D*k)-C(l*j))))));i=C(i+i);t=C(C(D*r)+C(C(j*s)+C(F*i)));k=C(C(D*t)+C(C(r*h)-C(E*C(C(j*i)-C(s*F)))));k=C(k+k);l=C(C(j*t)+C(C(s*h)-C(E*C(C(F*r)-C(i*D)))));l=C(l+l);h=C(C(F*t)+C(C(i*h)-C(E*C(C(D*s)-C(r*j)))));h=C(h+h);i=C(C(B*k)+C(C(y*l)+C(x*h)));z[a+16>>2]=T+C(C(y*i)+C(C(l*H)+C(A*C(C(x*k)-C(h*B)))));z[a+20>>2]=S+C(C(x*i)+C(C(h*H)+C(A*C(C(B*l)-C(k*y)))));z[a+24>>2]=R+C(C(B*i)+C(C(k*H)+C(A*C(C(y*h)-C(l*x)))));z[a+28>>2]=o;z[a+32>>2]=m;z[a+36>>2]=p;z[a+40>>2]=Q*U;z[a+44>>2]=n;z[a+48>>2]=q;v[a+8>>2]=d;v[a>>2]=V;v[a+4>>2]=e;d=v[c+4>>2];v[a+52>>2]=v[c>>2];v[a+56>>2]=d;v[a+60>>2]=v[c+8>>2]}return(b|0)!=(g|0)|0}function An(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;l=xa-16|0;xa=l;m=v[37389];a=v[m+2152>>2];if(!a){n=xa-16|0;xa=n;i=m+1864|0;b=v[i+284>>2];if(b){a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?28767:63804;j=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,18373,180)|0}else{j=0}v[n+12>>2]=j;a=v[i+268>>2];a:{if(a>>>0>=(v[i+272>>2]&2147483647)>>>0){a=0;g=i+4|0;b=v[g+268>>2];o=b&2147483647?b<<1:1;b:{if(!o){break b}b=o<<2;if(!(w[g+256|0]|b>>>0>256)){t[g+256|0]=1;a=g;break b}if(!b){break b}a=v[37696];k=Ba[v[v[a>>2]+20>>2]](a)|0?28767:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,k,16608,553)|0}k=v[g+264>>2];q=(k<<2)+a|0;if((k|0)>0){p=v[g+260>>2];b=a;while(1){v[b>>2]=v[p>>2];p=p+4|0;b=b+4|0;if(q>>>0>b>>>0){continue}break}}v[q>>2]=v[n+12>>2];c:{if(v[g+268>>2]<0){break c}b=v[g+260>>2];if((b|0)==(g|0)){t[g+256|0]=0;break c}if(!b){break c}k=v[37696];Ba[v[v[k+12>>2]+12>>2]](k+12|0,b);k=v[g+264>>2]}v[g+268>>2]=o;v[g+260>>2]=a;v[g+264>>2]=k+1;break a}v[v[i+264>>2]+(a<<2)>>2]=j;v[i+268>>2]=a+1}a=(B(v[i+276>>2],124)+j|0)-124|0;if(j>>>0<=a>>>0){b=v[i+288>>2];while(1){v[a>>2]=b;b=a;a=a-124|0;if(j>>>0<=a>>>0){continue}break}v[i+288>>2]=b}xa=n+16|0;a=v[m+2152>>2]}v[m+2152>>2]=v[a>>2];b=m+2144|0;v[b>>2]=v[b>>2]+1;g=xa-48|0;xa=g;v[a+12>>2]=c;v[a+8>>2]=h;v[a+4>>2]=65545;v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a>>2]=118004;b=a+28|0;v[b+4>>2]=0;v[b+8>>2]=0;u[b>>1]=32;v[b+28>>2]=d;v[b+12>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+24>>2]=0;v[b+32>>2]=v[e+4>>2];v[b+36>>2]=v[e>>2];d=v[e+8>>2];v[b+56>>2]=0;v[b+60>>2]=0;v[b+48>>2]=2139095039;v[b+52>>2]=2139095039;v[b+44>>2]=f;v[b+40>>2]=d;u[a+116>>1]=0;v[a+108>>2]=0;v[a+112>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;t[a+120|0]=1;j=v[a+20>>2];v[a+20>>2]=j&-251658241|100663296;d=a+16|0;f=v[e+12>>2];d:{e:{f:{switch((j>>>30|0)-2|0){case 0:if(w[v[d>>2]+4785|0]){break e}break;case 1:break e;default:break f}}u[g+8>>1]=f;vH(b,g+8|0);break d}e=v[a+24>>2];if(!e){e=Qu(v[a+16>>2],6);v[a+24>>2]=e}u[e+16>>1]=f;Yu(v[a+16>>2],d);v[a+20>>2]=v[a+20>>2]|4}g:{h:{i:{if(!h){if(!c){break g}e=0;lh(v[(x[c+4>>1]<<2)+86240>>2]+c|0,0,a);break i}e=0;lh(v[(x[h+4>>1]<<2)+86240>>2]+h|0,0,a);if(!c){Ba[v[v[h>>2]+52>>2]](g+16|0,h);if(!(w[g+16|0]&8)){e=Ba[v[v[h>>2]+28>>2]](h)|0}if(e|!h){break h}break g}lh(v[(x[c+4>>1]<<2)+86240>>2]+c|0,0,a);Ba[v[v[h>>2]+52>>2]](g+32|0,h);if(w[g+32|0]&8){break i}e=Ba[v[v[h>>2]+28>>2]](h)|0}Ba[v[v[c>>2]+52>>2]](g+24|0,c);if(w[g+24|0]&8){break g}b=Ba[v[v[c>>2]+28>>2]](c)|0;if(!b|!e&(h|0)!=0){break g}e=e?e:b}if(!e){break g}v[g+40>>2]=a;b=rh(e+5892|0,g+40|0,g+47|0);if(!w[g+47|0]){v[b>>2]=v[g+40>>2]}Iu(e+16|0,d)}xa=g+48|0;v[l+8>>2]=a;b=Nm(m+560|0,l+8|0,l+15|0);if(!w[l+15|0]){v[b>>2]=v[l+8>>2]}xa=l+16|0;return a|0}function NN(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,u=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0;s=xa-16|0;xa=s;if(v[a+16>>2]){Ba[v[v[a>>2]+104>>2]](a);l=v[a+12>>2];c=v[a+16>>2];n=32;o=xa-16|0;xa=o;t[o+12|0]=0;e=o-128|0;xa=e;v[o+8>>2]=e;h=c-1|0;a:{if((h|0)<=0){break a}while(1){b:{if((f|0)>=(h|0)){break b}while(1){if(h-f>>>0<=4){while(1){i=f;f=f+1|0;d=f;c=i;while(1){c=y[(d<<2)+l>>2]>y[(c<<2)+l>>2]?d:c;g=(d|0)<(h|0);d=d+1|0;if(g){continue}break}if((c|0)!=(i|0)){c=(c<<2)+l|0;d=v[c>>2];g=c;c=(i<<2)+l|0;v[g>>2]=v[c>>2];v[c>>2]=d}if((f|0)!=(h|0)){continue}break b}}g=((f+h|0)/2<<2)+l|0;d=v[g>>2];m=(f<<2)+l|0;c=v[m>>2];if(d>>>0>c>>>0){v[m>>2]=d;v[g>>2]=c;d=c;c=v[m>>2]}p=(h<<2)+l|0;i=v[p>>2];c:{if(i>>>0<=c>>>0){c=i;break c}v[m>>2]=i;v[p>>2]=c;d=v[g>>2]}if(c>>>0>d>>>0){v[g>>2]=c;v[p>>2]=d;d=v[g>>2]}c=g;g=h-1|0;m=(g<<2)+l|0;v[c>>2]=v[m>>2];v[m>>2]=d;c=f;while(1){i=c;c=c+1|0;p=(c<<2)+l|0;q=v[p>>2];if(q>>>0>d>>>0){continue}while(1){g=g-1|0;u=(g<<2)+l|0;x=v[u>>2];if(x>>>0>>0){continue}break}if((c|0)<(g|0)){v[p>>2]=x;v[u>>2]=q;d=v[m>>2];continue}break}v[p>>2]=d;v[m>>2]=q;d:{if((c-f|0)<(h-c|0)){if(n-1>>>0<=j>>>0){d=n<<3;if(d){c=v[37696];g=c+12|0;c=(A=g,B=d,C=Ba[v[v[c>>2]+20>>2]](c)|0?29035:63804,D=17218,E=155,z=v[v[g>>2]+8>>2],Ba[z](A|0,B|0,C|0,D|0,E|0)|0)}else{c=0}n=n<<1;c=I9(c,e,j<<2);d=k;k=1;if(!(!d|!e)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=c}c=(j<<2)+e|0;v[c>>2]=f;v[c+4>>2]=i;f=i+2|0;break d}if(n-1>>>0<=j>>>0){d=n<<3;if(d){c=v[37696];g=c+12|0;c=(E=g,D=d,C=Ba[v[v[c>>2]+20>>2]](c)|0?29035:63804,B=17218,A=155,z=v[v[g>>2]+8>>2],Ba[z](E|0,D|0,C|0,B|0,A|0)|0)}else{c=0}n=n<<1;c=I9(c,e,j<<2);d=k;k=1;if(!(!d|!e)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}e=c}c=(j<<2)+e|0;v[c>>2]=i+2;v[c+4>>2]=h;h=i}j=j+2|0;if((f|0)<(h|0)){continue}break}}if(j){c=j-2|0;f=v[(c<<2)+e>>2];h=v[((j<<2)+e|0)-4>>2];j=c;continue}break}if(!k|!e){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}if(w[o+12|0]){v9(v[o+8>>2])}xa=o+16|0;if(v[a+16>>2]){d=v[a+44>>2];while(1){d=d-1|0;c=v[v[a+40>>2]+(d<<2)>>2];i=v[v[a+12>>2]+(r<<2)>>2];e=i>>>3|0;f=e&268435455;k=f<<3;xK(v[a+4>>2],k+v[a+52>>2]|0);v[v[a+40>>2]+(f<<2)>>2]=c;f=v[a+52>>2];k=f+k|0;j=d<<3;f=j+f|0;h=v[f+4>>2];v[k>>2]=v[f>>2];v[k+4>>2]=h;f=(d<<4)+b|0;k=v[f+12>>2];e=(e<<4)+b|0;v[e+8>>2]=v[f+8>>2];v[e+12>>2]=k;k=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=k;e=j+v[a+52>>2]|0;v[e>>2]=0;v[e+4>>2]=0;e=v[a+108>>2];f=v[e+456>>2];v[c+68>>2]=i;e:{if(!(w[c+43|0]&2)|w[c+41|0]&8){break e}e=v[v[v[e+444>>2]>>2]+(v[c- -64>>2]<<2)>>2];if(!e){break e}while(1){v[f+(v[e+20>>2]<<2)>>2]=v[c+68>>2];e=v[e+16>>2];if(e){continue}break}}v[a+56>>2]=d;v[a+44>>2]=d;r=r+1|0;if(r>>>0>2]){continue}break}}v[a+16>>2]=0;Ba[v[v[a>>2]+108>>2]](a)}xa=s+16|0}function GC(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=v[a+588>>2];if(c){HC(a,c);v[a+588>>2]=0}oY(a+592|0);if(v[a+576>>2]){d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[a+584>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];a:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;b:{if(!f){break b}e=f<<2;if(!e){break b}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?31931:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,b,16608,553)|0}h=v[d+20>>2];e=(h<<2)+c|0;if((h|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[e>>2]=v[d+8>>2];c:{if(v[d+24>>2]<0){break c}e=v[d+16>>2];if(!e){break c}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);h=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=c;v[d+20>>2]=h+1;break a}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[a+584>>2]>>2];v[a+584>>2]=c;if(c){continue}break}b=v[d+16>>2];c=v[d+20>>2]}else{c=0}g=b;b=d+8|0;XC(g,c,b);XC(v[a+560>>2],v[a+564>>2],b);b=v[d+24>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=v[d+16>>2];if(!c){break d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}xa=d+32|0}c=v[a+560>>2];b=v[a+564>>2];if(b){f=(b<<2)+c|0;while(1){e=v[c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((f|0)!=(c|0)){continue}break}c=v[a+560>>2]}b=v[a+568>>2];e:{if((b|0)<0|!(b&2147483647)){break e}if((a+300|0)==(c|0)){t[a+556|0]=0;break e}if(!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}if(v[a+284>>2]){b=0;d=xa-32|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;c=v[a+292>>2];if(c){while(1){v[d+8>>2]=c;b=v[d+20>>2];f:{if(b>>>0>=(v[d+24>>2]&2147483647)>>>0){c=0;b=v[d+24>>2];f=b&2147483647?b<<1:1;g:{if(!f){break g}e=f<<2;if(!e){break g}c=v[37696];b=Ba[v[v[c>>2]+20>>2]](c)|0?30445:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,b,16608,553)|0}h=v[d+20>>2];e=(h<<2)+c|0;if((h|0)>0){g=v[d+16>>2];b=c;while(1){v[b>>2]=v[g>>2];g=g+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[e>>2]=v[d+8>>2];h:{if(v[d+24>>2]<0){break h}e=v[d+16>>2];if(!e){break h}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e);h=v[d+20>>2]}v[d+24>>2]=f;v[d+16>>2]=c;v[d+20>>2]=h+1;break f}v[v[d+16>>2]+(b<<2)>>2]=c;v[d+20>>2]=b+1}c=v[v[a+292>>2]>>2];v[a+292>>2]=c;if(c){continue}break}b=v[d+16>>2];c=v[d+20>>2]}else{c=0}g=b;b=d+8|0;YC(g,c,b);YC(v[a+268>>2],v[a+272>>2],b);b=v[d+24>>2];i:{if((b|0)<0|!(b&2147483647)){break i}c=v[d+16>>2];if(!c){break i}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}xa=d+32|0}c=v[a+268>>2];b=v[a+272>>2];if(b){f=(b<<2)+c|0;while(1){e=v[c>>2];if(e){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((f|0)!=(c|0)){continue}break}c=v[a+268>>2]}b=v[a+276>>2];j:{if((b|0)<0|!(b&2147483647)){break j}if((a+8|0)==(c|0)){t[a+264|0]=0;return a}if(!c){break j}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}return a}function uA(a,b,c,d){var e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=C(0),y=C(0),A=C(0),D=C(0),E=0,F=0,G=C(0),H=C(0),I=0,J=0,K=0,L=0,M=0;a:{e=x[a+22>>1];if(!e){break a}o=v[a+24>>2];E=w[o|0]==7?144:96;I=(e<<4)+o|0;f=v[a+60>>2];k=v[a+92>>2];p=v[a+124>>2];e=v[a+28>>2];g=o;while(1){F=g+192|0;q=w[g+1|0];h=q<<4;n=g;m=((F+h|0)+B(q,E)|0)+(h&0-(t[g+3|0]&1))|0;r=w[g+2|0];s=(m+(((r|0)!=0)<<7)|0)+(r<<4)|0;J=w[g+7|0];K=w[g+6|0];L=w[g+5|0];M=w[g+4|0];if(q){g=0;while(1){l=k;h=f;f=(g<<4)+F|0;G=z[f+12>>2];H=z[f+8>>2];i=z[f+4>>2];j=z[f>>2];f=0;b:{if(!e){break b}f=e;if(w[n+8|0]<=g>>>0){break b}z[e>>2]=j;f=e+4|0}e=f;k=0;f=0;c:{if(!h){break c}f=h;if(w[n+9|0]<=g>>>0){break c}z[h>>2]=i;f=h+4|0}d:{if(!l){break d}if(w[n+10|0]<=g>>>0){k=l;break d}z[l>>2]=H;k=l+4|0}e:{if(!p){p=0;break e}if(w[n+11|0]<=g>>>0){break e}z[p>>2]=G;p=p+4|0}u=C(u+G);y=C(y+H);A=C(A+i);D=C(D+j);g=g+1|0;if((q|0)!=(g|0)){continue}break}}g=B(r,E)+s|0;f:{if(!r){break f}s=v[m+12>>2];l=v[m+8>>2];h=v[m+4>>2];if(!(!w[n+12|0]|!v[m>>2])){t[v[m+16>>2]]=1}if(!(!w[n+13|0]|!h)){t[v[m+20>>2]]=1}if(!(!w[n+14|0]|!l)){t[v[m+24>>2]]=1}if(!w[n+15|0]|!s){break f}t[v[m+28>>2]]=1}if(g>>>0>>0){continue}break}k=L&1;g:{if(!(M&1)|x[a+8>>1]!=65535|(x[a+10>>1]!=65535|D==C(0))){break g}f=v[c>>2];i=z[f+28>>2];e=v[d>>2];j=z[e+28>>2];if(!(i>2];h=v[f+72>>2];f=v[o+176>>2];e=v[b+8>>2];v[b+8>>2]=e+1;g=v[b+4>>2]+(e<<5)|0;z[g+8>>2]=i>2]=D;v[g>>2]=f;f=l<<7;e=h<<7;v[g+16>>2]=e>>>0>>0?f:e;v[g+12>>2]=e>>>0>f>>>0?f:e}g=K&1;h:{if(!k|x[a+40>>1]!=65535|(x[a+42>>1]!=65535|A==C(0))){break h}f=v[c+4>>2];i=z[f+28>>2];e=v[d+4>>2];j=z[e+28>>2];if(!(i>2];h=v[e+72>>2];f=v[f+72>>2];e=v[b+8>>2];v[b+8>>2]=e+1;k=v[b+4>>2]+(e<<5)|0;z[k+8>>2]=i>2]=A;v[k>>2]=l;h=h<<7;e=f<<7;v[k+16>>2]=e>>>0>>0?h:e;v[k+12>>2]=e>>>0>h>>>0?h:e}k=J&1;i:{if(!g|x[a+72>>1]!=65535|(x[a+74>>1]!=65535|y==C(0))){break i}f=v[c+8>>2];i=z[f+28>>2];e=v[d+8>>2];j=z[e+28>>2];if(!(i>2];h=v[e+72>>2];f=v[f+72>>2];e=v[b+8>>2];v[b+8>>2]=e+1;g=v[b+4>>2]+(e<<5)|0;z[g+8>>2]=i>2]=y;v[g>>2]=l;h=h<<7;e=f<<7;v[g+16>>2]=e>>>0>>0?h:e;v[g+12>>2]=e>>>0>h>>>0?h:e}if(!k|x[a+104>>1]!=65535|(x[a+106>>1]!=65535|u==C(0))){break a}c=v[c+12>>2];i=z[c+28>>2];a=v[d+12>>2];j=z[a+28>>2];if(!(i>2];d=v[a+72>>2];c=v[c+72>>2];a=v[b+8>>2];v[b+8>>2]=a+1;f=v[b+4>>2]+(a<<5)|0;z[f+8>>2]=i>2]=u;v[f>>2]=e;b=d<<7;a=c<<7;v[f+16>>2]=a>>>0>>0?b:a;v[f+12>>2]=a>>>0>b>>>0?b:a}}function FH(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=xa-16|0;xa=j;f=v[a+372>>2];a:{if(!f){break a}g=v[a+340>>2];while(1){e=v[g+(c<<2)>>2];t[e+44|0]=w[e+44|0]&251;if(v[e+20>>2]){KH(e)}JH(e);c=c+1|0;if((f|0)!=(c|0)){continue}break}c=v[a+356>>2];if(!c|!v[a+372>>2]){break a}J9(v[a+348>>2],255,c<<2);c=v[a+344>>2];f=v[a+352>>2];g=f-1|0;if(g){e=0;if(f-2>>>0>=3){h=g&-4;f=0;while(1){k=d|1;v[c+(d<<2)>>2]=k;i=c+(k<<2)|0;k=d|2;v[i>>2]=k;i=c+(k<<2)|0;k=d|3;v[i>>2]=k;d=d+4|0;v[c+(k<<2)>>2]=d;f=f+4|0;if((h|0)!=(f|0)){continue}break}}f=g&3;if(f){while(1){h=c+(d<<2)|0;d=d+1|0;v[h>>2]=d;e=e+1|0;if((f|0)!=(e|0)){continue}break}}e=v[a+352>>2]-1|0}else{e=0}v[c+(e<<2)>>2]=-1;v[a+372>>2]=0;v[a+364>>2]=0}f=v[a+332>>2];b:{if(!f){break b}v[j>>2]=b;e=v[b+4>>2];c=v[b+8>>2];g=v[(e+(c<<2)|0)-4>>2];c:{if((g-v[b+16>>2]|0)>=272){g=g-272|0;v[j+12>>2]=g;if(c>>>0>=(v[b+12>>2]&2147483647)>>>0){Vs(b+4|0,j+12|0);b=v[j+12>>2];break c}v[e+(c<<2)>>2]=g;v[b+8>>2]=c+1;b=v[j+12>>2];break c}b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,272,24422,17461,99)|0}v[j+4>>2]=b;if(b){v[b>>2]=0;v[b+4>>2]=0}v[j+8>>2]=b;b=v[a+300>>2];d=0;while(1){GH(a,v[b+(d<<2)>>2],j);d=d+1|0;if((f|0)!=(d|0)){continue}break}d:{c=v[j+4>>2];if(!c){break d}if(!v[c+4>>2]){c=v[c>>2];if(!c){break d}}e=c+8|0;while(1){d=1;while(1){GH(a,v[e>>2],j);if(y[c+4>>2]>d>>>0){e=((d<<2)+c|0)+8|0;d=d+1|0;continue}break}c=v[c>>2];if(!c){break d}e=c+8|0;continue}}c=f>>>0>1?f:1;d=0;while(1){e=v[b+(d<<2)>>2];f=v[e+60>>2];e=AH(v[(f?f:v[e- -64>>2])+164>>2]);if(!v[e+20>>2]){JH(e)}d=d+1|0;if((c|0)!=(d|0)){continue}break}b=v[a+316>>2];if(!(!b|!v[a+332>>2])){J9(v[a+308>>2],255,b<<2);d=0;b=v[a+304>>2];f=v[a+312>>2];c=f-1|0;if(c){e=0;if(f-2>>>0>=3){i=c&-4;f=0;while(1){h=d|1;v[b+(d<<2)>>2]=h;g=b+(h<<2)|0;h=d|2;v[g>>2]=h;g=b+(h<<2)|0;h=d|3;v[g>>2]=h;d=d+4|0;v[b+(h<<2)>>2]=d;f=f+4|0;if((i|0)!=(f|0)){continue}break}}c=c&3;if(c){while(1){f=b+(d<<2)|0;d=d+1|0;v[f>>2]=d;e=e+1|0;if((c|0)!=(e|0)){continue}break}}c=v[a+312>>2]-1|0}else{c=0}v[b+(c<<2)>>2]=-1;v[a+332>>2]=0;v[a+324>>2]=0}b=v[j+4>>2];if(!b){break b}while(1){g=v[b>>2];i=v[j>>2];a=v[i+16>>2];e:{if(!(a>>>0<=b>>>0&a+v[i+20>>2]>>>0>b>>>0)){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);break e}k=v[i+4>>2];e=0;h=v[i+8>>2];a=h;while(1){f=e;e=f+1|0;c=a;a=c-1|0;d=(a<<2)+k|0;if(y[d>>2]>>0){continue}break}f:{if(c>>>0>=h>>>0){break f}e=0;a=f&3;if(a){while(1){v[d>>2]=v[v[i+4>>2]+(c<<2)>>2];c=c+1|0;d=d+4|0;e=e+1|0;if((a|0)!=(e|0)){continue}break}}if(f-1>>>0<3){break f}while(1){a=c<<2;v[d>>2]=v[a+v[i+4>>2]>>2];v[d+4>>2]=v[(a+v[i+4>>2]|0)+4>>2];v[d+8>>2]=v[(a+v[i+4>>2]|0)+8>>2];v[d+12>>2]=v[(a+v[i+4>>2]|0)+12>>2];d=d+16|0;c=c+4|0;if((h|0)!=(c|0)){continue}break}}v[i+8>>2]=h-1}b=g;if(b){continue}break}}xa=j+16|0}function v$(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),m=C(0),n=C(0),o=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=0,O=0,P=C(0),Q=C(0),R=C(0);g=z[a+8>>2];M=v[d+8>>2];G=z[d+8>>2];N=v[d>>2];O=v[d+4>>2];B=z[d>>2];f=z[a>>2];H=z[d+4>>2];o=z[a+4>>2];a:{if(!(!(B>=(f>C(0)?f:C(-f)))|!(H>=(o>C(0)?o:C(-o))))){a=1;if(G>=(g>C(0)?g:C(-g))){break a}}a=0;w=z[b>>2];r=f>2];if(B<(r>2];A=o>2];if((AH){break a}A=z[b+8>>2];e=g>2];if(G<(ew?f:w;if(C(C(0)-B)>(e>x?e:x)){break a}e=o>r?o:r;if(C(C(0)-H)>(e>D?e:D)){break a}e=g>A?g:A;if(C(C(0)-G)>(e>E?e:E)){break a}e=C(w-f);i=C(D-r);s=C(x-w);k=C(r-o);m=C(C(e*i)-C(s*k));u=C(E-A);h=C(A-g);y=C(C(k*u)-C(i*h));t=C(C(h*s)-C(u*e));n=C(C(m*g)+C(C(y*f)+C(o*t)));b=(p(m),j(2))&-2147483648;c=(p(y),j(2))&-2147483648;d=(p(t),j(2))&-2147483648;if(n>C(C(m*(l(2,M|b),q()))+C(C(y*(l(2,c|N),q()))+C(t*(l(2,O|d),q()))))|nC(0)?e:C(-e);K=h>C(0)?h:C(-h);L=C(C(G*n)+C(B*K));if(F>L){break a}P=k>C(0)?k:C(-k);Q=C(C(H*n)+C(B*P));n=C(C(f*k)-C(o*e));I=C(C(w*k)-C(e*r));F=nF?F:e)){break a}F=C(C(o*h)-C(g*k));J=C(C(r*h)-C(k*A));R=FR?R:k)>h){break a}m=m>y?m:y;if(C(C(0)-L)>(m>t?m:t)){break a}m=n>I?n:I;if(C(C(0)-Q)>(eJ?F:J;if(C(C(0)-h)>(e>k?e:k)){break a}t=s>C(0)?s:C(-s);I=u>C(0)?u:C(-u);F=C(C(G*t)+C(B*I));e=C(C(g*s)-C(f*u));k=C(C(A*s)-C(w*u));m=em?m:h)){break a}J=i>C(0)?i:C(-i);K=C(C(H*t)+C(B*J));m=C(C(f*i)-C(o*s));y=C(C(w*i)-C(r*s));n=mn?n:s)){break a}t=C(C(o*u)-C(g*i));n=C(C(r*u)-C(A*i));L=n>t?t:n;i=C(C(D*u)-C(i*E));u=C(C(G*J)+C(H*I));if((i>L?L:i)>u){break a}e=e>k?e:k;if(C(C(0)-F)>(e>h?e:h)){break a}e=m>y?m:y;if(C(C(0)-K)>(e>s?e:s)){break a}e=n(e>i?e:i)){break a}e=C(f-x);i=C(g-E);s=C(C(g*e)-C(f*i));k=C(C(A*e)-C(w*i));h=k>s?s:k;u=C(C(e*E)-C(x*i));m=e>C(0)?e:C(-e);y=i>C(0)?i:C(-i);t=C(C(G*m)+C(B*y));if((ht){break a}h=f;f=C(o-D);h=C(C(h*f)-C(o*e));w=C(C(w*f)-C(r*e));n=hC(0)?f:C(-f);B=C(C(H*m)+C(B*e));if((nB){break a}g=C(C(o*i)-C(g*f));o=C(C(r*i)-C(A*f));r=gr?r:f;r=C(C(G*e)+C(H*y));if(i>r){break a}g=g>o?g:o;a=!(C(C(0)-r)>(fw?h:w;a=a&(C(C(0)-B)>(g>x?g:x)^-1);g=k(g>u?g:u)^-1)}return a}function ku(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,u=0,y=0,z=0,A=0,C=0;z=b+5584|0;if(f){e=0;i=xa-48|0;xa=i;b=v[((x[c+4>>1]<<2)+86240|0)+72>>2];p=x[a+4>>1];h=p>>>0>256;t[i+44|0]=h;d=p<<2;j=b+c|0;a:{b:{if(p>>>0>=257){A=i,C=u9(d,8812,357),v[A+40>>2]=C;t[i+36|0]=h;A=i,C=u9(d,8812,358),v[A+32>>2]=C;break b}b=d+15&524272;d=i-b|0;xa=d;v[i+40>>2]=d;t[i+36|0]=h;k=d-b|0;xa=k;v[i+32>>2]=k;if(p){break b}e=1;break a}b=x[a+4>>1]==1;k=0;while(1){d=v[(k<<2)+(b?a:v[a>>2])>>2];if(w[(w[d+36|0]&64?v[d+40>>2]+52|0:d+112|0)|0]&2){v[v[i+40>>2]+(e<<2)>>2]=d+32;e=e+1|0}k=k+1|0;if((p|0)!=(k|0)){continue}break}d=v[i+40>>2];k=v[i+32>>2];e=0}b=v[((x[c+4>>1]<<2)+86240|0)+72>>2]+c|0;b=v[v[v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b>>2]+48>>2];v[a+16>>2]=b;Ba[v[v[c>>2]+76>>2]](i,c);c=b;h=j;b=xa-32|0;xa=b;j=b;m=Ba[v[v[f>>2]+40>>2]](f)|0;s=m<<2;t[b+28|0]=s>>>0>1024;c:{if(s>>>0>=1025){n=u9(s,8548,561);break c}n=b-(s+15&-16)|0;b=n;xa=b}v[j+24>>2]=n;u=m<<3;t[j+20|0]=u>>>0>1024;d:{if(u>>>0>=1025){o=u9(u,8548,562);break d}o=b-(u+15&-16)|0;xa=o}v[j+16>>2]=o;e:{if(!m){break e}b=0;if(m-1>>>0>=3){y=m&-4;while(1){l=v[(b<<2)+d>>2];g=(b<<3)+o|0;v[g+4>>2]=h;v[g>>2]=l;g=b|1;l=v[(g<<2)+d>>2];g=(g<<3)+o|0;v[g+4>>2]=h;v[g>>2]=l;g=b|2;l=v[(g<<2)+d>>2];g=(g<<3)+o|0;v[g+4>>2]=h;v[g>>2]=l;g=b|3;l=v[(g<<2)+d>>2];g=(g<<3)+o|0;v[g+4>>2]=h;v[g>>2]=l;b=b+4|0;q=q+4|0;if((y|0)!=(q|0)){continue}break}}y=m&3;if(!y){break e}while(1){l=v[(b<<2)+d>>2];g=(b<<3)+o|0;v[g+4>>2]=h;v[g>>2]=l;b=b+1|0;r=r+1|0;if((y|0)!=(r|0)){continue}break}}d=v[z+72>>2];b=w[(h+v[((v[h+4>>2]>>>22&60)+89188|0)+12>>2]|0)+9|0]==1?2:1;Ba[v[v[d>>2]>>2]](d,n,f,c,i,b,o)|0;h=(b^-1)&1;b=z+B(h,36)|0;v[b+32>>2]=v[b+32>>2]+1;f:{if(!m){break f}r=0;b=0;if(m-1>>>0>=3){d=m&-4;q=0;while(1){f=b<<2;v[f+k>>2]=h|v[f+n>>2]<<1;c=f|4;v[c+k>>2]=h|v[c+n>>2]<<1;c=f|8;v[c+k>>2]=h|v[c+n>>2]<<1;c=f|12;v[c+k>>2]=h|v[c+n>>2]<<1;b=b+4|0;q=q+4|0;if((d|0)!=(q|0)){continue}break}}d=m&3;if(!d){break f}while(1){c=b<<2;v[c+k>>2]=h|v[c+n>>2]<<1;b=b+1|0;r=r+1|0;if((d|0)!=(r|0)){continue}break}}if(u>>>0>=1025){v9(o)}if(s>>>0>=1025){v9(n)}xa=j+32|0;if(!e){h=a+8|0;e=0;f=x[a+4>>1]==1;c=x[a+12>>1]==1;d=0;while(1){b=d<<2;j=v[b+(f?a:v[a>>2])>>2];if(w[(w[j+36|0]&64?v[j+40>>2]+52|0:j+112|0)|0]&2){v[b+(c?h:v[h>>2])>>2]=v[v[i+32>>2]+(e<<2)>>2];e=e+1|0}d=d+1|0;if((p|0)!=(d|0)){continue}break}}if(p>>>0>256){v9(v[i+32>>2]);v9(v[i+40>>2])}xa=i+48|0;return}l=x[a+4>>1];if(l){g=(l|0)==1?a:v[a>>2];h=a+8|0;i=(x[c+4>>1]&-9)==5;f=0;while(1){j=f<<2;b=v[j+g>>2];if(w[(w[b+36|0]&64?v[b+40>>2]+52|0:b+112|0)|0]&2){b=HE(z,b+32|0,v[((x[c+4>>1]<<2)+86240|0)+72>>2]+c|0,i,v[a+16>>2],e?B(f,24)+e|0:0,d);v[j+(x[a+12>>1]==1?h:v[a+8>>2])>>2]=b}f=f+1|0;if((l|0)!=(f|0)){continue}break}}}function X4(a,b,c){var d=0,e=C(0),f=0,g=C(0),h=C(0),i=0,j=0,k=0,l=0,m=C(0),n=0,o=0,p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),y=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0,K=0,L=C(0),M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=C(0),U=C(0),V=C(0),W=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=C(0),ra=C(0),sa=C(0),ta=C(0);Z=v[a+20>>2];if(Z){P=v[a+4>>2];oa=v[a+28>>2];pa=v[a+16>>2];E=z[c+8>>2];F=z[c+4>>2];G=z[c>>2];while(1){a=B(Q,20)+pa|0;R=w[a+18|0];_=R-2|0;if(_){qa=z[a+8>>2];ra=z[a+4>>2];sa=z[a>>2];S=x[a+16>>1]+oa|0;a=B(w[S|0],12)+P|0;T=C(z[a+8>>2]-E);d=+T;$=d*d;U=C(z[a+4>>2]-F);j=+U;aa=j*j;V=C(z[a>>2]-G);k=+V;ba=k*k;a=0;while(1){ca=a+1|0;W=B(w[((ca>>>0)%(R>>>0)|0)+S|0],12)+P|0;p=C(z[W>>2]-G);t=C(p-V);a=B(w[((a+2>>>0)%(R>>>0)|0)+S|0],12)+P|0;g=C(z[a+4>>2]-F);q=C(g-U);h=C(z[a>>2]-G);u=C(h-V);r=C(z[W+4>>2]-F);e=C(r-U);L=C(C(t*q)-C(u*e));H=e;e=C(z[a+8>>2]-E);m=C(e-T);ta=q;q=C(z[W+8>>2]-E);D=C(q-T);H=C(C(H*m)-C(ta*D));D=C(C(D*u)-C(m*t));a:{if(!(C(C(L*qa)+C(C(H*sa)+C(ra*D)))>3]=d;j=ja*-.008333333333333333;A[b+48>>3]=j;k=ia*-.008333333333333333;A[b+80>>3]=k;A[b+32>>3]=j;n=ha*-.008333333333333333;A[b+72>>3]=n;A[b- -64>>3]=k;A[b+40>>3]=n;i=ga*.016666666666666666;l=ea*.016666666666666666;o=i+l;A[b+88>>3]=o;f=da*.016666666666666666;i=i+f;A[b+56>>3]=i;l=l+f;A[b+24>>3]=l;g=C(ka*.041666666666666664/d);z[b+8>>2]=g;h=C(la*.041666666666666664/d);z[b+4>>2]=h;e=C(ma*.041666666666666664/d);z[b>>2]=e;q=C(e*h);f=d*+q+j;A[b+120>>3]=f;t=C(h*g);s=d*+t+k;A[b+152>>3]=s;A[b+104>>3]=f;p=C(e*e);r=C(h*h);u=C(p+r);A[b+160>>3]=o-d*+u;m=C(g*g);E=C(m+p);A[b+128>>3]=i-d*+E;m=C(r+m);A[b+96>>3]=l-d*+m;F=C(e*g);f=d*+F+n;A[b+144>>3]=f;A[b+136>>3]=s;A[b+112>>3]=f;p=z[c+8>>2];G=z[c>>2];r=z[c+4>>2];if(!(!(G!=C(0)|r!=C(0))&p==C(0))){g=C(p+g);z[b+8>>2]=g;h=C(r+h);z[b+4>>2]=h;e=C(G+e);z[b>>2]=e;j=d*+C(q-C(h*e))+j;A[b+48>>3]=j;k=d*+C(t-C(g*h))+k;A[b+80>>3]=k;A[b+32>>3]=j;j=d*+C(F-C(e*g))+n;A[b+72>>3]=j;A[b+64>>3]=k;A[b+40>>3]=j;d=-d;e=C(e*e);h=C(h*h);A[b+88>>3]=d*+C(u-C(e+h))+o;g=C(g*g);A[b+56>>3]=d*+C(E-C(g+e))+i;A[b+24>>3]=d*+C(m-C(h+g))+l}return 1}function wE(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0),L=C(0),M=C(0),N=C(0),O=C(0);b=xa-208|0;xa=b;h=1;a:{if(!(v[c+40>>2]&x[a+12>>1])){break a}J=v[c>>2];if(!v[J+588>>2]){break a}h=v[a+4>>2];F=z[h+20>>2];G=z[h+16>>2];q=z[h+32>>2];r=z[h+24>>2];H=z[h+28>>2];s=z[h+44>>2];t=z[h+36>>2];y=z[h+40>>2];d=z[c+20>>2];e=z[c+36>>2];f=z[h+56>>2];i=z[c+24>>2];g=z[c+32>>2];j=z[h+52>>2];l=z[c+16>>2];k=z[c+28>>2];A=z[h+48>>2];I=z[h+12>>2];m=z[c+12>>2];v[b+44>>2]=0;e=C(f-e);e=C(e+e);f=C(A-k);f=C(f+f);g=C(j-g);g=C(g+g);j=C(C(d*e)+C(C(m*f)+C(l*g)));k=C(C(i*i)+C(-.5));z[b+40>>2]=C(d*j)+C(C(e*k)-C(i*C(C(m*g)-C(f*l))));z[b+36>>2]=C(l*j)+C(C(g*k)-C(i*C(C(d*f)-C(e*m))));z[b+32>>2]=C(m*j)+C(C(f*k)-C(i*C(C(l*e)-C(g*d))));e=z[h+8>>2];f=z[h>>2];g=z[h+4>>2];v[b+204>>2]=0;v[b+188>>2]=0;v[b+172>>2]=0;v[b+156>>2]=0;v[b+140>>2]=0;j=C(m+m);B=C(d*j);k=C(l+l);K=C(i*k);u=C(B+K);p=C(k*d);L=C(i*j);w=C(p-L);o=C(C(1)-C(m*j));M=C(l*k);n=C(o-M);m=C(C(C(t*u)+C(y*w))+C(s*n));k=C((m>C(0)?m:C(-m))+C(9.999999974752427e-7));z[b+136>>2]=k;A=C(C(C(u*r)+C(w*H))+C(n*q));E=C((A>C(0)?A:C(-A))+C(9.999999974752427e-7));z[b+132>>2]=E;u=C(C(C(I*u)+C(G*w))+C(n*F));w=C((u>C(0)?u:C(-u))+C(9.999999974752427e-7));z[b+128>>2]=w;v[b+124>>2]=0;N=C(j*l);D=i;i=C(d+d);O=C(D*i);n=C(N-O);D=C(d*i);o=C(o-D);p=C(L+p);d=C(C(C(t*n)+C(y*o))+C(s*p));i=C((d>C(0)?d:C(-d))+C(9.999999974752427e-7));z[b+120>>2]=i;l=C(C(C(n*r)+C(o*H))+C(p*q));j=C((l>C(0)?l:C(-l))+C(9.999999974752427e-7));z[b+116>>2]=j;n=C(C(p*F)+C(C(I*n)+C(G*o)));o=C((n>C(0)?n:C(-n))+C(9.999999974752427e-7));z[b+112>>2]=o;v[b+108>>2]=0;p=C(C(C(1)-M)-D);D=y;y=C(N+O);B=C(B-K);s=C(C(C(t*p)+C(D*y))+C(s*B));t=C((s>C(0)?s:C(-s))+C(9.999999974752427e-7));z[b+104>>2]=t;q=C(C(C(p*r)+C(y*H))+C(B*q));r=C((q>C(0)?q:C(-q))+C(9.999999974752427e-7));z[b+100>>2]=r;v[b+92>>2]=0;z[b+88>>2]=m;z[b+84>>2]=A;z[b+80>>2]=u;v[b+76>>2]=0;z[b+72>>2]=d;z[b+68>>2]=l;z[b- -64>>2]=n;v[b+60>>2]=0;z[b+56>>2]=s;z[b+52>>2]=q;z[b+200>>2]=C(E*f)+C(w*g);z[b+196>>2]=C(k*f)+C(w*e);z[b+184>>2]=C(j*f)+C(o*g);z[b+180>>2]=C(i*f)+C(o*e);z[b+152>>2]=C(k*e)+C(C(w*f)+C(E*g));z[b+148>>2]=C(i*e)+C(C(o*f)+C(j*g));d=C(C(B*F)+C(C(I*p)+C(G*y)));z[b+48>>2]=d;d=C((d>C(0)?d:C(-d))+C(9.999999974752427e-7));z[b+96>>2]=d;z[b+168>>2]=C(r*f)+C(d*g);z[b+164>>2]=C(t*f)+C(d*e);v[b+28>>2]=0;z[b+24>>2]=e;z[b+20>>2]=g;z[b+16>>2]=f;z[b+192>>2]=C(k*g)+C(E*e);z[b+176>>2]=C(i*g)+C(j*e);z[b+160>>2]=C(t*g)+C(r*e);z[b+144>>2]=C(t*e)+C(C(d*f)+C(r*g));c=v[c+4>>2];h=dD(v[c+12>>2],v[c+8>>2],J,b+16|0,v[a+8>>2])}xa=b+208|0;return h|0}function eW(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0,p=0,q=0,r=0,s=0,u=0,x=0,y=0,A=0,D=0,E=0,F=0,G=0;g=xa-752|0;xa=g;h=v[c+32>>2];j=z[c+8>>2];l=z[c+12>>2];m=z[c+4>>2];v[g+476>>2]=0;z[g+472>>2]=l;z[g+468>>2]=j;z[g+464>>2]=m;o=v[c+16>>2];p=v[c+20>>2];n=v[c+28>>2];v[g+456>>2]=v[c+24>>2];v[g+460>>2]=n;v[g+448>>2]=o;v[g+452>>2]=p;t[g+320|0]=0;v[g+312>>2]=0;v[g+316>>2]=0;v[g+304>>2]=0;v[g+308>>2]=0;v[g+296>>2]=0;v[g+300>>2]=0;v[g+288>>2]=0;v[g+292>>2]=0;v[g+432>>2]=h+16;v[g+440>>2]=v[h+56>>2]+B(w[h+55|0],20);t[g+444|0]=w[h+54|0];i=C(m*z[h+68>>2]);k=C(j*z[h+72>>2]);i=i<=k?i:k;k=C(l*z[h+76>>2]);i=i<=k?i:k;z[g+312>>2]=i*C(.02500000037252903);z[g+304>>2]=i*C(.10000000149011612);z[g+308>>2]=i*C(.05000000074505806);o=g+336|0;p=g+384|0;GV(g+464|0,g+448|0,o,p,g+288|0,m==C(1)&j==C(1)&l==C(1));v[g+436>>2]=v[h+60>>2];h=v[e+32>>2];j=z[e+8>>2];l=z[e+12>>2];m=z[e+4>>2];v[g+284>>2]=0;z[g+280>>2]=l;z[g+276>>2]=j;z[g+272>>2]=m;n=v[e+16>>2];q=v[e+20>>2];r=v[e+28>>2];v[g+264>>2]=v[e+24>>2];v[g+268>>2]=r;v[g+256>>2]=n;v[g+260>>2]=q;t[g+128|0]=0;v[g+120>>2]=0;v[g+124>>2]=0;v[g+112>>2]=0;v[g+116>>2]=0;v[g+104>>2]=0;v[g+108>>2]=0;v[g+96>>2]=0;v[g+100>>2]=0;v[g+240>>2]=h+16;v[g+248>>2]=v[h+56>>2]+B(w[h+55|0],20);t[g+252|0]=w[h+54|0];i=C(m*z[h+68>>2]);k=C(j*z[h+72>>2]);i=i<=k?i:k;k=C(l*z[h+76>>2]);i=i<=k?i:k;z[g+120>>2]=i*C(.02500000037252903);z[g+112>>2]=i*C(.10000000149011612);z[g+116>>2]=i*C(.05000000074505806);n=g+144|0;q=g+192|0;GV(g+272|0,g+256|0,n,q,g+96|0,m==C(1)&j==C(1)&l==C(1));v[g+244>>2]=v[h+60>>2];j=z[f+24>>2];l=z[d+24>>2];h=v[f>>2];r=v[f+4>>2];u=v[f+8>>2];x=v[f+12>>2];y=v[f+16>>2];f=v[f+20>>2];A=v[d>>2];D=v[d+4>>2];E=v[d+8>>2];F=v[d+12>>2];G=v[d+20>>2];d=v[d+16>>2];v[g+92>>2]=0;z[g+88>>2]=l;v[g+80>>2]=d;v[g+84>>2]=G;v[g+72>>2]=E;v[g+76>>2]=F;v[g+64>>2]=A;v[g+68>>2]=D;v[g+60>>2]=0;z[g+56>>2]=j;v[g+48>>2]=y;v[g+52>>2]=f;v[g+40>>2]=u;v[g+44>>2]=x;v[g+32>>2]=h;v[g+36>>2]=r;v[g+24>>2]=0;v[g+28>>2]=0;v[g+16>>2]=0;v[g+20>>2]=0;v[g>>2]=0;d=0;a:{if(z[c+4>>2]!=C(1)){break a}d=0;if(z[c+8>>2]!=C(1)){break a}d=z[c+12>>2]==C(1)}s=z[e+4>>2]!=C(1)|z[e+8>>2]!=C(1)?s:z[e+12>>2]==C(1);l2(g+288|0,d,g+680|0);l2(g+96|0,s,g+608|0);v[g+584>>2]=p;v[g+580>>2]=o;v[g+576>>2]=g- -64;b:{if(d){t[g+588|0]=1;v[g+544>>2]=141020;break b}t[g+588|0]=0;v[g+544>>2]=141068}v[g+520>>2]=q;v[g+516>>2]=n;v[g+512>>2]=g+32;v[g+592>>2]=g+288;c:{if(s){t[g+524|0]=1;v[g+480>>2]=141020;break c}t[g+524|0]=0;v[g+480>>2]=141068}v[g+528>>2]=g+96;c=b2(g+680|0,g+608|0,g+544|0,g+480|0,g,g+16|0);if(c){j=z[g>>2];z[b>>2]=j>C(0)?j:C(0);b=v[g+16>>2];d=v[g+20>>2];z[a+8>>2]=z[g+24>>2];v[a>>2]=b;v[a+4>>2]=d}xa=g+752|0;return c|0}function zW(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0);v[f>>2]=3;n=z[c>>2];h=z[b>>2];t=C(n-h);o=z[d+4>>2];j=z[b+4>>2];u=C(o-j);p=z[d>>2];w=C(p-h);q=z[c+4>>2];x=C(q-j);k=C(C(t*u)-C(w*x));r=z[d+8>>2];i=z[b+8>>2];y=C(r-i);s=z[c+8>>2];A=C(s-i);m=C(C(x*y)-C(u*A));l=C(C(A*w)-C(y*t));B=C(C(k*k)+C(C(m*m)+C(l*l)));if(B==C(0)){z[a>>2]=34028234663852886e22;return}E=C(C(k*C(C(h*q)-C(n*j)))+C(C(m*C(C(j*s)-C(q*i)))+C(C(C(i*n)-C(s*h))*l)));a:{F=C(C(k*C(C(n*o)-C(p*q)))+C(C(m*C(C(q*r)-C(o*s)))+C(C(C(s*p)-C(r*n))*l)));G=C(C(k*C(C(p*j)-C(h*o)))+C(C(m*C(C(o*i)-C(j*r)))+C(C(C(r*h)-C(i*p))*l)));if(!(!(E>=C(0))|(!(F>=C(0))|!(G>=C(0))))){v[g+12>>2]=0;i=C(C(C(k*i)+C(C(m*h)+C(j*l)))/B);h=C(k*i);z[g+8>>2]=h;j=C(l*i);z[g+4>>2]=j;i=C(m*i);z[g>>2]=i;break a}v[f>>2]=2;m=C(-s);l=C(-n);n=C(-q);k=C(C(A*m)+C(C(t*l)+C(x*n)));i=C(-i);q=C(-h);s=C(-j);h=C(C(A*i)+C(C(t*q)+C(x*s)));if(!(!(k<=C(0))|(!(E<=C(0))|!(h>=C(0))))){m=z[b>>2];j=z[b+4>>2];i=z[b+8>>2];v[g+12>>2]=0;l=i;i=h;h=C(h-k);i=C(i*(C(D(h))>C(1.1920928955078125e-7)?C(C(1)/h):C(0)));h=C(l+C(A*i));z[g+8>>2]=h;j=C(j+C(x*i));z[g+4>>2]=j;i=C(m+C(t*i));z[g>>2]=i;break a}r=C(-r);p=C(-p);o=C(-o);j=C(C(y*r)+C(C(w*p)+C(u*o)));b:{m=C(C(y*m)+C(C(w*l)+C(u*n)));if(!(F<=C(0))|!(m>=k)){break b}n=C(C(A*r)+C(C(t*p)+C(x*o)));if(!(n>=j)){break b}h=z[c>>2];t=z[d>>2];i=z[c+4>>2];o=z[d+4>>2];l=z[c+8>>2];u=z[d+8>>2];b=v[e+8>>2];v[e>>2]=v[e+4>>2];v[e+4>>2]=b;v[g+12>>2]=0;k=C(m-k);j=C(k+C(n-j));j=C(k*(C(D(j))>C(1.1920928955078125e-7)?C(C(1)/j):C(0)));k=C(l+C(j*C(u-l)));z[g+8>>2]=k;i=C(i+C(j*C(o-i)));z[g+4>>2]=i;h=C(h+C(j*C(t-h)));z[g>>2]=h;z[a>>2]=C(k*k)+C(C(h*h)+C(i*i));return}i=C(C(y*i)+C(C(w*q)+C(u*s)));if(!(!(j<=C(0))|(!(G<=C(0))|!(i>=C(0))))){v[e+4>>2]=v[e+8>>2];k=z[b>>2];m=z[b+4>>2];h=z[b+8>>2];v[g+12>>2]=0;l=h;h=C(i-j);i=C(i*(C(D(h))>C(1.1920928955078125e-7)?C(C(1)/h):C(0)));h=C(l+C(y*i));z[g+8>>2]=h;j=C(m+C(u*i));z[g+4>>2]=j;i=C(k+C(w*i));z[g>>2]=i;break a}v[f>>2]=1;if(!(!(h<=C(0))|!(i<=C(0)))){c=v[b+4>>2];v[g>>2]=v[b>>2];v[g+4>>2]=c;c=v[b+12>>2];v[g+8>>2]=v[b+8>>2];v[g+12>>2]=c;h=z[b+8>>2];i=C(h*h);h=z[b>>2];l=C(h*h);h=z[b+4>>2];z[a>>2]=i+C(l+C(h*h));return}if(!(!(k>=C(0))|!(k>=m))){v[e>>2]=v[e+4>>2];b=v[c+12>>2];v[g+8>>2]=v[c+8>>2];v[g+12>>2]=b;b=v[c+4>>2];v[g>>2]=v[c>>2];v[g+4>>2]=b;h=z[c+8>>2];i=C(h*h);h=z[c>>2];l=C(h*h);h=z[c+4>>2];z[a>>2]=i+C(l+C(h*h));return}v[e>>2]=v[e+8>>2];b=v[d+12>>2];v[g+8>>2]=v[d+8>>2];v[g+12>>2]=b;b=v[d+4>>2];v[g>>2]=v[d>>2];v[g+4>>2]=b;h=z[d+8>>2];i=C(h*h);h=z[d>>2];l=C(h*h);h=z[d+4>>2];z[a>>2]=i+C(l+C(h*h));return}z[a>>2]=C(h*h)+C(C(i*i)+C(j*j))}function z2(a,b,c,d,e){var f=0,g=C(0),h=0,i=C(0),j=0,k=0,l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=0,u=0,x=0,y=C(0),A=0,B=C(0),D=C(0);f=xa;A=f;f=f-(d+15&-16)|0;xa=f;o=J9(f,0,d);g=C(34028234663852886e22);f=e;j=-1;while(1){d=v[f+48>>2];k=v[f+52>>2];a:{if(d>>>0>=k>>>0){break a}r=k+(d^-1)|0;h=0;p=k-d&3;if(p){while(1){i=z[((d<<6)+c|0)+44>>2];q=i>>0<=2){break a}while(1){i=z[((d<<6)+c|0)+44>>2];h=i>2];g=h?i:g;q=m>2];g=q?m:g;r=i>2];g=r?i:g;p=m>2];if(f){continue}break}t[j+o|0]=1;d=(j<<6)+c|0;f=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=f;f=v[d+4>>2];v[b>>2]=v[d>>2];v[b+4>>2]=f;v[b+48>>2]=v[d+48>>2];f=v[d+44>>2];v[b+40>>2]=v[d+40>>2];v[b+44>>2]=f;f=v[d+36>>2];v[b+32>>2]=v[d+32>>2];v[b+36>>2]=f;f=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=f;f=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=f;h=v[e+48>>2];f=(h<<6)+c|0;m=z[b+24>>2];g=C(z[f+24>>2]-m);i=C(g*g);n=z[b+16>>2];g=C(z[f+16>>2]-n);l=C(g*g);y=z[b+20>>2];g=C(z[f+20>>2]-y);g=C(i+C(l+C(g*g)));i=z[d+44>>2];f=e;while(1){d=v[f+48>>2];k=v[f+52>>2];if(d>>>0>>0){while(1){j=(d<<6)+c|0;l=C(z[j+24>>2]-m);B=C(l*l);l=C(z[j+16>>2]-n);D=C(l*l);l=C(z[j+20>>2]-y);l=C(B+C(D+C(l*l)));j=l>g;g=j?l:g;h=j?d:h;d=d+1|0;if((k|0)!=(d|0)){continue}break}}f=v[f+16>>2];if(f){continue}break}t[h+o|0]=1;d=(h<<6)+c|0;f=v[d+4>>2];v[b+64>>2]=v[d>>2];v[b+68>>2]=f;v[b+112>>2]=v[d+48>>2];f=v[d+44>>2];v[b+104>>2]=v[d+40>>2];v[b+108>>2]=f;f=v[d+36>>2];v[b+96>>2]=v[d+32>>2];v[b+100>>2]=f;f=v[d+28>>2];v[b+88>>2]=v[d+24>>2];v[b+92>>2]=f;f=v[d+20>>2];v[b+80>>2]=v[d+16>>2];v[b+84>>2]=f;f=v[d+12>>2];v[b+72>>2]=v[d+8>>2];v[b+76>>2]=f;m=z[d+44>>2];g=C(34028234663852886e22);while(1){d=v[e+48>>2];j=v[e+52>>2];b:{if(d>>>0>=j>>>0){break b}f=d+1|0;if(j-d&1){if(!w[d+o|0]){n=z[((d<<6)+c|0)+44>>2];k=n>2];f=n>2];k=n>2];if(e){continue}break}c=(h<<6)+c|0;d=v[c+4>>2];v[b+128>>2]=v[c>>2];v[b+132>>2]=d;v[b+176>>2]=v[c+48>>2];d=v[c+44>>2];v[b+168>>2]=v[c+40>>2];v[b+172>>2]=d;d=v[c+36>>2];v[b+160>>2]=v[c+32>>2];v[b+164>>2]=d;d=v[c+28>>2];v[b+152>>2]=v[c+24>>2];v[b+156>>2]=d;d=v[c+20>>2];v[b+144>>2]=v[c+16>>2];v[b+148>>2]=d;d=v[c+12>>2];v[b+136>>2]=v[c+8>>2];v[b+140>>2]=d;g=z[c+44>>2];i=im?m:i;z[a>>2]=g>2]=2139095039;v[k+16>>2]=0;v[k+20>>2]=0;v[k+24>>2]=k;k=(y|64)+a|0;v[k+32>>2]=2139095039;v[k+16>>2]=0;v[k+20>>2]=0;v[k+24>>2]=k;t=t+2|0;if((t|0)!=32){continue}break}k=v[b+4>>2];v[a+2176>>2]=v[b>>2];v[a+2180>>2]=k;t=v[b+12>>2];k=a+2184|0;v[k>>2]=v[b+8>>2];v[k+4>>2]=t;b=v[c+4>>2];v[a+2192>>2]=v[c>>2];v[a+2196>>2]=b;b=v[c+8>>2];k=v[c+12>>2];t=a+2304|0;v[t>>2]=0;v[t+4>>2]=0;v[a+2220>>2]=g;v[a+2216>>2]=f;v[a+2212>>2]=e;v[a+2208>>2]=d;f=a+2260|0;v[f>>2]=0;v[f+4>>2]=0;y=a+2268|0;v[y>>2]=0;v[y+4>>2]=0;D=a+2280|0;v[D>>2]=0;v[D+4>>2]=0;E=a+2288|0;v[E>>2]=0;v[E+4>>2]=0;v[a+2256>>2]=1065353216;H=a+2276|0;v[H>>2]=1065353216;F=a+2296|0;v[F>>2]=1065353216;v[F+4>>2]=0;v[a+3616>>2]=0;G=a+2312|0;v[G>>2]=0;v[G+4>>2]=0;I=a+2200|0;v[I>>2]=b;v[I+4>>2]=k;J9(a+3488|0,255,128);v[a+3624>>2]=i;v[a+3620>>2]=h;v[a+2332>>2]=0;v[a+2324>>2]=0;v[a+2328>>2]=0;p=z[d+20>>2];r=z[e+20>>2];o=z[d+24>>2];u=z[e+24>>2];w=z[e+8>>2];x=z[e>>2];A=z[e+4>>2];B=z[e+12>>2];j=z[d+12>>2];l=z[d>>2];m=z[d+16>>2];s=z[e+16>>2];n=z[d+4>>2];q=z[d+8>>2];v[a+2316>>2]=0;v[a+2300>>2]=0;v[a+2284>>2]=0;v[y>>2]=0;v[a+2320>>2]=g;v[a+2172>>2]=a+1984;v[a+2168>>2]=a+1920;v[a+2164>>2]=a+1856;v[a+2160>>2]=a+1792;v[a+2156>>2]=a+1728;v[a+2152>>2]=a+1664;v[a+2148>>2]=a+1600;v[a+2144>>2]=a+1536;v[a+2140>>2]=a+1472;v[a+2136>>2]=a+1408;v[a+2132>>2]=a+1344;v[a+2128>>2]=a+1280;v[a+2124>>2]=a+1216;v[a+2120>>2]=a+1152;v[a+2116>>2]=a+1088;v[a+2112>>2]=a+1024;v[a+2108>>2]=a+960;v[a+2104>>2]=a+896;v[a+2100>>2]=a+832;v[a+2096>>2]=a+768;v[a+2092>>2]=a+704;v[a+2088>>2]=a+640;v[a+2084>>2]=a+576;v[a+2080>>2]=a+512;v[a+2076>>2]=a+448;v[a+2072>>2]=a+384;v[a+2068>>2]=a+320;v[a+2064>>2]=a+256;v[a+2060>>2]=a+192;v[a+2056>>2]=a+128;v[a+2052>>2]=a- -64;J=C(-l);m=C(s-m);p=C(r-p);r=C(u-o);o=C(C(C(J*m)-C(p*n))-C(q*r));u=C(C(j*j)+C(-.5));s=C(C(C(j*C(C(n*m)-C(l*p)))+C(u*r))-C(q*o));z[G>>2]=s+s;s=C(C(C(u*p)+C(j*C(C(l*r)-C(q*m))))-C(n*o));z[a+2308>>2]=s+s;m=C(C(C(u*m)+C(j*C(C(q*p)-C(n*r))))-C(l*o));z[t>>2]=m+m;o=C(C(C(q*A)-C(n*w))+C(C(j*x)-C(l*B)));m=C(o+o);p=C(C(C(l*w)-C(q*x))+C(C(j*A)-C(n*B)));r=C(p+p);o=C(C(1)-C(o*m));u=C(p*r);z[F>>2]=o-u;l=C(C(C(n*x)-C(l*A))+C(C(j*w)-C(q*B)));s=C(l*r);j=C(C(j*B)-C(C(C(J*x)-C(A*n))-C(q*w)));n=C(j*m);z[a+2292>>2]=s-n;q=C(l*m);w=C(j*r);z[E>>2]=q+w;z[D>>2]=s+n;n=C(l+l);l=C(l*n);z[H>>2]=o-l;x=C(p*m);j=C(j*n);z[a+2272>>2]=x-j;z[a+2264>>2]=q-w;z[f>>2]=x+j;z[a+2256>>2]=C(C(1)-u)-l;v[a+2048>>2]=a;j=z[c>>2];v[a+2224>>2]=1065286107;z[a+2240>>2]=j*j;return a} +function uQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=0,u=0,x=0;e=v[a+40>>2];b=v[e+304>>2];g=v[b>>2];if(g){v[b>>2]=v[g>>2]}if(!g){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?26823:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,7251,f,19395,82)|0;b=f+19&-16;v[b-4>>2]=b-f;g=tK(b,v[e+308>>2])}v[g+7120>>2]=0;a:{if(!v[a+32>>2]){break a}h=g+7116|0;b=v[a+28>>2];while(1){o=xa-48|0;xa=o;u=r<<2;f=v[v[u+b>>2]+20>>2];while(1){e=zH(o,v[f>>2]);v[o+36>>2]=f;b=f;while(1){if(b){while(1){e=b;d=v[b+40>>2];b:{if(!d){break b}c=v[d+60>>2];c:{if(c){b=1;if(!(t[v[c+44>>2]+44|0]&1)){break c}}c=v[d- -64>>2];b=0;if(!c){break c}b=!(t[v[c+44>>2]+44|0]&1)}if(!b|!(!v[(v[v[v[d+48>>2]+1004>>2]+168>>2]+(v[d+40>>2]<<5)|0)+12>>2]&(w[v[d+52>>2]]&6)!=0)){break b}x=v[e>>2];i=C(0);j=C(0);k=C(0);l=C(0);b=xa-80|0;xa=b;s=d- -64|0;p=v[d+28>>2];q=v[d+24>>2];d:{if(q){c=v[q+36>>2];z[b+48>>2]=z[c>>2];i=z[c+20>>2];j=z[c+16>>2];k=z[c+8>>2];l=z[c+4>>2];m=z[c+24>>2];n=z[c+12>>2];break d}v[b+48>>2]=0;m=C(0);n=C(1)}s=v[s>>2];z[b+72>>2]=m;z[b+68>>2]=i;z[b+64>>2]=j;z[b+60>>2]=n;z[b+56>>2]=k;z[b+52>>2]=l;e:{if(p){c=v[p+36>>2];z[b+16>>2]=z[c>>2];j=z[c+16>>2];n=z[c+12>>2];k=z[c+8>>2];l=z[c+4>>2];m=z[c+24>>2];i=z[c+20>>2];break e}v[b+16>>2]=0;n=C(1);l=C(0);k=C(0);j=C(0);m=C(0);i=C(0)}z[b+40>>2]=m;z[b+36>>2]=i;z[b+32>>2]=j;z[b+28>>2]=n;z[b+24>>2]=k;z[b+20>>2]=l;c=(s|0)==(x|0);Ba[v[d+16>>2]](v[d+20>>2],b+48|0,b+16|0,c);f:{if(c){TH(v[p+36>>2],b+16|0);c=v[p+36>>2];z[c>>2]=z[b+16>>2];z[c+4>>2]=z[b+20>>2];z[c+8>>2]=z[b+24>>2];z[c+12>>2]=z[b+28>>2];z[c+16>>2]=z[b+32>>2];z[c+20>>2]=z[b+36>>2];z[c+24>>2]=z[b+40>>2];c=v[d+64>>2];v[b+12>>2]=c;d=v[h+4>>2];if(d>>>0>=(v[h+8>>2]&2147483647)>>>0){qG(h,b+12|0);break f}v[v[h>>2]+(d<<2)>>2]=c;v[h+4>>2]=d+1;break f}TH(v[q+36>>2],b+48|0);c=v[q+36>>2];z[c>>2]=z[b+48>>2];z[c+4>>2]=z[b+52>>2];z[c+8>>2]=z[b+56>>2];z[c+12>>2]=z[b+60>>2];z[c+16>>2]=z[b+64>>2];z[c+20>>2]=z[b+68>>2];z[c+24>>2]=z[b+72>>2];c=v[d+60>>2];v[b+12>>2]=c;d=v[h+4>>2];if(d>>>0>=(v[h+8>>2]&2147483647)>>>0){qG(h,b+12|0);break f}v[v[h>>2]+(d<<2)>>2]=c;v[h+4>>2]=d+1}xa=b+80|0}b=v[e+32>>2];if(b){continue}b=v[e+36>>2];if(b){continue}break}}e=v[e+28>>2];if(e){b=v[e+36>>2];continue}break}f=v[f+24>>2];if(f){continue}break}xa=o+48|0;b=v[a+28>>2];e=v[u+b>>2];t[e+44|0]=w[e+44|0]&253;r=r+1|0;if(r>>>0>2]){continue}break}if(!v[g+7120>>2]){break a}if(v[g+7120>>2]){b=0;while(1){d=v[h>>2]+(b<<2)|0;e=v[a+36>>2];f=v[e+4>>2];g:{if(f>>>0>=(v[e+8>>2]&2147483647)>>>0){qG(e,d);break g}v[v[e>>2]+(f<<2)>>2]=v[d>>2];v[e+4>>2]=f+1}b=b+1|0;if(b>>>0>2]){continue}break}}}a=v[v[a+40>>2]+304>>2];v[g>>2]=v[a>>2];v[a>>2]=g}function VM(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,z=0,A=0,C=0;o=v[a+52>>2];e=v[a+36>>2];j=v[a+40>>2];q=v[a+44>>2];k=xa-32|0;xa=k;l=v[a+32>>2];c=v[l+32>>2];r=v[a+28>>2];t=v[r>>2];s=v[l+20>>2];if(s){z=v[l+16>>2];h=o+192|0;while(1){b=v[(v[e+256>>2]+B(v[(m<<2)+z>>2],44)|0)+24>>2];if((b|0)!=-1){while(1){d=v[e+148>>2];f=(b>>>0)/(d>>>0)|0;A=v[v[v[e+128>>2]+(f<<2)>>2]+(b-B(d,f)<<2)>>2];f=v[e+228>>2];d=(b>>>0)/(f>>>0)|0;n=B(d,f);C=v[v[e+208>>2]+(d<<2)>>2];f=v[o+472>>2];i=b<<1;g=v[e+616>>2];p=v[g+20>>2];d=(i>>>0)/(p>>>0)|0;d=v[v[v[g>>2]+(d<<2)>>2]+(i-B(d,p)<<2)>>2];a:{if(d>>>0>=4294967168){v[c+12>>2]=0;v[c>>2]=h;u[c+8>>1]=65535;break a}p=d>>>7|0;g=v[e+184>>2]+B(p,24)|0;if(w[g+5|0]==1){g=v[g+20>>2];d=d>>>1&63;Ba[v[v[g>>2]+188>>2]](g,d,k+28|0,k+27|0);b:{if(w[k+27|0]==2){v[c>>2]=g;break b}v[c>>2]=h;d=65535}v[c+12>>2]=0;u[c+8>>1]=d;break a}d=v[v[e+196>>2]+(p<<2)>>2];d=w[g+4|0]&4?d:v[(d<<2)+j>>2]+q|0;u[c+8>>1]=65535;d=d+1|0;v[c+12>>2]=d;v[c>>2]=(d<<6)+f}g=b-n|0;d=i|1;i=v[e+616>>2];n=v[i+20>>2];b=(d>>>0)/(n>>>0)|0;b=v[v[v[i>>2]+(b<<2)>>2]+(d-B(b,n)<<2)>>2];c:{if(b>>>0>=4294967168){v[c+16>>2]=0;v[c+4>>2]=h;u[c+10>>1]=65535;break c}i=b>>>7|0;d=v[e+184>>2]+B(i,24)|0;if(w[d+5|0]==1){d=v[d+20>>2];b=b>>>1&63;Ba[v[v[d>>2]+188>>2]](d,b,k+20|0,k+19|0);f=w[k+19|0];v[c+16>>2]=0;n=b;b=(f|0)==2;u[c+10>>1]=b?n:-1;v[c+4>>2]=b?d:h;break c}b=v[v[e+196>>2]+(i<<2)>>2];b=w[d+4|0]&4?b:v[(b<<2)+j>>2]+q|0;u[c+10>>1]=65535;b=b+1|0;v[c+16>>2]=b;v[c+4>>2]=(b<<6)+f}u[c+22>>1]=2;v[c+24>>2]=A;c=c+32|0;b=v[(C+(g<<4)|0)+8>>2];if((b|0)!=-1){continue}break}}m=m+1|0;if((s|0)!=(m|0)){continue}break}b=v[l+32>>2]}else{b=c}Bz(b,c-b>>5);if(v[r+12>>2]){b=v[l+12>>2];d=0;while(1){j=v[o+472>>2];h=xa-16|0;v[h+12>>2]=0;v[h+8>>2]=q;d:{e:{f:{g:{h:{m=d<<4;e=m+b|0;b=w[e+8|0];switch(b-2|0){case 1:break g;case 0:break h;default:break f}}v[c>>2]=v[e>>2]&-64;b=x[e>>1];v[c+12>>2]=0;u[c+8>>1]=b&63;break d}b=o+192|0;break e}b=(j+(v[e>>2]+v[(h+8|0)+(b<<2)>>2]<<6)|0)- -64|0}v[c>>2]=b;b=0;f=w[e+8|0];if((f|0)!=3){b=(v[e>>2]+v[(h+8|0)+(f<<2)>>2]|0)+1|0}u[c+8>>1]=65535;v[c+12>>2]=b}i:{j:{k:{l:{m:{b=w[e+9|0];switch(b-2|0){case 1:break l;case 0:break m;default:break k}}v[c+4>>2]=v[e+4>>2]&-64;b=x[e+4>>1];v[c+16>>2]=0;u[c+10>>1]=b&63;break i}b=o+192|0;break j}b=(j+(v[e+4>>2]+v[(h+8|0)+(b<<2)>>2]<<6)|0)- -64|0}v[c+4>>2]=b;b=0;j=w[e+9|0];if((j|0)!=3){b=(v[e+4>>2]+v[(h+8|0)+(j<<2)>>2]|0)+1|0}u[c+10>>1]=65535;v[c+16>>2]=b}b=v[l+12>>2];e=v[(m+b|0)+12>>2];u[c+22>>1]=1;v[c+24>>2]=e;c=c+32|0;d=d+1|0;if(d>>>0>2]){continue}break}}v[t+11956>>2]=c-v[l+32>>2]>>5;xa=k+32|0;a=v[a+28>>2];v[a+88>>2]=v[v[a>>2]+11956>>2]}function r_(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0);e=xa-192|0;xa=e;f=z[d>>2];k=z[d+4>>2];z[e+56>>2]=C(1)/z[d+8>>2];z[e+52>>2]=C(1)/k;z[e+48>>2]=C(1)/f;z[e+60>>2]=z[d+12>>2];z[e- -64>>2]=z[d+16>>2];z[e+68>>2]=z[d+20>>2];z[e+72>>2]=z[d+24>>2];s=z[c+20>>2];t=z[c+24>>2];u=z[c+16>>2];v=z[c+4>>2];w=C(-v);h=C(w-v);x=z[c+8>>2];n=C(-x);g=C(h*n);f=z[c+12>>2];k=z[c>>2];o=C(C(-k)-k);i=C(f*o);z[e+28>>2]=g-i;z[e+20>>2]=i+g;g=C(C(k*o)+C(1));m=C(h*w);z[e+32>>2]=g-m;D=C(n-x);j=C(D*n);z[e+16>>2]=g-j;t=C(t*C(-2));u=C(u*C(-2));s=C(s*C(-2));g=C(C(x*t)+C(C(k*u)+C(v*s)));i=C(C(f*f)+C(-.5));z[e+44>>2]=C(x*g)+C(C(t*i)-C(f*C(C(k*s)-C(u*v))));z[e+40>>2]=C(v*g)+C(C(s*i)-C(f*C(C(x*u)-C(t*k))));n=C(o*n);h=C(f*h);z[e+24>>2]=n+h;o=C(o*w);w=C(f*D);z[e+12>>2]=o-w;z[e+8>>2]=n-h;z[e+4>>2]=o+w;z[e>>2]=C(C(1)-m)-j;z[e+36>>2]=C(k*g)+C(C(u*i)-C(f*C(C(v*t)-C(s*x))));k=z[e+20>>2];v=z[e+16>>2];x=z[e+32>>2];n=z[e+28>>2];o=z[e+8>>2];t=z[e>>2];u=z[e+4>>2];s=z[e+12>>2];w=z[e+24>>2];h=z[e+64>>2];g=C(h+h);f=z[e+68>>2];j=C(f+f);c=e+80|0;E=C(h*g);p=C(f*j);i=C(C(C(1)-E)-p);J=z[e+48>>2];y=z[e+60>>2];m=C(y+y);l=C(m*f);q=z[e+72>>2];r=C(g*q);D=C(l+r);A=C(J*D);F=C(m*h);G=C(j*q);h=C(F+G);H=C(g*f);I=C(m*q);f=C(H-I);K=z[e+52>>2];B=C(f*K);g=C(l-r);q=C(C(1)-C(y*m));m=C(q-E);L=z[e+56>>2];l=C(m*L);j=C(C(C(i*A)+C(h*B))+C(g*l));M=z[e+36>>2];y=C(F-G);q=C(q-p);E=C(H+I);p=C(C(C(y*A)+C(q*B))+C(E*l));F=z[e+40>>2];A=C(C(C(D*A)+C(f*B))+C(m*l));G=z[e+44>>2];z[c+44>>2]=C(C(j*M)+C(p*F))+C(A*G);r=C(J*y);H=C(q*K);I=C(E*L);B=C(C(C(i*r)+C(h*H))+C(g*I));l=C(C(C(y*r)+C(q*H))+C(E*I));r=C(C(C(D*r)+C(f*H))+C(m*I));z[c+40>>2]=C(C(M*B)+C(F*l))+C(G*r);z[c+32>>2]=C(C(j*w)+C(p*n))+C(A*x);z[c+28>>2]=C(C(B*w)+C(l*n))+C(r*x);z[c+20>>2]=C(C(j*s)+C(p*v))+C(A*k);z[c+16>>2]=C(C(B*s)+C(l*v))+C(r*k);z[c+8>>2]=C(o*A)+C(C(t*j)+C(u*p));z[c+4>>2]=C(o*r)+C(C(t*B)+C(u*l));l=i;i=C(J*i);j=C(h*K);p=C(g*L);h=C(C(C(l*i)+C(h*j))+C(g*p));g=C(C(C(y*i)+C(q*j))+C(E*p));f=C(C(C(D*i)+C(f*j))+C(m*p));z[c+36>>2]=C(C(M*h)+C(F*g))+C(G*f);z[c+24>>2]=C(C(h*w)+C(g*n))+C(f*x);z[c+12>>2]=C(C(h*s)+C(g*v))+C(f*k);z[c>>2]=C(o*f)+C(C(t*h)+C(u*g));s_(e+128|0,c,b);z[a>>2]=z[e+128>>2];z[a+4>>2]=z[e+132>>2];z[a+8>>2]=z[e+136>>2];z[a+12>>2]=z[e+140>>2];z[a+16>>2]=z[e+144>>2];z[a+20>>2]=z[e+148>>2];z[a+24>>2]=z[e+152>>2];z[a+28>>2]=z[e+156>>2];z[a+32>>2]=z[e+160>>2];z[a+36>>2]=z[e+164>>2];z[a+40>>2]=z[e+168>>2];z[a+44>>2]=z[e+172>>2];z[a+48>>2]=z[e+176>>2];z[a+52>>2]=z[e+180>>2];z[a+56>>2]=z[e+184>>2];xa=e+192|0}function ck(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=xa-48|0;xa=e;g=w[c|0];if((g&5)==5){b9(v[37696],4,18916,476,69240,0);g=g&251}if((g&36)==36){b9(v[37696],4,18916,483,69097,0);g=g&223}f=vh(a);h=f?f+32|0:0;d=a+48|0;a:{b:{l=g&1;i=w[b|0];c=i&1;c:{if(!(l|!c)){j=a+20|0;m=x[a+24>>1];if(m){o=(m|0)==1?j:v[a+20>>2];c=0;while(1){k=(c<<2)+o|0;n=v[k>>2];Ba[v[v[n>>2]+156>>2]](e+16|0,n);d:{if(!(t[e+16|0]&1)){break d}e:{f:{k=v[v[k>>2]+116>>2];switch(k-1|0){case 0:case 4:break e;default:break f}}if((k|0)!=6){break d}}b9(v[37696],4,18916,513,74978,0);break a}c=c+1|0;if((m|0)!=(c|0)){continue}break}c=w[b|0]}else{c=i}g:{h:{if(!(c&2)){break h}i:{if(w[a+317|0]&128){c=v[a+56>>2];z[e+16>>2]=z[c+192>>2];z[e+20>>2]=z[c+196>>2];z[e+24>>2]=z[c+200>>2];z[e+28>>2]=z[c+204>>2];z[e+32>>2]=z[c+208>>2];z[e+36>>2]=z[c+212>>2];z[e+40>>2]=z[c+216>>2];if(f){break i}break g}if(y[a+52>>2]>3221225471){break h}if(!f|!ZG(a- -64|0,e+16|0)){break h}}mu(j,f+5584|0,a);c=f+5652|0;v[c>>2]=v[c>>2]+1}if(!f){break g}v[h+2672>>2]=v[h+2672>>2]-1;v[h+2668>>2]=v[h+2668>>2]+1}if(!v[a+240>>2]|(v[a+52>>2]&-1073741824)!=1073741824){break c}c=v[a+240>>2];h=a- -64|0;j=w[v[h+176>>2]+31|0]==1;j:{if(j){if(c){break j}break c}if(!v[a+240>>2]|(!c|w[v[h+176>>2]+31|0]==1)){break c}}TG(h,v[v[d>>2]+2428>>2],j);break c}if(c|!l){break c}if((Ba[v[v[a>>2]+24>>2]](a)|0)==2){break b}k:{if(!v[a+240>>2]|(v[a+52>>2]&-1073741824)!=1073741824){break k}c=a- -64|0;if(!v[a+240>>2]|w[v[c+176>>2]+31|0]==1){break k}HG(c,v[v[d>>2]+2428>>2])}if(!f){break c}v[h+2668>>2]=v[h+2668>>2]-1;v[h+2672>>2]=v[h+2672>>2]+1}l:{if(!(i&l)|!((w[b|0]^g)&2)){break l}c=!f;m:{if(w[a+317|0]&128){b=v[a+56>>2];z[e+16>>2]=z[b+192>>2];z[e+20>>2]=z[b+196>>2];z[e+24>>2]=z[b+200>>2];z[e+28>>2]=z[b+204>>2];z[e+32>>2]=z[b+208>>2];z[e+36>>2]=z[b+212>>2];z[e+40>>2]=z[b+216>>2];b=1;break m}if(y[a+52>>2]>3221225471){break l}b=ZG(a- -64|0,e+16|0)}if(c|!b){break l}mu(a+20|0,f+5584|0,a);a=f+5652|0;v[a>>2]=v[a>>2]+1}t[e+8|0]=g;b=xa-16|0;xa=b;g=w[e+8|0];a=v[d+8>>2];i=v[d+268>>2];f=w[(i&16384?a+268|0:d+60|0)|0];c=g&!(f&1);n:{o:{p:{switch((v[d+4>>2]>>>30|0)-2|0){case 0:if(w[v[d>>2]+4785|0]){break o}break;case 1:break o;default:break p}}if(c){v[d+236>>2]=0;v[d+240>>2]=0;v[d+260>>2]=0;v[d+264>>2]=1;v[d+244>>2]=0;v[d+248>>2]=0;v[d+252>>2]=0;v[d+256>>2]=0}c=d+16|0;a=v[d>>2];if(a){a=v[a+2428>>2]}else{a=0}t[b+8|0]=w[e+8|0];RG(c,a,b+8|0);break n}q:{if(c){Xk(d);a=v[d+8>>2];break q}if(!(f&!(g&1))){break q}v[d+268>>2]=i&-32769}if(!a){a=Qu(v[d>>2],w[d+7|0]&15);v[d+8>>2]=a}t[a+268|0]=w[e+8|0];Yu(v[d>>2],d);v[d+268>>2]=v[d+268>>2]|16384}xa=b+16|0;break a}b9(v[37696],4,18916,540,74901,0)}xa=e+48|0}function cJ(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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;j=xa-112|0;xa=j;v[a>>2]=0;v[a+4>>2]=-1;o=w[v[c+28>>2]- -64|0]<<3&32;k=v[c+4>>2];k=w[v[k+44>>2]+9|0]-1>>>0<2?k:0;a:{if(!k){break a}k=v[k+44>>2];if(w[k+9|0]!=2){o=o|w[k+44|0]<<4&16|1;break a}o=o|2}r=a+2|0;k=v[c+28>>2];s=v[k+28>>2];y=v[k+24>>2];z=v[k+20>>2];A=v[k+16>>2];l=w[v[d+28>>2]- -64|0]<<3&32;i=v[d+4>>2];i=w[v[i+44>>2]+9|0]-1>>>0<2?i:0;k=l;b:{if(!i){break b}k=v[i+44>>2];if(w[k+9|0]!=2){k=l|w[k+44|0]<<4&16|1;break b}k=l|2}i=v[d+28>>2];B=v[i+20>>2];C=v[i+24>>2];D=v[i+28>>2];E=v[i+16>>2];i=v[b>>2];v[j+100>>2]=s;v[j+96>>2]=y;v[j+92>>2]=z;v[j+88>>2]=A;v[j+84>>2]=D;v[j+80>>2]=C;v[j+76>>2]=B;v[j+72>>2]=E;Ba[i|0](j+104|0,o,j+88|0,k,j+72|0,r,v[b+4>>2],v[b+8>>2]);i=x[j+104>>1];u[a>>1]=i;c:{d:{if(!(i&4)){break d}if(v[b+12>>2]){if(!h){break c}e:{if((g|0)!=-1){break e}m=v[b+16>>2];g=v[m+12>>2];if((g|0)==-1){g=v[m+4>>2];v[j+104>>2]=0;if((v[m+8>>2]&2147483647)>>>0<=g>>>0){i=v[m+8>>2];p=i&2147483647?i<<1:1;f:{if(!p){break f}i=p<<2;if(!i){break f}l=v[37696];n=l+12|0;n=(H=n,I=i,J=Ba[v[v[l>>2]+20>>2]](l)|0?57531:63804,K=16608,L=553,G=v[v[n>>2]+8>>2],Ba[G](H|0,I|0,J|0,K|0,L|0)|0)}q=v[m+4>>2];l=(q<<2)+n|0;if((q|0)>0){F=v[m>>2];i=n;while(1){v[i>>2]=v[F>>2];F=F+4|0;i=i+4|0;if(l>>>0>i>>>0){continue}break}}v[l>>2]=v[j+104>>2];g:{if(v[m+8>>2]<0){break g}l=v[m>>2];if(!l){break g}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,l);q=v[m+4>>2]}v[m+8>>2]=p;v[m>>2]=n;v[m+4>>2]=q+1;break e}v[v[m>>2]+(g<<2)>>2]=0;v[m+4>>2]=g+1;break e}n=v[m>>2]+(g<<2)|0;v[m+12>>2]=v[n>>2];v[n>>2]=0}n=v[v[c+4>>2]+44>>2];p=v[((w[n+9|0]<<2)+149664|0)+40>>2]+n|0;l=v[37419];i=l+v[c+28>>2]|0;c=v[v[d+4>>2]+44>>2];n=v[((w[c+9|0]<<2)+149664|0)+40>>2]+c|0;c=l+v[d+28>>2]|0;d=v[b+12>>2];v[j+68>>2]=s;v[j+64>>2]=y;v[j+60>>2]=z;v[j+56>>2]=A;v[j+52>>2]=D;v[j+48>>2]=C;v[j+44>>2]=B;v[j+40>>2]=E;Ba[v[v[d>>2]>>2]](j+104|0,d,g,o,j+56|0,p,i,k,j+40|0,n,c,r);i=x[j+104>>1];u[a>>1]=i;v[a+4>>2]=g;break d}u[a>>1]=i&65523;b9(v[37696],2,11474,270,69674,0);i=x[a>>1]}if((i&3)==3){i=i&65534;u[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=v[b+12>>2];v[j+36>>2]=s;v[j+32>>2]=y;v[j+28>>2]=z;v[j+24>>2]=A;v[j+20>>2]=D;v[j+16>>2]=C;v[j+12>>2]=B;v[j+8>>2]=E;Ba[v[v[c>>2]+4>>2]](c,g,o,j+24|0,k,j+8|0,0);i=x[a>>1];if((i&12)==12){break i}}i=i&65523;u[a>>1]=i}b=v[b+16>>2];v[v[b>>2]+(g<<2)>>2]=v[b+12>>2];v[b+12>>2]=g;v[a+4>>2]=-1}if(!(i&4?h:1)){break c}i=x[a+2>>1];if(!(!e|x[a>>1]&3|(!f|!(t[v[e+44>>2]+44|0]&1)))){i=t[v[f+44>>2]+44|0]&1?i&1?i&-2:i:i}u[r>>1]=i}xa=j+112|0}function C8(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0;h=xa-128|0;xa=h;O=v[a+40>>2];P=v[a+36>>2];z[e+8>>2]=z[a+44>>2];v[e>>2]=P;v[e+4>>2]=O;i=z[a+40>>2];l=z[a+36>>2];z[h+24>>2]=-z[a+44>>2];z[h+20>>2]=-i;z[h+16>>2]=-l;e=h+16|0;A8(a,e);z[d>>2]=z[a+48>>2];z[h+16>>2]=z[a>>2];z[h+20>>2]=z[a+4>>2];z[h+24>>2]=z[a+8>>2];z[h+28>>2]=z[a+12>>2];z[h+32>>2]=z[a+16>>2];z[h+36>>2]=z[a+20>>2];z[h+40>>2]=z[a+24>>2];z[h+44>>2]=z[a+28>>2];z[h+48>>2]=z[a+32>>2];q9(h+72|0,e,c);i=z[h+72>>2];z[b>>2]=i;l=z[h+76>>2];z[b+4>>2]=l;k=z[h+80>>2];z[b+8>>2]=k;if(!(!(!(i>C(0))|!(l>C(0)))&k>C(0))){a=v[37696];v[h>>2]=g;b9(a,2,6223,84,70042,h);Ba[v[v[f>>2]+40>>2]](h+104|0,f,C(1.0099999904632568));Ba[v[v[f>>2]+76>>2]](h+72|0,f);l=z[h+72>>2];o=C(-l);n=C(o-l);k=z[h+80>>2];p=C(-k);G=C(n*p);i=z[h+84>>2];m=z[h+76>>2];r=C(-m);j=C(r-m);H=C(i*j);q=z[h+116>>2];s=z[h+104>>2];A=C(C(q-s)*C(.5));y=C(i*n);I=C(j*p);w=z[h+120>>2];t=z[h+108>>2];B=C(C(w-t)*C(.5));J=C(C(l*n)+C(1));K=C(j*r);j=z[h+124>>2];u=z[h+112>>2];E=C(C(j-u)*C(.5));L=C(C(C(D(C(C(G-H)*A)))+C(D(C(C(y+I)*B))))+C(D(C(C(J-K)*E))));x=o;o=C(C(s+q)*C(.5));o=C(o+o);q=C(C(t+w)*C(.5));q=C(q+q);j=C(C(u+j)*C(.5));s=C(j+j);w=C(C(C(x*o)-C(q*m))-C(k*s));t=C(z[h+96>>2]*C(-2));u=C(z[h+88>>2]*C(-2));x=C(z[h+92>>2]*C(-2));F=C(C(k*t)+C(C(l*u)+C(x*m)));j=C(C(i*i)+C(-.5));M=C(C(C(k*F)+C(C(t*j)-C(i*C(C(l*x)-C(u*m)))))+C(C(C(s*j)+C(i*C(C(m*o)-C(l*q))))-C(k*w)));z[h+124>>2]=L+M;n=C(n*r);r=C(p-k);N=C(i*r);p=C(r*p);r=C(C(C(D(C(C(n+N)*A)))+C(D(C(C(J-p)*B))))+C(D(C(C(I-y)*E))));y=C(C(C(m*F)+C(C(x*j)-C(i*C(C(k*u)-C(t*l)))))+C(C(C(q*j)+C(i*C(C(l*s)-C(k*o))))-C(m*w)));z[h+120>>2]=r+y;n=C(C(C(D(C(C(C(C(1)-K)-p)*A)))+C(D(C(C(n-N)*B))))+C(D(C(C(G+H)*E))));i=C(C(C(l*F)+C(C(u*j)-C(i*C(C(m*t)-C(x*k)))))+C(C(C(o*j)+C(i*C(C(k*q)-C(m*s))))-C(l*w)));z[h+116>>2]=n+i;z[h+112>>2]=M-L;z[h+108>>2]=y-r;z[h+104>>2]=i-n;z8(h+16|0,0);v[h+60>>2]=0;v[h+52>>2]=0;v[h+56>>2]=0;k=C(C(z[h+116>>2]-z[h+104>>2])*C(.5));m=C(C(z[h+120>>2]-z[h+108>>2])*C(.5));j=C(C(z[h+124>>2]-z[h+112>>2])*C(.5));n=C(C(C((k!=C(0)?k:C(1))*(m!=C(0)?m:C(1)))*(j!=C(0)?j:C(1)))*C(8));l=C(z[d>>2]/n);i=C(l*C(0));z[h+36>>2]=i;z[h+44>>2]=i;p=C(k*k);j=C(j*j);k=C(n*C(.3333333432674408));o=C(C(C(p+j)*k)*l);z[h+32>>2]=o;m=C(m*m);p=C(C(C(p+m)*k)*l);z[h+48>>2]=p;z[h+20>>2]=i;z[h+24>>2]=i;z[h+28>>2]=i;z[h+40>>2]=i;z[h+64>>2]=n*l;i=C(C(C(m+j)*k)*l);z[h+16>>2]=i;z[b+8>>2]=p;z[b+4>>2]=o;z[b>>2]=i;v[c+8>>2]=0;v[c+12>>2]=1065353216;v[c>>2]=0;v[c+4>>2]=0}xa=h+128|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=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=0,P=0,Q=0,R=0,S=0,T=0;h=xa-32|0;xa=h;v[h+24>>2]=d;y=z[e+20>>2];M=z[e+16>>2];k=z[e+8>>2];d=v[c+40>>2];m=z[d+8>>2];r=z[d+20>>2];i=C(C(m+r)*C(.5));A=C(i+i);q=z[e>>2];s=z[d>>2];t=z[d+12>>2];i=C(C(s+t)*C(.5));E=C(i+i);o=z[d+4>>2];u=z[d+16>>2];i=C(C(o+u)*C(.5));F=C(i+i);i=z[e+4>>2];G=C(C(k*A)+C(C(q*E)+C(F*i)));p=z[e+12>>2];H=C(C(p*p)+C(-.5));I=C(z[e+24>>2]+C(C(k*G)+C(C(A*H)+C(p*C(C(q*F)-C(E*i))))));r=C(C(r-m)*C(.5));m=C(q+q);x=C(C(1)-C(q*m));l=C(i+i);J=C(i*l);s=C(C(t-s)*C(.5));K=C(m*k);L=C(p*l);t=C(C(u-o)*C(.5));o=C(p*m);l=C(l*k);u=C(C(D(C(r*C(x-J))))+C(C(D(C(s*C(K-L))))+C(D(C(t*C(o+l))))));z[h+20>>2]=I+u;y=C(y+C(C(i*G)+C(C(F*H)+C(p*C(C(k*E)-C(A*q))))));N=C(D(C(r*C(l-o))));m=C(m*i);l=C(k+k);o=C(p*l);l=C(k*l);x=C(N+C(C(D(C(s*C(m+o))))+C(D(C(t*C(x-l))))));z[h+16>>2]=y+x;k=C(M+C(C(q*G)+C(C(E*H)+C(p*C(C(i*A)-C(F*k))))));i=C(C(D(C(r*C(K+L))))+C(C(D(C(s*C(C(C(1)-J)-l))))+C(D(C(t*C(m-o))))));z[h+12>>2]=k+i;z[h+8>>2]=I-u;z[h+4>>2]=y-x;z[h>>2]=k-i;a:{b:{j=a+632|0;d=v[j>>2];if((d|0)==v[j+4>>2]){d=d<<1;if(!dE(j,d>>>0>32?d:32)){break b}d=v[j>>2]}v[j>>2]=d+1;n=v[j+8>>2]+B(d,24)|0;z[n>>2]=z[h>>2];z[n+4>>2]=z[h+4>>2];z[n+8>>2]=z[h+8>>2];z[n+12>>2]=z[h+12>>2];z[n+16>>2]=z[h+16>>2];z[n+20>>2]=z[h+20>>2];n=Ba[v[v[c>>2]+40>>2]](c)|0;j=v[j+12>>2]+B(d,44)|0;z[j+12>>2]=z[e>>2];z[j+16>>2]=z[e+4>>2];z[j+20>>2]=z[e+8>>2];z[j+24>>2]=z[e+12>>2];z[j+28>>2]=z[e+16>>2];z[j+32>>2]=z[e+20>>2];k=z[e+24>>2];v[j+40>>2]=f;z[j+36>>2]=k;e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,28,24422,10409,228)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+24>>2]=-1;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;gC(e,n);hC(e,b,Ba[v[v[c>>2]+36>>2]](c)|0,g,n);v[j+4>>2]=e;b=v[37696];e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,12,24422,10409,234)|0;v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;eE(e,n);v[j+8>>2]=e;b=v[37696];f=v[37696];b=FC((P=b+12|0,Q=616,R=Ba[v[v[f>>2]+20>>2]](f)|0?44035:63804,S=10409,T=238,O=v[v[b+12>>2]+8>>2],Ba[O](P|0,Q|0,R|0,S|0,T|0)|0));if(Ba[v[v[c>>2]+40>>2]](c)|0){f=v[b+584>>2];if(!f){KC(b+296|0);f=v[b+584>>2]}v[b+584>>2]=v[f>>2];v[b+576>>2]=v[b+576>>2]+1;f=J9(f,0,96);v[b+588>>2]=f;g=f;f=v[c+40>>2];WC(b,g,f,f,0,v[c+32>>2],e)}v[j>>2]=b;b=d;break a}b9(v[37696],16,10409,207,69870,0);b=-1}v[a+704>>2]=0;iE(a,b,QC(a+4|0,b,v[a+640>>2],a+700|0));c=bD(a+648|0,h+24|0,h+31|0);if(!w[h+31|0]){v[c>>2]=v[h+24>>2]}v[c+4>>2]=b;v[v[a+688>>2]+(b<<2)>>2]=v[h+24>>2];xa=h+32|0;return 1}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,n=0,o=0,p=0,q=0,r=0,s=0,y=0,z=0,A=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;b=v[a+28>>2];G=v[a+32>>2];H=v[a+168>>2];I=a+40|0;J=a+104|0;e=xa-48|0;xa=e;A=v[a+36>>2];if(A){b=v[b>>2];K=v[b+2176>>2];L=v[b+2172>>2];M=v[b+2184>>2];N=e|2;O=v[b+2188>>2];C=v[b+2192>>2];P=v[b+2196>>2];while(1){b=B(p,12)+G|0;h=v[b+4>>2];l=v[b>>2];i=v[l+4>>2];b=v[i+44>>2];q=w[b+9|0];s=v[(q<<2)+91852>>2]>>>1|0;j=v[h+4>>2];a:{if(!q){m=0;b=0;break a}m=t[b+44|0]&1;s=m<<4|s;b=i}g=b;h=v[h+28>>2];l=v[l+28>>2];b=v[j+44>>2];r=w[b+9|0];y=v[(r<<2)+91852>>2]>>>1|0;b:{if(!r){n=0;b=0;break b}n=t[b+44|0]&1;y=n<<4|y;b=j}z=(p<<3)+H|0;c:{d:{e:{f:{g:{h:{i:{if(!(m|n)){break i}if(P){if(m&n&(C|0)!=0|(!g|!b)){break d}break h}if(!C){break i}if(m&n){break d}}if(!g){break g}}if(!(t[g+149|0]&1)){o=0;break e}f=v[g+28>>2];c=v[j+28>>2];k=c>>>0>f>>>0?f:c;if(!k){o=0;break e}c=c>>>0>>0;f=c?g:j;d=v[(c?j:g)+20>>2];while(1){c=v[d>>2];if(w[c+20|0]==4){o=0;if((f|0)==v[c>>2]|(f|0)==v[c+4>>2]){break f}}d=d+4|0;k=k-1|0;if(k){continue}break}o=0;break e}if(!b){o=1;break e}o=1;if(!(t[b+149|0]&1)){break e}f=v[b+28>>2];c=v[i+28>>2];k=c>>>0>f>>>0?f:c;if(!k){break e}o=!g;c=c>>>0>>0;f=c?b:i;d=v[(c?i:b)+20>>2];while(1){c=v[d>>2];if(w[c+20|0]==4&((f|0)==v[c>>2]|(f|0)==v[c+4>>2])){break f}d=d+4|0;k=k-1|0;if(k){continue}break}break e}if(!(w[v[v[c+24>>2]+52>>2]]&8)){break d}}j:{if(((q|0)==2|0)==((r|0)==2|0)){break j}if(!(w[v[g+100>>2]+159|0]?!n&(r|0)!=0|o:1)){break d}if(!b|!m&(q|0)!=0){break j}if(w[v[b+100>>2]+159|0]){break d}}k:{l:{if((q|0)!=2|(r|0)!=2){break l}if(w[v[b+100>>2]+159|0]?w[v[g+100>>2]+159|0]:0){break d}c=v[i+28>>2];if(!c){break l}d=v[i+20>>2];while(1){b=v[d>>2];if(w[b+20|0]==5&(v[b>>2]==(j|0)|v[b+4>>2]==(j|0))){break k}d=d+4|0;c=c-1|0;if(c){continue}break}}v[e>>2]=0;v[e+4>>2]=-1;f=v[h+24>>2];c=v[h+28>>2];g=v[h+16>>2];j=v[h+20>>2];i=v[l+16>>2];h=v[l+20>>2];b=v[l+28>>2];v[e+32>>2]=v[l+24>>2];v[e+36>>2]=b;v[e+24>>2]=i;v[e+28>>2]=h;v[e+16>>2]=f;v[e+20>>2]=c;v[e+8>>2]=g;v[e+12>>2]=j;Ba[M|0](e+40|0,s,e+24|0,y,e+8|0,N,L,K);d=x[e+40>>1];m:{if(d&4){if(O){break m}u[e>>1]=d&65523;b9(v[37696],2,11474,318,69674,0);d=x[e>>1]}d=(d&3)==3?d&-2:d}b=x[e+2>>1];if(d&4){break c}b=m?n?d&3?b:b&1?b&-2:b:b:b;break c}v[e>>2]=1;v[e+4>>2]=-1;d=1;b=0;break c}v[e>>2]=2;v[e+4>>2]=-1;d=2;b=0}u[z+2>>1]=b;u[z>>1]=d;v[z+4>>2]=v[e+4>>2];if(!(d&1)){n:{if(d&4){D=D+1|0;b=J;break n}b=d>>>1&1;E=b+E|0;F=!b+F|0;b=I}b=b+(p>>>3&536870908)|0;v[b>>2]=v[b>>2]|1<>2]=F;v[a+176>>2]=E;v[a+180>>2]=D;xa=e+48|0}function G4(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=xa-16|0;xa=j;k=xa-16|0;xa=k;i=a- -64|0;h=v[i+8>>2];l=v[i>>2];a:{if(h>>>0>>0){e=v[v[i+12>>2]+(v[i+4>>2]<<2)>>2];v[i+8>>2]=h+1;f=e+(h<<6)|0;break a}h=l<<6;b:{if(!h){break b}e=v[37696]+12|0;f=Ba[v[v[e>>2]+8>>2]](e,h,24422,13134,137)|0;l=v[i>>2]}v[k+12>>2]=f;h=v[i+4>>2]+1|0;v[i+4>>2]=h;if(l){e=B(h,l);while(1){f=v[k+12>>2]+(g<<6)|0;t[f+60|0]=0;v[f+56>>2]=e+g;v[f+48>>2]=0;v[f+52>>2]=0;v[f+40>>2]=0;v[f+44>>2]=-8388609;v[f+24>>2]=0;v[f+8>>2]=0;u[f+4>>1]=0;v[f>>2]=0;g=g+1|0;if((g|0)!=(l|0)){continue}break}}e=v[i+16>>2];c:{if(e>>>0>=(v[i+20>>2]&2147483647)>>>0){y4(i+12|0,k+12|0);h=v[i+4>>2];break c}v[v[i+12>>2]+(e<<2)>>2]=v[k+12>>2];v[i+16>>2]=e+1}f=v[v[i+12>>2]+(h<<2)>>2];v[i+8>>2]=1}xa=k+16|0;h=f;f=v[a+48>>2];e=v[a+40>>2];d:{if(f>>>0>>0){e=v[v[a+52>>2]+(v[a+44>>2]<<2)>>2];v[a+48>>2]=f+1;g=e+B(f,44)|0;break d}f=B(e,44);if(f){e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,f,24422,13134,137)|0}else{e=0}v[j+4>>2]=e;f=v[a+44>>2]+1|0;v[a+44>>2]=f;g=v[a+56>>2];e:{if(g>>>0>=(v[a+60>>2]&2147483647)>>>0){D4(a+52|0,j+4|0);f=v[a+44>>2];break e}v[v[a+52>>2]+(g<<2)>>2]=e;v[a+56>>2]=g+1}g=v[v[a+52>>2]+(f<<2)>>2];v[a+48>>2]=1}v[g+36>>2]=h;z[g>>2]=z[b>>2];z[g+4>>2]=z[b+4>>2];z[g+8>>2]=z[b+8>>2];v[g+20>>2]=v[b+20>>2];e=v[b+16>>2];v[g+12>>2]=v[b+12>>2];v[g+16>>2]=e;e=v[a+48>>2];b=v[a+40>>2];f:{if(e>>>0>>0){b=v[v[a+52>>2]+(v[a+44>>2]<<2)>>2];v[a+48>>2]=e+1;b=b+B(e,44)|0;break f}e=B(b,44);if(e){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,24422,13134,137)|0}else{b=0}v[j+8>>2]=b;f=v[a+44>>2]+1|0;v[a+44>>2]=f;e=v[a+56>>2];g:{if(e>>>0>=(v[a+60>>2]&2147483647)>>>0){D4(a+52|0,j+8|0);f=v[a+44>>2];break g}v[v[a+52>>2]+(e<<2)>>2]=b;v[a+56>>2]=e+1}b=v[v[a+52>>2]+(f<<2)>>2];v[a+48>>2]=1}v[b+36>>2]=h;z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];v[b+20>>2]=v[c+20>>2];e=v[c+16>>2];v[b+12>>2]=v[c+12>>2];v[b+16>>2]=e;e=v[a+48>>2];c=v[a+40>>2];h:{if(e>>>0>>0){c=v[v[a+52>>2]+(v[a+44>>2]<<2)>>2];v[a+48>>2]=e+1;c=c+B(e,44)|0;break h}e=B(c,44);if(e){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,13134,137)|0}else{c=0}v[j+12>>2]=c;f=v[a+44>>2]+1|0;v[a+44>>2]=f;e=v[a+56>>2];i:{if(e>>>0>=(v[a+60>>2]&2147483647)>>>0){D4(a+52|0,j+12|0);f=v[a+44>>2];break i}v[v[a+52>>2]+(e<<2)>>2]=c;v[a+56>>2]=e+1}c=v[v[a+52>>2]+(f<<2)>>2];v[a+48>>2]=1}v[c+36>>2]=h;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];a=v[d+16>>2];v[c+12>>2]=v[d+12>>2];v[c+16>>2]=a;v[c+20>>2]=v[d+20>>2];v[g+28>>2]=b;v[g+24>>2]=c;v[b+28>>2]=c;v[b+24>>2]=g;v[c+28>>2]=g;v[c+24>>2]=b;v[h+52>>2]=0;v[h>>2]=g;z4(h);xa=j+16|0;return h}function sF(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=xa-48|0;xa=g;h=a+16|0;l=e>>>7|0;a:{if((l|0)!=(v[a+24>>2]&2147483647)){break a}f=l<<1;f=f>>>0>256?f:256;if(f>>>0>l>>>0){pF(h,f)}if(f>>>0>(v[a+212>>2]&2147483647)>>>0){Aw(a+204|0,f)}if(f>>>0>(v[a+200>>2]&2147483647)>>>0){tF(a+192|0,f)}if(f>>>0>(v[a+188>>2]&2147483647)>>>0){Aw(a+180|0,f)}if(f>>>0<=(v[a+36>>2]&2147483647)>>>0){break a}Aw(a+28|0,f)}f=v[a+20>>2];v[g+16>>2]=0;v[g+20>>2]=0;v[g+8>>2]=-128;v[g+12>>2]=-128;v[g>>2]=-1;v[g+4>>2]=8;i=l+1|0;f=f>>>0>>0?i:f;if(f>>>0>(v[h+8>>2]&2147483647)>>>0){pF(h,f)}i=v[h+4>>2];if((i|0)<(f|0)){j=v[h>>2];k=j+B(f,24)|0;i=j+B(i,24)|0;while(1){j=v[g+4>>2];v[i>>2]=v[g>>2];v[i+4>>2]=j;j=v[g+20>>2];v[i+16>>2]=v[g+16>>2];v[i+20>>2]=j;j=v[g+12>>2];v[i+8>>2]=v[g+8>>2];v[i+12>>2]=j;i=i+24|0;if(k>>>0>i>>>0){continue}break}}v[h+4>>2]=f;v[g>>2]=0;cz(a+204|0,f,g);v[g>>2]=-128;uF(a+192|0,f,g);v[g>>2]=0;cz(a+180|0,f,g);v[g>>2]=0;cz(a+28|0,f,g);f=l<<2;v[f+v[a+28>>2]>>2]=33554431;i=v[a+16>>2]+B(l,24)|0;h=b^1;t[i+4|0]=c?h|4:h;t[i+5|0]=d;v[f+v[a+204>>2]>>2]=-1;v[f+v[a+192>>2]>>2]=-128;v[f+v[a+180>>2]>>2]=0;if(!c){c=v[a+4>>2];b:{if(c){c=c-1|0;f=v[v[a>>2]+(c<<2)>>2];v[a+4>>2]=c;break b}f=v[a+12>>2];v[a+12>>2]=f+1}i=a+88|0;c:{if((v[a+96>>2]&2147483647)!=(f|0)){break c}c=f<<1;c=c>>>0>256?c:256;if(c>>>0>f>>>0){vF(i,c)}h=c+31>>>5|0;if(h>>>0>(v[a+220>>2]&2147483647)>>>0){j=v[37696]+12|0;j=Ba[v[v[j>>2]+8>>2]](j,h<<2,24422,17999,438)|0;k=v[a+216>>2];d:{if(!k){break d}I9(j,k,v[a+220>>2]<<2);if(v[a+220>>2]<0){break d}k=v[a+216>>2];if(!k){break d}m=v[37696]+12|0;Ba[v[v[m>>2]+12>>2]](m,k)}k=v[a+220>>2];J9(j+(k<<2)|0,0,h-k<<2);v[a+220>>2]=h;v[a+216>>2]=j}if(c>>>0<=(v[a+108>>2]&2147483647)>>>0){break c}Aw(a+100|0,c)}h=v[a+92>>2];v[g+24>>2]=-1;v[g+28>>2]=-1;v[g+32>>2]=-1;v[g+16>>2]=-1;v[g+20>>2]=-1;v[g>>2]=-128;v[g+4>>2]=-128;v[g+36>>2]=0;v[g+40>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;c=f+1|0;wF(i,c>>>0>h>>>0?c:h,g);h=v[a+92>>2];v[g>>2]=0;cz(a+100|0,c>>>0>h>>>0?c:h,g);h=v[a+92>>2];j=c>>>0>h>>>0?c:h;h=j+32>>>5|0;e:{if(h>>>0<=(v[a+220>>2]&2147483647)>>>0){c=v[a+216>>2];break e}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,h<<2,24422,17999,438)|0;k=v[a+216>>2];f:{if(!k){break f}I9(c,k,v[a+220>>2]<<2);if(v[a+220>>2]<0){break f}k=v[a+216>>2];if(!k){break f}m=v[37696]+12|0;Ba[v[v[m>>2]+12>>2]](m,k)}k=v[a+220>>2];J9((k<<2)+c|0,0,h-k<<2);v[a+220>>2]=h;v[a+216>>2]=c}c=(j>>>3&536870908)+c|0;h=v[c>>2];n=c,o=Vaa(-2,j)&h,v[n>>2]=o;c=v[i>>2]+B(f,44)|0;v[c+4>>2]=e;v[c>>2]=e;v[(c+(d<<2)|0)+8>>2]=1;v[v[a+204>>2]+(l<<2)>>2]=f;v[v[a+100>>2]+(f<<2)>>2]=0}if(b){xF(a,e)}xa=g+48|0}function XK(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,x=C(0),A=C(0),D=C(0),E=C(0),F=0,G=0,H=0;v[a+40>>2]=b;v[a+36>>2]=j;v[a+32>>2]=i;if(!(d?c:0)){v[a+36>>2]=i;v[a+32>>2]=j;return}while(1){p=(o<<3)+e|0;n=v[p>>2];s=v[p+4>>2];while(1){p=k;k=k+1|0;l=v[(p<<3)+f>>2];if(l>>>0>>0){continue}break}if(l>>>0<=s>>>0){k=(o<<4)+g|0;x=z[k+12>>2];A=z[k+4>>2];D=z[k+8>>2];E=z[k>>2];n=p;while(1){k=(n<<4)+h|0;a:{if(E>z[k+8>>2]|D>2]|(x>2]|A>z[k+12>>2])){break a}m=v[a+28>>2];k=v[v[a+32>>2]+(o<<2)>>2];q=v[m+(k<<2)>>2];l=v[v[a+36>>2]+(n<<2)>>2];m=v[m+(l<<2)>>2];if((q|0)==(m|0)|!w[v[a+44>>2]+(q<<2&12|m&3)|0]){break a}q=k>>>0>>0?k:l;t=k>>>0>l>>>0?k:l;k=q&65535|t<<16;k=(k<<15^-1)+k|0;k=B(k>>>10^k,9);k=k>>>6^k;k=(k<<11^-1)+k|0;u=k>>>16^k;l=u&v[a+4>>2];b:{m=v[a+12>>2];c:{if(!m){break c}k=v[(l<<2)+m>>2];if((k|0)==-1){break c}G=v[a+16>>2];H=v[a+20>>2];while(1){r=(k<<3)+H|0;if((q|0)==(v[r>>2]&2147483647)){F=v[r+4>>2];if((t|0)==(F&2147483647)){break b}}k=v[(k<<2)+G>>2];if((k|0)!=-1){continue}break}}k=v[a+8>>2];if(k>>>0>=y[a>>2]){l=_H(a,u);m=v[a+12>>2];k=v[a+8>>2]}v[a+8>>2]=k+1;r=v[a+20>>2]+(k<<3)|0;v[r+4>>2]=t;v[r>>2]=q|-2147483648;l=(l<<2)+m|0;v[v[a+16>>2]+(k<<2)>>2]=v[l>>2];v[l>>2]=k;break a}v[r+4>>2]=F|-2147483648}n=n+1|0;if(s>>>0>=y[(n<<3)+f>>2]){continue}break}}if(d>>>0>p>>>0){k=p;o=o+1|0;if(o>>>0>>0){continue}}break}v[a+40>>2]=b;v[a+36>>2]=i;v[a+32>>2]=j;o=0;k=0;while(1){b=(o<<3)+f|0;i=v[b>>2];p=v[b+4>>2];while(1){b=k;k=k+1|0;j=v[(b<<3)+e>>2];if(j>>>0<=i>>>0){continue}break}if(j>>>0<=p>>>0){i=(o<<4)+h|0;x=z[i+12>>2];A=z[i+4>>2];D=z[i+8>>2];E=z[i>>2];n=b;while(1){i=(n<<4)+g|0;d:{if(E>z[i+8>>2]|D>2]|(x>2]|A>z[i+12>>2])){break d}k=v[a+28>>2];i=v[v[a+32>>2]+(o<<2)>>2];l=v[k+(i<<2)>>2];j=v[v[a+36>>2]+(n<<2)>>2];k=v[k+(j<<2)>>2];if((l|0)==(k|0)|!w[v[a+44>>2]+(l<<2&12|k&3)|0]){break d}s=i>>>0>>0?i:j;i=i>>>0>j>>>0?i:j;j=s&65535|i<<16;j=(j<<15^-1)+j|0;j=B(j>>>10^j,9);j=j>>>6^j;j=(j<<11^-1)+j|0;q=j>>>16^j;l=q&v[a+4>>2];e:{m=v[a+12>>2];f:{if(!m){break f}k=v[(l<<2)+m>>2];if((k|0)==-1){break f}t=v[a+16>>2];r=v[a+20>>2];while(1){j=r+(k<<3)|0;if((s|0)==(v[j>>2]&2147483647)){u=v[j+4>>2];if((i|0)==(u&2147483647)){break e}}k=v[t+(k<<2)>>2];if((k|0)!=-1){continue}break}}k=v[a+8>>2];if(k>>>0>=y[a>>2]){l=_H(a,q);m=v[a+12>>2];k=v[a+8>>2]}v[a+8>>2]=k+1;j=v[a+20>>2]+(k<<3)|0;v[j+4>>2]=i;v[j>>2]=s|-2147483648;i=(l<<2)+m|0;v[v[a+16>>2]+(k<<2)>>2]=v[i>>2];v[i>>2]=k;break d}v[j+4>>2]=u|-2147483648}n=n+1|0;if(p>>>0>=y[(n<<3)+e>>2]){continue}break}}if(b>>>0>>0){k=b;o=o+1|0;if(o>>>0>>0){continue}}break}}function H_(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=C(0),D=C(0),E=C(0),F=0,G=C(0);y=b<<2;s=xa-16|0;F=y+s|0;t=d+y|0;v=f+y|0;D=z[v>>2];z[F>>2]=z[t>>2]+D;w=c<<2;u=w+d|0;x=s+w|0;s=f+w|0;E=z[s>>2];m=C(z[u>>2]+E);z[x>>2]=m;x=a<<2;A=x+g|0;p=z[A>>2];w=e+w|0;k=z[w>>2];o=C(p*k);x=e+x|0;l=z[x>>2];q=C(m*l);a:{b:{c:{d:{n=z[F>>2];e=e+y|0;j=z[e>>2];e:{if(C(l*n)>=C(j*p)){if(o<=q){if(!h){break e}a=a<<2;z[a+d>>2]=z[a+f>>2];p=C(C(1)/z[x>>2]);z[t>>2]=z[t>>2]-C(C(z[A>>2]*z[e>>2])*p);z[u>>2]=z[u>>2]-C(C(z[A>>2]*z[w>>2])*p);z[h>>2]=p*C(-z[A>>2]);return}o=C(C(l*l)+C(k*k));l=C(l*p);k=C(m*k);q=C(C(o*n)-C(C(l+k)*j));if(q<=C(D*C(o+o))){r=k;k=C(q/o);n=C(n-k);l=C(r+C(l+C(j*n)));j=C(C(-l)/C(C(j*j)+o));z[i>>2]=C(C(l*j)+C(C(m*m)+C(C(p*p)+C(n*n))))+z[i>>2];if(!h){break e}break d}r=k;k=z[(b<<2)+g>>2];n=C(r+C(l+C(j*k)));j=C(C(-n)/C(C(j*j)+o));z[i>>2]=z[i>>2]+C(C(n*j)+C(C(m*m)+C(C(p*p)+C(k*k))));if(!h){break e}break c}if(o<=q){o=C(C(l*l)+C(j*j));j=C(C(l*p)+C(n*j));l=C(C(o*m)-C(j*k));if(l<=C(E*C(o+o))){l=C(l/o);m=C(m-l);q=C(C(k*m)+j);j=C(C(-q)/C(C(k*k)+o));z[i>>2]=C(C(q*j)+C(C(m*m)+C(C(p*p)+C(n*n))))+z[i>>2];if(!h){break e}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=-z[v>>2];z[u>>2]=l-z[s>>2];return}m=z[(c<<2)+g>>2];l=C(C(k*m)+j);j=C(C(-l)/C(C(k*k)+o));z[i>>2]=z[i>>2]+C(C(l*j)+C(C(m*m)+C(C(p*p)+C(n*n))));if(!h){break e}break b}G=C(l*l);q=C(k*k);o=C(G+q);r=C(l*p);B=C(m*k);l=C(C(o*n)-C(C(r+B)*j));if(l>=C(0)){if(l<=C(D*C(o+o))){k=C(l/o);n=C(n-k);l=C(B+C(r+C(j*n)));j=C(C(-l)/C(C(j*j)+o));z[i>>2]=C(C(l*j)+C(C(m*m)+C(C(p*p)+C(n*n))))+z[i>>2];if(!h){break e}break d}k=z[(b<<2)+g>>2];n=C(B+C(r+C(j*k)));j=C(C(-n)/C(C(j*j)+o));z[i>>2]=z[i>>2]+C(C(n*j)+C(C(m*m)+C(C(p*p)+C(k*k))));if(!h){break e}break c}l=C(G+C(j*j));j=C(r+C(n*j));o=C(C(l*m)-C(j*k));if(o>=C(0)){if(o<=C(E*C(l+l))){r=k;k=C(o/l);m=C(m-k);o=C(C(r*m)+j);j=C(C(-o)/C(q+l));z[i>>2]=C(C(o*j)+C(C(m*m)+C(C(p*p)+C(n*n))))+z[i>>2];if(!h){break e}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=-z[v>>2];z[u>>2]=k-z[s>>2];return}m=z[(c<<2)+g>>2];k=C(C(k*m)+j);j=C(C(-k)/C(q+l));z[i>>2]=z[i>>2]+C(C(k*j)+C(C(m*m)+C(C(p*p)+C(n*n))));if(!h){break e}break b}k=C(B+j);j=C(C(-k)/C(q+l));z[i>>2]=C(C(k*j)+C(C(m*m)+C(C(p*p)+C(n*n))))+z[i>>2];if(!h){break e}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=-z[v>>2];z[u>>2]=-z[s>>2]}return}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=k-z[v>>2];break a}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=z[v>>2];break a}z[h>>2]=j;a=a<<2;z[a+d>>2]=z[a+f>>2];z[t>>2]=-z[v>>2];z[u>>2]=z[s>>2];return}z[u>>2]=-z[s>>2]}function LD(a,b,c,d,e){var f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=0,r=0,s=0,u=0,w=0;k=xa-1056|0;xa=k;t[k+1040|0]=1;v[k+1048>>2]=256;v[k+1052>>2]=256;v[k+1044>>2]=k+16;s=v[c+8>>2];v[k+16>>2]=s;o=1;a:while(1){o=o-1|0;h=v[v[k+1044>>2]+(o<<2)>>2];f=z[h>>2];g=z[h+12>>2];j=C(f+g);f=C(g-f);l=z[h+8>>2];m=z[h+20>>2];g=C(l+m);n=z[h+4>>2];p=z[h+16>>2];i=C(n+p);l=C(m-l);m=C(p-n);while(1){b:{c:{n=C(j*C(.5));j=C(C(f*C(.5))+z[d+48>>2]);d:{if(!(z[d+96>>2]<=C(n+j))|!(z[d+112>>2]>=C(n-j))){break d}f=C(C(m*C(.5))+z[d+52>>2]);i=C(i*C(.5));p=C(z[d+4>>2]-i);n=C(z[d>>2]-n);m=C(C(p*z[d+16>>2])-C(n*z[d+32>>2]));if(!(C(C(j*z[d+80>>2])+C(f*z[d+64>>2]))>=(m>C(0)?m:C(-m)))|!(z[d+100>>2]<=C(i+f))|!(z[d+116>>2]>=C(i-f))){break d}m=C(f*z[d+84>>2]);f=C(C(l*C(.5))+z[d+56>>2]);g=C(g*C(.5));l=C(z[d+8>>2]-g);i=C(C(l*z[d+20>>2])-C(p*z[d+36>>2]));if(!(C(m+C(f*z[d+68>>2]))>=(i>C(0)?i:C(-i)))|!(z[d+104>>2]<=C(g+f))|!(z[d+120>>2]>=C(g-f))){break d}f=C(C(f*z[d+88>>2])+C(j*z[d+72>>2]));j=C(C(n*z[d+24>>2])-C(l*z[d+40>>2]));if(!(f>=(j>C(0)?j:C(-j)))){break d}h=v[h+24>>2];q=h>>>1|0;if(!(h&1)){break c}r=q&15;if(!r){break d}q=v[c>>2]+(h>>>3&536870908)|0;if((r|0)==1){if(Ba[v[v[e>>2]>>2]](e,k+12|0,(v[q>>2]<<3)+a|0)|0){break d}break b}while(1){u=v[q>>2];h=B(u,24)+b|0;j=z[h>>2];f=z[h+12>>2];g=C(C(j+f)*C(.5));j=C(C(C(f-j)*C(.5))+z[d+48>>2]);e:{if(!(z[d+96>>2]<=C(g+j))|!(z[d+112>>2]>=C(g-j))){break e}i=z[h+16>>2];l=z[h+4>>2];f=C(C(C(i-l)*C(.5))+z[d+52>>2]);i=C(C(l+i)*C(.5));l=C(z[d+4>>2]-i);m=C(z[d>>2]-g);g=C(C(l*z[d+16>>2])-C(m*z[d+32>>2]));if(!(C(C(j*z[d+80>>2])+C(f*z[d+64>>2]))>=(g>C(0)?g:C(-g)))|!(z[d+100>>2]<=C(i+f))|!(z[d+116>>2]>=C(i-f))){break e}p=C(f*z[d+84>>2]);g=z[h+20>>2];i=z[h+8>>2];f=C(C(C(g-i)*C(.5))+z[d+56>>2]);g=C(C(i+g)*C(.5));n=C(z[d+8>>2]-g);i=C(C(n*z[d+20>>2])-C(l*z[d+36>>2]));if(!(C(p+C(f*z[d+68>>2]))>=(i>C(0)?i:C(-i)))|!(z[d+104>>2]<=C(g+f))|!(z[d+120>>2]>=C(g-f))){break e}f=C(C(f*z[d+88>>2])+C(j*z[d+72>>2]));j=C(C(m*z[d+24>>2])-C(n*z[d+40>>2]));if(!(f>=(j>C(0)?j:C(-j)))){break e}if(!(Ba[v[v[e>>2]>>2]](e,k+12|0,(u<<3)+a|0)|0)){break b}}q=q+4|0;r=r-1|0;if(r){continue}break}}w=!o;if(o){continue a}break b}h=B(q,28)+s|0;v[v[k+1044>>2]+(o<<2)>>2]=h+28;o=o+1|0;if((o|0)==(v[k+1052>>2]&2147483647)){OD(k+16|0,o<<1)}f=z[h>>2];g=z[h+12>>2];j=C(f+g);f=C(g-f);l=z[h+8>>2];m=z[h+20>>2];g=C(l+m);n=z[h+4>>2];p=z[h+16>>2];i=C(n+p);l=C(m-l);m=C(p-n);continue}break}break}a=v[k+1052>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[k+1044>>2];if((a|0)==(k+16|0)|!a){break f}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=k+1056|0;return w}function yJ(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=xa+-64|0;xa=h;n=w[b+24|0];if(n>>>0<=2){k=v[b+32>>2];l=v[b+28>>2];a:{if(c){g=x[c>>1];u[h+56>>1]=g;i=x[c+2>>1];c=v[c+4>>2];v[h+60>>2]=c;if((g&13)==13){nJ(v[a>>2],l,k,c,0);j=v[a+108>>2];v[v[j>>2]+(c<<2)>>2]=v[j+12>>2];v[j+12>>2]=c;v[h+60>>2]=-1;c=-1}m=v[k+4>>2];m=w[v[m+44>>2]+9|0]-1>>>0<2?m:0;j=v[l+4>>2];j=w[v[j+44>>2]+9|0]-1>>>0<2?j:0;if(!(!j|g&3|(!m|!(t[v[j+44>>2]+44|0]&1)))){i=t[v[m+44>>2]+44|0]&1?i&1?i&-2:i:i}u[h+58>>1]=i;break a}c=-1;if(w[b+25|0]&16){c=v[b+36>>2];nJ(v[a>>2],l,k,c,0)}i=v[a+108>>2];g=v[a>>2];v[h+24>>2]=v[g+2184>>2];v[h+28>>2]=v[g+2172>>2];v[h+32>>2]=v[g+2176>>2];j=v[g+2188>>2];v[h+40>>2]=i;v[h+36>>2]=j;v[h+44>>2]=v[g+2192>>2];v[h+48>>2]=v[g+2196>>2];fJ(h+8|0,h+24|0,l,k,c,h+23|0,1);g=x[h+8>>1];u[h+56>>1]=g;i=x[h+10>>1];u[h+58>>1]=i;c=v[h+12>>2];v[h+60>>2]=c}j=w[b+25|0];b:{if(!(j&16)|(g&12)==12){break b}t[b+25|0]=j&239;if((c|0)==-1){break b}j=v[a+108>>2];v[v[j>>2]+(c<<2)>>2]=v[j+12>>2];v[j+12>>2]=c;v[h+60>>2]=-1}c=6;c:{if(g&1){break c}c=2;if(g&2){break c}c=1;if(w[v[l+28>>2]- -64|0]&4){break c}c=w[v[k+28>>2]- -64|0]>>>2&1}d:{if((c|0)!=w[b+24|0]){l=xa-16|0;xa=l;i=v[b+32>>2];k=v[b+28>>2];g=v[b+4>>2];if(!(w[v[g+44>>2]+9|0]!=1|y[g+152>>2]<4294967294)){pH(g)}g=v[b+8>>2];if(!(w[v[g+44>>2]+9|0]!=1|y[g+152>>2]<4294967294)){pH(g)}t[b+25|0]=w[b+25|0]&239;g=0;mJ(a,b,5,0,d,e,f);e:{f:{switch(c|0){case 2:b=v[a+1860>>2];if(!b){sJ(a+1572|0);b=v[a+1860>>2]}v[a+1860>>2]=v[b>>2];c=a+1852|0;v[c>>2]=v[c>>2]+1;g=tJ(b,k,i,0);break e;case 0:u[l+8>>1]=x[h+58>>1];g=qJ(a,k,i,l+8|0,0,0);break e;case 1:break f;default:break e}}c=w[v[i+28>>2]- -64|0];d=x[h+58>>1];b=v[a+1276>>2];if(!b){rJ(a+988|0);b=v[a+1276>>2]}v[a+1276>>2]=v[b>>2];e=a+1268|0;v[e>>2]=v[e>>2]+1;e=b;b=c&4;g=oS(e,b?i:k,b?k:i);u[g+56>>1]=x[g+56>>1]&65504|d&20}b=v[h+60>>2];if((b|0)!=-1){t[g+25|0]=w[g+25|0]|16;v[v[v[a+108>>2]>>2]+(b<<2)>>2]=g;v[g+36>>2]=b}xa=l+16|0;b=g;break d}g:{switch(n|0){case 0:c=i&65535;e=v[b+44>>2];h:{if((c|0)==(e&32767)){break h}i:{if(!(c&476)|e&476){break i}d=v[b+48>>2];if(t[d|0]&1?d:0){break i}d=wJ(a,l,k,1);if(v[b+48>>2]){break i}u[d+4>>1]=x[d+4>>1]+1;v[b+48>>2]=d}j:{if(c&8){break j}d=v[b+44>>2];if(!(d&6291456)){break j}if(d&2097152){zJ(a,b);break j}v[b+44>>2]=d&-4194305}if(c&448){if(!(w[b+45|0]&128)|(!(w[b+25|0]&32)|v[b+52>>2]!=-1)){break h}AJ(a,b);break h}if(!(e&448)){break h}c=v[b+44>>2];v[b+44>>2]=c&-1572865;if(!(c&8388608)){break h}BJ(a,b)}v[b+44>>2]=v[b+44>>2]&-32768|i&32767;break d;case 1:break g;default:break d}}u[b+56>>1]=x[b+56>>1]&65504|i&20}g=b}xa=h- -64|0;return g}function GA(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0,o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=0,Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0);EA(a);c=v[a+124>>2];m=v[a+92>>2];n=v[a+28>>2];o=v[a+60>>2];a:{if(!(m|(n|o))){if(!c){break a}}b=v[a+24>>2];B=v[b+4>>2];if(B){X=w[b|0]==9?368:272;a=b+160|0;while(1){d=w[a+268|0]&2?z[a+252>>2]:C(0);D=C(D+C(d*z[a+140>>2]));p=w[a+264|0]&2?z[a+248>>2]:C(0);E=C(E+C(p*z[a+136>>2]));q=w[a+260|0]&2?z[a+244>>2]:C(0);F=C(F+C(q*z[a+132>>2]));G=C(G+C(d*z[a+124>>2]));H=C(H+C(p*z[a+120>>2]));I=C(I+C(q*z[a+116>>2]));J=C(J+C(d*z[a+108>>2]));L=C(L+C(p*z[a+104>>2]));M=C(M+C(q*z[a+100>>2]));r=C(r+C(d*z[a+44>>2]));f=C(f+C(p*z[a+40>>2]));e=C(e+C(q*z[a+36>>2]));s=C(s+C(d*z[a+28>>2]));g=C(g+C(p*z[a+24>>2]));h=C(h+C(q*z[a+20>>2]));t=C(t+C(d*z[a+12>>2]));u=C(u+C(p*z[a+8>>2]));i=C(i+C(q*z[a+4>>2]));d=w[a+256|0]&2?z[a+240>>2]:C(0);x=C(x+C(d*z[a+128>>2]));y=C(y+C(d*z[a+112>>2]));A=C(A+C(d*z[a+96>>2]));j=C(j+C(d*z[a+32>>2]));k=C(k+C(d*z[a+16>>2]));l=C(l+C(d*z[a>>2]));a=a+X|0;N=N+1|0;if((B|0)!=(N|0)){continue}break}}d=z[b+124>>2];p=z[b+156>>2];q=z[b+140>>2];Y=z[b+44>>2];Z=z[b+28>>2];O=z[b+120>>2];P=z[b+152>>2];Q=z[b+136>>2];_=z[b+40>>2];$=z[b+24>>2];R=z[b+116>>2];S=z[b+148>>2];T=z[b+132>>2];aa=z[b+36>>2];ba=z[b+20>>2];if(n){ca=z[b+16>>2];da=z[b+32>>2];U=z[b+144>>2];V=z[b+112>>2];W=z[b+128>>2];z[n+8>>2]=j;z[n+4>>2]=k;z[n>>2]=l;x=C(x-C(C(k*V)-C(l*W)));z[n+24>>2]=x;y=C(y-C(C(l*U)-C(j*V)));z[n+20>>2]=y;A=C(A-C(C(j*W)-C(k*U)));z[n+16>>2]=A;v[n+12>>2]=(C(K(C(C(x*x)+C(C(y*y)+C(A*A)))))>da|C(K(C(C(j*j)+C(C(k*k)+C(l*l)))))>ca)&w[b+12|0]!=0}if(o){j=C(M-C(C(e*T)-C(h*S)));z[o+16>>2]=j;z[o+8>>2]=e;z[o+4>>2]=h;z[o>>2]=i;k=C(F-C(C(h*R)-C(i*T)));z[o+24>>2]=k;l=C(I-C(C(i*S)-C(e*R)));z[o+20>>2]=l;v[o+12>>2]=(C(K(C(C(k*k)+C(C(j*j)+C(l*l)))))>aa|C(K(C(C(e*e)+C(C(h*h)+C(i*i)))))>ba)&w[b+13|0]!=0}if(m){e=C(L-C(C(f*Q)-C(g*P)));z[m+16>>2]=e;z[m+8>>2]=f;z[m+4>>2]=g;z[m>>2]=u;h=C(E-C(C(g*O)-C(u*Q)));z[m+24>>2]=h;i=C(H-C(C(u*P)-C(f*O)));z[m+20>>2]=i;v[m+12>>2]=(C(K(C(C(h*h)+C(C(e*e)+C(i*i)))))>_|C(K(C(C(f*f)+C(C(g*g)+C(u*u)))))>$)&w[b+14|0]!=0}if(!c){break a}f=C(J-C(C(r*q)-C(s*p)));z[c+16>>2]=f;z[c+8>>2]=r;z[c+4>>2]=s;z[c>>2]=t;e=C(D-C(C(s*d)-C(t*q)));z[c+24>>2]=e;g=C(G-C(C(t*p)-C(r*d)));z[c+20>>2]=g;v[c+12>>2]=(C(K(C(C(e*e)+C(C(f*f)+C(g*g)))))>Y|C(K(C(C(r*r)+C(C(s*s)+C(t*t)))))>Z)&w[b+15|0]!=0}}function yM(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=0,j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0);a=(v[a>>2]<<5)+b|0;h=v[a+124>>2];i=v[a+92>>2];j=v[a+28>>2];k=v[a+60>>2];a:{if(!(i|(j|k))){if(!h){break a}}c=v[a+24>>2];D=v[c+4>>2];if(D){a=c+640|0;b=0;while(1){f=w[a+352|0]&2?z[a+304>>2]:C(0);l=C(l+C(f*z[a+160>>2]));E=C(E+C(f*z[a+144>>2]));e=w[a+364|0]&2?z[a+316>>2]:C(0);F=C(F+C(e*z[a+172>>2]));d=w[a+360|0]&2?z[a+312>>2]:C(0);G=C(G+C(d*z[a+168>>2]));g=w[a+356|0]&2?z[a+308>>2]:C(0);H=C(H+C(g*z[a+164>>2]));I=C(I+C(e*z[a+156>>2]));J=C(J+C(d*z[a+152>>2]));L=C(L+C(g*z[a+148>>2]));M=C(M+C(e*z[a+140>>2]));N=C(N+C(d*z[a+136>>2]));O=C(O+C(g*z[a+132>>2]));o=C(o+C(e*z[a+44>>2]));p=C(p+C(d*z[a+40>>2]));m=C(m+C(g*z[a+36>>2]));q=C(q+C(e*z[a+28>>2]));r=C(r+C(d*z[a+24>>2]));s=C(s+C(g*z[a+20>>2]));t=C(t+C(e*z[a+12>>2]));u=C(u+C(d*z[a+8>>2]));x=C(x+C(g*z[a+4>>2]));P=C(P+C(f*z[a+128>>2]));n=C(n+C(f*z[a+32>>2]));y=C(y+C(f*z[a+16>>2]));A=C(A+C(f*z[a>>2]));a=a+368|0;b=b+1|0;if((D|0)!=(b|0)){continue}break}}g=z[c+140>>2];Q=z[c+156>>2];R=z[c+124>>2];S=z[c+44>>2];T=z[c+28>>2];U=z[c+136>>2];V=z[c+152>>2];W=z[c+120>>2];X=z[c+40>>2];Y=z[c+24>>2];Z=z[c+132>>2];_=z[c+148>>2];$=z[c+116>>2];aa=z[c+36>>2];ba=z[c+20>>2];if(j){e=z[c+128>>2];f=z[c+144>>2];ca=z[c+16>>2];da=z[c+32>>2];d=z[c+112>>2];z[j+8>>2]=n;z[j+4>>2]=y;z[j>>2]=A;B=l;d=C(y*d);l=C(A*f);f=C(B-C(d-l));z[j+24>>2]=f;B=l;l=C(n*e);e=C(E-C(B-l));z[j+20>>2]=e;d=C(P-C(l-d));z[j+16>>2]=d;v[j+12>>2]=(C(K(C(C(f*f)+C(C(e*e)+C(d*d)))))>da|C(K(C(C(n*n)+C(C(y*y)+C(A*A)))))>ca)&w[c+12|0]!=0}if(k){d=C(m*Z);e=C(s*$);f=C(O-C(d-e));z[k+16>>2]=f;z[k+8>>2]=m;z[k+4>>2]=s;z[k>>2]=x;n=C(x*_);e=C(H-C(e-n));z[k+24>>2]=e;d=C(L-C(n-d));z[k+20>>2]=d;v[k+12>>2]=(C(K(C(C(e*e)+C(C(f*f)+C(d*d)))))>aa|C(K(C(C(m*m)+C(C(s*s)+C(x*x)))))>ba)&w[c+13|0]!=0}if(i){d=C(p*U);e=C(r*W);f=C(N-C(d-e));z[i+16>>2]=f;z[i+8>>2]=p;z[i+4>>2]=r;z[i>>2]=u;m=C(u*V);e=C(G-C(e-m));z[i+24>>2]=e;d=C(J-C(m-d));z[i+20>>2]=d;v[i+12>>2]=(C(K(C(C(e*e)+C(C(f*f)+C(d*d)))))>X|C(K(C(C(p*p)+C(C(r*r)+C(u*u)))))>Y)&w[c+14|0]!=0}if(!h){break a}d=C(o*g);e=C(q*R);f=C(M-C(d-e));z[h+16>>2]=f;z[h+8>>2]=o;z[h+4>>2]=q;z[h>>2]=t;g=C(t*Q);e=C(F-C(e-g));z[h+24>>2]=e;d=C(I-C(g-d));z[h+20>>2]=d;v[h+12>>2]=(C(K(C(C(e*e)+C(C(f*f)+C(d*d)))))>S|C(K(C(C(o*o)+C(C(q*q)+C(t*t)))))>T)&w[c+15|0]!=0}}function qR(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,y=0,z=0,A=0;b=v[a+28>>2];t=v[a+20>>2];a=0;d=xa-48|0;xa=d;q=v[b+4712>>2];r=v[v[b+980>>2]+304>>2];c=v[b+4708>>2];if(c){while(1){if(v[c+180>>2]){f=v[v[b+2168>>2]+108>>2];v[d+16>>2]=v[b+2184>>2];v[d+20>>2]=v[b+2172>>2];v[d+24>>2]=v[b+2176>>2];e=v[b+2188>>2];v[d+32>>2]=f;v[d+28>>2]=e;v[d+36>>2]=v[b+2192>>2];v[d+40>>2]=v[b+2196>>2];f=0;while(1){j=(f<<2)+c|0;e=v[j+104>>2];if(e){n=f<<5;while(1){g=v[c+32>>2];m=Raa(e);o=m|n;l=g+B(o,12)|0;g=v[l+4>>2];i=v[l>>2];l=v[i+4>>2];k=g;g=v[g+4>>2];cJ(d+8|0,d+16|0,i,k,w[v[l+44>>2]+9|0]-1>>>0<2?l:0,w[v[g+44>>2]+9|0]-1>>>0<2?g:0,-1,1);g=v[c+168>>2]+(o<<3)|0;u[g>>1]=x[d+8>>1];u[g+2>>1]=x[d+10>>1];v[g+4>>2]=v[d+12>>2];g=x[d+8>>1];if(!(g&1)){a:{if(!(g&2)){v[c+172>>2]=v[c+172>>2]+1;break a}v[c+176>>2]=v[c+176>>2]+1}v[j+40>>2]=v[j+40>>2]|1<>2]+a|0;h=v[c+172>>2]+h|0;c=v[c+184>>2];if(c){continue}break}}c=h+1|0;if(c>>>0>(v[b+4680>>2]&2147483647)>>>0){vP(b+4672|0,c)}if(c>>>0>(v[b+4692>>2]&2147483647)>>>0){wP(b+4684|0,c)}c=a+1|0;if(c>>>0>(v[b+4704>>2]&2147483647)>>>0){xP(b+4696|0,c)}v[b+4700>>2]=a;v[b+4688>>2]=h;v[b+4676>>2]=h;g=v[b+4672>>2];l=v[b+4684>>2];n=v[b+4696>>2];o=v[v[b+976>>2]+1156>>2];a=wr(o,56);f=v[b+2168>>2];e=v[b+16>>2];h=v[b+20>>2];c=0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=e;v[a+12>>2]=h;v[a+52>>2]=0;v[a+48>>2]=n;v[a+44>>2]=l;v[a+40>>2]=g;v[a+36>>2]=q;v[a+32>>2]=r;v[a+28>>2]=f;v[a>>2]=135564;v[d+16>>2]=0;v[d+8>>2]=0;f=v[b+4708>>2];b:{if(!f){break b}m=0;j=0;while(1){c:{if(!(v[f+176>>2]?1:v[f+172>>2])){break c}h=0;while(1){e=v[((h<<2)+f|0)+40>>2];if(e){z=h<<5;while(1){i=Raa(e)|z;if(i+y>>>0>c>>>0){p=v[f+32>>2]+B(i,12)|0;A=v[p+4>>2];k=B(c,12)+r|0;v[k>>2]=v[p>>2];v[k+4>>2]=A;v[k+8>>2]=v[p+8>>2];k=(c<<3)+q|0;i=v[f+168>>2]+(i<<3)|0;u[k>>1]=x[i>>1];u[k+2>>1]=x[i+2>>1];v[k+4>>2]=v[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=v[f+172>>2]+m|0;s=v[f+176>>2]+s|0;if(j>>>0<=255){break c}XP(m,d+8|0,s,d+16|0,j,v[b+976>>2],v[b+2168>>2],a,t,g,l,n);a=wr(o,56);e=v[b+2168>>2];h=v[b+16>>2];i=v[b+20>>2];k=v[d+8>>2];p=v[d+16>>2];j=0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=h;v[a+12>>2]=i;v[a+52>>2]=0;v[a+36>>2]=(c<<3)+q;v[a+32>>2]=B(c,12)+r;v[a+28>>2]=e;v[a>>2]=135564;v[a+48>>2]=n+(p<<2);e=k<<2;v[a+44>>2]=e+l;v[a+40>>2]=e+g}y=y+512|0;f=v[f+184>>2];if(f){continue}break}if(!j){break b}XP(m,d+8|0,s,d+16|0,j,v[b+976>>2],v[b+2168>>2],a,t,g,l,n)}xa=d+48|0}function MW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0;f=xa-400|0;xa=f;p=v[c+32>>2];L=C(1);F=C(0);a:{if(!e){break a}F=C(0);if(x[e+12>>1]!=2){break a}L=z[e+8>>2];Q=z[e+4>>2];F=z[e>>2]}I=z[a+4>>2];J=z[a+8>>2];g=z[c+8>>2];q=z[c+12>>2];r=z[c+4>>2];v[f+396>>2]=0;z[f+392>>2]=q;z[f+388>>2]=g;z[f+384>>2]=r;a=v[c+16>>2];R=v[c+20>>2];S=v[c+28>>2];v[f+376>>2]=v[c+24>>2];v[f+380>>2]=S;v[f+368>>2]=a;v[f+372>>2]=R;G=z[d+20>>2];E=z[b+20>>2];k=z[d+24>>2];H=z[b+24>>2];s=z[d+16>>2];K=z[b+16>>2];n=z[b>>2];o=z[d+4>>2];l=z[b+4>>2];y=z[d>>2];j=z[b+8>>2];h=z[d+12>>2];D=z[b+12>>2];A=z[d+8>>2];t[f+240|0]=0;v[f+232>>2]=0;v[f+236>>2]=0;v[f+224>>2]=0;v[f+228>>2]=0;v[f+216>>2]=0;v[f+220>>2]=0;v[f+208>>2]=0;v[f+212>>2]=0;v[f+352>>2]=p+16;v[f+360>>2]=v[p+56>>2]+B(w[p+55|0],20);t[f+364|0]=w[p+54|0];i=C(r*z[p+68>>2]);m=C(g*z[p+72>>2]);i=i<=m?i:m;m=C(q*z[p+76>>2]);i=i<=m?i:m;z[f+232>>2]=i*C(.02500000037252903);z[f+224>>2]=i*C(.10000000149011612);z[f+228>>2]=i*C(.05000000074505806);a=f+208|0;GV(f+384|0,f+368|0,f+256|0,f+304|0,a,r==C(1)&g==C(1)&q==C(1));v[f+356>>2]=v[p+60>>2];v[f+188>>2]=0;v[f+172>>2]=0;g=C(K-s);q=C(g+g);g=C(E-G);r=C(g+g);g=C(H-k);i=C(g+g);G=C(C(C(C(-y)*q)-C(r*o))-C(A*i));H=C(C(h*h)+C(-.5));E=C(C(C(i*H)+C(h*C(C(o*q)-C(y*r))))-C(A*G));z[f+120>>2]=E;g=C(C(n*o)+C(C(C(h*j)-C(D*A))-C(y*l)));s=C(C(l*A)+C(C(C(h*n)-C(D*y))-C(o*j)));k=C(s+s);K=C(g*k);m=C(C(A*j)+C(C(o*l)+C(C(h*D)+C(y*n))));l=C(C(j*y)+C(C(C(h*l)-C(D*o))-C(A*n)));j=C(l+l);D=C(m*j);s=C(C(1)-C(s*k));M=C(l*j);n=C(J*C(0));N=C(m*k);O=C(g*j);P=C(C(C(s-M)*n)+C(C(J*C(K-D))+C(n*C(N+O))));z[f+184>>2]=E-P;j=C(C(C(r*H)+C(h*C(C(y*i)-C(A*q))))-C(o*G));z[f+116>>2]=j;l=C(k*l);k=C(g+g);m=C(m*k);g=C(g*k);k=C(C(C(O-N)*n)+C(C(J*C(l+m))+C(n*C(s-g))));z[f+180>>2]=j-k;z[f+168>>2]=E+P;z[f+164>>2]=j+k;z[f+192>>2]=I;v[f+124>>2]=0;v[f+140>>2]=4;t[f+144|0]=1;z[f+136>>2]=I;z[f+132>>2]=I;z[f+128>>2]=I;h=C(C(C(q*H)+C(h*C(C(A*r)-C(o*i))))-C(y*G));z[f+112>>2]=h;o=C(C(C(K+D)*n)+C(C(J*C(C(C(1)-M)-g))+C(n*C(l-m))));z[f+176>>2]=h-o;z[f+160>>2]=h+o;v[f+40>>2]=141148;v[f+44>>2]=f+112;v[f+32>>2]=141216;v[f+36>>2]=a;v[f+28>>2]=0;z[f+24>>2]=E-z[f+216>>2];z[f+20>>2]=j-z[f+212>>2];z[f+16>>2]=h-z[f+208>>2];v[f>>2]=0;a=HV(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)){z[e+8>>2]=L;z[e+4>>2]=Q;z[e>>2]=F}if(e){u[e+12>>1]=((a|0)==2)<<1}xa=f+400|0;return(a|0)==2|0}function JC(a,b,c,d,e,f){var g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=0,s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=0,E=0,F=0,G=0;p=xa-32|0;xa=p;h=v[a+584>>2];if(!h){KC(a+296|0);h=v[a+584>>2]}v[a+584>>2]=v[h>>2];v[a+576>>2]=v[a+576>>2]+1;G=h+48|0;j=v[a+292>>2];if(!j){LC(a+4|0);j=v[a+292>>2]}v[a+292>>2]=v[j>>2];v[a+284>>2]=v[a+284>>2]+1;i=z[b+20>>2];k=z[b+24>>2];l=z[d>>2];m=z[b>>2];n=z[e>>2];o=z[b+16>>2];s=z[d+4>>2];t=z[b+4>>2];u=z[e+4>>2];w=z[d+8>>2];x=z[b+8>>2];y=z[e+8>>2];A=z[b+12>>2];q=z[d+12>>2];A=q>A?A:q;q=z[b+28>>2];g=z[e+12>>2];q=g>2]=C(A+q)*C(.5);w=w>x?x:w;x=k>y?k:y;z[p+24>>2]=C(w+x)*C(.5);s=s>t?t:s;t=i>u?i:u;z[p+20>>2]=C(s+t)*C(.5);u=l>m?m:l;y=n>2]=C(u+y)*C(.5);i=C(y-u);z[p>>2]=i;k=C(t-s);z[p+4>>2]=k;d=i>2];v[h+80>>2]=b;v[h+32>>2]=b;e=v[b+36>>2];v[h+88>>2]=0;v[h+84>>2]=j;v[h+40>>2]=0;v[h+36>>2]=e;v[j>>2]=0;a:{b:{c:{a=v[e>>2];d:{if(!a){break d}r=i>2];while(1){a=a-1|0;D=e+(a<<2)|0;E=v[D+4>>2];F=d+(B(E,24)+f|0)|0;if(i>=C(C(z[F>>2]+z[F+12>>2])*C(.5))){F=v[j>>2];v[j>>2]=F+1;v[((F<<2)+j|0)+4>>2]=E;E=v[e>>2]-1|0;v[e>>2]=E;v[D+4>>2]=v[(e+(E<<2)|0)+4>>2]}if(a){continue}break}a=v[e>>2];if(!a){break d}d=v[j>>2];if((d|0)!=4){break c}}v[e>>2]=1;a=e+4|0;break b}if((a|0)==4){v[j>>2]=1;a=j+4|0;d=G;break a}D=r<<2;r=D+(B(c,24)+f|0)|0;if(z[(D|p+16)>>2]>=C(C(z[r>>2]+z[r+12>>2])*C(.5))){v[j>>2]=d+1;a=((d<<2)+j|0)+4|0;d=G;break a}v[e>>2]=a+1;a=(e+(a<<2)|0)+4|0}d=h}r=d;v[a>>2]=c;d=1;a=B(v[e+4>>2],24)+f|0;i=z[a+12>>2];k=z[a+8>>2];l=z[a+4>>2];m=z[a>>2];n=z[a+20>>2];o=z[a+16>>2];c=v[e>>2];if(c>>>0>1){while(1){a=B(v[(e+(d<<2)|0)+4>>2],24)+f|0;g=z[a+12>>2];i=g>2];k=g>k?k:g;g=z[a+4>>2];l=g>l?l:g;g=z[a>>2];m=g>m?m:g;g=z[a+20>>2];n=g>2];o=g>2]=i;v[h+12>>2]=0;z[h+8>>2]=k;z[h+4>>2]=l;z[h>>2]=m;v[h+28>>2]=0;z[h+24>>2]=n;z[h+20>>2]=o;e=1;a=B(v[j+4>>2],24)+f|0;i=z[a+12>>2];k=z[a+8>>2];l=z[a+4>>2];m=z[a>>2];n=z[a+20>>2];o=z[a+16>>2];c=v[j>>2];if(c>>>0>1){while(1){a=B(v[((e<<2)+j|0)+4>>2],24)+f|0;g=z[a+12>>2];i=g>2];k=g>k?k:g;g=z[a+4>>2];l=g>l?l:g;g=z[a>>2];m=g>m?m:g;g=z[a+20>>2];n=g>2];o=g>2]=m;v[h+76>>2]=0;z[h+72>>2]=n;z[h+68>>2]=o;z[h- -64>>2]=i;v[h+60>>2]=0;z[h+56>>2]=k;z[h+52>>2]=l;v[b+40>>2]=G;v[b+36>>2]=h;z[b+28>>2]=q;z[b+24>>2]=x;z[b+20>>2]=t;z[b+16>>2]=y;z[b+12>>2]=A;z[b+8>>2]=w;z[b+4>>2]=s;z[b>>2]=u;MC(b);xa=p+32|0;return r}function Y2(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,y=0;g=xa-352|0;xa=g;v[g+304>>2]=v[b+32>>2];e=v[b+28>>2];v[g+296>>2]=v[b+24>>2];v[g+300>>2]=e;e=v[b+20>>2];v[g+288>>2]=v[b+16>>2];v[g+292>>2]=e;e=v[b+12>>2];v[g+280>>2]=v[b+8>>2];v[g+284>>2]=e;e=v[b+4>>2];v[g+272>>2]=v[b>>2];v[g+276>>2]=e;e=x[b+36>>1];u[g+308>>1]=e;f=x[b+38>>1]|x[b+40>>1]<<16;u[g+310>>1]=f;u[g+312>>1]=f>>>16;b=0;if(e&2){if(e&128){b=f&65535;u[g+310>>1]=b>>>0<64?b:64}b=v[37696];e=Ba[v[v[b>>2]+20>>2]](b)|0?46147:63804;b=M4(Ba[v[v[b+12>>2]+8>>2]](b+12|0,48,e,10899,331)|0,g+272|0,a+4|0)}e=e4(g+120|0,w[a+18|0]);a:{if(!W2(a,g+272|0,e,b,d)){a=0;if(!b){break a}Ba[v[v[b>>2]+4>>2]](b);break a}u[g+44>>1]=0;m=xa-16|0;xa=m;v[m+12>>2]=0;a=g+8|0;j=v[e+28>>2];k=w[j+38|0];t[a+38|0]=k;o=x[j+36>>1]&32767;f=o|w[e+32|0]<<15;u[a+36>>1]=f;p=w[j+39|0];t[a+39|0]=p;n=f<<16>>16;i=w[j+39|0];b:{if(!i){break b}h=v[e+4>>2];f=0;if(i-1>>>0>=3){y=i&252;while(1){l=w[(h+B(f|3,20)|0)+18|0]+(w[(h+B(f|2,20)|0)+18|0]+(w[(h+B(f|1,20)|0)+18|0]+(w[(h+B(f,20)|0)+18|0]+l|0)|0)|0)|0;f=f+4|0;q=q+4|0;if((y|0)!=(q|0)){continue}break}}i=i&3;if(!i){break b}while(1){l=w[(h+B(f,20)|0)+18|0]+l|0;f=f+1|0;r=r+1|0;if((i|0)!=(r|0)){continue}break}}v[m+12>>2]=l;f=B(p,20);h=((f+(B(k,15)+(o<<1)|0)|0)+((n|0)>=0?0:o<<2)|0)+l|0;i=h&3;h=(i?4-i|0:0)+h|0;if(h){f=v[37696];s=Ba[v[v[f+12>>2]+8>>2]](f+12|0,h,24422,9064,448)|0;k=w[a+38|0];j=v[e+28>>2];n=x[a+36>>1];f=B(w[a+39|0],20)}v[a+40>>2]=s;f=I9(f+s|0,v[e>>2],B(w[j+38|0],12));I9(v[a+40>>2],v[e+4>>2],B(w[a+39|0],20));i=B(k,3);h=f+B(k,12)|0;j=n&32767;k=h+(j<<1)|0;f=i+k|0;I9(f+(n<<16>>16>=0?0:j<<2)|0,v[e+8>>2],l);I9(h,v[e+12>>2],x[v[e+28>>2]+36>>1]<<1&65534);if(w[e+32|0]){I9(f,v[e+24>>2],(x[v[e+28>>2]+36>>1]&32767)<<2)}I9(k,v[e+16>>2],B(w[v[e+28>>2]+38|0],3));v[a+64>>2]=v[m+12>>2];z[a+72>>2]=z[e+116>>2];z[a+76>>2]=z[e+120>>2];z[a+80>>2]=z[e+124>>2];z[a+84>>2]=z[e+128>>2];z[a+88>>2]=z[e+132>>2];z[a+92>>2]=z[e+136>>2];z[a+96>>2]=z[e+140>>2];z[a+100>>2]=z[e+144>>2];z[a+104>>2]=z[e+148>>2];z[a+68>>2]=z[e+112>>2];z[a>>2]=z[e+44>>2];z[a+4>>2]=z[e+48>>2];z[a+8>>2]=z[e+52>>2];z[a+12>>2]=z[e+56>>2];z[a+16>>2]=z[e+60>>2];z[a+20>>2]=z[e- -64>>2];z[a+24>>2]=z[e+68>>2];z[a+28>>2]=z[e+72>>2];z[a+32>>2]=z[e+76>>2];f=v[e+108>>2];if(f){v[e+108>>2]=0}v[a+108>>2]=f;v[a+44>>2]=f;z[a+48>>2]=z[e+92>>2];z[a+52>>2]=z[e+96>>2];z[a+56>>2]=z[e+100>>2];z[a+60>>2]=z[e+104>>2];xa=m+16|0;a=Ba[v[v[c>>2]>>2]](c,2,a)|0;if(!(a|!d)){v[d>>2]=3}if(!b){break a}Ba[v[v[b>>2]+4>>2]](b)}f4(e);xa=g+352|0;return a|0}function $G(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=C(0);a=UJ(a,b,c);v[a>>2]=130544;z[a+64>>2]=z[c+16>>2];z[a+68>>2]=z[c+20>>2];z[a+72>>2]=z[c+24>>2];z[a+76>>2]=z[c+28>>2];z[a+80>>2]=z[c+32>>2];z[a+84>>2]=z[c+36>>2];n=z[c+40>>2];u[a+92>>1]=0;z[a+88>>2]=n;f=x[c+46>>1];v[a+160>>2]=0;v[a+164>>2]=0;v[a+152>>2]=-1;v[a+156>>2]=-1;t[a+150|0]=1;u[a+148>>1]=0;v[a+144>>2]=-128;v[a+136>>2]=0;v[a+140>>2]=1065353216;v[a+128>>2]=0;v[a+132>>2]=0;v[a+120>>2]=0;v[a+124>>2]=1069547520;v[a+112>>2]=0;v[a+116>>2]=0;v[a+100>>2]=c+16;v[a+96>>2]=0;u[a+94>>1]=f;v[c+164>>2]=0;v[c+168>>2]=0;t[c+173|0]=w[c+8|0]&2;if(w[c+44|0]&32){u[a+92>>1]=64}a:{if(!v[c+176>>2]|w[v[c+176>>2]+31|0]==1){break a}f=v[c+176>>2];if(!f){break a}e=w[f+12|0];b:{if(!e){break b}g=1;if(z[f>>2]!=C(0)|z[f+4>>2]!=C(0)|(z[f+8>>2]!=C(0)|z[f+16>>2]!=C(0))){break b}if(z[f+20>>2]!=C(0)|z[f+24>>2]!=C(0)|(z[f+32>>2]!=C(0)|z[f+36>>2]!=C(0))){break b}if(z[f+40>>2]!=C(0)){break b}g=0;g=(z[f+48>>2]!=C(0)|z[f+52>>2]!=C(0)?g:z[f+56>>2]==C(0))^1}t[a+150|0]=e;t[f+12|0]=0}f=1;c:{if(z[c+156>>2]>C(0)){break c}f=1;if(z[c+80>>2]!=C(0)){break c}f=1;if(z[c+84>>2]!=C(0)){break c}f=1;if(z[c+88>>2]!=C(0)){break c}f=1;if(z[c+96>>2]!=C(0)){break c}f=1;if(z[c+100>>2]!=C(0)){break c}f=z[c+104>>2]!=C(0)|g}e=v[a+44>>2];m=t[e+44|0]&1;j=v[b+1e3>>2];d:{e:{if(w[e+9|0]!=2){k=a- -64|0;e=v[j+4>>2];f:{if(e){i=e-1|0;e=v[v[j>>2]+(i<<2)>>2];v[j+4>>2]=i;break f}e=v[j+12>>2];v[j+12>>2]=e+1}e=e<<7;yF(j+168|0,k,m,f,e);yF(j+640|0,k,m,f,e);break e}e=v[a+160>>2];if(!e){break d}k=v[e>>2];h=v[e+28>>2];g:{if(h){l=v[e+24>>2];e=0;while(1){i=e|k;if((a|0)==v[l+(e<<2)>>2]){break g}e=e+1|0;if((h|0)!=(e|0)){continue}break}}i=k|-2147483648}e=i<<1&126|v[v[a+160>>2]+48>>2]&-128|1}v[a+144>>2]=e}if(!(!g|w[v[a+44>>2]+9|0]==2)){k=v[a+144>>2];i=k>>>7|0;e=i+32>>>5|0;h:{if(e>>>0<=(v[b+2448>>2]&2147483647)>>>0){g=v[b+2444>>2];break h}g=v[37696]+12|0;g=Ba[v[v[g>>2]+8>>2]](g,e<<2,24422,17999,438)|0;h=v[b+2444>>2];i:{if(!h){break i}I9(g,h,v[b+2448>>2]<<2);if(v[b+2448>>2]<0){break i}h=v[b+2444>>2];if(!h){break i}l=v[37696]+12|0;Ba[v[v[l>>2]+12>>2]](l,h)}h=v[b+2448>>2];J9((h<<2)+g|0,0,e-h<<2);v[b+2448>>2]=e;v[b+2444>>2]=g}e=(k>>>10&4194300)+g|0;v[e>>2]=v[e>>2]|1<>1]=x[a+148>>1]|4096}j:{if(f){aH(a);TO(b,a);break j}bH(a);v[a+152>>2]=-2;v[a+156>>2]=-2;dG(j,v[a+144>>2])}if(m){d=v[a+164>>2];if(d){BH(d,v[v[a+40>>2]+1136>>2])}if(v[c+176>>2]?!v[c+176>>2]|w[v[c+176>>2]+31|0]!=1:1){HG(c,v[b+2412>>2]);eG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);return a}u[a+148>>1]=x[a+148>>1]&63483|4}return a}function g2(a,b,c,d,e,f,g,h,i,j){var k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=0,F=C(0),G=C(0),H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=0;m=xa-160|0;xa=m;l2(b,g,m+88|0);v[m+56>>2]=b+96;v[m+52>>2]=b+48;v[m+48>>2]=d;a:{if(g){t[m+60|0]=1;v[m+16>>2]=141020;break a}t[m+60|0]=0;v[m+16>>2]=141068}v[m+64>>2]=b;v[m+12>>2]=0;H=xa-16|0;xa=H;g=m+88|0;E=m+16|0;b=0;b:{if(!e2(a,g,E,j,H,i)){break b}r=z[i+4>>2];w=z[i>>2];s=z[i+8>>2];x=z[j>>2];F=z[a+80>>2];j=v[g+16>>2];if(j){b=v[E+40>>2];q=z[b+40>>2];k=z[a+56>>2];o=z[b+8>>2];l=z[a+48>>2];y=z[b+24>>2];n=z[a+52>>2];I=C(C(q*k)+C(C(o*l)+C(y*n)));A=z[b+36>>2];p=z[b+4>>2];u=z[b+20>>2];L=C(C(A*k)+C(C(p*l)+C(u*n)));G=z[b+32>>2];J=C(G*k);k=z[b>>2];K=C(k*l);l=z[b+16>>2];J=C(J+C(K+C(l*n)));K=k;k=C(-w);G=C(C(C(K*k)-C(l*r))-C(G*s));y=C(C(C(o*k)-C(y*r))-C(q*s));A=C(C(C(p*k)-C(u*r))-C(A*s));M=v[g+24>>2];l=C(1);b=0;E=1;k=C(0);c:{while(1){d:{g=B(b,20)+M|0;n=z[g+8>>2];o=z[g>>2];p=z[g+4>>2];q=C(z[g+12>>2]+C(C(n*I)+C(C(o*J)+C(L*p))));o=C(C(n*y)+C(C(o*G)+C(A*p)));e:{if(C(D(o))C(0))){break e}break d}n=C(C(-q)/o);g=on?n:l;k=g?kl){break d}b=b+1|0;E=j>>>0>b>>>0;if((b|0)!=(j|0)){continue}break c}break}k=C(0)}b=1;if(E){break b}}b=1;if(!(C(F+x)>=k)){break b}b=B(v[m+12>>2],48)+e|0;v[b>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;l=z[a+52>>2];n=z[a+56>>2];b=B(v[m+12>>2],48)+e|0;z[b+16>>2]=z[a+48>>2]-C(w*k);v[b+28>>2]=0;z[b+24>>2]=n-C(s*k);z[b+20>>2]=l-C(r*k);l=z[i+8>>2];g=v[i+4>>2];j=v[i>>2];b=v[m+12>>2];v[m+12>>2]=b+1;b=B(b,48)+e|0;v[b+32>>2]=j;v[b+36>>2]=g;z[b+44>>2]=k;z[b+40>>2]=l;b=1}xa=H+16|0;g=b&v[m+12>>2]!=0;if(g){j=v[e+4>>2];b=v[h+76>>2];v[b>>2]=v[e>>2];v[b+4>>2]=j;j=v[e+12>>2];v[b+8>>2]=v[e+8>>2];v[b+12>>2]=j;j=v[e+20>>2];v[b+16>>2]=v[e+16>>2];v[b+20>>2]=j;j=v[e+28>>2];v[b+24>>2]=v[e+24>>2];v[b+28>>2]=j;j=v[e+36>>2];v[b+32>>2]=v[e+32>>2];v[b+36>>2]=j;j=v[e+44>>2];v[b+40>>2]=v[e+40>>2];v[b+44>>2]=j;t[h+64|0]=1;y=z[c+20>>2];I=z[c+24>>2];x=z[e+44>>2];A=z[c+16>>2];k=z[d+12>>2];l=z[i+8>>2];r=z[d+8>>2];s=z[i>>2];n=z[d>>2];w=z[i+4>>2];q=z[d+4>>2];o=z[a+80>>2];a=v[f+4096>>2];v[f+4096>>2]=a+1;a=(a<<6)+f|0;v[a+52>>2]=-1;z[a+12>>2]=x-o;v[a+28>>2]=0;x=C(C(k*k)+C(-.5));F=C(C(r*l)+C(C(n*s)+C(q*w)));p=C(C(C(k*C(C(n*w)-C(s*q)))+C(l*x))+C(r*F));p=C(p+p);z[a+8>>2]=p;u=C(C(q*F)+C(C(x*w)+C(k*C(C(r*s)-C(l*n)))));u=C(u+u);z[a+4>>2]=u;k=C(C(n*F)+C(C(s*x)+C(k*C(C(q*l)-C(w*r)))));k=C(k+k);z[a>>2]=k;z[a+24>>2]=I-C(o*p);z[a+20>>2]=y-C(o*u);z[a+16>>2]=A-C(o*k)}xa=m+160|0;return g}function eD(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=0,q=0,r=0,s=0;j=xa-1056|0;xa=j;t[j+1040|0]=1;v[j+1048>>2]=256;v[j+1052>>2]=256;v[j+1044>>2]=j+16;v[j+16>>2]=v[c+588>>2];n=1;a:while(1){n=n-1|0;c=v[v[j+1044>>2]+(n<<2)>>2];f=z[c+16>>2];g=z[c>>2];i=C(f+g);f=C(f-g);k=z[c+24>>2];l=z[c+8>>2];g=C(k+l);m=z[c+20>>2];o=z[c+4>>2];h=C(m+o);k=C(k-l);l=C(m-o);while(1){b:{c:{m=C(i*C(.5));i=C(C(f*C(.5))+z[d+48>>2]);d:{if(!(z[d+96>>2]<=C(m+i))|!(z[d+112>>2]>=C(m-i))){break d}f=C(C(l*C(.5))+z[d+52>>2]);h=C(h*C(.5));o=C(z[d+4>>2]-h);m=C(z[d>>2]-m);l=C(C(o*z[d+16>>2])-C(m*z[d+32>>2]));if(!(C(C(i*z[d+80>>2])+C(f*z[d+64>>2]))>=(l>C(0)?l:C(-l)))|!(z[d+100>>2]<=C(h+f))|!(z[d+116>>2]>=C(h-f))){break d}l=C(f*z[d+84>>2]);f=C(C(k*C(.5))+z[d+56>>2]);g=C(g*C(.5));k=C(z[d+8>>2]-g);h=C(C(k*z[d+20>>2])-C(o*z[d+36>>2]));if(!(C(l+C(f*z[d+68>>2]))>=(h>C(0)?h:C(-h)))|!(z[d+104>>2]<=C(g+f))|!(z[d+120>>2]>=C(g-f))){break d}f=C(C(f*z[d+88>>2])+C(i*z[d+72>>2]));i=C(C(m*z[d+24>>2])-C(k*z[d+40>>2]));if(!(f>=(i>C(0)?i:C(-i)))){break d}p=c;c=v[c+36>>2];if(v[p+40>>2]){break c}q=v[c>>2];if(!q){break d}c=c+4|0;if((q|0)==1){if(Ba[v[v[e>>2]>>2]](e,j+12|0,(v[c>>2]<<3)+a|0)|0){break d}break b}while(1){r=v[c>>2];p=B(r,24)+b|0;i=z[p>>2];f=z[p+12>>2];g=C(C(i+f)*C(.5));i=C(C(C(f-i)*C(.5))+z[d+48>>2]);e:{if(!(z[d+96>>2]<=C(g+i))|!(z[d+112>>2]>=C(g-i))){break e}h=z[p+16>>2];k=z[p+4>>2];f=C(C(C(h-k)*C(.5))+z[d+52>>2]);h=C(C(k+h)*C(.5));k=C(z[d+4>>2]-h);l=C(z[d>>2]-g);g=C(C(k*z[d+16>>2])-C(l*z[d+32>>2]));if(!(C(C(i*z[d+80>>2])+C(f*z[d+64>>2]))>=(g>C(0)?g:C(-g)))|!(z[d+100>>2]<=C(h+f))|!(z[d+116>>2]>=C(h-f))){break e}o=C(f*z[d+84>>2]);g=z[p+20>>2];h=z[p+8>>2];f=C(C(C(g-h)*C(.5))+z[d+56>>2]);g=C(C(h+g)*C(.5));m=C(z[d+8>>2]-g);h=C(C(m*z[d+20>>2])-C(k*z[d+36>>2]));if(!(C(o+C(f*z[d+68>>2]))>=(h>C(0)?h:C(-h)))|!(z[d+104>>2]<=C(g+f))|!(z[d+120>>2]>=C(g-f))){break e}f=C(C(f*z[d+88>>2])+C(i*z[d+72>>2]));i=C(C(l*z[d+24>>2])-C(m*z[d+40>>2]));if(!(f>=(i>C(0)?i:C(-i)))){break e}if(!(Ba[v[v[e>>2]>>2]](e,j+12|0,(r<<3)+a|0)|0)){break b}}c=c+4|0;q=q-1|0;if(q){continue}break}}s=!n;if(n){continue a}break b}v[v[j+1044>>2]+(n<<2)>>2]=c+48;n=n+1|0;if((n|0)==(v[j+1052>>2]&2147483647)){gD(j+16|0,n<<1)}f=z[c+16>>2];g=z[c>>2];i=C(f+g);f=C(f-g);k=z[c+24>>2];l=z[c+8>>2];g=C(k+l);m=z[c+20>>2];o=z[c+4>>2];h=C(m+o);k=C(k-l);l=C(m-o);continue}break}break}a=v[j+1052>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[j+1044>>2];if((a|0)==(j+16|0)|!a){break f}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=j+1056|0;return s}function EY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=0,s=0,u=0;e=xa-80|0;xa=e;l=v[a+36>>2];a:{if(l){break a}l=0;m=v[a+20>>2];n=m<<2;if(n){l=v[37696];l=Ba[v[v[l+12>>2]+8>>2]](l+12|0,n,24422,11302,133)|0;m=v[a+20>>2]}v[a+36>>2]=l;if(!m){break a}while(1){v[(i<<2)+l>>2]=i;i=i+1|0;if(i>>>0>2]){continue}break}}v[e+72>>2]=0;v[e+68>>2]=c;v[e+64>>2]=d;c=v[a+40>>2];v[e+60>>2]=v[a+32>>2];v[e+56>>2]=c;f=z[b+16>>2];g=z[b+20>>2];h=z[b+12>>2];o=z[b>>2];j=z[b+4>>2];k=z[b+8>>2];v[e+44>>2]=0;z[e+40>>2]=C(g-k)*C(.5);z[e+36>>2]=C(f-j)*C(.5);v[e+28>>2]=0;z[e+32>>2]=C(h-o)*C(.5);z[e+24>>2]=C(k+g)*C(.5);z[e+20>>2]=C(j+f)*C(.5);z[e+16>>2]=C(o+h)*C(.5);u=v[a+28>>2];c=e- -64|0;a=xa-1040|0;xa=a;t[a+1024|0]=1;v[a+1032>>2]=256;v[a+1036>>2]=256;v[a+1028>>2]=a;s=v[e+56>>2];v[a>>2]=s;d=1;b:while(1){d=d-1|0;b=v[v[a+1028>>2]+(d<<2)>>2];g=z[b>>2];h=z[b+12>>2];f=C(g+h);g=C(h-g);j=z[b+8>>2];k=z[b+20>>2];h=C(j+k);p=z[b+4>>2];q=z[b+16>>2];o=C(p+q);j=C(k-j);k=C(q-p);while(1){c:{d:{f=C(C(f*C(.5))-z[e+16>>2]);e:{if(!(C(C(g*C(.5))+z[e+32>>2])>=(f>C(0)?f:C(-f)))){break e}f=C(C(o*C(.5))-z[e+20>>2]);if(!(C(C(k*C(.5))+z[e+36>>2])>=(f>C(0)?f:C(-f)))){break e}f=C(C(h*C(.5))-z[e+24>>2]);if(!(C(C(j*C(.5))+z[e+40>>2])>=(f>C(0)?f:C(-f)))){break e}b=v[b+24>>2];i=b>>>1|0;if(!(b&1)){break d}m=i&15;if(!m){break e}i=v[e+60>>2]+(b>>>3&536870908)|0;n=v[c>>2];if((m|0)==1){b=v[(v[i>>2]<<2)+l>>2];i=v[c+8>>2];v[c+8>>2]=i+1;v[n+(i<<2)>>2]=b;if(v[c+8>>2]!=v[c+4>>2]){break e}break c}while(1){r=v[i>>2];b=B(r,24)+u|0;g=z[b+12>>2];h=z[b>>2];f=C(C(C(h+g)*C(.5))-z[e+16>>2]);f:{if(!(C(C(C(g-h)*C(.5))+z[e+32>>2])>=(f>C(0)?f:C(-f)))){break f}g=z[b+4>>2];h=z[b+16>>2];f=C(C(C(g+h)*C(.5))-z[e+20>>2]);if(!(C(C(C(h-g)*C(.5))+z[e+36>>2])>=(f>C(0)?f:C(-f)))){break f}g=z[b+8>>2];h=z[b+20>>2];f=C(C(C(g+h)*C(.5))-z[e+24>>2]);if(!(C(C(C(h-g)*C(.5))+z[e+40>>2])>=(f>C(0)?f:C(-f)))){break f}b=v[(r<<2)+l>>2];r=v[c+8>>2];v[c+8>>2]=r+1;v[n+(r<<2)>>2]=b;if(v[c+8>>2]==v[c+4>>2]){break c}}i=i+4|0;m=m-1|0;if(m){continue}break}}if(d){continue b}break c}b=B(i,28)+s|0;v[v[a+1028>>2]+(d<<2)>>2]=b+28;d=d+1|0;if((d|0)==(v[a+1036>>2]&2147483647)){CY(a,d<<1)}g=z[b>>2];h=z[b+12>>2];f=C(g+h);g=C(h-g);j=z[b+8>>2];k=z[b+20>>2];h=C(j+k);p=z[b+4>>2];q=z[b+16>>2];o=C(p+q);j=C(k-j);k=C(q-p);continue}break}break}b=v[a+1036>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+1028>>2];if((b|0)==(a|0)|!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}xa=a+1040|0;xa=e+80|0;return v[e+72>>2]}function ij(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0);i=xa-32|0;xa=i;a:{b:{switch(d|0){case 0:I=a+48|0;if(b){g=z[b>>2];f=z[b+4>>2];if(t[a+316|0]&1){e=z[v[a+56>>2]+92>>2]}else{d=a- -64|0;m=v[d+176>>2];c:{if(!(!m|w[m+31|0]!=1)){e=z[m+44>>2];break c}e=z[d+140>>2]}}z[i+24>>2]=e*z[b+8>>2];z[i+20>>2]=e*f;z[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){x=z[c+8>>2];n=x;h=z[a+256>>2];j=C(h+h);k=z[a+264>>2];f=C(j*k);l=z[a+260>>2];g=C(l+l);p=z[a+268>>2];e=C(g*p);q=C(f-e);if(w[a+316|0]&2){b=v[a+56>>2]+96|0}else{b=a- -64|0;m=v[b+176>>2];d:{if(!(!m|w[m+31|0]!=1)){b=m+32|0;break d}b=b+128|0}}o=z[b+8>>2];F=C(f+e);y=C(o*F);G=C(C(1)-C(h*j));e=C(l*g);s=C(G-e);A=z[b>>2];f=C(C(1)-e);e=C(k+k);r=C(k*e);H=C(f-r);B=C(A*H);h=C(g*k);g=C(j*p);u=C(h+g);D=z[b+4>>2];f=C(j*l);e=C(e*p);p=C(f-e);E=C(D*p);k=C(C(y*s)+C(C(B*q)+C(u*E)));J=C(n*C(C(C(o*s)*s)+C(C(C(A*q)*q)+C(u*C(u*D)))));j=z[c>>2];l=z[c+4>>2];n=o;o=C(h-g);h=C(n*o);n=C(f+e);g=C(A*n);r=C(G-r);f=C(D*r);e=C(C(h*s)+C(C(g*q)+C(u*f)));z[i+8>>2]=J+C(C(j*k)+C(l*e));q=C(x*e);e=C(C(y*o)+C(C(B*n)+C(r*E)));z[i+4>>2]=q+C(C(j*e)+C(l*C(C(h*o)+C(C(g*n)+C(r*f)))));z[i>>2]=C(x*k)+C(C(j*C(C(y*F)+C(C(B*H)+C(p*E))))+C(l*e));a=i}else{a=0}jj(I,d,a);break a;case 3:jj(a+48|0,b,c);break a;case 1:I=a+48|0;if(b){g=z[b>>2];f=z[b+4>>2];if(t[a+316|0]&1){e=z[v[a+56>>2]+92>>2]}else{d=a- -64|0;m=v[d+176>>2];e:{if(!(!m|w[m+31|0]!=1)){e=z[m+44>>2];break e}e=z[d+140>>2]}}z[i+24>>2]=e*z[b+8>>2];z[i+20>>2]=e*f;z[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){x=z[c+8>>2];n=x;h=z[a+256>>2];j=C(h+h);k=z[a+264>>2];f=C(j*k);l=z[a+260>>2];g=C(l+l);p=z[a+268>>2];e=C(g*p);q=C(f-e);if(w[a+316|0]&2){b=v[a+56>>2]+96|0}else{b=a- -64|0;m=v[b+176>>2];f:{if(!(!m|w[m+31|0]!=1)){b=m+32|0;break f}b=b+128|0}}o=z[b+8>>2];F=C(f+e);y=C(o*F);G=C(C(1)-C(h*j));e=C(l*g);s=C(G-e);A=z[b>>2];f=C(C(1)-e);e=C(k+k);r=C(k*e);H=C(f-r);B=C(A*H);h=C(g*k);g=C(j*p);u=C(h+g);D=z[b+4>>2];f=C(j*l);e=C(e*p);p=C(f-e);E=C(D*p);k=C(C(y*s)+C(C(B*q)+C(u*E)));J=C(n*C(C(C(o*s)*s)+C(C(C(A*q)*q)+C(u*C(u*D)))));j=z[c>>2];l=z[c+4>>2];n=o;o=C(h-g);h=C(n*o);n=C(f+e);g=C(A*n);r=C(G-r);f=C(D*r);e=C(C(h*s)+C(C(g*q)+C(u*f)));z[i+8>>2]=J+C(C(j*k)+C(l*e));q=C(x*e);e=C(C(y*o)+C(C(B*n)+C(r*E)));z[i+4>>2]=q+C(C(j*e)+C(l*C(C(h*o)+C(C(g*n)+C(r*f)))));z[i>>2]=C(x*k)+C(C(j*C(C(y*F)+C(C(B*H)+C(p*E))))+C(l*e));a=i}else{a=0}fj(I,d,a);break a;case 2:break b;default:break a}}fj(a+48|0,b,c)}xa=i+32|0}function cj(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0);i=xa-32|0;xa=i;a:{b:{switch(d|0){case 0:I=a+48|0;if(b){g=z[b>>2];f=z[b+4>>2];if(t[a+316|0]&1){e=z[v[a+56>>2]+92>>2]}else{d=a- -64|0;m=v[d+176>>2];c:{if(!(!m|w[m+31|0]!=1)){e=z[m+44>>2];break c}e=z[d+140>>2]}}z[i+24>>2]=e*z[b+8>>2];z[i+20>>2]=e*f;z[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){x=z[c+8>>2];n=x;h=z[a+256>>2];j=C(h+h);k=z[a+264>>2];f=C(j*k);l=z[a+260>>2];g=C(l+l);p=z[a+268>>2];e=C(g*p);q=C(f-e);if(w[a+316|0]&2){b=v[a+56>>2]+96|0}else{b=a- -64|0;m=v[b+176>>2];d:{if(!(!m|w[m+31|0]!=1)){b=m+32|0;break d}b=b+128|0}}o=z[b+8>>2];F=C(f+e);y=C(o*F);G=C(C(1)-C(h*j));e=C(l*g);s=C(G-e);A=z[b>>2];f=C(C(1)-e);e=C(k+k);r=C(k*e);H=C(f-r);B=C(A*H);h=C(g*k);g=C(j*p);u=C(h+g);D=z[b+4>>2];f=C(j*l);e=C(e*p);p=C(f-e);E=C(D*p);k=C(C(y*s)+C(C(B*q)+C(u*E)));J=C(n*C(C(C(o*s)*s)+C(C(C(A*q)*q)+C(u*C(u*D)))));j=z[c>>2];l=z[c+4>>2];n=o;o=C(h-g);h=C(n*o);n=C(f+e);g=C(A*n);r=C(G-r);f=C(D*r);e=C(C(h*s)+C(C(g*q)+C(u*f)));z[i+8>>2]=J+C(C(j*k)+C(l*e));q=C(x*e);e=C(C(y*o)+C(C(B*n)+C(r*E)));z[i+4>>2]=q+C(C(j*e)+C(l*C(C(h*o)+C(C(g*n)+C(r*f)))));z[i>>2]=C(x*k)+C(C(j*C(C(y*F)+C(C(B*H)+C(p*E))))+C(l*e));a=i}else{a=0}ej(I,d,a);break a;case 3:ej(a+48|0,b,c);break a;case 1:I=a+48|0;if(b){g=z[b>>2];f=z[b+4>>2];if(t[a+316|0]&1){e=z[v[a+56>>2]+92>>2]}else{d=a- -64|0;m=v[d+176>>2];e:{if(!(!m|w[m+31|0]!=1)){e=z[m+44>>2];break e}e=z[d+140>>2]}}z[i+24>>2]=e*z[b+8>>2];z[i+20>>2]=e*f;z[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){x=z[c+8>>2];n=x;h=z[a+256>>2];j=C(h+h);k=z[a+264>>2];f=C(j*k);l=z[a+260>>2];g=C(l+l);p=z[a+268>>2];e=C(g*p);q=C(f-e);if(w[a+316|0]&2){b=v[a+56>>2]+96|0}else{b=a- -64|0;m=v[b+176>>2];f:{if(!(!m|w[m+31|0]!=1)){b=m+32|0;break f}b=b+128|0}}o=z[b+8>>2];F=C(f+e);y=C(o*F);G=C(C(1)-C(h*j));e=C(l*g);s=C(G-e);A=z[b>>2];f=C(C(1)-e);e=C(k+k);r=C(k*e);H=C(f-r);B=C(A*H);h=C(g*k);g=C(j*p);u=C(h+g);D=z[b+4>>2];f=C(j*l);e=C(e*p);p=C(f-e);E=C(D*p);k=C(C(y*s)+C(C(B*q)+C(u*E)));J=C(n*C(C(C(o*s)*s)+C(C(C(A*q)*q)+C(u*C(u*D)))));j=z[c>>2];l=z[c+4>>2];n=o;o=C(h-g);h=C(n*o);n=C(f+e);g=C(A*n);r=C(G-r);f=C(D*r);e=C(C(h*s)+C(C(g*q)+C(u*f)));z[i+8>>2]=J+C(C(j*k)+C(l*e));q=C(x*e);e=C(C(y*o)+C(C(B*n)+C(r*E)));z[i+4>>2]=q+C(C(j*e)+C(l*C(C(h*o)+C(C(g*n)+C(r*f)))));z[i>>2]=C(x*k)+C(C(j*C(C(y*F)+C(C(B*H)+C(p*E))))+C(l*e));a=i}else{a=0}fj(I,d,a);break a;case 2:break b;default:break a}}fj(a+48|0,b,c)}xa=i+32|0}function jY(a,b,c,d,e,f,g){var h=0,i=0,j=C(0),k=C(0),l=0,m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=0,u=C(0),w=0,x=C(0),y=0;h=xa-144|0;xa=h;v[g>>2]=3;i=v[b+12>>2];v[h+136>>2]=v[b+8>>2];v[h+140>>2]=i;i=v[b+4>>2];v[h+128>>2]=v[b>>2];v[h+132>>2]=i;i=v[b+28>>2];v[h+120>>2]=v[b+24>>2];v[h+124>>2]=i;i=v[b+20>>2];v[h+112>>2]=v[b+16>>2];v[h+116>>2]=i;i=v[b+44>>2];v[h+104>>2]=v[b+40>>2];v[h+108>>2]=i;i=v[b+36>>2];v[h+96>>2]=v[b+32>>2];v[h+100>>2]=i;j=z[h+128>>2];p=C(z[h+112>>2]-j);k=z[h+132>>2];n=C(z[h+100>>2]-k);j=C(z[h+96>>2]-j);k=C(z[h+116>>2]-k);o=C(C(p*n)-C(j*k));q=C(o*o);u=k;k=z[h+136>>2];o=C(z[h+104>>2]-k);k=C(z[h+120>>2]-k);n=C(C(u*o)-C(n*k));j=C(C(k*j)-C(o*p));a:{if(C(q+C(C(n*n)+C(j*j)))<=C(1.1920928955078125e-7)){v[g>>2]=2;n=z[b+8>>2];j=C(z[b+24>>2]-n);o=z[b>>2];p=C(z[b+16>>2]-o);q=z[b+4>>2];k=C(z[b+20>>2]-q);x=C(C(j*j)+C(C(p*p)+C(k*k)));if(x<=C(1.1920928955078125e-7)){v[g>>2]=1;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;break a}v[a+12>>2]=0;u=j;j=C(F(C(C(C(C(C(-o)*p)-C(k*q))-C(n*j))/x),C(1)));j=j>C(0)?j:C(0);z[a+8>>2]=n+C(u*j);z[a+4>>2]=q+C(k*j);z[a>>2]=o+C(p*j);break a}v[h+88>>2]=v[25022];i=v[25021];v[h+80>>2]=v[25020];v[h+84>>2]=i;zW(h+48|0,h+128|0,h+112|0,h+96|0,h+80|0,h+92|0,h- -64|0);y=v[h+92>>2];if((y|0)!=3){s=v[h+80>>2];t=v[h+84>>2];l=t<<4;i=l+b|0;m=v[i+4>>2];v[h+48>>2]=v[i>>2];v[h+52>>2]=m;m=v[i+12>>2];v[h+56>>2]=v[i+8>>2];v[h+60>>2]=m;i=c+l|0;m=v[i+12>>2];v[h+40>>2]=v[i+8>>2];v[h+44>>2]=m;m=v[i+4>>2];v[h+32>>2]=v[i>>2];v[h+36>>2]=m;m=s<<4;i=m+d|0;r=v[i+12>>2];v[h+24>>2]=v[i+8>>2];v[h+28>>2]=r;r=v[i+4>>2];v[h+16>>2]=v[i>>2];v[h+20>>2]=r;i=d+l|0;l=v[i+12>>2];v[h+8>>2]=v[i+8>>2];v[h+12>>2]=l;l=v[i+4>>2];v[h>>2]=v[i>>2];v[h+4>>2]=l;i=s<<2;s=v[i+f>>2];l=t<<2;t=v[l+f>>2];l=v[e+l>>2];r=v[e+i>>2];i=b+m|0;w=v[i+12>>2];v[b+8>>2]=v[i+8>>2];v[b+12>>2]=w;w=v[i+4>>2];v[b>>2]=v[i>>2];v[b+4>>2]=w;i=v[h+52>>2];v[b+16>>2]=v[h+48>>2];v[b+20>>2]=i;i=v[h+60>>2];v[b+24>>2]=v[h+56>>2];v[b+28>>2]=i;b=c+m|0;i=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=i;i=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=i;b=v[h+36>>2];v[c+16>>2]=v[h+32>>2];v[c+20>>2]=b;b=v[h+44>>2];v[c+24>>2]=v[h+40>>2];v[c+28>>2]=b;b=v[h+28>>2];v[d+8>>2]=v[h+24>>2];v[d+12>>2]=b;b=v[h+20>>2];v[d>>2]=v[h+16>>2];v[d+4>>2]=b;b=v[h+12>>2];v[d+24>>2]=v[h+8>>2];v[d+28>>2]=b;b=v[h+4>>2];v[d+16>>2]=v[h>>2];v[d+20>>2]=b;v[e>>2]=r;v[e+4>>2]=l;v[f+4>>2]=t;v[f>>2]=s;v[g>>2]=y}b=v[h+68>>2];v[a>>2]=v[h+64>>2];v[a+4>>2]=b;b=v[h+76>>2];v[a+8>>2]=v[h+72>>2];v[a+12>>2]=b}xa=h+144|0}function ft(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=xa-112|0;xa=b;v[b+64>>2]=0;v[b+68>>2]=0;v[b+72>>2]=-1;h=v[c+4>>2];e=v[((v[h+4>>2]>>>22&60)+89188|0)+12>>2]+h|0;n=v[((w[e+9|0]<<2)+149664|0)+40>>2]+e|0;c=v[c>>2];o=v[37419]+(c+16|0)|0;f=w[a+42|0];e=f?2:1;d=v[a+20>>2];m=u[d+16>>1];e=v[v[a+12>>2]+28>>2]?e:(m|0)>=0?2:e;a:{b:{if(f){break b}f=v[a+24>>2];c:{g=v[a+32>>2];if(g){break c}i=v[d+12>>2];j=v[d+8>>2];k=v[d+4>>2];l=v[d>>2];if(!(i|(j|(k|l)))|(i&v[c+28>>2]|(j&v[c+24>>2]|(k&v[c+20>>2]|l&v[c+16>>2])))){break c}f=1;break a}if(!(m&4)|!(f|g)){break b}u[b+104>>1]=x[a+16>>1];d:{if(f){e=Ba[v[v[f>>2]>>2]](f,d,o,n,b+104|0)|0;break d}f=v[g+8>>2];if(!f){break b}v[b+32>>2]=v[d>>2];v[b+36>>2]=v[d+4>>2];v[b+40>>2]=v[d+8>>2];v[b+44>>2]=v[d+12>>2];v[b+88>>2]=v[c+16>>2];v[b+92>>2]=v[c+20>>2];v[b+96>>2]=v[c+24>>2];v[b+100>>2]=v[c+28>>2];e=Ba[f|0](b+32|0,b+88|0,v[g>>2],v[g+4>>2],b+104|0)|0}if(e){break b}f=1;break a}th(b+32|0,c,h);d=v[a+12>>2];g=v[d+32>>2];p=v[d+28>>2];q=v[d+24>>2];d=v[v[a+4>>2]+5736>>2];f=v[a+8>>2];h=v[f+16>>2];k=v[f+12>>2];l=v[k>>2];j=t[c+4|0]&1?v[c+8>>2]- -64|0:c+84|0;i=v[j>>2];e:{if((l|0)>(i|0)){f=1;if(Ba[v[(d+B(i,28)|0)+(l<<2)>>2]](j,b+32|0,k,h,0)|0){break e}break a}f=1;if(!(Ba[v[(d+B(l,28)|0)+(i<<2)>>2]](k,h,j,b+32|0,0)|0)){break a}}d=g>>>0

>>0?(g<<4)+q|0:b- -64|0;v[d+4>>2]=o;v[d>>2]=n;f:{if(w[a+42|0]){break f}f=v[a+24>>2];g=v[a+32>>2];if(!(f|g)|!(m&8)){break f}if(f){e=Ba[v[v[f>>2]+4>>2]](f,v[a+20>>2],d)|0;break f}f=v[g+12>>2];if(!f){break f}e=v[a+20>>2];v[b+16>>2]=v[e>>2];v[b+20>>2]=v[e+4>>2];v[b+24>>2]=v[e+8>>2];v[b+28>>2]=v[e+12>>2];v[b>>2]=v[c+16>>2];v[b+4>>2]=v[c+20>>2];v[b+8>>2]=v[c+24>>2];v[b+12>>2]=v[c+28>>2];e=Ba[f|0](b+16|0,b,v[g>>2],v[g+4>>2],d)|0}if(!(!w[a+41|0]|!e)){e=v[d+4>>2];c=v[a+12>>2];v[c+4>>2]=v[d>>2];v[c+8>>2]=e;e=v[d+12>>2];v[c+12>>2]=v[d+8>>2];v[c+16>>2]=e;t[v[a+12>>2]+20|0]=1;f=0;break a}f=1;g:{switch((w[a+40|0]?1:e)-1|0){case 0:c=v[a+12>>2];g=v[c+28>>2];if(!(z[a+28>>2]>=C(-1))|(!g|!w[a+38|0])){break a}e=v[c+32>>2];if((g|0)==(e|0)){c=Ba[v[v[c>>2]>>2]](c,v[c+24>>2],g)|0;t[a+38|0]=c;f=0;if(!c){break a}c=v[a+12>>2];v[c+32>>2]=0;e=0}f=1;v[c+32>>2]=e+1;a=v[c+24>>2]+(e<<4)|0;c=v[d+12>>2];v[a+8>>2]=v[d+8>>2];v[a+12>>2]=c;c=v[d+4>>2];v[a>>2]=v[d>>2];v[a+4>>2]=c;break a;case 1:break g;default:break a}}if(!(z[a+28>>2]>=C(-1))){break a}e=v[d+4>>2];c=v[a+12>>2];v[c+4>>2]=v[d>>2];v[c+8>>2]=e;e=v[d+12>>2];v[c+12>>2]=v[d+8>>2];v[c+16>>2]=e;t[v[a+12>>2]+20|0]=1}xa=b+112|0;return f|0}function qZ(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0);F=C(d+h);k=v[b+4096>>2];u=z[e+8>>2];q=C(z[e+20>>2]-u);i=z[f+4>>2];w=z[e>>2];A=C(z[e+24>>2]-w);h=z[f>>2];x=z[e+4>>2];B=C(z[e+28>>2]-x);m=C(C(i*A)-C(h*B));r=C(z[e+12>>2]-w);l=z[f+8>>2];D=C(z[e+32>>2]-u);j=C(C(l*B)-C(i*D));s=C(z[e+16>>2]-x);t=C(C(h*D)-C(l*A));n=C(C(q*m)+C(C(r*j)+C(s*t)));a:{if(n>2];o=C(G-u);p=C(o*m);H=z[c>>2];m=C(H-w);E=C(m*j);I=z[c+4>>2];j=C(I-x);t=C(p+C(E+C(t*j)));y=C(n*C(.0010000000474974513));p=C(-y);if(tm){e=k;break a}if(y>>0>63){e=k;break a}L=z[a+36>>2];M=z[a+40>>2];N=z[a+44>>2];o=z[a+24>>2];m=z[a>>2];j=z[a+12>>2];t=z[a+28>>2];y=z[a+4>>2];p=z[a+16>>2];E=z[a+32>>2];J=z[a+8>>2];K=z[a+20>>2];e=k+1|0;v[b+4096>>2]=e;k=(k<<6)+b|0;v[k+52>>2]=g;z[k+12>>2]=n-d;z[k+8>>2]=C(C(h*J)+C(i*K))+C(l*E);z[k+4>>2]=C(C(h*y)+C(i*p))+C(l*t);z[k>>2]=C(C(h*m)+C(i*j))+C(l*o);h=C(H-C(h*n));i=C(I-C(i*n));l=C(G-C(l*n));z[k+24>>2]=N+C(C(C(J*h)+C(K*i))+C(E*l));z[k+20>>2]=M+C(C(C(y*h)+C(p*i))+C(t*l));z[k+16>>2]=L+C(C(C(m*h)+C(j*i))+C(o*l));h=z[f>>2]}i=z[f+4>>2];o=C(C(i*A)-C(h*B));l=z[f+8>>2];m=C(C(l*B)-C(i*D));j=C(C(h*D)-C(l*A));n=C(C(q*o)+C(C(r*m)+C(s*j)));b:{if(n>2];u=C(t-u);y=z[c+12>>2];w=C(y-w);p=C(w*m);m=z[c+16>>2];x=C(m-x);o=C(C(u*o)+C(p+C(j*x)));j=C(n*C(.0010000000474974513));p=C(-j);if(or|j>>0>63){break b}F=z[a+36>>2];o=z[a+40>>2];j=z[a+44>>2];A=z[a+24>>2];B=z[a>>2];r=z[a+12>>2];D=z[a+28>>2];s=z[a+4>>2];n=z[a+16>>2];u=z[a+32>>2];w=z[a+8>>2];x=z[a+20>>2];v[b+4096>>2]=e+1;a=(e<<6)+b|0;v[a+52>>2]=g;z[a+12>>2]=q-d;z[a+8>>2]=C(C(h*w)+C(i*x))+C(l*u);z[a+4>>2]=C(C(h*s)+C(i*n))+C(l*D);z[a>>2]=C(C(h*B)+C(i*r))+C(l*A);d=C(y-C(h*q));h=C(m-C(i*q));i=C(t-C(l*q));z[a+24>>2]=j+C(C(C(w*d)+C(x*h))+C(u*i));z[a+20>>2]=o+C(C(C(s*d)+C(n*h))+C(D*i));z[a+16>>2]=F+C(C(C(B*d)+C(r*h))+C(A*i))}}function wZ(a,b,c,d,e,f,g,h,i,k,m,n,o,r,s){var t=C(0),u=C(0),x=C(0),y=C(0),A=0,D=C(0),E=C(0),F=0,G=C(0),H=0,I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0),W=C(0),X=0,Y=0;A=xa-32|0;xa=A;v[m>>2]=-1;P=v[a+16>>2];H=B(P,20);if(H){while(1){F=F+128|0;if(H>>>0>F>>>0){continue}break}}a:{b:{if(!P){h=0;H=n;break b}x=z[h>>2];t=z[h+4>>2];u=z[h+8>>2];U=C(C(C(x*z[e+44>>2])+C(t*z[e+56>>2]))+C(u*z[e+68>>2]));V=C(C(C(x*z[e+40>>2])+C(t*z[e+52>>2]))+C(u*z[e- -64>>2]));W=C(C(C(x*z[e+36>>2])+C(t*z[e+48>>2]))+C(u*z[e+60>>2]));X=v[a+24>>2];Y=v[a+28>>2];F=0;h=1;H=n;while(1){I=B(F,20)+X|0;u=z[I+8>>2];y=z[I>>2];D=z[I+4>>2];c:{if(C(C(u*U)+C(C(y*W)+C(V*D)))>2];L=z[e+36>>2];E=z[e+48>>2];t=z[e+64>>2];G=z[e+40>>2];M=z[e+52>>2];x=C(C(C(y*z[e+44>>2])+C(D*z[e+56>>2]))+C(u*z[e+68>>2]));z[A+16>>2]=x;t=C(C(C(y*G)+C(D*M))+C(u*t));z[A+12>>2]=t;u=C(C(C(y*L)+C(D*E))+C(u*J));z[A+8>>2]=u;J=C(K(C(C(x*x)+C(C(u*u)+C(t*t)))));if(J>C(0)){y=C(C(1)/J);x=C(x*y);z[A+16>>2]=x;t=C(t*y);z[A+12>>2]=t;u=C(u*y);z[A+8>>2]=u}L=z[c+8>>2];E=z[c+20>>2];G=z[c+32>>2];y=C(C(C(u*L)+C(t*E))+C(x*G));M=z[c>>2];Q=z[c+12>>2];N=z[c+24>>2];D=C(C(C(u*M)+C(t*Q))+C(x*N));R=u;u=z[c+4>>2];S=t;t=z[c+16>>2];O=z[c+28>>2];x=C(C(C(R*u)+C(S*t))+C(x*O));R=C(C(z[s+8>>2]*y)+C(C(z[s>>2]*D)+C(x*z[s+4>>2])));G=C(C(G*y)+C(C(N*D)+C(O*x)));u=C(C(L*y)+C(C(M*D)+C(u*x)));t=C(C(E*y)+C(C(Q*D)+C(t*x)));t=C(C((l(2,v[a+56>>2]|(p(G),j(2))&-2147483648),q())*G)+C(C((l(2,v[a+48>>2]|(p(u),j(2))&-2147483648),q())*u)+C(t*(l(2,v[a+52>>2]|(p(t),j(2))&-2147483648),q()))));u=z[a+44>>2];S=t>u?t:u;t=C(C(z[d+32>>2]*y)+C(C(z[d+24>>2]*D)+C(x*z[d+28>>2])));u=C((l(2,v[b+56>>2]|(p(t),j(2))&-2147483648),q())*t);t=C(C(z[d+8>>2]*y)+C(C(z[d>>2]*D)+C(x*z[d+4>>2])));E=C((l(2,v[b+48>>2]|(p(t),j(2))&-2147483648),q())*t);t=C(C(z[d+20>>2]*y)+C(C(z[d+12>>2]*D)+C(x*z[d+16>>2])));t=C(u+C(E+C(t*(l(2,v[b+52>>2]|(p(t),j(2))&-2147483648),q()))));u=z[b+44>>2];t=C(S+(t>u?t:u));u=C(R+t);t=C(t-R);if(z[i>>2]<(t>u?u:t)){break c}v[H>>2]=F;T=B(w[I+19|0],12)+Y|0;t=z[T+8>>2];u=z[T>>2];L=z[T+4>>2];E=z[I+12>>2];G=z[I+8>>2];M=z[I>>2];Q=z[I+4>>2];Ba[v[b+64>>2]](b,A+8|0,g,f,A+28|0,A+24|0);N=z[A+28>>2];J=C(C(1)/J);E=C(J*C(-E));if(N>C(E+r)){break a}t=C(J*C(C(G*t)+C(C(M*u)+C(Q*L))));O=z[A+24>>2];if(t>C(O+r)){break a}H=H+4|0;u=C(E-N);t=C(O-t);t=t>u?u:t;if(!(t>2])){break c}z[k+8>>2]=y;z[k+4>>2]=x;z[k>>2]=D;z[i>>2]=t;v[m>>2]=F}F=F+1|0;h=P>>>0>F>>>0;if((F|0)!=(P|0)){continue}break}}v[o>>2]=H-n>>2}xa=A+32|0;return(h^-1)&1}function Sx(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=C(0),l=0,m=C(0),n=0,o=C(0),p=C(0);d=xa+-64|0;xa=d;a:{if(w[a+488|0]){b9(v[37696],8,12859,420,76794,0);break a}g=a+112|0;k=z[b>>2];m=z[b+4>>2];z[d+56>>2]=-z[b+8>>2];z[d+52>>2]=-m;z[d+48>>2]=-k;h=v[a+448>>2];e=v[c+52>>2];if(t[v[a+476>>2]]&1){i=e+4|0;n=h<<5;j=v[e+4>>2];b=v[e+8>>2];l=v[(j+(b<<2)|0)-4>>2];if((n|0)<=(l-v[e+16>>2]|0)){f=l-n|0;v[d>>2]=f;b:{if(b>>>0>=(v[e+12>>2]&2147483647)>>>0){Vs(i,d);break b}v[j+(b<<2)>>2]=f;v[e+8>>2]=b+1}f=v[d>>2]}if(h){j=v[a+444>>2];b=0;while(1){a=b<<5;k=z[v[(a+j|0)+16>>2]+124>>2];m=z[d+48>>2];o=z[d+52>>2];p=z[d+56>>2];a=a+f|0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;k=C(C(1)/k);z[a+8>>2]=p*k;z[a+4>>2]=k*o;z[a>>2]=m*k;b=b+1|0;if((h|0)!=(b|0)){continue}break}}v[d+8>>2]=0;v[d+12>>2]=0;v[d+40>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d>>2]=0;v[d+4>>2]=0;v[d+12>>2]=f;v[d+32>>2]=v[c+24>>2];Jx(g,d);a=v[e+16>>2];if(!(a>>>0<=f>>>0&a+v[e+20>>2]>>>0>f>>>0)){if(!f){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,f);break a}l=v[e+4>>2];c=0;j=v[e+8>>2];g=j;while(1){h=c;c=c+1|0;b=g;g=b-1|0;a=l+(g<<2)|0;if(y[a>>2]>>0){continue}break}c:{if(b>>>0>=j>>>0){break c}c=h&3;if(c){f=0;while(1){v[a>>2]=v[v[i>>2]+(b<<2)>>2];b=b+1|0;a=a+4|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}if(h-1>>>0<3){break c}while(1){c=b<<2;v[a>>2]=v[c+v[i>>2]>>2];v[a+4>>2]=v[(c+v[i>>2]|0)+4>>2];v[a+8>>2]=v[(c+v[i>>2]|0)+8>>2];v[a+12>>2]=v[(c+v[i>>2]|0)+12>>2];a=a+16|0;b=b+4|0;if((j|0)!=(b|0)){continue}break}}v[e+8>>2]=j-1;break a}v[d+40>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d>>2]=0;v[d+4>>2]=0;h=Cx(e,h,d);v[d+24>>2]=0;v[d+28>>2]=0;b=v[c+24>>2];v[d+16>>2]=0;v[d+32>>2]=b;wx(g,d);J9(v[d+8>>2],0,v[a+448>>2]<<5);sx(g,d+48|0,d);Ix(g,d);Kx(g,d);Mx(g,d);Nx(g,d);a=v[e+16>>2];if(!(a>>>0<=h>>>0&h>>>0>2]>>>0)){if(!h){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,h);break a}j=v[e+4>>2];i=v[e+8>>2];c=i;while(1){g=f;f=f+1|0;b=c;c=b-1|0;a=j+(c<<2)|0;if(h>>>0>y[a>>2]){continue}break}d:{if(b>>>0>=i>>>0){break d}c=g&3;if(c){f=0;while(1){v[a>>2]=v[v[e+4>>2]+(b<<2)>>2];b=b+1|0;a=a+4|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}if(g-1>>>0<3){break d}while(1){c=b<<2;v[a>>2]=v[c+v[e+4>>2]>>2];v[a+4>>2]=v[(c+v[e+4>>2]|0)+4>>2];v[a+8>>2]=v[(c+v[e+4>>2]|0)+8>>2];v[a+12>>2]=v[(c+v[e+4>>2]|0)+12>>2];a=a+16|0;b=b+4|0;if((i|0)!=(b|0)){continue}break}}v[e+8>>2]=i-1}xa=d- -64|0}function DL(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,w=0;e=v[a+88>>2];a:{if(y[e>>2]<=b>>>0){b9(v[37696],4,13406,2139,67056,0);a=0;break a}q=v[e+12>>2];a=q+B(b,40)|0;k=v[a+28>>2];b:{if(!k){b9(v[37696],4,13406,2149,67056,0);break b}v[a+4>>2]=2134900735;v[a+8>>2]=2134900735;v[a+20>>2]=12582912;v[a+24>>2]=12582912;v[a+12>>2]=2134900735;v[a+16>>2]=12582912;r=v[k+68>>2];if(r){s=v[k+76>>2];while(1){f=v[((o<<3)+s|0)+4>>2];if((f|0)!=-1){d=0;p=0;l=xa-1040|0;xa=l;j=v[e+12>>2];n=f>>>2|0;g=v[e+24>>2]+B(n,12)|0;h=g+8|0;c:{d:{i=x[g+4>>1];c=(i|0)==1;if(!c){if(!i){break d}h=v[(e+B(i,12)|0)+92>>2]+(v[g+8>>2]<<2)|0}t=i&1;e:{if(c){c=0;break e}w=i&65534;c=0;while(1){m=(c<<2)+h|0;if(v[(j+B(x[m+2>>1],40)|0)+28>>2]!=(k|0)){v[(d<<2)+l>>2]=x[m>>1]|x[m+2>>1]<<16;d=d+1|0}m=((c|1)<<2)+h|0;if(v[(j+B(x[m+2>>1],40)|0)+28>>2]!=(k|0)){v[(d<<2)+l>>2]=x[m>>1]|x[m+2>>1]<<16;d=d+1|0}c=c+2|0;p=p+2|0;if((w|0)!=(p|0)){continue}break}}f:{if(!t){break f}c=(c<<2)+h|0;if(v[(j+B(x[c+2>>1],40)|0)+28>>2]==(k|0)){break f}v[(d<<2)+l>>2]=x[c>>1]|x[c+2>>1]<<16;d=d+1|0}if(i>>>0>=2){c=v[g+8>>2];h=(e+(i<<2)|0)+3176|0;v[v[(e+B(i,12)|0)+92>>2]+(c<<2)>>2]=v[h>>2];v[h>>2]=c}g:{switch(d|0){case 1:v[g+8>>2]=v[l>>2];u[g+4>>1]=d;break c;case 0:break d;default:break g}}h=e+B(d,12)|0;i=h+92|0;f=(e+(d<<2)|0)+3176|0;c=v[f>>2];h:{if((c|0)!=-1){v[g+8>>2]=c;c=v[i>>2]+(c<<2)|0;v[f>>2]=v[c>>2];break h}c=v[h+96>>2];v[g+8>>2]=c;f=(d&1073741823)+c|0;j=v[h+100>>2]&2147483647;i:{if(f>>>0<=j>>>0){break i}m=j;j=j?j<<1:2;j=f>>>0>j>>>0?f:j;if(m>>>0>=j>>>0){break i}Aw(i,j);c=v[h+96>>2]}i=v[i>>2];v[h+96>>2]=f;c=i+(c<<2)|0}I9(c,l,d<<2);u[g+4>>1]=d;break c}u[g+4>>1]=0;v[g+8>>2]=f;d=v[g>>2];v[l+1036>>2]=d;c=v[e+4208>>2];j:{if(c>>>0>=(v[e+4212>>2]&2147483647)>>>0){pn(e+4204|0,l+1036|0);break j}v[v[e+4204>>2]+(c<<2)>>2]=d;v[e+4208>>2]=v[e+4208>>2]+1}i=f>>>7|0;k:{if(i>>>0>2]){h=n&31;c=v[e+4216>>2];break k}d=v[37696];h=n&31;g=(n+128>>>5|0)+((h|0)!=0)|0;c=Ba[v[v[d+12>>2]+8>>2]](d+12|0,g<<2,24422,13406,274)|0;d=0;f=v[e+4220>>2];l:{if(f){I9(c,v[e+4216>>2],f<<2);d=v[e+4220>>2];if((g|0)==(d|0)){break l}}J9((d<<2)+c|0,0,g-d<<2)}d=v[e+4216>>2];if(d){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,d)}v[e+4220>>2]=g;v[e+4216>>2]=c}d=(i<<2)+c|0;v[d>>2]=v[d>>2]|1<>2]+12>>2]](d+12|0,k);v[a+28>>2]=0;v[(B(b,40)+q|0)+36>>2]=v[e+8>>2];v[e+8>>2]=b;vL(v[e>>2],v[e+12>>2])}a=(k|0)!=0}return a|0}function F_(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);F=z[e+8>>2];k=z[c+8>>2];t=C(F-k);j=z[b+8>>2];i=C(j-k);G=z[e>>2];n=z[c>>2];u=C(G-n);q=z[b>>2];o=C(q-n);H=z[e+4>>2];l=z[c+4>>2];w=C(H-l);p=z[b+4>>2];r=C(p-l);m=C(C(t*i)+C(C(u*o)+C(w*r)));a:{b:{B=z[d+8>>2];x=C(B-k);D=z[d>>2];y=C(D-n);E=z[d+4>>2];A=C(E-l);o=C(C(x*i)+C(C(y*o)+C(A*r)));if(!(!(o>2]=0;v[g>>2]=0;i=z[c+8>>2];j=z[b+8>>2];m=z[c>>2];k=z[b>>2];n=z[c+4>>2];l=z[b+4>>2];b=v[c+12>>2];v[h+8>>2]=v[c+8>>2];v[h+12>>2]=b;b=v[c+4>>2];v[h>>2]=v[c>>2];v[h+4>>2]=b;break b}i=C(j-B);s=C(q-D);I=C(p-E);r=C(C(t*i)+C(C(u*s)+C(w*I)));i=C(C(x*i)+C(C(y*s)+C(A*I)));if(!(!(i>=C(0))|!(i>=r))){v[f>>2]=1065353216;v[g>>2]=0;i=z[d+8>>2];j=z[b+8>>2];m=z[d>>2];k=z[b>>2];n=z[d+4>>2];l=z[b+4>>2];b=v[d+12>>2];v[h+8>>2]=v[d+8>>2];v[h+12>>2]=b;b=v[d+4>>2];v[h>>2]=v[d>>2];v[h+4>>2]=b;break b}j=C(j-F);s=C(q-G);p=C(p-H);q=C(C(x*j)+C(C(y*s)+C(A*p)));j=C(C(t*j)+C(C(u*s)+C(w*p)));if(!(!(j>=C(0))|!(j>=q))){v[f>>2]=0;v[g>>2]=1065353216;i=z[e+8>>2];j=z[b+8>>2];m=z[e>>2];k=z[b>>2];n=z[e+4>>2];l=z[b+4>>2];b=v[e+12>>2];v[h+8>>2]=v[e+8>>2];v[h+12>>2]=b;b=v[e+4>>2];v[h>>2]=v[e>>2];v[h+4>>2]=b;break b}p=C(C(o*r)-C(i*m));if(!(!(i=C(0))))){i=C(o/C(o-i));z[f>>2]=i;v[g>>2]=0;j=z[b+8>>2];m=z[b>>2];o=z[b+4>>2];v[h+12>>2]=0;k=C(C(x*i)+k);z[h+8>>2]=k;l=C(C(A*i)+l);z[h+4>>2]=l;i=C(C(y*i)+n);z[h>>2]=i;break a}s=C(C(i*j)-C(q*r));if(!(!(j<=q)|(!(s>2]=C(1)-i;z[g>>2]=i;j=z[b+8>>2];m=z[b>>2];k=z[b+4>>2];v[h+12>>2]=0;l=C(C(C(F-B)*i)+B);z[h+8>>2]=l;n=C(C(C(H-E)*i)+E);z[h+4>>2]=n;i=C(C(C(G-D)*i)+D);z[h>>2]=i;j=C(j-l);i=C(m-i);l=C(i*i);i=C(k-n);z[a>>2]=C(j*j)+C(l+C(i*i));return}i=C(C(q*m)-C(o*j));if(!(!(j=C(0))))){v[f>>2]=0;i=C(m/C(m-j));z[g>>2]=i;j=z[b+8>>2];m=z[b>>2];o=z[b+4>>2];v[h+12>>2]=0;k=C(C(t*i)+k);z[h+8>>2]=k;l=C(C(w*i)+l);z[h+4>>2]=l;i=C(C(u*i)+n);z[h>>2]=i;break a}j=C(C(1)/C(s+C(i+p)));i=C(i*j);z[f>>2]=i;j=C(p*j);z[g>>2]=j;v[h+12>>2]=0;m=C(C(C(x*i)+C(t*j))+k);z[h+8>>2]=m;k=C(C(C(A*i)+C(w*j))+l);z[h+4>>2]=k;i=C(C(C(y*i)+C(u*j))+n);z[h>>2]=i;j=C(z[b+8>>2]-m);i=C(z[b>>2]-i);l=C(i*i);i=C(z[b+4>>2]-k);z[a>>2]=C(j*j)+C(l+C(i*i));return}i=C(j-i);j=C(i*i);i=C(k-m);k=C(i*i);i=C(l-n);z[a>>2]=j+C(k+C(i*i));return}j=C(j-k);i=C(m-i);k=C(i*i);i=C(o-l);z[a>>2]=C(j*j)+C(k+C(i*i))}function NF(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=xa-16|0;xa=f;c=v[a+60>>2];k=v[a+244>>2];g=v[a+40>>2];e=v[a+152>>2];if(e){j=v[a+148>>2];while(1){d=v[j+(b<<2)>>2];h=(d>>>0)/(c>>>0)|0;d=v[g+(h<<2)>>2]+(d-B(c,h)<<4)|0;u[d+4>>1]=x[d+4>>1]&65471;b=b+1|0;if((e|0)!=(b|0)){continue}break}}e=v[a+164>>2];if(e){j=v[a+160>>2];b=0;while(1){d=v[j+(b<<2)>>2];h=(d>>>0)/(c>>>0)|0;d=v[g+(h<<2)>>2]+(d-B(c,h)<<4)|0;u[d+4>>1]=x[d+4>>1]&65471;b=b+1|0;if((e|0)!=(b|0)){continue}break}}g=0;v[a+164>>2]=0;v[a+152>>2]=0;a:{if(!v[a+328>>2]){v[a+328>>2]=0;v[a+252>>2]=v[a+116>>2];v[a+256>>2]=v[a+128>>2];break a}j=a+240|0;h=a+136|0;while(1){b=v[v[a+324>>2]+(g<<2)>>2];v[f>>2]=b;b=b>>>7|0;i=b<<2;c=v[i+v[a+204>>2]>>2];e=v[a+16>>2]+B(b,24)|0;d=w[e+4|0]&-33;t[e+4|0]=d;b:{if((c|0)!=-1){d=1<>2]+(c>>>3&536870908)|0;if(!(d&v[e>>2])){v[f+8>>2]=c;b=v[a+88>>2];v[e>>2]=d|v[e>>2];c=b+B(c,44)|0;b=v[a+244>>2];v[c+16>>2]=b;c:{if(b>>>0>=(v[a+248>>2]&2147483647)>>>0){pn(j,f+8|0);break c}v[v[a+240>>2]+(b<<2)>>2]=v[f+8>>2];v[a+244>>2]=v[a+244>>2]+1}b=v[f>>2]>>>7|0}v[v[a+28>>2]+(b<<2)>>2]=33554431;LF(a,v[f>>2]);break b}t[e+4|0]=d|2;v[i+v[a+28>>2]>>2]=v[a+140>>2];b=v[a+140>>2];d:{if(b>>>0>=(v[a+144>>2]&2147483647)>>>0){ZF(h,f);break d}v[v[a+136>>2]+(b<<2)>>2]=v[f>>2];v[a+140>>2]=v[a+140>>2]+1}c=v[e>>2];if((c|0)==-1){break b}while(1){b=v[a+84>>2];e=(c>>>0)/(b>>>0)|0;e=v[v[a+64>>2]+(e<<2)>>2]+(c-B(b,e)<<3)|0;d=c^1;i=v[a+448>>2];l=v[i+20>>2];b=(d>>>0)/(l>>>0)|0;e:{f:{b=v[v[v[i>>2]+(b<<2)>>2]+(d-B(b,l)<<2)>>2];if(b>>>0<=4294967167){b=v[v[a+204>>2]+(b>>>5&134217724)>>2];if((b|0)!=-1){break f}}c=c>>>1|0;b=v[a+60>>2];d=(c>>>0)/(b>>>0)|0;b=v[v[a+40>>2]+(d<<2)>>2]+(c-B(b,d)<<4)|0;if(w[b+4|0]&4|v[b>>2]==1){break e}CF(a,c);u[b+4>>1]=x[b+4>>1]|4;break e}d=1<>2]+(b>>>3&536870908)|0;if(d&v[c>>2]){break e}v[f+12>>2]=b;i=v[a+88>>2];v[c>>2]=d|v[c>>2];c=i+B(b,44)|0;b=v[a+244>>2];v[c+16>>2]=b;if(b>>>0>=(v[a+248>>2]&2147483647)>>>0){pn(j,f+12|0);break e}v[v[a+240>>2]+(b<<2)>>2]=v[f+12>>2];v[a+244>>2]=v[a+244>>2]+1}c=v[e>>2];if((c|0)!=-1){continue}break}}g=g+1|0;if(g>>>0>2]){continue}break}v[a+328>>2]=0;v[a+252>>2]=v[a+116>>2];v[a+256>>2]=v[a+128>>2];g=v[a+244>>2];if(k>>>0>=g>>>0){break a}while(1){c=v[v[a+88>>2]+B(v[v[a+240>>2]+(k<<2)>>2],44)>>2];b=c>>>7|0;if((b|0)!=33554431){while(1){LF(a,c);c=v[(v[a+16>>2]+B(b,24)|0)+8>>2];b=c>>>7|0;if((b|0)!=33554431){continue}break}g=v[a+244>>2]}k=k+1|0;if(k>>>0>>0){continue}break}}xa=f+16|0}function Nv(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=xa+-64|0;xa=c;i=w[a+92|0];a:{if(!i){break a}if(w[a+76|0]!=(b|0)){Ba[v[v[a>>2]+24>>2]](a,b,c+60|0,c+56|0,c+52|0);d=v[c+56>>2];t[c|0]=0;Ov(a+100|0,d,c);v[c+24>>2]=0;v[c+28>>2]=0;v[c+20>>2]=1065353216;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=1065353216;v[c+44>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=1065353216;v[c+12>>2]=0;v[c+16>>2]=0;Pv(a+124|0,b,c);v[c+24>>2]=0;v[c+28>>2]=0;v[c+20>>2]=1065353216;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=1065353216;v[c+44>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=1065353216;v[c+12>>2]=0;v[c+16>>2]=0;Pv(a+112|0,b,c);v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=1065353216;v[c>>2]=0;v[c+4>>2]=0;e=a+148|0;if((v[e+8>>2]&2147483647)>>>0>>0){Rv(e,b)}d=v[e+4>>2];if((d|0)<(b|0)){g=v[e>>2];f=g+B(b,28)|0;d=g+B(d,28)|0;while(1){z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];z[d+24>>2]=z[c+24>>2];d=d+28|0;if(f>>>0>d>>>0){continue}break}}v[e+4>>2]=b;v[c+8>>2]=0;v[c+12>>2]=1065353216;v[c>>2]=0;v[c+4>>2]=0;Qv(a+160|0,b,c);v[a+52>>2]=v[a+124>>2];v[a+56>>2]=v[a+112>>2];d=v[c+52>>2];t[c|0]=0;Ov(a+136|0,d,c);v[a+68>>2]=v[a+136>>2];u[a+78>>1]=v[c+52>>2];u[a+74>>1]=v[c+60>>2];u[a+72>>1]=v[c+56>>2];v[a+48>>2]=v[a+160>>2];v[a+44>>2]=v[a+148>>2];v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=0;v[c+4>>2]=0;f=a+172|0;if((v[f+8>>2]&2147483647)>>>0>>0){g=0;b:{if(!b){break b}e=b<<5;if(!e){break b}d=v[37696];g=Ba[v[v[d>>2]+20>>2]](d)|0?48485:63804;g=Ba[v[v[d+12>>2]+8>>2]](d+12|0,e,g,16608,553)|0}e=v[f>>2];d=v[f+4>>2];if((d|0)>0){j=(d<<5)+g|0;d=g;while(1){h=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=h;h=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=h;h=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=h;h=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=h;e=e+32|0;d=d+32|0;if(j>>>0>d>>>0){continue}break}e=v[f>>2]}if(!(!e|v[f+8>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e)}v[f+8>>2]=b;v[f>>2]=g}d=v[f+4>>2];if((d|0)<(b|0)){e=v[f>>2];g=e+(b<<5)|0;d=e+(d<<5)|0;while(1){e=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=e;e=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=e;e=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=e;e=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=e;d=d+32|0;if(g>>>0>d>>>0){continue}break}}v[f+4>>2]=b;v[a+36>>2]=v[a+172>>2];if(!w[a+92|0]){break a}}if(w[a+76|0]!=(b|0)){v[a+28>>2]=a;v[a+40>>2]=v[a+80>>2]}t[a+92|0]=0}xa=c- -64|0;return(i|0)!=0|0}function F3(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=C(0),p=0,q=0,r=0,s=0,u=0,x=0,y=0,A=C(0),B=0,D=0,E=0,F=0,G=0,H=0;p=32;q=xa-16|0;xa=q;t[q+12|0]=0;g=q-128|0;xa=g;v[q+8>>2]=g;j=b-1|0;a:{if((j|0)<=0){break a}while(1){b:{if((j|0)<=(k|0)){break b}while(1){if(j-k>>>0<=4){f=v[c+4>>2];while(1){l=v[c>>2];b=k;k=b+1|0;e=k;d=b;while(1){i=d;h=l<<2;m=h+(f+(v[(e<<2)+a>>2]<<5)|0)|0;d=h+(f+(v[(d<<2)+a>>2]<<5)|0)|0;d=C(z[m>>2]+z[m+16>>2])>2]+z[d+16>>2])?e:i;h=(e|0)<(j|0);e=e+1|0;if(h){continue}break}if((b|0)!=(d|0)){d=(d<<2)+a|0;e=v[d>>2];b=(b<<2)+a|0;v[d>>2]=v[b>>2];v[b>>2]=e}if((j|0)!=(k|0)){continue}break}break b}b=v[c>>2];i=b<<2;l=v[c+4>>2];h=((j+k|0)/2<<2)+a|0;e=v[h>>2];d=i+(l+(e<<5)|0)|0;m=(k<<2)+a|0;f=v[m>>2];i=i+(l+(f<<5)|0)|0;o=C(z[i>>2]+z[i+16>>2]);c:{if(!(o>C(z[d>>2]+z[d+16>>2]))){d=f;break c}v[m>>2]=e;v[h>>2]=f;d=v[m>>2];b=v[c>>2];e=(l+(d<<5)|0)+(b<<2)|0;o=C(z[e>>2]+z[e+16>>2]);e=f}A=o;i=(j<<2)+a|0;f=v[i>>2];r=(l+(f<<5)|0)+(b<<2)|0;o=C(z[r>>2]+z[r+16>>2]);d:{if(!(A>o)){d=f;break d}v[m>>2]=f;v[i>>2]=d;b=v[c>>2];f=(l+(d<<5)|0)+(b<<2)|0;o=C(z[f>>2]+z[f+16>>2]);e=v[h>>2]}b=(l+(e<<5)|0)+(b<<2)|0;if(C(z[b>>2]+z[b+16>>2])>o){v[h>>2]=d;v[i>>2]=e;e=v[h>>2]}d=h;b=j-1|0;h=(b<<2)+a|0;v[d>>2]=v[h>>2];v[h>>2]=e;d=k;while(1){m=v[c>>2]<<2;f=m+(l+(e<<5)|0)|0;o=C(z[f>>2]+z[f+16>>2]);while(1){f=d;d=d+1|0;i=(d<<2)+a|0;r=v[i>>2];s=m+(l+(r<<5)|0)|0;if(o>C(z[s>>2]+z[s+16>>2])){continue}break}while(1){b=b-1|0;s=(b<<2)+a|0;x=v[s>>2];y=m+(l+(x<<5)|0)|0;if(o>2]+z[y+16>>2])){continue}break}if((b|0)>(d|0)){v[i>>2]=x;v[s>>2]=r;e=v[h>>2];continue}break}v[i>>2]=e;v[h>>2]=r;e:{if((d-k|0)<(j-d|0)){if(p-1>>>0<=n>>>0){d=p<<3;if(d){b=v[37696];e=b+12|0;b=(D=e,E=d,F=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804,G=17218,H=155,B=v[v[e>>2]+8>>2],Ba[B](D|0,E|0,F|0,G|0,H|0)|0)}else{b=0}p=p<<1;b=I9(b,g,n<<2);d=u;u=1;if(!(!d|!g)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,g)}g=b}b=(n<<2)+g|0;v[b>>2]=k;v[b+4>>2]=f;k=f+2|0;break e}if(p-1>>>0<=n>>>0){d=p<<3;if(d){b=v[37696];e=b+12|0;b=(H=e,G=d,F=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804,E=17218,D=155,B=v[v[e>>2]+8>>2],Ba[B](H|0,G|0,F|0,E|0,D|0)|0)}else{b=0}p=p<<1;b=I9(b,g,n<<2);d=u;u=1;if(!(!d|!g)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,g)}g=b}b=(n<<2)+g|0;v[b>>2]=f+2;v[b+4>>2]=j;j=f}n=n+2|0;if((j|0)>(k|0)){continue}break}}if(n){b=n-2|0;k=v[(b<<2)+g>>2];j=v[((n<<2)+g|0)-4>>2];n=b;continue}break}if(!u|!g){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,g)}if(w[q+12|0]){v9(v[q+8>>2])}xa=q+16|0} +function nz(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;d=v[a+336>>2];f=v[d>>2];if(f){v[d>>2]=v[f>>2]}if(!f){d=v[37696];f=Ba[v[v[d>>2]+20>>2]](d)|0?26947:63804;f=Ba[v[v[d+12>>2]+8>>2]](d+12|0,12195,f,19395,82)|0;d=f+19&-16;v[d-4>>2]=d-f;f=hB(d,v[a+340>>2])}v[f+12052>>2]=0;d=v[b+144>>2];if(d>>>0>(v[f+12056>>2]&2147483647)>>>0){zw(f+12048|0,d);d=v[b+144>>2]}v[f+12052>>2]=d;v[f+12064>>2]=0;if((v[f+12068>>2]&2147483647)>>>0>>0){zw(f+12060|0,d);d=v[b+144>>2]}v[f+12064>>2]=d;d=v[((v[a+112>>2]<<2)+a|0)+484>>2];e=Ba[v[v[d>>2]+12>>2]](d,b,v[f+12048>>2],v[f+12060>>2])|0;a:{d=(e|0)<=v[b+72>>2];if(d|d){break a}d=3e4;while(1){if((e|0)<=v[b+72>>2]){break a}d=d-1|0;if(d){continue}d=1e4;continue}}e=128;d=v[b+92>>2]+128|0;v[b+92>>2]=d;q=v[b+64>>2];r=v[b+52>>2];n=v[b+16>>2];d=d-128|0;g=v[b+28>>2];if((d|0)<(g|0)){l=v[b+24>>2];while(1){h=g-d|0;i=(h|0)<128?h:128;e=e-i|0;if((h|0)>0){h=(i|0)>1?i:1;o=h&1;if((h|0)!=1){p=h&-2;i=0;while(1){j=l+B(d,52)|0;k=v[(v[v[j>>2]+24>>2]<<2)+149592>>2];if(k){Ba[k|0](j,z[a+52>>2])}j=j+52|0;k=v[(v[v[j>>2]+24>>2]<<2)+149592>>2];if(k){Ba[k|0](j,z[a+52>>2])}d=d+2|0;i=i+2|0;if((p|0)!=(i|0)){continue}break}}m=h+m|0;if(o){h=l+B(d,52)|0;i=v[(v[v[h>>2]+24>>2]<<2)+149592>>2];if(i){Ba[i|0](h,z[a+52>>2])}d=d+1|0}}if(!e){e=128;d=v[b+92>>2]+128|0;v[b+92>>2]=d;d=d-128|0}if((d|0)<(g|0)){continue}break}}h=d-g|0;if((n|0)>(h|0)){o=(v[b+12>>2]+B(v[b+20>>2],112)|0)+112|0;p=v[b+8>>2];k=-128-g|0;while(1){l=0;d=n-h|0;i=(d|0)<(e|0)?d:e;if((i|0)>0){while(1){d=h<<5;j=d+r|0;g=o+B(h,112)|0;oz(j,j+16|0,d+p|0,g,z[a+52>>2]);e=v[(h<<2)+q>>2];d=v[e+36>>2];z[e>>2]=z[d>>2];z[e+4>>2]=z[d+4>>2];z[e+8>>2]=z[d+8>>2];z[e+12>>2]=z[d+12>>2];z[e+16>>2]=z[d+16>>2];z[e+20>>2]=z[d+20>>2];z[e+24>>2]=z[d+24>>2];z[d>>2]=z[g+80>>2];z[d+4>>2]=z[g+84>>2];z[d+8>>2]=z[g+88>>2];z[d+12>>2]=z[g+92>>2];z[d+16>>2]=z[g+96>>2];z[d+20>>2]=z[g+100>>2];z[d+24>>2]=z[g+104>>2];z[d+64>>2]=z[g>>2];z[d+68>>2]=z[g+4>>2];z[d+72>>2]=z[g+8>>2];z[d+80>>2]=z[g+16>>2];z[d+84>>2]=z[g+20>>2];z[d+88>>2]=z[g+24>>2];if(pz(e,z[a+52>>2],w[a+64|0],w[a+66|0],j,v[v[c+100>>2]+(v[v[c+204>>2]+((v[g+72>>2]&33554431)<<2)>>2]<<2)>>2]!=0)==C(0)){v[e+64>>2]=0;v[e+68>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+72>>2]=0;v[e+56>>2]=0;u[e+28>>1]=x[e+28>>1]|16}h=h+1|0;l=l+1|0;if((i|0)!=(l|0)){continue}break}m=i+m|0}e=128;d=v[b+92>>2]+128|0;v[b+92>>2]=d;h=d+k|0;if((n|0)>(h|0)){continue}break}}v[b+96>>2]=v[b+96>>2]+m;a=v[a+336>>2];v[f>>2]=v[a>>2];v[a>>2]=f}function K1(a,b,c,d,e,f,g,h,i,j,k){var l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0),W=C(0),X=C(0);J=z[h+8>>2];m=z[a+8>>2];W=C(J-m);K=z[h+4>>2];l=z[a+4>>2];X=C(K-l);L=z[h>>2];n=z[a>>2];Q=C(L-n);M=z[i>>2];B=z[g+4>>2];w=z[d+4>>2];R=C(C(B-l)*w);r=z[g+8>>2];x=z[d+8>>2];S=C(C(r-m)*x);y=z[e+8>>2];p=z[d>>2];s=z[e>>2];H=z[e+4>>2];N=C(C(x*y)+C(C(p*s)+C(w*H)));T=N>C(0);t=C(z[b+8>>2]-m);u=C(z[b>>2]-n);o=C(z[b+4>>2]-l);O=C(C(t*t)+C(C(u*u)+C(o*o)));D=C(z[c+8>>2]-m);E=C(z[c>>2]-n);F=C(z[c+4>>2]-l);P=C(C(D*D)+C(C(E*E)+C(F*F)));q=C(C(t*D)+C(C(u*E)+C(o*F)));I=C(C(1)/C(C(O*P)-C(q*q)));A=r;G=z[g>>2];U=C(G-n);r=T?C(C(C(C(p*C(-U))-R)-S)/N):C(0);A=C(A+C(y*r));m=C(A-m);G=C(G+C(s*r));n=C(G-n);B=C(B+C(H*r));l=C(B-l);V=C(C(m*t)+C(C(n*u)+C(o*l)));l=C(C(m*D)+C(C(n*E)+C(F*l)));m=C(I*C(C(P*V)-C(q*l)));a:{if(!(m>=C(-1.1920928955078125e-7))|!(m<=C(1.0000001192092896))){break a}l=C(I*C(C(O*l)-C(q*V)));if(!(l>=C(-1.1920928955078125e-7))|!(l<=C(1.0000001192092896))|(!(C(m+l)>2];b=(v[k>>2]<<6)+j|0;v[b>>2]=v[g>>2];v[b+4>>2]=c;c=v[g+12>>2];v[b+8>>2]=v[g+8>>2];v[b+12>>2]=c;b=(v[k>>2]<<6)+j|0;z[b+16>>2]=G;v[b+28>>2]=0;z[b+24>>2]=A;z[b+20>>2]=B;p=z[e+8>>2];c=v[e+4>>2];b=(v[k>>2]<<6)+j|0;v[b+32>>2]=v[e>>2];v[b+36>>2]=c;z[b+44>>2]=-r;z[b+40>>2]=p;b=v[k>>2];v[k>>2]=b+1;v[((b<<6)+j|0)+48>>2]=f;M=z[i>>2];J=z[h+8>>2];K=z[h+4>>2];L=z[h>>2];y=z[e+8>>2];H=z[e+4>>2];s=z[e>>2];x=z[d+8>>2];w=z[d+4>>2];p=z[d>>2]}n=C(X*w);w=C(W*x);m=T?C(C(C(C(p*C(-Q))-n)-w)/N):C(0);x=C(C(y*m)+J);l=C(x-z[a+8>>2]);A=C(l*t);t=C(L+C(s*m));y=C(t-z[a>>2]);s=C(y*u);r=o;u=C(C(H*m)+K);o=C(u-z[a+4>>2]);s=C(A+C(s+C(r*o)));o=C(C(l*D)+C(C(y*E)+C(F*o)));l=C(I*C(C(P*s)-C(q*o)));b:{if(!(l>=C(-1.1920928955078125e-7))|!(l<=C(1.0000001192092896))){break b}q=C(I*C(C(O*o)-C(q*s)));if(!(q>=C(-1.1920928955078125e-7))|!(q<=C(1.0000001192092896))|(!(C(l+q)>2];a=(v[k>>2]<<6)+j|0;v[a>>2]=v[h>>2];v[a+4>>2]=b;b=v[h+12>>2];v[a+8>>2]=v[h+8>>2];v[a+12>>2]=b;a=(v[k>>2]<<6)+j|0;z[a+16>>2]=t;v[a+28>>2]=0;z[a+24>>2]=x;z[a+20>>2]=u;p=z[e+8>>2];b=v[e+4>>2];a=(v[k>>2]<<6)+j|0;v[a+32>>2]=v[e>>2];v[a+36>>2]=b;z[a+44>>2]=-m;z[a+40>>2]=p;a=v[k>>2];v[k>>2]=a+1;v[((a<<6)+j|0)+48>>2]=f}}function AR(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,u=0,x=0,z=0;c=xa-96|0;xa=c;d=v[a+28>>2];j=v[v[d+988>>2]+128>>2];f=v[d+976>>2];b=c;a=b+76|0;if(a){v[a>>2]=v[f+1e3>>2]}a=b+72|0;if(a){v[a>>2]=v[f+996>>2]}a=b+68|0;if(a){v[a>>2]=v[f+1004>>2]}n=v[b+76>>2]<<3;t[b+60|0]=n>>>0>1024;a:{if(n>>>0>=1025){k=u9(n,11777,3472);break a}k=c-(n+15&-16)|0;c=k;xa=c}v[b+56>>2]=k;o=v[b+72>>2]<<3;t[b+52|0]=o>>>0>1024;b:{if(o>>>0>=1025){l=u9(o,11777,3473);break b}l=c-(o+15&-16)|0;c=l;xa=c}v[b+48>>2]=l;p=v[b+68>>2]<<3;t[b+44|0]=p>>>0>1024;c:{if(p>>>0>=1025){m=u9(p,11777,3474);break c}m=c-(p+15&-16)|0;xa=m}v[b+40>>2]=m;a=v[v[d+976>>2]+1024>>2];Ba[v[v[a>>2]+84>>2]](b,a);a=v[d+2360>>2];AK(v[d+976>>2],k,b+76|0,l,b+72|0,m,b+68|0);g=a&8;if(v[b+76>>2]>0){while(1){a=v[((h<<3)+k|0)+4>>2];vJ(v[d+2168>>2],a);TR(a,j,b,(g|0)!=0);if(!(w[a+46|0]&4)){iG(v[d+1e3>>2],v[a+60>>2])}h=h+1|0;if((h|0)>2]){continue}break}}if(v[b+72>>2]>0){e=d+2420|0;c=0;while(1){i=v[((c<<3)+l|0)+4>>2];d:{if(!UR(i,j,b,(g|0)!=0)|w[i+46|0]&4){break d}a=v[v[i+28>>2]+4>>2];f=w[v[a+44>>2]+9|0]-1>>>0<2?a:0;a=v[v[i+32>>2]+4>>2];a=w[v[a+44>>2]+9|0]-1>>>0<2?a:0;v[b+84>>2]=a;v[b+80>>2]=f;v[b+88>>2]=v[f+48>>2];v[b+92>>2]=v[a+48>>2];a=v[d+2424>>2];if(a>>>0>=(v[d+2428>>2]&2147483647)>>>0){AP(e,b+80|0);break d}f=v[d+2420>>2]+(a<<4)|0;a=v[b+84>>2];v[f>>2]=v[b+80>>2];v[f+4>>2]=a;a=v[b+92>>2];v[f+8>>2]=v[b+88>>2];v[f+12>>2]=a;v[d+2424>>2]=v[d+2424>>2]+1}kG(v[d+1e3>>2],v[i+60>>2]);c=c+1|0;if((c|0)>2]){continue}break}}c=0;h=v[b+68>>2];if((h|0)>0){while(1){a=v[((c<<3)+m|0)+4>>2];if(w[a+44|0]&32){SR(a,32,0,0,j,b);h=v[b+68>>2]}c=c+1|0;if((h|0)>(c|0)){continue}break}}CP(d,j);s=v[d+980>>2]+160|0;q=v[d+1160>>2];if(q){h=0;while(1){e=v[d+1156>>2];x=v[e+(h<<2)>>2];a=h+8|0;e:{if(a>>>0>=q>>>0){break e}r=0;f=0;i=0;c=v[e+(a<<2)>>2];a=c;e=a+511|0;i=e>>>0<511?1:i;e=i<<26|e>>>6;g=a>>>6|0;a=(i>>>6|0)-(g>>>0>e>>>0)|0;u=e-g|0;i=a;g=0;z=g;e=u+1|0;a=e?a:a+1|0;j=e&7;if(g|j){while(1){g=e;e=e-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)|(z|0)!=(f|0)){continue}break}}if(!i&u>>>0<7){break e}while(1){c=c+512|0;a=a-(e>>>0<8)|0;e=e-8|0;if(a|e){continue}break}}fH(x,s);h=h+1|0;if((q|0)!=(h|0)){continue}break}}if(v[d+1236>>2]){a=v[d+1204>>2];c=0;while(1){vG(v[v[a+(c<<2)>>2]>>2],s);c=c+1|0;if(c>>>0>2]){continue}break}}if(p>>>0>=1025){v9(m)}if(o>>>0>=1025){v9(l)}if(n>>>0>=1025){v9(k)}xa=b+96|0}function Mx(a,b){var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=0,l=0,m=0,n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0);c=xa-160|0;xa=c;k=v[b+12>>2];p=v[a+332>>2];d=v[a+336>>2];i=v[b+20>>2];Lx(a,i);d=d-1|0;if(d){while(1){b=B(d,112)+i|0;z[c+48>>2]=z[b>>2];z[c+52>>2]=z[b+4>>2];z[c+56>>2]=z[b+8>>2];z[c+60>>2]=z[b+12>>2];z[c+64>>2]=z[b+16>>2];z[c+68>>2]=z[b+20>>2];z[c+72>>2]=z[b+24>>2];z[c+76>>2]=z[b+28>>2];z[c+80>>2]=z[b+32>>2];z[c+84>>2]=z[b+36>>2];z[c+88>>2]=z[b+40>>2];z[c+92>>2]=z[b+44>>2];z[c+96>>2]=z[b+48>>2];z[c+100>>2]=z[b+52>>2];z[c+104>>2]=z[b+56>>2];z[c+108>>2]=z[b+60>>2];z[c+112>>2]=z[b- -64>>2];z[c+116>>2]=z[b+68>>2];z[c+120>>2]=z[b+72>>2];z[c+124>>2]=z[b+76>>2];z[c+128>>2]=z[b+80>>2];z[c+132>>2]=z[b+84>>2];z[c+136>>2]=z[b+88>>2];z[c+140>>2]=z[b+92>>2];z[c+144>>2]=z[b+96>>2];z[c+148>>2]=z[b+100>>2];z[c+152>>2]=z[b+104>>2];v[c+156>>2]=v[b+108>>2];b=v[a+340>>2]+B(d,160)|0;f=z[b+128>>2];g=z[b+124>>2];h=z[b+120>>2];v[c+40>>2]=0;z[c+36>>2]=-h;z[c+32>>2]=g;z[c+28>>2]=h;v[c+24>>2]=0;z[c+12>>2]=f;v[c+8>>2]=0;z[c+20>>2]=-f;z[c+16>>2]=-g;Pw(c+8|0,c+48|0);e=d<<5;l=e+p|0;b=B(v[l+24>>2],112)+i|0;z[b>>2]=z[c+48>>2]+z[b>>2];z[b+4>>2]=z[c+52>>2]+z[b+4>>2];z[b+8>>2]=z[c+56>>2]+z[b+8>>2];z[b+12>>2]=z[c+60>>2]+z[b+12>>2];z[b+16>>2]=z[c+64>>2]+z[b+16>>2];z[b+20>>2]=z[c+68>>2]+z[b+20>>2];z[b+24>>2]=z[c+72>>2]+z[b+24>>2];z[b+28>>2]=z[c+76>>2]+z[b+28>>2];z[b+32>>2]=z[c+80>>2]+z[b+32>>2];z[b+36>>2]=z[c+84>>2]+z[b+36>>2];z[b+40>>2]=z[c+88>>2]+z[b+40>>2];z[b+44>>2]=z[c+92>>2]+z[b+44>>2];z[b+48>>2]=z[c+96>>2]+z[b+48>>2];z[b+52>>2]=z[c+100>>2]+z[b+52>>2];z[b+56>>2]=z[c+104>>2]+z[b+56>>2];z[b+60>>2]=z[c+108>>2]+z[b+60>>2];m=b- -64|0;z[m>>2]=z[c+112>>2]+z[m>>2];z[b+68>>2]=z[c+116>>2]+z[b+68>>2];z[b+72>>2]=z[c+120>>2]+z[b+72>>2];z[b+76>>2]=z[c+124>>2]+z[b+76>>2];z[b+80>>2]=z[c+128>>2]+z[b+80>>2];z[b+84>>2]=z[c+132>>2]+z[b+84>>2];z[b+88>>2]=z[c+136>>2]+z[b+88>>2];z[b+92>>2]=z[c+140>>2]+z[b+92>>2];z[b+96>>2]=z[c+144>>2]+z[b+96>>2];z[b+100>>2]=z[c+148>>2]+z[b+100>>2];z[b+104>>2]=z[c+152>>2]+z[b+104>>2];e=e+k|0;q=z[e+24>>2];r=z[e+20>>2];b=v[a+340>>2]+B(d,160)|0;h=z[b+120>>2];s=z[e+16>>2];n=z[b+124>>2];o=z[b+128>>2];f=z[e+8>>2];g=z[e+4>>2];b=(v[l+24>>2]<<5)+k|0;j=z[e>>2];z[b>>2]=j+z[b>>2];z[b+4>>2]=g+z[b+4>>2];z[b+8>>2]=f+z[b+8>>2];z[b+16>>2]=C(s+C(C(n*f)-C(g*o)))+z[b+16>>2];z[b+20>>2]=C(r+C(C(o*j)-C(f*h)))+z[b+20>>2];z[b+24>>2]=C(q+C(C(h*g)-C(j*n)))+z[b+24>>2];d=d-1|0;if(d){continue}break}}xa=c+160|0}function J5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),x=C(0),y=0,A=C(0),B=C(0),D=C(0),E=0;e=xa-160|0;xa=e;E5(e+128|0,e+96|0,a,b,c);i=z[e+128>>2];f=C(z[e+112>>2]-z[e+144>>2]);l=C(f+f);f=C(z[e+116>>2]-z[e+148>>2]);m=C(f+f);k=z[e+132>>2];j=z[e+136>>2];f=C(z[e+120>>2]-z[e+152>>2]);o=C(f+f);p=C(C(C(C(-i)*l)-C(m*k))-C(j*o));f=z[e+140>>2];A=C(C(f*f)+C(-.5));B=C(C(C(o*A)+C(f*C(C(k*l)-C(i*m))))-C(j*p));z[e+88>>2]=B;D=C(C(C(m*A)+C(f*C(C(i*o)-C(j*l))))-C(k*p));z[e+84>>2]=D;q=z[e+104>>2];s=z[e+100>>2];u=z[e+108>>2];x=z[e+96>>2];z[e+76>>2]=C(j*q)+C(C(k*s)+C(C(f*u)+C(i*x)));z[e+72>>2]=C(x*k)+C(C(C(f*q)-C(u*j))-C(i*s));z[e+68>>2]=C(q*i)+C(C(C(f*s)-C(u*k))-C(j*x));z[e+64>>2]=C(s*j)+C(C(C(f*x)-C(u*i))-C(k*q));l=C(C(C(l*A)+C(f*C(C(j*m)-C(k*o))))-C(i*p));z[e+80>>2]=l;y=v[a+452>>2];t[e+31|0]=0;f=y&1?l:C(0);m=f;i=y&2?D:C(0);o=i;k=y&4?B:C(0);p=k;q=C(C(k*k)+C(C(f*f)+C(i*i)));j=z[a+468>>2];E=q>C(j*j);if(E){m=C(C(1)/C(K(q)));p=C(j*C(k*m));o=C(j*C(i*m));m=C(j*C(f*m))}z[e+56>>2]=p+C(B-k);z[e+52>>2]=o+C(D-i);z[e+48>>2]=C(l-f)+m;g=e+8|0;h=e- -64|0;f=H9(C(z[a+472>>2]*C(.5)));m=C(0);o=C(0);n=xa-16|0;xa=n;r=e+31|0;t[r|0]=0;a:{b:{switch(y>>>3|0){case 0:z[g>>2]=z[h>>2];z[g+4>>2]=z[h+4>>2];z[g+8>>2]=z[h+8>>2];z[g+12>>2]=z[h+12>>2];break a;case 1:z[g>>2]=z[h>>2];z[g+4>>2]=z[h+4>>2];z[g+8>>2]=z[h+8>>2];z[g+12>>2]=z[h+12>>2];break a;case 2:z[g>>2]=z[h>>2];z[g+4>>2]=z[h+4>>2];z[g+8>>2]=z[h+8>>2];z[g+12>>2]=z[h+12>>2];break a;case 3:v[n+8>>2]=1065353216;v[n>>2]=0;v[n+4>>2]=0;C5(g,h,n,f,r);break a;case 4:z[g>>2]=z[h>>2];z[g+4>>2]=z[h+4>>2];z[g+8>>2]=z[h+8>>2];z[g+12>>2]=z[h+12>>2];break a;case 5:v[n+8>>2]=0;v[n>>2]=0;v[n+4>>2]=1065353216;C5(g,h,n,f,r);break a;case 6:v[n+8>>2]=0;v[n>>2]=1065353216;v[n+4>>2]=0;C5(g,h,n,f,r);break a;case 7:j=z[h>>2];i=z[h+12>>2];c:{if(i>=C(0)){l=z[h+4>>2];k=z[h+8>>2];break c}i=C(-i);j=C(-j);l=C(-z[h+4>>2]);k=C(-z[h+8>>2])}h=f>i;t[r|0]=h;d:{if(!h){f=i;break d}i=C(0);p=C(C(k*k)+C(C(j*j)+C(l*l)));if(p>C(0)){i=C(C(1)/C(K(p)));o=C(k*i);m=C(l*i);i=C(j*i)}j=C(K(C(C(1)-C(f*f))));k=C(j*o);l=C(j*m);j=C(j*i)}z[g+12>>2]=f;z[g+8>>2]=k;z[g+4>>2]=l;z[g>>2]=j;break a;default:break b}}v[g+8>>2]=0;v[g+12>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0}xa=n+16|0;g=v[e+12>>2];v[e+32>>2]=v[e+8>>2];v[e+36>>2]=g;g=v[e+20>>2];v[e+40>>2]=v[e+16>>2];v[e+44>>2]=g;if(w[e+31|0]?1:E){K5(b,c,e+128|0,e+96|0,e+32|0,a,d)}xa=e+160|0}function GV(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0);a:{if(f){v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=1065353216;v[c+24>>2]=0;v[c+28>>2]=0;v[c+20>>2]=1065353216;v[c+40>>2]=1065353216;v[c+44>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[d+4>>2]=0;v[d+8>>2]=0;v[d>>2]=1065353216;v[d+12>>2]=0;v[d+16>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+20>>2]=1065353216;v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=1065353216;a=d+44|0;break a}m=z[a+8>>2];w=C(C(1)/m);n=z[a+4>>2];A=C(C(1)/n);g=z[a>>2];B=C(C(1)/g);b:{if(!(g!=g|g!=n|g!=m)){v[c+44>>2]=0;z[c+40>>2]=m;v[c+28>>2]=0;z[c+20>>2]=n;v[c+12>>2]=0;z[c>>2]=g;h=C(n*C(0));z[c+36>>2]=h;g=C(g*C(0));z[c+32>>2]=g;i=C(m*C(0));z[c+24>>2]=i;z[c+16>>2]=g;z[c+8>>2]=i;z[c+4>>2]=h;z[d+40>>2]=w;g=C(A*C(0));z[d+36>>2]=g;h=C(B*C(0));z[d+32>>2]=h;v[d+28>>2]=0;i=C(w*C(0));z[d+24>>2]=i;z[d+20>>2]=A;z[d+16>>2]=h;v[d+12>>2]=0;z[d+8>>2]=i;z[d+4>>2]=g;z[d>>2]=B;break b}l=z[b+8>>2];o=z[b+4>>2];k=z[b+12>>2];h=z[b>>2];v[c+44>>2]=0;v[c+28>>2]=0;v[c+12>>2]=0;j=C(h+h);r=C(C(1)-C(h*j));p=C(o+o);D=C(o*p);h=C(r-D);s=C(m*h);q=C(p*l);x=C(j*k);i=C(q-x);t=C(n*i);E=C(j*l);F=C(p*k);p=C(E+F);u=C(g*p);z[c+40>>2]=C(s*h)+C(C(u*p)+C(i*t));q=C(q+x);x=C(j*o);y=k;k=C(l+l);y=C(y*k);o=C(x-y);j=C(l*k);l=C(r-j);z[c+24>>2]=C(s*q)+C(C(u*o)+C(l*t));k=C(E-F);r=C(s*k);j=C(C(C(1)-D)-j);s=C(x+y);z[c+8>>2]=r+C(C(u*j)+C(s*t));t=C(m*q);u=C(g*o);r=C(n*l);z[c+36>>2]=C(t*h)+C(C(u*p)+C(i*r));m=C(m*k);g=C(g*j);n=C(n*s);z[c+32>>2]=C(m*h)+C(C(g*p)+C(i*n));z[c+20>>2]=C(t*q)+C(C(u*o)+C(l*r));z[c+16>>2]=C(m*q)+C(C(g*o)+C(l*n));z[c+4>>2]=C(t*k)+C(C(u*j)+C(s*r));z[c>>2]=C(m*k)+C(C(g*j)+C(s*n));g=C(w*h);m=C(B*p);n=C(A*i);z[d+40>>2]=C(g*h)+C(C(m*p)+C(i*n));t=C(w*q);u=C(B*o);r=C(A*l);z[d+36>>2]=C(t*h)+C(C(u*p)+C(i*r));w=C(w*k);x=C(w*h);h=C(B*j);y=i;i=C(A*s);z[d+32>>2]=x+C(C(h*p)+C(y*i));v[d+28>>2]=0;z[d+24>>2]=C(g*q)+C(C(m*o)+C(l*n));z[d+20>>2]=C(t*q)+C(C(u*o)+C(l*r));z[d+16>>2]=C(w*q)+C(C(h*o)+C(l*i));v[d+12>>2]=0;z[d+8>>2]=C(g*k)+C(C(m*j)+C(s*n));z[d+4>>2]=C(t*k)+C(C(u*j)+C(s*r));z[d>>2]=C(w*k)+C(C(h*j)+C(s*i))}v[d+44>>2]=0;p=z[c+36>>2];q=z[c+20>>2];o=z[c+32>>2];l=z[c>>2];k=z[c+16>>2];j=z[c+4>>2];g=z[e+8>>2];h=z[e>>2];i=z[e+4>>2];z[e+8>>2]=C(z[c+40>>2]*g)+C(C(z[c+8>>2]*h)+C(i*z[c+24>>2]));z[e+4>>2]=C(p*g)+C(C(j*h)+C(i*q));z[e>>2]=C(o*g)+C(C(l*h)+C(i*k));a=e+12|0}v[a>>2]=0}function rp(a,b){var c=0,d=0,e=0,f=0,g=0;d=v[a+12>>2];e=d+24|0;c=v[a+8>>2]&2147483647;a:{if(e>>>0<=c>>>0){break a}f=c;c=B(e,3);if(f>>>0>=c>>>0){break a}op(a,c)}pp(a,e);f=v[b+4>>2];c=v[a>>2]+v[a+12>>2]|0;v[c>>2]=v[b>>2];v[c+4>>2]=f;f=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=f;f=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=f;v[a+12>>2]=e;c=v[b>>2];if(c){e=d+36|0;d=v[a+8>>2]&2147483647;b:{if(e>>>0<=d>>>0){break b}f=d;d=B(e,3);if(f>>>0>=d>>>0){break b}op(a,d)}pp(a,e);d=v[a>>2]+v[a+12>>2]|0;z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];v[a+12>>2]=e}c=v[b+4>>2];if(c){e=e+12|0;d=v[a+8>>2]&2147483647;c:{if(e>>>0<=d>>>0){break c}f=d;d=B(e,3);if(f>>>0>=d>>>0){break c}op(a,d)}pp(a,e);d=v[a>>2]+v[a+12>>2]|0;z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];v[a+12>>2]=e}c=v[b+16>>2];if(c){e=e+28|0;d=v[a+8>>2]&2147483647;d:{if(e>>>0<=d>>>0){break d}f=d;d=B(e,3);if(f>>>0>=d>>>0){break d}op(a,d)}pp(a,e);d=v[a>>2]+v[a+12>>2]|0;z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];z[d+16>>2]=z[c+16>>2];z[d+20>>2]=z[c+20>>2];z[d+24>>2]=z[c+24>>2];v[a+12>>2]=e}b=v[b+12>>2];e:{if(!b){break e}d=v[b>>2];c=e+4|0;f=v[a+8>>2]&2147483647;f:{if(c>>>0<=f>>>0){break f}g=B(c,3);if(f>>>0>=g>>>0){break f}op(a,g)}pp(a,c);v[v[a>>2]+v[a+12>>2]>>2]=d;v[a+12>>2]=c;g:{h:{switch(d|0){case 2:e=e+16|0;c=v[a+8>>2]&2147483647;i:{if(e>>>0<=c>>>0){break i}d=c;c=B(e,3);if(d>>>0>=c>>>0){break i}op(a,c)}pp(a,e);d=v[b+4>>2];c=v[a>>2]+v[a+12>>2]|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;v[c+8>>2]=v[b+8>>2];break g;case 0:e=e+12|0;c=v[a+8>>2]&2147483647;j:{if(e>>>0<=c>>>0){break j}d=c;c=B(e,3);if(d>>>0>=c>>>0){break j}op(a,c)}pp(a,e);d=v[b+4>>2];c=v[a>>2]+v[a+12>>2]|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;break g;case 4:e=e+44|0;c=v[a+8>>2]&2147483647;k:{if(e>>>0<=c>>>0){break k}d=c;c=B(e,3);if(d>>>0>=c>>>0){break k}op(a,c)}pp(a,e);c=v[a>>2]+v[a+12>>2]|0;v[c>>2]=v[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];z[c+28>>2]=z[b+28>>2];v[c+32>>2]=v[b+32>>2];t[c+36|0]=w[b+36|0];d=w[b+37|0]|w[b+38|0]<<8;t[c+37|0]=d;t[c+38|0]=d>>>8;t[c+39|0]=w[b+39|0];break g;case 3:break h;default:break e}}e=e+20|0;c=v[a+8>>2]&2147483647;l:{if(e>>>0<=c>>>0){break l}d=c;c=B(e,3);if(d>>>0>=c>>>0){break l}op(a,c)}pp(a,e);c=v[a>>2]+v[a+12>>2]|0;v[c>>2]=v[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2]}v[a+12>>2]=e}}function OV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0);h=z[f+4>>2];k=C(h+h);g=z[f+8>>2];i=C(k*g);l=z[f>>2];j=C(l+l);m=z[f+12>>2];p=C(j*m);r=C(i-p);o=C(j*g);q=C(k*m);n=C(o+q);i=C(i+p);s=C(j*h);t=C(g+g);m=C(t*m);p=C(s-m);o=C(o-q);q=C(s+m);l=C(C(1)-C(l*j));j=C(g*t);g=C(l-j);k=C(h*k);h=C(C(C(1)-k)-j);s=z[d+24>>2];t=z[d+20>>2];x=z[f+24>>2];u=z[f+20>>2];v=z[d+16>>2];j=z[e+4>>2];w=z[f+16>>2];k=C(l-k);a:{if(k>2];s=C(s-x);i=C(s+s);p=C(C(k*k)+C(-.5));t=C(t-u);o=C(t+t);x=C(v-w);q=C(x+x);v=C(C(i*p)-C(k*C(C(r*o)-C(q*m))));u=C(C(l*i)+C(C(r*q)+C(o*m)));w=C(l*u);g=C(C(m*u)+C(C(o*p)-C(k*C(C(l*q)-C(i*r)))));h=C(-j);i=C(C(r*u)+C(C(q*p)-C(k*C(C(m*i)-C(o*l)))));f=1;b:{if(h>i){break b}h=i;f=0;if(!(j>2];o=C(w+v);i=C(-n);c:{d:{if(i>g){break d}if(!(g>n)){break c}i=n}g=i;f=1}u=z[c+4>>2];v=C(-m);w=C(-r);y=C(-l);e:{f:{g:{i=C(-q);if(!(oq;if((c|f)!=1){break g}i=c?q:o}j=C(i+i);h=C(h+h);g=C(g+g);n=C(C(l*j)+C(C(r*h)+C(m*g)));i=C(s-C(C(l*n)+C(C(j*p)+C(k*C(C(r*g)+C(h*v))))));z[a+8>>2]=i;l=C(t-C(C(m*n)+C(C(g*p)+C(k*C(C(l*h)+C(j*w))))));z[a+4>>2]=l;g=C(x-C(C(r*n)+C(C(h*p)+C(k*C(C(m*j)+C(g*y))))));z[a>>2]=g;h=C(u+C(0));j=C(h*h);h=C(C(i*i)+C(C(g*g)+C(l*l)));c=0;if(j>2]=g;z[a>>2]=g*z[a>>2];z[a+4>>2]=g*z[a+4>>2];z[a+8>>2]=g*z[a+8>>2];i=C(h*z[b>>2]);break f}i=C(q-C(D(o)));n=C(n-C(D(g)));j=C(j-C(D(h)));h:{i:{if(nn){z[b>>2]=-n;h=C(0);j=C(0);g=g>C(0)?C(2):C(-2);break h}z[b>>2]=-i;j=o>C(0)?C(1):C(-1);break i}if(i>j){z[b>>2]=-j;h=h>C(0)?C(2):C(-2);j=C(0);g=C(0);break h}z[b>>2]=-i;j=o>C(0)?C(1):C(-1)}h=C(0);g=C(0)}j=C(j+j);n=C(C(l*j)+C(C(r*h)+C(m*g)));z[a+8>>2]=C(l*n)+C(C(j*p)+C(k*C(C(r*g)+C(h*v))));z[a+4>>2]=C(m*n)+C(C(g*p)+C(k*C(C(l*h)+C(j*w))));z[a>>2]=C(r*n)+C(C(h*p)+C(k*C(C(m*j)+C(g*y))));i=z[b>>2]}g=C(i-u);z[b>>2]=g>2]){j=z[d+16>>2];k=z[d+20>>2];m=v[d+28>>2];o=v[d+32>>2];f=z[e+20>>2];l=z[d+4>>2];h=z[d+8>>2];e=B(c,36)+b|0;g=z[d+12>>2];i=z[d>>2];n=C(C(g-i)*C(.5));z[e+20>>2]=n;z[e+8>>2]=C(i+g)*C(.5);g=C(C(k-h)*C(.5));z[e+28>>2]=g;i=C(C(j-l)*C(.5));z[e+24>>2]=i;z[e+16>>2]=C(h+k)*C(.5);z[e+12>>2]=C(l+j)*C(.5);if(f!=C(0)){z[e+20>>2]=f+n;z[e+24>>2]=f+i;z[e+28>>2]=f+g}d=o<<1&30|m-a<<3|1;a=0;break a}f=z[d+16>>2];j=z[d+20>>2];k=z[d+4>>2];l=z[d+8>>2];a=B(c,36)+b|0;h=z[d+12>>2];g=z[d>>2];i=C(C(h-g)*C(.5));z[a+20>>2]=i;z[a+8>>2]=C(g+h)*C(.5);h=C(C(j-l)*C(.5));z[a+28>>2]=h;g=C(C(f-k)*C(.5));z[a+24>>2]=g;z[a+16>>2]=C(l+j)*C(.5);z[a+12>>2]=C(k+f)*C(.5);f=z[e+20>>2];if(f!=C(0)){z[a+20>>2]=f+i;z[a+24>>2]=f+g;z[a+28>>2]=f+h}v[e>>2]=v[e>>2]+1;a=v[e+24>>2];b:{if(a){d=v[a+37892>>2];if((d|0)!=256){break b}}a=v[37696];d=a+12|0;a=(q=d,r=37900,s=Ba[v[v[a>>2]+20>>2]](a)|0?46279:63804,t=12274,u=509,p=v[v[d>>2]+8>>2],Ba[p](q|0,r|0,s|0,t|0,u|0)|0);m=a+37892|0;d=a+4|0;while(1){v[d+8>>2]=0;v[d+12>>2]=0;v[d+32>>2]=-1;v[d+36>>2]=0;v[d+24>>2]=-1082130432;v[d+28>>2]=-1082130432;v[d+16>>2]=0;v[d+20>>2]=-1082130432;v[d+44>>2]=0;v[d+48>>2]=0;v[d+68>>2]=-1;v[d+72>>2]=0;v[d+60>>2]=-1082130432;v[d+64>>2]=-1082130432;v[d+52>>2]=0;v[d+56>>2]=-1082130432;v[d+80>>2]=0;v[d+84>>2]=0;v[d+104>>2]=-1;v[d+108>>2]=0;v[d+96>>2]=-1082130432;v[d+100>>2]=-1082130432;v[d+88>>2]=0;v[d+92>>2]=-1082130432;v[d+116>>2]=0;v[d+120>>2]=0;v[d+140>>2]=-1;v[d+144>>2]=0;v[d+132>>2]=-1082130432;v[d+136>>2]=-1082130432;v[d+124>>2]=0;v[d+128>>2]=-1082130432;v[d+156>>2]=0;v[d+160>>2]=0;v[d+180>>2]=-1;v[d+184>>2]=0;v[d+172>>2]=-1082130432;v[d+176>>2]=-1082130432;v[d+164>>2]=0;v[d+168>>2]=-1082130432;v[d+192>>2]=0;v[d+196>>2]=0;v[d+216>>2]=-1;v[d+220>>2]=0;v[d+208>>2]=-1082130432;v[d+212>>2]=-1082130432;v[d+200>>2]=0;v[d+204>>2]=-1082130432;v[d+228>>2]=0;v[d+232>>2]=0;v[d+252>>2]=-1;v[d+256>>2]=0;v[d+244>>2]=-1082130432;v[d+248>>2]=-1082130432;v[d+236>>2]=0;v[d+240>>2]=-1082130432;v[d+264>>2]=0;v[d+268>>2]=0;v[d+288>>2]=-1;v[d+292>>2]=0;v[d+280>>2]=-1082130432;v[d+284>>2]=-1082130432;v[d+272>>2]=0;v[d+276>>2]=-1082130432;d=d+296|0;if((m|0)!=(d|0)){continue}break}d=0;v[a+37892>>2]=0;v[a+37896>>2]=v[e+24>>2];v[e+24>>2]=a}v[a+37892>>2]=d+1;d=(B(d,148)+a|0)+4|0;a=d}v[(B(c,36)+b|0)+32>>2]=d;return a}function KV(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=0,t=0;f=xa-144|0;xa=f;v[e>>2]=3;g=v[b+12>>2];v[f+136>>2]=v[b+8>>2];v[f+140>>2]=g;g=v[b+4>>2];v[f+128>>2]=v[b>>2];v[f+132>>2]=g;g=v[b+28>>2];v[f+120>>2]=v[b+24>>2];v[f+124>>2]=g;g=v[b+20>>2];v[f+112>>2]=v[b+16>>2];v[f+116>>2]=g;g=v[b+44>>2];v[f+104>>2]=v[b+40>>2];v[f+108>>2]=g;g=v[b+36>>2];v[f+96>>2]=v[b+32>>2];v[f+100>>2]=g;h=z[f+128>>2];n=C(z[f+112>>2]-h);i=z[f+132>>2];k=C(z[f+100>>2]-i);h=C(z[f+96>>2]-h);i=C(z[f+116>>2]-i);l=C(C(n*k)-C(h*i));o=C(l*l);q=i;i=z[f+136>>2];l=C(z[f+104>>2]-i);i=C(z[f+120>>2]-i);k=C(C(q*l)-C(k*i));h=C(C(i*h)-C(l*n));a:{if(C(o+C(C(k*k)+C(h*h)))<=C(1.1920928955078125e-7)){v[e>>2]=2;k=z[b+8>>2];h=C(z[b+24>>2]-k);l=z[b>>2];n=C(z[b+16>>2]-l);o=z[b+4>>2];i=C(z[b+20>>2]-o);r=C(C(h*h)+C(C(n*n)+C(i*i)));if(r<=C(1.1920928955078125e-7)){v[e>>2]=1;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;break a}v[a+12>>2]=0;q=h;h=C(F(C(C(C(C(C(-l)*n)-C(i*o))-C(k*h))/r),C(1)));h=h>C(0)?h:C(0);z[a+8>>2]=k+C(q*h);z[a+4>>2]=o+C(i*h);z[a>>2]=l+C(n*h);break a}v[f+88>>2]=v[24961];g=v[24960];v[f+80>>2]=v[24959];v[f+84>>2]=g;zW(f+48|0,f+128|0,f+112|0,f+96|0,f+80|0,f+92|0,f- -64|0);s=v[f+92>>2];if((s|0)!=3){p=v[f+80>>2];m=v[f+84>>2]<<4;g=m+b|0;j=v[g+4>>2];v[f+48>>2]=v[g>>2];v[f+52>>2]=j;j=v[g+12>>2];v[f+56>>2]=v[g+8>>2];v[f+60>>2]=j;g=c+m|0;j=v[g+12>>2];v[f+40>>2]=v[g+8>>2];v[f+44>>2]=j;j=v[g+4>>2];v[f+32>>2]=v[g>>2];v[f+36>>2]=j;p=p<<4;g=p+d|0;j=v[g+12>>2];v[f+24>>2]=v[g+8>>2];v[f+28>>2]=j;j=v[g+4>>2];v[f+16>>2]=v[g>>2];v[f+20>>2]=j;g=d+m|0;m=v[g+4>>2];v[f>>2]=v[g>>2];v[f+4>>2]=m;m=v[g+8>>2];j=v[g+12>>2];g=b+p|0;t=v[g+4>>2];v[b>>2]=v[g>>2];v[b+4>>2]=t;v[f+8>>2]=m;v[f+12>>2]=j;m=v[g+12>>2];v[b+8>>2]=v[g+8>>2];v[b+12>>2]=m;g=v[f+52>>2];v[b+16>>2]=v[f+48>>2];v[b+20>>2]=g;g=v[f+60>>2];v[b+24>>2]=v[f+56>>2];v[b+28>>2]=g;b=c+p|0;g=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=g;g=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=g;b=v[f+44>>2];v[c+24>>2]=v[f+40>>2];v[c+28>>2]=b;b=v[f+36>>2];v[c+16>>2]=v[f+32>>2];v[c+20>>2]=b;b=v[f+28>>2];v[d+8>>2]=v[f+24>>2];v[d+12>>2]=b;b=v[f+20>>2];v[d>>2]=v[f+16>>2];v[d+4>>2]=b;b=v[f+4>>2];v[d+16>>2]=v[f>>2];v[d+20>>2]=b;b=v[f+12>>2];v[d+24>>2]=v[f+8>>2];v[d+28>>2]=b;v[e>>2]=s}b=v[f+68>>2];v[a>>2]=v[f+64>>2];v[a+4>>2]=b;b=v[f+76>>2];v[a+8>>2]=v[f+72>>2];v[a+12>>2]=b}xa=f+144|0}function E$(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);h=xa-160|0;xa=h;p=z[d>>2];j=C(z[b+16>>2]-z[d+16>>2]);i=C(j+j);j=C(z[b+20>>2]-z[d+20>>2]);n=C(j+j);l=z[d+4>>2];o=z[d+8>>2];j=C(z[b+24>>2]-z[d+24>>2]);m=C(j+j);r=C(C(C(C(-p)*i)-C(n*l))-C(o*m));F=C(o*r);j=z[d+12>>2];u=C(C(j*j)+C(-.5));k=C(C(m*u)+C(j*C(C(l*i)-C(p*n))));q=C(l*r);x=C(C(n*u)+C(j*C(C(p*m)-C(o*i))));y=C(p*r);A=C(C(i*u)+C(j*C(C(o*n)-C(l*m))));i=z[b+4>>2];n=z[b+12>>2];m=z[b>>2];B=C(C(l*i)+C(C(j*n)+C(p*m)));r=z[b+8>>2];E=C(o*r);G=C(C(C(j*r)-C(n*o))-C(p*i));s=C(m*l);H=C(C(C(j*i)-C(n*l))-C(o*m));I=C(r*p);n=C(C(i*o)+C(C(C(j*m)-C(n*p))-C(l*r)));o=C(0);j=C(0);p=C(0);a:{b:{switch(v[a>>2]+1|0){case 3:j=z[a+4>>2];o=C(z[a+8>>2]+j);p=j;break a;case 1:o=z[a+4>>2];j=o;p=j;break a;case 4:p=z[a+12>>2];j=z[a+8>>2];o=z[a+4>>2];break a;case 0:case 2:case 5:case 6:case 7:case 8:break b;default:break a}}t[g|0]=0}r=C(k-F);u=C(x-q);F=C(A-y);m=C(E+B);l=C(s+G);i=C(I+H);c:{if(!(n!=C(0)|i!=C(0)|l!=C(0))){z[h+156>>2]=r+p;z[h+152>>2]=u+j;z[h+148>>2]=F+o;z[h+144>>2]=r-p;z[h+140>>2]=u-j;z[h+136>>2]=F-o;q=C(i+i);A=C(l*q);k=C(n+n);B=C(m*k);x=C(A-B);E=C(l*k);G=C(m*q);y=C(E+G);A=C(B+A);s=C(k*i);H=C(l+l);I=C(m*H);m=C(s-I);B=C(E-G);E=C(s+I);k=C(C(1)-C(n*k));i=C(i*q);n=C(k-i);q=k;k=C(l*H);l=C(q-k);i=C(C(C(1)-i)-k);a=1;break c}k=C(n+n);y=C(l*k);q=C(i+i);G=C(m*q);B=C(y-G);x=C(m*k);s=C(l*q);A=C(x+s);H=C(C(1)-C(n*k));q=C(i*q);n=C(H-q);I=C(C(C(D(C(B*o)))+C(D(C(A*j))))+C(D(C(n*p))));z[h+156>>2]=r+I;k=C(k*i);i=C(l+l);m=C(m*i);E=C(k+m);i=C(l*i);l=C(H-i);x=C(s-x);s=C(C(C(D(C(E*o)))+C(D(C(l*j))))+C(D(C(x*p))));z[h+152>>2]=u+s;z[h+144>>2]=r-I;i=C(C(C(1)-q)-i);m=C(k-m);y=C(y+G);k=C(C(C(D(C(i*o)))+C(D(C(m*j))))+C(D(C(y*p))));z[h+148>>2]=F+k;z[h+140>>2]=u-s;z[h+136>>2]=F-k;a=0}b=v[c+4>>2];v[h+128>>2]=c;v[h+124>>2]=b;k=z[c+8>>2];q=z[c+12>>2];z[h+120>>2]=C(1)/z[c+16>>2];z[h+112>>2]=C(1)/q;z[h+116>>2]=C(1)/k;z[h+96>>2]=p;z[h+92>>2]=j;z[h+88>>2]=o;z[h+84>>2]=r;z[h+80>>2]=u;z[h+76>>2]=F;z[h+72>>2]=n;z[h+68>>2]=x;z[h- -64>>2]=y;z[h+60>>2]=A;z[h+56>>2]=l;z[h+52>>2]=m;z[h+48>>2]=B;z[h+44>>2]=E;v[h+24>>2]=0;v[h+20>>2]=f;v[h+12>>2]=e;t[h+32|0]=0;v[h+28>>2]=0;v[h+16>>2]=0;t[h+104|0]=a;v[h+8>>2]=143092;z[h+40>>2]=i;a=h+112|0;v[h+36>>2]=a;m$(a,d,h+136|0,0,h+8|0);t[g|0]=w[h+32|0];xa=h+160|0;return v[h+16>>2]}function YA(a,b,c,d){var e=0,f=0,g=0,h=0,i=C(0),j=C(0),k=0,l=0,m=0,n=0,o=0,p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=0,y=C(0),A=C(0),B=0,D=0,E=0,F=0,G=0,H=0;a:{n=v[a+24>>2];e=x[n+2>>1];if(!e){break a}B=w[n|0]==7?176:128;D=e+n|0;f=v[a+60>>2];k=v[a+92>>2];p=v[a+124>>2];e=v[a+28>>2];g=n;while(1){m=g;g=g+160|0;E=w[m+11|0];F=w[m+10|0];G=w[m+9|0];H=w[m+8|0];u=w[m+1|0];if(u){o=0;while(1){l=k;h=f;y=z[g+60>>2];A=z[g+56>>2];i=z[g+52>>2];j=z[g+48>>2];f=0;b:{if(!e){break b}f=e;if(w[m+4|0]<=o>>>0){break b}z[e>>2]=j;f=e+4|0}e=f;k=0;f=0;c:{if(!h){break c}f=h;if(w[m+5|0]<=o>>>0){break c}z[h>>2]=i;f=h+4|0}d:{if(!l){break d}if(w[m+6|0]<=o>>>0){k=l;break d}z[l>>2]=A;k=l+4|0}e:{if(!p){p=0;break e}if(w[m+7|0]<=o>>>0){break e}z[p>>2]=y;p=p+4|0}g=g+B|0;q=C(q+y);r=C(r+A);s=C(s+i);t=C(t+j);o=o+1|0;if((u|0)!=(o|0)){continue}break}}if(g>>>0>>0){continue}break}k=G&1;f:{if(!(H&1)|x[a+8>>1]!=65535|(x[a+10>>1]!=65535|t==C(0))){break f}f=v[c>>2];i=z[f+28>>2];e=v[d>>2];j=z[e+28>>2];if(!(i>2];h=v[f+72>>2];f=v[n+144>>2];e=v[b+8>>2];v[b+8>>2]=e+1;g=v[b+4>>2]+(e<<5)|0;z[g+8>>2]=i>2]=t;v[g>>2]=f;f=l<<7;e=h<<7;v[g+16>>2]=e>>>0>>0?f:e;v[g+12>>2]=e>>>0>f>>>0?f:e}g=F&1;g:{if(!k|x[a+40>>1]!=65535|(x[a+42>>1]!=65535|s==C(0))){break g}f=v[c+4>>2];i=z[f+28>>2];e=v[d+4>>2];j=z[e+28>>2];if(!(i>2];h=v[e+72>>2];f=v[f+72>>2];e=v[b+8>>2];v[b+8>>2]=e+1;k=v[b+4>>2]+(e<<5)|0;z[k+8>>2]=i>2]=s;v[k>>2]=l;h=h<<7;e=f<<7;v[k+16>>2]=e>>>0>>0?h:e;v[k+12>>2]=e>>>0>h>>>0?h:e}k=E&1;h:{if(!g|x[a+72>>1]!=65535|(x[a+74>>1]!=65535|r==C(0))){break h}f=v[c+8>>2];i=z[f+28>>2];e=v[d+8>>2];j=z[e+28>>2];if(!(i>2];h=v[e+72>>2];f=v[f+72>>2];e=v[b+8>>2];v[b+8>>2]=e+1;g=v[b+4>>2]+(e<<5)|0;z[g+8>>2]=i>2]=r;v[g>>2]=l;h=h<<7;e=f<<7;v[g+16>>2]=e>>>0>>0?h:e;v[g+12>>2]=e>>>0>h>>>0?h:e}if(!k|x[a+104>>1]!=65535|(x[a+106>>1]!=65535|q==C(0))){break a}c=v[c+12>>2];i=z[c+28>>2];a=v[d+12>>2];j=z[a+28>>2];if(!(i>2];d=v[a+72>>2];c=v[c+72>>2];a=v[b+8>>2];v[b+8>>2]=a+1;f=v[b+4>>2]+(a<<5)|0;z[f+8>>2]=i>2]=q;v[f>>2]=e;b=d<<7;a=c<<7;v[f+16>>2]=a>>>0>>0?b:a;v[f+12>>2]=a>>>0>b>>>0?b:a}}function vZ(a,b,c,d,e,f,g,h,i,k,m,n,o){var r=C(0),s=C(0),t=C(0),u=C(0),x=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=0,N=C(0),O=C(0),P=0,Q=0,R=C(0),S=C(0),T=C(0),U=C(0),V=0,W=0;x=xa-32|0;xa=x;v[m>>2]=-1;M=v[a+16>>2];a:{if(!M){break a}t=z[h>>2];r=z[h+4>>2];s=z[h+8>>2];S=C(C(C(t*z[e+44>>2])+C(r*z[e+56>>2]))+C(s*z[e+68>>2]));T=C(C(C(t*z[e+40>>2])+C(r*z[e+52>>2]))+C(s*z[e- -64>>2]));U=C(C(C(t*z[e+36>>2])+C(r*z[e+48>>2]))+C(s*z[e+60>>2]));V=v[a+28>>2];W=v[a+24>>2];Q=1;while(1){h=B(I,20)+W|0;s=z[h+8>>2];u=z[h>>2];y=z[h+4>>2];b:{if(C(C(s*S)+C(C(u*U)+C(T*y)))>2];F=z[e+36>>2];A=z[e+48>>2];r=z[e+64>>2];D=z[e+40>>2];G=z[e+52>>2];t=C(C(C(u*z[e+44>>2])+C(y*z[e+56>>2]))+C(s*z[e+68>>2]));z[x+16>>2]=t;r=C(C(C(u*D)+C(y*G))+C(s*r));z[x+12>>2]=r;s=C(C(C(u*F)+C(y*A))+C(s*E));z[x+8>>2]=s;E=C(K(C(C(t*t)+C(C(s*s)+C(r*r)))));if(E>C(0)){u=C(C(1)/E);t=C(t*u);z[x+16>>2]=t;r=C(r*u);z[x+12>>2]=r;s=C(s*u);z[x+8>>2]=s}F=z[c+8>>2];A=z[c+20>>2];D=z[c+32>>2];u=C(C(C(s*F)+C(r*A))+C(t*D));G=z[c>>2];H=z[c+12>>2];J=z[c+24>>2];y=C(C(C(s*G)+C(r*H))+C(t*J));N=s;s=z[c+4>>2];O=r;r=z[c+16>>2];L=z[c+28>>2];t=C(C(C(N*s)+C(O*r))+C(t*L));R=C(C(z[o+8>>2]*u)+C(C(z[o>>2]*y)+C(t*z[o+4>>2])));D=C(C(D*u)+C(C(J*y)+C(L*t)));s=C(C(F*u)+C(C(G*y)+C(s*t)));r=C(C(A*u)+C(C(H*y)+C(r*t)));r=C(C((l(2,v[a+56>>2]|(p(D),j(2))&-2147483648),q())*D)+C(C((l(2,v[a+48>>2]|(p(s),j(2))&-2147483648),q())*s)+C(r*(l(2,v[a+52>>2]|(p(r),j(2))&-2147483648),q()))));s=z[a+44>>2];H=r>s?r:s;r=C(C(z[d+32>>2]*u)+C(C(z[d+24>>2]*y)+C(t*z[d+28>>2])));N=C((l(2,v[b+56>>2]|(p(r),j(2))&-2147483648),q())*r);r=C(C(z[d+8>>2]*u)+C(C(z[d>>2]*y)+C(t*z[d+4>>2])));O=C((l(2,v[b+48>>2]|(p(r),j(2))&-2147483648),q())*r);r=C(C(z[d+20>>2]*u)+C(C(z[d+12>>2]*y)+C(t*z[d+16>>2])));r=C(N+C(O+C(r*(l(2,v[b+52>>2]|(p(r),j(2))&-2147483648),q()))));s=z[b+44>>2];r=C(H+(r>s?r:s));s=C(R+r);r=C(r-R);if(z[i>>2]<(r>s?s:r)){break b}P=B(w[h+19|0],12)+V|0;r=z[P+8>>2];s=z[P>>2];F=z[P+4>>2];A=z[h+12>>2];D=z[h+8>>2];G=z[h>>2];H=z[h+4>>2];Ba[v[b+64>>2]](b,x+8|0,g,f,x+28|0,x+24|0);J=z[x+28>>2];E=C(C(1)/E);A=C(E*C(-A));if(J>C(A+n)){break a}r=C(E*C(C(D*r)+C(C(G*s)+C(H*F))));L=z[x+24>>2];if(r>C(L+n)){break a}s=C(A-J);r=C(L-r);r=r>s?s:r;if(!(r>2])){break b}z[k+8>>2]=u;z[k+4>>2]=t;z[k>>2]=y;z[i>>2]=r;v[m>>2]=I}I=I+1|0;Q=M>>>0>I>>>0;if((I|0)!=(M|0)){continue}break}}xa=x+32|0;return(Q^-1)&1}function bA(a,b,c,d,e,f){var g=0,h=0,i=C(0),j=C(0),k=0,l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=0,J=C(0),K=0,L=0;o=v[a+7688>>2];g=v[a+7684>>2];if(g>>>0>e>>>0){while(1){k=B(e,44)+a|0;m=(x[k>>1]<<6)+b|0;E=z[m+8>>2];F=z[m+4>>2];G=z[m>>2];a:{b:{c:{d:{e:{m=f;if(m>>>0>=o>>>0){break e}while(1){h=B(m,12)+a|0;f:{if(C(C(E*z[h+6152>>2])+C(C(G*z[h+6144>>2])+C(F*z[h+6148>>2])))>2]!=z[k+16>>2]|z[h+2824>>2]!=z[k+8>>2]){break f}if(z[h+2828>>2]==z[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|H;H=1;if(h&1){break a}h=w[k+4|0];J=z[k+16>>2];K=v[k+12>>2];L=v[k+8>>2];p=z[c+8>>2];q=C(E+E);r=z[c>>2];s=C(G+G);y=C(F+F);A=z[c+4>>2];l=C(C(p*q)+C(C(r*s)+C(y*A)));g=B(o,104)+a|0;i=z[c+12>>2];j=C(C(i*i)+C(-.5));z[g+2840>>2]=C(p*l)+C(C(q*j)-C(i*C(C(r*y)-C(s*A))));z[g+2836>>2]=C(A*l)+C(C(y*j)-C(i*C(C(p*s)-C(q*r))));z[g+2832>>2]=C(r*l)+C(C(s*j)-C(i*C(C(A*q)-C(y*p))));j=z[d+8>>2];n=z[d+4>>2];l=z[d+12>>2];D=z[d>>2];H=0;u[g+2818>>1]=0;I=g+2824|0;v[I>>2]=L;v[I+4>>2]=K;t[g+2816|0]=0;z[g+2820>>2]=J;t[g+2817|0]=h;z[g+2916>>2]=C(p*j)+C(C(A*n)+C(C(i*l)+C(r*D)));z[g+2912>>2]=C(D*A)+C(C(C(i*j)-C(l*p))-C(r*n));z[g+2908>>2]=C(j*r)+C(C(C(i*n)-C(l*A))-C(p*D));z[g+2904>>2]=C(n*p)+C(C(C(i*D)-C(l*r))-C(A*j));i=C(C(j*q)+C(C(D*s)+C(y*n)));p=C(C(l*l)+C(-.5));z[g+2852>>2]=C(j*i)+C(C(q*p)-C(l*C(C(D*y)-C(s*n))));z[g+2848>>2]=C(n*i)+C(C(y*p)-C(l*C(C(j*s)-C(q*D))));z[g+2844>>2]=C(D*i)+C(C(s*p)-C(l*C(C(n*q)-C(y*j))));g=B(o,12)+a|0;z[g+6152>>2]=E;z[g+6148>>2]=F;z[g+6144>>2]=G;h=(o<<2)+a|0;v[h+7296>>2]=w[k+5|0];g=B(o,24)+a|0;z[g+6528>>2]=z[k+20>>2];z[g+6532>>2]=z[k+24>>2];z[g+6536>>2]=z[k+28>>2];z[g+6540>>2]=z[k+32>>2];z[g+6544>>2]=z[k+36>>2];z[g+6548>>2]=z[k+40>>2];v[h+7556>>2]=-1;o=o+1|0;g=65535;break b}l=z[k+20>>2];i=z[k+24>>2];g=B(m,24)+a|0;h=g+6536|0;j=z[h>>2];n=z[k+28>>2];z[h>>2]=j>2];z[h>>2]=i>j?j:i;h=g+6528|0;i=z[h>>2];z[h>>2]=i>2];i=z[k+36>>2];h=g+6548|0;j=z[h>>2];n=z[k+40>>2];z[h>>2]=j>n?j:n;h=g+6544|0;j=z[h>>2];z[h>>2]=i>2];z[g>>2]=i>l?i:l;g=(m<<2)+a|0;h=g+7296|0;v[h>>2]=v[h>>2]+w[k+5|0];g=v[g+7424>>2]}u[k+2>>1]=g;v[((m<<2)+a|0)+7424>>2]=e;g=v[a+7684>>2]}e=e+1|0;if(g>>>0>e>>>0){continue}break}}v[a+7688>>2]=o;return H}function CU(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=v[a+36>>2];a:{if(h>>>0>=j>>>0){break a}d=v[a+40>>2];c=x[d+(h<<1)>>1];if((c|0)==65535|c>>>0>=j>>>0){break a}f=v[a+48>>2];if(x[f+(h<<1)>>1]!=(b>>>16|0)){break a}g=v[a+28>>2];m=g+(c<<2)|0;k=v[m>>2];if(!k){break a}e=k>>>16|0;b:{c:{switch((k&65535)-3|0){case 1:l=v[a+8>>2];if(l>>>0<=e>>>0){break a}i=v[a+32>>2];if(i){f=i-1|0;v[a+32>>2]=f;v[m>>2]=v[g+(f<<2)>>2];d=v[a+40>>2];g=v[a+44>>2];f=g+(f<<1)|0;u[d+(x[f>>1]<<1)>>1]=c;u[g+(c<<1)>>1]=x[f>>1];u[f>>1]=b;c=h<<1;u[c+d>>1]=65535;v[a+52>>2]=v[a+52>>2]+1;f=v[a+48>>2];c=c+f|0;u[c>>1]=x[c>>1]+1}c=l-1|0;d:{if((c|0)==(e|0)){break d}g=v[v[a+4>>2]+B(c,72)>>2];h=g&65535;if(h>>>0>=j>>>0){break d}d=x[(h<<1)+d>>1];if((d|0)==65535|d>>>0>=j>>>0|x[(h<<1)+f>>1]!=(g>>>16|0)){break d}v[v[a+28>>2]+(d<<2)>>2]=k}v[a+8>>2]=c;d=B(e,72);e=v[a+4>>2];d=d+e|0;c=e+B(c,72)|0;v[d>>2]=v[c>>2];e=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=e;e=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=e;e=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=e;e=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=e;z[d+40>>2]=z[c+40>>2];z[d+44>>2]=z[c+44>>2];z[d+48>>2]=z[c+48>>2];z[d+52>>2]=z[c+52>>2];z[d+56>>2]=z[c+56>>2];z[d+60>>2]=z[c+60>>2];z[d- -64>>2]=z[c- -64>>2];break b;case 0:break c;default:break a}}l=v[a+20>>2];if(l>>>0<=e>>>0){break a}i=v[a+32>>2];if(i){f=i-1|0;v[a+32>>2]=f;v[m>>2]=v[g+(f<<2)>>2];d=v[a+40>>2];g=v[a+44>>2];f=g+(f<<1)|0;u[d+(x[f>>1]<<1)>>1]=c;u[g+(c<<1)>>1]=x[f>>1];u[f>>1]=b;c=h<<1;u[c+d>>1]=65535;v[a+52>>2]=v[a+52>>2]+1;f=v[a+48>>2];c=c+f|0;u[c>>1]=x[c>>1]+1}c=l-1|0;e:{if((c|0)==(e|0)){break e}g=v[v[a+16>>2]+(c<<6)>>2];h=g&65535;if(h>>>0>=j>>>0){break e}d=x[(h<<1)+d>>1];if((d|0)==65535|d>>>0>=j>>>0|x[(h<<1)+f>>1]!=(g>>>16|0)){break e}v[v[a+28>>2]+(d<<2)>>2]=k}v[a+20>>2]=c;d=e<<6;e=v[a+16>>2];d=d+e|0;c=e+(c<<6)|0;v[d>>2]=v[c>>2];e=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=e;e=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=e;e=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=e;e=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=e;z[d+40>>2]=z[c+40>>2];z[d+44>>2]=z[c+44>>2];z[d+48>>2]=z[c+48>>2];z[d+52>>2]=z[c+52>>2];e=v[c+60>>2];v[d+56>>2]=v[c+56>>2];v[d+60>>2]=e}d=0;a=v[a+56>>2];if(v[a+72>>2]){while(1){c=v[v[a+68>>2]+(d<<2)>>2];if(v[c+264>>2]==(b|0)){v[c+264>>2]=-1}d=d+1|0;if(d>>>0>2]){continue}break}}i=1}return i|0}function sY(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0),j=0,k=C(0),l=0,m=C(0),n=C(0),o=0,p=0,q=0,r=C(0),s=C(0),t=0,u=0,w=C(0),x=C(0),A=C(0),D=0,E=0,F=0;t=xa-16|0;xa=t;p=v[b+12>>2];j=(v[a+28>>2]<<2)+e|0;f=v[j>>2];e=p+B(f,12)|0;w=z[e+8>>2];x=z[e+4>>2];A=z[e>>2];g=1;l=v[b+8>>2];e=l+B(f,24)|0;i=z[e+12>>2];k=z[e+8>>2];m=z[e+4>>2];n=z[e>>2];r=z[e+20>>2];s=z[e+16>>2];f=v[a+32>>2];if(f>>>0>1){while(1){u=v[j+(g<<2)>>2];e=l+B(u,24)|0;h=z[e+12>>2];i=i>h?i:h;h=z[e+8>>2];k=k>2];m=h>m?m:h;h=z[e>>2];n=h>n?n:h;h=z[e+20>>2];r=h>2];s=h>2]);x=C(x+z[e+4>>2]);A=C(A+z[e>>2]);g=g+1|0;if((f|0)!=(g|0)){continue}break}}z[a+12>>2]=i;z[a+8>>2]=k;z[a+4>>2]=m;z[a>>2]=n;z[a+20>>2]=r;z[a+16>>2]=s;a:{if(f>>>0<=y[b>>2]){break a}l=a+12|0;i=C(C(1)/C(f>>>0));n=C(i*w);r=C(i*x);s=C(i*A);i=C(0);e=0;k=C(0);m=C(0);while(1){h=m;g=p+B(v[j+(e<<2)>>2],12)|0;m=C(z[g+8>>2]-n);m=C(h+C(m*m));h=k;k=C(z[g+4>>2]-r);k=C(h+C(k*k));h=i;i=C(z[g>>2]-s);i=C(h+C(i*i));e=e+1|0;if((f|0)!=(e|0)){continue}break}n=C(C(1)/C(f-1>>>0));i=C(n*i);z[t>>2]=i;k=C(n*k);z[t+4>>2]=k;e=i>2]>2]+z[e+l>>2])*C(.5));p=e+p|0;u=f&1;b:{if((f|0)==1){e=0;g=0;break b}F=f&-2;e=0;g=0;l=0;while(1){o=g<<2;q=o+j|0;E=v[q>>2];if(i>2]){D=q;q=j+(e<<2)|0;v[D>>2]=v[q>>2];v[q>>2]=E;e=e+1|0}o=j+(o|4)|0;q=v[o>>2];if(i>2]){D=o;o=j+(e<<2)|0;v[D>>2]=v[o>>2];v[o>>2]=q;e=e+1|0}g=g+2|0;l=l+2|0;if((F|0)!=(l|0)){continue}break}}c:{if(!u){break c}g=j+(g<<2)|0;l=v[g>>2];if(!(i>2])){break c}o=g;g=j+(e<<2)|0;v[o>>2]=v[g>>2];v[g>>2]=l;e=e+1|0}if(!((e|0)!=(f|0)?e:0)){if(f>>>0<=y[b>>2]){break a}e=f>>>1|0}b=xa-16|0;xa=b;v[d+20>>2]=v[d+20>>2]+2;f=v[d+4>>2]+B(v[d+16>>2],12)|0;j=v[f+4>>2];g=j+2|0;d:{if(g>>>0<=y[f+8>>2]){d=v[f>>2];v[f+4>>2]=g;f=d+B(j,36)|0;break d}f=v[37696];g=Ba[v[v[f>>2]+20>>2]](f)|0?44781:63804;f=Ba[v[v[f+12>>2]+8>>2]](f+12|0,36868,g,12194,94)|0;v[f>>2]=1024;f=f+4|0;g=J9(f,0,36864);v[b+4>>2]=2;v[b+8>>2]=1024;v[b>>2]=g;g=v[d+8>>2];e:{if(g>>>0>=(v[d+12>>2]&2147483647)>>>0){rY(d+4|0,b);break e}j=v[b+4>>2];g=v[d+4>>2]+B(g,12)|0;v[g>>2]=v[b>>2];v[g+4>>2]=j;v[g+8>>2]=v[b+8>>2];v[d+8>>2]=v[d+8>>2]+1}v[d+16>>2]=v[d+16>>2]+1}xa=b+16|0;v[a+24>>2]=f;v[c>>2]=v[c>>2]+2;b=v[a+28>>2];v[f+32>>2]=e;v[f+28>>2]=b;v[f- -64>>2]=v[a+28>>2]+e;v[f+68>>2]=v[a+32>>2]-e}xa=t+16|0}function DU(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=0,s=0,t=0;d=b&65535;g=v[a+36>>2];a:{if(d>>>0>=g>>>0){break a}e=x[v[a+40>>2]+(d<<1)>>1];if((e|0)==65535|e>>>0>=g>>>0|x[v[a+48>>2]+(d<<1)>>1]!=(b>>>16|0)){break a}d=v[v[a+28>>2]+(e<<2)>>2];if(!d){break a}e=d&65535;if(v[c>>2]!=(e-1|0)){break a}d=d>>>16|0;b:{c:{switch(e-3|0){case 1:if(d>>>0>=y[a+8>>2]){break a}e=v[c+4>>2];d=v[a+4>>2]+B(d,72)|0;v[d+8>>2]=v[c>>2];v[d+12>>2]=e;e=v[c+28>>2];v[d+32>>2]=v[c+24>>2];v[d+36>>2]=e;e=v[c+20>>2];v[d+24>>2]=v[c+16>>2];v[d+28>>2]=e;e=v[c+12>>2];v[d+16>>2]=v[c+8>>2];v[d+20>>2]=e;z[d+40>>2]=z[c+32>>2];z[d+44>>2]=z[c+36>>2];z[d+48>>2]=z[c+40>>2];z[d+52>>2]=z[c+44>>2];z[d+56>>2]=z[c+48>>2];z[d+60>>2]=z[c+52>>2];z[d- -64>>2]=z[c+56>>2];break b;case 0:break c;default:break a}}if(d>>>0>=y[a+20>>2]){break a}e=v[c+4>>2];d=v[a+16>>2]+(d<<6)|0;v[d+8>>2]=v[c>>2];v[d+12>>2]=e;e=v[c+28>>2];v[d+32>>2]=v[c+24>>2];v[d+36>>2]=e;e=v[c+20>>2];v[d+24>>2]=v[c+16>>2];v[d+28>>2]=e;e=v[c+12>>2];v[d+16>>2]=v[c+8>>2];v[d+20>>2]=e;z[d+40>>2]=z[c+32>>2];z[d+44>>2]=z[c+36>>2];z[d+48>>2]=z[c+40>>2];z[d+52>>2]=z[c+44>>2];e=v[c+52>>2];v[d+56>>2]=v[c+48>>2];v[d+60>>2]=e}e=xa-32|0;xa=e;k=v[a+56>>2];if(v[k+72>>2]){while(1){d=v[v[k+68>>2]+(o<<2)>>2];s=A[d+432>>3];t=A[d+440>>3];z[e+24>>2]=A[d+448>>3];z[e+20>>2]=t;z[e+16>>2]=s;f=z[d+28>>2];j=z[d+32>>2];z[e+8>>2]=-z[d+36>>2];z[e+4>>2]=-j;z[e>>2]=-f;g=e+16|0;f=C(Ba[v[v[d>>2]+8>>2]](d));c=xa-80|0;xa=c;d:{if(v[d+264>>2]!=(b|0)){break d}v[c+40>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;u[c+28>>1]=0;v[c+24>>2]=-1;v[c+16>>2]=0;v[c+20>>2]=0;v[c+64>>2]=0;v[c+56>>2]=2139095039;v[c+60>>2]=0;v[c+12>>2]=-1;g=HU(a,c+16|0,g,e,f,c+12|0);if(!g){break d}r=v[c+12>>2];if((r|0)==v[d+264>>2]){break d}v[d+264>>2]=r;f=z[c+32>>2];z[d+316>>2]=f;i=z[c+36>>2];z[d+320>>2]=i;h=z[c+40>>2];z[d+324>>2]=h;j=z[g+40>>2];h=C(h-C(A[g+24>>3]));h=C(h+h);l=z[g+32>>2];f=C(f-C(A[g+8>>3]));m=C(f+f);n=z[g+36>>2];f=C(i-C(A[g+16>>3]));i=C(f+f);p=C(C(j*h)+C(C(l*m)+C(n*i)));f=z[g+44>>2];q=C(C(f*f)+C(-.5));z[d+312>>2]=C(j*p)+C(C(h*q)-C(f*C(C(l*i)-C(m*n))));z[d+308>>2]=C(n*p)+C(C(i*q)-C(f*C(C(j*m)-C(h*l))));z[d+304>>2]=C(l*p)+C(C(m*q)-C(f*C(C(n*h)-C(i*j))))}xa=c+80|0;o=o+1|0;if(o>>>0>2]){continue}break}}xa=e+32|0;k=1}return k|0}function p$(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0;w=C(z[e+8>>2]-z[b+8>>2]);i=z[c+8>>2];x=C(z[e>>2]-z[b>>2]);k=z[c>>2];y=C(z[e+4>>2]-z[b+4>>2]);h=z[c+4>>2];t=C(C(w*i)+C(C(x*k)+C(y*h)));m=z[a>>2];n=z[d+8>>2];O=z[f+32>>2];o=z[f+24>>2];A=z[f+28>>2];J=C(C(i*O)+C(C(k*o)+C(h*A)));E=C(C(D(J))+C(9.999999974752427e-7));p=z[d>>2];P=z[f+8>>2];q=z[f>>2];B=z[f+4>>2];K=C(C(i*P)+C(C(k*q)+C(h*B)));F=C(C(D(K))+C(9.999999974752427e-7));r=z[d+4>>2];g=i;i=z[f+20>>2];j=k;k=z[f+12>>2];Q=h;h=z[f+16>>2];L=C(C(g*i)+C(C(j*k)+C(Q*h)));G=C(C(D(L))+C(9.999999974752427e-7));a:{if(C(D(t))>C(m+C(C(n*E)+C(C(p*F)+C(r*G))))){break a}g=z[c+20>>2];l=z[c+12>>2];u=z[c+16>>2];v=C(C(w*g)+C(C(x*l)+C(y*u)));s=z[a+4>>2];M=C(C(g*O)+C(C(l*o)+C(u*A)));H=C(C(D(M))+C(9.999999974752427e-7));N=C(C(g*P)+C(C(l*q)+C(u*B)));I=C(C(D(N))+C(9.999999974752427e-7));u=C(C(g*i)+C(C(l*k)+C(u*h)));l=C(C(D(u))+C(9.999999974752427e-7));if(C(D(v))>C(s+C(C(n*H)+C(C(p*I)+C(r*l))))){break a}g=w;w=z[c+32>>2];j=x;x=z[c+24>>2];Q=y;y=z[c+28>>2];g=C(C(g*w)+C(C(j*x)+C(Q*y)));j=z[a+8>>2];A=C(C(w*O)+C(C(x*o)+C(y*A)));o=C(C(D(A))+C(9.999999974752427e-7));B=C(C(w*P)+C(C(x*q)+C(y*B)));q=C(C(D(B))+C(9.999999974752427e-7));k=C(C(w*i)+C(C(x*k)+C(y*h)));i=C(C(D(k))+C(9.999999974752427e-7));if(C(D(g))>C(j+C(C(n*o)+C(C(p*q)+C(r*i))))|C(D(C(C(g*B)+C(C(t*K)+C(v*N)))))>C(C(C(j*q)+C(C(m*F)+C(s*I)))+p)|(C(D(C(C(g*k)+C(C(t*L)+C(v*u)))))>C(C(C(j*i)+C(C(m*G)+C(s*l)))+r)|C(D(C(C(g*A)+C(C(t*J)+C(v*M)))))>C(C(C(j*o)+C(C(m*E)+C(s*H)))+n))){break a}if(C(D(C(C(g*N)-C(B*v))))>C(C(C(s*q)+C(j*I))+C(C(r*E)+C(n*G)))){break a}h=C(-v);if(C(D(C(C(g*u)+C(k*h))))>C(C(C(s*i)+C(j*l))+C(C(p*E)+C(n*F)))|C(D(C(C(g*M)+C(A*h))))>C(C(C(p*G)+C(r*F))+C(C(s*o)+C(j*H)))|C(D(C(C(t*B)-C(K*g))))>C(C(C(r*H)+C(n*l))+C(C(m*q)+C(j*F)))){break a}h=C(-g);if(C(D(C(C(t*k)+C(L*h))))>C(C(C(p*H)+C(I*n))+C(C(m*i)+C(j*G)))|C(D(C(C(t*A)+C(J*h))))>C(C(C(p*l)+C(I*r))+C(C(m*o)+C(j*E)))|C(D(C(C(v*K)-C(N*t))))>C(C(C(r*o)+C(n*i))+C(C(m*I)+C(s*F)))){break a}h=C(-t);if(C(D(C(C(v*L)+C(u*h))))>C(C(C(p*o)+C(q*n))+C(C(m*l)+C(s*G)))|C(D(C(C(v*J)+C(M*h))))>C(C(C(p*i)+C(q*r))+C(C(m*H)+C(s*E)))){break a}R=1}return R}function Cu(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=xa-288|0;xa=e;f=a+4892|0;a:{if(!d){b:{if(!w[a+4785|0]){Du(a+16|0,b,c);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break b}c:{d:{d=v[b+4>>2];switch((d>>>30|0)-1|0){case 1:break c;case 0:break d;default:break b}}v[b+4>>2]=d&1073741823;v[e+16>>2]=b;Pg(f,e+16|0);break b}v[b+4>>2]=d|-1073741824;if(d&268435456){break b}v[e+16>>2]=b;d=rh(f,e+16|0,e+12|0);if(w[e+12|0]){break b}v[d>>2]=v[e+16>>2]}if(!w[a+4785|0]){break a}if(c){v[b+4>>2]=v[b+4>>2]|16}t[e+272|0]=1;v[e+280>>2]=0;v[e+284>>2]=64;v[e+276>>2]=e+16;c=_o(b,e+12|0);e:{if(!c){break e}d=v[b+4>>2]&-1073741824;f=v[b>>2];a=0;if((c|0)!=1){h=c&-2;while(1){j=a<<2;g=v[j+v[e+12>>2]>>2];i=v[g+36>>2];if((i&251658240)==16777216){v[g+32>>2]=f;v[g+36>>2]=d|i&1073741823}g=v[v[e+12>>2]+(j|4)>>2];j=v[g+36>>2];if((j&251658240)==16777216){v[g+32>>2]=f;v[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=v[v[e+12>>2]+(a<<2)>>2];c=v[a+36>>2];if((c&251658240)!=16777216){break e}v[a+32>>2]=f;v[a+36>>2]=d|c&1073741823}a=v[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[e+276>>2];if((a|0)==(e+16|0)|!a){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a);break a}c=xa-288|0;xa=c;f:{if(!w[a+4785|0]){Eu(b);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break f}g:{h:{i:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break h;case 0:break i;default:break g}}v[b+4>>2]=a&1073741823;v[c+16>>2]=b;Pg(f,c+16|0);break g}v[b+4>>2]=a|-1073741824;if(a&268435456){break g}v[c+16>>2]=b;a=rh(f,c+16|0,c+12|0);if(w[c+12|0]){break g}v[a>>2]=v[c+16>>2]}t[c+272|0]=1;v[c+280>>2]=0;v[c+284>>2]=64;v[c+276>>2]=c+16;d=_o(b,c+12|0);j:{if(!d){break j}f=v[b+4>>2]&-1073741824;g=v[b>>2];a=0;if((d|0)!=1){j=d&-2;while(1){i=a<<2;h=v[i+v[c+12>>2]>>2];k=v[(h+32|0)+4>>2];if((k&251658240)==16777216){v[h+32>>2]=g;v[h+36>>2]=f|k&1073741823}h=v[v[c+12>>2]+(i|4)>>2];i=v[(h+32|0)+4>>2];if((i&251658240)==16777216){v[h+32>>2]=g;v[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=v[v[c+12>>2]+(a<<2)>>2];d=v[(a+32|0)+4>>2];if((d&251658240)!=16777216){break j}v[a+32>>2]=g;v[a+36>>2]=f|d&1073741823}a=v[c+284>>2];if((a|0)<0|!(a&2147483647)){break f}a=v[c+276>>2];if((a|0)==(c+16|0)|!a){break f}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,a)}xa=c+288|0}v[b+4>>2]=v[b+4>>2]&-33;xa=e+288|0}function xk(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=e|0;var f=0,g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0);h=v[a+12>>2];f=xa-80|0;xa=f;g=z[a+8>>2];if(g!=C(0)){m=ZU(h,b),n=e?-65536:-8355712,v[m+4>>2]=n;v[h+32>>2]=0;v[h>>2]=1;v[f+72>>2]=0;v[f+64>>2]=0;v[f+68>>2]=0;i=R9(c);a=_U(h,f- -64|0);j=C(i*g);z[f+56>>2]=j;k=C(H9(c)*g);z[f+52>>2]=k;i=C(g*C(0));z[f+48>>2]=i;a=_U(a,f+48|0);v[f+40>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;l=R9(d);a=_U(a,f+32|0);z[f+24>>2]=l*g;m=f,o=C(H9(d)*g),z[m+20>>2]=o;z[f+16>>2]=i;_U(a,f+16|0);v[h+32>>2]=0;v[h>>2]=2;z[f+8>>2]=j;z[f+4>>2]=k;z[f>>2]=i;_U(h,f);d=C(C(d-c)/C(20));c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f);c=C(d+c);m=f,o=C(R9(c)*g),z[m+8>>2]=o;m=f,o=C(H9(c)*g),z[m+4>>2]=o;z[f>>2]=i;_U(h,f)}xa=f+80|0}function fA(a,b){var c=C(0),d=0,e=0,f=C(0),g=C(0),h=0,i=0,j=0,k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=0,W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=0,ca=0;h=v[a+4>>2];o=z[h+24>>2];p=z[h+20>>2];i=v[a>>2];q=z[i+24>>2];r=z[i+20>>2];s=z[h+16>>2];t=z[i+16>>2];u=z[h+8>>2];y=z[h+4>>2];A=z[h>>2];E=z[i+8>>2];F=z[i+4>>2];G=z[i>>2];d=x[a+22>>1];if(d){e=v[a+24>>2];ba=e+(d<<4)|0;while(1){a=e;M=a- -64|0;d=w[a+2|0];U=M+B(d,48)|0;V=U+((d<<2)+12&2032)|0;m=w[a+3|0];ca=m<<6;H=z[a+48>>2];I=z[a+12>>2];W=z[a+8>>2];X=z[a+4>>2];g=C(0);if(d){k=z[a+32>>2];N=C(H*k);S=C(I*k);l=z[a+40>>2];O=C(H*l);n=z[a+36>>2];P=C(H*n);Q=C(I*l);R=C(I*n);j=0;while(1){e=(j<<2)+U|0;c=z[e>>2];f=C(-c);T=e;e=M+B(j,48)|0;J=z[e+44>>2];K=z[e>>2];L=z[e+16>>2];Y=z[e+4>>2];Z=z[e+20>>2];_=z[e+8>>2];$=z[e+24>>2];aa=C(z[e+36>>2]-C(z[e+32>>2]*C(C(C(C(C(k*G)+C(t*K))-C(C(k*A)+C(s*L)))+C(C(C(n*F)+C(r*Y))-C(C(n*y)+C(p*Z))))+C(C(C(l*E)+C(q*_))-C(C(l*u)+C(o*$))))));f=C(c+(fJ?J:f;z[T>>2]=f;g=C(g+f);c=C(f-c);u=C(u-C(O*c));y=C(y-C(P*c));A=C(A-C(N*c));E=C(E+C(Q*c));F=C(F+C(R*c));G=C(G+C(S*c));f=C(W*c);o=C(o-C($*f));p=C(p-C(Z*f));s=C(s-C(L*f));c=C(X*c);q=C(q+C(_*c));r=C(r+C(Y*c));t=C(t+C(K*c));j=j+1|0;if((d|0)!=(j|0)){continue}break}}e=V+ca|0;if(!(!w[b|0]|!m)){S=C(g*z[a+16>>2]);n=C(g*z[a+20>>2]);f=C(-n);M=m>>>0>1?m:1;j=0;m=0;while(1){d=(j<<6)+V|0;O=z[d+12>>2];c=z[d+28>>2];g=z[d>>2];P=z[d+16>>2];Q=z[d+32>>2];k=z[d+4>>2];R=z[d+20>>2];J=z[d+36>>2];l=z[d+8>>2];K=z[d+24>>2];L=z[d+40>>2];c=C(C(O-C(c*C(z[d+44>>2]-z[d+48>>2])))-C(c*C(C(C(C(C(G*g)+C(t*P))-C(C(A*g)+C(s*Q)))+C(C(C(F*k)+C(r*R))-C(C(y*k)+C(p*J))))+C(C(C(E*l)+C(q*K))-C(C(u*l)+C(o*L))))));N=cN?N:n:c;z[T+12>>2]=c;c=C(c-O);u=C(u-C(C(H*l)*c));y=C(y-C(C(H*k)*c));A=C(A-C(C(H*g)*c));E=C(E+C(C(I*l)*c));F=C(F+C(C(I*k)*c));G=C(G+C(C(I*g)*c));g=C(W*c);o=C(o-C(L*g));p=C(p-C(J*g));s=C(s-C(Q*g));c=C(X*c);q=C(q+C(K*c));r=C(r+C(R*c));t=C(t+C(P*c));m=0-(d|(m|0)!=0)|0;j=j+1|0;if((M|0)!=(j|0)){continue}break}v[a+52>>2]=m}if(e>>>0>>0){continue}break}}z[i+8>>2]=E;z[i+4>>2]=F;z[i>>2]=G;z[h+8>>2]=u;z[h+4>>2]=y;z[h>>2]=A;z[i+24>>2]=q;z[i+20>>2]=r;z[i+16>>2]=t;z[h+24>>2]=o;z[h+20>>2]=p;z[h+16>>2]=s}function sU(a,b,c){var d=0,e=0,f=0,g=C(0),h=0,i=C(0),j=0,k=0;e=xa-32|0;xa=e;v[a>>2]=140372;h=hT(a+8|0);f=w[b+92|0];d=a+88|0;v[d>>2]=0;v[d+4>>2]=0;v[d+152>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;v[d+172>>2]=0;t[d+168|0]=f;v[d+160>>2]=0;v[d+164>>2]=0;t[d+156|0]=f;hT(d+240|0);v[d+316>>2]=0;v[d+320>>2]=0;v[d+312>>2]=-1;v[d+324>>2]=0;v[d+332>>2]=0;t[d+328|0]=f;v[d+96>>2]=0;v[d+100>>2]=0;v[d+88>>2]=-1;v[d+92>>2]=-1048577;v[d+80>>2]=-1;v[d+84>>2]=-1048577;v[d+72>>2]=-1;v[d+76>>2]=-1048577;f=d- -64|0;v[f>>2]=-1;v[f+4>>2]=2146435071;v[d+56>>2]=-1;v[d+60>>2]=2146435071;v[d+48>>2]=-1;v[d+52>>2]=2146435071;v[d+104>>2]=0;v[d+108>>2]=0;v[d+112>>2]=0;v[d+116>>2]=0;v[d+180>>2]=0;v[d+184>>2]=0;v[d+176>>2]=-1;v[d+188>>2]=0;v[d+192>>2]=0;v[d+196>>2]=0;v[d+200>>2]=0;v[d+204>>2]=0;v[d+208>>2]=0;v[d+212>>2]=0;v[d+216>>2]=0;v[d+220>>2]=0;v[d+224>>2]=0;v[d+228>>2]=0;v[d+232>>2]=0;v[d+236>>2]=0;v[d+120>>2]=0;v[d+124>>2]=0;v[d+304>>2]=1069547520;v[d+128>>2]=0;v[d+132>>2]=0;v[d+136>>2]=0;v[d+140>>2]=0;v[d+144>>2]=0;v[d+148>>2]=0;v[a+488>>2]=0;v[a+492>>2]=0;v[a+484>>2]=-1;v[a+480>>2]=c;v[a+496>>2]=0;v[a+500>>2]=0;v[a+504>>2]=0;v[a+508>>2]=0;u[a+512>>1]=0;d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?37931:63804;j=a,k=Ba[v[v[d+12>>2]+8>>2]](d+12|0,28,c,16755,113)|0,v[j+516>>2]=k;c=xa-16|0;xa=c;xa=c+16|0;v[a+4>>2]=2147483647;v[a+520>>2]=0;v[h>>2]=v[b+84>>2];g=z[b+44>>2];z[a+40>>2]=g;z[a+44>>2]=z[b+56>>2];z[a+48>>2]=z[b+60>>2];z[a+52>>2]=z[b+48>>2];i=z[b+52>>2];t[a+65|0]=g!=C(0);z[a+56>>2]=i;v[a+72>>2]=v[b+76>>2];v[a+76>>2]=v[b+80>>2];c=v[b+96>>2];v[a+424>>2]=0;v[a+80>>2]=c;c=v[b+12>>2];v[a+432>>2]=v[b+8>>2];v[a+436>>2]=c;c=v[b+20>>2];v[a+440>>2]=v[b+16>>2];v[a+444>>2]=c;c=v[b+28>>2];v[a+448>>2]=v[b+24>>2];v[a+452>>2]=c;z[a+504>>2]=z[b+64>>2];z[a+508>>2]=z[b+68>>2];z[a+392>>2]=z[b+72>>2];c=w[b+92|0];v[a+456>>2]=0;v[a+460>>2]=0;v[a+36>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;t[a+514|0]=c;v[a+464>>2]=0;v[a+468>>2]=0;v[a+472>>2]=0;v[a+476>>2]=0;if(!(!(z[b+32>>2]!=C(0)|z[b+36>>2]!=C(0))&z[b+40>>2]==C(0))){v[e+8>>2]=0;v[e>>2]=1065353216;v[e+4>>2]=0;p9(e+16|0,e,b+32|0);z[a+12>>2]=z[e+16>>2];z[a+16>>2]=z[e+20>>2];z[a+20>>2]=z[e+24>>2];z[a+24>>2]=z[e+28>>2];z[a+28>>2]=z[b+32>>2];z[a+32>>2]=z[b+36>>2];z[a+36>>2]=z[b+40>>2]}xa=e+32|0;return a}function nj(a,b,c){var d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=0;i=xa-32|0;xa=i;j=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(j){j=j-16|0}else{j=0}n=v[a+316>>2];e=n&1024?v[a+56>>2]+144|0:a+112|0;k=z[e+8>>2];l=z[e+4>>2];m=z[e+12>>2];o=z[e>>2];p=z[b+20>>2];E=z[b+16>>2];f=z[b+8>>2];d=z[e+24>>2];q=C(d+d);g=z[b>>2];d=z[e+16>>2];r=C(d+d);d=z[e+20>>2];s=C(d+d);h=z[b+4>>2];t=C(C(f*q)+C(C(g*r)+C(s*h)));d=z[b+12>>2];u=C(C(d*d)+C(-.5));y=C(z[b+24>>2]+C(C(f*t)+C(C(q*u)+C(d*C(C(g*s)-C(r*h))))));z[i+24>>2]=y;p=C(p+C(C(h*t)+C(C(s*u)+C(d*C(C(f*r)-C(q*g))))));z[i+20>>2]=p;A=C(C(C(C(d*m)-C(o*g))-C(h*l))-C(f*k));z[i+12>>2]=A;B=C(C(C(g*l)+C(C(d*k)+C(f*m)))-C(o*h));z[i+8>>2]=B;D=C(C(C(f*o)+C(C(d*l)+C(h*m)))-C(k*g));z[i+4>>2]=D;k=C(C(C(h*k)+C(C(d*o)+C(g*m)))-C(l*f));z[i>>2]=k;d=C(E+C(C(g*t)+C(C(r*u)+C(d*C(C(h*q)-C(s*f))))));z[i+16>>2]=d;z[a+280>>2]=y;z[a+276>>2]=p;z[a+272>>2]=d;z[a+268>>2]=A;z[a+264>>2]=B;z[a+260>>2]=D;z[a+256>>2]=k;b=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:e=v[b>>2];if(w[e+4785|0]){break b}default:BG(a- -64|0,i);break a;case 1:break c}}e=v[b>>2]}v[a+316>>2]=n&-2097153;Yu(e,b);v[a+316>>2]=v[a+316>>2]|1048576}if(!(!j|!c)){b=v[a+320>>2];dj(Ba[v[v[b>>2]+100>>2]](b)|0,0,1)}if(j){a=v[a+320>>2];a=Ba[v[v[a>>2]+100>>2]](a)|0;b=xa-32|0;xa=b;d:{e:{f:{switch((v[a+4>>2]>>>30|0)-2|0){case 0:c=v[a>>2];if(w[c+4785|0]){break e}default:_E(a+12|0);c=v[a+4>>2];break d;case 1:break f}}c=v[a>>2]}Yu(c,a);c=v[a+4>>2]|2048;v[a+4>>2]=c}g:{h:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break g}break;case 1:break g;default:break h}}n=v[a+88>>2];if(n>>>0<2){break g}F=v[a+84>>2];c=1;while(1){a=v[(c<<2)+F>>2];d=z[a+80>>2];z[b>>2]=d;f=z[a+84>>2];z[b+4>>2]=f;g=z[a+88>>2];z[b+8>>2]=g;h=z[a+92>>2];z[b+12>>2]=h;k=z[a+96>>2];z[b+16>>2]=k;l=z[a+100>>2];z[b+20>>2]=l;m=z[a+104>>2];z[b+24>>2]=m;z[a+280>>2]=m;z[a+276>>2]=l;z[a+272>>2]=k;z[a+268>>2]=h;z[a+264>>2]=g;z[a+260>>2]=f;z[a+256>>2]=d;j=a+48|0;i:{j:{k:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:e=v[j>>2];if(w[e+4785|0]){break j}default:BG(a- -64|0,b);break i;case 1:break k}}e=v[j>>2]}v[a+316>>2]=v[a+316>>2]&-2097153;Yu(e,j);v[a+316>>2]=v[a+316>>2]|1048576}c=c+1|0;if((n|0)!=(c|0)){continue}break}}xa=b+32|0}xa=i+32|0}function Yx(a,b,c,d,e,f,g){var h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=0;h=xa-32|0;xa=h;E=v[b+456>>2];q=v[b+444>>2];j=J9(e,0,v[b+448>>2]<<5);i=z[f+20>>2];l=z[f+24>>2];m=z[f>>2];n=z[f+4>>2];o=z[f+8>>2];k=z[f+16>>2];e=j+(d<<5)|0;v[e+28>>2]=0;v[e+12>>2]=0;z[e+24>>2]=-l;z[e+20>>2]=-i;z[e+16>>2]=-k;z[e+8>>2]=-o;z[e+4>>2]=-n;z[e>>2]=-m;if(d){f=d;while(1){e=f<<5;dx(h,v[b+396>>2]+B(f,96)|0,(v[b+452>>2]+B(f,160)|0)+120|0,v[b+384>>2]+B(f,76)|0,e+j|0);f=e+q|0;e=j+(v[f+24>>2]<<5)|0;z[e>>2]=z[h>>2];z[e+4>>2]=z[h+4>>2];i=z[h+8>>2];v[e+12>>2]=0;z[e+8>>2]=i;z[e+16>>2]=z[h+16>>2];z[e+20>>2]=z[h+20>>2];i=z[h+24>>2];v[e+28>>2]=0;z[e+24>>2]=i;f=v[f+24>>2];if(f){continue}break}}v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;if(!c){F=z[b+560>>2];G=z[b+572>>2];H=z[b+584>>2];I=z[b+564>>2];J=z[b+576>>2];K=z[b+588>>2];L=z[b+568>>2];M=z[b+580>>2];N=z[b+592>>2];O=z[b+620>>2];P=z[b+608>>2];Q=z[b+596>>2];r=z[b+524>>2];s=z[b+528>>2];t=z[b+532>>2];R=z[b+624>>2];S=z[b+612>>2];T=z[b+600>>2];u=z[b+536>>2];w=z[b+540>>2];x=z[b+544>>2];y=z[b+548>>2];o=z[j+16>>2];p=C(-o);A=z[b+552>>2];k=z[j+20>>2];D=z[b+556>>2];i=z[j+24>>2];l=C(-z[j+4>>2]);m=z[j>>2];n=z[j+8>>2];z[a+24>>2]=C(C(C(y*p)-C(A*k))-C(D*i))+C(C(C(z[b+616>>2]*l)-C(m*z[b+604>>2]))-C(n*z[b+628>>2]));z[a+20>>2]=C(C(C(u*p)-C(w*k))-C(x*i))+C(C(C(S*l)-C(m*T))-C(n*R));z[a+16>>2]=C(C(C(r*p)-C(s*k))-C(t*i))+C(C(C(P*l)-C(m*Q))-C(n*O));k=C(-k);z[a+8>>2]=C(C(C(x*l)-C(m*t))-C(n*D))+C(C(C(M*k)-C(o*L))-C(i*N));z[a+4>>2]=C(C(C(w*l)-C(m*s))-C(n*A))+C(C(C(J*k)-C(o*I))-C(i*K));z[a>>2]=C(C(C(u*l)-C(m*r))-C(n*y))+C(C(C(G*k)-C(o*F))-C(i*H))}d=(d<<5)+q|0;e=v[d+8>>2];c=e-1|0;d=v[d+12>>2]-!e|0;if(c|d){while(1){f=v[b+452>>2];e=c;e=(U=Raa(e),V=Raa(d)+32|0,W=e,W?U:V);Zw(h,(f+B(e,160)|0)+120|0,v[b+348>>2]+B(e,112)|0,v[b+360>>2]+B(e,36)|0,v[b+384>>2]+B(e,76)|0,j+(e<<5)|0,(v[(B(e,80)+E|0)+72>>2]<<2)+g|0,a);z[a>>2]=z[h>>2];z[a+4>>2]=z[h+4>>2];i=z[h+8>>2];v[a+12>>2]=0;z[a+8>>2]=i;z[a+16>>2]=z[h+16>>2];z[a+20>>2]=z[h+20>>2];i=z[h+24>>2];v[a+28>>2]=0;z[a+24>>2]=i;e=c;c=e-1&e;d=d&d-!e;if(c|d){continue}break}}xa=h+32|0}function wR(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=v[a+20>>2];e=xa-16|0;xa=e;a=v[a+28>>2];if(z[a+1080>>2]!=C(0)){c=a+2876|0;v[c>>2]=v[c>>2]+1;v[a+2872>>2]=v[b+16>>2];v[e+8>>2]=b;c=a+2856|0;d=v[a+2908>>2];a:{if(d>>>0>=(v[a+2912>>2]&2147483647)>>>0){Ls(a+2884|0,e+8|0);break a}v[v[a+2904>>2]+(d<<2)>>2]=b;v[a+2908>>2]=d+1}Ba[v[v[b>>2]+16>>2]](b);t[a+2948|0]=1;Ks(c);b:{if(w[a+2360|0]&2){b=a+2980|0;v[b>>2]=c;v[a+2984>>2]=1;Ba[v[v[a+2856>>2]+16>>2]](c);b=v[v[b>>2]+16>>2];v[a+3104>>2]=1;d=a+2976|0;v[d>>2]=b;f=a+3100|0;b=a+2960|0;v[f>>2]=b;Ba[v[v[a+2960>>2]+16>>2]](b);v[a+3096>>2]=v[v[f>>2]+16>>2];d=v[d>>2];Ba[v[v[d>>2]+72>>2]](d,b);break b}b=a+3100|0;v[b>>2]=c;v[a+3104>>2]=1;Ba[v[v[a+2856>>2]+16>>2]](c);v[a+3096>>2]=v[v[b>>2]+16>>2]}b=a+3180|0;f=a+3080|0;v[b>>2]=f;v[a+3184>>2]=1;Ba[v[v[a+3080>>2]+16>>2]](f);b=v[v[b>>2]+16>>2];v[a+3304>>2]=1;v[a+3176>>2]=b;b=a+3300|0;h=a+3160|0;v[b>>2]=h;Ba[v[v[a+3160>>2]+16>>2]](h);b=v[v[b>>2]+16>>2];v[a+3344>>2]=1;v[a+3296>>2]=b;b=a+3340|0;i=a+3280|0;v[b>>2]=i;Ba[v[v[a+3280>>2]+16>>2]](i);v[a+3336>>2]=v[v[b>>2]+16>>2];v[a+3264>>2]=1;b=a+3260|0;j=a+3320|0;v[b>>2]=j;Ba[v[v[a+3320>>2]+16>>2]](j);v[a+3256>>2]=v[v[b>>2]+16>>2];v[a+3224>>2]=1;b=a+3220|0;k=a+3240|0;v[b>>2]=k;Ba[v[v[a+3240>>2]+16>>2]](k);b=v[v[b>>2]+16>>2];v[a+3744>>2]=1;v[a+3216>>2]=b;b=a+3740|0;l=a+3200|0;v[b>>2]=l;Ba[v[v[a+3200>>2]+16>>2]](l);b=v[v[b>>2]+16>>2];v[a+3784>>2]=1;v[a+3736>>2]=b;b=a+3780|0;m=a+3720|0;v[b>>2]=m;Ba[v[v[a+3720>>2]+16>>2]](m);d=a+3776|0;v[d>>2]=v[v[b>>2]+16>>2];b=a+2772|0;v[b>>2]=v[b>>2]+1;v[a+2768>>2]=v[d>>2];d=a+3760|0;v[e+12>>2]=d;b=a+2752|0;g=v[a+2804>>2];c:{if(g>>>0>=(v[a+2808>>2]&2147483647)>>>0){Ls(a+2780|0,e+12|0);break c}v[v[a+2800>>2]+(g<<2)>>2]=d;v[a+2804>>2]=g+1}Ba[v[v[a+3760>>2]+16>>2]](d);t[a+2844|0]=1;Ks(b);g=a+2732|0;v[g>>2]=b;v[a+2736>>2]=1;Ba[v[v[a+2752>>2]+16>>2]](b);n=a+2728|0;v[n>>2]=v[v[g>>2]+16>>2];Ks(c);c=v[a+3096>>2];Ba[v[v[c>>2]+72>>2]](c,f);c=v[a+3176>>2];Ba[v[v[c>>2]+72>>2]](c,h);c=v[a+3296>>2];Ba[v[v[c>>2]+72>>2]](c,i);c=v[a+3336>>2];Ba[v[v[c>>2]+72>>2]](c,j);c=v[a+3256>>2];Ba[v[v[c>>2]+72>>2]](c,k);c=v[a+3216>>2];Ba[v[v[c>>2]+72>>2]](c,l);c=v[a+3736>>2];Ba[v[v[c>>2]+72>>2]](c,m);c=v[a+3776>>2];Ba[v[v[c>>2]+72>>2]](c,d);Ks(b);c=v[n>>2];Ba[v[v[c>>2]+72>>2]](c,a+2712|0)}xa=e+16|0}function vy(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=0,y=C(0),A=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);if(!(!b|!c)){while(1){a:{if(w[b|0]){break a}u=x[b+2>>1];if(!u|w[b+1|0]&2){break a}if(!l){g=z[d>>2];h=C(z[e+16>>2]-z[d+16>>2]);q=C(h+h);h=C(z[e+20>>2]-z[d+20>>2]);r=C(h+h);i=z[d+4>>2];m=z[d+8>>2];h=C(z[e+24>>2]-z[d+24>>2]);s=C(h+h);j=C(C(C(C(-g)*q)-C(r*i))-C(m*s));h=z[d+12>>2];k=C(C(h*h)+C(-.5));E=C(C(C(s*k)+C(h*C(C(i*q)-C(g*r))))-C(m*j));F=C(C(C(r*k)+C(h*C(C(g*s)-C(m*q))))-C(i*j));G=C(C(C(q*k)+C(h*C(C(m*r)-C(i*s))))-C(g*j));j=z[e+8>>2];k=z[e+4>>2];n=z[e+12>>2];o=z[e>>2];q=C(C(m*j)+C(C(i*k)+C(C(h*n)+C(g*o))));r=C(C(o*i)+C(C(C(h*j)-C(n*m))-C(g*k)));s=C(C(j*g)+C(C(C(h*k)-C(n*i))-C(m*o)));h=C(C(k*m)+C(C(C(h*o)-C(n*g))-C(i*j)))}l=1;m=z[b+24>>2];g=z[b+36>>2];i=C(g+g);g=z[b+28>>2];j=C(g+g);g=z[b+32>>2];k=C(g+g);t=C(C(r*i)+C(C(h*j)+C(s*k)));g=C(C(q*q)+C(-.5));n=z[b+16>>2];o=z[b+20>>2];if(!(C(C(m*C(C(r*t)+C(C(i*g)+C(q*C(C(h*k)-C(j*s))))))+C(C(n*C(C(h*t)+C(C(j*g)+C(q*C(C(s*i)-C(k*r))))))+C(o*C(C(s*t)+C(C(k*g)+C(q*C(C(r*j)-C(i*h))))))))>C(.9990000128746033))){break a}y=C(-s);H=C(-h);I=C(-r);p=0;A=1;while(1){l=B(p,12)+b|0;i=z[l+72>>2];i=C(i+i);j=z[l- -64>>2];j=C(j+j);k=z[l+68>>2];k=C(k+k);t=C(C(r*i)+C(C(h*j)+C(s*k)));if(C(D(C(C(C(z[l+48>>2]-C(E+C(C(r*t)+C(C(i*g)+C(q*C(C(h*k)+C(j*y)))))))*m)+C(C(C(z[l+40>>2]-C(G+C(C(h*t)+C(C(j*g)+C(q*C(C(s*i)+C(k*I)))))))*n)+C(o*C(z[l+44>>2]-C(F+C(C(s*t)+C(C(k*g)+C(q*C(C(r*j)+C(i*H))))))))))))>>0>p>>>0;if((p|0)!=(u|0)){continue}}break}l=1;if(A){break a}l=v[a+7688>>2];if((l|0)==32){return 0}p=(l<<2)+a|0;v[p+7556>>2]=-1;i=z[d+8>>2];m=C(m+m);j=z[d>>2];k=C(n+n);n=C(o+o);o=z[d+4>>2];t=C(C(i*m)+C(C(j*k)+C(n*o)));l=B(l,12)+a|0;g=z[d+12>>2];y=C(C(g*g)+C(-.5));z[l+6152>>2]=C(i*t)+C(C(m*y)+C(g*C(C(j*n)-C(k*o))));z[l+6148>>2]=C(o*t)+C(C(n*y)+C(g*C(C(i*k)-C(m*j))));z[l+6144>>2]=C(j*t)+C(C(k*y)+C(g*C(C(o*m)-C(n*i))));v[p+7296>>2]=0;p=v[a+7688>>2];l=B(p,24)+a|0;u=l+6544|0;v[u>>2]=-25165825;v[u+4>>2]=-25165825;u=l+6536|0;v[u>>2]=2122317823;v[u+4>>2]=-25165825;l=l+6528|0;v[l>>2]=2122317823;v[l+4>>2]=2122317823;v[((p<<2)+a|0)+7424>>2]=65535;l=1;p=v[a+7688>>2];v[a+7688>>2]=p+1;I9((B(p,104)+a|0)+2816|0,b,104)}b=b+104|0;c=c-1|0;if(c){continue}break}}return 1}function zn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0;a=xa-32|0;xa=a;g=v[37389];k=z[b+12>>2];l=z[b+8>>2];m=z[b>>2];n=z[b+4>>2];i=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(C(m*m)+C(n*n)))))));z[a+12>>2]=k*i;z[a+8>>2]=l*i;z[a+4>>2]=n*i;z[a>>2]=m*i;z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];q=a;h=xa-16|0;xa=h;a=v[g+968>>2];if(!a){j=xa-16|0;xa=j;d=g+680|0;b=v[d+284>>2];if(b){a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?46031:63804;f=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,f,18373,180)|0}else{f=0}v[j+12>>2]=f;a=v[d+268>>2];a:{if(a>>>0>=(v[d+272>>2]&2147483647)>>>0){a=0;b=d+4|0;c=v[b+268>>2];o=c&2147483647?c<<1:1;b:{if(!o){break b}c=o<<2;if(!(w[b+256|0]|c>>>0>256)){t[b+256|0]=1;a=b;break b}if(!c){break b}a=v[37696];e=Ba[v[v[a>>2]+20>>2]](a)|0?46031:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,e,16608,553)|0}e=v[b+264>>2];r=(e<<2)+a|0;if((e|0)>0){p=v[b+260>>2];c=a;while(1){v[c>>2]=v[p>>2];p=p+4|0;c=c+4|0;if(r>>>0>c>>>0){continue}break}}v[r>>2]=v[j+12>>2];c:{if(v[b+268>>2]<0){break c}c=v[b+260>>2];if((c|0)==(b|0)){t[b+256|0]=0;break c}if(!c){break c}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[b+264>>2]}v[b+268>>2]=o;v[b+260>>2]=a;v[b+264>>2]=e+1;break a}v[v[d+264>>2]+(a<<2)>>2]=f;v[d+268>>2]=a+1}a=(B(v[d+276>>2],320)+f|0)-320|0;if(f>>>0<=a>>>0){b=v[d+288>>2];while(1){v[a>>2]=b;b=a;a=a-320|0;if(f>>>0<=a>>>0){continue}break}v[d+288>>2]=b}xa=j+16|0;a=v[g+968>>2]}v[g+968>>2]=v[a>>2];v[g+960>>2]=v[g+960>>2]+1;v[a+4>>2]=196613;v[a+8>>2]=0;v[a>>2]=123728;v[a+16>>2]=0;v[a+12>>2]=0;v[a>>2]=123036;v[a+8>>2]=0;v[a+20>>2]=0;v[a+24>>2]=65536;v[a+28>>2]=0;v[a+32>>2]=65536;v[a+36>>2]=-1;v[a+40>>2]=0;v[a+56>>2]=0;v[a>>2]=122684;v[a+48>>2]=0;v[a+52>>2]=0;AG(a- -64|0,1,q);z[a+256>>2]=z[a+80>>2];b=v[a+88>>2];v[a+260>>2]=v[a+84>>2];v[a+264>>2]=b;b=v[a+96>>2];v[a+268>>2]=v[a+92>>2];v[a+272>>2]=b;b=v[a+104>>2];v[a+276>>2]=v[a+100>>2];v[a+280>>2]=b;b=v[a+148>>2];v[a+284>>2]=v[a+144>>2];v[a+288>>2]=b;z[a+292>>2]=z[a+152>>2];b=v[a+164>>2];v[a+296>>2]=v[a+160>>2];v[a+300>>2]=b;z[a+304>>2]=z[a+168>>2];v[a+52>>2]=v[a+52>>2]&-251658241|50331648;i=z[a+220>>2];v[a+312>>2]=1;v[a+316>>2]=0;z[a+308>>2]=i;v[a>>2]=122256;v[h+8>>2]=a;b=Nm(g+600|0,h+8|0,h+15|0);if(!w[h+15|0]){v[b>>2]=v[h+8>>2]}xa=h+16|0;xa=q+32|0;return a|0}function Vu(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=xa-32|0;xa=h;g=v[a+4>>2];a:{if(!(g&32)){break a}c=g>>>24&15;f=v[((c<<2)+89188|0)+12>>2];b=v[a>>2];d=v[a+8>>2];if(!d){d=Qu(b,c);v[a+8>>2]=d}c=d+84|0;e=v[d+88>>2];if((e|0)!=1){if(!e){break a}c=v[b+4868>>2]+(v[c>>2]<<2)|0}j=a+f|0;b=0;while(1){f=v[(b<<2)+c>>2];if(w[(w[f+4|0]&64?v[f+8>>2]+52|0:f+80|0)|0]&5){t[h+8|0]=0;v[h+16>>2]=128;TJ(j,f+16|0,h+16|0,h+8|0,0);e=v[d+88>>2]}b=b+1|0;if(e>>>0>b>>>0){continue}break}}if(g&8){d=v[a+8>>2];if(!d){d=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=d}b=v[d+28>>2];b:{if(!b){break b}if(y[a+4>>2]<3221225472){c=0;while(1){e=v[v[d+24>>2]+(c<<2)>>2];f=v[e+4>>2];if((f&251658240)==16777216){v[e>>2]=v[a>>2];v[e+4>>2]=f&1073741823|-2147483648}f=v[a+4>>2];g=v[((f>>>22&60)+89188|0)+12>>2]+a|0;if(!(w[(f&1?v[a+8>>2]:g+8|0)|0]&8)){RJ(g,e+16|0);b=e-16|0;v[b>>2]=v[b>>2]+1;b=v[d+28>>2]}c=c+1|0;if(b>>>0>c>>>0){continue}break}break b}f=v[d+24>>2];c=0;if((b|0)!=1){j=b&-2;e=0;while(1){i=c<<2;g=v[i+f>>2];k=v[g+4>>2];if((k&251658240)==16777216){v[g>>2]=v[a>>2];v[g+4>>2]=k&1073741823}g=v[f+(i|4)>>2];i=v[g+4>>2];if((i&251658240)==16777216){v[g>>2]=v[a>>2];v[g+4>>2]=i&1073741823}c=c+2|0;e=e+2|0;if((j|0)!=(e|0)){continue}break}}if(!(b&1)){break b}c=v[f+(c<<2)>>2];b=v[c+4>>2];if((b&251658240)!=16777216){break b}v[c>>2]=v[a>>2];v[c+4>>2]=b&1073741823}v[h+20>>2]=0;c=d+4|0;b=v[c+24>>2];if((b|0)<0){e=v[c+20>>2];b=e+(b<<2)|0;while(1){v[b>>2]=v[h+20>>2];b=b+4|0;if(e>>>0>b>>>0){continue}break}}v[c+24>>2]=0;b=0;f=v[d+28>>2];c:{if(!f){break c}d=f<<2;if(!(w[c+16|0]|d>>>0>16)){t[c+16|0]=1;b=c;break c}if(!d){break c}b=v[37696];e=b+12|0;b=(m=e,n=d,o=Ba[v[v[b>>2]+20>>2]](b)|0?60027:63804,p=16608,q=553,l=v[v[e>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}e=v[c+20>>2];d=v[c+24>>2];if((d|0)>0){g=(d<<2)+b|0;d=b;while(1){v[d>>2]=v[e>>2];e=e+4|0;d=d+4|0;if(g>>>0>d>>>0){continue}break}e=v[c+20>>2]}d:{if(v[c+28>>2]<0){break d}if((c|0)==(e|0)){t[c+16|0]=0;break d}if(!e){break d}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[c+28>>2]=f;v[c+20>>2]=b}c=v[a+4>>2];e:{if(!(c&3)){break e}d=c>>>24&15;e=v[((d<<2)+89188|0)+12>>2];b=v[a+8>>2];if(!b){b=Qu(v[a>>2],d);v[a+8>>2]=b;c=v[a+4>>2]}d=a+e|0;if(c&1){t[h+24|0]=w[b|0];QE(d,h+24|0);c=v[a+4>>2]}if(!(c&2)){break e}RE(d,w[b+1|0])}xa=h+32|0}function q9(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=0,w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=0,V=0,W=0;w=z[b+32>>2];x=z[b+28>>2];y=z[b+20>>2];A=z[b+16>>2];E=z[b+24>>2];F=z[b+12>>2];G=z[b+8>>2];H=z[b+4>>2];I=z[b>>2];b=xa+-64|0;l=C(1);while(1){a:{h=C(p+p);m=C(h*k);f=C(i+i);n=C(f*l);d=C(m+n);j=C(f*k);o=C(h*l);e=C(j-o);g=C(C(1)-C(p*h));q=C(i*f);f=C(g-q);J=C(C(C(d*I)+C(e*H))+C(f*G));L=C(C(C(d*F)+C(e*A))+C(f*y));M=C(C(C(d*E)+C(e*x))+C(f*w));R=C(C(C(d*J)+C(e*L))+C(f*M));z[b+40>>2]=R;s=C(h*i);t=C(k+k);S=C(t*l);h=C(s-S);T=C(k*t);g=C(g-T);j=C(j+o);t=C(C(C(h*I)+C(g*H))+C(j*G));N=C(C(C(h*F)+C(g*A))+C(j*y));O=C(C(C(h*E)+C(g*x))+C(j*w));z[b+36>>2]=C(C(d*t)+C(e*N))+C(f*O);P=d;d=C(C(C(1)-q)-T);o=C(s+S);m=C(m-n);n=C(C(C(d*I)+C(o*H))+C(m*G));q=e;e=C(C(C(d*F)+C(o*A))+C(m*y));s=f;f=C(C(C(d*E)+C(o*x))+C(m*w));z[b+32>>2]=C(C(P*n)+C(q*e))+C(s*f);q=C(C(C(h*t)+C(g*N))+C(j*O));z[b+24>>2]=q;z[b+20>>2]=C(C(h*n)+C(g*e))+C(j*f);n=C(C(C(d*n)+C(o*e))+C(m*f));z[b+8>>2]=n;e=C(C(C(d*J)+C(o*L))+C(m*M));z[b+16>>2]=e;d=C(C(C(d*t)+C(o*N))+C(m*O));z[b+12>>2]=d;f=C(C(C(h*J)+C(g*L))+C(j*M));z[b+28>>2]=f;e=C(D(e));d=C(D(d));r=e>d?1:2;g=d;d=C(D(f));r=d>e?g>>1|0)+r|0)+1|0;Q=u&3;U=(b+8|0)+B(Q,12)|0;u=(u+(Q>>>1|0)|0)+1&3;V=u<<2;d=z[U+V>>2];if(d==C(0)){break a}e=C(z[(Q<<2)+U>>2]-z[((b+8|0)+B(u,12)|0)+V>>2]);d=C(d+d);if(C(D(e))>C(C(D(d))*C(2e6))){break a}d=C(e/d);e=C(D(d));b:{if(e>C(1e3)){v[b+56>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;z[(b+48|0)+(r<<2)>>2]=C(1)/C(d*C(4));d=C(1);break b}v[b+56>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;e=C(C(1)/C(e+C(K(C(C(d*d)+C(1))))));e=C(C(1)/C(K(C(C(e*e)+C(1)))));f=C(K(C(C(C(1)-e)*C(.5))));z[(b+48|0)+(r<<2)>>2]=d>=C(0)?f:C(-f);d=C(K(C(C(e+C(1))*C(.5))))}e=z[b+48>>2];f=z[b+52>>2];h=z[b+56>>2];g=C(C(C(C(l*d)-C(e*p))-C(i*f))-C(k*h));P=g;s=C(g*g);g=C(C(C(p*f)+C(C(l*h)+C(k*d)))-C(e*i));j=C(C(C(i*h)+C(C(l*e)+C(p*d)))-C(f*k));i=C(C(C(k*e)+C(C(l*f)+C(i*d)))-C(h*p));d=C(C(1)/C(K(C(s+C(C(g*g)+C(C(j*j)+C(i*i)))))));l=C(P*d);k=C(g*d);i=C(i*d);p=C(j*d);W=W+1|0;if((W|0)!=24){continue}}break}z[c+12>>2]=l;z[c+8>>2]=k;z[c+4>>2]=i;z[c>>2]=p;z[a+8>>2]=R;z[a+4>>2]=q;z[a>>2]=n}function wy(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,w){var y=0,A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=0,Q=C(0),R=C(0);y=xa-160|0;xa=y;H=z[q+24>>2];E=z[q+20>>2];L=z[m>>2];M=z[q+12>>2];N=z[i+8>>2];K=z[i>>2];O=z[i+4>>2];G=z[h+8>>2];I=z[h>>2];F=z[q+16>>2];J=z[h+4>>2];A=z[j+8>>2];B=z[j+4>>2];D=z[j>>2];v[y+156>>2]=0;I=C(F-I);J=C(E-J);z[y+152>>2]=C(B*I)-C(D*J);G=C(H-G);z[y+148>>2]=C(D*G)-C(A*I);z[y+144>>2]=C(J*A)-C(B*G);h=y+48|0;ny(h,j,y+144|0,b);G=z[j>>2];I=z[j+4>>2];J=z[j+8>>2];v[y+124>>2]=0;z[y+120>>2]=-J;z[y+116>>2]=-I;z[y+112>>2]=-G;v[y+92>>2]=0;F=C(F-K);E=C(E-O);K=C(C(B*F)-C(D*E));z[y+88>>2]=-K;G=D;D=C(H-N);F=C(C(G*D)-C(A*F));z[y+84>>2]=-F;A=C(C(E*A)-C(B*D));z[y+80>>2]=-A;i=y+16|0;m=y+112|0;P=y+80|0;ny(i,m,P,c);oy(y,b,h,m,d,f,c,i,P,e,g,t);D=z[j>>2];N=C(C(z[u>>2]*D)+C(z[u+16>>2]*z[y+144>>2]));O=C(C(D*z[w>>2])+C(A*z[w+16>>2]));H=z[j+4>>2];G=C(C(z[u+4>>2]*H)+C(z[u+20>>2]*z[y+148>>2]));I=C(C(H*z[w+4>>2])+C(F*z[w+20>>2]));E=z[j+8>>2];J=C(C(z[u+8>>2]*E)+C(z[u+24>>2]*z[y+152>>2]));K=C(C(E*z[w+8>>2])+C(K*z[w+24>>2]));F=C(C(C(N-O)+C(G-I))+C(J-K));A=C(-F);B=z[o>>2];L=C(M-L);d=F>2]&B>C(0)&A>C(L*z[k>>2]);A=d?C(B*A):C(0);Q=z[s>>2];R=z[l>>2];M=z[n>>2];B=z[y>>2];a:{if(x[b+8>>1]==65535){A=C(A-C(C(N+G)+J));break a}if(x[c+8>>1]!=65535){break a}A=C(C(C(O+I)+K)+A)}B=B>2]*E)+C(C(z[q+32>>2]*D)+C(z[q+36>>2]*H)))));A=C(L*R);A=C(B*(A>2]=E>C(0)?E:C(0);z[r+40>>2]=(d?C(0):C(-(A>C(0)?A:C(0))))+D;z[r+36>>2]=H;z[r+32>>2]=B;z[r+44>>2]=z[q+28>>2];a=v[y+68>>2];v[r>>2]=v[y+64>>2];v[r+4>>2]=a;a=v[y+76>>2];v[r+8>>2]=v[y+72>>2];v[r+12>>2]=a;A=z[y+36>>2];B=z[y+40>>2];D=z[y+32>>2];v[r+28>>2]=0;z[r+24>>2]=-B;z[r+20>>2]=-A;z[r+16>>2]=-D;a=v[y+124>>2];v[r+56>>2]=v[y+120>>2];v[r+60>>2]=a;a=v[y+116>>2];v[r+48>>2]=v[y+112>>2];v[r+52>>2]=a;a=v[y+140>>2];v[r+72>>2]=v[y+136>>2];v[r+76>>2]=a;a=v[y+132>>2];v[r+64>>2]=v[y+128>>2];v[r+68>>2]=a;a=v[y+92>>2];v[r+88>>2]=v[y+88>>2];v[r+92>>2]=a;a=v[y+84>>2];v[r+80>>2]=v[y+80>>2];v[r+84>>2]=a;a=v[y+108>>2];v[r+104>>2]=v[y+104>>2];v[r+108>>2]=a;a=v[y+100>>2];v[r+96>>2]=v[y+96>>2];v[r+100>>2]=a;xa=y+160|0}function xZ(a,b,c,d,e,f,g,h,i,j){var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=0,F=0,G=C(0),H=C(0),I=0,J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=0,V=0,W=C(0),X=0,Y=0,Z=0;E=xa-16|0;xa=E;if(c){X=v[d+32>>2];Y=v[d+24>>2];U=v[d+28>>2];while(1){c=c-1|0;d=B(v[b>>2],20)+Y|0;I=w[d+18|0];if(I){V=x[d+16>>1]+X|0;d=B(w[V|0],12)+U|0;o=z[d>>2];n=z[d+4>>2];m=z[d+8>>2];u=C(C(C(o*z[j+8>>2])+C(n*z[j+20>>2]))+C(m*z[j+32>>2]));y=C(C(C(o*z[j>>2])+C(n*z[j+12>>2]))+C(m*z[j+24>>2]));p=C(C(C(o*z[j+4>>2])+C(n*z[j+16>>2]))+C(m*z[j+28>>2]));F=C(z[f+12>>2]+C(C(u*z[f+8>>2])+C(C(y*z[f>>2])+C(p*z[f+4>>2]))))<=i;d=0;while(1){o=y;n=p;m=u;Z=F;d=d+1|0;F=B(w[(d>>>0>>0?d:0)+V|0],12)+U|0;l=z[F>>2];k=z[F+4>>2];p=z[F+8>>2];u=C(C(C(l*z[j+8>>2])+C(k*z[j+20>>2]))+C(p*z[j+32>>2]));y=C(C(C(l*z[j>>2])+C(k*z[j+12>>2]))+C(p*z[j+24>>2]));p=C(C(C(l*z[j+4>>2])+C(k*z[j+16>>2]))+C(p*z[j+28>>2]));W=C(z[f+12>>2]+C(C(u*z[f+8>>2])+C(C(y*z[f>>2])+C(p*z[f+4>>2]))));a:{if(!(W<=i?1:Z)){break a}k=z[g+36>>2];J=C(m+u);q=z[g+24>>2];t=C(o+y);r=z[g>>2];A=C(n+p);s=z[g+12>>2];G=C(C(k+k)+C(C(J*q)+C(C(t*r)+C(A*s))));l=z[h+12>>2];k=z[h>>2];G=C(G-C(l+k));L=C(u-m);M=C(y-o);N=C(p-n);O=C(C(L*q)+C(C(M*r)+C(N*s)));P=C(D(O));Q=C(l-k);if(C(D(G))>C(P+Q)){break a}k=z[g+40>>2];q=z[g+28>>2];r=z[g+4>>2];s=z[g+16>>2];H=C(C(k+k)+C(C(J*q)+C(C(t*r)+C(A*s))));l=z[h+16>>2];k=z[h+4>>2];H=C(H-C(l+k));R=C(l-k);S=C(C(L*q)+C(C(M*r)+C(N*s)));T=C(D(S));if(C(D(H))>C(R+T)){break a}k=z[g+44>>2];q=z[g+32>>2];r=z[g+8>>2];s=z[g+20>>2];t=C(C(k+k)+C(C(J*q)+C(C(t*r)+C(A*s))));l=z[h+20>>2];k=z[h+8>>2];t=C(t-C(l+k));A=C(l-k);l=C(C(L*q)+C(C(M*r)+C(N*s)));k=C(D(l));if(C(D(t))>C(A+k)|C(D(C(C(S*t)-C(H*l))))>C(C(R*k)+C(T*A))|(C(D(C(C(l*G)-C(t*O))))>C(C(Q*k)+C(P*A))|C(D(C(C(O*H)-C(G*S))))>C(C(Q*T)+C(P*R)))){break a}q=C(0);r=C(0);s=C(0);l=C(o-y);n=C(n-p);m=C(m-u);k=C(C(C(l*z[e+8>>2])+C(n*z[e+20>>2]))+C(m*z[e+32>>2]));o=C(C(C(l*z[e>>2])+C(n*z[e+12>>2]))+C(m*z[e+24>>2]));n=C(C(C(l*z[e+4>>2])+C(n*z[e+16>>2]))+C(m*z[e+28>>2]));m=C(C(k*k)+C(C(o*o)+C(n*n)));if(m>C(0)){m=C(C(1)/C(K(m)));s=C(k*m);q=C(o*m);r=C(n*m)}z[E+8>>2]=s;z[E+4>>2]=r;z[E>>2]=q;tZ(a,E)}F=i>=W;if((d|0)!=(I|0)){continue}break}}b=b+4|0;if(c){continue}break}}xa=E+16|0}function YR(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=0,m=0;h=xa-32|0;xa=h;f=v[v[a+4>>2]+40>>2];l=v[f+1140>>2];b=v[a+8>>2];ZR(a,h);g=b&2147483647;e=v[v[f+976>>2]+1816>>2];b=v[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=v[e>>2];d=Ba[v[v[c>>2]+8>>2]](c,b,16608,553)|0}i=v[e+4>>2];b=v[e+8>>2];if((b|0)>0){m=(b<<5)+d|0;c=i;b=d;while(1){z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];z[b+12>>2]=z[c+12>>2];z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];z[b+24>>2]=z[c+24>>2];v[b+28>>2]=v[c+28>>2];c=c+32|0;b=b+32|0;if(m>>>0>b>>>0){continue}break}}if(!(!i|v[e+12>>2]<0)){b=v[e>>2];Ba[v[v[b>>2]+12>>2]](b,i)}v[e+12>>2]=j;v[e+4>>2]=d}v[e+8>>2]=j}b=v[e+16>>2];c=g+1|0;v[e+16>>2]=b>>>0>c>>>0?b:c;b=v[e+4>>2]+(g<<5)|0;z[b>>2]=z[h>>2];z[b+4>>2]=z[h+4>>2];z[b+8>>2]=z[h+8>>2];z[b+12>>2]=z[h+12>>2];z[b+16>>2]=z[h+16>>2];z[b+20>>2]=z[h+20>>2];k=z[h+24>>2];v[b+28>>2]=0;z[b+24>>2]=k;t[e+20|0]=1;eV(v[l+4>>2]+B(g,24)|0,v[a+28>>2]+68|0,h,C(1));t[l+16|0]=1;b=v[a+28>>2];i=w[b- -64|0];b:{if(i&5){k=z[b+60>>2];d=v[a+4>>2];e=v[d+44>>2];j=w[e+9|0];b=2;c:{if(j-3>>>0<4294967294){break c}b=2;if(!d){break c}b=t[e+44|0]&1?1:2}_I(a,k,j?(b|v[d+48>>2]<<2)+4|0:0,i&4);break b}d=g+1|0;b=v[f+980>>2];if(d>>>0>=y[b+200>>2]){hI(b,d)}d=g<<2;v[d+v[b+180>>2]>>2]=-1;v[d+v[v[b+192>>2]+4>>2]>>2]=0;b=v[b+196>>2]+(g<<3)|0;v[b>>2]=0;v[b+4>>2]=-1}z[v[v[f+1144>>2]+4>>2]+(g<<2)>>2]=z[v[a+28>>2]+60>>2];t[f+1148|0]=1;b=v[f+2520>>2];d:{if(b<<5>>>0>g>>>0){break d}d=b&2147483647;b=b<<6|2;b=(b>>>0>>0?c:b)+31>>>5|0;if(d>>>0>=b>>>0){break d}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,b<<2,24422,17999,438)|0;d=v[f+2516>>2];e:{if(!d){break e}I9(c,d,v[f+2520>>2]<<2);if(v[f+2520>>2]<0){break e}d=v[f+2516>>2];if(!d){break e}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,d)}d=v[f+2520>>2];J9(c+(d<<2)|0,0,b-d<<2);v[f+2520>>2]=b;v[f+2516>>2]=c}c=v[a+4>>2];d=v[c+44>>2];b=w[d+9|0];f:{if(b-1>>>0>1|y[c+152>>2]>4294967293|((w[d+44|0]&3)==3|v[a+36>>2]!=-1)){break f}if(!(w[v[a+28>>2]- -64|0]&2)|(t[c+92|0]&1|w[c+149|0]&16)){break f}kS(v[v[c+40>>2]+1152>>2],a);b=w[v[c+44>>2]+9|0]}v[a+20>>2]=g;v[a+12>>2]=v[a+28>>2]+32;v[a+16>>2]=b?v[v[a+4>>2]+144>>2]:-128;xa=h+32|0}function U1(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0;f=xa-48|0;xa=f;if(w$(v[a+5312>>2],c,d,e)){a:{if(w[a+16|0]){m=z[c>>2];z[f>>2]=m;n=z[c+4>>2];z[f+4>>2]=n;i=z[c+8>>2];z[f+12>>2]=z[d>>2];z[f+16>>2]=z[d+4>>2];z[f+20>>2]=z[d+8>>2];z[f+24>>2]=z[e>>2];z[f+28>>2]=z[e+4>>2];z[f+32>>2]=z[e+8>>2];break a}h=v[a+8>>2];i=z[h+32>>2];o=z[h+20>>2];p=z[h+28>>2];q=z[h+16>>2];F=w[h+72|0];r=z[h+8>>2];s=z[h+4>>2];u=z[c>>2];x=z[h>>2];y=z[c+4>>2];A=z[h+12>>2];D=z[c+8>>2];E=z[h+24>>2];m=C(C(C(u*x)+C(y*A))+C(D*E));z[f>>2]=m;n=C(C(C(u*s)+C(y*q))+C(D*p));z[f+4>>2]=n;c=(F?24:12)+f|0;j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);c=(F?12:24)+f|0;j=z[e>>2];k=z[e+4>>2];l=z[e+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);i=C(C(C(u*r)+C(y*o))+C(D*i))}z[f+8>>2]=i;h=v[b+8>>2];b=v[a+12>>2];if(b){b=w[b+h|0]}else{b=56}e=a+20|0;d=v[a+868>>2];if((d|0)==16){c=a+880|0;E1(c,e,v[a+788>>2],w[a+852|0],a+596|0);E1(c,a+56|0,v[a+792>>2],w[a+853|0],a+608|0);E1(c,a+92|0,v[a+796>>2],w[a+854|0],a+620|0);E1(c,a+128|0,v[a+800>>2],w[a+855|0],a+632|0);E1(c,a+164|0,v[a+804>>2],w[a+856|0],a+644|0);E1(c,a+200|0,v[a+808>>2],w[a+857|0],a+656|0);E1(c,a+236|0,v[a+812>>2],w[a+858|0],a+668|0);E1(c,a+272|0,v[a+816>>2],w[a+859|0],a+680|0);E1(c,a+308|0,v[a+820>>2],w[a+860|0],a+692|0);E1(c,a+344|0,v[a+824>>2],w[a+861|0],a+704|0);E1(c,a+380|0,v[a+828>>2],w[a+862|0],a+716|0);E1(c,a+416|0,v[a+832>>2],w[a+863|0],a+728|0);E1(c,a+452|0,v[a+836>>2],w[a+864|0],a+740|0);E1(c,a+488|0,v[a+840>>2],w[a+865|0],a+752|0);E1(c,a+524|0,v[a+844>>2],w[a+866|0],a+764|0);E1(c,a+560|0,v[a+848>>2],w[a+867|0],a+776|0);i=z[f+8>>2];n=z[f+4>>2];m=z[f>>2];d=0}v[a+868>>2]=d+1;c=e+B(d,36)|0;z[c+8>>2]=i;z[c+4>>2]=n;z[c>>2]=m;z[c+12>>2]=z[f+12>>2];z[c+16>>2]=z[f+16>>2];z[c+20>>2]=z[f+20>>2];z[c+24>>2]=z[f+24>>2];z[c+28>>2]=z[f+28>>2];z[c+32>>2]=z[f+32>>2];a=B(d,12)+a|0;v[a+596>>2]=v[g>>2];v[a+600>>2]=v[g+4>>2];v[a+604>>2]=v[g+8>>2];v[(e+(d<<2)|0)+768>>2]=h;t[(d+e|0)+832|0]=b}xa=f+48|0;return 1}function sZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0;d=xa-112|0;xa=d;if(b){u=a+4|0;while(1){t=v[c>>2];n$(v[a+104>>2],v[a+108>>2],d+56|0,d+100|0,d+44|0,t,0,0);f=z[d+56>>2];g=C(z[d+68>>2]-f);e=z[d+60>>2];l=C(z[d+84>>2]-e);f=C(z[d+80>>2]-f);e=C(z[d+72>>2]-e);s=C(C(g*l)-C(f*e));i=e;e=z[d+64>>2];m=C(z[d+88>>2]-e);e=C(z[d+76>>2]-e);l=C(C(i*m)-C(l*e));m=C(C(e*f)-C(m*g));f=C(K(C(C(s*s)+C(C(l*l)+C(m*m)))));if(f>C(0)){f=C(C(1)/f);s=C(s*f);m=C(m*f);l=C(l*f)}n=v[d+44>>2];j=8;a:{if((n|0)==-1){break a}n$(v[a+104>>2],v[a+108>>2],d+8|0,0,0,n,0,0);e=z[d+8>>2];o=C(z[d+20>>2]-e);h=z[d+12>>2];g=C(z[d+36>>2]-h);p=C(z[d+32>>2]-e);i=C(z[d+24>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+16>>2];q=C(z[d+40>>2]-i);r=C(z[d+28>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+80>>2]-e));e=C(C(r*p)-C(q*o));j=0;if(!(C(C(f*C(z[d+88>>2]-i))+C(k+C(e*C(z[d+84>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2];b:{if((n|0)!=-1){n$(v[a+104>>2],v[a+108>>2],d+8|0,0,0,n,0,0);e=z[d+8>>2];o=C(z[d+20>>2]-e);h=z[d+12>>2];g=C(z[d+36>>2]-h);p=C(z[d+32>>2]-e);i=C(z[d+24>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+16>>2];q=C(z[d+40>>2]-i);r=C(z[d+28>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+56>>2]-e));e=C(C(r*p)-C(q*o));if(!(C(C(f*C(z[d+64>>2]-i))+C(k+C(e*C(z[d+60>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2];c:{if((n|0)!=-1){n$(v[a+104>>2],v[a+108>>2],d+8|0,0,0,n,0,0);e=z[d+8>>2];o=C(z[d+20>>2]-e);h=z[d+12>>2];g=C(z[d+36>>2]-h);p=C(z[d+32>>2]-e);i=C(z[d+24>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+16>>2];q=C(z[d+40>>2]-i);r=C(z[d+28>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+68>>2]-e));e=C(C(r*p)-C(q*o));if(!(C(C(f*C(z[d+76>>2]-i))+C(k+C(e*C(z[d+72>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2]&x[a+20>>1])){break a}K=v[c>>2];if(!v[K+588>>2]){break a}k=z[c+20>>2];q=v[a+4>>2];u=z[c+36>>2];d=C(z[q+8>>2]-u);e=C(d+d);h=z[c+12>>2];w=z[c+28>>2];d=C(z[q>>2]-w);f=C(d+d);A=z[c+32>>2];d=C(z[q+4>>2]-A);g=C(d+d);l=z[c+16>>2];i=C(C(k*e)+C(C(h*f)+C(g*l)));d=z[c+24>>2];n=C(C(d*d)+C(-.5));z[j+56>>2]=C(k*i)+C(C(e*n)-C(d*C(C(h*g)-C(f*l))));z[j+52>>2]=C(l*i)+C(C(g*n)-C(d*C(C(k*f)-C(e*h))));z[j+48>>2]=C(h*i)+C(C(f*n)-C(d*C(C(l*e)-C(g*k))));y=v[a+8>>2];e=z[y+8>>2];e=C(e+e);f=z[y>>2];f=C(f+f);g=z[y+4>>2];g=C(g+g);i=C(C(k*e)+C(C(h*f)+C(l*g)));z[j+40>>2]=C(k*i)+C(C(e*n)-C(d*C(C(h*g)-C(f*l))));z[j+36>>2]=C(l*i)+C(C(g*n)-C(d*C(C(k*f)-C(e*h))));z[j+32>>2]=C(h*i)+C(C(f*n)-C(d*C(C(l*e)-C(g*k))));e=z[q+8>>2];y=v[a+12>>2];f=z[y+8>>2];g=C(e+f);o=z[q+4>>2];m=z[y+4>>2];i=C(o+m);r=C(e-f);o=C(o-m);e=z[q>>2];f=z[y>>2];m=C(e-f);s=C(e+f);if(!(m>s)){B=C(-h);p=C(B-h);e=C(-k);L=C(p*e);f=C(-l);t=C(f-l);M=C(d*t);H=C(C(s-m)*C(.5));E=C(d*p);F=C(t*e);I=C(C(i-o)*C(.5));G=C(C(h*p)+C(1));N=C(t*f);J=C(C(g-r)*C(.5));O=C(C(C(D(C(C(L-M)*H)))+C(D(C(C(E+F)*I))))+C(D(C(C(G-N)*J))));t=C(u*C(-2));u=C(w*C(-2));w=C(A*C(-2));A=C(C(k*t)+C(C(h*u)+C(w*l)));g=C(C(r+g)*C(.5));r=C(g+g);g=C(C(m+s)*C(.5));m=C(g+g);g=C(C(o+i)*C(.5));o=C(g+g);s=C(C(e*r)+C(C(B*m)+C(o*f)));P=C(C(C(k*A)+C(C(t*n)-C(d*C(C(h*w)+C(u*f)))))+C(C(e*s)+C(C(r*n)+C(d*C(C(B*o)+C(l*m))))));g=C(O+P);p=C(p*f);i=C(e-k);Q=C(d*i);R=G;G=C(i*e);E=C(C(C(D(C(C(p+Q)*H)))+C(D(C(C(R-G)*I))))+C(D(C(C(F-E)*J))));F=C(C(C(l*A)+C(C(w*n)-C(d*C(C(k*u)+C(t*B)))))+C(C(f*s)+C(C(o*n)+C(d*C(C(e*m)+C(h*r))))));i=C(E+F);p=C(C(C(D(C(C(C(C(1)-N)-G)*H)))+C(D(C(C(p-Q)*I))))+C(D(C(C(L+M)*J))));d=C(C(C(h*A)+C(C(u*n)-C(d*C(C(l*t)+C(w*e)))))+C(C(B*s)+C(C(m*n)+C(d*C(C(f*r)+C(k*o))))));s=C(p+d);o=C(F-E);m=C(d-p);r=C(P-O)}z[j+24>>2]=C(g-r)*C(.5);z[j+20>>2]=C(i-o)*C(.5);z[j+16>>2]=C(s-m)*C(.5);c=v[c+4>>2];q=hD(v[c+12>>2],v[c+8>>2],K,j+48|0,j+32|0,b,j+16|0,v[a+16>>2])}xa=j- -64|0;return q|0}function UI(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;c=xa-144|0;xa=c;b=v[v[a+272>>2]+560>>2];e=v[b>>2];if(e){v[b>>2]=v[e>>2]}if(!e){b=v[37696];e=Ba[v[v[b+12>>2]+8>>2]](b+12|0,56,24422,8887,2450)|0;b=e;v[b>>2]=0;v[b+4>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0}h=e+4|0;v[a+28>>2]=h;g=v[e+8>>2];f=e+28|0;v[a+52>>2]=f;v[a+32>>2]=g;b=v[e+32>>2];i=e+16|0;v[a+40>>2]=i;v[a+56>>2]=b;d=v[e+20>>2];j=e+40|0;v[a- -64>>2]=j;v[a+44>>2]=d;k=v[e+44>>2];v[a+68>>2]=k;t[c+128|0]=1;v[c+136>>2]=0;v[c+140>>2]=16;v[c+132>>2]=c;if(v[a+268>>2]){g=0;while(1){j=(g<<2)+a|0;b=v[j+76>>2];a:{if(!(Ba[v[v[b>>2]+8>>2]](b,v[a+272>>2],e)|0)){break a}h=((g<<3)+a|0)+140|0;b=v[c+136>>2];b:{if(b>>>0>=(v[c+140>>2]&2147483647)>>>0){b=0;d=v[c+140>>2];i=d&2147483647?d<<1:1;c:{if(!i){break c}d=i<<3;if(!(w[c+128|0]|d>>>0>128)){t[c+128|0]=1;b=c;break c}if(!d){break c}b=v[37696];f=b+12|0;b=(n=f,o=d,p=Ba[v[v[b>>2]+20>>2]](b)|0?31385:63804,q=16608,r=553,m=v[v[f>>2]+8>>2],Ba[m](n|0,o|0,p|0,q|0,r|0)|0)}d=v[c+136>>2];if((d|0)>0){k=(d<<3)+b|0;f=v[c+132>>2];d=b;while(1){l=v[f+4>>2];v[d>>2]=v[f>>2];v[d+4>>2]=l;f=f+8|0;d=d+8|0;if(k>>>0>d>>>0){continue}break}d=v[c+136>>2]}f=v[h+4>>2];d=(d<<3)+b|0;v[d>>2]=v[h>>2];v[d+4>>2]=f;d:{if(v[c+140>>2]<0){break d}d=v[c+132>>2];if((d|0)==(c|0)){t[c+128|0]=0;break d}if(!d){break d}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[c+140>>2]=i;v[c+132>>2]=b;break b}d=v[h+4>>2];b=v[c+132>>2]+(b<<3)|0;v[b>>2]=v[h>>2];v[b+4>>2]=d}v[c+136>>2]=v[c+136>>2]+1;b=v[j+76>>2];if(!b){break a}Ba[v[v[b>>2]+4>>2]](b)}g=g+1|0;if(g>>>0>2]){continue}break}k=v[a+68>>2];j=v[a+64>>2];d=v[a+44>>2];i=v[a+40>>2];f=v[a+52>>2];h=v[a+28>>2];g=v[a+32>>2];b=v[a+56>>2]}v[a+36>>2]=v[h+4>>2]-g;v[a+60>>2]=v[f+4>>2]-b;v[a+48>>2]=v[i+4>>2]-d;v[a+72>>2]=v[j+4>>2]-k;b=v[v[a+272>>2]+560>>2];v[e>>2]=v[b>>2];v[b>>2]=e;if(v[c+136>>2]){g=0;while(1){FI(v[a+276>>2],v[c+132>>2]+(g<<3)|0);g=g+1|0;if(g>>>0>2]){continue}break}}a=v[c+140>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[c+132>>2];if((a|0)==(c|0)|!a){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=c+144|0}function AC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=0,n=0,o=0,p=0;d=xa+-64|0;xa=d;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;ZU(b,d);v[b+4>>2]=c;c=a+16|0;e=z[c+672>>2];f=z[c+676>>2];g=z[c+660>>2];h=z[c+656>>2];i=z[c+664>>2];j=z[c+680>>2];z[d+52>>2]=i+j;z[d+48>>2]=g+f;t[d+56|0]=1;z[d+44>>2]=h+e;z[d+40>>2]=i-j;z[d+36>>2]=g-f;z[d+32>>2]=h-e;$U(b,d+32|0);o=c+688|0;while(1){if(v[(k<<2)+o>>2]){a=c+(k<<5)|0;e=z[a+752>>2];f=z[a+736>>2];g=z[a+756>>2];h=z[a+740>>2];i=z[a+760>>2];j=z[a+744>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;$U(b,d+32|0);n=c+B(k,224)|0;p=n+912|0;l=0;while(1){a:{if(!v[(l<<2)+p>>2]){break a}a=(l<<5)+n|0;e=z[a+976>>2];f=z[a+960>>2];g=z[a+980>>2];h=z[a+964>>2];i=z[a+984>>2];j=z[a+968>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;$U(b,d+32|0);a=(c+B(k,1120)|0)+B(l,224)|0;m=a+2032|0;if(v[m>>2]){e=z[a+2096>>2];f=z[a+2080>>2];g=z[a+2100>>2];h=z[a+2084>>2];i=z[a+2104>>2];j=z[a+2088>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;$U(b,d+32|0)}if(v[m+4>>2]){e=z[a+2128>>2];f=z[a+2112>>2];g=z[a+2132>>2];h=z[a+2116>>2];i=z[a+2136>>2];j=z[a+2120>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;$U(b,d+32|0)}if(v[m+8>>2]){e=z[a+2160>>2];f=z[a+2144>>2];g=z[a+2164>>2];h=z[a+2148>>2];i=z[a+2168>>2];j=z[a+2152>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;$U(b,d+32|0)}if(v[m+12>>2]){e=z[a+2192>>2];f=z[a+2176>>2];g=z[a+2196>>2];h=z[a+2180>>2];i=z[a+2200>>2];j=z[a+2184>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;$U(b,d+32|0)}if(!v[m+16>>2]){break a}e=z[a+2224>>2];f=z[a+2208>>2];g=z[a+2228>>2];h=z[a+2212>>2];i=z[a+2232>>2];j=z[a+2216>>2];t[d+56|0]=1;z[d+52>>2]=j+i;z[d+48>>2]=h+g;z[d+44>>2]=f+e;z[d+40>>2]=j-i;z[d+36>>2]=h-g;z[d+32>>2]=f-e;$U(b,d+32|0)}l=l+1|0;if((l|0)!=5){continue}break}}k=k+1|0;if((k|0)!=5){continue}break}xa=d- -64|0}function Iz(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,u=0,A=0,D=C(0);h=xa-48|0;xa=h;f=v[a+44>>2];b=v[f+336>>2];d=v[b>>2];if(d){v[b>>2]=v[d>>2]}if(!d){d=v[37696];b=Ba[v[v[d>>2]+20>>2]](d)|0?26947:63804;b=Ba[v[v[d+12>>2]+8>>2]](d+12|0,12195,b,19395,82)|0;d=b+19&-16;v[d-4>>2]=d-b;d=hB(d,v[f+340>>2])}f=d+11856|0;v[f>>2]=0;v[f+4>>2]=0;g=d+11852|0;a:{if(!v[a+40>>2]){f=0;v[d+12064>>2]=0;v[d+12052>>2]=0;l=d+12060|0;m=d+12048|0;break a}b=v[a+36>>2];f=0;while(1){e=v[v[a+32>>2]+(i<<2)>>2];c=v[e+32>>2];j=B(i,52);b=j+b|0;v[b>>2]=v[e+28>>2];v[b+4>>2]=c;v[b+48>>2]=v[e+76>>2];c=v[e+72>>2];v[b+40>>2]=v[e+68>>2];v[b+44>>2]=c;c=v[e+64>>2];v[b+32>>2]=v[e+60>>2];v[b+36>>2]=c;c=v[e+56>>2];v[b+24>>2]=v[e+52>>2];v[b+28>>2]=c;c=v[e+48>>2];v[b+16>>2]=v[e+44>>2];v[b+20>>2]=c;c=v[e+40>>2];v[b+8>>2]=v[e+36>>2];v[b+12>>2]=c;b=v[a+36>>2];e=w[(j+b|0)+48|0];f=e>>>0>>0?f:e;i=i+1|0;if(i>>>0>2]){continue}break}v[d+12052>>2]=0;m=d+12048|0;if((v[d+12056>>2]&2147483647)>>>0>>0){zw(m,f)}v[d+12052>>2]=f;v[d+12064>>2]=0;l=d+12060|0;if((v[d+12068>>2]&2147483647)>>>0>=f>>>0){break a}zw(l,f)}v[d+12064>>2]=f;n=v[a+48>>2];b=v[a+28>>2];v[h+40>>2]=d+12088;v[h+36>>2]=d+11824;v[h+32>>2]=g;v[h+24>>2]=128228;v[h+28>>2]=b+11836;o=v[a+40>>2];b:{if(!o){i=0;e=0;g=0;j=0;break b}p=v[a+36>>2];j=0;g=0;e=0;b=0;i=0;while(1){u=v[v[a+32>>2]+(b<<2)>>2];A=v[v[a+28>>2]+12132>>2];c=v[a+44>>2];D=z[c+52>>2];z[h+8>>2]=z[c+68>>2];z[h+12>>2]=z[c+72>>2];z[h+16>>2]=z[c+76>>2];k=0;q=B(b,52);r=q+p|0;s=v[(v[v[r>>2]+24>>2]<<2)+149584>>2];if(s){k=Ba[s|0](r,D,h+24|0,(n<<5)+A|0,h+20|0,h+8|0,v[c+600>>2],v[c+604>>2],v[m>>2],v[l>>2])|0;o=v[a+40>>2];p=v[a+36>>2]}c=p+q|0;t[c+49|0]=k;k=x[c+46>>1];i=i>>>0>k>>>0?i:k;c=x[c+44>>1];e=c>>>0>>0?e:c;c=x[v[u+60>>2]+12>>1];k=c&255;g=g>>>0>>0?k:g;c=c>>>8|0;j=c>>>0>j>>>0?c:j;n=n- -64|0;b=b+1|0;if(o>>>0>b>>>0){continue}break}b=v[a+28>>2]}c=b+12112|0;b=v[c>>2];v[c>>2]=(b|0)>(g|0)?b:g;g=v[a+28>>2]+12116|0;b=v[g>>2];v[g>>2]=(b|0)>(j|0)?b:j;g=v[a+28>>2]+12120|0;b=v[g>>2];v[g>>2]=(b|0)>(e|0)?b:e;e=v[a+28>>2]+12124|0;b=v[e>>2];v[e>>2]=(b|0)>(i|0)?b:i;e=v[a+28>>2]+12128|0;b=v[e>>2];v[e>>2]=(b|0)>(f|0)?b:f;a=v[v[a+44>>2]+336>>2];v[d>>2]=v[a>>2];v[a>>2]=d;xa=h+48|0}function HZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0;d=xa-96|0;xa=d;if(b){u=a+4|0;while(1){t=v[c>>2];n$(v[a+2232>>2],v[a+2220>>2],d+48|0,d+84|0,d+36|0,t,0,0);f=z[d+48>>2];g=C(z[d+60>>2]-f);e=z[d+52>>2];l=C(z[d+76>>2]-e);f=C(z[d+72>>2]-f);e=C(z[d+64>>2]-e);s=C(C(g*l)-C(f*e));i=e;e=z[d+56>>2];m=C(z[d+80>>2]-e);e=C(z[d+68>>2]-e);l=C(C(i*m)-C(l*e));m=C(C(e*f)-C(m*g));f=C(K(C(C(s*s)+C(C(l*l)+C(m*m)))));if(f>C(0)){f=C(C(1)/f);s=C(s*f);m=C(m*f);l=C(l*f)}n=v[d+36>>2];j=8;a:{if((n|0)==-1){break a}n$(v[a+2232>>2],v[a+2220>>2],d,0,0,n,0,0);e=z[d>>2];o=C(z[d+12>>2]-e);h=z[d+4>>2];g=C(z[d+28>>2]-h);p=C(z[d+24>>2]-e);i=C(z[d+16>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+8>>2];q=C(z[d+32>>2]-i);r=C(z[d+20>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+72>>2]-e));e=C(C(r*p)-C(q*o));j=0;if(!(C(C(f*C(z[d+80>>2]-i))+C(k+C(e*C(z[d+76>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2];b:{if((n|0)!=-1){n$(v[a+2232>>2],v[a+2220>>2],d,0,0,n,0,0);e=z[d>>2];o=C(z[d+12>>2]-e);h=z[d+4>>2];g=C(z[d+28>>2]-h);p=C(z[d+24>>2]-e);i=C(z[d+16>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+8>>2];q=C(z[d+32>>2]-i);r=C(z[d+20>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+48>>2]-e));e=C(C(r*p)-C(q*o));if(!(C(C(f*C(z[d+56>>2]-i))+C(k+C(e*C(z[d+52>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2];c:{if((n|0)!=-1){n$(v[a+2232>>2],v[a+2220>>2],d,0,0,n,0,0);e=z[d>>2];o=C(z[d+12>>2]-e);h=z[d+4>>2];g=C(z[d+28>>2]-h);p=C(z[d+24>>2]-e);i=C(z[d+16>>2]-h);f=C(C(o*g)-C(p*i));k=i;i=z[d+8>>2];q=C(z[d+32>>2]-i);r=C(z[d+20>>2]-i);g=C(C(k*q)-C(g*r));k=C(g*C(z[d+60>>2]-e));e=C(C(r*p)-C(q*o));if(!(C(C(f*C(z[d+68>>2]-i))+C(k+C(e*C(z[d+64>>2]-h))))C(0)){h=C(C(1)/h);f=C(f*h);e=C(e*h);g=C(g*h)}j=(C(C(f*s)+C(C(g*l)+C(m*e)))>2];O=z[b+76>>2];P=z[b+88>>2];Q=z[b+96>>2];R=z[b+80>>2];S=z[b+92>>2];T=z[b+100>>2];U=z[b+104>>2];D=z[b+16>>2];E=z[b+20>>2];d=z[a+16>>2];e=z[a+28>>2];p=z[b+48>>2];q=z[b+60>>2];F=z[b+28>>2];r=z[b+40>>2];m=z[b+52>>2];s=z[b- -64>>2];V=z[b+72>>2];G=z[b>>2];H=z[b+4>>2];I=z[b+8>>2];f=z[a+24>>2];g=z[a>>2];h=z[a+12>>2];J=z[b+12>>2];i=z[a+4>>2];K=z[b+24>>2];o=z[b+36>>2];L=z[b+32>>2];j=z[a+32>>2];n=z[b+68>>2];t=C(j*n);u=z[b+44>>2];k=z[a+8>>2];l=z[a+20>>2];v=z[b+56>>2];z[b+32>>2]=L+C(t+C(C(u*k)+C(l*v)));w=C(l*m);z[b+28>>2]=F+C(C(s*j)+C(C(r*k)+w));c=C(k*o);z[b+24>>2]=K+C(C(q*j)+C(c+C(l*p)));x=C(e*n);z[b+20>>2]=E+C(x+C(C(u*i)+C(d*v)));y=C(d*m);z[b+16>>2]=D+C(C(s*e)+C(C(r*i)+y));A=C(i*o);z[b+12>>2]=J+C(C(q*e)+C(A+C(d*p)));B=C(f*n);z[b+8>>2]=I+C(B+C(C(u*g)+C(h*v)));m=C(h*m);z[b+4>>2]=H+C(C(s*f)+C(C(r*g)+m));n=C(g*o);z[b>>2]=G+C(C(q*f)+C(n+C(h*p)));M=C(L+C(t+C(C(k*q)+C(l*s))));o=C(K+C(C(j*u)+C(c+C(l*r))));t=C(F+C(C(j*v)+C(C(k*p)+w)));c=C(C(C(j*M)+C(C(k*o)+C(l*t)))+C(U+C(C(j*L)+C(C(k*K)+C(l*F)))));z[b+104>>2]=C(c+c)*C(.5);w=C(E+C(x+C(C(i*q)+C(d*s))));x=C(J+C(C(e*u)+C(A+C(d*r))));y=C(D+C(C(e*v)+C(C(i*p)+y)));c=C(C(C(C(C(M*e)+C(C(o*i)+C(d*t)))+C(S+C(C(j*E)+C(C(k*J)+C(l*D)))))+C(C(C(j*w)+C(C(k*x)+C(l*y)))+C(T+C(C(e*L)+C(C(i*K)+C(d*F))))))*C(.5));z[b+100>>2]=c;A=C(I+C(B+C(C(g*q)+C(h*s))));B=C(G+C(C(f*u)+C(n+C(h*r))));m=C(H+C(C(f*v)+C(C(g*p)+m)));n=C(C(C(C(R+C(C(j*I)+C(C(k*G)+C(l*H))))+C(C(M*f)+C(C(o*g)+C(h*t))))+C(C(C(j*A)+C(C(k*B)+C(l*m)))+C(Q+C(C(f*L)+C(C(g*K)+C(h*F))))))*C(.5));z[b+96>>2]=n;z[b+92>>2]=c;c=C(C(C(w*e)+C(C(x*i)+C(d*y)))+C(P+C(C(e*E)+C(C(i*J)+C(d*D)))));z[b+88>>2]=C(c+c)*C(.5);c=C(C(C(C(O+C(C(e*I)+C(C(i*G)+C(d*H))))+C(C(w*f)+C(C(x*g)+C(h*y))))+C(C(C(A*e)+C(C(B*i)+C(d*m)))+C(N+C(C(f*E)+C(C(g*J)+C(h*D))))))*C(.5));z[b+84>>2]=c;z[b+80>>2]=n;z[b+76>>2]=c;c=C(C(V+C(C(f*I)+C(C(g*G)+C(h*H))))+C(C(A*f)+C(C(B*g)+C(h*m))));z[b+72>>2]=C(c+c)*C(.5)}function fo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0);if(b-3>>>0<=1){return oV(v[37389],c)|0}a:{b:{switch(b-1|0){case 1:e=v[37389];b=xa-16|0;xa=b;a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?40633:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,132,d,5452,514)|0;v[a+12>>2]=1;v[a+4>>2]=196610;u[a+52>>1]=0;v[a+8>>2]=142832;v[a>>2]=142748;v[a+80>>2]=v[c+64>>2];v[a+84>>2]=v[c+108>>2];z[a+88>>2]=z[c+68>>2];z[a+92>>2]=z[c+72>>2];z[a+96>>2]=z[c+76>>2];z[a+100>>2]=z[c+80>>2];z[a+104>>2]=z[c+84>>2];z[a+108>>2]=z[c+88>>2];z[a+112>>2]=z[c+92>>2];z[a+116>>2]=z[c+96>>2];z[a+120>>2]=z[c+100>>2];f=z[c+104>>2];v[a+128>>2]=e;z[a+124>>2]=f;z[a+16>>2]=z[c>>2];z[a+20>>2]=z[c+4>>2];z[a+24>>2]=z[c+8>>2];z[a+28>>2]=z[c+12>>2];z[a+32>>2]=z[c+16>>2];z[a+36>>2]=z[c+20>>2];z[a+40>>2]=z[c+24>>2];z[a+44>>2]=z[c+28>>2];z[a+48>>2]=z[c+32>>2];d=v[c+40>>2];v[a+52>>2]=v[c+36>>2];v[a+56>>2]=d;d=v[c+48>>2];v[a+60>>2]=v[c+44>>2];v[a+64>>2]=d;d=v[c+56>>2];v[a+68>>2]=v[c+52>>2];v[a+72>>2]=d;v[a+76>>2]=v[c+60>>2];v[b+8>>2]=a;c=rh(e+48|0,b+8|0,b+15|0);break a;case 0:e=v[37389];b=xa-16|0;xa=b;a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?45527:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,100,d,5452,570)|0;v[a+12>>2]=1;v[a+4>>2]=196609;v[a+76>>2]=0;v[a+80>>2]=0;v[a+96>>2]=e;u[a+68>>1]=0;v[a+8>>2]=142996;v[a>>2]=142892;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;z[a+16>>2]=z[c>>2];z[a+20>>2]=z[c+4>>2];z[a+24>>2]=z[c+8>>2];z[a+28>>2]=z[c+12>>2];z[a+32>>2]=z[c+16>>2];z[a+36>>2]=z[c+20>>2];d=v[c+28>>2];v[a+40>>2]=v[c+24>>2];v[a+44>>2]=d;d=v[c+36>>2];v[a+48>>2]=v[c+32>>2];v[a+52>>2]=d;d=v[c+44>>2];v[a+56>>2]=v[c+40>>2];v[a+60>>2]=d;v[a- -64>>2]=v[c+48>>2];u[a+68>>1]=x[c+52>>1];v[a+72>>2]=v[c+56>>2];v[c+44>>2]=0;v[b+8>>2]=a;c=rh(e+88|0,b+8|0,b+15|0);break a;case 16:e=v[37389];b=xa-16|0;xa=b;a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?41893:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,44,d,5452,658)|0;v[a+12>>2]=1;v[a+4>>2]=196625;v[a+16>>2]=e;v[a+8>>2]=141960;v[a>>2]=141904;v[a+20>>2]=v[c>>2];v[a+24>>2]=v[c+4>>2];v[a+28>>2]=v[c+8>>2];d=v[c+12>>2];v[a+36>>2]=0;v[a+32>>2]=d;v[a+40>>2]=v[c+16>>2];v[b+8>>2]=a;c=rh(e+128|0,b+8|0,b+15|0);break a;default:break b}}b9(v[37696],32,18663,62,70174,0);return 0}if(!w[b+15|0]){v[c>>2]=v[b+8>>2]}xa=b+16|0;return a|0}function i2(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0;f=xa-48|0;xa=f;a:{if(w[a+16|0]){m=z[c>>2];z[f>>2]=m;n=z[c+4>>2];z[f+4>>2]=n;i=z[c+8>>2];z[f+12>>2]=z[d>>2];z[f+16>>2]=z[d+4>>2];z[f+20>>2]=z[d+8>>2];z[f+24>>2]=z[e>>2];z[f+28>>2]=z[e+4>>2];z[f+32>>2]=z[e+8>>2];break a}h=v[a+8>>2];i=z[h+32>>2];o=z[h+20>>2];p=z[h+28>>2];q=z[h+16>>2];F=w[h+72|0];r=z[h+8>>2];s=z[h+4>>2];u=z[c>>2];x=z[h>>2];y=z[c+4>>2];A=z[h+12>>2];D=z[c+8>>2];E=z[h+24>>2];m=C(C(C(u*x)+C(y*A))+C(D*E));z[f>>2]=m;n=C(C(C(u*s)+C(y*q))+C(D*p));z[f+4>>2]=n;c=(F?24:12)+f|0;j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);c=(F?12:24)+f|0;j=z[e>>2];k=z[e+4>>2];l=z[e+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);i=C(C(C(u*r)+C(y*o))+C(D*i))}z[f+8>>2]=i;h=v[b+8>>2];b=v[a+12>>2];if(b){b=w[b+h|0]}else{b=56}e=a+20|0;d=v[a+868>>2];if((d|0)==16){c=a+880|0;G1(c,e,v[a+788>>2],w[a+852|0],a+596|0);G1(c,a+56|0,v[a+792>>2],w[a+853|0],a+608|0);G1(c,a+92|0,v[a+796>>2],w[a+854|0],a+620|0);G1(c,a+128|0,v[a+800>>2],w[a+855|0],a+632|0);G1(c,a+164|0,v[a+804>>2],w[a+856|0],a+644|0);G1(c,a+200|0,v[a+808>>2],w[a+857|0],a+656|0);G1(c,a+236|0,v[a+812>>2],w[a+858|0],a+668|0);G1(c,a+272|0,v[a+816>>2],w[a+859|0],a+680|0);G1(c,a+308|0,v[a+820>>2],w[a+860|0],a+692|0);G1(c,a+344|0,v[a+824>>2],w[a+861|0],a+704|0);G1(c,a+380|0,v[a+828>>2],w[a+862|0],a+716|0);G1(c,a+416|0,v[a+832>>2],w[a+863|0],a+728|0);G1(c,a+452|0,v[a+836>>2],w[a+864|0],a+740|0);G1(c,a+488|0,v[a+840>>2],w[a+865|0],a+752|0);G1(c,a+524|0,v[a+844>>2],w[a+866|0],a+764|0);G1(c,a+560|0,v[a+848>>2],w[a+867|0],a+776|0);i=z[f+8>>2];n=z[f+4>>2];m=z[f>>2];d=0}v[a+868>>2]=d+1;c=e+B(d,36)|0;z[c+8>>2]=i;z[c+4>>2]=n;z[c>>2]=m;z[c+12>>2]=z[f+12>>2];z[c+16>>2]=z[f+16>>2];z[c+20>>2]=z[f+20>>2];z[c+24>>2]=z[f+24>>2];z[c+28>>2]=z[f+28>>2];z[c+32>>2]=z[f+32>>2];a=B(d,12)+a|0;v[a+596>>2]=v[g>>2];v[a+600>>2]=v[g+4>>2];v[a+604>>2]=v[g+8>>2];v[(e+(d<<2)|0)+768>>2]=h;t[(d+e|0)+832|0]=b;xa=f+48|0;return 1}function xw(a,b){var c=0,d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=0,G=0,H=0,I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0);h=xa-32|0;xa=h;E=v[a+168>>2];F=v[a+452>>2];G=v[a+456>>2];H=v[a+444>>2];l=v[a+264>>2];d=v[a+228>>2];a:{if(t[v[a+476>>2]]&1){v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;break a}I=z[a+560>>2];J=z[a+572>>2];K=z[a+584>>2];L=z[a+564>>2];M=z[a+576>>2];N=z[a+588>>2];O=z[a+568>>2];P=z[a+580>>2];Q=z[a+592>>2];R=z[a+620>>2];S=z[a+608>>2];T=z[a+596>>2];s=z[a+524>>2];n=z[a+528>>2];o=z[a+532>>2];U=z[a+624>>2];V=z[a+612>>2];W=z[a+600>>2];u=z[a+536>>2];w=z[a+540>>2];x=z[a+544>>2];X=z[a+628>>2];f=z[a+616>>2];Y=z[a+604>>2];y=z[a+548>>2];A=z[a+552>>2];g=z[l+20>>2];D=z[a+556>>2];e=z[l+24>>2];i=z[l+8>>2];Z=z[l+4>>2];j=z[l>>2];m=z[l+16>>2];v[b+12>>2]=0;q=C(-m);_=f;f=C(-Z);z[b+24>>2]=C(C(C(y*q)-C(A*g))-C(D*e))+C(C(C(_*f)-C(j*Y))-C(i*X));z[b+20>>2]=C(C(C(u*q)-C(w*g))-C(x*e))+C(C(C(V*f)-C(j*W))-C(i*U));z[b+16>>2]=C(C(C(s*q)-C(n*g))-C(o*e))+C(C(C(S*f)-C(j*T))-C(i*R));g=C(-g);o=C(C(C(C(x*f)-C(j*o))-C(i*D))+C(C(C(P*g)-C(m*O))-C(e*Q)));z[b+8>>2]=o;n=C(C(C(C(w*f)-C(j*n))-C(i*A))+C(C(C(M*g)-C(m*L))-C(e*N)));z[b+4>>2]=n;e=C(C(C(C(u*f)-C(j*s))-C(i*y))+C(C(C(J*g)-C(m*I))-C(e*K)));z[b>>2]=e;z[d>>2]=e+z[d>>2];z[d+4>>2]=n+z[d+4>>2];z[d+8>>2]=o+z[d+8>>2];z[d+16>>2]=z[b+16>>2]+z[d+16>>2];z[d+20>>2]=z[b+20>>2]+z[d+20>>2];z[d+24>>2]=z[b+24>>2]+z[d+24>>2]}v[b+28>>2]=0;r=v[a+448>>2];if(r>>>0>=2){k=1;while(1){p=k<<5;Zw(h,(B(k,160)+F|0)+120|0,v[a+348>>2]+B(k,112)|0,v[a+360>>2]+B(k,36)|0,v[a+384>>2]+B(k,76)|0,p+l|0,(v[(B(k,80)+G|0)+72>>2]<<2)+E|0,(v[(p+H|0)+24>>2]<<5)+b|0);c=b+p|0;j=z[h>>2];z[c>>2]=j;f=z[h+4>>2];z[c+4>>2]=f;e=z[h+8>>2];v[c+12>>2]=0;z[c+8>>2]=e;g=z[h+16>>2];z[c+16>>2]=g;m=z[h+20>>2];z[c+20>>2]=m;i=z[h+24>>2];v[c+28>>2]=0;z[c+24>>2]=i;c=d+p|0;z[c>>2]=j+z[c>>2];z[c+4>>2]=f+z[c+4>>2];z[c+8>>2]=e+z[c+8>>2];z[c+16>>2]=g+z[c+16>>2];z[c+20>>2]=m+z[c+20>>2];z[c+24>>2]=i+z[c+24>>2];k=k+1|0;if((r|0)!=(k|0)){continue}break}}J9(l,0,r<<5);xa=h+32|0}function mz(a){a=a|0;var b=0,c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0),n=0,o=C(0),p=0,q=0,r=0,s=C(0),t=C(0),u=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=C(0);b=v[a+68>>2];u=v[a+48>>2]+B(b,112)|0;y=v[a+44>>2]+(b<<5)|0;b=b<<2;A=b+v[a+40>>2]|0;D=b+v[a+36>>2]|0;E=b+v[a+32>>2]|0;F=v[a+64>>2];G=v[a+60>>2];i=z[a+52>>2];n=v[a+72>>2];if(n>>>0>=2){k=1;while(1){H=k-1|0;r=H<<2;b=v[r+E>>2];l=x[b+30>>1];j=C(C(1)-C(i*z[b+108>>2]));c=C(C(1)-C(i*z[b+104>>2]));s=z[b+80>>2];d=z[b+64>>2];m=z[b+100>>2];t=z[b+88>>2];J=z[b+84>>2];e=z[b+72>>2];f=z[b+68>>2];if(!w[b+157|0]){g=z[v[D+r>>2]+76>>2];e=C(e+C(g*C(i*z[a+84>>2])));f=C(f+C(g*C(i*z[a+80>>2])));d=C(d+C(g*C(i*z[a+76>>2])))}o=z[b+96>>2];h=j>=C(0)?j:C(0);j=C(h*t);g=C(h*J);h=C(h*s);c=c>=C(0)?c:C(0);e=C(c*e);d=C(c*d);f=C(c*f);c=C(C(e*e)+C(C(d*d)+C(f*f)));if(c>m){c=C(K(C(m/c)));e=C(e*c);f=C(f*c);d=C(d*c)}c=C(C(j*j)+C(C(h*h)+C(g*g)));if(c>o){c=C(K(C(o/c)));j=C(j*c);h=C(h*c);g=C(g*c)}I=l>>>8|0;p=p>>>0>>0?I:p;l=l&255;q=l>>>0>q>>>0?l:q;z[b+88>>2]=j;z[b+84>>2]=g;z[b+80>>2]=h;z[b+72>>2]=e;z[b+68>>2]=f;z[b+64>>2]=d;dA(b- -64|0,b+80|0,z[b+124>>2],b+112|0,b,z[b+76>>2],z[b+128>>2],v[A+r>>2],z[b+92>>2],B(k,112)+u|0,w[b+158|0]);b=(H<<5)+y|0;v[b+12>>2]=0;v[b+28>>2]=0;k=k+1|0;if((n|0)!=(k|0)){continue}break}}k=n-1|0;b=v[(k<<2)+E>>2];j=C(C(1)-C(i*z[b+108>>2]));c=C(C(1)-C(i*z[b+104>>2]));o=z[b+80>>2];d=z[b+64>>2];m=z[b+100>>2];s=z[b+88>>2];t=z[b+84>>2];e=z[b+72>>2];f=z[b+68>>2];if(!w[b+157|0]){g=z[v[(k<<2)+D>>2]+76>>2];e=C(e+C(g*C(i*z[a+84>>2])));f=C(f+C(g*C(i*z[a+80>>2])));d=C(d+C(g*C(i*z[a+76>>2])))}i=z[b+96>>2];h=j>=C(0)?j:C(0);j=C(h*s);g=C(h*t);h=C(h*o);c=c>=C(0)?c:C(0);e=C(c*e);d=C(c*d);f=C(c*f);c=C(C(e*e)+C(C(d*d)+C(f*f)));if(c>m){c=C(K(C(m/c)));e=C(e*c);f=C(f*c);d=C(d*c)}a=x[b+30>>1];c=C(C(j*j)+C(C(h*h)+C(g*g)));if(c>i){i=C(K(C(i/c)));j=C(j*i);h=C(h*i);g=C(g*i)}z[b+88>>2]=j;z[b+84>>2]=g;z[b+80>>2]=h;z[b+72>>2]=e;z[b+68>>2]=f;z[b+64>>2]=d;dA(b- -64|0,b+80|0,z[b+124>>2],b+112|0,b,z[b+76>>2],z[b+128>>2],v[(k<<2)+A>>2],z[b+92>>2],B(n,112)+u|0,w[b+158|0]);b=(k<<5)+y|0;v[b+12>>2]=0;v[b+28>>2]=0;b=v[G>>2];k=a&255;k=k>>>0>q>>>0?k:q;v[G>>2]=(b|0)>(k|0)?b:k;b=v[F>>2];a=a>>>8|0;a=a>>>0>p>>>0?a:p;v[F>>2]=(a|0)<(b|0)?b:a}function eI(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,u=0,x=0,y=0,z=0,A=0;b=xa+-64|0;e=b;xa=b;t[a+60|0]=0;i=v[a+8>>2];a:{if(i>>>0<2){break a}p=i+1|0;c=p<<2;f=c>>>0>1024;t[e+60|0]=f;b:{if(c>>>0>=1025){g=u9(c,8887,903);break b}g=b-(c+15&-16)|0;xa=g}v[e+56>>2]=g;m=v[a+24>>2];b=v[m>>2];v[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=v[m+(d<<3)>>2];v[(d<<2)+g>>2]=j;b=d+1|0;r=v[m+(b<<3)>>2];v[(b<<2)+g>>2]=r;b=d+2|0;l=v[m+(b<<3)>>2];v[(b<<2)+g>>2]=l;o=d+3|0;b=v[m+(o<<3)>>2];v[(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=v[m+(d<<3)>>2];v[(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=SU(e+16|0);v[(i<<2)+g>>2]=-1;WU(l,g,p,1);b=v[a+8>>2];d:{if(b){v[e+4>>2]=b;v[e+8>>2]=b;c=b<<2;e:{if(!c){c=0;break e}f=v[37696];b=f+12|0;c=(u=b,x=c,y=Ba[v[v[f>>2]+20>>2]](f)|0?29035:63804,z=16608,A=553,s=v[v[b>>2]+8>>2],Ba[s](u|0,x|0,y|0,z|0,A|0)|0);b=v[e+4>>2]}v[e>>2]=c;if((b|0)<=0){break d}f=(b<<2)+c|0;b=v[a+4>>2];while(1){v[c>>2]=v[b>>2];b=b+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}break d}v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0}g=0;h=0;c=(i<<3)+48|0;if(c){b=v[37696];h=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,24422,8887,945)|0}c=i<<4;if(c){b=v[37696];g=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,24422,8887,946)|0}q=i>>>0>1?i:1;o=v[l+8>>2];d=0;while(1){b=d<<2;f=v[b+o>>2];v[b+v[a+4>>2]>>2]=v[v[e>>2]+(f<<2)>>2];c=(d<<3)+h|0;b=v[a+24>>2]+(f<<3)|0;v[c>>2]=v[b>>2];v[c+4>>2]=v[b+4>>2];k=v[a+28>>2]+(f<<4)|0;f=v[k>>2];c=v[k+4>>2];b=v[k+12>>2];j=(d<<4)+g|0;v[j+8>>2]=v[k+8>>2];v[j+12>>2]=b;v[j>>2]=f;v[j+4>>2]=c;d=d+1|0;if((q|0)!=(d|0)){continue}break}b=(i<<3)+h|0;v[b>>2]=-1;v[(p<<3)+h>>2]=-1;v[b+40>>2]=-1;v[b+32>>2]=-1;v[b+24>>2]=-1;v[b+16>>2]=-1;v[a+32>>2]=i;c=v[a+28>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+24>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[a+28>>2]=g;v[a+24>>2]=h;a=v[e+8>>2];f:{if((a|0)<0|!(a&2147483647)){break f}b=v[e>>2];if(!b){break f}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}TU(l);f=w[e+60|0]}if(!f){break a}v9(v[e+56>>2])}xa=e- -64|0}function SZ(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=C(0);D=xa-16|0;xa=D;n=z[e+8>>2];o=z[c+8>>2];s=C(n-o);L=v[a+16>>2];F=z[L+8>>2];i=C(F-o);p=z[e>>2];q=z[c>>2];t=C(p-q);G=z[L>>2];h=C(G-q);j=z[e+4>>2];r=z[c+4>>2];u=C(j-r);H=z[L+4>>2];g=C(H-r);E=C(C(s*i)+C(C(t*h)+C(u*g)));I=z[d+8>>2];w=C(I-o);k=z[d>>2];x=C(k-q);m=z[d+4>>2];y=C(m-r);l=C(C(w*i)+C(C(x*h)+C(y*g)));a:{if(l<=C(0)){c=0;i=r;h=o;e=0;g=q;if(E<=C(0)){break a}}i=C(F-I);h=C(G-k);g=C(H-m);J=C(C(s*i)+C(C(t*h)+C(u*g)));c=0;b:{A=C(C(w*i)+C(C(x*h)+C(y*g)));if(!(A>=C(0))){break b}e=1;if(!(A>=J)){break b}i=m;h=I;g=k;break a}M=C(C(l*J)-C(E*A));if(!(!(M<=C(0))|(!(A<=C(0))|!(l>=C(0))))){g=C(l/C(l-A));h=C(o+C(w*g));i=C(r+C(y*g));e=3;g=C(q+C(x*g));break a}i=C(F-n);h=C(G-p);g=C(H-j);K=C(C(w*i)+C(C(x*h)+C(y*g)));c:{g=C(C(s*i)+C(C(t*h)+C(u*g)));if(!(g>=C(0))){break c}e=2;if(!(g>=K)){break c}i=j;h=n;g=p;break a}l=C(C(K*E)-C(g*l));if(!(!(l<=C(0))|(!(g<=C(0))|!(E>=C(0))))){g=C(E/C(E-g));h=C(o+C(s*g));i=C(r+C(u*g));e=5;g=C(q+C(t*g));break a}d:{h=C(C(A*g)-C(J*K));if(!(h<=C(0))){break d}i=C(J-A);if(!(i>=C(0))){break d}g=C(K-g);if(!(g>=C(0))){break d}g=C(i/C(i+g));h=C(I+C(C(n-I)*g));i=C(m+C(C(j-m)*g));e=4;g=C(k+C(C(p-k)*g));break a}g=C(C(1)/C(M+C(h+l)));j=C(M*g);g=C(l*g);h=C(C(s*j)+C(o+C(w*g)));i=C(C(u*j)+C(r+C(y*g)));e=6;c=1;g=C(C(t*j)+C(q+C(x*g)))}m=C(h-F);n=C(g-G);p=C(i-H);k=C(C(m*m)+C(C(n*n)+C(p*p)));e:{if(k>=z[a+20>>2]){break e}h=C(C(x*u)-C(t*y));j=C(C(y*s)-C(u*w));g=C(C(w*t)-C(s*x));if(C(C(h*F)+C(C(j*G)+C(H*g)))C(9999999747378752e-20);i=d?m:h;z[D+8>>2]=i;h=d?p:g;z[D+4>>2]=h;g=d?n:j;z[D>>2]=g;if(c){QZ(a,D,k,b);e=v[a+2588>>2];if(e>>>0>63){break e}d=v[f+4>>2];c=v[f>>2];b=v[f+8>>2];v[a+2588>>2]=e+1;a=B(e,12)+a|0;v[a+2600>>2]=b;a=a+2592|0;v[a>>2]=c;v[a+4>>2]=d;break e}d=v[a+24>>2];if(d>>>0>63){break e}v[a+24>>2]=d+1;c=(d<<3)+a|0;v[c+2080>>2]=d;z[c+2076>>2]=k;c=(d<<5)+a|0;z[c+36>>2]=i;z[c+32>>2]=h;z[c+28>>2]=g;v[c+48>>2]=v[f>>2];v[c+52>>2]=v[f+4>>2];a=v[f+8>>2];v[c+44>>2]=b;v[c+40>>2]=e;v[c+56>>2]=a}xa=D+16|0}function xL(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a>>2]=131836;c=v[a+88>>2];if(c){d=v[c>>2];if(d){b=v[c+12>>2];while(1){d=d-1|0;e=v[b+28>>2];if(e){oL(e);f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e);v[b+28>>2]=0}b=b+40|0;if(d){continue}break}}v[c+8>>2]=-1;v[c>>2]=0;v[c+4>>2]=-1;d=c+92|0;b=0;while(1){v[(c+B(b,12)|0)+96>>2]=0;v[(c+(b<<2)|0)+3176>>2]=-1;e=b|1;if((e|0)==257){v[c+28>>2]=0;v[c+16>>2]=0;BC(c+36|0);b=v[c+76>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+76>>2]=0;v[c+80>>2]=0;b=v[c+84>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+84>>2]=0;v[c+88>>2]=0;v[c+4208>>2]=0;b=v[c+4216>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+4216>>2]=0;v[c+4220>>2]=0}else{v[(d+B(e,12)|0)+4>>2]=0;f=e<<2;e=c+3176|0;v[f+e>>2]=-1;f=b|2;v[(d+B(f,12)|0)+4>>2]=0;v[e+(f<<2)>>2]=-1;f=b|3;v[(d+B(f,12)|0)+4>>2]=0;v[e+(f<<2)>>2]=-1;b=b+4|0;continue}break}b=c+4216|0;d=v[b>>2];if(d){e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}v[b>>2]=0;v[b+4>>2]=0;b=v[c+4212>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[c+4204>>2];if(!b){break a}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=c+3176|0;d=c+92|0;while(1){b=b-12|0;e=v[b+8>>2];b:{if((e|0)<0|!(e&2147483647)){break b}e=v[b>>2];if(!e){break b}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}if((b|0)!=(d|0)){continue}break}b=v[c+84>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+84>>2]=0;v[c+88>>2]=0;b=v[c+76>>2];if(b){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[c+76>>2]=0;v[c+80>>2]=0;BC(c+36|0);b=v[c+32>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[c+24>>2];if(!b){break c}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[c+20>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[c+12>>2];if(!b){break d}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c);v[a+88>>2]=0}c=v[a+92>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+120>>2];e:{if((c|0)<0|!(c&2147483647)){break e}c=v[a+112>>2];if(!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+108>>2];f:{if((c|0)<0|!(c&2147483647)){break f}c=v[a+100>>2];if(!c){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[a- -64>>2]=0;v[a+48>>2]=126144;v[a+24>>2]=0;v[a+8>>2]=126144;return a|0}function L$(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0),x=0,y=0;h=xa-288|0;xa=h;a:{if(c==C(0)){i=z[e+60>>2];p=w[e+64|0];q=v[e+28>>2];r=v[e+24>>2];v[h+36>>2]=143304;v[h+32>>2]=143280;x=h,y=Waa(r,q),v[x+48>>2]=y;v[h+52>>2]=Aa;v[h+44>>2]=p>>>1&1;v[h+56>>2]=g;v[h+40>>2]=f;k=z[a>>2];z[h+60>>2]=k;j=z[a+4>>2];z[h- -64>>2]=j;l=z[a+8>>2];z[h+68>>2]=l;n=z[b>>2];z[h+72>>2]=n;s=z[b+4>>2];z[h+76>>2]=s;o=z[b+8>>2];v[h+112>>2]=0;v[h+116>>2]=0;u[h+108>>1]=0;v[h+104>>2]=-1;z[h+88>>2]=i;t[h+84|0]=d;z[h+80>>2]=o;v[h+120>>2]=0;v[h+124>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+144>>2]=0;v[h+136>>2]=2139095039;v[h+140>>2]=0;v[h+96>>2]=0;v[h+100>>2]=0;z[h+92>>2]=c;a=v[f+4>>2];t[h+208|0]=0;t[h+209|0]=(a|0)==1;c=z[g>>2];i=z[g+4>>2];m=z[g+8>>2];v[h+268>>2]=0;z[h+264>>2]=o;z[h+260>>2]=s;v[h+252>>2]=0;z[h+248>>2]=l;z[h+244>>2]=j;v[h+236>>2]=0;z[h+232>>2]=m;z[h+228>>2]=i;z[h+256>>2]=n;z[h+240>>2]=k;z[h+224>>2]=c;z[h+24>>2]=l-m;z[h+20>>2]=j-i;z[h+16>>2]=k-c;z[h+8>>2]=l+m;z[h+4>>2]=j+i;z[h>>2]=k+c;C0(e+112|0,h+16|0,h,h+32|4);v[h+36>>2]=143304;v[h+32>>2]=143280;if(!w[h+208|0]){break a}a=v[h+40>>2];Ba[v[v[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=z[e+60>>2];p=w[e+64|0];q=v[e+28>>2];r=v[e+24>>2];v[h+36>>2]=143464;v[h+56>>2]=g;v[h+32>>2]=143440;x=h,y=Waa(r,q),v[x+48>>2]=y;v[h+52>>2]=Aa;v[h+44>>2]=p>>>1&1;v[h+40>>2]=f;l=z[a>>2];z[h+60>>2]=l;i=z[a+4>>2];z[h- -64>>2]=i;m=z[a+8>>2];z[h+68>>2]=m;o=z[b>>2];z[h+72>>2]=o;n=z[b+4>>2];z[h+76>>2]=n;k=z[b+8>>2];v[h+112>>2]=0;v[h+116>>2]=0;u[h+108>>1]=0;v[h+104>>2]=-1;z[h+88>>2]=j;t[h+84|0]=d;z[h+80>>2]=k;v[h+120>>2]=0;v[h+124>>2]=0;v[h+128>>2]=0;v[h+132>>2]=0;v[h+144>>2]=0;v[h+136>>2]=2139095039;v[h+140>>2]=0;v[h+96>>2]=0;v[h+100>>2]=0;z[h+92>>2]=c;d=v[f+4>>2];t[h+208|0]=0;t[h+209|0]=(d|0)==1;d=v[g+4>>2];f=v[g>>2];j=z[g+8>>2];v[h+268>>2]=0;z[h+264>>2]=k;z[h+260>>2]=n;v[h+252>>2]=0;z[h+248>>2]=m;z[h+244>>2]=i;v[h+236>>2]=0;z[h+232>>2]=j;z[h+256>>2]=o;z[h+240>>2]=l;v[h+224>>2]=f;v[h+228>>2]=d;B0(e+112|0,a,b,h+32|0,g,c);v[h+36>>2]=143464;v[h+32>>2]=143440;if(!w[h+208|0]){break a}a=v[h+40>>2];Ba[v[v[a>>2]>>2]](a,h+96|0,h+160|0,h+172|0,h+184|0,h+92|0,h+196|0)|0}xa=h+288|0}function J6(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=v[37696];d=Ba[v[v[e>>2]+20>>2]](e)|0?33161:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,36,d,8358,39)|0;i=xa-16|0;xa=i;v[e>>2]=145984;K6(e+8|0);d=v[37696];c=v[37696];d=(m=d+12|0,n=28,o=Ba[v[v[c>>2]+20>>2]](c)|0?38053:63804,p=16913,q=103,l=v[v[d+12>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0);v[e+16>>2]=d;v[d>>2]=0;d=v[37696];c=v[37696];d=(q=d+12|0,p=80,o=Ba[v[v[c>>2]+20>>2]](c)|0?38399:63804,n=19659,m=95,l=v[v[d+12>>2]+8>>2],Ba[l](q|0,p|0,o|0,n|0,m|0)|0);v[e+20>>2]=d;t[d+76|0]=0;v[d+72>>2]=0;d=0;u[e+32>>1]=0;v[e+28>>2]=a;a:{b:{if(!b){b=a<<2;if(b){h=v[37696];h=Ba[v[v[h+12>>2]+8>>2]](h+12|0,b,24422,8358,64)|0}else{h=0}if(!a){v[e+24>>2]=0;v[e+4>>2]=0;break b}b=J9(h,0,b)}c=B(a,28);if(c){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,8358,71)|0}v[e+4>>2]=d;c=a<<5;c:{if(!c){c=0;break c}d=v[37696];c=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,8358,73)|0;d=v[e+4>>2]}v[e+24>>2]=c;if(!d){break b}d:{if(!a){break d}d=0;while(1){g=xa-16|0;xa=g;k=B(d,28);f=k+v[e+4>>2]|0;v[f>>2]=145964;c=v[37696];j=Ba[v[v[c>>2]+20>>2]](c)|0?38275:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,36,j,19583,229)|0;v[f+4>>2]=c;v[c+16>>2]=0;v[c+8>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c>>2]=0;v[c+4>>2]=0;v[c+32>>2]=22514;v[c+12>>2]=0;v[f>>2]=145876;K6(f+8|0);c=v[37696];j=v[37696];c=(m=c+12|0,n=28,o=Ba[v[v[j>>2]+20>>2]](j)|0?38053:63804,p=16913,q=103,l=v[v[c+12>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0);v[f+20>>2]=c;v[c>>2]=0;v[f+24>>2]=0;xa=g+16|0;v[(k+v[e+4>>2]|0)+16>>2]=e;d=d+1|0;if((d|0)!=(a|0)){continue}break}if(!a){break d}d=0;while(1){c=v[e+24>>2];if(c){v[i>>2]=d;c=c+(d<<5)|0;t9(c,32,24336,i);v[v[(v[e+4>>2]+B(d,28)|0)+4>>2]+32>>2]=c}c=B(d,28);f=v[(c+v[e+4>>2]|0)+4>>2];g=v[(d<<2)+b>>2];if(g){v[f+28>>2]=g}g=xa-48|0;xa=g;f=c+v[e+4>>2]|0;c=v[f+4>>2];e:{if(v[c+16>>2]){break e}if(!(v[c>>2]|(v[c+4>>2]|!f))){v[c+4>>2]=f}f=v[c+12>>2];v[c+12>>2]=(f|0)==1?1:f;if(!f){while(1){f=v[c+12>>2];v[c+12>>2]=(f|0)==1?1:f;if(!f){continue}break}}if(!v[c+32>>2]){break e}}xa=g+48|0;d=d+1|0;if((d|0)!=(a|0)){continue}break}}if(!h){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,h);break a}v[e+28>>2]=0}xa=i+16|0;return e|0}function tv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0);i=z[d+8>>2];F=z[c+24>>2];G=z[d+24>>2];j=C(F-G);p=z[d>>2];H=z[c+16>>2];I=z[d+16>>2];m=C(H-I);q=z[d+4>>2];J=z[c+20>>2];L=z[d+20>>2];n=C(J-L);k=C(C(i*j)+C(C(p*m)+C(q*n)));s=z[d+12>>2];u=C(C(s*s)+C(-.5));l=C(C(C(u*j)-C(s*C(C(p*n)-C(m*q))))+C(i*k));l=C(l+l);t=z[b+12>>2];w=l>2];A=o>2];n=kw?n:w;D=C(k-n);M=C(C(y*y)+C(C(B*B)+C(D*D)));N=z[a+4>>2];w=C(N+z[e>>2]);e=M=(k>C(0)?k:C(-k)))|(!(t>=(l>C(0)?l:C(-l)))|!(r>=(o>C(0)?o:C(-o)))))){a=v[g+4096>>2];v[g+4096>>2]=a+1;l=j>=C(0)?C(1):C(-1);k=l;o=C(l*C(0));j=C(t-(j>C(0)?j:C(-j)));l=C(r-(m>C(0)?m:C(-m)));t=C(x-(n>C(0)?n:C(-n)));c=j==j&(l>=j&t>=j);o=c?k:o;n=n>=C(0)?C(1):C(-1);k=C(n*C(0));d=l==l&l<=t&j>=l;n=c?k:d?k:n;m=m>=C(0)?C(1):C(-1);k=C(m*C(0));m=c?k:d?m:k;k=C(C(i*o)+C(C(p*m)+C(q*n)));b=(a<<6)+g|0;r=C(C(C(u*o)+C(s*C(C(p*n)+C(m*w))))+C(i*k));r=C(r+r);z[b+8>>2]=r;i=C(C(C(u*n)+C(s*C(C(i*m)+C(o*A))))+C(q*k));x=C(i+i);z[b+4>>2]=x;i=C(C(p*k)+C(C(u*m)+C(s*C(C(q*o)+C(n*E)))));p=C(i+i);z[b>>2]=p;i=c?j:d?l:t;z[b+16>>2]=H+C(i*p);p=C(F+C(i*r));q=C(J+C(i*x));i=C(-i);b=b+16|0;break a}a=v[g+4096>>2];v[g+4096>>2]=a+1;b=(a<<6)+g|0;x=C(C(i*j)+C(C(p*m)+C(q*n)));l=C(C(p*x)+C(C(u*m)+C(s*C(C(q*j)+C(n*E)))));z[b+16>>2]=I+C(l+l);l=C(C(1)/C(K(M)));o=C(y*l);k=C(B*l);t=C(D*l);r=C(C(i*o)+C(C(p*k)+C(q*t)));y=C(C(C(u*o)+C(s*C(C(p*t)+C(k*w))))+C(i*r));z[b+8>>2]=y+y;y=C(C(q*r)+C(C(u*t)+C(s*C(C(i*k)+C(o*A)))));z[b+4>>2]=y+y;o=C(C(p*r)+C(C(u*k)+C(s*C(C(q*o)+C(t*E)))));z[b>>2]=o+o;p=C(C(C(u*j)+C(s*C(C(p*n)+C(m*w))))+C(i*x));p=C(G+C(p+p));i=C(C(C(u*n)+C(s*C(C(i*m)+C(j*A))))+C(q*x));q=C(L+C(i+i));i=C(C(1)/l);b=b+16|0}v[b+12>>2]=0;z[b+8>>2]=p;z[b+4>>2]=q;a=(a<<6)+g|0;v[a+52>>2]=-1;z[a+12>>2]=i-N}return e|0}function zD(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;v[a+4>>2]=0;v[a+8>>2]=1;v[a+12>>2]=0;v[a+16>>2]=0;v[a>>2]=129964;v[a+20>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;f=a+52|0;v[f>>2]=129748;e=f+4|0;v[e+4>>2]=0;v[e+8>>2]=0;v[e>>2]=1;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+40>>2]=1061158912;v[e+44>>2]=-1;h=e+16|0;ZC(h,64);v[e+80>>2]=0;v[e+84>>2]=0;v[e+72>>2]=0;v[e+76>>2]=0;g=e- -64|0;v[g>>2]=0;v[g+4>>2]=0;v[e+56>>2]=0;v[e+60>>2]=0;v[e+96>>2]=0;v[e+100>>2]=0;v[e+88>>2]=1061158912;v[e+92>>2]=-1;ZC(g,64);v[e+116>>2]=0;v[e+108>>2]=0;v[e+112>>2]=0;g=a+284|0;v[e+104>>2]=g;if(y[e+36>>2]<=255){ZC(h,256)}if(y[e+84>>2]<=255){ZC(e- -64|0,256)}if(!(v[e+116>>2]&2147483616)){_C(e+108|0,32)}v[f+128>>2]=0;v[f+132>>2]=0;v[f+124>>2]=g;v[f+136>>2]=0;v[f+140>>2]=0;v[f+144>>2]=0;v[f+148>>2]=0;v[f+160>>2]=0;v[f+164>>2]=0;v[f+152>>2]=1061158912;v[f+156>>2]=-1;h=f+128|0;mD(h,64);v[f+168>>2]=0;v[f+172>>2]=0;t[f+212|0]=0;v[f+176>>2]=0;v[f+180>>2]=0;v[f+184>>2]=0;v[f+188>>2]=0;v[f+192>>2]=0;v[f+196>>2]=0;v[f+200>>2]=0;v[f+204>>2]=0;v[f+208>>2]=32;e=v[37696];k=f,l=Ba[v[v[e+12>>2]+8>>2]](e+12|0,792,24422,8015,60)|0,v[k+196>>2]=l;i=v[f+208>>2];g=i<<3;if(g){e=v[37696];j=Ba[v[v[e+12>>2]+8>>2]](e+12|0,g,24422,8015,61)|0;i=v[f+208>>2]}v[f+200>>2]=j;if(y[f+148>>2]>>0){mD(h,i)}g=v[37696];e=Ba[v[v[g>>2]+20>>2]](g)|0?44169:63804;k=f,l=JB(Ba[v[v[g+12>>2]+8>>2]](g+12|0,64,e,8015,65)|0),v[k+168>>2]=l;if(v[f+208>>2]){j=v[f+200>>2];i=0;while(1){g=i<<3;v[(g+j|0)+4>>2]=0;h=v[37696];e=Ba[v[v[h>>2]+20>>2]](h)|0?44169:63804;e=JB(Ba[v[v[h+12>>2]+8>>2]](h+12|0,64,e,8015,71)|0);j=v[f+200>>2];v[g+j>>2]=e;i=i+1|0;if(i>>>0>2]){continue}break}}v[a+280>>2]=0;v[a+268>>2]=0;v[a+272>>2]=100;v[a+284>>2]=0;v[a+288>>2]=0;v[a+308>>2]=-1;v[a+300>>2]=0;v[a+304>>2]=0;v[a+292>>2]=0;v[a+296>>2]=0;v[a+328>>2]=0;v[a+332>>2]=0;v[a+320>>2]=0;v[a+324>>2]=0;v[a+312>>2]=0;v[a+316>>2]=0;v[a+340>>2]=0;v[a+344>>2]=0;t[a+337|0]=0;t[a+338|0]=0;t[a+336|0]=b;v[a+348>>2]=0;v[a+352>>2]=0;v[a+356>>2]=0;v[a+360>>2]=0;v[a+368>>2]=c;v[a+372>>2]=d;return a}function Y1(a,b,c,d,e,f,g,h,i,j,k,l){var m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0),_=C(0),$=C(0),aa=C(0),ba=C(0),ca=C(0),da=C(0),ea=C(0),fa=C(0),ga=C(0),ha=C(0),ia=C(0),ja=C(0),ka=C(0);p=xa-48|0;xa=p;H=z[j+12>>2];I=z[j+8>>2];J=z[j+4>>2];L=z[j>>2];a:{b:{c:{if(!v[a+16>>2]){f=0;u=C(34028234663852886e22);break c}M=z[f+56>>2];u=z[b+8>>2];m=z[b>>2];n=z[b+4>>2];T=C(M+C(C(z[f+40>>2]*u)+C(C(z[f+8>>2]*m)+C(n*z[f+24>>2]))));N=z[f+52>>2];U=C(N+C(C(z[f+36>>2]*u)+C(C(z[f+4>>2]*m)+C(n*z[f+20>>2]))));O=z[f+48>>2];V=C(O+C(C(z[f+32>>2]*u)+C(C(z[f>>2]*m)+C(n*z[f+16>>2]))));P=z[b+56>>2];W=C(-P);Q=z[b+52>>2];X=C(-Q);R=z[b+48>>2];Y=C(-R);S=z[b+44>>2];u=C(34028234663852886e22);b=0;f=0;while(1){F=v[a+24>>2]+B(b,20)|0;Z=z[F+12>>2];q=v[a+28>>2]+B(w[F+19|0],12)|0;_=z[q+8>>2];$=z[q>>2];aa=z[q+4>>2];q=v[c+40>>2];m=z[q+36>>2];n=z[q+40>>2];t=z[F>>2];s=z[q+20>>2];x=z[F+4>>2];o=z[q+24>>2];E=z[F+8>>2];r=z[q+32>>2];A=z[q+8>>2];D=z[q>>2];G=z[q+4>>2];ba=z[q+16>>2];ca=z[e+40>>2];da=z[e+8>>2];ea=z[e+24>>2];fa=z[e+32>>2];ga=z[e>>2];ha=z[e+16>>2];ia=z[e+36>>2];ja=z[e+4>>2];ka=z[e+20>>2];v[p+12>>2]=0;m=C(C(n*E)+C(C(r*t)+C(x*m)));n=C(C(A*E)+C(C(D*t)+C(x*G)));s=C(C(o*E)+C(C(ba*t)+C(x*s)));o=C(C(1)/C(K(C(C(m*m)+C(C(n*n)+C(s*s))))));m=C(m*o);n=C(n*o);s=C(s*o);r=C(C(ia*m)+C(C(ja*n)+C(ka*s)));z[p+4>>2]=r;A=C(C(fa*m)+C(C(ga*n)+C(ha*s)));z[p>>2]=A;D=C(C(ca*m)+C(C(da*n)+C(s*ea)));z[p+8>>2]=D;G=C(C(T*m)+C(C(V*n)+C(U*s)));r=C(C(D*(D>C(0)?P:W))+C(C(A*(A>C(0)?R:Y))+C(r*(r>C(0)?Q:X))));A=r>S?r:S;D=C(G+A);r=C(o*C(-Z));o=C(C(C(E*_)+C(C(t*$)+C(aa*x)))*o);t=C(G-A);d:{if(C((r>D?D:r)-(o>t?o:t))>u){break d}Ba[v[v[d>>2]+12>>2]](d,p,p+32|0,p+16|0);x=C(C(M*m)+C(C(O*n)+C(N*s)));t=C(x+z[p+32>>2]);z[p+32>>2]=t;x=C(x+z[p+16>>2]);z[p+16>>2]=x;E=z[g>>2];if(t>C(r+E)|o>C(x+E)){break b}o=C(r-t);if(!(o>>0>2]){continue}break}}if(z[h>>2]>u){z[j+12>>2]=H;z[j+8>>2]=I;z[j+4>>2]=J;z[j>>2]=L;z[h>>2]=u;v[l>>2]=k}v[i>>2]=f;a=1;break a}a=0}xa=p+48|0;return a}function n7(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);c=xa+-64|0;xa=c;h=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=h;h=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=h;E5(c+32|0,c,e,f,g);k=z[f+20>>2];d=24;m=z[f+16>>2];l=z[c+20>>2];r=z[c+16>>2];p=z[c+24>>2];z[b+8>>2]=p-z[f+24>>2];z[b+4>>2]=l-k;z[b>>2]=r-m;t=z[f+20>>2];D=z[f+24>>2];s=z[g+20>>2];y=z[g+24>>2];E=z[f+16>>2];A=z[g+16>>2];z[i+8>>2]=p;z[i+4>>2]=l;z[i>>2]=r;z[j+8>>2]=p;z[j+4>>2]=l;z[j>>2]=r;n=C(z[c+56>>2]-p);k=C(z[c+48>>2]-r);o=C(z[c+52>>2]-l);m=C(K(C(C(n*n)+C(C(k*k)+C(o*o)))));if(m>C(0)){q=C(C(1)/m);n=C(n*q);o=C(o*q);k=C(k*q)}b=x[e+100>>1];u[a+76>>1]=16;f=m>2]=n;o=f?C(0):o;z[a+36>>2]=o;q=f?C(1):k;z[a+32>>2]=q;z[a+8>>2]=n;z[a+4>>2]=o;z[a>>2]=q;k=C(r-A);s=C(l-s);A=C(C(k*o)-C(q*s));z[a+56>>2]=A;y=C(p-y);B=C(C(y*q)-C(n*k));z[a+52>>2]=B;s=C(C(s*n)-C(o*y));z[a+48>>2]=s;k=C(r-E);l=C(l-t);r=C(C(k*o)-C(q*l));z[a+24>>2]=r;p=C(p-D);t=C(C(p*q)-C(n*k));z[a+20>>2]=t;p=C(C(l*n)-C(o*p));z[a+16>>2]=p;if(b&8){u[a+76>>1]=17;z[a+64>>2]=z[e+92>>2];z[a+68>>2]=z[e+96>>2];d=25}xa=c- -64|0;k=z[e+84>>2];l=z[e+80>>2];a:{if(!((b&6)!=6|k!=l)){k=C(m-k);m=z[e+88>>2];b:{if(k>m){l=C(k-m);break b}l=C(0);if(!(k>2]=l;b=1;break a}f=b&4;c:{d:{e:{if(b&2){if(k>2];v[a+60>>2]=0;z[a+12>>2]=C(m-k)-n;b=1;break a}if(!f){break d}if(m>2]=q;u[a+76>>1]=d;v[a+60>>2]=2139095039;v[a+44>>2]=0;z[a+136>>2]=A;z[a+132>>2]=B;z[a+128>>2]=s;z[a+120>>2]=n;z[a+116>>2]=o;z[a+112>>2]=q;z[a+104>>2]=r;z[a+100>>2]=t;z[a+96>>2]=p;z[a+88>>2]=n;z[a+84>>2]=o;z[a+12>>2]=m-l;if(w[e+100|0]&8){z[a+144>>2]=z[e+92>>2];z[a+148>>2]=z[e+96>>2];k=z[e+84>>2];b=25}else{b=24}u[a+156>>1]=b;v[a+140>>2]=0;v[a+124>>2]=-8388609;z[a+92>>2]=m-k;b=2;break a}b=1;if(!f){break a}if(!(m>2];v[a+44>>2]=0;z[a+12>>2]=k+C(m-l);b=1;break a}u[a+76>>1]=d;v[a+60>>2]=0;v[a+44>>2]=-8388609;z[a+12>>2]=m-k;b=0;break a}u[a+76>>1]=d;v[a+60>>2]=2139095039;v[a+44>>2]=0;z[a+12>>2]=m-l;b=0}return b|0}function Oj(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(v[a+40>>2]){b9(v[37696],8,19068,233,74192,0);bC(v[a+40>>2],a)}c=a+20|0;d=x[c+4>>1];e=v[v[37389]+476>>2];PU(c,b,e);g=c+8|0;PU(g,-1,e);e=vh(a);if(!(!e|!(w[(w[b+36|0]&64?v[b+40>>2]+52|0:b+112|0)|0]&2))){f=e+5584|0;d=d<<2;e=x[a+4>>1];e=HE(f,v[d+(x[c+4>>1]==1?c:v[c>>2])>>2]+32|0,v[((e<<2)+86240|0)+72>>2]+a|0,(e&65527)==5,v[c+16>>2],0,0);v[d+(x[c+12>>1]==1?g:v[c+8>>2])>>2]=e}h=b+32|0;i=xa-16|0;xa=i;g=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[g+4>>2];a:{if(c>>>0<1073741824){break a}j=v[g>>2];b:{if(!w[j+4785|0]){if(!(w[(c&1?v[g+8>>2]:(g+v[((c>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8)){c=h-16|0;v[c>>2]=v[c>>2]+1;RJ(g+v[((v[g+4>>2]>>>22&60)+89188|0)+12>>2]|0,h+16|0)}d=-2147483648;c=v[h+4>>2];if((c&251658240)==16777216){break b}break a}d=1073741824;if((c&-1073741824)==1073741824){c=v[h+4>>2];if((c&251658240)==16777216){break b}break a}d=v[g+8>>2];if(!d){d=Qu(j,c>>>24&15);v[g+8>>2]=d}c:{d:{e:{e=v[d+76>>2];if(!e){c=0;break e}f=v[d+72>>2];c=0;while(1){if(v[f+(c<<3)>>2]==(h|0)){break e}c=c+1|0;if((e|0)!=(c|0)){continue}break}break d}if((c|0)==(e|0)){break d}e=e-1|0;v[d+76>>2]=e;f=c<<3;c=v[d+72>>2];d=f+c|0;c=c+(e<<3)|0;v[d>>2]=v[c>>2];t[d+4|0]=w[c+4|0];break c}v[i+12>>2]=h;c=v[d+28>>2];if(c>>>0>=(v[d+32>>2]&2147483647)>>>0){c=0;d=d+4|0;e=v[d+28>>2];k=e&2147483647?e<<1:1;f:{if(!k){break f}e=k<<2;if(!(w[d+16|0]|e>>>0>16)){t[d+16|0]=1;c=d;break f}if(!e){break f}c=v[37696];f=c+12|0;c=(o=f,p=e,q=Ba[v[v[c>>2]+20>>2]](c)|0?60027:63804,r=16608,s=553,n=v[v[f>>2]+8>>2],Ba[n](o|0,p|0,q|0,r|0,s|0)|0)}f=v[d+24>>2];m=(f<<2)+c|0;if((f|0)>0){l=v[d+20>>2];e=c;while(1){v[e>>2]=v[l>>2];l=l+4|0;e=e+4|0;if(m>>>0>e>>>0){continue}break}}v[m>>2]=v[i+12>>2];g:{if(v[d+28>>2]<0){break g}e=v[d+20>>2];if((e|0)==(d|0)){t[d+16|0]=0;break g}if(!e){break g}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,e);f=v[d+24>>2]}v[d+28>>2]=k;v[d+20>>2]=c;v[d+24>>2]=f+1;break c}v[v[d+24>>2]+(c<<2)>>2]=h;v[d+28>>2]=c+1}Yu(v[g>>2],g);v[g+4>>2]=v[g+4>>2]|8;d=1073741824;c=v[h+4>>2];if((c&251658240)!=16777216){break a}}v[h>>2]=j;v[h+4>>2]=c&1073741823|d}xa=i+16|0;Zt(b,a);return 1}function vn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0;a=xa-32|0;xa=a;i=v[37389];l=z[b+12>>2];m=z[b+8>>2];n=z[b>>2];o=z[b+4>>2];j=C(C(1)/C(K(C(C(l*l)+C(C(m*m)+C(C(n*n)+C(o*o)))))));z[a+12>>2]=l*j;z[a+8>>2]=m*j;z[a+4>>2]=o*j;z[a>>2]=n*j;z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];f=a;h=xa-16|0;xa=h;a=v[i+1264>>2];if(!a){k=xa-16|0;xa=k;d=i+976|0;b=v[d+284>>2];if(b){a=v[37696];g=Ba[v[v[a>>2]+20>>2]](a)|0?45917:63804;g=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,g,18373,180)|0}else{g=0}v[k+12>>2]=g;a=v[d+268>>2];a:{if(a>>>0>=(v[d+272>>2]&2147483647)>>>0){a=0;b=d+4|0;c=v[b+268>>2];p=c&2147483647?c<<1:1;b:{if(!p){break b}c=p<<2;if(!(w[b+256|0]|c>>>0>256)){t[b+256|0]=1;a=b;break b}if(!c){break b}a=v[37696];e=Ba[v[v[a>>2]+20>>2]](a)|0?45917:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,e,16608,553)|0}e=v[b+264>>2];r=(e<<2)+a|0;if((e|0)>0){q=v[b+260>>2];c=a;while(1){v[c>>2]=v[q>>2];q=q+4|0;c=c+4|0;if(r>>>0>c>>>0){continue}break}}v[r>>2]=v[k+12>>2];c:{if(v[b+268>>2]<0){break c}c=v[b+260>>2];if((c|0)==(b|0)){t[b+256|0]=0;break c}if(!c){break c}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[b+264>>2]}v[b+268>>2]=p;v[b+260>>2]=a;v[b+264>>2]=e+1;break a}v[v[d+264>>2]+(a<<2)>>2]=g;v[d+268>>2]=a+1}a=(B(v[d+276>>2],112)+g|0)-112|0;if(g>>>0<=a>>>0){b=v[d+288>>2];while(1){v[a>>2]=b;b=a;a=a-112|0;if(g>>>0<=a>>>0){continue}break}v[d+288>>2]=b}xa=k+16|0;a=v[i+1264>>2]}v[i+1264>>2]=v[a>>2];b=i+1256|0;v[b>>2]=v[b>>2]+1;v[a+4>>2]=196614;v[a+8>>2]=0;v[a>>2]=124528;v[a+16>>2]=0;v[a+12>>2]=0;v[a>>2]=124260;v[a+8>>2]=0;v[a+20>>2]=0;v[a+24>>2]=65536;v[a+28>>2]=0;v[a+32>>2]=65536;v[a+36>>2]=-1;v[a+40>>2]=0;v[a+56>>2]=0;v[a>>2]=124056;v[a+48>>2]=0;v[a+52>>2]=0;b=a- -64|0;t[b+10|0]=0;t[b+9|0]=0;t[b+8|0]=1;v[b>>2]=0;v[b+4>>2]=16777215;u[a+110>>1]=0;t[a+109|0]=0;z[a+80>>2]=z[f>>2];z[a+84>>2]=z[f+4>>2];z[a+88>>2]=z[f+8>>2];z[a+92>>2]=z[f+12>>2];z[a+96>>2]=z[f+16>>2];z[a+100>>2]=z[f+20>>2];j=z[f+24>>2];t[a+108|0]=0;z[a+104>>2]=j;v[a+52>>2]=v[a+52>>2]&-251658241|83886080;v[h+8>>2]=a;b=Nm(i+600|0,h+8|0,h+15|0);if(!w[h+15|0]){v[b>>2]=v[h+8>>2]}xa=h+16|0;xa=f+32|0;return a|0}function Zw(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=0,t=0,u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0),J=0,K=0;t=xa-32|0;i=z[b>>2];l=z[h+8>>2];j=z[b+8>>2];m=z[h>>2];r=C(C(C(i*l)-C(j*m))+z[h+20>>2]);n=j;j=z[h+4>>2];k=z[b+4>>2];n=C(C(C(n*j)-C(k*l))+z[h+16>>2]);k=C(C(C(k*m)-C(i*j))+z[h+24>>2]);s=v[e+72>>2];a:{if(!s){break a}i=z[c+32>>2];o=z[c+24>>2];p=z[c+28>>2];x=C(C(C(C(i*k)+C(C(o*n)+C(r*p)))+C(C(C(m*z[c+80>>2])+C(j*z[c+92>>2]))+C(l*z[c+104>>2])))+z[f+24>>2]);u=z[c+20>>2];w=z[c+12>>2];y=z[c+16>>2];H=C(C(C(C(u*k)+C(C(w*n)+C(r*y)))+C(C(C(m*z[c+76>>2])+C(j*z[c+88>>2]))+C(l*z[c+100>>2])))+z[f+20>>2]);A=z[c+8>>2];D=z[c>>2];E=z[c+4>>2];I=C(C(C(C(A*k)+C(C(D*n)+C(r*E)))+C(C(C(m*z[c+72>>2])+C(j*z[c+84>>2]))+C(l*z[c+96>>2])))+z[f+16>>2]);i=C(C(C(C(C(m*A)+C(j*u))+C(l*i))+C(C(C(n*z[c+44>>2])+C(r*z[c+56>>2]))+C(k*z[c+68>>2])))+z[f+8>>2]);p=C(C(C(C(C(m*E)+C(j*y))+C(l*p))+C(C(C(n*z[c+40>>2])+C(r*z[c+52>>2]))+C(k*z[c- -64>>2])))+z[f+4>>2]);o=C(C(C(C(C(m*D)+C(j*w))+C(l*o))+C(C(C(n*z[c+36>>2])+C(r*z[c+48>>2]))+C(k*z[c+60>>2])))+z[f>>2]);h=0;while(1){b=B(h,24)+e|0;z[(h<<2)+t>>2]=-C(C(C(z[b+20>>2]*i)+C(C(z[b+12>>2]*o)+C(p*z[b+16>>2])))+C(C(z[b+8>>2]*x)+C(C(z[b>>2]*I)+C(H*z[b+4>>2]))));h=h+1|0;if((s|0)!=(h|0)){continue}break}o=C(0);p=C(0);x=C(0);u=C(0);w=C(0);if(!s){break a}J=s&-4;F=s&3;f=0;K=s-1>>>0<3;while(1){c=0;i=C(0);b=0;if(!K){while(1){h=f<<2;q=c|3;y=C(z[h+(B(q,12)+d|0)>>2]*z[(q<<2)+t>>2]);q=c|2;A=C(z[h+(B(q,12)+d|0)>>2]*z[(q<<2)+t>>2]);q=c|1;i=C(y+C(A+C(C(z[h+(B(q,12)+d|0)>>2]*z[(q<<2)+t>>2])+C(C(z[h+(B(c,12)+d|0)>>2]*z[(c<<2)+t>>2])+i))));c=c+4|0;b=b+4|0;if((J|0)!=(b|0)){continue}break}}h=0;if(F){while(1){i=C(C(z[(B(c,12)+d|0)+(f<<2)>>2]*z[(c<<2)+t>>2])+i);c=c+1|0;h=h+1|0;if((F|0)!=(h|0)){continue}break}}b=(f<<2)+g|0;z[b>>2]=i+z[b>>2];b=B(f,24)+e|0;w=C(w+C(i*z[b+20>>2]));u=C(u+C(i*z[b+16>>2]));x=C(x+C(i*z[b+12>>2]));p=C(p+C(i*z[b+8>>2]));o=C(o+C(i*z[b+4>>2]));G=C(G+C(i*z[b>>2]));f=f+1|0;if((s|0)!=(f|0)){continue}break}}v[a+28>>2]=0;v[a+12>>2]=0;z[a+24>>2]=k+w;z[a+20>>2]=r+u;z[a+16>>2]=n+x;z[a+8>>2]=l+p;z[a+4>>2]=j+o;z[a>>2]=m+G}function uP(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=v[a+980>>2];f=v[j+316>>2];e=v[a+976>>2]+1792|0;k=v[j+320>>2];v[e>>2]=k+v[e>>2];l=v[a+2168>>2];d=xa-48|0;xa=d;if(k){while(1){e=f+B(m,12)|0;g=v[e+4>>2];i=v[e>>2];c=v[l+108>>2];h=v[l>>2];v[d+16>>2]=v[h+2184>>2];v[d+20>>2]=v[h+2172>>2];v[d+24>>2]=v[h+2176>>2];e=v[h+2188>>2];v[d+32>>2]=c;v[d+28>>2]=e;v[d+36>>2]=v[h+2192>>2];v[d+40>>2]=v[h+2196>>2];t[d+15|0]=0;fJ(d,d+16|0,g,i,-1,d+15|0,0);if(!(t[d|0]&1)){gJ(l,d,g,i,0,0,0,w[d+15|0])}m=m+1|0;if((k|0)!=(m|0)){continue}break}}xa=d+48|0;d=v[j+308>>2];j=v[j+304>>2];if(!(v[a+4680>>2]&2147483647)){vP(a+4672|0,1)}if(!(v[a+4692>>2]&2147483647)){wP(a+4684|0,1)}if(!(v[a+4704>>2]&2147483647)){xP(a+4696|0,1)}v[a+4700>>2]=1;v[a+4688>>2]=1;v[a+4676>>2]=1;e=v[a+976>>2];c=e+1792|0;v[c>>2]=d+v[c>>2];v[a+4284>>2]=b;v[a+4288>>2]=1;h=a+4264|0;if(b){Ba[v[v[b>>2]+16>>2]](b);v[a+4280>>2]=v[v[a+4284>>2]+16>>2];e=v[a+976>>2]}l=v[e+1156>>2];v[a+4716>>2]=0;a:{b:{if(d>>>0>(v[a+4720>>2]&2147483647)>>>0){g=a+4712|0;f=0;c:{if(!d){break c}e=d<<3;if(!e){break c}c=v[37696];b=c+12|0;f=(o=b,p=e,q=Ba[v[v[c>>2]+20>>2]](c)|0?35693:63804,r=16608,s=553,n=v[v[b>>2]+8>>2],Ba[n](o|0,p|0,q|0,r|0,s|0)|0)}c=v[g>>2];b=v[g+4>>2];if((b|0)>0){i=(b<<3)+f|0;b=c;e=f;while(1){u[e>>1]=x[b>>1];u[e+2>>1]=x[b+2>>1];v[e+4>>2]=v[b+4>>2];b=b+8|0;e=e+8|0;if(i>>>0>e>>>0){continue}break}}if(!(!c|v[g+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[g+8>>2]=d;v[g>>2]=f;v[a+4708>>2]=0;v[a+4716>>2]=d;b=a+4708|0;break b}v[a+4708>>2]=0;v[a+4716>>2]=d;if(!d){break a}b=a+4708|0}e=0;f=0;while(1){c=wr(l,192);k=v[a+4712>>2];m=v[a+2168>>2];g=v[a+20>>2];i=v[a+16>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=i;v[c+12>>2]=g;i=d-f|0;v[c+36>>2]=i>>>0<512?i:512;v[c+32>>2]=j+B(f,12);v[c+28>>2]=m;v[c>>2]=135508;v[c+168>>2]=k+(f<<3);J9(c+40|0,0,128);v[c+180>>2]=0;v[c+184>>2]=0;v[c+172>>2]=0;v[c+176>>2]=0;v[c+24>>2]=1;v[c+20>>2]=h;Ba[v[v[a+4264>>2]+16>>2]](h);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);d:{if(e){v[e+184>>2]=c;break d}v[b>>2]=c}e=c;f=f+512|0;if(d>>>0>f>>>0){continue}break}}a=v[a+4280>>2];Ba[v[v[a>>2]+72>>2]](a,h)}function HU(a,b,c,d,e,f){var g=0,h=0,i=C(0),j=C(0),k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,w=0,y=0;g=xa-128|0;xa=g;v[g+88>>2]=0;v[g+92>>2]=0;v[g+96>>2]=0;v[g+100>>2]=0;v[g+80>>2]=0;v[g+84>>2]=0;u[g+76>>1]=0;v[g+72>>2]=-1;v[g+64>>2]=0;v[g+68>>2]=0;v[g+112>>2]=0;v[g+104>>2]=2139095039;v[g+108>>2]=0;l=v[a+8>>2];a:{if(!l){j=C(34028234663852886e22);break a}n=v[35395];j=C(34028234663852886e22);while(1){m=B(k,72);h=m+v[a+4>>2]|0;o=v[h+60>>2];p=v[h+56>>2];z[g+60>>2]=z[h- -64>>2];v[g+52>>2]=p;v[g+56>>2]=o;v[g+48>>2]=3;q=A[h+16>>3];r=A[h+24>>3];s=A[h+32>>3];z[g+16>>2]=z[h+40>>2];z[g+20>>2]=z[h+44>>2];z[g+24>>2]=z[h+48>>2];i=z[h+52>>2];z[g+40>>2]=s;z[g+36>>2]=r;z[g+32>>2]=q;z[g+28>>2]=i;u[g+8>>1]=0;b:{if(!(Ba[n|0](g+48|0,g+16|0,c,d,e,g+8|0,1,g- -64|0)|0)){break b}i=z[g+104>>2];if(!(i>2];v[b>>2]=v[g+64>>2];v[b+4>>2]=h;v[b+8>>2]=v[g+72>>2];u[b+12>>1]=x[g+76>>1];z[b+16>>2]=z[g+80>>2];z[b+20>>2]=z[g+84>>2];z[b+24>>2]=z[g+88>>2];z[b+28>>2]=z[g+92>>2];z[b+32>>2]=z[g+96>>2];j=z[g+100>>2];z[b+40>>2]=i;z[b+36>>2]=j;v[b+60>>2]=v[g+124>>2];h=v[g+120>>2];v[b+52>>2]=v[g+116>>2];v[b+56>>2]=h;h=v[g+112>>2];v[b+44>>2]=v[g+108>>2];v[b+48>>2]=h;v[f>>2]=v[m+v[a+4>>2]>>2];j=i}k=k+1|0;if((l|0)!=(k|0)){continue}break}}l=v[a+20>>2];if(l){n=v[35394];k=0;while(1){m=k<<6;h=m+v[a+16>>2]|0;o=v[h+60>>2];p=v[h+56>>2];v[g+48>>2]=2;w=g,y=Waa(p,o),v[w+52>>2]=y;v[g+56>>2]=Aa;q=A[h+16>>3];r=A[h+24>>3];s=A[h+32>>3];z[g+16>>2]=z[h+40>>2];z[g+20>>2]=z[h+44>>2];z[g+24>>2]=z[h+48>>2];i=z[h+52>>2];z[g+40>>2]=s;z[g+36>>2]=r;z[g+32>>2]=q;z[g+28>>2]=i;u[g>>1]=0;c:{if(!(Ba[n|0](g+48|0,g+16|0,c,d,e,g,1,g- -64|0)|0)){break c}i=z[g+104>>2];if(!(i>2];v[b>>2]=v[g+64>>2];v[b+4>>2]=h;v[b+8>>2]=v[g+72>>2];u[b+12>>1]=x[g+76>>1];z[b+16>>2]=z[g+80>>2];z[b+20>>2]=z[g+84>>2];z[b+24>>2]=z[g+88>>2];z[b+28>>2]=z[g+92>>2];z[b+32>>2]=z[g+96>>2];j=z[g+100>>2];z[b+40>>2]=i;z[b+36>>2]=j;v[b+60>>2]=v[g+124>>2];h=v[g+120>>2];v[b+52>>2]=v[g+116>>2];v[b+56>>2]=h;h=v[g+112>>2];v[b+44>>2]=v[g+108>>2];v[b+48>>2]=h;v[f>>2]=v[m+v[a+16>>2]>>2];j=i}k=k+1|0;if((l|0)!=(k|0)){continue}break}}xa=g+128|0;return t}function ht(a,b,c,d,e,f,g,h){var i=0,j=0,k=C(0),l=0,m=0;i=xa-224|0;xa=i;m=x[f+16>>1];v[i+220>>2]=-1;j=-1;if(e){j=nu(sh(v[e+4>>2]),v[e>>2],i+220|0)}l=a+5584|0;ME(l);v[c+64>>2]=0;t[c+52|0]=0;k=z[b+8>>2];d=x[d>>1];v[i+176>>2]=h;z[i+172>>2]=k>2]=g;u[i+160>>1]=d;v[i+156>>2]=c;v[i+152>>2]=b;v[i+148>>2]=a;v[i+144>>2]=126744;e=d&64;d=m&16;u[i+180>>1]=((e|d)!=0)<<6;t[i+182|0]=1;v[i+164>>2]=f;e=x[f+16>>1];v[i+216>>2]=0;t[i+212|0]=0;t[i+186|0]=0;t[i+185|0]=d>>>4;d=e>>>5&1;t[i+184|0]=d;t[i+183|0]=d;a:{b:{c:{if(!(v[c+60>>2]|(j|0)==-1)){e=IE(l,v[i+220>>2],j);t[i+186|0]=1;d=iV(i+8|0,v[b+12>>2],v[b+16>>2],z[b+20>>2]);z[i+188>>2]=z[d+72>>2];z[i+192>>2]=z[d+76>>2];z[i+196>>2]=z[d+80>>2];z[i+200>>2]=z[d+84>>2];z[i+204>>2]=z[d+88>>2];z[i+208>>2]=z[d+92>>2];v[i+216>>2]=d;t[i+212|0]=1;d=it(i+144|0,i+140|0,e);v[i+216>>2]=0;t[i+186|0]=0;if(!d){break c}e=x[f+16>>1]}d=i+172|0;g=v[a+5656>>2];h=v[a+5620>>2];j=v[a+5584>>2];a=iV(i+8|0,v[b+12>>2],v[b+16>>2],z[b+20>>2]);z[i+188>>2]=z[a+72>>2];z[i+192>>2]=z[a+76>>2];z[i+196>>2]=z[a+80>>2];z[i+200>>2]=z[a+84>>2];z[i+204>>2]=z[a+88>>2];z[i+208>>2]=z[a+92>>2];v[i+216>>2]=a;t[i+212|0]=1;d:{if(!(e&1)){break d}if(Ba[v[v[j>>2]+32>>2]](j,a,v[b+4>>2],d,i+144|0)|0){break d}b=w[c+52|0];e=v[c+64>>2];d=(b|e)!=0;break b}e:{if(!(e&2)){break e}if(Ba[v[v[h>>2]+32>>2]](h,a,v[b+4>>2],d,i+144|0)|0){break e}d=(w[c+52|0]|v[c+64>>2])!=0;break a}b=v[b+4>>2];u[i>>1]=x[f+16>>1];a=Ba[v[v[g>>2]+32>>2]](g,a,b,d,i+144|0,i)|0;b=w[c+52|0];e=v[c+64>>2];d=(b|e)!=0;if(!a){break a}break b}b=w[c+52|0];e=v[c+64>>2];d=(b|e)!=0}if(b){if(!e){break a}k=z[c+44>>2];g=v[c+56>>2];f=0;while(1){a=g+B(f,48)|0;f:{if(k>2]){e=e-1|0;b=g+B(e,48)|0;h=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=h;v[a+8>>2]=v[b+8>>2];u[a+12>>1]=x[b+12>>1];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];z[a+32>>2]=z[b+32>>2];z[a+36>>2]=z[b+36>>2];z[a+40>>2]=z[b+40>>2];v[a+44>>2]=v[b+44>>2];break f}f=f+1|0}if((e|0)!=(f|0)){continue}break}v[c+64>>2]=e}if(!e){break a}if(!(Ba[v[v[c>>2]>>2]](c,v[c+56>>2],e)|0)){break a}v[c+64>>2]=0}Ba[v[v[c>>2]+4>>2]](c);xa=i+224|0;return d}function WQ(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;j=xa-48|0;xa=j;b=v[a+28>>2];m=v[a+20>>2];a=v[m+20>>2];v[b+3460>>2]=a;v[b+3464>>2]=1;if(a){Ba[v[v[a>>2]+16>>2]](a);v[b+3456>>2]=v[v[b+3460>>2]+16>>2]}a=b+3420|0;k=b+3440|0;v[a>>2]=k;v[b+3424>>2]=1;Ba[v[v[b+3440>>2]+16>>2]](k);v[b+3416>>2]=v[v[a>>2]+16>>2];v[b+3384>>2]=1;a=b+3380|0;l=b+3400|0;v[a>>2]=l;Ba[v[v[b+3400>>2]+16>>2]](l);v[b+3376>>2]=v[v[a>>2]+16>>2];h=xa-16|0;xa=h;d=v[b+976>>2]+24|0;a=v[d+168>>2];e=v[a+8>>2];i=v[a+4>>2];g=v[((e<<2)+i|0)-4>>2];f=v[a+16>>2];n=g-f|0;if((f|0)!=(g|0)){c=a+16|0;a:{if(e>>>0>=(v[a+12>>2]&2147483647)>>>0){Vs(a+4|0,c);break a}v[i+(e<<2)>>2]=f;v[a+8>>2]=e+1}c=v[c>>2]}a=n>>>14|0;v[d+164>>2]=a;v[d+160>>2]=c;v[h+12>>2]=0;c=d+88|0;if(a>>>0>(v[c+8>>2]&2147483647)>>>0){Ay(c,a)}e=v[c+4>>2];if((e|0)<(a|0)){f=v[c>>2];i=f+(a<<2)|0;e=f+(e<<2)|0;while(1){v[e>>2]=v[h+12>>2];e=e+4|0;if(i>>>0>e>>>0){continue}break}}v[c+4>>2]=a;e=v[d+164>>2];b:{if(!e){break b}c=0;a=0;if(e-1>>>0>=3){i=e&-4;f=0;while(1){v[v[d+88>>2]+(a<<2)>>2]=v[d+160>>2]+(a<<14);g=a|1;v[v[d+88>>2]+(g<<2)>>2]=v[d+160>>2]+(g<<14);g=a|2;v[v[d+88>>2]+(g<<2)>>2]=v[d+160>>2]+(g<<14);g=a|3;v[v[d+88>>2]+(g<<2)>>2]=v[d+160>>2]+(g<<14);a=a+4|0;f=f+4|0;if((i|0)!=(f|0)){continue}break}}e=e&3;if(!e){break b}while(1){v[v[d+88>>2]+(a<<2)>>2]=v[d+160>>2]+(a<<14);a=a+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}xa=h+16|0;a=v[b+976>>2];e=v[a+1824>>2];a=v[a+1024>>2];Ba[v[v[a>>2]+84>>2]](j+8|0,a);a=v[v[b+976>>2]+1024>>2];f=Ba[v[v[a>>2]+68>>2]](a)|0;d=v[b+980>>2];a=v[d+160>>2];h=v[v[b+2376>>2]+4>>2]+31>>>5|0;c=v[d+164>>2];if(h>>>0>(c&2147483647)>>>0){if(!(!a|(c|0)<0)){c=v[d+168>>2];Ba[v[v[c>>2]+12>>2]](c,a)}v[d+164>>2]=h;a=v[d+168>>2];a=Ba[v[v[a>>2]+8>>2]](a,h<<2,17999,461)|0;v[d+160>>2]=a;c=v[d+164>>2]}J9(a,0,c<<2);a=v[b+1004>>2];c=b+3360|0;Ba[v[v[a>>2]+4>>2]](a,v[b+1e3>>2],m,c,v[b+2480>>2],v[b+2484>>2],v[b+2492>>2],v[b+2496>>2],e,j+8|0,f,z[b+1080>>2],b+1052|0,v[d+164>>2]&2147483647);v[v[b+1e3>>2]+96>>2]=0;a=v[b+3456>>2];Ba[v[v[a>>2]+72>>2]](a,k);a=v[b+3416>>2];Ba[v[v[a>>2]+72>>2]](a,l);a=v[b+3376>>2];Ba[v[v[a>>2]+72>>2]](a,c);xa=j+48|0}function $E(a,b,c,d){var e=C(0);v[a>>2]=0;v[a+4>>2]=0;v[a+268>>2]=1120403456;v[a+20>>2]=0;v[a+24>>2]=0;v[a+16>>2]=1065353216;v[a+8>>2]=0;v[a+12>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+336>>2]=1028443341;v[a+320>>2]=1028443341;v[a+52>>2]=0;v[a+56>>2]=0;v[a+44>>2]=1065353216;v[a+48>>2]=0;u[a+262>>1]=0;u[a+264>>1]=0;u[a+266>>1]=0;t[a+273|0]=1;t[a+274|0]=3;t[a+272|0]=0;z[a+4>>2]=z[b>>2];z[a+8>>2]=z[b+4>>2];z[a+12>>2]=z[b+8>>2];z[a+16>>2]=z[b+12>>2];z[a+20>>2]=z[b+16>>2];z[a+24>>2]=z[b+20>>2];z[a+28>>2]=z[b+24>>2];z[a+32>>2]=z[c>>2];z[a+36>>2]=z[c+4>>2];z[a+40>>2]=z[c+8>>2];z[a+44>>2]=z[c+12>>2];z[a+48>>2]=z[c+16>>2];z[a+52>>2]=z[c+20>>2];e=z[c+24>>2];t[a+334|0]=0;v[a+284>>2]=0;v[a+288>>2]=1065353216;v[a+276>>2]=0;v[a+280>>2]=0;z[a+56>>2]=e;v[a+292>>2]=0;v[a+296>>2]=0;v[a+300>>2]=0;v[a+304>>2]=0;v[a+308>>2]=0;v[a+312>>2]=1065353216;v[a+316>>2]=1065353216;a:{if(d){v[a+108>>2]=0;v[a+112>>2]=0;v[a+100>>2]=0;v[a+104>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+68>>2]=0;v[a+72>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;v[a+228>>2]=0;v[a+204>>2]=0;v[a+116>>2]=0;v[a+120>>2]=4;v[a+132>>2]=0;v[a+136>>2]=4;v[a+124>>2]=0;v[a+128>>2]=0;v[a+232>>2]=0;v[a+236>>2]=0;v[a+208>>2]=0;v[a+212>>2]=0;v[a+148>>2]=0;v[a+152>>2]=4;v[a+140>>2]=0;v[a+144>>2]=0;v[a+216>>2]=0;v[a+164>>2]=0;v[a+168>>2]=4;v[a+240>>2]=0;v[a+156>>2]=0;v[a+160>>2]=0;v[a+244>>2]=0;v[a+248>>2]=0;v[a+180>>2]=0;v[a+184>>2]=4;v[a+172>>2]=0;v[a+176>>2]=0;v[a+220>>2]=0;v[a+224>>2]=0;v[a+196>>2]=0;v[a+200>>2]=4;v[a+188>>2]=0;v[a+192>>2]=0;v[a+360>>2]=0;v[a+352>>2]=0;v[a+356>>2]=0;v[a+344>>2]=0;v[a+348>>2]=0;v[a+336>>2]=0;v[a+340>>2]=0;break a}v[a+320>>2]=1028443341;v[a+336>>2]=1028443341;v[a+340>>2]=1045147567;v[a+76>>2]=1061752795;v[a+80>>2]=1061752795;v[a+68>>2]=1061752795;v[a+72>>2]=1061752795;v[a+360>>2]=1011666824;v[a+352>>2]=1045147567;v[a+356>>2]=-1102336081;v[a+344>>2]=1045147567;v[a+348>>2]=1011666824;v[a+60>>2]=-1085730853;v[a+64>>2]=1061752795}t[a+274|0]=4;u[a+332>>1]=0;v[a+324>>2]=0;v[a+328>>2]=0;v[a+252>>2]=1028443341;u[a+266>>1]=0;u[a+262>>1]=0;u[a+264>>1]=0}function $w(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=0,s=0,t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=0,J=0;s=xa-32|0;h=z[b>>2];k=z[g+8>>2];i=z[b+8>>2];l=z[g>>2];q=C(C(C(h*k)-C(i*l))+z[g+20>>2]);m=i;i=z[g+4>>2];j=z[b+4>>2];m=C(C(C(m*i)-C(j*k))+z[g+16>>2]);j=C(C(C(j*l)-C(h*i))+z[g+24>>2]);r=v[e+72>>2];a:{if(!r){break a}h=z[c+32>>2];n=z[c+24>>2];o=z[c+28>>2];w=C(C(C(C(h*j)+C(C(n*m)+C(q*o)))+C(C(C(l*z[c+80>>2])+C(i*z[c+92>>2]))+C(k*z[c+104>>2])))+z[f+24>>2]);t=z[c+20>>2];u=z[c+12>>2];x=z[c+16>>2];G=C(C(C(C(t*j)+C(C(u*m)+C(q*x)))+C(C(C(l*z[c+76>>2])+C(i*z[c+88>>2]))+C(k*z[c+100>>2])))+z[f+20>>2]);y=z[c+8>>2];A=z[c>>2];D=z[c+4>>2];H=C(C(C(C(y*j)+C(C(A*m)+C(q*D)))+C(C(C(l*z[c+72>>2])+C(i*z[c+84>>2]))+C(k*z[c+96>>2])))+z[f+16>>2]);h=C(C(C(C(C(l*y)+C(i*t))+C(k*h))+C(C(C(m*z[c+44>>2])+C(q*z[c+56>>2]))+C(j*z[c+68>>2])))+z[f+8>>2]);o=C(C(C(C(C(l*D)+C(i*x))+C(k*o))+C(C(C(m*z[c+40>>2])+C(q*z[c+52>>2]))+C(j*z[c- -64>>2])))+z[f+4>>2]);n=C(C(C(C(C(l*A)+C(i*u))+C(k*n))+C(C(C(m*z[c+36>>2])+C(q*z[c+48>>2]))+C(j*z[c+60>>2])))+z[f>>2]);g=0;while(1){b=B(g,24)+e|0;z[(g<<2)+s>>2]=-C(C(C(z[b+20>>2]*h)+C(C(z[b+12>>2]*n)+C(o*z[b+16>>2])))+C(C(z[b+8>>2]*w)+C(C(z[b>>2]*H)+C(G*z[b+4>>2]))));g=g+1|0;if((r|0)!=(g|0)){continue}break}n=C(0);o=C(0);w=C(0);t=C(0);u=C(0);if(!r){break a}I=r&-4;E=r&3;f=0;J=r-1>>>0<3;while(1){c=0;h=C(0);b=0;if(!J){while(1){g=f<<2;p=c|3;x=C(z[g+(B(p,12)+d|0)>>2]*z[(p<<2)+s>>2]);p=c|2;y=C(z[g+(B(p,12)+d|0)>>2]*z[(p<<2)+s>>2]);p=c|1;h=C(x+C(y+C(C(z[g+(B(p,12)+d|0)>>2]*z[(p<<2)+s>>2])+C(C(z[g+(B(c,12)+d|0)>>2]*z[(c<<2)+s>>2])+h))));c=c+4|0;b=b+4|0;if((I|0)!=(b|0)){continue}break}}g=0;if(E){while(1){h=C(C(z[(B(c,12)+d|0)+(f<<2)>>2]*z[(c<<2)+s>>2])+h);c=c+1|0;g=g+1|0;if((E|0)!=(g|0)){continue}break}}b=B(f,24)+e|0;w=C(w+C(h*z[b+12>>2]));o=C(o+C(h*z[b+8>>2]));n=C(n+C(h*z[b+4>>2]));F=C(F+C(h*z[b>>2]));u=C(u+C(h*z[b+20>>2]));t=C(t+C(h*z[b+16>>2]));f=f+1|0;if((r|0)!=(f|0)){continue}break}}v[a+28>>2]=0;v[a+12>>2]=0;z[a+24>>2]=j+u;z[a+20>>2]=q+t;z[a+16>>2]=m+w;z[a+8>>2]=k+o;z[a+4>>2]=i+n;z[a>>2]=l+F}function Fx(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=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=v[a+336>>2]-1|0;if(g){F=v[b+32>>2];q=v[b+12>>2];G=v[b+8>>2];H=v[a+344>>2];r=v[a+340>>2];I=v[a+332>>2];J=v[a+284>>2];K=v[a+272>>2];L=v[a+236>>2];while(1){a=B(g,112)+L|0;j=z[a+32>>2];p=g<<5;b=G+p|0;c=z[b+24>>2];k=z[a+24>>2];d=z[b+16>>2];l=z[a+28>>2];e=z[b+20>>2];f=z[b>>2];h=z[b+4>>2];i=z[b+8>>2];b=q+p|0;s=C(C(C(C(j*c)+C(C(k*d)+C(l*e)))+C(C(C(f*z[a+80>>2])+C(h*z[a+92>>2]))+C(i*z[a+104>>2])))+z[b+24>>2]);m=z[a+20>>2];n=z[a+12>>2];o=z[a+16>>2];t=C(C(C(C(m*c)+C(C(n*d)+C(o*e)))+C(C(C(f*z[a+76>>2])+C(h*z[a+88>>2]))+C(i*z[a+100>>2])))+z[b+20>>2]);u=z[a+8>>2];x=z[a>>2];y=z[a+4>>2];A=C(C(C(C(u*c)+C(C(x*d)+C(y*e)))+C(C(C(f*z[a+72>>2])+C(h*z[a+84>>2]))+C(i*z[a+96>>2])))+z[b+16>>2]);m=C(C(C(C(C(f*u)+C(h*m))+C(i*j))+C(C(C(d*z[a+44>>2])+C(e*z[a+56>>2]))+C(c*z[a+68>>2])))+z[b+8>>2]);l=C(C(C(C(C(f*y)+C(h*o))+C(i*l))+C(C(C(d*z[a+40>>2])+C(e*z[a+52>>2]))+C(c*z[a- -64>>2])))+z[b+4>>2]);k=C(C(C(C(C(f*x)+C(h*n))+C(i*k))+C(C(C(d*z[a+36>>2])+C(e*z[a+48>>2]))+C(c*z[a+60>>2])))+z[b>>2]);a=B(g,80)+H|0;D=w[a+76|0];a:{if(!D){d=C(0);e=C(0);f=C(0);h=C(0);i=C(0);j=C(0);break a}M=(v[a+72>>2]<<2)+F|0;N=B(g,96)+J|0;O=B(g,76)+K|0;j=C(0);b=0;i=C(0);h=C(0);f=C(0);e=C(0);d=C(0);while(1){E=b<<2;a=B(b,24)+O|0;c=C(z[E+M>>2]-C(C(C(z[a+20>>2]*m)+C(C(z[a+12>>2]*k)+C(l*z[a+16>>2])))+C(C(z[a+8>>2]*s)+C(C(z[a>>2]*A)+C(t*z[a+4>>2])))));z[(E+(B(g,160)+r|0)|0)+132>>2]=c;a=(b<<5)+N|0;j=C(j+C(c*z[a+24>>2]));i=C(i+C(c*z[a+20>>2]));h=C(h+C(c*z[a+16>>2]));f=C(f+C(c*z[a+8>>2]));e=C(e+C(c*z[a+4>>2]));d=C(d+C(z[a>>2]*c));b=b+1|0;if((D|0)!=(b|0)){continue}break}}a=B(g,160)+r|0;c=z[a+120>>2];n=z[a+124>>2];o=z[a+128>>2];a=(v[(p+I|0)+24>>2]<<5)+q|0;d=C(k+d);z[a>>2]=d+z[a>>2];e=C(l+e);z[a+4>>2]=e+z[a+4>>2];f=C(m+f);z[a+8>>2]=f+z[a+8>>2];z[a+16>>2]=C(C(A+h)+C(C(n*f)-C(e*o)))+z[a+16>>2];z[a+20>>2]=C(C(t+i)+C(C(o*d)-C(f*c)))+z[a+20>>2];z[a+24>>2]=C(C(s+j)+C(C(c*e)-C(d*n)))+z[a+24>>2];g=g-1|0;if(g){continue}break}}}function aD(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=xa-16|0;xa=h;v[h+8>>2]=c;g=v[a+112>>2];a:{if(g){b:{if(v[d+40>>2]|!d){break b}f=v[d+36>>2];if(!v[f>>2]){break b}c=0;while(1){v[h+4>>2]=v[((c<<2)+f|0)+4>>2];f=bD(b,h+4|0,h+14|0);if(!w[h+14|0]){v[f>>2]=v[h+4>>2]}v[f+4>>2]=d;c=c+1|0;f=v[d+36>>2];if(c>>>0>2]){continue}break}g=v[a+112>>2];if(!g){break a}}while(1){m=0;o=v[v[a+108>>2]+(n<<2)>>2];c=v[o+36>>2];if(v[c>>2]){while(1){j=v[((m<<2)+c|0)+4>>2];d=v[b+20>>2];c:{d:{if(!d){i=0;break d}c=j+(j<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;i=d-1&(c>>>16^c);c=v[v[b+12>>2]+(i<<2)>>2];if((c|0)==-1){break d}e=v[b+8>>2];f=v[b+4>>2];while(1){g=f+(c<<3)|0;if((j|0)==v[g>>2]){break c}c=v[e+(c<<2)>>2];if((c|0)!=-1){continue}break}}q=v[b+36>>2];if((q|0)==v[b+16>>2]){c=d?d<<1:16;e:{if(c>>>0<=d>>>0){break e}k=z[b+24>>2];if(!c|c&c-1){c=c|c>>>1;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;c=(c>>>16|c)+1|0}d=c;k=C(k*C(d>>>0));f:{if(k=C(0)){f=~~k>>>0;break f}f=0}c=d+f<<2;i=(0-c&12)+c|0;e=(f<<3)+i|0;if(e){c=v[37696]+12|0;e=Ba[v[v[c>>2]+8>>2]](c,e,24422,17301,372)|0}else{e=0}c=d<<2;l=J9(e,255,c);r=l+i|0;s=c+l|0;if(v[b+36>>2]){t=d-1|0;g=v[b+4>>2];c=0;while(1){i=c<<3;p=i+g|0;e=v[p>>2];e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=l+(((e>>>16^e)&t)<<2)|0;v[s+(c<<2)>>2]=v[e>>2];v[e>>2]=c;e=i+r|0;v[e>>2]=v[p>>2];v[e+4>>2]=v[p+4>>2];c=c+1|0;if(c>>>0>2]){continue}break}}e=v[b>>2];if(e){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[b+20>>2]=d;v[b+12>>2]=l;v[b>>2]=l;v[b+8>>2]=s;v[b+16>>2]=f;v[b+4>>2]=r;if(v[b+28>>2]!=-1){break e}v[b+28>>2]=q}c=j+(j<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;i=d-1&(c>>>16^c)}d=v[b+28>>2];v[b+28>>2]=d+1;c=v[b+12>>2]+(i<<2)|0;v[v[b+8>>2]+(d<<2)>>2]=v[c>>2];v[c>>2]=d;v[b+36>>2]=v[b+36>>2]+1;v[b+32>>2]=v[b+32>>2]+1;g=v[b+4>>2]+(d<<3)|0;v[g+4>>2]=0;v[g>>2]=j}v[g+4>>2]=o;m=m+1|0;c=v[o+36>>2];if(m>>>0>2]){continue}break}g=v[a+112>>2]}n=n+1|0;if(n>>>0>>0){continue}break}break a}b=bD(b,h+8|0,h+15|0);if(!w[h+15|0]){a=v[h+8>>2];v[b+4>>2]=0;v[b>>2]=a}v[b+4>>2]=d}xa=h+16|0}function g9(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=C(0),k=0,l=0,m=0,n=0,o=0,p=0;g=xa-16|0;xa=g;a:{b:{if((a|0)!=67174656){b=maa(256);v[g+4>>2]=a;v[g>>2]=67174656;t9(b,256,1940,g);Ba[v[v[c>>2]+8>>2]](c,4,b,9796,132);break b}if(!v[37696]){d=Ba[v[v[b>>2]+8>>2]](b,264,14629,9796,141)|0;v[37696]=d;if(d){v[d+8>>2]=c;v[d+4>>2]=b;v[d+192>>2]=-1;t[d+188|0]=0;v[d+84>>2]=d+16;t[d+80|0]=1;v[d>>2]=149136;v[d+100>>2]=c;v[d+96>>2]=b;v[d+12>>2]=149212;v[d+176>>2]=d+108;t[d+172|0]=1;v[d+88>>2]=0;v[d+92>>2]=16;v[d+180>>2]=1;v[d+184>>2]=16;v[d+108>>2]=c;v[d+104>>2]=149284;a=v[37696];o=d,p=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,77785,16755,113)|0,v[o+196>>2]=p;a=xa-16|0;xa=a;xa=a+16|0;v[d+216>>2]=0;v[d+220>>2]=0;v[d+208>>2]=0;v[d+212>>2]=0;v[d+200>>2]=0;v[d+204>>2]=0;v[d+232>>2]=0;v[d+236>>2]=0;v[d+224>>2]=1061158912;v[d+228>>2]=-1;m=v[d+216>>2];j=C(z[d+224>>2]*C(64));c:{if(j=C(0)){a=~~j>>>0;break c}a=0}b=a- -64<<2;b=(0-b&12)+b|0;c=(a<<3)+b|0;if(c){h=v[37696];c=Ba[v[v[h+12>>2]+8>>2]](h+12|0,c,24422,17301,372)|0}else{c=0}c=J9(c,255,256);h=c+b|0;k=c+256|0;if(v[d+236>>2]){n=v[d+204>>2];b=0;while(1){i=b<<3;l=i+n|0;f=v[l>>2];e=(f<<15^-1)+f|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=c+(((e>>>16^e)&63)<<2)|0;v[(b<<2)+k>>2]=v[e>>2];v[e>>2]=b;i=h+i|0;v[i>>2]=f;v[i+4>>2]=v[l+4>>2];b=b+1|0;if(b>>>0>2]){continue}break}}b=v[d+200>>2];if(b){f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,b)}v[d+220>>2]=64;v[d+212>>2]=c;v[d+200>>2]=c;v[d+208>>2]=k;v[d+216>>2]=a;v[d+204>>2]=h;if(v[d+228>>2]==-1){v[d+228>>2]=m}a=v[37696];o=d,p=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,77785,16755,113)|0,v[o+240>>2]=p;a=xa-16|0;xa=a;xa=a+16|0;v[d+252>>2]=0;v[d+244>>2]=0;v[d+248>>2]=0;a=v[37696];o=d,p=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,77785,16755,113)|0,v[o+256>>2]=p;a=xa-16|0;xa=a;xa=a+16|0;a=v[37696];o=d,p=Ba[v[v[a+12>>2]+8>>2]](a+12|0,28,77785,16755,113)|0,v[o+260>>2]=p;a=xa-16|0;xa=a;xa=a+16|0;v[37698]=1;a=v[37697];v[37697]=(a|0)==-1?1:a+1|0;a=v[37696];break a}Ba[v[v[c>>2]+8>>2]](c,32,69768,9796,158);break b}Ba[v[v[c>>2]+8>>2]](c,8,67732,9796,165)}a=0}xa=g+16|0;return a|0}function eaa(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,m=0,o=0,p=0,q=0,r=0,s=0,t=0;d=b;b=v[b>>2]+7&-8;v[d>>2]=b+16;q=a;a=b;k=v[a>>2];b=v[a+4>>2];e=v[a+12>>2];o=e;g=xa-32|0;xa=g;e=e&2147483647;c=e-1006698496|0;f=e-1140785152|0;d=v[a+8>>2];a:{if((c|0)==(f|0)&d>>>0>>0|c>>>0>>0){a=d;d=o<<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(k|(b|0)!=134217728){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=o<<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;p=e>>>16|0;if(p>>>0<15249){break a}c=k;a=b;f=o&65535|65536;e=f;m=d;h=d;j=p-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=r|h;f=d|f;i=j&31;if((j&63)>>>0>=32){d=c<>>32-i|a<>2]=c;v[g+20>>2]=a;v[g+24>>2]=h;v[g+28>>2]=f;d=15361-p|0;c:{if(d&64){b=m;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;m=0;e=0;break c}if(!d){break c}f=m;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=m;f=a&31;if((a&63)>>>0>=32){a=0;m=e>>>f|0}else{a=e>>>f|0;m=((1<>>f}e=a}v[g>>2]=k;v[g+4>>2]=b;v[g+8>>2]=m;v[g+12>>2]=e;b=v[g+8>>2];e=v[g+4>>2];c=b<<4|e>>>28;a=v[g+12>>2]<<4|b>>>28;e=e&268435455;b=v[g>>2]|(v[g+16>>2]|v[g+24>>2]|(v[g+20>>2]|v[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(b|(e|0)!=134217728){break a}b=c+(c&1)|0;a=b>>>0>>0?a+1|0:a;c=b}xa=g+32|0;l(0,c|0);l(1,o&-2147483648|a);s=q,t=+n(),A[s>>3]=t}function IJ(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=xa-16|0;xa=i;l=(((c&15)!=0)<<4)+c|0;k=l&-16;h=k+B(b,40)|0;j=v[d>>2];a:{b:{if((j|0)!=v[a+60>>2]){j=v[a+48>>2];e=j+15&-16;v[i+12>>2]=e;g=v[a+52>>2];if(g>>>0>=e+h>>>0){c=e;f=c+v[a+44>>2]|0;break b}if(w[a+64|0]){break a}c=g;while(1){c=c<<1;v[a+52>>2]=c;if(h+v[i+12>>2]>>>0>c>>>0){continue}break}if(c){f=v[37696]+12|0;c=Ba[v[v[f>>2]+8>>2]](f,c,24422,17904,169)|0}else{c=0}f=I9(c,v[a+44>>2],g);c=v[a+44>>2];if(c){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}v[a+44>>2]=f;c=v[i+12>>2];f=f+c|0;break b}v[a+48>>2]=j;e=j+15&-16;v[i+12>>2]=e;g=v[a+52>>2];c:{if(g>>>0>=e+h>>>0){f=v[a+44>>2];c=e;break c}if(w[a+64|0]){break a}c=g;while(1){c=c<<1;v[a+52>>2]=c;if(h+v[i+12>>2]>>>0>c>>>0){continue}break}if(c){f=v[37696]+12|0;f=Ba[v[v[f>>2]+8>>2]](f,c,24422,17904,169)|0}else{f=0}c=I9(f,v[a+44>>2],g);g=v[a+44>>2];if(g){m=v[37696]+12|0;Ba[v[v[m>>2]+12>>2]](m,g)}v[a+44>>2]=c;c=v[i+12>>2]}f=c+f|0}v[a+60>>2]=c;v[a+48>>2]=v[a+48>>2]+((h-j|0)+e|0)}d:{if(!f){break d}c=v[a+44>>2];a=v[d>>2];e=c+a|0;g=x[d+10>>1]>>>1&32752;e:{if((a|0)!=v[i+12>>2]){f:{if(g>>>0>=k>>>0){I9(f,e,g+B(x[d+6>>1],40)|0);break f}I9(I9(f,e,x[d+8>>1])+k|0,e+g|0,B(x[d+6>>1],40))}v[d>>2]=v[i+12>>2];break e}if(g>>>0>=k>>>0){break e}a=B(x[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){I9(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}t[c|0]=w[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;t[h|0]=w[a+e|0];if(h&3){continue}break}}if(a>>>0<=3){break j}while(1){a=a-4|0;v[c+a>>2]=v[a+e>>2];if(a>>>0>3){continue}break}}if(!a){break g}while(1){a=a-1|0;t[c+a|0]=w[a+e|0];if(a){continue}break}break g}if(a>>>0<=3){break h}while(1){v[c>>2]=v[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){t[c|0]=w[e|0];c=c+1|0;e=e+1|0;a=a-1|0;if(a){continue}break}}}if(x[d+4>>1]>>0){u[d+4>>1]=b}if(g>>>0>=k>>>0){break d}u[d+10>>1]=x[d+10>>1]&31|l<<1&65504}xa=i+16|0;return f}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,k=0,l=0,m=C(0),n=C(0),o=0,p=0,q=C(0);l=xa-16|0;xa=l;if(v[a+72>>2]){while(1){e=v[v[a+68>>2]+(j<<2)>>2];A[e+432>>3]=A[e+432>>3]-+z[b>>2];A[e+440>>3]=A[e+440>>3]-+z[b+4>>2];A[e+448>>3]=A[e+448>>3]-+z[b+8>>2];c=e+88|0;m=z[b>>2];f=+m;A[c+48>>3]=A[c+48>>3]-f;n=z[b+4>>2];g=+n;A[c+56>>3]=A[c+56>>3]-g;q=z[b+8>>2];A[c+72>>3]=A[c+72>>3]-f;A[c+80>>3]=A[c+80>>3]-g;d=c- -64|0;f=+q;A[d>>3]=A[d>>3]-f;A[c+88>>3]=A[c+88>>3]-f;a:{b:{if(v[c+152>>2]){if(x[v[c+164>>2]+4>>1]==6){break a}z[c+204>>2]=z[c+204>>2]-m;z[c+208>>2]=z[c+208>>2]-n;d=c+212|0;break b}if(v[c+176>>2]==-1){break a}z[c+228>>2]=z[c+228>>2]-m;z[c+232>>2]=z[c+232>>2]-n;d=c+236|0}z[d>>2]=z[d>>2]-q}d=v[c+36>>2];if(d){c=v[c+32>>2];d=c+(d<<2)|0;f=+z[b+8>>2];g=+z[b+4>>2];h=+z[b>>2];while(1){A[c+12>>3]=A[c+12>>3]-h;A[c+20>>3]=A[c+20>>3]-g;A[c+28>>3]=A[c+28>>3]-f;c=v[(v[c>>2]<<2)+99008>>2]+c|0;if((d|0)!=(c|0)){continue}break}}j=j+1|0;if(j>>>0>2]){continue}break}}if(v[a+124>>2]){j=0;while(1){c=0;e=0;k=v[v[a+120>>2]+(j<<2)>>2];i=v[k+8>>2];c:{if(!i){break c}o=v[k+4>>2];f=+z[b+8>>2];g=+z[b+4>>2];h=+z[b>>2];if((i|0)!=1){p=i&-2;while(1){d=o+B(c,72)|0;A[d+16>>3]=A[d+16>>3]-h;A[d+24>>3]=A[d+24>>3]-g;A[d+32>>3]=A[d+32>>3]-f;d=o+B(c|1,72)|0;A[d+16>>3]=A[d+16>>3]-h;A[d+24>>3]=A[d+24>>3]-g;A[d+32>>3]=A[d+32>>3]-f;c=c+2|0;e=e+2|0;if((p|0)!=(e|0)){continue}break}}if(!(i&1)){break c}c=o+B(c,72)|0;A[c+16>>3]=A[c+16>>3]-h;A[c+24>>3]=A[c+24>>3]-g;A[c+32>>3]=A[c+32>>3]-f}i=v[k+20>>2];d:{if(!i){break d}k=v[k+16>>2];f=+z[b+8>>2];g=+z[b+4>>2];h=+z[b>>2];c=0;if((i|0)!=1){o=i&-2;e=0;while(1){p=c<<6;d=p+k|0;A[d+16>>3]=A[d+16>>3]-h;A[d+24>>3]=A[d+24>>3]-g;A[d+32>>3]=A[d+32>>3]-f;d=k+(p|64)|0;A[d+16>>3]=A[d+16>>3]-h;A[d+24>>3]=A[d+24>>3]-g;A[d+32>>3]=A[d+32>>3]-f;c=c+2|0;e=e+2|0;if((o|0)!=(e|0)){continue}break}}if(!(i&1)){break d}c=k+(c<<6)|0;A[c+16>>3]=A[c+16>>3]-h;A[c+24>>3]=A[c+24>>3]-g;A[c+32>>3]=A[c+32>>3]-f}j=j+1|0;if(j>>>0>2]){continue}break}}a=v[a+12>>2];if(a){m=z[b>>2];n=z[b+4>>2];z[l+8>>2]=-z[b+8>>2];z[l+4>>2]=-n;z[l>>2]=-m;ls(a,l)}xa=l+16|0} +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=0,m=0,n=0,o=0,p=0,q=0,r=0;e=xa-6144|0;xa=e;c=1;a:{if(!v[a+32>>2]){break a}c=v[a+48>>2];i=v[c+1140>>2];p=v[c+1e3>>2];while(1){d=v[(v[p+184>>2]+B(v[v[a+28>>2]+(g<<2)>>2]>>>7|0,24)|0)+20>>2];f=v[d-20>>2];z[f+156>>2]=z[f+160>>2];c=d+-64|0;b:{c:{d:{b=x[d+28>>1];if(!(b&1)){v[(e+5120|0)+(j<<2)>>2]=c;gH(c,v[a+44>>2],i);j=j+1|0;b=x[d+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=(q<<2)+e|0;q=q+1|0}v[l>>2]=c}if(w[f+44|0]&4){v[(e+4096|0)+(m<<2)>>2]=c;m=m+1|0}e:{f:{if(b&8){f=(e+3072|0)+(n<<2)|0;n=n+1|0;break f}if(!(b&16)){break e}f=(e+2048|0)+(o<<2)|0;o=o+1|0}v[f>>2]=c}u[d+28>>1]=b&1;g=g+1|0;if(g>>>0>2]){continue}break}if(!j){j=0;c=1;break a}t[v[a+44>>2]+20|0]=1;t[i+16|0]=1;c=0}g:{if(!(j|k|(m|n))){if(!o){break g}}b=v[a+48>>2];d=v[b+980>>2];i=d+160|0;if(!c){g=0;while(1){b=v[v[(e+5120|0)+(g<<2)>>2]+32>>2];if(b){while(1){if(w[v[b+28>>2]- -64|0]&5){l=v[b+8>>2];p=l&2147483647;f=p+32>>>5|0;h:{if(f>>>0<=(v[d+164>>2]&2147483647)>>>0){c=v[i>>2];break h}c=v[d+168>>2];c=Ba[v[v[c>>2]+8>>2]](c,f<<2,17999,438)|0;h=v[d+160>>2];i:{if(!h){break i}I9(c,h,v[d+164>>2]<<2);if(v[d+164>>2]<0){break i}h=v[i>>2];if(!h){break i}r=v[d+168>>2];Ba[v[v[r>>2]+12>>2]](r,h)}h=v[d+164>>2];J9((h<<2)+c|0,0,f-h<<2);v[d+164>>2]=f;v[d+160>>2]=c}c=(p>>>3&268435452)+c|0;v[c>>2]=v[c>>2]|1<>2];if(b){continue}break}}g=g+1|0;if((j|0)!=(g|0)){continue}break}b=v[a+48>>2]}if(m){g=b+1156|0;c=0;while(1){a=(e+4096|0)+(c<<2)|0;d=v[b+1160>>2];j:{if(d>>>0>=(v[b+1164>>2]&2147483647)>>>0){qG(g,a);break j}v[v[b+1156>>2]+(d<<2)>>2]=v[a>>2];v[b+1160>>2]=d+1}c=c+1|0;if((m|0)!=(c|0)){continue}break}}if(k){b=0;while(1){uH(v[(e+1024|0)+(b<<2)>>2],i);b=b+1|0;if((k|0)!=(b|0)){continue}break}}if(q){b=0;while(1){nH(v[(b<<2)+e>>2]);b=b+1|0;if((q|0)!=(b|0)){continue}break}}if(n){b=0;while(1){a=v[(e+3072|0)+(b<<2)>>2];cG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);b=b+1|0;if((n|0)!=(b|0)){continue}break}}if(o){b=0;while(1){mH(v[(e+2048|0)+(b<<2)>>2]);b=b+1|0;if((o|0)!=(b|0)){continue}break}}}xa=e+6144|0}function ZD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;a:{if(!w[a+338|0]){break a}b:{c:{d:{e:{switch(v[a+268>>2]){case 0:if(!b){break a}if(Ba[v[v[a>>2]+76>>2]](a)|0){break c}break a;case 1:PB(v[a+32>>2],a+8|0,a+24|0,0,0);v[a+44>>2]=0;v[a+268>>2]=2;f=v[a+4>>2];if(f){e=v[f+44>>2]}d=v[a+12>>2];c=0;f:{if(d>>>0<2){break f}c=1;if(d>>>0<4){break f}c=2;if(d>>>0<8){break f}c=3;if(d>>>0<16){break f}c=4;if(d>>>0<32){break f}c=5;if(d>>>0<64){break f}c=6;if(d>>>0<128){break f}c=7;if(d>>>0<256){break f}c=8;if(d>>>0<512){break f}c=9;if(d>>>0<1024){break f}c=10;if(d>>>0<2048){break f}c=11;if(d>>>0<4096){break f}c=12;if(d>>>0<8192){break f}c=13;if(d>>>0<16384){break f}c=14;if(d>>>0<32768){break f}c=15;if(d>>>0<65536){break f}c=16;if(d>>>0<131072){break f}c=17;if(d>>>0<262144){break f}c=18;if(d>>>0<524288){break f}c=19;if(d>>>0<1048576){break f}c=20;if(d>>>0<2097152){break f}c=21;if(d>>>0<4194304){break f}c=22;if(d>>>0<8388608){break f}c=23;if(d>>>0<16777216){break f}c=24;if(d>>>0<33554432){break f}c=25;if(d>>>0<67108864){break f}c=26;if(d>>>0<134217728){break f}c=27;if(d>>>0<268435456){break f}c=28;if(d>>>0<536870912){break f}c=29;if(d>>>0<1073741824){break f}c=(d|0)>=0?30:31}c=B(c,d);g:{if(!(c>>>0>e<<1>>>0|e>>>1>>>0>c>>>0)){c=e;e=v[a+280>>2];break g}v[a+280>>2]=0;e=0}c=B(d,e)+c|0;v[a+276>>2]=(c|0)>0?c:0;break d;case 2:v[a+44>>2]=v[a+44>>2]+1;if(PB(v[a+32>>2],a+8|0,a+24|0,1,(y[a+276>>2]/y[a+272>>2]|0)+1|0)){break d}v[a+268>>2]=3;break d;case 3:v[a+268>>2]=4;v[a+44>>2]=v[a+44>>2]+1;if(!v[a+344>>2]){break d}e=a+324|0;c=v[a+284>>2];d=v[a+40>>2];kD(e,d>>>0>>0?c:d,v[a+32>>2]);if(v[a+344>>2]>0){c=v[a+340>>2];while(1){lD(e,v[c>>2],v[c+4>>2],v[a+32>>2]);c=c+8|0;if(c>>>0>2]+(v[a+344>>2]<<3)>>>0){continue}break}}v[a+344>>2]=0;break d;case 4:v[a+268>>2]=5;v[a+44>>2]=v[a+44>>2]+1;f=v[a+292>>2];e=v[a+32>>2];c=v[e+40>>2];if(c){g=v[e>>2];e=v[e+8>>2];c=c-1|0;d=e+B(c,28)|0;if(c){while(1){RB(d,f,g,e);c=c-1|0;d=e+B(c,28)|0;if(c){continue}break}}RB(d,f,g,e)}break d;case 5:break e;default:break d}}v[a+268>>2]=6}if(!b){break b}}t[a+337|0]=1}c=v[a+268>>2]==6}return c|0}function uR(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=xa-16|0;xa=k;i=v[a+28>>2];m=v[i+4688>>2];if(m){while(1){a=v[v[i+4684>>2]+(j<<2)>>2];a:{if(!(a&1)){break a}d=a&-2;h=v[d+56>>2];c=d?d+4|0:0;v[k+8>>2]=c;l=w[c+20|0];b=B(l,12)+i|0;e=v[b+56>>2];v[c+8>>2]=e;f=b+52|0;a=e;g=v[b+60>>2]&2147483647;if(!g){YO(f,64);g=v[b+60>>2]&2147483647;a=v[b+56>>2]}b:{if(a>>>0>=g>>>0){ZO(f,k+8|0);break b}v[v[f>>2]+(a<<2)>>2]=c;v[b+56>>2]=a+1}if(h){b=(l<<2)+i|0;a=v[b+88>>2];if(e>>>0>a>>>0){g=v[f>>2];h=g+(e<<2)|0;c=v[h>>2];l=h;h=g;g=a<<2;h=v[h+g>>2];v[l>>2]=h;v[g+v[f>>2]>>2]=c;v[c+8>>2]=a;v[h+8>>2]=e;a=v[b+88>>2]}v[b+88>>2]=a+1}hJ(v[i+2168>>2],d);b=v[d+56>>2];if(!b){break a}e=v[b+48>>2];a=v[i+976>>2];f=v[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=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,f<<2,24422,17999,438)|0;c=v[a+936>>2];d:{if(!c){break d}I9(d,c,v[a+940>>2]<<2);if(v[a+940>>2]<0){break d}c=v[a+936>>2];if(!c){break d}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,c)}c=v[a+940>>2];J9(d+(c<<2)|0,0,f-c<<2);v[a+940>>2]=f;v[a+936>>2]=d}f=e>>>5|0;d=v[a+936>>2]+(f<<2)|0;g=d;h=v[d>>2];d=1<>2]=h|d;if(!(!(w[b+8|0]&2)|!(x[b+40>>1]&4096))){b=v[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=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e<<2,24422,17999,438)|0;c=v[a+948>>2];f:{if(!c){break f}I9(b,c,v[a+952>>2]<<2);if(v[a+952>>2]<0){break f}c=v[a+948>>2];if(!c){break f}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,c)}c=v[a+952>>2];J9(b+(c<<2)|0,0,e-c<<2);v[a+952>>2]=e;v[a+948>>2]=b}a=v[a+948>>2]+(f<<2)|0;v[a>>2]=d|v[a>>2]}}j=j+1|0;if((m|0)!=(j|0)){continue}break}}g=v[i+4700>>2];if(g){j=0;while(1){a=v[v[i+4696>>2]+(j<<2)>>2];if(a&1){d=a&-2;b=d?d+4|0:0;v[k+12>>2]=b;e=B(w[b+20|0],12)+i|0;a=v[e+56>>2];v[b+8>>2]=a;f=e+52|0;c=v[e+60>>2]&2147483647;if(!c){YO(f,64);c=v[e+60>>2]&2147483647;a=v[e+56>>2]}g:{if(a>>>0>=c>>>0){ZO(f,k+12|0);break g}v[v[f>>2]+(a<<2)>>2]=b;v[e+56>>2]=a+1}hJ(v[i+2168>>2],d)}j=j+1|0;if((g|0)!=(j|0)){continue}break}}xa=k+16|0}function sN(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=C(0),i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c=v[a+44>>2];f=v[a+32>>2];g=v[a+36>>2];b=v[a+40>>2];d=v[a+20>>2];j=v[a+28>>2];My(v[j+11848>>2],j+11836|0);a=j+11856|0;v[a>>2]=0;v[a+4>>2]=0;a:{if(!v[g>>2]){break a}i=b+168|0;a=0;if(!d){while(1){b=wr(v[c+620>>2],64);l=v[c+472>>2];m=v[c+484>>2];n=v[c+496>>2];e=v[f+56>>2];k=v[g>>2];h=z[c+56>>2];o=v[c+632>>2];p=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=o;v[b+12>>2]=p;v[b+60>>2]=c;v[b+52>>2]=a;v[b+48>>2]=i;z[b+44>>2]=h;v[b+28>>2]=f;v[b>>2]=132828;v[b+24>>2]=1;a=a+512|0;v[b+56>>2]=a>>>0>>0?a:k;v[b+40>>2]=n+B(e,48);e=e<<6;v[b+36>>2]=e+m;v[b+32>>2]=e+l;e=v[b+16>>2];Ba[v[v[e>>2]+72>>2]](e,b);if(y[g>>2]>a>>>0){continue}break a}}while(1){b=wr(v[c+620>>2],64);l=v[c+472>>2];m=v[c+484>>2];n=v[c+496>>2];e=v[f+56>>2];k=v[g>>2];h=z[c+56>>2];o=v[c+632>>2];p=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=o;v[b+12>>2]=p;v[b+60>>2]=c;v[b+52>>2]=a;v[b+48>>2]=i;z[b+44>>2]=h;v[b+28>>2]=f;v[b>>2]=132828;v[b+20>>2]=d;v[b+24>>2]=1;a=a+512|0;v[b+56>>2]=a>>>0>>0?a:k;v[b+40>>2]=n+B(e,48);e=e<<6;v[b+36>>2]=e+m;v[b+32>>2]=e+l;Ba[v[v[d>>2]+16>>2]](d);v[b+16>>2]=v[v[b+20>>2]+16>>2];Ba[v[v[b>>2]+20>>2]](b);if(y[g>>2]>a>>>0){continue}break}}b:{if(!(v[g+4>>2]&2147483647)){break b}a=0;if(!d){while(1){b=wr(v[c+620>>2],48);d=v[g+4>>2];h=z[c+52>>2];f=v[c+632>>2];i=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=f;v[b+12>>2]=i;v[b+44>>2]=c;z[b+40>>2]=h;v[b+32>>2]=a;v[b+28>>2]=j;v[b>>2]=132884;v[b+24>>2]=1;d=d&2147483647;a=a- -64|0;v[b+36>>2]=a>>>0>d>>>0?d:a;d=v[b+16>>2];Ba[v[v[d>>2]+72>>2]](d,b);if((v[g+4>>2]&2147483647)>>>0>a>>>0){continue}break b}}while(1){b=wr(v[c+620>>2],48);f=v[g+4>>2];h=z[c+52>>2];i=v[c+632>>2];e=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=i;v[b+12>>2]=e;v[b+44>>2]=c;z[b+40>>2]=h;v[b+32>>2]=a;v[b+28>>2]=j;v[b>>2]=132884;v[b+20>>2]=d;v[b+24>>2]=1;f=f&2147483647;a=a- -64|0;v[b+36>>2]=a>>>0>f>>>0?f:a;Ba[v[v[d>>2]+16>>2]](d);v[b+16>>2]=v[v[b+20>>2]+16>>2];Ba[v[v[b>>2]+20>>2]](b);if((v[g+4>>2]&2147483647)>>>0>a>>>0){continue}break}}}function oO(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0);a:{if(c){c=v[c+36>>2];g=z[c+8>>2];f=z[c+40>>2];e=C(z[c+56>>2]*C(-2));h=z[c+32>>2];l=C(z[c+48>>2]*C(-2));m=C(z[c+52>>2]*C(-2));k=z[c+36>>2];n=C(C(f*e)+C(C(h*l)+C(m*k)));d=z[c+44>>2];o=C(C(d*d)+C(-.5));i=C(C(f*n)+C(C(e*o)-C(d*C(C(h*m)-C(l*k)))));p=C(i+i);i=z[c>>2];j=C(C(h*n)+C(C(l*o)-C(d*C(C(k*e)-C(m*f)))));q=C(j+j);j=z[c+4>>2];e=C(C(k*n)+C(C(m*o)-C(d*C(C(f*l)-C(e*h)))));o=C(e+e);s=C(C(g*p)+C(C(i*q)+C(j*o)));e=z[c+12>>2];w=C(C(e*e)+C(-.5));l=C(C(h*j)+C(C(C(d*g)-C(e*f))-C(i*k)));b=v[b+92>>2];m=z[b+24>>2];t=C(m+m);m=C(C(k*g)+C(C(C(d*i)-C(e*h))-C(j*f)));n=z[b+16>>2];u=C(n+n);n=C(C(f*i)+C(C(C(d*j)-C(e*k))-C(g*h)));r=z[b+20>>2];r=C(r+r);x=C(C(l*t)+C(C(m*u)+C(n*r)));d=C(C(g*f)+C(C(j*k)+C(C(e*d)+C(h*i))));f=C(C(d*d)+C(-.5));y=C(C(z[c+24>>2]+C(C(g*s)+C(C(p*w)+C(e*C(C(i*o)-C(q*j))))))+C(C(l*x)+C(C(t*f)+C(d*C(C(m*r)-C(u*n))))));A=C(C(z[c+20>>2]+C(C(j*s)+C(C(o*w)+C(e*C(C(g*q)-C(p*i))))))+C(C(n*x)+C(C(r*f)+C(d*C(C(l*u)-C(t*m))))));p=C(C(z[c+16>>2]+C(C(i*s)+C(C(q*w)+C(e*C(C(j*p)-C(o*g))))))+C(C(m*x)+C(C(u*f)+C(d*C(C(n*t)-C(r*l))))));g=z[b+12>>2];e=z[b>>2];f=z[b+4>>2];h=z[b+8>>2];q=C(C(C(C(d*g)-C(e*m))-C(n*f))-C(l*h));o=C(C(C(m*f)+C(C(d*h)+C(l*g)))-C(e*n));s=C(C(C(l*e)+C(C(d*f)+C(n*g)))-C(h*m));g=C(C(C(n*h)+C(C(d*e)+C(m*g)))-C(f*l));break a}c=v[b+96>>2];g=z[c+8>>2];b=v[b+92>>2];d=z[b+24>>2];h=C(d+d);e=z[c>>2];d=z[b+16>>2];k=C(d+d);d=z[b+20>>2];i=C(d+d);f=z[c+4>>2];j=C(C(g*h)+C(C(e*k)+C(i*f)));d=z[c+12>>2];l=C(C(d*d)+C(-.5));y=C(z[c+24>>2]+C(C(g*j)+C(C(h*l)+C(d*C(C(e*i)-C(k*f))))));A=C(z[c+20>>2]+C(C(f*j)+C(C(i*l)+C(d*C(C(g*k)-C(h*e))))));p=C(z[c+16>>2]+C(C(e*j)+C(C(k*l)+C(d*C(C(f*h)-C(i*g))))));h=z[b+12>>2];k=z[b>>2];i=z[b+4>>2];j=z[b+8>>2];q=C(C(C(C(d*h)-C(k*e))-C(f*i))-C(g*j));o=C(C(C(e*i)+C(C(d*j)+C(g*h)))-C(k*f));s=C(C(C(g*k)+C(C(d*i)+C(f*h)))-C(j*e));g=C(C(C(f*j)+C(C(d*k)+C(e*h)))-C(i*g))}z[a+16>>2]=p;z[a+12>>2]=q;z[a+8>>2]=o;z[a+4>>2]=s;z[a>>2]=g;z[a+24>>2]=y;z[a+20>>2]=A}function AF(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;j=xa-16|0;xa=j;v[j+8>>2]=c;f=a+40|0;d=v[a+56>>2];a:{if(d>>>0>c>>>0){break a}b:{if(c+2048>>>0<=d>>>0){break b}e=v[a+60>>2];h=((e+c|0)+2047>>>0)/(e>>>0)|0;g=v[a+44>>2];i=h-g|0;d=B(e,i)+d|0;v[a+56>>2]=d;if((h|0)==(g|0)){break b}e=0;while(1){d=0;h=v[a+60>>2]<<4;if(h){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,h,24422,16683,84)|0}v[j+12>>2]=d;h=v[a+44>>2];c:{if(h>>>0>=(v[a+48>>2]&2147483647)>>>0){qF(f,j+12|0);break c}v[v[a+40>>2]+(h<<2)>>2]=d;v[a+44>>2]=h+1}e=e+1|0;if((i|0)!=(e|0)){continue}break}d=v[a+56>>2]}d=d+31>>>5|0;if(d>>>0<=(v[a+232>>2]&2147483647)>>>0){break a}c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d<<2,24422,17999,438)|0;e=v[a+228>>2];d:{if(!e){break d}I9(c,e,v[a+232>>2]<<2);if(v[a+232>>2]<0){break d}e=v[a+228>>2];if(!e){break d}i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,e)}e=v[a+232>>2];J9(c+(e<<2)|0,0,d-e<<2);v[a+232>>2]=d;v[a+228>>2]=c;c=v[j+8>>2]}h=xa-16|0;xa=h;d=v[a+52>>2];e=c+1|0;i=d>>>0>e>>>0?d:e;e=v[f+16>>2];e:{if(i>>>0<=e>>>0){break e}d=v[f+20>>2];g=((d+i|0)-1>>>0)/(d>>>0)|0;k=v[f+4>>2];l=g-k|0;v[f+16>>2]=e+B(l,d);if((g|0)==(k|0)){break e}e=0;while(1){d=0;g=v[f+20>>2]<<4;if(g){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,g,24422,16683,84)|0}v[h+12>>2]=d;g=v[f+4>>2];f:{if(g>>>0>=(v[f+8>>2]&2147483647)>>>0){qF(f,h+12|0);break f}v[v[f>>2]+(g<<2)>>2]=d;v[f+4>>2]=g+1}e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=v[f+12>>2];if(i>>>0>d>>>0){while(1){e=v[f+20>>2];g=(d>>>0)/(e>>>0)|0;e=v[v[f>>2]+(g<<2)>>2]+(d-B(e,g)<<4)|0;v[e+8>>2]=-1;v[e+12>>2]=-1;u[e+4>>1]=16;v[e>>2]=0;d=d+1|0;if((i|0)!=(d|0)){continue}break}}v[f+12>>2]=i;xa=h+16|0;d=v[a+228>>2]+(c>>>3&536870908)|0;f=v[d>>2];m=d,n=Vaa(-2,c)&f,v[m>>2]=n;f=v[j+8>>2];c=v[a+60>>2];d=(f>>>0)/(c>>>0)|0;c=v[v[a+40>>2]+(d<<2)>>2]+(f-B(c,d)<<4)|0;d=x[c+4>>1];g:{h:{if(d&2){a=d&65533;break h}if(d&8){break g}e=d&65519;u[c+4>>1]=e;v[c>>2]=b;a=B(b,12)+a|0;b=a+284|0;d=v[a+288>>2];i:{if(d>>>0>=(v[a+292>>2]&2147483647)>>>0){pn(b,j+8|0);e=x[c+4>>1];break i}v[v[b>>2]+(d<<2)>>2]=f;v[a+288>>2]=v[a+288>>2]+1}a=e&-73|8}u[c+4>>1]=a}xa=j+16|0}function ux(a){var b=C(0),c=0,d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0,w=0,x=0,y=0,A=0,D=0,E=0,F=0,G=0,H=0,I=0;w=v[a+336>>2];if(w>>>0>=2){D=v[a+340>>2];x=v[a+332>>2];E=v[a+348>>2];F=v[a+344>>2];G=v[a+272>>2];H=v[a+260>>2];a=1;while(1){g=B(a,160)+D|0;l=(a<<5)+x|0;c=v[l+16>>2];i=z[c+8>>2];l=v[((v[l+24>>2]<<5)+x|0)+16>>2];h=C(z[c+24>>2]-z[l+24>>2]);n=C(h+h);h=z[c>>2];f=C(z[c+16>>2]-z[l+16>>2]);o=C(f+f);f=C(z[c+20>>2]-z[l+20>>2]);p=C(f+f);f=z[c+4>>2];b=C(C(i*n)+C(C(h*o)+C(p*f)));j=z[c+12>>2];k=C(C(j*j)+C(-.5));z[g+116>>2]=C(i*b)+C(C(n*k)-C(j*C(C(h*p)-C(o*f))));z[g+112>>2]=C(f*b)+C(C(p*k)-C(j*C(C(i*o)-C(n*h))));z[g+108>>2]=C(h*b)+C(C(o*k)-C(j*C(C(f*n)-C(p*i))));n=z[l+16>>2];o=z[c+16>>2];p=z[l+20>>2];b=z[c+20>>2];z[g+128>>2]=z[c+24>>2]-z[l+24>>2];z[g+124>>2]=b-p;z[g+120>>2]=o-n;c=B(a,76);y=c+G|0;A=c+H|0;u=v[A+72>>2];v[y+72>>2]=u;if(u){n=C(-f);o=C(-h);p=C(-i);I=B(a,80)+F|0;l=0;while(1){t=B(l,24);c=A+t|0;m=z[c+20>>2];r=z[c+16>>2];s=z[c+12>>2];g=t+y|0;b=z[c+8>>2];b=C(b+b);d=z[c>>2];d=C(d+d);e=z[c+4>>2];e=C(e+e);q=C(C(i*b)+C(C(h*d)+C(f*e)));z[g+8>>2]=C(i*q)+C(C(b*k)+C(j*C(C(h*e)+C(d*n))));z[g+4>>2]=C(f*q)+C(C(e*k)+C(j*C(C(i*d)+C(b*o))));z[g>>2]=C(h*q)+C(C(d*k)+C(j*C(C(f*b)+C(e*p))));b=C(m+m);d=C(s+s);e=C(r+r);m=C(C(i*b)+C(C(h*d)+C(f*e)));z[g+20>>2]=C(i*m)+C(C(b*k)+C(j*C(C(h*e)+C(d*n))));z[g+16>>2]=C(f*m)+C(C(e*k)+C(j*C(C(i*d)+C(b*o))));z[g+12>>2]=C(h*m)+C(C(d*k)+C(j*C(C(f*b)+C(e*p))));c=t+I|0;m=z[c+8>>2];r=z[c+4>>2];s=z[c>>2];g=(B(a,96)+E|0)+t|0;b=z[c+20>>2];b=C(b+b);d=z[c+12>>2];d=C(d+d);e=z[c+16>>2];e=C(e+e);q=C(C(i*b)+C(C(h*d)+C(f*e)));z[g+44>>2]=C(i*q)+C(C(b*k)+C(j*C(C(h*e)+C(d*n))));z[g+40>>2]=C(f*q)+C(C(e*k)+C(j*C(C(i*d)+C(b*o))));z[g+36>>2]=C(h*q)+C(C(d*k)+C(j*C(C(f*b)+C(e*p))));b=C(m+m);d=C(s+s);e=C(r+r);m=C(C(i*b)+C(C(h*d)+C(f*e)));z[g+32>>2]=C(i*m)+C(C(b*k)+C(j*C(C(h*e)+C(d*n))));z[g+28>>2]=C(f*m)+C(C(e*k)+C(j*C(C(i*d)+C(b*o))));z[g+24>>2]=C(h*m)+C(C(d*k)+C(j*C(C(f*b)+C(e*p))));l=l+1|0;if((u|0)!=(l|0)){continue}break}}a=a+1|0;if((w|0)!=(a|0)){continue}break}}}function NZ(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0;h=xa-3616|0;xa=h;j=z[d+8>>2];i=C(z[c+24>>2]-z[d+24>>2]);k=C(i+i);l=z[d>>2];i=C(z[c+16>>2]-z[d+16>>2]);m=C(i+i);i=C(z[c+20>>2]-z[d+20>>2]);n=C(i+i);o=z[d+4>>2];p=C(C(j*k)+C(C(l*m)+C(n*o)));i=z[d+12>>2];q=C(C(i*i)+C(-.5));r=C(C(j*p)+C(C(k*q)-C(i*C(C(l*n)-C(m*o)))));z[h+3608>>2]=r;s=C(C(o*p)+C(C(n*q)-C(i*C(C(j*m)-C(k*l)))));z[h+3604>>2]=s;j=C(C(l*p)+C(C(m*q)-C(i*C(C(o*k)-C(n*j)))));z[h+3600>>2]=j;i=C(z[a+4>>2]+z[e>>2]);e=v[b+40>>2];a:{if(!(z[b+4>>2]!=C(1)|z[b+8>>2]!=C(1)|z[b+12>>2]!=C(1))){v[h+3504>>2]=g;v[h+2732>>2]=0;v[h+168>>2]=0;z[h+164>>2]=i*i;v[h+156>>2]=f;v[h+152>>2]=d;v[h+148>>2]=c;v[h+3508>>2]=e;v[h+144>>2]=a;v[h+160>>2]=h+3600;v[h+136>>2]=142644;v[h+140>>2]=2;z[h+3576>>2]=i;z[h+3572>>2]=i;z[h+3564>>2]=r;z[h+3560>>2]=s;v[h+3552>>2]=1065353216;a=h+3536|0;v[a>>2]=1065353216;v[a+4>>2]=0;z[h+3568>>2]=i;z[h+3556>>2]=j;v[h+3544>>2]=0;v[h+3548>>2]=0;v[h+3528>>2]=0;v[h+3532>>2]=0;v[h+3520>>2]=1065353216;v[h+3524>>2]=0;Ba[v[(x[e+4>>1]<<2)+142656>>2]](e,h+3520|0,h+136|0,1,1);break a}t=h+3520|0;JX(t,b+4|0,b+16|0);v[h+3504>>2]=g;v[h+2732>>2]=0;v[h+168>>2]=0;z[h+164>>2]=i*i;v[h+156>>2]=f;v[h+152>>2]=d;v[h+148>>2]=c;v[h+3508>>2]=e;v[h+160>>2]=h+3600;v[h+144>>2]=a;v[h+136>>2]=142684;v[h+3512>>2]=t;v[h+140>>2]=2;z[h+128>>2]=r;z[h+124>>2]=s;z[h+120>>2]=j;z[h+112>>2]=i;z[h+108>>2]=i;z[h+104>>2]=i;v[h+96>>2]=1065353216;v[h+80>>2]=1065353216;v[h+84>>2]=0;v[h+88>>2]=0;v[h+92>>2]=0;v[h+72>>2]=0;v[h+76>>2]=0;v[h+64>>2]=1065353216;v[h+68>>2]=0;nZ(t,h+120|0,h+104|0,h- -64|0);a=v[h+88>>2];v[h+20>>2]=v[h+84>>2];v[h+24>>2]=a;a=v[h+96>>2];v[h+28>>2]=v[h+92>>2];v[h+32>>2]=a;z[h+44>>2]=z[h+128>>2];z[h+56>>2]=z[h+112>>2];z[h>>2]=z[h+64>>2];a=v[h+72>>2];v[h+4>>2]=v[h+68>>2];v[h+8>>2]=a;a=v[h+80>>2];v[h+12>>2]=v[h+76>>2];v[h+16>>2]=a;a=v[h+124>>2];v[h+36>>2]=v[h+120>>2];v[h+40>>2]=a;a=v[h+108>>2];v[h+48>>2]=v[h+104>>2];v[h+52>>2]=a;Ba[v[(x[e+4>>1]<<2)+142656>>2]](e,h,h+136|0,1,1)}v[h+136>>2]=142644;OZ(h+144|0);xa=h+3616|0;return v[f+4096>>2]!=0}function B1(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0;f=xa-48|0;xa=f;a:{if(w[a+16|0]){m=z[c>>2];z[f>>2]=m;n=z[c+4>>2];z[f+4>>2]=n;i=z[c+8>>2];z[f+12>>2]=z[d>>2];z[f+16>>2]=z[d+4>>2];z[f+20>>2]=z[d+8>>2];z[f+24>>2]=z[e>>2];z[f+28>>2]=z[e+4>>2];z[f+32>>2]=z[e+8>>2];break a}h=v[a+8>>2];i=z[h+32>>2];o=z[h+20>>2];p=z[h+28>>2];q=z[h+16>>2];F=w[h+72|0];r=z[h+8>>2];s=z[h+4>>2];u=z[c>>2];x=z[h>>2];y=z[c+4>>2];A=z[h+12>>2];D=z[c+8>>2];E=z[h+24>>2];m=C(C(C(u*x)+C(y*A))+C(D*E));z[f>>2]=m;n=C(C(C(u*s)+C(y*q))+C(D*p));z[f+4>>2]=n;c=(F?24:12)+f|0;j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);c=(F?12:24)+f|0;j=z[e>>2];k=z[e+4>>2];l=z[e+8>>2];z[c+8>>2]=C(C(r*j)+C(o*k))+C(i*l);z[c+4>>2]=C(C(s*j)+C(q*k))+C(p*l);z[c>>2]=C(C(x*j)+C(A*k))+C(E*l);i=C(C(C(u*r)+C(y*o))+C(D*i))}z[f+8>>2]=i;h=v[b+8>>2];b=v[a+12>>2];if(b){b=w[b+h|0]}else{b=56}e=a+20|0;d=v[a+868>>2];if((d|0)==16){c=a+880|0;M1(c,e,v[a+788>>2],w[a+852|0]);M1(c,a+56|0,v[a+792>>2],w[a+853|0]);M1(c,a+92|0,v[a+796>>2],w[a+854|0]);M1(c,a+128|0,v[a+800>>2],w[a+855|0]);M1(c,a+164|0,v[a+804>>2],w[a+856|0]);M1(c,a+200|0,v[a+808>>2],w[a+857|0]);M1(c,a+236|0,v[a+812>>2],w[a+858|0]);M1(c,a+272|0,v[a+816>>2],w[a+859|0]);M1(c,a+308|0,v[a+820>>2],w[a+860|0]);M1(c,a+344|0,v[a+824>>2],w[a+861|0]);M1(c,a+380|0,v[a+828>>2],w[a+862|0]);M1(c,a+416|0,v[a+832>>2],w[a+863|0]);M1(c,a+452|0,v[a+836>>2],w[a+864|0]);M1(c,a+488|0,v[a+840>>2],w[a+865|0]);M1(c,a+524|0,v[a+844>>2],w[a+866|0]);M1(c,a+560|0,v[a+848>>2],w[a+867|0]);i=z[f+8>>2];n=z[f+4>>2];m=z[f>>2];d=0}v[a+868>>2]=d+1;c=e+B(d,36)|0;z[c+8>>2]=i;z[c+4>>2]=n;z[c>>2]=m;z[c+12>>2]=z[f+12>>2];z[c+16>>2]=z[f+16>>2];z[c+20>>2]=z[f+20>>2];z[c+24>>2]=z[f+24>>2];z[c+28>>2]=z[f+28>>2];z[c+32>>2]=z[f+32>>2];a=B(d,12)+a|0;v[a+596>>2]=v[g>>2];v[a+600>>2]=v[g+4>>2];v[a+604>>2]=v[g+8>>2];v[(e+(d<<2)|0)+768>>2]=h;t[(d+e|0)+832|0]=b;xa=f+48|0;return 1}function on(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;v[a>>2]=121976;b=v[a+8>>2];a:{if(!b){break a}f=v[a+4>>2];if((b|0)!=1){i=b&-2;while(1){g=c<<2;h=g+f|0;e=v[h>>2];if(e){Ba[v[v[e>>2]+4>>2]](e)}v[h>>2]=0;g=f+(g|4)|0;e=v[g>>2];if(e){Ba[v[v[e>>2]+4>>2]](e)}v[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=v[b>>2];if(c){Ba[v[v[c>>2]+4>>2]](c)}v[b>>2]=0}c=0;v[a+8>>2]=0;d=0;e=xa-16|0;xa=e;b=a+24|0;f=v[b+20>>2];if(f){h=b+4|0;while(1){i=v[b+16>>2];g=d<<2;j=v[i+g>>2];if(j){f=x[j+52>>1];v[e+12>>2]=f;b:{if((f|0)==(v[b>>2]-1|0)){v[b>>2]=f;break b}j=v[b+8>>2];if(j>>>0>=(v[b+12>>2]&2147483647)>>>0){pn(h,e+12|0);i=v[b+16>>2];break b}v[v[b+4>>2]+(j<<2)>>2]=f;v[b+8>>2]=v[b+8>>2]+1}f=v[g+i>>2];Ba[v[v[f>>2]>>2]](f);v[g+v[b+16>>2]>>2]=0;f=v[b+20>>2]}d=d+1|0;if(d>>>0>>0){continue}break}}b=v[b+16>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}xa=e+16|0;d=v[a+92>>2];c:{if(!d){break c}f=v[a+60>>2];while(1){b=v[(f+(c<<3)|0)+4>>2];if(b){e=v[b>>2];if(e){i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,e)}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b)}c=c+1|0;if((d|0)!=(c|0)){continue}break}c=v[a+76>>2];if(!c|!v[a+92>>2]){break c}J9(v[a+68>>2],255,c<<2);c=0;b=v[a- -64>>2];d=v[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;v[b+(c<<2)>>2]=g;h=b+(g<<2)|0;g=c|2;v[h>>2]=g;h=b+(g<<2)|0;g=c|3;v[h>>2]=g;c=c+4|0;v[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;v[h>>2]=c;f=f+1|0;if((d|0)!=(f|0)){continue}break}}h=v[a+72>>2]-1|0}else{h=0}v[b+(h<<2)>>2]=-1;v[a+92>>2]=0;v[a+84>>2]=0}c=v[a+104>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+56>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+52>>2];if(c){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}c=v[a+36>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=v[a+28>>2];if(!c){break d}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}v[37415]=0;c=v[a+12>>2];e:{if((c|0)<0|!(c&2147483647)){break e}c=v[a+4>>2];if(!c){break e}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}return a|0}function dw(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0);D=z[c+100>>2];E=z[c+104>>2];F=z[c+112>>2];G=z[c+116>>2];H=z[c+120>>2];I=z[c+128>>2];J=z[c+132>>2];K=z[c+136>>2];s=z[c+52>>2];t=z[c+56>>2];u=z[c+68>>2];w=z[c+72>>2];o=z[c+84>>2];p=z[c+88>>2];x=z[c- -64>>2];y=z[c+80>>2];h=z[c+20>>2];i=z[c+24>>2];q=z[c+28>>2];g=z[c+36>>2];B=z[c+40>>2];r=z[c+44>>2];L=z[c+96>>2];A=z[c+48>>2];d=z[b+8>>2];e=z[b>>2];f=z[b+4>>2];j=z[c>>2];k=z[c+4>>2];l=z[c+8>>2];M=z[c+12>>2];m=z[c+16>>2];n=z[c+32>>2];v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;v[a+92>>2]=0;v[a+76>>2]=0;v[a+60>>2]=0;z[a+44>>2]=r;z[a+40>>2]=B;z[a+36>>2]=g;z[a+32>>2]=n;z[a+28>>2]=q;z[a+24>>2]=i;z[a+20>>2]=h;z[a+16>>2]=m;z[a+12>>2]=M;z[a+8>>2]=l;z[a+4>>2]=k;z[a>>2]=j;q=C(C(e*m)-C(f*j));z[a+80>>2]=y+q;j=C(C(d*j)-C(e*n));z[a- -64>>2]=x+j;m=C(C(f*n)-C(d*m));z[a+48>>2]=A+m;n=C(C(e*i)-C(f*l));z[a+88>>2]=p+n;r=C(C(e*h)-C(f*k));z[a+84>>2]=o+r;l=C(C(d*l)-C(e*B));z[a+72>>2]=w+l;k=C(C(d*k)-C(e*g));z[a+68>>2]=u+k;i=C(C(f*B)-C(d*i));z[a+56>>2]=t+i;h=C(C(f*g)-C(d*h));z[a+52>>2]=s+h;g=C(C(C(C(e*o)+C(p*C(0)))-C(f*y))+C(C(C(n*C(0))+C(C(e*r)-C(f*q)))*C(.5)));z[a+136>>2]=K+C(g+g);g=C(C(C(C(d*y)+C(C(o*C(0))-C(e*p)))+C(C(C(C(d*q)+C(r*C(0)))-C(e*n))*C(.5)))+C(C(C(C(e*u)+C(w*C(0)))-C(f*x))+C(C(C(l*C(0))+C(C(e*k)-C(f*j)))*C(.5))));z[a+132>>2]=J+g;o=C(C(C(C(y*C(0))+C(C(f*p)-C(d*o)))+C(C(C(f*n)+C(C(q*C(0))-C(d*r)))*C(.5)))+C(C(C(C(e*s)+C(t*C(0)))-C(f*A))+C(C(C(i*C(0))+C(C(e*h)-C(f*m)))*C(.5))));z[a+128>>2]=I+o;z[a+120>>2]=H+g;p=C(C(C(d*x)+C(C(u*C(0))-C(e*w)))+C(C(C(C(d*j)+C(k*C(0)))-C(e*l))*C(.5)));z[a+116>>2]=G+C(p+p);e=C(C(C(C(d*A)+C(C(s*C(0))-C(e*t)))+C(C(C(C(d*m)+C(h*C(0)))-C(e*i))*C(.5)))+C(C(C(x*C(0))+C(C(f*w)-C(d*u)))+C(C(C(f*l)+C(C(j*C(0))-C(d*k)))*C(.5))));z[a+112>>2]=F+e;z[a+104>>2]=E+o;z[a+100>>2]=D+e;d=C(C(C(A*C(0))+C(C(f*t)-C(d*s)))+C(C(C(f*i)+C(C(m*C(0))-C(d*h)))*C(.5)));z[a+96>>2]=L+C(d+d)}function wj(a,b,c){var d=0,e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);d=xa-96|0;xa=d;ou(a+20|0,b,c,a);f=v[a+52>>2];a:{if(!(t[(f&1?v[a+56>>2]:(v[((f>>>22&60)+89188|0)+12>>2]+a|0)+56|0)|0]&1)){break a}b:{c:{d:{if(!(!(w[c+5580|0]&32)|!w[c+5248|0])){g=z[c+5152>>2];break d}g=z[v[c+1008>>2]+1032>>2];if(!(w[c+5580|0]&32)){break c}}if(!w[c+5258|0]){break c}e=z[c+5192>>2];break b}e=z[v[c+1008>>2]+1072>>2]}e=C(g*e);if(e!=C(0)){f=d+32|0;Ba[v[v[a>>2]+76>>2]](f,a);f=ZU(b,f);v[d+20>>2]=-16776961;v[d+12>>2]=-65536;v[d+16>>2]=-16711936;z[d+8>>2]=e;z[d+4>>2]=e;z[d>>2]=e;bV(f,d)}if(!(w[c+5580|0]&32)|!w[c+5250|0]){e=z[v[c+1008>>2]+1040>>2]}else{e=z[c+5160>>2]}e=C(g*e);if(e!=C(0)){f=ZU(b,a+256|0);v[d+52>>2]=-16776961;v[d+44>>2]=-65536;v[d+48>>2]=-16711936;z[d+40>>2]=e;z[d+36>>2]=e;z[d+32>>2]=e;bV(f,d+32|0)}if(!(w[c+5580|0]&32)|!w[c+5252|0]){e=z[v[c+1008>>2]+1048>>2]}else{e=z[c+5168>>2]}e=C(g*e);if(e!=C(0)){v[b+4>>2]=16777215;v[d+44>>2]=0;v[d+48>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;v[d+52>>2]=1065353216;f=d- -64|0;v[f>>2]=0;v[f+4>>2]=0;v[d+76>>2]=0;v[d+80>>2]=0;v[d+72>>2]=1065353216;v[d+84>>2]=0;v[d+88>>2]=0;v[d+92>>2]=1065353216;v[d+36>>2]=0;v[d+40>>2]=0;v[d+32>>2]=1065353216;f=YU(b,d+32|0);k=z[a+284>>2];l=z[a+292>>2];i=z[a+288>>2];h=z[a+272>>2];z[d>>2]=h;m=z[a+276>>2];z[d+4>>2]=m;j=z[a+280>>2];z[d+16>>2]=m+C(e*i);z[d+20>>2]=j+C(e*l);z[d+24>>2]=e*C(.20000000298023224);z[d+12>>2]=h+C(e*k);z[d+8>>2]=j;aV(f,d)}if(!(w[c+5580|0]&32)|!w[c+5253|0]){e=z[v[c+1008>>2]+1052>>2]}else{e=z[c+5172>>2]}g=C(g*e);if(g==C(0)){break a}v[b+4>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;v[d+52>>2]=1065353216;c=d- -64|0;v[c>>2]=0;v[c+4>>2]=0;v[d+76>>2]=0;v[d+80>>2]=0;v[d+72>>2]=1065353216;v[d+84>>2]=0;v[d+88>>2]=0;v[d+92>>2]=1065353216;v[d+36>>2]=0;v[d+40>>2]=0;v[d+32>>2]=1065353216;b=YU(b,d+32|0);j=z[a+296>>2];k=z[a+304>>2];l=z[a+300>>2];i=z[a+272>>2];z[d>>2]=i;h=z[a+276>>2];z[d+4>>2]=h;e=z[a+280>>2];z[d+16>>2]=h+C(g*l);z[d+20>>2]=e+C(g*k);z[d+24>>2]=g*C(.20000000298023224);z[d+12>>2]=i+C(g*j);z[d+8>>2]=e;aV(b,d)}xa=d+96|0}function _w(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=0,V=0,W=0;d=xa+-64|0;xa=d;f=v[b+444>>2];m=v[b+264>>2];e=w[v[b+476>>2]];v[d+56>>2]=0;v[d+60>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;if(!(e&1)){F=z[b+560>>2];G=z[b+572>>2];H=z[b+584>>2];I=z[b+564>>2];J=z[b+576>>2];K=z[b+588>>2];L=z[b+568>>2];M=z[b+580>>2];N=z[b+592>>2];O=z[b+620>>2];P=z[b+608>>2];Q=z[b+596>>2];r=z[b+524>>2];n=z[b+528>>2];o=z[b+532>>2];p=z[b+624>>2];R=z[b+612>>2];S=z[b+600>>2];t=z[b+536>>2];u=z[b+540>>2];x=z[b+544>>2];y=z[b+548>>2];q=z[m+16>>2];i=C(-q);A=z[b+552>>2];h=z[m+20>>2];D=z[b+556>>2];g=z[m+24>>2];j=C(-z[m+4>>2]);k=z[m>>2];l=z[m+8>>2];s=C(C(C(C(y*i)-C(A*h))-C(D*g))+C(C(C(z[b+616>>2]*j)-C(k*z[b+604>>2]))-C(l*z[b+628>>2])));z[d+56>>2]=s;p=C(C(C(C(t*i)-C(u*h))-C(x*g))+C(C(C(R*j)-C(k*S))-C(l*p)));z[d+52>>2]=p;i=C(C(C(C(r*i)-C(n*h))-C(o*g))+C(C(C(P*j)-C(k*Q))-C(l*O)));z[d+48>>2]=i;h=C(-h);o=C(C(C(C(x*j)-C(k*o))-C(l*D))+C(C(C(M*h)-C(q*L))-C(g*N)));z[d+40>>2]=o;n=C(C(C(C(u*j)-C(k*n))-C(l*A))+C(C(C(J*h)-C(q*I))-C(g*K)));z[d+36>>2]=n;g=C(C(C(C(t*j)-C(k*r))-C(l*y))+C(C(C(G*h)-C(q*F))-C(g*H)));z[d+32>>2]=g}E=c<<5;f=E+f|0;e=v[f+8>>2];c=e-1|0;f=v[f+12>>2]-!e|0;if(c|f){while(1){T=v[b+452>>2];e=c;e=(U=Raa(e),V=Raa(f)+32|0,W=e,W?U:V);$w(d,(T+B(e,160)|0)+120|0,v[b+348>>2]+B(e,112)|0,v[b+360>>2]+B(e,36)|0,v[b+384>>2]+B(e,76)|0,(e<<5)+m|0,d+32|0);v[d+44>>2]=0;v[d+60>>2]=0;g=z[d>>2];z[d+32>>2]=g;n=z[d+4>>2];z[d+36>>2]=n;o=z[d+8>>2];z[d+40>>2]=o;i=z[d+16>>2];z[d+48>>2]=i;p=z[d+20>>2];z[d+52>>2]=p;s=z[d+24>>2];z[d+56>>2]=s;e=c;c=e-1&e;f=f&f-!e;if(c|f){continue}break}}b=E+v[b+228>>2]|0;j=z[b+20>>2];k=z[b+24>>2];l=z[b+16>>2];q=z[b>>2];h=z[b+4>>2];r=z[b+8>>2];v[a+28>>2]=0;z[a+24>>2]=r+o;z[a+20>>2]=h+n;z[a+16>>2]=q+g;v[a+12>>2]=0;z[a>>2]=l+i;z[a+8>>2]=k+s;z[a+4>>2]=j+p;xa=d- -64|0}function kZ(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0,w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0);j=xa-112|0;xa=j;l=z[d>>2];k=z[d+4>>2];z[j+40>>2]=C(1)/z[d+8>>2];z[j+36>>2]=C(1)/k;z[j+32>>2]=C(1)/l;z[j+44>>2]=z[d+12>>2];z[j+48>>2]=z[d+16>>2];z[j+52>>2]=z[d+20>>2];z[j+56>>2]=z[d+24>>2];k=z[b+8>>2];p=C(z[b+24>>2]*C(-2));m=z[b>>2];n=C(z[b+16>>2]*C(-2));q=C(z[b+20>>2]*C(-2));o=z[b+4>>2];r=C(C(k*p)+C(C(m*n)+C(q*o)));l=z[b+12>>2];s=C(C(l*l)+C(-.5));z[j+24>>2]=C(k*r)+C(C(p*s)-C(l*C(C(m*q)-C(n*o))));z[j+20>>2]=C(o*r)+C(C(q*s)-C(l*C(C(k*n)-C(p*m))));z[j+12>>2]=l;z[j+8>>2]=-k;z[j+4>>2]=-o;z[j>>2]=-m;z[j+16>>2]=C(m*r)+C(C(n*s)-C(l*C(C(o*p)-C(q*k))));bX(j- -64|0,j+32|0,j);a:{if(!e){break a}u=v[c+16>>2];if(!u){break a}q=z[j+84>>2];l=C(-z[h+4>>2]);k=z[h>>2];r=z[j+72>>2];m=z[h+8>>2];s=z[j+96>>2];H=C(C(C(q*l)-C(k*r))-C(m*s));w=z[j+80>>2];x=z[j+68>>2];y=z[j+92>>2];I=C(C(C(w*l)-C(k*x))-C(m*y));A=z[j+76>>2];D=z[j+64>>2];E=z[j+88>>2];J=C(C(C(A*l)-C(k*D))-C(m*E));K=C(C(g+i)+C(-9999999747378752e-21));L=v[c+24>>2];M=z[j+108>>2];N=z[j+104>>2];O=z[j+100>>2];t=v[a+4096>>2];c=0;while(1){b=B(c,12)+f|0;m=z[b>>2];o=z[b+4>>2];p=z[b+8>>2];P=C(C(C(C(r*m)+C(q*o))+C(s*p))+M);Q=C(C(C(C(x*m)+C(w*o))+C(y*p))+N);R=C(O+C(C(C(D*m)+C(A*o))+C(E*p)));l=C(34028234663852886e22);b=u;d=L;i=C(-34028234663852886e22);b:{while(1){k=z[d+8>>2];n=z[d>>2];F=z[d+4>>2];G=C(z[d+12>>2]+C(C(P*k)+C(C(R*n)+C(Q*F))));n=C(C(k*H)+C(C(n*J)+C(I*F)));k=C(C(-G)/n);c:{if(n>C(1.0000000116860974e-7)){l=k>l?l:k;break c}if(nk?i:k;break c}if(G>C(0)){break b}}d=d+20|0;b=b-1|0;if(b){continue}break}if(!(i>>0>63|i==C(-34028234663852886e22))){break b}l=z[h>>2];k=z[h+4>>2];n=z[h+8>>2];b=t+1|0;v[a+4096>>2]=b;d=(t<<6)+a|0;z[d+8>>2]=n;z[d+4>>2]=k;z[d>>2]=l;v[d+52>>2]=-1;z[d+12>>2]=i-g;z[d+24>>2]=p-C(i*n);z[d+20>>2]=o-C(i*k);z[d+16>>2]=m-C(i*l);t=b}c=c+1|0;if((e|0)!=(c|0)){continue}break}}xa=j+112|0}function Fv(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=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=0,r=0,s=0,u=0,w=0,x=0;i=xa-720|0;xa=i;q=v[f>>2];j=z[a+8>>2];k=z[a+4>>2];l=z[a+12>>2];z[i+716>>2]=l;z[i+712>>2]=j;z[i+708>>2]=k;z[i+704>>2]=-l;z[i+700>>2]=-j;z[i+696>>2]=-k;f=0;a:{if(z[b+4>>2]!=C(1)){break a}f=0;if(z[b+8>>2]!=C(1)){break a}f=z[b+12>>2]==C(1)}v[i+680>>2]=0;v[i+684>>2]=1065353216;v[i+672>>2]=0;v[i+676>>2]=0;v[i+664>>2]=0;v[i+668>>2]=1065353216;v[i+656>>2]=0;v[i+660>>2]=0;v[i+648>>2]=1065353216;v[i+652>>2]=1065353216;v[i+632>>2]=1065353216;v[i+636>>2]=0;t[i+688|0]=0;v[i+640>>2]=0;v[i+644>>2]=0;v[i+624>>2]=0;v[i+628>>2]=0;v[i+616>>2]=1065353216;v[i+620>>2]=0;if(!f){JX(i+616|0,b+4|0,b+16|0);l=z[a+12>>2];k=z[a+4>>2];j=z[a+8>>2]}v[i+600>>2]=0;v[i+604>>2]=1065353216;v[i+592>>2]=0;v[i+596>>2]=0;v[i+584>>2]=0;v[i+588>>2]=1065353216;v[i+576>>2]=0;v[i+580>>2]=0;v[i+568>>2]=1065353216;v[i+572>>2]=1065353216;v[i+552>>2]=1065353216;v[i+556>>2]=0;t[i+608|0]=0;v[i+560>>2]=0;v[i+564>>2]=0;v[i+544>>2]=0;v[i+548>>2]=0;v[i+536>>2]=1065353216;v[i+540>>2]=0;o=C(z[e+8>>2]*C(.05000000074505806));m=j>=k?k:j;p=l>=m?m:l;m=C(p*C(.15000000596046448));z[i+512>>2]=m>o?o:m;v[i+508>>2]=0;z[i+504>>2]=l;z[i+500>>2]=j;v[i+456>>2]=0;v[i+460>>2]=0;v[i+448>>2]=0;v[i+452>>2]=0;z[i+496>>2]=k;t[i+480|0]=0;v[i+476>>2]=3;j=C(p*C(.05000000074505806));z[i+472>>2]=j;z[i+468>>2]=j;z[i+464>>2]=m;j=z[c+24>>2];n=v[c>>2];r=v[c+4>>2];s=v[c+8>>2];u=v[c+12>>2];w=v[c+20>>2];x=v[c+16>>2];v[i+444>>2]=0;z[i+440>>2]=j;v[i+432>>2]=x;v[i+436>>2]=w;v[i+424>>2]=s;v[i+428>>2]=u;v[i+416>>2]=n;v[i+420>>2]=r;n=z_(i+120|0,a+4|0);a=i+344|0;k2(n,a);v[i+88>>2]=0;v[i+92>>2]=0;v[i+84>>2]=1065353216;v[i+96>>2]=0;v[i+100>>2]=0;v[i+104>>2]=1065353216;v[i+108>>2]=0;v[i+68>>2]=0;v[i+72>>2]=0;v[i+64>>2]=1065353216;v[i+76>>2]=0;v[i+80>>2]=0;t[i+44|0]=1;v[i>>2]=141108;n=i- -64|0;v[i+40>>2]=n;v[i+36>>2]=n;v[i+32>>2]=i+416;v[i+48>>2]=i+448;a=T1(a,i,i+512|0,i+696|0,b,c,d,z[e>>2],g,i+536|0,i+616|0,1,f,q,h);xa=i+720|0;return a|0} +function oJ(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=0;i=xa-16|0;xa=i;g=v[b+44>>2];a:{b:{if(g&32768){c:{if(!(g&476)){break c}g=g&(g&524288?272:16);if(g){SR(b,g,(x[v[b+48>>2]+2>>1]==1)<<3,1,d,e)}g=v[v[b+48>>2]+16>>2];if(!g|v[g+12>>2]!=v[v[v[b+4>>2]+40>>2]+1088>>2]){break c}e=16;d:{if(!(c&1)){break d}e=17;if(!(w[g+10|0]&8)){break d}h=v[b+48>>2];j=v[h+12>>2];d=v[v[v[v[b+4>>2]+40>>2]+2168>>2]+44>>2]+v[g>>2]|0;h=v[v[h+8>>2]+44>>2];e:{if(w[h+9|0]){z[d+12>>2]=z[h+80>>2];z[d+16>>2]=z[h+84>>2];z[d+20>>2]=z[h+88>>2];k=z[h+100>>2];l=z[h+96>>2];m=z[h+104>>2];break e}v[d+20>>2]=0;v[d+12>>2]=0;v[d+16>>2]=0;m=C(0)}z[d+44>>2]=m;z[d+40>>2]=k;z[d+36>>2]=l;h=v[j+44>>2];f:{if(w[h+9|0]){z[d+24>>2]=z[h+80>>2];z[d+28>>2]=z[h+84>>2];z[d+32>>2]=z[h+88>>2];l=z[h+96>>2];n=z[h+104>>2];k=z[h+100>>2];break f}v[d+32>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;l=C(0);k=C(0)}z[d+56>>2]=n;z[d+52>>2]=k;z[d+48>>2]=l;u[g+10>>1]=x[g+10>>1]&65527}u[g+10>>1]=x[g+10>>1]|e}g=v[v[b+28>>2]+4>>2];h=w[v[g+44>>2]+9|0];j=v[v[b+32>>2]+4>>2];o=w[v[j+44>>2]+9|0];d=v[b+48>>2];e=x[d+2>>1]-1|0;u[d+2>>1]=e;if(!(e&65535?f:1)){break b}e=v[(h-1>>>0<2?g:0)+100>>2];v[e+152>>2]=v[e+152>>2]-1;e=o-1>>>0<2?j:0;if(!e){break b}e=v[e+100>>2];v[e+152>>2]=v[e+152>>2]-1;break b}d=v[b+48>>2];if(!d){break a}}e=x[d+4>>1]-1|0;u[d+4>>1]=e;if(e&65535){break a}e=v[b+4>>2];f=v[b+8>>2];g=y[e+48>>2]>y[f+48>>2];v[i+8>>2]=v[(g?f:e)+48>>2];v[i+12>>2]=v[(g?e:f)+48>>2];FI(a+1916|0,i+8|0);if(!(t[d|0]&1)){v[a+392>>2]=v[a+392>>2]-1;v[d>>2]=v[a+400>>2];v[a+400>>2]=d;break a}e=v[d+16>>2];if(e){f=a+1560|0;v[f>>2]=v[f>>2]-1;f=a+1568|0;v[e>>2]=v[f>>2];v[f>>2]=e;v[d+16>>2]=0}v[a+684>>2]=v[a+684>>2]-1;v[d>>2]=v[a+692>>2];v[a+692>>2]=d}v[b+48>>2]=0;d=v[b+44>>2];g:{if(!(d&32768)){e=v[b+56>>2];h:{if(e){d=w[e+43|0]&3;break h}d=d&98304}if(d){break g}}if(!(c&4)){break g}c=v[v[b+28>>2]+4>>2];c=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;d=v[v[b+32>>2]+4>>2];d=w[v[d+44>>2]+9|0]-1>>>0<2?d:0;if(!(d?c:0)){if(c){pH(c)}if(!d){break g}pH(d);break g}if(w[b+46|0]&4){break g}BP(v[a>>2],c,d)}xa=i+16|0}function VR(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=xa-16|0;xa=g;f=v[a+44>>2];c=v[v[a+4>>2]+40>>2];e=w[a+26|0]|b;a:{if(!(e&33)){break a}b=v[v[a+32>>2]+4>>2];d=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;b=1;h=v[a+44>>2];i=h&262144;b:{c:{j=v[v[a+28>>2]+4>>2];d:{if(t[v[(w[v[j+44>>2]+9|0]-1>>>0<2?j:0)+44>>2]+44|0]&1){if(!d){break d}b=!(t[v[d+44>>2]+44|0]&1)}if(!(f&1)){break d}if(b){break c}}b=h|262144;break b}b=h&-262145}v[a+44>>2]=b;e:{f:{if(!(f&514|z[v[c+976>>2]+1056>>2]!=C(0)|(z[v[c+976>>2]+1060>>2]!=C(0)|z[v[c+976>>2]+1064>>2]!=C(0)))){if(z[v[c+976>>2]+1068>>2]==C(0)){break f}}b=v[a+44>>2]|131072;break e}b=v[a+44>>2]&-131073}v[a+44>>2]=b;d=b&262144;if(!(!d|i)){kG(v[c+1e3>>2],v[a+60>>2]);break a}if(!(b&32768)|(d|!i)){break a}iG(v[c+1e3>>2],v[a+60>>2])}g:{if(!(!v[a+56>>2]|(f^v[a+44>>2])&393694)){b=v[a+32>>2];f=v[a+28>>2];if(e&8){d=g+8|0;h=v[v[a+4>>2]+40>>2];c=v[f+4>>2];i=w[v[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+44>>2]+10|0];c=v[b+4>>2];c=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;if(c){c=w[v[c+44>>2]+10|0]}else{c=0}RP(d,h,i,c);c=v[a+56>>2];t[c+44|0]=w[g+8|0];t[c+45|0]=w[g+9|0]}h:{if(!(e&5)){break h}c=v[b+4>>2];c=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;if(!c){break h}d=v[a+56>>2];u[d+40>>1]=x[d+40>>1]&64511|(t[v[c+44>>2]+44|0]&1)<<10}c=v[a+56>>2];if(e&16){z[c+52>>2]=z[v[f+28>>2]+128>>2]+z[v[b+28>>2]+128>>2]}b=v[c+8>>2]&-7;v[c+8>>2]=(v[a+44>>2]&2048)>>>11|0?b|2:b;break g}if(!(w[a+25|0]&32)){break g}if(e&5){e=v[v[a+28>>2]+4>>2];d=B(v[(w[v[e+44>>2]+9|0]-1>>>0<2?e:0)+144>>2]>>>7|0,24);e=v[v[v[v[a+4>>2]+40>>2]+1e3>>2]+656>>2];b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(!(w[(d+e|0)+4|0]&34|(w[(e+B(v[b+144>>2]>>>7|0,24)|0)+4|0]&34?b:0))){WR(a);aP(c,a+4|0);break g}b=v[a+60>>2];if((b|0)!=-1){lG(v[c+1e3>>2],b)}b=v[v[a+4>>2]+40>>2];c=v[v[b+976>>2]+1024>>2];Ba[v[v[c>>2]+36>>2]](c,v[a+56>>2]);wK(v[b+976>>2],v[a+56>>2]);v[a+56>>2]=0;JR(a,0);break g}b=v[a+60>>2];if((b|0)!=-1){lG(v[c+1e3>>2],b)}b=v[v[a+4>>2]+40>>2];c=v[v[b+976>>2]+1024>>2];Ba[v[v[c>>2]+36>>2]](c,v[a+56>>2]);wK(v[b+976>>2],v[a+56>>2]);v[a+56>>2]=0;JR(a,0)}xa=g+16|0}function DO(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0);a:{if(d){g=z[c+40>>2];f=C(z[c+56>>2]*C(-2));i=z[c+32>>2];m=C(z[c+48>>2]*C(-2));n=C(z[c+52>>2]*C(-2));h=z[c+36>>2];o=C(C(g*f)+C(C(i*m)+C(n*h)));l=z[c+8>>2];e=z[c+44>>2];p=C(C(e*e)+C(-.5));j=C(C(g*o)+C(C(f*p)-C(e*C(C(i*n)-C(m*h)))));q=C(j+j);j=z[c>>2];k=C(C(i*o)+C(C(m*p)-C(e*C(C(h*f)-C(n*g)))));r=C(k+k);k=z[c+4>>2];f=C(C(h*o)+C(C(n*p)-C(e*C(C(g*m)-C(f*i)))));p=C(f+f);t=C(C(l*q)+C(C(j*r)+C(k*p)));f=z[c+12>>2];w=C(C(f*f)+C(-.5));m=C(C(i*k)+C(C(C(e*l)-C(f*g))-C(j*h)));n=z[b+24>>2];u=C(n+n);n=C(C(h*l)+C(C(C(e*j)-C(f*i))-C(k*g)));o=z[b+16>>2];v=C(o+o);o=C(C(g*j)+C(C(C(e*k)-C(f*h))-C(l*i)));s=z[b+20>>2];s=C(s+s);x=C(C(m*u)+C(C(n*v)+C(o*s)));e=C(C(l*g)+C(C(k*h)+C(C(f*e)+C(i*j))));g=C(C(e*e)+C(-.5));y=C(C(z[c+24>>2]+C(C(l*t)+C(C(q*w)+C(f*C(C(j*p)-C(r*k))))))+C(C(m*x)+C(C(u*g)+C(e*C(C(n*s)-C(v*o))))));A=C(C(z[c+20>>2]+C(C(k*t)+C(C(p*w)+C(f*C(C(l*r)-C(q*j))))))+C(C(o*x)+C(C(s*g)+C(e*C(C(m*v)-C(u*n))))));q=C(C(z[c+16>>2]+C(C(j*t)+C(C(r*w)+C(f*C(C(k*q)-C(p*l))))))+C(C(n*x)+C(C(v*g)+C(e*C(C(o*u)-C(s*m))))));f=z[b+12>>2];g=z[b>>2];i=z[b+4>>2];h=z[b+8>>2];r=C(C(C(C(e*f)-C(g*n))-C(o*i))-C(m*h));p=C(C(C(n*i)+C(C(e*h)+C(m*f)))-C(g*o));t=C(C(C(m*g)+C(C(e*i)+C(o*f)))-C(h*n));e=C(C(C(o*h)+C(C(e*g)+C(n*f)))-C(i*m));break a}f=z[c+8>>2];e=z[b+24>>2];h=C(e+e);g=z[c>>2];e=z[b+16>>2];l=C(e+e);e=z[b+20>>2];j=C(e+e);i=z[c+4>>2];k=C(C(f*h)+C(C(g*l)+C(j*i)));e=z[c+12>>2];m=C(C(e*e)+C(-.5));y=C(z[c+24>>2]+C(C(f*k)+C(C(h*m)+C(e*C(C(g*j)-C(l*i))))));A=C(z[c+20>>2]+C(C(i*k)+C(C(j*m)+C(e*C(C(f*l)-C(h*g))))));q=C(z[c+16>>2]+C(C(g*k)+C(C(l*m)+C(e*C(C(i*h)-C(j*f))))));h=z[b+12>>2];l=z[b>>2];j=z[b+4>>2];k=z[b+8>>2];r=C(C(C(C(e*h)-C(l*g))-C(i*j))-C(f*k));p=C(C(C(g*j)+C(C(e*k)+C(f*h)))-C(l*i));t=C(C(C(f*l)+C(C(e*j)+C(i*h)))-C(k*g));e=C(C(C(i*k)+C(C(e*l)+C(g*h)))-C(j*f))}z[a+16>>2]=q;z[a+12>>2]=r;z[a+8>>2]=p;z[a+4>>2]=t;z[a>>2]=e;z[a+24>>2]=y;z[a+20>>2]=A}function sA(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=0;n=v[a+24>>2];if(w[n+1|0]){a=n+48|0;k=z[e+8>>2];l=z[e+4>>2];j=z[e>>2];while(1){m=z[a+80>>2];p=z[a+88>>2];q=z[a>>2];r=z[a+32>>2];s=z[a+16>>2];t=z[a+48>>2];u=z[a+4>>2];x=z[a+36>>2];y=z[a+20>>2];A=z[a+52>>2];o=C(C(C(C(q*z[b>>2])+C(r*z[d>>2]))-C(C(s*z[c>>2])+C(t*j)))+C(C(C(u*z[b+4>>2])+C(x*z[d+4>>2]))-C(C(y*z[c+4>>2])+C(A*l))));j=z[a+8>>2];l=z[a+40>>2];B=z[a+24>>2];D=z[a+56>>2];k=C(C(z[a+60>>2]*p)+C(z[a+12>>2]+C(z[a+44>>2]*C(o+C(C(C(j*z[b+8>>2])+C(l*z[d+8>>2]))-C(C(B*z[c+8>>2])+C(D*k)))))));k=k>2];k=k>2]=k;v[f+12>>2]=0;o=j;j=C(k-p);z[f+8>>2]=z[f+8>>2]+C(o*j);z[f+4>>2]=z[f+4>>2]+C(u*j);z[f>>2]=z[f>>2]+C(q*j);v[h+12>>2]=0;z[h+8>>2]=z[h+8>>2]+C(l*j);z[h+4>>2]=z[h+4>>2]+C(x*j);z[h>>2]=z[h>>2]+C(r*j);v[g+12>>2]=0;z[g+8>>2]=C(B*j)+z[g+8>>2];z[g+4>>2]=C(y*j)+z[g+4>>2];z[g>>2]=C(s*j)+z[g>>2];v[i+12>>2]=0;z[i+8>>2]=C(D*j)+z[i+8>>2];z[i+4>>2]=C(A*j)+z[i+4>>2];z[i>>2]=C(t*j)+z[i>>2];k=z[a+100>>2];l=z[a+104>>2];m=z[a+96>>2];v[b+12>>2]=0;z[b+8>>2]=C(j*l)+z[b+8>>2];z[b+4>>2]=C(j*k)+z[b+4>>2];z[b>>2]=C(j*m)+z[b>>2];k=z[a+112>>2];l=z[a+116>>2];m=z[a+120>>2];v[d+12>>2]=0;z[d+8>>2]=C(j*m)+z[d+8>>2];z[d+4>>2]=C(j*l)+z[d+4>>2];z[d>>2]=C(j*k)+z[d>>2];k=z[a+132>>2];l=z[a+136>>2];m=z[a+128>>2];v[c+12>>2]=0;z[c+8>>2]=C(j*l)+z[c+8>>2];z[c+4>>2]=C(j*k)+z[c+4>>2];z[c>>2]=C(j*m)+z[c>>2];m=z[a+144>>2];l=z[a+148>>2];k=z[a+152>>2];v[e+12>>2]=0;k=C(C(j*k)+z[e+8>>2]);z[e+8>>2]=k;l=C(C(j*l)+z[e+4>>2]);z[e+4>>2]=l;j=C(C(j*m)+z[e>>2]);z[e>>2]=j;a=a+160|0;E=E+1|0;if(E>>>0>2];v[f+12>>2]=0;z[f+8>>2]=j*z[f+8>>2];z[f+4>>2]=j*z[f+4>>2];z[f>>2]=j*z[f>>2];j=z[n+40>>2];v[g+12>>2]=0;z[g+8>>2]=j*z[g+8>>2];z[g+4>>2]=j*z[g+4>>2];z[g>>2]=j*z[g>>2];j=z[n+36>>2];v[h+12>>2]=0;z[h+8>>2]=j*z[h+8>>2];z[h+4>>2]=j*z[h+4>>2];z[h>>2]=j*z[h>>2];j=z[n+44>>2];v[i+12>>2]=0;z[i+8>>2]=j*z[i+8>>2];z[i+4>>2]=j*z[i+4>>2];z[i>>2]=j*z[i>>2]}function q1(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0);l=z[d+40>>2];t=z[c+8>>2];n=z[d+32>>2];m=z[c>>2];j=z[d+36>>2];k=z[c+4>>2];u=C(C(l*t)+C(C(n*m)+C(j*k)));s=C(D(u));i=z[e+8>>2];f=z[e+4>>2];g=z[e>>2];h=z[d+8>>2];q=z[d>>2];r=z[d+4>>2];o=C(C(h*t)+C(C(q*m)+C(r*k)));x=C(D(o));p=z[d+24>>2];w=C(p*t);t=z[d+16>>2];y=C(t*m);m=z[d+20>>2];k=C(w+C(y+C(m*k)));w=C(D(k));a:{if(!(!(x>=w)|!(s<=x))){v[b+12>>2]=0;c=o>C(0);z[b+8>>2]=c?C(-h):h;z[b+4>>2]=c?C(-r):r;z[b>>2]=c?C(-q):q;k=z[d+52>>2];s=z[d+56>>2];u=z[d+48>>2];v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;o=h;h=c?C(-g):g;g=C(s+C(o*h));p=C(f*p);s=C(i*l);o=C(p+s);z[a+40>>2]=g-o;l=C(k+C(r*h));r=C(f*m);m=C(i*j);k=C(r+m);z[a+36>>2]=l-k;j=C(u+C(q*h));f=C(f*t);i=C(i*n);n=C(f+i);z[a+32>>2]=j-n;h=C(p-s);z[a+24>>2]=h+g;q=C(r-m);z[a+20>>2]=q+l;f=C(f-i);z[a+16>>2]=f+j;z[a+8>>2]=o+g;z[a+4>>2]=k+l;z[a>>2]=n+j;i=C(g-h);f=C(j-f);g=C(l-q);break a}if(s<=w){v[b+12>>2]=0;c=k>C(0);z[b+8>>2]=c?C(-p):p;z[b+4>>2]=c?C(-m):m;z[b>>2]=c?C(-t):t;k=z[d+52>>2];s=z[d+56>>2];u=z[d+48>>2];v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;o=p;p=c?C(-f):f;f=C(s+C(o*p));h=C(g*h);s=C(i*l);o=C(h+s);z[a+40>>2]=f-o;l=C(k+C(m*p));r=C(g*r);m=C(i*j);k=C(r+m);z[a+36>>2]=l-k;j=C(u+C(t*p));g=C(g*q);i=C(i*n);n=C(g+i);z[a+32>>2]=j-n;h=C(h-s);z[a+24>>2]=h+f;q=C(r-m);z[a+20>>2]=q+l;g=C(g-i);z[a+16>>2]=g+j;z[a+8>>2]=o+f;z[a+4>>2]=k+l;z[a>>2]=n+j;i=C(f-h);f=C(j-g);g=C(l-q);break a}v[b+12>>2]=0;c=u>C(0);z[b+8>>2]=c?C(-l):l;z[b+4>>2]=c?C(-j):j;z[b>>2]=c?C(-n):n;s=z[d+52>>2];k=z[d+56>>2];u=z[d+48>>2];v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;o=k;k=c?C(-i):i;i=C(o+C(l*k));h=C(g*h);p=C(f*p);o=C(h+p);z[a+40>>2]=i-o;l=C(s+C(j*k));j=C(g*r);r=C(f*m);m=C(j+r);z[a+36>>2]=l-m;n=C(u+C(n*k));g=C(g*q);f=C(f*t);q=C(g+f);z[a+32>>2]=n-q;h=C(h-p);z[a+24>>2]=h+i;j=C(j-r);z[a+20>>2]=j+l;f=C(g-f);z[a+16>>2]=f+n;z[a+8>>2]=o+i;z[a+4>>2]=m+l;z[a>>2]=q+n;i=C(i-h);f=C(n-f);g=C(l-j)}z[a+48>>2]=f;v[a+60>>2]=0;z[a+56>>2]=i;z[a+52>>2]=g}function q4(a,b,c,d,e,f,g,h){var i=C(0),j=0,k=0,l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0,K=C(0);n=xa-16|0;xa=n;a:{if(!b){a=0;break a}if(w[v[a+4>>2]+36|0]&8){k=v[37696];j=Ba[v[v[k>>2]+20>>2]](k)|0?38175:63804;j=Ba[v[v[k+12>>2]+8>>2]](k+12|0,52,j,7858,336)|0;v[j+28>>2]=0;v[j+32>>2]=0;v[j>>2]=144984;v[j+4>>2]=1065353216;v[j+8>>2]=1065353216;v[j+36>>2]=0;v[j+40>>2]=0;v[j+44>>2]=0;v[j+48>>2]=0;v[j+20>>2]=0;v[j+24>>2]=0;v[j+12>>2]=1065353216;v[j+16>>2]=0;k=Ba[v[v[j>>2]>>2]](j,b,c,d,1,x[v[a+4>>2]+40>>1],n+12|0)|0;c=k?k:c;b=k?v[n+12>>2]:b}i=z[v[a+8>>2]+16>>2];v[e>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=1065353216;v[g+4>>2]=1065353216;u=C(i*C(9.999999974752427e-7));y=C(i*C(.009999999776482582));if(r4(b,c,d,u,y,h,g,e,f,0)){a=1;if(!j){break a}Ba[v[v[j>>2]+12>>2]](j);break a}m=z[g>>2];i=z[g+4>>2];A=C(C(1)/z[g+8>>2]);z[h+8>>2]=A*z[h+8>>2];E=C(C(1)/i);z[h+4>>2]=E*z[h+4>>2];F=C(C(1)/m);z[h>>2]=F*z[h>>2];l=v[e>>2];if(b){while(1){o=C(A*z[c+8>>2]);p=C(E*z[c+4>>2]);q=C(F*z[c>>2]);a=0;b:{c:{d:{if(!l){break d}while(1){e:{k=B(a,12)+f|0;r=z[k>>2];if(!(C(D(C(q-r)))>2];if(!(C(D(C(p-G)))>2];if(!(C(D(C(o-s)))>2];i=C(o-H);t=C(i*i);I=z[h>>2];i=C(q-I);K=C(i*i);m=z[h+4>>2];i=C(p-m);t=C(t+C(K+C(i*i)));i=C(s-H);s=C(i*i);i=C(r-I);r=C(i*i);i=C(G-m);if(!(t>C(s+C(r+C(i*i))))){break d}z[k>>2]=q;z[k+8>>2]=o;z[k+4>>2]=p;break d}a=a+1|0;if((l|0)!=(a|0)){continue}break}break c}if((a|0)!=(l|0)){break b}}a=B(l,12)+f|0;z[a+8>>2]=o;z[a+4>>2]=p;z[a>>2]=q;l=l+1|0;v[e>>2]=l}c=c+d|0;J=J+1|0;if((J|0)!=(b|0)){continue}break}}f:{if(l>>>0>=4){b=0;while(1){m=z[g>>2];i=z[g+4>>2];a=B(b,12)+f|0;z[a+8>>2]=z[a+8>>2]*z[g+8>>2];z[a+4>>2]=i*z[a+4>>2];z[a>>2]=m*z[a>>2];b=b+1|0;if((l|0)!=(b|0)){continue}break}r4(l,f,12,u,y,h,g,e,f,1);if(!j){break f}Ba[v[v[j>>2]+12>>2]](j);break f}b9(v[37696],32,13231,277,66054,0)}a=l>>>0>3}xa=n+16|0;return a}function JD(a,b,c,d,e){var f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,u=0,w=0;f=xa-1184|0;xa=f;t[f+1168|0]=1;v[f+1176>>2]=256;v[f+1180>>2]=256;v[f+1172>>2]=f+144;s=v[c+8>>2];v[f+144>>2]=s;m=1;a:while(1){m=m-1|0;g=v[v[f+1172>>2]+(m<<2)>>2];i=z[g>>2];j=z[g+12>>2];n=C(i+j);i=C(j-i);k=z[g+8>>2];l=z[g+20>>2];j=C(k+l);o=z[g+4>>2];p=z[g+16>>2];q=C(o+p);k=C(l-k);l=C(p-o);while(1){b:{z[f+132>>2]=q*C(.5);z[f+128>>2]=n*C(.5);v[f+140>>2]=0;z[f+136>>2]=j*C(.5);z[f+116>>2]=l*C(.5);z[f+112>>2]=i*C(.5);v[f+124>>2]=0;z[f+120>>2]=k*C(.5);h=v[f+132>>2];v[f+48>>2]=v[f+128>>2];v[f+52>>2]=h;h=v[f+140>>2];v[f+56>>2]=v[f+136>>2];v[f+60>>2]=h;h=v[f+116>>2];v[f+32>>2]=v[f+112>>2];v[f+36>>2]=h;h=v[f+124>>2];v[f+40>>2]=v[f+120>>2];v[f+44>>2]=h;c:{d:{if(!ND(d,f+48|0,f+32|0)){break d}g=v[g+24>>2];h=g>>>1|0;if(!(g&1)){break c}r=h&15;if(!r){break d}h=v[c>>2]+(g>>>3&536870908)|0;if((r|0)==1){if(Ba[v[v[e>>2]>>2]](e,f+76|0,(v[h>>2]<<3)+a|0)|0){break d}break b}while(1){u=v[h>>2];g=B(u,24)+b|0;n=z[g+8>>2];i=z[g+20>>2];j=z[g+4>>2];q=z[g+16>>2];k=z[g>>2];l=z[g+12>>2];z[f+96>>2]=C(k+l)*C(.5);z[f+100>>2]=C(j+q)*C(.5);v[f+108>>2]=0;z[f+104>>2]=C(n+i)*C(.5);z[f+80>>2]=C(l-k)*C(.5);z[f+84>>2]=C(q-j)*C(.5);v[f+92>>2]=0;z[f+88>>2]=C(i-n)*C(.5);g=v[f+100>>2];v[f+16>>2]=v[f+96>>2];v[f+20>>2]=g;g=v[f+108>>2];v[f+24>>2]=v[f+104>>2];v[f+28>>2]=g;g=v[f+84>>2];v[f>>2]=v[f+80>>2];v[f+4>>2]=g;g=v[f+92>>2];v[f+8>>2]=v[f+88>>2];v[f+12>>2]=g;if(ND(d,f+16|0,f)){if(!(Ba[v[v[e>>2]>>2]](e,f+76|0,(u<<3)+a|0)|0)){break b}}h=h+4|0;r=r-1|0;if(r){continue}break}}w=!m;if(m){continue a}break b}g=B(h,28)+s|0;v[v[f+1172>>2]+(m<<2)>>2]=g+28;m=m+1|0;if((m|0)==(v[f+1180>>2]&2147483647)){OD(f+144|0,m<<1)}i=z[g>>2];j=z[g+12>>2];n=C(i+j);i=C(j-i);k=z[g+8>>2];l=z[g+20>>2];j=C(k+l);o=z[g+4>>2];p=z[g+16>>2];q=C(o+p);k=C(l-k);l=C(p-o);continue}break}break}a=v[f+1180>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[f+1172>>2];if((a|0)==(f+144|0)|!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=f+1184|0;return w}function N_(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0),Z=C(0);h=xa-32|0;xa=h;l=t[c+36|0]<<4;p=l+b|0;r=z[p+8>>2];l=a+l|0;s=z[l+8>>2];u=z[p>>2];G=z[l>>2];H=z[p+4>>2];I=z[l+4>>2];l=t[c+37|0]<<4;p=l+b|0;J=z[p+8>>2];l=a+l|0;K=z[l+8>>2];L=t[c+35|0]<<4;b=L+b|0;M=z[b+8>>2];a=a+L|0;N=z[a+8>>2];O=z[p>>2];P=z[l>>2];Q=z[b>>2];R=z[a>>2];S=z[p+4>>2];T=z[l+4>>2];U=z[b+4>>2];V=z[a+4>>2];B=z[c+8>>2];Y=z[c>>2];k=z[c+16>>2];Z=z[c+4>>2];v[h+28>>2]=0;x=C(N-M);i=C(C(s-r)-x);E=C(R-Q);j=C(C(G-u)-E);F=C(V-U);m=C(C(I-H)-F);W=C(C(i*i)+C(C(j*j)+C(m*m)));n=C(C(K-J)-x);o=C(C(P-O)-E);q=C(C(T-S)-F);X=C(C(n*n)+C(C(o*o)+C(q*q)));y=C(C(i*n)+C(C(j*o)+C(m*q)));A=C(C(W*X)-C(y*y));A=A>C(1.1920928955078125e-7)?C(C(1)/A):C(0);x=C(C(B*k)-x);B=C(x*i);i=C(C(Y*k)-E);k=C(C(Z*k)-F);j=C(B+C(C(i*j)+C(m*k)));i=C(C(x*n)+C(C(i*o)+C(q*k)));k=C(A*C(C(X*j)-C(y*i)));i=C(A*C(C(W*i)-C(y*j)));j=C(C(1)-C(k+i));z[h+24>>2]=C(C(s*k)+C(K*i))+C(N*j);z[h+20>>2]=C(C(I*k)+C(T*i))+C(V*j);z[h+16>>2]=C(C(G*k)+C(P*i))+C(R*j);v[h+12>>2]=0;z[h+8>>2]=C(C(r*k)+C(J*i))+C(M*j);z[h+4>>2]=C(C(H*k)+C(S*i))+C(U*j);z[h>>2]=C(C(u*k)+C(O*i))+C(Q*j);k=z[c+8>>2];n=z[c+4>>2];m=C(-n);o=z[c>>2];q=C(-o);i=C(D(z[c+16>>2]));a:{if(f){a=v[h+20>>2];v[g>>2]=v[h+16>>2];v[g+4>>2]=a;a=v[h+28>>2];v[g+8>>2]=v[h+24>>2];v[g+12>>2]=a;a=v[h+4>>2];v[g+16>>2]=v[h>>2];v[g+20>>2]=a;a=v[h+12>>2];v[g+24>>2]=v[h+8>>2];v[g+28>>2]=a;z[g+36>>2]=m;z[g+32>>2]=q;break a}a=v[e+4>>2];y=z[a+16>>2];a=w[a+32|0];b=v[d+4>>2];j=z[b+16>>2];b=w[b+32|0];r=z[h+16>>2];s=z[h+20>>2];u=z[h+24>>2];v[g+12>>2]=0;j=b?j:C(0);z[g+8>>2]=u+C(k*j);z[g+4>>2]=s+C(n*j);z[g>>2]=r+C(o*j);r=z[h>>2];s=z[h+4>>2];u=z[h+8>>2];z[g+36>>2]=m;z[g+32>>2]=q;v[g+28>>2]=0;m=a?y:C(0);z[g+24>>2]=u-C(k*m);z[g+20>>2]=s-C(n*m);z[g+16>>2]=r-C(o*m);i=C(i+C(j+m))}z[g+64>>2]=-i;v[g+44>>2]=0;z[g+40>>2]=-k;xa=h+32|0}function oV(a,b){var c=0,d=0,e=0,f=0;f=xa-16|0;xa=f;a:{b:{c:{switch(v[b+4>>2]){case 0:c=v[37696];d=Ba[v[v[c>>2]+20>>2]](c)|0?40749:63804;c=L0(Ba[v[v[c+12>>2]+8>>2]](c+12|0,208,d,5452,115)|0,a,b);v[c+8>>2]=144300;v[c>>2]=144204;v[c+196>>2]=0;v[c+200>>2]=0;v[c+184>>2]=0;v[c+188>>2]=0;v[c+176>>2]=4;z[c+112>>2]=z[b+96>>2];z[c+116>>2]=z[b+100>>2];z[c+120>>2]=z[b+104>>2];z[c+124>>2]=z[b+108>>2];z[c+128>>2]=z[b+112>>2];z[c+132>>2]=z[b+116>>2];z[c+136>>2]=z[b+120>>2];z[c+140>>2]=z[b+124>>2];z[c+144>>2]=z[b+128>>2];z[c+148>>2]=z[b+132>>2];z[c+152>>2]=z[b+136>>2];z[c+156>>2]=z[b+140>>2];z[c+160>>2]=z[b+144>>2];z[c+164>>2]=z[b+148>>2];z[c+168>>2]=z[b+152>>2];z[c+172>>2]=z[b+156>>2];d=v[b+164>>2];v[c+176>>2]=v[b+160>>2];v[c+180>>2]=d;d=v[b+172>>2];v[c+184>>2]=v[b+168>>2];v[c+188>>2]=d;d=v[b+180>>2];v[c+192>>2]=v[b+176>>2];v[c+196>>2]=d;v[c+200>>2]=v[b+184>>2];v[b+184>>2]=0;break b;case 1:break c;default:break a}}c=v[37696];d=Ba[v[v[c>>2]+20>>2]](c)|0?40879:63804;c=L0(Ba[v[v[c+12>>2]+8>>2]](c+12|0,184,d,5452,119)|0,a,b);v[c+8>>2]=144172;v[c>>2]=144076;e=c+100|0;v[e>>2]=0;v[e+4>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;d=z$(c+124|0);v[e>>2]=v[b+88>>2];v[e+4>>2]=v[b+92>>2];v[e+12>>2]=v[b+100>>2];v[e+16>>2]=v[b+104>>2];v[e+20>>2]=v[b+108>>2];v[e+8>>2]=v[b+96>>2];v[b+104>>2]=0;v[b+108>>2]=0;v[b+96>>2]=0;v[b+100>>2]=0;v[b+88>>2]=0;v[b+92>>2]=0;v[d>>2]=v[b+112>>2];z[d+4>>2]=z[b+116>>2];z[d+8>>2]=z[b+120>>2];z[d+12>>2]=z[b+124>>2];z[d+16>>2]=z[b+128>>2];v[d+20>>2]=v[b+132>>2];v[d+24>>2]=v[b+136>>2];v[d+28>>2]=v[b+140>>2];z[d+32>>2]=z[b+144>>2];z[d+36>>2]=z[b+148>>2];z[d+40>>2]=z[b+152>>2];z[d+44>>2]=z[b+156>>2];z[d+48>>2]=z[b+160>>2];z[d+52>>2]=z[b+164>>2];t[d+56|0]=w[b+168|0];t[d+57|0]=w[b+169|0];v[b+132>>2]=0;v[b+136>>2]=0;v[b+112>>2]=0;v[b+140>>2]=0;v[b+144>>2]=0;v[b+148>>2]=0;v[b+152>>2]=0;v[b+156>>2]=0;v[b+160>>2]=0;u[b+162>>1]=0;u[b+164>>1]=0;u[b+166>>1]=0;u[b+168>>1]=0;v[d>>2]=e}v[f+8>>2]=c;a=rh(a+8|0,f+8|0,f+15|0);if(!w[f+15|0]){v[a>>2]=v[f+8>>2]}}xa=f+16|0;return c}function pD(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{b:{if(!v[a+164>>2]){break b}g=v[a+140>>2];i=v[b>>2];d=i-1|0;h=v[b+4>>2];b=h+(i^-1)|0;b=(d|0)!=-1?b+1|0:b;d=d^((b&4194303)<<10|d>>>22);j=d;f=b^b>>>22;e=f<<13|d>>>19;d=d<<13^-1;b=j+d|0;f=(e^-1)+f|0;d=b>>>0>>0?f+1|0:f;b=Saa(b^((d&255)<<24|b>>>8),d^d>>>8,9,0);d=Aa;f=d>>>15|0;b=b^((d&32767)<<17|b>>>15);d=d^f;f=d<<27|b>>>5;e=b<<27^-1;b=b+e|0;d=(f^-1)+d|0;b=v[((v[a+148>>2]-1&(b^(((b>>>0>>0?d+1|0:d)&2147483647)<<1|b>>>31)))<<2)+g>>2];if((b|0)==-1){break b}g=v[a+136>>2];d=v[a+132>>2];while(1){f=d+B(b,20)|0;if((i|0)==v[f>>2]&(h|0)==v[f+4>>2]){break a}b=v[g+(b<<2)>>2];if((b|0)!=-1){continue}break}}c:{d:{b=a+4|0;g=v[b+4>>2];d=B(g,48)+b|0;e:{if(!v[d+52>>2]){break e}a=(c<<15^-1)+c|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=v[v[d+28>>2]+((v[d+36>>2]-1&(a>>>16^a))<<2)>>2];if((a|0)==-1){break e}h=v[d+24>>2];d=v[d+20>>2];while(1){i=d+(a<<3)|0;if(v[i>>2]==(c|0)){break d}a=v[h+(a<<2)>>2];if((a|0)!=-1){continue}break}}g=v[b>>2];d=b+B(g,48)|0;if(!v[d+52>>2]){break c}a=(c<<15^-1)+c|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=v[v[d+28>>2]+((v[d+36>>2]-1&(a>>>16^a))<<2)>>2];if((a|0)==-1){break c}h=v[d+24>>2];d=v[d+20>>2];while(1){i=d+(a<<3)|0;if(v[i>>2]==(c|0)){break d}a=v[h+(a<<2)>>2];if((a|0)!=-1){continue}break}break c}v[b+112>>2]=0;j=b+B(g,48)|0;f=v[j+12>>2];d=b+108|0;h=xa-16|0;xa=h;f:{g:{a=v[i+4>>2];g=v[v[b+104>>2]+8>>2];e=g+B(c,24)|0;if(z[a>>2]>z[e+12>>2]|z[a+4>>2]>z[e+16>>2]|z[a+8>>2]>z[e+20>>2]){break g}e=g+B(c,24)|0;if(z[e>>2]>z[a+16>>2]|z[e+4>>2]>z[a+20>>2]|z[e+8>>2]>z[a+24>>2]){break g}PC(a,g);break f}a=SC(f,a,c,g);v[h+12>>2]=a;h:{if(v[a+40>>2]|!a){break h}e=v[d+4>>2];if(e>>>0>=(v[d+8>>2]&2147483647)>>>0){OC(d,h+12|0);break h}v[v[d>>2]+(e<<2)>>2]=a;v[d+4>>2]=e+1}a=QC(f,c,g,d)}xa=h+16|0;if(!(!v[b+112>>2]&v[i+4>>2]==(a|0))){aD(b,j+16|0,c,a)}}return}b=d+B(b,20)|0;SB(v[v[a+200>>2]+(v[b+16>>2]<<3)>>2],v[b+12>>2]);c=v[a+168>>2];b=v[b+16>>2];if(b>>>0>2]){b=v[v[a+172>>2]+(b<<2)>>2]}else{b=-1}SB(c,b);t[a+212|0]=1}function _5(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0);c=xa-48|0;xa=c;j=v[b+76>>2];Ba[v[v[j>>2]+28>>2]](j,c+44|0,c+40|0);d=C(1);f=C(1);j=v[c+44>>2];if(j){Ba[v[v[j>>2]+76>>2]](c+8|0,j);J=z[c+32>>2];K=z[c+28>>2];L=z[c+24>>2];h=z[c+16>>2];r=z[c+12>>2];s=z[c+8>>2];f=z[c+20>>2]}g=z[b+24>>2];e=z[b+28>>2];k=z[b+32>>2];D=z[b+44>>2];E=z[b+40>>2];F=z[b+36>>2];l=z[b+20>>2];j=v[c+40>>2];if(j){Ba[v[v[j>>2]+76>>2]](c+8|0,j);M=z[c+32>>2];N=z[c+28>>2];O=z[c+24>>2];t=z[c+16>>2];u=z[c+12>>2];w=z[c+8>>2];d=z[c+20>>2]}G=z[b- -64>>2];H=z[b+72>>2];I=z[b+68>>2];x=C(C(C(s*g)+C(C(f*e)+C(h*k)))-C(l*r));m=z[b+52>>2];n=z[b+56>>2];o=z[b+60>>2];p=z[b+48>>2];i=C(C(C(w*m)+C(C(d*n)+C(t*o)))-C(p*u));y=C(C(C(h*l)+C(C(f*g)+C(r*k)))-C(e*s));A=C(C(C(t*p)+C(C(d*m)+C(u*o)))-C(n*w));q=C(C(C(C(f*k)-C(l*s))-C(r*g))-C(h*e));B=C(C(C(C(d*o)-C(p*w))-C(u*m))-C(t*n));g=C(C(C(r*e)+C(C(f*l)+C(s*k)))-C(g*h));e=C(C(C(u*n)+C(C(d*p)+C(w*o)))-C(m*t));z[a+12>>2]=C(x*i)+C(C(y*A)+C(C(q*B)+C(g*e)));z[a+8>>2]=C(e*y)+C(C(C(q*i)-C(B*x))-C(g*A));z[a+4>>2]=C(i*g)+C(C(C(q*A)-C(B*y))-C(x*e));z[a>>2]=C(A*x)+C(C(C(q*e)-C(B*g))-C(y*i));k=C(H+H);l=C(G+G);m=C(I+I);A=C(C(t*k)+C(C(w*l)+C(m*u)));B=C(C(d*d)+C(-.5));n=C(D+D);o=C(F+F);p=C(E+E);D=C(C(h*n)+C(C(s*o)+C(p*r)));E=C(C(f*f)+C(-.5));e=C(C(M+C(C(t*A)+C(C(k*B)+C(d*C(C(w*m)-C(l*u))))))-C(J+C(C(h*D)+C(C(n*E)+C(f*C(C(s*p)-C(o*r)))))));e=C(e+e);i=C(C(O+C(C(w*A)+C(C(l*B)+C(d*C(C(u*k)-C(m*t))))))-C(L+C(C(s*D)+C(C(o*E)+C(f*C(C(r*n)-C(p*h)))))));i=C(i+i);d=C(C(N+C(C(u*A)+C(C(m*B)+C(d*C(C(t*l)-C(k*w))))))-C(K+C(C(r*D)+C(C(p*E)+C(f*C(C(h*o)-C(n*s)))))));d=C(d+d);f=C(C(C(C(-g)*i)-C(d*y))-C(x*e));h=C(C(q*q)+C(-.5));z[a+24>>2]=C(C(e*h)+C(q*C(C(y*i)-C(g*d))))-C(x*f);z[a+20>>2]=C(C(d*h)+C(q*C(C(g*e)-C(x*i))))-C(y*f);z[a+16>>2]=C(C(i*h)+C(q*C(C(x*d)-C(y*e))))-C(g*f);xa=c+48|0}function cU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=C(0),i=0,j=C(0),k=0,l=C(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=xa-16|0;xa=f;a:{if(!(Ba[v[v[b>>2]>>2]](b)|0)){b9(v[37696],4,8633,138,65291,0);break a}b:{c:{switch(v[b+100>>2]){case 0:d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?32635:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,544,c,8633,147)|0;c=v[a+8>>2];i=Ba[v[v[c>>2]+28>>2]](c)|0;e=v[a+8>>2];c=xa-16|0;xa=c;v[d>>2]=140076;e=sU(d+8|0,b,e);v[d>>2]=139852;v[e>>2]=140004;v[d+12>>2]=0;h=z[b+104>>2];z[d+532>>2]=h;l=z[b+108>>2];z[d+536>>2]=l;g=z[b+112>>2];z[d+540>>2]=g;v[c>>2]=3;j=g;g=z[d+516>>2];z[c+12>>2]=j*g;z[c+8>>2]=l*g;z[c+4>>2]=h*g;uU(e,i,c,v[b+88>>2]);xa=c+16|0;break b;case 1:break c;default:break a}}d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?32759:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,544,c,8633,153)|0;c=v[a+8>>2];i=Ba[v[v[c>>2]+28>>2]](c)|0;e=v[a+8>>2];c=xa-16|0;xa=c;v[d>>2]=139620;e=sU(d+8|0,b,e);v[d>>2]=139396;v[e>>2]=139548;v[d+12>>2]=1;g=z[b+104>>2];z[d+532>>2]=g;h=z[b+108>>2];z[d+536>>2]=h;v[d+540>>2]=v[b+112>>2];v[c>>2]=2;j=C(h*C(.5));h=z[d+516>>2];z[c+8>>2]=j*h;z[c+4>>2]=g*h;uU(e,i,c,v[b+88>>2]);xa=c+16|0}c=d+8|0;v[f+8>>2]=c;b=v[a+72>>2];d:{if(b>>>0>=(v[a+76>>2]&2147483647)>>>0){b=0;c=v[a+76>>2];k=c&2147483647?c<<1:1;e:{if(!k){break e}c=k<<2;if(!c){break e}b=v[37696];e=b+12|0;b=(o=e,p=c,q=Ba[v[v[b>>2]+20>>2]](b)|0?56879:63804,r=16608,s=553,n=v[v[e>>2]+8>>2],Ba[n](o|0,p|0,q|0,r|0,s|0)|0)}e=v[a+72>>2];m=(e<<2)+b|0;if((e|0)>0){i=v[a+68>>2];c=b;while(1){v[c>>2]=v[i>>2];i=i+4|0;c=c+4|0;if(m>>>0>c>>>0){continue}break}}v[m>>2]=v[f+8>>2];f:{if(v[a+76>>2]<0){break f}c=v[a+68>>2];if(!c){break f}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,c);e=v[a+72>>2]}v[a+76>>2]=k;v[a+68>>2]=b;v[a+72>>2]=e+1;break d}v[v[a+68>>2]+(b<<2)>>2]=c;v[a+72>>2]=b+1}b=v[f+8>>2];v[b+520>>2]=a;v[b+420>>2]=a;v[b+260>>2]=a;v[b+248>>2]=a;v[f+4>>2]=0;b=Ba[v[v[d>>2]+28>>2]](d)|0;c=f+4|0;Ba[v[v[b>>2]+96>>2]](b,c,1,0)|0;a=Nm(a+80|0,c,f+15|0);if(w[f+15|0]){break a}v[a>>2]=v[f+4>>2]}xa=f+16|0;return d|0}function TK(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=v[a+68>>2];d=v[a+88>>2];a:{if((e|0)==(d|0)){b=v[a+84>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+84>>2]=0}b=v[a+80>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;b=v[a+64>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+88>>2]=0;v[a+64>>2]=0;break a}h=e-d|0;b:{if(h>>>0>=v[a+76>>2]>>>1>>>0){i=v[a+80>>2];if(e){g=v[a+84>>2];k=v[a+64>>2];c=0;d=0;while(1){j=v[k+(d<<2)>>2];if((j|0)!=-1){if((c|0)!=(d|0)){v[k+(c<<2)>>2]=j;e=i+(c<<3)|0;f=i+(d<<3)|0;v[e>>2]=v[f>>2];v[e+4>>2]=v[f+4>>2];e=g+(d<<4)|0;l=v[e>>2];m=v[e+4>>2];n=v[e+12>>2];f=g+(c<<4)|0;v[f+8>>2]=v[e+8>>2];v[f+12>>2]=n;v[f>>2]=l;v[f+4>>2]=m;e=v[a+68>>2]}v[(j<<2)+b>>2]=v[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;v[b>>2]=-1;v[b+40>>2]=-1;v[b+32>>2]=-1;v[b+24>>2]=-1;v[b+16>>2]=-1;v[b+8>>2]=-1;v[a+72>>2]=h;break b}c=h+6|0;d=c<<3;if(d){e=v[37696]+12|0;f=Ba[v[v[e>>2]+8>>2]](e,d,24422,13489,1282)|0}c=c<<4;if(c){d=v[37696]+12|0;k=Ba[v[v[d>>2]+8>>2]](d,c,24422,13489,1283)|0}c=(h<<3)+f|0;v[c>>2]=-1;v[c+40>>2]=-1;v[c+32>>2]=-1;v[c+24>>2]=-1;v[c+16>>2]=-1;v[c+8>>2]=-1;d=0;c=h<<2;if(c){e=v[37696]+12|0;j=Ba[v[v[e>>2]+8>>2]](e,c,24422,13489,1285)|0}i=v[a+84>>2];e=v[a+68>>2];if(e){m=v[a+80>>2];n=v[a+64>>2];c=0;while(1){l=v[(d<<2)+n>>2];if((l|0)!=-1){v[(c<<2)+j>>2]=l;o=c<<3;e=o+f|0;g=(d<<3)+m|0;v[e>>2]=v[g>>2];v[e+4>>2]=v[g+4>>2];e=(d<<4)+i|0;p=v[e>>2];q=v[e+4>>2];r=v[e+12>>2];g=(c<<4)+k|0;v[g+8>>2]=v[e+8>>2];v[g+12>>2]=r;v[g>>2]=p;v[g+4>>2]=q;v[(l<<2)+b>>2]=o|v[a>>2]|4;e=v[a+68>>2];c=c+1|0}d=d+1|0;if(e>>>0>d>>>0){continue}break}i=v[a+84>>2]}if(i){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,i);v[a+84>>2]=0}b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+84>>2]=k;v[a+80>>2]=f;v[a+76>>2]=h;v[a+72>>2]=h;b=v[a+64>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+64>>2]=j}v[a+68>>2]=h;c=a+88|0}v[c>>2]=0}function DR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{d=v[a+20>>2];a=v[a+28>>2];b=v[a+988>>2];e=v[b+308>>2];c=v[b+128>>2];v[a+996>>2]=c+1;b:{c:{d:{if(c){if(!v[b+132>>2]){break b}if(v[a+992>>2]){break d}break b}if(!v[a+992>>2]){break c}}f=c&1;h=!f;i=(c|0)==(e-1|0);if(!i){c=B(h,40);b=c+v[a+3048>>2]|0;v[b+20>>2]=d;v[b+24>>2]=1;e:{f:{if(!d){d=v[a+3036>>2];e=c+d|0;v[e+20>>2]=b;v[e+24>>2]=1;e=e+20|0;c=a+3036|0;break f}Ba[v[v[d>>2]+16>>2]](d);v[b+16>>2]=v[v[b+20>>2]+16>>2];d=v[a+3036>>2];e=c+d|0;g=c;c=v[a+3048>>2];b=g+c|0;v[e+20>>2]=b;v[e+24>>2]=1;if(!c){break e}e=e+20|0;c=a+3036|0}Ba[v[v[b>>2]+16>>2]](b);v[(B(h,40)+d|0)+16>>2]=v[v[e>>2]+16>>2];d=v[c>>2]}d=B(h,40)+d|0}c=B(f,40);b=c+v[a+3060>>2]|0;v[b+20>>2]=d;v[b+24>>2]=1;g:{h:{i:{j:{k:{if(!d){d=v[a+3024>>2];c=c+d|0;v[c+20>>2]=b;v[c+24>>2]=1;e=c+20|0;break k}Ba[v[v[d>>2]+16>>2]](d);v[b+16>>2]=v[v[b+20>>2]+16>>2];d=v[a+3024>>2];e=c+d|0;g=c;c=v[a+3060>>2];b=g+c|0;v[e+20>>2]=b;v[e+24>>2]=1;if(!c){break j}e=e+20|0}Ba[v[v[b>>2]+16>>2]](b);c=B(f,40);v[(c+d|0)+16>>2]=v[v[e>>2]+16>>2];e=v[a+3012>>2];d=c+e|0;j=v[a+3024>>2];b=j+c|0;v[d+20>>2]=b;v[d+24>>2]=1;g=d+20|0;if(j){break i}b=v[a+3e3>>2];c=c+b|0;v[c+20>>2]=d;v[c+24>>2]=1;e=a+3e3|0;c=c+20|0;break h}e=v[a+3012>>2];b=B(f,40);c=e+b|0;b=b+d|0;v[c+20>>2]=b;v[c+24>>2]=1;g=c+20|0}c=g;Ba[v[v[b>>2]+16>>2]](b);d=B(f,40);v[(d+e|0)+16>>2]=v[v[c>>2]+16>>2];b=v[a+3e3>>2];c=d+b|0;e=v[a+3012>>2];d=e+d|0;v[c+20>>2]=d;v[c+24>>2]=1;if(!e){break g}e=a+3e3|0;c=c+20|0}Ba[v[v[d>>2]+16>>2]](d);v[(B(f,40)+b|0)+16>>2]=v[v[c>>2]+16>>2];b=v[e>>2]}d=B(f,40);b=d+b|0;f=v[b+16>>2];f=Ba[v[v[f>>2]+4>>2]](f)|0;f=Ba[v[v[f>>2]+4>>2]](f)|0;c=f;f=v[a+976>>2];rI(v[a+980>>2],c,v[f+1156>>2],f,0,b,0);b=d+v[a+3060>>2]|0;Ba[v[v[b>>2]+20>>2]](b);b=d+v[a+3024>>2]|0;Ba[v[v[b>>2]+20>>2]](b);b=d+v[a+3012>>2]|0;Ba[v[v[b>>2]+20>>2]](b);d=d+v[a+3e3>>2]|0;Ba[v[v[d>>2]+20>>2]](d);if(i){break b}d=B(h,40);b=d+v[a+3048>>2]|0;Ba[v[v[b>>2]+20>>2]](b);a=d+v[a+3036>>2]|0;Ba[v[v[a>>2]+20>>2]](a);break a}xO(b)}}}function EW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=0,H=C(0),I=C(0),J=C(0);f=xa-400|0;xa=f;l=v[c+32>>2];a:{if(!e){D=C(1);q=C(0);break a}D=C(1);q=C(0);if(x[e+12>>1]!=2){break a}D=z[e+8>>2];E=z[e>>2];q=z[e+4>>2]}r=z[a+4>>2];h=z[c+8>>2];i=z[c+12>>2];j=z[c+4>>2];v[f+396>>2]=0;z[f+392>>2]=i;z[f+388>>2]=h;z[f+384>>2]=j;a=v[c+16>>2];F=v[c+20>>2];G=v[c+28>>2];v[f+376>>2]=v[c+24>>2];v[f+380>>2]=G;v[f+368>>2]=a;v[f+372>>2]=F;m=z[d+20>>2];n=z[b+20>>2];o=z[d+24>>2];H=z[b+24>>2];k=z[d+12>>2];s=z[d>>2];I=z[d+16>>2];J=z[b+16>>2];y=z[d+4>>2];A=z[d+8>>2];t[f+240|0]=0;v[f+232>>2]=0;v[f+236>>2]=0;v[f+224>>2]=0;v[f+228>>2]=0;v[f+216>>2]=0;v[f+220>>2]=0;v[f+208>>2]=0;v[f+212>>2]=0;v[f+352>>2]=l+16;v[f+360>>2]=v[l+56>>2]+B(w[l+55|0],20);t[f+364|0]=w[l+54|0];g=C(j*z[l+68>>2]);p=C(h*z[l+72>>2]);g=g<=p?g:p;p=C(i*z[l+76>>2]);g=g<=p?g:p;z[f+232>>2]=g*C(.02500000037252903);z[f+224>>2]=g*C(.10000000149011612);z[f+228>>2]=g*C(.05000000074505806);a=f+208|0;GV(f+384|0,f+368|0,f+256|0,f+304|0,a,j==C(1)&h==C(1)&i==C(1));v[f+356>>2]=v[l+60>>2];v[f+188>>2]=0;h=C(J-I);h=C(h+h);i=C(n-m);i=C(i+i);j=C(H-o);j=C(j+j);g=C(C(C(C(-s)*h)-C(i*y))-C(A*j));o=C(C(k*k)+C(-.5));m=C(C(C(j*o)+C(k*C(C(y*h)-C(s*i))))-C(A*g));z[f+184>>2]=m;n=C(C(C(i*o)+C(k*C(C(s*j)-C(A*h))))-C(y*g));z[f+180>>2]=n;v[f+172>>2]=0;z[f+168>>2]=m;z[f+164>>2]=n;z[f+192>>2]=r;v[f+124>>2]=0;z[f+120>>2]=m;z[f+116>>2]=n;k=C(C(C(h*o)+C(k*C(C(A*i)-C(y*j))))-C(s*g));z[f+112>>2]=k;v[f+140>>2]=4;z[f+176>>2]=k;z[f+160>>2]=k;t[f+144|0]=1;z[f+136>>2]=r;z[f+132>>2]=r;z[f+128>>2]=r;v[f+40>>2]=141148;v[f+44>>2]=f+112;v[f+32>>2]=141216;v[f+36>>2]=a;v[f+28>>2]=0;z[f+24>>2]=m-z[f+216>>2];z[f+20>>2]=n-z[f+212>>2];z[f+16>>2]=k-z[f+208>>2];v[f>>2]=0;a=HV(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)){z[e+8>>2]=D;z[e+4>>2]=q;z[e>>2]=E}if(e){u[e+12>>1]=((a|0)==2)<<1}xa=f+400|0;return(a|0)==2|0}function i3(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,w=0,y=0,z=0;q=xa-48|0;xa=q;a:{if(!(c|d?b:0)){b9(v[37696],8,6398,147,73080,0);e=0;break a}e=1;if(v[a+12>>2]){break a}g=(s=-1,t=Saa(b,0,12,0),u=Aa,u?s:t);if(g){e=v[37696];f=e+12|0;e=(t=f,u=g,w=Ba[v[v[e>>2]+20>>2]](e)|0?47485:63804,y=6398,z=155,s=v[v[f>>2]+8>>2],Ba[s](t|0,u|0,w|0,y|0,z|0)|0)}else{e=0}v[a+12>>2]=e;i=B(b,3);e=(i&1073741823)!=(i|0)?-1:i<<2;if(e){g=v[37696];f=g+12|0;l=(z=f,y=e,w=Ba[v[v[g>>2]+20>>2]](g)|0?29035:63804,u=6398,t=156,s=v[v[f>>2]+8>>2],Ba[s](z|0,y|0,w|0,u|0,t|0)|0);g=v[37696]+12|0;j=e;e=v[37696];m=(t=g,u=j,w=Ba[v[v[e>>2]+20>>2]](e)|0?29035:63804,y=6398,z=157,s=v[v[g>>2]+8>>2],Ba[s](t|0,u|0,w|0,y|0,z|0)|0)}g=0;f=(i&536870911)!=(i|0)?-1:i<<3;if(f){e=v[37696];h=e+12|0;n=(z=h,y=f,w=Ba[v[v[e>>2]+20>>2]](e)|0?47869:63804,u=6398,t=158,s=v[v[h>>2]+8>>2],Ba[s](z|0,y|0,w|0,u|0,t|0)|0)}while(1){k=B(g,12);o=k+l|0;b:{c:{d:{if(!c){if(d){break d}e=2;f=0;h=1;p=0;j=1;break b}e=B(g,12)+c|0;f=v[e>>2];h=v[e+4>>2];e=v[e+8>>2];break c}e=B(g,6)+d|0;f=x[e>>1];h=x[e+2>>1];e=x[e+4>>1]}p=f>>>0>>0?f:h;j=f>>>0>h>>>0?f:h}v[o>>2]=p;v[m+k>>2]=j;j=k+4|0;v[j+l>>2]=e>>>0>h>>>0?h:e;v[m+j>>2]=e>>>0>>0?h:e;h=k+8|0;v[h+l>>2]=e>>>0>>0?e:f;v[h+m>>2]=e>>>0>f>>>0?e:f;g=g+1|0;if((g|0)!=(b|0)){continue}break}f=0;k=SU(q+8|0);j=v[WU(WU(k,m,i,0),l,i,0)+8>>2];v[a+8>>2]=b;v[a>>2]=0;e:{if(!i){e=0;break e}f=v[a+12>>2];h=0;c=-1;g=-1;while(1){b=v[j+(h<<2)>>2];d=(b>>>0)/3|0;p=b-B(d,3)|0;o=b<<2;b=v[o+m>>2];e=v[a>>2];r=g;g=v[l+o>>2];if(!((r|0)==(g|0)&(b|0)==(c|0))){c=(e<<3)+n|0;v[c+4>>2]=b;v[c>>2]=g;e=e+1|0;v[a>>2]=e}v[(f+B(d,12)|0)+(p<<2)>>2]=e-1;c=b;h=h+1|0;if((i|0)!=(h|0)){continue}break}b=v[a>>2]<<3;if(!b){f=0;e=0;break e}c=v[37696]+12|0;e=Ba[v[v[c>>2]+8>>2]](c,b,24422,6398,212)|0;f=v[a>>2]<<3}v[a+4>>2]=e;I9(e,n,f);if(n){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,n)}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,m);a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,l);TU(k);e=1}xa=q+48|0;return e}function C0(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,u=0,w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0);f=xa-528|0;xa=f;i=1;g=v[a+68>>2];h=g-1|0;a:{if((h|0)<0){break a}r=g&3;b:{if(h>>>0<3){e=1;break b}u=g&-4;e=1;while(1){i=(f+16|0)+(e<<2)|0;j=B(h,112);v[i>>2]=j;v[i+12>>2]=j-336;v[i+8>>2]=j-224;v[i+4>>2]=j-112;h=h-4|0;e=e+4|0;s=s+4|0;if((u|0)!=(s|0)){continue}break}}i=g+1|0;if(!r){break a}g=0;while(1){v[(f+16|0)+(e<<2)>>2]=B(h,112);h=h-1|0;e=e+1|0;g=g+1|0;if((r|0)!=(g|0)){continue}break}}h=v[a+88>>2];k=z[c+8>>2];l=z[c+4>>2];m=z[c>>2];n=z[b+8>>2];o=z[b+4>>2];p=z[b>>2];g=1;while(1){e=i-1|0;b=h+(g?q:v[(f+16|0)+(e<<2)>>2])|0;w=z[b+80>>2];x=z[b+64>>2];y=z[b+32>>2];A=z[b+16>>2];D=z[b>>2];E=z[b+48>>2];F=z[b+36>>2];G=z[b+20>>2];H=z[b+4>>2];I=z[b+84>>2];J=z[b+52>>2];K=z[b+68>>2];L=z[b+40>>2];M=z[b+24>>2];N=z[b+8>>2];O=z[b+88>>2];P=z[b+56>>2];Q=z[b+72>>2];R=z[b+44>>2];S=z[b+28>>2];T=z[b+12>>2];U=z[b+92>>2];V=z[b+60>>2];W=z[b+76>>2];a=v[b+96>>2]&-2;v[f+12>>2]=a;g=0;c:{d:{if(p>E|o>x|(mw)){break d}if(l>2]>>2]](d,1,f+12|0)|0){break d}break c}v[(f+16|0)+(e<<2)>>2]=a;g=1;q=a;e=i}a=v[b+100>>2]&-2;v[f+12>>2]=a;e:{if(!(!(kJ^-1)&(o>K^-1)&(n>I^-1)&(m>2]>>2]](d,1,f+12|0)|0){break e}break c}v[(f+16|0)+(e<<2)>>2]=a;g=1;e=e+1|0;q=a}a=v[b+104>>2]&-2;v[f+12>>2]=a;f:{if(!(!(kP^-1)&(o>Q^-1)&(n>O^-1)&(m>2]>>2]](d,1,f+12|0)|0){break f}break c}v[(f+16|0)+(e<<2)>>2]=a;g=1;e=e+1|0;q=a}a=v[b+108>>2]&-2;v[f+12>>2]=a;g:{if(!(!(kV^-1)&(o>W^-1)&(n>U^-1)&(m>2]>>2]](d,1,f+12|0)|0){break g}break c}v[(f+16|0)+(e<<2)>>2]=a;g=1;q=a;e=e+1|0}i=e;if((e|0)>1){continue}}break}xa=f+528|0}function RM(a){a=a|0;var b=0,c=0,d=0,e=C(0),f=C(0),g=C(0),h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),y=C(0),A=0,D=0,E=0,F=0,G=0,H=0,I=C(0),J=C(0);s=v[a+60>>2];E=v[a+28>>2];F=v[a+32>>2];G=v[a+36>>2];H=v[a+40>>2];q=z[a+44>>2];A=v[a+48>>2];i=xa-32|0;xa=i;b=v[a+52>>2];D=v[a+56>>2];if(b>>>0>>0){while(1){a=b+1|0;d=a<<6;c=d+G|0;j=z[c+52>>2];k=z[c+40>>2];l=z[c+28>>2];m=z[c+56>>2];n=z[c+44>>2];o=z[c+32>>2];g=z[c+60>>2];h=d+F|0;r=z[h+40>>2];f=z[c+48>>2];p=z[h+36>>2];e=z[c+36>>2];t=z[h+32>>2];y=z[h+52>>2];I=z[h+56>>2];J=z[h+48>>2];v[i+28>>2]=0;v[i+12>>2]=0;z[i>>2]=J*q;z[i+8>>2]=I*q;z[i+4>>2]=y*q;y=e;e=C(t*q);t=f;f=C(p*q);p=g;g=C(r*q);z[i+24>>2]=C(C(y*e)+C(t*f))+C(p*g);z[i+20>>2]=C(C(e*o)+C(f*n))+C(g*m);z[i+16>>2]=C(C(e*l)+C(f*k))+C(g*j);d=v[v[E>>2]+(b<<2)>>2];b=v[d+36>>2];z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];z[d+24>>2]=z[b+24>>2];e=z[c+8>>2];f=z[b>>2];g=z[c+12>>2];j=z[b+4>>2];k=z[b+12>>2];l=z[c+4>>2];m=z[b+8>>2];n=z[c>>2];o=C(C(C(e*f)+C(C(g*j)+C(k*l)))-C(m*n));r=C(C(C(C(g*k)-C(f*n))-C(l*j))-C(e*m));p=C(C(C(n*j)+C(C(g*m)+C(k*e)))-C(f*l));f=C(C(C(l*m)+C(C(g*f)+C(k*n)))-C(j*e));e=C(C(1)/C(K(C(C(r*r)+C(C(p*p)+C(C(f*f)+C(o*o)))))));z[b+4>>2]=o*e;z[b+12>>2]=r*e;z[b>>2]=f*e;z[b+8>>2]=p*e;z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];z[b+24>>2]=z[c+24>>2];z[b+64>>2]=z[h>>2];z[b+68>>2]=z[h+4>>2];z[b+72>>2]=z[h+8>>2];j=z[c+52>>2];k=z[c+28>>2];l=z[c+40>>2];m=z[c+56>>2];n=z[c+32>>2];o=z[c+44>>2];e=z[h+16>>2];f=z[h+20>>2];g=z[h+24>>2];z[b+88>>2]=C(C(e*z[c+36>>2])+C(f*z[c+48>>2]))+C(g*z[c+60>>2]);z[b+84>>2]=C(C(e*n)+C(f*o))+C(g*m);z[b+80>>2]=C(C(e*k)+C(f*l))+C(g*j);if(pz(d,z[s+52>>2],w[s+64|0],w[s+66|0],i,v[v[A+100>>2]+(v[v[A+204>>2]+((v[(B(a,48)+H|0)+36>>2]&33554431)<<2)>>2]<<2)>>2]!=0)==C(0)){v[d+64>>2]=0;v[d+68>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+72>>2]=0;v[d+56>>2]=0;u[d+28>>1]=x[d+28>>1]|16}b=a;if((D|0)!=(b|0)){continue}break}}xa=i+32|0}function Gz(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=C(0),m=0,n=0,o=0,p=0,q=C(0),r=0,s=0,u=0,x=0,y=0,A=0,B=0,D=0;k=32;m=xa-16|0;xa=m;t[m+12|0]=0;f=m-128|0;xa=f;v[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;d=e;while(1){d=z[v[(b<<2)+a>>2]+16>>2]>2]+16>>2]?b:d;c=(b|0)<(g|0);b=b+1|0;if(c){continue}break}if((d|0)!=(e|0)){b=(d<<2)+a|0;c=v[b>>2];d=b;b=(e<<2)+a|0;v[d>>2]=v[b>>2];v[b>>2]=c}if((g|0)!=(h|0)){continue}break b}}j=(h<<2)+a|0;e=v[j>>2];l=z[e+16>>2];d=((g+h|0)/2<<2)+a|0;c=v[d>>2];c:{if(!(l>z[c+16>>2])){b=e;break c}v[j>>2]=c;v[d>>2]=e;b=v[j>>2];l=z[b+16>>2];c=e}n=(g<<2)+a|0;e=v[n>>2];q=z[e+16>>2];d:{if(!(q>2]=e;v[n>>2]=b;c=v[d>>2]}if(z[c+16>>2]>l){v[d>>2]=b;v[n>>2]=c;c=v[d>>2]}b=d;d=g-1|0;j=(d<<2)+a|0;v[b>>2]=v[j>>2];v[j>>2]=c;b=h;while(1){l=z[c+16>>2];while(1){e=b;b=b+1|0;n=(b<<2)+a|0;p=v[n>>2];if(l>z[p+16>>2]){continue}break}while(1){d=d-1|0;r=(d<<2)+a|0;s=v[r>>2];if(l>2]){continue}break}if((b|0)<(d|0)){v[n>>2]=s;v[r>>2]=p;c=v[j>>2];continue}break}v[n>>2]=c;v[j>>2]=p;e:{if((b-h|0)<(g-b|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(x=d,y=c,A=Ba[v[v[b>>2]+20>>2]](b)|0?58811:63804,B=17218,D=155,u=v[v[d>>2]+8>>2],Ba[u](x|0,y|0,A|0,B|0,D|0)|0)}else{b=0}k=k<<1;b=I9(b,f,i<<2);c=o;o=1;if(!(!c|!f)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}f=b}b=(i<<2)+f|0;v[b>>2]=h;v[b+4>>2]=e;h=e+2|0;break e}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(D=d,B=c,A=Ba[v[v[b>>2]+20>>2]](b)|0?58811:63804,y=17218,x=155,u=v[v[d>>2]+8>>2],Ba[u](D|0,B|0,A|0,y|0,x|0)|0)}else{b=0}k=k<<1;b=I9(b,f,i<<2);c=o;o=1;if(!(!c|!f)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}f=b}b=(i<<2)+f|0;v[b>>2]=e+2;v[b+4>>2]=g;g=e}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+f>>2];g=v[((i<<2)+f|0)-4>>2];i=b;continue}break}if(!o|!f){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,f)}if(w[m+12|0]){v9(v[m+8>>2])}xa=m+16|0}function WB(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;h=v[b+24>>2];g=v[37696];f=g+12|0;i=(v[c>>2]+v[a+40>>2]|0)+1|0;e=Saa(i,0,28,0);k=e+4|0;e=(o=f,p=Aa?-1:e>>>0>k>>>0?-1:k,q=Ba[v[v[g>>2]+20>>2]](g)|0?44527:63804,r=12118,s=725,n=v[v[f>>2]+8>>2],Ba[n](o|0,p|0,q|0,r|0,s|0)|0);v[e>>2]=i;f=e+4|0;g=h>>>1|0;e=(v[c>>2]+v[a+40>>2]<<2)+4|0;if(e){i=v[37696]+12|0;e=Ba[v[v[i>>2]+8>>2]](i,e,24422,12118,726)|0}else{e=0}j=B(g,28);f=I9(f,v[a+8>>2],j);k=g<<2;i=I9(e,v[a+36>>2],k);e=f+j|0;z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];z[e+8>>2]=z[b+8>>2];z[e+12>>2]=z[b+12>>2];z[e+16>>2]=z[b+16>>2];z[e+20>>2]=z[b+20>>2];v[e+24>>2]=(v[c>>2]+(v[b+24>>2]>>>1|0)<<1)+2;j=i+k|0;v[j>>2]=d;b=v[a+52>>2];if(!(!b|!(v[b+(d>>>3&536870908)>>2]>>>d&1))){h=h>>>6|0;b=b+(h<<2)|0;v[b>>2]=v[b>>2]|1<>2];v[a+60>>2]=b>>>0>h>>>0?b:h}b=v[a+40>>2];if((b|0)!=(g|0)){I9((e+B(v[c>>2],28)|0)+28|0,v[a+8>>2]+B(g,28)|0,B(b-g|0,28));I9((j+(v[c>>2]<<2)|0)+4|0,v[a+36>>2]+(g<<2)|0,v[a+40>>2]-g<<2)}b=v[a+8>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b-4|0)}v[a+8>>2]=f;b=v[a+36>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b)}v[a+36>>2]=i;h=g+1|0;a:{if(!v[c>>2]){b=0;break a}k=v[a+8>>2];l=v[c+4>>2];j=0;e=h;while(1){b=B(e,28)+k|0;f=B(j,28)+l|0;z[b>>2]=z[f>>2];z[b+4>>2]=z[f+4>>2];z[b+8>>2]=z[f+8>>2];z[b+12>>2]=z[f+12>>2];z[b+16>>2]=z[f+16>>2];z[b+20>>2]=z[f+20>>2];f=v[f+24>>2];b:{if(f&1){v[b+24>>2]=f&30|f+(v[a+4>>2]<<5)&-32|1;break b}m=b;b=h+(f>>>1|0)|0;v[m+24>>2]=b<<1;b=i+(b<<2)|0;v[b>>2]=e;v[b+4>>2]=e}e=e+1|0;b=v[c>>2];j=j+1|0;if(b>>>0>j>>>0){continue}break}}v[a+40>>2]=(v[a+40>>2]+b|0)+1;v[i+(h<<2)>>2]=d;b=h+v[c>>2]|0;if(b>>>0>2]){h=v[a+8>>2];while(1){f=i+(b<<2)|0;e=v[f>>2];c:{if((e|0)==(d|0)){v[f>>2]=g;break c}if(e>>>0>=g>>>0){v[f>>2]=(e+v[c>>2]|0)+1;break c}if(!(b&1)){break c}e=h+B(e,28)|0;v[e+24>>2]=(v[e+24>>2]+(v[c>>2]<<1)|0)+2&-2}e=h+B(b,28)|0;f=v[e+24>>2];if(!(f&1)){v[e+24>>2]=(f+(v[c>>2]<<1)|0)+2&-2}b=b+1|0;if(b>>>0>2]){continue}break}}}function nE(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0;f=xa-1184|0;xa=f;t[f+1168|0]=1;v[f+1176>>2]=256;v[f+1180>>2]=256;v[f+1172>>2]=f+144;v[f+144>>2]=v[c+588>>2];l=1;a:while(1){l=l-1|0;c=v[v[f+1172>>2]+(l<<2)>>2];h=z[c+16>>2];i=z[c>>2];m=C(h+i);h=C(h-i);j=z[c+24>>2];k=z[c+8>>2];i=C(j+k);n=z[c+20>>2];o=z[c+4>>2];p=C(n+o);j=C(j-k);k=C(n-o);while(1){b:{z[f+132>>2]=p*C(.5);z[f+128>>2]=m*C(.5);v[f+140>>2]=0;z[f+136>>2]=i*C(.5);z[f+116>>2]=k*C(.5);z[f+112>>2]=h*C(.5);v[f+124>>2]=0;z[f+120>>2]=j*C(.5);g=v[f+132>>2];v[f+48>>2]=v[f+128>>2];v[f+52>>2]=g;g=v[f+140>>2];v[f+56>>2]=v[f+136>>2];v[f+60>>2]=g;g=v[f+116>>2];v[f+32>>2]=v[f+112>>2];v[f+36>>2]=g;g=v[f+124>>2];v[f+40>>2]=v[f+120>>2];v[f+44>>2]=g;c:{d:{if(!ND(d,f+48|0,f+32|0)){break d}g=c;c=v[c+36>>2];if(v[g+40>>2]){break c}q=v[c>>2];if(!q){break d}c=c+4|0;if((q|0)==1){if(Ba[v[v[e>>2]+8>>2]](e,f+76|0,B(v[c>>2],44)+a|0)|0){break d}break b}while(1){r=v[c>>2];g=B(r,24)+b|0;m=z[g+8>>2];h=z[g+20>>2];i=z[g+4>>2];p=z[g+16>>2];j=z[g>>2];k=z[g+12>>2];z[f+96>>2]=C(j+k)*C(.5);z[f+100>>2]=C(i+p)*C(.5);v[f+108>>2]=0;z[f+104>>2]=C(m+h)*C(.5);z[f+80>>2]=C(k-j)*C(.5);z[f+84>>2]=C(p-i)*C(.5);v[f+92>>2]=0;z[f+88>>2]=C(h-m)*C(.5);g=v[f+100>>2];v[f+16>>2]=v[f+96>>2];v[f+20>>2]=g;g=v[f+108>>2];v[f+24>>2]=v[f+104>>2];v[f+28>>2]=g;g=v[f+84>>2];v[f>>2]=v[f+80>>2];v[f+4>>2]=g;g=v[f+92>>2];v[f+8>>2]=v[f+88>>2];v[f+12>>2]=g;if(ND(d,f+16|0,f)){if(!(Ba[v[v[e>>2]+8>>2]](e,f+76|0,B(r,44)+a|0)|0)){break b}}c=c+4|0;q=q-1|0;if(q){continue}break}}s=!l;if(l){continue a}break b}v[v[f+1172>>2]+(l<<2)>>2]=c+48;l=l+1|0;if((l|0)==(v[f+1180>>2]&2147483647)){gD(f+144|0,l<<1)}h=z[c+16>>2];i=z[c>>2];m=C(h+i);h=C(h-i);j=z[c+24>>2];k=z[c+8>>2];i=C(j+k);n=z[c+20>>2];o=z[c+4>>2];p=C(n+o);j=C(j-k);k=C(n-o);continue}break}break}a=v[f+1180>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[f+1172>>2];if((a|0)==(f+144|0)|!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=f+1184|0;return s}function xE(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);b=xa-144|0;xa=b;m=1;a:{if(!(v[c+40>>2]&x[a+12>>1])){break a}t=v[c>>2];if(!v[t+588>>2]){break a}f=z[c+24>>2];g=z[c+20>>2];i=z[c+16>>2];e=z[c+12>>2];m=v[a+4>>2];u=z[m+60>>2];o=z[c+36>>2];p=z[m+120>>2];q=z[c+32>>2];r=z[m+116>>2];G=z[c+28>>2];H=z[m+112>>2];d=z[m+20>>2];l=z[m+16>>2];j=z[m+124>>2];k=z[m+12>>2];v[b+108>>2]=0;v[b+92>>2]=0;v[b+76>>2]=0;v[b+60>>2]=0;v[b+44>>2]=0;n=C(j*C(1.0099999904632568));z[b+72>>2]=n;z[b+68>>2]=n;h=C(e+e);w=C(g*h);j=C(i+i);y=C(f*j);A=C(j*g);B=C(h*f);s=C(C(1)-C(e*h));D=C(i*j);j=C(C(C(k*C(w+y))+C(l*C(A-B)))+C(d*C(s-D)));z[b+52>>2]=j;z[b+40>>2]=j;E=C(h*i);h=C(g+g);F=C(f*h);I=s;s=C(g*h);h=C(C(C(k*C(E-F))+C(l*C(I-s)))+C(d*C(A+B)));z[b+36>>2]=h;l=C(C(C(k*C(C(C(1)-D)-s))+C(l*C(E+F)))+C(d*C(w-y)));z[b+56>>2]=l;d=j>C(0)?j:C(-j);z[b+100>>2]=d;z[b+88>>2]=d;d=h>C(0)?h:C(-h);z[b+84>>2]=d;k=l>C(0)?l:C(-l);z[b+104>>2]=k;v[b+28>>2]=0;z[b+64>>2]=n;z[b+48>>2]=h;z[b+32>>2]=l;z[b+96>>2]=d;z[b+80>>2]=k;d=C(p-o);n=C(d+d);d=C(H-G);o=C(d+d);d=C(r-q);p=C(d+d);q=C(C(g*n)+C(C(e*o)+C(i*p)));r=C(C(f*f)+C(-.5));d=C(C(g*q)+C(C(n*r)-C(f*C(C(e*p)-C(o*i)))));z[b+24>>2]=d;k=C(C(i*q)+C(C(p*r)-C(f*C(C(g*o)-C(n*e)))));z[b+20>>2]=k;f=C(C(e*q)+C(C(o*r)-C(f*C(C(i*n)-C(p*g)))));z[b+16>>2]=f;e=C(u+u);b:{if(e>=C(34028234663852886e22)){i=h==C(0)?k:h>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);e=l==C(0)?f:l>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);if(j==C(0)){g=d;break b}g=j>=C(0)?C(34028234663852886e22):C(-34028234663852886e22);break b}g=C(d+C(j*e));i=C(C(h*e)+k);e=C(f+C(l*e))}v[b+140>>2]=0;v[b+124>>2]=0;z[b+136>>2]=d>g?d:g;z[b+132>>2]=i>2]=d>2]=i>k?k:i;z[b+128>>2]=e>2]=e>f?f:e;c=v[c+4>>2];m=eD(v[c+12>>2],v[c+8>>2],t,b+16|0,v[a+8>>2])}xa=b+144|0;return m|0}function ko(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),y=0,A=C(0),B=C(0),D=C(0),E=C(0),F=C(0);i=xa-32|0;xa=i;o=vh(a);p=z[b+20>>2];F=z[b+16>>2];y=v[a+316>>2];e=y&1024?v[a+56>>2]+144|0:a+112|0;j=z[e+8>>2];q=z[e+4>>2];r=z[e+12>>2];s=z[e>>2];k=z[b+12>>2];f=z[b+8>>2];g=z[b>>2];h=z[b+4>>2];d=C(C(1)/C(K(C(C(k*k)+C(C(f*f)+C(C(g*g)+C(h*h)))))));f=C(f*d);l=z[e+24>>2];l=C(l+l);g=C(g*d);m=z[e+16>>2];m=C(m+m);h=C(h*d);n=z[e+20>>2];n=C(n+n);u=C(C(f*l)+C(C(g*m)+C(h*n)));d=C(k*d);k=C(C(d*d)+C(-.5));A=C(z[b+24>>2]+C(C(f*u)+C(C(l*k)+C(d*C(C(g*n)-C(m*h))))));z[i+24>>2]=A;p=C(p+C(C(h*u)+C(C(n*k)+C(d*C(C(f*m)-C(l*g))))));z[i+20>>2]=p;B=C(C(C(C(d*r)-C(s*g))-C(h*q))-C(f*j));z[i+12>>2]=B;D=C(C(C(g*q)+C(C(d*j)+C(f*r)))-C(s*h));z[i+8>>2]=D;E=C(C(C(f*s)+C(C(d*q)+C(h*r)))-C(j*g));z[i+4>>2]=E;j=C(C(C(h*j)+C(C(d*s)+C(g*r)))-C(q*f));z[i>>2]=j;d=C(F+C(C(g*u)+C(C(m*k)+C(d*C(C(h*l)-C(n*f))))));z[i+16>>2]=d;z[a+280>>2]=A;z[a+276>>2]=p;z[a+272>>2]=d;z[a+268>>2]=B;z[a+264>>2]=D;z[a+260>>2]=E;z[a+256>>2]=j;b=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:e=v[b>>2];if(w[e+4785|0]){break b}default:BG(a- -64|0,i);break a;case 1:break c}}e=v[b>>2]}v[a+316>>2]=y&-2097153;Yu(e,b);v[a+316>>2]=v[a+316>>2]|1048576}if(o){mu(a+20|0,o+5584|0,a);e=o+5652|0;v[e>>2]=v[e>>2]+1}if(v[a+40>>2]){b9(v[37696],8,13059,102,73994,0);bC(v[a+40>>2],a)}d:{if(!o|!c){break d}c=v[a+56>>2];e=v[a+52>>2];if(w[(e&1?c:(b+v[((e>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8|t[(w[a+317|0]&64?c+268|0:a+108|0)|0]&1){break d}d=z[a+308>>2];c=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(c){c=c-16|0}else{c=0}f=z[c+5148>>2];c=d>2]?1:c)){break d}d=c?f:d;e:{f:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:e=v[b>>2];if(w[e+4785|0]){break e}default:z[a+308>>2]=d;v[a+312>>2]=0;VG(a- -64|0,d,1);break d;case 1:break f}}e=v[b>>2]}z[a+308>>2]=d;v[a+312>>2]=0;Yu(e,b);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}xa=i+32|0}function TJ(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=C(0);j=xa-16|0;xa=j;a=v[a>>2];a:{if(!a){break a}a=v[a+32>>2];f=1;b:{if(!a){break b}while(1){f=a;if(v[a+28>>2]==(b|0)){break b}a=v[a>>2];if(a){continue}break}f=1}a=v[c>>2];if(a&1){gS(f,e);a=v[c>>2]}if(a&2){ZI(f,2,1);a=v[c>>2]}if(a&128){if(v[f+8>>2]<0){aS(f)}a=v[c>>2]}if(a&4){gS(f,e);a=v[c>>2]}if(a&8){ZI(f,1,4);a=v[c>>2]}if(a&64){t[j+8|0]=w[d|0];h=xa-48|0;xa=h;i=v[f+28>>2];g=w[i- -64|0];d=g&5;b=w[j+8|0];a=b&5;c:{d:{if(((d|0)!=0|0)!=((a|0)!=0|0)){if(!(!d|a)){k=v[f+4>>2];e=g&4;e:{if(!e){break e}b=v[f+8>>2];a=b>>>5&67108863;d=v[v[k+40>>2]+980>>2];if(a>>>0>=(v[d+152>>2]&2147483647)>>>0){break e}if(v[v[d+148>>2]+(a<<2)>>2]>>>b&1){break d}}l=z[i+60>>2];b=v[k+44>>2];a=w[b+9|0];d=2;f:{if(a-3>>>0<4294967294){break f}d=2;if(!k){break f}d=t[b+44|0]&1?1:2}_I(f,l,a?(d|v[k+48>>2]<<2)+4|0:0,e);break c}$I(f);b=h+8|0;d=v[v[f+4>>2]+40>>2];a=v[v[d+976>>2]+1024>>2];Ba[v[v[a>>2]+84>>2]](b,a);pJ(v[d+2168>>2],f,4,b,(v[d+2360>>2]&8)>>>3|0);break c}if(!(b&4)^(g&4)>>>2){break c}}aS(f)}a=w[j+8|0]&2;g:{if(g&2){if(a){break g}b=v[f+4>>2];a=v[b+44>>2];if(w[a+9|0]-3>>>0<4294967294|!b|(v[f+36>>2]!=-1|y[b+152>>2]>4294967293)){break g}if(t[b+92|0]&1|(w[a+44|0]&3)==3|(!(w[v[f+28>>2]- -64|0]&2)|w[b+149|0]&16)){break g}kS(v[v[b+40>>2]+1152>>2],f);break g}if(!a|v[f+36>>2]==-1){break g}mS(v[v[v[f+4>>2]+40>>2]+1152>>2],f)}xa=h+48|0;a=v[c>>2]}if(a&16){h=v[f+8>>2];if((h|0)<0){g=v[v[v[f+4>>2]+40>>2]+980>>2];z[v[v[g+192>>2]+4>>2]+(h<<2)>>2]=z[v[f+28>>2]+60>>2];t[g+365|0]=1;e=h&2147483647;i=e+32>>>5|0;h:{if(i>>>0<=(v[g+164>>2]&2147483647)>>>0){d=v[g+160>>2];break h}a=v[g+168>>2];d=Ba[v[v[a>>2]+8>>2]](a,i<<2,17999,438)|0;a=v[g+160>>2];i:{if(!a){break i}I9(d,a,v[g+164>>2]<<2);if(v[g+164>>2]<0){break i}b=v[g+160>>2];if(!b){break i}a=v[g+168>>2];Ba[v[v[a>>2]+12>>2]](a,b)}a=v[g+164>>2];J9((a<<2)+d|0,0,i-a<<2);v[g+164>>2]=i;v[g+160>>2]=d}a=(e>>>3&268435452)+d|0;v[a>>2]=v[a>>2]|1<>2]}if(!(a&32)){break a}ZI(f,16,1)}xa=j+16|0}function dD(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0;f=xa-1184|0;xa=f;t[f+1168|0]=1;v[f+1176>>2]=256;v[f+1180>>2]=256;v[f+1172>>2]=f+144;v[f+144>>2]=v[c+588>>2];l=1;a:while(1){l=l-1|0;c=v[v[f+1172>>2]+(l<<2)>>2];h=z[c+16>>2];i=z[c>>2];m=C(h+i);h=C(h-i);j=z[c+24>>2];k=z[c+8>>2];i=C(j+k);n=z[c+20>>2];o=z[c+4>>2];p=C(n+o);j=C(j-k);k=C(n-o);while(1){b:{z[f+132>>2]=p*C(.5);z[f+128>>2]=m*C(.5);v[f+140>>2]=0;z[f+136>>2]=i*C(.5);z[f+116>>2]=k*C(.5);z[f+112>>2]=h*C(.5);v[f+124>>2]=0;z[f+120>>2]=j*C(.5);g=v[f+132>>2];v[f+48>>2]=v[f+128>>2];v[f+52>>2]=g;g=v[f+140>>2];v[f+56>>2]=v[f+136>>2];v[f+60>>2]=g;g=v[f+116>>2];v[f+32>>2]=v[f+112>>2];v[f+36>>2]=g;g=v[f+124>>2];v[f+40>>2]=v[f+120>>2];v[f+44>>2]=g;c:{d:{if(!ND(d,f+48|0,f+32|0)){break d}g=c;c=v[c+36>>2];if(v[g+40>>2]){break c}q=v[c>>2];if(!q){break d}c=c+4|0;if((q|0)==1){if(Ba[v[v[e>>2]>>2]](e,f+76|0,(v[c>>2]<<3)+a|0)|0){break d}break b}while(1){r=v[c>>2];g=B(r,24)+b|0;m=z[g+8>>2];h=z[g+20>>2];i=z[g+4>>2];p=z[g+16>>2];j=z[g>>2];k=z[g+12>>2];z[f+96>>2]=C(j+k)*C(.5);z[f+100>>2]=C(i+p)*C(.5);v[f+108>>2]=0;z[f+104>>2]=C(m+h)*C(.5);z[f+80>>2]=C(k-j)*C(.5);z[f+84>>2]=C(p-i)*C(.5);v[f+92>>2]=0;z[f+88>>2]=C(h-m)*C(.5);g=v[f+100>>2];v[f+16>>2]=v[f+96>>2];v[f+20>>2]=g;g=v[f+108>>2];v[f+24>>2]=v[f+104>>2];v[f+28>>2]=g;g=v[f+84>>2];v[f>>2]=v[f+80>>2];v[f+4>>2]=g;g=v[f+92>>2];v[f+8>>2]=v[f+88>>2];v[f+12>>2]=g;if(ND(d,f+16|0,f)){if(!(Ba[v[v[e>>2]>>2]](e,f+76|0,(r<<3)+a|0)|0)){break b}}c=c+4|0;q=q-1|0;if(q){continue}break}}s=!l;if(l){continue a}break b}v[v[f+1172>>2]+(l<<2)>>2]=c+48;l=l+1|0;if((l|0)==(v[f+1180>>2]&2147483647)){gD(f+144|0,l<<1)}h=z[c+16>>2];i=z[c>>2];m=C(h+i);h=C(h-i);j=z[c+24>>2];k=z[c+8>>2];i=C(j+k);n=z[c+20>>2];o=z[c+4>>2];p=C(n+o);j=C(j-k);k=C(n-o);continue}break}break}a=v[f+1180>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[f+1172>>2];if((a|0)==(f+144|0)|!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=f+1184|0;return s}function vX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),v=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);c=xa-176|0;xa=c;j=z[b+20>>2];k=z[e+40>>2];m=z[b+24>>2];n=z[e+44>>2];o=z[b+16>>2];p=z[e+36>>2];z[c+112>>2]=z[e>>2];z[c+116>>2]=z[e+4>>2];z[c+120>>2]=z[e+8>>2];z[c+124>>2]=z[e+12>>2];z[c+128>>2]=z[e+16>>2];z[c+132>>2]=z[e+20>>2];z[c+136>>2]=z[e+24>>2];z[c+140>>2]=z[e+28>>2];l=z[e+32>>2];q=C(n-m);z[c+156>>2]=q;r=C(k-j);z[c+152>>2]=r;z[c+144>>2]=l;p=C(p-o);z[c+148>>2]=p;z[c+160>>2]=z[e+48>>2];z[c+164>>2]=z[e+52>>2];z[c+168>>2]=z[e+56>>2];j=z[b>>2];k=C(j+j);l=z[b+8>>2];s=z[b+4>>2];m=z[b+12>>2];n=C(m+m);o=z[a+8>>2];v=C(C(C(k*l)-C(s*n))*o);z[c+88>>2]=v;z[c+100>>2]=-v;l=C(o*C(C(l*n)+C(k*s)));z[c+84>>2]=l;z[c+96>>2]=-l;j=C(o*C(C(j*k)+C(C(m*n)+C(-1))));z[c+80>>2]=j;z[c+92>>2]=-j;z[c+104>>2]=z[a+4>>2];z[c+48>>2]=z[d>>2];z[c+52>>2]=z[d+4>>2];z[c+56>>2]=z[d+8>>2];j=z[d+12>>2];z[c+72>>2]=q;z[c+68>>2]=r;z[c+64>>2]=p;z[c+60>>2]=j;j=z[f>>2];k=z[f+4>>2];z[c+24>>2]=-z[f+8>>2];z[c+20>>2]=-k;z[c+16>>2]=-j;u[c+8>>1]=x[i>>1];a=c+160|0;d=H2(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=z[c+32>>2];j=z[c+36>>2];k=z[c+40>>2];u[h+12>>1]=2;z[h+36>>2]=-k;z[h+32>>2]=-j;z[h+28>>2]=-g;if(!(t[i|0]&1)){break a}g=z[h+40>>2];if(g==C(0)){break a}j=z[f+8>>2];k=z[f+4>>2];z[c+148>>2]=C(g*z[f>>2])+z[c+148>>2];z[c+152>>2]=C(g*k)+z[c+152>>2];z[c+156>>2]=C(g*j)+z[c+156>>2];G_(c+80|0,c+92|0,c+148|0,a,c+112|0,0,c+16|0);m=z[b+16>>2];n=z[b+20>>2];o=z[b+24>>2];p=z[c+148>>2];l=z[c+136>>2];q=z[c+112>>2];r=z[c+124>>2];s=z[c+152>>2];v=z[c+140>>2];w=z[c+116>>2];y=z[c+128>>2];A=z[c+156>>2];B=z[c+144>>2];g=z[c+24>>2];D=z[c+120>>2];j=z[c+16>>2];E=z[c+132>>2];k=z[c+20>>2];u[h+12>>1]=x[h+12>>1]|1;z[h+24>>2]=o+C(A+C(C(C(j*D)+C(k*E))+C(g*B)));z[h+20>>2]=n+C(s+C(C(C(j*w)+C(k*y))+C(g*v)));z[h+16>>2]=m+C(p+C(C(C(j*q)+C(k*r))+C(g*l)))}xa=c+176|0;return d|0}function dW(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=0,B=0,D=C(0);g=xa-4288|0;xa=g;i=z[d+4>>2];k=C(i+i);h=z[d+8>>2];o=C(k*h);q=z[d>>2];j=C(q+q);m=z[d+12>>2];p=C(j*m);l=C(o-p);s=C(j*h);u=C(k*m);n=C(s+u);o=C(o+p);w=C(j*i);x=C(h+h);y=C(x*m);m=C(w-y);p=C(s-u);s=C(w+y);j=C(C(1)-C(q*j));q=C(h*x);h=C(j-q);k=C(i*k);i=C(C(C(1)-k)-q);q=z[c+12>>2];u=z[c+8>>2];w=z[d+24>>2];x=z[d+20>>2];y=z[c+4>>2];D=z[d+16>>2];j=C(j-k);a:{if(j>2]=w;z[g+4276>>2]=x;z[g+4272>>2]=D;z[g+4268>>2]=h;z[g+4264>>2]=i;z[g+4260>>2]=j;z[g+4256>>2]=l;v[g+4200>>2]=-1;z[g+28>>2]=q;z[g+24>>2]=u;z[g+20>>2]=y;v[g+16>>2]=3;r=g+4200|0;A=g+16|0;lV(r,A);v[g+4144>>2]=-1;B=g+4144|0;lV(B,e);v[g+4136>>2]=0;v[g+4140>>2]=0;d=0;v[g+4112>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;c=xa-400|0;xa=c;e=c+328|0;A_(z_(c+104|0,r+4|0),e);i=z[r+8>>2];l=z[r+4>>2];h=z[g>>2];n=C(h+z[r+12>>2]);z[c+100>>2]=n;i=C(h+i);z[c+96>>2]=i;z[c+88>>2]=-n;z[c+84>>2]=-i;h=C(h+l);z[c+92>>2]=h;z[c+80>>2]=-h;r=c- -64|0;v[r>>2]=0;v[r+4>>2]=1065353216;v[c+56>>2]=0;v[c+60>>2]=0;v[c+48>>2]=0;v[c+52>>2]=1065353216;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=1065353216;v[c+36>>2]=1065353216;v[c+16>>2]=1065353216;v[c+20>>2]=0;t[c+72|0]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=1065353216;v[c+4>>2]=0;e=CZ(e,c+80|0,B,g+4256|0,f,g,A,c,1);xa=c+400|0;b:{if(!e){break b}if(!RV(a,b,v[g+4112>>2],g+16|0)){break b}d=v[g+4112>>2]!=0}xa=g+4288|0;return d|0}function fv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);s=z[b+8>>2];k=z[d>>2];o=z[c+4>>2];m=z[c+12>>2];l=z[d+8>>2];i=z[d+12>>2];p=z[c+8>>2];q=z[c>>2];j=z[d+4>>2];A=C(C(k*o)+C(C(C(m*l)-C(i*p))-C(q*j)));t=C(C(j*p)+C(C(C(m*k)-C(i*q))-C(o*l)));u=C(t+t);B=C(C(l*q)+C(C(C(m*j)-C(i*o))-C(p*k)));w=C(C(p*l)+C(C(o*j)+C(C(m*i)+C(q*k))));x=C(w+w);G=C(s*C(C(A*u)-C(B*x)));F=C(-q);E=z[c+16>>2];k=C(z[d+16>>2]-E);l=C(k+k);H=z[c+20>>2];k=C(z[d+20>>2]-H);i=C(k+k);r=z[c+24>>2];k=C(z[d+24>>2]-r);j=C(k+k);n=C(C(C(F*l)-C(i*o))-C(p*j));k=C(C(m*m)+C(-.5));I=C(C(C(j*k)+C(m*C(C(o*l)-C(q*i))))-C(p*n));A=C(s*C(C(A*x)+C(u*B)));B=C(C(C(i*k)+C(m*C(C(q*j)-C(p*l))))-C(o*n));n=C(C(C(l*k)+C(m*C(C(p*i)-C(o*j))))-C(q*n));D=C(s*C(C(t*u)+C(C(w*x)+C(-1))));y=z[b+4>>2];l=C(C(n-D)-y);i=C(q+q);j=C(m+m);s=C(C(i*p)-C(o*j));t=C(C(p*j)+C(i*o));u=C(C(q*i)+C(C(m*j)+C(-1)));w=C(-p);x=C(-o);i=C(C(n+D)-y);D=z[e>>2];b=i<=D;a:{if(!b){break a}a=v[g+4096>>2];if(a>>>0>63){break a}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=-s;z[a+4>>2]=-t;z[a>>2]=-u;v[a+52>>2]=-1;z[a+12>>2]=i;y=r;j=C(I+G);j=C(j+j);i=C(i+i);n=C(B+A);n=C(n+n);r=C(C(p*j)+C(C(q*i)+C(o*n)));z[a+24>>2]=y+C(C(p*r)+C(C(j*k)+C(m*C(C(q*n)+C(i*x)))));z[a+20>>2]=H+C(C(o*r)+C(C(n*k)+C(m*C(C(p*i)+C(j*F)))));z[a+16>>2]=E+C(C(q*r)+C(C(i*k)+C(m*C(C(o*j)+C(n*w)))))}b:{if(!(l<=D)){break b}b=1;a=v[g+4096>>2];if(a>>>0>63){break b}r=z[c+16>>2];E=z[c+20>>2];i=z[c+24>>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+8>>2]=-s;z[a+4>>2]=-t;z[a>>2]=-u;v[a+52>>2]=-1;z[a+12>>2]=l;y=i;i=C(I-G);i=C(i+i);l=C(l+l);j=C(B-A);j=C(j+j);n=C(C(p*i)+C(C(q*l)+C(o*j)));z[a+24>>2]=y+C(C(p*n)+C(C(i*k)+C(m*C(C(q*j)+C(l*x)))));z[a+20>>2]=E+C(C(o*n)+C(C(j*k)+C(m*C(C(p*l)+C(i*F)))));z[a+16>>2]=r+C(C(q*n)+C(C(l*k)+C(m*C(C(o*i)+C(j*w)))))}return b|0}function K4(a,b,c,d){var e=0,f=0,g=C(0),h=0,i=0,j=0,k=0,l=C(0);j=xa-16|0;xa=j;f=v[b>>2];t[d|0]=0;h=v[b>>2];g=C(-z[a+252>>2]);a:{b:{if(c){l=z[b+24>>2];i=1;while(1){k=v[f+32>>2];c=v[k+36>>2];c:{d:{if(!(z[c+24>>2]>2]+36>>2];if(g>2]*z[e+36>>2])+C(C(z[c+12>>2]*z[e+28>>2])+C(z[e+32>>2]*z[c+16>>2])))-z[c+40>>2])){break b}e=v[f+36>>2];if(g>2]*z[c+36>>2])+C(C(z[e+12>>2]*z[c+28>>2])+C(z[c+32>>2]*z[e+16>>2])))-z[e+40>>2])){break d}break c}e=v[f+36>>2];if(g>2]*z[c+36>>2])+C(C(z[e+12>>2]*z[c+28>>2])+C(z[c+32>>2]*z[e+16>>2])))-z[e+40>>2])){break b}e=v[v[k+32>>2]+36>>2];if(!(g>2]*z[e+36>>2])+C(C(z[c+12>>2]*z[e+28>>2])+C(z[e+32>>2]*z[c+16>>2])))-z[c+40>>2]))){break c}}i=0}f=v[f+28>>2];if((h|0)!=(f|0)){continue}break}e=0;if(i){break a}v[b+48>>2]=2;break a}while(1){e=v[f+36>>2];i=v[f+32>>2];c=v[i+36>>2];if(g>2]*z[c+36>>2])+C(C(z[e+12>>2]*z[c+28>>2])+C(z[c+32>>2]*z[e+16>>2])))-z[e+40>>2])){break b}e=v[v[i+32>>2]+36>>2];if(g>2]*z[e+36>>2])+C(C(z[c+12>>2]*z[e+28>>2])+C(z[e+32>>2]*z[c+16>>2])))-z[c+40>>2])){break b}f=v[f+28>>2];if((h|0)!=(f|0)){continue}break}e=0;break a}e=0;v[a+312>>2]=0;if(!x4(b,f,a+308|0)){t[d|0]=1;break a}c=v[a+312>>2];v[a+100>>2]=v[a+100>>2]-c;if(!c){e=1;break a}i=a+260|0;h=0;while(1){e=v[v[a+308>>2]+(h<<2)>>2];f=v[e+8>>2];if(f){while(1){c=f;v[j+12>>2]=c;f=v[c+20>>2];v[c+20>>2]=0;g=C(C(C(z[b+20>>2]*z[c+8>>2])+C(C(z[b+12>>2]*z[c>>2])+C(z[c+4>>2]*z[b+16>>2])))-z[b+40>>2]);e:{if(g>z[a+252>>2]){z[c+16>>2]=g;d=v[b+8>>2];if(!d){v[b+8>>2]=c;v[c+20>>2]=0;z[c+16>>2]=g;break e}if(g>2]){v[c+20>>2]=v[d+20>>2];v[d+20>>2]=c;break e}v[c+20>>2]=d;v[b+8>>2]=c;break e}d=v[a+264>>2];if(d>>>0>=(v[a+268>>2]&2147483647)>>>0){H4(i,j+12|0);break e}v[v[a+260>>2]+(d<<2)>>2]=c;v[a+264>>2]=d+1}if(f){continue}break}v[e+8>>2]=0;c=v[a+312>>2]}e=1;h=h+1|0;if(h>>>0>>0){continue}break}}xa=j+16|0;return e}function qA(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)-32|0;gA(d,c);f=x[d+22>>1];if(f){d=v[d+24>>2];l=d+(f<<4)|0;while(1){k=w[d|0]==3;e=d- -64|0;g=w[d+3|0];h=w[d+2|0];a:{if(!h){break a}d=k?112:48;if(h-1>>>0>=3){j=h&252;f=0;while(1){z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[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){z[e+36>>2]=z[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){v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[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){v[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)-32|0;gA(a,c);b=x[a+22>>1];if(b){d=v[a+24>>2];h=d+(b<<4)|0;while(1){g=w[d|0]==3;e=d- -64|0;b=w[d+3|0];c=w[d+2|0];c:{if(!c){break c}a=g?112:48;if(c-1>>>0>=3){i=c&252;f=0;while(1){z[e+36>>2]=z[e+40>>2];d=a+e|0;z[d+36>>2]=z[d+40>>2];d=a+d|0;z[d+36>>2]=z[d+40>>2];d=a+d|0;z[d+36>>2]=z[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){z[e+36>>2]=z[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){v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[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){v[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 nA(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)-32|0;fA(d,c);f=x[d+22>>1];if(f){d=v[d+24>>2];l=d+(f<<4)|0;while(1){k=w[d|0]==3;e=d- -64|0;g=w[d+3|0];h=w[d+2|0];a:{if(!h){break a}d=k?112:48;if(h-1>>>0>=3){j=h&252;f=0;while(1){z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[e+40>>2];e=d+e|0;z[e+36>>2]=z[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){z[e+36>>2]=z[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){v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[d+44>>2]=0;d=d+e|0;v[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){v[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)-32|0;fA(a,c);b=x[a+22>>1];if(b){d=v[a+24>>2];h=d+(b<<4)|0;while(1){g=w[d|0]==3;e=d- -64|0;b=w[d+3|0];c=w[d+2|0];c:{if(!c){break c}a=g?112:48;if(c-1>>>0>=3){i=c&252;f=0;while(1){z[e+36>>2]=z[e+40>>2];d=a+e|0;z[d+36>>2]=z[d+40>>2];d=a+d|0;z[d+36>>2]=z[d+40>>2];d=a+d|0;z[d+36>>2]=z[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){z[e+36>>2]=z[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){v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[d+44>>2]=0;d=a+d|0;v[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){v[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 Ms(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;f=xa+-64|0;xa=f;t[f+48|0]=1;v[f+56>>2]=0;v[f+60>>2]=10;v[f+52>>2]=f+8;h=v[a+84>>2];a:{b:{if(h>>>0>(v[f+60>>2]&2147483647)>>>0){c=f+8|0;c:{if(!h){break c}b=h<<2;if(!(w[c+40|0]|b>>>0>40)){t[c+40|0]=1;d=c;break c}if(!b){break c}d=v[37696];e=d+12|0;d=(n=e,o=b,p=Ba[v[v[d>>2]+20>>2]](d)|0?58297:63804,q=16608,r=553,m=v[v[e>>2]+8>>2],Ba[m](n|0,o|0,p|0,q|0,r|0)|0)}e=v[c+44>>2];b=v[c+48>>2];if((b|0)>0){i=(b<<2)+d|0;b=d;while(1){v[b>>2]=v[e>>2];e=e+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}e=v[c+44>>2]}d:{if(v[c+52>>2]<0){break d}if((c|0)==(e|0)){t[c+40|0]=0;break d}if(!e){break d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e)}v[c+52>>2]=h;v[c+44>>2]=d;break b}if(!h){break a}}while(1){k=v[a+80>>2]+(g<<2)|0;d=v[f+56>>2];e:{if(d>>>0>=(v[f+60>>2]&2147483647)>>>0){d=0;c=f+8|0;b=v[c+52>>2];j=b&2147483647?b<<1:1;f:{if(!j){break f}b=j<<2;if(!(w[c+40|0]|b>>>0>40)){t[c+40|0]=1;d=c;break f}if(!b){break f}d=v[37696];e=d+12|0;d=(r=e,q=b,p=Ba[v[v[d>>2]+20>>2]](d)|0?58297:63804,o=16608,n=553,m=v[v[e>>2]+8>>2],Ba[m](r|0,q|0,p|0,o|0,n|0)|0)}e=v[c+48>>2];l=(e<<2)+d|0;if((e|0)>0){i=v[c+44>>2];b=d;while(1){v[b>>2]=v[i>>2];i=i+4|0;b=b+4|0;if(l>>>0>b>>>0){continue}break}}v[l>>2]=v[k>>2];g:{if(v[c+52>>2]<0){break g}b=v[c+44>>2];if((b|0)==(c|0)){t[c+40|0]=0;break g}if(!b){break g}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);e=v[c+48>>2]}v[c+52>>2]=j;v[c+44>>2]=d;v[c+48>>2]=e+1;break e}v[v[f+52>>2]+(d<<2)>>2]=v[k>>2];v[f+56>>2]=d+1}g=g+1|0;if((h|0)!=(g|0)){continue}break}}v[a+84>>2]=0;h:{if(w[a+92|0]){Ba[v[v[a>>2]+20>>2]](a);break h}v[a+20>>2]=v[a+20>>2]-1}if(v[f+56>>2]){g=0;while(1){a=v[v[f+52>>2]+(g<<2)>>2];Ba[v[v[a>>2]+20>>2]](a);g=g+1|0;if(g>>>0>2]){continue}break}}a=v[f+60>>2];i:{if((a|0)<0|!(a&2147483647)){break i}a=v[f+52>>2];if((a|0)==(f+8|0)|!a){break i}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,a)}xa=f- -64|0}function m2(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=0,t=C(0),u=C(0),x=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0);i=xa+-64|0;xa=i;j=v[g+4>>2];v[i+48>>2]=v[g>>2];v[i+52>>2]=j;j=v[g+12>>2];v[i+56>>2]=v[g+8>>2];v[i+60>>2]=j;j=v[a+16>>2];a:{b:{c:{d:{e:{if(w[c+44|0]){if(j){break e}break c}if(!j){break c}o=C(34028234663852886e22);j=0;while(1){s=v[a+24>>2]+B(p,20)|0;G=z[s+12>>2];k=v[a+28>>2]+B(w[s+19|0],12)|0;H=z[k+8>>2];I=z[k>>2];J=z[k+4>>2];k=v[c+40>>2];t=z[k+36>>2];u=z[k+40>>2];x=z[s>>2];A=z[k+20>>2];D=z[s+4>>2];E=z[k+24>>2];F=z[s+8>>2];q=z[k+32>>2];n=z[k+8>>2];r=z[k>>2];m=z[k+4>>2];l=z[k+16>>2];v[i+12>>2]=0;q=C(C(u*F)+C(C(q*x)+C(D*t)));m=C(C(n*F)+C(C(r*x)+C(D*m)));l=C(C(E*F)+C(C(l*x)+C(D*A)));n=C(C(1)/C(K(C(C(q*q)+C(C(m*m)+C(l*l))))));z[i+8>>2]=q*n;z[i+4>>2]=l*n;z[i>>2]=m*n;Ba[v[v[b>>2]+12>>2]](b,i,i+32|0,i+16|0);l=z[i+32>>2];r=C(n*C(-G));m=z[d>>2];if(l>C(r+m)|C(m+z[i+16>>2])>2];v[i+56>>2]=v[i+8>>2];v[i+60>>2]=j;j=v[i+4>>2];v[i+48>>2]=v[i>>2];v[i+52>>2]=j;o=l;j=p}p=p+1|0;if(p>>>0>2]){continue}break}break b}o=C(34028234663852886e22);j=0;c=0;while(1){k=v[a+24>>2]+B(c,20)|0;t=z[k+12>>2];p=v[a+28>>2]+B(w[k+19|0],12)|0;q=z[p+8>>2];n=z[p>>2];r=z[p+4>>2];u=z[k>>2];A=z[k+4>>2];E=z[k+8>>2];v[i+12>>2]=0;z[i+8>>2]=E;z[i+4>>2]=A;z[i>>2]=u;Ba[v[v[b>>2]+12>>2]](b,i,i+32|0,i+16|0);l=z[i+32>>2];m=z[d>>2];if(l>C(m-t)|C(C(E*q)+C(C(u*n)+C(r*A)))>C(m+z[i+16>>2])){break d}l=C(C(-t)-l);if(l>2];v[i+56>>2]=v[i+8>>2];v[i+60>>2]=j;j=v[i+4>>2];v[i+48>>2]=v[i>>2];v[i+52>>2]=j;o=l;j=c}c=c+1|0;if(c>>>0>2]){continue}break}break b}a=0;break a}j=0;o=C(34028234663852886e22)}if(z[e>>2]>C(o+C(1.1920928955078125e-7))){a=v[i+52>>2];v[g>>2]=v[i+48>>2];v[g+4>>2]=a;a=v[i+60>>2];v[g+8>>2]=v[i+56>>2];v[g+12>>2]=a;z[e>>2]=o;v[h>>2]=1}v[f>>2]=j;a=1}xa=i- -64|0;return a}function Fh(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);e=xa+-64|0;xa=e;a:{if(v[(Ba[v[v[a>>2]+24>>2]](a)|0)+4656>>2]){b9(v[37696],2,10974,141,66842,0);break a}t[e+56|0]=w[c|0];g=xa-16|0;xa=g;f=v[a+24>>2];if(f){t[g+8|0]=w[e+56|0];i=xa-16|0;xa=i;j=v[f>>2];t[i+8|0]=w[g+8|0];if(Ba[v[v[j>>2]+36>>2]](j,b,i+8|0)|0){b=v[v[f+4>>2]+1012>>2];Ba[v[v[b>>2]+64>>2]](b,v[f>>2],f+48|0)}xa=i+16|0}xa=g+16|0;b=w[c|0];b:{if(!(b&4)){break b}i=v[a+100>>2];if(!i){break b}while(1){b=v[v[a+96>>2]+(h<<2)>>2];k=z[b+80>>2];z[e+24>>2]=k;l=z[b+84>>2];z[e+28>>2]=l;m=z[b+88>>2];z[e+32>>2]=m;n=z[b+92>>2];z[e+36>>2]=n;o=z[b+96>>2];z[e+40>>2]=o;p=z[b+100>>2];z[e+44>>2]=p;q=z[b+104>>2];z[e+48>>2]=q;z[b+280>>2]=q;z[b+276>>2]=p;z[b+272>>2]=o;z[b+268>>2]=n;z[b+264>>2]=m;z[b+260>>2]=l;z[b+256>>2]=k;f=b+48|0;c:{d:{e:{switch((v[b+52>>2]>>>30|0)-2|0){case 0:g=v[f>>2];if(w[g+4785|0]){break d}default:BG(b- -64|0,e+24|0);break c;case 1:break e}}g=v[f>>2]}v[b+316>>2]=v[b+316>>2]&-2097153;Yu(g,f);v[b+316>>2]=v[b+316>>2]|1048576}h=h+1|0;if((i|0)!=(h|0)){continue}break}b=w[c|0]}i=a+12|0;f:{if(!(b&5)){break f}j=v[a+100>>2];if(!j){break f}f=0;while(1){b=v[v[a+96>>2]+(f<<2)>>2];k=z[b+144>>2];z[e+24>>2]=k;l=z[b+148>>2];z[e+28>>2]=l;m=z[b+152>>2];z[e+32>>2]=m;z[e+8>>2]=z[b+160>>2];z[e+12>>2]=z[b+164>>2];z[e+16>>2]=z[b+168>>2];z[b+292>>2]=m;z[b+288>>2]=l;z[b+284>>2]=k;g=b- -64|0;c=b+48|0;g:{h:{i:{switch((v[b+52>>2]>>>30|0)-2|0){case 0:h=v[c>>2];if(w[h+4785|0]){break h}default:CG(g,e+24|0);break g;case 1:break i}}h=v[c>>2]}Yu(h,c);v[b+316>>2]=v[b+316>>2]|4194304}z[b+296>>2]=z[e+8>>2];z[b+300>>2]=z[e+12>>2];z[b+304>>2]=z[e+16>>2];j:{k:{l:{switch((v[b+52>>2]>>>30|0)-2|0){case 0:h=v[c>>2];if(w[h+4785|0]){break k}default:DG(g,e+8|0);break j;case 1:break l}}h=v[c>>2]}Yu(h,c);v[b+316>>2]=v[b+316>>2]|8388608}f=f+1|0;if((j|0)!=(f|0)){continue}break}}dj(i,0,d)}xa=e- -64|0}function Tm(a){var b=0,c=0,d=0;a:{b:{switch((w[a+7|0]&15)-1|0){case 0:case 1:b=a-32|0;c=v[a-24>>2];c:{if(t[a-26|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;d=a+1552|0;v[d>>2]=v[d>>2]-1;a=a+1560|0;v[b>>2]=v[a>>2];v[a>>2]=b;break c}Ba[v[v[b>>2]+12>>2]](b)|0}break a;case 2:b=a-48|0;c=v[a-40>>2];d:{if(t[a-42|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;v[a+960>>2]=v[a+960>>2]-1;v[b>>2]=v[a+968>>2];v[a+968>>2]=b;break d}Ba[v[v[b>>2]+12>>2]](b)|0}break a;case 3:b=a-48|0;c=v[a-40>>2];e:{if(t[a-42|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;d=a+3328|0;v[d>>2]=v[d>>2]-1;a=a+3336|0;v[b>>2]=v[a>>2];v[a>>2]=b;break e}Ba[v[v[b>>2]+12>>2]](b)|0}break a;case 4:b=a-48|0;c=v[a-40>>2];f:{if(t[a-42|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;d=a+1256|0;v[d>>2]=v[d>>2]-1;a=a+1264|0;v[b>>2]=v[a>>2];v[a>>2]=b;break f}Ba[v[v[b>>2]+12>>2]](b)|0}break a;case 5:b=a-16|0;g:{if(t[a-10|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;c=a+2144|0;v[c>>2]=v[c>>2]-1;a=a+2152|0;v[b>>2]=v[a>>2];v[a>>2]=b;break g}Ba[v[v[b>>2]+12>>2]](b)|0}$n(v[37393],b,0,2);return;case 6:b=a-12|0;d=v[a-4>>2];h:{if(t[a-6|0]&1){c=v[37389];i:{if(x[a-8>>1]==11){Ba[v[v[b>>2]+12>>2]](b)|0;a=c+2736|0;v[a>>2]=v[a>>2]-1;a=c+2744|0;break i}Ba[v[v[b>>2]+12>>2]](b)|0;a=c+3032|0;v[a>>2]=v[a>>2]-1;a=c+3040|0}v[b>>2]=v[a>>2];v[a>>2]=b;break h}Ba[v[v[b>>2]+12>>2]](b)|0}$n(v[37393],b,d,2);return;case 7:a=v[a+380>>2];j:{if(t[a+6|0]&1){b=v[37389];if(x[a+4>>1]==14){Ba[v[v[a>>2]+12>>2]](a)|0;c=b+3624|0;v[c>>2]=v[c>>2]-1;b=b+3632|0;v[a>>2]=v[b>>2];v[b>>2]=a;break j}Ba[v[v[a>>2]+12>>2]](a)|0;c=b+3920|0;v[c>>2]=v[c>>2]-1;b=b+3928|0;v[a>>2]=v[b>>2];v[b>>2]=a;break j}Ba[v[v[a>>2]+12>>2]](a)|0}$n(v[37393],a,0,2);return;case 8:b=a-8|0;k:{if(t[a-2|0]&1){a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;c=a+1848|0;v[c>>2]=v[c>>2]-1;a=a+1856|0;v[b>>2]=v[a>>2];v[a>>2]=b;break k}Ba[v[v[b>>2]+12>>2]](b)|0}$n(v[37393],b,0,2);break;default:break b}}return}$n(v[37393],b,c,2)}function C1(a,b,c){var d=0,e=0,f=C(0),g=0,h=0,i=C(0),j=0,k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=0,x=C(0),A=C(0);h=xa-32|0;xa=h;k=z[a+2264>>2];n=z[a+2260>>2];o=z[a+2280>>2];p=z[a+2272>>2];q=z[a+2276>>2];r=z[a+2296>>2];s=z[a+2288>>2];t=z[a+2292>>2];u=z[a+2256>>2];f=z[b+8>>2];i=z[b>>2];l=z[b+4>>2];v[h+28>>2]=0;z[h+24>>2]=C(r*f)+C(C(s*i)+C(l*t));z[h+20>>2]=C(o*f)+C(C(p*i)+C(l*q));z[h+16>>2]=C(k*f)+C(C(u*i)+C(l*n));d=v[a+2324>>2];b=d-c|0;if(b>>>0>=6){A2(v[a+2320>>2]+(c<<6)|0,b);d=c+5|0;v[a+2324>>2]=d}if(c>>>0>>0){b=c;while(1){m=b;b=b+1|0;j=b;if(b>>>0>>0){while(1){g=v[a+2320>>2];e=g+(j<<6)|0;w=(m<<6)+g|0;f=C(z[e+24>>2]-z[w+24>>2]);i=C(f*f);f=C(z[e+16>>2]-z[w+16>>2]);k=C(f*f);f=C(z[e+20>>2]-z[w+20>>2]);if(z[a+2240>>2]>C(i+C(k+C(f*f)))){d=((d<<6)+g|0)+-64|0;g=v[d+4>>2];v[e>>2]=v[d>>2];v[e+4>>2]=g;v[e+48>>2]=v[d+48>>2];g=v[d+44>>2];v[e+40>>2]=v[d+40>>2];v[e+44>>2]=g;g=v[d+36>>2];v[e+32>>2]=v[d+32>>2];v[e+36>>2]=g;g=v[d+28>>2];v[e+24>>2]=v[d+24>>2];v[e+28>>2]=g;g=v[d+20>>2];v[e+16>>2]=v[d+16>>2];v[e+20>>2]=g;g=v[d+12>>2];v[e+8>>2]=v[d+8>>2];v[e+12>>2]=g;d=v[a+2324>>2]-1|0;v[a+2324>>2]=d;j=j-1|0}j=j+1|0;if(j>>>0>>0){continue}break}}if(b>>>0>>0){continue}break}}v[h>>2]=2139095039;if(c>>>0>>0){j=c;while(1){f=z[h+24>>2];e=v[h+20>>2];m=j<<6;b=m+v[a+2320>>2]|0;v[b+32>>2]=v[h+16>>2];v[b+36>>2]=e;z[b+40>>2]=f;f=z[b+44>>2];n=z[a+2296>>2];o=z[a+2292>>2];p=z[a+2288>>2];q=z[a+2280>>2];r=z[a+2276>>2];s=z[a+2272>>2];i=z[a+2264>>2];l=z[a+2312>>2];k=z[a+2260>>2];t=z[a+2308>>2];u=z[a+2256>>2];x=z[a+2304>>2];b=m+v[a+2320>>2]|0;v[b+28>>2]=0;A=i;i=C(z[b+24>>2]-l);l=C(z[b+16>>2]-x);x=k;k=C(z[b+20>>2]-t);z[b+16>>2]=C(A*i)+C(C(u*l)+C(x*k));z[b+20>>2]=C(q*i)+C(C(s*l)+C(k*r));z[b+24>>2]=C(n*i)+C(C(p*l)+C(k*o));i=z[h>>2];z[h>>2]=f>>0>2]){continue}break}}D1(a,h+16|0,h,c);if(y[a+2324>>2]>15){A1(a,6,1)}xa=h+32|0}function bv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=C(0);u=z[c+24>>2];G=z[d+24>>2];y=C(u-G);k=C(y+y);q=z[d+12>>2];t=C(C(q*q)+C(-.5));o=z[d>>2];A=z[c+20>>2];H=z[d+20>>2];B=C(A-H);l=C(B+B);E=z[c+16>>2];I=z[d+16>>2];F=C(E-I);n=C(F+F);r=z[d+4>>2];w=C(C(k*t)-C(q*C(C(o*l)-C(n*r))));p=z[d+8>>2];s=C(C(p*k)+C(C(o*n)+C(l*r)));x=C(p*s);i=C(C(r*s)+C(C(l*t)-C(q*C(C(p*n)-C(k*o)))));j=z[b+4>>2];m=C(-j);k=C(C(o*s)+C(C(n*t)-C(q*C(C(r*k)-C(l*p)))));c=1;a:{if(m>k){break a}m=k;c=0;if(!(j>2];l=C(-k);b:{c:{if(l>i){i=l;break c}if(!(i>k)){break b}i=k}c=1}M=z[e>>2];w=z[a+4>>2];x=C(-r);J=C(-o);L=C(-p);d:{e:{f:{s=z[b+12>>2];l=C(-s);if(!(ns;if((a|c)!=1){break f}l=a?s:n}j=C(w+M);u=C(j*j);j=C(l+l);m=C(m+m);i=C(i+i);k=C(C(p*j)+C(C(o*m)+C(r*i)));l=C(C(p*k)+C(C(j*t)+C(q*C(C(o*i)+C(m*x)))));n=C(y-l);s=C(C(o*k)+C(C(m*t)+C(q*C(C(r*j)+C(i*L)))));o=C(F-s);j=C(C(r*k)+C(C(i*t)+C(q*C(C(p*m)+C(j*J)))));m=C(B-j);i=C(C(n*n)+C(C(o*o)+C(m*m)));a=0;if(uk){m=C(0);l=C(-k);j=C(0);i=i>C(0)?C(2):C(-2);break g}j=n>C(0)?C(1):C(-1);break h}if(jC(0)?C(2):C(-2);l=C(-j);j=C(0);i=C(0);break g}j=n>C(0)?C(1):C(-1)}m=C(0);l=C(-l);i=C(0)}j=C(j+j);n=C(C(p*j)+C(C(o*m)+C(r*i)));k=C(C(p*n)+C(C(j*t)+C(q*C(C(o*i)+C(m*x)))));p=C(C(r*n)+C(C(i*t)+C(q*C(C(p*m)+C(j*J)))));i=C(C(o*n)+C(C(m*t)+C(q*C(C(r*j)+C(i*L)))))}b=v[g+4096>>2];a=1;if(b>>>0>63){break d}v[g+4096>>2]=b+1;a=(b<<6)+g|0;z[a+16>>2]=E;z[a+8>>2]=k;z[a+4>>2]=p;z[a>>2]=i;v[a+52>>2]=-1;z[a+12>>2]=l-w;z[a+24>>2]=u;z[a+20>>2]=A;a=1}return a|0}function pG(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=C(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;i=xa-16|0;xa=i;v[i+12>>2]=d;v[i+8>>2]=b;d=v[a+28>>2];a:{if(d>>>0>=(v[a+32>>2]&2147483647)>>>0){qG(a+24|0,i+8|0);break a}v[v[a+24>>2]+(d<<2)>>2]=b;v[a+28>>2]=d+1}d=v[a+40>>2];b:{if(d>>>0>=(v[a+44>>2]&2147483647)>>>0){d=0;e=v[a+44>>2];h=e&2147483647?e<<1:1;c:{if(!h){break c}e=h<<2;if(!e){break c}d=v[37696];g=d+12|0;d=(q=g,r=e,s=Ba[v[v[d>>2]+20>>2]](d)|0?58041:63804,t=16608,u=553,p=v[v[g>>2]+8>>2],Ba[p](q|0,r|0,s|0,t|0,u|0)|0)}f=v[a+40>>2];j=(f<<2)+d|0;if((f|0)>0){g=v[a+36>>2];e=d;while(1){v[e>>2]=v[g>>2];g=g+4|0;e=e+4|0;if(j>>>0>e>>>0){continue}break}}v[j>>2]=v[i+12>>2];d:{if(v[a+44>>2]<0){break d}e=v[a+36>>2];if(!e){break d}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,e);f=v[a+40>>2]}v[a+44>>2]=h;v[a+36>>2]=d;v[a+40>>2]=f+1;break b}v[v[a+36>>2]+(d<<2)>>2]=v[i+12>>2];v[a+40>>2]=d+1}d=v[a>>2];Ba[v[v[d>>2]+16>>2]](d);j=a+12|0;g=v[a+16>>2];f=g;d=v[a+20>>2]&2147483647;if(f>>>0>=d>>>0){oG(j,d?d<<1:1);f=v[a+16>>2]}v[a+16>>2]=f+1;d=v[b+44>>2];h=v[a+12>>2];e=h+(f<<5)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+16>>2]=d+16;m=rG(b);l=z[v[a+8>>2]+32>>2];e:{if(c){k=v[a+24>>2];o=v[v[k>>2]+152>>2];e=-2147483648;n=v[a+28>>2];f:{if(!n){break f}d=0;while(1){if(v[(d<<2)+k>>2]==(c|0)){e=d;break f}d=d+1|0;if((n|0)!=(d|0)){continue}break}}c=(f<<5)+h|0;v[c+24>>2]=e;d=g&31;if((g&63)>>>0>=32){h=1<>>32-d}k=f;e=v[j>>2]+(e<<5)|0;f=k|v[e+8>>2];d=v[e+12>>2]|h;v[c+8>>2]=f;v[c+12>>2]=d;v[c+20>>2]=v[v[i+12>>2]+24>>2]+4;c=h|v[e+4>>2];v[e>>2]=k|v[e>>2];v[e+4>>2]=c;c=o>>>0>4294967293;break e}f=1;d=0;v[e+8>>2]=1;v[e+12>>2]=0;v[e+20>>2]=0;v[e+24>>2]=-1;c=l==C(0)}d=Uaa(d)+Uaa(f)|0;e=v[a+64>>2];d=d>>>0>e>>>0?d:e;v[a+64>>2]=d;v[v[a>>2]+96>>2]=d;if(!(m|c^1|v[a+28>>2]==1)){d=0;while(1){qH(v[v[a+24>>2]+(d<<2)>>2],l);d=d+1|0;if(d>>>0>2]-1>>>0){continue}break}}tH(b,a,l,c&m,g);xa=i+16|0}function oz(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0);s=x[d+108>>1];a:{if(!s){break a}if(s&1){v[a>>2]=0;v[c>>2]=0}if(s&2){v[a+4>>2]=0;v[c+4>>2]=0}if(s&4){v[a+8>>2]=0;v[c+8>>2]=0}if(s&8){v[b>>2]=0;v[c+16>>2]=0}if(s&16){v[b+4>>2]=0;v[c+20>>2]=0}if(!(s&32)){break a}v[b+8>>2]=0;v[c+24>>2]=0}h=z[d+44>>2];i=z[d+56>>2];l=z[d+20>>2];k=z[d+36>>2];m=z[d+48>>2];j=z[d+60>>2];f=z[d+24>>2];n=z[d+40>>2];t=z[d+52>>2];y=z[d- -64>>2];o=z[b+8>>2];p=z[b>>2];g=z[b+4>>2];A=z[d+16>>2];B=z[d+32>>2];u=z[a+8>>2];q=z[d+8>>2];w=z[a+4>>2];r=z[d+4>>2];D=z[d>>2];E=C(D+z[a>>2]);z[d+96>>2]=C(E*e)+z[d+96>>2];w=C(r+w);z[d+100>>2]=C(w*e)+z[d+100>>2];F=C(q+u);z[d+104>>2]=C(F*e)+z[d+104>>2];z[d>>2]=D+z[c>>2];z[d+4>>2]=r+z[c+4>>2];z[d+8>>2]=q+z[c+8>>2];q=z[c+16>>2];r=z[c+20>>2];u=z[c+24>>2];z[d+24>>2]=f+C(C(C(n*q)+C(t*r))+C(y*u));z[d+20>>2]=l+C(C(C(k*q)+C(m*r))+C(j*u));z[d+16>>2]=A+C(C(C(B*q)+C(h*r))+C(i*u));f=C(f+C(C(C(p*n)+C(g*t))+C(o*y)));h=C(A+C(C(C(p*B)+C(g*h))+C(o*i)));g=C(l+C(C(C(p*k)+C(g*m))+C(o*j)));m=C(C(f*f)+C(C(h*h)+C(g*g)));b:{if(m==C(0)){o=g;p=f;break b}l=C(1e7);k=C(K(m));c:{if(!(k>C(1e7))){p=f;l=k;i=h;o=g;break c}p=C(0);i=C(0);o=C(0);if(!(m>C(0))){break c}i=f;f=C(C(1)/k);p=C(C(i*f)*C(1e7));i=C(C(h*f)*C(1e7));o=C(C(g*f)*C(1e7))}h=C(C(l*e)*C(.5));j=R9(h);e=z[d+88>>2];f=z[d+84>>2];g=z[d+80>>2];k=z[d+92>>2];m=H9(h);h=i;j=C(j/l);i=C(h*j);l=C(o*j);j=C(p*j);n=C(C(k*m)+C(C(C(C(k*C(0))-C(g*i))-C(f*l))-C(e*j)));q=n;r=C(n*n);n=C(C(e*m)+C(C(C(i*f)+C(C(e*C(0))+C(k*j)))-C(g*l)));t=C(C(g*m)+C(C(C(l*e)+C(C(g*C(0))+C(k*i)))-C(f*j)));f=C(C(m*f)+C(C(C(j*g)+C(C(f*C(0))+C(k*l)))-C(e*i)));e=C(C(1)/C(K(C(r+C(C(n*n)+C(C(t*t)+C(f*f)))))));z[d+92>>2]=q*e;z[d+88>>2]=n*e;z[d+84>>2]=f*e;z[d+80>>2]=t*e}z[a+8>>2]=F;z[a+4>>2]=w;z[a>>2]=E;z[b+8>>2]=p;z[b+4>>2]=o;z[b>>2]=h}function w2(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=0,u=C(0);a:{f=w[a+64|0];if(!f){f=0;break a}g=z[e>>2];g=C(g*g);k=z[b+8>>2];l=z[b+4>>2];m=z[b>>2];n=z[c+8>>2];q=z[c+4>>2];r=z[c>>2];s=v[a+76>>2];p=1;b:{while(1){c:{e=B(i,48)+s|0;j=C(z[e+8>>2]-k);h=C(j*j);j=C(z[e>>2]-m);o=C(j*j);j=C(z[e+4>>2]-l);j=C(h+C(o+C(j*j)));h=C(z[e+24>>2]-n);o=C(h*h);h=C(z[e+16>>2]-r);u=C(h*h);h=C(z[e+20>>2]-q);h=C(o+C(u+C(h*h)));if(g>(j>2];v[e>>2]=v[b>>2];v[e+4>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;f=B(i,48);e=f+v[a+76>>2]|0;i=v[c+4>>2];v[e+16>>2]=v[c>>2];v[e+20>>2]=i;i=v[c+12>>2];v[e+24>>2]=v[c+8>>2];v[e+28>>2]=i;e=f+v[a+76>>2]|0;f=v[d+4>>2];v[e+32>>2]=v[d>>2];v[e+36>>2]=f;f=v[d+12>>2];v[e+40>>2]=v[d+8>>2];v[e+44>>2]=f;if(p){break b}f=w[a+64|0];break c}i=i+1|0;p=i>>>0>>0;if((f|0)!=(i|0)){continue}}break}d:{switch(f|0){case 0:case 1:break a;case 2:break d;default:break b}}e=v[a+76>>2];k=z[c+8>>2];g=C(z[e+24>>2]-k);i=v[b+4>>2];f=e;j=C(g*g);g=z[c>>2];l=C(z[e+16>>2]-g);h=C(l*l);l=z[c+4>>2];m=C(z[e+20>>2]-l);k=C(z[e+72>>2]-k);g=C(z[e- -64>>2]-g);n=C(g*g);g=C(z[e+68>>2]-l);e=B(C(j+C(h+C(m*m)))>C(C(k*k)+C(n+C(g*g))),48);f=f+e|0;v[f>>2]=v[b>>2];v[f+4>>2]=i;i=v[b+12>>2];v[f+8>>2]=v[b+8>>2];v[f+12>>2]=i;f=v[c+4>>2];b=e+v[a+76>>2]|0;v[b+16>>2]=v[c>>2];v[b+20>>2]=f;f=v[c+12>>2];v[b+24>>2]=v[c+8>>2];v[b+28>>2]=f;b=v[d+4>>2];a=e+v[a+76>>2]|0;v[a+32>>2]=v[d>>2];v[a+36>>2]=b;b=v[d+12>>2];v[a+40>>2]=v[d+8>>2];v[a+44>>2]=b}return}e=v[a+76>>2]+B(f,48)|0;f=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;e=v[c+4>>2];b=v[a+76>>2]+B(w[a+64|0],48)|0;v[b+16>>2]=v[c>>2];v[b+20>>2]=e;e=v[c+12>>2];v[b+24>>2]=v[c+8>>2];v[b+28>>2]=e;b=w[a+64|0];t[a+64|0]=b+1;a=v[a+76>>2]+B(b,48)|0;b=v[d+12>>2];v[a+40>>2]=v[d+8>>2];v[a+44>>2]=b;b=v[d+4>>2];v[a+32>>2]=v[d>>2];v[a+36>>2]=b}function Ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=0,r=C(0),s=C(0),u=0,x=0,y=0;d=C(C(1)/z[b+464>>2]);o=v[b+444>>2];a:{if(!c){if(t[v[b+476>>2]]&1){break a}o=v[o+16>>2];i=z[o+8>>2];c=v[b+228>>2];e=C(d*C(z[c+8>>2]-z[b+120>>2]));f=C(e+e);j=z[o>>2];e=C(d*C(z[c>>2]-z[b+112>>2]));h=C(e+e);e=C(d*C(z[c+4>>2]-z[b+116>>2]));g=C(e+e);k=z[o+4>>2];m=C(C(i*f)+C(C(j*h)+C(g*k)));l=z[o+12>>2];n=C(C(l*l)+C(-.5));e=C(C(i*m)+C(C(f*n)+C(l*C(C(j*g)-C(h*k)))));p=C(C(k*m)+C(C(g*n)+C(l*C(C(i*h)-C(f*j)))));f=C(C(j*m)+C(C(h*n)+C(l*C(C(k*f)-C(g*i)))));h=C(d*C(z[c+24>>2]-z[b+136>>2]));h=C(h+h);g=C(d*C(z[c+16>>2]-z[b+128>>2]));g=C(g+g);d=C(d*C(z[c+20>>2]-z[b+132>>2]));d=C(d+d);m=C(C(i*h)+C(C(j*g)+C(d*k)));r=C(C(i*m)+C(C(h*n)+C(l*C(C(j*d)-C(g*k)))));s=C(C(k*m)+C(C(d*n)+C(l*C(C(i*g)-C(h*j)))));i=C(C(j*m)+C(C(g*n)+C(l*C(C(k*h)-C(d*i)))));break a}u=c<<5;o=v[(o+u|0)+16>>2];q=v[b+456>>2]+B(c,80)|0;x=w[q+76|0];b:{if(!x){f=C(M);h=C(M);p=C(M);e=C(M);i=C(M);d=C(M);break b}y=v[b+168>>2]+(v[q+72>>2]<<2)|0;q=x-1|0;d=C(d*z[y+(q<<2)>>2]);c=(v[b+372>>2]+B(c,76)|0)+B(q,24)|0;b=v[b+240>>2]+u|0;e=C(C(d*z[c+20>>2])+z[b+24>>2]);i=C(e+e);e=C(C(d*z[c+16>>2])+z[b+20>>2]);e=C(e+e);p=C(C(d*z[c+12>>2])+z[b+16>>2]);p=C(p+p);f=C(C(d*z[c+8>>2])+z[b+8>>2]);h=C(f+f);f=C(C(d*z[c+4>>2])+z[b+4>>2]);f=C(f+f);d=C(C(d*z[c>>2])+z[b>>2]);d=C(d+d)}j=z[o+8>>2];k=z[o>>2];l=z[o+4>>2];m=C(C(j*i)+C(C(k*p)+C(e*l)));n=z[o+12>>2];g=C(C(n*n)+C(-.5));r=C(C(j*m)+C(C(i*g)+C(n*C(C(k*e)-C(p*l)))));s=C(C(l*m)+C(C(e*g)+C(n*C(C(j*p)-C(i*k)))));i=C(C(k*m)+C(C(p*g)+C(n*C(C(l*i)-C(e*j)))));m=C(C(j*h)+C(C(k*d)+C(f*l)));e=C(C(j*m)+C(C(h*g)+C(n*C(C(k*f)-C(d*l)))));p=C(C(l*m)+C(C(f*g)+C(n*C(C(j*d)-C(h*k)))));f=C(C(k*m)+C(C(d*g)+C(n*C(C(l*h)-C(f*j)))))}v[a+28>>2]=0;z[a+16>>2]=f;v[a+12>>2]=0;z[a+8>>2]=r;z[a+4>>2]=s;z[a>>2]=i;z[a+24>>2]=e;z[a+20>>2]=p}function BI(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;l=xa-16|0;xa=l;g=wr(c,288);v[g+24>>2]=0;v[g+16>>2]=0;v[g+20>>2]=0;v[g+28>>2]=0;v[g+32>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;v[g+36>>2]=0;v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+56>>2]=0;v[g+60>>2]=0;v[g+64>>2]=0;v[g+68>>2]=0;v[g+72>>2]=0;v[g+284>>2]=e;v[g+280>>2]=b;v[g+276>>2]=a;v[g+272>>2]=b;v[g+268>>2]=0;v[g>>2]=131052;m=v[f+4>>2];a:{if(!v[a+16>>2]){break a}h=v[a+12>>2];i=v[h>>2];if((i|0)==-1){j=v[a+20>>2];while(1){k=k+1|0;if((j|0)==(k|0)){break a}i=v[h+(k<<2)>>2];if((i|0)==-1){continue}break}}while(1){j=B(i,12);n=j+v[a+4>>2]|0;o=v[n+4>>2];h=(v[g+268>>2]<<3)+g|0;v[h+140>>2]=v[n>>2];v[h+144>>2]=o;h=v[(j+v[a+4>>2]|0)+8>>2];j=v[g+268>>2];n=j+1|0;v[g+268>>2]=n;v[((j<<2)+g|0)+76>>2]=h;if((n|0)==16){v[l+12>>2]=g;h=v[f+4>>2];b:{if(h>>>0>=(v[f+8>>2]&2147483647)>>>0){zI(f,l+12|0);break b}v[v[f>>2]+(h<<2)>>2]=g;v[f+4>>2]=h+1}v[g+20>>2]=d;v[g+24>>2]=1;if(d){Ba[v[v[d>>2]+16>>2]](d);v[g+16>>2]=v[v[g+20>>2]+16>>2]}g=wr(c,288);v[g+24>>2]=0;v[g+16>>2]=0;v[g+20>>2]=0;v[g+28>>2]=0;v[g+32>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;v[g+36>>2]=0;v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+56>>2]=0;v[g+60>>2]=0;v[g+64>>2]=0;v[g+68>>2]=0;v[g+72>>2]=0;v[g+284>>2]=e;v[g+280>>2]=b;v[g+276>>2]=a;v[g+272>>2]=b;v[g+268>>2]=0;v[g>>2]=131052}i=v[v[a+8>>2]+(i<<2)>>2];if((i|0)!=-1){continue}h=v[a+12>>2];j=v[a+20>>2];while(1){k=k+1|0;if((j|0)==(k|0)){break a}i=v[h+(k<<2)>>2];if((i|0)==-1){continue}break}continue}}a=v[f+4>>2];if(m>>>0>>0){while(1){a=v[v[f>>2]+(m<<2)>>2];Ba[v[v[a>>2]+20>>2]](a);a=v[f+4>>2];m=m+1|0;if(a>>>0>m>>>0){continue}break}}if(v[g+268>>2]){v[l+8>>2]=g;c:{if((v[f+8>>2]&2147483647)>>>0<=a>>>0){zI(f,l+8|0);break c}v[v[f>>2]+(a<<2)>>2]=g;v[f+4>>2]=a+1}v[g+20>>2]=d;v[g+24>>2]=1;if(d){Ba[v[v[d>>2]+16>>2]](d);v[g+16>>2]=v[v[g+20>>2]+16>>2]}Ba[v[v[g>>2]+20>>2]](g)}xa=l+16|0}function Az(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?29035:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function mn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?25589:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?25589:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function ln(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?46031:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?46031:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function kn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45917:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45917:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function jn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?42245:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?42245:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function hn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41541:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41541:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function gn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?28767:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?28767:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function fn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?39311:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?39311:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function en(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36971:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36971:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function eQ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?47129:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?47129:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function dn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41391:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41391:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function dQ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?37683:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?37683:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function cn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?39419:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?39419:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function cQ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36573:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36573:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function bn(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?27763:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?27763:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function bQ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?44393:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?44393:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function an(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41231:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?41231:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function _m(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52793:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52793:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function Zm(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53423:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53423:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function YC(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?30445:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?30445:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function XC(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?31931:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?31931:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function Ss(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52491:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52491:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function Rs(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52957:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52957:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function Qs(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?54083:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?54083:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function Ps(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52331:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52331:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function PJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?31157:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?31157:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function Os(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52633:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?52633:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function OJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?27313:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?27313:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function Ns(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53263:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53263:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function NJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36843:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36843:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function MJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36711:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?36711:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function LJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?46887:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?46887:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function KJ(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?32891:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?32891:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function DK(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45371:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45371:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function CK(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45213:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?45213:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function $m(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,u=0,x=0,z=0,A=0;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(s=d,u=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53101:63804,z=17218,A=155,r=v[v[d>>2]+8>>2],Ba[r](s|0,u|0,x|0,z|0,A|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){c=k<<3;if(c){b=v[37696];d=b+12|0;b=(A=d,z=c,x=Ba[v[v[b>>2]+20>>2]](b)|0?53101:63804,u=17218,s=155,r=v[v[d>>2]+8>>2],Ba[r](A|0,z|0,x|0,u|0,s|0)|0)}else{b=0}k=k<<1;b=I9(b,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function wK(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=v[b+48>>2];a:{if(!(x[b+40>>1]&4096?w[b+8|0]&2:0)){f=g+32>>>5|0;break a}f=g+32>>>5|0;b:{if(f>>>0<=(v[a+952>>2]&2147483647)>>>0){c=v[a+948>>2];break b}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,f<<2,24422,17999,438)|0;d=v[a+948>>2];c:{if(!d){break c}I9(c,d,v[a+952>>2]<<2);if(v[a+952>>2]<0){break c}d=v[a+948>>2];if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}d=v[a+952>>2];J9((d<<2)+c|0,0,f-d<<2);v[a+952>>2]=f;v[a+948>>2]=c}c=(g>>>3&536870908)+c|0;d=v[c>>2];i=c,j=Vaa(-2,g)&d,v[i>>2]=j}d:{if((v[a+940>>2]&2147483647)>>>0>=f>>>0){c=v[a+936>>2];break d}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,f<<2,24422,17999,438)|0;d=v[a+936>>2];e:{if(!d){break e}I9(c,d,v[a+940>>2]<<2);if(v[a+940>>2]<0){break e}d=v[a+936>>2];if(!d){break e}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}d=v[a+940>>2];J9((d<<2)+c|0,0,f-d<<2);v[a+940>>2]=f;v[a+936>>2]=c}d=Vaa(-2,g);g=g>>>5|0;c=(g<<2)+c|0;v[c>>2]=d&v[c>>2];f:{if((v[a+976>>2]&2147483647)>>>0>=f>>>0){c=v[a+972>>2];break f}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,f<<2,24422,17999,438)|0;e=v[a+972>>2];g:{if(!e){break g}I9(c,e,v[a+976>>2]<<2);if(v[a+976>>2]<0){break g}e=v[a+972>>2];if(!e){break g}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,e)}e=v[a+976>>2];J9((e<<2)+c|0,0,f-e<<2);v[a+976>>2]=f;v[a+972>>2]=c}c=(g<<2)+c|0;v[c>>2]=d&v[c>>2];h:{if((v[a+988>>2]&2147483647)>>>0>=f>>>0){c=v[a+984>>2];break h}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,f<<2,24422,17999,438)|0;e=v[a+984>>2];i:{if(!e){break i}I9(c,e,v[a+988>>2]<<2);if(v[a+988>>2]<0){break i}e=v[a+984>>2];if(!e){break i}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,e)}e=v[a+988>>2];J9((e<<2)+c|0,0,f-e<<2);v[a+988>>2]=f;v[a+984>>2]=c}c=(g<<2)+c|0;v[c>>2]=d&v[c>>2];c=v[b+48>>2];f=v[a+340>>2]+(c>>>3&536870908)|0;g=v[f>>2];i=f,j=Vaa(-2,c)&g,v[i>>2]=j;c=v[a+328>>2];v[a+328>>2]=c+1;v[v[a+324>>2]+(c<<2)>>2]=b}function aj(a,b){var c=C(0),d=0,e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),B=C(0);d=xa+-64|0;xa=d;Ba[v[v[a>>2]+76>>2]](d,a);j=z[b+8>>2];l=z[b+4>>2];m=z[b+12>>2];n=z[b>>2];g=z[d+8>>2];c=z[b+24>>2];o=C(c+c);h=z[d>>2];c=z[b+16>>2];p=C(c+c);c=z[b+20>>2];q=C(c+c);i=z[d+4>>2];s=C(C(g*o)+C(C(h*p)+C(q*i)));c=z[d+12>>2];t=C(C(c*c)+C(-.5));u=C(z[d+24>>2]+C(C(g*s)+C(C(o*t)+C(c*C(C(h*q)-C(p*i))))));z[d+56>>2]=u;x=C(z[d+20>>2]+C(C(i*s)+C(C(q*t)+C(c*C(C(g*p)-C(o*h))))));z[d+52>>2]=x;y=C(C(C(C(c*m)-C(n*h))-C(i*l))-C(g*j));z[d+44>>2]=y;A=C(C(C(h*l)+C(C(c*j)+C(g*m)))-C(n*i));z[d+40>>2]=A;B=C(C(C(g*n)+C(C(c*l)+C(i*m)))-C(j*h));z[d+36>>2]=B;j=C(C(C(i*j)+C(C(c*n)+C(h*m)))-C(l*g));z[d+32>>2]=j;c=C(z[d+16>>2]+C(C(h*s)+C(C(p*t)+C(c*C(C(i*o)-C(q*g))))));z[d+48>>2]=c;z[a+280>>2]=u;z[a+276>>2]=x;z[a+272>>2]=c;z[a+268>>2]=y;z[a+264>>2]=A;z[a+260>>2]=B;z[a+256>>2]=j;f=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:if(w[v[f>>2]+4785|0]){break b}break;case 1:break b;default:break c}}BG(a- -64|0,d+32|0);break a}e=v[a+316>>2];if(!(e&1048576)){v[a+316>>2]=e|2097152}Yu(v[a+48>>2],f);v[a+316>>2]=v[a+316>>2]|1048576}d:{e:{f:{g:{k=v[a+52>>2];switch((k>>>30|0)-2|0){case 1:break e;case 0:break g;default:break f}}if(w[v[f>>2]+4785|0]){break e}}EG(a- -64|0,b);break d}e=v[a+56>>2];if(!e){e=Qu(v[a+48>>2],k>>>24&15);v[a+56>>2]=e}z[e+144>>2]=z[b>>2];z[e+148>>2]=z[b+4>>2];z[e+152>>2]=z[b+8>>2];z[e+156>>2]=z[b+12>>2];z[e+160>>2]=z[b+16>>2];z[e+164>>2]=z[b+20>>2];z[e+168>>2]=z[b+24>>2];Yu(v[a+48>>2],f);v[a+316>>2]=v[a+316>>2]|1024}b=0;f=v[a+16>>2];h:{if(!f){e=0;f=0;break h}e=v[f+40>>2];f=v[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(w[r|0]){continue}break}k=v[r+4>>2];if(!k){break i}Gg(k,a);continue}break}xa=d- -64|0}function MD(a,b,c,d,e){var f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=0,u=0,w=0,x=0,y=0;l=xa-1056|0;xa=l;t[l+1040|0]=1;v[l+1048>>2]=256;v[l+1052>>2]=256;v[l+1044>>2]=l+16;w=v[c+8>>2];v[l+16>>2]=w;o=1;a:while(1){o=o-1|0;g=v[v[l+1044>>2]+(o<<2)>>2];i=z[g>>2];h=z[g+12>>2];f=C(i+h);i=C(h-i);j=z[g+8>>2];k=z[g+20>>2];h=C(j+k);n=z[g+4>>2];m=z[g+16>>2];p=C(n+m);j=C(k-j);k=C(m-n);while(1){b:{h=C(z[d+8>>2]-C(h*C(.5)));j=C(j*C(.5));n=h>2]-C(f*C(.5)));i=C(i*C(.5));m=f>2]-C(p*C(.5)));k=C(k*C(.5));r=k>p?p:k;c:{q=h;h=C(-j);h=C(q-(h>2]>=C(C(h*h)+C(q+C(f*f))))){break d}g=v[g+24>>2];s=g>>>1|0;if(!(g&1)){break c}u=s&15;if(!u){break d}s=v[c>>2]+(g>>>3&536870908)|0;if((u|0)==1){if(Ba[v[v[e>>2]>>2]](e,l+12|0,(v[s>>2]<<3)+a|0)|0){break d}break b}while(1){x=v[s>>2];g=B(x,24)+b|0;i=z[g+8>>2];h=z[g+20>>2];f=C(z[d+8>>2]-C(C(i+h)*C(.5)));i=C(C(h-i)*C(.5));h=f>2];k=z[g+12>>2];p=C(z[d>>2]-C(C(j+k)*C(.5)));j=C(C(k-j)*C(.5));k=j>p?p:j;m=z[g+4>>2];r=z[g+16>>2];n=C(z[d+4>>2]-C(C(m+r)*C(.5)));m=C(C(r-m)*C(.5));r=m>n?n:m;q=f;f=C(-i);f=C(q-(f>2]>=C(h+C(q+C(f*f)))){if(!(Ba[v[v[e>>2]>>2]](e,l+12|0,(x<<3)+a|0)|0)){break b}}s=s+4|0;u=u-1|0;if(u){continue}break}}y=!o;if(o){continue a}break b}g=B(s,28)+w|0;v[v[l+1044>>2]+(o<<2)>>2]=g+28;o=o+1|0;if((o|0)==(v[l+1052>>2]&2147483647)){OD(l+16|0,o<<1)}i=z[g>>2];h=z[g+12>>2];f=C(i+h);i=C(h-i);j=z[g+8>>2];k=z[g+20>>2];h=C(j+k);n=z[g+4>>2];m=z[g+16>>2];p=C(n+m);j=C(k-j);k=C(m-n);continue}break}break}a=v[l+1052>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[l+1044>>2];if((a|0)==(l+16|0)|!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=l+1056|0;return y}function NL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=C(0),h=0,i=0,k=0,m=0,n=0,o=0,r=0,s=0,t=C(0),u=C(0),w=0,y=0,A=0,D=0;i=v[a+88>>2];s=v[i+12>>2];h=v[i>>2];if(h){g=z[b+8>>2];t=z[b+4>>2];u=z[b>>2];while(1){a=B(f,40)+s|0;if(v[a+28>>2]){b=v[a+4>>2]<<1;b=(p(C((l(2,(b|0)<0?b&2147483646:b^-1),q())-u)),j(2));v[a+4>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=v[a+24>>2]<<1;b=(p(C((l(2,(b|0)<0?b&2147483646:b^-1),q())-g)),j(2));v[a+24>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=v[a+20>>2]<<1;b=(p(C((l(2,(b|0)<0?b&2147483646:b^-1),q())-t)),j(2));v[a+20>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=v[a+16>>2]<<1;b=(p(C((l(2,(b|0)<0?b&2147483646:b^-1),q())-u)),j(2));v[a+16>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=v[a+12>>2]<<1;b=(p(C((l(2,(b|0)<0?b&2147483646:b^-1),q())-g)),j(2));v[a+12>>2]=((b|0)<0?b^-1:b|-2147483648)>>>1;b=a;a=v[a+8>>2]<<1;a=(p(C((l(2,(a|0)<0?a&2147483646:a^-1),q())-t)),j(2));v[b+8>>2]=((a|0)<0?a^-1:a|-2147483648)>>>1}f=f+1|0;if((h|0)!=(f|0)){continue}break}}w=v[i+28>>2];if(w){A=v[i+24>>2];h=0;while(1){f=B(h,12)+A|0;b=x[f+4>>1];if(b){e=v[f>>2];a=B(e,24)+c|0;g=z[(e<<2)+d>>2];e=(p(C(z[a+12>>2]+g)),j(2));k=(e|0)<0?e^-1:e|-2147483648;e=(p(C(z[a+8>>2]-g)),j(2));m=(e|0)<0?e^-1:e|-2147483648;e=(p(C(z[a+4>>2]-g)),j(2));n=(e|0)<0?e^-1:e|-2147483648;e=(p(C(z[a>>2]-g)),j(2));o=(e|0)<0?e^-1:e|-2147483648;e=(p(C(z[a+20>>2]+g)),j(2));r=(e|0)<0?e^-1:e|-2147483648;a=(p(C(z[a+16>>2]+g)),j(2));a=(a|0)<0?a^-1:a|-2147483648;e=f+8|0;e=(b|0)!=1?v[(B(b,12)+i|0)+92>>2]+(v[e>>2]<<2)|0:e;k=k>>>1|0;m=m>>>1|0;n=n>>>1|0;o=o>>>1|0;r=r>>>1|0;D=a>>>1|0;b=b>>>0>1?b:1;f=0;while(1){a=(f<<2)+e|0;y=v[(B(x[a+2>>1],40)+s|0)+28>>2];a=v[y+76>>2]+(x[a>>1]<<3)|0;a=v[(v[a+4>>2]&1?96:100)+y>>2]+B(v[a>>2],24)|0;v[a+20>>2]=r;v[a+16>>2]=D;v[a+12>>2]=k;v[a+8>>2]=m;v[a+4>>2]=n;v[a>>2]=o;f=f+1|0;if((b|0)!=(f|0)){continue}break}}h=h+1|0;if((w|0)!=(h|0)){continue}break}}}function ay(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=C(0),o=0,p=0,q=0,r=0,s=0,t=0,u=0,x=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0);m=v[a+356>>2];u=v[a+332>>2];p=v[a+344>>2];q=p+B(b,80)|0;i=w[q+76|0];if(i){j=v[a+272>>2]+B(b,76)|0;k=v[q+72>>2];while(1){l=k+B(h+k|0,m)|0;e=(h<<5)+d|0;f=0;while(1){g=j+B(f,24)|0;z[(f+l<<2)+c>>2]=C(C(z[g+20>>2]*z[e+8>>2])+C(C(z[g+12>>2]*z[e>>2])+C(z[g+16>>2]*z[e+4>>2])))+C(C(z[g+8>>2]*z[e+24>>2])+C(C(z[g>>2]*z[e+16>>2])+C(z[g+4>>2]*z[e+20>>2])));f=f+1|0;if((i|0)!=(f|0)){continue}break}h=h+1|0;if((i|0)!=(h|0)){continue}break}}h=(b<<5)+u|0;e=v[h+24>>2];if(e){g=h+24|0;x=B(b,80)+p|0;while(1){f=0;a:{if(!i){i=0;b=e;break a}while(1){e=v[a+340>>2]+B(b,160)|0;y=z[e+128>>2];n=z[e+120>>2];A=z[e+124>>2];e=(f<<5)+d|0;v[e+28>>2]=0;v[e+12>>2]=0;D=z[e+4>>2];E=z[e>>2];z[e+24>>2]=C(C(n*D)-C(A*E))+z[e+24>>2];F=n;n=z[e+8>>2];z[e+20>>2]=z[e+20>>2]+C(C(y*E)-C(F*n));z[e+16>>2]=C(C(A*n)-C(D*y))+z[e+16>>2];f=f+1|0;i=w[q+76|0];if(f>>>0>>0){continue}break}p=v[a+344>>2];b=v[g>>2]}j=B(b,80)+p|0;k=w[j+76|0];b:{if(!k|!i){break b}l=v[a+272>>2]+B(b,76)|0;r=v[j+72>>2];s=v[x+72>>2];g=0;while(1){t=g+r|0;e=l+B(g,24)|0;h=0;while(1){f=(h<<5)+d|0;z[(t+B(h+s|0,m)<<2)+c>>2]=C(C(z[e+20>>2]*z[f+8>>2])+C(C(z[e+12>>2]*z[f>>2])+C(z[e+16>>2]*z[f+4>>2])))+C(C(z[e+8>>2]*z[f+24>>2])+C(C(z[e>>2]*z[f+16>>2])+C(z[e+4>>2]*z[f+20>>2])));h=h+1|0;if((i|0)!=(h|0)){continue}break}g=g+1|0;if((k|0)!=(g|0)){continue}break}if(!k){break b}r=i&254;s=i&1;t=v[j+72>>2];f=v[x+72>>2];h=0;while(1){j=h+t|0;l=B(j,m);e=0;g=0;if((i|0)!=1){while(1){o=e+f|0;z[(o+l<<2)+c>>2]=z[(j+B(m,o)<<2)+c>>2];o=f+(e|1)|0;z[(o+l<<2)+c>>2]=z[(j+B(m,o)<<2)+c>>2];e=e+2|0;g=g+2|0;if((r|0)!=(g|0)){continue}break}}if(s){e=e+f|0;z[(e+l<<2)+c>>2]=z[(j+B(e,m)<<2)+c>>2]}h=h+1|0;if((k|0)!=(h|0)){continue}break}}e=(b<<5)+u|0;g=e+24|0;e=v[e+24>>2];if(e){continue}break}}return b}function _G(a,b,c,d){var e=0,f=0,g=C(0);f=xa-16|0;xa=f;e=v[a+176>>2];a:{b:{if(e){z[e>>2]=z[c>>2];z[e+4>>2]=z[c+4>>2];z[e+8>>2]=z[c+8>>2];z[e+12>>2]=z[c+12>>2];z[e+16>>2]=z[c+16>>2];z[e+20>>2]=z[c+20>>2];g=z[c+24>>2];t[e+28|0]=1;z[e+24>>2]=g;b=v[a>>2];if(!b){z[a+156>>2]=d;break a}u[b+148>>1]=x[b+148>>1]&63483|4;break b}e=v[b+288>>2];if(!e){GG(b);e=v[b+288>>2]}v[b+288>>2]=v[e>>2];v[b+280>>2]=v[b+280>>2]+1;t[e+24|0]=0;t[e+25|0]=0;t[e+26|0]=0;t[e+27|0]=0;t[e+28|0]=0;t[e+29|0]=0;t[e+30|0]=0;t[e+31|0]=0;t[e+56|0]=0;t[e+57|0]=0;t[e+58|0]=0;t[e+59|0]=0;t[e+60|0]=0;t[e+61|0]=0;t[e+62|0]=0;t[e+63|0]=0;t[e+48|0]=0;t[e+49|0]=0;t[e+50|0]=0;t[e+51|0]=0;t[e+52|0]=0;t[e+53|0]=0;t[e+54|0]=0;t[e+55|0]=0;t[e+40|0]=0;t[e+41|0]=0;t[e+42|0]=0;t[e+43|0]=0;t[e+44|0]=0;t[e+45|0]=0;t[e+46|0]=0;t[e+47|0]=0;t[e+32|0]=0;t[e+33|0]=0;t[e+34|0]=0;t[e+35|0]=0;t[e+36|0]=0;t[e+37|0]=0;t[e+38|0]=0;t[e+39|0]=0;t[e+16|0]=0;t[e+17|0]=0;t[e+18|0]=0;t[e+19|0]=0;t[e+20|0]=0;t[e+21|0]=0;t[e+22|0]=0;t[e+23|0]=0;t[e+8|0]=0;t[e+9|0]=0;t[e+10|0]=0;t[e+11|0]=0;t[e+12|0]=0;t[e+13|0]=0;t[e+14|0]=0;t[e+15|0]=0;t[e|0]=0;t[e+1|0]=0;t[e+2|0]=0;t[e+3|0]=0;t[e+4|0]=0;t[e+5|0]=0;t[e+6|0]=0;t[e+7|0]=0;t[e+31|0]=1;z[e+48>>2]=z[a+120>>2];z[e+52>>2]=z[a+124>>2];z[e+32>>2]=z[a+128>>2];z[e+36>>2]=z[a+132>>2];z[e+40>>2]=z[a+136>>2];z[e+44>>2]=z[a+140>>2];z[e+56>>2]=z[a+112>>2];z[e+60>>2]=z[a+116>>2];v[a+136>>2]=0;v[a+140>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+176>>2]=e;v[a+112>>2]=2139095039;v[a+116>>2]=2139095039;z[e>>2]=z[c>>2];z[e+4>>2]=z[c+4>>2];z[e+8>>2]=z[c+8>>2];z[e+12>>2]=z[c+12>>2];z[e+16>>2]=z[c+16>>2];z[e+20>>2]=z[c+20>>2];g=z[c+24>>2];t[e+28|0]=1;z[e+24>>2]=g}z[a+156>>2]=d;a=v[a>>2];if(!a){break a}b=v[v[a+40>>2]+1012>>2];c=w[v[a+44>>2]+9|0];v[f+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(c|0)==2,f+8|0);oH(a);lH(a,d,1)}xa=f+16|0}function aH(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=xa-16|0;xa=g;b=v[a+44>>2];if(w[b+9|0]!=2){u[a+92>>1]=x[a+92>>1]&65534;e=xa-16|0;xa=e;b=v[a+40>>2];a:{if(!v[b+2344>>2]){break a}c=x[a+148>>1];if(c&64){t[b+2281|0]=0;c=c&65471}u[a+148>>1]=c|128;if(c&32){break a}v[e+8>>2]=v[a+44>>2];b=rh(b+2240|0,e+8|0,e+15|0);if(!w[e+15|0]){v[b>>2]=v[e+8>>2]}u[a+148>>1]=x[a+148>>1]|32}xa=e+16|0;b=v[a+44>>2]}b:{if(!(w[b+44|0]&16)){break b}b=v[a+40>>2];v[g+8>>2]=a;b=rh(b+4632|0,g+8|0,g+15|0);if(w[g+15|0]){break b}v[b>>2]=v[g+8>>2]}c:{if(w[a+149|0]&16|((w[v[a+44>>2]+44|0]&3)==3|y[a+152>>2]>4294967293)){break c}c=v[a+32>>2];if(!c){break c}while(1){_R(c);c=v[c>>2];if(c){continue}break}}e=v[a+28>>2];if(e){c=0;while(1){b=c;c=b+1|0;f=v[v[a+20>>2]+(b<<2)>>2];b=w[f+20|0];d:{if(!b|(b|0)==2|w[f+21|0]&32){break d}if(!YP(f)|w[f+20|0]>2){break d}$O(v[a+40>>2],f)}if((c|0)!=(e|0)){continue}break}}b=v[a+44>>2];e:{if(!(w[b+44|0]&32)){break e}f:{if(w[b+9|0]==2){h=v[a+144>>2];if(h>>>0>4294967167){break e}e=h>>>7|0;f=e+32>>>5|0;d=v[a+40>>2];if(f>>>0<=(v[d+4740>>2]&2147483647)>>>0){c=v[d+4736>>2];break f}a=v[37696]+12|0;c=Ba[v[v[a>>2]+8>>2]](a,f<<2,24422,17999,438)|0;a=v[d+4736>>2];g:{if(!a){break g}I9(c,a,v[d+4740>>2]<<2);if(v[d+4740>>2]<0){break g}b=v[d+4736>>2];if(!b){break g}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}a=v[d+4740>>2];J9((a<<2)+c|0,0,f-a<<2);v[d+4740>>2]=f;v[d+4736>>2]=c;break f}h=v[a+144>>2];e=h>>>7|0;f=e+32>>>5|0;d=v[a+40>>2];if(f>>>0<=(v[d+4728>>2]&2147483647)>>>0){c=v[d+4724>>2];break f}a=v[37696]+12|0;c=Ba[v[v[a>>2]+8>>2]](a,f<<2,24422,17999,438)|0;a=v[d+4724>>2];h:{if(!a){break h}I9(c,a,v[d+4728>>2]<<2);if(v[d+4728>>2]<0){break h}b=v[d+4724>>2];if(!b){break h}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}a=v[d+4728>>2];J9((a<<2)+c|0,0,f-a<<2);v[d+4728>>2]=f;v[d+4724>>2]=c}a=(h>>>10&4194300)+c|0;v[a>>2]=v[a>>2]|1<>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;iI(a+176|0,f,h+12|0);v[h>>2]=0;v[h+4>>2]=0;e=a+196|0;if(f>>>0>(v[e+8>>2]&2147483647)>>>0){a:{if(!f){break a}d=f<<3;if(!d){break a}b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?47249:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,c,16608,553)|0}b=v[e>>2];d=v[e+4>>2];if((d|0)>0){g=(d<<3)+c|0;d=c;while(1){i=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=i;b=b+8|0;d=d+8|0;if(g>>>0>d>>>0){continue}break}b=v[e>>2]}if(!(!b|v[e+8>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b)}v[e+8>>2]=f;v[e>>2]=c}b=v[e+4>>2];if((b|0)<(f|0)){c=v[e>>2];d=c+(f<<3)|0;c=c+(b<<3)|0;while(1){b=v[h+4>>2];v[c>>2]=v[h>>2];v[c+4>>2]=b;c=c+8|0;if(d>>>0>c>>>0){continue}break}}v[e+4>>2]=f;g=v[a+192>>2];if(f>>>0>(v[g+12>>2]&2147483647)>>>0){b=0;b:{if(!f){break b}c=f<<2;if(!c){break b}b=v[g>>2];b=Ba[v[v[b>>2]+8>>2]](b,c,16608,553)|0}d=v[g+4>>2];c=v[g+8>>2];if((c|0)>0){i=(c<<2)+b|0;e=d;c=b;while(1){z[c>>2]=z[e>>2];e=e+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}if(!(!d|v[g+12>>2]<0)){c=v[g>>2];Ba[v[v[c>>2]+12>>2]](c,d)}v[g+12>>2]=f;v[g+4>>2]=b}v[g+8>>2]=f;b=j+32>>>5|0;if(b>>>0>(v[a+140>>2]&2147483647)>>>0){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b<<2,24422,17999,438)|0;d=v[a+136>>2];c:{if(!d){break c}I9(c,d,v[a+140>>2]<<2);if(v[a+140>>2]<0){break c}d=v[a+136>>2];if(!d){break c}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[a+140>>2];J9(c+(d<<2)|0,0,b-d<<2);v[a+140>>2]=b;v[a+136>>2]=c}if(b>>>0>(v[a+152>>2]&2147483647)>>>0){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b<<2,24422,17999,438)|0;d=v[a+148>>2];d:{if(!d){break d}I9(c,d,v[a+152>>2]<<2);if(v[a+152>>2]<0){break d}d=v[a+148>>2];if(!d){break d}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,d)}d=v[a+152>>2];J9(c+(d<<2)|0,0,b-d<<2);v[a+152>>2]=b;v[a+148>>2]=c}xa=h+16|0}function c2(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=0,M=0,N=C(0),O=C(0),P=C(0);t=xa;M=t;L=w[c+18|0];t=(t-(L<<4)|0)-16|0;xa=t;Ba[v[v[d>>2]+16>>2]](d,x[c+16>>1]+v[b+32>>2]|0,L,v[b+28>>2],t);d=w[c+18|0];if(d){N=C(z[a+80>>2]+z[h>>2]);b=(t+(d<<4)|0)-16|0;G=z[b+8>>2];H=z[b+4>>2];I=z[b>>2];b=0;while(1){j=I;h=t+(b<<4)|0;I=z[h>>2];u=C(j-I);l=z[i+4>>2];o=z[i>>2];j=H;H=z[h+4>>2];y=C(j-H);j=C(C(u*l)-C(o*y));q=z[a+56>>2];p=z[i+8>>2];k=G;G=z[h+8>>2];A=C(k-G);m=C(C(y*p)-C(l*A));D=z[a+48>>2];k=C(C(A*o)-C(p*u));J=z[a+52>>2];E=C(C(j*q)+C(C(m*D)+C(k*J)));F=C(C(j*G)+C(C(m*I)+C(H*k)));n=z[a+72>>2];r=z[a+64>>2];s=z[a+68>>2];a:{if(C(C(E-F)*C(C(C(j*n)+C(C(m*r)+C(k*s)))-F))>C(0)){break a}K=j;j=C(n-q);n=m;m=C(r-D);r=k;k=C(s-J);n=C(C(K*j)+C(C(n*m)+C(r*k)));if(n==C(0)){break a}r=C(C(o*k)-C(m*l));K=q;q=C(C(F-E)/n);F=C(K+C(j*q));E=C(F-G);n=C(C(l*j)-C(k*p));D=C(D+C(m*q));s=C(D-I);j=C(C(p*m)-C(j*o));m=C(J+C(k*q));k=C(m-H);j=C(C(C(r*E)+C(C(n*s)+C(j*k)))/C(C(r*A)+C(C(n*u)+C(y*j))));if(j>C(1.0049999952316284)|j>2];q=z[e>>2];J=z[e+4>>2];E=z[e+24>>2];n=z[e+16>>2];r=z[e+20>>2];l=z[e+40>>2];o=z[e+56>>2];p=z[e+32>>2];s=z[e+48>>2];O=z[e+36>>2];P=z[e+52>>2];d=B(v[g>>2],48)+f|0;v[d+12>>2]=0;K=l;l=C(F-o);o=C(D-s);s=C(p*o);p=C(m-P);z[d+8>>2]=C(K*l)+C(s+C(O*p));z[d+4>>2]=C(E*l)+C(C(n*o)+C(p*r));z[d>>2]=C(k*l)+C(C(q*o)+C(p*J));d=B(v[g>>2],48)+f|0;z[d+16>>2]=D-u;v[d+28>>2]=0;z[d+24>>2]=F-A;z[d+20>>2]=m-j;l=z[i+8>>2];h=v[i+4>>2];L=v[i>>2];d=v[g>>2];v[g>>2]=d+1;d=B(d,48)+f|0;v[d+32>>2]=L;v[d+36>>2]=h;z[d+44>>2]=y;z[d+40>>2]=l;d=w[c+18|0]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}xa=M}function $5(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0);c=xa-96|0;xa=c;e=v[b+76>>2];Ba[v[v[e>>2]+28>>2]](e,c+76|0,c+72|0);Z4(c+40|0,v[c+76>>2]);Z4(c+8|0,v[c+72>>2]);e=v[c+76>>2];f=C(0);a:{if(!e){break a}f=C(0);if(x[e+4>>1]==6){break a}o=c+80|0;Ba[v[v[e>>2]+156>>2]](o,e);k=z[c+88>>2];M=z[c+84>>2];N=z[c+80>>2];Ba[v[v[e>>2]+164>>2]](o,e);E=z[c+88>>2];F=z[c+84>>2];f=z[c+80>>2]}e=v[c+72>>2];g=C(0);b:{if(!e){break b}g=C(0);if(x[e+4>>1]==6){break b}o=c+80|0;Ba[v[v[e>>2]+156>>2]](o,e);h=z[c+88>>2];O=z[c+84>>2];P=z[c+80>>2];Ba[v[v[e>>2]+164>>2]](o,e);G=z[c+88>>2];H=z[c+80>>2];g=z[c+84>>2]}l=z[c+48>>2];i=z[b+44>>2];m=C(i+i);i=z[c+40>>2];j=z[b+36>>2];p=C(j+j);j=z[c+44>>2];d=z[b+40>>2];q=C(d+d);A=C(C(l*m)+C(C(i*p)+C(j*q)));r=z[c+16>>2];d=z[b+72>>2];s=C(d+d);t=z[c+8>>2];d=z[b- -64>>2];u=C(d+d);w=z[c+12>>2];d=z[b+68>>2];y=C(d+d);B=C(C(r*s)+C(C(t*u)+C(w*y)));d=z[c+52>>2];n=C(C(d*d)+C(-.5));I=C(C(j*A)+C(C(q*n)+C(d*C(C(l*p)-C(m*i)))));J=C(C(i*A)+C(C(p*n)+C(d*C(C(j*m)-C(q*l)))));Q=h;h=z[c+20>>2];D=C(C(h*h)+C(-.5));K=C(C(w*B)+C(C(y*D)+C(h*C(C(r*u)-C(s*t)))));L=C(C(t*B)+C(C(u*D)+C(h*C(C(w*s)-C(y*r)))));k=C(C(C(C(f*I)-C(J*F))+C(C(Q-C(C(H*K)-C(L*g)))-k))-z[c- -64>>2]);k=C(k+k);m=C(C(l*A)+C(C(m*n)+C(d*C(C(i*q)-C(p*j)))));h=C(C(r*B)+C(C(s*D)+C(h*C(C(t*y)-C(u*w)))));g=C(C(C(C(F*m)-C(I*E))+C(C(P-C(C(g*h)-C(K*G)))-N))-z[c+56>>2]);g=C(g+g);f=C(C(C(C(E*J)-C(m*f))+C(C(O-C(C(G*L)-C(h*H)))-M))-z[c+60>>2]);f=C(f+f);h=C(C(l*k)+C(C(i*g)+C(j*f)));z[a+8>>2]=C(l*h)+C(C(k*n)-C(d*C(C(i*f)-C(g*j))));z[a+4>>2]=C(j*h)+C(C(f*n)-C(d*C(C(l*g)-C(k*i))));z[a>>2]=C(i*h)+C(C(g*n)-C(d*C(C(j*k)-C(f*l))));xa=c+96|0}function bH(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;f=xa-16|0;xa=f;e=v[a+28>>2];if(e){while(1){b=c;c=b+1|0;d=v[v[a+20>>2]+(b<<2)>>2];b=w[d+20|0];a:{if(!b|(b|0)==2|!(w[d+21|0]&32)){break a}b=0;b:{c:{switch(w[d+20|0]){case 0:b=WR(d-4|0);break b;case 1:b=sS(d-4|0);break b;case 2:b=1;break b;case 4:b=OH(d);break b;case 5:break c;default:break b}}t[d+21|0]=w[d+21|0]&223;b=1}if(!b|w[d+20|0]>2){break a}aP(v[a+40>>2],d)}if((c|0)!=(e|0)){continue}break}}c=v[a+44>>2];d:{if(w[a+148|0]&8){break d}v[c+104>>2]=0;v[c+96>>2]=0;v[c+100>>2]=0;v[c+88>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;b=v[c+176>>2];if(t[v[a+100>>2]+28|0]>=0){d=w[c+173|0];e:{if(!b|w[v[c+176>>2]+31|0]==1){break e}b=v[c+176>>2];if(!b){break e}v[b+48>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+56>>2]=0;v[b+40>>2]=0;v[b+24>>2]=0}if(!d){t[a+150|0]=1;break d}t[a+150|0]=0;break d}f:{if(!b|w[v[c+176>>2]+31|0]==1){break f}b=v[c+176>>2];if(!b){break f}v[b+48>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+56>>2]=0;v[b+40>>2]=0}t[a+150|0]=w[a+150|0]&251}if(w[v[a+44>>2]+9|0]!=2){d=xa-16|0;xa=d;b=x[a+148>>1];e=v[a+40>>2];if(v[e+2344>>2]){if(b&128){t[e+2280|0]=0;b=b&65407}b=b|64;u[a+148>>1]=b}if(!(b&16)){v[d+8>>2]=v[a+44>>2];b=rh(e+2200|0,d+8|0,d+15|0);if(!w[d+15|0]){v[b>>2]=v[d+8>>2]}u[a+148>>1]=x[a+148>>1]|16}xa=d+16|0}if(w[c+44|0]&16){b=v[a+40>>2];v[f+12>>2]=a;Pg(b+4632|0,f+12|0)}c=v[a+32>>2];if(c){while(1){bS(c);c=v[c>>2];if(c){continue}break}}b=v[a+44>>2];g:{if(!(w[b+44|0]&32)){break g}h:{if(w[b+9|0]==2){c=v[a+144>>2];if(c>>>0>4294967167){break g}b=c>>>7|0;a=v[a+40>>2];if(b>>>0>=v[a+4740>>2]<<5>>>0){break g}a=a+4736|0;break h}c=v[a+144>>2];b=c>>>7|0;a=v[a+40>>2];if(b>>>0>=v[a+4728>>2]<<5>>>0){break g}a=a+4724|0}a=v[a>>2]+(c>>>10&4194300)|0;c=v[a>>2];g=a,h=Vaa(-2,b)&c,v[g>>2]=h}xa=f+16|0}function lI(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=C(0),p=0;if((Uaa(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=C(z[a+24>>2]*C(b>>>0));a:{if(o=C(0)){f=~~o>>>0;break a}f=0}l=v[a+16>>2];j=v[a+28>>2];d=b+f<<2;d=(0-d&12)+d|0;h=d+(f<<3)|0;if(h){c=v[37696]+12|0;e=Ba[v[v[c>>2]+8>>2]](c,h,24422,17301,372)|0}else{e=c}c=b<<2;i=J9(e,255,c);k=i+d|0;h=c+i|0;b:{if((j|0)==-1){if(!v[a+36>>2]){break b}m=b-1|0;d=0;while(1){j=d<<3;c=j+v[a+4>>2]|0;e=v[c+4>>2]<<16|x[c>>1];e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=((m&(e>>>16^e))<<2)+i|0;v[(d<<2)+h>>2]=v[e>>2];v[e>>2]=d;e=v[c+4>>2];j=j+k|0;v[j>>2]=v[c>>2];v[j+4>>2]=e;d=d+1|0;if(d>>>0>2]){continue}break}break b}j=I9(h,v[a+8>>2],v[a+16>>2]<<2);c=v[a+20>>2];if(!c){break b}e=b-1|0;while(1){d=v[v[a+12>>2]+(m<<2)>>2];if((d|0)!=-1){while(1){p=d<<2;n=d<<3;c=n+v[a+4>>2]|0;g=v[c+4>>2]<<16|x[c>>1];g=(g<<15^-1)+g|0;g=B(g>>>10^g,9);g=g>>>6^g;g=(g<<11^-1)+g|0;g=((e&(g>>>16^g))<<2)+i|0;v[p+j>>2]=v[g>>2];v[g>>2]=d;d=k+n|0;n=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=n;d=v[p+v[a+8>>2]>>2];if((d|0)!=-1){continue}break}c=v[a+20>>2]}m=m+1|0;if(m>>>0>>0){continue}break}}d=v[a>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+20>>2]=b;v[a+12>>2]=i;v[a>>2]=i;v[a+8>>2]=h;v[a+16>>2]=f;v[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;v[(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;v[(d<<2)+h>>2]=c;f=(c<<2)+h|0;c=d+2|0;v[f>>2]=c;f=(c<<2)+h|0;c=d+3|0;v[f>>2]=c;f=(c<<2)+h|0;c=d+4|0;v[f>>2]=c;f=(c<<2)+h|0;c=d+5|0;v[f>>2]=c;f=(c<<2)+h|0;c=d+6|0;v[f>>2]=c;f=(c<<2)+h|0;c=d+7|0;v[f>>2]=c;d=d+8|0;v[(c<<2)+h>>2]=d;if((b|0)!=(d|0)){continue}break}}v[(b<<2)+h>>2]=v[a+28>>2];v[a+28>>2]=l}function JX(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);d=z[c+4>>2];k=C(d+d);h=z[c+8>>2];i=C(k*h);l=z[c>>2];e=C(l+l);o=z[c+12>>2];f=C(e*o);g=C(i+f);z[a+28>>2]=g;j=C(e*h);n=C(k*o);p=C(j-n);z[a+24>>2]=p;i=C(i-f);z[a+20>>2]=i;A=C(e*d);r=C(h+h);q=C(o*r);o=C(A+q);z[a+12>>2]=o;f=C(j+n);z[a+8>>2]=f;j=C(A-q);z[a+4>>2]=j;A=C(1);e=C(C(1)-C(l*e));k=C(d*k);d=C(e-k);z[a+32>>2]=d;m=e;e=C(h*r);h=C(m-e);z[a+16>>2]=h;e=C(C(C(1)-k)-e);z[a>>2]=e;k=C(f*C(0));l=C(i*C(0));n=z[b+8>>2];r=C(C(k+l)+C(d*n));m=C(d*C(0));q=z[b>>2];v=C(m+C(l+C(f*q)));B=m;m=z[b+4>>2];w=C(B+C(k+C(i*m)));k=C(C(d*r)+C(C(f*v)+C(i*w)));z[a+32>>2]=k;l=C(j*C(0));s=C(h*C(0));x=C(C(l+s)+C(g*n));u=C(g*C(0));s=C(u+C(s+C(j*q)));u=C(u+C(l+C(h*m)));l=C(C(d*x)+C(C(f*s)+C(i*u)));z[a+28>>2]=l;B=d;d=C(e*C(0));D=C(o*C(0));y=C(C(d+D)+C(p*n));n=f;f=C(p*C(0));q=C(f+C(D+C(e*q)));m=C(f+C(d+C(o*m)));i=C(C(B*y)+C(C(n*q)+C(i*m)));z[a+24>>2]=i;f=C(C(g*r)+C(C(j*v)+C(h*w)));z[a+20>>2]=f;n=C(C(g*x)+C(C(j*s)+C(h*u)));z[a+16>>2]=n;h=C(C(g*y)+C(C(j*q)+C(h*m)));z[a+12>>2]=h;j=C(C(p*r)+C(C(e*v)+C(o*w)));z[a+8>>2]=j;d=C(C(p*x)+C(C(e*s)+C(o*u)));z[a+4>>2]=d;p=C(C(p*y)+C(C(e*q)+C(o*m)));z[a>>2]=p;o=C(0);e=C(0);r=C(0);q=C(1);v=C(0);g=C(0);m=C(0);w=C(1);x=C(C(h*l)-C(i*n));s=C(C(n*k)-C(l*f));u=C(k*h);y=C(C(j*x)+C(C(p*s)+C(d*C(C(f*i)-u))));if(y!=C(0)){g=C(C(1)/y);w=C(C(C(p*n)+C(d*C(-h)))*g);q=C(C(C(p*k)-C(i*j))*g);e=C(C(C(d*f)-C(n*j))*g);A=C(s*g);m=C(g*C(-C(C(p*l)-C(i*d))));v=C(g*C(-C(C(p*f)-C(h*j))));r=C(g*C(-C(u+C(i*C(-f)))));o=C(g*C(-C(C(d*k)-C(j*l))));g=C(x*g)}z[a+36>>2]=A;z[a+68>>2]=w;z[a- -64>>2]=m;z[a+60>>2]=g;z[a+56>>2]=v;z[a+52>>2]=q;z[a+48>>2]=r;z[a+44>>2]=e;z[a+40>>2]=o;t[a+72|0]=C(C(z[b>>2]*z[b+4>>2])*z[b+8>>2])>2];h=z[c+8>>2];s=C(t-h);j=z[b+8>>2];p=C(j-h);y=z[e>>2];k=z[c>>2];q=C(y-k);r=z[b>>2];l=C(r-k);A=z[e+4>>2];m=z[c+4>>2];u=C(A-m);n=z[b+4>>2];o=C(n-m);i=C(C(s*p)+C(C(q*l)+C(u*o)));w=z[d+8>>2];x=C(w-h);B=C(x*p);h=z[d>>2];p=C(h-k);k=C(p*l);l=z[d+4>>2];m=C(l-m);k=C(B+C(k+C(m*o)));if(!(!(k<=C(0))|!(i<=C(0)))){v[f>>2]=0;v[g>>2]=0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];return}o=C(j-w);h=C(r-h);w=C(n-l);l=C(C(s*o)+C(C(q*h)+C(u*w)));h=C(C(x*o)+C(C(p*h)+C(m*w)));if(!(!(h>=C(0))|!(h>=l))){v[f>>2]=1065353216;v[g>>2]=0;z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];return}o=C(C(k*l)-C(i*h));if(!(!(o<=C(0))|(!(h<=C(0))|!(k>=C(0))))){i=C(k/C(k-h));z[f>>2]=i;v[g>>2]=0;h=z[c>>2];j=z[c+4>>2];z[a+8>>2]=C(x*i)+z[c+8>>2];z[a+4>>2]=j+C(m*i);z[a>>2]=h+C(p*i);return}j=C(j-t);t=C(r-y);n=C(n-A);r=C(C(x*j)+C(C(p*t)+C(m*n)));j=C(C(s*j)+C(C(q*t)+C(u*n)));if(!(!(j>=C(0))|!(j>=r))){v[f>>2]=0;v[g>>2]=1065353216;z[a>>2]=z[e>>2];z[a+4>>2]=z[e+4>>2];z[a+8>>2]=z[e+8>>2];return}k=C(C(r*i)-C(j*k));if(!(!(k<=C(0))|(!(j<=C(0))|!(i>=C(0))))){v[f>>2]=0;i=C(i/C(i-j));z[g>>2]=i;h=z[c>>2];j=z[c+4>>2];z[a+8>>2]=C(s*i)+z[c+8>>2];z[a+4>>2]=j+C(u*i);z[a>>2]=h+C(q*i);return}a:{n=C(C(h*j)-C(l*r));if(!(n<=C(0))){break a}i=C(l-h);if(!(i>=C(0))){break a}h=C(r-j);if(!(h>=C(0))){break a}i=C(i/C(i+h));z[f>>2]=C(1)-i;z[g>>2]=i;h=z[d>>2];k=z[e>>2];j=z[d+4>>2];s=z[e+4>>2];q=z[d+8>>2];z[a+8>>2]=q+C(i*C(z[e+8>>2]-q));z[a+4>>2]=j+C(i*C(s-j));z[a>>2]=h+C(i*C(k-h));return}h=C(C(1)/C(o+C(n+k)));i=C(k*h);z[f>>2]=i;h=C(o*h);z[g>>2]=h;j=z[c>>2];k=z[c+4>>2];z[a+8>>2]=C(s*h)+C(C(x*i)+z[c+8>>2]);z[a+4>>2]=C(u*h)+C(k+C(m*i));z[a>>2]=C(q*h)+C(j+C(p*i))}function fD(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=0,s=0,u=0,w=0;k=xa-1056|0;xa=k;t[k+1040|0]=1;v[k+1048>>2]=256;v[k+1052>>2]=256;v[k+1044>>2]=k+16;v[k+16>>2]=v[c+588>>2];n=1;a:while(1){n=n-1|0;c=v[v[k+1044>>2]+(n<<2)>>2];h=z[c+16>>2];g=z[c>>2];f=C(h+g);h=C(h-g);i=z[c+24>>2];j=z[c+8>>2];g=C(i+j);m=z[c+20>>2];l=z[c+4>>2];o=C(m+l);i=C(i-j);j=C(m-l);while(1){b:{g=C(z[d+8>>2]-C(g*C(.5)));i=C(i*C(.5));m=g>2]-C(f*C(.5)));h=C(h*C(.5));l=f>2]-C(o*C(.5)));j=C(j*C(.5));q=j>o?o:j;c:{p=g;g=C(-i);g=C(p-(g>2]>=C(C(g*g)+C(p+C(f*f))))){break d}r=c;c=v[c+36>>2];if(v[r+40>>2]){break c}s=v[c>>2];if(!s){break d}c=c+4|0;if((s|0)==1){if(Ba[v[v[e>>2]>>2]](e,k+12|0,(v[c>>2]<<3)+a|0)|0){break d}break b}while(1){u=v[c>>2];r=B(u,24)+b|0;h=z[r+8>>2];g=z[r+20>>2];f=C(z[d+8>>2]-C(C(h+g)*C(.5)));h=C(C(g-h)*C(.5));g=f>2];j=z[r+12>>2];o=C(z[d>>2]-C(C(i+j)*C(.5)));i=C(C(j-i)*C(.5));j=i>o?o:i;l=z[r+4>>2];q=z[r+16>>2];m=C(z[d+4>>2]-C(C(l+q)*C(.5)));l=C(C(q-l)*C(.5));q=l>m?m:l;p=f;f=C(-h);f=C(p-(f>2]>=C(g+C(p+C(f*f)))){if(!(Ba[v[v[e>>2]>>2]](e,k+12|0,(u<<3)+a|0)|0)){break b}}c=c+4|0;s=s-1|0;if(s){continue}break}}w=!n;if(n){continue a}break b}v[v[k+1044>>2]+(n<<2)>>2]=c+48;n=n+1|0;if((n|0)==(v[k+1052>>2]&2147483647)){gD(k+16|0,n<<1)}h=z[c+16>>2];g=z[c>>2];f=C(h+g);h=C(h-g);i=z[c+24>>2];j=z[c+8>>2];g=C(i+j);m=z[c+20>>2];l=z[c+4>>2];o=C(m+l);i=C(i-j);j=C(m-l);continue}break}break}a=v[k+1052>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=v[k+1044>>2];if((a|0)==(k+16|0)|!a){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=k+1056|0;return w}function DV(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0,p=C(0),q=C(0),r=0,s=0,t=C(0),u=C(0),v=C(0);n=xa-16|0;k=z[e+8>>2];l=z[e>>2];m=z[e+4>>2];g=C(D(C(C(z[d+8>>2]*k)+C(C(z[d>>2]*l)+C(m*z[d+4>>2])))));z[n+4>>2]=g;h=C(D(C(C(k*z[d+20>>2])+C(C(l*z[d+12>>2])+C(m*z[d+16>>2])))));z[n+8>>2]=h;i=C(D(C(C(k*z[d+32>>2])+C(C(l*z[d+24>>2])+C(m*z[d+28>>2])))));z[n+12>>2]=i;o=g(o?h:g);s=r?1:2;o=!(o|r);n=n+4|0;n=B(z[n+(s<<2)>>2]>2]?s:o,12)+d|0;g=z[n+8>>2];h=z[n>>2];j=z[n+4>>2];i=C(C(g*k)+C(C(l*h)+C(m*j)));g=C(g-C(k*i));h=C(h-C(l*i));i=C(j-C(m*i));j=C(K(C(C(g*g)+C(C(h*h)+C(i*i)))));if(j>C(0)){j=C(C(1)/j);g=C(g*j);i=C(i*j);h=C(h*j)}z[a+12>>2]=h;z[a+8>>2]=k;z[a+4>>2]=m;z[a>>2]=l;z[a+20>>2]=g;z[a+16>>2]=i;j=C(C(l*i)-C(h*m));z[a+32>>2]=j;p=C(C(k*h)-C(g*l));z[a+28>>2]=p;q=C(C(m*g)-C(i*k));z[a+24>>2]=q;t=z[e+8>>2];u=z[e>>2];v=z[e+4>>2];z[a+48>>2]=C(C(D(C(C(z[d+32>>2]*k)+C(C(z[d+24>>2]*l)+C(m*z[d+28>>2])))))*z[b+8>>2])+C(C(C(D(C(C(z[d+20>>2]*k)+C(C(z[d+12>>2]*l)+C(m*z[d+16>>2])))))*z[b+4>>2])+C(C(f*C(.5))+C(z[b>>2]*C(D(C(C(z[d+8>>2]*k)+C(C(z[d>>2]*l)+C(z[d+4>>2]*m))))))));z[a+52>>2]=C(C(D(C(C(z[d+32>>2]*g)+C(C(z[d+24>>2]*h)+C(i*z[d+28>>2])))))*z[b+8>>2])+C(C(C(D(C(C(z[d+20>>2]*g)+C(C(z[d+12>>2]*h)+C(i*z[d+16>>2])))))*z[b+4>>2])+C(C(C(C(C(t*g)+C(C(u*h)+C(i*v)))*f)*C(.5))+C(z[b>>2]*C(D(C(C(z[d+8>>2]*g)+C(C(z[d>>2]*h)+C(z[d+4>>2]*i))))))));z[a+56>>2]=C(C(D(C(C(z[d+32>>2]*j)+C(C(z[d+24>>2]*q)+C(p*z[d+28>>2])))))*z[b+8>>2])+C(C(C(D(C(C(z[d+20>>2]*j)+C(C(z[d+12>>2]*q)+C(p*z[d+16>>2])))))*z[b+4>>2])+C(C(C(C(C(t*j)+C(C(u*q)+C(p*v)))*f)*C(.5))+C(z[b>>2]*C(D(C(C(z[d+8>>2]*j)+C(C(z[d>>2]*q)+C(z[d+4>>2]*p))))))));k=z[c>>2];l=z[e>>2];m=z[c+4>>2];g=z[e+4>>2];z[a+44>>2]=C(C(z[e+8>>2]*f)*C(.5))+z[c+8>>2];z[a+40>>2]=m+C(C(g*f)*C(.5));z[a+36>>2]=k+C(C(l*f)*C(.5))}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;i=1;e=xa-16|0;xa=e;h=b<<1;d=h+2|0;c=v[a+76>>2];f=c>>>0>>0?d:c;c=a- -64|0;g=v[c+16>>2];a:{if(f>>>0<=g>>>0){break a}d=v[c+20>>2];j=((d+f|0)-1>>>0)/(d>>>0)|0;m=v[c+4>>2];k=j-m|0;v[c+16>>2]=g+B(d,k);if((j|0)==(m|0)){break a}g=0;while(1){d=0;j=v[c+20>>2]<<3;if(j){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,j,24422,16683,84)|0}v[e+12>>2]=d;j=v[c+4>>2];b:{if(j>>>0>=(v[c+8>>2]&2147483647)>>>0){rF(c,e+12|0);break b}v[v[c>>2]+(j<<2)>>2]=d;v[c+4>>2]=j+1}g=g+1|0;if((k|0)!=(g|0)){continue}break}}d=v[c+12>>2];if(f>>>0>d>>>0){while(1){k=v[c+20>>2];g=(d>>>0)/(k>>>0)|0;k=v[v[c>>2]+(g<<2)>>2]+(d-B(g,k)<<3)|0;v[k>>2]=-1;v[k+4>>2]=-1;d=d+1|0;if((f|0)!=(d|0)){continue}break}}v[c+12>>2]=f;xa=e+16|0;j=v[a+60>>2];m=(b>>>0)/(j>>>0)|0;k=v[v[a+40>>2]+(m<<2)>>2];c=v[a+448>>2];e=v[c>>2];d=h|1;f=v[c+20>>2];c=(d>>>0)/(f>>>0)|0;g=v[v[e+(c<<2)>>2]+(d-B(c,f)<<2)>>2];c=0;l=(h>>>0)/(f>>>0)|0;f=v[v[e+(l<<2)>>2]+(h-B(f,l)<<2)>>2]>>>7|0;if((f|0)!=33554431){l=v[a+64>>2];c=v[a+84>>2];i=(h>>>0)/(c>>>0)|0;n=v[l+(i<<2)>>2]+(h-B(c,i)<<3)|0;e=v[a+16>>2]+B(f,24)|0;i=v[e>>2];v[n>>2]=i;if((i|0)!=-1){o=(i>>>0)/(c>>>0)|0;v[(v[l+(o<<2)>>2]+(i-B(c,o)<<3)|0)+4>>2]=h}v[e>>2]=h;v[n+4>>2]=-1;c=w[e+4|0];i=(c&4)>>>2|0;c=(c&34)!=0}c:{d:{e:{h=g>>>7|0;if(!((h|0)==(f|0)|(h|0)==33554431)){l=v[a+64>>2];f=v[a+84>>2];e=(d>>>0)/(f>>>0)|0;n=v[l+(e<<2)>>2]+(d-B(e,f)<<3)|0;g=v[a+16>>2];o=g+B(h,24)|0;e=v[o>>2];v[n>>2]=e;if((e|0)!=-1){p=(e>>>0)/(f>>>0)|0;v[(v[l+(p<<2)>>2]+(e-B(f,p)<<3)|0)+4>>2]=d}v[o>>2]=d;v[n+4>>2]=-1;d=1;f:{if(c){break f}c=w[(g+B(h,24)|0)+4|0];if(c&2){break f}d=(c&32)>>>5|0}if(i){break e}c=d}if(c){break d}break c}if(!d){break c}i=(w[(g+B(h,24)|0)+4|0]&4)>>>2|0}d=b-B(j,m)|0;if(v[k+(d<<4)>>2]?i:0){break c}CF(a,b);a=k+(d<<4)|0;u[a+4>>1]=x[a+4>>1]|4}}function M2(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),w=C(0),x=0,y=0,A=C(0),E=C(0),F=C(0),H=0,I=C(0),J=C(0),L=C(0),M=C(0),N=C(0),O=0,P=C(0);n=xa-48|0;xa=n;x=0;a:{if(!a){break a}H=g?v[g>>2]:H;O=j|k;P=C(C(z[c+8>>2]*z[e+8>>2])+C(C(z[c>>2]*z[e>>2])+C(z[c+4>>2]*z[e+4>>2])));I=C(2);g=-1;q=f;b:{c:{while(1){d:{x=y?(y|0)==(H|0)?0:y:H;s=B(x,36)+b|0;e:{if(K2(c,e,q,d,s,P)){break e}o=z[s>>2];w=C(z[s+12>>2]-o);p=z[s+4>>2];r=C(z[s+28>>2]-p);t=C(z[s+24>>2]-o);A=C(z[s+16>>2]-p);o=C(C(w*r)-C(t*A));p=z[s+8>>2];E=C(z[s+20>>2]-p);F=C(E*t);t=C(z[s+32>>2]-p);p=C(F-C(t*w));r=C(C(A*t)-C(r*E));if(!O&C(C(o*z[e+8>>2])+C(C(r*z[e>>2])+C(p*z[e+4>>2])))>C(0)){break e}w=C(K(C(C(o*o)+C(C(r*r)+C(p*p)))));if(w==C(0)){break e}t=o;o=C(C(1)/w);w=C(t*o);z[n+40>>2]=w;p=C(p*o);z[n+36>>2]=p;r=C(r*o);z[n+32>>2]=r;if(!L2(s,n+32|0,c,d,e,n+16|0,n+15|0,m)){break e}o=z[n+16>>2];if(o>f){break e}F=C(C(G(o>q?o:q,C(1)))*C(.0010000000474974513));A=z[e+8>>2];E=z[e>>2];N=z[e+4>>2];t=C(-C(D(C(C(w*A)+C(C(r*E)+C(p*N))))));if(!(o>2]=-A;z[i+4>>2]=-N;z[i>>2]=-E;u[h+12>>1]=1026;v[h+8>>2]=x;d=z[e>>2];f=z[e+4>>2];q=z[e+8>>2];v[h+40>>2]=0;z[h+36>>2]=-q;z[h+32>>2]=-f;z[h+28>>2]=-d;x=1;break a}g=x;q=o;M=w;L=p;J=r}if((g|0)!=-1){N2(n+32|0,n+16|0,c,e,q,B(g,36)+b|0);if(!(!(C(C(M*z[e+8>>2])+C(C(J*z[e>>2])+C(L*z[e+4>>2])))>C(0))|(j|!k))){z[n+24>>2]=-z[n+24>>2];z[n+20>>2]=-z[n+20>>2];z[n+16>>2]=-z[n+16>>2]}z[h+16>>2]=z[n+32>>2];z[h+20>>2]=z[n+36>>2];z[h+24>>2]=z[n+40>>2];z[h+28>>2]=z[n+16>>2];z[h+32>>2]=z[n+20>>2];d=z[n+24>>2];z[h+40>>2]=q;z[h+36>>2]=d;u[h+12>>1]=3;v[h+8>>2]=g;z[i+8>>2]=M;z[i+4>>2]=L;z[i>>2]=J}x=(g|0)!=-1}xa=n+48|0;return x}function gQ(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;k=32;l=xa-16|0;xa=l;t[l+12|0]=0;e=l-128|0;xa=e;v[l+8>>2]=e;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){b=h;h=b+1|0;d=h;c=b;while(1){c=y[(d<<2)+a>>2]>2]?d:c;f=(d|0)<(g|0);d=d+1|0;if(f){continue}break}if((b|0)!=(c|0)){c=(c<<2)+a|0;f=v[c>>2];b=(b<<2)+a|0;v[c>>2]=v[b>>2];v[b>>2]=f}if((g|0)!=(h|0)){continue}break b}}f=((g+h|0)/2<<2)+a|0;d=v[f>>2];j=(h<<2)+a|0;b=v[j>>2];if(d>>>0>>0){v[j>>2]=d;v[f>>2]=b;d=b;b=v[j>>2]}c=b;m=(g<<2)+a|0;b=v[m>>2];c:{if(c>>>0<=b>>>0){c=b;break c}v[j>>2]=b;v[m>>2]=c;d=v[f>>2]}if(c>>>0>>0){v[f>>2]=c;v[m>>2]=d;d=v[f>>2]}b=g-1|0;j=(b<<2)+a|0;v[f>>2]=v[j>>2];v[j>>2]=d;c=h;while(1){f=c;c=c+1|0;m=(c<<2)+a|0;o=v[m>>2];if(o>>>0>>0){continue}while(1){b=b-1|0;p=(b<<2)+a|0;q=v[p>>2];if(q>>>0>d>>>0){continue}break}if((b|0)>(c|0)){v[m>>2]=q;v[p>>2]=o;d=v[j>>2];continue}break}v[m>>2]=d;v[j>>2]=o;d:{if((c-h|0)<(g-c|0)){if(k-1>>>0<=i>>>0){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,(k<<3)+67|0,24422,17218,155)|0;e:{if(!b){d=0;break e}d=b+67&-64;v[d-4>>2]=d-b}k=k<<1;b=I9(d,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e-v[e-4>>2]|0)}e=b}b=(i<<2)+e|0;v[b>>2]=h;v[b+4>>2]=f;h=f+2|0;break d}if(k-1>>>0<=i>>>0){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,(k<<3)+67|0,24422,17218,155)|0;f:{if(!b){c=0;break f}c=b+67&-64;v[c-4>>2]=c-b}k=k<<1;b=I9(c,e,i<<2);c=n;n=1;if(!(!c|!e)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e-v[e-4>>2]|0)}e=b}b=(i<<2)+e|0;v[b>>2]=f+2;v[b+4>>2]=g;g=f}i=i+2|0;if((g|0)>(h|0)){continue}break}}if(i){b=i-2|0;h=v[(b<<2)+e>>2];g=v[((i<<2)+e|0)-4>>2];i=b;continue}break}if(!n|!e){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e-v[e-4>>2]|0)}if(w[l+12|0]){v9(v[l+8>>2])}xa=l+16|0}function y1(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=0,q=C(0),r=C(0),s=C(0),u=C(0),w=C(0),x=C(0),y=0,A=0,D=C(0),E=0,F=C(0),G=C(0),H=0;p=xa-160|0;xa=p;l2(b,h,p+88|0);v[p+56>>2]=b+96;v[p+52>>2]=b+48;v[p+48>>2]=e;a:{if(h){t[p+60|0]=1;v[p+16>>2]=141020;break a}t[p+60|0]=0;v[p+16>>2]=141068}v[p+64>>2]=b;v[p+12>>2]=0;b=p+88|0;y=p+16|0;h=xa-48|0;xa=h;A=p+12|0;H=v[A>>2];E=v[j+12>>2];v[h+40>>2]=v[j+8>>2];v[h+44>>2]=E;E=v[j+4>>2];v[h+32>>2]=v[j>>2];v[h+36>>2]=E;b:{c:{d:{if(n){if(!d2(a,b,y,m,h+16|0,h+32|0)){break c}f2(a,b,y,c,f,A,m,h+32|0);if(v[A>>2]-H>>>0>1){break d}k=v[b+24>>2];v[h+12>>2]=0;z[h+8>>2]=-z[h+40>>2];z[h+4>>2]=-z[h+36>>2];z[h>>2]=-z[h+32>>2];c2(a,b,k+B(_1(b,y,h),20)|0,y,c,f,A,m,h+32|0);break d}f2(a,b,y,c,f,A,m,h+32|0);if(v[A>>2]-H>>>0>1){break d}v[h+28>>2]=0;z[h+24>>2]=-z[h+40>>2];z[h+20>>2]=-z[h+36>>2];z[h+16>>2]=-z[h+32>>2];q=C(o*C(.05000000074505806));o=C(o*C(.009999999776482582));l=lq?q:l);c2(a,b,v[b+24>>2]+B(k,20)|0,y,c,f,A,m,h+32|0)}b=v[h+36>>2];v[j>>2]=v[h+32>>2];v[j+4>>2]=b;b=v[h+44>>2];v[j+8>>2]=v[h+40>>2];v[j+12>>2]=b;b=1;break b}b=0}xa=h+48|0;e:{if(!b){break e}c=v[p+12>>2];f:{if(c){x2(i,f,c);l=z[e+12>>2];o=C(C(l*l)+C(-.5));q=z[e+8>>2];r=z[j+8>>2];s=z[e>>2];u=z[j>>2];w=z[e+4>>2];x=z[j+4>>2];D=C(C(q*r)+C(C(s*u)+C(w*x)));F=C(C(C(l*C(C(s*x)-C(u*w)))+C(o*r))+C(q*D));G=C(C(w*D)+C(C(o*x)+C(l*C(C(q*u)-C(r*s)))));l=C(C(s*D)+C(C(u*o)+C(l*C(C(w*r)-C(x*q)))));break f}if(n){break e}l=z[e+12>>2];o=C(C(l*l)+C(-.5));q=z[e+8>>2];r=z[j+8>>2];s=z[e>>2];u=z[j>>2];w=z[e+4>>2];x=z[j+4>>2];D=C(C(q*r)+C(C(s*u)+C(w*x)));F=C(C(C(l*C(C(s*x)-C(u*w)))+C(o*r))+C(q*D));G=C(C(w*D)+C(C(o*x)+C(l*C(C(q*u)-C(r*s)))));l=C(C(s*D)+C(C(u*o)+C(l*C(C(w*r)-C(x*q)))))}v[j+12>>2]=0;z[j+8>>2]=F+F;z[j+4>>2]=G+G;z[j>>2]=l+l;s2(i,g,j,j,d,a+80|0,m)}xa=p+160|0;return b}function $I(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=xa-16|0;xa=g;j=v[v[a+4>>2]+40>>2];c=v[j+980>>2];d=v[c+196>>2];h=v[a+8>>2]&2147483647;b=v[(d+(h<<3)|0)+4>>2];a:{if((b|0)==-1){e=h>>>5<<2;f=e+v[c+136>>2]|0;i=v[f>>2];b=1<>2]=i&(b^-1);break b}e=e+v[c+148>>2]|0;v[e>>2]=b|v[e>>2]}t[c+365|0]=1;break a}c:{d:{e:{f:{g:{h:{e=v[v[c+376>>2]+(b<<1&-4)>>2];b=v[e+8>>2];if(!b){d=0;break h}f=v[e+4>>2];d=0;while(1){if((h|0)==v[f+(d<<2)>>2]){break h}d=d+1|0;if((b|0)!=(d|0)){continue}break}break g}if((b|0)!=(d|0)){b=b-1|0;v[e+8>>2]=b;f=d<<2;d=v[e+4>>2];v[f+d>>2]=v[d+(b<<2)>>2];b=v[e+8>>2]}if(b){break g}b=v[e>>2];d=b>>>5<<2;f=d+v[c+136>>2]|0;i=v[f>>2];b=1<>2]=i&(b^-1);break e}if(v[e+20>>2]!=-1){break c}b=v[c+392>>2];v[e+20>>2]=b;v[g+12>>2]=e;if(b>>>0<(v[c+396>>2]&2147483647)>>>0){break d}mI(c+388|0,g+12|0);break c}d=d+v[c+148>>2]|0;v[d>>2]=b|v[d>>2]}b=v[e+20>>2];if((b|0)==-1){break c}d=v[c+392>>2]-1|0;v[c+392>>2]=d;f=v[c+388>>2];i=b<<2;v[f+i>>2]=v[f+(d<<2)>>2];if(b>>>0>>0){v[v[i+v[c+388>>2]>>2]+20>>2]=b}v[e+20>>2]=-1;break c}v[v[c+388>>2]+(b<<2)>>2]=e;v[c+392>>2]=b+1}t[c+365|0]=1;d=v[c+196>>2]}b=h<<2;v[b+v[c+180>>2]>>2]=-1;v[b+v[v[c+192>>2]+4>>2]>>2]=0;b=(h<<3)+d|0;v[b>>2]=0;v[b+4>>2]=-1;xa=g+16|0;d=v[a+8>>2];h=d&2147483647;e=h+32>>>5|0;b=v[j+980>>2];i:{if(e>>>0<=(v[b+164>>2]&2147483647)>>>0){c=v[b+160>>2];break i}c=v[b+168>>2];c=Ba[v[v[c>>2]+8>>2]](c,e<<2,17999,438)|0;g=v[b+160>>2];j:{if(!g){break j}I9(c,g,v[b+164>>2]<<2);if(v[b+164>>2]<0){break j}g=v[b+160>>2];if(!g){break j}f=v[b+168>>2];Ba[v[v[f>>2]+12>>2]](f,g)}g=v[b+164>>2];J9((g<<2)+c|0,0,e-g<<2);v[b+164>>2]=e;v[b+160>>2]=c}b=(h>>>3&268435452)+c|0;c=v[b>>2];k=b,l=Vaa(-2,d)&c,v[k>>2]=l;v[a+8>>2]=v[a+8>>2]&2147483647;a=v[j+2352>>2];v[a+12>>2]=v[a+12>>2]+1}function wS(a,b,c,d){var e=0,f=0,g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=0;f=xa-48|0;xa=f;u[a+44>>1]=x[a+44>>1]+1;a:{if(!u$(a+16|0,a+28|0,b,c,d)){break a}h=z[a+40>>2];j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];m=z[c>>2];n=z[b>>2];o=z[c+4>>2];p=z[b+4>>2];q=z[b+8>>2];r=z[c+8>>2];z[f+40>>2]=C(q+r)*C(.5);z[f+36>>2]=C(p+o)*C(.5);z[f+32>>2]=C(n+m)*C(.5);z[f+24>>2]=C(r+l)*C(.5);z[f+20>>2]=C(o+k)*C(.5);z[f+16>>2]=C(m+j)*C(.5);z[f+8>>2]=C(q+l)*C(.5);z[f+4>>2]=C(p+k)*C(.5);z[f>>2]=C(n+j)*C(.5);b:{c:{d:{e:{f:{g:{h:{i:{g=C(r-l);s=C(g*g);g=C(m-j);t=C(g*g);g=C(o-k);e=(h>2];b=v[c+4>>2];d=b;i=b+2|0;e=v[c+8>>2]&2147483647;j:{if(i>>>0<=e>>>0){break j}d=b;w=e;e=e?e<<1:2;e=e>>>0>>0?i:e;if(w>>>0>=e>>>0){break j}vS(c,e);d=v[c+4>>2]}v[c+4>>2]=b+1;b=v[c>>2]+B(d,36)|0;z[b+24>>2]=j;z[b+12>>2]=m;z[b+8>>2]=q;z[b+4>>2]=p;z[b>>2]=n;z[b+32>>2]=l;z[b+28>>2]=k;z[b+20>>2]=r;z[b+16>>2]=o;c=a+4|0;b=v[a+12>>2];d=v[b+4>>2];k:{if(d>>>0>=(v[b+8>>2]&2147483647)>>>0){pn(b,c);break k}v[v[b>>2]+(d<<2)>>2]=v[c>>2];v[b+4>>2]=v[b+4>>2]+1}v[a>>2]=v[a>>2]+1;break a}e=b;b=f+32|0;wS(a,e,b,d);wS(a,b,c,d);break a}e=c;c=f+16|0;wS(a,b,e,c);wS(a,b,c,d);break a}i=f+32|0;e=f+16|0;wS(a,b,i,e);wS(a,b,e,d);wS(a,i,c,e);break a}wS(a,b,c,f);wS(a,c,d,f);break a}e=b;b=f+32|0;wS(a,e,b,f);wS(a,b,c,f);wS(a,f,c,d);break a}e=c;c=f+16|0;wS(a,b,e,c);wS(a,b,c,f);wS(a,f,c,d);break a}e=b;b=f+32|0;wS(a,e,b,f);e=c;c=f+16|0;wS(a,b,e,c);wS(a,f,c,d);wS(a,b,c,f)}xa=f+48|0}function KD(a,b,c,d,e){var f=0,g=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=0,r=0,s=C(0),u=0,w=0;h=xa-1056|0;xa=h;t[h+1040|0]=1;v[h+1048>>2]=256;v[h+1052>>2]=256;v[h+1044>>2]=h+16;r=v[c+8>>2];v[h+16>>2]=r;k=1;a:while(1){k=k-1|0;f=v[v[h+1044>>2]+(k<<2)>>2];i=z[f>>2];j=z[f+12>>2];g=C(i+j);i=C(j-i);l=z[f+8>>2];m=z[f+20>>2];j=C(l+m);o=z[f+4>>2];p=z[f+16>>2];s=C(o+p);l=C(m-l);m=C(p-o);while(1){b:{c:{g=C(C(g*C(.5))-z[d>>2]);d:{if(!(C(C(i*C(.5))+z[d+16>>2])>=(g>C(0)?g:C(-g)))){break d}g=C(C(s*C(.5))-z[d+4>>2]);if(!(C(C(m*C(.5))+z[d+20>>2])>=(g>C(0)?g:C(-g)))){break d}g=C(C(j*C(.5))-z[d+8>>2]);if(!(C(C(l*C(.5))+z[d+24>>2])>=(g>C(0)?g:C(-g)))){break d}f=v[f+24>>2];n=f>>>1|0;if(!(f&1)){break c}q=n&15;if(!q){break d}n=v[c>>2]+(f>>>3&536870908)|0;if((q|0)==1){if(Ba[v[v[e>>2]>>2]](e,h+12|0,(v[n>>2]<<3)+a|0)|0){break d}break b}while(1){u=v[n>>2];f=B(u,24)+b|0;i=z[f+12>>2];j=z[f>>2];g=C(C(C(j+i)*C(.5))-z[d>>2]);e:{if(!(C(C(C(i-j)*C(.5))+z[d+16>>2])>=(g>C(0)?g:C(-g)))){break e}i=z[f+4>>2];j=z[f+16>>2];g=C(C(C(i+j)*C(.5))-z[d+4>>2]);if(!(C(C(C(j-i)*C(.5))+z[d+20>>2])>=(g>C(0)?g:C(-g)))){break e}i=z[f+8>>2];j=z[f+20>>2];g=C(C(C(i+j)*C(.5))-z[d+8>>2]);if(!(C(C(C(j-i)*C(.5))+z[d+24>>2])>=(g>C(0)?g:C(-g)))){break e}if(!(Ba[v[v[e>>2]>>2]](e,h+12|0,(u<<3)+a|0)|0)){break b}}n=n+4|0;q=q-1|0;if(q){continue}break}}w=!k;if(k){continue a}break b}f=B(n,28)+r|0;v[v[h+1044>>2]+(k<<2)>>2]=f+28;k=k+1|0;if((k|0)==(v[h+1052>>2]&2147483647)){OD(h+16|0,k<<1)}i=z[f>>2];j=z[f+12>>2];g=C(i+j);i=C(j-i);l=z[f+8>>2];m=z[f+20>>2];j=C(l+m);o=z[f+4>>2];p=z[f+16>>2];s=C(o+p);l=C(m-l);m=C(p-o);continue}break}break}a=v[h+1052>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[h+1044>>2];if((a|0)==(h+16|0)|!a){break f}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=h+1056|0;return w}function D6(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),w=C(0),x=0,y=0;j=xa-32|0;xa=j;h=C(C(f*C(0))+e);l=H9(h);i=C(C(d*C(0))+c);m=H9(i);h=R9(h);i=R9(i);u=z[b+20>>2];w=z[b+16>>2];p=z[b+8>>2];n=C(m*C(0));o=C(C(C(C(n+C(0))-i)+C(0))+C(C(m+C(C(i*C(0))+C(0)))*C(0)));o=C(o+o);q=z[b>>2];k=C(h*C(-0));t=C(i*C(-0));r=C(l*C(0));k=C(C(C(n+C(C(l*i)+k))*C(0))+C(C(t+C(C(m*l)+k))+C(C(C(r-h)+C(0))*C(0))));k=C(k+k);h=C(C(C(n+C(C(h*i)+r))*C(0))+C(C(t+C(C(m*h)+r))+C(C(C(l+C(h*C(0)))+C(0))*C(0))));i=C(h+h);l=z[b+4>>2];m=C(C(p*o)+C(C(q*k)+C(i*l)));h=z[b+12>>2];n=C(C(h*h)+C(-.5));z[j+8>>2]=C(C(p*m)+C(C(o*n)+C(h*C(C(q*i)-C(k*l)))))+z[b+24>>2];z[j+4>>2]=u+C(C(l*m)+C(C(i*n)+C(h*C(C(p*k)-C(o*q)))));z[j>>2]=w+C(C(q*m)+C(C(k*n)+C(h*C(C(l*o)-C(i*p)))));x=b+16|0;Ba[v[v[a>>2]+28>>2]](a,x,j,g);z[j+24>>2]=z[j+8>>2];s=v[j+4>>2];v[j+16>>2]=v[j>>2];v[j+20>>2]=s;s=1;while(1){h=C(C(s>>>0)/C(7));i=C(C(1)-h);p=C(C(h*f)+C(i*e));l=H9(p);i=C(C(h*d)+C(i*c));m=H9(i);h=R9(p);i=R9(i);u=z[b+16>>2];w=z[b+20>>2];p=z[b+8>>2];n=C(m*C(0));o=C(C(C(C(n+C(0))-i)+C(0))+C(C(m+C(C(i*C(0))+C(0)))*C(0)));o=C(o+o);q=z[b>>2];k=C(h*C(-0));t=C(i*C(-0));r=C(l*C(0));k=C(C(C(n+C(C(l*i)+k))*C(0))+C(C(t+C(C(m*l)+k))+C(C(C(r-h)+C(0))*C(0))));k=C(k+k);h=C(C(C(n+C(C(h*i)+r))*C(0))+C(C(t+C(C(m*h)+r))+C(C(C(l+C(h*C(0)))+C(0))*C(0))));i=C(h+h);l=z[b+4>>2];m=C(C(p*o)+C(C(q*k)+C(i*l)));h=z[b+12>>2];n=C(C(h*h)+C(-.5));z[j+8>>2]=C(C(p*m)+C(C(o*n)+C(h*C(C(q*i)-C(k*l)))))+z[b+24>>2];z[j+4>>2]=w+C(C(l*m)+C(C(i*n)+C(h*C(C(p*k)-C(o*q)))));z[j>>2]=u+C(C(q*m)+C(C(k*n)+C(h*C(C(l*o)-C(i*p)))));Ba[v[v[a>>2]+28>>2]](a,x,j,g);Ba[v[v[a>>2]+28>>2]](a,j+16|0,j,g);z[j+16>>2]=z[j>>2];y=v[j+8>>2];v[j+20>>2]=v[j+4>>2];v[j+24>>2]=y;s=s+1|0;if((s|0)!=8){continue}break}xa=j+32|0}function d2(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=0,k=C(0),l=0,m=0,n=C(0),o=0,p=C(0),q=C(0),r=0,s=0,t=0,u=C(0),y=C(0),A=C(0),D=0,E=C(0),F=C(0),G=C(0);g=xa-80|0;xa=g;v[g+64>>2]=2139095039;v[g+24>>2]=0;v[g+28>>2]=0;v[g+16>>2]=0;v[g+20>>2]=1065353216;l=0;a:{if(!e2(a,b,c,d,g- -64|0,g+16|0)){break a}b:{l=v[b+16>>2];if(l){u=C(z[a+68>>2]-z[a+52>>2]);E=C(-u);y=C(z[a+64>>2]-z[a+48>>2]);F=C(-y);A=C(z[a+72>>2]-z[a+56>>2]);G=C(-A);while(1){t=v[b+24>>2]+B(s,20)|0;r=w[t+18|0];if(r){D=v[b+32>>2]+x[t+16>>1]|0;j=r-1|0;l=0;while(1){m=v[c+40>>2];o=v[b+28>>2];j=o+B(w[j+D|0],12)|0;o=o+B(w[l+D|0],12)|0;k=C(z[j+8>>2]-z[o+8>>2]);h=C(z[j>>2]-z[o>>2]);i=C(z[j+4>>2]-z[o+4>>2]);p=C(C(z[m+24>>2]*k)+C(C(z[m+16>>2]*h)+C(i*z[m+20>>2])));q=C(C(z[m+8>>2]*k)+C(C(z[m>>2]*h)+C(i*z[m+4>>2])));n=C(C(y*p)+C(q*E));h=C(C(z[m+40>>2]*k)+C(C(z[m+32>>2]*h)+C(i*z[m+36>>2])));k=C(C(u*h)+C(p*G));h=C(C(A*q)+C(h*F));i=C(C(n*n)+C(C(k*k)+C(h*h)));if(!(i>2]=0;i=C(C(1)/C(K(i)));z[g+8>>2]=n*i;z[g+4>>2]=h*i;z[g>>2]=k*i;Ba[v[v[c>>2]+12>>2]](c,g,g+48|0,g+32|0);h=z[g+8>>2];i=z[g>>2];n=z[g+4>>2];k=C(C(z[a+72>>2]*h)+C(C(z[a+64>>2]*i)+C(n*z[a+68>>2])));h=C(C(z[a+56>>2]*h)+C(C(z[a+48>>2]*i)+C(z[a+52>>2]*n)));j=k>2];q=C((j?k:h)-p);i=z[g+32>>2];n=z[d>>2];if(q>C(i+n)|z[g+48>>2]>C(n+C(p+(j?h:k)))){break b}k=C(i-q);if(k>2]){z[g+64>>2]=k;j=v[g+4>>2];v[g+16>>2]=v[g>>2];v[g+20>>2]=j;j=v[g+12>>2];v[g+24>>2]=v[g+8>>2];v[g+28>>2]=j}r=w[t+18|0]}j=l;l=j+1|0;if(r>>>0>l>>>0){continue}break}l=v[b+16>>2]}s=s+1|0;if(s>>>0>>0){continue}break}}a=v[g+20>>2];v[f>>2]=v[g+16>>2];v[f+4>>2]=a;a=v[g+28>>2];v[f+8>>2]=v[g+24>>2];v[f+12>>2]=a;a=v[g+68>>2];v[e>>2]=v[g+64>>2];v[e+4>>2]=a;a=v[g+76>>2];v[e+8>>2]=v[g+72>>2];v[e+12>>2]=a;l=1;break a}l=0}xa=g+80|0;return l}function wx(a,b){var c=0,d=C(0),e=0,f=C(0),g=0,h=C(0),i=C(0),j=0,k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0,x=0,y=0,A=0,D=0,E=0,F=0;u=v[b+24>>2];e=v[b+4>>2];c=v[b>>2];x=v[a+336>>2];b=w[v[a+364>>2]];y=v[a+340>>2];A=v[a+332>>2];g=v[A+16>>2];z[y+144>>2]=z[g+76>>2];a:{if(b&1){v[c>>2]=0;v[c+4>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;f=z[c+8>>2];h=z[c+4>>2];i=z[c>>2];break a}d=z[g+72>>2];f=z[g+88>>2];i=z[g+80>>2];e=v[g+68>>2];b=v[g+64>>2];h=z[g+84>>2];z[c+4>>2]=h;z[c+8>>2]=f;v[c+12>>2]=0;v[c+28>>2]=0;z[c+24>>2]=d;v[c+16>>2]=b;v[c+20>>2]=e;z[c>>2]=i}v[a+12>>2]=0;z[a+8>>2]=f;z[a+4>>2]=h;z[a>>2]=i;z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];d=z[c+24>>2];v[a+28>>2]=0;z[a+24>>2]=d;if(x>>>0>=2){E=v[a+272>>2];F=v[a+344>>2];j=1;while(1){b=B(j,160)+y|0;D=j<<5;a=D+A|0;z[b+144>>2]=z[v[a+16>>2]+76>>2];f=z[b+124>>2];a=(v[a+24>>2]<<5)+c|0;m=z[a>>2];d=z[b+120>>2];n=z[a+4>>2];s=C(C(C(f*m)-C(d*n))+z[a+24>>2]);o=z[a+8>>2];h=C(d*o);d=z[b+128>>2];t=C(C(h-C(d*m))+z[a+20>>2]);d=C(C(C(d*n)-C(f*o))+z[a+16>>2]);if(u){a=B(j,80)+F|0;g=w[a+76|0];b:{if(!g){i=C(0);h=C(0);p=C(0);q=C(0);r=C(0);f=C(0);break b}e=(v[a+72>>2]<<2)+u|0;a=E+B(j,76)|0;f=C(0);b=0;r=C(0);q=C(0);p=C(0);h=C(0);i=C(0);while(1){k=z[(b<<2)+e>>2];l=B(b,24)+a|0;q=C(q+C(k*z[l+12>>2]));p=C(p+C(k*z[l+8>>2]));h=C(h+C(k*z[l+4>>2]));i=C(i+C(k*z[l>>2]));f=C(f+C(k*z[l+20>>2]));r=C(r+C(k*z[l+16>>2]));b=b+1|0;if((g|0)!=(b|0)){continue}break}}s=C(s+f);t=C(t+r);o=C(o+p);n=C(n+h);m=C(m+i);d=C(d+q)}a=c+D|0;v[a+28>>2]=0;z[a+16>>2]=d;v[a+12>>2]=0;z[a+8>>2]=o;z[a+4>>2]=n;z[a>>2]=m;z[a+24>>2]=s;z[a+20>>2]=t;j=j+1|0;if((x|0)!=(j|0)){continue}break}}}function JP(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;i=xa-16|0;xa=i;b=v[b+32>>2];if(b){while(1){v[i+12>>2]=b;g=v[c+264>>2];a:{if(g>>>0>=(v[c+268>>2]&2147483647)>>>0){g=0;f=v[c+268>>2];j=f&2147483647?f<<1:1;b:{if(!j){break b}f=j<<2;if(!(w[c+256|0]|f>>>0>256)){t[c+256|0]=1;g=c;break b}if(!f){break b}g=v[37696];h=g+12|0;g=(n=h,o=f,p=Ba[v[v[g>>2]+20>>2]](g)|0?58181:63804,q=16608,r=553,m=v[v[h>>2]+8>>2],Ba[m](n|0,o|0,p|0,q|0,r|0)|0)}h=v[c+264>>2];l=(h<<2)+g|0;if((h|0)>0){k=v[c+260>>2];f=g;while(1){v[f>>2]=v[k>>2];k=k+4|0;f=f+4|0;if(l>>>0>f>>>0){continue}break}}v[l>>2]=v[i+12>>2];c:{if(v[c+268>>2]<0){break c}f=v[c+260>>2];if((f|0)==(c|0)){t[c+256|0]=0;break c}if(!f){break c}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,f);h=v[c+264>>2]}v[c+268>>2]=j;v[c+260>>2]=g;v[c+264>>2]=h+1;break a}v[v[c+260>>2]+(g<<2)>>2]=b;v[c+264>>2]=g+1}f=v[v[i+12>>2]+28>>2];v[i+8>>2]=f;g=v[d+264>>2];d:{if(g>>>0>=(v[d+268>>2]&2147483647)>>>0){g=0;f=v[d+268>>2];j=f&2147483647?f<<1:1;e:{if(!j){break e}f=j<<2;if(!(w[d+256|0]|f>>>0>256)){t[d+256|0]=1;g=d;break e}if(!f){break e}g=v[37696];h=g+12|0;g=(r=h,q=f,p=Ba[v[v[g>>2]+20>>2]](g)|0?59791:63804,o=16608,n=553,m=v[v[h>>2]+8>>2],Ba[m](r|0,q|0,p|0,o|0,n|0)|0)}h=v[d+264>>2];l=(h<<2)+g|0;if((h|0)>0){k=v[d+260>>2];f=g;while(1){v[f>>2]=v[k>>2];k=k+4|0;f=f+4|0;if(l>>>0>f>>>0){continue}break}}v[l>>2]=v[i+8>>2];f:{if(v[d+268>>2]<0){break f}f=v[d+260>>2];if((f|0)==(d|0)){t[d+256|0]=0;break f}if(!f){break f}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,f);h=v[d+264>>2]}v[d+268>>2]=j;v[d+260>>2]=g;v[d+264>>2]=h+1;break d}v[v[d+260>>2]+(g<<2)>>2]=f;v[d+264>>2]=g+1}b=v[b>>2];if(b){continue}break}}if(v[c+264>>2]){b=0;while(1){KP(a,v[v[c+260>>2]+(b<<2)>>2],e);b=b+1|0;if(b>>>0>2]){continue}break}}xa=i+16|0}function Dj(a,b,c){a=a|0;b=b|0;c=C(c);var d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=0,u=0,w=C(0),y=C(0),A=0;e=xa-32|0;xa=e;d=xa-96|0;xa=d;v[e+16>>2]=2122317823;v[e+20>>2]=-25165825;v[e+8>>2]=2122317823;v[e+12>>2]=2122317823;v[e+24>>2]=-25165825;v[e+28>>2]=-25165825;m=b+20|0;s=x[m+4>>1];Ba[v[v[b>>2]+76>>2]](d- -64|0,b);if(s){A=x[m+4>>1]==1?m:v[m>>2];k=C(85070586659632215e21);l=C(85070586659632215e21);m=0;while(1){r=v[(m<<2)+A>>2];t=v[r+40>>2];u=v[r+36>>2];b=u&4?t:r+80|0;q=z[b+24>>2];w=z[b+20>>2];y=z[b+16>>2];f=z[d+76>>2];j=z[b+12>>2];n=z[b>>2];g=z[d+64>>2];h=z[d+68>>2];o=z[b+4>>2];i=z[d+72>>2];p=z[b+8>>2];z[d+20>>2]=C(C(C(f*j)-C(n*g))-C(h*o))-C(i*p);z[d+16>>2]=C(C(g*o)+C(C(f*p)+C(i*j)))-C(n*h);z[d+12>>2]=C(C(i*n)+C(C(f*o)+C(h*j)))-C(p*g);z[d+8>>2]=C(C(h*p)+C(C(f*n)+C(g*j)))-C(o*i);j=C(q+q);n=C(y+y);o=C(w+w);p=C(C(i*j)+C(C(g*n)+C(h*o)));q=C(C(f*f)+C(-.5));z[d+32>>2]=z[d+88>>2]+C(C(i*p)+C(C(j*q)+C(f*C(C(g*o)-C(n*h)))));z[d+28>>2]=z[d+84>>2]+C(C(h*p)+C(C(o*q)+C(f*C(C(i*n)-C(j*g)))));z[d+24>>2]=z[d+80>>2]+C(C(g*p)+C(C(n*q)+C(f*C(C(h*j)-C(o*i)))));eV(d+40|0,u&1?t- -64|0:r+116|0,d+8|0,C(1));f=z[d+40>>2];g=z[d+44>>2];h=z[e+16>>2];i=z[d+48>>2];z[e+16>>2]=hk?k:g;z[e+12>>2]=k;l=f>l?l:f;z[e+8>>2]=l;f=z[d+52>>2];g=z[d+56>>2];h=z[e+28>>2];i=z[d+60>>2];z[e+28>>2]=h>i?h:i;h=z[e+24>>2];z[e+24>>2]=g>2];z[e+20>>2]=f>2];g=z[e+20>>2];h=z[e+8>>2];i=z[e+12>>2];k=z[e+16>>2];l=z[e+28>>2];j=C(C(k+l)*C(.5));k=C(C(C(l-k)*C(.5))*c);z[a+20>>2]=j+k;l=C(C(i+f)*C(.5));f=C(C(C(f-i)*C(.5))*c);z[a+16>>2]=l+f;i=C(C(h+g)*C(.5));c=C(C(C(g-h)*C(.5))*c);z[a+12>>2]=i+c;z[a+8>>2]=j-k;z[a+4>>2]=l-f;z[a>>2]=i-c;xa=e+32|0}function Mn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0,p=0,q=0,r=0,s=0,x=0,A=C(0);h=v[37389];f=xa-16|0;xa=f;a=v[37696];c=a+12|0;a=R_((p=c,q=100,r=Ba[v[v[a>>2]+20>>2]](a)|0?45527:63804,s=5452,x=580,o=v[v[c>>2]+8>>2],Ba[o](p|0,q|0,r|0,s|0,x|0)|0),h);c=xa-16|0;xa=c;if(t[a+6|0]&1){e=v[a+60>>2];if(e){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e)}v[a+60>>2]=0}e=0;a:{if(!rX(72,70,72,70,c+12|0,c+11|0,b)){break a}o=a,x=hX(w[c+11|0],b),v[o+40>>2]=x;o=a,x=hX(w[c+11|0],b),v[o+44>>2]=x;o=a,A=iX(w[c+11|0],b),z[o+48>>2]=A;o=a,A=iX(w[c+11|0],b),z[o+52>>2]=A;o=a,A=iX(w[c+11|0],b),z[o+56>>2]=A;iX(w[c+11|0],b);o=a- -64|0,A=iX(w[c+11|0],b),z[o>>2]=A;o=a,x=gX(w[c+11|0],b),u[o+68>>1]=x;o=a,x=hX(w[c+11|0],b),v[o+72>>2]=x;g=iX(w[c+11|0],b);i=iX(w[c+11|0],b);j=iX(w[c+11|0],b);k=iX(w[c+11|0],b);l=iX(w[c+11|0],b);m=iX(w[c+11|0],b);z[a+32>>2]=C(l-i)*C(.5);z[a+28>>2]=C(k-g)*C(.5);z[a+20>>2]=C(i+l)*C(.5);z[a+16>>2]=C(g+k)*C(.5);z[a+36>>2]=C(m-j)*C(.5);z[a+24>>2]=C(j+m)*C(.5);o=a,x=hX(w[c+11|0],b),v[o+76>>2]=x;o=a,x=hX(w[c+11|0],b),v[o+80>>2]=x;o=a,A=iX(w[c+11|0],b),z[o+84>>2]=A;g=iX(w[c+11|0],b);v[a+60>>2]=0;z[a+88>>2]=g;e=1;d=B(v[a+44>>2],v[a+40>>2]);if(!d){break a}b:{d=d<<2;if(d){n=v[37696];d=Ba[v[v[n+12>>2]+8>>2]](n+12|0,d,24422,12435,259)|0;v[a+60>>2]=d;if(d){break b}}e=0;b9(v[37696],16,12435,262,76028,0);break a}Ba[v[v[b>>2]>>2]](b,d,v[a+80>>2]<<2)|0;if(!w[c+11|0]|!v[a+80>>2]){break a}b=0;while(1){e=v[a+60>>2]+(b<<2)|0;d=w[e+1|0];t[e+1|0]=w[e|0];t[e|0]=d;e=1;b=b+1|0;if(b>>>0>2]){continue}break}}xa=c+16|0;c:{if(!e){b=v[a+12>>2]-1|0;v[a+12>>2]=b;if(b){a=0;break c}Ba[v[v[a+8>>2]+8>>2]](a+8|0);a=0;break c}v[f+8>>2]=a;b=rh(h+88|0,f+8|0,f+15|0);if(!w[f+15|0]){v[b>>2]=v[f+8>>2]}}xa=f+16|0;return a|0}function bt(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=C(0),m=0;i=xa-96|0;xa=i;m=x[f+16>>1];v[i+92>>2]=-1;j=-1;if(e){j=nu(sh(v[e+4>>2]),v[e>>2],i+92|0)}k=a+5584|0;ME(k);v[c+80>>2]=0;t[c+68|0]=0;l=z[b+8>>2];d=x[d>>1];v[i+48>>2]=h;z[i+44>>2]=l;v[i+40>>2]=g;u[i+32>>1]=d;v[i+28>>2]=c;v[i+24>>2]=b;v[i+20>>2]=a;v[i+16>>2]=126672;e=d&64;d=m&16;u[i+52>>1]=((e|d)!=0)<<6;t[i+54|0]=1;v[i+36>>2]=f;e=x[f+16>>1];v[i+88>>2]=0;t[i+84|0]=0;t[i+58|0]=0;t[i+57|0]=d>>>4;d=e>>>5&1;t[i+56|0]=d;t[i+55|0]=d;a:{b:{c:{if(!(v[c+76>>2]|(j|0)==-1)){d=IE(k,v[i+92>>2],j);t[i+58|0]=1;d=ct(i+16|0,i+12|0,d);t[i+58|0]=0;if(!d){break c}e=x[f+16>>1]}d=i+44|0;g=v[a+5656>>2];a=v[a+5620>>2];d:{if(!(e&1)){break d}h=v[k>>2];if(Ba[v[v[h>>2]+24>>2]](h,v[b>>2],v[b+4>>2],d,i+16|0)|0){break d}b=w[c+68|0];e=v[c+80>>2];f=(b|e)!=0;break b}e:{if(!(e&2)){break e}if(Ba[v[v[a>>2]+24>>2]](a,v[b>>2],v[b+4>>2],d,i+16|0)|0){break e}f=(w[c+68|0]|v[c+80>>2])!=0;break a}a=v[b+4>>2];b=v[b>>2];u[i+8>>1]=x[f+16>>1];a=Ba[v[v[g>>2]+24>>2]](g,b,a,d,i+16|0,i+8|0)|0;b=w[c+68|0];e=v[c+80>>2];f=(b|e)!=0;if(!a){break a}break b}b=w[c+68|0];e=v[c+80>>2];f=(b|e)!=0}if(b){if(!e){break a}l=z[c+44>>2];g=v[c+72>>2];a=0;while(1){b=g+(a<<6)|0;f:{if(l>2]){e=e-1|0;d=g+(e<<6)|0;h=v[d+4>>2];v[b>>2]=v[d>>2];v[b+4>>2]=h;v[b+8>>2]=v[d+8>>2];u[b+12>>1]=x[d+12>>1];z[b+16>>2]=z[d+16>>2];z[b+20>>2]=z[d+20>>2];z[b+24>>2]=z[d+24>>2];z[b+28>>2]=z[d+28>>2];z[b+32>>2]=z[d+32>>2];z[b+36>>2]=z[d+36>>2];z[b+40>>2]=z[d+40>>2];v[b+60>>2]=v[d+60>>2];h=v[d+56>>2];v[b+52>>2]=v[d+52>>2];v[b+56>>2]=h;h=v[d+48>>2];v[b+44>>2]=v[d+44>>2];v[b+48>>2]=h;break f}a=a+1|0}if((a|0)!=(e|0)){continue}break}v[c+80>>2]=e}if(!e){break a}if(!(Ba[v[v[c>>2]>>2]](c,v[c+72>>2],e)|0)){break a}v[c+80>>2]=0}Ba[v[v[c>>2]+4>>2]](c);xa=i+96|0;return f}function QR(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=C(0),n=C(0),o=C(0);j=xa-32|0;xa=j;u[b>>1]=f;l=b+i|0;u[l+2>>1]=h;t[l|0]=3;h=l+4|0;a:{if(!(c&8192)){b=h;break a}t[h|0]=1;b=h+52|0;if(!f){u[a+10>>1]=x[a+10>>1]|8;break a}k=v[d+44>>2];b:{if(w[k+9|0]){z[h+4>>2]=z[k+80>>2];z[h+8>>2]=z[k+84>>2];z[h+12>>2]=z[k+88>>2];n=z[k+100>>2];o=z[k+96>>2];m=z[k+104>>2];break b}v[h+4>>2]=0;v[h+8>>2]=0;v[h+12>>2]=0;m=C(0)}z[h+28>>2]=o;z[h+36>>2]=m;z[h+32>>2]=n;k=v[e+44>>2];if(w[k+9|0]){z[h+16>>2]=z[k+80>>2];z[h+20>>2]=z[k+84>>2];z[h+24>>2]=z[k+88>>2];z[h+40>>2]=z[k+96>>2];z[h+44>>2]=z[k+100>>2];z[h+48>>2]=z[k+104>>2];break a}v[h+48>>2]=0;v[h+40>>2]=0;v[h+44>>2]=0;v[h+24>>2]=0;v[h+16>>2]=0;v[h+20>>2]=0}if(c&4096){t[b|0]=0;c:{d:{e:{f:{h=v[d+44>>2];g:{if(w[h+9|0]){if(f){CO(j,d- -64|0);z[b+4>>2]=z[j>>2];z[b+8>>2]=z[j+4>>2];z[b+12>>2]=z[j+8>>2];z[b+28>>2]=z[j+16>>2];z[b+32>>2]=z[j+20>>2];z[b+36>>2]=z[j+24>>2];h=v[e+44>>2];if(!w[h+9|0]){break g}if(w[b|0]==1){break d}break e}z[b+4>>2]=z[h+80>>2];z[b+8>>2]=z[h+84>>2];z[b+12>>2]=z[h+88>>2];z[b+28>>2]=z[h+96>>2];z[b+32>>2]=z[h+100>>2];z[b+36>>2]=z[h+104>>2];h=v[e+44>>2];if(!w[h+9|0]){break g}break d}v[b+28>>2]=0;v[b+32>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+36>>2]=0;v[b+12>>2]=0;h=v[e+44>>2];if(w[h+9|0]){break f}}v[b+48>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;break c}if(!f){break d}}CO(j,e- -64|0);z[b+16>>2]=z[j>>2];z[b+20>>2]=z[j+4>>2];z[b+24>>2]=z[j+8>>2];z[b+40>>2]=z[j+16>>2];z[b+44>>2]=z[j+20>>2];z[b+48>>2]=z[j+24>>2];break c}z[b+16>>2]=z[h+80>>2];z[b+20>>2]=z[h+84>>2];z[b+24>>2]=z[h+88>>2];z[b+40>>2]=z[h+96>>2];z[b+44>>2]=z[h+100>>2];z[b+48>>2]=z[h+104>>2]}b=b+52|0}if(c&16384){t[b|0]=2;c=(f|0)!=0;RR(b,0,d,c,g);RR(b,1,e,c,g);b=b+60|0}u[a+8>>1]=(i-l|0)+b;xa=j+32|0}function oy(a,b,c,d,e,f,g,h,i,j,k,l){var m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0);n=xa-32|0;xa=n;E=x[b+8>>1];a:{if((E|0)==65535){o=z[c>>2];r=z[c+4>>2];m=z[c+8>>2];s=z[e>>2];t=z[v[b+4>>2]+12>>2];v[d+12>>2]=0;p=m;m=C(t*s);s=C(p*m);z[d+8>>2]=s;r=C(r*m);z[d+4>>2]=r;t=C(o*m);z[d>>2]=t;o=z[c+20>>2];u=z[c+24>>2];w=z[c+16>>2];m=z[f>>2];v[d+28>>2]=0;u=C(u*m);z[d+24>>2]=u;B=C(o*m);z[d+20>>2]=B;w=C(w*m);z[d+16>>2]=w;break a}b=v[b>>2];s=z[c+20>>2];r=z[c+24>>2];t=z[c>>2];u=z[c+4>>2];m=z[e>>2];B=z[c+8>>2];w=z[c+16>>2];o=z[f>>2];v[n+28>>2]=0;z[n+24>>2]=r*o;z[n+20>>2]=s*o;v[n+12>>2]=0;z[n+16>>2]=w*o;z[n+8>>2]=B*m;z[n+4>>2]=u*m;z[n>>2]=t*m;Ba[v[v[b>>2]+108>>2]](b,E,l,n,d);u=z[d+24>>2];B=z[d+20>>2];w=z[d+16>>2];s=z[d+8>>2];r=z[d+4>>2];t=z[d>>2]}F=z[c+24>>2];G=z[c+20>>2];H=z[c+16>>2];I=z[c+8>>2];J=z[c+4>>2];K=z[c>>2];c=x[g+8>>1];b:{if((c|0)==65535){y=z[h>>2];A=z[h+4>>2];m=z[h+8>>2];o=z[j>>2];q=z[v[g+4>>2]+12>>2];v[i+12>>2]=0;p=m;m=C(q*o);o=C(p*m);z[i+8>>2]=o;A=C(A*m);z[i+4>>2]=A;y=C(y*m);z[i>>2]=y;p=z[h+20>>2];q=z[h+24>>2];D=z[h+16>>2];m=z[k>>2];v[i+28>>2]=0;q=C(q*m);z[i+24>>2]=q;p=C(p*m);z[i+20>>2]=p;m=C(D*m);z[i+16>>2]=m;break b}b=v[g>>2];A=z[h+20>>2];y=z[h+24>>2];q=z[h>>2];p=z[h+4>>2];m=z[j>>2];D=z[h+8>>2];L=z[h+16>>2];o=z[k>>2];v[n+28>>2]=0;z[n+24>>2]=y*o;z[n+20>>2]=A*o;v[n+12>>2]=0;z[n+16>>2]=L*o;z[n+8>>2]=D*m;z[n+4>>2]=p*m;z[n>>2]=q*m;Ba[v[v[b>>2]+108>>2]](b,c,l,n,i);q=z[i+24>>2];p=z[i+20>>2];m=z[i+16>>2];o=z[i+8>>2];A=z[i+4>>2];y=z[i>>2]}z[a>>2]=C(C(C(C(K*t)+C(H*w))+C(C(z[h>>2]*y)+C(z[h+16>>2]*m)))+C(C(C(J*r)+C(G*B))+C(C(z[h+4>>2]*A)+C(z[h+20>>2]*p))))+C(C(C(I*s)+C(F*u))+C(C(z[h+8>>2]*o)+C(z[h+24>>2]*q)));xa=n+32|0}function lB(a,b,c,d,e,f,g,h,i,j,k){var l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0);m=xa-32|0;xa=m;D=x[b+12>>1];a:{if((D|0)==65535){n=z[c>>2];q=z[c+4>>2];l=z[c+8>>2];r=z[e>>2];s=z[v[b+8>>2]+32>>2];v[d+12>>2]=0;o=l;l=C(s*r);r=C(o*l);z[d+8>>2]=r;q=C(q*l);z[d+4>>2]=q;s=C(n*l);z[d>>2]=s;n=z[c+20>>2];t=z[c+24>>2];u=z[c+16>>2];l=z[f>>2];v[d+28>>2]=0;t=C(t*l);z[d+24>>2]=t;A=C(n*l);z[d+20>>2]=A;u=C(u*l);z[d+16>>2]=u;break a}b=v[b>>2];r=z[c+20>>2];q=z[c+24>>2];s=z[c>>2];t=z[c+4>>2];l=z[e>>2];A=z[c+8>>2];u=z[c+16>>2];n=z[f>>2];v[m+28>>2]=0;z[m+24>>2]=q*n;z[m+20>>2]=r*n;v[m+12>>2]=0;z[m+16>>2]=u*n;z[m+8>>2]=A*l;z[m+4>>2]=t*l;z[m>>2]=s*l;Ba[v[v[b>>2]+108>>2]](b,D,0,m,d);t=z[d+24>>2];A=z[d+20>>2];u=z[d+16>>2];r=z[d+8>>2];q=z[d+4>>2];s=z[d>>2]}E=z[c+24>>2];F=z[c+20>>2];G=z[c+16>>2];H=z[c+8>>2];I=z[c+4>>2];J=z[c>>2];c=x[g+12>>1];b:{if((c|0)==65535){w=z[h>>2];y=z[h+4>>2];l=z[h+8>>2];n=z[j>>2];p=z[v[g+8>>2]+32>>2];v[i+12>>2]=0;o=l;l=C(p*n);n=C(o*l);z[i+8>>2]=n;y=C(y*l);z[i+4>>2]=y;w=C(w*l);z[i>>2]=w;o=z[h+20>>2];p=z[h+24>>2];B=z[h+16>>2];l=z[k>>2];v[i+28>>2]=0;p=C(p*l);z[i+24>>2]=p;o=C(o*l);z[i+20>>2]=o;l=C(B*l);z[i+16>>2]=l;break b}b=v[g>>2];y=z[h+20>>2];w=z[h+24>>2];p=z[h>>2];o=z[h+4>>2];l=z[j>>2];B=z[h+8>>2];K=z[h+16>>2];n=z[k>>2];v[m+28>>2]=0;z[m+24>>2]=w*n;z[m+20>>2]=y*n;v[m+12>>2]=0;z[m+16>>2]=K*n;z[m+8>>2]=B*l;z[m+4>>2]=o*l;z[m>>2]=p*l;Ba[v[v[b>>2]+108>>2]](b,c,0,m,i);p=z[i+24>>2];o=z[i+20>>2];l=z[i+16>>2];n=z[i+8>>2];y=z[i+4>>2];w=z[i>>2]}z[a>>2]=C(C(C(C(J*s)+C(G*u))+C(C(z[h>>2]*w)+C(z[h+16>>2]*l)))+C(C(C(I*q)+C(F*A))+C(C(z[h+4>>2]*y)+C(z[h+20>>2]*o))))+C(C(C(H*r)+C(E*t))+C(C(z[h+8>>2]*n)+C(z[h+24>>2]*p)));xa=m+32|0}function PD(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0;o=xa-48|0;xa=o;f=v[a+4>>2];if(f){i=z[b+84>>2];j=z[b+76>>2];k=z[b+88>>2];l=z[b+72>>2];m=z[b+92>>2];n=z[b+80>>2];z[o+40>>2]=C(m-n)*C(.5);z[o+36>>2]=C(k-j)*C(.5);z[o+32>>2]=C(i-l)*C(.5);g=v[a+292>>2];h=v[a+296>>2];z[o+16>>2]=C(m+n)*C(.5);z[o+12>>2]=C(k+j)*C(.5);z[o+8>>2]=C(i+l)*C(.5);f=QD(h,g,f,o+8|0,c,d,o+32|0,e)}else{f=1}if(!(!f|!w[a+336|0]|(v[a+156>>2]+v[a+108>>2]|0)==(0-v[a+216>>2]|0))){g=xa+-64|0;xa=g;a:{if(v[a+156>>2]!=(0-v[a+108>>2]|0)){f=xa-48|0;xa=f;h=1;p=v[a+68>>2];if(!(!p|!v[p+588>>2])){i=z[b+72>>2];j=z[b+84>>2];k=z[b+76>>2];l=z[b+88>>2];m=z[b+92>>2];n=z[b+80>>2];z[f+40>>2]=C(m-n)*C(.5);z[f+36>>2]=C(l-k)*C(.5);z[f+32>>2]=C(j-i)*C(.5);h=v[a+160>>2];q=v[h+8>>2];h=v[h+12>>2];z[f+16>>2]=C(m+n)*C(.5);z[f+12>>2]=C(l+k)*C(.5);z[f+8>>2]=C(j+i)*C(.5);h=hD(h,q,p,f+8|0,c,d,f+32|0,e)}p=v[a+116>>2];if(!(!p|(!v[p+588>>2]|h^1))){i=z[b+72>>2];j=z[b+84>>2];k=z[b+76>>2];l=z[b+88>>2];m=z[b+92>>2];n=z[b+80>>2];z[f+40>>2]=C(m-n)*C(.5);z[f+36>>2]=C(l-k)*C(.5);z[f+32>>2]=C(j-i)*C(.5);h=v[a+160>>2];q=v[h+8>>2];h=v[h+12>>2];z[f+16>>2]=C(m+n)*C(.5);z[f+12>>2]=C(l+k)*C(.5);z[f+8>>2]=C(j+i)*C(.5);h=hD(h,q,p,f+8|0,c,d,f+32|0,e)}xa=f+48|0;if(!h){break a}}if(!v[a+216>>2]){r=1;break a}i=z[b+84>>2];j=z[b+76>>2];k=z[b+88>>2];l=z[b+72>>2];m=z[b+92>>2];n=z[b+80>>2];z[g+56>>2]=C(m-n)*C(.5);z[g+52>>2]=C(k-j)*C(.5);z[g+48>>2]=C(i-l)*C(.5);z[g+40>>2]=C(m+n)*C(.5);z[g+36>>2]=C(k+j)*C(.5);z[g+32>>2]=C(i+l)*C(.5);v[g+28>>2]=v[a+176>>2];v[g+24>>2]=e;v[g+16>>2]=c;v[g+8>>2]=129932;b=g+48|0;v[g+20>>2]=b;e=g+32|0;v[g+12>>2]=e;r=QD(v[a+252>>2],v[a+248>>2],v[a+220>>2],e,c,d,b,g+8|0)}xa=g- -64|0;f=r}xa=o+48|0;return f|0}function ix(a,b,c,d,e,f){var g=0,h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=0,S=0,T=0,U=0;i=xa-32|0;xa=i;v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;if(!b){A=z[d+448>>2];D=z[d+460>>2];E=z[d+472>>2];F=z[d+452>>2];G=z[d+464>>2];H=z[d+476>>2];I=z[d+456>>2];J=z[d+468>>2];K=z[d+480>>2];L=z[d+508>>2];M=z[d+496>>2];N=z[d+484>>2];p=z[d+416>>2];q=z[d+420>>2];O=z[d+512>>2];P=z[d+500>>2];Q=z[d+488>>2];r=z[d+424>>2];s=z[d+428>>2];t=z[d+432>>2];u=z[d+412>>2];w=z[d+436>>2];n=z[e+16>>2];o=C(-n);x=z[d+440>>2];j=z[e+20>>2];y=z[d+444>>2];h=z[e+24>>2];k=C(-z[e+4>>2]);l=z[e>>2];m=z[e+8>>2];z[a+24>>2]=C(C(C(w*o)-C(x*j))-C(y*h))+C(C(C(z[d+504>>2]*k)-C(l*z[d+492>>2]))-C(m*z[d+516>>2]));z[a+20>>2]=C(C(C(r*o)-C(s*j))-C(t*h))+C(C(C(P*k)-C(l*Q))-C(m*O));z[a+16>>2]=C(C(C(u*o)-C(p*j))-C(q*h))+C(C(C(M*k)-C(l*N))-C(m*L));j=C(-j);z[a+8>>2]=C(C(C(t*k)-C(l*q))-C(m*y))+C(C(C(J*j)-C(n*I))-C(h*K));z[a+4>>2]=C(C(C(s*k)-C(l*p))-C(m*x))+C(C(C(G*j)-C(n*F))-C(h*H));z[a>>2]=C(C(C(r*k)-C(l*u))-C(m*w))+C(C(C(D*j)-C(n*A))-C(h*E))}c=v[d+332>>2]+(c<<5)|0;g=v[c+8>>2];b=g-1|0;c=v[c+12>>2]-!g|0;if(b|c){while(1){R=v[d+340>>2];g=b;g=(S=Raa(g),T=Raa(c)+32|0,U=g,U?S:T);Zw(i,(R+B(g,160)|0)+120|0,v[d+236>>2]+B(g,112)|0,v[d+248>>2]+B(g,36)|0,v[d+272>>2]+B(g,76)|0,(g<<5)+e|0,(v[(v[d+344>>2]+B(g,80)|0)+72>>2]<<2)+f|0,a);z[a>>2]=z[i>>2];z[a+4>>2]=z[i+4>>2];h=z[i+8>>2];v[a+12>>2]=0;z[a+8>>2]=h;z[a+16>>2]=z[i+16>>2];z[a+20>>2]=z[i+20>>2];h=z[i+24>>2];v[a+28>>2]=0;z[a+24>>2]=h;g=b;b=g-1&g;c=c&c-!g;if(b|c){continue}break}}xa=i+32|0}function hZ(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);g=xa-80|0;xa=g;k=z[d+48>>2];z[g+64>>2]=k;h=z[d+52>>2];z[g+68>>2]=h;i=z[d+56>>2];z[g+72>>2]=i;z[g+56>>2]=-i;z[g+52>>2]=-h;z[g+48>>2]=-k;k=z[d+20>>2];h=z[d+16>>2];i=z[d+8>>2];m=z[d>>2];p=z[d+4>>2];q=z[d+12>>2];r=z[d+32>>2];l=z[e+8>>2];s=z[d+24>>2];n=z[e>>2];o=z[e+4>>2];t=z[d+28>>2];z[g+40>>2]=-C(C(r*l)+C(C(s*n)+C(o*t)));z[g+36>>2]=-C(C(k*l)+C(C(q*n)+C(o*h)));z[g+32>>2]=-C(C(i*l)+C(C(m*n)+C(p*o)));l=C(z[b+8>>2]-z[d+44>>2]);n=C(z[b>>2]-z[d+36>>2]);o=C(z[b+4>>2]-z[d+40>>2]);z[g+24>>2]=C(r*l)+C(C(s*n)+C(t*o));z[g+20>>2]=C(k*l)+C(C(q*n)+C(o*h));z[g+16>>2]=C(i*l)+C(C(m*n)+C(o*p));k=C(c+f);a:{if((r$(g+48|0,g- -64|0,g+16|0,g+32|0,g+12|0,g+8|0)|0)==-1){break a}f=z[g+12>>2];if(!(f>2];if(j>>>0>63){break a}p=z[b>>2];q=z[b+4>>2];l=z[b+8>>2];h=z[e>>2];i=z[e+4>>2];m=z[e+8>>2];v[a+4096>>2]=j+1;j=(j<<6)+a|0;z[j+8>>2]=m;z[j+4>>2]=i;z[j>>2]=h;v[j+52>>2]=-1;z[j+12>>2]=f-c;z[j+24>>2]=l-C(f*m);z[j+20>>2]=q-C(f*i);z[j+16>>2]=p-C(f*h)}m=z[d+8>>2];p=z[d>>2];q=z[d+4>>2];l=z[d+20>>2];n=z[d+12>>2];o=z[d+16>>2];f=C(z[b+20>>2]-z[d+44>>2]);h=C(z[b+12>>2]-z[d+36>>2]);i=C(z[b+16>>2]-z[d+40>>2]);z[g+24>>2]=C(z[d+32>>2]*f)+C(C(z[d+24>>2]*h)+C(i*z[d+28>>2]));z[g+20>>2]=C(l*f)+C(C(n*h)+C(i*o));z[g+16>>2]=C(m*f)+C(C(p*h)+C(i*q));b:{if((r$(g+48|0,g- -64|0,g+16|0,g+32|0,g+12|0,g+8|0)|0)==-1){break b}f=z[g+12>>2];if(!(f>2];if(d>>>0>63){break b}m=z[b+12>>2];p=z[b+16>>2];q=z[b+20>>2];k=z[e>>2];h=z[e+4>>2];i=z[e+8>>2];v[a+4096>>2]=d+1;a=(d<<6)+a|0;z[a+8>>2]=i;z[a+4>>2]=h;z[a>>2]=k;v[a+52>>2]=-1;z[a+12>>2]=f-c;z[a+24>>2]=q-C(f*i);z[a+20>>2]=p-C(f*h);z[a+16>>2]=m-C(f*k)}xa=g+80|0}function hK(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;e=xa-32|0;xa=e;v[e+28>>2]=c;if(b){v[b+16>>2]=a;Ba[v[v[b>>2]+32>>2]](b)}a:{b:{c:{d:{if(!v[a+48>>2]){break d}f=v[a+32>>2];i=5381;g=w[c|0];if(g){h=c;while(1){i=B(i,33)^g&255;g=w[h+1|0];h=h+1|0;if(g){continue}break}}g=v[v[a+24>>2]+((f-1&i)<<2)>>2];if((g|0)==-1){break d}i=v[a+20>>2];h=v[a+16>>2];while(1){if(!T9(v[h+(g<<3)>>2],c)){break c}g=v[i+(g<<2)>>2];if((g|0)!=-1){continue}break}}v[a+52>>2]=v[a+52>>2]+1;g=v[a+76>>2];c=0;e:{f:{f=a+12|0;k=v[f+20>>2];g:{if(!k){break g}i=5381;h=v[e+28>>2];j=w[h|0];if(j){c=h;while(1){i=B(i,33)^j&255;j=w[c+1|0];c=c+1|0;if(j){continue}break}}c=k-1&i;j=v[v[f+12>>2]+(c<<2)>>2];if((j|0)==-1){break g}l=v[f+8>>2];m=v[f+4>>2];while(1){i=(j<<3)+m|0;if(!T9(v[i>>2],h)){break f}j=v[l+(j<<2)>>2];if((j|0)!=-1){continue}break}}t[e+8|0]=0;if(v[f+36>>2]==v[f+16>>2]){c=k?k<<1:16;if(c>>>0>k>>>0){YJ(f,c);k=v[f+20>>2]}i=5381;j=v[e+28>>2];c=w[j|0];if(c){while(1){i=B(i,33)^c&255;c=w[j+1|0];j=j+1|0;if(c){continue}break}}c=k-1&i}h=v[f+28>>2];v[f+28>>2]=h+1;c=v[f+12>>2]+(c<<2)|0;v[v[f+8>>2]+(h<<2)>>2]=v[c>>2];v[c>>2]=h;v[f+36>>2]=v[f+36>>2]+1;v[f+32>>2]=v[f+32>>2]+1;c=v[f+4>>2]+(h<<3)|0;break e}t[e+8|0]=1;c=i}if(!w[e+8|0]){h=v[e+28>>2];v[c+4>>2]=0;v[c>>2]=h}v[c+4>>2]=g;if(b){v[b+20>>2]=g}v[e+20>>2]=-1;v[e+24>>2]=-1;v[e+12>>2]=1;v[e+16>>2]=d;v[e+8>>2]=b;b=v[a+76>>2];if(b>>>0<(v[a+80>>2]&2147483647)>>>0){break b}iK(a+72|0,e+8|0);break a}g=v[(h+(g<<3)|0)+4>>2];if(!b){break a}a=v[a+72>>2]+B(g,20)|0;v[a+8>>2]=d;v[a>>2]=b;v[b+20>>2]=g;break a}c=v[e+12>>2];b=v[a+72>>2]+B(b,20)|0;v[b>>2]=v[e+8>>2];v[b+4>>2]=c;v[b+16>>2]=v[e+24>>2];c=v[e+20>>2];v[b+8>>2]=v[e+16>>2];v[b+12>>2]=c;v[a+76>>2]=v[a+76>>2]+1}xa=e+32|0;return g|0}function C2(a,b,c,d,e,f){var g=0,h=C(0),i=0,j=0,k=C(0),l=0;a:{b:{switch(f-1|0){case 0:v[a>>2]=2139095039;k=C(34028234663852886e22);d=-1;while(1){f=v[e+48>>2];i=v[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=z[((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=z[((f<<6)+c|0)+44>>2];if(h>2]=h;k=h;d=f}g=f+1|0;h=z[((g<<6)+c|0)+44>>2];if(h>2]=h;k=h;d=g}g=f+2|0;h=z[((g<<6)+c|0)+44>>2];if(h>2]=h;k=h;d=g}g=f+3|0;h=z[((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=v[e+16>>2];if(e){continue}break};c=(d<<6)+c|0;a=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=a;v[b+48>>2]=v[c+48>>2];a=v[c+44>>2];v[b+40>>2]=v[c+40>>2];v[b+44>>2]=a;a=v[c+36>>2];v[b+32>>2]=v[c+32>>2];v[b+36>>2]=a;a=v[c+28>>2];v[b+24>>2]=v[c+24>>2];v[b+28>>2]=a;a=v[c+20>>2];v[b+16>>2]=v[c+16>>2];v[b+20>>2]=a;a=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=a;v[b+384>>2]=1;return;default:if(y[e+56>>2]<=6){break a}y2(a,b,c,d,e);v[b+384>>2]=6;return;case 2:break b}}if(y[e+56>>2]<=3){break a}z2(a,b,c,d,e);v[b+384>>2]=3;return}f=0;d=e;while(1){l=v[d+48>>2];if(l>>>0>2]){while(1){i=(l<<6)+c|0;g=v[i+4>>2];j=(f<<6)+b|0;v[j>>2]=v[i>>2];v[j+4>>2]=g;v[j+48>>2]=v[i+48>>2];g=v[i+44>>2];v[j+40>>2]=v[i+40>>2];v[j+44>>2]=g;g=v[i+36>>2];v[j+32>>2]=v[i+32>>2];v[j+36>>2]=g;g=v[i+28>>2];v[j+24>>2]=v[i+24>>2];v[j+28>>2]=g;g=v[i+20>>2];v[j+16>>2]=v[i+16>>2];v[j+20>>2]=g;g=v[i+12>>2];v[j+8>>2]=v[i+8>>2];v[j+12>>2]=g;f=f+1|0;l=l+1|0;if(l>>>0>2]){continue}break}}d=v[d+16>>2];if(d){continue}break}v[b+384>>2]=f;b=v[e+44>>2];v[a+8>>2]=v[e+40>>2];v[a+12>>2]=b;b=v[e+36>>2];v[a>>2]=v[e+32>>2];v[a+4>>2]=b}function rL(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=xa-32|0;xa=e;j=v[a+76>>2];h=j+(c<<3)|0;a:{if(!(t[h+4|0]&1)){c=v[h>>2];if(c>>>0>=y[a+120>>2]){t[a+169|0]=1}g=v[a+100>>2];i=v[a+116>>2];if(i>>>0<=c>>>0){b:{if((c|0)!=(i|0)){k=v[a+108>>2];d=g+B(i,24)|0;f=v[d+20>>2];v[e+24>>2]=v[d+16>>2];v[e+28>>2]=f;f=v[d+12>>2];v[e+16>>2]=v[d+8>>2];v[e+20>>2]=f;f=v[d+4>>2];v[e+8>>2]=v[d>>2];v[e+12>>2]=f;f=v[b+20>>2];v[d+16>>2]=v[b+16>>2];v[d+20>>2]=f;f=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=f;f=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=f;d=v[e+20>>2];b=g+B(c,24)|0;v[b+8>>2]=v[e+16>>2];v[b+12>>2]=d;d=v[e+28>>2];v[b+16>>2]=v[e+24>>2];v[b+20>>2]=d;d=v[e+12>>2];v[b>>2]=v[e+8>>2];v[b+4>>2]=d;d=(i<<1)+k|0;b=x[d>>1];f=d;d=(c<<1)+k|0;u[f>>1]=x[d>>1];u[d>>1]=b;v[(b<<3)+j>>2]=c;v[h>>2]=i;break b}d=v[b+4>>2];c=g+B(c,24)|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d}v[a+116>>2]=v[a+116>>2]+1;break a}a=g+B(c,24)|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;c=v[b+20>>2];v[a+16>>2]=v[b+16>>2];v[a+20>>2]=c;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c;break a}d=v[b+4>>2];c=v[a+96>>2]+B(v[h>>2],24)|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;t[a+168|0]=1;g=v[a+128>>2];d=v[h>>2];i=d>>>5|0;c:{if(g>>>0>i>>>0){h=d&31;b=v[a+124>>2];break c}c=0;b=0;h=d&31;d=(d+128>>>5|0)+((h|0)!=0)|0;if(d){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,d<<2,24422,13406,274)|0;g=v[a+128>>2]}if(g){I9(b,v[a+124>>2],g<<2);c=v[a+128>>2]}if((c|0)!=(d|0)){J9((c<<2)+b|0,0,d-c<<2)}c=v[a+124>>2];if(c){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}v[a+128>>2]=d;v[a+124>>2]=b}a=(i<<2)+b|0;v[a>>2]=v[a>>2]|1<>2];f=v[b>>2];l=v[f+12144>>2];c=v[b+8>>2];a:{if(!(c&2147483647)){g=v[f+11956>>2];break a}g=w[l+49|0];if(c&2147483646){i=v[f+12132>>2];k=1;m=64;while(1){h=k<<6;j=w[(B(k,52)+l|0)+49|0];if(h>>>0>>0){if(j&1){b=(h<<5)+i|0;d=v[b+4>>2];c=(g<<5)+i|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[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=v[b+4>>2];c=(g<<5)+i|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;d=v[b+36>>2];v[c+32>>2]=v[b+32>>2];v[c+36>>2]=d;d=v[b+60>>2];v[c+56>>2]=v[b+56>>2];v[c+60>>2]=d;d=v[b+44>>2];v[c+40>>2]=v[b+40>>2];v[c+44>>2]=d;d=v[b+52>>2];v[c+48>>2]=v[b+48>>2];v[c+52>>2]=d;g=g+2|0;h=h+2|0;if((j|0)!=(h|0)){continue}break}}b=v[a+32>>2]}m=m- -64|0;k=k+1|0;if(k>>>0<(v[b+8>>2]&2147483647)>>>0){continue}break}}g=v[f+11956>>2]+g|0;v[f+11956>>2]=g}c=v[a+92>>2];h=v[v[a+28>>2]+440>>2];v[f+11868>>2]=0;v[f+11872>>2]=0;i=f+11876|0;v[i>>2]=0;v[i+4>>2]=0;i=f+11884|0;v[i>>2]=0;v[i+4>>2]=0;b:{if(g){v[e+20>>2]=v[f+11952>>2];v[e+12>>2]=l;v[e+8>>2]=32;v[e>>2]=h+(c<<5);v[e+16>>2]=v[f+12148>>2];b=v[b+4>>2];v[e+24>>2]=g;v[e+4>>2]=b;v[e+28>>2]=v[f+11960>>2];b=v[f+11972>>2];v[e+44>>2]=0;v[e+32>>2]=b;v[e+52>>2]=f+11916;v[e+48>>2]=f+11892;v[e+36>>2]=0;v[e+40>>2]=0;t[e+56|0]=w[a+96|0];n=f,o=Qy(e),v[n+12104>>2]=o;v[f+11868>>2]=v[e+36>>2];v[f+11876>>2]=v[e+40>>2];v[f+11880>>2]=v[e+44>>2];break b}J9(v[f+11892>>2],0,v[f+11900>>2]<<2)}xa=e- -64|0}function dR(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;g=v[a+28>>2];a=0;j=xa-48|0;xa=j;b=v[g+1e3>>2];e=v[b+432>>2];if(e){d=v[b+428>>2];while(1){c=v[b+184>>2]+B(v[d+(a<<2)>>2]>>>7|0,24)|0;f=v[c+20>>2];if(!(!f|w[c+4|0]&2)){cH(f+-64|0,0)}a=a+1|0;if((e|0)!=(a|0)){continue}break}}e=v[b+444>>2];if(e){d=v[b+440>>2];a=0;while(1){c=v[b+184>>2]+B(v[d+(a<<2)>>2]>>>7|0,24)|0;f=v[v[c+20>>2]+16>>2];if(!(!f|w[c+4|0]&2)){yG(f,0)}a=a+1|0;if((e|0)!=(a|0)){continue}break}}a=0;e=v[g+1e3>>2];k=v[e+1064>>2];if(k){m=v[e+1060>>2];while(1){d=v[(a<<2)+m>>2];c=v[g+1e3>>2];f=v[c- -64>>2];b=(d>>>0)/(f>>>0)|0;b=v[v[v[c+44>>2]+(b<<2)>>2]+(d-B(b,f)<<2)>>2];a:{if(!b|!(w[b+21|0]&32)){break a}c=v[e+700>>2];f=(d>>>0)/(c>>>0)|0;if(w[(v[v[e+680>>2]+(f<<2)>>2]+(d-B(c,f)<<4)|0)+4|0]&4){break a}b:{c:{d:{e:{f:{g:{d=w[b+20|0];switch(d|0){case 2:break b;case 0:break d;case 5:break e;case 4:break f;case 1:break g;default:break a}}if(sS(b-4|0)){break c}break a}if(OH(b)){break c}break a}t[b+21|0]=w[b+21|0]&223;break c}if(!WR(b-4|0)){break a}}d=w[b+20|0];if(d>>>0>2){break a}}f=g+(d<<2)|0;c=v[f+88>>2];if(c>>>0>=2){l=g+B(d,12)|0;i=v[l+52>>2];c=c-1|0;h=i+(c<<2)|0;d=v[h>>2];n=h;h=i;b=v[b+8>>2];i=b<<2;h=v[h+i>>2];v[n>>2]=h;v[i+v[l+52>>2]>>2]=d;v[d+8>>2]=b;v[h+8>>2]=c;c=v[f+88>>2]}v[f+88>>2]=c-1}a=a+1|0;if((k|0)!=(a|0)){continue}break}}d=j+8|0;a=v[v[g+976>>2]+1024>>2];Ba[v[v[a>>2]+84>>2]](d,a);a=v[g+2168>>2];b=v[a+28>>2];if(b){a=v[a+16>>2];while(1){b=b-1|0;g=v[a>>2];h:{if((v[g+44>>2]&1032)!=1032){break h}e=v[v[g+32>>2]+4>>2];e=w[v[e+44>>2]+9|0]-1>>>0<2?e:0;c=v[v[g+28>>2]+4>>2];if((!e|y[e+152>>2]>4294967293)&y[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+152>>2]>=4294967294){break h}SR(g,8,0,0,0,d)}a=a+4|0;if(b){continue}break}}xa=j+48|0}function A8(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);c=z[b+8>>2];d=z[b>>2];h=z[b+4>>2];if(!(!(d!=C(0)|h!=C(0))&c==C(0))){f=z[a+44>>2];i=C(f+c);c=z[a+40>>2];m=C(h+c);e=C(-c);h=z[a+36>>2];k=C(-h);d=C(d+h);a:{if(!(d!=C(0)|m!=C(0)|i!=C(0))){i=C(C(0)-C(f*f));m=C(c*e);e=z[a+48>>2];z[a>>2]=C(C(i+m)*e)+z[a>>2];d=C(f*C(0));j=C(d+d);d=C(c*h);z[a+4>>2]=C(e*C(j+d))+z[a+4>>2];j=C(c*C(-0));g=j;j=C(f*h);z[a+8>>2]=C(e*C(g+C(g+j)))+z[a+8>>2];q=C(f*C(-0));z[a+12>>2]=C(e*C(C(q+q)+d))+z[a+12>>2];d=i;i=C(h*k);z[a+16>>2]=C(e*C(d+i))+z[a+16>>2];d=C(h*C(0));g=d;d=C(f*c);z[a+20>>2]=C(e*C(g+C(g+d)))+z[a+20>>2];k=C(c*C(0));z[a+24>>2]=C(e*C(k+C(k+j)))+z[a+24>>2];k=C(h*C(-0));z[a+28>>2]=C(e*C(k+C(d+k)))+z[a+28>>2];z[a+32>>2]=C(e*C(C(m+i)+C(0)))+z[a+32>>2];break a}j=C(C(0)-C(f*f));q=C(c*e);r=C(m*C(-m));n=C(C(0)-C(i*i));e=z[a+48>>2];z[a>>2]=C(C(C(j+q)-C(r+n))*e)+z[a>>2];o=C(f*C(0));p=C(o+o);o=C(c*h);s=C(m*d);g=C(i*C(0));z[a+4>>2]=C(e*C(C(p+o)-C(s+C(g+g))))+z[a+4>>2];g=C(c*C(-0));l=g;g=C(f*h);p=C(m*C(-0));t=p;p=C(d*i);z[a+8>>2]=C(e*C(C(l+C(l+g))-C(t+C(t+p))))+z[a+8>>2];l=C(f*C(-0));l=C(C(l+l)+o);o=C(i*C(-0));z[a+12>>2]=C(e*C(l-C(s+C(o+o))))+z[a+12>>2];k=C(h*k);l=C(j+k);j=C(d*C(-d));z[a+16>>2]=C(e*C(l-C(j+n)))+z[a+16>>2];n=C(h*C(0));f=C(f*c);l=C(n+C(n+f));n=C(d*C(0));i=C(m*i);z[a+20>>2]=C(e*C(l-C(n+C(n+i))))+z[a+20>>2];c=C(c*C(0));g=C(c+C(c+g));c=C(m*C(0));z[a+24>>2]=C(e*C(g-C(c+C(c+p))))+z[a+24>>2];c=C(h*C(-0));g=C(c+C(f+c));f=C(d*C(-0));z[a+28>>2]=C(e*C(g-C(f+C(f+i))))+z[a+28>>2];z[a+32>>2]=C(e*C(C(C(q+k)+C(0))-C(C(r+j)+C(0))))+z[a+32>>2];f=z[a+44>>2];c=z[a+40>>2]}z[a+36>>2]=h+z[b>>2];z[a+40>>2]=z[b+4>>2]+c;z[a+44>>2]=z[b+8>>2]+f}}function x4(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=xa-16|0;xa=h;d=v[v[b+32>>2]+36>>2];v[h+12>>2]=d;e=v[c+4>>2];a:{if(e>>>0>=(v[c+8>>2]&2147483647)>>>0){y4(c,h+12|0);break a}v[v[c>>2]+(e<<2)>>2]=d;v[c+4>>2]=e+1}f=v[h+12>>2];v[f+48>>2]=1;e=v[b+28>>2];g=v[b+32>>2];j=v[g+24>>2];d=v[b+24>>2];i=d;b:{while(1){g=v[g+28>>2];if((f|0)!=v[v[i+32>>2]+36>>2]){d=e;c:{d:{e:{f:{while(1){k=v[d+32>>2];if((f|0)!=v[k+36>>2]){f=v[j+28>>2];if((f|0)!=(g|0)){e=g;while(1){v[e+36>>2]=a;e=v[e+28>>2];if((f|0)!=(e|0)){continue}break}}e=v[a>>2];if((e|0)==(b|0)){v[a>>2]=d;e=d}f=v[v[j+32>>2]+36>>2];if((f|0)!=v[k+36>>2]){break d}if((e|0)==(j|0)){v[a>>2]=d}if(x[f+4>>1]!=3){break f}e=v[v[k+24>>2]+32>>2];v[f+48>>2]=1;b=f;break e}j=v[j+24>>2];d=v[d+28>>2];if((e|0)!=(d|0)){continue}break}a=0;break b}e=v[k+28>>2];b=v[e+24>>2];if((b|0)==v[f>>2]){v[f>>2]=e}b=v[b+24>>2];v[e+24>>2]=b;v[b+28>>2]=e;b=0}k=v[j+24>>2];v[d+24>>2]=k;v[k+28>>2]=d;v[d+32>>2]=e;v[e+32>>2]=d;z4(f);v[h+8>>2]=b;if(!b){break c}d=v[c+4>>2];if(d>>>0>=(v[c+8>>2]&2147483647)>>>0){y4(c,h+8|0);break c}v[v[c>>2]+(d<<2)>>2]=b;v[c+4>>2]=d+1;break c}v[j+28>>2]=d;v[d+24>>2]=j;v[h+8>>2]=0}d=v[v[i+32>>2]+36>>2];b=v[g+32>>2];g:{if((d|0)==v[b+36>>2]){if(v[a>>2]==(i|0)){v[a>>2]=g}h:{if(x[d+4>>1]==3){e=v[v[b+24>>2]+32>>2];v[d+48>>2]=1;b=d;break h}e=v[b+28>>2];b=v[e+24>>2];if((b|0)==v[d>>2]){v[d>>2]=e}b=v[b+24>>2];v[e+24>>2]=b;v[b+28>>2]=e;b=0}f=v[i+24>>2];v[g+24>>2]=f;v[f+28>>2]=g;v[g+32>>2]=e;v[e+32>>2]=g;z4(d);v[h+8>>2]=b;if(!b){break g}d=v[c+4>>2];if(d>>>0>=(v[c+8>>2]&2147483647)>>>0){y4(c,h+8|0);break g}v[v[c>>2]+(d<<2)>>2]=b;v[c+4>>2]=d+1;break g}v[i+28>>2]=g;v[g+24>>2]=i;v[h+8>>2]=0}z4(a);a=1;break b}i=v[i+24>>2];if((d|0)!=(i|0)){continue}break}a=0}xa=h+16|0;return a}function q8(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=0,w=0,x=C(0);e=xa-96|0;xa=e;E5(e- -64|0,e+32|0,a,b,c);g=z[e+68>>2];o=z[e+36>>2];i=z[e+76>>2];q=z[e+44>>2];r=z[e+32>>2];m=z[e+64>>2];x=C(C(g*o)+C(C(i*q)+C(r*m)));k=z[e+72>>2];s=z[e+40>>2];t=C(k*s);f=C(z[e+48>>2]-z[e+80>>2]);j=C(f+f);f=C(z[e+52>>2]-z[e+84>>2]);l=C(f+f);f=C(z[e+56>>2]-z[e+88>>2]);p=C(f+f);u=C(C(C(C(-m)*j)-C(l*g))-C(k*p));h=C(C(i*i)+C(-.5));f=C(C(C(p*h)+C(i*C(C(g*j)-C(m*l))))-C(k*u));n=C(C(C(j*h)+C(i*C(C(k*l)-C(g*p))))-C(m*u));j=C(C(C(l*h)+C(i*C(C(m*p)-C(k*j))))-C(g*u));l=C(C(f*f)+C(C(n*n)+C(j*j)));h=z[a+120>>2];w=l>C(h*h);if(w){l=C(C(1)/C(K(l)));f=C(h*C(f*l));n=C(h*C(n*l));j=C(h*C(j*l))}h=C(t+x);l=C(C(r*g)+C(C(C(i*s)-C(q*k))-C(m*o)));p=C(C(s*m)+C(C(C(i*o)-C(q*g))-C(k*r)));z[e+24>>2]=f;z[e+20>>2]=j;z[e+16>>2]=n;j=C(0);g=C(C(o*k)+C(C(C(i*r)-C(q*m))-C(g*s)));a:{if(g==C(0)){m=C(1);i=C(0);break a}f=C(C(1)/C(K(C(C(h*h)+C(C(C(g*g)+C(0))+C(0))))));m=C(h*f);j=C(g*f);i=C(f*C(0))}n=C(i*l);k=C(p*i);f=C(n+C(k+C(C(h*m)+C(g*j))));k=C(n+C(C(C(g*m)-C(h*j))-k));q=C(-i);n=C(h*q);g=C(i*g);h=C(C(j*p)+C(C(n+C(l*m))-g));n=C(g+C(C(n+C(p*m))-C(l*j)));g=C(z[a+124>>2]*C(.5));o=R9(g);g=H9(g);b:{c:{d:{if(o>C(.9998999834060669)){break d}v=f>=C(0);r=v?h:C(-h);s=v?k:C(-k);l=v?n:C(-n);p=C(C(r*r)+C(C(s*s)+C(l*l)));if(!(p>C(o*o))){break d}f=C(C(1)/C(K(p)));h=C(C(o*r)*f);n=C(C(o*l)*f);k=C(C(o*s)*f);f=g;break c}if(!w){break b}}g=C(n*i);z[e+12>>2]=C(C(C(f*m)-C(j*k))-g)-C(h*i);t=C(k*i);i=C(f*i);z[e+8>>2]=C(C(-j)*n)+C(t+C(i+C(m*h)));z[e+4>>2]=C(q*k)+C(C(h*j)+C(i+C(m*n)));z[e>>2]=C(q*h)+C(g+C(C(f*j)+C(m*k)));K5(b,c,e- -64|0,e+32|0,e,a,d)}xa=e+96|0}function D2(a,b,c,d,e){var f=C(0),g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),u=0,x=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=0,J=0,L=0,M=C(0);t[a+63|0]=0;H=w[a+62|0];if(H){while(1){g=B(w[(a+I|0)+56|0],400)+a|0;u=v[g+448>>2];t[a+63|0]=u+w[a+63|0];J=g- -64|0;i=z[g+104>>2];j=z[g+100>>2];k=z[g+96>>2];a:{if(u>>>0<2){break a}g=1;h=u-1|0;L=h&1;if((u|0)!=2){h=h&-2;o=0;while(1){x=(g<<6)+J|0;k=C(C(k+z[x+32>>2])+z[x+96>>2]);i=C(C(i+z[x+40>>2])+z[x+104>>2]);j=C(C(j+z[x+36>>2])+z[x+100>>2]);g=g+2|0;o=o+2|0;if((h|0)!=(o|0)){continue}break}}if(!L){break a}g=(g<<6)+J|0;k=C(k+z[g+32>>2]);i=C(i+z[g+40>>2]);j=C(j+z[g+36>>2])}if(!(!u|m>>>0>=64)){p=z[d+8>>2];q=z[d>>2];r=z[d+4>>2];s=C(C(p*i)+C(C(q*k)+C(j*r)));n=z[d+12>>2];l=C(C(n*n)+C(-.5));f=C(C(p*s)+C(C(n*C(C(q*j)-C(k*r)))+C(i*l)));y=C(f+f);f=C(C(q*s)+C(C(n*C(C(r*i)-C(j*p)))+C(k*l)));A=C(f+f);f=C(C(r*s)+C(C(n*C(C(p*k)-C(i*q)))+C(j*l)));f=C(f+f);l=C(C(1)/C(K(C(C(y*y)+C(C(A*A)+C(f*f))))));p=C(y*l);q=C(f*l);r=C(A*l);o=0;g=m;while(1){b:{m=(o<<6)+J|0;E=z[m+4>>2];F=z[m>>2];G=z[m+8>>2];l=z[m+44>>2];y=z[c+16>>2];A=z[c+20>>2];f=z[c+24>>2];i=z[c+8>>2];j=z[c>>2];k=z[c+4>>2];D=z[c+12>>2];n=z[e>>2];h=(g<<6)+b|0;v[h+28>>2]=0;z[h+8>>2]=p;z[h+4>>2]=q;z[h>>2]=r;z[h+12>>2]=l-n;M=f;s=C(C(D*D)+C(-.5));l=C(C(i*G)+C(C(j*F)+C(k*E)));f=C(C(C(D*C(C(j*E)-C(F*k)))+C(G*s))+C(i*l));z[h+24>>2]=C(M+C(f+f))-C(p*n);f=C(C(k*l)+C(C(s*E)+C(D*C(C(i*F)-C(G*j)))));z[h+20>>2]=C(A+C(f+f))-C(q*n);f=C(C(j*l)+C(C(s*F)+C(D*C(C(k*G)-C(E*i)))));z[h+16>>2]=C(y+C(f+f))-C(r*n);v[h+52>>2]=v[m+48>>2];m=g+1|0;o=o+1|0;if(u>>>0<=o>>>0){break b}h=g>>>0<63;g=m;if(h){continue}}break}H=w[a+62|0]}I=I+1|0;if(H>>>0>I>>>0){continue}break}}v[b+4096>>2]=m;return(m|0)!=0}function Yy(a){var b=0,c=0;b=v[a+12152>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+12144>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12068>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+12060>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12056>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+12048>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12044>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+12036>>2];if(!b){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12032>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+12024>>2];if(!b){break e}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12020>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+12012>>2];if(!b){break f}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12008>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+12e3>>2];if(!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11996>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[a+11988>>2];if(!b){break h}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11984>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=v[a+11976>>2];if(!b){break i}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11924>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=v[a+11916>>2];if(!b){break j}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11912>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=v[a+11904>>2];if(!b){break k}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11900>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=v[a+11892>>2];if(!b){break l}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+11844>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=v[a+11836>>2];if(!b){break m}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a}function D1(a,b,c,d){var e=0,f=0,g=0,h=C(0),i=0,j=0,k=0,l=C(0),m=0,n=0,o=C(0);a:{b:{e=v[a+2328>>2];if(!e){break b}m=e-1|0;i=(m<<6)+a|0;if(!(z[a+2224>>2]>2]*z[b+8>>2])+C(C(z[i>>2]*z[b>>2])+C(z[i+4>>2]*z[b+4>>2]))))){break b}b=v[i+52>>2];j=v[i+48>>2];if(b>>>0<=j>>>0){f=v[a+2324>>2];break a}f=v[a+2324>>2];if(f>>>0<=d>>>0){break a}while(1){g=d;if(f>>>0>g>>>0){while(1){k=v[a+2320>>2];n=g<<6;b=k+n|0;e=(j<<6)+k|0;h=C(z[b+24>>2]-z[e+24>>2]);l=C(h*h);h=C(z[b+16>>2]-z[e+16>>2]);o=C(h*h);h=C(z[b+20>>2]-z[e+20>>2]);if(z[a+2240>>2]>C(l+C(o+C(h*h)))){if(z[e+44>>2]>z[b+44>>2]){f=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=f;v[e+48>>2]=v[b+48>>2];f=v[b+44>>2];v[e+40>>2]=v[b+40>>2];v[e+44>>2]=f;f=v[b+36>>2];v[e+32>>2]=v[b+32>>2];v[e+36>>2]=f;f=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=f;f=v[b+20>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;k=v[a+2320>>2];f=v[a+2324>>2]}b=((f<<6)+k|0)+-64|0;f=v[b+4>>2];e=k+n|0;v[e>>2]=v[b>>2];v[e+4>>2]=f;v[e+48>>2]=v[b+48>>2];f=v[b+44>>2];v[e+40>>2]=v[b+40>>2];v[e+44>>2]=f;f=v[b+36>>2];v[e+32>>2]=v[b+32>>2];v[e+36>>2]=f;f=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=f;f=v[b+20>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;f=v[a+2324>>2]-1|0;v[a+2324>>2]=f;g=g-1|0}g=g+1|0;if(g>>>0>>0){continue}break}b=v[i+52>>2]}j=j+1|0;if(j>>>0>>0){continue}break}break a}g=(e<<6)+a|0;v[g+48>>2]=d;v[g+52>>2]=v[a+2324>>2];d=v[c+4>>2];v[g+32>>2]=v[c>>2];v[g+36>>2]=d;d=v[c+12>>2];v[g+40>>2]=v[c+8>>2];v[g+44>>2]=d;v[a+2328>>2]=e+1;a=v[b+12>>2];v[g+8>>2]=v[b+8>>2];v[g+12>>2]=a;a=v[b+4>>2];v[g>>2]=v[b>>2];v[g+4>>2]=a;return}v[i+52>>2]=f;a=(m<<6)+a|0;h=z[a+32>>2];l=z[c>>2];z[a+32>>2]=h>l?l:h}function Cn(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=v[37389];a=0;g=xa-16|0;xa=g;a:{if(!v[37392]){b9(v[37696],8,5382,279,70455,0);break a}h=v[37389];a=v[h+3040>>2];if(!a){i=xa-16|0;xa=i;d=h+2752|0;b=v[d+284>>2];if(b){a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?41391:63804;f=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,f,18373,180)|0}else{f=0}v[i+12>>2]=f;a=v[d+268>>2];b:{if(a>>>0>=(v[d+272>>2]&2147483647)>>>0){a=0;b=d+4|0;c=v[b+268>>2];j=c&2147483647?c<<1:1;c:{if(!j){break c}c=j<<2;if(!(w[b+256|0]|c>>>0>256)){t[b+256|0]=1;a=b;break c}if(!c){break c}a=v[37696];e=Ba[v[v[a>>2]+20>>2]](a)|0?41391:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,e,16608,553)|0}e=v[b+264>>2];l=(e<<2)+a|0;if((e|0)>0){k=v[b+260>>2];c=a;while(1){v[c>>2]=v[k>>2];k=k+4|0;c=c+4|0;if(l>>>0>c>>>0){continue}break}}v[l>>2]=v[i+12>>2];d:{if(v[b+268>>2]<0){break d}c=v[b+260>>2];if((c|0)==(b|0)){t[b+256|0]=0;break d}if(!c){break d}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[b+264>>2]}v[b+268>>2]=j;v[b+260>>2]=a;v[b+264>>2]=e+1;break b}v[v[d+264>>2]+(a<<2)>>2]=f;v[d+268>>2]=a+1}a=(B(v[d+276>>2],132)+f|0)-132|0;if(f>>>0<=a>>>0){b=v[d+288>>2];while(1){v[a>>2]=b;b=a;a=a-132|0;if(f>>>0<=a>>>0){continue}break}v[d+288>>2]=b}xa=i+16|0;a=v[h+3040>>2]}v[h+3040>>2]=v[a>>2];b=h+3032|0;v[b>>2]=v[b>>2]+1;v[a+4>>2]=196620;v[a+8>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a>>2]=118576;YE(a+24|0,1);v[a+100>>2]=0;u[a+72>>1]=1;v[a+112>>2]=0;v[a+116>>2]=0;v[a+104>>2]=4;v[a+108>>2]=0;v[a+96>>2]=a+76;t[a+92|0]=1;v[a+128>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a>>2]=118268;z[a+68>>2]=z[a+56>>2];v[a+16>>2]=v[a+16>>2]&-251658241|117440512;v[g+8>>2]=a;b=Nm(m+520|0,g+8|0,g+15|0);if(!w[g+15|0]){v[b>>2]=v[g+8>>2]}}xa=g+16|0;return a|0}function kE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0);a:{if(!v[a+684>>2]){break a}d=(b<<15^-1)+b|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=v[v[a+660>>2]+((v[a+668>>2]-1&(d>>>16^d))<<2)>>2];if((d|0)==-1){break a}G=v[a+656>>2];i=v[a+652>>2];while(1){if(v[i+(d<<3)>>2]!=(b|0)){d=v[G+(d<<2)>>2];if((d|0)!=-1){continue}break a}break}i=v[(i+(d<<3)|0)+4>>2];b=v[a+644>>2]+B(i,44)|0;d=v[v[b>>2]+588>>2];z[b+12>>2]=z[c>>2];z[b+16>>2]=z[c+4>>2];z[b+20>>2]=z[c+8>>2];z[b+24>>2]=z[c+12>>2];z[b+28>>2]=z[c+16>>2];z[b+32>>2]=z[c+20>>2];z[b+36>>2]=z[c+24>>2];r=z[c+20>>2];H=z[c+16>>2];f=z[c+8>>2];h=z[d+8>>2];m=z[d+24>>2];e=C(C(h+m)*C(.5));s=C(e+e);l=z[c>>2];n=z[d>>2];o=z[d+16>>2];e=C(C(n+o)*C(.5));t=C(e+e);j=z[d+4>>2];p=z[d+20>>2];e=C(C(j+p)*C(.5));u=C(e+e);e=z[c+4>>2];w=C(C(f*s)+C(C(l*t)+C(u*e)));d=v[a+640>>2];b=d+B(i,24)|0;k=z[c+12>>2];x=C(C(k*k)+C(-.5));y=C(z[c+24>>2]+C(C(f*w)+C(C(s*x)+C(k*C(C(l*u)-C(t*e))))));m=C(C(m-h)*C(.5));h=C(l+l);q=C(C(1)-C(l*h));g=C(e+e);A=C(e*g);n=C(C(o-n)*C(.5));E=C(h*f);F=C(k*g);o=C(C(p-j)*C(.5));j=C(k*h);g=C(g*f);p=C(C(D(C(m*C(q-A))))+C(C(D(C(n*C(E-F))))+C(D(C(o*C(j+g))))));z[b+20>>2]=y+p;r=C(r+C(C(e*w)+C(C(u*x)+C(k*C(C(f*t)-C(s*l))))));I=C(D(C(m*C(g-j))));h=C(h*e);g=C(f+f);j=C(k*g);g=C(f*g);q=C(I+C(C(D(C(n*C(h+j))))+C(D(C(o*C(q-g))))));z[b+16>>2]=r+q;f=C(H+C(C(l*w)+C(C(t*x)+C(k*C(C(e*s)-C(u*f))))));e=C(C(D(C(m*C(E+F))))+C(C(D(C(n*C(C(C(1)-A)-g))))+C(D(C(o*C(h-j))))));z[b+12>>2]=f+e;z[b+8>>2]=y-p;z[b+4>>2]=r-q;z[b>>2]=f-e;v[a+704>>2]=0;iE(a,i,RC(a+4|0,v[v[a+620>>2]+(i<<2)>>2],i,d,a+700|0))}}function U4(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=C(0),w=C(0);d=v[a+32>>2];i=v[d+92>>2];if(i){f=v[d+88>>2];while(1){e=v[f+(c<<2)>>2];if(!v[e+48>>2]){e=x[e+4>>1];m=e>>>0>x[v[f+(m<<2)>>2]+4>>1]?c:m;j=e+j|0;g=g+1|0}c=c+1|0;if((i|0)!=(c|0)){continue}break}}d=v[d+24>>2];c=d<<2;f=j<<2;d=B(d,12)+12|0;e=(c+(f+B(g,22)|0)|0)+d|0;if(e){c=v[37696]+12|0;l=Ba[v[v[c>>2]+8>>2]](c,e,24422,13134,2410)|0;c=v[v[a+32>>2]+24>>2]<<2}v[a+40>>2]=l;h=f+l|0;p=h+d|0;d=p+B(g,20)|0;v[a+44>>2]=d;n=J9(d+(g<<1)|0,255,c);d=0;if(i){r=v[v[a+32>>2]+88>>2];f=0;while(1){c=v[(f<<2)+r>>2];a:{if(v[c+48>>2]){break a}e=v[c>>2];k=(v[e+12>>2]<<2)+n|0;if(v[k>>2]==-1){c=h+B(d,12)|0;z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];v[k>>2]=d;d=d+1|0}c=v[e+28>>2];if((e|0)==(c|0)){break a}while(1){q=(v[c+12>>2]<<2)+n|0;if(v[q>>2]==-1){k=h+B(d,12)|0;z[k>>2]=z[c>>2];z[k+4>>2]=z[c+4>>2];z[k+8>>2]=z[c+8>>2];v[q>>2]=d;d=d+1|0}c=v[c+28>>2];if((e|0)!=(c|0)){continue}break}}f=f+1|0;if((i|0)!=(f|0)){continue}break}}v[b+4>>2]=h;v[b+8>>2]=d;v[b>>2]=12;v[b+24>>2]=4;v[b+12>>2]=20;v[b+32>>2]=j;v[b+28>>2]=l;v[b+20>>2]=g;v[b+16>>2]=p;if(i){g=0;f=0;while(1){j=g?(g|0)==(m|0)?0:g:m;b=v[v[v[a+32>>2]+88>>2]+(j<<2)>>2];if(!v[b+48>>2]){e=v[b>>2];v[e+40>>2]=-1;h=f&65535;v[(h<<2)+l>>2]=v[(v[e+12>>2]<<2)+n>>2];d=1;c=v[e+28>>2];if((e|0)!=(c|0)){while(1){v[(d+h<<2)+l>>2]=v[(v[c+12>>2]<<2)+n>>2];v[c+40>>2]=-1;d=d+1|0;c=v[c+28>>2];if((e|0)!=(c|0)){continue}break}}s=z[b+20>>2];e=v[b+16>>2];h=v[b+12>>2];w=z[b+40>>2];d=x[b+4>>1];c=B(o,20)+p|0;u[c+18>>1]=f;u[c+16>>1]=d;z[c+12>>2]=-w;z[c+8>>2]=s;v[c>>2]=h;v[c+4>>2]=e;u[v[a+44>>2]+(o<<1)>>1]=j;t[b+60|0]=o;o=o+1|0;f=d+f|0}g=g+1|0;if((i|0)!=(g|0)){continue}break}}}function QA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0,g=0,h=0,i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0,I=0,J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=0,R=C(0),S=C(0),T=C(0),U=0,V=0,W=0;if(b){c=0;while(1){d=(c<<5)+a|0;g=v[d+4>>2];m=z[g+24>>2];n=z[g+20>>2];h=v[d>>2];o=z[h+24>>2];p=z[h+20>>2];q=z[g+16>>2];r=z[h+16>>2];s=z[g+8>>2];t=z[g+4>>2];u=z[g>>2];y=z[h+8>>2];A=z[h+4>>2];B=z[h>>2];f=x[d+22>>1];if(f){d=v[d+24>>2];Q=d+(f<<4)|0;while(1){H=d+32|0;f=w[d+1|0];I=H+((f<<2)+12&2032)|0;l=w[d+2|0];k=(l>>>0)/(f>>>0)|0;a:{if(!l){break a}if(f>>>0<=l>>>0){R=z[d+20>>2];S=z[d+16>>2];F=z[d+12>>2];G=z[d+8>>2];T=z[d+4>>2];U=k>>>0>1?k:1;k=0;f=0;while(1){V=f+U|0;W=(k<<2)+H|0;while(1){e=C(T*z[W>>2]);d=(f<<6)+I|0;i=z[d+28>>2];j=z[d+8>>2];D=z[d>>2];E=z[d+4>>2];J=z[d+24>>2];K=z[d+16>>2];L=z[d+20>>2];M=z[d+40>>2];N=z[d+32>>2];O=z[d+36>>2];P=z[d+12>>2];i=C(C(i*C(C(C(C(j*y)+C(C(D*B)+C(A*E)))+C(C(J*o)+C(C(K*r)+C(p*L))))-C(C(C(j*s)+C(C(D*u)+C(t*E)))+C(C(M*m)+C(C(N*q)+C(n*O))))))+C(P-C(i*z[d+48>>2])));i=e>2]=e;e=C(e-P);s=C(s-C(C(F*j)*e));t=C(t-C(C(F*E)*e));u=C(u-C(C(F*D)*e));y=C(y+C(C(G*j)*e));A=C(A+C(C(G*E)*e));B=C(B+C(C(G*D)*e));j=C(R*e);m=C(m-C(M*j));n=C(n-C(O*j));q=C(q-C(N*j));e=C(S*e);o=C(o+C(J*e));p=C(p+C(L*e));r=C(r+C(K*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)+I|0;if(Q>>>0>d>>>0){continue}break}}z[h+8>>2]=y;z[h+4>>2]=A;z[h>>2]=B;z[g+8>>2]=s;z[g+4>>2]=t;z[g>>2]=u;z[h+24>>2]=o;z[h+20>>2]=p;z[h+16>>2]=r;z[g+24>>2]=m;z[g+20>>2]=n;z[g+16>>2]=q;c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function W$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=C(0),h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=C(0),s=0,y=0,A=0,D=0;e=xa-80|0;xa=e;v[e+40>>2]=0;v[e+44>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;u[e+28>>1]=0;v[e+24>>2]=-1;v[e+16>>2]=0;v[e+20>>2]=0;v[e+64>>2]=0;v[e+56>>2]=2139095039;v[e+60>>2]=0;a:{if(!b){break a}k=e+60|0;l=a+108|0;s=a- -64|0;y=1;while(1){f=v[(n<<2)+c>>2];A=f>>>5|0;D=f>>>1&15;o=0;while(1){i=o+A|0;f=B(i,3);j=v[a+16>>2];b:{if(v[a+12>>2]){f=j+(f<<1)|0;j=x[f+4>>1];p=x[f+2>>1];f=x[f>>1];break b}f=j+(f<<2)|0;j=v[f+8>>2];p=v[f+4>>2];f=v[f>>2]}h=v[a+20>>2];u[e+28>>1]=1;v[e+24>>2]=i;v[e+12>>2]=j;i=h+B(j,12)|0;v[e+8>>2]=p;q=h+B(p,12)|0;v[e+4>>2]=f;h=h+B(f,12)|0;c:{if(w[a+177|0]){g=z[e+56>>2];if(!(g>2])){break c}m=v[e+20>>2];v[s>>2]=v[e+16>>2];v[s+4>>2]=m;v[s+8>>2]=v[e+24>>2];u[a+76>>1]=1;z[a+80>>2]=z[e+32>>2];z[a+84>>2]=z[e+36>>2];z[a+88>>2]=z[e+40>>2];z[a+92>>2]=z[e+44>>2];z[a+96>>2]=z[e+48>>2];r=z[e+52>>2];z[a+104>>2]=g;z[a+100>>2]=r;v[l+16>>2]=v[k+16>>2];m=v[k+12>>2];v[l+8>>2]=v[k+8>>2];v[l+12>>2]=m;m=v[k+4>>2];v[l>>2]=v[k>>2];v[l+4>>2]=m;r=z[d>>2];z[d>>2]=g>2]=z[h>>2];z[a+132>>2]=z[h+4>>2];z[a+136>>2]=z[h+8>>2];z[a+140>>2]=z[q>>2];z[a+144>>2]=z[q+4>>2];z[a+148>>2]=z[q+8>>2];z[a+152>>2]=z[i>>2];z[a+156>>2]=z[i+4>>2];g=z[i+8>>2];t[a+176|0]=1;v[a+172>>2]=j;v[a+168>>2]=p;v[a+164>>2]=f;z[a+160>>2]=g;break c}z[e>>2]=z[d>>2];f=v[a+8>>2];if(!(Ba[v[v[f>>2]>>2]](f,e+16|0,h,q,i,e,e+4|0)|0)){break a}g=z[e>>2];if(!(g>2])){break c}z[d>>2]=g;z[a+60>>2]=g}if(!v[v[a+8>>2]+4>>2]){break a}f=(o|0)==(D|0);o=o+1|0;if(!f){continue}break}n=n+1|0;y=n>>>0>>0;if((b|0)!=(n|0)){continue}break}}xa=e+80|0;return(y^-1)&1}function sO(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0);n=z[d+8>>2];o=z[b+8>>2];p=z[c+8>>2];q=z[a+8>>2];a:{h=z[a>>2];j=z[c>>2];k=z[b>>2];i=z[d>>2];r=z[a+4>>2];s=z[c+4>>2];t=z[b+4>>2];u=z[d+4>>2];if(!(!(C(D(C(h-j)))<=C(k+i))|!(C(D(C(r-s)))<=C(t+u)))&C(D(C(q-p)))<=C(o+n)){break a}g=C(j-i);i=C(j+i);l=C(h-k);k=C(h+k);w=z[e+4>>2];x=z[f+4>>2];b:{c:{m=C(z[f>>2]-z[e>>2]);d:{if(mk){h=C(C(k-g)/m);j=h>C(0)?h:C(0)}h=C(1);if(!(i>l)){break d}h=C(C(l-i)/m);h=hC(9.999999974752427e-7))){break c}v=C(34028234663852886e22);if(g>k){break a}j=C(0);if(iC(0)?h:C(0)}h=C(1);if(!(gh)){break b}break a}v=C(34028234663852886e22);if(ik){break a}j=C(0);h=C(1)}g=C(s-u);i=C(s+u);l=C(r-t);k=C(r+t);m=C(x-w);e:{if(!(mC(9.999999974752427e-7))){if(ik)){break e}break a}if(g>k){break a}if(ik){g=C(C(k-g)/m);j=g>j?g:j}if(!(i>l)){break e}g=C(C(l-i)/m);h=gh){break a}g=C(p-n);i=C(p+n);l=C(q-o);k=C(q+o);m=C(z[f+8>>2]-z[e+8>>2]);f:{if(!(mC(9.999999974752427e-7))){if(ik)){break f}break a}if(g>k){break a}if(ik){g=C(C(k-g)/m);j=g>j?g:j}if(!(i>l)){break f}g=C(C(l-i)/m);h=gh){break a}return j}return v}function rH(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0);p=w[a+150|0];a:{if(!(p&6)){break a}i=v[a+44>>2];if(!v[i+176>>2]|w[v[i+176>>2]+31|0]==1){break a}i=v[i+176>>2];if(!i){break a}if(c){q=c;c=v[e>>2];r=c<<2;v[q+r>>2]=a- -64;q=v[a+144>>2];v[e>>2]=c+1;v[d+r>>2]=q>>>7}d=p&2;b:{if(!(p&4)){break b}k=z[i+56>>2];l=z[i+52>>2];m=z[i+40>>2];n=z[i+36>>2];o=z[i+48>>2];s=z[i+32>>2];if(g){j=C(C(1)/b);z[f+24>>2]=j*k;z[f+20>>2]=j*l;z[f+16>>2]=j*o;z[f+8>>2]=j*m;z[f+4>>2]=j*n;z[f>>2]=j*s;break b}c=v[a+44>>2];z[c+80>>2]=s+z[c+80>>2];z[c+84>>2]=n+z[c+84>>2];z[c+88>>2]=m+z[c+88>>2];z[c+96>>2]=o+z[c+96>>2];z[c+100>>2]=l+z[c+100>>2];z[c+104>>2]=k+z[c+104>>2]}if(!d){break a}j=z[i+24>>2];k=z[i+20>>2];l=z[i+16>>2];m=z[i+8>>2];n=z[i+4>>2];o=z[i>>2];if(f){z[f+16>>2]=l;z[f+8>>2]=m;z[f+4>>2]=n;z[f>>2]=o;z[f+24>>2]=j;z[f+20>>2]=k;break a}c:{if(!h){break c}c=v[v[a+40>>2]+1e3>>2];if(!v[v[c+268>>2]+(v[v[c+372>>2]+(v[a+144>>2]>>>5&134217724)>>2]<<2)>>2]){break c}b=C(z[a+140>>2]*b)}c=v[a+44>>2];z[c+80>>2]=C(o*b)+z[c+80>>2];z[c+84>>2]=C(n*b)+z[c+84>>2];z[c+88>>2]=C(m*b)+z[c+88>>2];z[c+96>>2]=C(l*b)+z[c+96>>2];z[c+100>>2]=C(k*b)+z[c+100>>2];z[c+104>>2]=C(j*b)+z[c+104>>2]}c=v[a+44>>2];d=v[c+176>>2];if(t[v[a+100>>2]+28|0]>=0){e=w[a+150|0];d:{if(!d|w[v[c+176>>2]+31|0]==1){break d}c=v[c+176>>2];if(!c){break d}v[c+48>>2]=0;v[c+52>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;v[c+56>>2]=0;v[c+40>>2]=0;v[c+24>>2]=0}t[a+150|0]=e>>>1&1;return}e:{if(!d|w[v[c+176>>2]+31|0]==1){break e}c=v[c+176>>2];if(!c){break e}v[c+48>>2]=0;v[c+52>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+56>>2]=0;v[c+40>>2]=0}t[a+150|0]=w[a+150|0]&-5}function s3(a,b,c){var d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);g=v[a+32>>2];a:{if((g|0)==-1){break a}e=z[a+28>>2];h=z[a+16>>2];f=z[a+12>>2];i=z[a+24>>2];d=C(f-i);j=z[a+8>>2];k=z[a+20>>2];l=C(D(C(j-k)));if(l>z[b>>2]){z[b>>2]=l}d=C(D(d));if(d>z[b+4>>2]){z[b+4>>2]=d}d=C(D(C(h-e)));if(d>z[b+8>>2]){z[b+8>>2]=d}d=C(D(C(j+k)));if(d>z[c>>2]){z[c>>2]=d}f=C(D(C(f+i)));if(f>z[c+4>>2]){z[c+4>>2]=f}e=C(D(C(h+e)));if(e>z[c+8>>2]){z[c+8>>2]=e}if(g&1){break a}s3(g,b,c)}g=v[a+68>>2];b:{if((g|0)==-1){break b}e=z[a- -64>>2];h=z[a+52>>2];f=z[a+48>>2];i=z[a+60>>2];d=C(f-i);j=z[a+44>>2];k=z[a+56>>2];l=C(D(C(j-k)));if(l>z[b>>2]){z[b>>2]=l}d=C(D(d));if(d>z[b+4>>2]){z[b+4>>2]=d}d=C(D(C(h-e)));if(d>z[b+8>>2]){z[b+8>>2]=d}d=C(D(C(j+k)));if(d>z[c>>2]){z[c>>2]=d}f=C(D(C(f+i)));if(f>z[c+4>>2]){z[c+4>>2]=f}e=C(D(C(h+e)));if(e>z[c+8>>2]){z[c+8>>2]=e}if(g&1){break b}s3(g,b,c)}g=v[a+104>>2];c:{if((g|0)==-1){break c}e=z[a+100>>2];h=z[a+88>>2];f=z[a+84>>2];i=z[a+96>>2];d=C(f-i);j=z[a+80>>2];k=z[a+92>>2];l=C(D(C(j-k)));if(l>z[b>>2]){z[b>>2]=l}d=C(D(d));if(d>z[b+4>>2]){z[b+4>>2]=d}d=C(D(C(h-e)));if(d>z[b+8>>2]){z[b+8>>2]=d}d=C(D(C(j+k)));if(d>z[c>>2]){z[c>>2]=d}f=C(D(C(f+i)));if(f>z[c+4>>2]){z[c+4>>2]=f}e=C(D(C(h+e)));if(e>z[c+8>>2]){z[c+8>>2]=e}if(g&1){break c}s3(g,b,c)}g=v[a+140>>2];d:{if((g|0)==-1){break d}e=z[a+136>>2];h=z[a+124>>2];f=z[a+120>>2];i=z[a+132>>2];d=C(f-i);j=z[a+116>>2];k=z[a+128>>2];l=C(D(C(j-k)));if(l>z[b>>2]){z[b>>2]=l}d=C(D(d));if(d>z[b+4>>2]){z[b+4>>2]=d}d=C(D(C(h-e)));if(d>z[b+8>>2]){z[b+8>>2]=d}d=C(D(C(j+k)));if(d>z[c>>2]){z[c>>2]=d}f=C(D(C(f+i)));if(f>z[c+4>>2]){z[c+4>>2]=f}e=C(D(C(h+e)));if(e>z[c+8>>2]){z[c+8>>2]=e}if(g&1){break d}s3(g,b,c)}}function Im(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=0,o=0;l=v[a+16>>2];f=v[a+28>>2];if((Uaa(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=C(z[a+24>>2]*C(b>>>0));a:{if(m=C(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=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,h,24422,17301,372)|0}h=J9(c,255,d);k=e+h|0;e=d+h|0;b:{if((f|0)==-1){if(!v[a+36>>2]){break b}i=b-1|0;d=0;while(1){c=d<<2;j=v[c+v[a+4>>2]>>2];f=(j<<15^-1)+j|0;f=B(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;f=((i&(f>>>16^f))<<2)+h|0;v[c+e>>2]=v[f>>2];v[f>>2]=d;v[c+k>>2]=j;d=d+1|0;if(d>>>0>2]){continue}break}break b}n=I9(e,v[a+8>>2],v[a+16>>2]<<2);d=v[a+20>>2];if(!d){break b}o=b-1|0;while(1){c=v[v[a+12>>2]+(j<<2)>>2];if((c|0)!=-1){while(1){d=c<<2;f=v[d+v[a+4>>2]>>2];i=(f<<15^-1)+f|0;i=B(i>>>10^i,9);i=i>>>6^i;i=(i<<11^-1)+i|0;i=((o&(i>>>16^i))<<2)+h|0;v[d+n>>2]=v[i>>2];v[i>>2]=c;v[d+k>>2]=f;c=v[d+v[a+8>>2]>>2];if((c|0)!=-1){continue}break}d=v[a+20>>2]}j=j+1|0;if(j>>>0>>0){continue}break}}d=v[a>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+20>>2]=b;v[a+12>>2]=h;v[a>>2]=h;v[a+8>>2]=e;v[a+16>>2]=g;v[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;v[(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;v[(d<<2)+e>>2]=c;g=(c<<2)+e|0;c=d+2|0;v[g>>2]=c;g=(c<<2)+e|0;c=d+3|0;v[g>>2]=c;g=(c<<2)+e|0;c=d+4|0;v[g>>2]=c;g=(c<<2)+e|0;c=d+5|0;v[g>>2]=c;g=(c<<2)+e|0;c=d+6|0;v[g>>2]=c;g=(c<<2)+e|0;c=d+7|0;v[g>>2]=c;d=d+8|0;v[(c<<2)+e>>2]=d;if((b|0)!=(d|0)){continue}break}}v[(b<<2)+e>>2]=v[a+28>>2];v[a+28>>2]=l}function z3(a,b,c,d,e){var f=0,g=0,h=0,i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0;g=xa-128|0;xa=g;h=31;k=c;l=J9(g,0,128);c=b+1028|0;C3(k,0,31,l,c);while(1){a:{b:{if(f>>>0>=h>>>0){break b}while(1){if(!v[(f<<2)+l>>2]){break b}f=f+1|0;if((h|0)!=(f|0)){continue}break}break a}c:{if(f>>>0>=h>>>0){break c}while(1){if(v[(h<<2)+l>>2]){break c}h=h-1|0;if(h>>>0>f>>>0){continue}break}break a}if((f|0)!=(h|0)){g=(h<<2)+l|0;p=v[g>>2];k=g;g=(f<<2)+l|0;v[k>>2]=v[g>>2];v[g>>2]=p}if(f>>>0>>0){continue}}break}v[e>>2]=v[e>>2]+v[c>>2];c=v[c>>2];if(c){h=0;while(1){f=v[(h<<2)+l>>2];d:{if(!f){break d}if(!v[f+24>>2]){p=v[a>>2];i=z[f+16>>2];j=z[f+20>>2];k=v[f+28>>2];q=v[f+32>>2];m=z[f+4>>2];n=z[f+8>>2];g=(h<<5)+b|0;z[g+4>>2]=C(z[f>>2]+z[f+12>>2])*C(.5);z[g+12>>2]=C(n+j)*C(.5);z[g+8>>2]=C(m+i)*C(.5);i=z[f+16>>2];j=z[f>>2];m=z[f+12>>2];n=z[f+4>>2];o=C(C(z[f+20>>2]-z[f+8>>2])*C(.5));z[g+28>>2]=o;i=C(C(i-n)*C(.5));z[g+24>>2]=i;j=C(C(m-j)*C(.5));z[g+20>>2]=j;if(d!=C(0)){z[g+20>>2]=j+d;z[g+24>>2]=i+d;z[g+28>>2]=o+d}v[g+32>>2]=q<<1&126|k-p<<5|1;break d}i=z[f+16>>2];j=z[f+20>>2];m=z[f+4>>2];n=z[f+8>>2];c=(h<<5)+b|0;z[c+4>>2]=C(z[f>>2]+z[f+12>>2])*C(.5);z[c+12>>2]=C(n+j)*C(.5);z[c+8>>2]=C(m+i)*C(.5);i=z[f+16>>2];j=z[f>>2];m=z[f+12>>2];n=z[f+4>>2];o=C(C(z[f+20>>2]-z[f+8>>2])*C(.5));z[c+28>>2]=o;i=C(C(i-n)*C(.5));z[c+24>>2]=i;j=C(C(m-j)*C(.5));z[c+20>>2]=j;if(d!=C(0)){z[c+20>>2]=j+d;z[c+24>>2]=i+d;z[c+28>>2]=o+d}k=c;c=v[37696];g=c+12|0;c=y3((s=g,t=1032,u=Ba[v[v[c>>2]+20>>2]](c)|0?45015:63804,w=12354,x=147,r=v[v[g>>2]+8>>2],Ba[r](s|0,t|0,u|0,w|0,x|0)|0));v[k+32>>2]=c;z3(a,c,f,d,e);c=v[b+1028>>2]}h=h+1|0;if(h>>>0>>0){continue}break}}xa=l+128|0}function Bf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=v[a>>2];g=(v[a+4>>2]-d|0)/12|0;if(g>>>0>>0){d=c;h=a;a:{e=b-g|0;f=v[a+8>>2];c=v[a+4>>2];if(e>>>0<=(f-c|0)/12>>>0){b:{if(!e){break b}a=B(e,12);g=a;e=a-12|0;f=((e>>>0)/12|0)+1&3;c:{if(!f){a=c;break c}b=0;a=c;while(1){z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];a=a+12|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}c=c+g|0;if(e>>>0<36){break b}while(1){z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];z[a+12>>2]=z[d>>2];z[a+16>>2]=z[d+4>>2];z[a+20>>2]=z[d+8>>2];z[a+24>>2]=z[d>>2];z[a+28>>2]=z[d+4>>2];z[a+32>>2]=z[d+8>>2];z[a+36>>2]=z[d>>2];z[a+40>>2]=z[d+4>>2];z[a+44>>2]=z[d+8>>2];a=a+48|0;if((c|0)!=(a|0)){continue}break}}v[h+4>>2]=c;break a}d:{g=v[h>>2];b=(c-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>>0?i:a:357913941;if(f){if(f>>>0>=357913942){break d}j=maa(B(f,12))}b=B(b,12)+j|0;a=b;e=B(e,12);i=e-12|0;k=((i>>>0)/12|0)+1&3;if(k){a=b;while(1){z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+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){z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];z[a+12>>2]=z[d>>2];z[a+16>>2]=z[d+4>>2];z[a+20>>2]=z[d+8>>2];z[a+24>>2]=z[d>>2];z[a+28>>2]=z[d+4>>2];z[a+32>>2]=z[d+8>>2];z[a+36>>2]=z[d>>2];z[a+40>>2]=z[d+4>>2];z[a+44>>2]=z[d+8>>2];a=a+48|0;if((e|0)!=(a|0)){continue}break}}if((c|0)!=(g|0)){while(1){b=b-12|0;c=c-12|0;z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];if((c|0)!=(g|0)){continue}break}}v[h+8>>2]=B(f,12)+j;v[h+4>>2]=e;v[h>>2]=b;if(g){jaa(g)}break a}da();L()}Vf();L()}return}if(b>>>0>>0){v[a+4>>2]=d+B(b,12)}}function IW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0);a=xa-16|0;xa=a;o=z[d+24>>2];p=z[d+20>>2];q=z[d+16>>2];g=z[d+4>>2];k=z[d+12>>2];i=z[d>>2];f=z[d+8>>2];BV(a,b);xa=a+16|0;r=z[a+12>>2];j=C(i+i);l=C(f*j);h=C(g+g);s=C(k*h);E=C(l-s);x=z[c+4>>2];t=C(-x);F=C(E*t);m=C(h*f);u=C(j*k);I=C(m+u);y=z[c+8>>2];v=C(-y);J=C(I*v);K=C(F+J);G=C(C(1)-C(i*j));w=C(g*h);L=C(G-w);h=z[c+12>>2];n=C(-h);A=C(L*n);i=z[a+8>>2];B=C(C(1)-w);D=f;f=C(f+f);w=C(D*f);M=C(B-w);N=C(M*t);j=C(j*g);H=C(f*k);O=C(j-H);P=C(O*v);B=C(N+P);l=C(l+s);k=C(l*n);f=z[a>>2];g=z[a+4>>2];s=C(j+H);H=C(s*t);G=C(G-w);w=C(G*v);D=C(H+w);m=C(m-u);j=C(m*n);a:{b:{if(C(r+C(C(C(o+C(K+A))*i)+C(C(C(q+C(B+k))*f)+C(g*C(p+C(D+j))))))<=C(0)){break b}t=C(L*h);v=C(l*h);h=C(m*h);if(C(r+C(C(C(o+C(K+t))*i)+C(C(C(q+C(B+v))*f)+C(g*C(p+C(D+h))))))<=C(0)){break b}n=C(I*y);l=C(F+n);F=C(O*y);m=C(N+F);y=C(G*y);u=C(H+y);if(C(r+C(C(C(o+C(l+A))*i)+C(C(C(q+C(m+k))*f)+C(g*C(p+C(u+j))))))<=C(0)|C(r+C(C(C(o+C(l+t))*i)+C(C(C(q+C(m+v))*f)+C(g*C(p+C(u+h))))))<=C(0)){break b}l=C(E*x);E=C(l+J);m=C(M*x);u=C(m+P);x=C(s*x);s=C(x+w);if(C(r+C(C(C(o+C(E+A))*i)+C(C(C(q+C(u+k))*f)+C(g*C(p+C(s+j))))))<=C(0)|C(r+C(C(C(o+C(E+t))*i)+C(C(C(q+C(u+v))*f)+C(g*C(p+C(s+h))))))<=C(0)){break b}n=C(l+n);B=C(C(o+C(n+A))*i);A=C(m+F);D=C(C(q+C(A+k))*f);k=C(x+y);if(C(r+C(B+C(D+C(g*C(p+C(k+j))))))<=C(0)){break b}a=0;if(!(C(r+C(C(C(o+C(n+t))*i)+C(C(C(q+C(A+v))*f)+C(g*C(p+C(k+h))))))<=C(0))){break a}}a=1}return a|0}function QF(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;i=v[a+180>>2];h=i+(g>>>5&134217724)|0;j=i+(f>>>5&134217724)|0;g=v[c>>2]>>>7|0;a:{if((g|0)==33554431){f=v[a+16>>2];break a}m=(v[j>>2]+v[h>>2]|0)+1|0;f=v[a+16>>2];n=v[a+204>>2];while(1){k=g<<2;l=i+k|0;v[l>>2]=v[l>>2]+m;v[n+k>>2]=d;g=v[(B(g,24)+f|0)+8>>2]>>>7|0;if((g|0)!=33554431){continue}break}}v[h>>2]=v[j>>2]+1;g=v[c>>2];v[(B(v[b+4>>2]>>>7|0,24)+f|0)+8>>2]=g;v[(B(g>>>7|0,24)+f|0)+12>>2]=v[b+4>>2];v[b+4>>2]=v[c+4>>2];v[b+8>>2]=v[b+8>>2]+v[c+8>>2];v[b+12>>2]=v[b+12>>2]+v[c+12>>2];f=d<<2;d=v[a+100>>2];f=f+d|0;g=d+(e<<2)|0;v[f>>2]=v[f>>2]+v[g>>2];i=v[c+20>>2];d=v[a+40>>2];f=v[b+28>>2];b:{if((f|0)!=-1){h=v[a+60>>2];j=(f>>>0)/(h>>>0)|0;f=(v[d+(j<<2)>>2]+(f-B(h,j)<<4)|0)+8|0;break b}f=b+20|0}v[f>>2]=i;f=v[c+20>>2];if((f|0)!=-1){i=v[a+60>>2];h=(f>>>0)/(i>>>0)|0;v[(v[d+(h<<2)>>2]+(f-B(i,h)<<4)|0)+12>>2]=v[b+28>>2];v[b+28>>2]=v[c+28>>2]}v[b+36>>2]=v[b+36>>2]+v[c+36>>2];v[c+36>>2]=0;v[c+28>>2]=-1;v[c+20>>2]=-1;i=v[c+24>>2];f=v[b+32>>2];c:{if((f|0)!=-1){h=v[a+60>>2];j=(f>>>0)/(h>>>0)|0;f=(v[d+(j<<2)>>2]+(f-B(h,j)<<4)|0)+8|0;break c}f=b+24|0}v[f>>2]=i;f=v[c+24>>2];if((f|0)!=-1){i=v[a+60>>2];h=(f>>>0)/(i>>>0)|0;v[(v[d+(h<<2)>>2]+(f-B(i,h)<<4)|0)+12>>2]=v[b+32>>2];v[b+32>>2]=v[c+32>>2]}v[b+40>>2]=v[b+40>>2]+v[c+40>>2];v[c+40>>2]=0;v[c+32>>2]=-1;v[c+24>>2]=-1;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=-128;v[c+4>>2]=-128;v[g>>2]=0;if(v[c+16>>2]!=-1){c=v[a+88>>2];b=c+B(e,44)|0;d=v[a+240>>2];f=v[(d+(v[a+244>>2]<<2)|0)-4>>2];v[(c+B(f,44)|0)+16>>2]=v[b+16>>2];v[d+(v[b+16>>2]<<2)>>2]=f;v[a+244>>2]=v[a+244>>2]-1;v[b+16>>2]=-1;a=v[a+216>>2]+(e>>>3&536870908)|0;b=v[a>>2];o=a,p=Vaa(-2,e)&b,v[o>>2]=p}}function JE(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=xa-16|0;xa=j;t[a+140|0]=1;g=c>>>1|0;v[j+12>>2]=g;d=c&1;e=B(d,36)+a|0;v[e+32>>2]=v[e+32>>2]+1;a:{b:{c:{if((b|0)==-1){b=v[e+4>>2]+(c>>>4&268435452)|0;c=v[b>>2];h=1<>2]=c&(h^-1);b=B(d,36)+a|0;c=v[b+20>>2];if(!c){a=0;break c}d=v[b+16>>2];a=0;while(1){if((g|0)==v[d+(a<<2)>>2]){break c}a=a+1|0;if((c|0)!=(a|0)){continue}break}break b}d:{if(!v[a+112>>2]){break d}c=(b<<15^-1)+b|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;e=B(c>>>16^c^1016421269,1000007);c=g+(g<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;e=v[a+88>>2]+((v[a+96>>2]-1&(e^(c>>>16^c)))<<2)|0;c=v[e>>2];if((c|0)==-1){break d}d=v[a+84>>2];h=v[a+80>>2];f=h+(c<<3)|0;if(!(v[f>>2]==(b|0)&(g|0)==v[f+4>>2])){while(1){e=d+(c<<2)|0;c=v[e>>2];if((c|0)==-1){break d}f=h+(c<<3)|0;if(v[f>>2]!=(b|0)|(g|0)!=v[f+4>>2]){continue}break}}c=e;h=v[a+84>>2];e=v[e>>2];f=h+(e<<2)|0;v[c>>2]=v[f>>2];c=v[a+112>>2]-1|0;v[a+112>>2]=c;v[a+108>>2]=v[a+108>>2]+1;if((c|0)!=(e|0)){i=v[a+80>>2];d=i+(e<<3)|0;i=i+(c<<3)|0;v[d>>2]=v[i>>2];v[d+4>>2]=v[i+4>>2];v[f>>2]=v[h+(c<<2)>>2];c=v[d>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;f=B(c>>>16^c^1016421269,1000007);c=v[d+4>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[a+88>>2]+((v[a+96>>2]-1&(f^(c>>>16^c)))<<2)|0;c=v[d>>2];f=v[a+112>>2];if((c|0)!=(f|0)){while(1){d=h+(c<<2)|0;c=v[d>>2];if((f|0)!=(c|0)){continue}break}}v[d>>2]=e}v[a+104>>2]=v[a+104>>2]-1}a=v[a+72>>2];Ba[v[v[a>>2]+16>>2]](a,b,g);break a}if((a|0)==(c|0)){break b}g=v[b+16>>2];d=b;b=c-1|0;v[d+20>>2]=b;v[g+(a<<2)>>2]=v[g+(b<<2)>>2]}a=v[e>>2];Ba[v[v[a>>2]+4>>2]](a,j+12|0,1)}xa=j+16|0}function oo(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),w=0,x=C(0);c=xa-96|0;xa=c;i=z[b+12>>2];f=z[b+8>>2];g=z[b>>2];h=z[b+4>>2];d=C(C(1)/C(K(C(C(i*i)+C(C(f*f)+C(C(g*g)+C(h*h)))))));z[c+76>>2]=i*d;z[c+72>>2]=f*d;z[c+68>>2]=h*d;z[c+64>>2]=g*d;z[c+80>>2]=z[b+16>>2];z[c+84>>2]=z[b+20>>2];z[c+88>>2]=z[b+24>>2];b=v[a+316>>2]&1024?v[a+56>>2]+144|0:a+112|0;j=z[b+16>>2];i=z[b+12>>2];m=z[b+8>>2];n=z[b+4>>2];o=z[b>>2];k=z[b+24>>2];l=z[b+20>>2];aj(a,c- -64|0);b=v[a+56>>2];w=v[a+316>>2];a:{if(!(t[(w&16384?b+268|0:a+108|0)|0]&1)){break a}b:{if(w&32768){f=z[b+192>>2];z[c+32>>2]=f;g=z[b+196>>2];z[c+36>>2]=g;h=z[b+200>>2];z[c+40>>2]=h;d=z[b+204>>2];z[c+44>>2]=d;q=z[b+208>>2];z[c+48>>2]=q;r=z[b+212>>2];z[c+52>>2]=r;e=z[b+216>>2];z[c+56>>2]=e;break b}if(y[a+52>>2]>3221225471){break a}if(!ZG(a- -64|0,c+32|0)){break a}e=z[c+56>>2];r=z[c+52>>2];q=z[c+48>>2];h=z[c+40>>2];g=z[c+36>>2];f=z[c+32>>2];d=z[c+44>>2]}x=e;e=C(k*C(-2));j=C(j*C(-2));k=C(l*C(-2));s=C(C(m*e)+C(C(o*j)+C(n*k)));u=C(C(i*i)+C(-.5));l=C(C(m*s)+C(C(e*u)-C(i*C(C(o*k)-C(j*n)))));l=C(l+l);p=C(C(o*s)+C(C(j*u)-C(i*C(C(n*e)-C(k*m)))));p=C(p+p);e=C(C(n*s)+C(C(k*u)-C(i*C(C(m*j)-C(e*o)))));e=C(e+e);j=C(C(h*l)+C(C(f*p)+C(e*g)));k=C(C(d*d)+C(-.5));z[c+24>>2]=x+C(C(h*j)+C(C(l*k)+C(d*C(C(f*e)-C(p*g)))));z[c+20>>2]=r+C(C(g*j)+C(C(e*k)+C(d*C(C(h*p)-C(l*f)))));z[c+12>>2]=C(h*m)+C(C(g*n)+C(C(d*i)+C(o*f)));z[c+8>>2]=C(o*g)+C(C(C(i*h)-C(d*m))-C(f*n));z[c+4>>2]=C(m*f)+C(C(C(i*g)-C(d*n))-C(h*o));z[c>>2]=C(n*h)+C(C(C(i*f)-C(d*o))-C(g*m));z[c+16>>2]=q+C(C(f*j)+C(C(p*k)+C(d*C(C(g*l)-C(e*h)))));mo(a,c)}xa=c+96|0}function Bn(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=v[37389];a=0;g=xa-16|0;xa=g;a:{if(!v[37390]){b9(v[37696],8,5382,263,70455,0);break a}h=v[37389];a=v[h+2744>>2];if(!a){i=xa-16|0;xa=i;d=h+2456|0;b=v[d+284>>2];if(b){a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?36971:63804;f=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,f,18373,180)|0}else{f=0}v[i+12>>2]=f;a=v[d+268>>2];b:{if(a>>>0>=(v[d+272>>2]&2147483647)>>>0){a=0;b=d+4|0;c=v[b+268>>2];j=c&2147483647?c<<1:1;c:{if(!j){break c}c=j<<2;if(!(w[b+256|0]|c>>>0>256)){t[b+256|0]=1;a=b;break c}if(!c){break c}a=v[37696];e=Ba[v[v[a>>2]+20>>2]](a)|0?36971:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,c,e,16608,553)|0}e=v[b+264>>2];l=(e<<2)+a|0;if((e|0)>0){k=v[b+260>>2];c=a;while(1){v[c>>2]=v[k>>2];k=k+4|0;c=c+4|0;if(l>>>0>c>>>0){continue}break}}v[l>>2]=v[i+12>>2];d:{if(v[b+268>>2]<0){break d}c=v[b+260>>2];if((c|0)==(b|0)){t[b+256|0]=0;break d}if(!c){break d}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,c);e=v[b+264>>2]}v[b+268>>2]=j;v[b+260>>2]=a;v[b+264>>2]=e+1;break b}v[v[d+264>>2]+(a<<2)>>2]=f;v[d+268>>2]=a+1}a=(B(v[d+276>>2],120)+f|0)-120|0;if(f>>>0<=a>>>0){b=v[d+288>>2];while(1){v[a>>2]=b;b=a;a=a-120|0;if(f>>>0<=a>>>0){continue}break}v[d+288>>2]=b}xa=i+16|0;a=v[h+2744>>2]}v[h+2744>>2]=v[a>>2];b=h+2736|0;v[b>>2]=v[b>>2]+1;v[a+4>>2]=196619;v[a+8>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a>>2]=120728;YE(a+24|0,0);v[a+100>>2]=0;u[a+72>>1]=1;v[a+112>>2]=0;v[a+116>>2]=0;v[a+104>>2]=4;v[a+108>>2]=0;v[a+96>>2]=a+76;t[a+92|0]=1;v[a>>2]=120476;z[a+68>>2]=z[a+56>>2];v[a+16>>2]=v[a+16>>2]&-251658241|117440512;v[g+8>>2]=a;b=Nm(m+520|0,g+8|0,g+15|0);if(!w[g+15|0]){v[b>>2]=v[g+8>>2]}}xa=g+16|0;return a|0}function $L(a){a=a|0;var b=0,c=0;v[a>>2]=132220;b=v[a+132>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+136>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+140>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+144>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+148>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+152>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+156>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+160>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+164>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+180>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+184>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+172>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+176>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+168>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+216>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+220>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+236>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+240>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+216>>2]=0;v[a+220>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;v[a+232>>2]=0;v[a+236>>2]=0;v[a+224>>2]=0;v[a+228>>2]=0;v[a+428>>2]=0;v[a+420>>2]=0;v[a+380>>2]=0;v[a+372>>2]=0;v[a+332>>2]=0;v[a+324>>2]=0;v[a+400>>2]=0;v[a+384>>2]=126144;v[a+268>>2]=0;v[a+256>>2]=0;v[a+204>>2]=0;v[a+352>>2]=0;v[a+336>>2]=126144;v[a+304>>2]=0;v[a+288>>2]=126144;v[a- -64>>2]=0;v[a+48>>2]=126144;v[a+24>>2]=0;v[a+8>>2]=126144;return a|0}function uT(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=C(0),i=0,j=0,k=0,m=0,o=C(0);g=xa-192|0;xa=g;v[g+144>>2]=3;z[g+148>>2]=z[b+40>>2];z[g+152>>2]=z[b+44>>2];z[g+156>>2]=z[b+48>>2];i=A[c+12>>3];z[g+128>>2]=A[d>>3]-i;j=A[c+20>>3];z[g+132>>2]=A[d+8>>3]-j;k=A[c+28>>3];z[g+136>>2]=A[d+16>>3]-k;z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];b=0;v[g+104>>2]=0;v[g+96>>2]=2;d=v[c+40>>2];l(0,v[c+36>>2]);l(1,d|0);m=g,o=C(+n()-i),z[m+176>>2]=o;d=v[c+48>>2];l(0,v[c+44>>2]);l(1,d|0);m=g,o=C(+n()-j),z[m+180>>2]=o;d=v[c+56>>2];l(0,v[c+52>>2]);l(1,d|0);m=g,o=C(+n()-k),z[m+184>>2]=o;d=v[c+64>>2];l(0,v[c+60>>2]);l(1,d|0);m=g,o=C(+n()-i),z[m+160>>2]=o;d=v[c+72>>2];l(0,v[c+68>>2]);l(1,d|0);m=g,o=C(+n()-j),z[m+164>>2]=o;d=v[c+80>>2];l(0,v[c+76>>2]);l(1,d|0);m=g,o=C(+n()-k),z[m+168>>2]=o;z[g+100>>2]=z[c+84>>2];LU(g+16|0,g+176|0,g+160|0,g+104|0);d=v[g+40>>2];v[g+84>>2]=v[g+36>>2];v[g+88>>2]=d;z[g+64>>2]=z[g+16>>2];d=v[g+24>>2];v[g+68>>2]=v[g+20>>2];v[g+72>>2]=d;d=v[g+32>>2];v[g+76>>2]=v[g+28>>2];v[g+80>>2]=d;if(z[g+104>>2]==C(0)){v[g+104>>2]=872415232}v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!jV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];b=1}xa=g+192|0;return b|0}function Yu(a,b){var c=0,d=0;c=xa-16|0;xa=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{d=v[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}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=rh(a+4816|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=rh(a+4932|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=rh(a+4932|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=rh(a+4892|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=rh(a+4972|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=rh(a+5012|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=rh(a+5052|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2];break a}if(d&268435456){break a}v[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}v[c+8>>2]=b;a=rh(a+5092|0,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2]}xa=c+16|0} +function ND(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=0;f=C(z[a+16>>2]-z[b>>2]);j=z[c>>2];d=C(j+z[a+128>>2]);a:{if(f>d){break a}g=C(z[a+20>>2]-z[b+4>>2]);k=z[c+4>>2];e=C(k+z[a+132>>2]);if(g>e){break a}h=C(z[a+24>>2]-z[b+8>>2]);i=z[c+8>>2];l=C(i+z[a+136>>2]);if(fl|(g>2];e=z[a+48>>2];l=z[a- -64>>2];n=C(C(C(f*d)+C(g*e))+C(h*l));m=z[a+112>>2];p=z[a+96>>2];q=z[a+80>>2];o=C(C(i*m)+C(C(k*p)+C(C(j*q)+z[a>>2])));if(n>o){break a}r=z[a+36>>2];s=z[a+52>>2];t=z[a+68>>2];F=C(C(C(f*r)+C(g*s))+C(h*t));u=z[a+116>>2];v=z[a+100>>2];w=z[a+84>>2];G=C(C(i*u)+C(C(k*v)+C(C(j*w)+z[a+4>>2])));if(F>G){break a}x=z[a+40>>2];y=z[a+56>>2];A=z[a+72>>2];H=C(C(C(f*x)+C(g*y))+C(h*A));B=z[a+120>>2];D=z[a+104>>2];E=z[a+88>>2];I=C(C(i*B)+C(C(k*D)+C(C(j*E)+z[a+8>>2])));if(nI|(C(-G)>F|C(-I)>H)){break a}n=C(C(h*e)-C(g*l));o=C(C(i*p)+C(C(k*m)+z[a+144>>2]));l=C(C(f*l)-C(h*d));m=C(C(i*q)+C(C(j*m)+z[a+160>>2]));d=C(C(g*d)-C(f*e));e=C(C(k*q)+C(C(j*p)+z[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=C(C(f*A)-C(h*x));i=C(C(i*E)+C(C(j*B)+z[a+168>>2]));f=C(C(g*x)-C(f*y));g=C(C(k*E)+C(C(j*D)+z[a+184>>2]));J=((b|(d>e|di|hg|f>2]=2;h=z[b+44>>2];z[g+148>>2]=z[b+40>>2];z[g+152>>2]=h*C(.5);i=A[c+12>>3];z[g+128>>2]=A[d>>3]-i;j=A[c+20>>3];z[g+132>>2]=A[d+8>>3]-j;k=A[c+28>>3];z[g+136>>2]=A[d+16>>3]-k;z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];d=0;v[g+104>>2]=0;v[g+96>>2]=2;b=v[c+40>>2];l(0,v[c+36>>2]);l(1,b|0);m=g,o=C(+n()-i),z[m+176>>2]=o;b=v[c+48>>2];l(0,v[c+44>>2]);l(1,b|0);m=g,o=C(+n()-j),z[m+180>>2]=o;b=v[c+56>>2];l(0,v[c+52>>2]);l(1,b|0);m=g,o=C(+n()-k),z[m+184>>2]=o;b=v[c+64>>2];l(0,v[c+60>>2]);l(1,b|0);m=g,o=C(+n()-i),z[m+160>>2]=o;b=v[c+72>>2];l(0,v[c+68>>2]);l(1,b|0);m=g,o=C(+n()-j),z[m+164>>2]=o;b=v[c+80>>2];l(0,v[c+76>>2]);l(1,b|0);m=g,o=C(+n()-k),z[m+168>>2]=o;z[g+100>>2]=z[c+84>>2];LU(g+16|0,g+176|0,g+160|0,g+104|0);b=v[g+40>>2];v[g+84>>2]=v[g+36>>2];v[g+88>>2]=b;z[g+64>>2]=z[g+16>>2];b=v[g+24>>2];v[g+68>>2]=v[g+20>>2];v[g+72>>2]=b;b=v[g+32>>2];v[g+76>>2]=v[g+28>>2];v[g+80>>2]=b;if(z[g+104>>2]==C(0)){v[g+104>>2]=872415232}v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!jV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];d=1}xa=g+192|0;return d|0}function uy(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=C(0),o=0,p=0,q=0,r=0,s=0;o=w[b+13|0];k=v[b+4>>2];j=v[b>>2];m=xa-16|0;v[m+8>>2]=0;v[m+12>>2]=0;v[m+4>>2]=0;a:{b:{if(!j){p=a+4096|0;b=v[a+4096>>2];break b}p=a+4096|0;b=v[a+4096>>2];l=w[j+43|0];if(l&4){break b}z[e>>2]=z[j>>2];z[f>>2]=z[j+8>>2];z[g>>2]=z[j+4>>2];z[h>>2]=z[j+12>>2];t[c|0]=l>>>5&1;t[d|0]=l>>>4&1;if(!o){break b}g=l&128?32:l&2?64:16;e=l&130;q=w[c|0];c=b;h=0;f=0;while(1){if(h){d=w[j+41|0];k=(d>>>0>f>>>0?B(d-f|0,g):0)+k|0;j=j+48|0}h=h+1|0;f=w[j+41|0];c:{if(!f){f=0;break c}k=(r?g:0)+k|0;n=i;d:{e:{if(q){if(!e){n=C(34028234663852886e22);break e}n=z[k+28>>2]}if(n==C(0)){break d}}d=(c<<6)+a|0;z[d>>2]=z[j+16>>2];z[d+4>>2]=z[j+20>>2];z[d+8>>2]=z[j+24>>2];z[d+16>>2]=z[k>>2];z[d+20>>2]=z[k+4>>2];z[d+24>>2]=z[k+8>>2];z[d+12>>2]=z[k+12>>2];l=w[j+42|0];z[d+28>>2]=n;t[d+48|0]=l;z[d+44>>2]=z[j+36>>2];z[d+56>>2]=z[j+32>>2];z[d+60>>2]=z[j+28>>2];z[d+32>>2]=z[(e?k+16|0:m+12|0)>>2];z[d+36>>2]=z[(e?k+20|0:m+8|0)>>2];z[d+40>>2]=z[(e?k+24|0:m+4|0)>>2];c=c+1|0}r=1;if((f|0)==1){f=1;break c}l=1;while(1){l=l+1|0;k=g+k|0;n=i;f:{g:{if(q){if(!e){n=C(34028234663852886e22);break g}n=z[k+28>>2]}if(n==C(0)){break f}}d=(c<<6)+a|0;z[d>>2]=z[j+16>>2];z[d+4>>2]=z[j+20>>2];z[d+8>>2]=z[j+24>>2];z[d+16>>2]=z[k>>2];z[d+20>>2]=z[k+4>>2];z[d+24>>2]=z[k+8>>2];z[d+12>>2]=z[k+12>>2];s=w[j+42|0];z[d+28>>2]=n;t[d+48|0]=s;z[d+44>>2]=z[j+36>>2];z[d+56>>2]=z[j+32>>2];z[d+60>>2]=z[j+28>>2];z[d+32>>2]=z[(e?k+16|0:m+12|0)>>2];z[d+36>>2]=z[(e?k+20|0:m+8|0)>>2];z[d+40>>2]=z[(e?k+24|0:m+4|0)>>2];c=c+1|0}if((f|0)!=(l|0)){continue}break}}if((h|0)!=(o|0)){continue}break}break a}c=b}v[p>>2]=c;return c-b|0}function bX(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0);d=z[c+8>>2];i=z[c+4>>2];w=z[c+12>>2];e=z[c>>2];h=z[b+16>>2];j=C(h+h);f=z[b+20>>2];l=C(f+f);x=C(h*j);m=C(f*l);s=C(C(C(1)-x)-m);G=z[b>>2];t=z[b+12>>2];r=C(t+t);n=C(r*f);o=z[b+24>>2];p=C(j*o);F=C(n+p);k=C(G*F);y=C(r*h);A=C(l*o);h=C(y+A);g=C(j*f);q=C(r*o);f=C(g-q);H=z[b+4>>2];u=C(f*H);j=C(n-p);o=C(C(1)-C(t*r));r=C(o-x);I=z[b+8>>2];n=C(r*I);l=C(C(C(s*k)+C(h*u))+C(j*n));J=z[c+16>>2];t=C(y-A);o=C(o-m);x=C(g+q);m=C(C(C(t*k)+C(o*u))+C(x*n));y=z[c+20>>2];k=C(C(C(F*k)+C(f*u))+C(r*n));A=z[c+24>>2];z[a+44>>2]=C(C(l*J)+C(m*y))+C(k*A);p=C(G*t);g=C(o*H);q=C(x*I);u=C(C(C(s*p)+C(h*g))+C(j*q));n=C(C(C(t*p)+C(o*g))+C(x*q));p=C(C(C(F*p)+C(f*g))+C(r*q));z[a+40>>2]=C(C(J*u)+C(y*n))+C(A*p);v=e;e=C(e+e);v=C(C(1)-C(v*e));g=C(i+i);L=C(i*g);q=C(v-L);B=C(e*d);M=C(g*w);K=C(B+M);D=C(g*d);E=C(e*w);g=C(D-E);z[a+32>>2]=C(k*q)+C(C(l*K)+C(m*g));z[a+28>>2]=C(p*q)+C(C(u*K)+C(n*g));D=C(D+E);i=C(e*i);e=C(d+d);E=C(w*e);w=C(i-E);d=C(d*e);e=C(v-d);z[a+20>>2]=C(k*D)+C(C(l*w)+C(m*e));z[a+16>>2]=C(p*D)+C(C(u*w)+C(n*e));v=k;k=C(B-M);B=l;l=C(C(C(1)-L)-d);d=m;m=C(i+E);z[a+8>>2]=C(v*k)+C(C(B*l)+C(d*m));z[a+4>>2]=C(p*k)+C(C(u*l)+C(n*m));v=s;s=C(G*s);B=h;h=C(h*H);d=j;j=C(j*I);d=C(C(C(v*s)+C(B*h))+C(d*j));i=C(C(C(t*s)+C(o*h))+C(x*j));f=C(C(C(F*s)+C(f*h))+C(r*j));z[a+36>>2]=C(C(J*d)+C(y*i))+C(A*f);z[a+24>>2]=C(f*q)+C(C(d*K)+C(i*g));z[a+12>>2]=C(f*D)+C(C(d*w)+C(i*e));z[a>>2]=C(f*k)+C(C(d*l)+C(i*m))}function mo(a,b){var c=C(0),d=0,e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0);e=xa-32|0;xa=e;d=v[a+316>>2]&1024?v[a+56>>2]+144|0:a+112|0;j=z[d+8>>2];k=z[d+4>>2];l=z[d+12>>2];m=z[d>>2];t=z[b+20>>2];u=z[b+16>>2];f=z[b+8>>2];c=z[d+24>>2];n=C(c+c);g=z[b>>2];c=z[d+16>>2];o=C(c+c);c=z[d+20>>2];p=C(c+c);h=z[b+4>>2];q=C(C(f*n)+C(C(g*o)+C(p*h)));c=z[b+12>>2];r=C(C(c*c)+C(-.5));z[e+24>>2]=z[b+24>>2]+C(C(f*q)+C(C(n*r)+C(c*C(C(g*p)-C(o*h)))));z[e+20>>2]=t+C(C(h*q)+C(C(p*r)+C(c*C(C(f*o)-C(n*g)))));z[e+12>>2]=C(C(C(c*l)-C(m*g))-C(h*k))-C(f*j);z[e+8>>2]=C(C(g*k)+C(C(c*j)+C(f*l)))-C(m*h);z[e+4>>2]=C(C(f*m)+C(C(c*k)+C(h*l)))-C(j*g);z[e>>2]=C(C(h*j)+C(C(c*m)+C(g*l)))-C(k*f);z[e+16>>2]=u+C(C(g*q)+C(C(o*r)+C(c*C(C(h*n)-C(p*f)))));b=a+48|0;i=v[b>>2];c=z[i+5132>>2];a:{b:{c:{d:{s=v[b+4>>2];switch((s>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[i+4785|0]){break b}}_G(b+16|0,v[i+2428>>2],e,c);z[b+260>>2]=c;v[b+264>>2]=0;break a}d=v[b+8>>2];if(!d){d=Qu(i,s>>>24&15);v[b+8>>2]=d;i=v[b>>2]}z[d+192>>2]=z[e>>2];z[d+196>>2]=z[e+4>>2];z[d+200>>2]=z[e+8>>2];z[d+204>>2]=z[e+12>>2];z[d+208>>2]=z[e+16>>2];z[d+212>>2]=z[e+20>>2];z[d+216>>2]=z[e+24>>2];Yu(i,b);v[b+268>>2]=v[b+268>>2]|32768;e:{f:{switch((v[b+4>>2]>>>30|0)-2|0){case 0:d=v[b>>2];if(w[d+4785|0]){break e}default:z[b+260>>2]=c;v[b+264>>2]=0;VG(b+16|0,c,1);break a;case 1:break f}}d=v[b>>2]}z[b+260>>2]=c;v[b+264>>2]=0;Yu(d,b);v[b+268>>2]=v[b+268>>2]&-117440513|83886080}b=vh(a);if(!(!b|!(w[(w[a+317|0]&64?v[a+56>>2]+268|0:a+108|0)|0]&2))){mu(a+20|0,b+5584|0,a);a=b+5652|0;v[a>>2]=v[a>>2]+1}xa=e+32|0}function H5(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0),p=C(0),q=C(0);l=z[b+20>>2];n=z[b+12>>2]>C(0);if(l>2]>C(0)?C(0):z[b+16>>2])+c)){e=v[a+4>>2];v[a+4>>2]=e+80;u[e+78>>1]=0;z[e>>2]=z[d>>2];z[e+4>>2]=z[d+4>>2];z[e+8>>2]=z[d+8>>2];f=z[a+16>>2];g=z[d+8>>2];h=z[a+8>>2];i=z[d+4>>2];j=z[d>>2];k=z[a+12>>2];z[e+24>>2]=C(h*i)-C(j*k);z[e+20>>2]=C(f*j)-C(g*h);z[e+16>>2]=C(k*g)-C(i*f);z[e+32>>2]=z[d>>2];z[e+36>>2]=z[d+4>>2];z[e+40>>2]=z[d+8>>2];f=z[a+28>>2];g=z[a+24>>2];h=z[d+8>>2];i=z[a+20>>2];j=z[d+4>>2];k=z[d>>2];l=C(l-c);z[e+12>>2]=l;z[e+56>>2]=C(i*j)-C(k*g);z[e+52>>2]=C(f*k)-C(h*i);z[e+48>>2]=C(g*h)-C(j*f);m=x[e+76>>1];f=z[b+8>>2];a:{if(f>C(0)|n){z[e+64>>2]=f;z[e+68>>2]=z[b+12>>2];m=m|17;break a}u[e+78>>1]=2049;z[e+64>>2]=z[b>>2];z[e+68>>2]=z[b+4>>2];m=m|(l>C(0)?24:16);if(!(z[b>>2]>C(0))){break a}m=m|4}v[e+44>>2]=0;u[e+76>>1]=m}l=z[b+24>>2];e=z[b+12>>2]>C(0);if(C(-l)>2]>C(0)?C(0):z[b+16>>2])-c)){f=z[d>>2];g=z[d+4>>2];h=z[d+8>>2];d=v[a+4>>2];v[a+4>>2]=d+80;o=C(-h);z[d+8>>2]=o;p=C(-g);z[d+4>>2]=p;q=C(-f);z[d>>2]=q;u[d+78>>1]=0;i=z[a+16>>2];j=z[a+12>>2];k=z[a+8>>2];z[d+40>>2]=o;z[d+36>>2]=p;z[d+32>>2]=q;z[d+24>>2]=C(f*j)-C(k*g);z[d+20>>2]=C(h*k)-C(i*f);z[d+16>>2]=C(g*i)-C(j*h);i=z[a+28>>2];j=z[a+24>>2];k=z[a+20>>2];c=C(c-l);z[d+12>>2]=c;z[d+56>>2]=C(f*j)-C(k*g);z[d+52>>2]=C(h*k)-C(i*f);z[d+48>>2]=C(g*i)-C(j*h);a=x[d+76>>1];f=z[b+8>>2];b:{if(e|f>C(0)){z[d+64>>2]=f;z[d+68>>2]=z[b+12>>2];a=a|17;break b}u[d+78>>1]=2049;z[d+64>>2]=z[b>>2];z[d+68>>2]=z[b+4>>2];a=a|(c>C(0)?24:16);if(!(z[b>>2]>C(0))){break b}a=a|4}v[d+44>>2]=0;u[d+76>>1]=a}}function C4(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;g=xa-16|0;xa=g;c=b>>>0>8?b:8;v[a+20>>2]=c;e=B(c,24);if(e){c=v[37696];f=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,13134,733)|0;c=v[a+20>>2]}v[a+36>>2]=f;c=B(c,9)-18|0;v[a+40>>2]=c;c=B(c,44);if(c){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,13134,83)|0}v[g+12>>2]=d;c=v[a+56>>2];a:{if(c>>>0>=(v[a+60>>2]&2147483647)>>>0){D4(a+52|0,g+12|0);break a}v[v[a+52>>2]+(c<<2)>>2]=d;v[a+56>>2]=c+1}c=(v[a+20>>2]<<1)-4|0;E4(a- -64|0,c<<1);if(c>>>0>(v[a+96>>2]&2147483647)>>>0){F4(a+88|0,c)}if((v[a+268>>2]&2147483647)>>>0>>0){c=0;b:{if(!b){break b}d=b<<2;if(!d){break b}c=v[37696];e=c+12|0;c=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?55463:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}e=v[a+260>>2];d=v[a+264>>2];if((d|0)>0){f=(d<<2)+c|0;d=c;while(1){v[d>>2]=v[e>>2];e=e+4|0;d=d+4|0;if(f>>>0>d>>>0){continue}break}e=v[a+260>>2]}if(!(!e|v[a+268>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+268>>2]=b;v[a+260>>2]=c}if(!(v[a+292>>2]&2147483616)){F4(a+284|0,32)}if(!(v[a+304>>2]&2147483616)){F4(a+296|0,32)}if(!(v[a+316>>2]&2147483616)){F4(a+308|0,32)}d=b>>>0<128?b:128;if(d>>>0>(v[a+280>>2]&2147483647)>>>0){b=0;c:{if(!d){break c}c=d<<2;if(!c){break c}b=v[37696];e=b+12|0;b=(m=e,l=c,k=Ba[v[v[b>>2]+20>>2]](b)|0?60363:63804,j=16608,i=553,h=v[v[e>>2]+8>>2],Ba[h](m|0,l|0,k|0,j|0,i|0)|0)}e=v[a+272>>2];c=v[a+276>>2];if((c|0)>0){f=(c<<2)+b|0;c=b;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}e=v[a+272>>2]}if(!(!e|v[a+280>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+280>>2]=d;v[a+272>>2]=b}xa=g+16|0}function iB(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;v[a+11980>>2]=0;h=b+63&-64;if(h>>>0>(v[a+11984>>2]&2147483647)>>>0){g=a+11976|0;a:{if(!h){break a}d=h<<5;if(!d){break a}b=v[37696];f=b+12|0;f=(k=f,l=d,m=Ba[v[v[b>>2]+20>>2]](b)|0?45645:63804,n=16608,o=553,j=v[v[f>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}d=v[g>>2];b=v[g+4>>2];if((b|0)>0){i=(b<<5)+f|0;b=f;while(1){e=v[d+4>>2];v[b>>2]=v[d>>2];v[b+4>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;d=d+32|0;b=b+32|0;if(i>>>0>b>>>0){continue}break}d=v[g>>2]}if(!(!d|v[g+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d)}v[g+8>>2]=h;v[g>>2]=f}v[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>(v[a+12152>>2]&2147483647)>>>0){g=a+12144|0;f=0;b:{if(!h){break b}d=B(h,52);if(!d){break b}b=v[37696];f=b+12|0;f=(o=f,n=d,m=Ba[v[v[b>>2]+20>>2]](b)|0?45777:63804,l=16608,k=553,j=v[v[f>>2]+8>>2],Ba[j](o|0,n|0,m|0,l|0,k|0)|0)}d=v[g>>2];b=v[g+4>>2];if((b|0)>0){i=B(b,52)+f|0;b=f;while(1){e=v[d+4>>2];v[b>>2]=v[d>>2];v[b+4>>2]=e;v[b+48>>2]=v[d+48>>2];e=v[d+44>>2];v[b+40>>2]=v[d+40>>2];v[b+44>>2]=e;e=v[d+36>>2];v[b+32>>2]=v[d+32>>2];v[b+36>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;d=d+52|0;b=b+52|0;if(i>>>0>b>>>0){continue}break}d=v[g>>2]}if(!(!d|v[g+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d)}v[g+8>>2]=h;v[g>>2]=f}v[a+12148>>2]=c;v[a+12132>>2]=v[a+11952>>2];v[a+12140>>2]=v[a+11976>>2]}function wM(a,b,c,d,e,f,g,h,i,j){var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0);k=z[d>>2];l=z[c>>2];v=z[g>>2];O=z[b>>2];w=z[f>>2];x=z[a>>2];y=z[e>>2];m=z[d+4>>2];n=z[c+4>>2];A=z[g+4>>2];P=z[b+4>>2];B=z[f+4>>2];D=z[a+4>>2];E=z[e+4>>2];o=z[d+8>>2];p=z[c+8>>2];F=z[g+8>>2];Q=z[b+8>>2];G=z[f+8>>2];H=z[a+8>>2];I=z[e+8>>2];J=z[g+12>>2];r=z[c+12>>2];K=z[f+12>>2];R=z[b+12>>2];L=z[e+12>>2];M=z[a+12>>2];S=C(C(J*r)+C(C(K*R)+C(L*M)));q=z[d+12>>2];T=C(C(q*q)+C(-.5));s=C(C(C(T*L)+C(q*C(C(J*R)-C(K*r))))+C(M*S));z[h+12>>2]=s+s;s=C(C(o*o)+C(-.5));U=C(C(F*p)+C(C(G*Q)+C(I*H)));t=C(C(C(I*s)+C(o*C(C(F*Q)-C(G*p))))+C(H*U));z[h+8>>2]=t+t;t=C(C(m*m)+C(-.5));V=C(C(A*n)+C(C(B*P)+C(E*D)));u=C(C(C(E*t)+C(m*C(C(A*P)-C(B*n))))+C(D*V));z[h+4>>2]=u+u;u=C(C(k*k)+C(-.5));W=C(C(v*l)+C(C(w*O)+C(y*x)));N=C(C(C(y*u)+C(k*C(C(v*O)-C(w*l))))+C(x*W));z[h>>2]=N+N;N=z[b>>2];X=z[b+4>>2];Y=z[b+8>>2];r=C(C(C(T*K)+C(q*C(C(L*r)-C(J*M))))+C(S*z[b+12>>2]));z[i+12>>2]=r+r;p=C(C(C(s*G)+C(o*C(C(I*p)-C(F*H))))+C(U*Y));z[i+8>>2]=p+p;n=C(C(C(t*B)+C(m*C(C(E*n)-C(A*D))))+C(V*X));z[i+4>>2]=n+n;l=C(C(C(u*w)+C(k*C(C(y*l)-C(v*x))))+C(W*N));z[i>>2]=l+l;l=z[c>>2];n=z[c+4>>2];p=z[c+8>>2];q=C(C(C(T*J)+C(q*C(C(K*M)-C(L*R))))+C(S*z[c+12>>2]));z[j+12>>2]=q+q;o=C(C(C(s*F)+C(o*C(C(G*H)-C(I*Q))))+C(U*p));z[j+8>>2]=o+o;m=C(C(C(t*A)+C(m*C(C(B*D)-C(E*P))))+C(V*n));z[j+4>>2]=m+m;k=C(C(C(u*v)+C(k*C(C(w*x)-C(y*O))))+C(W*l));z[j>>2]=k+k}function jV(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0);i=xa-112|0;xa=i;a:{b:{switch(v[c>>2]){case 0:j=z[c+4>>2];v[i+104>>2]=0;z[i+100>>2]=j;v[i+96>>2]=2;l=z[d+16>>2];z[i+16>>2]=l;k=z[d+20>>2];z[i+20>>2]=k;m=z[d+24>>2];z[i+36>>2]=m;z[i+32>>2]=k;z[i+40>>2]=j;z[i+28>>2]=l;z[i+24>>2]=m;c=x[h>>1];h=v[(v[e>>2]<<2)+(c&256?141688:141660)>>2];u[i+88>>1]=c;o=Ba[h|0](e,f,i+96|0,d,i+16|0,a,b,g,i+88|0,C(0))|0;break a;case 2:j=z[d+20>>2];l=z[d+16>>2];q=z[d+24>>2];k=z[d>>2];m=C(k+k);r=z[d+8>>2];t=z[d+4>>2];n=z[d+12>>2];s=C(n+n);p=z[c+8>>2];w=C(C(C(m*r)-C(t*s))*p);z[i+36>>2]=q-w;r=C(p*C(C(r*s)+C(m*t)));z[i+32>>2]=j-r;z[i+24>>2]=w+q;z[i+20>>2]=j+r;j=C(p*C(C(k*m)+C(C(n*s)+C(-1))));z[i+28>>2]=l-j;z[i+16>>2]=l+j;z[i+40>>2]=z[c+4>>2];h=x[h>>1];o=v[(v[e>>2]<<2)+(h&256?141688:141660)>>2];u[i+80>>1]=h;o=Ba[o|0](e,f,c,d,i+16|0,a,b,g,i+80|0,C(0))|0;break a;case 3:l=z[d+4>>2];m=C(l+l);j=z[d+8>>2];p=C(m*j);n=z[d>>2];k=C(n+n);s=z[d+12>>2];q=C(k*s);z[i+44>>2]=p-q;z[i+36>>2]=p+q;n=C(C(1)-C(n*k));p=C(l*m);z[i+48>>2]=n-p;r=n;n=C(j+j);q=C(j*n);z[i+32>>2]=r-q;j=C(k*j);m=C(m*s);z[i+40>>2]=j+m;l=C(k*l);k=C(n*s);z[i+28>>2]=l-k;z[i+24>>2]=j-m;z[i+20>>2]=l+k;z[i+16>>2]=C(C(1)-p)-q;z[i+52>>2]=z[d+16>>2];z[i+56>>2]=z[d+20>>2];z[i+60>>2]=z[d+24>>2];z[i+64>>2]=z[c+4>>2];z[i+68>>2]=z[c+8>>2];z[i+72>>2]=z[c+12>>2];h=x[h>>1];o=v[((h&256?84:56)+141660|0)+(v[e>>2]<<2)>>2];u[i+8>>1]=h;o=Ba[o|0](e,f,c,d,i+16|0,a,b,g,i+8|0,C(0))|0;break a;case 4:break b;default:break a}}o=v[e>>2];u[i>>1]=x[h>>1];o=Ba[v[((o<<2)+141660|0)+112>>2]](e,f,c,d,a,b,g,i,C(0))|0}xa=i+112|0;return o}function wO(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(!(v[a+132>>2]?v[a+128>>2]!=(v[a+308>>2]-1|0):0)){b=v[a+136>>2];c=v[a+148>>2];h=v[(b+(c<<3)|0)+4>>2]+(c<<7)|0;if(h){while(1){j=(d&127)<<6;k=d>>>7<<3;l=j+v[k+b>>2]|0;c=v[l+40>>2];b=v[c+32>>2];a:{if(!b|!w[b+35|0]){break a}b=v[a+212>>2];if(b>>>0>=(v[a+216>>2]&2147483647)>>>0){b=0;c=v[a+216>>2];i=c&2147483647?c<<1:1;b:{if(!i){break b}c=i<<2;if(!c){break b}b=v[37696];e=b+12|0;b=(n=e,o=c,p=Ba[v[v[b>>2]+20>>2]](b)|0?55111:63804,q=16608,r=553,m=v[v[e>>2]+8>>2],Ba[m](n|0,o|0,p|0,q|0,r|0)|0)}g=v[a+212>>2];f=(g<<2)+b|0;if((g|0)>0){e=v[a+208>>2];c=b;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}}v[f>>2]=v[l+40>>2];c:{if(v[a+216>>2]<0){break c}c=v[a+208>>2];if(!c){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,c);g=v[a+212>>2]}v[a+216>>2]=i;v[a+208>>2]=b;v[a+212>>2]=g+1;break a}v[v[a+208>>2]+(b<<2)>>2]=c;v[a+212>>2]=b+1}b=v[a+136>>2];c=v[(v[k+b>>2]+j|0)+40>>2];v[c+32>>2]=0;t[v[c+36>>2]+156|0]=0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}v[a+148>>2]=0;v[v[a+136>>2]+4>>2]=0}v[a+180>>2]=0;v[v[a+168>>2]+4>>2]=0;b=v[a+240>>2];if(!(!b|!v[a+256>>2])){J9(v[a+232>>2],255,b<<2);d=0;c=v[a+228>>2];b=v[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;v[c+(d<<2)>>2]=f;h=c+(f<<2)|0;f=d|2;v[h>>2]=f;h=c+(f<<2)|0;f=d|3;v[h>>2]=f;d=d+4|0;v[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;v[f>>2]=d;e=e+1|0;if((b|0)!=(e|0)){continue}break}}b=v[a+236>>2]-1|0}else{b=0}v[c+(b<<2)>>2]=-1;v[a+256>>2]=0;v[a+248>>2]=0}v[a+128>>2]=v[a+128>>2]+1}function VP(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=v[a+2376>>2];f=v[d+12>>2];a:{if(f){g=f-1|0;f=v[v[d+8>>2]+(g<<2)>>2];v[d+12>>2]=g;d=f+1|0;break a}e=d;f=v[d+4>>2];d=f+1|0;v[e+4>>2]=d}g=v[a+1140>>2];e=v[g+12>>2]&2147483647;if(e>>>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>e>>>0){YI(g,d)}v[g+8>>2]=d}a=v[a+980>>2];g=xa-16|0;xa=g;d=v[37696];e=Ba[v[v[d>>2]+20>>2]](d)|0?41651:63804;e=Ba[v[v[d+12>>2]+8>>2]](d+12|0,64,e,8887,1319)|0;d=e;t[d+60|0]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+4>>2]=0;v[d+8>>2]=0;v[d>>2]=f;v[d+20>>2]=-1;v[d+24>>2]=0;v[d+12>>2]=0;if(c){c=v[37696];h=Ba[v[v[c>>2]+20>>2]](c)|0?30137:63804;h=Ba[v[v[c+12>>2]+8>>2]](c+12|0,44,h,8887,883)|0;c=h;v[c+4>>2]=-1;v[c>>2]=130904;v[c+8>>2]=0;v[c+12>>2]=0;v[c+32>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+40>>2]=d;v[c>>2]=130624;t[c+36|0]=0}v[d+16>>2]=h;v[g+12>>2]=e;d=v[a+372>>2];b:{if((d|0)==-1){d=v[a+380>>2];if(d>>>0>=(v[a+384>>2]&2147483647)>>>0){mI(a+376|0,g+12|0);break b}v[v[a+376>>2]+(d<<2)>>2]=e;v[a+380>>2]=d+1;break b}c=v[a+376>>2]+(d<<2)|0;v[a+372>>2]=v[c>>2];v[c>>2]=e}c=v[a+504>>2];c:{if(c){e=c-1|0;c=v[v[a+500>>2]+(e<<2)>>2];v[a+504>>2]=e;break c}c=v[a+496>>2];v[a+496>>2]=c-1;c=c<<2|3}e=f+1|0;if(e>>>0>=y[a+200>>2]){hI(a,e)}h=v[a+360>>2];v[a+360>>2]=e>>>0>h>>>0?e:h;e=f<<2;v[e+v[a+180>>2]>>2]=c;v[e+v[v[a+192>>2]+4>>2]>>2]=0;c=v[a+196>>2]+(f<<3)|0;v[c+4>>2]=d<<1|1;v[c>>2]=b;c=v[a+276>>2];b=v[c+4>>2]+B(f,24)|0;v[b+8>>2]=2122317823;v[b+12>>2]=-25165825;v[b>>2]=2122317823;v[b+4>>2]=2122317823;v[b+16>>2]=-25165825;v[b+20>>2]=-25165825;t[c+16|0]=1;v[a+368>>2]=v[a+368>>2]+1;xa=g+16|0;return d}function qO(a){var b=0,c=0,d=C(0),e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);b=xa-96|0;xa=b;c=v[a>>2];a:{if(!c){break a}e=v[a+8>>2];if(v[v[c+32>>2]+48>>2]==v[e+88>>2]){break a}f=b- -64|0;oO(f,e,c);pO(b+32|0,v[a+8>>2],v[a>>2]);g=z[b+52>>2];d=z[b+84>>2];h=z[b+56>>2];j=z[b+88>>2];i=z[b+48>>2];k=z[b+80>>2];hV(b+16|0,b,v[v[a+8>>2]+92>>2]+36|0,f);l=z[b+16>>2];m=z[b+20>>2];c=v[a+8>>2];z[c+84>>2]=z[b+24>>2]-C(j-h);z[c+80>>2]=m-C(d-g);z[c+76>>2]=l-C(k-i);z[c+64>>2]=z[b>>2];z[c+68>>2]=z[b+4>>2];z[c+72>>2]=z[b+8>>2];z[c+8>>2]=z[b+32>>2];z[c+12>>2]=z[b+36>>2];z[c+16>>2]=z[b+40>>2];d=z[b+44>>2];z[c+32>>2]=h;z[c+28>>2]=g;z[c+24>>2]=i;z[c+20>>2]=d;z[c+36>>2]=z[b+64>>2];z[c+40>>2]=z[b+68>>2];z[c+44>>2]=z[b+72>>2];z[c+48>>2]=z[b+76>>2];z[c+52>>2]=z[b+80>>2];z[c+56>>2]=z[b+84>>2];z[c+60>>2]=z[b+88>>2];v[c+88>>2]=v[v[v[a>>2]+32>>2]+48>>2]}c=v[a+4>>2];b:{if(!c){break b}e=v[a+12>>2];if(v[v[c+32>>2]+48>>2]==v[e+88>>2]){break b}f=b- -64|0;oO(f,e,c);pO(b+32|0,v[a+12>>2],v[a+4>>2]);g=z[b+52>>2];d=z[b+84>>2];h=z[b+56>>2];j=z[b+88>>2];i=z[b+48>>2];k=z[b+80>>2];hV(b+16|0,b,v[v[a+12>>2]+92>>2]+36|0,f);l=z[b+16>>2];m=z[b+20>>2];c=v[a+12>>2];z[c+84>>2]=z[b+24>>2]-C(j-h);z[c+80>>2]=m-C(d-g);z[c+76>>2]=l-C(k-i);z[c+64>>2]=z[b>>2];z[c+68>>2]=z[b+4>>2];z[c+72>>2]=z[b+8>>2];z[c+8>>2]=z[b+32>>2];z[c+12>>2]=z[b+36>>2];z[c+16>>2]=z[b+40>>2];d=z[b+44>>2];z[c+32>>2]=h;z[c+28>>2]=g;z[c+24>>2]=i;z[c+20>>2]=d;z[c+36>>2]=z[b+64>>2];z[c+40>>2]=z[b+68>>2];z[c+44>>2]=z[b+72>>2];z[c+48>>2]=z[b+76>>2];z[c+52>>2]=z[b+80>>2];z[c+56>>2]=z[b+84>>2];z[c+60>>2]=z[b+88>>2];v[c+88>>2]=v[v[v[a+4>>2]+32>>2]+48>>2]}xa=b+96|0}function F5(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0);e=z[b>>2];l=z[b+4>>2];f=z[b+12>>2];h=C(f+C(1));j=C(C9(l,h)*C(4));m=C(D(j));i=z[a+8>>2];g=z[a>>2];k=C(C(m+i)/g);o=C(k*k);q=i;k=z[b+8>>2];i=C(C9(k,h)*C(4));p=C(D(i));h=z[a+4>>2];n=C(C(q+p)/h);a=C(o+C(n*n))<=C(1);if(!a){n=C(e+e);r=C(f+f);u=C(C(n*k)-C(l*r));v=C(C(k*r)+C(n*l));r=C(C(e*n)+C(C(f*r)+C(-1)));a:{b:{if(g>=h){if(!(pC(0)?g:C(-g);break a}if(!(mC(0)?h:C(-h);f=C(0);break a}n=C(m*g);f=C(g*g);e=C(n-f);p=C(p*h);l=C(h*h);m=C(p-l);e=e>m?e:m;b=0;while(1){m=C(C(1)/C(f+e));k=C(n*m);s=C(k*k);k=C(C(1)/C(l+e));o=C(p*k);o=C(o*o);t=C(C(s+o)+C(-1));if(t>2]=l;j=C(o*j);g=C(C(C(j*g)-C(e*m))*f);z[c+4>>2]=g;e=C(C(C(i*e)-C(h*j))*f);z[c>>2]=e;z[d>>2]=C(C(C(m*g)-C(e*i))*u)+C(C(C(C(i*l)-C(g*j))*r)+C(v*C(C(j*e)-C(l*m))))}return!a}function XV(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0);g=xa-112|0;xa=g;m=z[d+20>>2];k=z[d+16>>2];p=z[d+24>>2];h=z[d>>2];i=C(h+h);n=z[d+8>>2];q=z[d+4>>2];l=z[d+12>>2];j=C(l+l);o=z[c+8>>2];r=C(C(C(i*n)-C(q*j))*o);u=C(p-r);z[g+60>>2]=u;n=C(o*C(C(n*j)+C(i*q)));q=C(m-n);z[g+56>>2]=q;h=C(o*C(C(h*i)+C(C(l*j)+C(-1))));v=C(k-h);z[g+52>>2]=v;w=C(k+h);z[g+40>>2]=w;n=C(m+n);z[g+44>>2]=n;p=C(r+p);z[g+48>>2]=p;z[g+64>>2]=z[c+4>>2];m=z[f+20>>2];k=z[f+16>>2];r=z[f+24>>2];h=z[f>>2];i=C(h+h);s=z[f+8>>2];t=z[f+4>>2];l=z[f+12>>2];j=C(l+l);o=z[e+8>>2];x=C(C(C(i*s)-C(t*j))*o);y=C(r-x);z[g+28>>2]=y;s=C(o*C(C(s*j)+C(i*t)));t=C(m-s);z[g+24>>2]=t;h=C(o*C(C(h*i)+C(C(l*j)+C(-1))));i=C(k-h);z[g+20>>2]=i;k=C(k+h);z[g+8>>2]=k;m=C(m+s);z[g+12>>2]=m;h=C(x+r);z[g+16>>2]=h;z[g+32>>2]=z[e+4>>2];z[g+104>>2]=u-p;z[g+100>>2]=q-n;z[g+96>>2]=v-w;z[g+88>>2]=y-h;z[g+84>>2]=t-m;z[g+80>>2]=i-k;i=I_(g+40|0,g+96|0,g+8|0,g+80|0,g+76|0,g+72|0);m=C(z[g+64>>2]+z[g+32>>2]);c=i>C(m*m);if(!c){h=z[g+48>>2];k=z[g+76>>2];j=C(h+C(k*C(z[g+60>>2]-h)));i=z[g+16>>2];h=z[g+72>>2];i=C(j-C(i+C(h*C(z[g+28>>2]-i))));l=z[g+40>>2];j=C(l+C(k*C(z[g+52>>2]-l)));l=z[g+8>>2];l=C(j-C(l+C(h*C(z[g+20>>2]-l))));j=z[g+44>>2];j=C(j+C(k*C(z[g+56>>2]-j)));k=z[g+12>>2];k=C(j-C(k+C(h*C(z[g+24>>2]-k))));n=C(C(i*i)+C(C(l*l)+C(k*k)));h=C(K(n));j=C(1);o=C(0);p=C(0);if(!(n>2]=p;z[a+4>>2]=o;z[a>>2]=j;m=C(m-h);z[b>>2]=m>C(0)?m:C(0)}xa=g+112|0;return!c|0}function sg(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;f=xa-32|0;xa=f;d=v[a+8>>2];if(d){mh(d+v[(x[d+4>>1]<<2)+86240>>2]|0,0,a)}d=v[a+12>>2];if(d){mh(d+v[(x[d+4>>1]<<2)+86240>>2]|0,0,a)}a:{b:{c:{d:{e:{if(!b){if(c){break c}v[a+8>>2]=0;v[a+12>>2]=0;d=0;break e}d=0;lh(v[(x[b+4>>1]<<2)+86240>>2]+b|0,0,a);if(c){break d}v[a+12>>2]=0;v[a+8>>2]=b;Ba[v[v[b>>2]+52>>2]](f,b);d=0;if(w[f|0]&8){break e}d=Ba[v[v[b>>2]+28>>2]](b)|0}i=1;break a}lh(v[(x[c+4>>1]<<2)+86240>>2]+c|0,0,a);v[a+12>>2]=c;v[a+8>>2]=b;Ba[v[v[b>>2]+52>>2]](f+16|0,b);if(w[f+16|0]&8){break b}d=Ba[v[v[b>>2]+28>>2]](b)|0;break b}d=0;lh(v[(x[c+4>>1]<<2)+86240>>2]+c|0,0,a);v[a+12>>2]=c;v[a+8>>2]=0}Ba[v[v[c>>2]+52>>2]](f+8|0,c);if(!(w[f+8|0]&8)){e=Ba[v[v[c>>2]+28>>2]](c)|0}e=e?d?d:e:0;d=b?d?e:0:e}g=a+16|0;f:{g:{h:{i:{if((v[a+20>>2]>>>30|0)-3>>>0<4294967294){break i}e=v[a+16>>2];if(!e){break i}e=e-16|0;if((e|0)==(d|0)){break h}if(!e){break g}v[f+20>>2]=a;Pg(e+5892|0,f+20|0);Ju(e+16|0,g);break g}if(d){break g}}d=0;a=0;j:{if(!b){break j}k:{switch(x[b+4>>1]-5|0){case 0:a=b+48|0;break j;case 8:a=b+48|0;break j;default:break k}}a=b+48|0}l:{if(i){break l}m:{switch(x[c+4>>1]-5|0){case 0:d=c+48|0;break l;case 8:d=c+48|0;break l;default:break m}}d=c+48|0}tg(g,a,d);break f}e=0;n:{if(!b){break n}o:{switch(x[b+4>>1]-5|0){case 0:e=b+48|0;break n;case 8:e=b+48|0;break n;default:break o}}e=b+48|0}p:{if(i){break p}q:{switch(x[c+4>>1]-5|0){case 0:h=c+48|0;break p;case 8:h=c+48|0;break p;default:break q}}h=c+48|0}tg(g,e,h);if(!d){break f}v[f+24>>2]=a;a=rh(d+5892|0,f+24|0,f+31|0);if(!w[f+31|0]){v[a>>2]=v[f+24>>2]}Iu(d+16|0,g)}xa=f+32|0}function CX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);a=xa-48|0;xa=a;BV(a+32|0,b);r=z[e+24>>2];v[h+8>>2]=-1;k=z[e>>2];z[a>>2]=k;p=z[e+4>>2];z[a+4>>2]=p;q=z[e+8>>2];z[a+8>>2]=q;m=z[e+12>>2];z[a+12>>2]=m;l=z[e+16>>2];z[a+16>>2]=l;n=z[e+20>>2];z[a+20>>2]=n;o=n;n=z[a+40>>2];s=m;m=z[a+32>>2];t=l;l=z[a+36>>2];o=C(C(o*n)+C(C(s*m)+C(t*l)));k=C(C(q*n)+C(C(k*m)+C(p*l)));k=k>1];if(c&512){if(!(k<=C(j-z[a+44>>2]))){break c}u[h+12>>1]=3;j=z[e+8>>2];q=z[a+40>>2];n=z[e>>2];o=z[a+32>>2];m=z[e+4>>2];s=z[a+36>>2];l=z[a+44>>2];g=C(C(C(j*q)+C(C(n*o)+C(m*s)))+l);p=l;l=z[e+20>>2];k=z[e+12>>2];r=z[e+16>>2];p=C(p+C(C(l*q)+C(C(k*o)+C(s*r))));if(!(g>2]=o;z[h+36>>2]=q;z[h+32>>2]=s;l=z[e+24>>2];z[h+24>>2]=j-C(q*g);z[h+20>>2]=m-C(s*g);z[h+16>>2]=n-C(o*g);z[h+40>>2]=g-l;e=1;break a}if(!(k<=C(j-z[a+44>>2]))|c&16){break c}v[h+40>>2]=0;u[h+12>>1]=2;g=z[f>>2];j=z[f+4>>2];z[h+36>>2]=-z[f+8>>2];z[h+32>>2]=-j;z[h+28>>2]=-g;break b}e=0;k=C(C(z[f+8>>2]*n)+C(C(z[f>>2]*m)+C(l*z[f+4>>2])));if(k>C(-1.0000000116860974e-7)&k>2]-C(j*n));p=C(z[b>>2]-C(j*m));q=C(z[b+4>>2]-C(j*l));j=C(C(-C(z[a+44>>2]+C(C(r*n)+C(C(p*m)+C(l*q)))))/k);z[h+40>>2]=j;k=z[f>>2];o=z[f+4>>2];z[h+24>>2]=r+C(j*z[f+8>>2]);z[h+20>>2]=q+C(o*j);z[h+16>>2]=p+C(k*j);if(!(j>C(0))|!(g>=j)){break a}z[h+28>>2]=m;u[h+12>>1]=3;z[h+36>>2]=n;z[h+32>>2]=l}e=1}xa=a+48|0;return e|0}function Fn(a,b,c,d){a=a|0;b=C(b);c=C(c);d=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;p=a;f=xa-32|0;xa=f;k=v[37389];a=v[k+2448>>2];if(!a){l=xa-16|0;xa=l;h=k+2160|0;e=v[h+284>>2];if(e){a=v[37696];j=Ba[v[v[a>>2]+20>>2]](a)|0?39311:63804;j=Ba[v[v[a+12>>2]+8>>2]](a+12|0,e,j,18373,180)|0}else{j=0}v[l+12>>2]=j;a=v[h+268>>2];a:{if(a>>>0>=(v[h+272>>2]&2147483647)>>>0){a=0;e=h+4|0;g=v[e+268>>2];m=g&2147483647?g<<1:1;b:{if(!m){break b}g=m<<2;if(!(w[e+256|0]|g>>>0>256)){t[e+256|0]=1;a=e;break b}if(!g){break b}a=v[37696];i=Ba[v[v[a>>2]+20>>2]](a)|0?39311:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,g,i,16608,553)|0}i=v[e+264>>2];o=(i<<2)+a|0;if((i|0)>0){n=v[e+260>>2];g=a;while(1){v[g>>2]=v[n>>2];n=n+4|0;g=g+4|0;if(o>>>0>g>>>0){continue}break}}v[o>>2]=v[l+12>>2];c:{if(v[e+268>>2]<0){break c}g=v[e+260>>2];if((g|0)==(e|0)){t[e+256|0]=0;break c}if(!g){break c}i=v[37696];Ba[v[v[i+12>>2]+12>>2]](i+12|0,g);i=v[e+264>>2]}v[e+268>>2]=m;v[e+260>>2]=a;v[e+264>>2]=i+1;break a}v[v[h+264>>2]+(a<<2)>>2]=j;v[h+268>>2]=a+1}a=((v[h+276>>2]<<6)+j|0)+-64|0;if(j>>>0<=a>>>0){e=v[h+288>>2];while(1){v[a>>2]=e;e=a;a=a+-64|0;if(j>>>0<=a>>>0){continue}break}v[h+288>>2]=e}xa=l+16|0;a=v[k+2448>>2]}v[k+2448>>2]=v[a>>2];e=k+2440|0;v[e>>2]=v[e>>2]+1;v[f+20>>2]=-842137601;v[f+12>>2]=-855638016;v[f+16>>2]=0;z[f+8>>2]=d;z[f+4>>2]=b;z[f>>2]=c;v[a+16>>2]=1;v[a+4>>2]=196616;v[a+8>>2]=0;v[a+12>>2]=121812;v[a>>2]=121708;e=v[f+4>>2];v[a+32>>2]=v[f>>2];v[a+36>>2]=e;v[a+40>>2]=v[f+8>>2];u[a+44>>1]=x[f+12>>1];u[a+46>>1]=x[f+14>>1];e=v[f+20>>2];v[a+48>>2]=v[f+16>>2];v[a+52>>2]=e;v[a+48>>2]=a;xa=f+32|0;return En(p,a)|0}function qJ(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=xa-16|0;xa=j;a:{b:{k=v[b+4>>2];h=w[v[k+44>>2]+9|0];l=v[c+4>>2];g=w[v[l+44>>2]+9|0];c:{d:{if(!((h|0)!=2|(g|0)!=2)){i=v[b+4>>2];i=w[v[(w[v[i+44>>2]+9|0]-1>>>0<2?i:0)+100>>2]+159|0]!=0;break d}if(!h){break c}}if(i|(h|0)==2&(g|0)==1){break c}if(!((h|0)!=1|(g|0)!=1)){i=v[b+4>>2];if(t[v[(w[v[i+44>>2]+9|0]-1>>>0<2?i:0)+44>>2]+44|0]&1){break c}}if((g|0)!=(h|0)|y[k+48>>2]>=y[l+48>>2]){break b}}g=c;break a}g=b;b=c}if(!f){f=v[a+984>>2];if(!f){uJ(a+696|0);f=v[a+984>>2]}v[a+984>>2]=v[f>>2];v[a+976>>2]=v[a+976>>2]+1}u[j+8>>1]=x[d>>1];a=UH(f+4|0,v[g+4>>2],v[b+4>>2],0,5);v[f+32>>2]=b;v[f+28>>2]=g;u[f+64>>1]=0;v[f+56>>2]=0;v[f+60>>2]=-1;v[f+48>>2]=0;v[f+52>>2]=-1;v[f+36>>2]=-1;v[f+40>>2]=-1;v[f>>2]=139148;v[f+44>>2]=x[j+8>>1]&32767;b=v[v[a>>2]+40>>2];c=v[v[f+32>>2]+4>>2];c=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;d=x[j+8>>1];h=1;e:{f:{g=v[g+4>>2];g=w[v[g+44>>2]+9|0]-1>>>0<2?g:0;g:{if(t[v[g+44>>2]+44|0]&1){if(!c){break g}h=!(t[v[c+44>>2]+44|0]&1)}if(!(d&1)){break g}if(h){break f}}h=v[f+44>>2]|262144;break e}h=v[f+44>>2]&-262145}v[f+44>>2]=h;h:{i:{if(!(d&514|z[v[b+976>>2]+1056>>2]!=C(0)|(z[v[b+976>>2]+1060>>2]!=C(0)|z[v[b+976>>2]+1064>>2]!=C(0)))){if(z[v[b+976>>2]+1068>>2]==C(0)){break i}}d=v[f+44>>2]|131072;break h}d=v[f+44>>2]&-131073}v[f+44>>2]=d;j:{if(!e){e=v[g+144>>2];d=v[g+100>>2];v[d+148>>2]=v[d+148>>2]+1;k:{if(!c){d=-128;break k}d=v[c+144>>2];c=v[c+100>>2];v[c+148>>2]=v[c+148>>2]+1}m=f,n=_F(v[b+1e3>>2],0,e,d,a),v[m+60>>2]=n;c=YP(a);VE(v[a>>2],a);VE(v[f+8>>2],a);hJ(v[b+2168>>2],f);XO(b,a,c);break j}IR(f,e)}xa=j+16|0;return f}function ew(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=0,y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0);e=v[a+100>>2];f=(e+x[e+18>>1]|0)+144|0;m=C(-z[d+8>>2]);n=C(-z[d+4>>2]);o=C(-z[d>>2]);j=C(-z[c+8>>2]);k=C(-z[c+4>>2]);l=C(-z[c>>2]);if(b){a=x[e+4>>1]<<5;t=(((a+e|0)+a|0)+a|0)+128|0;u=x[e+6>>1]+e|0;a=b;while(1){c=B(a,160)+f|0;y=z[c+16>>2];A=z[c+48>>2];D=z[c+80>>2];E=z[c+20>>2];F=z[c+52>>2];G=z[c+84>>2];d=(a<<5)+u|0;p=z[d+8>>2];H=z[c+8>>2];I=z[c+40>>2];J=z[c+72>>2];K=z[c+24>>2];L=z[c+56>>2];M=z[c+88>>2];q=z[d>>2];N=z[c+4>>2];O=z[c+36>>2];P=z[c+68>>2];r=z[d+4>>2];Q=z[c>>2];R=z[c+32>>2];S=z[c+64>>2];c=(a<<4)+t|0;T=z[c>>2];U=z[c+4>>2];g=z[d+24>>2];i=z[c+8>>2];s=z[d+20>>2];h=z[d+16>>2];v[c+12>>2]=0;V=i;i=C(m+C(C(l*s)-C(h*k)));z[c+8>>2]=V+i;h=C(n+C(C(j*h)-C(g*l)));z[c+4>>2]=U+h;g=C(o+C(C(k*g)-C(s*j)));z[c>>2]=T+g;k=C(k-C(C(N*g)+C(C(h*O)+C(i*P))));l=C(l-C(C(Q*g)+C(C(h*R)+C(i*S))));m=C(C(m-C(C(g*K)+C(C(h*L)+C(i*M))))+C(C(q*k)-C(r*l)));j=C(j-C(C(g*H)+C(C(h*I)+C(i*J))));n=C(C(n-C(C(g*E)+C(C(h*F)+C(i*G))))+C(C(p*l)-C(q*j)));o=C(C(o-C(C(g*y)+C(C(h*A)+C(i*D))))+C(C(r*j)-C(k*p)));a=w[(a+e|0)- -64|0];if(a){continue}break}}v[e+44>>2]=0;v[e+60>>2]=0;z[e+32>>2]=l+z[e+32>>2];z[e+40>>2]=j+z[e+40>>2];z[e+36>>2]=k+z[e+36>>2];z[e+48>>2]=o+z[e+48>>2];z[e+52>>2]=n+z[e+52>>2];z[e+56>>2]=m+z[e+56>>2];a=B(b,160)+f|0;b=v[a+152>>2];a=v[e+12>>2]|v[a+156>>2];v[e+8>>2]=v[e+8>>2]|b;v[e+12>>2]=a}function PY(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);c=xa-160|0;xa=c;d=v[a+16>>2];e=v[a+20>>2];v[c+128>>2]=-25165825;v[c+132>>2]=-25165825;v[c+120>>2]=2122317823;v[c+124>>2]=-25165825;t[c+141|0]=0;t[c+142|0]=0;t[c+143|0]=0;t[c+144|0]=0;t[c+145|0]=0;t[c+146|0]=0;t[c+147|0]=0;t[c+148|0]=0;v[c+136>>2]=0;v[c+140>>2]=0;v[c+112>>2]=2122317823;v[c+116>>2]=2122317823;v[c+84>>2]=1;v[c+80>>2]=b+8;v[c+72>>2]=d;v[c+76>>2]=e;v[c+88>>2]=c+156;b=v[a+36>>2];KY(c+48|0,c+72|0);i=z[b+8>>2];h=z[c+56>>2];j=C(h+h);k=z[b>>2];h=z[c+48>>2];l=C(h+h);h=z[c+52>>2];m=C(h+h);n=z[b+4>>2];o=C(C(i*j)+C(C(k*l)+C(m*n)));d=v[a+24>>2];h=z[b+12>>2];p=C(C(h*h)+C(-.5));if(z[a+12>>2]<=C(C(C(z[d>>2]*C(-C(C(k*o)+C(C(l*p)+C(h*C(C(n*j)-C(m*i)))))))-C(z[d+4>>2]*C(C(n*o)+C(C(m*p)+C(h*C(C(i*l)-C(j*k)))))))-C(z[d+8>>2]*C(C(i*o)+C(C(j*p)+C(h*C(C(k*m)-C(l*n)))))))){LY(c+72|0,c+48|0,v[a+36>>2]);d=v[a+40>>2];b=v[a+44>>2];h=z[b>>2];i=z[b+4>>2];z[c+40>>2]=z[b+8>>2]*C(1.100000023841858);z[c+36>>2]=i*C(1.100000023841858);z[c+32>>2]=h*C(1.100000023841858);h=z[c+56>>2];i=z[c+68>>2];z[c+24>>2]=C(h+i)*C(.5);j=z[c+52>>2];k=z[c- -64>>2];z[c+20>>2]=C(j+k)*C(.5);l=z[c+48>>2];m=z[c+60>>2];z[c+16>>2]=C(l+m)*C(.5);z[c+8>>2]=C(C(C(i-h)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[c+4>>2]=C(C(C(k-j)*C(.5))+C(.009999999776482582))*C(1.100000023841858);z[c>>2]=C(C(C(m-l)*C(.5))+C(.009999999776482582))*C(1.100000023841858);h=sO(d,c+32|0,c+16|0,c,v[a+28>>2],v[a+32>>2]);i=z[a+8>>2];h=h>i?i:h;z[a+8>>2]=h;z[f>>2]=h}xa=c+160|0;return z[a+8>>2]>C(0)|0}function x_(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=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=0,n=C(0),o=0,p=0,q=C(0),r=C(0),s=0,t=C(0),u=C(0),y=C(0),A=C(0),E=0;h=xa-48|0;xa=h;p=v[a+28>>2];q=z[d+32>>2];r=z[d+20>>2];t=z[d+28>>2];u=z[d+16>>2];y=z[d+8>>2];A=z[d+4>>2];g=z[b+8>>2];i=z[b>>2];j=z[b+4>>2];l=C(C(z[c+8>>2]*g)+C(C(z[c>>2]*i)+C(z[c+4>>2]*j)));n=C(C(z[c+20>>2]*g)+C(C(z[c+12>>2]*i)+C(j*z[c+16>>2])));g=C(C(z[c+32>>2]*g)+C(C(z[c+24>>2]*i)+C(j*z[c+28>>2])));i=C(C(C(l*z[d>>2])+C(n*z[d+12>>2]))+C(g*z[d+24>>2]));z[h+32>>2]=i;j=C(C(C(l*A)+C(n*u))+C(g*t));z[h+36>>2]=j;g=C(C(C(l*y)+C(n*r))+C(g*q));z[h+40>>2]=g;a=v[a+60>>2];d=x[a>>1];l=C(-g);z[h+16>>2]=l;n=C(-j);z[h+12>>2]=n;q=C(-i);z[h+8>>2]=q;g=C(D(g));i=C(D(i));m=g>i;j=C(D(j));o=j>i&g>2]>>>31);r=C(C(d-1>>>0)*C(.5));i=C(C(1)/(o?j:m?g:i));m=(k+(k>>>1|0)|0)+1|0;o=m&3;g=C(r*C(C(i*z[(o<<2)+s>>2])+C(1)));a:{if(g=C(0)){k=~~g>>>0;break a}k=0}k=B(d,(E+k|0)+(C(g-C(k>>>0))>C(.5))|0);g=C(r*C(C(i*z[(h+8|0)+(((m+(o>>>1|0)|0)+1&3)<<2)>>2])+C(1)));b:{if(g=C(0)){d=~~g>>>0;break b}d=0}m=v[a+4>>2];d=k+(d+(C(g-C(d>>>0))>C(.5))|0)|0;v[h+28>>2]=w[m+d|0];v[h+24>>2]=w[d+(m+x[a+2>>1]|0)|0];z[h+16>>2]=l;z[h+12>>2]=n;z[h+8>>2]=q;u_(h+28|0,h+8|0,p,a);u_(h+24|0,h+32|0,p,a);g=C(C(z[c+44>>2]*z[b+8>>2])+C(C(z[c+36>>2]*z[b>>2])+C(z[c+40>>2]*z[b+4>>2])));a=B(v[h+28>>2],12)+p|0;i=z[h+40>>2];j=z[h+32>>2];l=z[h+36>>2];z[e>>2]=g+C(C(z[a+8>>2]*i)+C(C(z[a>>2]*j)+C(z[a+4>>2]*l)));a=B(v[h+24>>2],12)+p|0;z[f>>2]=g+C(C(i*z[a+8>>2])+C(C(j*z[a>>2])+C(l*z[a+4>>2])));xa=h+48|0}function gA(a,b){var c=C(0),d=0,e=C(0),f=0,g=0,h=C(0),i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=C(0),E=0,F=C(0),G=C(0),H=C(0),I=0,J=0,K=0,L=C(0),M=C(0),N=C(0),O=0,P=0;g=v[a>>2];k=z[g+24>>2];l=z[g+20>>2];m=z[g+16>>2];n=z[g+8>>2];o=z[g+4>>2];p=z[g>>2];d=x[a+22>>1];if(d){f=v[a+24>>2];O=f+(d<<4)|0;while(1){a=f;E=a- -64|0;d=w[a+2|0];J=E+B(d,48)|0;K=J+((d<<2)+12&2032)|0;j=w[a+3|0];P=j<<6;q=z[a+12>>2];L=z[a+4>>2];c=C(0);if(d){r=z[a+32>>2];H=C(q*r);s=z[a+40>>2];F=C(q*s);t=z[a+36>>2];G=C(q*t);i=0;while(1){f=(i<<2)+J|0;e=z[f>>2];h=C(-e);I=f;f=E+B(i,48)|0;u=z[f+44>>2];y=z[f>>2];A=z[f+4>>2];M=z[f+8>>2];N=C(z[f+36>>2]-C(z[f+32>>2]*C(C(C(C(r*p)+C(m*y))+C(C(t*o)+C(l*A)))+C(C(s*n)+C(k*M)))));h=C(e+(hu?u:h;z[I>>2]=h;c=C(c+h);e=C(h-e);n=C(n+C(F*e));o=C(o+C(G*e));p=C(p+C(H*e));e=C(L*e);k=C(k+C(M*e));l=C(l+C(A*e));m=C(m+C(y*e));i=i+1|0;if((d|0)!=(i|0)){continue}break}}f=K+P|0;if(!(!w[b|0]|!j)){H=C(c*z[a+16>>2]);E=j>>>0>1?j:1;e=C(c*z[a+20>>2]);h=C(-e);i=0;j=0;while(1){d=(i<<6)+K|0;s=z[d+12>>2];c=z[d+28>>2];F=z[d>>2];t=z[d+16>>2];G=z[d+4>>2];u=z[d+20>>2];y=z[d+8>>2];A=z[d+24>>2];c=C(C(s-C(c*C(z[d+44>>2]-z[d+48>>2])))-C(c*C(C(C(C(p*F)+C(m*t))+C(C(o*G)+C(l*u)))+C(C(n*y)+C(k*A)))));r=cr?r:e:c;z[I+12>>2]=c;c=C(c-s);n=C(n+C(C(q*y)*c));o=C(o+C(C(q*G)*c));p=C(p+C(C(q*F)*c));c=C(L*c);k=C(k+C(A*c));l=C(l+C(u*c));m=C(m+C(t*c));j=0-(d|(j|0)!=0)|0;i=i+1|0;if((E|0)!=(i|0)){continue}break}v[a+52>>2]=j}if(f>>>0>>0){continue}break}}z[g+24>>2]=k;z[g+20>>2]=l;z[g+16>>2]=m;z[g+8>>2]=n;z[g+4>>2]=o;z[g>>2]=p}function LE(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=xa-16|0;xa=j;c=v[a+20>>2];if(c){g=v[32386];h=v[a+16>>2];while(1){d=v[h+(b<<2)>>2];e=v[a+4>>2]+(d>>>3&536870908)|0;i=v[e>>2];l=e,m=Vaa(-2,d)&i,v[l>>2]=m;e=v[a>>2];d=Ba[v[v[e>>2]+40>>2]](e,d,j+12|0)|0;Ba[g|0](v[j+12>>2],v[d>>2],v[d+4>>2]);b=b+1|0;if((c|0)!=(b|0)){continue}break}b=v[a>>2];Ba[v[v[b>>2]+8>>2]](b,h,c);v[a+20>>2]=0;v[a+32>>2]=c+v[a+32>>2]}c=v[a+56>>2];if(c){h=v[a+52>>2];g=v[32387];b=0;while(1){d=v[h+(b<<2)>>2];e=v[a+40>>2]+(d>>>3&536870908)|0;i=v[e>>2];l=e,m=Vaa(-2,d)&i,v[l>>2]=m;e=v[a+36>>2];d=Ba[v[v[e>>2]+40>>2]](e,d,j+12|0)|0;Ba[g|0](v[j+12>>2],v[d>>2],v[d+4>>2]);b=b+1|0;if((c|0)!=(b|0)){continue}break}b=v[a+36>>2];Ba[v[v[b>>2]+8>>2]](b,h,c);v[a+56>>2]=0;v[a+68>>2]=c+v[a+68>>2]}b=0;h=xa-16|0;xa=h;g=v[a+112>>2];a:{if(!g){break a}e=v[a+80>>2];while(1){c=v[a+72>>2];d=e+(b<<3)|0;i=v[d+4>>2];f=v[d>>2];c=v[Ba[v[v[c>>2]+40>>2]](c,i,f,h+12|0)>>2];d=v[c+8>>2];k=v[c+4>>2];eV(v[h+12>>2],k&1?d- -64|0:c+84|0,k&4?d:c+48|0,C(1.0099999904632568));c=v[a+72>>2];Ba[v[v[c>>2]+12>>2]](c,f,i);b=b+1|0;if((g|0)!=(b|0)){continue}break}b=v[a+96>>2];if(!b|!v[a+112>>2]){break a}J9(v[a+88>>2],255,b<<2);b=0;c=v[a+84>>2];e=v[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;v[c+(b<<2)>>2]=f;k=c+(f<<2)|0;f=b|2;v[k>>2]=f;k=c+(f<<2)|0;f=b|3;v[k>>2]=f;b=b+4|0;v[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;v[e>>2]=b;g=g+1|0;if((d|0)!=(g|0)){continue}break}}b=v[a+92>>2]-1|0}else{b=0}v[c+(b<<2)>>2]=-1;v[a+112>>2]=0;v[a+104>>2]=0}xa=h+16|0;xa=j+16|0}function PP(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,w=0;if(c){j=d+144|0;u=j-1|0;w=0-!j|0;while(1){s=p+1|0;a:{if(s>>>0>=c>>>0){break a}o=0;j=0;i=w;m=v[(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=v[a+2384>>2];j=v[h+12>>2]+B(v[h+8>>2],12)|0;l=v[j+4>>2];b:{if(l){v[j+4>>2]=v[l>>2];break b}c:{i=v[j+8>>2];if((i|0)==v[h>>2]){break c}k=v[h+4>>2];v[j+8>>2]=i+1;j=v[j>>2];if(!j){break c}l=j+B(i,k)|0;break b}l=NO(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=v[(p<<2)+b>>2]+d|0;$R(v[f>>2],e,i);h=B(p,24)+g|0;k=v[f>>2];j=v[v[a+1140>>2]+4>>2]+B(v[k+8>>2]&2147483647,24)|0;z[h>>2]=z[j>>2];z[h+4>>2]=z[j+4>>2];z[h+8>>2]=z[j+8>>2];z[h+12>>2]=z[j+12>>2];z[h+16>>2]=z[j+16>>2];z[h+20>>2]=z[j+20>>2];j=v[a+1012>>2];Ba[v[v[j>>2]+16>>2]](j,k+12|0,v[k+32>>2]);v[f>>2]=l;j=((v[i+68>>2]<<2)+a|0)+2676|0;v[j>>2]=v[j>>2]+1;j=v[v[a+976>>2]+1024>>2];Ba[v[v[j>>2]+44>>2]](j,i+32|0);p=s;if((p|0)!=(c|0)){continue}break}}}function ls(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=v[a+8>>2];a:{if(!e){break a}g=v[a+4>>2];if((e|0)!=1){i=e&-2;while(1){h=d<<4;c=g+h|0;z[c>>2]=z[b>>2]+z[c>>2];z[c+4>>2]=z[b+4>>2]+z[c+4>>2];z[c+8>>2]=z[b+8>>2]+z[c+8>>2];c=g+(h|16)|0;z[c>>2]=z[b>>2]+z[c>>2];z[c+4>>2]=z[b+4>>2]+z[c+4>>2];z[c+8>>2]=z[b+8>>2]+z[c+8>>2];d=d+2|0;f=f+2|0;if((i|0)!=(f|0)){continue}break}}if(!(e&1)){break a}d=g+(d<<4)|0;z[d>>2]=z[b>>2]+z[d>>2];z[d+4>>2]=z[b+4>>2]+z[d+4>>2];z[d+8>>2]=z[b+8>>2]+z[d+8>>2]}f=v[a+20>>2];if(f){e=v[a+16>>2];d=0;while(1){c=e+(d<<5)|0;z[c>>2]=z[b>>2]+z[c>>2];z[c+4>>2]=z[b+4>>2]+z[c+4>>2];z[c+8>>2]=z[b+8>>2]+z[c+8>>2];z[c+16>>2]=z[b>>2]+z[c+16>>2];z[c+20>>2]=z[b+4>>2]+z[c+20>>2];z[c+24>>2]=z[b+8>>2]+z[c+24>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}}f=v[a+32>>2];if(f){e=v[a+28>>2];d=0;while(1){c=e+B(d,48)|0;z[c>>2]=z[b>>2]+z[c>>2];z[c+4>>2]=z[b+4>>2]+z[c+4>>2];z[c+8>>2]=z[b+8>>2]+z[c+8>>2];z[c+16>>2]=z[b>>2]+z[c+16>>2];z[c+20>>2]=z[b+4>>2]+z[c+20>>2];z[c+24>>2]=z[b+8>>2]+z[c+24>>2];z[c+32>>2]=z[b>>2]+z[c+32>>2];z[c+36>>2]=z[b+4>>2]+z[c+36>>2];z[c+40>>2]=z[b+8>>2]+z[c+40>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}}c=v[a+44>>2];b:{if(!c){break b}e=v[a+40>>2];d=0;if((c|0)!=1){g=c&-2;f=0;while(1){a=e+B(d,24)|0;z[a>>2]=z[b>>2]+z[a>>2];z[a+4>>2]=z[b+4>>2]+z[a+4>>2];z[a+8>>2]=z[b+8>>2]+z[a+8>>2];a=e+B(d|1,24)|0;z[a>>2]=z[b>>2]+z[a>>2];z[a+4>>2]=z[b+4>>2]+z[a+4>>2];z[a+8>>2]=z[b+8>>2]+z[a+8>>2];d=d+2|0;f=f+2|0;if((g|0)!=(f|0)){continue}break}}if(!(c&1)){break b}a=e+B(d,24)|0;z[a>>2]=z[b>>2]+z[a>>2];z[a+4>>2]=z[b+4>>2]+z[a+4>>2];z[a+8>>2]=z[b+8>>2]+z[a+8>>2]}}function fJ(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=v[c+4>>2];k=w[v[k+44>>2]+9|0]-1>>>0<2?k:0;h=v[d+4>>2];m=w[v[h+44>>2]+9|0]-1>>>0<2?h:0;i=f;f=w[v[d+28>>2]- -64|0];h=w[v[c+28>>2]- -64|0];j=(f|h)&4;t[i|0]=j>>>2;a:{b:{c:{if(j){if(!(f&h&4)){break c}break a}d:{e:{f:{g:{h:{if(k){f=t[v[k+44>>2]+44|0]&1;if(m){break h}if(v[b+24>>2]?f:0){break b}j=v[d+4>>2];i=v[c+4>>2];break g}f=0;if(m){break h}j=v[d+4>>2];i=v[c+4>>2];break d}h=v[b+20>>2];i:{j=t[v[m+44>>2]+44|0]&1;if(!(j?1:f)){break i}if(!(v[b+24>>2]?k:1)){break b}if(!h|!(f&j)){break i}break b}j=v[d+4>>2];i=v[c+4>>2];if(!k){break f}}if(!(t[k+149|0]&1)){break d}f=v[k+28>>2];h=v[j+28>>2];l=f>>>0>>0?f:h;if(!l){break d}f=f>>>0>h>>>0;n=f?k:j;f=v[(f?j:k)+20>>2];while(1){h=v[f>>2];if(w[h+20|0]==4&((n|0)==v[h>>2]|(n|0)==v[h+4>>2])){break e}f=f+4|0;l=l-1|0;if(l){continue}break}break d}if(!(t[m+149|0]&1)){break d}f=v[m+28>>2];h=v[i+28>>2];l=f>>>0>>0?f:h;if(!l){break d}f=f>>>0>h>>>0;n=f?m:i;f=v[(f?i:m)+20>>2];while(1){h=v[f>>2];if(w[h+20|0]==4&((n|0)==v[h>>2]|(n|0)==v[h+4>>2])){break e}f=f+4|0;l=l-1|0;if(l){continue}break}break d}if(w[v[v[h+24>>2]+52>>2]]&8){break d}break b}if(w[v[i+44>>2]+9|0]!=2|w[v[j+44>>2]+9|0]!=2){break c}h=v[i+28>>2];if(!h){break c}f=v[i+20>>2];while(1){i=v[f>>2];if(w[i+20|0]==5&(v[i>>2]==(j|0)|v[i+4>>2]==(j|0))){break a}f=f+4|0;h=h-1|0;if(h){continue}break}}cJ(a,b,c,d,k,m,e,g);return}if((e|0)!=-1){b=v[b+16>>2];v[v[b>>2]+(e<<2)>>2]=v[b+12>>2];v[b+12>>2]=e}v[a>>2]=2;v[a+4>>2]=-1;return}if((e|0)!=-1){b=v[b+16>>2];v[v[b>>2]+(e<<2)>>2]=v[b+12>>2];v[b+12>>2]=e}v[a>>2]=1;v[a+4>>2]=-1}function HX(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0);l=xa-80|0;xa=l;if(b&1024){h=z[e+20>>2];r=z[a+20>>2];j=z[e+24>>2];n=z[a+24>>2];A=w[d+39|0];m=z[e+8>>2];g=z[e+4>>2];s=z[e+16>>2];t=z[a+16>>2];o=z[f>>2];i=z[e>>2];p=z[f+4>>2];k=z[e+12>>2];q=z[f+8>>2];JX(l,c+4|0,c+16|0);a:{if(!A){c=0;break a}j=C(C(n-C(q*C(.009999999776482582)))-j);j=C(j+j);n=C(C(t-C(o*C(.009999999776482582)))-s);n=C(n+n);h=C(C(r-C(p*C(.009999999776482582)))-h);r=C(h+h);s=C(C(m*j)+C(C(i*n)+C(r*g)));h=C(C(k*k)+C(-.5));t=C(C(m*s)+C(C(j*h)-C(k*C(C(i*r)-C(n*g)))));D=C(C(g*s)+C(C(r*h)-C(k*C(C(m*n)-C(j*i)))));n=C(C(i*s)+C(C(n*h)-C(k*C(C(g*j)-C(r*m)))));q=C(q+q);o=C(o+o);p=C(p+p);j=C(C(m*q)+C(C(i*o)+C(p*g)));r=C(C(m*j)+C(C(q*h)-C(k*C(C(i*p)-C(o*g)))));s=C(C(g*j)+C(C(p*h)-C(k*C(C(m*o)-C(q*i)))));o=C(C(i*j)+C(C(o*h)-C(k*C(C(g*q)-C(p*m)))));d=v[d+40>>2];p=z[l+68>>2];q=z[l- -64>>2];j=z[l+60>>2];E=z[l+56>>2];F=z[l+52>>2];G=z[l+48>>2];H=z[l+44>>2];I=z[l+40>>2];m=C(34028234663852886e22);c=0;J=z[l+36>>2];f=0;while(1){b=d+B(f,20)|0;g=z[b+8>>2];i=z[b>>2];k=z[b+4>>2];h=C(C(p*g)+C(C(j*i)+C(q*k)));y=h;L=C(h*h);h=C(C(H*g)+C(C(J*i)+C(I*k)));i=C(C(E*g)+C(C(G*i)+C(F*k)));g=C(C(1)/C(K(C(L+C(C(h*h)+C(i*i))))));k=C(y*g);y=C(z[b+12>>2]*g);h=C(h*g);g=C(i*g);i=C(y+C(C(t*k)+C(C(n*h)+C(D*g))));if(!(i>2]=c;u[a+12>>1]=x[a+12>>1]|1024}xa=l+80|0}function jU(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=xa-16|0;xa=e;b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?26695:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,60,c,8633,288)|0;v[b+4>>2]=0;v[b+8>>2]=0;v[b>>2]=140412;v[b+12>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+24>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=2;c=v[37696];i=b,j=Ba[v[v[c+12>>2]+8>>2]](c+12|0,8,24422,6126,44)|0,v[i+28>>2]=j;a:{b:{c=v[b+36>>2]<<1;c:{if(!c){v[b+40>>2]=0;break c}d=v[37696];i=b,j=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,6126,45)|0,v[i+40>>2]=j;c=v[b+36>>2]<<1;if(c){break b}}v[b+44>>2]=0;c=0;d=0;break a}d=v[37696];i=b,j=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,6126,46)|0,v[i+44>>2]=j;c=v[b+36>>2]<<1;if(!c){c=0;d=0;break a}d=v[37696];c=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,24422,6126,47)|0;d=v[b+36>>2]<<1}v[b+48>>2]=c;J9(v[b+40>>2],255,d);J9(v[b+44>>2],255,v[b+36>>2]<<1);J9(v[b+48>>2],0,v[b+36>>2]<<1);v[b+56>>2]=a;v[e+12>>2]=b;c=v[a+124>>2];d:{if(c>>>0>=(v[a+128>>2]&2147483647)>>>0){b=0;c=v[a+128>>2];f=c&2147483647?c<<1:1;e:{if(!f){break e}c=f<<2;if(!c){break e}b=v[37696];d=b+12|0;b=(j=d,k=c,l=Ba[v[v[b>>2]+20>>2]](b)|0?55703:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}d=v[a+124>>2];h=(d<<2)+b|0;if((d|0)>0){g=v[a+120>>2];c=b;while(1){v[c>>2]=v[g>>2];g=g+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[e+12>>2];f:{if(v[a+128>>2]<0){break f}c=v[a+120>>2];if(!c){break f}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c);d=v[a+124>>2]}v[a+128>>2]=f;v[a+120>>2]=b;v[a+124>>2]=d+1;break d}v[v[a+120>>2]+(c<<2)>>2]=b;v[a+124>>2]=c+1}xa=e+16|0;return v[e+12>>2]}function UL(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;if(!b){if(v[a+8>>2]){e=v[a>>2];b=0;while(1){v[e+(b<<2)>>2]=1073741823;b=b+1|0;if(b>>>0>2]){continue}break}}if(v[a+28>>2]){e=v[a+4>>2];c=v[a>>2];g=v[a+20>>2];b=0;while(1){d=g+(b<<3)|0;d=v[d+4>>2]<<16|v[d>>2];d=(d<<15^-1)+d|0;d=B(d>>10^d,9);d=d>>6^d;d=(d<<11^-1)+d|0;d=c+((v[a+36>>2]&(d>>16^d))<<2)|0;v[e+(b<<2)>>2]=v[d>>2];v[d>>2]=b;b=b+1|0;if(b>>>0>2]){continue}break}}return}b=v[a>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b)}c=v[a+8>>2];v[a+32>>2]=c;v[a+12>>2]=c;b=0;e=c<<2;if(e){c=v[37696]+12|0;g=Ba[v[v[c>>2]+8>>2]](c,e,24422,5684,413)|0;c=v[a+8>>2]}v[a>>2]=g;a:{if(!c){g=0;e=0;break a}while(1){v[(b<<2)+g>>2]=1073741823;b=b+1|0;c=v[a+8>>2];if(b>>>0>>0){continue}break}b=0;g=0;e=c<<3;if(e){c=v[37696]+12|0;g=Ba[v[v[c>>2]+8>>2]](c,e,24422,5684,421)|0;c=v[a+8>>2]}e=c<<2;if(e){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,e,24422,5684,422)|0;c=v[a+8>>2]}e=0;if(!c){break a}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,c,24422,5684,423)|0}c=v[a+28>>2];b:{if(!c){break b}I9(g,v[a+20>>2],c<<3);I9(e,v[a+24>>2],v[a+28>>2]);if(!v[a+28>>2]){break b}d=v[a>>2];h=v[a+20>>2];c=0;while(1){f=(c<<3)+h|0;f=v[f+4>>2]<<16|v[f>>2];f=(f<<15^-1)+f|0;f=B(f>>10^f,9);f=f>>6^f;f=(f<<11^-1)+f|0;f=d+((v[a+36>>2]&(f>>16^f))<<2)|0;v[(c<<2)+b>>2]=v[f>>2];v[f>>2]=c;c=c+1|0;if(c>>>0>2]){continue}break}}c=v[a+4>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c=v[a+20>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c=v[a+24>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+24>>2]=e;v[a+20>>2]=g;v[a+4>>2]=b}function $1(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=0,n=0,o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),E=C(0),F=C(0),G=0,H=C(0),I=C(0);n=xa-1024|0;xa=n;l=v[a+24>>2];b=v[b+40>>2];r=z[b+40>>2];g=z[d+8>>2];s=z[b+8>>2];k=z[d>>2];f=z[d+4>>2];t=z[b+24>>2];i=C(C(r*g)+C(C(s*k)+C(f*t)));u=z[b+32>>2];w=z[b>>2];x=z[b+16>>2];j=C(C(u*g)+C(C(w*k)+C(f*x)));y=z[b+36>>2];A=z[b+4>>2];E=z[b+20>>2];o=C(C(y*g)+C(C(A*k)+C(f*E)));g=C(z[l+12>>2]+C(C(i*z[l+8>>2])+C(C(j*z[l>>2])+C(o*z[l+4>>2]))));p=C(-e);k=p<=g?C(D(g)):C(34028234663852886e22);z[n>>2]=k;b=1;d=0;q=v[a+16>>2];a:{if(q>>>0<=1){a=0;break a}a=0;while(1){m=B(b,20)+l|0;f=C(z[m+12>>2]+C(C(i*z[m+8>>2])+C(C(j*z[m>>2])+C(o*z[m+4>>2]))));h=f>=p?C(D(f)):C(34028234663852886e22);z[(b<<2)+n>>2]=h;m=hg;g=G?f:g;a=m?b:a;d=G?b:d;b=b+1|0;if((q|0)!=(b|0)){continue}break}}b:{if(k==C(34028234663852886e22)){break b}if(!q){d=a;break b}b=B(a,20)+l|0;g=z[b+8>>2];f=z[b>>2];h=z[b+4>>2];i=C(C(r*g)+C(C(u*f)+C(y*h)));j=i;F=C(i*i);i=C(C(s*g)+C(C(w*f)+C(A*h)));g=C(C(t*g)+C(C(x*f)+C(E*h)));f=C(C(1)/C(K(C(F+C(C(i*i)+C(g*g))))));o=z[c+8>>2];p=z[c>>2];H=z[c+4>>2];g=C(C(C(j*f)*o)+C(C(C(i*f)*p)+C(H*C(g*f))));b=0;d=a;while(1){if(!(!(C(z[(b<<2)+n>>2]-k)>2];h=z[c>>2];i=z[c+4>>2];j=C(C(r*f)+C(C(u*h)+C(y*i)));F=j;I=C(j*j);j=C(C(s*f)+C(C(w*h)+C(A*i)));f=C(C(t*f)+C(C(x*h)+C(E*i)));h=C(C(1)/C(K(C(I+C(C(j*j)+C(f*f))))));f=C(C(C(F*h)*o)+C(C(C(j*h)*p)+C(H*C(f*h))));c=f>2];i=!v[d>>2]&(h|0)!=0;if(i){v[c>>2]=1;c=h<<2;if(c){e=v[37696];e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,c,24422,12194,273)|0}v[d>>2]=e;c=0;d=0;if(h-1>>>0>=7){k=h&-8;while(1){v[(d<<2)+e>>2]=d;f=d|1;v[(f<<2)+e>>2]=f;f=d|2;v[(f<<2)+e>>2]=f;f=d|3;v[(f<<2)+e>>2]=f;f=d|4;v[(f<<2)+e>>2]=f;f=d|5;v[(f<<2)+e>>2]=f;f=d|6;v[(f<<2)+e>>2]=f;f=d|7;v[(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){v[(d<<2)+e>>2]=d;d=d+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}c=v[a>>2];e=xa-16|0;xa=e;d=(h<<1)-1|0;if(d>>>0>=1025){d=(d>>>0)/(c>>>0)|0}g=v[37696];c=Saa(d,0,36,0);f=c+4|0;g=(r=g+12|0,s=Aa?-1:c>>>0>f>>>0?-1:f,t=Ba[v[v[g>>2]+20>>2]](g)|0?44781:63804,u=12194,w=67,q=v[v[g+12>>2]+8>>2],Ba[q](r|0,s|0,t|0,u|0,w|0)|0);v[g>>2]=d;g=g+4|0;v[b>>2]=g;J9(g,0,c);c=v[b>>2];v[c+32>>2]=h;v[c+28>>2]=0;v[e+8>>2]=d;v[e+4>>2]=1;v[e>>2]=c;c=v[b+8>>2];a:{if(c>>>0>=(v[b+12>>2]&2147483647)>>>0){rY(b+4|0,e);break a}d=v[e+4>>2];c=v[b+4>>2]+B(c,12)|0;v[c>>2]=v[e>>2];v[c+4>>2]=d;v[c+8>>2]=v[e+8>>2];v[b+8>>2]=v[b+8>>2]+1}v[b+16>>2]=0;v[b+20>>2]=1;xa=e+16|0;e=0;g=0;b=B(h,12)+12|0;if(b){c=v[37696];g=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,12194,282)|0}v[a+12>>2]=g;c=h>>>0>1?h:1;d=v[a+8>>2];while(1){a=d+B(e,24)|0;l=z[a+4>>2];m=z[a+16>>2];n=z[a+8>>2];o=z[a+20>>2];p=z[a+24>>2];b=B(e,12)+g|0;j=z[a+12>>2];z[b>>2]=C(z[a>>2]+j)*C(.5);z[b+12>>2]=C(j+p)*C(.5);z[b+8>>2]=C(n+o)*C(.5);z[b+4>>2]=C(l+m)*C(.5);e=e+1|0;if((c|0)!=(e|0)){continue}break}}return i}function Wu(a){var b=0,c=0,d=0,e=0,f=0;if(v[a+4928>>2]){while(1){Xu(v[v[a+4896>>2]+(b<<2)>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}if(v[a+4968>>2]){b=0;while(1){Xu(v[v[a+4936>>2]+(b<<2)>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}a:{if(!v[a+5008>>2]){break a}d=a+16|0;b=0;while(1){c=v[v[a+4976>>2]+(b<<2)>>2];b:{if(y[c+4>>2]<3221225472){break b}nP(d,c+12|0);if(w[c+7|0]&16){break b}Tu(c)}b=b+1|0;c=v[a+5008>>2];if(b>>>0>>0){continue}break}if(!c){break a}d=v[a+4976>>2];b=0;while(1){e=v[d+(b<<2)>>2];if((v[e+4>>2]&268435457)==268435457){yH(e+12|0);c=v[a+5008>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}c=v[a+5088>>2];if(c){b=0;while(1){d=v[v[a+5056>>2]+(b<<2)>>2];if(y[d+4>>2]>=3221225472){rP(d+12|0);c=v[a+5088>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}c=v[a+4928>>2];if(c){d=a+16|0;b=0;while(1){e=v[v[a+4896>>2]+(b<<2)>>2];f=v[e+4>>2];if(f>>>0>=3221225472){Du(d,e,(f&16)>>>4|0);c=v[a+4928>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}if(v[a+4968>>2]){d=a+16|0;b=0;while(1){c=v[v[a+4936>>2]+(b<<2)>>2];e=v[c+4>>2];c:{if(e>>>0<3221225472){break c}Gu(d,c,(e&16)>>>4|0);if(w[c+7|0]&16){break c}Su(c)}b=b+1|0;if(b>>>0>2]){continue}break}}if(v[a+5048>>2]){d=a+16|0;b=0;while(1){c=v[v[a+5016>>2]+(b<<2)>>2];e=v[c+4>>2];d:{if(e>>>0<3221225472){break d}v[c+4>>2]=e&-769;pP(d,c+12|0);if(w[c+7|0]&16){break d}Uu(c)}b=b+1|0;if(b>>>0>2]){continue}break}}c=v[a+5128>>2];if(c){e=a+16|0;b=0;while(1){d=v[v[a+5096>>2]+(b<<2)>>2];if(y[d+4>>2]>=3221225472){Ru(d,a);WP(e,v[d+16>>2]);c=v[a+5128>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}}function R6(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=xa-1040|0;xa=f;a=4767;a:{b:{c:{switch(b+1|0){case 5:a=4947;break b;case 9:a=14503;break b;case 17:a=1467;break b;case 2:a=14161;break b;case 3:a=20176;break b;default:if((b|0)!=128){break a}a=20164;break b;case 65:a=2139;break b;case 33:a=4790;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=4776}v[f>>2]=d;v[f+4>>2]=e;v[f+8>>2]=a;v[f+12>>2]=c;d=xa-16|0;xa=d;v[d+12>>2]=f;a=xa-160|0;xa=a;g=a+8|0;I9(g,109632,144);c=f+16|0;v[a+52>>2]=c;v[a+28>>2]=c;e=-2-c|0;e=e>>>0>2147483647?2147483647:e;v[a+56>>2]=e;h=c+e|0;v[a+36>>2]=h;v[a+24>>2]=h;Y9(g,77696,f,0,0);if(e){e=v[a+28>>2];t[e-((e|0)==v[a+24>>2])|0]=0}xa=a+160|0;xa=d+16|0;P9(c);if((b|0)!=64){break a}while(1){P9(f+16|0);c=xa-16|0;xa=c;v[c+12>>2]=0;v[c+8>>2]=1e3;while(1){d=xa-16|0;xa=d;b=28;a=c+8|0;d:{if(!a){break d}e=v[a+4>>2];if(e>>>0>999999999){break d}a=v[a>>2];if((a|0)<0){break d}i=+(a|0)*1e3+ +(e|0)/1e6;j=+ra();while(1){if(+ra()-j>>0>=4294963201){v[37699]=0-a;a=-1}if((a|0)==-1){continue}break}xa=c+16|0;continue}}xa=f+1040|0}function JV(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);o=xa-32|0;xa=o;a:{b:{switch(g-1|0){case 0:a=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=a;a=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=a;a=v[c+4>>2];v[f>>2]=v[c>>2];v[f+4>>2]=a;a=v[c+12>>2];v[f+8>>2]=v[c+8>>2];v[f+12>>2]=a;break a;case 1:i=z[d>>2];h=C(z[a>>2]-i);j=z[d+4>>2];l=C(z[a+4>>2]-j);k=z[d+8>>2];m=C(z[a+8>>2]-k);k=C(C(z[a+24>>2]-k)-m);i=C(C(z[a+16>>2]-i)-h);j=C(C(z[a+20>>2]-j)-l);n=C(C(k*k)+C(C(i*i)+C(j*j)));z[o+16>>2]=C(C(C(C(-h)*i)-C(j*l))-C(m*k))*(n>C(0)?C(C(1)/n):C(0));p=z[c+20>>2];q=z[c+24>>2];r=z[b+20>>2];s=z[b+24>>2];l=z[c>>2];t=z[c+16>>2];m=z[c+4>>2];k=z[c+8>>2];i=z[b>>2];u=z[b+16>>2];j=z[b+4>>2];n=z[b+8>>2];h=z[o+16>>2];v[e+12>>2]=0;z[e+8>>2]=n+C(h*C(s-n));z[e+4>>2]=j+C(h*C(r-j));z[e>>2]=i+C(h*C(u-i));v[f+12>>2]=0;z[f+8>>2]=k+C(h*C(q-k));z[f+4>>2]=m+C(h*C(p-m));z[f>>2]=l+C(h*C(t-l));break a;case 2:break b;default:break a}}fZ(d,a,a+16|0,a+32|0,o+16|0,o);q=z[c+20>>2];r=z[c+36>>2];s=z[c+24>>2];t=z[c+40>>2];u=z[b+20>>2];w=z[b+36>>2];x=z[b+24>>2];y=z[b+40>>2];A=z[c+16>>2];B=z[c+32>>2];m=z[c>>2];k=z[c+4>>2];i=z[c+8>>2];D=z[b+16>>2];E=z[b+32>>2];j=z[b>>2];n=z[b+4>>2];p=z[b+8>>2];h=z[o+16>>2];l=z[o>>2];v[e+12>>2]=0;z[e+8>>2]=p+C(C(h*C(x-p))+C(l*C(y-p)));z[e+4>>2]=n+C(C(h*C(u-n))+C(l*C(w-n)));z[e>>2]=j+C(C(h*C(D-j))+C(l*C(E-j)));v[f+12>>2]=0;z[f+8>>2]=i+C(C(h*C(s-i))+C(l*C(t-i)));z[f+4>>2]=k+C(C(h*C(q-k))+C(l*C(r-k)));z[f>>2]=m+C(C(h*C(A-m))+C(l*C(B-m)))}xa=o+32|0}function yX(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0);f=z[c+12>>2];m=C(f+f);e=z[c+20>>2];A=C(m*e);n=z[c+16>>2];g=C(n+n);q=z[c+24>>2];i=C(g*q);d=C(A+i);r=z[c>>2];s=C(d*r);j=C(g*e);B=C(m*q);o=C(j-B);t=z[c+4>>2];E=C(o*t);u=C(C(1)-C(f*m));D=C(n*g);g=C(u-D);v=z[c+8>>2];F=C(g*v);w=z[b>>2];p=C(w+w);f=z[b+8>>2];I=C(p*f);h=z[b+4>>2];x=C(h+h);k=z[b+12>>2];J=C(x*k);G=C(I-J);K=C(C(1)-C(w*p));L=C(h*x);w=C(K-L);y=C(C(C(d*s)+C(o*E))+C(g*F));l=C(e+e);M=C(e*l);e=C(C(C(1)-D)-M);D=C(r*e);N=C(m*n);l=C(l*q);m=C(N+l);q=C(m*t);n=C(A-i);A=C(n*v);i=C(C(C(d*D)+C(o*q))+C(g*A));O=C(x*f);P=C(p*k);x=C(O+P);H=d;d=C(N-l);r=C(r*d);l=o;o=C(u-M);t=C(o*t);u=g;g=C(j+B);v=C(g*v);j=C(C(C(H*r)+C(l*t))+C(u*v));z[a+32>>2]=C(w*y)+C(C(G*i)+C(x*j));B=C(O-P);u=C(p*h);h=C(f+f);l=C(k*h);p=C(u+l);k=C(f*h);f=C(K-k);z[a+28>>2]=C(B*y)+C(C(p*i)+C(f*j));h=C(I+J);H=C(h*y);k=C(C(C(1)-L)-k);y=C(u-l);z[a+24>>2]=H+C(C(k*i)+C(y*j));i=C(C(C(d*s)+C(o*E))+C(g*F));j=C(C(C(d*D)+C(o*q))+C(g*A));d=C(C(C(d*r)+C(o*t))+C(g*v));z[a+20>>2]=C(w*i)+C(C(G*j)+C(x*d));z[a+16>>2]=C(B*i)+C(C(p*j)+C(f*d));z[a+12>>2]=C(h*i)+C(C(k*j)+C(y*d));d=C(C(C(e*s)+C(m*E))+C(n*F));s=C(C(C(e*D)+C(m*q))+C(n*A));e=C(C(C(e*r)+C(m*t))+C(n*v));z[a+8>>2]=C(w*d)+C(C(G*s)+C(x*e));z[a+4>>2]=C(B*d)+C(C(p*s)+C(f*e));z[a>>2]=C(h*d)+C(C(k*s)+C(y*e));z[a+36>>2]=z[b+16>>2];z[a+40>>2]=z[b+20>>2];z[a+44>>2]=z[b+24>>2]}function NP(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=xa-16|0;xa=m;g=v[a+2392>>2];h=v[g+12>>2]+B(v[g+8>>2],12)|0;j=v[h+4>>2];a:{if(j){v[h+4>>2]=v[j>>2];break a}b:{j=v[h+8>>2];if((j|0)==v[g>>2]){break b}k=v[g+4>>2];v[h+8>>2]=j+1;h=v[h>>2];if(!h){break b}j=h+B(j,k)|0;break a}j=NO(g)}h=$G(j,a,b,f);c:{if(!(w[v[h+100>>2]+28|0]&32)|y[h+152>>2]>4294967293){break c}d:{if(w[v[h+44>>2]+9|0]==2){j=v[h+144>>2];if(j>>>0>4294967167){break c}f=j>>>7|0;k=f+32>>>5|0;if(k>>>0<=(v[a+4740>>2]&2147483647)>>>0){g=v[a+4736>>2];break d}g=v[37696]+12|0;g=Ba[v[v[g>>2]+8>>2]](g,k<<2,24422,17999,438)|0;i=v[a+4736>>2];e:{if(!i){break e}I9(g,i,v[a+4740>>2]<<2);if(v[a+4740>>2]<0){break e}i=v[a+4736>>2];if(!i){break e}l=v[37696]+12|0;Ba[v[v[l>>2]+12>>2]](l,i)}i=v[a+4740>>2];J9((i<<2)+g|0,0,k-i<<2);v[a+4740>>2]=k;v[a+4736>>2]=g;break d}j=v[h+144>>2];f=j>>>7|0;k=f+32>>>5|0;if(k>>>0<=(v[a+4728>>2]&2147483647)>>>0){g=v[a+4724>>2];break d}g=v[37696]+12|0;g=Ba[v[v[g>>2]+8>>2]](g,k<<2,24422,17999,438)|0;i=v[a+4724>>2];f:{if(!i){break f}I9(g,i,v[a+4728>>2]<<2);if(v[a+4728>>2]<0){break f}i=v[a+4724>>2];if(!i){break f}l=v[37696]+12|0;Ba[v[v[l>>2]+12>>2]](l,i)}i=v[a+4728>>2];J9((i<<2)+g|0,0,k-i<<2);v[a+4728>>2]=k;v[a+4724>>2]=g}g=(j>>>10&4194300)+g|0;v[g>>2]=v[g>>2]|1<>2];if(g>>>0<=4294967167){f=v[a+1012>>2];v[m+8>>2]=g;Ba[v[v[f>>2]+24>>2]](f,h- -64|0,m+8|0)}g:{h:{if(!v[b+176>>2]|w[v[b+176>>2]+31|0]!=1){break h}b=v[b+176>>2];if(w[(w[b+31|0]==1?b:0)+31|0]!=1){break h}v[a+2672>>2]=v[a+2672>>2]+1;break g}v[a+2668>>2]=v[a+2668>>2]+1}IP(a,c,d,h,e);xa=m+16|0}function lC(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=C(0),l=C(0),m=0;m=(g|0)==1?2:1;i=v[c>>2];a:{if(!i){v[d>>2]=0;v[d+4>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;break a}h=v[c+20>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;kC(d,z[c+48>>2],z[(c+48|0)+(m<<2)>>2],i,j,h,a,b,0,g);I9(j,a,i<<5);I9(h,b,i<<3)}i=v[c+4>>2];b:{if(i){h=c+80|0;k=z[h>>2];l=z[h+(m<<2)>>2];h=v[c+24>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;kC(d+224|0,k,l,i,j,h,a,b,0,g);I9(j,a,i<<5);I9(h,b,i<<3);break b}v[d+224>>2]=0;v[d+228>>2]=0;v[d+256>>2]=0;v[d+260>>2]=0;v[d+248>>2]=0;v[d+252>>2]=0;v[d+240>>2]=0;v[d+244>>2]=0;v[d+232>>2]=0;v[d+236>>2]=0}i=v[c+8>>2];c:{if(i){h=c+112|0;k=z[h>>2];l=z[h+(m<<2)>>2];h=v[c+28>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;kC(d+448|0,k,l,i,j,h,a,b,0,g);I9(j,a,i<<5);I9(h,b,i<<3);break c}v[d+448>>2]=0;v[d+452>>2]=0;v[d+480>>2]=0;v[d+484>>2]=0;v[d+472>>2]=0;v[d+476>>2]=0;v[d+464>>2]=0;v[d+468>>2]=0;v[d+456>>2]=0;v[d+460>>2]=0}i=v[c+12>>2];d:{if(i){h=c+144|0;k=z[h>>2];l=z[h+(m<<2)>>2];h=v[c+32>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;kC(d+672|0,k,l,i,j,h,a,b,0,g);I9(j,a,i<<5);I9(h,b,i<<3);break d}v[d+672>>2]=0;v[d+676>>2]=0;v[d+704>>2]=0;v[d+708>>2]=0;v[d+696>>2]=0;v[d+700>>2]=0;v[d+688>>2]=0;v[d+692>>2]=0;v[d+680>>2]=0;v[d+684>>2]=0}i=v[c+16>>2];if(i){h=d+896|0;d=c+176|0;k=z[d>>2];l=z[d+(m<<2)>>2];c=v[c+36>>2];d=(c<<5)+e|0;c=(c<<3)+f|0;kC(h,k,l,i,d,c,a,b,1,g);I9(d,a,i<<5);I9(c,b,i<<3);return}v[d+896>>2]=0;v[d+900>>2]=0;v[d+928>>2]=0;v[d+932>>2]=0;v[d+920>>2]=0;v[d+924>>2]=0;v[d+912>>2]=0;v[d+916>>2]=0;v[d+904>>2]=0;v[d+908>>2]=0}function Dn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=b;g=xa-16|0;xa=g;h=v[37389];a=v[h+1856>>2];if(!a){j=xa-16|0;xa=j;e=h+1568|0;b=v[e+284>>2];if(b){a=v[37696];d=Ba[v[v[a>>2]+20>>2]](a)|0?41541:63804;i=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,d,18373,180)|0}else{i=0}v[j+12>>2]=i;a=v[e+268>>2];a:{if(a>>>0>=(v[e+272>>2]&2147483647)>>>0){a=0;d=e+4|0;b=v[d+268>>2];k=b&2147483647?b<<1:1;b:{if(!k){break b}b=k<<2;if(!(w[d+256|0]|b>>>0>256)){t[d+256|0]=1;a=d;break b}if(!b){break b}a=v[37696];f=Ba[v[v[a>>2]+20>>2]](a)|0?41541:63804;a=Ba[v[v[a+12>>2]+8>>2]](a+12|0,b,f,16608,553)|0}f=v[d+264>>2];n=(f<<2)+a|0;if((f|0)>0){l=v[d+260>>2];b=a;while(1){v[b>>2]=v[l>>2];l=l+4|0;b=b+4|0;if(n>>>0>b>>>0){continue}break}}v[n>>2]=v[j+12>>2];c:{if(v[d+268>>2]<0){break c}b=v[d+260>>2];if((b|0)==(d|0)){t[d+256|0]=0;break c}if(!b){break c}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,b);f=v[d+264>>2]}v[d+268>>2]=k;v[d+260>>2]=a;v[d+264>>2]=f+1;break a}v[v[e+264>>2]+(a<<2)>>2]=i;v[e+268>>2]=a+1}a=(B(v[e+276>>2],44)+i|0)-44|0;if(i>>>0<=a>>>0){b=v[e+288>>2];while(1){v[a>>2]=b;b=a;a=a-44|0;if(i>>>0<=a>>>0){continue}break}v[e+288>>2]=b}xa=j+16|0;a=v[h+1856>>2]}v[h+1856>>2]=v[a>>2];b=h+1848|0;v[b>>2]=v[b>>2]+1;v[a+4>>2]=196618;v[a+36>>2]=0;v[a+8>>2]=0;v[a+12>>2]=150994944;t[a+32|0]=c;v[a+28>>2]=m;v[a+24>>2]=-1;v[a+20>>2]=a;v[a+16>>2]=0;v[a>>2]=118148;b=m<<2;if(b){c=v[37696];b=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,11066,60)|0}else{b=0}v[a+40>>2]=b;v[g+8>>2]=a;b=Nm(h+480|0,g+8|0,g+15|0);if(!w[g+15|0]){v[b>>2]=v[g+8>>2]}xa=g+16|0;return a|0}function Sw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0),W=C(0),X=C(0),Y=C(0);c=xa-32|0;xa=c;a=v[a+336>>2]+B(b,192)|0;l=z[a+164>>2];m=z[a+100>>2];n=z[a+68>>2];o=z[a+36>>2];p=z[a+132>>2];q=z[a+168>>2];r=z[a+104>>2];s=z[a+72>>2];t=z[a+40>>2];u=z[a+136>>2];w=z[a+176>>2];x=z[a+112>>2];y=z[a+80>>2];A=z[a+48>>2];D=z[a+144>>2];E=z[a+180>>2];F=z[a+116>>2];G=z[a+84>>2];H=z[a+20>>2];I=z[a+52>>2];J=z[a+148>>2];K=z[a+184>>2];L=z[a+120>>2];M=z[a+88>>2];N=z[a+24>>2];O=z[a+56>>2];P=z[a+152>>2];f=z[d+24>>2];g=z[d+20>>2];Q=z[a+4>>2];R=z[a+8>>2];S=z[a+16>>2];T=z[a+160>>2];U=z[a+128>>2];h=z[d+16>>2];V=z[a+96>>2];i=z[d+8>>2];W=z[a+64>>2];j=z[d>>2];X=z[a>>2];k=z[d+4>>2];Y=z[a+32>>2];v[c+28>>2]=0;v[c+12>>2]=0;z[c>>2]=C(C(C(C(C(X*j)+C(Y*k))+C(W*i))+C(V*h))+C(U*g))+C(T*f);z[c+24>>2]=C(C(C(C(C(N*j)+C(O*k))+C(M*i))+C(L*h))+C(P*g))+C(K*f);z[c+20>>2]=C(C(C(C(C(H*j)+C(I*k))+C(G*i))+C(F*h))+C(J*g))+C(E*f);z[c+16>>2]=C(C(C(C(C(S*j)+C(A*k))+C(y*i))+C(x*h))+C(D*g))+C(w*f);z[c+8>>2]=C(C(C(C(C(R*j)+C(t*k))+C(s*i))+C(r*h))+C(u*g))+C(q*f);z[c+4>>2]=C(C(C(C(C(Q*j)+C(o*k))+C(n*i))+C(m*h))+C(p*g))+C(l*f);a=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=a;a=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=a;a=v[c+4>>2];v[e+16>>2]=v[c>>2];v[e+20>>2]=a;a=v[c+12>>2];v[e+24>>2]=v[c+8>>2];v[e+28>>2]=a;xa=c+32|0}function y7(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=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0);c=xa-176|0;xa=c;v[c+60>>2]=a;v[c+56>>2]=a;a=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=a;a=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=a;E5(c+144|0,c+112|0,e,f,g);n=z[f+20>>2];o=z[f+16>>2];k=z[c+132>>2];l=z[c+128>>2];m=z[c+136>>2];z[b+8>>2]=m-z[f+24>>2];z[b+4>>2]=k-n;z[b>>2]=l-o;n=z[f+20>>2];o=z[f+16>>2];z[c+72>>2]=m-z[f+24>>2];z[c+68>>2]=k-n;z[c+64>>2]=l-o;n=z[g+20>>2];o=z[g+24>>2];p=z[g+16>>2];q=z[c+164>>2];z[c+92>>2]=q;z[c+108>>2]=m;z[c+104>>2]=k;r=z[c+168>>2];z[c+96>>2]=r;z[c+84>>2]=m-o;z[c+80>>2]=k-n;t=z[c+160>>2];z[c+88>>2]=t;z[c+100>>2]=l;z[c+76>>2]=l-p;n=z[c+156>>2];u=z[c+124>>2];o=z[c+152>>2];w=z[c+120>>2];p=z[c+144>>2];x=z[c+112>>2];s=z[c+148>>2];y=z[c+116>>2];if(C(C(n*u)+C(C(o*w)+C(C(p*x)+C(s*y))))>2]=-u;z[c+120>>2]=-w;z[c+116>>2]=-y;z[c+112>>2]=-x}m=C(m-r);m=C(m+m);l=C(l-t);l=C(l+l);k=C(k-q);k=C(k+k);q=C(C(o*m)+C(C(p*l)+C(s*k)));r=C(C(n*n)+C(-.5));z[c+16>>2]=C(o*q)+C(C(m*r)-C(n*C(C(p*k)-C(l*s))));z[c+12>>2]=C(s*q)+C(C(k*r)-C(n*C(C(o*l)-C(m*p))));z[c+8>>2]=C(p*q)+C(C(l*r)-C(n*C(C(s*m)-C(k*o))));I5(c+56|0,c+144|0,c+112|0,c+8|0,7,7,c+40|0,c+24|0);k=z[f+16>>2];l=z[f+20>>2];n=z[c+40>>2];m=z[c+44>>2];z[i+8>>2]=z[c+48>>2]+z[f+24>>2];z[i+4>>2]=m+l;z[i>>2]=n+k;k=z[g+16>>2];l=z[g+20>>2];n=z[c+24>>2];m=z[c+28>>2];z[j+8>>2]=z[c+32>>2]+z[g+24>>2];z[j+4>>2]=m+l;z[j>>2]=n+k;xa=c+176|0;return(v[c+60>>2]-v[c+56>>2]|0)/80|0}function t2(a,b,c,d){var e=0,f=0,g=0,h=0;a:{if(c>>>0<=4){if(!c){break a}f=v[b+4>>2];e=v[a+76>>2];v[e>>2]=v[b>>2];v[e+4>>2]=f;f=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=f;f=v[b+20>>2];e=v[a+76>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=f;f=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=f;f=v[b+36>>2];e=v[a+76>>2];v[e+32>>2]=v[b+32>>2];v[e+36>>2]=f;f=v[b+44>>2];v[e+40>>2]=v[b+40>>2];v[e+44>>2]=f;if((c|0)==1){break a}f=v[b+52>>2];e=v[a+76>>2];v[e+48>>2]=v[b+48>>2];v[e+52>>2]=f;f=v[b+60>>2];v[e+56>>2]=v[b+56>>2];v[e+60>>2]=f;g=b- -64|0;h=v[g+4>>2];e=v[a+76>>2];f=e- -64|0;v[f>>2]=v[g>>2];v[f+4>>2]=h;f=v[b+76>>2];v[e+72>>2]=v[b+72>>2];v[e+76>>2]=f;f=v[b+84>>2];e=v[a+76>>2];v[e+80>>2]=v[b+80>>2];v[e+84>>2]=f;f=v[b+92>>2];v[e+88>>2]=v[b+88>>2];v[e+92>>2]=f;if((c|0)==2){break a}f=v[b+100>>2];e=v[a+76>>2];v[e+96>>2]=v[b+96>>2];v[e+100>>2]=f;f=v[b+108>>2];v[e+104>>2]=v[b+104>>2];v[e+108>>2]=f;f=v[b+116>>2];e=v[a+76>>2];v[e+112>>2]=v[b+112>>2];v[e+116>>2]=f;f=v[b+124>>2];v[e+120>>2]=v[b+120>>2];v[e+124>>2]=f;f=v[b+132>>2];e=v[a+76>>2];v[e+128>>2]=v[b+128>>2];v[e+132>>2]=f;f=v[b+140>>2];v[e+136>>2]=v[b+136>>2];v[e+140>>2]=f;if((c|0)==3){break a}f=v[b+148>>2];e=v[a+76>>2];v[e+144>>2]=v[b+144>>2];v[e+148>>2]=f;f=v[b+156>>2];v[e+152>>2]=v[b+152>>2];v[e+156>>2]=f;f=v[b+164>>2];e=v[a+76>>2];v[e+160>>2]=v[b+160>>2];v[e+164>>2]=f;f=v[b+172>>2];v[e+168>>2]=v[b+168>>2];v[e+172>>2]=f;f=v[b+180>>2];e=v[a+76>>2];v[e+176>>2]=v[b+176>>2];v[e+180>>2]=f;f=v[b+188>>2];v[e+184>>2]=v[b+184>>2];v[e+188>>2]=f;t[a+64|0]=c;return}u2(a,b,c,d);c=4}t[a+64|0]=c}function ID(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0;q=v[b+4>>2];r=v[b>>2];e=z[b+8>>2];v[a+28>>2]=0;z[a+24>>2]=e;v[a+16>>2]=r;v[a+20>>2]=q;e=z[d+8>>2];f=z[d+4>>2];g=z[d>>2];z[a>>2]=g;z[a+4>>2]=f;v[a+12>>2]=0;z[a+8>>2]=e;h=z[c+16>>2];i=z[c+28>>2];j=z[c+20>>2];k=z[c+32>>2];l=z[c>>2];m=z[c+12>>2];n=z[c+24>>2];o=z[c+4>>2];p=z[c+8>>2];v[a+188>>2]=0;v[a+172>>2]=0;v[a+156>>2]=0;v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;v[a+92>>2]=0;v[a+76>>2]=0;z[a+72>>2]=k;z[a+68>>2]=j;z[a- -64>>2]=p;v[a+60>>2]=0;z[a+56>>2]=i;z[a+52>>2]=h;z[a+48>>2]=o;v[a+44>>2]=0;z[a+40>>2]=n;z[a+36>>2]=m;z[a+32>>2]=l;k=C((k>C(0)?k:C(-k))+C(9.999999974752427e-7));z[a+120>>2]=k;j=C((j>C(0)?j:C(-j))+C(9.999999974752427e-7));z[a+116>>2]=j;p=C((p>C(0)?p:C(-p))+C(9.999999974752427e-7));z[a+112>>2]=p;i=C((i>C(0)?i:C(-i))+C(9.999999974752427e-7));z[a+104>>2]=i;h=C((h>C(0)?h:C(-h))+C(9.999999974752427e-7));z[a+100>>2]=h;o=C((o>C(0)?o:C(-o))+C(9.999999974752427e-7));z[a+96>>2]=o;n=C((n>C(0)?n:C(-n))+C(9.999999974752427e-7));z[a+88>>2]=n;m=C((m>C(0)?m:C(-m))+C(9.999999974752427e-7));z[a+84>>2]=m;l=C((l>C(0)?l:C(-l))+C(9.999999974752427e-7));z[a+80>>2]=l;z[a+184>>2]=C(f*p)+C(g*j);z[a+180>>2]=C(e*p)+C(g*k);z[a+176>>2]=C(e*j)+C(f*k);z[a+168>>2]=C(f*o)+C(g*h);z[a+164>>2]=C(e*o)+C(g*i);z[a+160>>2]=C(e*h)+C(f*i);z[a+152>>2]=C(f*l)+C(g*m);z[a+148>>2]=C(e*l)+C(g*n);z[a+144>>2]=C(e*m)+C(f*n);z[a+136>>2]=C(k*e)+C(C(p*g)+C(f*j));z[a+132>>2]=C(i*e)+C(C(o*g)+C(f*h));z[a+128>>2]=C(n*e)+C(C(l*g)+C(f*m));return a}function Ut(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=xa-16|0;xa=f;c=w[b|0];g=v[a+116>>2]-5|0;a:{if(!(!(c&4)|g>>>0>1)){b9(v[37696],4,11562,545,74822,0);break a}if((c&5)==5){b9(v[37696],4,11562,552,65471,0);break a}h=w[(w[a+36|0]&64?v[a+40>>2]+52|0:a+112|0)|0];b:{d=v[a+20>>2];if(!d){break b}e=x[d+4>>1];if((e|0)==5){Ba[v[v[d>>2]+216>>2]](f,d);i=t[f|0]&1}if(!(c&1)|h&1|(i|(e|0)==6)){break b}if(v[a+116>>2]!=1&g>>>0>=2){break b}b9(v[37696],4,11562,576,76329,0);break a}g=w[b|0];t[f+8|0]=g;d=a+48|0;c=xa-16|0;xa=c;c:{d:{e:{f:{b=a+32|0;e=v[b+4>>2];i=e>>>30|0;switch(i-2|0){case 0:break f;case 1:break d;default:break e}}if(w[v[b>>2]+4785|0]){break d}}e=d- -64|0;j=w[e|0];t[e|0]=w[f+8|0];b=v[b-12>>2];if(!b){break c}g:{h:{switch(x[b+4>>1]-5|0){case 0:b=b- -64|0;break g;case 8:b=b- -64|0;break g;default:break h}}b=b- -64|0}if((i|0)==1){break c}t[c|0]=j;v[c+8>>2]=64;TJ(b,d,c+8|0,c,0);break c}d=v[b+8>>2];if(!d){d=Qu(v[b>>2],e>>>24&15);v[b+8>>2]=d}t[d+52|0]=w[f+8|0];Yu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|64}xa=c+16|0;d=g&2;if(!(h&2)^d>>>1){break a}b=v[a+20>>2];if(!b){break a}c=vh(b);b=sh(v[a+20>>2]);i:{if(!c){break i}c=c+5584|0;if(d){d=v[a+20>>2];h=NU(b,a)<<2;e=c;c=x[d+4>>1];c=HE(e,v[h+(x[b+4>>1]==1?b:v[b>>2])>>2]+32|0,d+v[((c<<2)+86240|0)+72>>2]|0,(c&65527)==5,v[b+16>>2],0,0);v[h+(x[b+12>>1]==1?b+8|0:v[b+8>>2])>>2]=c;break i}d=NU(b,a)<<2;e=c;c=b+8|0;JE(e,v[b+16>>2],v[d+(x[b+12>>1]==1?c:v[b+8>>2])>>2]);v[d+(x[b+12>>1]==1?c:v[b+8>>2])>>2]=-1}if(!v[b+20>>2]){break a}b9(v[37696],8,11562,602,73707,0);bC(v[b+20>>2],v[a+20>>2])}xa=f+16|0}function XD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=xa-32|0;xa=e;d=v[a+4>>2];if(!(!d|!v[d+8>>2])){v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=1065353216;v[e>>2]=0;v[e+4>>2]=0;ZU(b,e);v[b+4>>2]=c;d=v[d+8>>2];YD(d,d,b)}v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=1065353216;v[e>>2]=0;v[e+4>>2]=0;ZU(b,e);v[b+4>>2]=-1;if(!(!w[a+336|0]|(v[a+156>>2]+v[a+108>>2]|0)==(0-v[a+216>>2]|0))){f=xa-32|0;xa=f;d=v[a+220>>2];if(!(!d|!v[d+8>>2])){v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=1065353216;v[f>>2]=0;v[f+4>>2]=0;ZU(b,f);v[b+4>>2]=c;d=v[d+8>>2];sD(d,d,b)}g=v[a+256>>2];if(g){while(1){d=v[v[a+252>>2]+(h<<3)>>2];if(!(!d|!v[d+8>>2])){v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=1065353216;v[f>>2]=0;v[f+4>>2]=0;ZU(b,f);v[b+4>>2]=c;d=v[d+8>>2];sD(d,d,b);g=v[a+256>>2]}h=h+1|0;if(g>>>0>h>>>0){continue}break}}d=xa-32|0;xa=d;g=v[a+68>>2];if(!(!g|!v[g+588>>2])){v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;ZU(b,d);v[b+4>>2]=c;g=v[v[a+68>>2]+588>>2];jD(g,g,b);v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;ZU(b,d);v[b+4>>2]=-1}g=v[a+116>>2];if(!(!g|!v[g+588>>2])){v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;ZU(b,d);v[b+4>>2]=c;a=v[v[a+116>>2]+588>>2];jD(a,a,b);v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;ZU(b,d);v[b+4>>2]=-1}xa=d+32|0;xa=f+32|0}xa=e+32|0}function ci(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,u=0,x=0;a=v[37389];f=v[a+3928>>2];if(!f){l=xa-16|0;xa=l;j=a+3640|0;g=v[j+284>>2];if(g){f=v[37696];k=Ba[v[v[f>>2]+20>>2]](f)|0?41231:63804;k=Ba[v[v[f+12>>2]+8>>2]](f+12|0,g,k,18373,180)|0}else{k=0}v[l+12>>2]=k;f=v[j+268>>2];a:{if(f>>>0>=(v[j+272>>2]&2147483647)>>>0){f=0;g=j+4|0;h=v[g+268>>2];m=h&2147483647?h<<1:1;b:{if(!m){break b}h=m<<2;if(!(w[g+256|0]|h>>>0>256)){t[g+256|0]=1;f=g;break b}if(!h){break b}f=v[37696];i=f+12|0;f=(q=i,r=h,s=Ba[v[v[f>>2]+20>>2]](f)|0?41231:63804,u=16608,x=553,p=v[v[i>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}i=v[g+264>>2];o=(i<<2)+f|0;if((i|0)>0){n=v[g+260>>2];h=f;while(1){v[h>>2]=v[n>>2];n=n+4|0;h=h+4|0;if(o>>>0>h>>>0){continue}break}}v[o>>2]=v[l+12>>2];c:{if(v[g+268>>2]<0){break c}h=v[g+260>>2];if((h|0)==(g|0)){t[g+256|0]=0;break c}if(!h){break c}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,h);i=v[g+264>>2]}v[g+268>>2]=m;v[g+260>>2]=f;v[g+264>>2]=i+1;break a}v[v[j+264>>2]+(f<<2)>>2]=k;v[j+268>>2]=f+1}f=(B(v[j+276>>2],400)+k|0)-400|0;if(k>>>0<=f>>>0){g=v[j+288>>2];while(1){v[f>>2]=g;g=f;f=f-400|0;if(k>>>0<=f>>>0){continue}break}v[j+288>>2]=g}xa=l+16|0;f=v[a+3928>>2]}v[a+3928>>2]=v[f>>2];a=a+3920|0;v[a>>2]=v[a>>2]+1;v[f+4>>2]=65551;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;v[f>>2]=121580;$E(f+20|0,c,e,1);v[f+396>>2]=d;v[f+392>>2]=b;v[f+12>>2]=v[f+12>>2]&-251658241|134217728;a=v[b+320>>2];a=Ba[v[v[a>>2]+100>>2]](a)|0;v[f+388>>2]=f;v[f>>2]=121384;v[f+384>>2]=a+12;return f|0}function Sk(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,u=0,x=0;a=v[37389];f=v[a+3632>>2];if(!f){l=xa-16|0;xa=l;j=a+3344|0;g=v[j+284>>2];if(g){f=v[37696];k=Ba[v[v[f>>2]+20>>2]](f)|0?27763:63804;k=Ba[v[v[f+12>>2]+8>>2]](f+12|0,g,k,18373,180)|0}else{k=0}v[l+12>>2]=k;f=v[j+268>>2];a:{if(f>>>0>=(v[j+272>>2]&2147483647)>>>0){f=0;g=j+4|0;h=v[g+268>>2];m=h&2147483647?h<<1:1;b:{if(!m){break b}h=m<<2;if(!(w[g+256|0]|h>>>0>256)){t[g+256|0]=1;f=g;break b}if(!h){break b}f=v[37696];i=f+12|0;f=(q=i,r=h,s=Ba[v[v[f>>2]+20>>2]](f)|0?27763:63804,u=16608,x=553,p=v[v[i>>2]+8>>2],Ba[p](q|0,r|0,s|0,u|0,x|0)|0)}i=v[g+264>>2];o=(i<<2)+f|0;if((i|0)>0){n=v[g+260>>2];h=f;while(1){v[h>>2]=v[n>>2];n=n+4|0;h=h+4|0;if(o>>>0>h>>>0){continue}break}}v[o>>2]=v[l+12>>2];c:{if(v[g+268>>2]<0){break c}h=v[g+260>>2];if((h|0)==(g|0)){t[g+256|0]=0;break c}if(!h){break c}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,h);i=v[g+264>>2]}v[g+268>>2]=m;v[g+260>>2]=f;v[g+264>>2]=i+1;break a}v[v[j+264>>2]+(f<<2)>>2]=k;v[j+268>>2]=f+1}f=(B(v[j+276>>2],400)+k|0)-400|0;if(k>>>0<=f>>>0){g=v[j+288>>2];while(1){v[f>>2]=g;g=f;f=f-400|0;if(k>>>0<=f>>>0){continue}break}v[j+288>>2]=g}xa=l+16|0;f=v[a+3632>>2]}v[a+3632>>2]=v[f>>2];a=a+3624|0;v[a>>2]=v[a>>2]+1;v[f+4>>2]=65550;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;v[f>>2]=121200;$E(f+20|0,c,e,0);v[f+396>>2]=d;v[f+392>>2]=b;v[f+12>>2]=v[f+12>>2]&-251658241|134217728;a=v[b+320>>2];a=Ba[v[v[a>>2]+100>>2]](a)|0;v[f+388>>2]=f;v[f>>2]=120912;v[f+384>>2]=a+12;return f|0}function PC(a,b){var c=C(0),d=C(0),e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0);f=v[a+36>>2];e=v[a+40>>2];a:{if(!e){m=1;e=B(v[f+4>>2],24)+b|0;c=z[e+12>>2];i=z[e+8>>2];j=z[e+4>>2];k=z[e>>2];g=z[e+20>>2];h=z[e+16>>2];n=v[f>>2];if(n>>>0>1){while(1){e=B(v[(f+(m<<2)|0)+4>>2],24)+b|0;d=z[e+12>>2];c=c>d?c:d;d=z[e+8>>2];i=d>i?i:d;d=z[e+4>>2];j=d>j?j:d;d=z[e>>2];k=d>k?k:d;d=z[e+20>>2];g=d>2];h=d>2]=0;z[a+8>>2]=i;z[a+4>>2]=j;z[a>>2]=k;i=C(0);break a}i=z[e>>2];c=z[f>>2];g=z[e+4>>2];h=z[f+4>>2];j=z[e+8>>2];k=z[f+8>>2];d=z[f+12>>2];l=z[e+12>>2];z[a+12>>2]=d>2]=j>k?k:j;z[a+4>>2]=g>h?h:g;z[a>>2]=c>2];c=z[e+28>>2];i=c>2];g=z[e+24>>2];g=c>g?c:g;c=z[f+20>>2];h=z[e+20>>2];h=c>h?c:h;c=z[f+16>>2];j=z[e+16>>2];c=c>j?c:j}z[a+16>>2]=c;z[a+28>>2]=i;z[a+24>>2]=g;z[a+20>>2]=h;a=v[a+32>>2];b:{if(!a){break b}while(1){b=v[a+36>>2];i=z[b+16>>2];f=v[a+40>>2];c=z[f+16>>2];i=c>2];g=z[f+12>>2];c=c>2];h=z[f+8>>2];g=g>2];j=z[f+4>>2];h=h>2];k=z[f+28>>2];j=j>k?j:k;k=z[b+24>>2];d=z[f+24>>2];k=d>2];l=z[f+20>>2];d=d>l?d:l;l=z[b>>2];o=z[f>>2];l=l>2]|h!=z[a+4>>2]|(g!=z[a+8>>2]|c!=z[a+12>>2])){break c}if(i!=z[a+16>>2]|d!=z[a+20>>2]|k!=z[a+24>>2]){break c}if(j==z[a+28>>2]){break b}}z[a+16>>2]=i;z[a+12>>2]=c;z[a+8>>2]=g;z[a+4>>2]=h;z[a>>2]=l;z[a+28>>2]=j;z[a+24>>2]=k;z[a+20>>2]=d;a=v[a+32>>2];if(a){continue}break}}}function dM(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,w=0,x=0,y=0,z=0,A=0,B=0;f=xa-16|0;a:{if(!v[a+188>>2]){break a}b=v[a+144>>2];d=v[b+4>>2];t=v[a+164>>2];h=v[t+4>>2];u=v[a+160>>2];l=v[u+4>>2];w=v[a+152>>2];i=v[w+4>>2];c=v[a+148>>2];e=v[c+4>>2];x=v[a+156>>2];p=v[x+4>>2];v[f+12>>2]=f+8;g=v[f+12>>2];v[f+12>>2]=f+4;m=v[f+12>>2];v[f+12>>2]=f;n=v[f+12>>2];v[g>>2]=(d|0)<0?d&2147483647:d^-1;v[m>>2]=(e|0)<0?e&2147483647:e^-1;v[n>>2]=(i|0)<0?i&2147483647:i^-1;d=v[g>>2];d=(d|0)<0?d^-1:d|-2147483648;v[b+4>>2]=p&1?d+16&-16|1:d-16&-16;d=v[m>>2];d=(d|0)<0?d^-1:d|-2147483648;v[c+4>>2]=l&1?d+16&-16|1:d-16&-16;d=v[n>>2];d=(d|0)<0?d^-1:d|-2147483648;i=h&1?d+16&-16|1:d-16&-16;v[w+4>>2]=i;if(!(v[a+188>>2]&2147483647)){break a}d=v[x+4>>2]&1;m=v[u+4>>2]&1;n=v[t+4>>2]&1;q=v[b+4>>2];r=v[c+4>>2];s=2;while(1){e=s<<2;y=e+b|0;g=v[y>>2];z=v[e+x>>2];A=v[e+u>>2];B=v[e+t>>2];l=e+w|0;h=v[l>>2];p=c+e|0;e=v[p>>2];v[f+12>>2]=f+8;o=v[f+12>>2];v[f+12>>2]=f+4;j=v[f+12>>2];v[f+12>>2]=f;k=v[f+12>>2];v[o>>2]=(g|0)<0?g&2147483647:g^-1;v[j>>2]=(e|0)<0?e&2147483647:e^-1;e=k;k=(h|0)<0?h&2147483647:h^-1;v[e>>2]=k;e=v[o>>2];g=(e|0)<0?e^-1:e|-2147483648;e=A&1;h=z&1;o=h?g+16&-16|1:g-16&-16;g=B&1;j=v[j>>2];j=(j|0)<0?j^-1:j|-2147483648;k=(k|0)<0?k^-1:k|-2147483648;q=o>>>0>>0?(d^h)+q|0:o;v[y>>2]=q;d=e?j+16&-16|1:j-16&-16;r=d>>>0>>0?(e^m)+r|0:d;v[p>>2]=r;d=g?k+16&-16|1:k-16&-16;i=d>>>0>>0?(g^n)+i|0:d;v[l>>2]=i;l=v[a+188>>2]<<1>>>0>s>>>0;d=h;m=e;n=g;s=s+1|0;if(l){continue}break}}}function W5(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0;h=xa-32|0;xa=h;s=v[a+76>>2];Ba[v[v[s>>2]+32>>2]](s,b,c);Z4(h,b);m=z[a+36>>2];n=z[a+40>>2];o=z[a+44>>2];p=z[h+20>>2];q=z[h+24>>2];r=z[h+16>>2];b=v[a+80>>2];i=z[h+8>>2];d=z[a+28>>2];j=z[h+4>>2];e=z[a+24>>2];g=z[h+12>>2];f=z[a+32>>2];k=z[h>>2];l=z[a+20>>2];z[b+28>>2]=C(i*d)+C(C(j*e)+C(C(g*f)+C(k*l)));z[b+24>>2]=C(l*j)+C(C(C(g*d)-C(f*i))-C(k*e));z[b+20>>2]=C(d*k)+C(C(C(g*e)-C(f*j))-C(i*l));z[b+16>>2]=C(e*i)+C(C(C(g*l)-C(f*k))-C(j*d));d=C(m-r);d=C(d+d);e=C(n-p);e=C(e+e);f=C(o-q);f=C(f+f);l=C(C(C(C(-k)*d)-C(e*j))-C(i*f));m=C(C(g*g)+C(-.5));z[b+40>>2]=C(C(f*m)+C(g*C(C(j*d)-C(k*e))))-C(i*l);z[b+36>>2]=C(C(e*m)+C(g*C(C(k*f)-C(i*d))))-C(j*l);z[b+32>>2]=C(C(d*m)+C(g*C(C(i*e)-C(j*f))))-C(k*l);Z4(h,c);m=z[a- -64>>2];n=z[a+68>>2];o=z[a+72>>2];p=z[h+20>>2];q=z[h+24>>2];r=z[h+16>>2];b=v[a+80>>2];i=z[h+8>>2];d=z[a+56>>2];j=z[h+4>>2];e=z[a+52>>2];g=z[h+12>>2];f=z[a+60>>2];k=z[h>>2];l=z[a+48>>2];z[b+56>>2]=C(i*d)+C(C(j*e)+C(C(g*f)+C(k*l)));z[b+52>>2]=C(l*j)+C(C(C(g*d)-C(f*i))-C(k*e));z[b+48>>2]=C(d*k)+C(C(C(g*e)-C(f*j))-C(i*l));z[b+44>>2]=C(e*i)+C(C(C(g*l)-C(f*k))-C(j*d));d=C(m-r);d=C(d+d);e=C(n-p);e=C(e+e);f=C(o-q);f=C(f+f);l=C(C(C(C(-k)*d)-C(e*j))-C(i*f));m=C(C(g*g)+C(-.5));z[b+68>>2]=C(C(f*m)+C(g*C(C(j*d)-C(k*e))))-C(i*l);z[b- -64>>2]=C(C(e*m)+C(g*C(C(k*f)-C(i*d))))-C(j*l);z[b+60>>2]=C(C(d*m)+C(g*C(C(i*e)-C(j*f))))-C(k*l);a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a);xa=h+32|0}function mr(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=v[a+980>>2];e=v[b+284>>2];if(e){f=v[a+2368>>2];h=v[a+2348>>2];if(!h){break b}g=v[b+280>>2];while(1){d=c<<2;b=v[d+g>>2];d=v[d+v[a+2504>>2]>>2];i=d>>>5|0;if(!(i>>>0<(v[f+24>>2]&2147483647)>>>0&(v[v[f+20>>2]+(i<<2)>>2]>>>d&1))){d=v[37419]+v[b+28>>2]|0;b=v[v[b+4>>2]+44>>2];Ba[v[v[h>>2]+8>>2]](h,d,v[((w[b+9|0]<<2)+149664|0)+40>>2]+b|0)}c=c+1|0;if((e|0)!=(c|0)){continue}break}b=v[a+980>>2]}a=0;break a}h=v[f+24>>2]&2147483647;g=v[a+2504>>2];a=0;while(1){d=v[g+(c<<2)>>2];i=d>>>5|0;a=i>>>0>>0&(v[v[f+20>>2]+(i<<2)>>2]>>>d&1)?a:1;c=c+1|0;if((e|0)!=(c|0)){continue}break}}v[b+284>>2]=0;b=a;a=v[k+1012>>2];c=v[a+292>>2];f=v[a+296>>2];c:{if(!f){break c}e=v[k+2380>>2];if(e){a=0;if((f|0)!=1){h=f&-2;while(1){g=a<<2;d=v[g+c>>2];if(y[d+12>>2]<=3221225471){Ba[v[v[e>>2]+12>>2]](e,d)}g=v[c+(g|4)>>2];if(y[g+12>>2]<=3221225471){Ba[v[v[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=v[c+(a<<2)>>2];if(y[a+12>>2]>3221225471){break c}Ba[v[v[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|(y[v[c+(b|12)>>2]+12>>2]<3221225472|y[v[c+(b|8)>>2]+12>>2]<3221225472|y[v[c+(b|4)>>2]+12>>2]<3221225472|y[v[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=y[v[c+(a<<2)>>2]+12>>2]<3221225472|b;a=a+1|0;j=j+1|0;if((e|0)!=(j|0)){continue}break}}v[v[k+1012>>2]+296>>2]=0;if(b&1){b9(v[37696],2,11709,2040,64859,0)}}function SV(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=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0),s=C(0),t=C(0),u=C(0),w=0,x=0;g=xa-4288|0;xa=g;h=z[d+24>>2];w=v[d+16>>2];x=v[d+20>>2];i=z[c+4>>2];v[g+4232>>2]=-1;z[g+52>>2]=i;d=0;v[g+48>>2]=0;p=g+4232|0;q=g+48|0;lV(p,q);v[g+4176>>2]=-1;j=g+4176|0;lV(j,e);v[g+4168>>2]=0;v[g+4172>>2]=0;v[g+4144>>2]=0;z[g+40>>2]=h;v[g+32>>2]=w;v[g+36>>2]=x;v[g+24>>2]=0;v[g+28>>2]=1065353216;v[g+16>>2]=0;v[g+20>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;c=xa-3440|0;xa=c;e=v[j+4>>2];v[c+3432>>2]=j;v[c+3428>>2]=e;h=z[j+8>>2];i=z[j+12>>2];z[c+3424>>2]=C(1)/z[j+16>>2];z[c+3416>>2]=C(1)/i;z[c+3420>>2]=C(1)/h;i=z[f+8>>2];h=C(z[g+40>>2]-z[f+24>>2]);k=C(h+h);l=z[f>>2];h=C(z[g+32>>2]-z[f+16>>2]);m=C(h+h);h=C(z[g+36>>2]-z[f+20>>2]);n=C(h+h);o=z[f+4>>2];r=C(C(i*k)+C(C(l*m)+C(n*o)));h=z[f+12>>2];s=C(C(h*h)+C(-.5));t=C(C(l*r)+C(C(m*s)-C(h*C(C(o*k)-C(n*i)))));z[c+3400>>2]=t;u=C(C(o*r)+C(C(n*s)-C(h*C(C(i*m)-C(k*l)))));z[c+3404>>2]=u;i=C(C(i*r)+C(C(k*s)-C(h*C(C(l*n)-C(m*o)))));z[c+3408>>2]=i;h=C(z[p+4>>2]+z[g>>2]);z[c+3396>>2]=i+h;z[c+3392>>2]=u+h;z[c+3388>>2]=t+h;z[c+3384>>2]=i-h;z[c+3380>>2]=u-h;z[c+3376>>2]=t-h;v[c+3364>>2]=0;v[c+2592>>2]=0;v[c+28>>2]=0;z[c+24>>2]=h*h;v[c+16>>2]=q;v[c+12>>2]=f;v[c+8>>2]=g+16;v[c+20>>2]=c+3400;v[c+4>>2]=p;v[c>>2]=142716;e=c+3416|0;v[c+3368>>2]=e;m$(e,f,c+3376|0,0,c);OZ(c|4);xa=c+3440|0;a:{if(!v[q+4096>>2]){break a}if(!RV(a,b,v[g+4144>>2],g+48|0)){break a}d=v[g+4144>>2]!=0}xa=g+4288|0;return d|0}function AI(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=xa-16|0;xa=d;v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;a:{if(!v[a+16>>2]){break a}e=v[a+12>>2];f=v[e>>2];if((f|0)==-1){c=v[a+20>>2];while(1){h=h+1|0;if((c|0)==(h|0)){break a}f=v[e+(h<<2)>>2];if((f|0)==-1){continue}break}}b:while(1){e=B(f,12);i=v[(e+v[a+4>>2]|0)+8>>2];if(Ba[v[v[i>>2]+8>>2]](i,b,0)|0){j=e+v[a+4>>2]|0;e=v[d+4>>2];c:{if(e>>>0>=(v[d+8>>2]&2147483647)>>>0){e=0;c=v[d+8>>2];k=c&2147483647?c<<1:1;d:{if(!k){break d}c=k<<3;if(!c){break d}e=v[37696];g=e+12|0;e=(o=g,p=c,q=Ba[v[v[e>>2]+20>>2]](e)|0?31385:63804,r=16608,s=553,n=v[v[g>>2]+8>>2],Ba[n](o|0,p|0,q|0,r|0,s|0)|0)}c=v[d+4>>2];if((c|0)>0){l=(c<<3)+e|0;g=v[d>>2];c=e;while(1){m=v[g+4>>2];v[c>>2]=v[g>>2];v[c+4>>2]=m;g=g+8|0;c=c+8|0;if(l>>>0>c>>>0){continue}break}c=v[d+4>>2]}g=v[j+4>>2];c=(c<<3)+e|0;v[c>>2]=v[j>>2];v[c+4>>2]=g;e:{if(v[d+8>>2]<0){break e}c=v[d>>2];if(!c){break e}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}v[d+8>>2]=k;v[d>>2]=e;break c}c=v[j+4>>2];e=v[d>>2]+(e<<3)|0;v[e>>2]=v[j>>2];v[e+4>>2]=c}v[d+4>>2]=v[d+4>>2]+1;Ba[v[v[i>>2]+4>>2]](i)}f=v[v[a+8>>2]+(f<<2)>>2];if((f|0)!=-1){continue}e=v[a+12>>2];c=v[a+20>>2];while(1){h=h+1|0;if((c|0)!=(h|0)){f=v[e+(h<<2)>>2];if((f|0)==-1){continue}continue b}break}break}if(!v[d+4>>2]){break a}f=0;while(1){FI(a,v[d>>2]+(f<<3)|0);f=f+1|0;if(f>>>0>2]){continue}break}}a=v[d+8>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=v[d>>2];if(!a){break f}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+16|0}function pO(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0,w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0);D=z[c+20>>2];b=v[b+92>>2];w=z[b+24>>2];A=z[b+20>>2];l=z[c+24>>2];u=v[c+36>>2];x=z[u+48>>2];y=z[u+56>>2];E=z[u+52>>2];F=z[c+16>>2];B=z[b+16>>2];o=z[c+8>>2];e=z[u+40>>2];p=z[c+4>>2];f=z[u+36>>2];m=z[c+12>>2];d=z[u+44>>2];g=z[u+32>>2];q=z[c>>2];n=C(C(o*e)+C(C(p*f)+C(C(m*d)+C(g*q))));h=z[b+12>>2];i=z[b>>2];r=C(C(f*o)+C(C(C(d*q)-C(m*g))-C(p*e)));s=C(C(e*q)+C(C(C(d*p)-C(m*f))-C(o*g)));j=z[b+4>>2];t=C(C(g*p)+C(C(C(d*o)-C(m*e))-C(q*f)));k=z[b+8>>2];z[a+12>>2]=C(C(C(n*h)-C(i*r))-C(s*j))-C(t*k);z[a+8>>2]=C(C(r*j)+C(C(n*k)+C(t*h)))-C(i*s);z[a+4>>2]=C(C(t*i)+C(C(n*j)+C(s*h)))-C(k*r);z[a>>2]=C(C(s*k)+C(C(n*i)+C(r*h)))-C(j*t);G=l;h=C(y*C(-2));i=C(x*C(-2));j=C(E*C(-2));x=C(C(e*h)+C(C(g*i)+C(f*j)));y=C(C(d*d)+C(-.5));k=C(C(e*x)+C(C(h*y)-C(d*C(C(g*j)-C(i*f)))));k=C(k+k);l=C(C(g*x)+C(C(i*y)-C(d*C(C(f*h)-C(j*e)))));l=C(l+l);d=C(C(f*x)+C(C(j*y)-C(d*C(C(e*i)-C(h*g)))));d=C(d+d);h=C(C(o*k)+C(C(q*l)+C(p*d)));i=C(C(m*m)+C(-.5));e=C(w+w);f=C(B+B);g=C(A+A);j=C(C(t*e)+C(C(r*f)+C(s*g)));w=C(C(n*n)+C(-.5));z[a+24>>2]=C(G+C(C(o*h)+C(C(k*i)+C(m*C(C(q*d)-C(l*p))))))+C(C(t*j)+C(C(e*w)+C(n*C(C(r*g)-C(f*s)))));z[a+20>>2]=C(D+C(C(p*h)+C(C(d*i)+C(m*C(C(o*l)-C(k*q))))))+C(C(s*j)+C(C(g*w)+C(n*C(C(t*f)-C(e*r)))));z[a+16>>2]=C(F+C(C(q*h)+C(C(l*i)+C(m*C(C(p*k)-C(d*o))))))+C(C(r*j)+C(C(f*w)+C(n*C(C(s*e)-C(g*t)))))}function kB(a,b,c,d,e,f,g,h,i,j){var k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0;k=xa-2112|0;xa=k;q=x[a+12>>1];a:{if((q|0)==65535){o=z[b>>2];l=z[b+4>>2];m=z[v[a+8>>2]+32>>2];n=C(C(m*z[b+8>>2])*d);z[c+8>>2]=n;l=C(C(m*l)*d);z[c+4>>2]=l;d=C(C(m*o)*d);z[c>>2]=d;o=z[b+20>>2];p=z[b+16>>2];m=C(z[b+24>>2]*e);z[c+24>>2]=m;o=C(o*e);z[c+20>>2]=o;e=C(p*e);z[c+16>>2]=e;break a}a=v[a>>2];n=z[b+20>>2];l=z[b>>2];m=z[b+4>>2];o=z[b+8>>2];p=z[b+16>>2];z[k+56>>2]=z[b+24>>2]*e;z[k+52>>2]=n*e;v[k+60>>2]=0;v[k+44>>2]=0;z[k+48>>2]=p*e;z[k+40>>2]=o*d;z[k+36>>2]=m*d;z[k+32>>2]=l*d;Ba[v[v[a>>2]+104>>2]](a,q,k- -64|0,k+32|0,c);m=z[c+24>>2];o=z[c+20>>2];e=z[c+16>>2];n=z[c+8>>2];l=z[c+4>>2];d=z[c>>2]}o=C(C(C(z[b+8>>2]*n)+C(C(z[b>>2]*d)+C(z[b+4>>2]*l)))+C(C(z[b+24>>2]*m)+C(C(z[b+16>>2]*e)+C(z[b+20>>2]*o))));b=x[f+12>>1];b:{if((b|0)==65535){l=z[g>>2];n=z[g+4>>2];e=z[v[f+8>>2]+32>>2];d=C(C(e*z[g+8>>2])*i);z[h+8>>2]=d;n=C(C(e*n)*i);z[h+4>>2]=n;i=C(C(e*l)*i);z[h>>2]=i;e=z[g+20>>2];p=z[g+16>>2];l=C(z[g+24>>2]*j);z[h+24>>2]=l;m=C(e*j);z[h+20>>2]=m;j=C(p*j);z[h+16>>2]=j;break b}a=v[f>>2];d=z[g+20>>2];e=z[g>>2];n=z[g+4>>2];l=z[g+8>>2];m=z[g+16>>2];z[k+56>>2]=z[g+24>>2]*j;z[k+52>>2]=d*j;v[k+60>>2]=0;v[k+44>>2]=0;z[k+48>>2]=m*j;z[k+40>>2]=l*i;z[k+36>>2]=n*i;z[k+32>>2]=e*i;Ba[v[v[a>>2]+104>>2]](a,b,k- -64|0,k+32|0,h);l=z[h+24>>2];m=z[h+20>>2];j=z[h+16>>2];d=z[h+8>>2];n=z[h+4>>2];i=z[h>>2]}xa=k+2112|0;return C(o+C(C(C(z[g+8>>2]*d)+C(C(z[g>>2]*i)+C(z[g+4>>2]*n)))+C(C(z[g+24>>2]*l)+C(C(z[g+16>>2]*j)+C(z[g+20>>2]*m)))))}function $M(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=C(0),u=0,w=C(0);g=xa-16|0;xa=g;v[g+12>>2]=0;v[g+8>>2]=0;j=v[a+48>>2];p=v[a+32>>2];t=z[a+36>>2];k=v[a+20>>2];l=v[a+28>>2];h=v[l+8>>2]&2147483647;if(h){u=v[v[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=v[s>>2];f=v[d+32>>2];e=v[v[l>>2]+12144>>2]+B(b,52)|0;v[e>>2]=v[d+28>>2];v[e+4>>2]=f;v[e+48>>2]=v[d+76>>2];f=v[d+72>>2];v[e+40>>2]=v[d+68>>2];v[e+44>>2]=f;f=v[d+64>>2];v[e+32>>2]=v[d+60>>2];v[e+36>>2]=f;f=v[d+56>>2];v[e+24>>2]=v[d+52>>2];v[e+28>>2]=f;f=v[d+48>>2];v[e+16>>2]=v[d+44>>2];v[e+20>>2]=f;f=v[d+40>>2];v[e+8>>2]=v[d+36>>2];v[e+12>>2]=f;d=x[v[v[s>>2]+60>>2]+12>>1];e=d&255;n=e>>>0>n>>>0?e:n;d=d>>>8|0;o=d>>>0>o>>>0?d:o;b=b+1|0;if((q|0)!=(b|0)){continue}break}}d=v[l>>2];b=wr(v[j+620>>2],56);d=v[d+12144>>2];e=v[j+636>>2];q=v[j+632>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=q;v[b+12>>2]=e;v[b+36>>2]=r-c;v[b+28>>2]=j;v[b>>2]=132772;v[b+32>>2]=d+B(c,52);z[b+40>>2]=z[p>>2];z[b+44>>2]=z[p+4>>2];w=z[p+8>>2];z[b+52>>2]=t;z[b+48>>2]=w;v[b+24>>2]=1;v[b+20>>2]=k;if(k){Ba[v[v[k>>2]+16>>2]](k);v[b+16>>2]=v[v[b+20>>2]+16>>2];c=v[b>>2]}else{c=132772}Ba[v[c+20>>2]](b);m=m+32|0;c=i;if(h>>>0>c>>>0){continue}break}}c=v[g+8>>2];v[g+8>>2]=c>>>0>>0?o:c;c=v[g+12>>2];v[g+12>>2]=c>>>0>>0?n:c;b=v[a+40>>2];c=v[b>>2];i=b;b=v[g+12>>2];v[i>>2]=(b|0)<(c|0)?c:b;c=v[a+44>>2];a=v[c>>2];b=c;c=v[g+8>>2];v[b>>2]=(a|0)>(c|0)?a:c;xa=g+16|0}function VB(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;f=v[37696];g=f+12|0;h=(v[c>>2]+v[a+40>>2]|0)+1|0;e=Saa(h,0,28,0);i=e+4|0;e=(n=g,o=Aa?-1:e>>>0>i>>>0?-1:i,p=Ba[v[v[f>>2]+20>>2]](f)|0?44527:63804,q=12118,r=659,m=v[v[g>>2]+8>>2],Ba[m](n|0,o|0,p|0,q|0,r|0)|0);v[e>>2]=h;g=e+4|0;f=v[a+40>>2];e=(f+v[c>>2]<<2)+4|0;a:{if(!e){e=0;break a}f=v[37696]+12|0;e=Ba[v[v[f>>2]+8>>2]](f,e,24422,12118,660)|0;f=v[a+40>>2]}g=I9(g,v[a+8>>2],B(f,28));h=I9(e,v[a+36>>2],v[a+40>>2]<<2);f=v[a+40>>2];e=g+B(f,28)|0;z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];z[e+8>>2]=z[b+8>>2];z[e+12>>2]=z[b+12>>2];z[e+16>>2]=z[b+16>>2];z[e+20>>2]=z[b+20>>2];v[e+24>>2]=v[b+24>>2];v[h+(f<<2)>>2]=d;b=v[a+52>>2];if(!(!b|!(v[b+(d>>>3&536870908)>>2]>>>d&1))){e=f>>>5|0;b=b+(e<<2)|0;v[b>>2]=v[b>>2]|1<>2];v[a+60>>2]=b>>>0>e>>>0?b:e}b=v[a+8>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b-4|0)}v[a+8>>2]=g;b=v[a+36>>2];if(b){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b)}v[a+36>>2]=h;b:{if(!v[c>>2]){e=v[a+8>>2];break b}e=v[a+8>>2];k=v[c+4>>2];i=f+1|0;g=i;while(1){b=B(g,28)+e|0;f=k+B(j,28)|0;z[b>>2]=z[f>>2];z[b+4>>2]=z[f+4>>2];z[b+8>>2]=z[f+8>>2];z[b+12>>2]=z[f+12>>2];z[b+16>>2]=z[f+16>>2];z[b+20>>2]=z[f+20>>2];f=v[f+24>>2];c:{if(f&1){v[b+24>>2]=f&30|f+(v[a+4>>2]<<5)&-32|1;break c}l=b;b=(f>>>1|0)+i|0;v[l+24>>2]=b<<1;b=h+(b<<2)|0;v[b>>2]=g;v[b+4>>2]=g}g=g+1|0;j=j+1|0;if(j>>>0>2]){continue}break}}v[(h+(v[a+40>>2]<<2)|0)+4>>2]=d;b=v[a+40>>2];v[(B(d,28)+e|0)+24>>2]=b<<1;v[a+40>>2]=(b+v[c>>2]|0)+1}function RQ(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=v[a+20>>2];e=v[a+28>>2];b:{if(!v[e+1132>>2]){break b}c=v[e+1e3>>2];a=v[c+284>>2];if(!a){break b}f=v[c+280>>2];b=Dx(v[e+976>>2],a<<2,1);v[e+4628>>2]=b;if(b){while(1){a=a-1|0;b=v[v[(v[c+184>>2]+B(v[f+(d<<2)>>2]>>>7|0,24)|0)+20>>2]+100>>2];c:{if(!b){break c}b=AH(b);h=w[b+44|0];if(h&2|!v[b+20>>2]){break c}v[v[e+4628>>2]+(i<<2)>>2]=b;t[b+44|0]=h|2;i=i+1|0}d=d+1|0;if(a){continue}break}if(!i){break b}h=v[v[e+976>>2]+1156>>2];j=e+1168|0;d=0;a=0;b=0;while(1){f=w[v[v[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=wr(h,48);f=v[e+4628>>2];c=v[e+976>>2];k=v[c+1836>>2];l=v[c+1832>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=l;v[b+12>>2]=k;v[b+40>>2]=c;v[b+36>>2]=j;d=d+1|0;v[b+32>>2]=d-a;v[b+28>>2]=f+(a<<2);v[b>>2]=135116;v[b+20>>2]=g;v[b+24>>2]=1;if(g){Ba[v[v[g>>2]+16>>2]](g);v[b+16>>2]=v[v[b+20>>2]+16>>2];a=v[b>>2]}else{a=135116}Ba[v[a+20>>2]](b);b=0;a=d}if((d|0)!=(i|0)){continue}break}if(!b){break b}b=wr(h,48);c=v[e+4628>>2];d=v[e+976>>2];f=v[d+1836>>2];h=v[d+1832>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=h;v[b+12>>2]=f;v[b+40>>2]=d;v[b+36>>2]=e+1168;v[b+32>>2]=i-a;v[b+28>>2]=c+(a<<2);v[b>>2]=135116;v[b+20>>2]=g;v[b+24>>2]=1;if(g){Ba[v[v[g>>2]+16>>2]](g);v[b+16>>2]=v[v[b+20>>2]+16>>2];a=v[b>>2]}else{a=135116}Ba[v[a+20>>2]](b);break a}a=v[37696];a=Ba[v[v[a>>2]+4>>2]](a)|0;Ba[v[v[a>>2]+8>>2]](a,16,67254,11777,3430)}}}function LH(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;f=UH(a,c,d,4,2);v[f+24>>2]=b;YP(f);VE(v[f>>2],f);VE(v[f+4>>2],f);e=v[f+24>>2];a=v[e- -64>>2];b=v[e+60>>2];if(b){u[b+148>>1]=x[b+148>>1]|256;c=v[b+100>>2];v[c+148>>2]=v[c+148>>2]+1}if(a){u[a+148>>1]=x[a+148>>1]|256;c=v[a+100>>2];v[c+148>>2]=v[c+148>>2]+1}d=v[v[f>>2]+40>>2];c=-128;c=b?v[b+144>>2]:c;b=v[d+1e3>>2];a=a?v[a+144>>2]:-128;j=xa-16|0;xa=j;d=v[b+20>>2];a:{if(d){h=d-1|0;d=v[v[b+16>>2]+(h<<2)>>2];v[b+20>>2]=h;break a}d=v[b+28>>2];v[b+28>>2]=d+1}h=d<<1;if((h|0)==v[b+116>>2]){$F(b+104|0,(d<<2)+4|0);g=h+2|0;aG(b+128|0,g);bG(b+44|0,g)}g=v[b+124>>2];i=(h>>>0)/(g>>>0)|0;v[v[v[b+104>>2]+(i<<2)>>2]+(h-B(g,i)<<2)>>2]=c;c=h|1;g=v[b+124>>2];i=(c>>>0)/(g>>>0)|0;v[v[v[b+104>>2]+(i<<2)>>2]+(c-B(g,i)<<2)>>2]=a;a=v[b+148>>2];c=(d>>>0)/(a>>>0)|0;v[v[v[b+128>>2]+(c<<2)>>2]+(d-B(a,c)<<2)>>2]=e;a=v[b- -64>>2];c=(d>>>0)/(a>>>0)|0;v[v[v[b+44>>2]+(c<<2)>>2]+(d-B(a,c)<<2)>>2]=f;IF(b+168|0,d);IF(b+640|0,d);a=v[b+156>>2];b:{if(a<<5!=(d|0)){break b}c=a&2147483647;a=a<<1&134217726|1;if(c>>>0>=a>>>0){break b}c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,a<<2,24422,17999,438)|0;e=v[b+152>>2];c:{if(!e){break c}I9(c,e,v[b+156>>2]<<2);if(v[b+156>>2]<0){break c}e=v[b+152>>2];if(!e){break c}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,e)}e=v[b+156>>2];J9(c+(e<<2)|0,0,a-e<<2);v[b+156>>2]=a;v[b+152>>2]=c}if((v[b+88>>2]&2147483647)==(d|0)){v[j+12>>2]=0;WF(b+80|0,h+2|0,j+12|0)}a=v[b+152>>2]+(d>>>3&536870908)|0;v[a>>2]=v[a>>2]|1<>2]=d;return f}function q_(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0);I=z[e+40>>2];J=z[d+40>>2];K=z[e+44>>2];L=z[d+44>>2];h=z[d+16>>2];i=z[d+20>>2];t=z[e+16>>2];u=z[e+20>>2];n=z[d+28>>2];j=z[e+28>>2];o=z[d+32>>2];k=z[e+32>>2];A=z[b+16>>2];B=z[b+20>>2];M=z[e+36>>2];N=z[d+36>>2];p=z[d+8>>2];m=z[d+4>>2];s=z[d>>2];q=z[d+12>>2];v=z[e+8>>2];w=z[e+4>>2];x=z[e>>2];y=z[e+12>>2];r=z[d+24>>2];l=z[e+24>>2];D=z[b+4>>2];E=z[b+8>>2];z[a+48>>2]=C(C(z[b+12>>2]-z[b>>2])*C(.5))+c;z[a+56>>2]=C(C(B-E)*C(.5))+c;z[a+52>>2]=C(C(A-D)*C(.5))+c;A=z[b+16>>2];B=z[b+20>>2];D=z[b+12>>2];E=z[b>>2];O=z[b+4>>2];P=z[b+8>>2];F=C(C(k*o)+C(C(l*r)+C(j*n)));z[a+32>>2]=F;G=C(C(u*o)+C(C(y*r)+C(t*n)));z[a+28>>2]=G;n=C(C(v*o)+C(C(x*r)+C(w*n)));z[a+24>>2]=n;o=C(C(k*i)+C(C(l*q)+C(j*h)));z[a+20>>2]=o;r=C(C(u*i)+C(C(y*q)+C(t*h)));z[a+16>>2]=r;q=C(C(v*i)+C(C(x*q)+C(w*h)));z[a+12>>2]=q;h=C(C(k*p)+C(C(l*s)+C(m*j)));z[a+8>>2]=h;H=C(C(u*p)+C(C(y*s)+C(m*t)));z[a+4>>2]=H;p=C(C(v*p)+C(C(x*s)+C(w*m)));z[a>>2]=p;c=C(L-K);m=C(k*c);k=C(N-M);i=j;j=C(J-I);m=C(m+C(C(l*k)+C(i*j)));l=C(C(E+D)*C(.5));s=C(h*l);h=C(C(O+A)*C(.5));i=C(C(P+B)*C(.5));z[a+44>>2]=m+C(C(s+C(o*h))+C(F*i));z[a+40>>2]=C(C(u*c)+C(C(y*k)+C(t*j)))+C(C(C(H*l)+C(r*h))+C(G*i));z[a+36>>2]=C(C(v*c)+C(C(x*k)+C(w*j)))+C(C(C(p*l)+C(q*h))+C(n*i));if(!g){nZ(f,a+36|0,a+48|0,a)}}function ss(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;c=v[37696];d=Ba[v[v[c>>2]+20>>2]](c)|0?25247:63804;c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,116,d,11709,3060)|0;v[c>>2]=124644;d=v[37696];f=Ba[v[v[d>>2]+20>>2]](d)|0?38399:63804;d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,80,f,19659,95)|0;v[c+4>>2]=d;t[d+76|0]=0;v[d+72>>2]=0;v[c+12>>2]=0;v[c+16>>2]=0;v[c+8>>2]=a;v[c+20>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;d=v[b+4>>2];v[c+44>>2]=v[b>>2];v[c+48>>2]=d;d=v[b+12>>2];v[c+52>>2]=v[b+8>>2];v[c+56>>2]=d;d=v[b+20>>2];v[c+60>>2]=v[b+16>>2];v[c+64>>2]=d;d=v[b+28>>2];v[c+68>>2]=v[b+24>>2];v[c+72>>2]=d;d=v[b+36>>2];v[c+76>>2]=v[b+32>>2];v[c+80>>2]=d;d=v[b+44>>2];v[c+84>>2]=v[b+40>>2];v[c+88>>2]=d;d=v[b+52>>2];v[c+92>>2]=v[b+48>>2];v[c+96>>2]=d;d=v[b+60>>2];v[c+100>>2]=v[b+56>>2];v[c+104>>2]=d;t[c+112|0]=0;v[c+108>>2]=-16;v[e+12>>2]=c;b=v[a+6028>>2];a:{if(b>>>0>=(v[a+6032>>2]&2147483647)>>>0){b=0;c=a+6024|0;a=v[c+8>>2];g=a&2147483647?a<<1:1;b:{if(!g){break b}d=g<<2;if(!d){break b}a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?54869:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,d,b,16608,553)|0}d=v[c+4>>2];h=(d<<2)+b|0;if((d|0)>0){f=v[c>>2];a=b;while(1){v[a>>2]=v[f>>2];f=f+4|0;a=a+4|0;if(h>>>0>a>>>0){continue}break}}v[h>>2]=v[e+12>>2];c:{if(v[c+8>>2]<0){break c}a=v[c>>2];if(!a){break c}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,a);d=v[c+4>>2]}v[c+8>>2]=g;v[c>>2]=b;v[c+4>>2]=d+1;break a}v[v[a+6024>>2]+(b<<2)>>2]=c;v[a+6028>>2]=b+1}xa=e+16|0;return v[e+12>>2]}function ZP(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=v[a+4>>2];j=v[d+1e3>>2];k=v[j+284>>2];if(!k){break a}h=v[j+280>>2];l=v[d+1004>>2];i=v[d+976>>2];m=v[i+1816>>2];n=v[i+1156>>2];b:{if(!b){d=0;while(1){if(e>>>0>=256){c=wr(n,56);g=v[a+4>>2];o=v[g+16>>2];p=v[g+20>>2];e=0;v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=o;v[c+12>>2]=p;v[c+48>>2]=g;v[c+44>>2]=m;v[c+40>>2]=l;v[c+36>>2]=i;v[c+32>>2]=d-f;v[c+28>>2]=(f<<2)+h;v[c>>2]=134684;v[c+24>>2]=1;f=v[c+16>>2];Ba[v[v[f>>2]+72>>2]](f,c);f=d}c=v[v[(v[j+184>>2]+B(v[(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=wr(n,56);g=v[a+4>>2];o=v[g+20>>2];p=v[g+16>>2];e=0;v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=p;v[c+12>>2]=o;v[c+48>>2]=g;v[c+44>>2]=m;v[c+40>>2]=l;v[c+36>>2]=i;v[c+32>>2]=d-f;v[c+28>>2]=(f<<2)+h;v[c>>2]=134684;v[c+20>>2]=b;v[c+24>>2]=1;Ba[v[v[b>>2]+16>>2]](b);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);f=d}c=v[v[(v[j+184>>2]+B(v[(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=wr(n,56);a=v[a+4>>2];c=v[a+20>>2];e=v[a+16>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+8>>2]=e;v[d+12>>2]=c;v[d+48>>2]=a;v[d+44>>2]=m;v[d+40>>2]=l;v[d+36>>2]=i;v[d+32>>2]=k-f;v[d+28>>2]=(f<<2)+h;v[d>>2]=134684;v[d+20>>2]=b;v[d+24>>2]=1;if(b){Ba[v[v[b>>2]+16>>2]](b);v[d+16>>2]=v[v[d+20>>2]+16>>2];a=v[d>>2]}else{a=134684}Ba[v[a+20>>2]](d)}}function C_(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),u=0,x=0,y=C(0);k=z[c+8>>2];g=C(k*C(-.7071067690849304));l=z[c>>2];p=C(l*C(0));m=z[c+4>>2];t=C(m*C(-.7071067690849304));h=C(p+t);o=C(g+h);a=v[a+24>>2];j=C(C(z[a+108>>2]*k)+C(C(z[a+100>>2]*l)+C(m*z[a+104>>2])));d=C(C(z[a+28>>2]*k)+C(C(z[a+20>>2]*l)+C(m*z[a+24>>2])));i=C(C(z[a+8>>2]*k)+C(C(z[a>>2]*l)+C(z[a+4>>2]*m)));b=d>i;n=C(C(z[a+48>>2]*k)+C(C(z[a+40>>2]*l)+C(m*z[a+44>>2])));d=b?d:i;c=n>d;i=C(C(z[a+68>>2]*k)+C(C(z[a+60>>2]*l)+C(m*z[a- -64>>2])));d=c?n:d;q=i>d;n=C(C(z[a+88>>2]*k)+C(C(z[a+80>>2]*l)+C(m*z[a+84>>2])));d=q?i:d;u=n>d;d=u?n:d;x=dd;f=e?1:f;o=C(m*C(.7071067690849304));s=C(p+o);y=C(g+s);d=e?r:d;e=y>d;f=e?2:f;p=C(l*C(-.7071067690849304));i=C(p+i);r=C(g+i);d=e?y:d;e=r>d;f=e?3:f;g=C(k*C(.7071067690849304));s=C(g+s);d=e?r:d;e=s>d;f=e?4:f;n=C(g+n);d=e?s:d;e=n>d;f=e?5:f;h=C(g+h);d=e?n:d;e=h>d;f=e?6:f;i=C(g+i);h=e?h:d;e=i>h;f=e?7:f;g=C(k*C(0));d=C(g+C(j+t));h=e?i:h;e=d>h;f=e?8:f;j=C(g+C(j+o));h=e?d:h;e=j>h;f=e?9:f;o=C(g+C(p+o));j=e?j:h;e=o>j;e=C(g+C(p+t))>(e?o:j)?11:e?10:f;if((e|0)==-1){return(x?5:u?4:q?3:c?2:b)|0}b=v[((e<<3)+101312|0)+4>>2]+101408|0;c=w[b|0];q=w[b+1|0];b=a+B(q,20)|0;a=a+B(c,20)|0;return(C(C(z[a+8>>2]*k)+C(C(z[a>>2]*l)+C(m*z[a+4>>2])))>C(C(z[b+8>>2]*k)+C(C(z[b>>2]*l)+C(m*z[b+4>>2])))?c:q)|0}function tt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=v[b>>2];e=a+116|0;if((c|0)!=v[e>>2]){b9(v[37696],4,11562,258,67473,0);return}a:{b:{c:{switch(c-4|0){case 0:c=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:e)+32>>2];if(!c){break a}c=c+8|0;break b;case 2:c=v[(t[a+36|0]&1?v[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=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:e)+36>>2];if(!c){break a}c=c+8|0}d=v[c+4>>2]-1|0;v[c+4>>2]=d;if(d){break a}Ba[v[v[c>>2]+8>>2]](c)}f=xa-16|0;xa=f;d:{e:{f:{g:{h:{i:{j:{c=a+32|0;switch((v[c+4>>2]>>>30|0)-2|0){case 0:break i;case 1:break f;default:break j}}d=v[c>>2];if(d){break h}d=c+16|0;HR(d,b);break g}d=v[c>>2];if(w[d+4785|0]){break e}}g=d+16|0;h=v[v[g+976>>2]+1024>>2];d=c+16|0;Ba[v[v[h>>2]+48>>2]](h,d+32|0);HR(d,b);b=v[v[g+976>>2]+1024>>2];Ba[v[v[b>>2]+44>>2]](b,d+32|0)}b=v[c-12>>2];if(!b){break d}k:{l:{switch(x[b+4>>1]-5|0){case 0:b=b- -64|0;break k;case 8:b=b- -64|0;break k;default:break l}}b=b- -64|0}t[f|0]=0;v[f+8>>2]=1;TJ(b,d,f+8|0,f,0);break d}d=v[c>>2]}Yu(d,c);g=v[c+4>>2];v[c+4>>2]=g|1;d=v[c+8>>2];if(!d){d=Qu(v[c>>2],g>>>24&15);v[c+8>>2]=d}lV(d- -64|0,b)}xa=f+16|0;m:{n:{o:{switch(v[a+116>>2]-4|0){case 0:b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:e)+32>>2];if(!b){break m}b=b+8|0;break n;case 2:b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:e)+4>>2];if(!b){break m}b=b+8|0;break n;case 1:break o;default:break m}}b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:e)+36>>2];if(!b){break m}b=b+8|0}v[b+4>>2]=v[b+4>>2]+1}rt(a,73613)}function QN(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;e=v[b+68>>2];a:{if((e|0)>=0){f=v[a+28>>2];c=e>>>3|0;d=f+(c<<4)|0;k=w[d+14|0];m=w[d+13|0];h=v[a+44>>2]-1|0;g=v[v[a+40>>2]+(h<<2)>>2];i=e&-8;xK(v[a+4>>2],i+v[a+52>>2]|0);v[v[a+40>>2]+(c<<2)>>2]=g;c=v[a+52>>2];i=c+i|0;j=h<<3;c=j+c|0;l=v[c+4>>2];v[i>>2]=v[c>>2];v[i+4>>2]=l;c=f+(h<<4)|0;f=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=f;f=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=f;d=j+v[a+52>>2]|0;v[d>>2]=0;v[d+4>>2]=0;d=v[a+108>>2];c=v[d+456>>2];v[g+68>>2]=e;b:{if(!(w[g+43|0]&2)|w[g+41|0]&8){break b}e=v[v[v[d+444>>2]>>2]+(v[g- -64>>2]<<2)>>2];if(!e){break b}while(1){v[c+(v[e+20>>2]<<2)>>2]=v[g+68>>2];e=v[e+16>>2];if(e){continue}break}}v[a+44>>2]=h;v[a+56>>2]=h;e=a+32|0;break a}f=v[a+68>>2];c=e>>>3|0;d=f+(c<<4)|0;k=w[d+14|0];m=w[d+13|0];h=v[a+84>>2]-1|0;g=v[v[a+80>>2]+(h<<2)>>2];c=c&268435455;i=c<<3;xK(v[a+4>>2],i+v[a+92>>2]|0);v[v[a+80>>2]+(c<<2)>>2]=g;c=v[a+92>>2];i=c+i|0;j=h<<3;c=j+c|0;l=v[c+4>>2];v[i>>2]=v[c>>2];v[i+4>>2]=l;c=f+(h<<4)|0;f=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=f;f=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=f;d=j+v[a+92>>2]|0;v[d>>2]=0;v[d+4>>2]=0;d=v[a+108>>2];c=v[d+456>>2];v[g+68>>2]=e;c:{if(!(w[g+43|0]&2)|w[g+41|0]&8){break c}e=v[v[v[d+444>>2]>>2]+(v[g- -64>>2]<<2)>>2];if(!e){break c}while(1){v[c+(v[e+20>>2]<<2)>>2]=v[g+68>>2];e=v[e+16>>2];if(e){continue}break}}v[a+84>>2]=h;v[a+96>>2]=h;e=a+72|0}v[e>>2]=v[e>>2]-1;Ba[v[v[a>>2]+28>>2]](a,b,k&2?1:0-(k&1)|0,m)}function NA(a){var b=C(0),c=C(0),d=0,e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),y=C(0),A=0,D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=0,N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=0,U=C(0),V=C(0),W=0;d=v[a+4>>2];g=z[d+24>>2];h=z[d+20>>2];e=v[a>>2];i=z[e+24>>2];j=z[e+20>>2];k=z[d+16>>2];l=z[e+16>>2];m=z[d+8>>2];n=z[d+4>>2];o=z[d>>2];p=z[e+8>>2];q=z[e+4>>2];r=z[e>>2];a=v[a+24>>2];s=x[a+2>>1];if(s){M=a+s|0;while(1){D=a+48|0;A=w[a+1|0];s=D+B(A,48)|0;if(A){t=z[a+16>>2];b=z[a+12>>2];N=C(t*b);c=z[a+8>>2];O=C(t*c);u=z[a+24>>2];P=C(u*b);y=z[a+20>>2];Q=C(y*b);R=C(u*c);S=C(y*c);T=(x[a+2>>1]+a|0)+32|0;U=z[a+28>>2];V=z[a+4>>2];f=0;while(1){a=(f<<2)+T|0;b=z[a>>2];c=C(-b);W=a;a=B(f,48)+D|0;E=z[a+44>>2];F=z[a>>2];G=z[a+16>>2];H=z[a+4>>2];I=z[a+20>>2];J=z[a+8>>2];K=z[a+24>>2];L=C(z[a+36>>2]-C(z[a+32>>2]*C(C(C(C(C(t*r)+C(l*F))-C(C(t*o)+C(k*G)))+C(C(C(y*q)+C(j*H))-C(C(y*n)+C(h*I))))+C(C(C(u*p)+C(i*J))-C(C(u*m)+C(g*K))))));c=C(b+(cE?E:c;z[W>>2]=c;b=C(c-b);m=C(m-C(P*b));n=C(n-C(Q*b));o=C(o-C(N*b));p=C(p+C(R*b));q=C(q+C(S*b));r=C(r+C(O*b));c=C(U*b);g=C(g-C(K*c));h=C(h-C(I*c));k=C(k-C(G*c));b=C(V*b);i=C(i+C(J*b));j=C(j+C(H*b));l=C(l+C(F*b));f=f+1|0;if((A|0)!=(f|0)){continue}break}}a=s;if(M>>>0>a>>>0){continue}break}}z[e+8>>2]=p;z[e+4>>2]=q;z[e>>2]=r;z[d+8>>2]=m;z[d+4>>2]=n;z[d>>2]=o;z[e+24>>2]=i;z[e+20>>2]=j;z[e+16>>2]=l;z[d+24>>2]=g;z[d+20>>2]=h;z[d+16>>2]=k}function tK(a,b){var c=0,d=0,e=0;v[a>>2]=0;v[a+4>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;v[a+40>>2]=1065353216;v[a+52>>2]=0;v[a+56>>2]=0;c=a- -64|0;v[c>>2]=0;v[c+4>>2]=0;v[a+60>>2]=1065353216;v[a+72>>2]=0;v[a+76>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+80>>2]=1065353216;v[a+92>>2]=0;v[a+96>>2]=0;v[a+504>>2]=0;v[a+508>>2]=0;c=b+24|0;v[a+500>>2]=c;v[a+104>>2]=b+212;v[a+100>>2]=1065353216;v[a+516>>2]=0;v[a+520>>2]=0;v[a+512>>2]=c;v[a+7088>>2]=0;v[a+6688>>2]=0;v[a+6288>>2]=0;v[a+5888>>2]=0;v[a+5488>>2]=0;v[a+5088>>2]=0;u[a+4702>>1]=0;c=a+4664|0;v[c>>2]=2139095039;v[c+4>>2]=0;c=a+4656|0;v[c>>2]=2139095039;v[c+4>>2]=2139095039;c=a+4648|0;v[c>>2]=0;v[c+4>>2]=1065353216;v[a+4640>>2]=0;v[a+4644>>2]=0;c=v[b+204>>2];d=v[b+208>>2];u[a+7136>>1]=0;v[a+7124>>2]=0;v[a+7116>>2]=0;v[a+7120>>2]=0;e=a+7108|0;v[e>>2]=c;v[e+4>>2]=d;v[a+7104>>2]=0;d=w[b+276|0];c=a+7144|0;t[c|0]=0;t[c+1|0]=0;t[c+2|0]=0;t[c+3|0]=0;t[c+4|0]=0;t[c+5|0]=0;t[c+6|0]=0;t[c+7|0]=0;t[a+7139|0]=0;t[a+7140|0]=0;t[a+7141|0]=0;t[a+7142|0]=0;t[a+7143|0]=0;t[a+7144|0]=0;t[a+7145|0]=0;t[a+7146|0]=0;v[a+7164>>2]=0;v[a+7168>>2]=0;t[a+7138|0]=d;v[a+7172>>2]=v[b+280>>2];v[a+7176>>2]=v[b+284>>2];v[a+7180>>2]=v[b+288>>2];b=v[b+296>>2];v[a+7204>>2]=0;v[a+7208>>2]=0;v[a+7192>>2]=0;v[a+7196>>2]=0;v[a+7188>>2]=b;v[c>>2]=0;J9(a+108|0,0,392);b=a+7224|0;v[b>>2]=0;v[b+4>>2]=0;v[a+7216>>2]=0;v[a+7220>>2]=0;return a}function lV(a,b){var c=0,d=0,e=0,f=0;a:{switch(v[b>>2]){case 3:v[a>>2]=3;z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];return;case 2:c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;v[a+8>>2]=v[b+8>>2];return;case 0:c=v[b>>2];b=v[b+4>>2];v[a+8>>2]=0;v[a>>2]=c;v[a+4>>2]=b;return;case 1:v[a>>2]=1;return;case 4:v[a>>2]=4;z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];c=v[b+32>>2];v[a+32>>2]=c;t[a+36|0]=w[b+36|0];d=w[b+37|0]|w[b+38|0]<<8;t[a+37|0]=d;t[a+38|0]=d>>>8;t[a+39|0]=w[b+39|0];v[a+40>>2]=c+16;e=a,f=Ba[v[v[c>>2]+60>>2]](c)|0,t[e+44|0]=f;return;case 5:v[a>>2]=5;z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];t[a+32|0]=w[b+32|0];c=w[b+33|0]|w[b+34|0]<<8|(w[b+35|0]<<16|w[b+36|0]<<24);t[a+33|0]=c;t[a+34|0]=c>>>8;t[a+35|0]=c>>>16;t[a+36|0]=c>>>24;b=w[b+36|0]|w[b+37|0]<<8|(w[b+38|0]<<16|w[b+39|0]<<24);t[a+36|0]=b;t[a+37|0]=b>>>8;t[a+38|0]=b>>>16;t[a+39|0]=b>>>24;b=v[a+36>>2];v[a+40>>2]=b;v[a+44>>2]=v[b+68>>2];v[a+48>>2]=0;v[a+52>>2]=-842203136;return;case 6:v[a>>2]=6;c=v[b+8>>2];d=v[b+4>>2];v[a+4>>2]=d;v[a+8>>2]=c;c=v[b+16>>2];v[a+12>>2]=v[b+12>>2];v[a+16>>2]=c;t[a+20|0]=w[b+20|0];t[a+23|0]=w[b+23|0];b=w[b+21|0]|w[b+22|0]<<8;t[a+21|0]=b;t[a+22|0]=b>>>8;v[a+28>>2]=0;v[a+32>>2]=-842203136;v[a+24>>2]=d+16;break;default:break a}}}function GE(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=xa-32|0;xa=e;t[a+140|0]=1;d=c>>>1|0;f=c&1;a:{if((b|0)==-1){v[e+12>>2]=d;b=B(f,36)+a|0;c=v[b+4>>2]+(c>>>4&268435452)|0;g=v[c>>2];d=1<>2]=d|g;c=b+16|0;d=v[b+20>>2];b:{if(d>>>0>=(v[b+24>>2]&2147483647)>>>0){pn(c,e+12|0);break b}v[v[c>>2]+(d<<2)>>2]=v[e+12>>2];v[b+20>>2]=v[b+20>>2]+1}a=B(f,36)+a|0;v[a+32>>2]=v[a+32>>2]+1;break a}c=B(f,36)+a|0;v[c+32>>2]=v[c+32>>2]+1;v[e+20>>2]=d;v[e+16>>2]=b;c=0;c:{d:{d=a+76|0;a=v[d+20>>2];e:{if(!a){break e}g=v[e+16>>2];b=(g<<15^-1)+g|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=B(b>>>16^b^-57320555,1000007);h=v[e+20>>2];b=(h<<15^-1)+h|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=a-1&(c^(b>>>16^b));f=v[v[d+12>>2]+(c<<2)>>2];if((f|0)==-1){break e}i=v[d+8>>2];j=v[d+4>>2];while(1){b=(f<<3)+j|0;if((g|0)==v[b>>2]&(h|0)==v[b+4>>2]){break d}f=v[(f<<2)+i>>2];if((f|0)!=-1){continue}break}}t[e+31|0]=0;if(v[d+36>>2]==v[d+16>>2]){b=a?a<<1:16;if(b>>>0>a>>>0){EE(d,b);a=v[d+20>>2]}b=a-1|0;a=v[e+16>>2];a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;c=B(a>>>16^a^-57320555,1000007);a=v[e+20>>2];a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;c=b&(c^(a>>>16^a))}a=v[d+28>>2];v[d+28>>2]=a+1;b=v[d+12>>2]+(c<<2)|0;v[v[d+8>>2]+(a<<2)>>2]=v[b>>2];v[b>>2]=a;v[d+36>>2]=v[d+36>>2]+1;v[d+32>>2]=v[d+32>>2]+1;a=v[d+4>>2]+(a<<3)|0;break c}t[e+31|0]=1;a=b}if(w[e+31|0]){break a}v[a>>2]=v[e+16>>2];v[a+4>>2]=v[e+20>>2]}xa=e+32|0}function Xz(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=C(0),p=0,q=0;h=v[b+8>>2];if(!h){v[a+8>>2]=0;v[a+12>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;c=v[a>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a>>2]=0;return}j=h<<1|1;c=v[a+28>>2];a:{if(!(c>>>0>>0|c>>>2>>>0>h>>>0)){g=j<<2;f=v[a+4>>2];break a}d=v[a>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}e=h<<3;g=j<<2;k=B(h,12);d=g+k|0;if(d){c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,d,24422,19305,198)|0}else{c=0}v[a+16>>2]=c;v[a>>2]=c;v[a+28>>2]=h;v[a+12>>2]=j;v[a+20>>2]=c+e;f=c+k|0;v[a+4>>2]=f}J9(f,255,g);v[a+8>>2]=j;f=0;v[a+24>>2]=0;l=v[a+16>>2];m=v[a+20>>2];k=v[a+4>>2];n=v[b+4>>2];g=0;while(1){b=n+(g<<5)|0;o=z[b+4>>2];p=v[b+16>>2];d=p>>>7|0;q=v[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=Saa(b^((c&255)<<24|b>>>8),c^c>>>8,9,0);d=Aa;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;e=(((b^((c&2147483647)<<1|b>>>31))>>>0)%(j>>>0)<<2)+k|0;d=v[e>>2];b=d;b:{if((b|0)!=-1){while(1){i=l+(b<<3)|0;c=n+(v[i>>2]<<5)|0;if(!(v[c+12>>2]!=(q|0)|v[c+16>>2]!=(p|0))){z[i+4>>2]=o+z[i+4>>2];break b}b=v[m+(b<<2)>>2];if((b|0)!=-1){continue}break}}v[m+(f<<2)>>2]=d;v[e>>2]=f;b=l+(f<<3)|0;z[b+4>>2]=o;v[b>>2]=g;f=f+1|0}g=g+1|0;if((h|0)!=(g|0)){continue}break}v[a+24>>2]=f}function x$(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=v[a+12>>2];if(e){a:{if(v[a+16>>2]){c=Saa(e,0,12,0);h=c+4|0;g=Aa?-1:c>>>0>h>>>0?-1:h;if(g){c=v[37696];f=c+12|0;f=(j=f,k=g,l=Ba[v[v[c>>2]+20>>2]](c)|0?54545:63804,m=13740,n=92,i=v[v[f>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}v[f>>2]=e;c=f+4|0;if(v[a+12>>2]){while(1){g=v[a+16>>2]+B(v[(d<<2)+b>>2],12)|0;h=v[g+4>>2];e=c+B(d,12)|0;v[e>>2]=v[g>>2];v[e+4>>2]=h;v[e+8>>2]=v[g+8>>2];d=d+1|0;e=v[a+12>>2];if(d>>>0>>0){continue}break}d=B(e,12)}I9(v[a+16>>2],c,d);break a}c=Saa(e,0,6,0);h=c+4|0;g=Aa?-1:c>>>0>h>>>0?-1:h;if(g){c=v[37696];f=c+12|0;f=(n=f,m=g,l=Ba[v[v[c>>2]+20>>2]](c)|0?54227:63804,k=13740,j=102,i=v[v[f>>2]+8>>2],Ba[i](n|0,m|0,l|0,k|0,j|0)|0)}v[f>>2]=e;c=f+4|0;if(v[a+12>>2]){while(1){e=c+B(d,6)|0;g=v[a+20>>2]+B(v[(d<<2)+b>>2],6)|0;h=x[g>>1]|x[g+2>>1]<<16;u[e>>1]=h;u[e+2>>1]=h>>>16;u[e+4>>1]=x[g+4>>1];d=d+1|0;e=v[a+12>>2];if(d>>>0>>0){continue}break}d=B(e,6)}I9(v[a+20>>2],c,d)}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f);d=v[a+12>>2];c=d<<2;b:{if(!c){f=0;break b}d=v[37696]+12|0;f=Ba[v[v[d>>2]+8>>2]](d,c,24422,13740,111)|0;d=v[a+12>>2]}c=v[a+8>>2];c:{d:{e:{if(d){d=0;if(c){break e}while(1){c=d<<2;v[c+f>>2]=v[b+c>>2];d=d+1|0;if(d>>>0>2]){continue}break}a=a+8|0;break c}a=a+8|0;if(!c){break c}break d}while(1){e=d<<2;v[e+f>>2]=v[c+(v[b+e>>2]<<2)>>2];d=d+1|0;if(d>>>0>2]){continue}break}a=a+8|0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a>>2]=f}}function oR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+20>>2];a=v[a+28>>2];kP(a);v[a+4324>>2]=b;v[a+4328>>2]=1;d=a+4304|0;a:{if(!b){v[a+4368>>2]=1;v[a+4408>>2]=1;v[a+4364>>2]=0;v[a+4404>>2]=0;v[a+4444>>2]=0;v[a+4448>>2]=1;break a}Ba[v[v[b>>2]+16>>2]](b);c=v[v[a+4324>>2]+16>>2];v[a+4368>>2]=1;v[a+4320>>2]=c;c=a+4364|0;v[c>>2]=b;Ba[v[v[b>>2]+16>>2]](b);c=v[v[c>>2]+16>>2];v[a+4408>>2]=1;v[a+4360>>2]=c;c=a+4404|0;v[c>>2]=b;Ba[v[v[b>>2]+16>>2]](b);c=v[v[c>>2]+16>>2];v[a+4448>>2]=1;v[a+4400>>2]=c;c=a+4444|0;v[c>>2]=b;Ba[v[v[b>>2]+16>>2]](b);v[a+4440>>2]=v[v[c>>2]+16>>2]}b=v[a+4320>>2];Ba[v[v[b>>2]+72>>2]](b,d);b=v[a+4360>>2];Ba[v[v[b>>2]+72>>2]](b,a+4344|0);b=v[a+4400>>2];Ba[v[v[b>>2]+72>>2]](b,a+4384|0);b=v[a+4440>>2];Ba[v[v[b>>2]+72>>2]](b,a+4424|0);d=v[a+4676>>2];if(d){b=0;while(1){c=v[v[a+4672>>2]+(b<<2)>>2];if(!(c&1)){d=v[a+976>>2];e=v[c+48>>2];f=v[d+340>>2]+(e>>>3&536870908)|0;g=v[f>>2];h=f,i=Vaa(-2,e)&g,v[h>>2]=i;e=v[d+328>>2];v[d+328>>2]=e+1;v[v[d+324>>2]+(e<<2)>>2]=c;d=v[a+4676>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}e=v[a+4688>>2];if(e){d=v[a+2168>>2];f=v[a+4684>>2];b=0;while(1){c=v[f+(b<<2)>>2];if(!(c&1|!c)){v[d+976>>2]=v[d+976>>2]-1;v[c>>2]=v[d+984>>2];v[d+984>>2]=c}b=b+1|0;if((e|0)!=(b|0)){continue}break}}c=v[a+4700>>2];if(c){b=v[a+2168>>2];e=v[a+4696>>2];a=0;while(1){d=v[e+(a<<2)>>2];if(!(d&1|!d)){v[b+1852>>2]=v[b+1852>>2]-1;v[d>>2]=v[b+1860>>2];v[b+1860>>2]=d}a=a+1|0;if((c|0)!=(a|0)){continue}break}}}function W2(a,b,c,d,e){var f=0,g=0,h=0;f=xa-48|0;xa=f;if(e){v[e>>2]=3}a:{b:{g=v[b+8>>2];c:{if(g>>>0<3){break c}d:{if(g>>>0>=65536){if(t[b+36|0]&1){break c}if(v[b+4>>2]){break d}break c}if(!v[b+4>>2]){break c}}if(y[b>>2]<12|x[b+40>>1]<4){break c}e:{if(v[b+16>>2]){if(!v[b+28>>2]|y[b+20>>2]<4){break c}g=x[b+36>>1];if(y[b+24>>2]<(g&1?2:4)>>>0){break c}if(y[b+12>>2]>19){break e}break c}g=x[b+36>>1];if(!(g&2)){break c}}h=x[b+38>>1];if(g&32){if((h-4&65535)>>>0>=253){break c}break b}if((h-8&65535)>>>0<249){break b}}g=0;b9(v[37696],4,10899,193,74390,0);break a}if(z[a+4>>2]<=C(0)){g=0;b9(v[37696],4,10899,199,74546,0);break a}if(z[a+8>>2]>2]=v[b+32>>2];h=v[b+28>>2];v[f+24>>2]=v[b+24>>2];v[f+28>>2]=h;h=v[b+20>>2];v[f+16>>2]=v[b+16>>2];v[f+20>>2]=h;h=v[b+12>>2];v[f+8>>2]=v[b+8>>2];v[f+12>>2]=h;h=v[b+4>>2];v[f>>2]=v[b>>2];v[f+4>>2]=h;u[f+36>>1]=g;b=x[b+38>>1]|x[b+40>>1]<<16;u[f+38>>1]=b;u[f+40>>1]=b>>>16;b=0;f:{if(!(g&2)){break f}v[f+20>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;v[f+32>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;u[f+36>>1]=g&65534;g=0;g:{h:{i:{h=Ba[v[v[d>>2]+8>>2]](d)|0;switch(h|0){case 0:case 2:break h;case 1:break i;default:break g}}v[e>>2]=1;break a}Ba[v[v[d>>2]+12>>2]](d,f);b=(h|0)==2}switch(h|0){case 0:case 2:break f;default:break a}}if(y[f+8>>2]>=256){g=0;b9(v[37696],32,10899,247,72618,0);break a}g=g4(c,f,v[a+48>>2],0,d);if(!e|!g){break a}v[e>>2]=b?2:0;g=1}xa=f+48|0;return g}function Gy(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=xa-16|0;xa=g;v[a+172>>2]=0;v[a+176>>2]=0;d=v[a+8>>2];if(d){f=a+88|0;i=a+112|0;while(1){b=d-1|0;c=v[v[a+4>>2]+(b<<2)>>2];v[a+8>>2]=b;v[g+12>>2]=c;b=v[a+168>>2];d=v[b+16>>2];a:{if(!(d>>>0>c>>>0|c>>>0>=d+v[b+20>>2]>>>0)){b=v[a+92>>2];if(b>>>0>=(v[a+96>>2]&2147483647)>>>0){Dy(f,g+12|0);break a}v[v[a+88>>2]+(b<<2)>>2]=c;v[a+92>>2]=b+1;break a}b=v[a+116>>2];b:{if(b>>>0>=(v[a+120>>2]&2147483647)>>>0){Dy(i,g+12|0);break b}v[v[a+112>>2]+(b<<2)>>2]=c;v[a+116>>2]=b+1}v[a+152>>2]=v[a+152>>2]-1}d=v[a+8>>2];if(d){continue}break}}c=v[a+104>>2];if(c){d=0;while(1){b=v[v[a+100>>2]+(d<<2)>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);c=v[a+104>>2]}d=d+1|0;if(d>>>0>>0){continue}break}}v[a+104>>2]=0;v[a+92>>2]=0;h=v[a+160>>2];if(h){e=v[a+168>>2];c=v[e+16>>2];c:{if(!(c>>>0<=h>>>0&c+v[e+20>>2]>>>0>h>>>0)){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,h);break c}k=v[e+4>>2];b=0;j=v[e+8>>2];f=j;while(1){i=b;b=b+1|0;c=f;f=c-1|0;d=(f<<2)+k|0;if(y[d>>2]>>0){continue}break}d:{if(c>>>0>=j>>>0){break d}f=i&3;if(f){b=0;while(1){v[d>>2]=v[v[e+4>>2]+(c<<2)>>2];c=c+1|0;d=d+4|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}if(i-1>>>0<3){break d}while(1){b=c<<2;v[d>>2]=v[b+v[e+4>>2]>>2];v[d+4>>2]=v[(b+v[e+4>>2]|0)+4>>2];v[d+8>>2]=v[(b+v[e+4>>2]|0)+8>>2];v[d+12>>2]=v[(b+v[e+4>>2]|0)+12>>2];d=d+16|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}v[e+8>>2]=j-1}v[a+160>>2]=0;v[a+164>>2]=0}xa=g+16|0}function M_(a,b,c,d,e){var f=0,g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=0;f=v[a+5916>>2];a:{if(f){f=f-1|0;v[a+5916>>2]=f;g=v[((f<<2)+a|0)+5660>>2];break a}g=v[a+5656>>2];v[a+5656>>2]=g+1}f=B(g,48)+a|0;t[f+2357|0]=d;t[f+2356|0]=c;t[f+2355|0]=b;u[f+2358>>1]=0;v[f+2348>>2]=0;t[f+2354|0]=255;h=f+2340|0;v[h>>2]=0;v[h+4>>2]=0;t[f+2360|0]=g;u[f+2352>>1]=65535;g=a+1296|0;h=c<<4;c=g+h|0;i=z[c+4>>2];p=h;h=a+272|0;q=p+h|0;m=z[q+4>>2];r=d<<4;d=r+g|0;s=z[d+4>>2];r=h+r|0;n=z[r+4>>2];p=b<<4;b=g+p|0;j=z[b+4>>2];g=h+p|0;k=z[g+4>>2];w=z[c+8>>2];y=z[q+8>>2];A=z[d>>2];D=z[r>>2];E=z[d+8>>2];F=z[r+8>>2];G=z[b+8>>2];H=z[g+8>>2];l=z[c>>2];x=z[q>>2];I=z[b>>2];J=z[g>>2];v[f+2332>>2]=0;o=C(x-l);l=C(J-I);x=C(o-l);o=C(n-s);s=C(k-j);n=C(o-s);j=C(C(D-A)-l);m=C(C(m-i)-s);i=C(C(x*n)-C(j*m));o=m;m=C(H-G);k=C(C(F-E)-m);w=C(C(y-w)-m);n=C(C(o*k)-C(n*w));j=C(C(w*j)-C(k*x));k=C(C(i*i)+C(C(n*n)+C(j*j)));b=k>C(1.1920928955078125e-7);o=i;i=C(C(1)/C(K(b?k:C(1))));k=C(o*i);z[f+2328>>2]=k;j=C(j*i);z[f+2324>>2]=j;g=f+2320|0;i=C(n*i);z[g>>2]=i;l=C(C(k*m)+C(C(i*l)+C(s*j)));z[f+2336>>2]=l;p=f+2359|0;if(!(!b|!(l<=z[e>>2]))){c=v[a>>2];b:{if(!c){d=0;break b}b=c;while(1){h=v[a+4>>2];e=b-1|0;d=e>>>1|0;q=v[h+(d<<2)>>2];if(!(l>2])){d=b;break b}v[h+(b<<2)>>2]=q;b=d;if(e>>>0>1){continue}break}}v[v[a+4>>2]+(d<<2)>>2]=g;v[a>>2]=c+1;L=1}t[p|0]=L;return g}function TH(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0);n=w[a+158|0];if(n){r=z[a+24>>2];o=z[b+24>>2];s=z[a+20>>2];p=z[b+20>>2];f=z[a>>2];c=z[b+4>>2];i=z[a+12>>2];d=z[b+8>>2];j=z[b+12>>2];k=z[a+8>>2];l=z[b>>2];m=z[a+4>>2];e=C(C(f*c)+C(C(C(i*d)-C(j*k))-C(l*m)));g=C(C(k*l)+C(C(C(i*c)-C(j*m))-C(d*f)));h=C(C(m*d)+C(C(C(i*l)-C(j*f))-C(c*k)));t=z[a+16>>2];q=z[b+16>>2];d=C(C(d*k)+C(C(c*m)+C(C(j*i)+C(f*l))));if(d>2]=r+(n&4?C(0):u);z[b+20>>2]=s+(n&2?C(0):p);z[b+16>>2]=t+(n&1?C(0):q);h=n&32?C(0):C(l*c);e=n&8?C(0):C(j*c);g=n&16?C(0):C(v*c);c=C(C(h*h)+C(C(e*e)+C(g*g)));if(c!=C(0)){l=e;c=C(K(c));e=C(c*C(.5));d=C(R9(e)/c);c=C(l*d);e=H9(e);g=C(g*d);h=C(h*d);d=C(C(i*e)+C(C(C(C(i*C(0))-C(f*c))-C(g*m))-C(h*k)));l=d;o=C(d*d);d=C(C(k*e)+C(C(C(-f)*g)+C(C(c*m)+C(C(k*C(0))+C(i*h)))));j=C(C(f*e)+C(C(C(-m)*h)+C(C(g*k)+C(C(f*C(0))+C(i*c)))));f=C(C(m*e)+C(C(C(-k)*c)+C(C(h*f)+C(C(m*C(0))+C(i*g)))));c=C(C(1)/C(K(C(o+C(C(d*d)+C(C(j*j)+C(f*f)))))));i=C(l*c);k=C(d*c);m=C(f*c);f=C(j*c)}z[b+12>>2]=i;z[b+8>>2]=k;z[b+4>>2]=m;z[b>>2]=f}}function cW(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=0,y=0,A=C(0);g=xa-4288|0;xa=g;i=z[d+4>>2];k=C(i+i);h=z[d+8>>2];n=C(k*h);q=z[d>>2];j=C(q+q);m=z[d+12>>2];o=C(j*m);l=C(n-o);r=C(j*h);s=C(k*m);p=C(r+s);n=C(n+o);t=C(j*i);u=C(h+h);w=C(u*m);m=C(t-w);o=C(r-s);r=C(t+w);j=C(C(1)-C(q*j));q=C(h*u);h=C(j-q);k=C(i*k);i=C(C(C(1)-k)-q);q=z[c+12>>2];s=z[c+8>>2];t=z[d+24>>2];u=z[d+20>>2];w=z[c+4>>2];A=z[d+16>>2];j=C(j-k);a:{if(j>2]=t;z[g+4276>>2]=u;z[g+4272>>2]=A;z[g+4268>>2]=h;z[g+4264>>2]=i;z[g+4260>>2]=j;z[g+4256>>2]=l;v[g+4200>>2]=-1;z[g+28>>2]=q;z[g+24>>2]=s;z[g+20>>2]=w;v[g+16>>2]=3;c=g+4200|0;x=g+16|0;lV(c,x);v[g+4144>>2]=-1;y=g+4144|0;lV(y,e);v[g+4136>>2]=0;v[g+4140>>2]=0;d=0;v[g+4112>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;b:{if(!BZ(c,y,g+4256|0,f,g,x)){break b}if(!RV(a,b,v[g+4112>>2],g+16|0)){break b}d=v[g+4112>>2]!=0}xa=g+4288|0;return d|0}function tx(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0,t=0,u=C(0),x=C(0),y=C(0),A=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;A=v[b+24>>2];r=v[a+336>>2];s=v[b+8>>2];c=s;v[c>>2]=0;v[c+4>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;if(r>>>0>=2){D=v[a+272>>2];E=v[b>>2];F=v[a+344>>2];G=v[a+340>>2];H=v[a+332>>2];a=1;while(1){k=a<<5;b=(v[(k+H|0)+24>>2]<<5)+E|0;i=z[b>>2];j=z[b+8>>2];c=B(a,160)+G|0;d=z[c+120>>2];f=z[c+128>>2];e=C(C(j*d)-C(i*f));l=z[b+4>>2];g=C(l*f);f=z[c+124>>2];g=C(g-C(f*j));o=C(C(i*e)-C(g*l));d=C(C(i*f)-C(d*l));p=C(C(j*g)-C(d*i));q=C(C(l*d)-C(e*j));c=k+s|0;b=B(a,80)+F|0;t=w[b+76|0];a:{if(!t){d=C(0);j=C(0);i=C(0);break a}I=(v[b+72>>2]<<2)+A|0;u=C(-l);x=C(-i);y=C(-j);J=B(a,76)+D|0;f=C(0);b=0;d=C(0);e=C(0);g=C(0);m=C(0);n=C(0);while(1){h=z[(b<<2)+I>>2];k=B(b,24)+J|0;e=C(e+C(h*z[k+12>>2]));g=C(g+C(h*z[k+8>>2]));m=C(m+C(h*z[k+4>>2]));n=C(n+C(h*z[k>>2]));f=C(f+C(h*z[k+20>>2]));d=C(d+C(h*z[k+16>>2]));b=b+1|0;if((t|0)!=(b|0)){continue}break}h=C(C(i*d)+C(e*u));o=C(o+C(C(C(n*d)-C(e*m))+C(h+h)));h=C(C(g*e)-C(f*n));e=C(C(j*e)+C(f*x));p=C(p+C(h+C(e+e)));e=C(C(m*f)-C(d*g));d=C(C(l*f)+C(d*y));q=C(q+C(e+C(d+d)));d=C(C(i*m)+C(n*u));j=C(C(j*n)+C(g*x));i=C(C(l*g)+C(m*y))}z[c+8>>2]=d;z[c+4>>2]=j;z[c>>2]=i;v[c+28>>2]=0;z[c+16>>2]=q;v[c+12>>2]=0;z[c+24>>2]=o;z[c+20>>2]=p;a=a+1|0;if((r|0)!=(a|0)){continue}break}}}function z4(a){var b=C(0),c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),x=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;c=v[a>>2];h=v[c+28>>2];k=v[h+28>>2];x=h;p=c;b=z[h+8>>2];e=C(z[c+8>>2]-b);m=C(e*e);e=z[h>>2];f=C(z[c>>2]-e);j=C(f*f);f=z[h+4>>2];g=C(z[c+4>>2]-f);g=C(m+C(j+C(g*g)));c=g>C(0);j=b;b=z[k+8>>2];d=C(j-b);q=C(d*d);j=e;e=z[k>>2];d=C(j-e);m=C(d*d);j=f;f=z[k+4>>2];d=C(j-f);d=C(q+C(m+C(d*d)));g=c?g:C(0);h=d>g;p=h?x:c?p:0;c=v[k+28>>2];b=C(b-z[c+8>>2]);m=C(b*b);b=C(e-z[c>>2]);j=C(b*b);b=C(f-z[c+4>>2]);h=C(m+C(j+C(b*b)))>(h?d:g)?k:p;c=v[h+28>>2];b=z[c+8>>2];e=z[c>>2];i=z[c+4>>2];f=z[h>>2];g=z[h+4>>2];d=z[h+8>>2];z[a+36>>2]=d;z[a+32>>2]=g;z[a+28>>2]=f;i=C(i-g);n=C(-i);r=C(e-f);q=C(-r);s=C(b-d);m=C(-s);b=C(0);e=C(0);k=1;while(1){f=C(z[c>>2]+f);z[a+28>>2]=f;g=C(z[c+4>>2]+g);z[a+32>>2]=g;d=C(z[c+8>>2]+d);z[a+36>>2]=d;o=z[h+8>>2];c=v[c+28>>2];j=z[c+8>>2];t=C(z[c+4>>2]-z[h+4>>2]);w=C(z[c>>2]-z[h>>2]);l=C(C(C(r*t)+C(w*n))+l);z[a+20>>2]=l;o=C(j-o);b=C(C(C(s*w)+C(o*q))+b);z[a+16>>2]=b;e=C(e+C(C(i*o)+C(t*m)));z[a+12>>2]=e;k=k+1|0;if((c|0)!=(h|0)){continue}break}u[a+4>>1]=k;i=C(K(C(C(l*l)+C(C(e*e)+C(b*b)))));if(i>C(0)){n=C(C(1)/i);l=C(l*n);z[a+20>>2]=l;b=C(b*n);z[a+16>>2]=b;e=C(e*n);z[a+12>>2]=e}z[a+24>>2]=i;i=C(C(1)/C((k&65535)>>>0));d=C(i*d);z[a+36>>2]=d;g=C(i*g);z[a+32>>2]=g;f=C(i*f);z[a+28>>2]=f;z[a+40>>2]=C(l*d)+C(C(e*f)+C(g*b))}function wI(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=xa-16|0;xa=h;a:{b:{c:{i=v[a+392>>2];if(i){k=a+484|0;if(b){break c}while(1){d=wr(c,88);e=v[a+388>>2];f=v[a+552>>2];j=v[a+556>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+8>>2]=f;v[d+12>>2]=j;v[d+36>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;v[d+64>>2]=0;v[d+68>>2]=0;v[d+72>>2]=0;v[d+84>>2]=a;f=i-g|0;v[d+80>>2]=f>>>0<16?f:16;v[d>>2]=130984;v[d+76>>2]=e+(g<<2);yI(d);v[h+12>>2]=d;e=v[a+488>>2];d:{if(e>>>0>=(v[a+492>>2]&2147483647)>>>0){zI(k,h+12|0);break d}v[v[a+484>>2]+(e<<2)>>2]=d;v[a+488>>2]=e+1}g=g+16|0;if(i>>>0>g>>>0){continue}break}}if(b){break b}AI(a+444|0,a);AI(a+404|0,a);break a}while(1){d=wr(c,88);e=v[a+388>>2];f=v[a+552>>2];j=v[a+556>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+8>>2]=f;v[d+12>>2]=j;v[d+36>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;v[d+64>>2]=0;v[d+68>>2]=0;v[d+72>>2]=0;v[d+84>>2]=a;f=i-g|0;v[d+80>>2]=f>>>0<16?f:16;v[d>>2]=130984;v[d+20>>2]=b;v[d+24>>2]=1;v[d+76>>2]=e+(g<<2);Ba[v[v[b>>2]+16>>2]](b);v[d+16>>2]=v[v[d+20>>2]+16>>2];Ba[v[v[d>>2]+20>>2]](d);v[h+12>>2]=d;e=v[a+488>>2];e:{if(e>>>0>=(v[a+492>>2]&2147483647)>>>0){zI(k,h+12|0);break e}v[v[a+484>>2]+(e<<2)>>2]=d;v[a+488>>2]=e+1}g=g+16|0;if(i>>>0>g>>>0){continue}break}}d=a+484|0;BI(a+444|0,a,c,b,3466,d);BI(a+404|0,a,c,b,3452,d)}xa=h+16|0}function r4(a,b,c,d,e,f,g,h,i,j){var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0;l=C(-85070586659632215e21);n=C(85070586659632215e21);a:{if(!a){o=C(85070586659632215e21);k=C(85070586659632215e21);p=C(-85070586659632215e21);m=C(-85070586659632215e21);break a}m=C(-85070586659632215e21);p=C(-85070586659632215e21);k=C(85070586659632215e21);o=C(85070586659632215e21);while(1){q=z[b+8>>2];l=l>q?l:q;r=z[b+4>>2];m=m>r?m:r;s=z[b>>2];p=p>s?p:s;n=n>2]=q;r=C(C(k+m)*C(.5));z[f+4>>2]=r;s=C(C(o+p)*C(.5));z[f>>2]=s;l=C(l-n);b:{p=C(p-o);b=p>>0<3)){if(!(d>l)){break b}}n=e;o=n;m=dk?o:C(k*C(.5));e=b?o:C(p*C(.5));if(d>l){break c}o=C(l*C(.5))}b=j?0:v[h>>2];a=B(b,12)+i|0;d=C(q-o);z[a+8>>2]=d;l=C(r-n);z[a+4>>2]=l;k=C(s-e);z[a>>2]=k;e=C(s+e);z[a+12>>2]=e;z[a+20>>2]=d;z[a+16>>2]=l;z[a+32>>2]=d;n=C(r+n);z[a+28>>2]=n;z[a+24>>2]=e;z[a+44>>2]=d;z[a+40>>2]=n;z[a+36>>2]=k;d=C(q+o);z[a+56>>2]=d;z[a+52>>2]=l;z[a+48>>2]=k;z[a+68>>2]=d;z[a- -64>>2]=l;z[a+60>>2]=e;z[a+80>>2]=d;z[a+76>>2]=n;z[a+72>>2]=e;v[h>>2]=b+8;z[a+92>>2]=d;z[a+88>>2]=n;z[a+84>>2]=k;return 1}z[g+8>>2]=l;z[g+4>>2]=k;z[g>>2]=p;return 0}function uX(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=C(g);h=h|0;i=i|0;j=C(j);var k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0);c=xa-112|0;xa=c;k=z[b+20>>2];l=z[e+40>>2];m=z[b+24>>2];n=z[e+44>>2];o=z[b+16>>2];p=z[e+36>>2];z[c+48>>2]=z[e>>2];z[c+52>>2]=z[e+4>>2];z[c+56>>2]=z[e+8>>2];z[c+60>>2]=z[e+12>>2];z[c- -64>>2]=z[e+16>>2];z[c+68>>2]=z[e+20>>2];z[c+72>>2]=z[e+24>>2];z[c+76>>2]=z[e+28>>2];q=z[e+32>>2];z[c+92>>2]=n-m;z[c+88>>2]=l-k;z[c+80>>2]=q;z[c+84>>2]=p-o;z[c+96>>2]=z[e+48>>2];z[c+100>>2]=z[e+52>>2];z[c+104>>2]=z[e+56>>2];k=z[a+4>>2];v[c+40>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;l=z[f>>2];m=z[f+4>>2];z[c+24>>2]=-z[f+8>>2];z[c+20>>2]=-m;z[c+16>>2]=-l;u[c+8>>1]=x[i>>1];a=F2(c+48|0,C(k+j),c+32|0,c+16|0,g,h+40|0,h+28|0,c+8|0);a:{if(!a){break a}u[h+12>>1]=2;if(!(t[i|0]&1)){break a}g=z[h+40>>2];if(g==C(0)){break a}j=z[f>>2];k=z[f+4>>2];l=C(g*z[f+8>>2]);z[c+40>>2]=-l;m=C(g*k);z[c+36>>2]=-m;n=C(g*j);z[c+32>>2]=-n;D_(c+32|0,c+84|0,c+96|0,c+48|0,c+16|0);o=z[e+36>>2];p=z[e+40>>2];q=z[e+44>>2];r=z[c+72>>2];s=z[c+48>>2];w=z[c+60>>2];y=z[c+76>>2];A=z[c+52>>2];B=z[c+64>>2];D=z[c+80>>2];g=z[c+24>>2];E=z[c+56>>2];j=z[c+16>>2];F=z[c+68>>2];k=z[c+20>>2];u[h+12>>1]=x[h+12>>1]|1;z[h+24>>2]=l+C(q+C(C(C(j*E)+C(k*F))+C(g*D)));z[h+20>>2]=m+C(p+C(C(C(j*A)+C(k*B))+C(g*y)));z[h+16>>2]=n+C(o+C(C(C(j*s)+C(k*w))+C(g*r)))}xa=c+112|0;return a|0}function H1(a,b,c,d,e){var f=0,g=0,h=0,i=C(0),j=0,k=C(0);a:{b:{f=v[a+2328>>2];if(!f){break b}g=f-1|0;f=(g<<6)+a|0;if(!(z[a+2224>>2]>2]*z[c+8>>2])+C(C(z[f>>2]*z[c>>2])+C(z[f+4>>2]*z[c+4>>2]))))){break b}i=z[d>>2];if(!(i>2])){break a}g=(g<<6)+a|0;h=v[a+2320>>2]+(v[g+48>>2]<<6)|0;v[h>>2]=0;v[h+4>>2]=0;v[h+8>>2]=0;v[h+12>>2]=0;j=v[b+4>>2];h=v[a+2320>>2]+(v[g+48>>2]<<6)|0;v[h+16>>2]=v[b>>2];v[h+20>>2]=j;j=v[b+12>>2];v[h+24>>2]=v[b+8>>2];v[h+28>>2]=j;k=z[c+8>>2];h=v[c+4>>2];b=v[a+2320>>2]+(v[g+48>>2]<<6)|0;v[b+32>>2]=v[c>>2];v[b+36>>2]=h;z[b+44>>2]=i;z[b+40>>2]=k;v[(v[a+2320>>2]+(v[g+48>>2]<<6)|0)+48>>2]=e;b=v[d+12>>2];v[f+40>>2]=v[d+8>>2];v[f+44>>2]=b;b=v[d+4>>2];v[f+32>>2]=v[d>>2];v[f+36>>2]=b;break a}f=v[a+2320>>2]+(v[a+2324>>2]<<6)|0;v[f>>2]=0;v[f+4>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;g=v[b+4>>2];f=v[a+2320>>2]+(v[a+2324>>2]<<6)|0;v[f+16>>2]=v[b>>2];v[f+20>>2]=g;g=v[b+12>>2];v[f+24>>2]=v[b+8>>2];v[f+28>>2]=g;i=z[c+8>>2];k=z[d>>2];f=v[c+4>>2];b=v[a+2320>>2]+(v[a+2324>>2]<<6)|0;v[b+32>>2]=v[c>>2];v[b+36>>2]=f;z[b+44>>2]=k;z[b+40>>2]=i;f=v[a+2324>>2];g=f+1|0;v[a+2324>>2]=g;v[(v[a+2320>>2]+(f<<6)|0)+48>>2]=e;e=v[a+2328>>2];b=(e<<6)+a|0;v[b+52>>2]=g;v[b+48>>2]=f;f=v[d+4>>2];v[b+32>>2]=v[d>>2];v[b+36>>2]=f;f=v[d+12>>2];v[b+40>>2]=v[d+8>>2];v[b+44>>2]=f;v[a+2328>>2]=e+1;d=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=d;d=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=d}if(y[a+2324>>2]>=16){A1(a,1,1)}}function mW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=C(0),x=C(0),y=C(0),A=C(0),D=C(0);e=xa-32|0;xa=e;a=v[a+48>>2];l=z[a+56>>2];m=z[a+52>>2];h=z[a+72>>2];n=z[a- -64>>2];o=z[a+68>>2];i=z[a+88>>2];p=z[a+80>>2];q=z[a+84>>2];r=z[a+48>>2];f=z[b+8>>2];g=z[b>>2];j=z[b+4>>2];v[e+28>>2]=0;i=C(C(i*f)+C(C(p*g)+C(j*q)));z[e+24>>2]=i;h=C(C(h*f)+C(C(n*g)+C(j*o)));z[e+20>>2]=h;l=C(C(l*f)+C(C(r*g)+C(j*m)));z[e+16>>2]=l;a:{if(v[a+148>>2]){k=kW(a,e+16|0);v[e+12>>2]=0;z[e+8>>2]=-z[e+24>>2];z[e+4>>2]=-z[e+20>>2];z[e>>2]=-z[e+16>>2];s=kW(a,e);t=v[a+152>>2];k=t+B(k,12)|0;f=z[k+8>>2];g=z[k>>2];j=z[k+4>>2];k=c;m=z[a+88>>2];c=B(s,12)+t|0;i=z[c+8>>2];n=z[a+56>>2];h=z[c>>2];o=z[a+72>>2];l=z[c+4>>2];x=C(z[b+8>>2]*C(C(m*i)+C(C(n*h)+C(o*l))));p=z[a+80>>2];q=z[a+48>>2];r=z[a+64>>2];y=C(z[b>>2]*C(C(p*i)+C(C(q*h)+C(r*l))));u=z[a+84>>2];A=C(u*i);i=z[a+52>>2];D=C(i*h);h=z[a+68>>2];z[k>>2]=x+C(y+C(C(A+C(D+C(h*l)))*z[b+4>>2]));f=C(C(z[b+8>>2]*C(C(m*f)+C(C(n*g)+C(j*o))))+C(C(z[b>>2]*C(C(p*f)+C(C(q*g)+C(j*r))))+C(C(C(u*f)+C(C(i*g)+C(j*h)))*z[b+4>>2])));break a}b=v[a+152>>2];f=C(C(z[b+8>>2]*i)+C(C(z[b>>2]*l)+C(h*z[b+4>>2])));s=w[a+156|0];b:{if(s>>>0<2){g=f;break b}a=1;g=f;while(1){k=b+B(a,12)|0;j=C(C(z[k+8>>2]*i)+C(C(z[k>>2]*l)+C(h*z[k+4>>2])));g=g>j?j:g;f=f>2]=g}z[d>>2]=f;xa=e+32|0}function WP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=xa-16|0;xa=j;k=xa-16|0;xa=k;c=v[a+980>>2];e=v[v[c+376>>2]+(b<<2)>>2];h=v[e>>2];d=v[e+20>>2];if((d|0)!=-1){f=v[c+392>>2]-1|0;v[c+392>>2]=f;g=v[c+388>>2];v[g+(d<<2)>>2]=v[g+(f<<2)>>2];if(d>>>0>>0){v[v[v[c+388>>2]+(d<<2)>>2]+20>>2]=d}v[e+20>>2]=-1}f=h>>>5|0;g=v[c+136>>2]+(f<<2)|0;i=v[g>>2];d=1<>2]=i&(d^-1);break a}if(!v[e+8>>2]){break a}f=v[c+148>>2]+(f<<2)|0;v[f>>2]=d|v[f>>2]}dI(e);d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);v[v[c+376>>2]+(b<<2)>>2]=v[c+372>>2];v[c+372>>2]=b;v[j+12>>2]=h;b=v[c+180>>2];e=b+(h<<2)|0;v[j+8>>2]=v[e>>2];d=v[e>>2];v[k+12>>2]=d;e=v[c+504>>2];b:{if(e>>>0>=(v[c+508>>2]&2147483647)>>>0){b=0;e=v[c+508>>2];i=e&2147483647?e<<1:1;c:{if(!i){break c}e=i<<2;if(!e){break c}b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?37307:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,e,d,16608,553)|0}g=v[c+504>>2];l=(g<<2)+b|0;e=v[c+500>>2];if((g|0)>0){d=e;f=b;while(1){v[f>>2]=v[d>>2];d=d+4|0;f=f+4|0;if(l>>>0>f>>>0){continue}break}}v[l>>2]=v[k+12>>2];if(!(!e|v[c+508>>2]<0)){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,e);g=v[c+504>>2]}v[c+508>>2]=i;v[c+500>>2]=b;v[c+504>>2]=g+1;b=v[c+180>>2];break b}v[v[c+500>>2]+(e<<2)>>2]=d;v[c+504>>2]=e+1}f=b;b=h<<2;v[f+b>>2]=-1;v[b+v[v[c+192>>2]+4>>2]>>2]=0;b=v[c+196>>2]+(h<<3)|0;v[b>>2]=0;v[b+4>>2]=-1;t[c+365|0]=1;v[c+368>>2]=v[c+368>>2]-1;xa=k+16|0;SH(v[a+2376>>2],v[j+12>>2]);xa=j+16|0}function ZW(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);g=xa-48|0;xa=g;i=z[b+20>>2];k=z[b+16>>2];r=z[b+24>>2];j=z[b>>2];l=C(j+j);m=z[b+8>>2];s=z[b+4>>2];n=z[b+12>>2];o=C(n+n);p=z[a+8>>2];q=C(C(C(l*m)-C(s*o))*p);z[g+36>>2]=r-q;m=C(p*C(C(m*o)+C(l*s)));z[g+32>>2]=i-m;z[g+24>>2]=q+r;z[g+20>>2]=i+m;i=C(p*C(C(j*l)+C(C(n*o)+C(-1))));z[g+28>>2]=k-i;z[g+16>>2]=k+i;i=z[a+4>>2];z[g+40>>2]=i;b=0;v[g+12>>2]=0;a:{if(!_W(c,d,g+16|0,g+28|0,i,g+12|0)){break a}i=z[g+12>>2];if(i>2];k=z[d>>2];o=z[c+4>>2];j=z[d+4>>2];n=z[c+8>>2];l=z[d+8>>2];z[h+40>>2]=i;v[h+44>>2]=0;v[h+48>>2]=0;v[h+8>>2]=-1;n=C(n+C(i*l));z[h+24>>2]=n;o=C(o+C(i*j));z[h+20>>2]=o;p=C(e+C(i*k));z[h+16>>2]=p;b:{if(w[f|0]&2){e=C(0);if(i==C(0)){z[h+36>>2]=-l;z[h+32>>2]=-j;z[h+28>>2]=-k;b=3;break b}l=z[g+24>>2];i=C(z[g+36>>2]-l);r=z[g+16>>2];k=C(z[g+28>>2]-r);m=z[g+20>>2];j=C(z[g+32>>2]-m);s=C(C(C(n-l)*i)+C(C(C(p-r)*k)+C(j*C(o-m))));c:{if(s<=C(0)){break c}e=C(1);q=C(C(i*i)+C(C(k*k)+C(j*j)));if(q<=s){break c}e=C(s/q)}i=C(n-C(l+C(i*e)));z[h+36>>2]=i;j=C(o-C(m+C(j*e)));z[h+32>>2]=j;e=C(p-C(r+C(k*e)));z[h+28>>2]=e;b=3;k=C(K(C(C(i*i)+C(C(e*e)+C(j*j)))));if(!(k>C(0))){break b}q=i;i=C(C(1)/k);z[h+36>>2]=q*i;z[h+32>>2]=j*i;z[h+28>>2]=e*i;break b}v[h+28>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0;b=1}u[h+12>>1]=b;b=1}xa=g+48|0;return b|0}function gV(a,b,c,d,e){var f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);h=xa-48|0;xa=h;l=z[a+4>>2];n=C(l+l);j=z[a+8>>2];q=C(n*j);i=z[a>>2];f=C(i+i);o=z[a+12>>2];r=C(f*o);s=C(q-r);z[h+36>>2]=s;q=C(q+r);z[h+28>>2]=q;i=C(C(1)-C(i*f));m=C(l*n);r=C(i-m);z[h+40>>2]=r;g=i;k=C(j+j);i=C(j*k);t=C(g-i);z[h+24>>2]=t;g=C(f*j);n=C(n*o);j=C(g+n);z[h+32>>2]=j;p=C(f*l);o=C(k*o);l=C(p-o);z[h+20>>2]=l;f=C(g-n);z[h+16>>2]=f;n=C(p+o);z[h+12>>2]=n;o=C(C(C(1)-m)-i);z[h+8>>2]=o;if(v[c+8>>2]-1065353216|(v[c+4>>2]-1065353216|v[c>>2]-1065353216)){fV(h+8|0,c);i=z[h+44>>2];r=z[h+40>>2];s=z[h+36>>2];q=z[h+28>>2];t=z[h+24>>2];l=z[h+20>>2];f=z[h+16>>2];n=z[h+12>>2];o=z[h+8>>2];j=z[h+32>>2]}p=z[a+20>>2];u=z[a+24>>2];w=z[a+16>>2];m=z[b>>2];k=z[b+4>>2];g=z[b+8>>2];z[d+12>>2]=C(C(C(l*m)+C(j*k))+C(i*g))+C(0);z[d+8>>2]=u+C(C(C(f*m)+C(q*k))+C(r*g));z[d+4>>2]=p+C(C(C(n*m)+C(t*k))+C(s*g));z[d>>2]=w+C(C(C(o*m)+C(l*k))+C(j*g));m=z[b+12>>2];k=C(l*m);p=k>C(0)?k:C(-k);k=z[b+16>>2];g=C(j*k);p=C(p+(g>C(0)?g:C(-g)));g=i;i=z[b+20>>2];g=C(g*i);z[e+12>>2]=p+(g>C(0)?g:C(-g));f=C(f*m);g=f>C(0)?f:C(-f);f=C(q*k);g=C(g+(f>C(0)?f:C(-f)));f=C(r*i);z[e+8>>2]=g+(f>C(0)?f:C(-f));f=C(n*m);g=f>C(0)?f:C(-f);f=C(t*k);g=C(g+(f>C(0)?f:C(-f)));f=C(s*i);z[e+4>>2]=g+(f>C(0)?f:C(-f));f=C(o*m);l=C(l*k);j=C(j*i);z[e>>2]=C((f>C(0)?f:C(-f))+(l>C(0)?l:C(-l)))+(j>C(0)?j:C(-j));xa=h+48|0}function VN(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=v[a+44>>2];g=v[a+84>>2];f=h+g|0;b=v[a+48>>2]&2147483647;a:{if(f>>>0<=b>>>0){break a}c=b;b=b<<1;b=b>>>0>f>>>0?b:f;d=b>>>0>256?b:256;if(c>>>0>>0){vP(a+40|0,d)}if(d>>>0>(v[a+36>>2]&2147483647)>>>0){b:{if(!d){break b}c=d<<4;if(!c){break b}b=v[37696];e=b+12|0;e=(l=e,m=c,n=Ba[v[v[b>>2]+20>>2]](b)|0?27179:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}c=v[a+28>>2];b=v[a+32>>2];if((b|0)>0){i=(b<<4)+e|0;b=e;while(1){j=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=j;j=v[c+12>>2];v[b+8>>2]=v[c+8>>2];v[b+12>>2]=j;c=c+16|0;b=b+16|0;if(i>>>0>b>>>0){continue}break}c=v[a+28>>2]}if(!(!c|v[a+36>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+36>>2]=d;v[a+28>>2]=e}if(d>>>0<=(v[a+60>>2]&2147483647)>>>0){break a}WN(a+52|0,d)}v[a+44>>2]=f;v[a+56>>2]=f;v[a+32>>2]=f;I9(v[a+40>>2]+(h<<2)|0,v[a+80>>2],g<<2);I9(v[a+28>>2]+(h<<4)|0,v[a+68>>2],g<<4);I9(v[a+52>>2]+(h<<3)|0,v[a+92>>2],g<<3);c=v[a+84>>2];if(c){f=v[a+108>>2];g=v[f+456>>2];i=v[a+80>>2];e=0;while(1){d=v[i+(e<<2)>>2];v[d+68>>2]=v[a+24>>2]|e+h<<3;b=w[d+43|0];c:{if(!(b&64)){break c}t[d+43|0]=b&191;if(w[d+41|0]&8){break c}b=v[v[v[f+444>>2]>>2]+(v[d- -64>>2]<<2)>>2];if(!b){break c}while(1){v[g+(v[b+20>>2]<<2)>>2]=v[d+68>>2];b=v[b+16>>2];if(b){continue}break}c=v[a+84>>2]}e=e+1|0;if(c>>>0>e>>>0){continue}break}}v[a+84>>2]=0;v[a+96>>2]=0;v[a+72>>2]=0}function lP(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=C(0),t=C(0);f=v[v[a+2168>>2]+44>>2]+v[d>>2]|0;g=x[d+10>>1];o=f+(g>>>1&32752)|0;p=g&31;i=x[d+6>>1];if(!(!(p&e)|!i)){e=v[a+2368>>2];j=v[e+24>>2]&2147483647;k=v[e+20>>2];g=0;while(1){h=B(g,40)+o|0;e=x[h+28>>1];q=v[h+36>>2];l=v[h+32>>2];r=l>>>5|0;e=j>>>0<=r>>>0|!(v[k+(r<<2)>>2]>>>l&1)?e:e|1;l=q>>>5|0;u[h+28>>1]=l>>>0>=j>>>0|!(v[k+(l<<2)>>2]>>>q&1)?e:e|2;g=g+1|0;if((i|0)!=(g|0)){continue}break}}a=v[a+2372>>2];v[b>>2]=v[v[c+16>>2]+24>>2];v[b+4>>2]=v[v[c+16>>2]+28>>2];g=v[c+16>>2];h=v[g+16>>2];j=h>>>5|0;k=v[a+24>>2]&2147483647;a:{if(j>>>0>>0){e=1;if(v[v[a+20>>2]+(j<<2)>>2]>>>h&1){break a}}e=0}g=v[g+20>>2];h=g>>>5|0;e=h>>>0>=k>>>0|!(v[v[a+20>>2]+(h<<2)>>2]>>>g&1)?e:e|2;v[b+20>>2]=i;v[b+16>>2]=o;u[b+14>>1]=e;e=x[d+8>>1];if(!e){v[b+8>>2]=0;u[b+12>>1]=0;return}v[b+8>>2]=f+4;if(p&8){i=v[c+12>>2];a=v[v[c+8>>2]+44>>2];b:{if(w[a+9|0]){z[f+12>>2]=z[a+80>>2];z[f+16>>2]=z[a+84>>2];z[f+20>>2]=z[a+88>>2];m=z[a+100>>2];n=z[a+96>>2];s=z[a+104>>2];break b}v[f+20>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;s=C(0)}z[f+44>>2]=s;z[f+40>>2]=m;z[f+36>>2]=n;a=v[i+44>>2];c:{if(w[a+9|0]){z[f+24>>2]=z[a+80>>2];z[f+28>>2]=z[a+84>>2];z[f+32>>2]=z[a+88>>2];n=z[a+96>>2];t=z[a+104>>2];m=z[a+100>>2];break c}v[f+32>>2]=0;v[f+24>>2]=0;v[f+28>>2]=0;n=C(0);m=C(0)}z[f+56>>2]=t;z[f+52>>2]=m;z[f+48>>2]=n;u[d+10>>1]=x[d+10>>1]&65527}u[b+12>>1]=e-4}function sx(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=0,u=C(0),x=0,y=0,A=0,D=0;r=v[a+336>>2];if(r){d=z[a+352>>2];s=d>2];x=v[c+12>>2];y=v[c>>2];A=v[a+236>>2];D=v[a+332>>2];while(1){i=n<<5;a=v[(i+D|0)+16>>2];c=i+y|0;d=z[c+8>>2];e=z[c>>2];g=z[c+4>>2];f=C(K(C(C(d*d)+C(C(e*e)+C(g*g)))));if(f>C(0)){h=C(C(1)/f);d=C(d*h);g=C(g*h);e=C(e*h)}h=f>2]);k=C(-z[b>>2]);j=C(-z[b+8>>2])}f=C(C(1)/z[a+124>>2]);o=C(j*f);z[c+8>>2]=o;l=C(l*f);z[c+4>>2]=l;k=C(k*f);z[c>>2]=k;a=B(n,112)+A|0;j=z[a+104>>2];p=z[a+92>>2];m=z[a+80>>2];e=C(h*e);g=C(h*g);h=C(C(C(e*z[a+76>>2])+C(g*z[a+88>>2]))+C(d*z[a+100>>2]));q=C(C(C(e*z[a+72>>2])+C(g*z[a+84>>2]))+C(d*z[a+96>>2]));u=C(C(e*h)-C(q*g));z[c+24>>2]=u;j=C(C(C(e*m)+C(g*p))+C(d*j));p=C(C(d*q)-C(j*e));z[c+20>>2]=p;g=C(C(g*j)-C(h*d));z[c+16>>2]=g;if(t){i=i+t|0;d=z[i+24>>2];h=z[i+20>>2];e=z[i+16>>2];j=z[i>>2];m=z[i+4>>2];z[c+8>>2]=o-C(f*z[i+8>>2]);z[c+4>>2]=l-C(f*m);z[c>>2]=k-C(f*j);k=z[a+104>>2];l=z[a+92>>2];o=z[a+80>>2];j=z[a+100>>2];m=z[a+88>>2];q=z[a+76>>2];f=C(-h);z[c+16>>2]=g+C(C(C(z[a+84>>2]*f)-C(e*z[a+72>>2]))-C(d*z[a+96>>2]));z[c+20>>2]=p+C(C(C(m*f)-C(e*q))-C(d*j));z[c+24>>2]=u+C(C(C(l*f)-C(e*o))-C(d*k))}n=n+1|0;if((r|0)!=(n|0)){continue}break}}}function I8(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0);d=xa-80|0;xa=d;f=z[b>>2];a:{if((v[b>>2]&2139095040)==2139095040){break a}k=z[b+4>>2];if((v[b+4>>2]&2139095040)==2139095040){break a}j=z[b+8>>2];if(!(C(D(C(C(K(C(C(j*j)+C(C(f*f)+C(k*k)))))+C(-1))))>2]&2139095040)==2139095040){break a}e=xa-48|0;xa=e;k=C(1);g=z[b+8>>2];h=z[b>>2];i=z[b+4>>2];f=C(C(1)/C(K(C(C(g*g)+C(C(h*h)+C(i*i))))));j=C(z[b+12>>2]*f);z[e+44>>2]=j;g=C(g*f);z[e+40>>2]=g;i=C(i*f);z[e+36>>2]=i;f=C(h*f);z[e+32>>2]=f;b:{if((((f==C(0))+(i==C(0))|0)+(g==C(0))|0)==2){h=C(0);if(f>C(0)){break b}m=C(1);if(f>2]=0;v[e>>2]=1065353216;v[e+4>>2]=0;p9(e+16|0,e,e+32|0);k=z[e+28>>2];m=z[e+24>>2];n=z[e+16>>2];j=z[e+44>>2];g=z[e+40>>2];i=z[e+36>>2];f=z[e+32>>2];h=z[e+20>>2]}z[d+52>>2]=k;z[d+48>>2]=m;z[d+44>>2]=h;z[d+40>>2]=n;z[d+64>>2]=j*C(-g);z[d+60>>2]=j*C(-i);z[d+56>>2]=j*C(-f);xa=e+48|0;v[d+32>>2]=1;v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=1065353216;v[d>>2]=0;v[d+4>>2]=0;t[d+72|0]=11;v[d+76>>2]=c;b=Ba[v[v[a>>2]+96>>2]](a,d+32|0,d+76|0,1,1,d+72|0)|0;if(!b){break a}Ba[v[v[b>>2]+76>>2]](b,d);l=Ba[v[v[a>>2]+84>>2]](a,d+40|0)|0;if(l){Ba[v[v[l>>2]+84>>2]](l,b)|0}Ba[v[v[b>>2]>>2]](b)}xa=d+80|0;return l|0}function y5(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+80>>2];a:{if(!w[a+84|0]){break a}t[a+84|0]=0;v[b+460>>2]=0;v[b+452>>2]=0;v[b+456>>2]=0;a=0;b:{c:{d:{g=v[b+80>>2];switch(g|0){case 0:break c;case 1:break d;default:break b}}a=1;v[b+456>>2]=1;break b}c=1;v[b+452>>2]=1}e:{f:{g:{h=v[b+84>>2];switch(h|0){case 1:break f;case 0:break g;default:break e}}c=c|2;v[b+452>>2]=c;break e}a=a|2;v[b+456>>2]=a}h:{i:{j:{i=v[b+88>>2];switch(i|0){case 0:break j;case 1:break i;default:break h}}c=c|4;v[b+452>>2]=c;break h}a=a|4;v[b+456>>2]=a}k:{l:{m:{f=v[b+92>>2];switch(f|0){case 1:break l;case 0:break m;default:break k}}c=c|8;v[b+452>>2]=c;break k}a=a|8;v[b+456>>2]=a}n:{o:{p:{d=v[b+96>>2];switch(d|0){case 1:break o;case 0:break p;default:break n}}c=c|16;v[b+452>>2]=c;break n}a=a|16;v[b+456>>2]=a}q:{r:{s:{e=v[b+100>>2];switch(e|0){case 1:break r;case 0:break s;default:break q}}v[b+452>>2]=c|32;break q}v[b+456>>2]=a|32}a=0;if(!(!g|z[b+308>>2]==C(0)&z[b+304>>2]==C(0))){a=1;v[b+460>>2]=1}if(!(!h|z[b+324>>2]==C(0)&z[b+320>>2]==C(0))){a=a|2;v[b+460>>2]=a}if(!(!i|z[b+340>>2]==C(0)&z[b+336>>2]==C(0))){a=a|4;v[b+460>>2]=a}t:{if(!(!f|(!e|(z[b+384>>2]!=C(0)?!d:!d|z[b+388>>2]==C(0))))){a=a|32;break t}if(!(!f|z[b+368>>2]==C(0)&z[b+372>>2]==C(0))){a=a|16;v[b+460>>2]=a}u:{if(z[b+352>>2]==C(0)){if(z[b+356>>2]==C(0)){break a}if(d|e){break u}break a}if(!(d|e)){break a}}a=a|8}v[b+460>>2]=a}return b|0}function iN(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=C(0),n=C(0),o=C(0),p=C(0),q=0;b=v[a+28>>2];f=v[v[b>>2]+11968>>2];if(f){g=v[b- -64>>2];while(1){b=wr(v[v[a+48>>2]+620>>2],72);h=v[a+32>>2];i=v[a+36>>2];e=v[a+28>>2];m=z[e+92>>2];n=z[a+44>>2];o=z[e+96>>2];c=v[a+48>>2];p=z[c+56>>2];e=v[e+80>>2];j=v[a+40>>2];k=v[c+632>>2];l=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=k;v[b+12>>2]=l;v[b+68>>2]=j;v[b+64>>2]=c;v[b+60>>2]=e;z[b+56>>2]=p;z[b+52>>2]=o;z[b+48>>2]=n;z[b+44>>2]=m;v[b+40>>2]=i;c=f-d|0;v[b+36>>2]=c>>>0<64?c:64;v[b+32>>2]=g+(d<<3);v[b+28>>2]=h;v[b>>2]=133388;c=v[a+20>>2];v[b+20>>2]=c;v[b+24>>2]=1;if(c){Ba[v[v[c>>2]+16>>2]](c);v[b+16>>2]=v[v[b+20>>2]+16>>2];c=v[b>>2]}else{c=133388}Ba[v[c+20>>2]](b);d=d- -64|0;if(f>>>0>d>>>0){continue}break}b=v[a+28>>2]}f=v[b+8>>2]&2147483647;if(f){d=0;while(1){b=wr(v[v[a+48>>2]+620>>2],64);e=v[a+40>>2];g=v[e+11936>>2];c=v[a+48>>2];h=v[c+496>>2];i=v[c+484>>2];j=v[a+36>>2];k=v[a+28>>2];l=v[c+632>>2];q=v[c+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=l;v[b+12>>2]=q;v[b+56>>2]=k;v[b+52>>2]=j;v[b+48>>2]=c;v[b+44>>2]=e;v[b+40>>2]=i;v[b+36>>2]=h;c=f-d|0;v[b+32>>2]=c>>>0<64?c:64;v[b>>2]=133444;v[b+28>>2]=g+(d<<2);c=v[a+20>>2];v[b+20>>2]=c;v[b+24>>2]=1;if(c){Ba[v[v[c>>2]+16>>2]](c);v[b+16>>2]=v[v[b+20>>2]+16>>2];c=v[b>>2]}else{c=133444}Ba[v[c+20>>2]](b);d=d- -64|0;if(f>>>0>d>>>0){continue}break}}}function $F(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;h=xa-16|0;xa=h;e=v[a+16>>2];a:{if(e>>>0>=b>>>0){break a}f=v[a+20>>2];d=((f+b|0)-1>>>0)/(f>>>0)|0;c=v[a+4>>2];k=d-c|0;v[a+16>>2]=e+B(f,k);if((d|0)==(c|0)){break a}while(1){d=0;e=v[a+20>>2]<<2;if(e){c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,16683,84)|0}v[h+12>>2]=d;c=v[a+4>>2];b:{if(c>>>0>=(v[a+8>>2]&2147483647)>>>0){d=0;c=v[a+8>>2];f=c&2147483647?c<<1:1;c:{if(!f){break c}e=f<<2;if(!e){break c}d=v[37696];c=d+12|0;d=(m=c,n=e,o=Ba[v[v[d>>2]+20>>2]](d)|0?55585:63804,p=16608,q=553,l=v[v[c>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}i=v[a+4>>2];e=(i<<2)+d|0;if((i|0)>0){j=v[a>>2];c=d;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[h+12>>2];d:{if(v[a+8>>2]<0){break d}e=v[a>>2];if(!e){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e);i=v[a+4>>2]}v[a+8>>2]=f;v[a>>2]=d;v[a+4>>2]=i+1;break b}v[v[a>>2]+(c<<2)>>2]=d;v[a+4>>2]=c+1}g=g+1|0;if((k|0)!=(g|0)){continue}break}}d=v[a+12>>2];e:{if(d>>>0>=b>>>0){break e}e=d^-1;f=v[a>>2];if(b-d&1){g=v[a+20>>2];c=(d>>>0)/(g>>>0)|0;v[v[f+(c<<2)>>2]+(d-B(c,g)<<2)>>2]=-128;d=d+1|0}if((e|0)==(0-b|0)){break e}while(1){g=v[a+20>>2];c=(d>>>0)/(g>>>0)|0;v[v[f+(c<<2)>>2]+(d-B(c,g)<<2)>>2]=-128;e=d+1|0;g=v[a+20>>2];c=(e>>>0)/(g>>>0)|0;v[v[f+(c<<2)>>2]+(e-B(c,g)<<2)>>2]=-128;d=d+2|0;if((d|0)!=(b|0)){continue}break}}v[a+12>>2]=b;xa=h+16|0}function r9(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=0,m=0,n=C(0),o=0,p=C(0),q=0;c=z[b+20>>2];d=z[b+16>>2];f=z[b+32>>2];g=z[b+28>>2];i=z[b+12>>2];j=z[b+24>>2];e=z[b+8>>2];n=C(e*e);e=z[b>>2];p=C(e*e);e=z[b+4>>2];e=C(n+C(p+C(e*e)));z[a>>2]=e;f=C(C(f*f)+C(C(j*j)+C(g*g)));z[a+8>>2]=f;c=C(C(c*c)+C(C(i*i)+C(d*d)));z[a+4>>2]=c;l=c>e;h=!l;o=f>z[(h<<2)+a>>2]?2:h;h=z[(l<<2)+a>>2]>2];m=h?o:l;k=B(m,12)+b|0;m=(m<<2)+a|0;i=z[m>>2];c=C(C(1)/C(K(i)));d=C(z[k>>2]*c);z[k>>2]=d;f=C(c*z[k+4>>2]);z[k+4>>2]=f;g=C(c*z[k+8>>2]);z[k+8>>2]=g;q=m;p=C(i*c);m=h?l:o;h=B(m,12)+b|0;j=z[h+8>>2];e=z[h>>2];n=z[h+4>>2];c=C(C(g*j)+C(C(d*e)+C(f*n)));l=(l?2:3)-o|0;b=B(l,12)+b|0;i=C(C(g*z[b+8>>2])+C(C(d*z[b>>2])+C(f*z[b+4>>2])));z[q>>2]=p+C(C(D(c))+C(D(i)));z[h+8>>2]=j-C(g*c);z[h+4>>2]=n-C(f*c);z[h>>2]=e-C(d*c);c=z[k+8>>2];d=z[k+4>>2];g=C(z[b>>2]-C(i*z[k>>2]));z[b>>2]=g;j=C(z[b+4>>2]-C(i*d));z[b+4>>2]=j;i=C(z[b+8>>2]-C(i*c));z[b+8>>2]=i;c=z[h+8>>2];d=z[h>>2];f=z[h+4>>2];e=C(K(C(C(c*c)+C(C(d*d)+C(f*f)))));if(e>C(0)){g=C(C(1)/e);d=C(d*g);z[h>>2]=d;f=C(f*g);z[h+4>>2]=f;c=C(c*g);z[h+8>>2]=c;i=z[b+8>>2];j=z[b+4>>2];g=z[b>>2]}n=e;e=C(C(c*i)+C(C(d*g)+C(f*j)));z[(m<<2)+a>>2]=n+C(D(e));d=C(g-C(d*e));z[b>>2]=d;f=C(j-C(f*e));z[b+4>>2]=f;c=C(i-C(c*e));z[b+8>>2]=c;g=C(K(C(C(c*c)+C(C(d*d)+C(f*f)))));if(g>C(0)){e=d;d=C(C(1)/g);z[b>>2]=e*d;z[b+4>>2]=f*d;z[b+8>>2]=c*d}z[(l<<2)+a>>2]=g}function dA(a,b,c,d,e,f,g,h,i,j,k){var l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);v[j+72>>2]=h;r=z[e>>2];m=C(r+r);l=z[e+8>>2];s=C(m*l);w=z[e+4>>2];t=C(w+w);n=z[e+12>>2];E=C(t*n);D=C(s-E);o=z[d+8>>2];o=o==C(0)?C(0):C(K(o));y=C(C(1)-C(r*m));F=C(w*t);r=C(y-F);p=z[d>>2];p=p==C(0)?C(0):C(K(p));x=C(t*l);A=C(m*n);t=C(x+A);q=z[d+4>>2];q=q==C(0)?C(0):C(K(q));z[j- -64>>2]=C(C(o*r)*r)+C(C(C(p*D)*D)+C(t*C(t*q)));G=C(m*w);B=n;n=C(l+l);H=C(B*n);m=C(G+H);w=C(p*m);I=C(l*n);n=C(y-I);y=C(q*n);x=C(x-A);A=C(o*x);z[j+48>>2]=C(A*x)+C(C(w*m)+C(n*y));B=q;q=C(G-H);l=C(B*q);s=C(s+E);o=C(o*s);B=C(o*s);s=C(C(C(1)-F)-I);p=C(p*s);z[j+32>>2]=B+C(C(p*s)+C(q*l));m=C(C(o*x)+C(C(p*m)+C(n*l)));z[j+44>>2]=m;z[j+36>>2]=m;l=C(C(o*r)+C(C(p*D)+C(t*l)));z[j+56>>2]=l;z[j+40>>2]=l;l=C(C(A*r)+C(C(w*D)+C(t*y)));z[j+60>>2]=l;z[j+52>>2]=l;z[j>>2]=z[a>>2];z[j+4>>2]=z[a+4>>2];z[j+8>>2]=z[a+8>>2];z[j+16>>2]=z[b>>2];z[j+20>>2]=z[b+4>>2];z[j+24>>2]=z[b+8>>2];a:{if(!k){break a}if(k&1){v[j>>2]=0}if(k&2){v[j+4>>2]=0}if(k&4){v[j+8>>2]=0}if(k&8){v[j+16>>2]=0}if(k&16){v[j+20>>2]=0}if(!(k&32)){break a}v[j+24>>2]=0}z[j+76>>2]=g;z[j+68>>2]=f;z[j+12>>2]=c;z[j+80>>2]=z[e>>2];z[j+84>>2]=z[e+4>>2];z[j+88>>2]=z[e+8>>2];z[j+92>>2]=z[e+12>>2];z[j+96>>2]=z[e+16>>2];z[j+100>>2]=z[e+20>>2];c=z[e+24>>2];u[j+108>>1]=k;z[j+104>>2]=c;z[j+28>>2]=i}function Kz(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,u=0,y=0;e=v[v[a+32>>2]>>2];c=e+12168|0;v[c>>2]=v[c>>2]+v[e+12092>>2];p=v[e+12004>>2];if(p){q=v[a+96>>2];u=v[e+12e3>>2];while(1){c=B(n,36)+u|0;b=v[c+12>>2];v[b>>2]=v[c+16>>2];v[b+4>>2]=v[c+20>>2];r=w[b+12|0];t[b+12|0]=w[c+24|0];t[b+13|0]=w[c+25|0];t[b+14|0]=w[c+26|0];s=v[b+8>>2];v[b+8>>2]=v[c+28>>2];f=x[c+4>>1];a:{if(f>>>0<2){break a}b=1;j=f-1|0;o=j&1;d=v[c+8>>2];g=v[e+12012>>2];h=v[c>>2];if((f|0)!=2){j=j&-2;f=0;while(1){i=g+(b+h<<2)|0;k=v[v[i>>2]+12>>2];v[k+36>>2]=v[d+20>>2];t[k+42|0]=w[d+26|0];i=v[v[i+4>>2]+12>>2];v[i+36>>2]=v[d+20>>2];t[i+42|0]=w[d+26|0];b=b+2|0;f=f+2|0;if((j|0)!=(f|0)){continue}break}}if(!o){break a}b=v[v[g+(b+h<<2)>>2]+12>>2];v[b+36>>2]=v[d+20>>2];t[b+42|0]=w[d+26|0]}if(!(!s|!r)){j=v[c+32>>2];o=v[q+32>>2];i=v[e+12012>>2];f=v[c>>2];c=0;b=0;d=0;while(1){g=x[j+(c<<1)>>1];while(1){h=v[v[v[i+(f<<2)>>2]+12>>2]+68>>2];k=o+(v[((h&7)<<2)+q>>2]+(h>>>3|0)<<4)|0;h=w[k+12|0];b:{while(1){l=d>>>0>>0;if(!(h?l:1)){break b}y=d;d=g-d|0;l=(l?h:0)&255;m=l-b|0;m=d>>>0>>0?d:m;d=y+m|0;b=b+m|0;if((l|0)!=(b|0)){continue}break}f=f+1|0;b=0;continue}break}g=v[k+8>>2];if(g){z[g+(b<<2)>>2]=z[(c<<2)+s>>2]}c=c+1|0;if((r|0)!=(c|0)){continue}break}}n=n+1|0;if((p|0)!=(n|0)){continue}break}}v[e+12004>>2]=0;My(v[e+11848>>2],e+11836|0);a=v[v[a+28>>2]+336>>2];v[e>>2]=v[a>>2];v[a>>2]=e}function uU(a,b,c,d){var e=0,f=0,g=C(0),h=0,i=0,j=0,k=C(0),l=C(0),m=C(0);e=xa-48|0;xa=e;i=A[a+440>>3];j=A[a+432>>3];z[e+32>>2]=A[a+448>>3];z[e+28>>2]=i;z[e+24>>2]=j;z[e+8>>2]=z[a+12>>2];z[e+12>>2]=z[a+16>>2];z[e+16>>2]=z[a+20>>2];z[e+20>>2]=z[a+24>>2];f=Ba[v[v[b>>2]+88>>2]](b,e+8|0)|0;v[a+424>>2]=f;if(f){t[e+40|0]=11;v[e+44>>2]=d;b=Ba[v[v[b>>2]+96>>2]](b,c,e+44|0,1,1,e+40|0)|0;c=v[a+424>>2];Ba[v[v[c>>2]+84>>2]](c,b)|0;Ba[v[v[b>>2]>>2]](b);b=v[a+424>>2];Ba[v[v[b>>2]+208>>2]](b,1,1);b=v[a+424>>2];d=xa-16|0;xa=d;z[d+12>>2]=z[a+504>>2];c=xa-128|0;xa=c;v[c+124>>2]=1065353216;v[c+120>>2]=1065353216;v[c+112>>2]=1065353216;v[c+116>>2]=1065353216;v[c+104>>2]=0;v[c+108>>2]=1065353216;v[c+96>>2]=0;v[c+100>>2]=0;v[c+80>>2]=0;z[c+88>>2]=0;z[c+84>>2]=0;f=d+12|0;a:{if(f){h=c+24|0;z8(h,1);b:{c:{if(B8(b,f,0,h)){if(z[c+72>>2]==C(0)){break c}C8(c+24|0,c+112|0,c+96|0,c+124|0,c+80|0,b,24738);k=z[c+88>>2];l=z[c+84>>2];m=z[c+80>>2];g=z[c+124>>2];break b}f=v[37696];v[c>>2]=24738;b9(f,4,6223,280,70878,c)}g=C(1)}break a}f=v[37696];v[c+16>>2]=24738;b9(f,4,6223,288,70960,c+16|0);g=C(1)}Ba[v[v[b>>2]+116>>2]](b,g);Ba[v[v[b>>2]+128>>2]](b,c+112|0);z[c+48>>2]=k;z[c+44>>2]=l;f=v[c+100>>2];v[c+24>>2]=v[c+96>>2];v[c+28>>2]=f;z[c+40>>2]=m;f=v[c+108>>2];v[c+32>>2]=v[c+104>>2];v[c+36>>2]=f;Ba[v[v[b>>2]+108>>2]](b,c+24|0);xa=c+128|0;xa=d+16|0;b=v[a+480>>2];Ba[v[v[b>>2]+44>>2]](b,v[a+424>>2],0)}xa=e+48|0}function EF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=v[a+448>>2];c=v[f>>2];d=b<<1;e=d|1;b=v[f+20>>2];f=(e>>>0)/(b>>>0)|0;f=v[v[c+(f<<2)>>2]+(e-B(b,f)<<2)>>2];e=(d>>>0)/(b>>>0)|0;h=v[v[c+(e<<2)>>2]+(d-B(b,e)<<2)>>2];b=h>>>7|0;a:{if((b|0)==33554431){break a}c=v[a+16>>2];d=v[a+192>>2]+(b<<2)|0;if((f^v[d>>2])>>>0<=127){v[d>>2]=-128}g=c+B(b,24)|0;c=w[g+4|0];if(c&16){break a}e=b+32>>>5|0;b:{if(e>>>0<=(v[a+312>>2]&2147483647)>>>0){d=v[a+308>>2];break b}c=v[37696]+12|0;d=Ba[v[v[c>>2]+8>>2]](c,e<<2,24422,17999,438)|0;c=v[a+308>>2];c:{if(!c){break c}I9(d,c,v[a+312>>2]<<2);if(v[a+312>>2]<0){break c}c=v[a+308>>2];if(!c){break c}i=v[37696]+12|0;Ba[v[v[i>>2]+12>>2]](i,c)}c=v[a+312>>2];J9((c<<2)+d|0,0,e-c<<2);v[a+312>>2]=e;v[a+308>>2]=d;c=w[g+4|0]}d=(h>>>10&4194300)+d|0;v[d>>2]=v[d>>2]|1<>>7|0;d:{if((d|0)==33554431){break d}c=v[a+16>>2];e=v[a+192>>2]+(d<<2)|0;if((b|0)==(v[e>>2]>>>7|0)){v[e>>2]=-128}g=c+B(d,24)|0;b=w[g+4|0];if(b&16){break d}e=d+32>>>5|0;e:{if(e>>>0<=(v[a+312>>2]&2147483647)>>>0){c=v[a+308>>2];break e}b=v[37696]+12|0;c=Ba[v[v[b>>2]+8>>2]](b,e<<2,24422,17999,438)|0;b=v[a+308>>2];f:{if(!b){break f}I9(c,b,v[a+312>>2]<<2);if(v[a+312>>2]<0){break f}b=v[a+308>>2];if(!b){break f}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,b)}b=v[a+312>>2];J9((b<<2)+c|0,0,e-b<<2);v[a+312>>2]=e;v[a+308>>2]=c;b=w[g+4|0]}a=(f>>>10&4194300)+c|0;v[a>>2]=v[a>>2]|1<>2];g=xa-48|0;xa=g;b=v[a+28>>2];a=b+3940|0;c=b+3320|0;v[a>>2]=c;v[b+3944>>2]=1;Ba[v[v[b+3320>>2]+16>>2]](c);c=b+3936|0;v[c>>2]=v[v[a>>2]+16>>2];v[b+3904>>2]=1;d=b+3900|0;a=b+3920|0;v[d>>2]=a;Ba[v[v[b+3920>>2]+16>>2]](a);e=b+3896|0;v[e>>2]=v[v[d>>2]+16>>2];c=v[c>>2];Ba[v[v[c>>2]+72>>2]](c,a);a=v[e>>2];Ba[v[v[a>>2]+72>>2]](a,b+3880|0);c=xa-16|0;xa=c;d=v[b+976>>2];v[c+4>>2]=0;if(c+12|0){v[c+12>>2]=v[d+1e3>>2]}a=c+8|0;if(a){v[a>>2]=v[d+996>>2]}v[b+2460>>2]=0;a=v[c+12>>2];if(a>>>0>(v[b+2464>>2]&2147483647)>>>0){zP(b+2456|0,a);a=v[c+12>>2]}v[b+2460>>2]=a;v[b+2472>>2]=0;a=v[c+8>>2];if(a>>>0>(v[b+2476>>2]&2147483647)>>>0){zP(b+2468|0,a);a=v[c+8>>2]}v[b+2472>>2]=a;AK(d,v[b+2456>>2],c+12|0,v[b+2468>>2],c+8|0,0,c+4|0);a=v[c+12>>2];v[b+2460>>2]=a;e=v[c+8>>2];v[b+2472>>2]=e;v[d+1804>>2]=e;v[d+1800>>2]=a;xa=c+16|0;v[b+3860>>2]=f;v[b+3864>>2]=1;a=b+3840|0;a:{if(!f){d=v[b+3856>>2];break a}Ba[v[v[f>>2]+16>>2]](f);d=v[v[b+3860>>2]+16>>2];v[b+3856>>2]=d}Ba[v[v[d>>2]+72>>2]](d,a);a=v[v[b+976>>2]+1024>>2];Ba[v[v[a>>2]+84>>2]](g+8|0,a);c=v[b+2460>>2];if(c){f=(v[b+2360>>2]&8)!=0;a=c;while(1){d=c-h|0;if(d>>>0<256?d:256){e=a>>>0<256?a:256;d=0;while(1){i=v[(v[b+2456>>2]+(d+h<<3)|0)+4>>2];vJ(v[b+2168>>2],i);TR(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}}xa=g+48|0}function Pu(a){var b=0,c=0;c=v[a+268>>2];a:{if(!(c&4194304)){z[a+236>>2]=z[a+96>>2];b=v[a+104>>2];v[a+240>>2]=v[a+100>>2];v[a+244>>2]=b;break a}CG(a+16|0,a+236|0);c=c&-4194305}b:{if(!(c&8388608)){z[a+248>>2]=z[a+112>>2];b=v[a+120>>2];v[a+252>>2]=v[a+116>>2];v[a+256>>2]=b;break b}DG(a+16|0,a+248|0);c=c&-8388609}if(!(!(c&32768)|!(t[a+60|0]&1))){b=v[a+8>>2];if(!b){b=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}_G(a+16|0,v[v[a>>2]+2428>>2],b+192|0,z[a+260>>2]);c=c&-32769}if(c&402653184){IG(a+16|0,(c&134217728)>>>27|0,(c&268435456)>>>28|0);c=c&-402653185}if(c&196608){b=v[a+8>>2];if(!b){b=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}FG(a+16|0,v[v[a>>2]+2428>>2],b+220|0,b+232|0);v[b+236>>2]=0;v[b+240>>2]=0;v[b+228>>2]=0;v[b+232>>2]=0;v[b+220>>2]=0;v[b+224>>2]=0;c=c&-196609}if(c&1610612736){KG(a+16|0,(c&536870912)>>>29|0,(c&1073741824)>>>30|0);c=c&-1610612737}if(c&786432){b=v[a+8>>2];if(!b){b=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}JG(a+16|0,v[v[a>>2]+2428>>2],b+244|0,b+256|0);v[b+260>>2]=0;v[b+264>>2]=0;v[b+252>>2]=0;v[b+256>>2]=0;v[b+244>>2]=0;v[b+248>>2]=0;c=c&-786433}if(!(c&16777216)){z[a+260>>2]=z[a+172>>2];v[a+268>>2]=c;return}if(!(c&100663296)){VG(a+16|0,z[a+260>>2],0);v[a+268>>2]=c&-16777217;return}c:{if(!(c&67108864)){break c}b=v[a+8>>2];if(!b){b=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}if((w[a+60|0]^w[b+268|0])&1?c&16384:0){break c}VG(a+16|0,z[a+260>>2],1);c=c&-83886081}v[a+268>>2]=c}function aV(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0);c=xa-128|0;xa=c;j=z[b+20>>2];h=z[b+8>>2];i=C(j-h);p=z[b+12>>2];k=z[b>>2];f=C(p-k);o=z[b+16>>2];q=z[b+4>>2];g=C(o-q);e=C(K(C(C(i*i)+C(C(f*f)+C(g*g)))));if(e>C(0)){e=C(C(1)/e);i=C(i*e);g=C(g*e);f=C(f*e)}l=C(D(f))C(0)){d=C(C(1)/d);e=C(e*d);n=C(n*d);m=C(m*d)}d=z[b+24>>2];v[a+32>>2]=0;v[a>>2]=1;z[c+120>>2]=h;z[c+116>>2]=q;z[c+112>>2]=k;l=_U(a,c+112|0);z[c+96>>2]=z[b+12>>2];z[c+100>>2]=z[b+16>>2];z[c+104>>2]=z[b+20>>2];l=_U(l,c+96|0);v[l>>2]=4;v[a+32>>2]=0;z[c+80>>2]=z[b+12>>2];z[c+84>>2]=z[b+16>>2];z[c+88>>2]=z[b+20>>2];a=_U(l,c+80|0);h=C(d*C(.25));k=C(e*h);q=C(j-C(i*d));t=C(k+C(k+q));z[c+72>>2]=t;j=C(n*h);u=C(o-C(g*d));w=C(j+C(j+u));z[c+68>>2]=w;o=C(m*h);p=C(p-C(f*d));x=C(o+C(o+p));z[c+64>>2]=x;a=_U(a,c- -64|0);k=C(q-k);d=C(h*C(1.7320507764816284));h=C(C(C(f*n)+C(m*r))*d);z[c+56>>2]=k-h;j=C(u-j);f=C(C(C(i*m)-C(e*f))*d);z[c+52>>2]=j-f;i=C(p-o);g=C(C(C(g*e)+C(n*s))*d);z[c+48>>2]=i-g;a=_U(a,c+48|0);z[c+40>>2]=k+h;z[c+36>>2]=j+f;z[c+32>>2]=i+g;a=_U(a,c+32|0);z[c+16>>2]=z[b+12>>2];z[c+20>>2]=z[b+16>>2];z[c+24>>2]=z[b+20>>2];a=_U(a,c+16|0);z[c+8>>2]=t;z[c+4>>2]=w;z[c>>2]=x;a=_U(a,c);xa=c+128|0;return a}function _1(a,b,c){var d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=0,j=C(0),k=0,l=0,m=C(0),n=0,o=C(0),p=C(0),q=0,r=C(0);b=v[b+36>>2];d=z[c+8>>2];f=z[c>>2];e=z[c+4>>2];h=C(C(z[b+40>>2]*d)+C(C(z[b+32>>2]*f)+C(e*z[b+36>>2])));i=v[a+24>>2];j=C(C(z[b+8>>2]*d)+C(C(z[b>>2]*f)+C(e*z[b+4>>2])));f=C(C(z[b+24>>2]*d)+C(C(z[b+16>>2]*f)+C(e*z[b+20>>2])));d=C(C(h*z[i+8>>2])+C(C(j*z[i>>2])+C(f*z[i+4>>2])));b=v[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=B(c,20)+i|0;e=C(C(h*z[b+28>>2])+C(C(j*z[b+20>>2])+C(f*z[b+24>>2])));m=C(C(h*z[b+8>>2])+C(C(j*z[b>>2])+C(f*z[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=B(c,20)+i|0;e=C(C(h*z[b+8>>2])+C(C(j*z[b>>2])+C(f*z[b+4>>2])));b=e>2];c:{if(!n){break c}j=C(-j);h=C(-h);f=C(-f);c=v[a+36>>2];d=C(d*d);b=0;a=-1;while(1){l=c+(b<<1)|0;k=B(w[l|0],20)+i|0;l=B(w[l+1|0],20)+i|0;e=C(z[k+8>>2]+z[l+8>>2]);m=C(z[k>>2]+z[l>>2]);o=C(z[k+4>>2]+z[l+4>>2]);p=C(C(e*h)+C(C(m*j)+C(o*f)));r=C(p*p);e=C(C(e*e)+C(C(m*m)+C(o*o)));k=!(p>=C(0))|!(C(d*e)>2]*h)+C(C(z[b>>2]*j)+C(z[b+4>>2]*f)))>C(C(z[a+8>>2]*h)+C(C(z[a>>2]*j)+C(z[a+4>>2]*f)))?g:c}return g}function rD(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(!v[a+164>>2]){break c}k=v[a+140>>2];i=v[c>>2];h=i;g=h;j=v[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=Saa(c^((f&255)<<24|c>>>8),f^f>>>8,9,0);h=Aa;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=v[((v[a+148>>2]-1&(c^((f&2147483647)<<1|c>>>31)))<<2)+k>>2];if((c|0)==-1){break c}h=v[a+136>>2];g=v[a+132>>2];while(1){f=g+B(c,20)|0;if(v[f>>2]==(i|0)&v[f+4>>2]==(j|0)){break b}c=v[(c<<2)+h>>2];if((c|0)!=-1){continue}break}}if(!e){break a}f=xa-32|0;xa=f;v[f+20>>2]=d;v[f+24>>2]=b;v[f+8>>2]=0;v[f+12>>2]=0;e=a+4|0;a=cD((B(v[e>>2],48)+e|0)+16|0,f+20|0,f+8|0);b=v[e+4>>2];d=a?v[e>>2]:b;d:{if((b|0)==(d|0)){if(!cD((e+B(b,48)|0)+16|0,f+20|0,f+8|0)){break d}}b=v[f+12>>2];c=bD((e+B(d,48)|0)+16|0,f+24|0,f+31|0);if(!w[f+31|0]){a=v[f+24>>2];v[c+4>>2]=0;v[c>>2]=a}v[c+4>>2]=b;TC(v[f+12>>2],v[f+20>>2],v[f+24>>2])}xa=f+32|0;return}e=v[a+200>>2];a=g+B(c,20)|0;c=v[e+(v[a+16>>2]<<3)>>2];a=v[(v[c+8>>2]+B(v[a+12>>2],28)|0)+24>>2];f=a>>>1&15;if(!f){break a}e=v[c>>2]+(a>>>3&536870908)|0;c=0;while(1){a=e+(c<<2)|0;if(v[a>>2]!=(d|0)){c=c+1|0;if((f|0)!=(c|0)){continue}break a}break}v[a>>2]=b}}function Uv(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);d=z[c+8>>2];g=z[c>>2];i=z[c+12>>2];k=z[c+4>>2];e=C(C(1)/z[b+124>>2]);z[a+40>>2]=e;z[a+20>>2]=e;z[a>>2]=e;f=z[b+120>>2];l=z[b+116>>2];t=z[b+112>>2];v[a+140>>2]=0;v[a+124>>2]=0;v[a+108>>2]=0;h=C(g+g);m=C(C(1)-C(g*h));j=C(k+k);u=C(k*j);g=C(m-u);y=C(h*d);D=C(j*i);e=C(y-D);q=C(e*C(0));n=C(j*d);w=C(h*i);j=C(n+w);r=C(j*C(0));o=C(C(1)/f);s=C(C(q+r)+C(g*o));f=C(g*C(0));p=r;r=C(C(1)/t);A=C(f+C(p+C(e*r)));p=q;q=C(C(1)/l);B=C(f+C(p+C(j*q)));f=C(C(g*s)+C(C(e*A)+C(j*B)));z[a+136>>2]=C(f+f)*C(.5);f=C(h*k);p=i;i=C(d+d);l=C(p*i);k=C(f+l);h=C(k*C(0));x=C(d*i);d=C(m-x);m=C(d*C(0));i=C(n-w);t=C(C(h+m)+C(i*o));n=C(i*C(0));m=C(n+C(m+C(k*r)));n=C(n+C(h+C(d*q)));w=C(C(C(C(i*s)+C(C(k*A)+C(d*B)))+C(C(g*t)+C(C(e*m)+C(j*n))))*C(.5));z[a+132>>2]=w;h=C(C(C(1)-u)-x);u=C(h*C(0));f=C(f-l);x=C(f*C(0));l=C(y+D);o=C(C(u+x)+C(l*o));y=C(g*o);p=e;e=C(l*C(0));g=C(e+C(x+C(h*r)));e=C(e+C(u+C(f*q)));j=C(C(C(C(l*s)+C(C(h*A)+C(f*B)))+C(y+C(C(p*g)+C(j*e))))*C(.5));z[a+128>>2]=j;z[a+120>>2]=w;s=C(C(i*t)+C(C(k*m)+C(d*n)));z[a+116>>2]=C(s+s)*C(.5);d=C(C(C(C(l*t)+C(C(h*m)+C(f*n)))+C(C(i*o)+C(C(k*g)+C(d*e))))*C(.5));z[a+112>>2]=d;z[a+104>>2]=j;z[a+100>>2]=d;d=C(C(l*o)+C(C(h*g)+C(f*e)));z[a+96>>2]=C(d+d)*C(.5)}function w_(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=0,g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=0,n=0,o=C(0),p=C(0),q=0;h=v[a+24>>2];d=z[c>>2];g=z[c+4>>2];e=z[c+8>>2];k=C(C(C(d*z[b+8>>2])+C(g*z[b+20>>2]))+C(e*z[b+32>>2]));l=C(C(C(d*z[b>>2])+C(g*z[b+12>>2]))+C(e*z[b+24>>2]));g=C(C(C(d*z[b+4>>2])+C(g*z[b+16>>2]))+C(e*z[b+28>>2]));d=C(C(z[h+8>>2]*k)+C(C(z[h>>2]*l)+C(g*z[h+4>>2])));b=v[a+16>>2];a:{if(b>>>0<2){break a}c=1;f=b-1|0;j=f&1;b:{if((b|0)==2){f=0;break b}n=f&-2;f=0;while(1){b=B(c,20)+h|0;e=C(C(z[b+28>>2]*k)+C(C(z[b+20>>2]*l)+C(g*z[b+24>>2])));i=C(C(z[b+8>>2]*k)+C(C(z[b>>2]*l)+C(g*z[b+4>>2])));b=i>d;d=b?i:d;m=d>2]*k)+C(C(z[b>>2]*l)+C(g*z[b+4>>2])));b=e>d;d=b?e:d;f=b?c:f}n=v[a+20>>2];c:{if(!n){break c}c=v[a+36>>2];d=C(d*d);b=0;a=-1;while(1){j=c+(b<<1)|0;m=B(w[j|0],20)+h|0;j=B(w[j+1|0],20)+h|0;e=C(z[m+8>>2]+z[j+8>>2]);i=C(z[m>>2]+z[j>>2]);o=C(z[m+4>>2]+z[j+4>>2]);p=C(C(e*k)+C(C(i*l)+C(g*o)));d:{if(!(p>=C(0))){break d}e=C(C(e*e)+C(C(i*i)+C(o*o)));i=C(p*p);if(!(C(d*e)>2]*k)+C(C(z[b>>2]*l)+C(g*z[b+4>>2])))>C(C(z[a+8>>2]*k)+C(C(z[a>>2]*l)+C(g*z[a+4>>2])))?f:c}return f|0}function VV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0);c=xa-176|0;xa=c;k=z[f+4>>2];h=C(k+k);j=z[f+8>>2];m=C(h*j);g=z[f>>2];l=C(g+g);i=z[f+12>>2];n=C(l*i);z[c+44>>2]=m-n;z[c+36>>2]=m+n;g=C(C(1)-C(g*l));m=C(k*h);z[c+48>>2]=g-m;o=g;g=C(j+j);n=C(j*g);z[c+32>>2]=o-n;j=C(l*j);h=C(h*i);z[c+40>>2]=j+h;k=C(l*k);l=C(g*i);z[c+28>>2]=k-l;z[c+24>>2]=j-h;z[c+20>>2]=k+l;z[c+16>>2]=C(C(1)-m)-n;z[c+52>>2]=z[f+16>>2];z[c+56>>2]=z[f+20>>2];z[c+60>>2]=z[f+24>>2];z[c+64>>2]=z[e+4>>2];z[c+68>>2]=z[e+8>>2];z[c+72>>2]=z[e+12>>2];BV(c,d);FV(c+80|0,c+52|0,c- -64|0,c+16|0,c+28|0,c+40|0);j=z[c+8>>2];k=z[c>>2];l=z[c+4>>2];h=z[c+12>>2];g=C(C(C(z[c+88>>2]*j)+C(C(z[c+80>>2]*k)+C(z[c+84>>2]*l)))+h);i=C(h+C(C(z[c+100>>2]*j)+C(C(z[c+92>>2]*k)+C(l*z[c+96>>2]))));g=g>2]*j)+C(C(z[c+104>>2]*k)+C(l*z[c+108>>2]))));g=g>2]*j)+C(C(z[c+116>>2]*k)+C(l*z[c+120>>2]))));g=g>2]*j)+C(C(z[c+128>>2]*k)+C(l*z[c+132>>2]))));g=g>2]*j)+C(C(z[c+140>>2]*k)+C(l*z[c+144>>2]))));g=g>2]*j)+C(C(z[c+152>>2]*k)+C(l*z[c+156>>2]))));g=g>2]*j)+C(C(z[c+164>>2]*k)+C(l*z[c+168>>2]))));h=gC(0);if(!d){z[a+8>>2]=-j;z[a+4>>2]=-l;z[a>>2]=-k;z[b>>2]=h>2];a:{if(e>>>0>=b>>>0){break a}f=v[a+20>>2];d=((f+b|0)-1>>>0)/(f>>>0)|0;c=v[a+4>>2];k=d-c|0;v[a+16>>2]=e+B(k,f);if((d|0)==(c|0)){break a}while(1){d=0;e=v[a+20>>2]<<2;if(e){c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,16683,84)|0}v[h+12>>2]=d;c=v[a+4>>2];b:{if(c>>>0>=(v[a+8>>2]&2147483647)>>>0){d=0;c=v[a+8>>2];f=c&2147483647?c<<1:1;c:{if(!f){break c}e=f<<2;if(!e){break c}d=v[37696];c=d+12|0;d=(m=c,n=e,o=Ba[v[v[d>>2]+20>>2]](d)|0?54657:63804,p=16608,q=553,l=v[v[c>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}i=v[a+4>>2];e=(i<<2)+d|0;if((i|0)>0){j=v[a>>2];c=d;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[h+12>>2];d:{if(v[a+8>>2]<0){break d}e=v[a>>2];if(!e){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e);i=v[a+4>>2]}v[a+8>>2]=f;v[a>>2]=d;v[a+4>>2]=i+1;break b}v[v[a>>2]+(c<<2)>>2]=d;v[a+4>>2]=c+1}g=g+1|0;if((k|0)!=(g|0)){continue}break}}d=v[a+12>>2];e:{if(d>>>0>=b>>>0){break e}g=d^-1;e=v[a+20>>2];if(b-d&1){c=(d>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(d-B(c,e)<<2)>>2]=0;d=d+1|0}if((g|0)==(0-b|0)){break e}while(1){c=(d>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(d-B(c,e)<<2)>>2]=0;g=d+1|0;c=(g>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(g-B(c,e)<<2)>>2]=0;d=d+2|0;if((d|0)!=(b|0)){continue}break}}v[a+12>>2]=b;xa=h+16|0}function aG(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;h=xa-16|0;xa=h;e=v[a+16>>2];a:{if(e>>>0>=b>>>0){break a}f=v[a+20>>2];d=((f+b|0)-1>>>0)/(f>>>0)|0;c=v[a+4>>2];k=d-c|0;v[a+16>>2]=e+B(k,f);if((d|0)==(c|0)){break a}while(1){d=0;e=v[a+20>>2]<<2;if(e){c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,e,24422,16683,84)|0}v[h+12>>2]=d;c=v[a+4>>2];b:{if(c>>>0>=(v[a+8>>2]&2147483647)>>>0){d=0;c=v[a+8>>2];f=c&2147483647?c<<1:1;c:{if(!f){break c}e=f<<2;if(!e){break c}d=v[37696];c=d+12|0;d=(m=c,n=e,o=Ba[v[v[d>>2]+20>>2]](d)|0?54781:63804,p=16608,q=553,l=v[v[c>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}i=v[a+4>>2];e=(i<<2)+d|0;if((i|0)>0){j=v[a>>2];c=d;while(1){v[c>>2]=v[j>>2];j=j+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[h+12>>2];d:{if(v[a+8>>2]<0){break d}e=v[a>>2];if(!e){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e);i=v[a+4>>2]}v[a+8>>2]=f;v[a>>2]=d;v[a+4>>2]=i+1;break b}v[v[a>>2]+(c<<2)>>2]=d;v[a+4>>2]=c+1}g=g+1|0;if((k|0)!=(g|0)){continue}break}}d=v[a+12>>2];e:{if(d>>>0>=b>>>0){break e}g=d^-1;e=v[a+20>>2];if(b-d&1){c=(d>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(d-B(c,e)<<2)>>2]=0;d=d+1|0}if((g|0)==(0-b|0)){break e}while(1){c=(d>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(d-B(c,e)<<2)>>2]=0;g=d+1|0;c=(g>>>0)/(e>>>0)|0;v[v[v[a>>2]+(c<<2)>>2]+(g-B(c,e)<<2)>>2]=0;d=d+2|0;if((d|0)!=(b|0)){continue}break}}v[a+12>>2]=b;xa=h+16|0}function PN(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=v[b+68>>2];a:{if((b|0)>=0){h=v[a+44>>2]-1|0;f=v[v[a+40>>2]+(h<<2)>>2];c=v[a+28>>2];d=b&-8;xK(v[a+4>>2],d+v[a+52>>2]|0);e=b>>>3|0;v[v[a+40>>2]+(e<<2)>>2]=f;i=d;d=v[a+52>>2];g=i+d|0;i=h<<3;d=i+d|0;j=v[d+4>>2];v[g>>2]=v[d>>2];v[g+4>>2]=j;d=c+(e<<4)|0;c=c+(h<<4)|0;e=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=e;e=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=e;c=i+v[a+52>>2]|0;v[c>>2]=0;v[c+4>>2]=0;c=v[a+108>>2];d=v[c+456>>2];v[f+68>>2]=b;b:{if(!(w[f+43|0]&2)|w[f+41|0]&8){break b}b=v[v[v[c+444>>2]>>2]+(v[f- -64>>2]<<2)>>2];if(!b){break b}while(1){v[d+(v[b+20>>2]<<2)>>2]=v[f+68>>2];b=v[b+16>>2];if(b){continue}break}}v[a+44>>2]=h;v[a+56>>2]=h;a=a+32|0;break a}h=v[a+84>>2]-1|0;f=v[v[a+80>>2]+(h<<2)>>2];c=v[a+68>>2];d=b>>>3|0;e=d&268435455;g=e<<3;xK(v[a+4>>2],g+v[a+92>>2]|0);v[v[a+80>>2]+(e<<2)>>2]=f;e=v[a+92>>2];g=e+g|0;i=e;e=h<<3;i=i+e|0;j=v[i+4>>2];v[g>>2]=v[i>>2];v[g+4>>2]=j;d=c+(d<<4)|0;c=c+(h<<4)|0;g=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=g;g=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=g;c=e+v[a+92>>2]|0;v[c>>2]=0;v[c+4>>2]=0;c=v[a+108>>2];d=v[c+456>>2];v[f+68>>2]=b;c:{if(!(w[f+43|0]&2)|w[f+41|0]&8){break c}b=v[v[v[c+444>>2]>>2]+(v[f- -64>>2]<<2)>>2];if(!b){break c}while(1){v[d+(v[b+20>>2]<<2)>>2]=v[f+68>>2];b=v[b+16>>2];if(b){continue}break}}v[a+84>>2]=h;v[a+96>>2]=h;a=a+72|0}v[a>>2]=v[a>>2]-1}function D$(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);h=xa-96|0;xa=h;v[h+84>>2]=0;v[h+80>>2]=f;v[h+72>>2]=e;t[h+92|0]=0;v[h+88>>2]=0;v[h+76>>2]=0;e=v[c+36>>2];a:{b:{switch(v[a>>2]){case 3:k=z[b+4>>2];m=C(k+k);i=z[b+8>>2];n=C(m*i);j=z[b>>2];l=C(j+j);p=z[b+12>>2];o=C(l*p);z[h+36>>2]=n-o;z[h+28>>2]=n+o;j=C(C(1)-C(j*l));n=C(k*m);z[h+40>>2]=j-n;q=j;j=C(i+i);o=C(i*j);z[h+24>>2]=q-o;i=C(l*i);m=C(m*p);z[h+32>>2]=i+m;k=C(l*k);l=C(j*p);z[h+20>>2]=k-l;z[h+16>>2]=i-m;z[h+12>>2]=k+l;z[h+8>>2]=C(C(1)-n)-o;z[h+44>>2]=z[b+16>>2];z[h+48>>2]=z[b+20>>2];z[h+52>>2]=z[b+24>>2];z[h+56>>2]=z[a+4>>2];z[h+60>>2]=z[a+8>>2];z[h- -64>>2]=z[a+12>>2];Ba[v[(x[e+4>>1]<<2)+143048>>2]](h+8|0,e,d,c+4|0,h+72|0)|0;break a;case 2:i=z[b+20>>2];k=z[b+16>>2];o=z[b+24>>2];l=z[b>>2];m=C(l+l);q=z[b+8>>2];r=z[b+4>>2];j=z[b+12>>2];p=C(j+j);n=z[a+8>>2];s=C(C(C(m*q)-C(r*p))*n);z[h+28>>2]=o-s;q=C(n*C(C(q*p)+C(m*r)));z[h+24>>2]=i-q;z[h+16>>2]=s+o;z[h+12>>2]=i+q;i=C(n*C(C(l*m)+C(C(j*p)+C(-1))));z[h+20>>2]=k-i;z[h+8>>2]=k+i;z[h+32>>2]=z[a+4>>2];Ba[v[(x[e+4>>1]<<2)+143056>>2]](h+8|0,e,d,c+4|0,h+72|0)|0;break a;case 0:break b;default:break a}}i=z[a+4>>2];z[h+8>>2]=z[b+16>>2];z[h+12>>2]=z[b+20>>2];k=z[b+24>>2];z[h+20>>2]=i;z[h+16>>2]=k;Ba[v[(x[e+4>>1]<<2)+143064>>2]](h+8|0,e,d,c+4|0,h+72|0)|0}t[g|0]=w[h+92|0];xa=h+96|0;return v[h+76>>2]}function B4(a){var b=0,c=0,d=0;b=v[a+316>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+308>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+304>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+296>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+292>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+284>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+280>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+272>>2];if(!b){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+268>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+260>>2];if(!b){break e}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+96>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+88>>2];if(!b){break f}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}c=v[a+80>>2];if(c){b=0;while(1){d=v[v[a+76>>2]+(b<<2)>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);c=v[a+80>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}b=0;v[a+80>>2]=0;c=v[a+84>>2];g:{if((c|0)<0|!(c&2147483647)){break g}c=v[a+76>>2];if(!c){break g}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c=v[a+56>>2];if(c){while(1){d=v[v[a+52>>2]+(b<<2)>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);c=v[a+56>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+56>>2]=0;b=v[a+60>>2];h:{if((b|0)<0|!(b&2147483647)){break h}a=v[a+52>>2];if(!a){break h}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}}function BD(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=xa-16|0;xa=f;g=xa-16|0;xa=g;c=a+52|0;$C(c+4|0);v[g+8>>2]=0;b=c+172|0;cz(b,0,g+8|0);Aw(b,v[c+176>>2]);v[g+12>>2]=0;b=c+184|0;cz(b,0,g+12|0);Aw(b,v[c+188>>2]);b=v[c+148>>2];if(!(!b|!v[c+164>>2])){J9(v[c+140>>2],255,b<<2);b=0;e=v[c+136>>2];i=v[c+144>>2];h=i-1|0;if(h){if(i-2>>>0>=3){i=h&-4;while(1){d=b|1;v[e+(b<<2)>>2]=d;j=e+(d<<2)|0;d=b|2;v[j>>2]=d;j=e+(d<<2)|0;d=b|3;v[j>>2]=d;b=b+4|0;v[e+(d<<2)>>2]=b;k=k+4|0;if((i|0)!=(k|0)){continue}break}}h=h&3;if(h){while(1){d=e+(b<<2)|0;b=b+1|0;v[d>>2]=b;l=l+1|0;if((h|0)!=(l|0)){continue}break}}b=v[c+144>>2]-1|0}else{b=0}v[e+(b<<2)>>2]=-1;v[c+164>>2]=0;v[c+156>>2]=0}if(v[c+208>>2]){b=0;while(1){e=v[c+200>>2]+(b<<3)|0;v[e+4>>2]=0;LB(v[e>>2],1);b=b+1|0;if(b>>>0>2]){continue}break}}v[c+204>>2]=0;xa=g+16|0;v[a+48>>2]=0;v[f+8>>2]=0;c=a+312|0;cz(c,0,f+8|0);Aw(c,v[a+316>>2]);v[f+12>>2]=0;c=a+324|0;cz(c,0,f+12|0);Aw(c,v[a+328>>2]);c=v[a+36>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+36>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;c=v[a+20>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+20>>2]=0;c=v[a+32>>2];if(c){c=KB(c);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+32>>2]=0;c=v[a+4>>2];if(c){c=KB(c);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+268>>2]=0;v[a+40>>2]=0;v[a+4>>2]=0;t[a+337|0]=0;v[a+344>>2]=0;xa=f+16|0}function PI(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,x=0;a:{h=v[a+40>>2];if(w[h+60|0]){eI(h);h=v[a+40>>2]}o=v[h+8>>2];if(!o){break a}q=v[h+28>>2];n=v[h+24>>2];a=0;while(1){c=(m<<3)+n|0;d=v[c>>2];r=v[c+4>>2];while(1){j=a<<3;c=a+1|0;a=c;if(d>>>0>y[j+n>>2]){continue}break}if(y[(c<<3)+n>>2]<=r>>>0){j=(m<<4)+q|0;d=c;while(1){a=(d<<4)+q|0;b:{if(z[a+8>>2]>2]|z[j+8>>2]>2]|(z[a+12>>2]>2]|z[j+12>>2]>2])){break b}g=v[h+4>>2];a=v[g+(m<<2)>>2];i=v[(a<<2)+e>>2];g=v[g+(d<<2)>>2];k=v[(g<<2)+e>>2];if((i|0)==(k|0)|!w[(i<<2&12|k&3)+f|0]){break b}k=a>>>0>>0?a:g;p=a>>>0>g>>>0?a:g;a=k&65535|p<<16;a=(a<<15^-1)+a|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;s=a>>>16^a;g=s&v[b+4>>2];c:{i=v[b+12>>2];d:{if(!i){break d}a=v[(g<<2)+i>>2];if((a|0)==-1){break d}u=v[b+16>>2];x=v[b+20>>2];while(1){l=(a<<3)+x|0;if((k|0)==(v[l>>2]&2147483647)){t=v[l+4>>2];if((t&2147483647)==(p|0)){break c}}a=v[(a<<2)+u>>2];if((a|0)!=-1){continue}break}}a=v[b+8>>2];if(a>>>0>=y[b>>2]){g=_H(b,s);i=v[b+12>>2];a=v[b+8>>2]}v[b+8>>2]=a+1;l=v[b+20>>2]+(a<<3)|0;v[l+4>>2]=p;v[l>>2]=k|-2147483648;g=(g<<2)+i|0;v[v[b+16>>2]+(a<<2)>>2]=v[g>>2];v[g>>2]=a;break b}v[l+4>>2]=t|-2147483648}d=d+1|0;if(y[(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 XZ(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0);t=z[a+4>>2]==C(1)&z[a+8>>2]==C(1)&z[a+12>>2]==C(1);if(!t){JX(b,a+4|0,a+16|0);h=z[b+28>>2];i=z[b+16>>2];j=z[b+24>>2];p=z[b>>2];q=z[b+12>>2];r=z[b+4>>2];a=v[a+40>>2];m=z[a>>2];e=z[b+8>>2];n=z[a+4>>2];f=z[b+20>>2];o=z[a+8>>2];g=z[b+32>>2];s=C(C(C(m*e)+C(n*f))+C(o*g));k=e;e=z[a+12>>2];l=f;f=z[a+16>>2];u=g;g=z[a+20>>2];k=C(C(C(D(C(k*e)))+C(D(C(l*f))))+C(D(C(u*g))));z[c+20>>2]=s+k;l=C(C(C(m*r)+C(n*i))+C(o*h));h=C(C(C(D(C(r*e)))+C(D(C(i*f))))+C(D(C(h*g))));z[c+16>>2]=l+h;i=C(C(C(m*p)+C(n*q))+C(o*j));j=C(C(C(D(C(p*e)))+C(D(C(q*f))))+C(D(C(j*g))));z[c+12>>2]=i+j;z[c+8>>2]=s-k;z[c+4>>2]=l-h;z[c>>2]=i-j;v_(d,a,b);v[d+52>>2]=0;v[d+56>>2]=0;v[d+44>>2]=0;v[d+48>>2]=0;return t}h=z[b+28>>2];i=z[b+16>>2];j=z[b+24>>2];p=z[b>>2];q=z[b+12>>2];r=z[b+4>>2];a=v[a+40>>2];m=z[a>>2];e=z[b+8>>2];n=z[a+4>>2];f=z[b+20>>2];o=z[a+8>>2];g=z[b+32>>2];s=C(C(C(m*e)+C(n*f))+C(o*g));k=e;e=z[a+12>>2];l=f;f=z[a+16>>2];u=g;g=z[a+20>>2];k=C(C(C(D(C(k*e)))+C(D(C(l*f))))+C(D(C(u*g))));z[c+20>>2]=s+k;l=C(C(C(m*r)+C(n*i))+C(o*h));h=C(C(C(D(C(r*e)))+C(D(C(i*f))))+C(D(C(h*g))));z[c+16>>2]=l+h;i=C(C(C(m*p)+C(n*q))+C(o*j));j=C(C(C(D(C(p*e)))+C(D(C(q*f))))+C(D(C(j*g))));z[c+12>>2]=i+j;z[c+8>>2]=s-k;z[c+4>>2]=l-h;z[c>>2]=i-j;v_(d,a,b);return t}function Xu(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=xa-16|0;xa=f;b=v[a+4>>2];if(b&8){c=v[a+8>>2];if(!c){c=Qu(v[a>>2],b>>>24&15);v[a+8>>2]=c;b=v[a+4>>2]}a:{if((b&-1073741824)!=-2147483648){break a}d=v[c+76>>2];if(!d){break a}while(1){h=v[c+72>>2]+(e<<3)|0;b=v[h>>2];g=v[b+4>>2];if((g&251658240)==16777216){v[b>>2]=0;v[b+4>>2]=g&1073741823}g=v[((v[a+4>>2]>>>22&60)+89188|0)+12>>2]+a|0;if(!(w[g+8|0]&8)){d=v[a>>2];SJ(g,b+16|0,w[h+4|0]!=0);if(w[b+7|0]&16){Zu(b);v[f+4>>2]=b;Pg(d+4816|0,f+4|0);v[b+4>>2]=v[b+4>>2]&-268435457}bu(b);d=v[c+76>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}t[f+12|0]=0;v[f+8>>2]=0;a=c+36|0;b=v[a+40>>2];if((b|0)<0){d=v[a+36>>2];b=d+(b<<3)|0;while(1){e=v[f+12>>2];v[b>>2]=v[f+8>>2];v[b+4>>2]=e;b=b+8|0;if(d>>>0>b>>>0){continue}break}}v[a+40>>2]=0;b=0;e=v[c+76>>2];b:{if(!e){break b}c=e<<3;if(!(w[a+32|0]|c>>>0>32)){t[a+32|0]=1;b=a;break b}if(!c){break b}b=v[37696];d=b+12|0;b=(j=d,k=c,l=Ba[v[v[b>>2]+20>>2]](b)|0?42347:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}d=v[a+36>>2];c=v[a+40>>2];if((c|0)>0){h=(c<<3)+b|0;c=b;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;d=d+8|0;c=c+8|0;if(h>>>0>c>>>0){continue}break}d=v[a+36>>2]}c:{if(v[a+44>>2]<0){break c}if((a|0)==(d|0)){t[a+32|0]=0;break c}if(!d){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+44>>2]=e;v[a+36>>2]=b}xa=f+16|0}function HE(a,b,c,d,e,f,g){var h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0;h=xa+-64|0;xa=h;t[a+140|0]=1;v[h+60>>2]=c;v[h+56>>2]=b;i=B(d,36)+a|0;v[i+32>>2]=v[i+32>>2]+1;a:{if((e|0)==-1){b:{if(f){k=z[f+16>>2];l=z[f+12>>2];m=z[f>>2];n=z[f+4>>2];j=z[f+20>>2];o=z[f+8>>2];p=C(C(j-o)*C(.004999999888241291));z[h+44>>2]=j+p;j=k;k=C(C(k-n)*C(.004999999888241291));z[h+40>>2]=j+k;j=l;l=C(C(l-m)*C(.004999999888241291));z[h+36>>2]=j+l;z[h+24>>2]=m-l;z[h+32>>2]=o-p;z[h+28>>2]=n-k;break b}Ba[v[(d<<2)+129544>>2]](h+24|0,b,c)}a=v[i>>2];Ba[v[v[a>>2]>>2]](a,h+52|0,h+24|0,h+56|0,1,g)|0;b=v[h+52>>2];a=v[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=v[37696];a=Ba[v[v[e+12>>2]+8>>2]](e+12|0,a>>>3|0,24422,17999,438)|0;e=v[i+4>>2];d:{if(!e){break d}I9(a,e,v[i+8>>2]<<2);if(v[i+8>>2]<0){break d}e=v[i+4>>2];if(!e){break d}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,e)}e=v[i+8>>2];J9(a+(e<<2)|0,0,c-e<<2);v[i+8>>2]=c;v[i+4>>2]=a}a=v[i+4>>2]+(b>>>3&536870908)|0;c=v[a>>2];q=a,r=Vaa(-2,b)&c,v[q>>2]=r;break a}c=h+24|0;f=v[b+8>>2];g=v[b+4>>2];eV(c,g&1?f- -64|0:b+84|0,g&4?f:b+48|0,C(1.0099999904632568));a=v[a+72>>2];b=v[h+60>>2];f=v[h+56>>2];v[h+16>>2]=f;v[h+20>>2]=b;g=v[v[a>>2]+20>>2];v[h+8>>2]=f;v[h+12>>2]=b;Ba[g|0](a,e,h+52|0,c,h+8|0)|0}xa=h- -64|0;return v[h+52>>2]<<1|d}function r$(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0);v[e>>2]=-8388609;v[f>>2]=2139095039;h=z[d>>2];a:{b:{if(!(!(h>C(-1.1920928955078125e-7))|!(h>2];if(g>2]){return-1}h=C(34028234663852886e22);l=-1;if(!(g>z[b>>2])){break b}break a}g=C(C(1)/h);i=z[c>>2];h=C(g*C(z[a>>2]-i));j=C(g*C(z[b>>2]-i));k=h>j;i=k?h:j;g=z[e>>2];h=k?j:h;c:{if(!(g>2]=h;k=k?3:0;g=h;h=z[f>>2]}if(i>2]=i;g=z[e>>2];h=i}l=-1;if(hh){break a}}g=z[d+4>>2];d:{if(!(g>C(-1.1920928955078125e-7)&g>2];j=C(g*C(z[a+4>>2]-i));m=C(g*C(z[b+4>>2]-i));l=j>m;i=l?j:m;g=z[e>>2];j=l?m:j;if(g>2]=j;k=l?4:1;g=j;h=z[f>>2]}if(h>i){z[f>>2]=i;g=z[e>>2];h=i}l=-1;if(g>h){break a}if(!(h>2];if(g>2]|g>z[b+4>>2]){break a}}g=z[d+8>>2];e:{if(!(g>C(-1.1920928955078125e-7)&g>2];j=C(g*C(z[a+8>>2]-i));m=C(g*C(z[b+8>>2]-i));a=j>m;i=a?j:m;g=z[e>>2];j=a?m:j;if(g>2]=j;k=a?5:2;g=j;h=z[f>>2]}if(h>i){z[f>>2]=i;g=z[e>>2];h=i}if(g>h){break a}if(!(h>2];if(g>2]|g>z[b+8>>2]){break a}g=z[e>>2]}l=g>h?-1:h>2];r=v[a+316>>2];a:{if(!(t[(r&16384?g+268|0:a+108|0)|0]&1)){break a}b:{if(r&32768){s=g+216|0;x=z[g+212>>2];A=z[g+208>>2];h=z[g+204>>2];i=z[g+200>>2];j=z[g+196>>2];B=g+192|0;break b}if(y[a+52>>2]>3221225471){break a}if(!ZG(a- -64|0,f)){break a}s=f+24|0;g=v[a+56>>2];r=v[a+316>>2];x=z[f+20>>2];A=z[f+16>>2];i=z[f+8>>2];j=z[f+4>>2];h=z[f+12>>2];B=f}a=r&1024?g+144|0:a+112|0;o=z[a+16>>2];p=z[a+24>>2];q=z[a+20>>2];k=z[s>>2];d=z[a+8>>2];e=z[a+4>>2];c=z[a+12>>2];l=z[a>>2];m=z[B>>2];z[b+12>>2]=C(i*d)+C(C(j*e)+C(C(h*c)+C(l*m)));z[b+8>>2]=C(l*j)+C(C(C(c*i)-C(h*d))-C(m*e));z[b+4>>2]=C(d*m)+C(C(C(c*j)-C(h*e))-C(i*l));z[b>>2]=C(e*i)+C(C(C(c*m)-C(h*l))-C(j*d));D=k;p=C(p*C(-2));o=C(o*C(-2));q=C(q*C(-2));u=C(C(d*p)+C(C(l*o)+C(e*q)));w=C(C(c*c)+C(-.5));k=C(C(d*u)+C(C(p*w)-C(c*C(C(l*q)-C(o*e)))));k=C(k+k);n=C(C(l*u)+C(C(o*w)-C(c*C(C(e*p)-C(q*d)))));n=C(n+n);c=C(C(e*u)+C(C(q*w)-C(c*C(C(d*o)-C(p*l)))));c=C(c+c);d=C(C(i*k)+C(C(m*n)+C(j*c)));e=C(C(h*h)+C(-.5));z[b+24>>2]=D+C(C(i*d)+C(C(k*e)+C(h*C(C(m*c)-C(n*j)))));z[b+20>>2]=x+C(C(j*d)+C(C(c*e)+C(h*C(C(i*n)-C(k*m)))));z[b+16>>2]=A+C(C(m*d)+C(C(n*e)+C(h*C(C(j*k)-C(c*i)))));s=1}xa=f+32|0;return s|0}function Uh(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=xa-16|0;xa=g;v[g+12>>2]=b;c=v[a+124>>2];d=v[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=v[37696];e=c+12|0;c=(j=e,k=d,l=Ba[v[v[c>>2]+20>>2]](c)|0?55965:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}e=v[a+120>>2];d=v[a+124>>2];if((d|0)>0){h=(d<<2)+c|0;d=c;while(1){v[d>>2]=v[e>>2];e=e+4|0;d=d+4|0;if(h>>>0>d>>>0){continue}break}e=v[a+120>>2]}if(!(!e|v[a+128>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+128>>2]=f;v[a+120>>2]=c;d=v[a+128>>2]&2147483647;c=v[a+124>>2]}c:{if(c>>>0>=d>>>0){b=0;c=v[a+128>>2];f=c&2147483647?c<<1:1;d:{if(!f){break d}c=f<<2;if(!c){break d}b=v[37696];d=b+12|0;b=(n=d,m=c,l=Ba[v[v[b>>2]+20>>2]](b)|0?55965:63804,k=16608,j=553,i=v[v[d>>2]+8>>2],Ba[i](n|0,m|0,l|0,k|0,j|0)|0)}d=v[a+124>>2];h=(d<<2)+b|0;if((d|0)>0){e=v[a+120>>2];c=b;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[g+12>>2];e:{if(v[a+128>>2]<0){break e}c=v[a+120>>2];if(!c){break e}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c);d=v[a+124>>2]}v[a+128>>2]=f;v[a+120>>2]=b;v[a+124>>2]=d+1;break c}v[v[a+120>>2]+(c<<2)>>2]=b;v[a+124>>2]=c+1}a=v[a+24>>2];b=v[g+12>>2];b=Ba[v[v[b>>2]+104>>2]](b)|0;if(a){uG(a,v[b+88>>2])}xa=g+16|0}function IM(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);k=x[a+60>>1];a:{if(!k){break a}if(k&1){v[a>>2]=0}if(k&2){v[a+4>>2]=0}if(k&4){v[a+8>>2]=0}if(k&8){v[a+16>>2]=0}if(k&16){v[a+20>>2]=0}if(!(k&32)){break a}v[a+24>>2]=0}o=z[a+20>>2];p=z[a+24>>2];q=z[a+16>>2];f=z[a+8>>2];d=z[a+4>>2];s=C(z[a>>2]*c);z[b+16>>2]=s+z[b+16>>2];t=C(d*c);z[b+20>>2]=t+z[b+20>>2];d=z[b+36>>2];l=z[b+48>>2];m=z[b+60>>2];i=z[b+40>>2];g=z[b+52>>2];h=z[b+32>>2];e=z[b+44>>2];n=z[b+56>>2];r=z[b+28>>2];u=C(f*c);z[b+24>>2]=u+z[b+24>>2];j=C(C(C(q*d)+C(o*l))+C(p*m));g=C(C(C(q*r)+C(o*i))+C(p*g));h=C(C(C(q*h)+C(o*e))+C(p*n));d=C(C(j*j)+C(C(g*g)+C(h*h)));if(d!=C(0)){f=z[b+4>>2];e=C(K(d));i=C(C(e*c)*C(.5));n=R9(i);d=z[b>>2];l=z[b+8>>2];m=z[b+12>>2];i=H9(i);e=C(n/e);g=C(g*e);h=C(h*e);j=C(j*e);e=C(C(m*i)+C(C(C(C(m*C(0))-C(d*g))-C(f*h))-C(l*j)));r=e;w=C(e*e);e=C(C(i*l)+C(C(C(g*f)+C(C(l*C(0))+C(j*m)))-C(d*h)));n=C(C(i*d)+C(C(C(h*l)+C(C(d*C(0))+C(g*m)))-C(f*j)));d=C(C(i*f)+C(C(C(j*d)+C(C(f*C(0))+C(h*m)))-C(l*g)));f=C(C(1)/C(K(C(w+C(C(e*e)+C(C(n*n)+C(d*d)))))));z[b+12>>2]=r*f;z[b+8>>2]=e*f;z[b+4>>2]=d*f;z[b>>2]=n*f}z[a+32>>2]=C(q*c)+z[a+32>>2];z[a+48>>2]=s+z[a+48>>2];z[a+36>>2]=C(o*c)+z[a+36>>2];z[a+40>>2]=C(p*c)+z[a+40>>2];z[a+52>>2]=t+z[a+52>>2];z[a+56>>2]=u+z[a+56>>2]}function Bu(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;e=xa-288|0;xa=e;f=v[b+4>>2];a:{if(!(w[(f&1?v[b+8>>2]:(v[((f>>>22&60)+89188|0)+12>>2]+b|0)+8|0)|0]&8)){t[e+272|0]=1;v[e+280>>2]=0;v[e+284>>2]=64;v[e+276>>2]=e+16;f=0;g=Io(b,e+12|0,0);NP(a,b+16|0,v[e+12>>2],g,c,(d|0)!=0);if(g){b=v[b>>2];while(1){a=v[v[e+12>>2]+(f<<2)>>2]+32|0;c=v[a+4>>2];if((c&251658240)==16777216){v[a>>2]=b;v[a+4>>2]=c&1073741823|-2147483648}a=a-16|0;v[a>>2]=v[a>>2]+1;f=f+1|0;if((g|0)!=(f|0)){continue}break}}a=v[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}t[e+272|0]=1;v[e+280>>2]=0;v[e+284>>2]=64;v[e+276>>2]=e+16;f=0;a=Io(b,e+12|0,0);b:{if(!a){break b}c=v[b>>2];if((a|0)!=1){g=a&-2;b=0;while(1){h=f<<2;d=v[h+v[e+12>>2]>>2];i=v[d+36>>2];if((i&251658240)==16777216){v[d+32>>2]=c;v[d+36>>2]=i&1073741823|-2147483648}d=v[v[e+12>>2]+(h|4)>>2];h=v[d+36>>2];if((h&251658240)==16777216){v[d+32>>2]=c;v[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=v[v[e+12>>2]+(f<<2)>>2];b=v[a+36>>2];if((b&251658240)!=16777216){break b}v[a+32>>2]=c;v[a+36>>2]=b&1073741823|-2147483648}a=v[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=e+288|0}function V1(a,b,c,d,e){var f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=0,o=C(0),p=0,q=0,r=0,s=C(0),t=C(0),u=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=0;n=xa-16|0;xa=n;h=v[a+16>>2];if(h){i=z[e+8>>2];j=z[e>>2];g=z[e+4>>2];f=C(C(1)/C(K(C(C(i*i)+C(C(j*j)+C(g*g))))));t=C(i*f);u=C(g*f);y=C(j*f);while(1){r=v[a+24>>2]+B(q,20)|0;p=w[r+18|0];if(p){e=v[b+36>>2];A=v[a+32>>2]+x[r+16>>1]|0;h=v[a+28>>2]+B(w[A|0],12)|0;f=z[h+8>>2];g=z[h>>2];l=z[h+4>>2];i=C(C(z[e+40>>2]*f)+C(C(z[e+8>>2]*g)+C(l*z[e+24>>2])));j=C(C(z[e+32>>2]*f)+C(C(z[e>>2]*g)+C(l*z[e+16>>2])));g=C(C(z[e+36>>2]*f)+C(C(z[e+4>>2]*g)+C(l*z[e+20>>2])));f=C(C(t*C(i-z[d+8>>2]))+C(C(y*C(j-z[d>>2]))+C(u*C(g-z[d+4>>2]))));h=p-1|0;e=0;while(1){G=f>C(0);k=v[b+36>>2];h=v[a+28>>2]+B(w[h+A|0],12)|0;f=z[h+8>>2];m=z[h>>2];o=z[h+4>>2];l=C(C(z[k+40>>2]*f)+C(C(z[k+8>>2]*m)+C(o*z[k+24>>2])));s=C(C(z[k+32>>2]*f)+C(C(z[k>>2]*m)+C(o*z[k+16>>2])));m=C(C(z[k+36>>2]*f)+C(C(z[k+4>>2]*m)+C(o*z[k+20>>2])));o=C(C(t*C(l-z[d+8>>2]))+C(C(y*C(s-z[d>>2]))+C(u*C(m-z[d+4>>2]))));if(G|o>C(0)){D=C(0);f=C(0);E=C(0);i=C(i-l);j=C(j-s);g=C(g-m);F=C(C(i*i)+C(C(j*j)+C(g*g)));if(F>C(0)){f=C(C(1)/C(K(F)));E=C(i*f);D=C(j*f);f=C(g*f)}z[n+8>>2]=E;z[n+4>>2]=f;z[n>>2]=D;tZ(c,n);p=w[r+18|0]}i=l;g=m;j=s;f=o;h=e;e=e+1|0;if(p>>>0>e>>>0){continue}break}h=v[a+16>>2]}q=q+1|0;if(q>>>0>>0){continue}break}}xa=n+16|0}function GJ(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=v[a>>2];e=v[f+2356>>2];a:{if(!(e&6)){break a}d=v[f+56>>2];if(!d){break a}g=e<<2&8|e<<3&32;f=v[f+52>>2];while(1){d=d-1|0;e=v[f>>2];b:{if(!(w[e+21|0]&8)){VR(e-4|0,g);break b}t[e+22|0]=g|w[e+22|0]}f=f+4|0;if(d){continue}break}}l=v[a+104>>2];c:{if(!l){break c}n=v[a+72>>2];f=0;while(1){d=v[(f<<2)+n>>2];d:{if(!(!(t[d+21|0]&1)|!(t[d+22|0]&1))){e=yJ(a,d-4|0,0,0,b,c);if((d|0)!=((e?e+4|0:0)|0)){break d}}e:{f:{switch(w[d+20|0]){case 0:VR(d-4|0,0);break e;case 4:break f;default:break e}}j=0;g=v[d+24>>2];e=v[g- -64>>2];k=1;m=1;i=v[g+60>>2];if(i){m=y[i+152>>2]<4294967294}k=e?y[e+152>>2]<4294967294:k;j=i?!(t[v[i+44>>2]+44|0]&1):j;g:{if(!(k|m)|!(j|(e?!(t[v[e+44>>2]+44|0]&1):h))){break g}t[d+21|0]=w[d+21|0]|32;if((w[g+68|0]&6)!=2){break g}sP(v[v[d>>2]+40>>2],g)}}WH(d,0)}f=f+1|0;if((l|0)!=(f|0)){continue}break}b=v[a+88>>2];if(!b|!v[a+104>>2]){break c}J9(v[a+80>>2],255,b<<2);d=0;b=v[a+76>>2];e=v[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;v[b+(d<<2)>>2]=h;g=b+(h<<2)|0;h=d|2;v[g>>2]=h;g=b+(h<<2)|0;h=d|3;v[g>>2]=h;d=d+4|0;v[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;v[e>>2]=d;f=f+1|0;if((c|0)!=(f|0)){continue}break}}c=v[a+84>>2]-1|0}else{c=0}v[b+(c<<2)>>2]=-1;v[a+104>>2]=0;v[a+96>>2]=0}}function u0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),A=C(0),B=0,D=C(0),E=C(0);f=xa+-64|0;xa=f;g=v[a+8>>2];m=z[g+28>>2];n=z[g+16>>2];o=z[g+4>>2];i=z[g+24>>2];p=z[g>>2];j=z[g+12>>2];k=z[c>>2];h=z[c+4>>2];s=z[g+20>>2];l=z[c+8>>2];u=z[g+32>>2];x=C(C(C(k*z[g+8>>2])+C(h*s))+C(l*u));z[f+56>>2]=x;p=C(C(C(k*p)+C(h*j))+C(l*i));z[f+48>>2]=p;k=C(C(C(k*o)+C(h*n))+C(l*m));z[f+52>>2]=k;A=z[g+4>>2];q=z[g>>2];B=w[a+17|0];c=B?e:d;h=z[c>>2];l=z[c+4>>2];o=z[c+8>>2];D=C(C(C(h*z[g+8>>2])+C(s*l))+C(u*o));z[f+40>>2]=D;q=C(C(C(h*q)+C(j*l))+C(i*o));z[f+32>>2]=q;l=C(C(C(h*A)+C(n*l))+C(m*o));z[f+36>>2]=l;o=z[g+8>>2];A=z[g+4>>2];c=B?d:e;h=z[c>>2];r=j;j=z[c+4>>2];E=i;i=z[c+8>>2];r=C(C(C(h*z[g>>2])+C(r*j))+C(E*i));z[f+16>>2]=r;m=C(C(C(h*A)+C(n*j))+C(m*i));z[f+20>>2]=m;n=C(C(C(h*o)+C(s*j))+C(u*i));z[f+24>>2]=n;i=C(p-q);m=C(k-m);j=C(p-r);k=C(k-l);z[f+8>>2]=C(i*m)-C(j*k);h=C(x-D);n=C(x-n);z[f+4>>2]=C(h*j)-C(n*i);z[f>>2]=C(k*n)-C(m*h);c=1;a:{if(!G$(f,f+48|0,f+32|0,f+16|0,a+20|0,a+48|0)){break a}d=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];c=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;c=1;break a}c=v[a+16>>2];if(c>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=d;c=1;break a}v[a+16>>2]=c+1;c=1}xa=f- -64|0;return c|0}function YK(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=C(0),r=C(0),s=C(0),t=C(0),u=0,x=0;v[a+40>>2]=f;v[a+36>>2]=e;v[a+32>>2]=e;a:{if(!b){break a}e=0;while(1){f=(k<<3)+c|0;g=v[f>>2];n=v[f+4>>2];while(1){f=e<<3;l=e+1|0;e=l;if(g>>>0>y[c+f>>2]){continue}break}if(y[(l<<3)+c>>2]<=n>>>0){e=(k<<4)+d|0;q=z[e+12>>2];r=z[e+4>>2];s=z[e+8>>2];t=z[e>>2];f=l;while(1){e=(f<<4)+d|0;b:{if(z[e+8>>2]>2]>s|(z[e+12>>2]>2]>q)){break b}h=v[a+28>>2];e=v[v[a+32>>2]+(k<<2)>>2];i=v[h+(e<<2)>>2];g=v[v[a+36>>2]+(f<<2)>>2];h=v[h+(g<<2)>>2];if((i|0)==(h|0)|!w[v[a+44>>2]+(i<<2&12|h&3)|0]){break b}i=e>>>0>>0?e:g;m=e>>>0>g>>>0?e:g;e=i&65535|m<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;o=e>>>16^e;g=o&v[a+4>>2];c:{h=v[a+12>>2];d:{if(!h){break d}e=v[(g<<2)+h>>2];if((e|0)==-1){break d}u=v[a+16>>2];x=v[a+20>>2];while(1){j=(e<<3)+x|0;if((i|0)==(v[j>>2]&2147483647)){p=v[j+4>>2];if((p&2147483647)==(m|0)){break c}}e=v[(e<<2)+u>>2];if((e|0)!=-1){continue}break}}e=v[a+8>>2];if(e>>>0>=y[a>>2]){g=_H(a,o);h=v[a+12>>2];e=v[a+8>>2]}v[a+8>>2]=e+1;j=v[a+20>>2]+(e<<3)|0;v[j+4>>2]=m;v[j>>2]=i|-2147483648;g=(g<<2)+h|0;v[v[a+16>>2]+(e<<2)>>2]=v[g>>2];v[g>>2]=e;break b}v[j+4>>2]=p|-2147483648}f=f+1|0;if(y[(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 eA(a){var b=0,c=C(0),d=C(0),e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0);b=v[a+24>>2];if(b){e=v[a+4>>2];h=z[e+24>>2];i=z[e+20>>2];f=v[a>>2];j=z[f+24>>2];k=z[f+20>>2];l=z[e+16>>2];m=z[f+16>>2];n=z[e+8>>2];o=z[e+4>>2];p=z[e>>2];q=z[f+8>>2];r=z[f+4>>2];s=z[f>>2];t=w[b+1|0];if(t){K=z[b+44>>2];L=z[b+36>>2];M=z[b+28>>2];N=z[b+12>>2];b=b+48|0;a=0;while(1){c=z[b+80>>2];d=z[b+88>>2];u=z[b>>2];x=z[b+32>>2];y=z[b+16>>2];A=z[b+48>>2];B=z[b+4>>2];D=z[b+36>>2];E=z[b+20>>2];F=z[b+52>>2];G=z[b+8>>2];H=z[b+40>>2];I=z[b+24>>2];J=z[b+56>>2];g=C(C(z[b+60>>2]*d)+C(z[b+12>>2]+C(z[b+44>>2]*C(C(C(C(C(s*u)+C(m*x))-C(C(p*y)+C(l*A)))+C(C(C(r*B)+C(k*D))-C(C(o*E)+C(i*F))))+C(C(C(q*G)+C(j*H))-C(C(n*I)+C(h*J)))))));c=c>g?c:g;g=z[b+84>>2];c=c>2]=c;c=C(c-d);d=C(K*c);h=C(h+C(J*d));i=C(i+C(F*d));l=C(l+C(A*d));d=C(L*c);j=C(j+C(H*d));k=C(k+C(D*d));m=C(m+C(x*d));d=C(M*c);n=C(n-C(I*d));o=C(o-C(E*d));p=C(p-C(y*d));c=C(N*c);q=C(q+C(G*c));r=C(r+C(B*c));s=C(s+C(u*c));b=b+96|0;a=a+1|0;if((t|0)!=(a|0)){continue}break}}z[f+24>>2]=j;z[f+20>>2]=k;z[f+16>>2]=m;z[f+8>>2]=q;z[f+4>>2]=r;z[f>>2]=s;z[e+24>>2]=h;z[e+20>>2]=i;z[e+16>>2]=l;z[e+8>>2]=n;z[e+4>>2]=o;z[e>>2]=p}}function waa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=xa+-64|0;xa=f;a:{if(oaa(b,110196,0)){v[c>>2]=0;d=1;break a}b:{if(w[a+8|0]&24){e=1}else{if(!b){break b}e=qaa(b,109908);if(!e){break b}e=(w[e+8|0]&24)!=0}g=oaa(a,b,e)}if(g){d=1;a=v[c>>2];if(!a){break a}v[c>>2]=v[a>>2];break a}c:{if(!b){break c}e=qaa(b,109956);if(!e){break a}b=v[c>>2];if(b){v[c>>2]=v[b>>2]}g=v[e+8>>2];b=v[a+8>>2];if(g&(b^-1)&7|b&(g^-1)&96){break a}d=1;if(oaa(v[a+12>>2],v[e+12>>2],0)){break a}if(oaa(v[a+12>>2],110164,0)){a=v[e+12>>2];if(!a){break a}d=!qaa(a,110008);break a}g=v[a+12>>2];if(!g){break c}d=0;b=qaa(g,109956);if(b){if(!(t[a+8|0]&1)){break a}a=v[e+12>>2];c=0;d:{e:{while(1){d=0;if(!a){break d}a=qaa(a,109956);if(!a|v[a+8>>2]&(v[b+8>>2]^-1)){break e}d=1;if(oaa(v[b+12>>2],v[a+12>>2],0)){break d}if(!(t[b+8|0]&1)){break e}d=v[b+12>>2];if(!d){break e}b=qaa(d,109956);if(b){a=v[a+12>>2];continue}break}b=qaa(d,110068);if(!b){break e}c=xaa(b,v[a+12>>2])}d=c}break a}b=qaa(g,110068);if(b){if(!(t[a+8|0]&1)){break a}d=xaa(b,v[e+12>>2]);break a}b=qaa(g,109860);if(!b){break a}a=v[e+12>>2];if(!a){break a}a=qaa(a,109860);if(!a){break a}d=f+8|0;J9(d|4,0,52);v[f+56>>2]=1;v[f+20>>2]=-1;v[f+16>>2]=b;v[f+8>>2]=a;Ba[v[v[a>>2]+28>>2]](a,d,v[c>>2],1);a=v[f+32>>2];if(!(!v[c>>2]|(a|0)!=1)){v[c>>2]=v[f+24>>2]}d=(a|0)==1;break a}d=0}xa=f- -64|0;return d|0}function Q3(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{c=v[a+12>>2];if(y[c+12>>2]>65535){break a}b=w[c+8|0];if(b&2){break a}i=v[c+72>>2];v[c+72>>2]=0;t[c+8|0]=b|2;b=v[c+68>>2];g=B(b,3);h=v[c+56>>2];e=B(b,6);b:{c:{if(!e){e=0;if(h){break c}break b}d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,e,24422,19733,228)|0;v[c+72>>2]=d;if(!h){break b}d=v[37696]+12|0;e=Ba[v[v[d>>2]+8>>2]](d,e,24422,19733,230)|0;d=v[c+72>>2]}v[c+56>>2]=e}v[c+68>>2]=b;d:{e:{f:{if(g){e=0;b=0;if(g-1>>>0>=3){f=g&-4;while(1){u[(b<<1)+d>>1]=v[i+(b<<2)>>2];j=b|1;u[(j<<1)+d>>1]=v[i+(j<<2)>>2];j=b|2;u[(j<<1)+d>>1]=v[i+(j<<2)>>2];j=b|3;u[(j<<1)+d>>1]=v[i+(j<<2)>>2];b=b+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}f=g&3;if(!f){break f}while(1){u[(b<<1)+d>>1]=v[i+(b<<2)>>2];b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break f}if(i){break f}if(!h){break d}break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,i);if(!h){break d}if(!g){break e}c=v[c+56>>2];d=0;b=0;if(g-1>>>0>=3){i=g&-4;e=0;while(1){u[c+(b<<1)>>1]=v[(b<<2)+h>>2];f=b|1;u[c+(f<<1)>>1]=v[(f<<2)+h>>2];f=b|2;u[c+(f<<1)>>1]=v[(f<<2)+h>>2];f=b|3;u[c+(f<<1)>>1]=v[(f<<2)+h>>2];b=b+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}g=g&3;if(!g){break e}while(1){u[c+(b<<1)>>1]=v[(b<<2)+h>>2];b=b+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,h)}Ba[v[v[a>>2]+20>>2]](a)}}function jP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;if(v[a+2236>>2]){d=v[a+2204>>2];while(1){f=v[v[d+(c<<2)>>2]>>2];u[f+148>>1]=x[f+148>>1]&65423;c=c+1|0;f=v[a+2236>>2];if(c>>>0>>0){continue}break}}a:{if(!v[a+2276>>2]){c=0;break a}f=v[a+2244>>2];while(1){c=v[v[f+(b<<2)>>2]>>2];u[c+148>>1]=x[c+148>>1]&65359;b=b+1|0;c=v[a+2276>>2];if(b>>>0>>0){continue}break}f=v[a+2236>>2]}b=v[a+2220>>2];if(!(!b|!f)){J9(v[a+2212>>2],255,b<<2);b=0;c=v[a+2208>>2];d=v[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;v[c+(b<<2)>>2]=e;h=c+(e<<2)|0;e=b|2;v[h>>2]=e;h=c+(e<<2)|0;e=b|3;v[h>>2]=e;b=b+4|0;v[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;v[e>>2]=b;f=f+1|0;if((d|0)!=(f|0)){continue}break}}b=v[a+2216>>2]-1|0}else{b=0}v[c+(b<<2)>>2]=-1;v[a+2236>>2]=0;v[a+2228>>2]=0;c=v[a+2276>>2]}b=v[a+2260>>2];if(!(!b|!c)){J9(v[a+2252>>2],255,b<<2);b=0;c=v[a+2248>>2];d=v[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;v[c+(b<<2)>>2]=e;h=c+(e<<2)|0;e=b|2;v[h>>2]=e;h=c+(e<<2)|0;e=b|3;v[h>>2]=e;b=b+4|0;v[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;v[e>>2]=b;f=f+1|0;if((d|0)!=(f|0)){continue}break}}b=v[a+2256>>2]-1|0}else{b=0}v[c+(b<<2)>>2]=-1;v[a+2276>>2]=0;v[a+2268>>2]=0}u[a+2280>>1]=257}function Yn(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;g=xa-16|0;xa=g;a:{if(!v[a+92>>2]){break a}c=(b<<15^-1)+b|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[v[a+68>>2]+((v[a+76>>2]-1&(c>>>16^c))<<2)>>2];if((c|0)==-1){break a}f=v[a- -64>>2];d=v[a+60>>2];while(1){if(v[d+(c<<3)>>2]!=(b|0)){c=v[f+(c<<2)>>2];if((c|0)!=-1){continue}break a}break}i=v[(d+(c<<3)|0)+4>>2];v[g+12>>2]=b;b:{if(!v[a+92>>2]){break b}j=v[a+68>>2];e=v[g+12>>2];b=(e<<15^-1)+e|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=j+((v[a+76>>2]-1&(b>>>16^b))<<2)|0;d=v[c>>2];if((d|0)==-1){break b}f=v[a+64>>2];h=v[a+60>>2];b=h+(d<<3)|0;if((e|0)!=v[b>>2]){while(1){c=f+(d<<2)|0;d=v[c>>2];if((d|0)==-1){break b}b=(d<<3)+h|0;if((e|0)!=v[b>>2]){continue}break}}e=f+(d<<2)|0;v[c>>2]=v[e>>2];c=v[a+92>>2]-1|0;v[a+92>>2]=c;v[a+88>>2]=v[a+88>>2]+1;if((c|0)!=(d|0)){l=b;k=(c<<3)+h|0;b=v[k>>2];v[l>>2]=b;v[((d<<3)+h|0)+4>>2]=v[k+4>>2];v[e>>2]=v[f+(c<<2)>>2];b=b+(b<<15^-1)|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=((v[a+76>>2]-1&(b>>>16^b))<<2)+j|0;b=v[c>>2];e=v[a+92>>2];if((b|0)!=(e|0)){while(1){c=f+(b<<2)|0;b=v[c>>2];if((e|0)!=(b|0)){continue}break}}v[c>>2]=d}v[a+84>>2]=v[a+84>>2]-1}if(!i){break a}b=v[i>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,i)}t[a+100|0]=v[a+92>>2]!=0;xa=g+16|0}function zu(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;d=xa-288|0;xa=d;e=v[b+4>>2];a:{if(!(w[(e&1?v[b+8>>2]:(v[((e>>>22&60)+89188|0)+12>>2]+b|0)+8|0)|0]&8)){t[d+272|0]=1;v[d+280>>2]=0;v[d+284>>2]=64;v[d+276>>2]=d+16;e=_o(b,d+12|0);LP(a,b+16|0,v[d+12>>2],e,c);if(e){c=v[b>>2];b=0;while(1){a=v[v[d+12>>2]+(b<<2)>>2]+32|0;g=v[a+4>>2];if((g&251658240)==16777216){v[a>>2]=c;v[a+4>>2]=g&1073741823|-2147483648}a=a-16|0;v[a>>2]=v[a>>2]+1;b=b+1|0;if((e|0)!=(b|0)){continue}break}}a=v[d+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[d+276>>2];if((a|0)==(d+16|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}t[d+272|0]=1;v[d+280>>2]=0;v[d+284>>2]=64;v[d+276>>2]=d+16;a=_o(b,d+12|0);b:{if(!a){break b}c=v[b>>2];b=0;if((a|0)!=1){g=a&-2;while(1){f=b<<2;e=v[f+v[d+12>>2]>>2];h=v[e+36>>2];if((h&251658240)==16777216){v[e+32>>2]=c;v[e+36>>2]=h&1073741823|-2147483648}e=v[v[d+12>>2]+(f|4)>>2];f=v[e+36>>2];if((f&251658240)==16777216){v[e+32>>2]=c;v[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=v[v[d+12>>2]+(b<<2)>>2];b=v[a+36>>2];if((b&251658240)!=16777216){break b}v[a+32>>2]=c;v[a+36>>2]=b&1073741823|-2147483648}a=v[d+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[d+276>>2];if((a|0)==(d+16|0)|!a){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}xa=d+288|0}function wL(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=xa-16|0;xa=h;n=v[a+8>>2];if(n){p=c+112|0;q=c+100|0;while(1){g=v[a+20>>2]+(l<<3)|0;f=v[g+4>>2];i=v[g>>2];a:{if((i|0)<0){i=v[B(i>>>2&536870911,12)+b>>2];f=v[B(f>>>2&536870911,12)+b>>2];v[h+12>>2]=f>>>0>>0?i:f;v[h+8>>2]=f>>>0>i>>>0?i:f;f=v[c+104>>2];b:{if(f>>>0>=(v[c+108>>2]&2147483647)>>>0){bL(q,h+8|0);break b}i=v[h+12>>2];f=v[c+100>>2]+(f<<3)|0;v[f>>2]=v[h+8>>2];v[f+4>>2]=i;v[c+104>>2]=v[c+104>>2]+1}v[g>>2]=v[g>>2]&2147483647;v[g+4>>2]=v[g+4>>2]&2147483647;l=l+1|0;break a}c:{if((f|0)<0){v[g+4>>2]=f&2147483647;break c}g=f>>>2|0;k=i>>>7|0;m=v[d+4>>2];j=i>>>2|0;if(!(k>>>0>>0&(v[v[d>>2]+(k<<2)>>2]>>>j&1))){o=f>>>7|0;if(m>>>0<=o>>>0|!(v[v[d>>2]+(o<<2)>>2]>>>g&1)){break c}}m=v[e+4>>2];d:{if(v[v[e>>2]+(k<<2)>>2]>>>j&1&m>>>0>k>>>0){break d}k=f>>>7|0;if(k>>>0>>0&(v[v[e>>2]+(k<<2)>>2]>>>g&1)){break d}j=v[B(j,12)+b>>2];g=v[B(g,12)+b>>2];v[h+12>>2]=g>>>0>>0?j:g;v[h+8>>2]=g>>>0>j>>>0?j:g;g=v[c+116>>2];if(g>>>0>=(v[c+120>>2]&2147483647)>>>0){bL(p,h+8|0);break d}j=v[h+12>>2];g=v[c+112>>2]+(g<<3)|0;v[g>>2]=v[h+8>>2];v[g+4>>2]=j;v[c+116>>2]=v[c+116>>2]+1}f=i&65535|f<<16;f=(f<<15^-1)+f|0;f=B(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;$H(a,v[a+4>>2]&(f>>>16^f),l);n=n-1|0;break a}l=l+1|0}if(l>>>0>>0){continue}break}}YH(a);xa=h+16|0}function JJ(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=v[a+1568>>2];if(!b){h=xa-16|0;xa=h;e=a+1280|0;c=v[e+284>>2];if(c){b=v[37696];f=b+12|0;f=(m=f,n=c,o=Ba[v[v[b>>2]+20>>2]](b)|0?46887:63804,p=18373,q=180,l=v[v[f>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}else{f=0}v[h+12>>2]=f;b=v[e+268>>2];a:{if(b>>>0>=(v[e+272>>2]&2147483647)>>>0){b=0;c=e+4|0;d=v[c+268>>2];i=d&2147483647?d<<1:1;b:{if(!i){break b}d=i<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];g=Ba[v[v[b>>2]+20>>2]](b)|0?46887:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,g,16608,553)|0}g=v[c+264>>2];k=(g<<2)+b|0;if((g|0)>0){j=v[c+260>>2];d=b;while(1){v[d>>2]=v[j>>2];j=j+4|0;d=d+4|0;if(k>>>0>d>>>0){continue}break}}v[k>>2]=v[h+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d);g=v[c+264>>2]}v[c+268>>2]=i;v[c+260>>2]=b;v[c+264>>2]=g+1;break a}v[v[e+264>>2]+(b<<2)>>2]=f;v[e+268>>2]=b+1}b=((v[e+276>>2]<<5)+f|0)-32|0;if(f>>>0<=b>>>0){c=v[e+288>>2];while(1){v[b>>2]=c;c=b;b=b-32|0;if(f>>>0<=b>>>0){continue}break}v[e+288>>2]=c}xa=h+16|0;b=v[a+1568>>2]}v[a+1568>>2]=v[b>>2];a=a+1560|0;v[a>>2]=v[a>>2]+1;v[b+28>>2]=0;v[b+20>>2]=-1;v[b+24>>2]=0;v[b+12>>2]=-1;v[b+16>>2]=-1;u[b+10>>1]=0;u[b+4>>1]=0;return b}function BN(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,y=0,z=0,A=0,C=0;o=B(w[a+13|0],48);f=w[a+12|0];p=f<<4;k=o+p|0;if(k){l=f<<(e?3:2);q=v[a+8>>2];r=v[a>>2];a:{b:{f=v[c+7172>>2];if(f){y=v[a+4>>2];i=p+v[f+4>>2]|0;v[f+4>>2]=i;f=v[c+7172>>2];s=v[f+8>>2];z=v[f>>2];m=v[f+12>>2];h=v[f+4>>2];g=v[c+7176>>2];f=o+v[g+4>>2]|0;v[g+4>>2]=f;g=v[c+7176>>2];k=v[g>>2];j=v[g+8>>2];m=j>>>0<=v[g+12>>2]+v[g+4>>2]>>>0|s>>>0<=h+m>>>0;c:{if(l){g=v[c+7180>>2];h=v[g+4>>2]+l|0;v[g+4>>2]=h;n=v[c+7180>>2];g=v[n+8>>2];if(m|g>>>0<=v[n+12>>2]+v[n+4>>2]>>>0){break c}h=(v[n>>2]+g|0)-h|0;break b}h=0;if(!m){break b}}h=0;u[a+12>>1]=0;f=0;g=0;break a}j=(l+k|0)+15&65520;d:{if(j>>>0>=16385){g=Jy(v[c+500>>2],j);break d}e:{g=v[c+504>>2];if(g){i=v[c+508>>2];f=i+j|0;if(f>>>0<16385){break e}}g=Ly(v[c+500>>2]);v[c+508>>2]=j;v[c+504>>2]=g;break d}v[c+508>>2]=f;g=g+i|0}i=w[a+13|0];f=I9(g,r,k);h=l?f+k|0:0;f=f+B(i,48)|0;if(!e){break a}e=w[a+12|0]<<2;I9(e+h|0,e+q|0,e);break a}g=(k+j|0)-f|0;I9(g,r,o);f=(s+z|0)-i|0;I9(f,y,p);if(!e){break a}e=w[a+12|0]<<2;I9(e+h|0,e+q|0,e)}if(l){J9(h,0,l)}v[a+8>>2]=h;v[a+4>>2]=f;v[a>>2]=g}e=x[b+4>>1];f:{if(!e){break f}if(w[b+7|0]&2){A=b,C=I9(sK(c+512|0,e),v[b>>2],x[b+4>>1]),v[A>>2]=C;t[b+7|0]=w[b+7|0]|3;return}if(!d){break f}a=v[b>>2];A=b,C=I9(sK(c+512|0,e+15&65520),a,x[b+4>>1]),v[A>>2]=C}}function WW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=0,g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=0,G=C(0),H=C(0),I=C(0);i=xa-16|0;xa=i;g=z[b+56>>2];h=z[b+24>>2];l=z[b+40>>2];m=z[b+48>>2];n=z[b+32>>2];o=z[b+52>>2];p=z[b+20>>2];q=z[b+36>>2];f=v[b+8>>2];r=z[b+16>>2];e=z[c+8>>2];j=z[c>>2];k=z[c+4>>2];b=v[b+4>>2];s=z[b+56>>2];t=z[b+52>>2];u=z[b+72>>2];c=b- -64|0;w=z[c>>2];x=z[b+68>>2];y=z[b+88>>2];A=z[b+80>>2];D=z[b+84>>2];E=z[b+48>>2];v[i+12>>2]=0;g=C(C(g*e)+C(C(h*j)+C(k*l)));h=C(C(m*e)+C(C(r*j)+C(k*n)));e=C(C(o*e)+C(C(p*j)+C(k*q)));z[i+8>>2]=C(y*g)+C(C(A*h)+C(D*e));z[i+4>>2]=C(u*g)+C(C(w*h)+C(e*x));z[i>>2]=C(s*g)+C(C(E*h)+C(e*t));F=d;d=IV(b,i);v[F>>2]=d;g=z[b+88>>2];h=z[b+56>>2];l=z[b+72>>2];m=z[c>>2];n=z[b+80>>2];o=z[b+84>>2];c=v[b+152>>2]+B(d,12)|0;e=z[c+8>>2];p=z[b+52>>2];j=z[c>>2];q=z[b+68>>2];k=z[c+4>>2];r=z[b+48>>2];s=z[f+52>>2];t=z[f+36>>2];u=z[f+20>>2];w=z[f+56>>2];x=z[f+40>>2];y=z[f+24>>2];A=z[f+48>>2];D=z[f+32>>2];E=z[f>>2];G=z[f+16>>2];H=z[f+4>>2];I=z[f+8>>2];v[a+12>>2]=0;g=C(C(g*e)+C(C(h*j)+C(k*l)));h=C(C(n*e)+C(C(r*j)+C(k*m)));e=C(C(o*e)+C(C(p*j)+C(k*q)));z[a+8>>2]=w+C(C(x*g)+C(C(I*h)+C(y*e)));z[a+4>>2]=s+C(C(t*g)+C(C(H*h)+C(e*u)));z[a>>2]=A+C(C(D*g)+C(C(E*h)+C(e*G)));xa=i+16|0}function E5(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);q=z[d+20>>2];r=z[d+24>>2];n=z[c+36>>2];o=z[c+32>>2];p=z[c+40>>2];s=z[d+16>>2];f=z[d+12>>2];g=z[c+28>>2];h=z[c+16>>2];j=z[d>>2];k=z[d+4>>2];i=z[c+20>>2];l=z[d+8>>2];m=z[c+24>>2];z[a+12>>2]=C(C(C(f*g)-C(h*j))-C(k*i))-C(l*m);z[a+8>>2]=C(C(j*i)+C(C(f*m)+C(l*g)))-C(h*k);z[a+4>>2]=C(C(l*h)+C(C(f*i)+C(k*g)))-C(m*j);z[a>>2]=C(C(k*m)+C(C(f*h)+C(j*g)))-C(i*l);g=C(p+p);h=C(o+o);i=C(n+n);m=C(C(l*g)+C(C(j*h)+C(k*i)));n=C(C(f*f)+C(-.5));z[a+24>>2]=r+C(C(l*m)+C(C(g*n)+C(f*C(C(j*i)-C(h*k)))));z[a+20>>2]=q+C(C(k*m)+C(C(i*n)+C(f*C(C(l*h)-C(g*j)))));z[a+16>>2]=s+C(C(j*m)+C(C(h*n)+C(f*C(C(k*g)-C(i*l)))));q=z[e+20>>2];r=z[e+24>>2];n=z[c- -64>>2];o=z[c+60>>2];p=z[c+68>>2];s=z[e+16>>2];f=z[e+12>>2];g=z[c+56>>2];h=z[c+44>>2];j=z[e>>2];k=z[e+4>>2];i=z[c+48>>2];l=z[e+8>>2];m=z[c+52>>2];z[b+12>>2]=C(C(C(f*g)-C(h*j))-C(k*i))-C(l*m);z[b+8>>2]=C(C(j*i)+C(C(f*m)+C(l*g)))-C(h*k);z[b+4>>2]=C(C(l*h)+C(C(f*i)+C(k*g)))-C(m*j);z[b>>2]=C(C(k*m)+C(C(f*h)+C(j*g)))-C(i*l);g=C(p+p);h=C(o+o);i=C(n+n);m=C(C(l*g)+C(C(j*h)+C(k*i)));n=C(C(f*f)+C(-.5));z[b+24>>2]=r+C(C(l*m)+C(C(g*n)+C(f*C(C(j*i)-C(h*k)))));z[b+20>>2]=q+C(C(k*m)+C(C(i*n)+C(f*C(C(l*h)-C(g*j)))));z[b+16>>2]=s+C(C(j*m)+C(C(h*n)+C(f*C(C(k*g)-C(i*l)))))}function qL(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=v[a+76>>2];k=h+(b<<3)|0;g=v[k>>2];a:{if(!(t[k+4|0]&1)){t[a+169|0]=1;v[a+120>>2]=0;c=v[a+116>>2];if(g>>>0>>0){if(v[a+92>>2]!=(c|0)){i=v[a+108>>2];f=c-1|0;d=x[i+(f<<1)>>1];c=v[a+100>>2];e=c+B(g,24)|0;c=c+B(f,24)|0;j=v[c+4>>2];v[e>>2]=v[c>>2];v[e+4>>2]=j;j=v[c+20>>2];v[e+16>>2]=v[c+16>>2];v[e+20>>2]=j;j=v[c+12>>2];v[e+8>>2]=v[c+8>>2];v[e+12>>2]=j;u[i+(g<<1)>>1]=d;v[h+(d<<3)>>2]=g;c=v[a+116>>2];g=f}v[a+116>>2]=c-1}c=v[a+92>>2]-1|0;v[a+92>>2]=c;d=v[a+100>>2];f=v[a+108>>2];break a}t[a+168|0]=1;d=v[a+128>>2];i=g>>>5|0;b:{if(d>>>0>i>>>0){h=g&31;c=v[a+124>>2];break b}h=g&31;e=(g+128>>>5|0)+((h|0)!=0)|0;if(e){c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,e<<2,24422,13406,274)|0;d=v[a+128>>2]}if(d){I9(c,v[a+124>>2],d<<2);f=v[a+128>>2]}if((e|0)!=(f|0)){J9((f<<2)+c|0,0,e-f<<2)}f=v[a+124>>2];if(f){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,f)}v[a+128>>2]=e;v[a+124>>2]=c}f=(i<<2)+c|0;v[f>>2]=v[f>>2]|1<>2]-1|0;v[a+84>>2]=c;d=v[a+96>>2];f=v[a+104>>2]}h=x[f+(c<<1)>>1];i=v[a+76>>2];e=d+B(g,24)|0;c=d+B(c,24)|0;d=v[c+4>>2];v[e>>2]=v[c>>2];v[e+4>>2]=d;d=v[c+20>>2];v[e+16>>2]=v[c+16>>2];v[e+20>>2]=d;d=v[c+12>>2];v[e+8>>2]=v[c+8>>2];v[e+12>>2]=d;u[(g<<1)+f>>1]=h;v[i+(h<<3)>>2]=g;v[k>>2]=v[a+72>>2];v[k+4>>2]=-1;v[a+72>>2]=b;v[a+64>>2]=v[a+64>>2]-1}function rx(a){var b=0,c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0),w=C(0),x=0,y=0;r=v[a+336>>2];if(r){x=v[a+236>>2];y=v[a+332>>2];a=0;while(1){b=v[((a<<5)+y|0)+16>>2];j=z[b+120>>2];k=z[b+112>>2];f=z[b+116>>2];c=z[b+8>>2];h=z[b+4>>2];l=z[b+12>>2];d=z[b>>2];e=z[b+124>>2];b=B(a,112)+x|0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b- -64>>2]=0;v[b+56>>2]=0;v[b+60>>2]=0;v[b+48>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;e=e==C(0)?C(0):C(C(1)/e);z[b+68>>2]=e;z[b+52>>2]=e;z[b+36>>2]=e;g=j==C(0)?C(0):C(C(1)/j);i=d;d=C(d+d);n=C(C(1)-C(i*d));e=C(h+h);s=C(h*e);j=C(n-s);i=k==C(0)?C(0):C(C(1)/k);q=C(d*c);t=C(e*l);k=C(q-t);m=C(e*c);o=C(d*l);e=C(m+o);f=f==C(0)?C(0):C(C(1)/f);z[b+104>>2]=C(C(g*j)*j)+C(C(C(i*k)*k)+C(e*C(e*f)));p=C(d*h);d=C(c+c);u=C(l*d);h=C(p+u);l=C(i*h);w=C(c*d);d=C(n-w);n=C(f*d);m=C(m-o);o=C(g*m);z[b+88>>2]=C(o*m)+C(C(l*h)+C(d*n));p=C(p-u);c=C(f*p);f=g;g=C(q+t);f=C(f*g);q=C(f*g);g=i;i=C(C(C(1)-s)-w);g=C(g*i);z[b+72>>2]=q+C(C(g*i)+C(p*c));h=C(C(f*m)+C(C(g*h)+C(d*c)));z[b+84>>2]=h;z[b+76>>2]=h;c=C(C(f*j)+C(C(g*k)+C(e*c)));z[b+96>>2]=c;z[b+80>>2]=c;c=C(C(o*j)+C(C(l*k)+C(e*n)));z[b+92>>2]=c;z[b+100>>2]=c;a=a+1|0;if((r|0)!=(a|0)){continue}break}}}function PB(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=xa-16|0;xa=g;j=-1;a:{b:{switch(d|0){case 0:d=v[b+4>>2];if(!d){break a}LB(a,1);v[a+4>>2]=d;if(!uY(b,a+12|0,c,a)){break a}b=v[37696];c=b+12|0;b=(p=c,q=16,r=Ba[v[v[b>>2]+20>>2]](b)|0?40519:63804,s=12118,t=281,o=v[v[c>>2]+8>>2],Ba[o](p|0,q|0,r|0,s|0,t|0)|0);v[b>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[a+48>>2]=b;v[g+4>>2]=v[a+12>>2];QB(b,g+4|0);j=0;break a;case 1:break b;default:break a}}if(v[v[a+48>>2]+4>>2]){if(!e){j=1;break a}n=a+12|0;j=1;while(1){d=v[a+48>>2];f=v[d+4>>2];if(!f){break a}i=v[d+12>>2];h=i+1|0;v[d+12>>2]=h;i=v[v[d>>2]+(i<<2)>>2];if((f|0)==(h|0)){v[d+12>>2]=0;v[d+4>>2]=0}sY(i,b,c,n,v[a>>2]);h=v[i+24>>2];c:{if(!h){break c}l=h+36|0;v[g+8>>2]=l;k=v[d+8>>2]&2147483647;f=v[d+4>>2];d:{if(k>>>0<=f>>>0){QB(d,g+8|0);k=v[d+8>>2]&2147483647;f=v[d+4>>2];break d}v[v[d>>2]+(f<<2)>>2]=l;f=f+1|0;v[d+4>>2]=f}v[g+12>>2]=h;if(f>>>0>=k>>>0){QB(d,g+12|0);break c}v[v[d>>2]+(f<<2)>>2]=h;v[d+4>>2]=f+1}d=v[i+32>>2];v[c+4>>2]=d+v[c+4>>2];m=d+m|0;if(m>>>0>>0){continue}break}break a}MB(a,b,c);b=v[a+48>>2];if(b){c=v[b+8>>2];e:{if((c|0)<0|!(c&2147483647)){break e}c=v[b>>2];if(!c){break e}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}j=0;v[a+48>>2]=0}xa=g+16|0;return j}function uE(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=xa-16|0;xa=j;a:{if(!v[a+684>>2]){break a}g=(b<<15^-1)+b|0;g=B(g>>>10^g,9);g=g>>>6^g;g=(g<<11^-1)+g|0;h=v[v[a+660>>2]+((v[a+668>>2]-1&(g>>>16^g))<<2)>>2];if((h|0)==-1){break a}g=v[a+656>>2];f=v[a+652>>2];while(1){if(v[f+(h<<3)>>2]!=(b|0)){h=v[g+(h<<2)>>2];if((h|0)!=-1){continue}break a}break}k=v[a+644>>2];g=f+(h<<3)|0;i=v[g+4>>2];f=v[e+4>>2];b=v[e>>2];v[j>>2]=b;v[j+4>>2]=f;v[j+8>>2]=b;v[j+12>>2]=f;f=xa-16|0;xa=f;i=k+B(i,44)|0;hC(v[i+4>>2],c,d,j,1);c=v[v[v[i+4>>2]+16>>2]+(v[c>>2]<<2)>>2];v[f+8>>2]=0;v[f>>2]=0;v[f+4>>2]=0;_C(f,8);d=QC(v[i>>2],c,v[v[i+4>>2]+8>>2],f);b=v[f+4>>2];b:{if(b){c:{if(v[d+40>>2]|!d){break c}h=v[d+36>>2];if(!v[h>>2]){break c}c=0;while(1){v[v[v[i+8>>2]>>2]+(v[((c<<2)+h|0)+4>>2]<<2)>>2]=d;c=c+1|0;h=v[d+36>>2];if(c>>>0>2]){continue}break}}b=b>>>0>1?b:1;d=0;while(1){c=0;e=v[v[f>>2]+(d<<2)>>2];h=v[e+36>>2];if(v[h>>2]){while(1){v[v[v[i+8>>2]>>2]+(v[((c<<2)+h|0)+4>>2]<<2)>>2]=e;c=c+1|0;h=v[e+36>>2];if(c>>>0>2]){continue}break}}d=d+1|0;if((b|0)!=(d|0)){continue}break}break b}v[v[v[i+8>>2]>>2]+(c<<2)>>2]=d}b=v[f+8>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=v[f>>2];if(!c){break d}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}xa=f+16|0;sE(a,v[g+4>>2]);i=1}xa=j+16|0;return i|0}function UW(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=0,F=C(0),G=C(0),H=C(0);h=xa-16|0;xa=h;f=z[b+56>>2];g=z[b+24>>2];k=z[b+40>>2];l=z[b+48>>2];m=z[b+32>>2];n=z[b+52>>2];o=z[b+20>>2];p=z[b+36>>2];e=v[b+8>>2];q=z[b+16>>2];d=z[c+8>>2];i=z[c>>2];j=z[c+4>>2];b=v[b+4>>2];r=z[b+56>>2];s=z[b+52>>2];t=z[b+72>>2];c=b- -64|0;u=z[c>>2];w=z[b+68>>2];x=z[b+88>>2];y=z[b+80>>2];A=z[b+84>>2];D=z[b+48>>2];v[h+12>>2]=0;f=C(C(f*d)+C(C(g*i)+C(j*k)));g=C(C(l*d)+C(C(q*i)+C(j*m)));d=C(C(n*d)+C(C(o*i)+C(j*p)));z[h+8>>2]=C(x*f)+C(C(y*g)+C(A*d));z[h+4>>2]=C(t*f)+C(C(u*g)+C(d*w));z[h>>2]=C(r*f)+C(C(D*g)+C(d*s));E=IV(b,h);f=z[b+88>>2];g=z[b+56>>2];k=z[b+72>>2];l=z[c>>2];m=z[b+80>>2];n=z[b+84>>2];c=v[b+152>>2]+B(E,12)|0;d=z[c+8>>2];o=z[b+52>>2];i=z[c>>2];p=z[b+68>>2];j=z[c+4>>2];q=z[b+48>>2];r=z[e+52>>2];s=z[e+36>>2];t=z[e+20>>2];u=z[e+56>>2];w=z[e+40>>2];x=z[e+24>>2];y=z[e+48>>2];A=z[e+32>>2];D=z[e>>2];F=z[e+16>>2];G=z[e+4>>2];H=z[e+8>>2];v[a+12>>2]=0;f=C(C(f*d)+C(C(g*i)+C(j*k)));g=C(C(m*d)+C(C(q*i)+C(j*l)));d=C(C(n*d)+C(C(o*i)+C(j*p)));z[a+8>>2]=u+C(C(w*f)+C(C(H*g)+C(x*d)));z[a+4>>2]=r+C(C(s*f)+C(C(G*g)+C(d*t)));z[a>>2]=y+C(C(A*f)+C(C(D*g)+C(d*F)));xa=h+16|0}function Rl(a,b){a=a|0;b=b|0;var c=C(0),d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);d=xa+-64|0;xa=d;a=a+8|0;n=v[a+384>>2];a:{if(!n){break a}Ba[v[v[n>>2]+112>>2]](d,n);g=z[b+12>>2];e=z[b+8>>2];o=z[b>>2];h=z[b+4>>2];i=z[d>>2];c=C(z[b+16>>2]-z[d+16>>2]);f=C(c+c);c=C(z[b+20>>2]-z[d+20>>2]);l=C(c+c);j=z[d+4>>2];k=z[d+8>>2];c=C(z[b+24>>2]-z[d+24>>2]);m=C(c+c);p=C(C(C(C(-i)*f)-C(l*j))-C(k*m));c=z[d+12>>2];q=C(C(c*c)+C(-.5));r=C(C(C(m*q)+C(c*C(C(j*f)-C(i*l))))-C(k*p));z[d+56>>2]=r;s=C(C(C(l*q)+C(c*C(C(i*m)-C(k*f))))-C(j*p));z[d+52>>2]=s;l=C(C(C(f*q)+C(c*C(C(k*l)-C(j*m))))-C(i*p));z[d+48>>2]=l;f=e;e=C(C(1)/C(K(C(C(g*g)+C(C(e*e)+C(C(o*o)+C(h*h)))))));f=C(f*e);h=C(h*e);g=C(g*e);e=C(o*e);o=C(C(k*f)+C(C(j*h)+C(C(c*g)+C(i*e))));z[d+44>>2]=o;m=C(C(e*j)+C(C(C(c*f)-C(g*k))-C(i*h)));z[d+40>>2]=m;p=C(C(f*i)+C(C(C(c*h)-C(g*j))-C(k*e)));z[d+36>>2]=p;c=C(C(h*k)+C(C(C(c*e)-C(g*i))-C(j*f)));z[d+32>>2]=c;b:{c:{d:{n=v[a+4>>2];switch((n>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}aF(a+12|0,d+32|0);break a}b=v[a+8>>2];if(!b){b=Qu(v[a>>2],n>>>24&15);v[a+8>>2]=b}z[b+16>>2]=l;z[b+12>>2]=o;z[b+8>>2]=m;z[b+4>>2]=p;z[b>>2]=c;z[b+24>>2]=r;z[b+20>>2]=s;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=d- -64|0}function Ix(a,b){var c=0,d=C(0),e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=C(0),u=C(0),x=C(0),A=0,D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);q=v[b+28>>2];s=v[b+8>>2];k=v[b+4>>2];b=k;v[b>>2]=0;v[b+4>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;if(y[a+336>>2]>=2){b=1;while(1){f=v[a+340>>2]+B(b,160)|0;d=z[f+124>>2];l=b<<5;c=(v[(l+v[a+332>>2]|0)+24>>2]<<5)+k|0;m=z[c>>2];e=z[f+120>>2];n=z[c+4>>2];t=C(C(C(d*m)-C(e*n))+z[c+24>>2]);o=z[c+8>>2];g=C(e*o);e=z[f+128>>2];u=C(C(g-C(e*m))+z[c+20>>2]);x=C(C(C(e*n)-C(d*o))+z[c+16>>2]);p=C(0);a:{if(!q){e=C(0);g=C(0);h=C(0);i=C(0);j=C(0);break a}e=C(0);g=C(0);h=C(0);i=C(0);j=C(0);c=v[a+344>>2]+B(b,80)|0;r=w[c+76|0];if(!r){break a}A=(v[c+72>>2]<<2)+q|0;D=v[a+272>>2]+B(b,76)|0;f=0;while(1){d=z[(f<<2)+A>>2];c=B(f,24)+D|0;h=C(h+C(d*z[c+12>>2]));g=C(g+C(d*z[c+8>>2]));e=C(e+C(d*z[c+4>>2]));p=C(p+C(d*z[c>>2]));j=C(j+C(d*z[c+20>>2]));i=C(i+C(d*z[c+16>>2]));f=f+1|0;if((r|0)!=(f|0)){continue}break}}c=l+s|0;d=z[c+20>>2];E=z[c+24>>2];F=z[c>>2];G=z[c+4>>2];H=z[c+8>>2];I=z[c+16>>2];c=k+l|0;v[c+28>>2]=0;v[c+12>>2]=0;z[c+16>>2]=h+C(x+I);z[c+8>>2]=g+C(o+H);z[c+4>>2]=e+C(n+G);z[c>>2]=p+C(m+F);z[c+24>>2]=j+C(t+E);z[c+20>>2]=i+C(u+d);b=b+1|0;if(b>>>0>2]){continue}break}}}function fV(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);v=z[a+8>>2];l=z[b+12>>2];f=C(l+l);d=z[b+20>>2];n=C(f*d);k=z[b+16>>2];c=C(k+k);e=z[b+24>>2];h=C(c*e);m=C(n+h);g=z[b>>2];q=C(k*c);i=C(d+d);r=C(d*i);u=C(C(C(1)-q)-r);w=C(g*u);s=C(c*d);j=C(f*e);d=C(s-j);c=C(f*k);e=C(i*e);k=C(c+e);i=z[b+4>>2];x=C(k*i);t=C(C(1)-C(l*f));f=C(t-q);l=C(n-h);h=z[b+8>>2];q=C(l*h);o=C(C(C(m*w)+C(d*x))+C(f*q));c=C(c-e);y=C(g*c);e=C(t-r);r=C(e*i);n=C(s+j);s=C(n*h);j=C(C(C(m*y)+C(d*r))+C(f*s));t=z[a+20>>2];A=m;m=C(g*m);g=d;d=C(d*i);p=f;f=C(f*h);g=C(C(C(A*m)+C(g*d))+C(p*f));i=z[a+32>>2];z[a+32>>2]=C(C(v*o)+C(j*t))+C(g*i);h=z[a+4>>2];B=z[a+16>>2];D=z[a+28>>2];z[a+28>>2]=C(C(h*o)+C(j*B))+C(g*D);E=z[a>>2];A=C(E*o);o=z[a+12>>2];p=g;g=z[a+24>>2];z[a+24>>2]=C(A+C(j*o))+C(p*g);j=C(C(C(c*w)+C(e*x))+C(n*q));p=C(C(C(c*y)+C(e*r))+C(n*s));c=C(C(C(c*m)+C(e*d))+C(n*f));z[a+20>>2]=C(C(v*j)+C(t*p))+C(i*c);z[a+16>>2]=C(C(h*j)+C(p*B))+C(c*D);z[a+12>>2]=C(C(E*j)+C(p*o))+C(c*g);c=C(C(C(u*w)+C(k*x))+C(l*q));e=C(C(C(u*y)+C(k*r))+C(l*s));d=C(C(C(u*m)+C(k*d))+C(l*f));z[a+8>>2]=C(C(v*c)+C(t*e))+C(i*d);z[a+4>>2]=C(C(h*c)+C(e*B))+C(d*D);z[a>>2]=C(C(E*c)+C(e*o))+C(d*g)}function eR(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:{c=v[a+20>>2];d=v[v[a+28>>2]+2168>>2];f=v[d>>2];e=v[f+92>>2];if(e){g=v[f- -64>>2];a=e<<2;h=Dx(v[f+976>>2],(a+B(e>>>6|0,56)|0)+56|0,1);if(h){b=v[f+4612>>2];b=Ba[v[v[b>>2]+4>>2]](b)|0;b=Ba[v[v[b>>2]+4>>2]](b)|0;v[d+1904>>2]=h;k=e>>>0>64&b>>>0>1;b:{if(k){v[d+1884>>2]=c;v[d+1888>>2]=1;if(c){Ba[v[v[c>>2]+16>>2]](c);v[d+1880>>2]=v[v[d+1884>>2]+16>>2]}c=d+1864|0;a=a+h|0;i=d+1912|0;j=d+1908|0;while(1){b=v[f+16>>2];l=v[f+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=b;v[a+12>>2]=l;v[a+48>>2]=f;v[a+44>>2]=i;v[a+40>>2]=h;v[a+36>>2]=j;v[a+28>>2]=g;v[a>>2]=131248;v[a+20>>2]=c;v[a+24>>2]=1;b=e>>>0<64?e:64;v[a+32>>2]=b;Ba[v[v[c>>2]+16>>2]](c);v[a+16>>2]=v[v[a+20>>2]+16>>2];Ba[v[v[a>>2]+20>>2]](a);a=a+56|0;g=(b<<2)+g|0;e=e-b|0;if(e){continue}break}break b}a=a+h|0;b=d+1912|0;i=d+1908|0;while(1){c=v[f+16>>2];j=v[f+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=c;v[a+12>>2]=j;v[a+48>>2]=f;v[a+44>>2]=b;v[a+40>>2]=h;v[a+36>>2]=i;v[a+28>>2]=g;v[a>>2]=131248;c=e>>>0<64?e:64;v[a+32>>2]=c;DJ(a);a=a+56|0;g=(c<<2)+g|0;e=e-c|0;if(e){continue}break}}if(k){a=v[d+1880>>2];Ba[v[v[a>>2]+72>>2]](a,d+1864|0);break a}EJ(v[d+1892>>2]);break a}a=v[37696];a=Ba[v[v[a>>2]+4>>2]](a)|0;Ba[v[v[a>>2]+8>>2]](a,16,67142,11474,1473)}}}function Ul(a,b){a=a|0;b=b|0;var c=C(0),d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=C(0),r=C(0),s=C(0);d=xa+-64|0;xa=d;a=a+8|0;p=v[a+388>>2];Ba[v[v[p>>2]+112>>2]](d,p);g=z[b+12>>2];e=z[b+8>>2];n=z[b>>2];h=z[b+4>>2];i=z[d>>2];c=C(z[b+16>>2]-z[d+16>>2]);f=C(c+c);c=C(z[b+20>>2]-z[d+20>>2]);l=C(c+c);j=z[d+4>>2];k=z[d+8>>2];c=C(z[b+24>>2]-z[d+24>>2]);m=C(c+c);o=C(C(C(C(-i)*f)-C(l*j))-C(k*m));c=z[d+12>>2];q=C(C(c*c)+C(-.5));r=C(C(C(m*q)+C(c*C(C(j*f)-C(i*l))))-C(k*o));z[d+56>>2]=r;s=C(C(C(l*q)+C(c*C(C(i*m)-C(k*f))))-C(j*o));z[d+52>>2]=s;l=C(C(C(f*q)+C(c*C(C(k*l)-C(j*m))))-C(i*o));z[d+48>>2]=l;f=e;e=C(C(1)/C(K(C(C(g*g)+C(C(e*e)+C(C(n*n)+C(h*h)))))));f=C(f*e);h=C(h*e);g=C(g*e);e=C(n*e);n=C(C(k*f)+C(C(j*h)+C(C(c*g)+C(i*e))));z[d+44>>2]=n;m=C(C(e*j)+C(C(C(c*f)-C(g*k))-C(i*h)));z[d+40>>2]=m;o=C(C(f*i)+C(C(C(c*h)-C(g*j))-C(k*e)));z[d+36>>2]=o;c=C(C(h*k)+C(C(C(c*e)-C(g*i))-C(j*f)));z[d+32>>2]=c;a:{b:{c:{d:{p=v[a+4>>2];switch((p>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}bF(a+12|0,d+32|0);break a}b=v[a+8>>2];if(!b){b=Qu(v[a>>2],p>>>24&15);v[a+8>>2]=b}z[b+28>>2]=c;z[b+52>>2]=r;z[b+48>>2]=s;z[b+44>>2]=l;z[b+40>>2]=n;z[b+36>>2]=m;z[b+32>>2]=o;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|2}xa=d- -64|0}function Lx(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=0,u=C(0),w=C(0),x=C(0),y=C(0),A=0;t=v[a+336>>2];if(t){A=v[a+332>>2];while(1){i=v[((q<<5)+A|0)+16>>2];c=z[i+124>>2];a=B(q,112)+b|0;v[a+32>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=0;v[a+4>>2]=0;v[a- -64>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;v[a+48>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;c=c==C(0)?C(0):C(C(1)/c);z[a+68>>2]=c;z[a+52>>2]=c;z[a+36>>2]=c;j=z[i>>2];d=C(j+j);c=z[i+8>>2];r=C(d*c);l=z[i+4>>2];k=C(l+l);f=z[i+12>>2];u=C(k*f);s=C(r-u);n=C(C(1)-C(j*d));w=C(l*k);j=C(n-w);g=z[i+120>>2];g=g==C(0)?C(0):C(C(1)/g);h=z[i+112>>2];h=h==C(0)?C(0):C(C(1)/h);m=C(k*c);o=C(d*f);k=C(m+o);e=z[i+116>>2];e=e==C(0)?C(0):C(C(1)/e);z[a+104>>2]=C(C(j*g)*j)+C(C(C(s*h)*s)+C(k*C(k*e)));p=C(d*l);d=f;f=C(c+c);x=C(d*f);d=C(p+x);l=C(d*h);y=C(c*f);f=C(n-y);n=C(f*e);m=C(m-o);o=C(m*g);z[a+88>>2]=C(o*m)+C(C(l*d)+C(f*n));p=C(p-x);c=C(p*e);e=C(r+u);g=C(e*g);r=C(g*e);e=C(C(C(1)-w)-y);h=C(e*h);z[a+72>>2]=r+C(C(h*e)+C(p*c));d=C(C(g*m)+C(C(h*d)+C(f*c)));z[a+84>>2]=d;z[a+76>>2]=d;c=C(C(g*j)+C(C(h*s)+C(k*c)));z[a+96>>2]=c;z[a+80>>2]=c;c=C(C(o*j)+C(C(l*s)+C(k*n)));z[a+100>>2]=c;z[a+92>>2]=c;q=q+1|0;if((t|0)!=(q|0)){continue}break}}}function Rw(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0),V=C(0);j=z[b+164>>2];k=z[b+100>>2];l=z[b+68>>2];m=z[b+36>>2];n=z[b+132>>2];o=z[b+168>>2];p=z[b+104>>2];q=z[b+72>>2];r=z[b+40>>2];s=z[b+136>>2];t=z[b+176>>2];u=z[b+112>>2];w=z[b+80>>2];x=z[b+48>>2];y=z[b+144>>2];A=z[b+180>>2];B=z[b+116>>2];D=z[b+84>>2];E=z[b+20>>2];F=z[b+52>>2];G=z[b+148>>2];H=z[b+184>>2];I=z[b+120>>2];J=z[b+88>>2];K=z[b+24>>2];L=z[b+56>>2];M=z[b+152>>2];d=z[c+24>>2];e=z[c+20>>2];N=z[b+4>>2];O=z[b+8>>2];P=z[b+16>>2];Q=z[b+160>>2];R=z[b+128>>2];f=z[c+16>>2];S=z[b+96>>2];g=z[c+8>>2];T=z[b+64>>2];h=z[c>>2];U=z[b>>2];i=z[c+4>>2];V=z[b+32>>2];v[a+28>>2]=0;v[a+12>>2]=0;z[a>>2]=C(C(C(C(C(U*h)+C(V*i))+C(T*g))+C(S*f))+C(R*e))+C(Q*d);z[a+24>>2]=C(C(C(C(C(K*h)+C(L*i))+C(J*g))+C(I*f))+C(M*e))+C(H*d);z[a+20>>2]=C(C(C(C(C(E*h)+C(F*i))+C(D*g))+C(B*f))+C(G*e))+C(A*d);z[a+16>>2]=C(C(C(C(C(P*h)+C(x*i))+C(w*g))+C(u*f))+C(y*e))+C(t*d);z[a+8>>2]=C(C(C(C(C(O*h)+C(r*i))+C(q*g))+C(p*f))+C(s*e))+C(o*d);z[a+4>>2]=C(C(C(C(C(N*h)+C(m*i))+C(l*g))+C(k*f))+C(n*e))+C(j*d)}function I1(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0);a:{s=z[f>>2];n=C(z[g>>2]-s);u=z[d+4>>2];w=z[d>>2];B=z[f+4>>2];t=C(z[g+4>>2]-B);j=C(C(n*u)-C(w*t));p=z[a+8>>2];x=z[d+8>>2];q=z[f+8>>2];o=C(z[g+8>>2]-q);k=C(C(t*x)-C(u*o));D=z[a>>2];l=C(C(o*w)-C(x*n));E=z[a+4>>2];y=C(C(j*p)+C(C(k*D)+C(l*E)));r=C(C(j*q)+C(C(k*s)+C(B*l)));m=z[b+8>>2];A=z[b>>2];G=z[b+4>>2];if(C(C(y-r)*C(C(C(j*m)+C(C(k*A)+C(l*G)))-r))>C(0)){break a}H=j;j=C(m-p);m=k;k=C(A-D);F=l;l=C(G-E);m=C(C(H*j)+C(C(m*k)+C(F*l)));if(m==C(0)){break a}A=C(C(w*l)-C(k*u));F=p;p=C(C(r-y)/m);r=C(F+C(j*p));y=C(r-q);m=C(C(u*j)-C(l*x));q=C(D+C(k*p));s=C(q-s);j=C(C(x*k)-C(j*w));k=C(E+C(l*p));l=C(k-B);j=C(C(C(A*y)+C(C(m*s)+C(j*l)))/C(C(A*o)+C(C(m*n)+C(t*j))));if(!(j<=C(1))|!(j>=C(0))){break a}o=C(y-C(o*j));n=C(s-C(n*j));j=C(l-C(t*j));if(!(z[c>>2]>C(C(o*o)+C(C(n*n)+C(j*j))))){break a}a=(v[i>>2]<<6)+h|0;v[a+12>>2]=0;z[a+8>>2]=r;z[a+4>>2]=k;z[a>>2]=q;a=(v[i>>2]<<6)+h|0;z[a+16>>2]=q-n;v[a+28>>2]=0;z[a+24>>2]=r-o;z[a+20>>2]=k-j;t=z[d+8>>2];b=v[d+4>>2];a=(v[i>>2]<<6)+h|0;v[a+32>>2]=v[d>>2];v[a+36>>2]=b;z[a+44>>2]=C(o*x)+C(C(n*w)+C(j*u));z[a+40>>2]=t;a=v[i>>2];v[i>>2]=a+1;v[((a<<6)+h|0)+48>>2]=e}}function MI(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,x=0,A=0,D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0;a:{if(!g|!c){break a}while(1){n=(s<<3)+e|0;o=v[n>>2];u=v[n+4>>2];while(1){n=l;l=l+1|0;m=v[(n<<3)+i>>2];if(m>>>0<=o>>>0){continue}break}if(m>>>0<=u>>>0){D=(s<<2)+d|0;l=(s<<4)+f|0;E=z[l+12>>2];F=z[l+4>>2];G=z[l+8>>2];H=z[l>>2];o=n;while(1){l=(o<<4)+j|0;b:{if(z[l+8>>2]>2]>G|(z[l+12>>2]>2]>E)){break b}l=v[D>>2];p=v[(l<<2)+k>>2];m=v[(o<<2)+h>>2];q=v[(m<<2)+k>>2];if((p|0)==(q|0)|!w[(p<<2&12|q&3)+b|0]){break b}q=l>>>0>>0?l:m;t=l>>>0>m>>>0?l:m;l=q&65535|t<<16;l=(l<<15^-1)+l|0;l=B(l>>>10^l,9);l=l>>>6^l;l=(l<<11^-1)+l|0;x=l>>>16^l;m=x&v[a+4>>2];c:{p=v[a+12>>2];d:{if(!p){break d}l=v[(m<<2)+p>>2];if((l|0)==-1){break d}I=v[a+16>>2];J=v[a+20>>2];while(1){r=(l<<3)+J|0;if((q|0)==(v[r>>2]&2147483647)){A=v[r+4>>2];if((A&2147483647)==(t|0)){break c}}l=v[(l<<2)+I>>2];if((l|0)!=-1){continue}break}}l=v[a+8>>2];if(l>>>0>=y[a>>2]){m=_H(a,x);p=v[a+12>>2];l=v[a+8>>2]}v[a+8>>2]=l+1;r=v[a+20>>2]+(l<<3)|0;v[r+4>>2]=t;v[r>>2]=q|-2147483648;m=(m<<2)+p|0;v[v[a+16>>2]+(l<<2)>>2]=v[m>>2];v[m>>2]=l;break b}v[r+4>>2]=A|-2147483648}o=o+1|0;if(y[(o<<3)+i>>2]<=u>>>0){continue}break}}if(g>>>0<=n>>>0){break a}l=n;s=s+1|0;if(s>>>0>>0){continue}break}}}function LI(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,x=0,A=0,D=0,E=C(0),F=C(0),G=C(0),H=C(0),I=0,J=0;a:{if(!g|!c){break a}while(1){n=(s<<3)+e|0;o=v[n>>2];u=v[n+4>>2];while(1){n=l;l=l+1|0;m=v[(n<<3)+i>>2];if(m>>>0>>0){continue}break}if(m>>>0<=u>>>0){D=(s<<2)+d|0;l=(s<<4)+f|0;E=z[l+12>>2];F=z[l+4>>2];G=z[l+8>>2];H=z[l>>2];o=n;while(1){l=(o<<4)+j|0;b:{if(z[l+8>>2]>2]>G|(z[l+12>>2]>2]>E)){break b}l=v[D>>2];p=v[(l<<2)+k>>2];m=v[(o<<2)+h>>2];q=v[(m<<2)+k>>2];if((p|0)==(q|0)|!w[(p<<2&12|q&3)+b|0]){break b}q=l>>>0>>0?l:m;t=l>>>0>m>>>0?l:m;l=q&65535|t<<16;l=(l<<15^-1)+l|0;l=B(l>>>10^l,9);l=l>>>6^l;l=(l<<11^-1)+l|0;x=l>>>16^l;m=x&v[a+4>>2];c:{p=v[a+12>>2];d:{if(!p){break d}l=v[(m<<2)+p>>2];if((l|0)==-1){break d}I=v[a+16>>2];J=v[a+20>>2];while(1){r=(l<<3)+J|0;if((q|0)==(v[r>>2]&2147483647)){A=v[r+4>>2];if((A&2147483647)==(t|0)){break c}}l=v[(l<<2)+I>>2];if((l|0)!=-1){continue}break}}l=v[a+8>>2];if(l>>>0>=y[a>>2]){m=_H(a,x);p=v[a+12>>2];l=v[a+8>>2]}v[a+8>>2]=l+1;r=v[a+20>>2]+(l<<3)|0;v[r+4>>2]=t;v[r>>2]=q|-2147483648;m=(m<<2)+p|0;v[v[a+16>>2]+(l<<2)>>2]=v[m>>2];v[m>>2]=l;break b}v[r+4>>2]=A|-2147483648}o=o+1|0;if(y[(o<<3)+i>>2]<=u>>>0){continue}break}}if(g>>>0<=n>>>0){break a}l=n;s=s+1|0;if(s>>>0>>0){continue}break}}}function J1(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),G=C(0),H=C(0),I=C(0);a:{w=z[f>>2];y=C(z[g>>2]-w);n=z[d+4>>2];r=z[d>>2];D=z[f+4>>2];A=C(z[g+4>>2]-D);k=C(C(y*n)-C(r*A));q=z[a+8>>2];s=z[d+8>>2];o=z[f+8>>2];m=C(z[g+8>>2]-o);j=C(C(A*s)-C(n*m));E=z[a>>2];l=C(C(m*r)-C(s*y));G=z[a+4>>2];x=C(C(k*q)+C(C(j*E)+C(l*G)));t=C(C(k*o)+C(C(j*w)+C(D*l)));p=z[b+8>>2];B=z[b>>2];I=z[b+4>>2];if(C(C(x-t)*C(C(C(k*p)+C(C(j*B)+C(l*I)))-t))>C(0)){break a}u=k;k=C(p-q);H=j;j=C(B-E);p=l;l=C(I-G);p=C(C(u*k)+C(C(H*j)+C(p*l)));if(p==C(0)){break a}u=q;q=C(C(t-x)/p);t=C(u+C(k*q));o=C(t-o);u=o;H=m;x=C(C(r*l)-C(j*n));B=C(o*x);p=C(C(n*k)-C(l*s));o=C(E+C(j*q));w=C(o-w);j=C(C(s*j)-C(k*r));k=C(G+C(l*q));l=C(k-D);m=C(F(C(C(B+C(C(p*w)+C(j*l)))/C(C(x*m)+C(C(p*y)+C(A*j)))),C(1)));m=m>C(0)?m:C(0);j=C(u-C(H*m));u=C(j*s);s=C(w-C(y*m));q=n;n=C(l-C(A*m));r=C(u+C(C(s*r)+C(q*n)));if(!(r>2])){break a}a=(v[i>>2]<<6)+h|0;v[a+12>>2]=0;z[a+8>>2]=t;z[a+4>>2]=k;z[a>>2]=o;a=(v[i>>2]<<6)+h|0;z[a+16>>2]=o-s;v[a+28>>2]=0;z[a+24>>2]=t-j;z[a+20>>2]=k-n;n=z[d+8>>2];b=v[d+4>>2];a=(v[i>>2]<<6)+h|0;v[a+32>>2]=v[d>>2];v[a+36>>2]=b;z[a+44>>2]=r;z[a+40>>2]=n;a=v[i>>2];v[i>>2]=a+1;v[((a<<6)+h|0)+48>>2]=e}}function mq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;f=xa-16|0;xa=f;c=b+8|0;j=v[b+36>>2];a:{b:{c:{d:{switch(v[b+12>>2]>>>30|0){case 3:if((v[c>>2]-16|0)!=(a|0)){break c}break;case 0:break d;default:break c}}d=xa-16|0;xa=d;e=a+16|0;v[c>>2]=e;e:{if(!w[e+4785|0]){n=c,o=VP(e+16|0,v[c+12>>2],w[c+24|0]),v[n+16>>2]=o;v[c+4>>2]=v[c+4>>2]&268435455|-2147483648;break e}e=e+5092|0;g=v[c+4>>2];h=g&1073741823;if(g>>>0>=3221225472){v[c+4>>2]=h|-2147483648;if(g&268435456){break e}v[d+4>>2]=c;Pg(e,d+4|0);break e}v[c+4>>2]=h|1073741824;v[d+8>>2]=c;c=rh(e,d+8|0,d+15|0);if(w[d+15|0]){break e}v[c>>2]=v[d+8>>2]}xa=d+16|0;if(!j){break b}while(1){f:{g:{e=v[v[b+40>>2]+(i<<2)>>2];k=e+v[(x[e+4>>1]<<2)+86240>>2]|0;c=v[k+4>>2];if(!c){break g}h=v[c+40>>2];if(!h){break g}m=v[c+36>>2];c=0;g=1;d=0;h:{i:{while(1){l=m+(d<<3)|0;if(w[l|0]==3&g){c=v[l+4>>2];g=0;d=d+1|0;if((h|0)==(d|0)){break i}continue}d=d+1|0;if((h|0)!=(d|0)){continue}break}if(g){break h}}mh(k,3,c)}Qg(b,e,a,c);if(!c){break f}d=v[c+12>>2]-1|0;v[c+12>>2]=d;if(d){break f}Ba[v[v[c+8>>2]+8>>2]](c+8|0);break f}Qg(b,e,a,0)}i=i+1|0;if((i|0)!=(j|0)){continue}break}break b}b9(v[37696],8,11709,1179,75711,0);break a}v[f+8>>2]=b;a=rh(a+5984|0,f+8|0,f+15|0);if(w[f+15|0]){break a}v[a>>2]=v[f+8>>2]}xa=f+16|0}function lq(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;f=xa-32|0;xa=f;h=Ba[v[v[b>>2]+76>>2]](b)|0;a:{if(!d){break a}if(!(Ba[v[v[b>>2]+96>>2]](b)|0)){break a}Vg(Ba[v[v[b>>2]+96>>2]](b)|0,b,0)}j=h<<2;t[f+20|0]=j>>>0>1024;b:{if(j>>>0>=1025){e=u9(j,11709,1038);break b}e=f-(j+15&-16)|0;xa=e}v[f+16>>2]=e;o=e,p=v[v[(Ba[v[v[b>>2]+100>>2]](b)|0)+84>>2]>>2],v[o>>2]=p;k=h-1|0;c:{if(k){d=1;while(1){g=v[v[f+16>>2]+(i<<2)>>2];l=v[g+356>>2];m=v[g+352>>2];if(Ba[v[v[g>>2]+260>>2]](g)|0){e=0;l=l?m:0;while(1){v[v[f+16>>2]+(d<<2)>>2]=v[l+(e<<2)>>2];d=d+1|0;e=e+1|0;if(Ba[v[v[g>>2]+260>>2]](g)>>>0>e>>>0){continue}break}}i=i+1|0;if((k|0)!=(i|0)){continue}break}if((h|0)<=0){break c}}k=a+16|0;l=a+5584|0;m=v[f+16>>2];g=0;while(1){d=h-1|0;e=v[m+(d<<2)>>2];n=w[e+108|0];i=Ba[v[v[e>>2]+252>>2]](e)|0;ph(e+12|0);iu(e+20|0,l,e);if(i){Mu(k,Ba[v[v[i>>2]+48>>2]](i)|0)}g=g|n;Fu(k,e+48|0,c,0);e=h>>>0>1;h=d;if(e){continue}break}if(!(g&32)){break c}c=v[(Ba[v[v[b>>2]+100>>2]](b)|0)+12>>2];if(c){c=v[c+48>>2]}else{c=-128}if(c>>>0>4294967167){break c}d=c>>>7|0;if(d>>>0>=v[a+4772>>2]<<5>>>0){break c}c=v[a+4768>>2]+(c>>>10&4194300)|0;h=v[c>>2];o=c,p=Vaa(-2,d)&h,v[o>>2]=p}Ku(a+16|0,Ba[v[v[b>>2]+100>>2]](b)|0);v[f+28>>2]=b;Pg(a+5944|0,f+28|0);if(j>>>0>=1025){v9(v[f+16>>2])}xa=f+32|0}function oQ(a){a=a|0;var b=0,c=0,d=0,e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),u=C(0),x=0,y=C(0),A=C(0),D=0,E=0,F=C(0),G=C(0);b=v[a+32>>2];if(b){while(1){q=0;x=v[v[a+28>>2]+(r<<2)>>2];d=v[x+32>>2];if(d){while(1){if(w[v[d+28>>2]- -64|0]&5){b=xa-96|0;xa=b;c=v[d+28>>2];j=c+68|0;y=hV(b+80|0,b- -64|0,j,v[v[v[v[v[d+4>>2]+40>>2]+976>>2]+1816>>2]+4>>2]+(v[d+8>>2]<<5)|0);g=z[b+64>>2];k=z[b+80>>2];h=z[b+68>>2];l=z[b+84>>2];i=z[b+72>>2];e=z[b+88>>2];f=v[d+4>>2];f=w[v[f+44>>2]+9|0]-1>>>0<2?f:0;E=c+32|0;c=b+32|0;uh(f- -64|0,E,v[f+44>>2]+48|0,c);eV(b+8|0,j,c,C(1));n=C(e+i);o=C(l+h);p=C(k+g);i=C(e-i);h=C(l-h);g=C(k-g);k=z[b+16>>2];l=z[b+28>>2];e=C(C(C(k+l)*C(.5))-z[b+88>>2]);F=C(e*e);e=z[b+8>>2];s=z[b+20>>2];m=C(C(C(e+s)*C(.5))-z[b+80>>2]);G=C(m*m);m=z[b+12>>2];u=z[b+24>>2];A=C(C(C(m+u)*C(.5))-z[b+84>>2]);j=C(F+C(G+C(A*A)))>=C(y*y);if(j){o=o>u?o:u;p=p>s?p:s;i=i>2]+40>>2]+1140>>2];c=v[f+4>>2]+B(v[d+8>>2]&2147483647,24)|0;z[c+12>>2]=p;z[c+8>>2]=i;z[c+4>>2]=h;z[c>>2]=g;z[c+20>>2]=n;z[c+16>>2]=o;t[f+16|0]=1;xa=b+96|0;D=j+D|0;q=q|j}d=v[d>>2];if(d){continue}break}b=v[a+32>>2]}t[v[x+100>>2]+156|0]=(q|0)!=0;r=r+1|0;if(r>>>0>>0){continue}break}}a=v[a+36>>2];v[a>>2]=v[a>>2]+D}function Vx(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=xa+-64|0;xa=c;a:{if(w[a+488|0]){b9(v[37696],8,12859,596,76892,0);break a}d=a+112|0;e=v[b+52>>2];v[c+56>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+44>>2]=v[b+16>>2];v[c+48>>2]=v[b+24>>2];g=Cx(e,v[a+448>>2],c+16|0);b:{if(t[v[a+476>>2]]&1){v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;b=c+16|0;wx(d,b);J9(v[c+24>>2],0,v[a+448>>2]<<5);sx(d,c,b);Ix(d,b);Kx(d,b);Jx(d,b);break b}v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;b=c+16|0;wx(d,b);J9(v[c+24>>2],0,v[a+448>>2]<<5);sx(d,c,b);Ix(d,b);Kx(d,b);Mx(d,b);Nx(d,b)}a=v[e+16>>2];if(!(a>>>0<=g>>>0&a+v[e+20>>2]>>>0>g>>>0)){if(!g){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,g);break a}j=v[e+4>>2];b=0;h=v[e+8>>2];f=h;while(1){i=b;b=b+1|0;d=f;f=d-1|0;a=(f<<2)+j|0;if(y[a>>2]>>0){continue}break}c:{if(d>>>0>=h>>>0){break c}f=i&3;if(f){b=0;while(1){v[a>>2]=v[v[e+4>>2]+(d<<2)>>2];d=d+1|0;a=a+4|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}if(i-1>>>0<3){break c}while(1){b=d<<2;v[a>>2]=v[b+v[e+4>>2]>>2];v[a+4>>2]=v[(b+v[e+4>>2]|0)+4>>2];v[a+8>>2]=v[(b+v[e+4>>2]|0)+8>>2];v[a+12>>2]=v[(b+v[e+4>>2]|0)+12>>2];a=a+16|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}v[e+8>>2]=h-1}xa=c- -64|0}function Rm(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=v[a+468>>2];if(!b){h=xa-16|0;xa=h;e=a+180|0;c=v[e+284>>2];if(c){b=v[37696];f=b+12|0;f=(m=f,n=c,o=Ba[v[v[b>>2]+20>>2]](b)|0?25589:63804,p=18373,q=180,l=v[v[f>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0)}else{f=0}v[h+12>>2]=f;b=v[e+268>>2];a:{if(b>>>0>=(v[e+272>>2]&2147483647)>>>0){b=0;c=e+4|0;d=v[c+268>>2];i=d&2147483647?d<<1:1;b:{if(!i){break b}d=i<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];g=Ba[v[v[b>>2]+20>>2]](b)|0?25589:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,d,g,16608,553)|0}g=v[c+264>>2];k=(g<<2)+b|0;if((g|0)>0){j=v[c+260>>2];d=b;while(1){v[d>>2]=v[j>>2];j=j+4|0;d=d+4|0;if(k>>>0>d>>>0){continue}break}}v[k>>2]=v[h+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,d);g=v[c+264>>2]}v[c+268>>2]=i;v[c+260>>2]=b;v[c+264>>2]=g+1;break a}v[v[e+264>>2]+(b<<2)>>2]=f;v[e+268>>2]=b+1}b=(B(v[e+276>>2],48)+f|0)-48|0;if(f>>>0<=b>>>0){c=v[e+288>>2];while(1){v[b>>2]=c;c=b;b=b-48|0;if(f>>>0<=b>>>0){continue}break}v[e+288>>2]=c}xa=h+16|0;b=v[a+468>>2]}v[a+468>>2]=v[b>>2];v[a+460>>2]=v[a+460>>2]+1;t[b+32|0]=1;v[b+40>>2]=0;v[b+44>>2]=4;v[b+36>>2]=b;return b}function B$(a,b,c,d){var e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0;e=xa-48|0;xa=e;f=v[a+36>>2];yX(e,b,a+4|0);b=C(C(z[a+4>>2]*z[a+8>>2])*z[a+12>>2])>2];j=z[e+40>>2];k=z[e+16>>2];l=z[e+28>>2];m=z[e+36>>2];n=z[e+24>>2];o=z[e>>2];p=z[e+12>>2];q=z[e+4>>2];r=v[f+24>>2];a:{if(w[f+64|0]&2){f=a+B(c,6)|0;a=x[f+4>>1];c=x[f+2>>1];f=x[f>>1];break a}f=a+B(c,12)|0;a=v[f+8>>2];c=v[f+4>>2];f=v[f>>2]}f=r+B(f,12)|0;g=z[f>>2];h=z[f+4>>2];i=z[f+8>>2];z[d+8>>2]=C(C(C(g*z[e+8>>2])+C(h*z[e+20>>2]))+C(i*z[e+32>>2]))+z[e+44>>2];z[d+4>>2]=j+C(C(C(g*q)+C(h*k))+C(i*l));z[d>>2]=m+C(C(C(g*o)+C(h*p))+C(i*n));j=z[e+40>>2];k=z[e+28>>2];l=z[e+16>>2];m=z[e+36>>2];n=z[e+24>>2];o=z[e>>2];p=z[e+12>>2];q=z[e+4>>2];f=r+B(b?a:c,12)|0;g=z[f>>2];h=z[f+4>>2];i=z[f+8>>2];z[d+20>>2]=C(C(C(g*z[e+8>>2])+C(h*z[e+20>>2]))+C(i*z[e+32>>2]))+z[e+44>>2];z[d+16>>2]=j+C(C(C(g*q)+C(h*l))+C(i*k));z[d+12>>2]=m+C(C(C(g*o)+C(h*p))+C(i*n));j=z[e+40>>2];k=z[e+28>>2];l=z[e+16>>2];m=z[e+36>>2];n=z[e+24>>2];o=z[e>>2];p=z[e+12>>2];q=z[e+4>>2];a=r+B(b?c:a,12)|0;g=z[a>>2];h=z[a+4>>2];i=z[a+8>>2];z[d+32>>2]=C(C(C(g*z[e+8>>2])+C(h*z[e+20>>2]))+C(i*z[e+32>>2]))+z[e+44>>2];z[d+28>>2]=j+C(C(C(g*q)+C(h*l))+C(i*k));z[d+24>>2]=m+C(C(C(g*o)+C(h*p))+C(i*n));xa=e+48|0}function uG(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=xa-16|0;xa=e;g=v[b- -64>>2];d=-2147483648;c=-2147483648;f=v[b+60>>2];a:{if(!f){break a}h=v[a+28>>2];if(!h){break a}i=v[a+24>>2];c=0;while(1){if((f|0)==v[(c<<2)+i>>2]){break a}c=c+1|0;if((h|0)!=(c|0)){continue}break}c=-2147483648}v[e>>2]=c;b:{if(!g){break b}f=v[a+28>>2];if(!f){break b}h=v[a+24>>2];c=0;while(1){if((g|0)==v[h+(c<<2)>>2]){d=c;break b}c=c+1|0;if((f|0)!=(c|0)){continue}break}}v[e+8>>2]=b;v[e+4>>2]=d;b=v[a+56>>2];c:{if(b>>>0>=(v[a+60>>2]&2147483647)>>>0){b=0;c=v[a+60>>2];g=c&2147483647?c<<1:1;d:{if(!g){break d}c=B(g,12);if(!c){break d}b=v[37696];d=b+12|0;b=(k=d,l=c,m=Ba[v[v[b>>2]+20>>2]](b)|0?28619:63804,n=16608,o=553,j=v[v[d>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}c=v[a+56>>2];if((c|0)>0){f=B(c,12)+b|0;d=v[a+52>>2];c=b;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}c=v[a+56>>2]}d=v[e+4>>2];c=B(c,12)+b|0;v[c>>2]=v[e>>2];v[c+4>>2]=d;v[c+8>>2]=v[e+8>>2];e:{if(v[a+60>>2]<0){break e}c=v[a+52>>2];if(!c){break e}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+60>>2]=g;v[a+52>>2]=b;break c}c=v[e+4>>2];b=v[a+52>>2]+B(b,12)|0;v[b>>2]=v[e>>2];v[b+4>>2]=c;v[b+8>>2]=v[e+8>>2]}v[a+56>>2]=v[a+56>>2]+1;xa=e+16|0}function EZ(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0;f=xa-48|0;xa=f;if(w$(v[a+2252>>2],c,d,e)){h=v[a+2236>>2];a:{if(w[a+2244|0]){z[f>>2]=z[c>>2];z[f+4>>2]=z[c+4>>2];z[f+8>>2]=z[c+8>>2];z[f+12>>2]=z[d>>2];z[f+16>>2]=z[d+4>>2];z[f+20>>2]=z[d+8>>2];z[f+24>>2]=z[e>>2];z[f+28>>2]=z[e+4>>2];c=2;i=z[e+8>>2];break a}l=z[h+28>>2];m=z[h+16>>2];n=z[h+32>>2];o=z[h+20>>2];r=w[h+72|0];p=z[h+4>>2];q=z[h+8>>2];i=z[c>>2];j=z[c+4>>2];k=z[c+8>>2];z[f>>2]=C(C(i*z[h>>2])+C(j*z[h+12>>2]))+C(k*z[h+24>>2]);z[f+8>>2]=C(C(i*q)+C(j*o))+C(k*n);z[f+4>>2]=C(C(i*p)+C(j*m))+C(k*l);l=z[h+28>>2];m=z[h+16>>2];n=z[h+24>>2];o=z[h>>2];p=z[h+12>>2];q=z[h+4>>2];c=(r?24:12)+f|0;i=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];z[c+8>>2]=C(C(i*z[h+8>>2])+C(j*z[h+20>>2]))+C(k*z[h+32>>2]);z[c+4>>2]=C(C(i*q)+C(j*m))+C(k*l);z[c>>2]=C(C(i*o)+C(j*p))+C(k*n);l=z[h+32>>2];m=z[h+20>>2];n=z[h+8>>2];o=z[h+24>>2];p=z[h>>2];q=z[h+12>>2];c=r?1:2;d=B(c,12)+f|0;i=z[e>>2];j=z[e+4>>2];k=z[e+8>>2];z[d+4>>2]=C(C(i*z[h+4>>2])+C(j*z[h+16>>2]))+C(k*z[h+28>>2]);z[d>>2]=C(C(i*p)+C(j*q))+C(k*o);i=C(C(C(i*n)+C(j*m))+C(k*l))}z[(B(c,12)+f|0)+8>>2]=i;c=a+8|0;b=v[b+8>>2];a=v[a+2240>>2];if(a){a=w[a+b|0]}else{a=56}FZ(c,f,b,a,g)}xa=f+48|0;return 1} +function wG(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=v[a+28>>2];a:{if(!e){break a}d=v[a+24>>2];while(1){if(v[d+(c<<2)>>2]==(b|0)){g=c;break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}}tH(b,0,C(0),1,0);b=g+1|0;h=v[a+16>>2];if(b>>>0>>0){c=g;while(1){d=v[a+12>>2];e=d+(c<<5)|0;f=d+(b<<5)|0;d=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=d;d=v[f+28>>2];v[e+24>>2]=v[f+24>>2];v[e+28>>2]=d;d=v[f+20>>2];v[e+16>>2]=v[f+16>>2];v[e+20>>2]=d;d=v[f+12>>2];v[e+8>>2]=v[f+8>>2];v[e+12>>2]=d;d=v[a+24>>2];c=c<<2;f=d+c|0;e=d;d=b<<2;v[f>>2]=v[e+d>>2];e=c;c=v[a+36>>2];v[e+c>>2]=v[c+d>>2];c=b;b=c+1|0;h=v[a+16>>2];if(b>>>0>>0){continue}break}}v[a+64>>2]=0;if(h){b=g&31;if((g&63)>>>0>=32){c=1<>>32-b;b=d}k=b-1|0;m=(k|b)^-1;l=c-!b|0;n=(c|l)^-1;p=v[a+12>>2];b=0;while(1){c=p+(b<<5)|0;i=v[c+8>>2];d=v[c+12>>2];e=v[c+24>>2];if(!((e|0)==-1|e>>>0<=g>>>0)){e=d&l;f=d&n;d=i&m;i=i&k|((f&1)<<31|d>>>1);v[c+8>>2]=i;d=f>>>1|e;v[c+12>>2]=d}o=v[c+4>>2];f=n&o;e=f>>>1|0;q=(f&1)<<31;f=v[c>>2];v[c>>2]=q|(m&f)>>>1|f&k;v[c+4>>2]=l&o|e;c=Uaa(d)+Uaa(i)|0;j=c>>>0>j>>>0?c:j;b=b+1|0;if((h|0)!=(b|0)){continue}break}v[a+64>>2]=j}v[a+16>>2]=h-1;v[a+28>>2]=v[a+28>>2]-1;v[a+40>>2]=v[a+40>>2]-1;a=v[a>>2];v[a+96>>2]=j;Ba[v[v[a>>2]+20>>2]](a)}function Sn(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=v[37389];f=xa-16|0;xa=f;a=v[37696];c=a+12|0;a=(l=c,m=44,n=Ba[v[v[a>>2]+20>>2]](a)|0?41893:63804,o=5452,p=668,k=v[v[c>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0);v[a+12>>2]=1;v[a+4>>2]=196625;v[a+20>>2]=0;v[a+24>>2]=0;v[a+16>>2]=i;v[a+8>>2]=141960;v[a>>2]=141904;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;c=0;e=xa-16|0;xa=e;j=rX(66,86,72,83,e+12|0,e+11|0,b);a:{if(!j){break a}mX(a+20|0,2,w[e+11|0],b);d=v[a+20>>2];h=d<<2;if(h){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,h,24422,11302,82)|0;d=v[a+20>>2]}v[a+32>>2]=c;mX(c,d,w[e+11|0],b);c=v[a+20>>2];d=B(c,24)+24|0;if(d){c=v[37696];g=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d,24422,11302,86)|0;c=v[a+20>>2]}v[a+28>>2]=g;mX(g,B(c,6),w[e+11|0],b);g=0;c=0;d=v[a+24>>2];h=B(d,28);if(h){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,h,24422,11302,90)|0;d=v[a+24>>2]}v[a+40>>2]=c;if(!d){break a}while(1){c=B(g,28);mX((c+v[a+40>>2]|0)+24|0,1,w[e+11|0],b);mX(c+v[a+40>>2]|0,6,w[e+11|0],b);g=g+1|0;if(g>>>0>2]){continue}break}}xa=e+16|0;b:{if(!j){b=v[a+12>>2]-1|0;v[a+12>>2]=b;if(b){a=0;break b}Ba[v[v[a+8>>2]+8>>2]](a+8|0);a=0;break b}v[f+8>>2]=a;b=rh(i+128|0,f+8|0,f+15|0);if(!w[f+15|0]){v[b>>2]=v[f+8>>2]}}xa=f+16|0;return a|0}function uh(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);t=z[a+20>>2];s=z[a+24>>2];u=z[c+20>>2];v=z[b+20>>2];w=z[c+24>>2];x=z[b+24>>2];y=z[a+16>>2];A=z[c+16>>2];B=z[b+16>>2];h=z[b+12>>2];e=z[c+12>>2];i=z[c+8>>2];f=z[b+8>>2];j=z[c>>2];m=z[b>>2];n=z[b+4>>2];g=z[c+4>>2];k=C(C(h*e)+C(C(i*f)+C(C(j*m)+C(n*g))));o=z[a+12>>2];p=z[a+8>>2];l=C(C(C(C(m*g)-C(j*n))+C(f*e))-C(h*i));q=z[a>>2];r=C(C(C(C(n*i)-C(g*f))+C(m*e))-C(h*j));f=C(C(C(C(f*j)-C(i*m))+C(n*e))-C(h*g));h=z[a+4>>2];z[d+12>>2]=C(k*o)-C(C(p*l)+C(C(q*r)+C(f*h)));z[d+8>>2]=C(k*p)+C(C(C(q*f)-C(r*h))+C(l*o));z[d+4>>2]=C(k*h)+C(C(C(p*r)-C(l*q))+C(f*o));z[d>>2]=C(k*q)+C(C(C(h*l)-C(f*p))+C(r*o));D=s;f=C(x-w);m=C(B-A);n=C(v-u);r=C(C(i*f)+C(C(j*m)+C(g*n)));s=C(C(e*e)+C(-.5));k=C(C(i*r)+C(C(e*C(C(m*g)-C(j*n)))+C(f*s)));k=C(k+k);l=C(C(j*r)+C(C(e*C(C(n*i)-C(g*f)))+C(m*s)));l=C(l+l);e=C(C(g*r)+C(C(e*C(C(f*j)-C(i*m)))+C(n*s)));e=C(e+e);i=C(C(p*k)+C(C(q*l)+C(h*e)));j=C(C(o*o)+C(-.5));g=C(C(p*i)+C(C(o*C(C(q*e)-C(l*h)))+C(k*j)));z[d+24>>2]=D+C(g+g);g=C(C(h*i)+C(C(o*C(C(p*l)-C(k*q)))+C(e*j)));z[d+20>>2]=t+C(g+g);e=C(C(q*i)+C(C(o*C(C(h*k)-C(e*p)))+C(l*j)));z[d+16>>2]=y+C(e+e)}function P_(a,b,c,d,e){var f=0,g=0,h=C(0),i=C(0);f=xa+-64|0;xa=f;v[f+56>>2]=v[25363];g=v[25362];v[f+48>>2]=v[25361];v[f+52>>2]=g;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=0;v[a+4>>2]=0;h=C(34028234663852886e22);if(v[c>>2]==-1){zW(f+32|0,b,b+16|0,b+32|0,d,e,a);h=z[f+32>>2]}a:{if(v[c+4>>2]!=-1){break a}v[f+56>>2]=3;v[f+48>>2]=0;v[f+52>>2]=2;v[f+28>>2]=3;zW(f,b,b+32|0,b+48|0,f+48|0,f+28|0,f+32|0);i=z[f>>2];if(!(i>2];v[a>>2]=v[f+32>>2];v[a+4>>2]=g;g=v[f+44>>2];v[a+8>>2]=v[f+40>>2];v[a+12>>2]=g;v[d>>2]=v[f+48>>2];v[d+4>>2]=v[f+52>>2];v[d+8>>2]=v[f+56>>2];v[e>>2]=v[f+28>>2];h=i}b:{if(v[c+8>>2]!=-1){break b}v[f+56>>2]=1;v[f+48>>2]=0;v[f+52>>2]=3;v[f+28>>2]=3;zW(f,b,b+48|0,b+16|0,f+48|0,f+28|0,f+32|0);i=z[f>>2];if(!(i>2];v[a>>2]=v[f+32>>2];v[a+4>>2]=g;g=v[f+44>>2];v[a+8>>2]=v[f+40>>2];v[a+12>>2]=g;v[d>>2]=v[f+48>>2];v[d+4>>2]=v[f+52>>2];v[d+8>>2]=v[f+56>>2];v[e>>2]=v[f+28>>2];h=i}c:{if(v[c+12>>2]!=-1){break c}v[f+56>>2]=2;v[f+48>>2]=1;v[f+52>>2]=3;v[f+28>>2]=3;zW(f,b+16|0,b+48|0,b+32|0,f+48|0,f+28|0,f+32|0);if(!(z[f>>2]>2];v[a>>2]=v[f+32>>2];v[a+4>>2]=b;b=v[f+44>>2];v[a+8>>2]=v[f+40>>2];v[a+12>>2]=b;v[d>>2]=v[f+48>>2];v[d+4>>2]=v[f+52>>2];v[d+8>>2]=v[f+56>>2];v[e>>2]=v[f+28>>2]}xa=f- -64|0}function Tx(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=xa+-64|0;xa=c;a:{if(w[a+488|0]){b9(v[37696],8,12859,515,76983,0);break a}d=a+112|0;f=v[a+448>>2];e=v[b+52>>2];v[c+56>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;g=Cx(e,f,c+16|0);v[c+40>>2]=v[b+12>>2];v[c+44>>2]=0;b=v[b+24>>2];v[c+32>>2]=0;v[c+48>>2]=b;b:{if(t[v[a+476>>2]]&1){v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;a=c+16|0;wx(d,a);tx(d,a);sx(d,c,a);Ix(d,a);Kx(d,a);Jx(d,a);break b}v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;a=c+16|0;wx(d,a);tx(d,a);sx(d,c,a);Ix(d,a);Kx(d,a);Mx(d,a);Nx(d,a)}a=v[e+16>>2];if(!(a>>>0<=g>>>0&a+v[e+20>>2]>>>0>g>>>0)){if(!g){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,g);break a}j=v[e+4>>2];b=0;h=v[e+8>>2];f=h;while(1){i=b;b=b+1|0;d=f;f=d-1|0;a=(f<<2)+j|0;if(y[a>>2]>>0){continue}break}c:{if(d>>>0>=h>>>0){break c}f=i&3;if(f){b=0;while(1){v[a>>2]=v[v[e+4>>2]+(d<<2)>>2];d=d+1|0;a=a+4|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}if(i-1>>>0<3){break c}while(1){b=d<<2;v[a>>2]=v[b+v[e+4>>2]>>2];v[a+4>>2]=v[(b+v[e+4>>2]|0)+4>>2];v[a+8>>2]=v[(b+v[e+4>>2]|0)+8>>2];v[a+12>>2]=v[(b+v[e+4>>2]|0)+12>>2];a=a+16|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}v[e+8>>2]=h-1}xa=c- -64|0}function kW(a,b){var c=0,d=0,e=0,f=C(0),g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=0,r=0,s=0;h=v[a+148>>2];q=v[h+20>>2];r=v[h+16>>2];c=xa-48|0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;d=v[b>>2];k=z[b>>2];g=v[b+4>>2];l=z[b+4>>2];e=v[b+8>>2];m=z[b+8>>2];z[c+8>>2]=m;z[c+4>>2]=l;z[c>>2]=k;b=e&2147483647;e=x[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=z[i>>2];i=B(b<<1|v[i>>2]>>>31,e);j=C(C(e-1>>>0)*C(.5));n=C(C(1)/C(D(f)));f=C(C(j*C(C(z[(d<<2)+c>>2]*n)+C(1)))+C(.5));b:{if(f=C(0)){b=~~f>>>0;break b}b=0}d=B(e,b+i|0);f=C(C(j*C(C(n*z[(g<<2)+c>>2])+C(1)))+C(.5));c:{if(f=C(0)){b=~~f>>>0;break c}b=0}g=v[a+152>>2];a=w[v[h+4>>2]+(b+d|0)|0];b=g+B(a,12)|0;f=C(C(z[b+8>>2]*m)+C(C(z[b>>2]*k)+C(l*z[b+4>>2])));while(1){h=a;a=(h<<2)+r|0;i=x[a>>1];if(i){s=x[a+2>>1];b=0;a=h;while(1){d=w[(b+s|0)+q|0];e=g+B(d,12)|0;j=C(C(z[e+8>>2]*m)+C(C(z[e>>2]*k)+C(l*z[e+4>>2])));d:{if(!(j>f)){break d}e=(c+16|0)+(d>>>3&28)|0;o=v[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 UB(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0),n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0;q=v[a+52>>2];if(q){k=v[a+60>>2];c=k+1|0;if(c){r=v[a+8>>2];w=v[a>>2];while(1){s=k;t=(k<<2)+q|0;u=v[t>>2];if(u){o=c<<5;p=-2147483648;k=31;while(1){o=o-1|0;if(p&u){l=B(o,28)+r|0;c=v[l+24>>2];g=c>>>1|0;a:{if(c&1){g=g&15;if(!g){i=C(0x382c5fc0000000);e=C(-0x382c5fc0000000);h=C(-0x382c5fc0000000);m=C(-0x382c5fc0000000);f=C(0x382c5fc0000000);j=C(0x382c5fc0000000);break a}n=(c>>>3&536870908)+w|0;c=B(v[n>>2],24)+b|0;e=z[c+12>>2];j=z[c+8>>2];f=z[c+4>>2];i=z[c>>2];m=z[c+20>>2];h=z[c+16>>2];if((g|0)==1){break a}c=n+4|0;n=n+(g<<2)|0;while(1){g=B(v[c>>2],24)+b|0;d=z[g+12>>2];e=e>d?e:d;d=z[g+8>>2];j=d>j?j:d;d=z[g+4>>2];f=d>f?f:d;d=z[g>>2];i=d>i?i:d;d=z[g+20>>2];m=d>2];h=d>2];e=z[c+28>>2];i=e>i?i:e;e=z[c+20>>2];h=z[c+48>>2];m=e>h?e:h;e=z[c+16>>2];h=z[c+44>>2];h=e>h?e:h;e=z[c+12>>2];f=z[c+40>>2];e=e>f?e:f;f=z[c+8>>2];j=z[c+36>>2];j=f>2];d=z[c+32>>2];f=d>f?f:d}z[l+12>>2]=e;z[l+8>>2]=j;z[l+4>>2]=f;z[l>>2]=i;z[l+20>>2]=m;z[l+16>>2]=h}c=k;k=c-1|0;p=p>>>1|0;if(c){continue}break}v[t>>2]=0}k=s-1|0;c=s;if(c){continue}break}}v[a+60>>2]=0}}function mx(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=v[a+660>>2];if(c>>>0>=(v[a+664>>2]&2147483647)>>>0){c=v[a+664>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=g<<5;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?45645:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+660>>2];if((c|0)>0){h=(c<<5)+e|0;d=v[a+656>>2];c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=f;f=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=f;f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;d=d+32|0;c=c+32|0;if(h>>>0>c>>>0){continue}break}c=v[a+660>>2]}d=v[b+4>>2];c=(c<<5)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;b:{if(v[a+664>>2]<0){break b}b=v[a+656>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+664>>2]=g;v[a+656>>2]=e;v[a+660>>2]=v[a+660>>2]+1;return 1}e=v[a+656>>2]+(c<<5)|0;c=v[b+4>>2];v[e>>2]=v[b>>2];v[e+4>>2]=c;c=v[b+28>>2];v[e+24>>2]=v[b+24>>2];v[e+28>>2]=c;c=v[b+20>>2];v[e+16>>2]=v[b+16>>2];v[e+20>>2]=c;c=v[b+12>>2];v[e+8>>2]=v[b+8>>2];v[e+12>>2]=c;v[a+660>>2]=v[a+660>>2]+1;return 1}function wQ(a){a=a|0;var b=C(0),c=0,d=0,e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),y=C(0),A=C(0);r=v[a+32>>2];if(r){l=z[a+36>>2];a=v[a+28>>2];while(1){s=C(0);e=xa-16|0;xa=e;d=v[v[a>>2]>>2];h=v[d+44>>2];c=x[d+148>>1];a:{if(c&4){u[d+148>>1]=c&63999;d=v[d+44>>2];b=z[d+16>>2];c=v[h+176>>2];c=w[c+31|0]==1?c:0;f=z[c+4>>2];j=z[c+8>>2];k=z[d+28>>2];i=z[c+12>>2];m=z[d+24>>2];n=z[c>>2];o=z[d+20>>2];g=C(C(b*f)+C(C(C(j*k)-C(i*m))-C(n*o)));p=C(C(m*n)+C(C(C(f*k)-C(i*o))-C(j*b)));q=C(C(o*j)+C(C(C(n*k)-C(i*b))-C(f*m)));t=C(z[c+16>>2]-z[d+32>>2]);y=C(z[c+24>>2]-z[d+40>>2]);A=C(z[c+20>>2]-z[d+36>>2]);f=C(C(j*m)+C(C(f*o)+C(C(i*k)+C(n*b))));if(f>2]=n;z[h+84>>2]=o;z[h+80>>2]=m;z[h+104>>2]=C(k*b)*l;z[h+100>>2]=C(s*b)*l;z[h+96>>2]=C(j*b)*l;break a}if(c&2048){break a}v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;CG(h,e);v[e+8>>2]=0;v[e>>2]=0;v[e+4>>2]=0;DG(h,e)}xa=e+16|0;a=a+4|0;r=r-1|0;if(r){continue}break}}}function th(a,b,c){var d=C(0),e=0,f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),t=C(0),u=C(0);e=xa-32|0;xa=e;g=w[b+4|0]&4?v[b+8>>2]:b+48|0;q=v[c+4>>2];a:{if((q&251658240)==83886080){b=q&64?v[c+8>>2]+96|0:c+32|0;s=z[b+16>>2];t=z[b+20>>2];u=z[b+24>>2];m=z[g+24>>2];n=z[g+20>>2];o=z[g+16>>2];d=z[b+12>>2];h=z[g+12>>2];i=z[b+8>>2];j=z[g+8>>2];k=z[b>>2];f=z[g>>2];l=z[b+4>>2];p=z[g+4>>2];z[a+12>>2]=C(d*h)-C(C(i*j)+C(C(k*f)+C(l*p)));z[a+8>>2]=C(i*h)+C(C(C(k*p)-C(f*l))+C(d*j));z[a+4>>2]=C(l*h)+C(C(d*p)+C(C(i*f)-C(j*k)));z[a>>2]=C(k*h)+C(C(d*f)+C(C(l*j)-C(p*i)));h=C(C(d*d)+C(-.5));j=C(C(i*m)+C(C(k*o)+C(l*n)));f=C(C(C(m*h)+C(d*C(C(k*n)-C(o*l))))+C(i*j));z[a+24>>2]=u+C(f+f);f=C(C(l*j)+C(C(n*h)+C(d*C(C(i*o)-C(m*k)))));z[a+20>>2]=t+C(f+f);d=C(C(k*j)+C(C(o*h)+C(d*C(C(l*m)-C(n*i)))));z[a+16>>2]=s+C(d+d);break a}b=v[c+8>>2];r=v[c+268>>2];b:{c:{if((w[(r&16384?b+268|0:c+60|0)|0]&3)!=3){break c}if(r&32768){z[e>>2]=z[b+192>>2];z[e+4>>2]=z[b+196>>2];z[e+8>>2]=z[b+200>>2];z[e+12>>2]=z[b+204>>2];z[e+16>>2]=z[b+208>>2];z[e+20>>2]=z[b+212>>2];z[e+24>>2]=z[b+216>>2];b=e;break b}if(q>>>0>3221225471){break c}b=e;if(ZG(c+16|0,b)){break b}}b=c+208|0}uh(b,g,v[c+268>>2]&1024?v[c+8>>2]+144|0:c- -64|0,a)}xa=e+32|0}function HG(a,b){var c=0;c=v[a+176>>2];if(!c){c=v[b+288>>2];if(!c){GG(b);c=v[b+288>>2]}v[b+288>>2]=v[c>>2];v[b+280>>2]=v[b+280>>2]+1}t[c+24|0]=0;t[c+25|0]=0;t[c+26|0]=0;t[c+27|0]=0;t[c+28|0]=0;t[c+29|0]=0;t[c+30|0]=0;t[c+31|0]=0;t[c|0]=0;t[c+1|0]=0;t[c+2|0]=0;t[c+3|0]=0;t[c+4|0]=0;t[c+5|0]=0;t[c+6|0]=0;t[c+7|0]=0;t[c+56|0]=0;t[c+57|0]=0;t[c+58|0]=0;t[c+59|0]=0;t[c+60|0]=0;t[c+61|0]=0;t[c+62|0]=0;t[c+63|0]=0;t[c+48|0]=0;t[c+49|0]=0;t[c+50|0]=0;t[c+51|0]=0;t[c+52|0]=0;t[c+53|0]=0;t[c+54|0]=0;t[c+55|0]=0;t[c+40|0]=0;t[c+41|0]=0;t[c+42|0]=0;t[c+43|0]=0;t[c+44|0]=0;t[c+45|0]=0;t[c+46|0]=0;t[c+47|0]=0;t[c+32|0]=0;t[c+33|0]=0;t[c+34|0]=0;t[c+35|0]=0;t[c+36|0]=0;t[c+37|0]=0;t[c+38|0]=0;t[c+39|0]=0;t[c+16|0]=0;t[c+17|0]=0;t[c+18|0]=0;t[c+19|0]=0;t[c+20|0]=0;t[c+21|0]=0;t[c+22|0]=0;t[c+23|0]=0;t[c+8|0]=0;t[c+9|0]=0;t[c+10|0]=0;t[c+11|0]=0;t[c+12|0]=0;t[c+13|0]=0;t[c+14|0]=0;t[c+15|0]=0;t[c+31|0]=1;t[c+28|0]=0;z[c+48>>2]=z[a+120>>2];z[c+52>>2]=z[a+124>>2];z[c+32>>2]=z[a+128>>2];z[c+36>>2]=z[a+132>>2];z[c+40>>2]=z[a+136>>2];z[c+44>>2]=z[a+140>>2];z[c+56>>2]=z[a+112>>2];z[c+60>>2]=z[a+116>>2];v[a+136>>2]=0;v[a+140>>2]=0;v[a+128>>2]=0;v[a+132>>2]=0;v[a+120>>2]=0;v[a+124>>2]=0;v[a+112>>2]=2139095039;v[a+116>>2]=2139095039;v[a+176>>2]=c}function b4(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;f=xa-256|0;xa=f;e=w[v[a+28>>2]+38|0];if(e){d=v[37696];g=d+12|0;g=(m=g,n=B(e,3),o=Ba[v[v[d>>2]+20>>2]](d)|0?35013:63804,p=9064,q=485,l=v[v[g>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0);d=w[v[a+28>>2]+38|0]}else{d=0}v[a+16>>2]=g;e=d&255;h=J9(f,0,e);if(b){f=0;while(1){e=v[a+4>>2]+B(f,20)|0;g=w[e+18|0];if(g){d=0;while(1){j=w[v[a+8>>2]+(x[e+16>>1]+d|0)|0];k=j+h|0;i=w[k|0];if(i>>>0<=2){g=v[a+16>>2];t[k|0]=i+1;t[g+(i+B(j,3)|0)|0]=f;g=w[e+18|0]}d=d+1|0;if(d>>>0<(g&255)>>>0){continue}break}}f=f+1|0;if((f|0)!=(b|0)){continue}break}e=w[v[a+28>>2]+38|0];d=e}b=1;a:{if(!(d&255)){break a}b=e&3;g=0;b:{if(e-1>>>0<3){d=0;f=0;break b}i=e&252;d=0;f=0;e=0;while(1){f=w[(d|3)+h|0]!=3|w[(d|2)+h|0]!=3|w[(d|1)+h|0]!=3|w[d+h|0]!=3|f;d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}if(b){while(1){f=w[d+h|0]!=3|f;d=d+1|0;g=g+1|0;if((b|0)!=(g|0)){continue}break}}b=1;if(!(f&1)){break a}b=v[37696];c:{if(!c){b9(b,32,9064,514,65354,0);break c}b9(b,32,9064,516,65824,0)}d=0;b=0;if(!w[v[a+28>>2]+38|0]){break a}while(1){b=B(d,3);t[b+v[a+16>>2]|0]=255;t[(b+v[a+16>>2]|0)+1|0]=255;t[(b+v[a+16>>2]|0)+2|0]=255;d=d+1|0;if(d>>>0>2]+38|0]){continue}break}b=f^1}xa=h+256|0;return b&1}function nZ(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0;n=xa-16|0;xa=n;h=z[a+48>>2];i=z[a+60>>2];o=a- -64|0;j=z[o>>2];k=z[a+40>>2];l=z[a+52>>2];m=z[a+36>>2];e=z[c>>2];f=C(e*z[d>>2]);g=C(e*z[d+4>>2]);e=C(e*z[d+8>>2]);z[d+8>>2]=C(C(f*z[a+44>>2])+C(g*z[a+56>>2]))+C(e*z[a+68>>2]);z[d+4>>2]=C(C(f*k)+C(g*l))+C(e*j);z[d>>2]=C(C(f*m)+C(g*h))+C(e*i);h=z[a+48>>2];i=z[a+60>>2];j=z[o>>2];k=z[a+40>>2];l=z[a+52>>2];m=z[a+36>>2];e=z[c+4>>2];f=C(e*z[d+12>>2]);g=C(e*z[d+16>>2]);e=C(e*z[d+20>>2]);z[d+20>>2]=C(C(f*z[a+44>>2])+C(g*z[a+56>>2]))+C(e*z[a+68>>2]);z[d+16>>2]=C(C(f*k)+C(g*l))+C(e*j);z[d+12>>2]=C(C(f*m)+C(g*h))+C(e*i);h=z[a+48>>2];i=z[a+60>>2];j=z[o>>2];k=z[a+40>>2];l=z[a+52>>2];m=z[a+36>>2];e=z[c+8>>2];f=C(e*z[d+24>>2]);g=C(e*z[d+28>>2]);e=C(e*z[d+32>>2]);z[d+32>>2]=C(C(f*z[a+44>>2])+C(g*z[a+56>>2]))+C(e*z[a+68>>2]);z[d+28>>2]=C(C(f*k)+C(g*l))+C(e*j);z[d+24>>2]=C(C(f*m)+C(g*h))+C(e*i);h=z[a+60>>2];i=z[a+48>>2];j=z[o>>2];k=z[a+40>>2];l=z[a+52>>2];m=z[a+36>>2];e=z[b>>2];f=z[b+4>>2];g=z[b+8>>2];z[b+8>>2]=C(C(e*z[a+44>>2])+C(f*z[a+56>>2]))+C(g*z[a+68>>2]);z[b+4>>2]=C(C(e*k)+C(f*l))+C(g*j);z[b>>2]=C(C(e*m)+C(f*i))+C(g*h);r9(n,d);z[c>>2]=z[n>>2];z[c+4>>2]=z[n+4>>2];z[c+8>>2]=z[n+8>>2];xa=n+16|0}function mD(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=C(0),n=0,o=0,p=0,q=0,r=0;if((Uaa(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=C(z[a+24>>2]*C(b>>>0));a:{if(m=C(0)){j=~~m>>>0;break a}j=0}q=v[a+16>>2];c=b+j<<2;e=(0-c&12)+c|0;d=e+B(j,20)|0;if(d){c=v[37696]+12|0;d=Ba[v[v[c>>2]+8>>2]](c,d,24422,17301,372)|0}else{d=0}c=b<<2;h=J9(d,255,c);n=h+e|0;o=c+h|0;if(v[a+36>>2]){r=b-1|0;while(1){k=(i<<2)+o|0;p=B(i,20);g=p+v[a+4>>2]|0;c=v[g+4>>2];e=v[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=Saa(c^((d&255)<<24|c>>>8),d^d>>>8,9,0);e=Aa;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;v[l>>2]=v[c>>2];v[c>>2]=i;c=v[g+4>>2];d=n+p|0;v[d>>2]=v[g>>2];v[d+4>>2]=c;v[d+16>>2]=v[g+16>>2];c=v[g+12>>2];v[d+8>>2]=v[g+8>>2];v[d+12>>2]=c;i=i+1|0;if(i>>>0>2]){continue}break}}d=v[a>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+20>>2]=b;v[a+12>>2]=h;v[a>>2]=h;v[a+8>>2]=o;v[a+16>>2]=j;v[a+4>>2]=n;if(v[a+28>>2]==-1){v[a+28>>2]=q}}function q$(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0),u=0;k=z[a>>2];h=z[b>>2];i=z[a+8>>2];l=z[b+8>>2];q=xa-16|0;p=z[a+4>>2];j=C(z[b+4>>2]-p);z[q+4>>2]=j;l=C(l-i);z[q+8>>2]=l;n=C(h-k);z[q>>2]=n;r=z[c+4>>2];m=z[c>>2];h=C(C(n*r)-C(m*j));o=C(h*i);s=j;j=z[c+8>>2];i=C(C(s*j)-C(r*l));s=C(i*k);k=C(C(l*m)-C(j*n));j=C(o+C(s+C(p*k)));l=z[d+8>>2];n=z[d>>2];p=z[d+4>>2];r=C(C(C(l*h)+C(C(n*i)+C(k*p)))-j);m=z[e+8>>2];o=z[e>>2];t=z[e+4>>2];a:{if(C(r*C(C(C(m*h)+C(C(o*i)+C(k*t)))-j))>C(0)){break a}j=C(m-l);m=C(o-n);o=C(t-p);t=C(C(h*j)+C(C(i*m)+C(k*o)));if(t==C(0)){break a}s=j;j=C(r/t);z[g+8>>2]=l-C(s*j);z[g+4>>2]=p-C(o*j);z[g>>2]=n-C(m*j);k=C(D(k));i=C(D(i));h=C(D(h));b:{c:{if(!(!(k>i)|!(k>h))){e=0;u=2;break c}d=2;e=1;if(!(h>i)){break b}}d=e;e=u}d=d<<2;h=z[d+q>>2];e=e<<2;i=z[e+q>>2];h=C(C(C(i*C(z[d+g>>2]-z[a+d>>2]))-C(C(z[e+g>>2]-z[a+e>>2])*h))/C(C(i*z[c+d>>2])-C(z[c+e>>2]*h)));z[f>>2]=h;u=0;if(h>2];k=z[c+4>>2];i=C(z[g>>2]-C(h*z[c>>2]));z[g>>2]=i;k=C(z[g+4>>2]-C(h*k));z[g+4>>2]=k;h=C(z[g+8>>2]-C(h*j));z[g+8>>2]=h;u=C(C(C(z[a+8>>2]-h)*C(z[b+8>>2]-h))+C(C(C(z[a>>2]-i)*C(z[b>>2]-i))+C(C(z[a+4>>2]-k)*C(z[b+4>>2]-k))))>2];a:{if(w[g+9|0]){c=c- -64|0;c=e?d?c:g+16|0:c;x=z[c+20>>2];y=z[c+24>>2];q=z[c+16>>2];r=z[g+68>>2];s=z[g- -64>>2];l=z[g+72>>2];d=B(b,28)+a|0;m=z[c+8>>2];h=z[g+56>>2];n=z[c+4>>2];i=z[g+52>>2];j=z[c+12>>2];f=z[g+60>>2];k=z[g+48>>2];o=z[c>>2];z[d+16>>2]=C(m*h)+C(C(n*i)+C(C(j*f)+C(k*o)));z[d+12>>2]=C(k*n)+C(C(C(f*m)-C(j*h))-C(o*i));z[d+8>>2]=C(h*o)+C(C(C(f*n)-C(j*i))-C(m*k));z[d+4>>2]=C(i*m)+C(C(C(f*o)-C(j*k))-C(n*h));A=q;q=C(l*C(-2));s=C(s*C(-2));r=C(r*C(-2));t=C(C(h*q)+C(C(k*s)+C(i*r)));u=C(C(f*f)+C(-.5));l=C(C(h*t)+C(C(q*u)-C(f*C(C(k*r)-C(s*i)))));l=C(l+l);p=C(C(k*t)+C(C(s*u)-C(f*C(C(i*q)-C(r*h)))));p=C(p+p);f=C(C(i*t)+C(C(r*u)-C(f*C(C(h*s)-C(q*k)))));f=C(f+f);h=C(C(m*l)+C(C(o*p)+C(n*f)));i=C(C(j*j)+C(-.5));z[d+20>>2]=A+C(C(o*h)+C(C(p*i)+C(j*C(C(n*l)-C(f*m)))));k=C(y+C(C(m*h)+C(C(l*i)+C(j*C(C(o*f)-C(p*n))))));j=C(x+C(C(n*h)+C(C(f*i)+C(j*C(C(m*p)-C(l*o))))));break a}c=B(b,28)+a|0;z[c+4>>2]=z[g+16>>2];z[c+8>>2]=z[g+20>>2];z[c+12>>2]=z[g+24>>2];z[c+16>>2]=z[g+28>>2];z[c+20>>2]=z[g+32>>2];k=z[g+40>>2];j=z[g+36>>2]}a=B(b,28)+a|0;z[a+28>>2]=k;z[a+24>>2]=j}function sE(a,b){var c=C(0),d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=0,y=C(0),A=C(0),E=C(0),F=C(0),G=C(0),H=C(0);h=v[a+644>>2]+B(b,44)|0;G=z[h+28>>2];q=z[h+32>>2];e=z[h+20>>2];d=v[v[h>>2]+588>>2];g=z[d+8>>2];l=z[d+24>>2];c=C(C(g+l)*C(.5));r=C(c+c);k=z[h+12>>2];m=z[d>>2];n=z[d+16>>2];c=C(C(m+n)*C(.5));s=C(c+c);i=z[d+4>>2];o=z[d+20>>2];c=C(C(i+o)*C(.5));t=C(c+c);c=z[h+16>>2];u=C(C(e*r)+C(C(k*s)+C(t*c)));x=v[a+640>>2];d=x+B(b,24)|0;j=z[h+24>>2];w=C(C(j*j)+C(-.5));y=C(z[h+36>>2]+C(C(e*u)+C(C(r*w)+C(j*C(C(k*t)-C(s*c))))));l=C(C(l-g)*C(.5));g=C(k+k);p=C(C(1)-C(k*g));f=C(c+c);A=C(c*f);m=C(C(n-m)*C(.5));E=C(g*e);F=C(j*f);n=C(C(o-i)*C(.5));i=C(j*g);f=C(f*e);o=C(C(D(C(l*C(p-A))))+C(C(D(C(m*C(E-F))))+C(D(C(n*C(i+f))))));z[d+20>>2]=y+o;q=C(q+C(C(c*u)+C(C(t*w)+C(j*C(C(e*s)-C(r*k))))));H=C(D(C(l*C(f-i))));g=C(g*c);f=C(e+e);i=C(j*f);f=C(e*f);p=C(H+C(C(D(C(m*C(g+i))))+C(D(C(n*C(p-f))))));z[d+16>>2]=q+p;e=C(G+C(C(k*u)+C(C(s*w)+C(j*C(C(c*r)-C(t*e))))));c=C(C(D(C(l*C(E+F))))+C(C(D(C(m*C(C(C(1)-A)-f))))+C(D(C(n*C(g-i))))));z[d+12>>2]=e+c;z[d+8>>2]=y-o;z[d+4>>2]=q-p;z[d>>2]=e-c;v[a+704>>2]=0;iE(a,b,RC(a+4|0,v[v[a+620>>2]+(b<<2)>>2],b,x,a+700|0))}function lw(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=0,m=0,n=0,o=0,p=0;c=xa-32|0;xa=c;v[c+24>>2]=0;v[c+28>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;v[c>>2]=0;v[c+4>>2]=0;d=v[a+84>>2];a:{if(d>>>0>=(v[a+88>>2]&2147483647)>>>0){b=v[a+88>>2];h=b&2147483647?b<<1:1;b:{if(!h){break b}d=h<<5;if(!d){break b}b=v[37696];f=b+12|0;f=(l=f,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?30897:63804,o=16608,p=553,k=v[v[f>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}g=v[a+84>>2];e=(g<<5)+f|0;i=v[a+80>>2];if((g|0)>0){b=i;d=f;while(1){z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];z[d+24>>2]=z[b+24>>2];z[d+28>>2]=z[b+28>>2];b=b+32|0;d=d+32|0;if(e>>>0>d>>>0){continue}break}}z[e>>2]=z[c>>2];z[e+4>>2]=z[c+4>>2];z[e+8>>2]=z[c+8>>2];z[e+12>>2]=z[c+12>>2];z[e+16>>2]=z[c+16>>2];z[e+20>>2]=z[c+20>>2];z[e+24>>2]=z[c+24>>2];z[e+28>>2]=z[c+28>>2];if(!(!i|v[a+88>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,i);g=v[a+84>>2]}v[a+88>>2]=h;v[a+80>>2]=f;v[a+84>>2]=g+1;break a}b=v[a+80>>2]+(d<<5)|0;v[b>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];j=z[c+24>>2];v[b+28>>2]=0;z[b+24>>2]=j;v[a+84>>2]=d+1}t[a+92|0]=1;xa=c+32|0}function e2(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),L=C(0),M=0,N=0,O=C(0),P=C(0),Q=C(0),R=C(0),S=C(0),T=C(0),U=C(0);o=v[b+16>>2];a:{b:{if(!o){k=C(34028234663852886e22);p=C(1);d=0;break b}y=z[a+72>>2];A=z[a+68>>2];D=z[a+56>>2];E=z[a+52>>2];c=v[c+40>>2];F=z[c+40>>2];G=z[c+36>>2];H=z[c+24>>2];I=z[c+20>>2];s=z[d>>2];t=z[a+80>>2];J=z[a+64>>2];L=z[a+48>>2];M=v[b+28>>2];N=v[b+24>>2];O=z[c+32>>2];P=z[c+16>>2];Q=z[c+8>>2];R=z[c+4>>2];S=z[c>>2];k=C(34028234663852886e22);a=0;d=1;p=C(1);while(1){b=B(a,20)+N|0;l=z[b+8>>2];m=z[b>>2];n=z[b+4>>2];h=C(C(F*l)+C(C(O*m)+C(n*G)));i=C(C(Q*l)+C(C(S*m)+C(n*R)));j=C(C(H*l)+C(C(P*m)+C(n*I)));g=C(C(1)/C(K(C(C(h*h)+C(C(i*i)+C(j*j))))));h=C(h*g);i=C(i*g);j=C(j*g);q=C(C(y*h)+C(C(J*i)+C(A*j)));r=C(C(D*h)+C(C(L*i)+C(E*j)));c=q>2]));if(u>C(x+s)){break a}b=B(w[b+19|0],12)+M|0;if(C(s+C(t+(c?r:q)))>2])+C(C(m*z[b>>2])+C(z[b+4>>2]*n)))*g)){break a}g=C(x-u);if(g>>0>a>>>0;if((a|0)!=(o|0)){continue}break}}v[f+12>>2]=0;z[f+8>>2]=U;z[f+4>>2]=p;z[f>>2]=T;z[e>>2]=k}return(d^-1)&1}function RA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0,g=0,h=C(0),i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=0,J=0,K=0;if(b){c=0;while(1){d=(c<<5)+a|0;g=v[d>>2];k=z[g+24>>2];l=z[g+20>>2];m=z[g+16>>2];n=z[g+8>>2];o=z[g+4>>2];p=z[g>>2];f=x[d+22>>1];if(f){d=v[d+24>>2];G=d+(f<<4)|0;while(1){s=d+32|0;f=w[d+1|0];t=s+((f<<2)+12&2032)|0;j=w[d+2|0];i=(j>>>0)/(f>>>0)|0;a:{if(!j){break a}if(f>>>0<=j>>>0){H=z[d+4>>2];q=z[d+16>>2];r=z[d+8>>2];I=i>>>0>1?i:1;i=0;f=0;while(1){J=f+I|0;K=(i<<2)+s|0;while(1){e=C(H*z[K>>2]);d=(f<<6)+t|0;h=z[d+28>>2];u=z[d+8>>2];y=z[d>>2];A=z[d+4>>2];B=z[d+24>>2];D=z[d+16>>2];E=z[d+20>>2];F=z[d+12>>2];h=C(C(h*C(C(C(u*n)+C(C(y*p)+C(o*A)))+C(C(B*k)+C(C(D*m)+C(l*E)))))+C(F-C(h*z[d+48>>2])));h=e>2]=e;e=C(e-F);k=C(k+C(C(q*B)*e));l=C(l+C(C(q*E)*e));m=C(m+C(C(q*D)*e));n=C(n+C(C(r*u)*e));o=C(o+C(C(r*A)*e));p=C(p+C(C(r*y)*e));f=f+1|0;if((J|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(G>>>0>d>>>0){continue}break}}z[g+24>>2]=k;z[g+20>>2]=l;z[g+16>>2]=m;z[g+8>>2]=n;z[g+4>>2]=o;z[g>>2]=p;c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function kR(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=v[a+20>>2];h=xa-16|0;xa=h;a=v[a+28>>2];v[a+996>>2]=0;d=a+4180|0;v[d>>2]=v[d>>2]+1;v[a+4176>>2]=v[b+16>>2];v[h+12>>2]=b;d=v[a+4212>>2];a:{if(d>>>0>=(v[a+4216>>2]&2147483647)>>>0){Ls(a+4188|0,h+12|0);break a}v[v[a+4208>>2]+(d<<2)>>2]=b;v[a+4212>>2]=d+1}Ba[v[v[b>>2]+16>>2]](b);t[a+4252|0]=1;f=a+4140|0;d=a+4160|0;v[f>>2]=d;v[a+4144>>2]=1;Ba[v[v[a+4160>>2]+16>>2]](d);i=a+4136|0;v[i>>2]=v[v[f>>2]+16>>2];v[a+4104>>2]=1;g=a+4100|0;f=a+4120|0;v[g>>2]=f;Ba[v[v[a+4120>>2]+16>>2]](f);j=a+4096|0;v[j>>2]=v[v[g>>2]+16>>2];v[a+4064>>2]=1;e=a+4060|0;g=a+4080|0;v[e>>2]=g;Ba[v[v[a+4080>>2]+16>>2]](g);e=v[v[e>>2]+16>>2];v[a+4488>>2]=1;k=a+4056|0;v[k>>2]=e;c=a+4484|0;e=a+4040|0;v[c>>2]=e;Ba[v[v[a+4040>>2]+16>>2]](e);l=a+4480|0;v[l>>2]=v[v[c>>2]+16>>2];v[a+4024>>2]=1;c=a+4020|0;v[c>>2]=b;Ba[v[v[b>>2]+16>>2]](b);c=v[v[c>>2]+16>>2];v[a+4016>>2]=c;m=a+4e3|0;Ba[v[v[c>>2]+76>>2]](c,m);zK(v[a+976>>2]);c=v[v[a+976>>2]+1024>>2];Ba[v[v[c>>2]+12>>2]](c,z[a+1080>>2],w[v[a+1140>>2]+16|0],w[a+1148|0],b,m);Ks(d);b=v[i>>2];Ba[v[v[b>>2]+72>>2]](b,f);b=v[j>>2];Ba[v[v[b>>2]+72>>2]](b,g);b=v[k>>2];Ba[v[v[b>>2]+72>>2]](b,e);b=v[l>>2];Ba[v[v[b>>2]+72>>2]](b,a+4464|0);xa=h+16|0}function Hw(a,b,c){if(c?1:t[b+269|0]&1){t[a+79|0]=0;u[a+76>>1]=0;if(w[b+258|0]){v[a>>2]=1065353216;if(w[b+258|0]==1){t[a+77|0]=1}t[a+76|0]=1;t[b+252|0]=0}if(w[b+259|0]){c=w[a+76|0];v[(B(c,24)+a|0)+4>>2]=1065353216;if(w[b+259|0]==1){t[a+77|0]=w[a+77|0]+1}t[a+76|0]=c+1;t[(b+c|0)+252|0]=1}if(w[b+260|0]){c=w[a+76|0];v[(B(c,24)+a|0)+8>>2]=1065353216;if(w[b+260|0]==1){t[a+77|0]=w[a+77|0]+1}t[a+76|0]=c+1;t[(b+c|0)+252|0]=2}if(w[b+261|0]){c=w[a+76|0];v[(B(c,24)+a|0)+12>>2]=1065353216;if(w[b+261|0]==1){t[a+77|0]=w[a+77|0]+1}t[a+76|0]=c+1;t[(b+c|0)+252|0]=3}if(w[b+262|0]){c=w[a+76|0];v[(B(c,24)+a|0)+16>>2]=1065353216;if(w[b+262|0]==1){t[a+77|0]=w[a+77|0]+1}t[a+76|0]=c+1;t[(b+c|0)+252|0]=4}if(w[b+263|0]){c=w[a+76|0];v[(B(c,24)+a|0)+20>>2]=1065353216;if(w[b+263|0]==1){t[a+77|0]=w[a+77|0]+1}t[a+76|0]=c+1;t[(b+c|0)+252|0]=5}t[a+79|0]=0;a:{if(w[b+270|0]!=2|w[a+76|0]!=2){break a}if(!w[b+258|0]){t[a+76|0]=3;v[a+48>>2]=1065353216;t[b+254|0]=0;t[a+79|0]=w[a+79|0]+1}if(!w[b+259|0]){c=w[a+76|0];v[(B(c,24)+a|0)+4>>2]=1065353216;t[a+76|0]=c+1;t[(b+c|0)+252|0]=1;t[a+79|0]=w[a+79|0]+1}if(w[b+260|0]){break a}c=w[a+76|0];v[(B(c,24)+a|0)+8>>2]=1065353216;t[a+76|0]=c+1;t[(b+c|0)+252|0]=2;t[a+79|0]=w[a+79|0]+1}t[b+269|0]=w[b+269|0]&254}}function If(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=v[a>>2];d=v[a+4>>2]-f>>2;if(d>>>0>>0){f=a;a:{g=b-d|0;d=v[a+8>>2];b=v[a+4>>2];if(g>>>0<=d-b>>2>>>0){b:{if(!g){break b}a=b;d=g&7;if(d){while(1){v[a>>2]=v[c>>2];a=a+4|0;h=h+1|0;if((d|0)!=(h|0)){continue}break}}b=(g<<2)+b|0;if((g-1&1073741823)>>>0<7){break b}while(1){v[a>>2]=v[c>>2];v[a+4>>2]=v[c>>2];v[a+8>>2]=v[c>>2];v[a+12>>2]=v[c>>2];v[a+16>>2]=v[c>>2];v[a+20>>2]=v[c>>2];v[a+24>>2]=v[c>>2];v[a+28>>2]=v[c>>2];a=a+32|0;if((b|0)!=(a|0)){continue}break}}v[f+4>>2]=b;break a}c:{e=v[f>>2];i=b-e>>2;a=i+g|0;if(a>>>0<1073741824){d=d-e|0;e=d>>1;e=d>>>0<2147483644?a>>>0>>0?e:a:1073741823;if(e){if(e>>>0>=1073741824){break c}j=maa(e<<2)}d=(i<<2)+j|0;a=d;i=g&7;if(i){a=d;while(1){v[a>>2]=v[c>>2];a=a+4|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}h=d+(g<<2)|0;if((g-1&1073741823)>>>0>=7){while(1){v[a>>2]=v[c>>2];v[a+4>>2]=v[c>>2];v[a+8>>2]=v[c>>2];v[a+12>>2]=v[c>>2];v[a+16>>2]=v[c>>2];v[a+20>>2]=v[c>>2];v[a+24>>2]=v[c>>2];v[a+28>>2]=v[c>>2];a=a+32|0;if((h|0)!=(a|0)){continue}break}}a=v[f>>2];b=b-a|0;c=d-b|0;if((b|0)>0){I9(c,a,b)}v[f+8>>2]=(e<<2)+j;v[f+4>>2]=h;v[f>>2]=c;if(a){jaa(a)}break a}da();L()}Vf();L()}return}if(b>>>0>>0){v[a+4>>2]=f+(b<<2)}}function et(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0;i=xa-224|0;xa=i;l=x[f+16>>1];v[i+220>>2]=-1;j=-1;if(e){j=nu(sh(v[e+4>>2]),v[e>>2],i+220|0)}k=a+5584|0;ME(k);v[c+32>>2]=0;t[c+20|0]=0;d=x[d>>1];v[i+176>>2]=h;v[i+172>>2]=2139095039;v[i+168>>2]=g;u[i+160>>1]=d;v[i+156>>2]=c;v[i+152>>2]=b;v[i+148>>2]=a;v[i+144>>2]=126712;e=d&64;d=l&16;u[i+180>>1]=((e|d)!=0)<<6;t[i+182|0]=1;v[i+164>>2]=f;e=x[f+16>>1];v[i+216>>2]=0;t[i+212|0]=0;t[i+186|0]=0;t[i+185|0]=d>>>4;d=e>>>5&1;t[i+184|0]=d;t[i+183|0]=d;a:{b:{c:{if(!(v[c+28>>2]|(j|0)==-1)){d=IE(k,v[i+220>>2],j);t[i+186|0]=1;d=ft(i+144|0,i+16|0,d);t[i+186|0]=0;if(!d){break c}e=x[f+16>>1]}d=v[a+5656>>2];g=v[a+5620>>2];h=v[a+5584>>2];a=iV(i+16|0,v[b+12>>2],v[b+16>>2],z[b+20>>2]);v[i+216>>2]=a;d:{if(!(e&1)){break d}if(Ba[v[v[h>>2]+28>>2]](h,a,i+144|0)|0){break d}f=v[c+32>>2];a=(f|w[c+20|0])!=0;break b}e:{if(!(e&2)){break e}if(Ba[v[v[g>>2]+28>>2]](g,a,i+144|0)|0){break e}a=(w[c+20|0]|v[c+32>>2])!=0;break a}u[i+8>>1]=x[f+16>>1];b=Ba[v[v[d>>2]+28>>2]](d,a,i+144|0,i+8|0)|0;f=v[c+32>>2];a=(f|w[c+20|0])!=0;if(!b){break a}break b}f=v[c+32>>2];a=(f|w[c+20|0])!=0}if(!f){break a}if(!(Ba[v[v[c>>2]>>2]](c,v[c+24>>2],f)|0)){break a}v[c+32>>2]=0}Ba[v[v[c>>2]+4>>2]](c);xa=i+224|0;return a}function aL(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;h=xa-16|0;xa=h;k=v[a+8>>2];if(k){l=b+20|0;m=b+8|0;while(1){f=v[a+20>>2]+(j<<3)|0;g=v[f>>2];a:{if((g|0)<0){e=g&2147483647;g=v[f+4>>2]&2147483647;v[h+12>>2]=e>>>0>g>>>0?e:g;v[h+8>>2]=e>>>0>>0?e:g;e=v[b+12>>2];b:{if(e>>>0>=(v[b+16>>2]&2147483647)>>>0){bL(m,h+8|0);break b}g=v[h+12>>2];e=v[b+8>>2]+(e<<3)|0;v[e>>2]=v[h+8>>2];v[e+4>>2]=g;v[b+12>>2]=v[b+12>>2]+1}v[f>>2]=v[f>>2]&2147483647;v[f+4>>2]=v[f+4>>2]&2147483647;j=j+1|0;break a}c:{e=v[f+4>>2];if((e|0)<0){v[f+4>>2]=e&2147483647;break c}f=g>>>5|0;i=v[c+4>>2];if(!(f>>>0>>0&(v[v[c>>2]+(f<<2)>>2]>>>g&1))){n=i;i=e>>>5|0;if(n>>>0<=i>>>0|!(v[v[c>>2]+(i<<2)>>2]>>>e&1)){break c}}i=v[d+4>>2];d:{if(v[v[d>>2]+(f<<2)>>2]>>>g&1&i>>>0>f>>>0){break d}f=e>>>5|0;if(f>>>0>>0&(v[v[d>>2]+(f<<2)>>2]>>>e&1)){break d}v[h+12>>2]=e>>>0>>0?g:e;v[h+8>>2]=e>>>0>g>>>0?g:e;f=v[b+24>>2];if(f>>>0>=(v[b+28>>2]&2147483647)>>>0){bL(l,h+8|0);break d}i=v[h+12>>2];f=v[b+20>>2]+(f<<3)|0;v[f>>2]=v[h+8>>2];v[f+4>>2]=i;v[b+24>>2]=v[b+24>>2]+1}e=g&65535|e<<16;e=(e<<15^-1)+e|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;$H(a,v[a+4>>2]&(e>>>16^e),j);k=k-1|0;break a}j=j+1|0}if(j>>>0>>0){continue}break}}YH(a);xa=h+16|0}function q0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);f=xa-128|0;xa=f;g=v[a+8>>2];k=z[g+28>>2];l=z[g+16>>2];m=z[g+32>>2];n=z[g+20>>2];o=z[g+4>>2];p=z[g+8>>2];h=z[c+8>>2];q=z[g+24>>2];i=z[c>>2];r=z[g>>2];j=z[c+4>>2];s=z[g+12>>2];v[f+124>>2]=0;z[f+112>>2]=C(C(i*r)+C(j*s))+C(h*q);z[f+120>>2]=C(C(i*p)+C(j*n))+C(h*m);z[f+116>>2]=C(C(i*o)+C(j*l))+C(h*k);g=w[a+17|0];c=g?e:d;h=z[c+8>>2];i=z[c>>2];j=z[c+4>>2];v[f+108>>2]=0;z[f+104>>2]=C(C(i*p)+C(n*j))+C(m*h);z[f+100>>2]=C(C(i*o)+C(l*j))+C(k*h);z[f+96>>2]=C(C(i*r)+C(j*s))+C(q*h);c=g?d:e;h=z[c+8>>2];i=z[c>>2];j=z[c+4>>2];v[f+92>>2]=0;z[f+88>>2]=C(C(i*p)+C(n*j))+C(m*h);z[f+84>>2]=C(C(i*o)+C(l*j))+C(k*h);z[f+80>>2]=C(C(i*r)+C(j*s))+C(q*h);k=z[a+32>>2];c=v[a+28>>2];d=v[a+24>>2];v[f+12>>2]=0;z[f+8>>2]=k;v[f>>2]=d;v[f+4>>2]=c;F_(f+16|0,f,f+112|0,f+96|0,f+80|0,f- -64|0,f+48|0,f+32|0);xa=f+128|0;c=1;a:{if(!(z[f+16>>2]<=z[a+20>>2])){break a}d=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];c=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;c=1;break a}c=v[a+16>>2];if(c>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=d;c=1;break a}v[a+16>>2]=c+1;c=1}return c|0}function jt(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a+12>>2]=126968;v[a>>2]=126776;a:{b:{c:{d:{e:{b=a+116|0;switch(v[b>>2]-4|0){case 1:break c;case 2:break d;case 0:break e;default:break a}}b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:b)+32>>2];if(!b){break a}b=b+8|0;break b}b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:b)+4>>2];if(!b){break a}b=b+8|0;break b}b=v[(t[a+36|0]&1?v[a+40>>2]- -64|0:b)+36>>2];if(!b){break a}b=b+8|0}c=v[b+4>>2]-1|0;v[b+4>>2]=c;if(c){break a}Ba[v[v[b>>2]+8>>2]](b)}if(w[a+36|0]&2){b=x[v[a+40>>2]+124>>1]}else{c=v[a+116>>2];b=1;f:{if(c-7>>>0<4294967294){break f}b=x[a+168>>1];if((c|0)==5){break f}b=x[a+148>>1]}}e=b&65535;if(e){f=a+48|0;b=0;while(1){d=v[37393];g:{if(w[a+36|0]&2){c=v[a+40>>2];c=x[c+124>>1]==1?c+120|0:v[v[a+32>>2]+4856>>2]+(v[c+120>>2]<<1)|0;break g}c=GR(f)}c=v[v[d+40>>2]+(x[c+(b<<1)>>1]<<2)>>2];d=v[c+16>>2]-1|0;v[c+16>>2]=d;if(!d){Ba[v[v[c+12>>2]+8>>2]](c+12|0)}b=b+1|0;if((e|0)!=(b|0)){continue}break}}h:{i:{switch(v[a+116>>2]-5|0){case 0:if(!w[a+113|0]){break h}b=v[a+164>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}u[a+168>>1]=0;break h;case 1:break i;default:break h}}if(!w[a+113|0]){break h}b=v[a+144>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}u[a+148>>1]=0}return a|0}function av(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);t=z[a+4>>2];A=C(t+z[b+4>>2]);s=C(A+z[e>>2]);B=z[d+24>>2];x=C(z[c+24>>2]-B);i=z[d>>2];j=C(i+i);r=z[d+8>>2];p=z[d+4>>2];k=z[d+12>>2];m=C(k+k);q=z[b+8>>2];u=C(C(C(j*r)-C(p*m))*q);n=C(x-u);o=C(C(-u)-u);D=z[d+16>>2];y=C(z[c+16>>2]-D);w=C(C(C(i*j)+C(C(k*m)+C(-1)))*q);i=C(y-w);k=C(C(-w)-w);q=C(q*C(C(r*m)+C(j*p)));m=C(C(-q)-q);E=z[d+20>>2];r=C(z[c+20>>2]-E);j=C(r-q);p=C(C(n*o)+C(C(i*k)+C(m*j)));a:{if(p<=C(0)){break a}l=C(C(o*o)+C(C(k*k)+C(m*m)));if(l<=p){n=C(n-o);j=C(j-m);i=C(i-k);l=C(1);break a}l=C(p/l);n=C(n-C(o*l));j=C(j-C(m*l));i=C(i-C(k*l))}p=C(s*s);s=C(C(n*n)+C(C(i*i)+C(j*j)));b=p<=s;b:{if(b){break b}n=C(0);i=C(1);j=C(0);o=C(x-C(u+C(o*l)));k=C(y-C(w+C(k*l)));l=C(r-C(q+C(m*l)));m=C(C(o*o)+C(C(k*k)+C(l*l)));if(m!=C(0)){i=C(C(1)/C(K(m)));j=C(o*i);n=C(l*i);i=C(k*i)}a=v[g+4096>>2];if(a>>>0>63){break b}v[g+4096>>2]=a+1;a=(a<<6)+g|0;z[a+16>>2]=C(D+y)-C(t*i);z[a+8>>2]=j;z[a+4>>2]=n;z[a>>2]=i;v[a+52>>2]=-1;z[a+12>>2]=C(K(s))-A;z[a+24>>2]=C(B+x)-C(t*j);z[a+20>>2]=C(E+r)-C(t*n)}return!b|0}function V4(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,z=0,A=0,B=0,C=0;m=v[a+36>>2];a:{if(m){break a}if(b){g=v[37696];h=g+12|0;j=(s=h,z=b,A=Ba[v[v[g>>2]+20>>2]](g)|0?35013:63804,B=13134,C=2318,r=v[v[h>>2]+8>>2],Ba[r](s|0,z|0,A|0,B|0,C|0)|0)}g=b+b|0;b=b>>>0>g>>>0?-1:g;if(b){g=v[37696];h=g+12|0;k=(C=h,B=b,A=Ba[v[v[g>>2]+20>>2]](g)|0?27439:63804,z=13134,s=2319,r=v[v[h>>2]+8>>2],Ba[r](C|0,B|0,A|0,z|0,s|0)|0);g=v[37696]+12|0;h=b;b=v[37696];n=(s=g,z=h,A=Ba[v[v[b>>2]+20>>2]](b)|0?27439:63804,B=13134,C=2320,r=v[v[g>>2]+8>>2],Ba[r](s|0,z|0,A|0,B|0,C|0)|0)}v[d>>2]=j;v[f>>2]=k;v[e>>2]=n;b=v[a+32>>2];if(!v[b+100>>2]){break a}h=0;g=0;while(1){f=g;o=v[v[b+88>>2]+(x[v[a+44>>2]+(l<<1)>>1]<<2)>>2];i=v[o>>2];b=i;while(1){e=v[b+40>>2];b:{if((e|0)==-1){e=h&65535;u[(e<<2)+k>>1]=w[c+f|0];p=e<<1;q=p|1;d=f+1|0;u[(q<<1)+k>>1]=w[(v[b+28>>2]==(i|0)?g:d)+c|0];t[j+p|0]=w[v[b+36>>2]+60|0];t[j+q|0]=w[v[v[v[b+28>>2]+32>>2]+36>>2]+60|0];v[b+40>>2]=e;v[v[v[v[b+28>>2]+32>>2]+24>>2]+40>>2]=e;e=h;h=e+1|0;break b}d=f+1|0}u[(f<<1)+n>>1]=e;f=d;b=v[b+28>>2];i=v[o>>2];if((b|0)!=(i|0)){continue}break}g=f;l=l+1|0;b=v[a+32>>2];if(l>>>0>2]){continue}break}}return!m|0}function O8(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=0,x=C(0),y=C(0),A=0;i=xa+-64|0;xa=i;E5(i+32|0,i,b,c,d);if(e&1){Ba[v[v[a>>2]+8>>2]](a,i+32|0,i)}if(!(!(e&2)|!(w[b+112|0]&2))){m=z[i+44>>2];f=z[i+12>>2];n=z[i+40>>2];g=z[i+8>>2];o=z[i+32>>2];h=z[i>>2];p=z[i+36>>2];j=z[i+4>>2];if(C(C(m*f)+C(C(n*g)+C(C(o*h)+C(p*j))))>2]=f;g=C(-g);z[i+8>>2]=g;j=C(-j);z[i+4>>2]=j;h=C(-h);z[i>>2]=h}k=C(C(n*g)+C(C(p*j)+C(C(m*f)+C(o*h))));q=C(C(g*o)+C(C(C(m*j)-C(f*p))-C(n*h)));l=C(C(h*p)+C(C(C(m*g)-C(f*n))-C(o*j)));g=C(C(j*n)+C(C(C(m*h)-C(f*o))-C(p*g)));a:{if(g==C(0)){h=C(1);f=C(0);break a}f=C(C(1)/C(K(C(C(k*k)+C(C(C(g*g)+C(0))+C(0))))));h=C(k*f);r=C(g*f);f=C(f*C(0))}j=C(C(l*f)+C(C(q*f)+C(C(k*h)+C(g*r))));k=C(k*C(-f));f=C(f*g);g=C(C(r*q)+C(C(k+C(l*h))-f));h=C(f+C(C(k+C(q*h))-C(l*r)));f=C(0);f=z[b+92>>2]>C(0)|z[b+88>>2]>C(0)?f:z[b+96>>2];l=h;h=C(j+C(1));j=C9(l,h);h=C9(g,h);g=z[b+104>>2];l=W9(C(g*C(.25)));k=z[b+100>>2];j=C(C(f+C(D(C(j*C(4)))))/k);f=C(C(f+C(D(C(h*C(4)))))/g);t=a,u=i+32|0,x=l,y=W9(C(k*C(.25))),A=!(C(C(j*j)+C(f*f))<=C(1)),s=v[v[a>>2]+20>>2],Ba[s](t|0,u|0,C(x),C(y),A|0)}xa=i- -64|0}function zT(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=C(0);g=xa-160|0;xa=g;v[g+144>>2]=3;z[g+148>>2]=z[b+40>>2];z[g+152>>2]=z[b+44>>2];z[g+156>>2]=z[b+48>>2];z[g+128>>2]=A[d>>3]-A[c+12>>3];z[g+132>>2]=A[d+8>>3]-A[c+20>>3];z[g+136>>2]=A[d+16>>3]-A[c+28>>3];z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];b=0;v[g+104>>2]=0;v[g+96>>2]=2;z[g+100>>2]=z[c+60>>2];LU(g+16|0,c+36|0,c+48|0,g+104|0);d=v[g+40>>2];v[g+84>>2]=v[g+36>>2];v[g+88>>2]=d;z[g+64>>2]=z[g+16>>2];d=v[g+24>>2];v[g+68>>2]=v[g+20>>2];v[g+72>>2]=d;d=v[g+32>>2];v[g+76>>2]=v[g+28>>2];v[g+80>>2]=d;if(z[g+104>>2]==C(0)){v[g+104>>2]=872415232}v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!jV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];b=1}xa=g+160|0;return b|0}function $_(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=xa-224|0;xa=i;j=__(a,b,0,c,i+96|0);a:{if(!j){a=0;t[d|0]=0;break a}c=i;while(1){n=(i- -64|0)+(g<<2)|0;e=0;m=v[a+40>>2];h=v[a+44>>2];b=(i+96|0)+(g<<4)|0;k=v[b+12>>2];l=v[b+8>>2];b:{c:{d:{e:{f:{f=v[b+4>>2];switch(v[b>>2]+B(f,-3)|0){case 2:break d;case 1:break e;case 0:break f;default:break b}}if(h-1>>>0<=k>>>0){break b}if(l){b=f-h|0;v[c>>2]=b<<1|t[(v[a+60>>2]+(b<<2)|0)+2|0]>=0;b=1}else{b=0}e=b;if(m-1>>>0<=l>>>0){break b}h=f<<1;if(t[(v[a+60>>2]+(f<<2)|0)+2|0]<0){h=h|1;e=b+1|0;break c}e=b+1|0;break c}if(m-1>>>0<=l>>>0|h-1>>>0<=k>>>0){break b}b=1;e=f<<1;v[c>>2]=e;h=e|1;e=2;break c}if(m-1>>>0<=l>>>0){break b}if(k){v[c>>2]=(f<<1)-1;b=1}else{b=0}e=b;if(h-1>>>0<=k>>>0){break b}h=f<<1;e=b+1|0}v[(b<<2)+c>>2]=h}v[n>>2]=e;c=c+8|0;g=g+1|0;if((j|0)!=(g|0)){continue}break}g=0;t[d|0]=0;b=v[a+60>>2];c=i;a=1;while(1){e=v[c>>2];e=w[(b+(e<<1&-4)|0)+(e&1?3:2)|0]&127;g:{if(y[(i- -64|0)+(g<<2)>>2]>=2){f=v[c+4>>2];f=w[(b+(f<<1&-4)|0)+(f&1?3:2)|0]&127;if((e|0)!=127){t[d|0]=1;if((f|0)!=127){break g}break a}if((f|0)==127){break g}t[d|0]=1;break a}if((e|0)!=127){break a}}c=c+8|0;g=g+1|0;a=j>>>0>g>>>0;if((g|0)!=(j|0)){continue}break}}xa=i+224|0;return a}function qT(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=B(g,56);if(!c){break a}f=v[37696];d=f+12|0;f=(j=d,k=c,l=Ba[v[v[f>>2]+20>>2]](f)|0?42783:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=B(c,56)+f|0;d=v[a>>2];c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+52>>2];v[c+48>>2]=v[d+48>>2];v[c+52>>2]=e;e=v[d+44>>2];v[c+40>>2]=v[d+40>>2];v[c+44>>2]=e;e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+56|0;c=c+56|0;if(h>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=B(c,56)+f|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+52>>2];v[c+48>>2]=v[b+48>>2];v[c+52>>2]=d;d=v[b+44>>2];v[c+40>>2]=v[b+40>>2];v[c+44>>2]=d;d=v[b+36>>2];v[c+32>>2]=v[b+32>>2];v[c+36>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=g;v[a>>2]=f;v[a+4>>2]=v[a+4>>2]+1}function aA(a,b,c){var d=0,e=0,f=C(0),g=C(0),h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0,p=0,q=C(0),r=0;i=v[a+7684>>2];if((i|0)!=64){if(c){g=z[b+44>>2];h=v[b+60>>2];e=v[b+56>>2];d=B(i,44)+a|0;t[d+4|0]=w[b+48|0];o=1;t[d+5|0]=1;v[d>>2]=0;v[d+12>>2]=e;v[d+16>>2]=h;z[d+8>>2]=g;i=i+1|0;g=z[b+24>>2];j=z[b+20>>2];k=z[b+16>>2];a:{if((c|0)==1){l=g;m=j;n=k;break a}h=1;l=g;m=j;n=k;while(1){e=(o<<6)+b|0;f=z[e+44>>2];p=(r<<6)+b|0;b:{if(!(f!=z[p+44>>2]|z[e+56>>2]!=z[p+56>>2]|(!(C(C(z[e+8>>2]*z[p+8>>2])+C(C(z[e>>2]*z[p>>2])+C(z[e+4>>2]*z[p+4>>2])))>=C(.9990000128746033))|z[e+60>>2]!=z[p+60>>2]))){f=z[e+16>>2];k=fn?n:f;f=z[e+24>>2];g=g>f?g:f;q=z[e+20>>2];j=j>q?j:q;l=f>l?l:f;m=m>2]=n;t[d+5|0]=h;z[d+40>>2]=g;z[d+36>>2]=j;z[d+32>>2]=k;z[d+28>>2]=l;z[d+24>>2]=m;h=v[e+60>>2];r=v[e+56>>2];d=B(i,44)+a|0;t[d+4|0]=w[e+48|0];u[d+2>>1]=0;t[d+5|0]=1;u[d>>1]=o;v[d+12>>2]=r;v[d+16>>2]=h;z[d+8>>2]=f;i=i+1|0;n=z[e+16>>2];k=n;m=z[e+20>>2];j=m;l=z[e+24>>2];g=l;r=o;h=1}o=o+1|0;if((o|0)!=(c|0)){continue}break}if((h&255)==1){break a}t[d+5|0]=h}z[d+20>>2]=n;z[d+40>>2]=g;z[d+36>>2]=j;z[d+32>>2]=k;z[d+28>>2]=l;z[d+24>>2]=m}v[a+7684>>2]=i;a=1}else{a=0}return a}function KY(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0);c=B(v[v[b+8>>2]>>2],3);h=v[v[b>>2]+40>>2];i=v[h+28>>2];t=v[h+24>>2];a:{if(w[h+64|0]&2){c=i+(c<<1)|0;h=x[c+4>>1];i=x[c+2>>1];c=x[c>>1];break a}c=i+(c<<2)|0;h=v[c+8>>2];i=v[c+4>>2];c=v[c>>2]}c=t+B(c,12)|0;f=z[c>>2];b=v[b+4>>2];g=z[b>>2];d=z[c+4>>2];e=z[b+12>>2];j=z[c+8>>2];k=z[b+24>>2];F=C(C(C(f*g)+C(d*e))+C(j*k));h=t+B(h,12)|0;l=z[h>>2];i=t+B(i,12)|0;m=z[i>>2];c=w[b+72|0];u=c?l:m;n=z[h+4>>2];q=z[i+4>>2];y=c?n:q;r=z[h+8>>2];s=z[i+8>>2];A=c?r:s;G=C(F-C(C(C(g*u)+C(y*e))+C(A*k)));o=z[b+4>>2];D=z[b+16>>2];E=z[b+28>>2];p=C(C(C(f*o)+C(d*D))+C(j*E));l=c?m:l;m=c?q:n;n=c?s:r;q=C(p-C(C(C(l*o)+C(m*D))+C(n*E)));k=C(F-C(C(C(g*l)+C(m*e))+C(n*k)));e=C(p-C(C(C(u*o)+C(y*D))+C(A*E)));g=C(C(G*q)-C(k*e));r=e;s=f;f=z[b+8>>2];p=d;d=z[b+20>>2];e=z[b+32>>2];j=C(C(C(s*f)+C(p*d))+C(j*e));o=C(j-C(C(C(l*f)+C(m*d))+C(n*e)));d=C(j-C(C(C(u*f)+C(y*d))+C(A*e)));f=C(C(r*o)-C(q*d));d=C(C(d*k)-C(o*G));e=C(C(g*g)+C(C(f*f)+C(d*d)));if(e>C(0)){p=g;g=C(C(1)/C(K(e)));H=C(p*g);I=C(f*g);J=C(d*g)}z[a+8>>2]=H;z[a+4>>2]=J;z[a>>2]=I}function Zu(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=xa-16|0;xa=e;d=v[a+4>>2];h=d&16777215;a:{if(!h){break a}k=w[a+80|0];b=v[a+8>>2];if(!b){b=Qu(v[a>>2],d>>>24&15);v[a+8>>2]=b}f=a+16|0;c=v[a>>2];b:{c:{if(d&1){if(!c){break c}g=c+16|0;i=v[v[g+976>>2]+1024>>2];j=f+32|0;Ba[v[v[i>>2]+48>>2]](i,j);HR(f,b- -64|0);g=v[v[g+976>>2]+1024>>2];Ba[v[v[g>>2]+44>>2]](g,j)}if(!(d&2)|!c){break b}d=x[b+124>>1];FR(f,(d|0)==1?b+120|0:v[c+4856>>2]+(v[b+120>>2]<<1)|0,d);c=v[v[c+992>>2]+1024>>2];Ba[v[v[c>>2]+64>>2]](c,f+32|0);break b}HR(f,b- -64|0)}c=v[a+4>>2];if(c&4){z[a+48>>2]=z[b>>2];z[a+52>>2]=z[b+4>>2];z[a+56>>2]=z[b+8>>2];z[a+60>>2]=z[b+12>>2];z[a- -64>>2]=z[b+16>>2];z[a+68>>2]=z[b+20>>2];z[a+72>>2]=z[b+24>>2]}if(c&8){v[a+32>>2]=v[b+28>>2];v[a+36>>2]=v[b+32>>2];v[a+40>>2]=v[b+36>>2];v[a+44>>2]=v[b+40>>2]}if(c&16){z[a+76>>2]=z[b+44>>2]}if(c&32){z[a+144>>2]=z[b+48>>2]}if(c&64){t[a+80|0]=w[b+52|0]}if(c&128){z[a+148>>2]=z[b+56>>2]}if(c&256){z[a+152>>2]=z[b+60>>2]}c=v[a-12>>2];b=0;d:{if(!c){break d}e:{switch(x[c+4>>1]-5|0){case 0:b=c- -64|0;break d;case 8:b=c- -64|0;break d;default:break e}}b=c- -64|0}if(!b){break a}t[e|0]=k;v[e+8>>2]=h;TJ(b,f,e+8|0,e,1)}v[a+8>>2]=0;v[a+4>>2]=w[a+7|0]<<24;xa=e+16|0}function L4(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=B(f,60);if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?27653:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=B(c,60)+e|0;d=v[a>>2];c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];h=v[d+52>>2];v[c+48>>2]=v[d+48>>2];v[c+52>>2]=h;v[c+56>>2]=v[d+56>>2];d=d+60|0;c=c+60|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}c=B(c,60)+e|0;z[c>>2]=z[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];z[c+28>>2]=z[b+28>>2];z[c+32>>2]=z[b+32>>2];z[c+36>>2]=z[b+36>>2];z[c+40>>2]=z[b+40>>2];z[c+44>>2]=z[b+44>>2];v[c+56>>2]=v[b+56>>2];d=v[b+52>>2];v[c+48>>2]=v[b+48>>2];v[c+52>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function LM(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=0,n=C(0);if(v[a+32>>2]){while(1){f=v[v[a+28>>2]+(e<<2)>>2]>>>7|0;d=v[(v[v[a+36>>2]+16>>2]+B(f,24)|0)+20>>2];c=v[d+36>>2];h=z[c+76>>2];i=z[c+92>>2];j=z[c+128>>2];k=z[c+96>>2];l=v[a+48>>2];m=v[a+40>>2];g=e<<6;b=g+v[a+44>>2]|0;z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];n=z[c+24>>2];v[b+28>>2]=0;v[b+32>>2]=0;v[b+8>>2]=0;v[b+12>>2]=1065353216;v[b>>2]=0;v[b+4>>2]=0;z[b+24>>2]=n;v[b+36>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+56>>2]=0;v[b+60>>2]=0;b=m+g|0;t[b+62|0]=1;u[b+54>>1]=0;u[b+56>>1]=0;u[b+58>>1]=0;u[b+60>>1]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+40>>2]=0;v[b+8>>2]=0;z[b+44>>2]=K(k);b=B(e,48)+l|0;z[b+12>>2]=j;z[b+40>>2]=i;z[b+28>>2]=h;v[b+32>>2]=0;v[b+36>>2]=f;z[b>>2]=z[c+64>>2];z[b+4>>2]=z[c+68>>2];z[b+8>>2]=z[c+72>>2];z[b+16>>2]=z[c+80>>2];z[b+20>>2]=z[c+84>>2];z[b+24>>2]=z[c+88>>2];b=v[d+36>>2];z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];z[d+24>>2]=z[b+24>>2];e=e+1|0;if(e>>>0>2]){continue}break}}}function FT(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=C(0);g=xa-160|0;xa=g;v[g+144>>2]=2;h=z[b+44>>2];z[g+148>>2]=z[b+40>>2];z[g+152>>2]=h*C(.5);z[g+128>>2]=A[d>>3]-A[c+12>>3];z[g+132>>2]=A[d+8>>3]-A[c+20>>3];z[g+136>>2]=A[d+16>>3]-A[c+28>>3];z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];d=0;v[g+104>>2]=0;v[g+96>>2]=2;z[g+100>>2]=z[c+60>>2];LU(g+16|0,c+36|0,c+48|0,g+104|0);b=v[g+40>>2];v[g+84>>2]=v[g+36>>2];v[g+88>>2]=b;z[g+64>>2]=z[g+16>>2];b=v[g+24>>2];v[g+68>>2]=v[g+20>>2];v[g+72>>2]=b;b=v[g+32>>2];v[g+76>>2]=v[g+28>>2];v[g+80>>2]=b;if(z[g+104>>2]==C(0)){v[g+104>>2]=872415232}v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!jV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];d=1}xa=g+160|0;return d|0}function G6(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a+24>>2]=151512;b=v[a+4>>2];c=v[b+8>>2];v[b+8>>2]=c;if(!c){while(1){c=v[a+16>>2];t[v[c+20>>2]+76|0]=0;if(w[c+32|0]){c=v[c+20>>2];if(!w[c+76|0]){t[c+76|0]=1;v[c+72>>2]=v[c+72>>2]+1}}c=v[a+20>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}a:{b:{c:{if(b){c=v[b+4>>2];d:{if(w[b+8|0]){v[b+4>>2]=0;d=v[a+12>>2];v[b>>2]=v[d>>2];v[d>>2]=b;break d}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,b-v[b-4>>2]|0)}if(c){break c}}d=v[a+16>>2];c=v[d+16>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}e:{if(b){c=v[b+4>>2];f:{if(w[b+8|0]){v[b+4>>2]=0;e=v[d+12>>2];v[b>>2]=v[e>>2];v[e>>2]=b;break f}e=v[37696];Ba[v[v[e+12>>2]+12>>2]](e+12|0,b-v[b-4>>2]|0)}if(c){break e}}c=0;if(!v[d+28>>2]){break e}e=0;while(1){f=v[d+4>>2]+B(e,28)|0;c=v[f+20>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}c=0;g:{if(!b){break g}c=v[b+4>>2];if(w[b+8|0]){v[b+4>>2]=0;f=v[f+12>>2];v[b>>2]=v[f>>2];v[f>>2]=b;break g}f=v[37696];Ba[v[v[f+12>>2]+12>>2]](f+12|0,b-v[b-4>>2]|0)}if(c){break e}e=e+1|0;if(e>>>0>2]){continue}break}c=0}if(!c){break b}}Ba[v[v[c>>2]+8>>2]](c);Ba[v[v[c>>2]+28>>2]](c);break a}w9(v[v[a+16>>2]+20>>2],-1)}b=v[a+4>>2];c=v[b+8>>2];v[b+8>>2]=c;if(!c){continue}break}}v[v[a+4>>2]+16>>2]=2;ta(0);L()}function X8(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;v[a>>2]=149136;e=a+244|0;c=v[a+248>>2];if(c){while(1){b=v[v[e>>2]+(f<<2)>>2];if(b){while(1){c=v[b>>2];if(b){g=v[37696];Ba[v[v[g+12>>2]+12>>2]](g+12|0,b)}b=c;if(b){continue}break}c=v[a+248>>2]}f=f+1|0;if(f>>>0>>0){continue}break}}v[d+12>>2]=0;Y8(e,0,d+12|0);Z8(e,v[a+248>>2]);b=v[a+260>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+256>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+252>>2];if(!((b|0)<0|!(b&2147483647))){b=v[e>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}}b=v[a+240>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+200>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+196>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+104>>2]=149328;v[a+180>>2]=0;b=v[a+184>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+176>>2];if((b|0)==(a+108|0)){t[a+172|0]=0;break a}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+12>>2]=149260;v[a+88>>2]=0;b=v[a+92>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+84>>2];if((b|0)==(a+16|0)){t[a+80|0]=0;break b}if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}xa=d+16|0;return a|0}function Qa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0;d=maa(252);v[d+16>>2]=0;v[d+20>>2]=0;v[d+52>>2]=0;v[d+56>>2]=0;v[d+48>>2]=2;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+60>>2]=0;v[d+64>>2]=0;v[d+68>>2]=0;v[d+72>>2]=0;v[d+76>>2]=0;v[d+80>>2]=0;v[d+84>>2]=0;v[d+88>>2]=0;v[d+92>>2]=0;z[d+96>>2]=z[a+4>>2]*C(.20000000298023224);e=z[a>>2];v[d+240>>2]=0;v[d+232>>2]=262144;v[d+236>>2]=8;v[d+224>>2]=1048576;v[d+228>>2]=67108864;v[d+216>>2]=524288;v[d+220>>2]=81920;v[d+208>>2]=25165824;v[d+212>>2]=16777216;v[d+200>>2]=2122317823;v[d+204>>2]=33554432;v[d+192>>2]=2122317823;v[d+196>>2]=2122317823;v[d+184>>2]=-25165825;v[d+188>>2]=-25165825;v[d+176>>2]=1053609164;v[d+180>>2]=-25165825;v[d+168>>2]=1;v[d+172>>2]=2139095039;v[d+160>>2]=2139095039;v[d+164>>2]=8192;v[d+152>>2]=0;v[d+156>>2]=65536;v[d+144>>2]=128;v[d+148>>2]=16;v[d+136>>2]=0;v[d+140>>2]=0;v[d+128>>2]=1;v[d+132>>2]=100;v[d+120>>2]=0;v[d+124>>2]=1;v[d+108>>2]=0;e=C(e*C(.03999999910593033));z[d+104>>2]=e;z[d+100>>2]=e;f=v[a>>2];a=v[a+4>>2];v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=-1055066685;v[d+244>>2]=f;v[d+248>>2]=a;a=J6(b,0);v[d+32>>2]=1;v[d+116>>2]=a;v[d+112>>2]=66;v[d+40>>2]=0;v[d+44>>2]=0;v[d+12>>2]=c;return d|0}function tT(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=C(0),i=0,j=0,k=0,l=C(0);g=xa-160|0;xa=g;v[g+144>>2]=3;z[g+148>>2]=z[b+40>>2];z[g+152>>2]=z[b+44>>2];z[g+156>>2]=z[b+48>>2];i=A[c+12>>3];z[g+128>>2]=A[d>>3]-i;j=A[c+20>>3];z[g+132>>2]=A[d+8>>3]-j;k=A[c+28>>3];z[g+136>>2]=A[d+16>>3]-k;z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];v[g+96>>2]=3;z[g+100>>2]=z[c+60>>2];z[g+104>>2]=z[c- -64>>2];z[g+108>>2]=z[c+68>>2];z[g+80>>2]=A[c+36>>3]-i;z[g+84>>2]=A[c+44>>3]-j;z[g+88>>2]=A[c+52>>3]-k;z[g+64>>2]=z[c+72>>2];z[g+68>>2]=z[c+76>>2];z[g+72>>2]=z[c+80>>2];z[g+76>>2]=z[c+84>>2];v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;b=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!jV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];l=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+36>>2]=h;z[f+32>>2]=l;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];b=1}xa=g+160|0;return b|0}function ey(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=v[a+4>>2];if(!e){break a}d=v[e+32768>>2];c=d+(b+15&-16)|0;if(c>>>0>32767){break a}v[e+32768>>2]=c;return d+e|0}c=v[a+20>>2];if(c>>>0>2]){v[a+20>>2]=c+1;c=v[v[a+8>>2]+(c<<2)>>2];v[a+4>>2]=c;a=b+15&-16;b=a>>>0<32768;v[c+32768>>2]=b?a:0;return(b?c:0)|0}c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,32772,24422,12859,1518)|0;v[d+32768>>2]=0;v[a+4>>2]=d;c=v[a+12>>2];b:{if(c>>>0>=(v[a+16>>2]&2147483647)>>>0){c=0;d=v[a+16>>2];g=d&2147483647?d<<1:1;c:{if(!g){break c}d=g<<2;if(!d){break c}e=v[37696];c=e+12|0;c=(j=c,k=d,l=Ba[v[v[e>>2]+20>>2]](e)|0?60597:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+12>>2];e=(f<<2)+c|0;if((f|0)>0){h=v[a+8>>2];d=c;while(1){v[d>>2]=v[h>>2];h=h+4|0;d=d+4|0;if(e>>>0>d>>>0){continue}break}}v[e>>2]=v[a+4>>2];d:{if(v[a+16>>2]<0){break d}e=v[a+8>>2];if(!e){break d}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e);f=v[a+12>>2]}v[a+16>>2]=g;v[a+8>>2]=c;v[a+12>>2]=f+1;d=v[a+12>>2];break b}v[v[a+8>>2]+(c<<2)>>2]=d;d=c+1|0;v[a+12>>2]=d}v[a+20>>2]=d;d=b+15&-16;c=v[a+4>>2];b=v[c+32768>>2];a=d+b|0;if(a>>>0<=32767){v[c+32768>>2]=a;a=b+c|0}else{a=0}return a|0}function G5(a,b,c,d,e,f,g){var h=0,i=0,j=C(0),k=C(0),l=C(0),m=0,n=0;i=z[g+12>>2]>C(0);e=i?C(0):z[g+8>>2]>C(0)?C(0):e;if(C(e+c)>b){j=z[f>>2];k=z[f+4>>2];l=z[f+8>>2];h=v[a+4>>2];v[a+4>>2]=h+80;l=C(-l);z[h+56>>2]=l;k=C(-k);z[h+52>>2]=k;j=C(-j);z[h+48>>2]=j;v[h+40>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0;z[h+24>>2]=l;z[h+20>>2]=k;z[h+16>>2]=j;v[h+8>>2]=0;v[h>>2]=0;v[h+4>>2]=0;u[h+78>>1]=0;c=C(c-b);z[h+12>>2]=-c;m=x[h+76>>1];n=m|64;u[h+76>>1]=n;j=z[g+8>>2];a:{if(i|j>C(0)){z[h+64>>2]=j;z[h+68>>2]=z[g+12>>2];i=m|81;break a}u[h+78>>1]=2049;z[h+64>>2]=z[g>>2];z[h+68>>2]=z[g+4>>2];i=(c>2]>C(0))){break a}i=i|4}v[h+44>>2]=0;u[h+76>>1]=i}if(C(d-e)>2];v[i+4>>2]=a+80;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;u[a+78>>1]=0;z[a+16>>2]=z[f>>2];z[a+20>>2]=z[f+4>>2];c=z[f+8>>2];v[a+40>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;z[a+24>>2]=c;z[a+48>>2]=z[f>>2];z[a+52>>2]=z[f+4>>2];c=z[f+8>>2];b=C(d-b);z[a+12>>2]=b;z[a+56>>2]=c;f=x[a+76>>1];h=f|64;u[a+76>>1]=h;c=z[g+8>>2];b:{if(z[g+12>>2]>C(0)|c>C(0)){z[a+64>>2]=c;z[a+68>>2]=z[g+12>>2];f=f|81;break b}u[a+78>>1]=2049;z[a+64>>2]=z[g>>2];z[a+68>>2]=z[g+4>>2];f=h|(b>C(0)?24:16);if(!(z[g>>2]>C(0))){break b}f=f|4}v[a+44>>2]=0;u[a+76>>1]=f}}function Ch(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=v[a+24>>2];if(d){i=xa-16|0;xa=i;if(v[d+28>>2]){b=v[d+12>>2];e=v[d>>2];c=v[d+16>>2];Ba[v[v[e>>2]+12>>2]](e,c)|0;t[e+76|0]=c;v[e+32>>2]=b;Ba[v[v[e>>2]+8>>2]](e)}c=v[d>>2];c=Ba[v[v[c>>2]+28>>2]](c)|0;g=v[d+16>>2];b=(B((c<<2)+16|0,c)+B(g,B(c,24)+240|0)|0)+136|0;if(b){c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,10053,524)|0}else{c=0}c=J9(c,0,b);b=v[d>>2];h=Ba[v[v[b>>2]+28>>2]](b)|0;v[c+40>>2]=0;v[c+44>>2]=0;e=g<<5;b=e+60|0;v[c+4>>2]=c+b;v[c>>2]=c+60;f=h<<2;b=B(B(g,f+24|0),6)+b|0;v[c+8>>2]=b+c;b=b+B(f,h)|0;v[c+12>>2]=b+c;b=b+f|0;v[c+16>>2]=b+c;b=b+f|0;v[c+20>>2]=b+c;b=b+f|0;v[c+24>>2]=b+c;b=b+f|0;v[c+28>>2]=b+c;b=b+e|0;v[c+32>>2]=b+c;v[c+36>>2]=c+(b+e|0);b=v[d>>2];b=Ba[v[v[b>>2]+28>>2]](b)|0;f=B(v[d+16>>2],272)+B(b,20)|0;if(f){b=v[37696];j=Ba[v[v[b+12>>2]+8>>2]](b+12|0,f,24422,10053,567)|0}v[c+48>>2]=j;b=v[37696];d=zG(Ba[v[v[b+12>>2]+8>>2]](b+12|0,24,24422,10053,570)|0);v[c+52>>2]=d;v[d+20>>2]=f;v[d+16>>2]=j;h=v[d+8>>2];g=h-1|0;v[d+8>>2]=g;e=v[d+4>>2];b=f+j|0;v[i+12>>2]=b;a:{if(g>>>0>=(v[d+12>>2]&2147483647)>>>0){Vs(d+4|0,i+12|0);break a}v[e+(g<<2)>>2]=b;v[d+8>>2]=h}xa=i+16|0}v[c+56>>2]=v[a+116>>2];return c|0}function hA(a,b,c,d){var e=0,f=0,g=0,h=C(0),i=0,j=C(0),k=C(0),l=0,m=0,n=0,o=0,p=0,q=C(0),r=C(0),s=0,u=0,y=0,A=0,D=0;a:{e=x[a+22>>1];if(!e){break a}g=v[a+24>>2];s=g+(e<<4)|0;e=v[a+28>>2];while(1){f=w[g+2|0];u=(f<<2)+12&2032;o=w[g|0]==3;i=(B(f,o?112:48)+g|0)- -64|0;y=w[g+3|0];A=w[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}D=f&252;f=0;n=0;while(1){l=f<<2;h=z[i+l>>2];z[e>>2]=h;j=z[i+(l|4)>>2];z[e+4>>2]=j;q=z[i+(l|8)>>2];z[e+8>>2]=q;r=z[i+(l|12)>>2];z[e+12>>2]=r;k=C(r+C(q+C(j+C(k+h))));f=f+4|0;e=e+16|0;n=n+4|0;if((D|0)!=(n|0)){continue}break}}if(!p){break b}while(1){h=z[i+(f<<2)>>2];z[e>>2]=h;f=f+1|0;e=e+4|0;k=C(k+h);m=m+1|0;if((m|0)!=(p|0)){continue}break}}f=i+u|0;i=o?128:64;d:{if(!v[g+52>>2]){break d}g=v[g+56>>2];if(!g){break d}t[g|0]=1}g=f+B(i,y)|0;if(s>>>0>g>>>0){continue}break}if(!(A&1)|x[a+8>>1]!=65535|(x[a+10>>1]!=65535|k==C(0))){break a}h=z[c+28>>2];j=z[d+28>>2];if(!(h>2];c=v[c+72>>2];e=v[v[a+24>>2]+60>>2];a=v[b+8>>2];v[b+8>>2]=a+1;a=v[b+4>>2]+(a<<5)|0;z[a+8>>2]=h>2]=k;v[a>>2]=e;b=d<<7;c=c<<7;v[a+16>>2]=b>>>0>c>>>0?b:c;v[a+12>>2]=b>>>0>>0?b:c}}function GH(a,b,c){var d=0,e=0,f=0,g=0;g=xa-16|0;xa=g;t[b+68|0]=w[b+68|0]&254;d=v[b+60>>2];a:{if(!d|v[d+164>>2]){break a}f=v[d+28>>2];if(!f){break a}d=v[d+20>>2];while(1){f=f-1|0;e=v[d>>2];b:{if(w[e+20|0]!=4){break b}e=v[e+24>>2];v[g+8>>2]=e;if(t[e+68|0]&1|(b|0)==(e|0)){break b}HH(c,g+8|0)}d=d+4|0;if(f){continue}break}}d=v[b- -64>>2];c:{if(!d){d=0;break c}if(v[d+164>>2]){break c}f=v[d+28>>2];if(!f){break c}d=v[d+20>>2];while(1){f=f-1|0;e=v[d>>2];d:{if(w[e+20|0]!=4){break d}e=v[e+24>>2];v[g+12>>2]=e;if(t[e+68|0]&1|(b|0)==(e|0)){break d}HH(c,g+12|0)}d=d+4|0;if(f){continue}break}d=v[b+64>>2]}b=v[b+60>>2];c=b?b:d;f=c;d=(b|0)==(c|0)?d:b;b=v[c+164>>2];e:{if(!b){c=v[a+292>>2];if(!c){EH(a+4|0);c=v[a+292>>2]}v[a+292>>2]=v[c>>2];v[a+284>>2]=v[a+284>>2]+1;c=zH(c,f);v[f+164>>2]=c;break e}c=AH(b);if(!v[c+20>>2]){break e}KH(c)}f:{if(!d){break f}b=v[d+164>>2];g:{if(!b){b=v[a+292>>2];if(!b){EH(a+4|0);b=v[a+292>>2]}v[a+292>>2]=v[b>>2];v[a+284>>2]=v[a+284>>2]+1;b=zH(b,d);v[d+164>>2]=b;break g}b=AH(b);if(!v[b+20>>2]){break g}KH(b)}if((b|0)==(c|0)){break f}a=v[b+12>>2];h:{if(a>>>0>2]){a=c;c=b;break h}v[b+12>>2]=a+1;a=b}v[c+4>>2]=a;v[v[a+8>>2]+16>>2]=c;v[a+8>>2]=v[c+8>>2]}xa=g+16|0}function QZ(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=0,s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0);a:{if(c>C(9999999747378752e-20)){l=C(K(c));c=C(C(1)/l);e=C(c*z[b+8>>2]);f=C(c*z[b>>2]);c=C(c*z[b+4>>2]);break a}c=C(0);g=z[b+8>>2];h=z[b>>2];i=z[b+4>>2];j=C(C(g*g)+C(C(h*h)+C(i*i)));if(j>C(0)){c=C(C(1)/C(K(j)));e=C(g*c);k=C(i*c);c=C(h*c)}e=C(-e);f=C(-c);c=C(-k)}p=v[a+12>>2];q=v[p+4096>>2];if(q>>>0<=63){b=v[a+8>>2];t=z[b+20>>2];u=z[b+24>>2];w=z[b+16>>2];r=v[a+16>>2];x=z[r+4>>2];y=z[r>>2];A=z[r+8>>2];g=z[b+8>>2];h=z[b+12>>2];i=z[b>>2];j=z[b+4>>2];k=z[v[a>>2]+4>>2];v[p+4096>>2]=q+1;a=(q<<6)+p|0;v[a+52>>2]=d;z[a+12>>2]=l-k;m=C(e+e);n=C(f+f);o=C(c+c);s=C(C(g*m)+C(C(i*n)+C(j*o)));l=C(C(h*h)+C(-.5));z[a+8>>2]=-C(C(g*s)+C(C(m*l)+C(h*C(C(i*o)-C(n*j)))));z[a+4>>2]=-C(C(j*s)+C(C(o*l)+C(h*C(C(g*n)-C(m*i)))));z[a>>2]=-C(C(i*s)+C(C(n*l)+C(h*C(C(j*m)-C(o*g)))));e=C(A+C(e*k));e=C(e+e);f=C(y+C(f*k));f=C(f+f);c=C(x+C(c*k));c=C(c+c);k=C(C(g*e)+C(C(i*f)+C(j*c)));z[a+24>>2]=u+C(C(g*k)+C(C(e*l)+C(h*C(C(i*c)-C(f*j)))));z[a+20>>2]=t+C(C(j*k)+C(C(c*l)+C(h*C(C(g*f)-C(e*i)))));z[a+16>>2]=w+C(C(i*k)+C(C(f*l)+C(h*C(C(j*e)-C(c*g)))))}}function wk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);c=v[a+12>>2];f=xa+-64|0;xa=f;n=z[a+8>>2];if(n!=C(0)){l=z[b+20>>2];w=z[b+16>>2];g=z[b>>2];k=C(g+g);h=z[b+8>>2];i=z[b+4>>2];j=z[b+12>>2];m=C(j+j);o=C(C(C(C(k*h)-C(i*m))*d)+z[b+24>>2]);z[f+56>>2]=o;l=C(l+C(C(C(h*m)+C(k*i))*d));z[f+52>>2]=l;p=C(j*C(.7071067690849304));q=C(g*C(-0));r=C(i*C(.7071067690849304));s=C(h*C(0));z[f+44>>2]=C(C(p+q)-r)-s;t=C(g*C(.7071067690849304));u=C(j*C(0));z[f+40>>2]=C(i*C(-0))+C(t+C(u+C(h*C(.7071067690849304))));z[f+36>>2]=q+C(s+C(p+r));z[f+32>>2]=C(h*C(-.7071067690849304))+C(C(i*C(0))+C(u+t));k=C(w+C(C(C(g*k)+C(C(j*m)+C(-1)))*d));z[f+48>>2]=k;v[c+4>>2]=e?-65536:-8355712;v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=1065353216;v[f>>2]=0;v[f+4>>2]=0;ZU(c,f);d=z[b+20>>2];g=z[b+16>>2];i=z[b+24>>2];h=C(o-i);z[f+20>>2]=i+h;j=C(l-d);z[f+16>>2]=d+j;z[f+8>>2]=i;z[f+4>>2]=d;z[f>>2]=g;d=C(k-g);z[f+12>>2]=g+d;z[f+24>>2]=C(K(C(C(h*h)+C(C(d*d)+C(j*j)))))*C(.15000000596046448);aV(c,f);a=ZU(c,f+32|0);z[f+4>>2]=n*C(.30000001192092896);v[f>>2]=20;cV(a,f)}xa=f- -64|0}function KP(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=xa-16|0;xa=h;d=v[v[a+976>>2]+1024>>2];Ba[v[v[d>>2]+48>>2]](d,v[b+28>>2]+32|0);d=v[a+1012>>2];Ba[v[v[d>>2]+20>>2]](d,v[b+32>>2]);d=((v[v[b+28>>2]+68>>2]<<2)+a|0)+2676|0;v[d>>2]=v[d>>2]-1;d=xa-48|0;xa=d;if(v[b+8>>2]<0){$I(b);g=d+8|0;e=v[v[b+4>>2]+40>>2];f=v[v[e+976>>2]+1024>>2];Ba[v[v[f>>2]+84>>2]](g,f);pJ(v[e+2168>>2],b,c?4:0,g,(v[e+2360>>2]&8)>>>3|0)}xa=d+48|0;e=v[a+2384>>2];a=v[v[b+4>>2]+40>>2];c=v[b+8>>2];d=v[a+2516>>2]+(c>>>3&268435452)|0;g=v[d>>2];j=d,k=Vaa(-2,c)&g,v[j>>2]=k;if(v[b+36>>2]!=-1){mS(v[a+1152>>2],b)}SH(v[a+2368>>2],v[b+32>>2]);SH(v[v[v[b+4>>2]+40>>2]+2376>>2],v[b+8>>2]&2147483647);a=0;g=v[b+4>>2];f=g+32|0;c=f;a:{while(1){d=a;c=v[c>>2];if(!c){break a}a=c;if((b|0)!=(a|0)){continue}break}v[(d?d:f)>>2]=v[b>>2];v[g+36>>2]=v[g+36>>2]-1}c=b;if(w[e+24|0]){OO(v[e+12>>2],v[e+16>>2])}b=0;a=v[e+16>>2]-1|0;b:{if((a|0)<0){break b}i=B(v[e+4>>2],v[e>>2]);g=v[e+12>>2];while(1){d=a+b>>1;f=v[g+B(d,12)>>2];if(!(f>>>0>c>>>0|c>>>0>=f+i>>>0)){a=g+B(d,12)|0;v[c>>2]=v[a+4>>2];v[a+4>>2]=c;if(w[e+24|0]){v[e+8>>2]=d}t[e+24|0]=0;break b}f=c>>>0>f>>>0;b=f?d+1|0:b;a=f?a:d-1|0;if((b|0)<=(a|0)){continue}break}}xa=h+16|0}function zA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;wA(a,c);c=x[a+22>>1];if(c){b=v[a+24>>2];g=b+(c<<4)|0;while(1){d=0;e=w[b+1|0];a=e<<4;c=(a+b|0)+192|0;f=w[b+2|0];a=(((c+B(e,144)|0)+(a&0-(t[b+3|0]&1))|0)+(f<<4)|0)+(((f|0)!=0)<<7)|0;if(e){while(1){z[c+80>>2]=z[c+80>>2]-z[c+64>>2];z[c+92>>2]=z[c+92>>2]-z[c+76>>2];z[c+88>>2]=z[c+88>>2]-z[c+72>>2];z[c+84>>2]=z[c+84>>2]-z[c+68>>2];c=c+144|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}b=B(f,144)+a|0;a:{if(!f){break a}if(f-1>>>0>=3){e=f&252;c=0;while(1){d=v[a+84>>2];v[a+48>>2]=v[a+80>>2];v[a+52>>2]=d;d=v[a+228>>2];v[a+192>>2]=v[a+224>>2];v[a+196>>2]=d;d=v[a+372>>2];v[a+336>>2]=v[a+368>>2];v[a+340>>2]=d;d=v[a+516>>2];v[a+480>>2]=v[a+512>>2];v[a+484>>2]=d;d=v[a+92>>2];v[a+56>>2]=v[a+88>>2];v[a+60>>2]=d;d=v[a+236>>2];v[a+200>>2]=v[a+232>>2];v[a+204>>2]=d;d=v[a+380>>2];v[a+344>>2]=v[a+376>>2];v[a+348>>2]=d;d=v[a+524>>2];v[a+488>>2]=v[a+520>>2];v[a+492>>2]=d;a=a+576|0;c=c+4|0;if((e|0)!=(c|0)){continue}break}}c=0;f=f&3;if(!f){break a}while(1){e=v[a+84>>2];v[a+48>>2]=v[a+80>>2];v[a+52>>2]=e;e=v[a+92>>2];v[a+56>>2]=v[a+88>>2];v[a+60>>2]=e;a=a+144|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(b>>>0>>0){continue}break}}}function zaa(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(oaa(a,v[b+8>>2],e)){if(!(v[b+28>>2]==1|v[b+4>>2]!=(c|0))){v[b+28>>2]=d}return}a:{if(oaa(a,v[b>>2],e)){if(!(v[b+16>>2]!=(c|0)&v[b+20>>2]!=(c|0))){if((d|0)!=1){break a}v[b+32>>2]=1;return}v[b+32>>2]=d;if(v[b+44>>2]!=4){f=a+16|0;h=f+(v[a+12>>2]<<3)|0;d=0;b:{c:{while(1){d:{if(f>>>0>=h>>>0){break d}u[b+52>>1]=0;Aaa(f,b,c,c,1,e);if(w[b+54|0]){break d}e:{if(!w[b+53|0]){break e}if(w[b+52|0]){d=1;if(v[b+24>>2]==1){break c}g=1;if(w[a+8|0]&2){break e}break c}g=1;if(!(t[a+8|0]&1)){break c}}f=f+8|0;continue}break}a=4;if(!g){break b}}a=3}v[b+44>>2]=a;if(d&1){break a}}v[b+20>>2]=c;v[b+40>>2]=v[b+40>>2]+1;if(v[b+36>>2]!=1|v[b+24>>2]!=2){break a}t[b+54|0]=1;return}g=v[a+12>>2];h=a+16|0;Baa(h,b,c,d,e);f=a+24|0;g=h+(g<<3)|0;if(f>>>0>=g>>>0){break a}a=v[a+8>>2];if(!(!(a&2)&v[b+36>>2]!=1)){while(1){if(w[b+54|0]){break a}Baa(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break}break a}if(!(a&1)){while(1){if(w[b+54|0]|v[b+36>>2]==1){break a}Baa(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break a}}while(1){if(w[b+54|0]|v[b+36>>2]==1&v[b+24>>2]==1){break a}Baa(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break}}}function pu(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),y=C(0);a=B(a,3);a:{if(!f){d=(a<<2)+d|0;f=v[d>>2];a=v[d+8>>2];d=v[d+4>>2];break a}d=(a<<1)+d|0;f=x[d>>1];a=x[d+4>>1];d=x[d+2>>1]}a=B(a,12)+c|0;o=z[a>>2];p=z[a+4>>2];q=z[a+8>>2];a=B(d,12)+c|0;j=z[a>>2];k=z[a+4>>2];l=z[a+8>>2];m=z[e+40>>2];n=z[e+16>>2];r=z[e+28>>2];s=z[e+36>>2];t=z[e+24>>2];u=z[e>>2];w=z[e+12>>2];y=z[e+4>>2];a=B(f,12)+c|0;g=z[a>>2];h=z[a+4>>2];i=z[a+8>>2];z[b+8>>2]=C(C(C(g*z[e+8>>2])+C(h*z[e+20>>2]))+C(i*z[e+32>>2]))+z[e+44>>2];z[b+4>>2]=m+C(C(C(g*y)+C(h*n))+C(i*r));z[b>>2]=s+C(C(C(g*u)+C(h*w))+C(i*t));g=z[e+40>>2];h=z[e+16>>2];i=z[e+28>>2];m=z[e+36>>2];n=z[e+24>>2];r=z[e>>2];s=z[e+12>>2];t=z[e+4>>2];z[b+20>>2]=C(C(C(j*z[e+8>>2])+C(k*z[e+20>>2]))+C(l*z[e+32>>2]))+z[e+44>>2];z[b+16>>2]=g+C(C(C(j*t)+C(k*h))+C(l*i));z[b+12>>2]=m+C(C(C(j*r)+C(k*s))+C(l*n));j=z[e+40>>2];k=z[e+16>>2];l=z[e+28>>2];g=z[e+36>>2];h=z[e+24>>2];i=z[e>>2];m=z[e+12>>2];n=z[e+4>>2];z[b+32>>2]=C(C(C(o*z[e+8>>2])+C(p*z[e+20>>2]))+C(q*z[e+32>>2]))+z[e+44>>2];z[b+28>>2]=j+C(C(C(o*n)+C(p*k))+C(q*l));z[b+24>>2]=g+C(C(C(o*i)+C(p*m))+C(q*h))}function WV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0);c=xa-16|0;xa=c;BV(c,d);m=z[f+8>>2];e=v[e+32>>2];d=v[e+56>>2]+B(w[e+55|0],20)|0;j=z[d+8>>2];k=C(j+j);j=z[f>>2];h=z[d>>2];g=C(h+h);h=z[d+4>>2];i=C(h+h);h=z[f+4>>2];l=C(C(m*k)+C(C(j*g)+C(i*h)));t=z[c+12>>2];u=z[f+24>>2];n=z[f+12>>2];o=C(C(n*n)+C(-.5));p=z[c+8>>2];x=z[f+16>>2];q=z[c>>2];y=z[f+20>>2];r=z[c+4>>2];k=C(t+C(C(C(u+C(C(m*l)+C(C(k*o)+C(n*C(C(j*i)-C(g*h))))))*p)+C(C(C(x+C(C(j*l)+C(C(g*o)+C(n*C(C(h*k)-C(i*m))))))*q)+C(C(y+C(C(h*l)+C(C(i*o)+C(n*C(C(m*g)-C(k*j))))))*r))));f=1;A=w[e+54|0];if(A>>>0>1){D=C(-h);E=C(-j);F=C(-m);while(1){e=d+B(f,12)|0;g=z[e+8>>2];g=C(g+g);i=z[e>>2];i=C(i+i);l=z[e+4>>2];l=C(l+l);s=C(C(m*g)+C(C(j*i)+C(h*l)));g=C(t+C(C(C(u+C(C(m*s)+C(C(g*o)+C(n*C(C(j*l)+C(i*D))))))*p)+C(C(C(x+C(C(j*s)+C(C(i*o)+C(n*C(C(h*g)+C(l*F))))))*q)+C(r*C(y+C(C(h*s)+C(C(l*o)+C(n*C(C(m*i)+C(g*E))))))))));k=g>k?k:g;f=f+1|0;if((A|0)!=(f|0)){continue}break}}d=k>C(0);if(!d){z[a+8>>2]=-p;z[a+4>>2]=-r;z[a>>2]=-q;z[b>>2]=k>2]-z[a+1320>>2])-C(z[a+280>>2]-z[a+1304>>2]));k=g>C(0)?g:C(-g);h=C(C(z[a+292>>2]-z[a+1316>>2])-C(z[a+276>>2]-z[a+1300>>2]));j=h>C(0)?h:C(-h);i=C(C(z[a+288>>2]-z[a+1312>>2])-C(z[a+272>>2]-z[a+1296>>2]));m=i>C(0)?i:C(-i);a:{if(j>2]=0;k=C(C(j*g)-C(h*o));h=C(C(n*h)-C(i*j));g=C(C(o*i)-C(g*n));i=C(C(1)/C(K(C(C(h*h)+C(C(k*k)+C(g*g))))));j=C(k*i);z[f>>2]=j;g=C(g*i);z[f+4>>2]=g;h=C(h*i);z[f+8>>2]=h;v[f+28>>2]=0;z[f+24>>2]=-h;z[f+20>>2]=-g;z[f+16>>2]=-j;p=f+16|0;Ba[v[v[b>>2]+4>>2]](f+32|0,b,p);Ba[v[v[c>>2]+4>>2]](p,c,f);b=v[f+36>>2];v[a+304>>2]=v[f+32>>2];v[a+308>>2]=b;b=v[f+44>>2];v[a+312>>2]=v[f+40>>2];v[a+316>>2]=b;c=v[f+20>>2];b=a+1328|0;v[b>>2]=v[f+16>>2];v[b+4>>2]=c;c=v[f+28>>2];b=a+1336|0;v[b>>2]=v[f+24>>2];v[b+4>>2]=c;v[d>>2]=3;b=M_(a,0,1,2,e);c=M_(a,1,0,2,e);a=v[a>>2];if(a){t[b+32|0]=0;v[b+20>>2]=c;t[c+32|0]=0;v[c+20>>2]=b;t[b+33|0]=2;v[b+24>>2]=c;t[c+34|0]=1;v[c+28>>2]=b;t[b+34|0]=1;v[b+28>>2]=c;t[c+33|0]=2;v[c+24>>2]=b}xa=f+48|0;return(a|0)!=0}function AA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;yA(a,c);c=x[a+22>>1];if(c){b=v[a+24>>2];g=b+(c<<4)|0;while(1){d=0;e=w[b+1|0];a=e<<4;c=(a+b|0)+192|0;f=w[b+2|0];a=(((c+B(e,96)|0)+(a&0-(t[b+3|0]&1))|0)+(f<<4)|0)+(((f|0)!=0)<<7)|0;if(e){while(1){z[c+80>>2]=z[c+80>>2]-z[c+64>>2];z[c+92>>2]=z[c+92>>2]-z[c+76>>2];z[c+88>>2]=z[c+88>>2]-z[c+72>>2];z[c+84>>2]=z[c+84>>2]-z[c+68>>2];c=c+96|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}b=B(f,96)+a|0;a:{if(!f){break a}if(f-1>>>0>=3){e=f&252;c=0;while(1){d=v[a+84>>2];v[a+48>>2]=v[a+80>>2];v[a+52>>2]=d;d=v[a+180>>2];v[a+144>>2]=v[a+176>>2];v[a+148>>2]=d;d=v[a+276>>2];v[a+240>>2]=v[a+272>>2];v[a+244>>2]=d;d=v[a+372>>2];v[a+336>>2]=v[a+368>>2];v[a+340>>2]=d;d=v[a+92>>2];v[a+56>>2]=v[a+88>>2];v[a+60>>2]=d;d=v[a+188>>2];v[a+152>>2]=v[a+184>>2];v[a+156>>2]=d;d=v[a+284>>2];v[a+248>>2]=v[a+280>>2];v[a+252>>2]=d;d=v[a+380>>2];v[a+344>>2]=v[a+376>>2];v[a+348>>2]=d;a=a+384|0;c=c+4|0;if((e|0)!=(c|0)){continue}break}}c=0;f=f&3;if(!f){break a}while(1){e=v[a+84>>2];v[a+48>>2]=v[a+80>>2];v[a+52>>2]=e;e=v[a+92>>2];v[a+56>>2]=v[a+88>>2];v[a+60>>2]=e;a=a+96|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(b>>>0>>0){continue}break}}}function _F(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=xa-16|0;xa=j;f=v[a+20>>2];a:{if(f){i=f-1|0;f=v[v[a+16>>2]+(i<<2)>>2];v[a+20>>2]=i;break a}f=v[a+28>>2];v[a+28>>2]=f+1}i=f<<1;if((i|0)==v[a+116>>2]){g=i+2048|0;$F(a+104|0,g);aG(a+128|0,g);bG(a+44|0,g)}g=v[a+124>>2];h=(i>>>0)/(g>>>0)|0;v[v[v[a+104>>2]+(h<<2)>>2]+(i-B(g,h)<<2)>>2]=c;g=i|1;h=v[a+124>>2];k=(g>>>0)/(h>>>0)|0;v[v[v[a+104>>2]+(k<<2)>>2]+(g-B(h,k)<<2)>>2]=d;g=v[a+148>>2];h=(f>>>0)/(g>>>0)|0;v[v[v[a+128>>2]+(h<<2)>>2]+(f-B(g,h)<<2)>>2]=b;g=v[a- -64>>2];h=(f>>>0)/(g>>>0)|0;v[v[v[a+44>>2]+(h<<2)>>2]+(f-B(g,h)<<2)>>2]=e;HF(a+640|0,b,c,d,f);if(b){v[b- -64>>2]=f}b=v[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=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,b<<2,24422,17999,438)|0;d=v[a+152>>2];c:{if(!d){break c}I9(c,d,v[a+156>>2]<<2);if(v[a+156>>2]<0){break c}d=v[a+152>>2];if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}d=v[a+156>>2];J9(c+(d<<2)|0,0,b-d<<2);v[a+156>>2]=b;v[a+152>>2]=c}if((v[a+88>>2]&2147483647)==(f|0)){v[j+12>>2]=0;WF(a+80|0,i+2|0,j+12|0)}a=v[a+152>>2]+(f>>>3&536870908)|0;b=v[a>>2];l=a,m=Vaa(-2,f)&b,v[l>>2]=m;xa=j+16|0;return f}function AT(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=C(0),i=0,j=0,k=0;g=xa-160|0;xa=g;v[g+144>>2]=2;h=z[b+44>>2];z[g+148>>2]=z[b+40>>2];z[g+152>>2]=h*C(.5);i=A[c+12>>3];z[g+128>>2]=A[d>>3]-i;j=A[c+20>>3];z[g+132>>2]=A[d+8>>3]-j;k=A[c+28>>3];z[g+136>>2]=A[d+16>>3]-k;z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];v[g+96>>2]=3;z[g+100>>2]=z[c+60>>2];z[g+104>>2]=z[c- -64>>2];z[g+108>>2]=z[c+68>>2];z[g+80>>2]=A[c+36>>3]-i;z[g+84>>2]=A[c+44>>3]-j;z[g+88>>2]=A[c+52>>3]-k;z[g+64>>2]=z[c+72>>2];z[g+68>>2]=z[c+76>>2];z[g+72>>2]=z[c+80>>2];z[g+76>>2]=z[c+84>>2];v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;d=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!jV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];d=1}xa=g+160|0;return d|0}function Pv(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((v[a+8>>2]&2147483647)>>>0>>0){a:{if(!b){break a}e=B(b,48);if(!e){break a}d=v[37696];f=d+12|0;f=(j=f,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?48717:63804,m=16608,n=553,i=v[v[f>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}e=v[a>>2];d=v[a+4>>2];if((d|0)>0){h=B(d,48)+f|0;d=f;while(1){g=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=g;g=v[e+44>>2];v[d+40>>2]=v[e+40>>2];v[d+44>>2]=g;g=v[e+36>>2];v[d+32>>2]=v[e+32>>2];v[d+36>>2]=g;g=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=g;g=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=g;g=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=g;e=e+48|0;d=d+48|0;if(h>>>0>d>>>0){continue}break}e=v[a>>2]}if(!(!e|v[a+8>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+8>>2]=b;v[a>>2]=f}d=v[a+4>>2];if((d|0)<(b|0)){f=v[a>>2];e=f+B(b,48)|0;d=f+B(d,48)|0;while(1){f=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=f;f=v[c+44>>2];v[d+40>>2]=v[c+40>>2];v[d+44>>2]=f;f=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=f;f=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=f;f=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=f;f=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=f;d=d+48|0;if(e>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function sv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);u=C(1);w=z[c+24>>2];n=z[d+24>>2];j=z[d>>2];o=C(j+j);r=z[d+8>>2];i=z[d+4>>2];k=z[d+12>>2];p=C(k+k);q=z[b+8>>2];l=C(C(C(o*r)-C(i*p))*q);x=C(n+l);s=C(w-x);y=z[c+16>>2];m=z[d+16>>2];j=C(C(C(C(j*o)+C(k*p))+C(-1))*q);A=C(m+j);t=C(y-A);B=z[c+20>>2];k=z[d+20>>2];i=C(C(C(o*i)+C(r*p))*q);p=C(k+i);q=C(B-p);l=C(C(n-l)-x);m=C(C(m-j)-A);j=C(C(k-i)-p);k=C(C(l*l)+C(C(m*m)+C(j*j)));o=z[a+4>>2];r=C(o+z[b+4>>2]);i=C(r+z[e>>2]);n=C(i*i);i=C(F(C(C(C(s*l)+C(C(t*m)+C(q*j)))/k),C(1)));k=k!=C(0)?i>C(0)?i:C(0):C(0);l=C(l*k);i=C(s-l);s=C(i*i);m=C(m*k);i=C(t-m);t=C(i*i);j=C(j*k);i=C(q-j);k=C(s+C(t+C(i*i)));b=n>k;if(b){n=C(0);a=v[g+4096>>2];v[g+4096>>2]=a+1;l=C(w-C(x+l));m=C(y-C(A+m));j=C(B-C(p+j));i=C(K(C(C(l*l)+C(C(m*m)+C(j*j)))));if(!(i<=C(1.1920928955078125e-7))){i=C(C(1)/i);n=C(l*i);u=C(m*i);D=C(j*i)}a=(a<<6)+g|0;z[a+16>>2]=y-C(o*u);z[a+8>>2]=n;z[a+4>>2]=D;z[a>>2]=u;v[a+52>>2]=-1;z[a+12>>2]=C(K(k))-r;v[a+28>>2]=0;z[a+24>>2]=w-C(o*n);z[a+20>>2]=B-C(o*D)}return b|0}function gI(a,b,c){var d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),q=C(0),r=C(0),s=C(0),u=0,w=0,x=C(0),y=0,A=0,D=0,E=C(0);y=v[a+4>>2];e=v[y>>2];u=v[a+8>>2];d=u-1|0;d=B(e,24)+b|0;g=z[d+4>>2];h=z[d+8>>2];i=z[d+16>>2];k=z[d+20>>2];l=z[d>>2];w=v[a+24>>2];f=z[(e<<2)+c>>2];m=C(f+z[d+12>>2]);d=(p(m),j(2));v[w+4>>2]=(d|0)<0?d^-1:d|-2147483648;l=C(l-f);d=(p(l),j(2));v[w>>2]=(d|0)<0?d^-1:d|-2147483648;n=v[a+28>>2];k=C(f+k);z[n+12>>2]=k;i=C(f+i);z[n+8>>2]=i;h=C(h-f);z[n+4>>2]=h;g=C(g-f);z[n>>2]=g;d=1;if(u>>>0>1){while(1){A=v[(d<<2)+y>>2];e=B(A,24)+b|0;E=z[e+4>>2];o=z[e+8>>2];q=z[e+16>>2];r=z[e+20>>2];s=z[e>>2];D=(d<<3)+w|0;f=z[(A<<2)+c>>2];x=C(f+z[e+12>>2]);e=(p(x),j(2));v[D+4>>2]=(e|0)<0?e^-1:e|-2147483648;s=C(s-f);e=(p(s),j(2));v[D>>2]=(e|0)<0?e^-1:e|-2147483648;e=(d<<4)+n|0;r=C(f+r);z[e+12>>2]=r;q=C(f+q);z[e+8>>2]=q;o=C(o-f);z[e+4>>2]=o;f=C(E-f);z[e>>2]=f;m=m>x?m:x;h=hg?g:f;l=lr?k:r;i=i>q?i:q;d=d+1|0;if((u|0)!=(d|0)){continue}break}}z[a+36>>2]=l;z[a+56>>2]=k;z[a+52>>2]=i;z[a+48>>2]=m;z[a+44>>2]=h;z[a+40>>2]=g;b=(u<<3)+w|0;v[b>>2]=-1;v[b+40>>2]=-1;v[b+32>>2]=-1;v[b+24>>2]=-1;v[b+16>>2]=-1;v[b+8>>2]=-1;t[a+60|0]=1}function PO(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=xa-16|0;xa=e;b=v[a+2368>>2];c=b;if(v[b+36>>2]){g=b+8|0;while(1){c=v[v[b+32>>2]+(d<<2)>>2];v[e+4>>2]=c;a:{if((c|0)==(v[b+4>>2]-1|0)){v[b+4>>2]=c;break a}f=v[b+12>>2];if(f>>>0>=(v[b+16>>2]&2147483647)>>>0){pn(g,e+4|0);break a}v[v[b+8>>2]+(f<<2)>>2]=c;v[b+12>>2]=v[b+12>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}c=v[a+2368>>2]}d=0;v[b+36>>2]=0;J9(v[c+20>>2],0,v[c+24>>2]<<2);b=v[a+2372>>2];c=b;if(v[b+36>>2]){g=b+8|0;while(1){c=v[v[b+32>>2]+(d<<2)>>2];v[e+8>>2]=c;b:{if((c|0)==(v[b+4>>2]-1|0)){v[b+4>>2]=c;break b}f=v[b+12>>2];if(f>>>0>=(v[b+16>>2]&2147483647)>>>0){pn(g,e+8|0);break b}v[v[b+8>>2]+(f<<2)>>2]=c;v[b+12>>2]=v[b+12>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}c=v[a+2372>>2]}d=0;v[b+36>>2]=0;J9(v[c+20>>2],0,v[c+24>>2]<<2);b=v[a+2364>>2];c=b;if(v[b+36>>2]){g=b+8|0;while(1){c=v[v[b+32>>2]+(d<<2)>>2];v[e+12>>2]=c;c:{if((c|0)==(v[b+4>>2]-1|0)){v[b+4>>2]=c;break c}f=v[b+12>>2];if(f>>>0>=(v[b+16>>2]&2147483647)>>>0){pn(g,e+12|0);break c}v[v[b+8>>2]+(f<<2)>>2]=c;v[b+12>>2]=v[b+12>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}c=v[a+2364>>2]}v[b+36>>2]=0;J9(v[c+20>>2],0,v[c+24>>2]<<2);xa=e+16|0}function D8(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0);d=z[c>>2];i=C(d+d);h=z[c+8>>2];p=C(i*h);e=z[c+4>>2];f=C(e+e);g=z[c+12>>2];D=C(f*g);j=C(p-D);s=z[b>>2];t=z[b+4>>2];E=C(f*h);F=C(i*g);k=C(E+F);m=C(C(1)-C(d*i));f=C(e*f);d=C(m-f);u=z[b+8>>2];l=C(C(C(j*s)+C(t*k))+C(d*u));v=z[b+12>>2];w=z[b+16>>2];x=z[b+20>>2];n=C(C(C(j*v)+C(k*w))+C(d*x));y=z[b+24>>2];A=z[b+28>>2];B=z[b+32>>2];o=C(C(C(j*y)+C(k*A))+C(d*B));z[a+32>>2]=C(C(j*l)+C(k*n))+C(d*o);r=C(i*e);e=C(h+h);g=C(g*e);i=C(r+g);q=m;m=C(h*e);h=C(q-m);e=C(E-F);z[a+20>>2]=C(C(i*l)+C(h*n))+C(e*o);f=C(C(C(1)-f)-m);q=C(f*l);l=C(r-g);g=C(p+D);z[a+8>>2]=C(q+C(l*n))+C(g*o);n=C(C(C(s*i)+C(t*h))+C(e*u));o=C(C(C(i*v)+C(h*w))+C(e*x));p=C(C(C(i*y)+C(h*A))+C(e*B));z[a+28>>2]=C(C(j*n)+C(k*o))+C(d*p);r=j;j=C(C(C(s*f)+C(t*l))+C(g*u));m=k;k=C(C(C(f*v)+C(l*w))+C(g*x));q=d;d=C(C(C(f*y)+C(l*A))+C(g*B));z[a+24>>2]=C(C(r*j)+C(m*k))+C(q*d);z[a+16>>2]=C(C(i*n)+C(h*o))+C(e*p);z[a+12>>2]=C(C(i*j)+C(h*k))+C(e*d);z[a+4>>2]=C(C(f*n)+C(l*o))+C(g*p);z[a>>2]=C(C(f*j)+C(l*k))+C(g*d)}function rE(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(!v[a+684>>2]){break a}d=(b<<15^-1)+b|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=v[v[a+660>>2]+((v[a+668>>2]-1&(d>>>16^d))<<2)>>2];if((d|0)==-1){break a}e=v[a+656>>2];f=v[a+652>>2];while(1){if(v[f+(d<<3)>>2]!=(b|0)){d=v[e+(d<<2)>>2];if((d|0)!=-1){continue}break a}break}b=xa-16|0;xa=b;h=f+(d<<3)|0;f=v[a+644>>2]+B(v[h+4>>2],44)|0;d=v[f+4>>2];c=v[v[d+16>>2]+(c<<2)>>2];d=v[d+8>>2];v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;_C(b,8);e=c<<2;d=RC(v[f>>2],v[e+v[v[f+8>>2]>>2]>>2],c,d,b);g=v[b+4>>2];b:{if(g){c:{if(v[d+40>>2]|!d){break c}e=v[d+36>>2];if(!v[e>>2]){break c}c=0;while(1){v[v[v[f+8>>2]>>2]+(v[((c<<2)+e|0)+4>>2]<<2)>>2]=d;c=c+1|0;e=v[d+36>>2];if(c>>>0>2]){continue}break}}i=g>>>0>1?g:1;d=0;while(1){c=0;g=v[v[b>>2]+(d<<2)>>2];e=v[g+36>>2];if(v[e>>2]){while(1){v[v[v[f+8>>2]>>2]+(v[((c<<2)+e|0)+4>>2]<<2)>>2]=g;c=c+1|0;e=v[g+36>>2];if(c>>>0>2]){continue}break}}d=d+1|0;if((i|0)!=(d|0)){continue}break}break b}v[e+v[v[f+8>>2]>>2]>>2]=d}c=v[b+8>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=v[b>>2];if(!c){break d}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}xa=b+16|0;sE(a,v[h+4>>2])}}function eU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a:{if((x[b+4>>1]-5&65535)>>>0>2){break a}b:{c:{if(!v[a+180>>2]){break c}c=(b<<15^-1)+b|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[v[a+156>>2]+((v[a+164>>2]-1&(c>>>16^c))<<2)>>2];if((d|0)==-1){break c}e=v[a+152>>2];f=v[a+148>>2];while(1){c=f+(d<<3)|0;if(v[c>>2]==(b|0)){break b}d=v[e+(d<<2)>>2];if((d|0)!=-1){continue}break}}c=0}if(!c|!v[a+72>>2]){break a}c=0;while(1){d=v[v[a+68>>2]+(c<<2)>>2]+88|0;d:{if(v[d+164>>2]==(b|0)){e:{if(!w[d+156|0]){break e}e=v[d+152>>2];if(!e){break e}hU(v[d+160>>2],e)}v[d+152>>2]=0;f:{if(!w[d+168|0]){break f}e=v[d+164>>2];if(!e){break f}hU(v[d+172>>2],e)}v[d+164>>2]=0;break d}f=v[d+36>>2];g:{if(!f){break g}e=v[d+32>>2];f=e+(f<<2)|0;while(1){if(v[e+4>>2]!=(b|0)){e=v[(v[e>>2]<<2)+99008>>2]+e|0;if((f|0)!=(e|0)){continue}break g}break}v[d+48>>2]=-1;v[d+52>>2]=2146435071;v[d+88>>2]=-1;v[d+92>>2]=-1048577;v[d+80>>2]=-1;v[d+84>>2]=-1048577;v[d+72>>2]=-1;v[d+76>>2]=-1048577;e=d- -64|0;v[e>>2]=-1;v[e+4>>2]=2146435071;v[d+56>>2]=-1;v[d+60>>2]=2146435071}if(v[d+152>>2]==(b|0)){if(w[d+156|0]){hU(v[d+160>>2],b)}v[d+152>>2]=0}}c=c+1|0;if(c>>>0>2]){continue}break}}}function $C(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+12>>2];if(b){b=GC(b);d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+12>>2]=0}b=v[a+36>>2];if(!(!b|!v[a+52>>2])){J9(v[a+28>>2],255,b<<2);b=0;d=v[a+24>>2];e=v[a+32>>2];f=e-1|0;if(f){if(e-2>>>0>=3){i=f&-4;e=0;while(1){c=b|1;v[d+(b<<2)>>2]=c;g=d+(c<<2)|0;c=b|2;v[g>>2]=c;g=d+(c<<2)|0;c=b|3;v[g>>2]=c;b=b+4|0;v[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;v[c>>2]=b;h=h+1|0;if((e|0)!=(h|0)){continue}break}}b=v[a+32>>2]-1|0}else{b=0}v[d+(b<<2)>>2]=-1;v[a+52>>2]=0;v[a+44>>2]=0}v[a+8>>2]=0;b=v[a+60>>2];if(b){b=GC(b);d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+60>>2]=0}b=v[a+84>>2];if(!(!b|!v[a+100>>2])){J9(v[a+76>>2],255,b<<2);b=0;d=v[a+72>>2];e=v[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;v[d+(b<<2)>>2]=c;g=d+(c<<2)|0;c=b|2;v[g>>2]=c;g=d+(c<<2)|0;c=b|3;v[g>>2]=c;b=b+4|0;v[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;v[c>>2]=b;h=h+1|0;if((e|0)!=(h|0)){continue}break}}b=v[a+80>>2]-1|0}else{b=0}v[d+(b<<2)>>2]=-1;v[a+100>>2]=0;v[a+92>>2]=0}v[a>>2]=1;v[a+4>>2]=0;v[a+56>>2]=0}function w$(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0);e=xa-96|0;xa=e;k=z[a+28>>2];l=z[a+32>>2];u=z[d>>2];w=z[d+4>>2];x=z[d+8>>2];y=z[c>>2];A=z[c+4>>2];B=z[c+8>>2];m=z[a+24>>2];n=z[a+8>>2];o=z[a+4>>2];p=z[a>>2];h=z[a+20>>2];i=z[a+44>>2];f=C(z[b+8>>2]-i);q=z[a+12>>2];r=z[a+36>>2];g=C(z[b>>2]-r);s=z[a+40>>2];j=C(z[b+4>>2]-s);t=z[a+16>>2];z[e+84>>2]=C(h*f)+C(C(q*g)+C(j*t));z[e+80>>2]=C(n*f)+C(C(p*g)+C(j*o));z[e+88>>2]=C(l*f)+C(C(m*g)+C(j*k));f=C(B-i);g=C(y-r);j=C(A-s);z[e+68>>2]=C(h*f)+C(C(q*g)+C(t*j));z[e+64>>2]=C(n*f)+C(C(p*g)+C(o*j));z[e+72>>2]=C(l*f)+C(C(m*g)+C(k*j));g=h;h=C(x-i);i=C(u-r);f=C(w-s);z[e+52>>2]=C(g*h)+C(C(q*i)+C(t*f));z[e+48>>2]=C(n*h)+C(C(p*i)+C(o*f));z[e+56>>2]=C(l*h)+C(C(m*i)+C(k*f));b=v[e+84>>2];v[e+32>>2]=v[e+80>>2];v[e+36>>2]=b;b=v[e+92>>2];v[e+40>>2]=v[e+88>>2];v[e+44>>2]=b;b=v[e+68>>2];v[e+16>>2]=v[e+64>>2];v[e+20>>2]=b;b=v[e+76>>2];v[e+24>>2]=v[e+72>>2];v[e+28>>2]=b;b=v[e+52>>2];v[e>>2]=v[e+48>>2];v[e+4>>2]=b;b=v[e+60>>2];v[e+8>>2]=v[e+56>>2];v[e+12>>2]=b;a=v$(e+32|0,e+16|0,e,a+48|0);xa=e+96|0;return a}function tp(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=C(k);var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,A=0,D=0,E=0,F=0;l=xa-32|0;xa=l;a:{if(y[a+36>>2]>=y[a+100>>2]){break a}o=a+40|0;m=v[o>>2];v[o>>2]=m?m:-1;if((m|0)==1){b9(v[37696],8,5611,541,64431,0);break a}v[a+36>>2]=v[a+36>>2]+1;m=a+12|0;r=x[h+16>>1];s=v[h+12>>2];A=v[h+8>>2];D=v[h+4>>2];E=v[h>>2];F=x[g>>1];p=v[a+24>>2];n=p+40|0;h=v[a+20>>2]&2147483647;b:{if(n>>>0<=h>>>0){break b}q=B(n,3);if(h>>>0>=q>>>0){break b}op(m,q)}pp(m,n);h=v[a+12>>2]+v[a+24>>2]|0;v[h+28>>2]=i;v[h+8>>2]=E;u[h+4>>1]=F;v[h>>2]=-16;t[h+38|0]=2;u[h+36>>1]=f;v[h+32>>2]=j;u[h+24>>1]=r;v[h+20>>2]=s;v[h+16>>2]=A;v[h+12>>2]=D;v[a+24>>2]=n;f=v[a+108>>2];v[((f|0)==-16?a+108|0:f+v[a+12>>2]|0)>>2]=p;v[a+108>>2]=p;f=a;h=w[a+112|0];a=x[g>>1];t[f+112|0]=h|a>>>9&1;c:{if((a&768)!=768){a=x[g>>1];break c}b9(v[37696],4,5611,551,13931,0);a=x[g>>1]&-257;u[g>>1]=a}if((a&528)==528){b9(v[37696],4,5611,557,23643,0);a=x[g>>1]&-17;u[g>>1]=a}if(!(!(k>C(0))|!(a&256))){b9(v[37696],4,5611,565,14060,0);k=C(0)}z[l+16>>2]=e;v[l+8>>2]=0;z[l+28>>2]=k;v[l+24>>2]=c;v[l+20>>2]=b;v[l+12>>2]=d;rp(m,l+8|0);v[o>>2]=0}xa=l+32|0}function xT(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=C(0),i=C(0);g=xa-160|0;xa=g;v[g+144>>2]=3;z[g+148>>2]=z[b+40>>2];z[g+152>>2]=z[b+44>>2];z[g+156>>2]=z[b+48>>2];z[g+128>>2]=A[d>>3]-A[c+12>>3];z[g+132>>2]=A[d+8>>3]-A[c+20>>3];z[g+136>>2]=A[d+16>>3]-A[c+28>>3];z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];v[g+96>>2]=3;z[g+100>>2]=z[c+48>>2];z[g+104>>2]=z[c+52>>2];z[g+108>>2]=z[c+56>>2];z[g+80>>2]=z[c+36>>2];z[g+84>>2]=z[c+40>>2];z[g+88>>2]=z[c+44>>2];z[g+64>>2]=z[c+60>>2];z[g+68>>2]=z[c- -64>>2];z[g+72>>2]=z[c+68>>2];z[g+76>>2]=z[c+72>>2];v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;b=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!jV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];i=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+36>>2]=h;z[f+32>>2]=i;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];b=1}xa=g+160|0;return b|0}function RK(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;g=v[a+40>>2];f=g+c|0;e=v[a+44>>2];a:{if(f>>>0>e>>>0){e=e<<1;e=e>>>0>>0?f:e;e=e>>>0>1024?e:1024;v[a+44>>2]=e;i=v[a+36>>2];e=e<<2;if(e){h=v[37696]+12|0;e=Ba[v[v[h>>2]+8>>2]](h,e,24422,13489,890)|0}else{e=0}if(g){I9(e,i,g<<2)}if(!i){break a}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,i);break a}e=v[a+36>>2]}v[a+40>>2]=f;v[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){v[a>>2]=v[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){v[a>>2]=v[b>>2]|-2147483648;v[a+4>>2]=v[b+4>>2]|-2147483648;v[a+8>>2]=v[b+8>>2]|-2147483648;v[a+12>>2]=v[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=v[d+8>>2];if(c&1){e=v[b>>2];v[a>>2]=e|-2147483648;g=d+(e>>>3&536870908)|0;v[g>>2]=v[g>>2]|1<>2];v[a>>2]=f|-2147483648;e=d+(f>>>3&536870908)|0;v[e>>2]=v[e>>2]|1<>2];v[a+4>>2]=f|-2147483648;e=d+(f>>>3&536870908)|0;v[e>>2]=v[e>>2]|1<>2];k=v[h+40>>2];e=v[k+980>>2];h=v[v[h+44>>2]+4>>2]&16777215;f=(h|0)==16777215?-1:h;i=(d|0)!=0;h=xa-16|0;xa=h;d=v[a+8>>2]&2147483647;g=d+1|0;if(g>>>0>=y[e+200>>2]){hI(e,g)}j=v[e+360>>2];v[e+360>>2]=g>>>0>j>>>0?g:j;g=d<<2;v[g+v[e+180>>2]>>2]=c;z[g+v[v[e+192>>2]+4>>2]>>2]=b;c=v[e+196>>2]+(d<<3)|0;v[c>>2]=i|a&-4;a:{if((f|0)==-1){v[c+4>>2]=-1;f=d>>>5|0;g=v[e+148>>2]+(f<<2)|0;i=v[g>>2];c=1<>2]=i&(c^-1);break b}d=v[e+136>>2]+(f<<2)|0;v[d>>2]=c|v[d>>2]}t[e+365|0]=1;break a}v[c+4>>2]=f<<1;t[e+365|0]=1;c=v[v[e+376>>2]+(f<<2)>>2];c:{if(v[c+8>>2]){break c}f=v[c>>2];g=f>>>5<<2;i=g+v[e+148>>2]|0;j=v[i>>2];f=1<>2]=j&(f^-1);break c}g=g+v[e+136>>2]|0;v[g>>2]=f|v[g>>2]}v[h+8>>2]=d;f=v[c+8>>2];d:{if(f>>>0>=(v[c+12>>2]&2147483647)>>>0){pn(c+4|0,h+8|0);break d}v[v[c+4>>2]+(f<<2)>>2]=d;v[c+8>>2]=v[c+8>>2]+1}if(v[c+20>>2]!=-1){break a}d=v[e+392>>2];v[c+20>>2]=d;v[h+12>>2]=c;if(d>>>0>=(v[e+396>>2]&2147483647)>>>0){mI(e+388|0,h+12|0);break a}v[v[e+388>>2]+(d<<2)>>2]=c;v[e+392>>2]=d+1}xa=h+16|0;v[a+8>>2]=v[a+8>>2]|-2147483648;a=v[k+2352>>2];v[a+8>>2]=v[a+8>>2]+1}function KZ(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),t=C(0),u=C(0),v=C(0),x=C(0),y=C(0),A=C(0);a:{if(!f){n=C(-34028234663852886e22);l=C(34028234663852886e22);j=C(34028234663852886e22);o=C(-34028234663852886e22);break a}p=z[i+20>>2];u=z[i+16>>2];v=z[i+12>>2];x=z[i+8>>2];y=z[i+4>>2];A=z[i>>2];i=0;n=C(-34028234663852886e22);k=C(34028234663852886e22);m=C(34028234663852886e22);o=C(-34028234663852886e22);while(1){r=(i<<3)+e|0;q=B(w[h+i|0],12)+g|0;j=z[q+8>>2];s=z[q>>2];t=z[q+4>>2];l=C(C(p*j)+C(C(v*s)+C(t*u)));z[r+4>>2]=l;j=C(C(x*j)+C(C(A*s)+C(y*t)));z[r>>2]=j;o=lm?m:l;k=j>k?k:j;i=i+1|0;if((i|0)!=(f|0)){continue}break}l=C(m+C(-9.999999974752427e-7));j=C(k+C(-9.999999974752427e-7));if(!f){break a}m=C(C(o+m)*C(.5));p=C(C(n+k)*C(.5));i=0;while(1){g=(i<<3)+e|0;k=z[g>>2];z[g>>2]=C(k-j)+(C(k-p)>=C(0)?C(9.999999974752427e-7):C(-9.999999974752427e-7));k=z[g+4>>2];z[g+4>>2]=C(k-l)+(C(k-m)>=C(0)?C(9.999999974752427e-7):C(-9.999999974752427e-7));i=i+1|0;if((i|0)!=(f|0)){continue}break}}z[a>>2]=j;z[b>>2]=l;z[c>>2]=C(n+C(9.999999974752427e-7))-j;z[d>>2]=C(o+C(9.999999974752427e-7))-l}function PM(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=v[a+36>>2];a:{if(!d){break a}b=v[a+32>>2];if(d-1>>>0>=3){g=d&-4;while(1){f=w[(b+B(e,52)|0)+48|0];c=c>>>0>f>>>0?c:f;f=w[(b+B(e|1,52)|0)+48|0];c=c>>>0>f>>>0?c:f;f=w[(b+B(e|2,52)|0)+48|0];c=c>>>0>f>>>0?c:f;f=w[(b+B(e|3,52)|0)+48|0];c=c>>>0>f>>>0?c:f;e=e+4|0;h=h+4|0;if((g|0)!=(h|0)){continue}break}}d=d&3;if(!d){break a}while(1){g=w[(b+B(e,52)|0)+48|0];c=c>>>0>g>>>0?c:g;e=e+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}e=v[a+28>>2];d=v[e+368>>2];b=v[d>>2];if(b){v[d>>2]=v[b>>2]}if(!b){b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?26947:63804;d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,12195,d,19395,82)|0;b=d+19&-16;v[b-4>>2]=b-d;b=hB(b,v[e+372>>2])}v[b+12052>>2]=0;d=b+12048|0;if((v[b+12056>>2]&2147483647)>>>0>>0){zw(d,c)}v[b+12052>>2]=c;v[b+12064>>2]=0;g=b+12060|0;if((v[b+12068>>2]&2147483647)>>>0>>0){zw(g,c)}v[b+12064>>2]=c;c=v[a+36>>2];if(c){f=a+40|0;e=0;while(1){h=v[a+32>>2]+B(e,52)|0;i=v[(v[v[h>>2]+24>>2]<<2)+149632>>2];if(i){Ba[i|0](h,z[a+52>>2],f,v[a+8>>2],v[a+12>>2],v[d>>2],v[g>>2]);c=v[a+36>>2]}e=e+1|0;if(c>>>0>e>>>0){continue}break}}a=v[v[a+28>>2]+368>>2];v[b>>2]=v[a>>2];v[a>>2]=b}function z_(a,b){var c=C(0),d=C(0),e=C(0);v[a>>2]=b;c=z[b>>2];d=z[b+4>>2];e=z[b+8>>2];t[a+118|0]=4;z[a+96>>2]=e;z[a+92>>2]=d;z[a+84>>2]=e;z[a+80>>2]=d;z[a+76>>2]=c;z[a+72>>2]=e;z[a- -64>>2]=c;z[a+60>>2]=e;z[a+44>>2]=d;z[a+32>>2]=d;z[a+28>>2]=c;z[a+16>>2]=c;c=C(-c);z[a+88>>2]=c;d=C(-d);z[a+68>>2]=d;z[a+56>>2]=d;z[a+52>>2]=c;e=C(-e);z[a+48>>2]=e;z[a+40>>2]=c;z[a+36>>2]=e;z[a+24>>2]=e;z[a+20>>2]=d;z[a+12>>2]=e;z[a+8>>2]=d;z[a+4>>2]=c;t[a+138|0]=4;u[a+116>>1]=0;t[a+158|0]=4;u[a+136>>1]=4;t[a+178|0]=4;u[a+156>>1]=8;t[a+198|0]=4;u[a+176>>1]=12;t[a+218|0]=4;u[a+196>>1]=16;u[a+216>>1]=20;v[a+120>>2]=1065353216;v[a+124>>2]=0;v[a+128>>2]=0;c=z[b>>2];v[a+168>>2]=0;v[a+160>>2]=-1082130432;v[a+164>>2]=0;z[a+132>>2]=-c;c=z[b>>2];v[a+188>>2]=0;v[a+180>>2]=0;v[a+184>>2]=1065353216;t[a+179|0]=1;t[a+139|0]=0;z[a+172>>2]=-c;c=z[b+4>>2];v[a+208>>2]=0;v[a+200>>2]=0;v[a+204>>2]=-1082130432;z[a+192>>2]=-c;c=z[b+4>>2];t[a+219|0]=2;t[a+199|0]=0;v[a+148>>2]=1065353216;v[a+140>>2]=0;v[a+144>>2]=0;z[a+212>>2]=-c;c=z[b+8>>2];v[a+108>>2]=-1082130432;v[a+100>>2]=0;v[a+104>>2]=0;z[a+152>>2]=-c;c=z[b+8>>2];t[a+159|0]=0;t[a+119|0]=4;z[a+112>>2]=-c;return a}function DT(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=C(0);g=xa-160|0;xa=g;v[g+144>>2]=2;h=z[b+44>>2];z[g+148>>2]=z[b+40>>2];z[g+152>>2]=h*C(.5);z[g+128>>2]=A[d>>3]-A[c+12>>3];z[g+132>>2]=A[d+8>>3]-A[c+20>>3];z[g+136>>2]=A[d+16>>3]-A[c+28>>3];z[g+112>>2]=z[a+244>>2];z[g+116>>2]=z[a+248>>2];z[g+120>>2]=z[a+252>>2];z[g+124>>2]=z[a+256>>2];v[g+96>>2]=3;z[g+100>>2]=z[c+48>>2];z[g+104>>2]=z[c+52>>2];z[g+108>>2]=z[c+56>>2];z[g+80>>2]=z[c+36>>2];z[g+84>>2]=z[c+40>>2];z[g+88>>2]=z[c+44>>2];z[g+64>>2]=z[c+60>>2];z[g+68>>2]=z[c- -64>>2];z[g+72>>2]=z[c+68>>2];z[g+76>>2]=z[c+72>>2];v[g+40>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+52>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;d=0;u[g+28>>1]=0;v[g+24>>2]=-1;v[g+16>>2]=0;v[g+20>>2]=0;v[g+56>>2]=2139095039;h=z[f+36>>2];u[g+8>>1]=w[a+299|0]?1283:1027;a:{if(!jV(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=z[g+56>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+44>>2];z[f+28>>2]=z[g+48>>2];h=z[g+52>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+32>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+36>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+40>>2];d=1}xa=g+160|0;return d|0}function lc(a){a=a|0;var b=0,c=C(0),d=0;b=maa(252);v[b>>2]=0;v[b+4>>2]=0;v[b+52>>2]=0;v[b+56>>2]=0;v[b+48>>2]=2;v[b+40>>2]=1;v[b+44>>2]=1;v[b+32>>2]=0;v[b+36>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[b+60>>2]=0;v[b+64>>2]=0;v[b+68>>2]=0;v[b+72>>2]=0;v[b+76>>2]=0;v[b+80>>2]=0;v[b+84>>2]=0;v[b+88>>2]=0;v[b+92>>2]=0;z[b+96>>2]=z[a+4>>2]*C(.20000000298023224);c=z[a>>2];v[b+236>>2]=8;v[b+240>>2]=0;v[b+228>>2]=67108864;v[b+232>>2]=262144;v[b+220>>2]=81920;v[b+224>>2]=1048576;v[b+212>>2]=16777216;v[b+216>>2]=524288;v[b+204>>2]=33554432;v[b+208>>2]=25165824;v[b+196>>2]=2122317823;v[b+200>>2]=2122317823;v[b+188>>2]=-25165825;v[b+192>>2]=2122317823;v[b+180>>2]=-25165825;v[b+184>>2]=-25165825;v[b+172>>2]=2139095039;v[b+176>>2]=1053609164;v[b+164>>2]=8192;v[b+168>>2]=1;v[b+156>>2]=65536;v[b+160>>2]=2139095039;v[b+148>>2]=16;v[b+152>>2]=0;v[b+140>>2]=0;v[b+144>>2]=128;v[b+132>>2]=100;v[b+136>>2]=0;v[b+124>>2]=1;v[b+128>>2]=1;v[b+116>>2]=0;v[b+120>>2]=0;v[b+108>>2]=0;v[b+112>>2]=64;c=C(c*C(.03999999910593033));z[b+104>>2]=c;z[b+100>>2]=c;d=v[a+4>>2];v[b+244>>2]=v[a>>2];v[b+248>>2]=d;return b|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=0,l=C(0),m=C(0),n=0,o=0,p=0;b=v[a+28>>2];e=b;l=z[a+32>>2];m=z[b+96>>2];n=v[a+40>>2]+(v[b+88>>2]<<5)|0;f=xa-2064|0;xa=f;i=v[b+8>>2]&2147483647;o=v[v[b>>2]+11936>>2];h=v[a+44>>2];b=v[h+368>>2];a=v[b>>2];if(a){v[b>>2]=v[a>>2]}if(!a){a=v[37696];b=Ba[v[v[a>>2]+20>>2]](a)|0?26947:63804;b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,12195,b,19395,82)|0;a=b+19&-16;v[a-4>>2]=a-b;a=hB(a,v[h+372>>2])}b=a+11856|0;v[b>>2]=0;v[b+4>>2]=0;if(i){p=a+11852|0;while(1){c=v[(g<<2)+o>>2];d=v[c+32>>2];b=v[v[e>>2]+12144>>2]+B(g,52)|0;v[b>>2]=v[c+28>>2];v[b+4>>2]=d;v[b+48>>2]=v[c+76>>2];d=v[c+72>>2];v[b+40>>2]=v[c+68>>2];v[b+44>>2]=d;d=v[c+64>>2];v[b+32>>2]=v[c+60>>2];v[b+36>>2]=d;d=v[c+56>>2];v[b+24>>2]=v[c+52>>2];v[b+28>>2]=d;d=v[c+48>>2];v[b+16>>2]=v[c+44>>2];v[b+20>>2]=d;d=v[c+40>>2];v[b+8>>2]=v[c+36>>2];v[b+12>>2]=d;c=0;d=v[(v[v[b>>2]+24>>2]<<2)+149640>>2];if(d){c=Ba[d|0](b,p,(j<<5)+n|0,z[e+92>>2],m,l,f+12|0,v[e>>2]+11836|0,f+16|0)|0}t[b+49|0]=c;j=j- -64|0;k=c+k|0;g=g+1|0;if((i|0)!=(g|0)){continue}break}}b=v[h+368>>2];v[a>>2]=v[b>>2];v[b>>2]=a;a=v[e>>2];v[a+11956>>2]=v[a+11956>>2]+k;xa=f+2064|0}function zK(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;a:{b=v[a+304>>2];e=v[b>>2];v[b>>2]=0;if(!e){break a}b=e;while(1){h=v[b>>2];f=v[a+976>>2]<<5;v[b+504>>2]=0;v[b+508>>2]=0;v[b+516>>2]=0;v[b+520>>2]=0;c=b+7196|0;J9(v[b+7192>>2],0,v[c>>2]<<2);d=f+31>>>5|0;if(d>>>0>(v[c>>2]&2147483647)>>>0){c=v[37696];g=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d<<2,24422,17999,438)|0;c=v[b+7192>>2];b:{if(!c){break b}I9(g,c,v[b+7196>>2]<<2);if(v[b+7196>>2]<0){break b}f=v[b+7192>>2];if(!f){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}c=v[b+7196>>2];J9(g+(c<<2)|0,0,d-c<<2);v[b+7196>>2]=d;v[b+7192>>2]=g}c=b+7208|0;J9(v[b+7204>>2],0,v[c>>2]<<2);if(d>>>0>(v[c>>2]&2147483647)>>>0){c=v[37696];g=Ba[v[v[c+12>>2]+8>>2]](c+12|0,d<<2,24422,17999,438)|0;c=v[b+7204>>2];c:{if(!c){break c}I9(g,c,v[b+7208>>2]<<2);if(v[b+7208>>2]<0){break c}f=v[b+7204>>2];if(!f){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,f)}c=v[b+7208>>2];J9(g+(c<<2)|0,0,d-c<<2);v[b+7208>>2]=d;v[b+7204>>2]=g}v[b+7216>>2]=0;v[b+7220>>2]=0;b=b+7224|0;v[b>>2]=0;v[b+4>>2]=0;b=h;if(b){continue}break}if(!e){break a}while(1){b=v[e>>2];h=v[a+304>>2];v[e>>2]=v[h>>2];v[h>>2]=e;e=b;if(b){continue}break}}}function iR(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=xa-16|0;xa=f;b=v[a+28>>2];a=v[b+976>>2];e=v[a+1008>>2];v[f+12>>2]=e;a=v[a+1012>>2];v[f+8>>2]=a;l=b+2484|0;v[l>>2]=0;yP(b+2480|0,e);m=b+2496|0;v[m>>2]=0;yP(b+2492|0,a);n=v[b+2480>>2];o=v[b+2492>>2];a=0;i=xa-48|0;xa=i;g=v[b+976>>2];b=v[g+988>>2]&2147483647;a:{b:{if(!b){b=0;break b}e=v[g+984>>2];while(1){c=v[e+(a<<2)>>2];if(c){b=a;break a}a=a+1|0;if((b|0)!=(a|0)){continue}break}}c=0}a=v[g+1024>>2];Ba[v[v[a>>2]+84>>2]](i+8|0,a);a=o;e=n;c:{if(!c){break c}p=v[g+312>>2]-1|0;k=v[g+988>>2]&2147483647;q=v[g+320>>2];while(1){d=Raa(c)|b<<5;c=c-1&c;d:{if(c){break d}h=b+1|0;h=h>>>0>k>>>0?h:k;j=v[g+984>>2];while(1){b=b+1|0;if(k>>>0<=b>>>0){c=0;b=h;break d}c=v[j+(b<<2)>>2];if(!c){continue}break}}if((d|0)==-1){break c}h=v[v[g+332>>2]+(d>>>q<<2)>>2]+B(d&p,80)|0;d=v[h+68>>2];d=v[i+40>>2]+(v[(i+8|0)+((d&7)<<2)>>2]+(d>>>3|0)<<4)|0;j=w[d+13|0];d=w[d+15|0];e:{if(j>>>0>d>>>0){v[e>>2]=h;e=e+4|0;break e}if(d>>>0<=j>>>0){break e}v[a>>2]=h;a=a+4|0}if(c){continue}break}}v[f+12>>2]=e-n>>2;v[f+8>>2]=a-o>>2;xa=i+48|0;v[l>>2]=v[f+12>>2];v[m>>2]=v[f+8>>2];xa=f+16|0}function OP(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=xa-288|0;xa=g;e=v[b>>2];a:{if(!e){break a}f=v[a+2416>>2];b:{if(f){JP(a,e,f,c,d);break b}t[g+264|0]=1;v[g+272>>2]=0;v[g+276>>2]=64;f=g+8|0;v[g+268>>2]=f;JP(a,e,f,c,d);c=v[g+276>>2];if((c|0)<0|!(c&2147483647)){break b}c=v[g+268>>2];if((c|0)==(g+8|0)|!c){break b}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c:{if(!(w[v[e+100>>2]+28|0]&32)|w[v[e+44>>2]+9|0]==2){break c}d=v[e+144>>2];f=d>>>7|0;c=v[e+40>>2];if(f>>>0>=v[c+4728>>2]<<5>>>0){break c}c=v[c+4724>>2]+(d>>>10&4194300)|0;d=v[c>>2];j=c,k=Vaa(-2,f)&d,v[j>>2]=k}d:{e:{if(!v[b+176>>2]|w[v[b+176>>2]+31|0]!=1){break e}b=v[b+176>>2];if(w[(w[b+31|0]==1?b:0)+31|0]!=1){break e}v[a+2672>>2]=v[a+2672>>2]-1;break d}v[a+2668>>2]=v[a+2668>>2]-1}c=v[a+2392>>2];Ba[v[v[e>>2]>>2]](e)|0;if(w[c+24|0]){OO(v[c+12>>2],v[c+16>>2])}a=0;b=v[c+16>>2]-1|0;if((b|0)<0){break a}i=B(v[c+4>>2],v[c>>2]);f=v[c+12>>2];while(1){d=a+b>>1;h=v[f+B(d,12)>>2];if(!(h>>>0>e>>>0|h+i>>>0<=e>>>0)){a=f+B(d,12)|0;v[e>>2]=v[a+4>>2];v[a+4>>2]=e;if(w[c+24|0]){v[c+8>>2]=d}t[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}}xa=g+288|0}function bI(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0;j=xa-16|0;xa=j;if(v[a+4>>2]!=(b|0)){v[a+4>>2]=b;m=a+8|0;Ba[v[v[a>>2]+12>>2]](a,m,c,d,e,f);e=v[a+16>>2];if(e){f=0;while(1){b=v[a+28>>2]+(f<<3)|0;k=v[b+4>>2];c=k&2147483647;l=v[b>>2];d=l&2147483647;a:{if((l|0)<0){k=v[g>>2];l=v[k+(d<<3)>>2];k=v[k+(c<<3)>>2];v[j+4>>2]=c;v[j>>2]=d;c=l&3;d=k&3;c=B((c|0)>(d|0)?c:d,12)+h|0;d=v[c+4>>2];b:{if(d>>>0>=(v[c+8>>2]&2147483647)>>>0){sI(c,j);break b}k=v[j+4>>2];d=v[c>>2]+B(d,12)|0;v[d>>2]=v[j>>2];v[d+4>>2]=k;v[d+8>>2]=v[j+8>>2];v[c+4>>2]=v[c+4>>2]+1}v[b>>2]=v[b>>2]&2147483647;v[b+4>>2]=v[b+4>>2]&2147483647;f=f+1|0;break a}if((k|0)<0){v[b+4>>2]=c;f=f+1|0;break a}b=v[g>>2];n=v[b+(d<<3)>>2];c:{if(n>>>0<4){break c}b=v[b+(c<<3)>>2];if(b>>>0<4){break c}v[j+4>>2]=c;v[j>>2]=d;c=n&3;b=b&3;b=B((b|0)<(c|0)?c:b,12)+i|0;c=v[b+4>>2];if(c>>>0>=(v[b+8>>2]&2147483647)>>>0){sI(b,j);break c}d=v[j+4>>2];c=v[b>>2]+B(c,12)|0;v[c>>2]=v[j>>2];v[c+4>>2]=d;v[c+8>>2]=v[j+8>>2];v[b+4>>2]=v[b+4>>2]+1}b=l&65535|k<<16;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;$H(m,v[a+12>>2]&(b>>>16^b),f);e=e-1|0}if(e>>>0>f>>>0){continue}break}}YH(m)}xa=j+16|0}function XL(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=v[d+28>>2];a:{if((g|0)==1073741823){break a}h=a>>>0>>0?a:b;i=a>>>0>b>>>0?a:b;a=h|i<<16;a=(a<<15^-1)+a|0;a=B(a>>10^a,9);a=a>>6^a;a=(a<<11^-1)+a|0;j=a>>16^a;a=j&v[d+36>>2];k=v[d+8>>2];b:{if(!k){break b}b=v[v[d>>2]+(a<<2)>>2];if((b|0)==1073741823){break b}l=v[d+4>>2];m=v[d+20>>2];while(1){f=(b<<3)+m|0;if(v[f>>2]==(h|0)&v[f+4>>2]==(i|0)){break a}b=v[(b<<2)+l>>2];if((b|0)!=1073741823){continue}break}}if(g>>>0>=k>>>0){a=g+1|0;a=a>>>1|a;a=a>>>2|a;a=a>>>4|a;a=a>>>8|a;a=a>>>16|a;v[d+36>>2]=a;a=a+1|0;v[d+8>>2]=a;UL(d,a>>>0>y[d+12>>2]);g=v[d+28>>2];a=v[d+36>>2]&j}f=v[d+20>>2]+(g<<3)|0;v[f+4>>2]=i;v[f>>2]=h;t[v[d+24>>2]+g|0]=8;a=v[d>>2]+(a<<2)|0;v[v[d+4>>2]+(v[d+28>>2]<<2)>>2]=v[a>>2];b=v[d+28>>2];v[d+28>>2]=b+1;v[a>>2]=b}b=f;if(b){f=b-v[d+20>>2]>>3;a=v[d+24>>2];g=f+a|0;if(w[g|0]&8){t[g|0]=0;a=v[d+24>>2]+(b-v[d+20>>2]>>3)|0;t[a|0]=w[a|0]|1;f=b-v[d+20>>2]|0;g=f>>>3|0;a=v[e+4>>2];if((a|0)==v[e+8>>2]){WL(e,c);f=b-v[d+20>>2]|0;a=v[e+4>>2]}v[e+4>>2]=a+1;v[v[e>>2]+(a<<2)>>2]=g;a=v[d+24>>2]+(f>>3)|0;t[a|0]=w[a|0]|4;f=b-v[d+20>>2]>>3;a=v[d+24>>2]}a=a+f|0;t[a|0]=w[a|0]&253}}function j4(a,b,c,d,e){var f=C(0),g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=0,A=0,D=C(0),E=C(0),F=C(0);if(!(!a|!b|(!c|!d))){q=a&1;f=C(C(1)/C(a>>>0));a:{if((a|0)==1){a=0;break a}r=a&-2;a=0;while(1){g=B(a|1,12)+b|0;h=B(a,12)+b|0;n=C(C(z[g+8>>2]*f)+C(C(z[h+8>>2]*f)+n));o=C(C(z[g+4>>2]*f)+C(C(z[h+4>>2]*f)+o));p=C(C(z[g>>2]*f)+C(C(z[h>>2]*f)+p));a=a+2|0;i=i+2|0;if((r|0)!=(i|0)){continue}break}}if(q){a=B(a,12)+b|0;n=C(C(z[a+8>>2]*f)+n);p=C(C(z[a>>2]*f)+p);o=C(C(z[a+4>>2]*f)+o)}q=c>>>0>1?c:1;r=e^1;c=0;i=1;while(1){f=C(0);s=C(0);t=C(0);a=B(c,12)+d|0;y=v[a+4>>2];e=B(y,12)+b|0;g=B(v[a>>2],12)+b|0;u=z[g>>2];j=C(z[e>>2]-u);A=v[a+8>>2];h=B(A,12)+b|0;w=z[g+4>>2];k=C(z[h+4>>2]-w);m=C(z[h>>2]-u);l=C(z[e+4>>2]-w);x=C(C(j*k)-C(m*l));F=l;l=z[g+8>>2];D=C(z[h+8>>2]-l);E=C(z[e+8>>2]-l);k=C(C(F*D)-C(k*E));j=C(C(E*m)-C(D*j));m=C(C(x*x)+C(C(k*k)+C(j*j)));if(m>C(0)){f=C(C(1)/C(K(m)));t=C(x*f);s=C(j*f);f=C(k*f)}e=!(C(C(C(n*t)+C(C(p*f)+C(o*s)))-C(C(l*t)+C(C(u*f)+C(w*s))))>C(0));b:{if(e|r){i=e&i;break b}v[a+8>>2]=y;v[a+4>>2]=A;i=0}c=c+1|0;if((q|0)!=(c|0)){continue}break}}return i}function s0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),u=C(0),x=C(0),A=C(0);f=xa-48|0;xa=f;l=z[a+56>>2];m=z[a+44>>2];n=z[a+32>>2];o=z[a+60>>2];p=z[a+48>>2];q=z[a+24>>2];r=z[a+36>>2];s=z[a+20>>2];h=z[c>>2];k=z[a+28>>2];i=z[c+4>>2];u=z[a+40>>2];j=z[c+8>>2];x=z[a+52>>2];A=z[a- -64>>2];z[f+40>>2]=C(C(C(h*k)+C(i*u))+C(j*x))+A;z[f+36>>2]=o+C(C(C(h*q)+C(i*r))+C(j*p));z[f+32>>2]=l+C(C(C(h*s)+C(i*n))+C(j*m));g=w[a+17|0];c=g?e:d;h=z[c>>2];i=z[c+4>>2];j=z[c+8>>2];z[f+24>>2]=A+C(C(C(k*h)+C(u*i))+C(x*j));z[f+20>>2]=o+C(C(C(q*h)+C(r*i))+C(p*j));z[f+16>>2]=l+C(C(C(s*h)+C(n*i))+C(m*j));c=g?d:e;h=z[c>>2];j=C(k*h);k=z[c+4>>2];i=z[c+8>>2];z[f+8>>2]=A+C(C(j+C(u*k))+C(x*i));z[f+4>>2]=o+C(C(C(q*h)+C(r*k))+C(p*i));z[f>>2]=l+C(C(C(s*h)+C(n*k))+C(m*i));c=1;a:{if(!u$(a+84|0,a+68|0,f+32|0,f+16|0,f)){break a}d=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];c=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;c=1;break a}c=v[a+16>>2];if(c>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=d;c=1;break a}v[a+16>>2]=c+1;c=1}xa=f+48|0;return c|0}function oT(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=B(g,56);if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?25709:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=B(c,56)+e|0;d=v[a>>2];c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=f;f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];z[c+48>>2]=z[d+48>>2];d=d+56|0;c=c+56|0;if(h>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=B(c,56)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;z[c+24>>2]=z[b+24>>2];z[c+28>>2]=z[b+28>>2];z[c+32>>2]=z[b+32>>2];z[c+36>>2]=z[b+36>>2];z[c+40>>2]=z[b+40>>2];z[c+44>>2]=z[b+44>>2];z[c+48>>2]=z[b+48>>2];b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=g;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function K2(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0);q=z[e+8>>2];r=z[e+20>>2];s=z[e+32>>2];i=C(C(C(q+r)+s)*C(.3333333432674408));g=C(i-z[a+8>>2]);j=z[b+8>>2];t=z[e>>2];u=z[e+12>>2];v=z[e+24>>2];k=C(C(C(t+u)+v)*C(.3333333432674408));l=C(k-z[a>>2]);n=z[b>>2];w=z[e+4>>2];x=z[e+16>>2];y=z[e+28>>2];p=C(C(C(w+x)+y)*C(.3333333432674408));m=C(p-z[a+4>>2]);o=z[b+4>>2];h=C(C(g*j)+C(C(l*n)+C(m*o)));h=h>C(0)?h:C(0);h=c>h?h:c;g=C(g-C(j*h));A=C(g*g);g=C(l-C(n*h));h=C(m-C(o*h));h=C(C(C(K(C(A+C(C(g*g)+C(h*h)))))-d)+C(-9999999747378752e-20));a:{b:{if(hk?k:j)){break a}f=C(f-i);a=f>j&(c>2];v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;a:{if(!f){break a}Lm(c,f);while(1){b:{c:{d:{e:{f:{g:{h:{d=v[v[b+48>>2]+(g<<4)>>2];switch(x[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(v[d+40>>2]){break b}v[c+12>>2]=d;if(Ba[v[v[d>>2]+72>>2]](d)|0){break b}e=v[c+4>>2];if(e>>>0>=(v[c+8>>2]&2147483647)>>>0){Mm(c,c+12|0);break b}v[v[c>>2]+(e<<2)>>2]=d;v[c+4>>2]=e+1;break b}if(v[d+40>>2]){break b}v[c+12>>2]=d;if(Ba[v[v[d>>2]+72>>2]](d)|0){break b}e=v[c+4>>2];if(e>>>0>=(v[c+8>>2]&2147483647)>>>0){Mm(c,c+12|0);break b}v[v[c>>2]+(e<<2)>>2]=d;v[c+4>>2]=e+1;break b}if(Ba[v[v[d>>2]+96>>2]](d)|0){break b}Ba[v[v[a>>2]+36>>2]](a,d);break b}if(Ba[v[v[d>>2]+96>>2]](d)|0){break b}Ba[v[v[a>>2]+36>>2]](a,d);break b}Ba[v[v[a>>2]+64>>2]](a,d);break b}Ba[v[v[a>>2]+52>>2]](a,d)}g=g+1|0;if((g|0)!=(f|0)){continue}break}b=v[c+4>>2];if(!b){break a}aq(a,v[c>>2],b,0)}a=v[c+8>>2];i:{if((a|0)<0|!(a&2147483647)){break i}a=v[c>>2];if(!a){break i}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+16|0}function Y5(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=C(0),s=C(0),t=C(0);h=xa-48|0;xa=h;n=z[c+20>>2];d=z[c+12>>2];i=z[c+8>>2];j=z[c>>2];k=z[c+4>>2];p=z[c+16>>2];q=B(b,28);l=q+a|0;r=z[c+24>>2];z[l+44>>2]=r;z[l+40>>2]=n;z[l+36>>2]=p;o=d;d=C(C(1)/C(K(C(C(d*d)+C(C(i*i)+C(C(j*j)+C(k*k)))))));e=C(o*d);z[l+32>>2]=e;f=C(i*d);z[l+28>>2]=f;g=C(k*d);z[l+24>>2]=g;m=C(j*d);z[l+20>>2]=m;c=v[a+76>>2];l=h+40|0;Ba[v[v[c>>2]+28>>2]](c,l,h+44|0);Z4(h+8|0,v[l+(b<<2)>>2]);s=z[h+28>>2];t=z[h+32>>2];o=z[h+24>>2];b=v[a+80>>2]+q|0;i=z[h+16>>2];j=z[h+12>>2];d=z[h+20>>2];k=z[h+8>>2];z[b+28>>2]=C(i*f)+C(C(j*g)+C(C(d*e)+C(m*k)));z[b+24>>2]=C(m*j)+C(C(C(d*f)-C(e*i))-C(k*g));z[b+20>>2]=C(f*k)+C(C(C(d*g)-C(e*j))-C(i*m));z[b+16>>2]=C(g*i)+C(C(C(d*m)-C(e*k))-C(j*f));e=C(p-o);e=C(e+e);f=C(n-s);f=C(f+f);g=C(r-t);g=C(g+g);m=C(C(C(C(-k)*e)-C(f*j))-C(i*g));n=C(C(d*d)+C(-.5));z[b+40>>2]=C(C(g*n)+C(d*C(C(j*e)-C(k*f))))-C(i*m);z[b+36>>2]=C(C(f*n)+C(d*C(C(k*g)-C(i*e))))-C(j*m);z[b+32>>2]=C(C(e*n)+C(d*C(C(i*f)-C(j*g))))-C(k*m);a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a);xa=h+48|0}function eJ(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;h=xa-16|0;xa=h;d=a+4|0;g=v[a+8>>2];if(g){i=a+1916|0;while(1){f=v[v[d>>2]+(e<<2)>>2];c=x[f+4>>1];u[f+4>>1]=c-1;a:{if(c>>>0>=2){u[f>>1]=x[f>>1]&65533;break a}c=v[f+16>>2];g=v[c+16>>2];c=v[c+20>>2];v[h+4>>2]=c>>>0>>0?g:c;v[h>>2]=c>>>0>g>>>0?g:c;FI(i,h);c=v[f+16>>2];if(c){v[a+1560>>2]=v[a+1560>>2]-1;v[c>>2]=v[a+1568>>2];v[a+1568>>2]=c;v[f+16>>2]=0}v[a+684>>2]=v[a+684>>2]-1;v[f>>2]=v[a+692>>2];v[a+692>>2]=f;g=v[a+8>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}b:{if(!b){v[a+8>>2]=0;break b}v[h+12>>2]=0;b=v[d+4>>2];if((b|0)<0){c=v[d>>2];b=c+(b<<2)|0;while(1){v[b>>2]=v[h+12>>2];b=b+4|0;if(c>>>0>b>>>0){continue}break}}v[d+4>>2]=0;b=0;i=v[a+8>>2];c:{if(!i){break c}c=i<<2;if(!c){break c}b=v[37696];a=b+12|0;b=(k=a,l=c,m=Ba[v[v[b>>2]+20>>2]](b)|0?55835:63804,n=16608,o=553,j=v[v[a>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}e=v[d>>2];a=v[d+4>>2];if((a|0)>0){c=(a<<2)+b|0;a=b;while(1){v[a>>2]=v[e>>2];e=e+4|0;a=a+4|0;if(c>>>0>a>>>0){continue}break}e=v[d>>2]}if(!(!e|v[d+8>>2]<0)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}v[d+8>>2]=i;v[d>>2]=b}xa=h+16|0}function eh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=Ba[v[v[b>>2]+4>>2]](b)|0;c=v[a+4>>2];a:{if(!c){break a}g=v[c+40>>2];b:{if(!g){h=1;break b}h=g&1;if((g|0)!=1){i=g&-2;c=0;while(1){j=d;d=f<<3;d=(j+(Ba[v[v[e>>2]+8>>2]](e,v[(d+v[v[a+4>>2]+36>>2]|0)+4>>2])^1)|0)+(Ba[v[v[e>>2]+8>>2]](e,v[(v[v[a+4>>2]+36>>2]+(d|8)|0)+4>>2])^1)|0;f=f+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}}if(h){d=(Ba[v[v[e>>2]+8>>2]](e,v[(v[v[a+4>>2]+36>>2]+(f<<3)|0)+4>>2])^1)+d|0}if(!d){c=v[a+4>>2];h=1;break b}h=0;c=Rm(v[37389]);if(d>>>0>=g>>>0){break b}f=g-d|0;if(f>>>0>(v[c+44>>2]&2147483647)>>>0){fh(c,f)}h=!d;f=0;while(1){d=v[v[a+4>>2]+36>>2]+(f<<3)|0;c:{if(!(Ba[v[v[e>>2]+8>>2]](e,v[d+4>>2])|0)){break c}i=v[c+40>>2];if(i>>>0>=(v[c+44>>2]&2147483647)>>>0){gh(c,d);break c}j=v[c+36>>2]+(i<<3)|0;t[j|0]=w[d|0];v[j+4>>2]=v[d+4>>2];v[c+40>>2]=i+1}f=f+1|0;if((g|0)!=(f|0)){continue}break}}Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,c,48);d:{if(w[c+32|0]){break d}e=v[c+36>>2];if(!e){break d}d=v[c+44>>2];if(!(v[c+40>>2]|d&2147483647)){break d}Ba[v[v[b>>2]+8>>2]](b,e,d<<3)}if(h){break a}Sm(v[37389],c)}Ba[v[v[b>>2]+16>>2]](b,v[a>>2])}function XM(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=xa-16|0;xa=e;f=v[a+52>>2];a:{if(f>>>0>=513){while(1){b=wr(v[v[a+72>>2]+620>>2],80);i=v[a+64>>2];j=v[a+68>>2];k=z[a+60>>2];l=v[a+56>>2];m=v[a+48>>2];n=v[a+44>>2];o=v[a+40>>2];p=v[a+36>>2];q=v[a+32>>2];r=v[a+28>>2];h=v[a+72>>2];g=v[h+632>>2];c=v[h+636>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=g;v[b+12>>2]=c;v[b>>2]=133052;g=d<<2;v[b+28>>2]=g+r;v[b+32>>2]=g+q;c=d<<6;v[b+36>>2]=c+p;v[b+40>>2]=c+o;v[b+44>>2]=B(d,48)+n;v[b+48>>2]=g+m;c=f-d|0;v[b+52>>2]=c>>>0<512?c:512;v[b+56>>2]=l;z[b+60>>2]=k;v[b+72>>2]=h;v[b+64>>2]=i;v[b+68>>2]=j;c=v[a+20>>2];v[b+24>>2]=1;v[b+20>>2]=c;if(c){Ba[v[v[c>>2]+16>>2]](c);v[b+16>>2]=v[v[b+20>>2]+16>>2];c=v[b>>2]}else{c=133052}Ba[v[c+20>>2]](b);f=v[a+52>>2];d=d+512|0;if(f>>>0>d>>>0){continue}break}break a}v[e+12>>2]=0;v[e+8>>2]=0;HM(v[a+28>>2],v[a+32>>2],v[a+36>>2],v[a+40>>2],v[a+44>>2],v[a+48>>2],f,v[a+56>>2],z[a+60>>2],e+12|0,e+8|0);b=v[a+64>>2];c=v[b>>2];d=b;b=v[e+12>>2];v[d>>2]=(b|0)<(c|0)?c:b;a=v[a+68>>2];b=v[a>>2];d=a;a=v[e+8>>2];v[d>>2]=(a|0)<(b|0)?b:a}xa=e+16|0}function GG(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?47129:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?47129:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=((v[a+276>>2]<<6)+f|0)+-64|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c+-64|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function Ct(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0;c=xa-32|0;xa=c;g=z[b+12>>2];h=z[b+8>>2];i=z[b>>2];j=z[b+4>>2];f=C(C(1)/C(K(C(C(g*g)+C(C(h*h)+C(C(i*i)+C(j*j)))))));z[c+12>>2]=g*f;z[c+8>>2]=h*f;z[c+4>>2]=j*f;z[c>>2]=i*f;z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];b=a+48|0;e=xa-16|0;xa=e;a:{b:{c:{d:{d=a+32|0;k=v[d+4>>2];l=k>>>30|0;switch(l-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[d>>2]+4785|0]){break b}}z[b+32>>2]=z[c>>2];z[b+36>>2]=z[c+4>>2];z[b+40>>2]=z[c+8>>2];z[b+44>>2]=z[c+12>>2];z[b+48>>2]=z[c+16>>2];z[b+52>>2]=z[c+20>>2];z[b+56>>2]=z[c+24>>2];d=v[d-12>>2];if(!d){break a}e:{f:{switch(x[d+4>>1]-5|0){case 0:d=d- -64|0;break e;case 8:d=d- -64|0;break e;default:break f}}d=d- -64|0}if((l|0)==1){break a}t[e|0]=w[b- -64|0];v[e+8>>2]=4;TJ(d,b,e+8|0,e,0);break a}b=v[d+8>>2];if(!b){b=Qu(v[d>>2],k>>>24&15);v[d+8>>2]=b}z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];z[b+12>>2]=z[c+12>>2];z[b+16>>2]=z[c+16>>2];z[b+20>>2]=z[c+20>>2];z[b+24>>2]=z[c+24>>2];Yu(v[d>>2],d);v[d+4>>2]=v[d+4>>2]|4}xa=e+16|0;rt(a,73797);xa=c+32|0}function xJ(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?27313:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?27313:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],20)+f|0)-20|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-20|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function uJ(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?36843:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?36843:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],68)+f|0)-68|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-68|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function sJ(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?32891:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?32891:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],40)+f|0)-40|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-40|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function rJ(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?36711:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?36711:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],60)+f|0)-60|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-60|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function LC(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?30445:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?30445:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],20)+f|0)-20|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-20|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function KC(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?31931:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?31931:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],96)+f|0)-96|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-96|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function GX(a,b,c,d,e,f,g,h){var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),w=C(0),x=C(0),y=0;u[a+12>>1]=2;y=z[c>>2]<=C(0);if(y){a:{if(g){u[a+12>>1]=3;i=z[f+12>>2];s=C(C(i*i)+C(-.5));j=z[f+8>>2];m=z[d+8>>2];p=z[f>>2];k=z[d>>2];q=z[f+4>>2];l=z[d+4>>2];r=C(C(j*m)+C(C(p*k)+C(q*l)));n=C(C(C(i*C(C(p*l)-C(k*q)))+C(s*m))+C(j*r));n=C(n+n);o=C(C(p*r)+C(C(s*k)+C(i*C(C(q*m)-C(l*j)))));o=C(o+o);m=C(C(q*r)+C(C(s*l)+C(i*C(C(j*k)-C(m*p)))));k=C(m+m);l=C(C(1)/C(K(C(C(n*n)+C(C(o*o)+C(k*k))))));m=C(n*l);k=C(k*l);l=C(o*l);r=z[e+8>>2];n=z[e>>2];o=z[e+4>>2];x=C(C(j*r)+C(C(p*n)+C(q*o)));t=C(C(C(i*C(C(p*o)-C(n*q)))+C(s*r))+C(j*x));t=C(z[f+24>>2]+C(t+t));w=C(C(q*x)+C(C(s*o)+C(i*C(C(j*n)-C(r*p)))));w=C(z[f+20>>2]+C(w+w));i=C(C(p*x)+C(C(s*n)+C(i*C(C(q*r)-C(o*j)))));j=C(z[f+16>>2]+C(i+i));i=z[c>>2];b:{if(h){t=C(t-C(i*m));w=C(w-C(i*k));j=C(j-C(i*l));break b}m=C(-m);k=C(-k);l=C(-l)}z[a+28>>2]=l;z[a+40>>2]=i;z[a+16>>2]=j;z[a+36>>2]=m;z[a+32>>2]=k;z[a+24>>2]=t;z[a+20>>2]=w;break a}v[a+40>>2]=0;i=z[b>>2];j=z[b+4>>2];z[a+36>>2]=-z[b+8>>2];z[a+32>>2]=-j;z[a+28>>2]=-i}v[a+8>>2]=-1}return y}function EH(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?44393:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?44393:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=(B(v[a+276>>2],48)+f|0)-48|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-48|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function y_(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=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);l=z[b+4>>2];m=z[b>>2];n=z[b+8>>2];j=v[a+12>>2];a:{if(!j){g=C(34028234663852886e22);h=C(-34028234663852886e22);break a}g=C(C(z[c+8>>2]*n)+C(C(z[c>>2]*m)+C(z[c+4>>2]*l)));h=C(C(z[c+20>>2]*n)+C(C(z[c+12>>2]*m)+C(l*z[c+16>>2])));i=C(C(z[c+32>>2]*n)+C(C(z[c+24>>2]*m)+C(l*z[c+28>>2])));q=C(C(C(g*z[d+8>>2])+C(h*z[d+20>>2]))+C(i*z[d+32>>2]));k=C(C(C(g*z[d+4>>2])+C(h*z[d+16>>2]))+C(i*z[d+28>>2]));i=C(C(C(g*z[d>>2])+C(h*z[d+12>>2]))+C(i*z[d+24>>2]));d=v[a+28>>2];b:{if(!(j&1)){h=C(-34028234663852886e22);g=C(34028234663852886e22);b=j;break b}g=C(C(z[d+8>>2]*q)+C(C(z[d>>2]*i)+C(k*z[d+4>>2])));h=C(G(g,C(-34028234663852886e22)));g=C(F(g,C(34028234663852886e22)));d=d+12|0;b=j-1|0}if((j|0)==1){break a}while(1){o=C(C(z[d+8>>2]*q)+C(C(z[d>>2]*i)+C(k*z[d+4>>2])));h=h>o?h:o;p=C(C(z[d+20>>2]*q)+C(C(z[d+12>>2]*i)+C(k*z[d+16>>2])));h=h>p?h:p;g=g>2]*n)+C(C(z[c+36>>2]*m)+C(l*z[c+40>>2])));z[e>>2]=k+g;z[f>>2]=h+g}function xX(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);c=z[a+16>>2];d=z[a+20>>2];f=z[a+4>>2];e=z[a+8>>2];z[b+36>>2]=C(z[a>>2]+z[a+12>>2])*C(.5);z[b+44>>2]=C(e+d)*C(.5);z[b+40>>2]=C(f+c)*C(.5);d=z[a+20>>2];f=z[a+16>>2];e=z[a+8>>2];h=z[a+12>>2];g=z[a>>2];i=z[a+4>>2];c=z[a+24>>2];z[b+56>>2]=c;z[b+52>>2]=c;j=c;c=C(e-d);d=C(c*c);c=C(g-h);g=C(c*c);c=C(i-f);k=C(K(C(d+C(g+C(c*c)))));z[b+48>>2]=j+C(k*C(.5));e=C(0);h=C(1);c=C(0);d=C(0);j=C(1);g=C(0);f=C(0);i=C(1);a:{if(k==C(0)){break a}c=C(z[a+20>>2]-z[a+8>>2]);h=C(z[a+12>>2]-z[a>>2]);e=C(z[a+16>>2]-z[a+4>>2]);d=C(K(C(C(c*c)+C(C(h*h)+C(e*e)))));if(d>C(0)){d=C(C(1)/d);c=C(c*d);h=C(h*d);e=C(e*d)}if(C(D(e))<=C(.9998999834060669)){j=C(0);f=C(-h);g=f;d=c;i=C(K(C(C(h*h)+C(C(c*c)+C(0)))));if(i>C(0)){d=C(C(1)/i);g=C(d*f);j=C(d*C(0));d=C(c*d)}f=C(C(c*d)+C(g*f));l=C(e*g);i=C(d*C(-e));break a}j=C(0);i=C(-e);d=C(1);f=C(K(C(C(e*e)+C(C(c*c)+C(0)))));if(!(f>C(0))){f=c;break a}g=C(C(1)/f);i=C(g*i);f=C(c*g);l=C(g*C(0));g=C(0)}z[b+24>>2]=l;z[b+12>>2]=d;z[b+8>>2]=c;z[b+4>>2]=e;z[b>>2]=h;z[b+32>>2]=i;z[b+28>>2]=f;z[b+20>>2]=g;z[b+16>>2]=j}function bz(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=v[37696];d=c+12|0;c=(i=d,j=B(b,112)+131|0,k=Ba[v[v[c>>2]+20>>2]](c)|0?46527:63804,l=16608,m=553,h=v[v[d>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0);if(!c){break a}e=c+131&-128;v[e-4>>2]=e-c}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=B(c,112)+e|0;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];z[c+48>>2]=z[d+48>>2];z[c+52>>2]=z[d+52>>2];z[c+56>>2]=z[d+56>>2];z[c+60>>2]=z[d+60>>2];z[c- -64>>2]=z[d- -64>>2];g=v[d+72>>2];v[c+68>>2]=v[d+68>>2];v[c+72>>2]=g;v[c+76>>2]=v[d+76>>2];z[c+80>>2]=z[d+80>>2];z[c+84>>2]=z[d+84>>2];z[c+88>>2]=z[d+88>>2];z[c+92>>2]=z[d+92>>2];z[c+96>>2]=z[d+96>>2];z[c+100>>2]=z[d+100>>2];z[c+104>>2]=z[d+104>>2];v[c+108>>2]=v[d+108>>2];d=d+112|0;c=c+112|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-v[d-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=e}function QH(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=xa-16|0;xa=g;c=v[a+284>>2];if(c){b=v[37696];f=Ba[v[v[b>>2]+20>>2]](b)|0?36573:63804;f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,c,f,18373,180)|0}else{f=0}v[g+12>>2]=f;b=v[a+268>>2];a:{if(b>>>0>=(v[a+272>>2]&2147483647)>>>0){b=0;c=a+4|0;d=v[c+268>>2];h=d&2147483647?d<<1:1;b:{if(!h){break b}d=h<<2;if(!(w[c+256|0]|d>>>0>256)){t[c+256|0]=1;b=c;break b}if(!d){break b}b=v[37696];e=b+12|0;b=(l=e,m=d,n=Ba[v[v[b>>2]+20>>2]](b)|0?36573:63804,o=16608,p=553,k=v[v[e>>2]+8>>2],Ba[k](l|0,m|0,n|0,o|0,p|0)|0)}e=v[c+264>>2];j=(e<<2)+b|0;if((e|0)>0){i=v[c+260>>2];d=b;while(1){v[d>>2]=v[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}v[j>>2]=v[g+12>>2];c:{if(v[c+268>>2]<0){break c}d=v[c+260>>2];if((d|0)==(c|0)){t[c+256|0]=0;break c}if(!d){break c}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);e=v[c+264>>2]}v[c+268>>2]=h;v[c+260>>2]=b;v[c+264>>2]=e+1;break a}v[v[a+264>>2]+(b<<2)>>2]=f;v[a+268>>2]=b+1}b=((v[a+276>>2]<<5)+f|0)-32|0;if(f>>>0<=b>>>0){c=v[a+288>>2];while(1){v[b>>2]=c;c=b;b=c-32|0;if(f>>>0<=b>>>0){continue}break}v[a+288>>2]=c}xa=g+16|0}function Yo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0),n=C(0);c=xa-32|0;xa=c;d=vh(a);g=z[b+12>>2];h=z[b+8>>2];i=z[b>>2];j=z[b+4>>2];e=C(C(1)/C(K(C(C(g*g)+C(C(h*h)+C(C(i*i)+C(j*j)))))));g=C(g*e);z[c+12>>2]=g;h=C(h*e);z[c+8>>2]=h;j=C(j*e);z[c+4>>2]=j;e=C(i*e);z[c>>2]=e;i=z[b+16>>2];z[c+16>>2]=i;m=z[b+20>>2];z[c+20>>2]=m;n=z[b+24>>2];z[c+24>>2]=n;k=a+48|0;a:{b:{c:{d:{f=v[a+52>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[k>>2]+4785|0]){break b}}nS(a- -64|0,c);break a}b=v[a+56>>2];if(!b){b=Qu(v[a+48>>2],f>>>24&15);v[a+56>>2]=b}z[b+96>>2]=e;z[b+120>>2]=n;z[b+116>>2]=m;z[b+112>>2]=i;z[b+108>>2]=g;z[b+104>>2]=h;z[b+100>>2]=j;Yu(v[a+48>>2],k);v[a+52>>2]=v[a+52>>2]|64}if(d){mu(a+20|0,d+5584|0,a);b=d+5616|0;v[b>>2]=v[b>>2]+1}if(v[a+40>>2]){b9(v[37696],8,12785,101,73892,0);bC(v[a+40>>2],a)}b=0;d=v[a+16>>2];e:{if(!d){k=0;d=0;break e}k=v[d+40>>2];d=v[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(w[l|0]){continue}break}f=v[l+4>>2];if(!f){break f}Gg(f,a);continue}break}xa=c+32|0}function dZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0),O=C(0),P=C(0),Q=C(0);e=v[b+8>>2];t=z[e+52>>2];u=z[e+36>>2];w=z[e+20>>2];i=z[e+56>>2];x=z[e+40>>2];y=z[e+24>>2];h=v[b+4>>2];j=z[h+72>>2];k=z[h- -64>>2];l=z[h+68>>2];m=z[h+56>>2];n=z[h+52>>2];o=z[h+88>>2];A=z[b+56>>2];B=z[b+24>>2];D=z[b+40>>2];p=z[h+80>>2];E=z[b+48>>2];F=z[b+32>>2];q=z[h+84>>2];G=z[b+52>>2];H=z[b+20>>2];I=z[b+36>>2];J=z[e+48>>2];K=z[e+32>>2];L=z[e>>2];M=z[e+16>>2];N=z[e+4>>2];O=z[e+8>>2];r=z[h+48>>2];P=z[b+16>>2];d=z[c+8>>2];f=z[c>>2];g=z[c+4>>2];v[a+12>>2]=0;Q=i;s=j;j=C(C(A*d)+C(C(B*f)+C(g*D)));i=C(C(E*d)+C(C(P*f)+C(g*F)));d=C(C(G*d)+C(C(H*f)+C(g*I)));f=C(C(s*j)+C(C(k*i)+C(l*d)));g=C(C(o*j)+C(C(p*i)+C(d*q)));b=f>g;d=C(C(m*j)+C(C(r*i)+C(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;z[a+8>>2]=Q+C(C(x*d)+C(C(O*f)+C(y*g)));z[a+4>>2]=t+C(C(u*d)+C(C(N*f)+C(g*w)));z[a>>2]=J+C(C(K*d)+C(C(L*f)+C(g*M)))}function jJ(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=xa-16|0;xa=g;c=v[b+28>>2];b=v[b+32>>2];d=c>>>0>b>>>0;v[g+12>>2]=d?c:b;v[g+8>>2]=d?b:c;a=a+1956|0;a:{if(!v[a+36>>2]){break a}e=v[g+12>>2];h=v[g+8>>2];b=e<<14&-65536|h>>>2&65535;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=v[a+12>>2]+((v[a+20>>2]-1&(b>>>16^b))<<2)|0;b=v[d>>2];if((b|0)==-1){break a}i=v[a+8>>2];f=v[a+4>>2];c=f+B(b,12)|0;if(!(v[c>>2]==(h|0)&(e|0)==v[c+4>>2])){while(1){d=(b<<2)+i|0;b=v[d>>2];if((b|0)==-1){break a}c=f+B(b,12)|0;if(v[c>>2]!=(h|0)|(e|0)!=v[c+4>>2]){continue}break}}e=b<<2;v[d>>2]=v[e+i>>2];d=v[a+36>>2]-1|0;v[a+36>>2]=d;v[a+32>>2]=v[a+32>>2]+1;if((b|0)!=(d|0)){d=f+B(d,12)|0;h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;c=B(b,12);v[(c+f|0)+8>>2]=v[d+8>>2];f=v[a+8>>2];v[f+e>>2]=v[f+(v[a+36>>2]<<2)>>2];c=c+v[a+4>>2]|0;c=v[c+4>>2]<<14&-65536|v[c>>2]>>>2&65535;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[a+12>>2]+((v[a+20>>2]-1&(c>>>16^c))<<2)|0;c=v[d>>2];e=v[a+36>>2];if((c|0)!=(e|0)){while(1){d=f+(c<<2)|0;c=v[d>>2];if((e|0)!=(c|0)){continue}break}}v[d>>2]=b}v[a+28>>2]=v[a+28>>2]-1}xa=g+16|0}function Oa(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=maa((g=-1,h=Saa(a,0,48,0),i=Aa,i?g:h));a:{if(!a){break a}b=d;c=B(a,48);e=c-48|0;f=((e>>>0)/48|0)+1&3;if(f){a=0;while(1){v[b+16>>2]=0;v[b+20>>2]=0;u[b+12>>1]=0;v[b+8>>2]=-1;v[b>>2]=0;v[b+4>>2]=0;v[b+40>>2]=2139095039;v[b+24>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;b=b+48|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}if(e>>>0<144){break a}a=d+c|0;while(1){v[b+16>>2]=0;v[b+20>>2]=0;u[b+12>>1]=0;v[b+8>>2]=-1;v[b>>2]=0;v[b+4>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=2139095039;v[b+96>>2]=0;v[b+100>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;c=b- -64|0;v[c>>2]=0;v[c+4>>2]=0;u[b+60>>1]=0;v[b+56>>2]=-1;v[b+72>>2]=0;v[b+76>>2]=0;v[b+80>>2]=0;v[b+84>>2]=0;u[b+108>>1]=0;v[b+104>>2]=-1;v[b+88>>2]=2139095039;v[b+128>>2]=0;v[b+132>>2]=0;v[b+120>>2]=0;v[b+124>>2]=0;v[b+112>>2]=0;v[b+116>>2]=0;v[b+152>>2]=-1;v[b+144>>2]=0;v[b+148>>2]=0;u[b+156>>1]=0;v[b+136>>2]=2139095039;v[b+160>>2]=0;v[b+164>>2]=0;v[b+168>>2]=0;v[b+172>>2]=0;v[b+176>>2]=0;v[b+180>>2]=0;v[b+184>>2]=2139095039;b=b+192|0;if((a|0)!=(b|0)){continue}break}}return d|0}function Kx(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=0,p=0,q=C(0),r=0,s=0,t=0,u=C(0);p=v[a+336>>2];if(p){r=v[b+12>>2];s=v[b+4>>2];t=v[a+332>>2];while(1){a=o<<5;b=v[(a+t|0)+16>>2];f=z[b+112>>2];g=z[b+120>>2];q=z[b+116>>2];h=z[b+4>>2];m=a+s|0;l=z[m+4>>2];i=z[b+12>>2];j=z[b+8>>2];e=z[m>>2];k=z[b>>2];d=z[m+8>>2];n=z[m+24>>2];u=z[m+20>>2];a=a+r|0;c=z[b+124>>2];c=c==C(0)?C(0):C(C(1)/c);z[a>>2]=C(c*z[m+16>>2])+z[a>>2];z[a+4>>2]=C(c*u)+z[a+4>>2];z[a+8>>2]=C(c*n)+z[a+8>>2];c=g==C(0)?C(0):C(C(1)/g);d=C(d+d);e=C(e+e);l=C(l+l);n=C(C(j*d)+C(C(k*e)+C(h*l)));g=C(C(i*i)+C(-.5));c=C(c*C(C(j*n)+C(C(d*g)-C(i*C(C(k*l)-C(e*h))))));c=C(c+c);f=C((f==C(0)?C(0):C(C(1)/f))*C(C(k*n)+C(C(e*g)-C(i*C(C(h*d)-C(l*j))))));f=C(f+f);d=C((q==C(0)?C(0):C(C(1)/q))*C(C(h*n)+C(C(l*g)-C(i*C(C(j*e)-C(d*k))))));d=C(d+d);e=C(C(j*c)+C(C(k*f)+C(h*d)));z[a+16>>2]=z[a+16>>2]+C(C(k*e)+C(C(f*g)+C(i*C(C(h*c)-C(d*j)))));z[a+20>>2]=C(C(h*e)+C(C(d*g)+C(i*C(C(j*f)-C(c*k)))))+z[a+20>>2];z[a+24>>2]=C(C(j*e)+C(C(c*g)+C(i*C(C(k*d)-C(f*h)))))+z[a+24>>2];o=o+1|0;if((p|0)!=(o|0)){continue}break}}}function I9(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){pa(a|0,b|0,c|0);return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){t[c|0]=w[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){v[c>>2]=v[b>>2];v[c+4>>2]=v[b+4>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=v[b+12>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=v[b+20>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=v[b+28>>2];v[c+32>>2]=v[b+32>>2];v[c+36>>2]=v[b+36>>2];v[c+40>>2]=v[b+40>>2];v[c+44>>2]=v[b+44>>2];v[c+48>>2]=v[b+48>>2];v[c+52>>2]=v[b+52>>2];v[c+56>>2]=v[b+56>>2];v[c+60>>2]=v[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){v[c>>2]=v[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){t[c|0]=w[b|0];t[c+1|0]=w[b+1|0];t[c+2|0]=w[b+2|0];t[c+3|0]=w[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){t[c|0]=w[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function I2(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);g=z[f+8>>2];q=z[c+8>>2];h=C(z[e+8>>2]-q);i=z[f>>2];r=z[c>>2];j=C(z[e>>2]-r);s=z[c+4>>2];l=C(z[e+4>>2]-s);k=z[f+4>>2];t=C(C(g*h)+C(C(i*j)+C(l*k)));m=z[d+8>>2];o=z[d>>2];n=l;l=z[d+4>>2];p=C(C(m*h)+C(C(o*j)+C(n*l)));h=C(0);j=C(C(m*m)+C(C(o*o)+C(l*l)));n=C(C(g*g)+C(C(i*i)+C(k*k)));k=C(C(m*g)+C(C(o*i)+C(l*k)));g=C(C(j*n)-C(k*k));a:{if(g==C(0)){break a}g=C(C(C(p*n)-C(k*t))/g);if(gC(1))){break a}h=C(1)}b:{if(n!=C(0)){g=C(0);i=C(C(C(h*k)-t)/n);if(iC(1)){break b}g=h;break b}g=h;if(!(i>C(1))){break b}g=C(0);if(j==C(0)){i=C(1);break b}i=C(1);h=C(C(p+k)/j);if(hC(1))){break b}g=C(1);break b}g=C(0);i=C(0);if(j==C(0)){break b}h=C(p/j);if(hC(1)){break b}g=h}z[a+8>>2]=q+C(m*g);z[a+4>>2]=s+C(l*g);z[a>>2]=r+C(o*g);g=z[e>>2];h=z[f>>2];j=z[e+4>>2];m=z[f+4>>2];z[b+8>>2]=C(i*z[f+8>>2])+z[e+8>>2];z[b+4>>2]=j+C(i*m);z[b>>2]=g+C(i*h)}function EV(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0);c=z[b+16>>2];d=z[b+20>>2];e=z[b+4>>2];f=z[b+8>>2];z[a+36>>2]=C(z[b>>2]+z[b+12>>2])*C(.5);z[a+44>>2]=C(f+d)*C(.5);z[a+40>>2]=C(e+c)*C(.5);c=C(z[b+20>>2]-z[b+8>>2]);d=C(z[b+12>>2]-z[b>>2]);e=C(z[b+16>>2]-z[b+4>>2]);i=C(K(C(C(c*c)+C(C(d*d)+C(e*e)))));a:{if(i!=C(0)){f=C(C(1)/i);c=C(c*f);z[a+8>>2]=c;g=C(e*f);z[a+4>>2]=g;h=C(d*f);z[a>>2]=h;if(C(D(g))<=C(.9998999834060669)){z[a+12>>2]=c;d=C(-h);z[a+20>>2]=d;v[a+16>>2]=0;e=c;f=d;h=C(K(C(C(h*h)+C(C(c*c)+C(0)))));if(h>C(0)){e=C(C(1)/h);f=C(e*d);z[a+20>>2]=f;z[a+16>>2]=e*C(0);e=C(c*e);z[a+12>>2]=e}z[a+24>>2]=g*f;z[a+32>>2]=e*C(-g);z[a+28>>2]=C(c*e)+C(f*d);break a}v[a+12>>2]=1065353216;v[a+16>>2]=0;e=C(-g);z[a+32>>2]=e;z[a+28>>2]=c;v[a+20>>2]=0;v[a+24>>2]=0;d=C(K(C(C(g*g)+C(C(c*c)+C(0)))));if(!(d>C(0))){break a}d=C(C(1)/d);z[a+32>>2]=d*e;z[a+28>>2]=c*d;z[a+24>>2]=d*C(0);break a}v[a+24>>2]=0;v[a+28>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a>>2]=1065353216;v[a+4>>2]=0;v[a+32>>2]=1065353216;v[a+16>>2]=1065353216;v[a+20>>2]=0}c=z[b+24>>2];z[a+56>>2]=c;z[a+52>>2]=c;z[a+48>>2]=c+C(i*C(.5))}function fC(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=B(b,24)+24|0;if(d){e=v[37696]+12|0;f=Ba[v[v[e>>2]+8>>2]](e,d,24422,10330,61)|0}d=b<<3;if(d){e=v[37696]+12|0;g=Ba[v[v[e>>2]+8>>2]](e,d,24422,10330,62)|0}d=b<<2;a:{if(!d){e=0;d=0;break a}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,d,24422,10330,63)|0;h=v[37696]+12|0;d=Ba[v[v[h>>2]+8>>2]](h,d,24422,10330,64)|0}h=!d|(!e|(!f|!g));b:{if(h){if(f){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,f)}if(g){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,g)}if(e){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,e)}if(!d){break b}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,d);break b}c=v[a+8>>2];if(c){I9(f,c,B(v[a>>2],24))}c=v[a+12>>2];if(c){I9(g,c,v[a>>2]<<3)}c=v[a+20>>2];if(c){I9(e,c,v[a>>2]<<2)}c=v[a+16>>2];if(c){I9(d,c,v[a+4>>2]<<2)}v[a+4>>2]=b;b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+16>>2]=0;b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+20>>2]=e;v[a+16>>2]=d;v[a+12>>2]=g;v[a+8>>2]=f}return!h}function fp(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=xa-16|0;xa=h;e=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(e){e=e-16|0}else{e=0}f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15;i=w[(d&1?v[c+8>>2]:(v[((g<<2)+89188|0)+12>>2]+c|0)+8|0)|0];j=i&8;a:{if(!(b|!j)){Ba[v[v[a>>2]+128>>2]](a);b=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[b+4>>2];g=c>>>24&15;f=v[((g<<2)+89188|0)+12>>2];d=i&247;b:{c:{d:{switch((c>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break c}break;case 1:break c;default:break d}}t[h|0]=d;QE(b+f|0,h);break b}c=v[b+8>>2];if(!c){c=Qu(v[b>>2],g);v[b+8>>2]=c}t[c|0]=d;Yu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}if(!e|!v[a+16>>2]){break a}qh(a+12|0);break a}if(!b|j){break a}if(e){ph(a+12|0);f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15}b=a+f|0;e=i|8;f=v[((g<<2)+89188|0)+12>>2];e:{f:{g:{switch((d>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break f}break;case 1:break f;default:break g}}t[h+8|0]=e;QE(c+f|0,h+8|0);break e}d=v[b+8>>2];if(!d){d=Qu(v[b>>2],g);v[b+8>>2]=d}t[d|0]=e;Yu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}Ba[v[v[a>>2]+124>>2]](a)}xa=h+16|0}function Ro(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=xa-16|0;xa=h;e=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(e){e=e-16|0}else{e=0}f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15;i=w[(d&1?v[c+8>>2]:(v[((g<<2)+89188|0)+12>>2]+c|0)+8|0)|0];j=i&8;a:{if(!(b|!j)){Ba[v[v[a>>2]+340>>2]](a);b=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[b+4>>2];g=c>>>24&15;f=v[((g<<2)+89188|0)+12>>2];d=i&247;b:{c:{d:{switch((c>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break c}break;case 1:break c;default:break d}}t[h|0]=d;QE(b+f|0,h);break b}c=v[b+8>>2];if(!c){c=Qu(v[b>>2],g);v[b+8>>2]=c}t[c|0]=d;Yu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}if(!e|!v[a+16>>2]){break a}qh(a+12|0);break a}if(!b|j){break a}if(e){ph(a+12|0);f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15}b=a+f|0;e=i|8;f=v[((g<<2)+89188|0)+12>>2];e:{f:{g:{switch((d>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break f}break;case 1:break f;default:break g}}t[h+8|0]=e;QE(c+f|0,h+8|0);break e}d=v[b+8>>2];if(!d){d=Qu(v[b>>2],g);v[b+8>>2]=d}t[d|0]=e;Yu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}Ba[v[v[a>>2]+336>>2]](a)}xa=h+16|0}function Fj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=xa-16|0;xa=h;e=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(e){e=e-16|0}else{e=0}f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15;i=w[(d&1?v[c+8>>2]:(v[((g<<2)+89188|0)+12>>2]+c|0)+8|0)|0];j=i&8;a:{if(!(b|!j)){Ba[v[v[a>>2]+292>>2]](a);b=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[b+4>>2];g=c>>>24&15;f=v[((g<<2)+89188|0)+12>>2];d=i&247;b:{c:{d:{switch((c>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break c}break;case 1:break c;default:break d}}t[h|0]=d;QE(b+f|0,h);break b}c=v[b+8>>2];if(!c){c=Qu(v[b>>2],g);v[b+8>>2]=c}t[c|0]=d;Yu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}if(!e|!v[a+16>>2]){break a}qh(a+12|0);break a}if(!b|j){break a}if(e){ph(a+12|0);f=v[((x[a+4>>1]<<2)+86240|0)+72>>2];c=f+a|0;d=v[c+4>>2];g=d>>>24&15}b=a+f|0;e=i|8;f=v[((g<<2)+89188|0)+12>>2];e:{f:{g:{switch((d>>>30|0)-2|0){case 0:if(w[v[b>>2]+4785|0]){break f}break;case 1:break f;default:break g}}t[h+8|0]=e;QE(c+f|0,h+8|0);break e}d=v[b+8>>2];if(!d){d=Qu(v[b>>2],g);v[b+8>>2]=d}t[d|0]=e;Yu(v[b>>2],b);v[b+4>>2]=v[b+4>>2]|1}Ba[v[v[a>>2]+288>>2]](a)}xa=h+16|0}function B2(a,b,c,d){var e=0,f=C(0),g=C(0),h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);f=z[d>>2];v[a>>2]=0;i=v[b+384>>2];a:{if(!i){break a}s=C(f*f);while(1){i=i-1|0;d=(i<<6)+b|0;g=z[d+24>>2];l=z[d+40>>2];f=z[d+8>>2];j=z[d>>2];k=z[d+4>>2];m=C(z[c+56>>2]+C(C(z[c+40>>2]*f)+C(C(z[c+8>>2]*j)+C(k*z[c+24>>2]))));o=C(z[c+48>>2]+C(C(z[c+32>>2]*f)+C(C(z[c>>2]*j)+C(k*z[c+16>>2]))));p=z[d+16>>2];q=z[d+32>>2];j=C(z[c+52>>2]+C(C(z[c+36>>2]*f)+C(C(z[c+4>>2]*j)+C(k*z[c+20>>2]))));k=z[d+20>>2];r=z[d+36>>2];f=C(C(l*C(m-g))+C(C(C(o-p)*q)+C(C(j-k)*r)));g=C(g-C(m-C(l*f)));l=C(g*g);g=C(p-C(o-C(q*f)));m=C(g*g);g=C(k-C(j-C(r*f)));if(C(l+C(m+C(g*g)))>s){e=v[b+384>>2]-1|0;v[b+384>>2]=e;e=(e<<6)+b|0;h=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=h;v[d+48>>2]=v[e+48>>2];h=v[e+44>>2];v[d+40>>2]=v[e+40>>2];v[d+44>>2]=h;h=v[e+36>>2];v[d+32>>2]=v[e+32>>2];v[d+36>>2]=h;h=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=h;h=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=h;h=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=h;if(i){continue}break a}z[d+44>>2]=f;n=f>2]=n;if(i){continue}break}}}function OR(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=xa-16|0;xa=f;d=v[a+48>>2];a:{if(!d){break a}c=v[v[v[a+4>>2]+40>>2]+2168>>2];a=x[d>>1];if(!(a&2)){u[d>>1]=a|2;v[f+12>>2]=d;a=v[c+8>>2];b:{if(a>>>0>=(v[c+12>>2]&2147483647)>>>0){a=0;b=v[c+12>>2];g=b&2147483647?b<<1:1;c:{if(!g){break c}b=g<<2;if(!b){break c}a=v[37696];e=a+12|0;a=(k=e,l=b,m=Ba[v[v[a>>2]+20>>2]](a)|0?55835:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}e=v[c+8>>2];i=(e<<2)+a|0;if((e|0)>0){h=v[c+4>>2];b=a;while(1){v[b>>2]=v[h>>2];h=h+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}v[i>>2]=v[f+12>>2];d:{if(v[c+12>>2]<0){break d}b=v[c+4>>2];if(!b){break d}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,b);e=v[c+8>>2]}v[c+12>>2]=g;v[c+4>>2]=a;v[c+8>>2]=e+1;break b}v[v[c+4>>2]+(a<<2)>>2]=d;v[c+8>>2]=a+1}u[d+4>>1]=x[d+4>>1]+1}if(v[d+16>>2]){break a}a=JJ(c);v[d+16>>2]=a;if(!a){break a}b=v[d+8>>2];v[a+16>>2]=v[b+48>>2];v[a+20>>2]=v[v[d+12>>2]+48>>2];b=v[b+44>>2];v[a+24>>2]=v[((w[b+9|0]<<2)+149664|0)+40>>2]+b;b=a;a=v[v[d+12>>2]+44>>2];v[b+28>>2]=v[((w[a+9|0]<<2)+149664|0)+40>>2]+a}xa=f+16|0}function M5(a,b,c,d,e,f,g,h){var i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0);i=xa+-64|0;xa=i;F=z[d+12>>2];G=z[d+16>>2];H=z[d+8>>2];I=z[g+12>>2];J=z[g+16>>2];K=z[g+8>>2];j=z[g+20>>2];q=z[d+20>>2];l=z[c>>2];m=z[f>>2];n=z[c+4>>2];o=z[f+4>>2];p=z[b>>2];t=z[b+4>>2];r=z[g+24>>2];u=z[f+8>>2];k=C(r*u);s=z[d+24>>2];w=z[c+8>>2];x=z[b+8>>2];y=C(C(s*w)+x);z[i+56>>2]=k+y;A=C(r*o);B=C(t+C(s*n));z[i+52>>2]=A+B;D=C(r*m);E=C(p+C(s*l));z[i+48>>2]=D+E;L=k;k=C(x+C(q*w));z[i+40>>2]=L+k;n=C(t+C(q*n));z[i+36>>2]=A+n;l=C(p+C(q*l));z[i+32>>2]=D+l;p=C(j*u);z[i+24>>2]=p+k;o=C(j*o);z[i+20>>2]=o+n;m=C(j*m);z[i+16>>2]=m+l;z[i+8>>2]=p+y;z[i+4>>2]=o+B;z[i>>2]=m+E;c=i+48|0;d=i+32|0;k=j;j=I>C(0)?C(0):K>C(0)?C(0):J;b=C(r+j)>h?16711680:C(k-j)C(0)?C(0):H>C(0)?C(0):G;b=C(s+h)>e?16711680:C(q-h)>2]+28>>2]](a,c,d,b);f=d;d=i+16|0;Ba[v[v[a>>2]+28>>2]](a,f,d,b);Ba[v[v[a>>2]+28>>2]](a,d,i,b);Ba[v[v[a>>2]+28>>2]](a,i,c,b);xa=i- -64|0}function dP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0;h=v[a+24>>2];g=v[v[a+976>>2]+1156>>2];f=v[a+36>>2];a:{if(!f){break a}if(!b){while(1){c=wr(g,40);i=z[a+1084>>2];d=v[a+16>>2];j=v[a+20>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=d;v[c+12>>2]=j;z[c+36>>2]=i;d=f-e|0;v[c+32>>2]=d>>>0<1024?d:1024;v[c+28>>2]=(e<<2)+h;v[c>>2]=135172;v[c+24>>2]=1;d=v[c+16>>2];Ba[v[v[d>>2]+72>>2]](d,c);e=e+1024|0;if(f>>>0>e>>>0){continue}break a}}while(1){c=wr(g,40);i=z[a+1084>>2];d=v[a+16>>2];j=v[a+20>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=d;v[c+12>>2]=j;z[c+36>>2]=i;d=f-e|0;v[c+32>>2]=d>>>0<1024?d:1024;v[c+28>>2]=(e<<2)+h;v[c>>2]=135172;v[c+20>>2]=b;v[c+24>>2]=1;Ba[v[v[b>>2]+16>>2]](b);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);e=e+1024|0;if(f>>>0>e>>>0){continue}break}}if(w[a+2361|0]&32){c=wr(g,40);e=v[a+1012>>2];g=v[a+16>>2];a=v[a+20>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+8>>2]=g;v[c+12>>2]=a;v[c+36>>2]=e;v[c+32>>2]=f;v[c+28>>2]=h;v[c>>2]=135228;v[c+20>>2]=b;v[c+24>>2]=1;if(b){Ba[v[v[b>>2]+16>>2]](b);v[c+16>>2]=v[v[c+20>>2]+16>>2];a=v[c>>2]}else{a=135228}Ba[v[a+20>>2]](c)}}function FD(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=C(0),i=0,j=C(0),k=C(0),l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0);i=xa-16|0;xa=i;a:{if(!e){break a}t[a+337|0]=1;m=v[a+292>>2];n=v[a+300>>2];while(1){l=g<<2;f=B(v[l+c>>2],24)+d|0;o=z[f+4>>2];j=z[f+16>>2];p=z[f+8>>2];k=z[f+20>>2];h=z[f+12>>2];q=z[f>>2];r=C(C(h-q)*C(.004999999888241291));f=m+B(v[n+(v[b+l>>2]<<2)>>2],24)|0;z[f+12>>2]=h+r;z[f>>2]=q-r;h=k;k=C(C(k-p)*C(.004999999888241291));z[f+20>>2]=h+k;h=j;j=C(C(j-o)*C(.004999999888241291));z[f+16>>2]=h+j;z[f+8>>2]=p-k;z[f+4>>2]=o-j;g=g+1|0;if((g|0)!=(e|0)){continue}break}if(!w[a+336|0]|!v[a+4>>2]){break a}t[a+338|0]=1;m=a+352|0;n=a+52|0;l=v[a+296>>2];g=0;while(1){f=v[v[a+300>>2]+(v[(g<<2)+b>>2]<<2)>>2];v[i+12>>2]=f;b:{c:{if(f>>>0>=y[a+316>>2]){break c}c=v[v[a+312>>2]+(f<<2)>>2];if((c|0)==-1){break c}SB(v[a+4>>2],c);break b}pD(n,l+(f<<3)|0,f)}d:{if(v[a+268>>2]-3>>>0>1){break d}f=v[a+356>>2];if(f>>>0>=(v[a+360>>2]&2147483647)>>>0){pn(m,i+12|0);break d}v[v[a+352>>2]+(f<<2)>>2]=v[i+12>>2];v[a+356>>2]=v[a+356>>2]+1}g=g+1|0;if((g|0)!=(e|0)){continue}break}}xa=i+16|0}function Iy(a,b,c,d,e){var f=0,g=0,h=0;f=xa-16|0;xa=f;if(!(!c|!d)){h=d;g=v[c>>2]+1|0;d=v[d>>2];v[h>>2]=d>>>0>>0?g:d;v[c>>2]=v[c>>2]+1}a:{b:{if(!e){break b}c=v[a+92>>2];if(!c){break b}d=c-1|0;c=v[v[a+88>>2]+(d<<2)>>2];v[a+92>>2]=d;v[f+12>>2]=c;a=v[b+4>>2];if(a>>>0>=(v[b+8>>2]&2147483647)>>>0){Dy(b,f+12|0);c=v[f+12>>2];break a}v[v[b>>2]+(a<<2)>>2]=c;v[b+4>>2]=a+1;c=v[f+12>>2];break a}c=v[a+116>>2];if(c){d=c-1|0;c=v[v[a+112>>2]+(d<<2)>>2];v[a+116>>2]=d;v[f+8>>2]=c;d=v[b+4>>2];c:{if(d>>>0>=(v[b+8>>2]&2147483647)>>>0){Dy(b,f+8|0);break c}v[v[b>>2]+(d<<2)>>2]=c;v[b+4>>2]=d+1}b=v[a+152>>2]+1|0;v[a+152>>2]=b;c=a;a=v[a+156>>2];v[c+156>>2]=a>>>0>>0?b:a;c=v[f+8>>2];break a}d=v[a+140>>2];c=0;if((d|0)==v[a+144>>2]){break a}v[a+140>>2]=d+1;c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,16384,24422,10233,234)|0;v[f+4>>2]=c;if(c){d=v[b+4>>2];d:{if(d>>>0>=(v[b+8>>2]&2147483647)>>>0){Dy(b,f+4|0);break d}v[v[b>>2]+(d<<2)>>2]=c;v[b+4>>2]=d+1}b=v[a+152>>2]+1|0;v[a+152>>2]=b;c=a;a=v[a+156>>2];v[c+156>>2]=a>>>0>>0?b:a;c=v[f+4>>2];break a}v[a+140>>2]=v[a+140>>2]-1;c=0}xa=f+16|0;return c}function mC(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=xa-32|0;a:{if(v[a+16>>2]+(v[a+12>>2]+(v[a+8>>2]+(v[a+4>>2]+v[a>>2]|0)|0)|0)>>>0>15){while(1){v[k+28>>2]=k;b=v[k+28>>2];d=v[b+16>>2]&2147483640|4;c=v[b+12>>2]&2147483640|3;e=v[b+8>>2]&2147483640|2;f=v[b+4>>2]&2147483640|1;b=v[b>>2]&2147483640;g=b>>>0>>0?f:b;h=e>>>0>g>>>0?e:g;i=c>>>0>h>>>0?c:h;j=d>>>0>i>>>0?d:i;d=d>>>0>>0?d:i;c=c>>>0>>0?c:h;e=e>>>0>>0?e:g;b=b>>>0>f>>>0?f:b;f=b>>>0>>0?e:b;g=c>>>0>f>>>0?c:f;h=d>>>0>g>>>0?d:g;i=h>>>0>j>>>0?j:h;d=d>>>0>>0?d:g;c=c>>>0>>0?c:f;e=b>>>0>e>>>0?e:b;f=c>>>0>e>>>0?c:e;g=d>>>0>f>>>0?d:f;b=g>>>0>i>>>0?i:g;h=h>>>0>>0?j:h;g=g>>>0>>0?i:g;i=g>>>0>h>>>0?h:g;f=d>>>0>>0?d:f;c=c>>>0>>0?c:e;e=c>>>0>>0?f:c;j=b>>>0>e>>>0?b:e;d=i>>>0>j>>>0?i:j;c=(i>>>0>>0?i:j)<<6&448|((b>>>0>>0?b:e)<<3&56|(c>>>0>f>>>0?f:c)&7);b=g>>>0>>0?h:g;u[((l<<1)+a|0)+208>>1]=c|(b>>>0>>0?b:d)<<9&3584|(b>>>0>d>>>0?b:d)<<12&28672;l=l+1|0;if((l|0)!=8){continue}break}break a}v[a+208>>2]=1183336072;v[a+212>>2]=1183336072;v[a+216>>2]=1183336072;v[a+220>>2]=1183336072}}function __(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=v[a+40>>2];k=v[a+44>>2];a:{b:{if(!c){j=0;if(k-1>>>0>d>>>0){break b}break a}v[e+12>>2]=d;l=c-1|0;v[e+8>>2]=l;h=b-k|0;v[e+4>>2]=h;f=B(h,3);v[e>>2]=f+2;g=1;if(k-1>>>0<=d>>>0){break a}j=1;if(t[(v[a+60>>2]+(h<<2)|0)+2|0]<0){break b}v[e+28>>2]=d;v[e+24>>2]=l;v[e+20>>2]=h;v[e+16>>2]=f+1;j=2}f=j;g=(f<<4)+e|0;v[g+12>>2]=d;v[g+8>>2]=c;v[g+4>>2]=b;h=B(b,3);v[g>>2]=h;g=f+1|0;if(i-1>>>0<=c>>>0|t[(v[a+60>>2]+(b<<2)|0)+2|0]>=0){break a}g=(g<<4)+e|0;v[g+12>>2]=d;v[g+8>>2]=c;v[g+4>>2]=b;v[g>>2]=h+1;g=f+2|0}c:{d:{e:{if(i-1>>>0>c>>>0){f=(g<<4)+e|0;v[f+12>>2]=d;v[f+8>>2]=c;v[f+4>>2]=b;v[f>>2]=B(b,3)+2;f=g+1|0;if(d){break e}return f}if(!d){break c}h=b-1|0;break d}h=b-1|0;if(t[(v[a+60>>2]+(h<<2)|0)+2|0]<0){g=f;break d}f=(f<<4)+e|0;v[f+12>>2]=d-1;v[f+8>>2]=c;v[f+4>>2]=h;v[f>>2]=B(h,3)+1;g=g+2|0}f=(g<<4)+e|0;i=d-1|0;v[f+12>>2]=i;v[f+8>>2]=c;v[f+4>>2]=h;v[f>>2]=B(h,3);d=g+1|0;if(!c){return d}b=(k^-1)+b|0;if(t[(v[a+60>>2]+(b<<2)|0)+2|0]>=0){return d}a=(d<<4)+e|0;v[a+12>>2]=i;v[a+8>>2]=c-1;v[a+4>>2]=b;v[a>>2]=B(b,3)+1;g=g+2|0}return g}function oF(a,b,c,d,e){v[a>>2]=0;v[a+4>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;v[a+228>>2]=0;v[a+232>>2]=0;v[a+48>>2]=0;v[a+52>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+56>>2]=0;v[a+60>>2]=2048;v[a+72>>2]=0;v[a+76>>2]=0;v[a+248>>2]=0;v[a+80>>2]=0;v[a+84>>2]=2048;J9(a+88|0,0,84);v[a+220>>2]=0;v[a+212>>2]=0;v[a+216>>2]=0;v[a+204>>2]=0;v[a+208>>2]=0;v[a+196>>2]=0;v[a+200>>2]=0;v[a+188>>2]=0;v[a+192>>2]=0;v[a+180>>2]=0;v[a+184>>2]=0;v[a+260>>2]=0;v[a+264>>2]=0;v[a+268>>2]=0;v[a+272>>2]=0;v[a+276>>2]=0;v[a+280>>2]=0;v[a+284>>2]=0;v[a+288>>2]=0;v[a+292>>2]=0;v[a+296>>2]=0;v[a+300>>2]=0;v[a+304>>2]=0;v[a+308>>2]=0;v[a+312>>2]=0;J9(a+320|0,0,72);v[a+436>>2]=0;v[a+440>>2]=0;v[a+428>>2]=0;v[a+432>>2]=0;v[a+420>>2]=0;v[a+424>>2]=0;v[a+412>>2]=0;v[a+416>>2]=0;v[a+404>>2]=0;v[a+408>>2]=0;v[a+396>>2]=0;v[a+400>>2]=0;v[a+464>>2]=e;v[a+468>>2]=0;v[a+452>>2]=d;v[a+448>>2]=c;v[a+444>>2]=b;v[a+456>>2]=0;v[a+252>>2]=0;v[a+256>>2]=0;v[a+172>>2]=0;v[a+176>>2]=0;return a}function TT(a){a=a|0;var b=0,c=0;v[a+4>>2]=140304;v[a>>2]=140216;b=v[a+12>>2];if(b){Ba[v[v[b>>2]+4>>2]](b)}v[a+12>>2]=0;b=v[a+184>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+144>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+128>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+120>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+80>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+76>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+68>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a- -64>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+56>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+52>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+44>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+40>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+32>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+28>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+20>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function a2(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0;j=xa-96|0;xa=j;a:{b:{c:{switch(d-2|0){case 2:o=z[h+40>>2];p=z[h+32>>2];q=z[h+36>>2];d=1;if(!(C(C(z[h+56>>2]*o)+C(C(z[h+48>>2]*p)+C(q*z[h+52>>2])))>C(.9998999834060669))){break a}Ba[v[v[a>>2]+16>>2]](j+80|0,a);Ba[v[v[b>>2]+16>>2]](j- -64|0,b);k=C(z[j+88>>2]-z[j+72>>2]);l=C(z[j+80>>2]-z[j+64>>2]);m=C(z[j+84>>2]-z[j+68>>2]);n=C(C(1)/C(K(C(C(k*k)+C(C(l*l)+C(m*m))))));a=C(C(C(k*n)*o)+C(C(C(l*n)*p)+C(q*C(m*n))))>C(.7070000171661377);if(a){b=v[f+4>>2];v[j+32>>2]=v[f>>2];v[j+36>>2]=b;b=v[f+12>>2];v[j+40>>2]=v[f+8>>2];v[j+44>>2]=b;E2(e,i,h,c,j+32|0)}d=!a;break a;case 0:a=v[f+4>>2];v[j+48>>2]=v[f>>2];v[j+52>>2]=a;a=v[f+12>>2];v[j+56>>2]=v[f+8>>2];v[j+60>>2]=a;E2(e,i,h,c,j+48|0);break b;default:break c}}r=w[i+66|0];d=v[g+4>>2];v[j+16>>2]=v[g>>2];v[j+20>>2]=d;d=v[g+12>>2];v[j+24>>2]=v[g+8>>2];v[j+28>>2]=d;d=1;if((K_(a,b,i+67|0,i+71|0,r,1,j+16|0,h)|0)!=5){break a}a=v[f+4>>2];v[j>>2]=v[f>>2];v[j+4>>2]=a;a=v[f+12>>2];v[j+8>>2]=v[f+8>>2];v[j+12>>2]=a;E2(e,i,h,c,j)}d=0}xa=j+96|0;return d}function PA(a,b,c,d){var e=0,f=0,g=0,h=C(0),i=C(0),j=0,k=0,l=C(0),m=0,n=0,o=0,p=0,q=C(0),r=C(0),s=0,t=0,u=0,y=0,A=0;a:{f=v[a+24>>2];e=x[f+2>>1];if(!e){break a}s=w[f|0]==3?112:48;t=e+f|0;g=v[a+28>>2];e=f;while(1){u=e+48|0;j=w[e+1|0];y=w[e+36|0];b:{if(!g){g=0;break b}if(!j){break b}k=(x[e+2>>1]+e|0)+32|0;p=j&3;n=0;c:{if(j-1>>>0<3){e=0;break c}A=j&252;e=0;o=0;while(1){m=e<<2;q=z[m+k>>2];z[g>>2]=q;r=z[(m|4)+k>>2];z[g+4>>2]=r;i=z[(m|8)+k>>2];z[g+8>>2]=i;h=z[(m|12)+k>>2];z[g+12>>2]=h;l=C(h+C(i+C(r+C(l+q))));e=e+4|0;g=g+16|0;o=o+4|0;if((A|0)!=(o|0)){continue}break}}if(!p){break b}while(1){h=z[(e<<2)+k>>2];z[g>>2]=h;e=e+1|0;g=g+4|0;l=C(l+h);n=n+1|0;if((n|0)!=(p|0)){continue}break}}e=B(j,s)+u|0;if(t>>>0>e>>>0){continue}break}if(!(y&1)|x[a+8>>1]!=65535|(x[a+10>>1]!=65535|l==C(0))){break a}i=z[c+28>>2];h=z[d+28>>2];if(!(i>2];d=v[c+72>>2];c=v[f+32>>2];a=v[b+8>>2];v[b+8>>2]=a+1;f=v[b+4>>2]+(a<<5)|0;z[f+8>>2]=h>i?i:h;z[f+4>>2]=l;v[f>>2]=c;b=e<<7;a=d<<7;v[f+16>>2]=a>>>0>>0?b:a;v[f+12>>2]=a>>>0>b>>>0?b:a}}function $x(a){a=a|0;var b=0,c=0,d=0,e=0;v[a+52>>2]=128132;v[a>>2]=128088;d=a- -64|0;c=v[d>>2];if(c){while(1){e=v[v[a+60>>2]+(b<<2)>>2];if(e){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e);c=v[d>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+72>>2]=0;v[a+56>>2]=0;v[d>>2]=0;b=v[a+68>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+60>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+28>>2]=128132;c=v[a+40>>2];if(c){b=0;while(1){d=v[v[a+36>>2]+(b<<2)>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);c=v[a+40>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+48>>2]=0;v[a+32>>2]=0;v[a+40>>2]=0;b=v[a+44>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+36>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=128132;c=v[a+16>>2];if(c){b=0;while(1){d=v[v[a+12>>2]+(b<<2)>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);c=v[a+16>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+16>>2]=0;v[a+24>>2]=0;v[a+8>>2]=0;b=v[a+20>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+12>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function IO(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=C(0),u=0;g=v[a+20>>2];c=v[a+28>>2];e=v[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=v[c+304>>2];h=v[c+288>>2];while(1){f=v[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=wr(v[v[c+312>>2]+1156>>2],88);m=v[c+308>>2];n=v[c+276>>2];o=v[c+280>>2];p=v[c+196>>2];q=w[c+124|0];r=v[c+184>>2];h=v[c+128>>2];s=z[v[c+300>>2]+7152>>2];i=v[c+312>>2];u=v[i+1836>>2];v[b+8>>2]=v[i+1832>>2];v[b+12>>2]=u;v[b+24>>2]=0;v[b>>2]=134356;v[b+36>>2]=i;v[b+40>>2]=c;z[b+44>>2]=s;v[b+48>>2]=h;v[b+52>>2]=l;v[b+56>>2]=d;v[b+60>>2]=a-d;v[b+64>>2]=e;v[b+68>>2]=j;v[b+72>>2]=r;t[b+85|0]=q;v[b+80>>2]=k;v[b+76>>2]=p;v[b+28>>2]=n;v[b+32>>2]=o;t[b+84|0]=(h|0)==(m-1|0);d=v[v[c+312>>2]+1152>>2];v[b+20>>2]=g;v[b+24>>2]=1;v[b+16>>2]=d;j=f+j|0;if(g){Ba[v[v[g>>2]+16>>2]](g);d=v[b>>2]}else{d=134356}Ba[v[d+20>>2]](b);d=a;if(a>>>0>>0){continue}break}}}function En(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=v[a+32>>2];a:{if(g){c=g-1|0;g=v[v[a+28>>2]+(c<<2)>>2];v[a+32>>2]=c;break a}g=v[a+24>>2];v[a+24>>2]=g+1}if(g>>>0<=65534){d=v[a+44>>2];b:{if(d>>>0>g>>>0){i=v[a+40>>2];break b}c=d<<1;c=c>>>0<65535?c:65535;v[a+44>>2]=c;if(c){e=v[37696]+12|0;i=Ba[v[v[e>>2]+8>>2]](e,c<<2,24422,17745,126)|0;c=v[a+44>>2]<<2}else{c=0}c=J9(i,0,c);c:{if(!d){break c}e=0;if(d-1>>>0>=3){m=d&-4;while(1){f=e<<2;v[f+c>>2]=v[f+v[a+40>>2]>>2];h=f|4;v[h+c>>2]=v[h+v[a+40>>2]>>2];h=f|8;v[h+c>>2]=v[h+v[a+40>>2]>>2];f=f|12;v[f+c>>2]=v[f+v[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;v[f+c>>2]=v[f+v[a+40>>2]>>2];e=e+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}e=v[a+40>>2];if(e){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+40>>2]=c}v[(g<<2)+i>>2]=b;u[b+52>>1]=g}d:{if(g>>>0<65535){if(!v[a+8>>2]){break d}while(1){Gr(v[v[a+4>>2]+(j<<2)>>2],b);j=j+1|0;if(j>>>0>2]){continue}break}break d}b9(v[37696],4,7621,413,69983,0);Ba[v[v[b>>2]>>2]](b);b=0}return b}function Lv(a){a=a|0;var b=0,c=0;v[a>>2]=127452;b=v[a+180>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+172>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+168>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+160>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+156>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+148>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+144>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+136>>2];if(!b){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+132>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+124>>2];if(!b){break e}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+120>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+112>>2];if(!b){break f}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+108>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+100>>2];if(!b){break g}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a>>2]=127652;b=v[a+88>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=v[a+80>>2];if(!b){break h}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function bm(a,b,c,d,e,f){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);f=f|0;var g=0,h=0;a:{b:{c:{d:{a=a+8|0;h=v[a+4>>2];switch((h>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}lF(a+12|0,b,c,d,e,f);break a}g=v[a+8>>2];e:{if(!(h&2097152)){if(!g){g=Qu(v[a>>2],h>>>24&15);v[a+8>>2]=g}z[g+204>>2]=z[a+120>>2];z[g+208>>2]=z[a+124>>2];z[g+212>>2]=z[a+128>>2];v[g+216>>2]=v[a+132>>2];z[g+220>>2]=z[a+136>>2];z[g+224>>2]=z[a+140>>2];z[g+228>>2]=z[a+144>>2];v[g+232>>2]=v[a+148>>2];z[g+236>>2]=z[a+152>>2];z[g+240>>2]=z[a+156>>2];z[g+244>>2]=z[a+160>>2];v[g+248>>2]=v[a+164>>2];z[g+252>>2]=z[a+168>>2];z[g+256>>2]=z[a+172>>2];z[g+260>>2]=z[a+176>>2];v[g+264>>2]=v[a+180>>2];z[g+268>>2]=z[a+184>>2];z[g+272>>2]=z[a+188>>2];z[g+276>>2]=z[a+192>>2];v[g+280>>2]=v[a+196>>2];z[g+284>>2]=z[a+200>>2];z[g+288>>2]=z[a+204>>2];z[g+292>>2]=z[a+208>>2];v[g+296>>2]=v[a+212>>2];break e}if(g){break e}g=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=g}b=(b<<4)+g|0;v[b+216>>2]=f;z[b+212>>2]=e;z[b+208>>2]=d;z[b+204>>2]=c;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|2097152}}function se(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0);d=xa+-64|0;xa=d;Ba[v[v[b>>2]+76>>2]](d+32|0,b);Ba[v[v[b>>2]+112>>2]](d,b);j=z[d+56>>2];p=z[d+52>>2];k=z[d+20>>2];l=z[d+24>>2];u=z[d+48>>2];e=z[d+36>>2];g=z[d+44>>2];h=z[d+40>>2];o=z[d+16>>2];i=z[d+32>>2];f=z[c+4>>2];m=z[c>>2];n=z[c+8>>2];Ba[v[v[b>>2]+156>>2]](a,b);Ba[v[v[b>>2]+164>>2]](d,b);w=z[d>>2];x=z[d+4>>2];n=C(n+n);m=C(m+m);q=C(f+f);t=C(C(h*n)+C(C(i*m)+C(e*q)));f=C(C(g*g)+C(-.5));r=C(j+C(C(h*t)+C(C(n*f)+C(g*C(C(i*q)-C(m*e))))));s=j;j=C(l+l);l=C(o+o);k=C(k+k);o=C(C(h*j)+C(C(i*l)+C(e*k)));s=C(r-C(s+C(C(h*o)+C(C(j*f)+C(g*C(C(i*k)-C(l*e)))))));p=C(C(p+C(C(e*t)+C(C(q*f)+C(g*C(C(h*m)-C(n*i))))))-C(p+C(C(e*o)+C(C(k*f)+C(g*C(C(h*l)-C(j*i)))))));r=z[d+8>>2];z[a>>2]=C(C(x*s)-C(p*r))+z[a>>2];e=C(C(u+C(C(i*t)+C(C(m*f)+C(g*C(C(e*n)-C(q*h))))))-C(u+C(C(i*o)+C(C(l*f)+C(g*C(C(e*j)-C(k*h)))))));z[a+4>>2]=C(C(r*e)-C(s*w))+z[a+4>>2];z[a+8>>2]=C(C(w*p)-C(e*x))+z[a+8>>2];xa=d- -64|0}function hR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=v[a+28>>2];b=v[d+2460>>2];if(b){a=0;while(1){e=v[(v[d+2456>>2]+(a<<3)|0)+4>>2];if(!(w[e+46|0]&4)){iG(v[d+1e3>>2],v[e+60>>2])}a=a+1|0;if((b|0)!=(a|0)){continue}break}}b=0;e=xa-16|0;xa=e;a=v[d+1e3>>2];c=a+168|0;NF(c);PF(c);OF(c);TF(c,a+32|0,0,0);if(v[a+36>>2]){while(1){c=v[v[a+32>>2]+(b<<2)>>2]>>>7|0;v[e+12>>2]=c;a:{if((c|0)==v[a+12>>2]){v[a+12>>2]=c-1;break a}f=v[a+4>>2];if(f>>>0>=(v[a+8>>2]&2147483647)>>>0){pn(a,e+12|0);break a}v[v[a>>2]+(f<<2)>>2]=c;v[a+4>>2]=v[a+4>>2]+1}b=b+1|0;if(b>>>0>2]){continue}break}}v[a+36>>2]=0;xa=e+16|0;d=v[d+1e3>>2];b=v[d+284>>2];a=v[d+420>>2];if((b|0)!=(a|0)){b=b-a|0;e=v[d+280>>2]+(a<<2)|0;a=0;while(1){c=v[d+184>>2]+B(v[e+(a<<2)>>2]>>>7|0,24)|0;f=v[c+20>>2];if(!(!f|!(w[c+4|0]&2))){cH(f+-64|0,1)}a=a+1|0;if((b|0)!=(a|0)){continue}break}}b=v[d+296>>2];a=v[d+424>>2];if((b|0)!=(a|0)){b=b-a|0;e=v[d+292>>2]+(a<<2)|0;a=0;while(1){c=v[d+184>>2]+B(v[e+(a<<2)>>2]>>>7|0,24)|0;f=v[v[c+20>>2]+16>>2];if(!(!f|!(w[c+4|0]&2))){yG(f,1)}a=a+1|0;if((b|0)!=(a|0)){continue}break}}}function GF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=v[a+448>>2];l=v[c>>2];b=b<<1;g=v[c+20>>2];c=(b>>>0)/(g>>>0)|0;h=v[v[l+(c<<2)>>2]+(b-B(c,g)<<2)>>2]>>>7|0;if((h|0)!=33554431){i=v[a+64>>2];c=v[a+84>>2];d=(b>>>0)/(c>>>0)|0;j=v[i+(d<<2)>>2];k=b-B(c,d)|0;d=j+(k<<3)|0;e=v[a+16>>2]+B(h,24)|0;a:{if((b|0)==v[e>>2]){f=e;e=v[d>>2];v[f>>2]=e;break a}e=v[d+4>>2];f=(e>>>0)/(c>>>0)|0;v[v[i+(f<<2)>>2]+(e-B(c,f)<<3)>>2]=v[d>>2];e=v[d>>2]}if((e|0)!=-1){f=(e>>>0)/(c>>>0)|0;v[(v[i+(f<<2)>>2]+(e-B(c,f)<<3)|0)+4>>2]=v[((k<<3)+j|0)+4>>2]}v[d>>2]=-1;v[((k<<3)+j|0)+4>>2]=-1}d=b|1;b=(d>>>0)/(g>>>0)|0;g=v[v[(b<<2)+l>>2]+(d-B(b,g)<<2)>>2]>>>7|0;if(!((g|0)==33554431|(g|0)==(h|0))){h=v[a+64>>2];b=v[a+84>>2];c=(d>>>0)/(b>>>0)|0;e=v[h+(c<<2)>>2];i=d-B(b,c)|0;c=e+(i<<3)|0;a=v[a+16>>2]+B(g,24)|0;b:{if((d|0)==v[a>>2]){f=a;a=v[c>>2];v[f>>2]=a;break b}a=v[c+4>>2];d=(a>>>0)/(b>>>0)|0;v[v[h+(d<<2)>>2]+(a-B(b,d)<<3)>>2]=v[c>>2];a=v[c>>2]}if((a|0)!=-1){d=(a>>>0)/(b>>>0)|0;v[(v[h+(d<<2)>>2]+(a-B(b,d)<<3)|0)+4>>2]=v[(e+(i<<3)|0)+4>>2]}v[c>>2]=-1;v[(e+(i<<3)|0)+4>>2]=-1}}function r0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);g=xa-48|0;xa=g;f=v[a+8>>2];o=z[f+28>>2];p=z[f+16>>2];k=z[f+32>>2];l=z[f+20>>2];m=z[f+4>>2];n=z[f+8>>2];h=z[c>>2];i=z[c+4>>2];q=z[f+12>>2];j=z[c+8>>2];r=z[f+24>>2];z[g+32>>2]=C(C(h*z[f>>2])+C(i*q))+C(j*r);z[g+40>>2]=C(C(h*n)+C(i*l))+C(j*k);z[g+36>>2]=C(C(h*m)+C(i*p))+C(j*o);m=z[f>>2];n=z[f+4>>2];h=z[d>>2];i=z[d+4>>2];j=z[d+8>>2];z[g+24>>2]=C(C(h*z[f+8>>2])+C(l*i))+C(k*j);z[g+20>>2]=C(C(h*n)+C(p*i))+C(o*j);z[g+16>>2]=C(C(h*m)+C(q*i))+C(r*j);i=z[f>>2];j=z[f+4>>2];h=z[e>>2];m=l;l=z[e+4>>2];n=k;k=z[e+8>>2];z[g+8>>2]=C(C(h*z[f+8>>2])+C(m*l))+C(n*k);z[g+4>>2]=C(C(h*j)+C(p*l))+C(o*k);z[g>>2]=C(C(h*i)+C(q*l))+C(r*k);c=1;a:{if(!u$(a+84|0,a+68|0,g+32|0,g+16|0,g)){break a}d=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];c=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;c=1;break a}c=v[a+16>>2];if(c>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=d;c=1;break a}v[a+16>>2]=c+1;c=1}xa=g+48|0;return c|0}function f3(a,b){var c=0,d=0,e=0,f=C(0),g=0,h=C(0),i=C(0),j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=0;c=xa-48|0;xa=c;j=v[b+8>>2];e=B(j,24)+24|0;if(e){d=v[37696]+12|0;e=Ba[v[v[d>>2]+8>>2]](d,e,24422,9340,128)|0}else{e=0}v[a>>2]=e;if(j){p=v[b>>2];d=v[b+4>>2];while(1){h=z[d+16>>2];i=z[d+20>>2];l=z[d+4>>2];m=z[d+8>>2];f=z[d+12>>2];n=z[d>>2];o=C(C(f-n)*C(.004999999888241291));g=B(k,24)+e|0;z[g+12>>2]=f+o;z[g>>2]=n-o;f=i;i=C(C(i-m)*C(.004999999888241291));z[g+20>>2]=f+i;f=h;h=C(C(h-l)*C(.004999999888241291));z[g+16>>2]=f+h;z[g+8>>2]=m-i;z[g+4>>2]=l-h;d=d+p|0;k=k+1|0;if((k|0)!=(j|0)){continue}break}}v[a+4>>2]=j;v[c+44>>2]=0;b=v[b+8>>2];v[c+40>>2]=e;v[c+36>>2]=b;v[c+32>>2]=4;v[c+24>>2]=0;v[c+28>>2]=0;v[c>>2]=0;v[c+4>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;vY(c+32|0,c,c+24|0,a+16|0);b=v[c+24>>2];v[a+8>>2]=b;d=0;b=B(b,28);if(b){e=v[37696]+12|0;d=Ba[v[v[e>>2]+8>>2]](e,b,24422,9340,154)|0}v[a+12>>2]=d;IB(c,d);qY(c);oY(c);v[c+40>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;a=v[c+44>>2];if(a){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+48|0;return 1}function ET(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=C(0);g=xa-144|0;xa=g;v[g+128>>2]=2;h=z[b+44>>2];z[g+132>>2]=z[b+40>>2];z[g+136>>2]=h*C(.5);z[g+112>>2]=A[d>>3]-A[c+12>>3];z[g+116>>2]=A[d+8>>3]-A[c+20>>3];z[g+120>>2]=A[d+16>>3]-A[c+28>>3];z[g+96>>2]=z[a+244>>2];z[g+100>>2]=z[a+248>>2];z[g+104>>2]=z[a+252>>2];z[g+108>>2]=z[a+256>>2];d=0;v[g+88>>2]=0;z[g+92>>2]=z[c+48>>2];z[g+72>>2]=z[c+36>>2];z[g+76>>2]=z[c+40>>2];z[g+80>>2]=z[c+44>>2];v[g+64>>2]=0;v[g+68>>2]=1065353216;v[g+56>>2]=0;v[g+60>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+40>>2]=0;v[g+44>>2]=0;v[g+24>>2]=0;v[g+28>>2]=0;u[g+20>>1]=0;v[g+16>>2]=-1;v[g+8>>2]=0;v[g+12>>2]=0;v[g+48>>2]=2139095039;h=z[f+36>>2];u[g>>1]=w[a+299|0]?1283:1027;a:{if(!jV(e,h,g+128|0,g+96|0,g+88|0,g+56|0,g+8|0,g)){break a}h=z[g+48>>2];if(h>=z[f+36>>2]){break a}z[f+36>>2]=h;z[f+24>>2]=z[g+36>>2];z[f+28>>2]=z[g+40>>2];h=z[g+44>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+24>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+28>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+32>>2];d=1}xa=g+144|0;return d|0}function GN(a,b,c){a=a|0;b=C(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=v[a+84>>2];if(!g){break a}if(!c){while(1){c=wr(v[v[a+4>>2]+1156>>2],56);d=v[a+4>>2];e=v[d+1832>>2];h=v[d+1836>>2];i=v[a+80>>2];j=v[a+68>>2];k=v[a+92>>2];l=v[a+104>>2];v[c+24>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+52>>2]=l;v[c+48>>2]=d;z[c+44>>2]=b;d=g-f|0;d=d>>>0<128?d:128;v[c+40>>2]=d;v[c+36>>2]=k+(f<<3);v[c+32>>2]=j+(f<<4);v[c+28>>2]=i+(f<<2);v[c+8>>2]=e;v[c+12>>2]=h;v[c>>2]=134244;v[c+24>>2]=1;e=v[c+16>>2];Ba[v[v[e>>2]+72>>2]](e,c);f=d+f|0;if(g>>>0>f>>>0){continue}break a}}while(1){d=wr(v[v[a+4>>2]+1156>>2],56);e=v[a+4>>2];h=v[e+1836>>2];i=v[e+1832>>2];j=v[a+80>>2];k=v[a+68>>2];l=v[a+92>>2];m=v[a+104>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+52>>2]=m;v[d+48>>2]=e;z[d+44>>2]=b;e=g-f|0;e=e>>>0<128?e:128;v[d+40>>2]=e;v[d+36>>2]=l+(f<<3);v[d+32>>2]=k+(f<<4);v[d+28>>2]=j+(f<<2);v[d+8>>2]=i;v[d+12>>2]=h;v[d>>2]=134244;v[d+20>>2]=c;v[d+24>>2]=1;Ba[v[v[c>>2]+16>>2]](c);v[d+16>>2]=v[v[d+20>>2]+16>>2];Ba[v[v[d>>2]+20>>2]](d);f=f+e|0;if(g>>>0>f>>>0){continue}break}}}function k1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=C(0),u=C(0),w=C(0),x=0,y=0,A=0;s=v[a+4>>2];x=v[a+8>>2];y=b>>>5|0;a=x+B(y,12)|0;q=s+B(v[a>>2],12)|0;e=z[q+8>>2];r=B(v[a+4>>2],12)+s|0;f=z[r+8>>2];h=e>f?e:f;a=B(v[a+8>>2],12)+s|0;g=z[a+8>>2];h=g>2];l=z[r+4>>2];i=k>l?k:l;m=z[a+4>>2];i=i>m?i:m;n=z[q>>2];o=z[r>>2];j=n>o?n:o;p=z[a>>2];j=j>p?j:p;e=e>>1&15;if(A){while(1){b=B(a+y|0,12)+x|0;q=B(v[b>>2],12)+s|0;k=z[q+8>>2];h=h>k?h:k;r=B(v[b+4>>2],12)+s|0;l=z[r+8>>2];h=h>l?h:l;b=B(v[b+8>>2],12)+s|0;m=z[b+8>>2];h=h>m?h:m;n=z[q+4>>2];i=i>n?i:n;o=z[r+4>>2];i=i>o?i:o;p=z[b+4>>2];i=i>p?i:p;t=z[q>>2];j=j>t?j:t;u=z[r>>2];j=j>u?j:u;w=z[b>>2];j=j>w?j:w;e=e>2]=0;z[c+8>>2]=e;z[c+4>>2]=f;z[c>>2]=g;v[d+12>>2]=0;z[d+8>>2]=h;z[d+4>>2]=i;z[d>>2]=j}function A0(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0);d=z[a>>2];e=z[a+48>>2];a:{if(d>e){f=C(34028234663852886e22);g=C(34028234663852886e22);h=C(34028234663852886e22);i=C(-34028234663852886e22);j=C(-34028234663852886e22);d=C(-34028234663852886e22);break a}f=C(F(d,C(34028234663852886e22)));j=C(G(z[a+80>>2],C(-34028234663852886e22)));i=C(G(z[a+64>>2],C(-34028234663852886e22)));h=C(F(z[a+32>>2],C(34028234663852886e22)));g=C(F(z[a+16>>2],C(34028234663852886e22)));d=C(G(e,C(-34028234663852886e22)))}e=z[a+4>>2];k=z[a+52>>2];if(!(e>k)){c=z[a+84>>2];j=c>2];i=c>2];h=c>h?h:c;c=z[a+20>>2];g=c>g?g:c;f=fk?d:k}e=z[a+8>>2];k=z[a+56>>2];if(!(e>k)){c=z[a+88>>2];j=c>2];i=c>2];h=c>h?h:c;c=z[a+24>>2];g=c>g?g:c;f=fk?d:k}e=z[a+12>>2];k=z[a+60>>2];if(!(e>k)){c=z[a+92>>2];j=c>2];i=c>2];h=c>h?h:c;c=z[a+28>>2];g=c>g?g:c;f=fk?d:k}z[b+20>>2]=j;z[b+16>>2]=i;z[b+12>>2]=d;z[b+8>>2]=h;z[b+4>>2]=g;z[b>>2]=f}function j1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=0,t=C(0),u=C(0),w=C(0),y=0,A=0,D=0;s=v[a+4>>2];y=v[a+8>>2];A=b>>>5|0;a=y+B(A,6)|0;q=s+B(x[a>>1],12)|0;e=z[q+8>>2];r=B(x[a+2>>1],12)+s|0;f=z[r+8>>2];h=e>f?e:f;a=B(x[a+4>>1],12)+s|0;g=z[a+8>>2];h=g>2];l=z[r+4>>2];i=k>l?k:l;m=z[a+4>>2];i=i>m?i:m;n=z[q>>2];o=z[r>>2];j=n>o?n:o;p=z[a>>2];j=j>p?j:p;e=e>>1&15;if(D){while(1){b=B(a+A|0,6)+y|0;q=B(x[b>>1],12)+s|0;k=z[q+8>>2];h=h>k?h:k;r=B(x[b+2>>1],12)+s|0;l=z[r+8>>2];h=h>l?h:l;b=B(x[b+4>>1],12)+s|0;m=z[b+8>>2];h=h>m?h:m;n=z[q+4>>2];i=i>n?i:n;o=z[r+4>>2];i=i>o?i:o;p=z[b+4>>2];i=i>p?i:p;t=z[q>>2];j=j>t?j:t;u=z[r>>2];j=j>u?j:u;w=z[b>>2];j=j>w?j:w;e=e>2]=0;z[c+8>>2]=e;z[c+4>>2]=f;z[c>>2]=g;v[d+12>>2]=0;z[d+8>>2]=h;z[d+4>>2]=i;z[d>>2]=j}function s_(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);j=xa-16|0;xa=j;k=z[b+16>>2];l=z[b+28>>2];m=z[b+24>>2];n=z[b>>2];o=z[b+12>>2];p=z[b+4>>2];g=z[c+48>>2];d=C(g*z[c>>2]);h=z[b+8>>2];e=C(g*z[c+4>>2]);i=z[b+20>>2];f=C(g*z[c+8>>2]);g=z[b+32>>2];z[a+8>>2]=C(C(d*h)+C(e*i))+C(f*g);z[a+4>>2]=C(C(d*p)+C(e*k))+C(f*l);z[a>>2]=C(C(d*n)+C(e*o))+C(f*m);d=z[c+52>>2];e=C(d*z[c+12>>2]);f=C(d*z[c+16>>2]);d=C(d*z[c+20>>2]);z[a+20>>2]=C(C(h*e)+C(i*f))+C(g*d);z[a+16>>2]=C(C(p*e)+C(k*f))+C(l*d);z[a+12>>2]=C(C(n*e)+C(o*f))+C(m*d);d=z[c+56>>2];e=C(d*z[c+24>>2]);f=C(d*z[c+28>>2]);d=C(d*z[c+32>>2]);z[a+32>>2]=C(C(h*e)+C(i*f))+C(g*d);z[a+28>>2]=C(C(p*e)+C(k*f))+C(l*d);z[a+24>>2]=C(C(n*e)+C(o*f))+C(m*d);d=z[b+40>>2];e=z[b+36>>2];f=h;h=z[c+36>>2];q=i;i=z[c+40>>2];r=g;g=z[c+44>>2];z[a+44>>2]=C(C(C(f*h)+C(q*i))+C(r*g))+z[b+44>>2];z[a+40>>2]=d+C(C(C(p*h)+C(k*i))+C(l*g));z[a+36>>2]=e+C(C(C(n*h)+C(o*i))+C(m*g));r9(j,a);z[a+48>>2]=z[j>>2];z[a+52>>2]=z[j+4>>2];z[a+56>>2]=z[j+8>>2];xa=j+16|0}function nD(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=129748;b=v[a+168>>2];if(b){b=KB(b);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+168>>2]=0}c=v[a+208>>2];if(c){b=0;while(1){d=v[v[a+200>>2]+(b<<3)>>2];if(d){c=KB(d);d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);c=v[a+208>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}b=v[a+196>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+200>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+192>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+184>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+180>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+172>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+128>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=a+4|0;$C(b);c=v[b+116>>2];c:{if((c|0)<0|!(c&2147483647)){break c}c=v[b+108>>2];if(!c){break c}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}c=v[b- -64>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}b=v[b+16>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function xU(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=v[a+24>>2];a:{if(e){d=v[a+4>>2];c=x[v[a+16>>2]+(d<<1)>>1];v[v[a>>2]+(d<<2)>>2]=b;v[a+4>>2]=d+1;u[v[a+12>>2]+(c<<1)>>1]=d;v[a+24>>2]=e-1;break a}c=v[a+4>>2];if((c|0)==v[a+8>>2]){c=c<<1;d=c>>>0<65535?c:65535;v[a+8>>2]=d;e=0;b:{if(!d){break b}c=v[37696]+12|0;g=Ba[v[v[c>>2]+8>>2]](c,d<<2,24422,6126,94)|0;d=v[a+8>>2]<<1;e=0;if(!d){break b}c=v[37696]+12|0;f=Ba[v[v[c>>2]+8>>2]](c,d,24422,6126,95)|0;c=v[a+8>>2]<<1;e=0;if(!c){break b}d=v[37696]+12|0;h=Ba[v[v[d>>2]+8>>2]](d,c,24422,6126,96)|0;d=v[a+8>>2]<<1;e=0;if(!d){break b}c=v[37696]+12|0;e=Ba[v[v[c>>2]+8>>2]](c,d,24422,6126,97)|0}c=e;g=I9(g,v[a>>2],v[a+4>>2]<<2);d=I9(f,v[a+12>>2],v[a+4>>2]<<1);e=I9(h,v[a+16>>2],v[a+4>>2]<<1);c=I9(c,v[a+20>>2],v[a+4>>2]<<1);f=v[a+4>>2];J9(d+(f<<1)|0,255,v[a+8>>2]-f<<1);f=v[a+4>>2];J9(e+(f<<1)|0,255,v[a+8>>2]-f<<1);f=v[a+4>>2];J9(c+(f<<1)|0,0,v[a+8>>2]-f<<1);wU(a,g,d,e,c);c=v[a+4>>2]}v[v[a>>2]+(c<<2)>>2]=b;b=c<<1;u[b+v[a+12>>2]>>1]=c;u[b+v[a+16>>2]>>1]=c;v[a+4>>2]=c+1}return x[v[a+20>>2]+(c<<1)>>1]<<16|c}function yx(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=xa-160|0;xa=g;a:{if(!v[a+660>>2]){break a}if(b){while(1){b=v[a+656>>2]+(f<<5)|0;b:{if(w[v[b+24>>2]]!=3){tB(b);break b}c=x[b+22>>1];if(c){d=v[b+24>>2];m=d+(c<<4)|0;b=v[b+28>>2];while(1){c=w[d+2|0];n=(c<<2)+12&2032;k=w[d|0]==3;e=(B(c,k?112:48)+d|0)+80|0;o=w[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;z[b>>2]=z[e+h>>2];z[b+4>>2]=z[e+(h|4)>>2];z[b+8>>2]=z[e+(h|8)>>2];z[b+12>>2]=z[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){z[b>>2]=z[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(!v[d+56>>2]){break e}d=v[d+60>>2];if(!d){break e}t[d|0]=1}d=c+B(e,o)|0;if(m>>>0>d>>>0){continue}break}}}f=f+1|0;if(f>>>0>2]){continue}break a}}while(1){b=v[a+656>>2]+(f<<5)|0;f:{if(w[v[b+24>>2]]==3){hA(b,g+120|0,g,g);break f}iA(b)}f=f+1|0;if(f>>>0>2]){continue}break}}xa=g+160|0}function jj(a,b,c){var d=0,e=0;a:{b:{c:{d:{e=v[a+4>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break d}}d=v[a>>2];break b}d=v[a>>2];if(w[d+4785|0]){break a}}e=v[d+2428>>2];d=v[a+16>>2];if(d){iH(d)}d=v[a+192>>2];e:{f:{if(d){if(w[d+31|0]){break f}break e}d=v[e+288>>2];if(!d){GG(e);d=v[e+288>>2]}v[e+288>>2]=v[d>>2];v[e+280>>2]=v[e+280>>2]+1}v[d>>2]=0;v[d+4>>2]=0;v[d+56>>2]=0;v[d+60>>2]=0;v[d+48>>2]=0;v[d+52>>2]=0;v[d+40>>2]=0;v[d+44>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+24>>2]=0;v[d+28>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[a+192>>2]=d}t[d+12|0]=w[d+12|0]|2;if(b){z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2]}if(c){z[d+16>>2]=z[c>>2];z[d+20>>2]=z[c+4>>2];z[d+24>>2]=z[c+8>>2]}return}d=v[a+8>>2];if(!d){d=Qu(v[a>>2],e>>>24&15);v[a+8>>2]=d}if(b){z[d+220>>2]=z[b>>2];z[d+224>>2]=z[b+4>>2];z[d+228>>2]=z[b+8>>2];b=65536}else{b=0}if(c){z[d+232>>2]=z[c>>2]+z[d+232>>2];z[d+236>>2]=z[c+4>>2]+z[d+236>>2];z[d+240>>2]=z[c+8>>2]+z[d+240>>2];b=b|131072}Yu(v[a>>2],a);v[a+268>>2]=v[a+268>>2]|b}function Vy(a,b,c,d,e,f,g,h,i,j,k,l){var m=C(0),n=C(0),o=C(0);if(l){v[a>>2]=0;v[b>>2]=0;v[c>>2]=0;v[d>>2]=0;return}l=x[e+76>>1];a:{if(!(l&4)){m=C(0);if((l&3)!=3){break a}}m=C(C(C(C(z[j+8>>2]*z[e+8>>2])+C(C(z[j>>2]*z[e>>2])+C(z[j+4>>2]*z[e+4>>2])))+C(C(z[j+24>>2]*z[e+24>>2])+C(C(z[j+16>>2]*z[e+16>>2])+C(z[j+20>>2]*z[e+20>>2]))))-C(C(C(z[k+8>>2]*z[e+40>>2])+C(C(z[k>>2]*z[e+32>>2])+C(z[k+4>>2]*z[e+36>>2])))+C(C(z[k+24>>2]*z[e+56>>2])+C(C(z[k+16>>2]*z[e+48>>2])+C(z[k+20>>2]*z[e+52>>2])))))}n=f<=g?C(0):C(C(1)/f);o=z[e+12>>2];if(l&1){i=z[e+64>>2];m=z[e+68>>2];g=C(C(C(h*h)*i)+C(m*h));h=C(C(C(m*z[e+28>>2])-C(o*i))*h);b:{if(l&2){f=h;h=C(C(1)/C(g+C(1)));f=C(f*C(n*h));z[b>>2]=f;z[a>>2]=f;f=C(n*C(-h));break b}i=h;h=f!=C(0)?C(C(1)/C(C(g*f)+C(1))):C(0);f=C(i*h);z[b>>2]=f;z[a>>2]=f;f=C(-h)}z[c>>2]=g*f;z[d>>2]=C(1)-h;return}z[c>>2]=-n;v[d>>2]=1065353216;c:{if(!(l&4)){break c}f=C(-m);if(!(f>z[e+68>>2])){break c}f=C(C(n*z[e+64>>2])*f);z[a>>2]=f;z[b>>2]=f;return}z[a>>2]=n*C(z[e+28>>2]-C(o*i));z[b>>2]=n*C(z[e+28>>2]-C(z[e+72>>2]*i))}function Qi(a,b){a=a|0;b=b|0;var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);l=v[b+316>>2]&1024?v[b+56>>2]+144|0:b+112|0;n=z[l+16>>2];o=z[l+24>>2];p=z[l+20>>2];s=z[b+272>>2];t=z[b+276>>2];f=z[b+280>>2];h=z[b+264>>2];d=z[l+8>>2];i=z[b+260>>2];e=z[l+4>>2];g=z[b+268>>2];c=z[l+12>>2];j=z[l>>2];k=z[b+256>>2];z[a+12>>2]=C(h*d)+C(C(i*e)+C(C(g*c)+C(j*k)));z[a+8>>2]=C(j*i)+C(C(C(c*h)-C(g*d))-C(k*e));z[a+4>>2]=C(d*k)+C(C(C(c*i)-C(g*e))-C(h*j));z[a>>2]=C(e*h)+C(C(C(c*k)-C(g*j))-C(i*d));u=f;o=C(o*C(-2));n=C(n*C(-2));p=C(p*C(-2));q=C(C(d*o)+C(C(j*n)+C(e*p)));r=C(C(c*c)+C(-.5));f=C(C(d*q)+C(C(o*r)-C(c*C(C(j*p)-C(n*e)))));f=C(f+f);m=C(C(j*q)+C(C(n*r)-C(c*C(C(e*o)-C(p*d)))));m=C(m+m);c=C(C(e*q)+C(C(p*r)-C(c*C(C(d*n)-C(o*j)))));c=C(c+c);d=C(C(h*f)+C(C(k*m)+C(i*c)));e=C(C(g*g)+C(-.5));z[a+24>>2]=u+C(C(h*d)+C(C(f*e)+C(g*C(C(k*c)-C(m*i)))));z[a+20>>2]=t+C(C(i*d)+C(C(c*e)+C(g*C(C(h*m)-C(f*k)))));z[a+16>>2]=s+C(C(k*d)+C(C(m*e)+C(g*C(C(i*f)-C(c*h)))))}function NV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0);s=C(z[e+4>>2]+z[c+4>>2]);u=z[d+24>>2];i=z[f>>2];g=C(i+i);m=z[f+8>>2];n=z[f+4>>2];j=z[f+12>>2];k=C(j+j);p=z[e+8>>2];o=C(C(C(g*m)-C(n*k))*p);q=z[f+24>>2];t=C(o+q);h=C(u-t);r=z[f+20>>2];v=C(p*C(C(m*k)+C(g*n)));n=C(r+v);m=C(C(q-o)-t);q=z[d+16>>2];o=z[f+16>>2];g=C(C(C(i*g)+C(C(j*k)+C(-1)))*p);p=C(o+g);i=C(q-p);j=C(C(o-g)-p);k=C(C(r-v)-n);r=z[d+20>>2];g=C(r-n);o=C(C(h*m)+C(C(i*j)+C(k*g)));a:{if(o<=C(0)){break a}l=C(C(m*m)+C(C(j*j)+C(k*k)));if(l<=o){h=C(h-m);g=C(g-k);i=C(i-j);l=C(1);break a}l=C(o/l);h=C(h-C(m*l));g=C(g-C(k*l));i=C(i-C(j*l))}c=C(C(h*h)+C(C(i*i)+C(g*g)))>C(s*s);if(!c){h=C(u-C(t+C(m*l)));i=C(q-C(p+C(j*l)));g=C(r-C(n+C(k*l)));n=C(C(h*h)+C(C(i*i)+C(g*g)));l=C(K(n));m=C(1);j=C(0);k=C(0);if(!(n>2]=k;z[a+4>>2]=j;z[a>>2]=m;h=C(s-l);z[b>>2]=h>C(0)?h:C(0)}return!c|0}function EN(a,b,c,d){a=a|0;b=C(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=v[a+44>>2];if(!h){break a}if(!d){while(1){d=wr(v[v[a+4>>2]+1156>>2],56);e=v[a+4>>2];f=v[e+1832>>2];i=v[e+1836>>2];j=v[a+40>>2];k=v[a+52>>2];l=v[a+104>>2];v[d+24>>2]=0;v[d+16>>2]=0;v[d+20>>2]=0;v[d+52>>2]=l;v[d+48>>2]=e;z[d+44>>2]=b;e=h-g|0;e=e>>>0<128?e:128;v[d+40>>2]=e;v[d+36>>2]=k+(g<<3);v[d+32>>2]=(g<<4)+c;v[d+28>>2]=j+(g<<2);v[d+8>>2]=f;v[d+12>>2]=i;v[d>>2]=134244;v[d+24>>2]=1;f=v[d+16>>2];Ba[v[v[f>>2]+72>>2]](f,d);g=e+g|0;if(h>>>0>g>>>0){continue}break a}}while(1){e=wr(v[v[a+4>>2]+1156>>2],56);f=v[a+4>>2];i=v[f+1836>>2];j=v[f+1832>>2];k=v[a+40>>2];l=v[a+52>>2];m=v[a+104>>2];v[e+24>>2]=0;v[e+16>>2]=0;v[e+52>>2]=m;v[e+48>>2]=f;z[e+44>>2]=b;f=h-g|0;f=f>>>0<128?f:128;v[e+40>>2]=f;v[e+36>>2]=l+(g<<3);v[e+32>>2]=(g<<4)+c;v[e+28>>2]=k+(g<<2);v[e+8>>2]=j;v[e+12>>2]=i;v[e>>2]=134244;v[e+20>>2]=d;v[e+24>>2]=1;Ba[v[v[d>>2]+16>>2]](d);v[e+16>>2]=v[v[e+20>>2]+16>>2];Ba[v[v[e>>2]+20>>2]](e);g=g+f|0;if(h>>>0>g>>>0){continue}break}}}function BZ(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=C(0),k=0;g=xa-480|0;xa=g;A_(z_(g+184|0,a+4|0),g+408|0);h=z[a+8>>2];i=z[a+4>>2];j=z[a+12>>2];z[g+180>>2]=j;z[g+176>>2]=h;z[g+172>>2]=i;z[g+168>>2]=-j;z[g+164>>2]=-h;z[g+160>>2]=-i;a=0;a:{if(z[b+4>>2]!=C(1)){break a}a=0;if(z[b+8>>2]!=C(1)){break a}a=z[b+12>>2]==C(1)}v[g+144>>2]=0;v[g+148>>2]=1065353216;v[g+136>>2]=0;v[g+140>>2]=0;v[g+128>>2]=0;v[g+132>>2]=1065353216;v[g+120>>2]=0;v[g+124>>2]=0;v[g+112>>2]=1065353216;v[g+116>>2]=1065353216;v[g+96>>2]=1065353216;v[g+100>>2]=0;t[g+152|0]=0;v[g+104>>2]=0;v[g+108>>2]=0;v[g+88>>2]=0;v[g+92>>2]=0;v[g+80>>2]=1065353216;v[g+84>>2]=0;if(!a){JX(g+80|0,b+4|0,b+16|0)}k=g- -64|0;v[k>>2]=0;v[k+4>>2]=1065353216;v[g+56>>2]=0;v[g+60>>2]=0;v[g+48>>2]=0;v[g+52>>2]=1065353216;v[g+40>>2]=0;v[g+44>>2]=0;v[g+32>>2]=1065353216;v[g+36>>2]=1065353216;v[g+16>>2]=1065353216;v[g+20>>2]=0;t[g+72|0]=0;v[g+24>>2]=0;v[g+28>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;v[g>>2]=1065353216;v[g+4>>2]=0;a=zZ(g+408|0,g+160|0,b,c,d,e,f,g,g+80|0,1,a);xa=g+480|0;return a}function N6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if(!v[a+28>>2]){Ba[v[v[b>>2]+8>>2]](b);Ba[v[v[b>>2]+28>>2]](b);return}a:{if(!v[a+28>>2]){break a}while(1){f=0;g=v[a+4>>2]+B(d,28)|0;b:{if(v[g+24>>2]!=151512){break b}e=v[g+12>>2];c=v[e>>2];if(c){v[e>>2]=v[c>>2]}c:{if(c){v[c+4>>2]=b;break c}c=v[37696];e=Ba[v[v[c>>2]+20>>2]](c)|0?24921:63804;e=Ba[v[v[c+12>>2]+8>>2]](c+12|0,27,e,18281,127)|0;if(!e){break b}c=e+11&-8;v[c-4>>2]=c-e;if(!c){break b}t[c+8|0]=0;v[c+4>>2]=b;v[c>>2]=0}f=v[g+20>>2];v[c>>2]=v[f>>2];v[f>>2]=c;f=1}if(!f){d=d+1|0;if(d>>>0>2]){continue}break a}break}a=v[a+20>>2];if(!w[a+76|0]){t[a+76|0]=1;v[a+72>>2]=v[a+72>>2]+1}return}c=v[a+12>>2];d=v[c>>2];if(d){v[c>>2]=v[d>>2]}d:{e:{if(d){v[d+4>>2]=b;break e}d=v[37696];c=Ba[v[v[d>>2]+20>>2]](d)|0?24921:63804;c=Ba[v[v[d+12>>2]+8>>2]](d+12|0,27,c,18281,127)|0;if(!c){break d}d=c+11&-8;v[d-4>>2]=d-c;if(!d){break d}t[d+8|0]=0;v[d+4>>2]=b;v[d>>2]=0}b=v[a+16>>2];v[d>>2]=v[b>>2];v[b>>2]=d;a=v[a+20>>2];if(!w[a+76|0]){t[a+76|0]=1;v[a+72>>2]=v[a+72>>2]+1}}}function C5(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);l=z[b+8>>2];i=z[c+8>>2];m=z[b>>2];j=z[c>>2];p=z[b+4>>2];f=z[c+4>>2];h=C(C(l*i)+C(C(m*j)+C(p*f)));a:{if(!(C(D(h))>=C(9.999999974752427e-7))){g=z[b+12>>2];k=C(1);h=C(0);break a}g=z[b+12>>2];i=C(i*h);j=C(j*h);f=C(f*h);h=C(C(1)/C(K(C(C(g*g)+C(C(i*i)+C(C(j*j)+C(f*f)))))));k=C(g*h);n=C(i*h);o=C(f*h);h=C(j*h)}i=C(C(h*p)+C(C(C(l*k)-C(g*n))-C(m*o)));j=C(C(n*m)+C(C(C(p*k)-C(g*o))-C(l*h)));f=C(C(o*l)+C(C(C(m*k)-C(g*h))-C(p*n)));g=C(C(l*n)+C(C(p*o)+C(C(g*k)+C(m*h))));if(!(g>=C(0))){i=C(-i);j=C(-j);f=C(-f);g=C(-g)}p=C(-n);r=C(-o);s=C(-h);b=d>g;t[e|0]=b;b:{if(!b){d=g;break b}g=C(0);l=C(0);m=C(0);q=C(C(i*i)+C(C(f*f)+C(j*j)));if(q>C(0)){g=C(C(1)/C(K(q)));m=C(i*g);l=C(j*g);g=C(f*g)}f=C(K(C(C(1)-C(d*d))));i=C(f*m);j=C(f*l);f=C(f*g)}z[a+12>>2]=C(C(C(d*k)-C(h*f))-C(j*o))-C(i*n);z[a+8>>2]=C(s*j)+C(C(f*o)+C(C(d*n)+C(k*i)));z[a+4>>2]=C(p*f)+C(C(i*h)+C(C(d*o)+C(k*j)));z[a>>2]=C(r*i)+C(C(j*n)+C(C(d*h)+C(k*f)))}function mv(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=C(0),j=C(0),k=C(0),l=0;f=xa-576|0;xa=f;v[f+560>>2]=0;v[f+564>>2]=1065353216;v[f+552>>2]=0;v[f+556>>2]=0;v[f+544>>2]=0;v[f+548>>2]=1065353216;v[f+536>>2]=0;v[f+540>>2]=0;v[f+528>>2]=1065353216;v[f+532>>2]=1065353216;v[f+512>>2]=1065353216;v[f+516>>2]=0;t[f+568|0]=0;v[f+520>>2]=0;v[f+524>>2]=0;v[f+504>>2]=0;v[f+508>>2]=0;v[f+496>>2]=1065353216;v[f+500>>2]=0;i=z[a+8>>2];j=z[a+4>>2];k=z[a+12>>2];z[f+492>>2]=k;z[f+488>>2]=i;z[f+484>>2]=j;z[f+480>>2]=-k;z[f+476>>2]=-i;z[f+472>>2]=-j;h=z_(f+176|0,a+4|0);a=f+400|0;A_(h,a);v[f+160>>2]=0;v[f+164>>2]=1065353216;v[f+152>>2]=0;v[f+156>>2]=0;v[f+144>>2]=0;v[f+148>>2]=1065353216;v[f+136>>2]=0;v[f+140>>2]=0;v[f+128>>2]=1065353216;v[f+132>>2]=1065353216;v[f+112>>2]=1065353216;v[f+116>>2]=0;t[f+168|0]=0;v[f+120>>2]=0;v[f+124>>2]=0;v[f+104>>2]=0;v[f+108>>2]=0;v[f+96>>2]=1065353216;v[f+100>>2]=0;h=a;a=f+72|0;l=c;c=f+96|0;a=uZ(h,f,f+472|0,a,l,d,e,g,f+496|0,c,1,XZ(b,c,a,f));xa=f+576|0;return a|0}function yT(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=C(0);g=xa-144|0;xa=g;v[g+128>>2]=3;z[g+132>>2]=z[b+40>>2];z[g+136>>2]=z[b+44>>2];z[g+140>>2]=z[b+48>>2];z[g+112>>2]=A[d>>3]-A[c+12>>3];z[g+116>>2]=A[d+8>>3]-A[c+20>>3];z[g+120>>2]=A[d+16>>3]-A[c+28>>3];z[g+96>>2]=z[a+244>>2];z[g+100>>2]=z[a+248>>2];z[g+104>>2]=z[a+252>>2];z[g+108>>2]=z[a+256>>2];v[g+88>>2]=0;z[g+92>>2]=z[c+48>>2];z[g+72>>2]=z[c+36>>2];z[g+76>>2]=z[c+40>>2];z[g+80>>2]=z[c+44>>2];v[g+64>>2]=0;v[g+68>>2]=1065353216;v[g+56>>2]=0;v[g+60>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;v[g+40>>2]=0;v[g+44>>2]=0;v[g+24>>2]=0;v[g+28>>2]=0;u[g+20>>1]=0;v[g+16>>2]=-1;v[g+8>>2]=0;v[g+12>>2]=0;v[g+48>>2]=2139095039;h=z[f+36>>2];u[g>>1]=w[a+299|0]?1283:1027;a=jV(e,h,g+128|0,g+96|0,g+88|0,g+56|0,g+8|0,g);if(a){z[f+36>>2]=z[g+48>>2];z[f+24>>2]=z[g+36>>2];z[f+28>>2]=z[g+40>>2];h=z[g+44>>2];v[f+40>>2]=-1;v[f+44>>2]=-1;z[f+32>>2]=h;A[f>>3]=A[c+12>>3]+ +z[g+24>>2];A[f+8>>3]=A[c+20>>3]+ +z[g+28>>2];A[f+16>>3]=A[c+28>>3]+ +z[g+32>>2]}xa=g+144|0;return a|0}function eZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=0,u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0);g=v[b+8>>2];t=d;d=v[b+4>>2];o=z[d+72>>2];e=z[c+8>>2];f=z[c>>2];h=z[c+4>>2];i=C(C(z[b+56>>2]*e)+C(C(z[b+24>>2]*f)+C(h*z[b+40>>2])));p=z[d- -64>>2];j=C(C(z[b+48>>2]*e)+C(C(z[b+16>>2]*f)+C(h*z[b+32>>2])));e=C(C(z[b+52>>2]*e)+C(C(z[b+20>>2]*f)+C(h*z[b+36>>2])));h=z[d+68>>2];f=C(C(o*i)+C(C(p*j)+C(e*h)));q=z[d+88>>2];r=z[d+80>>2];s=z[d+84>>2];k=C(C(q*i)+C(C(r*j)+C(e*s)));b=f>k;l=f;f=z[d+56>>2];m=C(f*i);i=z[d+48>>2];n=C(i*j);j=z[d+52>>2];e=C(m+C(n+C(e*j)));c=!(lk);v[t>>2]=c?b?1:2:0;k=z[g+52>>2];u=z[g+36>>2];w=z[g+20>>2];e=z[g+56>>2];x=z[g+40>>2];y=z[g+24>>2];A=z[g+48>>2];B=z[g+32>>2];D=z[g>>2];E=z[g+16>>2];m=z[g+4>>2];n=z[g+8>>2];v[a+12>>2]=0;l=e;e=c?b?o:q:f;f=c?b?p:r:i;h=c?b?h:s:j;z[a+8>>2]=l+C(C(x*e)+C(C(n*f)+C(y*h)));z[a+4>>2]=k+C(C(u*e)+C(C(m*f)+C(h*w)));z[a>>2]=A+C(C(B*e)+C(C(D*f)+C(h*E)))}function Us(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=v[a+8>>2];i=f&2147483647?f<<1:1;a:{if(!i){break a}c=B(i,48);if(!c){break a}g=v[37696];f=g+12|0;g=(k=f,l=c,m=Ba[v[v[g>>2]+20>>2]](g)|0?43123:63804,n=16608,o=553,j=v[v[f>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}h=v[a+4>>2];e=B(h,48)+g|0;f=v[a>>2];if((h|0)>0){d=f;c=g;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];v[c+44>>2]=v[d+44>>2];d=d+48|0;c=c+48|0;if(e>>>0>c>>>0){continue}break}}z[e>>2]=z[b>>2];z[e+4>>2]=z[b+4>>2];z[e+8>>2]=z[b+8>>2];v[e+12>>2]=v[b+12>>2];z[e+16>>2]=z[b+16>>2];z[e+20>>2]=z[b+20>>2];z[e+24>>2]=z[b+24>>2];v[e+28>>2]=v[b+28>>2];z[e+32>>2]=z[b+32>>2];z[e+36>>2]=z[b+36>>2];z[e+40>>2]=z[b+40>>2];v[e+44>>2]=v[b+44>>2];if(!(!f|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,f);h=v[a+4>>2]}v[a+8>>2]=i;v[a>>2]=g;v[a+4>>2]=h+1}function $2(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=xa-144|0;xa=f;a:{if(y[b+4>>2]<2|y[b>>2]<2|(v[b+8>>2]!=1|y[b+12>>2]<4)){break a}if(x[b+24>>1]>1|z[b+20>>2]>2]+12>>2]](a)|0;a=pX(72,70,72,70,1,b,c);b:{if(!a){break b}kX(v[d+40>>2],b,c);kX(v[d+44>>2],b,c);lX(z[d+48>>2],b,c);lX(z[d+52>>2],b,c);lX(z[d+56>>2],b,c);lX(C(0),b,c);lX(z[d- -64>>2],b,c);jX(x[d+68>>1],b,c);kX(v[d+72>>2],b,c);lX(C(z[d+16>>2]-z[d+28>>2]),b,c);lX(C(z[d+20>>2]-z[d+32>>2]),b,c);lX(C(z[d+24>>2]-z[d+36>>2]),b,c);lX(C(z[d+16>>2]+z[d+28>>2]),b,c);lX(C(z[d+20>>2]+z[d+32>>2]),b,c);lX(C(z[d+24>>2]+z[d+36>>2]),b,c);kX(v[d+76>>2],b,c);kX(v[d+80>>2],b,c);lX(z[d+84>>2],b,c);lX(z[d+88>>2],b,c);if(!v[d+80>>2]){break b}while(1){g=v[d+60>>2]+(e<<2)|0;jX(x[g>>1],b,c);Ba[v[v[c>>2]>>2]](c,g+2|0,1)|0;Ba[v[v[c>>2]>>2]](c,g+3|0,1)|0;e=e+1|0;if(e>>>0>2]){continue}break}}e=a}if(t[d+6|0]&1){a=v[d+60>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}v[d+60>>2]=0}S_(d)}xa=f+144|0;return e|0}function aO(a){a=a|0;var b=0,c=0;v[a+8>>2]=134112;v[a>>2]=133964;b=v[a+112>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+100>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+92>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+88>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+80>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+76>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+68>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+60>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+52>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+48>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+40>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+36>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+28>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+20>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=v[a+12>>2];if(!b){break g}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function dH(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;v[a>>2]=130544;i=v[a+152>>2];c=v[a+44>>2];d=v[a+40>>2];TG(c,v[d+2412>>2],t[c+44|0]&1);u[a+148>>1]=x[a+148>>1]|8;c=xa-16|0;xa=c;b=v[a+164>>2];if(b){IH(v[d+1136>>2],b,0)}b=v[a+44>>2];v[c+8>>2]=b;Pg(d+2200|0,c+8|0);v[c+4>>2]=b;Pg(d+2240|0,c+4|0);if(!(!(w[b+44|0]&16)|y[a+152>>2]>4294967293)){v[c+12>>2]=a;Pg(d+4632|0,c+12|0)}g=v[a+48>>2];f=g+32>>>5|0;a:{if(f>>>0<=(v[d+2436>>2]&2147483647)>>>0){b=v[d+2432>>2];break a}b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,f<<2,24422,17999,438)|0;e=v[d+2432>>2];b:{if(!e){break b}I9(b,e,v[d+2436>>2]<<2);if(v[d+2436>>2]<0){break b}e=v[d+2432>>2];if(!e){break b}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,e)}e=v[d+2436>>2];J9((e<<2)+b|0,0,f-e<<2);v[d+2436>>2]=f;v[d+2432>>2]=b}b=(g>>>3&536870908)+b|0;v[b>>2]=v[b>>2]|1<>2];c:{if(c){wG(c,a);if(v[a+160>>2]){break c}}c=v[a+144>>2];if(c&126){break c}YF(v[d+1e3>>2],c)}if(i>>>0<=4294967293){VO(d,a)}v[a+152>>2]=-1;v[a+156>>2]=-1;v[v[a+44>>2]>>2]=0;return VJ(a)|0}function uM(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=C(0),o=C(0),p=C(0);c=(v[a>>2]<<5)+b|0;a=x[c+22>>1];if(a){d=v[c+24>>2];l=d+(a<<4)|0;b=v[c+60>>2];a=v[c+92>>2];h=v[c+124>>2];i=v[c+28>>2];while(1){c=d;k=c+240|0;g=w[c+1|0];f=g<<4;j=w[c+2|0];m=(((k+f|0)+B(g,160)|0)+(f&0-(t[c+3|0]&1))|0)+(j<<4)|0;if(g){d=0;while(1){f=a;e=(d<<4)+k|0;n=z[e+12>>2];o=z[e+8>>2];p=z[e+4>>2];a=0;a:{if(!i){break a}a=i;if(w[c+8|0]<=d>>>0){break a}z[i>>2]=z[e>>2];a=i+4|0}i=a;a=0;e=0;b:{if(!b){break b}e=b;if(w[c+9|0]<=d>>>0){break b}z[b>>2]=p;e=b+4|0}b=e;c:{if(!f){break c}if(w[c+10|0]<=d>>>0){a=f;break c}z[f>>2]=o;a=f+4|0}d:{if(!h){h=0;break d}if(w[c+11|0]<=d>>>0){break d}z[h>>2]=n;h=h+4|0}d=d+1|0;if((g|0)!=(d|0)){continue}break}}d=B(j,208)+m|0;e:{if(!j){break e}f=v[c+220>>2];e=v[c+216>>2];g=v[c+212>>2];if(!(!w[c+8|0]|!v[c+208>>2])){t[v[c+224>>2]]=1}if(!(!w[c+9|0]|!g)){t[v[c+228>>2]]=1}if(!(!w[c+10|0]|!e)){t[v[c+232>>2]]=1}if(!w[c+11|0]|!f){break e}t[v[c+236>>2]]=1}if(d>>>0>>0){continue}break}}}function hU(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=xa-16|0;xa=f;v[f+8>>2]=b;b=Xn(a+144|0,f+8|0,f+15|0);a:{if(!w[f+15|0]){v[b>>2]=v[f+8>>2];v[b+4>>2]=-1;break a}e=b;b=v[b+4>>2]-1|0;v[e+4>>2]=b;if(b){break a}b:{if(!v[a+180>>2]){break b}i=v[a+156>>2];d=v[f+8>>2];b=(d<<15^-1)+d|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=i+((v[a+164>>2]-1&(b>>>16^b))<<2)|0;b=v[c>>2];if((b|0)==-1){break b}h=v[a+152>>2];g=v[a+148>>2];e=g+(b<<3)|0;if((d|0)!=v[e>>2]){while(1){c=(b<<2)+h|0;b=v[c>>2];if((b|0)==-1){break b}e=g+(b<<3)|0;if((d|0)!=v[e>>2]){continue}break}}d=(b<<2)+h|0;v[c>>2]=v[d>>2];c=v[a+180>>2]-1|0;v[a+180>>2]=c;v[a+176>>2]=v[a+176>>2]+1;if((b|0)!=(c|0)){j=e;e=g+(c<<3)|0;c=v[e>>2];v[j>>2]=c;v[(g+(b<<3)|0)+4>>2]=v[e+4>>2];v[d>>2]=v[(v[a+180>>2]<<2)+h>>2];c=c+(c<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=((v[a+164>>2]-1&(c>>>16^c))<<2)+i|0;d=v[c>>2];g=v[a+180>>2];if((d|0)!=(g|0)){while(1){c=(d<<2)+h|0;d=v[c>>2];if((g|0)!=(d|0)){continue}break}}v[c>>2]=b}v[a+172>>2]=v[a+172>>2]-1}}xa=f+16|0}function SX(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);j=xa-96|0;xa=j;l=z[b+4>>2];o=C(l+l);k=z[b+8>>2];p=C(o*k);m=z[b>>2];n=C(m+m);r=z[b+12>>2];q=C(n*r);z[j+60>>2]=p-q;z[j+52>>2]=p+q;m=C(C(1)-C(m*n));p=C(l*o);z[j- -64>>2]=m-p;s=m;m=C(k+k);q=C(k*m);z[j+48>>2]=s-q;k=C(n*k);o=C(o*r);z[j+56>>2]=k+o;l=C(n*l);n=C(m*r);z[j+44>>2]=l-n;z[j+40>>2]=k-o;z[j+36>>2]=l+n;z[j+32>>2]=C(C(1)-p)-q;z[j+68>>2]=z[b+16>>2];z[j+72>>2]=z[b+20>>2];z[j+76>>2]=z[b+24>>2];z[j+80>>2]=z[a+4>>2];z[j+84>>2]=z[a+8>>2];z[j+88>>2]=z[a+12>>2];k=z[e>>2];l=z[e+4>>2];n=z[e+8>>2];u[j+8>>1]=x[h>>1]&64511;z[j+24>>2]=-n;z[j+20>>2]=-l;z[j+16>>2]=-k;a=LX(c,d,a,b,j+32|0,j+16|0,f,g,j+8|0,i);if(a){if(t[g+12|0]&1){i=z[e+8>>2];k=z[e+4>>2];f=z[g+40>>2];z[g+16>>2]=C(f*z[e>>2])+z[g+16>>2];z[g+20>>2]=C(f*k)+z[g+20>>2];z[g+24>>2]=C(f*i)+z[g+24>>2]}v[g+8>>2]=-1;z[g+28>>2]=-z[g+28>>2];z[g+36>>2]=-z[g+36>>2];z[g+32>>2]=-z[g+32>>2]}xa=j+96|0;return a|0}function AG(a,b,c){var d=C(0),e=0,f=C(0);t[a+10|0]=0;t[a+9|0]=b;t[a+8|0]=1;v[a>>2]=0;v[a+4>>2]=16777215;v[a+176>>2]=0;u[a+174>>1]=0;v[a+44>>2]=0;e=v[37415];f=z[e>>2];d=z[e+4>>2];z[a+16>>2]=z[c>>2];z[a+20>>2]=z[c+4>>2];z[a+24>>2]=z[c+8>>2];z[a+28>>2]=z[c+12>>2];z[a+32>>2]=z[c+16>>2];z[a+36>>2]=z[c+20>>2];z[a+40>>2]=z[c+24>>2];t[a+174|0]=0;u[a+172>>1]=0;z[a+156>>2]=z[23002];z[a+152>>2]=d*C(d*C(2499999936844688e-20));z[a+148>>2]=d*C(d*C(4999999873689376e-20));v[a+140>>2]=1065353216;v[a+144>>2]=1956496814;v[a+132>>2]=1065353216;v[a+136>>2]=1065353216;v[a+124>>2]=1028443341;v[a+128>>2]=1065353216;b=(b|0)==1;z[a+120>>2]=b?C(0):C(.05000000074505806);z[a+116>>2]=b?C(10000000331813535e16):C(f*C(f*C(1e4)));z[a+112>>2]=b?C(1e4):C(2500);v[a+104>>2]=0;v[a+108>>2]=2139095039;v[a+96>>2]=0;v[a+100>>2]=0;v[a+88>>2]=0;v[a+92>>2]=-190986834;v[a+80>>2]=0;v[a+84>>2]=0;v[a+72>>2]=0;v[a+76>>2]=1041865114;b=a- -64|0;v[b>>2]=0;v[b+4>>2]=0;v[a+56>>2]=0;v[a+60>>2]=1065353216;v[a+48>>2]=0;v[a+52>>2]=0;v[a+44>>2]=17039616}function IR(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=v[a+44>>2];if(!(!(c&476)|!(c&4194304))){d=v[v[v[a+4>>2]+40>>2]+2168>>2];f=xa-16|0;xa=f;e=a;v[f+12>>2]=a;v[a+44>>2]=v[a+44>>2]|2097152;h=d+16|0;c=v[d+20>>2];g=v[d+28>>2];a:{if((c|0)==(g|0)){v[e+52>>2]=c;if((v[d+24>>2]&2147483647)>>>0<=c>>>0){CJ(h,f+12|0);c=v[d+28>>2];break a}v[v[d+16>>2]+(c<<2)>>2]=e;v[d+20>>2]=c+1;break a}j=v[d+16>>2];i=v[j+(g<<2)>>2];v[f+8>>2]=i;v[i+52>>2]=c;b:{if((v[d+24>>2]&2147483647)>>>0<=c>>>0){CJ(h,f+8|0);c=v[d+28>>2];break b}v[(c<<2)+j>>2]=i;v[d+20>>2]=c+1;e=v[f+12>>2];c=g}v[e+52>>2]=c;v[v[h>>2]+(c<<2)>>2]=e}v[d+28>>2]=c+1;xa=f+16|0;v[a+44>>2]=v[a+44>>2]&-4194305}c=v[v[a+32>>2]+4>>2];e=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;g=v[v[v[v[a+4>>2]+40>>2]+1e3>>2]+656>>2];c=v[v[a+28>>2]+4>>2];c:{if(!(w[(g+B(v[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+144>>2]>>>7|0,24)|0)+4|0]&2)){c=0;if(!e|!(w[(g+B(v[e+144>>2]>>>7|0,24)|0)+4|0]&2)){break c}}d:{if(v[a+56>>2]){break d}JR(a,b);if(v[a+56>>2]){break d}return 0}t[a+25|0]=w[a+25|0]|32;c=1}return c}function Ni(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;$n(v[37393],a,v[a+8>>2],1);Oi(a);a:{b:{d=v[a+320>>2];d=Ba[v[v[d>>2]+100>>2]](d)|0;c=v[d+88>>2];if(!c){break b}e=v[d+84>>2];while(1){if(v[e+(b<<2)>>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;v[d+88>>2]=c;e=b<<2;b=v[d+84>>2];v[e+b>>2]=v[b+(c<<2)>>2]}c=v[a+328>>2];c:{if(!c){break c}d:{e=v[c+356>>2];if(!e){b=0;break d}f=v[c+352>>2];b=0;while(1){if(v[f+(b<<2)>>2]==(a|0)){break d}b=b+1|0;if((e|0)!=(b|0)){continue}break}break c}if((b|0)==(e|0)){break c}e=e-1|0;v[c+356>>2]=e;f=b<<2;b=v[c+352>>2];v[f+b>>2]=v[b+(e<<2)>>2]}b=v[a+324>>2];if(b){Ba[v[v[b>>2]>>2]](b)}b=vh(a);if(b){Fu(b+16|0,a+48|0,1,0);e:{f:{switch((v[d+4>>2]>>>30|0)-2|0){case 0:if(w[v[d>>2]+4785|0]){break e}break;case 1:break e;default:break f}}c=v[d+12>>2];if(!c){break e}e=v[d+88>>2];if(e>>>0<2){break e}d=v[d+84>>2];b=1;while(1){f=v[d+(b<<2)>>2];g=f,h=tG(c,v[f- -64>>2]),v[g+364>>2]=h;b=b+1|0;if((e|0)!=(b|0)){continue}break}}}tu(a+48|0)}function p1(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0);y=z[b+52>>2];A=z[c+52>>2];B=z[b+56>>2];n=z[c+56>>2];o=z[c+20>>2];p=z[c+24>>2];h=z[b+20>>2];i=z[b+24>>2];q=z[c+36>>2];d=z[b+36>>2];r=z[c+40>>2];e=z[b+40>>2];D=z[b+48>>2];s=z[c+48>>2];t=z[c+16>>2];j=z[b+16>>2];u=z[c+32>>2];f=z[b+32>>2];w=z[c+8>>2];k=z[b+8>>2];x=z[c>>2];l=z[b>>2];g=z[c+4>>2];m=z[b+4>>2];v[a+60>>2]=0;v[a+44>>2]=0;v[a+28>>2]=0;v[a+12>>2]=0;z[a>>2]=C(k*w)+C(C(l*x)+C(m*g));z[a+40>>2]=C(e*r)+C(C(f*u)+C(d*q));z[a+36>>2]=C(i*r)+C(C(j*u)+C(h*q));z[a+32>>2]=C(k*r)+C(C(l*u)+C(m*q));z[a+24>>2]=C(e*p)+C(C(f*t)+C(d*o));z[a+20>>2]=C(i*p)+C(C(j*t)+C(h*o));z[a+16>>2]=C(k*p)+C(C(l*t)+C(m*o));z[a+8>>2]=C(e*w)+C(C(f*x)+C(d*g));z[a+4>>2]=C(i*w)+C(C(j*x)+C(h*g));g=e;e=C(n-B);n=f;f=C(s-D);s=d;d=C(A-y);z[a+56>>2]=C(g*e)+C(C(n*f)+C(s*d));z[a+52>>2]=C(i*e)+C(C(j*f)+C(d*h));z[a+48>>2]=C(k*e)+C(C(l*f)+C(d*m))}function uO(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);e=v[a+36>>2];if(z[e+124>>2]!=C(0)){a:{if(d){z[e+16>>2]=z[a+16>>2];z[e+20>>2]=z[a+20>>2];z[e+24>>2]=z[a+24>>2];z[e>>2]=z[a>>2];z[e+4>>2]=z[a+4>>2];z[e+8>>2]=z[a+8>>2];z[e+12>>2]=z[a+12>>2];b=C(C(1)-b);break a}j=C(1);f=z[a+20>>2];g=z[a+24>>2];b=C(C(1)-b);z[e+16>>2]=C(b*C(z[e+64>>2]*c))+z[a+16>>2];z[e+24>>2]=g+C(b*C(z[e+72>>2]*c));z[e+20>>2]=f+C(b*C(z[e+68>>2]*c));f=C(b*C(z[e+88>>2]*c));g=C(b*C(z[e+80>>2]*c));c=C(b*C(z[e+84>>2]*c));i=C(K(C(C(f*f)+C(C(g*g)+C(c*c)))));if(i>C(9999999682655225e-36)){h=f;f=C(C(1)/i);m=C(h*f);k=C(c*f);j=C(g*f)}c=z[a+12>>2];g=C(i*C(.5));f=H9(g);h=R9(g);j=C(h*j);g=z[a>>2];i=z[a+4>>2];k=C(h*k);l=z[a+8>>2];h=C(h*m);z[e+12>>2]=C(C(C(c*f)-C(j*g))-C(i*k))-C(l*h);z[e+8>>2]=C(C(g*k)+C(C(c*h)+C(f*l)))-C(j*i);z[e+4>>2]=C(C(l*j)+C(C(c*k)+C(f*i)))-C(h*g);z[e>>2]=C(C(i*h)+C(C(c*j)+C(f*g)))-C(k*l)}a=v[a+32>>2];b=C(b*z[a+36>>2]);z[a+36>>2]=b>C(.009999999776482582)?b:C(.009999999776482582)}}function zE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=0;f=xa+-64|0;xa=f;d=1;a:{if(!(v[c+40>>2]&x[a+20>>1])){break a}o=v[c>>2];if(!v[o+588>>2]){break a}k=z[c+20>>2];d=v[a+4>>2];j=C(z[d+8>>2]-z[c+36>>2]);g=C(j+j);j=z[c+12>>2];e=C(z[d>>2]-z[c+28>>2]);h=C(e+e);e=C(z[d+4>>2]-z[c+32>>2]);i=C(e+e);e=z[c+16>>2];m=C(C(k*g)+C(C(j*h)+C(i*e)));l=z[c+24>>2];n=C(C(l*l)+C(-.5));z[f+56>>2]=C(k*m)+C(C(g*n)-C(l*C(C(j*i)-C(h*e))));z[f+52>>2]=C(e*m)+C(C(i*n)-C(l*C(C(k*h)-C(g*j))));z[f+48>>2]=C(j*m)+C(C(h*n)-C(l*C(C(e*g)-C(i*k))));d=v[a+8>>2];g=z[d+8>>2];g=C(g+g);h=z[d>>2];h=C(h+h);i=z[d+4>>2];i=C(i+i);m=C(C(k*g)+C(C(j*h)+C(e*i)));z[f+40>>2]=C(k*m)+C(C(g*n)-C(l*C(C(j*i)-C(h*e))));z[f+36>>2]=C(e*m)+C(C(i*n)-C(l*C(C(k*h)-C(g*j))));z[f+32>>2]=C(j*m)+C(C(h*n)-C(l*C(C(e*g)-C(i*k))));d=v[a+12>>2];z[f+16>>2]=z[d>>2];z[f+20>>2]=z[d+4>>2];z[f+24>>2]=z[d+8>>2];c=v[c+4>>2];d=iD(v[c+12>>2],v[c+8>>2],o,f+48|0,f+32|0,b,v[a+16>>2])}xa=f- -64|0;return d|0}function rZ(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0),t=C(0);g=xa-48|0;xa=g;f=v[a+112>>2];m=z[f+28>>2];n=z[f+16>>2];h=z[f+32>>2];j=z[f+20>>2];r=w[f+72|0];o=z[f+4>>2];p=z[f+8>>2];i=z[c>>2];k=z[c+4>>2];s=z[f+12>>2];l=z[c+8>>2];t=z[f+24>>2];z[g+8>>2]=C(C(i*z[f>>2])+C(k*s))+C(l*t);z[g+16>>2]=C(C(i*p)+C(k*j))+C(l*h);z[g+12>>2]=C(C(i*o)+C(k*n))+C(l*m);k=z[f>>2];l=z[f+4>>2];q=g+8|0;c=q+(r?24:12)|0;i=z[d>>2];o=j;j=z[d+4>>2];p=h;h=z[d+8>>2];z[c+8>>2]=C(C(i*z[f+8>>2])+C(o*j))+C(p*h);z[c+4>>2]=C(C(i*l)+C(n*j))+C(m*h);z[c>>2]=C(C(i*k)+C(s*j))+C(t*h);j=z[f+28>>2];i=z[f+16>>2];k=z[f+24>>2];l=z[f>>2];o=z[f+12>>2];p=z[f+4>>2];c=(r?12:24)+q|0;m=z[e>>2];n=z[e+4>>2];h=z[e+8>>2];z[c+8>>2]=C(C(m*z[f+8>>2])+C(n*z[f+20>>2]))+C(h*z[f+32>>2]);z[c+4>>2]=C(C(m*p)+C(n*i))+C(h*j);z[c>>2]=C(C(m*l)+C(n*o))+C(h*k);c=a+8|0;b=v[b+8>>2];a=v[v[a+108>>2]+56>>2];if(a){a=w[a+b|0]}else{a=56}pZ(c,b,q,a);xa=g+48|0;return 1}function P2(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0);j=z[c+8>>2];t=z[d+8>>2];g=C(g+C(-.10000000149011612));u=C(C(g*z[f+8>>2])+z[b+8>>2]);h=C(t-u);k=z[c>>2];v=z[d>>2];w=C(C(g*z[f>>2])+z[b>>2]);i=C(v-w);x=z[d+4>>2];y=C(C(g*z[f+4>>2])+z[b+4>>2]);g=C(x-y);l=z[c+4>>2];q=C(C(j*h)+C(C(k*i)+C(g*l)));m=z[e+8>>2];n=z[e>>2];o=z[e+4>>2];i=C(-C(C(m*h)+C(C(n*i)+C(g*o))));g=C(0);r=C(C(j*j)+C(C(k*k)+C(l*l)));s=C(C(m*m)+C(C(n*n)+C(o*o)));p=C(C(j*m)+C(C(k*n)+C(l*o)));h=C(C(r*s)-C(p*p));a:{if(h==C(0)){break a}h=C(C(C(q*s)+C(p*i))/h);if(hC(1))){break a}g=C(1)}i=C(C(C(g*p)+i)/s);b:{if(iC(1)){break b}g=h;break b}if(!(i>C(1))){break b}g=C(0);i=C(1);h=C(C(q+p)/r);if(hC(1))){break b}g=C(1)}z[a+8>>2]=C(u+C(j*g))-C(t+C(m*i));z[a+4>>2]=C(y+C(l*g))-C(x+C(o*i));z[a>>2]=C(w+C(k*g))-C(v+C(n*i))}function M3(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);n=e>>>0>f>>>0?e:f;l=e>>>0>>0?e:f;m=B(d,3);if(m>>>0>=2){d=m;while(1){a:{b:{j=d+k>>>1|0;o=B(j,12)+h|0;p=v[o>>2];if(p>>>0>>0){break b}if((l|0)!=(p|0)){d=j;break a}if(y[o+4>>2]<=n>>>0){break b}d=j;break a}k=j}if(d-k>>>0>1){continue}break}}while(1){c:{d=k;if(!d){break c}k=d-1|0;j=B(k,12)+h|0;if(v[j>>2]!=(l|0)){break c}if(v[j+4>>2]==(n|0)){continue}}break}j=-1;d:{if(d>>>0>=m>>>0){break d}k=e+f|0;w=z[g+12>>2];q=z[g+8>>2];r=z[g+4>>2];s=z[g>>2];t=C(-34028234663852886e22);while(1){e=B(d,12)+h|0;if(v[e>>2]!=(l|0)|v[e+4>>2]!=(n|0)){break d}e:{e=v[e+8>>2];f:{if((e|0)==(i|0)){break f}g=B(e,12);f=g+c|0;f=B(((v[f>>2]-k|0)+v[f+4>>2]|0)+v[f+8>>2]|0,12)+a|0;if(C(C(C(z[f+8>>2]*q)+C(C(z[f>>2]*s)+C(z[f+4>>2]*r)))+w)>=C(0)){break e}f=b+g|0;u=C(C(q*z[f+8>>2])+C(C(s*z[f>>2])+C(r*z[f+4>>2])));if(!(u>t)){break f}t=u;j=e}d=d+1|0;if((m|0)!=(d|0)){continue}break d}break}j=e|-2147483648}return j}function sy(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;g=xa-1008|0;xa=g;u[v[b+16>>2]+22>>1]=0;i=v[a+4>>2];if(i){h=g+48|0;J9(h,0,960);v[g+988>>2]=2139095039;v[g+972>>2]=-8388609;v[g+908>>2]=2139095039;v[g+892>>2]=-8388609;v[g+828>>2]=2139095039;v[g+812>>2]=-8388609;v[g+748>>2]=2139095039;v[g+732>>2]=-8388609;v[g+668>>2]=2139095039;v[g+652>>2]=-8388609;v[g+588>>2]=2139095039;v[g+572>>2]=-8388609;v[g+508>>2]=2139095039;v[g+492>>2]=-8388609;v[g+428>>2]=2139095039;v[g+412>>2]=-8388609;v[g+348>>2]=2139095039;v[g+332>>2]=-8388609;v[g+268>>2]=2139095039;v[g+252>>2]=-8388609;v[g+188>>2]=2139095039;v[g+172>>2]=-8388609;v[g+108>>2]=2139095039;v[g+92>>2]=-8388609;v[b+4>>2]=1065353216;v[b+8>>2]=1065353216;v[b+12>>2]=1065353216;v[b>>2]=1065353216;v[g+40>>2]=0;v[g+32>>2]=0;v[g+36>>2]=0;j=b,k=Ba[i|0](h,g+32|0,12,b,v[a+8>>2],b+36|0,b- -64|0,w[b+139|0],g+16|0,g)|0,v[j+116>>2]=k;v[b+112>>2]=h;z[b+140>>2]=z[g+32>>2];z[b+144>>2]=z[g+36>>2];z[b+148>>2]=z[g+40>>2];h=ry(b,c,d,e,f)}xa=g+1008|0;return h}function cx(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0;e=xa+-64|0;xa=e;t[a+489|0]=1;m=v[a+452>>2];n=v[a+32>>2];f=v[a+264>>2];g=z[c>>2];h=z[c+4>>2];i=z[c+8>>2];j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];z[e+56>>2]=-l;z[e+52>>2]=-k;v[e+60>>2]=0;z[e+48>>2]=-j;v[e+44>>2]=0;z[e+40>>2]=-i;z[e+36>>2]=-h;z[e+32>>2]=-g;c=(b<<5)+f|0;z[c>>2]=z[c>>2]-g;z[c+4>>2]=z[c+4>>2]-h;z[c+8>>2]=z[c+8>>2]-i;z[c+16>>2]=z[c+16>>2]-j;z[c+20>>2]=z[c+20>>2]-k;z[c+24>>2]=z[c+24>>2]-l;if(b){while(1){dx(e,v[a+396>>2]+B(b,96)|0,(B(b,160)+m|0)+120|0,v[a+384>>2]+B(b,76)|0,e+32|0);v[e+44>>2]=0;v[e+60>>2]=0;g=z[e>>2];z[e+32>>2]=g;h=z[e+4>>2];z[e+36>>2]=h;i=z[e+8>>2];z[e+40>>2]=i;j=z[e+16>>2];z[e+48>>2]=j;k=z[e+20>>2];z[e+52>>2]=k;l=z[e+24>>2];z[e+56>>2]=l;b=v[((b<<5)+n|0)+24>>2];c=(b<<5)+f|0;z[c>>2]=g+z[c>>2];z[c+4>>2]=h+z[c+4>>2];z[c+8>>2]=i+z[c+8>>2];z[c+16>>2]=j+z[c+16>>2];z[c+20>>2]=k+z[c+20>>2];z[c+24>>2]=l+z[c+24>>2];if(b){continue}break}}xa=e- -64|0}function FI(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{b:{if(!v[a+36>>2]){break b}e=v[b>>2];g=v[b+4>>2];b=e&65535|g<<16;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=v[a+12>>2]+((v[a+20>>2]-1&(b>>>16^b))<<2)|0;b=v[d>>2];if((b|0)==-1){break b}h=v[a+8>>2];f=v[a+4>>2];c=f+B(b,12)|0;if((e|0)==v[c>>2]&v[c+4>>2]==(g|0)){break a}while(1){d=(b<<2)+h|0;b=v[d>>2];if((b|0)==-1){break b}c=f+B(b,12)|0;if((e|0)!=v[c>>2]|v[c+4>>2]!=(g|0)){continue}break}break a}return}e=b<<2;v[d>>2]=v[e+h>>2];d=v[a+36>>2]-1|0;v[a+36>>2]=d;v[a+32>>2]=v[a+32>>2]+1;if((b|0)!=(d|0)){d=f+B(d,12)|0;g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;c=B(b,12);v[(c+f|0)+8>>2]=v[d+8>>2];f=v[a+8>>2];v[f+e>>2]=v[f+(v[a+36>>2]<<2)>>2];c=c+v[a+4>>2]|0;c=v[c+4>>2]<<16|x[c>>1];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[a+12>>2]+((v[a+20>>2]-1&(c>>>16^c))<<2)|0;c=v[d>>2];e=v[a+36>>2];if((c|0)!=(e|0)){while(1){d=f+(c<<2)|0;c=v[d>>2];if((e|0)!=(c|0)){continue}break}}v[d>>2]=b}v[a+28>>2]=v[a+28>>2]-1}function RB(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=0,m=C(0),n=C(0);i=v[a+24>>2];l=i>>>1|0;a:{if(i&1){l=l&15;if(!l){j=C(0x382c5fc0000000);f=C(-0x382c5fc0000000);h=C(-0x382c5fc0000000);m=C(-0x382c5fc0000000);g=C(0x382c5fc0000000);k=C(0x382c5fc0000000);break a}i=(i>>>3&536870908)+c|0;c=B(v[i>>2],24)+b|0;f=z[c+12>>2];k=z[c+8>>2];g=z[c+4>>2];j=z[c>>2];m=z[c+20>>2];h=z[c+16>>2];if((l|0)==1){break a}d=i+4|0;i=i+(l<<2)|0;n=z[c+24>>2];while(1){c=B(v[d>>2],24)+b|0;e=z[c+12>>2];f=f>e?f:e;e=z[c+8>>2];k=e>k?k:e;e=z[c+4>>2];g=e>g?g:e;e=z[c>>2];j=e>j?j:e;e=z[c+24>>2];n=e>2];m=e>2];h=e>2];f=z[b+28>>2];j=f>j?j:f;f=z[b+20>>2];h=z[b+48>>2];m=f>h?f:h;f=z[b+16>>2];h=z[b+44>>2];h=f>h?f:h;f=z[b+12>>2];g=z[b+40>>2];f=f>g?f:g;g=z[b+8>>2];k=z[b+36>>2];k=g>2];n=z[b+32>>2];g=g>2]=f;z[a+8>>2]=k;z[a+4>>2]=g;z[a>>2]=j;z[a+20>>2]=m;z[a+16>>2]=h}function CF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;h=xa-16|0;xa=h;v[h+12>>2]=b;e=v[a+60>>2];c=(b>>>0)/(e>>>0)|0;f=v[v[a+40>>2]+(c<<2)>>2]+(b-B(c,e)<<4)|0;u[f+4>>1]=x[f+4>>1]|64;g=v[f>>2];d=B(g,12)+a|0;e=d+148|0;c=v[d+152>>2];a:{if(c>>>0>=(v[d+156>>2]&2147483647)>>>0){pn(e,h+12|0);g=v[f>>2];break a}v[v[e>>2]+(c<<2)>>2]=b;v[d+152>>2]=v[d+152>>2]+1}b=(g<<2)+a|0;v[b+172>>2]=v[b+172>>2]+1;if(!g){c=v[h+12>>2];b=v[a+228>>2]+(c>>>3&536870908)|0;v[b>>2]=v[b>>2]|1<>2]<<1;g=e|1;b=v[a+448>>2];d=v[b+20>>2];f=(g>>>0)/(d>>>0)|0;b=v[b>>2];c=(e>>>0)/(d>>>0)|0;e=v[v[b+(c<<2)>>2]+(e-B(c,d)<<2)>>2];c=e>>>7|0;b:{if((c|0)==33554431){break b}b=v[v[b+(f<<2)>>2]+(g-B(d,f)<<2)>>2];g=b>>>7|0;if((g|0)==33554431){break b}f=v[a+16>>2];c=f+B(c,24)|0;d=v[c+16>>2];c:{if(d){break c}d=0;if((w[c+4|0]&38)!=4){break c}DF(a,e);f=v[a+16>>2];d=v[c+16>>2]}v[c+16>>2]=d+1;c=B(g,24)+f|0;d=v[c+16>>2];d:{if(d){break d}d=0;if((w[(B(g,24)+f|0)+4|0]&38)!=4){break d}DF(a,b);d=v[c+16>>2]}v[c+16>>2]=d+1}xa=h+16|0}function aZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0),J=C(0),K=C(0),L=C(0),M=C(0),N=C(0);d=v[b+8>>2];q=z[d+52>>2];r=z[d+36>>2];s=z[d+20>>2];i=z[d+56>>2];t=z[d+40>>2];u=z[d+24>>2];h=v[b+4>>2];j=z[h+56>>2];k=z[h+52>>2];l=z[h+72>>2];w=z[b+56>>2];x=z[b+24>>2];y=z[b+40>>2];A=z[b+48>>2];B=z[b+32>>2];m=z[h+68>>2];D=z[b+52>>2];E=z[b+20>>2];F=z[b+36>>2];G=z[d+48>>2];H=z[d+32>>2];I=z[d>>2];J=z[d+16>>2];K=z[d+4>>2];L=z[d+8>>2];n=z[h+48>>2];o=z[h+64>>2];M=z[b+16>>2];e=z[c+8>>2];f=z[c>>2];g=z[c+4>>2];v[a+12>>2]=0;N=i;p=j;j=C(C(w*e)+C(C(x*f)+C(g*y)));i=C(C(A*e)+C(C(M*f)+C(g*B)));e=C(C(D*e)+C(C(E*f)+C(g*F)));b=C(C(p*j)+C(C(n*i)+C(k*e)))>C(C(l*j)+C(C(o*i)+C(e*m)));e=b?p:l;f=b?n:o;g=b?k:m;z[a+8>>2]=N+C(C(t*e)+C(C(L*f)+C(u*g)));z[a+4>>2]=q+C(C(r*e)+C(C(K*f)+C(g*s)));z[a>>2]=G+C(C(H*e)+C(C(I*f)+C(g*J)))}function yI(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=v[v[a+84>>2]+560>>2];b=v[c>>2];if(b){v[c>>2]=v[b>>2]}if(!b){b=v[37696];b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,56,24422,8887,2450)|0;v[b>>2]=0;v[b+4>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0}e=b+4|0;v[a+28>>2]=e;c=v[b+8>>2];f=b+28|0;v[a+52>>2]=f;v[a+32>>2]=c;c=v[b+32>>2];v[a+40>>2]=b+16;v[a+56>>2]=c;c=v[b+20>>2];v[a- -64>>2]=b+40;v[a+44>>2]=c;v[a+68>>2]=v[b+44>>2];c=v[a+80>>2];if(c){while(1){g=v[v[v[a+76>>2]+(d<<2)>>2]+16>>2];if(g){c=v[a+84>>2];bI(g,v[c+400>>2],v[v[c+276>>2]+4>>2],v[v[c+192>>2]+4>>2],v[c+180>>2],c+208|0,c+196|0,e,f);c=v[a+80>>2]}d=d+1|0;if(d>>>0>>0){continue}break}}v[a+36>>2]=v[v[a+28>>2]+4>>2]-v[a+32>>2];v[a+60>>2]=v[v[a+52>>2]+4>>2]-v[a+56>>2];v[a+48>>2]=v[v[a+40>>2]+4>>2]-v[a+44>>2];v[a+72>>2]=v[v[a+64>>2]+4>>2]-v[a+68>>2];a=v[v[a+84>>2]+560>>2];v[b>>2]=v[a>>2];v[a>>2]=b}function mO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=C(0),l=0,m=0,n=0,o=0,p=0,q=0;if((Uaa(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=C(z[a+24>>2]*C(b>>>0));a:{if(k=C(0)){j=~~k>>>0;break a}j=0}n=v[a+16>>2];c=b+j<<2;c=(0-c&12)+c|0;f=c+B(j,12)|0;if(f){i=v[37696]+12|0;f=Ba[v[v[i>>2]+8>>2]](i,f,24422,17301,372)|0}else{f=0}d=c;c=b<<2;f=J9(f,255,c);i=d+f|0;m=c+f|0;if(v[a+36>>2]){o=b-1|0;p=v[a+4>>2];c=0;while(1){g=B(c,12);h=g+p|0;l=v[h+4>>2];d=l+(l<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;q=d>>>16^d;d=v[h>>2];e=(d<<15^-1)+d|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=f+(((q^B(e>>>16^e^1016421269,1000007))&o)<<2)|0;v[(c<<2)+m>>2]=v[e>>2];v[e>>2]=c;g=i+g|0;v[g+4>>2]=l;v[g>>2]=d;v[g+8>>2]=v[h+8>>2];c=c+1|0;if(c>>>0>2]){continue}break}}c=v[a>>2];if(c){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,c)}v[a+20>>2]=b;v[a+12>>2]=f;v[a>>2]=f;v[a+8>>2]=m;v[a+16>>2]=j;v[a+4>>2]=i;if(v[a+28>>2]==-1){v[a+28>>2]=n}}function zk(a,b,c,d){a=a|0;b=b|0;c=C(c);d=d|0;var e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=C(0);f=v[a+12>>2];e=xa-96|0;xa=e;h=z[a+8>>2];if(h!=C(0)){k=ZU(f,b),l=d?-65536:-8355712,v[k+4>>2]=l;c=W9(c);v[f+32>>2]=0;v[f>>2]=2;i=C(c*h);b=0;while(1){z[e+80>>2]=i;g=C(C(b>>>0)*C(.19634954631328583));k=e,m=C(R9(g)*h),z[k+88>>2]=m;k=e,m=C(H9(g)*h),z[k+84>>2]=m;_U(f,e+80|0);b=b+1|0;if((b|0)!=33){continue}break}v[f+32>>2]=0;v[f>>2]=2;c=C(C(-c)*h);b=0;while(1){z[e+64>>2]=c;g=C(C(b>>>0)*C(.19634954631328583));k=e,m=C(R9(g)*h),z[k+72>>2]=m;k=e,m=C(H9(g)*h),z[k+68>>2]=m;_U(f,e- -64|0);b=b+1|0;if((b|0)!=33){continue}break}v[f+32>>2]=0;v[f>>2]=1;b=0;while(1){v[e+56>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;a=_U(f,e+48|0);z[e+32>>2]=c;g=C(C(b>>>0)*C(.19634954631328583));j=C(R9(g)*h);z[e+40>>2]=j;g=C(H9(g)*h);z[e+36>>2]=g;_U(a,e+32|0);v[e+24>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;a=_U(f,e+16|0);z[e+8>>2]=j;z[e+4>>2]=g;z[e>>2]=i;_U(a,e);b=b+1|0;if((b|0)!=32){continue}break}}xa=e+96|0}function _Q(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=v[a+28>>2];v[d+3704>>2]=1;a=v[d+3460>>2];v[d+3700>>2]=a;if(a){Ba[v[v[a>>2]+16>>2]](a);v[d+3696>>2]=v[v[d+3700>>2]+16>>2]}a=v[d+1e3>>2];v[a+1216>>2]=1;v[a+604>>2]=0;v[a+592>>2]=0;v[a+444>>2]=0;v[a+432>>2]=0;c=d+3680|0;v[a+1212>>2]=c;if(c){Ba[v[v[c>>2]+16>>2]](c);v[a+1208>>2]=v[v[a+1212>>2]+16>>2]}b=a+1132|0;c=a+1192|0;v[b>>2]=c;v[a+1136>>2]=1;Ba[v[v[a+1192>>2]+16>>2]](c);b=v[v[b>>2]+16>>2];v[a+1176>>2]=1;e=a+1128|0;v[e>>2]=b;b=a+1172|0;v[b>>2]=c;Ba[v[v[a+1192>>2]+16>>2]](c);f=a+1168|0;v[f>>2]=v[v[b>>2]+16>>2];b=v[e>>2];Ba[v[v[b>>2]+72>>2]](b,a+1112|0);b=v[f>>2];Ba[v[v[b>>2]+72>>2]](b,a+1152|0);a=v[a+1208>>2];Ba[v[v[a>>2]+72>>2]](a,c);a=v[d+980>>2];d=v[a+332>>2];if(d){c=v[a+328>>2];while(1){d=d-1|0;a=v[c+8>>2];a:{if(!a|w[a+24|0]){break a}b=v[a+56>>2];if(!b){break a}e=v[v[a+4>>2]+40>>2];f=v[v[e+976>>2]+1024>>2];Ba[v[v[f>>2]+36>>2]](f,b);wK(v[e+976>>2],v[a+56>>2]);v[a+56>>2]=0}c=c+12|0;if(d){continue}break}}}function OA(a){var b=C(0),c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),y=C(0),A=0,D=C(0),E=C(0),F=C(0),G=0,H=C(0),I=0;c=v[a>>2];f=z[c+24>>2];g=z[c+20>>2];h=z[c+16>>2];i=z[c+8>>2];j=z[c+4>>2];k=z[c>>2];a=v[a+24>>2];l=x[a+2>>1];if(l){A=a+l|0;while(1){n=a+48|0;m=w[a+1|0];l=n+B(m,48)|0;if(m){o=z[a+16>>2];b=z[a+8>>2];D=C(o*b);p=z[a+24>>2];E=C(p*b);q=z[a+20>>2];F=C(q*b);G=(x[a+2>>1]+a|0)+32|0;H=z[a+4>>2];e=0;while(1){a=(e<<2)+G|0;b=z[a>>2];d=C(-b);I=a;a=B(e,48)+n|0;r=z[a+44>>2];s=z[a>>2];t=z[a+4>>2];u=z[a+8>>2];y=C(z[a+36>>2]-C(z[a+32>>2]*C(C(C(C(o*k)+C(h*s))+C(C(q*j)+C(g*t)))+C(C(p*i)+C(f*u)))));d=C(b+(dr?r:d;z[I>>2]=d;b=C(d-b);i=C(i+C(E*b));j=C(j+C(F*b));k=C(k+C(D*b));b=C(H*b);f=C(f+C(u*b));g=C(g+C(t*b));h=C(h+C(s*b));e=e+1|0;if((m|0)!=(e|0)){continue}break}}a=l;if(A>>>0>a>>>0){continue}break}}z[c+24>>2]=f;z[c+20>>2]=g;z[c+16>>2]=h;z[c+8>>2]=i;z[c+4>>2]=j;z[c>>2]=k}function mg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=xa-32|0;xa=d;v[a+56>>2]=b;v[a- -64>>2]=v[c>>2];v[a+60>>2]=v[c+4>>2];v[a+68>>2]=v[c+8>>2];c=v[a+8>>2];b=0;a:{if(!c){break a}c=c+v[(x[c+4>>1]<<2)+86240>>2]|0;b=0;if((kh(c,a)|0)!=-1){break a}lh(c,0,a);b=1}b:{c:{d:{c=v[a+12>>2];if(!c){break d}c=c+v[(x[c+4>>1]<<2)+86240>>2]|0;if((kh(c,a)|0)!=-1){break d}lh(c,0,a);break c}if(!b){break b}}c=v[a+12>>2];g=a+16|0;e=v[a+8>>2];e:{if(e){Ba[v[v[e>>2]+52>>2]](d+16|0,e);b=0;if(w[d+16|0]&8){break e}b=Ba[v[v[e>>2]+28>>2]](e)|0;break e}b=0}f:{if(c){Ba[v[v[c>>2]+52>>2]](d+8|0,c);f=0;if(w[d+8|0]&8){break f}f=Ba[v[v[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((v[a+20>>2]>>>30|0)-3>>>0<4294967294){break g}c=v[a+16>>2];if(!c){break g}c=c-16|0;if((c|0)==(b|0)){break b}if(c){v[d+20>>2]=a;Pg(c+5892|0,d+20|0);Ju(c+16|0,g)}}if(!b){break b}v[d+24>>2]=a;a=rh(b+5892|0,d+24|0,d+31|0);if(!w[d+31|0]){v[a>>2]=v[d+24>>2]}Iu(b+16|0,g)}xa=d+32|0}function Qu(a,b){var c=0;a:{switch(b-1|0){case 0:case 1:a=wr(a+4788|0,128);v[a+28>>2]=0;v[a+32>>2]=0;u[a+124>>1]=0;v[a+120>>2]=0;v[a+64>>2]=-1;t[a+52|0]=0;v[a+36>>2]=0;v[a+40>>2]=0;return a;case 4:a=wr(a+4788|0,128);t[a|0]=0;v[a+88>>2]=0;v[a+76>>2]=0;v[a+28>>2]=0;v[a+32>>2]=4;v[a+24>>2]=a+4;t[a+20|0]=1;v[a+80>>2]=4;v[a+84>>2]=0;v[a+72>>2]=a+36;t[a+68|0]=1;return a;case 5:a=wr(a+4788|0,24);u[a+16>>1]=0;return a;case 6:return wr(a+4788|0,28);case 7:return wr(a+4788|0,376);case 8:c=wr(a+4788|0,16);a=c;v[a+8>>2]=-1;v[a+12>>2]=0;v[a>>2]=-1;v[a+4>>2]=0;default:return c;case 2:case 3:break a}}a=wr(a+4788|0,272);t[a|0]=0;v[a+220>>2]=0;v[a+224>>2]=0;t[a+184|0]=0;v[a+88>>2]=0;v[a+76>>2]=0;v[a+28>>2]=0;v[a+32>>2]=4;v[a+24>>2]=a+4;t[a+20|0]=1;v[a+80>>2]=4;v[a+84>>2]=0;v[a+72>>2]=a+36;t[a+68|0]=1;v[a+228>>2]=0;v[a+232>>2]=0;v[a+236>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;v[a+256>>2]=0;v[a+260>>2]=0;v[a+264>>2]=0;t[a+268|0]=0;return a}function Cc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;var g=0,h=0;h=xa-16|0;xa=h;u[h+8>>1]=1027;g=xa-128|0;xa=g;v[g+60>>2]=0;v[g+64>>2]=0;u[g+56>>1]=0;v[g+52>>2]=-1;v[g+68>>2]=0;v[g+72>>2]=0;v[g+76>>2]=0;v[g+80>>2]=0;v[g+92>>2]=0;v[g+84>>2]=2139095039;v[g+88>>2]=0;v[g+44>>2]=0;v[g+48>>2]=0;v[g+120>>2]=0;v[g+112>>2]=0;v[g+116>>2]=0;t[g+108|0]=0;v[g+40>>2]=114128;v[g+16>>2]=v[f>>2];v[g+20>>2]=v[f+4>>2];v[g+24>>2]=v[f+8>>2];v[g+28>>2]=v[f+12>>2];u[g+32>>1]=x[f+16>>1];u[g+8>>1]=x[h+8>>1];Ba[v[v[a>>2]+348>>2]](a,b,c,d,g+40|0,g+8|0,g+16|0,0,0)|0;v[e+8>>2]=v[g+52>>2];a=v[g+48>>2];v[e>>2]=v[g+44>>2];v[e+4>>2]=a;u[e+12>>1]=x[g+56>>1];z[e+16>>2]=z[g+60>>2];z[e+20>>2]=z[g- -64>>2];z[e+24>>2]=z[g+68>>2];z[e+28>>2]=z[g+72>>2];z[e+32>>2]=z[g+76>>2];z[e+36>>2]=z[g+80>>2];z[e+40>>2]=z[g+84>>2];a=v[g+92>>2];v[e+44>>2]=v[g+88>>2];v[e+48>>2]=a;a=v[g+100>>2];v[e+52>>2]=v[g+96>>2];v[e+56>>2]=a;v[e+60>>2]=v[g+104>>2];xa=g+128|0;xa=h+16|0;return w[g+108|0]}function kA(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)-32|0;eA(c);d=v[c+24>>2];a:{if(!d){break a}f=w[d+1|0];if(!f){break a}c=w[d|0]==4?160:96;d=d+48|0;if(f-1>>>0>=3){h=f&252;e=0;while(1){z[d+12>>2]=z[d+28>>2];d=c+d|0;z[d+12>>2]=z[d+28>>2];d=c+d|0;z[d+12>>2]=z[d+28>>2];d=c+d|0;z[d+12>>2]=z[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){z[d+12>>2]=z[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)-32|0;eA(a);b=v[a+24>>2];b:{if(!b){break b}c=w[b+1|0];if(!c){break b}a=w[b|0]==4?160:96;d=b+48|0;if(c-1>>>0>=3){g=c&252;e=0;while(1){z[d+12>>2]=z[d+28>>2];b=a+d|0;z[b+12>>2]=z[b+28>>2];b=a+b|0;z[b+12>>2]=z[b+28>>2];b=a+b|0;z[b+12>>2]=z[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){z[d+12>>2]=z[d+28>>2];d=a+d|0;e=e+1|0;if((b|0)!=(e|0)){continue}break}}}function dL(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=131688;b=v[a+4>>2];if(b){QK(b+4|0);QK(b+96|0);QK(b+224|0);c=v[b+316>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+316>>2]=0;v[b+320>>2]=0;BC(b+340|0);c=v[b+324>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+324>>2]=0;v[b+328>>2]=0;c=v[b+332>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+332>>2]=0;v[b+336>>2]=0;BC(b+340|0);c=v[b+332>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+332>>2]=0;v[b+336>>2]=0;c=v[b+324>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+324>>2]=0;v[b+328>>2]=0;PK(b+224|0);TU(b+188|0);PK(b+96|0);PK(b+4|0);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+4>>2]=0}b=v[a+28>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+20>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+16>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+8>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function xi(a,b,c){a=a|0;b=b|0;c=C(c);var d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=0;e=xa-32|0;xa=e;a:{if(!v[b+100>>2]){j=C(-85070586659632215e21);k=C(85070586659632215e21);f=C(85070586659632215e21);g=C(85070586659632215e21);h=C(-85070586659632215e21);i=C(-85070586659632215e21);break a}g=C(85070586659632215e21);i=C(-85070586659632215e21);h=C(-85070586659632215e21);j=C(-85070586659632215e21);f=C(85070586659632215e21);k=C(85070586659632215e21);while(1){m=v[v[b+96>>2]+(l<<2)>>2];Ba[v[v[m>>2]+40>>2]](e+8|0,m,C(1.0099999904632568));d=z[e+28>>2];i=d>2];h=d>2];j=d>2];g=d>g?g:d;d=z[e+12>>2];f=d>f?f:d;d=z[e+8>>2];k=d>k?k:d;l=l+1|0;if(l>>>0>2]){continue}break}}d=C(C(g+i)*C(.5));g=C(C(C(i-g)*C(.5))*c);z[a+20>>2]=d+g;i=C(C(f+h)*C(.5));f=C(C(C(h-f)*C(.5))*c);z[a+16>>2]=i+f;h=C(C(k+j)*C(.5));c=C(C(C(j-k)*C(.5))*c);z[a+12>>2]=h+c;z[a+8>>2]=d-g;z[a+4>>2]=i-f;z[a>>2]=h-c;xa=e+32|0}function A9(a){var b=C(0),c=0,d=0,e=C(0);d=(p(a),j(2));c=d&2147483647;if(c>>>0>=1065353216){if((c|0)==1065353216){return(d|0)>=0?C(0):C(3.141592502593994)}return C(C(0)/C(a-a))}a:{if(c>>>0<=1056964607){b=C(1.570796251296997);if(c>>>0<847249409){break a}b=C(a*a);return C(C(C(C(7.549789415861596e-8)-C(a*C(C(C(C(b*C(C(b*C(-.008656363002955914))+C(-.04274342209100723)))+C(.16666586697101593))*b)/C(C(b*C(-.7066296339035034))+C(1)))))-a)+C(1.570796251296997))}if((d|0)<0){a=C(C(a+C(1))*C(.5));b=C(K(a));a=C(C(1.570796251296997)-C(b+C(C(b*C(C(C(C(a*C(C(a*C(-.008656363002955914))+C(-.04274342209100723)))+C(.16666586697101593))*a)/C(C(a*C(-.7066296339035034))+C(1))))+C(-7.549789415861596e-8))));return C(a+a)}a=C(C(C(1)-a)*C(.5));e=C(K(a));b=(l(2,(p(e),j(2))&-4096),q());a=C(C(C(e*C(C(C(C(a*C(C(a*C(-.008656363002955914))+C(-.04274342209100723)))+C(.16666586697101593))*a)/C(C(a*C(-.7066296339035034))+C(1))))+C(C(a-C(b*b))/C(e+b)))+b);b=C(a+a)}return b}function LF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=xa-16|0;xa=e;g=b>>>7|0;h=v[a+16>>2]+B(g,24)|0;c=w[h+4|0];if(!(c&2)){f=v[h>>2];if((f|0)!=-1){while(1){c=f>>>1|0;d=v[a+60>>2];i=(c>>>0)/(d>>>0)|0;d=v[v[a+40>>2]+(i<<2)>>2]+(c-B(d,i)<<4)|0;if(!(w[d+4|0]&4)){CF(a,c);u[d+4>>1]=x[d+4>>1]|4}c=v[a+84>>2];d=(f>>>0)/(c>>>0)|0;f=v[v[v[a+64>>2]+(d<<2)>>2]+(f-B(c,d)<<3)>>2];if((f|0)!=-1){continue}break}c=w[h+4|0]}a:{if(c&4){v[e>>2]=b;if(v[(v[a+16>>2]+B(g,24)|0)+16>>2]){break a}b=v[a+28>>2]+(g<<2)|0;if(v[b>>2]!=33554431){break a}v[b>>2]=v[a+140>>2];b=v[a+140>>2];if(b>>>0>=(v[a+144>>2]&2147483647)>>>0){ZF(a+136|0,e);break a}v[v[a+136>>2]+(b<<2)>>2]=v[e>>2];v[a+140>>2]=v[a+140>>2]+1;break a}v[e+8>>2]=b;b=v[a+28>>2]+(g<<2)|0;a=B(w[(v[a+16>>2]+B(g,24)|0)+5|0],12)+a|0;v[b>>2]=v[a+116>>2];b=a+112|0;c=v[a+116>>2];if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){ZF(b,e+8|0);break a}v[v[b>>2]+(c<<2)>>2]=v[e+8>>2];v[a+116>>2]=v[a+116>>2]+1}t[h+4|0]=w[h+4|0]|2}xa=e+16|0}function oL(a){var b=0,c=0,d=0;b=v[a+76>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+76>>2]=0}b=v[a+112>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+112>>2]=0}b=v[a+108>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+108>>2]=0}b=v[a+104>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+104>>2]=0}b=v[a+100>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+100>>2]=0}b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b);v[a+96>>2]=0}b=a+176|0;c=v[b+12808>>2];if(!(!c|(c|0)==(b+12288|0))){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c);v[b+12808>>2]=0}c=v[b+12812>>2];if(!((c|0)==(b|0)|!c)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c);v[b+12812>>2]=0}c=v[b+12816>>2];if(!((c|0)==(b+6144|0)|!c)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c);v[b+12816>>2]=0}v[b+12800>>2]=0;v[b+12804>>2]=0;TU(a+132|0);b=v[a+124>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+124>>2]=0;v[a+128>>2]=0}function s2(a,b,c,d,e,f,g){var h=0,i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=0,y=0,A=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=0;k=w[a+64|0];a:{if(!k){break a}i=z[g>>2];l=z[f>>2];while(1){h=v[a+76>>2]+B(y,48)|0;j=C(z[h+44>>2]-l);if(j<=i){n=z[h+4>>2];o=z[h>>2];p=z[h+8>>2];D=z[d>>2];E=z[e+16>>2];F=z[d+4>>2];q=z[e+20>>2];G=z[d+8>>2];m=z[e+24>>2];r=z[e+8>>2];s=z[e>>2];t=z[e+4>>2];i=z[e+12>>2];k=v[c+4>>2];H=v[c>>2];u=z[c+8>>2];h=(x<<6)+b|0;v[h+28>>2]=0;z[h+8>>2]=u;v[h>>2]=H;v[h+4>>2]=k;v[h+52>>2]=-1;z[h+12>>2]=j;A=m;j=C(C(i*i)+C(-.5));m=C(C(r*p)+C(C(s*o)+C(t*n)));u=C(C(C(i*C(C(s*n)-C(o*t)))+C(p*j))+C(r*m));z[h+24>>2]=C(A+C(u+u))-C(l*G);A=q;q=C(C(t*m)+C(C(j*n)+C(i*C(C(r*o)-C(p*s)))));z[h+20>>2]=C(A+C(q+q))-C(l*F);i=C(C(s*m)+C(C(j*o)+C(i*C(C(t*p)-C(n*r)))));z[h+16>>2]=C(E+C(i+i))-C(l*D);k=w[a+64|0];i=z[g>>2];x=x+1|0;l=z[f>>2]}if(x>>>0>63){break a}y=y+1|0;if(k>>>0>y>>>0){continue}break}}v[b+4096>>2]=x}function n1(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=C(0),o=0,p=0;m=xa-256|0;xa=m;c=v[c+28>>2];j=c>>>1&1023;a:{if(!j){v[b+1152>>2]=j;break a}o=c>>>11|0;k=v[a+24>>2];while(1){h=k+(g+o<<5)|0;l=v[h+4>>2];i=v[h>>2];n=z[h+8>>2];c=(g<<4)+b|0;v[c+12>>2]=0;z[c+8>>2]=n;v[c>>2]=i;v[c+4>>2]=l;l=v[h+20>>2];i=v[h+16>>2];n=z[h+24>>2];v[c+524>>2]=0;z[c+520>>2]=n;v[c+512>>2]=i;v[c+516>>2]=l;v[((g<<2)+b|0)+1024>>2]=v[h+28>>2];g=g+1|0;if((j|0)!=(g|0)){continue}break}v[b+1152>>2]=j;J9(m+128|0,255,128);g=0;h=J9(m,0,128);if(!j){break a}l=v[a+24>>2];c=0;while(1){k=(c+o<<5)+l|0;i=v[k+28>>2];if(!(i&1)){p=v[e>>2];v[e>>2]=(p+(i>>>1&1023)|0)-v[k+12>>2];i=((c<<2)+b|0)+1024|0;v[i>>2]=v[i>>2]&2047|d+g<<11;i=g<<2;v[i+h>>2]=k;v[i+(h+128|0)>>2]=p;g=g+1|0}c=c+1|0;if((j|0)!=(c|0)){continue}break}v[f>>2]=v[f>>2]+g;if(!g){break a}c=0;while(1){b=c<<2;n1(a,v[a+28>>2]+B(c+d|0,1168)|0,v[b+h>>2],v[b+(h+128|0)>>2],e,f);c=c+1|0;if((g|0)!=(c|0)){continue}break}}xa=m+256|0}function EE(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0,m=0,n=0,o=0;if((Uaa(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}i=C(z[a+24>>2]*C(b>>>0));a:{if(i=C(0)){h=~~i>>>0;break a}h=0}l=v[a+16>>2];d=b+h<<2;d=(0-d&12)+d|0;e=d+(h<<3)|0;if(e){f=v[37696]+12|0;e=Ba[v[v[f>>2]+8>>2]](f,e,24422,17301,372)|0}else{e=0}c=d;d=b<<2;e=J9(e,255,d);j=c+e|0;k=d+e|0;if(v[a+36>>2]){m=b-1|0;n=v[a+4>>2];d=0;while(1){g=d<<3;f=g+n|0;c=v[f+4>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;o=c>>>16^c;c=v[f>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=e+(((o^B(c>>>16^c^1016421269,1000007))&m)<<2)|0;v[(d<<2)+k>>2]=v[c>>2];v[c>>2]=d;g=g+j|0;v[g>>2]=v[f>>2];v[g+4>>2]=v[f+4>>2];d=d+1|0;if(d>>>0>2]){continue}break}}d=v[a>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=k;v[a+16>>2]=h;v[a+4>>2]=j;if(v[a+28>>2]==-1){v[a+28>>2]=l}}function TN(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=v[b+68>>2];a:{if((i|0)>=0){d=(i<<1&-16)+c|0;j=w[d+14|0];k=w[d+13|0];Ba[v[v[a>>2]+112>>2]](a,b,c);break a}f=v[a+68>>2];e=i>>>3|0;d=f+(e<<4)|0;j=w[d+14|0];k=w[d+13|0];g=v[a+84>>2]-1|0;c=v[v[a+80>>2]+(g<<2)>>2];e=e&268435455;h=e<<3;xK(v[a+4>>2],h+v[a+92>>2]|0);v[v[a+80>>2]+(e<<2)>>2]=c;e=v[a+92>>2];h=e+h|0;l=g<<3;e=l+e|0;m=v[e+4>>2];v[h>>2]=v[e>>2];v[h+4>>2]=m;e=f+(g<<4)|0;f=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=f;f=v[e+4>>2];v[d>>2]=v[e>>2];v[d+4>>2]=f;d=l+v[a+92>>2]|0;v[d>>2]=0;v[d+4>>2]=0;d=v[a+108>>2];e=v[d+456>>2];v[c+68>>2]=i;b:{if(!(w[c+43|0]&2)|w[c+41|0]&8){break b}d=v[v[v[d+444>>2]>>2]+(v[c- -64>>2]<<2)>>2];if(!d){break b}while(1){v[e+(v[d+20>>2]<<2)>>2]=v[c+68>>2];d=v[d+16>>2];if(d){continue}break}}v[a+84>>2]=g;v[a+96>>2]=g;v[a+72>>2]=v[a+72>>2]-1}c:{if(j&2){t[b+43|0]=w[b+43|0]|64;c=1;break c}c=0-(j&1)|0}Ba[v[v[a>>2]+28>>2]](a,b,c,k)}function r6(a,b){a=a|0;b=b|0;var c=0,d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);d=xa-48|0;xa=d;c=v[a+76>>2];n=d+40|0;Ba[v[v[c>>2]+28>>2]](c,n,d+44|0);Z4(d+8|0,v[(b<<2)+n>>2]);c=B(b,28);b=c+a|0;m=z[b+36>>2];o=z[b+40>>2];p=z[b+44>>2];q=z[d+28>>2];r=z[d+32>>2];s=z[d+24>>2];c=c+v[a+80>>2]|0;i=z[d+16>>2];e=z[b+28>>2];j=z[d+12>>2];f=z[b+24>>2];h=z[d+20>>2];g=z[b+32>>2];k=z[d+8>>2];l=z[b+20>>2];z[c+28>>2]=C(i*e)+C(C(j*f)+C(C(h*g)+C(k*l)));z[c+24>>2]=C(l*j)+C(C(C(h*e)-C(g*i))-C(k*f));z[c+20>>2]=C(e*k)+C(C(C(h*f)-C(g*j))-C(i*l));z[c+16>>2]=C(f*i)+C(C(C(h*l)-C(g*k))-C(j*e));e=C(m-s);e=C(e+e);f=C(o-q);f=C(f+f);g=C(p-r);g=C(g+g);l=C(C(C(C(-k)*e)-C(f*j))-C(i*g));m=C(C(h*h)+C(-.5));z[c+40>>2]=C(C(g*m)+C(h*C(C(j*e)-C(k*f))))-C(i*l);z[c+36>>2]=C(C(f*m)+C(h*C(C(k*g)-C(i*e))))-C(j*l);z[c+32>>2]=C(C(e*m)+C(h*C(C(i*f)-C(j*g))))-C(k*l);a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a);xa=d+48|0}function yN(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;f=v[c+4624>>2];a:{if(x[b+88>>1]>=2){if(!f){break a}h=c+528|0;i=v[b+80>>2];g=v[b+84>>2];a=x[a+34>>1];b=0;if((f|0)!=1){j=f&-2;c=0;while(1){e=(b<<2)+d|0;u[e>>1]=a;u[e+2>>1]=x[g+(x[i+(v[(h+(b<<6)|0)+52>>2]<<1)>>1]<<1)>>1];e=b|1;k=(e<<2)+d|0;u[k>>1]=a;u[k+2>>1]=x[g+(x[i+(v[(h+(e<<6)|0)+52>>2]<<1)>>1]<<1)>>1];b=b+2|0;c=c+2|0;if((j|0)!=(c|0)){continue}break}}if(!(f&1)){break a}c=(b<<2)+d|0;u[c>>1]=a;u[c+2>>1]=x[g+(x[i+(v[(h+(b<<6)|0)+52>>2]<<1)>>1]<<1)>>1];return 1}if(!f){break a}h=x[b+34>>1];i=x[a+34>>1];a=0;b=0;if(f-1>>>0>=3){j=f&-4;c=0;while(1){g=b<<2;e=g+d|0;u[e+2>>1]=h;u[e>>1]=i;e=(g|4)+d|0;u[e+2>>1]=h;u[e>>1]=i;e=(g|8)+d|0;u[e+2>>1]=h;u[e>>1]=i;g=(g|12)+d|0;u[g+2>>1]=h;u[g>>1]=i;b=b+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}c=f&3;if(!c){break a}while(1){f=(b<<2)+d|0;u[f+2>>1]=h;u[f>>1]=i;b=b+1|0;a=a+1|0;if((c|0)!=(a|0)){continue}break}}return 1}function gW(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=C(0),i=0,j=0,k=0,l=0;g=xa-4256|0;xa=g;v[g+4200>>2]=-1;i=g+4200|0;lV(i,c);v[g+4144>>2]=-1;k=g+4144|0;lV(k,e);v[g+4136>>2]=0;v[g+4140>>2]=0;c=0;v[g+4112>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;e=xa-176|0;xa=e;v[e+160>>2]=0;v[e+164>>2]=1065353216;v[e+152>>2]=0;v[e+156>>2]=0;v[e+144>>2]=0;v[e+148>>2]=1065353216;v[e+136>>2]=0;v[e+140>>2]=0;v[e+128>>2]=1065353216;v[e+132>>2]=1065353216;v[e+112>>2]=1065353216;v[e+116>>2]=0;t[e+168|0]=0;v[e+120>>2]=0;v[e+124>>2]=0;v[e+104>>2]=0;v[e+108>>2]=0;v[e+96>>2]=1065353216;v[e+100>>2]=0;j=i;i=e+96|0;l=e+72|0;j=XZ(j,i,l,e);h=z[g>>2];z[e+88>>2]=h+z[e+88>>2];z[e+92>>2]=h+z[e+92>>2];z[e+72>>2]=z[e+72>>2]-h;z[e+76>>2]=z[e+76>>2]-h;z[e+80>>2]=z[e+80>>2]-h;z[e+84>>2]=h+z[e+84>>2];d=CZ(e,l,k,d,f,g,g+16|0,i,j);xa=e+176|0;a:{if(!d){break a}if(!RV(a,b,v[g+4112>>2],g+16|0)){break a}c=v[g+4112>>2]!=0}xa=g+4256|0;return c|0}function yk(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=0;k=v[a+12>>2];f=xa+-64|0;xa=f;l=z[a+8>>2];if(l!=C(0)){r=ZU(k,b),s=e?-65536:-8355712,v[r+4>>2]=s;v[k+32>>2]=0;v[k>>2]=1;q=C(-d);b=0;d=C(0);while(1){z[f+56>>2]=j;z[f+52>>2]=g;z[f+48>>2]=d;d=C(C(b>>>0)*C(.19634954631328583));i=R9(d);d=H9(d);a=_U(k,f+48|0);h=C(d*c);g=C(i*q);j=C(C(h*h)+C(C(g*g)+C(0)));d=C(C(1)/C(j+C(1)));h=C(C(h+h)*d);i=C(d*C(0));g=C(C(g+g)*d);o=C(g*C(0));m=C(C(h*C(0))+C(C(i+i)+o));d=C(C(C(1)-j)*d);n=C(C(d*d)+C(-.5));p=C(n*C(0));j=C(C(C(h*m)+C(p+C(d*C(C(i*C(0))-C(g+g)))))*l);z[f+40>>2]=j;g=C(C(C(g*m)+C(p+C(d*C(C(h+h)+C(i*C(-0))))))*l);z[f+36>>2]=g;d=C(C(C(i*m)+C(C(n+n)+C(d*C(o+C(h*C(-0))))))*l);z[f+32>>2]=d;a=_U(a,f+32|0);v[f+24>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;a=_U(a,f+16|0);z[f+8>>2]=j;z[f+4>>2]=g;z[f>>2]=d;_U(a,f);b=b+1|0;if((b|0)!=33){continue}break}}xa=f- -64|0}function zO(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{e=v[a+20>>2];b:{if(!e){break b}g=v[b>>2];d=g+(g<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;f=B(d>>>16^d^-57320555,1000007);h=v[b+4>>2];d=h+(h<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;f=e-1&(f^(d>>>16^d));d=v[v[a+12>>2]+(f<<2)>>2];if((d|0)==-1){break b}j=v[a+8>>2];k=v[a+4>>2];while(1){i=B(d,12)+k|0;if(v[i>>2]==(g|0)&v[i+4>>2]==(h|0)){break a}d=v[(d<<2)+j>>2];if((d|0)!=-1){continue}break}}t[c|0]=0;if(v[a+36>>2]==v[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){mO(a,c);e=v[a+20>>2]}c=v[b>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;b=v[b+4>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;f=e-1&(B(c>>>16^c^-57320555,1000007)^(b>>>16^b))}b=v[a+28>>2];v[a+28>>2]=b+1;c=v[a+12>>2]+(f<<2)|0;v[v[a+8>>2]+(b<<2)>>2]=v[c>>2];v[c>>2]=b;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return v[a+4>>2]+B(b,12)|0}t[c|0]=1;return i}function lj(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=v[a+52>>2];switch((b>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[g>>2]+4785|0]){break b}}IG(a- -64|0,c,d);return}e=v[a+56>>2];if(!e){e=Qu(v[a+48>>2],b>>>24&15);v[a+56>>2]=e}b=v[a+316>>2];if(c){v[e+220>>2]=0;v[e+224>>2]=0;v[e+228>>2]=0;f=134217728;b=b&-65537}if(d){v[e+232>>2]=0;v[e+236>>2]=0;v[e+240>>2]=0;f=f|268435456;b=b&-131073}v[a+316>>2]=b|f;Yu(v[a+48>>2],g);return;case 1:case 2:g=a+48|0;e:{f:{g:{b=v[a+52>>2];switch((b>>>30|0)-2|0){case 1:break e;case 0:break g;default:break f}}if(w[v[g>>2]+4785|0]){break e}}KG(a- -64|0,c,d);return}e=v[a+56>>2];if(!e){e=Qu(v[a+48>>2],b>>>24&15);v[a+56>>2]=e}b=v[a+316>>2];if(c){v[e+244>>2]=0;v[e+248>>2]=0;v[e+252>>2]=0;f=536870912;b=b&-262145}if(d){v[e+256>>2]=0;v[e+260>>2]=0;v[e+264>>2]=0;f=f|1073741824;b=b&-524289}v[a+316>>2]=b|f;Yu(v[a+48>>2],g);break;default:break a}}}function gP(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=v[a+1184>>2];a:{if(!h){break a}i=v[a+2344>>2];if(!i){break a}k=v[a+1180>>2];g=v[a+2368>>2];b=v[g+36>>2];if(b){l=v[a+1192>>2];b:{if(b>>>0<=y[a+1196>>2]){while(1){j=B(e,24)+k|0;if(w[j+20|0]&4){c=v[g+24>>2]&2147483647;d=v[l>>2]+B(e,12)|0;b=v[d>>2];m=b>>>5|0;c:{if(c>>>0>m>>>0){f=1;if(v[v[g+20>>2]+(m<<2)>>2]>>>b&1){break c}}f=0}b=f;f=c;c=v[d+4>>2];d=c>>>5|0;t[j+20|0]=f>>>0<=d>>>0|!(v[v[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=v[g+24>>2]&2147483647;l=v[l>>2];while(1){c=l+B(e,12)|0;d=v[c>>2];b=d>>>5|0;d:{if(b>>>0>>0){f=1;if(v[v[g+20>>2]+(b<<2)>>2]>>>d&1){break d}}f=0}b=f;c=v[c+4>>2];d=c>>>5|0;t[(B(e,24)+k|0)+20|0]=d>>>0>=j>>>0|!(v[v[g+20>>2]+(d<<2)>>2]>>>c&1)?b:b|2;e=e+1|0;if((h|0)!=(e|0)){continue}break}}Ba[v[v[i>>2]+16>>2]](i,k,h);break a}Ba[v[v[i>>2]+16>>2]](i,k,h)}v[a+1184>>2]=0;v[v[a+1192>>2]+4>>2]=0}function XH(a){var b=0,c=0,d=0,e=0,f=0,g=0;b=v[a+12>>2];if(b){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,b);v[a+12>>2]=0}f=0;b=v[a>>2];e=b<<2;if(e){b=v[37696]+12|0;d=Ba[v[v[b>>2]+8>>2]](b,e,24422,12699,83)|0;b=v[a>>2]}v[a+12>>2]=d;e=0;a:{if(!b){break a}J9(d,255,b<<2);b=v[a>>2];d=b<<3;if(d){b=v[37696]+12|0;f=Ba[v[v[b>>2]+8>>2]](b,d,24422,12699,87)|0;b=v[a>>2]}b=b<<2;if(!b){break a}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,b,24422,12699,88)|0}b=v[a+8>>2];b:{if(!b){break b}I9(f,v[a+20>>2],b<<3);if(!v[a+8>>2]){break b}d=v[a+12>>2];g=v[a+20>>2];b=0;while(1){c=(b<<3)+g|0;c=v[c+4>>2]<<16|x[c>>1];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=d+((v[a+4>>2]&(c>>>16^c))<<2)|0;v[(b<<2)+e>>2]=v[c>>2];v[c>>2]=b;b=b+1|0;if(b>>>0>2]){continue}break}}b=v[a+16>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b);v[a+16>>2]=0}b=v[a+20>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a+16>>2]=e;v[a+20>>2]=f}function RN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=xa-16|0;xa=i;b=v[b+68>>2];v[i+12>>2]=b;a:{if((b|0)>=0){c=v[a+16>>2];if(c>>>0>=(v[a+20>>2]&2147483647)>>>0){pn(a+12|0,i+12|0);break a}v[v[a+12>>2]+(c<<2)>>2]=b;v[a+16>>2]=v[a+16>>2]+1;break a}h=v[a+84>>2]-1|0;c=v[v[a+80>>2]+(h<<2)>>2];d=v[a+68>>2];e=b>>>3|0;g=e&268435455;f=g<<3;xK(v[a+4>>2],f+v[a+92>>2]|0);v[v[a+80>>2]+(g<<2)>>2]=c;g=v[a+92>>2];f=g+f|0;j=g;g=h<<3;j=j+g|0;k=v[j+4>>2];v[f>>2]=v[j>>2];v[f+4>>2]=k;e=d+(e<<4)|0;d=d+(h<<4)|0;f=v[d+12>>2];v[e+8>>2]=v[d+8>>2];v[e+12>>2]=f;f=v[d+4>>2];v[e>>2]=v[d>>2];v[e+4>>2]=f;d=g+v[a+92>>2]|0;v[d>>2]=0;v[d+4>>2]=0;d=v[a+108>>2];e=v[d+456>>2];v[c+68>>2]=b;b:{if(!(w[c+43|0]&2)|w[c+41|0]&8){break b}b=v[v[v[d+444>>2]>>2]+(v[c- -64>>2]<<2)>>2];if(!b){break b}while(1){v[e+(v[b+20>>2]<<2)>>2]=v[c+68>>2];b=v[b+16>>2];if(b){continue}break}}v[a+84>>2]=h;v[a+96>>2]=h;v[a+72>>2]=v[a+72>>2]-1}xa=i+16|0}function yO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;c=v[a>>2];b=v[a+12>>2];e=v[(c+(b<<3)|0)+4>>2];if((e|0)==128){b=b+1|0;if((b|0)==v[a+4>>2]){b=0;c=v[37696];e=c+12|0;c=(g=e,h=13312,i=Ba[v[v[c>>2]+20>>2]](c)|0?40335:63804,j=19811,k=260,f=v[v[e>>2]+8>>2],Ba[f](g|0,h|0,i|0,j|0,k|0)|0);while(1){v[(c+B(b,104)|0)+100>>2]=-128;v[(c+B(b|1,104)|0)+100>>2]=-128;v[(c+B(b|2,104)|0)+100>>2]=-128;v[(c+B(b|3,104)|0)+100>>2]=-128;v[(c+B(b|4,104)|0)+100>>2]=-128;v[(c+B(b|5,104)|0)+100>>2]=-128;v[(c+B(b|6,104)|0)+100>>2]=-128;v[(c+B(b|7,104)|0)+100>>2]=-128;b=b+8|0;if((b|0)!=128){continue}break}v[d+12>>2]=0;v[d+8>>2]=c;b=v[a+4>>2];a:{if(b>>>0>=(v[a+8>>2]&2147483647)>>>0){lO(a,d+8|0);break a}c=v[d+12>>2];b=v[a>>2]+(b<<3)|0;v[b>>2]=v[d+8>>2];v[b+4>>2]=c;v[a+4>>2]=v[a+4>>2]+1}c=v[a>>2];b=v[a+12>>2]+1|0}v[a+12>>2]=b;v[((b<<3)+c|0)+4>>2]=0;e=0}a=(b<<3)+c|0;v[a+4>>2]=e+1;xa=d+16|0;return v[a>>2]+B(e,104)|0}function o1(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),H=C(0);i=z[a+20>>2];h=z[a+16>>2];l=z[a+24>>2];m=w[a+64|0];n=z[a+48>>2];o=z[d>>2];p=z[a+52>>2];q=z[d+4>>2];r=z[a+56>>2];s=z[d+8>>2];t=z[a+60>>2];u=z[d+12>>2];v=z[a+32>>2];x=z[c>>2];y=z[a+36>>2];A=z[c+4>>2];B=z[a+40>>2];D=z[c+8>>2];E=z[a+44>>2];H=z[c+12>>2];a=1;c=m<<2;j=C(z[e>>2]*z[c+103152>>2]);h=C(z[b+16>>2]-h);h=h>C(0)?h:C(-h);i=C(z[b+20>>2]-i);i=i>C(0)?i:C(-i);i=h>=i?h:i;k=h;h=C(z[b+24>>2]-l);h=(h>C(0)?h:C(-h))>=C(0)?k:C(0);a:{if(j<(h<=i?i:h)){break a}i=z[c+103184>>2];h=C(C(H*E)+C(C(D*B)+C(C(x*v)+C(A*y))));if(i>h){break a}k=i;i=C(C(u*t)+C(C(s*r)+C(C(o*n)+C(q*p))));if(k>i){break a}if(h>2])>j;if(i>2])>j}return a}function YT(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=xa-16|0;xa=f;a:{if(!v[a+72>>2]){break a}while(1){d=v[v[a+68>>2]+(c<<2)>>2];if((Ba[v[v[d>>2]+16>>2]](d)|0)==(b|0)){d=v[a+72>>2]-1|0;v[a+72>>2]=d;e=c<<2;c=v[a+68>>2];v[e+c>>2]=v[c+(d<<2)>>2];break a}c=c+1|0;if(c>>>0>2]){continue}break}}v[f+12>>2]=0;c=Ba[v[v[b>>2]+28>>2]](b)|0;Ba[v[v[c>>2]+96>>2]](c,f+12|0,1,0)|0;b:{if(!v[a+116>>2]){break b}d=v[f+12>>2];c=(d<<15^-1)+d|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;e=v[a+92>>2]+((v[a+100>>2]-1&(c>>>16^c))<<2)|0;c=v[e>>2];if((c|0)==-1){break b}g=v[a+88>>2];h=v[a+84>>2];if((d|0)!=v[h+(c<<2)>>2]){while(1){e=(c<<2)+g|0;c=v[e>>2];if((c|0)==-1){break b}if((d|0)!=v[(c<<2)+h>>2]){continue}break}}d=(c<<2)+g|0;v[e>>2]=v[d>>2];v[a+116>>2]=v[a+116>>2]-1;v[a+112>>2]=v[a+112>>2]+1;v[d>>2]=v[a+108>>2];v[a+108>>2]=c}c:{if((Ba[v[v[b>>2]>>2]](b)|0)!=1){if(Ba[v[v[b>>2]>>2]](b)|0){break c}}Ba[v[v[b>>2]+104>>2]](b)}xa=f+16|0}function Jx(a,b){var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=0,n=0,o=C(0),p=C(0),q=C(0),r=0,s=0;d=v[a+336>>2]-1|0;if(d){n=v[b+32>>2];i=v[b+12>>2];while(1){e=d<<5;b=e+i|0;o=z[b+24>>2];p=z[b+20>>2];c=v[a+340>>2]+B(d,160)|0;j=z[c+120>>2];q=z[b+16>>2];k=z[c+124>>2];l=z[c+128>>2];f=z[b+8>>2];g=z[b+4>>2];c=(v[(e+v[a+332>>2]|0)+24>>2]<<5)+i|0;h=z[b>>2];z[c>>2]=h+z[c>>2];z[c+4>>2]=g+z[c+4>>2];z[c+8>>2]=f+z[c+8>>2];z[c+16>>2]=C(q+C(C(k*f)-C(g*l)))+z[c+16>>2];z[c+20>>2]=C(p+C(C(l*h)-C(f*j)))+z[c+20>>2];z[c+24>>2]=C(o+C(C(j*g)-C(h*k)))+z[c+24>>2];c=v[a+344>>2]+B(d,80)|0;m=w[c+76|0];if(m){r=(v[c+72>>2]<<2)+n|0;s=v[a+272>>2]+B(d,76)|0;e=0;while(1){c=B(e,24)+s|0;z[(e<<2)+r>>2]=C(C(z[c+20>>2]*z[b+8>>2])+C(C(z[c+12>>2]*z[b>>2])+C(z[c+16>>2]*z[b+4>>2])))+C(C(z[c+8>>2]*z[b+24>>2])+C(C(z[c>>2]*z[b+16>>2])+C(z[c+4>>2]*z[b+20>>2])));e=e+1|0;if((m|0)!=(e|0)){continue}break}}d=d-1|0;if(d){continue}break}}}function Ji(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=v[a+320>>2];if(c){j=a,k=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[j+320>>2]=k}c=v[a+324>>2];if(c){j=a,k=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[j+324>>2]=k}c=v[a+328>>2];if(c){j=a,k=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[j+328>>2]=k}d=x[a+24>>1];if(d){h=(d|0)==1?a+20|0:v[a+20>>2];c=0;while(1){e=h+(c<<2)|0;f=Ba[v[v[b>>2]>>2]](b,-2147483648,v[e>>2])|0;v[e>>2]=f;Zt(f,a);c=c+1|0;if((d|0)!=(c|0)){continue}break}}ih(a+12|0,b);d=v[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+v[a+352>>2]|0;i=v[g>>2];if(i){j=g,k=Ba[v[v[b>>2]>>2]](b,-2147483648,i)|0,v[j>>2]=k}e=v[a+352>>2]+(e|4)|0;g=v[e>>2];if(g){j=e,k=Ba[v[v[b>>2]>>2]](b,-2147483648,g)|0,v[j>>2]=k}c=c+2|0;f=f+2|0;if((h|0)!=(f|0)){continue}break}}if(!(d&1)){break a}a=v[a+352>>2]+(c<<2)|0;c=v[a>>2];if(!c){break a}j=a,k=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[j>>2]=k}}function nq(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=xa-16|0;xa=e;a:{if((Ba[v[v[b>>2]+52>>2]](b)|0)!=(a|0)){a=v[37696];v[e>>2]=21238;b9(a,8,11709,79,75385,e);break a}if((Ba[v[v[b>>2]+52>>2]](b)|0)!=(a|0)){break a}h=v[b+36>>2];if(h){i=b+8|0;while(1){b:{c:{d:{d=v[v[b+40>>2]+(g<<2)>>2];if((Ba[v[v[d>>2]+24>>2]](d)|0)!=2){su(i,d+v[((x[d+4>>1]<<2)+86240|0)+72>>2]|0,0);e:{switch(Ba[v[v[d>>2]+24>>2]](d)|0){case 1:dq(a,d,c,0);break b;case 0:break d;case 2:break e;default:break b}}b9(v[37696],2,11709,689,22124,0);break b}if(!(Ba[v[v[d>>2]+28>>2]](d)|0)){break b}d=v[d+320>>2];j=v[(Ba[v[v[d>>2]+100>>2]](d)|0)+84>>2];f=0;if(!(Ba[v[v[d>>2]+76>>2]](d)|0)){break c}while(1){su(i,v[(f<<2)+j>>2]+48|0,0);f=f+1|0;if(Ba[v[v[d>>2]+76>>2]](d)>>>0>f>>>0){continue}break}break c}cq(a,d,c,0);break b}lq(a,d,c,0)}g=g+1|0;if((h|0)!=(g|0)){continue}break}}Nu(a+16|0,b+8|0);v[e+12>>2]=b;Pg(a+5984|0,e+12|0)}xa=e+16|0}function ER(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=v[a+20>>2];b=v[a+28>>2];h=v[v[b+976>>2]+1156>>2];a=v[b+988>>2];d=v[a+128>>2];v[b+992>>2]=0;a:{if(v[a+132>>2]?0:d){break a}c=v[b+1160>>2];if(!c){break a}i=b+992|0;d=0;if(!e){while(1){a=wr(h,40);e=v[b+1156>>2];f=v[b+16>>2];g=v[b+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=f;v[a+12>>2]=g;v[a+36>>2]=i;c=c-d|0;v[a+32>>2]=c>>>0<256?c:256;v[a>>2]=134948;v[a+24>>2]=1;v[a+28>>2]=e+(d<<2);e=v[a+16>>2];Ba[v[v[e>>2]+72>>2]](e,a);d=d+256|0;c=v[b+1160>>2];if(d>>>0>>0){continue}break a}}while(1){a=wr(h,40);f=v[b+1156>>2];g=v[b+16>>2];j=v[b+20>>2];v[a+24>>2]=0;v[a+16>>2]=0;v[a+8>>2]=g;v[a+12>>2]=j;v[a+36>>2]=i;c=c-d|0;v[a+32>>2]=c>>>0<256?c:256;v[a>>2]=134948;v[a+20>>2]=e;v[a+24>>2]=1;v[a+28>>2]=(d<<2)+f;Ba[v[v[e>>2]+16>>2]](e);v[a+16>>2]=v[v[a+20>>2]+16>>2];Ba[v[v[a>>2]+20>>2]](a);d=d+256|0;c=v[b+1160>>2];if(d>>>0>>0){continue}break}}}function RD(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=xa-32|0;xa=j;f=v[a+4>>2];if(f){h=v[a+292>>2];g=v[a+296>>2];v[j+16>>2]=0;v[j+8>>2]=0;v[j+12>>2]=0;f=SD(g,h,f,b,c,d,e)}else{f=1}if(!(!f|!w[a+336|0]|(v[a+156>>2]+v[a+108>>2]|0)==(0-v[a+216>>2]|0))){f=xa-48|0;xa=f;a:{if(v[a+156>>2]!=(0-v[a+108>>2]|0)){h=xa-32|0;xa=h;g=1;i=v[a+68>>2];if(!(!i|!v[i+588>>2])){g=v[a+160>>2];k=v[g+8>>2];g=v[g+12>>2];v[h+16>>2]=0;v[h+8>>2]=0;v[h+12>>2]=0;g=iD(g,k,i,b,c,d,e)}i=v[a+116>>2];if(!(!i|(!v[i+588>>2]|g^1))){g=v[a+160>>2];k=v[g+8>>2];g=v[g+12>>2];v[h+16>>2]=0;v[h+8>>2]=0;v[h+12>>2]=0;g=iD(g,k,i,b,c,d,e)}xa=h+32|0;if(!g){break a}}if(!v[a+216>>2]){l=1;break a}v[f+40>>2]=0;v[f+32>>2]=0;v[f+36>>2]=0;v[f+28>>2]=v[a+176>>2];v[f+24>>2]=e;v[f+16>>2]=c;v[f+12>>2]=b;v[f+8>>2]=129772;e=f+32|0;v[f+20>>2]=e;l=SD(v[a+252>>2],v[a+248>>2],v[a+220>>2],b,c,d,f+8|0)}xa=f+48|0;f=l}xa=j+32|0;return f|0}function LW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);e=xa-96|0;xa=e;g=z[b+20>>2];h=z[d+20>>2];i=z[b+24>>2];j=z[d+24>>2];z[e+80>>2]=z[d+16>>2]-z[b+16>>2];z[e+88>>2]=j-i;z[e+84>>2]=h-g;i=z[b+8>>2];j=z[b+4>>2];f=z[b>>2];g=C(f+f);k=z[b+12>>2];h=C(k+k);n=C(C(f*g)+C(C(k*h)+C(-1)));f=z[a+8>>2];o=C(n*f);z[e+64>>2]=o;p=C(f*C(C(i*h)+C(g*j)));z[e+68>>2]=p;q=C(f*C(C(g*i)-C(j*h)));z[e+72>>2]=q;h=z[d+4>>2];j=C(h+h);g=z[d+8>>2];l=C(j*g);f=z[d>>2];i=C(f+f);k=z[d+12>>2];m=C(i*k);z[e+52>>2]=l-m;z[e+44>>2]=l+m;f=C(C(1)-C(f*i));l=C(h*j);z[e+56>>2]=f-l;n=f;f=C(g+g);m=C(g*f);z[e+40>>2]=n-m;g=C(i*g);j=C(j*k);z[e+48>>2]=g+j;h=C(i*h);i=C(f*k);z[e+36>>2]=h-i;z[e+32>>2]=g-j;z[e+28>>2]=h+i;z[e+24>>2]=C(C(1)-l)-m;z[e+16>>2]=-q;z[e+12>>2]=-p;z[e+8>>2]=-o;g=G_(e- -64|0,e+8|0,e+80|0,c+4|0,e+24|0,0,0);xa=e+96|0;h=z[a+4>>2];return g<=C(h*h)|0}function _n(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(!v[a+92>>2]){break a}e=(b<<15^-1)+b|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=v[v[a+68>>2]+((v[a+76>>2]-1&(e>>>16^e))<<2)>>2];if((e|0)==-1){break a}f=v[a- -64>>2];a=v[a+60>>2];while(1){if(v[a+(e<<3)>>2]!=(b|0)){e=v[f+(e<<2)>>2];if((e|0)!=-1){continue}break a}break}a=v[(a+(e<<3)|0)+4>>2];if(!w[a+41|0]|!d|!v[a+36>>2]){break a}b=0;e=1;while(1){b:{if(!e){break b}f=v[(b<<2)+c>>2];e=(f<<15^-1)+f|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;g=v[a+12>>2]+((v[a+20>>2]-1&(e>>>16^e))<<2)|0;e=v[g>>2];if((e|0)==-1){break b}h=v[a+8>>2];i=v[a+4>>2];if((f|0)!=v[i+(e<<2)>>2]){while(1){g=(e<<2)+h|0;e=v[g>>2];if((e|0)==-1){break b}if((f|0)!=v[(e<<2)+i>>2]){continue}break}}f=(e<<2)+h|0;v[g>>2]=v[f>>2];v[a+36>>2]=v[a+36>>2]-1;v[a+32>>2]=v[a+32>>2]+1;v[f>>2]=v[a+28>>2];v[a+28>>2]=e}b=b+1|0;if((b|0)==(d|0)){break a}e=v[a+36>>2];continue}}}function Ru(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=v[a+4>>2];a:{if(!(g&16777215)){break a}d=v[a+8>>2];if(!d){d=Qu(v[a>>2],g>>>24&15);v[a+8>>2]=d}b:{if(!(g&1)){break b}f=v[d+4>>2];if(!f){break b}j=v[b+4880>>2]+(v[d>>2]<<2)|0;k=v[a+16>>2]&16777215;if((f|0)!=1){l=f&-2;while(1){e=c<<2;i=v[e+j>>2];i=v[(v[i+4>>2]>>>22&60)+89200>>2]+i|0;v[i+4>>2]=w[i+7|0]<<24|k;e=v[(e|4)+j>>2];e=v[(v[e+4>>2]>>>22&60)+89200>>2]+e|0;v[e+4>>2]=w[e+7|0]<<24|k;c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(f&1)){break b}c=v[(c<<2)+j>>2];c=v[((v[c+4>>2]>>>22&60)+89188|0)+12>>2]+c|0;v[c+4>>2]=w[c+7|0]<<24|k}if(!(g&2)){break a}h=v[d+12>>2];if(!h){break a}g=v[b+4880>>2]+(v[d+8>>2]<<2)|0;c=0;while(1){b=v[g+(c<<2)>>2];f=v[b+4>>2];b=v[((f>>>22&60)+89188|0)+12>>2]+b|0;v[b+4>>2]=v[b+4>>2]|16777215;if((f>>>30|0)-1>>>0<=1){SE(b);h=v[d+12>>2]}c=c+1|0;if(h>>>0>c>>>0){continue}break}}v[a+8>>2]=0;v[a+4>>2]=w[a+7|0]<<24}function WR(a){var b=0,c=0,d=0,e=0,f=0;c=v[v[a+28>>2]+4>>2];b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(!(y[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+152>>2]<4294967294|(y[b+152>>2]<4294967294?b:0))){a:{if(v[a+52>>2]==-1){break a}b=v[a+44>>2];v[a+44>>2]=b<<1&4194304|b;c=v[v[v[a+4>>2]+40>>2]+2168>>2];if(b&8388608){BJ(c,a);break a}zJ(c,a)}b=v[a+56>>2];b:{if(!b){break b}c=v[a+44>>2];c:{if(c&98304){break c}d=w[b+43|0];if(!(d&3)|d&2){break c}v[a+44>>2]=c|65536}c=v[v[a+4>>2]+40>>2];d=v[v[c+976>>2]+1024>>2];Ba[v[v[d>>2]+36>>2]](d,b);wK(v[c+976>>2],v[a+56>>2]);v[a+56>>2]=0;b=v[a+60>>2];if((b|0)==-1){break b}lG(v[v[v[a+4>>2]+40>>2]+1e3>>2],b)}b=v[v[v[a+4>>2]+40>>2]+1e3>>2];d=v[a+60>>2];e=v[b+80>>2]+(d<<2)|0;f=v[e>>2];if(f){c=v[b+96>>2];d:{if(c>>>0>=(v[b+100>>2]&2147483647)>>>0){jG(b+92|0,e);break d}v[v[b+92>>2]+(c<<2)>>2]=f;v[b+96>>2]=c+1}v[v[b+80>>2]+(d<<2)>>2]=0}t[a+25|0]=w[a+25|0]&223;d=1}return d}function GB(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0,w=0,x=C(0);e=xa-32|0;xa=e;c=v[c+4>>2]&64?v[c+8>>2]+96|0:c+32|0;x=z[c+16>>2];j=z[c+20>>2];u=v[b+8>>2];w=v[b+4>>2];i=w&4?u:b+48|0;k=z[i+12>>2];l=z[i+8>>2];m=z[i>>2];n=z[i+4>>2];f=z[c+8>>2];o=z[i+24>>2];g=z[c>>2];p=z[i+16>>2];h=z[c+4>>2];q=z[i+20>>2];s=C(C(f*o)+C(C(g*p)+C(h*q)));d=z[c+12>>2];t=C(C(d*d)+C(-.5));r=C(C(C(t*o)+C(d*C(C(g*q)-C(p*h))))+C(f*s));z[e+24>>2]=z[c+24>>2]+C(r+r);r=j;j=C(C(h*s)+C(C(q*t)+C(d*C(C(f*p)-C(o*g)))));z[e+20>>2]=r+C(j+j);z[e+12>>2]=C(d*k)-C(C(f*l)+C(C(g*m)+C(h*n)));z[e+8>>2]=C(f*k)+C(C(C(g*n)-C(m*h))+C(d*l));z[e+4>>2]=C(h*k)+C(C(d*n)+C(C(f*m)-C(l*g)));z[e>>2]=C(g*k)+C(C(d*m)+C(C(h*l)-C(n*f)));d=C(C(g*s)+C(C(p*t)+C(d*C(C(h*o)-C(q*f)))));z[e+16>>2]=x+C(d+d);eV(a,w&1?u- -64|0:b+84|0,e,C(1.0099999904632568));xa=e+32|0}function Hc(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;var h=0;h=xa-32|0;xa=h;u[h+24>>1]=x[f>>1];v[h+8>>2]=0;v[h+12>>2]=0;v[h>>2]=0;v[h+4>>2]=0;u[h+16>>1]=3;f=xa-112|0;xa=f;v[f+60>>2]=0;v[f+64>>2]=0;u[f+56>>1]=0;v[f+52>>2]=-1;v[f+68>>2]=0;v[f+72>>2]=0;v[f+76>>2]=0;v[f+80>>2]=0;v[f+84>>2]=2139095039;v[f+44>>2]=0;v[f+48>>2]=0;v[f+104>>2]=0;v[f+96>>2]=0;v[f+100>>2]=0;t[f+92|0]=0;v[f+40>>2]=114448;v[f+16>>2]=v[h>>2];v[f+20>>2]=v[h+4>>2];v[f+24>>2]=v[h+8>>2];v[f+28>>2]=v[h+12>>2];u[f+32>>1]=x[h+16>>1];u[f+8>>1]=x[h+24>>1];Ba[v[v[a>>2]+352>>2]](a,b,c,d,e,f+40|0,f+8|0,f+16|0,0,0,C(0))|0;v[g+8>>2]=v[f+52>>2];a=v[f+48>>2];v[g>>2]=v[f+44>>2];v[g+4>>2]=a;u[g+12>>1]=x[f+56>>1];z[g+16>>2]=z[f+60>>2];z[g+20>>2]=z[f- -64>>2];z[g+24>>2]=z[f+68>>2];z[g+28>>2]=z[f+72>>2];z[g+32>>2]=z[f+76>>2];z[g+36>>2]=z[f+80>>2];z[g+40>>2]=z[f+84>>2];v[g+44>>2]=v[f+88>>2];xa=f+112|0;xa=h+32|0;return w[f+92|0]}function L0(a,b,c){var d=0,e=C(0),f=C(0),g=C(0),h=C(0);d=v[c+4>>2];v[a+12>>2]=1;u[a+6>>1]=3;v[a+8>>2]=144016;v[a>>2]=143920;u[a+4>>1]=v[(d<<2)+102336>>2];v[a+16>>2]=v[c+12>>2];v[a+20>>2]=v[c+68>>2];v[a+24>>2]=v[c+16>>2];v[a+28>>2]=v[c+72>>2];e=z[c+32>>2];f=z[c+36>>2];g=z[c+24>>2];h=z[c+20>>2];z[a+40>>2]=C(z[c+28>>2]+z[c+40>>2])*C(.5);z[a+36>>2]=C(g+f)*C(.5);z[a+32>>2]=C(h+e)*C(.5);e=z[c+32>>2];f=z[c+24>>2];g=z[c+36>>2];h=z[c+20>>2];z[a+52>>2]=C(z[c+40>>2]-z[c+28>>2])*C(.5);z[a+48>>2]=C(g-f)*C(.5);z[a+44>>2]=C(e-h)*C(.5);v[a+56>>2]=v[c+76>>2];z[a+60>>2]=z[c+44>>2];t[a+64|0]=w[c+8|0];v[a+68>>2]=v[c+80>>2];v[a+72>>2]=v[c+48>>2];d=v[c+52>>2];v[a+80>>2]=b;v[a+76>>2]=d;v[a+84>>2]=v[c+56>>2];v[a+88>>2]=v[c+60>>2];b=c- -64|0;v[a+92>>2]=v[b>>2];v[a+96>>2]=v[c+84>>2];v[c+48>>2]=0;v[c+52>>2]=0;v[c+16>>2]=0;v[c+56>>2]=0;v[c+60>>2]=0;v[b>>2]=0;v[c+72>>2]=0;v[c+76>>2]=0;v[c+80>>2]=0;v[c+84>>2]=0;return a}function yZ(a,b,c,d,e,f){var g=0,h=0,i=0,j=0;g=xa-256|0;xa=g;h=0;a:{if(z[b+4>>2]!=C(1)){break a}h=0;if(z[b+8>>2]!=C(1)){break a}h=z[b+12>>2]==C(1)}v[g+240>>2]=0;v[g+244>>2]=1065353216;v[g+232>>2]=0;v[g+236>>2]=0;v[g+224>>2]=0;v[g+228>>2]=1065353216;v[g+216>>2]=0;v[g+220>>2]=0;v[g+208>>2]=1065353216;v[g+212>>2]=1065353216;v[g+192>>2]=1065353216;v[g+196>>2]=0;t[g+248|0]=0;v[g+200>>2]=0;v[g+204>>2]=0;v[g+184>>2]=0;v[g+188>>2]=0;v[g+176>>2]=1065353216;v[g+180>>2]=0;if(!h){JX(g+176|0,b+4|0,b+16|0)}v[g+160>>2]=0;v[g+164>>2]=1065353216;v[g+152>>2]=0;v[g+156>>2]=0;v[g+144>>2]=0;v[g+148>>2]=1065353216;v[g+136>>2]=0;v[g+140>>2]=0;v[g+128>>2]=1065353216;v[g+132>>2]=1065353216;v[g+112>>2]=1065353216;v[g+116>>2]=0;t[g+168|0]=0;v[g+120>>2]=0;v[g+124>>2]=0;v[g+104>>2]=0;v[g+108>>2]=0;v[g+96>>2]=1065353216;v[g+100>>2]=0;i=g+72|0;j=b;b=g+96|0;a=zZ(g,i,j,c,d,e,f,b,g+176|0,XZ(a,b,i,g),h);xa=g+256|0;return a}function SC(a,b,c,d){var e=0,f=0,g=0,h=0;f=v[b+36>>2];e=v[f>>2];if(e>>>0>=2){a=e;a:{while(1){if(!a){break a}a=a-1|0;if(v[(f+(a<<2)|0)+4>>2]!=(c|0)){continue}break}c=e-1|0;v[f>>2]=c;v[(v[b+36>>2]+(a<<2)|0)+4>>2]=v[(f+(c<<2)|0)+4>>2]}PC(b,d);return 0}if(v[a+588>>2]==(b|0)){v[a+576>>2]=v[a+576>>2]-1;v[b>>2]=v[a+584>>2];v[a+588>>2]=0;v[a+584>>2]=b;return 0}c=v[b+32>>2];f=v[c+36>>2];e=f;if((e|0)==(b|0)){e=v[c+40>>2]}g=v[e+20>>2];v[c+16>>2]=v[e+16>>2];v[c+20>>2]=g;g=v[e+28>>2];v[c+24>>2]=v[e+24>>2];v[c+28>>2]=g;g=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=g;g=v[e+12>>2];v[c+8>>2]=v[e+8>>2];v[c+12>>2]=g;g=v[e+40>>2];h=v[e+36>>2];v[c+36>>2]=h;b:{if(!g){v[c+40>>2]=0;break b}v[h+32>>2]=c;e=v[e+40>>2];v[c+40>>2]=e;v[e+32>>2]=c}e=v[c+32>>2];if(e){PC(e,d)}b=v[b+36>>2];if(b){v[a+284>>2]=v[a+284>>2]-1;v[b>>2]=v[a+292>>2];v[a+292>>2]=b}if(f){v[a+576>>2]=v[a+576>>2]-1;v[f>>2]=v[a+584>>2];v[a+584>>2]=f}return c}function NO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;i=a+12|0;g=v[a+4>>2];h=v[a>>2];f=v[a+16>>2];a:{if(f){j=v[a+8>>2];k=v[i>>2];while(1){b:{if((b|0)==(j|0)){break b}e=B(b,12)+k|0;c=v[e+4>>2];if(!c){c=v[e+8>>2];if((c|0)==(h|0)){break b}v[e+8>>2]=c+1;e=v[e>>2];if(!e){break b}v[a+8>>2]=b;c=e+B(c,g)|0;break a}v[e+4>>2]=v[c>>2];v[a+8>>2]=b;break a}b=b+1|0;if((f|0)!=(b|0)){continue}break}}t[a+24|0]=1;v[a+8>>2]=f;v[d+4>>2]=0;v[d+8>>2]=0;b=B(g,h);c:{if(!b){b=0;break c}c=v[37696]+12|0;b=Ba[v[v[c>>2]+8>>2]](c,b,24422,18584,60)|0;f=v[a+16>>2]}v[d>>2]=b;d:{if((v[a+20>>2]&2147483647)>>>0<=f>>>0){a=LO(i,d);break d}c=v[d+4>>2];b=v[a+12>>2]+B(f,12)|0;v[b>>2]=v[d>>2];v[b+4>>2]=c;v[b+8>>2]=v[d+8>>2];b=v[a+16>>2];v[a+16>>2]=b+1;a=v[a+12>>2]+B(b,12)|0}c=v[a+4>>2];if(c){v[a+4>>2]=v[c>>2];break a}c=0;b=v[a+8>>2];if((b|0)==(h|0)){break a}v[a+8>>2]=b+1;c=v[a>>2]+B(b,g)|0}xa=d+16|0;return c}function A7(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);E5(d,e,a,b,c);g=z[e+12>>2];h=z[e+8>>2];i=z[e>>2];j=z[e+4>>2];if(C(C(z[d+12>>2]*g)+C(C(z[d+8>>2]*h)+C(C(z[d>>2]*i)+C(z[d+4>>2]*j))))>2]=g;h=C(-h);z[e+8>>2]=h;j=C(-j);z[e+4>>2]=j;i=C(-i);z[e>>2]=i}o=z[d+20>>2];p=z[e+20>>2];q=z[d+24>>2];r=z[e+24>>2];s=z[d+16>>2];t=z[e+16>>2];l=z[d+8>>2];m=z[d+4>>2];k=z[d+12>>2];n=z[d>>2];z[f+12>>2]=C(l*h)+C(C(m*j)+C(C(k*g)+C(n*i)));z[f+8>>2]=C(i*m)+C(C(C(k*h)-C(g*l))-C(n*j));z[f+4>>2]=C(h*n)+C(C(C(k*j)-C(g*m))-C(l*i));z[f>>2]=C(j*l)+C(C(C(k*i)-C(g*n))-C(m*h));g=C(t-s);g=C(g+g);h=C(p-o);h=C(h+h);i=C(r-q);i=C(i+i);j=C(C(C(C(-n)*g)-C(h*m))-C(l*i));o=C(C(k*k)+C(-.5));z[f+24>>2]=C(C(i*o)+C(k*C(C(m*g)-C(n*h))))-C(l*j);z[f+20>>2]=C(C(h*o)+C(k*C(C(n*i)-C(l*g))))-C(m*j);z[f+16>>2]=C(C(g*o)+C(k*C(C(l*h)-C(m*i))))-C(n*j)}function ue(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=0,g=C(0),h=0,i=C(0),j=C(0);e=xa-16|0;xa=e;z[e+12>>2]=b;b=C(0);c=xa-128|0;xa=c;v[c+124>>2]=1065353216;v[c+120>>2]=1065353216;v[c+112>>2]=1065353216;v[c+116>>2]=1065353216;v[c+104>>2]=0;v[c+108>>2]=1065353216;v[c+96>>2]=0;v[c+100>>2]=0;v[c+80>>2]=0;z[c+88>>2]=0;z[c+84>>2]=0;f=e+12|0;a:{if(f){d=c+24|0;z8(d,1);h=B8(a,0,f,d);b:{if(h){if(z[c+72>>2]!=C(0)){C8(c+24|0,c+112|0,c+96|0,c+124|0,c+80|0,a,24698)}g=z[f>>2];break b}d=v[37696];v[c>>2]=24698;b9(d,4,6223,342,70878,c);g=C(1)}b=z[c+88>>2];i=z[c+84>>2];j=z[c+80>>2];break a}d=v[37696];v[c+16>>2]=24698;b9(d,4,6223,350,71027,c+16|0);g=C(1)}Ba[v[v[a>>2]+116>>2]](a,g);Ba[v[v[a>>2]+128>>2]](a,c+112|0);z[c+48>>2]=b;z[c+44>>2]=i;d=v[c+100>>2];v[c+24>>2]=v[c+96>>2];v[c+28>>2]=d;z[c+40>>2]=j;d=v[c+108>>2];v[c+32>>2]=v[c+104>>2];v[c+36>>2]=d;Ba[v[v[a>>2]+108>>2]](a,c+24|0);xa=c+128|0;xa=e+16|0;return h|0}function aS(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=xa-48|0;xa=f;if(v[a+8>>2]<0){$I(a);e=f+8|0;b=v[v[a+4>>2]+40>>2];c=v[v[b+976>>2]+1024>>2];Ba[v[v[c>>2]+84>>2]](e,c);pJ(v[b+2168>>2],a,4,e,(v[b+2360>>2]&8)>>>3|0)}e=v[v[a+4>>2]+40>>2];b=v[e+1012>>2];Ba[v[v[b>>2]+20>>2]](b,v[a+32>>2]);b=v[a+8>>2];c=v[e+2516>>2]+(b>>>3&268435452)|0;d=v[c>>2];h=c,i=Vaa(-2,b)&d,v[h>>2]=i;if(v[a+36>>2]!=-1){mS(v[v[v[a+4>>2]+40>>2]+1152>>2],a)}SH(v[v[v[a+4>>2]+40>>2]+2376>>2],v[a+8>>2]&2147483647);d=v[v[a+4>>2]+40>>2];b=v[d+2376>>2];c=v[b+12>>2];a:{if(c){g=c-1|0;c=v[v[b+8>>2]+(g<<2)>>2];v[b+12>>2]=g;break a}c=v[b+4>>2];v[b+4>>2]=c+1}b=c&2147483647;v[a+8>>2]=b|v[a+8>>2]&-2147483648;b=b+1|0;c=v[d+1140>>2];d=v[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){YI(c,b)}v[c+8>>2]=b}YR(a);b=v[e+1012>>2];Ba[v[v[b>>2]+16>>2]](b,a+12|0,v[a+32>>2]);xa=f+48|0}function d4(a,b,c,d){var e=C(0),f=0,g=C(0),h=C(0),i=0,j=0,k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0);f=w[v[a+28>>2]+38|0]!=0;a=v[a>>2];if(f&(a|0)!=0){v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;if(c){while(1){E=g;f=B(i,12)+d|0;j=a+B(v[f>>2],12)|0;e=z[j+8>>2];k=a+B(v[f+4>>2],12)|0;g=z[k+8>>2];f=a+B(v[f+8>>2],12)|0;h=z[f+8>>2];F=C(C(C(e+g)+h)*C(.3333333432674408));l=z[j>>2];p=z[k>>2];q=C(l-p);m=z[j+4>>2];r=z[f+4>>2];s=C(m-r);t=z[f>>2];u=C(l-t);x=z[k+4>>2];y=C(m-x);A=C(C(q*s)-C(u*y));h=C(e-h);e=C(e-g);g=C(C(y*h)-C(s*e));e=C(C(e*u)-C(h*q));e=C(C(K(C(C(A*A)+C(C(g*g)+C(e*e)))))*C(.5));g=C(E+C(F*e));z[b+8>>2]=g;n=C(n+C(C(C(r+C(m+x))*C(.3333333432674408))*e));z[b+4>>2]=n;o=C(o+C(C(C(t+C(l+p))*C(.3333333432674408))*e));z[b>>2]=o;D=C(D+e);i=i+1|0;if((i|0)!=(c|0)){continue}break}}e=C(C(1)/D);z[b+8>>2]=e*g;z[b+4>>2]=e*n;z[b>>2]=e*o}}function z7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0);e=xa-128|0;xa=e;A7(a,b,c,e+96|0,e- -64|0,e+32|0);h=z[e+56>>2];f=z[e+48>>2];j=z[e+52>>2];i=C(C(h*h)+C(C(f*f)+C(j*j)));g=z[a+80>>2];n=i>C(g*g);if(n){i=C(C(1)/C(K(i)));h=C(g*C(h*i));j=C(g*C(j*i));f=C(g*C(f*i))}z[e+24>>2]=h;z[e+20>>2]=j;z[e+16>>2]=f;g=C(z[a+84>>2]*C(.5));h=R9(g);p=H9(g);a:{b:{c:{if(h>C(.9998999834060669)){j=z[e+44>>2];k=z[e+40>>2];l=z[e+36>>2];f=z[e+32>>2];break c}f=z[e+32>>2];j=z[e+44>>2];d:{if(j>=C(0)){l=z[e+36>>2];i=l;k=z[e+40>>2];m=k;g=f;break d}k=z[e+40>>2];m=C(-k);l=z[e+36>>2];i=C(-l);g=C(-f)}o=C(C(m*m)+C(C(g*g)+C(i*i)));if(!(o>C(h*h))){break c}z[e+12>>2]=p;f=C(C(1)/C(K(o)));z[e+8>>2]=C(h*m)*f;z[e+4>>2]=C(h*i)*f;z[e>>2]=C(h*g)*f;break b}z[e+12>>2]=j;z[e+8>>2]=k;z[e+4>>2]=l;z[e>>2]=f;if(!n){break a}}K5(b,c,e+96|0,e- -64|0,e,a,d)}xa=e+128|0}function RX(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=C(f);g=g|0;h=h|0;i=C(i);var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),w=C(0),y=C(0);j=xa+-64|0;xa=j;k=z[b+20>>2];n=z[b+16>>2];s=z[b+24>>2];l=z[b>>2];o=C(l+l);m=z[b+8>>2];w=z[b+4>>2];p=z[b+12>>2];q=C(p+p);r=z[a+8>>2];y=C(C(C(o*m)-C(w*q))*r);z[j+52>>2]=s-y;m=C(r*C(C(m*q)+C(o*w)));z[j+48>>2]=k-m;z[j+40>>2]=y+s;z[j+36>>2]=k+m;k=C(r*C(C(l*o)+C(C(p*q)+C(-1))));z[j+44>>2]=n-k;z[j+32>>2]=n+k;z[j+56>>2]=z[a+4>>2];k=z[e>>2];n=z[e+4>>2];l=z[e+8>>2];u[j+8>>1]=x[h>>1]&64511;z[j+24>>2]=-l;z[j+20>>2]=-n;z[j+16>>2]=-k;a=EX(c,d,a,b,j+32|0,j+16|0,f,g,j+8|0,i);if(a){if(t[g+12|0]&1){i=z[e+8>>2];k=z[e+4>>2];f=z[g+40>>2];z[g+16>>2]=C(f*z[e>>2])+z[g+16>>2];z[g+20>>2]=C(f*k)+z[g+20>>2];z[g+24>>2]=C(f*i)+z[g+24>>2]}v[g+8>>2]=-1;z[g+28>>2]=-z[g+28>>2];z[g+36>>2]=-z[g+36>>2];z[g+32>>2]=-z[g+32>>2]}xa=j- -64|0;return a|0}function J4(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;i=xa-16|0;xa=i;g=v[d+8>>2];if(g){k=a+260|0;while(1){v[i+12>>2]=g;h=v[g+20>>2];v[g+20>>2]=0;j=v[a+264>>2];a:{if(j>>>0>=(v[a+268>>2]&2147483647)>>>0){H4(k,i+12|0);break a}v[v[a+260>>2]+(j<<2)>>2]=g;v[a+264>>2]=j+1}g=h;if(g){continue}break}v[d+8>>2]=0}v[d+48>>2]=1;v[i+8>>2]=d;h=v[f+4>>2];b:{if(h>>>0>=(v[f+8>>2]&2147483647)>>>0){y4(f,i+8|0);break b}v[v[f>>2]+(h<<2)>>2]=d;v[f+4>>2]=h+1}v[a+100>>2]=v[a+100>>2]-1;c:{if(!c){g=v[d>>2];c=g;break c}g=v[c+28>>2]}v[i+4>>2]=g;while(1){d=v[g+32>>2];h=v[d+36>>2];d:{if(v[h+48>>2]){break d}if(z[a+252>>2]>2]*z[b+8>>2])+C(C(z[h+12>>2]*z[b>>2])+C(z[b+4>>2]*z[h+16>>2])))-z[h+40>>2])){J4(a,b,d,h,e,f);break d}d=v[e+4>>2];if(d>>>0>=(v[e+8>>2]&2147483647)>>>0){D4(e,i+4|0);break d}v[v[e>>2]+(d<<2)>>2]=g;v[e+4>>2]=d+1}g=v[v[i+4>>2]+28>>2];v[i+4>>2]=g;if((c|0)!=(g|0)){continue}break}xa=i+16|0}function ov(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=xa-352|0;xa=f;v[f+336>>2]=0;v[f+340>>2]=1065353216;v[f+328>>2]=0;v[f+332>>2]=0;v[f+320>>2]=0;v[f+324>>2]=1065353216;v[f+312>>2]=0;v[f+316>>2]=0;v[f+304>>2]=1065353216;v[f+308>>2]=1065353216;v[f+288>>2]=1065353216;v[f+292>>2]=0;t[f+344|0]=0;v[f+296>>2]=0;v[f+300>>2]=0;v[f+280>>2]=0;v[f+284>>2]=0;v[f+272>>2]=1065353216;v[f+276>>2]=0;v[f+256>>2]=0;v[f+260>>2]=1065353216;v[f+248>>2]=0;v[f+252>>2]=0;v[f+240>>2]=0;v[f+244>>2]=1065353216;v[f+232>>2]=0;v[f+236>>2]=0;v[f+224>>2]=1065353216;v[f+228>>2]=1065353216;v[f+208>>2]=1065353216;v[f+212>>2]=0;t[f+264|0]=0;v[f+216>>2]=0;v[f+220>>2]=0;v[f+200>>2]=0;v[f+204>>2]=0;v[f+192>>2]=1065353216;v[f+196>>2]=0;i=a;a=f+272|0;j=f+168|0;h=f+72|0;k=XZ(i,a,j,h);i=h;h=f+144|0;l=a;a=f+192|0;a=uZ(i,f,j,h,c,d,e,g,l,a,k,XZ(b,a,h,f));xa=f+352|0;return a|0}function dJ(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0,m=0;if((Uaa(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}i=C(z[a+24>>2]*C(b>>>0));a:{if(i=C(0)){h=~~i>>>0;break a}h=0}l=v[a+16>>2];d=b+h<<2;d=(0-d&12)+d|0;e=d+B(h,12)|0;if(e){f=v[37696]+12|0;e=Ba[v[v[f>>2]+8>>2]](f,e,24422,17301,372)|0}else{e=0}c=d;d=b<<2;e=J9(e,255,d);j=c+e|0;k=d+e|0;if(v[a+36>>2]){m=b-1|0;d=0;while(1){g=B(d,12);f=g+v[a+4>>2]|0;c=v[f+4>>2]<<14&-65536|v[f>>2]>>>2&65535;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=e+(((c>>>16^c)&m)<<2)|0;v[(d<<2)+k>>2]=v[c>>2];v[c>>2]=d;c=v[f+4>>2];g=g+j|0;v[g>>2]=v[f>>2];v[g+4>>2]=c;v[g+8>>2]=v[f+8>>2];d=d+1|0;if(d>>>0>2]){continue}break}}d=v[a>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=k;v[a+16>>2]=h;v[a+4>>2]=j;if(v[a+28>>2]==-1){v[a+28>>2]=l}}function a6(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0);c=xa+-64|0;xa=c;b=v[b+76>>2];Ba[v[v[b>>2]+28>>2]](b,c+44|0,c+40|0);Z4(c+8|0,v[c+44>>2]);b=v[c+44>>2];d=C(0);a:{if(!b){break a}d=C(0);if(x[b+4>>1]==6){break a}i=c+48|0;Ba[v[v[b>>2]+156>>2]](i,b);Ba[v[v[b>>2]+164>>2]](i,b);f=z[c+52>>2];g=z[c+48>>2];d=z[c+56>>2]}b=v[c+40>>2];e=C(0);b:{if(!b){break b}e=C(0);if(x[b+4>>1]==6){break b}i=c+48|0;Ba[v[v[b>>2]+156>>2]](i,b);Ba[v[v[b>>2]+164>>2]](i,b);h=z[c+56>>2];j=z[c+48>>2];e=z[c+52>>2]}k=z[c+16>>2];d=C(C(h-d)-z[c+32>>2]);h=C(d+d);l=z[c+8>>2];d=C(C(j-g)-z[c+24>>2]);g=C(d+d);d=C(C(e-f)-z[c+28>>2]);e=C(d+d);f=z[c+12>>2];j=C(C(k*h)+C(C(l*g)+C(e*f)));d=z[c+20>>2];m=C(C(d*d)+C(-.5));z[a+8>>2]=C(k*j)+C(C(h*m)-C(d*C(C(l*e)-C(g*f))));z[a+4>>2]=C(f*j)+C(C(e*m)-C(d*C(C(k*g)-C(h*l))));z[a>>2]=C(l*j)+C(C(g*m)-C(d*C(C(f*h)-C(e*k))));xa=c- -64|0}function Lt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=xa-48|0;xa=c;d=Ba[v[v[a>>2]+32>>2]](a)|0;e=Ba[v[v[a>>2]+32>>2]](a)|0;a:{if(!(!((d|0)==6|(e|0)==5)|(b|0)!=-1)){b9(v[37696],2,11562,447,70250,0);a=0;break a}b:{if((d|0)==6){v[c+24>>2]=1065353216;v[c+28>>2]=0;v[c+16>>2]=1065353216;v[c+20>>2]=1065353216;v[c+8>>2]=6;v[c+12>>2]=0;Ba[v[v[a>>2]+68>>2]](a,c+8|0)|0;d=v[c+12>>2];d=Ba[v[v[d>>2]+68>>2]](d,b)|0;break b}d=0;if((e|0)!=5){break b}v[c+36>>2]=1065353216;v[c+28>>2]=0;v[c+32>>2]=0;v[c+20>>2]=1065353216;v[c+24>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+12>>2]=1065353216;v[c+16>>2]=1065353216;v[c+8>>2]=5;Ba[v[v[a>>2]+64>>2]](a,c+8|0)|0;e=v[c+44>>2];d=0;if(!v[e+68>>2]){break b}d=Ba[v[v[e>>2]+56>>2]](e,b)|0}e=v[37393];c:{if(w[a+36|0]&2){b=v[a+40>>2];a=x[b+124>>1]==1?b+120|0:v[v[a+32>>2]+4856>>2]+(v[b+120>>2]<<1)|0;break c}a=GR(a+48|0)}a=v[v[e+40>>2]+(x[a+(d<<1)>>1]<<2)>>2]}xa=c+48|0;return a|0}function bZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=0,m=0,n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0);e=v[b+8>>2];n=d;d=v[b+4>>2];k=d+56|0;f=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];i=C(C(z[b+56>>2]*f)+C(C(z[b+24>>2]*g)+C(h*z[b+40>>2])));j=C(C(z[b+48>>2]*f)+C(C(z[b+16>>2]*g)+C(h*z[b+32>>2])));f=C(C(z[b+52>>2]*f)+C(C(z[b+20>>2]*g)+C(h*z[b+36>>2])));c=d+52|0;l=d+72|0;m=d+68|0;b=C(C(z[k>>2]*i)+C(C(z[d+48>>2]*j)+C(f*z[c>>2])))>C(C(z[l>>2]*i)+C(C(z[d+64>>2]*j)+C(f*z[m>>2])));v[n>>2]=b;f=z[(b?k:l)>>2];g=z[(b?d+48|0:d- -64|0)>>2];h=z[(b?c:m)>>2];i=z[e+52>>2];j=z[e+36>>2];o=z[e+20>>2];p=z[e+56>>2];q=z[e+40>>2];r=z[e+24>>2];s=z[e+48>>2];t=z[e+32>>2];u=z[e>>2];w=z[e+16>>2];x=z[e+4>>2];y=z[e+8>>2];v[a+12>>2]=0;z[a+8>>2]=p+C(C(q*f)+C(C(y*g)+C(h*r)));z[a+4>>2]=i+C(C(j*f)+C(C(x*g)+C(h*o)));z[a>>2]=s+C(C(t*f)+C(C(u*g)+C(h*w)))}function N2(a,b,c,d,e,f){var g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);i=xa-48|0;xa=i;g=z[c>>2];j=z[d>>2];h=z[c+4>>2];k=z[d+4>>2];z[i+40>>2]=C(z[d+8>>2]*e)+z[c+8>>2];z[i+36>>2]=h+C(k*e);z[i+32>>2]=g+C(j*e);E_(i+8|0,i+32|0,f,f+12|0,f+24|0,i+28|0,i+24|0);l=z[i+16>>2];e=C(z[i+40>>2]-l);m=z[i+8>>2];g=C(z[i+32>>2]-m);n=z[i+12>>2];j=C(z[i+36>>2]-n);h=C(K(C(C(e*e)+C(C(g*g)+C(j*j)))));if(h>C(0)){k=C(C(1)/h);e=C(e*k);j=C(j*k);g=C(g*k)}a:{if(!(h>2];j=C(z[f+12>>2]-e);g=z[f+4>>2];h=C(z[f+28>>2]-g);k=C(z[f+24>>2]-e);g=C(z[f+16>>2]-g);e=C(C(j*h)-C(k*g));p=g;g=z[f+8>>2];o=C(z[f+32>>2]-g);q=h;h=C(z[f+20>>2]-g);g=C(C(p*o)-C(q*h));j=C(C(h*k)-C(o*j));h=C(K(C(C(e*e)+C(C(g*g)+C(j*j)))));if(!(h>C(0))){break a}h=C(C(1)/h);e=C(e*h);j=C(j*h);g=C(g*h)}z[a+8>>2]=l;z[a+4>>2]=n;z[a>>2]=m;z[b+8>>2]=e;z[b+4>>2]=j;z[b>>2]=g;xa=i+48|0}function r5(a){var b=0,c=0,d=C(0),e=C(0);b=xa-16|0;xa=b;a=v[a+76>>2];Ba[v[v[a>>2]+28>>2]](a,b+8|0,b+12|0);a=v[b+8>>2];a:{if(!a){break a}if(!(Ba[v[v[a>>2]+28>>2]](a)|0)){break a}a=v[b+8>>2];if((Ba[v[v[a>>2]+24>>2]](a)|0)!=1){break a}a=v[b+8>>2];Ba[v[v[a>>2]+216>>2]](b,a);if(t[b|0]&1){break a}c=Ba[v[v[a>>2]+28>>2]](a)|0;d=C(Ba[v[v[c>>2]+440>>2]](c));e=C(Ba[v[v[a>>2]+292>>2]](a));c=d>e;if(!(Ba[v[v[a>>2]+256>>2]](a)|0?1:c)){break a}Ba[v[v[a>>2]+296>>2]](a);Ba[v[v[a>>2]+288>>2]](a,c?d:e)}a=v[b+12>>2];b:{if(!a){break b}if(!(Ba[v[v[a>>2]+28>>2]](a)|0)){break b}a=v[b+12>>2];if((Ba[v[v[a>>2]+24>>2]](a)|0)!=1){break b}a=v[b+12>>2];Ba[v[v[a>>2]+216>>2]](b,a);if(t[b|0]&1){break b}c=Ba[v[v[a>>2]+28>>2]](a)|0;d=C(Ba[v[v[c>>2]+440>>2]](c));e=C(Ba[v[v[a>>2]+292>>2]](a));c=d>e;if(!(Ba[v[v[a>>2]+256>>2]](a)|0?1:c)){break b}Ba[v[v[a>>2]+296>>2]](a);Ba[v[v[a>>2]+288>>2]](a,c?d:e)}xa=b+16|0}function h4(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0,m=0;if(f){j=B(b,12)+f|0;l=v[j>>2];h=B(a,12)+f|0;f=v[h>>2];k=v[j+8>>2];i=v[h+8>>2];h=v[h+4>>2];j=v[j+4>>2]}if(g){i=B(b,6)+g|0;l=x[i>>1];g=B(a,6)+g|0;f=x[g>>1];k=x[i+4>>1];h=x[g+2>>1];j=x[i+2>>1];i=x[g+4>>1]}g=0;m=(c|0)!=(f|0);a:{if(!m&(d|0)==(h|0)){break a}f=(d|0)!=(f|0);if(!f&(c|0)==(h|0)){break a}g=1;if(!m&(d|0)==(i|0)|!f&(c|0)==(i|0)){break a}if((c|0)==(h|0)){g=2;if((d|0)==(i|0)){break a}}g=(d|0)==(h|0)?(c|0)==(i|0)?2:-1:-1}f=0;i=(c|0)!=(l|0);b:{if(!i&(d|0)==(j|0)){break b}h=(d|0)!=(l|0);if(!h&(c|0)==(j|0)){break b}f=1;if(!i&(d|0)==(k|0)|!h&(c|0)==(k|0)){break b}if((c|0)==(j|0)){f=2;if((d|0)==(k|0)){break b}}f=(d|0)==(j|0)?(c|0)==(k|0)?2:-1:-1}c:{if(!((g|0)!=-1&(f|0)!=-1)){b9(v[37696],8,7469,509,22858,0);break c}v[(B(a,12)+e|0)+((g&255)<<2)>>2]=f<<30|b;v[(B(b,12)+e|0)+((f&255)<<2)>>2]=g<<30|a}return(g|0)!=-1&(f|0)!=-1}function C9(a,b){var c=0,d=0,e=0,f=C(0),g=0;if(!(((p(a),j(2))&2147483647)>>>0<2139095041&((p(b),j(2))&2147483647)>>>0<=2139095040)){return C(a+b)}c=(p(b),j(2));if((c|0)==1065353216){return D9(a)}g=c>>>30&2;d=(p(a),j(2));e=g|d>>>31;a:{b:{d=d&2147483647;c:{if(!d){d:{switch(e-2|0){case 0:return C(3.1415927410125732);case 1:break d;default:break c}}return C(-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=C(0);if(c>>>0>d+218103808>>>0){break e}}f=D9(C(D(C(a/b))))}a=f;f:{switch(e|0){case 1:return C(-a);case 2:return C(C(3.1415927410125732)-C(a+C(8.742277657347586e-8)));case 0:break c;default:break f}}return C(C(a+C(8.742277657347586e-8))+C(-3.1415927410125732))}if((d|0)==2139095040){break b}a=z[(e<<2)+106256>>2]}return a}return z[(e<<2)+106240>>2]}return l(2,(p(a),j(2))&-2147483648|1070141403),q()}function A3(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=xa-256|0;xa=l;g=v[f>>2]+1|0;v[f>>2]=g;if(g>>>0>y[e>>2]){v[e>>2]=g}h=v[d+1028>>2];a:{b:{if(!h){break b}while(1){g=(b+j<<5)+a|0;i=(j<<5)+d|0;z[g>>2]=z[i+4>>2];z[g+4>>2]=z[i+8>>2];z[g+8>>2]=z[i+12>>2];z[g+16>>2]=z[i+20>>2];z[g+20>>2]=z[i+24>>2];z[g+24>>2]=z[i+28>>2];v[g+28>>2]=v[i+32>>2];j=j+1|0;if((j|0)!=(h|0)){continue}break}J9(l+128|0,255,128);g=0;i=J9(l,0,128);if(!h){break b}m=(b<<5)+a|0;b=0;while(1){k=b<<5;j=v[(k+d|0)+32>>2];if(!(j&1)){h=v[c>>2];v[c>>2]=h+v[j+1028>>2];v[(k+m|0)+28>>2]=(v[j+1028>>2]<<1)+(h<<11);k=g<<2;v[k+i>>2]=j;v[k+(i+128|0)>>2]=h;h=v[d+1028>>2];g=g+1|0}b=b+1|0;if(h>>>0>b>>>0){continue}break}if(!g){break b}b=0;while(1){h=b<<2;A3(a,v[h+(i+128|0)>>2],c,v[i+h>>2],e,f);v[f>>2]=v[f>>2]-1;b=b+1|0;if((g|0)!=(b|0)){continue}break}if(!d){break a}}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,d)}xa=l+256|0}function U7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0);e=xa-128|0;xa=e;A7(a,b,c,e+96|0,e- -64|0,e+32|0);g=z[e+56>>2];f=z[e+52>>2];i=C(C(g*g)+C(C(f*f)+C(0)));h=z[a+108>>2];n=i>C(h*h);if(n){i=C(C(1)/C(K(i)));g=C(h*C(g*i));f=C(h*C(f*i))}z[e+24>>2]=g;z[e+20>>2]=f;g=C(z[a+112>>2]*C(.5));h=R9(g);p=H9(g);a:{b:{c:{if(h>C(.9998999834060669)){m=z[e+44>>2];j=z[e+40>>2];k=z[e+36>>2];f=z[e+32>>2];break c}f=z[e+32>>2];m=z[e+44>>2];d:{if(m>=C(0)){k=z[e+36>>2];i=k;j=z[e+40>>2];l=j;g=f;break d}j=z[e+40>>2];l=C(-j);k=z[e+36>>2];i=C(-k);g=C(-f)}o=C(C(l*l)+C(C(g*g)+C(i*i)));if(!(o>C(h*h))){break c}z[e+12>>2]=p;f=C(C(1)/C(K(o)));z[e+8>>2]=C(h*l)*f;z[e+4>>2]=C(h*i)*f;z[e>>2]=C(h*g)*f;break b}z[e+12>>2]=m;z[e+8>>2]=j;z[e+4>>2]=k;z[e>>2]=f;if(!n){break a}}z[e+16>>2]=z[e+48>>2];K5(b,c,e+96|0,e- -64|0,e,a,d)}xa=e+128|0}function KW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0);e=xa+-64|0;xa=e;s=z[b+20>>2];t=z[d+20>>2];u=z[b+24>>2];v=z[d+24>>2];w=z[b+16>>2];x=z[d+16>>2];g=z[c+8>>2];j=z[d+8>>2];k=z[d>>2];q=z[d+4>>2];m=z[d+12>>2];f=z[b>>2];h=C(f+f);l=z[b+8>>2];r=z[b+4>>2];i=z[b+12>>2];n=C(i+i);o=z[a+8>>2];p=C(C(C(h*l)-C(r*n))*o);z[e+56>>2]=-p;l=C(o*C(C(l*n)+C(h*r)));z[e+52>>2]=-l;f=C(o*C(C(f*h)+C(C(i*n)+C(-1))));z[e+48>>2]=-f;z[e+40>>2]=p+p;z[e+36>>2]=l+l;z[e+32>>2]=f+f;f=C(k+k);h=C(m+m);i=C(g*C(C(j*f)-C(q*h)));z[e+24>>2]=C(v-u)-i;j=C(g*C(C(j*h)+C(f*q)));z[e+20>>2]=C(t-s)-j;g=C(g*C(C(k*f)+C(C(m*h)+C(-1))));z[e+16>>2]=C(x-w)-g;z[e+8>>2]=i+i;z[e+4>>2]=j+j;z[e>>2]=g+g;g=I_(e+48|0,e+32|0,e+16|0,e,0,0);xa=e- -64|0;k=C(z[a+4>>2]+z[c+4>>2]);return g<=C(k*k)|0}function tB(a){var b=C(0),c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=0,r=0,s=C(0);e=v[a+28>>2];if(e){c=v[a+24>>2];m=w[c+1|0];if(m){r=w[c|0]==4?160:96;a=c+176|0;while(1){if(w[a+84|0]&2){b=z[a+76>>2];f=z[a>>2];n=z[c+36>>2];k=z[c+32>>2];d=z[a+4>>2];g=C(g+C(b*C(C(C(f*n)-C(k*d))+z[a+40>>2])));l=z[a+8>>2];s=C(l*k);k=z[c+40>>2];o=C(o+C(b*C(C(s-C(k*f))+z[a+36>>2])));p=C(p+C(b*C(z[a+32>>2]+C(C(d*k)-C(n*l)))));h=C(h+C(b*d));i=C(i+C(b*f));j=C(j+C(b*l))}a=a+r|0;q=q+1|0;if((m|0)!=(q|0)){continue}break}}b=z[c+24>>2];f=z[c+20>>2];d=z[c+16>>2];z[e+8>>2]=j;z[e+4>>2]=h;z[e>>2]=i;g=C(g-C(C(d*h)-C(i*f)));z[e+24>>2]=g;d=C(o-C(C(b*i)-C(j*d)));z[e+20>>2]=d;b=C(p-C(C(f*j)-C(h*b)));z[e+16>>2]=b;a=0;a:{if(!w[c+3|0]){break a}a=1;if(z[c+4>>2]>2]>2]=a}}function jM(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=v[a+268>>2];c=a+216|0;f=v[a+280>>2];if(f){while(1){b=(e<<3)+i|0;a=v[b>>2];b=v[b+4>>2];a:{if(!v[c+8>>2]){break a}d=a>>>0>b>>>0?a:b;b=a>>>0>>0?a:b;a=d<<16|b;a=(a<<15^-1)+a|0;a=B(a>>10^a,9);a=a>>6^a;a=(a<<11^-1)+a|0;g=v[c+36>>2]&(a>>16^a);a=v[v[c>>2]+(g<<2)>>2];if((a|0)==1073741823){break a}j=v[c+4>>2];k=v[c+20>>2];while(1){h=(a<<3)+k|0;if(!((b|0)==v[h>>2]&(d|0)==v[h+4>>2])){a=v[(a<<2)+j>>2];if((a|0)!=1073741823){continue}break a}break}VL(c,g,a&536870911);a=v[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=v[c+8>>2];if((a|0)==(d|0)){break a}b=v[c+16>>2];if(b>>>0>a>>>0&(b|0)==(d|0)){break a}d=a>>>0>b>>>0;a=d?a:b;v[c+8>>2]=a;v[c+36>>2]=a-1;b=1;b:{if(d){break b}b=1;if(a>>>0<=v[c+12>>2]>>>2>>>0){break b}b=a>>>0<=v[c+32>>2]>>>2>>>0}UL(c,b)}e=e+1|0;if((f|0)!=(e|0)){continue}break}}}function ex(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=xa-32|0;xa=e;t[a+489|0]=1;d=v[a+264>>2];f=v[a+448>>2]-1|0;if(f){i=v[a+444>>2];while(1){h=f<<5;g=h+b|0;dx(e,v[a+396>>2]+B(f,96)|0,(v[a+452>>2]+B(f,160)|0)+120|0,v[a+384>>2]+B(f,76)|0,g);c=(v[(h+i|0)+24>>2]<<5)+b|0;z[c>>2]=z[e>>2]+z[c>>2];z[c+4>>2]=z[e+4>>2]+z[c+4>>2];z[c+8>>2]=z[e+8>>2]+z[c+8>>2];z[c+16>>2]=z[e+16>>2]+z[c+16>>2];z[c+20>>2]=z[e+20>>2]+z[c+20>>2];z[c+24>>2]=z[e+24>>2]+z[c+24>>2];c=d+h|0;z[c>>2]=z[g>>2]+z[c>>2];z[c+4>>2]=z[g+4>>2]+z[c+4>>2];z[c+8>>2]=z[g+8>>2]+z[c+8>>2];z[c+16>>2]=z[g+16>>2]+z[c+16>>2];z[c+20>>2]=z[g+20>>2]+z[c+20>>2];z[c+24>>2]=z[g+24>>2]+z[c+24>>2];f=f-1|0;if(f){continue}break}}z[d>>2]=z[b>>2]+z[d>>2];z[d+4>>2]=z[b+4>>2]+z[d+4>>2];z[d+8>>2]=z[b+8>>2]+z[d+8>>2];z[d+16>>2]=z[b+16>>2]+z[d+16>>2];z[d+20>>2]=z[b+20>>2]+z[d+20>>2];z[d+24>>2]=z[b+24>>2]+z[d+24>>2];xa=e+32|0}function Fc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;var g=0,h=0;g=xa-80|0;xa=g;f=x[f>>1];v[g+56>>2]=0;v[g+60>>2]=0;h=g- -64|0;v[h>>2]=0;v[h+4>>2]=0;u[g+24>>1]=f;v[g+48>>2]=0;v[g+52>>2]=0;u[g+44>>1]=0;v[g+40>>2]=-1;v[g+32>>2]=0;v[g+36>>2]=0;v[g+72>>2]=2139095039;v[g+8>>2]=0;v[g+12>>2]=0;v[g>>2]=0;v[g+4>>2]=0;u[g+16>>1]=3;f=xa-112|0;xa=f;v[f+88>>2]=v[g>>2];v[f+92>>2]=v[g+4>>2];v[f+96>>2]=v[g+8>>2];v[f+100>>2]=v[g+12>>2];u[f+104>>1]=x[g+16>>1]|16;v[f+36>>2]=0;v[f+40>>2]=0;u[f+32>>1]=0;v[f+28>>2]=-1;v[f+44>>2]=0;v[f+48>>2]=0;v[f+52>>2]=0;v[f+56>>2]=0;v[f+60>>2]=2139095039;v[f+20>>2]=0;v[f+24>>2]=0;v[f+80>>2]=0;v[f+72>>2]=0;v[f+76>>2]=0;t[f+68|0]=0;v[f+16>>2]=114448;u[f+8>>1]=x[g+24>>1];Ba[v[v[a>>2]+352>>2]](a,b,c,d,e,f+16|0,f+8|0,f+88|0,0,0,C(0))|0;v[g+40>>2]=v[f+28>>2];a=v[f+24>>2];v[g+32>>2]=v[f+20>>2];v[g+36>>2]=a;xa=f+112|0;xa=g+80|0;return w[f+68|0]}function kI(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0,m=0;if((Uaa(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}i=C(z[a+24>>2]*C(b>>>0));a:{if(i=C(0)){h=~~i>>>0;break a}h=0}l=v[a+16>>2];d=b+h<<2;d=(0-d&12)+d|0;e=d+B(h,12)|0;if(e){f=v[37696]+12|0;e=Ba[v[v[f>>2]+8>>2]](f,e,24422,17301,372)|0}else{e=0}c=d;d=b<<2;e=J9(e,255,d);j=c+e|0;k=d+e|0;if(v[a+36>>2]){m=b-1|0;d=0;while(1){g=B(d,12);f=g+v[a+4>>2]|0;c=v[f+4>>2]<<16|x[f>>1];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=e+(((c>>>16^c)&m)<<2)|0;v[(d<<2)+k>>2]=v[c>>2];v[c>>2]=d;c=v[f+4>>2];g=g+j|0;v[g>>2]=v[f>>2];v[g+4>>2]=c;v[g+8>>2]=v[f+8>>2];d=d+1|0;if(d>>>0>2]){continue}break}}d=v[a>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=k;v[a+16>>2]=h;v[a+4>>2]=j;if(v[a+28>>2]==-1){v[a+28>>2]=l}}function cD(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;a:{if(!v[a+36>>2]){break a}h=v[a+12>>2];d=v[b>>2];b=(d<<15^-1)+d|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;f=h+((v[a+20>>2]-1&(b>>>16^b))<<2)|0;b=v[f>>2];if((b|0)==-1){break a}g=v[a+8>>2];e=v[a+4>>2];if((d|0)!=v[e+(b<<3)>>2]){while(1){f=(b<<2)+g|0;b=v[f>>2];if((b|0)==-1){break a}if((d|0)!=v[e+(b<<3)>>2]){continue}break}}v[c>>2]=d;v[c+4>>2]=v[(e+(b<<3)|0)+4>>2];b=f;c=v[f>>2];f=(c<<2)+g|0;v[b>>2]=v[f>>2];b=v[a+36>>2]-1|0;v[a+36>>2]=b;i=1;v[a+32>>2]=v[a+32>>2]+1;if((b|0)!=(c|0)){d=e+(c<<3)|0;e=e+(b<<3)|0;v[d>>2]=v[e>>2];v[d+4>>2]=v[e+4>>2];v[f>>2]=v[(b<<2)+g>>2];b=v[d>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=((v[a+20>>2]-1&(b>>>16^b))<<2)+h|0;b=v[d>>2];e=v[a+36>>2];if((b|0)!=(e|0)){while(1){d=(b<<2)+g|0;b=v[d>>2];if((e|0)!=(b|0)){continue}break}}v[d>>2]=c}v[a+28>>2]=v[a+28>>2]-1}return i}function _V(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=0;g=xa-4320|0;xa=g;h=z[d+20>>2];o=z[d+16>>2];p=z[d+24>>2];j=z[d>>2];k=C(j+j);i=z[d+8>>2];q=z[d+4>>2];l=z[d+12>>2];m=C(l+l);n=z[c+8>>2];r=C(C(C(k*i)-C(q*m))*n);z[g+20>>2]=p-r;i=C(n*C(C(i*m)+C(k*q)));z[g+16>>2]=h-i;z[g+8>>2]=r+p;z[g+4>>2]=h+i;h=C(n*C(C(j*k)+C(C(l*m)+C(-1))));z[g+12>>2]=o-h;z[g>>2]=o+h;z[g+24>>2]=z[c+4>>2];c=g+4288|0;LU(c,g,g+12|0,g+4316|0);v[g+4232>>2]=-1;z[g+56>>2]=z[g+4316>>2];z[g+52>>2]=z[g+24>>2];v[g+48>>2]=2;s=g+4232|0;t=g+48|0;lV(s,t);v[g+4176>>2]=-1;u=g+4176|0;lV(u,e);v[g+4168>>2]=0;v[g+4172>>2]=0;d=0;v[g+4144>>2]=0;v[g+40>>2]=1065353216;v[g+32>>2]=0;v[g+36>>2]=0;a:{if(!mZ(s,u,c,f,g+32|0,t)){break a}if(!RV(a,b,v[g+4144>>2],g+48|0)){break a}d=v[g+4144>>2]!=0}xa=g+4320|0;return d|0}function tE(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(!v[a+684>>2]){break a}d=(b<<15^-1)+b|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=v[v[a+660>>2]+((v[a+668>>2]-1&(d>>>16^d))<<2)>>2];if((d|0)==-1){break a}e=v[a+656>>2];f=v[a+652>>2];while(1){if(v[f+(d<<3)>>2]!=(b|0)){d=v[e+(d<<2)>>2];if((d|0)!=-1){continue}break a}break}i=v[(f+(d<<3)|0)+4>>2];j=B(i,44);d=j+v[a+644>>2]|0;e=v[d+4>>2];f=v[v[e+16>>2]+(c<<2)>>2];e=iC(e,c);k=f<<2;c=SC(v[d>>2],v[k+v[v[d+8>>2]>>2]>>2],f,v[v[d+4>>2]+8>>2]);b:{if(!c|v[c+40>>2]){break b}g=v[c+36>>2];if(!v[g>>2]){break b}while(1){v[v[v[d+8>>2]>>2]+(v[((h<<2)+g|0)+4>>2]<<2)>>2]=c;h=h+1|0;g=v[c+36>>2];if(h>>>0>2]){continue}break}}c=v[v[d+8>>2]>>2];v[c+k>>2]=v[c+(e<<2)>>2];if((f|0)!=(e|0)){TC(v[v[v[d+8>>2]>>2]+(f<<2)>>2],e,f)}if(!v[v[v[a+644>>2]+j>>2]+588>>2]){Ba[v[v[a>>2]+4>>2]](a,b);return}sE(a,i)}}function Taa(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;Aa=0;break a}if(!d){break h}break g}if(!(c-1&c)){break f}g=(E(c)+33|0)-E(b)|0;e=0-g|0;break d}a=(b>>>0)/0|0;Aa=0;break a}a=32-E(b)|0;if(a>>>0<31){break e}break c}if((c|0)==1){break b}a=Raa(c);c=a&31;if((a&63)>>>0>=32){a=0;b=b>>>c|0}else{a=b>>>c|0;b=((1<>>c}Aa=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}}Aa=b<<1|d>>>31;a=k|d<<1;break a}d=0;b=0}Aa=b;a=d}return a}function Mc(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;d9();b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?33953:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,188,d,8633,697)|0;d=xa-16|0;xa=d;v[b+8>>2]=a;v[b+4>>2]=140304;v[b>>2]=140216;J9(b+12|0,0,92);v[b+112>>2]=0;v[b+116>>2]=0;v[b+104>>2]=1061158912;v[b+108>>2]=-1;Im(b+80|0,64);v[b+144>>2]=0;v[b+148>>2]=0;t[b+140|0]=0;v[b+136>>2]=65792;v[b+128>>2]=0;v[b+132>>2]=1065353216;v[b+120>>2]=0;v[b+124>>2]=0;v[b+152>>2]=0;v[b+156>>2]=0;v[b+160>>2]=0;v[b+164>>2]=0;v[b+176>>2]=0;v[b+180>>2]=0;v[b+168>>2]=1061158912;v[b+172>>2]=-1;nn(b+144|0,64);c=v[37696];e=b,f=(h=c+12|0,i=28,j=Ba[v[v[c>>2]+20>>2]](c)|0?37931:63804,k=16755,l=113,g=v[v[c+12>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0),v[e+184>>2]=f;c=xa-16|0;xa=c;xa=c+16|0;a=Ba[v[v[a>>2]+28>>2]](a)|0;t[d+8|0]=1;Ba[v[v[a>>2]+132>>2]](a,b+4|0,d+8|0,0);xa=d+16|0;return b|0}function FV(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0);l=z[b>>2];o=z[d>>2];p=z[e>>2];q=z[f>>2];m=z[b+4>>2];n=z[d+4>>2];h=z[e+4>>2];r=z[f+4>>2];g=z[c+4>>2];t=C(g*z[e+8>>2]);j=z[c+8>>2];u=C(j*z[f+8>>2]);i=C(t+u);v=z[b+8>>2];k=z[c>>2];w=C(k*z[d+8>>2]);s=C(v-w);z[a+92>>2]=i+s;x=C(g*h);r=C(j*r);h=C(x+r);y=C(k*n);n=C(m-y);z[a+88>>2]=h+n;p=C(g*p);q=C(j*q);g=C(p+q);o=C(k*o);j=C(l-o);z[a+84>>2]=g+j;k=C(w+v);z[a+80>>2]=i+k;m=C(y+m);z[a+76>>2]=h+m;l=C(o+l);z[a+72>>2]=g+l;z[a+20>>2]=k-i;z[a+16>>2]=m-h;z[a+12>>2]=l-g;z[a+8>>2]=s-i;z[a+4>>2]=n-h;z[a>>2]=j-g;i=C(t-u);z[a+68>>2]=k-i;h=C(x-r);z[a- -64>>2]=m-h;g=C(p-q);z[a+60>>2]=l-g;z[a+56>>2]=s-i;z[a+52>>2]=n-h;z[a+48>>2]=j-g;z[a+44>>2]=i+s;z[a+40>>2]=h+n;z[a+36>>2]=g+j;z[a+32>>2]=i+k;z[a+28>>2]=h+m;z[a+24>>2]=g+l}function EL(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){Ba[v[v[f>>2]+20>>2]](f)}FL(a,d);c=v[a+124>>2];d=v[a+128>>2];b=v[a+88>>2];v[b+68>>2]=v[b+24>>2];v[b+72>>2]=d;v[b- -64>>2]=c;c=v[b>>2];a:{if(!c){break a}d=b+36|0;b=v[b+12>>2];f=0;while(1){e=v[(b+B(f,40)|0)+28>>2];if(e){sL(e,d)}f=f+1|0;if((c|0)!=(f|0)){continue}break}b=v[a+88>>2];d=v[b>>2];if(!d){break a}c=v[b+12>>2];e=0;f=0;if(d-1>>>0>=3){h=d&-4;while(1){g=v[(c+B(f,40)|0)+28>>2];if(g){v[g+116>>2]=0}g=v[(c+B(f|1,40)|0)+28>>2];if(g){v[g+116>>2]=0}g=v[(c+B(f|2,40)|0)+28>>2];if(g){v[g+116>>2]=0}g=v[(c+B(f|3,40)|0)+28>>2];if(g){v[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=v[(c+B(f,40)|0)+28>>2];if(h){v[h+116>>2]=0}f=f+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}wL(b+36|0,v[b+24>>2],a,b+76|0,b+84|0);J9(v[b+76>>2],0,v[b+80>>2]<<2)}function tH(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;v[a+160>>2]=b;a:{if(b){h=v[b+48>>2]&-128|e<<1;v[a+144>>2]=h|1;b=v[a+44>>2];z[b+156>>2]=c;if(w[b+44|0]&32){i=h>>>7|0;g=i+32>>>5|0;b=v[a+40>>2];b:{if(g>>>0<=(v[b+4740>>2]&2147483647)>>>0){e=v[b+4736>>2];break b}e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,g<<2,24422,17999,438)|0;f=v[b+4736>>2];c:{if(!f){break c}I9(e,f,v[b+4740>>2]<<2);if(v[b+4740>>2]<0){break c}f=v[b+4736>>2];if(!f){break c}j=v[37696]+12|0;Ba[v[v[j>>2]+12>>2]](j,f)}f=v[b+4740>>2];J9((f<<2)+e|0,0,g-f<<2);v[b+4740>>2]=g;v[b+4736>>2]=e}b=(h>>>10&4194300)+e|0;v[b>>2]=v[b>>2]|1<>2]>=4294967294){TO(v[a+40>>2],a);aH(a)}cG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);return}if(!v[a+160>>2]){dG(v[v[a+40>>2]+1e3>>2],v[a+144>>2])}eG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);if(y[a+152>>2]>4294967293){break a}VO(v[a+40>>2],a);bH(a);return}v[a+144>>2]=-125}}function lZ(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=0;n=z[i+8>>2];p=z[d+8>>2];t=z[i>>2];q=z[d>>2];u=z[i+4>>2];r=z[d+4>>2];o=z[d+12>>2];v=C(C(C(n*p)+C(C(t*q)+C(u*r)))+o);s=o;o=z[j+8>>2];w=z[j>>2];x=z[j+4>>2];a:{if(C(v*C(s+C(C(o*p)+C(C(w*q)+C(r*x)))))>C(0)){break a}y=p;p=C(o-n);o=q;q=C(w-t);s=r;r=C(x-u);o=C(C(y*p)+C(C(o*q)+C(s*r)));if(o==C(0)){break a}s=n;n=C(v/o);z[l+8>>2]=s-C(p*n);z[l+4>>2]=u-C(r*n);z[l>>2]=t-C(q*n);d=e<<2;e=f<<2;g=C(C(C(z[d+c>>2]*C(z[e+l>>2]-z[a+e>>2]))-C(C(z[d+l>>2]-z[a+d>>2])*z[c+e>>2]))*g);z[k>>2]=g;if(g>2];n=z[h+4>>2];m=C(z[l>>2]-C(g*z[h>>2]));z[l>>2]=m;n=C(z[l+4>>2]-C(g*n));z[l+4>>2]=n;g=C(z[l+8>>2]-C(g*p));z[l+8>>2]=g;A=C(C(C(z[a+8>>2]-g)*C(z[b+8>>2]-g))+C(C(C(z[a>>2]-m)*C(z[b>>2]-m))+C(C(z[a+4>>2]-n)*C(z[b+4>>2]-n))))>2]=0;cz(a,0,g+8|0);Aw(a,v[a+4>>2]);break a}e=v[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}v[g+12>>2]=0;cz(a,0,g+12|0);Aw(a,v[a+4>>2]);if(d>>>0<=(v[a+8>>2]&2147483647)>>>0){break b}Aw(a,d)}v[a+4>>2]=b;J9(v[a>>2],255,b<<2);h=v[c+40>>2];if(!h){break a}e=v[c>>2];k=v[c+8>>2];c=v[a>>2];b=0;while(1){d=B(b,28)+k|0;a=v[d+24>>2];c:{if(!(a&1)){break c}a=a>>>1|0;f=a&15;if(!f){break c}i=a&1;a=0;if((f|0)!=1){l=f-i|0;f=0;while(1){j=a<<2;v[c+(v[j+(e+(v[d+24>>2]>>>3&536870908)|0)>>2]<<2)>>2]=b;v[c+(v[(e+(v[d+24>>2]>>>3&536870908)|0)+(j|4)>>2]<<2)>>2]=b;a=a+2|0;f=f+2|0;if((l|0)!=(f|0)){continue}break}}if(!i){break c}v[c+(v[(e+(v[d+24>>2]>>>3&536870908)|0)+(a<<2)>>2]<<2)>>2]=b}b=b+1|0;if((h|0)!=(b|0)){continue}break}}xa=g+16|0}function Wn(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=xa-16|0;xa=f;a:{b:{if(!v[a+92>>2]){break b}e=(b<<15^-1)+b|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=v[v[a+68>>2]+((v[a+76>>2]-1&(e>>>16^e))<<2)>>2];if((e|0)==-1){break b}g=v[a- -64>>2];h=v[a+60>>2];while(1){if(v[(e<<3)+h>>2]==(b|0)){break a}e=v[(e<<2)+g>>2];if((e|0)!=-1){continue}break}}e=v[37696];g=Ba[v[v[e>>2]+20>>2]](e)|0?24775:63804;e=Ba[v[v[e+12>>2]+8>>2]](e+12|0,44,g,7621,597)|0;v[e>>2]=0;v[e+4>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+24>>2]=1061158912;v[e+28>>2]=-1;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;Im(e,64);c=w[c|0];t[e+41|0]=d;t[e+40|0]=c;v[f+12>>2]=b;b=Xn(a+56|0,f+12|0,f+11|0);if(!w[f+11|0]){c=v[f+12>>2];v[b+4>>2]=e;v[b>>2]=c;t[a+100|0]=1;break a}a=v[e>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,e)}xa=f+16|0}function L6(a){a=a|0;var b=0,c=0;v[a>>2]=145984;if(v[a+28>>2]){while(1){c=v[(v[a+4>>2]+B(b,28)|0)+4>>2];v[c+8>>2]=v[c+8>>2]+1;b=b+1|0;if(b>>>0>2]){continue}break}}t[a+32|0]=1;b=v[a+20>>2];if(!w[b+76|0]){t[b+76|0]=1;v[b+72>>2]=v[b+72>>2]+1}a:{if(!v[a+28>>2]){break a}b=0;while(1){b=b+1|0;c=v[a+28>>2];if(b>>>0>>0){continue}break}if(!c){break a}b=0;while(1){c=v[a+4>>2]+B(b,28)|0;Ba[v[v[c>>2]>>2]](c)|0;b=b+1|0;if(b>>>0>2]){continue}break}}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+24>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+20>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+16>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+8>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+12>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function EJ(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=v[a+1904>>2];if(d){if(v[a+1912>>2]>0){while(1){b=v[(c<<2)+d>>2];aP(v[a>>2],b?b+4|0:0);c=c+1|0;if((c|0)>2]){continue}break}d=v[a+1904>>2]}v[a+1912>>2]=0;f=v[v[a>>2]+976>>2];b=v[f+16>>2];a:{if(!(b>>>0<=d>>>0&b+v[f+20>>2]>>>0>d>>>0)){if(!d){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d);break a}i=v[f+4>>2];g=v[f+8>>2];e=g;while(1){h=j;j=h+1|0;b=e;e=b-1|0;c=(e<<2)+i|0;if(y[c>>2]>>0){continue}break}b:{if(b>>>0>=g>>>0){break b}e=h&3;if(e){d=0;while(1){v[c>>2]=v[v[f+4>>2]+(b<<2)>>2];b=b+1|0;c=c+4|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}if(h-1>>>0<3){break b}while(1){e=b<<2;v[c>>2]=v[e+v[f+4>>2]>>2];v[c+4>>2]=v[(e+v[f+4>>2]|0)+4>>2];v[c+8>>2]=v[(e+v[f+4>>2]|0)+8>>2];v[c+12>>2]=v[(e+v[f+4>>2]|0)+12>>2];c=c+16|0;b=b+4|0;if((g|0)!=(b|0)){continue}break}}v[f+8>>2]=g-1}v[a+1904>>2]=0}}function qp(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=C(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,w=0;j=xa-32|0;xa=j;a:{if(y[a+28>>2]>=y[a+96>>2]){break a}l=a+40|0;k=v[l>>2];v[l>>2]=k?k:-1;if((k|0)==1){b9(v[37696],8,5611,484,64361,0);break a}v[a+28>>2]=v[a+28>>2]+1;k=a+12|0;o=x[g+16>>1];p=v[g+12>>2];q=v[g+8>>2];r=v[g+4>>2];s=v[g>>2];w=x[f>>1];m=v[a+24>>2];g=m+40|0;f=v[a+20>>2]&2147483647;b:{if(g>>>0<=f>>>0){break b}n=B(g,3);if(f>>>0>=n>>>0){break b}op(k,n)}pp(k,g);f=v[a+12>>2]+v[a+24>>2]|0;v[f+28>>2]=h;v[f+8>>2]=s;u[f+4>>1]=w;v[f>>2]=-16;t[f+38|0]=0;u[f+36>>1]=e;v[f+32>>2]=i;u[f+24>>1]=o;v[f+20>>2]=p;v[f+16>>2]=q;v[f+12>>2]=r;v[a+24>>2]=g;e=v[a+108>>2];v[((e|0)==-16?a+108|0:e+v[a+12>>2]|0)>>2]=m;v[a+108>>2]=m;v[j+28>>2]=0;v[j+20>>2]=0;v[j+24>>2]=0;z[j+16>>2]=d;v[j+12>>2]=c;v[j+8>>2]=b;rp(k,j+8|0);v[l>>2]=0}xa=j+32|0}function iZ(a,b,c,d,e,f,g,h,i,j,k,l){var m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=0;n=z[i+8>>2];m=z[d+8>>2];r=z[i>>2];p=z[d>>2];u=z[i+4>>2];q=z[d+4>>2];o=z[d+12>>2];v=C(C(C(n*m)+C(C(r*p)+C(u*q)))+o);s=o;o=z[j+8>>2];t=z[j>>2];w=z[j+4>>2];a:{if(C(v*C(s+C(C(o*m)+C(C(t*p)+C(q*w)))))>C(0)){break a}s=m;m=C(o-n);o=p;p=C(t-r);t=q;q=C(w-u);o=C(C(s*m)+C(C(o*p)+C(t*q)));if(o==C(0)){break a}s=n;n=C(v/o);z[l+8>>2]=s-C(m*n);z[l+4>>2]=u-C(q*n);z[l>>2]=r-C(p*n);d=e<<2;e=f<<2;g=C(C(C(z[d+c>>2]*C(z[e+l>>2]-z[a+e>>2]))-C(C(z[d+l>>2]-z[a+d>>2])*z[c+e>>2]))*g);z[k>>2]=g;if(g>2];m=z[h+4>>2];n=C(z[l>>2]-C(g*z[h>>2]));z[l>>2]=n;m=C(z[l+4>>2]-C(g*m));z[l+4>>2]=m;g=C(z[l+8>>2]-C(g*r));z[l+8>>2]=g;x=C(C(C(z[a+8>>2]-g)*C(z[b+8>>2]-g))+C(C(C(z[a>>2]-n)*C(z[b>>2]-n))+C(C(z[a+4>>2]-m)*C(z[b+4>>2]-m))))>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}h=C(z[a+24>>2]*C(b>>>0));a:{if(h=C(0)){g=~~h>>>0;break a}g=0}o=v[a+16>>2];d=b+g<<2;d=(0-d&12)+d|0;e=d+(g<<3)|0;if(e){c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,e,24422,17301,372)|0}f=c;c=b<<2;e=J9(f,255,c);k=e+d|0;l=c+e|0;if(v[a+36>>2]){p=b-1|0;q=v[a+4>>2];d=0;while(1){i=5381;m=d<<3;n=m+q|0;f=v[n>>2];j=f;c=w[f|0];if(c){while(1){i=B(i,33)^c&255;c=w[j+1|0];j=j+1|0;if(c){continue}break}}c=e+((i&p)<<2)|0;v[(d<<2)+l>>2]=v[c>>2];v[c>>2]=d;c=k+m|0;v[c>>2]=f;v[c+4>>2]=v[n+4>>2];d=d+1|0;if(d>>>0>2]){continue}break}}c=v[a>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=l;v[a+16>>2]=g;v[a+4>>2]=k;if(v[a+28>>2]==-1){v[a+28>>2]=o}}function RW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),B=C(0),D=C(0),E=C(0),F=C(0),G=C(0),H=C(0),I=C(0);d=v[b+8>>2];l=z[d+52>>2];m=z[d+36>>2];n=z[d+20>>2];o=z[d+56>>2];p=z[d+40>>2];h=v[b+4>>2];f=z[h+56>>2];q=z[b+56>>2];r=z[b+24>>2];s=z[b+40>>2];t=z[b+48>>2];u=z[b+32>>2];w=z[d+24>>2];k=z[h+52>>2];x=z[b+52>>2];y=z[b+20>>2];A=z[b+36>>2];B=z[d+48>>2];D=z[d+32>>2];E=z[d>>2];F=z[d+16>>2];G=z[d+4>>2];H=z[d+8>>2];g=z[h+48>>2];I=z[b+16>>2];e=z[c+8>>2];i=z[c>>2];j=z[c+4>>2];v[a+12>>2]=0;f=C(C(q*e)+C(C(r*i)+C(j*s)))>C(0)?f:C(-f);g=C(C(t*e)+C(C(I*i)+C(j*u)))>C(0)?g:C(-g);e=C(C(x*e)+C(C(y*i)+C(j*A)))>C(0)?k:C(-k);z[a+8>>2]=o+C(C(p*f)+C(C(H*g)+C(w*e)));z[a+4>>2]=l+C(C(m*f)+C(C(G*g)+C(e*n)));z[a>>2]=B+C(C(D*f)+C(C(E*g)+C(e*F)))}function qe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);d=xa+-64|0;xa=d;Ba[v[v[b>>2]+76>>2]](d+32|0,b);Ba[v[v[b>>2]+112>>2]](d,b);i=z[d+56>>2];k=z[d+52>>2];f=z[d+20>>2];g=z[d+24>>2];s=z[d+48>>2];l=z[d+36>>2];e=z[d+44>>2];m=z[d+40>>2];h=z[d+16>>2];n=z[d+32>>2];t=z[c>>2];j=z[c+8>>2];o=z[c+4>>2];Ba[v[v[b>>2]+156>>2]](a,b);Ba[v[v[b>>2]+164>>2]](d,b);q=z[d>>2];r=z[d+4>>2];p=j;u=i;g=C(g+g);h=C(h+h);f=C(f+f);i=C(C(m*g)+C(C(n*h)+C(l*f)));j=C(C(e*e)+C(-.5));p=C(p-C(u+C(C(m*i)+C(C(g*j)+C(e*C(C(n*f)-C(h*l)))))));k=C(o-C(k+C(C(l*i)+C(C(f*j)+C(e*C(C(m*h)-C(g*n)))))));o=z[d+8>>2];z[a>>2]=C(C(r*p)-C(k*o))+z[a>>2];e=C(t-C(s+C(C(n*i)+C(C(h*j)+C(e*C(C(l*g)-C(f*m)))))));z[a+4>>2]=C(C(o*e)-C(p*q))+z[a+4>>2];z[a+8>>2]=C(C(q*k)-C(e*r))+z[a+8>>2];xa=d- -64|0}function VL(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{b:{f=v[a>>2];e=f+(b<<2)|0;b=v[e>>2];if((c|0)==(b|0)){break b}g=v[a+4>>2];while(1){d=b;b=v[g+(b<<2)>>2];if((c|0)!=(b|0)){continue}break}if((d|0)==1073741823){break b}e=v[a+4>>2];v[e+(d<<2)>>2]=v[(c<<2)+e>>2];break a}b=e;e=v[a+4>>2];v[b>>2]=v[e+(c<<2)>>2]}d=v[a+28>>2]-1|0;if((d|0)!=(c|0)){c:{d:{h=v[a+20>>2];g=h+(d<<3)|0;b=v[g+4>>2]<<16|v[g>>2];b=(b<<15^-1)+b|0;b=B(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;i=v[a+36>>2]&(b>>16^b);j=f+(i<<2)|0;b=v[j>>2];if((d|0)==(b|0)){break d}while(1){f=b;b=v[(b<<2)+e>>2];if((d|0)!=(b|0)){continue}break}if((f|0)==1073741823){break d}v[(f<<2)+e>>2]=v[(d<<2)+e>>2];break c}v[j>>2]=v[(d<<2)+e>>2]}f=v[g+4>>2];b=(c<<3)+h|0;v[b>>2]=v[g>>2];v[b+4>>2]=f;b=v[a+24>>2];t[b+c|0]=w[b+d|0];b=v[a>>2]+(i<<2)|0;v[v[a+4>>2]+(c<<2)>>2]=v[b>>2];v[b>>2]=c;d=v[a+28>>2]-1|0}v[a+28>>2]=d}function Bw(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(b,76);if(!c){break a}e=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?26097:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,76)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];z[c+48>>2]=z[d+48>>2];z[c+52>>2]=z[d+52>>2];z[c+56>>2]=z[d+56>>2];z[c+60>>2]=z[d+60>>2];z[c- -64>>2]=z[d- -64>>2];z[c+68>>2]=z[d+68>>2];v[c+72>>2]=v[d+72>>2];d=d+76|0;c=c+76|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}function pC(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=129652;eC(a+7664|0);b=a+16|0;v[b>>2]=0;v[b+4>>2]=0;t[b+7632|0]=1;if(w[b+7633|0]){c=v[b+8>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+8>>2]=0;c=v[b+12>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+12>>2]=0;c=v[b+16>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+16>>2]=0}c=v[b+20>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+20>>2]=0;c=v[b+24>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[b+636>>2]=0;v[b+640>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;c=v[b+624>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);v[b+624>>2]=0}c=v[b+628>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);v[b+628>>2]=0}c=v[b+620>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c);v[b+620>>2]=0}v[b+608>>2]=0;v[b+612>>2]=0;v[b+616>>2]=0;BC(b+608|0);return a|0}function z9(){ha(110164,23304);ia(110208,14839,1,1,0);ja(110220,5377,1,-128,127);ja(110244,5370,1,-128,127);ja(110232,5368,1,0,255);ja(110256,2133,2,-32768,32767);ja(110268,2124,2,0,65535);ja(110280,2448,4,-2147483648,2147483647);ja(110292,2439,4,0,-1);ja(110324,19901,4,-2147483648,2147483647);ja(110336,19892,4,0,-1);Qaa(110348,3076,-2147483648,2147483647);Qaa(110360,3075,0,-1);ka(110372,3069,4);ka(110384,22596,8);la(111548,19974);la(105568,63633);ma(105640,4,19961);ma(105716,2,19986);ma(105792,4,20001);na(111404,14906);oa(105832,0,63564);oa(105872,0,63666);oa(105912,1,63594);oa(105952,2,63196);oa(105992,3,63227);oa(106032,4,63267);oa(106072,5,63296);oa(106112,4,63703);oa(106152,5,63733);oa(105872,0,63398);oa(105912,1,63365);oa(105952,2,63464);oa(105992,3,63430);oa(106032,4,63531);oa(106072,5,63497);oa(106192,6,63334);oa(106232,7,63772)}function M0(a){a=a|0;var b=0,c=0;v[a+8>>2]=144016;v[a>>2]=143920;a:{if(!(t[a+6|0]&1)){break a}b=v[a+56>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+56>>2]=0;b=v[a+72>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+72>>2]=0;b=v[a+76>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+76>>2]=0;b=v[a+68>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+68>>2]=0;b=v[a+28>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+28>>2]=0;b=v[a+24>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+24>>2]=0;b=v[a+84>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+84>>2]=0;b=v[a+88>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+88>>2]=0;b=v[a+92>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+92>>2]=0;b=v[a+96>>2];if(!b){break a}b=l1(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function h$(a,b,c){a=a|0;b=C(b);c=C(c);var d=C(0),e=C(0),f=C(0),g=0,h=0,i=0;b=b>C(0)?b:C(0);d=C(C(C(1)-C(C(D(C(b+C(1))))*C(9.999999974752427e-7)))+z[a+48>>2]);c=c>C(0)?c:C(0);e=C(C(C(1)-C(C(D(C(c+C(1))))*C(9.999999974752427e-7)))+z[a+52>>2]);d=b>2])+e);a:{if(b=C(0)){h=~~b>>>0;break a}h=0}b=C(c-e);c=C(d-f);g=v[a+60>>2];i=g+(h<<2)|0;b:{if(t[i+2|0]<0){d=C(u[i>>1]);a=v[a+44>>2]+h|0;e=C(u[((a<<2)+g|0)+4>>1]);if(b>c){f=c;c=C(u[((h<<2)+g|0)+4>>1]);b=C(C(f*C(e-c))+C(C(b*C(c-d))+d));break b}f=b;b=C(u[(a<<2)+g>>1]);b=C(C(f*C(e-b))+C(C(c*C(b-d))+d));break b}d=C(u[i+4>>1]);a=v[a+44>>2]+h|0;e=C(u[(a<<2)+g>>1]);if(C(c+b)>1]);b=C(C(f*C(e-c))+C(C(b*C(d-c))+c));break b}f=C(C(1)-c);c=C(u[((a<<2)+g|0)+4>>1]);b=C(C(f*C(d-c))+C(C(C(C(1)-b)*C(e-c))+c))}return C(b)}function ZR(a,b){var c=C(0),d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=0,l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);e=v[a+28>>2];a:{k=v[v[a+4>>2]+44>>2];if(!w[k+9|0]){a=k+16|0;break a}a=k+16|0;if(w[k+45|0]){break a}uh(a,e+32|0,k+48|0,b);return}p=z[a+20>>2];q=z[a+24>>2];l=z[e+52>>2];m=z[e+48>>2];n=z[e+56>>2];r=z[a+16>>2];c=z[a+12>>2];f=z[e+44>>2];g=z[a+8>>2];h=z[e+40>>2];i=z[a>>2];d=z[e+32>>2];j=z[a+4>>2];o=z[e+36>>2];z[b+12>>2]=C(c*f)-C(C(g*h)+C(C(i*d)+C(j*o)));z[b+8>>2]=C(g*f)+C(C(C(i*o)-C(d*j))+C(c*h));z[b+4>>2]=C(j*f)+C(C(c*o)+C(C(g*d)-C(h*i)));z[b>>2]=C(i*f)+C(C(c*d)+C(C(j*h)-C(o*g)));f=C(C(c*c)+C(-.5));h=C(C(g*n)+C(C(i*m)+C(j*l)));d=C(C(C(n*f)+C(c*C(C(i*l)-C(m*j))))+C(g*h));z[b+24>>2]=q+C(d+d);d=C(C(j*h)+C(C(l*f)+C(c*C(C(g*m)-C(n*i)))));z[b+20>>2]=p+C(d+d);c=C(C(i*h)+C(C(m*f)+C(c*C(C(j*n)-C(l*g)))));z[b+16>>2]=r+C(c+c)}function t$(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);m=z[b+32>>2];i=C(z[a+8>>2]-z[b+44>>2]);h=C(m*i);n=z[b+24>>2];j=C(z[a>>2]-z[b+36>>2]);k=C(z[a+4>>2]-z[b+40>>2]);o=z[b+28>>2];l=C(C(n*j)+C(k*o));p=z[b+20>>2];q=z[b+12>>2];r=z[b+16>>2];e=C(C(p*i)+C(C(q*j)+C(k*r)));c=z[b+48>>2];f=C(-c);s=z[b+8>>2];t=z[b>>2];u=z[b+4>>2];d=C(C(s*i)+C(C(t*j)+C(k*u)));g=1;a:{if(f>d){break a}f=d;g=0;if(!(c>2];d=C(-c);b:{c:{if(d>e){c=d;break c}if(!(c>2];c=C(-d);d:{e:{if(!(h>2];a=0;if(c>C(e*e)){break d}}a=1}return a}function qI(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=xa-48|0;xa=f;a:{if(b>>>0<2){break a}j=v[a+392>>2];if(!j){break a}k=v[a+388>>2];l=v[v[a+276>>2]+4>>2];while(1){g=v[k+(i<<2)>>2];h=l+B(v[g>>2],24)|0;z[h>>2]=z[g+36>>2];z[h+4>>2]=z[g+40>>2];z[h+8>>2]=z[g+44>>2];z[h+12>>2]=z[g+48>>2];z[h+16>>2]=z[g+52>>2];z[h+20>>2]=z[g+56>>2];i=i+1|0;if((j|0)!=(i|0)){continue}break}}q=v[a+180>>2];n=v[a+264>>2];g=v[a+260>>2];o=v[a+248>>2];h=v[a+244>>2];p=v[a+232>>2];i=v[a+228>>2];m=v[a+276>>2];j=v[m+8>>2];k=v[v[a+192>>2]+4>>2];l=v[m+4>>2];t[f+44|0]=w[a+365|0]?1:w[m+16|0]!=0;v[f+40>>2]=j;v[f+36>>2]=k;v[f+32>>2]=a+208;v[f+28>>2]=q;v[f+24>>2]=l;v[f+20>>2]=n;v[f+16>>2]=g;v[f+12>>2]=o;v[f+8>>2]=h;v[f+4>>2]=p;v[f>>2]=i;t[a+365|0]=0;b:{if(o?1:n|p){a=v[a+272>>2];Ba[v[v[a>>2]+44>>2]](a,b,c,f,d,e);break b}Ba[v[v[e>>2]+20>>2]](e)}xa=f+48|0}function $z(a){a=a|0;var b=0,c=0,d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);d=v[a+44>>2];f=z[d+56>>2];e=z[d+60>>2];g=z[d+96>>2];h=z[d+92>>2];i=z[d+52>>2];j=z[d+88>>2];k=z[d+84>>2];l=z[d+100>>2];b=v[d+336>>2];c=v[b>>2];if(c){v[b>>2]=v[c>>2]}if(!c){b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?26947:63804;c=Ba[v[v[b+12>>2]+8>>2]](b+12|0,12195,c,19395,82)|0;b=c+19&-16;v[b-4>>2]=b-c;c=hB(b,v[d+340>>2])}v[c+12052>>2]=0;b=c+11856|0;v[b>>2]=0;v[b+4>>2]=0;b=v[v[a+40>>2]+12128>>2];if(b>>>0>(v[c+12056>>2]&2147483647)>>>0){zw(c+12048|0,b);b=v[v[a+40>>2]+12128>>2]}v[c+12052>>2]=b;if(v[a+32>>2]){e=e>2]+(d<<2)>>2];Ba[v[v[b>>2]+144>>2]](b,i,e,v[a+48>>2],c,l,k,j,h,g,v[a+36>>2],v[a+40>>2]+11836|0,v[v[a+44>>2]+168>>2]);d=d+1|0;if(d>>>0>2]){continue}break}}a=v[v[a+44>>2]+336>>2];v[c>>2]=v[a>>2];v[a>>2]=c}function BR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=v[a+20>>2];c=v[a+28>>2];v[c+1092>>2]=v[c+1092>>2]+1;tI(v[c+980>>2],0,0,v[v[c+976>>2]+1156>>2]);uP(c,b);a:{if(v[v[c+988>>2]+128>>2]){break a}b=v[c+1160>>2];if(!b){break a}a=v[c+980>>2];while(1){e=v[v[v[c+1156>>2]+(g<<2)>>2]+32>>2];if(e){while(1){if(w[v[e+28>>2]- -64|0]&5){h=v[e+8>>2];i=h&2147483647;f=i+32>>>5|0;b:{if(f>>>0<=(v[a+164>>2]&2147483647)>>>0){b=v[a+160>>2];break b}b=v[a+168>>2];b=Ba[v[v[b>>2]+8>>2]](b,f<<2,17999,438)|0;d=v[a+160>>2];c:{if(!d){break c}I9(b,d,v[a+164>>2]<<2);if(v[a+164>>2]<0){break c}d=v[a+160>>2];if(!d){break c}j=v[a+168>>2];Ba[v[v[j>>2]+12>>2]](j,d)}d=v[a+164>>2];J9((d<<2)+b|0,0,f-d<<2);v[a+164>>2]=f;v[a+160>>2]=b}b=(i>>>3&268435452)+b|0;v[b>>2]=v[b>>2]|1<>2];if(e){continue}break}b=v[c+1160>>2]}g=g+1|0;if(g>>>0>>0){continue}break}}} +function iu(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=x[a+4>>1];d=v[a+16>>2];a:{if((d|0)==-1){if(!f){break a}h=(f|0)==1?a:v[a>>2];d=a+8|0;c=0;while(1){e=c<<2;g=v[e+h>>2];if(w[(w[g+36|0]&64?v[g+40>>2]+52|0:g+112|0)|0]&2){JE(b,-1,v[e+(x[a+12>>1]==1?d:v[a+8>>2])>>2])}v[e+(x[a+12>>1]==1?d:v[a+8>>2])>>2]=-1;c=c+1|0;if((f|0)!=(c|0)){continue}break}break a}c=(x[c+4>>1]&65527)==5;e=v[b+72>>2];Ba[v[v[e>>2]+4>>2]](e,d);b=B(c,36)+b|0;v[b+32>>2]=v[b+32>>2]+1;b:{if(!f){break b}b=a+8|0;g=x[a+12>>1];c=0;if(f-1>>>0>=3){h=f&65532;d=(g|0)==1;while(1){e=c<<2;v[e+(d?b:v[b>>2])>>2]=-1;v[(e|4)+(d?b:v[b>>2])>>2]=-1;v[(e|8)+(d?b:v[b>>2])>>2]=-1;v[(e|12)+(d?b:v[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){v[(c<<2)+(d?b:v[b>>2])>>2]=-1;c=c+1|0;j=j+1|0;if((f|0)!=(j|0)){continue}break}}v[a+16>>2]=-1}}function u$(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);f=xa-96|0;xa=f;k=z[e+8>>2];l=z[e+12>>2];m=z[e>>2];n=z[e+4>>2];o=z[d+8>>2];p=z[d+12>>2];q=z[d>>2];r=z[d+4>>2];s=z[c+8>>2];g=z[a+8>>2];t=z[c+12>>2];h=z[a+12>>2];u=z[c>>2];i=z[a>>2];j=z[a+4>>2];z[f+84>>2]=z[c+4>>2]-j;z[f+80>>2]=u-i;z[f+92>>2]=t-h;z[f+88>>2]=s-g;z[f+68>>2]=r-j;z[f+64>>2]=q-i;z[f+76>>2]=p-h;z[f+72>>2]=o-g;z[f+52>>2]=n-j;z[f+48>>2]=m-i;z[f+60>>2]=l-h;z[f+56>>2]=k-g;a=v[f+84>>2];v[f+32>>2]=v[f+80>>2];v[f+36>>2]=a;a=v[f+92>>2];v[f+40>>2]=v[f+88>>2];v[f+44>>2]=a;a=v[f+68>>2];v[f+16>>2]=v[f+64>>2];v[f+20>>2]=a;a=v[f+76>>2];v[f+24>>2]=v[f+72>>2];v[f+28>>2]=a;a=v[f+60>>2];v[f+8>>2]=v[f+56>>2];v[f+12>>2]=a;a=v[f+52>>2];v[f>>2]=v[f+48>>2];v[f+4>>2]=a;a=v$(f+32|0,f+16|0,f,b);xa=f+96|0;return a}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;a=v[a+88>>2];f=v[a>>2];f=c>>>0>f>>>0?f:c;if(f){j=v[a+12>>2]+B(d,40)|0;d=0;while(1){c=B(d,40);a=c+b|0;c=c+j|0;e=v[c+4>>2]<<1;v[a>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+8>>2]<<1;v[a+4>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+12>>2]<<1;v[a+8>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+16>>2]<<1;v[a+12>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+20>>2]<<1;v[a+16>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+24>>2]<<1;v[a+20>>2]=(e|0)<0?e&2147483646:e^-1;e=v[c+28>>2];a:{if(e){g=v[c+32>>2]!=0;h=v[e+92>>2];e=v[e+84>>2];i=1;c=v[c+36>>2];break a}v[a+16>>2]=-25165825;v[a+20>>2]=-25165825;v[a+8>>2]=2122317823;v[a+12>>2]=-25165825;v[a>>2]=2122317823;v[a+4>>2]=2122317823;i=0;g=0;e=0;h=0;c=0}v[a+24>>2]=c;t[a+37|0]=g;t[a+36|0]=i;v[a+32>>2]=h;v[a+28>>2]=e;d=d+1|0;if((f|0)!=(d|0)){continue}break}}return f|0}function xN(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;e=v[c+4624>>2];a:{if(x[a+88>>1]>=2){if(!e){break a}f=c+528|0;g=v[a+80>>2];h=v[a+84>>2];a=0;if((e|0)!=1){j=e&-2;c=0;while(1){i=b<<1;u[i+((a<<2)+d|0)>>1]=x[h+(x[g+(v[(f+(a<<6)|0)+52>>2]<<1)>>1]<<1)>>1];k=i;i=a|1;u[k+((i<<2)+d|0)>>1]=x[h+(x[g+(v[(f+(i<<6)|0)+52>>2]<<1)>>1]<<1)>>1];a=a+2|0;c=c+2|0;if((j|0)!=(c|0)){continue}break}}if(!(e&1)){break a}u[((a<<2)+d|0)+(b<<1)>>1]=x[h+(x[g+(v[(f+(a<<6)|0)+52>>2]<<1)>>1]<<1)>>1];return 1}if(!e){break a}f=x[a+34>>1];c=0;a=0;if(e-1>>>0>=3){j=e&-4;g=b<<1;while(1){h=a<<2;u[g+(h+d|0)>>1]=f;u[g+((h|4)+d|0)>>1]=f;u[g+((h|8)+d|0)>>1]=f;u[g+((h|12)+d|0)>>1]=f;a=a+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}}e=e&3;if(!e){break a}while(1){u[((a<<2)+d|0)+(b<<1)>>1]=f;a=a+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return 1}function rr(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=v[a+8>>2];i=e&2147483647?e<<1:1;a:{if(!i){break a}c=i<<5;if(!c){break a}g=v[37696];e=g+12|0;g=(k=e,l=c,m=Ba[v[v[g>>2]+20>>2]](g)|0?42469:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}h=v[a+4>>2];f=(h<<5)+g|0;e=v[a>>2];if((h|0)>0){d=e;c=g;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];d=d+32|0;c=c+32|0;if(f>>>0>c>>>0){continue}break}}z[f>>2]=z[b>>2];z[f+4>>2]=z[b+4>>2];z[f+8>>2]=z[b+8>>2];v[f+12>>2]=v[b+12>>2];z[f+16>>2]=z[b+16>>2];z[f+20>>2]=z[b+20>>2];z[f+24>>2]=z[b+24>>2];v[f+28>>2]=v[b+28>>2];if(!(!e|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e);h=v[a+4>>2]}v[a+8>>2]=i;v[a>>2]=g;v[a+4>>2]=h+1}function ZC(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=0,m=0,n=0;if((Uaa(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=C(z[a+24>>2]*C(b>>>0));a:{if(j=C(0)){i=~~j>>>0;break a}i=0}l=v[a+16>>2];d=b+i<<2;d=(0-d&12)+d|0;e=d+(i<<3)|0;if(e){g=v[37696]+12|0;e=Ba[v[v[g>>2]+8>>2]](g,e,24422,17301,372)|0}else{e=0}c=d;d=b<<2;e=J9(e,255,d);g=c+e|0;k=d+e|0;if(v[a+36>>2]){m=b-1|0;n=v[a+4>>2];d=0;while(1){h=d<<3;f=h+n|0;c=v[f>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=e+(((c>>>16^c)&m)<<2)|0;v[(d<<2)+k>>2]=v[c>>2];v[c>>2]=d;h=g+h|0;v[h>>2]=v[f>>2];v[h+4>>2]=v[f+4>>2];d=d+1|0;if(d>>>0>2]){continue}break}}d=v[a>>2];if(d){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=k;v[a+16>>2]=i;v[a+4>>2]=g;if(v[a+28>>2]==-1){v[a+28>>2]=l}}function IZ(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0);c=z[b+8>>2];if(C(D(c))<=C(.9998999834060669)){e=C(C(1)/C(c+C(1)));g=z[b+4>>2];f=C(e*C(-g));d=z[b>>2];h=C(f*d);z[a+12>>2]=h;i=C(f*C(0));z[a+24>>2]=d+i;z[a>>2]=c-C(f*g);f=C(e*C(0));j=C(d*f);z[a+28>>2]=g+j;z[a+16>>2]=C(d*C(e*d))+c;z[a+4>>2]=h+C(0);z[a+32>>2]=C(f*C(0))+c;z[a+20>>2]=j-g;z[a+8>>2]=i-d;return}c=C(C(0)-c);d=C(C(0)-z[b>>2]);g=C(C(1)-z[b+4>>2]);e=C(C(2)/C(C(c*c)+C(C(d*d)+C(g*g))));f=C(C(C(C(d*C(0))+g)-c)*e);h=C(f*d);e=C(-e);i=C(d*e);z[a+12>>2]=h+C(i*g);j=C(f*g);k=C(g*e);z[a+4>>2]=C(j*C(0))+C(k*d);z[a+24>>2]=C(C(i*c)+C(0))-h;z[a+28>>2]=C(C(k*c)+C(1))-j;z[a>>2]=C(C(h*C(0))+C(i*d))+C(1);f=C(f*c);e=C(c*e);z[a+20>>2]=f+C(C(e*g)+C(1));z[a+8>>2]=C(f*C(0))+C(C(e*d)+C(0));z[a+16>>2]=C(j+C(C(k*g)+C(-1)))+C(1);z[a+32>>2]=C(C(C(e*c)+C(-1))-f)+C(1)}function q2(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);c=z[b+8>>2];a:{if(C(D(c))>2];f=C(c+C(d*C(e*e)));h=C(-e);g=z[b+4>>2];j=C(-g);d=C(d*j);k=C(d*e);p=k;i=C(c-C(g*d));break a}c=C(C(0)-c);d=C(C(0)-z[b>>2]);f=C(C(1)-z[b+4>>2]);e=C(C(-2)/C(C(c*c)+C(C(d*d)+C(f*f))));i=C(d*e);g=C(C(C(C(d*C(0))+f)-c)*C(-e));l=C(d*g);k=C(C(f*i)+l);h=C(c*e);m=C(c*g);j=C(C(C(f*h)+m)+C(1));n=C(f*e);o=C(f*g);g=C(C(C(c*n)-o)+C(1));p=C(C(d*n)+C(o*C(0)));e=C(C(C(c*i)-l)+C(0));c=C(C(C(C(c*h)-m)+C(-1))+C(1));h=C(C(C(d*h)+C(m*C(0)))+C(0));f=C(C(C(C(f*n)+o)+C(-1))+C(1));i=C(C(C(d*i)+C(l*C(0)))+C(1))}z[a+32>>2]=h;z[a+16>>2]=p;v[a+12>>2]=0;z[a+8>>2]=e;z[a+4>>2]=k;z[a>>2]=i;v[a+44>>2]=0;z[a+40>>2]=c;z[a+36>>2]=j;v[a+28>>2]=0;z[a+24>>2]=g;z[a+20>>2]=f}function S1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=C(0),u=C(0),w=C(0);f=xa-16|0;xa=f;e=v[b+8>>2];s=v[b+4>>2];j=z[b+48>>2];k=z[b+32>>2];l=z[b+52>>2];m=z[b+20>>2];n=z[b+36>>2];o=z[b+56>>2];p=z[b+24>>2];q=z[b+40>>2];r=z[b+16>>2];g=z[c+8>>2];h=z[c>>2];i=z[c+4>>2];v[f+12>>2]=0;z[f+8>>2]=C(o*g)+C(C(p*h)+C(i*q));z[f+4>>2]=C(l*g)+C(C(m*h)+C(i*n));z[f>>2]=C(j*g)+C(C(r*h)+C(i*k));b=IV(s,f);v[d>>2]=b;j=z[e+52>>2];k=z[e+20>>2];l=z[e+36>>2];m=z[e+56>>2];b=v[s+152>>2]+B(b,12)|0;g=z[b>>2];n=z[e+24>>2];h=z[b+4>>2];o=z[e+40>>2];i=z[b+8>>2];p=z[e+48>>2];q=z[e+32>>2];r=z[e>>2];t=z[e+16>>2];u=z[e+4>>2];w=z[e+8>>2];v[a+12>>2]=0;z[a+8>>2]=m+C(C(o*i)+C(C(w*g)+C(h*n)));z[a+4>>2]=j+C(C(l*i)+C(C(u*g)+C(h*k)));z[a>>2]=p+C(C(q*i)+C(C(r*g)+C(h*t)));xa=f+16|0}function nn(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=0,m=0,n=0,o=0;if((Uaa(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=C(z[a+24>>2]*C(b>>>0));a:{if(j=C(0)){i=~~j>>>0;break a}i=0}m=v[a+16>>2];c=b+i<<2;c=(0-c&12)+c|0;e=c+(i<<3)|0;if(e){g=v[37696]+12|0;e=Ba[v[v[g>>2]+8>>2]](g,e,24422,17301,372)|0}else{e=0}d=c;c=b<<2;e=J9(e,255,c);g=d+e|0;k=c+e|0;if(v[a+36>>2]){n=b-1|0;o=v[a+4>>2];c=0;while(1){h=c<<3;l=h+o|0;f=v[l>>2];d=(f<<15^-1)+f|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=e+(((d>>>16^d)&n)<<2)|0;v[(c<<2)+k>>2]=v[d>>2];v[d>>2]=c;h=g+h|0;v[h>>2]=f;v[h+4>>2]=v[l+4>>2];c=c+1|0;if(c>>>0>2]){continue}break}}c=v[a>>2];if(c){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,c)}v[a+20>>2]=b;v[a+12>>2]=e;v[a>>2]=e;v[a+8>>2]=k;v[a+16>>2]=i;v[a+4>>2]=g;if(v[a+28>>2]==-1){v[a+28>>2]=m}}function F8(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);e=xa+-64|0;xa=e;a:{if((d&-2)==2){b9(v[37696],4,6223,397,4460,0);break a}Ba[v[v[a>>2]+76>>2]](e+32|0,a);Ba[v[v[a>>2]+112>>2]](e,a);t=z[e+56>>2];u=z[c+8>>2];o=z[b+8>>2];g=z[e+40>>2];f=z[e+24>>2];h=C(f+f);i=z[e+32>>2];f=z[e+16>>2];j=C(f+f);f=z[e+20>>2];k=C(f+f);l=z[e+36>>2];m=C(C(g*h)+C(C(i*j)+C(k*l)));f=z[e+44>>2];n=C(C(f*f)+C(-.5));p=C(z[c>>2]-C(z[e+48>>2]+C(C(i*m)+C(C(j*n)+C(f*C(C(l*h)-C(k*g)))))));q=z[b+4>>2];r=z[b>>2];s=C(z[c+4>>2]-C(z[e+52>>2]+C(C(l*m)+C(C(k*n)+C(f*C(C(g*j)-C(h*i)))))));z[e+8>>2]=C(p*q)-C(r*s);f=C(u-C(t+C(C(g*m)+C(C(h*n)+C(f*C(C(i*k)-C(j*l)))))));z[e+4>>2]=C(r*f)-C(o*p);z[e>>2]=C(s*o)-C(q*f);Ba[v[v[a>>2]+188>>2]](a,b,d,1);Ba[v[v[a>>2]+192>>2]](a,e,d,1)}xa=e- -64|0}function AB(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=v[a>>2];j=f+x[a+4>>1]|0;if(f>>>0>>0){while(1){a=(f<<5)+b|0;d=x[a+22>>1];if(d){c=v[a+24>>2];m=c+(d<<4)|0;a=v[a+28>>2];while(1){d=w[c+2|0];n=(d<<2)+12&2032;k=w[c|0]==3;e=(B(d,k?112:48)+c|0)+80|0;o=w[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;z[a>>2]=z[e+g>>2];z[a+4>>2]=z[e+(g|4)>>2];z[a+8>>2]=z[e+(g|8)>>2];z[a+12>>2]=z[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){z[a>>2]=z[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(!v[c+56>>2]){break c}c=v[c+60>>2];if(!c){break c}t[c|0]=1}c=d+B(e,o)|0;if(m>>>0>c>>>0){continue}break}}f=f+1|0;if((j|0)!=(f|0)){continue}break}}}function vL(a,b){var c=0,d=0,e=0,f=0;a:{if(!a){break a}if(a-1>>>0>=7){d=a&-8;while(1){v[(B(c,40)+b|0)+32>>2]=0;v[(B(c|1,40)+b|0)+32>>2]=0;v[(B(c|2,40)+b|0)+32>>2]=0;v[(B(c|3,40)+b|0)+32>>2]=0;v[(B(c|4,40)+b|0)+32>>2]=0;v[(B(c|5,40)+b|0)+32>>2]=0;v[(B(c|6,40)+b|0)+32>>2]=0;v[(B(c|7,40)+b|0)+32>>2]=0;c=c+8|0;e=e+8|0;if((d|0)!=(e|0)){continue}break}}d=a&7;if(d){while(1){v[(B(c,40)+b|0)+32>>2]=0;c=c+1|0;f=f+1|0;if((d|0)!=(f|0)){continue}break}}if(!a){break a}f=0;while(1){c=f;f=c+1|0;d=B(c,40)+b|0;if(!(!v[d+28>>2]|a>>>0<=f>>>0)){c=f;while(1){e=B(c,40)+b|0;b:{if(!v[e+28>>2]|y[d+16>>2]<=y[e+4>>2]|(y[e+16>>2]<=y[d+4>>2]|y[d+20>>2]<=y[e+8>>2])){break b}if(y[e+20>>2]<=y[d+8>>2]|y[d+24>>2]<=y[e+12>>2]|y[e+24>>2]<=y[d+12>>2]){break b}v[d+32>>2]=1;v[e+32>>2]=1}c=c+1|0;if((c|0)!=(a|0)){continue}break}}if((a|0)!=(f|0)){continue}break}}}function r2(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=0,j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=0,t=0,u=C(0),x=C(0),y=0;i=w[a+64|0];a:{if(!i){break a}g=z[e>>2];while(1){f=v[a+76>>2]+B(t,48)|0;h=z[f+44>>2];if(h<=g){k=z[f+20>>2];l=z[f+16>>2];m=z[f+24>>2];x=z[d+16>>2];n=z[d+20>>2];j=z[d+24>>2];o=z[d+8>>2];p=z[d>>2];q=z[d+4>>2];g=z[d+12>>2];i=v[c+4>>2];y=v[c>>2];r=z[c+8>>2];f=(s<<6)+b|0;v[f+28>>2]=0;z[f+8>>2]=r;v[f>>2]=y;v[f+4>>2]=i;v[f+52>>2]=-1;z[f+12>>2]=h;u=j;h=C(C(g*g)+C(-.5));j=C(C(o*m)+C(C(p*l)+C(q*k)));r=C(C(C(g*C(C(p*k)-C(l*q)))+C(m*h))+C(o*j));z[f+24>>2]=u+C(r+r);u=n;n=C(C(q*j)+C(C(h*k)+C(g*C(C(o*l)-C(m*p)))));z[f+20>>2]=u+C(n+n);g=C(C(p*j)+C(C(h*l)+C(g*C(C(q*m)-C(k*o)))));z[f+16>>2]=x+C(g+g);i=w[a+64|0];s=s+1|0;g=z[e>>2]}if(s>>>0>63){break a}t=t+1|0;if(i>>>0>t>>>0){continue}break}}v[b+4096>>2]=s}function Xk(a){var b=0,c=0;c=xa-16|0;xa=c;a:{b:{c:{d:{switch((v[a+4>>2]>>>30|0)-2|0){case 0:b=v[a>>2];if(w[b+4785|0]){break c}default:v[a+236>>2]=0;v[a+240>>2]=0;v[a+260>>2]=0;v[a+264>>2]=1;v[a+244>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;v[a+256>>2]=0;SG(a+16|0);break a;case 1:break d}}v[a+260>>2]=0;v[a+264>>2]=1;v[a+236>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0;b=v[a>>2];break b}v[a+260>>2]=0;v[a+264>>2]=1;v[a+236>>2]=0;v[a+240>>2]=0;v[a+244>>2]=0}Yu(b,a);v[a+268>>2]=v[a+268>>2]|4194304;b=v[a+4>>2];v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;v[a+256>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;e:{f:{g:{switch((b>>>30|0)-2|0){case 0:b=v[a>>2];if(w[b+4785|0]){break f}default:DG(a+16|0,c);b=v[a+268>>2];break e;case 1:break g}}b=v[a>>2]}Yu(b,a);b=v[a+268>>2]|8388608}v[a+268>>2]=b&-1015809;Yu(v[a>>2],a);v[a+268>>2]=v[a+268>>2]&-117440513|50331648}xa=c+16|0}function Vl(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);c=xa-32|0;xa=c;m=v[b+396>>2];Ba[v[v[m>>2]+112>>2]](c,m);b=v[b+12>>2]&2?v[b+16>>2]:b+24|0;l=z[b+52>>2];n=z[b+48>>2];o=z[b+44>>2];p=z[c+20>>2];q=z[c+24>>2];r=z[c+16>>2];d=z[c+12>>2];e=z[b+40>>2];f=z[b+28>>2];h=z[c>>2];i=z[c+4>>2];g=z[b+32>>2];j=z[c+8>>2];k=z[b+36>>2];z[a+12>>2]=C(C(C(d*e)-C(f*h))-C(i*g))-C(j*k);z[a+8>>2]=C(C(h*g)+C(C(d*k)+C(e*j)))-C(f*i);z[a+4>>2]=C(C(j*f)+C(C(d*g)+C(e*i)))-C(k*h);z[a>>2]=C(C(i*k)+C(C(d*f)+C(e*h)))-C(g*j);e=C(l+l);f=C(o+o);g=C(n+n);k=C(C(j*e)+C(C(h*f)+C(i*g)));l=C(C(d*d)+C(-.5));z[a+24>>2]=q+C(C(j*k)+C(C(e*l)+C(d*C(C(h*g)-C(f*i)))));z[a+20>>2]=p+C(C(i*k)+C(C(g*l)+C(d*C(C(j*f)-C(e*h)))));z[a+16>>2]=r+C(C(h*k)+C(C(f*l)+C(d*C(C(i*e)-C(g*j)))));xa=c+32|0}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;a:{if(!b){break a}c=v[37696];d=c+12|0;c=(h=d,i=(b<<6)+131|0,j=Ba[v[v[c>>2]+20>>2]](c)|0?39083:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0);if(!c){break a}e=c+131&-128;v[e-4>>2]=e-c}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<6)+e|0;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];z[c+48>>2]=z[d+48>>2];z[c+52>>2]=z[d+52>>2];z[c+56>>2]=z[d+56>>2];v[c+60>>2]=v[d+60>>2];d=d- -64|0;c=c- -64|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-v[d-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=e}function FM(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=v[37696];e=c+12|0;e=(i=e,j=(b<<6)+131|0,k=Ba[v[v[c>>2]+20>>2]](c)|0?48349:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0);if(!e){break a}f=e+131&-128;v[f-4>>2]=f-e}e=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<6)+f|0;d=e;c=f;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];z[c+36>>2]=z[d+36>>2];z[c+40>>2]=z[d+40>>2];z[c+44>>2]=z[d+44>>2];z[c+48>>2]=z[d+48>>2];z[c+52>>2]=z[d+52>>2];z[c+56>>2]=z[d+56>>2];z[c+60>>2]=z[d+60>>2];d=d- -64|0;c=c- -64|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e-v[e-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=f}function su(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;h=xa-16|0;xa=h;d=v[a+4>>2];e=d>>>30|0;a:{if((e|0)==3){break a}f=v[b+4>>2];g=v[a>>2];e=e-1|0;i=e>>>0<2?g:0;if(!(w[i+4785|0]?i:0)){b=v[((f>>>22&60)+89188|0)+12>>2]+b|0;v[b+4>>2]=v[b+4>>2]|16777215;if(!c|(!v[a>>2]|e>>>0>1)){break a}SE(b);break a}e=v[a+8>>2];if(!e){e=Qu(g,d>>>24&15);v[a+8>>2]=e}b:{d=v[e>>2];if((d|0)==-1){break b}c=v[e+4>>2];if(!c){break b}f=v[v[a>>2]+4880>>2]+(d<<2)|0;d=0;while(1){g=f+(d<<2)|0;if(v[g>>2]!=(b|0)){d=d+1|0;if((c|0)!=(d|0)){continue}break b}break}a=c-1|0;v[g>>2]=v[f+(a<<2)>>2];v[e+4>>2]=a;break a}c=v[a>>2];d=v[e+8>>2];c:{if((d|0)==-1){d=v[c+4884>>2];f=v[a+20>>2];v[h+12>>2]=0;c=c+4880|0;Dr(c,d+f|0,h+12|0);v[e+8>>2]=d;break c}c=c+4880|0}d=v[c>>2]+(d<<2)|0;c=v[e+12>>2];v[d+(c<<2)>>2]=b;v[e+12>>2]=c+1;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|2}xa=h+16|0}function ru(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=xa-16|0;xa=f;c=v[a+4>>2];h=c>>>30|0;a:{if((h|0)==3){break a}d=v[a>>2];e=h-1>>>0<2?d:0;if(!(w[e+4785|0]?e:0)){b=v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0;v[b+4>>2]=v[a+16>>2]&16777215|w[b+7|0]<<24;break a}e=v[a+8>>2];if(!e){e=Qu(d,c>>>24&15);v[a+8>>2]=e}c=v[e+8>>2];b:{if((c|0)==-1){break b}d=v[e+12>>2];if(!d){break b}g=v[v[a>>2]+4880>>2]+(c<<2)|0;c=0;while(1){i=g+(c<<2)|0;if(v[i>>2]!=(b|0)){c=c+1|0;if((d|0)!=(c|0)){continue}break b}break}c=d-1|0;v[i>>2]=v[g+(c<<2)>>2];v[e+12>>2]=c}d=v[a>>2];c=v[e>>2];c:{if((c|0)==-1){c=v[d+4884>>2];g=v[a+20>>2];v[f+12>>2]=0;d=d+4880|0;Dr(d,c+g|0,f+12|0);v[e>>2]=c;break c}d=d+4880|0}d=v[d>>2]+(c<<2)|0;c=v[e+4>>2];v[d+(c<<2)>>2]=b;v[e+4>>2]=c+1;if((h|0)!=1){Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1;break a}v[a+4>>2]=v[a+4>>2]|1}xa=f+16|0}function XN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=v[a+44>>2];d=v[a+84>>2];e=f+d|0;c=v[a+48>>2]&2147483647;a:{if(e>>>0<=c>>>0){break a}g=c;c=c<<1;c=c>>>0>e>>>0?c:e;if(g>>>0>>0){vP(a+40|0,c)}if(c>>>0<=(v[a+60>>2]&2147483647)>>>0){break a}WN(a+52|0,c)}v[a+44>>2]=e;v[a+56>>2]=e;I9(v[a+40>>2]+(f<<2)|0,v[a+80>>2],d<<2);I9((f<<4)+b|0,v[a+68>>2],d<<4);I9(v[a+52>>2]+(f<<3)|0,v[a+92>>2],d<<3);c=v[a+84>>2];if(c){h=v[a+108>>2];i=v[h+456>>2];g=v[a+80>>2];e=0;while(1){b=v[(e<<2)+g>>2];v[b+68>>2]=v[a+24>>2]|e+f<<3;d=w[b+43|0];b:{if(!(d&64)){break b}t[b+43|0]=d&191;if(w[b+41|0]&8){break b}d=v[v[v[h+444>>2]>>2]+(v[b- -64>>2]<<2)>>2];if(!d){break b}while(1){v[(v[d+20>>2]<<2)+i>>2]=v[b+68>>2];d=v[d+16>>2];if(d){continue}break}c=v[a+84>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}v[a+84>>2]=0;v[a+96>>2]=0;v[a+72>>2]=0}function Sl(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);c=xa-32|0;xa=c;m=v[b+392>>2];Ba[v[v[m>>2]+112>>2]](c,m);b=v[b+12>>2]&1?v[b+16>>2]:b+24|0;l=z[b+24>>2];n=z[b+20>>2];o=z[b+16>>2];p=z[c+20>>2];q=z[c+24>>2];r=z[c+16>>2];d=z[c+12>>2];e=z[b+12>>2];f=z[b>>2];h=z[c>>2];i=z[c+4>>2];g=z[b+4>>2];j=z[c+8>>2];k=z[b+8>>2];z[a+12>>2]=C(C(C(d*e)-C(f*h))-C(i*g))-C(j*k);z[a+8>>2]=C(C(h*g)+C(C(d*k)+C(e*j)))-C(f*i);z[a+4>>2]=C(C(j*f)+C(C(d*g)+C(e*i)))-C(k*h);z[a>>2]=C(C(i*k)+C(C(d*f)+C(e*h)))-C(g*j);e=C(l+l);f=C(o+o);g=C(n+n);k=C(C(j*e)+C(C(h*f)+C(i*g)));l=C(C(d*d)+C(-.5));z[a+24>>2]=q+C(C(j*k)+C(C(e*l)+C(d*C(C(h*g)-C(f*i)))));z[a+20>>2]=p+C(C(i*k)+C(C(g*l)+C(d*C(C(j*f)-C(e*h)))));z[a+16>>2]=r+C(C(h*k)+C(C(f*l)+C(d*C(C(i*e)-C(g*j)))));xa=c+32|0}function _D(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(!w[a+338|0]){break a}b=1;if(v[a+268>>2]){break a}b=0;d=v[a+284>>2];if(!d){break a}b=v[a+32>>2];if(b){b=KB(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[37696];c=b+12|0;b=JB((f=c,g=64,h=Ba[v[v[b>>2]+20>>2]](b)|0?44169:63804,i=8103,j=691,e=v[v[c>>2]+8>>2],Ba[e](f|0,g|0,h|0,i|0,j|0)|0));v[a+40>>2]=d;v[a+32>>2]=b;b=0;d=B(d,24);c=d+24|0;if(c){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,c,24422,8103,695)|0}v[a+36>>2]=b;I9(b,v[a+292>>2],d);v[a+16>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;b=1;v[a+48>>2]=v[a+48>>2]+1;v[a+60>>2]=(v[a+60>>2]^-1)&1;v[a+56>>2]=(v[a+56>>2]^-1)&1;d=v[a+20>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+20>>2]=0;v[a+24>>2]=0;v[a+8>>2]=4;v[a+268>>2]=1;v[a+28>>2]=0;e=a,j=Waa(v[a+36>>2],v[a+40>>2]),v[e+12>>2]=j;v[a+16>>2]=Aa}return b|0}function GL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;FL(a,c);c=v[a+124>>2];e=v[a+128>>2];b=v[a+88>>2];v[b+68>>2]=v[b+24>>2];v[b+72>>2]=e;v[b- -64>>2]=c;e=v[b>>2];a:{if(!e){break a}f=b+36|0;b=v[b+12>>2];c=0;while(1){g=v[(b+B(c,40)|0)+28>>2];if(g){sL(g,f)}c=c+1|0;if((e|0)!=(c|0)){continue}break}b=v[a+88>>2];f=v[b>>2];if(!f){break a}e=v[b+12>>2];g=0;c=0;if(f-1>>>0>=3){h=f&-4;while(1){d=v[(e+B(c,40)|0)+28>>2];if(d){v[d+116>>2]=0}d=v[(e+B(c|1,40)|0)+28>>2];if(d){v[d+116>>2]=0}d=v[(e+B(c|2,40)|0)+28>>2];if(d){v[d+116>>2]=0}d=v[(e+B(c|3,40)|0)+28>>2];if(d){v[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=v[(e+B(c,40)|0)+28>>2];if(h){v[h+116>>2]=0}c=c+1|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}wL(b+36|0,v[b+24>>2],a,b+76|0,b+84|0);J9(v[b+76>>2],0,v[b+80>>2]<<2)}function sp(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=xa-32|0;xa=h;a:{if(y[a+32>>2]>=y[a+104>>2]){break a}k=a+40|0;i=v[k>>2];v[k>>2]=i?i:-1;if((i|0)==1){b9(v[37696],8,5611,505,64499,0);break a}v[a+32>>2]=v[a+32>>2]+1;i=a+12|0;n=x[e+16>>1];o=v[e+12>>2];p=v[e+8>>2];q=v[e+4>>2];r=v[e>>2];l=v[a+24>>2];j=l+40|0;e=v[a+20>>2]&2147483647;b:{if(j>>>0<=e>>>0){break b}m=B(j,3);if(e>>>0>=m>>>0){break b}op(i,m)}pp(i,j);e=v[a+12>>2]+v[a+24>>2]|0;v[e+28>>2]=f;v[e+8>>2]=r;u[e+4>>1]=0;v[e>>2]=-16;t[e+38|0]=1;u[e+36>>1]=d;v[e+32>>2]=g;u[e+24>>1]=n;v[e+20>>2]=o;v[e+16>>2]=p;v[e+12>>2]=q;v[a+24>>2]=j;d=v[a+108>>2];v[((d|0)==-16?a+108|0:d+v[a+12>>2]|0)>>2]=l;v[a+108>>2]=l;v[h+28>>2]=0;v[h+24>>2]=c;v[h+20>>2]=b;v[h+8>>2]=0;v[h+12>>2]=0;rp(i,h+8|0);v[k>>2]=0}xa=h+32|0}function eM(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){Ba[v[v[f>>2]+20>>2]](f)}fM(a,d);v[a+4>>2]=c;f=c;c=v[a+200>>2];d=c<<3;f=Dx(f,d,1);v[a+264>>2]=c;v[a+256>>2]=f;v[a+260>>2]=0;f=Dx(v[a+4>>2],d,1);v[a+276>>2]=c;v[a+268>>2]=f;v[a+272>>2]=0;f=Dx(v[a+4>>2],c<<2,1);v[a+212>>2]=c;v[a+204>>2]=f;v[a+208>>2]=0;f=Dx(v[a+4>>2],d,1);v[a+332>>2]=c;v[a+324>>2]=f;v[a+328>>2]=0;f=Dx(v[a+4>>2],d,1);v[a+380>>2]=c;v[a+372>>2]=f;v[a+376>>2]=0;d=Dx(v[a+4>>2],d,1);v[a+428>>2]=c;v[a+420>>2]=d;v[a+424>>2]=0;v[a+76>>2]=a;v[a+80>>2]=b;v[a+36>>2]=a;v[a+72>>2]=1;v[a+40>>2]=b;v[a+68>>2]=e;if(e){Ba[v[v[e>>2]+16>>2]](e);v[a- -64>>2]=v[v[a+68>>2]+16>>2]}b=a+48|0;v[a+28>>2]=b;v[a+32>>2]=1;Ba[v[v[a+48>>2]+16>>2]](b);v[a+24>>2]=v[v[a+28>>2]+16>>2];c=v[a- -64>>2];Ba[v[v[c>>2]+72>>2]](c,b);b=v[a+24>>2];Ba[v[v[b>>2]+72>>2]](b,a+8|0)}function UZ(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=0;f=xa-48|0;xa=f;h=v[a+3376>>2];o=z[h+28>>2];p=z[h+16>>2];l=z[h+32>>2];m=z[h+20>>2];u=w[h+72|0];q=z[h+4>>2];n=z[h+8>>2];i=z[c>>2];r=z[h>>2];j=z[c+4>>2];s=z[h+12>>2];k=z[c+8>>2];t=z[h+24>>2];z[f>>2]=C(C(i*r)+C(j*s))+C(k*t);z[f+8>>2]=C(C(i*n)+C(j*m))+C(k*l);z[f+4>>2]=C(C(i*q)+C(j*p))+C(k*o);c=(u?24:12)+f|0;i=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];z[c+8>>2]=C(C(n*i)+C(m*j))+C(l*k);z[c+4>>2]=C(C(q*i)+C(p*j))+C(o*k);z[c>>2]=C(C(r*i)+C(s*j))+C(t*k);c=(u?12:24)+f|0;i=n;n=z[e>>2];j=m;m=z[e+4>>2];k=l;l=z[e+8>>2];z[c+8>>2]=C(C(i*n)+C(j*m))+C(k*l);z[c+4>>2]=C(C(q*n)+C(p*m))+C(o*l);z[c>>2]=C(C(r*n)+C(s*m))+C(t*l);SZ(a+8|0,v[b+8>>2],f,f|12,f+24|0,g);xa=f+48|0;return 1}function Oi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;d=xa-16|0;xa=d;g=a+12|0;b=v[g+4>>2];a:{if(!b){break a}c=v[b+40>>2];if(!c){break a}while(1){c=c-1|0;h=f<<3;e=h+v[b+36>>2]|0;b:{if(!w[e|0]){b=v[e+4>>2];v[(v[b+8>>2]==(a|0)?8:12)+b>>2]=0;e=ng(b);if(e){Ju(e+16|0,b+16|0);v[d+12>>2]=b;Pg(e+5892|0,d+12|0)}b=v[g+4>>2];e=v[b+40>>2]-1|0;v[b+40>>2]=e;b=v[b+36>>2];h=b+h|0;b=b+(e<<3)|0;e=v[b+4>>2];v[h>>2]=v[b>>2];v[h+4>>2]=e;b=v[g+4>>2];if(v[b+40>>2]){break b}if(v[b+44>>2]>=0){Sm(v[37389],b)}b=0;v[g+4>>2]=0;break b}f=f+1|0}if(c){continue}break}}xa=d+16|0;c=vh(a);if(v[a+40>>2]){b9(v[37696],8,19068,200,74097,0);bC(v[a+40>>2],a)}b=a+20|0;d=x[b+4>>1];f=v[b>>2];if(c){iu(b,c+5584|0,a)}if(d){f=(d|0)==1?b:f;c=0;while(1){_t(v[f+(c<<2)>>2]);c=c+1|0;if((d|0)!=(c|0)){continue}break}}d=v[v[37389]+476>>2];MU(b,d);MU(b+8|0,d);jh(g,a)}function GK(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=xa-16|0;xa=b;c=v[37696];d=Ba[v[v[c+12>>2]+8>>2]](c+12|0,4,24422,8452,47)|0;v[d>>2]=131644;v[b+12>>2]=d;c=v[a+8>>2];a:{if(c>>>0>=(v[a+12>>2]&2147483647)>>>0){d=0;c=v[a+12>>2];g=c&2147483647?c<<1:1;b:{if(!g){break b}e=g<<2;if(!e){break b}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?58655:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+8>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a+4>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b+12>>2];c:{if(v[a+12>>2]<0){break c}e=v[a+4>>2];if(!e){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e);f=v[a+8>>2]}v[a+12>>2]=g;v[a+4>>2]=d;v[a+8>>2]=f+1;break a}v[v[a+4>>2]+(c<<2)>>2]=d;v[a+8>>2]=c+1}xa=b+16|0;return v[b+12>>2]}function R1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0,s=C(0),t=C(0),u=C(0);e=xa-16|0;xa=e;r=v[b+4>>2];d=v[b+8>>2];i=z[b+48>>2];j=z[b+32>>2];k=z[b+52>>2];l=z[b+20>>2];m=z[b+36>>2];n=z[b+56>>2];o=z[b+24>>2];p=z[b+40>>2];q=z[b+16>>2];f=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];v[e+12>>2]=0;z[e+8>>2]=C(n*f)+C(C(o*g)+C(h*p));z[e+4>>2]=C(k*f)+C(C(l*g)+C(h*m));z[e>>2]=C(i*f)+C(C(q*g)+C(h*j));b=IV(r,e);i=z[d+52>>2];j=z[d+20>>2];k=z[d+36>>2];l=z[d+56>>2];b=v[r+152>>2]+B(b,12)|0;f=z[b>>2];m=z[d+24>>2];g=z[b+4>>2];n=z[d+40>>2];h=z[b+8>>2];o=z[d+48>>2];p=z[d+32>>2];q=z[d>>2];s=z[d+16>>2];t=z[d+4>>2];u=z[d+8>>2];v[a+12>>2]=0;z[a+8>>2]=l+C(C(n*h)+C(C(u*f)+C(g*m)));z[a+4>>2]=i+C(C(k*h)+C(C(t*f)+C(g*j)));z[a>>2]=o+C(C(p*h)+C(C(q*f)+C(g*s)));xa=e+16|0}function E2(a,b,c,d,e){var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0;f=xa-32|0;xa=f;j=z[d+36>>2];k=z[d+40>>2];l=z[d+32>>2];m=z[d+8>>2];n=z[d+4>>2];o=z[d>>2];g=C(z[c+8>>2]-z[d+56>>2]);h=C(z[c>>2]-z[d+48>>2]);i=C(z[c+4>>2]-z[d+52>>2]);z[f+20>>2]=C(z[d+24>>2]*g)+C(C(z[d+16>>2]*h)+C(i*z[d+20>>2]));z[f+16>>2]=C(m*g)+C(C(o*h)+C(i*n));v[f+28>>2]=0;z[f+24>>2]=C(k*g)+C(C(l*h)+C(i*j));g=z[c+40>>2];d=v[c+32>>2];p=v[c+36>>2];z[f+12>>2]=z[c+64>>2];z[f+8>>2]=g;q=v[f+28>>2];v[a+8>>2]=v[f+24>>2];v[a+12>>2]=q;v[f>>2]=d;v[f+4>>2]=p;d=v[f+20>>2];v[a>>2]=v[f+16>>2];v[a+4>>2]=d;d=v[c+28>>2];v[a+24>>2]=v[c+24>>2];v[a+28>>2]=d;d=v[c+20>>2];v[a+16>>2]=v[c+16>>2];v[a+20>>2]=d;d=v[f+12>>2];v[a+40>>2]=v[f+8>>2];v[a+44>>2]=d;d=v[f+4>>2];v[a+32>>2]=v[f>>2];v[a+36>>2]=d;v2(b,f+16|0,c+16|0,f,e);xa=f+32|0}function $H(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{b:{g=v[a+12>>2];e=g+(b<<2)|0;b=v[e>>2];if((c|0)==(b|0)){break b}f=v[a+16>>2];while(1){d=b;b=v[f+(b<<2)>>2];if((c|0)!=(b|0)){continue}break}if((d|0)==-1){break b}e=v[a+16>>2];v[e+(d<<2)>>2]=v[(c<<2)+e>>2];break a}b=e;e=v[a+16>>2];v[b>>2]=v[e+(c<<2)>>2]}d=v[a+8>>2]-1|0;if((d|0)!=(c|0)){c:{d:{h=v[a+20>>2];f=h+(d<<3)|0;b=v[f+4>>2]<<16|x[f>>1];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;i=v[a+4>>2]&(b>>>16^b);j=g+(i<<2)|0;b=v[j>>2];if((d|0)==(b|0)){break d}while(1){g=b;b=v[(b<<2)+e>>2];if((d|0)!=(b|0)){continue}break}if((g|0)==-1){break d}v[(g<<2)+e>>2]=v[(d<<2)+e>>2];break c}v[j>>2]=v[(d<<2)+e>>2]}d=v[f+4>>2];b=(c<<3)+h|0;v[b>>2]=v[f>>2];v[b+4>>2]=d;b=v[a+12>>2]+(i<<2)|0;v[v[a+16>>2]+(c<<2)>>2]=v[b>>2];v[b>>2]=c;d=v[a+8>>2]-1|0}v[a+8>>2]=d}function F$(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=xa-80|0;xa=d;a:{b:{if(w[a+96|0]){e=1;if(!b){break a}f=v[a+4>>2];while(1){e=v[a+8>>2];if(e>>>0>=y[a+12>>2]){break b}b=b-1|0;g=v[a+20>>2];c:{if(g>>>0>=y[a+16>>2]){g=v[c>>2];v[a+8>>2]=e+1;v[f+(e<<2)>>2]=g;break c}v[a+20>>2]=g+1}c=c+4|0;if(b){continue}break}e=1;break a}v[d+72>>2]=0;v[d+64>>2]=0;v[d+68>>2]=0;v[d+56>>2]=0;v[d+60>>2]=1065353216;v[d+48>>2]=0;v[d+52>>2]=0;d:{if(b){g=a+32|0;j=d+32|0;k=d+20|0;while(1){f=d+8|0;h=(e<<2)+c|0;n$(v[a+28>>2],d+48|0,f,0,0,v[h>>2],0,0);e:{if(!w$(g,f,k,j)){break e}f=v[a+8>>2];if(f>>>0>=y[a+12>>2]){break d}i=v[a+20>>2];if(i>>>0>=y[a+16>>2]){h=v[h>>2];v[a+8>>2]=f+1;v[v[a+4>>2]+(f<<2)>>2]=h;break e}v[a+20>>2]=i+1}e=e+1|0;if((e|0)!=(b|0)){continue}break}}e=1;break a}}t[a+24|0]=1;e=0}xa=d+80|0;return e|0}function Pg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{if(!v[a+36>>2]){break a}d=v[b>>2];b=(d<<15^-1)+d|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=v[a+12>>2]+((v[a+20>>2]-1&(b>>>16^b))<<2)|0;b=v[c>>2];if((b|0)==-1){break a}e=v[a+8>>2];f=v[a+4>>2];g=f+(b<<2)|0;if((d|0)!=v[g>>2]){while(1){c=e+(b<<2)|0;b=v[c>>2];if((b|0)==-1){break a}g=f+(b<<2)|0;if((d|0)!=v[g>>2]){continue}break}}h=c;c=b<<2;v[h>>2]=v[c+e>>2];d=v[a+36>>2]-1|0;v[a+36>>2]=d;h=1;v[a+32>>2]=v[a+32>>2]+1;if((b|0)!=(d|0)){e=d<<2;v[g>>2]=v[e+f>>2];d=v[a+8>>2];v[d+c>>2]=v[d+e>>2];c=v[c+v[a+4>>2]>>2];c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[a+12>>2]+((v[a+20>>2]-1&(c>>>16^c))<<2)|0;e=v[c>>2];f=v[a+36>>2];if((e|0)!=(f|0)){while(1){c=d+(e<<2)|0;e=v[c>>2];if((f|0)!=(e|0)){continue}break}}v[c>>2]=b}v[a+28>>2]=v[a+28>>2]-1}return h}function NW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);e=xa-80|0;xa=e;h=z[b+4>>2];j=C(h+h);g=z[b+8>>2];k=C(j*g);f=z[b>>2];i=C(f+f);m=z[b+12>>2];l=C(i*m);z[e+68>>2]=k-l;z[e+60>>2]=k+l;f=C(C(1)-C(f*i));k=C(h*j);z[e+72>>2]=f-k;n=f;f=C(g+g);l=C(g*f);z[e+56>>2]=n-l;g=C(i*g);j=C(j*m);z[e+64>>2]=g+j;h=C(i*h);i=C(f*m);z[e+52>>2]=h-i;z[e+48>>2]=g-j;z[e+44>>2]=h+i;z[e+40>>2]=C(C(1)-k)-l;h=z[d+4>>2];j=C(h+h);g=z[d+8>>2];k=C(j*g);f=z[d>>2];i=C(f+f);m=z[d+12>>2];l=C(i*m);z[e+28>>2]=k-l;z[e+20>>2]=k+l;f=C(C(1)-C(f*i));k=C(h*j);z[e+32>>2]=f-k;n=f;f=C(g+g);l=C(g*f);z[e+16>>2]=n-l;g=C(i*g);j=C(j*m);z[e+24>>2]=g+j;h=C(i*h);i=C(f*m);z[e+12>>2]=h-i;z[e+8>>2]=g-j;z[e+4>>2]=h+i;z[e>>2]=C(C(1)-k)-l;a=p$(a+4|0,b+16|0,e+40|0,c+4|0,d+16|0,e);xa=e+80|0;return a|0} +function cS(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=C(0);e=xa-32|0;xa=e;ZR(a,e);f=v[v[a+4>>2]+40>>2];g=v[v[f+976>>2]+1816>>2];h=v[a+8>>2];d=v[g+4>>2]+(h<<5)|0;z[d>>2]=z[e>>2];z[d+4>>2]=z[e+4>>2];z[d+8>>2]=z[e+8>>2];z[d+12>>2]=z[e+12>>2];z[d+16>>2]=z[e+16>>2];z[d+20>>2]=z[e+20>>2];i=z[e+24>>2];v[d+28>>2]=b;z[d+24>>2]=i;t[g+20|0]=1;b=v[f+1140>>2];d=h&2147483647;eV(v[b+4>>2]+B(d,24)|0,v[a+28>>2]+68|0,e,C(1));t[b+16|0]=1;if(!(!c|v[a+8>>2]>=0)){b=d+32>>>5|0;a:{if(b>>>0<=(v[c+4>>2]&2147483647)>>>0){a=v[c>>2];break a}a=v[c+8>>2];a=Ba[v[v[a>>2]+8>>2]](a,b<<2,17999,438)|0;f=v[c>>2];b:{if(!f){break b}I9(a,f,v[c+4>>2]<<2);if(v[c+4>>2]<0){break b}f=v[c>>2];if(!f){break b}g=v[c+8>>2];Ba[v[v[g>>2]+12>>2]](g,f)}f=v[c+4>>2];J9((f<<2)+a|0,0,b-f<<2);v[c+4>>2]=b;v[c>>2]=a}a=(d>>>3&268435452)+a|0;v[a>>2]=v[a>>2]|1<>2];m=z[a+80>>2];n=z[a+52>>2];o=z[a+68>>2];p=z[a+84>>2];q=z[a+48>>2];d=v[a+144>>2];g=z[d+32>>2];h=z[d+24>>2];i=z[d+28>>2];z[c+8>>2]=C(z[a+88>>2]*g)+C(C(z[a+56>>2]*h)+C(i*z[a+72>>2]));z[c+4>>2]=C(p*g)+C(C(n*h)+C(i*o));z[c>>2]=C(m*g)+C(C(q*h)+C(i*l));f=w[d+38|0];v[c+12>>2]=f;e=w[d+39|0];v[c+16>>2]=e;a=u[d+36>>1];j=a&32767;v[c+20>>2]=j;k=v[d+40>>2];v[c+24>>2]=k;e=B(e,20)+k|0;v[c+28>>2]=e;e=e+B(f,12)|0;v[c+36>>2]=e;f=B(f,3);v[c+40>>2]=(a|0)>=0?0:f+(e+(a<<1&65534)|0)|0;v[c+32>>2]=(f+(e+(j<<1)|0)|0)+(j<<2&a>>31);v[c+60>>2]=v[d+44>>2];a=v[d+52>>2];v[c+44>>2]=v[d+48>>2];v[c+48>>2]=a;a=v[d+60>>2];v[c+52>>2]=v[d+56>>2];v[c+56>>2]=a;if(!b){a=c+44|0;v[a>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}}function oC(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0;c=C(z[a+16>>2]-z[b>>2]);i=z[b+16>>2];e=C(i+z[a+128>>2]);a:{if(c>e){break a}d=C(z[a+20>>2]-z[b+4>>2]);j=z[b+20>>2];f=C(j+z[a+132>>2]);if(d>f){break a}g=C(z[a+24>>2]-z[b+8>>2]);k=z[b+24>>2];h=C(k+z[a+136>>2]);if(ch|(dg)){break a}e=C(C(C(c*z[a+32>>2])+C(d*z[a+48>>2]))+C(g*z[a- -64>>2]));f=C(C(k*z[a+112>>2])+C(C(j*z[a+96>>2])+C(C(i*z[a+80>>2])+z[a>>2])));if(e>f){break a}h=C(C(k*z[a+116>>2])+C(C(j*z[a+100>>2])+C(C(i*z[a+84>>2])+z[a+4>>2])));l=C(C(C(c*z[a+36>>2])+C(d*z[a+52>>2]))+C(g*z[a+68>>2]));if(h>2])+C(d*z[a+56>>2]))+C(g*z[a+72>>2]));d=C(C(k*z[a+120>>2])+C(C(j*z[a+104>>2])+C(C(i*z[a+88>>2])+z[a+8>>2])));if(ed|l>2];if(d>>>0<=b>>>0){v[g+12>>2]=0;d=d<<1;if(d>>>0>(v[f+8>>2]&2147483647)>>>0){_C(f,d)}e=v[f+4>>2];if((e|0)<(d|0)){h=v[f>>2];i=h+(d<<2)|0;e=h+(e<<2)|0;while(1){v[e>>2]=v[g+12>>2];e=e+4|0;if(i>>>0>e>>>0){continue}break}}v[f+4>>2]=d;v[g+8>>2]=0;cz(a+688|0,d,g+8|0)}e=v[a+704>>2];a:{if(e){b:{if(v[c+40>>2]|!c){break b}d=v[c+36>>2];if(!v[d>>2]){break b}b=0;while(1){v[v[f>>2]+(v[((b<<2)+d|0)+4>>2]<<2)>>2]=c;b=b+1|0;d=v[c+36>>2];if(b>>>0>2]){continue}break}}h=e>>>0>1?e:1;c=0;while(1){b=0;e=v[v[a+700>>2]+(c<<2)>>2];d=v[e+36>>2];if(v[d>>2]){while(1){v[v[f>>2]+(v[((b<<2)+d|0)+4>>2]<<2)>>2]=e;b=b+1|0;d=v[e+36>>2];if(b>>>0>2]){continue}break}}c=c+1|0;if((h|0)!=(c|0)){continue}break}break a}v[v[f>>2]+(b<<2)>>2]=c}xa=g+16|0}function WC(a,b,c,d,e,f,g){var h=0,i=C(0),j=0,k=0;j=d+28|0;k=a+296|0;while(1){h=b;v[h+32>>2]=e;b=v[c+4>>2];e=v[c>>2];i=z[c+8>>2];v[h+12>>2]=0;z[h+8>>2]=i;v[h>>2]=e;v[h+4>>2]=b;i=z[c+20>>2];b=v[c+16>>2];e=v[c+12>>2];v[h+28>>2]=0;z[h+24>>2]=i;v[h+16>>2]=e;v[h+20>>2]=b;if(t[c+24|0]&1){e=v[a+292>>2];if(!e){LC(a+4|0);e=v[a+292>>2]}v[a+292>>2]=v[e>>2];v[a+284>>2]=v[a+284>>2]+1;v[h+36>>2]=e;a=v[c+24>>2];b=a>>>1&15;v[e>>2]=b;if(b){b=(a>>>3&536870908)+f|0;c=0;while(1){d=c<<2;a=v[d+b>>2];v[(d+e|0)+4>>2]=a;v[v[g>>2]+(a<<2)>>2]=h;c=c+1|0;if(c>>>0>2]){continue}break}}}else{e=v[a+584>>2];if(!e){KC(k);e=v[a+584>>2]}v[a+584>>2]=v[e>>2];v[a+576>>2]=v[a+576>>2]+1;b=J9(e,0,96);v[h+40>>2]=b+48;v[h+36>>2]=b;WC(a,b,B(v[c+24>>2]>>>1|0,28)+d|0,d,h,f,g);c=d?B(v[c+24>>2]>>>1|0,28)+j|0:0;b=v[h+40>>2];e=h;continue}break}}function sG(a){var b=0,c=0;b=v[a>>2];if(b){c=v[a+4>>2];a:{if(v[b+24>>2]==1){c=v[c+2400>>2];Ba[v[v[b>>2]>>2]](b)|0;v[c+280>>2]=v[c+280>>2]-1;c=c+288|0;break a}c=v[c+2404>>2];Ba[v[v[b>>2]>>2]](b)|0;v[c+280>>2]=v[c+280>>2]-1;c=c+288|0}v[b>>2]=v[c>>2];v[c>>2]=b;YF(v[v[a+4>>2]+1e3>>2],v[a+48>>2]);v[v[a+8>>2]>>2]=0}b=v[a+60>>2];b:{if((b|0)<0|!(b&2147483647)){break b}c=v[a+52>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[a+44>>2];c:{if((b|0)<0|!(b&2147483647)){break c}c=v[a+36>>2];if(!c){break c}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[a+32>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=v[a+24>>2];if(!c){break d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[a+20>>2];e:{if((b|0)<0|!(b&2147483647)){break e}c=v[a+12>>2];if(!c){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}return a}function Yz(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=v[a+12>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=g<<5;if(!c){break a}e=v[a>>2];e=Ba[v[v[e>>2]+8>>2]](e,c,16608,553)|0}c=v[a+8>>2];if((c|0)>0){h=(c<<5)+e|0;d=v[a+4>>2];c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=f;f=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=f;f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;d=d+32|0;c=c+32|0;if(h>>>0>c>>>0){continue}break}c=v[a+8>>2]}d=v[b+4>>2];c=(c<<5)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+28>>2];v[c+24>>2]=v[b+24>>2];v[c+28>>2]=d;d=v[b+20>>2];v[c+16>>2]=v[b+16>>2];v[c+20>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;b:{if(v[a+12>>2]<0){break b}b=v[a+4>>2];if(!b){break b}c=v[a>>2];Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=g;v[a+4>>2]=e;v[a+8>>2]=v[a+8>>2]+1}function LZ(a,b,c,d,e,f,g){var h=0,i=C(0),k=0,l=0,m=0,n=C(0),o=C(0),q=C(0),r=C(0),s=0;h=g;g=(ce|(df?g|4:g;t[h|0]=g;a:{if(g){a=0}else{if((b|0)==3){e=z[a>>2];n=C(c-e);c=C(z[a+8>>2]-e);f=z[a+4>>2];o=C(d-f);d=C(z[a+12>>2]-f);q=C(C(n*c)+C(o*d));e=C(z[a+16>>2]-e);f=C(z[a+20>>2]-f);r=C(C(e*e)+C(f*f));i=C(C(c*e)+C(d*f));e=C(C(n*e)+C(o*f));f=C(C(q*r)-C(i*e));c=C(C(c*c)+C(d*d));d=C(C(e*c)-C(i*q));return f>C(0)&d>C(0)&C(C(f+d)-C(C(c*r)-C(i*i)))>2];while(1){g=a;e=z[a+4>>2];s=l;a=v[a+4>>2];l=(a|0)>=(k|0);b:{if((s|0)==(l|0)){break b}f=z[g>>2];if((!(C(C(e-d)*C(z[h>>2]-f))>C(C(f-c)*C(z[h+4>>2]-e)))|0)==((a|0)>=(k|0)|0)){break b}if((m|0)==1){break a}m=m+1|0}a=g+8|0;h=g;b=b-1|0;if(b){continue}break}}a=m&1}return a}return 0}function s$(a,b,c,d,e,f,g){var h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);j=z[a+8>>2];k=z[d+8>>2];h=C(j-k);p=C(h*h);l=z[a>>2];m=z[d>>2];h=C(l-m);q=C(h*h);n=z[a+4>>2];o=z[d+4>>2];h=C(n-o);h=C(C(C(K(C(p+C(q+C(h*h)))))-e)+C(-10));h=h>C(0)?h:C(0);p=z[b+8>>2];j=C(j+C(p*h));k=C(k-j);q=z[b>>2];l=C(l+C(q*h));m=C(m-l);r=z[b+4>>2];n=C(n+C(r*h));o=C(o-n);s=C(C(k*k)+C(C(m*m)+C(o*o)));t=C(e*e);a:{b:{if(s<=t){if(!g){break b}z[g+8>>2]=j;z[g+4>>2]=n;z[g>>2]=l;break b}d=0;i=C(C(p*k)+C(C(q*m)+C(r*o)));if(i<=C(0)){break a}c=C(c-h);if(C(i-c)>e){break a}e=C(t-C(s-C(i*i)));if(e>2]=i;if(c>2];e=z[b+4>>2];z[g+8>>2]=j+C(i*z[b+8>>2]);z[g+4>>2]=n+C(i*e);z[g>>2]=l+C(i*c);i=z[f>>2]}z[f>>2]=h+i;d=1}return d}function yK(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{d=v[a+4>>2]&2147483647;e=c&134217727;if(d>>>0>>0){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,e<<2,24422,17999,438)|0;f=v[a>>2];b:{if(!f){break b}I9(d,f,v[a+4>>2]<<2);if(v[a+4>>2]<0){break b}f=v[a>>2];if(!f){break b}h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,f)}f=v[a+4>>2];J9(d+(f<<2)|0,0,e-f<<2);v[a+4>>2]=e;v[a>>2]=d;d=e}d=c>>>0>d>>>0?d:c;if(!d){break a}c=v[a>>2];f=0;a=0;if(d-1>>>0>=3){j=d&2147483644;h=0;while(1){e=a<<2;g=e+c|0;v[g>>2]=v[b+e>>2]|v[g>>2];g=e|4;i=g+c|0;v[i>>2]=v[b+g>>2]|v[i>>2];g=e|8;i=g+c|0;v[i>>2]=v[b+g>>2]|v[i>>2];e=e|12;g=e+c|0;v[g>>2]=v[b+e>>2]|v[g>>2];a=a+4|0;h=h+4|0;if((j|0)!=(h|0)){continue}break}}e=d&3;if(!e){break a}while(1){d=a<<2;h=d+c|0;v[h>>2]=v[b+d>>2]|v[h>>2];a=a+1|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}}function VW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0),x=C(0),y=C(0),A=C(0),D=C(0),E=C(0),F=C(0),G=C(0);d=v[b+8>>2];k=z[d+52>>2];l=z[d+36>>2];m=z[d+20>>2];f=z[d+56>>2];g=z[d+40>>2];b=v[b+4>>2];h=z[b+88>>2];n=z[b+56>>2];o=z[b+72>>2];p=z[b- -64>>2];q=z[b+80>>2];r=z[d+24>>2];s=z[b+84>>2];c=v[b+152>>2]+B(c,12)|0;e=z[c+8>>2];t=z[b+52>>2];i=z[c>>2];u=z[b+68>>2];j=z[c+4>>2];w=z[d+48>>2];x=z[d+32>>2];y=z[d>>2];A=z[d+16>>2];D=z[d+4>>2];E=z[d+8>>2];F=z[b+48>>2];v[a+12>>2]=0;G=f;f=C(C(h*e)+C(C(n*i)+C(j*o)));h=C(g*f);g=C(C(q*e)+C(C(F*i)+C(j*p)));e=C(C(s*e)+C(C(t*i)+C(j*u)));z[a+8>>2]=G+C(h+C(C(E*g)+C(r*e)));z[a+4>>2]=k+C(C(l*f)+C(C(D*g)+C(e*m)));z[a>>2]=w+C(C(x*f)+C(C(y*g)+C(e*A)))}function MF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=v[a+60>>2];g=(b>>>0)/(c>>>0)|0;g=v[v[a+40>>2]+(g<<2)>>2]+(b-B(c,g)<<4)|0;f=x[g+4>>1];if(f&64){c=B(v[g>>2],12)+a|0;e=v[c+152>>2];a:{if(!e){break a}h=v[c+148>>2];while(1){i=h+(d<<2)|0;if(v[i>>2]!=(b|0)){d=d+1|0;if((e|0)!=(d|0)){continue}break a}break}j=c;c=e-1|0;v[j+152>>2]=c;v[i>>2]=v[h+(c<<2)>>2]}u[g+4>>1]=f&65471}d=b<<1;h=d|1;f=v[a+448>>2];c=v[f+20>>2];e=(h>>>0)/(c>>>0)|0;f=v[f>>2];i=(d>>>0)/(c>>>0)|0;d=v[v[f+(i<<2)>>2]+(d-B(c,i)<<2)>>2];b:{if(d>>>0>4294967167){break b}c=v[v[f+(e<<2)>>2]+(h-B(c,e)<<2)>>2];if(c>>>0>4294967167){break b}j=B(d>>>7|0,24);d=v[a+16>>2];e=j+d|0;v[e+16>>2]=v[e+16>>2]-1;c=d+B(c>>>7|0,24)|0;v[c+16>>2]=v[c+16>>2]-1}if(!v[g>>2]){a=v[a+228>>2]+(b>>>3&536870908)|0;c=v[a>>2];k=a,l=Vaa(-2,b)&c,v[k>>2]=l}}function MP(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;g=xa-288|0;xa=g;e=v[b>>2];if(e){f=v[a+2416>>2];a:{if(f){JP(a,e,f,c,d);break a}t[g+264|0]=1;v[g+272>>2]=0;v[g+276>>2]=64;f=g+8|0;v[g+268>>2]=f;JP(a,e,f,c,d);c=v[g+276>>2];if((c|0)<0|!(c&2147483647)){break a}c=v[g+268>>2];if((c|0)==(g+8|0)|!c){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}c=v[a+2388>>2];e=v[b>>2];b:{if(!e){break b}Ba[v[v[e>>2]>>2]](e)|0;if(w[c+24|0]){OO(v[c+12>>2],v[c+16>>2])}b=0;d=v[c+16>>2]-1|0;if((d|0)<0){break b}j=B(v[c+4>>2],v[c>>2]);i=v[c+12>>2];while(1){f=b+d>>1;h=v[B(f,12)+i>>2];if(!(h>>>0>e>>>0|e>>>0>=h+j>>>0)){b=B(f,12)+i|0;v[e>>2]=v[b+4>>2];v[b+4>>2]=e;if(w[c+24|0]){v[c+8>>2]=f}t[c+24|0]=0;break b}h=e>>>0>h>>>0;b=h?f+1|0:b;d=h?d:f-1|0;if((b|0)<=(d|0)){continue}break}}v[a+2664>>2]=v[a+2664>>2]-1}xa=g+288|0}function p0(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=C(0),i=0;f=xa-128|0;xa=f;g=v[c+4>>2];i=v[c>>2];h=z[c+8>>2];v[f+124>>2]=0;z[f+120>>2]=h;v[f+112>>2]=i;v[f+116>>2]=g;c=v[d+4>>2];g=v[d>>2];h=z[d+8>>2];v[f+108>>2]=0;z[f+104>>2]=h;v[f+96>>2]=g;v[f+100>>2]=c;c=v[e+4>>2];d=v[e>>2];h=z[e+8>>2];v[f+92>>2]=0;z[f+88>>2]=h;v[f+80>>2]=d;v[f+84>>2]=c;h=z[a+32>>2];c=v[a+28>>2];d=v[a+24>>2];v[f+12>>2]=0;z[f+8>>2]=h;v[f>>2]=d;v[f+4>>2]=c;F_(f+16|0,f,f+112|0,f+96|0,f+80|0,f- -64|0,f+48|0,f+32|0);xa=f+128|0;c=1;a:{if(!(z[f+16>>2]<=z[a+20>>2])){break a}d=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];c=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;c=1;break a}c=v[a+16>>2];if(c>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=d;c=1;break a}v[a+16>>2]=c+1;c=1}return c|0}function ro(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=C(0);z[a+296>>2]=z[b>>2];z[a+300>>2]=z[b+4>>2];z[a+304>>2]=z[b+8>>2];e=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:d=v[e>>2];if(w[d+4785|0]){break b}default:DG(a- -64|0,b);break a;case 1:break c}}d=v[e>>2]}Yu(d,e);v[a+316>>2]=v[a+316>>2]|8388608}d:{if(!vh(a)){break d}d=1;d=z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?d:z[b+8>>2]!=C(0);f=z[a+308>>2];b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}g=z[b+5148>>2];b=f>2]!=0?1:b)){break d}f=b?g:f;e:{f:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:b=v[e>>2];if(w[b+4785|0]){break e}default:z[a+308>>2]=f;v[a+312>>2]=0;VG(a- -64|0,f,1);return;case 1:break f}}b=v[e>>2]}z[a+308>>2]=f;v[a+312>>2]=0;Yu(b,e);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}}function po(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=C(0),g=C(0);z[a+284>>2]=z[b>>2];z[a+288>>2]=z[b+4>>2];z[a+292>>2]=z[b+8>>2];e=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:d=v[e>>2];if(w[d+4785|0]){break b}default:CG(a- -64|0,b);break a;case 1:break c}}d=v[e>>2]}Yu(d,e);v[a+316>>2]=v[a+316>>2]|4194304}d:{if(!vh(a)){break d}d=1;d=z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?d:z[b+8>>2]!=C(0);f=z[a+308>>2];b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}g=z[b+5148>>2];b=f>2]!=0?1:b)){break d}f=b?g:f;e:{f:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:b=v[e>>2];if(w[b+4785|0]){break e}default:z[a+308>>2]=f;v[a+312>>2]=0;VG(a- -64|0,f,1);return;case 1:break f}}b=v[e>>2]}z[a+308>>2]=f;v[a+312>>2]=0;Yu(b,e);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}}function fZ(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),v=C(0),w=C(0),x=C(0),y=C(0),A=C(0);v=z[c>>2];i=z[b>>2];o=C(v-i);m=z[d+4>>2];g=z[b+4>>2];n=C(m-g);h=z[d>>2];p=C(h-i);w=z[c+4>>2];j=C(w-g);r=C(C(o*n)-C(p*j));k=z[a>>2];h=C(h-k);l=z[a+4>>2];g=C(g-l);i=C(i-k);m=C(m-l);s=j;x=z[d+8>>2];j=z[b+8>>2];y=C(x-j);A=z[c+8>>2];q=C(A-j);t=C(C(s*y)-C(n*q));u=z[a+8>>2];j=C(j-u);n=C(x-u);o=C(C(q*p)-C(y*o));p=C(C(r*C(C(h*g)-C(i*m)))+C(C(t*C(C(m*j)-C(g*n)))+C(o*C(C(n*i)-C(j*h)))));l=C(w-l);k=C(v-k);q=C(r*C(C(i*l)-C(k*g)));s=g;g=C(A-u);i=C(q+C(C(t*C(C(s*g)-C(l*j)))+C(o*C(C(j*k)-C(g*i)))));h=C(C(C(r*C(C(k*m)-C(h*l)))+C(C(t*C(C(l*n)-C(m*g)))+C(o*C(C(g*h)-C(n*k)))))+C(p+i));h=h!=C(0)?C(C(1)/h):C(0);z[e>>2]=p*h;z[f>>2]=i*h}function D9(a){var b=0,c=0,d=C(0),e=C(0),f=0,g=C(0);f=(p(a),j(2));c=f&2147483647;if(c>>>0>=1283457024){return((p(a),j(2))&2147483647)>>>0>2139095040?a:(l(2,(p(a),j(2))&-2147483648|1070141402),q())}a:{b:{if(c>>>0<=1054867455){b=-1;if(c>>>0>=964689920){break b}break a}a=C(D(a));if(c>>>0<=1066926079){if(c>>>0<=1060110335){a=C(C(C(a+a)+C(-1))/C(a+C(2)));b=0;break b}a=C(C(a+C(-1))/C(a+C(1)));b=1;break b}if(c>>>0<=1075576831){a=C(C(a+C(-1.5))/C(C(a*C(1.5))+C(1)));b=2;break b}a=C(C(-1)/a);b=3}e=C(a*a);d=C(e*e);g=C(d*C(C(d*C(-.106480173766613))+C(-.19999158382415771)));d=C(e*C(C(d*C(C(d*C(.06168760731816292))+C(.14253635704517365)))+C(.333333283662796)));if(c>>>0<=1054867455){return C(a-C(a*C(g+d)))}b=b<<2;a=C(z[b+106272>>2]-C(C(C(a*C(g+d))-z[b+106288>>2])-a));a=(f|0)<0?C(-a):a}return a}function xF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;v[d+8>>2]=b;b=b>>>7|0;if((b|0)!=33554431){e=v[a+16>>2];c=e+B(b,24)|0;f=c;c=w[c+4|0];a:{if(c&34){break a}g=v[a+28>>2];if(!(!(c&4)|v[g+(b<<2)>>2]==33554431)){h=e+B(b,24)|0;k=v[h+16>>2];v[h+16>>2]=0;c=c&253;t[f+4|0]=c;b=v[d+8>>2]>>>7|0;b:{if(v[(e+B(b,24)|0)+16>>2]){break b}e=(b<<2)+g|0;i=v[e>>2];if((i|0)==33554431){break b}b=v[a+136>>2];j=v[(b+(v[a+140>>2]<<2)|0)-4>>2];v[(j>>>5&134217724)+g>>2]=i;v[b+(v[e>>2]<<2)>>2]=j;v[a+140>>2]=v[a+140>>2]-1;v[e>>2]=33554431;b=v[d+8>>2]>>>7|0}v[h+16>>2]=k}c=c|32;t[f+4|0]=c;v[(b<<2)+g>>2]=v[a+328>>2];b=v[a+328>>2];if(b>>>0>=(v[a+332>>2]&2147483647)>>>0){ZF(a+324|0,d+8|0);c=w[f+4|0];break a}v[v[a+324>>2]+(b<<2)>>2]=v[d+8>>2];v[a+328>>2]=v[a+328>>2]+1}t[f+4|0]=c&190}xa=d+16|0}function iJ(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{e=v[a+20>>2];b:{if(!e){break b}h=v[b+4>>2];i=v[b>>2];d=h<<14&-65536|i>>>2&65535;d=(d<<15^-1)+d|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;f=e-1&(d>>>16^d);d=v[v[a+12>>2]+(f<<2)>>2];if((d|0)==-1){break b}j=v[a+8>>2];k=v[a+4>>2];while(1){g=B(d,12)+k|0;if(v[g>>2]==(i|0)&v[g+4>>2]==(h|0)){break a}d=v[(d<<2)+j>>2];if((d|0)!=-1){continue}break}}t[c|0]=0;if(v[a+36>>2]==v[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){dJ(a,c);e=v[a+20>>2]}b=v[b+4>>2]<<14&-65536|v[b>>2]>>>2&65535;b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;f=e-1&(b>>>16^b)}b=v[a+28>>2];v[a+28>>2]=b+1;c=v[a+12>>2]+(f<<2)|0;v[v[a+8>>2]+(b<<2)>>2]=v[c>>2];v[c>>2]=b;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return v[a+4>>2]+B(b,12)|0}t[c|0]=1;return g}function lD(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=v[a+4>>2];e=f>>>0>b>>>0?v[v[a>>2]+(b<<2)>>2]:e;h=c>>>0>>0?v[v[a>>2]+(c<<2)>>2]:h;i=v[d+8>>2];a:{if((e|0)==-1){break a}k=i+B(e,28)|0;g=v[k+24>>2];j=g>>>1&15;if(!j){break a}l=v[d>>2]+(g>>>3&536870908)|0;e=0;while(1){f=(e<<2)+l|0;if(v[f>>2]==(b|0)){m=g&-31;g=j-1|0;v[k+24>>2]=m|g<<1;v[f>>2]=-1;v[v[a>>2]+(b<<2)>>2]=-1;if((e|0)==(g|0)){break a}e=v[f>>2];j=f;f=(g<<2)+l|0;v[j>>2]=v[f>>2];v[f>>2]=e;break a}e=e+1|0;if((j|0)!=(e|0)){continue}break}}b:{if((b|0)==(c|0)|(h|0)==-1){break b}e=v[(i+B(h,28)|0)+24>>2];f=e>>>1&15;if(!f){break b}d=v[d>>2]+(e>>>3&536870908)|0;e=0;while(1){i=d+(e<<2)|0;if(v[i>>2]!=(c|0)){e=e+1|0;if((f|0)!=(e|0)){continue}break b}break}v[i>>2]=b;a=v[a>>2];v[a+(b<<2)>>2]=h;v[a+(c<<2)>>2]=-1}}function sq(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=x[b>>1];a:{if(!(b&3)){break a}i=v[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=v[v[a+5932>>2]+(b<<2)>>2];if(!(x[g+4>>1]!=5|!g)){if(e>>>0<=h>>>0){v[(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=v[v[a+5932>>2]+(b<<2)>>2];if(!(x[g+4>>1]!=6|!g)){if(e>>>0<=h>>>0){v[(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=v[v[a+5932>>2]+(b<<2)>>2];j=x[g+4>>1];b:{if((j|0)!=6|!g){if(!g|(j|0)!=5){break b}}if(e>>>0<=h>>>0){v[(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 Tu(a){var b=0,c=0,d=0,e=C(0),f=0,g=0,h=C(0),i=C(0),j=0;g=xa-16|0;xa=g;b=a+76|0;c=a+88|0;f=a+12|0;d=v[f+60>>2];a:{if(!d){v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;break a}j=v[d+48>>2];d=v[v[j+1004>>2]+168>>2]+(v[d+40>>2]<<5)|0;h=z[d>>2];i=z[d+4>>2];e=z[j+1084>>2];z[b+8>>2]=e*z[d+8>>2];z[b+4>>2]=e*i;z[b>>2]=e*h;h=z[d+16>>2];i=z[d+20>>2];z[c+8>>2]=e*z[d+24>>2];z[c+4>>2]=e*i;z[c>>2]=e*h}u[a+100>>1]=u[a+12>>1]&1;c=v[a+4>>2];b:{if(!(c&16777215)){break b}b=v[a+8>>2];if(!b){b=Qu(v[a>>2],c>>>24&15);v[a+8>>2]=b}if(c&1){wH(f,v[b>>2],v[b+4>>2])}if(c&2){xH(f,z[b+8>>2],z[b+12>>2])}if(c&8){e=z[b+20>>2];z[f+56>>2]=e;d=v[f+60>>2];if(d){z[d+44>>2]=e}}if(!(c&4)){break b}u[g+8>>1]=x[a+100>>1]|x[b+16>>1];vH(f,g+8|0)}v[a+8>>2]=0;v[a+4>>2]=w[a+7|0]<<24;xa=g+16|0}function SW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);i=v[b+4>>2];e=v[b+8>>2];j=d;f=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];c=C(C(z[b+52>>2]*f)+C(C(z[b+20>>2]*g)+C(h*z[b+36>>2])))>C(0);d=C(C(z[b+48>>2]*f)+C(C(z[b+16>>2]*g)+C(h*z[b+32>>2])))>C(0);b=C(C(z[b+56>>2]*f)+C(C(z[b+24>>2]*g)+C(h*z[b+40>>2])))>C(0);v[j>>2]=c<<1|d|b<<2;k=z[e+52>>2];l=z[e+36>>2];m=z[e+20>>2];n=z[e+56>>2];o=z[e+40>>2];f=z[i+56>>2];p=z[e+24>>2];g=z[i+52>>2];q=z[e+48>>2];r=z[e+32>>2];s=z[e>>2];t=z[e+16>>2];u=z[e+4>>2];w=z[e+8>>2];h=z[i+48>>2];v[a+12>>2]=0;f=b?f:C(-f);h=d?h:C(-h);g=c?g:C(-g);z[a+8>>2]=n+C(C(o*f)+C(C(w*h)+C(p*g)));z[a+4>>2]=k+C(C(l*f)+C(C(u*h)+C(g*m)));z[a>>2]=q+C(C(r*f)+C(C(s*h)+C(g*t)))}function M9(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=xa-32|0;xa=f;d=v[a+28>>2];v[f+16>>2]=d;g=v[a+20>>2];v[f+28>>2]=c;v[f+24>>2]=b;b=g-d|0;v[f+20>>2]=b;g=b+c|0;i=2;a:{b:{b=f+16|0;d=sa(v[a+60>>2],b|0,2,f+12|0)|0;if(d){v[37699]=d;d=-1}else{d=0}c:{d:{if(d){d=b;break d}while(1){e=v[f+12>>2];if((e|0)==(g|0)){break c}if((e|0)<0){d=b;break b}h=v[b+4>>2];j=h>>>0>>0;d=(j<<3)+b|0;h=e-(j?h:0)|0;v[d>>2]=h+v[d>>2];b=(j?12:4)+b|0;v[b>>2]=v[b>>2]-h;g=g-e|0;b=d;i=i-j|0;e=sa(v[a+60>>2],b|0,i|0,f+12|0)|0;if(e){v[37699]=e;e=-1}else{e=0}if(!e){continue}break}}if((g|0)!=-1){break b}}b=v[a+44>>2];v[a+28>>2]=b;v[a+20>>2]=b;v[a+16>>2]=b+v[a+48>>2];a=c;break a}v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a>>2]=v[a>>2]|32;a=0;if((i|0)==2){break a}a=c-v[d+4>>2]|0}xa=f+32|0;return a|0}function xh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0,m=0;l=v[a+16>>2];if((Uaa(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}e=b<<2;i=C(z[a+24>>2]*C(b>>>0));a:{if(i=C(0)){d=~~i>>>0;break a}d=0}k=d;f=k<<2;d=e+f|0;d=(0-d&12)+d|0;c=d;f=d+f|0;if(f){g=v[37696]+12|0;g=Ba[v[v[g>>2]+8>>2]](g,f,24422,17301,372)|0}d=J9(g,255,e);f=c+d|0;g=e+d|0;if(v[a+36>>2]){m=b-1|0;e=0;while(1){h=e<<2;j=v[h+v[a+4>>2]>>2];c=j+(j<<15^-1)|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=d+(((c>>>16^c)&m)<<2)|0;v[g+h>>2]=v[c>>2];v[c>>2]=e;v[f+h>>2]=j;e=e+1|0;if(e>>>0>2]){continue}break}}e=v[a>>2];if(e){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,e)}v[a+20>>2]=b;v[a+12>>2]=d;v[a>>2]=d;v[a+8>>2]=g;v[a+16>>2]=k;v[a+4>>2]=f;if(v[a+28>>2]==-1){v[a+28>>2]=l}}function o$(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0);d=z[b+16>>2];e=z[b>>2];f=z[b+32>>2];a:{if(f>2]-z[b+28>>2]));e=C(c*C(z[b+24>>2]+z[b+8>>2]));f=C(c*C(z[b+4>>2]+z[b+12>>2]));c=C(g*c);break a}f=C(C(C(C(1)-e)+d)-f);c=C(C(.5)/C(K(f)));d=C(c*C(z[b+24>>2]-z[b+8>>2]));e=C(c*C(z[b+20>>2]+z[b+28>>2]));f=C(f*c);c=C(c*C(z[b+4>>2]+z[b+12>>2]));break a}if(e>2]-z[b+12>>2]));e=C(e*c);f=C(c*C(z[b+20>>2]+z[b+28>>2]));c=C(c*C(z[b+24>>2]+z[b+8>>2]));break a}d=C(f+C(C(e+C(1))+d));c=C(C(.5)/C(K(d)));d=C(d*c);e=C(c*C(z[b+4>>2]-z[b+12>>2]));f=C(c*C(z[b+24>>2]-z[b+8>>2]));c=C(c*C(z[b+20>>2]-z[b+28>>2]))}z[a+12>>2]=d;z[a+8>>2]=e;z[a+4>>2]=f;z[a>>2]=c;return a}function vr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=EP(a+32|0);f=v[c>>2];g=v[v[a+1008>>2]+1156>>2];e=v[c+4>>2];a:{if(!e){break a}if(!b){while(1){b=wr(g,40);v[b+24>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;c=e-d|0;v[b+36>>2]=c>>>0<256?c:256;v[b+32>>2]=B(d,24)+f;v[b+28>>2]=a;v[b+24>>2]=1;v[b>>2]=125916;v[b+20>>2]=0;c=v[b+16>>2];Ba[v[v[c>>2]+72>>2]](c,b);d=d+256|0;if(e>>>0>d>>>0){continue}break a}}while(1){c=wr(g,40);v[c+24>>2]=0;v[c>>2]=0;v[c+4>>2]=0;v[c+16>>2]=0;v[c+20>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;h=e-d|0;v[c+36>>2]=h>>>0<256?h:256;v[c+32>>2]=B(d,24)+f;v[c+28>>2]=a;v[c+24>>2]=1;v[c>>2]=125916;v[c+20>>2]=b;Ba[v[v[b>>2]+16>>2]](b);v[c+16>>2]=v[v[c+20>>2]+16>>2];Ba[v[v[c>>2]+20>>2]](c);d=d+256|0;if(e>>>0>d>>>0){continue}break}}}function PE(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){a:{b:{g=v[f+4>>2];k=g&2147483647;if(!k){break b}j=g&3;h=v[f>>2];g=0;if(k-1>>>0>=3){n=k-j|0;while(1){k=i<<2;g=Uaa(v[h+(k|12)>>2])+(Uaa(v[h+(k|8)>>2])+(Uaa(v[h+(k|4)>>2])+(Uaa(v[h+k>>2])+g|0)|0)|0)|0;i=i+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}if(j){while(1){g=Uaa(v[h+(i<<2)>>2])+g|0;i=i+1|0;m=m+1|0;if((j|0)!=(m|0)){continue}break}}if(!g){break b}i=0;g=0;h=0;while(1){j=v[(i<<2)+c>>2];c:{if(v[v[f>>2]+(j>>>3&536870908)>>2]>>>j&1){j=v[a+4>>2];h=h<<2;Ba[v[v[j>>2]+12>>2]](j,h+b|0,c+h|0,d,g);i=i+1|0;h=i;g=0;break c}i=i+1|0;g=g+1|0}if((e|0)!=(i|0)){continue}break}break a}h=0;g=e}e=v[a+4>>2];f=b;b=h<<2;Ba[v[v[e>>2]+12>>2]](e,f+b|0,b+c|0,d,g);a=v[a+8>>2];v[a>>2]=v[a>>2]+1}}function iW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=0,g=C(0),h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0);h=xa-16|0;xa=h;a=v[a+48>>2];a:{if(v[a+148>>2]){f=kW(a,b);i=z[b>>2];e=z[b+4>>2];g=z[b+8>>2];v[h+12>>2]=0;z[h+8>>2]=-g;z[h+4>>2]=-e;z[h>>2]=-i;j=kW(a,h);a=v[a+152>>2];f=a+B(f,12)|0;i=z[f+8>>2];e=z[f>>2];g=z[f+4>>2];a=B(j,12)+a|0;z[c>>2]=C(z[b+8>>2]*z[a+8>>2])+C(C(z[b>>2]*z[a>>2])+C(z[a+4>>2]*z[b+4>>2]));e=C(C(i*z[b+8>>2])+C(C(e*z[b>>2])+C(g*z[b+4>>2])));break a}f=v[a+152>>2];l=z[b+8>>2];m=z[b>>2];i=z[b+4>>2];e=C(C(z[f+8>>2]*l)+C(C(z[f>>2]*m)+C(z[f+4>>2]*i)));b=w[a+156|0];b:{if(b>>>0<2){g=e;break b}a=1;g=e;while(1){j=f+B(a,12)|0;k=C(C(z[j+8>>2]*l)+C(C(z[j>>2]*m)+C(i*z[j+4>>2])));g=g>2]=g}z[d>>2]=e;xa=h+16|0}function AK(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=v[a+976>>2]&2147483647;a:{if(!o){break a}k=v[a+972>>2];b:{while(1){j=v[k+(i<<2)>>2];if(j){break b}i=i+1|0;if((o|0)!=(i|0)){continue}break}k=f;break a}p=v[a+312>>2]-1|0;q=v[a+320>>2];r=v[a+332>>2];k=f;while(1){l=Raa(j)|i<<5;j=j-1&j;c:{if(j){break c}h=i+1|0;h=h>>>0>o>>>0?h:o;s=v[a+972>>2];while(1){i=i+1|0;if(o>>>0<=i>>>0){j=0;i=h;break c}j=v[(i<<2)+s>>2];if(!j){continue}break}}if((l|0)==-1){break a}h=v[(l>>>q<<2)+r>>2]+B(l&p,80)|0;l=w[h+43|0];d:{if(l&2){if(!(l&16)){v[n>>2]=h;v[n+4>>2]=v[h+12>>2];n=n+8|0;break d}v[k>>2]=h;v[k+4>>2]=v[h+12>>2];t[h+43|0]=l&239;k=k+8|0;break d}v[m>>2]=h;v[m+4>>2]=v[h+12>>2];m=m+8|0}if(j){continue}break}}v[c>>2]=n-b>>3;v[e>>2]=m-d>>3;v[g>>2]=k-f>>3}function w4(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);g=z[d>>2];m=z[b+4>>2];n=z[c+8>>2];i=z[b+8>>2];j=z[c+4>>2];p=C(C(m*n)-C(i*j));f=z[b>>2];o=z[d+8>>2];h=z[d+4>>2];l=C(C(j*o)-C(n*h));k=z[c>>2];q=C(o*m);e=C(C(g*p)+C(C(f*l)+C(k*C(C(h*i)-q))));a:{if(e==C(0)){j=C(1);i=C(0);r=C(1);f=C(0);l=C(0);s=C(1);e=C(0);break a}e=C(C(1)/e);s=C(C(C(f*j)+C(k*C(-m)))*e);r=C(C(C(f*o)-C(i*g))*e);t=C(C(C(k*h)-C(j*g))*e);j=C(l*e);l=C(e*C(-C(C(f*n)-C(i*k))));f=C(e*C(-C(C(f*h)-C(m*g))));i=C(e*C(-C(q+C(i*C(-h)))));u=C(e*C(-C(C(k*o)-C(g*n))));e=C(p*e)}g=z[b+12>>2];k=f;f=z[c+12>>2];h=z[d+12>>2];z[a+8>>2]=-C(C(C(t*g)+C(k*f))+C(s*h));z[a+4>>2]=-C(C(C(u*g)+C(r*f))+C(l*h));z[a>>2]=-C(C(C(j*g)+C(i*f))+C(e*h))}function dx(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0),w=C(0);k=z[e+24>>2];l=z[e+20>>2];m=z[e+16>>2];g=z[e+8>>2];h=z[e+4>>2];i=z[e>>2];n=v[d+72>>2];if(n){while(1){e=B(j,24)+d|0;f=C(C(C(z[e+20>>2]*g)+C(C(z[e+12>>2]*i)+C(z[e+16>>2]*h)))+C(C(z[e+8>>2]*k)+C(C(z[e>>2]*m)+C(z[e+4>>2]*l))));e=(j<<5)+b|0;o=C(o+C(f*z[e+24>>2]));p=C(p+C(f*z[e+20>>2]));q=C(q+C(f*z[e+16>>2]));r=C(r+C(f*z[e+8>>2]));s=C(s+C(z[e+4>>2]*f));t=C(t+C(z[e>>2]*f));j=j+1|0;if((n|0)!=(j|0)){continue}break}}f=z[c+8>>2];u=z[c>>2];w=z[c+4>>2];v[a+28>>2]=0;v[a+12>>2]=0;g=C(g-r);z[a+8>>2]=g;h=C(h-s);z[a+4>>2]=h;i=C(i-t);z[a>>2]=i;z[a+24>>2]=C(k-o)+C(C(u*h)-C(i*w));z[a+20>>2]=C(l-p)+C(C(f*i)-C(g*u));z[a+16>>2]=C(m-q)+C(C(w*g)-C(h*f))}function XJ(a){var b=0,c=0,d=0,e=0,f=0;b=v[a+32>>2];if(b){while(1){fS(b,0);b=v[b>>2];if(b){continue}break}}d=w[v[a+44>>2]+9|0]-1|0;a:{b:{if(d>>>0<=1){b=v[a+28>>2];if(!b){break a}e=v[a+40>>2];c=v[a+20>>2];if(y[a+152>>2]>=4294967294){break b}while(1){b=b-1|0;c:{d:{e:{a=v[c>>2];switch(w[a+20|0]){case 1:break d;case 0:break e;default:break c}}NR(a-4|0);break c}u[a+52>>1]=x[a+52>>1]|32;d=w[a+21|0];if(d&32){break c}t[a+21|0]=d|32;$O(e,a)}c=c+4|0;if(b){continue}break}break a}b=v[a+28>>2];if(!b){break a}e=v[a+40>>2];c=v[a+20>>2]}d=d>>>0<2;while(1){b=b-1|0;f:{g:{h:{a=v[c>>2];switch(w[a+20|0]){case 0:break g;case 1:break h;default:break f}}u[a+52>>1]=x[a+52>>1]|32;f=w[a+21|0];if(f&32){break f}t[a+21|0]=f|32;$O(e,a);break f}a=a-4|0;NR(a);XR(a,d)}c=c+4|0;if(b){continue}break}}}function TR(a,b,c,d){var e=0,f=0,g=0,h=0;a:{e=v[a+44>>2];if(e&32768){break a}v[a+44>>2]=e&-98305|32768;e=v[v[a+28>>2]+4>>2];h=w[v[e+44>>2]+9|0]-1>>>0<2?e:0;e=v[v[a+32>>2]+4>>2];e=w[v[e+44>>2]+9|0]-1>>>0<2?e:0;f=v[a+48>>2];g=x[f+2>>1];u[f+2>>1]=g+1;b:{if(!(g?d:1)){break b}d=v[h+100>>2];v[d+152>>2]=v[d+152>>2]+1;if(!e){break b}d=v[e+100>>2];v[d+152>>2]=v[d+152>>2]+1}d=v[a+44>>2];if(!(d&476)){break a}if(d&4){e=x[v[a+48>>2]+2>>1];OR(a);PR(a,4,((e|0)==1)<<2,0,b,1,c)}if(d&8){b=v[v[v[a+4>>2]+40>>2]+2168>>2];c=xa-16|0;xa=c;v[c+12>>2]=a;v[a+44>>2]=v[a+44>>2]|2097152;d=v[b+20>>2];v[a+52>>2]=d;c:{if(d>>>0>=(v[b+24>>2]&2147483647)>>>0){CJ(b+16|0,c+12|0);break c}v[v[b+16>>2]+(d<<2)>>2]=a;v[b+20>>2]=d+1}xa=c+16|0;return}if(!(d&448)){break a}AJ(v[v[v[a+4>>2]+40>>2]+2168>>2],a)}}function N4(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=145092;c=v[a+32>>2];d=v[c+36>>2];a:{b:{if(!d){v[c+92>>2]=0;break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d);v[c+36>>2]=0;b=c;c=v[a+32>>2];v[b+92>>2]=0;if(!c){break a}}B4(c);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}d=v[a+36>>2];if(d){b=v[d+32>>2];c:{if((b|0)<0|!(b&2147483647)){break c}c=v[d+24>>2];if(!c){break c}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[d+20>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=v[d+12>>2];if(!c){break d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[d+8>>2];e:{if((b|0)<0|!(b&2147483647)){break e}c=v[d>>2];if(!c){break e}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d)}c=v[a+40>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+44>>2]=0;return s4(a)|0}function H9(a){var b=C(0),c=0,d=0,e=0,f=0;c=xa-16|0;xa=c;e=(p(a),j(2));d=e&2147483647;a:{if(d>>>0<=1061752794){b=C(1);if(d>>>0<964689920){break a}b=E9(+a);break a}if(d>>>0<=1081824209){if(d>>>0>=1075235812){b=C(-E9(((e|0)<0?3.141592653589793:-3.141592653589793)+ +a));break a}f=+a;if((e|0)<0){b=F9(f+1.5707963267948966);break a}b=F9(1.5707963267948966-f);break a}if(d>>>0<=1088565717){if(d>>>0>=1085271520){b=E9(((e|0)<0?6.283185307179586:-6.283185307179586)+ +a);break a}if((e|0)<0){b=F9(-4.71238898038469-+a);break a}b=F9(+a+-4.71238898038469);break a}b=C(a-a);if(d>>>0>=2139095040){break a}b:{switch(G9(a,c+8|0)&3){case 0:b=E9(A[c+8>>3]);break a;case 1:b=F9(-A[c+8>>3]);break a;case 2:b=C(-E9(A[c+8>>3]));break a;default:break b}}b=F9(A[c+8>>3])}a=b;xa=c+16|0;return a}function ZK(a,b,c,d){var e=0,f=0,g=0,h=0;if(y[a+320>>2]>>0){NK(a+316|0,d)}e=v[a+44>>2];f=e+c|0;d=v[a+48>>2];a:{if(f>>>0>d>>>0){d=d<<1;d=d>>>0>>0?f:d;d=d>>>0>1024?d:1024;v[a+48>>2]=d;h=v[a+40>>2];d=d<<2;if(d){g=v[37696]+12|0;d=Ba[v[v[g>>2]+8>>2]](g,d,24422,13489,890)|0}else{d=0}if(e){I9(d,h,e<<2)}if(!h){break a}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,h);break a}d=v[a+40>>2]}v[a+44>>2]=f;v[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){v[a>>2]=v[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){v[a>>2]=v[b>>2]|-2147483648;v[a+4>>2]=v[b+4>>2]|-2147483648;v[a+8>>2]=v[b+8>>2]|-2147483648;v[a+12>>2]=v[b+12>>2]|-2147483648;a=a+16|0;b=b+16|0;c=c-4|0;if(c){continue}break}}}function iK(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=B(f,20);if(!c){break a}d=v[37696];e=d+12|0;e=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?26471:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=B(c,20)+e|0;c=v[a>>2];d=e;while(1){g=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=g;v[d+16>>2]=v[c+16>>2];g=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=g;c=c+20|0;d=d+20|0;if(h>>>0>d>>>0){continue}break}c=v[a+4>>2]}d=B(c,20)+e|0;c=v[b+4>>2];v[d>>2]=v[b>>2];v[d+4>>2]=c;v[d+16>>2]=v[b+16>>2];c=v[b+12>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=c;b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function lh(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=xa-16|0;xa=g;f=v[a+4>>2];if(!f){f=Rm(v[37389]);v[a+4>>2]=f}d=v[f+44>>2];if(!((d|0)>=0|v[f+40>>2]!=(d&2147483647))){f=Rm(v[37389]);e=v[a+4>>2];d=v[e+36>>2];e=v[e+40>>2];if(e>>>0>(v[f+44>>2]&2147483647)>>>0){fh(f,e)}v[f+40>>2]=e;h=v[f+40>>2];if((h|0)>0){e=v[f+36>>2];h=e+(h<<3)|0;while(1){t[e|0]=w[d|0];v[e+4>>2]=v[d+4>>2];d=d+8|0;e=e+8|0;if(h>>>0>e>>>0){continue}break}}d=v[a+4>>2];e=v[d+44>>2];a:{if((e|0)<0|!(e&2147483647)){break a}e=v[d+36>>2];if((e|0)==(d|0)){t[d+32|0]=0;break a}if(!e){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+4>>2]=f;d=v[f+44>>2]}v[g+12>>2]=c;t[g+8|0]=b;a=v[f+40>>2];b:{if(a>>>0>=(d&2147483647)>>>0){gh(f,g+8|0);break b}d=v[f+36>>2]+(a<<3)|0;v[d+4>>2]=c;t[d|0]=b;v[f+40>>2]=a+1}xa=g+16|0}function JY(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((v[a+268>>2]&2147483647)>>>0>>0){a:{if(!b){break a}d=b<<2;if(!(w[a+256|0]|d>>>0>256)){t[a+256|0]=1;e=a;break a}if(!d){break a}e=v[37696];f=e+12|0;e=(j=f,k=d,l=Ba[v[v[e>>2]+20>>2]](e)|0?29035:63804,m=16608,n=553,i=v[v[f>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+260>>2];d=v[a+264>>2];if((d|0)>0){h=(d<<2)+e|0;g=f;d=e;while(1){v[d>>2]=v[g>>2];g=g+4|0;d=d+4|0;if(h>>>0>d>>>0){continue}break}}b:{if(v[a+268>>2]<0){break b}if((a|0)==(f|0)){t[a+256|0]=0;break b}if(!f){break b}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,f)}v[a+268>>2]=b;v[a+260>>2]=e}e=v[a+264>>2];if((e|0)<(b|0)){d=v[a+260>>2];f=d+(b<<2)|0;d=d+(e<<2)|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+264>>2]=b}function b3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=xa+-64|0;xa=f;if(!(!v[b+8>>2]|(!v[b+4>>2]|y[b>>2]<24))){d=f+8|0;v[d>>2]=0;v[d+4>>2]=0;v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;g=f3(d,b);if(g){a:{a=Ba[v[v[a>>2]+12>>2]](a)|0;if(!pX(66,86,72,83,1,a,c)){break a}kX(v[d+4>>2],a,c);kX(v[d+8>>2],a,c);b:{if(!v[d+4>>2]){break b}while(1){kX(v[v[d+16>>2]+(e<<2)>>2],a,c);e=e+1|0;b=v[d+4>>2];if(e>>>0>>0){continue}break}if(!b){break b}e=0;while(1){b=B(e,24);nX(b+v[d>>2]|0,3,a,c);nX((b+v[d>>2]|0)+12|0,3,a,c);e=e+1|0;if(e>>>0>2]){continue}break}}if(!v[d+8>>2]){break a}e=0;while(1){b=B(e,28);kX(v[(b+v[d+12>>2]|0)+24>>2],a,c);nX(b+v[d+12>>2]|0,3,a,c);nX((b+v[d+12>>2]|0)+12|0,3,a,c);e=e+1|0;if(e>>>0>2]){continue}break}}}e3(d)}xa=f- -64|0;return g|0}function R9(a){var b=0,c=0,d=0,e=0;b=xa-16|0;xa=b;e=(p(a),j(2));c=e&2147483647;a:{if(c>>>0<=1061752794){if(c>>>0<964689920){break a}a=F9(+a);break a}if(c>>>0<=1081824209){d=+a;if(c>>>0<=1075235811){if((e|0)<0){a=C(-E9(d+1.5707963267948966));break a}a=E9(d+-1.5707963267948966);break a}a=F9(-(((e|0)>=0?-3.141592653589793:3.141592653589793)+d));break a}if(c>>>0<=1088565717){if(c>>>0<=1085271519){d=+a;if((e|0)<0){a=E9(d+4.71238898038469);break a}a=C(-E9(d+-4.71238898038469));break a}a=F9(((e|0)<0?6.283185307179586:-6.283185307179586)+ +a);break a}if(c>>>0>=2139095040){a=C(a-a);break a}b:{switch(G9(a,b+8|0)&3){case 0:a=F9(A[b+8>>3]);break a;case 1:a=E9(A[b+8>>3]);break a;case 2:a=F9(-A[b+8>>3]);break a;default:break b}}a=C(-E9(A[b+8>>3]))}xa=b+16|0;return a}function CA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=xa-32|0;xa=b;yA(a,c);d=v[c+16>>2];v[b+16>>2]=d+B(v[a+12>>2],112);v[b+20>>2]=d+B(v[a+44>>2],112);v[b+24>>2]=d+B(v[a+76>>2],112);v[b+28>>2]=d+B(v[a+108>>2],112);v[b>>2]=d+B(v[a+16>>2],112);v[b+4>>2]=d+B(v[a+48>>2],112);v[b+8>>2]=d+B(v[a+80>>2],112);v[b+12>>2]=d+B(v[a+112>>2],112);uA(a,c,b+16|0,b);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){d=v[c+28>>2];a=a+v[d>>2]|0;v[d>>2]=a;d=v[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=v[c+4>>2]+(a<<5)|0;f=v[e+4>>2];d=v[c+20>>2]+(a+g<<5)|0;v[d>>2]=v[e>>2];v[d+4>>2]=f;f=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=f;f=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=f;f=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}xa=b+32|0}function BA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=xa-32|0;xa=b;wA(a,c);d=v[c+16>>2];v[b+16>>2]=d+B(v[a+12>>2],112);v[b+20>>2]=d+B(v[a+44>>2],112);v[b+24>>2]=d+B(v[a+76>>2],112);v[b+28>>2]=d+B(v[a+108>>2],112);v[b>>2]=d+B(v[a+16>>2],112);v[b+4>>2]=d+B(v[a+48>>2],112);v[b+8>>2]=d+B(v[a+80>>2],112);v[b+12>>2]=d+B(v[a+112>>2],112);uA(a,c,b+16|0,b);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){d=v[c+28>>2];a=a+v[d>>2]|0;v[d>>2]=a;d=v[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=v[c+4>>2]+(a<<5)|0;f=v[e+4>>2];d=v[c+20>>2]+(a+g<<5)|0;v[d>>2]=v[e>>2];v[d+4>>2]=f;f=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=f;f=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=f;f=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}xa=b+32|0}function eB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=xa-32|0;xa=b;aB(a);d=v[c+16>>2];v[b+16>>2]=d+B(v[a+12>>2],112);v[b+20>>2]=d+B(v[a+44>>2],112);v[b+24>>2]=d+B(v[a+76>>2],112);v[b+28>>2]=d+B(v[a+108>>2],112);v[b>>2]=d+B(v[a+16>>2],112);v[b+4>>2]=d+B(v[a+48>>2],112);v[b+8>>2]=d+B(v[a+80>>2],112);v[b+12>>2]=d+B(v[a+112>>2],112);YA(a,c,b+16|0,b);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){d=v[c+28>>2];a=a+v[d>>2]|0;v[d>>2]=a;d=v[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=v[c+4>>2]+(a<<5)|0;f=v[e+4>>2];d=v[c+20>>2]+(a+g<<5)|0;v[d>>2]=v[e>>2];v[d+4>>2]=f;f=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=f;f=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=f;f=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}xa=b+32|0}function dB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=xa-32|0;xa=b;_A(a);d=v[c+16>>2];v[b+16>>2]=d+B(v[a+12>>2],112);v[b+20>>2]=d+B(v[a+44>>2],112);v[b+24>>2]=d+B(v[a+76>>2],112);v[b+28>>2]=d+B(v[a+108>>2],112);v[b>>2]=d+B(v[a+16>>2],112);v[b+4>>2]=d+B(v[a+48>>2],112);v[b+8>>2]=d+B(v[a+80>>2],112);v[b+12>>2]=d+B(v[a+112>>2],112);YA(a,c,b+16|0,b);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){d=v[c+28>>2];a=a+v[d>>2]|0;v[d>>2]=a;d=v[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=v[c+4>>2]+(a<<5)|0;f=v[e+4>>2];d=v[c+20>>2]+(a+g<<5)|0;v[d>>2]=v[e>>2];v[d+4>>2]=f;f=v[e+28>>2];v[d+24>>2]=v[e+24>>2];v[d+28>>2]=f;f=v[e+20>>2];v[d+16>>2]=v[e+16>>2];v[d+20>>2]=f;f=v[e+12>>2];v[d+8>>2]=v[e+8>>2];v[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}xa=b+32|0}function qt(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(v[c>>2]-4|0){case 1:break c;case 2:break d;case 0:break e;default:break a}}d=(t[a+36|0]&1?v[a+40>>2]- -64|0:c)+32|0;break b}d=(t[a+36|0]&1?v[a+40>>2]- -64|0:c)+4|0;break b}d=(t[a+36|0]&1?v[a+40>>2]- -64|0:c)+36|0}c=v[d>>2];if(!c){break a}Ba[v[v[b>>2]+8>>2]](b,c)}if(w[a+36|0]&2){c=x[v[a+40>>2]+124>>1]}else{d=v[a+116>>2];c=1;f:{if(d-7>>>0<4294967294){break f}c=x[a+168>>1];if((d|0)==5){break f}c=x[a+148>>1]}}e=c&65535;if(e){f=a+48|0;c=0;while(1){g=v[37393];g:{if(w[a+36|0]&2){d=v[a+40>>2];d=x[d+124>>1]==1?d+120|0:v[v[a+32>>2]+4856>>2]+(v[d+120>>2]<<1)|0;break g}d=GR(f)}Ba[v[v[b>>2]+8>>2]](b,v[v[g+40>>2]+(x[d+(c<<1)>>1]<<2)>>2]);c=c+1|0;if((e|0)!=(c|0)){continue}break}}}function eK(a,b){var c=0,d=0,e=0;a:{b:{c:{d:{e:{f:{b=B(b,20);e=b+v[a+72>>2]|0;switch(v[e+8>>2]){case 1:break d;case 0:break e;case 2:break f;default:break c}}a=v[a+4>>2];Ba[v[v[a>>2]+8>>2]](a,2,23073,8741,431);break a}a=v[a+8>>2];Ba[v[v[a>>2]>>2]](a,v[e>>2]);break b}b=v[e+12>>2];if((b|0)!=-1){while(1){b=v[a+60>>2]+(b<<3)|0;d=v[a+72>>2]+B(v[b>>2],20)|0;c=v[d+4>>2]-1|0;v[d+4>>2]=c;if(!c){eK(a,v[b>>2])}b=v[b+4>>2];if((b|0)!=-1){continue}break}}v[a+52>>2]=v[a+52>>2]-1;break b}c=v[a+4>>2];Ba[v[v[c>>2]+8>>2]](c,2,21893,8741,448);b=v[(b+v[a+72>>2]|0)+12>>2];if((b|0)!=-1){while(1){b=v[a+60>>2]+(b<<3)|0;d=v[a+72>>2]+B(v[b>>2],20)|0;c=v[d+4>>2]-1|0;v[d+4>>2]=c;if(!c){eK(a,v[b>>2])}b=v[b+4>>2];if((b|0)!=-1){continue}break}}v[a+52>>2]=v[a+52>>2]-1}v[e+8>>2]=2}}function SQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+20>>2];a=v[a+28>>2];c=v[a+976>>2];d=v[a+1004>>2];Ba[v[v[d>>2]+16>>2]](d);c=c+24|0;Gy(c);Ey(c);v[a+1172>>2]=0;v[a+1160>>2]=0;v[v[a+976>>2]+1788>>2]=v[c+172>>2];v[a+3140>>2]=b;v[a+3144>>2]=1;if(b){Ba[v[v[b>>2]+16>>2]](b);v[a+3136>>2]=v[v[a+3140>>2]+16>>2]}c=0;d=v[a+36>>2];if(d){g=v[a+24>>2];h=v[v[a+976>>2]+1156>>2];f=a+3120|0;while(1){b=wr(h,40);e=v[a+20>>2];i=v[a+16>>2];v[b+24>>2]=0;v[b+16>>2]=0;v[b+8>>2]=i;v[b+12>>2]=e;e=d-c|0;v[b+32>>2]=e>>>0<1024?e:1024;v[b+28>>2]=(c<<2)+g;v[b>>2]=135004;v[b+20>>2]=f;v[b+24>>2]=1;Ba[v[v[a+3120>>2]+16>>2]](f);v[b+16>>2]=v[v[b+20>>2]+16>>2];Ba[v[v[b>>2]+20>>2]](b);c=c+1024|0;if(d>>>0>c>>>0){continue}break}}b=v[a+3136>>2];Ba[v[v[b>>2]+72>>2]](b,a+3120|0)}function AN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a:{if(x[b+68>>1]<=1){g=v[c+4624>>2];if(!g){break a}c=x[b+34>>1];a=x[a+34>>1];b=0;if(g-1>>>0>=3){i=g&-4;while(1){f=b<<2;e=f+d|0;u[e+2>>1]=c;u[e>>1]=a;e=(f|4)+d|0;u[e+2>>1]=c;u[e>>1]=a;e=(f|8)+d|0;u[e+2>>1]=c;u[e>>1]=a;f=(f|12)+d|0;u[f+2>>1]=c;u[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;u[f+2>>1]=c;u[f>>1]=a;b=b+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}break a}g=v[c+4624>>2];if(!g){break a}c=c+528|0;f=v[b- -64>>2];i=v[v[b+60>>2]+44>>2];a=x[a+34>>1];b=0;while(1){e=(b<<2)+d|0;u[e>>1]=a;h=e;e=v[(c+(b<<6)|0)+52>>2];u[h+2>>1]=x[f+((w[(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 tU(a){a=a|0;var b=0,c=0;v[a>>2]=140372;a:{if(!v[a+480>>2]){break a}b=v[a+424>>2];if(!b){break a}Ba[v[v[b>>2]>>2]](b)}b=v[a+516>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b:{if(!w[a+244|0]){break b}b=v[a+240>>2];if(!b){break b}hU(v[a+248>>2],b)}v[a+240>>2]=0;c:{if(!w[a+256|0]){break c}b=v[a+252>>2];if(!b){break c}hU(v[a+260>>2],b)}v[a+252>>2]=0;b=v[a+128>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+120>>2];if(!b){break d}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+116>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+108>>2];if(!b){break e}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+104>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=v[a+96>>2];if(!b){break f}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function SO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;a:{if(!b){break a}f=v[a>>2];e=B(f,v[a+16>>2]);if(e>>>0>=b>>>0){break a}g=a+12|0;h=B(v[a+4>>2],f);if(!h){while(1){v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;c=v[a+16>>2];b:{if(c>>>0>=(v[a+20>>2]&2147483647)>>>0){LO(g,d);break b}c=v[a+12>>2]+B(c,12)|0;v[c>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[a+16>>2]=v[a+16>>2]+1}e=e+f|0;if(e>>>0>>0){continue}break a}}while(1){v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;c=v[37696]+12|0;j=d,k=Ba[v[v[c>>2]+8>>2]](c,h,24422,18584,60)|0,v[j>>2]=k;c=v[a+16>>2];c:{if(c>>>0>=(v[a+20>>2]&2147483647)>>>0){LO(g,d);break c}i=v[d+4>>2];c=v[a+12>>2]+B(c,12)|0;v[c>>2]=v[d>>2];v[c+4>>2]=i;v[c+8>>2]=v[d+8>>2];v[a+16>>2]=v[a+16>>2]+1}e=e+f|0;if(e>>>0>>0){continue}break}}xa=d+16|0}function $3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=xa-16|0;xa=d;t[d+15|0]=82;t[d+14|0]=84;t[d+13|0]=82;t[d+12|0]=69;Ba[v[v[b>>2]>>2]](b,d+15|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+14|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+13|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+12|0,1)|0;kX(2,c,b);nX(a+112|0,4,c,b);nX(a+128|0,4,c,b);nX(a+144|0,4,c,b);nX(a+160|0,4,c,b);kX(v[a+176>>2],c,b);kX(v[a+180>>2],c,b);kX(v[a+184>>2],c,b);kX(v[a+188>>2],c,b);kX(v[a+192>>2],c,b);kX(0,c,b);if(v[a+192>>2]){while(1){e=B(f,112);nX(e+v[a+200>>2]|0,4,c,b);nX((v[a+200>>2]+e|0)+16|0,4,c,b);nX((v[a+200>>2]+e|0)+32|0,4,c,b);nX((v[a+200>>2]+e|0)+48|0,4,c,b);nX((v[a+200>>2]+e|0)- -64|0,4,c,b);nX((v[a+200>>2]+e|0)+80|0,4,c,b);nX((v[a+200>>2]+e|0)+96|0,4,c,b);f=f+1|0;if(f>>>0>2]){continue}break}}xa=d+16|0}function ZL(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=(b<<3)+8|0;if(g){h=v[37696]+12|0;h=Ba[v[v[h>>2]+8>>2]](h,g,24422,5684,742)|0}g=b<<4;if(g){i=v[37696]+12|0;i=Ba[v[v[i>>2]+8>>2]](i,g,24422,5684,743)|0}g=0;f=b<<2;if(f){j=v[37696]+12|0;j=Ba[v[v[j>>2]+8>>2]](j,f,24422,5684,744)|0;k=v[37696]+12|0;k=Ba[v[v[k>>2]+8>>2]](k,f,24422,5684,745)|0}v[a+16>>2]=b;v[a+12>>2]=k;v[a+8>>2]=j;v[a+4>>2]=i;v[a>>2]=h;if(b){m=v[c+4>>2];n=v[c+8>>2];o=v[c>>2];while(1){f=g<<2;c=v[f+d>>2];v[f+j>>2]=v[(c<<2)+e>>2];v[f+k>>2]=c;l=(g<<3)+h|0;f=c<<3;c=f+o|0;v[l>>2]=v[c>>2];v[l+4>>2]=v[c+4>>2];c=(g<<4)+i|0;l=f+n|0;v[c>>2]=v[l>>2];v[c+8>>2]=v[l+4>>2];f=f+m|0;v[c+4>>2]=v[f>>2];v[c+12>>2]=v[f+4>>2];g=g+1|0;if((g|0)!=(b|0)){continue}break}}v[(b<<3)+h>>2]=-1;return a}function H3(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=v[a+8204>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!(w[a+8192|0]|c>>>0>8192)){t[a+8192|0]=1;d=a;break a}if(!c){break a}d=v[37696];e=d+12|0;d=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?39207:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+8200>>2];if((c|0)>0){g=(c<<3)+d|0;e=v[a+8196>>2];c=d;while(1){h=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=h;e=e+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+8200>>2]}e=v[b+4>>2];c=(c<<3)+d|0;v[c>>2]=v[b>>2];v[c+4>>2]=e;b:{if(v[a+8204>>2]<0){break b}b=v[a+8196>>2];if((b|0)==(a|0)){t[a+8192|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8204>>2]=f;v[a+8196>>2]=d;v[a+8200>>2]=v[a+8200>>2]+1}function H8(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);e=xa+-64|0;xa=e;Ba[v[v[a>>2]+76>>2]](e+32|0,a);k=z[e+40>>2];j=z[c+8>>2];g=C(j+j);j=z[e+32>>2];f=z[c>>2];h=C(f+f);f=z[c+4>>2];i=C(f+f);f=z[e+36>>2];m=C(C(k*g)+C(C(j*h)+C(i*f)));l=z[e+44>>2];n=C(C(l*l)+C(-.5));z[e+24>>2]=C(C(k*m)+C(C(g*n)+C(l*C(C(j*i)-C(h*f)))))+z[e+56>>2];z[e+20>>2]=z[e+52>>2]+C(C(f*m)+C(C(i*n)+C(l*C(C(k*h)-C(g*j)))));z[e+16>>2]=z[e+48>>2]+C(C(j*m)+C(C(h*n)+C(l*C(C(f*g)-C(i*k)))));g=z[b+8>>2];g=C(g+g);h=z[b>>2];h=C(h+h);i=z[b+4>>2];i=C(i+i);m=C(C(k*g)+C(C(j*h)+C(f*i)));z[e+8>>2]=C(k*m)+C(C(g*n)+C(l*C(C(j*i)-C(h*f))));z[e+4>>2]=C(f*m)+C(C(i*n)+C(l*C(C(k*h)-C(g*j))));z[e>>2]=C(j*m)+C(C(h*n)+C(l*C(C(f*g)-C(i*k))));F8(a,e,e+16|0,d);xa=e- -64|0}function xW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=0;e=xa-16|0;xa=e;b=v[b+4>>2];i=z[b+56>>2];j=z[b+52>>2];k=z[b+72>>2];r=b- -64|0;l=z[r>>2];m=z[b+68>>2];n=z[b+88>>2];o=z[b+80>>2];p=z[b+84>>2];q=z[b+48>>2];f=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];v[e+12>>2]=0;z[e+8>>2]=C(n*f)+C(C(o*g)+C(h*p));z[e+4>>2]=C(k*f)+C(C(l*g)+C(h*m));z[e>>2]=C(i*f)+C(C(q*g)+C(h*j));c=IV(b,e);v[d>>2]=c;i=z[r>>2];j=z[b+80>>2];k=z[b+84>>2];l=z[b+52>>2];m=z[b+68>>2];n=z[b+88>>2];c=v[b+152>>2]+B(c,12)|0;f=z[c+8>>2];o=z[b+56>>2];g=z[c>>2];p=z[b+72>>2];h=z[c+4>>2];q=z[b+48>>2];v[a+12>>2]=0;z[a+8>>2]=C(n*f)+C(C(o*g)+C(h*p));z[a+4>>2]=C(k*f)+C(C(l*g)+C(h*m));z[a>>2]=C(j*f)+C(C(q*g)+C(h*i));xa=e+16|0}function hV(a,b,c,d){var e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0);g=xa-32|0;xa=g;eV(g+8|0,c,d,C(1));e=z[g+24>>2];f=z[g+20>>2];h=z[g+8>>2];i=z[g+12>>2];j=z[g+16>>2];k=z[g+28>>2];z[a+8>>2]=C(j+k)*C(.5);z[a+4>>2]=C(i+e)*C(.5);z[a>>2]=C(h+f)*C(.5);z[b+8>>2]=C(k-j)*C(.5);z[b+4>>2]=C(e-i)*C(.5);z[b>>2]=C(f-h)*C(.5);e=C(34028234663852886e22);a:{b:{switch(v[c>>2]+1|0){case 1:e=C(z[c+4>>2]*C(.75));break a;case 3:e=C(z[c+4>>2]*C(.75));break a;case 4:e=z[c+4>>2];f=z[c+8>>2];e=e>2];e=C((e>2];f=z[c+4>>2];h=z[c+8>>2];f=f>2]- -64>>2]*(e>2]<<3,1),v[a>>2],v[a+8>>2]<<2);g=v[a>>2];c=v[b+16>>2];a:{if(!(g>>>0>=c>>>0&c+v[b+20>>2]>>>0>g>>>0)){if(!g){break a}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,g);break a}k=v[b+4>>2];i=v[b+8>>2];f=i;while(1){c=h;h=c+1|0;e=f;f=e-1|0;d=(f<<2)+k|0;if(y[d>>2]>>0){continue}break}b:{if(e>>>0>=i>>>0){break b}f=c&3;if(f){h=0;while(1){v[d>>2]=v[v[b+4>>2]+(e<<2)>>2];e=e+1|0;d=d+4|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}if(c-1>>>0<3){break b}while(1){c=e<<2;v[d>>2]=v[c+v[b+4>>2]>>2];v[d+4>>2]=v[(c+v[b+4>>2]|0)+4>>2];v[d+8>>2]=v[(c+v[b+4>>2]|0)+8>>2];v[d+12>>2]=v[(c+v[b+4>>2]|0)+12>>2];d=d+16|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}v[b+8>>2]=i-1}v[a>>2]=j;v[a+8>>2]=v[a+8>>2]<<1}function jm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;v[a+12>>2]=121812;v[a>>2]=121708;f=xa-16|0;xa=f;c=v[37393];if(v[c+8>>2]){while(1){b=v[v[c+4>>2]+(g<<2)>>2]+16|0;d=xa-16|0;xa=d;if(x[a+52>>1]!=65535){e=x[a+52>>1];v[d+12>>2]=2;u[d+8>>1]=e;e=v[b+4772>>2];a:{if(e>>>0>=(v[b+4776>>2]&2147483647)>>>0){Ou(b+4768|0,d+8|0);break a}h=v[d+12>>2];e=v[b+4768>>2]+(e<<3)|0;v[e>>2]=v[d+8>>2];v[e+4>>2]=h;v[b+4772>>2]=v[b+4772>>2]+1}}xa=d+16|0;g=g+1|0;if(g>>>0>2]){continue}break}}b=x[a+52>>1];b:{if((b|0)==65535){break b}v[v[c+40>>2]+(b<<2)>>2]=0;v[f+12>>2]=b;if((b|0)==(v[c+24>>2]-1|0)){v[c+24>>2]=b;break b}d=v[c+32>>2];if(d>>>0>=(v[c+36>>2]&2147483647)>>>0){pn(c+28|0,f+12|0);break b}v[v[c+28>>2]+(d<<2)>>2]=b;v[c+32>>2]=v[c+32>>2]+1}xa=f+16|0;return a|0}function xO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=v[a+312>>2];h=v[e+964>>2];d=h&2147483647;a:{if(!d){break a}g=v[e+960>>2];a=0;c=1;while(1){b=v[g+(a<<2)>>2];if(!b){c=c+1|0;a=a+1|0;if((d|0)!=(a|0)){continue}break a}break}f=Raa(b)|a<<5;b=b&b-1;b:{if(b){break b}c=c>>>0>d>>>0?c:d;while(1){a=a+1|0;if(d>>>0<=a>>>0){b=0;a=c;break b}b=v[g+(a<<2)>>2];if(!b){continue}break}}if((f|0)==-1){break a}g=v[e+312>>2]-1|0;i=v[e+320>>2];j=v[e+332>>2];while(1){c=v[(f>>>i<<2)+j>>2]+B(f&g,80)|0;v[c+32>>2]=0;v[c+8>>2]=v[c+8>>2]&-5;if(!b){break a}f=Raa(b)|a<<5;b=b-1&b;c:{if(b){break c}c=a+1|0;c=c>>>0>d>>>0?c:d;while(1){a=a+1|0;if(d>>>0<=a>>>0){b=0;a=c;break c}b=v[v[e+960>>2]+(a<<2)>>2];if(!b){continue}break}}if((f|0)!=-1){continue}break}}J9(v[e+960>>2],0,h<<2)}function Gu(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=xa-288|0;xa=d;v[b+268>>2]=v[b+268>>2]&-100663297;a:{if(!(w[(v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0)+8|0]&8)){t[d+264|0]=1;v[d+272>>2]=0;v[d+276>>2]=64;e=d+8|0;v[d+268>>2]=e;f=a;a=v[a+2416>>2];OP(f,b+16|0,a?a+272|0:e,c);f=v[(a?a+536|0:d+272|0)>>2];if(f){g=v[(a?a+532|0:d+268|0)>>2];h=v[b>>2]+4816|0;c=0;while(1){a=v[(c<<2)+g>>2];b=a-16|0;e=a-12|0;a=v[e>>2];if(a&268435456){Zu(b);v[d+284>>2]=b;Pg(h,d+284|0);a=v[e>>2]&-268435457;v[e>>2]=a}if((a&251658240)==16777216){v[e>>2]=a&1073741823;v[b>>2]=0}bu(b);c=c+1|0;if((f|0)!=(c|0)){continue}break}}a=v[d+276>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[d+268>>2];if((a|0)==(d+8|0)|!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a);break a}Hu(b)}xa=d+288|0}function em(a,b,c){a=a|0;b=b|0;c=C(c);var d=0,e=0;a:{b:{c:{d:{a=a+8|0;e=v[a+4>>2];switch((e>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}jF(a+12|0,b,c);break a}d=v[a+8>>2];e:{f:{if(!(e&4194304)){if(!d){d=Qu(v[a>>2],e>>>24&15);v[a+8>>2]=d;if(!d){break e}}z[d+300>>2]=z[a+216>>2];z[d+324>>2]=z[a+240>>2];z[d+304>>2]=z[a+220>>2];z[d+328>>2]=z[a+244>>2];z[d+308>>2]=z[a+224>>2];z[d+332>>2]=z[a+248>>2];z[d+312>>2]=z[a+228>>2];z[d+336>>2]=z[a+252>>2];z[d+316>>2]=z[a+232>>2];z[d+340>>2]=z[a+256>>2];z[d+320>>2]=z[a+236>>2];z[d+344>>2]=z[a+260>>2];break f}if(d){break f}d=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=d}z[((b<<2)+d|0)+324>>2]=c;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|4194304;break a}Qu(v[a>>2],w[a+7|0]&15);L()}}function dm(a,b,c){a=a|0;b=b|0;c=C(c);var d=0,e=0;a:{b:{c:{d:{a=a+8|0;e=v[a+4>>2];switch((e>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}iF(a+12|0,b,c);break a}d=v[a+8>>2];e:{f:{if(!(e&4194304)){if(!d){d=Qu(v[a>>2],e>>>24&15);v[a+8>>2]=d;if(!d){break e}}z[d+300>>2]=z[a+216>>2];z[d+324>>2]=z[a+240>>2];z[d+304>>2]=z[a+220>>2];z[d+328>>2]=z[a+244>>2];z[d+308>>2]=z[a+224>>2];z[d+332>>2]=z[a+248>>2];z[d+312>>2]=z[a+228>>2];z[d+336>>2]=z[a+252>>2];z[d+316>>2]=z[a+232>>2];z[d+340>>2]=z[a+256>>2];z[d+320>>2]=z[a+236>>2];z[d+344>>2]=z[a+260>>2];break f}if(d){break f}d=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=d}z[((b<<2)+d|0)+300>>2]=c;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|4194304;break a}Qu(v[a>>2],w[a+7|0]&15);L()}}function UR(a,b,c,d){var e=0,f=0;e=v[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=x[v[a+48>>2]+2>>1];OR(a);PR(a,e,((f|0)==1)<<3,1,b,0,c)}b=v[v[a+48>>2]+16>>2];if(!(!b|v[b+12>>2]!=v[v[v[a+4>>2]+40>>2]+1088>>2])){u[b+10>>1]=x[b+10>>1]|16}e=v[a+44>>2];if(!(e&10485760)){break b}b=v[v[v[a+4>>2]+40>>2]+2168>>2];c:{if(e&8388608){BJ(b,a);break c}zJ(b,a)}e=v[a+44>>2]&-1572865}v[a+44>>2]=e&-98305|65536;b=v[v[a+28>>2]+4>>2];c=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;e=v[a+48>>2];a=x[e+2>>1]-1|0;u[e+2>>1]=a;d:{if(a&65535?d:1){a=v[c+100>>2];v[a+152>>2]=v[a+152>>2]-1;if(!b){break d}a=v[b+100>>2];v[a+152>>2]=v[a+152>>2]-1;return 1}f=1;if(b){break a}}pH(c);f=0}return f}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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);o=z[d>>2];k=z[d+8>>2];q=z[c+24>>2];i=C(q-z[d+24>>2]);l=C(i+i);r=z[c+16>>2];i=C(r-z[d+16>>2]);i=C(i+i);s=z[c+20>>2];m=C(s-z[d+20>>2]);j=C(m+m);m=z[d+4>>2];p=C(o*C(C(k*l)+C(C(o*i)+C(j*m))));n=i;i=z[d+12>>2];n=C(p+C(C(n*C(C(i*i)+C(-.5)))-C(i*C(C(m*l)-C(j*k)))));l=z[a+4>>2];j=C(n-l);b=j<=z[e>>2];a:{if(!b){break a}a=v[g+4096>>2];if(a>>>0>63){break a}v[g+4096>>2]=a+1;a=(a<<6)+g|0;v[a+52>>2]=-1;z[a+12>>2]=j;j=C(o+o);p=C(i+i);n=C(C(j*k)-C(m*p));z[a+8>>2]=n;k=C(C(k*p)+C(j*m));z[a+4>>2]=k;i=C(C(o*j)+C(C(i*p)+C(-1)));z[a>>2]=i;z[a+24>>2]=q-C(l*n);z[a+20>>2]=s-C(k*l);z[a+16>>2]=r-C(i*l)}return b|0}function MC(a){var b=0,c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);a:{b=v[a+32>>2];if(!b){break a}d=z[a+8>>2];e=z[a+4>>2];f=z[a>>2];while(1){c=a;a=b;b:{if(z[a>>2]>f|z[a+4>>2]>e|(z[a+8>>2]>d|z[c+16>>2]>z[a+16>>2])){break b}if(z[c+20>>2]>z[a+20>>2]){break b}if(!(z[c+24>>2]>z[a+24>>2])){break a}}c=v[a+40>>2];f=z[c>>2];e=z[c+4>>2];d=z[c+8>>2];b=v[a+36>>2];g=z[b>>2];h=z[b+4>>2];i=z[b+8>>2];j=z[b+12>>2];k=z[c+12>>2];z[a+12>>2]=ji?i:d;z[a+8>>2]=d;e=e>h?h:e;z[a+4>>2]=e;f=f>g?g:f;z[a>>2]=f;g=z[c+16>>2];h=z[b+20>>2];i=z[c+20>>2];j=z[b+24>>2];k=z[c+24>>2];l=z[b+16>>2];m=z[b+28>>2];n=z[c+28>>2];z[a+28>>2]=m>n?m:n;z[a+24>>2]=j>k?j:k;z[a+20>>2]=h>i?h:i;z[a+16>>2]=g>2];if(b){continue}break}}}function GM(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=v[37696];d=c+12|0;c=(i=d,j=B(b,48)+131|0,k=Ba[v[v[c>>2]+20>>2]](c)|0?46647:63804,l=16608,m=553,h=v[v[d>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0);if(!c){break a}e=c+131&-128;v[e-4>>2]=e-c}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,48)+e|0;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];f=v[d+32>>2];v[c+28>>2]=v[d+28>>2];v[c+32>>2]=f;f=v[d+40>>2];v[c+36>>2]=v[d+36>>2];v[c+40>>2]=f;v[c+44>>2]=v[d+44>>2];d=d+48|0;c=c+48|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-v[d-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=e}function w9(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;g=v[a+72>>2];a:{if(w[a+76|0]){break a}if((b|0)==-1){while(1){if(w[a+76|0]){break a}if((g|0)==v[a+72>>2]){continue}break a}}h=+qa();c=h/1e3;b:{if(D(c)<0x8000000000000000){f=D(c)>=1?~~(c>0?F(H(c*2.3283064365386963e-10),4294967295):I((c-+(~~c>>>0>>>0))*2.3283064365386963e-10))>>>0:0;d=~~c>>>0;break b}f=-2147483648;d=0}v[e>>2]=d;c=(h-(+(Saa(d,f,1e3,0)>>>0)+ +(Aa|0)*4294967296))*1e3;c:{if(D(c)<2147483648){d=~~c;break c}d=-2147483648}v[e+4>>2]=d;d=(b>>>0)/1e3|0;f=v[e+4>>2]+B(B(d,-1e3)+b|0,1e3)|0;b=(f>>>0)/1e6|0;v[e+8>>2]=b+(d+v[e>>2]|0);v[e+12>>2]=B(f+B(b,-1e6)|0,1e3);while(1){if(w[a+76|0]){break a}if((g|0)==v[a+72>>2]){continue}break}}b=1;xa=e+16|0;return w[a+76|0]?b:v[a+72>>2]!=(g|0)}function hB(a,b){var c=0,d=0;v[a+11824>>2]=b;v[a>>2]=0;v[a+12132>>2]=0;v[a+12120>>2]=0;v[a+12112>>2]=0;v[a+12116>>2]=0;v[a+12104>>2]=0;v[a+12096>>2]=0;v[a+12088>>2]=0;v[a+12092>>2]=0;v[a+11876>>2]=0;v[a+11880>>2]=0;v[a+11868>>2]=0;v[a+11852>>2]=b;v[a+11892>>2]=0;v[a+11896>>2]=0;c=a+11828|0;v[c>>2]=0;v[c+4>>2]=0;c=a+11836|0;v[c>>2]=0;v[c+4>>2]=0;v[a+11844>>2]=0;c=a+11856|0;v[c>>2]=0;v[c+4>>2]=0;v[a+11848>>2]=b;b=a+11900|0;v[b>>2]=0;v[b+4>>2]=0;c=a+11908|0;v[c>>2]=0;v[c+4>>2]=0;c=a+11916|0;v[c>>2]=0;v[c+4>>2]=0;v[a+11924>>2]=0;J9(a+11976|0,0,96);d=a+12164|0;v[d>>2]=0;v[d+4>>2]=0;d=a+12156|0;v[d>>2]=0;v[d+4>>2]=0;d=a+12148|0;v[d>>2]=0;v[d+4>>2]=0;v[a+12140>>2]=0;v[a+12144>>2]=0;Aw(c,512);if(!(v[b>>2]&2147483520)){Aw(a+11892|0,128)}return a}function Na(a){a=a|0;var b=0,c=0,d=0;d=a<<6;c=maa((a&67108863)!=(a|0)?-1:d);a:{if(!a){break a}b=c;if(a&1){v[c+16>>2]=0;v[c+20>>2]=0;u[c+12>>1]=0;v[c+8>>2]=-1;v[c>>2]=0;v[c+4>>2]=0;v[c+48>>2]=0;v[c+40>>2]=2139095039;v[c+44>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+32>>2]=0;v[c+36>>2]=0;b=c- -64|0}if(!(a-1&67108863)){break a}a=c+d|0;while(1){v[b+16>>2]=0;v[b+20>>2]=0;u[b+12>>1]=0;v[b+8>>2]=-1;v[b>>2]=0;v[b+4>>2]=0;v[b+64>>2]=0;v[b+68>>2]=0;v[b+48>>2]=0;v[b+40>>2]=2139095039;v[b+44>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+80>>2]=0;v[b+84>>2]=0;u[b+76>>1]=0;v[b+72>>2]=-1;v[b+88>>2]=0;v[b+92>>2]=0;v[b+96>>2]=0;v[b+100>>2]=0;v[b+104>>2]=2139095039;v[b+108>>2]=0;v[b+112>>2]=0;b=b+128|0;if((a|0)!=(b|0)){continue}break}}return c|0}function eP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=xa-48|0;xa=f;h=f+8|0;b=v[v[a+976>>2]+1024>>2];Ba[v[v[b>>2]+84>>2]](h,b);j=(v[a+2360>>2]&8)>>>3|0;b=xa-32|0;xa=b;g=v[a+2168>>2];c=v[v[g>>2]+2188>>2];a:{if(!c){break a}u[b+24>>1]=0;u[b+16>>1]=0;if(!(Ba[v[v[c>>2]+8>>2]](c,b+28|0,b+16|0,b+24|0)|0)){break a}while(1){i=v[b+28>>2];e=v[v[v[g+108>>2]>>2]+(i<<2)>>2];d=x[b+24>>1];if((d&3)==3){d=d&65534;u[b+24>>1]=d}u[b+8>>1]=d;v[b+12>>2]=i;u[b+10>>1]=x[b+16>>1];if(!((yJ(g,e,b+8|0,1,h,j)|0)!=(e|0)|w[e+24|0])){VR(e,1)}if(Ba[v[v[c>>2]+8>>2]](c,b+28|0,b+16|0,b+24|0)|0){continue}break}}xa=b+32|0;b=v[a+2168>>2];v[b+28>>2]=v[b+20>>2];b=v[a+1012>>2];Ba[v[v[b>>2]+40>>2]](b);v[a+1092>>2]=v[a+1092>>2]+1;v[a+1088>>2]=v[a+1088>>2]+1&2147483647;xa=f+48|0}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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<4;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?41107:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=(c<<4)+e|0;d=v[a>>2];c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;g=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=g;d=d+16|0;c=c+16|0;if(h>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<4)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;b=a;a=v[a+4>>2];v[b+4>>2]=a+1;return(a<<4)+e|0}function IP(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;if(c){while(1){j=v[(i<<2)+b>>2]+48|0;a:{b:{f=v[a+2384>>2];g=v[f+12>>2]+B(v[f+8>>2],12)|0;h=v[g+4>>2];if(h){v[g+4>>2]=v[h>>2];break b}c:{d:{h=v[g+8>>2];if((h|0)==v[f>>2]){break d}k=v[f+4>>2];v[g+8>>2]=h+1;g=v[g>>2];if(!g){break d}h=g+B(h,k)|0;break c}h=NO(f)}if(h){break b}g=0;break a}g=$R(h,d,j)}f=((v[j+68>>2]<<2)+a|0)+2676|0;v[f>>2]=v[f>>2]+1;f=v[a+1012>>2];Ba[v[v[f>>2]+16>>2]](f,g+12|0,v[g+32>>2]);if(e){f=B(i,24)+e|0;g=v[v[a+1140>>2]+4>>2]+B(v[g+8>>2]&2147483647,24)|0;z[f>>2]=z[g>>2];z[f+4>>2]=z[g+4>>2];z[f+8>>2]=z[g+8>>2];z[f+12>>2]=z[g+12>>2];z[f+16>>2]=z[g+16>>2];z[f+20>>2]=z[g+20>>2]}f=v[v[a+976>>2]+1024>>2];Ba[v[v[f>>2]+44>>2]](f,j+32|0);i=i+1|0;if((i|0)!=(c|0)){continue}break}}}function mN(a){a=a|0;var b=0,c=0,d=0,e=C(0),f=C(0),g=0,h=0,i=C(0),j=C(0),k=C(0),l=C(0);c=v[a+48>>2];e=z[c+56>>2];f=z[c+60>>2];i=z[c+52>>2];j=z[c+88>>2];k=z[c+84>>2];l=z[c+100>>2];d=v[c+368>>2];b=v[d>>2];if(b){v[d>>2]=v[b>>2]}if(!b){b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?26947:63804;d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,12195,d,19395,82)|0;b=d+19&-16;v[b-4>>2]=b-d;b=hB(b,v[c+372>>2])}c=b+11856|0;v[c>>2]=0;v[c+4>>2]=0;if(v[a+32>>2]){e=e>f?f:e;c=0;while(1){g=v[v[a+28>>2]+(c<<2)>>2];d=v[a+56>>2];h=v[a+48>>2];Ba[v[v[g>>2]+148>>2]](g,z[d+92>>2],i,z[d+96>>2],e,v[a+52>>2],b,l,k,j,v[a+36>>2],v[a+40>>2],v[a+44>>2]+11836|0,v[h+168>>2],v[d+80>>2],z[h+612>>2]);c=c+1|0;if(c>>>0>2]){continue}break}}a=v[v[a+48>>2]+368>>2];v[b>>2]=v[a>>2];v[a>>2]=b}function bq(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((v[a+204>>2]&2147483647)>>>0>>0){a:{if(!b){break a}c=B(b,24);if(!(w[a+192|0]|c>>>0>192)){t[a+192|0]=1;f=a;break a}if(!c){break a}d=v[37696];f=d+12|0;f=(i=f,j=c,k=Ba[v[v[d>>2]+20>>2]](d)|0?54339:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a+196>>2];c=v[a+200>>2];if((c|0)>0){g=B(c,24)+f|0;e=d;c=f;while(1){z[c>>2]=z[e>>2];z[c+4>>2]=z[e+4>>2];z[c+8>>2]=z[e+8>>2];z[c+12>>2]=z[e+12>>2];z[c+16>>2]=z[e+16>>2];z[c+20>>2]=z[e+20>>2];e=e+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}}b:{if(v[a+204>>2]<0){break b}if((a|0)==(d|0)){t[a+192|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+204>>2]=b;v[a+196>>2]=f}v[a+200>>2]=b}function Z4(a,b){var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);c=xa-32|0;xa=c;a:{if(!b){v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=1065353216;v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;break a}b:{if((Ba[v[v[b>>2]+24>>2]](b)|0)!=1){if((Ba[v[v[b>>2]+24>>2]](b)|0)!=2){break b}}Ba[v[v[b>>2]+112>>2]](a,b);break a}Ba[v[v[b>>2]+76>>2]](c,b);d=z[c+20>>2];e=z[c+24>>2];f=z[c+16>>2];h=z[c>>2];i=z[c+4>>2];j=z[c+8>>2];g=z[c+12>>2];z[a+12>>2]=g;z[a+8>>2]=-j;z[a+4>>2]=-i;z[a>>2]=-h;e=C(e*C(-2));f=C(f*C(-2));d=C(d*C(-2));k=C(C(j*e)+C(C(h*f)+C(i*d)));l=C(C(g*g)+C(-.5));z[a+24>>2]=C(j*k)+C(C(e*l)-C(g*C(C(h*d)-C(f*i))));z[a+20>>2]=C(i*k)+C(C(d*l)-C(g*C(C(j*f)-C(e*h))));z[a+16>>2]=C(h*k)+C(C(f*l)-C(g*C(C(i*e)-C(d*j))))}xa=c+32|0}function dE(a,b){var c=0,d=0,e=0,f=0;a:{b:{c:{d:{d=B(b,24)+24|0;e:{f:{if(d){e=v[37696]+12|0;e=Ba[v[v[e>>2]+8>>2]](e,d,24422,10409,152)|0;d=B(b,44);if(d){break f}a=1;f=0;if(!e){break b}break e}d=B(b,44);f=0;if(!d){break b}}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,d,24422,10409,153)|0;d=J9(c,0,d);if(d?e:0){break c}if(!e){break d}a=!d}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e);f=0;if(a){break b}break a}if(d){break a}return 0}c=v[a+8>>2];if(c){I9(e,c,B(v[a>>2],24))}c=v[a+12>>2];if(c){I9(d,c,B(v[a>>2],44))}v[a+4>>2]=b;c=v[a+8>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+8>>2]=0;c=v[a+12>>2];if(c){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+12>>2]=d;v[a+8>>2]=e;f=1}return f}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,c);return 0}function QU(a,b,c){var d=0,e=0,f=0;a:{b:{c:{d=x[a+4>>1]-1|0;switch(d|0){case 1:break b;case 0:break c;default:break a}}t[a+7|0]=0;u[a+4>>1]=0;v[a>>2]=0;return}d=1-b<<2;b=v[a>>2];d=v[d+b>>2];if(w[a+6|0]){Ba[v[v[c>>2]+4>>2]](c,b,8)}v[a>>2]=d;v[a+4>>2]=16842753;return}u[a+4>>1]=d;e=v[a>>2];f=e+(b<<2)|0;b=d&65535;v[f>>2]=v[(b<<2)+e>>2];if(!w[a+6|0]){b=b-1|0;b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=I9(Ba[v[v[c>>2]>>2]](c,((b>>>16|b)<<2)+4|0)|0,v[a>>2],x[a+4>>1]<<2);if(w[a+6|0]){Ba[v[v[c>>2]+4>>2]](c,v[a>>2],0)}t[a+6|0]=1;v[a>>2]=b;return}d:{if((Uaa(b)|0)!=1){break d}if(Ba[v[v[c>>2]+8>>2]](c,b<<1,b)|0){break d}d=I9(Ba[v[v[c>>2]>>2]](c,b<<2)|0,v[a>>2],x[a+4>>1]<<2);if(w[a+6|0]){Ba[v[v[c>>2]+4>>2]](c,v[a>>2],b<<3)}t[a+6|0]=1;v[a>>2]=d}}function KK(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{c=v[a>>2];if(c){a=v[c+16>>2];if(!(a>>>0<=b>>>0&a+v[c+20>>2]>>>0>b>>>0)){if(!b){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b);return}i=v[c+4>>2];f=v[c+8>>2];g=f;while(1){h=e;e=e+1|0;d=g;g=d-1|0;a=(g<<2)+i|0;if(y[a>>2]>>0){continue}break}b:{if(d>>>0>=f>>>0){break b}b=h&3;if(b){e=0;while(1){v[a>>2]=v[v[c+4>>2]+(d<<2)>>2];d=d+1|0;a=a+4|0;e=e+1|0;if((b|0)!=(e|0)){continue}break}}if(h-1>>>0<3){break b}while(1){b=d<<2;v[a>>2]=v[b+v[c+4>>2]>>2];v[a+4>>2]=v[(b+v[c+4>>2]|0)+4>>2];v[a+8>>2]=v[(b+v[c+4>>2]|0)+8>>2];v[a+12>>2]=v[(b+v[c+4>>2]|0)+12>>2];a=a+16|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}v[c+8>>2]=f-1;return}if(!b){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}}function yE(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0),p=C(0);b=xa-48|0;xa=b;g=1;a:{if(!(v[c+40>>2]&x[a+12>>1])){break a}n=v[c>>2];if(!v[n+588>>2]){break a}k=z[c+20>>2];e=z[c+36>>2];g=v[a+4>>2];f=z[g+108>>2];h=z[c+24>>2];i=z[c+32>>2];j=z[g+104>>2];l=z[c+16>>2];o=z[c+28>>2];d=z[g+112>>2];m=z[c+12>>2];p=z[g+100>>2];v[b+28>>2]=0;z[b+32>>2]=d*d;d=C(f-e);d=C(d+d);e=C(p-o);e=C(e+e);f=C(j-i);f=C(f+f);i=C(C(k*d)+C(C(m*e)+C(l*f)));j=C(C(h*h)+C(-.5));z[b+24>>2]=C(k*i)+C(C(d*j)-C(h*C(C(m*f)-C(e*l))));z[b+20>>2]=C(l*i)+C(C(f*j)-C(h*C(C(k*e)-C(d*m))));z[b+16>>2]=C(m*i)+C(C(e*j)-C(h*C(C(l*d)-C(f*k))));c=v[c+4>>2];g=fD(v[c+12>>2],v[c+8>>2],n,b+16|0,v[a+8>>2])}xa=b+48|0;return g|0}function lW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0;d=xa-16|0;xa=d;b=v[b+48>>2];h=z[b+56>>2];i=z[b+52>>2];j=z[b+72>>2];q=b- -64|0;k=z[q>>2];l=z[b+68>>2];m=z[b+88>>2];n=z[b+80>>2];o=z[b+84>>2];p=z[b+48>>2];e=z[c+8>>2];f=z[c>>2];g=z[c+4>>2];v[d+12>>2]=0;z[d+8>>2]=C(m*e)+C(C(n*f)+C(g*o));z[d+4>>2]=C(j*e)+C(C(k*f)+C(g*l));z[d>>2]=C(h*e)+C(C(p*f)+C(g*i));c=IV(b,d);h=z[q>>2];i=z[b+80>>2];j=z[b+84>>2];k=z[b+52>>2];l=z[b+68>>2];m=z[b+88>>2];c=v[b+152>>2]+B(c,12)|0;e=z[c+8>>2];n=z[b+56>>2];f=z[c>>2];o=z[b+72>>2];g=z[c+4>>2];p=z[b+48>>2];v[a+12>>2]=0;z[a+8>>2]=C(m*e)+C(C(n*f)+C(g*o));z[a+4>>2]=C(j*e)+C(C(k*f)+C(g*l));z[a>>2]=C(i*e)+C(C(p*f)+C(g*h));xa=d+16|0}function wW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=0;d=xa-16|0;xa=d;b=v[b+4>>2];h=z[b+56>>2];i=z[b+52>>2];j=z[b+72>>2];q=b- -64|0;k=z[q>>2];l=z[b+68>>2];m=z[b+88>>2];n=z[b+80>>2];o=z[b+84>>2];p=z[b+48>>2];e=z[c+8>>2];f=z[c>>2];g=z[c+4>>2];v[d+12>>2]=0;z[d+8>>2]=C(m*e)+C(C(n*f)+C(g*o));z[d+4>>2]=C(j*e)+C(C(k*f)+C(g*l));z[d>>2]=C(h*e)+C(C(p*f)+C(g*i));c=IV(b,d);h=z[q>>2];i=z[b+80>>2];j=z[b+84>>2];k=z[b+52>>2];l=z[b+68>>2];m=z[b+88>>2];c=v[b+152>>2]+B(c,12)|0;e=z[c+8>>2];n=z[b+56>>2];f=z[c>>2];o=z[b+72>>2];g=z[c+4>>2];p=z[b+48>>2];v[a+12>>2]=0;z[a+8>>2]=C(m*e)+C(C(n*f)+C(g*o));z[a+4>>2]=C(j*e)+C(C(k*f)+C(g*l));z[a>>2]=C(i*e)+C(C(p*f)+C(g*h));xa=d+16|0}function aaa(a,b,c,d){a:{switch(b-9|0){case 0:b=v[c>>2];v[c>>2]=b+4;v[a>>2]=v[b>>2];return;case 6:b=v[c>>2];v[c>>2]=b+4;b=u[b>>1];v[a>>2]=b;v[a+4>>2]=b>>31;return;case 7:b=v[c>>2];v[c>>2]=b+4;v[a>>2]=x[b>>1];v[a+4>>2]=0;return;case 8:b=v[c>>2];v[c>>2]=b+4;b=t[b|0];v[a>>2]=b;v[a+4>>2]=b>>31;return;case 9:b=v[c>>2];v[c>>2]=b+4;v[a>>2]=w[b|0];v[a+4>>2]=0;return;case 16:b=v[c>>2]+7&-8;v[c>>2]=b+8;A[a>>3]=A[b>>3];return;case 17:Ba[d|0](a,c);default:return;case 1:case 4:case 14:b=v[c>>2];v[c>>2]=b+4;b=v[b>>2];v[a>>2]=b;v[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=v[c>>2];v[c>>2]=b+4;v[a>>2]=v[b>>2];v[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=v[c>>2]+7&-8;v[c>>2]=b+8;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c}function Ac(a,b,c,d){a=a|0;b=b|0;c=c|0;d=C(d);var e=0,f=0;f=xa-48|0;xa=f;v[f+40>>2]=-1;v[f+32>>2]=0;v[f+36>>2]=0;v[f+16>>2]=0;v[f+20>>2]=0;v[f+8>>2]=0;v[f+12>>2]=0;u[f+24>>1]=3;e=xa-128|0;xa=e;v[e+104>>2]=v[f+8>>2];v[e+108>>2]=v[f+12>>2];v[e+112>>2]=v[f+16>>2];v[e+116>>2]=v[f+20>>2];u[e+120>>1]=x[f+24>>1]|16;v[e+36>>2]=0;v[e+40>>2]=0;u[e+32>>1]=0;v[e+28>>2]=-1;v[e+44>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+56>>2]=0;v[e+68>>2]=0;v[e+60>>2]=2139095039;v[e+64>>2]=0;u[e+8>>1]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+96>>2]=0;v[e+88>>2]=0;v[e+92>>2]=0;t[e+84|0]=0;v[e+16>>2]=114128;Ba[v[v[a>>2]+348>>2]](a,b,c,d,e+16|0,e+8|0,e+104|0,0,0)|0;v[f+40>>2]=v[e+28>>2];a=v[e+24>>2];v[f+32>>2]=v[e+20>>2];v[f+36>>2]=a;xa=e+128|0;xa=f+48|0;return w[e+84|0]}function Uu(a){var b=0,c=0,d=0;a:{b:{d=v[a+4>>2];c:{if(d&128){if(d&768){break b}z[a+44>>2]=z[a+56>>2];break c}z[a+56>>2]=z[a+44>>2];if(d&768){break b}}b=v[a+12>>2];d:{if(b){b=!v[b+28>>2]|y[v[v[b+24>>2]>>2]+152>>2]>4294967293;break d}b=z[a+44>>2]==C(0)}if(y[a+4>>2]>3221225471){break a}t[a+60|0]=b;break a}if(d&256){v[a+44>>2]=0;break a}z[a+44>>2]=z[a+56>>2]}e:{if(!(d&16776319)){break e}b=v[a+8>>2];if(!b){b=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=b}c=v[a+4>>2];if(c&2){v[a+20>>2]=v[b+4>>2]}if(c&1){v[a+16>>2]=v[b>>2]}if(c&4){v[a+24>>2]=v[b+8>>2]}if(c&8){z[a+32>>2]=z[b+12>>2]}if(c&16){z[a+36>>2]=z[b+16>>2]}if(c&32){u[a+28>>1]=x[b+20>>1]}if(!(c&64)){break e}z[a+40>>2]=z[b+24>>2]}if(d&2048){_E(a+12|0)}v[a+8>>2]=0;v[a+4>>2]=w[a+7|0]<<24}function oB(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var r=C(0);r=z[h+12>>2];z[g>>2]=j<=k?C(0):C(C(1)/j);g=x[h+76>>1];if(g&1){v[a>>2]=0;i=z[h+68>>2];q=z[h+28>>2];k=z[h+64>>2];z[d>>2]=o;m=C(C(i+C(m*k))*m);o=C(C(C(i*q)-C(r*k))*n);i=C(C(i+C(n*k))*n);a:{if(g&2){k=C(C(1)/C(i+C(1)));z[c>>2]=o*k;m=C(m+C(1));i=C(i*C(-k));break a}k=C(C(1)/C(C(i*j)+C(1)));z[c>>2]=C(o*k)*j;m=C(C(m*j)+C(1));i=C(C(i*C(-k))*j)}z[e>>2]=i;z[f>>2]=C(1)-k;z[b>>2]=C(C(-p)*l)*C(C(1)-C(C(1)/m));return}v[e>>2]=-1082130432;v[f>>2]=1065353216;b:{if(!(g&4)){break b}i=C(-i);if(!(i>z[h+68>>2])){break b}v[a>>2]=0;v[b>>2]=0;z[c>>2]=z[h+64>>2]*i;v[d>>2]=0;return}z[b>>2]=C(-p)*l;c:{if(g&128){v[a>>2]=0;i=C(z[h+28>>2]-C(r*q));break c}z[a>>2]=r;i=z[h+28>>2]}z[c>>2]=i;z[d>>2]=o}function iA(a){var b=C(0),c=0,d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=0,m=C(0),n=C(0),o=0;d=v[a+28>>2];if(d){c=v[a+24>>2];j=w[c+1|0];if(j){o=w[c|0]==4?160:96;a=c+48|0;while(1){if(w[a+92|0]&2){b=z[a+88>>2];k=C(k+C(b*z[a+64>>2]));e=C(e+C(b*z[a+72>>2]));f=C(f+C(b*z[a+68>>2]));g=C(g+C(b*z[a+8>>2]));h=C(h+C(b*z[a+4>>2]));i=C(i+C(b*z[a>>2]))}a=a+o|0;l=l+1|0;if((j|0)!=(l|0)){continue}break}}b=z[c+24>>2];m=z[c+20>>2];n=z[c+16>>2];z[d+8>>2]=g;z[d+4>>2]=h;z[d>>2]=i;e=C(e-C(C(n*h)-C(i*m)));z[d+24>>2]=e;f=C(f-C(C(b*i)-C(g*n)));z[d+20>>2]=f;b=C(k-C(C(m*g)-C(h*b)));z[d+16>>2]=b;a=0;a:{if(!w[c+3|0]){break a}a=1;if(z[c+4>>2]>2]>2]=a}}function rA(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>>>0>=2){d=1;while(1){f=((d<<5)+a|0)-32|0;g=v[f+12>>2];h=v[f+16>>2];e=v[c+16>>2];gA(f,c);hA(f,c,B(g,112)+e|0,B(h,112)+e|0);d=d+1|0;if((d|0)!=(b|0)){continue}break}}a=((b<<5)+a|0)-32|0;d=v[a+12>>2];f=v[a+16>>2];b=v[c+16>>2];gA(a,c);hA(a,c,b+B(d,112)|0,b+B(f,112)|0);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){b=v[c+28>>2];a=a+v[b>>2]|0;v[b>>2]=a;b=v[c+8>>2];if(b){f=a-b|0;a=0;while(1){d=v[c+4>>2]+(a<<5)|0;e=v[d+4>>2];b=v[c+20>>2]+(a+f<<5)|0;v[b>>2]=v[d>>2];v[b+4>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}}function oA(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>>>0>=2){d=1;while(1){f=((d<<5)+a|0)-32|0;g=v[f+12>>2];h=v[f+16>>2];e=v[c+16>>2];fA(f,c);hA(f,c,B(g,112)+e|0,B(h,112)+e|0);d=d+1|0;if((d|0)!=(b|0)){continue}break}}a=((b<<5)+a|0)-32|0;d=v[a+12>>2];f=v[a+16>>2];b=v[c+16>>2];fA(a,c);hA(a,c,b+B(d,112)|0,b+B(f,112)|0);a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){b=v[c+28>>2];a=a+v[b>>2]|0;v[b>>2]=a;b=v[c+8>>2];if(b){f=a-b|0;a=0;while(1){d=v[c+4>>2]+(a<<5)|0;e=v[d+4>>2];b=v[c+20>>2]+(a+f<<5)|0;v[b>>2]=v[d>>2];v[b+4>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}}function hu(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=v[a+44>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!(w[a+32|0]|c>>>0>32)){t[a+32|0]=1;d=a;break a}if(!c){break a}d=v[37696];e=d+12|0;d=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?42347:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+40>>2];if((c|0)>0){g=(c<<3)+d|0;e=v[a+36>>2];c=d;while(1){h=v[e+4>>2];v[c>>2]=v[e>>2];v[c+4>>2]=h;e=e+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+40>>2]}e=v[b+4>>2];c=(c<<3)+d|0;v[c>>2]=v[b>>2];v[c+4>>2]=e;b:{if(v[a+44>>2]<0){break b}b=v[a+36>>2];if((b|0)==(a|0)){t[a+32|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+44>>2]=f;v[a+36>>2]=d;v[a+40>>2]=v[a+40>>2]+1}function cR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=xa+-64|0;xa=c;a=v[a+28>>2];e=v[v[a+976>>2]+1024>>2];Ba[v[v[e>>2]+84>>2]](c+8|0,e);if(v[a+2472>>2]){f=a+2420|0;g=(v[a+2360>>2]&8)!=0;e=0;while(1){b=v[(v[a+2468>>2]+(e<<3)|0)+4>>2];a:{if(!UR(b,0,c+8|0,g)|w[b+46|0]&4){break a}d=v[v[b+28>>2]+4>>2];d=w[v[d+44>>2]+9|0]-1>>>0<2?d:0;b=v[v[b+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;v[c+52>>2]=b;v[c+48>>2]=d;v[c+56>>2]=v[d+48>>2];v[c+60>>2]=v[b+48>>2];b=v[a+2424>>2];if(b>>>0>=(v[a+2428>>2]&2147483647)>>>0){AP(f,c+48|0);break a}d=v[c+52>>2];b=v[a+2420>>2]+(b<<4)|0;v[b>>2]=v[c+48>>2];v[b+4>>2]=d;d=v[c+60>>2];v[b+8>>2]=v[c+56>>2];v[b+12>>2]=d;v[a+2424>>2]=v[a+2424>>2]+1}e=e+1|0;if(e>>>0>2]){continue}break}}xa=c- -64|0}function SF(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=v[a>>2];a:{if((c|0)!=v[a+8>>2]){break a}f=(c<<1)+2|0;if(f>>>0<=c>>>0){break a}c=f<<3;if(c){e=v[37696];d=e+12|0;d=(i=d,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?29399:63804,l=18841,m=219,h=v[v[d>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}else{d=0}c=v[a+4>>2];b:{if(!c){break b}I9(d,c,v[a>>2]<<3);e=v[a+4>>2];if(!e){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+8>>2]=f;v[a+4>>2]=d;c=v[a>>2]}c:{if(!c){d=0;break c}while(1){e=v[a+4>>2];f=c-1|0;d=f>>>1|0;g=e+(d<<3)|0;if(y[b+4>>2]>=y[g+4>>2]){d=c;break c}e=(c<<3)+e|0;c=v[g+4>>2];v[e>>2]=v[g>>2];v[e+4>>2]=c;c=d;if(f>>>0>1){continue}break}}c=v[a+4>>2]+(d<<3)|0;d=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=d;v[a>>2]=v[a>>2]+1}function D_(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);h=C(z[a+8>>2]-z[b+8>>2]);m=C(z[d+32>>2]*h);j=C(z[a>>2]-z[b>>2]);l=C(z[a+4>>2]-z[b+4>>2]);n=C(C(z[d+24>>2]*j)+C(l*z[d+28>>2]));f=C(C(z[d+20>>2]*h)+C(C(z[d+12>>2]*j)+C(l*z[d+16>>2])));g=z[c>>2];k=C(-g);h=C(C(z[d+8>>2]*h)+C(C(z[d>>2]*j)+C(l*z[d+4>>2])));a:{if(k>h){g=C(h+g);i=C(C(g*g)+C(0));break a}if(!(h>g)){k=h;break a}k=C(h-g);i=C(C(k*k)+C(0));k=g}h=C(m+n);g=z[c+4>>2];j=C(-g);b:{if(!(j>f)){if(!(f>g)){g=f;break b}f=C(f-g);i=C(C(f*f)+i);break b}g=C(f+g);i=C(C(g*g)+i);g=j}f=z[c+8>>2];j=C(-f);c:{if(!(j>h)){if(!(f>2]=f;z[e+4>>2]=g;z[e>>2]=k}return i}function wH(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a=v[a+60>>2];if(a){d=0;a:{if(!b){break a}d=0;if(!w[b+9|0]){break a}d=v[b>>2]}f=!c|!w[c+9|0]?f:v[c>>2];e=v[v[a+48>>2]+1136>>2];b:{if(!(w[v[a+52>>2]]&6)){c:{if(!d){break c}g=v[d+164>>2];if(!g){break c}IH(e,g,a)}if(!f){break b}g=v[f+164>>2];if(!g){break b}IH(e,g,a);break b}if(t[a+68|0]&1){break b}CH(e,a)}e=0;h=f?f- -64|0:0;v[a+28>>2]=h;g=d?d- -64|0:0;v[a+24>>2]=g;v[a+32>>2]=d?v[g+36>>2]:0;e=f?v[h+36>>2]:e;v[a+60>>2]=d;v[a+36>>2]=e;v[a- -64>>2]=f;d=v[a+48>>2];e=v[d+2408>>2];if(b){d=v[b>>2]}else{d=v[d+2380>>2]}if(c){b=v[c>>2]}else{b=v[v[a+48>>2]+2380>>2]}f=v[e+288>>2];if(!f){QH(e);f=v[e+288>>2]}v[e+288>>2]=v[f>>2];v[e+280>>2]=v[e+280>>2]+1;i=a,j=LH(f,a,d,b),v[i+56>>2]=j}}function x3(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=0,n=0;b=xa-16|0;xa=b;if(a){v[b+12>>2]=0;v[b+8>>2]=0;B3(a,b+12|0,b+8|0);v[b+4>>2]=0;v[b>>2]=0;f=a+36|0;B3(f,b+4|0,b);a:{if(y[b+12>>2]<=y[b+4>>2]){c=a;a=f;break a}j=z[a>>2];z[a>>2]=z[a+36>>2];c=v[a+4>>2];k=v[a+8>>2];d=a+40|0;g=v[d+4>>2];v[a+4>>2]=v[d>>2];v[a+8>>2]=g;d=v[a+12>>2];g=v[a+16>>2];e=a+48|0;h=v[e+4>>2];v[a+12>>2]=v[e>>2];v[a+16>>2]=h;l=z[a+20>>2];z[a+20>>2]=z[a+56>>2];e=v[a+32>>2];v[a+32>>2]=v[a+68>>2];h=v[a+24>>2];m=v[a+28>>2];i=a+60|0;n=v[i+4>>2];v[a+24>>2]=v[i>>2];v[a+28>>2]=n;v[a+60>>2]=h;v[a+64>>2]=m;v[a+68>>2]=e;v[a+40>>2]=c;v[a+44>>2]=k;z[a+56>>2]=l;v[a+48>>2]=d;v[a+52>>2]=g;z[a+36>>2]=j;c=f}x3(v[c+24>>2]);x3(v[a+24>>2])}xa=b+16|0}function q3(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=0,l=C(0),m=0,n=0;b=xa-16|0;xa=b;if(a){v[b+12>>2]=0;v[b+8>>2]=0;u3(a,b+12|0,b+8|0);v[b+4>>2]=0;v[b>>2]=0;f=a+36|0;u3(f,b+4|0,b);a:{if(y[b+12>>2]<=y[b+4>>2]){c=a;a=f;break a}j=z[a>>2];z[a>>2]=z[a+36>>2];c=v[a+4>>2];k=v[a+8>>2];d=a+40|0;g=v[d+4>>2];v[a+4>>2]=v[d>>2];v[a+8>>2]=g;d=v[a+12>>2];g=v[a+16>>2];e=a+48|0;h=v[e+4>>2];v[a+12>>2]=v[e>>2];v[a+16>>2]=h;l=z[a+20>>2];z[a+20>>2]=z[a+56>>2];e=v[a+32>>2];v[a+32>>2]=v[a+68>>2];h=v[a+24>>2];m=v[a+28>>2];i=a+60|0;n=v[i+4>>2];v[a+24>>2]=v[i>>2];v[a+28>>2]=n;v[a+60>>2]=h;v[a+64>>2]=m;v[a+68>>2]=e;v[a+40>>2]=c;v[a+44>>2]=k;z[a+56>>2]=l;v[a+48>>2]=d;v[a+52>>2]=g;z[a+36>>2]=j;c=f}q3(v[c+24>>2]);q3(v[a+24>>2])}xa=b+16|0}function S6(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=xa-48|0;xa=g;a:{if((b|d)&32){u[f>>1]=1044;u[a>>1]=0;break a}if(!w[v[e>>2]+((v[c>>2]<<5)+149728|0)|0]){u[a>>1]=2;break a}b=v[c+8>>2];c=v[c+12>>2];u[g+44>>1]=c;u[g+40>>1]=b;u[g+46>>1]=c>>>16;u[g+42>>1]=b>>>16;b=v[e+8>>2];c=v[e+12>>2];u[g+36>>1]=c;u[g+32>>1]=b;u[g+38>>1]=c>>>16;u[g+34>>1]=b>>>16;v[g+24>>2]=0;v[g+28>>2]=0;b=g+24|0;Ba[v[(v[37692]<<2)+146080>>2]](b,g+40|0,150752);v[g+16>>2]=0;v[g+20>>2]=0;c=g+16|0;Ba[v[(v[37693]<<2)+146080>>2]](c,g+32|0,150760);v[g+8>>2]=0;v[g+12>>2]=0;Ba[v[(v[37694]<<2)+146080>>2]](g+8|0,b,c);if(w[150780]==((x[g+14>>1]|(x[g+12>>1]|(x[g+8>>1]|x[g+10>>1])))!=0|0)){u[f>>1]=1025;b=0}else{b=2}u[a>>1]=b}xa=g+48|0}function v_(a,b,c){var d=0,e=C(0),f=C(0),g=C(0),h=0,i=0,j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);k=z[c+16>>2];l=z[c+28>>2];m=z[c+24>>2];n=z[c+12>>2];o=z[c>>2];p=z[c+4>>2];e=z[b+24>>2];f=z[b+28>>2];g=z[b+32>>2];z[a+8>>2]=C(C(e*z[c+8>>2])+C(f*z[c+20>>2]))+C(g*z[c+32>>2]);z[a+4>>2]=C(C(e*p)+C(f*k))+C(g*l);z[a>>2]=C(C(e*o)+C(f*n))+C(g*m);c=w[b+38|0];v[a+12>>2]=c;d=w[b+39|0];v[a+16>>2]=d;i=u[b+36>>1];h=i&32767;v[a+20>>2]=h;j=v[b+40>>2];v[a+24>>2]=j;d=B(d,20)+j|0;v[a+28>>2]=d;d=d+B(c,12)|0;v[a+36>>2]=d;v[a+32>>2]=((d+(h<<1)|0)+B(c,3)|0)+(h<<2&i>>31);c=v[b+52>>2];v[a+44>>2]=v[b+48>>2];v[a+48>>2]=c;c=v[b+60>>2];v[a+52>>2]=v[b+56>>2];v[a+56>>2]=c;b=v[b+44>>2];v[a+60>>2]=b;v[a+68>>2]=2765;v[a+64>>2]=(b?2765:2766)+1}function rv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);n=z[d>>2];k=z[d+8>>2];r=z[c+24>>2];j=C(r-z[d+24>>2]);s=z[c+16>>2];i=C(s-z[d+16>>2]);t=z[c+20>>2];l=C(t-z[d+20>>2]);o=z[d+4>>2];p=C(n*C(C(k*j)+C(C(n*i)+C(l*o))));m=i;i=z[d+12>>2];j=C(p+C(C(m*C(C(i*i)+C(-.5)))-C(i*C(C(o*j)-C(l*k)))));m=C(j+j);j=z[a+4>>2];p=C(m-j);b=p<=z[e>>2];if(b){a=v[g+4096>>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;l=C(n+n);q=C(i+i);m=C(C(l*k)-C(o*q));z[a+8>>2]=m;k=C(C(l*o)+C(k*q));z[a+4>>2]=k;v[a+52>>2]=-1;z[a+12>>2]=p;v[a+28>>2]=0;i=C(C(C(n*l)+C(i*q))+C(-1));z[a>>2]=i;z[a+24>>2]=r-C(j*m);z[a+20>>2]=t-C(j*k);z[a+16>>2]=s-C(j*i)}return b|0}function hH(a,b,c,d){var e=C(0),f=0,g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=C(0),o=C(0);g=xa-16|0;xa=g;f=v[a+100>>2];a:{if(!(w[f+28|0]&32)|t[a+92|0]&1){break a}a=v[a+32>>2];if(!a){break a}e=z[f+72>>2];h=C(e*e);e=z[f+64>>2];i=C(e*e);e=z[f+68>>2];h=C(C(K(C(h+C(i+C(e*e)))))*c);i=z[f+88>>2];m=z[f+84>>2];n=z[f+80>>2];while(1){z[g+8>>2]=i;z[g+4>>2]=m;z[g>>2]=n;l=v[a+8>>2];f=v[d+4>>2]+B(l&2147483647,24)|0;e=C(C(z[f+20>>2]-z[f+8>>2])*C(.5));j=C(e*e);e=C(C(z[f+12>>2]-z[f>>2])*C(.5));k=C(e*e);e=C(C(z[f+16>>2]-z[f+4>>2])*C(.5));j=C(K(C(j+C(k+C(e*e)))));e=z[g+8>>2];k=C(e*e);e=z[g>>2];o=C(e*e);e=z[g+4>>2];z[(l<<2)+b>>2]=C(z[v[a+28>>2]+60>>2]+h)+C(j*C(C(K(C(k+C(o+C(e*e)))))*c));a=v[a>>2];if(a){continue}break}}xa=g+16|0}function AP(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<4;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?31019:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=(c<<4)+e|0;d=v[a>>2];c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;g=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=g;d=d+16|0;c=c+16|0;if(h>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<4)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;d=v[b+12>>2];v[c+8>>2]=v[b+8>>2];v[c+12>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function qaa(a,b){var c=0,d=0,e=0;c=xa+-64|0;xa=c;d=v[a>>2];e=v[d-4>>2];d=v[d-8>>2];v[c+32>>2]=0;v[c+36>>2]=0;v[c+40>>2]=0;v[c+44>>2]=0;v[c+48>>2]=0;v[c+52>>2]=0;t[c+55|0]=0;t[c+56|0]=0;t[c+57|0]=0;t[c+58|0]=0;t[c+59|0]=0;t[c+60|0]=0;t[c+61|0]=0;t[c+62|0]=0;v[c+24>>2]=0;v[c+28>>2]=0;v[c+20>>2]=0;v[c+16>>2]=109812;v[c+12>>2]=a;v[c+8>>2]=b;a=a+d|0;d=0;a:{if(oaa(e,b,0)){v[c+56>>2]=1;Ba[v[v[e>>2]+20>>2]](e,c+8|0,a,a,1,0);d=v[c+32>>2]==1?a:0;break a}Ba[v[v[e>>2]+24>>2]](e,c+8|0,a,1,0);b:{switch(v[c+44>>2]){case 0:d=v[c+48>>2]==1?v[c+36>>2]==1?v[c+40>>2]==1?v[c+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(v[c+32>>2]!=1){if(v[c+48>>2]|v[c+36>>2]!=1|v[c+40>>2]!=1){break a}}d=v[c+24>>2]}xa=c- -64|0;return d}function Du(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=xa-288|0;xa=d;a:{if(!(w[(v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0)+8|0]&8)){t[d+264|0]=1;v[d+272>>2]=0;v[d+276>>2]=64;e=d+8|0;v[d+268>>2]=e;f=a;a=v[a+2416>>2];MP(f,b+16|0,a?a+272|0:e,c);f=v[(a?a+536|0:d+272|0)>>2];if(f){g=v[(a?a+532|0:d+268|0)>>2];h=v[b>>2]+4816|0;c=0;while(1){a=v[(c<<2)+g>>2];b=a-16|0;e=a-12|0;a=v[e>>2];if(a&268435456){Zu(b);v[d+284>>2]=b;Pg(h,d+284|0);a=v[e>>2]&-268435457;v[e>>2]=a}if((a&251658240)==16777216){v[e>>2]=a&1073741823;v[b>>2]=0}bu(b);c=c+1|0;if((f|0)!=(c|0)){continue}break}}a=v[d+276>>2];if((a|0)<0|!(a&2147483647)){break a}a=v[d+268>>2];if((a|0)==(d+8|0)|!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a);break a}Eu(b)}xa=d+288|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;f=x[b>>1];a:{if(!(f&1)){break a}b=v[a+5936>>2];if(!b){break a}h=b&1;d=v[a+5932>>2];if((b|0)!=1){i=b&-2;while(1){e=c;c=v[(d+(b<<2)|0)-4>>2];e=e+(x[c+4>>1]==6&(c|0)!=0)|0;b=b-2|0;c=v[d+(b<<2)>>2];c=e+(x[c+4>>1]==6&(c|0)!=0)|0;g=g+2|0;if((i|0)!=(g|0)){continue}break}}if(!h){break a}b=v[(d+(b<<2)|0)-4>>2];c=(x[b+4>>1]==6&(b|0)!=0)+c|0}b:{if(!(f&2)){break b}d=v[a+5936>>2];if(!d){break b}a=v[a+5932>>2];c:{if(!(d&1)){b=d;break c}e=c;b=d-1|0;c=v[a+(b<<2)>>2];c=e+(x[c+4>>1]==5&(c|0)!=0)|0}if((d|0)==1){break b}while(1){d=v[(a+(b<<2)|0)-4>>2];c=(x[d+4>>1]==5&(d|0)!=0)+c|0;b=b-2|0;d=v[a+(b<<2)>>2];c=c+(x[d+4>>1]==5&(d|0)!=0)|0;if(b){continue}break}}return c|0}function f4(a){var b=0,c=0;b=v[a+108>>2];if(b){b=YZ(b);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+108>>2]=0;b=v[a+40>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+40>>2]=0;b=v[a+20>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+20>>2]=0;b=v[a+24>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+24>>2]=0;b=v[a>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a>>2]=0;b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+4>>2]=0;b=v[a+8>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+8>>2]=0;b=v[a+12>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+12>>2]=0;b=v[a+16>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+16>>2]=0}function $l(a,b,c,d){a=a|0;b=b|0;c=C(c);d=C(d);var e=0,f=0;a:{b:{c:{d:{a=a+8|0;f=v[a+4>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}kF(a+12|0,b,c,d);break a}e=v[a+8>>2];e:{if(!(f&1048576)){if(!e){e=Qu(v[a>>2],f>>>24&15);v[a+8>>2]=e}z[e+156>>2]=z[a+72>>2];z[e+160>>2]=z[a+76>>2];z[e+164>>2]=z[a+80>>2];z[e+168>>2]=z[a+84>>2];z[e+172>>2]=z[a+88>>2];z[e+176>>2]=z[a+92>>2];z[e+180>>2]=z[a+96>>2];z[e+184>>2]=z[a+100>>2];z[e+188>>2]=z[a+104>>2];z[e+192>>2]=z[a+108>>2];z[e+196>>2]=z[a+112>>2];z[e+200>>2]=z[a+116>>2];break e}if(e){break e}e=Qu(v[a>>2],w[a+7|0]&15);v[a+8>>2]=e}b=(b<<3)+e|0;z[b+160>>2]=d;z[b+156>>2]=c;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1048576}}function Qk(a){var b=0,c=C(0),d=0,e=0,f=0,g=0;a:{if((v[a+4>>2]>>>30|0)-3>>>0<4294967294){break a}b=v[a>>2];if(!b){break a}g=b-16|0}if(v[a+88>>2]){while(1){b=v[v[a+84>>2]+(d<<2)>>2];e=b+48|0;c=z[g+5148>>2];b:{c:{d:{switch((v[b+52>>2]>>>30|0)-2|0){case 0:f=v[e>>2];if(w[f+4785|0]){break c}default:z[b+308>>2]=c;v[b+312>>2]=0;VG(b- -64|0,c,1);break b;case 1:break d}}f=v[e>>2]}z[b+308>>2]=c;v[b+312>>2]=0;Yu(f,e);v[b+316>>2]=v[b+316>>2]&-117440513|83886080}d=d+1|0;if(d>>>0>2]){continue}break}}b=v[a>>2];c=z[b+5132>>2];t[a+60|0]=0;z[a+56>>2]=c;e:{f:{switch((v[a+4>>2]>>>30|0)-2|0){case 0:if(w[b+4785|0]){break e}break;case 1:break e;default:break f}}z[a+44>>2]=c;return}Yu(b,a);v[a+4>>2]=v[a+4>>2]&-897|640}function Nm(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{e=v[a+20>>2];b:{if(!e){break b}f=v[b>>2];d=f+(f<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;g=e-1&(d>>>16^d);d=v[v[a+12>>2]+(g<<2)>>2];if((d|0)==-1){break b}i=v[a+8>>2];j=v[a+4>>2];while(1){d=d<<2;h=d+j|0;if(v[h>>2]==(f|0)){break a}d=v[d+i>>2];if((d|0)!=-1){continue}break}}t[c|0]=0;c=-1;d=v[a+28>>2];if((d|0)==-1){d=e?e<<1:16;if(d>>>0>e>>>0){Im(a,d);e=v[a+20>>2];c=v[a+28>>2]}b=v[b>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;g=e-1&(b>>>16^b);d=c}b=d<<2;c=b+v[a+8>>2]|0;v[a+28>>2]=v[c>>2];e=c;c=v[a+12>>2]+(g<<2)|0;v[e>>2]=v[c>>2];v[c>>2]=d;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return b+v[a+4>>2]|0}t[c|0]=1;return h}function i5(a,b,c){a=a|0;b=b|0;c=c|0;b=v[b+80>>2];a:{switch(c|0){case 0:z[a>>2]=z[b+128>>2];z[a+4>>2]=z[b+132>>2];z[a+8>>2]=z[b+136>>2];z[a+12>>2]=z[b+140>>2];z[a+16>>2]=z[b+144>>2];c=v[b+152>>2];v[a+20>>2]=v[b+148>>2];v[a+24>>2]=c;return;case 1:z[a>>2]=z[b+156>>2];z[a+4>>2]=z[b+160>>2];z[a+8>>2]=z[b+164>>2];z[a+12>>2]=z[b+168>>2];z[a+16>>2]=z[b+172>>2];c=v[b+180>>2];v[a+20>>2]=v[b+176>>2];v[a+24>>2]=c;return;case 2:z[a>>2]=z[b+184>>2];z[a+4>>2]=z[b+188>>2];z[a+8>>2]=z[b+192>>2];z[a+12>>2]=z[b+196>>2];z[a+16>>2]=z[b+200>>2];c=v[b+208>>2];v[a+20>>2]=v[b+204>>2];v[a+24>>2]=c;return;default:break a}}v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+4>>2]=1073741824}function J9(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}t[a|0]=b;e=a+c|0;t[e-1|0]=b;if(c>>>0<3){break a}t[a+2|0]=b;t[a+1|0]=b;t[e-3|0]=b;t[e-2|0]=b;if(c>>>0<7){break a}t[a+3|0]=b;t[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=B(b&255,16843009);v[f>>2]=d;b=c-e&-4;c=b+f|0;v[c-4>>2]=d;if(b>>>0<9){break a}v[f+8>>2]=d;v[f+4>>2]=d;v[c-8>>2]=d;v[c-12>>2]=d;if(b>>>0<25){break a}v[f+24>>2]=d;v[f+20>>2]=d;v[f+16>>2]=d;v[f+12>>2]=d;v[c-16>>2]=d;v[c-20>>2]=d;v[c-24>>2]=d;v[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=Saa(d,0,1,1);e=Aa;b=b+f|0;while(1){v[b+24>>2]=d;v[b+28>>2]=e;v[b+16>>2]=d;v[b+20>>2]=e;v[b+8>>2]=d;v[b+12>>2]=e;v[b>>2]=d;v[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function O5(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);o=z[b+20>>2];p=z[b+24>>2];l=z[c+20>>2];m=z[c+24>>2];q=z[b+16>>2];n=z[c+16>>2];d=z[b+12>>2];e=z[c+12>>2];f=z[c>>2];h=z[b>>2];i=z[b+4>>2];g=z[c+4>>2];j=z[b+8>>2];k=z[c+8>>2];z[a+12>>2]=C(C(C(d*e)-C(f*h))-C(i*g))-C(j*k);z[a+8>>2]=C(C(h*g)+C(C(d*k)+C(j*e)))-C(f*i);z[a+4>>2]=C(C(j*f)+C(C(d*g)+C(i*e)))-C(k*h);z[a>>2]=C(C(i*k)+C(C(d*f)+C(h*e)))-C(g*j);e=C(m+m);f=C(n+n);g=C(l+l);k=C(C(j*e)+C(C(h*f)+C(i*g)));l=C(C(d*d)+C(-.5));z[a+24>>2]=p+C(C(j*k)+C(C(e*l)+C(d*C(C(h*g)-C(f*i)))));z[a+20>>2]=o+C(C(i*k)+C(C(g*l)+C(d*C(C(j*f)-C(e*h)))));z[a+16>>2]=q+C(C(h*k)+C(C(f*l)+C(d*C(C(i*e)-C(g*j)))))}function CQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=C(0);if(v[a+32>>2]){h=v[a+40>>2];while(1){b=v[v[(v[h+184>>2]+B(v[v[a+28>>2]+(g<<2)>>2]>>>7|0,24)|0)+20>>2]+16>>2];xG(b);i=z[a+36>>2];e=w[a+44|0];c=0;d=xa-16|0;xa=d;v[d+12>>2]=0;if(v[b+28>>2]){while(1){f=v[b>>2];rH(v[v[b+24>>2]+(c<<2)>>2],i,0,0,d+12|0,v[f+40>>2]+(c<<5)|0,!v[f+24>>2],e);c=c+1|0;if(c>>>0>2]){continue}break}}xa=d+16|0;e=v[b+28>>2];if(e){f=v[b+24>>2];d=0;while(1){b=v[f+(d<<2)>>2];c=v[b+100>>2];z[b+64>>2]=z[c>>2];z[b+68>>2]=z[c+4>>2];z[b+72>>2]=z[c+8>>2];z[b+76>>2]=z[c+12>>2];z[b+80>>2]=z[c+16>>2];z[b+84>>2]=z[c+20>>2];z[b+88>>2]=z[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 u4(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((v[a+8>>2]&2147483647)>>>0>>0){a:{if(!b){break a}f=b<<2;if(!f){break a}e=v[37696];d=e+12|0;e=(j=d,k=f,l=Ba[v[v[e>>2]+20>>2]](e)|0?43907:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}g=v[a>>2];d=v[a+4>>2];if((d|0)>0){h=(d<<2)+e|0;d=e;while(1){f=x[g>>1]|x[g+2>>1]<<16;u[d>>1]=f;u[d+2>>1]=f>>>16;g=g+4|0;d=d+4|0;if(h>>>0>d>>>0){continue}break}g=v[a>>2]}if(!(!g|v[a+8>>2]<0)){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,g)}v[a+8>>2]=b;v[a>>2]=e}e=v[a+4>>2];if((e|0)<(b|0)){d=v[a>>2];f=d+(b<<2)|0;e=d+(e<<2)|0;while(1){d=x[c>>1]|x[c+2>>1]<<16;u[e>>1]=d;u[e+2>>1]=d>>>16;e=e+4|0;if(f>>>0>e>>>0){continue}break}}v[a+4>>2]=b}function DD(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;if(!e){return 1}if(!(v[a+4>>2]?f:0)){t[a+337|0]=1}g=hC(a+284|0,b,c,d,e);a:{if(!w[a+336|0]|!v[a+4>>2]){break a}t[a+338|0]=1;if(f|!g){break a}c=a+56|0;f=0;while(1){i=v[v[a+300>>2]+(v[(f<<2)+b>>2]<<2)>>2];k=v[a+48>>2];j=v[c>>2];h=c+B(j,48)|0;d=v[h+12>>2];b:{c:{if(d){if(!v[d+588>>2]){break c}break b}d=v[37696];d=FC((m=d+12|0,n=616,o=Ba[v[v[d>>2]+20>>2]](d)|0?44035:63804,p=11381,q=88,l=v[v[d+12>>2]+8>>2],Ba[l](m|0,n|0,o|0,p|0,q|0)|0));v[h+12>>2]=d}v[h+8>>2]=k}v[c+112>>2]=0;aD(c,(c+B(j,48)|0)+16|0,i,QC(d,i,v[v[c+104>>2]+8>>2],c+108|0));f=f+1|0;if((g|0)!=(f|0)){continue}break}}return(e|0)==(g|0)|0}function qh(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=xa-16|0;xa=f;a:{a=v[a+4>>2];if(!a){break a}i=v[a+40>>2];j=v[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(w[c|0]){continue}break}c=v[c+4>>2];if(!c){break a}Ba[v[v[c>>2]+36>>2]](c);e=xa-16|0;xa=e;d=v[c+12>>2];g=v[c+8>>2];b:{if(g){Ba[v[v[g>>2]+52>>2]](e+8|0,g);b=0;if(w[e+8|0]&8){break b}b=Ba[v[v[g>>2]+28>>2]](g)|0;break b}b=0}c:{if(d){Ba[v[v[d>>2]+52>>2]](e,d);h=0;if(w[e|0]&8){break c}h=Ba[v[v[d>>2]+28>>2]](d)|0;break c}h=0}xa=e+16|0;e=b?b:h;d=d?h?e:0:e;b=g?b?d:0:d;if(!b){continue}v[f+8>>2]=c;d=rh(b+5892|0,f+8|0,f+15|0);if(!w[f+15|0]){v[d>>2]=v[f+8>>2]}Iu(b+16|0,c+16|0);continue}}xa=f+16|0}function BH(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=v[a+4>>2];c=v[d+4>>2];a:{if((c|0)==(d|0)){break a}f=1;while(1){h=g;g=g+1|0;e=f;f=e+1|0;d=c;c=v[d+4>>2];if((c|0)!=(d|0)){continue}break}if(!e){break a}g=e&7;b:{if(!g){c=a;break b}f=0;while(1){c=v[a+4>>2];v[a+4>>2]=d;e=e-1|0;a=c;f=f+1|0;if((g|0)!=(f|0)){continue}break}}if(h>>>0<7){break a}while(1){a=v[c+4>>2];v[c+4>>2]=d;c=v[a+4>>2];v[a+4>>2]=d;a=v[c+4>>2];v[c+4>>2]=d;c=v[a+4>>2];v[a+4>>2]=d;a=v[c+4>>2];v[c+4>>2]=d;c=v[a+4>>2];v[a+4>>2]=d;a=v[c+4>>2];v[c+4>>2]=d;c=v[a+4>>2];v[a+4>>2]=d;e=e-8|0;if(e){continue}break}}if(!(w[d+44|0]&4)){a=xa-16|0;xa=a;v[a+8>>2]=d;b=rh(b+336|0,a+8|0,a+15|0);if(!w[a+15|0]){v[b>>2]=v[a+8>>2]}t[d+44|0]=w[d+44|0]|4;xa=a+16|0}}function LU(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0);e=xa-48|0;xa=e;j=z[c+8>>2];k=z[b+8>>2];g=C(j-k);l=z[c>>2];m=z[b>>2];h=C(l-m);n=z[c+4>>2];o=z[b+4>>2];i=C(n-o);f=C(K(C(C(g*g)+C(C(h*h)+C(i*i)))));if(d){z[d>>2]=f*C(.5);k=z[b+8>>2];o=z[b+4>>2];n=z[c+4>>2];m=z[b>>2];l=z[c>>2];j=z[c+8>>2]}a:{if(f>2]=0;v[e+16>>2]=1065353216;v[e+20>>2]=0;f=C(C(1)/f);z[e+8>>2]=g*f;z[e+4>>2]=i*f;z[e>>2]=h*f;p9(e+32|0,e+16|0,e);g=z[e+36>>2];h=z[e+32>>2];i=z[e+40>>2];f=z[e+44>>2]}z[a+12>>2]=f;z[a+8>>2]=i;z[a+4>>2]=g;z[a>>2]=h;z[a+24>>2]=C(j+k)*C(.5);z[a+20>>2]=C(n+o)*C(.5);z[a+16>>2]=C(l+m)*C(.5);xa=e+48|0}function r8(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0);f=xa+-64|0;xa=f;E5(f+32|0,f,b,c,d);if(e&1){Ba[v[v[a>>2]+8>>2]](a,f+32|0,f)}if(!(!(e&2)|!(u[b+128>>1]&1))){i=z[f+40>>2];h=z[f+8>>2];j=z[f+36>>2];k=z[f+4>>2];l=z[f+44>>2];m=z[f+12>>2];n=z[f+32>>2];o=z[f>>2];g=C(C(i*h)+C(C(j*k)+C(C(l*m)+C(n*o))));i=C(C(k*i)+C(C(C(l*o)-C(m*n))-C(j*h)));h=C(K(C(C(g*g)+C(C(C(i*i)+C(0))+C(0)))));if(h!=C(0)){h=C(C(1)/h);g=C(g*h);i=C(i*h)}h=z[b+116>>2];j=z[b+112>>2];k=j;j=z[b+104>>2]>C(0)?C(0):z[b+100>>2]>C(0)?C(0):z[b+108>>2];g=A9(C(F(C(G(g,C(-1))),C(1))));g=C(g+g);g=i>2]+16>>2]](a,f+32|0,h,k,C(k-j)>2];j=C(g+g);f=z[d+8>>2];k=C(j*f);h=z[d>>2];i=C(h+h);m=z[d+12>>2];l=C(i*m);z[e+44>>2]=k-l;z[e+36>>2]=k+l;h=C(C(1)-C(h*i));k=C(g*j);z[e+48>>2]=h-k;n=h;h=C(f+f);l=C(f*h);z[e+32>>2]=n-l;f=C(i*f);j=C(j*m);z[e+40>>2]=f+j;g=C(i*g);i=C(h*m);z[e+28>>2]=g-i;z[e+24>>2]=f-j;z[e+20>>2]=g+i;z[e+16>>2]=C(C(1)-k)-l;z[e+52>>2]=z[d+16>>2];z[e+56>>2]=z[d+20>>2];z[e+60>>2]=z[d+24>>2];z[e+64>>2]=z[c+4>>2];z[e+68>>2]=z[c+8>>2];z[e+72>>2]=z[c+12>>2];f=z[a+4>>2];z[e>>2]=z[b+16>>2];z[e+4>>2]=z[b+20>>2];g=z[b+24>>2];z[e+12>>2]=f;z[e+8>>2]=g;a=t$(e,e+16|0);xa=e+80|0;return a|0}function LO(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=B(f,12);if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?37087:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=B(c,12)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=B(c,12)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;v[c+8>>2]=v[b+8>>2];b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;b=a;a=v[a+4>>2];v[b+4>>2]=a+1;return B(a,12)+e|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;a:{if(!b){break a}d=B(b,44);if(!d){break a}c=v[37696];f=c+12|0;f=(i=f,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?45105:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,44)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;v[c+40>>2]=v[d+40>>2];e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+44|0;c=c+44|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function ny(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=0,q=0,r=C(0);if(x[d+8>>1]==65535){d=v[d+4>>2];h=z[d- -64>>2];i=z[d+40>>2];j=z[d+52>>2];k=z[d+60>>2];l=z[d+36>>2];m=z[d+48>>2];n=z[d+56>>2];o=z[d+44>>2];p=v[b+8>>2];q=v[b+12>>2];e=z[c+8>>2];f=z[c+4>>2];g=z[c>>2];r=z[d+32>>2];c=v[b>>2];b=v[b+4>>2];v[a+28>>2]=0;v[a+8>>2]=p;v[a+12>>2]=q;v[a>>2]=c;v[a+4>>2]=b;z[a+16>>2]=C(n*e)+C(C(r*g)+C(o*f));z[a+20>>2]=C(k*e)+C(C(l*g)+C(m*f));z[a+24>>2]=C(h*e)+C(C(i*g)+C(j*f));return}d=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=d;d=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=d;b=v[c+4>>2];v[a+16>>2]=v[c>>2];v[a+20>>2]=b;b=v[c+12>>2];v[a+24>>2]=v[c+8>>2];v[a+28>>2]=b}function hG(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=xa-16|0;xa=e;b=v[a+28>>2];if(v[b+36>>2]){while(1){c=v[v[b+32>>2]+(d<<2)>>2]>>>7|0;v[e+8>>2]=c;a:{if((c|0)==v[b+12>>2]){v[b+12>>2]=c-1;break a}f=v[b+4>>2];if(f>>>0>=(v[b+8>>2]&2147483647)>>>0){pn(b,e+8|0);b=v[a+28>>2];break a}v[v[b>>2]+(f<<2)>>2]=c;v[b+4>>2]=v[b+4>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}}d=0;v[b+36>>2]=0;if(v[b+72>>2]){while(1){c=v[v[b+68>>2]+(d<<2)>>2];v[e+12>>2]=c;b:{if((c|0)==v[b+28>>2]){v[b+28>>2]=c-1;break b}f=v[b+20>>2];if(f>>>0>=(v[b+24>>2]&2147483647)>>>0){pn(b+16|0,e+12|0);b=v[a+28>>2];break b}v[v[b+16>>2]+(f<<2)>>2]=c;v[b+20>>2]=v[b+20>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}}v[b+72>>2]=0;xa=e+16|0}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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);n=z[a+4>>2];o=z[b+4>>2];p=C(n+o);i=C(p+z[e>>2]);m=C(i*i);q=z[c+24>>2];j=C(q-z[d+24>>2]);r=z[c+16>>2];k=C(r-z[d+16>>2]);s=z[c+20>>2];l=C(s-z[d+20>>2]);i=C(C(j*j)+C(C(k*k)+C(l*l)));a=m<=i;a:{if(a){break a}m=C(K(i));b:{if(m<=C(9999999747378752e-21)){k=C(1);j=C(0);l=C(0);break b}i=C(C(1)/m);j=C(j*i);k=C(k*i);l=C(l*i)}b=v[g+4096>>2];if(b>>>0>63){break a}v[g+4096>>2]=b+1;b=(b<<6)+g|0;z[b+8>>2]=j;z[b+4>>2]=l;z[b>>2]=k;v[b+52>>2]=-1;z[b+12>>2]=m-p;i=C(C(C(n+m)-o)*C(-.5));z[b+24>>2]=q+C(i*j);z[b+20>>2]=s+C(i*l);z[b+16>>2]=r+C(i*k)}return!a|0}function h5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[a+80>>2];a:{b:{c:{switch(b|0){case 0:b=v[c+4>>2];v[d+128>>2]=v[c>>2];v[d+132>>2]=b;v[d+152>>2]=v[c+24>>2];b=v[c+20>>2];v[d+144>>2]=v[c+16>>2];v[d+148>>2]=b;b=v[c+12>>2];v[d+136>>2]=v[c+8>>2];v[d+140>>2]=b;break b;case 1:b=v[c+4>>2];v[d+156>>2]=v[c>>2];v[d+160>>2]=b;v[d+180>>2]=v[c+24>>2];b=v[c+20>>2];v[d+172>>2]=v[c+16>>2];v[d+176>>2]=b;b=v[c+12>>2];v[d+164>>2]=v[c+8>>2];v[d+168>>2]=b;break b;case 2:break c;default:break a}}b=v[c+4>>2];v[d+184>>2]=v[c>>2];v[d+188>>2]=b;v[d+208>>2]=v[c+24>>2];b=v[c+20>>2];v[d+200>>2]=v[c+16>>2];v[d+204>>2]=b;b=v[c+12>>2];v[d+192>>2]=v[c+8>>2];v[d+196>>2]=b}t[d+477|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}}function Zy(a){a=a|0;var b=0,c=0;v[a>>2]=128400;b=v[a+4>>2];a:{if(!b){break a}c=v[b+12>>2];b:{if((c|0)<0|!(c&2147483647)){break b}c=v[b+4>>2];if(!c){break b}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+4>>2];if(!b){break a}}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=0;b=v[a+8>>2];c:{if(!b){break c}c=v[b+12>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=v[b+4>>2];if(!c){break d}b=v[b>>2];Ba[v[v[b>>2]+12>>2]](b,c);b=v[a+8>>2];if(!b){break c}}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=0;b=v[a+176>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+168>>2];if(!b){break e}c=v[a+164>>2];Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function RH(a){var b=0,c=0,d=0;c=w[a+68|0];if(c&1){DH(v[v[a+48>>2]+1136>>2],a);c=w[a+68|0]}if(!(c&8)){MH(v[a+56>>2])}SH(v[v[a+48>>2]+2364>>2],v[a+40>>2]);b=v[a+56>>2];if(b){c=v[v[a+48>>2]+2408>>2];v[c+280>>2]=v[c+280>>2]-1;v[b>>2]=v[c+288>>2];v[c+288>>2]=b}c=v[a+20>>2];if(c){a:{b=v[a+48>>2];b:{d=x[a+8>>1];if(d>>>0<=128){if(!c){break a}d=b+1572|0;v[d>>2]=v[d>>2]-1;b=b+1580|0;v[c>>2]=v[b>>2];break b}if(d>>>0<=256){if(!c){break a}d=b+1864|0;v[d>>2]=v[d>>2]-1;b=b+1872|0;v[c>>2]=v[b>>2];break b}if(d>>>0<=384){if(!c){break a}d=b+2156|0;v[d>>2]=v[d>>2]-1;b=b+2164|0;v[c>>2]=v[b>>2];break b}if(!c){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);break a}v[b>>2]=c}}v[v[a+52>>2]+60>>2]=0;return a}function AD(a){a=a|0;var b=0,c=0;v[a>>2]=129964;BD(a);b=v[a+360>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+352>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+348>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+340>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+332>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+324>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+320>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+312>>2];if(!b){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}eC(a+284|0);nD(a+52|0);v[a+16>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+20>>2]=0;return a|0}function bD(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{e=v[a+20>>2];b:{if(!e){break b}f=v[b>>2];d=f+(f<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;g=e-1&(d>>>16^d);d=v[v[a+12>>2]+(g<<2)>>2];if((d|0)==-1){break b}i=v[a+8>>2];j=v[a+4>>2];while(1){h=(d<<3)+j|0;if(v[h>>2]==(f|0)){break a}d=v[(d<<2)+i>>2];if((d|0)!=-1){continue}break}}t[c|0]=0;if(v[a+36>>2]==v[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){ZC(a,c);e=v[a+20>>2]}b=v[b>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;g=e-1&(b>>>16^b)}b=v[a+28>>2];v[a+28>>2]=b+1;c=v[a+12>>2]+(g<<2)|0;v[v[a+8>>2]+(b<<2)>>2]=v[c>>2];v[c>>2]=b;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return v[a+4>>2]+(b<<3)|0}t[c|0]=1;return h}function Xn(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{e=v[a+20>>2];b:{if(!e){break b}f=v[b>>2];d=f+(f<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;g=e-1&(d>>>16^d);d=v[v[a+12>>2]+(g<<2)>>2];if((d|0)==-1){break b}i=v[a+8>>2];j=v[a+4>>2];while(1){h=(d<<3)+j|0;if(v[h>>2]==(f|0)){break a}d=v[(d<<2)+i>>2];if((d|0)!=-1){continue}break}}t[c|0]=0;if(v[a+36>>2]==v[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){nn(a,c);e=v[a+20>>2]}b=v[b>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;g=e-1&(b>>>16^b)}b=v[a+28>>2];v[a+28>>2]=b+1;c=v[a+12>>2]+(g<<2)|0;v[v[a+8>>2]+(b<<2)>>2]=v[c>>2];v[c>>2]=b;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return v[a+4>>2]+(b<<3)|0}t[c|0]=1;return h}function gS(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=xa-16|0;xa=d;c=v[a+4>>2];f=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;if(f){e=y[f+152>>2]>4294967293}else{e=1}g=v[c+40>>2];h=v[c+28>>2];c=v[c+20>>2];v[d+8>>2]=a;v[d>>2]=c;v[d+4>>2]=c+(h<<2);c=WI(d);a:{if(!c){break a}if(e){e=(f|0)!=0;while(1){b:{c:{switch(w[c+24|0]){case 1:u[c+56>>1]=x[c+56>>1]|32;f=w[c+25|0];if(f&32){break b}t[c+25|0]=f|32;$O(g,c+4|0);break b;case 0:break c;default:break b}}NR(c);XR(c,e)}c=WI(d);if(c){continue}break}break a}while(1){d:{e:{switch(w[c+24|0]){case 0:NR(c);break d;case 1:break e;default:break d}}u[c+56>>1]=x[c+56>>1]|32;e=w[c+25|0];if(e&32){break d}t[c+25|0]=e|32;$O(g,c+4|0)}c=WI(d);if(c){continue}break}}fS(a,b);xa=d+16|0}function lM(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;h=I9(Dx(c,b<<3,1),d,a<<3);a=v[c+16>>2];a:{if(!(a>>>0<=d>>>0&a+v[c+20>>2]>>>0>d>>>0)){if(!d){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,d);return h}j=v[c+4>>2];f=v[c+8>>2];g=f;while(1){i=e;e=e+1|0;b=g;g=b-1|0;a=(g<<2)+j|0;if(y[a>>2]>>0){continue}break}b:{if(b>>>0>=f>>>0){break b}d=i&3;if(d){e=0;while(1){v[a>>2]=v[v[c+4>>2]+(b<<2)>>2];b=b+1|0;a=a+4|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(i-1>>>0<3){break b}while(1){d=b<<2;v[a>>2]=v[d+v[c+4>>2]>>2];v[a+4>>2]=v[(d+v[c+4>>2]|0)+4>>2];v[a+8>>2]=v[(d+v[c+4>>2]|0)+8>>2];v[a+12>>2]=v[(d+v[c+4>>2]|0)+12>>2];a=a+16|0;b=b+4|0;if((f|0)!=(b|0)){continue}break}}v[c+8>>2]=f-1}return h}function gh(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=v[a+44>>2];h=c&2147483647?c<<1:1;a:{if(!h){break a}c=h<<3;if(!(w[a+32|0]|c>>>0>32)){t[a+32|0]=1;d=a;break a}if(!c){break a}d=v[37696];e=d+12|0;d=(k=e,l=c,m=Ba[v[v[d>>2]+20>>2]](d)|0?30787:63804,n=16608,o=553,j=v[v[e>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}g=v[a+40>>2];i=(g<<3)+d|0;c=v[a+36>>2];if((g|0)>0){e=c;f=d;while(1){t[f|0]=w[e|0];v[f+4>>2]=v[e+4>>2];e=e+8|0;f=f+8|0;if(i>>>0>f>>>0){continue}break}}t[i|0]=w[b|0];v[i+4>>2]=v[b+4>>2];b:{if(v[a+44>>2]<0){break b}if((a|0)==(c|0)){t[a+32|0]=0;break b}if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);g=v[a+40>>2]}v[a+44>>2]=h;v[a+36>>2]=d;v[a+40>>2]=g+1}function op(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=v[37696];c=e+12|0;e=(k=c,l=b,m=Ba[v[v[e>>2]+20>>2]](e)|0?35113:63804,n=16608,o=553,j=v[v[c>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}else{e=0}d=v[a>>2];f=v[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){t[c|0]=w[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){t[c|0]=w[d|0];t[c+1|0]=w[d+1|0];t[c+2|0]=w[d+2|0];t[c+3|0]=w[d+3|0];t[c+4|0]=w[d+4|0];t[c+5|0]=w[d+5|0];t[c+6|0]=w[d+6|0];t[c+7|0]=w[d+7|0];d=d+8|0;c=c+8|0;if((f|0)!=(c|0)){continue}break}}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Et(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a+48|0;d=xa-16|0;xa=d;a:{b:{c:{d:{a=a+32|0;e=v[a+4>>2];f=e>>>30|0;switch(f-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}v[c+16>>2]=v[b>>2];v[c+20>>2]=v[b+4>>2];v[c+24>>2]=v[b+8>>2];v[c+28>>2]=v[b+12>>2];a=v[a-12>>2];if(!a){break a}e:{f:{switch(x[a+4>>1]-5|0){case 0:a=a- -64|0;break e;case 8:a=a- -64|0;break e;default:break f}}a=a- -64|0}if((f|0)==1){break a}t[d|0]=w[c- -64|0];v[d+8>>2]=8;TJ(a,c,d+8|0,d,0);break a}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],e>>>24&15);v[a+8>>2]=c}v[c+28>>2]=v[b>>2];v[c+32>>2]=v[b+4>>2];v[c+36>>2]=v[b+8>>2];v[c+40>>2]=v[b+12>>2];Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|8}xa=d+16|0}function rh(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{e=v[a+20>>2];b:{if(!e){break b}g=v[b>>2];d=g+(g<<15^-1)|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=e-1&(d>>>16^d);f=v[v[a+12>>2]+(d<<2)>>2];if((f|0)==-1){break b}i=v[a+8>>2];j=v[a+4>>2];while(1){f=f<<2;h=f+j|0;if(v[h>>2]==(g|0)){break a}f=v[f+i>>2];if((f|0)!=-1){continue}break}}t[c|0]=0;if(v[a+36>>2]==v[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){xh(a,c);e=v[a+20>>2]}b=v[b>>2];b=(b<<15^-1)+b|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=e-1&(b>>>16^b)}b=v[a+28>>2];v[a+28>>2]=b+1;c=b<<2;e=v[a+12>>2]+(d<<2)|0;v[c+v[a+8>>2]>>2]=v[e>>2];v[e>>2]=b;v[a+36>>2]=v[a+36>>2]+1;v[a+32>>2]=v[a+32>>2]+1;return c+v[a+4>>2]|0}t[c|0]=1;return h}function ps(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(w[a+6352|0]){b9(v[37696],8,11709,2961,75857,0);return}d=a+5584|0;ME(d);e=OE(d,0);d=OE(d,1);t[a+6352|0]=1;if(c){c=v[a+6092>>2];Ba[v[v[c>>2]+8>>2]](c);c=v[a+6092>>2];Ba[v[v[c>>2]+12>>2]](c)}v[a+6192>>2]=1;v[a+6188>>2]=b;v[a+6184>>2]=v[a+6092>>2];if(b){Ba[v[v[b>>2]+16>>2]](b)}b=a+6168|0;if(e){c=a+5764|0;v[c>>2]=b;v[a+5768>>2]=1;Ba[v[v[a+6168>>2]+16>>2]](b);v[a+5760>>2]=v[v[c>>2]+16>>2]}if(d){c=a+5804|0;v[c>>2]=b;v[a+5808>>2]=1;Ba[v[v[a+6168>>2]+16>>2]](b);v[a+5800>>2]=v[v[c>>2]+16>>2]}c=v[a+6184>>2];Ba[v[v[c>>2]+72>>2]](c,b);if(e){b=v[a+5760>>2];Ba[v[v[b>>2]+72>>2]](b,a+5744|0)}if(d){b=v[a+5800>>2];Ba[v[v[b>>2]+72>>2]](b,a+5784|0)}}function KI(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=C(0),k=0,l=0,m=0,n=0,o=C(0),q=C(0),r=C(0),s=C(0),t=C(0);g=xa-80|0;xa=g;h=v[a+48>>2];if(w[h+60|0]){eI(h);h=v[a+48>>2]}k=v[h+8>>2];l=v[h+28>>2];m=v[h+24>>2];h=v[h+4>>2];n=v[a+44>>2];c=B(n,24)+c|0;o=z[c>>2];q=z[c+12>>2];r=z[c+16>>2];s=z[c+20>>2];t=z[c+4>>2];i=z[(n<<2)+d>>2];z[g+4>>2]=z[c+8>>2]-i;z[g>>2]=t-i;v[g+64>>2]=-1;v[g+56>>2]=-1;v[g+48>>2]=-1;v[g+40>>2]=-1;v[g+32>>2]=-1;v[g+24>>2]=-1;z[g+12>>2]=i+s;z[g+8>>2]=i+r;c=(p(C(i+q)),j(2));v[g+20>>2]=(c|0)<0?c^-1:c|-2147483648;c=(p(C(o-i)),j(2));v[g+16>>2]=(c|0)<0?c^-1:c|-2147483648;a=a+44|0;c=g+16|0;LI(b,f,k,h,m,l,1,a,c,g,e);MI(b,f,1,a,c,g,k,h,m,l,e);xa=g+80|0} +function $R(a,b,c){var d=0,e=0,f=0,g=0;v[a+4>>2]=b;v[a>>2]=0;v[a+8>>2]=v[a+8>>2]&2147483647;f=v[b+40>>2];d=v[f+2376>>2];e=v[d+12>>2];a:{if(e){g=e-1|0;e=v[v[d+8>>2]+(g<<2)>>2];v[d+12>>2]=g;break a}e=v[d+4>>2];v[d+4>>2]=e+1}d=e&2147483647;v[a+8>>2]=d|v[a+8>>2]&-2147483648;d=d+1|0;e=v[f+1140>>2];f=v[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){YI(e,d)}v[e+8>>2]=d}v[a>>2]=v[b+32>>2];v[b+32>>2]=a;v[b+36>>2]=v[b+36>>2]+1;v[a+36>>2]=-1;v[a+28>>2]=c;v[a+16>>2]=-128;b=v[v[v[a+4>>2]+40>>2]+2368>>2];c=v[b+12>>2];b:{if(c){d=c-1|0;c=v[v[b+8>>2]+(d<<2)>>2];v[b+12>>2]=d;break b}c=v[b+4>>2];v[b+4>>2]=c+1}v[a+32>>2]=c;YR(a);return a}function dj(a,b,c){var d=C(0),e=0,f=0,g=C(0);d=z[v[a>>2]+5132>>2];g=z[a+56>>2];e=d>g&c;if((b|c)&w[a+60|0]!=0?1:e){d=e?d:g;if(v[a+88>>2]){c=0;while(1){b=v[v[a+84>>2]+(c<<2)>>2];e=b+48|0;a:{b:{c:{switch((v[b+52>>2]>>>30|0)-2|0){case 0:f=v[e>>2];if(w[f+4785|0]){break b}default:z[b+308>>2]=d;v[b+312>>2]=0;VG(b- -64|0,d,1);break a;case 1:break c}}f=v[e>>2]}z[b+308>>2]=d;v[b+312>>2]=0;Yu(f,e);v[b+316>>2]=v[b+316>>2]&-117440513|83886080}c=c+1|0;if(c>>>0>2]){continue}break}}t[a+60|0]=0;z[a+56>>2]=d;d:{e:{switch((v[a+4>>2]>>>30|0)-2|0){case 1:c=v[a>>2];break d;case 0:c=v[a>>2];if(w[c+4785|0]){break d}break;default:break e}}z[a+44>>2]=d;return}Yu(c,a);v[a+4>>2]=v[a+4>>2]&-897|640}}function CW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);o=z[c+4>>2];p=z[a+4>>2];i=z[d>>2];f=C(i+i);m=z[d+8>>2];n=z[d+4>>2];h=z[d+12>>2];k=C(h+h);l=z[c+8>>2];g=C(C(C(f*m)-C(n*k))*l);j=C(C(z[b+24>>2]-z[d+24>>2])-g);g=C(C(-g)-g);h=C(C(C(i*f)+C(C(h*k)+C(-1)))*l);i=C(C(z[b+16>>2]-z[d+16>>2])-h);h=C(C(-h)-h);f=C(l*C(C(m*k)+C(f*n)));k=C(C(-f)-f);f=C(C(z[b+20>>2]-z[d+20>>2])-f);l=C(C(j*g)+C(C(i*h)+C(k*f)));a:{if(l<=C(0)){break a}m=C(C(g*g)+C(C(h*h)+C(k*k)));if(m<=l){j=C(j-g);f=C(f-k);i=C(i-h);break a}n=g;g=C(l/m);j=C(j-C(n*g));f=C(f-C(k*g));i=C(i-C(h*g))}g=C(C(j*j)+C(C(i*i)+C(f*f)));j=C(p+o);return g<=C(j*j)|0}function nJ(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=xa-32|0;xa=f;i=w[v[b+28>>2]- -64|0]<<3&32;g=v[b+4>>2];g=w[v[g+44>>2]+9|0]-1>>>0<2?g:0;a:{if(!g){break a}g=v[g+44>>2];if(w[g+9|0]!=2){i=i|w[g+44|0]<<4&16|1;break a}i=i|2}b=v[b+28>>2];g=v[b+28>>2];j=v[b+24>>2];k=v[b+20>>2];l=v[b+16>>2];b=w[v[c+28>>2]- -64|0]<<3&32;h=v[c+4>>2];h=w[v[h+44>>2]+9|0]-1>>>0<2?h:0;b:{if(!h){break b}h=v[h+44>>2];if(w[h+9|0]!=2){b=b|w[h+44|0]<<4&16|1;break b}b=b|2}c=v[c+28>>2];h=v[c+24>>2];m=v[c+28>>2];a=v[a+2188>>2];n=v[c+16>>2];c=v[c+20>>2];v[f+28>>2]=g;v[f+24>>2]=j;v[f+20>>2]=k;v[f+16>>2]=l;v[f+8>>2]=h;v[f+12>>2]=m;v[f>>2]=n;v[f+4>>2]=c;Ba[v[v[a>>2]+4>>2]](a,d,i,f+16|0,b,f,e);xa=f+32|0}function tR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=v[a+28>>2];f=v[e+4688>>2];if(f){a=0;while(1){b=v[v[e+4684>>2]+(a<<2)>>2];a:{if(!(b&1)){break a}b=b&-2;d=v[b+8>>2];c=v[b+4>>2];b=b?b+4|0:0;VE(c,b);VE(d,b);b=w[v[d+44>>2]+9|0];c=v[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+100>>2];v[c+148>>2]=v[c+148>>2]+1;if(b-1>>>0>1){break a}b=v[d+100>>2];v[b+148>>2]=v[b+148>>2]+1}a=a+1|0;if((f|0)!=(a|0)){continue}break}}c=v[e+4700>>2];if(c){a=0;while(1){b=v[v[e+4696>>2]+(a<<2)>>2];if(b&1){b=b&-2;d=b+4|0;b:{c:{switch(w[b+24|0]){case 0:IR(b,0);break b;case 1:rS(b);break b;case 4:NH(d);break b;case 5:break c;default:break b}}mF(d)}VE(v[b+4>>2],d);VE(v[b+8>>2],d)}a=a+1|0;if((c|0)!=(a|0)){continue}break}}}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,m=0,n=0;c=v[a+268>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=g<<2;if(!(w[a+256|0]|c>>>0>256)){t[a+256|0]=1;e=a;break a}if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?29035:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+260>>2];d=v[a+264>>2];if((d|0)>0){h=(d<<2)+e|0;d=c;f=e;while(1){v[f>>2]=v[d>>2];d=d+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}d=v[a+264>>2]}v[(d<<2)+e>>2]=v[b>>2];b:{if(v[a+268>>2]<0){break b}if((a|0)==(c|0)){t[a+256|0]=0;break b}if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c)}v[a+268>>2]=g;v[a+260>>2]=e;v[a+264>>2]=v[a+264>>2]+1}function vT(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,m=0,o=0,p=0,q=0,r=0,s=0,t=C(0);g=xa-48|0;xa=g;h=v[c+36>>2];if(h){i=v[((v[a+96>>2]<<2)+a|0)+100>>2];j=v[a+8>>2];k=v[c+40>>2];v[g+32>>2]=3;z[g+36>>2]=z[b+40>>2];z[g+40>>2]=z[b+44>>2];z[g+44>>2]=z[b+48>>2];b=v[c+24>>2];l(0,v[c+20>>2]);l(1,b|0);m=+n();b=v[c+32>>2];l(0,v[c+28>>2]);l(1,b|0);o=+n();b=v[c+16>>2];l(0,v[c+12>>2]);l(1,b|0);p=+n();q=A[d>>3];r=A[d+8>>3];s=A[d+16>>3];z[g>>2]=z[a+244>>2];z[g+4>>2]=z[a+248>>2];z[g+8>>2]=z[a+252>>2];t=z[a+256>>2];z[g+24>>2]=s-o;z[g+20>>2]=r-m;z[g+16>>2]=q-p;z[g+12>>2]=t;a=wT(a,c,f,e,g+32|0,g,h,B(k,36)+j|0,h>>>0>i>>>0?i:0)}else{a=0}xa=g+48|0;return a|0}function tL(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(b,40);if(!d){break a}c=v[37696];f=c+12|0;f=(i=f,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?47035:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,40)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+36>>2];v[c+32>>2]=v[d+32>>2];v[c+36>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+40|0;c=c+40|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function aR(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=v[a+28>>2];a=v[h+980>>2];i=v[a+332>>2];if(i){j=v[a+328>>2];while(1){i=i-1|0;f=v[j+8>>2];a:{if(!f){break a}b:{d=w[f+24|0];switch(d|0){case 0:case 2:break b;default:break a}}g=v[f+12>>2];a=B(d,12)+h|0;c=v[a+56>>2]-1|0;v[a+56>>2]=c;b=v[a+52>>2];e=g<<2;v[b+e>>2]=v[b+(c<<2)>>2];v[f+12>>2]=-1;if(c>>>0>g>>>0){v[v[e+v[a+52>>2]>>2]+8>>2]=g}c=(d<<2)+h|0;d=v[c+88>>2];c:{if(d>>>0<=g>>>0){break c}b=c;c=d-1|0;v[b+88>>2]=c;if(c>>>0>=y[a+56>>2]){break c}b=e;e=v[a+52>>2];b=b+e|0;d=v[b>>2];k=b;b=e;e=c<<2;b=v[b+e>>2];v[k>>2]=b;v[e+v[a+52>>2]>>2]=d;v[d+8>>2]=c;v[b+8>>2]=g}jJ(v[h+2168>>2],f)}j=j+12|0;if(i){continue}break}}}function u_(a,b,c,d){var e=0,f=0,g=0,h=0,i=C(0),j=0,k=C(0),l=C(0),m=C(0),n=0,o=0,p=C(0),q=0,r=0;j=xa-32|0;e=j;v[e+24>>2]=0;v[e+28>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;k=z[b+8>>2];e=v[a>>2];g=B(e,12)+c|0;l=z[b>>2];m=z[b+4>>2];i=C(C(k*z[g+8>>2])+C(C(l*z[g>>2])+C(m*z[g+4>>2])));q=v[d+20>>2];r=v[d+16>>2];while(1){a:{b=(e<<2)+r|0;d=x[b+2>>1];b=x[b>>1];v[a>>2]=e;if(!b){break a}d=d+q|0;g=e;while(1){b=b-1|0;h=w[d|0];f=1<>>3&28)+j|0;o=v[n>>2];if(!(f&o)){v[n>>2]=f|o;f=B(h,12)+c|0;p=C(C(k*z[f+8>>2])+C(C(l*z[f>>2])+C(m*z[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 FP(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=B(b,24);if(!d){break a}c=v[37696];e=c+12|0;e=(j=e,k=d,l=Ba[v[v[c>>2]+20>>2]](c)|0?34753:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){h=B(c,24)+e|0;c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=x[d+10>>1]|x[d+12>>1]<<16;g=x[d+6>>1]|x[d+8>>1]<<16;u[c+6>>1]=g;u[c+8>>1]=g>>>16;u[c+10>>1]=f;u[c+12>>1]=f>>>16;u[c+14>>1]=x[d+14>>1];f=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=f;d=d+24|0;c=c+24|0;if(h>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function zN(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(x[a+68>>1]<=1){f=v[c+4624>>2];if(!f){break a}c=x[a+34>>1];a=0;if(f-1>>>0>=3){h=f&-4;e=b<<1;while(1){g=a<<2;u[e+(g+d|0)>>1]=c;u[e+((g|4)+d|0)>>1]=c;u[e+((g|8)+d|0)>>1]=c;u[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){u[((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=v[c+4624>>2];if(!e){break a}c=c+528|0;f=v[a- -64>>2];g=v[v[a+60>>2]+44>>2];a=0;while(1){h=v[(c+(a<<6)|0)+52>>2];u[((a<<2)+d|0)+(b<<1)>>1]=x[f+((w[(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 Ug(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;if(v[a+36>>2]+(Ba[v[v[b>>2]+76>>2]](b)|0)>>>0>y[a+28>>2]){b9(v[37696],2,11066,249,23971,0);return 0}if(Ba[v[v[b>>2]+96>>2]](b)|0){b9(v[37696],2,11066,255,21131,0);return 0}if(Ba[v[v[b>>2]+24>>2]](b)|0){b9(v[37696],2,11066,261,22288,0);return 0}c=Ba[v[v[b>>2]+100>>2]](b)|0;v[c+96>>2]=a;if(v[c+88>>2]){g=a+8|0;h=v[c+84>>2];while(1){d=v[(e<<2)+h>>2];oh(d+v[(x[d+4>>1]<<2)+86240>>2]|0,a);f=v[a+36>>2];v[a+36>>2]=f+1;v[v[a+40>>2]+(f<<2)>>2]=d;ru(g,d+48|0);e=e+1|0;if(e>>>0>2]){continue}break}}a:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a+8>>2];if(!a){break a}a=a-16|0;if(!a){break a}jq(a,b)}return 1}function FR(a,b,c){var d=0,e=0;u[a+66>>1]=x[b>>1];a:{switch(v[a+68>>2]-5|0){case 0:b:{if(x[a+120>>1]>=c>>>0){e=c<<1;d=v[a+116>>2];break b}d=v[a+116>>2];if(!(!d|!w[a+65|0])){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);u[a+120>>1]=0}d=v[37696]+12|0;e=c<<1;d=Ba[v[v[d>>2]+8>>2]](d,e,24422,18135,109)|0;u[a+120>>1]=c;v[a+116>>2]=d;t[a+65|0]=1}I9(d,b,e);u[a+120>>1]=c;return;case 1:c:{if(x[a+100>>1]>=c>>>0){e=c<<1;d=v[a+96>>2];break c}d=v[a+96>>2];if(!(!d|!w[a+65|0])){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d);u[a+100>>1]=0}d=v[37696]+12|0;e=c<<1;d=Ba[v[v[d>>2]+8>>2]](d,e,24422,18135,109)|0;u[a+100>>1]=c;v[a+96>>2]=d;t[a+65|0]=1}I9(d,b,e);u[a+100>>1]=c;break;default:break a}}}function sI(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=B(f,12);if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?35453:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=B(c,12)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=B(c,12)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;v[c+8>>2]=v[b+8>>2];b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function rY(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=B(f,12);if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?46393:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=B(c,12)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=B(c,12)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;v[c+8>>2]=v[b+8>>2];b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function fE(a){a=a|0;var b=0,c=0;v[a>>2]=130076;b=v[a+708>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+700>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+696>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+688>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+648>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+640>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+640>>2]=0;b=v[a+644>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+644>>2]=0;b=v[a+628>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+620>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}GC(a+4|0);return a|0}function Pf(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;e=xa-16|0;xa=e;if(d){while(1){f=B(h,40)+c|0;b=x[f+30>>1];a:{if(b&36){g=v[a+8>>2];b:{if(t[149520]&1){b=v[37379];break b}b=aa(3,111496)|0;t[149520]=1;v[37379]=b}v[e>>2]=v[f>>2];v[e+8>>2]=v[f+4>>2];ba(b|0,g|0,14681,e|0);break a}if(b&16){g=v[a+8>>2];c:{if(t[149520]&1){b=v[37379];break c}b=aa(3,111496)|0;t[149520]=1;v[37379]=b}v[e>>2]=v[f>>2];v[e+8>>2]=v[f+4>>2];ba(b|0,g|0,23206,e|0);break a}if(!(b&8)){break a}g=v[a+8>>2];d:{if(t[149520]&1){b=v[37379];break d}b=aa(3,111496)|0;t[149520]=1;v[37379]=b}v[e>>2]=v[f>>2];v[e+8>>2]=v[f+4>>2];ba(b|0,g|0,2099,e|0)}h=h+1|0;if((h|0)!=(d|0)){continue}break}}xa=e+16|0}function PU(a,b,c){var d=0,e=0,f=0;a:{b:{c:{d:{e:{d=x[a+4>>1];switch(d|0){case 1:break d;case 0:break e;default:break c}}t[a+7|0]=1;u[a+4>>1]=1;v[a>>2]=b;return}d=v[a>>2];c=Ba[v[v[c>>2]>>2]](c,8)|0;v[a>>2]=c;v[c>>2]=d;t[a+7|0]=0;e=a+6|0;break b}e=a+6|0;if(!w[a+6|0]){d=d|d>>>1;d=d>>>2|d;d=d>>>4|d;d=I9(Ba[v[v[c>>2]>>2]](c,((d>>>8|d)<<2)+4|0)|0,v[a>>2],x[a+4>>1]<<2);if(w[a+6|0]){Ba[v[v[c>>2]+4>>2]](c,v[a>>2],0)}v[a>>2]=d;break b}if((Uaa(d)|0)!=1){break a}if(Ba[v[v[c>>2]+8>>2]](c,d,d<<1)|0){break a}f=I9(Ba[v[v[c>>2]>>2]](c,d<<3)|0,v[a>>2],x[a+4>>1]<<2);if(w[a+6|0]){Ba[v[v[c>>2]+4>>2]](c,v[a>>2],d<<2)}v[a>>2]=f}t[e|0]=1}c=x[a+4>>1];u[a+4>>1]=c+1;v[v[a>>2]+(c<<2)>>2]=b}function vH(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=x[a>>1];e=x[b>>1]|c&1024;u[b>>1]=e;a:{if((c|0)==(e|0)){break a}u[a>>1]=e;a=v[a+60>>2];if(!a){break a}u[d+8>>1]=c;u[d>>1]=x[b>>1];c=x[d>>1];u[a+10>>1]=c;b=x[d+8>>1]&6;c=c&6;b:{if(!(b|!c)){c=v[a+60>>2];b=v[a- -64>>2];if(!((v[c+164>>2]?0:c)|(v[b+164>>2]?0:b))){if(c){BH(v[c+164>>2],v[v[a+48>>2]+1136>>2]);break b}BH(v[b+164>>2],v[v[a+48>>2]+1136>>2]);break b}CH(v[v[a+48>>2]+1136>>2],a);break b}c:{if(!b|c){break c}if(!(t[a+68|0]&1)){b=v[a+60>>2];d:{if(b){b=v[b+164>>2];if(b){break d}}b=v[a- -64>>2];if(!b){break c}b=v[b+164>>2];if(!b){break c}}IH(v[v[a+48>>2]+1136>>2],b,0);break b}DH(v[v[a+48>>2]+1136>>2],a)}}}xa=d+16|0}function dz(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=v[37696];d=c+12|0;c=(i=d,j=(b<<5)+131|0,k=Ba[v[v[c>>2]+20>>2]](c)|0?45645:63804,l=16608,m=553,h=v[v[d>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0);if(!c){break a}f=c+131&-128;v[f-4>>2]=f-c}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<5)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-v[d-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=f}function Kp(a){a=a|0;var b=0,c=0;v[a>>2]=125980;b=v[a+60>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+52>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+48>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+40>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+36>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+28>>2];if(!b){break c}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+24>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=v[a+16>>2];if(!b){break d}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=v[a+4>>2];if(!b){break e}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function Kt(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=v[37393];a:{if(w[a+36|0]&2){f=v[a+40>>2];e=x[f+124>>1];f=(e|0)==1?f+120|0:v[v[a+32>>2]+4856>>2]+(v[f+120>>2]<<1)|0;break a}a=a+48|0;f=GR(a);g=v[a+68>>2];e=1;b:{if(g-7>>>0<4294967294){break b}e=x[a+120>>1];if((g|0)==5){break b}e=x[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){v[(a<<2)+b>>2]=v[v[h+40>>2]+(x[e+(a<<1)>>1]<<2)>>2];g=a|1;v[(g<<2)+b>>2]=v[v[h+40>>2]+(x[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}v[(a<<2)+b>>2]=v[v[h+40>>2]+(x[e+(a<<1)>>1]<<2)>>2]}return c|0}function KU(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=C(0),w=C(0);p=A[g+16>>3];k=p+ +z[h+8>>2];v=z[f+8>>2];c=C(c*C(.5));b=C(b+d);l=+C(C(C(D(v))*c)+b);u=k+l;j=p+l;u=j>3];m=q+ +z[h+4>>2];d=z[f+4>>2];j=+C(C(C(D(d))*c)+b);o=m+j;r=q+j;r=o>r?o:r;s=A[g>>3];n=s+ +z[h>>2];w=z[f>>2];o=+C(C(C(D(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!=C(0)){q=q-+C(d*e);i=q+j;r=i>r?i:r;s=s-+C(w*e);i=s+o;t=i>t?i:t;p=p-+C(v*e);i=p-l;k=i>3]=l;A[a+32>>3]=r;A[a+24>>3]=t;A[a+16>>3]=k;A[a+8>>3]=m;A[a>>3]=n}function x0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=C(0);e=xa+-64|0;xa=e;n=v[c+36>>2];h=z[b+4>>2];j=C(h+h);g=z[b+8>>2];k=C(j*g);f=z[b>>2];i=C(f+f);m=z[b+12>>2];l=C(i*m);z[e+28>>2]=k-l;z[e+20>>2]=k+l;f=C(C(1)-C(f*i));k=C(h*j);z[e+32>>2]=f-k;o=f;f=C(g+g);l=C(g*f);z[e+16>>2]=o-l;g=C(i*g);j=C(j*m);z[e+24>>2]=g+j;h=C(i*h);i=C(f*m);z[e+12>>2]=h-i;z[e+8>>2]=g-j;z[e+4>>2]=h+i;z[e>>2]=C(C(1)-k)-l;z[e+36>>2]=z[b+16>>2];z[e+40>>2]=z[b+20>>2];z[e+44>>2]=z[b+24>>2];z[e+48>>2]=z[a+4>>2];z[e+52>>2]=z[a+8>>2];z[e+56>>2]=z[a+12>>2];a=Ba[v[(x[n+4>>1]<<2)+143704>>2]](e,n,d,c+4|0,0)|0;xa=e- -64|0;return a|0}function qr(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=v[a+8>>2];i=d&2147483647?d<<1:1;a:{if(!i){break a}c=i<<4;if(!c){break a}e=v[37696];d=e+12|0;e=(k=d,l=c,m=Ba[v[v[e>>2]+20>>2]](e)|0?27541:63804,n=16608,o=553,j=v[v[d>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}h=v[a+4>>2];g=(h<<4)+e|0;d=v[a>>2];if((h|0)>0){f=d;c=e;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];v[c+12>>2]=v[f+12>>2];f=f+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}}z[g>>2]=z[b>>2];z[g+4>>2]=z[b+4>>2];z[g+8>>2]=z[b+8>>2];v[g+12>>2]=v[b+12>>2];if(!(!d|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d);h=v[a+4>>2]}v[a+8>>2]=i;v[a>>2]=e;v[a+4>>2]=h+1}function T4(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=v[a+8>>2];i=d&2147483647?d<<1:1;a:{if(!i){break a}c=i<<4;if(!c){break a}e=v[37696];d=e+12|0;e=(k=d,l=c,m=Ba[v[v[e>>2]+20>>2]](e)|0?42681:63804,n=16608,o=553,j=v[v[d>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}h=v[a+4>>2];g=(h<<4)+e|0;d=v[a>>2];if((h|0)>0){f=d;c=e;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];z[c+12>>2]=z[f+12>>2];f=f+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}}z[g>>2]=z[b>>2];z[g+4>>2]=z[b+4>>2];z[g+8>>2]=z[b+8>>2];z[g+12>>2]=z[b+12>>2];if(!(!d|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d);h=v[a+4>>2]}v[a+8>>2]=i;v[a>>2]=e;v[a+4>>2]=h+1}function IH(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;f=xa-16|0;xa=f;d=AH(b);if(w[d+44|0]&4){v[f+4>>2]=d;Pg(a+336|0,f+4|0);t[d+44|0]=w[d+44|0]&251}h=a+296|0;while(1){g=v[d>>2];b=v[g+28>>2];if(b){g=v[g+20>>2];while(1){b=b-1|0;e=v[g>>2];a:{if(w[e+20|0]!=4){break a}e=v[e+24>>2];if((e|0)==(c|0)|!(!v[(v[v[v[e+48>>2]+1004>>2]+168>>2]+(v[e+40>>2]<<5)|0)+12>>2]&(w[v[e+52>>2]]&6)!=0)|t[e+68|0]&1){break a}v[f+8>>2]=e;i=rh(h,f+8|0,f+15|0);if(!w[f+15|0]){v[i>>2]=v[f+8>>2]}t[e+68|0]=w[e+68|0]|1}g=g+4|0;if(b){continue}break}g=v[d>>2]}b=v[d+16>>2];v[g+164>>2]=0;if(v[d+20>>2]){KH(d)}v[a+284>>2]=v[a+284>>2]-1;v[d>>2]=v[a+292>>2];v[a+292>>2]=d;d=b;if(d){continue}break}xa=f+16|0}function IB(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;g=v[a+8>>2];if(g){j=v[a+4>>2];while(1){a=B(h,12)+j|0;k=v[a+4>>2];if(k){m=v[a>>2];e=0;while(1){c=B(l,28)+b|0;d=B(e,36)+m|0;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];a=0;i=0;n=c;f=v[d+24>>2];if(f){a:{while(1){c=B(a,12)+j|0;d=v[c+4>>2];c=v[c>>2];if(!(c>>>0>f>>>0|c+B(d,36)>>>0<=f>>>0)){a=(f-c|0)/36|0;break a}i=d+i|0;a=a+1|0;if((g|0)!=(a|0)){continue}break}a=-1}a=a+i<<1}else{a=v[d+32>>2]<<1&30|v[d+28>>2]<<5|1}v[n+24>>2]=a;l=l+1|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}h=h+1|0;if((g|0)!=(h|0)){continue}break}}}function Yk(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=v[a+28>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<2;if(!(w[a+16|0]|c>>>0>16)){t[a+16|0]=1;d=a;break a}if(!c){break a}d=v[37696];e=d+12|0;d=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?58409:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}e=v[a+24>>2];h=(e<<2)+d|0;if((e|0)>0){g=v[a+20>>2];c=d;while(1){v[c>>2]=v[g>>2];g=g+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[b>>2];b:{if(v[a+28>>2]<0){break b}b=v[a+20>>2];if((b|0)==(a|0)){t[a+16|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);e=v[a+24>>2]}v[a+28>>2]=f;v[a+20>>2]=d;v[a+24>>2]=e+1}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=v[a+28>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<2;if(!(w[a+16|0]|c>>>0>16)){t[a+16|0]=1;d=a;break a}if(!c){break a}d=v[37696];e=d+12|0;d=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?58297:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}e=v[a+24>>2];h=(e<<2)+d|0;if((e|0)>0){g=v[a+20>>2];c=d;while(1){v[c>>2]=v[g>>2];g=g+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[b>>2];b:{if(v[a+28>>2]<0){break b}b=v[a+20>>2];if((b|0)==(a|0)){t[a+16|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);e=v[a+24>>2]}v[a+28>>2]=f;v[a+20>>2]=d;v[a+24>>2]=e+1}function Gj(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;e=xa-16|0;xa=e;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;f=v[a+4>>2];d=v[a+8>>2];g=f>>>24&15;h=a+v[((g<<2)+89188|0)+12>>2]|0;i=w[(f&1?d:h+8|0)|0];a:{if(c){b=b|i;b:{c:{switch((f>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}t[e|0]=b;QE(h,e);break a}if(!d){d=Qu(v[a>>2],g);v[a+8>>2]=d}t[d|0]=b;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1;break a}b=(b^-1)&i;d:{e:{switch((f>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break d}break;case 1:break d;default:break e}}t[e+8|0]=b;QE(h,e+8|0);break a}if(!d){d=Qu(v[a>>2],g);v[a+8>>2]=d}t[d|0]=b;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=e+16|0}function UV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0);c=xa-16|0;xa=c;o=z[f+24>>2];p=z[f+20>>2];t=z[e+4>>2];q=z[f+16>>2];h=z[e+8>>2];j=z[f+8>>2];i=z[f+12>>2];k=z[f+4>>2];g=z[f>>2];BV(c,d);r=z[c+12>>2];l=C(g+g);m=C(i+i);s=C(h*C(C(j*l)-C(k*m)));n=z[c+8>>2];g=C(h*C(C(g*l)+C(C(i*m)+C(-1))));i=z[c>>2];j=C(h*C(C(j*m)+C(l*k)));h=z[c+4>>2];k=C(r+C(C(C(o+s)*n)+C(C(C(q+g)*i)+C(C(p+j)*h))));g=C(r+C(C(C(o-s)*n)+C(C(C(q-g)*i)+C(C(p-j)*h))));g=C((g>k?k:g)-t);d=g>C(0);if(!d){z[a+8>>2]=-n;z[a+4>>2]=-h;z[a>>2]=-i;z[b>>2]=g>2],h+40|0,h+16|0)){v[h+44>>2]=0;v[h+48>>2]=0;v[h+8>>2]=-1;a:{if(w[f|0]&2){if(z[h+40>>2]==C(0)){e=z[d>>2];i=z[d+4>>2];z[h+36>>2]=-z[d+8>>2];z[h+32>>2]=-i;z[h+28>>2]=-e;g=3;break a}j=z[b+20>>2];i=z[b+24>>2];e=C(z[h+16>>2]-z[b+16>>2]);z[h+28>>2]=e;i=C(z[h+24>>2]-i);z[h+36>>2]=i;j=C(z[h+20>>2]-j);z[h+32>>2]=j;g=3;k=C(K(C(C(i*i)+C(C(e*e)+C(j*j)))));if(!(k>C(0))){break a}l=i;i=C(C(1)/k);z[h+36>>2]=l*i;z[h+32>>2]=j*i;z[h+28>>2]=e*i;break a}v[h+28>>2]=0;v[h+32>>2]=0;v[h+36>>2]=0;g=1}u[h+12>>1]=g;a=1}else{a=0}return a|0}function V7(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);f=xa+-64|0;xa=f;E5(f+32|0,f,b,c,d);if(e&1){Ba[v[v[a>>2]+8>>2]](a,f+32|0,f)}if(!(!(e&2)|!(w[b+116|0]&2))){g=z[f+32>>2];i=z[f+40>>2];h=C(z[f+24>>2]-z[f+56>>2]);h=C(h+h);k=g;g=C(z[f+16>>2]-z[f+48>>2]);g=C(g+g);j=C(z[f+20>>2]-z[f+52>>2]);j=C(j+j);l=z[f+36>>2];m=C(k*C(C(i*h)+C(C(k*g)+C(j*l))));k=g;g=z[f+44>>2];i=C(m+C(C(k*C(C(g*g)+C(-.5)))-C(g*C(C(l*h)-C(j*i)))));g=C(0);c=f+32|0;h=z[b+104>>2];g=z[b+92>>2]>C(0)|z[b+88>>2]>C(0)?g:z[b+96>>2];Ba[v[v[a>>2]+12>>2]](a,c,f,h,i>2];Ba[v[v[a>>2]+12>>2]](a,c,f,h,i>C(h-g))}xa=f- -64|0}function $W(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;var i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);a=xa-16|0;xa=a;BV(a,b);b=0;m=z[d+8>>2];j=z[a+8>>2];n=z[d>>2];k=z[a>>2];o=z[d+4>>2];l=z[a+4>>2];i=C(C(m*j)+C(C(n*k)+C(o*l)));a:{if(i>=C(0)|iC(-1.0000000116860974e-7)){break a}p=z[c+8>>2];q=z[c>>2];r=z[c+4>>2];i=C(C(-C(z[a+12>>2]+C(C(p*j)+C(C(q*k)+C(l*r)))))/i);z[h+24>>2]=p+C(m*i);z[h+20>>2]=r+C(o*i);z[h+16>>2]=q+C(n*i);if(i>2]=0;v[h+48>>2]=0;v[h+8>>2]=-1;z[h+40>>2]=i;z[h+28>>2]=k;u[h+12>>1]=3;z[h+36>>2]=j;z[h+32>>2]=l;b=1}xa=a+16|0;return b|0}function Oy(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=0,i=0;h=x[d+12>>1]|x[c+12>>1];v[a+8>>2]=h;if(!(h&1)){a:{b:{c:{d:{e:{h=w[c+14|0]>>>4|0;i=w[d+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=C(C(z[c+4>>2]+z[d+4>>2])*C(.5));e=C(C(z[c>>2]+z[d>>2])*C(.5));break a}f=z[c+4>>2];e=z[d+4>>2];f=e>f?f:e;e=z[c>>2];g=z[d>>2];e=e>2]*z[d+4>>2]);e=C(z[c>>2]*z[d>>2]);break a}f=z[c+4>>2];e=z[d+4>>2];f=e>2];g=z[d>>2];e=e>g?e:g}g=z[b>>2];e=C(e*z[b+4>>2]);e=e>C(0)?e:C(0);z[a+4>>2]=e;f=C(f*g);z[a>>2]=C(f-e)>=C(0)?f:e;return}v[a>>2]=0;v[a+4>>2]=0;v[a+8>>2]=h|2}function Dz(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(b,36);if(!d){break a}c=v[37696];f=c+12|0;f=(i=f,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?33421:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,36)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;v[c+32>>2]=v[d+32>>2];e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+36|0;c=c+36|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function tl(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=v[d+4>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[d>>2]+4785|0]){break b}}dF(d+12|0,b,c);break a}if(!(f&8388608)){e=v[d+8>>2];if(!e){e=Qu(v[d>>2],f>>>24&15);v[d+8>>2]=e}f=d+12|0;v[e+348>>2]=w[f+262|0];v[e+352>>2]=w[f+263|0];v[e+356>>2]=w[f+264|0];v[e+360>>2]=w[f+265|0];v[e+364>>2]=w[f+266|0];v[e+368>>2]=w[f+267|0]}e=v[d+8>>2];if(!e){e=Qu(v[d>>2],w[d+7|0]&15);v[d+8>>2]=e}v[((b<<2)+e|0)+348>>2]=c;Yu(v[d>>2],d);v[d+4>>2]=v[d+4>>2]|8388608}a=v[a+396>>2];a=Ba[v[v[a>>2]+248>>2]](a)|0;a=Ba[v[v[a>>2]+100>>2]](a)|0;v[a+104>>2]=v[a+104>>2]+1}function rX(a,b,c,d,e,f,g){var h=0,i=0;h=xa-16|0;xa=h;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;a:{if(w[h+11|0]!=78|w[h+10|0]!=88|w[h+9|0]!=83){break a}t[f|0]=(w[h+8|0]^-1)&1;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;if(w[h+11|0]!=(a&255)|w[h+10|0]!=(b&255)|(w[h+9|0]!=(c&255)|w[h+8|0]!=(d&255))){break a}a=w[f|0];Ba[v[v[g>>2]>>2]](g,h+12|0,4)|0;if(a){a=w[h+15|0];t[h+15|0]=w[h+12|0];t[h+12|0]=a;a=w[h+13|0];t[h+13|0]=w[h+14|0];t[h+14|0]=a}v[e>>2]=v[h+12>>2];i=1}xa=h+16|0;return i}function Zs(a){a=a|0;var b=0,c=0,d=0,e=C(0),f=0;c=v[a+28>>2];b=c+32|0;a=v[a+20>>2];f=xa-48|0;xa=f;e=z[c+6072>>2];if(e!=C(0)){z[b+1080>>2]=e;v[b+4528>>2]=1;v[b+4524>>2]=a;z[b+1084>>2]=e>C(0)?C(C(1)/e):C(0);if(a){Ba[v[v[a>>2]+16>>2]](a);v[b+4520>>2]=v[v[b+4524>>2]+16>>2]}cP(b);FH(v[b+1136>>2],v[b+976>>2]);a=b+4504|0;dP(b,a);c=f+8|0;d=v[v[b+976>>2]+1024>>2];Ba[v[v[d>>2]+84>>2]](c,d);GJ(v[b+2168>>2],c,(v[b+2360>>2]&8)>>>3|0);v[b+2356>>2]=v[b+2356>>2]&-7;c=b+4564|0;v[c>>2]=a;v[b+4568>>2]=1;Ba[v[v[b+4504>>2]+16>>2]](a);d=b+4560|0;v[d>>2]=v[v[c>>2]+16>>2];c=v[b+4520>>2];Ba[v[v[c>>2]+72>>2]](c,a);a=v[d>>2];Ba[v[v[a>>2]+72>>2]](a,b+4544|0)}xa=f+48|0}function JF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=xa-16|0;xa=c;v[c+8>>2]=b;f=b>>>7|0;if((f|0)!=33554431){b=v[a+16>>2]+B(f,24)|0;g=b;b=w[b+4|0];a:{if(!(b&32)){e=b;break a}e=b&223;t[g+4|0]=e;d=v[a+28>>2];h=v[a+324>>2];i=v[(h+(v[a+328>>2]<<2)|0)-4>>2];v[d+(i>>>5&134217724)>>2]=v[(f<<2)+d>>2];v[(v[(v[c+8>>2]>>>5&134217724)+d>>2]<<2)+h>>2]=i;v[a+328>>2]=v[a+328>>2]-1;v[(v[c+8>>2]>>>5&134217724)+d>>2]=33554431;if(!(b&4)){break a}v[(v[c+8>>2]>>>5&134217724)+d>>2]=v[a+140>>2];b=v[a+140>>2];if(b>>>0>=(v[a+144>>2]&2147483647)>>>0){ZF(a+136|0,c+8|0);e=w[g+4|0];break a}v[v[a+136>>2]+(b<<2)>>2]=v[c+8>>2];v[a+140>>2]=v[a+140>>2]+1}t[g+4|0]=e|1}xa=c+16|0}function t4(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<2;if(!c){break a}d=v[37696];e=d+12|0;d=(j=e,k=c,l=Ba[v[v[d>>2]+20>>2]](d)|0?43907:63804,m=16608,n=553,i=v[v[e>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){h=(c<<2)+d|0;e=v[a>>2];c=d;while(1){g=x[e>>1]|x[e+2>>1]<<16;u[c>>1]=g;u[c+2>>1]=g>>>16;e=e+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}c=v[a+4>>2]}c=(c<<2)+d|0;b=x[b>>1]|x[b+2>>1]<<16;u[c>>1]=b;u[c+2>>1]=b>>>16;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=d;v[a+4>>2]=v[a+4>>2]+1}function az(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=v[37696];d=c+12|0;c=(h=d,i=(b<<5)+131|0,j=Ba[v[v[c>>2]+20>>2]](c)|0?25359:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0);if(!c){break a}e=c+131&-128;v[e-4>>2]=e-c}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<5)+e|0;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];d=d+32|0;c=c+32|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-v[d-4>>2]|0)}v[a+8>>2]=b;v[a>>2]=e}function gD(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((v[a+1036>>2]&2147483647)>>>0>>0){a:{if(!b){break a}c=b<<2;if(!(w[a+1024|0]|c>>>0>1024)){t[a+1024|0]=1;e=a;break a}if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?60917:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a+1028>>2];c=v[a+1032>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a+1028>>2]}b:{if(v[a+1036>>2]<0){break b}if((a|0)==(d|0)){t[a+1024|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+1036>>2]=b;v[a+1028>>2]=e}v[a+1032>>2]=b}function OD(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((v[a+1036>>2]&2147483647)>>>0>>0){a:{if(!b){break a}c=b<<2;if(!(w[a+1024|0]|c>>>0>1024)){t[a+1024|0]=1;e=a;break a}if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?60767:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a+1028>>2];c=v[a+1032>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a+1028>>2]}b:{if(v[a+1036>>2]<0){break b}if((a|0)==(d|0)){t[a+1024|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+1036>>2]=b;v[a+1028>>2]=e}v[a+1032>>2]=b}function CY(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((v[a+1036>>2]&2147483647)>>>0>>0){a:{if(!b){break a}c=b<<2;if(!(w[a+1024|0]|c>>>0>1024)){t[a+1024|0]=1;e=a;break a}if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?61355:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a+1028>>2];c=v[a+1032>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a+1028>>2]}b:{if(v[a+1036>>2]<0){break b}if((a|0)==(d|0)){t[a+1024|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+1036>>2]=b;v[a+1028>>2]=e}v[a+1032>>2]=b}function EP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=v[v[a+2368>>2]+36>>2];g=v[a+1196>>2];h=a+1068|0;d=v[a+2168>>2];j=v[d+4>>2];d=v[d+8>>2];a:{b:{if(d>>>0>(v[a+1076>>2]&2147483647)>>>0){FP(h,d);f=a+1072|0;v[f>>2]=0;break b}f=a+1072|0;v[f>>2]=0;if(!d){break a}}k=(b|0)==(g|0)?1:17;b=0;while(1){g=b+1|0;i=v[(b<<2)+j>>2];b=v[i+16>>2];if(!(w[b+10|0]&2)){c=v[a+1072>>2];e=v[a+1076>>2]&2147483647;if(c>>>0>=e>>>0){FP(h,e?e<<1:1);c=v[f>>2]}v[a+1072>>2]=c+1;c=v[a+1068>>2]+B(c,24)|0;u[c+14>>1]=0;lP(a,c,i,b,k);u[b+4>>1]=x[b+6>>1];c=b;e=x[b+10>>1]&31;b=x[b+8>>1];u[c+10>>1]=e|(b>>>4|0)+((b&15)!=0)<<5}b=g;if((d|0)!=(b|0)){continue}break}}return h}function jx(a,b,c,d){var e=0,f=C(0),g=C(0),h=0,i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=0;e=xa-32|0;xa=e;f=z[d+20>>2];g=z[d+24>>2];h=v[b+332>>2];i=z[d>>2];j=z[d+4>>2];k=z[d+8>>2];l=z[d+16>>2];d=(a<<5)+c|0;v[d+28>>2]=0;z[d+16>>2]=-l;v[d+12>>2]=0;z[d+8>>2]=-k;z[d+4>>2]=-j;z[d>>2]=-i;z[d+24>>2]=-g;z[d+20>>2]=-f;if(a){while(1){d=v[b+284>>2]+B(a,96)|0;m=(v[b+340>>2]+B(a,160)|0)+120|0;n=v[b+272>>2]+B(a,76)|0;a=a<<5;dx(e,d,m,n,a+c|0);a=v[(a+h|0)+24>>2];d=(a<<5)+c|0;z[d>>2]=z[e>>2];z[d+4>>2]=z[e+4>>2];f=z[e+8>>2];v[d+12>>2]=0;z[d+8>>2]=f;z[d+16>>2]=z[e+16>>2];z[d+20>>2]=z[e+20>>2];f=z[e+24>>2];v[d+28>>2]=0;z[d+24>>2]=f;if(a){continue}break}}xa=e+32|0}function Rk(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=C(0),m=C(0);b=b- -64|0;a=v[a+24>>2];if(a){h=xa+-64|0;xa=h;j=v[b>>2];b=-2147483648;i=v[a+28>>2];a:{if(!i){break a}k=v[a+24>>2];a=0;while(1){if(v[(a<<2)+k>>2]==(j|0)){b=a;break a}a=a+1|0;if((i|0)!=(a|0)){continue}break}}l=z[f>>2];a=v[g>>2];j=v[g+4>>2];i=v[f+8>>2];f=v[f+4>>2];m=z[g+8>>2];v[h+28>>2]=0;z[h+24>>2]=m;v[h+4>>2]=f;v[h+8>>2]=i;v[h+12>>2]=0;v[h+16>>2]=a;v[h+20>>2]=j;z[h>>2]=l;vw(e,b,h,h+32|0);a=v[h+32>>2];b=v[h+36>>2];z[c+8>>2]=z[h+40>>2];v[c>>2]=a;v[c+4>>2]=b;a=v[h+48>>2];b=v[h+52>>2];z[d+8>>2]=z[h+56>>2];v[d>>2]=a;v[d+4>>2]=b;xa=h- -64|0}}function kS(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+4>>2];v[b+36>>2]=c;v[d+12>>2]=b;a:{if(c>>>0>=(v[a+8>>2]&2147483647)>>>0){lS(a,d+12|0);break a}v[v[a>>2]+(c<<2)>>2]=b;v[a+4>>2]=c+1}v[d+12>>2]=-1;c=v[a+16>>2];b:{if(c>>>0>=(v[a+20>>2]&2147483647)>>>0){pn(a+12|0,d+12|0);break b}v[v[a+12>>2]+(c<<2)>>2]=-1;v[a+16>>2]=v[a+16>>2]+1}c=v[b+8>>2]&2147483647;v[d+12>>2]=c;e=v[a+28>>2];c:{if(e>>>0>=(v[a+32>>2]&2147483647)>>>0){pn(a+24|0,d+12|0);break c}v[v[a+24>>2]+(e<<2)>>2]=c;v[a+28>>2]=v[a+28>>2]+1}v[d+12>>2]=b;c=v[a+40>>2];d:{if(c>>>0>=(v[a+44>>2]&2147483647)>>>0){lS(a+36|0,d+12|0);break d}v[v[a+36>>2]+(c<<2)>>2]=b;v[a+40>>2]=c+1}xa=d+16|0}function YQ(a){a=a|0;var b=0,c=0,d=0,e=0;b=v[a+28>>2];a=v[a+20>>2];v[b+3500>>2]=a;v[b+3504>>2]=1;if(a){Ba[v[v[a>>2]+16>>2]](a);v[b+3496>>2]=v[v[b+3500>>2]+16>>2]}c=b+3540|0;d=b+3480|0;v[c>>2]=d;v[b+3544>>2]=1;Ba[v[v[b+3480>>2]+16>>2]](d);c=v[v[c>>2]+16>>2];v[b+3536>>2]=c;Ba[v[v[c>>2]+72>>2]](c,b+3520|0);v[b+3580>>2]=a;v[b+3584>>2]=1;c=b+3560|0;a:{if(!a){a=v[b+3576>>2];break a}Ba[v[v[a>>2]+16>>2]](a);a=v[v[b+3580>>2]+16>>2];v[b+3576>>2]=a}Ba[v[v[a>>2]+72>>2]](a,c);c=v[b+980>>2];a=v[c+332>>2];if(a){c=v[c+328>>2];while(1){a=a-1|0;e=v[c+8>>2];if(!(!e|w[e+24|0])){MR(e)}c=c+12|0;if(a){continue}break}}a=v[b+3496>>2];Ba[v[v[a>>2]+72>>2]](a,d)}function sX(a,b,c,d,e,f,g){var h=0,i=0;h=xa-16|0;xa=h;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;a:{if(w[h+11|0]!=73|w[h+10|0]!=67|w[h+9|0]!=69){break a}t[f|0]=(w[h+8|0]^-1)&1;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;if(t[h+11|0]!=(a|0)|t[h+10|0]!=(b|0)|(t[h+9|0]!=(c|0)|t[h+8|0]!=(d|0))){break a}a=w[f|0];Ba[v[v[g>>2]>>2]](g,h+12|0,4)|0;if(a){a=w[h+15|0];t[h+15|0]=w[h+12|0];t[h+12|0]=a;a=w[h+13|0];t[h+13|0]=w[h+14|0];t[h+14|0]=a}v[e>>2]=v[h+12>>2];i=1}xa=h+16|0;return i}function hC(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{if(!e){break a}b:{while(1){g=v[a>>2];if((g|0)==v[a+4>>2]){j=g<<1;if(!fC(a,j>>>0>64?j:64)){break b}g=v[a>>2]}v[a>>2]=g+1;j=g;f=v[a+24>>2];if((f|0)!=-1){v[a+24>>2]=v[v[a+16>>2]+(f<<2)>>2];j=f}f=v[a+8>>2]+B(g,24)|0;i=B(h,24)+c|0;z[f>>2]=z[i>>2];z[f+4>>2]=z[i+4>>2];z[f+8>>2]=z[i+8>>2];z[f+12>>2]=z[i+12>>2];z[f+16>>2]=z[i+16>>2];z[f+20>>2]=z[i+20>>2];i=(h<<3)+d|0;k=v[i+4>>2];f=v[a+12>>2]+(g<<3)|0;v[f>>2]=v[i>>2];v[f+4>>2]=k;v[v[a+20>>2]+(g<<2)>>2]=j;v[v[a+16>>2]+(j<<2)>>2]=g;v[(h<<2)+b>>2]=j;h=h+1|0;if((h|0)!=(e|0)){continue}break}h=e;break a}v[(h<<2)+b>>2]=-1}return e>>>0>h>>>0?h:e}function Qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=0,g=0,h=0,i=C(0),j=0,k=0,l=0;j=v[a+448>>2];if(j>>>0>=2){k=v[a+456>>2];l=v[a+444>>2];e=1;while(1){f=(B(e,24)+c|0)-24|0;g=(v[(B(e,80)+k|0)+72>>2]<<2)+b|0;h=v[((e<<5)+l|0)+20>>2];a:{if(!w[h+258|0]){d=C(0);a=0;break a}d=z[g>>2];a=1}z[f>>2]=d;if(w[h+259|0]){i=z[(a<<2)+g>>2];a=a+1|0}z[f+4>>2]=i;i=C(0);b:{if(!w[h+260|0]){d=C(0);break b}d=z[(a<<2)+g>>2];a=a+1|0}z[f+8>>2]=d;if(w[h+261|0]){i=z[(a<<2)+g>>2];a=a+1|0}z[f+12>>2]=i;i=C(0);c:{if(!w[h+262|0]){d=C(0);break c}d=z[(a<<2)+g>>2];a=a+1|0}z[f+16>>2]=d;z[f+20>>2]=w[h+263|0]?z[(a<<2)+g>>2]:C(0);e=e+1|0;if((j|0)!=(e|0)){continue}break}}}function N5(a,b,c,d,e,f){var g=C(0),h=C(0),i=C(0),j=C(0),k=0;if(e){g=z[b+280>>2]>C(0)?C(0):z[b+276>>2]>C(0)?C(0):z[b+284>>2];j=C(z[b+292>>2]-g);h=C(C9(z[d+4>>2],C(z[d+12>>2]+C(1)))*C(4));k=j>2]+g)}a:{if(!f){g=z[b+300>>2];h=z[b+296>>2];d=0;break a}g=z[b+300>>2];i=z[b+280>>2]>C(0)?C(0):z[b+276>>2]>C(0)?C(0):z[b+284>>2];h=C(C9(z[d+8>>2],C(z[d+12>>2]+C(1)))*C(4));d=C(g-i)>2];d=d|j>2];d=k?-65536:d?-65536:-8355712;D6(a,c,i,i,h,g,d);g=z[b+292>>2];D6(a,c,g,g,z[b+296>>2],z[b+300>>2],d);g=z[b+296>>2];D6(a,c,z[b+288>>2],z[b+292>>2],g,g,d);g=z[b+300>>2];D6(a,c,z[b+288>>2],z[b+292>>2],g,g,d)}function uC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0),j=0,k=0,l=0,m=C(0),n=C(0),o=C(0),p=C(0),q=0;if(e){k=v[a+7672>>2];q=v[a+7680>>2];while(1){l=j<<2;f=B(v[l+c>>2],24)+d|0;m=z[f+4>>2];h=z[f+16>>2];n=z[f+8>>2];i=z[f+20>>2];g=z[f+12>>2];o=z[f>>2];p=C(C(g-o)*C(.004999999888241291));f=B(v[(v[b+l>>2]<<2)+q>>2],24)+k|0;z[f+12>>2]=g+p;z[f>>2]=o-p;g=i;i=C(C(i-n)*C(.004999999888241291));z[f+20>>2]=g+i;g=h;h=C(C(h-m)*C(.004999999888241291));z[f+16>>2]=g+h;z[f+8>>2]=n-i;z[f+4>>2]=m-h;j=j+1|0;if((j|0)!=(e|0)){continue}break}t[a+7648|0]=1;v[a+32>>2]=0;v[a+24>>2]=k;v[a+16>>2]=v[a+7664>>2];v[a+28>>2]=v[a+7676>>2]}}function JG(a,b,c,d){var e=0;e=v[a>>2];if(e){jH(e)}e=v[a+176>>2];a:{b:{if(e){if(w[e+31|0]){break b}break a}e=v[b+288>>2];if(!e){GG(b);e=v[b+288>>2]}v[b+288>>2]=v[e>>2];v[b+280>>2]=v[b+280>>2]+1}v[e>>2]=0;v[e+4>>2]=0;v[e+56>>2]=0;v[e+60>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+40>>2]=0;v[e+44>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[a+176>>2]=e}t[e+12|0]=w[e+12|0]|4;if(c){z[e+32>>2]=z[c>>2]+z[e+32>>2];z[e+36>>2]=z[c+4>>2]+z[e+36>>2];z[e+40>>2]=z[c+8>>2]+z[e+40>>2]}if(d){z[e+48>>2]=z[d>>2]+z[e+48>>2];z[e+52>>2]=z[d+4>>2]+z[e+52>>2];z[e+56>>2]=z[d+8>>2]+z[e+56>>2]}}function qv(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=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);l=z[b+4>>2];o=C(z[a+4>>2]+l);i=C(z[e>>2]+o);m=C(i*i);p=z[d+24>>2];i=C(z[c+24>>2]-p);q=z[d+16>>2];n=C(z[c+16>>2]-q);r=z[d+20>>2];k=C(z[c+20>>2]-r);j=C(C(i*i)+C(C(n*n)+C(k*k)));c=m>j;if(c){a=v[g+4096>>2];v[g+4096>>2]=a+1;a=(a<<6)+g|0;v[a+52>>2]=-1;j=C(K(j));z[a+12>>2]=j-o;v[a+28>>2]=0;m=i;i=C(C(1)/j);b=j<=C(9999999747378752e-21);j=b?C(0):C(m*i);z[a+8>>2]=j;k=b?C(0):C(k*i);z[a+4>>2]=k;i=b?C(1):C(n*i);z[a>>2]=i;z[a+24>>2]=p+C(l*j);z[a+20>>2]=r+C(l*k);z[a+16>>2]=q+C(l*i)}return c|0}function l3(a){var b=0,c=0,d=0,e=0,f=0,g=0;d=v[a+4>>2];if(d){e=d-4|0;b=v[e>>2];a:{if(!b){break a}c=B(b,36);b=c+d|0;f=c-36|0;g=((f>>>0)/36|0)+1&3;if(g){c=0;while(1){b=b-36|0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}if(f>>>0<108){break a}while(1){c=b-36|0;v[c+32>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;c=b-72|0;v[c+32>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;c=b-108|0;v[c+32>>2]=0;v[c+24>>2]=0;v[c+28>>2]=0;b=b-144|0;v[b+32>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;if((b|0)!=(d|0)){continue}break}}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,e);v[a+4>>2]=0}b=v[a>>2];if(b){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b)}v[a>>2]=0}function WF(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((v[a+8>>2]&2147483647)>>>0>>0){a:{if(!b){break a}f=b<<2;if(!f){break a}d=v[37696];e=d+12|0;d=(i=e,j=f,k=Ba[v[v[d>>2]+20>>2]](d)|0?60245:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}g=v[a>>2];e=v[a+4>>2];if((e|0)>0){f=(e<<2)+d|0;e=d;while(1){v[e>>2]=v[g>>2];g=g+4|0;e=e+4|0;if(f>>>0>e>>>0){continue}break}g=v[a>>2]}if(!(!g|v[a+8>>2]<0)){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,g)}v[a+8>>2]=b;v[a>>2]=d}f=v[a+4>>2];if((f|0)<(b|0)){d=v[a>>2];e=d+(b<<2)|0;d=d+(f<<2)|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(e>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function KR(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=139148;b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;c=v[v[a+28>>2]+4>>2];c=v[(w[v[c+44>>2]+9|0]-1>>>0<2?c:0)+100>>2];v[c+148>>2]=v[c+148>>2]-1;if(b){b=v[b+100>>2];v[b+148>>2]=v[b+148>>2]-1}b=v[a+56>>2];if(b){c=v[v[a+4>>2]+40>>2];d=v[v[c+976>>2]+1024>>2];Ba[v[v[d>>2]+36>>2]](d,b);wK(v[c+976>>2],v[a+56>>2]);v[a+56>>2]=0}c=v[a+60>>2];if((c|0)!=-1){b=v[v[a+4>>2]+40>>2];fG(v[b+1e3>>2],c);v[a+60>>2]=-1;_O(b,a+4|0);jJ(v[b+2168>>2],a)}b=a+4|0;WE(v[a+4>>2],b);WE(v[a+8>>2],b);if(v[a+52>>2]!=-1){b=v[v[v[a+4>>2]+40>>2]+2168>>2];if(w[a+46|0]&128){BJ(b,a);return a|0}zJ(b,a)}return a|0}function vS(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(b,36);if(!c){break a}e=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?42905:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,36)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];z[c+32>>2]=z[d+32>>2];d=d+36|0;c=c+36|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}function t0(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);f=xa-16|0;xa=f;k=z[d+8>>2];n=z[e+8>>2];h=z[c+8>>2];i=z[c>>2];l=C(i-z[d>>2]);j=z[c+4>>2];m=C(j-z[e+4>>2]);i=C(i-z[e>>2]);j=C(j-z[d+4>>2]);z[f+8>>2]=C(l*m)-C(i*j);k=C(h-k);h=C(h-n);z[f+4>>2]=C(k*i)-C(h*l);z[f>>2]=C(j*h)-C(m*k);g=1;a:{if(!G$(f,c,d,e,a+20|0,a+48|0)){break a}c=v[b+8>>2];t[a+16|0]=1;a=v[a+12>>2];g=0;if(!a){break a}b=v[a+4>>2];if(b>>>0>=y[a+8>>2]){t[a+20|0]=1;g=1;break a}d=v[a+16>>2];if(d>>>0>=y[a+12>>2]){v[a+4>>2]=b+1;v[v[a>>2]+(b<<2)>>2]=c;g=1;break a}v[a+16>>2]=d+1;g=1}xa=f+16|0;return g|0}function Xf(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){v[37699]=48;b=0;break a}c=b>>>0<11?16:b+11&-8;a=iaa(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=v[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=v[b>>2];v[a+4>>2]=e;v[a>>2]=b+d;break b}v[a+4>>2]=e|v[a+4>>2]&1|2;e=a+e|0;v[e+4>>2]=v[e+4>>2]|1;v[f>>2]=d|v[f>>2]&1|2;e=b+d|0;v[e+4>>2]=v[e+4>>2]|1;kaa(b,d)}b=v[a+4>>2];c:{if(!(b&3)){break c}d=b&-8;if(d>>>0<=c+16>>>0){break c}v[a+4>>2]=c|b&1|2;b=a+c|0;c=d-c|0;v[b+4>>2]=c|3;d=a+d|0;v[d+4>>2]=v[d+4>>2]|1;kaa(b,c)}b=a+8|0}return b|0}function Vh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a:{b:{d=v[a+124>>2];if(!d){break b}e=v[a+120>>2];while(1){if(v[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;v[a+124>>2]=d;e=c<<2;c=v[a+120>>2];v[e+c>>2]=v[c+(d<<2)>>2]}c=v[a+24>>2];d=v[(Ba[v[v[b>>2]+104>>2]](b)|0)+88>>2];a=0;c:{d:{b=v[c+56>>2];if(!b){break d}e=v[c+52>>2];while(1){if((d|0)==v[(e+B(a,12)|0)+8>>2]){break d}a=a+1|0;if((b|0)!=(a|0)){continue}break}break c}if((a|0)==(b|0)){break c}b=b-1|0;v[c+56>>2]=b;c=v[c+52>>2];a=c+B(a,12)|0;b=c+B(b,12)|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;v[a+8>>2]=v[b+8>>2]}}function Rg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(v[a+36>>2]==v[a+28>>2]){b9(v[37696],2,11066,146,24043,0);return 0}if(Ba[v[v[b>>2]+72>>2]](b)|0){b9(v[37696],2,11066,152,21050,0);return 0}if(Ba[v[v[b>>2]+28>>2]](b)|0){b9(v[37696],2,11066,158,22212,0);return 0}if((Ba[v[v[b>>2]+24>>2]](b)|0)==2){b9(v[37696],2,11066,164,24243,0);return 0}oh(v[(x[b+4>>1]<<2)+86240>>2]+b|0,a);d=v[a+36>>2];v[a+36>>2]=d+1;v[v[a+40>>2]+(d<<2)>>2]=b;a:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}d=v[a+8>>2];if(!d){break a}d=d-16|0;if(!d){break a}Qg(a,b,d,c);return 1}if(c){v[c+12>>2]=v[c+12>>2]+1;lh(v[(x[b+4>>1]<<2)+86240>>2]+b|0,3,c)}return 1}function RV(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0,o=0;a:{if(c){while(1){n=(o<<6)+d|0;j=z[n+12>>2];l=C(j*z[n+8>>2]);k=k>l?k:l;m=C(j*z[n+4>>2]);f=f>m?f:m;j=C(j*z[n>>2]);g=g>j?g:j;h=hC(0)){e=C(C(1)/m);k=C(h*e);l=C(g*e);e=C(f*e)}z[a+8>>2]=-k;z[a+4>>2]=-e;z[a>>2]=-l;z[b>>2]=m}c=1}return c}function B9(a){var b=0,c=0,d=C(0),e=0;e=(p(a),j(2));c=e&2147483647;if(c>>>0>=1065353216){if((c|0)==1065353216){return C(+a*1.5707963267948966+752316384526264e-51)}return C(C(0)/C(a-a))}a:{if(c>>>0<=1056964607){if(c-8388608>>>0<956301312){break a}d=C(a*a);return C(C(a*C(C(C(C(d*C(C(d*C(-.008656363002955914))+C(-.04274342209100723)))+C(.16666586697101593))*d)/C(C(d*C(-.7066296339035034))+C(1))))+a)}a=C(C(C(1)-C(D(a)))*C(.5));b=K(+a);b=b+b*+C(C(C(C(a*C(C(a*C(-.008656363002955914))+C(-.04274342209100723)))+C(.16666586697101593))*a)/C(C(a*C(-.7066296339035034))+C(1)));a=C(1.5707963267948966-(b+b));a=(e|0)<0?C(-a):a}return a}function nO(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?35995:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function mK(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?26349:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function lO(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?36381:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function l4(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?32081:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function kO(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?36185:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function jO(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?35805:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}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,m=0,n=0;c=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?31807:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function YL(a,b,c,d,e){var f=0,g=0,h=0,i=0;a:{if(!v[d+8>>2]){break a}f=a>>>0>b>>>0?a:b;a=a>>>0>>0?a:b;b=f<<16|a;b=(b<<15^-1)+b|0;b=B(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;b=v[v[d>>2]+((v[d+36>>2]&(b>>16^b))<<2)>>2];if((b|0)==1073741823){break a}g=v[d+4>>2];i=v[d+20>>2];while(1){h=(b<<3)+i|0;if(!((a|0)==v[h>>2]&(f|0)==v[h+4>>2])){b=v[g+(b<<2)>>2];if((b|0)!=1073741823){continue}break a}break}a=v[d+24>>2];f=b+a|0;g=w[f|0];if(!(g&1)){t[f|0]=g|1;a=h-v[d+20>>2]|0;f=a>>>3|0;b=v[e+4>>2];if((b|0)==v[e+8>>2]){WL(e,c);b=v[e+4>>2];a=h-v[d+20>>2]|0}v[e+4>>2]=b+1;v[v[e>>2]+(b<<2)>>2]=f;b=a>>3;a=v[d+24>>2]}a=a+b|0;t[a|0]=w[a|0]|2}}function Ou(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=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=v[37696];d=e+12|0;e=(j=d,k=c,l=Ba[v[v[e>>2]+20>>2]](e)|0?29133:63804,m=16608,n=553,i=v[v[d>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}c=v[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=v[a>>2];c=e;while(1){h=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=v[a+4>>2]}d=v[b+4>>2];c=(c<<3)+e|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;b:{if(v[a+8>>2]<0){break b}b=v[a>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=f;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function oG(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=v[37696];f=c+12|0;f=(i=f,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?39543:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<5)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function SG(a){var b=0,c=0,d=0,e=0;d=xa-16|0;xa=d;v[a+104>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+88>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;c=v[a>>2];if(c){iH(c);jH(c)}b=v[a+176>>2];if(!(!b|w[b+31|0])){v[b+48>>2]=0;v[b+52>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b>>2]=0;v[b+4>>2]=0;v[b+56>>2]=0;v[b+40>>2]=0;v[b+24>>2]=0}v[a+156>>2]=0;a=v[a>>2];if(a){b=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(e|0)==2,d+8|0);lH(a,C(0),0)}if(c){if(y[c+152>>2]<=4294967293){VO(v[c+40>>2],c);bH(c)}eG(v[v[c+40>>2]+1e3>>2],v[c+144>>2]);u[c+148>>1]=x[c+148>>1]&63999}xa=d+16|0}function FG(a,b,c,d){var e=0;e=v[a>>2];if(e){iH(e)}e=v[a+176>>2];a:{b:{if(e){if(w[e+31|0]){break b}break a}e=v[b+288>>2];if(!e){GG(b);e=v[b+288>>2]}v[b+288>>2]=v[e>>2];v[b+280>>2]=v[b+280>>2]+1}v[e>>2]=0;v[e+4>>2]=0;v[e+56>>2]=0;v[e+60>>2]=0;v[e+48>>2]=0;v[e+52>>2]=0;v[e+40>>2]=0;v[e+44>>2]=0;v[e+32>>2]=0;v[e+36>>2]=0;v[e+24>>2]=0;v[e+28>>2]=0;v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;v[a+176>>2]=e}t[e+12|0]=w[e+12|0]|2;if(c){z[e>>2]=z[c>>2]+z[e>>2];z[e+4>>2]=z[c+4>>2]+z[e+4>>2];z[e+8>>2]=z[c+8>>2]+z[e+8>>2]}if(d){z[e+16>>2]=z[d>>2]+z[e+16>>2];z[e+20>>2]=z[d+4>>2]+z[e+20>>2];z[e+24>>2]=z[d+8>>2]+z[e+24>>2]}}function rG(a){var b=0,c=0,d=0,e=C(0);c=v[a+44>>2];if(v[c+176>>2]){d=v[c+176>>2];b=w[d+31|0]!=1?d:0}a:{if(z[c+80>>2]!=C(0)|z[c+84>>2]!=C(0)|(z[c+88>>2]!=C(0)|z[c+96>>2]!=C(0))){break a}if(z[c+100>>2]!=C(0)){break a}d=w[a+150|0];a=d&2;e=z[c+104>>2];c=!a&e==C(0);if(!(!a|e!=C(0))){if(!b){return 1}if(z[b>>2]!=C(0)|z[b+4>>2]!=C(0)|(z[b+8>>2]!=C(0)|z[b+16>>2]!=C(0))){break a}if(z[b+20>>2]!=C(0)){break a}c=z[b+24>>2]==C(0)}a=d&4;d=!a&c;b:{if(!a|!c){break b}if(!b){return 1}if(z[b+32>>2]!=C(0)|z[b+36>>2]!=C(0)|(z[b+40>>2]!=C(0)|z[b+48>>2]!=C(0))){break a}d=0;if(z[b+52>>2]!=C(0)){break b}d=z[b+56>>2]==C(0)}return d}return 0}function J3(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=v[a+8>>2];i=c&2147483647?c<<1:1;a:{if(!i){break a}d=B(i,12);if(!d){break a}e=v[37696];c=e+12|0;e=(k=c,l=d,m=Ba[v[v[e>>2]+20>>2]](e)|0?54445:63804,n=16608,o=553,j=v[v[c>>2]+8>>2],Ba[j](k|0,l|0,m|0,n|0,o|0)|0)}g=v[a+4>>2];h=B(g,12)+e|0;c=v[a>>2];if((g|0)>0){f=c;d=e;while(1){z[d>>2]=z[f>>2];z[d+4>>2]=z[f+4>>2];z[d+8>>2]=z[f+8>>2];f=f+12|0;d=d+12|0;if(h>>>0>d>>>0){continue}break}}z[h>>2]=z[b>>2];z[h+4>>2]=z[b+4>>2];z[h+8>>2]=z[b+8>>2];if(!(!c|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);g=v[a+4>>2]}v[a+8>>2]=i;v[a>>2]=e;v[a+4>>2]=g+1}function Mg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a>>2]=118148;c=v[37389];a:{if(!v[c+516>>2]){break a}b=(a<<15^-1)+a|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=v[c+492>>2]+((v[c+500>>2]-1&(b>>>16^b))<<2)|0;b=v[d>>2];if((b|0)==-1){break a}f=v[c+488>>2];e=v[c+484>>2];if(v[e+(b<<2)>>2]!=(a|0)){while(1){d=(b<<2)+f|0;b=v[d>>2];if((b|0)==-1){break a}if(v[(b<<2)+e>>2]!=(a|0)){continue}break}}e=d;d=(b<<2)+f|0;v[e>>2]=v[d>>2];v[c+516>>2]=v[c+516>>2]-1;v[c+512>>2]=v[c+512>>2]+1;v[d>>2]=v[c+508>>2];v[c+508>>2]=b}b:{if(!(t[a+6|0]&1)){break b}c=v[a+40>>2];if(!c){break b}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,c)}return a|0}function Jo(a){a=a|0;var b=0,c=0,d=0;a:{a=a+48|0;b=v[a>>2];if(b){b:{c:{if(!w[b+4785|0]){wu(b,a,1);if(!w[v[a>>2]+4785|0]){break c}}Xk(a);break b}v[a+236>>2]=0;v[a+240>>2]=0;v[a+260>>2]=0;v[a+264>>2]=1;v[a+244>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;v[a+256>>2]=0;SG(a+16|0)}if(!v[a+192>>2]|(v[a+4>>2]&-1073741824)!=1073741824){break a}b=v[a+192>>2];c=a+16|0;d=w[v[c+176>>2]+31|0]==1;d:{if(d){if(b){break d}break a}if(!v[a+192>>2]|(!b|w[v[c+176>>2]+31|0]==1)){break a}}TG(c,v[v[a>>2]+2428>>2],d);break a}v[a+236>>2]=0;v[a+240>>2]=0;v[a+260>>2]=0;v[a+264>>2]=1;v[a+244>>2]=0;v[a+248>>2]=0;v[a+252>>2]=0;v[a+256>>2]=0;SG(a+16|0)}}function UP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=v[a+268>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=f<<2;if(!(w[a+256|0]|c>>>0>256)){t[a+256|0]=1;e=a;break a}d=v[37696]+12|0;c=Ba[v[v[d>>2]+8>>2]](d,c+67|0,24422,16608,553)|0;if(!c){break a}e=c+67&-64;v[e-4>>2]=e-c}d=v[a+264>>2];h=(d<<2)+e|0;if((d|0)>0){g=v[a+260>>2];c=e;while(1){v[c>>2]=v[g>>2];g=g+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[b>>2];b:{if(v[a+268>>2]<0){break b}b=v[a+260>>2];if((b|0)==(a|0)){t[a+256|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b-v[b-4>>2]|0);d=v[a+264>>2]}v[a+268>>2]=f;v[a+260>>2]=e;v[a+264>>2]=d+1}function s6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+76>>2];Ba[v[v[c>>2]+28>>2]](c,d+8|0,d+12|0);a:{b:{if(!v[d+8>>2]){z[a+36>>2]=z[a+36>>2]-z[b>>2];z[a+40>>2]=z[a+40>>2]-z[b+4>>2];z[a+44>>2]=z[a+44>>2]-z[b+8>>2];c=v[a+80>>2];z[c+32>>2]=z[c+32>>2]-z[b>>2];z[c+36>>2]=z[c+36>>2]-z[b+4>>2];e=b+8|0;b=c+40|0;break b}if(v[d+12>>2]){break a}c=a- -64|0;z[c>>2]=z[c>>2]-z[b>>2];z[a+68>>2]=z[a+68>>2]-z[b+4>>2];z[a+72>>2]=z[a+72>>2]-z[b+8>>2];c=v[a+80>>2];z[c+60>>2]=z[c+60>>2]-z[b>>2];e=c- -64|0;z[e>>2]=z[e>>2]-z[b+4>>2];e=b+8|0;b=c+68|0}z[b>>2]=z[b>>2]-z[e>>2];a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}xa=d+16|0}function SH(a,b){var c=0,d=0,e=0,f=0,g=0;e=xa-16|0;xa=e;v[e+12>>2]=b;f=b+32>>>5|0;a:{if(f>>>0<=(v[a+24>>2]&2147483647)>>>0){c=v[a+20>>2];break a}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,f<<2,24422,17999,438)|0;d=v[a+20>>2];b:{if(!d){break b}I9(c,d,v[a+24>>2]<<2);if(v[a+24>>2]<0){break b}d=v[a+20>>2];if(!d){break b}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,d)}d=v[a+24>>2];J9((d<<2)+c|0,0,f-d<<2);v[a+24>>2]=f;v[a+20>>2]=c}c=(b>>>3&536870908)+c|0;v[c>>2]=v[c>>2]|1<>2];c:{if(b>>>0>=(v[a+40>>2]&2147483647)>>>0){pn(a+32|0,e+12|0);break c}v[v[a+32>>2]+(b<<2)>>2]=v[e+12>>2];v[a+36>>2]=v[a+36>>2]+1}xa=e+16|0}function D3(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=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?48959:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<5)+e|0;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];g=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=g;d=d+32|0;c=c+32|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function jZ(a,b,c,d,e){var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);f=z[a+8>>2];g=z[a>>2];h=z[a+4>>2];i=C(C(z[b+8>>2]*f)+C(C(z[b>>2]*g)+C(z[b+4>>2]*h)));j=C(C(z[b+20>>2]*f)+C(C(z[b+12>>2]*g)+C(h*z[b+16>>2])));a=i>j;k=C((a?i:j)+c);l=C(C(z[d+44>>2]*f)+C(C(z[d+36>>2]*g)+C(h*z[d+40>>2])));f=C(C(C(D(C(C(z[d+32>>2]*f)+C(C(z[d+24>>2]*g)+C(h*z[d+28>>2])))))*z[d+56>>2])+C(C(C(D(C(C(z[d+8>>2]*f)+C(C(z[d>>2]*g)+C(h*z[d+4>>2])))))*z[d+48>>2])+C(z[d+52>>2]*C(D(C(C(z[d+20>>2]*f)+C(C(z[d+12>>2]*g)+C(h*z[d+16>>2]))))))));g=C(l-f);f=C(l+f);c=C((a?j:i)-c);a=k>2]=c>g?g:c}return!a}function ED(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=xa-16|0;xa=e;a:{if(!c){break a}t[a+337|0]=1;if(!w[a+336|0]|!v[a+4>>2]){break a}t[a+338|0]=1;h=a+352|0;i=a+52|0;j=v[a+296>>2];while(1){d=v[v[a+300>>2]+(v[(f<<2)+b>>2]<<2)>>2];v[e+12>>2]=d;b:{c:{if(d>>>0>=y[a+316>>2]){break c}g=v[v[a+312>>2]+(d<<2)>>2];if((g|0)==-1){break c}SB(v[a+4>>2],g);break b}pD(i,(d<<3)+j|0,d)}d:{if(v[a+268>>2]-3>>>0>1){break d}d=v[a+356>>2];if(d>>>0>=(v[a+360>>2]&2147483647)>>>0){pn(h,e+12|0);break d}v[v[a+352>>2]+(d<<2)>>2]=v[e+12>>2];v[a+356>>2]=v[a+356>>2]+1}f=f+1|0;if((f|0)!=(c|0)){continue}break}}xa=e+16|0}function BO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;c=v[a>>2];b=v[a+12>>2];e=v[(c+(b<<3)|0)+4>>2];if((e|0)==128){b=b+1|0;if((b|0)==v[a+4>>2]){b=v[37696];c=b+12|0;b=(g=c,h=1024,i=Ba[v[v[b>>2]+20>>2]](b)|0?40147:63804,j=19811,k=260,f=v[v[c>>2]+8>>2],Ba[f](g|0,h|0,i|0,j|0,k|0)|0);v[d+12>>2]=0;v[d+8>>2]=b;b=v[a+4>>2];a:{if(b>>>0>=(v[a+8>>2]&2147483647)>>>0){kO(a,d+8|0);break a}c=v[d+12>>2];b=v[a>>2]+(b<<3)|0;v[b>>2]=v[d+8>>2];v[b+4>>2]=c;v[a+4>>2]=v[a+4>>2]+1}c=v[a>>2];b=v[a+12>>2]+1|0}v[a+12>>2]=b;v[((b<<3)+c|0)+4>>2]=0;e=0}a=(b<<3)+c|0;v[a+4>>2]=e+1;xa=d+16|0;return v[a>>2]+(e<<3)|0}function AO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=xa-16|0;xa=d;c=v[a>>2];b=v[a+12>>2];e=v[(c+(b<<3)|0)+4>>2];if((e|0)==128){b=b+1|0;if((b|0)==v[a+4>>2]){b=v[37696];c=b+12|0;b=(g=c,h=8192,i=Ba[v[v[b>>2]+20>>2]](b)|0?39783:63804,j=19811,k=260,f=v[v[c>>2]+8>>2],Ba[f](g|0,h|0,i|0,j|0,k|0)|0);v[d+12>>2]=0;v[d+8>>2]=b;b=v[a+4>>2];a:{if(b>>>0>=(v[a+8>>2]&2147483647)>>>0){jO(a,d+8|0);break a}c=v[d+12>>2];b=v[a>>2]+(b<<3)|0;v[b>>2]=v[d+8>>2];v[b+4>>2]=c;v[a+4>>2]=v[a+4>>2]+1}c=v[a>>2];b=v[a+12>>2]+1|0}v[a+12>>2]=b;v[((b<<3)+c|0)+4>>2]=0;e=0}a=(b<<3)+c|0;v[a+4>>2]=e+1;xa=d+16|0;return v[a>>2]+(e<<6)|0}function XA(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=v[d+12>>2];h=v[d+16>>2];e=v[c+16>>2];OA(d);PA(d,c,B(g,112)+e|0,B(h,112)+e|0);f=f+1|0;if((f|0)!=(b|0)){continue}break}}a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){b=v[c+28>>2];a=a+v[b>>2]|0;v[b>>2]=a;b=v[c+8>>2];if(b){f=a-b|0;a=0;while(1){d=v[c+4>>2]+(a<<5)|0;e=v[d+4>>2];b=v[c+20>>2]+(a+f<<5)|0;v[b>>2]=v[d>>2];v[b+4>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}}function UA(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=v[d+12>>2];h=v[d+16>>2];e=v[c+16>>2];NA(d);PA(d,c,B(g,112)+e|0,B(h,112)+e|0);f=f+1|0;if((f|0)!=(b|0)){continue}break}}a=v[c+8>>2];if(a>>>0>v[c+12>>2]-4>>>0){b=v[c+28>>2];a=a+v[b>>2]|0;v[b>>2]=a;b=v[c+8>>2];if(b){f=a-b|0;a=0;while(1){d=v[c+4>>2]+(a<<5)|0;e=v[d+4>>2];b=v[c+20>>2]+(a+f<<5)|0;v[b>>2]=v[d>>2];v[b+4>>2]=e;e=v[d+28>>2];v[b+24>>2]=v[d+24>>2];v[b+28>>2]=e;e=v[d+20>>2];v[b+16>>2]=v[d+16>>2];v[b+20>>2]=e;e=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=e;a=a+1|0;if(a>>>0>2]){continue}break}}v[c+8>>2]=0}}function Tg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;if((Ba[v[v[b>>2]+24>>2]](b)|0)==2){b9(v[37696],2,11066,215,23317,0);return 0}a:{b:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break b}c=v[a+8>>2];if(!c){break b}if(c-16|0){break a}}g=v[(x[b+4>>1]<<2)+86240>>2]+b|0;c=v[g+4>>2];if(!c){break a}e=v[c+40>>2];if(!e){break a}i=v[c+36>>2];c=0;f=1;while(1){c:{h=(d<<3)+i|0;if(!(w[h|0]==3&f)){d=d+1|0;if((e|0)!=(d|0)){continue}if(f){break a}break c}c=v[h+4>>2];f=0;d=d+1|0;if((e|0)!=(d|0)){continue}}break}mh(g,3,c);d=v[c+12>>2]-1|0;v[c+12>>2]=d;if(d){break a}Ba[v[v[c+8>>2]+8>>2]](c+8|0)}return Sg(a,b,1)|0}function WA(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;OA(c);c=v[c+24>>2];e=x[c+2>>1];if(e){i=c+e|0;while(1){e=c+48|0;d=w[c+1|0];a:{if(!d){c=e;break a}f=w[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){z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[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){z[c+36>>2]=z[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 TA(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;NA(c);c=v[c+24>>2];e=x[c+2>>1];if(e){i=c+e|0;while(1){e=c+48|0;d=w[c+1|0];a:{if(!d){c=e;break a}f=w[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){z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[c+40>>2];c=c+f|0;z[c+36>>2]=z[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){z[c+36>>2]=z[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 Af(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=v[a+4>>2];if((d|0)!=v[a+8>>2]){z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];v[a+4>>2]=d+12;return}a:{f=v[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>>0?g:e:357913941;if(e>>>0>=357913942){break a}e=B(e,12);g=maa(e);c=g+B(c,12)|0;z[c>>2]=z[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];b=c+12|0;if((d|0)!=(f|0)){while(1){c=c-12|0;d=d-12|0;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];if((d|0)!=(f|0)){continue}break}}v[a+8>>2]=e+g;v[a+4>>2]=b;v[a>>2]=c;if(f){jaa(f)}return}da();L()}Vf();L()}function zw(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=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?49499:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<5)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}function kP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;if(v[a+2424>>2]){while(1){c=0;e=v[a+2436>>2]&2147483647;h=g<<4;b=h+v[a+2420>>2]|0;d=v[b+8>>2];f=d>>>5|0;if(e>>>0>f>>>0){c=v[v[a+2432>>2]+(f<<2)>>2]&1<>2];f=e>>>5|0;if(i>>>0>f>>>0){d=v[v[a+2432>>2]+(f<<2)>>2]&1<>2])}if(!d){break b}break a}c=v[v[b+4>>2]+152>>2];b=v[b>>2];c:{if(y[b+152>>2]>=4294967294){if(c>>>0<4294967294){break c}break a}if(c>>>0<4294967294){break a}}pH(b)}pH(v[(v[a+2420>>2]+h|0)+4>>2])}g=g+1|0;if(g>>>0>2]){continue}break}}v[a+2424>>2]=0;J9(v[a+2432>>2],0,v[a+2436>>2]<<2)}function gz(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=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?30897:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<5)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];z[c+28>>2]=z[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}function Bk(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=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?42469:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<5)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}function SB(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;if(!v[a+52>>2]){c=v[a+40>>2];c=(c>>>5|0)+((c&31)!=0)|0;v[a+56>>2]=c;if(c){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,c<<2,24422,12118,325)|0;c=v[a+56>>2]<<2}else{c=0}v[a+52>>2]=d;J9(d,0,c)}d=v[a+36>>2];if(!d){d=v[a+40>>2];c=d<<2;a:{if(!c){c=0;break a}d=v[37696]+12|0;c=Ba[v[v[d>>2]+8>>2]](d,c,24422,12118,464)|0;d=v[a+40>>2]}v[a+36>>2]=c;e=d;d=v[a+8>>2];TB(e,c,d,d,d);d=v[a+36>>2]}h=v[a+52>>2];while(1){c=b>>>5|0;e=(c<<2)+h|0;f=v[e>>2];g=1<>2]=f|g;e=v[a+60>>2];v[a+60>>2]=c>>>0>>0?e:c;c=b;b=v[(b<<2)+d>>2];if((c|0)!=(b|0)){continue}}break}}function O0(a,b){a=a|0;b=b|0;var c=0;if(v[a+24>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+24>>2],B(v[a+16>>2],12))}if(v[a+28>>2]){c=w[a+64|0];Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+28>>2],B(v[a+20>>2],c&2?6:12))}if(v[a+56>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+56>>2],v[a+20>>2])}if(v[a+68>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+68>>2],v[a+20>>2]<<1)}if(v[a+72>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+72>>2],v[a+20>>2]<<2)}if(v[a+76>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+76>>2],B(v[a+20>>2],12))}}function m1(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{c=v[b+28>>2];if(c&1){break a}d=c>>>1|0;f=d&1023;if(!f){v[b+12>>2]=0;return}e=c>>>11|0;h=d&3;d=v[a+24>>2];c=0;if(f-1>>>0>=3){k=f-h|0;while(1){g=((((v[((c+e<<5)+d|0)+28>>2]&1)+g|0)+(v[(((c|1)+e<<5)+d|0)+28>>2]&1)|0)+(v[(((c|2)+e<<5)+d|0)+28>>2]&1)|0)+(v[(((c|3)+e<<5)+d|0)+28>>2]&1)|0;c=c+4|0;i=i+4|0;if((k|0)!=(i|0)){continue}break}}if(h){while(1){g=(v[((c+e<<5)+d|0)+28>>2]&1)+g|0;c=c+1|0;j=j+1|0;if((j|0)!=(h|0)){continue}break}}v[b+12>>2]=g;if(!f){break a}c=0;while(1){m1(a,v[a+24>>2]+(c+e<<5)|0);c=c+1|0;if((f|0)!=(c|0)){continue}break}}}function W9(a){var b=0,c=0,d=0,e=0;e=xa-16|0;xa=e;c=(p(a),j(2));b=c&2147483647;a:{if(b>>>0<=1061752794){if(b>>>0<964689920){break a}a=V9(+a,0);break a}if(b>>>0<=1081824209){d=+a;if(b>>>0<=1075235811){a=V9(((c|0)<0?1.5707963267948966:-1.5707963267948966)+d,1);break a}a=V9(((c|0)<0?3.141592653589793:-3.141592653589793)+d,0);break a}if(b>>>0<=1088565717){d=+a;if(b>>>0<=1085271519){a=V9(((c|0)<0?4.71238898038469:-4.71238898038469)+d,1);break a}a=V9(((c|0)<0?6.283185307179586:-6.283185307179586)+d,0);break a}if(b>>>0>=2139095040){a=C(a-a);break a}b=G9(a,e+8|0);a=V9(A[e+8>>3],b&1)}xa=e+16|0;return a}function zY(a){a=a|0;var b=0,c=0,d=0;b=v[a+28>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+28>>2]=0;b=v[a+32>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+32>>2]=0;b=v[a+40>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+40>>2]=0;b=v[a+36>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+36>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;b=xa-16|0;xa=b;c=v[a+16>>2];v[b+12>>2]=a;c=Pg(c+128|0,b+12|0);xa=b+16|0;if(c){b=v[a>>2];c=v[a+16>>2];d=x[a+4>>1];a:{if(t[a+6|0]&1){Ba[v[b+16>>2]](a);break a}Ba[v[b+12>>2]](a)|0}rV(c,a,d);return}b9(v[37696],8,11302,126,75224,0)}function TO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;f=a+24|0;c=v[a+28>>2];d=v[b+44>>2];v[e+12>>2]=d;a:{if(!(t[d+44|0]&1)){d=c;break a}d=v[a+36>>2];v[a+36>>2]=d+1;if((c|0)==(d|0)){d=c;break a}g=d<<2;h=v[g+v[f>>2]>>2];v[e+12>>2]=h;v[v[h>>2]+152>>2]=c;v[v[f>>2]+g>>2]=v[b+44>>2]}if(w[b+149|0]&16){c=v[a+44>>2];b:{if(c>>>0>=(v[a+48>>2]&2147483647)>>>0){UO(a+40|0,e+12|0);break b}v[v[a+40>>2]+(c<<2)>>2]=v[e+12>>2];v[a+44>>2]=c+1}v[b+156>>2]=c}v[b+152>>2]=d;b=v[a+28>>2];c:{if(b>>>0>=(v[a+32>>2]&2147483647)>>>0){UO(f,e+12|0);break c}v[v[a+24>>2]+(b<<2)>>2]=v[e+12>>2];v[a+28>>2]=b+1}xa=e+16|0}function Eaa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(oaa(a,v[b+8>>2],f)){yaa(b,c,d,e);return}g=w[b+53|0];j=v[a+12>>2];t[b+53|0]=0;h=w[b+52|0];t[b+52|0]=0;m=a+16|0;Aaa(m,b,c,d,e,f);k=w[b+53|0];g=g|k;l=w[b+52|0];h=h|l;i=a+24|0;j=(j<<3)+m|0;a:{if(i>>>0>=j>>>0){break a}while(1){if(w[b+54|0]){break a}b:{if(l){if(v[b+24>>2]==1){break a}if(w[a+8|0]&2){break b}break a}if(!k){break b}if(!(t[a+8|0]&1)){break a}}u[b+52>>1]=0;Aaa(i,b,c,d,e,f);k=w[b+53|0];g=k|g;l=w[b+52|0];h=l|h;i=i+8|0;if(j>>>0>i>>>0){continue}break}}t[b+53|0]=(g&255)!=0;t[b+52|0]=(h&255)!=0}function OX(a,b,c,d,e,f,g,h,i){var j=0,k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),v=C(0),w=0;j=xa-192|0;xa=j;k=z[d+20>>2];r=z[d+16>>2];s=z[d+24>>2];m=z[d>>2];n=C(m+m);l=z[d+8>>2];t=z[d+4>>2];o=z[d+12>>2];p=C(o+o);q=z[c+8>>2];v=C(C(C(n*l)-C(t*p))*q);z[j+180>>2]=s-v;l=C(q*C(C(l*p)+C(n*t)));z[j+176>>2]=k-l;z[j+168>>2]=v+s;z[j+164>>2]=k+l;k=C(q*C(C(m*n)+C(C(o*p)+C(-1))));z[j+172>>2]=r-k;z[j+160>>2]=r+k;z[j+184>>2]=z[c+4>>2]+C(0);c=j+160|0;d=j+96|0;xX(c,d);w=j+32|0;DV(w,j+144|0,j+132|0,d,e,f);u[j+8>>1]=x[i>>1];a=J2(a,b,c,e,f,h,g,j+16|0,j+8|0,0,w);xa=j+192|0;return a}function Ku(a,b){var c=0,d=0,e=0,f=0;e=a+16|0;c=xa-16|0;xa=c;d=v[b+12>>2];if(d){f=v[d>>2];e=v[e+1012>>2];v[c+8>>2]=v[d+48>>2];Ba[v[v[e>>2]+36>>2]](e,f,c+8|0)}xa=c+16|0;d=a+5012|0;c=xa-16|0;xa=c;a:{if(!w[a+4785|0]){v[b+4>>2]=v[b+4>>2]&-769;pP(a+16|0,b+12|0);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break a}b:{c:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}v[b+4>>2]=a&1073741823;v[c+4>>2]=b;Pg(d,c+4|0);break a}v[b+4>>2]=a|-1073741824;if(a&268435456){break a}v[c+8>>2]=b;a=rh(d,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2]}xa=c+16|0;t[b+60|0]=1}function HB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=xa+-64|0;xa=d;g=v[b+8>>2];h=v[b+4>>2];e=v[c+8>>2];f=v[c+268>>2];a:{b:{if((w[(f&16384?e+268|0:c+60|0)|0]&3)!=3){break b}if(f&32768){z[d>>2]=z[e+192>>2];z[d+4>>2]=z[e+196>>2];z[d+8>>2]=z[e+200>>2];z[d+12>>2]=z[e+204>>2];z[d+16>>2]=z[e+208>>2];z[d+20>>2]=z[e+212>>2];z[d+24>>2]=z[e+216>>2];f=d;break a}if(y[c+4>>2]>3221225471){break b}f=d;if(ZG(c+16|0,d)){break a}}f=c+208|0}e=v[c+268>>2]&1024?v[c+8>>2]+144|0:c- -64|0;c=d+32|0;uh(f,h&4?g:b+48|0,e,c);eV(a,v[b+4>>2]&1?v[b+8>>2]- -64|0:b+84|0,c,C(1.0099999904632568));xa=d- -64|0}function QW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=0,m=C(0),n=0,o=C(0),p=C(0),q=C(0),r=C(0),s=C(0),t=C(0),u=C(0);d=v[b+8>>2];h=z[d+52>>2];i=z[d+20>>2];j=z[d+36>>2];k=z[d+56>>2];c=(c<<4)+101152|0;l=v[c>>2];m=z[d+24>>2];n=v[c+4>>2];b=v[b+4>>2];e=z[b+52>>2];o=z[d+40>>2];c=v[c+8>>2];f=z[b+56>>2];p=z[d+48>>2];q=z[d>>2];r=z[d+16>>2];s=z[d+32>>2];t=z[d+4>>2];u=z[d+8>>2];g=z[b+48>>2];v[a+12>>2]=0;f=c?f:C(-f);g=l?g:C(-g);e=n?e:C(-e);z[a+8>>2]=k+C(C(o*f)+C(C(u*g)+C(m*e)));z[a+4>>2]=h+C(C(j*f)+C(C(t*g)+C(e*i)));z[a>>2]=p+C(C(s*f)+C(C(q*g)+C(e*r)))}function QK(a){var b=0,c=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+68>>2]=0;b=v[a+36>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+36>>2]=0;b=v[a+64>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+64>>2]=0;b=v[a+60>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+60>>2]=0}b=v[a+56>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+48>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;b=v[a+84>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+84>>2]=0}b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0}function dq(a,b,c,d){var e=0,f=0,g=0;e=xa-16|0;xa=e;g=b+48|0;f=v[b+52>>2];f=w[(f&1?v[b+56>>2]:(g+v[((f>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8;a:{if(!d){break a}v[e+12>>2]=-1;d=nh(b+12|0,e+12|0);if(!d){break a}Sg(d,b,0)}iu(b+20|0,a+5584|0,b);if(!f){ph(b+12|0)}Fu(a+16|0,g,c,(w[(v[((v[b+52>>2]>>>22&60)+89188|0)+12>>2]+g|0)+8|0]&8)>>>3|0);b=v[b+44>>2];d=a+5936|0;c=v[d>>2]-1|0;v[d>>2]=c;d=v[a+5932>>2];v[d+(b<<2)>>2]=v[d+(c<<2)>>2];b:{if(!c|(b|0)==(c|0)){break b}c:{a=v[v[a+5932>>2]+(b<<2)>>2];switch(Ba[v[v[a>>2]+24>>2]](a)|0){case 0:case 1:break c;default:break b}}v[a+44>>2]=b}xa=e+16|0}function cq(a,b,c,d){var e=0,f=0,g=0;e=xa-16|0;xa=e;g=b+48|0;f=v[b+52>>2];f=w[(f&1?v[b+56>>2]:(g+v[((f>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8;a:{if(!d){break a}v[e+12>>2]=-1;d=nh(b+12|0,e+12|0);if(!d){break a}Sg(d,b,0)}iu(b+20|0,a+5584|0,b);if(!f){ph(b+12|0)}Cu(a+16|0,g,c,(w[(v[((v[b+52>>2]>>>22&60)+89188|0)+12>>2]+g|0)+8|0]&8)>>>3|0);b=v[b+44>>2];d=a+5936|0;c=v[d>>2]-1|0;v[d>>2]=c;d=v[a+5932>>2];v[d+(b<<2)>>2]=v[d+(c<<2)>>2];b:{if(!c|(b|0)==(c|0)){break b}c:{a=v[v[a+5932>>2]+(b<<2)>>2];switch(Ba[v[v[a>>2]+24>>2]](a)|0){case 0:case 1:break c;default:break b}}v[a+44>>2]=b}xa=e+16|0}function IL(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=v[a+28>>2];c=v[g+88>>2];d=v[c>>2];a:{if(!d){break a}e=v[c+12>>2];a=0;if(d-1>>>0>=3){f=d&-4;while(1){b=v[(B(a,40)+e|0)+28>>2];if(b){v[b+116>>2]=0}b=v[(B(a|1,40)+e|0)+28>>2];if(b){v[b+116>>2]=0}b=v[(B(a|2,40)+e|0)+28>>2];if(b){v[b+116>>2]=0}b=v[(B(a|3,40)+e|0)+28>>2];if(b){v[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=v[(B(a,40)+e|0)+28>>2];if(f){v[f+116>>2]=0}a=a+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}wL(c+36|0,v[c+24>>2],g,c+76|0,c+84|0);J9(v[c+76>>2],0,v[c+80>>2]<<2)}function wr(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=xa-16|0;xa=f;h=v[a+24>>2];c=v[a+20>>2];i=v[a+4>>2];j=v[a+16>>2];e=v[i+(j<<2)>>2];d=c+e|0;d=(d+15&-16)-d|0;if(h>>>0>>0){v[a+20>>2]=0;c=j+1|0;v[a+16>>2]=c;d=v[a+8>>2];if(d>>>0<=c>>>0){a:{if(!h){c=0;break a}g=v[37696]+12|0;c=Ba[v[v[g>>2]+8>>2]](g,h,24422,18513,88)|0;d=v[a+8>>2]}v[f+12>>2]=c;b:{if((v[a+12>>2]&2147483647)>>>0<=d>>>0){Vs(a+4|0,f+12|0);break b}v[v[a+4>>2]+(d<<2)>>2]=c;v[a+8>>2]=d+1}i=v[a+4>>2];c=v[a+16>>2];g=v[a+20>>2]}e=v[(c<<2)+i>>2];d=(e+15&-16)-e|0;c=g}v[a+20>>2]=(b+d|0)+c;xa=f+16|0;return(c+e|0)+d|0}function fh(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(!(w[a+32|0]|d>>>0>32)){t[a+32|0]=1;e=a;break a}if(!d){break a}e=v[37696];c=e+12|0;e=(i=c,j=d,k=Ba[v[v[e>>2]+20>>2]](e)|0?30787:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a+36>>2];c=v[a+40>>2];if((c|0)>0){g=(c<<3)+e|0;c=d;f=e;while(1){t[f|0]=w[c|0];v[f+4>>2]=v[c+4>>2];c=c+8|0;f=f+8|0;if(g>>>0>f>>>0){continue}break}}b:{if(v[a+44>>2]<0){break b}if((a|0)==(d|0)){t[a+32|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+44>>2]=b;v[a+36>>2]=e}function Rv(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(b,28);if(!c){break a}e=v[37696];f=e+12|0;e=(i=f,j=c,k=Ba[v[v[e>>2]+20>>2]](e)|0?37437:63804,l=16608,m=553,h=v[v[f>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}f=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,28)+e|0;d=f;c=e;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];d=d+28|0;c=c+28|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,f)}v[a+8>>2]=b;v[a>>2]=e}function GZ(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<<2;if(!(w[a+4352|0]|d>>>0>4352)){t[a+4352|0]=1;e=a;break a}if(!d){break a}e=v[37696];c=e+12|0;e=(i=c,j=d,k=Ba[v[v[e>>2]+20>>2]](e)|0?29035:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a+4356>>2];c=v[a+4360>>2];if((c|0)>0){g=(c<<2)+e|0;c=d;f=e;while(1){v[f>>2]=v[c>>2];c=c+4|0;f=f+4|0;if(g>>>0>f>>>0){continue}break}}b:{if(v[a+4364>>2]<0){break b}if((a|0)==(d|0)){t[a+4352|0]=0;break b}if(!d){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+4364>>2]=b;v[a+4356>>2]=e}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=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=xa+-64|0;xa=j;l=v[v[a>>2]+128>>2];k=v[c+4>>2];v[j+48>>2]=v[c>>2];v[j+52>>2]=k;k=v[c+12>>2];v[j+56>>2]=v[c+8>>2];v[j+60>>2]=k;c=v[d+4>>2];v[j+32>>2]=v[d>>2];v[j+36>>2]=c;c=v[d+12>>2];v[j+40>>2]=v[d+8>>2];v[j+44>>2]=c;Ba[l|0](a,b,j+48|0,j+32|0,h,i);b=v[v[a>>2]+128>>2];c=v[f+12>>2];v[j+24>>2]=v[f+8>>2];v[j+28>>2]=c;c=v[f+4>>2];v[j+16>>2]=v[f>>2];v[j+20>>2]=c;c=v[g+12>>2];v[j+8>>2]=v[g+8>>2];v[j+12>>2]=c;c=v[g+4>>2];v[j>>2]=v[g>>2];v[j+4>>2]=c;Ba[b|0](a,e,j+16|0,j,h,i);xa=j- -64|0}function QV(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=C(0),k=0,l=0,m=C(0);g=xa-4288|0;xa=g;j=z[d+24>>2];k=v[d+16>>2];l=v[d+20>>2];m=z[c+4>>2];v[g+4232>>2]=-1;z[g+52>>2]=m;d=0;v[g+48>>2]=0;c=g+4232|0;h=g+48|0;lV(c,h);v[g+4176>>2]=-1;i=g+4176|0;lV(i,e);v[g+4168>>2]=0;v[g+4172>>2]=0;v[g+4144>>2]=0;z[g+40>>2]=j;v[g+32>>2]=k;v[g+36>>2]=l;v[g+24>>2]=0;v[g+28>>2]=1065353216;v[g+16>>2]=0;v[g+20>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;a:{if(!NZ(c,i,g+16|0,f,g,h,0)){break a}if(!RV(a,b,v[g+4144>>2],g+48|0)){break a}d=v[g+4144>>2]!=0}xa=g+4288|0;return d|0}function fG(a,b){var c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;v[d+12>>2]=b;if((b|0)!=-1){c=v[a+72>>2];a:{if(c>>>0>=(v[a+76>>2]&2147483647)>>>0){pn(a+68|0,d+12|0);break a}v[v[a+68>>2]+(c<<2)>>2]=b;v[a+72>>2]=v[a+72>>2]+1}FF(a+640|0,v[d+12>>2]);b=v[d+12>>2];if(v[v[a+152>>2]+(b>>>3&536870908)>>2]>>>b&1){FF(a+168|0,b);b=v[d+12>>2];c=v[a+152>>2]+(b>>>3&536870908)|0;e=v[c>>2];f=c,g=Vaa(-2,b)&e,v[f>>2]=g;b=v[d+12>>2]}c=v[a+148>>2];e=(b>>>0)/(c>>>0)|0;v[v[v[a+128>>2]+(e<<2)>>2]+(b-B(c,e)<<2)>>2]=0;e=v[a+44>>2];a=v[a- -64>>2];c=(b>>>0)/(a>>>0)|0;v[v[e+(c<<2)>>2]+(b-B(a,c)<<2)>>2]=0}xa=d+16|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(b,24);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?44911:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,24)+e|0;c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=f;f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;d=d+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function xR(a){a=a|0;var b=0,c=0,d=0,e=0;c=v[a+20>>2];a=v[a+28>>2];b=v[a+2352>>2];d=v[b+12>>2];v[b>>2]=v[b+8>>2];v[b+4>>2]=d;J9(b+8|0,0,148);BK(v[a+976>>2]);v[a+2768>>2]=v[c+16>>2];b=a+2772|0;v[b>>2]=v[b>>2]+1;t[a+2844|0]=1;v[a+2872>>2]=v[c+16>>2];b=a+2876|0;v[b>>2]=v[b>>2]+1;t[a+2948|0]=1;b=a+3980|0;v[b>>2]=c;v[a+3984>>2]=1;Ba[v[v[c>>2]+16>>2]](c);d=a+3976|0;v[d>>2]=v[v[b>>2]+16>>2];v[a+3824>>2]=1;b=a+3820|0;c=a+3960|0;v[b>>2]=c;Ba[v[v[a+3960>>2]+16>>2]](c);e=a+3816|0;v[e>>2]=v[v[b>>2]+16>>2];b=v[d>>2];Ba[v[v[b>>2]+72>>2]](b,c);c=v[e>>2];Ba[v[v[c>>2]+72>>2]](c,a+3800|0)}function _f(a,b){var c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;a:{if(t[149528]&1){f=v[37381];break a}f=aa(2,114064)|0;t[149528]=1;v[37381]=f}c=maa(64);v[c+8>>2]=v[b+8>>2];e=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=e;u[c+12>>1]=x[b+12>>1];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];z[c+28>>2]=z[b+28>>2];z[c+32>>2]=z[b+32>>2];z[c+36>>2]=z[b+36>>2];z[c+40>>2]=z[b+40>>2];e=v[b+48>>2];v[c+44>>2]=v[b+44>>2];v[c+48>>2]=e;e=v[b+56>>2];v[c+52>>2]=v[b+52>>2];v[c+56>>2]=e;v[c+60>>2]=v[b+60>>2];v[d+8>>2]=c;g=+fa(f|0,a|0,4445,d+4|0,d+8|0);ga(v[d+4>>2]);xa=d+16|0;return g!=0}function rR(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=v[a+28>>2];f=v[d+4688>>2];if(f){while(1){a=v[v[d+4684>>2]+(e<<2)>>2];a:{if(!(a&1)){break a}a=a&-2;c=v[a+56>>2];g=a;h=v[d+1e3>>2];b=v[v[a+28>>2]+4>>2];i=v[(w[v[b+44>>2]+9|0]-1>>>0<2?b:0)+144>>2];b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(b){b=v[b+144>>2]}else{b=-128}a=_F(h,c,i,b,a+4|0);v[g+60>>2]=a;if(!c){break a}v[c- -64>>2]=a}e=e+1|0;if((f|0)!=(e|0)){continue}break}}if(!v[d+996>>2]){a=v[d+1e3>>2];v[a+1076>>2]=0;v[a+1064>>2]=0;v[a+916>>2]=0;v[a+904>>2]=0;c=a+640|0;NF(c);PF(c);OF(c);TF(c,a+32|0,0,0)}}function ZQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=xa-48|0;xa=e;d=v[a+28>>2];a=v[d+2360>>2];b=v[v[d+976>>2]+1024>>2];Ba[v[v[b>>2]+84>>2]](e+8|0,b);f=a&8;b=v[d+980>>2];c=v[b+332>>2];if(c){a=v[b+328>>2];while(1){lJ(v[d+2168>>2],v[a>>2],v[a+4>>2],0,v[a+8>>2],e+8|0,(f|0)!=0);a=a+12|0;c=c-1|0;if(c){continue}break}}c=v[b+344>>2];if(c){a=v[b+340>>2];while(1){lJ(v[d+2168>>2],v[a>>2],v[a+4>>2],0,0,e+8|0,(f|0)!=0);a=a+12|0;c=c-1|0;if(c){continue}break}}a=v[b+272>>2];Ba[v[v[a>>2]+80>>2]](a);a=v[b+272>>2];Ba[v[v[a>>2]+68>>2]](a);a=v[d+3696>>2];Ba[v[v[a>>2]+72>>2]](a,d+3680|0);xa=e+48|0}function vK(a){var b=0,c=0,d=0,e=0,f=0;d=v[a+4>>2];a:{if(!d){break a}if(v[a>>2]){b=1;while(1){c=0;b:{if(!b){b=0;break b}while(1){c=c+1|0;b=v[a>>2];if(c>>>0>>0){continue}break}d=v[a+4>>2]}e=e+1|0;if(e>>>0>>0){continue}break}if(!d){break a}}c=0;while(1){b=v[a+20>>2];e=c<<2;f=v[b+e>>2];if(f){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,f);d=v[a+4>>2];b=v[a+20>>2]}v[b+e>>2]=0;c=c+1|0;if(c>>>0>>0){continue}break}}v[a+4>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+20>>2]=0}}function hP(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(b,24);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?31271:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,24)+e|0;c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;v[c+16>>2]=v[d+16>>2];f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;t[c+20|0]=w[d+20|0];d=d+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=v[a+284>>2];if(e){f=v[a+292>>2];while(1){c=B(d,24)+f|0;z[c>>2]=z[c>>2]-z[b>>2];z[c+4>>2]=z[c+4>>2]-z[b+4>>2];z[c+8>>2]=z[c+8>>2]-z[b+8>>2];z[c+12>>2]=z[c+12>>2]-z[b>>2];z[c+16>>2]=z[c+16>>2]-z[b+4>>2];z[c+20>>2]=z[c+20>>2]-z[b+8>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}c=v[a+4>>2];if(c){OB(c,b)}if(w[a+336|0]){c=0;OB(v[a+220>>2],b);if(v[a+256>>2]){while(1){OB(v[v[a+252>>2]+(c<<3)>>2],b);c=c+1|0;if(c>>>0>2]){continue}break}}c=v[a+68>>2];if(c){UC(c,b)}c=v[a+116>>2];if(c){UC(c,b)}}a=v[a+32>>2];if(a){OB(a,b)}}function HH(a,b){var c=0,d=0,e=0,f=0,g=0;e=xa-16|0;xa=e;c=v[a+8>>2];a:{if(!c){break a}d=v[c+4>>2];if(d>>>0<=63){v[(c+(d<<2)|0)+8>>2]=v[b>>2];a=v[a+8>>2];v[a+4>>2]=v[a+4>>2]+1;break a}c=v[a>>2];g=v[c+4>>2];d=v[c+8>>2];f=v[(g+(d<<2)|0)-4>>2];b:{if((f-v[c+16>>2]|0)>=272){f=f-272|0;v[e+12>>2]=f;if(d>>>0>=(v[c+12>>2]&2147483647)>>>0){Vs(c+4|0,e+12|0);c=v[e+12>>2];break b}v[(d<<2)+g>>2]=f;v[c+8>>2]=d+1;c=v[e+12>>2];break b}c=v[37696];c=Ba[v[v[c+12>>2]+8>>2]](c+12|0,272,24422,17461,99)|0}if(c){v[c>>2]=0;v[c+4>>2]=1;v[c+8>>2]=v[b>>2];v[v[a+8>>2]>>2]=c;v[a+8>>2]=c}}xa=e+16|0}function AH(a){var b=0,c=0,d=0,e=0,f=0,g=0;c=v[a+4>>2];b=v[c+4>>2];a:{if((b|0)==(c|0)){break a}e=1;while(1){g=f;f=f+1|0;d=e;e=d+1|0;c=b;b=v[c+4>>2];if((b|0)!=(c|0)){continue}break}if(!d){break a}f=d&7;b:{if(!f){b=a;break b}e=0;while(1){b=v[a+4>>2];v[a+4>>2]=c;d=d-1|0;a=b;e=e+1|0;if((f|0)!=(e|0)){continue}break}}if(g>>>0<7){break a}while(1){a=v[b+4>>2];v[b+4>>2]=c;b=v[a+4>>2];v[a+4>>2]=c;a=v[b+4>>2];v[b+4>>2]=c;b=v[a+4>>2];v[a+4>>2]=c;a=v[b+4>>2];v[b+4>>2]=c;b=v[a+4>>2];v[a+4>>2]=c;a=v[b+4>>2];v[b+4>>2]=c;b=v[a+4>>2];v[a+4>>2]=c;d=d-8|0;if(d){continue}break}}return c}function my(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);a:{if(x[d+8>>1]==65535){d=v[d+4>>2];j=z[d+56>>2];k=z[d+44>>2];f=z[d+60>>2];l=z[d+36>>2];m=z[d+48>>2];g=z[d- -64>>2];n=z[d+40>>2];o=z[d+52>>2];p=z[d+32>>2];e=z[c+8>>2];h=z[c>>2];i=z[c+4>>2];z[a>>2]=z[b>>2];g=C(C(C(h*n)+C(i*o))+C(e*g));f=C(C(C(h*l)+C(i*m))+C(e*f));e=C(C(C(h*p)+C(i*k))+C(e*j));break a}z[a>>2]=z[b>>2];g=z[c+8>>2];f=z[c+4>>2];e=z[c>>2]}c=v[b+8>>2];b=v[b+4>>2];v[a+28>>2]=0;z[a+24>>2]=g;z[a+20>>2]=f;z[a+16>>2]=e;v[a+12>>2]=0;v[a+4>>2]=b;v[a+8>>2]=c}function Og(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=xa-16|0;xa=e;$n(v[37393],a,0,1);if(v[a+36>>2]){f=a+8|0;while(1){b=d<<2;c=v[b+v[a+40>>2]>>2];if((Ba[v[v[c>>2]+24>>2]](c)|0)==2){c=v[v[b+v[a+40>>2]>>2]+320>>2];h=Ba[v[v[c>>2]+100>>2]](c)|0,i=0,v[h+96>>2]=i}b=v[b+v[a+40>>2]>>2];c=(x[b+4>>1]<<2)+86240|0;g=v[c+72>>2];oh(b+v[c>>2]|0,0);su(f,b+g|0,1);d=d+1|0;if(d>>>0>2]){continue}break}}d=a+8|0;a:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}b=v[a+8>>2];if(!b){break a}b=b-16|0;if(!b){break a}Nu(b+16|0,d);v[e+12>>2]=a;Pg(b+5984|0,e+12|0)}tu(d);xa=e+16|0}function gM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;fM(a,c);v[a+4>>2]=b;d=b;b=v[a+200>>2];c=b<<3;d=Dx(d,c,1);v[a+264>>2]=b;v[a+256>>2]=d;v[a+260>>2]=0;d=Dx(v[a+4>>2],c,1);v[a+276>>2]=b;v[a+268>>2]=d;v[a+272>>2]=0;d=Dx(v[a+4>>2],b<<2,1);v[a+212>>2]=b;v[a+204>>2]=d;v[a+208>>2]=0;d=Dx(v[a+4>>2],c,1);v[a+332>>2]=b;v[a+324>>2]=d;v[a+328>>2]=0;d=Dx(v[a+4>>2],c,1);v[a+380>>2]=b;v[a+372>>2]=d;v[a+376>>2]=0;c=Dx(v[a+4>>2],c,1);v[a+428>>2]=b;v[a+420>>2]=c;v[a+424>>2]=0;hM(a);Ba[v[v[a+288>>2]+32>>2]](a+288|0);Ba[v[v[a+336>>2]+32>>2]](a+336|0);Ba[v[v[a+384>>2]+32>>2]](a+384|0);iM(a)}function gJ(a,b,c,d,e,f,g,h){var i=0,j=0;i=xa-16|0;xa=i;a:{if(!(w[b|0]&2)){j=x[b+2>>1];if(!h){u[i+8>>1]=j;g=qJ(a,c,d,i+8|0,e,f);break a}e=w[v[d+28>>2]- -64|0];g=v[a+1276>>2];if(!g){rJ(a+988|0);g=v[a+1276>>2]}v[a+1276>>2]=v[g>>2];f=a+1268|0;v[f>>2]=v[f>>2]+1;e=e&4;g=oS(g,e?d:c,e?c:d);u[g+56>>1]=x[g+56>>1]&65504|j&20;break a}h=g;if(!g){h=v[a+1860>>2];if(!h){sJ(a+1572|0);h=v[a+1860>>2]}v[a+1860>>2]=v[h>>2];e=a+1852|0;v[e>>2]=v[e>>2]+1}g=tJ(h,c,d,(g|0)!=0)}b=v[b+4>>2];if((b|0)!=-1){t[g+25|0]=w[g+25|0]|16;v[v[v[a+108>>2]>>2]+(b<<2)>>2]=g;v[g+36>>2]=b}xa=i+16|0;return g}function a3(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;a=xa-32|0;xa=a;a:{if(y[b+4>>2]<2|y[b>>2]<2|(v[b+8>>2]!=1|y[b+12>>2]<4)){break a}if(x[b+24>>1]>1|z[b+20>>2]>2]+20>>2]](d)|0?45527:63804,k=10899,l=456,g=v[v[e>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0),0);b:{if(!a$(d,b)){break b}b=Ba[v[v[c>>2]>>2]](c,1,d+16|0)|0;if(!b){break b}v[b+76>>2]=v[d+76>>2];v[b+80>>2]=v[d+80>>2];z[b+84>>2]=z[d+84>>2];z[b+88>>2]=z[d+88>>2];v[b+92>>2]=v[d+92>>2];f=b}Ba[v[v[d>>2]+16>>2]](d)}xa=a+32|0;return f|0}function og(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a>>2]=118004;if(t[a+6|0]&1){c=v[a+56>>2];Ba[v[v[c>>2]+8>>2]](c)}c=v[37389];a:{if(!v[c+596>>2]){break a}b=(a<<15^-1)+a|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=v[c+572>>2]+((v[c+580>>2]-1&(b>>>16^b))<<2)|0;b=v[d>>2];if((b|0)==-1){break a}f=v[c+568>>2];e=v[c+564>>2];if(v[e+(b<<2)>>2]!=(a|0)){while(1){d=(b<<2)+f|0;b=v[d>>2];if((b|0)==-1){break a}if(v[(b<<2)+e>>2]!=(a|0)){continue}break}}e=d;d=(b<<2)+f|0;v[e>>2]=v[d>>2];v[c+596>>2]=v[c+596>>2]-1;v[c+592>>2]=v[c+592>>2]+1;v[d>>2]=v[c+588>>2];v[c+588>>2]=b}return a|0}function W3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;t[d+15|0]=66;t[d+14|0]=86;t[d+13|0]=52;t[d+12|0]=32;Ba[v[v[b>>2]>>2]](b,d+15|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+14|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+13|0,1)|0;Ba[v[v[b>>2]>>2]](b,d+12|0,1)|0;kX(3,c,b);lX(z[a+132>>2],c,b);lX(z[a+136>>2],c,b);lX(z[a+140>>2],c,b);lX(z[a+144>>2],c,b);kX(v[a+156>>2],c,b);lX(z[a+160>>2],c,b);lX(z[a+164>>2],c,b);lX(z[a+168>>2],c,b);lX(z[a+172>>2],c,b);lX(z[a+176>>2],c,b);lX(z[a+180>>2],c,b);kX(w[a+185|0],c,b);kX(v[a+148>>2],c,b);Ba[v[v[b>>2]>>2]](b,v[a+152>>2],v[a+148>>2]<<4)|0;xa=d+16|0}function HW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);a=xa-16|0;xa=a;l=z[d+24>>2];m=z[d+20>>2];n=z[c+4>>2];o=z[d+16>>2];f=z[c+8>>2];i=z[d+8>>2];g=z[d+12>>2];p=z[d+4>>2];h=z[d>>2];BV(a,b);d=1;xa=a+16|0;q=z[a+12>>2];j=C(h+h);k=C(g+g);r=C(f*C(C(i*j)-C(p*k)));s=z[a+8>>2];g=C(f*C(C(h*j)+C(C(g*k)+C(-1))));h=z[a>>2];f=C(f*C(C(i*k)+C(j*p)));i=z[a+4>>2];if(!(C(q+C(C(C(l+r)*s)+C(C(C(o+g)*h)+C(C(m+f)*i))))<=n)){d=C(q+C(C(C(l-r)*s)+C(C(C(o-g)*h)+C(C(m-f)*i))))<=n}return d|0}function JT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=C(0),i=C(0);g=z[a+532>>2];h=z[a+528>>2];i=z[a+524>>2];c=v[a+436>>2];v[b>>2]=v[a+432>>2];v[b+4>>2]=c;c=v[a+444>>2];v[b+8>>2]=v[a+440>>2];v[b+12>>2]=c;c=v[a+452>>2];v[b+16>>2]=v[a+448>>2];v[b+20>>2]=c;d=+i;A[b>>3]=A[b>>3]-d;e=+h;A[b+8>>3]=A[b+8>>3]-e;f=+g;A[b+16>>3]=A[b+16>>3]-f;c=v[a+452>>2];v[b+40>>2]=v[a+448>>2];v[b+44>>2]=c;c=v[a+444>>2];v[b+32>>2]=v[a+440>>2];v[b+36>>2]=c;c=v[a+436>>2];v[b+24>>2]=v[a+432>>2];v[b+28>>2]=c;A[b+24>>3]=A[b+24>>3]+d;A[b+32>>3]=A[b+32>>3]+e;A[b+40>>3]=A[b+40>>3]+f;return 1}function IT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=C(0),h=C(0),i=C(0);g=z[a+540>>2];h=z[a+536>>2];i=z[a+532>>2];c=v[a+444>>2];v[b>>2]=v[a+440>>2];v[b+4>>2]=c;c=v[a+452>>2];v[b+8>>2]=v[a+448>>2];v[b+12>>2]=c;c=v[a+460>>2];v[b+16>>2]=v[a+456>>2];v[b+20>>2]=c;d=+i;A[b>>3]=A[b>>3]-d;e=+h;A[b+8>>3]=A[b+8>>3]-e;f=+g;A[b+16>>3]=A[b+16>>3]-f;c=v[a+460>>2];v[b+40>>2]=v[a+456>>2];v[b+44>>2]=c;c=v[a+452>>2];v[b+32>>2]=v[a+448>>2];v[b+36>>2]=c;c=v[a+444>>2];v[b+24>>2]=v[a+440>>2];v[b+28>>2]=c;A[b+24>>3]=A[b+24>>3]+d;A[b+32>>3]=A[b+32>>3]+e;A[b+40>>3]=A[b+40>>3]+f;return 1}function w3(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;a:{if(v[a+24>>2]){break a}b=v[a+32>>2];e=(b<<2)+c|0;v[e+16>>2]=v[e+16>>2]+1;if(!b){break a}e=v[a+28>>2];d=v[c+12>>2];g=v[c+4>>2];a=0;if((b|0)!=1){i=b&-2;while(1){j=(d<<2)+g|0;d=a<<2;f=d+e|0;v[j>>2]=v[f>>2];v[f>>2]=v[c+12>>2];f=v[c+12>>2]+1|0;v[c+12>>2]=f;d=e+(d|4)|0;v[(f<<2)+g>>2]=v[d>>2];v[d>>2]=v[c+12>>2];d=v[c+12>>2]+1|0;v[c+12>>2]=d;a=a+2|0;h=h+2|0;if((i|0)!=(h|0)){continue}break}}if(!(b&1)){break a}a=e+(a<<2)|0;v[(d<<2)+g>>2]=v[a>>2];v[a>>2]=v[c+12>>2];v[c+12>>2]=v[c+12>>2]+1}return 1}function ZI(a,b,c){var d=0,e=0,f=0,g=0;a:{e=v[a+4>>2];f=v[e+28>>2];if(!f){break a}d=v[e+20>>2];g=d+(f<<2)|0;while(1){b:{e=d+4|0;d=v[d>>2];if(t[d+21|0]&1&(v[d+24>>2]==(a|0)|v[d+28>>2]==(a|0))){break b}d=e;if((g|0)!=(d|0)){continue}break a}break}c:while(1){f=w[d+21|0];d:{if(!(f&c)){break d}t[d+22|0]=w[d+22|0]|b;if(f&8){break d}VH(d);t[d+21|0]=w[d+21|0]|8}if((e|0)==(g|0)){break a}while(1){f=e+4|0;e:{d=v[e>>2];if(!(t[d+21|0]&1)){break e}if(v[d+24>>2]==(a|0)){e=f;continue c}if(v[d+28>>2]!=(a|0)){break e}e=f;continue c}e=f;if((f|0)!=(g|0)){continue}break}break}}}function Sh(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=xa-16|0;xa=g;a:{b:{c:{if((v[a+16>>2]>>>30|0)-3>>>0<4294967294){break c}f=v[a+12>>2];if(!f){break c}if(f-16|0){break b}}b9(v[37696],4,10974,300,75797,0);a=0;break a}if(v[b+56>>2]!=v[a+116>>2]){b9(v[37696],4,10974,308,76239,0);a=0;break a}f=Ba[v[v[a>>2]+24>>2]](a)|0;Ba[v[v[f>>2]+244>>2]](g,f);f=xa-16|0;xa=f;a=v[a+24>>2];if(a){z[f>>2]=z[g>>2];z[f+4>>2]=z[g+4>>2];z[f+8>>2]=z[g+8>>2];h=v[a>>2];a=Ba[v[v[h>>2]+88>>2]](h,v[a+52>>2],v[a+56>>2],b,c,d,f,e)|0}else{a=0}xa=f+16|0}xa=g+16|0;return a|0}function Iu(a,b){var c=0,d=0,e=0;e=a+4972|0;c=xa-16|0;xa=c;v[b>>2]=a;d=v[b+4>>2];a:{if(!w[a+4785|0]){v[b+4>>2]=d&268435455|-2147483648;Hg(b,c+12|0,c+8|0);d=a+16|0;e=b+12|0;a=v[c+12>>2];if(a){a=a+v[((v[a+4>>2]>>>22&60)+89188|0)+12>>2]|0}else{a=0}b=v[c+8>>2];if(b){b=b+v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]|0}else{b=0}mP(d,e,a,b);break a}a=d&1073741823;if(d>>>0>=3221225472){v[b+4>>2]=a|-2147483648;if(d&268435456){break a}v[c+12>>2]=b;Pg(e,c+12|0);break a}v[b+4>>2]=a|1073741824;v[c+12>>2]=b;a=rh(e,c+12|0,c+8|0);if(w[c+8|0]){break a}v[a>>2]=v[c+12>>2]}xa=c+16|0}function ZJ(a){a=a|0;var b=0,c=0;v[a>>2]=131412;b=v[a+92>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+84>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+80>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+72>>2];if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+68>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=v[a+60>>2];if(!b){break c}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+56>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+12>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Zn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=xa-16|0;xa=f;a:{if(!v[a+92>>2]){break a}e=(b<<15^-1)+b|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=v[v[a+68>>2]+((v[a+76>>2]-1&(e>>>16^e))<<2)>>2];if((e|0)==-1){break a}g=v[a- -64>>2];a=v[a+60>>2];while(1){if(v[a+(e<<3)>>2]!=(b|0)){e=v[g+(e<<2)>>2];if((e|0)!=-1){continue}break a}break}a=v[(a+(e<<3)|0)+4>>2];b=v[a+36>>2]+d|0;if(b>>>0>y[a+20>>2]){Im(a,b)}if(!d){break a}e=0;while(1){b=(e<<2)+c|0;g=Nm(a,b,f+15|0);if(!w[f+15|0]){v[g>>2]=v[b>>2]}e=e+1|0;if((e|0)!=(d|0)){continue}break}}xa=f+16|0}function jC(a){var b=0;v[a+48>>2]=0;v[a+52>>2]=0;v[a+200>>2]=-25165825;v[a+192>>2]=-25165825;v[a+196>>2]=-25165825;v[a+184>>2]=0;v[a+176>>2]=0;v[a+180>>2]=0;v[a+168>>2]=-25165825;v[a+160>>2]=-25165825;v[a+164>>2]=-25165825;v[a+152>>2]=0;v[a+144>>2]=0;v[a+148>>2]=0;v[a+136>>2]=-25165825;v[a+128>>2]=-25165825;v[a+132>>2]=-25165825;v[a+120>>2]=0;v[a+112>>2]=0;v[a+116>>2]=0;v[a+104>>2]=-25165825;v[a+96>>2]=-25165825;v[a+100>>2]=-25165825;v[a+88>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+72>>2]=-25165825;b=a- -64|0;v[b>>2]=-25165825;v[b+4>>2]=-25165825;v[a+56>>2]=0}function pH(a){var b=0,c=0;b=v[a+160>>2];if(b){a=v[b+8>>2];a:{if(!(z[a+32>>2]>2]=.3999999761581421;if(!v[b+16>>2]){break a}a=0;while(1){qH(v[v[b+24>>2]+(a<<2)>>2],C(.3999999761581421));a=a+1|0;if(a>>>0>2]){continue}break}}return}b=v[a+44>>2];if(!(t[b+44|0]&1|!(z[b+156>>2]>2]=.3999999761581421;c=v[v[a+40>>2]+1012>>2];Ba[v[v[c>>2]+44>>2]](c,w[b+9|0]==2,a+144|0);if(y[a+152>>2]>=4294967294){TO(v[a+40>>2],a);aH(a)}cG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);u[a+92>>1]=x[a+92>>1]&65534}}function zI(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?59167:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function y4(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61605:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61481:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function qG(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?57927:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function qF(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?60489:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function pT(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61723:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function mI(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?59049:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?58181:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function jG(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?60245:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function _p(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?56405:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function ZU(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=0;e=z[b+24>>2];d=z[b+4>>2];f=z[b>>2];g=z[b+12>>2];c=z[b+8>>2];n=v[b+20>>2];b=v[b+16>>2];v[a+48>>2]=0;v[a- -64>>2]=0;v[a+80>>2]=0;v[a+96>>2]=1065353216;z[a+92>>2]=e;v[a+84>>2]=b;v[a+88>>2]=n;e=C(f+f);h=C(d*e);j=C(c+c);k=C(g*j);z[a+40>>2]=h+k;l=C(e*c);i=C(d+d);m=C(g*i);z[a+44>>2]=l-m;z[a+52>>2]=h-k;h=C(i*c);g=C(e*g);z[a+60>>2]=h+g;z[a+68>>2]=l+m;z[a+72>>2]=h-g;f=C(C(1)-C(f*e));c=C(c*j);z[a+56>>2]=f-c;d=C(d*i);z[a+76>>2]=f-d;z[a+36>>2]=C(C(1)-d)-c;return a}function ZO(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?57805:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function Vs(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?57427:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}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,m=0,n=0;c=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?59547:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61221:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}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=0,n=0;c=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61075:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function Mm(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?56299:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function MO(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?56187:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function H4(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?55463:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function Dy(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?58537:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?61821:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function D4(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=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?60363:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}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,n=0;c=v[a+8>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=v[37696];c=d+12|0;d=(j=c,k=e,l=Ba[v[v[d>>2]+20>>2]](d)|0?57673:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}f=v[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=v[a>>2];c=d;while(1){v[c>>2]=v[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}v[e>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c);f=v[a+4>>2]}v[a+8>>2]=g;v[a>>2]=d;v[a+4>>2]=f+1}function bV(a,b){var c=0,d=C(0),e=C(0),f=0,g=C(0);c=xa-32|0;xa=c;e=z[b+8>>2];g=z[b+4>>2];d=z[b>>2];v[a+4>>2]=v[b+12>>2];v[c+16>>2]=0;v[c+20>>2]=0;z[c+12>>2]=d+C(0);v[c+8>>2]=0;v[c>>2]=0;v[c+4>>2]=0;d=C(C(K(C(C(e*e)+C(C(d*d)+C(g*g)))))*C(.15000000596046448));z[c+24>>2]=d;f=aV(a,c);v[a+4>>2]=v[b+16>>2];e=z[b+4>>2];v[c+8>>2]=0;v[c+12>>2]=0;v[c+20>>2]=0;z[c+16>>2]=e+C(0);v[c>>2]=0;v[c+4>>2]=0;z[c+24>>2]=d;f=aV(f,c);v[a+4>>2]=v[b+20>>2];e=z[b+8>>2];v[c+16>>2]=0;v[c+8>>2]=0;v[c+12>>2]=0;z[c+20>>2]=e+C(0);v[c>>2]=0;v[c+4>>2]=0;z[c+24>>2]=d;aV(f,c);xa=c+32|0}function CV(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0;a:{if(!b){v[a+8>>2]=2122317823;v[a+12>>2]=-25165825;v[a>>2]=2122317823;v[a+4>>2]=2122317823;d=C(-85070586659632215e21);e=C(-85070586659632215e21);break a}b=b-1|0;m=B(b,12)+c|0;f=z[m+8>>2];g=z[m+4>>2];h=z[m>>2];b:{if(!b){i=h;d=g;e=f;break b}e=f;d=g;i=h;while(1){j=z[c+8>>2];e=e>j?e:j;k=z[c+4>>2];d=d>k?d:k;l=z[c>>2];i=i>l?i:l;f=f>2]=i;z[a+8>>2]=f;z[a+4>>2]=g;z[a>>2]=h}z[a+20>>2]=e;z[a+16>>2]=d}function St(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=0;c=a+48|0;d=xa-16|0;xa=d;a:{b:{c:{d:{a=a+32|0;e=v[a+4>>2];f=e>>>30|0;switch(f-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}z[c+136>>2]=b;a=v[a-12>>2];if(!a){break a}e:{f:{switch(x[a+4>>1]-5|0){case 0:a=a- -64|0;break e;case 8:a=a- -64|0;break e;default:break f}}a=a- -64|0}if((f|0)==1){break a}t[d|0]=w[c- -64|0];v[d+8>>2]=256;TJ(a,c,d+8|0,d,0);break a}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],e>>>24&15);v[a+8>>2]=c}z[c+60>>2]=b;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|256}xa=d+16|0}function Qt(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=0;c=a+48|0;d=xa-16|0;xa=d;a:{b:{c:{d:{a=a+32|0;e=v[a+4>>2];f=e>>>30|0;switch(f-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}z[c+132>>2]=b;a=v[a-12>>2];if(!a){break a}e:{f:{switch(x[a+4>>1]-5|0){case 0:a=a- -64|0;break e;case 8:a=a- -64|0;break e;default:break f}}a=a- -64|0}if((f|0)==1){break a}t[d|0]=w[c- -64|0];v[d+8>>2]=128;TJ(a,c,d+8|0,d,0);break a}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],e>>>24&15);v[a+8>>2]=c}z[c+56>>2]=b;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|128}xa=d+16|0}function Caa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(oaa(a,v[b+8>>2],e)){if(!(v[b+28>>2]==1|v[b+4>>2]!=(c|0))){v[b+28>>2]=d}return}a:{if(oaa(a,v[b>>2],e)){if(!(v[b+16>>2]!=(c|0)&v[b+20>>2]!=(c|0))){if((d|0)!=1){break a}v[b+32>>2]=1;return}v[b+32>>2]=d;b:{if(v[b+44>>2]==4){break b}u[b+52>>1]=0;a=v[a+8>>2];Ba[v[v[a>>2]+20>>2]](a,b,c,c,1,e);if(w[b+53|0]){v[b+44>>2]=3;if(!w[b+52|0]){break b}break a}v[b+44>>2]=4}v[b+20>>2]=c;v[b+40>>2]=v[b+40>>2]+1;if(v[b+36>>2]!=1|v[b+24>>2]!=2){break a}t[b+54|0]=1;return}a=v[a+8>>2];Ba[v[v[a>>2]+24>>2]](a,b,c,d,e)}}function jW(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=C(0),j=0,k=0,l=0;a:{if(!c){break a}a=0;if((c|0)!=1){k=c&-2;while(1){f=B(w[a+b|0],12)+d|0;g=v[f+4>>2];h=v[f>>2];i=z[f+8>>2];f=(a<<4)+e|0;v[f+12>>2]=0;z[f+8>>2]=i;v[f>>2]=h;v[f+4>>2]=g;f=a|1;g=B(w[f+b|0],12)+d|0;h=v[g+4>>2];l=v[g>>2];f=(f<<4)+e|0;z[f+8>>2]=z[g+8>>2];v[f+12>>2]=0;v[f>>2]=l;v[f+4>>2]=h;a=a+2|0;j=j+2|0;if((k|0)!=(j|0)){continue}break}}if(!(c&1)){break a}b=B(w[a+b|0],12)+d|0;c=v[b+4>>2];d=v[b>>2];i=z[b+8>>2];a=(a<<4)+e|0;v[a+12>>2]=0;z[a+8>>2]=i;v[a>>2]=d;v[a+4>>2]=c}}function fS(a,b){var c=0,d=0,e=0,f=0,g=0;c=v[v[a+4>>2]+40>>2];if(b){cS(a,0,v[c+980>>2]+160|0);return}e=v[a+8>>2];if((e|0)<0){f=e&2147483647;a=f+32>>>5|0;a:{if(a>>>0<=(v[c+2520>>2]&2147483647)>>>0){b=v[c+2516>>2];break a}b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,a<<2,24422,17999,438)|0;d=v[c+2516>>2];b:{if(!d){break b}I9(b,d,v[c+2520>>2]<<2);if(v[c+2520>>2]<0){break b}d=v[c+2516>>2];if(!d){break b}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,d)}d=v[c+2520>>2];J9((d<<2)+b|0,0,a-d<<2);v[c+2520>>2]=a;v[c+2516>>2]=b}a=(f>>>3&268435452)+b|0;v[a>>2]=v[a>>2]|1<>2]=c;c=f+160|0;J9(c,0,40);v[f+200>>2]=v[f+204>>2];a:{if((Z9(0,b,f+200|0,f+80|0,c,d,e)|0)<0){break a}h=v[a+76>>2]>=0;c=v[a>>2];if(v[a+72>>2]<=0){v[a>>2]=c&-33}b:{c:{d:{if(!v[a+48>>2]){v[a+48>>2]=80;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;g=v[a+44>>2];v[a+44>>2]=f;break d}if(v[a+16>>2]){break c}}if(N9(a)){break b}}Z9(a,b,f+200|0,f+80|0,f+160|0,d,e)}if(g){Ba[v[a+36>>2]](a,0,0)|0;v[a+48>>2]=0;v[a+44>>2]=g;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0}v[a>>2]=v[a>>2]|c&32;if(!h){break a}}xa=f+208|0}function u9(a,b,c){var d=0,e=0,f=0;if(!a){return 0}a:{b:{d=31-E(a+15|0)|0;f=d>>>0>8?d:8;if(f>>>0<=16){d=v[37696];e=v[d+244>>2]+(f<<2)|0;a=e-32|0;e=e-20|0;d=v[d+244>>2]+(v[d+248>>2]<<2)|0;e=d>>>0>e>>>0?e:d;if(a>>>0>>0){while(1){d=v[a>>2];if(d){break b}a=a+4|0;if(e>>>0>a>>>0){continue}break}d=0;if(f>>>0>30){break a}}a=v[37696];d=Ba[v[v[a+12>>2]+8>>2]](a+12|0,2<>2]+8>>2]](d+12|0,a,24422,b,c)|0;break a}v[a>>2]=v[d>>2];f=(a-v[v[37696]+244>>2]>>2)+8|0}v[d>>2]=f;return d+16|0}function Ot(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=0;c=a+48|0;d=xa-16|0;xa=d;a:{b:{c:{d:{a=a+32|0;e=v[a+4>>2];f=e>>>30|0;switch(f-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}z[c+128>>2]=b;a=v[a-12>>2];if(!a){break a}e:{f:{switch(x[a+4>>1]-5|0){case 0:a=a- -64|0;break e;case 8:a=a- -64|0;break e;default:break f}}a=a- -64|0}if((f|0)==1){break a}t[d|0]=w[c- -64|0];v[d+8>>2]=32;TJ(a,c,d+8|0,d,0);break a}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],e>>>24&15);v[a+8>>2]=c}z[c+48>>2]=b;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|32}xa=d+16|0}function ZB(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=v[a+40>>2];a:{if(!b){break a}d=v[a+44>>2];if((b|0)!=1){h=b&-2;while(1){b:{c:{c=e<<2;f=v[c+d>>2];switch(x[f+4>>1]-5|0){case 0:case 1:break c;default:break b}}v[f+40>>2]=0}d:{e:{c=v[(c|4)+d>>2];switch(x[c+4>>1]-5|0){case 0:case 1:break e;default:break d}}v[c+40>>2]=0}e=e+2|0;g=g+2|0;if((h|0)!=(g|0)){continue}break}}if(!(b&1)){break a}f:{b=v[(e<<2)+d>>2];switch(x[b+4>>1]-5|0){case 0:case 1:break f;default:break a}}v[b+40>>2]=0}b=v[a>>2];if(t[a+6|0]&1){Ba[v[b+16>>2]](a);return}Ba[v[b+12>>2]](a)|0}function Mt(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=0;c=a+48|0;d=xa-16|0;xa=d;a:{b:{c:{d:{a=a+32|0;e=v[a+4>>2];f=e>>>30|0;switch(f-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}z[c+60>>2]=b;a=v[a-12>>2];if(!a){break a}e:{f:{switch(x[a+4>>1]-5|0){case 0:a=a- -64|0;break e;case 8:a=a- -64|0;break e;default:break f}}a=a- -64|0}if((f|0)==1){break a}t[d|0]=w[c- -64|0];v[d+8>>2]=16;TJ(a,c,d+8|0,d,0);break a}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],e>>>24&15);v[a+8>>2]=c}z[c+44>>2]=b;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|16}xa=d+16|0}function p3(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;a:{if(v[a+24>>2]){break a}b=v[a+32>>2];e=(b<<2)+c|0;v[e+16>>2]=v[e+16>>2]+1;if(!b){break a}e=v[a+28>>2];d=v[c+8>>2];g=v[c>>2];a=0;if((b|0)!=1){i=b&-2;while(1){j=(d<<2)+g|0;d=a<<2;f=d+e|0;v[j>>2]=v[f>>2];v[f>>2]=v[c+8>>2];f=v[c+8>>2]+1|0;v[c+8>>2]=f;d=e+(d|4)|0;v[(f<<2)+g>>2]=v[d>>2];v[d>>2]=v[c+8>>2];d=v[c+8>>2]+1|0;v[c+8>>2]=d;a=a+2|0;h=h+2|0;if((i|0)!=(h|0)){continue}break}}if(!(b&1)){break a}a=e+(a<<2)|0;v[(d<<2)+g>>2]=v[a>>2];v[a>>2]=v[c+8>>2];v[c+8>>2]=v[c+8>>2]+1}return 1}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=C(0),f=0,g=C(0);g=z[a+528>>2];e=z[a+524>>2];c=v[a+436>>2];v[b>>2]=v[a+432>>2];v[b+4>>2]=c;c=v[a+444>>2];v[b+8>>2]=v[a+440>>2];v[b+12>>2]=c;c=v[a+452>>2];v[b+16>>2]=v[a+448>>2];v[b+20>>2]=c;d=+e;A[b>>3]=A[b>>3]-d;f=+C(e+C(g*C(.5)));A[b+8>>3]=A[b+8>>3]-f;A[b+16>>3]=A[b+16>>3]-d;c=v[a+452>>2];v[b+40>>2]=v[a+448>>2];v[b+44>>2]=c;c=v[a+444>>2];v[b+32>>2]=v[a+440>>2];v[b+36>>2]=c;c=v[a+436>>2];v[b+24>>2]=v[a+432>>2];v[b+28>>2]=c;A[b+24>>3]=A[b+24>>3]+d;A[b+32>>3]=A[b+32>>3]+f;A[b+40>>3]=A[b+40>>3]+d;return 1}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=C(0),f=0,g=C(0);g=z[a+536>>2];e=z[a+532>>2];c=v[a+444>>2];v[b>>2]=v[a+440>>2];v[b+4>>2]=c;c=v[a+452>>2];v[b+8>>2]=v[a+448>>2];v[b+12>>2]=c;c=v[a+460>>2];v[b+16>>2]=v[a+456>>2];v[b+20>>2]=c;d=+e;A[b>>3]=A[b>>3]-d;f=+C(e+C(g*C(.5)));A[b+8>>3]=A[b+8>>3]-f;A[b+16>>3]=A[b+16>>3]-d;c=v[a+460>>2];v[b+40>>2]=v[a+456>>2];v[b+44>>2]=c;c=v[a+452>>2];v[b+32>>2]=v[a+448>>2];v[b+36>>2]=c;c=v[a+444>>2];v[b+24>>2]=v[a+440>>2];v[b+28>>2]=c;A[b+24>>3]=A[b+24>>3]+d;A[b+32>>3]=A[b+32>>3]+f;A[b+40>>3]=A[b+40>>3]+d;return 1}function fj(a,b,c){var d=0,e=0;a:{b:{c:{d:{e=v[a+4>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break d}}d=v[a>>2];break b}d=v[a>>2];if(w[d+4785|0]){break a}}JG(a+16|0,v[d+2428>>2],b,c);return}d=v[a+8>>2];if(!d){d=Qu(v[a>>2],e>>>24&15);v[a+8>>2]=d}if(b){z[d+244>>2]=z[b>>2]+z[d+244>>2];z[d+248>>2]=z[b+4>>2]+z[d+248>>2];z[d+252>>2]=z[b+8>>2]+z[d+252>>2];b=262144}else{b=0}if(c){z[d+256>>2]=z[c>>2]+z[d+256>>2];z[d+260>>2]=z[c+4>>2]+z[d+260>>2];z[d+264>>2]=z[c+8>>2]+z[d+264>>2];b=b|524288}Yu(v[a>>2],a);v[a+268>>2]=v[a+268>>2]|b}function ej(a,b,c){var d=0,e=0;a:{b:{c:{d:{e=v[a+4>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break d}}d=v[a>>2];break b}d=v[a>>2];if(w[d+4785|0]){break a}}FG(a+16|0,v[d+2428>>2],b,c);return}d=v[a+8>>2];if(!d){d=Qu(v[a>>2],e>>>24&15);v[a+8>>2]=d}if(b){z[d+220>>2]=z[b>>2]+z[d+220>>2];z[d+224>>2]=z[b+4>>2]+z[d+224>>2];z[d+228>>2]=z[b+8>>2]+z[d+228>>2];b=65536}else{b=0}if(c){z[d+232>>2]=z[c>>2]+z[d+232>>2];z[d+236>>2]=z[c+4>>2]+z[d+236>>2];z[d+240>>2]=z[c+8>>2]+z[d+240>>2];b=b|131072}Yu(v[a>>2],a);v[a+268>>2]=v[a+268>>2]|b}function My(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;d=v[b+4>>2];if(d){g=a+88|0;h=a+112|0;while(1){c=d-1|0;d=v[v[b>>2]+(c<<2)>>2];v[b+4>>2]=c;v[e+12>>2]=d;c=v[a+168>>2];f=v[c+16>>2];a:{if(!(d>>>0>>0|d>>>0>=v[c+20>>2]+f>>>0)){c=v[a+92>>2];if(c>>>0>=(v[a+96>>2]&2147483647)>>>0){Dy(g,e+12|0);break a}v[v[a+88>>2]+(c<<2)>>2]=d;v[a+92>>2]=c+1;break a}c=v[a+116>>2];b:{if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){Dy(h,e+12|0);break b}v[v[a+112>>2]+(c<<2)>>2]=d;v[a+116>>2]=c+1}v[a+152>>2]=v[a+152>>2]-1}d=v[b+4>>2];if(d){continue}break}}xa=e+16|0}function XQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=v[a+28>>2];a=v[a+20>>2];v[b+3620>>2]=a;v[b+3624>>2]=1;d=b+3600|0;a:{if(!a){c=v[b+3616>>2];break a}Ba[v[v[a>>2]+16>>2]](a);c=v[v[b+3620>>2]+16>>2];v[b+3616>>2]=c}Ba[v[v[c>>2]+72>>2]](c,d);v[b+3660>>2]=a;v[b+3664>>2]=1;c=b+3640|0;b:{if(!a){a=v[b+3656>>2];break b}Ba[v[v[a>>2]+16>>2]](a);a=v[v[b+3660>>2]+16>>2];v[b+3656>>2]=a}Ba[v[v[a>>2]+72>>2]](a,c);a=v[b+980>>2];c=v[a+332>>2];if(c){a=v[a+328>>2];while(1){e=a,f=kJ(v[b+2168>>2],v[a>>2],v[a+4>>2]),v[e+8>>2]=f;a=a+12|0;c=c-1|0;if(c){continue}break}}}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,m=0,n=0;d=v[a+8>>2];g=d&2147483647?d<<1:1;a:{if(!g){break a}d=g<<2;if(!d){break a}e=v[37696];c=e+12|0;e=(j=c,k=d,l=Ba[v[v[e>>2]+20>>2]](e)|0?29035:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){h=(c<<2)+e|0;c=d;f=e;while(1){v[f>>2]=v[c>>2];c=c+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}c=v[a+4>>2]}v[(c<<2)+e>>2]=v[b>>2];if(!(!d|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d)}v[a+8>>2]=g;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function ZF(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=v[a+8>>2];g=d&2147483647?d<<1:1;a:{if(!g){break a}d=g<<2;if(!d){break a}e=v[37696];c=e+12|0;e=(j=c,k=d,l=Ba[v[v[e>>2]+20>>2]](e)|0?26235:63804,m=16608,n=553,i=v[v[c>>2]+8>>2],Ba[i](j|0,k|0,l|0,m|0,n|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){h=(c<<2)+e|0;c=d;f=e;while(1){v[f>>2]=v[c>>2];c=c+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}c=v[a+4>>2]}v[(c<<2)+e>>2]=v[b>>2];if(!(!d|v[a+8>>2]<0)){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d)}v[a+8>>2]=g;v[a>>2]=e;v[a+4>>2]=v[a+4>>2]+1}function Wq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;if(!w[a+4801|0]){a=a+32|0;a:{b:{if(b){c:{if(y[a+2180>>2]>=c>>>0){d=v[a+2172>>2];break c}d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,c,24422,11777,1434)|0;if(!d){break b}v[a+2180>>2]=c;e=v[a+2172>>2];if(!e){break c}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,e)}b=I9(d,b,c);v[a+2176>>2]=c;v[a+2172>>2]=b;break a}b=v[a+2172>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+2172>>2]=0}v[a+2176>>2]=0;v[a+2180>>2]=0;break a}b9(v[37696],16,11777,1443,76452,0)}return}b9(v[37696],8,19228,565,69003,0)}function At(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==5){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;v[b>>2]=v[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];z[b+28>>2]=z[a+28>>2];t[b+32|0]=w[a+32|0];c=w[a+33|0]|w[a+34|0]<<8|(w[a+35|0]<<16|w[a+36|0]<<24);t[b+33|0]=c;t[b+34|0]=c>>>8;t[b+35|0]=c>>>16;t[b+36|0]=c>>>24;a=w[a+36|0]|w[a+37|0]<<8|(w[a+38|0]<<16|w[a+39|0]<<24);t[b+36|0]=a;t[b+37|0]=a>>>8;t[b+38|0]=a>>>16;t[b+39|0]=a>>>24}return(d|0)==5|0}function $n(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(w[a+100|0]){g=v[a+92>>2];if(g){i=v[a+60>>2];a=(b<<15^-1)+b|0;a=B(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;j=a>>>16^a;while(1){h=(f<<3)+i|0;a=v[h+4>>2];a:{if(!(w[a+40|0]&d)){break a}b:{if(!w[a+41|0]){break b}if(!v[a+36>>2]){break a}e=v[v[a+12>>2]+((v[a+20>>2]-1&j)<<2)>>2];if((e|0)==-1){break a}k=v[a+8>>2];a=v[a+4>>2];while(1){e=e<<2;if(v[e+a>>2]==(b|0)){break b}e=v[e+k>>2];if((e|0)!=-1){continue}break}break a}a=v[h>>2];Ba[v[v[a>>2]>>2]](a,b,c,d)}f=f+1|0;if((g|0)!=(f|0)){continue}break}}}}function VO(a,b){var c=0,d=0,e=0,f=0,g=0;d=v[b+152>>2];v[b+152>>2]=-2;g=v[a+28>>2];c=v[a+36>>2];a:{if(c>>>0<=d>>>0){e=d;break a}e=c-1|0;v[a+36>>2]=e;if((c|0)==(g|0)){e=d;break a}if(d>>>0>=e>>>0){e=d;break a}c=v[v[a+24>>2]+(e<<2)>>2];v[v[c>>2]+152>>2]=d;v[v[a+24>>2]+(d<<2)>>2]=c}if(w[b+149|0]&16){f=v[b+156>>2];v[b+156>>2]=-2;c=v[a+44>>2]-1|0;if((c|0)!=(f|0)){b=v[a+40>>2];d=v[b+(c<<2)>>2];v[b+(f<<2)>>2]=d;v[v[d>>2]+156>>2]=f}v[a+44>>2]=c}c=g-1|0;if((c|0)!=(e|0)){b=v[a+24>>2];d=v[b+(c<<2)>>2];v[b+(e<<2)>>2]=d;v[v[d>>2]+152>>2]=e}v[a+28>>2]=c}function CP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=xa-48|0;xa=f;c=v[v[a+976>>2]+1024>>2];Ba[v[v[c>>2]+84>>2]](f+8|0,c);i=v[v[a+1004>>2]+8>>2];j=v[i+8>>2];if(j){while(1){d=v[i+4>>2]+(h<<5)|0;e=v[d>>2];a:{if(!e){break a}c=v[e+44>>2];if(!(c&448)){break a}g=c<<1&1048576;k=g|c&-1572865;v[e+44>>2]=k;b:{if(z[d+20>>2]>C(z[d+8>>2]*z[a+1080>>2])){v[e+44>>2]=k|524288;d=64;if(g?0:c&64){break b}d=128;if(!(c&128)){break a}if(g){break b}break a}d=256;if(!(c&256)|!g){break a}}SR(e,d,0,0,b,f+8|0)}h=h+1|0;if((j|0)!=(h|0)){continue}break}}xa=f+48|0}function jH(a){var b=0,c=0,d=0,e=0,f=0,g=0;t[a+150|0]=w[a+150|0]|4;if(w[v[a+44>>2]+9|0]!=2){e=v[a+144>>2];f=e>>>7|0;d=f+32>>>5|0;a=v[a+40>>2];a:{if(d>>>0<=(v[a+2448>>2]&2147483647)>>>0){b=v[a+2444>>2];break a}b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,d<<2,24422,17999,438)|0;c=v[a+2444>>2];b:{if(!c){break b}I9(b,c,v[a+2448>>2]<<2);if(v[a+2448>>2]<0){break b}c=v[a+2444>>2];if(!c){break b}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}c=v[a+2448>>2];J9((c<<2)+b|0,0,d-c<<2);v[a+2448>>2]=d;v[a+2444>>2]=b}a=(e>>>10&4194300)+b|0;v[a>>2]=v[a>>2]|1<>2]+9|0]!=2){e=v[a+144>>2];f=e>>>7|0;d=f+32>>>5|0;a=v[a+40>>2];a:{if(d>>>0<=(v[a+2448>>2]&2147483647)>>>0){b=v[a+2444>>2];break a}b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,d<<2,24422,17999,438)|0;c=v[a+2444>>2];b:{if(!c){break b}I9(b,c,v[a+2448>>2]<<2);if(v[a+2448>>2]<0){break b}c=v[a+2444>>2];if(!c){break b}g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,c)}c=v[a+2448>>2];J9((c<<2)+b|0,0,d-c<<2);v[a+2448>>2]=d;v[a+2444>>2]=b}a=(e>>>10&4194300)+b|0;v[a>>2]=v[a>>2]|1<>2]=0;v[a+76>>2]=0;b=v[a+32>>2];if(!(!b|!v[a+48>>2])){J9(v[a+24>>2],255,b<<2);b=0;d=v[a+20>>2];f=v[a+28>>2];e=f-1|0;if(e){if(f-2>>>0>=3){f=e&-4;while(1){c=b|1;v[(b<<2)+d>>2]=c;g=(c<<2)+d|0;c=b|2;v[g>>2]=c;g=(c<<2)+d|0;c=b|3;v[g>>2]=c;b=b+4|0;v[(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;v[c>>2]=b;i=i+1|0;if((e|0)!=(i|0)){continue}break}}b=v[a+28>>2]-1|0}else{b=0}v[d+(b<<2)>>2]=-1;v[a+48>>2]=0;v[a+40>>2]=0}v[a+52>>2]=0}function KO(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+28>>2];e=v[b+136>>2];a=v[b+148>>2];d=v[(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+v[c>>2]|0;v[g+52>>2]=0;v[g+44>>2]=0;c=f+v[c>>2]|0;v[c+116>>2]=0;v[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=v[(a>>>4&268435448)+e>>2]+((a&127)<<6)|0;v[a+52>>2]=0;v[a+44>>2]=0}v[b+164>>2]=0;v[v[b+152>>2]+4>>2]=0;wO(b);a=v[b+300>>2];b=v[v[b+312>>2]+304>>2];v[a>>2]=v[b>>2];v[b>>2]=a}function w0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=0,n=C(0),o=C(0),p=C(0),q=C(0);e=xa-32|0;xa=e;m=v[c+36>>2];f=z[b+20>>2];n=z[b+16>>2];o=z[b+24>>2];h=z[b>>2];i=C(h+h);g=z[b+8>>2];p=z[b+4>>2];j=z[b+12>>2];k=C(j+j);l=z[a+8>>2];q=C(C(C(i*g)-C(p*k))*l);z[e+20>>2]=o-q;g=C(l*C(C(g*k)+C(i*p)));z[e+16>>2]=f-g;z[e+8>>2]=q+o;z[e+4>>2]=f+g;f=C(l*C(C(h*i)+C(C(j*k)+C(-1))));z[e+12>>2]=n-f;z[e>>2]=n+f;z[e+24>>2]=z[a+4>>2];a=Ba[v[(x[m+4>>1]<<2)+143720>>2]](e,m,d,c+4|0,0)|0;xa=e+32|0;return a|0}function Hu(a){var b=0,c=0,d=0,e=0,f=0;b=xa-288|0;xa=b;t[b+264|0]=1;v[b+272>>2]=0;v[b+276>>2]=64;v[b+268>>2]=b+8;e=Io(a,b+4|0,0);if(e){f=v[a>>2]+4816|0;while(1){a=v[v[b+4>>2]+(d<<2)>>2]+32|0;c=v[a+4>>2];if(c&268435456){Zu(a);v[b+284>>2]=a;Pg(f,b+284|0);c=v[a+4>>2]&-268435457;v[a+4>>2]=c}if((c&251658240)==16777216){v[a>>2]=0;v[a+4>>2]=c&1073741823}d=d+1|0;if((e|0)!=(d|0)){continue}break}}a=v[b+276>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=v[b+268>>2];if((a|0)==(b+8|0)|!a){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=b+288|0}function HR(a,b){var c=0,d=0,e=0,f=0,g=0;d=v[b>>2];f=52685;a:{b:{c:{g=a+68|0;switch(v[g>>2]-5|0){case 1:break b;case 0:break c;default:break a}}c=v[a+116>>2];f=x[a+122>>1];e=x[a+120>>1];break a}c=v[a+96>>2];f=x[a+102>>1];e=x[a+100>>1]}lV(g,b);if(d-5>>>0<=1){d=(d|0)==5;b=d?a+116|0:a+96|0;d=d?116:96;if(e){v[a+d>>2]=c;u[b+6>>1]=f;u[b+4>>1]=e;return}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,2,24422,18135,109)|0;v[a+d>>2]=c;u[b+4>>1]=1;u[c>>1]=x[a+66>>1];t[a+65|0]=1;return}if(!(!c|(!e|!w[a+65|0]))){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,c)}}function dK(a){a=a|0;var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;if(v[a+52>>2]){v[c+12>>2]=0;if(v[a+76>>2]){d=a+84|0;while(1){b=v[a+72>>2]+B(b,20)|0;a:{if(v[b+8>>2]==2){break a}e=b;b=v[b+4>>2]-1|0;v[e+4>>2]=b;if(b){break a}b=v[a+88>>2];if(b>>>0>=(v[a+92>>2]&2147483647)>>>0){pn(d,c+12|0);break a}v[v[a+84>>2]+(b<<2)>>2]=v[c+12>>2];v[a+88>>2]=v[a+88>>2]+1}b=v[c+12>>2]+1|0;v[c+12>>2]=b;if(y[a+76>>2]>b>>>0){continue}break}}if(v[a+88>>2]){b=0;while(1){eK(a,v[v[a+84>>2]+(b<<2)>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}v[a+88>>2]=0}xa=c+16|0}function B_(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);a=v[a+60>>2];h=z[a+8>>2];j=h;i=C(-h);h=z[b+8>>2];k=z[b>>2];l=z[b+4>>2];g=C(C(z[c+32>>2]*h)+C(C(z[c+24>>2]*k)+C(l*z[c+28>>2])));m=C((g>=C(0)?j:i)*g);g=z[a>>2];j=g;i=C(-g);g=C(C(z[c+8>>2]*h)+C(C(z[c>>2]*k)+C(z[c+4>>2]*l)));j=C((g>=C(0)?j:i)*g);g=C(C(z[c+20>>2]*h)+C(C(z[c+12>>2]*k)+C(l*z[c+16>>2])));i=z[a+4>>2];g=C(m+C(j+C(g*(g>=C(0)?i:C(-i)))));h=C(C(z[c+44>>2]*h)+C(C(z[c+36>>2]*k)+C(l*z[c+40>>2])));z[f>>2]=g+h;z[e>>2]=h-g}function e_(a,b){a=a|0;b=b|0;var c=0,d=0;Ba[v[v[b>>2]+12>>2]](b,16);c=u[a+52>>1];d=c&32767;c=(((B(w[a+55|0],20)+(v[a+80>>2]&2147483647)|0)+B(w[a+54|0],15)|0)+(d<<1)|0)+((c|0)>=0?0:d<<2)|0;d=c&3;Ba[v[v[b>>2]+8>>2]](b,v[a+56>>2],(d?4-d|0:0)+c|0);if(v[a+84>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+84>>2],28);a=v[a+84>>2];if(v[a+4>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+4>>2],x[a+2>>1]<<1)}if(v[a+16>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+16>>2],v[a+12>>2]+((v[a+8>>2]<<2)+12&-16)|0)}}}function Eu(a){var b=0,c=0,d=0,e=0,f=0;b=xa-288|0;xa=b;t[b+264|0]=1;v[b+272>>2]=0;v[b+276>>2]=64;v[b+268>>2]=b+8;e=_o(a,b+4|0);if(e){f=v[a>>2]+4816|0;while(1){a=v[v[b+4>>2]+(d<<2)>>2]+32|0;c=v[a+4>>2];if(c&268435456){Zu(a);v[b+284>>2]=a;Pg(f,b+284|0);c=v[a+4>>2]&-268435457;v[a+4>>2]=c}if((c&251658240)==16777216){v[a>>2]=0;v[a+4>>2]=c&1073741823}d=d+1|0;if((e|0)!=(d|0)){continue}break}}a=v[b+276>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=v[b+268>>2];if((a|0)==(b+8|0)|!a){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,a)}xa=b+288|0}function EG(a,b){var c=C(0),d=0,e=C(0),f=0,g=C(0),h=C(0),i=C(0),j=C(0);d=xa-16|0;xa=d;g=z[b+24>>2];h=z[b>>2];i=z[b+16>>2];j=z[b+20>>2];a:{if(!(!(i!=C(0)|j!=C(0))&g==C(0))){c=z[b+8>>2];e=z[b+4>>2];break a}c=z[b+8>>2];e=z[b+4>>2];if(h!=C(0)|e!=C(0)|c!=C(0)){break a}f=z[b+12>>2]==C(1)}z[a+56>>2]=c;z[a+52>>2]=e;z[a+48>>2]=h;t[a+45|0]=f;c=z[b+12>>2];z[a+72>>2]=g;z[a+68>>2]=j;z[a- -64>>2]=i;z[a+60>>2]=c;a=v[a>>2];if(a){XJ(a);b=v[v[a+40>>2]+1012>>2];f=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(f|0)==2,d+8|0)}xa=d+16|0}function Px(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;h=v[a+448>>2];if(h>>>0>=2){i=v[a+456>>2];j=v[a+444>>2];d=1;while(1){e=(B(d,24)+b|0)-24|0;f=(v[(B(d,80)+i|0)+72>>2]<<2)+c|0;g=v[((d<<5)+j|0)+20>>2];if(w[g+258|0]){z[f>>2]=z[e>>2];a=1}else{a=0}if(w[g+259|0]){z[(a<<2)+f>>2]=z[e+4>>2];a=a+1|0}if(w[g+260|0]){z[(a<<2)+f>>2]=z[e+8>>2];a=a+1|0}if(w[g+261|0]){z[(a<<2)+f>>2]=z[e+12>>2];a=a+1|0}if(w[g+262|0]){z[(a<<2)+f>>2]=z[e+16>>2];a=a+1|0}if(w[g+263|0]){z[(a<<2)+f>>2]=z[e+20>>2]}d=d+1|0;if((h|0)!=(d|0)){continue}break}}}function Yj(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=0,h=0;c=xa-16|0;xa=c;d=z[b>>2];e=z[b+4>>2];f=z[b+8>>2];f=f==C(0)?C(0):C(C(1)/f);z[c+8>>2]=f;e=e==C(0)?C(0):C(C(1)/e);z[c+4>>2]=e;d=d==C(0)?C(0):C(C(1)/d);z[c>>2]=d;g=a+48|0;a:{b:{c:{d:{h=v[a+52>>2];switch((h>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[g>>2]+4785|0]){break b}}MG(a- -64|0,c);break a}b=v[a+56>>2];if(!b){b=Qu(v[a+48>>2],h>>>24&15);v[a+56>>2]=b}z[b+96>>2]=d;z[b+104>>2]=f;z[b+100>>2]=e;Yu(v[a+48>>2],g);v[a+316>>2]=v[a+316>>2]|2}xa=c+16|0}function $k(a,b){var c=0,d=0;z[a+260>>2]=b;a:{b:{c:{d:{d=v[a+4>>2]>>>30|0;switch(d-2|0){case 1:break a;case 0:break c;default:break d}}c=v[a>>2];break b}c=v[a>>2];if(w[c+4785|0]){break a}}if(!(!(b>C(0))|!c)){v[a+264>>2]=0}VG(a+16|0,b,0);return}if(b>C(0)){e:{f:{switch(d-2|0){case 0:c=v[a>>2];if(w[c+4785|0]){break e}default:z[a+260>>2]=b;v[a+264>>2]=0;VG(a+16|0,b,1);return;case 1:break f}}c=v[a>>2]}z[a+260>>2]=b;v[a+264>>2]=0;Yu(c,a);v[a+268>>2]=v[a+268>>2]&-117440513|83886080;return}Yu(v[a>>2],a);v[a+268>>2]=v[a+268>>2]|16777216}function Zp(a,b,c,d){var e=0,f=0,g=0,h=0;f=xa-224|0;xa=f;e=a+16|0;g=b+48|0;h=v[b+52>>2];a:{if(!(w[(h&1?v[b+56>>2]:(g+v[((h>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8)){b:{if(!w[a+4801|0]){h=e;e=x[b+24>>1]<9?f:0;Au(h,g,0,e,c);ku(b+20|0,a,b,d,e,c);break b}Au(e,g,0,0,c);ku(b+20|0,a,b,d,0,c)}if(!v[b+16>>2]){break a}qh(b+12|0);break a}Au(e,g,1,0,c);ku(b+20|0,a,b,d,0,c)}c=v[a+5936>>2];v[b+44>>2]=c;v[f+220>>2]=b;c:{if(c>>>0>=(v[a+5940>>2]&2147483647)>>>0){_p(a+5932|0,f+220|0);break c}v[v[a+5932>>2]+(c<<2)>>2]=b;v[a+5936>>2]=c+1}xa=f+224|0}function ML(a){a=a|0;var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;b=v[a+88>>2];d=v[b+84>>2];if(d){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}v[b+84>>2]=0;v[b+88>>2]=0;v[b+4208>>2]=0;a:{if(y[a+104>>2]>=1025){v[c+8>>2]=1073741823;v[c+12>>2]=1073741823;b=a+100|0;jL(b,c+8|0);cL(b,v[a+104>>2]);if(v[a+108>>2]&2147482624){break a}cL(b,1024);break a}v[a+104>>2]=0}b:{if(y[a+116>>2]>=1025){v[c+8>>2]=1073741823;v[c+12>>2]=1073741823;b=a+112|0;jL(b,c+8|0);cL(b,v[a+116>>2]);if(v[a+120>>2]&2147482624){break b}cL(b,1024);break b}v[a+116>>2]=0}xa=c+16|0}function s9(a,b,c,d){var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0);f=z[c+12>>2];k=z[d+12>>2];h=z[c+8>>2];l=z[d+8>>2];i=z[c>>2];m=z[d>>2];j=z[c+4>>2];n=z[d+4>>2];e=C(C(f*k)+C(C(h*l)+C(C(i*m)+C(j*n))));c=e=C(10000000168623835e-32)){g=C(K(g));e=C9(g,e);o=R9(C(e*b));p=f;f=C(C(1)/g);b=C(f*R9(C(e*C(C(1)-b))));f=C(f*o);e=c?C(-f):f;f=C(C(p*b)+C(k*e));j=C(C(j*b)+C(n*e));i=C(C(i*b)+C(m*e));h=C(C(h*b)+C(l*e))}z[a+12>>2]=f;z[a+8>>2]=h;z[a+4>>2]=j;z[a>>2]=i}function K6(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=v[37696];c=Ba[v[v[b>>2]+20>>2]](b)|0?38053:63804;b=Ba[v[v[b+12>>2]+8>>2]](b+12|0,28,c,16913,103)|0;v[a+4>>2]=b;v[b>>2]=0;b=v[37696];c=v[37696];c=(f=b+12|0,g=2059,h=Ba[v[v[c>>2]+20>>2]](c)|0?24921:63804,i=18281,j=87,e=v[v[b+12>>2]+8>>2],Ba[e](f|0,g|0,h|0,i|0,j|0)|0);if(!c){v[a>>2]=0;return}b=c+11&-8;v[b-4>>2]=b-c;v[a>>2]=b;if(b){c=0;while(1){b=v[a>>2]+(c<<4)|0;t[b+8|0]=1;v[b>>2]=0;v[b+4>>2]=0;d=v[a+4>>2];v[b>>2]=v[d>>2];v[d>>2]=b;c=c+1|0;if((c|0)!=128){continue}break}}}function fz(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=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?33561:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<4)+e|0;c=e;while(1){f=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=f;f=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=f;d=d+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function VK(a,b){var c=0,d=0,e=0,f=0;c=v[a+384>>2];f=w[c+5|0];c=w[c+4|0];d=a+316|0;e=a+4|0;WK(a,b,d,e,a+96|0,1,1);WK(a,b,d,e,a+224|0,f,c);c=v[a+264>>2];f=v[a+164>>2];d=v[a+136>>2];a:{if(!d){break a}e=v[a+292>>2];if(c){XK(b,v[a+316>>2],d,c,v[a+152>>2],v[a+280>>2],v[a+156>>2],v[a+284>>2],v[a+132>>2],v[a+260>>2])}if(!e){break a}XK(b,v[a+316>>2],d,e,v[a+152>>2],v[a+304>>2],v[a+156>>2],v[a+308>>2],v[a+132>>2],v[a+288>>2])}if(!(!f|!c)){XK(b,v[a+316>>2],f,c,v[a+176>>2],v[a+280>>2],v[a+180>>2],v[a+284>>2],v[a+160>>2],v[a+260>>2])}}function LB(a,b){var c=0,d=0,e=0;d=v[a+48>>2];if(d){c=v[d+8>>2];a:{if((c|0)<0|!(c&2147483647)){break a}c=v[d>>2];if(!c){break a}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,c)}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+48>>2]=0;d=v[a+36>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+36>>2]=0;d=v[a+8>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d-4|0)}v[a+8>>2]=0;qY(a+12|0);d=v[a>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+40>>2]=0;v[a>>2]=0;v[a+4>>2]=0;if(b){J9(v[a+52>>2],0,v[a+56>>2]<<2)}v[a+60>>2]=0}function Mp(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;if(v[(w[a+5580|0]&4?5564:2392)+a>>2]&512){Ba[v[v[a>>2]+400>>2]](a,11709,195)}if(v[a+4656>>2]){b9(v[37696],8,11709,203,64569,0);b=v[a+4656>>2];if((b|0)==1){Ba[v[v[a>>2]+216>>2]](a,1)|0;b=v[a+4656>>2]}if((b|0)==2){Ba[v[v[a>>2]+204>>2]](a,0)}Ba[v[v[a>>2]+220>>2]](a,1,0)|0}b=v[37393];d=v[b+8>>2];a:{if(!d){break a}e=v[b+4>>2];while(1){f=(c<<2)+e|0;if(v[f>>2]!=(a|0)){c=c+1|0;if((d|0)!=(c|0)){continue}break a}break}c=b;b=d-1|0;v[c+8>>2]=b;v[f>>2]=v[(b<<2)+e>>2];Ba[v[v[a>>2]+4>>2]](a)}}function Yp(a,b,c,d){var e=0,f=0,g=0,h=0;f=xa-224|0;xa=f;e=a+16|0;g=b+48|0;h=v[b+52>>2];a:{if(!(w[(h&1?v[b+56>>2]:(g+v[((h>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]&8)){b:{if(!w[a+4801|0]){h=e;e=x[b+24>>1]<9?f:0;yu(h,g,0,e);ku(b+20|0,a,b,d,e,c);break b}yu(e,g,0,0);ku(b+20|0,a,b,d,0,c)}if(!v[b+16>>2]){break a}qh(b+12|0);break a}yu(e,g,1,0);ku(b+20|0,a,b,d,0,c)}c=v[a+5936>>2];v[b+44>>2]=c;v[f+220>>2]=b;c:{if(c>>>0>=(v[a+5940>>2]&2147483647)>>>0){_p(a+5932|0,f+220|0);break c}v[v[a+5932>>2]+(c<<2)>>2]=b;v[a+5936>>2]=c+1}xa=f+224|0}function uo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0);cj(a,0,b,c);c=1;c=z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?c:z[b+8>>2]!=C(0);e=z[a+308>>2];b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}f=z[b+5148>>2];b=e>2]!=0?1:b){c=a+48|0;e=b?f:e;a:{b:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:b=v[c>>2];if(w[b+4785|0]){break a}default:z[a+308>>2]=e;v[a+312>>2]=0;VG(a- -64|0,e,1);return;case 1:break b}}b=v[c>>2]}z[a+308>>2]=e;v[a+312>>2]=0;Yu(b,c);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}}function so(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0);cj(a,b,0,c);c=1;c=z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?c:z[b+8>>2]!=C(0);e=z[a+308>>2];b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}f=z[b+5148>>2];b=e>2]!=0?1:b){c=a+48|0;e=b?f:e;a:{b:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:b=v[c>>2];if(w[b+4785|0]){break a}default:z[a+308>>2]=e;v[a+312>>2]=0;VG(a- -64|0,e,1);return;case 1:break b}}b=v[c>>2]}z[a+308>>2]=e;v[a+312>>2]=0;Yu(b,c);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}}function SK(a,b,c){var d=0,e=0,f=0,g=0;d=v[b>>2];b=d>>>3|0;a:{if(d&4){v[v[a+64>>2]+(b<<2)>>2]=-1;v[a+88>>2]=v[a+88>>2]+1;d=v[a+40>>2];f=d+1|0;b=v[a+44>>2];b:{if(f>>>0>b>>>0){b=b<<1;b=b>>>0>>0?f:b;b=b>>>0>1024?b:1024;v[a+44>>2]=b;g=v[a+36>>2];b=b<<2;if(b){e=v[37696]+12|0;b=Ba[v[v[e>>2]+8>>2]](e,b,24422,13489,890)|0}else{b=0}if(d){I9(b,g,d<<2)}if(!g){break b}e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,g);break b}b=v[a+36>>2]}v[a+40>>2]=f;v[a+36>>2]=b;a=(d<<2)+b|0;break a}a=v[a+36>>2]+(b<<2)|0;c=v[a>>2]}v[a>>2]=c|-2147483648}function HJ(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;h=v[a+48>>2];f=h+15&-16;v[d>>2]=f;e=v[a+52>>2];g=B(b,40)+((((c&15)!=0)<<4)+c&-16)|0;a:{b:{if(e>>>0>=g+f>>>0){b=v[a+44>>2];c=f;break b}b=0;if(w[a- -64|0]){break a}c=e;while(1){c=c<<1;v[a+52>>2]=c;if(v[d>>2]+g>>>0>c>>>0){continue}break}if(c){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,c,24422,17904,169)|0}else{b=0}i=I9(b,v[a+44>>2],e);e=v[a+44>>2];if(e){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+44>>2]=i;c=v[d>>2]}v[a+60>>2]=c;v[a+48>>2]=v[a+48>>2]+((g-h|0)+f|0);b=b+c|0}return b}function Cw(a,b){if((v[a+40>>2]&2147483647)>>>0>>0){Dw(a+32|0,b)}v[a+36>>2]=b;if((v[a+52>>2]&2147483647)>>>0>>0){Dw(a+44|0,b)}v[a+48>>2]=b;if((v[a- -64>>2]&2147483647)>>>0>>0){Dw(a+56|0,b)}v[a+60>>2]=b;if((v[a+76>>2]&2147483647)>>>0>>0){Dw(a+68|0,b)}v[a+72>>2]=b;if((v[a+88>>2]&2147483647)>>>0>>0){Dw(a+80|0,b)}v[a+84>>2]=b;if((v[a+100>>2]&2147483647)>>>0>>0){Dw(a+92|0,b)}v[a+96>>2]=b;b=b<<2;J9(v[a+32>>2],0,b);J9(v[a+44>>2],0,b);J9(v[a+56>>2],0,b);J9(v[a+92>>2],0,b);J9(v[a+68>>2],0,b);J9(v[a+80>>2],0,b)}function mY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);b=v[b+4>>2];i=z[b+72>>2];e=z[c+8>>2];j=z[b- -64>>2];f=z[c>>2];k=z[b+68>>2];g=z[c+4>>2];h=C(C(i*e)+C(C(j*f)+C(k*g)));l=z[b+88>>2];m=z[b+80>>2];n=z[b+84>>2];o=C(C(l*e)+C(C(m*f)+C(n*g)));c=h>o;p=h;h=z[b+56>>2];q=C(h*e);e=z[b+48>>2];r=C(e*f);f=z[b+52>>2];g=C(q+C(r+C(f*g)));b=!(po);v[d>>2]=b?c?1:2:0;v[a+12>>2]=0;z[a+8>>2]=b?c?i:l:h;z[a+4>>2]=b?c?k:n:f;z[a>>2]=b?c?j:m:e}function DP(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=v[v[a+1140>>2]+4>>2];d=v[a+1152>>2];i=v[d+40>>2];if(i){k=v[d+36>>2];while(1){g=(h<<2)+k|0;e=v[g>>2];f=v[e+36>>2];a:{if((f|0)==-1){break a}f=f<<2;if(v[f+v[d+12>>2]>>2]!=-1){break a}e=v[e+4>>2];e=v[(w[v[e+44>>2]+9|0]-1>>>0<2?e:0)+44>>2];g=Ba[v[v[c>>2]>>2]](c,v[((w[e+9|0]<<2)+149664|0)+40>>2]+e|0,v[37419]+v[v[g>>2]+28>>2]|0)|0;v[f+v[d+12>>2]>>2]=g}h=h+1|0;if((i|0)!=(h|0)){continue}break}}v[d+40>>2]=0;Ba[v[v[b>>2]>>2]](b,v[d+12>>2],v[d+24>>2],j,v[d+4>>2],a+2516|0)}function kz(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}f=v[a>>2];f=Ba[v[v[f>>2]+8>>2]](f,d,16608,553)|0}d=v[a+4>>2];c=v[a+8>>2];if((c|0)>0){g=(c<<5)+f|0;c=f;while(1){e=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=e;e=v[d+28>>2];v[c+24>>2]=v[d+24>>2];v[c+28>>2]=e;e=v[d+20>>2];v[c+16>>2]=v[d+16>>2];v[c+20>>2]=e;e=v[d+12>>2];v[c+8>>2]=v[d+8>>2];v[c+12>>2]=e;d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}d=v[a+4>>2]}if(!(!d|v[a+12>>2]<0)){c=v[a>>2];Ba[v[v[c>>2]+12>>2]](c,d)}v[a+12>>2]=b;v[a+4>>2]=f}function aI(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(w[a+36|0]){break a}g=v[b+180>>2];if(v[g+(v[a+40>>2]<<2)>>2]==-1){break a}f=v[a+44>>2];if(v[(f<<2)+g>>2]==-1){break a}d=v[a+48>>2];if(!v[d+8>>2]){break a}if(v[d+20>>2]==-1){e=0;d=f>>>5|0;if(d>>>0>=(v[b+164>>2]&2147483647)>>>0|!(v[v[b+160>>2]+(d<<2)>>2]>>>f&1)){break a}}e=b+196|0;f=b+208|0;d=v[b+400>>2];h=v[v[b+192>>2]+4>>2];i=v[v[b+276>>2]+4>>2];b:{if(c){bI(a,d,i,h,g,f,e,c+4|0,c+28|0);break b}bI(a,d,i,h,g,f,e,b+304|0,b+328|0)}e=0}return e|0}function R3(a,b){v[a+8>>2]=b;v[a+4>>2]=0;v[a+12>>2]=a+16;v[a+60>>2]=0;v[a+64>>2]=0;v[a+52>>2]=-25165825;v[a+56>>2]=-25165825;v[a+44>>2]=2122317823;v[a+48>>2]=-25165825;v[a+36>>2]=2122317823;v[a+40>>2]=2122317823;v[a+28>>2]=0;v[a+32>>2]=0;t[a+24|0]=0;v[a>>2]=144836;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+16>>2]=140756;b=a+104|0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;z$(a+128|0);v[a+20>>2]=1;return a}function qX(a,b,c,d,e,f,g){var h=0;h=xa-16|0;xa=h;t[h+7|0]=73;t[h+6|0]=67;t[h+5|0]=69;t[h+4|0]=f^1;Ba[v[v[g>>2]>>2]](g,h+7|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+6|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+5|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+4|0,1)|0;t[h+11|0]=a;t[h+10|0]=b;t[h+9|0]=c;t[h+8|0]=d;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;v[h+12>>2]=e;if(f){v[h+12>>2]=e<<8&16711680|e<<24|(e>>>8&65280|e>>>24)}Ba[v[v[g>>2]>>2]](g,h+12|0,4)|0;xa=h+16|0;return 1}function pX(a,b,c,d,e,f,g){var h=0;h=xa-16|0;xa=h;t[h+7|0]=78;t[h+6|0]=88;t[h+5|0]=83;t[h+4|0]=f^1;Ba[v[v[g>>2]>>2]](g,h+7|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+6|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+5|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+4|0,1)|0;t[h+11|0]=a;t[h+10|0]=b;t[h+9|0]=c;t[h+8|0]=d;Ba[v[v[g>>2]>>2]](g,h+11|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+10|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+9|0,1)|0;Ba[v[v[g>>2]>>2]](g,h+8|0,1)|0;v[h+12>>2]=e;if(f){v[h+12>>2]=e<<8&16711680|e<<24|(e>>>8&65280|e>>>24)}Ba[v[v[g>>2]>>2]](g,h+12|0,4)|0;xa=h+16|0;return 1}function nW(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=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);if(c){a=v[a+48>>2];while(1){f=B(w[b+g|0],12)+d|0;h=z[f+8>>2];i=z[f>>2];j=z[f+4>>2];k=z[a+80>>2];l=z[a+48>>2];m=z[a+64>>2];n=z[a+84>>2];o=z[a+52>>2];p=z[a+68>>2];q=z[a+88>>2];r=z[a+56>>2];s=z[a+72>>2];f=(g<<4)+e|0;v[f+12>>2]=0;z[f+8>>2]=C(q*h)+C(C(r*i)+C(j*s));z[f+4>>2]=C(n*h)+C(C(o*i)+C(j*p));z[f>>2]=C(k*h)+C(C(l*i)+C(j*m));g=g+1|0;if((g|0)!=(c|0)){continue}break}}}function CT(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=C(0);g=xa-48|0;xa=g;h=v[c+36>>2];if(h){i=v[((v[a+96>>2]<<2)+a|0)+100>>2];j=v[a+8>>2];k=v[c+40>>2];v[g+32>>2]=2;l=z[b+44>>2];z[g+36>>2]=z[b+40>>2];z[g+40>>2]=l*C(.5);z[g+16>>2]=A[d>>3]-A[c+12>>3];z[g+20>>2]=A[d+8>>3]-A[c+20>>3];z[g+24>>2]=A[d+16>>3]-A[c+28>>3];z[g>>2]=z[a+244>>2];z[g+4>>2]=z[a+248>>2];z[g+8>>2]=z[a+252>>2];z[g+12>>2]=z[a+256>>2];a=wT(a,c,f,e,g+32|0,g,h,B(k,36)+j|0,h>>>0>i>>>0?i:0)}else{a=0}xa=g+48|0;return a|0}function Sv(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=v[37696];e=d+12|0;d=(i=e,j=c,k=Ba[v[v[d>>2]+20>>2]](d)|0?29841:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}e=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<4)+d|0;f=e;c=d;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];z[c+12>>2]=z[f+12>>2];f=f+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+8>>2]=b;v[a>>2]=d}function S4(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=v[37696];e=d+12|0;d=(i=e,j=c,k=Ba[v[v[d>>2]+20>>2]](d)|0?42681:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}e=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<4)+d|0;f=e;c=d;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];z[c+12>>2]=z[f+12>>2];f=f+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+8>>2]=b;v[a>>2]=d}function GT(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=xa-16|0;xa=h;Ba[v[v[c>>2]+156>>2]](h+8|0,c);a:{if(w[h+8|0]&4){break a}g=v[a+4>>2];b:{if(!v[g+36>>2]){break b}f=(c<<15^-1)+c|0;f=B(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;f=v[v[g+12>>2]+((v[g+20>>2]-1&(f>>>16^f))<<2)>>2];if((f|0)==-1){break b}j=v[g+8>>2];g=v[g+4>>2];while(1){f=f<<2;if(v[f+g>>2]==(c|0)){break a}f=v[f+j>>2];if((f|0)!=-1){continue}break}}a=v[a+8>>2];if(!a){i=2;break a}i=Ba[v[v[a>>2]>>2]](a,b,c,d,e)|0}xa=h+16|0;return i|0}function LS(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0);c=xa-32|0;xa=c;f=C(Ba[v[v[a>>2]+116>>2]](a));Ba[v[v[a>>2]+120>>2]](a,b)|0;d=Ba[v[v[a>>2]+16>>2]](a)|0;e=v[d+20>>2];v[c+24>>2]=v[d+16>>2];v[c+28>>2]=e;e=v[d+12>>2];v[c+16>>2]=v[d+8>>2];v[c+20>>2]=e;e=v[d+4>>2];v[c+8>>2]=v[d>>2];v[c+12>>2]=e;g=z[a+36>>2];h=z[a+44>>2];b=C(b-f);A[c+16>>3]=A[c+16>>3]+ +C(C(b*z[a+40>>2])*C(.5));A[c+24>>3]=A[c+24>>3]+ +C(C(b*h)*C(.5));A[c+8>>3]=A[c+8>>3]+ +C(C(b*g)*C(.5));Ba[v[v[a>>2]+12>>2]](a,c+8|0)|0;xa=c+32|0}function iL(a){a=a|0;var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;b=v[a+4>>2];d=v[b+332>>2];if(d){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}v[b+332>>2]=0;v[b+336>>2]=0;a:{if(y[a+12>>2]>=1025){v[c+8>>2]=1073741823;v[c+12>>2]=1073741823;b=a+8|0;jL(b,c+8|0);cL(b,v[a+12>>2]);if(v[a+16>>2]&2147482624){break a}cL(b,1024);break a}v[a+12>>2]=0}b:{if(y[a+24>>2]>=1025){v[c+8>>2]=1073741823;v[c+12>>2]=1073741823;b=a+20|0;jL(b,c+8|0);cL(b,v[a+24>>2]);if(v[a+28>>2]&2147482624){break b}cL(b,1024);break b}v[a+24>>2]=0}xa=c+16|0}function fw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=xa-32|0;xa=f;Ba[v[v[a>>2]+156>>2]](f,a,b);b=v[f+4>>2];v[d>>2]=v[f>>2];v[d+4>>2]=b;b=v[f+12>>2];v[d+8>>2]=v[f+8>>2];v[d+12>>2]=b;b=v[f+20>>2];v[d+16>>2]=v[f+16>>2];v[d+20>>2]=b;b=v[f+28>>2];v[d+24>>2]=v[f+24>>2];v[d+28>>2]=b;Ba[v[v[a>>2]+156>>2]](f,a,c);a=v[f+4>>2];v[e>>2]=v[f>>2];v[e+4>>2]=a;a=v[f+12>>2];v[e+8>>2]=v[f+8>>2];v[e+12>>2]=a;a=v[f+20>>2];v[e+16>>2]=v[f+16>>2];v[e+20>>2]=a;a=v[f+28>>2];v[e+24>>2]=v[f+24>>2];v[e+28>>2]=a;xa=f+32|0}function G8(a,b,c,d){var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0);e=xa-48|0;xa=e;Ba[v[v[a>>2]+76>>2]](e,a);g=z[e+8>>2];f=z[c+8>>2];h=C(f+f);i=z[e>>2];f=z[c>>2];j=C(f+f);f=z[c+4>>2];k=C(f+f);l=z[e+4>>2];m=C(C(g*h)+C(C(i*j)+C(k*l)));f=z[e+12>>2];n=C(C(f*f)+C(-.5));z[e+40>>2]=C(C(g*m)+C(C(h*n)+C(f*C(C(i*k)-C(j*l)))))+z[e+24>>2];z[e+36>>2]=z[e+20>>2]+C(C(l*m)+C(C(k*n)+C(f*C(C(g*j)-C(h*i)))));z[e+32>>2]=z[e+16>>2]+C(C(i*m)+C(C(j*n)+C(f*C(C(l*h)-C(k*g)))));F8(a,b,e+32|0,d);xa=e+48|0}function E4(a,b){var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;v[a>>2]=b;c=b<<6;if(c){b=v[37696]+12|0;f=Ba[v[v[b>>2]+8>>2]](b,c,24422,13134,83)|0;b=v[a>>2]}v[d+12>>2]=f;if(b){while(1){c=v[d+12>>2]+(e<<6)|0;t[c+60|0]=0;v[c+56>>2]=e;v[c+48>>2]=0;v[c+52>>2]=0;v[c+40>>2]=0;v[c+44>>2]=-8388609;v[c+24>>2]=0;v[c+8>>2]=0;u[c+4>>1]=0;v[c>>2]=0;e=e+1|0;if((e|0)!=(b|0)){continue}break}}b=v[a+16>>2];a:{if(b>>>0>=(v[a+20>>2]&2147483647)>>>0){y4(a+12|0,d+12|0);break a}v[v[a+12>>2]+(b<<2)>>2]=v[d+12>>2];v[a+16>>2]=b+1}xa=d+16|0}function vI(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(b,12);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?35453:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=B(c,12)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function uL(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(b,12);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?29627:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=B(c,12)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function pY(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(b,12);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?46393:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=B(c,12)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function iP(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(b,12);if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?48101:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=B(c,12)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;v[c+8>>2]=v[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function d3(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;d9();b=v[37696];a=b+12|0;a=(e=a,f=52,g=Ba[v[v[b>>2]+20>>2]](b)|0?41005:63804,h=10899,i=543,d=v[v[a>>2]+8>>2],Ba[d](e|0,f|0,g|0,h|0,i|0)|0);v[a>>2]=144696;b=v[c+4>>2];v[a+4>>2]=v[c>>2];v[a+8>>2]=b;b=v[c+12>>2];v[a+12>>2]=v[c+8>>2];v[a+16>>2]=b;b=v[c+20>>2];v[a+20>>2]=v[c+16>>2];v[a+24>>2]=b;v[a+28>>2]=v[c+24>>2];v[a+48>>2]=v[c+44>>2];b=v[c+40>>2];v[a+40>>2]=v[c+36>>2];v[a+44>>2]=b;b=v[c+32>>2];v[a+32>>2]=v[c+28>>2];v[a+36>>2]=b;return a|0}function Q1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);d=v[b+8>>2];h=z[d+52>>2];i=z[d+20>>2];j=z[d+36>>2];k=z[d+56>>2];b=v[v[b+4>>2]+152>>2]+B(c,12)|0;e=z[b>>2];l=z[d+24>>2];f=z[b+4>>2];m=z[d+40>>2];g=z[b+8>>2];n=z[d+48>>2];o=z[d+32>>2];p=z[d>>2];q=z[d+16>>2];r=z[d+4>>2];s=z[d+8>>2];v[a+12>>2]=0;z[a+8>>2]=k+C(C(m*g)+C(C(s*e)+C(f*l)));z[a+4>>2]=h+C(C(j*g)+C(C(r*e)+C(f*i)));z[a>>2]=n+C(C(o*g)+C(C(p*e)+C(f*q)))}function mV(a){a=a|0;var b=0,c=0;v[a>>2]=140644;b=v[a+176>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+168>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+128>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+88>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+48>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+8>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Wp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{b:{c:{d=x[b+4>>1];switch(d-5|0){case 0:break b;case 1:break c;default:break a}}if(!v[b+40>>2]){break a}b9(v[37696],8,11709,344,71884,0);return}if(!v[b+40>>2]){break a}b9(v[37696],8,11709,352,71884,0);return}d:{e:{switch(v[(v[((d<<2)+86240|0)+72>>2]+b|0)+4>>2]>>>30|0){case 3:d=v[v[((x[b+4>>1]<<2)+86240|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}}Xp(a,b,c);return}b9(v[37696],8,11709,360,75541,0)}function WZ(a,b,c,d,e,f,g,h,i){var j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);if(e){v[a>>2]=f;v[b>>2]=g;return}v[b>>2]=d;v[a>>2]=c;if(h){e=0;while(1){t[v[b>>2]+e|0]=e;m=z[i+24>>2];n=z[i>>2];o=z[i+12>>2];p=z[i+28>>2];q=z[i+4>>2];r=z[i+16>>2];c=v[a>>2]+B(e,12)|0;d=B(w[e+g|0],12)+f|0;j=z[d>>2];k=z[d+4>>2];l=z[d+8>>2];z[c+8>>2]=C(C(j*z[i+8>>2])+C(k*z[i+20>>2]))+C(l*z[i+32>>2]);z[c+4>>2]=C(C(j*q)+C(k*r))+C(l*p);z[c>>2]=C(C(j*n)+C(k*o))+C(l*m);e=e+1|0;if((h|0)!=(e|0)){continue}break}}}function Qf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;if(c){while(1){f=B(g,24)+b|0;d=v[f+16>>2];a:{if(d&4){h=v[a+8>>2];b:{if(t[149520]&1){d=v[37379];break b}d=aa(3,111496)|0;t[149520]=1;v[37379]=d}v[e>>2]=v[f>>2];v[e+8>>2]=v[f+8>>2];ba(d|0,h|0,14696,e|0);break a}if(!(d&16)){break a}h=v[a+8>>2];c:{if(t[149520]&1){d=v[37379];break c}d=aa(3,111496)|0;t[149520]=1;v[37379]=d}v[e>>2]=v[f>>2];v[e+8>>2]=v[f+8>>2];ba(d|0,h|0,23241,e|0)}g=g+1|0;if((g|0)!=(c|0)){continue}break}}xa=e+16|0}function fP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=xa-32|0;xa=d;a:{if(!v[a+2344>>2]){break a}f=1;f=b?f:v[a+1196>>2]==v[v[a+2368>>2]+36>>2]?1:17;b=v[a+2168>>2];g=v[b+8>>2];if(!g){break a}h=v[b+4>>2];b=0;while(1){i=b+1|0;c=v[(b<<2)+h>>2];b=v[c+16>>2];if(!(w[b+10|0]&2)){u[d+22>>1]=0;e=d+8|0;lP(a,e,c,b,f);c=v[a+2344>>2];Ba[v[v[c>>2]+12>>2]](c,e,v[d+24>>2],v[d+28>>2]);u[b+4>>1]=x[b+6>>1];c=b;e=x[b+10>>1]&31;b=x[b+8>>1];u[c+10>>1]=e|(b>>>4|0)+((b&15)!=0)<<5}b=i;if((g|0)!=(b|0)){continue}break}}xa=d+32|0}function $Y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);d=v[b+8>>2];h=z[d+52>>2];i=z[d+20>>2];j=z[d+36>>2];k=z[d+56>>2];b=v[b+4>>2]+(1-c<<4)|0;e=z[b+48>>2];l=z[d+24>>2];f=z[b+52>>2];m=z[d+40>>2];g=z[b+56>>2];n=z[d+48>>2];o=z[d+32>>2];p=z[d>>2];q=z[d+16>>2];r=z[d+4>>2];s=z[d+8>>2];v[a+12>>2]=0;z[a+8>>2]=k+C(C(m*g)+C(C(s*e)+C(f*l)));z[a+4>>2]=h+C(C(j*g)+C(C(r*e)+C(f*i)));z[a>>2]=n+C(C(o*g)+C(C(p*e)+C(f*q)))}function fQ(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=v[a+8>>2];f=c&2147483647?c<<1:1;a:{if(!f){break a}c=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,(f<<2)+67|0,24422,16608,553)|0;if(!c){break a}d=c+67&-64;v[d-4>>2]=d-c}e=v[a+4>>2];h=(e<<2)+d|0;if((e|0)>0){g=v[a>>2];c=d;while(1){v[c>>2]=v[g>>2];g=g+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}v[h>>2]=v[b>>2];b:{if(v[a+8>>2]<0){break b}c=v[a>>2];if(!c){break b}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,c-v[c-4>>2]|0);e=v[a+4>>2]}v[a+8>>2]=f;v[a>>2]=d;v[a+4>>2]=e+1}function cZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0),s=C(0);d=v[b+8>>2];h=z[d+52>>2];i=z[d+20>>2];j=z[d+36>>2];k=z[d+56>>2];b=v[b+4>>2]+(c<<4)|0;e=z[b+48>>2];l=z[d+24>>2];f=z[b+52>>2];m=z[d+40>>2];g=z[b+56>>2];n=z[d+48>>2];o=z[d+32>>2];p=z[d>>2];q=z[d+16>>2];r=z[d+4>>2];s=z[d+8>>2];v[a+12>>2]=0;z[a+8>>2]=k+C(C(m*g)+C(C(s*e)+C(f*l)));z[a+4>>2]=h+C(C(j*g)+C(C(r*e)+C(f*i)));z[a>>2]=n+C(C(o*g)+C(C(p*e)+C(f*q)))}function Vg(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(v[a+36>>2]){i=a+8|0;while(1){a:{b:{e=g<<2;f=v[e+v[a+40>>2]>>2];if((Ba[v[v[f>>2]+24>>2]](f)|0)!=2){break b}f=v[a+40>>2];h=f+e|0;e=v[h>>2];if(v[e+320>>2]!=(b|0)){break b}d=v[a+36>>2]-1|0;v[a+36>>2]=d;v[h>>2]=v[f+(d<<2)>>2];d=(x[e+4>>1]<<2)+86240|0;f=v[d+72>>2];oh(e+v[d>>2]|0,0);su(i,e+f|0,c);d=1;break a}g=g+1|0}if(y[a+36>>2]>g>>>0){continue}break}}j=Ba[v[v[b>>2]+100>>2]](b)|0,k=0,v[j+96>>2]=k;if(!d){b9(v[37696],2,11066,310,20969,0)}return d}function L9(a){a=a|0;var b=0,c=0,d=0;if(!a){if(v[37372]){b=L9(v[37372])}if(v[37701]){b=L9(v[37701])|b}a=v[37877];if(a){while(1){if(v[a+20>>2]!=v[a+28>>2]){b=L9(a)|b}a=v[a+56>>2];if(a){continue}break}}return b|0}d=v[a+76>>2]>=0;a:{b:{if(v[a+20>>2]==v[a+28>>2]){break b}Ba[v[a+36>>2]](a,0,0)|0;if(v[a+20>>2]){break b}b=-1;break a}b=v[a+8>>2];c=v[a+4>>2];if((b|0)!=(c|0)){b=c-b|0;Ba[v[a+40>>2]](a,b,b>>31,1)|0}b=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;if(!d){break a}}return b|0}function vu(a){var b=0,c=0,d=0,e=0,f=0,g=0;c=xa-16|0;xa=c;b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?37931:63804;f=a,g=Ba[v[v[b+12>>2]+8>>2]](b+12|0,28,d,16755,113)|0,v[f>>2]=g;b=xa-16|0;xa=b;xa=b+16|0;v[a+20>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+24>>2]=16384;b=v[37696];d=Ba[v[v[b+12>>2]+8>>2]](b+12|0,16384,24422,18513,57)|0;e=v[a+12>>2];b=v[a+8>>2];v[c+12>>2]=d;a:{if(b>>>0>=(e&2147483647)>>>0){Vs(a+4|0,c+12|0);break a}v[v[a+4>>2]+(b<<2)>>2]=d;v[a+8>>2]=b+1}xa=c+16|0;return a}function I3(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(b,12);if(!c){break a}d=v[37696];e=d+12|0;d=(i=e,j=c,k=Ba[v[v[d>>2]+20>>2]](d)|0?54445:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}e=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=B(c,12)+d|0;f=e;c=d;while(1){z[c>>2]=z[f>>2];z[c+4>>2]=z[f+4>>2];z[c+8>>2]=z[f+8>>2];f=f+12|0;c=c+12|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,e)}v[a+8>>2]=b;v[a>>2]=d}function CN(a,b,c,d,e){var f=0,g=0,h=0,i=0;h=xa-16|0;xa=h;f=v[c+4624>>2];t[b+12|0]=f;i=1;g=w[b+14|0]&-4|(f?2:1);a:{if(!f){u[b+12>>1]=0;t[b+14|0]=g;break a}v[c+7148>>2]=v[c+7148>>2]+1;t[b+14|0]=g;g=f<<2;Py(c+528|0,f,c,b+12|0,b,b+4|0,h+14|0,b+8|0,e?g:(w[c+7138|0]|a&1?i:(a&256)>>>8|0)?g:0,v[c+7188>>2],(a&128)>>>7|0,0,d,b+13|0,0,0,0,w[c+7139|0],v[c+7172>>2],v[c+7176>>2],v[c+7180>>2],e);if(w[b+12|0]|!v[c+4624>>2]){break a}u[b+12>>1]=0;t[b+14|0]=w[b+14|0]&252|1;v[c+7148>>2]=v[c+7148>>2]-1}xa=h+16|0}function qQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=v[a+32>>2];if(b){while(1){c=v[a+28>>2];if(!(d+16>>>0>=b>>>0|d+4>>>0>=b>>>0)){c=v[a+28>>2]}b=v[v[(d<<2)+c>>2]>>2];c=x[b+148>>1];if(c&4){u[b+148>>1]=c&63999;b=v[b+44>>2];c=w[v[b+176>>2]+31|0]==1?v[b+176>>2]:0;e=v[c>>2];f=v[c+4>>2];g=v[c+8>>2];h=v[c+12>>2];i=v[c+20>>2];j=v[c+16>>2];z[b+40>>2]=z[c+24>>2];v[b+32>>2]=j;v[b+36>>2]=i;v[b+24>>2]=g;v[b+28>>2]=h;v[b+16>>2]=e;v[b+20>>2]=f}b=v[a+32>>2];d=d+1|0;if(b>>>0>d>>>0){continue}break}}}function XO(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=xa-16|0;xa=h;v[h+12>>2]=b;i=w[b+20|0];d=B(i,12)+a|0;f=v[d+56>>2];v[b+8>>2]=f;g=d+52|0;e=f;j=v[d+60>>2]&2147483647;if(!j){YO(g,64);j=v[d+60>>2]&2147483647;e=v[d+56>>2]}a:{if(e>>>0>=j>>>0){ZO(g,h+12|0);break a}v[v[g>>2]+(e<<2)>>2]=b;v[d+56>>2]=e+1}if(c){a=(i<<2)+a|0;b=v[a+88>>2];if(f>>>0>b>>>0){e=v[g>>2];d=e+(f<<2)|0;c=v[d>>2];i=d;d=e;e=b<<2;d=v[d+e>>2];v[i>>2]=d;v[e+v[g>>2]>>2]=c;v[c+8>>2]=b;v[d+8>>2]=f;b=v[a+88>>2]}v[a+88>>2]=b+1}xa=h+16|0}function j$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=c&1;e=v[b+60>>2];c=c>>>1|0;a:{if(t[(e+(c<<2)|0)+2|0]<0){if(!d){d=u[(c<<2)+e>>1];b=(c+v[b+44>>2]<<2)+e|0;f=u[b+4>>1];b=u[b>>1];c=b;break a}d=c+1|0;b=u[(d+v[b+44>>2]<<2)+e>>1];c=u[(c<<2)+e>>1];d=u[(d<<2)+e>>1];f=d;break a}if(d){f=c+1|0;d=u[(f<<2)+e>>1];b=v[b+44>>2];c=u[(b+c<<2)+e>>1];b=u[(b+f<<2)+e>>1];f=b;break a}d=(c<<2)+e|0;f=u[d+4>>1];b=u[(c+v[b+44>>2]<<2)+e>>1];d=u[d>>1];c=d}v[a+4>>2]=-1082130432;z[a+8>>2]=-C(c-f|0);z[a>>2]=-C(d-b|0)}function gt(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=C(k);var l=0,m=0;l=xa-32|0;xa=l;m=x[g>>1];if((m&768)==768){b9(v[37696],4,7394,130,13931,0);m=x[g>>1]&-257;u[g>>1]=m}if((m&528)==528){b9(v[37696],4,7394,136,23643,0);m=x[g>>1]&-17;u[g>>1]=m}if(!(!(k>C(0))|!(m&256))){b9(v[37696],4,7394,144,14060,0);m=x[g>>1];k=C(0)}u[l>>1]=m;z[l+16>>2]=e;v[l+8>>2]=0;z[l+28>>2]=k;v[l+24>>2]=c;v[l+20>>2]=b;v[l+12>>2]=d;a=ht(a,l+8|0,f,l,j,h,i,0);xa=l+32|0;return a|0}function PH(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=v[a>>2];f=Ba[v[v[e>>2]+8>>2]](e,c,16608,553)|0}e=v[a+4>>2];c=v[a+8>>2];if((c|0)>0){g=(c<<5)+f|0;d=e;c=f;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];v[c+12>>2]=v[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];z[c+24>>2]=z[d+24>>2];v[c+28>>2]=v[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+12>>2]<0)){c=v[a>>2];Ba[v[v[c>>2]+12>>2]](c,e)}v[a+12>>2]=b;v[a+4>>2]=f}function wu(a,b,c){var d=0,e=0;d=xa-272|0;xa=d;e=v[b+4>>2];a:{if((e&-1073741824)!=-2147483648){break a}t[d+256|0]=1;v[d+264>>2]=0;v[d+268>>2]=64;a=a+16|0;b=v[((e>>>22&60)+89188|0)+12>>2]+b|0;v[d+260>>2]=d;b:{if(c){OP(a,b,d,1);break b}MP(a,b,d,1)}c=v[d+260>>2];if(v[d+264>>2]){b=0;while(1){bu(v[(b<<2)+c>>2]-16|0);b=b+1|0;if(b>>>0>2]){continue}break}c=v[d+260>>2]}a=v[d+268>>2];if((a|0)<0|!(a&2147483647)|(!c|(c|0)==(d|0))){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,c)}xa=d+272|0}function nK(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=xa-16|0;xa=d;f=v[a- -64>>2];e=v[a+72>>2];h=v[b+20>>2];v[d+12>>2]=-1;v[d+8>>2]=h;h=a+60|0;a:{if((v[a+68>>2]&2147483647)>>>0<=f>>>0){mK(h,d+8|0);break a}i=v[d+12>>2];g=v[a+60>>2]+(f<<3)|0;v[g>>2]=v[d+8>>2];v[g+4>>2]=i;v[a+64>>2]=v[a+64>>2]+1}e=e+B(c,20)|0;c=e+16|0;g=v[e+16>>2];b:{if((g|0)==-1){v[e+16>>2]=f;c=e+12|0;break b}v[(v[h>>2]+(g<<3)|0)+4>>2]=f}v[c>>2]=f;a=v[a+72>>2]+B(v[b+20>>2],20)|0;v[a+4>>2]=v[a+4>>2]+1;xa=d+16|0}function X3(a,b){v[a+8>>2]=b;v[a+4>>2]=0;v[a+12>>2]=a+16;v[a+60>>2]=0;v[a+64>>2]=0;v[a+52>>2]=-25165825;v[a+56>>2]=-25165825;v[a+44>>2]=2122317823;v[a+48>>2]=-25165825;v[a+36>>2]=2122317823;v[a+40>>2]=2122317823;v[a+28>>2]=0;v[a+32>>2]=0;t[a+24|0]=0;v[a>>2]=144868;v[a+68>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+100>>2]=0;v[a+16>>2]=140672;v[a+196>>2]=0;v[a+200>>2]=0;v[a+188>>2]=0;v[a+176>>2]=4;v[a+184>>2]=0;v[a+20>>2]=0;return a}function N1(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);b=v[b+48>>2];e=z[b+72>>2];i=z[b- -64>>2];j=z[b+68>>2];k=z[b+56>>2];l=z[b+52>>2];f=z[b+88>>2];m=z[b+80>>2];n=z[b+84>>2];o=z[b+48>>2];d=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];v[a+12>>2]=0;p=e;q=f;e=C(C(e*d)+C(C(i*g)+C(j*h)));f=C(C(f*d)+C(C(m*g)+C(n*h)));b=e>f;d=C(C(k*d)+C(C(o*g)+C(l*h)));c=!(d>e)|!(d>f);z[a+8>>2]=c?b?p:q:k;z[a+4>>2]=c?b?j:n:l;z[a>>2]=c?b?i:m:o}function BG(a,b){var c=0,d=0;c=xa-16|0;xa=c;z[a+16>>2]=z[b>>2];z[a+20>>2]=z[b+4>>2];z[a+24>>2]=z[b+8>>2];z[a+28>>2]=z[b+12>>2];z[a+32>>2]=z[b+16>>2];z[a+36>>2]=z[b+20>>2];z[a+40>>2]=z[b+24>>2];a=v[a>>2];if(a){b=v[a+100>>2];z[a+64>>2]=z[b>>2];z[a+68>>2]=z[b+4>>2];z[a+72>>2]=z[b+8>>2];z[a+76>>2]=z[b+12>>2];z[a+80>>2]=z[b+16>>2];z[a+84>>2]=z[b+20>>2];z[a+88>>2]=z[b+24>>2];XJ(a);b=v[v[a+40>>2]+1012>>2];d=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(d|0)==2,c+8|0)}xa=c+16|0}function lY(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0);b=v[b+4>>2];e=z[b+72>>2];i=z[b- -64>>2];j=z[b+68>>2];k=z[b+56>>2];l=z[b+52>>2];f=z[b+88>>2];m=z[b+80>>2];n=z[b+84>>2];o=z[b+48>>2];d=z[c+8>>2];g=z[c>>2];h=z[c+4>>2];v[a+12>>2]=0;p=e;q=f;e=C(C(e*d)+C(C(i*g)+C(j*h)));f=C(C(f*d)+C(C(m*g)+C(n*h)));b=e>f;d=C(C(k*d)+C(C(o*g)+C(l*h)));c=!(d>e)|!(d>f);z[a+8>>2]=c?b?p:q:k;z[a+4>>2]=c?b?j:n:l;z[a>>2]=c?b?i:m:o}function RJ(a,b){var c=0,d=0,e=0,f=0,g=0;f=v[a>>2];if(f){a:{b:{e=v[f+40>>2];c=v[e+2384>>2];d=v[c+12>>2]+B(v[c+8>>2],12)|0;a=v[d+4>>2];if(a){v[d+4>>2]=v[a>>2];break b}c:{d:{a=v[d+8>>2];if((a|0)==v[c>>2]){break d}g=v[c+4>>2];v[d+8>>2]=a+1;d=v[d>>2];if(!d){break d}a=d+B(a,g)|0;break c}a=NO(c)}if(a){break b}a=0;break a}a=$R(a,f,b)}c=((v[b+68>>2]<<2)+e|0)+2676|0;v[c>>2]=v[c>>2]+1;c=v[e+1012>>2];Ba[v[v[c>>2]+16>>2]](c,a+12|0,v[a+32>>2]);a=v[v[e+976>>2]+1024>>2];Ba[v[v[a>>2]+44>>2]](a,b+32|0)}}function J_(a,b,c,d,e,f){var g=0,h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);g=xa+-64|0;xa=g;h=z[b>>2];i=z[c>>2];k=z[b+4>>2];j=z[c+4>>2];l=z[b+8>>2];z[g+56>>2]=z[c+8>>2]+l;z[g+52>>2]=j+k;z[g+48>>2]=i+h;i=z[d>>2];j=z[d+4>>2];z[g+40>>2]=l+z[d+8>>2];z[g+36>>2]=k+j;z[g+32>>2]=h+i;E_(g+8|0,a,b,g+48|0,g+32|0,g+28|0,g+24|0);if(e){z[e>>2]=z[g+28>>2]}if(f){z[f>>2]=z[g+24>>2]}xa=g- -64|0;h=C(z[g+16>>2]-z[a+8>>2]);i=C(h*h);h=C(z[g+8>>2]-z[a>>2]);j=C(h*h);h=C(z[g+12>>2]-z[a+4>>2]);return C(i+C(j+C(h*h)))}function iC(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=v[a+16>>2];g=b<<2;f=v[c+g>>2];e=v[a>>2]-1|0;v[a>>2]=e;if((f|0)!=(e|0)){h=v[v[a+20>>2]+(e<<2)>>2];d=v[a+8>>2];c=d+B(f,24)|0;d=d+B(e,24)|0;z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];c=v[a+12>>2];d=c+(f<<3)|0;c=c+(e<<3)|0;i=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=i;v[v[a+20>>2]+(f<<2)>>2]=h;c=v[a+16>>2];v[c+(h<<2)>>2]=f}v[c+g>>2]=v[a+24>>2];v[a+24>>2]=b;return e}function MQ(a){a=a|0;var b=0,c=0;v[a>>2]=126184;b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+80>>2];if((b|0)==(a+60|0)){t[a+76|0]=0;break a}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+56>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+48>>2];if((b|0)==(a+28|0)){t[a+44|0]=0;break b}if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function DB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=v[a>>2];j=g+x[a+4>>1]|0;if(g>>>0>>0){while(1){a=(g<<5)+b|0;rB(a,d,e,c);f=v[a+24>>2];a:{if(!f){break a}h=w[f+1|0];if(!h){break a}a=f+176|0;if((h|0)!=1){f=w[f|0]==2?96:160;k=h&254;i=0;while(1){if(!(w[a+84|0]&4)){v[a+28>>2]=0}a=a+f|0;if(!(w[a+84|0]&4)){v[a+28>>2]=0}a=a+f|0;i=i+2|0;if((k|0)!=(i|0)){continue}break}}if(!(h&1)|w[a+84|0]&4){break a}v[a+28>>2]=0}g=g+1|0;if((j|0)!=(g|0)){continue}break}}}function wh(a){var b=0,c=0,d=0,e=0,f=0;a:{c=v[37389];if(!v[c+636>>2]){break a}b=(a<<15^-1)+a|0;b=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=v[c+612>>2]+((v[c+620>>2]-1&(b>>>16^b))<<2)|0;b=v[d>>2];if((b|0)==-1){break a}e=v[c+608>>2];f=v[c+604>>2];if(v[f+(b<<2)>>2]!=(a|0)){while(1){d=(b<<2)+e|0;b=v[d>>2];if((b|0)==-1){break a}if(v[(b<<2)+f>>2]!=(a|0)){continue}break}}a=(b<<2)+e|0;v[d>>2]=v[a>>2];v[c+636>>2]=v[c+636>>2]-1;v[c+632>>2]=v[c+632>>2]+1;v[a>>2]=v[c+628>>2];v[c+628>>2]=b}}function lK(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=xa-16|0;xa=d;f=v[a- -64>>2];e=v[a+72>>2];b=v[b+20>>2];v[d+12>>2]=-1;v[d+8>>2]=c;h=a+60|0;a:{if((v[a+68>>2]&2147483647)>>>0<=f>>>0){mK(h,d+8|0);break a}i=v[d+12>>2];g=v[a+60>>2]+(f<<3)|0;v[g>>2]=v[d+8>>2];v[g+4>>2]=i;v[a+64>>2]=v[a+64>>2]+1}e=e+B(b,20)|0;b=e+16|0;g=v[e+16>>2];b:{if((g|0)==-1){v[e+16>>2]=f;b=e+12|0;break b}v[(v[h>>2]+(g<<3)|0)+4>>2]=f}v[b>>2]=f;a=v[a+72>>2]+B(c,20)|0;v[a+4>>2]=v[a+4>>2]+1;xa=d+16|0}function RT(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0);c=xa-32|0;xa=c;f=C(Ba[v[v[a>>2]+108>>2]](a));Ba[v[v[a>>2]+120>>2]](a,b)|0;d=Ba[v[v[a>>2]+16>>2]](a)|0;e=v[d+20>>2];v[c+24>>2]=v[d+16>>2];v[c+28>>2]=e;e=v[d+12>>2];v[c+16>>2]=v[d+8>>2];v[c+20>>2]=e;e=v[d+4>>2];v[c+8>>2]=v[d>>2];v[c+12>>2]=e;g=z[a+36>>2];h=z[a+44>>2];b=C(b-f);A[c+16>>3]=A[c+16>>3]+ +C(b*z[a+40>>2]);A[c+24>>3]=A[c+24>>3]+ +C(b*h);A[c+8>>3]=A[c+8>>3]+ +C(b*g);Ba[v[v[a>>2]+12>>2]](a,c+8|0)|0;xa=c+32|0}function rj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(d){d=d-16|0}else{d=0}z[a+296>>2]=z[b>>2];z[a+300>>2]=z[b+4>>2];z[a+304>>2]=z[b+8>>2];e=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:f=v[e>>2];if(w[f+4785|0]){break b}default:DG(a- -64|0,b);break a;case 1:break c}}f=v[e>>2]}Yu(f,e);v[a+316>>2]=v[a+316>>2]|8388608}if(d){a=v[a+320>>2];d=Ba[v[v[a>>2]+100>>2]](a)|0;a=1;dj(d,z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?a:z[b+8>>2]!=C(0),c)}}function qj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(d){d=d-16|0}else{d=0}z[a+284>>2]=z[b>>2];z[a+288>>2]=z[b+4>>2];z[a+292>>2]=z[b+8>>2];e=a+48|0;a:{b:{c:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:f=v[e>>2];if(w[f+4785|0]){break b}default:CG(a- -64|0,b);break a;case 1:break c}}f=v[e>>2]}Yu(f,e);v[a+316>>2]=v[a+316>>2]|4194304}if(d){a=v[a+320>>2];d=Ba[v[v[a>>2]+100>>2]](a)|0;a=1;dj(d,z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?a:z[b+8>>2]!=C(0),c)}}function dg(a,b){var c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;a:{if(t[149536]&1){e=v[37383];break a}e=aa(2,114384)|0;t[149536]=1;v[37383]=e}c=maa(48);v[c+8>>2]=v[b+8>>2];f=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=f;u[c+12>>1]=x[b+12>>1];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];z[c+28>>2]=z[b+28>>2];z[c+32>>2]=z[b+32>>2];z[c+36>>2]=z[b+36>>2];z[c+40>>2]=z[b+40>>2];v[c+44>>2]=v[b+44>>2];v[d+8>>2]=c;g=+fa(e|0,a|0,4445,d+4|0,d+8|0);ga(v[d+4>>2]);xa=d+16|0;return g!=0}function P9(a){var b=0,c=0;a:{c=U9(a);b=c;b:{if(v[37355]<0){a=O9(a,c,149344);break b}a=O9(a,c,149344)}if((b|0)!=(a|0)){b=a}if((((b|0)!=(c|0)?-1:0)|0)<0){break a}c:{if(v[37356]==10){break c}a=v[37341];if((a|0)==v[37340]){break c}v[37341]=a+1;t[a|0]=10;break a}b=xa-16|0;xa=b;t[b+15|0]=10;a=v[37340];d:{if(!a){if(N9(149344)){break d}a=v[37340]}c=a;a=v[37341];if(!((c|0)==(a|0)|v[37356]==10)){v[37341]=a+1;t[a|0]=10;break d}if((Ba[v[37345]](149344,b+15|0,1)|0)!=1){break d}}xa=b+16|0}}function zP(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=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?29257:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function ez(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=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?34879:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}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}d=b<<3;if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?31807:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[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,m=0;a:{if(!b){break a}d=b<<3;if(!d){break a}c=v[37696];e=c+12|0;e=(i=e,j=d,k=Ba[v[v[c>>2]+20>>2]](c)|0?43713:63804,l=16608,m=553,h=v[v[e>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;c=e;while(1){g=v[d+4>>2];v[c>>2]=v[d>>2];v[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function wN(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=v[c+4624>>2];a:{if(!g){break a}b=x[b+34>>1];a=x[a+34>>1];c=0;if(g-1>>>0>=3){j=g&-4;while(1){e=c<<2;f=e+d|0;u[f+2>>1]=b;u[f>>1]=a;f=(e|4)+d|0;u[f+2>>1]=b;u[f>>1]=a;f=(e|8)+d|0;u[f+2>>1]=b;u[f>>1]=a;e=(e|12)+d|0;u[e+2>>1]=b;u[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;u[e+2>>1]=b;u[e>>1]=a;c=c+1|0;i=i+1|0;if((g|0)!=(i|0)){continue}break}}return 1}function TW(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0),p=C(0),q=C(0),r=C(0);c=v[b+8>>2];g=z[c+52>>2];h=z[c+36>>2];i=z[c+20>>2];j=z[c+56>>2];k=z[c+40>>2];l=z[c+24>>2];m=z[c+4>>2];n=z[c+8>>2];o=z[c+48>>2];p=z[c+32>>2];b=v[b+4>>2];d=z[b+8>>2];q=z[c>>2];e=z[b>>2];r=z[c+16>>2];f=z[b+4>>2];v[a+12>>2]=0;z[a>>2]=o+C(C(p*d)+C(C(q*e)+C(f*r)));z[a+8>>2]=j+C(C(k*d)+C(C(n*e)+C(f*l)));z[a+4>>2]=g+C(C(h*d)+C(C(m*e)+C(f*i)))}function TM(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=C(0);a:{b=v[a+32>>2];f=v[a+36>>2];if(b>>>0>=f>>>0){break a}g=z[a+40>>2];a=v[a+28>>2];c=f-b|0;if(c&1){d=v[a+12144>>2]+B(b,52)|0;e=v[(v[v[d>>2]+24>>2]<<2)+149600>>2];if(e){Ba[e|0](d,g)}b=b+1|0}if((c|0)==1){break a}while(1){c=B(b,52);d=c+v[a+12144>>2]|0;e=v[(v[v[d>>2]+24>>2]<<2)+149600>>2];if(e){Ba[e|0](d,g)}c=(c+v[a+12144>>2]|0)+52|0;d=v[(v[v[c>>2]+24>>2]<<2)+149600>>2];if(d){Ba[d|0](c,g)}b=b+2|0;if((f|0)!=(b|0)){continue}break}}}function CB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;var f=0,g=0,h=0,i=0,j=0;e=v[a>>2];i=e+x[a+4>>1]|0;if(e>>>0>>0){while(1){a=(e<<5)+b|0;sB(a,c,d);f=v[a+24>>2];a:{if(!f){break a}g=w[f+1|0];if(!g){break a}a=f+176|0;if((g|0)!=1){f=w[f|0]==2?96:160;j=g&254;h=0;while(1){if(!(w[a+84|0]&4)){v[a+28>>2]=0}a=a+f|0;if(!(w[a+84|0]&4)){v[a+28>>2]=0}a=a+f|0;h=h+2|0;if((j|0)!=(h|0)){continue}break}}if(!(g&1)|w[a+84|0]&4){break a}v[a+28>>2]=0}e=e+1|0;if((i|0)!=(e|0)){continue}break}}}function tg(a,b,c){var d=0,e=0;d=b?v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0:d;e=c?v[((v[c+4>>2]>>>22&60)+89188|0)+12>>2]+c|0:e;a:{b:{c:{d:{b=v[a+4>>2];switch((b>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[a>>2]+4785|0]){break b}}b=a+12|0;yH(b);wH(b,d,e);break a}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],b>>>24&15);v[a+8>>2]=c}v[c+4>>2]=e;v[c>>2]=d;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}v[a+76>>2]=0;v[a+80>>2]=0;v[a+92>>2]=0;v[a+96>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0}function p9(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);e=z[b+4>>2];g=C(-e);h=z[b>>2];l=C(-h);f=z[b+8>>2];d=z[c+8>>2];j=z[c>>2];k=z[c+4>>2];m=C(C(f*d)+C(C(h*j)+C(e*k)));a:{if(m>C(-1)){i=C(C(e*d)-C(k*f));f=C(C(f*j)+C(d*l));g=C(C(h*k)+C(j*g));d=C(m+C(1));break a}d=C(0);if(C(D(h))>2]=d*e;z[a+8>>2]=g*e;z[a+4>>2]=f*e;z[a>>2]=i*e} +function vV(a){a=a|0;var b=0,c=0;v[a>>2]=140740;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+48>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+48>>2]=0}b=v[a+52>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+52>>2]=0}b=v[a+56>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+60>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+60>>2]=0}b=v[a+64>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+64>>2]=0}return a|0}function lJ(a,b,c,d,e,f,g){var h=0,i=0,j=0;a:{if(!e){if(!v[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=B(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;e=v[v[a+1968>>2]+((v[a+1976>>2]-1&(b>>>16^b))<<2)>>2];if((e|0)==-1){break a}j=v[a+1964>>2];b=v[a+1960>>2];while(1){i=b+B(e,12)|0;if(!((c|0)==v[i>>2]&v[i+4>>2]==(h|0))){e=v[(e<<2)+j>>2];if((e|0)!=-1){continue}break a}break}e=v[(b+B(e,12)|0)+8>>2];if(!e){break a}}mJ(a,e,4,d,1,f,g)}}function kg(a){a=a|0;var b=C(0),c=C(0),d=C(0),e=0;a:{if(y[a+100>>2]>1|z[a+68>>2]>2]>2]>2]>2];if(c>2]<=C(0)|(!v[a+88>>2]|((p(C(A[a+8>>3])),j(2))&2139095040)==2139095040)){break a}if(((p(C(A[a+16>>3])),j(2))&2139095040)==2139095040|((p(C(A[a+24>>3])),j(2))&2139095040)==2139095040){break a}b=z[a+104>>2];if(b<=C(0)){break a}d=z[a+108>>2];if(d<=C(0)){break a}e=!(C(C(b+b)+d)>2]=1069547520;v[a+64>>2]=1092616192;v[a+68>>2]=1061997773;v[a+56>>2]=1036831949;v[a+60>>2]=1056964608;v[a+32>>2]=0;v[a+36>>2]=1065353216;v[a+96>>2]=0;v[a+100>>2]=1;v[a+48>>2]=0;v[a+52>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;t[a+92|0]=1;v[a+108>>2]=0;v[a+112>>2]=0;v[a>>2]=117768;v[a+104>>2]=0;v[a+40>>2]=0;v[a+44>>2]=1060437492;v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0;return a|0}function _s(a){a=a|0;var b=0,c=0,d=0,e=0;c=v[a+20>>2];d=xa-48|0;xa=d;a=v[a+28>>2];b=a+32|0;z[b+1080>>2]=z[a+6072>>2];cP(b);FH(v[b+1136>>2],v[b+976>>2]);dP(b,c);a=d+8|0;e=v[v[b+976>>2]+1024>>2];Ba[v[v[e>>2]+84>>2]](a,e);GJ(v[b+2168>>2],a,(v[b+2360>>2]&8)>>>3|0);v[b+2356>>2]=v[b+2356>>2]&-7;BK(v[b+976>>2]);v[b+4564>>2]=c;v[b+4568>>2]=1;a:{if(!c){a=v[b+4560>>2];break a}Ba[v[v[c>>2]+16>>2]](c);a=v[v[b+4564>>2]+16>>2];v[b+4560>>2]=a}Ba[v[v[a>>2]+72>>2]](a,b+4544|0);xa=d+48|0}function NS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=xa-32|0;xa=c;d=v[b+4>>2];v[a+440>>2]=v[b>>2];v[a+444>>2]=d;d=v[b+20>>2];v[a+456>>2]=v[b+16>>2];v[a+460>>2]=d;d=v[b+12>>2];v[a+448>>2]=v[b+8>>2];v[a+452>>2]=d;b=v[a+432>>2];if(b){Ba[v[v[b>>2]+76>>2]](c,b);e=A[a+448>>3];f=A[a+440>>3];z[c+24>>2]=A[a+456>>3];z[c+20>>2]=e;z[c+16>>2]=f;z[c>>2]=z[a+20>>2];z[c+4>>2]=z[a+24>>2];z[c+8>>2]=z[a+28>>2];z[c+12>>2]=z[a+32>>2];a=v[a+432>>2];Ba[v[v[a>>2]+248>>2]](a,c)}xa=c+32|0;return 1}function V2(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;f=xa-240|0;xa=f;e=a+4|0;a:{if(!v[a+44>>2]){e=X3(f,e);if(d){v[d>>2]=0}if(N3(e,b,d,0)){if(!(w[a+28|0]&8)){Q3(e)}g=(i=c,j=Ba[v[v[e>>2]+8>>2]](e)|0?4:3,k=v[e+12>>2],h=v[v[c>>2]>>2],Ba[h](i|0,j|0,k|0)|0)}Y3(e);break a}e=R3(f,e);if(d){v[d>>2]=0}if(N3(e,b,d,0)){if(!(w[a+28|0]&8)){Q3(e)}g=(k=c,j=Ba[v[v[e>>2]+8>>2]](e)|0?4:3,i=v[e+12>>2],h=v[v[c>>2]>>2],Ba[h](k|0,j|0,i|0)|0)}S3(e)}xa=f+240|0;return g|0}function lz(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=v[a+336>>2];d=v[b>>2];v[b>>2]=0;if(!d){break a}b=d;while(1){e=v[b>>2];c=v[a+180>>2];v[c+600>>2]=v[c+600>>2]+v[b+12156>>2];v[c+604>>2]=v[c+604>>2]+v[b+12160>>2];f=b+12164|0;v[c+608>>2]=v[c+608>>2]+v[f>>2];v[c+612>>2]=v[c+612>>2]+v[b+12168>>2];v[f>>2]=0;v[f+4>>2]=0;v[b+12156>>2]=0;v[b+12160>>2]=0;b=e;if(b){continue}break}if(!d){break a}while(1){b=v[d>>2];e=v[a+336>>2];v[d>>2]=v[e>>2];v[e>>2]=d;d=b;if(b){continue}break}}} +function haa(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!v[v[37900]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){t[a+1|0]=b&63|128;t[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){t[a+2|0]=b&63|128;t[a|0]=b>>>12|224;t[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){t[a+3|0]=b&63|128;t[a|0]=b>>>18|240;t[a+2|0]=b>>>6&63|128;t[a+1|0]=b>>>12&63|128;a=4;break a}}v[37699]=25;a=-1}else{a=1}break a}t[a|0]=b;a=1}return a}function Mk(a,b,c){a=a|0;b=C(b);c=c|0;var d=0,e=0,f=0,g=0;d=v[a+24>>2];if(d){e=xa-16|0;xa=e;if(v[d+28>>2]){f=v[d+12>>2];a=v[d>>2];g=v[d+16>>2];Ba[v[v[a>>2]+12>>2]](a,g)|0;t[a+76|0]=g;v[a+32>>2]=f;Ba[v[v[a>>2]+8>>2]](a)}a=v[d>>2];Ba[v[v[a>>2]+24>>2]](a,v[d+16>>2],e+12|0,e+8|0,e+4|0);a=v[e+8>>2];if(a){f=v[37696];a=Ba[v[v[f+12>>2]+8>>2]](f+12|0,a,24422,10053,439)|0}else{a=0}f=c;c=v[d>>2];jw(a,x[d+16>>1],v[d+12>>2],b,f,v[c+68>>2],x[c+78>>1]);xa=e+16|0}else{a=0}return a|0}function jK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-32|0;xa=d;v[a+52>>2]=v[a+52>>2]+1;v[b+16>>2]=a;Ba[v[v[b>>2]+32>>2]](b);e=v[a+76>>2];v[b+20>>2]=e;v[d+20>>2]=-1;v[d+24>>2]=-1;v[d+12>>2]=1;v[d+16>>2]=c;v[d+8>>2]=b;a:{if((v[a+80>>2]&2147483647)>>>0<=e>>>0){iK(a+72|0,d+8|0);break a}c=v[a+72>>2]+B(e,20)|0;e=v[d+12>>2];v[c>>2]=v[d+8>>2];v[c+4>>2]=e;v[c+16>>2]=v[d+24>>2];e=v[d+20>>2];v[c+8>>2]=v[d+16>>2];v[c+12>>2]=e;v[a+76>>2]=v[a+76>>2]+1}xa=d+32|0;return v[b+20>>2]}function Pm(a,b){var c=0,d=0,e=0,f=0;a:{if(!v[a+556>>2]){break a}c=(b<<15^-1)+b|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=v[a+532>>2]+((v[a+540>>2]-1&(c>>>16^c))<<2)|0;c=v[d>>2];if((c|0)==-1){break a}e=v[a+528>>2];f=v[a+524>>2];if(v[f+(c<<2)>>2]!=(b|0)){while(1){d=(c<<2)+e|0;c=v[d>>2];if((c|0)==-1){break a}if(v[(c<<2)+f>>2]!=(b|0)){continue}break}}b=(c<<2)+e|0;v[d>>2]=v[b>>2];v[a+556>>2]=v[a+556>>2]-1;v[a+552>>2]=v[a+552>>2]+1;v[b>>2]=v[a+548>>2];v[a+548>>2]=c}}function xg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;g=a+16|0;e=v[a+20>>2];if(e&4){f=x[v[a+24>>2]+16>>1]&(x[a+116>>1]|-1026)}else{f=x[a+28>>1]&(x[a+116>>1]|-1026)}b=c?f|b:f&(b^-1);a:{b:{c:{switch((e>>>30|0)-2|0){case 0:if(w[v[g>>2]+4785|0]){break b}break;case 1:break b;default:break c}}u[d+8>>1]=b;vH(a+28|0,d+8|0);break a}c=v[a+24>>2];if(!c){c=Qu(v[a+16>>2],e>>>24&15);v[a+24>>2]=c}u[c+16>>1]=b;Yu(v[a+16>>2],g);v[a+20>>2]=v[a+20>>2]|4}xa=d+16|0}function jy(a,b,c){var d=0,e=0,f=C(0);d=xa-32|0;xa=d;e=x[a+8>>1];a:{if((e|0)==65535){a=v[a+4>>2];f=C(C(C(z[a+8>>2]*z[b+8>>2])+C(C(z[a>>2]*z[b>>2])+C(z[a+4>>2]*z[b+4>>2])))+C(C(z[a+24>>2]*z[c+8>>2])+C(C(z[a+16>>2]*z[c>>2])+C(z[a+20>>2]*z[c+4>>2]))));break a}a=v[a>>2];Ba[v[v[a>>2]+116>>2]](d,a,e);f=C(C(C(C(z[b>>2]*z[d>>2])+C(z[c>>2]*z[d+16>>2]))+C(C(z[b+4>>2]*z[d+4>>2])+C(z[c+4>>2]*z[d+20>>2])))+C(C(z[b+8>>2]*z[d+8>>2])+C(z[c+8>>2]*z[d+24>>2])))}xa=d+32|0;return f}function Uz(a){a=a|0;var b=0,c=0,d=0,e=0;if(v[a+32>>2]){while(1){e=v[v[a+28>>2]+(d<<2)>>2]>>>7|0;c=v[(v[v[a+36>>2]+16>>2]+B(e,24)|0)+20>>2];b=v[c+36>>2];d=d+1|0;dA(b- -64|0,b+80|0,z[b+124>>2],b+112|0,b,z[b+76>>2],z[b+128>>2],e,z[b+92>>2],v[a+40>>2]+B(d,112)|0,w[b+158|0]);b=v[c+36>>2];z[c>>2]=z[b>>2];z[c+4>>2]=z[b+4>>2];z[c+8>>2]=z[b+8>>2];z[c+12>>2]=z[b+12>>2];z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];if(y[a+32>>2]>d>>>0){continue}break}}}function mX(a,b,c,d){var e=0,f=0,g=0,h=0;Ba[v[v[d>>2]>>2]](d,a,b<<2)|0;a:{if(!b|!c){break a}d=0;if((b|0)!=1){h=b&-2;c=0;while(1){f=d<<2;e=f+a|0;g=w[e+3|0];t[e+3|0]=w[e|0];t[e|0]=g;g=w[e+1|0];t[e+1|0]=w[e+2|0];t[e+2|0]=g;e=(f|4)+a|0;f=w[e+3|0];t[e+3|0]=w[e|0];t[e|0]=f;f=w[e+1|0];t[e+1|0]=w[e+2|0];t[e+2|0]=f;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=w[a+3|0];t[a+3|0]=w[a|0];t[a|0]=b;b=w[a+1|0];t[a+1|0]=w[a+2|0];t[a+2|0]=b}}function ir(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if(v[a+4656>>2]!=2){b9(v[37696],8,11709,1950,77351,0);return}c=a+16|0;e=v[c+4968>>2];if(e){c=v[c+4936>>2];while(1){Pu(v[(d<<2)+c>>2]);d=d+1|0;if((e|0)!=(d|0)){continue}break}}v[a+6124>>2]=b;v[a+4656>>2]=3;if(b){Ba[v[v[b>>2]+16>>2]](b)}v[a+6304>>2]=1;b=a+6104|0;v[a+6300>>2]=b;c=a+6296|0;v[c>>2]=v[a+6092>>2];Ba[v[v[a+6104>>2]+16>>2]](b);d=v[a+6120>>2];Ba[v[v[d>>2]+72>>2]](d,b);b=v[c>>2];Ba[v[v[b>>2]+72>>2]](b,a+6280|0)}function Lu(a,b){var c=0,d=0,e=0;e=a+5052|0;c=xa-16|0;xa=c;v[b>>2]=a;d=v[b+4>>2];a:{if(!w[a+4785|0]){v[b+4>>2]=d&268435455|-2147483648;a=v[b+388>>2];v[c+12>>2]=v[b+384>>2]+48;v[c+8>>2]=a+48;qP(b+12|0,v[c+12>>2]+16|0,v[c+8>>2]+16|0);break a}a=d&1073741823;if(d>>>0>=3221225472){v[b+4>>2]=a|-2147483648;if(d&268435456){break a}v[c+12>>2]=b;Pg(e,c+12|0);break a}v[b+4>>2]=a|1073741824;v[c+12>>2]=b;a=rh(e,c+12|0,c+8|0);if(w[c+8|0]){break a}v[a>>2]=v[c+12>>2]}xa=c+16|0}function pi(a,b){a=a|0;b=C(b);var c=0;a:{a=a+12|0;if(v[a+88>>2]){while(1){$k(v[v[a+84>>2]+(c<<2)>>2]+48|0,b);c=c+1|0;if(c>>>0>2]){continue}break}}z[a+56>>2]=b;b:{c:{d:{switch((v[a+4>>2]>>>30|0)-2|0){default:c=v[a>>2];break c;case 1:break b;case 0:break d}}c=v[a>>2];if(w[c+4785|0]){break b}}if(!(!(b>C(0))|!c)){t[a+60|0]=0}z[a+44>>2]=b;break a}if(b>C(0)){t[a+60|0]=0;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]&-897|640;break a}Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|128}}function iq(a,b){a=a|0;b=b|0;var c=0,d=0;d=xa-16|0;xa=d;Ba[v[v[a>>2]+16>>2]](d+8|0,a);a:{b:{if(w[d+9|0]&32){c=1;if(x[b+4>>1]==12){break b}b9(v[37696],8,11709,815,72357,0);break a}c=x[b+4>>1]==12}if(!(!v[a+4656>>2]|!c)){b9(v[37696],8,11709,821,75277,0);break a}c:{d:{e:{c=Ba[v[v[b>>2]+100>>2]](b)|0;switch(v[c+4>>2]>>>30|0){case 0:break d;case 3:break e;default:break c}}if((v[c>>2]-16|0)!=(a|0)){break c}}jq(a,b);break a}b9(v[37696],8,11709,832,75619,0)}xa=d+16|0}function vE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=v[a+632>>2];if(e){f=v[a+644>>2];g=v[a+640>>2];while(1){c=B(d,24)+g|0;z[c>>2]=z[c>>2]-z[b>>2];z[c+4>>2]=z[c+4>>2]-z[b+4>>2];z[c+8>>2]=z[c+8>>2]-z[b+8>>2];z[c+12>>2]=z[c+12>>2]-z[b>>2];z[c+16>>2]=z[c+16>>2]-z[b+4>>2];z[c+20>>2]=z[c+20>>2]-z[b+8>>2];c=B(d,44)+f|0;z[c+28>>2]=z[c+28>>2]-z[b>>2];z[c+32>>2]=z[c+32>>2]-z[b+4>>2];z[c+36>>2]=z[c+36>>2]-z[b+8>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}UC(a+4|0,b)}function cI(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(w[a+36|0]){break a}g=v[b+180>>2];if(v[g+(v[a+40>>2]<<2)>>2]==-1|v[(v[a+44>>2]<<2)+g>>2]==-1){break a}e=v[a+48>>2];if(!v[e+8>>2]){break a}f=v[a+52>>2];if(!v[f+8>>2]){break a}b:{if((v[e+20>>2]&v[f+20>>2])==-1){break b}d=b+196|0;e=b+208|0;f=v[b+400>>2];h=v[v[b+192>>2]+4>>2];i=v[v[b+276>>2]+4>>2];if(c){bI(a,f,i,h,g,e,d,c+4|0,c+28|0);break b}bI(a,f,i,h,g,e,d,b+304|0,b+328|0)}d=0}return d|0}function to(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0);ij(a,b,c,d);e=z[a+308>>2];b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}f=z[b+5148>>2];b=e>2]?1:b){e=b?f:e;b=a+48|0;a:{b:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:c=v[b>>2];if(w[c+4785|0]){break a}default:z[a+308>>2]=e;v[a+312>>2]=0;VG(a- -64|0,e,1);return;case 1:break b}}c=v[b>>2]}z[a+308>>2]=e;v[a+312>>2]=0;Yu(c,b);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}}function o7(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=C(0),h=C(0),i=C(0);f=xa+-64|0;xa=f;E5(f+32|0,f,b,c,d);if(e&1){Ba[v[v[a>>2]+8>>2]](a,f+32|0,f)}a:{if(!(e&2)){break a}c=x[b+100>>1];if(!(c&6)){break a}e=c&4;d=65280;g=C(z[f+24>>2]-z[f+56>>2]);h=C(g*g);g=C(z[f+16>>2]-z[f+48>>2]);i=C(g*g);g=C(z[f+20>>2]-z[f+52>>2]);g=C(K(C(h+C(i+C(g*g)))));d=!(c&2)|!(g>z[b+84>>2])?d:16711680;Ba[v[v[a>>2]+28>>2]](a,f+48|0,f+16|0,!e|!(g>2])?d:255)}xa=f- -64|0}function ei(a){a=a|0;var b=0,c=0,d=0,e=0;d=xa-16|0;xa=d;$n(v[37393],a,v[a+8>>2],1);b=v[a+100>>2];if(b){while(1){c=(c>>>0)%(b>>>0)|0;b=c<<2;e=v[b+v[a+96>>2]>>2];a:{if(!(Ba[v[v[e>>2]+260>>2]](e)|0)){Ni(v[b+v[a+96>>2]>>2]);break a}c=c+1|0}b=v[a+100>>2];if(b){continue}break}}c=a+12|0;b:{if((v[a+16>>2]>>>30|0)-3>>>0<4294967294){break b}b=v[a+12>>2];if(!b){break b}b=b-16|0;if(!b){break b}Ku(b+16|0,c);v[d+12>>2]=a;Pg(b+5944|0,d+12|0)}v[a+100>>2]=0;tu(c);xa=d+16|0}function wF(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){vF(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+B(b,44)|0;d=B(d,44)+e|0;while(1){e=v[c+4>>2];v[d>>2]=v[c>>2];v[d+4>>2]=e;v[d+40>>2]=v[c+40>>2];e=v[c+36>>2];v[d+32>>2]=v[c+32>>2];v[d+36>>2]=e;e=v[c+28>>2];v[d+24>>2]=v[c+24>>2];v[d+28>>2]=e;e=v[c+20>>2];v[d+16>>2]=v[c+16>>2];v[d+20>>2]=e;e=v[c+12>>2];v[d+8>>2]=v[c+8>>2];v[d+12>>2]=e;d=d+44|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function Hh(a,b){a=a|0;b=b|0;var c=0,d=0;if(v[a+24>>2]){a=v[b+52>>2];if(a){c=v[a+12>>2];a:{if((c|0)<0|!(c&2147483647)){break a}c=v[a+4>>2];if(!c){break a}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}a=v[a>>2];if(a){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a)}a=v[b+52>>2];if(a){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a)}v[b+52>>2]=0}a=v[b+48>>2];if(a){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,a);v[b+48>>2]=0}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}}function Ak(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;v[v[a+12>>2]+4>>2]=d;g=v[a+12>>2];a=v[g+100>>2];f=v[a+20>>2];d=f+1|0;e=v[a+24>>2]&2147483647;a:{if(d>>>0<=e>>>0){break a}h=e;e=e?e<<1:2;e=d>>>0>e>>>0?d:e;if(h>>>0>=e>>>0){break a}Bk(a+16|0,e);f=v[a+20>>2]}v[a+20>>2]=d;a=v[a+16>>2]+(f<<5)|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+16>>2]=z[c>>2];z[a+20>>2]=z[c+4>>2];z[a+24>>2]=z[c+8>>2];b=v[g+4>>2];v[a+12>>2]=b;v[a+28>>2]=b}function rT(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;g=g|0;var h=0,i=0,j=0,k=C(0),l=0;j=xa+-64|0;xa=j;h=j+8|0;v[h+36>>2]=2;v[h>>2]=140564;v[h+36>>2]=0;v[h>>2]=140500;i=v[b+460>>2];v[h+24>>2]=v[b+456>>2];v[h+28>>2]=i;i=v[b+452>>2];v[h+16>>2]=v[b+448>>2];v[h+20>>2]=i;i=v[b+444>>2];v[h+8>>2]=v[b+440>>2];v[h+12>>2]=i;i=v[b+540>>2];l=v[b+536>>2];k=z[b+532>>2];z[h+40>>2]=k;z[h+32>>2]=k;v[h+44>>2]=l;v[h+48>>2]=i;nT(a,b+8|0,h,c,d,e,f,g,0);xa=j- -64|0}function Sp(a,b){a=a|0;b=b|0;var c=0,d=0;c=v[b>>2];a:{if(!c){c=0;break a}if((v[a+5940>>2]&2147483647)>>>0>=c>>>0){break a}Np(a+5932|0,c);c=v[b>>2]}QO(a+32|0,c,v[b+4>>2],v[b+8>>2],v[b+12>>2]);d=v[b+28>>2];c=a+1076|0;v[c>>2]=v[b+24>>2];v[c+4>>2]=d;d=v[b+20>>2];c=a+1068|0;v[c>>2]=v[b+16>>2];v[c+4>>2]=d;d=v[b+12>>2];c=a+1060|0;v[c>>2]=v[b+8>>2];v[c+4>>2]=d;d=v[b+4>>2];c=a+1052|0;v[c>>2]=v[b>>2];v[c+4>>2]=d;c=v[b+12>>2];a=a+5584|0;DE(a,v[b+8>>2]);DE(a+36|0,c)}function AQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=xa-2064|0;xa=b;f=v[a+1060>>2];v[b+12>>2]=0;c=v[a+1052>>2];a:{if(!c){break a}e=a+28|0;while(1){c=c-1|0;d=v[e>>2]>>>7|0;b:{if(v[v[f+196>>2]+(d<<2)>>2]==33554431){break b}d=v[f+184>>2]+B(d,24)|0;if(w[d+5|0]){break b}rH(v[d+20>>2]+-64|0,z[a+1056>>2],b+1040|0,b+16|0,b+12|0,0,0,w[a+1068|0])}e=e+4|0;if(c){continue}break}c=v[b+12>>2];if(!c){break a}a=v[a+1064>>2];Ba[v[v[a>>2]+52>>2]](a,b+1040|0,b+16|0,c)}xa=b+2064|0}function hg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=v[a+8>>2];a=xa-32|0;xa=a;a:{if(t[149552]&1){e=v[37387];break a}e=aa(3,114832)|0;t[149552]=1;v[37387]=e}d=maa(16);v[d>>2]=v[b>>2];v[d+4>>2]=v[b+4>>2];v[d+8>>2]=v[b+8>>2];v[d+12>>2]=v[b+12>>2];v[a+16>>2]=d;b=maa(12);v[b+8>>2]=v[c+8>>2];d=v[c+4>>2];v[b>>2]=v[c>>2];v[b+4>>2]=d;v[a+24>>2]=b;f=+fa(e|0,g|0,4926,a+12|0,a+16|0);ga(v[a+12>>2]);xa=a+32|0;if(f<4294967296&f>=0){a=~~f>>>0}else{a=0}return a|0}function N8(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=0,k=C(0),l=C(0);e=xa-128|0;xa=e;A7(a,b,c,e+96|0,e- -64|0,e+32|0);f=z[e+56>>2];h=z[e+48>>2];i=z[e+52>>2];k=C(C(f*f)+C(C(h*h)+C(i*i)));g=z[a+108>>2];if(k>C(g*g)){l=f;f=C(C(1)/C(K(k)));z[e+24>>2]=g*C(l*f);z[e+20>>2]=g*C(i*f);j=v[e+36>>2];v[e>>2]=v[e+32>>2];v[e+4>>2]=j;j=v[e+44>>2];v[e+8>>2]=v[e+40>>2];v[e+12>>2]=j;z[e+16>>2]=g*C(h*f);K5(b,c,e+96|0,e- -64|0,e,a,d)}xa=e+128|0}function YI(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(!b){break a}c=B(b,24);if(!c){break a}e=v[a>>2];f=Ba[v[v[e>>2]+8>>2]](e,c,16608,553)|0}e=v[a+4>>2];c=v[a+8>>2];if((c|0)>0){g=B(c,24)+f|0;d=e;c=f;while(1){z[c>>2]=z[d>>2];z[c+4>>2]=z[d+4>>2];z[c+8>>2]=z[d+8>>2];z[c+12>>2]=z[d+12>>2];z[c+16>>2]=z[d+16>>2];z[c+20>>2]=z[d+20>>2];d=d+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|v[a+12>>2]<0)){c=v[a>>2];Ba[v[v[c>>2]+12>>2]](c,e)}v[a+12>>2]=b;v[a+4>>2]=f}function Hs(a){a=a|0;var b=0,c=0;v[a>>2]=126184;b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+80>>2];if((b|0)==(a+60|0)){t[a+76|0]=0;break a}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+56>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+48>>2];if((b|0)==(a+28|0)){t[a+44|0]=0;return a|0}if(!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Ov(a,b,c){var d=0,e=0,f=0,g=0,h=0;if((v[a+8>>2]&2147483647)>>>0>>0){op(a,b)}e=v[a+4>>2];a:{if((e|0)>=(b|0)){break a}f=v[a>>2];d=e+f|0;g=b-e&7;if(g){while(1){t[d|0]=w[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){t[d|0]=w[c|0];t[d+1|0]=w[c|0];t[d+2|0]=w[c|0];t[d+3|0]=w[c|0];t[d+4|0]=w[c|0];t[d+5|0]=w[c|0];t[d+6|0]=w[c|0];t[d+7|0]=w[c|0];d=d+8|0;if((e|0)!=(d|0)){continue}break}}v[a+4>>2]=b}function vw(a,b,c,d){var e=0,f=0;e=xa+-64|0;xa=e;f=v[c+4>>2];v[e+16>>2]=v[c>>2];v[e+20>>2]=f;f=v[c+12>>2];v[e+24>>2]=v[c+8>>2];v[e+28>>2]=f;f=v[c+20>>2];v[e>>2]=v[c+16>>2];v[e+4>>2]=f;f=v[c+28>>2];v[e+8>>2]=v[c+24>>2];v[e+12>>2]=f;ww(e+32|0,a,b,e+16|0,e);a=v[e+36>>2];v[d>>2]=v[e+32>>2];v[d+4>>2]=a;a=v[e+44>>2];v[d+8>>2]=v[e+40>>2];v[d+12>>2]=a;a=v[e+52>>2];v[d+16>>2]=v[e+48>>2];v[d+20>>2]=a;a=v[e+60>>2];v[d+24>>2]=v[e+56>>2];v[d+28>>2]=a;xa=e- -64|0}function dl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+296>>2]=z[b>>2];z[a+300>>2]=z[b+4>>2];z[a+304>>2]=z[b+8>>2];z[a+308>>2]=z[b+12>>2];return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+56>>2]=z[b>>2];z[c+60>>2]=z[b+4>>2];z[c- -64>>2]=z[b+8>>2];z[c+68>>2]=z[b+12>>2];Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|4}function xP(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57001:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function wP(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57673:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function vP(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57149:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function lU(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?61723:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function jz(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?62029:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function iz(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?55111:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function hz(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?59433:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function _C(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?61075:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}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;a:{if(!b){break a}c=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57805:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function RO(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?59547:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Np(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?56405:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Lm(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?56299:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function F4(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?61605:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Er(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?56521:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Cz(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57275:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Cr(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?60027:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function By(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?57427:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function Ay(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=b<<2;if(!c){break a}e=v[37696];d=e+12|0;e=(h=d,i=c,j=Ba[v[v[e>>2]+20>>2]](e)|0?58537:63804,k=16608,l=553,g=v[v[d>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){f=(c<<2)+e|0;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}d=v[a>>2]}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=e}function tF(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=v[37696];c=d+12|0;f=(i=c,j=e,k=Ba[v[v[d>>2]+20>>2]](d)|0?26235:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<2)+f|0;e=d;c=f;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function Ud(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;h=xa-48|0;xa=h;u[h+26>>1]=0;u[h+28>>1]=0;u[h+30>>1]=0;u[h+32>>1]=0;v[h+28>>2]=e;v[h+36>>2]=0;v[h+40>>2]=0;v[h+20>>2]=0;v[h+24>>2]=0;v[h+16>>2]=c;v[h+12>>2]=b;v[h+8>>2]=12;a:{if(f){u[h+32>>1]=2;v[h+20>>2]=6;break a}v[h+20>>2]=12}v[h+24>>2]=d;a=(j=a,k=h+8|0,l=Ba[v[v[g>>2]+148>>2]](g)|0,m=0,i=v[v[a>>2]+20>>2],Ba[i](j|0,k|0,l|0,m|0)|0);xa=h+48|0;return a|0}function Dw(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=v[37696];c=d+12|0;f=(i=c,j=e,k=Ba[v[v[d>>2]+20>>2]](d)|0?29941:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<2)+f|0;e=d;c=f;while(1){z[c>>2]=z[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function Aw(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=v[37696];c=d+12|0;f=(i=c,j=e,k=Ba[v[v[d>>2]+20>>2]](d)|0?29035:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<2)+f|0;e=d;c=f;while(1){v[c>>2]=v[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function Ar(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=v[37696];c=d+12|0;f=(i=c,j=e,k=Ba[v[v[d>>2]+20>>2]](d)|0?27439:63804,l=16608,m=553,h=v[v[c>>2]+8>>2],Ba[h](i|0,j|0,k|0,l|0,m|0)|0)}d=v[a>>2];c=v[a+4>>2];if((c|0)>0){g=(c<<1)+f|0;e=d;c=f;while(1){u[c>>1]=x[e>>1];e=e+2|0;c=c+2|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d)}v[a+8>>2]=b;v[a>>2]=f}function LV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0);g=C(z[d+24>>2]-z[f+24>>2]);h=C(z[d+16>>2]-z[f+16>>2]);i=C(z[d+20>>2]-z[f+20>>2]);j=C(C(g*g)+C(C(h*h)+C(i*i)));k=C(z[c+4>>2]+z[e+4>>2]);c=j>C(k*k);if(!c){m=C(K(j));n=C(1);if(!(j>2]=o;z[a+4>>2]=l;z[a>>2]=n;g=C(k-m);z[b>>2]=g>C(0)?g:C(0)}return!c|0}function ZZ(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=v[a+16>>2];u[e+2>>1]=0;a=v[a+8>>2];a:{if(a>>>0<2){break a}c=a-1|0;f=c&3;d=1;if(a-2>>>0>=3){g=c&-4;c=0;while(1){a=(d<<2)+e|0;b=x[a-4>>1]+b|0;u[a+2>>1]=b;b=b+x[a>>1]|0;u[a+6>>1]=b;b=b+x[a+4>>1]|0;u[a+10>>1]=b;b=b+x[a+8>>1]|0;u[a+14>>1]=b;d=d+4|0;c=c+4|0;if((g|0)!=(c|0)){continue}break}}if(!f){break a}a=0;while(1){c=(d<<2)+e|0;b=x[c-4>>1]+b|0;u[c+2>>1]=b;d=d+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=C(0),f=C(0),g=C(0);c=xa-32|0;xa=c;d=v[b+20>>2];v[c+24>>2]=v[b+16>>2];v[c+28>>2]=d;d=v[b+12>>2];v[c+16>>2]=v[b+8>>2];v[c+20>>2]=d;d=v[b+4>>2];v[c+8>>2]=v[b>>2];v[c+12>>2]=d;f=z[a+36>>2];g=z[a+44>>2];e=C(C(z[a+536>>2]*C(.5))+C(z[a+52>>2]+z[a+532>>2]));A[c+16>>3]=A[c+16>>3]+ +C(e*z[a+40>>2]);A[c+24>>3]=A[c+24>>3]+ +C(e*g);A[c+8>>3]=A[c+8>>3]+ +C(f*e);a=Ba[v[v[a>>2]+12>>2]](a,c+8|0)|0;xa=c+32|0;return a|0}function T2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=xa-224|0;xa=d;a:{b:{c=v[b+8>>2];c:{if(c>>>0<3){break c}e=v[b+16>>2];if(!((c>>>0)%3|0?e:1)|(y[b+28>>2]<2?v[b+32>>2]:0)){break c}d:{if(c>>>0>=65536){if(w[b+24|0]&2){break c}if(v[b+4>>2]){break d}break c}if(!v[b+4>>2]){break c}}if(y[b>>2]<12){break c}if(!e|y[b+12>>2]>=(w[b+24|0]&2?6:12)>>>0){break b}}a=0;b9(v[37696],4,10899,102,74464,0);break a}c=R3(d,a+4|0);a=N3(c,b,0,1);S3(c)}xa=d+224|0;return a|0}function Di(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=x[a+24>>1];c=f;a:{if(!c){break a}d=a+20|0;if((c|0)!=1){h=c&65534;c=0;while(1){g=e<<2;Ba[v[v[b>>2]+8>>2]](b,v[g+(x[a+24>>1]==1?d:v[a+20>>2])>>2]);Ba[v[v[b>>2]+8>>2]](b,v[(g|4)+(x[a+24>>1]==1?d:v[a+20>>2])>>2]);e=e+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(f&1)){break a}Ba[v[v[b>>2]+8>>2]](b,v[(e<<2)+(x[a+24>>1]==1?d:v[a+20>>2])>>2])}a=v[a+324>>2];if(a){Ba[v[v[b>>2]+8>>2]](b,a)}}function Kw(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;v[a+492>>2]=a;v[a+444>>2]=v[a+32>>2];e=w[a+76|0];v[a+448>>2]=e;v[a+480>>2]=v[a+40>>2];v[a+484>>2]=x[a+74>>1];b=v[a+60>>2];v[a+476>>2]=b?b+32|0:v[a- -64>>2];b=0;if(e>>>0>=2){c=1;while(1){d=v[a+456>>2]+B(c,80)|0;Hw(d,v[(v[a+444>>2]+(c<<5)|0)+20>>2],1);v[d+72>>2]=b;f=w[d+79|0]+f|0;b=w[d+76|0]+b|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}if(v[a+468>>2]!=(b|0)){Cw(a+112|0,b)}v[a+468>>2]=b;v[a+472>>2]=f}function KQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;if(v[a+52>>2]){c=v[a+40>>2];d=v[a+44>>2];e=v[a+48>>2];while(1){b=v[a+32>>2]+B(f,12)|0;b=gJ(v[a+28>>2],v[a+36>>2]+(f<<3)|0,v[b+4>>2],v[b>>2],v[c>>2],v[d>>2],v[e>>2],0);a:{if(!b){break a}b:{switch(w[b+24|0]){case 0:v[d>>2]=v[d>>2]|1;d=d+4|0;if(!v[b+56>>2]){break a}v[c>>2]=v[c>>2]|1;c=c+4|0;break a;case 2:break b;default:break a}}v[e>>2]=v[e>>2]|1;e=e+4|0}f=f+1|0;if(f>>>0>2]){continue}break}}}function GU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=v[a+36>>2];c=b&65535;a:{if(e>>>0<=c>>>0){break a}d=x[v[a+40>>2]+(c<<1)>>1];if((d|0)==65535|d>>>0>=e>>>0|x[v[a+48>>2]+(c<<1)>>1]!=(b>>>16|0)){break a}c=v[v[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>=y[a+8>>2]){break a}return(v[a+4>>2]+B(b,72)|0)+8|0;case 0:break b;default:break a}}if(b>>>0>=y[a+20>>2]){break a}f=(v[a+16>>2]+(b<<6)|0)+8|0}return f|0}function BS(a){a=a|0;var b=0;a=a+96|0;a:{if(!w[a+156|0]){break a}b=v[a+152>>2];if(!b){break a}hU(v[a+160>>2],b)}v[a+152>>2]=0;b:{if(!w[a+168|0]){break b}b=v[a+164>>2];if(!b){break b}hU(v[a+172>>2],b)}v[a+176>>2]=-1;v[a+48>>2]=-1;v[a+52>>2]=2146435071;v[a+164>>2]=0;v[a+88>>2]=-1;v[a+92>>2]=-1048577;v[a+80>>2]=-1;v[a+84>>2]=-1048577;v[a+72>>2]=-1;v[a+76>>2]=-1048577;b=a- -64|0;v[b>>2]=-1;v[b+4>>2]=2146435071;v[a+56>>2]=-1;v[a+60>>2]=2146435071}function sT(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;g=g|0;var h=0,i=0,j=C(0),k=C(0);h=xa-48|0;xa=h;v[h+36>>2]=2;v[h>>2]=140564;v[h+36>>2]=1;v[h>>2]=140532;i=v[b+460>>2];v[h+24>>2]=v[b+456>>2];v[h+28>>2]=i;i=v[b+452>>2];v[h+16>>2]=v[b+448>>2];v[h+20>>2]=i;i=v[b+444>>2];v[h+8>>2]=v[b+440>>2];v[h+12>>2]=i;j=z[b+532>>2];z[h+40>>2]=j;k=z[b+536>>2];z[h+44>>2]=k;z[h+32>>2]=j+C(k*C(.5));nT(a,b+8|0,h,c,d,e,f,g,v[b+540>>2]==1);xa=h+48|0}function _O(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=v[b+8>>2];c=w[b+20|0];e=B(c,12)+a|0;d=v[e+56>>2]-1|0;v[e+56>>2]=d;h=v[e+52>>2];g=f<<2;v[h+g>>2]=v[(d<<2)+h>>2];v[b+8>>2]=-1;if(d>>>0>f>>>0){v[v[v[e+52>>2]+g>>2]+8>>2]=f}a=(c<<2)+a|0;b=v[a+88>>2];a:{if(b>>>0<=f>>>0){break a}c=a;a=b-1|0;v[c+88>>2]=a;if(a>>>0>=y[e+56>>2]){break a}d=v[e+52>>2];c=d+(f<<2)|0;b=v[c>>2];g=c;c=d;d=a<<2;c=v[c+d>>2];v[g>>2]=c;v[d+v[e+52>>2]>>2]=b;v[b+8>>2]=a;v[c+8>>2]=f}}function NK(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=v[a+4>>2];c=e?e<<1:256;b=b+1|0;c=b>>>0>>0?c:b;d=(c|0)!=(c&1073741823)?-1:c<<2;if(d){b=v[37696];f=b+12|0;b=(h=f,i=d,j=Ba[v[v[b>>2]+20>>2]](b)|0?29721:63804,k=13489,l=949,g=v[v[f>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0)}else{b=0}if(c){J9(b,255,c<<2)}d=v[a>>2];a:{if(!d){break a}I9(b,d,e<<2);e=v[a>>2];if(!e){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,e)}v[a+4>>2]=c;v[a>>2]=b}function MK(a,b){var c=0,d=0,e=0,f=0;e=v[a>>2];if(e>>>0>>0){d=v[a+12>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);v[a+12>>2]=0}d=v[a+8>>2];if(d){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,d);v[a+8>>2]=0}d=0;c=(b<<3)+48|0;if(c){f=v[37696]+12|0;c=Ba[v[v[f>>2]+8>>2]](f,c,24422,13489,643)|0}else{c=0}v[a+8>>2]=c;c=b<<4;if(c){d=v[37696]+12|0;d=Ba[v[v[d>>2]+8>>2]](d,c,24422,13489,644)|0}v[a+4>>2]=b;v[a+12>>2]=d;v[a>>2]=b}return b>>>0>e>>>0}function DE(a,b){var c=0,d=0,e=0,f=0;c=v[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=v[37696]+12|0;c=Ba[v[v[c>>2]+8>>2]](c,e<<2,24422,17999,438)|0;d=v[a+4>>2];b:{if(!d){break b}I9(c,d,v[a+8>>2]<<2);if(v[a+8>>2]<0){break b}d=v[a+4>>2];if(!d){break b}f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,d)}d=v[a+8>>2];J9(c+(d<<2)|0,0,e-d<<2);v[a+8>>2]=e;v[a+4>>2]=c}a=v[a>>2];if(a){Ba[v[v[a>>2]+44>>2]](a,b)}} +function ZT(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=v[a+12>>2];if(!b){b=v[37696];c=b+12|0;b=(e=c,f=64,g=Ba[v[v[b>>2]+20>>2]](b)|0?34507:63804,h=8633,i=97,d=v[v[c>>2]+8>>2],Ba[d](e|0,f|0,g|0,h|0,i|0)|0);v[b+4>>2]=0;v[b+8>>2]=0;v[b>>2]=125980;v[b+12>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+24>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;v[b+36>>2]=0;v[b+40>>2]=0;v[b+44>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+56>>2]=0;v[b+60>>2]=0;v[a+12>>2]=b}return b|0}function kJ(a,b,c){var d=0,e=0,f=0,g=0;a:{if(!v[a+1992>>2]){break a}d=b>>>0>c>>>0;e=d?b:c;b=d?c:b;c=e<<14&-65536|b>>>2&65535;c=(c<<15^-1)+c|0;c=B(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=v[v[a+1968>>2]+((v[a+1976>>2]-1&(c>>>16^c))<<2)>>2];if((c|0)==-1){break a}d=v[a+1964>>2];a=v[a+1960>>2];while(1){f=a+B(c,12)|0;if(!((b|0)==v[f>>2]&v[f+4>>2]==(e|0))){c=v[d+(c<<2)>>2];if((c|0)!=-1){continue}break a}break}g=v[(a+B(c,12)|0)+8>>2]}return g}function nI(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=v[a+12>>2];g=c&2147483647?c<<1:1;a:{if(!g){break a}c=g<<2;if(!c){break a}e=v[a>>2];e=Ba[v[v[e>>2]+8>>2]](e,c,16608,553)|0}c=v[a+4>>2];d=v[a+8>>2];if((d|0)>0){h=(d<<2)+e|0;d=c;f=e;while(1){v[f>>2]=v[d>>2];d=d+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}d=v[a+8>>2]}v[(d<<2)+e>>2]=v[b>>2];if(!(!c|v[a+12>>2]<0)){b=v[a>>2];Ba[v[v[b>>2]+12>>2]](b,c)}v[a+12>>2]=g;v[a+4>>2]=e;v[a+8>>2]=v[a+8>>2]+1}function tJ(a,b,c,d){var e=0,f=0;e=xa-16|0;xa=e;f=UH(a+4|0,v[b+4>>2],v[c+4>>2],2,5);v[a+36>>2]=-1;v[a+32>>2]=c;v[a+28>>2]=b;v[a>>2]=131184;a:{if(d){break a}YP(f);VE(v[f>>2],f);VE(v[a+8>>2],f);XO(v[v[f>>2]+40>>2],f,0);f=v[v[v[f>>2]+40>>2]+2168>>2];b=v[a+28>>2];c=v[a+32>>2];d=b>>>0>c>>>0;v[e+4>>2]=d?b:c;v[e>>2]=d?c:b;b=iJ(f+1956|0,e,e+15|0);if(w[e+15|0]){break a}c=v[e+4>>2];d=v[e>>2];v[b+8>>2]=a;v[b>>2]=d;v[b+4>>2]=c}xa=e+16|0;return a}function AV(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0);d=z[a>>2];e=z[a+4>>2];c=z[a+8>>2];z[b+8>>2]=c;z[b+4>>2]=e;z[b>>2]=d;f=z[a+12>>2];z[b+20>>2]=c;z[b+16>>2]=e;z[b+12>>2]=f;g=z[a+16>>2];z[b+44>>2]=c;z[b+40>>2]=g;z[b+36>>2]=d;z[b+32>>2]=c;z[b+28>>2]=g;z[b+24>>2]=f;c=z[a+20>>2];z[b+92>>2]=c;z[b+88>>2]=g;z[b+84>>2]=d;z[b+80>>2]=c;z[b+76>>2]=g;z[b+72>>2]=f;z[b+68>>2]=c;z[b- -64>>2]=e;z[b+60>>2]=f;z[b+56>>2]=c;z[b+52>>2]=e;z[b+48>>2]=d}function oh(a,b){var c=0,d=0,e=0,f=0,g=0;a:{d=v[a+4>>2];b:{if(!d){break b}e=v[d+40>>2];if(!e){break b}f=v[d+36>>2];while(1){g=(c<<3)+f|0;if(w[g|0]!=1){c=c+1|0;if((e|0)!=(c|0)){continue}break b}break}c=(c<<3)+f|0;if(v[c+4>>2]){break a}}lh(a,1,b);return}c:{if(!b){b=e-1|0;v[d+40>>2]=b;b=(b<<3)+f|0;d=v[b+4>>2];v[g>>2]=v[b>>2];v[g+4>>2]=d;b=v[a+4>>2];if(v[b+40>>2]){break c}if(v[b+44>>2]>=0){Sm(v[37389],b)}v[a+4>>2]=0;return}v[c+4>>2]=b}}function Nb(a,b,c,d,e,f){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);f=C(f);var g=0;g=xa-48|0;xa=g;v[g+16>>2]=0;v[g+20>>2]=0;v[g+8>>2]=0;v[g+12>>2]=0;z[g+40>>2]=e;z[g+36>>2]=d;z[g+32>>2]=c;z[g+28>>2]=b;v[g+12>>2]=1056964608;if(f==C(-1)){c=C(F(C(C(c-b)*C(.49000000953674316)),C(.10000000149011612)));b=C(F(C(C(e-d)*C(.49000000953674316)),C(.10000000149011612)));f=(b>c?c:b)==C(-1)?C(1):C(0)}z[g+24>>2]=f;Ba[v[v[a>>2]+172>>2]](a,g+8|0);xa=g+48|0}function fu(a,b){var c=0,d=0,e=0,f=0;c=xa-16|0;xa=c;if(x[a+4>>1]>=2){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a>>2],x[a+4>>1]<<2)}a=x[a+4>>1];a:{if(a>>>0<2){break a}Ba[v[v[b>>2]+12>>2]](b,16);e=a&65534;f=a&1;a=0;while(1){v[c+12>>2]=-1;d=c+12|0;Ba[v[v[b>>2]+8>>2]](b,d,4);v[c+12>>2]=-1;Ba[v[v[b>>2]+8>>2]](b,d,4);a=a+2|0;if((e|0)!=(a|0)){continue}break}if(!f){break a}v[c+12>>2]=-1;Ba[v[v[b>>2]+8>>2]](b,c+12|0,4)}xa=c+16|0}function gp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;fp(a,(w[b|0]&8)>>>3|0);a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];e=c>>>24&15;f=v[((e<<2)+89188|0)+12>>2];b=w[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}t[d+8|0]=b;QE(a+f|0,d+8|0);break a}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],e);v[a+8>>2]=c}t[c|0]=b;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=d+16|0}function So(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;Ro(a,(w[b|0]&8)>>>3|0);a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];e=c>>>24&15;f=v[((e<<2)+89188|0)+12>>2];b=w[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}t[d+8|0]=b;QE(a+f|0,d+8|0);break a}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],e);v[a+8>>2]=c}t[c|0]=b;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=d+16|0}function Hr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if(!w[a+4801|0]){QP(a+32|0,b,c,d);return}e=(((b>>>0>>0?b:c)<<2)+a|0)+5296|0;v[e>>2]=v[e>>2]|1<<(b>>>0>c>>>0?b:c);e=1<>2]=e|v[f>>2];break a}f=((b<<2)+a|0)+5420|0;v[f>>2]=v[f>>2]&(e^-1)}b=1<>2]=b|v[c>>2];break b}c=((c<<2)+a|0)+5420|0;v[c>>2]=v[c>>2]&(b^-1)}a=a+5580|0;v[a>>2]=v[a>>2]|8}function Hj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;Fj(a,(w[b|0]&8)>>>3|0);a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];e=c>>>24&15;f=v[((e<<2)+89188|0)+12>>2];b=w[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}t[d+8|0]=b;QE(a+f|0,d+8|0);break a}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],e);v[a+8>>2]=c}t[c|0]=b;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=d+16|0}function Uc(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=maa(64);b=b+c|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;v[a+8>>2]=v[b+8>>2];u[a+12>>1]=x[b+12>>1];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];z[a+32>>2]=z[b+32>>2];z[a+36>>2]=z[b+36>>2];z[a+40>>2]=z[b+40>>2];c=v[b+48>>2];v[a+44>>2]=v[b+44>>2];v[a+48>>2]=c;c=v[b+56>>2];v[a+52>>2]=v[b+52>>2];v[a+56>>2]=c;v[a+60>>2]=v[b+60>>2];return a|0}function Ks(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=v[a+20>>2]-1|0;v[a+20>>2]=b;if(!b){v[a+20>>2]=v[a+20>>2]+1;b=0;t[a+92|0]=0;c=v[a+52>>2];if(c){f=a+60|0;while(1){e=v[a+48>>2]+(b<<2)|0;d=v[a+84>>2];a:{if(d>>>0>=(v[a+88>>2]&2147483647)>>>0){Ls(f,e);c=v[a+52>>2];break a}v[v[a+80>>2]+(d<<2)>>2]=v[e>>2];v[a+84>>2]=d+1}b=b+1|0;if(c>>>0>b>>>0){continue}break}}v[a+52>>2]=0;b=v[a+16>>2];b=Ba[v[v[b>>2]+4>>2]](b)|0;Ba[v[v[b>>2]>>2]](b,a)}}function vW(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0),n=C(0),o=C(0);b=v[b+4>>2];g=z[b- -64>>2];h=z[b+80>>2];i=z[b+84>>2];j=z[b+52>>2];k=z[b+68>>2];l=z[b+88>>2];c=v[b+152>>2]+B(c,12)|0;d=z[c+8>>2];m=z[b+56>>2];e=z[c>>2];n=z[b+72>>2];f=z[c+4>>2];o=z[b+48>>2];v[a+12>>2]=0;z[a+8>>2]=C(l*d)+C(C(m*e)+C(f*n));z[a+4>>2]=C(i*d)+C(C(j*e)+C(f*k));z[a>>2]=C(h*d)+C(C(o*e)+C(f*g))}function qE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=v[a+652>>2];e=(c<<15^-1)+c|0;e=B(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=v[v[a+660>>2]+((v[a+668>>2]-1&(e>>>16^e))<<2)>>2];if(v[f+(e<<3)>>2]!=(c|0)){g=v[a+656>>2];while(1){e=v[(e<<2)+g>>2];if(v[(e<<3)+f>>2]!=(c|0)){continue}break}}a=v[(v[a+644>>2]+B(v[((e<<3)+f|0)+4>>2],44)|0)+4>>2];b=v[v[a+16>>2]+(b<<2)>>2];v[d>>2]=v[a+8>>2]+B(b,24);return v[a+12>>2]+(b<<3)|0}function Is(a){a=a|0;var b=0,c=0;v[a>>2]=126184;b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+80>>2];if((b|0)==(a+60|0)){t[a+76|0]=0;break a}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+56>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+48>>2];if((b|0)==(a+28|0)|!b){break b}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}jaa(a)}function xu(a,b,c){var d=0;d=xa-16|0;xa=d;a:{if((v[b+4>>2]&-1073741824)!=-2147483648){break a}b:{if(c){c=Io(b,d+12|0,d+11|0);NP(a+16|0,v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0,v[d+12>>2],c,0,w[d+11|0]);break b}c=_o(b,d+12|0);LP(a+16|0,v[((v[b+4>>2]>>>22&60)+89188|0)+12>>2]+b|0,v[d+12>>2],c,0)}if(!c){break a}b=0;while(1){a=v[v[d+12>>2]+(b<<2)>>2]+16|0;v[a>>2]=v[a>>2]+1;b=b+1|0;if((c|0)!=(b|0)){continue}break}}xa=d+16|0}function c5(a){a=a|0;var b=C(0),c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0);c=xa-32|0;xa=c;Ba[v[v[a>>2]+40>>2]](c,a);b=z[c+12>>2];h=z[c+8>>2];i=z[c+4>>2];g=C(1);d=z[c>>2];if(d!=C(0)){e=C(C(1)/C(K(C(C(b*b)+C(C(C(d*d)+C(0))+C(0))))));g=C(b*e);f=C(e*C(0));e=C(d*e)}j=C(C(e*i)+C(C(C(h*g)-C(b*f))-C(d*f)));b=C(C(h*f)+C(C(i*f)+C(C(b*g)+C(d*e))));a=b>2]+40>>2]](c,a);b=z[c+12>>2];h=z[c+8>>2];i=z[c+4>>2];g=C(1);d=z[c>>2];if(d!=C(0)){e=C(C(1)/C(K(C(C(b*b)+C(C(C(d*d)+C(0))+C(0))))));g=C(b*e);f=C(e*C(0));e=C(d*e)}j=C(C(f*d)+C(C(C(i*g)-C(b*f))-C(h*e)));b=C(C(h*f)+C(C(i*f)+C(C(b*g)+C(d*e))));a=b>2];v[c+24>>2]=v[b+16>>2];v[c+28>>2]=d;d=v[b+12>>2];v[c+16>>2]=v[b+8>>2];v[c+20>>2]=d;d=v[b+4>>2];v[c+8>>2]=v[b>>2];v[c+12>>2]=d;f=z[a+36>>2];g=z[a+44>>2];e=C(z[a+532>>2]+z[a+52>>2]);A[c+16>>3]=A[c+16>>3]+ +C(e*z[a+40>>2]);A[c+24>>3]=A[c+24>>3]+ +C(e*g);A[c+8>>3]=A[c+8>>3]+ +C(f*e);a=Ba[v[v[a>>2]+12>>2]](a,c+8|0)|0;xa=c+32|0;return a|0}function $K(a,b,c,d){var e=0,f=0,g=0,h=0;h=a+316|0;if(y[a+320>>2]>>0){NK(h,d)}e=v[a+328>>2];if(e>>>0<=d>>>5>>>0){d=(d+128>>>5|0)+((d&31)!=0)|0;if(d){e=v[37696]+12|0;g=Ba[v[v[e>>2]+8>>2]](e,d<<2,24422,13489,855)|0;e=v[a+328>>2]}if(e){I9(g,v[a+324>>2],e<<2);f=v[a+328>>2]}if((d|0)!=(f|0)){J9((f<<2)+g|0,0,d-f<<2)}e=v[a+324>>2];if(e){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,e)}v[a+328>>2]=d;v[a+324>>2]=g}RK(a+224|0,b,c,h)}function qo(a,b){var c=C(0),d=C(0);a:{c=z[b+260>>2];a=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(a){a=a-16|0}else{a=0}d=z[a+5148>>2];a=c>2]?1:a)){break a}c=a?d:c;b:{c:{switch((v[b+4>>2]>>>30|0)-2|0){case 0:a=v[b>>2];if(w[a+4785|0]){break b}default:z[b+260>>2]=c;v[b+264>>2]=0;VG(b+16|0,c,1);return;case 1:break c}}a=v[b>>2]}z[b+260>>2]=c;v[b+264>>2]=0;Yu(a,b);v[b+268>>2]=v[b+268>>2]&-117440513|83886080}}function lg(a){a=a|0;v[a+96>>2]=0;v[a+72>>2]=1069547520;v[a+64>>2]=1092616192;v[a+68>>2]=1061997773;v[a+56>>2]=1036831949;v[a+60>>2]=1056964608;v[a+32>>2]=0;v[a+36>>2]=1065353216;v[a+48>>2]=0;v[a+52>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+76>>2]=0;v[a+80>>2]=0;v[a+104>>2]=0;v[a+108>>2]=0;v[a+112>>2]=0;t[a+92|0]=1;v[a+40>>2]=0;v[a+44>>2]=1060437492;v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+84>>2]=0;v[a+88>>2]=0}function _K(a,b,c,d){var e=0,f=0,g=0,h=0;h=a+316|0;if(y[a+320>>2]>>0){NK(h,d)}e=v[a+328>>2];if(e>>>0<=d>>>5>>>0){d=(d+128>>>5|0)+((d&31)!=0)|0;if(d){e=v[37696]+12|0;g=Ba[v[v[e>>2]+8>>2]](e,d<<2,24422,13489,855)|0;e=v[a+328>>2]}if(e){I9(g,v[a+324>>2],e<<2);f=v[a+328>>2]}if((d|0)!=(f|0)){J9((f<<2)+g|0,0,d-f<<2)}e=v[a+324>>2];if(e){f=v[37696]+12|0;Ba[v[v[f>>2]+12>>2]](f,e)}v[a+328>>2]=d;v[a+324>>2]=g}RK(a+96|0,b,c,h)}function Gf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=v[a+4>>2];if((c|0)!=v[a+8>>2]){v[c>>2]=v[b>>2];v[a+4>>2]=c+4;return}a:{g=v[a>>2];e=c-g|0;f=e>>2;c=f+1|0;if(c>>>0<1073741824){d=e>>1;d=e>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=maa(d<<2)}else{c=0}f=c+(f<<2)|0;v[f>>2]=v[b>>2];if((e|0)>0){I9(c,g,e)}v[a+8>>2]=c+(d<<2);v[a+4>>2]=f+4;v[a>>2]=c;if(g){jaa(g)}return}da();L()}Vf();L()}function fK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a:{b:{if(!v[a+48>>2]){break b}f=v[a+32>>2];e=5381;c=w[b|0];if(c){d=b;while(1){e=B(e,33)^c&255;c=w[d+1|0];d=d+1|0;if(c){continue}break}}c=v[v[a+24>>2]+((f-1&e)<<2)>>2];if((c|0)==-1){break b}e=v[a+20>>2];d=v[a+16>>2];while(1){if(!T9(v[d+(c<<3)>>2],b)){break a}c=v[e+(c<<2)>>2];if((c|0)!=-1){continue}break}}return Ba[v[v[a>>2]+28>>2]](a,0,b,1)|0}return v[(d+(c<<3)|0)+4>>2]}function zG(a){var b=0,c=0,d=0,e=0,f=0;c=xa-16|0;xa=c;b=v[37696];d=Ba[v[v[b>>2]+20>>2]](b)|0?37931:63804;e=a,f=Ba[v[v[b+12>>2]+8>>2]](b+12|0,28,d,16755,113)|0,v[e>>2]=f;b=xa-16|0;xa=b;xa=b+16|0;v[a+20>>2]=0;v[a+12>>2]=0;v[a+16>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;d=a+4|0;By(d,64);v[c+12>>2]=0;b=v[a+8>>2];a:{if(b>>>0>=(v[a+12>>2]&2147483647)>>>0){Vs(d,c+12|0);break a}v[v[a+4>>2]+(b<<2)>>2]=0;v[a+8>>2]=b+1}xa=c+16|0;return a}function Nu(a,b){var c=0,d=0;c=xa-16|0;xa=c;a:{if(!w[a+4785|0]){WP(a+16|0,v[b+16>>2]);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break a}d=a+5092|0;b:{c:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}v[b+4>>2]=a&1073741823;v[c+4>>2]=b;Pg(d,c+4|0);break a}v[b+4>>2]=a|-1073741824;if(a&268435456){break a}v[c+8>>2]=b;a=rh(d,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2]}xa=c+16|0}function vN(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=v[c+4624>>2];a:{if(!f){break a}a=x[a+34>>1];c=0;if(f-1>>>0>=3){j=f&-4;e=b<<1;while(1){g=c<<2;u[e+(g+d|0)>>1]=a;u[e+((g|4)+d|0)>>1]=a;u[e+((g|8)+d|0)>>1]=a;u[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){u[((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 In(a,b){var c=0,d=0,e=0,f=0,g=0;if(v[a+8>>2]){while(1){c=xa-16|0;xa=c;e=v[v[a+4>>2]+(f<<2)>>2]+16|0;d=x[b+52>>1];v[c+12>>2]=1;u[c+8>>1]=d;d=v[e+4772>>2];a:{if(d>>>0>=(v[e+4776>>2]&2147483647)>>>0){Ou(e+4768|0,c+8|0);break a}g=v[c+12>>2];d=v[e+4768>>2]+(d<<3)|0;v[d>>2]=v[c+8>>2];v[d+4>>2]=g;v[e+4772>>2]=v[e+4772>>2]+1}xa=c+16|0;f=f+1|0;if(f>>>0>2]){continue}break}}v[v[a+40>>2]+(x[b+52>>1]<<2)>>2]=b} +function f_(a){a=a|0;var b=0,c=0;a:{b=u[a+52>>1];c=b&32767;b=(((B(w[a+55|0],20)+(v[a+80>>2]&2147483647)|0)+B(w[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=xa-16|0;xa=b;c=v[a+128>>2];v[b+12>>2]=a;c=Pg(c+48|0,b+12|0);xa=b+16|0;if(!c){break a}}b=v[a>>2];c=v[a+128>>2];b:{if(t[a+6|0]&1){Ba[v[b+16>>2]](a);break b}Ba[v[b+12>>2]](a)|0}rV(c,a,2);return}b9(v[37696],8,10646,396,75120,0)}function Ju(a,b){var c=0,d=0;c=xa-16|0;xa=c;a:{if(!w[a+4785|0]){nP(a+16|0,b+12|0);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break a}d=a+4972|0;b:{c:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}v[b+4>>2]=a&1073741823;v[c+4>>2]=b;Pg(d,c+4|0);break a}v[b+4>>2]=a|-1073741824;if(a&268435456){break a}v[c+8>>2]=b;a=rh(d,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2]}xa=c+16|0}function k4(a,b,c,d){var e=0,f=0;f=xa-16|0;xa=f;v[f+12>>2]=c;e=c+d|0;a:{if(w[e|0]){break a}t[e|0]=1;e=v[a+4>>2];b:{if(e>>>0>=(v[a+8>>2]&2147483647)>>>0){pn(a,f+12|0);break b}v[v[a>>2]+(e<<2)>>2]=c;v[a+4>>2]=v[a+4>>2]+1}c=B(v[f+12>>2],12)+b|0;e=v[c>>2];if(!(e&536870912)){k4(a,b,e&536870911,d)}e=v[c+4>>2];if(!(e&536870912)){k4(a,b,e&536870911,d)}c=v[c+8>>2];if(c&536870912){break a}k4(a,b,c&536870911,d)}xa=f+16|0}function KE(a,b){var c=0;if((b|0)==2){t[a+140|0]=1;return}LE(a);c=v[a>>2];a:{if(b){if(!(!c|v[a+28>>2]!=1)){Ba[v[v[c>>2]+72>>2]](c,1)|0}c=v[a+36>>2];if(!c|v[a- -64>>2]!=1){break a}Ba[v[v[c>>2]+72>>2]](c,1)|0;break a}if(v[a+28>>2]==1){Ba[v[v[c>>2]+72>>2]](c,1)|0;c=v[a>>2]}Ba[v[v[c>>2]+16>>2]](c);c=v[a+36>>2];if(v[a- -64>>2]==1){Ba[v[v[c>>2]+72>>2]](c,1)|0;c=v[a+36>>2]}Ba[v[v[c>>2]+16>>2]](c)}t[a+140|0]=(b|0)!=0}function Hn(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=v[a+44>>2];while(1){i=d>>>0>>0?e:d;l=i+1|0;m=v[a+40>>2];a:{b:{while(1){if(f>>>0>=h>>>0){break b}while(1){c:{j=f+1|0;k=v[(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}v[(g<<2)+b>>2]=k;g=g+1|0;e=l;continue}}function oY(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=xa-16|0;xa=c;b=a+4|0;e=v[a+8>>2];if(e){while(1){f=v[b>>2]+B(d,12)|0;g=v[f>>2];if(g){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,g-4|0)}v[f>>2]=0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}uI(b,c);pY(b,v[a+8>>2]);v[a+16>>2]=0;v[a+20>>2]=0;b=v[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}a=v[a+4>>2];if(!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}xa=c+16|0}function oX(a,b,c,d){var e=0;e=xa-16|0;xa=e;a:{if(c){if(!b){break a}if(b&1){c=x[a>>1];u[e+14>>1]=c<<8|c>>>8;Ba[v[v[d>>2]>>2]](d,e+14|0,2)|0;a=a+2|0;c=b-1|0}else{c=b}if((b|0)==1){break a}while(1){b=x[a>>1];u[e+14>>1]=b<<8|b>>>8;Ba[v[v[d>>2]>>2]](d,e+14|0,2)|0;b=x[a+2>>1];u[e+14>>1]=b<<8|b>>>8;Ba[v[v[d>>2]>>2]](d,e+14|0,2)|0;a=a+4|0;c=c-2|0;if(c){continue}break}break a}Ba[v[v[d>>2]>>2]](d,a,b<<1)|0}xa=e+16|0}function cB(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=0;aB(a);a=v[a+24>>2];b=x[a+2>>1];if(b){e=a+b|0;f=w[a|0]==7?176:128;while(1){b=w[a+1|0];c=0;a=a+160|0;if(b){while(1){d=z[a+96>>2];z[a+96>>2]=d>C(0)?d:C(0);d=z[a+108>>2];z[a+108>>2]=d>C(0)?d:C(0);d=z[a+104>>2];z[a+104>>2]=d>C(0)?d:C(0);d=z[a+100>>2];z[a+100>>2]=d>C(0)?d:C(0);a=a+f|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}if(a>>>0>>0){continue}break}}}function bB(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=0;_A(a);a=v[a+24>>2];b=x[a+2>>1];if(b){e=a+b|0;f=w[a|0]==7?176:128;while(1){b=w[a+1|0];c=0;a=a+160|0;if(b){while(1){d=z[a+96>>2];z[a+96>>2]=d>C(0)?d:C(0);d=z[a+108>>2];z[a+108>>2]=d>C(0)?d:C(0);d=z[a+104>>2];z[a+104>>2]=d>C(0)?d:C(0);d=z[a+100>>2];z[a+100>>2]=d>C(0)?d:C(0);a=a+f|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}if(a>>>0>>0){continue}break}}}function Fy(a){var b=0,c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;e=B(1-v[a+124>>2]|0,12)+a|0;b=v[e+68>>2];v[a+152>>2]=v[a+152>>2]-b;if(b){f=e- -64|0;g=a+112|0;while(1){c=b-1|0;b=v[v[f>>2]+(c<<2)>>2];v[e+68>>2]=c;v[d+12>>2]=b;c=v[a+116>>2];a:{if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){Dy(g,d+12|0);break a}v[v[a+112>>2]+(c<<2)>>2]=b;v[a+116>>2]=c+1}b=v[e+68>>2];if(b){continue}break}}v[a+124>>2]=1-v[a+124>>2];xa=d+16|0}function rk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];e=c>>>24&15;f=v[((e<<2)+89188|0)+12>>2];b=w[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}t[d+8|0]=b;QE(a+f|0,d+8|0);break a}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],e);v[a+8>>2]=c}t[c|0]=b;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|1}xa=d+16|0}function gg(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=xa-32|0;xa=e;h=v[a+8>>2];a:{if(t[149544]&1){f=v[37385];break a}f=aa(4,114784)|0;t[149544]=1;v[37385]=f}a=maa(16);v[a>>2]=v[b>>2];v[a+4>>2]=v[b+4>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=v[b+12>>2];v[e+24>>2]=d;v[e+16>>2]=c;v[e+8>>2]=a;g=+fa(f|0,h|0,4937,e+4|0,e+8|0);ga(v[e+4>>2]);xa=e+32|0;if(g<4294967296&g>=0){a=~~g>>>0}else{a=0}return a|0}function Rx(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=C(0),l=C(0),m=C(0);b=a+112|0;qx(a,b,0);ux(b);g=v[b+336>>2];if(g>>>0>=2){i=v[b+340>>2];h=v[b+332>>2];d=v[h+16>>2];c=1;while(1){e=v[((c<<5)+h|0)+16>>2];j=z[e+20>>2];k=z[e+24>>2];l=z[d+20>>2];m=z[d+24>>2];f=B(c,160)+i|0;z[f+96>>2]=z[e+16>>2]-z[d+16>>2];z[f+104>>2]=k-m;z[f+100>>2]=j-l;c=c+1|0;if((g|0)!=(c|0)){continue}break}}rx(b);t[a+488|0]=0}function Mu(a,b){var c=0,d=0;c=xa-16|0;xa=c;a:{if(!w[a+4785|0]){rP(b+12|0);v[b>>2]=0;v[b+4>>2]=v[b+4>>2]&268435455;break a}d=a+5052|0;b:{c:{a=v[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}v[b+4>>2]=a&1073741823;v[c+4>>2]=b;Pg(d,c+4|0);break a}v[b+4>>2]=a|-1073741824;if(a&268435456){break a}v[c+8>>2]=b;a=rh(d,c+8|0,c+15|0);if(w[c+15|0]){break a}v[a>>2]=v[c+8>>2]}xa=c+16|0}function MB(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=v[b+12>>2];if(d){e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}v[b+12>>2]=0;d=v[c>>2];v[a+40>>2]=d;v[a+44>>2]=v[c+4>>2];c=v[37696];e=c+12|0;b=Saa(d,0,28,0);f=b+4|0;b=(h=e,i=Aa?-1:b>>>0>f>>>0?-1:f,j=Ba[v[v[c>>2]+20>>2]](c)|0?44527:63804,k=12118,l=209,g=v[v[e>>2]+8>>2],Ba[g](h|0,i|0,j|0,k|0,l|0)|0);v[b>>2]=d;b=b+4|0;v[a+8>>2]=b;a=a+12|0;IB(a,b);qY(a)}function zt(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==4){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;v[b>>2]=v[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];z[b+28>>2]=z[a+28>>2];v[b+32>>2]=v[a+32>>2];t[b+36|0]=w[a+36|0];c=w[a+37|0]|w[a+38|0]<<8;t[b+37|0]=c;t[b+38|0]=c>>>8;t[b+39|0]=w[a+39|0]}return(d|0)==4|0}function fl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+312>>2]=z[b>>2];z[a+316>>2]=z[b+4>>2];z[a+320>>2]=z[b+8>>2];return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+72>>2]=z[b>>2];z[c+76>>2]=z[b+4>>2];z[c+80>>2]=z[b+8>>2];Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|8}function _h(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{d=v[b+24>>2];if(d){b=xa-32|0;xa=b;d=v[d>>2];Ba[v[v[d>>2]+180>>2]](b,d,c);z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];xa=b+32|0;break a}v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}}function Tc(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+b|0;b=v[c+4>>2];v[a>>2]=v[c>>2];v[a+4>>2]=b;v[a+8>>2]=v[c+8>>2];u[a+12>>1]=x[c+12>>1];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[c+24>>2];z[a+28>>2]=z[c+28>>2];z[a+32>>2]=z[c+32>>2];z[a+36>>2]=z[c+36>>2];z[a+40>>2]=z[c+40>>2];b=v[c+48>>2];v[a+44>>2]=v[c+44>>2];v[a+48>>2]=b;b=v[c+56>>2];v[a+52>>2]=v[c+52>>2];v[a+56>>2]=b;v[a+60>>2]=v[c+60>>2]}function $h(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{d=v[b+24>>2];if(d){b=xa-32|0;xa=b;d=v[d>>2];Ba[v[v[d>>2]+184>>2]](b,d,c);z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];xa=b+32|0;break a}v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}}function mh(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=v[a+4>>2];if(!e){break a}f=v[e+36>>2];d=-1;g=v[e+40>>2];b:{if(!g){break b}d=0;while(1){h=(d<<3)+f|0;if(w[h|0]==(b|0)&v[h+4>>2]==(c|0)){break b}d=d+1|0;if((g|0)!=(d|0)){continue}break}d=-1}b=g-1|0;v[e+40>>2]=b;c=(d<<3)+f|0;b=(b<<3)+f|0;d=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=d;b=v[a+4>>2];if(v[b+40>>2]){break a}if(v[b+44>>2]>=0){Sm(v[37389],b)}v[a+4>>2]=0}}function c3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=xa-80|0;xa=a;if(!(!v[b+8>>2]|(!v[b+4>>2]|y[b>>2]<24))){d=a+24|0;v[d>>2]=0;v[d+4>>2]=0;v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;if(f3(d,b)){v[a+8>>2]=v[d>>2];v[a+12>>2]=v[d+16>>2];v[a+16>>2]=v[d+12>>2];v[a+4>>2]=v[d+8>>2];v[a>>2]=v[d+4>>2];v[d+16>>2]=0;v[d+8>>2]=0;v[d+12>>2]=0;v[d>>2]=0;v[d+4>>2]=0;e=Ba[v[v[c>>2]>>2]](c,17,a)|0}e3(d)}xa=a+80|0;return e|0}function eb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=xa-32|0;xa=d;e=v[b>>2];if(e>>>0<4294967280){a:{b:{if(e>>>0>=11){g=e+16&-16;f=maa(g);v[d+16>>2]=g|-2147483648;v[d+8>>2]=f;v[d+12>>2]=e;break b}t[d+19|0]=e;f=d+8|0;if(!e){break a}}I9(f,b+4|0,e)}t[e+f|0]=0;v[d>>2]=c;Ba[a|0](d+24|0,d+8|0,d);ca(v[d+24>>2]);a=v[d+24>>2];$(a|0);$(v[d>>2]);if(t[d+19|0]<0){jaa(v[d+8>>2])}xa=d+32|0;return a|0}da();L()}function Sj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;a=v[a+16>>2];a:{if(!a){break a}c=v[a+40>>2];if(!c){break a}d=v[a+36>>2];a=0;if(c-1>>>0>=3){g=c&-4;while(1){h=b;b=a<<3;b=(((h+!w[b+d|0]|0)+!w[(b|8)+d|0]|0)+!w[(b|16)+d|0]|0)+!w[(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=!w[(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 XB(a){a=a|0;var b=0,c=0;v[a>>2]=129560;a:{if(!(t[a+6|0]&1)){break a}b=v[a+32>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+36>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+44>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function Ei(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;a:{f=x[a+24>>1];c=f;if(!c){break a}d=a+20|0;if((c|0)!=1){h=c&65534;c=0;while(1){g=e<<2;Ba[v[v[b>>2]+8>>2]](b,v[g+(x[a+24>>1]==1?d:v[a+20>>2])>>2]);Ba[v[v[b>>2]+8>>2]](b,v[(g|4)+(x[a+24>>1]==1?d:v[a+20>>2])>>2]);e=e+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(f&1)){break a}Ba[v[v[b>>2]+8>>2]](b,v[(e<<2)+(x[a+24>>1]==1?d:v[a+20>>2])>>2])}}function k9(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=v[a+84>>2];f=Ba[v[v[f>>2]+8>>2]](f,b,c,d,e)|0;if(!f){a=v[a+88>>2];Ba[v[v[a>>2]+8>>2]](a,64,70339,16988,199);return 0}if(!(f&15)){if(v[a+76>>2]){while(1){h=v[v[a+72>>2]+(g<<2)>>2];Ba[v[v[h>>2]>>2]](h,b,c,d,e,f);g=g+1|0;if(g>>>0>2]){continue}break}}return f|0}a=v[a+88>>2];Ba[v[v[a>>2]+8>>2]](a,64,69731,16988,205);return 0}function TP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=xa-16|0;xa=d;b=v[37696];c=b+12|0;c=(f=c,g=1,h=Ba[v[v[b>>2]+20>>2]](b)|0?29519:63804,i=11777,j=5285,e=v[v[c>>2]+8>>2],Ba[e](f|0,g|0,h|0,i|0,j|0)|0);v[d+12>>2]=c;b=v[a+2288>>2];a:{if(b>>>0>=(v[a+2292>>2]&2147483647)>>>0){MO(a+2284|0,d+12|0);a=v[a+2288>>2];break a}v[v[a+2284>>2]+(b<<2)>>2]=c;c=a;a=b+1|0;v[c+2288>>2]=a}xa=d+16|0;return a-1&255}function Lj(a,b){a=a|0;b=b|0;var c=0;c=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(c){c=c-16|0}else{c=0}if(c){b9(v[37696],8,18994,196,66990,0);return}a:{b:{c:{a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];switch((c>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[a>>2]+4785|0]){break a}}t[(a+v[((c>>>22&60)+89188|0)+12>>2]|0)+7|0]=b;return}b9(v[37696],8,17384,173,20016,0)}function fI(a){var b=0,c=0,d=0;d=v[a+8>>2];if((d|0)!=v[a+32>>2]){v[a+32>>2]=d;b=v[a+28>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+24>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=(d<<3)+48|0;if(b){c=v[37696]+12|0;b=Ba[v[v[c>>2]+8>>2]](c,b,24422,8887,976)|0}else{b=0}v[a+24>>2]=b;d=d<<4;if(d){b=v[37696]+12|0;b=Ba[v[v[b>>2]+8>>2]](b,d,24422,8887,977)|0}else{b=0}v[a+28>>2]=b}}function Sg(a,b,c){var d=0,e=0,f=0,g=0;e=v[a+36>>2];if(e){a:{f=v[a+40>>2];b:{if(v[f>>2]==(b|0)){g=f;d=1;break b}while(1){d=d+1|0;if((e|0)==(d|0)){break a}g=f+(d<<2)|0;if(v[g>>2]!=(b|0)){continue}break}d=d>>>0>>0}e=e-1|0;v[a+36>>2]=e;v[g>>2]=v[f+(e<<2)>>2];f=(x[b+4>>1]<<2)+86240|0;g=v[f+72>>2];oh(v[f>>2]+b|0,0);su(a+8|0,b+g|0,c);return d}d=d>>>0>>0}b9(v[37696],2,11066,204,20902,0);return d}function Hy(a){var b=0,c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;e=B(1-v[a+136>>2]|0,12)+a|0;b=v[e+20>>2];v[a+152>>2]=v[a+152>>2]-b;if(b){f=a+112|0;while(1){c=b-1|0;b=v[v[e+16>>2]+(c<<2)>>2];v[e+20>>2]=c;v[d+12>>2]=b;c=v[a+116>>2];a:{if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){Dy(f,d+12|0);break a}v[v[a+112>>2]+(c<<2)>>2]=b;v[a+116>>2]=c+1}b=v[e+20>>2];if(b){continue}break}}v[a+136>>2]=1-v[a+136>>2];xa=d+16|0}function Ey(a){var b=0,c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;e=B(1-v[a+128>>2]|0,12)+a|0;b=v[e+44>>2];v[a+152>>2]=v[a+152>>2]-b;if(b){f=a+112|0;while(1){c=b-1|0;b=v[v[e+40>>2]+(c<<2)>>2];v[e+44>>2]=c;v[d+12>>2]=b;c=v[a+116>>2];a:{if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){Dy(f,d+12|0);break a}v[v[a+112>>2]+(c<<2)>>2]=b;v[a+116>>2]=c+1}b=v[e+44>>2];if(b){continue}break}}v[a+128>>2]=1-v[a+128>>2];xa=d+16|0}function zJ(a,b){var c=0,d=0,e=0,f=0,g=0;d=v[b+52>>2];c=v[a+28>>2];a:{if(d>>>0>=c>>>0){f=v[a+20>>2];break a}e=c-1|0;f=v[a+20>>2];if(!((e|0)==(d|0)|c>>>0>=f>>>0)){c=v[a+16>>2];g=v[c+(e<<2)>>2];v[c+(d<<2)>>2]=g;v[g+52>>2]=d;d=e}v[a+28>>2]=e}v[b+52>>2]=-1;v[b+44>>2]=v[b+44>>2]&-2097153;c=f-1|0;v[a+20>>2]=c;e=v[a+16>>2];b=d<<2;v[e+b>>2]=v[e+(c<<2)>>2];if(d>>>0>>0){v[v[b+v[a+16>>2]>>2]+52>>2]=d}}function Hg(a,b,c){var d=0,e=0,f=0;d=xa-16|0;xa=d;a=a-16|0;Ba[v[v[a>>2]+28>>2]](a,d+12|0,d+8|0);a=0;f=b;b=v[d+12>>2];e=0;a:{if(!b){break a}b:{switch(x[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}v[f>>2]=e;b=v[d+8>>2];c:{if(!b){break c}d:{switch(x[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}v[c>>2]=a;xa=d+16|0}function Dx(a,b,c){var d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;e=b+15&-16;f=v[a+4>>2];b=v[a+8>>2];g=v[(f+(b<<2)|0)-4>>2];a:{if((e|0)<=(g-v[a+16>>2]|0)){c=g-e|0;v[d+12>>2]=c;if(b>>>0>=(v[a+12>>2]&2147483647)>>>0){Vs(a+4|0,d+12|0);b=v[d+12>>2];break a}v[(b<<2)+f>>2]=c;v[a+8>>2]=b+1;b=v[d+12>>2];break a}b=0;if(!e|!c){break a}a=v[37696];b=Ba[v[v[a+12>>2]+8>>2]](a+12|0,e,24422,17461,99)|0}xa=d+16|0;return b}function up(a){a=a|0;var b=0,c=0,d=0,e=0;b=v[a+40>>2];v[a+40>>2]=b;if(b){b9(v[37696],8,5611,577,21757,0);return}b=0;a:{b:{d=v[a+8>>2];c=v[d+6028>>2];if(!c){break b}e=v[d+6024>>2];while(1){if(v[(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;v[d+6028>>2]=c;e=b<<2;b=v[d+6024>>2];v[e+b>>2]=v[b+(c<<2)>>2]}if(a){Ba[v[v[a>>2]+48>>2]](a)}}function Xp(a,b,c){var d=0;a:{if(!c){break a}d=Ba[v[v[b>>2]+20>>2]](b,4639)|0;b:{if(!d){break b}if(!(Ba[v[v[c>>2]+40>>2]](c)|0)){break b}d=d?b:0;if(Ba[v[v[c>>2]+40>>2]](c)>>>0<=Ba[v[v[d>>2]+92>>2]](d)>>>0){break a}}b9(v[37696],4,11709,371,66202,0);return}c:{switch(x[b+4>>1]-5|0){case 1:Yp(a,b,c,0);return;case 0:Zp(a,b,c,0);return;case 8:b9(v[37696],2,11709,400,22043,0);break;default:break c}}}function q5(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=0,j=0,k=C(0);f=z[b+12>>2];g=z[b+8>>2];h=z[b>>2];d=z[b+4>>2];i=v[b+20>>2];j=v[b+16>>2];e=v[a+80>>2];z[e+424>>2]=z[b+24>>2];v[e+416>>2]=j;v[e+420>>2]=i;k=d;d=C(C(1)/C(K(C(C(f*f)+C(C(g*g)+C(C(h*h)+C(d*d)))))));z[e+404>>2]=k*d;z[e+408>>2]=g*d;z[e+412>>2]=f*d;z[e+400>>2]=h*d;if(c){r5(a)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function iG(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&v[h+v[a+152>>2]>>2])){d=v[a+148>>2];c=(b>>>0)/(d>>>0)|0;i=v[v[v[a+128>>2]+(c<<2)>>2]+(b-B(c,d)<<2)>>2];e=v[a+104>>2];c=b<<1;d=v[a+124>>2];f=(c>>>0)/(d>>>0)|0;j=v[v[e+(f<<2)>>2]+(c-B(d,f)<<2)>>2];f=e;c=c|1;e=(c>>>0)/(d>>>0)|0;HF(a+168|0,i,j,v[v[f+(e<<2)>>2]+(c-B(d,e)<<2)>>2],b);a=v[a+152>>2]+h|0;v[a>>2]=v[a>>2]|g}}function Vm(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c>>>0<=16){if(!b){break a}v[a+288>>2]=v[a+288>>2]-1;v[b>>2]=v[a+296>>2];v[a+296>>2]=b;break a}if(c>>>0<=64){if(!b){break a}v[a+580>>2]=v[a+580>>2]-1;v[b>>2]=v[a+588>>2];v[a+588>>2]=b;break a}if(c>>>0<=256){if(!b){break a}v[a+872>>2]=v[a+872>>2]-1;v[b>>2]=v[a+880>>2];v[a+880>>2]=b;break a}if(!b){break a}a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}}function QT(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=xa-48|0;xa=c;Ba[v[v[a>>2]+136>>2]](a,c)|0;d=A[c+32>>3];e=A[c+24>>3];f=A[c>>3];g=A[c+8>>3];h=A[c+16>>3];i=A[c+40>>3];A[b+16>>3]=(h+i)*.5;A[b+8>>3]=(g+d)*.5;A[b>>3]=(f+e)*.5;z[b+32>>2]=C(i-h)*C(.5);z[b+28>>2]=C(d-g)*C(.5);z[b+24>>2]=C(e-f)*C(.5);z[b+36>>2]=z[a+20>>2];z[b+40>>2]=z[a+24>>2];z[b+44>>2]=z[a+28>>2];z[b+48>>2]=z[a+32>>2];xa=c+48|0}function vk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0),g=0;g=v[a+12>>2];d=xa-32|0;xa=d;e=z[a+4>>2];if(e!=C(0)){a=ZU(g,b);v[d+28>>2]=-2013265784;v[d+20>>2]=-2004353024;v[d+24>>2]=-2013231104;f=C(e*C(1.5));z[d+16>>2]=f;z[d+12>>2]=f;z[d+8>>2]=f;b=a;a=d+8|0;bV(b,a);b=ZU(g,c);v[d+28>>2]=-16776961;v[d+20>>2]=-65536;v[d+24>>2]=-16711936;z[d+16>>2]=e;z[d+12>>2]=e;z[d+8>>2]=e;bV(b,a)}xa=d+32|0}function tZ(a,b){var c=0,d=0,e=0,f=C(0),g=C(0),h=C(0);a:{d=v[a>>2];if((d|0)<=0){break a}c=a+4|0;e=c+B(d,12)|0;f=z[b+8>>2];g=z[b+4>>2];h=z[b>>2];while(1){if(!(C(D(C(C(f*z[c+8>>2])+C(C(h*z[c>>2])+C(g*z[c+4>>2])))))>C(.9998999834060669))){c=c+12|0;if(e>>>0>c>>>0){continue}break a}break}return}if(d>>>0<=255){v[a>>2]=d+1;a=B(d,12)+a|0;z[a+4>>2]=z[b>>2];z[a+8>>2]=z[b+4>>2];z[a+12>>2]=z[b+8>>2]}}function lp(a,b){a=a|0;b=b|0;var c=0;c=v[a+40>>2];v[a+40>>2]=c;if(c){b9(v[37696],8,5611,73,1481,0);return}c=v[b+4>>2];v[a+60>>2]=v[b>>2];v[a+64>>2]=c;c=v[b+44>>2];v[a+100>>2]=v[b+40>>2];v[a+104>>2]=c;c=v[b+36>>2];v[a+92>>2]=v[b+32>>2];v[a+96>>2]=c;c=v[b+28>>2];v[a+84>>2]=v[b+24>>2];v[a+88>>2]=c;c=v[b+20>>2];v[a+76>>2]=v[b+16>>2];v[a+80>>2]=c;c=v[b+12>>2];v[a+68>>2]=v[b+8>>2];v[a+72>>2]=c}function ai(a){a=a|0;var b=0,c=0;v[a>>2]=118268;Pm(v[37389],a);b=v[a+128>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+120>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a>>2]=118576;Pm(v[37389],a);b=v[a+104>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+96>>2];if((b|0)==(a+76|0)){t[a+92|0]=0;break b}if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function Qg(a,b,c,d){var e=0;e=xa-16|0;xa=e;a:{if((Ba[v[v[b>>2]+24>>2]](b)|0)!=2){ru(a+8|0,v[((x[b+4>>1]<<2)+86240|0)+72>>2]+b|0);Xp(c,b,d);break a}if(Ba[v[v[b>>2]+28>>2]](b)|0){break a}b=v[b+320>>2];if(Ba[v[v[b>>2]+76>>2]](b)|0){d=a+8|0;a=0;while(1){Ba[v[v[b>>2]+80>>2]](b,e+12|0,1,a)|0;ru(d,v[e+12>>2]+48|0);a=a+1|0;if(Ba[v[v[b>>2]+76>>2]](b)>>>0>a>>>0){continue}break}}jq(c,b)}xa=e+16|0}function pE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=v[a+652>>2];d=(c<<15^-1)+c|0;d=B(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=v[v[a+660>>2]+((v[a+668>>2]-1&(d>>>16^d))<<2)>>2];if(v[e+(d<<3)>>2]!=(c|0)){f=v[a+656>>2];while(1){d=v[(d<<2)+f>>2];if(v[(d<<3)+e>>2]!=(c|0)){continue}break}}a=v[(v[a+644>>2]+B(v[((d<<3)+e|0)+4>>2],44)|0)+4>>2];return v[a+12>>2]+(v[v[a+16>>2]+(b<<2)>>2]<<3)|0}function O9(a,b,c){var d=0,e=0,f=0;d=v[c+16>>2];a:{if(!d){if(N9(c)){break a}d=v[c+16>>2]}f=v[c+20>>2];if(d-f>>>0>>0){return Ba[v[c+36>>2]](c,a,b)|0}b:{if(v[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(w[e+a|0]!=10){continue}break}e=Ba[v[c+36>>2]](c,a,d)|0;if(e>>>0>>0){break a}a=a+d|0;b=b-d|0;f=v[c+20>>2]}I9(f,a,b);v[c+20>>2]=v[c+20>>2]+b;e=b+d|0}return e}function sW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=0,i=0,j=0,k=0;k=d;b=v[b+4>>2];d=b+56|0;e=z[c+8>>2];f=z[c>>2];h=b+52|0;g=z[c+4>>2];i=b+72|0;j=b+68|0;c=C(C(z[d>>2]*e)+C(C(z[b+48>>2]*f)+C(z[h>>2]*g)))>C(C(z[i>>2]*e)+C(C(z[b+64>>2]*f)+C(g*z[j>>2])));v[k>>2]=c;e=z[(c?b+48|0:b- -64|0)>>2];f=z[(c?h:j)>>2];g=z[(c?d:i)>>2];v[a+12>>2]=0;z[a+8>>2]=g;z[a+4>>2]=f;z[a>>2]=e}function mu(a,b,c){var d=0,e=0,f=0,g=0;e=xa-32|0;xa=e;d=v[a+16>>2];a:{if((d|0)!=-1){a=x[c+4>>1];Ba[v[v[c>>2]+76>>2]](e,c);c=v[b+72>>2];Ba[v[v[c>>2]+8>>2]](c,d,e);a=B((a&65527)==5,36)+b|0;v[a+32>>2]=v[a+32>>2]+1;break a}d=x[a+4>>1];if(!d){break a}g=a+8|0;c=0;while(1){f=v[(c<<2)+(x[a+12>>1]==1?g:v[a+8>>2])>>2];if((f|0)!=-1){GE(b,-1,f)}c=c+1|0;if((d|0)!=(c|0)){continue}break}}xa=e+32|0}function Eo(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=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[c>>2]+4785|0]){break a}}a=a- -64|0;b=b&65535;u[a+46>>1]=b;a=v[a>>2];if(a){u[a+94>>1]=b}return}d=v[a+56>>2];if(!d){d=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=d}u[d+136>>1]=b;Yu(v[a+48>>2],c);v[a+316>>2]=v[a+316>>2]|512}function E6(a){a=a|0;var b=0,c=0;v[a>>2]=145876;b=v[a+20>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+8>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b-v[b-4>>2]|0)}b=v[a+12>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a>>2]=145964;b=v[a+4>>2];if(v[b+16>>2]==1){v[b+16>>2]=2}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Cy(a,b){var c=0,d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;e=v[a+152>>2];if(e>>>0>>0){g=a+112|0;while(1){c=v[37696];f=Ba[v[v[c+12>>2]+8>>2]](c+12|0,16384,24422,10233,99)|0;v[d+12>>2]=f;c=v[a+116>>2];a:{if(c>>>0>=(v[a+120>>2]&2147483647)>>>0){Dy(g,d+12|0);break a}v[v[a+112>>2]+(c<<2)>>2]=f;v[a+116>>2]=c+1}v[a+140>>2]=v[a+140>>2]+1;e=e+1|0;if((e|0)!=(b|0)){continue}break}}xa=d+16|0}function bP(a,b,c){a:{b:{switch(c-8|0){case 0:if(!b){break a}v[a+380>>2]=v[a+380>>2]-1;v[b>>2]=v[a+388>>2];v[a+388>>2]=b;return;case 8:if(!b){break a}v[a+672>>2]=v[a+672>>2]-1;v[b>>2]=v[a+680>>2];v[a+680>>2]=b;return;case 24:if(!b){break a}v[a+964>>2]=v[a+964>>2]-1;v[b>>2]=v[a+972>>2];v[a+972>>2]=b;return;default:break b}}if(!b){break a}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}}function hs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=v[a+6340>>2];if(!(e>>>0>127|!w[e+150864|0])){d=v[(e<<2)+150992>>2]}if(!(!(d&16711680)|d>>>0>16777215)){b9(v[37696],8,b?b:11709,b?c:2766,69343,0);return}c=d+16777216|0;b=v[a+6340>>2];if(!(b>>>0>127|!w[b+150864|0])){v[(b<<2)+150992>>2]=c}if(d>>>0<=16777215){b=v[a+6348>>2];while(1){if(v[b+4>>2]){continue}break}}v[a+6344>>2]=151512}function VC(a,b){var c=C(0),d=C(0),e=C(0);while(1){c=z[b+4>>2];d=z[b+8>>2];e=z[b+12>>2];z[a+16>>2]=z[a+16>>2]-z[b>>2];z[a+28>>2]=z[a+28>>2]-e;z[a+24>>2]=z[a+24>>2]-d;z[a+20>>2]=z[a+20>>2]-c;c=z[b>>2];d=z[b+4>>2];e=z[b+8>>2];z[a+12>>2]=z[a+12>>2]-z[b+12>>2];z[a+8>>2]=z[a+8>>2]-e;z[a+4>>2]=z[a+4>>2]-d;z[a>>2]=z[a>>2]-c;if(v[a+40>>2]){VC(v[a+36>>2],b);a=v[a+40>>2];continue}break}}function AM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;vM((v[a>>2]<<5)+b|0,c,d);c=v[((v[a>>2]<<5)+b|0)+24>>2];if(!(!c|!v[c+4>>2])){a=c+640|0;b=0;while(1){z[a+112>>2]=v[a+352>>2]&4?z[a+112>>2]:C(0);z[a+124>>2]=v[a+364>>2]&4?z[a+124>>2]:C(0);z[a+120>>2]=v[a+360>>2]&4?z[a+120>>2]:C(0);z[a+116>>2]=v[a+356>>2]&4?z[a+116>>2]:C(0);a=a+368|0;b=b+1|0;if(b>>>0>2]){continue}break}}}function cV(a,b){var c=0,d=0,e=C(0),f=C(0),g=C(0),h=0,i=C(0);c=xa-32|0;xa=c;d=v[b>>2];v[a+32>>2]=0;v[a>>2]=2;if(d){g=C(C(6.2831854820251465)/C(d>>>0));d=0;while(1){f=z[b+4>>2];v[c+24>>2]=0;h=c,i=C(f*H9(e)),z[h+20>>2]=i;h=c,i=C(f*R9(e)),z[h+16>>2]=i;_U(a,c+16|0);e=C(g+e);d=d+1|0;if(d>>>0>2]){continue}break}}e=z[b+4>>2];v[c+8>>2]=0;z[c+4>>2]=e;v[c>>2]=0;_U(a,c);xa=c+32|0}function No(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=v[a+56>>2];e=w[(w[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=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[c>>2]+4785|0]){break a}}t[a+238|0]=b;return}if(!d){d=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=d}t[d+184|0]=b;Yu(v[a+48>>2],c);v[a+316>>2]=v[a+316>>2]|16384}function hy(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=128132;b=v[a+12>>2];if(b){while(1){d=v[v[a+8>>2]+(c<<2)>>2];if(d){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d);b=v[a+12>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}v[a+20>>2]=0;v[a+4>>2]=0;v[a+12>>2]=0;b=v[a+16>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+8>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function MV(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=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0),m=C(0);e=xa-16|0;xa=e;h=z[d+24>>2];i=z[d+20>>2];g=z[c+4>>2];j=z[d+16>>2];BV(e,f);l=h;h=z[e+8>>2];m=j;j=z[e>>2];k=i;i=z[e+4>>2];k=C(z[e+12>>2]+C(C(l*h)+C(C(m*j)+C(k*i))));c=g>2]=h;z[a+4>>2]=i;z[a>>2]=j;g=C(g-k);z[b>>2]=g>C(0)?g:C(0)}xa=e+16|0;return!c|0}function GP(a){var b=0,c=0,d=0,e=0,f=0;b=xa-16|0;xa=b;a:{if(!v[a+2344>>2]){break a}f=v[a+1244>>2];if(!f){break a}while(1){c=v[v[a+1240>>2]+(e<<2)>>2];if(v[c+60>>2]){v[b+12>>2]=-1;d=v[c+28>>2];d=Ba[v[v[d>>2]+20>>2]](d,b+12|0)|0;c=c+v[37425]|0;v[b+4>>2]=d;v[b>>2]=c;v[b+8>>2]=v[b+12>>2];c=v[a+2344>>2];Ba[v[v[c>>2]>>2]](c,b,1)}e=e+1|0;if((f|0)!=(e|0)){continue}break}}xa=b+16|0}function oZ(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=xa-48|0;xa=f;z[f+8>>2]=z[c>>2];z[f+12>>2]=z[c+4>>2];z[f+16>>2]=z[c+8>>2];z[f+20>>2]=z[d>>2];z[f+24>>2]=z[d+4>>2];z[f+28>>2]=z[d+8>>2];z[f+32>>2]=z[e>>2];z[f+36>>2]=z[e+4>>2];z[f+40>>2]=z[e+8>>2];c=a+8|0;b=v[b+8>>2];d=f+8|0;a=v[v[a+108>>2]+56>>2];if(a){a=w[a+b|0]}else{a=56}pZ(c,b,d,a);xa=f+48|0;return 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=0,h=0,i=0;g=xa-4256|0;xa=g;v[g+4200>>2]=-1;h=g+4200|0;lV(h,c);v[g+4144>>2]=-1;i=g+4144|0;lV(i,e);v[g+4136>>2]=0;v[g+4140>>2]=0;c=0;v[g+4112>>2]=0;v[g+8>>2]=1065353216;v[g>>2]=0;v[g+4>>2]=0;a:{if(!yZ(h,i,d,f,g,g+16|0)){break a}if(!RV(a,b,v[g+4112>>2],g+16|0)){break a}c=v[g+4112>>2]!=0}xa=g+4256|0;return c|0}function YU(a,b){z[a+36>>2]=z[b>>2];z[a+40>>2]=z[b+4>>2];z[a+44>>2]=z[b+8>>2];z[a+48>>2]=z[b+12>>2];z[a+52>>2]=z[b+16>>2];z[a+56>>2]=z[b+20>>2];z[a+60>>2]=z[b+24>>2];z[a- -64>>2]=z[b+28>>2];z[a+68>>2]=z[b+32>>2];z[a+72>>2]=z[b+36>>2];z[a+76>>2]=z[b+40>>2];z[a+80>>2]=z[b+44>>2];z[a+84>>2]=z[b+48>>2];z[a+88>>2]=z[b+52>>2];z[a+92>>2]=z[b+56>>2];z[a+96>>2]=z[b+60>>2];return a}function HP(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=xa-16|0;xa=c;b=v[a+980>>2];d=v[b+284>>2];g=v[b+280>>2];b=0;v[a+2508>>2]=0;if(d){h=a+2504|0;while(1){e=v[v[(b<<2)+g>>2]+32>>2];v[c+12>>2]=e;f=v[a+2508>>2];a:{if(f>>>0>=(v[a+2512>>2]&2147483647)>>>0){pn(h,c+12|0);break a}v[v[a+2504>>2]+(f<<2)>>2]=e;v[a+2508>>2]=v[a+2508>>2]+1}b=b+1|0;if((d|0)!=(b|0)){continue}break}}xa=c+16|0}function YG(a,b){var c=0;z[a+32>>2]=z[a+32>>2]-z[b>>2];z[a+36>>2]=z[a+36>>2]-z[b+4>>2];z[a+40>>2]=z[a+40>>2]-z[b+8>>2];c=v[a+176>>2];if(!(!c|!(t[a+44|0]&1)|!w[c+28|0])){z[c+16>>2]=z[c+16>>2]-z[b>>2];z[c+20>>2]=z[c+20>>2]-z[b+4>>2];z[c+24>>2]=z[c+24>>2]-z[b+8>>2]}a=v[a>>2];if(a){z[a+80>>2]=z[a+80>>2]-z[b>>2];z[a+84>>2]=z[a+84>>2]-z[b+4>>2];z[a+88>>2]=z[a+88>>2]-z[b+8>>2]}}function XT(a){a=a|0;var b=0;if(Ba[v[v[a>>2]+8>>2]](a)|0){while(1){YT(a,Ba[v[v[a>>2]+12>>2]](a,0)|0);if(Ba[v[v[a>>2]+8>>2]](a)|0){continue}break}}if(Ba[v[v[a>>2]+32>>2]](a)|0){while(1){b=v[v[a+120>>2]>>2];Ba[v[v[b>>2]+8>>2]](b);if(Ba[v[v[a>>2]+32>>2]](a)|0){continue}break}}b=v[a+8>>2];b=Ba[v[v[b>>2]+28>>2]](b)|0;Ba[v[v[b>>2]+136>>2]](b,a+4|0);Ba[v[v[a>>2]+72>>2]](a);e9()}function IV(a,b){var c=0,d=C(0),e=0,f=C(0),g=C(0),h=C(0),i=C(0),j=0;if(v[a+148>>2]){return kW(a,b)}e=w[a+156|0];if(e>>>0>=2){c=v[a+152>>2];f=z[b+8>>2];g=z[b>>2];h=z[b+4>>2];d=C(C(z[c+8>>2]*f)+C(C(z[c>>2]*g)+C(h*z[c+4>>2])));a=1;while(1){b=B(a,12)+c|0;i=C(C(z[b+8>>2]*f)+C(C(z[b>>2]*g)+C(h*z[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 HC(a,b){var c=0;c=v[b+36>>2];a:{if(!v[b+40>>2]){if(!c){break a}v[a+284>>2]=v[a+284>>2]-1;v[c>>2]=v[a+292>>2];v[a+292>>2]=c;break a}HC(a,c);HC(a,v[b+40>>2])}c=v[b+32>>2];if(!c){v[a+576>>2]=v[a+576>>2]-1;v[b>>2]=v[a+584>>2];v[a+584>>2]=b;return}b:{if(v[c+40>>2]!=(b|0)){break b}b=v[c+36>>2];if(!b){break b}v[a+576>>2]=v[a+576>>2]-1;v[b>>2]=v[a+584>>2];v[a+584>>2]=b}}function Qd(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=xa-48|0;xa=d;e=v[b+4>>2];b=v[b>>2];v[d+28>>2]=0;v[d+32>>2]=0;v[d+20>>2]=0;v[d+24>>2]=0;v[d+12>>2]=0;v[d+16>>2]=0;u[d+40>>1]=255;v[d+36>>2]=16711682;v[d+4>>2]=b;v[d>>2]=12;v[d+8>>2]=(e-b|0)/12;a=(g=a,h=d,i=Ba[v[v[c>>2]+148>>2]](c)|0,j=0,f=v[v[a>>2]+32>>2],Ba[f](g|0,h|0,i|0,j|0)|0);xa=d+48|0;return a|0}function iy(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=128132;b=v[a+12>>2];if(b){while(1){d=v[v[a+8>>2]+(c<<2)>>2];if(d){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,d);b=v[a+12>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}v[a+20>>2]=0;v[a+4>>2]=0;v[a+12>>2]=0;b=v[a+16>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+8>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}jaa(a)}function Ip(a){var b=0,c=0,d=0;b=v[a+8>>2];if(b){while(1){d=v[v[a+4>>2]+(c<<2)>>2];if(d){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,d);b=v[a+8>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}b=v[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+4>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}a=v[a>>2];if(a){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}}function IS(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0);c=v[b+444>>2];v[a>>2]=v[b+440>>2];v[a+4>>2]=c;c=v[b+460>>2];v[a+16>>2]=v[b+456>>2];v[a+20>>2]=c;c=v[b+452>>2];v[a+8>>2]=v[b+448>>2];v[a+12>>2]=c;e=z[b+44>>2];f=z[b+36>>2];d=C(C(z[b+536>>2]*C(.5))+C(z[b+52>>2]+z[b+532>>2]));A[a+8>>3]=A[a+8>>3]-+C(d*z[b+40>>2]);A[a>>3]=A[a>>3]-+C(f*d);A[a+16>>3]=A[a+16>>3]-+C(d*e)}function hh(a,b){var c=0,d=0,e=0;d=v[b+4>>2];a:{if(!v[a+4>>2]){break a}c=d+15&-16;v[a+4>>2]=c;e=v[c+36>>2];if(e){v[c+44>>2]=v[c+44>>2]|-2147483648}d=c+48|0;b:{if(!w[c+32|0]){if(!v[c+40>>2]){break b}if(!e){break a}v[c+36>>2]=d;d=(v[c+44>>2]<<3)+d|0;break a}v[c+36>>2]=c;if(v[c+40>>2]){break a}}v[a+4>>2]=0}c=v[d>>2];d=d+4|0;v[b+4>>2]=d;v[a>>2]=c?d:0;v[b+4>>2]=c+v[b+4>>2]}function vg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=xa-16|0;xa=c;b=x[b>>1];e=a+16|0;a:{b:{c:{d:{f=v[a+20>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(w[v[e>>2]+4785|0]){break b}}u[c+8>>1]=b;vH(a+28|0,c+8|0);break a}d=v[a+24>>2];if(!d){d=Qu(v[a+16>>2],f>>>24&15);v[a+24>>2]=d}u[d+16>>1]=b;Yu(v[a+16>>2],e);v[a+20>>2]=v[a+20>>2]|4}xa=c+16|0}function Yc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=maa(92);b=v[b>>2];c=v[c>>2];v[d+20>>2]=0;v[d+24>>2]=0;u[d+16>>1]=0;v[d+12>>2]=-1;v[d+4>>2]=0;v[d+8>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;t[d+84|0]=0;v[d+80>>2]=0;v[d+76>>2]=c;v[d+72>>2]=b;t[d+68|0]=0;v[d+52>>2]=0;v[d+44>>2]=2139095039;v[d+48>>2]=0;v[d+88>>2]=v[a>>2];v[a>>2]=0;v[d>>2]=114024;return d|0}function NT(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=C(0),g=C(0);c=xa-16|0;xa=c;e=b<=C(0);a:{if(e){break a}z[a+540>>2]=b;if(!v[a+432>>2]){break a}d=vU(a+8|0);v[c+12>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=3;Ba[v[v[d>>2]+44>>2]](d,c)|0;f=z[a+532>>2];g=z[a+536>>2];b=z[a+516>>2];z[c+12>>2]=z[a+540>>2]*b;z[c+8>>2]=g*b;z[c+4>>2]=f*b;Ba[v[v[d>>2]+36>>2]](d,c)}xa=c+16|0;return!e|0}function MT(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=C(0),g=C(0);c=xa-16|0;xa=c;e=b<=C(0);a:{if(e){break a}z[a+536>>2]=b;if(!v[a+432>>2]){break a}d=vU(a+8|0);v[c+12>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=3;Ba[v[v[d>>2]+44>>2]](d,c)|0;f=z[a+532>>2];g=z[a+536>>2];b=z[a+516>>2];z[c+12>>2]=z[a+540>>2]*b;z[c+8>>2]=g*b;z[c+4>>2]=f*b;Ba[v[v[d>>2]+36>>2]](d,c)}xa=c+16|0;return!e|0}function LT(a,b){a=a|0;b=C(b);var c=0,d=0,e=0,f=C(0),g=C(0);c=xa-16|0;xa=c;e=b<=C(0);a:{if(e){break a}z[a+532>>2]=b;if(!v[a+432>>2]){break a}d=vU(a+8|0);v[c+12>>2]=0;v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=3;Ba[v[v[d>>2]+44>>2]](d,c)|0;f=z[a+532>>2];g=z[a+536>>2];b=z[a+516>>2];z[c+12>>2]=z[a+540>>2]*b;z[c+8>>2]=g*b;z[c+4>>2]=f*b;Ba[v[v[d>>2]+36>>2]](d,c)}xa=c+16|0;return!e|0}function FC(a){var b=0;v[a+564>>2]=0;v[a+288>>2]=5120;v[a+292>>2]=0;v[a+280>>2]=256;v[a+284>>2]=0;v[a+268>>2]=a+8;t[a+264|0]=1;v[a+272>>2]=0;v[a+276>>2]=64;v[a+584>>2]=0;v[a+588>>2]=0;v[a+576>>2]=0;v[a+580>>2]=24576;v[a+568>>2]=64;v[a+572>>2]=256;v[a+560>>2]=a+300;t[a+556|0]=1;b=a+592|0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;return a}function VU(a,b){var c=0,d=0,e=0,f=0;if(w[a+32|0]){c=v[a+12>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+12>>2]=0;c=v[a+8>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+8>>2]=0;b=b<<2;if(b){c=v[37696]+12|0;e=a,f=Ba[v[v[c>>2]+8>>2]](c,b,24422,12516,76)|0,v[e+8>>2]=f;c=v[37696]+12|0;b=Ba[v[v[c>>2]+8>>2]](c,b,24422,12516,77)|0}else{b=0}v[a+12>>2]=b}}function EK(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=131596;if(v[a+8>>2]){while(1){c=b<<2;d=v[c+v[a+4>>2]>>2];Ba[v[v[d>>2]>>2]](d)|0;c=v[c+v[a+4>>2]>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}b=b+1|0;if(b>>>0>2]){continue}break}}b=v[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+4>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function IN(a,b,c,d,e,f){a=a|0;b=C(b);c=c|0;d=d|0;e=e|0;f=f|0;Ba[v[v[f>>2]+20>>2]](f);c=v[a+4>>2];J9(v[c+972>>2],0,v[c+976>>2]<<2);J9(v[c+984>>2],0,v[c+988>>2]<<2);v[c+1012>>2]=0;v[c+1004>>2]=0;v[c+1008>>2]=0;v[c+996>>2]=0;v[c+1e3>>2]=0;c=v[a+4>>2];v[c+1824>>2]=0;v[c+1828>>2]=0;v[c+1760>>2]=0;c=c+1752|0;v[c>>2]=0;v[c+4>>2]=0;Ba[v[v[a>>2]+132>>2]](a,b,v[a+28>>2],e)}function wU(a,b,c,d,e){var f=0,g=0;f=v[a+20>>2];if(f){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,f)}v[a+20>>2]=0;f=v[a+16>>2];if(f){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,f)}v[a+16>>2]=0;f=v[a+12>>2];if(f){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,f)}v[a+12>>2]=0;f=v[a>>2];if(f){g=v[37696]+12|0;Ba[v[v[g>>2]+12>>2]](g,f)}v[a+20>>2]=e;v[a+16>>2]=d;v[a+12>>2]=c;v[a>>2]=b}function Z8(a,b){var c=0,d=0,e=0,f=0;if(b){c=b<<2;if(c){d=v[37696];d=Ba[v[v[d+12>>2]+8>>2]](d+12|0,c,77785,16608,553)|0}else{d=0}}else{d=0}c=v[a+4>>2];if((c|0)>0){e=d+(c<<2)|0;f=v[a>>2];c=d;while(1){v[c>>2]=v[f>>2];f=f+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}if(v[a+8>>2]>=0){e=v[a>>2];if(e){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,e)}}v[a+8>>2]=b;v[a>>2]=d}function Daa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(oaa(a,v[b+8>>2],e)){if(!(v[b+28>>2]==1|v[b+4>>2]!=(c|0))){v[b+28>>2]=d}return}a:{if(!oaa(a,v[b>>2],e)){break a}if(!(v[b+16>>2]!=(c|0)&v[b+20>>2]!=(c|0))){if((d|0)!=1){break a}v[b+32>>2]=1;return}v[b+20>>2]=c;v[b+32>>2]=d;v[b+40>>2]=v[b+40>>2]+1;if(!(v[b+36>>2]!=1|v[b+24>>2]!=2)){t[b+54|0]=1}v[b+44>>2]=4}}function qg(a){a=a|0;var b=0,c=0,d=0;d=xa-16|0;xa=d;c=0;a:{if((v[a+20>>2]>>>30|0)-3>>>0<4294967294){break a}b=v[a+16>>2];c=0;if(!b){break a}c=b-16|0}$n(v[37393],a,0,1);b=v[a+8>>2];if(b){mh(b+v[(x[b+4>>1]<<2)+86240>>2]|0,0,a)}b=v[a+12>>2];if(b){mh(b+v[(x[b+4>>1]<<2)+86240>>2]|0,0,a)}b=a+16|0;if(c){v[d+12>>2]=a;Pg(c+5892|0,d+12|0);Ju(c+16|0,b)}tu(b);xa=d+16|0}function e4(a,b){v[a>>2]=0;v[a+4>>2]=0;t[a+32|0]=b;v[a+28>>2]=a+44;v[a+24>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+112>>2]=0;v[a+116>>2]=1065353216;v[a+108>>2]=0;v[a+144>>2]=0;v[a+148>>2]=1065353216;v[a+136>>2]=0;v[a+140>>2]=0;v[a+128>>2]=0;v[a+132>>2]=1065353216;v[a+120>>2]=0;v[a+124>>2]=0;u[a+80>>1]=0;return a}function y$(a,b,c){var d=C(0),e=C(0),f=C(0),g=C(0);v[a>>2]=b;d=z[c+16>>2];e=z[c+12>>2];f=z[c>>2];g=z[c+4>>2];z[a+12>>2]=C(z[c+8>>2]+z[c+20>>2])*C(.5);z[a+8>>2]=C(g+d)*C(.5);z[a+4>>2]=C(f+e)*C(.5);d=C(C(z[c+20>>2]-z[c+8>>2])*C(.5));e=C(d*d);d=C(C(z[c+12>>2]-z[c>>2])*C(.5));f=C(d*d);d=C(C(z[c+16>>2]-z[c+4>>2])*C(.5));z[a+16>>2]=K(C(e+C(f+C(d*d))));return 1}function MG(a,b){var c=0,d=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+32>>2]=z[b>>2];z[c+36>>2]=z[b+4>>2];z[c+40>>2]=z[b+8>>2];break a}z[a+128>>2]=z[b>>2];z[a+132>>2]=z[b+4>>2];z[a+136>>2]=z[b+8>>2];a=v[a>>2];if(!a){break a}b=v[v[a+40>>2]+1012>>2];c=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(c|0)==2,d+8|0)}xa=d+16|0}function M4(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;v[a+28>>2]=0;v[a+12>>2]=0;v[a+8>>2]=c;v[a+4>>2]=b;v[a+32>>2]=0;v[a+36>>2]=0;v[a>>2]=145092;v[a+40>>2]=0;v[a+44>>2]=0;d=v[37696];e=d+12|0;d=(g=e,h=320,i=Ba[v[v[d>>2]+20>>2]](d)|0?38977:63804,j=13134,k=1809,f=v[v[e>>2]+8>>2],Ba[f](g|0,h|0,i|0,j|0,k|0)|0);A4(d,c,b);v[a+32>>2]=d;C4(d,v[b+8>>2]);return a}function Fb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);var g=0,h=C(0);g=xa-32|0;xa=g;h=z[c>>2];v[g+8>>2]=0;v[g+12>>2]=0;v[g>>2]=0;v[g+4>>2]=0;z[g+24>>2]=d;z[g+20>>2]=e;if(f==C(-1)){f=C(h*C(.009999999776482582));d=C(C(e*C(.49000000953674316))+C(d*C(-.49000000953674316)));f=d>f?f:d}z[g+16>>2]=f;z[g+4>>2]=h+h;Ba[v[v[a>>2]+148>>2]](a,b,g);xa=g+32|0}function O1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=C(0),i=C(0);a=v[a+48>>2];e=z[b+8>>2];f=z[b>>2];h=z[b+4>>2];g=C(C(z[a+56>>2]*e)+C(C(z[a+48>>2]*f)+C(z[a+52>>2]*h)));i=C(C(z[a+72>>2]*e)+C(C(z[a- -64>>2]*f)+C(z[a+68>>2]*h)));e=C(C(z[a+88>>2]*e)+C(C(z[a+80>>2]*f)+C(z[a+84>>2]*h)));a=i>e;f=a?i:e;z[d>>2]=f>2]=e>2]=140724;b=v[a+72>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+80>>2]=0}b=v[a+76>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+76>>2]=0}b=v[a+84>>2];if(b){b=l1(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+84>>2]=0}return vV(a)|0}function OH(a){var b=0,c=0,d=0,e=0,f=0;c=v[a+24>>2];d=v[c- -64>>2];b=v[c+60>>2];if(b){f=!(t[v[b+44>>2]+44|0]&1)}e=d?!(t[v[d+44>>2]+44|0]&1):e;a:{b:{if(!(y[b+152>>2]<4294967294?b:0)){if(!d|!(f|e)){break b}b=0;if(y[d+152>>2]>=4294967294){break b}break a}b=0;if(f|e){break a}}if((w[c+68|0]&6)==6){tP(v[v[a>>2]+40>>2],c)}t[a+21|0]=w[a+21|0]&223;b=1}return b}function Lw(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=v[a+468>>2];if((b|0)==-1){b=0;e=v[a+448>>2];a:{if(e>>>0>=2){c=1;while(1){d=v[a+456>>2]+B(c,80)|0;Hw(d,v[(v[a+444>>2]+(c<<5)|0)+20>>2],1);v[d+72>>2]=b;f=w[d+79|0]+f|0;b=w[d+76|0]+b|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}if(v[a+468>>2]==(b|0)){break a}}Cw(a+112|0,b)}v[a+468>>2]=b;v[a+472>>2]=f}return b|0}function Jj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;c=v[a+4>>2];d=c>>>24&15;e=v[((d<<2)+89188|0)+12>>2];a:{b:{switch((c>>>30|0)-2|0){case 0:if(w[v[a>>2]+4785|0]){break a}break;case 1:break a;default:break b}}RE(a+e|0,b);return}c=v[a+8>>2];if(!c){c=Qu(v[a>>2],d);v[a+8>>2]=c}t[c+1|0]=b;Yu(v[a>>2],a);v[a+4>>2]=v[a+4>>2]|2}function Ya(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;i=xa-48|0;xa=i;v[i+24>>2]=v[c>>2];v[i+28>>2]=v[c+4>>2];v[i+32>>2]=v[c+8>>2];v[i+36>>2]=v[c+12>>2];v[i+8>>2]=v[e>>2];v[i+12>>2]=v[e+4>>2];v[i+16>>2]=v[e+8>>2];v[i+20>>2]=v[e+12>>2];Ba[a|0](i+40|0,b,i+24|0,d,i+8|0,f,g,h);a=maa(2);u[a>>1]=x[i+40>>1];xa=i+48|0;return a|0}function dI(a){var b=0,c=0;b=v[a+28>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+28>>2]=0;b=v[a+24>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+24>>2]=0;b=v[a+16>>2];if(b){Ba[v[v[b>>2]+4>>2]](b);v[a+16>>2]=0}b=v[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}a=v[a+4>>2];if(!a){break a}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}}function Sr(a,b,c){a=a|0;b=b|0;c=C(c);var d=0;if((b|0)>=24){b9(v[37696],4,11709,2477,67091,0);return 0}if(c>2]+(b<<2)|0)+1032>>2]=c;if(!b){z[d+2656>>2]=c}return 1}d=a+5152|0;t[(d+b|0)+96|0]=1;z[d+(b<<2)>>2]=c;a=a+5580|0;v[a>>2]=v[a>>2]|32;return 1}function tO(a,b){var c=0,d=0,e=C(0),f=C(0),g=C(0);c=xa-16|0;xa=c;d=v[a+36>>2];if(z[d+124>>2]!=C(0)){f=z[d+20>>2];g=z[d+24>>2];e=C(C(1)-b);z[a+16>>2]=C(e*z[a+16>>2])+C(z[d+16>>2]*b);z[a+24>>2]=C(e*z[a+24>>2])+C(g*b);z[a+20>>2]=C(e*z[a+20>>2])+C(f*b);s9(c,b,a,d);z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+12>>2]=z[c+12>>2]}xa=c+16|0}function fs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=0;c=v[a+6340>>2];if(!(c>>>0>127|!w[c+150864|0])){b=v[(c<<2)+150992>>2]}d=b+65536&16711680|b&-16711681;c=v[a+6340>>2];if(!(c>>>0>127|!w[c+150864|0])){v[(c<<2)+150992>>2]=d}if(!(b&16711680)){a:{c=a+6348|0;b=v[c>>2];if(v[a+6344>>2]!=151512){a=v[c>>2];v[a+4>>2]=v[a+4>>2]+1;break a}v[b+4>>2]=v[b+4>>2]+1}}}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=v[a+84>>2];f=v[e+4>>2];g=v[a+28>>2];d=v[a+20>>2]-g|0;d=d>>>0>f>>>0?f:d;if(d){I9(v[e>>2],g,d);v[e>>2]=d+v[e>>2];f=v[e+4>>2]-d|0;v[e+4>>2]=f}d=v[e>>2];f=c>>>0>f>>>0?f:c;if(f){I9(d,b,f);d=f+v[e>>2]|0;v[e>>2]=d;v[e+4>>2]=v[e+4>>2]-f}t[d|0]=0;b=v[a+44>>2];v[a+28>>2]=b;v[a+20>>2]=b;return c|0}function OT(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0);c=v[b+452>>2];v[a+8>>2]=v[b+448>>2];v[a+12>>2]=c;c=v[b+444>>2];v[a>>2]=v[b+440>>2];v[a+4>>2]=c;c=v[b+460>>2];v[a+16>>2]=v[b+456>>2];v[a+20>>2]=c;e=z[b+44>>2];f=z[b+36>>2];d=C(z[b+532>>2]+z[b+52>>2]);A[a+8>>3]=A[a+8>>3]-+C(d*z[b+40>>2]);A[a>>3]=A[a>>3]-+C(f*d);A[a+16>>3]=A[a+16>>3]-+C(d*e)}function yaa(a,b,c,d){t[a+53|0]=1;a:{if(v[a+4>>2]!=(c|0)){break a}t[a+52|0]=1;c=v[a+16>>2];b:{if(!c){v[a+36>>2]=1;v[a+24>>2]=d;v[a+16>>2]=b;if((d|0)!=1){break a}if(v[a+48>>2]==1){break b}break a}if((b|0)==(c|0)){c=v[a+24>>2];if((c|0)==2){v[a+24>>2]=d;c=d}if(v[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}v[a+36>>2]=v[a+36>>2]+1}t[a+54|0]=1}}function ph(a){var b=0,c=0,d=0,e=0,f=0;e=xa-16|0;xa=e;a=v[a+4>>2];if(a){f=v[a+36>>2];a=v[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(w[b|0]){continue}break}c=v[b+4>>2];if(!c){break a}b=ng(c);if(!b){continue}v[e+12>>2]=c;Pg(b+5892|0,e+12|0);Ju(b+16|0,c+16|0);continue}break}xa=e+16|0}function ns(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=xa-16|0;xa=e;f=a+32|0;v[f+2300>>2]=0;v[e+12>>2]=0;a=f+2296|0;if((v[a+8>>2]&2147483647)>>>0>>0){Lm(a,c)}d=v[a+4>>2];if((d|0)<(c|0)){g=v[a>>2];h=g+(c<<2)|0;d=(d<<2)+g|0;while(1){v[d>>2]=v[e+12>>2];d=d+4|0;if(h>>>0>d>>>0){continue}break}}v[a+4>>2]=c;I9(v[f+2296>>2],b,c<<2);xa=e+16|0}function zb(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);var f=0,g=C(0);f=xa-32|0;xa=f;g=z[b>>2];v[f+8>>2]=0;v[f+12>>2]=0;v[f>>2]=0;v[f+4>>2]=0;z[f+24>>2]=c;z[f+20>>2]=d;if(e==C(-1)){e=C(g*C(.009999999776482582));c=C(C(d*C(.49000000953674316))+C(c*C(-.49000000953674316)));e=c>e?e:c}z[f+16>>2]=e;z[f+4>>2]=g+g;Ba[v[v[a>>2]+128>>2]](a,f);xa=f+32|0}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,h=0,i=0,j=0;e=xa-48|0;xa=e;v[e+28>>2]=0;v[e+32>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;v[e+12>>2]=0;v[e+16>>2]=0;u[e+40>>1]=255;v[e+8>>2]=c;v[e+36>>2]=16711682;v[e+4>>2]=b;v[e>>2]=12;a=(g=a,h=e,i=Ba[v[v[d>>2]+148>>2]](d)|0,j=0,f=v[v[a>>2]+32>>2],Ba[f](g|0,h|0,i|0,j|0)|0);xa=e+48|0;return a|0}function jI(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=v[a>>2];e=Ba[v[v[c>>2]+8>>2]](c,d,16608,553)|0}f=v[a+4>>2];c=v[a+8>>2];if((c|0)>0){g=(c<<2)+e|0;d=f;c=e;while(1){v[c>>2]=v[d>>2];d=d+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|v[a+12>>2]<0)){c=v[a>>2];Ba[v[v[c>>2]+12>>2]](c,f)}v[a+12>>2]=b;v[a+4>>2]=e}function hd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=maa(76);b=v[b>>2];c=v[c>>2];v[d+20>>2]=0;v[d+24>>2]=0;u[d+16>>1]=0;v[d+12>>2]=-1;v[d+4>>2]=0;v[d+8>>2]=0;v[d+28>>2]=0;v[d+32>>2]=0;v[d+36>>2]=0;v[d+40>>2]=0;t[d+68|0]=0;v[d+64>>2]=0;v[d+60>>2]=c;v[d+56>>2]=b;t[d+52|0]=0;v[d+44>>2]=2139095039;v[d+72>>2]=v[a>>2];v[a>>2]=0;v[d>>2]=114344;return d|0}function Cg(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+16|0;a:{b:{c:{e=v[a+20>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+84>>2]=b;a=v[a+88>>2];if(a){z[a+44>>2]=b}return}c=v[a+24>>2];if(!c){c=Qu(v[a+16>>2],e>>>24&15);v[a+24>>2]=c}z[c+20>>2]=b;Yu(v[a+16>>2],d);v[a+20>>2]=v[a+20>>2]|8}function si(a){a=a|0;var b=0,c=0;if(v[a+100>>2]){while(1){Xk(v[v[a+96>>2]+(b<<2)>>2]+48|0);b=b+1|0;if(b>>>0>2]){continue}break}}b=a+12|0;t[a+72|0]=1;v[a+68>>2]=0;a:{b:{switch((v[a+16>>2]>>>30|0)-2|0){case 0:c=v[b>>2];if(w[c+4785|0]){break a}default:v[a+56>>2]=0;return;case 1:break b}}c=v[b>>2]}Yu(c,b);v[a+16>>2]=v[a+16>>2]&-897|384}function rW(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);b=v[b+4>>2];d=z[b+56>>2];e=z[b+52>>2];f=z[b+72>>2];g=z[b+68>>2];h=z[b+48>>2];i=z[c+8>>2];j=z[c+4>>2];k=z[c>>2];l=z[b+64>>2];v[a+12>>2]=0;b=C(C(d*i)+C(C(h*k)+C(e*j)))>C(C(f*i)+C(C(l*k)+C(j*g)));z[a+8>>2]=b?d:f;z[a+4>>2]=b?e:g;z[a>>2]=b?h:l}function WS(a,b){a=a|0;b=b|0;var c=0;c=xa-32|0;xa=c;if(!(!(z[a+36>>2]!=z[b>>2]|z[a+40>>2]!=z[b+4>>2])&z[a+44>>2]==z[b+8>>2])){v[c+8>>2]=0;v[c>>2]=1065353216;v[c+4>>2]=0;p9(c+16|0,c,b);z[a+20>>2]=z[c+16>>2];z[a+24>>2]=z[c+20>>2];z[a+28>>2]=z[c+24>>2];z[a+32>>2]=z[c+28>>2];z[a+36>>2]=z[b>>2];z[a+40>>2]=z[b+4>>2];z[a+44>>2]=z[b+8>>2]}xa=c+32|0}function A4(a,b,c){v[a+28>>2]=0;v[a+32>>2]=-1;v[a+4>>2]=c;v[a>>2]=b;J9(a+36|0,0,69);v[a+260>>2]=0;v[a+264>>2]=0;v[a+252>>2]=-1082130432;v[a+256>>2]=-1082130432;v[a+268>>2]=0;v[a+272>>2]=0;v[a+276>>2]=0;v[a+280>>2]=0;v[a+284>>2]=0;v[a+288>>2]=0;v[a+292>>2]=0;v[a+296>>2]=0;v[a+300>>2]=0;v[a+304>>2]=0;v[a+308>>2]=0;v[a+312>>2]=0;v[a+316>>2]=0}function yH(a){var b=0,c=0;b=v[a+60>>2];if(b){a=v[b+60>>2];a:{b:{if(a){a=v[a+164>>2];if(a){break b}}a=v[b- -64>>2];if(!a){break a}a=v[a+164>>2];if(!a){break a}}IH(v[v[b+48>>2]+1136>>2],a,b)}if(!(w[b+68|0]&8)){MH(v[b+56>>2])}c=v[b+56>>2];if(c){a=v[v[b+48>>2]+2408>>2];v[a+280>>2]=v[a+280>>2]-1;v[c>>2]=v[a+288>>2];v[a+288>>2]=c}v[b+56>>2]=0}}function gq(a,b){var c=0,d=0,e=0;e=v[b>>2];d=a+5936|0;c=v[d>>2]-1|0;v[d>>2]=c;d=v[a+5932>>2];v[d+(e<<2)>>2]=v[(c<<2)+d>>2];a:{if(!c){break a}e=c;c=v[b>>2];if((e|0)==(c|0)){break a}b:{c:{a=v[v[a+5932>>2]+(c<<2)>>2];switch(Ba[v[v[a>>2]+24>>2]](a)|0){case 1:break b;case 0:break c;default:break a}}v[a+44>>2]=v[b>>2];return}v[a+44>>2]=v[b>>2]}}function FF(a,b){var c=0,d=0,e=0,f=0;e=xa-16|0;xa=e;v[e+12>>2]=b;c=v[a+60>>2];d=(b>>>0)/(c>>>0)|0;c=v[v[a+40>>2]+(d<<2)>>2]+(b-B(c,d)<<4)|0;d=x[c+4>>1];a:{if(d&2){break a}f=v[a+340>>2];if(f>>>0>=(v[a+344>>2]&2147483647)>>>0){pn(a+336|0,e+12|0);d=x[c+4>>1];break a}v[v[a+336>>2]+(f<<2)>>2]=b;v[a+340>>2]=v[a+340>>2]+1}u[c+4>>1]=d|2;xa=e+16|0}function rV(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;a:{e=v[a+172>>2];if(!e){break a}if((e|0)!=1){i=e&-2;while(1){d=f<<2;g=v[d+v[a+168>>2]>>2];Ba[v[v[g>>2]+8>>2]](g,b,c);d=v[v[a+168>>2]+(d|4)>>2];Ba[v[v[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=v[v[a+168>>2]+(f<<2)>>2];Ba[v[v[a>>2]+8>>2]](a,b,c)}}function Vj(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;b=b>C(0)?C(C(1)/b):C(0);d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}LG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+92>>2]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|1}function Jl(a,b,c){a=a|0;b=C(b);c=C(c);var d=0,e=0,f=0;e=a+8|0;a:{b:{c:{f=v[a+12>>2];switch((f>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[e>>2]+4785|0]){break a}}gF(a+20|0,b,c);return}d=v[a+16>>2];if(!d){d=Qu(v[a+8>>2],f>>>24&15);v[a+16>>2]=d}z[d+152>>2]=c;z[d+148>>2]=b;Yu(v[a+8>>2],e);v[a+12>>2]=v[a+12>>2]|262144}function Bl(a,b,c){a=a|0;b=C(b);c=C(c);var d=0,e=0,f=0;e=a+8|0;a:{b:{c:{f=v[a+12>>2];switch((f>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[e>>2]+4785|0]){break a}}eF(a+20|0,b,c);return}d=v[a+16>>2];if(!d){d=Qu(v[a+8>>2],f>>>24&15);v[a+16>>2]=d}z[d+144>>2]=c;z[d+140>>2]=b;Yu(v[a+8>>2],e);v[a+12>>2]=v[a+12>>2]|131072}function paa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=xa+-64|0;xa=e;d=1;a:{if(oaa(a,b,0)){break a}d=0;if(!b){break a}b=qaa(b,109860);d=0;if(!b){break a}d=e+8|0;J9(d|4,0,52);v[e+56>>2]=1;v[e+20>>2]=-1;v[e+16>>2]=a;v[e+8>>2]=b;Ba[v[v[b>>2]+28>>2]](b,d,v[c>>2],1);a=v[e+32>>2];if((a|0)==1){v[c>>2]=v[e+24>>2]}d=(a|0)==1}xa=e- -64|0;return d|0}function mS(a,b){var c=0,d=0;d=v[b+36>>2];v[b+36>>2]=-1;c=v[a>>2];b=d<<2;v[c+b>>2]=v[(c+(v[a+4>>2]<<2)|0)-4>>2];c=v[a+24>>2];v[c+b>>2]=v[(c+(v[a+28>>2]<<2)|0)-4>>2];c=v[a+12>>2];v[c+b>>2]=v[(c+(v[a+16>>2]<<2)|0)-4>>2];c=v[a+4>>2];if((c|0)!=(d+1|0)){v[v[b+v[a>>2]>>2]+36>>2]=d}v[a+4>>2]=c-1;v[a+16>>2]=v[a+16>>2]-1;v[a+28>>2]=v[a+28>>2]-1}function Q9(a,b){a:{if((b|0)>=1024){a=a*898846567431158e293;if(b>>>0<2047){b=b-1023|0;break a}a=a*898846567431158e293;b=((b|0)<3069?b:3069)-2046|0;break a}if((b|0)>-1023){break a}a=a*2004168360008973e-307;if(b>>>0>4294965304){b=b+969|0;break a}a=a*2004168360008973e-307;b=((b|0)>-2960?b:-2960)+1938|0}l(0,0);l(1,b+1023<<20);return a*+n()}function C3(a,b,c,d,e){var f=0,g=0,h=0;a=v[a+24>>2];a:{if((b+1|0)!=(c|0)){while(1){f=a?a+36|0:0;g=(c-b>>>1|0)+b|0;b:{if(v[a+24>>2]){C3(a,b,g,d,e);break b}v[(b<<2)+d>>2]=a;v[e>>2]=v[e>>2]+1}h=1;b=g+1|0;a=v[f+24>>2];if(!a){c=b;break a}if((g+2|0)!=(c|0)){continue}break}}h=2;v[(b<<2)+d>>2]=a;f=a?a+36|0:0}v[(c<<2)+d>>2]=f;v[e>>2]=v[e>>2]+h}function BP(a,b,c){var d=0;d=xa-16|0;xa=d;v[d+4>>2]=c;v[d>>2]=b;v[d+8>>2]=v[b+48>>2];v[d+12>>2]=v[c+48>>2];b=v[a+2424>>2];a:{if(b>>>0>=(v[a+2428>>2]&2147483647)>>>0){AP(a+2420|0,d);break a}c=v[d+4>>2];b=v[a+2420>>2]+(b<<4)|0;v[b>>2]=v[d>>2];v[b+4>>2]=c;c=v[d+12>>2];v[b+8>>2]=v[d+8>>2];v[b+12>>2]=c;v[a+2424>>2]=v[a+2424>>2]+1}xa=d+16|0}function Ad(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=xa-16|0;xa=d;f=v[a>>2];v[d+8>>2]=0;v[d>>2]=0;v[d+4>>2]=0;a:{a=v[c+4>>2];c=v[c>>2];if((a|0)!=(c|0)){a=a-c|0;if((a|0)<0){break a}e=maa(a);v[d>>2]=e;v[d+8>>2]=(a>>2<<2)+e;g=d,h=I9(e,c,a)+a|0,v[g+4>>2]=h}Ba[f|0](b,d);a=v[d>>2];if(a){v[d+4>>2]=a;jaa(a)}xa=d+16|0;return}da();L()}function $q(a,b){a=a|0;b=b|0;a:{b:{switch(x[b+4>>1]-5|0){case 1:ar(b,b+48|0,0,0);return;case 0:a=b+48|0;if(!ar(b,a,0,0)|t[(w[b+317|0]&64?v[b+56>>2]+268|0:b+108|0)|0]&1){break a}qo(b,a);return;case 8:if(!ar(b,b+48|0,0,0)){break a}a=v[b+320>>2];dj(Ba[v[v[a>>2]+100>>2]](a)|0,0,1);return;default:break b}}b9(v[37696],4,11709,1767,73217,0)}}function Ag(a,b,c){a=a|0;b=C(b);c=C(c);var d=0,e=0,f=0;e=a+16|0;a:{b:{c:{f=v[a+20>>2];switch((f>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[e>>2]+4785|0]){break a}}xH(a+28|0,b,c);return}d=v[a+24>>2];if(!d){d=Qu(v[a+16>>2],f>>>24&15);v[a+24>>2]=d}z[d+12>>2]=c;z[d+8>>2]=b;Yu(v[a+16>>2],e);v[a+20>>2]=v[a+20>>2]|2}function xH(a,b,c){var d=0,e=0;z[a+52>>2]=c;z[a+48>>2]=b;a=v[a+60>>2];if(a){d=w[a+68|0];e=b>2]+21|0]&32)){break a}sP(v[a+48>>2],a);break a}if(d&4){tP(v[a+48>>2],a);d=w[a+68|0]}t[a+68|0]=d&253}z[a+4>>2]=c;z[a>>2]=b}}function p4(a){a=a|0;var b=0,c=0;v[a>>2]=144984;b=v[a+48>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+40>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+36>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+28>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function fd(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=maa(48);b=b+c|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;v[a+8>>2]=v[b+8>>2];u[a+12>>1]=x[b+12>>1];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2];z[a+28>>2]=z[b+28>>2];z[a+32>>2]=z[b+32>>2];z[a+36>>2]=z[b+36>>2];z[a+40>>2]=z[b+40>>2];v[a+44>>2]=v[b+44>>2];return a|0}function ZM(a){a=a|0;var b=0,c=0,d=0,e=0;b=xa-16|0;xa=b;v[b+12>>2]=0;v[b+8>>2]=0;HM(v[a+28>>2],v[a+32>>2],v[a+36>>2],v[a+40>>2],v[a+44>>2],v[a+48>>2],v[a+52>>2],v[a+56>>2],z[a+60>>2],b+12|0,b+8|0);d=v[a+64>>2];c=v[d>>2];e=d;d=v[b+12>>2];v[e>>2]=(c|0)>(d|0)?c:d;c=v[a+68>>2];a=v[c>>2];d=c;c=v[b+8>>2];v[d>>2]=(a|0)>(c|0)?a:c;xa=b+16|0}function BV(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0),j=C(0),k=C(0),l=C(0);j=z[b+24>>2];k=z[b+20>>2];l=z[b+16>>2];c=z[b>>2];e=C(c+c);d=z[b+8>>2];h=z[b+4>>2];f=z[b+12>>2];g=C(f+f);i=C(C(e*d)-C(h*g));z[a+8>>2]=i;d=C(C(d*g)+C(e*h));z[a+4>>2]=d;c=C(C(c*e)+C(C(f*g)+C(-1)));z[a>>2]=c;z[a+12>>2]=-C(C(j*i)+C(C(l*c)+C(k*d)))}function Go(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;b=C(G(b,C(0)));d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+172>>2]=b;return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+132>>2]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|256}function DF(a,b){var c=0;c=xa-16|0;xa=c;v[c+8>>2]=b;b=b>>>7|0;a:{if(v[(v[a+16>>2]+B(b,24)|0)+16>>2]){break a}b=v[a+28>>2]+(b<<2)|0;if(v[b>>2]!=33554431){break a}v[b>>2]=v[a+140>>2];b=v[a+140>>2];if(b>>>0>=(v[a+144>>2]&2147483647)>>>0){ZF(a+136|0,c+8|0);break a}v[v[a+136>>2]+(b<<2)>>2]=v[c+8>>2];v[a+140>>2]=v[a+140>>2]+1}xa=c+16|0}function m5(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+268>>2]=v[b>>2];v[c+272>>2]=d;v[c+300>>2]=v[b+32>>2];d=v[b+28>>2];v[c+292>>2]=v[b+24>>2];v[c+296>>2]=d;d=v[b+20>>2];v[c+284>>2]=v[b+16>>2];v[c+288>>2]=d;d=v[b+12>>2];v[c+276>>2]=v[b+8>>2];v[c+280>>2]=d;t[v[a+80>>2]+479|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function g3(a){var b=0,c=0;b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+20>>2]=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+16>>2]=0;b=v[a+4>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;return a}function ii(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=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[c>>2]+4785|0]){break a}}u[a+40>>1]=b;return}d=v[a+20>>2];if(!d){d=Qu(v[a+12>>2],e>>>24&15);v[a+20>>2]=d}u[d+20>>1]=b;Yu(v[a+12>>2],c);v[a+16>>2]=v[a+16>>2]|32}function NI(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=v[a+48>>2];if(w[c+60|0]){eI(c)}c=v[a+52>>2];if(w[c+60|0]){eI(c);c=v[a+52>>2]}a=v[a+48>>2];d=v[a+8>>2];g=v[a+4>>2];h=v[a+24>>2];a=v[a+28>>2];i=v[c+8>>2];j=v[c+4>>2];k=v[c+24>>2];c=v[c+28>>2];LI(b,f,d,g,h,a,i,j,k,c,e);MI(b,f,i,j,k,c,d,g,h,a,e)}function uj(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;b=C(b*b);a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}QG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+120>>2]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|32}function sj(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;b=C(b*b);a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}PG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+116>>2]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|16}function hk(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;b=C(-b);a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+156>>2]=b;return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+172>>2]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|2048}function LP(a,b,c,d,e){var f=0,g=0,h=0,i=0;h=v[a+2388>>2];g=v[h+12>>2]+B(v[h+8>>2],12)|0;f=v[g+4>>2];a:{if(f){v[g+4>>2]=v[f>>2];break a}b:{f=v[g+8>>2];if((f|0)==v[h>>2]){break b}i=v[h+4>>2];v[g+8>>2]=f+1;g=v[g>>2];if(!g){break b}f=g+B(f,i)|0;break a}f=NO(h)}b=UJ(f,a,b);v[b>>2]=138660;v[a+2664>>2]=v[a+2664>>2]+1;IP(a,c,d,b,e)}function Bt(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==6){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;v[b>>2]=v[a>>2];c=v[a+8>>2];v[b+4>>2]=v[a+4>>2];v[b+8>>2]=c;c=v[a+16>>2];v[b+12>>2]=v[a+12>>2];v[b+16>>2]=c;t[b+20|0]=w[a+20|0];t[b+23|0]=w[a+23|0];a=w[a+21|0]|w[a+22|0]<<8;t[b+21|0]=a;t[b+22|0]=a>>>8}return(d|0)==6|0}function lo(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0),g=C(0),h=C(0);c=xa-32|0;xa=c;e=z[b+12>>2];f=z[b+8>>2];g=z[b>>2];h=z[b+4>>2];d=C(C(1)/C(K(C(C(e*e)+C(C(f*f)+C(C(g*g)+C(h*h)))))));z[c+12>>2]=e*d;z[c+8>>2]=f*d;z[c+4>>2]=h*d;z[c>>2]=g*d;z[c+16>>2]=z[b+16>>2];z[c+20>>2]=z[b+20>>2];z[c+24>>2]=z[b+24>>2];mo(a,c);xa=c+32|0}function Mo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+48|0;b=w[b|0];a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}t[a+238|0]=b;return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}t[c+184|0]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|16384}function i_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;z[b>>2]=z[a+88>>2];z[c>>2]=z[a+92>>2];z[c+4>>2]=z[a+96>>2];z[c+8>>2]=z[a+100>>2];z[c+12>>2]=z[a+104>>2];z[c+16>>2]=z[a+108>>2];z[c+20>>2]=z[a+112>>2];z[c+24>>2]=z[a+116>>2];z[c+28>>2]=z[a+120>>2];z[c+32>>2]=z[a+124>>2];z[d>>2]=z[a+40>>2];z[d+4>>2]=z[a+44>>2];z[d+8>>2]=z[a+48>>2]}function hq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a:{if((Ba[v[v[b>>2]+28>>2]](b)|0)!=(a|0)){a=v[37696];v[d>>2]=4692;b9(a,8,11709,79,75385,d);break a}b:{switch(Ba[v[v[b>>2]+24>>2]](b)|0){case 0:cq(a,b,c,1);break a;case 1:dq(a,b,c,1);break a;case 2:break b;default:break a}}b9(v[37696],2,11709,689,22124,0)}xa=d+16|0}function Bi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;a:{c=v[a+100>>2];if(!c){break a}if((c|0)!=1){g=c&-2;while(1){e=d<<2;Ba[v[v[b>>2]+8>>2]](b,v[e+v[a+96>>2]>>2]);Ba[v[v[b>>2]+8>>2]](b,v[v[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}Ba[v[v[b>>2]+8>>2]](b,v[v[a+96>>2]+(d<<2)>>2])}}function Wd(a){a=a|0;var b=0,c=C(0),d=0;b=maa(48);c=z[a>>2];v[b+4>>2]=976715828;v[b+8>>2]=0;t[b+11|0]=0;t[b+12|0]=0;t[b+13|0]=0;t[b+14|0]=0;z[b>>2]=c*C(c*C(.05999999865889549));d=v[a>>2];a=v[a+4>>2];v[b+24>>2]=0;v[b+28>>2]=0;v[b+16>>2]=d;v[b+20>>2]=a;v[b+40>>2]=0;v[b+44>>2]=32;v[b+32>>2]=1057803469;v[b+36>>2]=0;return b|0}function NH(a){var b=0,c=0,d=0,e=0,f=0,g=0;c=v[a+24>>2];d=v[c- -64>>2];f=1;g=1;e=v[c+60>>2];if(e){g=y[e+152>>2]<4294967294}f=d?y[d+152>>2]<4294967294:f;b=e?!(t[v[e+44>>2]+44|0]&1):b;b=(f|g)&(!(d?t[v[d+44>>2]+44|0]&1:1)|b);a:{if(!b){break a}t[a+21|0]=w[a+21|0]|32;if((w[c+68|0]&6)!=2){break a}sP(v[v[a>>2]+40>>2],c)}return b}function KS(a,b){var c=C(0),d=0,e=0,f=0,g=0,h=0,i=0,j=C(0),k=C(0);d=A[a+440>>3];j=z[a+36>>2];e=A[a+448>>3];k=z[a+40>>2];f=A[a+456>>3];c=z[a+536>>2];g=+C(C(c*z[a+44>>2])*C(.5));A[b+40>>3]=f+g;h=+C(C(c*k)*C(.5));A[b+32>>3]=e+h;i=+C(C(c*j)*C(.5));A[b+24>>3]=d+i;A[b+16>>3]=f-g;A[b+8>>3]=e-h;A[b>>3]=d-i;z[b+48>>2]=z[a+532>>2]}function v9(a){var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;a:{if(!a){break a}a=a-16|0;b=v[a>>2];if(b>>>0>=17){b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a);break a}d=b-8|0;if(d>>>0>=y[v[37696]+248>>2]){e=v[37696];v[c+12>>2]=0;Y8(e+244|0,b-7|0,c+12|0)}b=d<<2;v[a>>2]=v[b+v[v[37696]+244>>2]>>2];v[b+v[v[37696]+244>>2]>>2]=a}xa=c+16|0}function KA(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=xa-48|0;xa=a;v[a+20>>2]=g;v[a+12>>2]=f;v[a+24>>2]=i;g=0;v[a+16>>2]=0;if(e){while(1){c=(g<<3)+d|0;f=(v[c>>2]<<5)+b|0;Ba[v[(w[v[f+24>>2]]<<2)+j>>2]](f,x[c+4>>1],a+8|0);g=g+1|0;if((g|0)!=(e|0)){continue}break}}v[h>>2]=0;xa=a+48|0}function yU(a){a=a|0;var b=0,c=0;v[a>>2]=140412;wU(a+28|0,0,0,0,0);b=v[a+24>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+16>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+12>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+4>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function eC(a){var b=0,c=0;b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+16>>2]=0;b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+20>>2]=0}function yo(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}XG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+176>>2]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|4096}function jk(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}UG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+180>>2]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|8192}function br(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:{b:{switch(x[b+4>>1]-5|0){case 1:ar(b,b+48|0,c,d);return;case 0:a=b+48|0;if(!ar(b,a,c,d)|t[(w[b+317|0]&64?v[b+56>>2]+268|0:b+108|0)|0]&1){break a}qo(b,a);return;case 8:break b;default:break a}}if(!ar(b,b+48|0,c,d)){break a}a=v[b+320>>2];dj(Ba[v[v[a>>2]+100>>2]](a)|0,0,1)}}function gs(a){a=a|0;var b=0,c=0,d=0;b=v[a+6340>>2];if(!(b>>>0>127|!w[b+150864|0])){c=v[(b<<2)+150992>>2]}b=c>>>16|0;if(!(b&255)){b9(v[37696],8,11709,2749,69570,0);return}d=c&-16711681;c=b-1&255;d=d|c<<16;b=v[a+6340>>2];if(!(b>>>0>127|!w[b+150864|0])){v[(b<<2)+150992>>2]=d}if(!c){a=v[a+6348>>2];v[a+4>>2]=v[a+4>>2]-1}}function $Q(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=xa-48|0;xa=c;d=v[a+28>>2];a=v[v[d+976>>2]+1024>>2];Ba[v[v[a>>2]+84>>2]](c+8|0,a);b=v[d+980>>2];a=v[b+332>>2];if(a){b=v[b+328>>2];f=(v[d+2360>>2]&8)!=0;while(1){a=a-1|0;e=v[b+8>>2];if(!(!e|w[e+24|0])){oJ(v[d+2168>>2],e,4,0,c+8|0,f)}b=b+12|0;if(a){continue}break}}xa=c+48|0}function wo(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}WG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+124>>2]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|64}function fk(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+140>>2]=b;return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+128>>2]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|128}function hT(a){v[a>>2]=0;v[a+4>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;t[a+59|0]=1;t[a+60|0]=0;v[a+8>>2]=0;v[a+12>>2]=0;v[a+16>>2]=1065353216;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;t[a+51|0]=0;t[a+52|0]=0;t[a+53|0]=0;t[a+54|0]=0;t[a+55|0]=0;t[a+56|0]=0;t[a+57|0]=0;t[a+58|0]=0;return a}function Ti(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}OG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+112>>2]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|8}function Ri(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=v[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}NG(a- -64|0,b);return}c=v[a+56>>2];if(!c){c=Qu(v[a+48>>2],e>>>24&15);v[a+56>>2]=c}z[c+108>>2]=b;Yu(v[a+48>>2],d);v[a+316>>2]=v[a+316>>2]|4}function KN(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;Ba[v[v[a>>2]+28>>2]](a,v[e+b>>2],0,0);Ba[v[v[a>>2]+28>>2]](a,v[(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}Ba[v[v[a>>2]+28>>2]](a,v[(d<<2)+b>>2],0,0)}}function Jy(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;a:{if(!b){break a}c=v[37696];b=Ba[v[v[c+12>>2]+8>>2]](c+12|0,b,24422,10233,250)|0;v[d+12>>2]=b;if(!b){break a}c=v[a+104>>2];b:{if(c>>>0>=(v[a+108>>2]&2147483647)>>>0){Vs(a+100|0,d+12|0);break b}v[v[a+100>>2]+(c<<2)>>2]=b;v[a+104>>2]=c+1}e=v[d+12>>2]}xa=d+16|0;return e}function qP(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=v[37696];e=d+12|0;e=(g=e,h=28,i=Ba[v[v[d>>2]+20>>2]](d)|0?37547:63804,j=11777,k=1766,f=v[v[e>>2]+8>>2],Ba[f](g|0,h|0,i|0,j|0,k|0)|0);d=v[b>>2];c=v[c>>2];b=UH(e,d,c,5,0);v[b+24>>2]=a;YP(b);VE(v[b>>2],b);VE(v[b+4>>2],b);pG(v[d+160>>2],c,d,b);v[v[b+24>>2]>>2]=b}function Y3(a){a=a|0;var b=0,c=0,d=0;v[a+16>>2]=140672;v[a>>2]=144868;c=a+16|0;a:{if(t[a+196|0]&1){break a}b=v[a+200>>2];if(!b){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b-v[b-4>>2]|0);v[a+200>>2]=0}tV(c);v[a>>2]=144804;b=v[a+4>>2];if(b){b=g3(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=0;return a|0}function sl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}cF(a+20|0,b);return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}v[c+136>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|524288}function pl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}hF(a+20|0,b);return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+124>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|16384}function Ve(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);d=maa(40);a=v[a>>2];c=w[c|0];v[d>>2]=4;z[d+4>>2]=z[b>>2];z[d+8>>2]=z[b+4>>2];z[d+12>>2]=z[b+8>>2];z[d+16>>2]=z[b+12>>2];z[d+20>>2]=z[b+16>>2];z[d+24>>2]=z[b+20>>2];e=z[b+24>>2];t[d+37|0]=0;t[d+38|0]=0;t[d+36|0]=c;v[d+32>>2]=a;z[d+28>>2]=e;t[d+39|0]=0;return d|0}function Re(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);d=maa(40);a=v[a>>2];c=w[c|0];v[d>>2]=5;z[d+4>>2]=z[b>>2];z[d+8>>2]=z[b+4>>2];z[d+12>>2]=z[b+8>>2];z[d+16>>2]=z[b+12>>2];z[d+20>>2]=z[b+16>>2];z[d+24>>2]=z[b+20>>2];e=z[b+24>>2];t[d+33|0]=0;t[d+34|0]=0;t[d+32|0]=c;z[d+28>>2]=e;t[d+35|0]=0;v[d+36>>2]=a;return d|0}function Q2(a,b){a=a|0;b=b|0;var c=0;c=v[b+4>>2];v[a+4>>2]=v[b>>2];v[a+8>>2]=c;c=v[b+20>>2];v[a+20>>2]=v[b+16>>2];v[a+24>>2]=c;c=v[b+12>>2];v[a+12>>2]=v[b+8>>2];v[a+16>>2]=c;v[a+28>>2]=v[b+24>>2];v[a+48>>2]=v[b+44>>2];c=v[b+40>>2];v[a+40>>2]=v[b+36>>2];v[a+44>>2]=c;c=v[b+32>>2];v[a+32>>2]=v[b+28>>2];v[a+36>>2]=c}function Fl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+348>>2]=b;return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+120>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|8192}function Dl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+344>>2]=b;return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+116>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|4096}function zl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+336>>2]=b;return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+104>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|512}function zh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=xa-16|0;xa=e;d=w[a+73|0];d=c?d|b:d&(b^-1);t[a+73|0]=d;b=a+12|0;a:{b:{c:{switch((v[a+16>>2]>>>30|0)-2|0){case 0:c=v[b>>2];if(w[c+4785|0]){break b}default:t[e+8|0]=d;ZE(a+24|0,e+8|0);break a;case 1:break c}}c=v[b>>2]}Yu(c,b);v[a+16>>2]=v[a+16>>2]|524288}xa=e+16|0}function xl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+332>>2]=b;return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+100>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|256}function nl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}fF(a+20|0,b);return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+108>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|1024}function ni(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+52>>2]=b;return}c=v[a+20>>2];if(!c){c=Qu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}z[c+24>>2]=b;Yu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|64}function li(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+48>>2]=b;return}c=v[a+20>>2];if(!c){c=Qu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}z[c+16>>2]=b;Yu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|16}function hl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}t[a+354|0]=b;return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}v[c+132>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|65536}function Zl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+288>>2]=b;return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+96>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|128}function UJ(a,b,c){var d=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a+44>>2]=c;v[a+40>>2]=b;v[a>>2]=130400;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[c>>2]=a;v[a>>2]=131380;b=v[b+2372>>2];c=v[b+12>>2];if(c){c=c-1|0;d=v[v[b+8>>2]+(c<<2)>>2];v[b+12>>2]=c;v[a+48>>2]=d;return a}c=b;b=v[b+4>>2];v[c+4>>2]=b+1;v[a+48>>2]=b;return a}function TG(a,b,c){var d=0;d=v[a+176>>2];if(d){if(c){z[a+140>>2]=z[d+44>>2];z[a+128>>2]=z[d+32>>2];z[a+132>>2]=z[d+36>>2];z[a+136>>2]=z[d+40>>2];z[a+120>>2]=z[d+48>>2];z[a+124>>2]=z[d+52>>2];z[a+112>>2]=z[d+56>>2];z[a+116>>2]=z[d+60>>2]}v[b+280>>2]=v[b+280>>2]-1;v[d>>2]=v[b+288>>2];v[b+288>>2]=d;v[a+176>>2]=0}}function Ll(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}t[a+353|0]=b;return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}t[c+128|0]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|32768}function Lk(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+44>>2]=b;return}c=v[a+20>>2];if(!c){c=Qu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}z[c+12>>2]=b;Yu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|8}function vl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+272>>2]=b;return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+92>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|64}function pt(a,b){a=a|0;b=b|0;var c=0,d=0;a:{b:{c:{d:{c=a+48|0;switch(v[c+68>>2]-5|0){case 1:break c;case 0:break d;default:break a}}Ba[v[v[b>>2]+12>>2]](b,16);d=c+120|0;c=c+116|0;break b}Ba[v[v[b>>2]+12>>2]](b,16);d=c+100|0;c=c+96|0}Ba[v[v[b>>2]+8>>2]](b,v[c>>2],x[d>>1]<<1)}Ba[v[v[b>>2]+16>>2]](b,v[a+192>>2])}function ll(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+328>>2]=b;return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+88>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|32}function jl(a,b){a=a|0;b=C(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}z[a+324>>2]=b;return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}z[c+84>>2]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|16}function Hl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=v[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}t[a+352|0]=b;return}c=v[a+16>>2];if(!c){c=Qu(v[a+8>>2],e>>>24&15);v[a+16>>2]=c}t[c+112|0]=b;Yu(v[a+8>>2],d);v[a+12>>2]=v[a+12>>2]|2048}function CO(a,b){var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0);b=v[b+32>>2];a:{if(b){z[a>>2]=z[b>>2];d=z[b+20>>2];e=z[b+28>>2];f=z[b+16>>2];g=z[b+12>>2];h=z[b+8>>2];i=z[b+4>>2];c=z[b+24>>2];break a}v[a>>2]=0;c=C(0)}z[a+28>>2]=e;z[a+16>>2]=f;z[a+12>>2]=g;z[a+8>>2]=h;z[a+4>>2]=i;z[a+24>>2]=c;z[a+20>>2]=d}function ur(a){a=a|0;var b=0,c=0,d=0;b=v[a+28>>2];d=Ba[v[v[b>>2]+136>>2]](b)|0;if(d){b=0;c=v[a+28>>2];Ba[v[v[c>>2]+392>>2]](c,0,0);if(v[a+36>>2]){while(1){c=v[a+32>>2]+B(b,24)|0;Ba[v[v[d>>2]+12>>2]](d,c,v[c+16>>2],v[c+20>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}a=v[a+28>>2];Ba[v[v[a>>2]+396>>2]](a)}}function ly(a,b){var c=0,d=0,e=C(0),f=C(0),g=0;c=x[b+8>>1];if((c|0)==65535){b=v[b+4>>2];e=z[b+24>>2];f=z[b+8>>2];c=v[b>>2];d=v[b+4>>2];g=v[b+20>>2];b=v[b+16>>2];v[a+12>>2]=0;v[a+28>>2]=0;z[a+24>>2]=e;v[a+16>>2]=b;v[a+20>>2]=g;v[a>>2]=c;v[a+4>>2]=d;z[a+8>>2]=f;return}d=a;a=v[b>>2];Ba[v[v[a>>2]+116>>2]](d,a,c)}function U2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=xa-240|0;xa=f;g=a+4|0;a:{if(!v[a+44>>2]){e=X3(f,g);if(d){v[d>>2]=0}d=N3(e,b,d,0);if(d){P3(e,c,Ba[v[v[a>>2]+12>>2]](a)|0,g)}Y3(e);break a}e=R3(f,g);if(d){v[d>>2]=0}d=N3(e,b,d,0);if(d){P3(e,c,Ba[v[v[a>>2]+12>>2]](a)|0,g)}S3(e)}xa=f+240|0;return d|0}function Jk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}v[a+36>>2]=b;return}c=v[a+20>>2];if(!c){c=Qu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}v[c+8>>2]=b;Yu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|4}function Hk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}v[a+32>>2]=b;return}c=v[a+20>>2];if(!c){c=Qu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}v[c+4>>2]=b;Yu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|2}function AU(a){a=a|0;var b=0,c=0,d=0,e=0;a:{b:{d=v[a+56>>2];c=v[d+124>>2];if(!c){break b}e=v[d+120>>2];while(1){if(v[(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;v[d+124>>2]=c;e=b<<2;b=v[d+120>>2];v[e+b>>2]=v[b+(c<<2)>>2]}Ba[v[v[a>>2]+4>>2]](a)}function ed(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+b|0;b=v[c+4>>2];v[a>>2]=v[c>>2];v[a+4>>2]=b;v[a+8>>2]=v[c+8>>2];u[a+12>>1]=x[c+12>>1];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[c+24>>2];z[a+28>>2]=z[c+28>>2];z[a+32>>2]=z[c+32>>2];z[a+36>>2]=z[c+36>>2];z[a+40>>2]=z[c+40>>2];v[a+44>>2]=v[c+44>>2]}function Pi(a){a=a|0;var b=0;a:{b=v[a+320>>2];b=Ba[v[v[b>>2]+100>>2]](b)|0;if(!v[b+88>>2]|v[v[b+84>>2]>>2]!=(a|0)){break a}b=v[v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}if(!b){break a}b9(v[37696],8,10567,141,22378,0);return}if(!v[a+356>>2]){Ni(a);return}b9(v[37696],8,10567,154,23818,0)}function ut(a,b){a=a|0;b=b|0;var c=0;b=v[b+36>>2]&1?v[b+40>>2]- -64|0:b+116|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;c=v[b+36>>2];v[a+32>>2]=v[b+32>>2];v[a+36>>2]=c;c=v[b+28>>2];v[a+24>>2]=v[b+24>>2];v[a+28>>2]=c;c=v[b+20>>2];v[a+16>>2]=v[b+16>>2];v[a+20>>2]=c;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c}function Zj(a,b){a=a|0;b=b|0;var c=0,d=C(0),e=C(0),f=C(0);if(w[b+316|0]&2){b=v[b+56>>2]+96|0}else{c=b- -64|0;b=v[c+176>>2];a:{if(!(!b|w[b+31|0]!=1)){b=b+32|0;break a}b=c+128|0}}d=z[b>>2];e=z[b+4>>2];f=z[b+8>>2];z[a+8>>2]=f==C(0)?C(0):C(C(1)/f);z[a+4>>2]=e==C(0)?C(0):C(C(1)/e);z[a>>2]=d==C(0)?C(0):C(C(1)/d)}function Fk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=v[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[d>>2]+4785|0]){break a}}v[a+28>>2]=b;return}c=v[a+20>>2];if(!c){c=Qu(v[a+12>>2],e>>>24&15);v[a+20>>2]=c}v[c>>2]=b;Yu(v[a+12>>2],d);v[a+16>>2]=v[a+16>>2]|1}function Co(a){a=a|0;var b=0,c=C(0);b=v[a+48>>2];c=z[b+5132>>2];a:{b:{switch((v[a+52>>2]>>>30|0)-2|0){case 0:if(w[b+4785|0]){break a}break;case 1:break a;default:break b}}z[a+308>>2]=c;v[a+312>>2]=0;VG(a- -64|0,c,1);return}z[a+308>>2]=c;v[a+312>>2]=0;Yu(b,a+48|0);v[a+316>>2]=v[a+316>>2]&-117440513|83886080}function $s(a){a=a|0;var b=0,c=C(0),d=0;d=v[a+28>>2];b=d+32|0;a=v[a+20>>2];c=z[d+6072>>2];if(c!=C(0)){z[b+1080>>2]=c;v[b+4528>>2]=1;v[b+4524>>2]=a;z[b+1084>>2]=c>C(0)?C(C(1)/c):C(0);if(a){Ba[v[v[a>>2]+16>>2]](a);v[b+4520>>2]=v[v[b+4524>>2]+16>>2]}a=b+4504|0;dP(b,a);b=v[b+4520>>2];Ba[v[v[b>>2]+72>>2]](b,a)}}function OB(a,b){var c=0,d=0,e=0;d=v[a+40>>2];if(d){e=v[a+8>>2];while(1){a=B(c,28)+e|0;z[a>>2]=z[a>>2]-z[b>>2];z[a+4>>2]=z[a+4>>2]-z[b+4>>2];z[a+8>>2]=z[a+8>>2]-z[b+8>>2];z[a+12>>2]=z[a+12>>2]-z[b>>2];z[a+16>>2]=z[a+16>>2]-z[b+4>>2];z[a+20>>2]=z[a+20>>2]-z[b+8>>2];c=c+1|0;if((d|0)!=(c|0)){continue}break}}}function Ee(a){a=a|0;var b=C(0),c=C(0),d=C(0),e=0;a:{if(v[a>>2]!=3){break a}b=z[a+4>>2];if((v[a+4>>2]&2139095040)==2139095040){break a}c=z[a+8>>2];if((v[a+8>>2]&2139095040)==2139095040){break a}d=z[a+12>>2];if((v[a+12>>2]&2139095040)==2139095040){break a}e=!(d<=C(0))&((b<=C(0)^-1)&(c<=C(0)^-1))}return e|0}function ce(a,b){a=a|0;b=b|0;var c=0,d=0;c=xa-32|0;xa=c;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](c,b);a=maa(28);z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+12>>2]=z[c+12>>2];z[a+16>>2]=z[c+16>>2];z[a+20>>2]=z[c+20>>2];z[a+24>>2]=z[c+24>>2];xa=c+32|0;return a|0}function o4(a){a=a|0;var b=0,c=0;v[a>>2]=144984;b=v[a+48>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+40>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+36>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=v[a+28>>2];if(!b){break b}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function jo(a){a=a|0;var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;$n(v[37393],a,v[a+8>>2],1);d=a+48|0;b=v[a+52>>2];e=w[(d+v[((b>>>22&60)+89188|0)+12>>2]|0)+8|0]&8;b=(b>>>30|0)-1>>>0<2?v[a+48>>2]:0;if(!(!b|!e)){ju(a+20|0,b)}Oi(a);if(b){Fu(b,d,1,(e|0)!=0);v[c+12>>2]=v[a+44>>2];gq(b-16|0,c+12|0)}tu(d);xa=c+16|0}function Xo(a){a=a|0;var b=0,c=0,d=0,e=0;c=xa-16|0;xa=c;$n(v[37393],a,v[a+8>>2],1);d=a+48|0;b=v[a+52>>2];e=w[(d+v[((b>>>22&60)+89188|0)+12>>2]|0)+8|0]&8;b=(b>>>30|0)-1>>>0<2?v[a+48>>2]:0;if(!(!b|!e)){ju(a+20|0,b)}Oi(a);if(b){Cu(b,d,1,(e|0)!=0);v[c+12>>2]=v[a+44>>2];gq(b-16|0,c+12|0)}tu(d);xa=c+16|0}function Tj(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=v[a+16>>2];if(!e){return 0}if(v[e+40>>2]){while(1){h=v[e+36>>2]+(g<<3)|0;if(!(w[h|0]|c>>>0<=f>>>0)){if(d>>>0<=i>>>0){v[(f<<2)+b>>2]=v[h+4>>2];f=f+1|0;e=v[a+16>>2]}i=i+1|0}g=g+1|0;if(g>>>0>2]){continue}break}}return f|0}function qz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=v[a+16>>2];v[c>>2]=v[c>>2]+b;c=v[a+8>>2];b=b+15&-16;if(b>>>0>=16385){return Jy(v[c>>2],b)|0}a=v[a+4>>2];a:{d=v[c+4>>2];if(d){e=v[c+8>>2];f=b+e|0;if(f>>>0<16385){break a}}a=Ky(v[c>>2],a);v[c+8>>2]=b;v[c+4>>2]=a;return a|0}v[c+8>>2]=f;return d+e|0}function lG(a,b){var c=0,d=0,e=0;c=v[a+148>>2];d=(b>>>0)/(c>>>0)|0;v[v[v[a+128>>2]+(d<<2)>>2]+(b-B(c,d)<<2)>>2]=0;d=v[a+80>>2]+(b<<2)|0;e=v[d>>2];if(e){c=v[a+96>>2];a:{if(c>>>0>=(v[a+100>>2]&2147483647)>>>0){jG(a+92|0,d);break a}v[v[a+92>>2]+(c<<2)>>2]=e;v[a+96>>2]=c+1}v[v[a+80>>2]+(b<<2)>>2]=0}}function Uq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(z[b>>2]>z[b+12>>2]){b9(v[37696],4,11709,1682,67812,0);return-1}a:{if(!w[(a+16|0)+4785|0]){a=v[a+1012>>2];d=v[a+272>>2];a=Ba[v[v[d>>2]+20>>2]](d,b,c,v[v[a+276>>2]+4>>2],v[v[a+192>>2]+4>>2])|0;break a}b9(v[37696],2,11860,1184,68425,0);a=-1}return a|0}function KH(a){var b=0,c=0,d=0,e=0;b=v[a+20>>2];while(1){e=v[b+24>>2];while(1){c=v[b+32>>2];if(c){b=c}else{d=v[b+36>>2];c=v[b+28>>2];if(c){v[c+32>>2]=0}v[b+20>>2]=0;v[b+24>>2]=0;v[b+36>>2]=0;v[b+40>>2]=0;v[b+28>>2]=0;v[b+32>>2]=0;b=d?d:c}if(b){continue}break}b=e;if(b){continue}break}v[a+20>>2]=0}function rt(a,b){var c=0,d=0,e=0,f=0;d=xa-16|0;xa=d;c=v[a+20>>2];a:{if(!c|!(w[(w[a+36|0]&64?v[a+40>>2]+52|0:a+112|0)|0]&2)){break a}e=vh(c);c=sh(v[a+20>>2]);if(e){f=nu(c,a,d+12|0);GE(e+5584|0,v[d+12>>2],f)}if(!v[c+20>>2]){break a}b9(v[37696],8,11562,236,b,0);bC(v[c+20>>2],v[a+20>>2])}xa=d+16|0}function bC(a,b){var c=0,d=0,e=0,f=0;c=v[a+40>>2];a:{if(!c){break a}e=v[a+44>>2];while(1){f=(d<<2)+e|0;if(v[f>>2]!=(b|0)){d=d+1|0;if((d|0)!=(c|0)){continue}break a}break}b:{switch(x[b+4>>1]-5|0){case 0:case 1:v[b+40>>2]=0;break;default:break b}}v[a+40>>2]=c-1;v[f>>2]=v[(c<<2)+e>>2]}t[a+48|0]=0}function sD(a,b,c){var d=0,e=0;d=xa-32|0;xa=d;z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];t[d+24|0]=1;$U(c,d);e=v[b+24>>2];if(!(e&1)){sD(a,B(e>>>1|0,28)+a|0,c);sD(a,a?(B(v[b+24>>2]>>>1|0,28)+a|0)+28|0:0,c)}xa=d+32|0}function is(a){a=a|0;var b=0,c=0,d=0;b=v[a+6340>>2];if(!(b>>>0>127|!w[b+150864|0])){c=v[(b<<2)+150992>>2]}b=c>>>24|0;if(!b){b9(v[37696],8,11709,2788,69464,0);return}d=c&16777215;c=b-1|0;d=d|c<<24;b=v[a+6340>>2];if(!(b>>>0>127|!w[b+150864|0])){v[(b<<2)+150992>>2]=d}if(!(c&255)){v[a+6344>>2]=0}}function Zv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[b+100>>2];b=x[d+4>>1]<<5;b=(b+(b+d|0)|0)+(c<<5)|0;c=v[b+132>>2];v[a>>2]=v[b+128>>2];v[a+4>>2]=c;c=v[b+140>>2];v[a+8>>2]=v[b+136>>2];v[a+12>>2]=c;c=v[b+148>>2];v[a+16>>2]=v[b+144>>2];v[a+20>>2]=c;c=v[b+156>>2];v[a+24>>2]=v[b+152>>2];v[a+28>>2]=c}function YD(a,b,c){var d=0,e=0;d=xa-32|0;xa=d;z[d>>2]=z[b>>2];z[d+4>>2]=z[b+4>>2];z[d+8>>2]=z[b+8>>2];z[d+12>>2]=z[b+12>>2];z[d+16>>2]=z[b+16>>2];z[d+20>>2]=z[b+20>>2];t[d+24|0]=1;$U(c,d);e=v[b+24>>2];if(!(e&1)){YD(a,B(e>>>1|0,28)+a|0,c);YD(a,a?(B(v[b+24>>2]>>>1|0,28)+a|0)+28|0:0,c)}xa=d+32|0}function qY(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=xa-16|0;xa=b;c=a+4|0;e=v[a+8>>2];if(e){while(1){f=v[c>>2]+B(d,12)|0;g=v[f>>2];if(g){h=v[37696]+12|0;Ba[v[v[h>>2]+12>>2]](h,g-4|0)}v[f>>2]=0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}uI(c,b);pY(c,v[a+8>>2]);v[a+16>>2]=0;v[a+20>>2]=0;xa=b+16|0}function jD(a,b,c){var d=0,e=0,f=0,g=C(0),h=0,i=0;d=xa-32|0;xa=d;e=v[b>>2];f=v[b+4>>2];g=z[b+8>>2];h=v[b+20>>2];i=v[b+16>>2];z[d+20>>2]=z[b+24>>2];t[d+24|0]=1;v[d+12>>2]=i;v[d+16>>2]=h;z[d+8>>2]=g;v[d>>2]=e;v[d+4>>2]=f;$U(c,d);if(v[b+40>>2]){jD(a,v[b+36>>2],c);jD(a,v[b+40>>2],c)}xa=d+32|0}function a5(a){a=a|0;var b=C(0),c=C(0),d=0,e=C(0);d=xa-32|0;xa=d;Ba[v[v[a>>2]+40>>2]](d,a);b=z[d>>2];a:{if(b==C(0)){c=C(1);a=0;break a}c=z[d+12>>2];e=C(C(1)/C(K(C(C(c*c)+C(C(C(b*b)+C(0))+C(0))))));c=C(c*e);a=C(b*e)>2]=118828;b=v[a+360>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+352>>2];if((b|0)==(a+332|0)){t[a+348|0]=0;break a}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a>>2]=119236;v[a>>2]=119540;eu(a+20|0);v[a>>2]=119844;wh(a);return a|0}function yh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=xa-16|0;xa=c;e=w[b|0];t[a+73|0]=e;b=a+12|0;a:{b:{c:{switch((v[a+16>>2]>>>30|0)-2|0){case 0:d=v[b>>2];if(w[d+4785|0]){break b}default:t[c+8|0]=e;ZE(a+24|0,c+8|0);break a;case 1:break c}}d=v[b>>2]}Yu(d,b);v[a+16>>2]=v[a+16>>2]|524288}xa=c+16|0}function YZ(a){var b=0,c=0;b=v[a+4>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+24>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);return a}b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a}function A$(a){var b=0,c=0;a:{if(w[a+56|0]){break a}b=v[a+24>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+20>>2]=0;v[a+24>>2]=0;v[a>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;u[a+50>>1]=0;u[a+52>>1]=0;u[a+54>>1]=0;u[a+56>>1]=0}function ob(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+8>>2]=0;v[e+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;z[e+24>>2]=c;z[e+20>>2]=b;v[e+4>>2]=1056964608;z[e+16>>2]=d==C(-1)?C(F(C((b>2]+124>>2]](a,e);xa=e+32|0}function Ny(a,b){var c=C(0),d=C(0),e=C(0);c=z[b+8>>2];d=z[a+8>>2];a:{b:{c:{d:{e:{a=w[a+14|0]&15;b=w[b+14|0]&15;switch(((a|0)>(b|0)?a:b)|0){case 3:break b;case 2:break c;case 1:break d;case 0:break e;default:break a}}return C(C(d+c)*C(.5))}return c>d?d:c}return C(d*c)}e=c>2];if(!b|v[a+28>>2]!=1){break a}Ba[v[v[b>>2]+64>>2]](b);b=v[a>>2];Ba[v[v[b>>2]+16>>2]](b)}b:{if(!c){break b}b=v[a+36>>2];if(!b|v[a- -64>>2]!=1){break b}Ba[v[v[b>>2]+64>>2]](b);a=v[a+36>>2];Ba[v[v[a>>2]+16>>2]](a)}}function Lb(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+8>>2]=0;v[e+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;z[e+24>>2]=c;z[e+20>>2]=b;v[e+4>>2]=1056964608;z[e+16>>2]=d==C(-1)?C(F(C((b>2]+164>>2]](a,e);xa=e+32|0}function BE(a){var b=0,c=0;b=v[a>>2];if(b){Ba[v[v[b>>2]+56>>2]](b)}v[a>>2]=0;b=v[a+24>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+16>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+4>>2];if(!(!b|v[a+8>>2]<0)){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=0}function $c(){var a=0;a=maa(84);v[a+4>>2]=0;v[a+8>>2]=0;v[a+80>>2]=0;v[a+72>>2]=0;v[a+76>>2]=0;t[a+68|0]=0;v[a>>2]=114128;v[a+20>>2]=0;v[a+24>>2]=0;u[a+16>>1]=0;v[a+12>>2]=-1;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+52>>2]=0;v[a+44>>2]=2139095039;v[a+48>>2]=0;return a|0}function v4(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){S4(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<4)|0;d=(d<<4)+e|0;while(1){z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];d=d+16|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function ub(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+8>>2]=0;v[e+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;v[e+4>>2]=1056964608;z[e+20>>2]=c;z[e+24>>2]=b;z[e+16>>2]=d==C(-1)?C(F(C(C(c-b)*C(.49000000953674316)),C(.10000000149011612))):d;Ba[v[v[a>>2]+128>>2]](a,e);xa=e+32|0}function Qv(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){Sv(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<4)|0;d=(d<<4)+e|0;while(1){z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];d=d+16|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function Jb(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+8>>2]=0;v[e+12>>2]=0;v[e>>2]=0;v[e+4>>2]=0;v[e+4>>2]=1056964608;z[e+20>>2]=c;z[e+24>>2]=b;z[e+16>>2]=d==C(-1)?C(F(C(C(c-b)*C(.49000000953674316)),C(.10000000149011612))):d;Ba[v[v[a>>2]+156>>2]](a,e);xa=e+32|0}function Gq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if(!w[a+4801|0]){a=a+32|0;if(!(v[a+2344>>2]|!b|!v[a+2236>>2])){e=v[a+2204>>2];while(1){d=v[v[(c<<2)+e>>2]>>2];u[d+148>>1]=x[d+148>>1]|64;c=c+1|0;if(c>>>0>2]){continue}break}}v[a+2344>>2]=b;return}b9(v[37696],2,19228,503,68806,0)}function cm(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(!(w[a+14|0]&32)){a=(b<<4)+a|0;z[c>>2]=z[a+128>>2];z[d>>2]=z[a+132>>2];z[e>>2]=z[a+136>>2];a=a+140|0;break a}a=v[a+16>>2]+(b<<4)|0;z[c>>2]=z[a+204>>2];z[d>>2]=z[a+208>>2];z[e>>2]=z[a+212>>2];a=a+216|0}v[f>>2]=v[a>>2]}function BC(a){var b=0,c=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+16>>2]=0}b=v[a+20>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+20>>2]=0}b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+12>>2]=0}v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0}function rS(a){var b=0,c=0;a:{b:{if(w[a+56|0]&32){break b}b=v[v[a+28>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(y[b+152>>2]<4294967294?b:0){break b}b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;c=0;if(!b|y[b+152>>2]>4294967293){break a}}t[a+25|0]=w[a+25|0]|32;c=1}return c}function YE(a,b){var c=C(0);t[a+40|0]=b;v[a>>2]=0;t[a+36|0]=0;b=v[37415];u[a+16>>1]=260;v[a+12>>2]=4;v[a+4>>2]=4;v[a+8>>2]=4;z[a+20>>2]=z[b>>2]*C(.10000000149011612);c=z[b+4>>2];z[a+32>>2]=z[23002];z[a+28>>2]=c*C(c*C(4999999873689376e-21));z[a+24>>2]=c*C(c*C(4999999873689376e-20))}function Gr(a,b){var c=0,d=0;c=xa-16|0;xa=c;b=x[b+52>>1];v[c+12>>2]=0;u[c+8>>1]=b;a=a+16|0;b=v[a+4772>>2];a:{if((v[a+4776>>2]&2147483647)>>>0<=b>>>0){Ou(a+4768|0,c+8|0);break a}d=v[c+12>>2];b=v[a+4768>>2]+(b<<3)|0;v[b>>2]=v[c+8>>2];v[b+4>>2]=d;v[a+4772>>2]=v[a+4772>>2]+1}xa=c+16|0}function FA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;EA(a);b=v[a+24>>2];if(v[b+4>>2]){e=w[b|0]==9?368:272;a=b+160|0;c=0;while(1){d=v[a+164>>2];v[a+144>>2]=v[a+160>>2];v[a+148>>2]=d;d=v[a+172>>2];v[a+152>>2]=v[a+168>>2];v[a+156>>2]=d;a=a+e|0;c=c+1|0;if(c>>>0>2]){continue}break}}}function o5(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+240>>2]=v[b>>2];v[c+244>>2]=d;v[c+264>>2]=v[b+24>>2];d=v[b+20>>2];v[c+256>>2]=v[b+16>>2];v[c+260>>2]=d;d=v[b+12>>2];v[c+248>>2]=v[b+8>>2];v[c+252>>2]=d;t[v[a+80>>2]+478|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Pb(a,b,c,d,e,f,g){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);f=C(f);g=C(g);var h=0;h=xa-48|0;xa=h;v[h+16>>2]=0;v[h+20>>2]=0;v[h+24>>2]=0;z[h+16>>2]=f;v[h+8>>2]=0;v[h+12>>2]=0;z[h+40>>2]=e;z[h+36>>2]=d;z[h+32>>2]=c;z[h+28>>2]=b;z[h+20>>2]=g;Ba[v[v[a>>2]+172>>2]](a,h+8|0);xa=h+48|0}function Nk(a,b,c,d){a=a|0;b=b|0;c=C(c);d=d|0;var e=0,f=0,g=0;a=v[a+24>>2];if(a){if(v[a+28>>2]){g=v[a+12>>2];e=v[a>>2];f=v[a+16>>2];Ba[v[v[e>>2]+12>>2]](e,f)|0;t[e+76|0]=f;v[e+32>>2]=g;Ba[v[v[e>>2]+8>>2]](e)}e=x[a+16>>1];f=v[a+12>>2];a=v[a>>2];jw(b,e,f,c,d,v[a+68>>2],x[a+78>>1])}}function kV(a,b,c,d,e,f){var g=0,h=0,i=0;g=v[c>>2];h=v[e>>2];a:{if((g|0)>(h|0)){i=0;if(!(Ba[v[(B(h,28)+140816|0)+(g<<2)>>2]](a,b,e,f,c,d)|0)){break a}z[a+8>>2]=-z[a+8>>2];z[a+4>>2]=-z[a+4>>2];z[a>>2]=-z[a>>2];return 1}i=Ba[v[(B(g,28)+140816|0)+(h<<2)>>2]](a,b,c,d,e,f)|0}return i}function TB(a,b,c,d,e){var f=0,g=0,h=0;v[((d-e|0)/28<<2)+b>>2]=(c-e|0)/28;c=v[d+24>>2];if(!(c&1)){f=d+24|0;g=e+28|0;while(1){TB(a,b,d,B(c>>>1|0,28)+e|0,e);h=d-e|0;d=B(v[f>>2]>>>1|0,28)+g|0;c=e?d:0;v[((c-e|0)/28<<2)+b>>2]=(h|0)/28;f=c+24|0;c=v[c+24>>2];if(!(c&1)){continue}break}}}function MY(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=v[a+4>>2];g=v[d+264>>2];a:{if(g>>>0>=(v[d+268>>2]&2147483647)>>>0){NY(d,f);break a}v[v[d+260>>2]+(g<<2)>>2]=v[f>>2];v[d+264>>2]=v[d+264>>2]+1}e=e+1|0;if((e|0)!=(b|0)){continue}break}}return 1}function tr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(v[a+4656>>2]!=3){b9(v[37696],8,11709,2210,71428,0);return 0}if(w9(v[a+6060>>2],0-d|0)){d=a+32|0;HP(d);Wu(a+16|0);eP(d);mr(a);GP(d);gP(d);e=c;c=EP(d);v[e>>2]=v[c+4>>2];v[b>>2]=v[c>>2];t[a+6354|0]=1;a=1}else{a=0}return a|0}function qH(a,b){var c=0,d=0;c=v[a+44>>2];if(!(t[c+44|0]&1|!(z[c+156>>2]>2]=b;d=v[v[a+40>>2]+1012>>2];Ba[v[v[d>>2]+44>>2]](d,w[c+9|0]==2,a+144|0);if(y[a+152>>2]>=4294967294){TO(v[a+40>>2],a);aH(a)}cG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);u[a+92>>1]=x[a+92>>1]&65534}}function S3(a){a=a|0;var b=0,c=0;v[a+16>>2]=140756;v[a>>2]=144836;A$(a+128|0);b=v[a+112>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+112>>2]=0;tV(a+16|0);v[a>>2]=144804;b=v[a+4>>2];if(b){b=g3(b);c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+4>>2]=0;return a|0}function Ir(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:{if(!(w[b+5580|0]&8)){break a}t[a|0]=0;t[a+1|0]=0;if(!(v[(((c>>>0>>0?c:d)<<2)+b|0)+5296>>2]>>>(c>>>0>d>>>0?c:d)&1)){break a}b=b+5420|0;t[a|0]=(v[b+(c<<2)>>2]&1<>>d;t[a+1|0]=(v[b+(d<<2)>>2]&1<>>c;return}RP(a,b+32|0,c,d)}function HL(a){a=a|0;var b=0,c=0,d=0,e=0;a=v[a+28>>2];b=v[a+124>>2];c=v[a+128>>2];a=v[a+88>>2];v[a+68>>2]=v[a+24>>2];v[a+72>>2]=c;v[a- -64>>2]=b;b=v[a>>2];if(b){c=a+36|0;e=v[a+12>>2];a=0;while(1){d=v[(B(a,40)+e|0)+28>>2];if(d){sL(d,c)}a=a+1|0;if((b|0)!=(a|0)){continue}break}}}function sS(a){var b=0,c=0;a:{if(w[a+56|0]&32){break a}b=v[v[a+28>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(y[b+152>>2]<4294967294?b:0){break a}b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(y[b+152>>2]<4294967294?b:0){break a}t[a+25|0]=w[a+25|0]&223;c=1}return c}function rz(a,b){a=a|0;b=b|0;var c=0,d=0;c=-1;a:{if(b>>>0>16384){break a}a=v[a+12>>2];d=v[a+4>>2];b:{if(d){c=v[a+8>>2];if(c+b>>>0<16385){break b}}d=v[a>>2];d=Iy(d,(d+B(v[d+128>>2],12)|0)+40|0,0,0,0);v[a+8>>2]=0;v[a+4>>2]=d;c=0;if(!d){break a}}v[a+8>>2]=b+c;c=d+c|0}return c|0}function aP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=w[b+20|0];g=(e<<2)+a|0;c=v[g+88>>2];if(c>>>0>=2){e=B(e,12)+a|0;f=v[e+52>>2];c=c-1|0;d=f+(c<<2)|0;a=v[d>>2];h=d;d=f;b=v[b+8>>2];f=b<<2;d=v[d+f>>2];v[h>>2]=d;v[f+v[e+52>>2]>>2]=a;v[a+8>>2]=b;v[d+8>>2]=c;c=v[g+88>>2]}v[g+88>>2]=c-1}function $O(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=w[b+20|0];g=(d<<2)+a|0;e=v[g+88>>2];a=B(d,12)+a|0;if(e>>>0>2]){f=v[a+52>>2];c=f+(e<<2)|0;d=v[c>>2];h=c;c=f;b=v[b+8>>2];f=b<<2;c=v[c+f>>2];v[h>>2]=c;v[f+v[a+52>>2]>>2]=d;v[d+8>>2]=b;v[c+8>>2]=e;e=v[g+88>>2]}v[g+88>>2]=e+1}function jB(a){var b=0;v[a+12112>>2]=0;v[a+12116>>2]=0;v[a+12096>>2]=0;v[a+11876>>2]=0;v[a+11880>>2]=0;v[a+11868>>2]=0;v[a+12088>>2]=0;v[a+12092>>2]=0;b=a+11856|0;v[b>>2]=0;v[b+4>>2]=0;b=a+11828|0;v[b>>2]=0;v[b+4>>2]=0;v[a+12132>>2]=v[a+11952>>2];v[a+12140>>2]=v[a+11976>>2]}function Ec(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=C(f);g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=C(l);var m=0,n=0;m=xa-16|0;xa=m;n=v[a+4>>2];b=(n>>1)+b|0;a=v[a>>2];a=n&1?v[v[b>>2]+a>>2]:a;u[m+8>>1]=x[h>>1];a=Ba[a|0](b,c,d,e,f,g,m+8|0,i,j,k,l)|0;xa=m+16|0;return a|0}function MH(a){var b=0,c=0;WH(a,1);c=v[v[a>>2]+40>>2];b=v[a+24>>2];if((w[b+68|0]&6)==6){tP(c,b)}b=v[a+28>>2];if((b|0)!=-1){fG(v[c+1e3>>2],b)}v[a+28>>2]=-1;WE(v[a>>2],a);WE(v[a+4>>2],a);b=v[a+24>>2];c=v[b- -64>>2];b=v[b+60>>2];if(b){sH(b)}if(c){sH(c)}t[a+21|0]=w[a+21|0]&223}function sR(a){a=a|0;var b=0,c=0,d=0,e=0;c=v[a+28>>2];b=v[v[c+976>>2]+1024>>2];Ba[v[v[b>>2]+104>>2]](b);d=v[c+4676>>2];if(d){a=0;while(1){e=v[v[c+4672>>2]+(a<<2)>>2];if(e&1){Ba[v[v[b>>2]+28>>2]](b,e&-2,0,0)}a=a+1|0;if((d|0)!=(a|0)){continue}break}}Ba[v[v[b>>2]+108>>2]](b)}function kK(a,b){a=a|0;b=b|0;var c=0,d=0;b=v[(v[a+72>>2]+B(v[b+20>>2],20)|0)+12>>2];if((b|0)!=-1){while(1){b=v[a+60>>2]+(b<<3)|0;c=v[a+72>>2]+B(v[b>>2],20)|0;d=v[c+4>>2]-1|0;v[c+4>>2]=d;if(!d){eK(a,v[b>>2])}b=v[b+4>>2];if((b|0)!=-1){continue}break}}v[a+52>>2]=v[a+52>>2]-1}function iY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0),i=0;b=v[b+4>>2];i=d;e=z[c>>2]>C(0);d=z[c+4>>2]>C(0);c=z[c+8>>2]>C(0);v[i>>2]=e|d<<1|c<<2;f=z[b+52>>2];g=z[b+56>>2];h=z[b+48>>2];v[a+12>>2]=0;z[a+8>>2]=c?g:C(-g);z[a+4>>2]=d?f:C(-f);z[a>>2]=e?h:C(-h)}function Cf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;e=v[b>>2];a:{if((v[b+4>>2]-e|0)/12>>>0>c>>>0){b=maa(12);c=B(c,12)+e|0;z[b>>2]=z[c>>2];z[b+4>>2]=z[c+4>>2];z[b+8>>2]=z[c+8>>2];v[d+8>>2]=b;f=a,g=ea(111652,d+8|0)|0,v[f>>2]=g;break a}v[a>>2]=1}xa=d+16|0}function o3(a,b,c,d,e){var f=0;a:{if(!a){break a}f=v[c>>2]+1|0;v[c>>2]=f;if(f>>>0>y[b>>2]){v[b>>2]=f}if(d){if(!(Ba[d|0](a,v[c>>2],e)|0)){break a}}f=v[a+24>>2];if(!f){break a}o3(f,b,c,d,e);v[c>>2]=v[c>>2]-1;a=v[a+24>>2];if(!a){break a}o3(a+36|0,b,c,d,e);v[c>>2]=v[c>>2]-1}}function S0(a,b){a=a|0;b=b|0;var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0);b9(v[37696],8,10730,227,70603,0);c=z[b+44>>2];d=z[b+48>>2];e=z[b+36>>2];f=z[b+32>>2];g=z[b+40>>2];h=z[b+52>>2];z[a+20>>2]=g+h;z[a+16>>2]=e+d;z[a+12>>2]=f+c;z[a+8>>2]=g-h;z[a+4>>2]=e-d;z[a>>2]=f-c}function eS(a){var b=0,c=0,d=0,e=0,f=0;b=v[a+8>>2];if((b|0)<0){d=v[a+4>>2];f=v[v[v[d+40>>2]+980>>2]+180>>2]+((b&2147483647)<<2)|0;b=v[d+44>>2];e=w[b+9|0];c=2;a:{if(e-3>>>0<4294967294){break a}c=2;if(!d){break a}c=t[b+44|0]&1?1:2}v[f>>2]=e?(c|v[d+48>>2]<<2)+4|0:0;aS(a)}}function vaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if(oaa(a,v[b+8>>2],0)){raa(b,c,d);return}e=v[a+12>>2];f=a+16|0;uaa(f,b,c,d);a=a+24|0;e=(e<<3)+f|0;a:{if(a>>>0>=e>>>0){break a}while(1){uaa(a,b,c,d);if(w[b+54|0]){break a}a=a+8|0;if(e>>>0>a>>>0){continue}break}}}function of(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){c=v[c+v[b>>2]>>2]}a=Ba[c|0](b)|0;b=maa(24);c=v[a+20>>2];v[b+16>>2]=v[a+16>>2];v[b+20>>2]=c;c=v[a+12>>2];v[b+8>>2]=v[a+8>>2];v[b+12>>2]=c;c=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=c;return b|0}function fL(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;v[v[a+4>>2]>>2]=c;if(f){Ba[v[v[f>>2]+20>>2]](f)}gL(a,d);c=v[a+32>>2];b=v[a+4>>2];v[b+384>>2]=v[a+36>>2];v[b+368>>2]=c;VK(b,b+340|0);b=v[a+4>>2];aL(b+340|0,a,b+324|0,b+332|0);J9(v[b+324>>2],0,v[b+328>>2]<<2)}function aT(a,b){a=a|0;b=b|0;var c=0;z[b>>2]=z[a+464>>2];z[b+4>>2]=z[a+468>>2];z[b+8>>2]=z[a+472>>2];v[b+12>>2]=v[a+248>>2];v[b+16>>2]=v[a+260>>2];v[b+20>>2]=v[a+272>>2];c=v[a+420>>2];t[b+30|0]=c>>>8&1;c=c&255;t[b+29|0]=c>>>5&1;t[b+28|0]=c>>>4&1;v[b+24>>2]=w[a+520|0]}function zg(a){var b=0,c=0;a:{if(!w[a+120|0]){break a}b=v[a+56>>2];c=Ba[v[v[b>>2]>>2]](b)|0;b=v[a+88>>2];if(b){I9(v[b+20>>2],c,x[b+8>>1]);c=v[b+60>>2];c=v[v[(c?c:v[b- -64>>2])+40>>2]+1012>>2];Ba[v[v[c>>2]+48>>2]](c,v[v[b+56>>2]+28>>2],b)}if(!b){break a}t[a+120|0]=0}}function baa(a,b,c){var d=0,e=0,f=0;a:{if(!b){d=a;break a}while(1){d=Taa(a,b,10);f=Aa;e=Saa(d,f,10,0);c=c-1|0;t[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;t[c|0]=d-B(a,10)|48;b=d>>>0>9;d=a;if(b){continue}break}}return c}function _L(a){var b=0,c=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+4>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}a=v[a>>2];if(a){b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}}function Ck(a){a=a|0;var b=0,c=0;v[a>>2]=120476;Pm(v[37389],a);v[a>>2]=120728;Pm(v[37389],a);b=v[a+104>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+96>>2];if((b|0)==(a+76|0)){t[a+92|0]=0;break a}if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function pW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0),f=C(0),g=C(0),h=C(0);e=z[b+8>>2];a=v[a+48>>2];f=z[a+56>>2];g=C(e*(e>C(0)?f:C(-f)));e=z[b>>2];f=z[a+48>>2];h=C(e*(e>C(0)?f:C(-f)));e=z[b+4>>2];f=z[a+52>>2];e=C(g+C(h+C(e*(e>C(0)?f:C(-f)))));z[d>>2]=e;z[c>>2]=-e}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;a:{if(!w[a+48|0]){break a}c=v[a+40>>2];if(!c){break a}while(1){e=v[a+44>>2]+(d<<2)|0;f=v[e>>2];if(f){g=e,h=Ba[v[v[b>>2]>>2]](b,-2147483648,f)|0,v[g>>2]=h;c=v[a+40>>2]}d=d+1|0;if(c>>>0>d>>>0){continue}break}}}function nP(a,b){var c=0,d=0,e=0;e=xa-16|0;xa=e;d=v[b+60>>2];if(d){c=v[d+60>>2];c=v[(c?c:v[d- -64>>2])+164>>2];if(c){IH(v[a+1136>>2],c,d)}c=v[a+2396>>2];d=RH(d);v[c+280>>2]=v[c+280>>2]-1;v[d>>2]=v[c+288>>2];v[c+288>>2]=d}v[e+12>>2]=b;Pg(a+1096|0,e+12|0);xa=e+16|0}function ky(a,b){var c=0,d=0,e=C(0),f=C(0);c=xa-32|0;xa=c;d=x[b+8>>1];a:{if((d|0)==65535){b=v[b+4>>2];z[a>>2]=z[b>>2];e=z[b+8>>2];f=z[b+4>>2];break a}b=v[b>>2];Ba[v[v[b>>2]+116>>2]](c,b,d);e=z[c+8>>2];f=z[c+4>>2];z[a>>2]=z[c>>2]}z[a+8>>2]=e;z[a+4>>2]=f;xa=c+32|0}function faa(a,b,c,d){var e=0;e=xa-160|0;xa=e;v[e+148>>2]=b?b-1|0:0;a=b?a:e+158|0;v[e+144>>2]=a;e=J9(e,0,144);v[e+76>>2]=-1;v[e+36>>2]=3469;v[e+80>>2]=-1;v[e+44>>2]=e+159;v[e+84>>2]=e+144;a:{if((b|0)<0){v[37699]=61;break a}t[a|0]=0;Y9(e,c,d,3467,3468)}xa=e+160|0}function QG(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+60>>2]=b;break a}z[a+116>>2]=b;a=v[a>>2];if(!a){break a}c=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}xa=d+16|0}function PG(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+56>>2]=b;break a}z[a+112>>2]=b;a=v[a>>2];if(!a){break a}c=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}xa=d+16|0}function OG(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+52>>2]=b;break a}z[a+124>>2]=b;a=v[a>>2];if(!a){break a}c=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}xa=d+16|0}function NG(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+48>>2]=b;break a}z[a+120>>2]=b;a=v[a>>2];if(!a){break a}c=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}xa=d+16|0}function LG(a,b){var c=0,d=0,e=0;d=xa-16|0;xa=d;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){z[c+44>>2]=b;break a}z[a+140>>2]=b;a=v[a>>2];if(!a){break a}c=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}xa=d+16|0}function sK(a,b){var c=0,d=0;d=b+15&-16;c=-1;a:{if(d>>>0>16384){break a}b=v[a+4>>2];b:{if(b){c=v[a+8>>2];if(d+c>>>0<16385){break b}}b=v[a>>2];b=Iy(b,(b+B(v[b+124>>2],12)|0)- -64|0,0,0,0);v[a+8>>2]=0;v[a+4>>2]=b;c=0;if(!b){break a}}v[a+8>>2]=c+d;c=b+c|0}return c}function b9(a,b,c,d,e,f){var g=0;g=xa-1040|0;xa=g;v[g+12>>2]=f;if(v[a+192>>2]&b){faa(g+16|0,1024,e,v[g+12>>2]);if(v[a+180>>2]){f=0;while(1){e=v[v[a+176>>2]+(f<<2)>>2];Ba[v[v[e>>2]+8>>2]](e,b,g+16|0,c,d);f=f+1|0;if(f>>>0>2]){continue}break}}}xa=g+1040|0}function _v(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=0,f=0,g=0,h=C(0);b=v[b+172>>2]+(c<<5)|0;d=z[b+8>>2];c=v[b>>2];e=v[b+4>>2];f=v[b+20>>2];g=v[b+16>>2];h=z[b+24>>2];v[a+12>>2]=0;v[a+28>>2]=0;z[a+24>>2]=h;v[a+16>>2]=g;v[a+20>>2]=f;v[a>>2]=c;v[a+4>>2]=e;z[a+8>>2]=d}function v0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0);e=xa-16|0;xa=e;f=z[a+4>>2];z[e>>2]=z[b+16>>2];z[e+4>>2]=z[b+20>>2];g=z[b+24>>2];z[e+12>>2]=f;z[e+8>>2]=g;a=v[c+36>>2];a=Ba[v[(x[a+4>>1]<<2)+143712>>2]](e,a,d,c+4|0,0)|0;xa=e+16|0;return a|0}function ih(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{c=v[a+4>>2];if(!c){break a}d=v[c+40>>2];if(!d){break a}c=0;while(1){e=v[v[a+4>>2]+36>>2]+(c<<3)|0;f=v[e+4>>2];if(f){g=e,h=Ba[v[v[b>>2]>>2]](b,-2147483648,f)|0,v[g+4>>2]=h}c=c+1|0;if((d|0)!=(c|0)){continue}break}}}function OF(a){var b=0,c=0,d=0,e=0,f=0;c=v[a+340>>2];if(c){while(1){b=v[v[a+336>>2]+(d<<2)>>2];e=v[a+60>>2];f=(b>>>0)/(e>>>0)|0;if((x[(v[v[a+40>>2]+(f<<2)>>2]+(b-B(e,f)<<4)|0)+4>>1]&11)==3){GF(a,b);EF(a,b);c=v[a+340>>2]}d=d+1|0;if(c>>>0>d>>>0){continue}break}}}function l5(a,b){a=a|0;b=b|0;var c=0;b=v[b+80>>2];z[a>>2]=z[b+268>>2];z[a+4>>2]=z[b+272>>2];z[a+8>>2]=z[b+276>>2];z[a+12>>2]=z[b+280>>2];z[a+16>>2]=z[b+284>>2];c=v[b+292>>2];v[a+20>>2]=v[b+288>>2];v[a+24>>2]=c;c=v[b+300>>2];v[a+28>>2]=v[b+296>>2];v[a+32>>2]=c}function jd(){var a=0;a=maa(68);v[a+4>>2]=0;v[a+8>>2]=0;v[a+64>>2]=0;v[a+56>>2]=0;v[a+60>>2]=0;t[a+52|0]=0;v[a>>2]=114448;v[a+20>>2]=0;v[a+24>>2]=0;u[a+16>>1]=0;v[a+12>>2]=-1;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+44>>2]=2139095039;return a|0}function A_(a,b){v[b+8>>2]=0;v[b+12>>2]=8;v[b>>2]=0;v[b+4>>2]=0;v[b+44>>2]=0;v[b+48>>2]=0;v[b+36>>2]=0;v[b+16>>2]=6;v[b+20>>2]=0;v[b+24>>2]=a+100;v[b+32>>2]=101280;v[b+28>>2]=a+4;v[b+52>>2]=0;v[b+56>>2]=0;a=v[a>>2];v[b+64>>2]=2768;v[b+68>>2]=2769;v[b+60>>2]=a}function k5(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+212>>2]=v[b>>2];v[c+216>>2]=d;v[c+236>>2]=v[b+24>>2];d=v[b+20>>2];v[c+228>>2]=v[b+16>>2];v[c+232>>2]=d;d=v[b+12>>2];v[c+220>>2]=v[b+8>>2];v[c+224>>2]=d;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function q6(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;Ba[v[v[b>>2]+8>>2]](b,v[a+76>>2]);v[c+12>>2]=0;v[c+8>>2]=0;a=v[a+76>>2];Ba[v[v[a>>2]+28>>2]](a,c+12|0,c+8|0);a=v[c+12>>2];if(a){Ba[v[v[b>>2]+8>>2]](b,a)}a=v[c+8>>2];if(a){Ba[v[v[b>>2]+8>>2]](b,a)}xa=c+16|0}function f5(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+104>>2]=v[b>>2];v[c+108>>2]=d;d=v[b+20>>2];v[c+120>>2]=v[b+16>>2];v[c+124>>2]=d;d=v[b+12>>2];v[c+112>>2]=v[b+8>>2];v[c+116>>2]=d;t[v[a+80>>2]+476|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Sm(a,b){var c=0,d=0;if(b){c=v[b+44>>2];a:{if((c|0)<0|!(c&2147483647)){break a}c=v[b+36>>2];if((c|0)==(b|0)){t[b+32|0]=0;break a}if(!c){break a}d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[a+460>>2]=v[a+460>>2]-1;v[b>>2]=v[a+468>>2];v[a+468>>2]=b}}function f8(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+92>>2]=v[b>>2];v[c+96>>2]=d;v[c+116>>2]=v[b+24>>2];d=v[b+20>>2];v[c+108>>2]=v[b+16>>2];v[c+112>>2]=d;d=v[b+12>>2];v[c+100>>2]=v[b+8>>2];v[c+104>>2]=d;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function _R(a){var b=0,c=0;a:{if(v[a+36>>2]!=-1){break a}c=v[a+4>>2];b=w[v[c+44>>2]+9|0]-1>>>0<2?c:0;if((w[v[b+44>>2]+44|0]&3)==3|t[b+92|0]&1|(w[b+149|0]&16|y[b+152>>2]>4294967293)){break a}if(!(w[v[a+28>>2]- -64|0]&2)){break a}kS(v[v[c+40>>2]+1152>>2],a)}}function nX(a,b,c,d){var e=0;e=xa-16|0;xa=e;a:{if(c){if(!b){break a}while(1){c=v[a>>2];v[e+12>>2]=c<<24|c<<8&16711680|(c>>>8&65280|c>>>24);Ba[v[v[d>>2]>>2]](d,e+12|0,4)|0;a=a+4|0;b=b-1|0;if(b){continue}break}break a}Ba[v[v[d>>2]>>2]](d,a,b<<2)|0}xa=e+16|0}function Tp(a,b){a=a|0;b=b|0;var c=0,d=0;c=b+1076|0;d=v[c+4>>2];v[a+24>>2]=v[c>>2];v[a+28>>2]=d;c=b+1068|0;d=v[c+4>>2];v[a+16>>2]=v[c>>2];v[a+20>>2]=d;c=b+1060|0;d=v[c+4>>2];v[a+8>>2]=v[c>>2];v[a+12>>2]=d;b=b+1052|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c}function oW(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0);b=v[b+48>>2];d=z[b+52>>2];e=z[b+56>>2];g=z[c+4>>2];h=z[c+8>>2];f=z[b+48>>2];i=z[c>>2];v[a+12>>2]=0;z[a>>2]=i>C(0)?f:C(-f);z[a+8>>2]=h>C(0)?e:C(-e);z[a+4>>2]=g>C(0)?d:C(-d)}function Yv(a,b,c){a=a|0;b=b|0;c=c|0;b=v[b+100>>2]+(c<<5)|0;c=v[b+132>>2];v[a>>2]=v[b+128>>2];v[a+4>>2]=c;c=v[b+140>>2];v[a+8>>2]=v[b+136>>2];v[a+12>>2]=c;c=v[b+148>>2];v[a+16>>2]=v[b+144>>2];v[a+20>>2]=c;c=v[b+156>>2];v[a+24>>2]=v[b+152>>2];v[a+28>>2]=c}function zc(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=xa-16|0;xa=k;l=v[a+4>>2];b=(l>>1)+b|0;a=v[a>>2];a=l&1?v[v[b>>2]+a>>2]:a;u[k+8>>1]=x[g>>1];a=Ba[a|0](b,c,d,e,f,k+8|0,h,i,j)|0;xa=k+16|0;return a|0}function hY(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=C(0),h=C(0),i=C(0);b=v[b+4>>2];d=z[b+52>>2];e=z[b+56>>2];g=z[c+4>>2];h=z[c+8>>2];f=z[b+48>>2];i=z[c>>2];v[a+12>>2]=0;z[a>>2]=i>C(0)?f:C(-f);z[a+8>>2]=h>C(0)?e:C(-e);z[a+4>>2]=g>C(0)?d:C(-d)}function R7(a,b){a=a|0;b=b|0;var c=0,d=0;d=v[b+4>>2];c=v[a+80>>2];v[c+80>>2]=v[b>>2];v[c+84>>2]=d;v[c+104>>2]=v[b+24>>2];d=v[b+20>>2];v[c+96>>2]=v[b+16>>2];v[c+100>>2]=d;d=v[b+12>>2];v[c+88>>2]=v[b+8>>2];v[c+92>>2]=d;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}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,i=0;d=xa-48|0;xa=d;if(b){g=a+4|0;h=d+24|0;i=d+12|0;while(1){e=d+36|0;f=v[c>>2];n$(v[a+3368>>2],v[a+12>>2],d,e,0,f,0,0);SZ(g,f,d,i,h,e);c=c+4|0;b=b-1|0;if(b){continue}break}}xa=d+48|0;return 1}function oS(a,b,c){var d=0;d=UH(a+4|0,v[b+4>>2],v[c+4>>2],1,5);v[a+36>>2]=-1;v[a+32>>2]=c;v[a+28>>2]=b;t[a+58|0]=0;u[a+56>>1]=32;v[a>>2]=139344;b=YP(d);VE(v[d>>2],d);VE(v[a+8>>2],d);c=v[v[d>>2]+40>>2];XO(c,d,b);hJ(v[c+2168>>2],a);u[a+52>>1]=0;return a}function sr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(v[a+4656>>2]!=3){b9(v[37696],8,11709,2159,71542,0);return 0}a:{if(!w9(v[a+6060>>2],0-b|0)){break a}b=a+32|0;HP(b);Wu(a+16|0);eP(b);mr(a);GP(b);gP(b);fP(b,0);or(a);d=1;if(!c){break a}v[c>>2]=0}return d|0}function Up(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=v[a+5580>>2];e=v[(d&4?5564:2392)+a>>2];b=c?e|b:(b^-1)&e;if(!w[a+4801|0]){v[a+2392>>2]=b;a=a+32|0;t[v[a+976>>2]+1812|0]=(b&64)>>>6;t[v[a+976>>2]+1813|0]=!(b&256);return}v[a+5564>>2]=b;v[a+5580>>2]=d|4}function U9(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!w[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=v[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}while(1){b=c;c=b+1|0;if(w[b|0]){continue}break}}return b-a|0}function i1(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=144300;c=a-8|0;v[c>>2]=144204;a:{if(t[a+188|0]&1){break a}b=v[a+192>>2];if(!b){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b-v[b-4>>2]|0);v[a+192>>2]=0}a=M0(c);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function at(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0;j=xa-32|0;xa=j;v[j+28>>2]=0;v[j+20>>2]=0;v[j+24>>2]=0;z[j+16>>2]=d;v[j+12>>2]=c;v[j+8>>2]=b;u[j>>1]=x[f>>1];a=bt(a,j+8|0,e,j,i,g,h,0);xa=j+32|0;return a|0}function Rh(a,b){a=a|0;b=b|0;var c=0,d=0;if(v[a+124>>2]){while(1){d=v[v[a+120>>2]+(c<<2)>>2];zg(Ba[v[v[d>>2]+104>>2]](d)|0);c=c+1|0;if(c>>>0>2]){continue}break}}a=v[a+24>>2];if(a){c=v[a>>2];Ba[v[v[c>>2]+84>>2]](c,v[a+52>>2],v[a+56>>2],b)}}function k3(a){var b=0,c=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+16>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=0}function jp(a){a=a|0;var b=0,c=0;v[a>>2]=124644;b=v[a+20>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+12>>2];if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function X9(a,b){var c=0,d=0,e=0;o(+a);d=j(1)|0;e=j(0)|0;c=d>>>20&2047;if((c|0)!=2047){if(!c){if(a==0){c=0}else{a=X9(a*0x10000000000000000,b);c=v[b>>2]+-64|0}v[b>>2]=c;return a}v[b>>2]=c-1022;l(0,e|0);l(1,d&-2146435073|1071644672);a=+n()}return a}function Uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);b=v[b+312>>2]+(c<<5)|0;c=v[b+20>>2];d=v[b+16>>2];e=z[b+24>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+28>>2]=0;z[a+24>>2]=e;v[a+16>>2]=d;v[a+20>>2]=c}function Tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);b=v[b+228>>2]+(c<<5)|0;c=v[b+20>>2];d=v[b+16>>2];e=z[b+24>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+28>>2]=0;z[a+24>>2]=e;v[a+16>>2]=d;v[a+20>>2]=c}function RC(a,b,c,d,e){var f=0,g=0;f=xa-16|0;xa=f;b=SC(a,b,c,d);v[f+12>>2]=b;a:{if(v[b+40>>2]|!b){break a}g=v[e+4>>2];if(g>>>0>=(v[e+8>>2]&2147483647)>>>0){OC(e,f+12|0);break a}v[v[e>>2]+(g<<2)>>2]=b;v[e+4>>2]=g+1}a=QC(a,c,d,e);xa=f+16|0;return a}function $Z(a){a=a|0;var b=0,c=0;v[a+8>>2]=142832;v[a>>2]=142748;if(t[a+6|0]&1){b=v[a+56>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+56>>2]=0;b=v[a+84>>2];if(b){b=YZ(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+84>>2]=0}return a|0}function oI(a){a=a|0;var b=0,c=0,d=0;b=v[a+36>>2];if(b){c=v[a+28>>2];d=v[v[c+192>>2]+4>>2];a=v[a+40>>2]+(v[a+32>>2]<<2)|0;c=v[c+276>>2];b=b-1|0;if(b){while(1){gI(v[a>>2],v[c+4>>2],d);a=a+4|0;b=b-1|0;if(b){continue}break}}gI(v[a>>2],v[c+4>>2],d)}}function Op(a,b){a=a|0;b=b|0;var c=C(0);if(!w[a+4801|0]){z[a+1084>>2]=z[b>>2];z[a+1088>>2]=z[b+4>>2];c=z[b+8>>2];v[a+1096>>2]=1;z[a+1092>>2]=c;return}z[a+5548>>2]=z[b>>2];z[a+5552>>2]=z[b+4>>2];z[a+5556>>2]=z[b+8>>2];a=a+5580|0;v[a>>2]=v[a>>2]|1}function gb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=xa-32|0;xa=e;z[e>>2]=z[d>>2];z[e+4>>2]=z[d+4>>2];z[e+8>>2]=z[d+8>>2];z[e+12>>2]=z[d+12>>2];z[e+16>>2]=z[c>>2];z[e+20>>2]=z[c+4>>2];z[e+24>>2]=z[c+8>>2];Ba[v[v[a>>2]+32>>2]](a,b,e);xa=e+32|0}function gY(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0),e=C(0),f=C(0),g=0,h=0;c=(c<<4)+101152|0;g=v[c+4>>2];b=v[b+4>>2];d=z[b+52>>2];h=v[c+8>>2];e=z[b+56>>2];c=v[c>>2];f=z[b+48>>2];v[a+12>>2]=0;z[a>>2]=c?f:C(-f);z[a+8>>2]=h?e:C(-e);z[a+4>>2]=g?d:C(-d)}function R_(a,b){v[a+12>>2]=1;v[a+4>>2]=196609;v[a+76>>2]=0;v[a+80>>2]=0;v[a+96>>2]=b;v[a+8>>2]=142996;v[a>>2]=142892;v[a+84>>2]=0;v[a+88>>2]=0;v[a+92>>2]=0;v[a+72>>2]=1;u[a+68>>1]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+60>>2]=0;v[a+64>>2]=0;return a}function t5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+80>>2];z[e+428>>2]=z[b>>2];z[e+432>>2]=z[b+4>>2];z[e+436>>2]=z[b+8>>2];z[e+440>>2]=z[c>>2];z[e+444>>2]=z[c+4>>2];z[e+448>>2]=z[c+8>>2];if(d){r5(a)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function sC(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){iC(e,v[(d<<2)+b>>2]);d=d+1|0;if((d|0)!=(c|0)){continue}break}t[a+7648|0]=1;v[a+32>>2]=0;v[a+16>>2]=v[a+7664>>2];b=a+7672|0;c=v[b+4>>2];v[a+24>>2]=v[b>>2];v[a+28>>2]=c}}function e3(a){var b=0,c=0;b=v[a>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a>>2]=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+16>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+16>>2]=0}function Cb(a,b,c,d){a=a|0;b=b|0;c=C(c);d=C(d);var e=0,f=C(0);e=xa-32|0;xa=e;f=z[b>>2];v[e+16>>2]=0;v[e+20>>2]=0;v[e+8>>2]=0;v[e+12>>2]=0;z[e+28>>2]=c;z[e+24>>2]=d==C(-1)?C(f*C(.009999999776482582)):d;Ba[v[v[a>>2]+140>>2]](a,e+8|0);xa=e+32|0}function TU(a){a=a|0;var b=0,c=0;v[a>>2]=140616;if(w[a+32|0]){b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+12>>2]=0;b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+8>>2]=0}v[a+4>>2]=-2147483648;return a|0}function OK(a,b){v[a+44>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a>>2]=b;b=a+48|0;v[b>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[a+64>>2]=0;v[a+68>>2]=0;b=a+72|0;v[b>>2]=0;v[b+4>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[a+88>>2]=0}function xK(a,b){var c=0;c=w[b+7|0];if(c&1){a:{if(c&2){break a}c=v[b>>2];if(w[c+65|0]==1){v[a+924>>2]=v[a+924>>2]-1;v[c>>2]=v[a+932>>2];v[a+932>>2]=c;break a}v[a+632>>2]=v[a+632>>2]-1;v[c>>2]=v[a+640>>2];v[a+640>>2]=c}t[b+7|0]=0;v[b>>2]=0}}function g1(a){a=a|0;var b=0,c=0;v[a+8>>2]=144300;v[a>>2]=144204;a:{if(t[a+196|0]&1){break a}b=v[a+200>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b-v[b-4>>2]|0);v[a+200>>2]=0}a=M0(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function WI(a){var b=0,c=0,d=0,e=0;b=v[a>>2];c=v[a+4>>2];if((b|0)!=(c|0)){d=v[a+8>>2];while(1){e=b+4|0;v[a>>2]=e;b=v[b>>2];if(!(!(t[b+21|0]&1)|v[b+24>>2]!=(d|0)&v[b+28>>2]!=(d|0))){return b-4|0}b=e;if((c|0)!=(b|0)){continue}break}}return 0}function Ki(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=x[a+24>>1];if(c){g=(c|0)==1?a+20|0:v[a+20>>2];while(1){e=(d<<2)+g|0;f=Ba[v[v[b>>2]>>2]](b,-2147483648,v[e>>2])|0;v[e>>2]=f;Zt(f,a);d=d+1|0;if((c|0)!=(d|0)){continue}break}}ih(a+12|0,b)}function AW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0),h=C(0);f=C(z[d+24>>2]-z[b+24>>2]);g=C(f*f);f=C(z[d+16>>2]-z[b+16>>2]);h=C(f*f);f=C(z[d+20>>2]-z[b+20>>2]);g=C(g+C(h+C(f*f)));f=C(z[a+4>>2]+z[c+4>>2]);return g<=C(f*f)|0}function yd(a,b){a=a|0;b=b|0;var c=0,d=0;c=xa-16|0;xa=c;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](c,b);a=maa(16);v[a>>2]=v[c>>2];v[a+4>>2]=v[c+4>>2];v[a+8>>2]=v[c+8>>2];v[a+12>>2]=v[c+12>>2];xa=c+16|0;return a|0}function _8(a){a=a|0;var b=0,c=0;v[a>>2]=149328;v[a+76>>2]=0;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)){t[a+68|0]=0;return a|0}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function JB(a){var b=0;v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;b=a+12|0;v[b>>2]=0;v[b+4>>2]=0;v[b+16>>2]=0;v[b+20>>2]=0;v[b+8>>2]=0;v[b+12>>2]=0;v[a+60>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0;v[a+44>>2]=0;v[a+48>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;return a}function FS(a,b){a=a|0;b=C(b);var c=0,d=0;c=xa-16|0;xa=c;z[a+536>>2]=b;if(v[a+432>>2]){d=vU(a+8|0);v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=2;Ba[v[v[d>>2]+52>>2]](d,c)|0;z[c+8>>2]=C(b*C(.5))*z[a+516>>2];Ba[v[v[d>>2]+36>>2]](d,c)}xa=c+16|0;return 1}function $8(a){a=a|0;var b=0,c=0;v[a>>2]=149260;v[a+76>>2]=0;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)){t[a+68|0]=0;return a|0}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function j_(a,b){a=a|0;b=b|0;var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0);c=z[b+28>>2];d=z[b+32>>2];e=z[b+20>>2];f=z[b+16>>2];g=z[b+24>>2];h=z[b+36>>2];z[a+20>>2]=g+h;z[a+16>>2]=e+d;z[a+12>>2]=f+c;z[a+8>>2]=g-h;z[a+4>>2]=e-d;z[a>>2]=f-c}function _Z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=w[a+55|0];if(d>>>0>b>>>0){a=v[a+56>>2]+B(b,20)|0;z[c>>2]=z[a>>2];z[c+4>>2]=z[a+4>>2];z[c+8>>2]=z[a+8>>2];z[c+12>>2]=z[a+12>>2];u[c+16>>1]=w[a+18|0];u[c+18>>1]=x[a+16>>1]}return b>>>0>>0|0}function _0(a,b){a=a|0;b=b|0;var c=C(0),d=C(0),e=C(0),f=C(0),g=C(0),h=C(0);c=z[b+44>>2];d=z[b+48>>2];e=z[b+36>>2];f=z[b+32>>2];g=z[b+40>>2];h=z[b+52>>2];z[a+20>>2]=g+h;z[a+16>>2]=e+d;z[a+12>>2]=f+c;z[a+8>>2]=g-h;z[a+4>>2]=e-d;z[a>>2]=f-c}function XI(a){var b=0,c=0,d=0,e=0;b=v[a+4>>2];d=v[a>>2];if((b|0)!=(d|0)){e=v[a+8>>2];while(1){b=b-4|0;v[a+4>>2]=b;c=v[b>>2];if(!(!(t[c+21|0]&1)|v[c+24>>2]!=(e|0)&v[c+28>>2]!=(e|0))){return c-4|0}if((b|0)!=(d|0)){continue}break}}return 0}function WO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=v[a+24>>2];e=v[a+36>>2];g=e-1|0;f=v[b+152>>2];h=f>>>0>>0;c=h?g:e;v[b+152>>2]=c;c=d+(c<<2)|0;d=v[c>>2];v[c>>2]=v[b+44>>2];v[v[d>>2]+152>>2]=f;v[v[a+24>>2]+(f<<2)>>2]=d;v[a+36>>2]=h?g:e+1|0}function Sb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-32|0;xa=d;z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];z[d+16>>2]=z[b>>2];z[d+20>>2]=z[b+4>>2];z[d+24>>2]=z[b+8>>2];Ba[v[v[a>>2]+188>>2]](a,d,1);xa=d+32|0}function Hb(a,b,c,d,e,f){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);f=C(f);var g=0;g=xa-32|0;xa=g;v[g+8>>2]=0;v[g+12>>2]=0;v[g+16>>2]=0;z[g+8>>2]=e;v[g>>2]=0;v[g+4>>2]=0;z[g+24>>2]=c;z[g+20>>2]=d;z[g+12>>2]=f;Ba[v[v[a>>2]+148>>2]](a,b,g);xa=g+32|0}function DG(a,b){var c=0,d=0;c=xa-16|0;xa=c;z[a+96>>2]=z[b>>2];z[a+100>>2]=z[b+4>>2];z[a+104>>2]=z[b+8>>2];a=v[a>>2];if(a){b=v[v[a+40>>2]+1012>>2];d=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(d|0)==2,c+8|0)}xa=c+16|0}function Zk(a){a=a|0;var b=0,c=0;v[a>>2]=120728;Pm(v[37389],a);b=v[a+104>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+96>>2];if((b|0)==(a+76|0)){t[a+92|0]=0;break a}if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function XE(a,b,c){var d=0,e=0,f=0;d=v[a+28>>2];if(d){d=d-1|0;a=v[a+20>>2];while(1){e=d;d=v[a>>2];f=w[d+21|0];a:{if(!(f&c)){break a}t[d+22|0]=w[d+22|0]|b;if(f&8){break a}VH(d);t[d+21|0]=w[d+21|0]|8}a=a+4|0;d=e-1|0;if(e){continue}break}}}function Gh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=xa-16|0;xa=e;t[e+8|0]=w[c|0];c=xa-16|0;xa=c;d=v[a+24>>2];if(d){t[c+8|0]=w[e+8|0];a=xa-16|0;xa=a;d=v[d>>2];t[a+8|0]=w[c+8|0];Ba[v[v[d>>2]+40>>2]](d,b,a+8|0);xa=a+16|0}xa=c+16|0;xa=e+16|0}function Ci(a){a=a|0;var b=0,c=0;v[a>>2]=118576;Pm(v[37389],a);b=v[a+104>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+96>>2];if((b|0)==(a+76|0)){t[a+92|0]=0;break a}if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function we(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-32|0;xa=d;z[d>>2]=z[c>>2];z[d+4>>2]=z[c+4>>2];z[d+8>>2]=z[c+8>>2];z[d+12>>2]=z[c+12>>2];z[d+16>>2]=z[b>>2];z[d+20>>2]=z[b+4>>2];z[d+24>>2]=z[b+8>>2];Ba[v[v[a>>2]+248>>2]](a,d);xa=d+32|0}function nh(a,b){var c=0,d=0;a=v[a+4>>2];a:{if(!a){break a}d=v[a+40>>2];if(!d){break a}c=v[a+36>>2];a=0;b:{while(1){if(w[c+(a<<3)|0]==1){break b}a=a+1|0;if((d|0)!=(a|0)){continue}break}return 0}v[b>>2]=a;c=v[(c+(a<<3)|0)+4>>2]}return c}function Nj(a){a=a|0;var b=0,c=0;a=v[a+16>>2];a:{if(!a){break a}c=v[a+40>>2];if(!c){break a}b=v[a+36>>2];a=0;b:{while(1){if(w[b+(a<<3)|0]==1){break b}a=a+1|0;if((c|0)!=(a|0)){continue}break}b=0;break a}b=v[(b+(a<<3)|0)+4>>2]}return b|0}function CG(a,b){var c=0,d=0;c=xa-16|0;xa=c;z[a+80>>2]=z[b>>2];z[a+84>>2]=z[b+4>>2];z[a+88>>2]=z[b+8>>2];a=v[a>>2];if(a){b=v[v[a+40>>2]+1012>>2];d=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[b>>2]+44>>2]](b,(d|0)==2,c+8|0)}xa=c+16|0}function Ur(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){SP(a+32|0,b);return}z[a+5272>>2]=z[b>>2];z[a+5276>>2]=z[b+4>>2];z[a+5280>>2]=z[b+8>>2];z[a+5284>>2]=z[b+12>>2];z[a+5288>>2]=z[b+16>>2];z[a+5292>>2]=z[b+20>>2];a=a+5580|0;v[a>>2]=v[a>>2]|64}function XR(a,b){var c=0;a:{if(v[a+44>>2]&98304|(v[a+56>>2]|!b)){break a}b=v[v[a+32>>2]+4>>2];b=w[v[b+44>>2]+9|0]-1>>>0<2?b:0;if(!b|w[a+46|0]&4){break a}c=v[v[a+4>>2]+40>>2];a=v[v[a+28>>2]+4>>2];BP(c,w[v[a+44>>2]+9|0]-1>>>0<2?a:0,b)}}function G0(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=C(g);h=h|0;i=i|0;j=C(j);var k=0;c=xa-16|0;xa=c;d=v[a+36>>2];k=x[d+4>>1];u[c+8>>1]=x[i>>1];a=Ba[v[(k<<2)+143884>>2]](d,a,b,e,f,g,h,c+8|0,j)|0;xa=c+16|0;return a|0}function E0(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=C(g);h=h|0;i=i|0;j=C(j);var k=0;c=xa-16|0;xa=c;d=v[a+36>>2];k=x[d+4>>1];u[c+8>>1]=x[i>>1];a=Ba[v[(k<<2)+143876>>2]](d,a,b,e,f,g,h,c+8|0,j)|0;xa=c+16|0;return a|0}function kh(a,b){var c=0,d=0,e=0,f=0;c=-1;a=v[a+4>>2];a:{if(!a){break a}d=v[a+40>>2];if(!d){break a}f=v[a+36>>2];a=0;while(1){e=(a<<3)+f|0;if(!(!w[e|0]&v[e+4>>2]==(b|0))){a=a+1|0;if((d|0)!=(a|0)){continue}break a}break}c=a}return c}function h2(a){a=a|0;var b=0,c=0;v[a>>2]=144644;b=v[a+6620>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+6612>>2];if((b|0)==(a+4560|0)){t[a+6608|0]=0;return a|0}if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function AJ(a,b){var c=0,d=0;c=xa-16|0;xa=c;v[c+12>>2]=b;v[b+44>>2]=v[b+44>>2]|8388608;d=v[a+36>>2];v[b+52>>2]=d;a:{if((v[a+40>>2]&2147483647)>>>0<=d>>>0){CJ(a+32|0,c+12|0);break a}v[v[a+32>>2]+(d<<2)>>2]=b;v[a+36>>2]=d+1}xa=c+16|0}function $9(a){var b=0,c=0,d=0;if(t[v[a>>2]]-48>>>0>=10){return 0}while(1){d=v[a>>2];c=-1;if(b>>>0<=214748364){c=t[d|0]-48|0;b=B(b,10);c=(c|0)>(2147483647-b|0)?-1:c+b|0}v[a>>2]=d+1;b=c;if(t[d+1|0]-48>>>0<10){continue}break}return b}function Qw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=xa-32|0;xa=c;Rw(c,v[a+336>>2]+B(b,192)|0,d);z[e>>2]=z[c+16>>2];z[e+4>>2]=z[c+20>>2];z[e+8>>2]=z[c+24>>2];z[e+16>>2]=z[c>>2];z[e+20>>2]=z[c+4>>2];z[e+24>>2]=z[c+8>>2];xa=c+32|0}function QP(a,b,c,d){var e=0,f=0;e=1<>2]|e}else{e=v[f>>2]&(e^-1)}v[f>>2]=e;b=1<>2]}else{b=v[c>>2]&(b^-1)}v[c>>2]=b;v[a+2356>>2]=v[a+2356>>2]|2}function ZG(a,b){var c=0;a=v[a+176>>2];if(!(!a|w[a+31|0]!=1|!w[a+28|0])){z[b>>2]=z[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2];z[b+16>>2]=z[a+16>>2];z[b+20>>2]=z[a+20>>2];z[b+24>>2]=z[a+24>>2];c=1}return c}function ES(a,b){a=a|0;b=C(b);var c=0,d=0;c=xa-16|0;xa=c;z[a+532>>2]=b;if(v[a+432>>2]){d=vU(a+8|0);v[c+4>>2]=0;v[c+8>>2]=0;v[c>>2]=2;Ba[v[v[d>>2]+52>>2]](d,c)|0;z[c+4>>2]=z[a+516>>2]*b;Ba[v[v[d>>2]+36>>2]](d,c)}xa=c+16|0;return 1}function FE(a){var b=0,c=0;b=v[a+124>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[a+72>>2];if(b){Ba[v[v[b>>2]+52>>2]](b)}v[a+72>>2]=0;b=v[a+76>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}BE(a+36|0);BE(a)}function vb(a,b,c,d,e){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);var f=0;f=xa-32|0;xa=f;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;z[f+8>>2]=d;v[f>>2]=0;v[f+4>>2]=0;z[f+24>>2]=b;z[f+20>>2]=c;z[f+12>>2]=e;Ba[v[v[a>>2]+128>>2]](a,f);xa=f+32|0}function qb(a,b,c,d,e){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);var f=0;f=xa-32|0;xa=f;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;z[f+8>>2]=d;v[f>>2]=0;v[f+4>>2]=0;z[f+24>>2]=c;z[f+20>>2]=b;z[f+12>>2]=e;Ba[v[v[a>>2]+124>>2]](a,f);xa=f+32|0}function OY(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=v[a+8>>2];c=v[a+264>>2];if(c>>>0>=(v[a+268>>2]&2147483647)>>>0){NY(a,b);return 1}v[v[a+260>>2]+(c<<2)>>2]=v[b>>2];v[a+264>>2]=v[a+264>>2]+1;return 1}function Mb(a,b,c,d,e){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);var f=0;f=xa-32|0;xa=f;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;z[f+8>>2]=d;v[f>>2]=0;v[f+4>>2]=0;z[f+24>>2]=c;z[f+20>>2]=b;z[f+12>>2]=e;Ba[v[v[a>>2]+164>>2]](a,f);xa=f+32|0}function Kb(a,b,c,d,e){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);var f=0;f=xa-32|0;xa=f;v[f+8>>2]=0;v[f+12>>2]=0;v[f+16>>2]=0;z[f+8>>2]=d;v[f>>2]=0;v[f+4>>2]=0;z[f+24>>2]=b;z[f+20>>2]=c;z[f+12>>2]=e;Ba[v[v[a>>2]+156>>2]](a,f);xa=f+32|0}function rC(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=hC(a+7664|0,b,c,d,e);t[a+7648|0]=1;v[a+32>>2]=0;c=a+7672|0;d=v[c+4>>2];v[a+24>>2]=v[c>>2];v[a+28>>2]=d;v[a+16>>2]=v[a+7664>>2];return(b|0)==(e|0)|0}function hJ(a,b){var c=0,d=0,e=0,f=0;c=xa-16|0;xa=c;d=v[b+28>>2];e=v[b+32>>2];f=d>>>0>e>>>0;v[c+4>>2]=f?d:e;v[c>>2]=f?e:d;a=iJ(a+1956|0,c,c+15|0);if(!w[c+15|0]){d=v[c+4>>2];e=v[c>>2];v[a+8>>2]=b;v[a>>2]=e;v[a+4>>2]=d}xa=c+16|0}function Vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=C(0);b=v[b+228>>2]+(c<<5)|0;z[a>>2]=z[b+16>>2];z[a+4>>2]=z[b+20>>2];d=z[b+24>>2];v[a+12>>2]=0;z[a+8>>2]=d;z[a+16>>2]=z[b>>2];z[a+20>>2]=z[b+4>>2];d=z[b+8>>2];v[a+28>>2]=0;z[a+24>>2]=d}function o9(a){a=a|0;var b=0,c=0;v[a>>2]=149328;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)){t[a+68|0]=0;return a|0}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function m9(a){a=a|0;var b=0,c=0;v[a>>2]=149260;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)){t[a+68|0]=0;return a|0}if(!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function VG(a,b,c){var d=0,e=0,f=0;d=xa-16|0;xa=d;z[a+156>>2]=b;a=v[a>>2];if(a){e=v[v[a+40>>2]+1012>>2];f=w[v[a+44>>2]+9|0];v[d+8>>2]=v[a+144>>2];Ba[v[v[e>>2]+44>>2]](e,(f|0)==2,d+8|0);if(c?1:b>C(0)){oH(a)}lH(a,b,c)}xa=d+16|0}function l1(a){var b=0,c=0;if(!w[a+40|0]){b=v[a+24>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+24>>2]=0}b=v[a+28>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+28>>2]=0}v[a+20>>2]=0;v[a+24>>2]=0;return a}function yQ(a){a=a|0;var b=0,c=0,d=0,e=0;b=xa-16|0;xa=b;c=v[a+32>>2];if(c){d=v[a+28>>2];while(1){e=v[a+36>>2];v[b+8>>2]=v[v[v[d>>2]>>2]+144>>2];Ba[v[v[e>>2]+44>>2]](e,0,b+8|0);d=d+4|0;c=c-1|0;if(c){continue}break}}xa=b+16|0}function iI(a,b,c){var d=0,e=0,f=0;if((v[a+12>>2]&2147483647)>>>0>>0){jI(a,b)}d=v[a+8>>2];if((d|0)<(b|0)){e=v[a+4>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+8>>2]=b}function cX(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=xa-16|0;xa=i;j=v[a+36>>2];k=x[j+4>>1];u[i+8>>1]=x[f>>1];a=Ba[v[(k<<2)+141584>>2]](j,a,b,c,d,e,i+8|0,g,h)|0;xa=i+16|0;return a|0}function Ne(a){a=a|0;var b=C(0),c=C(0),d=0;a:{if(v[a>>2]!=2){break a}b=z[a+4>>2];if((v[a+4>>2]&2139095040)==2139095040){break a}c=z[a+8>>2];if((v[a+8>>2]&2139095040)==2139095040){break a}d=!(c<=C(0))&(b<=C(0)^-1)}return d|0}function uV(a){a=a|0;var b=0,c=0;v[a>>2]=140672;a:{if(t[a+180|0]&1){break a}b=v[a+184>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b-v[b-4>>2]|0);v[a+184>>2]=0}a=tV(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function HK(a){a=a|0;var b=0,c=0,d=0;if(v[a+8>>2]){while(1){b=d<<2;c=v[b+v[a+4>>2]>>2];Ba[v[v[c>>2]>>2]](c)|0;b=v[b+v[a+4>>2]>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}d=d+1|0;if(d>>>0>2]){continue}break}}}function zr(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){Ar(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<1)|0;d=(d<<1)+e|0;while(1){u[d>>1]=x[c>>1];d=d+2|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function uF(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){tF(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function cz(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){Aw(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function Y8(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){Z8(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function Dr(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){Er(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function C$(a,b,c,d){var e=0,f=0,g=C(0),h=C(0);e=xa-32|0;xa=e;f=v[a+4>>2];v[e+24>>2]=a;v[e+20>>2]=f;g=z[a+8>>2];h=z[a+12>>2];z[e+16>>2]=C(1)/z[a+16>>2];z[e+8>>2]=C(1)/h;z[e+12>>2]=C(1)/g;n$(e+8|0,b,d,0,0,c,1,1);xa=e+32|0}function Br(a,b,c){var d=0,e=0,f=0;if((v[a+8>>2]&2147483647)>>>0>>0){Cr(a,b)}d=v[a+4>>2];if((d|0)<(b|0)){e=v[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){v[d>>2]=v[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}v[a+4>>2]=b}function pJ(a,b,c,d,e){var f=0,g=0,h=0;f=xa-16|0;xa=f;g=v[b+4>>2];h=v[g+28>>2];g=v[g+20>>2];v[f+8>>2]=b;v[f>>2]=g;v[f+4>>2]=g+(h<<2);b=XI(f);if(b){c=c|3;while(1){mJ(a,b,c,0,1,d,e);b=XI(f);if(b){continue}break}}xa=f+16|0}function a1(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=144172;b=a-8|0;v[b>>2]=144076;A$(a+116|0);c=v[a+100>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[a+100>>2]=0;a=M0(b);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function Q0(a){a=a|0;var b=0,c=0,d=0,e=0;b=a-8|0;if(pV(v[a+72>>2],b)){d=x[a-4>>1];c=v[b>>2];e=v[a+72>>2];a:{if(t[a-2|0]&1){Ba[v[c+16>>2]](b);break a}Ba[v[c+12>>2]](b)|0}rV(e,b,d);return}b9(v[37696],8,10730,208,75171,0)}function k2(a,b){v[b+8>>2]=0;v[b+12>>2]=8;v[b>>2]=0;v[b+4>>2]=0;v[b+36>>2]=0;v[b+40>>2]=0;v[b+32>>2]=103120;v[b+16>>2]=6;v[b+20>>2]=0;v[b+24>>2]=a+100;v[b+28>>2]=a+4;v[b+44>>2]=0;v[b+48>>2]=0;v[b+52>>2]=0;v[b+56>>2]=0}function ju(a,b){var c=0,d=0,e=0;c=x[a+4>>1];if(c){d=(c|0)==1?a:v[a>>2];e=b+4816|0;a=0;while(1){b=v[(a<<2)+d>>2];if(w[b+39|0]&16){uu(e,b+32|0);v[b+36>>2]=v[b+36>>2]&-268435457}a=a+1|0;if((c|0)!=(a|0)){continue}break}}}function pc(a,b){a=a|0;b=b|0;var c=0,d=0;c=xa-16|0;xa=c;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](c,b);a=maa(12);z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];xa=c+16|0;return a|0}function XU(a,b,c){var d=0,e=0;d=xa-5120|0;xa=d;if(!(!b|(c|0)<=0)){e=v[a+4>>2]&2147483647;if((e|0)!=(c|0)){if(c>>>0>e>>>0){VU(a,c)}v[a+4>>2]=c|-2147483648}v[a+20>>2]=d;v[a+16>>2]=d+1024;RU(a,b,c)}xa=d+5120|0;return a}function Uj(a,b){a=a|0;b=b|0;b=v[b+316>>2]&1024?v[b+56>>2]+144|0:b+112|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2]}function Saa(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=B(e,f);g=c&65535;h=a&65535;i=B(g,h);f=(i>>>16|0)+B(f,g)|0;e=(f&65535)+B(e,h)|0;Aa=(B(b,c)+j|0)+B(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function Qc(){var a=0;a=maa(64);v[a+16>>2]=0;v[a+20>>2]=0;u[a+12>>1]=0;v[a+8>>2]=-1;v[a>>2]=0;v[a+4>>2]=0;v[a+48>>2]=0;v[a+40>>2]=2139095039;v[a+44>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;return a|0}function zX(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=v[a+8>>2];c=v[a+4>>2];if(c>>>0>=(v[a+8>>2]&2147483647)>>>0){pn(a,b);return 1}v[v[a>>2]+(c<<2)>>2]=v[b>>2];v[a+4>>2]=v[a+4>>2]+1;return 1}function aC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(!w[a+48|0]){b9(v[37696],2,11218,392,74626,0);return 0}e=v[a+40>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+44>>2]+(d<<2)|0,c<<2)}else{c=0}return c|0}function WE(a,b){var c=0,d=0,e=0;b=v[(v[b>>2]==(a|0)?12:16)+b>>2];c=v[a+28>>2]-1|0;v[a+28>>2]=c;d=v[a+20>>2];e=b<<2;v[d+e>>2]=v[(c<<2)+d>>2];if(b>>>0>>0){c=a;a=v[v[a+20>>2]+e>>2];v[((c|0)==v[a>>2]?12:16)+a>>2]=b}}function h1(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=144300;c=a-8|0;v[c>>2]=144204;a:{if(t[a+188|0]&1){break a}b=v[a+192>>2];if(!b){break a}d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,b-v[b-4>>2]|0);v[a+192>>2]=0}return M0(c)|0}function bh(a,b){a=a|0;b=b|0;var c=0,d=0;if(v[a+36>>2]){while(1){c=v[v[a+40>>2]+(d<<2)>>2];if(!(x[c+4>>1]!=13|!c)){c=Ba[v[v[c>>2]+248>>2]](c)|0}Ba[v[v[b>>2]+8>>2]](b,c);d=d+1|0;if(d>>>0>2]){continue}break}}}function Tr(a,b){a=a|0;b=b|0;if((b|0)<=23){if(!(!(w[a+5580|0]&32)|!w[(a+b|0)+5248|0])){return C(z[((b<<2)+a|0)+5152>>2])}return C(z[(v[a+1008>>2]+(b<<2)|0)+1032>>2])}b9(v[37696],4,11709,2497,66542,0);return C(C(0))}function Eb(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+16>>2]=0;v[e+20>>2]=0;v[e+24>>2]=0;z[e+16>>2]=c;v[e+8>>2]=0;v[e+12>>2]=0;z[e+28>>2]=b;z[e+20>>2]=d;Ba[v[v[a>>2]+140>>2]](a,e+8|0);xa=e+32|0}function z$(a){v[a>>2]=0;v[a+4>>2]=0;u[a+56>>1]=0;v[a+48>>2]=0;v[a+52>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0;return a}function hL(a,b,c){a=a|0;b=b|0;c=c|0;v[v[a+4>>2]>>2]=b;gL(a,c);c=v[a+32>>2];b=v[a+4>>2];v[b+384>>2]=v[a+36>>2];v[b+368>>2]=c;VK(b,b+340|0);b=v[a+4>>2];aL(b+340|0,a,b+324|0,b+332|0);J9(v[b+324>>2],0,v[b+328>>2]<<2)}function V9(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 C(b?-1/a:a)}function MU(a,b){var c=0;a:{if(!w[a+6|0]){break a}c=x[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;Ba[v[v[b>>2]+4>>2]](b,v[a>>2],((c>>>16|c)<<2)+4|0)}t[a+6|0]=1;v[a>>2]=0;u[a+4>>1]=0}function Ai(a,b){a=a|0;b=b|0;var c=0,d=0;a:{if(w[a+92|0]){break a}c=v[a+96>>2];if(!c){break a}d=v[a+104>>2];if(!(v[a+100>>2]|d&2147483647)){break a}Ba[v[v[b>>2]+8>>2]](b,c,d<<2)}Ba[v[v[b>>2]+16>>2]](b,v[a+112>>2])}function rc(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=xa-16|0;xa=g;h=v[a+4>>2];b=(h>>1)+b|0;a=v[a>>2];a=h&1?v[v[b>>2]+a>>2]:a;u[g+8>>1]=x[c>>1];a=Ba[a|0](b,g+8|0,d,e,f)|0;xa=g+16|0;return a|0}function bF(a,b){z[a+32>>2]=z[b>>2];z[a+36>>2]=z[b+4>>2];z[a+40>>2]=z[b+8>>2];z[a+44>>2]=z[b+12>>2];z[a+48>>2]=z[b+16>>2];z[a+52>>2]=z[b+20>>2];z[a+56>>2]=z[b+24>>2];t[a+273|0]=w[a+273|0]|2;a=v[a>>2];if(a){nF(a)}}function al(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=v[a+392>>2];if(c){d=a,e=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[d+392>>2]=e}c=v[a+396>>2];if(c){d=a,e=Ba[v[v[b>>2]>>2]](b,-2147483648,c)|0,v[d+396>>2]=e}v[a+388>>2]=a}function BJ(a,b){var c=0,d=0,e=0;c=v[b+52>>2];v[b+52>>2]=-1;v[b+44>>2]=v[b+44>>2]&-8388609;b=v[a+36>>2]-1|0;v[a+36>>2]=b;d=v[a+32>>2];e=c<<2;v[d+e>>2]=v[(b<<2)+d>>2];if(b>>>0>c>>>0){v[v[v[a+32>>2]+e>>2]+52>>2]=c}}function sH(a){var b=0,c=0,d=0;c=v[a+28>>2];d=v[a+20>>2];b=v[a+100>>2];v[b+148>>2]=v[b+148>>2]-1;a:{while(1){if(c){c=c-1|0;b=v[d>>2];d=d+4|0;if(w[b+20|0]!=4){continue}break a}break}u[a+148>>1]=x[a+148>>1]&65279}}function jR(a){a=a|0;var b=0,c=0,d=0;c=xa-48|0;xa=c;d=c+8|0;a=v[a+28>>2];b=v[v[a+976>>2]+1024>>2];Ba[v[v[b>>2]+84>>2]](d,b);b=v[a+1004>>2];Ba[v[v[b>>2]+8>>2]](b,v[a+1e3>>2],v[a+2492>>2],v[a+2496>>2],d);xa=c+48|0}function _j(a,b){a=a|0;b=b|0;var c=0;if(w[b+316|0]&2){b=v[b+56>>2]+96|0}else{c=b- -64|0;b=v[c+176>>2];a:{if(!(!b|w[b+31|0]!=1)){b=b+32|0;break a}b=c+128|0}}z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2]}function Zo(a,b){a=a|0;b=b|0;b=v[b+52>>2]&64?v[b+56>>2]+96|0:b+80|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2]}function aF(a,b){z[a+4>>2]=z[b>>2];z[a+8>>2]=z[b+4>>2];z[a+12>>2]=z[b+8>>2];z[a+16>>2]=z[b+12>>2];z[a+20>>2]=z[b+16>>2];z[a+24>>2]=z[b+20>>2];z[a+28>>2]=z[b+24>>2];t[a+273|0]=w[a+273|0]|2;a=v[a>>2];if(a){nF(a)}}function Wm(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 Fi(a,b){a=a|0;b=b|0;var c=0,d=0;fu(a+20|0,b);eh(a+12|0,b);a:{if(w[a+348|0]){break a}c=v[a+352>>2];if(!c){break a}d=v[a+356>>2];a=v[a+360>>2];if(!(d|a&2147483647)){break a}Ba[v[v[b>>2]+8>>2]](b,c,a<<2)}}function Dd(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=xa-16|0;xa=g;h=v[a+4>>2];b=(h>>1)+b|0;a=v[a>>2];a=h&1?v[v[b>>2]+a>>2]:a;t[g+8|0]=w[f|0];a=Ba[a|0](b,c,d,e,g+8|0)|0;xa=g+16|0;return a|0}function u3(a,b,c){var d=0,e=0;d=v[c>>2]+1|0;v[c>>2]=d;e=v[b>>2];v[b>>2]=d>>>0>>0?e:d;d=v[a+24>>2];a:{if(!d){break a}u3(d,b,c);v[c>>2]=v[c>>2]-1;a=v[a+24>>2];if(!a){break a}u3(a+36|0,b,c);v[c>>2]=v[c>>2]-1}}function raa(a,b,c){var d=0;d=v[a+16>>2];if(!d){v[a+36>>2]=1;v[a+24>>2]=c;v[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(v[a+24>>2]!=2){break a}v[a+24>>2]=c;return}t[a+54|0]=1;v[a+24>>2]=2;v[a+36>>2]=v[a+36>>2]+1}}function n5(a,b){a=a|0;b=b|0;var c=0;b=v[b+80>>2];z[a>>2]=z[b+240>>2];z[a+4>>2]=z[b+244>>2];z[a+8>>2]=z[b+248>>2];z[a+12>>2]=z[b+252>>2];z[a+16>>2]=z[b+256>>2];c=v[b+264>>2];v[a+20>>2]=v[b+260>>2];v[a+24>>2]=c}function j5(a,b){a=a|0;b=b|0;var c=0;b=v[b+80>>2];z[a>>2]=z[b+212>>2];z[a+4>>2]=z[b+216>>2];z[a+8>>2]=z[b+220>>2];z[a+12>>2]=z[b+224>>2];z[a+16>>2]=z[b+228>>2];c=v[b+236>>2];v[a+20>>2]=v[b+232>>2];v[a+24>>2]=c}function ef(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=maa(24);b=b+c|0;c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;c=v[b+20>>2];v[a+16>>2]=v[b+16>>2];v[a+20>>2]=c;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c;return a|0}function _E(a){var b=0,c=0,d=0;a=v[a>>2];if(a){if(v[a+28>>2]){d=v[a+12>>2];b=v[a>>2];c=v[a+16>>2];Ba[v[v[b>>2]+12>>2]](b,c)|0;t[b+76|0]=c;v[b+32>>2]=d;Ba[v[v[b>>2]+8>>2]](b)}a=v[a>>2];Ba[v[v[a>>2]+100>>2]](a)}}function Hi(a,b){a=a|0;b=b|0;var c=0,d=0;gu(a+20|0,b);hh(a+12|0,b);a:{if(w[a+348|0]|!v[a+352>>2]){break a}c=v[a+360>>2];if(!(v[a+356>>2]|c&2147483647)){break a}d=b;b=v[b+4>>2];v[d+4>>2]=b+(c<<2);v[a+352>>2]=b}}function B3(a,b,c){var d=0,e=0;d=v[c>>2]+1|0;v[c>>2]=d;e=v[b>>2];v[b>>2]=d>>>0>>0?e:d;d=v[a+24>>2];a:{if(!d){break a}B3(d,b,c);v[c>>2]=v[c>>2]-1;a=v[a+24>>2];if(!a){break a}B3(a+36|0,b,c);v[c>>2]=v[c>>2]-1}}function W0(a){a=a|0;var b=0,c=0;v[a+8>>2]=144172;v[a>>2]=144076;A$(a+124|0);b=v[a+108>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+108>>2]=0;a=M0(a);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function n9(a){a=a|0;var b=0,c=0;v[a>>2]=149328;v[a+76>>2]=0;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)|!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}jaa(a)}function j9(a){a=a|0;var b=0,c=0;v[a>>2]=149260;v[a+76>>2]=0;b=v[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+72>>2];if((b|0)==(a+4|0)|!b){break a}c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}jaa(a)}function f9(a){a=a|0;var b=0;a=v[37696];if(v[37698]==1){a=Ba[v[v[a>>2]+16>>2]](a)|0;b=v[37696];Ba[v[v[b>>2]+28>>2]](b)|0;Ba[v[v[a>>2]+12>>2]](a,v[37696]);v[37698]=0;v[37696]=0;return}b9(a,8,9796,185,64667,0)}function e8(a,b){a=a|0;b=b|0;var c=0;b=v[b+80>>2];z[a>>2]=z[b+92>>2];z[a+4>>2]=z[b+96>>2];z[a+8>>2]=z[b+100>>2];z[a+12>>2]=z[b+104>>2];z[a+16>>2]=z[b+108>>2];c=v[b+116>>2];v[a+20>>2]=v[b+112>>2];v[a+24>>2]=c}function LK(a){var b=0,c=0;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b);v[a+12>>2]=0}b=v[a+8>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a>>2]=0;v[a+4>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}function x8(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=148496;b=a-12|0;v[b>>2]=148260;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function u7(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=146692;b=a-12|0;v[b>>2]=146468;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function e5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[c+4>>2];b=v[a+80>>2]+(b<<4)|0;v[b+304>>2]=v[c>>2];v[b+308>>2]=d;z[b+312>>2]=z[c+8>>2];v[b+316>>2]=v[c+12>>2];t[a+84|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function b8(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=147844;b=a-12|0;v[b>>2]=147632;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function U8(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=149084;b=a-12|0;v[b>>2]=148880;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function P0(a){a=a|0;var b=0,c=0,d=0;if(pV(v[a+80>>2],a)){b=v[a>>2];c=v[a+80>>2];d=x[a+4>>1];a:{if(t[a+6|0]&1){Ba[v[b+16>>2]](a);break a}Ba[v[b+12>>2]](a)|0}rV(c,a,d);return}b9(v[37696],8,10730,208,75171,0)}function I7(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=147240;b=a-12|0;v[b>>2]=147056;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function C6(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=145824;b=a-12|0;v[b>>2]=145556;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}function Lf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=xa-16|0;xa=d;e=v[b+4>>2];b=v[b>>2];a:{if(e-b>>2>>>0>c>>>0){v[d+8>>2]=v[b+(c<<2)>>2];f=a,g=ea(114868,d+8|0)|0,v[f>>2]=g;break a}v[a>>2]=1}xa=d+16|0}function Dt(a,b){a=a|0;b=b|0;b=v[b+36>>2]&4?v[b+40>>2]:b+80|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2];z[a+24>>2]=z[b+24>>2]}function f1(a){a=a|0;var b=0,c=0;v[a+8>>2]=144300;v[a>>2]=144204;a:{if(t[a+196|0]&1){break a}b=v[a+200>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b-v[b-4>>2]|0);v[a+200>>2]=0}return M0(a)|0}function dt(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=xa-32|0;xa=g;u[g>>1]=0;v[g+28>>2]=0;v[g+24>>2]=c;v[g+20>>2]=b;v[g+8>>2]=0;v[g+12>>2]=0;a=et(a,g+8|0,d,g,0,e,f,0);xa=g+32|0;return a|0}function caa(a,b,c,d,e){var f=0;f=xa-256|0;xa=f;if(!(e&73728|(c|0)<=(d|0))){d=c-d|0;c=d>>>0<256;J9(f,b&255,c?d:256);if(!c){while(1){_9(a,f,256);d=d-256|0;if(d>>>0>255){continue}break}}_9(a,f,d)}xa=f+256|0}function Q7(a,b){a=a|0;b=b|0;var c=0;b=v[b+80>>2];z[a>>2]=z[b+80>>2];z[a+4>>2]=z[b+84>>2];z[a+8>>2]=z[b+88>>2];z[a+12>>2]=z[b+92>>2];z[a+16>>2]=z[b+96>>2];c=v[b+104>>2];v[a+20>>2]=v[b+100>>2];v[a+24>>2]=c}function vt(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==3){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;v[b>>2]=v[a>>2];z[b+4>>2]=z[a+4>>2];z[b+8>>2]=z[a+8>>2];z[b+12>>2]=z[a+12>>2]}return(d|0)==3|0}function vR(a){a=a|0;var b=0,c=0,d=0;c=v[a+28>>2];a=v[a+20>>2];b=v[a+16>>2];b=Ba[v[v[b>>2]+4>>2]](b)|0;b=Ba[v[v[b>>2]+4>>2]](b)|0;d=b;b=v[c+976>>2];rI(v[c+980>>2],d,v[b+1156>>2],b,w[c+1148|0],a,c+4e3|0)}function uI(a,b){var c=0,d=0,e=0;c=v[a+4>>2];if((c|0)<0){d=v[a>>2];c=d+B(c,12)|0;while(1){e=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=e;v[c+8>>2]=v[b+8>>2];c=c+12|0;if(d>>>0>c>>>0){continue}break}}v[a+4>>2]=0}function nF(a){var b=0,c=0,d=0;a=v[v[v[a+24>>2]+364>>2]>>2];b=v[a>>2];t[b+93|0]=1;c=v[v[a+4>>2]+1012>>2];d=b;b=a+48|0;Ba[v[v[c>>2]+64>>2]](c,d,b);c=v[v[a+4>>2]+1012>>2];Ba[v[v[c>>2]+68>>2]](c,v[a>>2],b)}function X_(a){a=a|0;var b=0,c=0,d=0;b=a-8|0;if(qV(v[a+88>>2],b)){c=v[b>>2];d=v[a+88>>2];a:{if(t[a-2|0]&1){Ba[v[c+16>>2]](b);break a}Ba[v[c+12>>2]](b)|0}rV(d,b,1);return}b9(v[37696],8,12435,101,75061,0)}function KG(a,b,c){var d=0;d=v[a>>2];if(d){jH(d)}a=v[a+176>>2];a:{if(!a){break a}t[a+12|0]=w[a+12|0]|4;if(b){v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0}if(!c){break a}v[a+48>>2]=0;v[a+52>>2]=0;v[a+56>>2]=0}}function l9(a,b){a=a|0;b=b|0;var c=0,d=0;if(v[a+76>>2]){while(1){d=v[v[a+72>>2]+(c<<2)>>2];Ba[v[v[d>>2]+4>>2]](d,b);c=c+1|0;if(c>>>0>2]){continue}break}}a=v[a+84>>2];Ba[v[v[a>>2]+12>>2]](a,b)}function kQ(a){a=a|0;var b=0,c=0,d=C(0),e=0;c=v[a+28>>2];d=z[a+32>>2];e=v[a+40>>2];a=v[a+36>>2];if(v[a+28>>2]){while(1){hH(v[v[a+24>>2]+(b<<2)>>2],c,d,e);b=b+1|0;if(b>>>0>2]){continue}break}}}function Z5(a,b,c){a=a|0;b=b|0;c=c|0;b=B(c,28)+b|0;z[a>>2]=z[b+20>>2];z[a+4>>2]=z[b+24>>2];z[a+8>>2]=z[b+28>>2];z[a+12>>2]=z[b+32>>2];z[a+16>>2]=z[b+36>>2];z[a+20>>2]=z[b+40>>2];z[a+24>>2]=z[b+44>>2]}function j2(a){a=a|0;var b=0,c=0;v[a>>2]=144644;b=v[a+6620>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+6612>>2];if((b|0)==(a+4560|0)|!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}jaa(a)}function Wj(a){a=a|0;var b=C(0),c=0;if(t[a+316|0]&1){b=z[v[a+56>>2]+92>>2]}else{a=a- -64|0;c=v[a+176>>2];a:{if(!(!c|w[c+31|0]!=1)){b=z[c+44>>2];break a}b=z[a+140>>2]}}return C(b>C(0)?C(C(1)/b):C(0))}function Pp(a,b){a=a|0;b=b|0;var c=0,d=C(0);a:{if(t[b+5580|0]&1){z[a>>2]=z[b+5548>>2];c=b+5556|0;b=b+5552|0;break a}z[a>>2]=z[b+1084>>2];c=b+1092|0;b=b+1088|0}d=z[b>>2];z[a+8>>2]=z[c>>2];z[a+4>>2]=d}function I6(a){a=a|0;var b=0,c=0;v[a>>2]=145964;b=v[a+4>>2];if(v[b+16>>2]==1){v[b+16>>2]=2}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function p5(a,b){a=a|0;b=b|0;b=v[b+80>>2];z[a>>2]=z[b+400>>2];z[a+4>>2]=z[b+404>>2];z[a+8>>2]=z[b+408>>2];z[a+12>>2]=z[b+412>>2];z[a+16>>2]=z[b+416>>2];z[a+20>>2]=z[b+420>>2];z[a+24>>2]=z[b+424>>2]}function cg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c){return 1}if(dg(v[a+72>>2],b)){while(1){d=d+1|0;if((d|0)!=(c|0)){if(dg(v[a+72>>2],B(d,48)+b|0)){continue}}break}a=c>>>0<=d>>>0}else{a=0}return a|0}function cN(a){a=a|0;var b=0,c=C(0),d=0;c=z[v[a+32>>2]+52>>2];a=v[a+28>>2];b=v[a+84>>2];d=b>>>0<4?b:4;v[a+84>>2]=d;b=v[a+80>>2]+(b-d|0)|0;v[a+80>>2]=b;c=C(c/C(b>>>0));z[a+92>>2]=c;z[a+96>>2]=C(1)/c}function IG(a,b,c){var d=0;d=v[a>>2];if(d){iH(d)}a=v[a+176>>2];a:{if(!a){break a}t[a+12|0]=w[a+12|0]|2;if(b){v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0}if(!c){break a}v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0}}function t8(a){a=a|0;var b=0,c=0;v[a+12>>2]=148496;v[a>>2]=148260;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function q7(a){a=a|0;var b=0,c=0;v[a+12>>2]=146692;v[a>>2]=146468;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function fg(a){a=a|0;var b=0,c=0;v[a>>2]=114368;if(w[a+68|0]){c=v[a+72>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+72>>2]);return a|0}function Zf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c){return 1}if(_f(v[a+88>>2],b)){while(1){d=d+1|0;if((d|0)!=(c|0)){if(_f(v[a+88>>2],(d<<6)+b|0)){continue}}break}a=c>>>0<=d>>>0}else{a=0}return a|0}function Xe(a,b){a=a|0;b=b|0;var c=0;c=maa(28);z[c>>2]=z[a>>2];z[c+4>>2]=z[a+4>>2];z[c+8>>2]=z[a+8>>2];z[c+12>>2]=z[b>>2];z[c+16>>2]=z[b+4>>2];z[c+20>>2]=z[b+8>>2];z[c+24>>2]=z[b+12>>2];return c|0}function X7(a){a=a|0;var b=0,c=0;v[a+12>>2]=147844;v[a>>2]=147632;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Vr(a,b){a=a|0;b=b|0;b=w[b+5580|0]&64?b+5272|0:v[b+1008>>2]+1128|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];z[a+16>>2]=z[b+16>>2];z[a+20>>2]=z[b+20>>2]}function U5(a){a=a|0;var b=0,c=0;v[a+12>>2]=145824;v[a>>2]=145556;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Q8(a){a=a|0;var b=0,c=0;v[a+12>>2]=149084;v[a>>2]=148880;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function E7(a){a=a|0;var b=0,c=0;v[a+12>>2]=147240;v[a>>2]=147056;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function $f(a){a=a|0;var b=0,c=0;v[a>>2]=114048;if(w[a+84|0]){c=v[a+88>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+88>>2]);return a|0}function YF(a,b){var c=0,d=0;c=xa-16|0;xa=c;v[c+8>>2]=b;d=v[a+36>>2];a:{if(d>>>0>=(v[a+40>>2]&2147483647)>>>0){ZF(a+32|0,c+8|0);break a}v[v[a+32>>2]+(d<<2)>>2]=b;v[a+36>>2]=v[a+36>>2]+1}xa=c+16|0}function BW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=xa-16|0;xa=c;BV(c,d);xa=c+16|0;return z[a+4>>2]>=C(z[c+12>>2]+C(C(z[b+24>>2]*z[c+8>>2])+C(C(z[b+16>>2]*z[c>>2])+C(z[b+20>>2]*z[c+4>>2]))))|0}function vj(a){a=a|0;var b=0,c=C(0);if(w[a+316|0]&32){return C(C(K(z[v[a+56>>2]+120>>2])))}b=a- -64|0;a=v[b+176>>2];a:{if(!(!a|w[a+31|0]!=1)){c=z[a+60>>2];break a}c=z[b+116>>2]}return C(C(K(c)))}function tj(a){a=a|0;var b=0,c=C(0);if(w[a+316|0]&16){return C(C(K(z[v[a+56>>2]+116>>2])))}b=a- -64|0;a=v[b+176>>2];a:{if(!(!a|w[a+31|0]!=1)){c=z[a+56>>2];break a}c=z[b+112>>2]}return C(C(K(c)))}function jg(a){a=a|0;var b=0,c=0;v[a>>2]=114760;if(w[a+4|0]){c=v[a+8>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+8>>2]);return a|0}function hX(a,b){var c=0;c=xa-16|0;xa=c;Ba[v[v[b>>2]>>2]](b,c+12|0,4)|0;if(a){a=w[c+15|0];t[c+15|0]=w[c+12|0];t[c+12|0]=a;a=w[c+13|0];t[c+13|0]=w[c+14|0];t[c+14|0]=a}xa=c+16|0;return v[c+12>>2]}function Sf(a){a=a|0;var b=0,c=0;v[a>>2]=111460;if(w[a+4|0]){c=v[a+8>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+8>>2]);return a|0}function Jt(a){a=a|0;var b=0,c=0;if(w[a+36|0]&2){b=x[v[a+40>>2]+124>>1]}else{c=v[a+116>>2];b=1;a:{if(c-7>>>0<4294967294){break a}b=x[a+168>>1];if((c|0)==5){break a}b=x[a+148>>1]}}return b&65535}function v1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=C(0);b=v[b+4>>2];c=IV(b,c);v[d>>2]=c;b=v[b+152>>2]+B(c,12)|0;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c}function hj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ij(a,b,c,d);a=v[a+320>>2];b=Ba[v[v[a>>2]+100>>2]](a)|0;a=1;a:{if(z[c>>2]!=C(0)){break a}a=1;if(z[c+4>>2]!=C(0)){break a}a=z[c+8>>2]!=C(0)}dj(b,a,1)}function eg(a){a=a|0;var b=0,c=0;v[a>>2]=114368;if(w[a+68|0]){c=v[a+72>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+72>>2]);jaa(a)}function ag(a){a=a|0;var b=0,c=0;v[a>>2]=114048;if(w[a+84|0]){c=v[a+88>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+88>>2]);jaa(a)}function XG(a,b){var c=0,d=0,e=0;c=xa-16|0;xa=c;z[a+152>>2]=b;a=v[a>>2];if(a){d=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[d>>2]+44>>2]](d,(e|0)==2,c+8|0)}xa=c+16|0}function WG(a,b){var c=0,d=0,e=0;c=xa-16|0;xa=c;z[a+148>>2]=b;a=v[a>>2];if(a){d=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[d>>2]+44>>2]](d,(e|0)==2,c+8|0)}xa=c+16|0}function UG(a,b){var c=0,d=0,e=0;c=xa-16|0;xa=c;z[a+144>>2]=b;a=v[a>>2];if(a){d=v[v[a+40>>2]+1012>>2];e=w[v[a+44>>2]+9|0];v[c+8>>2]=v[a+144>>2];Ba[v[v[d>>2]+44>>2]](d,(e|0)==2,c+8|0)}xa=c+16|0}function mf(a,b,c,d){a=a|0;b=b|0;c=C(c);d=C(d);var e=0;e=xa-32|0;xa=e;v[e+20>>2]=0;u[e+16>>1]=7;v[e+8>>2]=0;v[e+12>>2]=0;Ba[v[v[a>>2]+8>>2]](e+24|0,a,b,c,d,e+8|0,0);xa=e+32|0;return w[e+24|0]}function c9(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(v[a+76>>2]){while(1){g=v[v[a+72>>2]+(f<<2)>>2];Ba[v[v[g>>2]+8>>2]](g,b,c,d,e);f=f+1|0;if(f>>>0>2]){continue}break}}}function cd(){var a=0;a=maa(48);v[a+16>>2]=0;v[a+20>>2]=0;u[a+12>>1]=0;v[a+8>>2]=-1;v[a>>2]=0;v[a+4>>2]=0;v[a+40>>2]=2139095039;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;return a|0}function _6(a){a=a|0;var b=C(0),c=0,d=C(0),e=C(0);c=xa-32|0;xa=c;Ba[v[v[a>>2]+40>>2]](c,a);xa=c+32|0;b=z[c+24>>2];d=C(b*b);b=z[c+16>>2];e=C(b*b);b=z[c+20>>2];return C(C(K(C(d+C(e+C(b*b))))))}function W_(a){a=a|0;var b=0,c=0;if(qV(v[a+96>>2],a)){b=v[a>>2];c=v[a+96>>2];a:{if(t[a+6|0]&1){Ba[v[b+16>>2]](a);break a}Ba[v[b+12>>2]](a)|0}rV(c,a,1);return}b9(v[37696],8,12435,101,75061,0)}function Ua(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=xa-16|0;xa=e;f=v[a+4>>2];b=(f>>1)+b|0;a=v[a>>2];a=f&1?v[v[b>>2]+a>>2]:a;t[e+8|0]=w[d|0];a=Ba[a|0](b,c,e+8|0)|0;xa=e+16|0;return a|0}function FB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;c=v[a>>2];a=c+x[a+4>>1]|0;if(a>>>0>c>>>0){while(1){vB((c<<5)+b|0,C(-34028234663852886e22),d,e);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function zV(a){a=a|0;var b=0,c=0;v[a>>2]=140756;A$(a+112|0);b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+96>>2]=0;a=tV(a);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function rs(a,b){a=a|0;b=b|0;if(!w[a+6352|0]){b9(v[37696],8,11709,3019,71646,0);return 0}if(w9(v[a+6068>>2],0-b|0)){ME(a+5584|0);t[v[a+6068>>2]+76|0]=0;t[a+6352|0]=0;a=1}else{a=0}return a|0}function ig(a){a=a|0;var b=0,c=0;v[a>>2]=114760;if(w[a+4|0]){c=v[a+8>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+8>>2]);jaa(a)}function Tf(a){a=a|0;var b=0,c=0;v[a>>2]=111460;if(w[a+4|0]){c=v[a+8>>2];a:{if(t[149512]&1){b=v[37377];break a}b=aa(1,111492)|0;t[149512]=1;v[37377]=b}ba(b|0,c|0,3016,0)}$(v[a+8>>2]);jaa(a)}function nS(a,b){z[a+16>>2]=z[b>>2];z[a+20>>2]=z[b+4>>2];z[a+24>>2]=z[b+8>>2];z[a+28>>2]=z[b+12>>2];z[a+32>>2]=z[b+16>>2];z[a+36>>2]=z[b+20>>2];z[a+40>>2]=z[b+24>>2];a=v[a>>2];if(a){XJ(a)}}function VQ(a){a=a|0;var b=0,c=0;b=v[a+28>>2];c=v[b+1004>>2];Ba[v[v[c>>2]+12>>2]](c,v[a+20>>2]);a=v[b+1012>>2];Ba[v[v[a>>2]+72>>2]](a,v[v[b+976>>2]+1816>>2],v[b+1140>>2],v[b+980>>2]+160|0)}function N9(a){var b=0;b=v[a+72>>2];v[a+72>>2]=b-1|b;b=v[a>>2];if(b&8){v[a>>2]=b|32;return-1}v[a+4>>2]=0;v[a+8>>2]=0;b=v[a+44>>2];v[a+28>>2]=b;v[a+20>>2]=b;v[a+16>>2]=b+v[a+48>>2];return 0}function EB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;c=v[a>>2];a=c+x[a+4>>1]|0;if(a>>>0>c>>>0){while(1){nB((c<<5)+b|0,C(-34028234663852886e22),d);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function z8(a,b){if(b){v[a>>2]=0;v[a+4>>2]=0;v[a+48>>2]=0;v[a+40>>2]=0;v[a+44>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}}function wd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=xa-16|0;xa=c;d=v[a>>2];e=c+8|0;a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](e,b);a=maa(1);t[a|0]=w[c+8|0];xa=c+16|0;return a|0}function sV(a){a=a|0;var b=0,c=0;v[a>>2]=140672;a:{if(t[a+180|0]&1){break a}b=v[a+184>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b-v[b-4>>2]|0);v[a+184>>2]=0}return tV(a)|0}function iX(a,b){var c=0;c=xa-16|0;xa=c;Ba[v[v[b>>2]>>2]](b,c+8|0,4)|0;if(a){a=w[c+11|0];t[c+11|0]=w[c+8|0];t[c+8|0]=a;a=w[c+9|0];t[c+9|0]=w[c+10|0];t[c+10|0]=a}xa=c+16|0;return z[c+8>>2]}function ge(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;Ba[v[a>>2]](d,b,c);a=maa(16);v[a>>2]=v[d>>2];v[a+4>>2]=v[d+4>>2];v[a+8>>2]=v[d+8>>2];v[a+12>>2]=v[d+12>>2];xa=d+16|0;return a|0}function Lr(a,b){a=a|0;b=b|0;var c=0;a=a+5584|0;v[a+116>>2]=b;c=v[a>>2];if(!(!c|v[a+28>>2]!=1)){Ba[v[v[c>>2]+68>>2]](c,b)}c=v[a+36>>2];if(!(!c|v[a- -64>>2]!=1)){Ba[v[v[c>>2]+68>>2]](c,b)}}function xt(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==2){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;c=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=c;v[b+8>>2]=v[a+8>>2]}return(d|0)==2|0}function d8(a){a=a|0;var b=C(0),c=0,d=C(0),e=C(0);c=xa-16|0;xa=c;Ba[v[v[a>>2]+48>>2]](c,a);xa=c+16|0;b=z[c+8>>2];d=C(b*b);b=z[c>>2];e=C(b*b);b=z[c+4>>2];return C(C(K(C(d+C(e+C(b*b))))))}function T9(a,b){var c=0,d=0;c=w[a|0];d=w[b|0];a:{if(!c|(c|0)!=(d|0)){break a}while(1){d=w[b+1|0];c=w[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 zB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;var g=0;g=v[a>>2];a=g+x[a+4>>1]|0;if(a>>>0>g>>>0){while(1){rB((g<<5)+b|0,e,f,c);g=g+1|0;if((a|0)!=(g|0)){continue}break}}}function df(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+b|0;b=v[c+4>>2];v[a>>2]=v[c>>2];v[a+4>>2]=b;b=v[c+20>>2];v[a+16>>2]=v[c+16>>2];v[a+20>>2]=b;b=v[c+12>>2];v[a+8>>2]=v[c+8>>2];v[a+12>>2]=b}function TC(a,b,c){var d=0,e=0,f=0;a:{d=v[a+36>>2];e=v[d>>2];if(!e){break a}a=0;while(1){f=(a<<2)+d|0;if(v[f+4>>2]!=(b|0)){a=a+1|0;if((e|0)!=(a|0)){continue}break a}break}v[f+4>>2]=c}}function xaa(a,b){var c=0;a:{if(!b){break a}b=qaa(b,110068);if(!b|v[b+8>>2]&(v[a+8>>2]^-1)){break a}if(!oaa(v[a+12>>2],v[b+12>>2],0)){break a}c=oaa(v[a+16>>2],v[b+16>>2],0)}return c}function kq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a:{if((Ba[v[v[b>>2]+24>>2]](b)|0)!=(a|0)){a=v[37696];v[d>>2]=14536;b9(a,8,11709,79,75385,d);break a}lq(a,b,c,1)}xa=d+16|0}function am(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:{if(w[a+14|0]&16){a=v[a+16>>2]+(b<<3)|0;z[c>>2]=z[a+156>>2];a=a+160|0;break a}a=(b<<3)+a|0;z[c>>2]=z[a+80>>2];a=a+84|0}z[d>>2]=z[a>>2]}function Ui(a){a=a|0;var b=0,c=C(0);if(w[a+316|0]&8){return C(z[v[a+56>>2]+112>>2])}b=a- -64|0;a=v[b+176>>2];a:{if(!(!a|w[a+31|0]!=1)){c=z[a+52>>2];break a}c=z[b+124>>2]}return C(c)}function Si(a){a=a|0;var b=0,c=C(0);if(w[a+316|0]&4){return C(z[v[a+56>>2]+108>>2])}b=a- -64|0;a=v[b+176>>2];a:{if(!(!a|w[a+31|0]!=1)){c=z[a+48>>2];break a}c=z[b+120>>2]}return C(c)}function $e(a,b,c,d,e){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);var f=0;f=xa-16|0;xa=f;z[f+12>>2]=b;z[f+8>>2]=c;z[f+4>>2]=d;z[f>>2]=e;a=Ba[a|0](f+12|0,f+8|0,f+4|0,f)|0;xa=f+16|0;return a|0}function s4(a){a=a|0;var b=0,c=0;v[a>>2]=145056;b=v[a+12>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}b=v[a+28>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function kw(a){a=a|0;var b=0,c=0;v[a>>2]=127652;b=v[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=v[a+80>>2];if(!b){break a}c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}return a|0}function jL(a,b){var c=0,d=0,e=0;c=v[a+4>>2];if((c|0)<0){d=v[a>>2];c=d+(c<<3)|0;while(1){e=v[b+4>>2];v[c>>2]=v[b>>2];v[c+4>>2]=e;c=c+8|0;if(d>>>0>c>>>0){continue}break}}v[a+4>>2]=0}function Xj(a){a=a|0;var b=0,c=C(0);if(t[a+316|0]&1){return C(z[v[a+56>>2]+92>>2])}b=a- -64|0;a=v[b+176>>2];a:{if(!(!a|w[a+31|0]!=1)){c=z[a+44>>2];break a}c=z[b+140>>2]}return C(c)}function Ic(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=C(f);g=g|0;h=h|0;var i=0;i=xa-16|0;xa=i;a=v[a>>2];u[i+8>>1]=x[g>>1];a=Ba[a|0](b,c,d,e,f,i+8|0,h)|0;xa=i+16|0;return a|0}function $0(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=144172;b=a-8|0;v[b>>2]=144076;A$(a+116|0);c=v[a+100>>2];if(c){d=v[37696];Ba[v[v[d+12>>2]+12>>2]](d+12|0,c)}v[a+100>>2]=0;return M0(b)|0}function tu(a){var b=0;a:{b:{c:{b=v[a+4>>2];switch((b>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(w[v[a>>2]+4785|0]){break a}}Tm(a);return}v[a+4>>2]=b|536870912}function hW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);b=v[b+48>>2];c=IV(b,c);b=v[b+152>>2]+B(c,12)|0;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c}function u1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);b=v[b+4>>2];c=IV(b,c);b=v[b+152>>2]+B(c,12)|0;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c}function x9(a){a=a|0;var b=0;v[a+16>>2]=1;v[a+24>>2]=151512;b=v[a+12>>2];v[a+12>>2]=b?b:1;b=v[a+4>>2];a=v[a>>2];if(a){Ba[a|0](b)|0;return 0}if(b){Ba[v[v[b>>2]+8>>2]](b)}return 0}function s5(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+80>>2];z[b>>2]=z[a+428>>2];z[b+4>>2]=z[a+432>>2];z[b+8>>2]=z[a+436>>2];z[c>>2]=z[a+440>>2];z[c+4>>2]=z[a+444>>2];z[c+8>>2]=z[a+448>>2]}function n0(a){a=a|0;var b=0,c=0;v[a>>2]=143464;b=a-4|0;v[b>>2]=143440;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}return b|0}function laa(a){var b=0,c=0;b=v[37373];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>Ca()<<16>>>0){if(!(ua(a|0)|0)){break a}}v[37373]=a;return b}v[37699]=48;return-1}function h0(a){a=a|0;var b=0,c=0;v[a>>2]=143384;b=a-4|0;v[b>>2]=143360;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}return b|0}function b0(a){a=a|0;var b=0,c=0;v[a>>2]=143304;b=a-4|0;v[b>>2]=143280;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}return b|0}function _e(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=C(0),g=C(0),h=C(0);e=maa(16);f=z[a>>2];g=z[b>>2];h=z[c>>2];z[e+12>>2]=z[d>>2];z[e+8>>2]=h;z[e+4>>2]=g;z[e>>2]=f;return e|0}function _$(a){a=a|0;var b=0,c=0;v[a>>2]=143208;b=a-4|0;v[b>>2]=143184;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}return b|0}function Zd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=xa-16|0;xa=f;v[f+12>>2]=b;v[f+8>>2]=c;v[f+4>>2]=d;v[f>>2]=e;a=Ba[a|0](f+12|0,f+8|0,f+4|0,f)|0;xa=f+16|0;return a|0}function yD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=v[a+20>>2];a=QD(v[e+12>>2],v[e+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2],b,v[a+12>>2],v[a+16>>2]);xa=d+16|0;return a|0}function yB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;c=v[a>>2];a=c+x[a+4>>1]|0;if(a>>>0>c>>>0){while(1){vB((c<<5)+b|0,d,e,f);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function WH(a,b){var c=0;c=w[a+21|0];if(c&8){if(b){b=v[v[v[a>>2]+40>>2]+2168>>2];c=xa-16|0;xa=c;v[c+12>>2]=a;Pg(b+68|0,c+12|0);xa=c+16|0;c=w[a+21|0]}t[a+21|0]=c&247}t[a+22|0]=0}function SJ(a,b,c){var d=0,e=0;d=v[a>>2];if(d){e=1;a=v[d+32>>2];a:{if(!a){break a}while(1){if(v[a+28>>2]==(b|0)){e=a;break a}a=v[a>>2];if(a){continue}break}}KP(v[d+40>>2],e,c)}}function zH(a,b){v[a+12>>2]=0;v[a+16>>2]=0;v[a>>2]=b;v[a+20>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=0;v[a+36>>2]=0;v[a+40>>2]=0;t[a+44|0]=0;v[a+8>>2]=a;v[a+4>>2]=a;return a}function w8(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=148496;b=a-12|0;v[b>>2]=148260;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function t7(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=146692;b=a-12|0;v[b>>2]=146468;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function a8(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=147844;b=a-12|0;v[b>>2]=147632;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function T8(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=149084;b=a-12|0;v[b>>2]=148880;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function Rj(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=x[a+4>>1];e=f-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,(d<<2)+((f|0)==1?a:v[a>>2])|0,c<<2)}return c|0}function H7(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=147240;b=a-12|0;v[b>>2]=147056;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function B6(a){a=a|0;var b=0,c=0,d=0;v[a>>2]=145824;b=a-12|0;v[b>>2]=145556;if(t[a-6|0]&1){c=v[a+68>>2];if(c){d=v[37696]+12|0;Ba[v[v[d>>2]+12>>2]](d,c)}v[a+68>>2]=0}return b|0}function xB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;f=v[a>>2];a=f+x[a+4>>1]|0;if(a>>>0>f>>>0){while(1){sB((f<<5)+b|0,c,e);f=f+1|0;if((a|0)!=(f|0)){continue}break}}}function wB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;c=v[a>>2];a=c+x[a+4>>1]|0;if(a>>>0>c>>>0){while(1){nB((c<<5)+b|0,d,e);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function lA(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;eA(d);iA(d);c=c+1|0;if((c|0)!=(b|0)){continue}break}}a=((b<<5)+a|0)-32|0;eA(a);iA(a)}function g5(a,b){a=a|0;b=b|0;b=v[b+80>>2];z[a>>2]=z[b+104>>2];z[a+4>>2]=z[b+108>>2];z[a+8>>2]=z[b+112>>2];z[a+12>>2]=z[b+116>>2];z[a+16>>2]=z[b+120>>2];z[a+20>>2]=z[b+124>>2]}function o0(a){a=a|0;var b=0,c=0;v[a>>2]=143464;b=a-4|0;v[b>>2]=143440;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}jaa(b)}function n8(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=v[a+80>>2];u[c+128>>1]=x[c+128>>1]|b;break a}c=v[a+80>>2];u[c+128>>1]=x[c+128>>1]&(b^-1)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function l7(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=v[a+80>>2];u[c+100>>1]=x[c+100>>1]|b;break a}c=v[a+80>>2];u[c+100>>1]=x[c+100>>1]&(b^-1)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function i0(a){a=a|0;var b=0,c=0;v[a>>2]=143384;b=a-4|0;v[b>>2]=143360;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}jaa(b)}function gU(a,b){var c=0;c=xa-16|0;xa=c;v[c+8>>2]=b;b=Xn(a+144|0,c+8|0,c+15|0);if(w[c+15|0]){a=v[b+4>>2]+1|0}else{a=v[c+8>>2];v[b+4>>2]=0;v[b>>2]=a;a=1}v[b+4>>2]=a;xa=c+16|0}function c0(a){a=a|0;var b=0,c=0;v[a>>2]=143304;b=a-4|0;v[b>>2]=143280;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}jaa(b)}function UC(a,b){var c=0,d=0,e=0,f=C(0);c=xa-16|0;xa=c;a=v[a+588>>2];if(a){d=v[b+4>>2];e=v[b>>2];f=z[b+8>>2];v[c+12>>2]=0;z[c+8>>2]=f;v[c>>2]=e;v[c+4>>2]=d;VC(a,c)}xa=c+16|0}function P7(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=v[a+80>>2];u[c+116>>1]=x[c+116>>1]|b;break a}c=v[a+80>>2];u[c+116>>1]=x[c+116>>1]&(b^-1)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function L8(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=v[a+80>>2];u[c+112>>1]=x[c+112>>1]|b;break a}c=v[a+80>>2];u[c+112>>1]=x[c+112>>1]&(b^-1)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Jf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=xa-16|0;xa=e;f=v[a+4>>2];b=(f>>1)+b|0;a=v[a>>2];a=f&1?v[v[b>>2]+a>>2]:a;v[e+12>>2]=d;Ba[a|0](b,c,e+12|0);xa=e+16|0}function FU(a,b){a=a|0;b=b|0;var c=0;c=v[a+8>>2];if(c>>>0>b>>>0){return(v[a+4>>2]+B(b,72)|0)+8|0}b=b-c|0;if(b>>>0>2]){a=(v[a+16>>2]+(b<<6)|0)+8|0}else{a=0}return a|0}function $$(a){a=a|0;var b=0,c=0;v[a>>2]=143208;b=a-4|0;v[b>>2]=143184;if(w[a+172|0]){c=v[a+4>>2];Ba[v[v[c>>2]>>2]](c,a+60|0,a+124|0,a+136|0,a+148|0,a+56|0,a+160|0)|0}jaa(b)}function bk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=w[(v[a+316>>2]&16384?v[a+56>>2]+268|0:a+108|0)|0];t[d+8|0]=e;t[d|0]=c?b|e:(b^-1)&e;ck(a,d+8|0,d);xa=d+16|0}function bR(a){a=a|0;var b=0;a=v[a+28>>2];if(v[a+2472>>2]){while(1){kG(v[a+1e3>>2],v[v[(v[a+2468>>2]+(b<<3)|0)+4>>2]+60>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function Cd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=xa-16|0;xa=f;v[f+12>>2]=c;t[f+8|0]=w[e|0];a=Ba[v[v[a>>2]+96>>2]](a,b,f+12|0,1,d,f+8|0)|0;xa=f+16|0;return a|0}function Bd(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){c=v[c+v[b>>2]>>2]}a=Ba[c|0](b)|0;b=maa(8);c=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=c;return b|0}function uq(a,b){a=a|0;b=b|0;var c=0;if(!w[a+4801|0]){c=b;a=a+32|0;b=v[a+2312>>2];v[c>>2]=b;return(b?v[a+2308>>2]:0)|0}b9(v[37696],2,19228,721,67960,0);v[b>>2]=0;return 0}function tq(a,b){a=a|0;b=b|0;var c=0;if(!w[a+4801|0]){c=b;a=a+32|0;b=v[a+2300>>2];v[c>>2]=b;return(b?v[a+2296>>2]:0)|0}b9(v[37696],2,19228,704,68050,0);v[b>>2]=0;return 0}function nH(a){a:{if(w[a+149|0]&16|((w[v[a+44>>2]+44|0]&3)==3|y[a+152>>2]>4294967293)){break a}a=v[a+32>>2];if(!a){break a}while(1){_R(a);a=v[a>>2];if(a){continue}break}}}function X6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=(x[c>>1]|x[b>>1])^-1;u[a+2>>1]=(x[c+2>>1]|x[b+2>>1])^-1;u[a+4>>1]=(x[c+4>>1]|x[b+4>>1])^-1;u[a+6>>1]=(x[c+6>>1]|x[b+6>>1])^-1}function V0(a){a=a|0;var b=0,c=0;v[a+8>>2]=144172;v[a>>2]=144076;A$(a+124|0);b=v[a+108>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+108>>2]=0;return M0(a)|0}function M$(a){a=a|0;var b=0;v[a+4>>2]=143464;v[a>>2]=143440;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[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 IU(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=C(0),g=C(0);f=z[a+44>>2];g=z[a+48>>2];g=f>g?f:g;f=z[a+40>>2];KU(c,g,C(f+f),z[b+276>>2],z[b+288>>2],b+260|0,d,e)}function Gc(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=C(f);g=g|0;var h=0;h=xa-16|0;xa=h;a=v[a>>2];u[h+8>>1]=x[g>>1];a=Ba[a|0](b,c,d,e,f,h+8|0)|0;xa=h+16|0;return a|0}function rf(a,b,c){a=a|0;b=b|0;c=c|0;c=xa-16|0;xa=c;b=Ba[v[v[b>>2]+28>>2]](b)|0;Ba[v[v[b>>2]+96>>2]](b,c+12|0,1,0)|0;b=a;a=v[c+12>>2];Ba[v[v[a>>2]+96>>2]](b,a);xa=c+16|0}function SP(a,b){a=v[a+976>>2];z[a+1128>>2]=z[b>>2];z[a+1132>>2]=z[b+4>>2];z[a+1136>>2]=z[b+8>>2];z[a+1140>>2]=z[b+12>>2];z[a+1144>>2]=z[b+16>>2];z[a+1148>>2]=z[b+20>>2]}function K$(a){a=a|0;var b=0;v[a+4>>2]=143384;v[a>>2]=143360;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[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 J$(a){a=a|0;var b=0;v[a+4>>2]=143304;v[a>>2]=143280;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[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 I$(a){a=a|0;var b=0;v[a+4>>2]=143208;v[a>>2]=143184;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[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 lX(a,b,c){var d=0;d=xa-16|0;xa=d;z[d+12>>2]=a;if(b){b=(p(a),j(2));v[d+12>>2]=b<<24|b<<8&16711680|(b>>>8&65280|b>>>24)}Ba[v[v[c>>2]>>2]](c,d+12|0,4)|0;xa=d+16|0}function Q5(a,b,c,d,e){var f=C(0);f=z[b+252>>2]>C(0)?C(0):z[b+248>>2]>C(0)?C(0):z[b+256>>2];d=B9(C(F(C(G(d,C(-1))),C(1))));Ba[v[v[a>>2]+24>>2]](a,c,e,C(e-f)>2])){while(1){Ba[v[v[b>>2]+8>>2]](b,v[v[a+44>>2]+(c<<2)>>2]);c=c+1|0;if(c>>>0>2]){continue}break}}}function tG(a,b){var c=0,d=0;c=v[a+28>>2];if(c){d=v[a+24>>2];a=0;while(1){if(v[(a<<2)+d>>2]==(b|0)){return a}a=a+1|0;if((c|0)!=(a|0)){continue}break}}return-2147483648}function Vq(a,b){a=a|0;b=b|0;a:{if(!w[(a+16|0)+4785|0]){a=v[v[a+1012>>2]+272>>2];a=Ba[v[v[a>>2]+24>>2]](a,b)|0;break a}b9(v[37696],2,11860,1193,68328,0);a=0}return a|0}function _o(a,b){var c=0;a=v[((v[a+4>>2]>>>22&60)+89188|0)+12>>2]+a|0;a=v[((w[a+9|0]<<2)+149664|0)+40>>2]+a|0;c=x[a+24>>1];v[b>>2]=(c|0)==1?a+20|0:v[a+20>>2];return c}function Dq(a){a=a|0;var b=0,c=0;v[a+6076>>2]=v[a+6076>>2]+1;a:{if(!w[a+4801|0]){a=TP(a+32|0);break a}b=a+5576|0;c=v[b>>2];v[b>>2]=c+1;a=c+v[a+2320>>2]|0}return a&255}function y8(a){a=a|0;var b=0,c=0;v[a+12>>2]=148496;v[a>>2]=148260;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function xd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=v[a+4>>2];b=(e>>1)+b|0;a=v[a>>2];a=e&1?v[v[b>>2]+a>>2]:a;t[d+8|0]=w[c|0];Ba[a|0](b,d+8|0);xa=d+16|0}function v7(a){a=a|0;var b=0,c=0;v[a+12>>2]=146692;v[a>>2]=146468;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function tD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=v[a+20>>2];a=SD(v[e+12>>2],v[e+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2],b,v[a+16>>2]);xa=d+16|0;return a|0}function re(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;Ba[v[a>>2]](d,b,c);a=maa(12);z[a>>2]=z[d>>2];z[a+4>>2]=z[d+4>>2];z[a+8>>2]=z[d+8>>2];xa=d+16|0;return a|0}function qf(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;a=Ba[v[v[a>>2]+28>>2]](a)|0;Ba[v[v[a>>2]+96>>2]](a,c+12|0,1,0)|0;a=v[c+12>>2];Ba[v[v[a>>2]+92>>2]](a,b);xa=c+16|0}function k0(a){a=a|0;var b=0;v[a+4>>2]=143464;v[a>>2]=143440;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}jaa(a)}function e0(a){a=a|0;var b=0;v[a+4>>2]=143384;v[a>>2]=143360;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}jaa(a)}function c8(a){a=a|0;var b=0,c=0;v[a+12>>2]=147844;v[a>>2]=147632;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function aJ(a){a=a|0;var b=0,c=0;v[a>>2]=131184;b=a+4|0;if(v[a+12>>2]!=-1){c=v[v[a+4>>2]+40>>2];_O(c,b);jJ(v[c+2168>>2],a)}WE(v[a+4>>2],b);WE(v[a+8>>2],b);return a|0}function a0(a){a=a|0;var b=0;v[a+4>>2]=143304;v[a>>2]=143280;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}jaa(a)}function YH(a){var b=0,c=0;b=v[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)==v[a>>2]|b>>>0>2])){v[a+4>>2]=c;v[a>>2]=b;XH(a)}}function X$(a){a=a|0;var b=0;v[a+4>>2]=143208;v[a>>2]=143184;if(w[a+176|0]){b=v[a+8>>2];Ba[v[v[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}jaa(a)}function V8(a){a=a|0;var b=0,c=0;v[a+12>>2]=149084;v[a>>2]=148880;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function T5(a){a=a|0;var b=0,c=0;v[a+12>>2]=145824;v[a>>2]=145556;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function P5(a,b,c,d,e,f){var g=0,h=0,i=0,j=C(0),k=C(0),l=0;h=a,i=c,j=C(-f),k=f,l=C(D(C(C9(d,C(e+C(1)))*C(4))))>C(f-b),g=v[v[a>>2]+16>>2],Ba[g](h|0,i|0,C(j),C(k),l|0)}function NU(a,b){var c=0,d=0;c=x[a+4>>1];if(c){d=(c|0)==1?a:v[a>>2];a=0;while(1){if(v[(a<<2)+d>>2]==(b|0)){return a}a=a+1|0;if((c|0)!=(a|0)){continue}break}}return-1}function D7(a){a=a|0;var b=0,c=0;v[a+12>>2]=147240;v[a>>2]=147056;if(t[a+6|0]&1){b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0}return a|0}function t1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0);b=v[v[b+4>>2]+152>>2]+B(c,12)|0;c=v[b+4>>2];d=v[b>>2];e=z[b+8>>2];v[a+12>>2]=0;z[a+8>>2]=e;v[a>>2]=d;v[a+4>>2]=c}function S_(a){a=a|0;var b=0,c=0;v[a+8>>2]=142996;v[a>>2]=142892;if(t[a+6|0]&1){b=v[a+60>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+60>>2]=0}return a|0}function SU(a){v[a+8>>2]=0;v[a+12>>2]=0;t[a+32|0]=1;v[a+4>>2]=-2147483648;v[a>>2]=140592;v[a+16>>2]=0;v[a+20>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a>>2]=140616;return a}function Rb(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);var f=0;f=xa-16|0;xa=f;v[f+12>>2]=0;z[f+8>>2]=e;z[f+4>>2]=d;z[f>>2]=c;Ba[v[v[a>>2]+180>>2]](a,b,f);xa=f+16|0}function RI(a){a=a|0;var b=0,c=0,d=0;b=v[a+32>>2];if(b){while(1){d=v[v[a+28>>2]+(c<<2)>>2];if(w[d+60|0]){eI(d);b=v[a+32>>2]}c=c+1|0;if(b>>>0>c>>>0){continue}break}}}function H6(a){a=a|0;var b=0,c=0;v[a>>2]=145964;b=v[a+4>>2];if(v[b+16>>2]==1){v[b+16>>2]=2}b=v[a+4>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Hf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=v[a+4>>2];b=(e>>1)+b|0;a=v[a>>2];a=e&1?v[v[b>>2]+a>>2]:a;v[d+12>>2]=c;Ba[a|0](b,d+12|0);xa=d+16|0}function yn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[37389];a=v[e+676>>2]-d|0;a=(a|0)>0?a:0;a=a>>>0>>0?a:c;if(a){I9(b,v[e+644>>2]+(d<<2)|0,a<<2)}return a|0}function yg(a,b,c){a=a|0;b=b|0;c=c|0;z[b>>2]=z[a+92>>2];z[b+4>>2]=z[a+96>>2];z[b+8>>2]=z[a+100>>2];z[c>>2]=z[a+104>>2];z[c+4>>2]=z[a+108>>2];z[c+8>>2]=z[a+112>>2]}function Zc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=xa-16|0;xa=e;v[e+8>>2]=b;v[e+4>>2]=c;v[e>>2]=d;a=Ba[a|0](e+8|0,e+4|0,e)|0;$(v[e+8>>2]);xa=e+16|0;return a|0}function Y6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[b>>1]^x[c>>1]^-1;u[a+2>>1]=x[b+2>>1]^x[c+2>>1]^-1;u[a+4>>1]=x[b+4>>1]^x[c+4>>1]^-1;u[a+6>>1]=x[b+6>>1]^x[c+6>>1]^-1}function W6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[c>>1]&x[b>>1]^-1;u[a+2>>1]=x[c+2>>1]&x[b+2>>1]^-1;u[a+4>>1]=x[c+4>>1]&x[b+4>>1]^-1;u[a+6>>1]=x[c+6>>1]&x[b+6>>1]^-1}function Un(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=v[37389];e=v[a+164>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+132>>2]+(d<<2)|0,c<<2)}return c|0}function Eh(a,b){a=a|0;b=b|0;var c=0;c=v[a+24>>2];if(c){a=v[c>>2];a=Ba[v[v[a>>2]+28>>2]](a)|0;J9(v[b>>2],0,(B(a,(a<<2)+16|0)+B(v[c+16>>2],B(a,24)+240|0)|0)+76|0)}}function uaa(a,b,c,d){var e=0,f=0;e=v[a+4>>2];f=v[a>>2];a=0;a:{if(!c){break a}a=e>>8;if(!(e&1)){break a}a=v[a+v[c>>2]>>2]}Ba[v[v[f>>2]+28>>2]](f,b,a+c|0,e&2?d:2)}function On(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=v[37389];e=v[a+124>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+92>>2]+(d<<2)|0,c<<2)}return c|0}function NR(a){var b=0,c=0;b=v[a+56>>2];if(b){c=v[v[v[v[a+4>>2]+40>>2]+976>>2]+1024>>2];t[b+42|0]=0;v[b+32>>2]=0;v[b+36>>2]=0;Ba[v[v[c>>2]+40>>2]](c,v[a+56>>2])}}function Dh(a){a=a|0;var b=0;a=v[a+24>>2];if(a){b=v[a>>2];b=Ba[v[v[b>>2]+28>>2]](b)|0;a=(B((b<<2)+16|0,b)+B(v[a+16>>2],B(b,24)+240|0)|0)+76|0}else{a=0}return a|0}function rP(a){var b=0;a=v[a>>2];if(a){WE(v[a>>2],a);WE(v[a+4>>2],a);b=v[a+4>>2];wG(v[b+160>>2],b);v[v[a+24>>2]>>2]=0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}}function iQ(a){a=a|0;var b=0;if(v[a+548>>2]){while(1){hH(v[((b<<2)+a|0)+36>>2],v[a+28>>2],z[a+32>>2],v[a+552>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function YP(a){var b=0;a:{switch(w[a+20|0]){case 0:return IR(a-4|0,0);case 1:return rS(a-4|0);case 4:return NH(a);case 5:b=mF(a);break;default:break a}}return b}function Rn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=v[37389];e=v[a+84>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+52>>2]+(d<<2)|0,c<<2)}return c|0}function Ln(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=v[37389];e=v[a+44>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+12>>2]+(d<<2)|0,c<<2)}return c|0}function Io(a,b,c){var d=0;a=a+16|0;a=v[((w[a+9|0]<<2)+149664|0)+40>>2]+a|0;d=x[a+24>>1];v[b>>2]=(d|0)==1?a+20|0:v[a+20>>2];if(c){t[c|0]=v[a+36>>2]!=-1}return d}function De(a,b,c,d){a=a|0;b=C(b);c=C(c);d=C(d);var e=0;e=xa-16|0;xa=e;z[e+12>>2]=b;z[e+8>>2]=c;z[e+4>>2]=d;a=Ba[a|0](e+12|0,e+8|0,e+4|0)|0;xa=e+16|0;return a|0}function xm(a,b){a=a|0;b=C(b);var c=0,d=0;c=xa-16|0;xa=c;if(bC(1)){d=v[37696];A[c>>3]=b;b9(d,4,10496,143,77085,c)}z[a+40>>2]=b;In(v[37393],a);xa=c+16|0}function o_(a){a=a|0;var b=0,c=0,d=0;b=w[a+54|0];d=(v[a+56>>2]+B(w[a+55|0],20)|0)+B(b,12)|0;a=u[a+52>>1];c=a&32767;return((d+(c<<1)|0)+B(b,3)|0)+(c<<2&a>>31)|0}function gj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cj(a,0,b,c);a=v[a+320>>2];c=Ba[v[v[a>>2]+100>>2]](a)|0;a=1;dj(c,z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?a:z[b+8>>2]!=C(0),d)}function bj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cj(a,b,0,c);a=v[a+320>>2];c=Ba[v[v[a>>2]+100>>2]](a)|0;a=1;dj(c,z[b>>2]!=C(0)|z[b+4>>2]!=C(0)?a:z[b+8>>2]!=C(0),d)}function TE(a){a=a|0;var b=0;v[a+28>>2]=0;v[a>>2]=130400;b=v[a+20>>2];if(!(!b|(a+4|0)==(b|0))){bP(v[a+40>>2],b,v[a+24>>2])}v[a+20>>2]=0;v[a+24>>2]=0;return a|0}function yj(a,b){a=a|0;b=b|0;a=1;a:{if(!T9(16235,b)){break a}if(!T9(1584,b)){break a}if(!T9(4639,b)){break a}if(!T9(4610,b)){break a}a=!T9(b,21828)}return a|0}function pA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=1;if(b>>>0>1){while(1){gA(((d<<5)+a|0)-32|0,c);d=d+1|0;if((d|0)!=(b|0)){continue}break}}gA(((b<<5)+a|0)-32|0,c)}function mA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=1;if(b>>>0>1){while(1){fA(((d<<5)+a|0)-32|0,c);d=d+1|0;if((d|0)!=(b|0)){continue}break}}fA(((b<<5)+a|0)-32|0,c)}function QO(a,b,c,d,e){var f=0;f=c>>>0>64?c:64;if(f>>>0>(v[a+32>>2]&2147483647)>>>0){RO(a+24|0,f)}SO(v[a+2388>>2],b);SO(v[a+2392>>2],c);SO(v[a+2384>>2],d+e|0)}function Po(a,b){a=a|0;b=b|0;a=1;a:{if(!T9(24470,b)){break a}if(!T9(1584,b)){break a}if(!T9(4639,b)){break a}if(!T9(4610,b)){break a}a=!T9(b,21828)}return a|0}function FO(a){a=a|0;var b=0,c=0;if(v[a+32>>2]){while(1){c=v[v[a+28>>2]+(b<<2)>>2];rO(c,z[a+36>>2]);v[c+92>>2]=0;b=b+1|0;if(b>>>0>2]){continue}break}}}function nr(a,b){a=a|0;b=b|0;if(v[a+4656>>2]!=1){b9(v[37696],8,11709,2048,77254,0);return 0}if(w9(v[a+6064>>2],0-b|0)){v[a+4656>>2]=2;a=1}else{a=0}return a|0}function Ij(a,b){a=a|0;b=b|0;var c=0;b=v[((x[b+4>>1]<<2)+86240|0)+72>>2]+b|0;c=v[b+4>>2];t[a|0]=w[(c&1?v[b+8>>2]:(b+v[((c>>>22&60)+89188|0)+12>>2]|0)+8|0)|0]}function vh(a){var b=0;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;a:{if((v[a+4>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a>>2];if(!a){break a}b=a-16|0}return b}function sP(a,b){var c=0;c=xa-16|0;xa=c;v[c+8>>2]=b;a=rh(a+1252|0,c+8|0,c+15|0);if(!w[c+15|0]){v[a>>2]=v[c+8>>2]}a=v[c+8>>2];t[a+68|0]=w[a+68|0]|4;xa=c+16|0}function pP(a,b){var c=0,d=0,e=0;c=xa-16|0;xa=c;d=v[b>>2];if(d){d=sG(d);e=v[37696]+12|0;Ba[v[v[e>>2]+12>>2]](e,d)}v[c+12>>2]=b;Pg(a+1200|0,c+12|0);xa=c+16|0}function mR(a){a=a|0;var b=0,c=0;c=v[a+20>>2];a=v[a+28>>2];b=v[v[a+976>>2]+1024>>2];Ba[v[v[b>>2]+16>>2]](b);tI(v[a+980>>2],c,a+4e3|0,v[v[a+976>>2]+1156>>2])}function Yd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=maa(16);a=v[a>>2];b=v[b>>2];c=v[c>>2];v[e+12>>2]=v[d>>2];v[e+8>>2]=c;v[e+4>>2]=b;v[e>>2]=a;return e|0}function Vt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=xa-16|0;xa=d;e=w[(v[a+36>>2]&64?v[a+40>>2]+52|0:a+112|0)|0];t[d+8|0]=c?e|b:(b^-1)&e;Ut(a,d+8|0);xa=d+16|0}function Iq(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){a=v[a+1008>>2];v[a+1020>>2]=b;a=v[a+1024>>2];Ba[v[v[a>>2]+88>>2]](a,b);return}b9(v[37696],2,19228,516,68605,0)}function J0(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=C(f);g=g|0;h=h|0;i=C(i);if(!w[149580]){t[149580]=1;b9(v[37696],8,19496,175,65160,0)}return 0}function IE(a,b,c){var d=0;d=c>>>1|0;if((b|0)==-1){a=v[B(c&1,36)+a>>2];return Ba[v[v[a>>2]+36>>2]](a,d)|0}a=v[a+72>>2];return Ba[v[v[a>>2]+36>>2]](a,d,b)|0}function xG(a){var b=0,c=0;if(v[a+28>>2]){c=v[a+12>>2];b=v[a>>2];a=v[a+16>>2];Ba[v[v[b>>2]+12>>2]](b,a)|0;t[b+76|0]=a;v[b+32>>2]=c;Ba[v[v[b>>2]+8>>2]](b)}}function sQ(a){a=a|0;var b=0;if(v[a+32>>2]){while(1){gH(v[v[v[a+28>>2]+(b<<2)>>2]>>2],v[a+36>>2],v[a+40>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function kX(a,b,c){var d=0;d=xa-16|0;xa=d;v[d+12>>2]=a;if(b){v[d+12>>2]=a<<8&16711680|a<<24|(a>>>8&65280|a>>>24)}Ba[v[v[c>>2]>>2]](c,d+12|0,4)|0;xa=d+16|0}function eX(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=C(f);g=g|0;h=h|0;i=i|0;if(!w[149580]){t[149580]=1;b9(v[37696],8,19496,175,65160,0)}return 0}function Kj(a){a=a|0;var b=0;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;b=v[a+4>>2];return w[(b&2?v[a+8>>2]+1|0:(a+v[((b>>>22&60)+89188|0)+12>>2]|0)+10|0)|0]}function F9(a){var b=0,c=0;b=a*a;c=b*a;return C(c*(b*b)*(b*2718311493989822e-21+-.00019839334836096632)+(c*(b*.008333329385889463+-.16666666641626524)+a))}function Ep(a,b,c){a=a|0;b=b|0;c=c|0;b=w[a+128|0];if(!b){t[a+128|0]=1;v[a+60>>2]=1;v[a+124>>2]=v[a+56>>2];v[a+72>>2]=v[a+64>>2];v[a+56>>2]=a+76}return!b|0}function Ap(a,b,c){a=a|0;b=b|0;c=c|0;b=w[a+160|0];if(!b){t[a+160|0]=1;v[a+76>>2]=1;v[a+156>>2]=v[a+72>>2];v[a+88>>2]=v[a+80>>2];v[a+72>>2]=a+92}return!b|0}function zq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+5928>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+5896>>2]+(d<<2)|0,c<<2)}return c|0}function xq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+5980>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+5948>>2]+(d<<2)|0,c<<2)}return c|0}function wt(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if(!d){a=v[a+36>>2]&1?v[a+40>>2]- -64|0:c;c=v[a+4>>2];v[b>>2]=v[a>>2];v[b+4>>2]=c}return!d|0}function pq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+6020>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+5988>>2]+(d<<2)|0,c<<2)}return c|0}function gc(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=maa(16);b=b+c|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2];return a|0}function kU(a,b){var c=0,d=0;c=v[a+4>>2];if((c|0)<0){d=v[a>>2];c=d+(c<<2)|0;while(1){v[c>>2]=v[b>>2];c=c+4|0;if(d>>>0>c>>>0){continue}break}}v[a+4>>2]=0}function VH(a){var b=0,c=0;c=v[v[v[a>>2]+40>>2]+2168>>2];b=xa-16|0;xa=b;v[b+8>>2]=a;a=rh(c+68|0,b+8|0,b+15|0);if(!w[b+15|0]){v[a>>2]=v[b+8>>2]}xa=b+16|0}function Ce(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=C(0),f=C(0);d=maa(16);e=z[a>>2];f=z[b>>2];z[d+12>>2]=z[c>>2];z[d+8>>2]=f;z[d+4>>2]=e;v[d>>2]=3;return d|0}function yV(a){a=a|0;var b=0,c=0;v[a>>2]=140756;A$(a+112|0);b=v[a+96>>2];if(b){c=v[37696];Ba[v[v[c+12>>2]+12>>2]](c+12|0,b)}v[a+96>>2]=0;return tV(a)|0}function Zi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+356>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+352>>2]+(d<<2)|0,c<<2)}return c|0}function Xh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+124>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+120>>2]+(d<<2)|0,c<<2)}return c|0}function NB(a,b){var c=0,d=0;c=xa-16|0;xa=c;d=v[b+4>>2];if(d){LB(a,1);v[c+8>>2]=0;v[c+12>>2]=0;v[a+4>>2]=d;d=c+8|0;vY(b,a+12|0,d,a);MB(a,b,d)}xa=c+16|0}function Cp(a,b,c){a=a|0;b=b|0;c=c|0;b=w[a+64|0];if(!b){t[a+64|0]=1;v[a+28>>2]=1;v[a+60>>2]=v[a+24>>2];v[a+40>>2]=v[a+32>>2];v[a+24>>2]=a+44}return!b|0}function ui(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+100>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+96>>2]+(d<<2)|0,c<<2)}return c|0}function qW(a,b,c){a=a|0;b=b|0;c=c|0;b=v[b+4>>2]+(1-c<<4)|0;c=v[b+60>>2];v[a+8>>2]=v[b+56>>2];v[a+12>>2]=c;c=v[b+52>>2];v[a>>2]=v[b+48>>2];v[a+4>>2]=c}function mQ(a){a=a|0;var b=0;if(v[a+1060>>2]){while(1){dS(v[((b<<2)+a|0)+36>>2],v[a+28>>2],v[a+32>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function Z6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[c+4>>1]&x[b>>1];u[a+2>>1]=x[c+6>>1]&x[b+2>>1];u[a+4>>1]=x[c>>1]&x[b+4>>1];u[a+6>>1]=x[c+2>>1]&x[b+6>>1]}function V6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[c>>1]^x[b>>1];u[a+2>>1]=x[c+2>>1]^x[b+2>>1];u[a+4>>1]=x[c+4>>1]^x[b+4>>1];u[a+6>>1]=x[c+6>>1]^x[b+6>>1]}function U6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[c>>1]|x[b>>1];u[a+2>>1]=x[c+2>>1]|x[b+2>>1];u[a+4>>1]=x[c+4>>1]|x[b+4>>1];u[a+6>>1]=x[c+6>>1]|x[b+6>>1]}function T6(a,b,c){a=a|0;b=b|0;c=c|0;u[a>>1]=x[c>>1]&x[b>>1];u[a+2>>1]=x[c+2>>1]&x[b+2>>1];u[a+4>>1]=x[c+4>>1]&x[b+4>>1];u[a+6>>1]=x[c+6>>1]&x[b+6>>1]}function Kl(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(w[a+14|0]&4){a=v[a+16>>2];z[b>>2]=z[a+148>>2];a=a+152|0;break a}z[b>>2]=z[a+80>>2];a=a+84|0}z[c>>2]=z[a>>2]}function Faa(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(oaa(a,v[b+8>>2],f)){yaa(b,c,d,e);return}a=v[a+8>>2];Ba[v[v[a>>2]+20>>2]](a,b,c,d,e,f)}function Ed(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);var f=0;f=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){f=v[f+v[b>>2]>>2]}return Ba[f|0](b,c,d,e)|0}function Cl(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(w[a+14|0]&2){a=v[a+16>>2];z[b>>2]=z[a+140>>2];a=a+144|0;break a}z[b>>2]=z[a+88>>2];a=a+96|0}z[c>>2]=z[a>>2]}function tC(a,b,c){a=a|0;b=b|0;c=c|0;if(c){t[a+7648|0]=1;v[a+32>>2]=0;v[a+16>>2]=v[a+7664>>2];b=a+7672|0;c=v[b+4>>2];v[a+24>>2]=v[b>>2];v[a+28>>2]=c}}function he(a,b){a=a|0;b=b|0;var c=0;c=xa-32|0;xa=c;z[c+16>>2]=z[b>>2];z[c+20>>2]=z[b+4>>2];z[c+24>>2]=z[b+8>>2];Ba[v[v[a>>2]+108>>2]](a,c);xa=c+32|0}function gX(a,b){var c=0;c=xa-16|0;xa=c;Ba[v[v[b>>2]>>2]](b,c+14|0,2)|0;if(a){a=w[c+15|0];t[c+15|0]=w[c+14|0];t[c+14|0]=a}xa=c+16|0;return x[c+14>>1]}function d5(a,b,c){a=a|0;b=b|0;c=c|0;b=v[b+80>>2]+(c<<4)|0;c=v[b+308>>2];v[a>>2]=v[b+304>>2];v[a+4>>2]=c;z[a+8>>2]=z[b+312>>2];v[a+12>>2]=v[b+316>>2]}function bU(a,b){a=a|0;b=b|0;if(y[a+72>>2]<=b>>>0){b9(v[37696],4,8633,126,1883,0);return 0}a=v[v[a+68>>2]+(b<<2)>>2];return Ba[v[v[a>>2]+16>>2]](a)|0}function Zg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+36>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+40>>2]+(d<<2)|0,c<<2)}return c|0}function xD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=xa-16|0;xa=b;d=v[a+12>>2];a=MD(v[d+12>>2],v[d+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2]);xa=b+16|0;return a|0}function wD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=xa-16|0;xa=b;d=v[a+12>>2];a=LD(v[d+12>>2],v[d+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2]);xa=b+16|0;return a|0}function vD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=xa-16|0;xa=b;d=v[a+12>>2];a=KD(v[d+12>>2],v[d+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2]);xa=b+16|0;return a|0}function uD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=xa-16|0;xa=b;d=v[a+12>>2];a=JD(v[d+12>>2],v[d+8>>2],v[c>>2],v[a+4>>2],v[a+8>>2]);xa=b+16|0;return a|0}function qw(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=C(b);c=C(c);d=C(d);e=C(e);f=f|0;g=g|0;h=C(h);i=C(i);j=C(j);k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=C(p)}function kY(a,b,c){a=a|0;b=b|0;c=c|0;b=v[b+4>>2]+(c<<4)|0;c=v[b+60>>2];v[a+8>>2]=v[b+56>>2];v[a+12>>2]=c;c=v[b+52>>2];v[a>>2]=v[b+48>>2];v[a+4>>2]=c}function _t(a){var b=0;v[a+196>>2]=v[a+196>>2]-1;if(v[a+196>>2]<0){v[a+20>>2]=0}b=v[a+16>>2]-1|0;v[a+16>>2]=b;if(!b){Ba[v[v[a+12>>2]+8>>2]](a+12|0)}}function Nl(a){a=a|0;var b=0;$n(v[37393],a,0,1);b=a+8|0;a:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a+8>>2];if(!a){break a}Mu(a,b)}tu(b)}function un(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a+8>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){I9(b,v[a+4>>2]+(d<<2)|0,c<<2)}return c|0}function Bg(a,b,c){a=a|0;b=b|0;c=c|0;if(w[a+20|0]&2){a=v[a+24>>2];z[b>>2]=z[a+8>>2];z[c>>2]=z[a+12>>2];return}z[b>>2]=z[a+76>>2];z[c>>2]=z[a+80>>2]}function pS(a){a=a|0;var b=0,c=0;v[a>>2]=139344;c=v[v[a+4>>2]+40>>2];b=a+4|0;_O(c,b);jJ(v[c+2168>>2],a);WE(v[a+4>>2],b);WE(v[a+8>>2],b);return a|0}function jA(a,b,c){a=a|0;b=b|0;c=c|0;c=1;if(b>>>0>1){while(1){eA(((c<<5)+a|0)-32|0);c=c+1|0;if((c|0)!=(b|0)){continue}break}}eA(((b<<5)+a|0)-32|0)}function aK(a,b){a=a|0;b=b|0;var c=0;c=v[b+24>>2]-1|0;v[b+24>>2]=c;if(!c){a=v[a+8>>2];if(a){Ba[v[v[a>>2]>>2]](a,b);return}Ba[v[v[b>>2]+28>>2]](b)}}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=((B(b,240)+(b<<6)|0)+((b<<2)+60&-64)|0)+272|0;v[c>>2]=a;v[d>>2]=B(b,528)+a;v[e>>2]=B(b,672)}function Ft(a,b){a=a|0;b=b|0;b=v[b+36>>2]&8?v[b+40>>2]+28|0:b- -64|0;v[a>>2]=v[b>>2];v[a+4>>2]=v[b+4>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=v[b+12>>2]}function B7(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=xa+-64|0;xa=f;if(e&1){e=f+32|0;E5(e,f,b,c,d);Ba[v[v[a>>2]+8>>2]](a,e,f)}xa=f- -64|0}function lu(a,b,c,d,e,f,g,h){b=HE(b,d+32|0,v[((x[e+4>>1]<<2)+86240|0)+72>>2]+e|0,f,v[a+16>>2],g,h);v[(c<<2)+(x[a+12>>1]==1?a+8|0:v[a+8>>2])>>2]=b}function el(a,b){a=a|0;b=b|0;b=v[b+12>>2]&4?v[b+16>>2]+56|0:b+296|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];z[a+12>>2]=z[b+12>>2]}function Se(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=xa-16|0;xa=e;v[e+12>>2]=b;t[e+8|0]=w[d|0];a=Ba[a|0](e+12|0,c,e+8|0)|0;xa=e+16|0;return a|0}function QY(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=C(g);h=h|0;i=i|0;j=C(j);k=k|0;l=C(l);return C(C(34028234663852886e22))}function QE(a,b){var c=0,d=0;a:{c=w[b|0];d=w[a+8|0];if((c|0)==(d|0)){break a}t[a+8|0]=c;a=v[a>>2];if(!a){break a}Ba[v[v[a>>2]+8>>2]](a,d,w[b|0])}}function BB(a,b,c){a=a|0;b=b|0;c=c|0;c=v[a>>2];a=c+x[a+4>>1]|0;if(a>>>0>c>>>0){while(1){tB((c<<5)+b|0);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function o8(a,b){a=a|0;b=b|0;if(v[a+80>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+80>>2],144)}Ba[v[v[b>>2]+16>>2]](b,v[a+16>>2])}function m7(a,b){a=a|0;b=b|0;if(v[a+80>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+80>>2],112)}Ba[v[v[b>>2]+16>>2]](b,v[a+16>>2])}function S7(a,b){a=a|0;b=b|0;if(v[a+80>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+80>>2],128)}Ba[v[v[b>>2]+16>>2]](b,v[a+16>>2])}function CH(a,b){var c=0;c=xa-16|0;xa=c;v[c+8>>2]=b;a=rh(a+296|0,c+8|0,c+15|0);if(!w[c+15|0]){v[a>>2]=v[c+8>>2]}t[b+68|0]=w[b+68|0]|1;xa=c+16|0}function B5(a,b){a=a|0;b=b|0;if(v[a+80>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+80>>2],480)}Ba[v[v[b>>2]+16>>2]](b,v[a+16>>2])}function x7(a,b){a=a|0;b=b|0;if(v[a+80>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+80>>2],96)}Ba[v[v[b>>2]+16>>2]](b,v[a+16>>2])}function cF(a,b){var c=0;t[a+274|0]=b;a=v[v[a+364>>2]>>2];if(a){b=v[a>>2];t[b+93|0]=1;c=v[v[a+4>>2]+1012>>2];Ba[v[v[c>>2]+64>>2]](c,b,a+48|0)}}function Fs(a){a=a|0;var b=0;b=v[a+20>>2];a=v[v[a+28>>2]>>2];if(!w[a+76|0]){t[a+76|0]=1;v[a+72>>2]=v[a+72>>2]+1}if(b){Ba[v[v[b>>2]+20>>2]](b)}}function vO(a){var b=0;a:{a=v[a+36>>2];b=w[a+158|0];if(!b){break a}if(b&1){v[a+64>>2]=0}if(b&2){v[a+68>>2]=0}if(!(b&4)){break a}v[a+72>>2]=0}}function lH(a,b,c){if(c?1:b>C(0)){cG(v[v[a+40>>2]+1e3>>2],v[a+144>>2]);return}if(!(!rG(a)|v[a+160>>2])){dG(v[v[a+40>>2]+1e3>>2],v[a+144>>2])}}function lF(a,b,c,d,e,f){b=(b<<4)+a|0;v[b+120>>2]=f;z[b+116>>2]=e;z[b+112>>2]=d;z[b+108>>2]=c;t[a+273|0]=w[a+273|0]|32;a=v[a>>2];if(a){nF(a)}}function fe(a,b,c){a=a|0;b=b|0;c=c|0;c=xa-16|0;xa=c;Ba[v[v[b>>2]+96>>2]](b,c+12|0,1,0)|0;b=a;a=v[c+12>>2];Ba[v[v[a>>2]+96>>2]](b,a);xa=c+16|0}function ZH(a,b){if(b){if((Uaa(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}v[a+24>>2]=b;v[a>>2]=b;v[a+4>>2]=b-1;XH(a)}}function QL(a){a=a|0;a=v[a+28>>2];hM(a);Ba[v[v[a+288>>2]+32>>2]](a+288|0);Ba[v[v[a+336>>2]+32>>2]](a+336|0);Ba[v[v[a+384>>2]+32>>2]](a+384|0)}function E9(a){var b=0;a=a*a;b=a*a;return C(a*b*(a*2439044879627741e-20+-.001388676377460993)+(b*.04166662332373906+(a*-.499999997251031+1)))}function _H(a,b){var c=0;c=v[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;v[a+4>>2]=c;v[a>>2]=c+1;XH(a);return v[a+4>>2]&b}function U3(a){a=a|0;var b=0,c=0,d=0;b=v[a+12>>2];c=v[b+72>>2];d=w[b+8|0];v[a+108>>2]=v[b+16>>2];v[a+120>>2]=d&2?0:c;v[a+124>>2]=d<<30>>31&c}function ME(a){var b=0;if(w[a+140|0]){LE(a);b=v[a>>2];if(b){Ba[v[v[b>>2]+16>>2]](b)}b=v[a+36>>2];if(b){Ba[v[v[b>>2]+16>>2]](b)}t[a+140|0]=0}}function Gp(a){a=a|0;v[a+5800>>2]=0;v[a+5784>>2]=126144;v[a>>2]=124876;v[a+5760>>2]=0;v[a+5744>>2]=126144;FE(a+5584|0);Hp(a+16|0);return a|0}function yt(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=v[c>>2];if((d|0)==1){v[b>>2]=v[(v[a+36>>2]&1?v[a+40>>2]- -64|0:c)>>2]}return(d|0)==1|0}function w6(a){a=a|0;var b=0,c=0;b=v[a+68>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+68>>2]=0;a=a-12|0;Ba[v[v[a>>2]+16>>2]](a)}function pm(a){a=a|0;var b=0,c=0;b=a-12|0;c=v[a-4>>2];a:{if(t[a-6|0]&1){Qm(v[37389],b);break a}Ba[v[v[b>>2]+12>>2]](b)|0}$n(v[37393],b,c,2)}function di(a,b){a=a|0;b=b|0;var c=0;a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;c=a+3920|0;v[c>>2]=v[c>>2]-1;a=a+3928|0;v[b>>2]=v[a>>2];v[a>>2]=b}function Tv(a,b){a=a|0;b=b|0;var c=0;c=w[a+92|0];if(c){if(w[a+76|0]!=(b|0)){v[a+28>>2]=a;v[a+40>>2]=v[a+80>>2]}t[a+92|0]=0}return(c|0)!=0|0}function Tk(a,b){a=a|0;b=b|0;var c=0;a=v[37389];Ba[v[v[b>>2]+12>>2]](b)|0;c=a+3624|0;v[c>>2]=v[c>>2]-1;a=a+3632|0;v[b>>2]=v[a>>2];v[a>>2]=b}function wg(a,b){a=a|0;b=b|0;if(w[b+20|0]&4){u[a>>1]=x[v[b+24>>2]+16>>1]&(x[b+116>>1]|-1026);return}u[a>>1]=x[b+28>>1]&(x[b+116>>1]|-1026)}function mc(a,b){a=a|0;b=b|0;var c=0,d=0;c=xa-16|0;xa=c;d=v[b+4>>2];v[c+8>>2]=v[b>>2];v[c+12>>2]=d;a=Ba[a|0](c+8|0)|0;xa=c+16|0;return a|0}function dS(a,b,c){var d=0;d=v[a+8>>2];b=v[b+4>>2]+(d<<5)|0;ZR(a,b);v[b+28>>2]=0;eV(v[c+4>>2]+B(d&2147483647,24)|0,v[a+28>>2]+68|0,b,C(1))}function Tb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){f=v[f+v[b>>2]>>2]}Ba[f|0](b,c,d,e)}function K3(a){a=a|0;var b=0,c=0;v[a>>2]=144804;b=v[a+4>>2];if(b){b=g3(b);c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+4>>2]=0;return a|0}function sh(a){var b=0;a:{switch(x[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 ee(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;Ba[v[v[a>>2]+96>>2]](a,c+12|0,1,0)|0;a=v[c+12>>2];Ba[v[v[a>>2]+92>>2]](a,b);xa=c+16|0}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=v[a+44>>2];d=v[a+40>>2];Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+60>>2],B(c,d)<<2)}function NE(a,b){var c=0;a:{c=B(b,36)+a|0;b=v[c>>2];if(!b|v[c+28>>2]!=1){break a}if(!(Ba[v[v[b>>2]+72>>2]](b,0)|0)){break a}t[a+140|0]=1}}function yb(a,b,c){a=a|0;b=C(b);c=c|0;var d=0;d=v[v[a>>2]+168>>2];if(b=C(0)){Ba[d|0](a,~~b>>>0,c);return}Ba[d|0](a,0,c)}function xb(a,b,c){a=a|0;b=C(b);c=c|0;var d=0;d=v[v[a>>2]+164>>2];if(b=C(0)){Ba[d|0](a,~~b>>>0,c);return}Ba[d|0](a,0,c)}function sb(a,b,c){a=a|0;b=C(b);c=c|0;var d=0;d=v[v[a>>2]+140>>2];if(b=C(0)){Ba[d|0](a,~~b>>>0,c);return}Ba[d|0](a,0,c)}function Df(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;Ba[v[a>>2]](d+8|0,b,c);ca(v[d+8>>2]);a=v[d+8>>2];$(a|0);xa=d+16|0;return a|0}function Aaa(a,b,c,d,e,f){var g=0,h=0;g=v[a+4>>2];h=g>>8;a=v[a>>2];if(g&1){h=v[v[d>>2]+h>>2]}Ba[v[v[a>>2]+20>>2]](a,b,c,d+h|0,g&2?e:2,f)}function eY(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=C(g);h=h|0;i=i|0;j=C(j);b9(v[37696],8,7068,525,77543,0);return 0}function dY(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=C(g);h=h|0;i=i|0;j=C(j);b9(v[37696],8,7068,510,77543,0);return 0}function dU(a){a=a|0;var b=0;if(v[a+72>>2]){while(1){b=v[v[a+68>>2]>>2];YT(a,Ba[v[v[b>>2]+16>>2]](b)|0);if(v[a+72>>2]){continue}break}}}function bw(a,b){a=a|0;b=b|0;var c=0,d=0;c=v[a+100>>2];d=x[c+4>>1];a=d<<5;return C(z[(((a+(a+(a+c|0)|0)|0)+(d<<4)|0)+(b<<2)|0)+128>>2])}function Nf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=xa-16|0;xa=e;a=v[a>>2];v[e+12>>2]=d;a=Ba[a|0](b,c,e+12|0)|0;xa=e+16|0;return a|0}function Cx(a,b,c){a=Dx(a,B(b,240),0);v[c>>2]=a;v[c+20>>2]=a+(b<<7);v[c+12>>2]=a+B(b,96);v[c+8>>2]=a+(b<<6);v[c+4>>2]=a+(b<<5);return a}function $v(a,b,c){a=a|0;b=b|0;c=c|0;v[a>>2]=0;v[a+4>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0;v[a+12>>2]=0}function uW(a,b){a=a|0;b=b|0;var c=0;b=v[b+4>>2];c=v[b+4>>2];v[a>>2]=v[b>>2];v[a+4>>2]=c;c=v[b+12>>2];v[a+8>>2]=v[b+8>>2];v[a+12>>2]=c}function dk(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;t[c+8|0]=w[(v[a+316>>2]&16384?v[a+56>>2]+268|0:a+108|0)|0];ck(a,c+8|0,b);xa=c+16|0}function cp(a,b){a=a|0;b=b|0;a=1;a:{if(!T9(24438,b)){break a}if(!T9(4639,b)){break a}if(!T9(4610,b)){break a}a=!T9(b,21828)}return a|0}function gF(a,b,c){var d=0,e=C(0);z[a- -64>>2]=c;z[a+60>>2]=b;d=a,e=W9(C(c*C(.25))),z[d+352>>2]=e;d=a,e=W9(C(b*C(.25))),z[d+356>>2]=e}function Me(a,b,c){a=a|0;b=C(b);c=C(c);var d=0;d=xa-16|0;xa=d;z[d+12>>2]=b;z[d+8>>2]=c;a=Ba[a|0](d+12|0,d+8|0)|0;xa=d+16|0;return a|0}function Gg(a,b){var c=0;c=v[a+56>>2];if(v[a+8>>2]==(b|0)){Ba[v[v[c>>2]+12>>2]](c,0)}if(v[a+12>>2]==(b|0)){Ba[v[v[c>>2]+12>>2]](c,1)}}function Baa(a,b,c,d,e){var f=0,g=0;f=v[a+4>>2];g=f>>8;a=v[a>>2];if(f&1){g=v[v[c>>2]+g>>2]}Ba[v[v[a>>2]+24>>2]](a,b,c+g|0,f&2?d:2,e)}function pR(a){a=a|0;var b=0,c=0;a=v[a+100>>2];b=v[a+976>>2]+1796|0;c=v[a+980>>2];v[b>>2]=(v[c+332>>2]+v[b>>2]|0)+v[c+344>>2];kP(a)}function ec(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=maa(12);b=b+c|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2];return a|0}function eF(a,b,c){var d=0,e=C(0);z[a+76>>2]=c;z[a+68>>2]=b;d=a,e=W9(C(b*C(.25))),z[d+340>>2]=e;d=a,e=W9(C(c*C(.25))),z[d+344>>2]=e}function Z2(a,b){a=a|0;b=b|0;var c=0,d=0;c=xa-160|0;xa=c;d=e4(c+8|0,w[a+18|0]);a=g4(d,b,v[a+48>>2],1,0);f4(d);xa=c+160|0;return a|0}function u6(a){a=a|0;var b=0,c=0;b=v[a+80>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+80>>2]=0;Ba[v[v[a>>2]+16>>2]](a)}function ib(a,b,c,d){a=a|0;b=b|0;c=C(c);d=C(d);var e=0;e=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){e=v[e+v[b>>2]>>2]}Ba[e|0](b,c,d)}function fX(a,b,c,d,e){Ba[v[v[e>>2]>>2]](e,a,1)|0;Ba[v[v[e>>2]>>2]](e,b,1)|0;Ba[v[v[e>>2]>>2]](e,c,1)|0;Ba[v[v[e>>2]>>2]](e,d,1)|0}function UH(a,b,c,d,e){t[a+22|0]=0;t[a+21|0]=e;t[a+20|0]=d;v[a+16>>2]=-1;v[a+8>>2]=-1;v[a+12>>2]=-1;v[a+4>>2]=c;v[a>>2]=b;return a}function Qr(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){v[v[(a+32|0)+1004>>2]+108>>2]=b;return}v[a+5572>>2]=b;a=a+5580|0;v[a>>2]=v[a>>2]|128}function wb(a,b,c,d){a=a|0;b=b|0;c=C(c);d=d|0;var e=0;e=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){e=v[e+v[b>>2]>>2]}Ba[e|0](b,c,d)}function vU(a){var b=0;b=xa-16|0;xa=b;v[b+12>>2]=0;a=v[a+424>>2];Ba[v[v[a>>2]+96>>2]](a,b+12|0,1,0)|0;xa=b+16|0;return v[b+12>>2]}function uK(a,b){v[a+8>>2]=0;v[a+16>>2]=0;v[a+20>>2]=0;v[a+48>>2]=b;v[a+52>>2]=0;u[a+44>>1]=257;t[a+42|0]=0;v[a+36>>2]=0;return a}function kH(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(!w[a+150|0]){t[a+150|0]=1}t[v[a+44>>2]+173|0]=b>>>1}}function bf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=C(d);var e=0;e=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){e=v[e+v[b>>2]>>2]}Ba[e|0](b,c,d)}function XY(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=C(g);h=h|0;i=i|0;j=j|0;k=k|0;l=C(l);return C(C(1e10))} +function U$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;f=xa+-64|0;xa=f;DV(f,b+48|0,b+36|0,b,c,d);H$(f,1,a,e,1);xa=f- -64|0}function T0(a,b){a=a|0;b=b|0;if(v[a+144>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+148>>2],v[a+144>>2]<<4)}O0(a,b)}function Qp(a,b){a=a|0;b=C(b);if(!w[a+4801|0]){z[v[(a+32|0)+1004>>2]+84>>2]=-b;return}z[a+5560>>2]=b;a=a+5580|0;v[a>>2]=v[a>>2]|2}function Or(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){v[v[(a+32|0)+1004>>2]+104>>2]=b;return}v[a+5568>>2]=b;a=a+5580|0;v[a>>2]=v[a>>2]|16}function zy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;j=j|0;return yy(a,b,c,d,e,h,i,2,j)|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;j=j|0;return yy(a,b,c,d,e,h,i,1,j)|0}function taa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(oaa(a,v[b+8>>2],0)){raa(b,c,d);return}a=v[a+8>>2];Ba[v[v[a>>2]+28>>2]](a,b,c,d)}function ng(a){a=a|0;var b=0;a:{if((v[a+20>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a+16>>2];if(!a){break a}b=a-16|0}return b|0}function kG(a,b){var c=0,d=0;c=1<>>5<<2;if(c&v[d+v[a+152>>2]>>2]){FF(a+168|0,b);a=v[a+152>>2]+d|0;v[a>>2]=v[a>>2]&(c^-1)}}function hi(a){a=a|0;var b=0;a:{if((v[a+16>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a+12>>2];if(!a){break a}b=a-16|0}return b|0}function fc(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+b|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];z[a+12>>2]=z[c+12>>2]}function fb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){e=v[e+v[b>>2]>>2]}Ba[e|0](b,c,d)}function KB(a){var b=0,c=0;LB(a,0);b=v[a+52>>2];if(b){c=v[37696]+12|0;Ba[v[v[c>>2]+12>>2]](c,b)}v[a+52>>2]=0;oY(a+12|0);return a}function EQ(a){a=a|0;var b=0;if(v[a+32>>2]){while(1){fH(v[v[a+28>>2]+(b<<2)>>2],0);b=b+1|0;if(b>>>0>2]){continue}break}}}function uc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}return Ba[d|0](b,c)|0}function tY(a,b,c,d,e){var f=0;sY(a,b,c,d,e);f=v[a+24>>2];if(f){tY(f,b,c,d,e);tY(f+36|0,b,c,d,e)}v[c+4>>2]=v[c+4>>2]+v[a+32>>2]}function fY(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=C(f);g=g|0;h=h|0;i=C(i);b9(v[37696],8,7068,539,77543,0);return 0}function cH(a,b){var c=0;a:{if((y[a+152>>2]<4294967294|0)!=(b|0)){c=v[a+40>>2];if(b){TO(c,a);break a}VO(c,a);bH(a)}return}aH(a)}function _g(a){a=a|0;var b=0;a:{if((v[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}a=v[a+8>>2];if(!a){break a}b=a-16|0}return b|0}function om(a){a=a|0;var b=0;b=v[a+8>>2];a:{if(t[a+6|0]&1){Qm(v[37389],a);break a}Ba[v[v[a>>2]+12>>2]](a)|0}$n(v[37393],a,b,2)}function maa(a){var b=0;a=a?a:1;a:{while(1){b=iaa(a);if(b){break a}b=v[38290];if(b){Ba[b|0]();continue}break}da();L()}return b}function b$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[a+60>>2];a=B(v[a+44>>2],v[a+40>>2])<<2;a=a>>>0>>0?a:c;I9(b,d,a);return a|0}function Yh(a){a=a|0;var b=0;a=v[a+24>>2];if(a){b=v[a+56>>2];a=v[a>>2];a=B(b,Ba[v[v[a>>2]+28>>2]](a)|0)<<2}else{a=0}return a|0}function Xw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(w[v[(v[a+444>>2]+(b<<5)|0)+16>>2]+159|0]){t[d|0]=3;return}t[d|0]=2;v[c>>2]=a|b}function mF(a){var b=0;if(!(y[v[a>>2]+152>>2]>4294967293|y[v[a+4>>2]+152>>2]>4294967293)){t[a+21|0]=w[a+21|0]|32;b=1}return b}function IK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!b){return 0}a=v[37696]+12|0;return Ba[v[v[a>>2]+8>>2]](a,b,24422,17559,67)|0}function yG(a,b){var c=0;if(v[a+28>>2]){while(1){cH(v[v[a+24>>2]+(c<<2)>>2],b);c=c+1|0;if(c>>>0>2]){continue}break}}}function vG(a,b){var c=0;if(v[a+28>>2]){while(1){fH(v[v[a+24>>2]+(c<<2)>>2],b);c=c+1|0;if(c>>>0>2]){continue}break}}}function jX(a,b,c){var d=0;d=xa-16|0;xa=d;u[d+14>>1]=a;if(b){u[d+14>>1]=a<<8|a>>>8}Ba[v[v[c>>2]>>2]](c,d+14|0,2)|0;xa=d+16|0}function pw(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=C(b);c=C(c);d=d|0;e=e|0;f=C(f);g=C(g);h=C(h);i=C(i);j=C(j);k=k|0;l=l|0;m=m|0}function il(a,b){a=a|0;b=b|0;b=v[b+12>>2]&8?v[b+16>>2]+72|0:b+312|0;z[a>>2]=z[b>>2];z[a+4>>2]=z[b+4>>2];z[a+8>>2]=z[b+8>>2]}function iU(a,b){a=a|0;b=b|0;if(y[a+124>>2]<=b>>>0){b9(v[37696],4,8633,278,1821,0);return 0}return v[v[a+120>>2]+(b<<2)>>2]}function fH(a,b){a:{if(t[a+92|0]&1){break a}a=v[a+32>>2];if(!a){break a}while(1){cS(a,0,b);a=v[a>>2];if(a){continue}break}}}function GR(a){var b=0;b=v[a+68>>2];if(b-7>>>0<=4294967293){return a+66|0}if((b|0)==5){return v[a+116>>2]}return v[a+96>>2]}function os(a){a=a|0;var b=0;b=xa-16|0;xa=b;v[b+8>>2]=126252;DP(a+32|0,a+5712|0,b+8|0);KE(a+5584|0,v[a+5824>>2]);xa=b+16|0}function d6(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;a=v[a+76>>2];u[c+8>>1]=x[b>>1];Ba[v[v[a>>2]+40>>2]](a,c+8|0);xa=c+16|0}function Lc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=a,e=Ba[v[v[b>>2]+28>>2]](b)|0,f=1,c=v[v[a>>2]+56>>2],Ba[c](d|0,e|0,f|0)}function K0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;f=f|0;if(!w[149580]){t[149580]=1;b9(v[37696],8,19496,175,65160,0)}}function Jc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=a,e=Ba[v[v[b>>2]+28>>2]](b)|0,f=0,c=v[v[a>>2]+44>>2],Ba[c](d|0,e|0,f|0)}function DC(a,b,c){a=a|0;b=b|0;c=c|0;b=v[v[a+7680>>2]+(b<<2)>>2];v[c>>2]=v[a+7672>>2]+B(b,24);return v[a+7676>>2]+(b<<3)|0}function zm(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){u[a+44>>1]=x[a+44>>1]|b;break a}u[a+44>>1]=x[a+44>>1]&(b^-1)}In(v[37393],a)}function vd(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){c=v[c+v[b>>2]>>2]}return C(C(Ba[c|0](b)))}function qu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!w[149580]){t[149580]=1;b9(v[37696],8,19496,175,65160,0)}return 0}function Fp(a){a=a|0;var b=0;if(w[a+128|0]){b=v[a+64>>2];v[a+64>>2]=v[a+72>>2];v[a+56>>2]=v[a+124>>2];t[a+68|0]=(b|0)!=0}}function Ef(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+B(b,12)|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2];return 1}function Bp(a){a=a|0;var b=0;if(w[a+160|0]){b=v[a+80>>2];v[a+80>>2]=v[a+88>>2];v[a+72>>2]=v[a+156>>2];t[a+84|0]=(b|0)!=0}}function tP(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;Pg(a+1252|0,c+12|0);a=v[c+12>>2];t[a+68|0]=w[a+68|0]&251;xa=c+16|0}function lb(a,b,c){a=a|0;b=b|0;c=C(c);var d=0;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](b,c)}function bE(a,b,c){a=a|0;b=b|0;c=c|0;b=v[v[a+300>>2]+(b<<2)>>2];v[c>>2]=v[a+292>>2]+B(b,24);return v[a+296>>2]+(b<<3)|0}function ah(a,b){a=a|0;b=b|0;if(v[a+40>>2]){Ba[v[v[b>>2]+12>>2]](b,16);Ba[v[v[b>>2]+8>>2]](b,v[a+40>>2],v[a+36>>2]<<2)}}function Mj(a){a=a|0;a=v[((x[a+4>>1]<<2)+86240|0)+72>>2]+a|0;return w[(v[((v[a+4>>2]>>>22&60)+89188|0)+12>>2]+a|0)+7|0]}function Eg(a){a=a|0;var b=0,c=0;b=v[a+8>>2];if(b){c=x[b+4>>1]!=6}a=v[a+12>>2];if(a){a=x[a+4>>1]!=6}else{a=0}return c|a}function Dp(a){a=a|0;var b=0;if(w[a+64|0]){b=v[a+32>>2];v[a+32>>2]=v[a+40>>2];v[a+24>>2]=v[a+60>>2];t[a+36|0]=(b|0)!=0}}function oc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){d=v[d+v[b>>2]>>2]}Ba[d|0](b,c)}function dX(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;h=h|0;b9(v[37696],8,6989,538,77477,0);return 0}function b1(a,b){a=a|0;b=b|0;Ba[v[v[b>>2]+12>>2]](b,128);Ba[v[v[b>>2]+8>>2]](b,v[a+200>>2],B(v[a+192>>2],112));O0(a,b)}function Ty(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;return Sy(a,b,c,d,e,h,i,2)|0}function SE(a){a:{a=v[a>>2];if(!a){break a}a=v[a+32>>2];if(!a){break a}while(1){aS(a);a=v[a>>2];if(a){continue}break}}}function Ry(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);i=i|0;return Sy(a,b,c,d,e,h,i,1)|0}function $4(a,b,c){a=a|0;b=b|0;c=c|0;v[(v[a+80>>2]+(b<<2)|0)+80>>2]=c;t[a+84|0]=1;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function qc(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){c=v[c+v[b>>2]>>2]}return Ba[c|0](b)|0}function ul(a,b){a=a|0;b=b|0;if(w[a+14|0]&128){return v[(v[a+16>>2]+(b<<2)|0)+348>>2]}return w[((a+20|0)+b|0)+262|0]}function cb(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;v[c+8>>2]=b;a=Ba[a|0](c+8|0)|0;$(v[c+8>>2]);xa=c+16|0;return a|0}function _T(a,b){a=a|0;b=b|0;v[a+16>>2]=v[b>>2];if(!v[b>>2]){b=v[a+12>>2];if(b){Ba[v[v[b>>2]+4>>2]](b)}v[a+12>>2]=0}}function Qm(a,b){var c=0;Ba[v[v[b>>2]+12>>2]](b)|0;c=a+2440|0;v[c>>2]=v[c>>2]-1;a=a+2448|0;v[b>>2]=v[a>>2];v[a>>2]=b}function JU(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;KU(c,z[a+40>>2],z[a+44>>2],z[b+276>>2],z[b+288>>2],b+260|0,d,e)}function Fo(a,b,c){a=a|0;b=b|0;c=c|0;a=x[(v[a+316>>2]&512?v[a+56>>2]+136|0:a+110|0)>>1];v[c>>2]=a>>>8;v[b>>2]=a&255}function kx(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;lx(v[a+444>>2],d,a+112|0,b,e,g,c,f,h)}function bT(a,b){a=a|0;b=b|0;u[b+2>>1]=x[a+412>>1];u[b+4>>1]=x[a+414>>1];u[b>>1]=x[a+418>>1];u[b+6>>1]=x[a+416>>1]}function Le(a,b){a=a|0;b=b|0;var c=0,d=C(0);c=maa(12);d=z[a>>2];z[c+8>>2]=z[b>>2];z[c+4>>2]=d;v[c>>2]=2;return c|0}function vJ(a,b){if(!v[b+48>>2]){a=wJ(a,v[b+28>>2],v[b+32>>2],v[b+44>>2]&476);u[a+4>>1]=x[a+4>>1]+1;v[b+48>>2]=a}}function nR(a){a=a|0;var b=0,c=0;c=v[a+20>>2];a=v[a+28>>2];b=v[a+980>>2];J9(v[b+160>>2],0,v[b+164>>2]<<2);uP(a,c)}function eq(a,b){a=a|0;b=b|0;if(!w[b+48|0]){b9(v[37696],4,11709,453,67410,0);return}aq(a,v[b+44>>2],v[b+40>>2],b)}function Pa(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;u[f>>1]=(b|d)&32?3092:3101;u[a>>1]=0}function AX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!w[149580]){t[149580]=1;b9(v[37696],8,19496,175,65160,0)}}function zR(a){a=a|0;var b=0;v[a>>2]=138660;v[v[a+44>>2]>>2]=0;a=VJ(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function VA(a,b,c){a=a|0;b=b|0;c=c|0;if(b){c=0;while(1){OA((c<<5)+a|0);c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function SA(a,b,c){a=a|0;b=b|0;c=c|0;if(b){c=0;while(1){NA((c<<5)+a|0);c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function Gd(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 Ba[v[a>>2]](b,c,d,e,f,g,h)|0}function oaa(a,b,c){if(!c){return v[a+4>>2]==v[b+4>>2]}if((a|0)==(b|0)){return 1}return!T9(v[a+4>>2],v[b+4>>2])}function ji(a,b,c){a=a|0;b=b|0;c=c|0;a=x[(v[a+16>>2]&32?v[a+20>>2]+20|0:a+40|0)>>1];v[c>>2]=a>>>8;v[b>>2]=a&255}function Ht(a,b){a=a|0;b=b|0;v[a>>2]=v[b+48>>2];v[a+4>>2]=v[b+52>>2];v[a+8>>2]=v[b+56>>2];v[a+12>>2]=v[b+60>>2]}function Gt(a,b){a=a|0;b=b|0;v[a+48>>2]=v[b>>2];v[a+52>>2]=v[b+4>>2];v[a+56>>2]=v[b+8>>2];v[a+60>>2]=v[b+12>>2]}function td(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=_((t[b+11|0]<0?v[b>>2]:b)|0,114668,v[c>>2])|0,v[d>>2]=e}function id(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=_((t[b+11|0]<0?v[b>>2]:b)|0,114268,v[c>>2])|0,v[d>>2]=e}function db(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=_((t[b+11|0]<0?v[b>>2]:b)|0,111344,v[c>>2])|0,v[d>>2]=e}function _c(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=_((t[b+11|0]<0?v[b>>2]:b)|0,113948,v[c>>2])|0,v[d>>2]=e}function X5(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+76>>2];if(a){Ba[v[v[a>>2]+28>>2]](a,b,c);return}v[b>>2]=0;v[c>>2]=0}function Pl(a,b){a=a|0;b=b|0;a=1;a:{if(!T9(2204,b)){break a}if(!T9(21835,b)){break a}a=!T9(b,21828)}return a|0}function Oq(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){v[v[a+1020>>2]+308>>2]=b;return}b9(v[37696],2,19228,542,68140,0)}function Kq(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){v[v[a+1020>>2]+120>>2]=b;return}b9(v[37696],2,19228,529,68704,0)}function u8(a,b){a=a|0;b=b|0;a=1;a:{if(!T9(2262,b)){break a}if(!T9(2196,b)){break a}a=!T9(b,21828)}return a|0}function r7(a,b){a=a|0;b=b|0;a=1;a:{if(!T9(2298,b)){break a}if(!T9(2196,b)){break a}a=!T9(b,21828)}return a|0}function kF(a,b,c,d){b=(b<<3)+a|0;z[b- -64>>2]=d;z[b+60>>2]=c;t[a+273|0]=w[a+273|0]|16;a=v[a>>2];if(a){nF(a)}}function Y7(a,b){a=a|0;b=b|0;a=1;a:{if(!T9(2364,b)){break a}if(!T9(2196,b)){break a}a=!T9(b,21828)}return a|0}function V5(a,b){a=a|0;b=b|0;a=1;a:{if(!T9(2402,b)){break a}if(!T9(2196,b)){break a}a=!T9(b,21828)}return a|0}function R8(a,b){a=a|0;b=b|0;a=1;a:{if(!T9(2224,b)){break a}if(!T9(2196,b)){break a}a=!T9(b,21828)}return a|0}function Qb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);f=C(f);g=C(g);h=C(h);Ba[v[a>>2]](b,c,d,e,f,g,h)}function Oh(a,b){a=a|0;b=b|0;var c=0;a=v[a+24>>2];if(a){c=v[a>>2];Ba[v[v[c>>2]+68>>2]](c,v[a+4>>2]+1052|0,b)}}function OE(a,b){var c=0;b=B(b,36)+a|0;a=v[b>>2];if(!(!a|v[b+28>>2]!=1)){c=Ba[v[v[a>>2]+76>>2]](a)|0}return c}function NM(a){a=a|0;var b=0;b=v[a+28>>2];Ba[v[v[b>>2]+20>>2]](b);a=v[a+20>>2];if(a){Ba[v[v[a>>2]+20>>2]](a)}}function Lh(a,b){a=a|0;b=b|0;var c=0;a=v[a+24>>2];if(a){c=v[a>>2];Ba[v[v[c>>2]+56>>2]](c,v[a+4>>2]+1052|0,b)}}function F7(a,b){a=a|0;b=b|0;a=1;a:{if(!T9(2334,b)){break a}if(!T9(2196,b)){break a}a=!T9(b,21828)}return a|0}function mb(a,b){a=a|0;b=b|0;var c=0;c=v[a>>2];a=v[a+4>>2];b=(a>>1)+b|0;if(a&1){c=v[c+v[b>>2]>>2]}Ba[c|0](b)}function g8(a,b,c){a=a|0;b=C(b);c=c|0;z[v[a+80>>2]+80>>2]=b;if(c){r5(a)}a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function de(a){a=a|0;var b=0;b=xa-16|0;xa=b;Ba[v[v[a>>2]+96>>2]](a,b+12|0,1,0)|0;xa=b+16|0;return v[b+12>>2]}function bN(a){a=a|0;var b=0;b=v[a+20>>2];if(b){Ba[v[v[b>>2]+20>>2]](b)}a=v[a+36>>2];Ba[v[v[a>>2]+20>>2]](a)}function ZE(a,b){t[a+36|0]=w[b|0];a=v[a>>2];if(a){b=t[b|0]&1;if(v[a+16>>2]){t[v[v[a+12>>2]+16>>2]+159|0]=b}}}function Ts(a,b,c){a=a|0;b=b|0;c=c|0;a=sh(b);return v[(NU(a,c)<<2)+(x[a+12>>1]==1?a+8|0:v[a+8>>2])>>2]>>>1|0}function Tq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=v[v[a+1012>>2]+272>>2];return Ba[v[v[a>>2]+16>>2]](a,b,c,d)|0}function pK(a,b){a=a|0;b=b|0;var c=0,d=0;c=v[a+72>>2]+B(b,20)|0;d=v[c+4>>2]-1|0;v[c+4>>2]=d;if(!d){eK(a,b)}}function dc(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a>>2]+b|0;z[a>>2]=z[c>>2];z[a+4>>2]=z[c+4>>2];z[a+8>>2]=z[c+8>>2]}function OU(a,b){var c=0,d=0;c=x[a+4>>1];if(c>>>0>=2){d=b;b=v[b+4>>2]+15&-16;v[d+4>>2]=b+(c<<2);v[a>>2]=b}}function Ie(a,b){a=a|0;b=C(b);var c=0;c=xa-16|0;xa=c;z[c+12>>2]=b;a=Ba[a|0](c+12|0)|0;xa=c+16|0;return a|0}function md(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;a=Ba[a|0](c+12|0)|0;xa=c+16|0;return a|0}function iT(a){var b=0;a:{if(!w[a+4|0]){break a}b=v[a>>2];if(!b){break a}if(b){hU(v[a+8>>2],b)}}v[a>>2]=0}function RZ(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;SZ(a+8|0,v[b+8>>2],c,d,e,g);return 1}function DH(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;Pg(a+296|0,c+12|0);t[b+68|0]=w[b+68|0]&254;xa=c+16|0}function Rp(a){a=a|0;if(w[a+5580|0]&2){return C(z[a+5560>>2])}return C(C(-z[v[(a+32|0)+1004>>2]+84>>2]))}function Qh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+80>>2]](a,b,c,d)}}function y9(a){a=a|0;var b=0,c=0;a=v[a+4>>2];b=U9(a)+1|0;c=iaa(b);if(c){a=I9(c,a,b)}else{a=0}return a|0}function xe(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;t[c+8|0]=b;Ba[v[v[a>>2]+284>>2]](a,c+8|0);xa=c+16|0}function sd(a){a=a|0;var b=0;b=maa(12);t[b+4|0]=0;v[b+8>>2]=v[a>>2];v[a>>2]=0;v[b>>2]=114736;return b|0}function m0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=j0(a-4|0,b,c,d+12|0);xa=d+16|0;return a|0}function g0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=d0(a-4|0,b,c,d+12|0);xa=d+16|0;return a|0}function dv(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 NZ(a,b,c,d,e,g,h)|0}function bb(a){a=a|0;var b=0;b=maa(12);t[b+4|0]=0;v[b+8>>2]=v[a>>2];v[a>>2]=0;v[b>>2]=111420;return b|0}function Z$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=W$(a-4|0,b,c,d+12|0);xa=d+16|0;return a|0}function Dc(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=f|0;g=g|0;return Ba[v[a>>2]](b,c,d,e,f,g)|0}function te(a){a=a|0;var b=0;b=xa-16|0;xa=b;Ba[v[v[a>>2]+216>>2]](b+8|0,a);xa=b+16|0;return t[b+8|0]&1}function od(){var a=0;a=maa(20);v[a>>2]=0;v[a+4>>2]=0;u[a+16>>1]=3;v[a+8>>2]=0;v[a+12>>2]=0;return a|0}function oH(a){if(y[a+152>>2]>=4294967294){TO(v[a+40>>2],a);aH(a)}cG(v[v[a+40>>2]+1e3>>2],v[a+144>>2])}function zM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=e|0;sM((v[a>>2]<<5)+b|0,C(-34028234663852886e22),d)}function pv(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 yZ(a,b,c,d,e,g)|0}function nv(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 BZ(a,b,c,d,e,g)|0}function kv(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 mZ(a,b,c,d,e,g)|0}function RP(a,b,c,d){var e=0;b=b+2528|0;e=v[b+(c<<2)>>2];t[a+1|0]=v[b+(d<<2)>>2]>>>c&1;t[a|0]=e>>>d&1}function Z7(a){a=a|0;var b=0;b=xa-32|0;xa=b;Ba[v[v[a>>2]+40>>2]](b,a);xa=b+32|0;return C(z[b+16>>2])}function W8(a){var b=0;b=v[a>>2];if(!((b|0)==(a+4|0)|!b)){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}}function Mq(a,b){a=a|0;b=b|0;if(!w[a+4801|0]){v[a+2380>>2]=b;return}b9(v[37696],2,19228,555,68907,0)}function HT(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+8>>2];if(!a){return 0}return Ba[v[v[a>>2]+4>>2]](a,b,c)|0}function nu(a,b,c){b=NU(a,b);v[c>>2]=v[a+16>>2];return v[(b<<2)+(x[a+12>>1]==1?a+8|0:v[a+8>>2])>>2]}function l0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=j0(a,b,c,d+12|0);xa=d+16|0;return a|0}function f0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=d0(a,b,c,d+12|0);xa=d+16|0;return a|0}function bu(a){var b=0,c=0;b=a-16|0;c=v[b>>2]-1|0;v[b>>2]=c;if(!c){a=a-20|0;Ba[v[v[a>>2]+8>>2]](a)}}function Y$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xa-16|0;xa=d;a=W$(a,b,c,d+12|0);xa=d+16|0;return a|0}function MR(a){var b=0;b=v[a+60>>2];if((b|0)!=-1){fG(v[v[v[a+4>>2]+40>>2]+1e3>>2],b);v[a+60>>2]=-1}}function Ws(a){a=a|0;var b=0;v[a+16>>2]=0;v[a>>2]=126144;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Ob(a,b,c,d,e,f,g){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);f=C(f);g=C(g);Ba[v[a>>2]](b,c,d,e,f,g)}function Gaa(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(oaa(a,v[b+8>>2],f)){yaa(b,c,d,e)}}function qm(a){a=a|0;var b=0;b=v[a+16>>2]-1|0;v[a+16>>2]=b;if(!b){Ba[v[v[a+12>>2]+8>>2]](a+12|0)}}function _7(a){a=a|0;var b=0;b=xa-16|0;xa=b;Ba[v[v[a>>2]+44>>2]](b,a);xa=b+16|0;return C(z[b>>2])}function Zt(a,b){v[a+16>>2]=v[a+16>>2]+1;if(v[a+196>>2]<0){v[a+20>>2]=b}v[a+196>>2]=v[a+196>>2]+1}function Rr(a){a=a|0;if(w[a+5580|0]&128){return v[a+5568>>2]}return v[v[(a+32|0)+1004>>2]+108>>2]}function Ib(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);g=C(g);Ba[v[a>>2]](b,c,d,e,f,g)}function Bh(a){a=a|0;a=v[a+24>>2];if(a){a=v[a>>2];a=Ba[v[v[a>>2]+28>>2]](a)|0}else{a=0}return a|0}function Wy(a){a=a|0;var b=0;Ba[v[v[a>>2]+28>>2]](a)|0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Pr(a){a=a|0;if(w[a+5580|0]&16){return v[a+5568>>2]}return v[v[(a+32|0)+1004>>2]+104>>2]}function Gb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);f=C(f);g=C(g);Ba[v[a>>2]](b,c,d,e,f,g)}function zd(a,b){a=a|0;b=b|0;var c=0;c=v[b>>2];Ba[v[v[a>>2]+100>>2]](a,c,v[b+4>>2]-c>>>2&65535)}function yY(a){a=a|0;var b=0;b=v[a+12>>2]-1|0;v[a+12>>2]=b;if(!b){Ba[v[v[a+8>>2]+8>>2]](a+8|0)}}function JI(a){a=a|0;var b=0;v[a>>2]=130904;BC(a+8|0);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function HA(a){a=a|0;var b=0;Ba[v[v[a>>2]+4>>2]](a)|0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function DN(a){a=a|0;var b=0;b=v[a+20>>2];Ba[v[v[a>>2]>>2]](a)|0;if(b){Ba[v[v[b>>2]+20>>2]](b)}}function k7(a,b){a=a|0;b=b|0;u[v[a+80>>2]+100>>1]=x[b>>1];a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Paa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=Ba[a|0](b,c,d,e)|0;va(Aa|0);return a|0}function O7(a,b){a=a|0;b=b|0;u[v[a+80>>2]+116>>1]=x[b>>1];a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Jh(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+48>>2]](a,b,c)}}function Je(a){a=a|0;return(v[a>>2]?0:!(z[a+4>>2]<=C(0))&(v[a+4>>2]&2139095040)!=2139095040)|0}function Ih(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+44>>2]](a,b,c)}}function uH(a,b){a=v[a+32>>2];if(a){while(1){cS(a,1,b);bS(a);a=v[a>>2];if(a){continue}break}}}function mk(a){a=a|0;v[a>>2]=119236;v[a>>2]=119540;eu(a+20|0);v[a>>2]=119844;wh(a);return a|0}function ho(a){a=a|0;v[a>>2]=122684;v[a>>2]=123036;eu(a+20|0);v[a>>2]=123388;wh(a);return a|0}function bM(a){a=a|0;var b=0;Ba[v[v[a>>2]>>2]](a)|0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Vo(a){a=a|0;v[a>>2]=124056;v[a>>2]=124260;eu(a+20|0);v[a>>2]=124400;wh(a);return a|0}function FW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;b9(v[37696],8,7145,586,77607,0);return 0}function rw(a){a=a|0;J9(v[a+124>>2],0,B(v[a+128>>2],48));J9(v[a+112>>2],0,B(v[a+128>>2],48))}function ak(a,b){a=a|0;b=b|0;z[a>>2]=z[b+296>>2];z[a+4>>2]=z[b+300>>2];z[a+8>>2]=z[b+304>>2]}function $j(a,b){a=a|0;b=b|0;z[a>>2]=z[b+284>>2];z[a+4>>2]=z[b+288>>2];z[a+8>>2]=z[b+292>>2]}function qV(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;a=Pg(a+88|0,c+12|0);xa=c+16|0;return a}function gm(a,b){a=a|0;b=b|0;return C(z[(b<<2)+(w[a+14|0]&64?v[a+16>>2]+324|0:a+248|0)>>2])}function fy(a,b){a=a|0;b=b|0;a=B(v[a+76>>2],24)+a|0;return Ba[v[v[a+28>>2]>>2]](a+28|0,b)|0}function fm(a,b){a=a|0;b=b|0;return C(z[(b<<2)+(w[a+14|0]&64?v[a+16>>2]+300|0:a+224|0)>>2])}function uN(a){a=a|0;var b=0;b=v[a+28>>2];a=v[v[a+32>>2]+368>>2];v[b>>2]=v[a>>2];v[a>>2]=b}function pV(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;a=Pg(a+8|0,c+12|0);xa=c+16|0;return a}function jF(a,b,c){z[((b<<2)+a|0)+228>>2]=c;t[a+273|0]=w[a+273|0]|8;a=v[a>>2];if(a){nF(a)}}function iF(a,b,c){z[((b<<2)+a|0)+204>>2]=c;t[a+273|0]=w[a+273|0]|4;a=v[a>>2];if(a){nF(a)}}function e9(){var a=0;a=v[37698];if(a){v[37698]=a-1;return}b9(v[37696],8,9796,216,67644,0)}function d9(){var a=0;a=v[37698];if(a){v[37698]=a+1;return}b9(v[37696],8,9796,201,67689,0)}function _l(a){a=a|0;if(w[a+12|0]&128){return C(z[v[a+16>>2]+96>>2])}return C(z[a+288>>2])}function Ok(a,b){a=a|0;b=b|0;if(v[a+24>>2]){a=v[37696];Ba[v[v[a+12>>2]+12>>2]](a+12|0,b)}} +function wl(a){a=a|0;if(w[a+12|0]&64){return C(z[v[a+16>>2]+92>>2])}return C(z[a+272>>2])}function w5(a,b){a=a|0;b=C(b);z[v[a+80>>2]+468>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function u5(a,b){a=a|0;b=C(b);z[v[a+80>>2]+472>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function j8(a,b){a=a|0;b=C(b);z[v[a+80>>2]+120>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function h8(a,b){a=a|0;b=C(b);z[v[a+80>>2]+124>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function gH(a,b,c){a=v[a+32>>2];if(a){while(1){dS(a,b,c);a=v[a>>2];if(a){continue}break}}}function Wt(a,b){a=a|0;b=b|0;var c=0;c=xa-16|0;xa=c;t[c+8|0]=w[b|0];Ut(a,c+8|0);xa=c+16|0}function VS(a,b){a=a|0;b=b|0;z[a>>2]=z[b+36>>2];z[a+4>>2]=z[b+40>>2];z[a+8>>2]=z[b+44>>2]}function L7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+108>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function J7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+112>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Be(){var a=0;a=maa(16);v[a+4>>2]=0;v[a+8>>2]=0;v[a>>2]=3;v[a+12>>2]=0;return a|0}function m6(a,b){a=a|0;b=C(b);z[v[a+80>>2]+12>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function lk(a){a=a|0;a=v[a- -64>>2];if(a){a=v[a+144>>2]>>>7|0}else{a=33554431}return a|0}function h7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+96>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function f7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+92>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function d_(a){a=a|0;var b=0;return(w[a+54|0]>64|w[v[a+56>>2]+18|0]>31?b:u[a+52>>1]<0)|0}function d7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+88>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function cl(a){a=a|0;var b=0;v[a>>2]=121200;b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function b7(a,b){a=a|0;b=C(b);z[v[a+80>>2]+84>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function Z0(a,b){a=a|0;b=b|0;a=v[a+68>>2];if(a){a=x[a+(b<<1)>>1]}else{a=65535}return a|0}function Yl(a){a=a|0;var b=0;v[a>>2]=121580;b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function Xa(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 Ba[a|0](b,c,d,e,f)|0}function Vaa(a,b){var c=0,d=0;c=b&31;d=(-1>>>c&a)<>>a}function $6(a,b){a=a|0;b=C(b);z[v[a+80>>2]+80>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function xM(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;vM((v[a>>2]<<5)+b|0,c,e)}function tM(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=f|0;sM((v[a>>2]<<5)+b|0,d,e)}function rb(a,b,c,d,e,f){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);f=C(f);Ba[v[a>>2]](b,c,d,e,f)}function k6(a,b){a=a|0;b=C(b);z[v[a+80>>2]+8>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function i6(a,b){a=a|0;b=C(b);z[v[a+80>>2]+4>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function VJ(a){a=a|0;v[a>>2]=131380;SH(v[v[a+40>>2]+2372>>2],v[a+48>>2]);return TE(a)|0}function UQ(a){a=a|0;var b=0;b=v[v[a+28>>2]+1012>>2];Ba[v[v[b>>2]+56>>2]](b,v[a+20>>2])}function Rq(a,b){a=a|0;b=b|0;a=v[v[a+1012>>2]+272>>2];return Ba[v[v[a>>2]+8>>2]](a,b)|0}function Aq(a){a=a|0;if(v[a+4656>>2]){b9(v[37696],2,11709,1448,66774,0)}return a+5828|0}function gG(a){a=a|0;var b=0;OF(v[a+32>>2]);b=v[a+32>>2];a=v[a+28>>2];TF(b,a+32|0,1,1)}function Ab(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);f=C(f);Ba[v[a>>2]](b,c,d,e,f)}function mt(a){a=a|0;var b=0;a=a-12|0;jt(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function mm(a){a=a|0;var b=0;a=a-12|0;jm(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function jr(a,b,c,d,e,f){a=a|0;b=C(b);c=c|0;d=d|0;e=e|0;f=f|0;fr(a,b,c,d,e,f,71213,1)}function hr(a,b,c,d,e,f){a=a|0;b=C(b);c=c|0;d=d|0;e=e|0;f=f|0;fr(a,b,c,d,e,f,77152,3)}function g6(a,b){a=a|0;b=C(b);z[v[a+80>>2]>>2]=b;a=v[a+76>>2];Ba[v[v[a>>2]+36>>2]](a)}function ev(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 ek(a,b){a=a|0;b=b|0;t[a|0]=w[(v[b+316>>2]&16384?v[b+56>>2]+268|0:b+108|0)|0]}function Lo(a,b){a=a|0;b=b|0;t[a|0]=w[(v[b+316>>2]&16384?v[b+56>>2]+184|0:b+238|0)|0]}function qd(a,b){a=a|0;b=b|0;var c=0;a=v[a>>2];c=maa(2);u[c>>1]=x[a+b>>1];return c|0}function nf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);return Ba[v[a>>2]](b,c,d,e)|0}function dF(a,b,c){t[(a+b|0)+262|0]=c;t[a+273|0]=w[a+273|0]|1;a=v[a>>2];if(a){nF(a)}}function c_(a){a=a|0;var b=0;a=a-8|0;$Z(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function WT(a){a=a|0;var b=0;a=a-4|0;TT(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function V_(a){a=a|0;var b=0;a=a-8|0;S_(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Th(a,b){a=a|0;b=b|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+96>>2]](a,b)}}function Ph(a,b){a=a|0;b=b|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+72>>2]](a,b)}}function Nh(a,b){a=a|0;b=b|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+64>>2]](a,b)}}function Mh(a,b){a=a|0;b=b|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+60>>2]](a,b)}}function Bq(a){a=a|0;v[a+56>>2]=0;v[a+44>>2]=0;v[a+32>>2]=0;v[a+20>>2]=0;v[a+8>>2]=0}function AS(a){a=a|0;var b=0;a=a-8|0;xS(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Bc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=C(e);return Ba[v[a>>2]](b,c,d,e)|0}function rl(a){a=a|0;if(w[a+14|0]&8){return v[v[a+16>>2]+136>>2]}return w[a+294|0]}function p6(a){a=a|0;a=v[a+76>>2];if(!a){return 0}return Ba[v[v[a>>2]+24>>2]](a)|0}function gl(a){a=a|0;if(t[a+14|0]&1){return v[v[a+16>>2]+132>>2]}return w[a+354|0]}function Td(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ba[v[a>>2]](b,c,d,e)|0}function Jw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;v[c>>2]=0;v[d>>2]=0;v[e>>2]=0}function hF(a,b){var c=0,d=C(0);z[a+336>>2]=b;c=a,d=W9(C(b*C(.25))),z[c+360>>2]=d}function fF(a,b){var c=0,d=C(0);z[a+320>>2]=b;c=a,d=W9(C(b*C(.25))),z[c+348>>2]=d}function Zb(){var a=0;a=maa(8);v[a>>2]=1065353216;v[a+4>>2]=1092616192;return a|0}function Om(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;Pg(a+640|0,c+12|0);xa=c+16|0}function CC(a,b){a=a|0;b=b|0;return v[a+7676>>2]+(v[v[a+7680>>2]+(b<<2)>>2]<<3)|0}function $r(a){a=a|0;a=Ba[v[v[a>>2]+388>>2]](a)|0;return Ba[v[v[a>>2]+4>>2]](a)|0}function saa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(oaa(a,v[b+8>>2],0)){raa(b,c,d)}}function ik(a){a=a|0;return C(C(-z[(w[a+317|0]&8?v[a+56>>2]+172|0:a+156|0)>>2]))}function Xt(a,b){a=a|0;b=b|0;t[a|0]=w[(v[b+36>>2]&64?v[b+40>>2]+52|0:b+112|0)|0]}function t9(a,b,c,d){var e=0;e=xa-16|0;xa=e;v[e+12>>2]=d;faa(a,b,c,d);xa=e+16|0}function pI(a){a=a|0;qI(v[a+28>>2],v[a+32>>2],v[a+36>>2],v[a+20>>2],v[a+40>>2])}function k$(a,b,c){a=a|0;b=b|0;c=c|0;return v[a+60>>2]+(B(v[a+44>>2],b)+c<<2)|0}function i$(a,b){a=a|0;b=b|0;return w[(v[a+60>>2]+(b<<1&-4)|0)+(b&1?3:2)|0]&127}function hw(a,b,c,d,e,f,g,h){a=a|0;b=C(b);c=C(c);d=d|0;e=e|0;f=f|0;g=g|0;h=C(h)}function hS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=v[a+4>>2];Ba[v[v[a>>2]>>2]](a,d)}function f6(a,b){a=a|0;b=b|0;var c=0;c=a;a=v[b+76>>2];Ba[v[v[a>>2]+44>>2]](c,a)}function b6(a,b,c){a=a|0;b=C(b);c=C(c);a=v[a+76>>2];Ba[v[v[a>>2]+60>>2]](a,b,c)}function ap(a){a=a|0;var b=0;b=v[a+48>>2];if(!(!b|w[b+4785|0])){xu(b,a+48|0,0)}}function aE(a,b){a=a|0;b=b|0;return v[a+296>>2]+(v[v[a+300>>2]+(b<<2)>>2]<<3)|0}function a9(a){a=a|0;var b=0;X8(a);b=v[37696];Ba[v[v[b+12>>2]+12>>2]](b+12|0,a)}function Ko(a){a=a|0;var b=0;b=v[a+48>>2];if(!(!b|w[b+4785|0])){xu(b,a+48|0,1)}}function $o(a){a=a|0;var b=0;b=v[a+48>>2];if(!(!b|w[b+4785|0])){wu(b,a+48|0,0)}}function zs(a){a=a|0;var b=0;a=Kp(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function xV(a){a=a|0;var b=0;a=vV(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function wV(a){a=a|0;var b=0;a=tV(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function nk(a){a=a|0;v[a>>2]=119540;eu(a+20|0);v[a>>2]=119844;wh(a);return a|0}function lR(a){a=a|0;a=v[v[v[a+28>>2]+976>>2]+1024>>2];Ba[v[v[a>>2]+72>>2]](a)}function hp(a){a=a|0;v[a>>2]=124260;eu(a+20|0);v[a>>2]=124400;wh(a);return a|0}function gk(a){a=a|0;return C(z[(w[a+316|0]&128?v[a+56>>2]+128|0:a+140|0)>>2])}function Ym(a){a=a|0;var b=0;a=Xm(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Uaa(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function To(a){a=a|0;v[a>>2]=123036;eu(a+20|0);v[a>>2]=123388;wh(a);return a|0}function Sq(a){a=a|0;a=v[v[a+1012>>2]+272>>2];return Ba[v[v[a>>2]+12>>2]](a)|0}function Qq(a){a=a|0;a=v[v[a+1012>>2]+272>>2];return Ba[v[v[a>>2]+36>>2]](a)|0}function zo(a){a=a|0;return C(z[(w[a+317|0]&16?v[a+56>>2]+176|0:a+216|0)>>2])}function xo(a){a=a|0;return C(z[(w[a+316|0]&64?v[a+56>>2]+124|0:a+212|0)>>2])}function xf(a){a=a|0;var b=0;if(a){b=v[a>>2];if(b){v[a+4>>2]=b;jaa(b)}jaa(a)}}function kk(a){a=a|0;return C(z[(w[a+317|0]&32?v[a+56>>2]+180|0:a+208|0)>>2])}function e6(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+76>>2];Ba[v[v[a>>2]+48>>2]](a,b,c)}function c6(a,b,c){a=a|0;b=b|0;c=c|0;a=v[a+76>>2];Ba[v[v[a>>2]+64>>2]](a,b,c)}function JK(a,b){a=a|0;b=b|0;if(b){a=v[37696]+12|0;Ba[v[v[a>>2]+12>>2]](a,b)}}function zf(){var a=0;a=maa(12);v[a+8>>2]=0;v[a>>2]=0;v[a+4>>2]=0;return a|0}function zU(a){a=a|0;var b=0;yU(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function zS(a){a=a|0;var b=0;xS(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function yL(a){a=a|0;var b=0;xL(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function yF(a,b,c,d,e){sF(a,d,c,0,e);v[(v[a+16>>2]+B(e>>>7|0,24)|0)+20>>2]=b}function qn(a){a=a|0;var b=0;on(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function ql(a){a=a|0;return C(z[(w[a+13|0]&64?v[a+16>>2]+124|0:a+356|0)>>2])}function qS(a){a=a|0;var b=0;pS(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function qC(a){a=a|0;var b=0;pC(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function pg(a){a=a|0;var b=0;og(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function pb(a,b,c,d,e){a=a|0;b=b|0;c=C(c);d=C(d);e=C(e);Ba[v[a>>2]](b,c,d,e)}function nV(a){a=a|0;var b=0;mV(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function lt(a){a=a|0;var b=0;jt(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function lm(a){a=a|0;var b=0;jm(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function kp(a){a=a|0;var b=0;jp(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function io(a){a=a|0;var b=0;ho(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function gE(a){a=a|0;var b=0;fE(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function eL(a){a=a|0;var b=0;dL(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function eH(a){a=a|0;var b=0;dH(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function bi(a){a=a|0;var b=0;ai(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function b_(a){a=a|0;var b=0;$Z(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function bJ(a){a=a|0;var b=0;aJ(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function aM(a){a=a|0;var b=0;$L(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function _J(a){a=a|0;var b=0;ZJ(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function YB(a){a=a|0;var b=0;XB(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Wo(a){a=a|0;var b=0;Vo(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function WJ(a){a=a|0;var b=0;VJ(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function VT(a){a=a|0;var b=0;TT(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function U_(a){a=a|0;var b=0;S_(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function UE(a){a=a|0;var b=0;TE(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Rt(a){a=a|0;return C(z[(w[a+36|0]&128?v[a+40>>2]+56|0:a+180|0)>>2])}function O4(a){a=a|0;var b=0;N4(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Ng(a){a=a|0;var b=0;Mg(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Mi(a){a=a|0;var b=0;Li(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function M6(a){a=a|0;var b=0;L6(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Lp(a){a=a|0;var b=0;Jp(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function LR(a){a=a|0;var b=0;KR(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Km(a){a=a|0;var b=0;Jm(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function Ho(a){a=a|0;return C(z[(t[a+317|0]&1?v[a+56>>2]+132|0:a+172|0)>>2])}function He(a){a=a|0;var b=0;b=maa(8);z[b+4>>2]=z[a>>2];v[b>>2]=0;return b|0}function Gl(a){a=a|0;return C(z[(w[a+13|0]&32?v[a+16>>2]+120|0:a+348|0)>>2])}function Fg(a,b){a=a|0;b=b|0;a=v[a+56>>2];return Ba[v[v[a>>2]+20>>2]](a,b)|0}function F6(a){a=a|0;var b=0;E6(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function El(a){a=a|0;return C(z[(w[a+13|0]&16?v[a+16>>2]+116|0:a+344|0)>>2])}function Dk(a){a=a|0;var b=0;Ck(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function CD(a){a=a|0;var b=0;AD(a);b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function yl(a){a=a|0;return C(z[(t[a+13|0]&1?v[a+16>>2]+100|0:a+332|0)>>2])}function uu(a,b){var c=0;c=xa-16|0;xa=c;v[c+12>>2]=b;Pg(a,c+12|0);xa=c+16|0}function ol(a){a=a|0;return C(z[(w[a+13|0]&4?v[a+16>>2]+108|0:a+340|0)>>2])}function ml(a){a=a|0;return C(z[(w[a+12|0]&32?v[a+16>>2]+88|0:a+328|0)>>2])}function l_(a,b){a=a|0;b=b|0;if(!T9(16433,b)){return 1}return!T9(b,21828)|0}function kl(a){a=a|0;return C(z[(w[a+12|0]&16?v[a+16>>2]+84|0:a+324|0)>>2])}function im(a,b){a=a|0;b=b|0;if(!T9(20824,b)){return 1}return!T9(b,21828)|0}function gi(a,b){a=a|0;b=b|0;if(!T9(20861,b)){return 1}return!T9(b,21828)|0}function du(a,b){a=a|0;b=b|0;if(!T9(21956,b)){return 1}return!T9(b,21828)|0}function dh(a,b){a=a|0;b=b|0;if(!T9(21226,b)){return 1}return!T9(b,21828)|0}function dC(a,b){a=a|0;b=b|0;if(!T9(21859,b)){return 1}return!T9(b,21828)|0}function d$(a,b){a=a|0;b=b|0;if(!T9(23290,b)){return 1}return!T9(b,21828)|0}function X0(a,b){a=a|0;b=b|0;if(!T9(16477,b)){return 1}return!T9(b,21828)|0}function Wk(a,b){a=a|0;b=b|0;if(!T9(14521,b)){return 1}return!T9(b,21828)|0}function Pt(a){a=a|0;return C(z[(w[a+36|0]&32?v[a+40>>2]+48|0:a+176|0)>>2])}function Nt(a){a=a|0;return C(z[(w[a+36|0]&16?v[a+40>>2]+44|0:a+108|0)>>2])}function Hm(a,b){a=a|0;b=b|0;if(!T9(14935,b)){return 1}return!T9(b,21828)|0}function GY(a,b){a=a|0;b=b|0;if(!T9(21878,b)){return 1}return!T9(b,21828)|0}function Db(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=C(d);e=C(e);Ba[v[a>>2]](b,c,d,e)}function Al(a){a=a|0;return C(z[(w[a+13|0]&2?v[a+16>>2]+104|0:a+336|0)>>2])}function xY(a){a=a|0;var b=0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a-8|0)}function mi(a){a=a|0;return C(z[(w[a+16|0]&16?v[a+20>>2]+16|0:a+48|0)>>2])}function Wv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;vw(v[a+100>>2],b,d,e)}function Tt(a){a=a|0;return C(z[(t[a+37|0]&1?v[a+40>>2]+60|0:a+184|0)>>2])}function Mf(a,b,c){a=a|0;b=b|0;c=c|0;v[v[a>>2]+(b<<2)>>2]=v[c>>2];return 1}function Kh(a){a=a|0;a=v[a+24>>2];if(a){a=v[a>>2];Ba[v[v[a>>2]+52>>2]](a)}}function Jg(a,b){a=a|0;b=b|0;if(!T9(2426,b)){return 1}return!T9(b,21828)|0}function yP(a,b){if((v[a+8>>2]&2147483647)>>>0>>0){vP(a,b)}v[a+4>>2]=b}function rg(a,b,c){a=a|0;b=b|0;c=c|0;v[b>>2]=v[a+8>>2];v[c>>2]=v[a+12>>2]}function pp(a,b){if((v[a+8>>2]&2147483647)>>>0>>0){op(a,b)}v[a+4>>2]=b}function oK(a,b){a=a|0;b=b|0;a=v[a+72>>2]+B(b,20)|0;v[a+4>>2]=v[a+4>>2]+1}function hb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ba[v[a>>2]](b,c,d,e)}function eE(a,b){if((v[a+8>>2]&2147483647)>>>0>>0){_C(a,b)}v[a+4>>2]=b}function Yw(a,b){a=a|0;b=b|0;return C(z[(v[a+452>>2]+B(b,160)|0)+144>>2])}function Ml(a){a=a|0;return w[(w[a+13|0]&128?v[a+16>>2]+128|0:a+353|0)|0]}function Kk(a){a=a|0;return C(z[(w[a+16|0]&8?v[a+20>>2]+12|0:a+44|0)>>2])}function Dg(a){a=a|0;return C(z[(w[a+20|0]&8?v[a+24>>2]+20|0:a+84|0)>>2])}function zL(a,b){a=a|0;b=b|0;t[b+8|0]=1;v[b>>2]=256;v[b+4>>2]=0;return 1}function zF(a,b,c){sF(a,0,0,1,c);v[(v[a+16>>2]+B(c>>>7|0,24)|0)+20>>2]=b}function yc(a,b,c){a=a|0;b=C(b);c=c|0;Ba[v[v[a>>2]+200>>2]](a,b,0,0,0,c)}function oi(a){a=a|0;return C(z[(w[a+16|0]&64?v[a+20>>2]:a+28|0)+24>>2])}function a4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;v[b>>2]=(d<<1)+30&30|c<<5|1}function Rd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ba[v[a>>2]](b,c,d)|0}function ep(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)==8){fp(a,c);b=8}Gj(a,b,c)}function Vp(a,b){a=a|0;b=b|0;v[a>>2]=v[(v[b+5580>>2]&4?5564:2392)+b>>2]}function Qo(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)==8){Ro(a,c);b=8}Gj(a,b,c)}function Il(a){a=a|0;return w[(w[a+13|0]&8?v[a+16>>2]+112|0:a+352|0)|0]}function HS(a,b){a=a|0;b=b|0;if((b|0)<=1){v[a+540>>2]=b}return(b|0)<2|0}function Ej(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)==8){Fj(a,c);b=8}Gj(a,b,c)}function Cm(a,b){a=a|0;b=b|0;t[a+46|0]=w[a+46|0]&15|b<<4;In(v[37393],a)}function wY(a){a=a|0;var b=0;b=v[37696]+12|0;Ba[v[v[b>>2]+12>>2]](b,a)}function kL(a,b){a=a|0;b=b|0;v[b>>2]=0;v[b+4>>2]=0;t[b+8|0]=0;return 1}function bS(a){if(v[a+36>>2]!=-1){mS(v[v[v[a+4>>2]+40>>2]+1152>>2],a)}}function MS(a){a=a|0;a=a+8|0;YT(v[a+520>>2],Ba[v[v[a>>2]+16>>2]](a)|0)}function yR(a){a=a|0;v[a>>2]=138660;v[v[a+44>>2]>>2]=0;return VJ(a)|0}function mH(a){if(!v[a+160>>2]){dG(v[v[a+40>>2]+1e3>>2],v[a+144>>2])}}function TV(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 Em(a,b){a=a|0;b=b|0;t[a+46|0]=w[a+46|0]&240|b;In(v[37393],a)}function iS(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 Va(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ba[a|0](b,c,d)|0}function ws(a){a=a|0;var b=0;b=v[a+16>>2];Ba[v[v[b>>2]+76>>2]](b,a)}function gr(a){a=a|0;var b=0;b=v[a+16>>2];Ba[v[v[b>>2]+72>>2]](b,a)}function Mw(a,b){a=a|0;b=b|0;return w[(v[a+456>>2]+B(b,80)|0)+76|0]}function Ik(a){a=a|0;return v[(w[a+16|0]&4?v[a+20>>2]:a+28|0)+8>>2]}function Gk(a){a=a|0;return v[(w[a+16|0]&2?v[a+20>>2]:a+28|0)+4>>2]}function wc(a,b){a=a|0;b=b|0;return Ba[v[v[a>>2]+220>>2]](a,b,0)|0}function qK(a,b){a=a|0;b=b|0;return v[(v[a+72>>2]+B(b,20)|0)+4>>2]}function fT(a){a=a|0;return C(C(C(z[a+528>>2]*C(.5))+z[a+524>>2]))}function eT(a){a=a|0;return C(C(C(z[a+536>>2]*C(.5))+z[a+532>>2]))}function _4(a,b){a=a|0;b=b|0;return v[(v[a+80>>2]+(b<<2)|0)+80>>2]}function R$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;H$(b,d,a,c,e)}function JN(a,b,c){a=a|0;b=C(b);c=c|0;Ba[v[v[a>>2]+136>>2]](a,b,c)}function xr(a,b){a=a|0;b=b|0;t[a+6354|0]=0;or(a);if(b){v[b>>2]=0}}function bx(a,b,c){a=a|0;b=b|0;c=c|0;Ba[v[v[b>>2]+116>>2]](a,b,c)}function aw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;t[d|0]=2;v[c>>2]=a|b}function IC(a){var b=0;b=v[a+588>>2];if(b){HC(a,b);v[a+588>>2]=0}}function Ek(a){a=a|0;return v[(t[a+16|0]&1?v[a+20>>2]:a+28|0)>>2]}function Bb(a,b,c){a=a|0;b=b|0;c=c|0;Ba[v[v[a>>2]+120>>2]](a,b,c)}function ys(a){a=a|0;a=v[a+20>>2];if(a){Ba[v[v[a>>2]+20>>2]](a)}}function uf(a,b){a=a|0;b=b|0;return Ba[v[v[a>>2]+128>>2]](a,b)|0}function tb(a,b,c,d){a=a|0;b=b|0;c=C(c);d=d|0;Ba[v[a>>2]](b,c,d)}function sc(a,b){a=a|0;b=C(b);Ba[v[v[a>>2]+208>>2]](a,b,0,0,0,1)}function mU(a,b,c){a=a|0;b=b|0;c=C(c);z[a+132>>2]=c;t[a+136|0]=b}function ld(a){a=a|0;var b=0;b=maa(2);u[b>>1]=v[a>>2];return b|0}function jb(a,b,c){a=a|0;b=b|0;c=c|0;Ba[v[v[a>>2]+64>>2]](a,b,c)}function $N(a,b){a=a|0;b=b|0;b=v[b+28>>2];v[a>>2]=0;v[a+32>>2]=b}function ve(a,b,c){a=a|0;b=b|0;c=C(c);return Ba[v[a>>2]](b,c)|0}function vY(a,b,c,d){if(uY(a,b,c,d)){tY(v[b>>2],a,c,b,v[d>>2])}}function kb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ba[v[a>>2]](b,c,d)}function eu(a){var b=0;b=v[v[37389]+476>>2];MU(a,b);MU(a+8|0,b)}function Nd(a){a=a|0;var b=0;b=maa(1);t[b|0]=v[a>>2];return b|0}function Ge(){var a=0;a=maa(8);v[a>>2]=0;v[a+4>>2]=0;return a|0}function xc(a,b,c){a=a|0;b=b|0;c=c|0;return Ba[v[a>>2]](b,c)|0}function lf(a,b,c){a=a|0;b=b|0;c=c|0;return!((w[b|0]^255)&c)|0}function jh(a,b){a=v[a+4>>2];if(a){Sg(v[v[a+36>>2]+4>>2],b,0)}}function R0(a){a=a|0;b9(v[37696],8,10730,220,70500,0);return 0}function Ly(a){return Iy(a,(B(v[a+136>>2],12)+a|0)+16|0,0,0,1)}function Am(a,b){a=a|0;b=b|0;u[a+44>>1]=x[b>>1];In(v[37393],a)}function ow(a,b,c,d,e,f){a=a|0;b=C(b);c=c|0;d=d|0;e=e|0;f=f|0}function mL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return-1}function Zh(a,b,c){a=a|0;b=b|0;c=c|0;nj(v[v[a+96>>2]>>2],b,c)}function GW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return 0}function FN(a,b,c,d){a=a|0;b=C(b);c=c|0;d=d|0;EN(a-8|0,b,c,d)}function qs(a,b){a=a|0;b=b|0;return w9(v[a+6068>>2],0-b|0)|0}function pd(a,b,c){a=a|0;b=b|0;c=c|0;u[v[a>>2]+b>>1]=x[c>>1]}function lr(a,b){a=a|0;b=b|0;return w9(v[a+6064>>2],0-b|0)|0}function kr(a,b){a=a|0;b=b|0;return w9(v[a+6060>>2],0-b|0)|0}function gK(a,b){a=a|0;b=b|0;return v[v[a+72>>2]+B(b,20)>>2]}function fU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;eU(a-4|0,b,a,d)}function MN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;LN(a-8|0,b,c,d)}function Eq(a,b){a=a|0;b=b|0;v[v[(a+32|0)+1004>>2]+112>>2]=b}function je(a,b){a=a|0;b=b|0;Ba[v[v[a>>2]+188>>2]](a,b,0,1)}function ie(a,b){a=a|0;b=b|0;Ba[v[v[a>>2]+192>>2]](a,b,0,1)}function ds(a){a=a|0;return C(z[v[(a+32|0)+1004>>2]+88>>2])}function _N(a,b){a=a|0;b=b|0;return v[a+60>>2]+(b<<1&-16)|0}function ZN(a,b){a=a|0;b=b|0;return v[a+68>>2]+(b<<1&-16)|0}function Gs(a){a=a|0;v[a+16>>2]=0;v[a>>2]=126144;return a|0}function wf(a,b){a=a|0;b=C(b);Ba[v[v[a>>2]+128>>2]](a,b)|0}function vf(a,b){a=a|0;b=C(b);Ba[v[v[a>>2]+124>>2]](a,b)|0}function tf(a,b){a=a|0;b=C(b);Ba[v[v[a>>2]+120>>2]](a,b)|0}function sf(a,b){a=a|0;b=C(b);Ba[v[v[a>>2]+112>>2]](a,b)|0}function Wa(a,b,c){a=a|0;b=b|0;c=c|0;return Ba[a|0](b,c)|0}function UD(a,b){a=a|0;b=b|0;v[a+280>>2]=0;v[a+272>>2]=b-3}function S9(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Aa=0;return 0}function vm(a,b){a=a|0;b=C(b);z[a+36>>2]=b;In(v[37393],a)}function tw(a,b){a=a|0;b=b|0;return v[a+148>>2]+B(b,28)|0}function tm(a,b){a=a|0;b=C(b);z[a+32>>2]=b;In(v[37393],a)}function naa(a,b,c){a=a|0;b=b|0;c=c|0;return oaa(a,b,0)|0}function m8(a,b){a=a|0;b=b|0;u[v[a+80>>2]+128>>1]=x[b>>1]}function l8(a,b){a=a|0;b=b|0;u[a>>1]=x[v[b+80>>2]+128>>1]}function j7(a,b){a=a|0;b=b|0;u[a>>1]=x[v[b+80>>2]+100>>1]}function gx(a,b){a=a|0;b=b|0;return v[a+496>>2]+B(b,28)|0}function Oz(a){a=a|0;nz(v[a+32>>2],v[a+28>>2],v[a+40>>2])}function N7(a,b){a=a|0;b=b|0;u[a>>1]=x[v[b+80>>2]+116>>1]}function K8(a,b){a=a|0;b=b|0;u[v[a+80>>2]+112>>1]=x[b>>1]}function J8(a,b){a=a|0;b=b|0;u[a>>1]=x[v[b+80>>2]+112>>1]}function Fq(a){a=a|0;return v[v[(a+32|0)+1004>>2]+112>>2]}function EI(a){a=a|0;wI(v[a+32>>2],v[a+20>>2],v[a+28>>2])}function uw(a,b){a=a|0;b=b|0;return v[a+160>>2]+(b<<4)|0}function oj(a,b){a=a|0;b=b|0;Ba[v[v[a>>2]+80>>2]](a,b,1)}function nm(a,b){a=a|0;b=b|0;v[a+48>>2]=a;En(v[37393],a)}function n_(a){a=a|0;return v[a+56>>2]+B(w[a+55|0],20)|0}function hx(a,b){a=a|0;b=b|0;return v[a+508>>2]+(b<<4)|0}function es(a){a=a|0;return v[v[(a+32|0)+2168>>2]+56>>2]}function Vb(){var a=0;a=maa(4);v[a>>2]=112776;return a|0}function Pd(){var a=0;a=maa(4);v[a>>2]=146052;return a|0}function PZ(a){a=a|0;v[a>>2]=142644;OZ(a+8|0);return a|0}function OI(a){a=a|0;v[a>>2]=130904;BC(a+8|0);return a|0}function Js(a){a=a|0;v[a+20>>2]=v[a+20>>2]+1;t[a+92|0]=1}function yW(a,b){a=a|0;b=b|0;z[a>>2]=z[v[b+4>>2]+24>>2]}function us(a,b){a=a|0;b=b|0;Ba[v[v[a>>2]+236>>2]](a,b)}function go(a,b,c){a=a|0;b=b|0;c=c|0;$n(v[37393],b,0,2)}function _b(a,b,c){a=a|0;b=b|0;c=C(c);z[v[a>>2]+b>>2]=c}function RE(a,b){t[a+10|0]=b;a=v[a>>2];if(a){XE(a,8,1)}}function QS(a,b){a=a|0;b=C(b);if(b>=C(0)){z[a+56>>2]=b}}function tc(a,b,c){a=a|0;b=b|0;c=C(c);Ba[v[a>>2]](b,c)}function pf(a,b){a=a|0;b=b|0;Ba[v[v[a>>2]+40>>2]](a,b)}function _d(a,b,c){a=a|0;b=b|0;c=c|0;v[v[a>>2]+b>>2]=c}function YS(a,b){a=a|0;b=C(b);if(b>C(0)){z[a+48>>2]=b}}function US(a,b){a=a|0;b=C(b);if(b>C(0)){z[a+52>>2]=b}}function R5(a){a=a|0;a=v[a+76>>2];Ba[v[v[a>>2]>>2]](a)}function Od(a,b){a=a|0;b=b|0;return!((w[a|0]^255)&b)|0}function Ii(a,b){a=a|0;b=b|0;gu(a+20|0,b);hh(a+12|0,b)}function Gi(a,b){a=a|0;b=b|0;fu(a+20|0,b);eh(a+12|0,b)}function $b(a,b){a=a|0;b=b|0;return C(z[v[a>>2]+b>>2])}function lL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 0}function kf(a,b){a=a|0;b=b|0;v[a+112>>2]=b;return b|0}function ic(a,b,c){a=a|0;b=b|0;c=+c;A[v[a>>2]+b>>3]=c}function c1(a){a=a|0;return Ba[v[v[a>>2]+28>>2]](a)|0}function Vc(a,b,c){a=a|0;b=b|0;c=c|0;t[v[a>>2]+b|0]=c}function Ra(a){a=a|0;return(v[a+4>>2]-v[a>>2]|0)/12|0}function Kc(a,b,c){a=a|0;b=b|0;c=c|0;Ba[v[a>>2]](b,c)}function z6(a,b){a=a|0;b=b|0;v[b>>2]=0;return a-12|0}function uz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0}function pk(a){a=a|0;v[a>>2]=119844;wh(a);return a|0}function ip(a){a=a|0;v[a>>2]=124400;wh(a);return a|0}function gf(a,b){a=a|0;b=b|0;v[a+88>>2]=b;return b|0}function ff(a,b){a=a|0;b=b|0;v[a+84>>2]=b;return b|0}function bK(a,b){a=a|0;b=b|0;v[b+24>>2]=v[b+24>>2]+1}function Wr(a,b){a=a|0;b=b|0;Cy(v[a+1008>>2]+24|0,b)}function Uo(a){a=a|0;v[a>>2]=123388;wh(a);return a|0}function TZ(a){a=a|0;v[a>>2]=142644;OZ(a+8|0);jaa(a)}function Raa(a){if(a){return 31-E(a-1^a)|0}return 32}function Nc(a,b){a=a|0;b=b|0;return Ba[v[a>>2]](b)|0}function x5(a){a=a|0;return C(z[v[a+80>>2]+468>>2])}function v5(a){a=a|0;return C(z[v[a+80>>2]+472>>2])}function ot(a){a=a|0;Om(v[37389],a-12|0);Tm(a+20|0)}function nb(a){a=a|0;if(a){Ba[v[v[a>>2]+16>>2]](a)}}function k8(a){a=a|0;return C(z[v[a+80>>2]+120>>2])}function jc(a,b){a=a|0;b=b|0;return+A[v[a>>2]+b>>3]}function i8(a){a=a|0;return C(z[v[a+80>>2]+124>>2])}function Za(a){a=a|0;if(a){Ba[v[v[a>>2]+28>>2]](a)}}function Sc(a){a=a|0;if(a){Ba[v[v[a>>2]+12>>2]](a)}}function Pe(){var a=0;a=maa(4);v[a>>2]=1;return a|0}function M7(a){a=a|0;return C(z[v[a+80>>2]+108>>2])}function K7(a){a=a|0;return C(z[v[a+80>>2]+112>>2])}function Jq(a){a=a|0;return v[v[a+1008>>2]+1020>>2]}function HN(a,b,c){a=a|0;b=C(b);c=c|0;GN(a-8|0,b,c)}function Gn(a){a=a|0;return v[a+24>>2]-v[a+32>>2]|0}function $d(a,b){a=a|0;b=b|0;return v[v[a>>2]+b>>2]}function n6(a){a=a|0;return C(z[v[a+80>>2]+12>>2])}function i7(a){a=a|0;return C(z[v[a+80>>2]+96>>2])}function hf(a){a=a|0;if(a){Ba[v[v[a>>2]+8>>2]](a)}}function g7(a){a=a|0;return C(z[v[a+80>>2]+92>>2])}function e7(a){a=a|0;return C(z[v[a+80>>2]+88>>2])}function c7(a){a=a|0;return C(z[v[a+80>>2]+84>>2])}function a7(a){a=a|0;return C(z[v[a+80>>2]+80>>2])}function Yr(a){a=a|0;return v[v[a+1008>>2]+180>>2]}function Xr(a){a=a|0;return v[v[a+1008>>2]+176>>2]}function Wc(a,b){a=a|0;b=b|0;return w[v[a>>2]+b|0]}function Ub(a){a=a|0;if(a){Ba[v[v[a>>2]+4>>2]](a)}}function UN(a,b,c){a=a|0;b=b|0;c=c|0;TN(a-8|0,b,c)}function SN(a,b,c){a=a|0;b=b|0;c=c|0;RN(a-8|0,b,a)}function Pq(a){a=a|0;return v[v[a+1020>>2]+308>>2]}function Lq(a){a=a|0;return v[v[a+1020>>2]+120>>2]}function EU(a){a=a|0;return v[a+20>>2]+v[a+8>>2]|0}function t6(a,b){a=a|0;b=b|0;v[b>>2]=0;return a|0}function l6(a){a=a|0;return C(z[v[a+80>>2]+8>>2])}function j6(a){a=a|0;return C(z[v[a+80>>2]+4>>2])}function dy(a,b){a=a|0;b=b|0;return ey(a+4|0,b)|0}function _k(a,b){a=a|0;b=b|0;return!T9(b,21828)|0}function S2(a){a=a|0;Ba[v[v[a>>2]+64>>2]](a);e9()}function LL(a){a=a|0;return v[v[a+88>>2]+4204>>2]}function Ky(a,b){return Iy(a,b,a+176|0,a+172|0,1)}function KL(a){a=a|0;return v[v[a+88>>2]+4208>>2]}function pe(a,b,c){a=a|0;b=b|0;c=c|0;H8(a,b,c,1)}function oe(a,b,c){a=a|0;b=b|0;c=c|0;G8(a,b,c,1)}function ne(a,b,c){a=a|0;b=b|0;c=c|0;E8(a,b,c,1)}function me(a,b,c){a=a|0;b=b|0;c=c|0;H8(a,b,c,0)}function le(a,b,c){a=a|0;b=b|0;c=c|0;G8(a,b,c,0)}function ke(a,b,c){a=a|0;b=b|0;c=c|0;E8(a,b,c,0)}function ad(a,b){a=a|0;b=b|0;return Ba[a|0](b)|0}function _P(a){a=a|0;return v[v[a+4>>2]+1160>>2]}function SR(a,b,c,d,e,f){OR(a);PR(a,b,c,d,e,0,f)}function Qaa(a,b,c,d){wa(a|0,b|0,8,0,c|0,-1,d|0)}function Kf(a){a=a|0;return v[a+4>>2]-v[a>>2]>>2}function Jaa(a){a=a|0;a=xa-a&-16;xa=a;return a|0}function $p(a,b,c){a=a|0;b=b|0;c=c|0;aq(a,b,c,0)}function vc(a){a=a|0;Ba[v[v[a>>2]+204>>2]](a,0)}function nY(a,b){a=a|0;b=b|0;v[a>>2]=2139095039}function h6(a){a=a|0;return C(z[v[a+80>>2]>>2])}function g$(a,b){a=a|0;b=b|0;u[a>>1]=x[b+68>>1]}function Wg(a,b){a=a|0;b=b|0;return Vg(a,b,1)|0}function KF(a,b){if(b>>>0<=4294967167){JF(a,b)}}function Hq(a){a=a|0;return v[(a+32|0)+2344>>2]}function Bm(a,b){a=a|0;b=b|0;u[a>>1]=x[b+44>>1]}function xn(a){a=a|0;return v[v[37389]+676>>2]}function sw(a,b,c){a=a|0;b=b|0;c=c|0;iw(a,b,c)}function qk(a,b,c){a=a|0;b=b|0;c=c|0;Gj(a,b,c)}function pj(a,b,c){a=a|0;b=b|0;c=c|0;nj(a,b,c)}function nt(a){a=a|0;Om(v[37389],a);Tm(a+32|0)}function bl(a){a=a|0;v[a>>2]=121200;return a|0}function _9(a,b,c){if(!(w[a|0]&32)){O9(b,c,a)}}function Yt(a){a=a|0;return v[a+196>>2]>>>31|0}function Xl(a){a=a|0;v[a>>2]=121580;return a|0}function Tn(a){a=a|0;return v[v[37389]+164>>2]}function Oaa(a){a=a|0;return(a<<8|a>>>8)&65535}function Nn(a){a=a|0;return v[v[37389]+124>>2]}function gC(a,b){if(y[a+4>>2]>>0){fC(a,b)}}function bg(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function Y0(a,b){a=a|0;b=b|0;t[a|0]=w[b+64|0]}function Vk(a){a=a|0;return(w[a+6|0]&2)>>>1|0}function Qn(a){a=a|0;return v[v[37389]+84>>2]}function Kn(a){a=a|0;return v[v[37389]+44>>2]}function Ah(a,b){a=a|0;b=b|0;t[a|0]=w[b+73|0]}function xA(a,b,c){a=a|0;b=b|0;c=c|0;yA(a,c)}function vo(a){a=a|0;return v[a+312>>2]!=0|0}function vA(a,b,c){a=a|0;b=b|0;c=c|0;wA(a,c)}function rm(a){a=a|0;v[a+16>>2]=v[a+16>>2]+1}function n4(a){a=a|0;Ba[v[v[a>>2]+20>>2]](a)}function h_(a){a=a|0;v[a+12>>2]=v[a+12>>2]+1}function eG(a,b){KF(a+168|0,b);KF(a+640|0,b)}function dG(a,b){JF(a+168|0,b);JF(a+640|0,b)}function cG(a,b){xF(a+168|0,b);xF(a+640|0,b)}function Ys(a){a=a|0;NE(v[a+28>>2]+5584|0,1)}function Xs(a){a=a|0;NE(v[a+28>>2]+5584|0,0)}function Rf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0}function O6(a){a=a|0;Ba[v[v[a>>2]+12>>2]](a)}function Ds(a){a=a|0;Ba[v[v[a>>2]+32>>2]](a)}function AL(a){a=a|0;return v[v[a+88>>2]>>2]}function $J(a){a=a|0;Ba[v[v[a>>2]+48>>2]](a)}function nL(a){a=a|0;Ba[v[v[a>>2]+4>>2]](a)}function js(a){a=a|0;return C(z[a+5148>>2])}function f$(a){a=a|0;return C(z[a- -64>>2])}function ab(a,b){a=a|0;b=b|0;Ba[v[a>>2]](b)}function Ta(a){a=a|0;return v[v[a>>2]-4>>2]}function Jr(a,b){a=a|0;b=b|0;v[a+5824>>2]=b}function EC(a,b){a=a|0;b=b|0;gC(a+7664|0,b)}function Dm(a){a=a|0;return w[a+46|0]>>>4|0}function w7(a,b){a=a|0;b=b|0;d9();return 1}function vq(a,b){a=a|0;b=b|0;t[a+6355|0]=b}function vi(a,b){a=a|0;b=b|0;v[a+112>>2]=b}function ki(a){a=a|0;return w[a+72|0]!=0|0}function dT(a){a=a|0;return C(z[a+536>>2])}function cT(a){a=a|0;return C(z[a+532>>2])}function cO(a,b){a=a|0;b=b|0;v[a+104>>2]=b}function cE(a,b){a=a|0;b=b|0;gC(a+284|0,b)}function ZA(a,b,c){a=a|0;b=b|0;c=c|0;_A(a)}function ST(a){a=a|0;return C(z[a+524>>2])}function PK(a){QK(a);LK(a+72|0);LK(a+48|0)}function KT(a){a=a|0;return C(z[a+540>>2])}function DA(a,b,c){a=a|0;b=b|0;c=c|0;EA(a)}function Bo(a){a=a|0;return C(z[a+308>>2])}function Ao(a,b){a=a|0;b=C(b);$k(a+48|0,b)}function $t(a,b){a=a|0;b=b|0;v[a+192>>2]=b}function $A(a,b,c){a=a|0;b=b|0;c=c|0;aB(a)}function ym(a){a=a|0;return C(z[a+40>>2])}function y6(a,b){a=a|0;b=b|0;s6(a-12|0,b)}function xS(a){a=a|0;tU(a+8|0);return a|0}function x6(a,b){a=a|0;b=b|0;r6(a-12|0,b)}function wm(a){a=a|0;return C(z[a+36>>2])}function vz(a,b){a=a|0;b=b|0;v[a+48>>2]=b}function um(a){a=a|0;return C(z[a+32>>2])}function uk(a,b){a=a|0;b=b|0;ih(a+12|0,b)}function tk(a,b){a=a|0;b=b|0;hh(a+12|0,b)}function sk(a,b){a=a|0;b=b|0;eh(a+12|0,b)}function qi(a){a=a|0;return C(z[a+68>>2])}function pU(a,b){a=a|0;b=b|0;t[a+139|0]=b}function oU(a,b){a=a|0;b=b|0;t[a+138|0]=b}function nU(a,b){a=a|0;b=b|0;t[a+137|0]=b}function i9(a,b){a=a|0;b=b|0;t[a+188|0]=b}function fO(a,b){a=a|0;b=b|0;v[a+96>>2]=b}function XS(a){a=a|0;return C(z[a+48>>2])}function TS(a){a=a|0;return C(z[a+52>>2])}function SS(a,b){a=a|0;b=b|0;v[a+16>>2]=b}function RS(a){a=a|0;return C(z[a+56>>2])}function Gw(a,b,c){I9(b,c,v[a+356>>2]<<2)}function Bj(a,b){a=a|0;b=b|0;v[a+12>>2]=b}function $S(a,b){a=a|0;b=b|0;v[a+88>>2]=b}function yq(a){a=a|0;return v[a+5928>>2]}function wq(a){a=a|0;return v[a+5980>>2]}function ts(a){a=a|0;return v[a+6092>>2]}function rK(a,b){a=a|0;b=b|0;v[a+8>>2]=b}function oq(a){a=a|0;return v[a+6020>>2]}function ms(a){a=a|0;return v[a+1044>>2]}function mj(a,b){a=a|0;b=b|0;lj(a,b,0,1)}function kt(a){a=a|0;return jt(a-12|0)|0}function km(a){a=a|0;return jm(a-12|0)|0}function kj(a,b){a=a|0;b=b|0;lj(a,b,1,0)}function dr(a){a=a|0;return v[a+2228>>2]}function cs(a){a=a|0;return v[a+5648>>2]}function cr(a){a=a|0;return v[a+2224>>2]}function bs(a){a=a|0;return v[a+5612>>2]}function as(a){a=a|0;return v[a+6096>>2]}function _r(a){a=a|0;return v[a+5616>>2]}function _q(a){a=a|0;return v[a+2220>>2]}function Zr(a){a=a|0;return v[a+1120>>2]}function Zq(a){a=a|0;return v[a+2216>>2]}function Yq(a){a=a|0;return v[a+2208>>2]}function YN(a,b){a=a|0;b=b|0;XN(a-8|0,b)}function Xq(a){a=a|0;return v[a+2204>>2]}function P6(a,b){a=a|0;b=b|0;t[a+33|0]=b}function ON(a,b){a=a|0;b=b|0;NN(a-8|0,b)}function Nq(a){a=a|0;return v[a+2380>>2]}function Mr(a){a=a|0;return v[a+5700>>2]}function Kr(a){a=a|0;return v[a+5824>>2]}function Fm(a){a=a|0;return w[a+46|0]&15}function A5(a){a=a|0;return y5(a-12|0)|0}function yi(a){a=a|0;return v[a+108>>2]}function yS(a){a=a|0;return xS(a-8|0)|0}function wi(a){a=a|0;return v[a+112>>2]}function tz(a,b){a=a|0;b=b|0;return b|0}function st(a){a=a|0;return v[a+116>>2]}function rM(a){a=a|0;return v[a+236>>2]}function qM(a){a=a|0;return v[a+268>>2]}function pM(a){a=a|0;return v[a+272>>2]}function oM(a){a=a|0;return v[a+256>>2]}function nM(a){a=a|0;return v[a+260>>2]}function dO(a){a=a|0;return aO(a-8|0)|0}function cf(a){a=a|0;return v[a+100>>2]}function au(a){a=a|0;return v[a+192>>2]}function a_(a){a=a|0;return $Z(a-8|0)|0}function _i(a){a=a|0;return v[a+364>>2]}function ZS(a){a=a|0;return v[a+488>>2]}function Yi(a){a=a|0;return v[a+356>>2]}function Xi(a){a=a|0;return v[a+368>>2]}function Wi(a){a=a|0;return v[a+324>>2]}function Wh(a){a=a|0;return v[a+124>>2]}function Wb(a){a=a|0;return Ba[a|0]()|0}function Vi(a){a=a|0;return v[a+320>>2]}function UT(a){a=a|0;return TT(a-4|0)|0}function Tl(a){a=a|0;return v[a+396>>2]}function T_(a){a=a|0;return S_(a-8|0)|0}function TI(a){a=a|0;return v[a+284>>2]}function TD(a){a=a|0;BD(a);t[a+337|0]=1}function Ql(a){a=a|0;return v[a+392>>2]}function PS(a){a=a|0;return v[a+432>>2]}function N0(a){a=a|0;return M0(a-8|0)|0}function JL(a){a=a|0;return v[a+104>>2]}function GS(a){a=a|0;return v[a+540>>2]}function z5(a){a=a|0;return v[a+80>>2]}function yp(a){a=a|0;return v[a+48>>2]}function xs(a){a=a|0;return v[a+24>>2]}function xp(a){a=a|0;return v[a+44>>2]}function wp(a){a=a|0;return v[a+56>>2]}function vp(a){a=a|0;return v[a+52>>2]}function tW(a,b){a=a|0;b=b|0;v[a>>2]=0}function sm(a){a=a|0;return v[a+16>>2]}function o6(a){a=a|0;return v[a+76>>2]}function l$(a){a=a|0;return v[a+92>>2]}function h9(a){a=a|0;return w[a+188|0]}function aU(a){a=a|0;return v[a+68>>2]}function _S(a){a=a|0;return v[a+88>>2]}function Yg(a){a=a|0;return v[a+28>>2]}function Xg(a){a=a|0;return v[a+36>>2]}function Qj(a){a=a|0;return x[a+24>>1]}function Cs(a){a=a|0;return v[a+40>>2]}function Cj(a){a=a|0;return v[a+12>>2]}function Bs(a){a=a|0;return v[a+32>>2]}function As(a){a=a|0;return v[a+20>>2]}function $T(a){a=a|0;return v[a+72>>2]}function tn(a){a=a|0;return v[a+8>>2]}function p_(a){a=a|0;return w[a+55|0]}function nw(a,b){a=a|0;b=b|0;return 0}function m_(a){a=a|0;return w[a+54|0]}function jS(a,b){a=a|0;b=b|0;return-1}function er(a){a=a|0;return v[37393]} +function Rc(a){a=a|0;return v[a+4>>2]}function Q6(a){a=a|0;return w[a+33|0]}function $g(a){a=a|0;return w[a+32|0]}function v8(a){a=a|0;return v[36972]}function v6(a){a=a|0;return v[36368]}function s7(a){a=a|0;return v[36527]}function gu(a,b){OU(a,b);OU(a+8|0,b)}function bo(a){a=a|0;return v[37696]}function S8(a){a=a|0;return v[37135]}function Of(a,b,c){a=a|0;b=b|0;c=c|0}function G7(a){a=a|0;return v[36684]}function $7(a){a=a|0;return v[36821]}function eO(a){a=a|0;jaa(aO(a-8|0))}function dd(a){a=a|0;return v[a>>2]}function Yf(a,b){a=a|0;b=b|0;jaa(b)}function VI(a){a=a|0;xI(v[a+28>>2])}function RL(a){a=a|0;iM(v[a+28>>2])}function OS(a){a=a|0;return a+440|0}function Kaa(){za=5396048;ya=153168}function FJ(a){a=a|0;EJ(v[a+28>>2])}function Aj(a){a=a|0;return vh(a)|0}function zp(a){a=a|0;return a+44|0}function zi(a){a=a|0;return a+12|0}function ze(a){a=a|0;return 113664}function yf(a){a=a|0;return 112828}function ye(a){a=a|0;return 116708}function ud(a){a=a|0;return 113480}function rd(a){a=a|0;return 114556}function nd(a){a=a|0;return 113448}function nc(a){a=a|0;return 113040}function mp(a){a=a|0;return a+60|0}function kd(a){a=a|0;return 113440}function kc(a){a=a|0;return 111184}function jN(a){a=a|0;return 15990} +function eo(a){a=a|0;return a+48|0}function be(a){a=a|0;return 111264}function bd(a){a=a|0;return 113744}function ao(a){a=a|0;return a+16|0}function af(a){a=a|0;return 117420}function ae(a){a=a|0;return 111280}function Ze(a){a=a|0;return 111148}function Ye(a){a=a|0;return 117232}function Yb(a){a=a|0;return 111016}function Xd(a){a=a|0;return 111272}function Xb(a){a=a|0;if(a){jaa(a)}}function We(a){a=a|0;return 117072}function Vd(a){a=a|0;return 111064}function Ue(a){a=a|0;return 117160}function Te(a){a=a|0;return 117080}function Qe(a){a=a|0;return 117004}function Pc(a){a=a|0;return 113596}function Oe(a){a=a|0;return 115224}function Oc(a){a=a|0;return 113584}function Md(a){a=a|0;return 115092}function Ke(a){a=a|0;return 115248}function GO(a){a=a|0;return 22940} +function Ff(a){a=a|0;return 114932}function Fe(a){a=a|0;return 115200}function Ae(a){a=a|0;return 115176}function A6(a){a=a|0;return a-12|0}function xj(a){a=a|0;return 16235}function xQ(a){a=a|0;return 15958}function wz(a){a=a|0;return 20799}function vs(a){a=a|0;return 15467}function vQ(a){a=a|0;return 15775}function ug(a){a=a|0;t[a+120|0]=1}function tQ(a){a=a|0;return 16090}function tN(a){a=a|0;return 15877}function rQ(a){a=a|0;return 15702}function rN(a){a=a|0;return 15855}function pQ(a){a=a|0;return 15668}function pN(a){a=a|0;return 15533}function ok(a){a=a|0;jh(a+12|0,a)}function oD(a){a=a|0;nD(a);jaa(a)}function nQ(a){a=a|0;return 15165}function nN(a){a=a|0;return 15861}function nG(a){a=a|0;return 15088}function mM(a){a=a|0;return 21398}function mG(a){a=a|0;return 15419}function lQ(a){a=a|0;return 15106}function lN(a){a=a|0;return 16020}function k_(a){a=a|0;return 16433}function jQ(a){a=a|0;return 15597}function hm(a){a=a|0;return 20824}function hQ(a){a=a|0;return 15735}function hN(a){a=a|0;return 14991}function gT(a){a=a|0;return a-8|0}function gO(a){a=a|0;return 21426}function fi(a){a=a|0;return 20861}function fN(a){a=a|0;return 15265}function e1(a){a=a|0;return 16512}function dN(a){a=a|0;return 15018}function cu(a){a=a|0;return 21956}function ch(a){a=a|0;return 21226}function cC(a){a=a|0;return 21859}function c$(a){a=a|0;return 23290}function bp(a){a=a|0;return 24438}function aN(a){a=a|0;return 15250}function _y(a){a=a|0;Xy(a);jaa(a)}function _M(a){a=a|0;return 15362}function Z3(a){a=a|0;Y3(a);jaa(a)}function YM(a){a=a|0;return 15442}function Wl(a){a=a|0;return a+8|0}function WM(a){a=a|0;return 15551}function Vz(a){a=a|0;return 14794}function Uk(a){a=a|0;return 14521}function UU(a){a=a|0;TU(a);jaa(a)}function UM(a){a=a|0;return 15185}function U0(a){a=a|0;return 16492}function Tz(a){a=a|0;return 14973}function TL(a){a=a|0;return 16214}function T3(a){a=a|0;S3(a);jaa(a)}function SM(a){a=a|0;return 15942}function SL(a){a=a|0;return 16176}function SI(a){a=a|0;return 14844}function Rz(a){a=a|0;return 15279}function R2(a){a=a|0;return a+4|0}function QM(a){a=a|0;return 15489}function QJ(a){a=a|0;return 16123}function QI(a){a=a|0;return 14878}function Pz(a){a=a|0;return 14233}function PL(a){a=a|0;return 16193}function Oo(a){a=a|0;return 24470}function OM(a){a=a|0;return 15390}function OL(a){a=a|0;return 16159}function Mv(a){a=a|0;Lv(a);jaa(a)}function MM(a){a=a|0;return 15845}function Lz(a){a=a|0;return 20654}function Jz(a){a=a|0;return 23219}function JQ(a){a=a|0;return 15921}function II(a){a=a|0;return 16065}function Hz(a){a=a|0;return 15568}function HQ(a){a=a|0;return 15232}function HI(a){a=a|0;return 15649}function Gm(a){a=a|0;return 14935}function GI(a){a=a|0;return 15302}function Fw(a){a=a|0;Ew(a);jaa(a)}function Fr(a){a=a|0;ME(a+5584|0)}function FY(a){a=a|0;return 21878}function FQ(a){a=a|0;return 15384}function FK(a){a=a|0;EK(a);jaa(a)}function Es(a){a=a|0;return 14337}function EO(a){a=a|0;return 14022}function DQ(a){a=a|0;return 15803}function CM(a){a=a|0;BM(a);jaa(a)}function BQ(a){a=a|0;return 15200}function BK(a){J9(a+1164|0,0,648)}function $P(a){a=a|0;return 15333}function zQ(a){a=a|0;return 4875}function yz(a){a=a|0;return 2145}function xz(a){a=a|0;return 3151}function s8(a){a=a|0;return 2262}function p7(a){a=a|0;return 2298}function mw(a){a=a|0;t[a+92|0]=1}function gd(a){a=a|0;t[a+68|0]=1}function Zz(a){a=a|0;return 3253}function Xc(a){a=a|0;t[a+84|0]=1}function Waa(a,b){Aa=a;return b} +function W7(a){a=a|0;return 2364}function S5(a){a=a|0;return 2402}function P8(a){a=a|0;return 2224}function Ol(a){a=a|0;return 2204}function Nz(a){a=a|0;return 4848}function Ig(a){a=a|0;return 2426}function HF(a,b,c,d,e){AF(a,0,e)}function Ez(a){a=a|0;return 3301}function E8(a,b,c,d){F8(a,b,c,d)}function C7(a){a=a|0;return 2334}function ri(a){a=a|0;Qk(a+12|0)}function gy(a){a=a|0;jaa($x(a))}function bO(a){a=a|0;jaa(aO(a))}function _a(a){a=a|0;return a|0}function Do(a){a=a|0;Xk(a+48|0)}function $a(a){a=a|0;t[a+4|0]=1}function hc(){return maa(24)|0}function g_(a){a=a|0;f_(a-8|0)}function cc(){return maa(28)|0}function bc(){return maa(16)|0}function ac(){return maa(12)|0}function AY(a){a=a|0;zY(a-8|0)}function zj(a){a=a|0;return 2}function e$(a){a=a|0;return 4}function dp(a){a=a|0;return 0}function Lg(a){a=a|0;return 1}function Laa(){return xa-ya|0}function Kg(a,b){a=a|0;b=b|0}function Wf(a){a=a|0;jaa(a)}function K9(){return 150796}function Naa(){return ya|0}function Maa(){return za|0}function Iaa(a){a=a|0;xa=a}function IF(a,b){AF(a,1,b)}function Haa(){return xa|0}function CI(a){v[a+4>>2]=0}function Uf(a){a=a|0;L()}function Vf(){da();L()}function Sa(a){a=a|0} // EMSCRIPTEN_END_FUNCS -e=w;var Ba=c([null,R6,Ra,Sa,Ta,f9,Ua,v7,Va,I6,Va,bo,Wa,c3,Ua,H8,Ua,Pa,Ua,Xa,Ya,Sa,Ya,Za,Za,Sa,_a,$a,ab,bb,cb,db,Ra,Sa,eb,fb,gb,hb,ib,jb,kb,lb,mb,Za,Za,Sa,kb,mb,Za,Za,Sa,nb,ob,pb,qb,rb,sb,kb,mb,Za,Za,Sa,tb,ob,ub,qb,vb,kb,wb,sb,mb,Za,Za,Sa,kb,xb,sb,mb,Za,Za,Sa,yb,zb,ub,qb,rb,sb,kb,mb,Za,Za,Sa,Ab,jb,Bb,Cb,Db,ob,Eb,Fb,Gb,Hb,Ib,Jb,qb,Kb,Lb,Mb,Nb,Ob,Pb,Qb,zb,Rb,jb,Sb,kb,Tb,Sa,Tb,Za,Za,Sa,Ub,Vb,Wb,Xb,Yb,Vb,Zb,_b,Wb,$b,Zb,_b,Wb,ac,Zb,_b,Wb,bc,cc,dc,ec,fc,Wb,gc,hc,ic,Wb,jc,kc,lc,cc,dc,Ra,Sa,lb,Wb,mc,Ra,Sa,nc,oc,eb,eb,pc,qc,nc,rc,sc,tc,uc,$a,vc,wc,xc,sb,yc,zc,Ac,Bc,Cc,Dc,Ec,Fc,Gc,Hc,Ic,Jc,Kc,Lc,Mc,Wb,Nc,cc,dc,Zb,_b,Wb,Za,Za,Oc,Pc,Vb,Qc,Mc,Rc,Sa,Sc,Tc,Uc,Vc,Rc,Za,Za,Sa,Wc,$a,Xc,Yc,Zc,Rc,Za,Za,Sa,_c,Vb,Na,$c,Wb,Za,Za,ad,bd,Vb,Qc,Mc,cd,Mc,Rc,Sa,dd,ed,Uc,Vc,Rc,Za,Za,Sa,fd,$a,gd,Yc,hd,Rc,Za,Za,Sa,id,Vb,Oa,$c,Wb,jd,kd,ld,Wb,md,nd,Vb,od,pd,Wb,qd,kd,ld,Rc,Sa,Rc,Za,Za,Sa,_a,$a,rd,bb,sd,Wb,td,Ra,Sa,lb,kb,nc,Ra,Sa,lb,kb,ud,vd,eb,wd,nc,nc,tc,tc,tc,tc,nc,xd,yd,zd,Tb,Sa,lb,Ad,tc,Bd,Cd,Dd,tc,tc,Ed,Fd,Gd,Fd,Hd,Fd,Id,Fd,Jd,Fd,Kd,Fd,Wb,Ld,Md,ld,Nd,tc,Tb,Sa,Tb,Za,Za,Sa,Od,Vb,Ra,Sa,Pd,Qd,Rd,Sd,Td,Fd,Wb,Ud,Vd,lc,Rc,Sa,Ra,Sa,Tb,Sa,Rc,Za,Za,Sa,Wb,Wd,Xd,Yd,Zd,_d,Wb,$d,Wb,ae,Ra,Sa,eb,lb,Ra,Za,Za,Sa,tc,eb,be,eb,ce,Mc,de,Jc,ee,fe,Ra,Za,Za,Sa,Ra,Za,Za,Sa,kb,ud,eb,oc,ge,Jc,nc,he,ie,je,jb,ke,le,me,ne,oe,pe,qe,re,eb,se,Mc,te,ue,Ra,Za,Za,Sa,kb,ud,eb,lb,pc,ve,jb,eb,we,Jc,Wb,xe,Wb,ye,Wb,Za,Za,ze,Ae,Vb,Be,Ce,De,pc,cc,dc,Wb,Za,Za,Ee,Fe,Vb,Ge,He,Zb,_b,Ie,pc,Wb,Za,Za,Je,Ke,Le,Zb,_b,Me,pc,Wb,Za,Za,Ne,Oe,Vb,Ra,Sa,lb,Wb,Za,Za,Pe,Qe,Re,Wb,Se,Md,ld,Ra,Sa,lb,Wb,Za,Za,Te,Ue,Re,Wb,Ve,We,Va,Wb,Xe,Md,ld,Wb,Ye,Ze,_e,Wb,$e,Md,ld,Nd,tc,Ra,Sa,lb,tc,vb,af,nc,nc,Ra,Sa,pc,bf,pc,cf,df,cc,dc,Zb,_b,ef,wc,ff,wc,Uc,Vc,gf,Za,Za,Sa,hf,Vb,pc,lb,Zb,_b,jf,wc,Ra,Sa,lb,kf,Qd,lf,mf,tc,nf,kb,of,Jc,nc,pf,Jc,qf,fe,rf,sc,sf,tf,wc,sf,uf,vf,wf,xf,yf,Vb,zf,nc,Af,eb,Qa,pc,Bf,Cf,Df,Qd,wf,Ef,yf,Vb,Ff,Gf,Hf,If,Jf,pc,Kf,Cf,Lf,Mf,Nf,Nf,Nf,Of,Pf,Qf,Rf,Sf,Uf,Tf,Za,Vf,Wf,Xf,Yf,Ra,_f,$f,Tf,ag,Za,Vf,bg,Ra,eg,dg,Tf,ag,Za,Vf,fg,gg,ig,hg,Tf,jg,Za,Vf,kg,pg,Hg,Uk,ng,og,Ig,mg,qg,rg,tg,ug,vg,wg,xg,Dg,zg,Ag,Bg,Cg,Eg,lg,Jg,Kg,Ng,bh,Lg,Mg,ch,Qg,Sg,Tg,Vg,Wg,Xg,Yg,Zg,_g,$g,ah,di,ei,$h,ai,fi,gi,hi,ii,ji,ki,li,mi,ni,oi,pi,qi,ri,si,bf,ti,ui,vi,wi,xi,yi,yi,bi,ci,xh,yh,zh,Ah,Bh,Ch,Dh,Eh,Fh,Gh,Hh,Ih,Jh,Kh,Lh,Mh,Nh,Oh,Ph,Qh,Rh,Sh,Th,Uh,Vh,Wh,Xh,Yh,Zh,_h,zi,Ai,Bi,Tf,Zk,Oi,wj,Ki,Li,xj,yj,zj,Aj,Bj,Cj,Dj,Gj,Hj,Ij,Jj,Kj,Lj,Mj,Pi,oj,Nj,Oj,Pj,Qj,Rj,Sj,_i,Tj,Uj,Vj,Wj,Xj,Yj,Zj,Qi,Ri,Si,Ti,_j,pj,$j,qj,rj,sj,tj,uj,aj,fj,jj,lj,gj,ak,ck,dk,ek,fk,gk,hk,ik,jk,kk,Ui,Vi,Wi,Xi,Zi,Yi,Ei,Gi,Ii,Ci,Ra,Ra,Kg,nj,Ni,lk,Tf,Fi,Hi,Ji,Di,mk,Tf,Nj,nk,ok,Tf,pk,qk,rk,sk,tk,Za,Tf,Za,Vf,uk,vk,wk,xk,yk,zk,di,Tk,Bk,Ck,Vk,gi,hi,ii,ji,ki,li,mi,ni,oi,pi,qi,ri,si,bf,ti,ui,vi,wi,xi,yi,yi,Rk,Sk,Ik,Hk,Kk,Jk,Ek,Dk,Gk,Fk,Lk,Mk,Nk,Ok,Qk,zi,Ai,Yk,Tf,Ml,Nl,al,bl,Ol,Pl,Ql,Rl,Sl,Tl,Ul,Vl,Vl,cl,dl,el,hl,gl,fl,il,jl,kl,ll,wl,xl,yl,zl,Al,Bl,Cl,Dl,El,Fl,ml,nl,Gl,Hl,Il,Jl,Kl,Ll,ol,pl,$k,Jg,Kg,rl,ql,sl,tl,ul,vl,al,Tf,Ml,gm,Wl,Xl,hm,Pl,Ql,Rl,Sl,Tl,Ul,Vl,Vl,rl,ql,sl,tl,_l,$l,am,bm,cm,dm,em,fm,ul,vl,Yl,Zl,$k,Jg,Kg,Wl,Tf,pm,Fm,im,km,Gm,rm,qm,sm,tm,um,vm,wm,xm,ym,zm,Am,Bm,Cm,Dm,Em,nm,mm,Jg,jm,lm,om,Im,Jm,Tm,Um,Vm,Wm,Xm,nn,pn,qn,ao,Cn,$n,In,Jn,Kn,Ln,Mn,Nn,On,Pn,Qn,Rn,Sn,Tn,rn,sn,tn,un,yn,Un,vn,wn,xn,zn,An,Bn,En,Fn,Gn,Vn,Xn,Yn,Zn,co,eo,Za,Vf,Za,Vf,fo,io,No,go,ho,Oo,Kg,zj,Aj,Bj,Cj,Po,Ro,Hj,Ij,Jj,Kj,Lj,Mj,Pi,jo,Nj,Oj,Pj,Qj,Rj,Sj,no,Tj,Uj,Vj,Wj,Xj,Yj,Zj,Qi,Ri,Si,Ti,_j,oo,$j,qo,rj,sj,tj,uj,ro,to,jj,lj,so,ak,ck,dk,ek,fk,gk,hk,ik,jk,kk,ko,mo,uo,vo,wo,xo,yo,Ko,Mo,Lo,zo,Ao,Bo,Co,Do,Eo,Go,Fo,Fi,Hi,Ji,Di,Io,Jo,Ni,go,Tf,Di,Ra,Ra,So,Tf,Nj,nk,To,Tf,pk,qk,rk,sk,tk,Tf,Wo,ap,Uo,Vo,bp,cp,zj,Aj,Bj,Cj,dp,fp,Hj,Ij,Jj,Kj,Lj,Mj,Yo,Xo,Nj,Oj,Pj,Qj,Rj,Sj,Fi,Hi,Ji,Di,_o,$o,Ni,gp,Tf,Di,Ra,Ra,nk,hp,Tf,pk,qk,rk,sk,tk,Tf,mp,up,vp,wp,xp,kp,lp,tp,pp,rp,sp,ip,jp,yp,zp,Ap,Vf,Bp,Cp,Za,Vf,Dp,Ep,Vf,Fp,Tf,$s,ft,ct,Ip,Kp,Lp,Tp,Up,Rp,Sp,dr,Yr,hq,jq,Vp,_p,dq,gq,eq,lq,mq,pq,qq,rq,sq,vq,wq,xq,yq,nq,oq,Gr,Hr,_r,$r,Cq,Fq,Gq,Hq,Jq,Iq,Kq,Lq,Mq,Vq,Wq,Xq,Yq,Zq,_q,ar,br,cr,gr,hr,ir,jr,mr,rr,sr,ur,wr,xr,Np,Op,Pp,Qp,Nq,Oq,cs,Dq,Eq,Rr,Sr,Tr,Ur,zq,Bq,as,bs,Er,rs,Kr,Lr,Mr,Ir,Jr,os,ps,qs,Zr,Pq,Qq,Rq,Sq,Tq,Uq,ss,es,fs,gs,hs,Vr,Wr,Xr,ds,Nr,Or,Pr,Qr,is,js,cp,ls,ms,tq,uq,ns,Ra,kr,ts,ss,$r,Fs,Vf,tr,us,vs,fr,ws,xs,Jp,ys,sn,Qc,zs,rm,As,Xg,wp,Bs,or,Aq,Vf,Cs,Ds,Es,Ra,Tf,Gs,Hs,Cs,ws,Is,Js,zs,Ls,Ra,Ss,Za,Vf,Vs,As,Ws,Vs,As,Xs,Vs,As,Ys,Vs,As,Zs,Vs,As,_s,bt,Za,Vf,et,Vf,ht,Vf,pm,bu,it,kt,cu,rm,qm,rt,st,tt,ut,vt,wt,xt,yt,zt,At,zs,Bt,Ct,Dt,Et,Ft,Gt,Ht,It,Jt,Kt,Lt,Mt,Nt,Ot,Pt,Qt,Rt,St,Ut,Vt,Wt,Xt,_t,$t,ot,pt,mt,jt,lt,nt,O$,pu,Zu,_u,$u,av,bv,cv,dv,ev,fv,gv,hv,iv,bv,jv,kv,lv,mv,nv,ov,pv,qv,rv,sv,tv,uv,vv,wv,xv,yv,zv,Av,Bv,Cv,Dv,Ev,Fv,Gv,Kv,Lv,qw,Mv,kw,lw,Uv,cp,mw,ag,Nf,Nf,Nf,Ra,Nf,Jg,Jg,Nf,Jg,nw,Qf,Qf,dv,Jg,Jg,Ra,Vv,Vv,Wv,Xv,Yv,aw,dw,fw,gw,Jg,ow,pw,ew,hw,rw,sw,tw,mw,cp,Zv,_v,$v,jw,Tf,Ra,Sv,Dw,Ew,Jw,Hw,Iw,Kw,Lw,Mw,Nw,Ox,Px,Qx,Rx,Sx,Tx,Gx,Ux,Vx,ux,Yx,Zx,by,ay,Ax,Pw,Rw,jx,Sw,Tw,Xw,bx,ex,zx,xx,ox,mx,$w,Zw,ax,fx,gx,lx,Kg,Uw,Vw,Ww,dx,cy,ey,_x,fy,dy,gy,hy,sy,wy,yy,Ty,Qy,Sy,Vy,_y,tz,Jg,kz,uz,Qf,Wy,Zy,pz,qz,Za,Vf,sz,Vf,vz,lz,Vf,wz,rz,Yy,Tf,Vf,xz,yz,Vf,Dz,Ez,Vf,Gz,Hz,Vf,Iz,Jz,Vf,Kz,Lz,Vf,Mz,Nz,Vf,Oz,Pz,Vf,Qz,Rz,Vf,Sz,Tz,Vf,Uz,Vz,Vf,Yz,Zz,Vf,Yz,_z,lA,iA,oA,uA,wA,CA,nA,kA,qA,AA,BA,FA,mA,jA,pA,yA,zA,EA,GA,Za,Vf,IA,HA,JA,RA,UA,YA,_A,PA,QA,eB,fB,TA,WA,cB,dB,PA,QA,eB,fB,SA,VA,aB,bB,eB,fB,GA,Vf,LA,KA,JA,FB,GB,YB,bC,WB,XB,cC,$B,Bs,ZB,_B,qC,rC,sC,tC,uC,Jg,yC,xC,wC,BC,CC,DC,vC,oC,pC,zC,mD,nD,sD,Vf,tD,Vf,uD,Vf,vD,Vf,wD,Vf,xD,Vf,CD,FD,DD,ED,UD,_D,QD,GD,OD,$D,aE,bE,VD,zD,BD,WD,SD,TD,YD,ZD,gE,iE,jE,qE,sE,tE,kE,lE,nE,oE,pE,uE,eE,fE,Nf,Za,Vf,vE,Vf,vE,Vf,wE,Vf,xE,Za,Vf,yE,Za,Vf,zE,OE,Za,Vf,SE,TE,Nf,Vf,lG,fG,Vf,mG,gG,cH,dH,jH,NI,II,$H,JI,II,bI,MI,II,ag,OI,Vs,FI,nI,Vs,GI,oI,Vf,HI,DI,Tf,Vf,PI,QI,Vf,RI,xI,Vf,SI,TI,Vs,As,UI,$I,aJ,Vf,PJ,CJ,Vs,As,EJ,UJ,VJ,qK,sn,bK,cK,Ra,jK,eK,gK,iK,fK,_J,YJ,ZJ,kK,mK,nK,oK,pK,$J,aK,DK,EK,FK,mw,GK,Za,Vf,HK,IK,cL,dL,jL,cp,kL,lL,mw,cp,cp,yj,mL,eL,Jg,Bj,sn,ws,zs,hL,Qf,cp,Ra,gL,wL,xL,yL,zL,AL,BL,CL,JL,KL,Kg,mL,DL,Jg,IL,bf,rt,vi,LL,ML,cp,Ra,FL,Vs,NL,GL,Vs,OL,HL,Vf,RL,PL,Vf,SL,QL,_L,$L,cp,aM,dM,Jg,mM,nM,oM,pM,bM,cM,qM,iM,fM,Vf,lM,jM,Vy,CM,tz,Jg,Ra,uz,Qf,AM,BM,vB,wB,xB,yB,sM,wM,zB,AB,tM,xM,DB,BB,EB,CB,yM,zM,Vf,Qz,JM,Vf,Sz,KM,Vf,LM,MM,Ra,Vf,NM,OM,Vf,PM,QM,Vf,RM,SM,Vf,TM,UM,Vf,VM,WM,Vf,XM,YM,Vf,ZM,_M,Vf,$M,aN,bN,Vf,cN,dN,Vf,eN,fN,Vf,gN,hN,Vf,iN,jN,Vf,kN,lN,Vf,mN,nN,Vf,oN,pN,Vf,qN,rN,Vf,sN,tN,uN,wN,yN,vN,xN,zN,$N,aO,aM,HN,Ra,IN,Ra,KN,JN,ON,PN,Jg,Jg,Jg,Jg,Jg,Jg,cp,Ra,UN,YN,_N,bO,Ra,Ra,Nf,Ra,Ra,QN,SN,Jg,WN,MN,DN,FN,cO,dO,EN,GN,LN,RN,TN,ZN,XN,eO,NN,Ra,Ra,Vf,fO,CN,gO,Vf,DO,EO,Vf,FO,GO,Vs,As,HO,Vs,As,IO,Vs,As,JO,YP,ZP,Za,Vf,Vf,_P,$P,Za,Tf,Vf,gQ,hQ,Vf,iQ,jQ,Vf,kQ,lQ,Vf,mQ,nQ,Vf,oQ,pQ,Vf,qQ,rQ,Vf,sQ,tQ,Vf,uQ,vQ,Vf,wQ,xQ,Vf,yQ,zQ,Vf,AQ,BQ,Vf,CQ,DQ,Vf,EQ,FQ,Vf,GQ,HQ,Vf,IQ,JQ,Vs,As,KQ,LQ,MQ,LQ,NQ,Vs,As,OQ,Vs,As,PQ,Vs,As,QQ,Vs,As,RQ,Vs,As,SQ,Vs,As,TQ,Vs,As,UQ,Vs,As,VQ,Vs,As,WQ,Vs,As,XQ,Vs,As,YQ,Vs,As,ZQ,Vs,As,_Q,Vs,As,$Q,Vs,As,aR,Vs,As,bR,Vs,As,cR,Vs,As,dR,Vs,As,eR,Vs,As,fR,Vs,As,gR,Vs,As,hR,Vs,As,iR,Vs,As,jR,Vs,As,kR,Vs,As,lR,Vs,As,mR,Vs,As,nR,LQ,oR,Vs,As,pR,Vs,As,qR,Vs,As,rR,Vs,As,sR,Vs,As,tR,Vs,As,uR,Vs,As,vR,Vs,As,wR,xR,yR,Vs,As,zR,Vs,As,AR,Vs,As,nR,Vs,As,BR,Vs,As,CR,Vs,As,DR,JR,KR,Za,Vf,hS,tz,Nf,Jg,Nf,Qf,Nf,Nf,Ra,Nf,Nf,Qf,Jg,Jg,Nf,Nf,Qf,gS,cp,cp,cp,cp,cp,cp,cp,cp,cp,Ra,Jg,Jg,iS,Nf,cp,oS,pS,ag,Ra,Vf,Bj,LS,rT,MS,NS,IS,HS,OS,PS,QS,RS,rm,SS,TS,US,VS,WS,XS,AS,YS,ZS,_S,$S,aT,KS,wS,yS,bT,DS,cT,ES,FS,GS,dT,BS,Za,xS,zS,eT,CS,fT,Za,Tf,sT,tT,uT,wT,xT,yT,zT,AT,BT,CT,DT,ET,FT,GT,Za,Vf,Bj,LS,qT,MS,NS,OT,NT,OS,PS,QS,RS,rm,SS,TS,US,VS,WS,XS,AS,YS,ZS,_S,$S,aT,QT,wS,yS,bT,cT,JT,KT,LT,MT,bT,HT,Za,xS,zS,RT,IT,fT,Tf,WT,sn,_T,aU,bU,cU,YT,ZT,Vh,hU,iU,qU,lU,mU,nU,oU,pU,ST,UT,dU,eU,TT,VT,sU,Tf,xU,yU,zU,vp,AU,BU,CU,DU,EU,FU,Za,Vf,HU,Za,Vf,IU,Za,Tf,Za,Vf,SU,TU,lV,mV,rV,tV,sV,vV,uV,wV,xV,yV,KV,LV,MV,NV,OV,PV,RV,SV,TV,UV,VV,WV,XV,YV,ZV,_V,$V,aW,bW,cW,dW,eW,fW,Za,Vf,gW,hW,iW,Vf,kW,lW,mW,Vf,nW,oW,iW,pW,qW,rW,sW,tW,Za,Vf,uW,vW,wW,xW,tW,Vf,zW,AW,BW,CW,DW,u0,EW,FW,GW,HW,IW,JW,KW,LW,v0,MW,NW,w0,OW,x0,PW,QW,RW,xW,SW,Vf,UW,TW,VW,xW,SW,Vf,XW,_W,YW,WW,$W,bX,cX,M$,dX,yX,Za,Vf,Q$,zX,AX,BX,CX,VX,DX,D0,cY,sX,YX,JX,ZX,_X,KX,F0,dY,tX,uX,vX,OX,PX,QX,RX,SX,H0,eY,fY,gY,hY,xW,tW,Vf,jY,kY,lY,mY,tW,Vf,xY,EY,Za,vY,FY,AY,CY,DY,Xg,zs,yY,fT,wY,zY,Za,Vf,LY,NY,Vf,zX,OY,Vf,QY,PY,RY,SY,HY,GY,TY,UY,VY,XY,WY,YY,ZY,_Y,$Y,aZ,sW,SW,Vf,bZ,cZ,dZ,mY,SW,Vf,nZ,Za,Vf,zX,qZ,Vf,Za,Vf,rZ,DZ,Vf,zX,Vf,GZ,QZ,OZ,SZ,zX,TZ,SZ,Vf,UZ,xY,j_,_Z,a_,k_,l_,m_,n_,o_,ZZ,Bj,g_,h_,i_,c_,d_,e_,Jg,$Z,b_,f_,v_,w_,x_,A_,B_,xY,b$,R_,T_,c$,a$,Y_,Bs,wp,_T,d$,e$,f$,g$,Bj,g_,h$,i$,j$,k$,X_,Jg,V_,S_,U_,W_,pu,P$,pu,N$,pu,Za,Vf,E$,U$,Vf,V$,H$,W$,X$,Y$,Ra,Z$,_$,V$,I$,$$,X$,Y$,a0,b0,c0,J$,d0,e0,f0,g0,h0,i0,L$,j0,k0,l0,m0,n0,o0,Vf,p0,Vf,q0,Za,Vf,r0,Za,Vf,s0,Za,Vf,t0,Za,Vf,pu,pu,pu,y0,Za,Vf,zX,C0,Vf,E0,Za,Vf,G0,Za,Vf,R$,I0,S$,I0,T$,J0,xY,L0,Tf,W0,rm,ws,Q0,R0,zs,Xg,X0,_T,Y0,Z0,Bj,g_,N0,Jg,O0,M0,Tf,P0,T0,U0,V0,S0,Kg,_0,$0,d1,e1,f1,b1,c1,a1,cp,g1,h1,i1,Za,Vf,j1,Vf,s1,t1,u1,xW,tW,Vf,A1,Vf,zX,Vf,M1,N1,iW,P1,Q1,R1,xW,SW,Vf,T1,Vf,zX,h2,g2,i2,zX,R2,P2,Q2,cp,T2,U2,S2,W2,X2,Y2,Z2,_2,$2,a3,b3,Za,vY,o3,v3,J3,Tf,Ra,R3,S3,Kg,U3,V3,T3,X3,Y3,cp,Z3,_3,Za,Vf,$3,l4,Q2,$n,m4,n4,o4,r4,Tf,M4,N4,O4,V4,U4,Q5,R5,S5,T5,U5,V5,W5,X5,Y5,Z5,_5,$5,a6,b6,c6,d6,e6,f6,g6,h6,i6,j6,k6,l6,m6,n6,RS,rm,o6,_4,Z4,$4,a5,b5,e5,f5,g5,h5,j5,i5,n5,m5,l5,k5,d5,c5,p5,o5,s5,r5,v5,w5,t5,u5,Ra,p6,kL,q6,r6,x5,s6,Za,t6,y5,A5,u6,z5,kL,v6,w6,x6,y6,z6,u6,$T,A6,B6,C5,I5,K5,Tf,y5,$T,A6,Tf,D6,E6,F6,G6,H6,Ra,M6,Xg,K6,L6,N6,O6,P6,Za,Vf,Q6,S6,T6,U6,V6,W6,X6,Y6,m7,Qf,n7,Q5,o7,u7,p7,q7,V5,W5,X5,Y5,Z5,_5,$5,a6,b6,c6,d6,e6,f6,g6,h6,i6,j6,k6,l6,m6,n6,RS,rm,o6,Z6,_6,$6,a7,b7,c7,d7,e7,f7,g7,h7,j7,k7,i7,Ra,p6,kL,q6,r6,y5,s6,Za,t6,y5,l7,r7,$T,kL,v6,w6,x6,y6,z6,r7,$T,s7,t7,Tf,s7,Tf,x7,y7,A7,Q5,B7,C7,D7,E7,V5,W5,X5,Y5,Z5,_5,$5,a6,b6,c6,d6,e6,f6,g6,h6,i6,j6,k6,l6,m6,n6,RS,rm,o6,_6,$6,a7,b7,Ra,p6,kL,q6,r6,y5,s6,Za,t6,y5,w7,F7,$T,kL,v6,w6,x6,y6,z6,F7,$T,G7,H7,Tf,G7,Tf,S7,T7,U7,Q5,V7,b8,W7,X7,V5,W5,X5,Y5,Z5,_5,$5,a6,b6,c6,d6,e6,f6,g6,h6,i6,j6,k6,l6,m6,n6,RS,rm,o6,Y7,Z7,Q7,P7,N7,O7,M7,K7,L7,I7,J7,Ra,p6,kL,q6,r6,y5,s6,Za,t6,y5,R7,_7,$T,kL,v6,w6,x6,y6,z6,_7,$T,$7,a8,Tf,$7,Tf,o8,p8,q8,Q5,r8,x8,s8,t8,V5,W5,X5,Y5,Z5,_5,$5,a6,b6,c6,d6,e6,f6,g6,h6,i6,j6,k6,l6,m6,n6,RS,rm,o6,$4,c8,e8,d8,f8,$6,a7,b7,c7,d7,l8,m8,k8,i8,j8,g8,h8,Ra,p6,kL,q6,r6,y5,s6,Za,t6,y5,n8,u8,$T,kL,v6,w6,x6,y6,z6,u8,$T,v8,w8,Tf,v8,Tf,L8,M8,N8,Q5,O8,U8,P8,Q8,V5,W5,X5,Y5,Z5,_5,$5,a6,b6,c6,d6,e6,f6,g6,h6,i6,j6,k6,l6,m6,n6,RS,rm,o6,P7,Q7,a5,b5,J8,K8,I8,K7,L7,Ra,p6,kL,q6,r6,y5,s6,Za,t6,y5,R7,R8,$T,kL,v6,w6,x6,y6,z6,R8,$T,S8,T8,Tf,S8,Tf,e9,sn,_t,$t,Qc,g9,h9,W8,$8,_8,i9,j9,k9,l9,Tf,Z8,m9,b9,n9,Tf,w9,cp,L9,R9,caa,daa,faa,Za,Vf,Ra,Ra,maa,Vf,maa,Vf,oaa,Faa,Caa,raa,Vf,Eaa,Baa,saa,Vf,Daa,yaa,uaa,Vf,vaa]);function Ca(){return s.byteLength/65536|0}function Ha(Ia){Ia=Ia|0;var Da=Ca()|0;var Ea=Da+Ia|0;if(Da zjw846B=3@p@!o$S-E?^Sb78?(2I9uQy}p*gsWgnJ5MB6}ZI4U^nKIwHf+E$^_B>~jY2U|z2~iCZ&WQRB zVU)8e!k3+$iAx#p>}_<}ji!a9p;M7u&m*IYt5BF8JzZ(xZbwp-Kiy5pIc1Lfk+;sf zrLJAO|M0`Ny}N$h`?F8`eAWBgkn3)Jj~-wD^y8NyH{AMfKK&XQAxgCF%Raro{V^mv zTK8?A-e2+;d-rdC{OpIXzU$Nd+pa(M`Si11UBCMFt3DwMl(^{HBui-@T|0hZwDTWG zUv%%&wfnc9hb)RVsZ?D){keO{yl9J>c(ePDeR}`UJtQ+aR87mO^!d@2&wu;&1*p=s z=T|+y3RxU&s(ylm$izG?x=~z{M~=E5z3Xb4=W2Rc_gISa(RJ=eAAa+vVzn>^91 zS(D~ZwrJVvskkPs+dTcuv(L4ap9ich4__o1IZvV zm<%C_WGER%hLa>Rf{Y}iNHQ5s#*iKg`L;J0Hfxqb#**&i0Ai#`Dj82EkcoJO@HFz| zBr=&y(NgK8`-2$-_*2O=(mkFNOxKA1CNu64%_L9G0?}-ZXb$QA5QyfIc_fqcm`@gv z?pb6Z>9I%!K%gq9`IFhCFo)#6wyyBftH|9sjrGWCdACK5HW9koZ+( zHCaOdT}#%H^>{Ym*@$Nop3QiAY$01AZ5xT#Y`C3tk884n>?FI$ZnB3X5&gTTFY@TL451Or1cRL^C%2=j1&+KR5PGq>)($9`r8Ro zNQ%gFC&?*NOiq&$QcB85Ica?cWM@f*O2V<_zURnutm!BXvhj-6aVWg^_zSi*MGC_NN1AkAajIR)sYi zLwm7hXU z$g#A0U-_$^;{XE*qdQ3|9Z%yY(6$pP3LT$@a1t#blj&bmXgaW_&+G%ty2hXFKbUs}`vuNLi$XP_Q>0RG z;f`=uND%vp{l!7zU~!0;C=L~eiNnQw;j)kb>XydMmR523TK6h;v{jhI7LhsGsLN%iqpjD;@@I{ za9lVc6bdJWB4L-XN7yUu5aQxW=_Mggm?1(rAy?QZ>=b6=JxQD;&PF^(oGZ=~GsXF0 zGu7e?#4K^4xJb+v7mJI8t>RMABW@R!TJ@aq|1AGzaf`T0%n{d!tHtHwGI6E2LR>4Z z6W5Cy#7!c%$u5Yf6060%;y&@ZctgA?-V$$%cf`A5f-XU~Upycl6!XPHVxD+dJR%+y zkBOyXnOH8K5zmSh;yLlWctNZb3&i8%#dz_Ocv-w6UKOv2C&WTASL8K#QY;criN)e+ zu>?Z6uo1d`y8gP6x|+g#n1ghKbwhNCx}myZy5YJc9j6?i8>rLx_0z4O<8(80qjaNn zGj*vtrW>!Dpqr>m)5TBHP1a4(rRy?uQ+3mH({+FAQgn*0geL38=*H@1>*nYd>z3%2 z>O8t-x^220x}Ca9x_sS5-ErLsU7@Z>cT#ssSFAg&E76te%5>$rUAo=6J-S@o0o@th zUfn+3e%(P`p6-zDi0-KFnC`6ZobJ5tg6@j$st%srEGM2`(_Pn1&{yfIbrbca)aP7j z`pNoW=enT_bgnzP|K?nGbrZyXdY^Ok*ALVW(ht@T&<8n}*SBu!;&1DQ=o9rr^~3bT z^-MorpQ=yNkI;|QkJ2aWN9z^+7`@NI#_GrE^Mopxawi;cie7WKbj0`EZ3UgCpRLc( zPu0)S&(-@1GfzK1s4#!)r|Z3iiC3G7PsB|9EQnYDmR!UvF{=jiCHhtR)%rF1wfb!R zVttN&nSOQfC{3?=$9eZIaRUVl=5T7OD^Mt@d+UVlMfslTYdqQ9!Yrmxah=+Ehw7?v8g8MYg4 z>hI|9>Jtq84gCxQ35rzW89z(8SuVJ5IqhXU_vthR($FRz<+OWp3-*CV%SD$A% zWVocitj{;ZO)(q?`gX%vLk^u~IAJI>OfVD~P8xRVPZ^30*I51nW5Zp#t^rHRv6A1%7A^|aKUieaM2J~ZGb6n8cGbe3_QH8hIiEPt{Ns72N;1e z*qB3y;u)t~ZX9MzGOjT4CZ-rujAM=CjLev79B-UpoM=olo;FM}PBu<4rW-SiQ;pM% z)0MP_)|T^)S;mFNMaFF7QlrP1Y#ePIX&i1GVH{;V>DXdCXFPAbV5~G=G+r`ZHeNAa zHC{7T8LN#Km6C={3GO}k73LkEQp4vilYnix7X^p9XmJsmyfLbl7yvRAf47Dm9hT1EzzfJktqNO6a)IJtIgNV11$3_nU+PC9GZ=1u?79- z61*(My9IcUkV9J1`OEVrz*x0uYFW&u9B09dKNWb+SpYcCgA0~BJnCO-K&{0v_O4o6 zYN7q?uC=w+jaoNr^$W`j+Z&b{wh!Tgu!9IU&_iK24ZFiuBHR;}6P81B!*+)8ddd$w zjMR~^O$d*M9YcPJp&+a{>@?EJ;RC{XdQkY-@Nwap;l+l@;ZwrnW`t*iPYeG$d}{c_ z@bTdj!e@rh4xbYqKR0|{cv|?R@D<@J!*jwHnO22E!`0zy!ViY$g&zx_t1k#Y4)9!b z$G3$O;fKOYXo6UbR({%WB-}&i>f;WFmxrGTKO0^VelGlc_=WIm;Z@knyViwB}pZ8tTawyQmQme z8ZM2OMoS~59GW7Hk=BL&EpcCtjvN`yJmDuk=0 zHPTwd>!kGvH%J>1Zjv@5+#+p7xJ}xQaEG)L;Vx-6!aY(h!oAWyX}@$(IwT#C@}zv} zigZ;PDium`MN-@;>7-ODm7$pYf4mmKHs_>^(q-wI6o+1?N~)5|rL(}fAf1+uNynvX z>AF-Posf#9Gg5_gNvf1?NF~xu{Li7cq@&Vp#3>PDBhZOPun1oLscJZ04JSktMVyR4 z#pcjc5ycUh)WJO?Du5k-F5*0*3lWtFFGgHKcsb$%v1&L@4VfCIs^NGwoS=pi)i6yBC#m6NHJqY`>1vpvhEvsWni@`5!@t#V z2EzCf!%Q_X3);?B-{z>{Ts54hhM8(OUkw+iVU`*$j9e6%t-dW*!zF4sOAVK*p+^mu zMXruq6AAO@M;;C3qsd~7C46xcw>VyX=T5-W9(pK}x3u8@aXkBQ zSss~aJs&yLdLgnh@?zvLYei(UviQg|k;AR$B9p9eit*M7)``|h*2&f>)^uxzb*gom zb-ML$>kR8mE41e_nJROEb-wlgU*ssqN>tgFt>t2xLSr1wB zt*iBitw*d!t;ehd*5h2cLLL8C5^Y0l!)!xs!)-~n5w`KR3ATy0 zG}|QGWLvr|!#35X=pJ>)XW2lr(6-2yZOfrcY)fq(#LH~UkzQe2Y0I&#vaRMQYiw(6 z>ul?hz(mou$+p?H#kSQpFlw7^yKRSUr)`&Qw{4Ft*ET3>uWg@gaMXU=kf;N;gSI@- z90JW@TfXgx_x+gdgss4K)K+La8E-pfD|8gwu5%g1jvKa{wp+H_wq*Mq+lZ*~_RBWK zKG2?GA8Q|E9~Cvhe#LgxcFi`_KFmJco@5_kA00K(o@Sq9pKRAOOSfm(r`o64xt0s; zOYO}v?H>Cg`(pbN`xScHkY!J@&bKeLL)I$$8au}Ac-vY;>+S388|)kH%k9hTo9vtI zTkPBHTkYHJJM25{yX?E|tJEUwvFFa>9O=GXwm*z1n`we#4G} zAVmLUUtk~M=&m)2FFIn63}KlvK)&Xi!s|f zg{KG)G|G3BIdW*ZCaMHa zsY8icU>_T`f~H5M>WT~#q9#V2#?(0@YNd5*)U+sW02Wn3Q{$t?0cm{Hq^QYJQ=-zM zO6l~dzoTYH&54>DH8W~f)QqUP`gu{AQS&+X1(3BYYI)R(D6O{FBF&AyGip~O%|`@06X2D%2hhPVd1hP#HjhPo16{agvI5w0XxvTKw} zaizFMyT-WUHn#*yn>zJ#+1)Yz(3SC96lde;)V%KR`iR+rn zL#te~T-B~SuIsKFO4}zMHh9%mzI(#{>P6RO*A>^LdkT&7DRk9!69NMj;^|wi+fd~e zo__BB?t$)Eu0ig>?ji0(w<15$=uMwR%3S5HGp@7uVVmF{>JDbh)5F}u-7DxYJmcKV zoeH+&-5Kr)?ujbfZa%hY?n&+xx8fe{9^+1Sk93c6C%H$s{l@g`KGr?Ch7g{f;!cNv zDR}0)7r3(^WTD&RUgXYJg?#N3a@#r8J>5Oc{kK~yLxt;{Yp#2qdyadSd$xOqd**!v zX1W*G5XjR@+)E*B37$>v&F(D_xYfPez0JK{73g;#1!dySv%$U5yh5(-4 z>D~qAJMkQG7aRC$a2z@2E^z0%54sPykGoH}3*AM?-S0l>KIA@yw+i=M{Y`hj=#kN* zn&Y$t9upUr8l6M=Ga-6z^sMMfc$*VFGkP-O+0oOZ(-CJxhpsM5BBP_%DbGGB6Q(3Q zncLJRTO~m*E7r@Ec$S^k%OUd2LQ!_ea}b7j!zp(|t=uYxOAVd!od?yd zC@Dl1B^DhUB1gBNA#x>HrBsHgBsd zq8uaFRY*(wtFb|XQzBI6^}yVyGJifbAt6C(DTK%yL0IONMY$3$W6p?j{g@CrL?S*d z8YtabI?N5dKu|0FTGo{w3`TlL$pTWN0HnPw>zW@9NZ+iHZrCa~zf+C$Z>{Q*#>)6s z(X}5{4fKc_HjyVsswIijN}}X~tZ9Il8z5_{xSxuSZ>ADFp@xskS(*VJyJy|z+`9A1 z_42TJMApfLcq=(8%1;Ittc4Hj`dlLG<%BbO`5drX24l7IVO^dKyUFRm>U9-pPu{(YkJPKfvpkoBW)IPT|GP z1#4c~&4Glq+SCo^)T&KgvQc@jP3_mVYfWRD7HtiYZ)io@5^~QyZ~5G_5X`q{b5kW% zXr|f`C}s`B1Od*psoNqD5M+1GEZ_Ctcs=)Y-3ULax2!vr-cLt;waX_m3p(WB*@?$j zJ$toss5`0KD93K7ZqaOH?CfftLH5A2kPnt$6bB_)2t4E6PzVIuatE z)Jk+XphN|l6M$;e1r$@RJg1LWyN}~OCA?)i;YZwOM>|V6ua}pc7v;hlXhnXsRU9oH zXuLU|tbumQk2cFD8|1Y>%K^7yj`l%7uXWmwHZE0}&kFYkte=W56}??*dfla2CPpdA9*g&Js; zezYAKyq_ur9(S;dKD;<@ZCvsrR;tyOP^oqLmwkxbmsUSl$8seQQ1)Eim#+o@xN{xw zIT!aJ&AFz78Fwx}>a3G`ISatGcr<6KQeJQCh`+`iDHp(Fcq;I4MBdfi)Ua-7(e)7d zQUkTSul5lT`4-SQ>g^EuR*0mNXPwf^sTaWlk4A<;HgM40kwsJ@GUN)rFAN;rBzjSLU0kzx0(5#_HJobmsH=QDqFENsB5f{REn`fKiANG$*~HI=<+7b(C62us(88lt%^? z@*ghC`3}0M72-Iiprbi0SBujoD_Ji(-%&JiV*C)r^L(Jw3uqFid1L#8SV zUUnEWydsrdFW0e5^D*WFKotPf0|E8g*RlK^2zaf1ofb0!0DMGPJHV^IYuUUbBZSCtcpX~#9oBbTZeU&qsyNFNz7GKr++_^qHu4eQrb>rvx0A9jO zKj94!Qh6r``KoDt4ZH<@yjgrgcmQa8`IJ=yZJ{4+(llj5^-7%& zvujW;_EV-=Fgqx`rk96Qi}I2hXiNQQb1+UBs50CS2@oL>x%X|QDL6`dp zXIem)T&gPHPBWnBVLV)`j3#E4N>BciBPI5pTN|Z6op(yQ=(F zu6zy{5IOg{HY)BS^3H%xW4CG=jpM99@CCh{q6y#BReszLy{sY;-ga=W9m%^8hDxfYcXxu51jrJPYN zoQ}wew=_l-L_Ql(3+I$KUXN;Yo*N}#jc`FN7$+Ro0P<2m%jH!nqh5D^aVfZJh9zjj z#Ki!^_^O5vKI(fSSlzj!>B2c(;Q~2-UR{@is!QE{fIBNvCs+4tfwgs2!#f6T%J5X< z;e5GyZfGUHu0_>E&Ur|+WL1DtH`PLMYOS^sZ)>%6OBvb86@Q1ww|Q-Gjx}rRF3-pZ zdNH0Wczj|9P*r+=E$T<*1zH6rP}rRl5P9GoO~XM{9!ODvX}ki{0pw;FLgm2}yJP9s zln39C9vMo52H><9wG4@zSvs7E%3Hm3!>K$>`Rt8X$p~fs8;-_F9Ag$Rh+ORzH;T$5 zxwxAB$N4v$T}D$F{}vFr@sp`K9P{MByD$wNZO~MLm8qz!Dl>+Q;>c8<4pd%F}4)~a|0G-!&sSn*-XJtzG+m1%%HK1qw)N`Zw>;S}fVcWAx$G6>e zX9pX8BL)C&_*p)~4}Lq=GAGbzivgG$2sjDAyg-2TPOK#}5b*3f^)2%Q0p9>)K_Flv zFtP#x+ux~YSr`bY0$@=fpuxNKEZKp8&HyY91pEcSl0d-Rck5f01_F-M1eo5d|ANPd z;Wg?qwIQTnpL1?qRBi4+t!kJ1&^GevGnU}TkfC|{N~QOEcH;`436tK7#Vwlv-(3N~ zsz5;5d-dC_4gdtW${JNVmvK(r+)W;2kVl^q<+TCmO1t;#Th;{vega^9AYl6Y^;>Q5 z0lWp<=x04Q65BS(gAMZb63k0#plw#}zVC?NQUkixPrNPy#JOJLZ8gxg`_YDR8I@kN z9W~H)`q6f&stnOo+2u!z*V@l+KVAjL%ktvw@!_QmK#v1pAs($R_6Ga+5N*Mc%jzwn<;=z$D@&)4c2*QBUR-yYO%4{S`5TA#2WHBrQXL5 zX9dsPh>V?hj`=xVP&$3=c;!6LEQFW}{veZ!(M1?h6IICxX5mok7Lb#M z`}Df1%>UTY_=+zR8@R~gMyaCmwSXboKTAFTu`B*MH_d?pZHTVchG?&e)qYid_s*@j z$jeu-Py;&msehsMZ65gdUO4Ugf6~U^Pw+o>UpR3tw)g%`a29YDqre;e_P7~bPs_DQ z&JAv#bRZu9VsWS+`?eC^)lP0H4ZA*3=WZ}%e{BQw4yWX!^-o=6EeS$Ek2kGr>@)p* zfPvVONWhvY0mEfAT#DD^AVG}=YS92eo}#hrFL+tfZuKpLeH^%q#{n1;25wYjTYo<-tC-Z<7e|HN7*1d4Pxb-4gj4*42QW`Ut<@y-;-&lX)~Ope z{|zt0k5^I~GpBU0Ua{}`df;h(yu1hQgXcq=?nhhwZ)krja(727pAaAM3_tPg zePd6+EBSb#f z^X@OR2HO04XzO_O6auemv`${&!#jp5FT+!T3|{@bXUNvt#Ud?QD9Gd1glS`7mal;< z=uzLY*vEtGcpQKwfq+_H#9EdH0@{30-{J`b^aMr_k5phR3&hw`ljPbLvCaHayq>jO zEg~<+0zTKy8l`#6ia&M>0KP(w~4k>P#3`om`s;}Uo{?IIreG=$c@+HJ%YSXEBS6-5Ke);mC;&3_9K(4 z%%PaF09uZM9K;C8q5n-Wj-BN6@3I|I6+5nNvgK)t!3GTirsw&p4LF@OHaM)D z?^*l#0!`CnT67e?YgR3Pge#l{B0a45aPP!0*l`QI`&DN+58iG+_&SzUD1UxkyIrLw=YkfU7vzM|$cnN&_twA#4_^%e6skJYUX zR%oGDp(?*Z-^7yZ%AeoVZg*SL za-O4b==RUej%1}@Z^u)keY*_R=w=eIV_XIz&F)Gt|I6B>d<^H$YdN=fJxhv@ngebF zFg6g-_`7s60L;r7$m6NQ&6$gGG$O+Op0Z;I$ z<`hxw3B9y2n74|&<5Hv_T=l1NL|>Pg5ro);PjES2haa5r(^Wig4>m0b?=dePUx29Z zT$$zfdX9e~_3aCDQuUpa&b<$*n;-rLi&bx-arJKhyLwLtsHeVj8RMe-9oxUCx7N3Q zetGnuVbXfF62!&8BW7nJwG^F=kv)S`I+c>Q@U z_h(LlODYICZk8x7@V0X0YM)rkLZ1e_ZPx#(o@aU zebipfSEyCNSuIOfPfEdzciAgz;N|%7CT8%9mz5kZT_>;d;c?SU`Z?CJIuNh}fHi@D z>oqYR`lVj;wLT25PV4-#H20W3UR&*~_u+9_fBaI<;wR*Q*}ueEHUwfE0w4%O_iKHN zzx4eDKfynM&M2-)pNOR?S$?PYIC_W1E;+!wEKv zB~{9;5F$&Msq?rtj~j(R zi;zY%L`gqYSNS6;oO4b3QVkzu-#rm!G{uB)Y$td$8Sw;4(RD;)N?Ej$ajH)C>`}9g zBwy*0`UR<0R;Jb=vy>yL-NdcB7{c}*p{`%~(`u`n4g-8;9&l#*~MUvu#T2ddR`nd6}E=B3qztgY+H1txTWKxn@k`6udfPgc$BL^e372>DhuB)ihX1Rmx{m z8{ktviBn%eG51Y&)mz5XH~@Rz!4uuA1tUIX@uPH9Lu?Dm-dl$K~Ji)S6Xl zDrQXceO5`eSYX||3?fc;r%9$NsA$)7+Rj*CiBl*@)<;Pvu0sUt8{Fhg` z&9&ejs3wX7t~EiawE-z21!9sQOd_q#{?DF8M1TpDKMU(*Ke=~54O`}>f5H%|L8KLm z<3J0tQt5c$5t66$J@7KzZo>h5I*BRzyjZCFa2_Q#(1*asVZ;z~ZJ%pBcc>q*)*af6 zFfqS2!oTwmApHICD1@O$J_YsHM|7Ok4@W;nBKPR~NMtuIc$v81t1!LSV{uE)?DAFL zu;Uq^XmVnR8M)zRDI&xyt;}A1Vm7D!vgj>h0o+2p8Oqj^&jW5g^$eHuN^wIpjNZkK zf@r4}Pv@C0m*gWernF%YgY3?weMH`Lgpd%kE`*CSpqNsMl7F@(Q530S6B(=IReUIo z) zg)kyQ&=<<2${xzM7vBWIx{Cz}r(9}=aQ~%!TK2P-dt`@S*-NDUf*k*Htq^w%L2ZRd z1C+|EkA{1Je%K?|&RNbst!4v-J|L=LULKUNNOu3)$K^7 z^2qgAGEjNrdVPd_uE#|BNr`mCXhylVD>JTlLgqCU#eL%$GC+Cn#wQ3pH{M4War19g zo{r1YL*DwEBgsLf^R1x>kKU>S**6d#R$RA#HIE8|1B)?&G$M>;eWSCpDU~`SDNB<15fb(}>;-bS5f;F2~(;$4#js&YlSbE0KZn1#Ufji@tLcu8!FMxkcw zW#`Xw`1cZMv0eo&R>6K+9cX9Y9Z9OjwjzH#GcqjvJ`8mKWI$U{3+K}c{evn*l*-3m zBw1WRzmQhcre#v8+_RkElT;D?qoJ5gAO)8~=Ah<0odxnbA!Xe3tw<$1ERy&zY*wR( zjM4X$iL}kgNMCAYzv)P`2aX$g-_!!KiCp+7s!_J|lu$F~7%FY|Y}1hwBy_7W1}6=Pr2Lo^JLKF=+OgqvCCP!hwA8j0xv4FGb|l!)j6 z<-!bIPjvr1;Z}ngF_BKBf^{~LN67$|U?Pg7?yDPns@g({ZLEGMX#n=^L&+0}`i7GE zWFTv7CQZnB_O6*c1>k72s=+EPDmRnPWH4)EA&sEx=N9q|be(D;skOk{fb!~ks*GQ* zMP8NiP*lNeM$N(kM7qc_YLQn+6+2st9Q~(p*`Y9Umn>w5!bwANo81m49myT`nuM=( zE%IEI$OHjOCEM_|u!StjjzTSD?d+s6P`|h1n^$*OCkH;9wTRV?!dJ8gu!<%J8drC(pPsvyN_jglm+iZZv5k zkSnZ19mq@a{8ESX6iKz`WGs1)SQBfZ--;oydp$vQSE-zJY(NGDW&nX7D3yCoHy~yL z(u)nrbA%jWk3U4-Avaj!L-<};HG8=cd4c44hBqR=6LO5{8y?laU!m9ww!pLvS5Rj4K>6N%9GuFR%=eM0-ALLB>)tj9qMnua8x-El+{sATzcm z9bP}mhg`3dFN0MDzmsDyYC%8ez77;vw?POW)NfBE=Gtlmd;Ft;v8k;|vbR~go18 zu@bV=)8_?p4U;<7>m~B3buSvTY~#%fqdWgEtz#!%BK0GVp$|sYN$BP%w@)Iowj+;| z1MH=CbQfCf;QWc1PU$3ia#$G3X z)?UdOOrK@o6Ri+wBr4hrB=DE^Yo5Vg>qH#-N*y4uO()_cWCTligV-#2M%tGD=jCP# z2MKPr;tkTe_JLY0Xa$88NKef81dM}bGarB->nUw#QfKnzLujiy*hw9Tv_`3Rk-XjN z)OM>{@GP6s8Qt3=cA+zRq7lsbCaGu6bMsnm1ZB>!7vDs+tzlpBXbBtnCaD`)Y(*)V@$LkQTUjA55%87CSera!@#cSr_0&GuH*&r1jyLMVS?4< zAOD!G8~F(N-*>|j__SQdObM6k1Gz964KPTCiw8!2SBzaS65T+v_R z1B~Tt&6m)j*avL=l?pum6=_yO74}I_(tuW|>RB1qyikW{%S zC?6Ey5+U`}z8}4e=ZBx+Rp2q=7qweo_zN8PA|t<&L9BK^ArfrI|4ROY@$}ZOWU#ki z7dQuz&!8}GVqra?PO+~R!{=^qID_QlQ)y>xYf#Qz*i;M%X zAz$HMVbkJCtc?D=7S1~`;o)67UZ*thzxMaPq7|yMspyyLg}_E;5$iW?dOpIVPk@(V zd~DI5^dT1PmK!m*;uEHUtYeZemc2HRe1l4UV}#&D?M93hcwe6|LWp%Gs_tsS@`^xm zjDb%nd0#t(tsEiz0-Cfz#OXB!x?{{%T899aH$@E0Z08`dw8>oyueE#A(GX09wK<|n zK{y4kQ}i9>Z2n;KDyM*Y|06|%A@KVFBD?q%v5u=pbnLrCVq(3=39rz*7Cw`9P^pNm zou+m)SB8+4G@%w-m`EI4ZQSzVqeu*tAor9wkx0gc@(xVvZSS#WL&<9*CSc9kg+x+^ ziNi>0Q2#h{7>RL|TG105d&cVIcq}qXt>~^pq!FxO7>s|7y*V78Gab#sl3?;8&mT!d zq%d~Bkr);ivjZc^Lk|XYxN0wM>lurFK{{=X4aFKqZ0qG$ZxlSe+Vee+^kc%|%FEd1 zWPI$k$n)lC@*X9t*<1zlp&jh3LS97bu@v$FL=8_NjUvmeF-G2Nhe9>H6KM(C#DAWX z$4XK#7p?NN8cQw^T5?}s|H$v_o{t&nMbNmmrK;U|StPaP7+U2v`U8! z(%7Hr_&jbABN-$Lrf_ADB$wujzIM!iYvLPnR%ei2^nzxB8fc3H(7H_}y*|C)pbn3g zul%iz^O!qG_rbAn985bfYzpQ`o(P^8Xw!VPr8b#He!q`LADTw$)xJf|K2Ais8<9OL(|Nb#*)pBhh5=uf5^HEhTj8Bb*Vq^M8Bhl;k55!FYvB8R zF>p>0n^aJ7(JhVaxqvtTw?oYVt##z-I+w zVV!3YYxE^3&G%>Mm{oo#Sz^gD3idO}P%ycU!0 zORViYbf1^lW0~mIF0ofLF*UlxzRV=;>=&(aLc$-oz1RPb7y+OE5aG&$*oI8ftghF4 z-{Wn-*C5{FyB%_F2xn@aPukY;BDD`hdQnBseE{|8@E8!xXuEMSxY?10+Pm8v5zezHs30Csi>}E+1iEV z>sYN1)z+5kvc|i5I2pMUQ=1K4g28Abo3(_r2*;^I%;R#h)Dzo+ zO{Hqjxh15&i4?GiHRMTh-1G7pOm8vY%2-=t`dzSA9V}a|!-RK*Cu}|0<6Wx1!XDa0 zhCBYT$c}!=e2KE-ID}w@o3J5sjy2v)I$)6bWi$Db9A|}_)gh;PGoR{uoLeyb`<9^v zTd}LupOtO}VkLWH8)=Vd{5A~7FOV+@pPA4;f5HXjnDWOT4GvxLjCiBMyp>001lgo@NWwjvFzX@myoqlBV2)OguzDuqWFsv^{}g6w1(@hy z>)D7McsVV?{3w=E^+IS{yaTK)5O&Og?`ZG7Wr1hOA$(4r%`HH&i`d@7>f$)^2pKPs zBsQ-=oxSZSP@$INqzw%!Xe-+7o*B9pV#+s`?I?ur6|w7uWGbSxBJvO_Y-16YqT|?? zCwZP{+)45@ciR1@NK0gzi!m2{x`aFi&^IO6_$gxbN{N;2K21WA{ah)D1?bjkD3QXR zDZ%z@ARhMzFUo&PN!R=AbnYv~&T$+@RoEwI$h&n5bn4QoF^w_X z(ev=yZ6I$1gL0wQ5$Qz^oQ$$%}5#J5@UMWUfhIe#%+Q)(Y5$vzYc2 zu=8ih1NSLv?FzC5JDbH7WEtk_lg<$;da|x!Iq7M2nfyxGy6dEiN4Q2-3vBOgyxMM% zRRTLn=v$tKclhgN9qrp0rThd$;2bY&!< zk(+cehDP`c13bhWn@F43!i!{>XQzXHEktgHzc!*-1|BXpAa}FpRX3d^Ms86vaxmyL zqHECjOFqPE%evcISvpQ(` z(Yn5Db_e=g5NqVW(fJ;|_dSUInYZudd*6fdd%t%t-}@ev|ItVH^1bgt`LA@-^0|Jm zcKfG(Ek3_T?|l!VKmO&teD8ZuzVx*(e?`rr-|p?p`ki^-gGkT(crV}k9+ZEhA$78~ z9cUw8)dd1HOvZkr+u%i?{!TxlWV>he9~7sr)t>x6@h2zfHm|E5PM|cD%w@-h(LcyM z&-=rvK*?dx$0O)9ijB>;l4*ZLhmz^1IQDpIG<}{R`NtUg0;08JXk#?xvt#IY;QNt+ zzl?!6d>kDZN_Mi8blL|3x?(xO&u-{0^v71YYJdj_XYWBq2+ zEuea34s8j6{pL_BF{OrMrx#Pb=IjoBTE&jfrTcJFvTz>#2#murX>*8WFD#%hJNT3d z4Llzgg?M}nR~q|B)hvAh{RAj?7toh#&kZ%lSQ^o<<;uHv?;5`68?Y9+IHV_TPRwK7 zvS>7n@du*T9FcO=_A)Sm`kIQ`wijk5{=Bz>@^<2+4Vi3j7Oibk1z{bZ>A99gpC$D+ zhR5K`M-W6M^)-j|l+IuU2q57{g&W!1i)bm-d?uSdK<2Oyv#G200qjJhAhmH7+NZ4n z>v4W5<$xzSn|_8GWmgu{M-as>p?u%+qb2k~Qo;r-q0=Ac_CU{G9RqtHz7?a|!;RkE zBsbu?&IwcZBSM)xD544bV<~mRq1aMdAN*D>rLR7~70@@LzXm9Pj|id^ss^zhx-Qf< zzE(XEJ0uA@K2xQ5Y|?mEwT{jsD?QWK(}UdWe&0wP{D^GyRyvsL?A%VT^4i;hzhHtS z{=UiA#KU^;Mzwp`%-!@uvWy9P=zp-Y)B}GP1zNSvr7we`e=aQ}*uCqu4}Y2^A;J^6 zpT0^+KlbqfIubL{iUTyB4Dft?kUmWvlOoKq7VJ8P)HCv3Iez9FDy4W?z0K82ItiaECRl(`gz@Cb1t*qs?Dt6Hnuh*i^IMN>JCMSb7O> zo(z9p1kKXZu9W^FV&7=>Sr~H7&?G`B?#{#S|yG4Zd|63a`dj z*w7-dgv0m@rfMoCDD_xiN<}KQwV-YJZWh-9?=J?tw-0#l5b*wn7uzi-OyE;F+<(Q^ z9Bsr(8w%e%!^JkD@8LRCuqs|ykV0PAJ+;{A2L)?f01K?>1B&Ct=N+53jBL+?LQD9c z;UO6AG@JL3&>Yq%dPw-sd*GrWmD%`CnfA`hSQ`!xH89W8tR%`!0#h-evd~GyIiqS4 zIpk#>{?u9Pkf(ec*u+KxKhbXRu<%7)&btXl40MxvUtK}4zt-kFEc8QdHEApi&_S`R zrouyr@|y||0(!S8=AO{{+T(DQQr7edq5U(QAy<`O%i!;PYryx8b-n*x^1kx|HSoQ& z#ZL$yf|Jxtur=UTISWbDf@gqL-3T!%*WxgT| zg=t&9Dzv3A`>!2@XAyZi2ywV{WYL+u-Hwd!{v5(@ZiqZ-xrplyd7ir+ga@fjs|7vZ z7SA)ss=M%c?5R%Zq>r%gI-ysuVh1}3A0T?{4Pg*~OW#m|(VbP`&z*%#sS0x$mGY1o zFVZ1Tvp0pN1gosix(JVu3eV^+!c&B9)v=gp@(z1>h}4d)I8iIy^UK>pFQMKn9Y2** z=K`Y87A+0NKpVtSSBzc`?}=HO@V?MNAZ6^0kA$B|zGurvLNh*5x%sh>OtyNGK0)_D zM+vO!Cqfk4(N(C80k^EH@C2ghZs_kudAf8H8uL}(U;jaJ7F()C=e6j;&s3aGJ`>zV z(%`KcYW-7;ua8~VUa?UP&>u)6Jk!6!sYSr)_b(mdE&$u#4bGIqzp74jU%)7j$vu?6Y5l zF2MKvqT**H2yQ)X%cZjGzrcnY*yFzn3&|DFsb2-$yeVeK`U;sy4*Nq`O~@_w%3ne+ z_4qv6cgrUS-D^Su#U-B{$`9Z;tD?Vzoe(lV9%fOM%0en3K}|tq-}|1nH|;05aJA$g zw9(;dl{h#b zg3IV3(gneLV_3V0z>)?D?bwflF@-8(7YC`w-^Rg0FM8>|hkyJ7a=tUdIfF4L+rvr* z3-3dtwnH%7X!TF?bX@ZhEZ9O#|Yox1Uz|+aG303Jr%XqlNG^L|9`jw!geac z1L2tgl_#1#?2RO03>%gLzW>+iu>LsVVVe2B*I^^A`hu%Pt-gC8){F^%;8toD6JA0W zevJteYhxs&{?XDXpN*4O;nQ9Hc+1Z7WTpzZN#Ea-I9ZrU$RN*S>B2xl5Ygd>zJ z#mTqu5g47DF8p9xihkOJqcIQr@^2xFEN8A6!s{xOPm(?CyBR|FfaLKRLXY5N3pQY; z@K`V`j#aM=ufy6rhifQdvxIiuTnc_4&l27XKn8m^%bz7Q4}jTc3(p56yUi9B1t*)c zPIJ@}%$psfEmi^MoCM{+X%HiWg-H{9Z<7 zCi<@BtjT=gMXc|>pD(;jO;<1%=QE6Lo^@HmL1NslZkf(&$cirD!b@d@PV}r@BwQuf z3tPHa=oiK=Y!W{5C>w;2D4V$zudi*!YuFV-j85GtMwmod-CaUQ58Wn&i;-6ieD03@ zVT8-DS1es+WV7&!=j&ZUdm4F7g(u^V0(M%lQpA-4H8(t$=T@n?{H9|g{M}aMR%yA5 z_6bx^$~;T*1zBLlCj_g}HId39JYW|}Jh$%%e^Oc= z!8%_gby?<03i&&-};5M+FSw1x{(*kzC=$N;Je61B zJNwCkJaL}dMX^0C#UDT4gG*glP^c9A_f}L|r*5!eYXq~B5Gg2Mof56%Cx19i=a=sJ z)`XE2m zVKV{06ByT8e25(LK%dqGhvJ{L5&0&^#5S+Ny`n=dQ2F4KmCO4`k?aqFdt9DI?)Bqjy{yfbkW{dI}eEUPy57$ux7#(42 zUlE(aG?lN2Wy0hLGyA@SIEDTGn%EG%O8RRky&C<^q>f^T@It+MF_wECHo=Qnua06g zTzg1IF@ioiNZ`NIfQG2~5a~Sssf^|Va;~~)Ut^5X@g02CrG~K0oy0h@pVjLu_GRC^ zA%5_GM4!j$)39XKngkX|+;bbDc^+qbJBtZ0@0)L`=AHbe_%%}IE@FF_{;e)z6YSIW z>mq&#V1WjF@GY@1S>x&amiPo3qG#aS;_K8r1iOr(F_AGwX$>oQ7hbiWt^Gi3<7xZ< zarPGQRUJ?NFz4KJt{;mKCqi(C;1swx#kCYGT1xN&1zIFH6bq6JF2&thoZxQ7-Q9~M z`1{>+FZPq?dHydSKAF3ER%T~sXJ=*`NY(yB>S>-j7^N#Tk|y%ye5J9J<@31lHTz}U zC|?s!8EAA9iQDSzYa$hkxMPI~B^;YA$dp&|Jz4KCxkQ zX)$WHwlF`?rG>PFe?ann0BtZS#&*ivQu5kGVBg@Cn8s1Vs8vge+eIX|l-fXu_Ms(6 z*Ki7H1$uXuinWr?q2_?r(gcjo!q$=`zzSvA&q%yaM}L-TKy#Bzf4qc^EA{4TBh`dt zsBarI{~nvy2B=mPuEfm7IB-`3e6r))TpiPn#gCJcA*3_a7OYXquTUZ6f_bRL16lRc z^yU|7be0Q1L2gA94wAv`U1U$VY19RgWq*4OR0cLehyB6wwm_Xrls6v3@PMYon*+Er zUfQAz0y+p>oi$2^uxV5~sUXgYJKIUw(6>kJq;Pb2W&MB%%Ff)Vp)dnY>DL8=dg z&D;^+T}+KTf>te|qaA@pODJb2X@PjzN}i!&PHOZ>31I0vOE4BXP1U+$KRQh_yGqSb zSnMX%azH=>@g9UzB#e>#sZ%#eLymskkRy#<>n62!BUrIN`gMW2^p`FoRDFQd0AT(A z$pdh2fK(bF`#>|)ejs+w(-b(!MCe}!VUeAtO@lznQmOu62{!?>X)vc1bY`&BEO>&A zFIWMjAa6V*One)fU@NbPlrUO~rp`koYhVK3<-9pQrwg=sv=khE$MR**lS~49NAdLE z4D`f2ZyO>t0U}2Xm3l!ngoa8gR72RjVUkS{#?!LlAUfCR{BWtEu$&eA6GR%Y;s|Lw z*N%3K#v-^+c}Gh{0={h`q%RhI0`(p(CzM788c=`xV(A84*w;sg3u2Rn|?PJa;Ui&*g~f~{B~g>c+Duv*IQ@3Un@iO(6xwgw1tk1DN^x&`b~ zAg2Od&WcyQ`Hw`d(s68!6kwfeU|`ee{u-%{0*(q?^D!G3FMSn#zg8*>TdmP+!C8QQ z9A1aHNn;t|*J$om zVBtb$VIGkWT;-*BuL~FK5 zvrv8g6tnvADX0jBC_AfkHF1lfp6P!i>~Z9+tK=fS>Ue&SdY-tw;hs76!&$W6F$kb zfbm1WqhovIIINEg>JsL%Yu~$LP+UtlE3q7^z zN2H8pMk}Ty6Q`-GqHYGvqt#7c0E7>S;R}F41!wLHnCCON2_22=Whq;;Bwsz*#W~nX zvx^G^-HbwQ*>Qo*|E};wq0a0gwCC}6y)OziXBY8$0sf}=qELT!ahDmj4^cGos8ld2 z`SVvUnkiS!zc=w0trYZRx^`5`AS5Rr<9{jA3rc!HlVehBzwx{R$QDtxs89G@+X_)P zQ@o$^rI<}$<4Z9EhkPk!57zrq%mCcsnzea5;!80DCw(bqe~c7gk{LRSBr=Yh2)z2Z zi2zTJO9KVy$aOm*brxRJtrK8QA5g86Qf3=BJ-5L8xbI1+8I+-}oRks;>pCOKrq7`6 zr=<_rX1bk`z6aQLMoI->XR)|uuRABr6@)o7@4Pe~27ARWfY8ik9WF>2MBz0Xc}bdQ z{oYF>M2K|1rYn4{aUEftw2m711(CoVZiTV}0evPvza8QFhO6)gmnZVdEMHe<`COTWS7zaradLhLH~136(QWlDGA6rN$3VgHC3wt1|$jDWBJaU(PH6NtWyj@^}l3oZ9X zPV`2uupujMqxorX=I63FSgrJCo8!&4iZa}j!XPViGCkyaBFigHTO<0j+r~E#V(DZ!-e$!FErisLv5a z5Rv>u$|)|hk$OEQh+TMsMFw3z9;!rr{*kg!3E7&L62@r(R9bemOG=&?o5hQWE%eSeI06BsgEE;t+V6dZgh4=P5Z&Ixj3`U0zGL zmpDy%-%7^-gm=fC zd@0jPly@MM#lmY~(=2i(38vgTZSo)sxVcI$ne%otTyj4BAYTjo*o4KBl1qP0S6yAv6Jq_@xWCEfR%r-$4JC+qUwf8_wTqW@`$;TJo%{Hf_EIh4)L zE9bD_uIXq2IX%Gb0`kO&WgsUI?Sas6enU^@E-~;zQ${eO`f{2QC&$4}!m&7ceb9f( z$@9!8D942i(RewGu%D+_mqGx(`WQVdD8GZ+{k=kRTc`!pDJ&O@_!CDLP>3kI=OUPj zUG``PX2+aMr~Z}}6_(G3q`G0-VfP5d(iH;$17hdfutguprWKK!NWuvAwuC&(0-^J? z(((cexX23Syr)N=B@urD>^Q6D&w7kJ(H0H^gc%gfbp!S}elyhp?* z)>e`q@O3h)3P#~HovtEt8E!yTxgJ!X;;YKV|CjIWs4Bk!nrx{i$6&axR+F3IOysF9 zH^Db%RF|uw8}zWYd=8A-o;vb)2^@3726CDOwWC+rSntO2cM=qtHa3&bx&O3(QrG>{ z{;!JFzL-4e(|Oi>Qi)y$SuQpJeYNZg`4a7Mx6{oO7{{$WA`jNj|Vt7{&4w< zne46bJ|(u2%VO+Kwvw+2n`m8YjN~SI(OT~9KVIX46jbGNJHhQI2L3E(H@qtSoIT|v z6h?Nm^=EmyFpf28BlnkZg1OR8=C_9*+R61IacL@>44OycUJ;-UWiA5@!R{1EAIE-e zFGDeYJYDN)mO0WvhJHM=c9h|m=^hp6B)5Uh$&^l*8i?m#cb2)4N0u&__6^jyi=4sq zS%TAWLKpe2y1@_ZaDS;X_G=5`e)|=)<{BN~U@6PcRaSVFIlIXlaDckqO`eCEM|I~l zpJoq!lY{txTYAcuKDQ>h7nb8a3hE`_{~SlrznhUoewQEkBDsCQXX9DZ{*SLAeoSuo zhy3V2XDY$R-eg2ovNTzLP9AC?v zoWQW9uUyy#M6vh~g+BI`W5IF9_LD0>xYw?qoEf2U{p1{wEN$&47gd1=C~fL!1Yoe_ z1i1#NLA?YyD^8nz6J(cA;6EAmM0wpmc(EB8vADD2-VV5R1{!jcHusnBxo&@sxXo4! zkhgP%&0hz}V>m}A4w3)FppF`X0l&xQ4v}l}S$Q=SXn2nm8z%oQYMfg7`J^2Vv~A~~ z@*>Cm&?p7RGd`~)MCOMkxcD|S>7q?&o&O22;AqZ=kG+i#rVaXYCEgAhyoFmr;BX?ttTv^z|a?O>q z@R6=JPu___A@i}mg)>xS0Vw%e8nOUP$tkvfft+kX70s5&?|D^Cm&wrXeM)gFk7U)U(oTDaz9}Y)mkP0fU*l$$=d+huI7McTLZ2DMRu%}%VC0T>*T?FYZ$d&PQ>ER zut8pj8`D!8$$V{psLFISgrcHp=UfHgl8gLE80Az`)g%d9$1w{7Jpd@>ww0 zxwpuZwA1E+l?(ki4|9@EZ$Z!2(}yiU!wEEbtDHwYWoF?SK$GY3xNM?+g2ZiD%*SZ* zHgxs@UD}3n!%0p-TjtTT3)uL7Ns(6y!aNqbLmtc7qSA-uFa>8KzVDgZGsEfWCAlCi zKP5X+X5%S27xV0r*9d|0tb9`dZ8gb0got1#PLOkt{1(+&_ww!IZ~oyp*wO*zAJD6P z=GQaq$8wzD{ra2zSQ^3vw(6if%J+5NKzy-0VwWA3>x-citkJlcgmE(%12>Kc_zrpr z`Ti-&a14_+frTHJhYI3JJLS70hf&Jkpv@1+eL>ETs!Cmu;lASp>N7hW#-^XZ9xa~o zW!6v0g^+p6B{?&7I3>HiAOF-{hVJ5a^(3u0BmW%m5SFD}E;i*7+3WIj($C9(hCWtI%^g$C1p6sJ)M0)_ z{fybN4D|PT;P%(u_yMGgF33Nk!&#i2c};GBiTWQq^8`Ye0ynVgHqx-$CXNAtLNqr&E1A*}P-T5MJ-Y!6 z-$Z%u$dOe0rr9yHGnQ7|1ZE7UZ8zn)!WNz!&Zo~wBW}srz0>k_o^Xk`CmR2 zK{`H!n+sIf;NPo>pmTSyHC^^LC*tmZYEA^3e^-VU{w4b79tgo@%6A`p$u;V9AA96W zO1cjmyFmx;%iMkrkzuZj;1)&CUGSDyDf)q26`Nhh2WIk&2Pkusc0T|qc}f`{%0*D7 z@k69NrBM&D6c^FyhjMYpA{&?T!T|?ecqEsnpB~As{N6ZI@tmJiJZmz=!x82p+vh+U zEFQjubbS#`eT1EM5$${g;&hD-d@TRMjR_t;k*A6mm9L%Iu?0`%WP>H6mu`yhuC9gq?##6C3<~((MBhL}Wvf#ITr@2qH-+`OCPm|t(XS_zI z-^sbdK0;uDPvFYL-y!S zNNX+OT2dG5)bHSlMDTtL0}sVtt}%r%k~qVjiQ}u}z1b1?P{DT?{`JKf4NNjr0_c0e zS{ln|gkY@z@V8+76Kl1JXl)3v-V6LKW~ieV?Dv9L$&Bph1z6k>ELE~r6ER}tZPuC~ z1j#mQHSo_jZPu*9CZ^b}RRzv#Vj9x3E)MG$7l@n?XvLL466=}XdRK&PMe`7=zc7)y zhgj5)Yv-31k z+gNADdp}0wL?vNTiXcpX-{u! z3t>LX*2j9DU-(Gr@-`o8wnl$J=p*^I<(EBk*w$H%GCe57-H9;AF{O+GKqlsTU~Ph}we16IVT{A92Uf70uW0{6Yaev9 z;v?%(Sy;`2o?8`%u!b_d!$7X3tM9Ctg>}sK-rAU(^tAe5#zuZLV=H_#W0Pjvc-E$Z zjb|M!*x(sq4P6m!%u< z4e;swQ@TyS)SWhL4iWIGzs=u@9=-^%t>%o}f-u`eNti*NC|eF3c{@bePKZJ>^JKJ* zg%jogI-AXwgMG|on<*gE%q(W6Ls@Lw;pdi(&SpC!2rypDVXFo^sWmxlO<~UKpOZJ} zA#>-pVQ2@kxIDIw0$)yc&smW#r(3ivuWh05H*1j3){(bmZ(-Y8w1svSwLL_WRur?< zk)#=cxL2ND!Il-R%3I1d2(6;E9vh)?)ymj0WU zxG|M%7X;x5Yxljahvn+AZ>!s&kdn-jYvK!l+iKbNeyMY9-EZm~THjk|jRv;M zyw2PWZ3$lu+J&aJ*W7XDsb;pKs7h;Y`%Xj)sm9vu?Q9Td45V%CZObu;ojTY?SujNJJKO#Mm)@(3tpf(| zP8ZuMf7=8HH%6F1GY8w?{Fpurwp9k%1@JgvC28`g6KNbCKNKd@$sy?2B>H`*EjL=Y zaHuUalsXw6OX&>DSmqgNn<5Jv*`=|zej@06lL@v1fRvSNKO;DXY*@tOSnMR*+aRo# zsFk)F+&-c6D%%t20X17~%P0U2T4Sp!Bl-9S+d^)Q`^RP*?C4U-zRd=b#yW4a?Y0UF zSfM?(A1qkQqxYlOIJRoPEsRTojvTg~)WP6WdJ1LHoiS~pYC(|iYjqli%7_TcE^L{Ug4* zgSvdQWdfj&X#Wn{bar6Z=zp=uYpHhq?Sw5f|-cg+VnptW9NY9QKpkin)Z_4$tt^(QPjU8o11Dj|Dj4 zwr2u(?FEqvLffdk7qsJGD~;t~GQ%DpXvN$f_P0k1DeQ^AJwgCf0`2bv;E^*3xu#Iw zAhX(f06|;PY3ziB#06*(o(P3_5gWoJmKbEOC-mbzhhPx1fmt!Tj?l<&LKD9U?fWKl zl7}pwaC0VkMJL72gM-jn9+Ey)dy$7^Gla)y(s2_KY87H%gzZlYwU-pOQ}s~$Pu@^A zIumLSMAV~D`v@o;^a``*5O&X>8)g>~nipZu25>CGUQ>9$qBGd<2x3AQIiu|G?!~f1 z*^@)7B&RInel0XC`*;XWu$?;7^~2v(?RpCbyF z*@N2lzc?IS&mL<5T-^Ze1(X`vOLJJhk^K(~c(3hE?a%?cOfP=2kH#5cU^Dw$g!(nN z_khSDwYj}8>de!^KAG2bpq1T^m%Y>)K6Q~C+{S(t$*nKPC#> z*vpP~@LW4s{x0_CR`lmuPrHZO^tAW#{)RILn%m1h79|S*ZU-@+!#4M}!z5xhOX-Wd z0Z48{m~-2N?aY6u9UhPO((@U>o1LukOnZMPOq&iavV)%QVe^;RmkF*xF3vp(827=f z*)q%qn$%~xy|Y93haRs-?_N-!4Vdv`EbB(z{>!Z8Ci_1Yq}JbN-vfR#BE|lj2smMf zy&?n|?BY&)ssJBSG17!+?vy!Qb`ih0_h|e|H-XgN{o2Bat%nUtWH(f>z+S{@x2ddO?4u899Je zkKt9FrY#vAHBh4x>!_6(HG)9#26H|+9j}3hQ3D64frAg!C7Z*)5Em5boJaUS6~bqE z*#YcutfRZ2_%!W!v!m^FJfkDd4gnAsvZT_8%nq)#^ft4jtXRO?$KZeMBj?#g-aIbV zLGw63^Efb@7hdN7y&#&%%MWlub|jXLa?sdZ4u5t%n_~i(IQGct_zA;wCZ{7uKi*?F zp8wZIp-GrPGzyX|-Y5>xC=Nb2_!V4tKz33l zpW_!`*y4PS@2qK|F%GB=J0Go6?U}MZ#v+j0W-$6EV1}*(9*&V zZi*RO#L<;g#filnxD2?=<`;J)b6D~_M`2J_`mMC%I>3(}$6kQwGLBssq1$B~YmsMa zS;u`5u|q33rvJ-ux-guDDmo&Oxqd|x7uHpD^x#tDN{%6*4r?np{^TrF=_-!&0;C{6 zRCQzpNT}+V37w?qYFN~xXhk*0DGcn8>W(T!Fc6Ts4s-tN$a1C8nGkrH3z%zKV01aa z=yLFZ95oz~rT%}G#!&J~2Eg04!($0ebHG=n5fux`H+}}^lv;+T~_zB&$>*sbl{fq z0ZDZoz0*J8gi+%d;iH{agdS0HT}O=5R1byC5=MPTT~NX__Mxt0BHuBofuoCvjn&b} z@fV_(G;-KvM6YS)Siv{W)~y^Dh5R64=I2o18$NFQJ8$vBB$OgowAFZE0&e!)X5vTI z^=AjR%QQB(jRP`~R5m)^(Mkj>`MfZW39n1W-_{I4-0^r@TMVDHI*X*{E17>Snzh4QxUp+mPTmDT8c{ z9)eC`iiVh|T4boB5Z`|~4|U+>lp`#3xC0yQSf-3}bmgam{-YgzfYBdEJO1#37@9W5 z;m?b#8sja}c&y_Air~u3u@O6$CD}0o7w9x*vV*IR+@9=+N6A`K9JNs0>?w{$#W1^2 z?fW-kDe}t=-W%*A9K$&PhI0TMaoN0~eLEOwDOu4@?YZF?QykY=*K_c?l4U|jM2A+&QE zTYJdylazk4GbRWZ*H>`>leuU_=Ekg(S@z=&+*+lvtS20c1?XX&Jn2{@%%y&(Fm>~& z%V|dj;XNgu#(aOErKcTX!bi6Mv}1=I=cJKWu!W_ucUK(G0stSsaP-zOI_+fVU05^J zwK}JVPj{ll0*EMgGlM%J=#U3-$yAiTK7*+?=Xg;-Vj-c zbZlb!0kl|lWntgNI3YAx##(1|LbR}qzRTo1A=Q5{htAWjfnym^9AR~)2 z)|(-U)z9K=Dt^j+Hk)$?eox8n>|sM8&Mnfcih)6tH-~f9zs2OD@SIKpmaWO@tcp85 zJb@4nkRg{d>FZA(H;e!}p351_BT*%YS7+jp%s;oYCg+D+<#oQZK=9K%&Y26sn=x_D zQV1Q5bLNH&=R=&cI#9S;LFWiuL7gk;%mkV0$AZqe2+b|@DHP0Z6mnL!ATC$2FLCXP zIq}-aeP%6*24WcNlyc&p;2zst+F6K)pL?9YTcCX3vAmO?&4-kC<`RYdY)wUHZ2{0$ z*}26ICVY1-XT1<;s^MasYx+T}kUOY?*Cb3NmU@BO&U!ri@H)mav$Y- z<>Zcxs=RU*p=znl5SseRISMn9J=K{J9u}&nI@|ExuS;{{NRmcrubt7njyKNN&>jqU zizz)oWxSv>2M1~TTW3KiTb|_LFgf2L@(2~-;3)n44w1)bDi3X=1Mi&8h2t#eduLw@ zf{?WYQ`LW@d~090S~KOQ01rjf<_%^uYrDFM=we_!S3m9-DXFpR4-So1E_hsDLw#Di zpm@NJwRS;vxRL$V#&wX3sLYRSj{oW-w7s2c3UV}Q?+WJX<-c`s6~k<-?BK%KF}CGb zS7r;);AVGM6`X?e{^r_h0ggQBg+hzih~HfSA`ob1Z`WpAPc-S{8iXpY_u&&t8T-1X zVm?#)x^nsE^O$gwZA);q12NQT)N-KfCsed^psNb6NE_nH4p3|e>RUvqLtKdf z!-k?Si|E2oR}!*z8RqILaxA+2r)wf==r_VOUU*IZBVFTiAIFx4RnN~0pj_A(_#YcT z0N{mX@&ZzeUL<7x_!GRM^dAmdyP z*pRudp>83C)K%zN3eE6>ysLSLZC~xW%>@Pv*153nZlq1jRS_SwtalC1fD2RgGIVC~ ze#%0)cR}#bY1d_d#bDj|$EQ5nK#4*ySokolm>MnDep={%Z!A8K~}c zR{{JUcHK3R9$#`rLJW(75db+ayJEqh)Vl1#b<9AP^D0&>qNA?^IldGQMN}sAPr?zsxva5Z)Asq3~MxQ-Ny+u;_+yD0B8cMv5R?nox+?mq-E$s5HGHJeK~FO7Cj z24~cBjC%%k4RHGlNnb}<%@^dRu)Tq9!v%TVxhQuVF2{{_SE&Q0#_4i@GyWN0tLN_fcc?!7M1i|Rw%d#zA&Nk7Vc1)Jcj zQSRFanJrn)Te1R?UqUlj%dzgO22icsYEFrZD+Z1-FzK3RO3`!QOPeYuv`R(m&3aLg(&5R;Kz>>Xttr+;Jvmb)7`F|QXkxSMeTQev}v6Tikex67S_ zW!&ywYe6Ccb0E!OefPO>d9;N!Kj6;B{gsY5?w$u35X*nT-I!zHm>X`!E2((fJxTl_Mj-m>Wf%XGb-5aC`U$RpY;^V z==14yMkN9#$)H#z%DDu&Ia3P%e4bckZ+c!W7r#n~G+#yFvXRAb0jIQtR>XizNK3#cl~hnhXxqOyf)jqyUKG*WPmS z$cB;P7-^!FYWheaVu;Yc46ak)mKIwdCrIiJQP+C_+ z2|&SvMU=7s?%kJlD5`{u1~VmZ!sRPw3KyQ!*5XPC zYMwPj{gI9hQ6)O?J~9V2E1}fGyBh0C02v;$$0d~4j?m})_{Y_ry~Gndw}1ezo`i}@ z_5UfoZAGQm|CIjje@P!xN$J7MLzwpE`#7igzR#j6D{j7H=Bldv2r#s&(gWaQRi!L= zsj}6SA7$YYn^s#HFDQec3h_x5IgK#f;q+r&B@}ut-RdfJaUs0Ft};V*-uI7zo-pKC zPw3Z%$~%ZlJ2g@uVSY|2jp4oE1zl^b;(y4z)Zj%H&IrJp)XU$TwOlmQ{aEB4**N;4ba^!~~kJ7AqZ6}-{+j9!v57+?HjqA~>_Xp*uR zV5b*!nye%vWSwGyXXj9B#^QJ3P z1$DBi6|%y_pf#U9D{6 z=jGSylsrQ481wNSd}*H)W94?`={yT?$REW@uUC$8$G7@MWe^G{ZB)twT-c~IloO$1 z>Y$aiqsy{Bn-shpJDPH)D7A%AtY3=KoEN&b9l1wRmK{LkvD9aW@*O_7X$Mv?5?ky6 zbsI}l_kiS$rN8$mHIOxCuaXm?8hb$~khWKegFNE+UL_kgptpOK{D{oGPsxfM>W6(w z7hJFJ-=`b{n7m)PiQC712bApqo`cF*Z)-A9+Cil^2BZ5SB{zu4oI^?uVG=ubNE!Z_ z@d`Pre8t_t_cI(cTThsACS&IN?KPjEJtr0T7AE)>F2#w79F|_QA5{rZr zXOxHDs0tvxwsYtRHh{Y46&ta59<#Slsq2|OD`fm<3lW>KmI@BBh`y6T&918-RYIm-C@~2CM=;AC5Q`FAs z&-3N81V?|g`4ILSE^yKplB%k&Auh9PDpc`iQ5{{)2QXMyV=&YUbhRul@gM5yWvtbM zhMECf#eG8!2eA36Wxz&%@23`}Eq>|%I_Rh7bnkXYV>BVqhPDl9erhqCZ+rTyvvIu{ z9)QqP`XNBg6+9LAk4p&6I}RddLsCgXCKc)Thqf^@{mxqjCjUH&xS|E(8Eww`5cG{Q}c)$++ORF zwqa@V~UDr15ST+a-pp>%*>?S84Eqgn8P)HA91Am=IC6o5B-|LO6@e=CVlg?hh{XaeXVJ}A6Mt-(O#G>mNsR?| zcFtrX>C{Z>22@r*Gq7n9>z-L1z>fxLS=3gz(`}Mf4Z+oXbex)x7GzZi3Okbvs@Yln zY^orFb8A>w4X187)VNR}nm<4PXuO%+d>?;cqa?uVgs+Z^In*PladA$d>tAeNPPH|s z1-bL8hj1jJxB1mN0dw5Z0lX5GR}vZ(Vixxnpne6^7AXF>uv(Hn#;G!8ic`-EJJ%Id zfAqEF_s@+`xV-S&M(}dDT+LNPttsISv~LNuAZJ9^e5dvk_OiH=>TeclFIEBNE2UPX z>EEjjS&cGkEeVOUDyXY`iPI{o6&Vui%2-Fu8mYM{x~BRNyt!ISJ%)3@m0GI6#UIyd zt21O2?cYGXEMiq6>tsm%-ZoNe0#t3R4iXNsKL4~X>%*JlXS)vEmFRX z{^3-mwOS3!Yf@`955(>dVcKeMbGPW=X%C3n#JI=7{<=ygUFrLn%C;P}T^c-+or7 zAfI0wwR|Wr2a7r#S5xK84St(@vjmOVE^X9~K!K}m)S~XMtD{W6s69aXr~RVdhRxTY zwyMTg*o1gwKTDQ&Y9%CAZKpm!s7QNY%vt)Oy;_%3Gpk9>a3BUX!(UF#*!K2n7b)Zd ze?~4>x?|uYJ$N~hHysw#f_{OjbWtOO3)HrY8XZd*eWY|VnM!_ThX^w!DkhzGQ$T@b zUDWD9&){$!H%y#S=Qph}77T}=A1D7`fzZ#W)URsS|B`1V?f+H%@#{ofdf8*(VHg#x zq@rEbpTfSX9nC3+{(z4#Gb|uaH#IxHaJj2m>0k17GxPBcN5EF)%h$de2Gd8Vk9!IA zaf<4$wh=C}Vcpd*u8BOShgt&@_M!*25p!NLQJJ1<16-#~>8VBnZ0f1D^bw_Ss#Yx8 zMrC_}NSvnMdZ}#^t7KENtORlw+EQ=K^_^${}eG#7L=hkQ1L3; z&|CdM(5{=53!?|xWyM`xWM4J(b0qYKAjZDID)j{o@qPeT2D|75b zpz>*IpP(K^s6>Bt7{KoSY7=xR;{dfFM-16S3={=o;ID}o9S86&aWT6&P+iGc%jCi8 zG+KJm_u%pQc#*R`P6jwvOvepD>7i;vK^x9@=ugb|c`v1AyN0RRa97A4 z|EVfM$P+HN;J1;u8OChJ!V?Up(t)>C0!FH(g>zJIB*-N!3`c?_j-nkSRnA&H8wt#w zM0g3ETZa`IrDhHSwZ8;z#52rP9fWIIy%sr^iB*w@+onRuKWQh{d6)p_jX9CbL9eZ2u`iQ34Qvhhp)`YY7x zTbMg~h{wNo0&kP(z)p1pIFtIjumbPUfL-ci?3P`2t2qLv z!7u`2k0}7ae>)b)c(!u43Yq&Iy1Pfc12wv1d({vbyTbiL>V69ZRBMg_JB2yS{kM9K zt76_hp_YRrneWXU5g()aGDpV8 zXuizR@iDqDFD!@+UtZi3`T6p~G{<6}a7nd9PP!n{9M6pD`t_vI}T9~0rrTQoiXYd0yRY#Wl&; zYhWJN)5&Y)9N3v_x740Eyt0OO)Y<&- z@!_6XqT+qE9ZIaeuLeud6*=@+-3QSTB|QVJNMq-psSd&R##|h5FZ5guU?2Wbdy6os z{^KR^4s!mN$hefQy;S|h0gB0aG2@kblgrd!y~mndN`W6#Zfs?IRJThw9-XjgKLZq# zv`zqvBrSvA;IJalZ37_|%ck@B&p9t?VK9n*C26r{@>QNJd``|Oo5_`AEgvfRUDk2~ zER?mP05@c-o3_{jCBC0r8ov$c!@+c#;tg$Zp}K8!%B599 zmW*z#<9A>@;d`Z@`7|BBItICw^%-!Y!r4@88lE-2I5VR!F5H`KKOJ#vm%-94RkUUp zh~xF);vh!V3ZppjZK&I zlRYbS=&!|5hG9{9(m}gFl}Zo;so8s5X}a=M3Kgd-re_5<*w8Wx;!HCX#J2lsJGlsd zaDY}5)Z%mizBdi00__?krxyaXarkV<^cweJw=unTPMo4p@UPL4Y)y~`(sO{F3)XP+ zGL=0K(QuJEpN58O$%xJnq2Y>b0ezQ2s|+wSgEj^N%AiPuP+{{Zv%;lO+BKrP^N`j#w>H+kSm8*8Gnyk0Iy{vg z4lDy-E{i)mGzYaw2OdMDUFs#RPIq~pc3GVTL1zXL`*aF1q= z*3whK;+h}syDAmeT3|>Q7uT#-Z26`duoOcpANxmA)s6lRcHM*3f%!GcYAruycqr2J zA%Rget*n*<*tox}7A|aKx65idtx%2j|6Us{;Oh3TDwtNr@>kXTEeKYqp|wSDMGeh@ zNnmSgYr!IL_;6hzCzww5y50wr*M`bT(HvP_J1ut(&=gQ@Uv#u@&a&uAO$F z8P@)2d-@dM9`1SL!KH2IKXdY5J81m?ZJV%!dJe=VQt9PDbES9&X(fbBtnVOAwY&c^ z3xa78;2&q@NG&WVnA010OGV7`FNw?Pz(}nOhD;fS30_1cMuD=JAcO{v(h?$8BQG?u z`JeEZbU0wa=cm9!`y8;FiW;qTK;hA&wP^r3$7s)lB`iZCU%`v$m$6!Z4AlLx7&qMC zHXn~nxZM3XK`Raw{NhO*>xWYNWQ^{gEHPPw|FA7=(IhR2yXPo94a4y#TRu&DA_%W( z#tdyFdYp5nmK8fpy_p)cyNF%=OEUloFpz9>weRTWLMuPcm!#w^f2l6|oj zO!F3Mcr8t(3UjqANKhAPZ+I|qp_ZOSE!Lh`Ao0?dYnfsGRd~6UUAtzkpP3?eg2fk+ zunDVW$Z`!2C{mLZTCi&z{O(8|*(1SaM#2g$Bzyx(@OPAOF2hgYPE?E_m9~_|fS;tb zE40n-jbCzXq&_RPTc0bjqLL1)v`l{U4AlBfQ8s6lhP&fbN`G3*2rp_FfHb%R(q<#- zQ>$H#%xL6bQG;9js zjlCY&@Pm6`V}GyHx(Tkq=oq$1WE#L~t=DF8V>XOuEDPEMOm+@dk!pcJVgU8uj1@Y8 zP2LQe?>AckFUz|xM{)l_Hhnf5yiIfPmXAp>n|UEct644;V*r+7w%5)Z?Z6YTA0WEx zR2aVXy_X(n3wIF5-`WPA%@JZOTsFmjqq$G*`Z(&eUCZNt-Na0950J)tKr6RvYcP>N z?*PphPP=zte>_5dJGI)uR}Jo33cefyJYp3tAw+Eu65_qEogf*hlzo@k#@}{n+y|?D zw;8ItTU#D-zz=U^U}~jy`gK3<>s8<{4GE9}h40bw0N<PE_J_wT-{}>{ zUQ9k5+fuoG+Oc5tn7jBu-!TDDdF0nEhI4km+{Id(ss= zDF#r=!_5~dWj|Ku1A4q4D=L**A21ua@&I)fgEm+4XM-!$SV zXg!{~J&Nsi7wtU?%5#LIV_J-THt$@j;-cfH;fKm|3>?Ey8h1?lE#y;*ZzAu))ZLu5 zofLgs>-yi5+0x_MFA^Gr1;AO17N@oE!~bh#Xd^8>s)gj{DC9+%&tKYYVhpS$`czRc zJRAc)%?4>_v>5B(u$#er6+WZw%`#3kr{H9obp}9AU$AxE^B>7+Z0Zt z^vNV%151&{;;wPR{D%5o#}-GV+|Vij)V-l~P{*nx8dIO{+jY&7P?IO70 zJ-4+!0OjsrHj^mnj+P@lQRRME<_NrFf{x-KBHm|l^eJ@l4v1_LNq4;&VbAkbMzq_^ zC?I2%yV^%IsLDNU3S{bc?g5=1koCSc6Fr%KU#n$74=4juVpzljZ6QAo?EOdMDk}gU z+W8zqe4kZ#p@nd_LCw;%?G|k=)D*Y{5#E;8uNtAW<%fV^+W1j(!lGGw9EKg$V(zH2 z2j_1a-&QT=OG4OI8@<;yxR;t4K*#X z)c>OvRBjJPHV+tmc#<`_D}AtuYY@Eoeg#7uUAi68APB<<25vZJh~Kk{a2;^* zqqa;)NgAO~!~J?TL9b-VJ^{oQGY*l0%Qx$&9<$C#w270Ofw9125Zft|K7}vh!d9IN z>k_Pb9c;cQtva}{XVlWJ&vL@1#sT6i>aUpU&>L`?)yAne#gOlD>dR25yGtJm(b9XD zj*F57P^Z!x0xVYaD#8Mms_3n`l3){Ej|AwW>kq;8#T)t!fa-qw??Fr8avj>p(YPYS zRW+zA1bGS=qbq*;uIOdnH2~a)8ajkA5aNNTu7HB1;Ms?Zx@ByazaGF9^Uek6KM7&? z{mmP1uacd4gyI+AZfrb{S)KIyOws=VT{)ypexib zzaC9bb3wnLRzAHEN-xc)#|E!b`DVhErhW3=6rh!)!w+aaeH?1*onIfun_y-dCZY*? z0X-QB^9$&({blb9=-EW~c3%d#oZLbA3+V+u$H4C-EcL#QN#QXozK(%2$sP2hkp2;T z|C7S{E&-UZrl>v=z3>!+>*bxCSHP2*l)1PbEACLKn(X zqkIhA{7&EPEnG2h-{%4t1Hto-d$Qcetfh3E6!ueiX}uyqtI|4Gy}Msp9|7>2M<3zb z=0()3;%4gS!N}(O9SU=YsaJiyCq{2n1HBiu`$6A_-p4h-+FryEm4^!e zxBRF><6s9<8|l%4u#@F&tgE6p$W5L?Pzh<+6d1jd{n3=Ky%Uu9lO7CZx`jXKx44{k zOmiKAn#BY-iKdNl#o1TsxF73D-(EG}Ei)K7pYz7q>}bu(f zd(M9FzJkNA{svKv)_N$u8{b-gfDcjqHu_NnGykHWL$8wC>ph@0)U&-_NCdyVyraHX zSi^dB!lL1)yUw6l8(85k`af_~#qr{u_BH_pMJKd-6uV0{SG zV)hQ!{kYWi{1E+?1UtKw5qb!=m-8d^ED*JcBlQ~+%mUeURz#7rIFN7YGc7RMsEyspboNz7YjSLg+g_vzdiW z*1O=opGHmBvuDEA>lFY?yd)49)SLeTmw^CSZ`?7=r;F3|au|Z>8G1WWc*jP~(ks9& zo}K(lhf4N)sxc3=#00sSb3R{S&naq=egNRXBE2g%uAdg`X%HkfSfa-Q^jV^3#0bt> zf}u;J{Y&(G80NQ2fZ?wwd?}VgDpg%-&cukNAUf}$Vh5c0NCTJYrNsn|b}!R&3;o%P zWje&r16b7+`U-3U?EOmpx=lUo$8Uo?i4Ybm`eF8H111r4I^!lx^lCb^NiPodSo>zo za4MDFjOCOH&sKUd>>i1mb;#A1uw7epXmSps(%bZwpgnW8>7Ah49gw2uK&W(zKG&II zV9T_aL-QmB?M-8m+d<9wEsROWb5hAOMl@a60n|^WBReq^sWfSqJ~I|V8$J`}zM4m{ zLs=`z2_7bjpGWfuR!>%bjnZT{NI@!Fwp(w)b;eEIkb?*Hf72alx>x`9h3c;(zH!3Y z?4()RtjYKLoAhdDzoh$qf0N$t!k2X4?{CuEU-^>m`|VAqoY(Zx0sN6*NlE8P$NLUu z3rqVb9l3_R`)??c>W$i*hMPjpbfx3`ndz|_bQC}D*)Ard^5 zuKayUR8M1X>cerp8+J>N!DV2{Tl!Ya$NO6*1uK7BuMET*b6a0y%*H0B4^TeQswB;; zm(b}BcCk}5_>SHVEaZ6_{q$XuFz{w?bGDhI{TmG9>6b!6W zxX2X^u)OT9Xy9@&jhadZHxAt@@l52D4gS!1K^b{dX_Rc1JSQ7zf&~|)tV?wMxo=b1YUF8x6XmP8sWP)U<0qrDfDVAf~@b^|+D z+gQXQ%jrx;Mx?#TWK;$ym)Y3mch4XA8*LMDK<8>0ZhZ#}&0>@l?I{q2fmWwb>ug2} z^ldX|H_D_xgjR5r=0{P_RY(PSmP6DxyU_?t#rf<;5di-jMk#0eTD&x?MSF59-&4#jX6SEaxUW+%thN=MmbSPVaxIuA;K?5xMN&gxwncj zq5`9Wq2Yl7zPMjv0$_U;8Wr|cT>BUm_E+Ii5nsi1j^QT<1uV6%EVy{Io?YHWd3P32<7AWY+tVn#UlEP7BJ zbCpUBN*I|iY<)`@<;A@k?JsUb|EI(fPA-}Sr)typQp$Hm667-VOB!W3Q#PrT(GkK= zdubz5S_rLgnsrw$%Q}`eb_yZDD}fu!>E0i3%Eo_i=JjeBBNKHhV>oP3Rz=J%Z_J!B zMnUXB=gSz)B6jn_{4INal=4<%MnTxLTO&gfL%5#YXz`SfVuY15Vxjs`x}1>>%xio( zBP{T5^J}|AaH;slKGT;*8ci-|G)FJrl`}SD2sV^Ahu}(i;!kg2h|_o zF!w%woJv>5AmhP@%Emf;KID7z^QFEwdPnaw9qpp47;SFWh%l$frn#XRrioxg~!HOB56o%;|{WQtYZ$tggVBfuXE3>`%P{ZQO~H#m7wDr z@a!zHff2@oOBxxO93Ysc;Gs8d&1k^YStDa4$N%!pjqGe$QzMx#3Iq;u=-0}4z~P6V zjZHigU>BAn-uOuZW{>Cy`~YS@>SSVe*~-r{JNyRVTG85{Kl={ilj`eMnSW^el%aOJa&{^)Ne zF6eL6#k{}o51O4ya|f98cmDvR9TfWu4m8R_siD_EjMy{kywE5@X9l9wO(qS3b&3C7 zbB$E>E|Hq%IgVlm8?8~%u)$bSX|!~(@d9RHe+@CNB68qRv&Hj<8l1iBGR%naj=Tz0 zOuGeJ<7O- zUdCIT)Y!*4r zfDwNx{gA{P%zjTYnsS6Zmu!yC`(&e~aDz1`;|6~prTip(@;d!G$*2JCX2T?dyX&w| zMvu4Ay~$>C(oexobAX0SF-9US+cdM9YSWBL)NiV>@N*PHl)vZ?<$9A;*ei!&>03?7 zP}dnoR}u2hJF^TNTpzPmb3nxa+s-qr7VqS=!n~YX_}}K``65v5o2=PlAklxExM53- ziJuqrFTMrc{@)g~XQ@%>bGB~2Y(4)q8=JV)IKoxQ7oIZ;)AW^wLr7!`RvPt1gA+<@ z&Y*JqPdFSDX={uFqLF5*JDV~AyQ$j6?ym!;iU~Tk+hAM*pH_JzRu16SO~w;h9IAVd zw+FTxC+*0^W*#t(Tf#@-Z0x;ZFsa)<0eZQXZZZ5~CyhoOG3R{s5nxanUG#>;qh@4Q z6R_$>jmtu$X{lmf%?#rgMhL=n5pVBEGsvnOH`Ys`h!(tNOA|~oxLLrbxELUnB2F8@ zJRMJT@nTc|HNA!}-3EInqD!spE=-4XDTr=tcmN4fek`cA$N>5qA-{pxn~SAXQ%E%G<5*wdStvq zboR%_Y%}`kQy$G0JTq3B;YKg`BvR3r#v$7f-4&HdAHv+P;H4`t%@Jb`lGmVO0-rBn zMQp0^{7YJbIh$}mV5a4KZ4?!GIa3b#ZMomy8V5z#`BnH}OyFp7@q^JESEj6_=y#f5 z5(G+q&B4v|ko?Aru)lNJ{C>0owpRQgI3CZos(!CU7myLNZ+>k44#O`5{;zgs_q*Z{ zr|XobYKB1C5a$;oOlKG4{1!w(fp2g@ssjL>~$o9CJXwDrBFmTyTtxk_^j zDQ(VdZXwh??K_Jb9HI^1Sv=}Oj23EqY0OXsFzBiP{zqUMLXp56$#S%`6l3{Xpq~qP zr52U~BxBaQr6nufPUf_-Y!Loj_)TkEM3(SIZ7td9QZ%5Qg;bYU5!lZz213#8Eu^|! zmH;?#?U8nfEhO+4J5G^@S!4%#cb+q%W`2cuQ10lnLg|CT+1TTFdn|ZasrC> ztl47AV)QU_iRBc1(6!~3x|FT>O3Mh+Fy519=?{Bqyb`xSb@V0Aw$ZYL;NeXcXdu7j zKWwqwCk4e8TP^KLPv!77%l8D6{s_PgJ1px&Jg9U!Wf>>{J~?d}M6l=CK=}PRizQh2 zgJ-#7sSM3d-uNm$7)xsRH47==Ke%T30!*6t>lPmr@RP4w;N(gdu=SH*1{kuwJC-5A zIGPqdw5$VY{K!Hyr}&rv-~ZV1m=y4TdvB>v3iz_iT0;YuxOGV@62{DgE3#8Y>gw$^dpt69wV)a zYF1h!Vs&c;!ND6>w1hJsa1;S_q%AyM;A>4xC0rC|eY3J0(kd2u71lHaenk3u~vuw%3TL z0@sQ8T3T^d5uF$grU?Yyu(V%7sNGsDW`#}$Vc+K!OvpK*rL{mL;;pxh>5@#X*&sIOSc`}hiOfIu~tQJ*)LWo z1Fhl5dRxm8boR9Z6RhF>6if;cC;hA~!0)@;&-xUGp)d8frXumj0ah1Tb)PWMN~YIt z541+Yv?zNv$eM`LO&6zf<6+(eR0j-|1Y*TR3XdfQTkTjSbp~7S3!WVi{Xk-g|G-{_ z2zfnV-ww5Aw^3DKvVW=vY$dAa*P&DoTQ}5tMtI1_4zuPnAur)C|&27bZ{=A#kTS@23RZlpC0k8ov1S-&I`z`u;P-ZtUAq16QI zS7bnM{zU5)G&OXRm6$8XCRv{#v^P}`iOf10du1-OHWKcnPPR5fJ` zJ?0tKNqEfX3+7mVrgsc=p7j{LlRTeqU4r231=jvT^ci4sH#Ct*eF;)%6RloWZIP9z z(NFDGVAB>`mwwiGWp-hSwQQgVIa%eU)`FPjzDupYpdW9SS|ML_hs!IiKhb&^vx>UR z&#tmUC`k{NWn0!*!|+kN)>w}tYT8;o$IZ1?FqvMmQtS1(s=wZPmMDcnTdZl})`8@Q z3^z~Ao35{m*Iw3fkF^L(+>J%`hJUf!stK8M=?AeXkgGH@tk`3<2*O~#eXkY92L?#& z=R?+lyzPE#dBHLc4ny#^1uQ^Tvf91kxC1-sbCc#)tr$z5KQmIkPp^e zxInI3BmM&cHNLsiW&coWsA`RJu+U2ji(_WNxtuz}?(pM}P*2BE7%#P81VN|5#OlUCt{y!Y~uqBd~6NAW_ti{4h~e z0L*#B)s)M`#^e@jVVxLsKGr`>%PV$3`k1^QD?{i)Ae3H3wtRXO<@1R{a2y=UCr%9j zl?~4?{))+pFChLPi0>hgkc`=e*q5CE7TKSCRY4I_X&d?GLLy9pzvP{ZiJZf?~fiefl__Zr3k_^qSCB+9JU|^3(!l=*U7m~!>VHpM#aROO! z^w_G3HH2)sv<^MZfgXbln?OHlRhrD{(m?n%fsL#tRupEl6V*hL0Sc)uW`$5juIi9y zrSj;(ISXEXjOICPVs(+cWE`q4t`Pp>y=#ccq(-FF77Mf2UyGx$0*2KRQv*?35xP`c zycjbN7Y08G<&k35Ja({-n9~JkL`FKxgUGR1V=RdXqQdbX&k|Ycimi=*N2{#nR-=mr5Vi*W~wKO=!m19*f2kYZSYkjY$K4c4Sg%VG5xKOo?P+b2dZ=y zmH--}hmU#nMAh}5!ZAA0icEs}B)e1(yGNH}vaz!D^>6N7Uwn)fJ2$|j-(zDNh)JdN z!_t2&tFBEM(EJVPd>_c#4zs+I_JRM>zmret$-B6ZTb^bNX8QsJ-LK1ir6E6vps}a3 zRX>U;SZoD;62FCIWIq09F}pz^B{H!rxd?mLTbzY=`5Ar01#rq3!^RynI@sZv(I);~ z3JvdER=vO22#5W${$f!&Wv>m;+s`*pyp51^kT_6CV>1VdorN?WJ6HtPea(swLGUG8 zIz-&$*kaN7u#mjGtp764h|z^68S66?IARI=YnZ69=waga!0&&s^Zytw;=F#xog+nX z241iyqeQ5&vtpyMyN|Ggqs3}CVBBNGY`Dgk86$py`)02(nC$_4{upsEA$a{2=VCh2i{diw9rUWrnseo9aO{aJd)8K2VAe^Yu?CXa<9nSXP%%4f_J>k?xP z$=O+2XN$!0%@xP|XGAP(+SbsHb)P4yI4V--VLIQlqw~ZD0J-OjUxC5ee!e(ec*DXM zh~HX9Vh4ijf+cFenVC`wsOskh;uM47T{L@q+bXey#h8$lY~^Ac0Asmvi3m-_dCa#= z{K0f2I?BLGE*D)ozdVZc^hwbcIAsTtF|fs!i|26DwXLAT@-Zu(CVnTMk5)wD>W3*} z!0xD35zVj-nTF*I<-4=1(A+6lqr(w0lxCO{}*$WyU8*67KnVi&CE3eUt=w2oIk7a`ul zUp&{T5q9sDn4eX7CCAA#xJl2XeJH(6koKU|P=gdJgscKh1$UOyjS~63Eozefq#A_~saY7ZeitMC zjjdWVR$4<_^{!cJE-dBMvPjV3c*$E^rQhK=foGSbssbJwyUWrNECruUDjxtg-rFXD zU|r3YIiz19)KbwY6(TjzJ}#*g*ek!gq%klWRLw071vu%JeiL4?Ngk;Q6gHoFq@$5n zXqHGA8^YH|ypl)Q#~*qnkiNUwSBlgEeVD6A+sUw0OHHa}7#PbEjgp(6&?wIymMyFF z6+nxu60Wy=LRQHo#J<6`73X${zA^Ch_FFb-Hoo}V>=+viUP2Cu2CrKVX)?Yav8{Qx zoKgY}%Jc*YXT%Z~nMX?Ek+~%+<@Y7(`CBJSa|21+Q2Ia~sR|e!j=WMH-)bC)=C$+( znia%5gGL3;UOEzVjfz%zr3P3U+ww}w@bMkoKSMx~?=^OJ)HXKTI^GkaS7-w%G ziNTQ@TVEKX_>kQ#EN#N5FDN1q^iW*G^TC^MIpQlagzu&hK!8e{}SRv}3u zxvG>TX&0i(my?J)O+-H-@OPzoSOv%!CXsWVgEX{`tFCb`Qng5ZICa;soOh}seJO-Oq#h?)UpB6)BpV==(X52c&8}3H zrh_MtQVq4wvD7iv5MIIucd7m z*;ch^b@LUqq-b&jxTQAG$W!*Jwv<15HJCeu>%Tz$ZLDY==`;o}OI>WS$1Jg~RMGyJ z%#}s8Q{mzoGQyfc?+unB8(mjQv~Un?VK`98JCHum>)64%(s!7~{PiSQZDr-_Vbj70 zPCY3%jO@&*Ck@7ZG-rKjz7b|}{`v;Xb_{#;jZ_1dZ9{J*34*&Ni)L6 zWdR4*W**0zH4}4D_tahP4v!+PR0D7cI&mrC0p&w=nnb!8Fy^uOUx~yyMVIdqau-URn zVG#p?Fw=PFfl?OA*l&=&X$}qo(uLLc!4%>r2TK|;Z(a|P_7U3NHC)PGbT{28Adp=G zYdOe|`y_-dv1~sVwxk3YQx6dOy2K^ZMo2lG{qT$f5)LKJALxRUA=vc0B_P<8GD7kJ z#myQa-68Sx5u@!tkNXu6+lv|v@m8DHlCk^Uko6Xckx%L(m;dd50aG% z+*3@z$HC?uY|IqtsGZ{d=ytmDepk=hr0^#Ps z5HDlVvm^)J9O7q51uWQWI5KFj(XH(_OO(LOvm`k^Ircx2*^XJ#-1N3l9op_XTk3$> zyf7PW9$Im zRxU4)`hz3bVj=e8NPc&rbbuIy8x~6!@FvcdNTX4C_N6Fzm6cx#4EBr-St_-{4fVlN zpoO^%hWIweUcxE>jscNKBp2+#E|dID+>s*Fj0QL&?Hz{`vb|;`ynr(k5~LCAA>vd*cp(eA zU@<8DhKxWCEpSJMP%XBpzMbwfVZD@)_?a{_m7|+=rmcm#GWOBMz&_&Nua_c1g{{2L zZx|9B(15x5iQlD)WFB1EA?*aXz5{3BR`&3aw2p=ElJHpf7f!`%Y}GEQHu&MQ4@)zG z4@Z-5`{LbFqyTA@eEX&0tkhm96uFZ3N`pW+9Na7YfXo;FmcBAfj$yuI*svg9j!9Kn zw|&4RdZD+-n0P=chPz}N0>Vi)_n>qRAmva-ANE0>(YH$)_gM$#fWk{ULX971HIC|u zXty`}_HQZdv&JhR!>B(&5AEYma7^9+{lj@L=_D>h3KEieW z;-WMOHwHfHvIL_-fx%+dYgl2|*@$acx%=3GYf^ROa9@{hr4Of@t2d>B5VW8naIr48 zu_&&y6St*{$hZCuhzA5)-2-iXo#nZY0oQ>WwwI+v8NZKx{Ox1EK9t5HKJgKTbst;v z2s8u~Yai=t?B9Tty)QkM6v$sC- zoCz8XngLN62+w?j)p#!1`liQ_DR}*72=+xV6{U-jjvGyZ1X`%{Q@iVy~<1_GwRLMEy(}s^h5fiMmzHn$g~B0eC@bt z$=D({(~p`DL*!7_<%JY%$cP#L0{4R*?8plc_B;5S7m~w(E41_)*ir{s`GVJy3HHVL z(s#ga!Zlv(gQOaew~-*j8sA=a!zh=*`pRjNL7~rOk3-}N2o?*KpO8dgo^W{(km1^J zxh6{tm+j0GAx8^ic&-Tf9crO;Co3B*ry$eLXt^9fM2uWKkhgJ+p0|CB41)a$8y_nV z6rOOKSuPJ6g*V9}Hw?kGf1^$A2^;+d?Q#z@XqLq}&w9~kHM-okY9j|Dc2A)Jd}56 zDBm@KXs!RP+=09j?P@0P3x&Y-*tYUB6Uw7H2!?dV?4a&OU9ejIU3WCU+zn$BXl*e6 z&|S{|d9FUJ&5!a;u=Z;Fgz?VE*Zya@Hr2YVmt5;pevTejHex6A>M!?V<@(E6*@k{{ zmP`?ag}*rx8wW?Ov1aTxcm&uYyBRiH6kbjB-#Lb2oo!$>hswWz);Tm(-bg}xLr2IB z0j`dahv4vTKT`e~hxd(?xfylf_&o|sAUXd#FGexJjT8)grQa?R=&0?twJ zJ0B5v8Bu&^Dz=ZXhnJiz-wuVz@%UMCPD8+`E3PZ%hrHn&>cT!YeXg7gaDA@a2#o47 z^W-D3csdBj+p3~#o0^|;ZN99Kd_ma-vQvmnvwoi1VWHfL7^Z(OlCS?qVjADGSgsj@ z>wqIoZVTI_1JdNvF!IY9uaWoQgR`xr&*#F^zt5J-o#d|mkSA- z*^TwGAETRtV+EYx4Y_Q{Y=SuODoMital=irm8=t!ekMo_yg`EA2qaC}B>RGC@Zeu^ z6TadlJGDvn#0HoRbXb7$h3Kkjv)tWq%nE0from_vbAA@5bIdlmF)#L;{5RR+M_^nu zP{FK&^2uP(mp}b2#|u~ZtiNRlRA1xePsrdXLB8>n+!{N2&ne6|f>CGW&H%rhk-x>| z8bp2@4D=7-Wz zX!IK@Mu#xpbGc0{IiR6K5tKR-jm-60{st$5JkRthG%A>NeI*ZMzrK`@2(NgjSMp#1 z&r$t8K#?)(jqJtmTyL;p|6#wr2lnpp2FT|hHZ%~mG60a-$sPq#qTcG63%->LBVXG< zXzW|ej$Wyg-FvIo5cW>bmp1_Py1Ts7Q%1g%>trm@W+Bu= z)-%Mm;9ptugxc&#dlX@Fv8Exm&u>{;TRwnR5m5&G=WAPpv!I+elj$G#nFUTL(@b-x+Ni zNU&n84Xbb+J8ZVSKyYssTWSav=eKrSWdr!KOP#iv0F_;~ivYRYwrSY&d)&5KCS-D{ zws7LsW{a~mfcpgAH>>S&n2^f5Cfas|8dAi-J-k+7eCkBLy0EPtIhc(oYWorhIH{hmigkrV{hBO=7ehSZsmx|efagD!G%vJ|U zO-tB3yg_kW2<1b7-a09c%_(6M4S&ll|4uQEDMMpIJWa8whlr6)1p|1O{$u;Y0`{`t zNzI%&UuYno{$A8<5TzSm?HO4#&4&Y+;*1evW#!wt=4eUTs*0R?GNGKrHMlRz}=l}1r6c5WMCgt zH}f-Azl$x0pcm|hjy&yRyGk~wPj$1Ypd(&)vn@lAFYIo+Lnc(m|780>ULD5wvW1ct z@u`Dt1L;!Z8;(VCfzKOmgVo`yY|cnq;eWReQ@QB<{gJjW< z{ed+bZ4<$9`eC%KWC+;9YbR1~`T2>qR*d( zb^gD~N|M)P6PXo&UBBsUz%tuOFl4`3Zqv|T)Xsp|pr>kvQ|DWns zgNVPp#?}G-t+tl>%TOv8sNCsmv0vA+7i(=Luy_ltv*ilLQg6Bm_!ZIDHrw(cTH0cR z1Kw1I=(Q~04%>EQ`DceMDFo}L=sw$agK&VqI$#5DZ6d#R$TpwMQVu_C`xeLaox`?o zu-M8UvE4-GJV$LaOn?VZ*sdA{##WuNN!UAk&Y()Hyi^Sa^)j^U;h0_->KiCfQ?62-_X@?qo`Sl-CaViOc-BVwb~BC*UZ7eY+tz z5%|!PV80#-v}r72Uj{jkv?BKB!dt$usC_?u@b_QZ%MglPU)@A=Z z%qv#2e;I;I18UoAqZg-Y+aH_I?|lvI&uJdEH?eCDDv@Jy03~$AR>r(09s1>9f+)^+0JA4te$R^N^mG(zod8{7G9o z9#h}(X6@~ufZy>m9qbkZ+P~k)KA9$IaCbXMvJY&34|}{JMdD9;*r$>}*_a>gOUWyE z@t*e1G!ILEu{Rf2!KimGyo}2Y_IH35>M-8&C zCol9#!|b_(Y5kA3lY{l?qsi=dDql9vK7u%GqxRTq@?jJ0ZUgx!H?VOA2YEa{nrh!e zHBX&vw_??^6*KJdn1d5D>=5pmz}wEUM~0#QJr>#jB4M9$OY8~M|E^2yVA%BI>N0x~ za^qfqg&m4YseHp~JEvB=tpBY4+cwbWvW4Gl!jUnAHQHh?kDkxnVuzKGk3BBD-Tot$ zUB1(P5k2PUamUX)8^15m*@ye>5%k>u`jFj)`?>s=JqIrFrT(HXp2({mwHKkW9`v`p zDfRW{-}bXY*Z|#&iFpj)cii5OE{Ii5+2IHLJ#TZ)ep@gMl33ew_I~`>1^YY`D(QLE zuJ5XW*X+P88OgHRf>BA@8wByV?#TMSOW4H07+xBU+`7YhHZ$)s{J$qjI zl*11L!|?90K8?yh`Y`a#Pwc@sI%yhd9KxR4mt`7<%dhQGHt1t46ViUhS?q81f$9Ixg6hz z0wxr6C`1`mF7D_W^{ERNll3kvY+unq>oD-m4BzbIM=LuFCR&armfpBf!!a}%{YB&7 zWop-1UvHP6YvAZiUst7t{&k&NI6&Vq_N1j_w3m=lq#NQ}Q{hq)61)Cii~2{I{5Q|z zdBS{x&1~gx15s>gv+ZZ_??_fG(*}Q;V?C5A?SRe&d2VryN7a?;pzuDOV zGl(x)r5=u=cqZ-N!?7TKG1e5RRR-fi1e-&I89*m2k#L*L8qiMF!@T+rjtBHQ@YPR_ zO2Q&O>?cQlL0&4M6zc{iLuuJa$H-9A8VNSpM~!nNvjGzwKl~SGH4&2>?*$Mc;S6p6$%-?~=bx-K zbIix{QS@X7xbQ=Hxv3859`5GCbO*M`Y(8M7qaLA_vvV8`!3g6;<~iV?XCmLZ&;gQg z6Z0%~d;w5*v10=6%y$+$c0l1|#S+J6)YWdO<9!H3_1dmRa5K-g#<7p=G(P&>0jlhG zHhr681IpCh?l>%L;qiY!*cgR!?Qpb>#r!ULuFo$&>Hyo2vHC9^iTwLx4mj(a$v&LY zmtwBdj#IQ!Ocx!n2&JR6x0mz;sK;@jygM|Maxt(Ao z=wFteqf;K|UK$T~d#9V%%ICy}TF7dQgIfNO0?t3^Jg-#D37*qLo?6mb&Lj-x=lss! zh~Su-Kq=n>91p0_o|2J?_-loKd{H5`S$^k^Fx7<5b@81%`*J9Ko4H16qb%CL0nS?78a2qDiUXOR%Yc#*x^;L6SW-EjUXkT`nE4X2&AxaFKe ze&XNXc7n@&gAKjs+zi4v>AtfVULN}1cX9!ntLQ@~D4Y3g#bajz!0E@%o!Blj{&CJi zsMHguM}XzbC(dMm`A?jQh&=QbUo@XJdFCv|7C%LX`KLg^JDREnvuo%Ima^R@FUfKUA^$mBQ9 zy68{GH_nDg+55)XED$QmTEBG`!tY<-Vx4`g`~U6f4RrG42j_TU{-ky;e9NSvuFWWl zGH%vXaIM4;nGLQoG*q>WF5Jcc?(!8ud)j)+VlLe&9xx}bFswhstyUE*Iw6d;JfWUS1gII9)aNl5{?2a z!SZOXy|{?I&|HJUz;f%I%XI`Sx9YiF>*<;plE?K#xXNGWaarL~lEoBsWdkFwP(fGa z7_fy?{H~_XcM_yWAX5?Lp9Onu4-vvoC~3gC)oZ_NI0Qllm2tIzVA7p3uFFw)13pmQ zbq}&w8*8|xguItYGwRas4!*{s4yRt>1=bwK0A()djaGyJdDK)m5Ao znC!axG4S;i*CAA-PIbY){bPQ2I$8ri=ck#jzJe}QgfkwT4mkFn?TVM5NF$Nh zE>U>G%g=WiB#dFjO|BcD#qw=-jS-&lZJS-ggF$#!-tOvv;D+t4t_JXk5_YTj3o?uVdzm;P0$Nxj=Dah7ly9?8*BT& z5CqCGS8gMaRMnF%SW%h8@1J!IA~pE$FSu3&18Ub?&ka!rr6PtTtcrt@{}9i5)8z}c zFk)H2vjfSNLa@_lX1vZlmmC~^7b`Jk6n$;rg<`$!TAjCIAI=pCAbR$BpTe= zg?YTT!96idn8j{KxIMxw9vbP!sXv={b-IDz7crmLodckP*X=PcmQ|2Puo?t&L|B1~ zc@MAqijXHg8mhE@dPhYN)EDLP6UBufUZYS5Tx$yQL5lkfDN8oZ>h^>{CazC{dk}yr zm-`uFU*~dPMb%VCP#K#g+e>#f+FYrQJ~wunzOPOS)k;KJpV4JK=JW z|9X&r-M#=B+syB_B4ZD~yY&B?kstB9+mmgul4ad@LI87Aa(`~W6`md@ar4YBy?u0wiq>YD#9P(QZ zVW&VoLYMej#HI+OMRA6)Gwy6C_uCmabZjA%f8PB74N8_2;>VK z{1RHsB)MaE=A^1tr6!MJsPyJ$&w4cVh#3 zCwy=_A*->@?HMJ|VG{0t31OD&Y>nU{xk8)4(-p%v%-{h|-^o)$J>!G%Z8@Vo<4rM8 zy@L!F#?M5d#0Y!*DErS8AYu|*auos$$wx1O6fZjVzxqI<>g*`KH z?_p)X^bEx}9{AD&QV}}*B|H-i&WR#SCE=;NL=hO9#0OsjD@pWE7hqeULn+VS5uhzg zSMsc)d%{1JJ>v}#lSLBeF#5+D*yW~hN19U2V*-19aWxOI*I9MXEi;f`N>h&n#sW)i z<|zZN#OY?9F-GAHZ`;zd5gt5vTszNPBJlTg^=u&WHKm7V0zt8-N55V8dwJ+~(V~|} zzg@if#e+r$Fh@WA3+D9mT%|7Xt5J!wRW2p*QVB!7^kznxhyJJ0|tWsHn@t&_x$>i~#>a-MYF;Df-P~1^*|IW*r zZ3xZ)~n&)FJoq(Q($7eXHt-y>>;|4gpl|9wa6SE9q&UwlK7|(mYriX!e|0z5S7=Q|zo%b-|0(*7d zlZ>t6zu@^E$Zp*Q4|v*l`JPLj`XTW3tK7uI{=-_{#5TOo3*GWm)vs4dDBZqR-0`#{ zexc*Or=-EaMAqnuCl?>^&@+p!l(XXXOf?>Rw$t{pJn?{Qc!Mo}>RIBvU@I35Nfh8Y zGq7(k45`6N7f2BECD!$sr;_0`4COxeh|cpiU0LtH<-7aL(+afQ*Uzz4&a)oRJ!K64 z*jUXMo^h~@*FQ0?chP2MX8;R!n*>OCMl zQXVeL5tUjCy5EBRn$lcC-i|ufDZ(!jpae9m4Jh<-k z(zDIiE^kSQ9*lK)mkOtO3AY#0NOyRBk2gy&%uc`o6Uft>EF#|P5pJ;@@!o^tX`5f{ zK>Rf_og0ik1etI1@El%iI4&8U{NCJ{$x8XX%T16ads*1q5C+J2ttwvN_dnUNYTkrg zdu-?+d<&rp2)v_`D9C<%76~oSKqS9V4FxlObya%01Yt>Eouj4~^6O_=Ty1al7`%uH z5VDT---3a-8!V-^_nGsAO@ki=L5a;_Xru*Uyy)R82u_I~@G*6~*M#tUHaZ(j(E=Y^ z#|!H69&6gbi>=5TH1sYKf>T9RP?%S+ySdiL+nrttSYz*%VB83Q{?0oPe6$bWVZ2^) zR|_wwy&Zf=ORp&yH^Pzayg%WsHn_bPH?!@mK}W9-gVD32_d7v&&d+!9?l`u^b!rQhAXZUC%Wi7@BD;C7J8#^R;O3jy#Z0PH*TNUTLl+Y$g+ zdJ=okL$7LNAj9GSzjSNi+=Xzwg@NL@sU^snQ@Na`5$Y}F1K6;wBMuhN+U7YVt z0Ek$Cjx1yq7I?D@uXyJL-i9XhYu^%d_hjl)Zyw1D^alyDv{L*ae2%zHcDo-XyoLJ{B;~?HdKMvs|KY z0X^{D%j<)B*ggh$l-#WE>*-r*K;J@t@uk2979Tp&hv!PhXO8m?q<6fm6MZ1hSn@>QHN@tg<9>tf#x!Au|ukzF1vzxgPm@^=HFQ3sp!EUY}{0z9XGWHQ+*E0COeRZ zd52vu3Z8;_OXlRzK=N-aX4=P+)(v(-*NH*ybjJuL^JaEMTCe4QW+f~5 z(|l&4BVwleasw0(fHu>8H^jhqKt+Vk2a*dU^@HX!e6N7q8_o2&BKF&H#lmhgk6`^~ z`U>WGNNz2Np#v2s^Bpmuxe%N+$WYq91GE~Mf2F_Sdio=FWu`AK=N%Cg_lFNcS7<-Q zcK4^G7`k>#FHgcG?!=(@K#=8`<=bgTcEkpyCuR2=JLswRdBkjAD(u{`*>ioaY z!H}E&d@(`K5Qxb~F(uMt*yXuCxo_sI*?5WhzU&5UrSBH{CL0Re6`@L>U}*HQ?F2*9 zOut)X`rRh*nZt~gM2TB`4MJd1f_}f>;&ZWuTYP!I4>_^L7cb~hI~@Ac z4*I}-*vEz)_K}e7k;A?#0Bet+f_=Q%QC~hnv*Z8vkptt1V?J1wWjT-e_961=F&|WP z_*ch$Makpe52pwVvwf$0q+$zDj5Rs!!)plZbJ|x0VE<{#&!jWH763n=(eoV(fIMgQ z$O&hCGoT_;;GC}?2#~esd_NQV$a}$87A3yF;A@Na&R_7wQHO=gzR3VnFZ<>Ll)mC? z4lwr$u>3y${)!LmoD=Nn4PR?3@v^hPDsmRmtH+-l=6$@=P2Y?VOn3AHUlCz1PkP`3 zOX&pP_Q=>CA=e{IbWo=*hT7<2TX_c8b zvg0p&+4?>dHC^Bxud_L@_6SkYOKt9tzZ2kch~j}6AP!O}({HGD>hajfK|~b?@_>T` zyznuYS4h%--`1O5+L4*KYiU3K4wjT_$Q*2%rSO~$(lJvFXkTquTq&~0;N91 zSCnIw6&PcmcT?n6#G;B<2OF59Yw%}B45EM8K!ITl2Y0v=6;LGPG#S}^)<6j!T}oOKO95~ zw5G_>LXi0szxmeJ(I6~ibw2p2Mjj`0un^(_=6QVi2aqwslu1Vv4S%01jX>hm6qGi! z9yghk>;RVoAS_r9zBbt!c~pgnRaohjJVqx^(@d)lLXiHfXVr6SQ^ zja4OAgfN2-%cVRF6K1fUg_M@KR$nZHUd`kog_UX$Mq~BsDqese>naDrXY1Bd?dI9M zVo{}*NnT)AAy%wU0$ArUeuyy`%?o(PGD@<*UzMN==I{z%DWX7G(^0A57l0o>Wj!ab zYJO!S7;<4{Fc1q^{xXV~1Nn8~c+4+VP4(JU=u`z7Gk(_C31j>m%n%)1LEyHT!EHl+ zin8cY76k@;v5H~mr(JpFACQQRla-SIg)1n>03s?XryyT;wW88B1kVn2YA8+c#TW+_ zBJ2EQ4J9QQ6Ri)#vcNzrN*{!Q;vUR+C*e9ZGLU8{0@5Wo9~o9XeiL|GWPB}r5>0dby}b@=sA~Zt$byI zT6Vwo3aD-vRPLgXnJ@r9tJhT_UtMRqDqx9T=Hic#=mad>Taih#xJqB8HNe`w$|1xK zNKuqvFp%aAQpy0_9Hf*2h##!Lt0(U;m{uX;uDo30No}kxlnG#L}d~{p-D-Hb zkgDvHCfi9pAJb~m1pI)5dOMh`+xr;Yyfstu5_^SBRyG)5-lN7er8!EknWp4)j)6d_ zc_s`a!R$9!v)~(GYX(Dt{V;z%P4Ng>j>u{hv34R+GbtJ^Vp*pvWxSY^SUs++jo17V zbu6*#Tmi~vKEel1S6l|n#H^WEv#Z#;nMx>6(@jFo3l#kDENT-Fuow^q5{zw!K6TtM6FDc-Yr3d--O$w*G^7P-81QN>sP&Er|9hbC)hIPRa1L@`=EYBguW?**Mz%#jZ zd3`hJ-+;N^--rZ-K2Eu<$_wm>lG~IGv7^BTq^$r6Y4c%OVKuM8Dt+8`MNGgR2%|lK z=Z8kBZrPGtSL&|e%o%CeK!nemZC9!oqUYH4RLT!K|C@FwkAW7K?Nq9h<+``Kltl{2 za;k`If*HGN5nxscx!2gBVuek(tFGQwoCc{N@-?>^`>Rm{LJl z!J>{UO`(w2@wn0z;^P;OE6YLpj5>iVf3jyM6f#EOIH`k@0nqFusD(e-z>|tv1n$Z~ zi(r7l=&*w)MJy)W8Z2Ue3PgSkxA_=mXHNntrE%jaB@+IwdF*K=6p-1@;80EDrOzl` z;E$QFI;Sj-)+fXdbq{}FFJP4h`BU&JnJGB-^Wdz{f?zji9=!Bn4UFW5%qb9f&X_+~ zWy=VFSP4Y4%XbvDFEtMXJ$N2#haHfq6B&`pe~Zlb-y%!5|1ZTsxc!&dOBu05BM!K$ ztie%J^qw+Gum^Y(crNhY+6`u=$v>;V33S#8e(t_fk+5|3CrWXE=1-K0SmVo{DA5MP z2kFy><>#L%Q2IT=bG%fh1p|-oe5dq9FzLN=52E{%@~cgS6YIvS`E)wYj#ELz{qlho z7J&61{G>s>NH-sDQkO&^J}y1JeX!bzj>Iz|YP=AMe!`R%c_@oyXWqE`ehgOe7sNDs}D|^7+Rv5iKgwYc={=&K5OWq_({Tq$(0x>FtmrtTG(@)&NwXErs?*C1Fst}CktE*shApS7(GS(Qd4z# zZqVg{{G9kN0c(cp-erUQc%Jbq$hx+sdY*bRzP4Hdko{FxeFD+29raW%slZ>UuR|s@ zR98n{vSXlhN+*QXEN1$Ozip^?#d_qOnyLaVw=T`qqBMhxzEh7Cy=m7#u@I|=a5K>& zh%v$oOnM9){!onm*cr$}_6TmWH7(Q?R2W$^3X`3mKy?{~!zk-#g(2mD!joI7xA7JG zTB+IC!d9vl_+2Rga+E_L%+qbAbX6JNd^U7do1hX~H+2qZ zgH7Gg;5B}}n~L|G3*6d6bqc~Qp63UQy5%yccm}NIJAiyc~FKW5yldyg2H>xg0!9HZd7}ddB_f~I(p+_|a zV=iyAq#@`ZY-SHpW9i{y%rNYGbZy%RH7i)f*GH(Y(Cv#O)teEI!J@^E&I!=qF& z^08fY(Tfiv_`^{uR1E&%uScuk*WBZ`#;IxaC_80>8f6r2^98ADE<+?fDTGds+UBeL z++-Ep*W2v=6!k0NO6oM##geD0P3ZIBw!_VKOjS$h@!2C_p9%yQ%GGBzcNlFfd79b+ z9QkF_)KuXqEBmWD2>kp%e^uu|evNgQsXFjIgJ)uY!M?|^S*lBLrMNVoQgEWGz+Y9N ziK+@vc%qsOtgGjI>umKbsq9Z%peAFZ9$u`*vxtRi?ZEFUZ0SNZZ^rNVMQVYJ-wPIf ziq{sa`7`2YEzXGVgAHGO2|{=`=(|(}m+dJ`QmfTj=yLT&;CCHXc7=K^BmT#gpMEb* z!&=qz7h(HX0ZW`=vsSD5S+3PsmFd6xeEj`&MpV`{SW@Z9KV|xTAk%MU?Wa85GyUG1 z>9>2`r#xLU{oa}Bw|)JmJRLIq-j?aN$Uo(2lj--COux+=KILhV>Gy_AzoRyO%F`6T z4QK4E`Wm1>yw-N`~^!@w$6~_uwu?ZyCp_e-_@6qjl@;u$7OM4ew}n z)>ScxeA}PufC#MKq+_ZPCo`{bTHQr&_A%#G@b*~C^J;E@@#oc2!ZUvKyt*m|QWOL4 zVKqHw?eD9X!H}u?KwTSb80}#B`)VS$JynwoA46TAtI(G}Nk~Tu-<3s+ z72F?_s37_0rT2fmI0`?qXc9UaV%1b!4{}(wTf!rjMbsqsbO&(fCpp2lh5dI!{g1~4 z=$bO37DJ{#YD$_D9s78v^(jwAZ@9PEGO7*S*wSE@!GTka6D4erd>CH zgH+V10BeTzn+lwuP3YXL2RH7lsa2~*ghg6P;3zObP76}_h2D5R|l zL7~aTwXDHl=loV0$#dDo(wYa?mv^N#JgPoqbCR`M5s#f}EQqWa^J5(Hn$t1}65P=0 zGia8KF0fn`v_ZJ-tg4`0cg}MVIu3?7Gv3*P{o5db5v;ozoX^rKYO-g6LzmUUE$Bb; zfUcU)u2$4?;UPG-l9oFkY62erFS#6;Ty!DD0D8iLsm5=(lU~5uSJK>ILJh4%b?~*7 zv>{~pwM13z7l4gbwImqscwbfX0(h$Fpo9+iH`TPRG?xdfYt1oj`D$p->=3ZTAvG}z z?m_xbY$09Fl9jBf6%=0ct~Irmg5kBDmELTV`2DZ7ZqUNyP3vffgJWKU(jj?nTna0g zU-PfN(W)AeII@Wb>D$-5Saa<=W6VxRWEAd5{;2k7Vi#N5QhTjEcS3*Ch;a=Hny47Y zYhh-@L}0(dQwsze0QjC(+Ik_7F;p>5BqC+v$BZ$VGR|zHO)?mcI0ENy&Gs7fM(*-~ z9knX3cEyi$(r`4wW<_VMuwXjr0EIYfxj|;Rx@yC4*strVT{Rj`r59e;Ln}!e{>e{T zEnM@GduoZ+_ryZl76fDF#?qK1+``}UAw9Lcw5oVtO)_+YICs(3h9iz2C}w?nl*A%86mIl!5G~RWDc8qMvmmj5F`QNRV9<6~;sMCwSOF4LZ)h^BR9?DNs@4M-FTKiDIvPR69*$ zlINIqnap~dPilK;@=u-CCx6ZvZ8$zY@$AQu=P75kr9wfVCQ>&JHRA`7yma^z@uOE74513)baSL zRvTBn^4GM#NKEq5HOm`ik;&TmLp(Fgz3+<2~4{+&*Q_T}x zngMd0210?L5LUm^uE(x(`6pip@ei<<2`baqybdw`8i7*-Ot znc@aRe1j*4#3hm#M~~3B9SD9I76+pE3A+;>SG2$r=SV`jL7P>uyaK+5O-c5|q}p%P zSEXi|pOS&xk730$+x(Q(iij(U;v*vB9HO3%(n&|vf_;BEZP|t*Y(qp`wj$4*eq+}d zV~}9L=^*4XhMAuPtnT9H)Ihx%(Ie@`qGx%^VYO+2(e@e~v`GI%UG3CVI{k+k&cb8j z5`a(N#KiR_o%dc@;>H3?MOoqsU<;SB#JOYN=?}*kEB~d@;pTU&oh7atl;_V|;$WTX zDT@>13d{IrHAv?QWPI7ySx|E6B*sCshK)xS>4`HV$EOc_!p@0tS&>7K;&K)L_xC+b zFO&YUr~m^?0s35oGCuMNZ!N_^V16LGDaVxph_|8Ifvk!xu9RV*i(L@opskF#a4Du) z*m48eDqCEf`5AE)ji?UaCUiyYHCtQ_=#Lk+$29}TpV{N$VY+LpJ+2c*CXXXdf%0c{ zM;yrhVZ5(14g}?J_S_Zs7r<_J+ziO^xAeq;-8GV*@Wo+Qj$#eexbjeFo<(33yQ#+I zc8qs{dW>kN;Yg~C6P(NjgHIa`cPP2FI2F07X>qe*Dg2QZH#BJ!5ot2S<%i*iKOe5p zWb8L3#q_Lym3xMmd_hk2%%nieAx;0Xj3I?cGl=-Gj8sqzFcbf2go86iIP-w; zn+4)77^3kSXCiAdRq)}X*wMmqNueWL{*f;5);&cq1@I$QB(6A!|0zY{s)gf`_f{#a ztW@@Y#hnLyRK@nk?=B&Qr6lwg0xSbahakm(B=QubBOOBT(tCG9?>%7%H6RKiN<V{RUbUxgf_Fl3Udrz5=Dmw6(a*Yht2F15%Cp(U&EsAx zA^u_cHdVJTK@KRn>m;>=eb*AdP~yLP$(68$TX)x%ke@8!Lj^hH+ETushPl<|!!m6W zy`OPuTd6xIg9@o7c)MQSGtCjXu7t-E%kul*r|=J()upHO@J>^=1C)-t zLkj8~y}WmqXFg1gu@gQ%#wUE3ABpf5Uv9bafiro+UT#5Nt9$hFmgLG}N-wsvR`2NL zRozj#xz3WUxJJpS@+whOjF&J=R4fXE$?Hb{DMb#TE4JT%Q-%LEX70$%>)kL#QLywBby zsHqDM@NUm?T^`__nm235ag*ModeT5|J;vQN&^wu`>L72M>=6qGd8=ge&3$8#ch4Jx z%0+K=E#7k~pK9ZZT9U`ImclYv4lDNjElO3e{VRj~$$Dyj6?eacrv$lIVQW|osUYRr zPM0NdYalSJ#I1#OuwGxwuNp;5$OZ@w*+@GLHtEgBViPbhA|-J@Gh4%7TXDl8@K1N!s^qIJmaw^z(km|XMPEFAVf{Zo&r;08c4ae z&mJ$}e?*Tcts3X?nb0Ka>H3w@>RmMhb0*A!*&wCC%eFe;pQCq{K|R-m&ZC~c=VlpI zz@-*oFN8&~7^J-SO4ek=zhqBcubSk^vlM$7EQb|(e>L^FURzyt=2M6n)m7by?YN(W z6kWT9s>>zoAgYKL@x0{s?x>;8a-Z(9nyPUj@yc4Iz)$cqWa>*bRXg8Dm`=<1|Kuy> z-}n`hxC&CzKXh5YVE+m!dydsoUYDz}z80&7@I4&HP1pU{55RTovHDUi6-Rcag1XRn(uPE&Xgnn64yfRxqD zE_fQv@wb4iY4`%ewZ!c_jX#>^pNjMSC5OZBt-(mvpcRwz?_qXdYwR|GHE{bZ>n2VM zhYMsi+EPCRIUy9nARHnf7X()9FRA50|CbDOhvT$kBJIJ~fj?3bStdy&uuL8CcLM*R za)*Q8!G!*r{eK4=%(mK%e}DO9W#)b2vO2R8U7#y;gGA^KJ)oy9U0=oI>V?@GQrx;_ zeYKfa2AArq)`i6_>B-4(A@(B3bn7nlRmYBhK5fqNjI#iwB!1?y7Go~~Ht&j4hxp3e zgK?^LRF>Pa4$%FY4v$k6ZawP%lMMchRrI=LM5r)ybn=(L8ag3i%UwQ!x( zEgGuEQNi7(2s^D$G*A^D`ZJph*2w11ec`gsFyuG>t?TG})kB4T!@k1*N~P}__I0?S zlkQbX=3<*;QGmH&U??Rd82@YWh+m6;rD^ zW(}wbi@2C+-qB_4rY=i8_Dh%KV^#dhW!0iT7E;`M65>@e`6{z{393`^xwrfrhuHI> z4)EmCHeS`b^(6EFz9!HV9)xDl93<{ORs4Z=e*5-gy|eLkb?6ITv@BacbDt{j8~%sm zZ{J?lI9dMbj5Pyh!U9+bi$F>w>k>Tw#rT(mSYg2naO*%`N~iMzWNpkTf&b9=zd3zn ztr|~X*_Z9yahJ7>)vymIF6gjVfPL6lRz2+ca1Y4rS5ha#z0e5aAp!1##_+o<^uK!g z3M6%F{|6j@Rh`1jSAhm8$6m9a9s{c?PmilZEZ?nV{i`;7XXCK{?@aI)$0yw3m4Pf} zn=>vem1SK6JX<~3M2&at)%%*L=EYyQ<+iLBv0sAqz-g>Y6ICnJo~vHoM3ujPAO8LD zGDs=Ou&-d-!&=s>*ayJYTh>PGG}r_(&TG`K>yb@ViGO<#9VGM(I0RB6%?rZ7rsQCF zlfJ;F?r@h>{I~m1Hd^kiOD}j(-OWct_dTd$YktB8KLvTYc$8Y6Rt|M?S*!QkPbjeI<;ST5VN86{x(w>6T|D7fN-QD1krI51wqH9mb7OIOYZ(Ppcl=S|VYKALOH)y3AM|Y>I z2lRwq&>Q+dU+AaTwNhUFdMj1MHBw({rDDrS_$U|+V<0$uEbVbRzP0jJkg)L(*ek(d z{qRdE%6E?}X|2len|wRaL?q##4m0%8)+)xorI|EkOS2&R5VLjBHmY(Z+0q;nHrF9+ z9=^zQmlfZYo9t9675SaZ63u+0S>T{qsM8tRpTQy%w%8$TiM|#HTWZ3VIfO0OP1~x< z5i96g3A{JfR>d?+G0j!f@&L{3=CY2Fo0M{wU6wZet4+U3%<2!x;Pi@r4RCrr-&Soe z^ai$E-%8&h>^I>pz2zZQInUde@8q-+UOf@!siRLkq>B1J#3e=QBk&P?4AO>#q_4v~ z`Ts%V6ZjO4nvOI&@_t6+bNIqIU&Wd07>zHD;{=Y-TVtIJ^SEWuWf*mi6Y`ahKPTX8 zI0>gf!UHLt#y$hz7{90wqt1U8$2m9;7wpc23_9{&q;UzpHO^(HNa;HomyIJG$E}p2 z4%3>MC$Pz(Ke}{Sd$qrOOsJhhzaL%P-^d#{P!_y!g@LXDPgED$t7csy@C6RgaG##vLB$j5EcEaooT|i!)#C3OBU9r1CB6Noy&=aKOzUtDaI;t|!gN!4SaR*~R3`1Zj4Aaq_ zROK%6Fd9x%9-$+svp+&d;*&I=V4G=|>@=rdwI6i z$eQXrGrrI0k{oo?^;3c2XPB^=4q>zK$?&U!hR-y^&o;U_4m$of)x~5#&xFl)2wQ+p zhCd!O{Ggxh)mdnCiyU-|_2R(rOH9~Ohp=V%WcV6Avli#58GgCZt#Ht-)Ylo_Cx=*3k z@ZOfFyuNdEo(DO%rT4PWF_{c>0iQhEUZj={9-%Mr^jh>cmvzbXe{1?PgZk^y|DEZ- zZ2If>&eC_LKf~_tY<+J6#s&pUB;W@#z>lVXS5W_I`mdP&tET^QP=EL}mwvpvYUzs5 z8Qr-6E7C*Na~0JsdT^CgEX=ZsLkT^xhl=qxOVW(iX+2aCf3pq0Z3 zET$LAfh<_xzV?Duyza6TzVcAP^es1iE$FL=?=GmM>-A)tl`*S8Ro$znD$-IOpVer} z(?E6V>`wzV@JTtwND^Dq#MW|%jnxNxGRfL>-3@hg23r_h7qcGJhkHOuy_+se{Bh6# z8XEuKjQ?KRjUe9mr{1u)o_Hvg zTQ%`XlFdMp30#>clcX#~b9|Ca3+n92w8SSz?$G{0XHBDPWpu3_bZw08psmw?@2v{? zpTF7~(L)ZRc1Cmt(R*w}N>j`2PqMwyb#Tyi)D8Nm$~imH)mabiqvHHq>S7dK9TeU0 z$+V6R$eLDem%XJ#qwDUV>#?e@svOgko?cKD{EIV?1>(4pvcu)pt@`q)8LL z5uVE?JWuM|DP^g%^o)o$mUDs?nIm)}~M#Ih1RH6y%?hw`kpA5f<;RAcFMjm_ko<`TpLDyUF9BwYe z`k1i34q^TDZ-n{Z0_<A#4Ud z8UBNy;WNzeGmUPRgKoASG0H5?91}LzA#5H#89r=e*5dSvv=?W-(JgS$E!1BHhF@gD z7CVG3!6(DV1r2}L48PRqmO1E_>(--9_A5--N{6syd@}sQLBq#K+1aNU-6{v2)~^JH zUv0ut9m3Y&li}9|4WDj?Uu$&h9CYh-^)af5|53HUgl%*POT#CRsy9d4Z>-nO@3tmz z%x}U!iFz_jfvGSJ9)ZpJ*)cq>CG64P3EQG?N|-!?9wSU1kdISme?V^Kw?NFpf13$= z!Xa!sK1uZ6(f&lM^($a6@smcg!$I?u(P&$v(v9Y6quJ@8N!QiKnXI2NVY?i{p4C$b z^Dpmi6ZV`#*z@=#>y$Be*2x9!toInrUI)z!M)RYsQ74S%MWcDiL9s6L)g3e3&Q+Kzh}bUcL@7CK1q7)czda@m<&EJn!^s74~^y{TchHO*jXPj znvWbbAL~~pnymj}!ai{b`&4@-nXHeRu+JRAKF23n=b30{U9PB|!52nz%t7;|(e$-7 zYNXK|H=3^;G$-_B((ykSzcyhf9l}oOxXC8#(~ zb*i29?h5zSg3xNFn`uz zCM?_`ECQcoePo($%Rfr1ngntgiN`^b+em6ZVlQ=#XgldVMw8b;lTYt_#3UVQ!lE3) z^6TFSizq->L8z*$`^eaidAKH7dzyN*GN^ z2TioT=`)ikWx`?{!b1uwv=5)&Y&ri@PL362Vm$rjCQ@5bMr5WJepaJG_ zze_9ptwHX0X+!NFm~Z!sn4uO&kHsM`gBp}^TjQ|D!vvTJll0CRs_yUqSCJI{)n)yi z_$RZuDd3>-h%+JM^>EM6VS4OLRi*k|0;SX|>$c`$&xZxD5M*(V&fq_1FWK*Qg?Qci zgPBZpC!I1;99BB^Gq4Muh247GtpCS}KF1~GaI zOE|8l(X9U!<_VAydp=>gqh^1&}h2u8Y{0O#2w^Z?V7AUFND$fR2Jt2ns_HCQfE zGEf%0P!1H72PqY(E5cn+38W1P%MP>1m1$Igs!$COC3H`xCvSCHHK3;P9>$rg7L8cr z$iNYLYp@T)J$^T(>jU#ukz)5?#z6yU2={_?H{xfCRAKE| zpi0L!r7gRq*BtxUY60ayMjd~bTlZMNO&jg$Yz3{M4RnBqpdGZ= z>lUb(F5NLZK@aE&U7;H!LNDkIeV{M&gZ?l8r0}hr)aI-c%aV=%`8cP;f_sLB?ahAro@WJZ1jTMp19y?UXF^-af|0W(1+8b8-% zm17~KWDq_JzbwdX(?5xR7Q$*ldk#n`TG?&Q#g@2vAmeN{aS7?4a171Iy8xtK2#a7b zERjs4NT&k{8L0FBlS+=RPdSE`qFM(2q2z&yGuQGU$6*|yX554f8g3d1Nk_vyhoV;y zx3V68#7Kq|aTp}0_$qE|6>SZxAr;nuEc9CKTFib}hq)d$z(z;|>E5Jk((T)f`6z4w zS(MWAvlj0$d{XwZmB&roRuk8gxMldI9Hrid{|VS``q$AP*h!i6KZ(B?>@fYG+uJGb z-%C&7lv28?+mgNgH0;!0OMdB?&%iE_{O((jmEW`Yqzpo~+r&L*;*ul|zm$1q*yrin zWBT{eAIR?-{d@7h0CK;{&2fR-H-(8~lEqn);Ap@j@S9e?AWB&j@>H|x8R=a{J zD|S_1U#g0zpD=%hO!x)l`EwqsU$K9aHeA>Bm#H{)1M?G32ntbf9G#zE2tOx5TYU)iZ`0r~i%vh)mcS9Yh3sTlGZar+d zY>|VqzTUKw|GqX@sd5)&3dQcG&HqCCDsKGD{g%%3k_qxDFu0b)@bDanJx7LTBirqgN_#LRZYdCc0tECS-_2 z?CucQ#Lb{hoS?r4eLbO%lHR7-M;}P$6xNq!Kj;qwU?9jTY>@t*?ufxOW%VD{ zQ7NiK89D6_!6ju;ZTr$?DD7b|97gDtDGWLia}CGZ^|4Ogkk9hTu=4#8KnD@<%;9k;a- zI~h`76=+xu{!P)JioFKb!a7(Fd}wxtzz%qihCOb zZ&j`&CTROg;wU3OLH~Am5_Z5-I#qL*@Y9$(LH2jL9-OKM>ISP-vga~Bxv@B@o?Cyh znhz&j*LhM^^Qhb6iMgSNrK-NZcQAvu{@=1svz;^W4V;B@aMNRzur6R+giG)(Nba5M zF{#}8_-a+Wj3kta-<6w-XpmC$9=DYPI|TS9*fpwk)lkeZ2nQ*NghXKH0=}2b$_;rS zFXYqFYdQZ#Vn#uJ-FB@ipa-p0-eOkC++3|*4fk9KiEO|*i|$gu^Tw97>WHTuwj@ZO zp1w}q*H(jSHg~?{l#rZcA9V-JRGHx&E4Sk?5 z^dsAYzlM9(ge2bUw)*240CGqS)Cn6oB$76$c+YZtG8{4b-3?^DPJh3FtZ$1aX1$Ky zpa$l>J!}2qMpfRk)C^JE9>UIO4bBa)5z=52Y$l^~H^MzfLe|B*tw-@}0mEuUMq^k-)|D+n_ z&kE+!0a4XFdd+4v;Ge!&;E(4Wn3LYHh1HHR8$WlSz46)=amZkmsH;JBr~x&h7GLXk zcwU5OdFa&p-Bv7~+Q2+YKBivw^uv~U(5KHl#!8RSp2u0~tT>+3h#9GSKCb$fZ;koy zv(`HvQF&j5UmU6pRKbyC2~5*jxD^$rL?gD`&E)_@}`m z;M0$8Ro*g5nA0JUipUx?aa%L+%>=$%im>vtG3S^t3E^W0mzG3$-1AtHSxX~4dFRu) KK-bu&D*qo(R}GQ? delta 108424 zcmeEvd3;P)|9{RocV;q~kxVj^$;`wOK}(djs)|oy5LG zgd0u}#J&X~7{tC4ODrJ>f`}l9edqT+_s)!&v`@d!@ArCr|NB+%Irn_dXFH$sIs2KL zd-xHbV)gne2B-2!WVz(Pe>wK3bOMz5*5wqbuC^DE%9$6vM*x#z z>L8pE^F2a`<8g$qIocA3GS<-})DazOTtMnLl}P7{$avpb%%;RnQJ!(NB8u{->oHQU z%yBh%|Gdl6u3e`ef9&3)-FH2{>d^Ds9^FH3y7XUv{oT($bq=}Z(s%3d9Wp{j#_Brv z?9u(FkcF|j?mc^S7BA7Ay8ZOkkKcaZvs3qWKlSYJRo8akcK^0#$UNn-*s5f{@_KAl zcXq7fFG$~X>e;SS_l_Y8VvQ=*dmVo16f!5)tR~*=^i$6sKXwYqiVaiKvMPOUthwWF z-Cu$#?Yey1<=c>)SmX6ZBt#~r$+1VB3H2X4{qr4O__F?&;PX|-PG5i1vGcc` zy5Q-G=eus*dwk#NhaZ1(ck21`FWtH))Nk48*M$1LerwjO_rH7n{>Pv0#)%|}^dYbI zCH+W$GJp&ugUDbqgbXFgWEe>y!$~R`K{|~j-MWKcqecozBOONpG@8`sB%O>QWAO^v z<4EHSGM-G(QWHtXM=}ZUCy~hl-#vm%(TJv!X%C5}lg2YZG*cs*MLIqTqS<5)$s(QR zl6j=#e3DH%El>dvs0w!Rzg|npGP0a}S-)j2 z`EvzXNmh|R|8%b=YsgwW>+r0{vjNXWJe@X?&5*W*{Hd96E9sa}e;dgo+sO{HQy}aj z`Q#S}PpJQ;ra-6NWDnU(_K^b8X+P<70D3fQnE(^~*{qN>JBVT)g5eI6A|im|d10}e zH2ducpuLWgW2Bfof1I2kCrJr8MM}wOQbwAc0ohq{P9;Hknzig*PM&Xe9wePEkWLqc zDJ#e&((y96LavhD-MRyCja(-kZ;+d$^S8H1ZvbwSJLE1>_teyV@<0@(B{CA-G>P`1 zo%&KySPj;X_7|W5bRccmX^@)HX)ql^htf{TY6><1=AUm2qrG6|-YK;AaGFYmAB><$ zWF#I@`3gk=(`d)uEjxcZ3NVn2rg?LXV^F6p}%U$awn41UeB|6KE!# zL?_cJbSmvQjrN*Oo7L+*gU+P0Ks%Yv7T`HFi_WF<=zQ8c8#xQ;LYkxgTSOPrCDcQg z(&cm+ZInw_(3Nx*O;|(MBE3#P*3*PdbfYh|nSQ&4Zlha~&J(%Y>27+GZjpA;d|E7Za=niQ= zyUq5nz3dLV%kHuJ>;X%ZlB9l8e`$a;P#Po+mWD_N*kv|UN|uI6DbjE$RXV{&NFyah zN|Q!Oqa`jCvV-gpJIvChD{PE(m0e@k*$sA+m9R7HJiExwvawQzG+vq@O_VaFNz&vF z(iCZ`RK$+3qwE+v&WhP~wv*+vZ7d<7lwM*5Y?=h+*eRzIjLMaFI|u>N=4EUsY1HsmM%+Iq^r_3>8Nx}+9ioPJT4VWC!~{7 ziF67=gs@~?qAp1{OjlW$53`@HzixnTpl*47{1SD`=qTMZU5YMM zH(kedqjl-JF}kt3ak>nhQaj$_R&*nEr|59q2wj?Prf!xlN4H3~Shqyy(QVOf)8*+d z=?>^BbVqbYb;oqYy5qVNx|6yR-6>tE?zFBAt9oC)ImFv#yF6gf4uIk{=`2U*jrf!V>y6%Qh@2Bst@1w8eP^v%O*4@<&&=1rP(ht@T(T~=r>$%=NRG+LL zrccoi*Qe@7>PP5(PL-w~r7vLDVZJ;#-2}bnViOTRbg^Z0vVNvMQ$I;ROFvuhYaMg+ zbAt*qRX;@^SQwv#>G~P^0ymonmO{h~X?`WEA^}NtMv=@Ir?0^N54$JT%WC9 zpkJe3t6!%_|DoTYhgCP~HzBbZhp({I=B&==_U>-XyS>A7K(;gtTg{(!zn ze_UUpKcPRPKdV2lzo5UUuW;+H=&$Op>96b0>C5$t42un03|kGi_4oAm^$+w(hD1Xj zLtjHb!!SdNVYngHFv2j>kY*TV7;PA97-z^Zj5lN&rWvLiW*TN2<`{PA^Yy#+d-VMc z0}R^@cl3Als|{-mYYpoRH}tpk+YEVzg@(h1rG{mO<%T5&kD<`uK4>^(*lZYR7-Sf1 z7-AS|NH!E1b{cjW@(sHU>kS(W8x1=QxrP;nm4;P@J%+u8+4=&*e#0gGW&Hs|!UV$+ zpl>ytHRRG6hNFgKhB1a>!*N5N{)FMAVH7DbaNQ}x6}n1aYM5-e2_v00lo`$#5|+_( zhH}GcLveev+%bsot{UD`!~1IZz|bcYDE&io=^#9#bW1}A zhYk&07Al(6$WSFTEp$}q=ujS-9y%s;Z0NYq5<^C)l2RwW+WgS$&;_9jLl=iG2^}7q z8aga=NN93sO6YO>rqFU_N1Yf}5qeWOUFUJPVoWnGHjXmRH)b2h8)xem7}t4+lY|^} z@~4nEMHd>EU}U)*D$)rPj1!C#jhV(t#%acx#@WU>Mj#m%8D|-@j7y9j<5J@S@R@9! zVw`H6XIw@T#u?Wc*BiGOHyJk@w;Hz@^Nib#eZ%^N^$!~m<{lU}DC~}LaM+Nri^gGL zDPbeSMuc56?lk5bON_gXdyM;yMaE;stH#U5Gse@#L&iemVPmoJxUtk&O7|M~84HX@ zjY`<4u;F2&!_vZdSbEr$uo+>q!d8XlhOG=+6SgtzP}nKDJM3`S61p~QL)iYX17Wb~ z!LVFf6t*YKolB2|6^5-3TSjx~(Xe9xmxP@{csi^M;hC_r2+xI;BRn5=0pZ243WS%! zE+f1Wb`{~Zu`lTDLM znWjCay{1#9v!;`#64NZ4 zratC5<}C99b1q$oCkM|WH-g1@mf*=XuQIPNuQcy4?=^2VuQqQs?=u&e_nUW`mztNG zcbW6d+s(Vpd(4N;N6bgfr_86#W#(h%V)F^}Npp$$jQODXkU2+mx@W;mJm>I~n*lg4 zf(zz*B1)>#r%Dcty}in&D!J6Xqsrzgx2oK(k{DhPo*$kSz8m4Z@O=o^(f#4K4Lib@ zBitFD8=gydh3AEfdO8qZh}6OG4G0f~A4dKuLs9t2@DiklNA!sh>3$Ju5u+lqB2F5{ zM@)!Fm==*4F*#yt#H5I^5$O?QBBn>ojF=TMJHkCDVq8Q<#IlIx5xEfyj4L9b;mU|r z5&I$vA`VB)))z$_0eCig+q>*&#Qum=^Z`4GCSPJW7_o%T)+ZE3ltrA0I2&;;qCDb! z#D$1!5!WM1>CuRbK)o7~LPv(KXE!2lf>pvLD0VC2GQ!&tS0Zxhy@)#z@W1;JcOwQ^ z23lt82U&(%PSG^WD9dOIw+yxnv7}p4EyFCiRI!Y(tO=WH5x$%tTzRr(ie-ywt7)4l z&otID!Lr@7!!*t^(UNc4Y1(btWy-Wn0@NGz}{M3`e) zWvJ~Mm%W{OdmK6wBT2@(BBVJ=!i*TJ~J;Du^jR-ecHY40(*@|$RB@f|t z%MOG)ExQorTXtLaSoT@=TlQKCEC(!CELSaqEXOPf#g>E^rO0yBa?*0fa?Wzea?x_ja>{ZW|8nUa z%OT5M#7bmZB>Kq6(UGG1xf-Uc;h4zc$m5Zy*j#!d@?<3DX>iZTbHFZ-be~6bA@U-^ zipWa{FGpTMcs24G!t0SY5Z;Wuh46Od9fWry?;*S&`2b;JR8mwf?Gx1(VZW&U2nR$B zj1s~JMGcM`f@i3jN>;;RYM7#i!__cVgl@wKH8D~R6*Wv#!%=EDS`E1xrmNu?H5{vk zf0Go~V^ktD<2315t;<#AuR(u|%v`P}MnZybBi) z=_Pc3lxS(e{}M!YVN?#hc z>VDLNs6=a$^=wohYhP(!{zsIsVm*7H$=tQVp#MpZ-&ww{Y>bUNycJ8Fov zJZh*FPLXaMV;yVFu#UG*uuimQS|?d2Tc=p3TBlj3TcN#>Ia-xD&pOxoKg-OvYBC2| zXIW=k=UB6>1FbWxLT1zg>rCrV>oU5;deUuJZe3wrXVpb(B%eAwrzoJp$!9q zZLw_$VvlVp(#veiZMn7;wv{%Ztg@}Pt+A~|0`oxI2HQs4CfjCP-}qBw^Hk6X4QAjZql=(8#_jCIjBqOV2Yibg>YqJN5>7oBWRviG$Qv!~dH+f(f$ z?1}aVY_NTZeW<;^eSqCP(0+>cvG=nNvZvd}*vHz(+b7uPMK8C{vuE3L?aS-HP=qxPHjTlU-bJNCQwd!W9L=Ybu} z5@Qe~iJ*@NHie3R1I6nt+t8R?I!wF{7eR@AM9e8XrS_3A^PbpfV&)3&^B~I;vovN|j8@yLk-mk>$cxz?v(UCPW>-u;azyp)QFBhj9FI8}bIUfs z(a+J}ff3d**fG#C)RF8M=16f2cceN-I7YtgfRjvgOm{4DV79u#vC>gWS3A}?Ryo!= z)`Mt+W1|DIH#zozM}=;$W1pkIQ3%}gjth>9j_ZzVju}qnizgeoMIW@*dB<_vao2Ir zao>^T?Bnd~?B^Wd?C%`n9PAwA9Oz7RK5!&EhdPHlQ=B86iZj(Y!kMtnSroC}xxty{ z+~{ny$vMi&otvGb0o>x;>fGkcb8bgE*Sf>G(>caD(K*S9MYft=M)RG!oqL>no%@^# zjSf1m&;!mw=OO1|XOR;+A8{UY7CVnSPdHCHOPr^i*PKh}b>|G{4d*@QP3J9VmLfN* zXVBCxReop`{rY9+73Zag3XSq9bk%tq0s|Ei={wH5P~{GuL|2lluWN?0pR2!XfNP*j z<=j@|eA-#&JmWn3H(Vb$2f2c|iu7RD5Z5v~7|$rzXcq_9bXTTpjBBjMwVlRwoGZhn zxJJ5CT_aq>UBg@{uA#1Em*13r&C^`tE6EV)39gCYKLO8N*F4vJ$jEjraV>By)MRwk zWZZR3a!qkfc1?9@B{=6Scg}Xram{kgaLsg0b4~vnd0DQUO7cW{k!vwzEyA?(5Y za_w{NbscdXbscjRBX^JMxNE=b1m4cMX6tXe5@UzOro^T;iiNi%B=Fc=DxNX1vtwt( zX5ejB?DW|2h-b!5iJgczGd65uSu#nDU8BfP%Vf0D_vw7MRVEfDmzC({3Oq|s>E#f4 zMzJJE%d-)Nc*BVgLgXx@ZI%$Z0yuZ^B$w({I)Uv}X&h=8Bj0~SMYaQ3vW$+650PC> zs79Dp5h7DL1EibFBsn%t+0!J(T}`fPkyKt27ZaJu*{AjLgX5B1L#__^2Bh-w6ywo! zs~MzQTBIs14$?wZX)mTHCMH^*VIeAMnM;=B3eb)`E6MS3A##X?_|&Q;)Y{-i=Ajux z*2$@5FagkNd(pi776tOlSqO4@4KP;&vraI>M^uL3w{@bx$_JJZ`)Dw~ErI+FUyETV zb1_gi0=4c#ROS9NHB5o&x=m|59gv1$Un~w}b?oYY;`Dpd8l;|*(KNPI1GSDGQ^Wf5 zgecW^2@h>|)5q{C6zaD~R7d6+O|^yrs@(&_hDx<&v9C5#Sv{$SPsrI?Wjy|{>YoxO z$pVWZS;EA{cq=_8$&G^z_q5_}W`D9tFz^{4>6Hn>nwe+y@->h)4bWp#vl{MZ-t-FO zZ^2WDM>vge%ob|+oEknW@7J_z{!qK;g$O}-IvUDV;6*6+La-idLVQ?*Y_eWXJ*St? z18Z%Fil!sN@02dht2bGvK~#XKozx_+BMJ$#qhZT6pcU1;J^)i$)x1WeAK+~<8E@@=i8n?kgjRnniW@yxaWWf~}wy+Bmu0^|k(oX=H%KM)|8Wdt%S%lKPn-lFBH<`hCFsI4RuLPfo9 zSB5@U)t#@EVV4%|MD1ukxv_AP~^GMGbO58PuZcTZc7W4{6cC5c!0ra$$hV zMXHb$;5_^y${|_-Md@Q{>A5|{3us1zc30mx@UMc)E^MdB5$19Q0oQ+%Hu_I}bGFy%(&_E>z06=%>${M1;$LfpD3MN_dx) zi7&)7x$J{_2Y?Me=N9#M+=$|&R%j!|l>kho{Dm6ktAT)+mNnddz|0eRIU8ha@MxZL z-8Z~yL+vu}AbU-?O+K)S@RZ{bl%g}ct&!c*qMIS|<=SfZeZxmUkj zu8`zD1bv`Lh)yku#1V^Lo{EuU{}m=LLw-LY$t}r!iN)Y!s#b-UsroJm=3D$c2L$r$ zFL;LfNdKabAYE?$A4sdHbC6JPS(M$fBRp7!azn1}&XZB;E=)SCV2>bsY z|9~HVH1MgM3iP9xLKXVZy)|~wkGCoYTBHL_Or;K0LObk7n?8|z$`~ZGaR3e{0E5lxPx>E(75GU}4Yj|re z>n%ok3##IXw^@wTq>TuW=Hn6@PlQW_sQ55xHX2vTWl2sGj74H35=xK)KC^(dsjMc1 zEZFqFp!FB>^H&_^&WO_pyiyaqC|YKvBS zRcoYE12B~~uT?is3k3Z3TJK5!E~#QaKV z*~*01W6TSDP$6UO>(wI{`T$-TIZDOr_Qs1UK^OaF%*I$_kP~m{k_L7H+ymss5(x>vh5Ilx$bWhPA?*yo&qUk!Zf^dp3%^8dE(nLJ3A2 zgcc$pR9Y|Euii&n)z{HXc+>gDKj78%;t3h*yO6OE6L(+Nxk;7b9gR0Cq_yk4ZA6_9 zY}KMIM7|oW>b_a%z5?__&cCIN{o9G07tnxrs0I-z+vkW8XCKf+L3S$LTe~{v2U}#A zckZ$)z$EGrqngJ%c}Tymm+xaPB6tc;dxW|oAxyG6$Rrzl-G@@q+SO^FKukQMA@0=> zGj5~p<5`MFFc!0(Lamesv}iw(PiZ?51p!(eREs63wY`WfcoTaOhm;;~Io(A>K1{Ib zAUIauj5wlZ+`$9~&mufNvBx!e#aeWX$P??SHa;rErUQ}48xRT&PZIfruyLQNuxK%W z!Vae}w-CE9`8O5A+fnW_8lN&PI!)vx&D}}`yL|X1kq6z?*qtNt*?=l5SIZ_)v?@ym znhW<)G?q9N@|7yP)j{9}<-;Xs-p<_*IRz=&tfoo2XB3X?D4(MK_4N;!)Mw z*8_CBtroBd+G~|O=$=-|cYKBr@^Y={(NmElCO-EtcUI=NvAb)?_eDJy0$zgWDjtC> zDz6V!qa-a#r1E^No*xLwf`G{V?rW(1sN9#Lo-;%}X96e+HGs?ctv#;@^CUObhA*yXSRXZw??DqiH#G`3UMk-IXjgA>1#ED!gPeq<6 zWg3+g<@2@!x{VIj@T#|q7$r!`fqWCsphSb54f#UPv6@}SXi++qCu$YT1%X%jaa4GY zpw=oj9rU90W+?Bx>wI$pmB&+5p5R!y^-dHSTab~FWRUX_Yvq^}tmIt`S7M_xQ(5%x z`!%KnXCAn!O-LpSg~SN<=zHU2b`Qv^1VGk`1XiT{uNb)9lt8TNjR`-E?vk78hY;#l>9yVDL=ZlC|Lt^;R2;TbZ@Pl_T#CGk}Z828q_&QStYzPemr$m zQVe#YZJt%ye&DJxGq^G~U{De@HN#gKLq3Q%&k8i;QUGQL0!jgx69}+<7;nxB1ibiR zE%V$!zz@Kf7YLXLjQN3pogdaTX9oiA0I(nsQ1_#n=7oWP4?e2dEGGaUDgYgpFoxP0 zreX7PrU^5csr@uNEeb$Z=6_Vnyf_eWv@)Q|$F(At_%OUx;8Em{?ah|@pc}BIkdC!{ z5hQ30VR&02k@3_y`S}*C^=M49bk~Rm14G432mbvtuzv7 z*nE?bqhpW2&l^Mf^Lo}YS$s>?u4m+h6%b|@1+wO8Hg zgQoRGe+1NGJX%%cE4x39PS_<(FETM1MV4q+d#Joy^yI;fcCTXjm!0fW9{tykj{U*4 zxWn7$7AOn;<#_dw*0UbeqCzSk@n#LS!7;Vm0&^9%KG5+1SG3z=UlF}{$NhLK>xn(I!3KFvvQ9ox3GJjGZ5P;~ zvVbS*w8V#3cv7!S`z)eCX>ei3)lfTxQ$jPKz;4MyG`p2i`LuHUGkeV0V2bT^Rf;o8 z_~&+ad2rtK*;@Z{PO#emM%(ce;nA#cAsGA69c^ehFR+W@=;h)8b|GTX8DG|neo2ce zs9dDUz9L!C)tEeC`A`2nwaQyT?2obb@ z*_;uy`Pdk#L~HPBsOi2{5 z`e-|-_XHy`qW{(|-u%GlX96&zT|7xtwzaDo*N>?c*;kADFnOXzo5Z}d`u4TV{aHX4 z`7{6n0s$QX7#Ijp+Sh6}$OrJYlEF+Ev>$d$v`Kv8FwKdFRKgpoTx=gxFS!zQn4fwb zT!zVMpcc#f6y@;_Ro@+{DL+DsQki_+yPq>$6e1tpayIbS;1TkL-;UN$M`=+Sle5ig zn^AnF9^avsnfsIw7TXR$dLZCVWsHO`D`9-{WxRPzAjv=g#s&fwSH?J586)zm_+UL= z03b+@Zj~{{RmRv_8RN!R@s0gFy!A6qwXm?&X&f3ec~FW$ZAuw|`o7gMK61Pd;3b@( zBzBBx=122FC;Hi~Rd;v(!p@7AspNOGH=R_8=VU+i{%YuXGog!^uT@5yqEzo>cUOi^ zeMnsOABd;<(PsUVjOl)~;eU_TP#Yy@`0+MYh553fvT)Ful}a{CIo`=`_Ctkdv9D`2 zom~lSj-T6*IQ001;3h`OtV(Eel`p=Id48S`T7=pw!&44)QIo>c7iuoPK#Q`OJbJY@ z0?hZhdd}Ci%sD<5LZK4?ED8ifeiLtA90+*fn_A{2fq?G72;z|e3{N0NUS*Qo-^4%V zm*Vw?rE0N7G3KlL_rtY%Ulz!yP3Ky5m-_%-x?Dfqg*X_$5OiV~SfPyV?21{%e5+8H zBSgNXji)P>yv_sMYl8EJhpD~5YGIl(%u%vZ4e|;+iQc912F;4=wP+oaFB?^YwLSvO zG=MJbzKO{j8D<)S4X#W8Iy+4#Z(;Ig0fm{xpz%3|H8DTls_HLLhb}t zw@^+%G0On-3{>97nzV9H`zg zO+9Zh{xZ}HwmaQ>c#SJUc_7Tsp@bWOQi0(B;MU@nbN zD0iR9_tc_89<~eRL1{ka5`#AeD!e-x4+M{VVB;_lxT34=Bgsi(W1s@`Qvp+|b`NXN zFPMClR<^!kTS4Gac>^$oLk^JS{>ppZpJ+HJn4-vg#xhWlWMTS%_Av_G>o}b}M8c-k zg6?S_B?pu2)n;ZxRSMu@lNq59l7d6FzwTWOSKCw;aMp>#%_6*r@}w#mJzUjC2J^n6 z&96rY-oh33^{8o9eESUoK)$bOP74Gy1YlGk;9uXzn@0x%1_QtY0UnS90ZJ-kMEy{! zYPydkV>Bv^8{~96nn#UQ+Wue<9ph87#}D!DaX#$eR+OQZU2vGLZpUYXhp^OmANqf4 zuYyDzM2Is%K`>Deh=l0)CrE(@5pkG#w$%DBB8!A9h<8*xJjIwKh<*KLW)SgX0v}2! z@BHX+Pf_u_{oUjsyeGVPqH9*)g^XnnJCuJQ{mZtoAf59!q%LtCAy{lvpL*mcN3DO5 z@thCuxu5>A7}}*U)#yal5~?;h;Y6{;-H3k>;y>OHM$i(1c<`i$XE}n}t@8S7S+-!z z@UFgztR)2bR4kYO3*l4!o>aC#OkkJ7lSDI`Ch9EUlwi7~yxY_6oKXp^-DDCKoz&CW zZkEXP9nH+tDmotwi|~}=5qgO(doFhB5M^o697&$%U3ttFzAq@S0gq51%}1`c@hi7_ z#+$Q!8i;25=+8Bs3w!{t&zJe^p>+7!SvyDM3OfkHEe!I#azEmPpPh~W0dbLPBcaw9 z)kZVZH5)Bf&i(AF?g{Q{%C&v!CB9Z%>zDXuODn0kOl4Sx>Cw_mb&o_aL|K_+G*Q`Gyl5Z$=3ra>c$4gZgXcrr=10?NyVxr>uaem9N{8R< zO?^^))I0ptY1V%bvQwG=o4uZ&xOjvSE}s}`x#4ojWn+vlhKL)>#oiaodF8@yPm<9& zalLH>(bNC#O~O|&M%?5N@~3>4SVrd@{=GjT1vwr5Y(w-;T&qT9EOEbud)-pvEQIqC zTaxR_#l+S`$$2hmRTw~bhE}&Ku_luqvx<{?Q!F8Fb!>br`I*Sku_i-^Y{7I}#8ttp zXL2*aCb_d3KEf|HiU~7_Ob0UG9@YqIB@IiUbabqem|Q(4Z}_ZGT!{QR{Toblj-*#7 zGnBjO?dfJ6Z`Xl2_{5VmUP&L*1I$9l-a$wvbXR^H_cq?vj=PU=O~x;3UYzpLc%eU; zFhtFhl^qkl$J_H0J0YApu@%B|6PqJ^B(ny>R+)JSqbAKmxOUPMgq9=bkVOR+%6N{_oe6)Kn4fnX{AELjG zV{wvYnbLG$6S7?Cv9AFsP{!|j6@GDQ--|+}y8Gjy-<$g>v5A!w+>AoFsj9E;I~+&? z*2x2#5Y8^Fig0t`K7<(uha-IKPzO+_9MTC^X@@^ob*Of&c}~NkY5?W5KJqHQfD~(r z3$b_|3pe0QPQly^FUdMO33P8C8)!mqgvk;aVzMmHDLyt!&<;8NJ~0Dsrrr$Y?1>iv zZ*a1Okk+-N4r*~kN!=jY4JA`W=C`GV$b9j1ogfA|Kb`I=2@hu>Atqgj5NAMPEsApc z+%q__Y*fCHq$xMc|5Z0ls4RzeF$n}BbblE-$I(}$mNJPzUS0Yz;H#B?pRYkyE91_8 z3ZagQZ*$sRs7c^fNf)b<4a$UzH4v`4_zARjRD=@=e7;duSA4CcUV2w2%pJ!+?XIh% zm@h8^{o2bx5)I zB$wPtG47*gVv<8@>Xb`&o>M$`U%>&yy}Q++QPq3UNO|^NudtMG__!3uEXm4B0E?BP zd(}vpa{FFCGE{Nj7mx|}?SL%4f9#o|;b182?ucio1+)*mTjKPx;}<#N2TO5iJeH9T z6WpCVODtNZ&Qhl2JxC$fM}10uC&NY^Ak}IFAkwDPEbyDsPz_(QlyNH|*^U4tD!It-NW@(QJH9#;Q{M$Yq}jsP z##?NBoQ^zI?MNt!j_HOOHCWsbRVJIeSYUfo9JOrqoYUc}Nnx8q0J00OpufNyoIvWF~D% zfBw0d)P+t1%%lZ$+F&N>qO=B-OV>qZ{B0HThNS>SVkQ&n3ne9%3ckJyd7WJ6Rl>>P zzgm*t3dcvBviYqDQit5-H7w*Ua*ubjkXdAbCnl1NWmV3@NTzl~a?9?Tl)n>0s`5iN z@&$;RMWdA2ymK^30Id>Dj)3+DJK04Ra5)Aaxaz~h9i$afA2>+gdOImxsfutxoUXzX zB!#?(i|i&T9yyjg#>f@ky*lI#^^B=bx=7@P zN2*0WCf0#f&~L?&x-_IFTAA1~DdRnAlm3AjKoI9EWgbHvVj>{5K0;m~wMdmhg%pDcriYL659^b!`AhXl z6p(h+C-q3F=T?1!4*n3&Z-|eb74T0Uhr$J(evgwTjO_E|HiAu1BeXGTNh=sHZ%iKZ zeBT(gO6Ku-Pm}i$t$dw)#M?Y68OU5uhbCkJC4)zAB(L+&n&Go)7x|fHq$SzM6PlCO z9~=rralM|s6c%NE&&F`ngmx4T4is3nc8Hj2+?z~HRn-W#_)F7@eZ`c3u9sJPoH+Q& z=Hv%&2oO7PHt{N2F8`4 z`3pQre$eX&IZ^i`_7c6F4dAe7P774~dS1|i#FK6OW((3096o=ZybD`qKd&~Pg6ByN zOgi`laubI3^m&n>BgylOehFVJ1J#fKpO6GY`GmM&YQ3jC0f_He{ zo1{(c002d6!Qd65%C@ZVW8UY_wY+WRojLs7SiR(>R6^$0P zdA+Zx>YGjJcS6z=s&Ah8fDGq3ACT&mP`-bNGVepO2(9p|kH}4O((~EJWFUVf z*!h`uqyag~W7-o8t-MKl@)>fJ_E<3-=aC)A7^JJw~Zw{_gkqdSNlI`vboHSjOl408tnCu^%wJoZt<9R8@QPNAf-LR{V$|uOtBI z!Vxor2PU10{Q%3)ee2{ucVFWe&c>4jrqsD$UA)AuS8#k2^z_y zPL#@cZZGmB2HWbtkpX;WFSU9_9O1Y~yd5QP>@GoxG^P!t5y~!BT$<-f@JWeq{e%y!jBxY<-hhkDCrb>Nzk7PEAck4&GJ$c`(HkP_HG+u3_a758! zbYgOdJ0qf#jbqJ2Fb@%6F(8}zlXxJhzxXK2RM>@&}MN1P1i^4;ZZmlBZ}NiBB3#V)@X~tc^=UhdX#xRmYzY z%-f6k1C6VF5XpVwfm!Qxg0Wa&fk^WZqWTs3q%w{#nU2PAlRlVyCt>2%m`4sK)%hbs zNV+Mo-`hHb#Mw)&=xsy0#Oq`?1eaQ==+=_?gCQ{SHQsY5$t9`$iDc4^6niEl6N$na zQ&Pyg#vEJ(G7UGAa6WMeu|JM0wmBOr^{nd1Ve1l)-oR2~jSs^DMr!F5@X~Pf&o?}Z zi1Z^O(9?Q&St`E2TI}gLf_zNLO1?wEJZKxQl15&ZR)(4h&sRuI{!1Dhv5e16BXy%r zTjN4SHys9@@lGs@_-Xt+1!c#tklCQ~uPui%}gl2<~nTCuXCSWqmSDmp07nW>})LFOmZ$!}(KM`-OKa$FZ6 z9G#9DxW?~HCry!$5AZ$}|G-sK9|uFoExTGSS!?1AgS{>--q4id_v2uDjSt2zZ=Tlj z#Jm+V2C)Yh2Y&^zQ6&aBCO{oK<45UYApl7(mug$EG`0#0h8@Z z{L3tI5w2NN-Q32Wisttgv0Win!iZ3@ghx{2t zEB2!Nx$%q0aWa=ni%FtsuF+(w1%4KfX z$1OKJ5laYme2Vx}tI5;ki09kYm;z%mwth{esriF7uE-E>Ssey@|92gE5;(XXg=hiktj!hAWmVuwWT?Z59(_PxH-~ zMEEul9&8~-lEjT$NoQ#G<5uz-qTH<*yUTddRxuM^vW?*Ap_o_A!{AuPKguJkk&4-l z)k_(FWjjgo4rms2nbm~$gD}jb(65&9W83jT_G13$4z-3x?I1~BD{IJ2v2E+eZMc(k zqQk534m(KIN?7X3P2;$AC;6I=(6GSy?OiJ8PP@nenyf)9sWT`*o%np1X&CR3k8PM@ zJ|-U{R53U1M*At_kM1UGDv4ERCYsm>yGfr)xg8&>K4#BfayviFeQGcHmZqr6+4x)g zNhpNo?p4<)hxd}{mDs9l15N0deScxwD}ZeQ=^I4bJVaf-YP35GAT%{t=!g4Np}*`W z)1gAO1DIx)@uv@v7g6QC4v>0HinJZ(Q0&Ib8Ih)jAu_2MLR;e9zd*>F4cE}t4ZanE z=fDAc^&M;8ok!GZ+m(arO1SYMGKTTJ2O+bVpFg6)8XhIj(jcXq()JIFlvIpaQW`&B z4Bsl|vB&Z4{$jrBIC&I$mLA8VbQB+QLgaato*>T&r@VHOJcG;zC0KQjE4IUF5|32%Qqq#&EFn*L5xiT^C^2>eW!e*aq)n;#A%fQ5lyNUzztg1M z-)xLtJ&n2LQJz^wW{|D?wKJr-IYsB&ZAsCI4(d^=#j$+P8Fb2pyz~sIP3P}kWrx^xf~ zVKPO<=JH4NRQA-lj={w9=@rt8de&aTveMJ_2HyFeYvesoliOq^<0o(7wbgyHit#J= z$orm;DFsxb^gT~!JzdUtw4T1lf$+L#RT%x5@%S*B;n@{Ve`NfraQZ%f(Xq42p1Wk(MHdAE;?R{+N5Tzz<5!Yt`Qr!n>?{K=p@1(SR?rH z`|5~kd0_Qb!A!LZVm-#1_|89>!ROSXhsasafZDW*0ftViPfHN}_82{YsBHr}z;;oG zGcTWw#ik&t$8)X$ZD+vp=*_2T6=q$k>QIP%sJgTWHE3C?PrgEX z^Hnm%xiFW%rR&KVPuovv1IjC2R$<6rUODT?Yrd@B-1{Cxx~=uYeD8ZuzUQ5X`QG=S z{B|Ea%=f+r<+uLiVZQhMVSYD%ss8*-MSGZqQgvc$Zhxy+3!2HqQ`m?>S zfw}zrcm8bOdr*Fj?;qxS--GhaJs;+K--Gh2K7#o`_Up8+ui^p$8YW-%8{KNU;ffar zGBvSQ;`2|2SM$v7O`oP@tEc#Pii6l2p4)%mPeRZwUiZC|NNE_E&F>GPzmqwhe-EXM zl0uJr7`;wO3jZaQ_Ca(jm3F`h$iGI=7YULRM$(rMoft`RD8Z{J^n39AQ^DV_K>Xxr z+Aoac@gr_#Gx)RbSH2B%X&O+6LU1@$;SWfuN4M+)yc zn?3`9Q)W{uG4crP_+rx6n8)FFNTajp9^=6(@dnw^C0^nkIxxF>n}FA!K%-2OEMama zrxMJLo|sD;LnGd4K7G|LrcUUD3USp=#6`GX*wb=@ubWT507}hl`byK;VWv29UHY9| z@!-J&!w+H?)-0EVbip-KVk|Hz@vs(Z16gyL1jonT)X3|P>Mn65_kKL=P*uFhm&T+M)!rc-JNLEpnYNTS9S#l^4>p>g&>8 z0YdQsL1?Z@ec6NWwcFCGV1+A#4F*V#qC#4*L7U34$B`YfNm3W}-u zw2WYHZ`d9>jXtn=8t$uuF zzR;q{T2!h<2`ALN?kDI|DA42+_>(c0x%(vjrb>l5P8<=3*JE+m!nkshejR#AfGAck z9ZKM&1NoW~`Wc!?wNte2V+YKr6MXRs-X3Qugxkp3I-KKRUhMTOIqr41C`Iln{=+F6 zPcnEK2qA9eDS8CL$CaYmQ~0`4(X@H((?T&%=hO68342n-=V0TV+)<87p2(jor)^>5 zlyZvwG0*mLIsxa0o~{?@GZM+-7sFYMXZdBCr=$0+{P-ibIy~zp=$3l&Z_+0TS;p~q zW!}ee>PNTf8qhiJ(C!SUlLPN#e97{>_<-gz^#(w6tc-ou(0E*+!pS~v3Iv|)^M(xR zKD-OV*xZK?W$YtFCm9I_wSiIU6b( zi$byJWfnCR7nH);+rvB+snphl!ae-&F9*E87VzFW;Qbvhwo6VND^|_8tcv|WT9+Fi zVck?E)N3;6F9XGSVL=LcVL@tnVJ*7`sOp7bH{q{9(KGrAg=GZ4_6QS~Bk}foe8Mek?E*7bded5>7YOijzZL)nOyN zc}O!K2fnf{6X)x#>alNX2;PrjoI+o#_f;MQ`>Sz#J(h&(dpm*k)j_d6kF!S+-F}=s z0%*-A7|xALxT6tVsg$>E#9nJ57z$Ozg%I(M-30$T_742-IP+HDMS*Jj-ueDU>|f1F zZSmOTNHoGb60v!X*{;_;#PM^Y5q*37LztW>`B8Y6r(nJUKJh6Qi~chADb^dkU6aPF zJ+>)0B6o!i2Ro2Pg&ttKXF20z(D=uoc#3c99R!bW^>Gnn%dpVo{$ zYP|#liahu*^6Ml296#2K-NG5@!RG7@a>`TtSr#QB`OFJ!ZZ)`4h+J2ArNOFicoM&2u27QX8P}EN5*>y+YUXRY zvYMXXyRmShR{^N{t}KpccV}5J=;u8ks(|Mr~j~h~)yG*Pn?)fWJ9q{ax5eJE}|=09#(|&#G5C ziOePsakdY@Y;GqH9mqbZrkV{!Y)Z8+n>4{6J{0~W&L=bnFop>SMsgdUG?4i=gtcSR zXK}~vA>U^QvFVk>_6x|qJ%~-QZbz+R`qCg|K^?UZ4guTj!I&bJ^J9ZqPkO!zUoe<8 zpygHgFonf4V%foG4ME3&I{-tO*wcJjurbyKAhvcpmBFA-&r?p{S3+{x4@vNS#8Gn$< z`oUM%L5N3fQt;*%p-JbDfN$V$D_%OhDg9QH39$qth3 zJXv9NTI|40AzW<4#}iD=&`fHE(3T>B_Woa7f8iGtRxKhcpxz~uhac{X-R7(`_P=+_ z#lc@0&Fayt|Lf|ntJQpPjjA>O5X3*=?01^&t=|ir)x%)qNN3}!VyLG6;XG76S6^O< zFU}>YHv>Jp(iwhQkmQ*?fz2SKpXc37)(Fmviu+cNv*FmW!eA*25L=dPxcddx1&Od(v z+fGl+WUaiJ6dc_%*~brYg@8bL&&*;k2IRJw%^LG1v)G@(uvDnOb2jU$LJe_7uzhh3 zn+5gD=diBG{5Z>7HgjARWbVykd4Nuwt4_!F&1EgZ3S2LR;J=z-CjM4yUHwpVoC!B$ zEKB*@^VrK+mMZhutJHV}O9U|=+TuBx%?e29R&`G~s}8Su6E}p`MCv5ZiG}PM!Ny?W zB9;^$bIA~=Q+MhSVy7O5rUu$Fj&X9WMht&p6Km*Myq~6ry+*^Ysd%Z_oWvHjj>|h(8_!eutQC#9uI7j

=76 zkbk{0hkbh()sxen1BLjz22q0};;_&UI9V9%Nho4Pj5~^$b#yK1HBX0P_5tPkVrJ#_ ziEf3jy*DgHcc)G#$8Lnksaaox-^j6aB%-t^?3WiQh3 z6g3y$z(MX^%9GAQ@gC>dla!3-lPnlZ_QnR79hD0oU#hU5#{)ABqv1={j52K7)TQMTzY{OD z;b-bd(?OZ~h}54XU|8Zz6qEwNQ_P7;O(j4wYBpgZ=m<)To{6l7csQM*2ZCxo4z$^$r424A2-}LM(>@ zsHjSn%H(lbYS+atJtO_paVPG-VFN&=!0)gyVOyi_DPlJV^QRC?P`)~$TO$rcaTQ$r zELJ-;;PHdmyE!dpluNQUQ93kj>5qr7TMX*p5&ftJ#b$b3VVMv(oy zNS3ydwS2~l(u*j_*%zh9vAOAbNs7fCMzewMdO>=Q|NN2^3HpIANt(I1-N4+7Hq1E4cL)wIBSZiq-|E9H6M|-~% zaZImX{S_{QDRVI&_LdY2Kb`fK6iFNQ!*o(C#W5j=4Dr(zZ{5lH^}E3TSB1vu)Ll&B z3j=sr8>v3o!)@FJqM^T&^yp9pP8nN{Ro6v#$=U>S+4r zoO{moV?>A&AwX~_ZY3AD;!p~d;u18)TPVS4v7n0;0wp*l=;8!-EAFnrCBgZAb8e9K z>GOWy`{j?!T|Fzav$L}^vlzmj^~@nmsV8+tC|`Z4Du%areJL-r<^QNJHAUnHZ)DX5 zQf^@j@6kZ|3ag6GZz$CgUBe;ZbcSaRw?o$a;ae%E@E6b7SQ_~+2`3p6O0&?WQgxK> z&{UdAYg71M%K2&BXt8}BH&*|9TIMYIdx;E_kkf~~L-x>HR`79uU&JX^&-IK&>}f6y zMfTmzrC5MMKS)Vrj$!pKPIED0_*0-FFZCBTvUV+iiTBu|7HIlNc8o&DnQu#}plPas zn+-D6u$s%0HEb#60DIWKrL+V!N4GLRFtL@ils}v!Y-dZAik9Do3_7L}lw~>PI-O_D9!A`SgZKSiP`9NDKh}CH;{e*GCZ%GhNu%qpe z<1TyBPO1$BRg;f3X%p!-*KRM>!O1MKJ^FBm?`;pHQ{ZjPY>@-EN?X|D4w7FM(!j8W zD?dUVk_6_Mrg@AmLDUa+4F^$w92pwdvjplHa3>WpAsizPv9Mw~TE-~xf6F7d7&FP8AbZ+S-wRI!daS(cOj!hgST|lV&V5u>{zQK|Q zz%@jQ0jN2|42>NkEkvmJP!n?}4aI6Y$u15BT}oqphe^0-U>AoGQDCozNiBRQ+Gu48 zAOr90U@_6pSLjhG{+WpTk#Cq1kA%^UL7ud z4;(EwLh1)qmh~ef6{;+J??{+);aG9>R}hse?Cq~o6W9}d`x^)?V8>C?Hd6V{GZy%L zm(?39mH0=?OrgR=HfyYu$M~XU8PVs)Vs>w_^s!P+U~I*4QfZRZ#3xAIgjf7=g4COY zqU|S0zY0(JlL=A>E0hSEOp`*@p}~>Pa2I&m_^&7FL)oxtAU8w#)oD^Ai|~+__+4^R z$qKWiN5W%Xc(#PgqF4OUTxl&u&!0yXvVuuK!JVvel0+5^(eptop0if-rTYlgUI0?? zl$}^0{RuE+AqdwwwsxV^6V>EdB(<>$Q(3}tkUDH-%Yi(X*|X)+rfgGfF5NsEE-ipv zL+GU63(AN{{usgkN|pi%i|((Ia{G8qG3jLaDFe&38hCMs#jcim=HH<}7zVlCC-Gs;__@0+V}`uDbOVtn(VFf^d!}uK@!9Lh)!V zW-6WgbLo}@ndZBVQY$RV7Mr9%oKJt+B#jhSGRtPE4D!TmMoHla8@dIg?F!qo1t^)s z^sQ2U>@MZDO4V!!Nl!_?$;NF(rB~S6tx^~&JGE7sgIfBgn6<1)L4MfJ+}H;6y2i?H zms9s+;P0Qm!G!(N zFxyI*c=bkBY+!jDOZb08TI5A=b^UT;zB_;qflFJ+@aI| zSl^r&)$p_v%1w8DQ4hcMvD2-br~sU;AlpQx91rtX5d6dia7vAN=A|y zI)fxu_?R>&19`4^k>}Ad6L~WKB@Gc^rZVNY)LnSVY$t%X_gIe;QVts#(OY1Cop?fO zA>8A_Nhv|Ft}()G`YgsyN$;@-O*svgX9>G{T1p2vdj>0TE{{AbB?-bGZ0|W~A}kV{ zod{^vz$zO}lSu81*2Sw7PuT4@k+(P8Sa;XUf#BI}#w2ozO2mhsWJ;yW}(VRu6zI*2oi_d!^xXy z?jmNtB~23+@wvCa%)pA-c?Uez95&*P6f@Avq(J4Sv;g^oXJihjC}6g29&4<=6bF99 zjm{AZS**UyhFA#7A)56}`jicFjX%BFrh2n2&&Wmxyu?r0z$-(ck7}Fe&9(v}2=s?l zzAO2|Lj3!?Qc%zx)$9Th7*N`mI+)BmDiOU|Z2VoEQdY8>_oNO0Ywm%~U&U%Zlmghh zdsyGASg};85W8_t@?-r|rLU~3X*AaG)v1_7C}*ZTkP5Sc52Og!UMHRUqQxk%Tg@JT z&oLA0=!iEL3E~|nx|W4M#2(D)8x4wa)CK}itqRc-DNw`=l+YJY0C%BCspt)m8WBQu z^abqHLun~}5Z#UzeeuCDkEHNV5hW0@?va#NTxMehuSI6z?;c_8iObDURW|#nl#?}= ztp!<&2yq}Q{ZtAPSA0&pEWBm|pMlC>Vi%uD4REpb)pM!20A+{qFC>Ak=q9FPpTKcC z9jCsNY}!jyewM9!DV@We*u+;7?o>{)dT*qo0NLJ3I{Ke@FMv1i zfjduGZ9y&%aOT4op~-9HFOnt*@_^69hKurcgsNGn628?UXP1N%{H9GFY60^X>yn8T z+~$%C>HBGM(Af%ul#)+>$warDFRS+~MDalR*W?Qzlm6Bn0oetx;w}HiE!P*Yw&y5v z6!Mab1uDP#3}p7Hy$+FyQ=DcR(5AIrP5{b%`CIX;)q`2D#&lpb&8{+yoi`)}!E3w%z` z_)Y17cX2Rvc}41Z!2RgIS|aKG>4p!BA0r3xT?OSl7TlUWDJ=T~*o(+hLzjWnKy(Kp zL>!AgnY?`no~hZu(~@yT5xIykj6E$PugmgpIVsP!qH>YIVH%agU}yI9iz^0@QQumo z7L(t?s=!rT?g*WPUd827p}*pQL+aFa&jlEq?65~TFj3~TI`!A=U~&0eV4542A+TU9 zm8lc}6oTxuzgzUdd}|5$drA0>hnAJ+SRi%Y8Y3^XfGh1#Q7-vq%@BfpS+ff@Z>cEX z&HB0K4FYOS5U6f^02_fl!os@NlKt8FO6c|*u2+_Ki}=*(s&Xo=o*gw1eUiPbA(O#j zv6^y2NI*u{luQ3#zI&sl{2J(R`5QSB!!Fj6Ti`&|x|aMszOk*AToc`4YJK^vkk0Sa zmnTZ##QQgvUs_N*dY6mOY9^PJppbQ;g?!fatNo)c^RFzWr5r7oAf$l*7gjOLWRsBU zD`gjaN_{kz@whwbW(qElSMnmQ0WCb7IS#B7HTUgm- z?mQCte!zj)#B}s@SBj*M=aV|i(EXplj&(81JnkaH1b|0(mGcT<<{NgC+rx-vb2p4S zN>i@I+;NLTq`J5@SzuX^F6goi84p3o$%mB_0koTkH{9oj( z!Cy2K${zMonTpUlCQ<^UonPeQE+C49>I0&%h=FnxIQq&1<;oEDjTtECKxp+qIS-^z zR|d)@2|-Z$6N2Q7murI(^oa-3{>c;LWtUL+-wc_;y?!vfXbYWRNYly919^HvL$0$+ zgXFu$%})_GeOwzvL1tw#3qdS?qav}*!^53xhsYD5(!nPUmB$hL7d2e|4Rf}9IA-S# z-!ojULsJ+q5;%K@HybJcBx*!GGiQiQ9GLZ+zsZXocZ0$eobU(nvQqn`5Shv)uhg115cCH~l#@%%ZHBS>r2f0|s{f~~pUO!>F~ zlfWFaWa#y*<}GH+b!GH-NU)nMl)piy zg$u#9oZzVo9xLT*cjzW7F5mRe@?T8-OP9?7;>( z7-^1;@;an#-za;KCT#*5u4Gj=$@#&*^w}hz0Y_eEvph{ZX`YnnE`xZST^o+Cc zEx^TzY||FGfO^8rLK#4;lPE5i2*)l_Td}&2uuWUh*?a86R+Jmba;BgyNxXZC3~wY! zyv%laJaJ5icbKU&Pl9bpVi!)z`FQJ{@@l~^$x8bI=&nimA$SBg@fXXxTYiJm(R*kI zIYyr-0!u+)_&pY|&#WnCpS%t2!*_yt=za`?Fp-})AdkuTSTGxKNOq$=_+nAE^^mM1 z{pcaNkr*`58i7*)gq`3J+&Em|i|84I|0h_?QB2fC{`E0=gdiTbvxqx#FuV2_DEK{= z|GfMa>T7vkhDVd*awT*F9}nVNkAtZcPh@0Xcu_6@pA;fC4*edxd{NH9#-04w5OkfR z>$qG!&gNW^+xe!#>XziHGhqjXHp~>MP|Y)7y*L|lMs5qy?z1zfK8XcilZ#Py%#)d& zwqI}dw%6oY?5lI~Z>5qo)GF6~%kBk?diny_~dlvuZA$If`cD{q`&NDezxlh|XcJk386v9mr8fhMcL!{G8 zzp2n3KU$2ysT=l)Bu4Wldai(Bzs2f2mqVaE*@eIz_8UN%yMHSZ{<%nQv9EsbZ;2_H zzD(_pP3+opxn=mJzh#R5TNMzJJz=e1$m9-)y^z1Lr9v#52~(2#Lat`JZw7Ai(rMs5 zilB2?g}`jl+bwLCCJO_3p*|X-16c6U_Ys{Natr)(Ls~aIU9KXGV%O5;`xvq#FXidL z<=9tpYlIHJ0^yp#n!Pq>c=Bs`o{+#xy`c^0F6;Rg+|OOM@hvd(3VZoh&L8|9Vh(%^ zcQP(~%6o4JRb)Z`;AWn8Xd*`L9T4p{oBK{~sBeILCSN9-M~?%yDT2STy_f4k9{JsS zoG-Sp}l*7+_F`fPqyTt7_W)BUY?M8Cm)q;?GqMH8d(D-lbQF&1cT zfa~M?fmT6=yyIb3YorZfBZqZ`ES~mb@3LC6u=9DW%Y|orR9@?GHw=h=C~56%g~0A$ zIcsG*#CbkdtwAD&IDd6(5q!RNb!$Hn{K3VV)~r^L(zo@jj{zRkw=O~^*1(z%nRYd> zmZ41Iw^oRz&+zt*t=;XyU;Io9t1bZEZRv%tTX~_YjTeTrH6hE_&YJF?;SaHOf`yLS zGg-m**2Ktne)<)^2yD2X6bVEb{*?^;!|snw5EE;Kd#|VMt$79Qogc9TP^FS}D#P-1 zw1$HFtkKarO~cUL>}%~R;EJ@tPu3bZBPaf3y-a4&@%^psh577Ge`_mYKCdyrdX8?G zatyStl3|r|Zm9LJu$eC!h9MQs^7q57(4^kU^N+MXm2iBG7-QYw1s)bU);d_Y%M-_1 zarWNDs!gzF#r1NB3D&;^@U5jMS>wTaZ<=JCY;`@(;(|St@Ap^-toC%PAB&p-TjR&< zhndzW;XWTa(;DkW=0^*yGi^dDADwKSXcr#x@b#DszXvERgBdU<-Uf~rve{JLaf9_r zX2|cWAF__HZO8(>YMYC7I&7`ZA`e^3qi1aoTPF#?uh&PcxACcKN3AEJC3@wGHH@D= zX1ylhyBm&ME7~wpAI@3Ji5RJJ7ipx}sEa_%P3*!&>ktf7i%T?6Y{w<*O;oe!vb7=7 zK3uk5K?SG{BDMSc+BNHV3$Uu^Eo(Cg+t#srR!{JF-*5*h1VFxk^<^im7CYVA+V!(6 zU#j(cY}BJtt;I2BJ5sG+RbQ~w`_=&%hK>)cM`U3oFZs->I3U8T@)m=>nu+hMIfOMl z*E?%7GG!Y6-i-BpFk?G>Fk>h0vQgG}!A4mZ2)6Git6;HBw64yA5lms5Y_?D&t+RNO zGRrm+U(c6qk%-+Vdtz8>I6~6*^p;&bm$mH}@ysh2#QV<^S=1yB{ zI8f%>RS2&!^4B$+4>;ll>ADSfNBpH>bBKVVug%AbZutk7dFyPp@uE1zm%Ywq%flmb*b)U~D$~}?^f0Gw8@vYd;(g0@A%G5%8_TUTn!-Qu=4 zXbZbp(smzB`m2Ozz~WD4r#&`?7IrId>u0v`O;uYy zo~4ov7Xh=_=E`OZ?^d?$p%$*FYCA6ohxnN4wmz0GtK_J1ICXSg9ee@sYF*o&&()o7 z@VDv~HS$&$*VuN6s;kq)7XQVdy=!iJMQ%vbTi8mXszNPoWkr0vTWj0FFGj6HTkojl zZg0CNNQbhxMV3(A7QnJ~v=zZ7)3~Fp6{_CY(K~vpJJ}#D8O*MBwk^jXj_+a{W5E!G z#o2xaqdz0g)&&FT_|dk~$2QSH1{V|A_F=Z~g()n2xUCus8*VG_AhTEyED-0_!)+e8 zu}d3{ZcSw~N7(YCeFsL^azHDTKmFC#T@LQhtT4Hd$>3fL?@rjBlc=fIDJ+r&Jnoduuz)8Ra@IE1VjAOO z|L=|)6M%T=2Xr=VaX)$5TFMGvG&?l?qOG(8SHh=m*$$wgb8p)o%EC=P{(-HX74YRV zTP=cBUfX&K!Y01yjct_$I#S&~;H%r%#1FRY0P8=X{oB|@6HFHD*_v)6aVqWaEvNzE zXa_m6fDnbugb|aMVm<~+d>Lr=WuW4hfjZv6nt}Gm_Mq+FsSkGfpdu0!M#DCpOpep| zuMYbOG6-+(w!`r~OK{uEfhHbx+oJ$pxb4{if)x{Z2y9{Py{0we7JD9HAPoZIFfW)Na}*F7{kIUV_P6Bdk<=`xPVycL0U~e$&wo%b+{Fa%cNd5gTfjZgy~H+jxUG`!g&0 zQ?;+1*cJc}tJu#DwuSBKXCIFe-~D7CDhhw_Oa1K@5q#jaUvS|7$xjsQ-)%w)FFL}0 zIY8LW{1WXAh3&jkqJ5APW?c^!+d99bOAoP zBBeahbl@2U8Qj!OD{lRD}zDJt~HHmk&dXc z_$JOVb}S%}mlTUf?rE+gD;6IZDGRj%zxB6X@ZJmJoo3`9-aV44I>|0)bJRwS1)>~v z2ckyMDrzus)0wCS3Zn)BsDZ#chk4cPz0|glFF_p2@J*d~i2tV=&<3h#kkchX{gC8X zdSoW3;qebqj<(dMwmBSC(57WM9He9wn$uB1q_&~A0srhR@%SP&lr~f}lmHq^;NKcb zLO?VW?iT--)j35S&8BJx@w>Sk5Fg-nIIrUeH1kznN1o!;@qcL^8iz?m^B^aq<`F>i z2$;=d?tG4bGXML+XbaVWA!KuaWc)}zM*{)QooQ--59FjGQo*fokphmKK>B6{98)xV9|pfb{tyYgF9PQNQkh0}G5kDR*L} zU1LXzJIF4zatTKdB7qx9IaDGY`${{e5NuJ_Q5+)mBdpy2XK4&2RWb-}%N-s|P`U%|K8^4wh{^HO4?jhZr6+~hje3r9=xbDc z$G84S3q;ySn&J^UnOVlycht#8tbq&4XS8brnnWiu+9W#&E~K3w@Px(muENv?jx54G zmZO2AzyCubf*LKm3_58==ssK5z!B*L6~?VR5?-9Lcmvj%ee!fFm%*iVz+ZzM^5H@4RMx+c`pn_k40Y2R6ZUzNfw8 z4tQLi9P4N!f>reELgX)<5AEv6F9~z_svjMdL@2(!>WNt&#{zp{-Hc z{n87oVk2wb+mY2hj@DUb&ryiHhq95q9cxinxjv33#BLYr=kP5{L**c;=3NWgl-ZL4 zcl0KGBt2!5w32)d4W=e%(qH2TX_H|Dqp&sy_j5G13FG+rc*hADq$YVdx{=PV4L7l{ z$p}X=+D9ggaNvoVL%htd4s4hSyucVo4{E?4V;uv4tP$fJKYKwW+d9tSLq$%E^A`DK zydxDwaGU1XfE_6N6vrsssN3`cR)ylaM|DJ^Q~ z7XAk*7U>qmyJwhqj7@>?m;f-5z#!garsIJH8(Gyv$1D+&tJ`xO?L}!EIi{(XMC529 zUo+oP$OuS;M<05=Pbg&M3675EEMj#V}6_EiTvN4?^13i#jW0@W~

70rJizZ zx8un4=Vk0%={)Nd#}i*b{e`2yE~K$BvXd+l}eo`fDeIvFW^5IVY|d?(j=7&SDhyEARZt0!{yfN=`b1FRbLuCklJ{sVdHT z0${Fc&dqkP*thFC$sV9=Ju_FsdI%wPNquKU8RY44V<#?T=P|8`vm)MrY0$)(18>0m z+{C$6A;Pi+bON&pLQ$ouGpI0RZmq^TuR>y5ahwyL#vM$V7tZ@Q9pp;G;O$|x)109= z&2~w1mOy0pbY}qDlI9$PX{ebF#7IhW2J(^VP6#aa@-r`;IB2A^px4d_s_3=zm9UQ$ zdxNRm$J%(o1Ooe6${S}<=xnADILPw8MdTsYgur1o@+~5duq_nY!tTFywiJ%?TJM~{ zSi~)+SfwiW7hG+e;s+=1?{YoIdBMqkR9rW3bN8+4Du$!@Sk)B+k?#@JRg*ml9V6%YLF4EJ-|Oe9Y6p@TSzU#Iauu?=dI&2y&+0NH=#lP=q{p`w zaW%??E9Lb(F}q795$yaNuCtIa$LDnABbB;8^SfvY06c7d0T-RdauswPLBUrAU3gU| zotON|)yg7VWiyMqisLTsL{V2|fZ$?y1z-!CQ_PhWc~XkGG-6PWmT*}~EHn0NR2T5I ztC#mTd?K=X-?8;t{4e$YXvkK+~AXnt{wQ;no6$D)Y`}@u7-5>H8uH)SI1y{ za;lhK!&So+`P4<-zxK8NXtzPdorE0heO=cMD2C8gQo-0LHplA9#h=x4RS?nd;tgE` z$>9@k=K7gn;WjS#u3yDww{<~5fj@2QN}}PJ+TL}5gi_{*FU5ZGVRpTfYX))*?Cc64 zrT3{_T%|BY$Gf;NplkW%A6+>tKn!bdR}GwY>-BbRu>fm~pHOHKU-pyBR|HCJ@9)}# z%Zh;mTtiWX^b5^0tMrR&rtJi*e4y#d!VK59tlU5ssd{3%j|#{6)p%EH61P%@_+9wH%`eUxh| zYM3+1H4!S;MMt|PNt#v|FW5sJwGr?VHMT@iGc zALDu}N-sfv+2I7tL*oS3kHSlSAi*_&aHZM=S3e7|dB+@h!P9eH*cfNCA@f|#0j|w+wF0P=M1U_$a*c2cTUo)C=-F1b%?s+Sq7c8n z%5{rG1pC*zur04=7rCnnKA3%->({Kfe=T^)6@(KMJ8;SsiQvOiu1f%iPP?wzttxf3WvIx&uI}OZRfmXPbMt{rI18ZtNsU z95J0`m=`bn$-Tz~3etVJdk+kiS&1?3%TR&|80)@;klBtJxFlFP2Z!Rr zLzGh}@qH*F_wcEq3MMX{H3(C7LDB?WwNf~!H4IlG(Tcv|%4orM+U$A}HYiAqVg(}M z=JpR(JW@F<&G!q>G^KV#I7>t%E0|5eCdj_YrtGzzKoNaD3yxAkaeyotrGz_|ATx2P zaLd;^O4;L2wUV?Ix9H&2$n*w97Q?Td(ptE{=4Dp~3JY0O4y80gEpjL|0hZ-Zs@l$& zttrTApS2WVG0}>|3*=PRlH}@EZY360Ty^uHN0+&hSDA0|OQZK6Aov2oqJPm|8S~x( ziro^7G#Ol_nMPhgak57gU4P3g{AiFrdr&~h&GHmh771zWWML(zLXGQpEKi$wv^#(%B;)(Md^N>QTV(B; z%69;ZYASsIBEC^72x+|SH_CT1ElcM0pFL=lG^d9U&5}ARS+fgeSok8)@!TruHa~BhlheS%1bX z-zx=y=taI)iUD-;g1KIB)&yK{uB;S;p2Hwb$3K<+x#^!m|1#^(`GpqB;6N}mKm4S$ zumPqFQdUFVlK1*enWNyIHw#`!gqgzcQpO~lQgK$Pn zQpyQqc=;qHzl=>FZm}}e4#MtSg<&4go32u}(t$ddD|oMOtobMszO+}0w9=(D-WA5V ze>88kPB}t;gTLCK3`JqSL8%1rZiCXqHV(R|4v)^dmy$eu_C^Jd?~Y-$Qj~h|7d9tF zX-UN_+mU}1tF~Qfh+?z1D`oM?i`%iTkvMcWXj}r@vKxdifj!@?)JE2ddz8Eg#q9yT zK-wOq2!s^R_9(fq4~6bkzCvW3y-GATs(yQwIAJ_X-K!i0*tAc%Auw1AD%${BA5g}7 zTa%py9aQ>bIM_iYKS<2(gGwG@Dt~%V`Sla;Rr-kX1=HvCq#b?Sj5B$&jNe}K3wGy( z@}It%8GJPd@FypgO@cVm&90Wp62Xq1R-*957pIl`pW>vm6vuO&Mfb2d^ggGYC$6O4 z1tpERl4_Tf7s3o)?y`ctW*6JDLM_9>uPb-(+i?SnZXO?WL%ARUHovPtel(A#-&f#V zbRPFSS5^^x@kZGthCjtaOQ4lBk@O=9>ukYCM4{j8+ z>J)J5-YBaH`VzN!kP3Fq!nyqy>p<37Qv-QVtNNR0j5jgRYLY;@!J5Q0hf1?u-l5WL zcXFtCg;{K>L(LA;rY#ON55PT#S_21*VotReDX}bdsStjgW{VZIyZ>2Qb4wu(KtB#* zgCgObzK|7E)mM1rW>1-crE;oq;T6>!h58tNr1@CSyP6Z>6@ARgkX?-V9ZzDx;HZpk?GVRMS_fVVL!Zrn{0q&16 zn<(Z=fSLo-XA4vB4OW%EMU)Fx3yAC7UY}v3g4H6}4N`*DH85`J9iooer2u#8)kXi*Z-6smeoXE~b0jm<3HM=?exw4zn z-zB>mg-=e%ZsORM?CN?{);9-`VG(CJ)WO932SuxGa8Elh8jan?rbVl(!P3>rrREXA zpY<=UhOjAl)FMGU-4Q-?u+gY>4!j~#hsgj`ZK(n~F0Gm@-ZH3}`3H57lI|{L$MKEOB85)zD*DQ*G z_qOP#PmNJXUikOMc+2zJCDb|+t~C?Os6~nGJXKa52o|-`*J^JI;31FtLXvg^t=Ycv zY89?jQ9D??;jL8=PN}XokcGY6uMY5ANMZ%+sz<@>3-wfiL>`v<>TDU+{LxswBw{Hc zTYi?@RP78IUT8D54nWst>QG@nf7VQGLOE--Qpe#y%`UZ3y8)qUwME{OY-3xs03_zA zZPi9#Fw3`7bNc^DB1Wu~d7^#=Pc?u?1qre+;}JNwY3tt0rsC_`ow{}o(3BU3A9aW81&DvPCD?s*6 zYE>k5?WCq6)TA>o$Z8TH9Cbm2@SlhfzusAmlLF7t+k5#k9R-)@$pnil zGz7NW0$kj5iBm)2>R?oy8WA-G!;O@lCNoJ_ZHO>q!XqjZ^8#$FLt&KjA1V z`Xey+F>Cpw+T&wnGE4nY{VvO6IHAWK6Y=c0@v=w4-!W=TW=(sjKOpPI9%`Vtz|F?@ zP;&{7r}R{-hI~5JqiuY*liqO9jUdB46KW6zdKi^;dR?x1R7xK71#CBrUuQAUrYS5=hX!Ss#eT~Qd zg0=7c0A&3;nGp{J*f~(GD5Nn*Jn--&8yl}4L8$p4btJ&;LF)JDLZ!iKQJPrUoLCga z#Nxj>u?d4|CtA#{L)8_;2Cf^X{tnD&G+eFs=~&?Y`>`NzXE69U4}8Z$MyQp9nY`5q zkW+0W?Uf%H>9bza$#0ERbKyRZ>!UzmQGM3YY8H^vVx!d<;SB3D8l(;8f}=scMzb5E z)%@YO?1WY8K{}y<*9J!r3G+FSa{LU(Za$TLH3s`BeAkUpb7TP(zCiSTq^acxvu2wo zELMjUV2m1%?aF^Fy1$qA9IJ9c{|y<59S;{w8*sS5Nl-7~5D+k4g?8d3)@y?Ln=pCG zMAa8uj^9KzU6LlEdah4Z=g1&%D}Ptd<2201CSt$5%J(Iz!%ez3Pc1-PO#Bj60GGq+ z%v0yH=w#ILDQn+kpgL$2c%vwyQTJB@`Q|b3MM>PTT5V2Ry&X2FucgSDAPS`QO=?N# zH-6g@r1s)SMojlaK6I;E7_Un5bt!5o(Mc_IyOvo5JNspeI*BFhz;1(Q(02f5C$alG z)KOp#`tHQyy2a-0R3BpKC+<@7_~Api`ZQ|=Ex~6{_XK`?mkMe5E#};#-iFTG(>-dS z3=;1?r0%mojCATKFcq?r{C}xuNo&%6LME@5ec>L4i{dv@h zr!%}ilihd{)cZ3*jg7Qsf?!qVR-BX4wUq;E#v z+_8~<8F^vI?Vpi1UuxXMNg@26S)$`TwG&F5yr%|8(A;?VP~8h@593cjH`4jr zC#nOU6u9-7Iz@!h^zSd!a1zhIP%HW^H87`8CLv?Uj|+Pci#wo&@WN^84U&upyvNqD zlofxkl5JJt59&4vhnW`^tsOu!N$Uo1P|~ty9vWOiJb@h}T&$2O!~4!#NehMvbbzcy znaNiuS@@J(OE!~ZWvvh@nJH`e0S?GoNdVcZRTLPnZq;zJlFpjjwBFQ3o3_LPMY};R zjczq&6ZoBN_J+>8P~8@m?$W+NmP&4|YgurH@a8hmd|;gJfA;>#9m zT5;sNrfEZ*b6^2Nx1dp(CJ(YlvvGs8A}nTPxIX!T-G@EYwQl0?3MraaVV9>^u`CHR}|x!|vz6{jn#)Q=Hi{8SbV z1ZW?B6QJS3WCr&O(r}|WpDhZ}rXV^dRKxw&0`@~zts20htlBt85le<4gbIg*n-v}j z*WMy@Fv1K4L~6@Xa&M&8OjPD6F47kD5JxbN7s^hxZDw_HXm!B{&&{Fr!KZ?9Y6}p# zJ*Ng^DPAdBgEjmY#CA4HDJSeGs#Y&dcVi5IHNqp0cqEELdrS){KhT}_U zUxKZJlTX!;Ju9V^M_RGcT4CH(#g^7uVQ>$X)~r@LM06(K$HH5m< zevu61=H~q30 zwqdju%pQ(5k*UBKki$i+`52HJ69lrPFWezE+|Z zjcuk+qV}68PSIHEA6g9Ke`x;vyFauIus>kFNm@NTqtreL8L#k!B)E8m@z08d+6Tn0 zSfn*%?UFQl>ayTs?KMkYqy_NuOSDH8*mHfgT+0Eartg*mVXv^E%eB`a2LqF}fSB!WPj8Z8W$V^`N`C2j8&(6gFL_l0uz020X%M~ocs z+a~Ji*ghysU7{a&hioT*zEM~ zf{a5tRJ^x2MaMv4Kt{2NeA6cE9GT}Tkf_tx$l>H}$fnQb3$|+D7}D5^6tgeyQnWf1 z(=db}uyeh3-)I^5hWD_?>sB0(0(kE`&^q!;N3W9u9p_=-@yk2{qXUoa`gk^en^wT* zs)@kfJ|Q3Vi5=gjt;Q^m+zx^>lHJ~pz4Z_)vO}vEaM>V3ML2!%^@ue{;77wF(JN^? zKx)!h&7Ec&r|#6qd28-nW~lcrZF%6n%y{Yp^DcGLuV#k#RgXX~Ckc@1e7##MfMwBj zH}+9{PS~r}^MTK;j1w&81DF9fx2)Y>?PvgcOin`3cT5Qs^A$SF!=E&(wGTA>0UNvz z>vSqxu}=%iVmj{f9%Zp78NfHwf{|U@hedpk>HD$p(%6XoW+RX9*Q(=$ne~7cp>M*t z*}U^lqdbq*KA>fBP0~K{WUq)PD+^PX<;V>)zGDY87|vma4tZzjkoMQ#LWNoFBU%IJ zcDx`VVm9<+Y}pa)6L|Oc2=?q9?CufJrb8^pQ7tlXE_Evn4WOYlG0i(G+gZz_Sg*s` z>Z4lk{~=d}V_J{@p3ILN(>jou9@Yx6PeV^>)kFU4C(&MZF|SKdgO78<3Z2#>t;b*&gIW9Tw6+Jr_lPr^Z|3o8hJsW<)0a>teFCd;M*BAN)PKfL zWXWf=!3CxgF(L2CSnxn#EBz!pzf3qIlDG?^k&3Y11s;NRKxHk@YKyUPxX%HhX0S5n zv@Th;W_U)x)W?w{GBt!f0&@$k^o$X!tAE<*qgZ;&I14AlW?@eNRh7clO=W>RQkP z7Q>ZDUM^KzM8}G|Pq8PMz{74n1Fv|OcX+M^l8>RmFSTu!$a!ic>Nelz)-M|->x0#= z4>7R-5;A=VYx`Dv7mO|0Vs6Q@2QpzB?aLP0mu=XW2fWkPyO)|7K;ZBeA}jx1>w(X% zeQzS8_<^=)R_+6K-1#j2gBBT?LMI~HS_RL*DqeC7+KYExX@Pifk_ch--fEEnka|Un zWoR2g;z-PoNyhb&?EMGrPhsoiW%}>9Sg#@IRV}$Ef*51cA(((~eRJaR1x!3j5qjW3 z7+@~&8Kif!q|cy*{hd`O@!edjULQMlnpFo^_m~Z{>vNp2m~ntqi?FsR=+GMz1^d;h zH^+eAaq54f5Oe7xgft%J*6Rt*1**%{1Oq9>u-O}ZO0ZRm9thU|kfPTR7Vtn-Z%ayo z19hE5*|T*##=C`$HuUQN-81VyWm%$PcNIEC;JOeu*r31=^eN!81Rs4TO6>Nbg8Y_` z?n~NuZ+!J1$ojmgKfdyS_wv^hMW1^R@X7fym2nZafK4l*Lya#`$8FMTekeq5Mkm?a zVQ3GWM2G1e5xU|HKa5LYLREBZc&+ zfE6lj6!ctfh7dOeNFqUX()E=-0Ts>qN*_sIH#3bC@%66?>r;@hudogiULICN&n3E3 zGBUt7;L#zV6GI6pH!l%NTf_+{TRJ`Uji}j1rh6%;c$(`e<~Zbt(O# zeLHamcmtGGEv-k1+f>$Ks(%(ftTe_SS&o%K&Yi4zSv@!8SO>q>3$pcPb$8fql=4i1 zGH@n+H_=YoA;ECNWX*FX6C~9r7s;$&>$|+As`%~sQ~}M70 z>M`bnt~7IWsRW2^1}b&we0p8ogNpctdOGyk4zd}I^u8FT<&E`zY|OX%UUaunV=Tf& z98m>G26*{99j0a5c)_N6gdl9^^_uCb2k|Tx_koDq#svZe&~+p%=?Tdx^M?KgvGVhgV2)EZS_=qi1lr+A3?Bc2mLJdFtW4W z2UD9bvU))o#XZ17V)Oa0*2~&nLbqi8PO1R3{-! z-eI61FIlT$`f!k=yTf#7$=%{_hwC?`;3uGr7o37f&-)bY6lsH712BuUP0VL+N9j2s zXNwxGUzdbu+&-R$Y8QV#L9Z(cw|V8sda&RghTeIZ1soN+Owj`fqo;swUt&k5=%Lmp zDuhj!*wZOki?0}*R8|t^@e)(@-9ou7N-+`s&#4$&S5x`7dt_4_on zv|i^M;gCsymq+_H^0L$QIFdy#pQY!{PP-#EeVTCZ?g(Wg`bBXjw~VWW`Rx5Hy&}e- z!fd^h2>*V|=U^zYQqtz?(3^hC;^t%Fn;<{WyMR{HQ&xVlz8^qYqW8e=GH8kZ65_+3 zmg-RevzO}GU@W*}DF!N?r7qPAVVpykfeOE1UoXQ_NMl`>nNzWBnZ6t+$M63Hio9n@ zf9f&f2bJCaQ_nBNbN}T!B+i3)*JM2zWSxht)UVmpgPG|L$ddrMu%aL2+6K%bC~u{W z`a)3Uha0hyR}!0iO?vFUoiO?MZ4HtD5=G`@0^4pI6Nerq#O1Z%L> zR=qVQY4=vW8}ze_rRaGOYL%iVIky_v*DU5h8QakMbne*(l1*1JCb7=TTAVf_*t_k( z`!x1=2L>jMZQQ9RMxg~XFQgBK7yj%}_6m0biNfi$SwOIQqNzOtcY!FR@uR!+?@905 z)ZlnrU7kN7?M-{0l_GQz9tk@2efp5ta|v!;ySpVQ&$v-=tSldI2eXa4g`%`SW{ zpYc1Re9Mb^mrrUaV=sSEl-0VbkM*S&jwL0NClhrWj2M>mVfOecw&i2c0@a)1>gK^U zJxlE?*v5c?5t)c_f;VsClz`u!OjS*u=}2btY@3k|UKz>2+mrBc_^FiLjD>(hf-8~w z*I}l0RrMa?uCc~9^qAo1CLfPiFXJj<_M|wE*t-Y4gDL1o*s2@)ueg#edsC0ZU0;iv z`WB3Q*e#P#wZElT146C1rLWfKVyDsvDIZDFBo4g>#kl<#BtE9BQ;f@hPYw(vCV*Xo_PS; zIhz%Ks2>AxJkm#cK`2}P2;AZz{>@|EU$D_DU$_fmagpIZY`_zJ9<*yCpX%iy4R8At zeZl?A$Y*+CSO~LCFZ3lJ>ll^>++M)%rs=Oq#0wbB+^_U)NI(1vo7PI$>+9KxsCId) zXQl~`e{b?!2j7DQNn@=)n4#q#^vOcnPO@sdI2m{%mq#PZ4pJ>veYjJ#=VxonnvBO5OT3$93cL_0A`WI;}YFyF-8jNhMe z7j9;4>gV)~-`;e#M>DqC)@wKo;G%4dZs76TbY}P)ffg)7sDeWrQ^()vn0c25oZAbZ zP$~2SR!AxQfWHCj-!$GMz<^uEG@d`$m@Q%X9}Y8;QOUq?qq7&3;n5KWRQ} zX1z_M5$+cr09_4~&xq>~=?iP7^@|P%&w;v zGK!(=kzZl@5AxPu89rcuc%LE$6fPEXTX7?a7@}n*jm^*{=~T)XDx~qpr3@%HZf8mv z%vBousf>{w!vukCI$&jh^{n{uG7fEbmIioAY znYm+(FkvCD9%DGfK;V;L`WW;6fQu*kVKS-ZjqJ`%#NwWSa^es+qrA}qJIz~w(4ACj z6Ef2Y$Xniwg3{$q&8wO=p@K0MWCr9S2KpJnHH}Y*UP~fufz$#-moAtk$V47gH3D$wXRT(G z^&E!$3M4kb6wiS{fQxZbz5z;-$MB=x)I`bqvQS3)LhwaqhItYw>(FWj8OxNeZZ@T5 zb)$d89@CXB`iOBQn?r<&44bxqW|+ONZgeWRk7Q?NBr3+J;eQJL>-%V#QrUk*vuQPq zLH})Fdet;KMVupiLn*g@9Cg5^-4p-v!v|X&1UKLa?2zvY-xx(*AF~A@!t;&c2P2ek zzcKQQ$2ITyXBOf_3+8FcO*K0|U)yLyq%NkeaS%YMXY`RlV4!1Ew;}e1qW=kr88~+m&lrB_ZuGE0CmQozlYQO8h~mG;8EJxbh#TZgWKWJnWZ}s@ z3}`gmG50YZ+{?&HmiMLl81>+1a7-WL1i0{4eKCySru+6Ye5sFP`Ww*hXUYAIDXKYG zHW)QPYZ_a3g8{}H9OCNyV&p}}0lyd>P}{9vu-Z@Z(18Y=>TF@Z4>A+?4>B5HuM8Uu zYMsXR3^plm>R_W2bnw3&VpM?g!i*sp_s4A85KPi_o?|GCK74MQ%dw^hWETGH&9fV; zILv5^Iu;KzqR_4*!;I&`Rkm}uaRre{Bh1F`9bxPzLuj;9B`eB5M;L+Lc|x!OJ37LM zV%J6*vruBtuSPbfIfY1i8E&TWzkW3?ig1OKJlcpBG9FQqKxMj`6T#~JI8wkE;EsPhTNIE+E3@z|NtSjYrwKle;9U|XNY z`c0;m^O=*4=7geerkEoX#*Eg&H9mwH*Xd1__S5jmt8CIVqcYf>^V2Yykg-fh*S9d& z46`{UW?-M$#}>{oMkB4p?`AdKemAPJIWrBiP4Gr>MEQt5P>nY!ioIGe2!RzB3lI3@ z*+vf$GD^o>11Hr7eE2*=A~S@K%~!hM|&UIJ|T*J)h5 z)R_8dnRm!o=AHjznYUhM6#JB|XGXTZ|IEfWEHe(1qW6KbMsb$1!f*)V`2H0}Bhm1p z0Z53c)gJ<E zk8U#_+mX(CNFLPp~#?7b8)3Eo}-3bB@+k#swg&XylGr~Kq$AW%Ac?+ryAF(a#+ zfOkJ)ToS@?5`n%DwPGaQ`XC5LLKGZr26>lb#yTko(Sp~gXp%`5Hwoly0LT6`R_>G$ zKEj)+cx(Y29{A3kL)Bkr&N8KXWFyN;eQ=sGp^ zjM;AEtl61TXU$LxFBt9xOV1ivy~AG$BX2!t_<)7uK{&(0VJI(p1*yVd7Jki$WWBE% z6^tP|Z6x#@hXXuGgg%(U!Td&VaG5{lIvO=$a3WKg{SSk13k(e`2gK!vmhv46~*$jDxmex+^@p zK8)v2gI6uTbVsB)j$UhsNi?NEnab&SRP$3>ygA`;FJPwCdS#RpDa{l<{=MAHHwM%e z;#r6H#w5a=_wSAWL)lk=M{&IWXYVd<$KCFp-|cSDkU(%+^nhYTTMC8J7K%G*ON$hD zOOPZ((ctbfxKmtzyxQCdCTTN+;B zhAC!Nzm`{G=Zaf2VG4g!+%ivrRNve$EV041U(Jzw1VT^ob%UVj6F9&p^Mg$+JA#3D zjBRG=9J?bz_uOrsVGiKlG0iO?^y+%Yq-eSAI|~8$O)V^L(2UNuuy{aEe~!R7*Br@e zwz7Q8K5K~%&E_3jT8ffr*|b)c+;mUb+1j#J*fY0x8(c}|^FHk?dFiS&yS;^Uj(?|M z9}_z0vBDiJq;uSg0#M>8@gUnv!6EjH5)ZS)j)-k$Uv+% zPg(%2=kp!CEYnHLwpDM7Ul8nUZXfi;&JOgkR6&rducac5NTSWZG8 zo(-IDnUCHkF0h=Y!G$cbG^A`_FSU#$_1{~|ECWKYT{?2hS=u($)>#%%`1g7X)PtY# z2^%eU4UnE3vc=MYbVdH&YWab}*4qQ&*&UYEkc;GFPFn^E2&J=@!4yt97ld$Cs)ZEi&DSiYL71s=&EkXNe7kEF_{G9eiMb{U0?4uc+m@lE z{Ji(Rg%s!eKCloXTJj+U{O&``!zgs}(i_W{q&Q#NWv!=yC_KEJ6~Zd(cNX9J5%*hp?*)3nt`T-O5@t5@`@W4kY~D z%K8H1ywln`9eqk^V?BzXSzGJV&~xUIS|Oxq_v9hJgGY315NK>Z50VbB=l$N7(#9*^uTEKz|YcpT1l_o*30@es1e3`vj7=JBq`aG(psylfj8rXvnroskiE@P~CUKQil(H1KF1&n%;?neaZba+GzM zaFe$jZT*Ps_D)T)-ZFvjFl@ZFJlV6`oo2m^rj{?aifnVbm1x^f)2)w?bUVXJgqM=c znu4vfi&>juj~pLO z5Zy5c9|( zcBh4ao)Z!2^>Qm@j`V0{c5$UO3|+sm(n@z(eQZZp(b#zSYAa|>&sg&{`j_gt#(Iv> zgoYcf%fhV#$qN~7toWq5o-HY@r|!0vWOaYTl6uLG?6!&!?y$xP?`PEyT~i=yMd2k! zE{h-x=2!MuVH{w9#3moI7ULuLTdN9|F%X9ZUkd`tz&yyj@pyja0PX#qOgLhl2u{G{ zBi2F&_>$j$%!+%`Q0_c#l}xw{C7rf*6e6BL#61ng-a7f5GuCpXlXmsIwK);rs$K%n z0H%}rhZPXFKX+ZWjuQavmRzyA1-AH#^(S8Onsu)Uau*S|u_Tu84Y#c(5}??6Pv1%i z{A}ZWeJfRXVEq+CIP<`I-xR_lRPX^ZN=Dej!Ehlg-Mp6He`1{sgn^BEZY=>kVf%CI z21C>^OrWAFULc^u`S5?N58zCQ^?YNkP-H}|NZbJhovjZksl*_S82muHvWox)!4kVt zIS7AWB}2dS_8V)w9dC_P;lJJ{ytS4U@is!QQ7;;3mi_Y9>d1Km(gG^Y>d^eR)`GZK zu0A3D4RJKS#~{Yh0e8nFeoPCgNtj6MeNLEInXL&GN#-h$#F3PX*4El^%E3($ViN-U z-$sfRA*RMNqr_w(YNYO0YLS723t0Kql8qOS5gQtXiF{-((LnQ@B8ddD5ct^$StO7Z zZ4>(d292_b4bk)!o7fhyT6R4))2_#&9O7qq_pL)LmM=2^QjS|dhn}w6^g0cycGlw& z3+4(Gpy|0-b2TDAtK|_Bneut$0O+iV?a6$BQyhoxq_{)_*((_97C#5c_nKQY8-Xu9 z^@;g~dEBRnup;?@S@Vgbz^Ka1Cq@T@9kV1s{02dEqSy&RuSAh}G}98rcm(?bv3rT4 zhFGpbqJp4kA#sK2p;a}p4`85Oxs$mtG5`*j%VA1WdM6&Y5L^m9MiGP8Mc%irm zL*LK%*pEfr0-o_jWiSKaF;yrhmd!<6Hth7rU z^Ex6)^5m~8=7wBF?Yd%_}T`CcFQISil80M7n$SAaW=6HC9CgA>jB2 ziLF>ev5oOqw93Y=0>y?m6kX^Jd>uoZv7zWN;f;|M`6JfB@-`Ah^rlQBu}Kk#%wT9F zG9&0BGlZz(F~Cj)OrR&Au$e^o1SWuHerqJEaRJsWiPU605r&IQg88I=!-2^$wxw9G z2hO&|yyynxlVI$XP5V-Oh+u4EEQ7z;ipF9UTo#@+7D>KLZh~MZFVO_w7pp>TD)z@0 zo7q&%XT&+Z|6374ACLz4PAoud)z4apUkO0zm$Vf7A}G{KEQ(dpyp{Ns0sCxI8*!`7 zbPCC4IuWle!hDF2Z7V|I;V4_sQA`KXqhcrV6X7u%(n)M&J_qg+J{s6F7>i<_!R~g# z+M2<_I*Z@o2GpUm=oX?U=Tbw6b4Qajo~3oc=nk_DU9h@9F%1O1u3~TGpVCztHH{36K|u^ z{6C36t|znKe-`^;B{k?SehU-Dd{s{oR=-GXOsq^U!F+whOmN`0_7Ug6<6;cEw8QA& z{ricKy`9052Z&9Dr~J?Wu@r&6kU@IWpA8akAy#&KBArP)Jexk<# zECYvye?XuK0R{J$>3W*}KI{2|_cwlh_de_SgZHUZ-@VUzruR|r`5zp`9_BTxeCsp< z`g&LLvT`%US?@jPW)&+L+Ov#Vq6*l*b{4+hYxa1S*cd^b*QqyR&O(ZpqE8E0Wy!&Ch_%Qb$mS`hH zYOzwL#6&}bLSHk{(Sj~*3C<|m+Q5hH5MPCP=>DctjwZk>oPTm@(sj$iwaqKp^aI$I zE7`^aIAE9aG6%)VQ19V=kBId`u``aG!YUffo}Lm(p`zVsI%4_8(_$efM92R6Tihf- zuwedUu`X8Ji^pPDtj_jN#MZPbk3JQvA+zI|jyln}5k@M(F@gKUk z9egFm8!+?F--t(0aPM0xn4U{Y7WSqOlyKmupOwl&s?jD$`%wC_Anit}1qLZr2w4Vn z2(Bi#7$x#q+t?)Sr5fWxq~>ABIygr99UHH4thACgUUV+$JCNx}*vqi~Qk|Qia{D zt6Lg|;DuY-1Q87Gk-mZ6rRIxzp-k$rSb@dz-lK2{Ic%n2j@M z=_K}I!?F-e*};A;E9Jr6VMs2jx+^#{uy;p-%WNa5G2)= zz6RYSrLL4eKUN=^^dvh$LDkH^;ml7ADnv3Npo)MtLGrth)iv*77wbw@uvOyfNy8B= zt|wK*Ho8|&s_NaPOW;-^$L&z3X%9TgSY4NOB^L2s_E~*t6+lhsXHwa+C-5->Sy1=! zaQNbc=up%<|BRUC$gG&jOear7RxAY08vA}GRSerg0-jh*Z1-o9Dqq zu+d?wrje8YTR1x#Nkecc{q##|wh`8B9)5)dp293mrFyt*8+t2Ym~)dqKM|3`aM|wG zR9b?|cJ8mGRsyn*_y$`mg>CspDjCR5geyHetgIk=*tdFi{;dT1L@L|d9ExtAHJ3UB zo;Qb$$px;5%{+z=`c4AbbpYSmLi*kyjO4{yOD_qC7ix!1yNBOuhn)?IhR{JePi8Vbh5=!NX_ z*|c6#Ch}GMMFPbV_NIDEvk}zo1IYh|-|B;n0zN^Beo}J;te^B$*vM1*RNnQHwO&RCpGz4!9kdqrF`rlNx!enNl(*C_x==tIy)3?e5NVk}>=LW|L$OPG0sk8B$zHN5Bc%e)e&Fx`&qGP`8@kG=fG+WQs?;{ukXSX0P84VlfnOAA z9>NZ!N?U-9j2Z(7xPz@6gPGXDq_NTuAdd_mD_u51DWhY$^a4Ta3~6r6PV7@Z3B^DH z7HUl{CJi!Jwvjwl;C^BP6c09UXUl(;j@c>QPkzCKsvtDt4HY%u?WBqNjK7{J>0*Ty zCP~%w%%~UgwN;7xg+mVoDD%`w(sz;l0-^~tb{08V+5iH|?#WnU00qUSN^v+?8cmf( zV7@O;m7p`U*8(Buz!WcJg)=1wSP(TbrJ@C}HF40;)}$-jMhhLMSUk`P_)v2okUjQ4 zva@TM(#)*BpnCLW{B)_KusmZ1y0D++o*`AovDImYv=JSOpD7iFL`;*J(p{p8Ri7<& z1$TGdY<#7a?96QG0u~FOqc0ufTxkGEcthr5n~vns^P~er(K|a|x(EjPx&=}SDzCl} z1uwI<3jzNgv-u09*0{2o7vUhE!4eip8)7eEQ2;{e-s*xNsPuG^)C`oq+`FAOvULhkKmSe1R=njxKLyN0v*4#RY(0 zNQ0_M0ImTv9%t4S*hpttj}=l4%-fC?(w7L_D}gASI}CMYZ>Nia z?Zng9ND-l6L}YHlRN!<+n82TJmTG{J!z%5Nb|MJfiL-Mv%XL^<%?j?4NI=EEOBxH) zu$_-c4L~Q){~IQ0FW>*06iJ>yPwm!Uw%a2O2D)*7kMtAr2*;)JkrQIz&kK||(rsM2 z7bwkMUTvQgkyU5}JHKE09!2UNkUqw(a|8uYL)&#wI*(w+q3mw#V-&ks_5$bI%g~M5tndlIHofetcfH7S zO7aF{hN_&GzAz$r;w7n%aFsj$kkWB2;YR~E8mccK`Mi0#l^ZlSz&sEgb_ZDeRaWmVCSMQS?CS@T zg;l->{3k2n={;#);MvDE-AZiM{pruTY`aLbXn!ZE<%V{O+k$^GPrr+ZNRs2VH{xc&1z3eJK ztns~q+0|wb5iLZkWN|~i>~XtNDB=kdD}q5#a2DTC1g8$ z^h_!Mf|BRC1a*O9tkg?@P(8@a_q>!$Fe1(mz6Q(_uJERBCDnkueFPa+_I9%{lUxZa z?o*Qt+5?H9@}xNKt;BIIb8Evy|OzcvIi zeHSecM5gP}@+SxqV&pQ}dHcrbc}K^{xDfo!R>jJLK&bu5ELR0)!~5lun}mR#aLy+8 z5MJ{y>~c3VkevPbUnbzYJ-?MZl8d1m&EO${O)6h6Tvk55weNfG#~4Ca)tY!387b zCJ2H@$wP7Aj~*rW#DO0+TJDY5kkRsw!cqRuXnBbsEMf~%*)WldYGk$u_2elR-l%Q#sDoq6gwxgQ8tzVWh|6orz~mE+aq=0A4gPZJ}LBxMFq^zn+2pCH%&}ogm)|6^`>7nQ{R`!0s#VMCN<^ml@QRy===& ztf9Rube7x{H13wOo5 z8dgu!GiI|Hm>2R80qn2jw=&cU{sDk`$ZG$CE&h;geuJcxK+=Lh z($PSG%r+MLO7`;u0i0r>znL?R<__xcC#h2TaSFJm&o@P0Qn))JMryXY7I*86_*t!&Q9njU4NNA$pvUeab09-ANY&7e<{||z_AUARGMf|id-7ZDY}-yADz)Q5JyRx(N+n;sX*W~ z*&4f_IMYgFebVAJft!wqE=vj20>x5Iwlcy)zTaf~QHXtl-LB^~LE8W#Uv)xkc4BM> zGjoK^!3Ks<$JwM1+nj%8tru#u<6U%w&CLdf+F}FwG{!@1zvTaqdi6%&yRP!<#r?{S zQ^{O3VPoixUi{}UD$a+7*}nOAm)^BQ(^Wpwrm@x$Fc$M4O|W&ej;dIr#M4wufOtIv<~C z+ZAefn*|fPmB37l=f_Lf8j(-igi^MT0RLN;vNa&W!iLheS^%$MA0hQNuk?{EoahU+ zKDLbqy79-ywtUDFR>t;)afle81@c~HY#~BUluavZ3pEbQddYT{wTU>#eC2F~>_f!J zX3*`#-Te6euz;;EIIA)T-s%;Av+Cj<%Gu_d(QBy=W=qK6`RdxhqGD`GeOnyF!H(6p z-9_rw&ujn-E4ibAt%d>pZ_&^Ok@xMqdt)2GR|?F8+q#5fm_jStujF58QX5+Vll;aC zf;dPtM-+rdfVq=i<{NglgY7H%kwoV-Va~9>xr{PENogwow4?2U@b7|j6MnHpe$ z*ebH!L-E=vf#RWAgNKVz3_dW12`RR6As~gHOryT@w`sN$@C(jP%(DFv0jJ0z{yib> z;SzbvY(SW6?CflG=o~*i$2P$L-O=Rv_`Yvg(?zy?Z1H@XRk*>nQPNbFx!C6759iyy z_%K^Ja3R|mpov61Go%nr)&4OE9Rww>hVXN>#h7~~YjjL=O(Pr0G)Fwj~ z7hAFldpezMS%ru+A{QMfio%-xqk(GbrOL*gWo!91LJ2FUwGbj2-pkndC`{3fT~CRVOvfM zyZjZ~MFE_9&o$dQIAG>4ZrV;6(WRqzFiLEc^7m}xX!{&}pl_ci5A^MG<)N)pFml&_ zW&_SVo;Q7N`-EHo&Uk5?j3HO}2k<3>`(D`+sch{xRF)^dvDKq0x4*T09f~HDQ2POD z>TZO+ahR}=SF_qLlh46;$sTJ${9}jxN3tou)N6-8#vlBdVwb~BC*U)I^_0(Xfg>W5#o>_J_LfjO<{j$T zKMFyn*$wOs(2JK1><>-o_npS}r}ROtd}IHC?1MIHW&axKY;`+3*`GZT2%hKxm)hIG zr+vi-cCZ6~eZ^mOv_oEc7LV;>pFlG^??*cjr#I|wH+w$ATan8@*(Z{e+47(53u(!G z-NW96Chy=c_NElZ_p?K4n6WKu?HcB~=Ky;K&2_Fpc7W;rtc%0(i7U7d`pTQHoDXKp|SRnL|I$9+g_h9OtZTUSmd64c5DJfzv>iUXU-J>??Y9KOAc>7UZ|~2aUbN3Lp^`~g?D{U4 zbJY&b#nEiXHG6ZaEbn#u7#cXgVaHK)itW8=$L`>*Z`mi&W-;8cZ$WhX9eZIK$KUq@ z)8PAC|ALkN)~A7Acw`U8i9}y8fyF+xJ24sYPwk67oDAbX_9$}jXnt)!in=bpe)knu zZ*jc;5yOlQ{UaVRIerTP?SVx)jz(bNT&m_!v2aGpj*;|@ZFUD1&e*Jl!?19C{J6tW z(um~{>2c6d zS}yyg-ZFpF*wKZ?)w!iUt}!hgz?L$Y)Y_2(P`a(P!x}N#S}xbt=p}n+csAZ4I*}UAK_Iw#t|MY-dMq;r%>3ysHBy5TCJ*-5jOB zN}bisF(=i#_lOhFth=Kol)e{scN7sk z3nY}nT~|k|Q5d3L&`^*f;m1kn%Y#r;e| zy5o(2lfEEB-}bPt8NT!$Hk>(TgR@k4f&&!!p}fsR2UHk$@wh1t?3_$KdzzyWL7dk! z98Ey^;$O~kjHZoueXaut*g95WzN0jP?(-evas7>2;Mf5jlp_lq8&KD%g^o8N5aAoS z0@3xn+Dga1NC@v+wm5(TZDL!tI@Y30_ic_N!UkSrJEW6QsP+y=yI6ep15fque&!gy zH@$hiI$sO#*UVA#cB-^WsFNyX zsMN#L!kwiFkQ|J5wj#WsnCKit5OS^Ed6YoI2)9!Q?kRJe1l-ShojPz&R-DdY3};jx zC+)|zd7P^#cc%i*g9H%EBmf5pG@hErNkD!~A?F^NjPe~YylzQO?6Wy6xf9g*=NENu zr!%?Z$4-!v#`Cr1oS&G$M|>uVBtwMo$bw-i%CtK1T{7_ zaq6>Nzn?Ra_h{l{Nv zQ_`JXXp+ZFavr2f{wC82u#(Q3&-!4Jm(K}Ia`kymktX@;#rh-VO-nr}&(+Ses`U&@49Qne#IQSDrc35oA?le&KA2SXLc~RbZ80IvXKr z(o1J~1n;_5jFtY!*$`bx{m0n^Z*KqNY#xY}W5ZuLi{p9oD=e>^y8m}4EpMII(a9HY zo#TXA>7!g2M*0HR1{6gZHya?hmST2_8eElVmbw{TxY+LDWx`!`1ZE3&ffY=V?&K$8 zRfMavAe`rMQ7#?|IJQ}K*?2R_k*V|+=X3MIFDpW#awwnL~B^g^=S;qz%%@=X3kdJ%W3P;SrW`;M2-o z$u$DvC37peS_=1hRAtwnQQ!&RtLwT0QLl6LT)&3AmcYrs#(UOxRUoB-^`E=G$03v0 zzy(4euin5_IT$JqqZ+&57w;Bp(9BgaaA%ufY>(U3)Ml<{s3@bkD@C}*^L*zzY;Y6Z zFx)?joXFB09FMW>L8J{RbD3MY>V(jJ7M%U>&DVLG4z3en7)QAuU3ntW^H36N5zz5Y zKe|St<1c@7wL$P*H&+obF4MZXJ~x08eDi150}I4u&x~-DGzqu3In@t)ba?1JpGCN&o;PHg~$Bz2G+3Kq-($$yYnz2Wi&TX2^R@xwC&$+<$( z)QD^B&v#sMaQI>51w!OM!ZRMazBUUp*<-;CSCGtQa2G>R*FZ7;lfj)9hWlV-q}wA* z;{_t!zz8z=c&8g)7v?g**PS0hd#~GLo+lF_(@*M%B)~O~Gq3xyP$(-Inzw#pfg%db zjq>;jTSFAADHH+`nxcHJ;yz2tmjiOUJt2^}%ZzsqMv%9l`w3Fr3GOSXn(7G3YKaQP z7IH_2;p2Epx*<%ukRL6DY~T~D{>WVmLHft;FIc0G-Q@z$>A*@0mT_0Wxyd_}4V3Ve zcP}wSF3I_LOWyl<`g49^AdC0A%O!n?7>@rl$bT)!zj|L5V%SA6>hh0YqJQAYlI$V# zyDPf?uTuPx-`#=CjeT3$eH%)Wyk<@Jw??4Q3u?Q^5+Yl+t{WccS@*i`Z^2PoQqS#V zf7f+y0CNb>uqv>Iul&rt35rxKxuN@OeOHEHW0|lk&osmbf|^Am_se{`(qCjqkpJas z0lus$z;}X0B~wMeKoU>>oeL1>abLQ3DZ;_Ix4OH-phSGTpZhWP&ZYkDV*ziB33W{l z2-Um4B?@Pu!EX2l+Qp-XxtE3tJNc$mw@rxIC1Y_BrzISWqeJ}i7i!Gf zcuq`ox04W7Smr(@2*bH;g&Stp{@~+QyPp`5K5U))N;s$h9e21R3C-yKo4YSjGoJ5u zj|rB}$U3m_--HSpsV5LqemtLY(7oJ*9a8t0yQ~Ryjyma%G-+dDYKMHHLs%-1kKidr zjZ_#ahqlcbw(hJu56WFS>%NQeu!9%e_kcTWyyymQeSz1!?4BZco{50Y0MgH4hY$`S zj1Lg{A4Ie#P`#O%uDZXsK82zOIB6;k87msP@Zr50B%u$ zVlj{lb1AvZyWdZYg{`1}CB|eY@`rcaAi_ca?}@tw0fA00+_(??#&^APe{Dct6jd`kF@s-P^MqZ~D4CjS-x2dDf%SG`Hs`kXi!y z!F-_n;FV~eU3h7W^OO$Be)%l$@>!s=1qJlVn#Ozf2-De+M9(v)LVy{@k3rWqh`Ml+8DiUeER+*1kUjDMPYQjK74k8I^xX96htq`hY* z-2!eUd)5+?JENOtJcT8Dc=Y>6i(VeOe+=p6(eEFg-X0J2xlDh(&pZ2ju27%n4f6aI zO7lC)gMB`L|C-{tin{~rGse?Jfy*~Id4P8^lC^^@V?Hz1senZm?q3@T+ANPA>j7ab zo%I^$DUV9lkMq=}FCQ_%Q#TYB_a@Uk#2Fnm&GVHpz*2BCb4|e%o~@0W#&gZ|R3%yW zFK2nG;J}(P%j1-AVD%6J#+$2WL%9L$z${PAtQ;QX@Iav}`|^DI_aOgy!GCp*4kMu@ z;_;#N&a*w!gbWrl$CEeo7`A18Lq{e&Q*wuO#POVFi);tQTaWvLSD}Gdy55(I9hu_^ z|MyYJZqM;-2A|{gTu&h(jh&wB$(bbk;S%8@wE012M4K5ISK zpsCSvoo6zsA_yBi@xncxu)(w63Gut(;%H+wc+8&><~Z|6TTXRmHiWd ziC*I)Ptw9V!KR<`*oC`%{VDq7fAMK&Jbxi%BhPuBBN%kv(*&RP(s|D(2=ZL;d`9H_ zeE!oQ=Nqu;2VU?nP)c1FJ=Fxb|Gnt>0YL85MNcj=N^|QE&zB*>c~USo$Jdlon^*vLp99ESsKBkm-LVhcb(%$L~sC!U%~r)_?*WBdPndETZAiT<}z z(N8_Cf#m)86no}8V^6W;9`dtKJrJ9|!z(`b;5zY)r@!z(Y~d;ID|p)wvUkJeh1CG= z4)$I)K*s28sP};Ih#v^^CV?W(x^DN1N#=bvbP%f(KmZGHGLDnPppzll$v7e?Ia5zQ zg=FTB_R99GLVE&l=jm_H;BCeZuar~e7}(oH*=73Mb2(M63M8-6lh0F?+q!urM|O*^ z0bp>Q=r^I{t$ru&Afxf`&B56NbPobJ>VZ*b9k>~@f>h^KL+#< zb$N+d^P|gK4l)HRT;7F%wcohCkWaeBdwRUNf?>;Il;#D3dYvWY(`%@i&wEhJ`rPE( z4IYQkSdjT9FPPtJ4aW_nLJ@BQK4Qlr-o++}m^n*&o5(mayVddnmhWK;>v-b}{$>N_ z59dVKCJ>xQB~g&`_#hGLp@GCTby4oU(bXnKB9KcOUCsJlh{2y_pEU5+jR7l5fP8kW z|0Yb(U1KvEc%L{=*fcm)5R};bhNfB&<|P!Z1;HEfUB3Jauf7X28hQ0yIH0i?yO8&4 z;+-c1r;Dnfu!@4+&8sx^{zyE9bzgfg2MgoaflTY+EkP!O_Vx58SRe}fY!p_(NmgRCw;9Oq8Kb?wVxc6ZcxB-@ua@Gq z2!_)(rjGHFnb71^?38}>__B0$iSTbtY7g7$zw>32y!9e*ZxiNt;}ImxK}Y7W_H(>>anTz)$J@k& ze%)E%EfIVYU?_;KU*J_EP(z6S09f3oc>RUmTEP&ynYzroJOU7_-Ue?^ME7s-LV0Ot zV3KzRCV6LIl6TU!&za<%fl1z}Px8*dB=2PUB=4ln>_#Q}B=4lXOEG^}+S@eU>}H_Z39p`z83k#2P-6;2RC}vQ46I4zciJ zl6(b-uZQp$izwiZNxn8o#d_rs8T zN)ul)Wix-}`;4-+XzH6{2Ot-^`HJD7E78rj9=RTL^F5+m*M9QVq+CheebtG6)uV@R zsR3Oo@QbgXSs2I{jPijGnZdV>^$j8%uWFhP=oo94=DUj2I_bXVCUkAtufC;9Ky4nv zV5CU0!46(MU2z37x6^&sypi>t=qu*jW(VqT1k5n%)EqMYi^U62$C-JO&rxul9ZBZx z_AGnI!Kmr~ED#zfu#qKA@)b+?-?iHbd?yCEvwSC*%Nw!;LRi0 z%xS)2h3=6j3?dUj+8 zj1~K%zh6H?^7mQgNhrjf7?dv%W%V+BJMGAhREYoSuk!kh9rd?&c*1mFhN16W5!5As zk=!_Ylo;wwzq$coZ+6xsMUvwe9D*rtQ$ z`X(5P-o}(+0-6Sz)aR(#d(SQ3du|(eW_1^!Tl?9V1-^4w3LO{voU|15ePABJ$1L>i z7wk{TP#@L}+!UcNv~u$S7lgT>9~S#6xQRjmnK2kFr5|@;Avc6E{cqkHlab@lVxKC& zy!c|D42TxG1Rx5nwOH!QV@EU4GY_msY)z4b(PO%IgErL#f%M(S0IYOfy?Ptz6ARrJJt=(AzG6` zN}SAQ*)2Agbg%^IhwG1B9@H)Je^J zo7LUuYaDU{8St!Z^10aFjlM!4ygc9N%Lig1lE}Lk0yk^1$=40g>dYqJ9NeAyZT2k^ zK!V=lBU#kyTYO!FBYf=^Uwkx9gewPpouiK038%(qH!I=n-T|MF{c;c==_ucH&2cpaB+4gzP$J^ZPWVcZ z@4^YE=>TANPWwoc7{SM^-x(j6G%WLsuNH#4XDB}_b=KDs!Q``gzNdkp-Z?#S^*P^E zD6lj*@9Pir=j3@`PXaylFZwE@MEXTvJGA%qqA!j*9QUV>v}HE_>6?wF={zBX2(uIGY1=Ukx5&`*Bo=8U=Fn@XCFh41-FLQtpmJzp=9lfL}G z*MkIYn?Ax9+{@D+`HB$kx%&y`{{*}L#Me-O@xrIRDzxB6KJ&E}4xoZdHCofp0yF!HeHg>TZkN$c>^w;GpL^&ek8w|+R#Y!RHuo;i5J zpl8|I?knKb3nSov4@zUeIem9M!q4X1PvNqs?k&lH&=1OZ_Tf9>mJ5EinZ-}-7t9w&$} z2f_^Inf&luAWg!A^hb&YqxQ0(G!>rl9|Q%4CQh*PCM7QdW3V2?2ZH*+N`9=jp25mM zVy3(aQ(nVP5q}k{OolxR{;NeQ_TUF1Hi zA!^00LK!TO&GWFfo7SjXn+Y*ba{Z{VkWt0|`t zG^(x~N03lMISui(;F?Nu2v{CJ*Hga1_%SOgq~H0AdP=`we0P0X76zteZq~HS<((TT z--O1%T{qUMe-PX~8_bLN*>99P2J1ZFh$RgQ`b5MJT_%N{X|9~ep%+DD(~CBLr)&n+ z*}H|(2Mq-pUdVhcl}4by{M-_iK~1}58>PGnTIDl4C_wpPA-bzVCb$szS&w9eoP)he zRz3;_0lnnU5SB&QsJ9}MGIZy@N*e?x`znW!I=i2u1cP?<+hC;Jp#{Uk>*&c(vH+w%8pYYP01&ZQ?`;dp0CrC zk_gh$l!C~+HBCuJ&@f%eBc!rl(iQTo?##eidB)mhD7jHSB}3UKF+15Jz!x@Y0v-f& zh8-l`Z3*Bq3}H%9qV24kpsY1SOxBNJaEg9pxt7EKL&_wjD(X5hNh#n=foQ6EDvUb; zc>q}$V&~Yx!4P*p%Qs48%C}3o3Y{F+fq4FH;I2|G8z#QF{QS2I+eS zpe~m{3sC@uw{yADN$>$$Vy=M`z{oizXGg09qO9IZ#SZ+f-AX0Za8m@bq`1S0l|z~D zFyATwiMy=)D&-8;fqk_CJ;FQ8vsO|1;zXm0=?J2{IZ^wEQTK;Y<-=(152Nt*saIvt z7f2NO@2iD1f*`BAMDeCpH51#o7G1l=&aG9ZQO66fQ@r_dIv(ho2H0Okg~BMpvbYi$ ze$?x~!?vwcB#h(KI%RAPnvr;%N7;jj2dek(IWTK9I68i_(+SC-=fG?R#&nAug^gi^ zZqi{HM*43Wee9EMfYe7=lWmGC1{))cHU@SM!TW*Rlv;-9>2~x`R~l>z4+-aYC=UTB z5A9T-mN%1me^bb?*Y4ji-%t7V-vH8uNi1^@_W23^+a6_tv2S1w2jP&;S_$#GW$v8F zsQ2HDc^A=5Z)Z5ntL<;6KwCdff#GrM7NZ=!Z{i8R; z!w%vQ69O~(0R&_t4=LfHxJl~*1CtIZV<5T=bXb8?X;$O7QVghP@8bZmd)c+)N_Al| zD|A9>CahqoCzND}s0$~R#Xx?RoC%yvp4`w3+N!MA~6;3*&vd)S;)idquByRj^X z0V2?0M~hPn(M{VTwR<2jC*C$E&R(Aav{}mYoK_;?p_>;uql6-4ADsoRv6O#zR_SU8 zU4}h~O~Mi{D7pFT^Ge@n{R{b__2CaJbS%Lje?Ra<-;0j;9 z{Wlxmk8I730E-DsKQsQNs2!+z7$pKnu059bd!5KmRQ_9H(tk^=*x|nv2TGTn%2NN* z_xkL=l$AJI8sAYy3-$m}L+~s9o4u-cihCDc8^ov(sy@MzW7T+^$dhB$ z`GGNvT`f3y3$qIEP;_kqegabKGu|tgT0=0rmH2NK^)py}m$*|>Pe)OUs@l^St7E2+ zn89+T;jmxws1I;9bjqtf5bx?ffJ_8fq5;;zC<9N>_3Jeq zKkS}cwDIE&R5w~>4;!kFAbWPLk?JMwdQ)RPWN}T@6_JhV(7?Hce3BJ6;;rK1W+F~W^aRth{1nUMk|E~4sC9^jnj z>+D2JbqN(l*6hM$b0|<b!Q2fkR;X?wOH)?GUz!#(_IPc@$b%mHt2^%LPF zZ`oUo4o3&RAA*l{leHd-?!ZR(P&JkeOfDae-HM)E9;xOAc{y~H`U1TaMyodpJOB|F zrm%9GA3{+8Auz?npxl0i{ITUWKd`GVJ=y$_=Soqb&G3-BQ&mt~{^Aki)MdoW-7sE_ zG72~Oo(#31Arj*WA;{mre3`$Qpn~ptlf_O{%L{+9Iuq3%G%n$};AYn*s$~OdE>>=m z8j0T3n54pR0y{KG&46-ftI6tM5dZ(0tj>Vc8%vp{IxwPn)38m1t9)T57O?BBQ}Zds z(o_YmvWlmvDuNPeY90`up71}XtLI3~f72Yb8unZNxoSR^Fjs95cEs2T9*}AtX>a1f5BQUQLkpF z|GMpAni=SS~7S6zvPl$B@Vd(ZcBo!g0?*6WyvtgWzk5C6z2}R8XJPHTtV7nm z%X;>`=R)iB^!n@6&kbknEP17>@ZZ*{YA`U3o14|-(r2?45HM@=IsFQR{XsYceoVU0 zM*wxY7*T@$V+L{olIqwksss#f?iTeYXmB#`Hnj)%>l3!AFrCELZo}F_YPlWi0Hki+ zf!SWkFYi!OjZrIgz=tYvP_U$JY8=blt#(A_=sjv95&aQJ=r9%(d}A`G7op~Jy!#%2 zHJ!psh$iG$GhwekTDKJsBmIVoN+_#%O|kLId)0vvShlT?t4189y!{z<7qRn`E~p^G zv7r~#1O%%ts1>l(A74qpdYK9}thAU&S<#5Z#c@}_0&7$|6iaZLHzAO0vJZhALhwL1onpY+Ke}(!VrUtN-mZBCTxO3Wd zDt1VXeb6pUc55z7(E>?t=zyf%w*8NW*g;uy;sClSYmG3s6>VBk_(S=@rd>0DcGTFZ zB_SB$)Cz;5wBD(`AUVoaZmm1HHA+;pM0|m-6m6Oy4RS#T+@Oz9F;P%H%{++1k9gS_ z%zLdQ&1Vpvu#QEwTc!z)s9^SIQ7xVgET+YQoHn-@`Z?})P;_^2q^&ww+Pgp&1Ipucph24->= z3$CdZ1n0R(O)UX+eN$7j**_>^2^4`R>)C8{O^u9eEzpbblQp%WWWV;C+S)G&&ehhc z!2E|&NAn`6kP}D|u*4ohX9I{Bz3XVnWG?1@UF|#Yem<+GJ+YHBOgNr~Z99_U1a~4! zf|Gq)Un?fO;N$CSkdS%7UwozwgZ3sL@P&3HIOYZJ0wg?+3qf`B3*PK2t+o*_mwcl^ zr1u4H`kmIo7_-9>83hW0KdJ*N-^mWP(q3v$$jgxtlNc0~rWnR)VP>R6U~|LiIwU2? zp#QDb+8QB{F;p?85yFy|lQHJKjN963=?23QN8n`sp@UY`V7d)B!1{O4M82t$RziqA z>7ZM&E=8spS;b^cVs#E1Bvzn{b{qiWO&4Usab7%Gn*rS5RI+x(XgHNs;E74eO6i+;`L_s|N{x;oQWQ%tZg-*lc>?F$3-!;A&-gvZa-a0|_3Mdwi;IHuJ?5^-JT zYm5JP!^Ib9V9Im;=~6A8T#^5@TsvievGY2sG-#Nv4&+9etf;R9;8@00V zv&2tt(l%2%+oo+a=GU)s{vb6X8(5nBhm-s_1pjoEZgl!t15(TZ_UBh7iH+H%O#sQV zz;9Yt;G`3O(>eeJ57|u{hV#_DT5BW3cb*==emcS94{Fs6(3<=Hu+|S+bNtZ}Z2;l- zKONJ~&gUKNrkLdF?;6KLz0^FML_M zA{YixaH$H4PT8S(j^C4+OWaX}L)>^EwvG4PNNFww3On z_it#r{@UW(+CI`>>wZUbhXdMzqavh{RgtMrG$%QfTK`1rC8Y9_Pc_hmj_?Q1v_pbC zz@?joHIH*?1_+NDX!QdFIsQVs7Q4#jpKvk6KhRz&s8V0^Dp)7ejvIxCY|0yLsqm23 zeygPg!;a`>Q``{p2GTAhE|KI%SZLf1M867)15*7ri;9RVRrGJ?C^}$+HmD$91-vPn zs@M~&H26n-Q6ba(hz$Sc#1+$Y^CQ*`0SsN4!L2+#I9rg;T}Zou-2_Q^l+Y zGu)oX#Ki;TdSc`Hk~%%y42}WJDrAW(ijCde66cP6rL&OnEjUjAE4 z9QNcR_K6r*LdKZYAUecyM!F>vN;hM~ILP#{RmdX!?aa>cZeV}2H)33Fywz{FC7hKm@H4E1^7!=*UL=MQAzwzvuiYS>WiK-L*C!$4Pt6o+dPK7~s$ zWnu#kWWU?u;>?dRC5jQ{F*G3=sUh~bdeC%lWRGhuJY(zZarwx4yFIQmCZ?VvPJupZ zvLg;Rh+%xXGYbA?HUnkwJ8gHp6X$7N;UtS1oQj%%xl6;)YcjMM$3v8U0~+@F(GV zO_q%N^)vlordLP_2RAB6kATJz6Ue7z=i3^DeC%QzrsNg(=8o%Q&{@&~cpW%?XtVb- zpy8!?4E}+i17W^IdjM%ZvEc-zP{e?`Q~|knVB{Jwf36X`|Q0>jVFcNyy2d^4@x;w z!sF#v8(F2Glu$n2;#nv$$b3BMdFOL9(LINq*1wXwuA`YJiu@a8v*c#xz9r{_);wnj z@r`oN!Efnj?}1$2f%_M1duWpTm@|Sm>H_5#R~oP|GxfEq?#F_s7fG2>gcs85RAU$M z@6xKdYw>hrXEk@jP~Hv>OXkSS(j${OF0%BJWOp;F%gHPoV=3;sAz4M@ooqX6d+QYU z@WMQ6-rv?;h8x#k+q%o~eXr7~?xGbI7V&=YN&aV$d;rRkvgUA5)Z!xYe^&VNLV(3D2t?Y}0>8FKh1}tNblR zz`OE{S@su5Wx_Plq@8~Xy%d(EdUabGw zk)w2>zShwlS6imbROG3r=d2+I!8P$I;{DWw=V@wq)GF4KXGX60KskB>yb|5Gle=Ik zhKwvZ8{vPS=-3&yp&S6BC=R4;Yqny^-%?#eN-R>ya9zj~iTC0(t%dqcJ^k{<3F#Qm~|dlXfpp6Of$`P};*_IE>i7v50yvP>rNL3P!^ikaGJ?Z#d$lHMPW_hciTLOqq&W>j8>nnrs%%z&97W$!!LlM(x@?XBHv zq$^@J?F`6-Ir`fQ>TtkZ7GXz4)mrCER8=C@Gq3^X!$#dSQB~Ko#Qr+{H;jF!-jk@# z=+`Q#R-C<|k1W>%WdGf{{xyr! zl=(D+<{%}N1(6B)7NiCCmf&3w|2>}O-}w);VcYwYzuk%Gj^iZ^LhT^~0)G`8zc4g6!}HEgV)~<&D$$2s=K|vK-)q00`7! zbyQM7u0TuIuA{Q_S9MfkXaWP}puCPuRq(pt|u>9ve6Z?lIv92ol_)hF^!doDvD1qOm?F;-4?RUZJ zZ&}M}uYi>x6L^pMeLcPIf8iMa0O>CH5TrzzXL-I&$C&Gjkg$>-0UWTPd{ zIINGjaJ*PwRn;fztHg+}*yPtB$H)O)>`7H1;vn5aa2USPk36Xo(vHwP3i5347`0rd z2DNfn2YGTR<;4pQ>s#!{;m>mTZ;t(E&W72^{=aaOdV;0>4o?2>Eb*W2w%oE5Qns<5 zPX$`rhcr;F9g+Si)yl>DvWi#X8>-}h)LfQc*-*vk_Zq6WfUfk8H&o?ybR(4*&zLm; z2Erid2%Vra42B`Pb0g(W5ZO>Mv1P$u)&;wif|nfDFoJJtq~i7dMk+2ejgfR1r*Ab< zv7T*>rz_i<06Bw9)HNHc1dnWzkxjOdP0^E)m64RD8rd`(*>r4CTO8JAJ-e}rRjEHX zEOD7(TxQz1%+kf0m;`1US%!@)Q};#|I)|aTz)M$6RBXffrkh1A56GKs9o7*xDy76_ zhqb_rYcsA=v&RFka0bP`2s~%dTspX^+TgiAm9Y=8?}m@`?xrds`eT}(Wrd_Gs$mP?5&eIw^Wyse*y##mFXBI@H?~l*h25A+fP#|X+jOZQeY}O*5HCl` zXB-8Rrj!BK99C0w&7e87(3@MT*a9tSJ_D^lo{H9L=dfA_S^7jvmCq%9;n#T{iox-W ziZ3LFn*{2Kx)=0@KG0X!d4@}eJOujDmB-+-)Hxr6{jo`2>)FW4i{8A(5MTTT7{7rw zeuIqP9zVZ8{BkT;j!OqlLqN)Lvyq|nCAneLIg=ZXO_ICgw-J8m+mqY~<2TaAZgZ#qRyXnn-f$`HeehYO*8ZIe2RKE|OjQr*&r(%f{22z%f}GK|bo8ERZW8DmHo2;v*OBd1fzS)4 zdr?=A?j_UxK{u4{Wz)T)pOx;9ru&ngE#0f8driMgH{d$k-_=e%t@E|#HYhaM(pB24 z2lYUDp#_62s}K~{i`%Q%H0c(Bq9C(A+}UAGyzNbLFSU%vKru5O)FpfTq8X26EY6Hq z^&1cW&0)o3FAi>y1?a-Kl+uiq2)2q_ih+`5aE=*lz+fqCrJ;;&(}6t8(oBGIAbH+I z8gC0qNsLf>Z zdhS)_CiD@Ea>v)UtIlYwim8u{)1$`ev23S%K9B2T9nCG@6Gm3oMpjRk?WF3a$yDlt zq$XE3Df3BL*7-?nlG;<$IoG)XHd(vA-Tcm(#_wt4*U-kVk@4H*_0v~6seGQxOJn2I z#Kx(qaXO9DUN$17p5^o;+06JgxAAMC+jmw8xmq&xjGoZ)QRM$#MwqhXA0hbdqzextjp7W&Jss&>FUdbzu)7G)&t$^dVw z>ru;|+d!Rj&u!Fmx~b}(=Omkq>?Ir7%le#8w%N$G*vPi(lox5E&|{evKcu>~yGrs*!(v1t?lKWSw28P|NB2{4~Gt$4&TOjNdIAzhCuHU-;Wb_M46D4mJt@ znP2$EA>PHgYy7N``**E_zEeNl+hiX=SB`+d95Pw^T-YRhc%SUGf7gT$GJe4}ej)lT zU-(cX3$u~Auu1rKe&G{Cz1fEwzX%(@NL{{<$v(G{McK%ru}SzXe&JV|@Og}1UK_s$ z^fF)gd`6bvMpgiug#Xnqd{me>`+~-=kd0qq9nn`6@H{OnVq`^aWHHzz{6l@cYoBs_ zeu%4PF|0X>#TExr;;C~|9Gg3Y8`Z23SD0^*FDdeB29`WNi_|{paRwrN13qK=0^{#9 ze2igv`NzVYR*4WxU+$}>xo-0Io*3$4n9xsE(mVR8#-8hEbHdAU)`HsqOw*G7Gaz$q z)sF`v-csJB_FN5(U+Wxxa(uSYot`xZLR%wCwUM>MCgEoi-uDbUF~S?Zz47Z{ay-Gm*OygW8R?zY026MYO}IfiWq?_=!A3U3Mm7|itXiY~*{c?n+Z%qE z@f&XAH$rdqg&%2TqikfOu}S!4e&N$i_%X(Btc~AuI)0$ZKF!F|ZDixHN%(*Hg}-9L zk2ii3Z2TtbIll0djBK)vYzj6BA3Pv?aXLnM7iX&Rn`YxTT{{Mu>}MF+OdHuOY!bef zU-*3{{A}ZwVdIyn2l~R#F|xTfvU%7fd~d(-$*D&V>ETV`a-ZDcF-w81JNh!?)Cl_7d_BURY3N`K`utv06T zb^H+Xs9a-$t+fgE0{;)g$krLzi#D?L`gLTUSHL$I*+v`LCTwz>t@V3Dcm;e*UhkT| zWL#dhaoMb!3^fUCF|w^TvRCvnpX^m5+h!wsO`k*N$@3pZw%tay1DoV|RsT4YJdZ!% z&GU8R@`jDePCagz$@5Jkd&@@lw*Jf~d&kJ$wUNE23k^4UzHek7*vNKalRUfY_~GOk zmEW7^hsI^MjSK&(oXDPo=wl=M#74G9|K^i@YGiwDWS{B!BTSzEG_rr$$o65AJipLQ zMv!N60dJoBjmzgYE??*qME2zQrICGQBl}vHA8BLkwp^&w(H@g@qRP1 zJ2tYr*d(d9bo5vj&noK8$qMz}VK}IB-eK?$5s2(bAi&51ZDhIhC7&$F$bxNTA^O4R z%;JR_S(uH?g-!CT@|<_^5@WoHh8v#<8=pwNp=}b)ZDdh4vS=NX#`}eN7|ILfbdxl5 zVR^uK<+Jh1uczVVIXDX#SwS0FA#9TOB0VRK^-VA4O}nshDPrSNRL7^Av}25{n2jt} z_w&i(j4a+pR$RZ1%yV$MjjV)?OktBebC2_^uX}#1(<+Ir6v*Yd*En86_2gj+R)t^Guz$icUQ%>a*6i;Js2=W1mM%11N@lLBT5lW3$vkJ-6fZ7;_ zFgO&3!EhL%_m5ZA?|ruHkM3mu3j0VlHwtWG3-1zy#9;@>#YZEVtJqEQ~B zOsqr+Udtls)|1rJ(YM(I=p7sUPKSKW^?Mr&}6jeF! z2b%h&DdxTV>-2tx8*me(4=MZh^2GQTI=A3gxDCHCaD{=$J9O@X6~+fs!+2BvGoBbb z=>$L^hAkL^?!}^W!y!E>H%mILT*!jb_!A5vz&}v&tioNUC{x`{eFdQue!0)%5Qc_- z8fJw<1cB%7D=LA1*$?ds1A~J4UokOne4FAnY@&< z=pV#h6KX+icnC!QFo-_U=u^@^4{<#oSO;@5q=e~;(^cUlIchs1ky5XW)2hc)j#wWQe&+Cyt-18t!Lbc9aO z8M;7M=mt{wDMhP0?HfHY4rigXOEed=xd|zi@hH_3;kh0n3dph7)VDPZu>dR z$6*lm!65HD4hho}W~k!Pa=w?bvDlx3H2ua5m6VoFa~zBZ36(sBH``bXDOZqBz%FYx z(TtB|+^m%~37eFH2~KOW(M>VB)kc@H}z(mF-Jo9?TbmL2^ni z=d`luF8~b-VG+o#S`4yWcbTT|h#i1_3HGJ143@(R5dBIJeZtgieJ1*}RSc|#=Zzq4 zTK4*`!6sz~!nH>Cg3)zACjq1!q+W;pMObgfmoo0#k2e|LfW1C!G~tTMIUrtwmq9WPn4TRdneolox4>32{s`l~1L75IQhK6$)#$bvUApM7OPOl6^IBMG z-n%h^H~ltr8^Lz$J3tQN*TeM8+3I1>K`djRVBZ6u>ThSOq{#g=KR41Z!gSFLzQrKN z`=$y`>n!$ja9&TyP}R%Gr^GJMy$F}!2e=GULMl3~E3|)vpY+KLl@xlFrYzev9h<2N zsOvO;h8u7bNlEq;4WBv0z#w*kveFL)JYwncV?;t6-YA| z$Ok2YL8PS7HJf9v~G(uG!IQlJ+ID~qugl^ zn67*}O7`n7vmDkYJf+;E&X2tS6g1-%`K4^%c)?0es}T0WP{fRP_8YIkcv0*zP|S>H z`Hi=#?-8Hj^;BiL&MvPX(zlRe?4mOWE~T1qB?744Ex3Oom7M)m<$+UNo+JFPOb zWxi#N?IOMjw97$xS6*+xn;0u#s0fMrgSjfHLM57&AqlELRj3A1mJ+u*ZMip+?Ep`9gIu3<{;r(P`8AdPz!3qGtf#`pQqd@t!er;(T28cLPE5qoeI89-1XbU zamL#*)*d?Oo%6Y}bu`^h)RIw~Om41`NlC2Yv^rz&0$rgSbO$-b^`I90Q1rf2Vk-Kc z*k!-;GUG=XmlK9)*VAr{MovP#8K>m8W@5;Np$~?>&<~!~{j*eoLj7qDfPpXw27_#S zh+e^P=uo<{sbTt^ELEhgL>-PvO3|uLYXt3)FbZVr-REX!l0-WSjrfc%Hq`e3h!xC5ue6x6gsvf$G z=5kn}W3`ISx02>6SPjp^8d$5FX_Zv<1)A%?mw?oAJ2PB+Z*>l`p%)on4;x@3Y|=Zm zN{D=k=F2c2m(4DHMXNh5`MOtn4X1UPnf|hn&)ipDr0V6nU&);{UR(8yMXJl+^3?Do zn>z)k;d?j(ci^1MYHFRQaRDxZWZ#PH@6x^kKf+IN6|TW`kOjIyZH4n>0HhSG>9m}* z10Ya;uvj%JpNnP?1cQ`RBq6jzAq@ESEGrx$AX3*^q7sVbrWpm%AV<{Qh1`^G_3nl| z;dURh zxJ31+=D*AT>uue6sVeK)(Aiq|HdLsJ1ZYb(9iSt0g3iz-oX;)X3UMtCOnumCb;Z&R zBZ`y1v%fZ7Bh3;`%&rX|mH=jpcce^wvx9p%OWFI=z5h{m|Cm0%Qk88bQyJpjfOUW{2jLJLhHu~qh~F{l z@8Beyg46K5tn`FX*Z5pfk23x9#uG{Lg0P8`G)J`wp5%?rqY5WY=5eQ08A}q#RH{VinrqeDo~g)KSEf>Z9bdeNdqIWk#1}Yn?w9iDR+Dt&2;c3A&#}{I<0Zo#sfc*^rCW?oJez$k%@#a0$iLO>T*tDT_$FP Px+14CI88TwQ6>Bz+_vj+ diff --git a/packages/physics-physx/src/PhysXPhysics.ts b/packages/physics-physx/src/PhysXPhysics.ts index ff3eba9da4..29d2677ead 100644 --- a/packages/physics-physx/src/PhysXPhysics.ts +++ b/packages/physics-physx/src/PhysXPhysics.ts @@ -74,10 +74,10 @@ export class PhysXPhysics { if (runtimeMode == PhysXRuntimeMode.JavaScript) { script.src = - "https://gw.alipayobjects.com/os/lib/oasis-engine/physics-physx/0.8.0-alpha.6/libs/physx.release.js.js"; + "https://gw.alipayobjects.com/os/lib/oasis-engine/physics-physx/0.8.0-beta.10/libs/physx.release.js.js"; } else if (runtimeMode == PhysXRuntimeMode.WebAssembly) { script.src = - "https://gw.alipayobjects.com/os/lib/oasis-engine/physics-physx/0.8.0-alpha.6/libs/physx.release.js"; + "https://gw.alipayobjects.com/os/lib/oasis-engine/physics-physx/0.8.0-beta.10/libs/physx.release.js"; } }); From d7403ecc9abd4deca817b6c4ca6d48849467f6ea Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Tue, 16 Aug 2022 16:24:25 +0800 Subject: [PATCH 027/122] v0.8.0-beta.10 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 4 ++-- packages/physics-physx/package.json | 4 ++-- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 32 insertions(+), 32 deletions(-) diff --git a/lerna.json b/lerna.json index b07027b3bd..39293b4d44 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.9", + "version": "0.8.0-beta.10", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index 3c139ad381..4aba1bad40 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.9", + "version": "0.8.0-beta.10", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.9" + "@oasis-engine/math": "0.8.0-beta.10" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.9" + "@oasis-engine/design": "0.8.0-beta.10" } } diff --git a/packages/design/package.json b/packages/design/package.json index c7ae438595..75cabeb3ab 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.9", + "version": "0.8.0-beta.10", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.9" + "@oasis-engine/math": "0.8.0-beta.10" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index 46d86ca433..806b9b6969 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.9", + "version": "0.8.0-beta.10", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.9" + "@oasis-engine/core": "0.8.0-beta.10" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 54619ed332..9ef19c3092 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.9", + "version": "0.8.0-beta.10", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.9", - "@oasis-engine/draco": "0.8.0-beta.9", - "@oasis-engine/math": "0.8.0-beta.9", - "@oasis-engine/rhi-webgl": "0.8.0-beta.9" + "@oasis-engine/core": "0.8.0-beta.10", + "@oasis-engine/draco": "0.8.0-beta.10", + "@oasis-engine/math": "0.8.0-beta.10", + "@oasis-engine/rhi-webgl": "0.8.0-beta.10" } } diff --git a/packages/math/package.json b/packages/math/package.json index 9e3e7fe018..4658288959 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.9", + "version": "0.8.0-beta.10", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index 06a552ac00..0d95b06acb 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.9", + "version": "0.8.0-beta.10", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.9", - "@oasis-engine/loader": "0.8.0-beta.9", - "@oasis-engine/math": "0.8.0-beta.9", - "@oasis-engine/rhi-webgl": "0.8.0-beta.9" + "@oasis-engine/core": "0.8.0-beta.10", + "@oasis-engine/loader": "0.8.0-beta.10", + "@oasis-engine/math": "0.8.0-beta.10", + "@oasis-engine/rhi-webgl": "0.8.0-beta.10" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 8ef70cffad..a978ab3384 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.9", + "version": "0.8.0-beta.10", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,7 +19,7 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.9" + "@oasis-engine/design": "0.8.0-beta.10" }, "peerDependencies": { "oasis-engine": "0.8.0-beta.9" diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index c4ee562618..ab79472c90 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.9", + "version": "0.8.0-beta.10", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,7 +20,7 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.9" + "@oasis-engine/design": "0.8.0-beta.10" }, "peerDependencies": { "oasis-engine": "0.8.0-beta.9" diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 81ed49a23e..734764e44a 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.9", + "version": "0.8.0-beta.10", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.9", - "@oasis-engine/math": "0.8.0-beta.9" + "@oasis-engine/core": "0.8.0-beta.10", + "@oasis-engine/math": "0.8.0-beta.10" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.9" + "@oasis-engine/design": "0.8.0-beta.10" } } diff --git a/tests/package.json b/tests/package.json index f391cf3c04..fc7d1315e0 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.9", + "version": "0.8.0-beta.10", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.9", - "@oasis-engine/design": "0.8.0-beta.9", - "@oasis-engine/math": "0.8.0-beta.9", - "@oasis-engine/rhi-webgl": "0.8.0-beta.9" + "@oasis-engine/core": "0.8.0-beta.10", + "@oasis-engine/design": "0.8.0-beta.10", + "@oasis-engine/math": "0.8.0-beta.10", + "@oasis-engine/rhi-webgl": "0.8.0-beta.10" } } From 4a8f4b824cac04d2caf0560a54670a61576cdbc6 Mon Sep 17 00:00:00 2001 From: ChenMo Date: Tue, 16 Aug 2022 22:09:34 +0800 Subject: [PATCH 028/122] Update package.json --- packages/physics-physx/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index ab79472c90..4ffdf144ae 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -23,6 +23,6 @@ "@oasis-engine/design": "0.8.0-beta.10" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.9" + "oasis-engine": "0.8.0-beta.11" } } From f3eda7d003bf9c0aedf2f640dedad019276d060d Mon Sep 17 00:00:00 2001 From: ChenMo Date: Tue, 16 Aug 2022 22:09:54 +0800 Subject: [PATCH 029/122] Update package.json --- packages/physics-lite/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index a978ab3384..3d473b849d 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -22,6 +22,6 @@ "@oasis-engine/design": "0.8.0-beta.10" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.9" + "oasis-engine": "0.8.0-beta.11" } } From 4872b010f7c8909d82bc28ca04d210bdb3c50280 Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Tue, 16 Aug 2022 22:11:47 +0800 Subject: [PATCH 030/122] v0.8.0-beta.11 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 4 ++-- packages/physics-physx/package.json | 4 ++-- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 32 insertions(+), 32 deletions(-) diff --git a/lerna.json b/lerna.json index 39293b4d44..33ef28e33c 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.10", + "version": "0.8.0-beta.11", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index 4aba1bad40..3dbb0f9f93 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.10", + "version": "0.8.0-beta.11", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.10" + "@oasis-engine/math": "0.8.0-beta.11" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.10" + "@oasis-engine/design": "0.8.0-beta.11" } } diff --git a/packages/design/package.json b/packages/design/package.json index 75cabeb3ab..04ed082652 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.10", + "version": "0.8.0-beta.11", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.10" + "@oasis-engine/math": "0.8.0-beta.11" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index 806b9b6969..69fb8af484 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.10", + "version": "0.8.0-beta.11", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.10" + "@oasis-engine/core": "0.8.0-beta.11" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 9ef19c3092..f28e553fe8 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.10", + "version": "0.8.0-beta.11", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.10", - "@oasis-engine/draco": "0.8.0-beta.10", - "@oasis-engine/math": "0.8.0-beta.10", - "@oasis-engine/rhi-webgl": "0.8.0-beta.10" + "@oasis-engine/core": "0.8.0-beta.11", + "@oasis-engine/draco": "0.8.0-beta.11", + "@oasis-engine/math": "0.8.0-beta.11", + "@oasis-engine/rhi-webgl": "0.8.0-beta.11" } } diff --git a/packages/math/package.json b/packages/math/package.json index 4658288959..6cd186dc13 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.10", + "version": "0.8.0-beta.11", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index 0d95b06acb..4d3e1293ee 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.10", + "version": "0.8.0-beta.11", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.10", - "@oasis-engine/loader": "0.8.0-beta.10", - "@oasis-engine/math": "0.8.0-beta.10", - "@oasis-engine/rhi-webgl": "0.8.0-beta.10" + "@oasis-engine/core": "0.8.0-beta.11", + "@oasis-engine/loader": "0.8.0-beta.11", + "@oasis-engine/math": "0.8.0-beta.11", + "@oasis-engine/rhi-webgl": "0.8.0-beta.11" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 3d473b849d..c224c1a42f 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.10", + "version": "0.8.0-beta.11", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,7 +19,7 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.10" + "@oasis-engine/design": "0.8.0-beta.11" }, "peerDependencies": { "oasis-engine": "0.8.0-beta.11" diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index 4ffdf144ae..dff4a0a989 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.10", + "version": "0.8.0-beta.11", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,7 +20,7 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.10" + "@oasis-engine/design": "0.8.0-beta.11" }, "peerDependencies": { "oasis-engine": "0.8.0-beta.11" diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 734764e44a..9f287ad22b 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.10", + "version": "0.8.0-beta.11", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.10", - "@oasis-engine/math": "0.8.0-beta.10" + "@oasis-engine/core": "0.8.0-beta.11", + "@oasis-engine/math": "0.8.0-beta.11" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.10" + "@oasis-engine/design": "0.8.0-beta.11" } } diff --git a/tests/package.json b/tests/package.json index fc7d1315e0..27e2b440aa 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.10", + "version": "0.8.0-beta.11", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.10", - "@oasis-engine/design": "0.8.0-beta.10", - "@oasis-engine/math": "0.8.0-beta.10", - "@oasis-engine/rhi-webgl": "0.8.0-beta.10" + "@oasis-engine/core": "0.8.0-beta.11", + "@oasis-engine/design": "0.8.0-beta.11", + "@oasis-engine/math": "0.8.0-beta.11", + "@oasis-engine/rhi-webgl": "0.8.0-beta.11" } } From 66344b8901eab3e3b7e8c83ca65e319a45b7608e Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Tue, 16 Aug 2022 22:25:58 +0800 Subject: [PATCH 031/122] v0.8.0-beta.12 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 6 +++--- packages/physics-physx/package.json | 6 +++--- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lerna.json b/lerna.json index 33ef28e33c..5ad38d45d7 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.11", + "version": "0.8.0-beta.12", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index 3dbb0f9f93..26d956f974 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.11", + "version": "0.8.0-beta.12", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.11" + "@oasis-engine/math": "0.8.0-beta.12" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.11" + "@oasis-engine/design": "0.8.0-beta.12" } } diff --git a/packages/design/package.json b/packages/design/package.json index 04ed082652..1dba47aeba 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.11", + "version": "0.8.0-beta.12", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.11" + "@oasis-engine/math": "0.8.0-beta.12" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index 69fb8af484..5922ae32b3 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.11", + "version": "0.8.0-beta.12", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.11" + "@oasis-engine/core": "0.8.0-beta.12" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index f28e553fe8..38165d395a 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.11", + "version": "0.8.0-beta.12", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.11", - "@oasis-engine/draco": "0.8.0-beta.11", - "@oasis-engine/math": "0.8.0-beta.11", - "@oasis-engine/rhi-webgl": "0.8.0-beta.11" + "@oasis-engine/core": "0.8.0-beta.12", + "@oasis-engine/draco": "0.8.0-beta.12", + "@oasis-engine/math": "0.8.0-beta.12", + "@oasis-engine/rhi-webgl": "0.8.0-beta.12" } } diff --git a/packages/math/package.json b/packages/math/package.json index 6cd186dc13..0dc025d33c 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.11", + "version": "0.8.0-beta.12", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index 4d3e1293ee..f2a574a01b 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.11", + "version": "0.8.0-beta.12", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.11", - "@oasis-engine/loader": "0.8.0-beta.11", - "@oasis-engine/math": "0.8.0-beta.11", - "@oasis-engine/rhi-webgl": "0.8.0-beta.11" + "@oasis-engine/core": "0.8.0-beta.12", + "@oasis-engine/loader": "0.8.0-beta.12", + "@oasis-engine/math": "0.8.0-beta.12", + "@oasis-engine/rhi-webgl": "0.8.0-beta.12" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index c224c1a42f..bf300df715 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.11", + "version": "0.8.0-beta.12", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,9 +19,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.11" + "@oasis-engine/design": "0.8.0-beta.12" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.11" + "oasis-engine": "0.8.0-beta.12" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index dff4a0a989..37bc2616f5 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.11", + "version": "0.8.0-beta.12", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,9 +20,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.11" + "@oasis-engine/design": "0.8.0-beta.12" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.11" + "oasis-engine": "0.8.0-beta.12" } } diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 9f287ad22b..7da6046912 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.11", + "version": "0.8.0-beta.12", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.11", - "@oasis-engine/math": "0.8.0-beta.11" + "@oasis-engine/core": "0.8.0-beta.12", + "@oasis-engine/math": "0.8.0-beta.12" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.11" + "@oasis-engine/design": "0.8.0-beta.12" } } diff --git a/tests/package.json b/tests/package.json index 27e2b440aa..598188685a 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.11", + "version": "0.8.0-beta.12", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.11", - "@oasis-engine/design": "0.8.0-beta.11", - "@oasis-engine/math": "0.8.0-beta.11", - "@oasis-engine/rhi-webgl": "0.8.0-beta.11" + "@oasis-engine/core": "0.8.0-beta.12", + "@oasis-engine/design": "0.8.0-beta.12", + "@oasis-engine/math": "0.8.0-beta.12", + "@oasis-engine/rhi-webgl": "0.8.0-beta.12" } } From 491ebdf1a50854d0d81f373734bda77d793f074f Mon Sep 17 00:00:00 2001 From: AZhan Date: Tue, 16 Aug 2022 23:55:45 +0800 Subject: [PATCH 032/122] Fix `Transform` `worldMatrix` set bug (#951) * fix: transform worldMatrix set bug --- packages/core/src/Transform.ts | 2 +- packages/physics-lite/src/LiteTransform.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/core/src/Transform.ts b/packages/core/src/Transform.ts index 154ba8fd74..11f5a45fd0 100644 --- a/packages/core/src/Transform.ts +++ b/packages/core/src/Transform.ts @@ -283,7 +283,7 @@ export class Transform extends Component { const parent = this._getParentTransform(); if (parent) { Matrix.invert(parent.worldMatrix, Transform._tempMat42); - Matrix.multiply(value, Transform._tempMat42, this._localMatrix); + Matrix.multiply(Transform._tempMat42, value, this._localMatrix); } else { this._localMatrix.copyFrom(value); } diff --git a/packages/physics-lite/src/LiteTransform.ts b/packages/physics-lite/src/LiteTransform.ts index 338956eea7..931597dec0 100644 --- a/packages/physics-lite/src/LiteTransform.ts +++ b/packages/physics-lite/src/LiteTransform.ts @@ -165,7 +165,7 @@ export class LiteTransform { const parent = this._getParentTransform(); if (parent) { Matrix.invert(parent.worldMatrix, LiteTransform._tempMat42); - Matrix.multiply(value, LiteTransform._tempMat42, this._localMatrix); + Matrix.multiply(LiteTransform._tempMat42, value, this._localMatrix); } else { this._localMatrix.copyFrom(value); } From 76c1cabb8816a3daf97e99f0deec0b5e61e54856 Mon Sep 17 00:00:00 2001 From: singlecoder Date: Wed, 17 Aug 2022 15:19:11 +0800 Subject: [PATCH 033/122] Fix frame picker not valid for sprite renderer (#952) * fix(pick): fix pick not avalid for sprite renderer --- packages/core/src/Engine.ts | 2 ++ packages/core/src/RenderPipeline/Basic2DBatcher.ts | 11 ++++++----- packages/core/src/RenderPipeline/RenderQueue.ts | 6 +++--- packages/core/src/RenderPipeline/SpriteBatcher.ts | 11 +++++++++-- packages/core/src/RenderPipeline/SpriteMaskManager.ts | 2 +- packages/core/src/material/Material.ts | 3 ++- 6 files changed, 23 insertions(+), 12 deletions(-) diff --git a/packages/core/src/Engine.ts b/packages/core/src/Engine.ts index e0a3afa18b..7f2911c47e 100644 --- a/packages/core/src/Engine.ts +++ b/packages/core/src/Engine.ts @@ -78,6 +78,8 @@ export class Engine extends EventDispatcher { /** @internal */ _spriteMaskManager: SpriteMaskManager; /** @internal */ + _canSpriteBatch: boolean = true; + /** @internal @todo: temporary solution */ _macroCollection: ShaderMacroCollection = new ShaderMacroCollection(); protected _canvas: Canvas; diff --git a/packages/core/src/RenderPipeline/Basic2DBatcher.ts b/packages/core/src/RenderPipeline/Basic2DBatcher.ts index ff76a839e0..38d31bd0a3 100644 --- a/packages/core/src/RenderPipeline/Basic2DBatcher.ts +++ b/packages/core/src/RenderPipeline/Basic2DBatcher.ts @@ -1,6 +1,7 @@ import { Camera } from "../Camera"; import { Engine } from "../Engine"; import { Buffer, BufferBindFlag, BufferUsage, IndexFormat, MeshTopology, SubMesh, VertexElement } from "../graphic"; +import { Material } from "../material"; import { BufferMesh } from "../mesh"; import { SystemInfo } from "../SystemInfo"; import { ClassPool } from "./ClassPool"; @@ -52,24 +53,24 @@ export abstract class Basic2DBatcher { } } - drawElement(element: Element, camera: Camera): void { + drawElement(element: Element, camera: Camera, replaceMaterial: Material): void { const len = element.renderData.vertexCount; if (this._vertexCount + len > Basic2DBatcher.MAX_VERTEX_COUNT) { - this.flush(camera); + this.flush(camera, replaceMaterial); } this._vertexCount += len; this._batchedQueue[this._elementCount++] = element; } - flush(camera: Camera): void { + flush(camera: Camera, replaceMaterial: Material): void { const batchedQueue = this._batchedQueue; if (batchedQueue.length === 0) { return; } this._updateData(this._engine); - this.drawBatches(camera); + this.drawBatches(camera, replaceMaterial); if (!Basic2DBatcher._canUploadSameBuffer) { this._flushId++; @@ -220,5 +221,5 @@ export abstract class Basic2DBatcher { /** * @internal */ - abstract drawBatches(camera: Camera): void; + abstract drawBatches(camera: Camera, replaceMaterial: Material): void; } diff --git a/packages/core/src/RenderPipeline/RenderQueue.ts b/packages/core/src/RenderPipeline/RenderQueue.ts index 8a44af0676..88ad9eff0a 100644 --- a/packages/core/src/RenderPipeline/RenderQueue.ts +++ b/packages/core/src/RenderPipeline/RenderQueue.ts @@ -63,7 +63,7 @@ export class RenderQueue { } if (!!(item as RenderElement).mesh) { - this._spriteBatcher.flush(camera); + this._spriteBatcher.flush(camera, replaceMaterial); const compileMacros = Shader._compileMacros; const element = item; @@ -134,11 +134,11 @@ export class RenderQueue { rhi.drawPrimitive(element.mesh, element.subMesh, program); } else { const spriteElement = item; - this._spriteBatcher.drawElement(spriteElement, camera); + this._spriteBatcher.drawElement(spriteElement, camera, replaceMaterial); } } - this._spriteBatcher.flush(camera); + this._spriteBatcher.flush(camera, replaceMaterial); } /** diff --git a/packages/core/src/RenderPipeline/SpriteBatcher.ts b/packages/core/src/RenderPipeline/SpriteBatcher.ts index 1f3cbd311c..819992a948 100644 --- a/packages/core/src/RenderPipeline/SpriteBatcher.ts +++ b/packages/core/src/RenderPipeline/SpriteBatcher.ts @@ -4,6 +4,7 @@ import { Camera } from "../Camera"; import { Engine } from "../Engine"; import { VertexElementFormat } from "../graphic/enums/VertexElementFormat"; import { VertexElement } from "../graphic/VertexElement"; +import { Material } from "../material"; import { Shader } from "../shader/Shader"; import { ShaderMacroCollection } from "../shader/ShaderMacroCollection"; import { ShaderProperty } from "../shader/ShaderProperty"; @@ -24,6 +25,10 @@ export class SpriteBatcher extends Basic2DBatcher { } canBatch(preElement: SpriteElement, curElement: SpriteElement): boolean { + if (!this._engine._canSpriteBatch) { + return false; + } + const preRenderer = preElement.component; const curRenderer = curElement.component; @@ -72,7 +77,7 @@ export class SpriteBatcher extends Basic2DBatcher { return vertexIndex; } - drawBatches(camera: Camera): void { + drawBatches(camera: Camera, replaceMaterial: Material): void { const { _engine: engine, _batchedQueue: batchedQueue } = this; const mesh = this._meshes[this._flushId]; const subMeshes = mesh.subMeshes; @@ -100,7 +105,9 @@ export class SpriteBatcher extends Basic2DBatcher { compileMacros ); - const program = material.shader._getShaderProgram(engine, compileMacros); + // @todo: temporary solution + (replaceMaterial || material)._preRender(spriteElement); + const program = (replaceMaterial || material).shader._getShaderProgram(engine, compileMacros); if (!program.isValid) { return; } diff --git a/packages/core/src/RenderPipeline/SpriteMaskManager.ts b/packages/core/src/RenderPipeline/SpriteMaskManager.ts index 8117b7c712..42e06a2035 100644 --- a/packages/core/src/RenderPipeline/SpriteMaskManager.ts +++ b/packages/core/src/RenderPipeline/SpriteMaskManager.ts @@ -28,7 +28,7 @@ export class SpriteMaskManager { this._batcher.clear(); this._processMasksDiff(camera, renderer); - this._batcher.flush(camera); + this._batcher.flush(camera, null); } postRender(renderer: SpriteRenderer): void { diff --git a/packages/core/src/material/Material.ts b/packages/core/src/material/Material.ts index 26d3267f33..de4b248fb0 100644 --- a/packages/core/src/material/Material.ts +++ b/packages/core/src/material/Material.ts @@ -3,6 +3,7 @@ import { RefObject } from "../asset/RefObject"; import { CloneManager } from "../clone/CloneManager"; import { Engine } from "../Engine"; import { RenderElement } from "../RenderPipeline/RenderElement"; +import { SpriteElement } from "../RenderPipeline/SpriteElement"; import { ShaderDataGroup } from "../shader/enums/ShaderDataGroup"; import { Shader } from "../shader/Shader"; import { ShaderData } from "../shader/ShaderData"; @@ -66,7 +67,7 @@ export class Material extends RefObject implements IClone { * @internal * @todo:temporary solution */ - _preRender(renderElement: RenderElement) {} + _preRender(renderElement: RenderElement | SpriteElement) {} /** * @override From 74ee7f87a73d1614fb2ecc7dfc4e3f6c4794f301 Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Wed, 17 Aug 2022 15:21:56 +0800 Subject: [PATCH 034/122] build: compile error --- packages/core/src/RenderPipeline/SpriteMaskManager.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/core/src/RenderPipeline/SpriteMaskManager.ts b/packages/core/src/RenderPipeline/SpriteMaskManager.ts index 42e06a2035..6c7d1f1373 100644 --- a/packages/core/src/RenderPipeline/SpriteMaskManager.ts +++ b/packages/core/src/RenderPipeline/SpriteMaskManager.ts @@ -65,14 +65,14 @@ export class SpriteMaskManager { if (influenceLayers & addLayer) { const maskRenderElement = mask._maskElement; maskRenderElement.isAdd = true; - this._batcher.drawElement(maskRenderElement, camera); + this._batcher.drawElement(maskRenderElement, camera, null); continue; } if (influenceLayers & reduceLayer) { const maskRenderElement = mask._maskElement; maskRenderElement.isAdd = false; - this._batcher.drawElement(maskRenderElement, camera); + this._batcher.drawElement(maskRenderElement, camera, null); } } } From 600190c0764c718d645f5f8e011099e4e208608d Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Wed, 17 Aug 2022 15:23:35 +0800 Subject: [PATCH 035/122] v0.8.0-beta.13 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 6 +++--- packages/physics-physx/package.json | 6 +++--- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lerna.json b/lerna.json index 5ad38d45d7..73916d2fbe 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.12", + "version": "0.8.0-beta.13", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index 26d956f974..76a77665ed 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.12", + "version": "0.8.0-beta.13", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.12" + "@oasis-engine/math": "0.8.0-beta.13" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.12" + "@oasis-engine/design": "0.8.0-beta.13" } } diff --git a/packages/design/package.json b/packages/design/package.json index 1dba47aeba..a68b51d277 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.12", + "version": "0.8.0-beta.13", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.12" + "@oasis-engine/math": "0.8.0-beta.13" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index 5922ae32b3..c4de37a535 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.12", + "version": "0.8.0-beta.13", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.12" + "@oasis-engine/core": "0.8.0-beta.13" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 38165d395a..0ad4885ef4 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.12", + "version": "0.8.0-beta.13", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.12", - "@oasis-engine/draco": "0.8.0-beta.12", - "@oasis-engine/math": "0.8.0-beta.12", - "@oasis-engine/rhi-webgl": "0.8.0-beta.12" + "@oasis-engine/core": "0.8.0-beta.13", + "@oasis-engine/draco": "0.8.0-beta.13", + "@oasis-engine/math": "0.8.0-beta.13", + "@oasis-engine/rhi-webgl": "0.8.0-beta.13" } } diff --git a/packages/math/package.json b/packages/math/package.json index 0dc025d33c..d98eb2acfa 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.12", + "version": "0.8.0-beta.13", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index f2a574a01b..4a0074b3cf 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.12", + "version": "0.8.0-beta.13", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.12", - "@oasis-engine/loader": "0.8.0-beta.12", - "@oasis-engine/math": "0.8.0-beta.12", - "@oasis-engine/rhi-webgl": "0.8.0-beta.12" + "@oasis-engine/core": "0.8.0-beta.13", + "@oasis-engine/loader": "0.8.0-beta.13", + "@oasis-engine/math": "0.8.0-beta.13", + "@oasis-engine/rhi-webgl": "0.8.0-beta.13" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index bf300df715..dc27d1c393 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.12", + "version": "0.8.0-beta.13", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,9 +19,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.12" + "@oasis-engine/design": "0.8.0-beta.13" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.12" + "oasis-engine": "0.8.0-beta.13" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index 37bc2616f5..dc9deb0a67 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.12", + "version": "0.8.0-beta.13", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,9 +20,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.12" + "@oasis-engine/design": "0.8.0-beta.13" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.12" + "oasis-engine": "0.8.0-beta.13" } } diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 7da6046912..98f4cb5429 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.12", + "version": "0.8.0-beta.13", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.12", - "@oasis-engine/math": "0.8.0-beta.12" + "@oasis-engine/core": "0.8.0-beta.13", + "@oasis-engine/math": "0.8.0-beta.13" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.12" + "@oasis-engine/design": "0.8.0-beta.13" } } diff --git a/tests/package.json b/tests/package.json index 598188685a..5a0528e15d 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.12", + "version": "0.8.0-beta.13", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.12", - "@oasis-engine/design": "0.8.0-beta.12", - "@oasis-engine/math": "0.8.0-beta.12", - "@oasis-engine/rhi-webgl": "0.8.0-beta.12" + "@oasis-engine/core": "0.8.0-beta.13", + "@oasis-engine/design": "0.8.0-beta.13", + "@oasis-engine/math": "0.8.0-beta.13", + "@oasis-engine/rhi-webgl": "0.8.0-beta.13" } } From 1fff4c13262fab25030544091a34f2bd245f7345 Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Wed, 17 Aug 2022 15:25:21 +0800 Subject: [PATCH 036/122] v0.8.0-beta.14 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 6 +++--- packages/physics-physx/package.json | 6 +++--- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lerna.json b/lerna.json index 73916d2fbe..c58d48472b 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.13", + "version": "0.8.0-beta.14", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index 76a77665ed..bb32386f32 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.13", + "version": "0.8.0-beta.14", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.13" + "@oasis-engine/math": "0.8.0-beta.14" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.13" + "@oasis-engine/design": "0.8.0-beta.14" } } diff --git a/packages/design/package.json b/packages/design/package.json index a68b51d277..3552349c25 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.13", + "version": "0.8.0-beta.14", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.13" + "@oasis-engine/math": "0.8.0-beta.14" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index c4de37a535..585e7d2e46 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.13", + "version": "0.8.0-beta.14", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.13" + "@oasis-engine/core": "0.8.0-beta.14" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 0ad4885ef4..7299c5e73e 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.13", + "version": "0.8.0-beta.14", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.13", - "@oasis-engine/draco": "0.8.0-beta.13", - "@oasis-engine/math": "0.8.0-beta.13", - "@oasis-engine/rhi-webgl": "0.8.0-beta.13" + "@oasis-engine/core": "0.8.0-beta.14", + "@oasis-engine/draco": "0.8.0-beta.14", + "@oasis-engine/math": "0.8.0-beta.14", + "@oasis-engine/rhi-webgl": "0.8.0-beta.14" } } diff --git a/packages/math/package.json b/packages/math/package.json index d98eb2acfa..0f527e0c95 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.13", + "version": "0.8.0-beta.14", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index 4a0074b3cf..9124a260de 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.13", + "version": "0.8.0-beta.14", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.13", - "@oasis-engine/loader": "0.8.0-beta.13", - "@oasis-engine/math": "0.8.0-beta.13", - "@oasis-engine/rhi-webgl": "0.8.0-beta.13" + "@oasis-engine/core": "0.8.0-beta.14", + "@oasis-engine/loader": "0.8.0-beta.14", + "@oasis-engine/math": "0.8.0-beta.14", + "@oasis-engine/rhi-webgl": "0.8.0-beta.14" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index dc27d1c393..2f92bb6379 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.13", + "version": "0.8.0-beta.14", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,9 +19,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.13" + "@oasis-engine/design": "0.8.0-beta.14" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.13" + "oasis-engine": "0.8.0-beta.14" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index dc9deb0a67..81822fb5bd 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.13", + "version": "0.8.0-beta.14", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,9 +20,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.13" + "@oasis-engine/design": "0.8.0-beta.14" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.13" + "oasis-engine": "0.8.0-beta.14" } } diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 98f4cb5429..8348782cee 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.13", + "version": "0.8.0-beta.14", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.13", - "@oasis-engine/math": "0.8.0-beta.13" + "@oasis-engine/core": "0.8.0-beta.14", + "@oasis-engine/math": "0.8.0-beta.14" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.13" + "@oasis-engine/design": "0.8.0-beta.14" } } diff --git a/tests/package.json b/tests/package.json index 5a0528e15d..7aef5b78f1 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.13", + "version": "0.8.0-beta.14", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.13", - "@oasis-engine/design": "0.8.0-beta.13", - "@oasis-engine/math": "0.8.0-beta.13", - "@oasis-engine/rhi-webgl": "0.8.0-beta.13" + "@oasis-engine/core": "0.8.0-beta.14", + "@oasis-engine/design": "0.8.0-beta.14", + "@oasis-engine/math": "0.8.0-beta.14", + "@oasis-engine/rhi-webgl": "0.8.0-beta.14" } } From bedf5777425997c06e2850ea9e1cd439abd7251b Mon Sep 17 00:00:00 2001 From: ChenMo Date: Sat, 20 Aug 2022 02:14:41 +0800 Subject: [PATCH 037/122] Optimization TextRenderer memory (#964) * refactor: opt TextRenderer memory --- packages/core/src/2d/atlas/FontAtlas.ts | 17 ++++++++++----- packages/core/src/2d/text/CharInfo.ts | 7 +++--- packages/core/src/2d/text/CharRenderData.ts | 9 ++++---- packages/core/src/2d/text/Font.ts | 2 +- packages/core/src/2d/text/TextRenderer.ts | 24 ++++++--------------- packages/core/src/2d/text/TextUtils.ts | 6 ++---- 6 files changed, 28 insertions(+), 37 deletions(-) diff --git a/packages/core/src/2d/atlas/FontAtlas.ts b/packages/core/src/2d/atlas/FontAtlas.ts index cdab40bd79..7d4e54bcfd 100644 --- a/packages/core/src/2d/atlas/FontAtlas.ts +++ b/packages/core/src/2d/atlas/FontAtlas.ts @@ -46,7 +46,7 @@ export class FontAtlas extends RefObject { const textureSize = texture.width; const offsetWidth = width + space; const offsetHeight = height + space; - if ((1 + offsetWidth) >= textureSize || (1 + offsetHeight) >= textureSize) { + if (1 + offsetWidth >= textureSize || 1 + offsetHeight >= textureSize) { throw Error("The char fontSize is too large."); } @@ -73,12 +73,19 @@ export class FontAtlas extends RefObject { const y = this._curY; const w = width; const h = height; + const u0 = x * textureSizeReciprocal; + const u1 = (x + w) * textureSizeReciprocal; + const v0 = y * textureSizeReciprocal; + const v1 = (y + h) * textureSizeReciprocal; + charInfo.x = x; charInfo.y = y; - charInfo.u0 = x * textureSizeReciprocal; - charInfo.u1 = (x + w) * textureSizeReciprocal; - charInfo.v0 = y * textureSizeReciprocal; - charInfo.v1 = (y + h) * textureSizeReciprocal; + const uvs = charInfo.uvs; + uvs[0].set(u0, v0); + uvs[1].set(u1, v0); + uvs[2].set(u1, v1); + uvs[3].set(u0, v1); + this._curX += offsetWidth + space; return true; } diff --git a/packages/core/src/2d/text/CharInfo.ts b/packages/core/src/2d/text/CharInfo.ts index ed4356a081..0b484eddd2 100644 --- a/packages/core/src/2d/text/CharInfo.ts +++ b/packages/core/src/2d/text/CharInfo.ts @@ -1,3 +1,5 @@ +import { Vector2 } from "@oasis-engine/math"; + /** * @internal */ @@ -9,12 +11,9 @@ export interface CharInfo { offsetX: number; offsetY: number; xAdvance: number; - u0: number; - v0: number; - u1: number; - v1: number; ascent: number; descent: number; index: number; data?: Uint8Array; + uvs: Vector2[]; } diff --git a/packages/core/src/2d/text/CharRenderData.ts b/packages/core/src/2d/text/CharRenderData.ts index e02d562e36..884550ae12 100644 --- a/packages/core/src/2d/text/CharRenderData.ts +++ b/packages/core/src/2d/text/CharRenderData.ts @@ -1,4 +1,4 @@ -import { Vector2, Vector3 } from "@oasis-engine/math"; +import { Vector3, Vector4 } from "@oasis-engine/math"; import { Texture2D } from "../../texture"; import { RenderData2D } from "../data/RenderData2D"; @@ -9,13 +9,12 @@ export class CharRenderData { static triangles: number[] = [0, 2, 1, 2, 0, 3]; texture: Texture2D; - localPositions: Vector3[]; + /** x:Top y:Left z:Bottom w:Right */ + localPositions: Vector4 = new Vector4(); renderData: RenderData2D; constructor() { const positions = [new Vector3(), new Vector3(), new Vector3(), new Vector3()]; - const uvs = [new Vector2(), new Vector2(), new Vector2(), new Vector2()]; - this.localPositions = [new Vector3(), new Vector3(), new Vector3(), new Vector3()]; - this.renderData = new RenderData2D(4, positions, uvs, CharRenderData.triangles, null); + this.renderData = new RenderData2D(4, positions, null, CharRenderData.triangles, null); } } diff --git a/packages/core/src/2d/text/Font.ts b/packages/core/src/2d/text/Font.ts index 44e1708025..bd4b1bf079 100644 --- a/packages/core/src/2d/text/Font.ts +++ b/packages/core/src/2d/text/Font.ts @@ -120,7 +120,7 @@ export class Font extends RefObject { private _createFontAtlas(): FontAtlas { const { engine } = this; const fontAtlas = new FontAtlas(engine); - const texture = new Texture2D(engine, 512, 512); + const texture = new Texture2D(engine, 256, 256); fontAtlas.texture = texture; this._fontAtlases.push(fontAtlas); return fontAtlas; diff --git a/packages/core/src/2d/text/TextRenderer.ts b/packages/core/src/2d/text/TextRenderer.ts index c851eb9d73..2b194c6091 100644 --- a/packages/core/src/2d/text/TextRenderer.ts +++ b/packages/core/src/2d/text/TextRenderer.ts @@ -438,8 +438,7 @@ export class TextRenderer extends Renderer implements ICustomClone { const { localPositions } = charRenderData; const { positions } = charRenderData.renderData; - const { x: topLeftX, y: topLeftY } = localPositions[0]; - const bottomRight = localPositions[2]; + const { x: topLeftX, y: topLeftY } = localPositions; // Top-Left const worldPosition0 = positions[0]; @@ -449,14 +448,14 @@ export class TextRenderer extends Renderer implements ICustomClone { // Right offset const worldPosition1 = positions[1]; - Vector3.scale(right, bottomRight.x - topLeftX, worldPosition1); + Vector3.scale(right, localPositions.z - topLeftX, worldPosition1); // Top-Right Vector3.add(worldPosition0, worldPosition1, worldPosition1); // Up offset const worldPosition2 = positions[2]; - Vector3.scale(up, bottomRight.y - topLeftY, worldPosition2); + Vector3.scale(up, localPositions.w - topLeftY, worldPosition2); // Bottom-Left Vector3.add(worldPosition0, worldPosition2, positions[3]); @@ -533,26 +532,15 @@ export class TextRenderer extends Renderer implements ICustomClone { charRenderData.texture = charFont._getTextureByIndex(charInfo.index); renderData.color = color; - const { uvs } = renderData; - const { w, u0, v0, u1, v1, ascent, descent } = charInfo; + renderData.uvs = charInfo.uvs; + const { w, ascent, descent } = charInfo; const left = startX * pixelsPerUnitReciprocal; const right = (startX + w) * pixelsPerUnitReciprocal; const top = (startY + ascent) * pixelsPerUnitReciprocal; const bottom = (startY - descent + 1) * pixelsPerUnitReciprocal; - // Top-left. - localPositions[0].set(left, top, 0); - uvs[0].set(u0, v0); - // Top-right. - localPositions[1].set(right, top, 0); - uvs[1].set(u1, v0); - // Bottom-right. - localPositions[2].set(right, bottom, 0); - uvs[2].set(u1, v1); - // Bottom-left. - localPositions[3].set(left, bottom, 0); - uvs[3].set(u0, v1); + localPositions.set(left, top, right, bottom); charRenderDatas[renderDataCount] = charRenderData; renderDataCount++; diff --git a/packages/core/src/2d/text/TextUtils.ts b/packages/core/src/2d/text/TextUtils.ts index b733ae1711..44ae7b3a8c 100644 --- a/packages/core/src/2d/text/TextUtils.ts +++ b/packages/core/src/2d/text/TextUtils.ts @@ -4,6 +4,7 @@ import { FontStyle } from "../enums/FontStyle"; import { OverflowMode } from "../enums/TextOverflow"; import { Font } from "./Font"; import { TextRenderer } from "./TextRenderer"; +import { Vector2 } from "@oasis-engine/math"; /** * @internal @@ -317,10 +318,7 @@ export class TextUtils { offsetX: 0, offsetY: (ascent - descent) * 0.5, xAdvance: width, - u0: 0, - v0: 0, - u1: 0, - v1: 0, + uvs: [new Vector2(), new Vector2(), new Vector2(), new Vector2()], ascent, descent, index: 0, From dd05cbf4e151285151794d8fc4b00b3472c3ef0a Mon Sep 17 00:00:00 2001 From: ChenMo Date: Mon, 22 Aug 2022 14:08:48 +0800 Subject: [PATCH 038/122] Optmization TextRender performance cause by sort (#966) * refactor: opt text sort performance --- packages/core/src/2d/text/TextRenderer.ts | 37 ++++++++++++------- packages/core/src/Engine.ts | 7 +++- .../core/src/RenderPipeline/Basic2DBatcher.ts | 19 +++++++++- .../src/RenderPipeline/BasicRenderPipeline.ts | 3 +- .../src/RenderPipeline/MeshRenderElement.ts | 22 +++++++++++ .../core/src/RenderPipeline/RenderElement.ts | 19 +--------- .../core/src/RenderPipeline/RenderQueue.ts | 17 ++++----- .../core/src/RenderPipeline/SpriteElement.ts | 10 +++-- .../src/RenderPipeline/SpriteMaskElement.ts | 16 ++++---- .../src/RenderPipeline/TextRenderElement.ts | 11 ++++++ packages/core/src/index.ts | 2 +- packages/core/src/material/Material.ts | 4 +- 12 files changed, 108 insertions(+), 59 deletions(-) create mode 100644 packages/core/src/RenderPipeline/MeshRenderElement.ts create mode 100644 packages/core/src/RenderPipeline/TextRenderElement.ts diff --git a/packages/core/src/2d/text/TextRenderer.ts b/packages/core/src/2d/text/TextRenderer.ts index 2b194c6091..561d2e3a0e 100644 --- a/packages/core/src/2d/text/TextRenderer.ts +++ b/packages/core/src/2d/text/TextRenderer.ts @@ -1,21 +1,21 @@ import { BoundingBox, Color, Vector3 } from "@oasis-engine/math"; import { Camera } from "../../Camera"; import { assignmentClone, deepClone, ignoreClone } from "../../clone/CloneManager"; +import { ICustomClone } from "../../clone/ComponentCloner"; +import { Engine } from "../../Engine"; import { Entity } from "../../Entity"; -import { CharRenderData } from "./CharRenderData"; +import { ListenerUpdateFlag } from "../../ListenerUpdateFlag"; +import { Renderer } from "../../Renderer"; +import { CompareFunction } from "../../shader/enums/CompareFunction"; import { FontStyle } from "../enums/FontStyle"; +import { SpriteMaskInteraction } from "../enums/SpriteMaskInteraction"; +import { SpriteMaskLayer } from "../enums/SpriteMaskLayer"; import { TextHorizontalAlignment, TextVerticalAlignment } from "../enums/TextAlignment"; import { OverflowMode } from "../enums/TextOverflow"; +import { CharRenderData } from "./CharRenderData"; +import { CharRenderDataPool } from "./CharRenderDataPool"; import { Font } from "./Font"; -import { Renderer } from "../../Renderer"; -import { SpriteMaskInteraction } from "../enums/SpriteMaskInteraction"; -import { SpriteMaskLayer } from "../enums/SpriteMaskLayer"; -import { CompareFunction } from "../../shader/enums/CompareFunction"; -import { ICustomClone } from "../../clone/ComponentCloner"; import { TextUtils } from "./TextUtils"; -import { CharRenderDataPool } from "./CharRenderDataPool"; -import { Engine } from "../../Engine"; -import { ListenerUpdateFlag } from "../../ListenerUpdateFlag"; /** * Renders a text for 2D graphics. @@ -322,13 +322,24 @@ export class TextRenderer extends Renderer implements ICustomClone { this._setDirtyFlagFalse(DirtyFlag.WorldPosition); } + const spriteElementPool = this._engine._spriteElementPool; + const textElement = this._engine._textElementPool.getFromPool(); + const charElements = textElement.charElements; + const material = this.getMaterial(); const charRenderDatas = this._charRenderDatas; - for (let i = 0, n = charRenderDatas.length; i < n; ++i) { + const charCount = charRenderDatas.length; + + textElement.component = this; + textElement.material = material; + charElements.length = charCount; + + for (let i = 0; i < charCount; ++i) { const charRenderData = charRenderDatas[i]; - const spriteElement = this._engine._spriteElementPool.getFromPool(); - spriteElement.setValue(this, charRenderData.renderData, this.getMaterial(), charRenderData.texture); - camera._renderPipeline.pushPrimitive(spriteElement); + const spriteElement = spriteElementPool.getFromPool(); + spriteElement.setValue(this, charRenderData.renderData, material, charRenderData.texture); + charElements[i] = spriteElement; } + camera._renderPipeline.pushPrimitive(textElement); } /** diff --git a/packages/core/src/Engine.ts b/packages/core/src/Engine.ts index 7f2911c47e..8b5de124a2 100644 --- a/packages/core/src/Engine.ts +++ b/packages/core/src/Engine.ts @@ -15,10 +15,11 @@ import { PhysicsManager } from "./physics"; import { IHardwareRenderer } from "./renderingHardwareInterface/IHardwareRenderer"; import { ClassPool } from "./RenderPipeline/ClassPool"; import { RenderContext } from "./RenderPipeline/RenderContext"; -import { RenderElement } from "./RenderPipeline/RenderElement"; +import { MeshRenderElement } from "./RenderPipeline/MeshRenderElement"; import { SpriteElement } from "./RenderPipeline/SpriteElement"; import { SpriteMaskElement } from "./RenderPipeline/SpriteMaskElement"; import { SpriteMaskManager } from "./RenderPipeline/SpriteMaskManager"; +import { TextRenderElement } from "./RenderPipeline/TextRenderElement"; import { Scene } from "./Scene"; import { SceneManager } from "./SceneManager"; import { CompareFunction } from "./shader"; @@ -56,9 +57,10 @@ export class Engine extends EventDispatcher { _componentsManager: ComponentsManager = new ComponentsManager(); _hardwareRenderer: IHardwareRenderer; _lastRenderState: RenderState = new RenderState(); - _renderElementPool: ClassPool = new ClassPool(RenderElement); + _renderElementPool: ClassPool = new ClassPool(MeshRenderElement); _spriteElementPool: ClassPool = new ClassPool(SpriteElement); _spriteMaskElementPool: ClassPool = new ClassPool(SpriteMaskElement); + _textElementPool: ClassPool = new ClassPool(TextRenderElement); _spriteDefaultMaterial: Material; _spriteMaskDefaultMaterial: Material; _renderContext: RenderContext = new RenderContext(); @@ -275,6 +277,7 @@ export class Engine extends EventDispatcher { this._renderElementPool.resetPool(); this._spriteElementPool.resetPool(); this._spriteMaskElementPool.resetPool(); + this._textElementPool.resetPool(); engineFeatureManager.callFeatureMethod(this, "preTick", [this, this._sceneManager._activeScene]); diff --git a/packages/core/src/RenderPipeline/Basic2DBatcher.ts b/packages/core/src/RenderPipeline/Basic2DBatcher.ts index 38d31bd0a3..c605045dfd 100644 --- a/packages/core/src/RenderPipeline/Basic2DBatcher.ts +++ b/packages/core/src/RenderPipeline/Basic2DBatcher.ts @@ -3,10 +3,10 @@ import { Engine } from "../Engine"; import { Buffer, BufferBindFlag, BufferUsage, IndexFormat, MeshTopology, SubMesh, VertexElement } from "../graphic"; import { Material } from "../material"; import { BufferMesh } from "../mesh"; -import { SystemInfo } from "../SystemInfo"; import { ClassPool } from "./ClassPool"; import { SpriteElement } from "./SpriteElement"; import { SpriteMaskElement } from "./SpriteMaskElement"; +import { TextRenderElement } from "./TextRenderElement"; type Element = SpriteElement | SpriteMaskElement; @@ -53,7 +53,22 @@ export abstract class Basic2DBatcher { } } - drawElement(element: Element, camera: Camera, replaceMaterial: Material): void { + drawElement( + element: SpriteMaskElement | SpriteElement | TextRenderElement, + camera: Camera, + replaceMaterial: Material + ): void { + if (element.multiRenderData) { + const elements = (element).charElements; + for (let i = 0, n = elements.length; i < n; ++i) { + this._drawSubElement(elements[i], camera, replaceMaterial); + } + } else { + this._drawSubElement(element, camera, replaceMaterial); + } + } + + private _drawSubElement(element: SpriteMaskElement | SpriteElement, camera: Camera, replaceMaterial: Material) { const len = element.renderData.vertexCount; if (this._vertexCount + len > Basic2DBatcher.MAX_VERTEX_COUNT) { this.flush(camera, replaceMaterial); diff --git a/packages/core/src/RenderPipeline/BasicRenderPipeline.ts b/packages/core/src/RenderPipeline/BasicRenderPipeline.ts index e48a7ad4d2..e84c8eb342 100644 --- a/packages/core/src/RenderPipeline/BasicRenderPipeline.ts +++ b/packages/core/src/RenderPipeline/BasicRenderPipeline.ts @@ -20,7 +20,6 @@ import { RenderContext } from "./RenderContext"; import { RenderElement } from "./RenderElement"; import { RenderPass } from "./RenderPass"; import { RenderQueue } from "./RenderQueue"; -import { SpriteElement } from "./SpriteElement"; /** * Basic render pipeline. @@ -201,7 +200,7 @@ export class BasicRenderPipeline { * Push a render element to the render queue. * @param element - Render element */ - pushPrimitive(element: RenderElement | SpriteElement) { + pushPrimitive(element: RenderElement): void { switch (element.material.renderQueueType) { case RenderQueueType.Transparent: this._transparentQueue.pushPrimitive(element); diff --git a/packages/core/src/RenderPipeline/MeshRenderElement.ts b/packages/core/src/RenderPipeline/MeshRenderElement.ts new file mode 100644 index 0000000000..f4ea2430fa --- /dev/null +++ b/packages/core/src/RenderPipeline/MeshRenderElement.ts @@ -0,0 +1,22 @@ +import { Mesh } from "../graphic/Mesh"; +import { SubMesh } from "../graphic/SubMesh"; +import { Material } from "../material/Material"; +import { Renderer } from "../Renderer"; +import { RenderElement } from "./RenderElement"; + +/** + * Render element. + */ +export class MeshRenderElement extends RenderElement { + /** Mesh. */ + mesh: Mesh; + /** Sub mesh. */ + subMesh: SubMesh; + + setValue(component: Renderer, mesh: Mesh, subMesh: SubMesh, material: Material): void { + this.component = component; + this.mesh = mesh; + this.subMesh = subMesh; + this.material = material; + } +} diff --git a/packages/core/src/RenderPipeline/RenderElement.ts b/packages/core/src/RenderPipeline/RenderElement.ts index 5c553958c3..4bff52abc6 100644 --- a/packages/core/src/RenderPipeline/RenderElement.ts +++ b/packages/core/src/RenderPipeline/RenderElement.ts @@ -1,25 +1,8 @@ -import { Mesh } from "../graphic/Mesh"; -import { SubMesh } from "../graphic/SubMesh"; import { Material } from "../material/Material"; import { Renderer } from "../Renderer"; -/** - * Render element. - */ export class RenderElement { - /** Render component. */ component: Renderer; - /** Mesh. */ - mesh: Mesh; - /** Sub mesh. */ - subMesh: SubMesh; - /** Material. */ material: Material; - - setValue(component: Renderer, mesh: Mesh, subMesh: SubMesh, material: Material): void { - this.component = component; - this.mesh = mesh; - this.subMesh = subMesh; - this.material = material; - } + multiRenderData: boolean; } diff --git a/packages/core/src/RenderPipeline/RenderQueue.ts b/packages/core/src/RenderPipeline/RenderQueue.ts index 88ad9eff0a..ae6ffed6a0 100644 --- a/packages/core/src/RenderPipeline/RenderQueue.ts +++ b/packages/core/src/RenderPipeline/RenderQueue.ts @@ -4,12 +4,11 @@ import { Layer } from "../Layer"; import { Material } from "../material/Material"; import { Shader } from "../shader"; import { ShaderMacroCollection } from "../shader/ShaderMacroCollection"; +import { MeshRenderElement } from "./MeshRenderElement"; import { RenderElement } from "./RenderElement"; import { SpriteBatcher } from "./SpriteBatcher"; import { SpriteElement } from "./SpriteElement"; -type Item = RenderElement | SpriteElement; - /** * Render queue. */ @@ -17,18 +16,18 @@ export class RenderQueue { /** * @internal */ - static _compareFromNearToFar(a: Item, b: Item): number { + static _compareFromNearToFar(a: RenderElement, b: RenderElement): number { return a.component.priority - b.component.priority || a.component._distanceForSort - b.component._distanceForSort; } /** * @internal */ - static _compareFromFarToNear(a: Item, b: Item): number { + static _compareFromFarToNear(a: RenderElement, b: RenderElement): number { return a.component.priority - b.component.priority || b.component._distanceForSort - a.component._distanceForSort; } - readonly items: Item[] = []; + readonly items: RenderElement[] = []; private _spriteBatcher: SpriteBatcher; constructor(engine: Engine) { @@ -38,7 +37,7 @@ export class RenderQueue { /** * Push a render element. */ - pushPrimitive(element: RenderElement | SpriteElement): void { + pushPrimitive(element: RenderElement): void { this.items.push(element); } @@ -62,11 +61,11 @@ export class RenderQueue { continue; } - if (!!(item as RenderElement).mesh) { + if (!!(item as MeshRenderElement).mesh) { this._spriteBatcher.flush(camera, replaceMaterial); const compileMacros = Shader._compileMacros; - const element = item; + const element = item; const renderer = element.component; const material = element.material; const rendererData = renderer.shaderData; @@ -109,7 +108,7 @@ export class RenderQueue { } else if (switchProgram) { program.uploadTextures(program.cameraUniformBlock, cameraData); } - + if (program._uploadRenderer !== renderer) { program.uploadAll(program.rendererUniformBlock, rendererData); program._uploadRenderer = renderer; diff --git a/packages/core/src/RenderPipeline/SpriteElement.ts b/packages/core/src/RenderPipeline/SpriteElement.ts index 7faad16413..076d54d706 100644 --- a/packages/core/src/RenderPipeline/SpriteElement.ts +++ b/packages/core/src/RenderPipeline/SpriteElement.ts @@ -2,13 +2,17 @@ import { RenderData2D } from "../2d/data/RenderData2D"; import { Material } from "../material/Material"; import { Renderer } from "../Renderer"; import { Texture2D } from "../texture"; +import { RenderElement } from "./RenderElement"; -export class SpriteElement { - component: Renderer; +export class SpriteElement extends RenderElement { renderData: RenderData2D; - material: Material; texture: Texture2D; + constructor() { + super(); + this.multiRenderData = false; + } + setValue(component: Renderer, renderDate: RenderData2D, material: Material, texture: Texture2D): void { this.component = component; this.renderData = renderDate; diff --git a/packages/core/src/RenderPipeline/SpriteMaskElement.ts b/packages/core/src/RenderPipeline/SpriteMaskElement.ts index 1f6ec69300..8ce38754ca 100644 --- a/packages/core/src/RenderPipeline/SpriteMaskElement.ts +++ b/packages/core/src/RenderPipeline/SpriteMaskElement.ts @@ -1,16 +1,18 @@ -import { Vector2, Vector3 } from "@oasis-engine/math"; import { RenderData2D } from "../2d/data/RenderData2D"; -import { Camera } from "../Camera"; -import { Component } from "../Component"; import { Material } from "../material/Material"; +import { Renderer } from "../Renderer"; +import { RenderElement } from "./RenderElement"; -export class SpriteMaskElement { - component: Component; +export class SpriteMaskElement extends RenderElement { renderData: RenderData2D; - material: Material; isAdd: boolean = true; - setValue(component: Component, renderData: RenderData2D, material: Material): void { + constructor() { + super(); + this.multiRenderData = false; + } + + setValue(component: Renderer, renderData: RenderData2D, material: Material): void { this.component = component; this.renderData = renderData; this.material = material; diff --git a/packages/core/src/RenderPipeline/TextRenderElement.ts b/packages/core/src/RenderPipeline/TextRenderElement.ts new file mode 100644 index 0000000000..730173d99b --- /dev/null +++ b/packages/core/src/RenderPipeline/TextRenderElement.ts @@ -0,0 +1,11 @@ +import { RenderElement } from "./RenderElement"; +import { SpriteElement } from "./SpriteElement"; + +export class TextRenderElement extends RenderElement { + charElements: SpriteElement[] = []; + + constructor() { + super(); + this.multiRenderData = true; + } +} diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index c2c6d5bed7..3ee2468281 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -29,7 +29,7 @@ export { RefObject } from "./asset/RefObject"; export { BasicRenderPipeline } from "./RenderPipeline/BasicRenderPipeline"; export { RenderQueue } from "./RenderPipeline/RenderQueue"; export { RenderPass } from "./RenderPipeline/RenderPass"; -export { RenderElement } from "./RenderPipeline/RenderElement"; +export { MeshRenderElement } from "./RenderPipeline/MeshRenderElement"; export { SpriteElement } from "./RenderPipeline/SpriteElement"; export * from "./base"; diff --git a/packages/core/src/material/Material.ts b/packages/core/src/material/Material.ts index de4b248fb0..64220990fb 100644 --- a/packages/core/src/material/Material.ts +++ b/packages/core/src/material/Material.ts @@ -2,7 +2,7 @@ import { IClone } from "@oasis-engine/design"; import { RefObject } from "../asset/RefObject"; import { CloneManager } from "../clone/CloneManager"; import { Engine } from "../Engine"; -import { RenderElement } from "../RenderPipeline/RenderElement"; +import { MeshRenderElement } from "../RenderPipeline/MeshRenderElement"; import { SpriteElement } from "../RenderPipeline/SpriteElement"; import { ShaderDataGroup } from "../shader/enums/ShaderDataGroup"; import { Shader } from "../shader/Shader"; @@ -67,7 +67,7 @@ export class Material extends RefObject implements IClone { * @internal * @todo:temporary solution */ - _preRender(renderElement: RenderElement | SpriteElement) {} + _preRender(renderElement: MeshRenderElement | SpriteElement) {} /** * @override From 80c4c1689001102c1e03ef97b604faabcdd3df02 Mon Sep 17 00:00:00 2001 From: ChenMo Date: Mon, 22 Aug 2022 15:35:49 +0800 Subject: [PATCH 039/122] Add `siblingIndex` and `addChild()` insert ability for `Entity` (#961) * feat: add `siblingIndex` and `addChild()` insert ability for `Entity` --- packages/core/src/Entity.ts | 205 ++++++++++++------ packages/core/src/Scene.ts | 58 ++++- tests/src/core/Entity.test.ts | 393 ++++++++++++++++++++++++++++++++++ tests/src/core/Scene.test.ts | 71 ++++++ 4 files changed, 657 insertions(+), 70 deletions(-) create mode 100644 tests/src/core/Entity.test.ts create mode 100644 tests/src/core/Scene.test.ts diff --git a/packages/core/src/Entity.ts b/packages/core/src/Entity.ts index 3a2931e267..baf05acd50 100644 --- a/packages/core/src/Entity.ts +++ b/packages/core/src/Entity.ts @@ -61,6 +61,8 @@ export class Entity extends EngineObject { _isRoot: boolean = false; /** @internal */ _isActive: boolean = true; + /** @internal */ + _siblingIndex: number = -1; private _parent: Entity = null; private _activeChangedComponents: Component[]; @@ -103,29 +105,7 @@ export class Entity extends EngineObject { } set parent(value: Entity) { - if (value !== this._parent) { - const oldParent = this._removeFromParent(); - const newParent = (this._parent = value); - if (newParent) { - newParent._children.push(this); - const parentScene = newParent._scene; - if (this._scene !== parentScene) { - Entity._traverseSetOwnerScene(this, parentScene); - } - - if (newParent._isActiveInHierarchy) { - !this._isActiveInHierarchy && this._isActive && this._processActive(); - } else { - this._isActiveInHierarchy && this._processInActive(); - } - } else { - this._isActiveInHierarchy && this._processInActive(); - if (oldParent) { - Entity._traverseSetOwnerScene(this, null); - } - } - this._setTransformDirty(); - } + this._setParent(value); } /** @@ -136,6 +116,7 @@ export class Entity extends EngineObject { } /** + * @deprecated Please use `children.length` property instead. * Number of the children entities */ get childCount(): number { @@ -149,9 +130,26 @@ export class Entity extends EngineObject { return this._scene; } + /** + * The sibling index. + */ + get siblingIndex(): number { + return this._siblingIndex; + } + + set siblingIndex(value: number) { + if (this._siblingIndex === -1) { + throw `The entity ${this.name} is not in the hierarchy`; + } + + if (this._siblingIndex !== value) { + this._setSiblingIndex(this._isRoot ? this._scene._rootEntities : this._parent._children, value); + } + } + /** * Create a entity. - * @param engine - The engine the entity belongs to. + * @param engine - The engine the entity belongs to */ constructor(engine: Engine, name?: string) { super(engine); @@ -162,8 +160,8 @@ export class Entity extends EngineObject { /** * Add component based on the component type. - * @param type - The type of the component. - * @returns The component which has been added. + * @param type - The type of the component + * @returns The component which has been added */ addComponent(type: new (entity: Entity) => T): T { ComponentsDependencies._addCheck(this, type); @@ -177,8 +175,8 @@ export class Entity extends EngineObject { /** * Get component which match the type. - * @param type - The type of the component. - * @returns The first component which match type. + * @param type - The type of the component + * @returns The first component which match type */ getComponent(type: new (entity: Entity) => T): T { for (let i = this._components.length - 1; i >= 0; i--) { @@ -191,9 +189,9 @@ export class Entity extends EngineObject { /** * Get components which match the type. - * @param type - The type of the component. - * @param results - The components which match type. - * @returns The components which match type. + * @param type - The type of the component + * @param results - The components which match type + * @returns The components which match type */ getComponents(type: new (entity: Entity) => T, results: T[]): T[] { results.length = 0; @@ -208,9 +206,9 @@ export class Entity extends EngineObject { /** * Get the components which match the type of the entity and it's children. - * @param type - The component type. - * @param results - The components collection. - * @returns The components collection which match the type. + * @param type - The component type + * @param results - The components collection + * @returns The components collection which match the type */ getComponentsIncludeChildren(type: new (entity: Entity) => T, results: T[]): T[] { results.length = 0; @@ -220,16 +218,33 @@ export class Entity extends EngineObject { /** * Add child entity. - * @param child - The child entity which want to be added. + * @param child - The child entity which want to be added + */ + addChild(child: Entity): void; + + /** + * Add child entity at specified index. + * @param index - specified index + * @param child - The child entity which want to be added */ - addChild(child: Entity): void { + addChild(index: number, child: Entity): void; + + addChild(indexOrChild: number | Entity, child?: Entity): void { + let index: number; + if (typeof indexOrChild === "number") { + index = indexOrChild; + } else { + index = undefined; + child = indexOrChild; + } + if (child._isRoot) { - child._scene._removeEntity(child); + child._scene._removeFromEntityList(child); child._isRoot = false; - this._children.push(child); + this._addToChildrenList(index, child); child._parent = this; - + const newScene = this._scene; if (child._scene !== newScene) { Entity._traverseSetOwnerScene(child, newScene); @@ -243,22 +258,23 @@ export class Entity extends EngineObject { child._setTransformDirty(); } else { - child.parent = this; + child._setParent(this, index); } } /** * Remove child entity. - * @param child - The child entity which want to be removed. + * @param child - The child entity which want to be removed */ removeChild(child: Entity): void { - child.parent = null; + child._setParent(null); } /** + * @deprecated Please use `children` property instead. * Find child entity by index. - * @param index - The index of the child entity. - * @returns The component which be found. + * @param index - The index of the child entity + * @returns The component which be found */ getChild(index: number): Entity { return this._children[index]; @@ -266,8 +282,8 @@ export class Entity extends EngineObject { /** * Find child entity by name. - * @param name - The name of the entity which want to be found. - * @returns The component which be found. + * @param name - The name of the entity which want to be found + * @returns The component which be found */ findByName(name: string): Entity { const children = this._children; @@ -285,8 +301,8 @@ export class Entity extends EngineObject { /** * Find the entity by path. - * @param path - The path fo the entity eg: /entity. - * @returns The component which be found. + * @param path - The path fo the entity eg: /entity + * @returns The component which be found */ findByPath(path: string): Entity { const splits = path.split("/"); @@ -305,8 +321,8 @@ export class Entity extends EngineObject { /** * Create child entity. - * @param name - The child entity's name. - * @returns The child entity. + * @param name - The child entity's name + * @returns The child entity */ createChild(name?: string): Entity { const child = new Entity(this.engine, name); @@ -330,8 +346,8 @@ export class Entity extends EngineObject { } /** - * Clone - * @returns Cloned entity. + * Clone. + * @returns Cloned entity */ clone(): Entity { const cloneEntity = new Entity(this._engine, this.name); @@ -376,11 +392,7 @@ export class Entity extends EngineObject { } this._children.length = 0; - if (this._parent != null) { - const parentChildren = this._parent._children; - parentChildren.splice(parentChildren.indexOf(this), 1); - } - this._parent = null; + this._removeFromParent(); } /** @@ -412,14 +424,18 @@ export class Entity extends EngineObject { /** * @internal */ - _removeFromParent(): Entity { + _removeFromParent(): void { const oldParent = this._parent; if (oldParent != null) { - const oldParentChildren = oldParent._children; - oldParentChildren.splice(oldParentChildren.indexOf(this), 1); + const oldSilbing = oldParent._children; + let index = this._siblingIndex; + oldSilbing.splice(index, 1); + for (let n = oldSilbing.length; index < n; index++) { + oldSilbing[index]._siblingIndex--; + } this._parent = null; + this._siblingIndex = -1; } - return oldParent; } /** @@ -446,6 +462,52 @@ export class Entity extends EngineObject { this._setActiveComponents(false); } + private _addToChildrenList(index: number, child: Entity): void { + const children = this._children; + const childCount = children.length; + if (index === undefined) { + child._siblingIndex = childCount; + children.push(child); + } else { + if (index < 0 || index > childCount) { + throw `The index ${index} is out of child list bounds ${childCount}`; + } + child._siblingIndex = index; + children.splice(index, 0, child); + for (let i = index + 1, n = childCount + 1; i < n; i++) { + children[i]._siblingIndex++; + } + } + } + + private _setParent(parent: Entity, siblingIndex?: number): void { + const oldParent = this._parent; + if (parent !== oldParent) { + this._removeFromParent(); + this._parent = parent; + if (parent) { + parent._addToChildrenList(siblingIndex, this); + + const parentScene = parent._scene; + if (this._scene !== parentScene) { + Entity._traverseSetOwnerScene(this, parentScene); + } + + if (parent._isActiveInHierarchy) { + !this._isActiveInHierarchy && this._isActive && this._processActive(); + } else { + this._isActiveInHierarchy && this._processInActive(); + } + } else { + this._isActiveInHierarchy && this._processInActive(); + if (oldParent) { + Entity._traverseSetOwnerScene(this, null); + } + } + this._setTransformDirty(); + } + } + private _getComponentsInChildren(type: new (entity: Entity) => T, results: T[]): void { for (let i = this._components.length - 1; i >= 0; i--) { const component = this._components[i]; @@ -505,6 +567,27 @@ export class Entity extends EngineObject { } } + private _setSiblingIndex(sibling: Entity[], target: number): void { + if (target < 0 || target > sibling.length) { + throw `The index ${target} is out of child list bounds ${sibling.length}`; + } + + const oldIndex = this._siblingIndex; + if (target < oldIndex) { + for (let i = oldIndex; i >= target; i--) { + const child = i == target ? this : sibling[i - 1]; + sibling[i] = child; + child._siblingIndex = i; + } + } else { + for (let i = oldIndex; i <= target; i++) { + const child = i == target ? this : sibling[i + 1]; + sibling[i] = child; + child._siblingIndex = i; + } + } + } + //--------------------------------------------------------------deprecated---------------------------------------------------------------- private _invModelMatrix: Matrix = new Matrix(); private _inverseWorldMatFlag: BoolUpdateFlag; diff --git a/packages/core/src/Scene.ts b/packages/core/src/Scene.ts index 62b8a3dd75..a8dc730746 100644 --- a/packages/core/src/Scene.ts +++ b/packages/core/src/Scene.ts @@ -32,8 +32,9 @@ export class Scene extends EngineObject { _isActiveInEngine: boolean = false; /** @internal */ _globalShaderMacro: ShaderMacroCollection = new ShaderMacroCollection(); + /** @internal */ + _rootEntities: Entity[] = []; - private _rootEntities: Entity[] = []; private _ambientLight: AmbientLight; /** @@ -102,9 +103,25 @@ export class Scene extends EngineObject { * Append an entity. * @param entity - The root entity to add */ - addRootEntity(entity: Entity): void { - const isRoot = entity._isRoot; + addRootEntity(entity: Entity): void; + + /** + * Append an entity. + * @param index - specified index + * @param entity - The root entity to add + */ + addRootEntity(index: number, entity: Entity): void; + + addRootEntity(indexOrChild: number | Entity, entity?: Entity): void { + let index: number; + if (typeof indexOrChild === "number") { + index = indexOrChild; + } else { + index = undefined; + entity = indexOrChild; + } + const isRoot = entity._isRoot; // let entity become root if (!isRoot) { entity._isRoot = true; @@ -115,12 +132,12 @@ export class Scene extends EngineObject { const oldScene = entity._scene; if (oldScene !== this) { if (oldScene && isRoot) { - oldScene._removeEntity(entity); + oldScene._removeFromEntityList(entity); } - this._rootEntities.push(entity); + this._addToRootEntityList(index, entity); Entity._traverseSetOwnerScene(entity, this); } else if (!isRoot) { - this._rootEntities.push(entity); + this._addToRootEntityList(index, entity); } // process entity active/inActive @@ -137,7 +154,7 @@ export class Scene extends EngineObject { */ removeRootEntity(entity: Entity): void { if (entity._isRoot && entity._scene == this) { - this._removeEntity(entity); + this._removeFromEntityList(entity); entity._isRoot = false; this._isActiveInEngine && entity._isActiveInHierarchy && entity._processInActive(); Entity._traverseSetOwnerScene(entity, null); @@ -262,9 +279,14 @@ export class Scene extends EngineObject { /** * @internal */ - _removeEntity(entity: Entity): void { + _removeFromEntityList(entity: Entity): void { const rootEntities = this._rootEntities; - rootEntities.splice(rootEntities.indexOf(entity), 1); + let index = entity._siblingIndex; + rootEntities.splice(index, 1); + for (let n = rootEntities.length; index < n; index++) { + rootEntities[index]._siblingIndex--; + } + entity._siblingIndex = -1; } /** @@ -282,6 +304,24 @@ export class Scene extends EngineObject { this.shaderData._addRefCount(-1); } + private _addToRootEntityList(index: number, rootEntity: Entity): void { + const rootEntities = this._rootEntities; + const rootEntityCount = rootEntities.length; + if (index === undefined) { + rootEntity._siblingIndex = rootEntityCount; + rootEntities.push(rootEntity); + } else { + if (index < 0 || index > rootEntityCount) { + throw `The index ${index} is out of child list bounds ${rootEntityCount}`; + } + rootEntity._siblingIndex = index; + rootEntities.splice(index, 0, rootEntity); + for (let i = index + 1, n = rootEntityCount + 1; i < n; i++) { + rootEntities[i]._siblingIndex++; + } + } + } + //-----------------------------------------@deprecated----------------------------------- static registerFeature(Feature: new () => SceneFeature) { Scene.sceneFeatureManager.registerFeature(Feature); diff --git a/tests/src/core/Entity.test.ts b/tests/src/core/Entity.test.ts new file mode 100644 index 0000000000..a16e045d3b --- /dev/null +++ b/tests/src/core/Entity.test.ts @@ -0,0 +1,393 @@ +import { Entity, Script } from "@oasis-engine/core"; +import { WebGLEngine } from "@oasis-engine/rhi-webgl"; +import { expect } from "chai"; + +class TestComponent extends Script {} + +describe("Entity", () => { + const engine = new WebGLEngine(document.createElement("canvas")); + const scene = engine.sceneManager.activeScene; + engine.run(); + beforeEach(() => { + scene.createRootEntity("root"); + }); + + describe("scene.findByPath", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + + expect(scene.findEntityByPath("root/parent")).eq(parent); + + expect(scene.findEntityByPath("root/parent/child")).eq(child); + }); + it("not found", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + + expect(scene.findEntityByPath("child")).eq(null); + + expect(scene.findEntityByPath("parent/test")).eq(null); + }); + }); + + describe("isActive", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = false; + child.isActive = true; + expect(parent.isActive).eq(false); + expect(child.isActive).eq(true); + }); + }); + + describe("isActiveInHierarchy", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = true; + child.isActive = true; + expect(parent.isActiveInHierarchy).eq(true); + expect(child.isActiveInHierarchy).eq(true); + }); + + it("child false", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = true; + child.isActive = false; + expect(parent.isActiveInHierarchy).eq(true); + expect(child.isActiveInHierarchy).eq(false); + }); + + it("parent false", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = false; + child.isActive = true; + expect(parent.isActiveInHierarchy).eq(false); + expect(child.isActiveInHierarchy).eq(false); + }); + }); + + describe("parent", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = parent; + expect(child.parent).eq(parent); + }); + + it("null", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = null; + expect(child.parent).eq(null); + }); + + it("change", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const parent2 = new Entity(engine, "parent"); + + parent2.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = parent2; + expect(child.parent).eq(parent2); + }); + }); + + describe("childCount", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.children.length).eq(1); + }); + + it("null", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = null; + expect(parent.children.length).eq(0); + }); + + it("change", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const parent2 = new Entity(engine, "parent"); + + parent2.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = parent2; + expect(parent2.children.length).eq(1); + expect(parent.children.length).eq(0); + }); + }); + + describe("scene", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.scene).eq(scene); + expect(child.scene).eq(scene); + }); + + it("change parent", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.scene).eq(scene); + expect(child.scene).eq(scene); + }); + }); + + describe("scene", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(child.scene).eq(scene); + }); + + it("change parent", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.scene).eq(scene); + expect(child.scene).eq(scene); + }); + }); + + describe("component", () => { + it("addComponent getComponent", () => { + const entity = new Entity(engine, "entity"); + + entity.parent = scene.getRootEntity(); + const component = entity.addComponent(TestComponent); + expect(entity.getComponent(TestComponent)).eq(component); + }); + + it("addComponent getComponents", () => { + const entity = new Entity(engine, "entity"); + + entity.parent = scene.getRootEntity(); + const component = entity.addComponent(TestComponent); + const res = []; + entity.getComponents(TestComponent, res); + expect(res[0]).eq(component); + }); + }); + + describe("child", () => { + it("addChild", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.addChild(child); + expect(child.parent).eq(parent); + expect(child.scene).eq(scene); + }); + + it("removeChild", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.removeChild(child); + expect(child.parent).eq(null); + expect(child.scene).eq(null); + }); + + it("getChild", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const theChild = parent.getChild(0); + expect(theChild).eq(child); + }); + + it("getChild", () => { + const parent = new Entity(engine, "parent"); + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const theChild = parent.getChild(0); + expect(theChild).eq(child); + }); + + it("findByName", () => { + const parent = new Entity(engine, "parent"); + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const child2 = new Entity(engine, "child2"); + child2.parent = parent; + expect(parent.findByName("child")).eq(child); + expect(parent.findByName("child2")).eq(child2); + }); + + it("findByPath", () => { + const parent = new Entity(engine, "parent"); + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const child2 = new Entity(engine, "child2"); + child2.parent = parent; + expect(parent.findByPath("/child")).eq(child); + expect(parent.findByPath("child2")).eq(child2); + }); + + it("clearChildren", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const child2 = new Entity(engine, "child2"); + child2.parent = parent; + parent.clearChildren(); + expect(parent.children.length).eq(0); + }); + it("sibling index", () => { + const root = scene.createRootEntity(); + const child0 = new Entity(engine, "child0"); + const child1 = new Entity(engine, "child1"); + const child2 = new Entity(engine, "child2"); + const child3 = new Entity(engine, "child3"); + + // insert index + root.addChild(child0); + root.addChild(child2); + root.addChild(child3); + root.addChild(1, child1); + + expect(child0).eq(root.children[0]); + expect(child1).eq(root.children[1]); + expect(child2).eq(root.children[2]); + expect(child3).eq(root.children[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // high index to low index + child2.siblingIndex = 0; + expect(child2).eq(root.children[0]); + expect(child0).eq(root.children[1]); + expect(child1).eq(root.children[2]); + expect(child3).eq(root.children[3]); + expect(child2.siblingIndex).eq(0); + expect(child0.siblingIndex).eq(1); + expect(child1.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // low index to high index + child2.siblingIndex = 3; + expect(child0).eq(root.children[0]); + expect(child1).eq(root.children[1]); + expect(child3).eq(root.children[2]); + expect(child2).eq(root.children[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child3.siblingIndex).eq(2); + expect(child2.siblingIndex).eq(3); + + // remove entity + child1.parent = null; + expect(child0).eq(root.children[0]); + expect(child3).eq(root.children[1]); + expect(child2).eq(root.children[2]); + expect(child0.siblingIndex).eq(0); + expect(child3.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child1.siblingIndex).eq(-1); + + // out of range + var siblingIndexBadFn = function () { + child2.siblingIndex = 5; + }; + expect(siblingIndexBadFn).to.throw(); + + const entityX = new Entity(engine, "entityX"); + var lonelyBadFn = function () { + entityX.siblingIndex = 1; + }; + expect(lonelyBadFn).to.throw(); + }); + }); + + describe("clone", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const cloneParent = parent.clone(); + expect(cloneParent.children.length).eq(parent.children.length); + expect(cloneParent.findByName("child").name).eq(child.name); + expect(cloneParent.findByName("child")).eq(cloneParent.getChild(0)); + }); + }); + + describe("destroy", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.destroy(); + expect(parent.children.length).eq(0); + }); + }); +}); diff --git a/tests/src/core/Scene.test.ts b/tests/src/core/Scene.test.ts new file mode 100644 index 0000000000..23f2469503 --- /dev/null +++ b/tests/src/core/Scene.test.ts @@ -0,0 +1,71 @@ +import { Entity, Script } from "@oasis-engine/core"; +import { WebGLEngine } from "@oasis-engine/rhi-webgl"; +import { expect } from "chai"; + +class TestComponent extends Script {} + +describe("Scene", () => { + const engine = new WebGLEngine(document.createElement("canvas")); + const scene = engine.sceneManager.activeScene; + engine.run(); + beforeEach(() => { + scene.createRootEntity("root"); + }); + + describe("rootEntities", () => { + it("sibling index", () => { + scene.removeRootEntity(scene.rootEntities[0]); + const child0 = new Entity(engine, "child0"); + const child1 = new Entity(engine, "child1"); + const child2 = new Entity(engine, "child2"); + const child3 = new Entity(engine, "child3"); + + // insert index + scene.addRootEntity(child0); + scene.addRootEntity(child2); + scene.addRootEntity(child3); + scene.addRootEntity(1, child1); + + expect(child0).eq(scene.rootEntities[0]); + expect(child1).eq(scene.rootEntities[1]); + expect(child2).eq(scene.rootEntities[2]); + expect(child3).eq(scene.rootEntities[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // high index to low index + child2.siblingIndex = 0; + expect(child2).eq(scene.rootEntities[0]); + expect(child0).eq(scene.rootEntities[1]); + expect(child1).eq(scene.rootEntities[2]); + expect(child3).eq(scene.rootEntities[3]); + expect(child2.siblingIndex).eq(0); + expect(child0.siblingIndex).eq(1); + expect(child1.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // low index to high index + child2.siblingIndex = 3; + expect(child0).eq(scene.rootEntities[0]); + expect(child1).eq(scene.rootEntities[1]); + expect(child3).eq(scene.rootEntities[2]); + expect(child2).eq(scene.rootEntities[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child3.siblingIndex).eq(2); + expect(child2.siblingIndex).eq(3); + + // remove entity + scene.removeRootEntity(child1); + expect(child0).eq(scene.rootEntities[0]); + expect(child3).eq(scene.rootEntities[1]); + expect(child2).eq(scene.rootEntities[2]); + expect(child0.siblingIndex).eq(0); + expect(child3.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child1.siblingIndex).eq(-1); + }); + }); +}); From 55d2921f09333bcf618cd017992290d300627074 Mon Sep 17 00:00:00 2001 From: ChenMo Date: Mon, 22 Aug 2022 15:35:49 +0800 Subject: [PATCH 040/122] Add `siblingIndex` and `addChild()` insert ability for `Entity` (#961) * feat: add `siblingIndex` and `addChild()` insert ability for `Entity` --- packages/core/src/Entity.ts | 205 ++++++++++++------ packages/core/src/Scene.ts | 58 ++++- tests/src/core/Entity.test.ts | 393 ++++++++++++++++++++++++++++++++++ tests/src/core/Scene.test.ts | 71 ++++++ 4 files changed, 657 insertions(+), 70 deletions(-) create mode 100644 tests/src/core/Entity.test.ts create mode 100644 tests/src/core/Scene.test.ts diff --git a/packages/core/src/Entity.ts b/packages/core/src/Entity.ts index 3a2931e267..baf05acd50 100644 --- a/packages/core/src/Entity.ts +++ b/packages/core/src/Entity.ts @@ -61,6 +61,8 @@ export class Entity extends EngineObject { _isRoot: boolean = false; /** @internal */ _isActive: boolean = true; + /** @internal */ + _siblingIndex: number = -1; private _parent: Entity = null; private _activeChangedComponents: Component[]; @@ -103,29 +105,7 @@ export class Entity extends EngineObject { } set parent(value: Entity) { - if (value !== this._parent) { - const oldParent = this._removeFromParent(); - const newParent = (this._parent = value); - if (newParent) { - newParent._children.push(this); - const parentScene = newParent._scene; - if (this._scene !== parentScene) { - Entity._traverseSetOwnerScene(this, parentScene); - } - - if (newParent._isActiveInHierarchy) { - !this._isActiveInHierarchy && this._isActive && this._processActive(); - } else { - this._isActiveInHierarchy && this._processInActive(); - } - } else { - this._isActiveInHierarchy && this._processInActive(); - if (oldParent) { - Entity._traverseSetOwnerScene(this, null); - } - } - this._setTransformDirty(); - } + this._setParent(value); } /** @@ -136,6 +116,7 @@ export class Entity extends EngineObject { } /** + * @deprecated Please use `children.length` property instead. * Number of the children entities */ get childCount(): number { @@ -149,9 +130,26 @@ export class Entity extends EngineObject { return this._scene; } + /** + * The sibling index. + */ + get siblingIndex(): number { + return this._siblingIndex; + } + + set siblingIndex(value: number) { + if (this._siblingIndex === -1) { + throw `The entity ${this.name} is not in the hierarchy`; + } + + if (this._siblingIndex !== value) { + this._setSiblingIndex(this._isRoot ? this._scene._rootEntities : this._parent._children, value); + } + } + /** * Create a entity. - * @param engine - The engine the entity belongs to. + * @param engine - The engine the entity belongs to */ constructor(engine: Engine, name?: string) { super(engine); @@ -162,8 +160,8 @@ export class Entity extends EngineObject { /** * Add component based on the component type. - * @param type - The type of the component. - * @returns The component which has been added. + * @param type - The type of the component + * @returns The component which has been added */ addComponent(type: new (entity: Entity) => T): T { ComponentsDependencies._addCheck(this, type); @@ -177,8 +175,8 @@ export class Entity extends EngineObject { /** * Get component which match the type. - * @param type - The type of the component. - * @returns The first component which match type. + * @param type - The type of the component + * @returns The first component which match type */ getComponent(type: new (entity: Entity) => T): T { for (let i = this._components.length - 1; i >= 0; i--) { @@ -191,9 +189,9 @@ export class Entity extends EngineObject { /** * Get components which match the type. - * @param type - The type of the component. - * @param results - The components which match type. - * @returns The components which match type. + * @param type - The type of the component + * @param results - The components which match type + * @returns The components which match type */ getComponents(type: new (entity: Entity) => T, results: T[]): T[] { results.length = 0; @@ -208,9 +206,9 @@ export class Entity extends EngineObject { /** * Get the components which match the type of the entity and it's children. - * @param type - The component type. - * @param results - The components collection. - * @returns The components collection which match the type. + * @param type - The component type + * @param results - The components collection + * @returns The components collection which match the type */ getComponentsIncludeChildren(type: new (entity: Entity) => T, results: T[]): T[] { results.length = 0; @@ -220,16 +218,33 @@ export class Entity extends EngineObject { /** * Add child entity. - * @param child - The child entity which want to be added. + * @param child - The child entity which want to be added + */ + addChild(child: Entity): void; + + /** + * Add child entity at specified index. + * @param index - specified index + * @param child - The child entity which want to be added */ - addChild(child: Entity): void { + addChild(index: number, child: Entity): void; + + addChild(indexOrChild: number | Entity, child?: Entity): void { + let index: number; + if (typeof indexOrChild === "number") { + index = indexOrChild; + } else { + index = undefined; + child = indexOrChild; + } + if (child._isRoot) { - child._scene._removeEntity(child); + child._scene._removeFromEntityList(child); child._isRoot = false; - this._children.push(child); + this._addToChildrenList(index, child); child._parent = this; - + const newScene = this._scene; if (child._scene !== newScene) { Entity._traverseSetOwnerScene(child, newScene); @@ -243,22 +258,23 @@ export class Entity extends EngineObject { child._setTransformDirty(); } else { - child.parent = this; + child._setParent(this, index); } } /** * Remove child entity. - * @param child - The child entity which want to be removed. + * @param child - The child entity which want to be removed */ removeChild(child: Entity): void { - child.parent = null; + child._setParent(null); } /** + * @deprecated Please use `children` property instead. * Find child entity by index. - * @param index - The index of the child entity. - * @returns The component which be found. + * @param index - The index of the child entity + * @returns The component which be found */ getChild(index: number): Entity { return this._children[index]; @@ -266,8 +282,8 @@ export class Entity extends EngineObject { /** * Find child entity by name. - * @param name - The name of the entity which want to be found. - * @returns The component which be found. + * @param name - The name of the entity which want to be found + * @returns The component which be found */ findByName(name: string): Entity { const children = this._children; @@ -285,8 +301,8 @@ export class Entity extends EngineObject { /** * Find the entity by path. - * @param path - The path fo the entity eg: /entity. - * @returns The component which be found. + * @param path - The path fo the entity eg: /entity + * @returns The component which be found */ findByPath(path: string): Entity { const splits = path.split("/"); @@ -305,8 +321,8 @@ export class Entity extends EngineObject { /** * Create child entity. - * @param name - The child entity's name. - * @returns The child entity. + * @param name - The child entity's name + * @returns The child entity */ createChild(name?: string): Entity { const child = new Entity(this.engine, name); @@ -330,8 +346,8 @@ export class Entity extends EngineObject { } /** - * Clone - * @returns Cloned entity. + * Clone. + * @returns Cloned entity */ clone(): Entity { const cloneEntity = new Entity(this._engine, this.name); @@ -376,11 +392,7 @@ export class Entity extends EngineObject { } this._children.length = 0; - if (this._parent != null) { - const parentChildren = this._parent._children; - parentChildren.splice(parentChildren.indexOf(this), 1); - } - this._parent = null; + this._removeFromParent(); } /** @@ -412,14 +424,18 @@ export class Entity extends EngineObject { /** * @internal */ - _removeFromParent(): Entity { + _removeFromParent(): void { const oldParent = this._parent; if (oldParent != null) { - const oldParentChildren = oldParent._children; - oldParentChildren.splice(oldParentChildren.indexOf(this), 1); + const oldSilbing = oldParent._children; + let index = this._siblingIndex; + oldSilbing.splice(index, 1); + for (let n = oldSilbing.length; index < n; index++) { + oldSilbing[index]._siblingIndex--; + } this._parent = null; + this._siblingIndex = -1; } - return oldParent; } /** @@ -446,6 +462,52 @@ export class Entity extends EngineObject { this._setActiveComponents(false); } + private _addToChildrenList(index: number, child: Entity): void { + const children = this._children; + const childCount = children.length; + if (index === undefined) { + child._siblingIndex = childCount; + children.push(child); + } else { + if (index < 0 || index > childCount) { + throw `The index ${index} is out of child list bounds ${childCount}`; + } + child._siblingIndex = index; + children.splice(index, 0, child); + for (let i = index + 1, n = childCount + 1; i < n; i++) { + children[i]._siblingIndex++; + } + } + } + + private _setParent(parent: Entity, siblingIndex?: number): void { + const oldParent = this._parent; + if (parent !== oldParent) { + this._removeFromParent(); + this._parent = parent; + if (parent) { + parent._addToChildrenList(siblingIndex, this); + + const parentScene = parent._scene; + if (this._scene !== parentScene) { + Entity._traverseSetOwnerScene(this, parentScene); + } + + if (parent._isActiveInHierarchy) { + !this._isActiveInHierarchy && this._isActive && this._processActive(); + } else { + this._isActiveInHierarchy && this._processInActive(); + } + } else { + this._isActiveInHierarchy && this._processInActive(); + if (oldParent) { + Entity._traverseSetOwnerScene(this, null); + } + } + this._setTransformDirty(); + } + } + private _getComponentsInChildren(type: new (entity: Entity) => T, results: T[]): void { for (let i = this._components.length - 1; i >= 0; i--) { const component = this._components[i]; @@ -505,6 +567,27 @@ export class Entity extends EngineObject { } } + private _setSiblingIndex(sibling: Entity[], target: number): void { + if (target < 0 || target > sibling.length) { + throw `The index ${target} is out of child list bounds ${sibling.length}`; + } + + const oldIndex = this._siblingIndex; + if (target < oldIndex) { + for (let i = oldIndex; i >= target; i--) { + const child = i == target ? this : sibling[i - 1]; + sibling[i] = child; + child._siblingIndex = i; + } + } else { + for (let i = oldIndex; i <= target; i++) { + const child = i == target ? this : sibling[i + 1]; + sibling[i] = child; + child._siblingIndex = i; + } + } + } + //--------------------------------------------------------------deprecated---------------------------------------------------------------- private _invModelMatrix: Matrix = new Matrix(); private _inverseWorldMatFlag: BoolUpdateFlag; diff --git a/packages/core/src/Scene.ts b/packages/core/src/Scene.ts index 62b8a3dd75..a8dc730746 100644 --- a/packages/core/src/Scene.ts +++ b/packages/core/src/Scene.ts @@ -32,8 +32,9 @@ export class Scene extends EngineObject { _isActiveInEngine: boolean = false; /** @internal */ _globalShaderMacro: ShaderMacroCollection = new ShaderMacroCollection(); + /** @internal */ + _rootEntities: Entity[] = []; - private _rootEntities: Entity[] = []; private _ambientLight: AmbientLight; /** @@ -102,9 +103,25 @@ export class Scene extends EngineObject { * Append an entity. * @param entity - The root entity to add */ - addRootEntity(entity: Entity): void { - const isRoot = entity._isRoot; + addRootEntity(entity: Entity): void; + + /** + * Append an entity. + * @param index - specified index + * @param entity - The root entity to add + */ + addRootEntity(index: number, entity: Entity): void; + + addRootEntity(indexOrChild: number | Entity, entity?: Entity): void { + let index: number; + if (typeof indexOrChild === "number") { + index = indexOrChild; + } else { + index = undefined; + entity = indexOrChild; + } + const isRoot = entity._isRoot; // let entity become root if (!isRoot) { entity._isRoot = true; @@ -115,12 +132,12 @@ export class Scene extends EngineObject { const oldScene = entity._scene; if (oldScene !== this) { if (oldScene && isRoot) { - oldScene._removeEntity(entity); + oldScene._removeFromEntityList(entity); } - this._rootEntities.push(entity); + this._addToRootEntityList(index, entity); Entity._traverseSetOwnerScene(entity, this); } else if (!isRoot) { - this._rootEntities.push(entity); + this._addToRootEntityList(index, entity); } // process entity active/inActive @@ -137,7 +154,7 @@ export class Scene extends EngineObject { */ removeRootEntity(entity: Entity): void { if (entity._isRoot && entity._scene == this) { - this._removeEntity(entity); + this._removeFromEntityList(entity); entity._isRoot = false; this._isActiveInEngine && entity._isActiveInHierarchy && entity._processInActive(); Entity._traverseSetOwnerScene(entity, null); @@ -262,9 +279,14 @@ export class Scene extends EngineObject { /** * @internal */ - _removeEntity(entity: Entity): void { + _removeFromEntityList(entity: Entity): void { const rootEntities = this._rootEntities; - rootEntities.splice(rootEntities.indexOf(entity), 1); + let index = entity._siblingIndex; + rootEntities.splice(index, 1); + for (let n = rootEntities.length; index < n; index++) { + rootEntities[index]._siblingIndex--; + } + entity._siblingIndex = -1; } /** @@ -282,6 +304,24 @@ export class Scene extends EngineObject { this.shaderData._addRefCount(-1); } + private _addToRootEntityList(index: number, rootEntity: Entity): void { + const rootEntities = this._rootEntities; + const rootEntityCount = rootEntities.length; + if (index === undefined) { + rootEntity._siblingIndex = rootEntityCount; + rootEntities.push(rootEntity); + } else { + if (index < 0 || index > rootEntityCount) { + throw `The index ${index} is out of child list bounds ${rootEntityCount}`; + } + rootEntity._siblingIndex = index; + rootEntities.splice(index, 0, rootEntity); + for (let i = index + 1, n = rootEntityCount + 1; i < n; i++) { + rootEntities[i]._siblingIndex++; + } + } + } + //-----------------------------------------@deprecated----------------------------------- static registerFeature(Feature: new () => SceneFeature) { Scene.sceneFeatureManager.registerFeature(Feature); diff --git a/tests/src/core/Entity.test.ts b/tests/src/core/Entity.test.ts new file mode 100644 index 0000000000..a16e045d3b --- /dev/null +++ b/tests/src/core/Entity.test.ts @@ -0,0 +1,393 @@ +import { Entity, Script } from "@oasis-engine/core"; +import { WebGLEngine } from "@oasis-engine/rhi-webgl"; +import { expect } from "chai"; + +class TestComponent extends Script {} + +describe("Entity", () => { + const engine = new WebGLEngine(document.createElement("canvas")); + const scene = engine.sceneManager.activeScene; + engine.run(); + beforeEach(() => { + scene.createRootEntity("root"); + }); + + describe("scene.findByPath", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + + expect(scene.findEntityByPath("root/parent")).eq(parent); + + expect(scene.findEntityByPath("root/parent/child")).eq(child); + }); + it("not found", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + + expect(scene.findEntityByPath("child")).eq(null); + + expect(scene.findEntityByPath("parent/test")).eq(null); + }); + }); + + describe("isActive", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = false; + child.isActive = true; + expect(parent.isActive).eq(false); + expect(child.isActive).eq(true); + }); + }); + + describe("isActiveInHierarchy", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = true; + child.isActive = true; + expect(parent.isActiveInHierarchy).eq(true); + expect(child.isActiveInHierarchy).eq(true); + }); + + it("child false", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = true; + child.isActive = false; + expect(parent.isActiveInHierarchy).eq(true); + expect(child.isActiveInHierarchy).eq(false); + }); + + it("parent false", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = false; + child.isActive = true; + expect(parent.isActiveInHierarchy).eq(false); + expect(child.isActiveInHierarchy).eq(false); + }); + }); + + describe("parent", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = parent; + expect(child.parent).eq(parent); + }); + + it("null", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = null; + expect(child.parent).eq(null); + }); + + it("change", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const parent2 = new Entity(engine, "parent"); + + parent2.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = parent2; + expect(child.parent).eq(parent2); + }); + }); + + describe("childCount", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.children.length).eq(1); + }); + + it("null", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = null; + expect(parent.children.length).eq(0); + }); + + it("change", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const parent2 = new Entity(engine, "parent"); + + parent2.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = parent2; + expect(parent2.children.length).eq(1); + expect(parent.children.length).eq(0); + }); + }); + + describe("scene", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.scene).eq(scene); + expect(child.scene).eq(scene); + }); + + it("change parent", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.scene).eq(scene); + expect(child.scene).eq(scene); + }); + }); + + describe("scene", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(child.scene).eq(scene); + }); + + it("change parent", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.scene).eq(scene); + expect(child.scene).eq(scene); + }); + }); + + describe("component", () => { + it("addComponent getComponent", () => { + const entity = new Entity(engine, "entity"); + + entity.parent = scene.getRootEntity(); + const component = entity.addComponent(TestComponent); + expect(entity.getComponent(TestComponent)).eq(component); + }); + + it("addComponent getComponents", () => { + const entity = new Entity(engine, "entity"); + + entity.parent = scene.getRootEntity(); + const component = entity.addComponent(TestComponent); + const res = []; + entity.getComponents(TestComponent, res); + expect(res[0]).eq(component); + }); + }); + + describe("child", () => { + it("addChild", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.addChild(child); + expect(child.parent).eq(parent); + expect(child.scene).eq(scene); + }); + + it("removeChild", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.removeChild(child); + expect(child.parent).eq(null); + expect(child.scene).eq(null); + }); + + it("getChild", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const theChild = parent.getChild(0); + expect(theChild).eq(child); + }); + + it("getChild", () => { + const parent = new Entity(engine, "parent"); + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const theChild = parent.getChild(0); + expect(theChild).eq(child); + }); + + it("findByName", () => { + const parent = new Entity(engine, "parent"); + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const child2 = new Entity(engine, "child2"); + child2.parent = parent; + expect(parent.findByName("child")).eq(child); + expect(parent.findByName("child2")).eq(child2); + }); + + it("findByPath", () => { + const parent = new Entity(engine, "parent"); + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const child2 = new Entity(engine, "child2"); + child2.parent = parent; + expect(parent.findByPath("/child")).eq(child); + expect(parent.findByPath("child2")).eq(child2); + }); + + it("clearChildren", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const child2 = new Entity(engine, "child2"); + child2.parent = parent; + parent.clearChildren(); + expect(parent.children.length).eq(0); + }); + it("sibling index", () => { + const root = scene.createRootEntity(); + const child0 = new Entity(engine, "child0"); + const child1 = new Entity(engine, "child1"); + const child2 = new Entity(engine, "child2"); + const child3 = new Entity(engine, "child3"); + + // insert index + root.addChild(child0); + root.addChild(child2); + root.addChild(child3); + root.addChild(1, child1); + + expect(child0).eq(root.children[0]); + expect(child1).eq(root.children[1]); + expect(child2).eq(root.children[2]); + expect(child3).eq(root.children[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // high index to low index + child2.siblingIndex = 0; + expect(child2).eq(root.children[0]); + expect(child0).eq(root.children[1]); + expect(child1).eq(root.children[2]); + expect(child3).eq(root.children[3]); + expect(child2.siblingIndex).eq(0); + expect(child0.siblingIndex).eq(1); + expect(child1.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // low index to high index + child2.siblingIndex = 3; + expect(child0).eq(root.children[0]); + expect(child1).eq(root.children[1]); + expect(child3).eq(root.children[2]); + expect(child2).eq(root.children[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child3.siblingIndex).eq(2); + expect(child2.siblingIndex).eq(3); + + // remove entity + child1.parent = null; + expect(child0).eq(root.children[0]); + expect(child3).eq(root.children[1]); + expect(child2).eq(root.children[2]); + expect(child0.siblingIndex).eq(0); + expect(child3.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child1.siblingIndex).eq(-1); + + // out of range + var siblingIndexBadFn = function () { + child2.siblingIndex = 5; + }; + expect(siblingIndexBadFn).to.throw(); + + const entityX = new Entity(engine, "entityX"); + var lonelyBadFn = function () { + entityX.siblingIndex = 1; + }; + expect(lonelyBadFn).to.throw(); + }); + }); + + describe("clone", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const cloneParent = parent.clone(); + expect(cloneParent.children.length).eq(parent.children.length); + expect(cloneParent.findByName("child").name).eq(child.name); + expect(cloneParent.findByName("child")).eq(cloneParent.getChild(0)); + }); + }); + + describe("destroy", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.destroy(); + expect(parent.children.length).eq(0); + }); + }); +}); diff --git a/tests/src/core/Scene.test.ts b/tests/src/core/Scene.test.ts new file mode 100644 index 0000000000..23f2469503 --- /dev/null +++ b/tests/src/core/Scene.test.ts @@ -0,0 +1,71 @@ +import { Entity, Script } from "@oasis-engine/core"; +import { WebGLEngine } from "@oasis-engine/rhi-webgl"; +import { expect } from "chai"; + +class TestComponent extends Script {} + +describe("Scene", () => { + const engine = new WebGLEngine(document.createElement("canvas")); + const scene = engine.sceneManager.activeScene; + engine.run(); + beforeEach(() => { + scene.createRootEntity("root"); + }); + + describe("rootEntities", () => { + it("sibling index", () => { + scene.removeRootEntity(scene.rootEntities[0]); + const child0 = new Entity(engine, "child0"); + const child1 = new Entity(engine, "child1"); + const child2 = new Entity(engine, "child2"); + const child3 = new Entity(engine, "child3"); + + // insert index + scene.addRootEntity(child0); + scene.addRootEntity(child2); + scene.addRootEntity(child3); + scene.addRootEntity(1, child1); + + expect(child0).eq(scene.rootEntities[0]); + expect(child1).eq(scene.rootEntities[1]); + expect(child2).eq(scene.rootEntities[2]); + expect(child3).eq(scene.rootEntities[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // high index to low index + child2.siblingIndex = 0; + expect(child2).eq(scene.rootEntities[0]); + expect(child0).eq(scene.rootEntities[1]); + expect(child1).eq(scene.rootEntities[2]); + expect(child3).eq(scene.rootEntities[3]); + expect(child2.siblingIndex).eq(0); + expect(child0.siblingIndex).eq(1); + expect(child1.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // low index to high index + child2.siblingIndex = 3; + expect(child0).eq(scene.rootEntities[0]); + expect(child1).eq(scene.rootEntities[1]); + expect(child3).eq(scene.rootEntities[2]); + expect(child2).eq(scene.rootEntities[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child3.siblingIndex).eq(2); + expect(child2.siblingIndex).eq(3); + + // remove entity + scene.removeRootEntity(child1); + expect(child0).eq(scene.rootEntities[0]); + expect(child3).eq(scene.rootEntities[1]); + expect(child2).eq(scene.rootEntities[2]); + expect(child0.siblingIndex).eq(0); + expect(child3.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child1.siblingIndex).eq(-1); + }); + }); +}); From 43f249b3881de1129942e5f542ccbc4be3c3e8e0 Mon Sep 17 00:00:00 2001 From: ChenMo Date: Mon, 22 Aug 2022 15:49:16 +0800 Subject: [PATCH 041/122] Add `siblingIndex` and `addChild()` insert ability for `Entity` (#961) (#969) * feat: add `siblingIndex` and `addChild()` insert ability for `Entity` --- packages/core/src/Entity.ts | 205 ++++++++++++------ packages/core/src/Scene.ts | 58 ++++- tests/src/core/Entity.test.ts | 393 ++++++++++++++++++++++++++++++++++ tests/src/core/Scene.test.ts | 71 ++++++ 4 files changed, 657 insertions(+), 70 deletions(-) create mode 100644 tests/src/core/Entity.test.ts create mode 100644 tests/src/core/Scene.test.ts diff --git a/packages/core/src/Entity.ts b/packages/core/src/Entity.ts index 3a2931e267..baf05acd50 100644 --- a/packages/core/src/Entity.ts +++ b/packages/core/src/Entity.ts @@ -61,6 +61,8 @@ export class Entity extends EngineObject { _isRoot: boolean = false; /** @internal */ _isActive: boolean = true; + /** @internal */ + _siblingIndex: number = -1; private _parent: Entity = null; private _activeChangedComponents: Component[]; @@ -103,29 +105,7 @@ export class Entity extends EngineObject { } set parent(value: Entity) { - if (value !== this._parent) { - const oldParent = this._removeFromParent(); - const newParent = (this._parent = value); - if (newParent) { - newParent._children.push(this); - const parentScene = newParent._scene; - if (this._scene !== parentScene) { - Entity._traverseSetOwnerScene(this, parentScene); - } - - if (newParent._isActiveInHierarchy) { - !this._isActiveInHierarchy && this._isActive && this._processActive(); - } else { - this._isActiveInHierarchy && this._processInActive(); - } - } else { - this._isActiveInHierarchy && this._processInActive(); - if (oldParent) { - Entity._traverseSetOwnerScene(this, null); - } - } - this._setTransformDirty(); - } + this._setParent(value); } /** @@ -136,6 +116,7 @@ export class Entity extends EngineObject { } /** + * @deprecated Please use `children.length` property instead. * Number of the children entities */ get childCount(): number { @@ -149,9 +130,26 @@ export class Entity extends EngineObject { return this._scene; } + /** + * The sibling index. + */ + get siblingIndex(): number { + return this._siblingIndex; + } + + set siblingIndex(value: number) { + if (this._siblingIndex === -1) { + throw `The entity ${this.name} is not in the hierarchy`; + } + + if (this._siblingIndex !== value) { + this._setSiblingIndex(this._isRoot ? this._scene._rootEntities : this._parent._children, value); + } + } + /** * Create a entity. - * @param engine - The engine the entity belongs to. + * @param engine - The engine the entity belongs to */ constructor(engine: Engine, name?: string) { super(engine); @@ -162,8 +160,8 @@ export class Entity extends EngineObject { /** * Add component based on the component type. - * @param type - The type of the component. - * @returns The component which has been added. + * @param type - The type of the component + * @returns The component which has been added */ addComponent(type: new (entity: Entity) => T): T { ComponentsDependencies._addCheck(this, type); @@ -177,8 +175,8 @@ export class Entity extends EngineObject { /** * Get component which match the type. - * @param type - The type of the component. - * @returns The first component which match type. + * @param type - The type of the component + * @returns The first component which match type */ getComponent(type: new (entity: Entity) => T): T { for (let i = this._components.length - 1; i >= 0; i--) { @@ -191,9 +189,9 @@ export class Entity extends EngineObject { /** * Get components which match the type. - * @param type - The type of the component. - * @param results - The components which match type. - * @returns The components which match type. + * @param type - The type of the component + * @param results - The components which match type + * @returns The components which match type */ getComponents(type: new (entity: Entity) => T, results: T[]): T[] { results.length = 0; @@ -208,9 +206,9 @@ export class Entity extends EngineObject { /** * Get the components which match the type of the entity and it's children. - * @param type - The component type. - * @param results - The components collection. - * @returns The components collection which match the type. + * @param type - The component type + * @param results - The components collection + * @returns The components collection which match the type */ getComponentsIncludeChildren(type: new (entity: Entity) => T, results: T[]): T[] { results.length = 0; @@ -220,16 +218,33 @@ export class Entity extends EngineObject { /** * Add child entity. - * @param child - The child entity which want to be added. + * @param child - The child entity which want to be added + */ + addChild(child: Entity): void; + + /** + * Add child entity at specified index. + * @param index - specified index + * @param child - The child entity which want to be added */ - addChild(child: Entity): void { + addChild(index: number, child: Entity): void; + + addChild(indexOrChild: number | Entity, child?: Entity): void { + let index: number; + if (typeof indexOrChild === "number") { + index = indexOrChild; + } else { + index = undefined; + child = indexOrChild; + } + if (child._isRoot) { - child._scene._removeEntity(child); + child._scene._removeFromEntityList(child); child._isRoot = false; - this._children.push(child); + this._addToChildrenList(index, child); child._parent = this; - + const newScene = this._scene; if (child._scene !== newScene) { Entity._traverseSetOwnerScene(child, newScene); @@ -243,22 +258,23 @@ export class Entity extends EngineObject { child._setTransformDirty(); } else { - child.parent = this; + child._setParent(this, index); } } /** * Remove child entity. - * @param child - The child entity which want to be removed. + * @param child - The child entity which want to be removed */ removeChild(child: Entity): void { - child.parent = null; + child._setParent(null); } /** + * @deprecated Please use `children` property instead. * Find child entity by index. - * @param index - The index of the child entity. - * @returns The component which be found. + * @param index - The index of the child entity + * @returns The component which be found */ getChild(index: number): Entity { return this._children[index]; @@ -266,8 +282,8 @@ export class Entity extends EngineObject { /** * Find child entity by name. - * @param name - The name of the entity which want to be found. - * @returns The component which be found. + * @param name - The name of the entity which want to be found + * @returns The component which be found */ findByName(name: string): Entity { const children = this._children; @@ -285,8 +301,8 @@ export class Entity extends EngineObject { /** * Find the entity by path. - * @param path - The path fo the entity eg: /entity. - * @returns The component which be found. + * @param path - The path fo the entity eg: /entity + * @returns The component which be found */ findByPath(path: string): Entity { const splits = path.split("/"); @@ -305,8 +321,8 @@ export class Entity extends EngineObject { /** * Create child entity. - * @param name - The child entity's name. - * @returns The child entity. + * @param name - The child entity's name + * @returns The child entity */ createChild(name?: string): Entity { const child = new Entity(this.engine, name); @@ -330,8 +346,8 @@ export class Entity extends EngineObject { } /** - * Clone - * @returns Cloned entity. + * Clone. + * @returns Cloned entity */ clone(): Entity { const cloneEntity = new Entity(this._engine, this.name); @@ -376,11 +392,7 @@ export class Entity extends EngineObject { } this._children.length = 0; - if (this._parent != null) { - const parentChildren = this._parent._children; - parentChildren.splice(parentChildren.indexOf(this), 1); - } - this._parent = null; + this._removeFromParent(); } /** @@ -412,14 +424,18 @@ export class Entity extends EngineObject { /** * @internal */ - _removeFromParent(): Entity { + _removeFromParent(): void { const oldParent = this._parent; if (oldParent != null) { - const oldParentChildren = oldParent._children; - oldParentChildren.splice(oldParentChildren.indexOf(this), 1); + const oldSilbing = oldParent._children; + let index = this._siblingIndex; + oldSilbing.splice(index, 1); + for (let n = oldSilbing.length; index < n; index++) { + oldSilbing[index]._siblingIndex--; + } this._parent = null; + this._siblingIndex = -1; } - return oldParent; } /** @@ -446,6 +462,52 @@ export class Entity extends EngineObject { this._setActiveComponents(false); } + private _addToChildrenList(index: number, child: Entity): void { + const children = this._children; + const childCount = children.length; + if (index === undefined) { + child._siblingIndex = childCount; + children.push(child); + } else { + if (index < 0 || index > childCount) { + throw `The index ${index} is out of child list bounds ${childCount}`; + } + child._siblingIndex = index; + children.splice(index, 0, child); + for (let i = index + 1, n = childCount + 1; i < n; i++) { + children[i]._siblingIndex++; + } + } + } + + private _setParent(parent: Entity, siblingIndex?: number): void { + const oldParent = this._parent; + if (parent !== oldParent) { + this._removeFromParent(); + this._parent = parent; + if (parent) { + parent._addToChildrenList(siblingIndex, this); + + const parentScene = parent._scene; + if (this._scene !== parentScene) { + Entity._traverseSetOwnerScene(this, parentScene); + } + + if (parent._isActiveInHierarchy) { + !this._isActiveInHierarchy && this._isActive && this._processActive(); + } else { + this._isActiveInHierarchy && this._processInActive(); + } + } else { + this._isActiveInHierarchy && this._processInActive(); + if (oldParent) { + Entity._traverseSetOwnerScene(this, null); + } + } + this._setTransformDirty(); + } + } + private _getComponentsInChildren(type: new (entity: Entity) => T, results: T[]): void { for (let i = this._components.length - 1; i >= 0; i--) { const component = this._components[i]; @@ -505,6 +567,27 @@ export class Entity extends EngineObject { } } + private _setSiblingIndex(sibling: Entity[], target: number): void { + if (target < 0 || target > sibling.length) { + throw `The index ${target} is out of child list bounds ${sibling.length}`; + } + + const oldIndex = this._siblingIndex; + if (target < oldIndex) { + for (let i = oldIndex; i >= target; i--) { + const child = i == target ? this : sibling[i - 1]; + sibling[i] = child; + child._siblingIndex = i; + } + } else { + for (let i = oldIndex; i <= target; i++) { + const child = i == target ? this : sibling[i + 1]; + sibling[i] = child; + child._siblingIndex = i; + } + } + } + //--------------------------------------------------------------deprecated---------------------------------------------------------------- private _invModelMatrix: Matrix = new Matrix(); private _inverseWorldMatFlag: BoolUpdateFlag; diff --git a/packages/core/src/Scene.ts b/packages/core/src/Scene.ts index 62b8a3dd75..a8dc730746 100644 --- a/packages/core/src/Scene.ts +++ b/packages/core/src/Scene.ts @@ -32,8 +32,9 @@ export class Scene extends EngineObject { _isActiveInEngine: boolean = false; /** @internal */ _globalShaderMacro: ShaderMacroCollection = new ShaderMacroCollection(); + /** @internal */ + _rootEntities: Entity[] = []; - private _rootEntities: Entity[] = []; private _ambientLight: AmbientLight; /** @@ -102,9 +103,25 @@ export class Scene extends EngineObject { * Append an entity. * @param entity - The root entity to add */ - addRootEntity(entity: Entity): void { - const isRoot = entity._isRoot; + addRootEntity(entity: Entity): void; + + /** + * Append an entity. + * @param index - specified index + * @param entity - The root entity to add + */ + addRootEntity(index: number, entity: Entity): void; + + addRootEntity(indexOrChild: number | Entity, entity?: Entity): void { + let index: number; + if (typeof indexOrChild === "number") { + index = indexOrChild; + } else { + index = undefined; + entity = indexOrChild; + } + const isRoot = entity._isRoot; // let entity become root if (!isRoot) { entity._isRoot = true; @@ -115,12 +132,12 @@ export class Scene extends EngineObject { const oldScene = entity._scene; if (oldScene !== this) { if (oldScene && isRoot) { - oldScene._removeEntity(entity); + oldScene._removeFromEntityList(entity); } - this._rootEntities.push(entity); + this._addToRootEntityList(index, entity); Entity._traverseSetOwnerScene(entity, this); } else if (!isRoot) { - this._rootEntities.push(entity); + this._addToRootEntityList(index, entity); } // process entity active/inActive @@ -137,7 +154,7 @@ export class Scene extends EngineObject { */ removeRootEntity(entity: Entity): void { if (entity._isRoot && entity._scene == this) { - this._removeEntity(entity); + this._removeFromEntityList(entity); entity._isRoot = false; this._isActiveInEngine && entity._isActiveInHierarchy && entity._processInActive(); Entity._traverseSetOwnerScene(entity, null); @@ -262,9 +279,14 @@ export class Scene extends EngineObject { /** * @internal */ - _removeEntity(entity: Entity): void { + _removeFromEntityList(entity: Entity): void { const rootEntities = this._rootEntities; - rootEntities.splice(rootEntities.indexOf(entity), 1); + let index = entity._siblingIndex; + rootEntities.splice(index, 1); + for (let n = rootEntities.length; index < n; index++) { + rootEntities[index]._siblingIndex--; + } + entity._siblingIndex = -1; } /** @@ -282,6 +304,24 @@ export class Scene extends EngineObject { this.shaderData._addRefCount(-1); } + private _addToRootEntityList(index: number, rootEntity: Entity): void { + const rootEntities = this._rootEntities; + const rootEntityCount = rootEntities.length; + if (index === undefined) { + rootEntity._siblingIndex = rootEntityCount; + rootEntities.push(rootEntity); + } else { + if (index < 0 || index > rootEntityCount) { + throw `The index ${index} is out of child list bounds ${rootEntityCount}`; + } + rootEntity._siblingIndex = index; + rootEntities.splice(index, 0, rootEntity); + for (let i = index + 1, n = rootEntityCount + 1; i < n; i++) { + rootEntities[i]._siblingIndex++; + } + } + } + //-----------------------------------------@deprecated----------------------------------- static registerFeature(Feature: new () => SceneFeature) { Scene.sceneFeatureManager.registerFeature(Feature); diff --git a/tests/src/core/Entity.test.ts b/tests/src/core/Entity.test.ts new file mode 100644 index 0000000000..a16e045d3b --- /dev/null +++ b/tests/src/core/Entity.test.ts @@ -0,0 +1,393 @@ +import { Entity, Script } from "@oasis-engine/core"; +import { WebGLEngine } from "@oasis-engine/rhi-webgl"; +import { expect } from "chai"; + +class TestComponent extends Script {} + +describe("Entity", () => { + const engine = new WebGLEngine(document.createElement("canvas")); + const scene = engine.sceneManager.activeScene; + engine.run(); + beforeEach(() => { + scene.createRootEntity("root"); + }); + + describe("scene.findByPath", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + + expect(scene.findEntityByPath("root/parent")).eq(parent); + + expect(scene.findEntityByPath("root/parent/child")).eq(child); + }); + it("not found", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + + expect(scene.findEntityByPath("child")).eq(null); + + expect(scene.findEntityByPath("parent/test")).eq(null); + }); + }); + + describe("isActive", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = false; + child.isActive = true; + expect(parent.isActive).eq(false); + expect(child.isActive).eq(true); + }); + }); + + describe("isActiveInHierarchy", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = true; + child.isActive = true; + expect(parent.isActiveInHierarchy).eq(true); + expect(child.isActiveInHierarchy).eq(true); + }); + + it("child false", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = true; + child.isActive = false; + expect(parent.isActiveInHierarchy).eq(true); + expect(child.isActiveInHierarchy).eq(false); + }); + + it("parent false", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.isActive = false; + child.isActive = true; + expect(parent.isActiveInHierarchy).eq(false); + expect(child.isActiveInHierarchy).eq(false); + }); + }); + + describe("parent", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = parent; + expect(child.parent).eq(parent); + }); + + it("null", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = null; + expect(child.parent).eq(null); + }); + + it("change", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const parent2 = new Entity(engine, "parent"); + + parent2.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = parent2; + expect(child.parent).eq(parent2); + }); + }); + + describe("childCount", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.children.length).eq(1); + }); + + it("null", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = null; + expect(parent.children.length).eq(0); + }); + + it("change", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const parent2 = new Entity(engine, "parent"); + + parent2.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.parent = parent2; + expect(parent2.children.length).eq(1); + expect(parent.children.length).eq(0); + }); + }); + + describe("scene", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.scene).eq(scene); + expect(child.scene).eq(scene); + }); + + it("change parent", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.scene).eq(scene); + expect(child.scene).eq(scene); + }); + }); + + describe("scene", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(child.scene).eq(scene); + }); + + it("change parent", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + expect(parent.scene).eq(scene); + expect(child.scene).eq(scene); + }); + }); + + describe("component", () => { + it("addComponent getComponent", () => { + const entity = new Entity(engine, "entity"); + + entity.parent = scene.getRootEntity(); + const component = entity.addComponent(TestComponent); + expect(entity.getComponent(TestComponent)).eq(component); + }); + + it("addComponent getComponents", () => { + const entity = new Entity(engine, "entity"); + + entity.parent = scene.getRootEntity(); + const component = entity.addComponent(TestComponent); + const res = []; + entity.getComponents(TestComponent, res); + expect(res[0]).eq(component); + }); + }); + + describe("child", () => { + it("addChild", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.addChild(child); + expect(child.parent).eq(parent); + expect(child.scene).eq(scene); + }); + + it("removeChild", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + parent.removeChild(child); + expect(child.parent).eq(null); + expect(child.scene).eq(null); + }); + + it("getChild", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const theChild = parent.getChild(0); + expect(theChild).eq(child); + }); + + it("getChild", () => { + const parent = new Entity(engine, "parent"); + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const theChild = parent.getChild(0); + expect(theChild).eq(child); + }); + + it("findByName", () => { + const parent = new Entity(engine, "parent"); + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const child2 = new Entity(engine, "child2"); + child2.parent = parent; + expect(parent.findByName("child")).eq(child); + expect(parent.findByName("child2")).eq(child2); + }); + + it("findByPath", () => { + const parent = new Entity(engine, "parent"); + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const child2 = new Entity(engine, "child2"); + child2.parent = parent; + expect(parent.findByPath("/child")).eq(child); + expect(parent.findByPath("child2")).eq(child2); + }); + + it("clearChildren", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const child2 = new Entity(engine, "child2"); + child2.parent = parent; + parent.clearChildren(); + expect(parent.children.length).eq(0); + }); + it("sibling index", () => { + const root = scene.createRootEntity(); + const child0 = new Entity(engine, "child0"); + const child1 = new Entity(engine, "child1"); + const child2 = new Entity(engine, "child2"); + const child3 = new Entity(engine, "child3"); + + // insert index + root.addChild(child0); + root.addChild(child2); + root.addChild(child3); + root.addChild(1, child1); + + expect(child0).eq(root.children[0]); + expect(child1).eq(root.children[1]); + expect(child2).eq(root.children[2]); + expect(child3).eq(root.children[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // high index to low index + child2.siblingIndex = 0; + expect(child2).eq(root.children[0]); + expect(child0).eq(root.children[1]); + expect(child1).eq(root.children[2]); + expect(child3).eq(root.children[3]); + expect(child2.siblingIndex).eq(0); + expect(child0.siblingIndex).eq(1); + expect(child1.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // low index to high index + child2.siblingIndex = 3; + expect(child0).eq(root.children[0]); + expect(child1).eq(root.children[1]); + expect(child3).eq(root.children[2]); + expect(child2).eq(root.children[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child3.siblingIndex).eq(2); + expect(child2.siblingIndex).eq(3); + + // remove entity + child1.parent = null; + expect(child0).eq(root.children[0]); + expect(child3).eq(root.children[1]); + expect(child2).eq(root.children[2]); + expect(child0.siblingIndex).eq(0); + expect(child3.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child1.siblingIndex).eq(-1); + + // out of range + var siblingIndexBadFn = function () { + child2.siblingIndex = 5; + }; + expect(siblingIndexBadFn).to.throw(); + + const entityX = new Entity(engine, "entityX"); + var lonelyBadFn = function () { + entityX.siblingIndex = 1; + }; + expect(lonelyBadFn).to.throw(); + }); + }); + + describe("clone", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + const cloneParent = parent.clone(); + expect(cloneParent.children.length).eq(parent.children.length); + expect(cloneParent.findByName("child").name).eq(child.name); + expect(cloneParent.findByName("child")).eq(cloneParent.getChild(0)); + }); + }); + + describe("destroy", () => { + it("normal", () => { + const parent = new Entity(engine, "parent"); + + parent.parent = scene.getRootEntity(); + const child = new Entity(engine, "child"); + child.parent = parent; + child.destroy(); + expect(parent.children.length).eq(0); + }); + }); +}); diff --git a/tests/src/core/Scene.test.ts b/tests/src/core/Scene.test.ts new file mode 100644 index 0000000000..23f2469503 --- /dev/null +++ b/tests/src/core/Scene.test.ts @@ -0,0 +1,71 @@ +import { Entity, Script } from "@oasis-engine/core"; +import { WebGLEngine } from "@oasis-engine/rhi-webgl"; +import { expect } from "chai"; + +class TestComponent extends Script {} + +describe("Scene", () => { + const engine = new WebGLEngine(document.createElement("canvas")); + const scene = engine.sceneManager.activeScene; + engine.run(); + beforeEach(() => { + scene.createRootEntity("root"); + }); + + describe("rootEntities", () => { + it("sibling index", () => { + scene.removeRootEntity(scene.rootEntities[0]); + const child0 = new Entity(engine, "child0"); + const child1 = new Entity(engine, "child1"); + const child2 = new Entity(engine, "child2"); + const child3 = new Entity(engine, "child3"); + + // insert index + scene.addRootEntity(child0); + scene.addRootEntity(child2); + scene.addRootEntity(child3); + scene.addRootEntity(1, child1); + + expect(child0).eq(scene.rootEntities[0]); + expect(child1).eq(scene.rootEntities[1]); + expect(child2).eq(scene.rootEntities[2]); + expect(child3).eq(scene.rootEntities[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // high index to low index + child2.siblingIndex = 0; + expect(child2).eq(scene.rootEntities[0]); + expect(child0).eq(scene.rootEntities[1]); + expect(child1).eq(scene.rootEntities[2]); + expect(child3).eq(scene.rootEntities[3]); + expect(child2.siblingIndex).eq(0); + expect(child0.siblingIndex).eq(1); + expect(child1.siblingIndex).eq(2); + expect(child3.siblingIndex).eq(3); + + // low index to high index + child2.siblingIndex = 3; + expect(child0).eq(scene.rootEntities[0]); + expect(child1).eq(scene.rootEntities[1]); + expect(child3).eq(scene.rootEntities[2]); + expect(child2).eq(scene.rootEntities[3]); + expect(child0.siblingIndex).eq(0); + expect(child1.siblingIndex).eq(1); + expect(child3.siblingIndex).eq(2); + expect(child2.siblingIndex).eq(3); + + // remove entity + scene.removeRootEntity(child1); + expect(child0).eq(scene.rootEntities[0]); + expect(child3).eq(scene.rootEntities[1]); + expect(child2).eq(scene.rootEntities[2]); + expect(child0.siblingIndex).eq(0); + expect(child3.siblingIndex).eq(1); + expect(child2.siblingIndex).eq(2); + expect(child1.siblingIndex).eq(-1); + }); + }); +}); From 4e2a7530bacfc8912c83a0aaae04f2aa2f7cefaf Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Mon, 22 Aug 2022 15:51:20 +0800 Subject: [PATCH 042/122] v0.8.0-beta.15 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 6 +++--- packages/physics-physx/package.json | 6 +++--- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lerna.json b/lerna.json index c58d48472b..66421b5341 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.14", + "version": "0.8.0-beta.15", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index bb32386f32..f35e2dd15b 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.14", + "version": "0.8.0-beta.15", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.14" + "@oasis-engine/math": "0.8.0-beta.15" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.14" + "@oasis-engine/design": "0.8.0-beta.15" } } diff --git a/packages/design/package.json b/packages/design/package.json index 3552349c25..5ca67df457 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.14", + "version": "0.8.0-beta.15", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.14" + "@oasis-engine/math": "0.8.0-beta.15" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index 585e7d2e46..d83e7fb1d3 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.14", + "version": "0.8.0-beta.15", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.14" + "@oasis-engine/core": "0.8.0-beta.15" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 7299c5e73e..f452117d7d 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.14", + "version": "0.8.0-beta.15", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.14", - "@oasis-engine/draco": "0.8.0-beta.14", - "@oasis-engine/math": "0.8.0-beta.14", - "@oasis-engine/rhi-webgl": "0.8.0-beta.14" + "@oasis-engine/core": "0.8.0-beta.15", + "@oasis-engine/draco": "0.8.0-beta.15", + "@oasis-engine/math": "0.8.0-beta.15", + "@oasis-engine/rhi-webgl": "0.8.0-beta.15" } } diff --git a/packages/math/package.json b/packages/math/package.json index 0f527e0c95..e75a136560 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.14", + "version": "0.8.0-beta.15", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index 9124a260de..8294635a12 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.14", + "version": "0.8.0-beta.15", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.14", - "@oasis-engine/loader": "0.8.0-beta.14", - "@oasis-engine/math": "0.8.0-beta.14", - "@oasis-engine/rhi-webgl": "0.8.0-beta.14" + "@oasis-engine/core": "0.8.0-beta.15", + "@oasis-engine/loader": "0.8.0-beta.15", + "@oasis-engine/math": "0.8.0-beta.15", + "@oasis-engine/rhi-webgl": "0.8.0-beta.15" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 2f92bb6379..1053acb010 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.14", + "version": "0.8.0-beta.15", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,9 +19,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.14" + "@oasis-engine/design": "0.8.0-beta.15" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.14" + "oasis-engine": "0.8.0-beta.15" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index 81822fb5bd..f5a2b3a867 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.14", + "version": "0.8.0-beta.15", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,9 +20,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.14" + "@oasis-engine/design": "0.8.0-beta.15" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.14" + "oasis-engine": "0.8.0-beta.15" } } diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 8348782cee..573c12ce42 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.14", + "version": "0.8.0-beta.15", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.14", - "@oasis-engine/math": "0.8.0-beta.14" + "@oasis-engine/core": "0.8.0-beta.15", + "@oasis-engine/math": "0.8.0-beta.15" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.14" + "@oasis-engine/design": "0.8.0-beta.15" } } diff --git a/tests/package.json b/tests/package.json index 7aef5b78f1..57ecaaf54d 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.14", + "version": "0.8.0-beta.15", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.14", - "@oasis-engine/design": "0.8.0-beta.14", - "@oasis-engine/math": "0.8.0-beta.14", - "@oasis-engine/rhi-webgl": "0.8.0-beta.14" + "@oasis-engine/core": "0.8.0-beta.15", + "@oasis-engine/design": "0.8.0-beta.15", + "@oasis-engine/math": "0.8.0-beta.15", + "@oasis-engine/rhi-webgl": "0.8.0-beta.15" } } From b1d82ec90994f26130652f1002da036005a6b651 Mon Sep 17 00:00:00 2001 From: zhuxudong Date: Mon, 22 Aug 2022 16:01:56 +0800 Subject: [PATCH 043/122] Fix blendShape clone error (#968) * fix: blendShape clone error --- packages/core/src/mesh/SkinnedMeshRenderer.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/core/src/mesh/SkinnedMeshRenderer.ts b/packages/core/src/mesh/SkinnedMeshRenderer.ts index 217f84a324..7b72fd1ca2 100644 --- a/packages/core/src/mesh/SkinnedMeshRenderer.ts +++ b/packages/core/src/mesh/SkinnedMeshRenderer.ts @@ -1,6 +1,6 @@ import { Matrix } from "@oasis-engine/math"; import { Logger } from "../base/Logger"; -import { ignoreClone } from "../clone/CloneManager"; +import { ignoreClone, deepClone } from "../clone/CloneManager"; import { Entity } from "../Entity"; import { RenderContext } from "../RenderPipeline/RenderContext"; import { Shader } from "../shader"; @@ -38,8 +38,11 @@ export class SkinnedMeshRenderer extends MeshRenderer { private _skin: Skin; /** @internal */ + @deepClone _blendShapeWeights: Float32Array = new Float32Array(0); + /** @internal */ + @ignoreClone _condensedBlendShapeWeights: Float32Array; /** From 0bd92b67d71b3c95d259a9c5c7876ab489966ee3 Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Mon, 22 Aug 2022 16:03:41 +0800 Subject: [PATCH 044/122] v0.8.0-beta.16 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 6 +++--- packages/physics-physx/package.json | 6 +++--- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lerna.json b/lerna.json index 66421b5341..60e2b5e902 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.15", + "version": "0.8.0-beta.16", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index f35e2dd15b..18fd6733da 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.15", + "version": "0.8.0-beta.16", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.15" + "@oasis-engine/math": "0.8.0-beta.16" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.15" + "@oasis-engine/design": "0.8.0-beta.16" } } diff --git a/packages/design/package.json b/packages/design/package.json index 5ca67df457..608fcfe0b8 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.15", + "version": "0.8.0-beta.16", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.15" + "@oasis-engine/math": "0.8.0-beta.16" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index d83e7fb1d3..e1d5392d5e 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.15", + "version": "0.8.0-beta.16", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.15" + "@oasis-engine/core": "0.8.0-beta.16" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index f452117d7d..36e45752f8 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.15", + "version": "0.8.0-beta.16", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.15", - "@oasis-engine/draco": "0.8.0-beta.15", - "@oasis-engine/math": "0.8.0-beta.15", - "@oasis-engine/rhi-webgl": "0.8.0-beta.15" + "@oasis-engine/core": "0.8.0-beta.16", + "@oasis-engine/draco": "0.8.0-beta.16", + "@oasis-engine/math": "0.8.0-beta.16", + "@oasis-engine/rhi-webgl": "0.8.0-beta.16" } } diff --git a/packages/math/package.json b/packages/math/package.json index e75a136560..c51e90f0ec 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.15", + "version": "0.8.0-beta.16", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index 8294635a12..c19b6b6b3f 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.15", + "version": "0.8.0-beta.16", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.15", - "@oasis-engine/loader": "0.8.0-beta.15", - "@oasis-engine/math": "0.8.0-beta.15", - "@oasis-engine/rhi-webgl": "0.8.0-beta.15" + "@oasis-engine/core": "0.8.0-beta.16", + "@oasis-engine/loader": "0.8.0-beta.16", + "@oasis-engine/math": "0.8.0-beta.16", + "@oasis-engine/rhi-webgl": "0.8.0-beta.16" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 1053acb010..2701547a4e 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.15", + "version": "0.8.0-beta.16", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,9 +19,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.15" + "@oasis-engine/design": "0.8.0-beta.16" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.15" + "oasis-engine": "0.8.0-beta.16" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index f5a2b3a867..594d87dfba 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.15", + "version": "0.8.0-beta.16", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,9 +20,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.15" + "@oasis-engine/design": "0.8.0-beta.16" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.15" + "oasis-engine": "0.8.0-beta.16" } } diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 573c12ce42..06a99c60dd 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.15", + "version": "0.8.0-beta.16", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.15", - "@oasis-engine/math": "0.8.0-beta.15" + "@oasis-engine/core": "0.8.0-beta.16", + "@oasis-engine/math": "0.8.0-beta.16" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.15" + "@oasis-engine/design": "0.8.0-beta.16" } } diff --git a/tests/package.json b/tests/package.json index 57ecaaf54d..3faf7578d0 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.15", + "version": "0.8.0-beta.16", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.15", - "@oasis-engine/design": "0.8.0-beta.15", - "@oasis-engine/math": "0.8.0-beta.15", - "@oasis-engine/rhi-webgl": "0.8.0-beta.15" + "@oasis-engine/core": "0.8.0-beta.16", + "@oasis-engine/design": "0.8.0-beta.16", + "@oasis-engine/math": "0.8.0-beta.16", + "@oasis-engine/rhi-webgl": "0.8.0-beta.16" } } From 6bb5bf03968e04c79c471d8f59ac1a0f4018bee9 Mon Sep 17 00:00:00 2001 From: zhuxudong Date: Mon, 22 Aug 2022 16:56:39 +0800 Subject: [PATCH 045/122] Fix blendShape clone error (#970) * fix: blendShape clone error --- packages/core/src/mesh/SkinnedMeshRenderer.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/core/src/mesh/SkinnedMeshRenderer.ts b/packages/core/src/mesh/SkinnedMeshRenderer.ts index 7b72fd1ca2..62e389c568 100644 --- a/packages/core/src/mesh/SkinnedMeshRenderer.ts +++ b/packages/core/src/mesh/SkinnedMeshRenderer.ts @@ -38,7 +38,7 @@ export class SkinnedMeshRenderer extends MeshRenderer { private _skin: Skin; /** @internal */ - @deepClone + @ignoreClone _blendShapeWeights: Float32Array = new Float32Array(0); /** @internal */ @@ -193,4 +193,12 @@ export class SkinnedMeshRenderer extends MeshRenderer { } this.jointTexture.setPixelBuffer(this.matrixPalette); } + + /** + * @internal + */ + _cloneTo(target: SkinnedMeshRenderer): void { + super._cloneTo(target); + target.blendShapeWeights = this._blendShapeWeights.slice(); + } } From b03d75e1501528ca59c33b830fc9dd970a0f4386 Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Mon, 22 Aug 2022 16:58:30 +0800 Subject: [PATCH 046/122] v0.8.0-beta.17 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 6 +++--- packages/physics-physx/package.json | 6 +++--- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lerna.json b/lerna.json index 60e2b5e902..f4645dd1b7 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.16", + "version": "0.8.0-beta.17", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index 18fd6733da..404752f1cf 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.16", + "version": "0.8.0-beta.17", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.16" + "@oasis-engine/math": "0.8.0-beta.17" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.16" + "@oasis-engine/design": "0.8.0-beta.17" } } diff --git a/packages/design/package.json b/packages/design/package.json index 608fcfe0b8..051379bd3a 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.16", + "version": "0.8.0-beta.17", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.16" + "@oasis-engine/math": "0.8.0-beta.17" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index e1d5392d5e..7381ed4782 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.16", + "version": "0.8.0-beta.17", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.16" + "@oasis-engine/core": "0.8.0-beta.17" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 36e45752f8..08a4d77d2c 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.16", + "version": "0.8.0-beta.17", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.16", - "@oasis-engine/draco": "0.8.0-beta.16", - "@oasis-engine/math": "0.8.0-beta.16", - "@oasis-engine/rhi-webgl": "0.8.0-beta.16" + "@oasis-engine/core": "0.8.0-beta.17", + "@oasis-engine/draco": "0.8.0-beta.17", + "@oasis-engine/math": "0.8.0-beta.17", + "@oasis-engine/rhi-webgl": "0.8.0-beta.17" } } diff --git a/packages/math/package.json b/packages/math/package.json index c51e90f0ec..dd9dbfbfa7 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.16", + "version": "0.8.0-beta.17", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index c19b6b6b3f..f8f3e17645 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.16", + "version": "0.8.0-beta.17", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.16", - "@oasis-engine/loader": "0.8.0-beta.16", - "@oasis-engine/math": "0.8.0-beta.16", - "@oasis-engine/rhi-webgl": "0.8.0-beta.16" + "@oasis-engine/core": "0.8.0-beta.17", + "@oasis-engine/loader": "0.8.0-beta.17", + "@oasis-engine/math": "0.8.0-beta.17", + "@oasis-engine/rhi-webgl": "0.8.0-beta.17" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index 2701547a4e..efd37b93e4 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.16", + "version": "0.8.0-beta.17", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,9 +19,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.16" + "@oasis-engine/design": "0.8.0-beta.17" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.16" + "oasis-engine": "0.8.0-beta.17" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index 594d87dfba..e8d9ef9659 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.16", + "version": "0.8.0-beta.17", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,9 +20,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.16" + "@oasis-engine/design": "0.8.0-beta.17" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.16" + "oasis-engine": "0.8.0-beta.17" } } diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index 06a99c60dd..f94b828b86 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.16", + "version": "0.8.0-beta.17", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.16", - "@oasis-engine/math": "0.8.0-beta.16" + "@oasis-engine/core": "0.8.0-beta.17", + "@oasis-engine/math": "0.8.0-beta.17" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.16" + "@oasis-engine/design": "0.8.0-beta.17" } } diff --git a/tests/package.json b/tests/package.json index 3faf7578d0..dcf8f1d6d1 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.16", + "version": "0.8.0-beta.17", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.16", - "@oasis-engine/design": "0.8.0-beta.16", - "@oasis-engine/math": "0.8.0-beta.16", - "@oasis-engine/rhi-webgl": "0.8.0-beta.16" + "@oasis-engine/core": "0.8.0-beta.17", + "@oasis-engine/design": "0.8.0-beta.17", + "@oasis-engine/math": "0.8.0-beta.17", + "@oasis-engine/rhi-webgl": "0.8.0-beta.17" } } From 59d291900801d5e54a3fea2b9bc40e406f23ca64 Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Mon, 22 Aug 2022 18:34:18 +0800 Subject: [PATCH 047/122] refactor: opt code --- packages/core/src/Entity.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/core/src/Entity.ts b/packages/core/src/Entity.ts index baf05acd50..9de35ef293 100644 --- a/packages/core/src/Entity.ts +++ b/packages/core/src/Entity.ts @@ -568,8 +568,9 @@ export class Entity extends EngineObject { } private _setSiblingIndex(sibling: Entity[], target: number): void { - if (target < 0 || target > sibling.length) { - throw `The index ${target} is out of child list bounds ${sibling.length}`; + target = Math.min(target, sibling.length - 1); + if (target < 0) { + throw `The index ${target} is out of child list bounds ${sibling.length - 1}`; } const oldIndex = this._siblingIndex; From e902e630689a2af3f1e2ef38999dfc63f71157bb Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Mon, 22 Aug 2022 18:37:27 +0800 Subject: [PATCH 048/122] refactor: opt code --- packages/core/src/Entity.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/Entity.ts b/packages/core/src/Entity.ts index 9de35ef293..ccf1eb8ade 100644 --- a/packages/core/src/Entity.ts +++ b/packages/core/src/Entity.ts @@ -570,7 +570,7 @@ export class Entity extends EngineObject { private _setSiblingIndex(sibling: Entity[], target: number): void { target = Math.min(target, sibling.length - 1); if (target < 0) { - throw `The index ${target} is out of child list bounds ${sibling.length - 1}`; + throw `Sibling index ${target} should large than 0`; } const oldIndex = this._siblingIndex; From a5001f53fba15ca606f355bba86029c609e4008b Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Mon, 22 Aug 2022 18:58:21 +0800 Subject: [PATCH 049/122] refactor: opt code --- packages/core/src/Entity.ts | 31 +++++++++++++++---------------- tests/src/core/Entity.test.ts | 9 +++++++-- 2 files changed, 22 insertions(+), 18 deletions(-) diff --git a/packages/core/src/Entity.ts b/packages/core/src/Entity.ts index ccf1eb8ade..5fcab9b7fc 100644 --- a/packages/core/src/Entity.ts +++ b/packages/core/src/Entity.ts @@ -142,9 +142,7 @@ export class Entity extends EngineObject { throw `The entity ${this.name} is not in the hierarchy`; } - if (this._siblingIndex !== value) { - this._setSiblingIndex(this._isRoot ? this._scene._rootEntities : this._parent._children, value); - } + this._setSiblingIndex(this._isRoot ? this._scene._rootEntities : this._parent._children, value); } /** @@ -572,19 +570,20 @@ export class Entity extends EngineObject { if (target < 0) { throw `Sibling index ${target} should large than 0`; } - - const oldIndex = this._siblingIndex; - if (target < oldIndex) { - for (let i = oldIndex; i >= target; i--) { - const child = i == target ? this : sibling[i - 1]; - sibling[i] = child; - child._siblingIndex = i; - } - } else { - for (let i = oldIndex; i <= target; i++) { - const child = i == target ? this : sibling[i + 1]; - sibling[i] = child; - child._siblingIndex = i; + if (this._siblingIndex !== target) { + const oldIndex = this._siblingIndex; + if (target < oldIndex) { + for (let i = oldIndex; i >= target; i--) { + const child = i == target ? this : sibling[i - 1]; + sibling[i] = child; + child._siblingIndex = i; + } + } else { + for (let i = oldIndex; i <= target; i++) { + const child = i == target ? this : sibling[i + 1]; + sibling[i] = child; + child._siblingIndex = i; + } } } } diff --git a/tests/src/core/Entity.test.ts b/tests/src/core/Entity.test.ts index a16e045d3b..f8ba90fcea 100644 --- a/tests/src/core/Entity.test.ts +++ b/tests/src/core/Entity.test.ts @@ -351,12 +351,17 @@ describe("Entity", () => { expect(child2.siblingIndex).eq(2); expect(child1.siblingIndex).eq(-1); - // out of range + // project large index + child2.siblingIndex = 5; + expect(child2.siblingIndex).eq(2); + + // thorw error whenless than 0 index var siblingIndexBadFn = function () { - child2.siblingIndex = 5; + child2.siblingIndex = -1; }; expect(siblingIndexBadFn).to.throw(); + // thorw error when set lonely entity const entityX = new Entity(engine, "entityX"); var lonelyBadFn = function () { entityX.siblingIndex = 1; From 06fcf3592071b6f759e8b081520304143b199f03 Mon Sep 17 00:00:00 2001 From: AZhan Date: Mon, 22 Aug 2022 19:47:09 +0800 Subject: [PATCH 050/122] fix: `InputManager` keyboard events could not be listened to (#972) --- packages/core/src/input/keyboard/KeyboardManager.ts | 1 + packages/core/src/input/pointer/PointerManager.ts | 1 + 2 files changed, 2 insertions(+) diff --git a/packages/core/src/input/keyboard/KeyboardManager.ts b/packages/core/src/input/keyboard/KeyboardManager.ts index a068bd7986..8284d872c7 100644 --- a/packages/core/src/input/keyboard/KeyboardManager.ts +++ b/packages/core/src/input/keyboard/KeyboardManager.ts @@ -130,6 +130,7 @@ export class KeyboardManager implements IInput { } private _onKeyEvent(evt: KeyboardEvent): void { + evt.cancelable && evt.preventDefault(); this._nativeEvents.push(evt); } } diff --git a/packages/core/src/input/pointer/PointerManager.ts b/packages/core/src/input/pointer/PointerManager.ts index 483bafbbe3..653683a5b9 100644 --- a/packages/core/src/input/pointer/PointerManager.ts +++ b/packages/core/src/input/pointer/PointerManager.ts @@ -170,6 +170,7 @@ export class PointerManager implements IInput { private _onPointerEvent(evt: PointerEvent) { evt.cancelable && evt.preventDefault(); + evt.type === "pointerdown" && this._htmlCanvas.focus(); this._nativeEvents.push(evt); } From 8b8a5721d53ef6dc8aeb728c02877f03f41fb0a5 Mon Sep 17 00:00:00 2001 From: ChenMo Date: Mon, 22 Aug 2022 19:48:42 +0800 Subject: [PATCH 051/122] Enhance entity `siblingIndex` robustness (#971) --- packages/core/src/Entity.ts | 38 +++++++++++++++++------------------ tests/src/core/Entity.test.ts | 9 +++++++-- 2 files changed, 26 insertions(+), 21 deletions(-) diff --git a/packages/core/src/Entity.ts b/packages/core/src/Entity.ts index baf05acd50..5fcab9b7fc 100644 --- a/packages/core/src/Entity.ts +++ b/packages/core/src/Entity.ts @@ -142,9 +142,7 @@ export class Entity extends EngineObject { throw `The entity ${this.name} is not in the hierarchy`; } - if (this._siblingIndex !== value) { - this._setSiblingIndex(this._isRoot ? this._scene._rootEntities : this._parent._children, value); - } + this._setSiblingIndex(this._isRoot ? this._scene._rootEntities : this._parent._children, value); } /** @@ -568,22 +566,24 @@ export class Entity extends EngineObject { } private _setSiblingIndex(sibling: Entity[], target: number): void { - if (target < 0 || target > sibling.length) { - throw `The index ${target} is out of child list bounds ${sibling.length}`; - } - - const oldIndex = this._siblingIndex; - if (target < oldIndex) { - for (let i = oldIndex; i >= target; i--) { - const child = i == target ? this : sibling[i - 1]; - sibling[i] = child; - child._siblingIndex = i; - } - } else { - for (let i = oldIndex; i <= target; i++) { - const child = i == target ? this : sibling[i + 1]; - sibling[i] = child; - child._siblingIndex = i; + target = Math.min(target, sibling.length - 1); + if (target < 0) { + throw `Sibling index ${target} should large than 0`; + } + if (this._siblingIndex !== target) { + const oldIndex = this._siblingIndex; + if (target < oldIndex) { + for (let i = oldIndex; i >= target; i--) { + const child = i == target ? this : sibling[i - 1]; + sibling[i] = child; + child._siblingIndex = i; + } + } else { + for (let i = oldIndex; i <= target; i++) { + const child = i == target ? this : sibling[i + 1]; + sibling[i] = child; + child._siblingIndex = i; + } } } } diff --git a/tests/src/core/Entity.test.ts b/tests/src/core/Entity.test.ts index a16e045d3b..f8ba90fcea 100644 --- a/tests/src/core/Entity.test.ts +++ b/tests/src/core/Entity.test.ts @@ -351,12 +351,17 @@ describe("Entity", () => { expect(child2.siblingIndex).eq(2); expect(child1.siblingIndex).eq(-1); - // out of range + // project large index + child2.siblingIndex = 5; + expect(child2.siblingIndex).eq(2); + + // thorw error whenless than 0 index var siblingIndexBadFn = function () { - child2.siblingIndex = 5; + child2.siblingIndex = -1; }; expect(siblingIndexBadFn).to.throw(); + // thorw error when set lonely entity const entityX = new Entity(engine, "entityX"); var lonelyBadFn = function () { entityX.siblingIndex = 1; From b2faabaf1463442103d569aa66cd98291e013f86 Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Mon, 22 Aug 2022 19:50:05 +0800 Subject: [PATCH 052/122] v0.8.0-beta.18 --- lerna.json | 2 +- packages/core/package.json | 6 +++--- packages/design/package.json | 4 ++-- packages/draco/package.json | 4 ++-- packages/loader/package.json | 10 +++++----- packages/math/package.json | 2 +- packages/oasis-engine/package.json | 10 +++++----- packages/physics-lite/package.json | 6 +++--- packages/physics-physx/package.json | 6 +++--- packages/rhi-webgl/package.json | 8 ++++---- tests/package.json | 10 +++++----- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lerna.json b/lerna.json index f4645dd1b7..7e241ede43 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "npmClient": "npm", - "version": "0.8.0-beta.17", + "version": "0.8.0-beta.18", "bootstrap": { "hoist": true }, diff --git a/packages/core/package.json b/packages/core/package.json index 404752f1cf..0b6e25c220 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/core", - "version": "0.8.0-beta.17", + "version": "0.8.0-beta.18", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/math": "0.8.0-beta.17" + "@oasis-engine/math": "0.8.0-beta.18" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.17" + "@oasis-engine/design": "0.8.0-beta.18" } } diff --git a/packages/design/package.json b/packages/design/package.json index 051379bd3a..2d5e2b319d 100755 --- a/packages/design/package.json +++ b/packages/design/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/design", - "version": "0.8.0-beta.17", + "version": "0.8.0-beta.18", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ ], "types": "types/index.d.ts", "dependencies": { - "@oasis-engine/math": "0.8.0-beta.17" + "@oasis-engine/math": "0.8.0-beta.18" } } diff --git a/packages/draco/package.json b/packages/draco/package.json index 7381ed4782..8c8b5b3506 100644 --- a/packages/draco/package.json +++ b/packages/draco/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/draco", - "version": "0.8.0-beta.17", + "version": "0.8.0-beta.18", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -17,6 +17,6 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.17" + "@oasis-engine/core": "0.8.0-beta.18" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 08a4d77d2c..5b6b205c51 100755 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/loader", - "version": "0.8.0-beta.17", + "version": "0.8.0-beta.18", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.17", - "@oasis-engine/draco": "0.8.0-beta.17", - "@oasis-engine/math": "0.8.0-beta.17", - "@oasis-engine/rhi-webgl": "0.8.0-beta.17" + "@oasis-engine/core": "0.8.0-beta.18", + "@oasis-engine/draco": "0.8.0-beta.18", + "@oasis-engine/math": "0.8.0-beta.18", + "@oasis-engine/rhi-webgl": "0.8.0-beta.18" } } diff --git a/packages/math/package.json b/packages/math/package.json index dd9dbfbfa7..511120ddd3 100755 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/math", - "version": "0.8.0-beta.17", + "version": "0.8.0-beta.18", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/packages/oasis-engine/package.json b/packages/oasis-engine/package.json index f8f3e17645..8ef2bbb494 100755 --- a/packages/oasis-engine/package.json +++ b/packages/oasis-engine/package.json @@ -1,6 +1,6 @@ { "name": "oasis-engine", - "version": "0.8.0-beta.17", + "version": "0.8.0-beta.18", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,9 +18,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.17", - "@oasis-engine/loader": "0.8.0-beta.17", - "@oasis-engine/math": "0.8.0-beta.17", - "@oasis-engine/rhi-webgl": "0.8.0-beta.17" + "@oasis-engine/core": "0.8.0-beta.18", + "@oasis-engine/loader": "0.8.0-beta.18", + "@oasis-engine/math": "0.8.0-beta.18", + "@oasis-engine/rhi-webgl": "0.8.0-beta.18" } } diff --git a/packages/physics-lite/package.json b/packages/physics-lite/package.json index efd37b93e4..386a165b2d 100644 --- a/packages/physics-lite/package.json +++ b/packages/physics-lite/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-lite", - "version": "0.8.0-beta.17", + "version": "0.8.0-beta.18", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -19,9 +19,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.17" + "@oasis-engine/design": "0.8.0-beta.18" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.17" + "oasis-engine": "0.8.0-beta.18" } } diff --git a/packages/physics-physx/package.json b/packages/physics-physx/package.json index e8d9ef9659..70a4fef7c5 100644 --- a/packages/physics-physx/package.json +++ b/packages/physics-physx/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/physics-physx", - "version": "0.8.0-beta.17", + "version": "0.8.0-beta.18", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -20,9 +20,9 @@ "types/**/*" ], "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.17" + "@oasis-engine/design": "0.8.0-beta.18" }, "peerDependencies": { - "oasis-engine": "0.8.0-beta.17" + "oasis-engine": "0.8.0-beta.18" } } diff --git a/packages/rhi-webgl/package.json b/packages/rhi-webgl/package.json index f94b828b86..6aa1e2e68e 100755 --- a/packages/rhi-webgl/package.json +++ b/packages/rhi-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@oasis-engine/rhi-webgl", - "version": "0.8.0-beta.17", + "version": "0.8.0-beta.18", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" @@ -18,10 +18,10 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.17", - "@oasis-engine/math": "0.8.0-beta.17" + "@oasis-engine/core": "0.8.0-beta.18", + "@oasis-engine/math": "0.8.0-beta.18" }, "devDependencies": { - "@oasis-engine/design": "0.8.0-beta.17" + "@oasis-engine/design": "0.8.0-beta.18" } } diff --git a/tests/package.json b/tests/package.json index dcf8f1d6d1..d616858920 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,7 +1,7 @@ { "name": "@oasis-engine/tests", "private": true, - "version": "0.8.0-beta.17", + "version": "0.8.0-beta.18", "license": "MIT", "main": "dist/main.js", "module": "dist/module.js", @@ -15,9 +15,9 @@ "types/**/*" ], "dependencies": { - "@oasis-engine/core": "0.8.0-beta.17", - "@oasis-engine/design": "0.8.0-beta.17", - "@oasis-engine/math": "0.8.0-beta.17", - "@oasis-engine/rhi-webgl": "0.8.0-beta.17" + "@oasis-engine/core": "0.8.0-beta.18", + "@oasis-engine/design": "0.8.0-beta.18", + "@oasis-engine/math": "0.8.0-beta.18", + "@oasis-engine/rhi-webgl": "0.8.0-beta.18" } } From d76a0838596d960f2c74029a1448ea33729d4012 Mon Sep 17 00:00:00 2001 From: yangfengzzz Date: Tue, 23 Aug 2022 21:06:07 +0800 Subject: [PATCH 053/122] refactor shadow and light and delete feature system (#908) * refactor: shadow and light refactor --- packages/core/src/ComponentsManager.ts | 51 +----- packages/core/src/Engine.ts | 47 +---- packages/core/src/EngineFeature.ts | 33 ---- packages/core/src/FeatureManager.ts | 86 --------- .../src/RenderPipeline/BasicRenderPipeline.ts | 76 ++++++-- packages/core/src/Renderer.ts | 8 +- packages/core/src/Scene.ts | 21 +-- packages/core/src/SceneFeature.ts | 40 ---- packages/core/src/index.ts | 9 - packages/core/src/lighting/DirectLight.ts | 34 +++- packages/core/src/lighting/KHR_lights.ts | 2 +- packages/core/src/lighting/Light.ts | 53 +++--- packages/core/src/lighting/LightFeature.ts | 96 ---------- packages/core/src/lighting/LightManager.ts | 116 ++++++++++++ packages/core/src/lighting/PointLight.ts | 36 +++- packages/core/src/lighting/SpotLight.ts | 39 +++- packages/core/src/mesh/MeshRenderer.ts | 1 + packages/core/src/shader/ShaderPool.ts | 2 - packages/core/src/shaderlib/ShaderLib.ts | 14 +- .../src/shaderlib/extra/blinn-phong.fs.glsl | 3 + .../src/shaderlib/extra/blinn-phong.vs.glsl | 4 +- packages/core/src/shaderlib/extra/pbr.fs.glsl | 3 +- packages/core/src/shaderlib/extra/pbr.vs.glsl | 3 +- .../src/shaderlib/extra/shadow-map.vs.glsl | 6 +- .../core/src/shaderlib/extra/unlit.fs.glsl | 2 + .../core/src/shaderlib/extra/unlit.vs.glsl | 2 + .../core/src/shaderlib/position_vert.glsl | 6 +- packages/core/src/shaderlib/shadow_frag.glsl | 25 +++ .../shadow.fs.glsl => shadow_frag_share.glsl} | 32 +--- packages/core/src/shaderlib/shadow_vert.glsl | 6 - ...adow_share.glsl => shadow_vert_share.glsl} | 7 - packages/core/src/shadow/Extension.ts | 52 ------ packages/core/src/shadow/LightShadow.ts | 162 ----------------- packages/core/src/shadow/ShadowFeature.ts | 110 ----------- packages/core/src/shadow/ShadowManager.ts | 171 ++++++++++++++++++ packages/core/src/shadow/ShadowMapMaterial.ts | 5 +- packages/core/src/shadow/ShadowMapPass.ts | 46 ----- packages/core/src/shadow/ShadowMaterial.ts | 23 --- packages/core/src/shadow/ShadowPass.ts | 48 ----- packages/core/src/shadow/index.ts | 5 - 40 files changed, 543 insertions(+), 942 deletions(-) delete mode 100644 packages/core/src/EngineFeature.ts delete mode 100644 packages/core/src/FeatureManager.ts delete mode 100644 packages/core/src/SceneFeature.ts delete mode 100644 packages/core/src/lighting/LightFeature.ts create mode 100644 packages/core/src/lighting/LightManager.ts create mode 100644 packages/core/src/shaderlib/shadow_frag.glsl rename packages/core/src/shaderlib/{extra/shadow.fs.glsl => shadow_frag_share.glsl} (52%) rename packages/core/src/shaderlib/{shadow_share.glsl => shadow_vert_share.glsl} (65%) delete mode 100644 packages/core/src/shadow/Extension.ts delete mode 100644 packages/core/src/shadow/LightShadow.ts delete mode 100644 packages/core/src/shadow/ShadowFeature.ts create mode 100644 packages/core/src/shadow/ShadowManager.ts delete mode 100644 packages/core/src/shadow/ShadowMapPass.ts delete mode 100644 packages/core/src/shadow/ShadowMaterial.ts delete mode 100644 packages/core/src/shadow/ShadowPass.ts delete mode 100644 packages/core/src/shadow/index.ts diff --git a/packages/core/src/ComponentsManager.ts b/packages/core/src/ComponentsManager.ts index 7995a2c6e7..8768d740a6 100644 --- a/packages/core/src/ComponentsManager.ts +++ b/packages/core/src/ComponentsManager.ts @@ -1,18 +1,15 @@ -import { Vector3 } from "@oasis-engine/math"; import { Camera } from "./Camera"; import { Component } from "./Component"; import { DisorderedArray } from "./DisorderedArray"; import { Renderer } from "./Renderer"; -import { RenderContext } from "./RenderPipeline/RenderContext"; import { Script } from "./Script"; -import { ShaderMacroCollection } from "./shader/ShaderMacroCollection"; /** * The manager of the components. */ export class ComponentsManager { - private static _tempVector0 = new Vector3(); - private static _tempVector1 = new Vector3(); + /** @internal */ + _renderers: DisorderedArray = new DisorderedArray(); // Script private _onStartScripts: DisorderedArray